summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcvs2git <cvs2git>2006-08-23 22:25:40 +0000
committercvs2git <cvs2git>2006-08-23 22:25:40 +0000
commit58d093219cf60264550b8c34649d9f3190eda042 (patch)
tree10418dd70b52416a5f52da8e17d8e282d914595d
parent3ce7691203a7737406bf2d4442f7fd84b81f847e (diff)
This commit was manufactured by cvs2svn to create tagAFTER_FINAL_MASONIZE
'AFTER_FINAL_MASONIZE'.
-rw-r--r--ANNOUNCE.1.554
-rw-r--r--CREDITS167
-rw-r--r--Changelog54
-rw-r--r--Changes.1.5.745
-rw-r--r--Changes.1.5.843
-rw-r--r--Changes.1.7.055
-rw-r--r--FS/Changes5
-rw-r--r--FS/FS.pm269
-rw-r--r--FS/FS/AccessRight.pm150
-rw-r--r--FS/FS/CGI.pm422
-rw-r--r--FS/FS/ClientAPI.pm37
-rw-r--r--FS/FS/ClientAPI/Agent.pm125
-rw-r--r--FS/FS/ClientAPI/MyAccount.pm918
-rw-r--r--FS/FS/ClientAPI/Signup.pm344
-rw-r--r--FS/FS/ClientAPI/passwd.pm46
-rw-r--r--FS/FS/ClientAPI_SessionCache.pm78
-rw-r--r--FS/FS/Conf.pm1758
-rw-r--r--FS/FS/ConfDefaults.pm68
-rw-r--r--FS/FS/ConfItem.pm63
-rw-r--r--FS/FS/Cron/backup.pm43
-rw-r--r--FS/FS/Cron/bill.pm119
-rw-r--r--FS/FS/Cron/vacuum.pm23
-rw-r--r--FS/FS/CurrentUser.pm67
-rw-r--r--FS/FS/Daemon.pm92
-rw-r--r--FS/FS/InitHandler.pm91
-rw-r--r--FS/FS/Misc.pm420
-rw-r--r--FS/FS/Msgcat.pm98
-rw-r--r--FS/FS/Pony.pm23
-rw-r--r--FS/FS/Record.pm1971
-rw-r--r--FS/FS/Report.pm46
-rw-r--r--FS/FS/Report/Table.pm27
-rw-r--r--FS/FS/Report/Table/Monthly.pm366
-rw-r--r--FS/FS/Schema.pm1602
-rw-r--r--FS/FS/SearchCache.pm96
-rw-r--r--FS/FS/Setup.pm462
-rw-r--r--FS/FS/TicketSystem.pm30
-rw-r--r--FS/FS/TicketSystem/RT_External.pm264
-rw-r--r--FS/FS/TicketSystem/RT_Internal.pm29
-rw-r--r--FS/FS/TicketSystem/RT_Libs.pm10
-rw-r--r--FS/FS/UI/Web.pm326
-rw-r--r--FS/FS/UID.pm346
-rw-r--r--FS/FS/XMLRPC.pm165
-rw-r--r--FS/FS/access_group.pm162
-rw-r--r--FS/FS/access_groupagent.pm134
-rw-r--r--FS/FS/access_right.pm127
-rw-r--r--FS/FS/access_user.pm376
-rw-r--r--FS/FS/access_user_pref.pm127
-rw-r--r--FS/FS/access_usergroup.pm144
-rw-r--r--FS/FS/acct_snarf.pm128
-rwxr-xr-xFS/FS/addr_block.pm331
-rw-r--r--FS/FS/agent.pm444
-rw-r--r--FS/FS/agent_payment_gateway.pm139
-rw-r--r--FS/FS/agent_type.pm191
-rw-r--r--FS/FS/banned_pay.pm136
-rw-r--r--FS/FS/cancel_reason.pm123
-rw-r--r--FS/FS/cdr.pm642
-rw-r--r--FS/FS/cdr_calltype.pm115
-rw-r--r--FS/FS/cdr_carrier.pm116
-rw-r--r--FS/FS/cdr_type.pm119
-rw-r--r--FS/FS/cdr_upstream_rate.pm138
-rw-r--r--FS/FS/clientapi_session.pm121
-rw-r--r--FS/FS/clientapi_session_field.pm126
-rw-r--r--FS/FS/cust_bill.pm2638
-rw-r--r--FS/FS/cust_bill_ApplicationCommon.pm243
-rw-r--r--FS/FS/cust_bill_event.pm282
-rw-r--r--FS/FS/cust_bill_pay.pm163
-rw-r--r--FS/FS/cust_bill_pay_pkg.pm132
-rw-r--r--FS/FS/cust_bill_pkg.pm309
-rw-r--r--FS/FS/cust_bill_pkg_detail.pm124
-rw-r--r--FS/FS/cust_credit.pm339
-rw-r--r--FS/FS/cust_credit_bill.pm166
-rw-r--r--FS/FS/cust_credit_bill_pkg.pm132
-rw-r--r--FS/FS/cust_credit_refund.pm179
-rw-r--r--FS/FS/cust_main.pm4665
-rw-r--r--FS/FS/cust_main_Mixin.pm147
-rw-r--r--FS/FS/cust_main_county.pm291
-rw-r--r--FS/FS/cust_main_invoice.pm173
-rw-r--r--FS/FS/cust_pay.pm568
-rw-r--r--FS/FS/cust_pay_batch.pm564
-rw-r--r--FS/FS/cust_pay_refund.pm177
-rw-r--r--FS/FS/cust_pay_void.pm236
-rw-r--r--FS/FS/cust_pkg.pm1419
-rw-r--r--FS/FS/cust_refund.pm319
-rw-r--r--FS/FS/cust_svc.pm664
-rw-r--r--FS/FS/cust_tax_exempt.pm151
-rw-r--r--FS/FS/cust_tax_exempt_pkg.pm136
-rw-r--r--FS/FS/domain_record.pm438
-rw-r--r--FS/FS/export_svc.pm322
-rw-r--r--FS/FS/h_Common.pm103
-rw-r--r--FS/FS/h_cust_bill.pm33
-rw-r--r--FS/FS/h_cust_svc.pm107
-rw-r--r--FS/FS/h_cust_tax_exempt.pm40
-rw-r--r--FS/FS/h_domain_record.pm33
-rw-r--r--FS/FS/h_svc_acct.pm78
-rw-r--r--FS/FS/h_svc_broadband.pm33
-rw-r--r--FS/FS/h_svc_domain.pm33
-rw-r--r--FS/FS/h_svc_external.pm33
-rw-r--r--FS/FS/h_svc_forward.pm85
-rw-r--r--FS/FS/h_svc_phone.pm33
-rw-r--r--FS/FS/h_svc_www.pm67
-rw-r--r--FS/FS/inventory_class.pm164
-rw-r--r--FS/FS/inventory_item.pm204
-rw-r--r--FS/FS/m2m_Common.pm110
-rw-r--r--FS/FS/m2name_Common.pm95
-rw-r--r--FS/FS/msgcat.pm133
-rw-r--r--FS/FS/nas.pm150
-rw-r--r--FS/FS/option_Common.pm295
-rw-r--r--FS/FS/part_bill_event.pm216
-rw-r--r--FS/FS/part_export.pm458
-rw-r--r--FS/FS/part_export/acct_sql.pm271
-rw-r--r--FS/FS/part_export/apache.pm47
-rw-r--r--FS/FS/part_export/artera_turbo.pm181
-rw-r--r--FS/FS/part_export/bind.pm35
-rw-r--r--FS/FS/part_export/bind_slave.pm28
-rw-r--r--FS/FS/part_export/bsdshell.pm25
-rw-r--r--FS/FS/part_export/communigate_pro.pm178
-rw-r--r--FS/FS/part_export/communigate_pro_singledomain.pm37
-rw-r--r--FS/FS/part_export/cp.pm161
-rw-r--r--FS/FS/part_export/cpanel.pm192
-rw-r--r--FS/FS/part_export/cyrus.pm120
-rw-r--r--FS/FS/part_export/domain_shellcommands.pm165
-rw-r--r--FS/FS/part_export/everyone_net.pm132
-rw-r--r--FS/FS/part_export/forward_shellcommands.pm182
-rw-r--r--FS/FS/part_export/http.pm134
-rw-r--r--FS/FS/part_export/infostreet.pm277
-rw-r--r--FS/FS/part_export/ldap.pm294
-rw-r--r--FS/FS/part_export/null.pm13
-rw-r--r--FS/FS/part_export/passwdfile.pm18
-rw-r--r--FS/FS/part_export/postfix.pm32
-rw-r--r--FS/FS/part_export/radiator.pm167
-rw-r--r--FS/FS/part_export/router.pm190
-rw-r--r--FS/FS/part_export/shellcommands.pm334
-rw-r--r--FS/FS/part_export/shellcommands_withdomain.pm112
-rw-r--r--FS/FS/part_export/sqlmail.pm220
-rw-r--r--FS/FS/part_export/sqlradius.pm552
-rw-r--r--FS/FS/part_export/sqlradius_withdomain.pm28
-rw-r--r--FS/FS/part_export/sysvshell.pm25
-rw-r--r--FS/FS/part_export/textradius.pm191
-rw-r--r--FS/FS/part_export/vpopmail.pm254
-rw-r--r--FS/FS/part_export/www_shellcommands.pm167
-rw-r--r--FS/FS/part_export_option.pm134
-rw-r--r--FS/FS/part_pkg.pm830
-rw-r--r--FS/FS/part_pkg/flat.pm81
-rw-r--r--FS/FS/part_pkg/flat_comission.pm50
-rw-r--r--FS/FS/part_pkg/flat_comission_cust.pm55
-rw-r--r--FS/FS/part_pkg/flat_comission_pkg.pm50
-rw-r--r--FS/FS/part_pkg/flat_delayed.pm44
-rw-r--r--FS/FS/part_pkg/incomplete/billoneday.pm48
-rw-r--r--FS/FS/part_pkg/prepaid.pm28
-rw-r--r--FS/FS/part_pkg/prorate.pm64
-rw-r--r--FS/FS/part_pkg/sesmon_hour.pm56
-rw-r--r--FS/FS/part_pkg/sesmon_minute.pm55
-rw-r--r--FS/FS/part_pkg/sql_external.pm76
-rw-r--r--FS/FS/part_pkg/sql_generic.pm87
-rw-r--r--FS/FS/part_pkg/sqlradacct_hour.pm170
-rw-r--r--FS/FS/part_pkg/subscription.pm50
-rw-r--r--FS/FS/part_pkg/voip_cdr.pm353
-rw-r--r--FS/FS/part_pkg/voip_sqlradacct.pm192
-rw-r--r--FS/FS/part_pkg_option.pm131
-rw-r--r--FS/FS/part_pop_local.pm113
-rw-r--r--FS/FS/part_referral.pm204
-rw-r--r--FS/FS/part_svc.pm662
-rw-r--r--FS/FS/part_svc_column.pm120
-rwxr-xr-xFS/FS/part_svc_router.pm33
-rwxr-xr-xFS/FS/part_virtual_field.pm300
-rw-r--r--FS/FS/pay_batch.pm125
-rw-r--r--FS/FS/payby.pm131
-rw-r--r--FS/FS/payment_gateway.pm147
-rw-r--r--FS/FS/payment_gateway_option.pm126
-rw-r--r--FS/FS/pkg_class.pm111
-rw-r--r--FS/FS/pkg_svc.pm158
-rw-r--r--FS/FS/port.pm154
-rw-r--r--FS/FS/prepay_credit.pm191
-rw-r--r--FS/FS/queue.pm465
-rw-r--r--FS/FS/queue_arg.pm117
-rw-r--r--FS/FS/queue_depend.pm121
-rw-r--r--FS/FS/raddb.pm1912
-rw-r--r--FS/FS/radius_usergroup.pm131
-rw-r--r--FS/FS/rate.pm379
-rw-r--r--FS/FS/rate_detail.pm165
-rw-r--r--FS/FS/rate_prefix.pm139
-rw-r--r--FS/FS/rate_region.pm313
-rw-r--r--FS/FS/reg_code.pm223
-rw-r--r--FS/FS/reg_code_pkg.pm139
-rwxr-xr-xFS/FS/router.pm140
-rw-r--r--FS/FS/session.pm265
-rw-r--r--FS/FS/svc_Common.pm779
-rw-r--r--FS/FS/svc_acct.pm1761
-rw-r--r--FS/FS/svc_acct_pop.pm206
-rwxr-xr-xFS/FS/svc_broadband.pm243
-rw-r--r--FS/FS/svc_domain.pm451
-rw-r--r--FS/FS/svc_external.pm180
-rw-r--r--FS/FS/svc_forward.pm312
-rw-r--r--FS/FS/svc_phone.pm146
-rw-r--r--FS/FS/svc_www.pm286
-rw-r--r--FS/FS/type_pkgs.pm125
-rw-r--r--FS/MANIFEST356
-rw-r--r--FS/MANIFEST.SKIP1
-rw-r--r--FS/Makefile.PL10
-rw-r--r--FS/README6
-rwxr-xr-xFS/bin/freeside-addgroup50
-rw-r--r--FS/bin/freeside-addoutsource24
-rw-r--r--FS/bin/freeside-addoutsourceuser15
-rw-r--r--FS/bin/freeside-adduser115
-rwxr-xr-xFS/bin/freeside-apply-credits21
-rwxr-xr-xFS/bin/freeside-bill128
-rwxr-xr-xFS/bin/freeside-count-active-customers17
-rwxr-xr-xFS/bin/freeside-daily89
-rw-r--r--FS/bin/freeside-deloutsource11
-rw-r--r--FS/bin/freeside-deloutsourceuser6
-rw-r--r--FS/bin/freeside-deluser64
-rwxr-xr-xFS/bin/freeside-email59
-rwxr-xr-xFS/bin/freeside-expiration-alerter226
-rwxr-xr-xFS/bin/freeside-monthly91
-rw-r--r--FS/bin/freeside-prepaidd75
-rw-r--r--FS/bin/freeside-queued253
-rw-r--r--FS/bin/freeside-radgroup76
-rw-r--r--FS/bin/freeside-reexport71
-rw-r--r--FS/bin/freeside-selfservice-server227
-rw-r--r--FS/bin/freeside-setinvoice42
-rwxr-xr-xFS/bin/freeside-setup127
-rw-r--r--FS/bin/freeside-sqlradius-radacctd150
-rwxr-xr-xFS/bin/freeside-sqlradius-reset88
-rw-r--r--FS/bin/freeside-sqlradius-seconds58
-rwxr-xr-xFS/bin/freeside-upgrade49
-rw-r--r--FS/t/AccessRight.t5
-rw-r--r--FS/t/CGI.t5
-rw-r--r--FS/t/ClientAPI.t5
-rw-r--r--FS/t/ClientAPI_SessionCache.t5
-rw-r--r--FS/t/Conf.t5
-rw-r--r--FS/t/ConfDefaults.t5
-rw-r--r--FS/t/ConfItem.t5
-rw-r--r--FS/t/Cron-backup.t5
-rw-r--r--FS/t/Cron-bill.t5
-rw-r--r--FS/t/Cron-vacuum.t5
-rw-r--r--FS/t/Daemon.t5
-rw-r--r--FS/t/InitHandler.t5
-rw-r--r--FS/t/Misc.t5
-rw-r--r--FS/t/Msgcat.t5
-rw-r--r--FS/t/Record.t5
-rw-r--r--FS/t/Report-Table-Monthly.t5
-rw-r--r--FS/t/Report-Table.t5
-rw-r--r--FS/t/Report.t5
-rw-r--r--FS/t/SearchCache.t5
-rw-r--r--FS/t/UID.t5
-rw-r--r--FS/t/access_group.t5
-rw-r--r--FS/t/access_groupagent.t5
-rw-r--r--FS/t/access_right.t5
-rw-r--r--FS/t/access_user.t5
-rw-r--r--FS/t/access_user_pref.t5
-rw-r--r--FS/t/access_usergroup.t5
-rw-r--r--FS/t/acct_snarf.t5
-rw-r--r--FS/t/agent.t5
-rw-r--r--FS/t/agent_payment_gateway.t5
-rw-r--r--FS/t/agent_type.t5
-rw-r--r--FS/t/banned_pay.t5
-rw-r--r--FS/t/cancel_reason.t5
-rw-r--r--FS/t/cdr.t5
-rw-r--r--FS/t/cdr_calltype.t5
-rw-r--r--FS/t/cdr_carrier.t5
-rw-r--r--FS/t/cdr_type.t5
-rw-r--r--FS/t/cdr_upstream_rate.t5
-rw-r--r--FS/t/clientapi_session.t5
-rw-r--r--FS/t/clientapi_session_field.t5
-rw-r--r--FS/t/cust_bill.t5
-rw-r--r--FS/t/cust_bill_ApplicationCommon.t5
-rw-r--r--FS/t/cust_bill_event.t5
-rw-r--r--FS/t/cust_bill_pay.t5
-rw-r--r--FS/t/cust_bill_pay_pkg.t5
-rw-r--r--FS/t/cust_bill_pkg.t5
-rw-r--r--FS/t/cust_bill_pkg_detail.t5
-rw-r--r--FS/t/cust_credit.t5
-rw-r--r--FS/t/cust_credit_bill.t5
-rw-r--r--FS/t/cust_credit_bill_pkg.t5
-rw-r--r--FS/t/cust_credit_refund.t5
-rw-r--r--FS/t/cust_main.t5
-rw-r--r--FS/t/cust_main_Mixin.t5
-rw-r--r--FS/t/cust_main_county.t5
-rw-r--r--FS/t/cust_main_invoice.t5
-rw-r--r--FS/t/cust_pay.t5
-rw-r--r--FS/t/cust_pay_batch.t5
-rw-r--r--FS/t/cust_pay_refund.t5
-rw-r--r--FS/t/cust_pay_void.t5
-rw-r--r--FS/t/cust_pkg.t5
-rw-r--r--FS/t/cust_refund.t5
-rw-r--r--FS/t/cust_svc.t5
-rw-r--r--FS/t/cust_tax_exempt.pm5
-rw-r--r--FS/t/cust_tax_exempt.t5
-rw-r--r--FS/t/cust_tax_exempt_pkg.t5
-rw-r--r--FS/t/domain_record.t5
-rw-r--r--FS/t/export_svc.t5
-rw-r--r--FS/t/h_Common.t5
-rw-r--r--FS/t/h_cust_bill.t5
-rw-r--r--FS/t/h_cust_svc.t5
-rw-r--r--FS/t/h_cust_tax_exempt.t5
-rw-r--r--FS/t/h_domain_record.t5
-rw-r--r--FS/t/h_svc_acct.t5
-rw-r--r--FS/t/h_svc_broadband.t5
-rw-r--r--FS/t/h_svc_domain.t5
-rw-r--r--FS/t/h_svc_external.t5
-rw-r--r--FS/t/h_svc_forward.t5
-rw-r--r--FS/t/h_svc_www.t5
-rw-r--r--FS/t/inventory_class.t5
-rw-r--r--FS/t/inventory_item.t5
-rw-r--r--FS/t/msgcat.t5
-rw-r--r--FS/t/nas.t5
-rw-r--r--FS/t/option_Common.t5
-rw-r--r--FS/t/part_bill_event.t5
-rw-r--r--FS/t/part_export-acct_sql.t5
-rw-r--r--FS/t/part_export-apache.t5
-rw-r--r--FS/t/part_export-bind.t5
-rw-r--r--FS/t/part_export-bind_slave.t5
-rw-r--r--FS/t/part_export-bsdshell.t5
-rw-r--r--FS/t/part_export-communigate_pro.t5
-rw-r--r--FS/t/part_export-communigate_pro_singledomain.t5
-rw-r--r--FS/t/part_export-cp.t5
-rw-r--r--FS/t/part_export-cyrus.t5
-rw-r--r--FS/t/part_export-domain_shellcommands.t5
-rw-r--r--FS/t/part_export-forward_shellcommands.t5
-rw-r--r--FS/t/part_export-http.t5
-rw-r--r--FS/t/part_export-infostreet.t5
-rw-r--r--FS/t/part_export-ldap.t5
-rw-r--r--FS/t/part_export-null.t5
-rw-r--r--FS/t/part_export-passwdfile.t5
-rw-r--r--FS/t/part_export-postfix.t5
-rw-r--r--FS/t/part_export-radiator.t5
-rw-r--r--FS/t/part_export-router.t5
-rw-r--r--FS/t/part_export-shellcommands.t5
-rw-r--r--FS/t/part_export-shellcommands_withdomain.t5
-rw-r--r--FS/t/part_export-sqlmail.t5
-rw-r--r--FS/t/part_export-sqlradius.t5
-rw-r--r--FS/t/part_export-sqlradius_withdomain.t5
-rw-r--r--FS/t/part_export-sysvshell.t5
-rw-r--r--FS/t/part_export-textradius.t5
-rw-r--r--FS/t/part_export-vpopmail.t5
-rw-r--r--FS/t/part_export-www_shellcommands.t5
-rw-r--r--FS/t/part_export.t5
-rw-r--r--FS/t/part_export_option.t5
-rw-r--r--FS/t/part_pkg-flat.t5
-rw-r--r--FS/t/part_pkg-flat_comission.t5
-rw-r--r--FS/t/part_pkg-flat_comission_cust.t5
-rw-r--r--FS/t/part_pkg-flat_comission_pkg.t5
-rw-r--r--FS/t/part_pkg-flat_delayed.t5
-rw-r--r--FS/t/part_pkg-prorate.t5
-rw-r--r--FS/t/part_pkg-sesmon_hour.t5
-rw-r--r--FS/t/part_pkg-sesmon_minute.t5
-rw-r--r--FS/t/part_pkg-sql_external.t5
-rw-r--r--FS/t/part_pkg-sql_generic.t5
-rw-r--r--FS/t/part_pkg-sqlradacct_hour.t5
-rw-r--r--FS/t/part_pkg-subscription.t5
-rw-r--r--FS/t/part_pkg-voip_cdr.t5
-rw-r--r--FS/t/part_pkg-voip_sqlradacct.t5
-rw-r--r--FS/t/part_pkg.t5
-rw-r--r--FS/t/part_pkg_option.t5
-rw-r--r--FS/t/part_pop_local.t5
-rw-r--r--FS/t/part_referral.t5
-rw-r--r--FS/t/part_svc.t5
-rw-r--r--FS/t/part_svc_column.t5
-rw-r--r--FS/t/pay_batch.t5
-rw-r--r--FS/t/payby.t5
-rw-r--r--FS/t/payment_gateway.t5
-rw-r--r--FS/t/payment_gateway_option.t5
-rw-r--r--FS/t/pkg_class.t5
-rw-r--r--FS/t/pkg_svc.t5
-rw-r--r--FS/t/port.t5
-rw-r--r--FS/t/prepay_credit.t5
-rw-r--r--FS/t/queue.t5
-rw-r--r--FS/t/queue_arg.t5
-rw-r--r--FS/t/queue_depend.t5
-rw-r--r--FS/t/raddb.t5
-rw-r--r--FS/t/radius_usergroup.t5
-rw-r--r--FS/t/rate.t5
-rw-r--r--FS/t/rate_detail.t5
-rw-r--r--FS/t/rate_prefix.t5
-rw-r--r--FS/t/rate_region.t5
-rw-r--r--FS/t/reg_code.t5
-rw-r--r--FS/t/reg_code_pkg.t5
-rw-r--r--FS/t/session.t5
-rw-r--r--FS/t/svc_Common.t5
-rw-r--r--FS/t/svc_acct.t5
-rw-r--r--FS/t/svc_acct_pop.t5
-rw-r--r--FS/t/svc_broadband.t5
-rw-r--r--FS/t/svc_domain.t5
-rw-r--r--FS/t/svc_external.t5
-rw-r--r--FS/t/svc_forward.t5
-rw-r--r--FS/t/svc_phone.t5
-rw-r--r--FS/t/svc_www.t5
-rw-r--r--FS/t/type_pkgs.t5
-rw-r--r--GPL339
-rw-r--r--INSTALL1
-rw-r--r--Makefile344
-rw-r--r--README45
-rw-r--r--SCHEMA_CHANGE17
-rw-r--r--TODO9
-rwxr-xr-xbin/add-history-records.pl139
-rwxr-xr-xbin/apache.export67
-rw-r--r--bin/artera.import75
-rw-r--r--bin/backup-dvd45
-rw-r--r--bin/billco-upload20
-rwxr-xr-xbin/bind.export195
-rwxr-xr-xbin/bind.import234
-rwxr-xr-xbin/bsdshell.export114
-rwxr-xr-xbin/cdr_calltype.import41
-rwxr-xr-xbin/cdr_upstream_rate.import142
-rw-r--r--bin/create-fetchmailrc47
-rwxr-xr-xbin/create-history-tables93
-rwxr-xr-xbin/dbdef-create24
-rwxr-xr-xbin/fix-sequences69
-rwxr-xr-xbin/freeside-init60
-rwxr-xr-xbin/freeside-session-kill103
-rw-r--r--bin/freeside.import146
-rwxr-xr-xbin/fs-migrate-part_svc41
-rwxr-xr-xbin/fs-migrate-payref31
-rwxr-xr-xbin/fs-migrate-svc_acct_sm229
-rwxr-xr-xbin/fs-radius-add-check68
-rwxr-xr-xbin/fs-radius-add-reply69
-rwxr-xr-xbin/generate-prepay35
-rwxr-xr-xbin/generate-raddb53
-rwxr-xr-xbin/generate-table-module90
-rwxr-xr-xbin/generate-tests21
-rwxr-xr-xbin/ispman.ldap.import114
-rwxr-xr-xbin/mapsecrets2access_user79
-rwxr-xr-xbin/masonize80
-rwxr-xr-xbin/passwd.import121
-rw-r--r--bin/pg-readonly24
-rwxr-xr-xbin/pod2x56
-rwxr-xr-xbin/postfix.export122
-rwxr-xr-xbin/postfix_courierimap.import137
-rwxr-xr-xbin/print-schema7
-rwxr-xr-xbin/rate-us.import109
-rwxr-xr-xbin/rate.import95
-rwxr-xr-xbin/rollback38
-rwxr-xr-xbin/rt-drop-tables29
-rw-r--r--bin/rt-update-links36
-rw-r--r--bin/sendmail.import178
-rw-r--r--bin/sequences.reset32
-rwxr-xr-xbin/shadow.reimport125
-rwxr-xr-xbin/slony-setup53
-rwxr-xr-xbin/sqlradius-norealm.reimport113
-rw-r--r--bin/sqlradius.import152
-rwxr-xr-xbin/sqlradius.reimport160
-rwxr-xr-xbin/svc_acct.export641
-rwxr-xr-xbin/svc_acct.import238
-rwxr-xr-xbin/svc_broadband.renumber84
-rwxr-xr-xbin/svc_domain.erase17
-rwxr-xr-xbin/sysvshell.export112
-rw-r--r--conf/agent_defaultpkg0
-rw-r--r--conf/alerter_template20
-rw-r--r--conf/cust_pkg-change_svcpart0
-rw-r--r--conf/declinetemplate10
-rw-r--r--conf/home1
-rw-r--r--conf/invoice_from1
-rw-r--r--conf/invoice_html131
-rw-r--r--conf/invoice_latex244
-rw-r--r--conf/invoice_latex.diff138
-rw-r--r--conf/invoice_latexfooter1
-rw-r--r--conf/invoice_latexnotes8
-rw-r--r--conf/invoice_latexreturnaddress3
-rw-r--r--conf/invoice_latexsmallfooter1
-rw-r--r--conf/invoice_template27
-rw-r--r--conf/locale1
-rw-r--r--conf/logo.eps13510
-rw-r--r--conf/logo.pngbin4887 -> 0 bytes
-rw-r--r--conf/lpr1
-rw-r--r--conf/maxsearchrecordsperpage1
-rw-r--r--conf/payment_receipt_email26
-rw-r--r--conf/report_template14
-rw-r--r--conf/shells5
-rw-r--r--conf/show-msgcat-codes0
-rw-r--r--conf/smtpmachine1
-rw-r--r--conf/soadefaultttl1
-rw-r--r--conf/soaexpire1
-rw-r--r--conf/soarefresh1
-rw-r--r--conf/soaretry1
-rw-r--r--debian/README.Debian6
-rw-r--r--debian/changelog9
-rw-r--r--debian/conffiles.ex7
-rw-r--r--debian/control59
-rw-r--r--debian/copyright10
-rw-r--r--debian/cron.d.ex4
-rw-r--r--debian/dirs2
-rw-r--r--debian/docs3
-rw-r--r--debian/ex.doc-base.package22
-rw-r--r--debian/freeside-doc.docs2
-rw-r--r--debian/freeside-doc.files2
-rw-r--r--debian/init.d.ex70
-rw-r--r--debian/manpage.1.ex60
-rw-r--r--debian/manpage.sgml.ex143
-rw-r--r--debian/menu.ex2
-rw-r--r--debian/postinst.ex47
-rw-r--r--debian/postrm.ex36
-rw-r--r--debian/preinst.ex42
-rw-r--r--debian/prerm.ex37
-rwxr-xr-xdebian/rules113
-rw-r--r--debian/watch.ex5
-rwxr-xr-xeg/TEMPLATE_cust_main.import198
-rw-r--r--eg/export_template.pm106
-rw-r--r--eg/table_template-svc.pm161
-rw-r--r--eg/table_template.pm118
-rwxr-xr-xeg/xmlrpc-example.pl23
-rw-r--r--etc/abbr_state.txt72
-rw-r--r--etc/countries.txt239
-rw-r--r--etc/domain-template.txt231
-rwxr-xr-xetc/megapop.pl116
-rw-r--r--etc/sql-reserved-words.txt103
-rwxr-xr-xfs_passwd/fs_passwd131
-rwxr-xr-xfs_radlog/fs_radlogd51
-rwxr-xr-xfs_selfadmin/FS-MailAdminServer/MailAdminClient.pm541
-rwxr-xr-xfs_selfadmin/FS-MailAdminServer/cgi/mailadmin.cgi698
-rwxr-xr-xfs_selfadmin/FS-MailAdminServer/fs_mailadmind366
-rw-r--r--fs_selfadmin/README27
-rwxr-xr-xfs_selfadmin/fs_mailadmin_server642
-rwxr-xr-xfs_selfservice/DEPLOY27
-rw-r--r--fs_selfservice/FS-SelfService/Changes6
-rw-r--r--fs_selfservice/FS-SelfService/MANIFEST6
-rw-r--r--fs_selfservice/FS-SelfService/Makefile.PL20
-rw-r--r--fs_selfservice/FS-SelfService/SelfService.pm1098
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent.cgi457
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_customer_menu.html7
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_delete_svc.html19
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_login.html22
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_logout.html5
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_main.html37
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_menu.html15
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_order_pkg.html19
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_provision.html25
-rw-r--r--fs_selfservice/FS-SelfService/cgi/agent_provision_svc_acct.html19
-rw-r--r--fs_selfservice/FS-SelfService/cgi/change_password.html53
-rw-r--r--fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi18
-rw-r--r--fs_selfservice/FS-SelfService/cgi/cvv2.html25
-rw-r--r--fs_selfservice/FS-SelfService/cgi/cvv2.pngbin3854 -> 0 bytes
-rw-r--r--fs_selfservice/FS-SelfService/cgi/cvv2_amex.pngbin4573 -> 0 bytes
-rw-r--r--fs_selfservice/FS-SelfService/cgi/decline.html5
-rw-r--r--fs_selfservice/FS-SelfService/cgi/delete_svc.html17
-rw-r--r--fs_selfservice/FS-SelfService/cgi/list_customers.html39
-rw-r--r--fs_selfservice/FS-SelfService/cgi/login.html29
-rw-r--r--fs_selfservice/FS-SelfService/cgi/logout.html5
-rw-r--r--fs_selfservice/FS-SelfService/cgi/make_payment.html118
-rw-r--r--fs_selfservice/FS-SelfService/cgi/map.gifbin8181 -> 0 bytes
-rw-r--r--fs_selfservice/FS-SelfService/cgi/myaccount.html45
-rw-r--r--fs_selfservice/FS-SelfService/cgi/myaccount_menu.html91
-rw-r--r--fs_selfservice/FS-SelfService/cgi/order_pkg.html75
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/passwd.cgi60
-rw-r--r--fs_selfservice/FS-SelfService/cgi/passwd.html28
-rw-r--r--fs_selfservice/FS-SelfService/cgi/payment_results.html16
-rw-r--r--fs_selfservice/FS-SelfService/cgi/process_change_password.html13
-rw-r--r--fs_selfservice/FS-SelfService/cgi/process_svc_acct.html13
-rw-r--r--fs_selfservice/FS-SelfService/cgi/process_svc_external.html15
-rw-r--r--fs_selfservice/FS-SelfService/cgi/promocode.html14
-rw-r--r--fs_selfservice/FS-SelfService/cgi/provision.html10
-rw-r--r--fs_selfservice/FS-SelfService/cgi/provision_list.html90
-rw-r--r--fs_selfservice/FS-SelfService/cgi/provision_svc_acct.html11
-rw-r--r--fs_selfservice/FS-SelfService/cgi/recharge_prepay.html36
-rw-r--r--fs_selfservice/FS-SelfService/cgi/recharge_results.html24
-rw-r--r--fs_selfservice/FS-SelfService/cgi/regcode.html14
-rw-r--r--fs_selfservice/FS-SelfService/cgi/selfservice.cgi341
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup-agentselect.html195
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup-alternate.html218
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup-billaddress.html307
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup-freeoption.html262
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup-snarf.html228
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup.cgi333
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/signup.html236
-rw-r--r--fs_selfservice/FS-SelfService/cgi/stateselect.html134
-rw-r--r--fs_selfservice/FS-SelfService/cgi/success.html11
-rw-r--r--fs_selfservice/FS-SelfService/cgi/svc_acct.html55
-rw-r--r--fs_selfservice/FS-SelfService/cgi/view_customer.html29
-rw-r--r--fs_selfservice/FS-SelfService/cgi/view_invoice.html15
-rw-r--r--fs_selfservice/FS-SelfService/freeside-selfservice-clientd272
-rwxr-xr-xfs_selfservice/FS-SelfService/ieak.template40
-rw-r--r--fs_selfservice/FS-SelfService/test.pl17
-rwxr-xr-xfs_selfservice/fs_passwd_test19
-rw-r--r--fs_sesmon/FS-SessionClient/Changes5
-rw-r--r--fs_sesmon/FS-SessionClient/MANIFEST11
-rw-r--r--fs_sesmon/FS-SessionClient/MANIFEST.SKIP1
-rw-r--r--fs_sesmon/FS-SessionClient/Makefile.PL10
-rw-r--r--fs_sesmon/FS-SessionClient/SessionClient.pm122
-rw-r--r--fs_sesmon/FS-SessionClient/bin/freeside-login36
-rw-r--r--fs_sesmon/FS-SessionClient/bin/freeside-logout36
-rw-r--r--fs_sesmon/FS-SessionClient/cgi/login.cgi108
-rw-r--r--fs_sesmon/FS-SessionClient/cgi/logout.cgi83
-rw-r--r--fs_sesmon/FS-SessionClient/fs_sessiond65
-rw-r--r--fs_sesmon/FS-SessionClient/test.pl21
-rw-r--r--fs_sesmon/fs_session_server140
-rwxr-xr-xfs_webdemo/register.cgi136
-rw-r--r--fs_webdemo/register.html33
-rwxr-xr-xfs_webdemo/registerd192
-rwxr-xr-xfs_webdemo/registerd.Pg221
-rw-r--r--htetc/freeside-base.conf15
-rw-r--r--htetc/freeside-rt.conf31
-rw-r--r--htetc/handler.pl351
-rwxr-xr-xhttemplate/browse/pay_batch.cgi54
-rw-r--r--init.d/freeside-init76
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/Changes352
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/MANIFEST38
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/Makefile.PL83
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/Pg.h46
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/Pg.pm1913
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/Pg.xs644
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/README166
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/README.win3263
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/dbd-pg.pod411
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.c2024
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.h81
-rwxr-xr-xinstall/5.005/DBD-Pg-1.22-fixvercmp/eg/ApacheDBI.pl70
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/eg/lotest.pl74
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/eg/notify_test.patch82
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/00basic.t10
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/01connect.t26
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/01constants.t25
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/01setup.t38
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/02prepare.t84
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/03bind.t85
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/04execute.t113
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/05fetch.t131
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/06disconnect.t31
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/07reuse.t28
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/08txn.t102
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/09autocommit.t68
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/11quoting.t50
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/12placeholders.t125
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/13pgtype.t43
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/15funct.t353
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/99cleanup.t24
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info.pm1167
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler.pm305
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler/Prompt.pm170
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS.pm55
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS/PostgreSQL.pm730
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Request.pm287
-rw-r--r--install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Util.pm456
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/Changes62
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema.pm367
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup.pm141
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Index.pm37
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Unique.pm38
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Column.pm300
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD.pm113
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Pg.pm175
-rwxr-xr-xinstall/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Sybase.pm141
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/mysql.pm126
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Table.pm471
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST19
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST.SKIP1
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/Makefile.PL11
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/README42
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/TODO6
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-mysql.t5
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-pg.t12
-rw-r--r--install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load.t5
-rw-r--r--install/centos/3/INSTALL66
-rw-r--r--install/centos/3/httpd-init50
-rw-r--r--install/debian/3.0/INSTALL33
-rw-r--r--install/debian/3.1/INSTALL59
-rwxr-xr-xinstall/fedora/fc1/INSTALL66
-rw-r--r--install/fedora/fc1/sources.list12
-rwxr-xr-xinstall/fedora/fc2/INSTALL63
-rw-r--r--install/fedora/fc2/sources.list12
-rwxr-xr-xinstall/fedora/fc3/INSTALL74
-rw-r--r--install/fedora/fc3/sources.list12
-rwxr-xr-xinstall/freebsd/INSTALL76
-rw-r--r--install/freebsd/ports56
-rw-r--r--install/openbsd/INSTALL54
-rw-r--r--install/openbsd/cpan15
-rw-r--r--install/openbsd/ports24
-rw-r--r--install/redhat/7.3/INSTALL40
-rw-r--r--install/redhat/7.3/sources.list2
-rwxr-xr-xinstall/redhat/8/INSTALL47
-rw-r--r--install/redhat/8/README.insecure6
-rw-r--r--install/redhat/8/sources.list1
-rw-r--r--install/redhat/9/INSTALL67
-rw-r--r--install/redhat/9/sources.list2
-rw-r--r--install/redhat/es3/INSTALL90
-rw-r--r--install/redhat/es3/httpd-init50
-rw-r--r--install/suse/9.0/INSTALL52
-rwxr-xr-xrt/COPYING339
-rw-r--r--rt/Changelog12427
-rw-r--r--rt/FREESIDE_MODIFIED31
-rw-r--r--rt/Makefile485
-rw-r--r--rt/Makefile.in492
-rwxr-xr-xrt/README300
-rw-r--r--rt/README.Oracle37
-rw-r--r--rt/UPGRADING205
-rw-r--r--rt/aclocal.m4158
-rw-r--r--rt/autom4te.cache/output.02771
-rw-r--r--rt/autom4te.cache/requests94
-rw-r--r--rt/autom4te.cache/traces.0158
-rwxr-xr-xrt/bin/mason_handler.fcgi54
-rw-r--r--rt/bin/mason_handler.fcgi.in84
-rwxr-xr-xrt/bin/mason_handler.scgi41
-rw-r--r--rt/bin/mason_handler.scgi.in65
-rw-r--r--rt/bin/mason_handler.svc234
-rw-r--r--rt/bin/mason_handler.svc.in259
-rw-r--r--rt/bin/rt-commit-handler846
-rw-r--r--rt/bin/rt-crontool220
-rw-r--r--rt/bin/rt-crontool.in244
-rwxr-xr-xrt/bin/rt-mailgate587
-rw-r--r--rt/bin/rt-mailgate.in320
-rw-r--r--rt/bin/rt.in1890
-rwxr-xr-xrt/bin/standalone_httpd.in66
-rwxr-xr-xrt/bin/webmux.pl125
-rw-r--r--rt/bin/webmux.pl.in135
-rw-r--r--rt/config.layout.in127
-rw-r--r--rt/config.log118
-rwxr-xr-xrt/config.status713
-rwxr-xr-xrt/configure3091
-rw-r--r--rt/configure.ac289
-rwxr-xr-xrt/docs/README.docs2
-rw-r--r--rt/docs/Security25
-rw-r--r--rt/docs/design_docs/3.3-schema-redesign.txt57
-rwxr-xr-xrt/docs/design_docs/CARS66
-rwxr-xr-xrt/docs/design_docs/TransactionTypes.txt48
-rw-r--r--rt/docs/design_docs/acls50
-rw-r--r--rt/docs/design_docs/approval_notices8
-rw-r--r--rt/docs/design_docs/approval_template25
-rw-r--r--rt/docs/design_docs/cf_search72
-rw-r--r--rt/docs/design_docs/cli_spec31
-rw-r--r--rt/docs/design_docs/cvs_integration164
-rw-r--r--rt/docs/design_docs/delegation115
-rw-r--r--rt/docs/design_docs/evil_plans162
-rw-r--r--rt/docs/design_docs/groups_notes88
-rw-r--r--rt/docs/design_docs/link-definitions.txt143
-rw-r--r--rt/docs/design_docs/realflow.txt191
-rw-r--r--rt/docs/design_docs/recursive_group_membership_algorithm109
-rw-r--r--rt/docs/design_docs/rql_parser_machine.graphviz32
-rw-r--r--rt/docs/design_docs/rt-mvc32
-rw-r--r--rt/docs/design_docs/string-extraction-guide.txt100
-rwxr-xr-xrt/docs/design_docs/subscription-definitions.txt113
-rw-r--r--rt/docs/design_docs/ticket_templates16
-rw-r--r--rt/docs/design_docs/users14
-rw-r--r--rt/docs/rt3-schema-relationships.dot89
-rw-r--r--rt/etc/RT_Config.pm374
-rw-r--r--rt/etc/RT_Config.pm.in493
-rw-r--r--rt/etc/RT_SiteConfig.pm40
-rw-r--r--rt/etc/acl.Informix5
-rw-r--r--rt/etc/acl.Oracle10
-rwxr-xr-xrt/etc/acl.Pg63
-rw-r--r--rt/etc/acl.Sybase6
-rwxr-xr-xrt/etc/acl.mysql8
-rw-r--r--rt/etc/constraints.mysql85
-rw-r--r--rt/etc/drop.Informix19
-rw-r--r--rt/etc/drop.Oracle39
-rw-r--r--rt/etc/initialdata587
-rw-r--r--rt/etc/rt.spec137
-rw-r--r--rt/etc/schema.Informix364
-rwxr-xr-xrt/etc/schema.Pg578
-rw-r--r--rt/etc/schema.SQLite442
-rw-r--r--rt/etc/schema.Sybase444
-rwxr-xr-xrt/etc/schema.mysql416
-rw-r--r--rt/etc/upgrade/3.1.0/acl.Informix4
-rwxr-xr-xrt/etc/upgrade/3.1.0/acl.Oracle4
-rwxr-xr-xrt/etc/upgrade/3.1.0/acl.Pg19
-rwxr-xr-xrt/etc/upgrade/3.1.0/acl.SQLite4
-rwxr-xr-xrt/etc/upgrade/3.1.0/acl.mysql4
-rw-r--r--rt/etc/upgrade/3.1.0/content2
-rw-r--r--rt/etc/upgrade/3.1.0/schema.Informix17
-rw-r--r--rt/etc/upgrade/3.1.0/schema.Oracle17
-rwxr-xr-xrt/etc/upgrade/3.1.0/schema.Pg25
-rw-r--r--rt/etc/upgrade/3.1.0/schema.SQLite21
-rwxr-xr-xrt/etc/upgrade/3.1.0/schema.mysql21
-rw-r--r--rt/etc/upgrade/3.1.15/content7
-rw-r--r--rt/etc/upgrade/3.1.17/content22
-rw-r--r--rt/etc/upgrade/3.3.0/acl.Informix4
-rw-r--r--rt/etc/upgrade/3.3.0/acl.Oracle4
-rw-r--r--rt/etc/upgrade/3.3.0/acl.Pg20
-rw-r--r--rt/etc/upgrade/3.3.0/acl.SQLite4
-rw-r--r--rt/etc/upgrade/3.3.0/acl.mysql4
-rw-r--r--rt/etc/upgrade/3.3.0/content1
-rw-r--r--rt/etc/upgrade/3.3.0/schema.Oracle65
-rw-r--r--rt/etc/upgrade/3.3.0/schema.Pg74
-rw-r--r--rt/etc/upgrade/3.3.0/schema.mysql65
-rw-r--r--rt/etc/upgrade/3.3.11/acl.Oracle4
-rw-r--r--rt/etc/upgrade/3.3.11/acl.Pg4
-rw-r--r--rt/etc/upgrade/3.3.11/acl.SQLite4
-rw-r--r--rt/etc/upgrade/3.3.11/acl.mysql4
-rw-r--r--rt/etc/upgrade/3.3.11/content1
-rw-r--r--rt/etc/upgrade/3.3.11/schema.Oracle0
-rw-r--r--rt/etc/upgrade/3.3.11/schema.Pg11
-rw-r--r--rt/etc/upgrade/3.3.11/schema.SQLite0
-rw-r--r--rt/etc/upgrade/3.3.11/schema.mysql5
-rw-r--r--rt/html/Admin/CustomFields/GroupRights.html170
-rw-r--r--rt/html/Admin/CustomFields/Modify.html212
-rw-r--r--rt/html/Admin/CustomFields/Objects.html145
-rw-r--r--rt/html/Admin/CustomFields/UserRights.html168
-rw-r--r--rt/html/Admin/CustomFields/index.html76
-rw-r--r--rt/html/Admin/Elements/AddCustomFieldValue66
-rw-r--r--rt/html/Admin/Elements/CreateUserCalled48
-rw-r--r--rt/html/Admin/Elements/CustomFieldTabs116
-rw-r--r--rt/html/Admin/Elements/EditCustomField157
-rw-r--r--rt/html/Admin/Elements/EditCustomFieldValues84
-rw-r--r--rt/html/Admin/Elements/EditCustomFields189
-rw-r--r--rt/html/Admin/Elements/EditQueueWatchers76
-rw-r--r--rt/html/Admin/Elements/EditScrip197
-rw-r--r--rt/html/Admin/Elements/EditScrips121
-rw-r--r--rt/html/Admin/Elements/EditTemplates126
-rw-r--r--rt/html/Admin/Elements/EditUserComments54
-rwxr-xr-xrt/html/Admin/Elements/GlobalCustomFieldTabs93
-rw-r--r--rt/html/Admin/Elements/GroupTabs100
-rw-r--r--rt/html/Admin/Elements/Header50
-rw-r--r--rt/html/Admin/Elements/ListGlobalCustomFields59
-rw-r--r--rt/html/Admin/Elements/ListGlobalScrips75
-rw-r--r--rt/html/Admin/Elements/ModifyTemplate82
-rw-r--r--rt/html/Admin/Elements/ObjectCustomFields109
-rw-r--r--rt/html/Admin/Elements/PickCustomFields96
-rw-r--r--rt/html/Admin/Elements/PickObjects80
-rw-r--r--rt/html/Admin/Elements/QueueRightsForUser62
-rw-r--r--rt/html/Admin/Elements/QueueTabs118
-rw-r--r--rt/html/Admin/Elements/SelectCustomFieldLookupType58
-rw-r--r--rt/html/Admin/Elements/SelectCustomFieldType58
-rw-r--r--rt/html/Admin/Elements/SelectGroups60
-rw-r--r--rt/html/Admin/Elements/SelectModifyGroup55
-rw-r--r--rt/html/Admin/Elements/SelectModifyQueue55
-rw-r--r--rt/html/Admin/Elements/SelectModifyUser71
-rw-r--r--rt/html/Admin/Elements/SelectNewGroupMembers93
-rw-r--r--rt/html/Admin/Elements/SelectRights116
-rw-r--r--rt/html/Admin/Elements/SelectScrip70
-rw-r--r--rt/html/Admin/Elements/SelectScripAction70
-rw-r--r--rt/html/Admin/Elements/SelectScripCondition70
-rw-r--r--rt/html/Admin/Elements/SelectSingleOrMultiple65
-rw-r--r--rt/html/Admin/Elements/SelectStage64
-rw-r--r--rt/html/Admin/Elements/SelectTemplate83
-rw-r--r--rt/html/Admin/Elements/SelectUsers62
-rw-r--r--rt/html/Admin/Elements/SystemTabs92
-rw-r--r--rt/html/Admin/Elements/Tabs91
-rwxr-xr-xrt/html/Admin/Elements/ToolTabs78
-rw-r--r--rt/html/Admin/Elements/UserTabs108
-rw-r--r--rt/html/Admin/Global/CustomFields/Groups.html11
-rwxr-xr-xrt/html/Admin/Global/CustomFields/Queue-Tickets.html11
-rwxr-xr-xrt/html/Admin/Global/CustomFields/Queue-Transactions.html11
-rw-r--r--rt/html/Admin/Global/CustomFields/Users.html11
-rw-r--r--rt/html/Admin/Global/CustomFields/index.html91
-rw-r--r--rt/html/Admin/Global/GroupRights.html121
-rw-r--r--rt/html/Admin/Global/Scrip.html78
-rw-r--r--rt/html/Admin/Global/Scrips.html75
-rw-r--r--rt/html/Admin/Global/Template.html123
-rw-r--r--rt/html/Admin/Global/Templates.html75
-rw-r--r--rt/html/Admin/Global/UserRights.html99
-rw-r--r--rt/html/Admin/Global/index.html86
-rw-r--r--rt/html/Admin/Groups/CustomFields.html46
-rw-r--r--rt/html/Admin/Groups/GroupRights.html117
-rw-r--r--rt/html/Admin/Groups/History.html66
-rw-r--r--rt/html/Admin/Groups/Members.html156
-rw-r--r--rt/html/Admin/Groups/Modify.html168
-rw-r--r--rt/html/Admin/Groups/UserRights.html114
-rw-r--r--rt/html/Admin/Groups/index.html107
-rw-r--r--rt/html/Admin/Queues/CustomField.html85
-rw-r--r--rt/html/Admin/Queues/CustomFields.html70
-rw-r--r--rt/html/Admin/Queues/GroupRights.html132
-rw-r--r--rt/html/Admin/Queues/Modify.html191
-rw-r--r--rt/html/Admin/Queues/People.html208
-rw-r--r--rt/html/Admin/Queues/Scrip.html89
-rw-r--r--rt/html/Admin/Queues/Scrips.html85
-rw-r--r--rt/html/Admin/Queues/Template.html128
-rw-r--r--rt/html/Admin/Queues/Templates.html79
-rw-r--r--rt/html/Admin/Queues/UserRights.html112
-rw-r--r--rt/html/Admin/Queues/index.html84
-rw-r--r--rt/html/Admin/Tools/Configuration.html98
-rw-r--r--rt/html/Admin/Tools/index.html53
-rw-r--r--rt/html/Admin/Users/CustomFields.html69
-rw-r--r--rt/html/Admin/Users/History.html66
-rw-r--r--rt/html/Admin/Users/Memberships.html65
-rw-r--r--rt/html/Admin/Users/Modify.html421
-rw-r--r--rt/html/Admin/Users/index.html113
-rw-r--r--rt/html/Admin/autohandler51
-rw-r--r--rt/html/Admin/index.html99
-rw-r--r--rt/html/Approvals/Display.html72
-rw-r--r--rt/html/Approvals/Elements/Approve78
-rw-r--r--rt/html/Approvals/Elements/PendingMyApproval109
-rw-r--r--rt/html/Approvals/Elements/ShowDependency107
-rw-r--r--rt/html/Approvals/Elements/Tabs56
-rw-r--r--rt/html/Approvals/index.html88
-rw-r--r--rt/html/Download/CustomFieldValue/dhandler75
-rw-r--r--rt/html/Download/Tabular/dhandler74
-rw-r--r--rt/html/Elements/BevelBoxRaisedEnd48
-rw-r--r--rt/html/Elements/BevelBoxRaisedStart48
-rw-r--r--rt/html/Elements/Callback90
-rw-r--r--rt/html/Elements/Checkbox61
-rw-r--r--rt/html/Elements/CollectionAsTable/Header123
-rw-r--r--rt/html/Elements/CollectionAsTable/ParseFormat102
-rw-r--r--rt/html/Elements/CollectionAsTable/Row111
-rw-r--r--rt/html/Elements/CreateTicket48
-rw-r--r--rt/html/Elements/EditCustomField89
-rw-r--r--rt/html/Elements/EditCustomFieldBinary60
-rw-r--r--rt/html/Elements/EditCustomFieldFreeform68
-rw-r--r--rt/html/Elements/EditCustomFieldImage60
-rw-r--r--rt/html/Elements/EditCustomFieldSelect71
-rw-r--r--rt/html/Elements/EditCustomFieldText65
-rw-r--r--rt/html/Elements/EditCustomFieldWikitext65
-rwxr-xr-xrt/html/Elements/EditLinks174
-rw-r--r--rt/html/Elements/Error86
-rw-r--r--rt/html/Elements/Footer85
-rw-r--r--rt/html/Elements/FreesideInvoiceSearch20
-rw-r--r--rt/html/Elements/FreesideNewCust3
-rw-r--r--rt/html/Elements/FreesideSearch11
-rw-r--r--rt/html/Elements/FreesideSvcSearch11
-rw-r--r--rt/html/Elements/GotoTicket46
-rw-r--r--rt/html/Elements/Header143
-rw-r--r--rt/html/Elements/ListActions65
-rw-r--r--rt/html/Elements/Login122
-rw-r--r--rt/html/Elements/Menu108
-rw-r--r--rt/html/Elements/MessageBox72
-rw-r--r--rt/html/Elements/MyRequests70
-rw-r--r--rt/html/Elements/MyTickets71
-rw-r--r--rt/html/Elements/PageLayout134
-rw-r--r--rt/html/Elements/QueryString52
-rw-r--r--rt/html/Elements/QuickCreate70
-rw-r--r--rt/html/Elements/Quicksearch88
-rw-r--r--rt/html/Elements/RT__Ticket/ColumnMap300
-rw-r--r--rt/html/Elements/Refresh67
-rw-r--r--rt/html/Elements/ScrubHTML71
-rw-r--r--rt/html/Elements/Section56
-rw-r--r--rt/html/Elements/SelectAttachmentField54
-rw-r--r--rt/html/Elements/SelectBoolean68
-rw-r--r--rt/html/Elements/SelectCustomFieldOperator62
-rw-r--r--rt/html/Elements/SelectCustomFieldValue63
-rw-r--r--rt/html/Elements/SelectDate71
-rw-r--r--rt/html/Elements/SelectDateRelation58
-rw-r--r--rt/html/Elements/SelectDateType58
-rw-r--r--rt/html/Elements/SelectEqualityOperator62
-rw-r--r--rt/html/Elements/SelectGroups60
-rw-r--r--rt/html/Elements/SelectLang78
-rw-r--r--rt/html/Elements/SelectLinkType59
-rw-r--r--rt/html/Elements/SelectMatch80
-rw-r--r--rt/html/Elements/SelectNewTicketQueue81
-rw-r--r--rt/html/Elements/SelectOwner108
-rw-r--r--rt/html/Elements/SelectQueue82
-rw-r--r--rt/html/Elements/SelectResultsPerPage65
-rw-r--r--rt/html/Elements/SelectSortOrder63
-rw-r--r--rt/html/Elements/SelectStatus65
-rw-r--r--rt/html/Elements/SelectTicketSortBy60
-rw-r--r--rt/html/Elements/SelectTicketTypes56
-rw-r--r--rt/html/Elements/SelectUsers60
-rw-r--r--rt/html/Elements/SelectWatcherType69
-rw-r--r--rt/html/Elements/SetupSessionCookie114
-rw-r--r--rt/html/Elements/ShowCustomFieldBinary49
-rw-r--r--rt/html/Elements/ShowCustomFieldImage51
-rw-r--r--rt/html/Elements/ShowCustomFieldWikitext55
-rw-r--r--rt/html/Elements/ShowCustomFields77
-rw-r--r--rt/html/Elements/ShowLink62
-rwxr-xr-xrt/html/Elements/ShowLinks109
-rw-r--r--rt/html/Elements/ShowMemberships86
-rw-r--r--rt/html/Elements/SimpleSearch56
-rw-r--r--rt/html/Elements/Submit105
-rw-r--r--rt/html/Elements/Tabs130
-rw-r--r--rt/html/Elements/TicketList154
-rw-r--r--rt/html/Elements/TitleBox46
-rw-r--r--rt/html/Elements/TitleBoxEnd56
-rw-r--r--rt/html/Elements/TitleBoxStart88
-rw-r--r--rt/html/NoAuth/Logout.html68
-rw-r--r--rt/html/NoAuth/Reminder.html48
-rw-r--r--rt/html/NoAuth/images/autohandler24
-rw-r--r--rt/html/NoAuth/images/bplogo.gifbin825 -> 0 bytes
-rw-r--r--rt/html/NoAuth/images/favicon.pngbin335 -> 0 bytes
-rw-r--r--rt/html/NoAuth/images/small-logo.pngbin4887 -> 0 bytes
-rw-r--r--rt/html/NoAuth/images/space.gifbin43 -> 0 bytes
-rw-r--r--rt/html/NoAuth/webrt.css759
-rw-r--r--rt/html/REST/1.0/Forms/queue/default168
-rw-r--r--rt/html/REST/1.0/Forms/queue/ns60
-rw-r--r--rt/html/REST/1.0/Forms/ticket/attachments128
-rw-r--r--rt/html/REST/1.0/Forms/ticket/default298
-rw-r--r--rt/html/REST/1.0/Forms/ticket/history187
-rw-r--r--rt/html/REST/1.0/Forms/ticket/links170
-rw-r--r--rt/html/REST/1.0/Forms/user/default186
-rw-r--r--rt/html/REST/1.0/Forms/user/ns63
-rw-r--r--rt/html/REST/1.0/NoAuth/mail-gateway77
-rw-r--r--rt/html/REST/1.0/autohandler54
-rw-r--r--rt/html/REST/1.0/dhandler309
-rw-r--r--rt/html/REST/1.0/logout49
-rw-r--r--rt/html/REST/1.0/search/dhandler54
-rw-r--r--rt/html/REST/1.0/search/ticket141
-rw-r--r--rt/html/REST/1.0/ticket/comment175
-rw-r--r--rt/html/REST/1.0/ticket/link118
-rw-r--r--rt/html/REST/1.0/ticket/merge100
-rw-r--r--rt/html/Search/Build.html849
-rw-r--r--rt/html/Search/Bulk.html278
-rwxr-xr-xrt/html/Search/Edit.html86
-rw-r--r--rt/html/Search/Elements/BuildFormatString243
-rw-r--r--rt/html/Search/Elements/DisplayOptions110
-rw-r--r--rt/html/Search/Elements/EditFormat114
-rw-r--r--rt/html/Search/Elements/EditQuery65
-rw-r--r--rt/html/Search/Elements/EditSearches104
-rw-r--r--rt/html/Search/Elements/NewListActions66
-rw-r--r--rt/html/Search/Elements/PickBasics187
-rw-r--r--rt/html/Search/Elements/PickCFs78
-rw-r--r--rt/html/Search/Elements/PickCriteria80
-rw-r--r--rt/html/Search/Elements/SearchPrivacy53
-rw-r--r--rt/html/Search/Elements/SelectAndOr51
-rw-r--r--rt/html/Search/Elements/SelectGroup65
-rw-r--r--rt/html/Search/Elements/SelectLinks64
-rw-r--r--rt/html/Search/Elements/SelectPersonType82
-rw-r--r--rt/html/Search/Elements/SelectSearchObject58
-rw-r--r--rt/html/Search/Elements/SelectSearchesForObjects66
-rwxr-xr-xrt/html/Search/Results.html138
-rw-r--r--rt/html/Search/Results.rdf85
-rw-r--r--rt/html/Search/Results.tsv115
-rw-r--r--rt/html/SelfService/Attachment/dhandler49
-rw-r--r--rt/html/SelfService/Closed.html49
-rw-r--r--rt/html/SelfService/Create.html115
-rwxr-xr-xrt/html/SelfService/CreateTicketInQueue.html61
-rw-r--r--rt/html/SelfService/Display.html219
-rw-r--r--rt/html/SelfService/Elements/GotoTicket46
-rw-r--r--rt/html/SelfService/Elements/Header47
-rw-r--r--rt/html/SelfService/Elements/MyRequests85
-rw-r--r--rt/html/SelfService/Elements/Tabs90
-rw-r--r--rt/html/SelfService/Error.html68
-rw-r--r--rt/html/SelfService/Prefs.html90
-rw-r--r--rt/html/SelfService/Update.html127
-rw-r--r--rt/html/SelfService/index.html48
-rw-r--r--rt/html/Ticket/Attachment/dhandler92
-rw-r--r--rt/html/Ticket/Create.html300
-rw-r--r--rt/html/Ticket/Display.html159
-rw-r--r--rt/html/Ticket/Elements/AddCustomers50
-rw-r--r--rt/html/Ticket/Elements/AddWatchers121
-rw-r--r--rt/html/Ticket/Elements/BulkLinks75
-rw-r--r--rt/html/Ticket/Elements/EditBasics94
-rw-r--r--rt/html/Ticket/Elements/EditCustomField55
-rw-r--r--rt/html/Ticket/Elements/EditCustomFields100
-rw-r--r--rt/html/Ticket/Elements/EditCustomers67
-rw-r--r--rt/html/Ticket/Elements/EditDates75
-rw-r--r--rt/html/Ticket/Elements/EditPeople91
-rw-r--r--rt/html/Ticket/Elements/EditWatchers74
-rwxr-xr-xrt/html/Ticket/Elements/FindAttachments93
-rwxr-xr-xrt/html/Ticket/Elements/LoadTextAttachments90
-rwxr-xr-xrt/html/Ticket/Elements/PreviewScrips124
-rw-r--r--rt/html/Ticket/Elements/ShowAttachments101
-rw-r--r--rt/html/Ticket/Elements/ShowBasics83
-rw-r--r--rt/html/Ticket/Elements/ShowCustomFields49
-rw-r--r--rt/html/Ticket/Elements/ShowCustomers40
-rw-r--r--rt/html/Ticket/Elements/ShowDates84
-rw-r--r--rt/html/Ticket/Elements/ShowDependencies63
-rw-r--r--rt/html/Ticket/Elements/ShowGroupMembers60
-rw-r--r--rt/html/Ticket/Elements/ShowHistory158
-rw-r--r--rt/html/Ticket/Elements/ShowMemberOf57
-rw-r--r--rt/html/Ticket/Elements/ShowMembers67
-rw-r--r--rt/html/Ticket/Elements/ShowMessageHeaders88
-rw-r--r--rt/html/Ticket/Elements/ShowMessageStanza83
-rw-r--r--rt/html/Ticket/Elements/ShowPeople66
-rw-r--r--rt/html/Ticket/Elements/ShowReferences72
-rw-r--r--rt/html/Ticket/Elements/ShowRequestor88
-rw-r--r--rt/html/Ticket/Elements/ShowSummary114
-rw-r--r--rt/html/Ticket/Elements/ShowTransaction186
-rw-r--r--rt/html/Ticket/Elements/ShowTransactionAttachments201
-rw-r--r--rt/html/Ticket/Elements/ShowUserEntry55
-rw-r--r--rt/html/Ticket/Elements/Tabs220
-rw-r--r--rt/html/Ticket/History.html85
-rw-r--r--rt/html/Ticket/Modify.html85
-rw-r--r--rt/html/Ticket/ModifyAll.html204
-rw-r--r--rt/html/Ticket/ModifyCustomers.html49
-rw-r--r--rt/html/Ticket/ModifyDates.html74
-rw-r--r--rt/html/Ticket/ModifyLinks.html76
-rw-r--r--rt/html/Ticket/ModifyPeople.html90
-rw-r--r--rt/html/Ticket/ShowEmailRecord.html71
-rw-r--r--rt/html/Ticket/Update.html224
-rw-r--r--rt/html/Tools/Elements/Tabs72
-rw-r--r--rt/html/Tools/MyDay.html91
-rw-r--r--rt/html/Tools/Offline.html166
-rw-r--r--rt/html/User/Delegation.html105
-rw-r--r--rt/html/User/Elements/DelegateRights107
-rw-r--r--rt/html/User/Elements/GroupTabs82
-rw-r--r--rt/html/User/Elements/Tabs78
-rw-r--r--rt/html/User/Groups/Members.html158
-rw-r--r--rt/html/User/Groups/Modify.html155
-rw-r--r--rt/html/User/Groups/index.html65
-rw-r--r--rt/html/User/Prefs.html279
-rw-r--r--rt/html/autohandler230
-rw-r--r--rt/html/index.html156
-rw-r--r--rt/html/l50
-rw-r--r--rt/install-sh251
-rw-r--r--rt/lib/RT.pm304
-rw-r--r--rt/lib/RT.pm.in369
-rwxr-xr-xrt/lib/RT/ACE.pm304
-rw-r--r--rt/lib/RT/ACE_Overlay.pm958
-rwxr-xr-xrt/lib/RT/ACL.pm115
-rw-r--r--rt/lib/RT/ACL_Overlay.pm372
-rw-r--r--rt/lib/RT/Action/AutoOpen.pm110
-rwxr-xr-xrt/lib/RT/Action/Autoreply.pm96
-rw-r--r--rt/lib/RT/Action/CreateTickets.pm1341
-rw-r--r--rt/lib/RT/Action/EscalatePriority.pm166
-rwxr-xr-xrt/lib/RT/Action/Generic.pm195
-rwxr-xr-xrt/lib/RT/Action/Notify.pm132
-rwxr-xr-xrt/lib/RT/Action/NotifyAsComment.pm55
-rw-r--r--rt/lib/RT/Action/RecordComment.pm118
-rw-r--r--rt/lib/RT/Action/RecordCorrespondence.pm119
-rw-r--r--rt/lib/RT/Action/ResolveMembers.pm88
-rwxr-xr-xrt/lib/RT/Action/SendEmail.pm685
-rw-r--r--rt/lib/RT/Action/SetPriority.pm83
-rw-r--r--rt/lib/RT/Action/UserDefined.pm93
-rwxr-xr-xrt/lib/RT/Attachment.pm372
-rw-r--r--rt/lib/RT/Attachment_Overlay.pm614
-rwxr-xr-xrt/lib/RT/Attachments.pm115
-rw-r--r--rt/lib/RT/Attachments_Overlay.pm170
-rw-r--r--rt/lib/RT/Attribute.pm347
-rw-r--r--rt/lib/RT/Attribute_Overlay.pm464
-rw-r--r--rt/lib/RT/Attributes.pm137
-rw-r--r--rt/lib/RT/Attributes_Overlay.pm197
-rw-r--r--rt/lib/RT/Base.pm157
-rw-r--r--rt/lib/RT/CachedGroupMember.pm280
-rw-r--r--rt/lib/RT/CachedGroupMember_Overlay.pm364
-rw-r--r--rt/lib/RT/CachedGroupMembers.pm137
-rw-r--r--rt/lib/RT/CachedGroupMembers_Overlay.pm176
-rw-r--r--rt/lib/RT/Condition/AnyTransaction.pm51
-rw-r--r--rt/lib/RT/Condition/BeforeDue.pm86
-rwxr-xr-xrt/lib/RT/Condition/Generic.pm211
-rw-r--r--rt/lib/RT/Condition/Overdue.pm90
-rw-r--r--rt/lib/RT/Condition/OwnerChange.pm122
-rw-r--r--rt/lib/RT/Condition/PriorityChange.pm80
-rw-r--r--rt/lib/RT/Condition/PriorityExceeds.pm79
-rw-r--r--rt/lib/RT/Condition/QueueChange.pm79
-rw-r--r--rt/lib/RT/Condition/StatusChange.pm59
-rw-r--r--rt/lib/RT/Condition/UserDefined.pm79
-rwxr-xr-xrt/lib/RT/CurrentUser.pm374
-rw-r--r--rt/lib/RT/CustomField.pm419
-rw-r--r--rt/lib/RT/CustomFieldValue.pm316
-rw-r--r--rt/lib/RT/CustomFieldValue_Overlay.pm19
-rw-r--r--rt/lib/RT/CustomFieldValues.pm148
-rw-r--r--rt/lib/RT/CustomFieldValues_Overlay.pm71
-rw-r--r--rt/lib/RT/CustomField_Overlay.pm1104
-rw-r--r--rt/lib/RT/CustomFields.pm148
-rw-r--r--rt/lib/RT/CustomFields_Overlay.pm263
-rw-r--r--rt/lib/RT/Date.pm557
-rw-r--r--rt/lib/RT/EmailParser.pm634
-rwxr-xr-xrt/lib/RT/Group.pm258
-rwxr-xr-xrt/lib/RT/GroupMember.pm189
-rw-r--r--rt/lib/RT/GroupMember_Overlay.pm389
-rwxr-xr-xrt/lib/RT/GroupMembers.pm115
-rw-r--r--rt/lib/RT/GroupMembers_Overlay.pm152
-rw-r--r--rt/lib/RT/Group_Overlay.pm1381
-rwxr-xr-xrt/lib/RT/Groups.pm115
-rw-r--r--rt/lib/RT/Groups_Overlay.pm513
-rw-r--r--rt/lib/RT/Handle.pm101
-rw-r--r--rt/lib/RT/I18N.pm476
-rw-r--r--rt/lib/RT/I18N/cs.pm113
-rw-r--r--rt/lib/RT/I18N/cs.po5760
-rw-r--r--rt/lib/RT/I18N/da.po5840
-rw-r--r--rt/lib/RT/I18N/de.po4749
-rw-r--r--rt/lib/RT/I18N/en.po88
-rw-r--r--rt/lib/RT/I18N/es.po6065
-rw-r--r--rt/lib/RT/I18N/fi.po5777
-rw-r--r--rt/lib/RT/I18N/fr.po4672
-rw-r--r--rt/lib/RT/I18N/he.po5017
-rw-r--r--rt/lib/RT/I18N/hu.po4721
-rw-r--r--rt/lib/RT/I18N/i_default.pm108
-rw-r--r--rt/lib/RT/I18N/id.po5047
-rw-r--r--rt/lib/RT/I18N/it.po6189
-rw-r--r--rt/lib/RT/I18N/ja.po5557
-rw-r--r--rt/lib/RT/I18N/nl.po5827
-rw-r--r--rt/lib/RT/I18N/no.po6147
-rw-r--r--rt/lib/RT/I18N/pl.po6436
-rw-r--r--rt/lib/RT/I18N/pt_br.po6116
-rw-r--r--rt/lib/RT/I18N/ru.po6272
-rw-r--r--rt/lib/RT/I18N/zh_cn.po7908
-rw-r--r--rt/lib/RT/I18N/zh_tw.po7908
-rw-r--r--rt/lib/RT/Interface/CLI.pm246
-rwxr-xr-xrt/lib/RT/Interface/Email.pm648
-rwxr-xr-xrt/lib/RT/Interface/Email/Auth/GnuPG.pm121
-rw-r--r--rt/lib/RT/Interface/Email/Auth/MailFrom.pm182
-rw-r--r--rt/lib/RT/Interface/Email/Filter/SpamAssassin.pm94
-rw-r--r--rt/lib/RT/Interface/REST.pm274
-rw-r--r--rt/lib/RT/Interface/Web.pm1377
-rw-r--r--rt/lib/RT/Interface/Web/Handler.pm221
-rwxr-xr-xrt/lib/RT/Interface/Web/QueryBuilder.pm56
-rwxr-xr-xrt/lib/RT/Interface/Web/QueryBuilder/Tree.pm245
-rwxr-xr-xrt/lib/RT/Interface/Web/Standalone.pm37
-rw-r--r--rt/lib/RT/Interface/Web_Vendor.pm95
-rw-r--r--rt/lib/RT/Link.pm302
-rw-r--r--rt/lib/RT/Link_Overlay.pm389
-rw-r--r--rt/lib/RT/Links.pm115
-rw-r--r--rt/lib/RT/Links_Overlay.pm175
-rw-r--r--rt/lib/RT/ObjectCustomField.pm293
-rw-r--r--rt/lib/RT/ObjectCustomFieldValue.pm431
-rw-r--r--rt/lib/RT/ObjectCustomFieldValue_Overlay.pm174
-rw-r--r--rt/lib/RT/ObjectCustomFieldValues.pm148
-rw-r--r--rt/lib/RT/ObjectCustomFieldValues_Overlay.pm153
-rw-r--r--rt/lib/RT/ObjectCustomField_Overlay.pm101
-rw-r--r--rt/lib/RT/ObjectCustomFields.pm148
-rw-r--r--rt/lib/RT/ObjectCustomFields_Overlay.pm113
-rw-r--r--rt/lib/RT/Principal.pm234
-rw-r--r--rt/lib/RT/Principal_Overlay.pm587
-rw-r--r--rt/lib/RT/Principals.pm137
-rw-r--r--rt/lib/RT/Principals_Overlay.pm78
-rwxr-xr-xrt/lib/RT/Queue.pm371
-rw-r--r--rt/lib/RT/Queue_Overlay.pm1136
-rwxr-xr-xrt/lib/RT/Queues.pm115
-rw-r--r--rt/lib/RT/Queues_Overlay.pm156
-rwxr-xr-xrt/lib/RT/Record.pm455
-rw-r--r--rt/lib/RT/SavedSearch.pm327
-rw-r--r--rt/lib/RT/SavedSearches.pm206
-rwxr-xr-xrt/lib/RT/Scrip.pm500
-rwxr-xr-xrt/lib/RT/ScripAction.pm279
-rw-r--r--rt/lib/RT/ScripAction_Overlay.pm284
-rwxr-xr-xrt/lib/RT/ScripActions.pm115
-rw-r--r--rt/lib/RT/ScripActions_Overlay.pm113
-rwxr-xr-xrt/lib/RT/ScripCondition.pm302
-rw-r--r--rt/lib/RT/ScripCondition_Overlay.pm237
-rwxr-xr-xrt/lib/RT/ScripConditions.pm115
-rw-r--r--rt/lib/RT/ScripConditions_Overlay.pm113
-rw-r--r--rt/lib/RT/Scrip_Overlay.pm616
-rwxr-xr-xrt/lib/RT/Scrips.pm115
-rw-r--r--rt/lib/RT/Scrips_Overlay.pm362
-rw-r--r--rt/lib/RT/Search/ActiveTicketsInQueue.pm101
-rw-r--r--rt/lib/RT/Search/FromSQL.pm109
-rw-r--r--rt/lib/RT/Search/Generic.pm151
-rw-r--r--rt/lib/RT/SearchBuilder.pm388
-rw-r--r--rt/lib/RT/StyleGuide.pod922
-rw-r--r--rt/lib/RT/System.pm193
-rwxr-xr-xrt/lib/RT/Template.pm363
-rw-r--r--rt/lib/RT/Template_Overlay.pm444
-rwxr-xr-xrt/lib/RT/Templates.pm115
-rw-r--r--rt/lib/RT/Templates_Overlay.pm202
-rwxr-xr-xrt/lib/RT/Ticket.pm662
-rw-r--r--rt/lib/RT/Ticket_Overlay.pm3740
-rwxr-xr-xrt/lib/RT/Tickets.pm115
-rw-r--r--rt/lib/RT/Tickets_Overlay.pm2673
-rw-r--r--rt/lib/RT/Tickets_Overlay_SQL.pm580
-rwxr-xr-xrt/lib/RT/Transaction.pm364
-rw-r--r--rt/lib/RT/Transaction_Overlay.pm1077
-rwxr-xr-xrt/lib/RT/Transactions.pm115
-rw-r--r--rt/lib/RT/Transactions_Overlay.pm186
-rw-r--r--rt/lib/RT/URI.pm271
-rw-r--r--rt/lib/RT/URI/base.pm151
-rw-r--r--rt/lib/RT/URI/freeside.pm285
-rw-r--r--rt/lib/RT/URI/freeside/Internal.pm138
-rw-r--r--rt/lib/RT/URI/freeside/XMLRPC.pm122
-rw-r--r--rt/lib/RT/URI/fsck_com_rt.pm269
-rw-r--r--rt/lib/RT/URI/t.pm83
-rwxr-xr-xrt/lib/RT/User.pm854
-rw-r--r--rt/lib/RT/User_Overlay.pm1811
-rwxr-xr-xrt/lib/RT/Users.pm115
-rw-r--r--rt/lib/RT/Users_Overlay.pm467
-rw-r--r--rt/lib/t/00smoke.t13
-rw-r--r--rt/lib/t/01harness.t12
-rw-r--r--rt/lib/t/02regression.t44
-rw-r--r--rt/lib/t/03web.pl94
-rw-r--r--rt/lib/t/04_send_email.pl481
-rw-r--r--rt/lib/t/create_data.pl136
-rw-r--r--rt/lib/t/data/8859-15-message-series/dir356
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg136
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg236
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg335
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg435
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg535
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg635
-rw-r--r--rt/lib/t/data/8859-15-message-series/msg736
-rw-r--r--rt/lib/t/data/crashes-file-based-parser193
-rw-r--r--rt/lib/t/data/multipart-alternative-with-umlaut62
-rw-r--r--rt/lib/t/data/multipart-report66
-rw-r--r--rt/lib/t/data/nested-mime-sample396
-rw-r--r--rt/lib/t/data/nested-rfc-822253
-rw-r--r--rt/lib/t/data/new-ticket-from-iso-8859-131
-rw-r--r--rt/lib/t/data/new-ticket-from-iso-8859-1-full38
-rw-r--r--rt/lib/t/data/notes-uuencoded2368
-rw-r--r--rt/lib/t/data/rt-send-cc5
-rw-r--r--rt/lib/t/data/russian-subject-no-content-type42
-rw-r--r--rt/lib/t/data/text-html-in-russian87
-rw-r--r--rt/lib/t/data/text-html-with-umlaut35
-rw-r--r--rt/lib/t/regression/01ticket_link_searching.t155
-rw-r--r--rt/lib/t/regression/02basic_web.t150
-rw-r--r--rt/lib/t/regression/03web_compiliation_errors.t66
-rw-r--r--rt/lib/t/regression/04send_email.t511
-rw-r--r--rt/lib/t/regression/05cronsupport.t91
-rw-r--r--rt/lib/t/regression/06mailgateway.t504
-rw-r--r--rt/lib/t/regression/07acl.t120
-rw-r--r--rt/lib/t/regression/07rights.t110
-rw-r--r--rt/lib/t/regression/08web_cf_access.t118
-rw-r--r--rt/lib/t/regression/09record_cf_api.t188
-rw-r--r--rt/lib/t/regression/10merge.t72
-rw-r--r--rt/lib/t/regression/11-template-insert.t27
-rw-r--r--rt/lib/t/regression/12-search.t235
-rw-r--r--rt/lib/t/regression/13-attribute-tests.t67
-rw-r--r--rt/lib/t/regression/14merge.t31
-rw-r--r--rt/lib/t/regression/15cf_single_values_are_single.t39
-rw-r--r--rt/lib/t/regression/16-transaction_cf_tests.t61
-rw-r--r--rt/lib/t/regression/17multiple_deleg_revocation.t135
-rw-r--r--rt/lib/t/regression/18stale_delegations_cleanup.t458
-rw-r--r--rt/lib/t/regression/19-rtname.t38
-rw-r--r--rt/lib/t/regression/20savedsearch.t180
-rw-r--r--rt/lib/t/regression/21query-builder.t204
-rw-r--r--rt/lib/t/regression/22search_tix_by_txn.t32
-rw-r--r--rt/lib/t/regression/mime_tests19
-rw-r--r--rt/lib/t/setup_regression.t34
-rw-r--r--rt/m4/rt_enable_layout.m436
-rw-r--r--rt/m4/rt_expand_var.m418
-rw-r--r--rt/m4/rt_layout.m475
-rw-r--r--rt/m4/rt_subst_expanded_arg.m414
-rw-r--r--rt/sbin/extract-message-catalog272
-rw-r--r--rt/sbin/extract_pod_tests157
-rw-r--r--rt/sbin/factory513
-rw-r--r--rt/sbin/license_tag239
-rw-r--r--rt/sbin/regression_harness54
-rwxr-xr-xrt/sbin/rt-dump-database.in168
-rw-r--r--rt/sbin/rt-setup-database.in678
-rw-r--r--rt/sbin/rt-test-dependencies.in377
-rw-r--r--sql-ledger/SL/AM.pm1478
-rw-r--r--sql-ledger/SL/AP.pm464
-rw-r--r--sql-ledger/SL/AR.pm492
-rw-r--r--sql-ledger/SL/BP.pm371
-rw-r--r--sql-ledger/SL/CA.pm486
-rw-r--r--sql-ledger/SL/CP.pm396
-rw-r--r--sql-ledger/SL/CT.pm1008
-rw-r--r--sql-ledger/SL/Form.pm2357
-rw-r--r--sql-ledger/SL/GL.pm514
-rw-r--r--sql-ledger/SL/HR.pm558
-rw-r--r--sql-ledger/SL/IC.pm1513
-rw-r--r--sql-ledger/SL/IR.pm1243
-rw-r--r--sql-ledger/SL/IS.pm1632
-rw-r--r--sql-ledger/SL/Inifile.pm88
-rw-r--r--sql-ledger/SL/Mailer.pm162
-rw-r--r--sql-ledger/SL/Menu.pm121
-rw-r--r--sql-ledger/SL/Num2text.pm162
-rw-r--r--sql-ledger/SL/OE.pm1581
-rw-r--r--sql-ledger/SL/OP.pm118
-rw-r--r--sql-ledger/SL/PE.pm639
-rw-r--r--sql-ledger/SL/RC.pm474
-rw-r--r--sql-ledger/SL/RP.pm2551
-rw-r--r--sql-ledger/SL/User.pm925
-rw-r--r--sql-ledger/VERSION1
-rwxr-xr-xsql-ledger/am.pl158
-rw-r--r--sql-ledger/bin/js/menu.pl188
-rw-r--r--sql-ledger/bin/lynx/menu.pl151
-rw-r--r--sql-ledger/bin/mozilla/admin.pl1638
-rw-r--r--sql-ledger/bin/mozilla/am.pl2394
-rw-r--r--sql-ledger/bin/mozilla/ap.pl1439
-rw-r--r--sql-ledger/bin/mozilla/ar.pl1486
-rw-r--r--sql-ledger/bin/mozilla/arap.pl415
-rw-r--r--sql-ledger/bin/mozilla/arapprn.pl660
-rw-r--r--sql-ledger/bin/mozilla/bp.pl567
-rw-r--r--sql-ledger/bin/mozilla/ca.pl478
-rw-r--r--sql-ledger/bin/mozilla/cp.pl724
-rw-r--r--sql-ledger/bin/mozilla/ct.pl2327
-rw-r--r--sql-ledger/bin/mozilla/gl.pl1066
-rw-r--r--sql-ledger/bin/mozilla/hr.pl1217
-rw-r--r--sql-ledger/bin/mozilla/ic.pl2706
-rw-r--r--sql-ledger/bin/mozilla/io.pl1637
-rw-r--r--sql-ledger/bin/mozilla/ir.pl806
-rw-r--r--sql-ledger/bin/mozilla/is.pl932
-rw-r--r--sql-ledger/bin/mozilla/login.pl325
-rw-r--r--sql-ledger/bin/mozilla/menu.pl158
-rw-r--r--sql-ledger/bin/mozilla/oe.pl2470
-rw-r--r--sql-ledger/bin/mozilla/pe.pl1236
-rw-r--r--sql-ledger/bin/mozilla/pos.pl878
-rw-r--r--sql-ledger/bin/mozilla/ps.pl42
-rw-r--r--sql-ledger/bin/mozilla/pw.pl73
-rw-r--r--sql-ledger/bin/mozilla/rc.pl509
-rw-r--r--sql-ledger/bin/mozilla/rp.pl2167
-rw-r--r--sql-ledger/css/sql-ledger.css193
-rw-r--r--sql-ledger/doc/COPYING355
-rw-r--r--sql-ledger/doc/COPYRIGHT23
-rw-r--r--sql-ledger/doc/README290
-rw-r--r--sql-ledger/doc/README.DB282
-rw-r--r--sql-ledger/doc/UPGRADE-1.6-1.861
-rw-r--r--sql-ledger/doc/UPGRADE-1.8-1.8.323
-rw-r--r--sql-ledger/doc/UPGRADE-1.8.3-1.8.410
-rw-r--r--sql-ledger/doc/UPGRADE-1.8.4-1.8.518
-rw-r--r--sql-ledger/doc/UPGRADE-1.8.5-1.8.76
-rw-r--r--sql-ledger/doc/UPGRADE-1.8.7-2.0.020
-rw-r--r--sql-ledger/doc/UPGRADE-2.0-2.0.88
-rw-r--r--sql-ledger/doc/UPGRADE-2.0.8-2.0.96
-rw-r--r--sql-ledger/doc/UPGRADE-2.0.9-2.2.012
-rw-r--r--sql-ledger/doc/UPGRADE-2.2.0-2.2.711
-rw-r--r--sql-ledger/doc/UPGRADE-2.2.7-2.4.084
-rw-r--r--sql-ledger/doc/UPGRADE-2.4.0-2.4.112
-rw-r--r--sql-ledger/doc/UPGRADE-2.4.1-2.4.212
-rw-r--r--sql-ledger/doc/UPGRADE-2.4.2-2.4.322
-rw-r--r--sql-ledger/doc/UPGRADE-2.4.3-2.4.412
-rw-r--r--sql-ledger/doc/faq.html556
-rw-r--r--sql-ledger/favicon.icobin3638 -> 0 bytes
-rw-r--r--sql-ledger/index.html13
-rw-r--r--sql-ledger/locale/be_nl/COPYING23
-rw-r--r--sql-ledger/locale/be_nl/LANGUAGE1
-rw-r--r--sql-ledger/locale/be_nl/Num2text161
-rw-r--r--sql-ledger/locale/be_nl/admin140
-rw-r--r--sql-ledger/locale/be_nl/all766
-rw-r--r--sql-ledger/locale/be_nl/am249
-rw-r--r--sql-ledger/locale/be_nl/ap163
-rw-r--r--sql-ledger/locale/be_nl/ar164
-rw-r--r--sql-ledger/locale/be_nl/arap30
-rw-r--r--sql-ledger/locale/be_nl/arapprn33
-rw-r--r--sql-ledger/locale/be_nl/bp63
-rw-r--r--sql-ledger/locale/be_nl/ca54
-rw-r--r--sql-ledger/locale/be_nl/cp84
-rw-r--r--sql-ledger/locale/be_nl/ct171
-rw-r--r--sql-ledger/locale/be_nl/gl136
-rw-r--r--sql-ledger/locale/be_nl/hr108
-rw-r--r--sql-ledger/locale/be_nl/ic269
-rw-r--r--sql-ledger/locale/be_nl/io132
-rw-r--r--sql-ledger/locale/be_nl/ir213
-rw-r--r--sql-ledger/locale/be_nl/is226
-rw-r--r--sql-ledger/locale/be_nl/login25
-rw-r--r--sql-ledger/locale/be_nl/menu133
-rw-r--r--sql-ledger/locale/be_nl/oe297
-rw-r--r--sql-ledger/locale/be_nl/pe82
-rw-r--r--sql-ledger/locale/be_nl/pos64
-rw-r--r--sql-ledger/locale/be_nl/ps328
-rw-r--r--sql-ledger/locale/be_nl/pw11
-rw-r--r--sql-ledger/locale/be_nl/rc75
-rw-r--r--sql-ledger/locale/be_nl/rp161
-rw-r--r--sql-ledger/locale/br/COPYING24
-rw-r--r--sql-ledger/locale/br/LANGUAGE1
-rw-r--r--sql-ledger/locale/br/admin140
-rw-r--r--sql-ledger/locale/br/all766
-rw-r--r--sql-ledger/locale/br/am240
-rw-r--r--sql-ledger/locale/br/ap163
-rw-r--r--sql-ledger/locale/br/ar164
-rw-r--r--sql-ledger/locale/br/arap30
-rw-r--r--sql-ledger/locale/br/arapprn33
-rw-r--r--sql-ledger/locale/br/bp60
-rw-r--r--sql-ledger/locale/br/ca53
-rw-r--r--sql-ledger/locale/br/cp84
-rw-r--r--sql-ledger/locale/br/ct165
-rw-r--r--sql-ledger/locale/br/gl133
-rw-r--r--sql-ledger/locale/br/hr103
-rw-r--r--sql-ledger/locale/br/ic266
-rw-r--r--sql-ledger/locale/br/io130
-rw-r--r--sql-ledger/locale/br/ir211
-rw-r--r--sql-ledger/locale/br/is224
-rw-r--r--sql-ledger/locale/br/login25
-rw-r--r--sql-ledger/locale/br/menu127
-rw-r--r--sql-ledger/locale/br/oe295
-rw-r--r--sql-ledger/locale/br/pe82
-rw-r--r--sql-ledger/locale/br/pos64
-rw-r--r--sql-ledger/locale/br/ps326
-rw-r--r--sql-ledger/locale/br/pw11
-rw-r--r--sql-ledger/locale/br/rc74
-rw-r--r--sql-ledger/locale/br/rp161
-rw-r--r--sql-ledger/locale/cn_utf/COPYING24
-rw-r--r--sql-ledger/locale/cn_utf/LANGUAGE1
-rw-r--r--sql-ledger/locale/cn_utf/admin140
-rw-r--r--sql-ledger/locale/cn_utf/all766
-rw-r--r--sql-ledger/locale/cn_utf/am245
-rw-r--r--sql-ledger/locale/cn_utf/ap162
-rw-r--r--sql-ledger/locale/cn_utf/ar163
-rw-r--r--sql-ledger/locale/cn_utf/arap30
-rw-r--r--sql-ledger/locale/cn_utf/arapprn32
-rw-r--r--sql-ledger/locale/cn_utf/bp59
-rw-r--r--sql-ledger/locale/cn_utf/ca52
-rw-r--r--sql-ledger/locale/cn_utf/cp83
-rw-r--r--sql-ledger/locale/cn_utf/ct167
-rw-r--r--sql-ledger/locale/cn_utf/gl133
-rw-r--r--sql-ledger/locale/cn_utf/hr104
-rw-r--r--sql-ledger/locale/cn_utf/ic265
-rw-r--r--sql-ledger/locale/cn_utf/io131
-rw-r--r--sql-ledger/locale/cn_utf/ir212
-rw-r--r--sql-ledger/locale/cn_utf/is225
-rw-r--r--sql-ledger/locale/cn_utf/login25
-rw-r--r--sql-ledger/locale/cn_utf/menu127
-rw-r--r--sql-ledger/locale/cn_utf/oe293
-rw-r--r--sql-ledger/locale/cn_utf/pe82
-rw-r--r--sql-ledger/locale/cn_utf/pos64
-rw-r--r--sql-ledger/locale/cn_utf/ps326
-rw-r--r--sql-ledger/locale/cn_utf/pw11
-rw-r--r--sql-ledger/locale/cn_utf/rc74
-rw-r--r--sql-ledger/locale/cn_utf/rp159
-rw-r--r--sql-ledger/locale/co/COPYING32
-rw-r--r--sql-ledger/locale/co/LANGUAGE1
-rw-r--r--sql-ledger/locale/co/Num2text210
-rw-r--r--sql-ledger/locale/co/admin140
-rw-r--r--sql-ledger/locale/co/all766
-rw-r--r--sql-ledger/locale/co/am249
-rw-r--r--sql-ledger/locale/co/ap169
-rw-r--r--sql-ledger/locale/co/ar170
-rw-r--r--sql-ledger/locale/co/arap30
-rw-r--r--sql-ledger/locale/co/arapprn34
-rw-r--r--sql-ledger/locale/co/bp67
-rw-r--r--sql-ledger/locale/co/ca58
-rw-r--r--sql-ledger/locale/co/cp84
-rw-r--r--sql-ledger/locale/co/ct171
-rw-r--r--sql-ledger/locale/co/gl140
-rw-r--r--sql-ledger/locale/co/hr107
-rw-r--r--sql-ledger/locale/co/ic270
-rw-r--r--sql-ledger/locale/co/io133
-rw-r--r--sql-ledger/locale/co/ir214
-rw-r--r--sql-ledger/locale/co/is229
-rw-r--r--sql-ledger/locale/co/login25
-rw-r--r--sql-ledger/locale/co/menu133
-rw-r--r--sql-ledger/locale/co/oe304
-rw-r--r--sql-ledger/locale/co/pe82
-rw-r--r--sql-ledger/locale/co/pos68
-rw-r--r--sql-ledger/locale/co/ps335
-rw-r--r--sql-ledger/locale/co/pw11
-rw-r--r--sql-ledger/locale/co/rc79
-rw-r--r--sql-ledger/locale/co/rp165
-rw-r--r--sql-ledger/locale/ct/COPYING21
-rw-r--r--sql-ledger/locale/ct/LANGUAGE1
-rw-r--r--sql-ledger/locale/ct/admin136
-rw-r--r--sql-ledger/locale/ct/all766
-rw-r--r--sql-ledger/locale/ct/am173
-rw-r--r--sql-ledger/locale/ct/ap129
-rw-r--r--sql-ledger/locale/ct/ar127
-rw-r--r--sql-ledger/locale/ct/arap25
-rw-r--r--sql-ledger/locale/ct/arapprn24
-rw-r--r--sql-ledger/locale/ct/bp39
-rw-r--r--sql-ledger/locale/ct/ca47
-rw-r--r--sql-ledger/locale/ct/cp57
-rw-r--r--sql-ledger/locale/ct/ct110
-rw-r--r--sql-ledger/locale/ct/gl106
-rw-r--r--sql-ledger/locale/ct/hr65
-rw-r--r--sql-ledger/locale/ct/ic187
-rw-r--r--sql-ledger/locale/ct/io94
-rw-r--r--sql-ledger/locale/ct/ir153
-rw-r--r--sql-ledger/locale/ct/is158
-rw-r--r--sql-ledger/locale/ct/login22
-rw-r--r--sql-ledger/locale/ct/menu59
-rw-r--r--sql-ledger/locale/ct/oe192
-rw-r--r--sql-ledger/locale/ct/pe51
-rw-r--r--sql-ledger/locale/ct/pos47
-rw-r--r--sql-ledger/locale/ct/ps215
-rw-r--r--sql-ledger/locale/ct/pw11
-rw-r--r--sql-ledger/locale/ct/rc55
-rw-r--r--sql-ledger/locale/ct/rp113
-rw-r--r--sql-ledger/locale/cz/COPYING23
-rw-r--r--sql-ledger/locale/cz/LANGUAGE1
-rw-r--r--sql-ledger/locale/cz/admin136
-rw-r--r--sql-ledger/locale/cz/all766
-rw-r--r--sql-ledger/locale/cz/am178
-rw-r--r--sql-ledger/locale/cz/ap130
-rw-r--r--sql-ledger/locale/cz/ar128
-rw-r--r--sql-ledger/locale/cz/arap25
-rw-r--r--sql-ledger/locale/cz/arapprn24
-rw-r--r--sql-ledger/locale/cz/bp39
-rw-r--r--sql-ledger/locale/cz/ca48
-rw-r--r--sql-ledger/locale/cz/cp57
-rw-r--r--sql-ledger/locale/cz/ct112
-rw-r--r--sql-ledger/locale/cz/gl107
-rw-r--r--sql-ledger/locale/cz/hr65
-rw-r--r--sql-ledger/locale/cz/ic190
-rw-r--r--sql-ledger/locale/cz/io96
-rw-r--r--sql-ledger/locale/cz/ir155
-rw-r--r--sql-ledger/locale/cz/is160
-rw-r--r--sql-ledger/locale/cz/login22
-rw-r--r--sql-ledger/locale/cz/menu61
-rw-r--r--sql-ledger/locale/cz/oe195
-rw-r--r--sql-ledger/locale/cz/pe51
-rw-r--r--sql-ledger/locale/cz/pos47
-rw-r--r--sql-ledger/locale/cz/ps222
-rw-r--r--sql-ledger/locale/cz/pw11
-rw-r--r--sql-ledger/locale/cz/rc55
-rw-r--r--sql-ledger/locale/cz/rp120
-rw-r--r--sql-ledger/locale/de/COPYING23
-rw-r--r--sql-ledger/locale/de/LANGUAGE1
-rw-r--r--sql-ledger/locale/de/Num2text185
-rw-r--r--sql-ledger/locale/de/admin139
-rw-r--r--sql-ledger/locale/de/am238
-rw-r--r--sql-ledger/locale/de/ap157
-rw-r--r--sql-ledger/locale/de/ar158
-rw-r--r--sql-ledger/locale/de/arap30
-rw-r--r--sql-ledger/locale/de/arapprn20
-rw-r--r--sql-ledger/locale/de/bp67
-rw-r--r--sql-ledger/locale/de/ca57
-rw-r--r--sql-ledger/locale/de/cp84
-rw-r--r--sql-ledger/locale/de/ct160
-rw-r--r--sql-ledger/locale/de/gl140
-rw-r--r--sql-ledger/locale/de/hr107
-rw-r--r--sql-ledger/locale/de/ic270
-rw-r--r--sql-ledger/locale/de/io133
-rw-r--r--sql-ledger/locale/de/ir214
-rw-r--r--sql-ledger/locale/de/is229
-rwxr-xr-xsql-ledger/locale/de/locales.pl299
-rw-r--r--sql-ledger/locale/de/login25
-rw-r--r--sql-ledger/locale/de/menu131
-rw-r--r--sql-ledger/locale/de/oe304
-rw-r--r--sql-ledger/locale/de/pe82
-rw-r--r--sql-ledger/locale/de/pos67
-rw-r--r--sql-ledger/locale/de/ps333
-rw-r--r--sql-ledger/locale/de/pw10
-rw-r--r--sql-ledger/locale/de/rc76
-rw-r--r--sql-ledger/locale/de/rp165
-rw-r--r--sql-ledger/locale/dk/COPYING24
-rw-r--r--sql-ledger/locale/dk/LANGUAGE1
-rw-r--r--sql-ledger/locale/dk/admin140
-rw-r--r--sql-ledger/locale/dk/all766
-rw-r--r--sql-ledger/locale/dk/am256
-rw-r--r--sql-ledger/locale/dk/ap175
-rw-r--r--sql-ledger/locale/dk/ar176
-rw-r--r--sql-ledger/locale/dk/arap30
-rw-r--r--sql-ledger/locale/dk/arapprn37
-rw-r--r--sql-ledger/locale/dk/bp67
-rw-r--r--sql-ledger/locale/dk/ca58
-rw-r--r--sql-ledger/locale/dk/cp84
-rw-r--r--sql-ledger/locale/dk/ct176
-rw-r--r--sql-ledger/locale/dk/gl142
-rw-r--r--sql-ledger/locale/dk/hr109
-rw-r--r--sql-ledger/locale/dk/ic272
-rw-r--r--sql-ledger/locale/dk/io133
-rw-r--r--sql-ledger/locale/dk/ir214
-rw-r--r--sql-ledger/locale/dk/is229
-rw-r--r--sql-ledger/locale/dk/login25
-rw-r--r--sql-ledger/locale/dk/menu133
-rw-r--r--sql-ledger/locale/dk/oe306
-rw-r--r--sql-ledger/locale/dk/pe82
-rw-r--r--sql-ledger/locale/dk/pos68
-rw-r--r--sql-ledger/locale/dk/ps341
-rw-r--r--sql-ledger/locale/dk/pw11
-rw-r--r--sql-ledger/locale/dk/rc79
-rw-r--r--sql-ledger/locale/dk/rp165
-rw-r--r--sql-ledger/locale/ec/COPYING23
-rw-r--r--sql-ledger/locale/ec/LANGUAGE1
-rw-r--r--sql-ledger/locale/ec/Num2text210
-rw-r--r--sql-ledger/locale/ec/admin140
-rw-r--r--sql-ledger/locale/ec/all766
-rw-r--r--sql-ledger/locale/ec/am249
-rw-r--r--sql-ledger/locale/ec/ap170
-rw-r--r--sql-ledger/locale/ec/ar171
-rw-r--r--sql-ledger/locale/ec/arap30
-rw-r--r--sql-ledger/locale/ec/arapprn34
-rw-r--r--sql-ledger/locale/ec/bp67
-rw-r--r--sql-ledger/locale/ec/ca58
-rw-r--r--sql-ledger/locale/ec/cp84
-rw-r--r--sql-ledger/locale/ec/ct176
-rw-r--r--sql-ledger/locale/ec/gl142
-rw-r--r--sql-ledger/locale/ec/hr108
-rw-r--r--sql-ledger/locale/ec/ic272
-rw-r--r--sql-ledger/locale/ec/io133
-rw-r--r--sql-ledger/locale/ec/ir214
-rw-r--r--sql-ledger/locale/ec/is229
-rw-r--r--sql-ledger/locale/ec/login25
-rw-r--r--sql-ledger/locale/ec/menu133
-rw-r--r--sql-ledger/locale/ec/oe306
-rw-r--r--sql-ledger/locale/ec/pe82
-rw-r--r--sql-ledger/locale/ec/pos68
-rw-r--r--sql-ledger/locale/ec/ps336
-rw-r--r--sql-ledger/locale/ec/pw11
-rw-r--r--sql-ledger/locale/ec/rc79
-rw-r--r--sql-ledger/locale/ec/rp165
-rw-r--r--sql-ledger/locale/ee/COPYING25
-rw-r--r--sql-ledger/locale/ee/LANGUAGE1
-rw-r--r--sql-ledger/locale/ee/Num2text134
-rw-r--r--sql-ledger/locale/ee/admin139
-rw-r--r--sql-ledger/locale/ee/all766
-rw-r--r--sql-ledger/locale/ee/am238
-rw-r--r--sql-ledger/locale/ee/ap168
-rw-r--r--sql-ledger/locale/ee/ar168
-rw-r--r--sql-ledger/locale/ee/arap30
-rw-r--r--sql-ledger/locale/ee/arapprn34
-rw-r--r--sql-ledger/locale/ee/bp63
-rw-r--r--sql-ledger/locale/ee/ca57
-rw-r--r--sql-ledger/locale/ee/cp82
-rw-r--r--sql-ledger/locale/ee/ct166
-rw-r--r--sql-ledger/locale/ee/gl138
-rw-r--r--sql-ledger/locale/ee/hr99
-rw-r--r--sql-ledger/locale/ee/ic260
-rw-r--r--sql-ledger/locale/ee/io130
-rw-r--r--sql-ledger/locale/ee/ir211
-rw-r--r--sql-ledger/locale/ee/is224
-rw-r--r--sql-ledger/locale/ee/login25
-rw-r--r--sql-ledger/locale/ee/menu123
-rw-r--r--sql-ledger/locale/ee/oe293
-rw-r--r--sql-ledger/locale/ee/pe81
-rw-r--r--sql-ledger/locale/ee/pos68
-rw-r--r--sql-ledger/locale/ee/ps327
-rw-r--r--sql-ledger/locale/ee/pw11
-rw-r--r--sql-ledger/locale/ee/rc74
-rw-r--r--sql-ledger/locale/ee/rp163
-rw-r--r--sql-ledger/locale/eg/COPYING28
-rw-r--r--sql-ledger/locale/eg/LANGUAGE1
-rw-r--r--sql-ledger/locale/eg/admin107
-rw-r--r--sql-ledger/locale/eg/all766
-rw-r--r--sql-ledger/locale/eg/am195
-rw-r--r--sql-ledger/locale/eg/ap157
-rw-r--r--sql-ledger/locale/eg/ar158
-rw-r--r--sql-ledger/locale/eg/arap30
-rw-r--r--sql-ledger/locale/eg/arapprn27
-rw-r--r--sql-ledger/locale/eg/bp52
-rw-r--r--sql-ledger/locale/eg/ca52
-rw-r--r--sql-ledger/locale/eg/cp76
-rw-r--r--sql-ledger/locale/eg/ct162
-rw-r--r--sql-ledger/locale/eg/gl130
-rw-r--r--sql-ledger/locale/eg/hr81
-rw-r--r--sql-ledger/locale/eg/ic236
-rw-r--r--sql-ledger/locale/eg/io117
-rw-r--r--sql-ledger/locale/eg/ir196
-rw-r--r--sql-ledger/locale/eg/is206
-rw-r--r--sql-ledger/locale/eg/login23
-rw-r--r--sql-ledger/locale/eg/menu118
-rw-r--r--sql-ledger/locale/eg/oe254
-rw-r--r--sql-ledger/locale/eg/pe71
-rw-r--r--sql-ledger/locale/eg/pos63
-rw-r--r--sql-ledger/locale/eg/ps305
-rw-r--r--sql-ledger/locale/eg/pw11
-rw-r--r--sql-ledger/locale/eg/rc73
-rw-r--r--sql-ledger/locale/eg/rp155
-rw-r--r--sql-ledger/locale/en_GB/COPYING23
-rw-r--r--sql-ledger/locale/en_GB/LANGUAGE1
-rw-r--r--sql-ledger/locale/en_GB/admin113
-rw-r--r--sql-ledger/locale/en_GB/all766
-rw-r--r--sql-ledger/locale/en_GB/am94
-rw-r--r--sql-ledger/locale/en_GB/ap67
-rw-r--r--sql-ledger/locale/en_GB/ar65
-rw-r--r--sql-ledger/locale/en_GB/arap23
-rw-r--r--sql-ledger/locale/en_GB/arapprn19
-rw-r--r--sql-ledger/locale/en_GB/bp26
-rw-r--r--sql-ledger/locale/en_GB/ca12
-rw-r--r--sql-ledger/locale/en_GB/cp44
-rw-r--r--sql-ledger/locale/en_GB/ct81
-rw-r--r--sql-ledger/locale/en_GB/gl54
-rw-r--r--sql-ledger/locale/en_GB/hr45
-rw-r--r--sql-ledger/locale/en_GB/ic82
-rw-r--r--sql-ledger/locale/en_GB/io33
-rw-r--r--sql-ledger/locale/en_GB/ir72
-rw-r--r--sql-ledger/locale/en_GB/is76
-rw-r--r--sql-ledger/locale/en_GB/login12
-rw-r--r--sql-ledger/locale/en_GB/menu24
-rw-r--r--sql-ledger/locale/en_GB/oe107
-rw-r--r--sql-ledger/locale/en_GB/pe42
-rw-r--r--sql-ledger/locale/en_GB/pos26
-rw-r--r--sql-ledger/locale/en_GB/ps112
-rw-r--r--sql-ledger/locale/en_GB/pw9
-rw-r--r--sql-ledger/locale/en_GB/rc22
-rw-r--r--sql-ledger/locale/en_GB/rp54
-rw-r--r--sql-ledger/locale/es_iso/COPYING26
-rw-r--r--sql-ledger/locale/es_iso/LANGUAGE1
-rw-r--r--sql-ledger/locale/es_iso/Num2text211
-rw-r--r--sql-ledger/locale/es_iso/admin141
-rw-r--r--sql-ledger/locale/es_iso/all768
-rw-r--r--sql-ledger/locale/es_iso/am249
-rw-r--r--sql-ledger/locale/es_iso/ap163
-rw-r--r--sql-ledger/locale/es_iso/ar164
-rw-r--r--sql-ledger/locale/es_iso/arap30
-rw-r--r--sql-ledger/locale/es_iso/arapprn33
-rw-r--r--sql-ledger/locale/es_iso/bp63
-rw-r--r--sql-ledger/locale/es_iso/ca54
-rw-r--r--sql-ledger/locale/es_iso/cp84
-rw-r--r--sql-ledger/locale/es_iso/ct171
-rw-r--r--sql-ledger/locale/es_iso/gl136
-rw-r--r--sql-ledger/locale/es_iso/hr107
-rw-r--r--sql-ledger/locale/es_iso/ic269
-rw-r--r--sql-ledger/locale/es_iso/io132
-rw-r--r--sql-ledger/locale/es_iso/ir213
-rw-r--r--sql-ledger/locale/es_iso/is226
-rw-r--r--sql-ledger/locale/es_iso/login25
-rw-r--r--sql-ledger/locale/es_iso/menu133
-rw-r--r--sql-ledger/locale/es_iso/oe298
-rw-r--r--sql-ledger/locale/es_iso/pe82
-rw-r--r--sql-ledger/locale/es_iso/pos64
-rw-r--r--sql-ledger/locale/es_iso/ps328
-rw-r--r--sql-ledger/locale/es_iso/pw11
-rw-r--r--sql-ledger/locale/es_iso/rc75
-rw-r--r--sql-ledger/locale/es_iso/rp161
-rw-r--r--sql-ledger/locale/es_utf/COPYING26
-rw-r--r--sql-ledger/locale/es_utf/LANGUAGE1
-rw-r--r--sql-ledger/locale/es_utf/Num2text211
-rw-r--r--sql-ledger/locale/es_utf/admin138
-rw-r--r--sql-ledger/locale/es_utf/all768
-rw-r--r--sql-ledger/locale/es_utf/am190
-rw-r--r--sql-ledger/locale/es_utf/ap154
-rw-r--r--sql-ledger/locale/es_utf/ar152
-rw-r--r--sql-ledger/locale/es_utf/arap30
-rw-r--r--sql-ledger/locale/es_utf/arapprn27
-rw-r--r--sql-ledger/locale/es_utf/bp44
-rw-r--r--sql-ledger/locale/es_utf/ca51
-rw-r--r--sql-ledger/locale/es_utf/cp73
-rw-r--r--sql-ledger/locale/es_utf/ct128
-rw-r--r--sql-ledger/locale/es_utf/gl127
-rw-r--r--sql-ledger/locale/es_utf/hr69
-rw-r--r--sql-ledger/locale/es_utf/ic215
-rw-r--r--sql-ledger/locale/es_utf/io102
-rw-r--r--sql-ledger/locale/es_utf/ir179
-rw-r--r--sql-ledger/locale/es_utf/is188
-rw-r--r--sql-ledger/locale/es_utf/login21
-rw-r--r--sql-ledger/locale/es_utf/menu79
-rw-r--r--sql-ledger/locale/es_utf/oe225
-rw-r--r--sql-ledger/locale/es_utf/pe59
-rw-r--r--sql-ledger/locale/es_utf/pos56
-rw-r--r--sql-ledger/locale/es_utf/ps272
-rw-r--r--sql-ledger/locale/es_utf/pw11
-rw-r--r--sql-ledger/locale/es_utf/rc65
-rw-r--r--sql-ledger/locale/es_utf/rp142
-rw-r--r--sql-ledger/locale/fi/COPYING23
-rw-r--r--sql-ledger/locale/fi/LANGUAGE1
-rw-r--r--sql-ledger/locale/fi/admin138
-rw-r--r--sql-ledger/locale/fi/all768
-rw-r--r--sql-ledger/locale/fi/am192
-rw-r--r--sql-ledger/locale/fi/ap156
-rw-r--r--sql-ledger/locale/fi/ar154
-rw-r--r--sql-ledger/locale/fi/arap30
-rw-r--r--sql-ledger/locale/fi/arapprn29
-rw-r--r--sql-ledger/locale/fi/bp44
-rw-r--r--sql-ledger/locale/fi/ca51
-rw-r--r--sql-ledger/locale/fi/cp75
-rw-r--r--sql-ledger/locale/fi/ct132
-rw-r--r--sql-ledger/locale/fi/gl127
-rw-r--r--sql-ledger/locale/fi/hr69
-rw-r--r--sql-ledger/locale/fi/ic221
-rw-r--r--sql-ledger/locale/fi/io107
-rw-r--r--sql-ledger/locale/fi/ir184
-rw-r--r--sql-ledger/locale/fi/is193
-rw-r--r--sql-ledger/locale/fi/login22
-rw-r--r--sql-ledger/locale/fi/menu79
-rw-r--r--sql-ledger/locale/fi/oe232
-rw-r--r--sql-ledger/locale/fi/pe59
-rw-r--r--sql-ledger/locale/fi/pos56
-rw-r--r--sql-ledger/locale/fi/ps277
-rw-r--r--sql-ledger/locale/fi/pw11
-rw-r--r--sql-ledger/locale/fi/rc65
-rw-r--r--sql-ledger/locale/fi/rp146
-rw-r--r--sql-ledger/locale/fr/COPYING28
-rw-r--r--sql-ledger/locale/fr/LANGUAGE1
-rw-r--r--sql-ledger/locale/fr/Num2text198
-rw-r--r--sql-ledger/locale/fr/admin140
-rw-r--r--sql-ledger/locale/fr/all766
-rw-r--r--sql-ledger/locale/fr/am256
-rw-r--r--sql-ledger/locale/fr/ap175
-rw-r--r--sql-ledger/locale/fr/ar176
-rw-r--r--sql-ledger/locale/fr/arap30
-rw-r--r--sql-ledger/locale/fr/arapprn37
-rw-r--r--sql-ledger/locale/fr/bp67
-rw-r--r--sql-ledger/locale/fr/ca58
-rw-r--r--sql-ledger/locale/fr/cp84
-rw-r--r--sql-ledger/locale/fr/ct176
-rw-r--r--sql-ledger/locale/fr/gl142
-rw-r--r--sql-ledger/locale/fr/hr109
-rw-r--r--sql-ledger/locale/fr/ic272
-rw-r--r--sql-ledger/locale/fr/io133
-rw-r--r--sql-ledger/locale/fr/ir214
-rw-r--r--sql-ledger/locale/fr/is229
-rw-r--r--sql-ledger/locale/fr/login25
-rw-r--r--sql-ledger/locale/fr/menu133
-rw-r--r--sql-ledger/locale/fr/oe306
-rw-r--r--sql-ledger/locale/fr/pe82
-rw-r--r--sql-ledger/locale/fr/pos68
-rw-r--r--sql-ledger/locale/fr/ps341
-rw-r--r--sql-ledger/locale/fr/pw11
-rw-r--r--sql-ledger/locale/fr/rc79
-rw-r--r--sql-ledger/locale/fr/rp165
-rw-r--r--sql-ledger/locale/gr/COPYING23
-rw-r--r--sql-ledger/locale/gr/LANGUAGE1
-rw-r--r--sql-ledger/locale/gr/admin129
-rw-r--r--sql-ledger/locale/gr/all766
-rw-r--r--sql-ledger/locale/gr/am170
-rw-r--r--sql-ledger/locale/gr/ap132
-rw-r--r--sql-ledger/locale/gr/ar129
-rw-r--r--sql-ledger/locale/gr/arap27
-rw-r--r--sql-ledger/locale/gr/arapprn29
-rw-r--r--sql-ledger/locale/gr/bp42
-rw-r--r--sql-ledger/locale/gr/ca47
-rw-r--r--sql-ledger/locale/gr/cp67
-rw-r--r--sql-ledger/locale/gr/ct121
-rw-r--r--sql-ledger/locale/gr/gl105
-rw-r--r--sql-ledger/locale/gr/hr83
-rw-r--r--sql-ledger/locale/gr/ic168
-rw-r--r--sql-ledger/locale/gr/io81
-rw-r--r--sql-ledger/locale/gr/ir140
-rw-r--r--sql-ledger/locale/gr/is149
-rw-r--r--sql-ledger/locale/gr/login17
-rw-r--r--sql-ledger/locale/gr/menu64
-rw-r--r--sql-ledger/locale/gr/oe193
-rw-r--r--sql-ledger/locale/gr/pe58
-rw-r--r--sql-ledger/locale/gr/pos48
-rw-r--r--sql-ledger/locale/gr/ps218
-rw-r--r--sql-ledger/locale/gr/pw10
-rw-r--r--sql-ledger/locale/gr/rc63
-rw-r--r--sql-ledger/locale/gr/rp116
-rw-r--r--sql-ledger/locale/hu/COPYING23
-rw-r--r--sql-ledger/locale/hu/LANGUAGE1
-rw-r--r--sql-ledger/locale/hu/Num2text232
-rw-r--r--sql-ledger/locale/hu/admin137
-rw-r--r--sql-ledger/locale/hu/all766
-rw-r--r--sql-ledger/locale/hu/am195
-rw-r--r--sql-ledger/locale/hu/ap155
-rw-r--r--sql-ledger/locale/hu/ar155
-rw-r--r--sql-ledger/locale/hu/arap28
-rw-r--r--sql-ledger/locale/hu/arapprn29
-rw-r--r--sql-ledger/locale/hu/bp45
-rw-r--r--sql-ledger/locale/hu/ca53
-rw-r--r--sql-ledger/locale/hu/cp73
-rw-r--r--sql-ledger/locale/hu/ct135
-rw-r--r--sql-ledger/locale/hu/gl130
-rw-r--r--sql-ledger/locale/hu/hr70
-rw-r--r--sql-ledger/locale/hu/ic225
-rw-r--r--sql-ledger/locale/hu/io109
-rw-r--r--sql-ledger/locale/hu/ir184
-rw-r--r--sql-ledger/locale/hu/is194
-rw-r--r--sql-ledger/locale/hu/login24
-rw-r--r--sql-ledger/locale/hu/menu85
-rw-r--r--sql-ledger/locale/hu/oe234
-rw-r--r--sql-ledger/locale/hu/pe67
-rw-r--r--sql-ledger/locale/hu/pos61
-rw-r--r--sql-ledger/locale/hu/ps286
-rw-r--r--sql-ledger/locale/hu/pw11
-rw-r--r--sql-ledger/locale/hu/rc71
-rw-r--r--sql-ledger/locale/hu/rp148
-rw-r--r--sql-ledger/locale/is/COPYING23
-rw-r--r--sql-ledger/locale/is/LANGUAGE1
-rw-r--r--sql-ledger/locale/is/admin137
-rw-r--r--sql-ledger/locale/is/all766
-rw-r--r--sql-ledger/locale/is/am191
-rw-r--r--sql-ledger/locale/is/ap156
-rw-r--r--sql-ledger/locale/is/ar154
-rw-r--r--sql-ledger/locale/is/arap30
-rw-r--r--sql-ledger/locale/is/arapprn29
-rw-r--r--sql-ledger/locale/is/bp44
-rw-r--r--sql-ledger/locale/is/ca51
-rw-r--r--sql-ledger/locale/is/cp75
-rw-r--r--sql-ledger/locale/is/ct132
-rw-r--r--sql-ledger/locale/is/gl127
-rw-r--r--sql-ledger/locale/is/hr69
-rw-r--r--sql-ledger/locale/is/ic220
-rw-r--r--sql-ledger/locale/is/io107
-rw-r--r--sql-ledger/locale/is/ir184
-rw-r--r--sql-ledger/locale/is/is193
-rw-r--r--sql-ledger/locale/is/login22
-rw-r--r--sql-ledger/locale/is/menu79
-rw-r--r--sql-ledger/locale/is/oe232
-rw-r--r--sql-ledger/locale/is/pe59
-rw-r--r--sql-ledger/locale/is/pos56
-rw-r--r--sql-ledger/locale/is/ps276
-rw-r--r--sql-ledger/locale/is/pw11
-rw-r--r--sql-ledger/locale/is/rc65
-rw-r--r--sql-ledger/locale/is/rp145
-rw-r--r--sql-ledger/locale/it/COPYING26
-rw-r--r--sql-ledger/locale/it/LANGUAGE1
-rw-r--r--sql-ledger/locale/it/Num2text162
-rw-r--r--sql-ledger/locale/it/admin137
-rw-r--r--sql-ledger/locale/it/all766
-rw-r--r--sql-ledger/locale/it/am191
-rw-r--r--sql-ledger/locale/it/ap156
-rw-r--r--sql-ledger/locale/it/ar155
-rw-r--r--sql-ledger/locale/it/arap30
-rw-r--r--sql-ledger/locale/it/arapprn29
-rw-r--r--sql-ledger/locale/it/bp44
-rw-r--r--sql-ledger/locale/it/ca52
-rw-r--r--sql-ledger/locale/it/cp75
-rw-r--r--sql-ledger/locale/it/ct135
-rw-r--r--sql-ledger/locale/it/gl127
-rw-r--r--sql-ledger/locale/it/hr69
-rw-r--r--sql-ledger/locale/it/ic224
-rw-r--r--sql-ledger/locale/it/io109
-rw-r--r--sql-ledger/locale/it/ir186
-rw-r--r--sql-ledger/locale/it/is196
-rw-r--r--sql-ledger/locale/it/login22
-rw-r--r--sql-ledger/locale/it/menu81
-rw-r--r--sql-ledger/locale/it/oe235
-rw-r--r--sql-ledger/locale/it/pe67
-rw-r--r--sql-ledger/locale/it/pos57
-rw-r--r--sql-ledger/locale/it/ps281
-rw-r--r--sql-ledger/locale/it/pw11
-rw-r--r--sql-ledger/locale/it/qe199
-rw-r--r--sql-ledger/locale/it/rc65
-rw-r--r--sql-ledger/locale/it/rp148
-rw-r--r--sql-ledger/locale/lt/COPYING23
-rw-r--r--sql-ledger/locale/lt/LANGUAGE1
-rw-r--r--sql-ledger/locale/lt/admin137
-rw-r--r--sql-ledger/locale/lt/all766
-rw-r--r--sql-ledger/locale/lt/am191
-rw-r--r--sql-ledger/locale/lt/ap156
-rw-r--r--sql-ledger/locale/lt/ar154
-rw-r--r--sql-ledger/locale/lt/arap30
-rw-r--r--sql-ledger/locale/lt/arapprn29
-rw-r--r--sql-ledger/locale/lt/bp44
-rw-r--r--sql-ledger/locale/lt/ca51
-rw-r--r--sql-ledger/locale/lt/cp75
-rw-r--r--sql-ledger/locale/lt/ct131
-rw-r--r--sql-ledger/locale/lt/gl127
-rw-r--r--sql-ledger/locale/lt/hr69
-rw-r--r--sql-ledger/locale/lt/ic220
-rw-r--r--sql-ledger/locale/lt/io107
-rw-r--r--sql-ledger/locale/lt/ir182
-rw-r--r--sql-ledger/locale/lt/is193
-rw-r--r--sql-ledger/locale/lt/login22
-rw-r--r--sql-ledger/locale/lt/menu78
-rw-r--r--sql-ledger/locale/lt/oe230
-rw-r--r--sql-ledger/locale/lt/pe59
-rw-r--r--sql-ledger/locale/lt/pos56
-rw-r--r--sql-ledger/locale/lt/ps277
-rw-r--r--sql-ledger/locale/lt/pw11
-rw-r--r--sql-ledger/locale/lt/rc65
-rw-r--r--sql-ledger/locale/lt/rp146
-rw-r--r--sql-ledger/locale/lv/COPYING23
-rw-r--r--sql-ledger/locale/lv/LANGUAGE1
-rw-r--r--sql-ledger/locale/lv/admin140
-rw-r--r--sql-ledger/locale/lv/all766
-rw-r--r--sql-ledger/locale/lv/am247
-rw-r--r--sql-ledger/locale/lv/ap163
-rw-r--r--sql-ledger/locale/lv/ar164
-rw-r--r--sql-ledger/locale/lv/arap30
-rw-r--r--sql-ledger/locale/lv/arapprn33
-rw-r--r--sql-ledger/locale/lv/bp60
-rw-r--r--sql-ledger/locale/lv/ca54
-rw-r--r--sql-ledger/locale/lv/cp84
-rw-r--r--sql-ledger/locale/lv/ct171
-rw-r--r--sql-ledger/locale/lv/gl136
-rw-r--r--sql-ledger/locale/lv/hr107
-rw-r--r--sql-ledger/locale/lv/ic269
-rw-r--r--sql-ledger/locale/lv/io132
-rw-r--r--sql-ledger/locale/lv/ir213
-rw-r--r--sql-ledger/locale/lv/is226
-rw-r--r--sql-ledger/locale/lv/login25
-rw-r--r--sql-ledger/locale/lv/menu130
-rw-r--r--sql-ledger/locale/lv/oe297
-rw-r--r--sql-ledger/locale/lv/pe82
-rw-r--r--sql-ledger/locale/lv/pos64
-rw-r--r--sql-ledger/locale/lv/ps328
-rw-r--r--sql-ledger/locale/lv/pw11
-rw-r--r--sql-ledger/locale/lv/rc75
-rw-r--r--sql-ledger/locale/lv/rp161
-rw-r--r--sql-ledger/locale/mx/COPYING23
-rw-r--r--sql-ledger/locale/mx/LANGUAGE1
-rw-r--r--sql-ledger/locale/mx/admin140
-rw-r--r--sql-ledger/locale/mx/all766
-rw-r--r--sql-ledger/locale/mx/am249
-rw-r--r--sql-ledger/locale/mx/ap163
-rw-r--r--sql-ledger/locale/mx/ar164
-rw-r--r--sql-ledger/locale/mx/arap30
-rw-r--r--sql-ledger/locale/mx/arapprn33
-rw-r--r--sql-ledger/locale/mx/bp60
-rw-r--r--sql-ledger/locale/mx/ca54
-rw-r--r--sql-ledger/locale/mx/cp84
-rw-r--r--sql-ledger/locale/mx/ct171
-rw-r--r--sql-ledger/locale/mx/gl136
-rw-r--r--sql-ledger/locale/mx/hr107
-rw-r--r--sql-ledger/locale/mx/ic269
-rw-r--r--sql-ledger/locale/mx/io132
-rw-r--r--sql-ledger/locale/mx/ir213
-rw-r--r--sql-ledger/locale/mx/is226
-rw-r--r--sql-ledger/locale/mx/login25
-rw-r--r--sql-ledger/locale/mx/menu130
-rw-r--r--sql-ledger/locale/mx/oe297
-rw-r--r--sql-ledger/locale/mx/pe82
-rw-r--r--sql-ledger/locale/mx/pos64
-rw-r--r--sql-ledger/locale/mx/ps328
-rw-r--r--sql-ledger/locale/mx/pw11
-rw-r--r--sql-ledger/locale/mx/rc75
-rw-r--r--sql-ledger/locale/mx/rp161
-rw-r--r--sql-ledger/locale/nb/COPYING27
-rw-r--r--sql-ledger/locale/nb/LANGUAGE1
-rw-r--r--sql-ledger/locale/nb/admin140
-rw-r--r--sql-ledger/locale/nb/all766
-rw-r--r--sql-ledger/locale/nb/am245
-rw-r--r--sql-ledger/locale/nb/ap169
-rw-r--r--sql-ledger/locale/nb/ar170
-rw-r--r--sql-ledger/locale/nb/arap30
-rw-r--r--sql-ledger/locale/nb/arapprn34
-rw-r--r--sql-ledger/locale/nb/bp67
-rw-r--r--sql-ledger/locale/nb/ca58
-rw-r--r--sql-ledger/locale/nb/cp84
-rw-r--r--sql-ledger/locale/nb/ct165
-rw-r--r--sql-ledger/locale/nb/gl140
-rw-r--r--sql-ledger/locale/nb/hr105
-rw-r--r--sql-ledger/locale/nb/ic268
-rw-r--r--sql-ledger/locale/nb/io132
-rw-r--r--sql-ledger/locale/nb/ir213
-rw-r--r--sql-ledger/locale/nb/is228
-rw-r--r--sql-ledger/locale/nb/login25
-rw-r--r--sql-ledger/locale/nb/menu132
-rw-r--r--sql-ledger/locale/nb/oe303
-rw-r--r--sql-ledger/locale/nb/pe82
-rw-r--r--sql-ledger/locale/nb/pos68
-rw-r--r--sql-ledger/locale/nb/ps334
-rw-r--r--sql-ledger/locale/nb/pw11
-rw-r--r--sql-ledger/locale/nb/rc78
-rw-r--r--sql-ledger/locale/nb/rp165
-rw-r--r--sql-ledger/locale/nl/COPYING26
-rw-r--r--sql-ledger/locale/nl/LANGUAGE1
-rw-r--r--sql-ledger/locale/nl/Num2text161
-rw-r--r--sql-ledger/locale/nl/admin140
-rw-r--r--sql-ledger/locale/nl/all766
-rw-r--r--sql-ledger/locale/nl/am256
-rw-r--r--sql-ledger/locale/nl/ap175
-rw-r--r--sql-ledger/locale/nl/ar176
-rw-r--r--sql-ledger/locale/nl/arap30
-rw-r--r--sql-ledger/locale/nl/arapprn37
-rw-r--r--sql-ledger/locale/nl/bp67
-rw-r--r--sql-ledger/locale/nl/ca58
-rw-r--r--sql-ledger/locale/nl/cp84
-rw-r--r--sql-ledger/locale/nl/ct176
-rw-r--r--sql-ledger/locale/nl/gl142
-rw-r--r--sql-ledger/locale/nl/hr109
-rw-r--r--sql-ledger/locale/nl/ic272
-rw-r--r--sql-ledger/locale/nl/io133
-rw-r--r--sql-ledger/locale/nl/ir214
-rw-r--r--sql-ledger/locale/nl/is229
-rw-r--r--sql-ledger/locale/nl/login25
-rw-r--r--sql-ledger/locale/nl/menu133
-rw-r--r--sql-ledger/locale/nl/oe306
-rw-r--r--sql-ledger/locale/nl/pe82
-rw-r--r--sql-ledger/locale/nl/pos68
-rw-r--r--sql-ledger/locale/nl/ps341
-rw-r--r--sql-ledger/locale/nl/pw11
-rw-r--r--sql-ledger/locale/nl/rc79
-rw-r--r--sql-ledger/locale/nl/rp165
-rw-r--r--sql-ledger/locale/pa/COPYING23
-rw-r--r--sql-ledger/locale/pa/LANGUAGE1
-rw-r--r--sql-ledger/locale/pa/admin141
-rw-r--r--sql-ledger/locale/pa/all772
-rw-r--r--sql-ledger/locale/pa/am177
-rw-r--r--sql-ledger/locale/pa/ap133
-rw-r--r--sql-ledger/locale/pa/ar131
-rw-r--r--sql-ledger/locale/pa/arap25
-rw-r--r--sql-ledger/locale/pa/arapprn24
-rw-r--r--sql-ledger/locale/pa/bp39
-rw-r--r--sql-ledger/locale/pa/ca48
-rw-r--r--sql-ledger/locale/pa/cp58
-rw-r--r--sql-ledger/locale/pa/ct112
-rw-r--r--sql-ledger/locale/pa/gl107
-rw-r--r--sql-ledger/locale/pa/hr65
-rw-r--r--sql-ledger/locale/pa/ic190
-rw-r--r--sql-ledger/locale/pa/io96
-rw-r--r--sql-ledger/locale/pa/ir159
-rw-r--r--sql-ledger/locale/pa/is164
-rw-r--r--sql-ledger/locale/pa/login22
-rw-r--r--sql-ledger/locale/pa/menu61
-rw-r--r--sql-ledger/locale/pa/oe197
-rw-r--r--sql-ledger/locale/pa/pe51
-rw-r--r--sql-ledger/locale/pa/pos48
-rw-r--r--sql-ledger/locale/pa/ps226
-rw-r--r--sql-ledger/locale/pa/pw11
-rw-r--r--sql-ledger/locale/pa/rc55
-rw-r--r--sql-ledger/locale/pa/rp120
-rw-r--r--sql-ledger/locale/pl/COPYING23
-rw-r--r--sql-ledger/locale/pl/LANGUAGE1
-rw-r--r--sql-ledger/locale/pl/admin140
-rw-r--r--sql-ledger/locale/pl/all766
-rw-r--r--sql-ledger/locale/pl/am256
-rw-r--r--sql-ledger/locale/pl/ap175
-rw-r--r--sql-ledger/locale/pl/ar176
-rw-r--r--sql-ledger/locale/pl/arap30
-rw-r--r--sql-ledger/locale/pl/arapprn37
-rw-r--r--sql-ledger/locale/pl/bp67
-rw-r--r--sql-ledger/locale/pl/ca58
-rw-r--r--sql-ledger/locale/pl/cp84
-rw-r--r--sql-ledger/locale/pl/ct176
-rw-r--r--sql-ledger/locale/pl/gl142
-rw-r--r--sql-ledger/locale/pl/hr109
-rw-r--r--sql-ledger/locale/pl/ic272
-rw-r--r--sql-ledger/locale/pl/io133
-rw-r--r--sql-ledger/locale/pl/ir214
-rw-r--r--sql-ledger/locale/pl/is229
-rw-r--r--sql-ledger/locale/pl/login25
-rw-r--r--sql-ledger/locale/pl/menu133
-rw-r--r--sql-ledger/locale/pl/oe306
-rw-r--r--sql-ledger/locale/pl/pe82
-rw-r--r--sql-ledger/locale/pl/pos68
-rw-r--r--sql-ledger/locale/pl/ps341
-rw-r--r--sql-ledger/locale/pl/pw11
-rw-r--r--sql-ledger/locale/pl/rc79
-rw-r--r--sql-ledger/locale/pl/rp165
-rw-r--r--sql-ledger/locale/pt/COPYING23
-rw-r--r--sql-ledger/locale/pt/LANGUAGE1
-rw-r--r--sql-ledger/locale/pt/admin136
-rw-r--r--sql-ledger/locale/pt/all766
-rw-r--r--sql-ledger/locale/pt/am190
-rw-r--r--sql-ledger/locale/pt/ap155
-rw-r--r--sql-ledger/locale/pt/ar153
-rw-r--r--sql-ledger/locale/pt/arap30
-rw-r--r--sql-ledger/locale/pt/arapprn29
-rw-r--r--sql-ledger/locale/pt/bp43
-rw-r--r--sql-ledger/locale/pt/ca50
-rw-r--r--sql-ledger/locale/pt/cp75
-rw-r--r--sql-ledger/locale/pt/ct130
-rw-r--r--sql-ledger/locale/pt/gl126
-rw-r--r--sql-ledger/locale/pt/hr69
-rw-r--r--sql-ledger/locale/pt/ic216
-rw-r--r--sql-ledger/locale/pt/io105
-rw-r--r--sql-ledger/locale/pt/ir182
-rw-r--r--sql-ledger/locale/pt/is191
-rw-r--r--sql-ledger/locale/pt/login22
-rw-r--r--sql-ledger/locale/pt/menu78
-rw-r--r--sql-ledger/locale/pt/oe227
-rw-r--r--sql-ledger/locale/pt/pe59
-rw-r--r--sql-ledger/locale/pt/pos54
-rw-r--r--sql-ledger/locale/pt/ps269
-rw-r--r--sql-ledger/locale/pt/pw11
-rw-r--r--sql-ledger/locale/pt/rc62
-rw-r--r--sql-ledger/locale/pt/rp140
-rw-r--r--sql-ledger/locale/ru/COPYING23
-rw-r--r--sql-ledger/locale/ru/LANGUAGE1
-rw-r--r--sql-ledger/locale/ru/admin136
-rw-r--r--sql-ledger/locale/ru/all766
-rw-r--r--sql-ledger/locale/ru/am177
-rw-r--r--sql-ledger/locale/ru/ap133
-rw-r--r--sql-ledger/locale/ru/ar131
-rw-r--r--sql-ledger/locale/ru/arap25
-rw-r--r--sql-ledger/locale/ru/arapprn24
-rw-r--r--sql-ledger/locale/ru/bp39
-rw-r--r--sql-ledger/locale/ru/ca48
-rw-r--r--sql-ledger/locale/ru/cp58
-rw-r--r--sql-ledger/locale/ru/ct112
-rw-r--r--sql-ledger/locale/ru/gl107
-rw-r--r--sql-ledger/locale/ru/hr65
-rw-r--r--sql-ledger/locale/ru/ic190
-rw-r--r--sql-ledger/locale/ru/io96
-rw-r--r--sql-ledger/locale/ru/ir159
-rw-r--r--sql-ledger/locale/ru/is164
-rw-r--r--sql-ledger/locale/ru/login22
-rw-r--r--sql-ledger/locale/ru/menu61
-rw-r--r--sql-ledger/locale/ru/oe196
-rw-r--r--sql-ledger/locale/ru/pe51
-rw-r--r--sql-ledger/locale/ru/pos48
-rw-r--r--sql-ledger/locale/ru/ps226
-rw-r--r--sql-ledger/locale/ru/pw11
-rw-r--r--sql-ledger/locale/ru/rc55
-rw-r--r--sql-ledger/locale/ru/rp120
-rw-r--r--sql-ledger/locale/se/COPYING24
-rw-r--r--sql-ledger/locale/se/LANGUAGE1
-rw-r--r--sql-ledger/locale/se/admin137
-rw-r--r--sql-ledger/locale/se/all766
-rw-r--r--sql-ledger/locale/se/am191
-rw-r--r--sql-ledger/locale/se/ap156
-rw-r--r--sql-ledger/locale/se/ar154
-rw-r--r--sql-ledger/locale/se/arap30
-rw-r--r--sql-ledger/locale/se/arapprn29
-rw-r--r--sql-ledger/locale/se/bp44
-rw-r--r--sql-ledger/locale/se/ca51
-rw-r--r--sql-ledger/locale/se/cp75
-rw-r--r--sql-ledger/locale/se/ct132
-rw-r--r--sql-ledger/locale/se/gl127
-rw-r--r--sql-ledger/locale/se/hr69
-rw-r--r--sql-ledger/locale/se/ic221
-rw-r--r--sql-ledger/locale/se/io107
-rw-r--r--sql-ledger/locale/se/ir184
-rw-r--r--sql-ledger/locale/se/is193
-rw-r--r--sql-ledger/locale/se/login22
-rw-r--r--sql-ledger/locale/se/menu79
-rw-r--r--sql-ledger/locale/se/oe232
-rw-r--r--sql-ledger/locale/se/pe59
-rw-r--r--sql-ledger/locale/se/pos56
-rw-r--r--sql-ledger/locale/se/ps277
-rw-r--r--sql-ledger/locale/se/pw11
-rw-r--r--sql-ledger/locale/se/rc65
-rw-r--r--sql-ledger/locale/se/rp146
-rw-r--r--sql-ledger/locale/sv/COPYING23
-rw-r--r--sql-ledger/locale/sv/LANGUAGE1
-rw-r--r--sql-ledger/locale/sv/admin140
-rw-r--r--sql-ledger/locale/sv/all772
-rw-r--r--sql-ledger/locale/sv/am192
-rw-r--r--sql-ledger/locale/sv/ap155
-rw-r--r--sql-ledger/locale/sv/ar155
-rw-r--r--sql-ledger/locale/sv/arap28
-rw-r--r--sql-ledger/locale/sv/arapprn29
-rw-r--r--sql-ledger/locale/sv/bp46
-rw-r--r--sql-ledger/locale/sv/ca53
-rw-r--r--sql-ledger/locale/sv/cp73
-rw-r--r--sql-ledger/locale/sv/ct138
-rw-r--r--sql-ledger/locale/sv/gl130
-rw-r--r--sql-ledger/locale/sv/hr70
-rw-r--r--sql-ledger/locale/sv/ic227
-rw-r--r--sql-ledger/locale/sv/io109
-rw-r--r--sql-ledger/locale/sv/ir183
-rw-r--r--sql-ledger/locale/sv/is194
-rw-r--r--sql-ledger/locale/sv/login24
-rw-r--r--sql-ledger/locale/sv/menu89
-rw-r--r--sql-ledger/locale/sv/oe234
-rw-r--r--sql-ledger/locale/sv/pe66
-rw-r--r--sql-ledger/locale/sv/pos60
-rw-r--r--sql-ledger/locale/sv/ps287
-rw-r--r--sql-ledger/locale/sv/pw11
-rw-r--r--sql-ledger/locale/sv/rc73
-rw-r--r--sql-ledger/locale/sv/rp149
-rw-r--r--sql-ledger/locale/tr/COPYING23
-rw-r--r--sql-ledger/locale/tr/LANGUAGE1
-rw-r--r--sql-ledger/locale/tr/admin135
-rw-r--r--sql-ledger/locale/tr/all766
-rw-r--r--sql-ledger/locale/tr/am166
-rw-r--r--sql-ledger/locale/tr/ap123
-rw-r--r--sql-ledger/locale/tr/ar121
-rw-r--r--sql-ledger/locale/tr/arap25
-rw-r--r--sql-ledger/locale/tr/arapprn23
-rw-r--r--sql-ledger/locale/tr/bp39
-rw-r--r--sql-ledger/locale/tr/ca47
-rw-r--r--sql-ledger/locale/tr/cp56
-rw-r--r--sql-ledger/locale/tr/ct106
-rw-r--r--sql-ledger/locale/tr/gl104
-rw-r--r--sql-ledger/locale/tr/hr63
-rw-r--r--sql-ledger/locale/tr/ic175
-rw-r--r--sql-ledger/locale/tr/io87
-rw-r--r--sql-ledger/locale/tr/ir145
-rw-r--r--sql-ledger/locale/tr/is150
-rw-r--r--sql-ledger/locale/tr/login20
-rw-r--r--sql-ledger/locale/tr/menu51
-rw-r--r--sql-ledger/locale/tr/oe181
-rw-r--r--sql-ledger/locale/tr/pe50
-rw-r--r--sql-ledger/locale/tr/pos44
-rw-r--r--sql-ledger/locale/tr/ps202
-rw-r--r--sql-ledger/locale/tr/pw11
-rw-r--r--sql-ledger/locale/tr/rc55
-rw-r--r--sql-ledger/locale/tr/rp107
-rw-r--r--sql-ledger/locale/tw_big5/COPYING24
-rw-r--r--sql-ledger/locale/tw_big5/LANGUAGE1
-rw-r--r--sql-ledger/locale/tw_big5/admin140
-rw-r--r--sql-ledger/locale/tw_big5/all766
-rw-r--r--sql-ledger/locale/tw_big5/am245
-rw-r--r--sql-ledger/locale/tw_big5/ap162
-rw-r--r--sql-ledger/locale/tw_big5/ar163
-rw-r--r--sql-ledger/locale/tw_big5/arap30
-rw-r--r--sql-ledger/locale/tw_big5/arapprn32
-rw-r--r--sql-ledger/locale/tw_big5/bp59
-rw-r--r--sql-ledger/locale/tw_big5/ca52
-rw-r--r--sql-ledger/locale/tw_big5/cp83
-rw-r--r--sql-ledger/locale/tw_big5/ct167
-rw-r--r--sql-ledger/locale/tw_big5/gl133
-rw-r--r--sql-ledger/locale/tw_big5/hr104
-rw-r--r--sql-ledger/locale/tw_big5/ic265
-rw-r--r--sql-ledger/locale/tw_big5/io131
-rw-r--r--sql-ledger/locale/tw_big5/ir212
-rw-r--r--sql-ledger/locale/tw_big5/is225
-rw-r--r--sql-ledger/locale/tw_big5/login25
-rw-r--r--sql-ledger/locale/tw_big5/menu127
-rw-r--r--sql-ledger/locale/tw_big5/oe293
-rw-r--r--sql-ledger/locale/tw_big5/pe82
-rw-r--r--sql-ledger/locale/tw_big5/pos64
-rw-r--r--sql-ledger/locale/tw_big5/ps326
-rw-r--r--sql-ledger/locale/tw_big5/pw11
-rw-r--r--sql-ledger/locale/tw_big5/rc74
-rw-r--r--sql-ledger/locale/tw_big5/rp159
-rw-r--r--sql-ledger/locale/tw_big5/temp7
-rw-r--r--sql-ledger/locale/tw_utf/COPYING24
-rw-r--r--sql-ledger/locale/tw_utf/LANGUAGE1
-rw-r--r--sql-ledger/locale/tw_utf/admin140
-rw-r--r--sql-ledger/locale/tw_utf/all766
-rw-r--r--sql-ledger/locale/tw_utf/am245
-rw-r--r--sql-ledger/locale/tw_utf/ap162
-rw-r--r--sql-ledger/locale/tw_utf/ar163
-rw-r--r--sql-ledger/locale/tw_utf/arap30
-rw-r--r--sql-ledger/locale/tw_utf/arapprn32
-rw-r--r--sql-ledger/locale/tw_utf/bp59
-rw-r--r--sql-ledger/locale/tw_utf/ca52
-rw-r--r--sql-ledger/locale/tw_utf/cp83
-rw-r--r--sql-ledger/locale/tw_utf/ct167
-rw-r--r--sql-ledger/locale/tw_utf/gl133
-rw-r--r--sql-ledger/locale/tw_utf/hr104
-rw-r--r--sql-ledger/locale/tw_utf/ic265
-rw-r--r--sql-ledger/locale/tw_utf/io131
-rw-r--r--sql-ledger/locale/tw_utf/ir212
-rw-r--r--sql-ledger/locale/tw_utf/is225
-rw-r--r--sql-ledger/locale/tw_utf/login25
-rw-r--r--sql-ledger/locale/tw_utf/menu127
-rw-r--r--sql-ledger/locale/tw_utf/oe293
-rw-r--r--sql-ledger/locale/tw_utf/pe82
-rw-r--r--sql-ledger/locale/tw_utf/pos64
-rw-r--r--sql-ledger/locale/tw_utf/ps326
-rw-r--r--sql-ledger/locale/tw_utf/pw11
-rw-r--r--sql-ledger/locale/tw_utf/rc74
-rw-r--r--sql-ledger/locale/tw_utf/rp159
-rw-r--r--sql-ledger/locale/ua/COPYING23
-rw-r--r--sql-ledger/locale/ua/LANGUAGE1
-rw-r--r--sql-ledger/locale/ua/admin137
-rw-r--r--sql-ledger/locale/ua/all766
-rw-r--r--sql-ledger/locale/ua/am191
-rw-r--r--sql-ledger/locale/ua/ap156
-rw-r--r--sql-ledger/locale/ua/ar154
-rw-r--r--sql-ledger/locale/ua/arap30
-rw-r--r--sql-ledger/locale/ua/arapprn29
-rw-r--r--sql-ledger/locale/ua/bp44
-rw-r--r--sql-ledger/locale/ua/ca51
-rw-r--r--sql-ledger/locale/ua/cp75
-rw-r--r--sql-ledger/locale/ua/ct132
-rw-r--r--sql-ledger/locale/ua/gl127
-rw-r--r--sql-ledger/locale/ua/hr69
-rw-r--r--sql-ledger/locale/ua/ic221
-rw-r--r--sql-ledger/locale/ua/io107
-rw-r--r--sql-ledger/locale/ua/ir184
-rw-r--r--sql-ledger/locale/ua/is193
-rw-r--r--sql-ledger/locale/ua/login22
-rw-r--r--sql-ledger/locale/ua/menu79
-rw-r--r--sql-ledger/locale/ua/oe232
-rw-r--r--sql-ledger/locale/ua/pe59
-rw-r--r--sql-ledger/locale/ua/pos56
-rw-r--r--sql-ledger/locale/ua/ps277
-rw-r--r--sql-ledger/locale/ua/pw11
-rw-r--r--sql-ledger/locale/ua/rc65
-rw-r--r--sql-ledger/locale/ua/rp146
-rw-r--r--sql-ledger/locale/ve/COPYING23
-rw-r--r--sql-ledger/locale/ve/LANGUAGE1
-rw-r--r--sql-ledger/locale/ve/admin141
-rw-r--r--sql-ledger/locale/ve/all768
-rw-r--r--sql-ledger/locale/ve/am255
-rw-r--r--sql-ledger/locale/ve/ap175
-rw-r--r--sql-ledger/locale/ve/ar176
-rw-r--r--sql-ledger/locale/ve/arap30
-rw-r--r--sql-ledger/locale/ve/arapprn37
-rw-r--r--sql-ledger/locale/ve/bp67
-rw-r--r--sql-ledger/locale/ve/ca58
-rw-r--r--sql-ledger/locale/ve/cp84
-rw-r--r--sql-ledger/locale/ve/ct176
-rw-r--r--sql-ledger/locale/ve/gl142
-rw-r--r--sql-ledger/locale/ve/hr109
-rw-r--r--sql-ledger/locale/ve/ic272
-rw-r--r--sql-ledger/locale/ve/io133
-rw-r--r--sql-ledger/locale/ve/ir214
-rw-r--r--sql-ledger/locale/ve/is229
-rw-r--r--sql-ledger/locale/ve/login25
-rw-r--r--sql-ledger/locale/ve/menu133
-rw-r--r--sql-ledger/locale/ve/oe307
-rw-r--r--sql-ledger/locale/ve/pe82
-rw-r--r--sql-ledger/locale/ve/pos68
-rw-r--r--sql-ledger/locale/ve/ps341
-rw-r--r--sql-ledger/locale/ve/pw11
-rw-r--r--sql-ledger/locale/ve/rc79
-rw-r--r--sql-ledger/locale/ve/rp165
-rwxr-xr-xsql-ledger/login.pl129
-rw-r--r--sql-ledger/menu.ini900
-rwxr-xr-xsql-ledger/setup.pl529
-rw-r--r--sql-ledger/sql-ledger.conf.default48
-rw-r--r--sql-ledger/sql-ledger.gifbin5909 -> 0 bytes
-rw-r--r--sql-ledger/sql-ledger.pngbin5472 -> 0 bytes
-rw-r--r--sql-ledger/sql/Austria-chart.sql143
-rw-r--r--sql-ledger/sql/Austria-gifi.sql334
-rw-r--r--sql-ledger/sql/Belgium-chart.sql380
-rw-r--r--sql-ledger/sql/Belgium-gifi.sql68
-rw-r--r--sql-ledger/sql/Brazil_General-chart.sql70
-rw-r--r--sql-ledger/sql/Canada-English-gifi.sql759
-rw-r--r--sql-ledger/sql/Canada-English_General-chart.sql71
-rw-r--r--sql-ledger/sql/Canada-French-gifi.sql719
-rw-r--r--sql-ledger/sql/Colombia-PUC-chart.sql771
-rw-r--r--sql-ledger/sql/Colombia-PUC-gifi.sql2473
-rw-r--r--sql-ledger/sql/Czech-Republic-chart.sql317
-rw-r--r--sql-ledger/sql/DB2-create.sql8
-rw-r--r--sql-ledger/sql/DB2-indices.sql57
-rw-r--r--sql-ledger/sql/DB2-remove.sql47
-rw-r--r--sql-ledger/sql/DB2-set.sql4
-rw-r--r--sql-ledger/sql/DB2-sql-ledger.order5
-rw-r--r--sql-ledger/sql/DB2-tables.sql511
-rw-r--r--sql-ledger/sql/Danish_Default-chart.sql75
-rw-r--r--sql-ledger/sql/Default-chart.sql77
-rw-r--r--sql-ledger/sql/Dutch_Default-chart.sql80
-rw-r--r--sql-ledger/sql/Dutch_Standard-chart.sql233
-rw-r--r--sql-ledger/sql/Egypt-chart.sql80
-rw-r--r--sql-ledger/sql/France-chart.sql951
-rw-r--r--sql-ledger/sql/German-Sample-chart.sql216
-rw-r--r--sql-ledger/sql/German-Sample-gifi.sql19
-rw-r--r--sql-ledger/sql/Germany-DATEV-SKR03-chart.sql227
-rw-r--r--sql-ledger/sql/Germany-DATEV-SKR03-gifi.sql550
-rw-r--r--sql-ledger/sql/Germany-SKR03-chart.sql264
-rw-r--r--sql-ledger/sql/Germany-SKR03-gifi.sql1083
-rw-r--r--sql-ledger/sql/Hungary-chart.sql48
-rw-r--r--sql-ledger/sql/Hungary-gifi.sql25
-rw-r--r--sql-ledger/sql/Italy-gifi.sql140
-rw-r--r--sql-ledger/sql/Italy_General-chart.sql179
-rw-r--r--sql-ledger/sql/Italy_cc2424-chart.sql269
-rw-r--r--sql-ledger/sql/Latvia-chart.sql253
-rw-r--r--sql-ledger/sql/NAICS.sql2345
-rw-r--r--sql-ledger/sql/Norwegian_Default-chart.sql297
-rw-r--r--sql-ledger/sql/Oracle-indices.sql65
-rw-r--r--sql-ledger/sql/Oracle-tables.sql424
-rw-r--r--sql-ledger/sql/Oracle-upgrade-1.8.0-1.8.4.sql28
-rw-r--r--sql-ledger/sql/Oracle-upgrade-1.8.4-1.8.5.sql77
-rw-r--r--sql-ledger/sql/Oracle-upgrade-1.8.5-2.0.0.sql100
-rw-r--r--sql-ledger/sql/Oracle-upgrade-2.0.0-2.0.8.sql19
-rw-r--r--sql-ledger/sql/Oracle-upgrade-2.0.8-2.2.0.sql9
-rw-r--r--sql-ledger/sql/Pg-functions.sql182
-rw-r--r--sql-ledger/sql/Pg-indices.sql98
-rw-r--r--sql-ledger/sql/Pg-tables.sql471
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.2.6-1.2.7.sql4
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.2.7-1.4.0.sql173
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.4.0-1.6.0.sql126
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.6.0-1.8.0.sql104
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.8.0-1.8.4.sql21
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.8.4-1.8.5.sql63
-rw-r--r--sql-ledger/sql/Pg-upgrade-1.8.5-2.0.0.sql92
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.0.0-2.0.8.sql12
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.0.8-2.2.0.sql9
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.2.0-2.3.0.sql59
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.0-2.3.1.sql388
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.1-2.3.3.sql9
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.3-2.3.4.sql6
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.4-2.3.5.sql142
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.5-2.3.6.sql15
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.6-2.3.7.sql6
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.7-2.3.8.sql16
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.8-2.3.9.sql15
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.3.9-2.4.2.sql34
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.4.2-2.4.3.sql17
-rw-r--r--sql-ledger/sql/Pg-upgrade-2.4.3-2.4.4.sql5
-rw-r--r--sql-ledger/sql/Poland-chart.sql337
-rw-r--r--sql-ledger/sql/Simplified-Chinese_Default-UTF8-chart.sql78
-rw-r--r--sql-ledger/sql/Simplified-Chinese_Default-chart.sql78
-rw-r--r--sql-ledger/sql/Spain-ISO-chart.sql132
-rw-r--r--sql-ledger/sql/Spain-UTF8-chart.sql133
-rw-r--r--sql-ledger/sql/Swedish-chart.sql1135
-rw-r--r--sql-ledger/sql/Swiss-German-chart.sql160
-rw-r--r--sql-ledger/sql/Swiss-German-gifi.sql55
-rw-r--r--sql-ledger/sql/Traditional-Chinese_Default-UTF8-chart.sql78
-rw-r--r--sql-ledger/sql/Traditional-Chinese_Default-chart.sql78
-rw-r--r--sql-ledger/sql/US_General-chart.sql90
-rw-r--r--sql-ledger/sql/US_Manufacturing-chart.sql82
-rw-r--r--sql-ledger/sql/US_Service_Company-chart.sql67
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-balance_sheet.html103
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-bin_list.html189
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-bin_list.tex147
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-check.tex75
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-income_statement.html77
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-invoice.html324
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-invoice.tex227
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-packing_list.html143
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-packing_list.tex110
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-pick_list.html153
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-pick_list.tex143
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-purchase_order.html191
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-purchase_order.tex200
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-receipt.tex75
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-request_quotation.html202
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-sales_order.html229
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-sales_order.tex144
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-statement.html129
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-statement.tex110
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-work_order.html177
-rw-r--r--sql-ledger/templates/Brazilian_Portuguese-work_order.tex177
-rw-r--r--sql-ledger/templates/Danish-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Danish-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Danish-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Danish-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Danish-balance_sheet.html96
-rw-r--r--sql-ledger/templates/Danish-bin_list.html189
-rw-r--r--sql-ledger/templates/Danish-bin_list.tex147
-rw-r--r--sql-ledger/templates/Danish-check.tex75
-rw-r--r--sql-ledger/templates/Danish-income_statement.html73
-rw-r--r--sql-ledger/templates/Danish-invoice.html282
-rw-r--r--sql-ledger/templates/Danish-invoice.tex156
-rw-r--r--sql-ledger/templates/Danish-packing_list.html145
-rw-r--r--sql-ledger/templates/Danish-packing_list.tex123
-rw-r--r--sql-ledger/templates/Danish-pick_list.html153
-rw-r--r--sql-ledger/templates/Danish-pick_list.tex144
-rw-r--r--sql-ledger/templates/Danish-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Danish-purchase_order.html195
-rw-r--r--sql-ledger/templates/Danish-purchase_order.tex147
-rw-r--r--sql-ledger/templates/Danish-receipt.tex75
-rw-r--r--sql-ledger/templates/Danish-request_quotation.html202
-rw-r--r--sql-ledger/templates/Danish-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Danish-sales_order.html218
-rw-r--r--sql-ledger/templates/Danish-sales_order.tex151
-rw-r--r--sql-ledger/templates/Danish-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Danish-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Danish-statement.html125
-rw-r--r--sql-ledger/templates/Danish-statement.tex111
-rw-r--r--sql-ledger/templates/Danish-work_order.html174
-rw-r--r--sql-ledger/templates/Danish-work_order.tex177
-rw-r--r--sql-ledger/templates/Default-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Default-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Default-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Default-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Default-balance_sheet.html110
-rw-r--r--sql-ledger/templates/Default-bin_list.html189
-rw-r--r--sql-ledger/templates/Default-bin_list.tex147
-rw-r--r--sql-ledger/templates/Default-check.tex78
-rw-r--r--sql-ledger/templates/Default-income_statement.html81
-rw-r--r--sql-ledger/templates/Default-invoice.html337
-rw-r--r--sql-ledger/templates/Default-invoice.tex235
-rw-r--r--sql-ledger/templates/Default-packing_list.html197
-rw-r--r--sql-ledger/templates/Default-packing_list.tex161
-rw-r--r--sql-ledger/templates/Default-pick_list.html153
-rw-r--r--sql-ledger/templates/Default-pick_list.tex143
-rw-r--r--sql-ledger/templates/Default-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Default-purchase_order.html252
-rw-r--r--sql-ledger/templates/Default-purchase_order.tex195
-rw-r--r--sql-ledger/templates/Default-receipt.tex78
-rw-r--r--sql-ledger/templates/Default-request_quotation.html202
-rw-r--r--sql-ledger/templates/Default-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Default-sales_order.html245
-rw-r--r--sql-ledger/templates/Default-sales_order.tex207
-rw-r--r--sql-ledger/templates/Default-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Default-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Default-statement.html134
-rw-r--r--sql-ledger/templates/Default-statement.tex110
-rw-r--r--sql-ledger/templates/Default-work_order.html177
-rw-r--r--sql-ledger/templates/Default-work_order.tex177
-rw-r--r--sql-ledger/templates/Dutch-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Dutch-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Dutch-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Dutch-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Dutch-balance_sheet.html110
-rw-r--r--sql-ledger/templates/Dutch-bin_list.html189
-rw-r--r--sql-ledger/templates/Dutch-bin_list.tex147
-rw-r--r--sql-ledger/templates/Dutch-check.tex75
-rw-r--r--sql-ledger/templates/Dutch-income_statement.html81
-rw-r--r--sql-ledger/templates/Dutch-invoice.html248
-rw-r--r--sql-ledger/templates/Dutch-invoice.tex142
-rw-r--r--sql-ledger/templates/Dutch-packing_list.html121
-rw-r--r--sql-ledger/templates/Dutch-packing_list.tex114
-rw-r--r--sql-ledger/templates/Dutch-pick_list.html153
-rw-r--r--sql-ledger/templates/Dutch-pick_list.tex144
-rw-r--r--sql-ledger/templates/Dutch-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Dutch-purchase_order.html190
-rw-r--r--sql-ledger/templates/Dutch-purchase_order.tex141
-rw-r--r--sql-ledger/templates/Dutch-receipt.tex75
-rw-r--r--sql-ledger/templates/Dutch-request_quotation.html202
-rw-r--r--sql-ledger/templates/Dutch-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Dutch-sales_order.html216
-rw-r--r--sql-ledger/templates/Dutch-sales_order.tex141
-rw-r--r--sql-ledger/templates/Dutch-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Dutch-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Dutch-statement.html125
-rw-r--r--sql-ledger/templates/Dutch-statement.tex111
-rw-r--r--sql-ledger/templates/Dutch-work_order.html174
-rw-r--r--sql-ledger/templates/Dutch-work_order.tex177
-rw-r--r--sql-ledger/templates/Estonian-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Estonian-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Estonian-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Estonian-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Estonian-balance_sheet.html103
-rw-r--r--sql-ledger/templates/Estonian-bin_list.html189
-rw-r--r--sql-ledger/templates/Estonian-bin_list.tex147
-rw-r--r--sql-ledger/templates/Estonian-check.tex75
-rw-r--r--sql-ledger/templates/Estonian-income_statement.html84
-rw-r--r--sql-ledger/templates/Estonian-invoice.html224
-rw-r--r--sql-ledger/templates/Estonian-invoice.tex151
-rw-r--r--sql-ledger/templates/Estonian-packing_list.html147
-rw-r--r--sql-ledger/templates/Estonian-packing_list.tex119
-rw-r--r--sql-ledger/templates/Estonian-pick_list.html153
-rw-r--r--sql-ledger/templates/Estonian-pick_list.tex143
-rw-r--r--sql-ledger/templates/Estonian-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Estonian-purchase_order.html199
-rw-r--r--sql-ledger/templates/Estonian-purchase_order.tex147
-rw-r--r--sql-ledger/templates/Estonian-receipt.tex75
-rw-r--r--sql-ledger/templates/Estonian-request_quotation.html202
-rw-r--r--sql-ledger/templates/Estonian-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Estonian-sales_order.html222
-rw-r--r--sql-ledger/templates/Estonian-sales_order.tex148
-rw-r--r--sql-ledger/templates/Estonian-statement.html125
-rw-r--r--sql-ledger/templates/Estonian-statement.tex111
-rw-r--r--sql-ledger/templates/Estonian-work_order.html174
-rw-r--r--sql-ledger/templates/Estonian-work_order.tex177
-rw-r--r--sql-ledger/templates/French-ap_transaction.html229
-rw-r--r--sql-ledger/templates/French-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/French-ar_transaction.html237
-rw-r--r--sql-ledger/templates/French-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/French-balance_sheet.html109
-rw-r--r--sql-ledger/templates/French-bin_list.html189
-rw-r--r--sql-ledger/templates/French-bin_list.tex147
-rw-r--r--sql-ledger/templates/French-check.tex75
-rw-r--r--sql-ledger/templates/French-income_statement.html86
-rw-r--r--sql-ledger/templates/French-invoice.html318
-rw-r--r--sql-ledger/templates/French-invoice.tex155
-rw-r--r--sql-ledger/templates/French-packing_list.html152
-rw-r--r--sql-ledger/templates/French-packing_list.tex125
-rw-r--r--sql-ledger/templates/French-pick_list.html153
-rw-r--r--sql-ledger/templates/French-pick_list.tex144
-rw-r--r--sql-ledger/templates/French-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/French-purchase_order.html211
-rw-r--r--sql-ledger/templates/French-purchase_order.tex147
-rw-r--r--sql-ledger/templates/French-receipt.tex75
-rw-r--r--sql-ledger/templates/French-request_quotation.html202
-rw-r--r--sql-ledger/templates/French-request_quotation.tex175
-rw-r--r--sql-ledger/templates/French-sales_order.html237
-rw-r--r--sql-ledger/templates/French-sales_order.tex151
-rw-r--r--sql-ledger/templates/French-sales_quotation.html225
-rw-r--r--sql-ledger/templates/French-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/French-statement.html137
-rw-r--r--sql-ledger/templates/French-statement.tex111
-rw-r--r--sql-ledger/templates/French-work_order.html174
-rw-r--r--sql-ledger/templates/French-work_order.tex177
-rw-r--r--sql-ledger/templates/German-ap_transaction.html229
-rw-r--r--sql-ledger/templates/German-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/German-ar_transaction.html237
-rw-r--r--sql-ledger/templates/German-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/German-balance_sheet.html100
-rw-r--r--sql-ledger/templates/German-bin_list.html189
-rw-r--r--sql-ledger/templates/German-bin_list.tex147
-rw-r--r--sql-ledger/templates/German-check.tex75
-rw-r--r--sql-ledger/templates/German-income_statement.html78
-rw-r--r--sql-ledger/templates/German-invoice.html274
-rw-r--r--sql-ledger/templates/German-invoice.tex159
-rw-r--r--sql-ledger/templates/German-packing_list.html146
-rw-r--r--sql-ledger/templates/German-packing_list.tex118
-rw-r--r--sql-ledger/templates/German-pick_list.html153
-rw-r--r--sql-ledger/templates/German-pick_list.tex144
-rw-r--r--sql-ledger/templates/German-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/German-purchase_order.html192
-rw-r--r--sql-ledger/templates/German-purchase_order.tex147
-rw-r--r--sql-ledger/templates/German-receipt.tex75
-rw-r--r--sql-ledger/templates/German-request_quotation.html202
-rw-r--r--sql-ledger/templates/German-request_quotation.tex175
-rw-r--r--sql-ledger/templates/German-sales_order.html221
-rw-r--r--sql-ledger/templates/German-sales_order.tex149
-rw-r--r--sql-ledger/templates/German-sales_quotation.html225
-rw-r--r--sql-ledger/templates/German-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/German-statement.html125
-rw-r--r--sql-ledger/templates/German-statement.tex111
-rw-r--r--sql-ledger/templates/German-work_order.html174
-rw-r--r--sql-ledger/templates/German-work_order.tex177
-rw-r--r--sql-ledger/templates/Hungarian-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Hungarian-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Hungarian-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Hungarian-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Hungarian-balance_sheet.html100
-rw-r--r--sql-ledger/templates/Hungarian-bin_list.html189
-rw-r--r--sql-ledger/templates/Hungarian-bin_list.tex147
-rw-r--r--sql-ledger/templates/Hungarian-check.tex81
-rw-r--r--sql-ledger/templates/Hungarian-income_statement.html82
-rw-r--r--sql-ledger/templates/Hungarian-invoice.html303
-rw-r--r--sql-ledger/templates/Hungarian-invoice.tex280
-rw-r--r--sql-ledger/templates/Hungarian-packing_list.html148
-rw-r--r--sql-ledger/templates/Hungarian-packing_list.tex122
-rw-r--r--sql-ledger/templates/Hungarian-pick_list.html153
-rw-r--r--sql-ledger/templates/Hungarian-pick_list.tex143
-rw-r--r--sql-ledger/templates/Hungarian-pos_invoice.txt48
-rw-r--r--sql-ledger/templates/Hungarian-purchase_order.html230
-rw-r--r--sql-ledger/templates/Hungarian-purchase_order.tex206
-rw-r--r--sql-ledger/templates/Hungarian-receipt.tex78
-rw-r--r--sql-ledger/templates/Hungarian-request_quotation.html202
-rw-r--r--sql-ledger/templates/Hungarian-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Hungarian-sales_order.html221
-rw-r--r--sql-ledger/templates/Hungarian-sales_order.tex147
-rw-r--r--sql-ledger/templates/Hungarian-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Hungarian-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Hungarian-statement.html125
-rw-r--r--sql-ledger/templates/Hungarian-statement.tex141
-rw-r--r--sql-ledger/templates/Hungarian-work_order.html174
-rw-r--r--sql-ledger/templates/Hungarian-work_order.tex177
-rw-r--r--sql-ledger/templates/Italian-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Italian-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Italian-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Italian-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Italian-balance_sheet.html103
-rw-r--r--sql-ledger/templates/Italian-bin_list.html189
-rw-r--r--sql-ledger/templates/Italian-bin_list.tex147
-rw-r--r--sql-ledger/templates/Italian-check.tex81
-rw-r--r--sql-ledger/templates/Italian-income_statement.html78
-rw-r--r--sql-ledger/templates/Italian-invoice.html209
-rw-r--r--sql-ledger/templates/Italian-invoice.tex236
-rw-r--r--sql-ledger/templates/Italian-packing_list.html126
-rw-r--r--sql-ledger/templates/Italian-packing_list.tex114
-rw-r--r--sql-ledger/templates/Italian-pick_list.html153
-rw-r--r--sql-ledger/templates/Italian-pick_list.tex144
-rw-r--r--sql-ledger/templates/Italian-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Italian-purchase_order.html232
-rw-r--r--sql-ledger/templates/Italian-purchase_order.tex206
-rw-r--r--sql-ledger/templates/Italian-receipt.tex78
-rw-r--r--sql-ledger/templates/Italian-request_quotation.html202
-rw-r--r--sql-ledger/templates/Italian-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Italian-sales_order.html207
-rw-r--r--sql-ledger/templates/Italian-sales_order.tex150
-rw-r--r--sql-ledger/templates/Italian-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Italian-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Italian-statement.html125
-rw-r--r--sql-ledger/templates/Italian-statement.tex141
-rw-r--r--sql-ledger/templates/Italian-work_order.html174
-rw-r--r--sql-ledger/templates/Italian-work_order.tex177
-rw-r--r--sql-ledger/templates/Norwegian-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Norwegian-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Norwegian-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Norwegian-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Norwegian-balance_sheet.html100
-rw-r--r--sql-ledger/templates/Norwegian-bin_list.html189
-rw-r--r--sql-ledger/templates/Norwegian-bin_list.tex147
-rw-r--r--sql-ledger/templates/Norwegian-check.tex81
-rw-r--r--sql-ledger/templates/Norwegian-income_statement.html78
-rw-r--r--sql-ledger/templates/Norwegian-invoice.html226
-rw-r--r--sql-ledger/templates/Norwegian-invoice.tex237
-rw-r--r--sql-ledger/templates/Norwegian-packing_list.html142
-rw-r--r--sql-ledger/templates/Norwegian-packing_list.tex123
-rw-r--r--sql-ledger/templates/Norwegian-pick_list.html153
-rw-r--r--sql-ledger/templates/Norwegian-pick_list.tex144
-rw-r--r--sql-ledger/templates/Norwegian-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Norwegian-purchase_order.html201
-rw-r--r--sql-ledger/templates/Norwegian-purchase_order.tex206
-rw-r--r--sql-ledger/templates/Norwegian-receipt.tex78
-rw-r--r--sql-ledger/templates/Norwegian-request_quotation.html202
-rw-r--r--sql-ledger/templates/Norwegian-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Norwegian-sales_order.html220
-rw-r--r--sql-ledger/templates/Norwegian-sales_order.tex150
-rw-r--r--sql-ledger/templates/Norwegian-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Norwegian-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Norwegian-statement.html120
-rw-r--r--sql-ledger/templates/Norwegian-statement.tex139
-rw-r--r--sql-ledger/templates/Norwegian-work_order.html174
-rw-r--r--sql-ledger/templates/Norwegian-work_order.tex177
-rw-r--r--sql-ledger/templates/Service-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Service-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Service-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Service-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Service-balance_sheet.html110
-rw-r--r--sql-ledger/templates/Service-bin_list.html189
-rw-r--r--sql-ledger/templates/Service-bin_list.tex147
-rw-r--r--sql-ledger/templates/Service-check.tex75
-rw-r--r--sql-ledger/templates/Service-income_statement.html81
-rw-r--r--sql-ledger/templates/Service-invoice.html230
-rw-r--r--sql-ledger/templates/Service-invoice.tex155
-rw-r--r--sql-ledger/templates/Service-packing_list.html148
-rw-r--r--sql-ledger/templates/Service-packing_list.tex120
-rw-r--r--sql-ledger/templates/Service-pick_list.html153
-rw-r--r--sql-ledger/templates/Service-pick_list.tex144
-rw-r--r--sql-ledger/templates/Service-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Service-purchase_order.html198
-rw-r--r--sql-ledger/templates/Service-purchase_order.tex147
-rw-r--r--sql-ledger/templates/Service-receipt.tex78
-rw-r--r--sql-ledger/templates/Service-request_quotation.html202
-rw-r--r--sql-ledger/templates/Service-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Service-sales_order.html202
-rw-r--r--sql-ledger/templates/Service-sales_order.tex146
-rw-r--r--sql-ledger/templates/Service-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Service-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Service-statement.html130
-rw-r--r--sql-ledger/templates/Service-statement.tex111
-rw-r--r--sql-ledger/templates/Service-work_order.html174
-rw-r--r--sql-ledger/templates/Service-work_order.tex177
-rw-r--r--sql-ledger/templates/Spanish_A4-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Spanish_A4-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Spanish_A4-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Spanish_A4-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Spanish_A4-balance_sheet.html100
-rw-r--r--sql-ledger/templates/Spanish_A4-bin_list.html189
-rw-r--r--sql-ledger/templates/Spanish_A4-bin_list.tex147
-rw-r--r--sql-ledger/templates/Spanish_A4-check.tex75
-rw-r--r--sql-ledger/templates/Spanish_A4-income_statement.html77
-rw-r--r--sql-ledger/templates/Spanish_A4-invoice.html153
-rw-r--r--sql-ledger/templates/Spanish_A4-invoice.tex108
-rw-r--r--sql-ledger/templates/Spanish_A4-packing_list.html155
-rw-r--r--sql-ledger/templates/Spanish_A4-packing_list.tex108
-rw-r--r--sql-ledger/templates/Spanish_A4-pick_list.html153
-rw-r--r--sql-ledger/templates/Spanish_A4-pick_list.tex144
-rw-r--r--sql-ledger/templates/Spanish_A4-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Spanish_A4-purchase_order.html153
-rw-r--r--sql-ledger/templates/Spanish_A4-purchase_order.tex111
-rw-r--r--sql-ledger/templates/Spanish_A4-receipt.tex75
-rw-r--r--sql-ledger/templates/Spanish_A4-request_quotation.html202
-rw-r--r--sql-ledger/templates/Spanish_A4-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Spanish_A4-sales_order.html153
-rw-r--r--sql-ledger/templates/Spanish_A4-sales_order.tex107
-rw-r--r--sql-ledger/templates/Spanish_A4-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Spanish_A4-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Spanish_A4-statement.html125
-rw-r--r--sql-ledger/templates/Spanish_A4-statement.tex111
-rw-r--r--sql-ledger/templates/Spanish_A4-work_order.html174
-rw-r--r--sql-ledger/templates/Spanish_A4-work_order.tex177
-rw-r--r--sql-ledger/templates/Spanish_Letter-ap_transaction.html229
-rw-r--r--sql-ledger/templates/Spanish_Letter-ap_transaction.tex125
-rw-r--r--sql-ledger/templates/Spanish_Letter-ar_transaction.html237
-rw-r--r--sql-ledger/templates/Spanish_Letter-ar_transaction.tex131
-rw-r--r--sql-ledger/templates/Spanish_Letter-balance_sheet.html100
-rw-r--r--sql-ledger/templates/Spanish_Letter-bin_list.html189
-rw-r--r--sql-ledger/templates/Spanish_Letter-bin_list.tex147
-rw-r--r--sql-ledger/templates/Spanish_Letter-check.tex75
-rw-r--r--sql-ledger/templates/Spanish_Letter-income_statement.html77
-rw-r--r--sql-ledger/templates/Spanish_Letter-invoice.html153
-rw-r--r--sql-ledger/templates/Spanish_Letter-invoice.tex110
-rw-r--r--sql-ledger/templates/Spanish_Letter-packing_list.html155
-rw-r--r--sql-ledger/templates/Spanish_Letter-packing_list.tex108
-rw-r--r--sql-ledger/templates/Spanish_Letter-pick_list.html153
-rw-r--r--sql-ledger/templates/Spanish_Letter-pick_list.tex144
-rw-r--r--sql-ledger/templates/Spanish_Letter-pos_invoice.txt51
-rw-r--r--sql-ledger/templates/Spanish_Letter-purchase_order.html153
-rw-r--r--sql-ledger/templates/Spanish_Letter-purchase_order.tex111
-rw-r--r--sql-ledger/templates/Spanish_Letter-receipt.tex75
-rw-r--r--sql-ledger/templates/Spanish_Letter-request_quotation.html202
-rw-r--r--sql-ledger/templates/Spanish_Letter-request_quotation.tex175
-rw-r--r--sql-ledger/templates/Spanish_Letter-sales_order.html153
-rw-r--r--sql-ledger/templates/Spanish_Letter-sales_order.tex111
-rw-r--r--sql-ledger/templates/Spanish_Letter-sales_quotation.html225
-rw-r--r--sql-ledger/templates/Spanish_Letter-sales_quotation.tex157
-rw-r--r--sql-ledger/templates/Spanish_Letter-statement.html125
-rw-r--r--sql-ledger/templates/Spanish_Letter-statement.tex111
-rw-r--r--sql-ledger/templates/Spanish_Letter-work_order.html174
-rw-r--r--sql-ledger/templates/Spanish_Letter-work_order.tex177
-rw-r--r--sql-ledger/users/sql-ledger.eps2118
-rw-r--r--sql-ledger/users/sql-ledger.pngbin5472 -> 0 bytes
-rwxr-xr-xtest/cgi-test560
-rwxr-xr-xtest/dup-test32
2854 files changed, 0 insertions, 599447 deletions
diff --git a/ANNOUNCE.1.5 b/ANNOUNCE.1.5
deleted file mode 100644
index 36c78e1..0000000
--- a/ANNOUNCE.1.5
+++ /dev/null
@@ -1,54 +0,0 @@
-- broadband (dsl/wireless) tracking, etc etc
-- Extended description on invoice for time/data charges
-- Multiple, named taxes
-- */*FIX
-- extended reported and graphing
-- integrated RT ticketing system
-- one-time payments (in signup server too). DCRD and DCHK on-demand payment types
-- credit report
-- reseller interface
-
-1.5.0pre6:
-- RADIUS session viewing
-- Major updates for reseller interface
-- Credit card and ACH refunds (w/supported processor module)
-- Proper email payment receipts (not invoice copies)
-- modular price plans, rewrote package add/edit page
-- fixed up tax report - should be correct for edge cases with named taxes,
- tax classes, etc.
-- Documentation updates
-
-1.5.7:
-- version numbering change, now even/odd like Perl or Linux
-- fix bug that could cause mis-billing on upgrades! (new installs ok)
-- updated install documentation
-- historical late notice viewing in web interface
-- VoIP billing for CDRs from RADIUS
-- promotional codes for signup
-- lots of RT integration, integrated RT upgraded to 3.2.2, preliminary RT
- add-on docs
-- one-time referral credits
-- invoices now use history records (don't lose details)
-- option to credit for remaining service upon package cancel/change
- (peter bowen)
-- one-time registration codes
-- "selfservice_server-session_module" config value can be set to
- "Cache::FileCache" on FreeBSD or elsewhere IPC::ShareLite has trouble.
-- package changes don't re-charge setup fee
-- per-agent payment and credit reports
-- CSV and Excel export of most reports, others to be migrated to new report template
-- prepaid card support updated: now includes a web generator, agent-specific
- prepaid cards, and creates *payments*, not credits
-- preliminary setup for Slony-1 PostgreSQL replication
-- reformatted latex invoice templates w/Text::Template (khoff) and removed
- some useless fields (quantity/unit price)
-- simplified upgrade instructions
-- add export to vpopmail SQL
-- html invoices
-- big self-service updates (recharge w/prepaid card, change info, more)
-- significant freeside-daily speedup
-
-notyet (1.5.8?):
-- account merging UI in exports (for example, to consolidate passwd files from
- multiple servers)
-
diff --git a/CREDITS b/CREDITS
deleted file mode 100644
index 72b0491..0000000
--- a/CREDITS
+++ /dev/null
@@ -1,167 +0,0 @@
-Thanks to Matt Simerson <matt@michweb.net> of MichWeb Inc. for documentation
-and pre-release testing. Without his help the documentation in 1.0.0
-release would have consisted of a single screenfull of text.
-(To clear up some misunderstanding, Matt did not write the current
-documentation.)
-
-Steve Cleff <cleff@yahoo.com> did the default background image in 1.0.x and
-is also the creator of Freeside's elusive mascot, Snakeman, who we hope will
-make an appearance in an upcoming version.
-
-Jerry St. Pierre <jstpi@city.timmins.on.ca> did the "SISD" graphic used in
-1.0.x and most of 1.1.x.
-
-Mark Norris of Urban Design, Inc. <http://www.urban.com/> did the red "S"
-logo for later 1.1.x versions until 1.4.1
-
-Brian McCane? <bmccane@maxbaud.net> contributed PostgreSQL support, HTML
-style enhancements and many, many bugfixes.
-
-Cerkit <cerkit@alfheim.net> contributed rsync support and desynced hosts.
-His changes will hopefully be included in an upcoming version.
-
-CompleteHOST, Inc. (http://www.completehost.com) funded the development of the
-following features:
- - Multiple, separate databases and configurations on one box.
- - Per-customer pricing (custom packages)
- - Internationalization wrt addresses (cust_main, cust_main_county)
-Thanks!
-
-Mark Williamson <mark.williamson@ebbs.com.au> and Roger Mangraviti
-<rem@atu.com.au> contributed state/provence listings for Australia.
-
-Peter Wemm <peter@netplex.com.au> sent in a bunch of bugfixes for the 1.2
-release.
-
-Greg Kuhnert <gregk@no1.com.au> sent some documentation updates.
-
-Joel Griffiths <griff@aver-computer.com> contribued many bugfixes as well as
-the print-batch script.
-
-NetLoud <http://www.netloud.com/> funded the development of the following
-features:
- - IEAK support for the signup server
- - Pre-payment support
-
-NetAcces.Net (not netaccess.net) funded the development of the following
-features:
- - DNS tracking and export to BIND configuration files
- - Web site virtual host tracking and export to Apache configuration files
-
-Kristian Hoffmann <khoff@pc-intouch.com> contributed Netscape CCK
-autoconfiguration support for the signup server, lots of great mailing
-lists posts which I shamelessly made into documentation, fixes to get rid of
-the embarassing and non-database-normal "owed" field, and many other things
-I'm forgetting. Most recently Kristian and Mark (last name?) contributed
-the IP address tracking and svc_broadband in 1.5.
-
-Jeff Finucane <jeff@cmh.net> send in a bunch of bugfixes (for the sendmail
-export, cancel-unaudited.cgi), patches to support billing date modification,
-and probably other things too (sorry if I forgot them). And yet even more
-bug squashing, thanks! *and* he single-handedly implemented all the necessary
-work to get rid of svc_acct_sm and the "default domain" thanks!! and rewrote
-the financials! wow, thanks jeff! and contributed financial reports!
-
-Kenny Elliott <kenny@neoserve.com> contributed ICRADIUS radreply table support,
-allowing attributes with ICRADIUS, helped fix many bugs, and some
-other stuff I can't recall (sorry).
-
-Stephen Amadei <amadei@dandy.net> contribued portability cleanups for the
-low-level DBI stuff.
-
-Jason Spence <thalakan@frys.com> contributed admin.html and other
-documentation, autocapnames javascript, bugfixes & other neat stuff I can't
-remember.
-
-Brad Dameron <bdameron@tscnet.com> contributed code to do configurable state
-and referral defaults.
-
-Surf and Sip, Inc., <http://www.surfandsip.com> sponsored a long-requested
-feature - the session monitor and time-based prepaid cards.
-Matt Peterson <matt@peterson.org> and Mack ? <mackn@mackn.net> tested
-the new features and contributed many bugfixes.
-
-Landel Telecom <http://www.landel.com/> sponsored shipping addresses and
-customer notes, as well as an update of the CP provisioning.
-
-nikotel, Inc. <http://www.nikojet.com> sponsored the inclusion of
-customer-to-customer referrals in the web interface and signup server.
-
-Three Bubba's Innanet <http://www.inna.net> sponsored expedited check entry,
-the "similar names warning" feature, and a number of other enhancements.
-
-Dave Burgess <burgess@neonramp.com> sent in a bunch of fixes and small changes
-and will doubtless send more once he's got his tree under control.
-
-Luke Pfeifer <freeside@globalli.com> contributed the "subscription" price plan.
-
-Noment Networks, LLC <http://www.noment.com/> sponsored ICRADIUS/FreeRADIUS
-groups, message catalogs, and signup server enhancements.
-
-Donald Greer <dgreer@austintx.com> provided the SQL to work around MySQL's lack
-of subqueries, and Dale Hege <fhege@lumenexus.net> provided the patches.
-Thanks!
-
-<baloo@gimpgirl.com> sent in several documentation patches.
-
-"Stephen Bechard" <steve@destek.net> sent in patches for svc_www services and
-other fixes.
-
-Charles A Beasley <cbeasley@noment.net> contributed quota editing for the
-Infostreet export.
-
-Richard Siddall <richard.siddall@elirion.net> sent in Mason fixes, fixed lots
-of typos, mod_perl 2.0 work, RPM packaging and other things I'm probably
-forgetting.
-
-Contains "JS Calendar" <http://dynarch.com/mishoo/calendar.epl>
-by Mihai Bazon <mishoo@infoiasi.ro> licensed under the terms of the GNU LGPL.
-
-Latex invoice template based on a template from eBills
-<http://ebills.sourceforge.net/> by Mark Asplen-Taylor <mark@asplen.co.uk>,
-licensed under the terms fo the GNU GPL.
-
-Contains "Request Tracker" <http://www.bestpractical.com/rt/> by Jesse
-Vincent <jesse@bestpractical.com> licensed under the terms of the GNU GPL.
-
-#not yet used...
-# Contains "SQL Ledger" <http://www.sql-ledger.com/> by DWS Systems Inc. and
-# contributors licensed under the terms of the GNU GPL.
-
-Peter Bowen <pbowen@aboutws.com> started the difficult modular price plans
-changes, added credit card encryption features, and other things I've
-probably overlooked.
-
-Rebecca Cardennis <http://www.shinza.org/> created the great new logo first
-released with 1.4.2beta1 and 1.5.0pre6.
-
-Troy Hammonds <troyh@netsignia.net> sent in RADIUS session history viewing,
-many bugfixes and other things I'm probably forgetting.
-
-Contains the QLIB JavaScript library <http://qlib.quazzle.com/> by
-Quazzle.com, Serge Dolgov, licensed under the terms of the GNU GPL.
-
-Contains the overlibmws DHTML Popup Library <http://www.macridesweb.com/oltest/>
-by Foteos Macrides (derived from overLIB <http://www.bosrup.com/web/overlib/>
-by Erik Bosrup), licensed under the terms of the Artistic license
-<http://www.macridesweb.com/oltest/license.html>.
-
-Ricardo SIGNES <rjbs+freeside-devel@icgroup.com> has contributed a bunch of
-patches to clean up and refactor various stuff in the module layer. Thanks!
-
-XMLHttpRequest implementation based on the SAJAX toolkit, licensed under the
-terms of the BSD license.
-(c) copyright 2005 modernmethod, inc
-Perl backend version (c) copyright 2005 Nathan Schmidt
-
-Scott Edwards <supadupa@gmail.com> contributed magic for XMLHTTP error
-handling, and other patches.
-
-Contains XMenu <http://webfx.eae.net/dhtml/xmenu/xmenu.html>
-by Erik Arvidsson, licensed under the terms of the GNU GPL.
-
-Contains public domain artwork from openclipart.org by mimooh and other
-authors.
-
-Everything else is my (Ivan Kohler <ivan@420.am>) fault.
-
diff --git a/Changelog b/Changelog
deleted file mode 100644
index 36c78e1..0000000
--- a/Changelog
+++ /dev/null
@@ -1,54 +0,0 @@
-- broadband (dsl/wireless) tracking, etc etc
-- Extended description on invoice for time/data charges
-- Multiple, named taxes
-- */*FIX
-- extended reported and graphing
-- integrated RT ticketing system
-- one-time payments (in signup server too). DCRD and DCHK on-demand payment types
-- credit report
-- reseller interface
-
-1.5.0pre6:
-- RADIUS session viewing
-- Major updates for reseller interface
-- Credit card and ACH refunds (w/supported processor module)
-- Proper email payment receipts (not invoice copies)
-- modular price plans, rewrote package add/edit page
-- fixed up tax report - should be correct for edge cases with named taxes,
- tax classes, etc.
-- Documentation updates
-
-1.5.7:
-- version numbering change, now even/odd like Perl or Linux
-- fix bug that could cause mis-billing on upgrades! (new installs ok)
-- updated install documentation
-- historical late notice viewing in web interface
-- VoIP billing for CDRs from RADIUS
-- promotional codes for signup
-- lots of RT integration, integrated RT upgraded to 3.2.2, preliminary RT
- add-on docs
-- one-time referral credits
-- invoices now use history records (don't lose details)
-- option to credit for remaining service upon package cancel/change
- (peter bowen)
-- one-time registration codes
-- "selfservice_server-session_module" config value can be set to
- "Cache::FileCache" on FreeBSD or elsewhere IPC::ShareLite has trouble.
-- package changes don't re-charge setup fee
-- per-agent payment and credit reports
-- CSV and Excel export of most reports, others to be migrated to new report template
-- prepaid card support updated: now includes a web generator, agent-specific
- prepaid cards, and creates *payments*, not credits
-- preliminary setup for Slony-1 PostgreSQL replication
-- reformatted latex invoice templates w/Text::Template (khoff) and removed
- some useless fields (quantity/unit price)
-- simplified upgrade instructions
-- add export to vpopmail SQL
-- html invoices
-- big self-service updates (recharge w/prepaid card, change info, more)
-- significant freeside-daily speedup
-
-notyet (1.5.8?):
-- account merging UI in exports (for example, to consolidate passwd files from
- multiple servers)
-
diff --git a/Changes.1.5.7 b/Changes.1.5.7
deleted file mode 100644
index 1407af6..0000000
--- a/Changes.1.5.7
+++ /dev/null
@@ -1,45 +0,0 @@
-Major new features and updates:
-- Version numbering has been simplified. 1.5.7 is the version after
- 1.5.0pre6. It is still a development version - releases with odd numbered
- middle parts (NN in x.NN.x) are development versions, like Perl or Linux.
-- VoIP rating and billing for CDRs from RADIUS
-- Lots of additions to the RT integration, integrated RT upgraded to 3.2.2,
- preliminary RT installation docs
-- Self-service updates (recharge w/prepaid card, change info, UI updates)
-
-Signup additions:
-- Prepaid card support updated: now includes a web generator and agent-specific
- prepaid cards
-- Promotional codes and one-time registration codes for signup, with
- agent-specific option
-
-Invoicing:
-- HTML formatting option for email invoices
-- Retypeset and reformatted latex invoice templates w/Text::Template
- (thanks to Kristian Hoffman)
-- Option to credit a package for the prorated remaining service upon cancel
- or change (thanks to Peter Bowen)
-- Web interface now includes ability to view all late notices as the customer
- sees them
-
-Reporting:
-- Per-agent payment and credit reports
-- New report template used for most reports includs CSV and Excel export.
- Remaining reports will shortly be migrated to the new template.
-
-Documentation updates:
-- Updated the install documentation
-- Simplified upgrade instructions
-
-Miscellaneous:
-- Added direct export to vpopmail SQL databases
-- Preliminary setup for Slony-1 PostgreSQL replication
-- "selfservice_server-session_module" config value can be set to
- "Cache::FileCache" on FreeBSD or elsewhere IPC::ShareLite has trouble.
-
-Bugfixes and optimizations:
-- Significant freeside-daily speedup
-- Fix bug that could cause mis-billing on upgrades! (new installs ok)
-- Invoices now use history records to retain account details
-- Package changes don't re-charge setup fee
-
diff --git a/Changes.1.5.8 b/Changes.1.5.8
deleted file mode 100644
index 6c6aeec..0000000
--- a/Changes.1.5.8
+++ /dev/null
@@ -1,43 +0,0 @@
-Major new features and updates since 1.5.7:
-- Added prepaid packages that set the RADIUS "Expiration" attribute and
- auto-suspend on their next bill date
-- Added banned card table and option to send customer cards there on
- cancel
-- Bulk svcpart change
-- Integrated RT upgraded to 3.4.4
-
-UI:
-- Re-did billing section of customer edit, should be much less confusing
-- Redo quick payment entry page with ajax magic
-- Redid account view and edit pages, add ability to edit uid/gid if conf
- options for it are turned on
-- cust-fields configuration value to control which customer fields are
- shown on reports
-- Moved account search (httemplate/search/svc_acct.cgi), cust_pkg search
- (httemplate/search/cust_pkg.cgi) and others to new template
-- add unlinked mail forward (svc_forward) report
-- Moved to XMLHttpRequest instead of hidden iframe transport for
- progress bar
-- Also use XMLHttpRequest for retreiving states rather than send a huge
- page for customer add/edit, much faster
-
-Resellers:
-- Added active/suspended/cancelled customer packages to agent browse
-
-Billing:
-- Added maximum "cap" options to RADIUS usage charges
-- Added support for maestro/switch/solo cards, including start date and
- issue number
-- Added agent/taxclass/card type-specific gateway overrides for people
- with multiple payment gateways for different resellers, taxclasses
- and/or card types
-- Explicit payment types for cash and (optionally) western union
-
-Reporting:
-- Tax report updated, per-agent option and most items now clickable
-
-Exports:
-- Added a Cpanel export
-- Added a native Radiator export
-- Added an export to everyone.net outsourced mail service
-
diff --git a/Changes.1.7.0 b/Changes.1.7.0
deleted file mode 100644
index d98273e..0000000
--- a/Changes.1.7.0
+++ /dev/null
@@ -1,55 +0,0 @@
-- tax report overhaul
-- package classes
-- UI overhaul. No more Apache::ASP support, HTML::Mason only
-- lots of CDR/telephony work
-- inventory classes and inventory (better description from directleap/specs.txt)
-- vonage click2call bs :)
-- zip code report
-- sales/credit/receipt summary report now has options for agent, 12mo cumulative totals
-- gross sales report/graph broken down by agent and package class
-- config switch to base tax off shipping address if present (warning: tax reports can take a long time with this switch on)
-- plesk provisioning
-- "inactive" package status
-- more options in package report (classes, etc.)
-and (now they're finally here)...
-- ACLs
-- Agent virtualization
- - customers etc.
- - most reports
- - just advertising sources in the config so far
-- percentage late fees in addition to flat
-- voip work
-- "referring customer #" ajax-ified
-- top search box updated some more
-- view/cust_main:
- - customer status and balance displayed up top
- - all the tables (tickets, packages, payment history) are grid-ified
- - payment history only shows N years of history with link to show more
- - simple payment actions are js popups
- - configurable statuses and # of tickets for ticket list
-- edit/cust_main:
- - magic ajax search box for referring customer
-
--------- some of the above, nicely:
-
-- Charge taxes based on shipping address if present. Note that tax
- reports can take a bit longer than they used to.
-
-- Per-agent A/R Aging
- - Bookeeping/Collections | Accounts Receivable Aging Summary
-
-- Per-agent Sales/Credit/Receipt Summary and "pre-selection" of agent
- and time period as you requested.
- - Bookeeping/Collections | Sales, Credits and Receipts Summary
-
-- Package classes
- - go to Sysadmin | View/Edit package classes and create some classes
- - go to Sysadmin | View/Edit package definitions, edit the existing
- package defs and put them into classes
-
-- The sales report you requested, broken down by agent and
- package class. This works fine right now, but it will show more
- information once you enter some package classes.
- - Bookeeping/Collections | Sales report (by agent, package class ...
-
---------
diff --git a/FS/Changes b/FS/Changes
deleted file mode 100644
index c94ef10..0000000
--- a/FS/Changes
+++ /dev/null
@@ -1,5 +0,0 @@
-Revision history for Perl extension FS.
-
-0.01 Wed Aug 4 00:13:45 1999
- - original version; created by h2xs 1.19
-
diff --git a/FS/FS.pm b/FS/FS.pm
deleted file mode 100644
index d8999ca..0000000
--- a/FS/FS.pm
+++ /dev/null
@@ -1,269 +0,0 @@
-package FS;
-
-use strict;
-use vars qw($VERSION);
-
-$VERSION = '%%%VERSION%%%';
-
-#find missing entries in this file with:
-# for a in `ls *pm | cut -d. -f1`; do grep 'L<FS::'$a'>' ../FS.pm >/dev/null || echo "missing $a" ; done
-
-1;
-__END__
-
-=head1 NAME
-
-FS - Freeside Perl modules
-
-=head1 SYNOPSIS
-
-Freeside perl modules and CLI utilities.
-
-=head2 Utility classes
-
-L<FS::Conf> - Freeside configuration values
-
-L<FS::ConfItem> - Freeside configuration option meta-data.
-
-L<FS::UID> - User class (not yet OO)
-
-L<FS::CGI> - Non OO-subroutines for the web interface.
-
-L<FS::Msgcat> - Message catalog
-
-L<FS::SearchCache> - Search cache
-
-L<FS::raddb> - RADIUS dictionary
-
-=head2 Database record classes
-
-L<FS::Record> - Database record base class
-
-L<FS::svc_acct_pop> - POP (Point of Presence, not Post
-Office Protocol) class
-
-L<FS::part_pop_local> - Local calling area class
-
-L<FS::part_referral> - Referral class
-
-L<FS::cust_main_county> - Locale (tax rate) class
-
-L<FS::cust_tax_exempt> - Tax exemption record class
-
-L<FS::svc_Common> - Service base class
-
-L<FS::svc_acct> - Account (shell, RADIUS, POP3) class
-
-L<FS::acct_snarf> - External mail account class
-
-L<FS::radius_usergroup> - RADIUS groups
-
-L<FS::svc_domain> - Domain class
-
-L<FS::domain_record> - DNS zone entries
-
-L<FS::svc_forward> - Mail forwarding class
-
-L<FS::svc_www> - Web virtual host class.
-
-L<FS::svc_broadband> - DSL, wireless and other broadband class.
-
-L<FS::svc_external> - Externally tracked service class.
-
-L<FS::part_svc> - Service definition class
-
-L<FS::part_svc_column> - Column constraint class
-
-L<FS::export_svc> - Class linking service definitions (see L<FS::part_svc>)
-with exports (see L<FS::part_export>)
-
-L<FS::part_export> - External provisioning export class
-
-L<FS::part_export_option> - Export option class
-
-L<FS::part_pkg> - Package definition class
-
-L<FS::part_pkg_option> - Package definition option class
-
-L<FS::pkg_svc> - Class linking package definitions (see L<FS::part_pkg>) with
-service definitions (see L<FS::part_svc>)
-
-L<FS::reg_code> - One-time registration codes
-
-L<FS::reg_code_pkg> - Class linking registration codes (see L<FS::reg_code>) with package definitions (see L<FS::part_pkg>)
-
-L<FS::rate> - Rate plans for call billing
-
-L<FS::rate_region> - Rate regions for call billing
-
-L<FS::rate_prefix> - Rate region prefixes for call billing
-
-L<FS::rate_detail> - Rate plan detail for call billing
-
-L<FS::agent> - Agent (reseller) class
-
-L<FS::agent_type> - Agent type class
-
-L<FS::type_pkgs> - Class linking agent types (see L<FS::agent_type>) with
-package definitions (see L<FS::part_pkg>)
-
-L<FS::cust_svc> - Service class
-
-L<FS::cust_pkg> - Customer package class
-
-L<FS::cust_main> - Customer class
-
-L<FS::cust_main_invoice> - Invoice destination
-class
-
-L<FS::cust_bill> - Invoice class
-
-L<FS::cust_bill_pkg> - Invoice line item class
-
-L<FS::cust_bill_pkg_detail> - Invoice line item detail class
-
-L<FS::part_bill_event> - Invoice event definition class
-
-L<FS::cust_bill_event> - Completed invoice event class
-
-L<FS::cust_pay> - Payment class
-
-L<FS::cust_pay_void> - Voided payment class
-
-L<FS::cust_bill_pay> - Payment application class
-
-L<FS::cust_credit> - Credit class
-
-L<FS::cust_refund> - Refund class
-
-L<FS::cust_credit_refund> - Refund application to credit class
-
-L<FS::cust_credit_bill> - Credit application to invoice class
-
-L<FS::cust_pay_refund> - Refund application to payment class
-
-L<FS::pay_batch> - Credit card transaction queue class
-
-L<FS::cust_pay_batch> - Credit card transaction member queue class
-
-L<FS::prepay_credit> - Prepaid "calling card" credit class.
-
-L<FS::nas> - Network Access Server class
-
-L<FS::port> - NAS port class
-
-L<FS::session> - User login session class
-
-L<FS::queue> - Job queue
-
-L<FS::queue_arg> - Job arguments
-
-L<FS::queue_depend> - Job dependencies
-
-L<FS::msgcat> - Message catalogs
-
-L<FS::clientapi_session>
-
-L<FS::clientapi_session_field>
-
-=head1 Client API
-
-L<FS::ClientAPI>
-
-L<FS::ClientAPI_SessionCache>
-
-L<FS::ClientAPI::Signup>
-
-L<FS::ClientAPI::passwd>
-
-L<FS::ClientAPI::MyAccount>
-
-L<FS::ClientAPI::Agent>
-
-=head1 Remote API modules
-
-L<FS::SelfService>
-
-L<FS::SignupClient>
-
-L<FS::SessionClient>
-
-L<FS::MailAdminServer> (deprecated in favor of the self-service server)
-
-=head2 Command-line utilities
-
-L<freeside-adduser>
-
-L<freeside-queued>
-
-L<freeside-daily>
-
-L<freeside-expiration-alerter>
-
-L<freeside-email>
-
-L<freeside-cc-receipts-report>
-
-L<freeside-credit-report>
-
-L<freeside-receivables-report>
-
-L<freeside-tax-report>
-
-L<freeside-bill>
-
-L<freeside-overdue>
-
-=head2 User Interface classes
-
-L<FS::UI::Web> - Web user-interface class
-
-=head2 Notes
-
-To quote perl(1), "If you're intending to read these straight through for the
-first time, the suggested order will tend to reduce the number of forward
-references."
-
-If you've never used OO modules before,
-http://www.perl.com/doc/FMTEYEWTK/easy_objects.html might help you out.
-
-=head1 DESCRIPTION
-
-Freeside is a billing and administration package for Internet Service
-Providers.
-
-The Freeside home page is at <http://www.sisd.com/freeside>.
-
-The main documentation is in httemplate/docs.
-
-=head1 SUPPORT
-
-A mailing list for users is available. Send a blank message to
-<freeside-users-subscribe@sisd.com> to subscribe.
-
-A mailing list for developers is available. It is intended to be lower volume
-and higher SNR than the users list. Send a blank message to
-<freeside-devel-subscribe@sisd.com> to subscribe.
-
-Commercial support is available; see
-<http://www.sisd.com/freeside/commercial.html>.
-
-=head1 AUTHOR
-
-Primarily Ivan Kohler <ivan@sisd.com>, with help from many kind folks.
-
-See the CREDITS file in the Freeside distribution for a (hopefully) complete
-list and the individal files for details.
-
-=head1 SEE ALSO
-
-perl(1), main Freeside documentation in htdocs/docs/
-
-=head1 BUGS
-
-Those modules which would be useful separately should be pulled out,
-renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH
-and Net::SCP...
-
-=cut
-
diff --git a/FS/FS/AccessRight.pm b/FS/FS/AccessRight.pm
deleted file mode 100644
index d03b79a..0000000
--- a/FS/FS/AccessRight.pm
+++ /dev/null
@@ -1,150 +0,0 @@
-package FS::AccessRight;
-
-use strict;
-use vars qw(@rights); # %rights);
-use Tie::IxHash;
-
-=head1 NAME
-
-FS::AccessRight - Access control rights.
-
-=head1 SYNOPSIS
-
- use FS::AccessRight;
-
-=head1 DESCRIPTION
-
-Access control rights - Permission to perform specific actions that can be
-assigned to users and/or groups.
-
-=cut
-
-#@rights = (
-# 'Reports' => [
-# '_desc' => 'Access to high-level reporting',
-# ],
-# 'Configuration' => [
-# '_desc' => 'Access to configuration',
-#
-# 'Settings' => {},
-#
-# 'agent' => [
-# '_desc' => 'Master access to reseller configuration',
-# 'agent_type' => {},
-# 'agent' => {},
-# ],
-#
-# 'export_svc_pkg' => [
-# '_desc' => 'Access to export, service and package configuration',
-# 'part_export' => {},
-# 'part_svc' => {},
-# 'part_pkg' => {},
-# 'pkg_class' => {},
-# ],
-#
-# 'billing' => [
-# '_desc' => 'Access to billing configuration',
-# 'payment_gateway' => {},
-# 'part_bill_event' => {},
-# 'prepay_credit' => {},
-# 'rate' => {},
-# 'cust_main_county' => {},
-# ],
-#
-# 'dialup' => [
-# '_desc' => 'Access to dialup configuraiton',
-# 'svc_acct_pop' => {},
-# ],
-#
-# 'broadband' => [
-# '_desc' => 'Access to broadband configuration',
-# 'router' => {},
-# 'addr_block' => {},
-# ],
-#
-# 'misc' => [
-# 'part_referral' => {},
-# 'part_virtual_field' => {},
-# 'msgcat' => {},
-# 'inventory_class' => {},
-# ],
-#
-# },
-#
-#);
-#
-##turn it into a more hash-like structure, but ordered via IxHash
-
-#well, this is what we have for now. could be ordered better, could be lots of
-# things better, but this ACL system does 99% of what folks need and the UI
-# isn't *that* bad
-@rights = (
- 'New customer',
- 'View customer',
- #'View Customer | View tickets',
- 'Edit customer',
- 'Cancel customer',
- 'Complimentary customer', #aka users-allow_comp
- 'Delete customer', #aka. deletecustomers #Enable customer deletions. Be very careful! Deleting a customer will remove all traces that this customer ever existed! It should probably only be used when auditing a legacy database. Normally, you cancel all of a customers' packages if they cancel service.
-
- 'Order customer package',
- 'One-time charge',
- 'Change customer package',
- 'Bulk change customer packages',
- 'Edit customer package dates',
- 'Customize customer package',
- 'Suspend customer package',
- 'Unsuspend customer package',
- 'Cancel customer package immediately',
- 'Cancel customer package later',
-
- 'Provision customer service',
- 'Unprovision customer service',
-
- 'View/link unlinked services', #not agent-virtualizable without more work
-
- 'View invoices',
-
- 'Post payment',
- 'Post payment batch',
- 'Unapply payment', #aka. unapplypayments Enable "unapplication" of unclosed payments.
- 'Process payment',
- 'Refund payment',
-
- 'Delete payment', #aka. deletepayments - Enable deletion of unclosed payments. Be very careful! Only delete payments that were data-entry errors, not adjustments. Optionally specify one or more comma-separated email addresses to be notified when a payment is deleted.
-
- 'Post credit',
- #'Apply credit',
- 'Unapply credit', #aka unapplycredits Enable "unapplication" of unclosed credits.
- 'Delete credit', #aka. deletecredits Enable deletion of unclosed credits. Be very careful! Only delete credits that were data-entry errors, not adjustments. Optionally specify one or more comma-separated email addresses to be notified when a credit is deleted.
-
- 'Credit card void', #aka. cc-void #Enable local-only voiding of echeck payments in addition to refunds against the payment gateway
- 'Echeck void', #aka. echeck-void #Enable local-only voiding of echeck payments in addition to refunds against the payment gateway
- 'Regular void',
- 'Unvoid', #aka. unvoid #Enable unvoiding of voided payments
-
- 'List customers',
- #'List zip codes',
- 'List invoices',
- 'List packages',
- 'List services',
-
- 'List rating data',
-
- 'Financial reports',
-
- 'Job queue', # these are not currently agent-virtualized
- 'Import', #
- 'Export', #
-
- 'Edit advertising sources',
- 'Edit global advertising sources',
-
- 'Configuration', #most of the rest of the configuraiton is not
- # agent-virtualized
-);
-
-sub rights {
- @rights;
-}
-
diff --git a/FS/FS/CGI.pm b/FS/FS/CGI.pm
deleted file mode 100644
index 1f3b59e..0000000
--- a/FS/FS/CGI.pm
+++ /dev/null
@@ -1,422 +0,0 @@
-package FS::CGI;
-
-use strict;
-use vars qw(@EXPORT_OK @ISA);
-use Exporter;
-use CGI;
-use URI::URL;
-#use CGI::Carp qw(fatalsToBrowser);
-use FS::UID;
-
-@ISA = qw(Exporter);
-@EXPORT_OK = qw(header menubar idiot eidiot popurl rooturl table itable ntable
- small_custview myexit http_header);
-
-=head1 NAME
-
-FS::CGI - Subroutines for the web interface
-
-=head1 SYNOPSIS
-
- use FS::CGI qw(header menubar idiot eidiot popurl);
-
- print header( 'Title', '' );
- print header( 'Title', menubar('item', 'URL', ... ) );
-
- idiot "error message";
- eidiot "error message";
-
- $url = popurl; #returns current url
- $url = popurl(3); #three levels up
-
-=head1 DESCRIPTION
-
-Provides a few common subroutines for the web interface.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item header TITLE, MENUBAR
-
-Returns an HTML header.
-
-=cut
-
-sub header {
- use Carp;
- carp 'FS::CGI::header deprecated; include /elements/header.html instead';
-
- my($title,$menubar,$etc)=@_; #$etc is for things like onLoad= etc.
- $etc = '' unless defined $etc;
-
- my $x = <<END;
- <HTML>
- <HEAD>
- <TITLE>
- $title
- </TITLE>
- <META HTTP-Equiv="Cache-Control" Content="no-cache">
- <META HTTP-Equiv="Pragma" Content="no-cache">
- <META HTTP-Equiv="Expires" Content="0">
- </HEAD>
- <BODY BGCOLOR="#e8e8e8"$etc>
- <FONT SIZE=6>
- <CENTER>$title</CENTER>
- </FONT>
- <BR><!--<BR>-->
-END
- $x .= $menubar. "<BR><BR>" if $menubar;
- $x;
-}
-
-=item http_header
-
-Sets an http header.
-
-=cut
-
-sub http_header {
- my ( $header, $value ) = @_;
- if (exists $ENV{MOD_PERL}) {
- if ( defined $main::Response
- && $main::Response->isa('Apache::ASP::Response') ) { #Apache::ASP
- if ( $header =~ /^Content-Type$/ ) {
- $main::Response->{ContentType} = $value;
- } else {
- $main::Response->AddHeader( $header => $value );
- }
- } elsif ( defined $HTML::Mason::Commands::r ) { #Mason
- ## is this the correct pacakge for $r ??? for 1.0x and 1.1x ?
- if ( $header =~ /^Content-Type$/ ) {
- $HTML::Mason::Commands::r->content_type($value);
- } else {
- $HTML::Mason::Commands::r->header_out( $header => $value );
- }
- } else {
- die "http_header called in unknown environment";
- }
- } else {
- die "http_header called not running under mod_perl";
- }
-
-}
-
-=item menubar ITEM, URL, ...
-
-Returns an HTML menubar.
-
-=cut
-
-sub menubar { #$menubar=menubar('Main Menu', '../', 'Item', 'url', ... );
- use Carp;
- carp 'FS::CGI::menubar deprecated; include /elements/menubar.html instead';
-
- my($item,$url,@html);
- while (@_) {
- ($item,$url)=splice(@_,0,2);
- next if $item =~ /^\s*Main\s+Menu\s*$/i;
- push @html, qq!<A HREF="$url">$item</A>!;
- }
- join(' | ',@html);
-}
-
-=item idiot ERROR
-
-This is depriciated. Don't use it.
-
-Sends an HTML error message.
-
-=cut
-
-sub idiot {
- #warn "idiot depriciated";
- my($error)=@_;
-# my $cgi = &FS::UID::cgi();
-# if ( $cgi->isa('CGI::Base') ) {
-# no strict 'subs';
-# &CGI::Base::SendHeaders;
-# } else {
-# print $cgi->header( @FS::CGI::header );
-# }
- print <<END;
-<HTML>
- <HEAD>
- <TITLE>Error processing your request</TITLE>
- <META HTTP-Equiv="Cache-Control" Content="no-cache">
- <META HTTP-Equiv="Pragma" Content="no-cache">
- <META HTTP-Equiv="Expires" Content="0">
- </HEAD>
- <BODY>
- <CENTER>
- <H4>Error processing your request</H4>
- </CENTER>
- Your request could not be processed because of the following error:
- <P><B>$error</B>
- </BODY>
-</HTML>
-END
-
-}
-
-=item eidiot ERROR
-
-This is depriciated. Don't use it.
-
-Sends an HTML error message, then exits.
-
-=cut
-
-sub eidiot {
- warn "eidiot depriciated";
- $HTML::Mason::Commands::r->send_http_header
- if defined $HTML::Mason::Commands::r;
- idiot(@_);
- &myexit();
-}
-
-=item myexit
-
-You probably shouldn't use this; but if you must:
-
-If running under mod_perl, calles Apache::exit, otherwise, calls exit.
-
-=cut
-
-sub myexit {
- if (exists $ENV{MOD_PERL}) {
-
- if ( defined $main::Response
- && $main::Response->isa('Apache::ASP::Response') ) { #Apache::ASP
- $main::Response->End();
- require Apache;
- Apache::exit();
- } elsif ( defined $HTML::Mason::Commands::m ) { #Mason
- #$HTML::Mason::Commands::m->flush_buffer();
- $HTML::Mason::Commands::m->abort();
- die "shouldn't fall through to here (mason \$m->abort didn't)";
- } else {
- #??? well, it is $ENV{MOD_PERL}
- warn "running under unknown mod_perl environment; trying Apache::exit()";
- require Apache;
- Apache::exit();
- }
- } else {
- exit;
- }
-}
-
-=item popurl LEVEL
-
-Returns current URL with LEVEL levels of path removed from the end (default 0).
-
-=cut
-
-sub popurl {
- my($up)=@_;
- my $cgi = &FS::UID::cgi;
- my $url_string = $cgi->isa('Apache') ? $cgi->uri : $cgi->url;
- $url_string =~ s/\?.*//;
- my $url = new URI::URL ( $url_string );
- my(@path)=$url->path_components;
- splice @path, 0-$up;
- $url->path_components(@path);
- my $x = $url->as_string;
- $x .= '/' unless $x =~ /\/$/;
- $x;
-}
-
-=item rooturl
-
-=cut
-
-sub rooturl {
- # better to start with the client-provided URL
- my $cgi = &FS::UID::cgi;
- my $url_string = $cgi->isa('Apache') ? $cgi->uri : $cgi->url;
- $url_string =~ s/\?.*//;
-
- #even though this is kludgy
- $url_string =~
- s{
- (browse|config|docs|edit|graph|misc|search|view)
- /
- (process/)?
- ([\w\-\.]+)
- $
- }
- {}x;
-
- $url_string;
-
-}
-
-=item table
-
-Returns HTML tag for beginning a table.
-
-=cut
-
-sub table {
- use Carp;
- carp 'FS::CGI::table deprecated; include /elements/table.html instead';
-
- my $col = shift;
- if ( $col ) {
- qq!<TABLE BGCOLOR="$col" BORDER=1 WIDTH="100%" CELLSPACING=0 CELLPADDING=2 BORDERCOLOR="#999999">!;
- } else {
- '<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=2 BORDERCOLOR="#999999">';
- }
-}
-
-=item itable
-
-Returns HTML tag for beginning an (invisible) table.
-
-=cut
-
-sub itable {
- my $col = shift;
- my $cellspacing = shift || 0;
- my $width = ( scalar(@_) && shift ) ? '' : 'WIDTH="100%"'; #bah
- if ( $col ) {
- qq!<TABLE BGCOLOR="$col" BORDER=0 CELLSPACING=$cellspacing $width>!;
- } else {
- qq!<TABLE BORDER=0 CELLSPACING=$cellspacing $width>!;
- }
-}
-
-=item ntable
-
-This is getting silly.
-
-=cut
-
-sub ntable {
- my $col = shift;
- my $cellspacing = shift || 0;
- if ( $col ) {
- qq!<TABLE BGCOLOR="$col" BORDER=0 CELLSPACING=$cellspacing>!;
- } else {
- '<TABLE BORDER CELLSPACING=0 CELLPADDING=2 BORDERCOLOR="#999999">';
- }
-
-}
-
-=item small_custview CUSTNUM || CUST_MAIN_OBJECT, COUNTRYDEFAULT, NOBALANCE_FLAG
-
-Sheesh. I should just switch to Mason.
-
-=cut
-
-sub small_custview {
- use FS::Record qw(qsearchs);
- use FS::cust_main;
-
- my $arg = shift;
- my $countrydefault = shift || 'US';
- my $nobalance = shift;
-
- my $cust_main = ref($arg) ? $arg
- : qsearchs('cust_main', { 'custnum' => $arg } )
- or die "unknown custnum $arg";
-
- my $html = 'Customer #<B>'. $cust_main->custnum. '</B></A>'.
- ' - <B><FONT COLOR="'. $cust_main->statuscolor. '">'.
- ucfirst($cust_main->status). '</FONT></B>'.
- ntable('#e8e8e8'). '<TR><TD VALIGN="top">'. ntable("#cccccc",2).
- '<TR><TD ALIGN="right" VALIGN="top">Billing<BR>Address</TD><TD BGCOLOR="#ffffff">'.
- $cust_main->getfield('last'). ', '. $cust_main->first. '<BR>';
-
- $html .= $cust_main->company. '<BR>' if $cust_main->company;
- $html .= $cust_main->address1. '<BR>';
- $html .= $cust_main->address2. '<BR>' if $cust_main->address2;
- $html .= $cust_main->city. ', '. $cust_main->state. ' '. $cust_main->zip. '<BR>';
- $html .= $cust_main->country. '<BR>'
- if $cust_main->country && $cust_main->country ne $countrydefault;
-
- $html .= '</TD></TR><TR><TD></TD><TD BGCOLOR="#ffffff">';
- if ( $cust_main->daytime && $cust_main->night ) {
- use FS::Msgcat;
- $html .= ( FS::Msgcat::_gettext('daytime') || 'Day' ).
- ' '. $cust_main->daytime.
- '<BR>'. ( FS::Msgcat::_gettext('night') || 'Night' ).
- ' '. $cust_main->night;
- } elsif ( $cust_main->daytime || $cust_main->night ) {
- $html .= $cust_main->daytime || $cust_main->night;
- }
- if ( $cust_main->fax ) {
- $html .= '<BR>Fax '. $cust_main->fax;
- }
-
- $html .= '</TD></TR></TABLE></TD>';
-
- if ( defined $cust_main->dbdef_table->column('ship_last') ) {
-
- my $pre = $cust_main->ship_last ? 'ship_' : '';
-
- $html .= '<TD VALIGN="top">'. ntable("#cccccc",2).
- '<TR><TD ALIGN="right" VALIGN="top">Service<BR>Address</TD><TD BGCOLOR="#ffffff">'.
- $cust_main->get("${pre}last"). ', '.
- $cust_main->get("${pre}first"). '<BR>';
- $html .= $cust_main->get("${pre}company"). '<BR>'
- if $cust_main->get("${pre}company");
- $html .= $cust_main->get("${pre}address1"). '<BR>';
- $html .= $cust_main->get("${pre}address2"). '<BR>'
- if $cust_main->get("${pre}address2");
- $html .= $cust_main->get("${pre}city"). ', '.
- $cust_main->get("${pre}state"). ' '.
- $cust_main->get("${pre}ship_zip"). '<BR>';
- $html .= $cust_main->get("${pre}country"). '<BR>'
- if $cust_main->get("${pre}country")
- && $cust_main->get("${pre}country") ne $countrydefault;
-
- $html .= '</TD></TR><TR><TD></TD><TD BGCOLOR="#ffffff">';
-
- if ( $cust_main->get("${pre}daytime") && $cust_main->get("${pre}night") ) {
- use FS::Msgcat;
- $html .= ( FS::Msgcat::_gettext('daytime') || 'Day' ).
- ' '. $cust_main->get("${pre}daytime").
- '<BR>'. ( FS::Msgcat::_gettext('night') || 'Night' ).
- ' '. $cust_main->get("${pre}night");
- } elsif ( $cust_main->get("${pre}daytime")
- || $cust_main->get("${pre}night") ) {
- $html .= $cust_main->get("${pre}daytime")
- || $cust_main->get("${pre}night");
- }
- if ( $cust_main->get("${pre}fax") ) {
- $html .= '<BR>Fax '. $cust_main->get("${pre}fax");
- }
-
- $html .= '</TD></TR></TABLE></TD>';
- }
-
- $html .= '</TR></TABLE>';
-
- $html .= '<BR>Balance: <B>$'. $cust_main->balance. '</B><BR>'
- unless $nobalance;
-
- # last payment might be good here too?
-
- $html;
-}
-
-=back
-
-=head1 BUGS
-
-Not OO.
-
-Not complete.
-
-small_custview sooooo doesn't belong here. i should just switch to Mason.
-
-=head1 SEE ALSO
-
-L<CGI>, L<CGI::Base>
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/ClientAPI.pm b/FS/FS/ClientAPI.pm
deleted file mode 100644
index 902f58b..0000000
--- a/FS/FS/ClientAPI.pm
+++ /dev/null
@@ -1,37 +0,0 @@
-package FS::ClientAPI;
-
-use strict;
-use vars qw(%handler $domain $DEBUG);
-
-$DEBUG = 0;
-
-%handler = ();
-
-#find modules
-foreach my $INC ( @INC ) {
- my $glob = "$INC/FS/ClientAPI/*.pm";
- warn "FS::ClientAPI: searching $glob" if $DEBUG;
- foreach my $file ( glob($glob) ) {
- $file =~ /\/(\w+)\.pm$/ or do {
- warn "unrecognized ClientAPI file: $file";
- next
- };
- my $mod = $1;
- warn "using FS::ClientAPI::$mod" if $DEBUG;
- eval "use FS::ClientAPI::$mod;";
- die "error using FS::ClientAPI::$mod: $@" if $@;
- }
-}
-
-#---
-
-sub dispatch {
- my ( $self, $name ) = ( shift, shift );
- $name =~ s(/)(::)g;
- my $sub = "FS::ClientAPI::$name";
- no strict 'refs';
- &{$sub}(@_);
-}
-
-1;
-
diff --git a/FS/FS/ClientAPI/Agent.pm b/FS/FS/ClientAPI/Agent.pm
deleted file mode 100644
index daede59..0000000
--- a/FS/FS/ClientAPI/Agent.pm
+++ /dev/null
@@ -1,125 +0,0 @@
-package FS::ClientAPI::Agent;
-
-#some false laziness w/MyAccount
-
-use strict;
-use vars qw($cache);
-use subs qw(_cache);
-use Digest::MD5 qw(md5_hex);
-use FS::Record qw(qsearchs); # qsearch dbdef dbh);
-use FS::ClientAPI_SessionCache;
-use FS::agent;
-use FS::cust_main qw(smart_search);
-
-sub _cache {
- $cache ||= new FS::ClientAPI_SessionCache( {
- 'namespace' => 'FS::ClientAPI::Agent',
- } );
-}
-
-sub agent_login {
- my $p = shift;
-
- #don't allow a blank login to first unconfigured agent with no user/pass
- return { error => 'Must specify your reseller username and password.' }
- unless length($p->{'username'}) && length($p->{'password'});
-
- my $agent = qsearchs( 'agent', {
- 'username' => $p->{'username'},
- '_password' => $p->{'password'},
- } );
-
- unless ( $agent ) { return { error => 'Incorrect password.' } }
-
- my $session = {
- 'agentnum' => $agent->agentnum,
- 'agent' => $agent->agent,
- };
-
- my $session_id;
- do {
- $session_id = md5_hex(md5_hex(time(). {}. rand(). $$))
- } until ( ! defined _cache->get($session_id) ); #just in case
-
- _cache->set( $session_id, $session, '1 hour' );
-
- { 'error' => '',
- 'session_id' => $session_id,
- };
-}
-
-sub agent_logout {
- my $p = shift;
- if ( $p->{'session_id'} ) {
- _cache->remove($p->{'session_id'});
- return { 'error' => '' };
- } else {
- return { 'error' => "Can't resume session" }; #better error message
- }
-}
-
-sub agent_info {
- my $p = shift;
-
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- #my %return;
-
- my $agentnum = $session->{'agentnum'};
-
- my $agent = qsearchs( 'agent', { 'agentnum' => $agentnum } )
- or return { 'error' => "unknown agentnum $agentnum" };
-
- { 'error' => '',
- 'agentnum' => $agentnum,
- 'agent' => $agent->agent,
- 'num_prospect' => $agent->num_prospect_cust_main,
- 'num_active' => $agent->num_active_cust_main,
- 'num_susp' => $agent->num_susp_cust_main,
- 'num_cancel' => $agent->num_cancel_cust_main,
- #%return,
- };
-
-}
-
-sub agent_list_customers {
- my $p = shift;
-
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- #my %return;
-
- my $agentnum = $session->{'agentnum'};
-
- my $agent = qsearchs( 'agent', { 'agentnum' => $agentnum } )
- or return { 'error' => "unknown agentnum $agentnum" };
-
- my @cust_main = smart_search( 'search' => $p->{'search'},
- 'agentnum' => $agentnum,
- );
-
- #aggregate searches
- push @cust_main,
- map $agent->$_(), map $_.'_cust_main',
- grep $p->{$_}, qw( prospect active susp cancel );
-
- #eliminate dups?
- my %saw = ();
- @cust_main = grep { !$saw{$_->custnum}++ } @cust_main;
-
- { customers => [ map {
- my $cust_main = $_;
- my $hashref = $cust_main->hashref;
- $hashref->{$_} = $cust_main->$_()
- foreach qw(name status statuscolor);
- delete $hashref->{$_} foreach qw( payinfo paycvv );
- $hashref;
- } @cust_main
- ],
- }
-
-}
-
-1;
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
deleted file mode 100644
index 54b8a99..0000000
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ /dev/null
@@ -1,918 +0,0 @@
-package FS::ClientAPI::MyAccount;
-
-use strict;
-use vars qw($cache);
-use subs qw(_cache);
-use Digest::MD5 qw(md5_hex);
-use Date::Format;
-use Business::CreditCard;
-use Time::Duration;
-use FS::CGI qw(small_custview); #doh
-use FS::Conf;
-use FS::Record qw(qsearch qsearchs);
-use FS::Msgcat qw(gettext);
-use FS::ClientAPI_SessionCache;
-use FS::svc_acct;
-use FS::svc_domain;
-use FS::svc_external;
-use FS::part_svc;
-use FS::cust_main;
-use FS::cust_bill;
-use FS::cust_main_county;
-use FS::cust_pkg;
-
-use vars qw( @cust_main_editable_fields );
-@cust_main_editable_fields = qw(
- first last company address1 address2 city
- county state zip country daytime night fax
- ship_first ship_last ship_company ship_address1 ship_address2 ship_city
- ship_state ship_zip ship_country ship_daytime ship_night ship_fax
- payby payinfo payname paystart_month paystart_year payissue payip
-);
-
-use subs qw(_provision);
-
-sub _cache {
- $cache ||= new FS::ClientAPI_SessionCache( {
- 'namespace' => 'FS::ClientAPI::MyAccount',
- } );
-}
-
-#false laziness w/FS::ClientAPI::passwd::passwd
-sub login {
- my $p = shift;
-
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $p->{'domain'} } )
- or return { error => 'Domain '. $p->{'domain'}. ' not found' };
-
- my $svc_acct = qsearchs( 'svc_acct', { 'username' => $p->{'username'},
- 'domsvc' => $svc_domain->svcnum, }
- );
- return { error => 'User not found.' } unless $svc_acct;
-
- my $conf = new FS::Conf;
- my $pkg_svc = $svc_acct->cust_svc->pkg_svc;
- return { error => 'Only primary user may log in.' }
- if $conf->exists('selfservice_server-primary_only')
- && ( ! $pkg_svc || $pkg_svc->primary_svc ne 'Y' );
-
- return { error => 'Incorrect password.' }
- unless $svc_acct->check_password($p->{'password'});
-
- my $session = {
- 'svcnum' => $svc_acct->svcnum,
- };
-
- my $cust_pkg = $svc_acct->cust_svc->cust_pkg;
- if ( $cust_pkg ) {
- my $cust_main = $cust_pkg->cust_main;
- $session->{'custnum'} = $cust_main->custnum;
- }
-
- my $session_id;
- do {
- $session_id = md5_hex(md5_hex(time(). {}. rand(). $$))
- } until ( ! defined _cache->get($session_id) ); #just in case
-
- _cache->set( $session_id, $session, '1 hour' );
-
- return { 'error' => '',
- 'session_id' => $session_id,
- };
-}
-
-sub logout {
- my $p = shift;
- if ( $p->{'session_id'} ) {
- _cache->remove($p->{'session_id'});
- return { 'error' => '' };
- } else {
- return { 'error' => "Can't resume session" }; #better error message
- }
-}
-
-sub customer_info {
- my $p = shift;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my %return;
- if ( $custnum ) { #customer record
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- $return{balance} = $cust_main->balance;
-
- my @open = map {
- {
- invnum => $_->invnum,
- date => time2str("%b %o, %Y", $_->_date),
- owed => $_->owed,
- };
- } $cust_main->open_cust_bill;
- $return{open_invoices} = \@open;
-
- my $conf = new FS::Conf;
- $return{small_custview} =
- small_custview( $cust_main, $conf->config('countrydefault') );
-
- $return{name} = $cust_main->first. ' '. $cust_main->get('last');
-
- for (@cust_main_editable_fields) {
- $return{$_} = $cust_main->get($_);
- }
-
- if ( $cust_main->payby =~ /^(CARD|DCRD)$/ ) {
- $return{payinfo} = $cust_main->payinfo_masked;
- @return{'month', 'year'} = $cust_main->paydate_monthyear;
- }
-
- $return{'invoicing_list'} =
- join(', ', grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list );
- $return{'postal_invoicing'} =
- 0 < ( grep { $_ eq 'POST' } $cust_main->invoicing_list );
-
- } elsif ( $session->{'svcnum'} ) { #no customer record
-
- my $svc_acct = qsearchs('svc_acct', { 'svcnum' => $session->{'svcnum'} } )
- or die "unknown svcnum";
- $return{name} = $svc_acct->email;
-
- } else {
-
- return { 'error' => 'Expired session' }; #XXX redirect to login w/this err!
-
- }
-
- return { 'error' => '',
- 'custnum' => $custnum,
- %return,
- };
-
-}
-
-sub edit_info {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my $custnum = $session->{'custnum'}
- or return { 'error' => "no customer record" };
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- my $new = new FS::cust_main { $cust_main->hash };
- $new->set( $_ => $p->{$_} )
- foreach grep { exists $p->{$_} } @cust_main_editable_fields;
-
- if ( $p->{'payby'} =~ /^(CARD|DCRD)$/ ) {
- $new->paydate($p->{'year'}. '-'. $p->{'month'}. '-01');
- if ( $new->payinfo eq $cust_main->payinfo_masked ) {
- $new->payinfo($cust_main->payinfo);
- } else {
- $new->paycvv($p->{'paycvv'});
- }
- }
-
- my @invoicing_list;
- if ( exists $p->{'invoicing_list'} || exists $p->{'postal_invoicing'} ) {
- #false laziness with httemplate/edit/process/cust_main.cgi
- @invoicing_list = split( /\s*\,\s*/, $p->{'invoicing_list'} );
- push @invoicing_list, 'POST' if $p->{'postal_invoicing'};
- } else {
- @invoicing_list = $cust_main->invoicing_list;
- }
-
- my $error = $new->replace($cust_main, \@invoicing_list);
- return { 'error' => $error } if $error;
- #$cust_main = $new;
-
- return { 'error' => '' };
-}
-
-sub payment_info {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- ##
- #generic
- ##
-
- my $conf = new FS::Conf;
- my %states = map { $_->state => 1 }
- qsearch('cust_main_county', {
- 'country' => $conf->config('countrydefault') || 'US'
- } );
-
- use vars qw($payment_info); #cache for performance
- $payment_info ||= {
-
- #list all counties/states/countries
- 'cust_main_county' =>
- [ map { $_->hashref } qsearch('cust_main_county', {}) ],
-
- #shortcut for one-country folks
- 'states' =>
- [ sort { $a cmp $b } keys %states ],
-
- 'card_types' => {
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- 'Switch' => 'Switch',
- 'Solo' => 'Solo',
- },
-
- };
-
- ##
- #customer-specific
- ##
-
- my %return = %$payment_info;
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- $return{balance} = $cust_main->balance;
-
- $return{payname} = $cust_main->payname
- || ( $cust_main->first. ' '. $cust_main->get('last') );
-
- $return{$_} = $cust_main->get($_) for qw(address1 address2 city state zip);
-
- $return{payby} = $cust_main->payby;
-
- if ( $cust_main->payby =~ /^(CARD|DCRD)$/ ) {
- #warn $return{card_type} = cardtype($cust_main->payinfo);
- $return{payinfo} = $cust_main->payinfo;
-
- @return{'month', 'year'} = $cust_main->paydate_monthyear;
-
- }
-
- #doubleclick protection
- my $_date = time;
- $return{paybatch} = "webui-MyAccount-$_date-$$-". rand() * 2**32;
-
- return { 'error' => '',
- %return,
- };
-
-};
-
-#some false laziness with httemplate/process/payment.cgi - look there for
-#ACH and CVV support stuff
-sub process_payment {
-
- my $p = shift;
-
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my %return;
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- $p->{'payname'} =~ /^([\w \,\.\-\']+)$/
- or return { 'error' => gettext('illegal_name'). " payname: ". $p->{'payname'} };
- my $payname = $1;
-
- $p->{'paybatch'} =~ /^([\w \!\@\#\$\%\&\(\)\-\+\;\:\'\"\,\.\?\/\=]*)$/
- or return { 'error' => gettext('illegal_text'). " paybatch: ". $p->{'paybatch'} };
- my $paybatch = $1;
-
- my $payinfo;
- my $paycvv = '';
- #if ( $payby eq 'CHEK' ) {
- #
- # $p->{'payinfo1'} =~ /^(\d+)$/
- # or return { 'error' => "illegal account number ". $p->{'payinfo1'} };
- # my $payinfo1 = $1;
- # $p->{'payinfo2'} =~ /^(\d+)$/
- # or return { 'error' => "illegal ABA/routing number ". $p->{'payinfo2'} };
- # my $payinfo2 = $1;
- # $payinfo = $payinfo1. '@'. $payinfo2;
- #
- #} elsif ( $payby eq 'CARD' ) {
-
- $payinfo = $p->{'payinfo'};
- $payinfo =~ s/\D//g;
- $payinfo =~ /^(\d{13,16})$/
- or return { 'error' => gettext('invalid_card') }; # . ": ". $self->payinfo
- $payinfo = $1;
- validate($payinfo)
- or return { 'error' => gettext('invalid_card') }; # . ": ". $self->payinfo
- return { 'error' => gettext('unknown_card_type') }
- if cardtype($payinfo) eq "Unknown";
-
- if ( defined $cust_main->dbdef_table->column('paycvv') ) {
- if ( length($p->{'paycvv'} ) ) {
- if ( cardtype($payinfo) eq 'American Express card' ) {
- $p->{'paycvv'} =~ /^(\d{4})$/
- or return { 'error' => "CVV2 (CID) for American Express cards is four digits." };
- $paycvv = $1;
- } else {
- $p->{'paycvv'} =~ /^(\d{3})$/
- or return { 'error' => "CVV2 (CVC2/CID) is three digits." };
- $paycvv = $1;
- }
- }
- }
-
- #} else {
- # die "unknown payby $payby";
- #}
-
- my $error = $cust_main->realtime_bop( 'CC', $p->{'amount'},
- 'quiet' => 1,
- 'payinfo' => $payinfo,
- 'paydate' => $p->{'year'}. '-'. $p->{'month'}. '-01',
- 'payname' => $payname,
- 'paybatch' => $paybatch,
- 'paycvv' => $paycvv,
- map { $_ => $p->{$_} } qw( paystart_month paystart_year payissue payip
- address1 address2 city state zip )
- );
- return { 'error' => $error } if $error;
-
- $cust_main->apply_payments;
-
- if ( $p->{'save'} ) {
- my $new = new FS::cust_main { $cust_main->hash };
- $new->set( $_ => $p->{$_} )
- foreach qw( payname paystart_month paystart_year payissue payip
- address1 address2 city state zip payinfo );
- $new->set( 'paydate' => $p->{'year'}. '-'. $p->{'month'}. '-01' );
- $new->set( 'payby' => $p->{'auto'} ? 'CARD' : 'DCRD' );
- my $error = $new->replace($cust_main);
- return { 'error' => $error } if $error;
- $cust_main = $new;
- }
-
- return { 'error' => '' };
-
-}
-
-sub process_prepay {
-
- my $p = shift;
-
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my %return;
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- my( $amount, $seconds ) = ( 0, 0 );
- my $error = $cust_main->recharge_prepay( $p->{'prepaid_cardnum'},
- \$amount,
- \$seconds
- );
-
- return { 'error' => $error } if $error;
-
- return { 'error' => '',
- 'amount' => $amount,
- 'seconds' => $seconds,
- 'duration' => duration_exact($seconds),
- };
-
-}
-
-sub invoice {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my $custnum = $session->{'custnum'};
-
- my $invnum = $p->{'invnum'};
-
- my $cust_bill = qsearchs('cust_bill', { 'invnum' => $invnum,
- 'custnum' => $custnum } )
- or return { 'error' => "Can't find invnum" };
-
- #my %return;
-
- return { 'error' => '',
- 'invnum' => $invnum,
- 'invoice_text' => join('', $cust_bill->print_text ),
- 'invoice_html' => $cust_bill->print_html,
- };
-
-}
-
-sub invoice_logo {
- my $p = shift;
-
- #sessioning for this? how do we get the session id to the backend invoice
- # template so it can add it to the link, blah
-
- my $templatename = $p->{'templatename'};
-
- #false laziness-ish w/view/cust_bill-logo.cgi
-
- my $conf = new FS::Conf;
- if ( $templatename =~ /^([^\.\/]*)$/ && $conf->exists("logo_$1.png") ) {
- $templatename = "_$1";
- } else {
- $templatename = '';
- }
-
- my $filename = "logo$templatename.png";
-
- return { 'error' => '',
- 'logo' => $conf->config_binary($filename),
- 'content_type' => 'image/png', #should allow gif, jpg too
- };
-}
-
-
-sub list_invoices {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- my @cust_bill = $cust_main->cust_bill;
-
- return { 'error' => '',
- 'invoices' => [ map { { 'invnum' => $_->invnum,
- '_date' => $_->_date,
- }
- } @cust_bill
- ]
- };
-}
-
-sub cancel {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- my @errors = $cust_main->cancel( 'quiet'=>1 );
-
- my $error = scalar(@errors) ? join(' / ', @errors) : '';
-
- return { 'error' => $error };
-
-}
-
-sub list_pkgs {
- my $p = shift;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- #return { 'cust_pkg' => [ map { $_->hashref } $cust_main->ncancelled_pkgs ] };
-
- my $conf = new FS::Conf;
-
- { 'svcnum' => $session->{'svcnum'},
- 'custnum' => $custnum,
- 'cust_pkg' => [ map {
- { $_->hash,
- $_->part_pkg->hash,
- part_svc =>
- [ map $_->hashref, $_->available_part_svc ],
- cust_svc =>
- [ map { my $ref = { $_->hash,
- label => [ $_->label ],
- };
- $ref->{_password} = $_->svc_x->_password
- if $context eq 'agent'
- && $conf->exists('agent-showpasswords')
- && $_->part_svc->svcdb eq 'svc_acct';
- $ref;
- } $_->cust_svc
- ],
- };
- } $cust_main->ncancelled_pkgs
- ],
- 'small_custview' =>
- small_custview( $cust_main, $conf->config('countrydefault') ),
- };
-
-}
-
-sub list_svcs {
- my $p = shift;
-
- use Data::Dumper;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- my @cust_svc = ();
- #foreach my $cust_pkg ( $cust_main->ncancelled_pkgs ) {
- foreach my $cust_pkg ( $cust_main->unsuspended_pkgs ) {
- push @cust_svc, @{[ $cust_pkg->cust_svc ]}; #@{[ ]} to force array context
- }
- @cust_svc = grep { $_->part_svc->svcdb eq $p->{'svcdb'} } @cust_svc
- if $p->{'svcdb'};
-
- #@svc_x = sort { $a->domain cmp $b->domain || $a->username cmp $b->username }
- # @svc_x;
-
- {
- #no#'svcnum' => $session->{'svcnum'},
- 'custnum' => $custnum,
- 'svcs' => [ map {
- my $svc_x = $_->svc_x;
- my($label, $value) = $_->label;
-
- { 'svcnum' => $_->svcnum,
- 'label' => $label,
- 'value' => $value,
- 'username' => $svc_x->username,
- 'email' => $svc_x->email,
- # more...
- };
- }
- @cust_svc
- ],
- };
-
-}
-
-sub order_pkg {
- my $p = shift;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- #false laziness w/ClientAPI/Signup.pm
-
- my $cust_pkg = new FS::cust_pkg ( {
- 'custnum' => $custnum,
- 'pkgpart' => $p->{'pkgpart'},
- } );
- my $error = $cust_pkg->check;
- return { 'error' => $error } if $error;
-
- my @svc = ();
- unless ( $p->{'svcpart'} eq 'none' ) {
-
- my $svcdb;
- my $svcpart = '';
- if ( $p->{'svcpart'} =~ /^(\d+)$/ ) {
- $svcpart = $1;
- my $part_svc = qsearchs('part_svc', { 'svcpart' => $svcpart } );
- return { 'error' => "Unknown svcpart $svcpart" } unless $part_svc;
- $svcdb = $part_svc->svcdb;
- } else {
- $svcdb = 'svc_acct';
- }
- $svcpart ||= $cust_pkg->part_pkg->svcpart($svcdb);
-
- my %fields = (
- 'svc_acct' => [ qw( username _password sec_phrase popnum ) ],
- 'svc_domain' => [ qw( domain ) ],
- 'svc_external' => [ qw( id title ) ],
- );
-
- my $svc_x = "FS::$svcdb"->new( {
- 'svcpart' => $svcpart,
- map { $_ => $p->{$_} } @{$fields{$svcdb}}
- } );
-
- if ( $svcdb eq 'svc_acct' ) {
- my @acct_snarf;
- my $snarfnum = 1;
- while ( length($p->{"snarf_machine$snarfnum"}) ) {
- my $acct_snarf = new FS::acct_snarf ( {
- 'machine' => $p->{"snarf_machine$snarfnum"},
- 'protocol' => $p->{"snarf_protocol$snarfnum"},
- 'username' => $p->{"snarf_username$snarfnum"},
- '_password' => $p->{"snarf_password$snarfnum"},
- } );
- $snarfnum++;
- push @acct_snarf, $acct_snarf;
- }
- $svc_x->child_objects( \@acct_snarf );
- }
-
- my $y = $svc_x->setdefault; # arguably should be in new method
- return { 'error' => $y } if $y && !ref($y);
-
- $error = $svc_x->check;
- return { 'error' => $error } if $error;
-
- push @svc, $svc_x;
-
- }
-
- use Tie::RefHash;
- tie my %hash, 'Tie::RefHash';
- %hash = ( $cust_pkg => \@svc );
- #msgcat
- $error = $cust_main->order_pkgs( \%hash, '', 'noexport' => 1 );
- return { 'error' => $error } if $error;
-
- my $conf = new FS::Conf;
- if ( $conf->exists('signup_server-realtime') ) {
-
- my $old_balance = $cust_main->balance;
-
- my $bill_error = $cust_main->bill;
- $cust_main->apply_payments;
- $cust_main->apply_credits;
- $bill_error = $cust_main->collect;
-
- if ( $cust_main->balance > $old_balance
- && $cust_main->balance > 0
- && $cust_main->payby !~ /^(BILL|DCRD|DCHK)$/ ) {
- #this makes sense. credit is "un-doing" the invoice
- $cust_main->credit( sprintf("%.2f", $cust_main->balance - $old_balance ),
- 'self-service decline' );
- $cust_main->apply_credits( 'order' => 'newest' );
-
- $cust_pkg->cancel('quiet'=>1);
- return { 'error' => '_decline', 'bill_error' => $bill_error };
- } else {
- $cust_pkg->reexport;
- }
-
- } else {
- $cust_pkg->reexport;
- }
-
- return { error => '', pkgnum => $cust_pkg->pkgnum };
-
-}
-
-sub cancel_pkg {
- my $p = shift;
- my $session = _cache->get($p->{'session_id'})
- or return { 'error' => "Can't resume session" }; #better error message
-
- my $custnum = $session->{'custnum'};
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
- or return { 'error' => "unknown custnum $custnum" };
-
- my $pkgnum = $p->{'pkgnum'};
-
- my $cust_pkg = qsearchs('cust_pkg', { 'custnum' => $custnum,
- 'pkgnum' => $pkgnum, } )
- or return { 'error' => "unknown pkgnum $pkgnum" };
-
- my $error = $cust_pkg->cancel( 'quiet'=>1 );
- return { 'error' => $error };
-
-}
-
-sub provision_acct {
- my $p = shift;
-
- return { 'error' => gettext('passwords_dont_match') }
- if $p->{'_password'} ne $p->{'_password2'};
- return { 'error' => gettext('empty_password') }
- unless length($p->{'_password'});
-
- _provision( 'FS::svc_acct',
- [qw(username _password)],
- [qw(username _password)],
- $p,
- @_
- );
-}
-
-sub provision_external {
- my $p = shift;
- #_provision( 'FS::svc_external', [qw(id title)], [qw(id title)], $p, @_ );
- _provision( 'FS::svc_external',
- [],
- [qw(id title)],
- $p,
- @_
- );
-}
-
-sub _provision {
- my( $class, $fields, $return_fields, $p ) = splice(@_, 0, 4);
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- my $pkgnum = $p->{'pkgnum'};
-
- my $cust_pkg = qsearchs('cust_pkg', { 'custnum' => $custnum,
- 'pkgnum' => $pkgnum,
- } )
- or return { 'error' => "unknown pkgnum $pkgnum" };
-
- my $part_svc = qsearchs('part_svc', { 'svcpart' => $p->{'svcpart'} } )
- or return { 'error' => "unknown svcpart $p->{'svcpart'}" };
-
- my $svc_x = $class->new( {
- 'pkgnum' => $p->{'pkgnum'},
- 'svcpart' => $p->{'svcpart'},
- map { $_ => $p->{$_} } @$fields
- } );
- my $error = $svc_x->insert;
- $svc_x = qsearchs($svc_x->table, { 'svcnum' => $svc_x->svcnum })
- unless $error;
-
- return { 'svc' => $part_svc->svc,
- 'error' => $error,
- map { $_ => $svc_x->get($_) } @$return_fields
- };
-
-}
-
-sub part_svc_info {
- my $p = shift;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- my $pkgnum = $p->{'pkgnum'};
-
- my $cust_pkg = qsearchs('cust_pkg', { 'custnum' => $custnum,
- 'pkgnum' => $pkgnum,
- } )
- or return { 'error' => "unknown pkgnum $pkgnum" };
-
- my $svcpart = $p->{'svcpart'};
-
- my $pkg_svc = qsearchs('pkg_svc', { 'pkgpart' => $cust_pkg->pkgpart,
- 'svcpart' => $svcpart, } )
- or return { 'error' => "unknown svcpart $svcpart for pkgnum $pkgnum" };
- my $part_svc = $pkg_svc->part_svc;
-
- my $conf = new FS::Conf;
-
- return {
- 'svc' => $part_svc->svc,
- 'svcdb' => $part_svc->svcdb,
- 'pkgnum' => $pkgnum,
- 'svcpart' => $svcpart,
- 'custnum' => $custnum,
-
- 'security_phrase' => 0, #XXX !
- 'svc_acct_pop' => [], #XXX !
- 'popnum' => '',
- 'init_popstate' => '',
- 'popac' => '',
- 'acstate' => '',
-
- 'small_custview' =>
- small_custview( $cust_main, $conf->config('countrydefault') ),
-
- };
-
-}
-
-sub unprovision_svc {
- my $p = shift;
-
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- my $search = { 'custnum' => $custnum };
- $search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- my $cust_main = qsearchs('cust_main', $search )
- or return { 'error' => "unknown custnum $custnum" };
-
- my $svcnum = $p->{'svcnum'};
-
- my $cust_svc = qsearchs('cust_svc', { 'svcnum' => $svcnum, } )
- or return { 'error' => "unknown svcnum $svcnum" };
-
- return { 'error' => "Service $svcnum does not belong to customer $custnum" }
- unless $cust_svc->cust_pkg->custnum == $custnum;
-
- my $conf = new FS::Conf;
-
- return { 'svc' => $cust_svc->part_svc->svc,
- 'error' => $cust_svc->cancel,
- 'small_custview' =>
- small_custview( $cust_main, $conf->config('countrydefault') ),
- };
-
-}
-
-sub myaccount_passwd {
- my $p = shift;
- my($context, $session, $custnum) = _custoragent_session_custnum($p);
- return { 'error' => $session } if $context eq 'error';
-
- return { 'error' => "New passwords don't match." }
- if $p->{'new_password'} ne $p->{'new_password2'};
-
- return { 'error' => 'Enter new password' }
- unless length($p->{'new_password'});
-
- #my $search = { 'custnum' => $custnum };
- #$search->{'agentnum'} = $session->{'agentnum'} if $context eq 'agent';
- $custnum =~ /^(\d+)$/ or die "illegal custnum";
- my $search = " AND custnum = $1";
- $search .= " AND agentnum = ". $session->{'agentnum'} if $context eq 'agent';
-
- my $svc_acct = qsearchs( {
- 'table' => 'svc_acct',
- 'addl_from' => 'LEFT JOIN cust_svc USING ( svcnum ) '.
- 'LEFT JOIN cust_pkg USING ( pkgnum ) '.
- 'LEFT JOIN cust_main USING ( custnum ) ',
- 'hashref' => { 'svcnum' => $p->{'svcnum'}, },
- 'extra_sql' => $search, #important
- } )
- or return { 'error' => "Service not found" };
-
- $svc_acct->_password($p->{'new_password'});
- my $error = $svc_acct->replace();
-
- my($label, $value) = $svc_acct->cust_svc->label;
-
- return { 'error' => $error,
- 'label' => $label,
- 'value' => $value,
- };
-
-}
-
-#--
-
-sub _custoragent_session_custnum {
- my $p = shift;
-
- my($context, $session, $custnum);
- if ( $p->{'session_id'} ) {
-
- $context = 'customer';
- $session = _cache->get($p->{'session_id'})
- or return ( 'error' => "Can't resume session" ); #better error message
- $custnum = $session->{'custnum'};
-
- } elsif ( $p->{'agent_session_id'} ) {
-
- $context = 'agent';
- my $agent_cache = new FS::ClientAPI_SessionCache( {
- 'namespace' => 'FS::ClientAPI::Agent',
- } );
- $session = $agent_cache->get($p->{'agent_session_id'})
- or return ( 'error' => "Can't resume session" ); #better error message
- $custnum = $p->{'custnum'};
-
- } else {
- return ( 'error' => "Can't resume session" ); #better error message
- }
-
- ($context, $session, $custnum);
-
-}
-
-1;
-
diff --git a/FS/FS/ClientAPI/Signup.pm b/FS/FS/ClientAPI/Signup.pm
deleted file mode 100644
index ed71651..0000000
--- a/FS/FS/ClientAPI/Signup.pm
+++ /dev/null
@@ -1,344 +0,0 @@
-package FS::ClientAPI::Signup;
-
-use strict;
-use Tie::RefHash;
-use FS::Conf;
-use FS::Record qw(qsearch qsearchs dbdef);
-use FS::Msgcat qw(gettext);
-use FS::ClientAPI_SessionCache;
-use FS::agent;
-use FS::cust_main_county;
-use FS::part_pkg;
-use FS::svc_acct_pop;
-use FS::cust_main;
-use FS::cust_pkg;
-use FS::svc_acct;
-use FS::acct_snarf;
-use FS::queue;
-use FS::reg_code;
-
-sub signup_info {
- my $packet = shift;
-
- my $conf = new FS::Conf;
-
- use vars qw($signup_info); #cache for performance;
- $signup_info ||= {
-
- 'cust_main_county' =>
- [ map { $_->hashref } qsearch('cust_main_county', {}) ],
-
- 'agent' =>
- [
- map { $_->hashref }
- qsearch('agent', dbdef->table('agent')->column('disabled')
- ? { 'disabled' => '' }
- : {}
- )
- ],
-
- 'part_referral' =>
- [
- map { $_->hashref }
- qsearch('part_referral',
- dbdef->table('part_referral')->column('disabled')
- ? { 'disabled' => '' }
- : {}
- )
- ],
-
- 'agentnum2part_pkg' =>
- {
- map {
- my $href = $_->pkgpart_hashref;
- $_->agentnum =>
- [
- map { { 'payby' => [ $_->payby ], %{$_->hashref} } }
- grep { $_->svcpart('svc_acct') && $href->{ $_->pkgpart } }
- qsearch( 'part_pkg', { 'disabled' => '' } )
- ];
- } qsearch('agent', dbdef->table('agent')->column('disabled')
- ? { 'disabled' => '' }
- : {}
- )
- },
-
- 'svc_acct_pop' => [ map { $_->hashref } qsearch('svc_acct_pop',{} ) ],
-
- 'security_phrase' => $conf->exists('security_phrase'),
-
- 'payby' => [ $conf->config('signup_server-payby') ],
-
- 'cvv_enabled' => defined dbdef->table('cust_main')->column('paycvv'),
-
- 'ship_enabled' => defined dbdef->table('cust_main')->column('ship_last'),
-
- 'msgcat' => { map { $_=>gettext($_) } qw(
- passwords_dont_match invalid_card unknown_card_type not_a empty_password
- ) },
-
- 'statedefault' => $conf->config('statedefault') || 'CA',
-
- 'countrydefault' => $conf->config('countrydefault') || 'US',
-
- 'refnum' => $conf->config('signup_server-default_refnum'),
-
- };
-
- my $agentnum = $conf->config('signup_server-default_agentnum');
-
- my $session = '';
- if ( exists $packet->{'session_id'} ) {
- my $cache = new FS::ClientAPI_SessionCache( {
- 'namespace' => 'FS::ClientAPI::Agent',
- } );
- $session = $cache->get($packet->{'session_id'});
- if ( $session ) {
- $agentnum = $session->{'agentnum'};
- } else {
- return { 'error' => "Can't resume session" }; #better error message
- }
- }
-
- $signup_info->{'part_pkg'} = [];
-
- if ( $packet->{'reg_code'} ) {
- $signup_info->{'part_pkg'} =
- [ map { { 'payby' => [ $_->payby ], %{$_->hashref} } }
- grep { $_->svcpart('svc_acct') }
- map { $_->part_pkg }
- qsearchs( 'reg_code', { 'code' => $packet->{'reg_code'},
- 'agentnum' => $agentnum, } )
-
- ];
-
- $signup_info->{'error'} = 'Unknown registration code'
- unless @{ $signup_info->{'part_pkg'} };
-
- } elsif ( $packet->{'promo_code'} ) {
-
- $signup_info->{'part_pkg'} =
- [ map { { 'payby' => [ $_->payby ], %{$_->hashref} } }
- grep { $_->svcpart('svc_acct') }
- qsearch( 'part_pkg', { 'promo_code' => {
- op=>'ILIKE',
- value=>$packet->{'promo_code'}
- },
- 'disabled' => '', } )
- ];
-
- $signup_info->{'error'} = 'Unknown promotional code'
- unless @{ $signup_info->{'part_pkg'} };
- }
-
- if ( $agentnum && ! @{ $signup_info->{'part_pkg'} } ) {
- $signup_info->{'part_pkg'} = $signup_info->{'agentnum2part_pkg'}{$agentnum};
- }
- # else {
- # delete $signup_info->{'part_pkg'};
- #}
-
- if ( $session ) {
- my $agent_signup_info = { %$signup_info };
- delete $agent_signup_info->{agentnum2part_pkg};
- $agent_signup_info->{'agent'} = $session->{'agent'};
- $agent_signup_info;
- } else {
- $signup_info;
- }
-
-}
-
-sub new_customer {
- my $packet = shift;
-
- my $conf = new FS::Conf;
-
- #things that aren't necessary in base class, but are for signup server
- #return "Passwords don't match"
- # if $hashref->{'_password'} ne $hashref->{'_password2'}
- return { 'error' => gettext('empty_password') }
- unless length($packet->{'_password'});
- # a bit inefficient for large numbers of pops
- return { 'error' => gettext('no_access_number_selected') }
- unless $packet->{'popnum'} || !scalar(qsearch('svc_acct_pop',{} ));
-
- my $agentnum;
- if ( exists $packet->{'session_id'} ) {
- my $cache = new FS::ClientAPI_SessionCache( {
- 'namespace' => 'FS::ClientAPI::Agent',
- } );
- my $session = $cache->get($packet->{'session_id'});
- if ( $session ) {
- $agentnum = $session->{'agentnum'};
- } else {
- return { 'error' => "Can't resume session" }; #better error message
- }
- } else {
- $agentnum = $packet->{agentnum}
- || $conf->config('signup_server-default_agentnum');
- }
-
- #shares some stuff with htdocs/edit/process/cust_main.cgi... take any
- # common that are still here and library them.
- my $cust_main = new FS::cust_main ( {
- #'custnum' => '',
- 'agentnum' => $agentnum,
- 'refnum' => $packet->{refnum}
- || $conf->config('signup_server-default_refnum'),
-
- map { $_ => $packet->{$_} } qw(
-
- last first ss company address1 address2
- city county state zip country
- daytime night fax
-
- ship_last ship_first ship_ss ship_company ship_address1 ship_address2
- ship_city ship_county ship_state ship_zip ship_country
- ship_daytime ship_night ship_fax
-
- payby
- payinfo paycvv paydate payname
- paystart_month paystart_year payissue
- payip
-
- referral_custnum comments
- )
-
- } );
-
- return { 'error' => "Illegal payment type" }
- unless grep { $_ eq $packet->{'payby'} }
- $conf->config('signup_server-payby');
-
- $cust_main->payinfo($cust_main->daytime)
- if $cust_main->payby eq 'LECB' && ! $cust_main->payinfo;
-
- my @invoicing_list = split( /\s*\,\s*/, $packet->{'invoicing_list'} );
-
- $packet->{'pkgpart'} =~ /^(\d+)$/ or '' =~ /^()$/;
- my $pkgpart = $1;
- return { 'error' => 'Please select a package' } unless $pkgpart; #msgcat
-
- my $part_pkg =
- qsearchs( 'part_pkg', { 'pkgpart' => $pkgpart } )
- or return { 'error' => "WARNING: unknown pkgpart: $pkgpart" };
- my $svcpart = $part_pkg->svcpart('svc_acct');
-
- my $reg_code = '';
- if ( $packet->{'reg_code'} ) {
- $reg_code = qsearchs( 'reg_code', { 'code' => $packet->{'reg_code'},
- 'agentnum' => $agentnum, } )
- or return { 'error' => 'Unknown registration code' };
- }
-
- my $cust_pkg = new FS::cust_pkg ( {
- #later#'custnum' => $custnum,
- 'pkgpart' => $packet->{'pkgpart'},
- 'promo_code' => $packet->{'promo_code'},
- 'reg_code' => $packet->{'reg_code'},
- } );
- #my $error = $cust_pkg->check;
- #return { 'error' => $error } if $error;
-
- my $svc_acct = new FS::svc_acct ( {
- 'svcpart' => $svcpart,
- map { $_ => $packet->{$_} }
- qw( username _password sec_phrase popnum ),
- } );
-
- my @acct_snarf;
- my $snarfnum = 1;
- while ( exists($packet->{"snarf_machine$snarfnum"})
- && length($packet->{"snarf_machine$snarfnum"}) ) {
- my $acct_snarf = new FS::acct_snarf ( {
- 'machine' => $packet->{"snarf_machine$snarfnum"},
- 'protocol' => $packet->{"snarf_protocol$snarfnum"},
- 'username' => $packet->{"snarf_username$snarfnum"},
- '_password' => $packet->{"snarf_password$snarfnum"},
- } );
- $snarfnum++;
- push @acct_snarf, $acct_snarf;
- }
- $svc_acct->child_objects( \@acct_snarf );
-
- my $y = $svc_acct->setdefault; # arguably should be in new method
- return { 'error' => $y } if $y && !ref($y);
-
- #$error = $svc_acct->check;
- #return { 'error' => $error } if $error;
-
- #setup a job dependancy to delay provisioning
- my $placeholder = new FS::queue ( {
- 'job' => 'FS::ClientAPI::Signup::__placeholder',
- 'status' => 'locked',
- } );
- my $error = $placeholder->insert;
- return { 'error' => $error } if $error;
-
- use Tie::RefHash;
- tie my %hash, 'Tie::RefHash';
- %hash = ( $cust_pkg => [ $svc_acct ] );
- #msgcat
- $error = $cust_main->insert(
- \%hash,
- \@invoicing_list,
- 'depend_jobnum' => $placeholder->jobnum,
- );
- if ( $error ) {
- my $perror = $placeholder->delete;
- $error .= " (Additionally, error removing placeholder: $perror)" if $perror;
- return { 'error' => $error };
- }
-
- if ( $conf->exists('signup_server-realtime') ) {
-
- #warn "[fs_signup_server] Billing customer...\n" if $Debug;
-
- my $bill_error = $cust_main->bill;
- #warn "[fs_signup_server] error billing new customer: $bill_error"
- # if $bill_error;
-
- $cust_main->apply_payments;
- $cust_main->apply_credits;
-
- $bill_error = $cust_main->collect;
- #warn "[fs_signup_server] error collecting from new customer: $bill_error"
- # if $bill_error;
-
- if ( $cust_main->balance > 0 ) {
-
- #this makes sense. credit is "un-doing" the invoice
- $cust_main->credit( $cust_main->balance, 'signup server decline' );
- $cust_main->apply_credits;
-
- #should check list for errors...
- #$cust_main->suspend;
- local $FS::svc_Common::noexport_hack = 1;
- $cust_main->cancel('quiet'=>1);
-
- my $perror = $placeholder->depended_delete;
- warn "error removing provisioning jobs after decline: $perror" if $perror;
- unless ( $perror ) {
- $perror = $placeholder->delete;
- warn "error removing placeholder after decline: $perror" if $perror;
- }
-
- return { 'error' => '_decline' };
- }
-
- }
-
- if ( $reg_code ) {
- $error = $reg_code->delete;
- return { 'error' => $error } if $error;
- }
-
- $error = $placeholder->delete;
- return { 'error' => $error } if $error;
-
- return { error => '' };
-
-}
-
-1;
diff --git a/FS/FS/ClientAPI/passwd.pm b/FS/FS/ClientAPI/passwd.pm
deleted file mode 100644
index b22d761..0000000
--- a/FS/FS/ClientAPI/passwd.pm
+++ /dev/null
@@ -1,46 +0,0 @@
-package FS::ClientAPI::passwd;
-
-use strict;
-use FS::Record qw(qsearchs);
-use FS::svc_acct;
-use FS::svc_domain;
-
-sub passwd {
- my $packet = shift;
-
- my $domain = $FS::ClientAPI::domain || $packet->{'domain'};
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- or return { error => "Domain $domain not found" };
-
- my $old_password = $packet->{'old_password'};
- my $new_password = $packet->{'new_password'};
- my $new_gecos = $packet->{'new_gecos'};
- my $new_shell = $packet->{'new_shell'};
-
- #false laziness w/FS::ClientAPI::MyAccount::login
-
- my $svc_acct = qsearchs( 'svc_acct', { 'username' => $packet->{'username'},
- 'domsvc' => $svc_domain->svcnum, }
- );
- return { error => 'User not found.' } unless $svc_acct;
- return { error => 'Incorrect password.' }
- unless $svc_acct->check_password($old_password);
-
- my %hash = $svc_acct->hash;
- my $new_svc_acct = new FS::svc_acct ( \%hash );
- $new_svc_acct->setfield('_password', $new_password )
- if $new_password && $new_password ne $old_password;
- $new_svc_acct->setfield('finger',$new_gecos) if $new_gecos;
- $new_svc_acct->setfield('shell',$new_shell) if $new_shell;
- my $error = $new_svc_acct->replace($svc_acct);
-
- return { error => $error };
-
-}
-
-sub chfn {}
-
-sub chsh {}
-
-1;
-
diff --git a/FS/FS/ClientAPI_SessionCache.pm b/FS/FS/ClientAPI_SessionCache.pm
deleted file mode 100644
index b722484..0000000
--- a/FS/FS/ClientAPI_SessionCache.pm
+++ /dev/null
@@ -1,78 +0,0 @@
-package FS::ClientAPI_SessionCache;
-
-use strict;
-use vars qw($module);
-use FS::UID qw(datasrc);
-
-#ask FS::UID to run this stuff for us later
-install_callback FS::UID sub {
- my $conf = new FS::Conf;
- $module = $conf->config('selfservice_server-cache_module')
- || 'Cache::SharedMemoryCache';
-};
-
-=head1 NAME
-
-FS::ClientAPI_SessionCache;
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-Minimal Cache::Cache-alike interface for storing session cache information.
-Backends to Cache::SharedMemoryCache, Cache::FileCache, or an internal
-implementation which stores information in the clientapi_session and
-clientapi_session_field database tables.
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- unless ( $module =~ /^_Database$/ ) {
- eval "use $module;";
- die $@ if $@;
- my $self = $module->new(@_);
- $self->set_cache_root('/usr/local/etc/freeside/clientapi_session.'.datasrc)
- if $module =~ /^Cache::FileCache$/;
- $self;
- } else {
- my $self = shift;
- bless ($self, $class);
- }
-}
-
-sub get {
- my($self, $session_id) = @_;
- die '_Database self-service session cache not yet implemented';
-}
-
-sub set {
- my($self, $session_id, $session, $expiration) = @_;
- die '_Database self-service session cache not yet implemented';
-}
-
-sub remove {
- my($self, $session_id) = @_;
- die '_Database self-service session cache not yet implemented';
-}
-
-=back
-
-=head1 BUGS
-
-Minimal documentation.
-
-=head1 SEE ALSO
-
-L<Cache::Cache>, L<FS::clientapi_session>, L<FS::clientapi_session_field>
-
-=cut
-
-1;
diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm
deleted file mode 100644
index f649511..0000000
--- a/FS/FS/Conf.pm
+++ /dev/null
@@ -1,1758 +0,0 @@
-package FS::Conf;
-
-use vars qw($default_dir @config_items $DEBUG );
-use IO::File;
-use File::Basename;
-use FS::ConfItem;
-use FS::ConfDefaults;
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::Conf - Freeside configuration values
-
-=head1 SYNOPSIS
-
- use FS::Conf;
-
- $conf = new FS::Conf "/config/directory";
-
- $FS::Conf::default_dir = "/config/directory";
- $conf = new FS::Conf;
-
- $dir = $conf->dir;
-
- $value = $conf->config('key');
- @list = $conf->config('key');
- $bool = $conf->exists('key');
-
- $conf->touch('key');
- $conf->set('key' => 'value');
- $conf->delete('key');
-
- @config_items = $conf->config_items;
-
-=head1 DESCRIPTION
-
-Read and write Freeside configuration values. Keys currently map to filenames,
-but this may change in the future.
-
-=head1 METHODS
-
-=over 4
-
-=item new [ DIRECTORY ]
-
-Create a new configuration object. A directory arguement is required if
-$FS::Conf::default_dir has not been set.
-
-=cut
-
-sub new {
- my($proto,$dir) = @_;
- my($class) = ref($proto) || $proto;
- my($self) = { 'dir' => $dir || $default_dir } ;
- bless ($self, $class);
-}
-
-=item dir
-
-Returns the directory.
-
-=cut
-
-sub dir {
- my($self) = @_;
- my $dir = $self->{dir};
- -e $dir or die "FATAL: $dir doesn't exist!";
- -d $dir or die "FATAL: $dir isn't a directory!";
- -r $dir or die "FATAL: Can't read $dir!";
- -x $dir or die "FATAL: $dir not searchable (executable)!";
- $dir =~ /^(.*)$/;
- $1;
-}
-
-=item config KEY
-
-Returns the configuration value or values (depending on context) for key.
-
-=cut
-
-sub config {
- my($self,$file)=@_;
- my($dir)=$self->dir;
- my $fh = new IO::File "<$dir/$file" or return;
- if ( wantarray ) {
- map {
- /^(.*)$/
- or die "Illegal line (array context) in $dir/$file:\n$_\n";
- $1;
- } <$fh>;
- } else {
- <$fh> =~ /^(.*)$/
- or die "Illegal line (scalar context) in $dir/$file:\n$_\n";
- $1;
- }
-}
-
-=item config_binary KEY
-
-Returns the exact scalar value for key.
-
-=cut
-
-sub config_binary {
- my($self,$file)=@_;
- my($dir)=$self->dir;
- my $fh = new IO::File "<$dir/$file" or return;
- local $/;
- my $content = <$fh>;
- $content;
-}
-
-=item exists KEY
-
-Returns true if the specified key exists, even if the corresponding value
-is undefined.
-
-=cut
-
-sub exists {
- my($self,$file)=@_;
- my($dir) = $self->dir;
- -e "$dir/$file";
-}
-
-=item config_orbase KEY SUFFIX
-
-Returns the configuration value or values (depending on context) for
-KEY_SUFFIX, if it exists, otherwise for KEY
-
-=cut
-
-sub config_orbase {
- my( $self, $file, $suffix ) = @_;
- if ( $self->exists("${file}_$suffix") ) {
- $self->config("${file}_$suffix");
- } else {
- $self->config($file);
- }
-}
-
-=item touch KEY
-
-Creates the specified configuration key if it does not exist.
-
-=cut
-
-sub touch {
- my($self, $file) = @_;
- my $dir = $self->dir;
- unless ( $self->exists($file) ) {
- warn "[FS::Conf] TOUCH $file\n" if $DEBUG;
- system('touch', "$dir/$file");
- }
-}
-
-=item set KEY VALUE
-
-Sets the specified configuration key to the given value.
-
-=cut
-
-sub set {
- my($self, $file, $value) = @_;
- my $dir = $self->dir;
- $value =~ /^(.*)$/s;
- $value = $1;
- unless ( join("\n", @{[ $self->config($file) ]}) eq $value ) {
- warn "[FS::Conf] SET $file\n" if $DEBUG;
-# warn "$dir" if is_tainted($dir);
-# warn "$dir" if is_tainted($file);
- chmod 0644, "$dir/$file";
- my $fh = new IO::File ">$dir/$file" or return;
- chmod 0644, "$dir/$file";
- print $fh "$value\n";
- }
-}
-#sub is_tainted {
-# return ! eval { join('',@_), kill 0; 1; };
-# }
-
-=item delete KEY
-
-Deletes the specified configuration key.
-
-=cut
-
-sub delete {
- my($self, $file) = @_;
- my $dir = $self->dir;
- if ( $self->exists($file) ) {
- warn "[FS::Conf] DELETE $file\n";
- unlink "$dir/$file";
- }
-}
-
-=item config_items
-
-Returns all of the possible configuration items as FS::ConfItem objects. See
-L<FS::ConfItem>.
-
-=cut
-
-sub config_items {
- my $self = shift;
- #quelle kludge
- @config_items,
- ( map {
- my $basename = basename($_);
- $basename =~ /^(.*)$/;
- $basename = $1;
- new FS::ConfItem {
- 'key' => $basename,
- 'section' => 'billing',
- 'description' => 'Alternate template file for invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- }
- } glob($self->dir. '/invoice_template_*')
- ),
- ( map {
- my $basename = basename($_);
- $basename =~ /^(.*)$/;
- $basename = $1;
- new FS::ConfItem {
- 'key' => $basename,
- 'section' => 'billing',
- 'description' => 'Alternate HTML template for invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- }
- } glob($self->dir. '/invoice_html_*')
- ),
- ( map {
- my $basename = basename($_);
- $basename =~ /^(.*)$/;
- $basename = $1;
- ($latexname = $basename ) =~ s/latex/html/;
- new FS::ConfItem {
- 'key' => $basename,
- 'section' => 'billing',
- 'description' => "Alternate Notes section for HTML invoices. Defaults to the same data in $latexname if not specified.",
- 'type' => 'textarea',
- }
- } glob($self->dir. '/invoice_htmlnotes_*')
- ),
- ( map {
- my $basename = basename($_);
- $basename =~ /^(.*)$/;
- $basename = $1;
- new FS::ConfItem {
- 'key' => $basename,
- 'section' => 'billing',
- 'description' => 'Alternate LaTeX template for invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- }
- } glob($self->dir. '/invoice_latex_*')
- ),
- ( map {
- my $basename = basename($_);
- $basename =~ /^(.*)$/;
- $basename = $1;
- new FS::ConfItem {
- 'key' => $basename,
- 'section' => 'billing',
- 'description' => 'Alternate Notes section for LaTeX typeset PostScript invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- }
- } glob($self->dir. '/invoice_latexnotes_*')
- );
-}
-
-=back
-
-=head1 BUGS
-
-If this was more than just crud that will never be useful outside Freeside I'd
-worry that config_items is freeside-specific and icky.
-
-=head1 SEE ALSO
-
-"Configuration" in the web interface (config/config.cgi).
-
-httemplate/docs/config.html
-
-=cut
-
-@config_items = map { new FS::ConfItem $_ } (
-
- {
- 'key' => 'address',
- 'section' => 'deprecated',
- 'description' => 'This configuration option is no longer used. See <a href="#invoice_template">invoice_template</a> instead.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'alerter_template',
- 'section' => 'billing',
- 'description' => 'Template file for billing method expiration alerts. See the <a href="../docs/billing.html#invoice_template">billing documentation</a> for details.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'apacheroot',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>www_shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. The directory containing Apache virtual hosts',
- 'type' => 'text',
- },
-
- {
- 'key' => 'apacheip',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>apache</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be the current IP address to assign to new virtual hosts',
- 'type' => 'text',
- },
-
- {
- 'key' => 'apachemachine',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>www_shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. A machine with the apacheroot directory and user home directories. The existance of this file enables setup of virtual host directories, and, in conjunction with the `home\' configuration file, symlinks into user home directories.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'apachemachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>apache</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be Apache machines, one per line. This enables export of `/etc/apache/vhosts.conf\', which can be included in your Apache configuration via the <a href="http://www.apache.org/docs/mod/core.html#include">Include</a> directive.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'bindprimary',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>bind</i> <a href="../browse/part_export.cgi">export</a> instead. Your BIND primary nameserver. This enables export of /var/named/named.conf and zone files into /var/named',
- 'type' => 'text',
- },
-
- {
- 'key' => 'bindsecondaries',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>bind_slave</i> <a href="../browse/part_export.cgi">export</a> instead. Your BIND secondary nameservers, one per line. This enables export of /var/named/named.conf',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'encryption',
- 'section' => 'billing',
- 'description' => 'Enable encryption of credit cards.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'encryptionmodule',
- 'section' => 'billing',
- 'description' => 'Use which module for encryption?',
- 'type' => 'text',
- },
-
- {
- 'key' => 'encryptionpublickey',
- 'section' => 'billing',
- 'description' => 'Your RSA Public Key - Required if Encryption is turned on.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'encryptionprivatekey',
- 'section' => 'billing',
- 'description' => 'Your RSA Private Key - Including this will enable the "Bill Now" feature. However if the system is compromised, a hacker can use this key to decode the stored credit card information. This is generally not a good idea.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'business-onlinepayment',
- 'section' => 'billing',
- 'description' => '<a href="http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment">Business::OnlinePayment</a> support, at least three lines: processor, login, and password. An optional fourth line specifies the action or actions (multiple actions are separated with `,\': for example: `Authorization Only, Post Authorization\'). Optional additional lines are passed to Business::OnlinePayment as %processor_options.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'business-onlinepayment-ach',
- 'section' => 'billing',
- 'description' => 'Alternate <a href="http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment">Business::OnlinePayment</a> support for ACH transactions (defaults to regular <b>business-onlinepayment</b>). At least three lines: processor, login, and password. An optional fourth line specifies the action or actions (multiple actions are separated with `,\': for example: `Authorization Only, Post Authorization\'). Optional additional lines are passed to Business::OnlinePayment as %processor_options.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'business-onlinepayment-description',
- 'section' => 'billing',
- 'description' => 'String passed as the description field to <a href="http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment">Business::OnlinePayment</a>. Evaluated as a double-quoted perl string, with the following variables available: <code>$agent</code> (the agent name), and <code>$pkgs</code> (a comma-separated list of packages for which these charges apply)',
- 'type' => 'text',
- },
-
- {
- 'key' => 'business-onlinepayment-email-override',
- 'section' => 'billing',
- 'description' => 'Email address used instead of customer email address when submitting a BOP transaction.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'bsdshellmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>bsdshell</i> <a href="../browse/part_export.cgi">export</a> instead. Your BSD flavored shell (and mail) machines, one per line. This enables export of `/etc/passwd\' and `/etc/master.passwd\'.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'countrydefault',
- 'section' => 'UI',
- 'description' => 'Default two-letter country code (if not supplied, the default is `US\')',
- 'type' => 'text',
- },
-
- {
- 'key' => 'cyrus',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>cyrus</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to integrate with <a href="http://asg.web.cmu.edu/cyrus/imapd/">Cyrus IMAP Server</a>, three lines: IMAP server, admin username, and admin password. Cyrus::IMAP::Admin should be installed locally and the connection to the server secured.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cp_app',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>cp</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to integrate with <a href="http://www.cp.net/">Critial Path Account Provisioning Protocol</a>, four lines: "host:port", username, password, and workgroup (for new users).',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'deletecustomers',
- 'section' => 'UI',
- 'description' => 'Enable customer deletions. Be very careful! Deleting a customer will remove all traces that this customer ever existed! It should probably only be used when auditing a legacy database. Normally, you cancel all of a customers\' packages if they cancel service.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'deletepayments',
- 'section' => 'billing',
- 'description' => 'Enable deletion of unclosed payments. Really, with voids this is pretty much not recommended in any situation anymore. Be very careful! Only delete payments that were data-entry errors, not adjustments. Optionally specify one or more comma-separated email addresses to be notified when a payment is deleted.',
- 'type' => [qw( checkbox text )],
- },
-
- {
- 'key' => 'deletecredits',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to enable deletion of unclosed credits. Be very careful! Only delete credits that were data-entry errors, not adjustments. Optionally specify one or more comma-separated email addresses to be notified when a credit is deleted.',
- 'type' => [qw( checkbox text )],
- },
-
- {
- 'key' => 'unapplypayments',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to enable "unapplication" of unclosed payments.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'unapplycredits',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to nable "unapplication" of unclosed credits.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'dirhash',
- 'section' => 'shell',
- 'description' => 'Optional numeric value to control directory hashing. If positive, hashes directories for the specified number of levels from the front of the username. If negative, hashes directories for the specified number of levels from the end of the username. Some examples: <ul><li>1: user -> <a href="#home">/home</a>/u/user<li>2: user -> <a href="#home">/home</a>/u/s/user<li>-1: user -> <a href="#home">/home</a>/r/user<li>-2: user -> <a href="#home">home</a>/r/e/user</ul>',
- 'type' => 'text',
- },
-
- {
- 'key' => 'disable_customer_referrals',
- 'section' => 'UI',
- 'description' => 'Disable new customer-to-customer referrals in the web interface',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'editreferrals',
- 'section' => 'UI',
- 'description' => 'Enable advertising source modification for existing customers',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'emailinvoiceonly',
- 'section' => 'billing',
- 'description' => 'Disables postal mail invoices',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'disablepostalinvoicedefault',
- 'section' => 'billing',
- 'description' => 'Disables postal mail invoices as the default option in the UI. Be careful not to setup customers which are not sent invoices. See <a href ="#emailinvoiceauto">emailinvoiceauto</a>.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'emailinvoiceauto',
- 'section' => 'billing',
- 'description' => 'Automatically adds new accounts to the email invoice list',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'exclude_ip_addr',
- 'section' => '',
- 'description' => 'Exclude these from the list of available broadband service IP addresses. (One per line)',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'erpcdmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, ERPCD is no longer supported. Used to be ERPCD authentication machines, one per line. This enables export of `/usr/annex/acp_passwd\' and `/usr/annex/acp_dialup\'',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'hidecancelledpackages',
- 'section' => 'UI',
- 'description' => 'Prevent cancelled packages from showing up in listings (though they will still be in the database)',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'hidecancelledcustomers',
- 'section' => 'UI',
- 'description' => 'Prevent customers with only cancelled packages from showing up in listings (though they will still be in the database)',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'home',
- 'section' => 'required',
- 'description' => 'For new users, prefixed to username to create a directory name. Should have a leading but not a trailing slash.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'icradiusmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>sqlradius</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to enable radcheck and radreply table population - by default in the Freeside database, or in the database specified by the <a href="http://rootwood.haze.st/aspside/config/config-view.cgi#icradius_secrets">icradius_secrets</a> config option (the radcheck and radreply tables needs to be created manually). You do not need to use MySQL for your Freeside database to export to an ICRADIUS/FreeRADIUS MySQL database with this option. <blockquote><b>ADDITIONAL DEPRECATED FUNCTIONALITY</b> (instead use <a href="http://www.mysql.com/documentation/mysql/bychapter/manual_MySQL_Database_Administration.html#Replication">MySQL replication</a> or point icradius_secrets to the external database) - your <a href="ftp://ftp.cheapnet.net/pub/icradius">ICRADIUS</a> machines or <a href="http://www.freeradius.org/">FreeRADIUS</a> (with MySQL authentication) machines, one per line. Machines listed in this file will have the radcheck table exported to them. Each line should contain four items, separted by whitespace: machine name, MySQL database name, MySQL username, and MySQL password. For example: <CODE>"radius.isp.tld&nbsp;radius_db&nbsp;radius_user&nbsp;passw0rd"</CODE></blockquote>',
- 'type' => [qw( checkbox textarea )],
- },
-
- {
- 'key' => 'icradius_mysqldest',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>sqlradius</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be the destination directory for the MySQL databases, on the ICRADIUS/FreeRADIUS machines. Defaults to "/usr/local/var/".',
- 'type' => 'text',
- },
-
- {
- 'key' => 'icradius_mysqlsource',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>sqlradius</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be the source directory for for the MySQL radcheck table files, on the Freeside machine. Defaults to "/usr/local/var/freeside".',
- 'type' => 'text',
- },
-
- {
- 'key' => 'icradius_secrets',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>sqlradius</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to specify a database for ICRADIUS/FreeRADIUS export. Three lines: DBI data source, username and password.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_from',
- 'section' => 'required',
- 'description' => 'Return address on email invoices',
- 'type' => 'text',
- },
-
- {
- 'key' => 'invoice_template',
- 'section' => 'required',
- 'description' => 'Required template file for invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_html',
- 'section' => 'billing',
- 'description' => 'Optional HTML template for invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
-
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_htmlnotes',
- 'section' => 'billing',
- 'description' => 'Notes section for HTML invoices. Defaults to the same data in invoice_latexnotes if not specified.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_htmlfooter',
- 'section' => 'billing',
- 'description' => 'Footer for HTML invoices. Defaults to the same data in invoice_latexfooter if not specified.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_htmlreturnaddress',
- 'section' => 'billing',
- 'description' => 'Return address for HTML invoices. Defaults to the same data in invoice_latexreturnaddress if not specified.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_latex',
- 'section' => 'billing',
- 'description' => 'Optional LaTeX template for typeset PostScript invoices. See the <a href="../docs/billing.html">billing documentation</a> for details.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_latexnotes',
- 'section' => 'billing',
- 'description' => 'Notes section for LaTeX typeset PostScript invoices.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_latexfooter',
- 'section' => 'billing',
- 'description' => 'Footer for LaTeX typeset PostScript invoices.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_latexreturnaddress',
- 'section' => 'billing',
- 'description' => 'Return address for LaTeX typeset PostScript invoices.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_latexsmallfooter',
- 'section' => 'billing',
- 'description' => 'Optional small footer for multi-page LaTeX typeset PostScript invoices.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'invoice_email_pdf',
- 'section' => 'billing',
- 'description' => 'Send PDF invoice as an attachment to emailed invoices. By default, includes the plain text invoice as the email body, unless invoice_email_pdf_note is set.',
- 'type' => 'checkbox'
- },
-
- {
- 'key' => 'invoice_email_pdf_note',
- 'section' => 'billing',
- 'description' => 'If defined, this text will replace the default plain text invoice as the body of emailed PDF invoices.',
- 'type' => 'textarea'
- },
-
-
- {
- 'key' => 'invoice_default_terms',
- 'section' => 'billing',
- 'description' => 'Optional default invoice term, used to calculate a due date printed on invoices.',
- 'type' => 'select',
- 'select_enum' => [ '', 'Payable upon receipt', 'Net 0', 'Net 10', 'Net 15', 'Net 30', 'Net 45', 'Net 60' ],
- },
-
- {
- 'key' => 'invoice_send_receipts',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, this used to send an invoice copy on payments and credits. See the payment_receipt_email and XXXX instead.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'payment_receipt_email',
- 'section' => 'billing',
- 'description' => 'Template file for payment receipts. Payment receipts are sent to the customer email invoice destination(s) when a payment is received. See the <a href="http://search.cpan.org/~mjd/Text-Template/lib/Text/Template.pm">Text::Template</a> documentation for details on the template substitution language. The following variables are available: <ul><li><code>$date</code> <li><code>$name</code> <li><code>$paynum</code> - Freeside payment number <li><code>$paid</code> - Amount of payment <li><code>$payby</code> - Payment type (Card, Check, Electronic check, etc.) <li><code>$payinfo</code> - Masked credit card number or check number <li><code>$balance</code> - New balance</ul>',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'lpr',
- 'section' => 'required',
- 'description' => 'Print command for paper invoices, for example `lpr -h\'',
- 'type' => 'text',
- },
-
- {
- 'key' => 'maildisablecatchall',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, now the default. Turning this option on used to disable the requirement that each virtual domain have a catch-all mailbox.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'money_char',
- 'section' => '',
- 'description' => 'Currency symbol - defaults to `$\'',
- 'type' => 'text',
- },
-
- {
- 'key' => 'mxmachines',
- 'section' => 'deprecated',
- 'description' => 'MX entries for new domains, weight and machine, one per line, with trailing `.\'',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'nsmachines',
- 'section' => 'deprecated',
- 'description' => 'NS nameservers for new domains, one per line, with trailing `.\'',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'defaultrecords',
- 'section' => 'BIND',
- 'description' => 'DNS entries to add automatically when creating a domain',
- 'type' => 'editlist',
- 'editlist_parts' => [ { type=>'text' },
- { type=>'immutable', value=>'IN' },
- { type=>'select',
- select_enum=>{ map { $_=>$_ } qw(A CNAME MX NS TXT)} },
- { type=> 'text' }, ],
- },
-
- {
- 'key' => 'arecords',
- 'section' => 'deprecated',
- 'description' => 'A list of tab seperated CNAME records to add automatically when creating a domain',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cnamerecords',
- 'section' => 'deprecated',
- 'description' => 'A list of tab seperated CNAME records to add automatically when creating a domain',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'nismachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>. Your NIS master (not slave master) machines, one per line. This enables export of `/etc/global/passwd\' and `/etc/global/shadow\'.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'passwordmin',
- 'section' => 'password',
- 'description' => 'Minimum password length (default 6)',
- 'type' => 'text',
- },
-
- {
- 'key' => 'passwordmax',
- 'section' => 'password',
- 'description' => 'Maximum password length (default 8) (don\'t set this over 12 if you need to import or export crypt() passwords)',
- 'type' => 'text',
- },
-
- {
- 'key' => 'password-noampersand',
- 'section' => 'password',
- 'description' => 'Disallow ampersands in passwords',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'password-noexclamation',
- 'section' => 'password',
- 'description' => 'Disallow exclamations in passwords (Not setting this could break old text Livingston or Cistron Radius servers)',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'qmailmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add <i>qmail</i> and <i>shellcommands</i> <a href="../browse/part_export.cgi">exports</a> instead. This option used to export `/var/qmail/control/virtualdomains\', `/var/qmail/control/recipientmap\', and `/var/qmail/control/rcpthosts\'. Setting this option (even if empty) also turns on user `.qmail-extension\' file maintenance in conjunction with the <b>shellmachine</b> option.',
- 'type' => [qw( checkbox textarea )],
- },
-
- {
- 'key' => 'radiusmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add an <i>sqlradius</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to export to be: your RADIUS authentication machines, one per line. This enables export of `/etc/raddb/users\'.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'referraldefault',
- 'section' => 'UI',
- 'description' => 'Default referral, specified by refnum',
- 'type' => 'text',
- },
-
-# {
-# 'key' => 'registries',
-# 'section' => 'required',
-# 'description' => 'Directory which contains domain registry information. Each registry is a directory.',
-# },
-
- {
- 'key' => 'report_template',
- 'section' => 'deprecated',
- 'description' => 'Deprecated template file for reports.',
- 'type' => 'textarea',
- },
-
-
- {
- 'key' => 'maxsearchrecordsperpage',
- 'section' => 'UI',
- 'description' => 'If set, number of search records to return per page.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'sendmailconfigpath',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>sendmail</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be sendmail configuration file path. Defaults to `/etc\'. Many newer distributions use `/etc/mail\'.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'sendmailmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>sendmail</i> <a href="../browse/part_export.cgi">export</a> instead. Used to be sendmail machines, one per line. This enables export of `/etc/virtusertable\' and `/etc/sendmail.cw\'.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'sendmailrestart',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>sendmail</i> <a href="../browse/part_export.cgi">export</a> instead. Used to define the command which is run on sendmail machines after files are copied.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'session-start',
- 'section' => 'session',
- 'description' => 'If defined, the command which is executed on the Freeside machine when a session begins. The contents of the file are treated as a double-quoted perl string, with the following variables available: <code>$ip</code>, <code>$nasip</code> and <code>$nasfqdn</code>, which are the IP address of the starting session, and the IP address and fully-qualified domain name of the NAS this session is on.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'session-stop',
- 'section' => 'session',
- 'description' => 'If defined, the command which is executed on the Freeside machine when a session ends. The contents of the file are treated as a double-quoted perl string, with the following variables available: <code>$ip</code>, <code>$nasip</code> and <code>$nasfqdn</code>, which are the IP address of the starting session, and the IP address and fully-qualified domain name of the NAS this session is on.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'shellmachine',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to contain a single machine with user home directories mounted. This enables home directory creation, renaming and archiving/deletion. In conjunction with `qmailmachines\', it also enables `.qmail-extension\' file maintenance.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'shellmachine-useradd',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to contain command(s) to run on shellmachine when an account is created. If the <b>shellmachine</b> option is set but this option is not, <code>useradd -d $dir -m -s $shell -u $uid $username</code> is the default. If this option is set but empty, <code>cp -pr /etc/skel $dir; chown -R $uid.$gid $dir</code> is the default instead. Otherwise the value is evaluated as a double-quoted perl string, with the following variables available: <code>$username</code>, <code>$uid</code>, <code>$gid</code>, <code>$dir</code>, and <code>$shell</code>.',
- 'type' => [qw( checkbox text )],
- },
-
- {
- 'key' => 'shellmachine-userdel',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to contain command(s) to run on shellmachine when an account is deleted. If the <b>shellmachine</b> option is set but this option is not, <code>userdel $username</code> is the default. If this option is set but empty, <code>rm -rf $dir</code> is the default instead. Otherwise the value is evaluated as a double-quoted perl string, with the following variables available: <code>$username</code> and <code>$dir</code>.',
- 'type' => [qw( checkbox text )],
- },
-
- {
- 'key' => 'shellmachine-usermod',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>shellcommands</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to contain command(s) to run on shellmachine when an account is modified. If the <b>shellmachine</b> option is set but this option is empty, <code>[ -d $old_dir ] &amp;&amp; mv $old_dir $new_dir || ( chmod u+t $old_dir; mkdir $new_dir; cd $old_dir; find . -depth -print | cpio -pdm $new_dir; chmod u-t $new_dir; chown -R $uid.$gid $new_dir; rm -rf $old_dir )</code> is the default. Otherwise the contents of the file are treated as a double-quoted perl string, with the following variables available: <code>$old_dir</code>, <code>$new_dir</code>, <code>$uid</code> and <code>$gid</code>.',
- #'type' => [qw( checkbox text )],
- 'type' => 'text',
- },
-
- {
- 'key' => 'shellmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>sysvshell</i> <a href="../browse/part_export.cgi">export</a> instead. Your Linux and System V flavored shell (and mail) machines, one per line. This enables export of `/etc/passwd\' and `/etc/shadow\' files.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'shells',
- 'section' => 'required',
- 'description' => 'Legal shells (think /etc/shells). You probably want to `cut -d: -f7 /etc/passwd | sort | uniq\' initially so that importing doesn\'t fail with `Illegal shell\' errors, then remove any special entries afterwords. A blank line specifies that an empty shell is permitted.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'showpasswords',
- 'section' => 'UI',
- 'description' => 'Display unencrypted user passwords in the backend (employee) web interface',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'signupurl',
- 'section' => 'UI',
- 'description' => 'if you are using customer-to-customer referrals, and you enter the URL of your <a href="../docs/signup.html">signup server CGI</a>, the customer view screen will display a customized link to the signup server with the appropriate customer as referral',
- 'type' => 'text',
- },
-
- {
- 'key' => 'smtpmachine',
- 'section' => 'required',
- 'description' => 'SMTP relay for Freeside\'s outgoing mail',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soadefaultttl',
- 'section' => 'BIND',
- 'description' => 'SOA default TTL for new domains.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soaemail',
- 'section' => 'BIND',
- 'description' => 'SOA email for new domains, in BIND form (`.\' instead of `@\'), with trailing `.\'',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soaexpire',
- 'section' => 'BIND',
- 'description' => 'SOA expire for new domains',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soamachine',
- 'section' => 'BIND',
- 'description' => 'SOA machine for new domains, with trailing `.\'',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soarefresh',
- 'section' => 'BIND',
- 'description' => 'SOA refresh for new domains',
- 'type' => 'text',
- },
-
- {
- 'key' => 'soaretry',
- 'section' => 'BIND',
- 'description' => 'SOA retry for new domains',
- 'type' => 'text',
- },
-
- {
- 'key' => 'statedefault',
- 'section' => 'UI',
- 'description' => 'Default state or province (if not supplied, the default is `CA\')',
- 'type' => 'text',
- },
-
- {
- 'key' => 'radiusprepend',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, real-time text radius now edits an existing file in place - just (turn off freeside-queued and) edit your RADIUS users file directly. The contents used to be be prepended to the top of the RADIUS users file (text exports only).',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'textradiusprepend',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, use RADIUS check attributes instead. The contents used to be prepended to the first line of a user\'s RADIUS entry in text exports.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'unsuspendauto',
- 'section' => 'billing',
- 'description' => 'Enables the automatic unsuspension of suspended packages when a customer\'s balance due changes from positive to zero or negative as the result of a payment or credit',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'usernamemin',
- 'section' => 'username',
- 'description' => 'Minimum username length (default 2)',
- 'type' => 'text',
- },
-
- {
- 'key' => 'usernamemax',
- 'section' => 'username',
- 'description' => 'Maximum username length',
- 'type' => 'text',
- },
-
- {
- 'key' => 'username-ampersand',
- 'section' => 'username',
- 'description' => 'Allow the ampersand character (&amp;) in usernames. Be careful when using this option in conjunction with <a href="../browse/part_export.cgi">exports</a> which execute shell commands, as the ampersand will be interpreted by the shell if not quoted.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-letter',
- 'section' => 'username',
- 'description' => 'Usernames must contain at least one letter',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-letterfirst',
- 'section' => 'username',
- 'description' => 'Usernames must start with a letter',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-noperiod',
- 'section' => 'username',
- 'description' => 'Disallow periods in usernames',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-nounderscore',
- 'section' => 'username',
- 'description' => 'Disallow underscores in usernames',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-nodash',
- 'section' => 'username',
- 'description' => 'Disallow dashes in usernames',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-uppercase',
- 'section' => 'username',
- 'description' => 'Allow uppercase characters in usernames',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username-percent',
- 'section' => 'username',
- 'description' => 'Allow the percent character (%) in usernames.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'username_policy',
- 'section' => 'deprecated',
- 'description' => 'This file controls the mechanism for preventing duplicate usernames in passwd/radius files exported from svc_accts. This should be one of \'prepend domsvc\' \'append domsvc\' \'append domain\' or \'append @domain\'',
- 'type' => 'select',
- 'select_enum' => [ 'prepend domsvc', 'append domsvc', 'append domain', 'append @domain' ],
- #'type' => 'text',
- },
-
- {
- 'key' => 'vpopmailmachines',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>vpopmail</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to contain your vpopmail pop toasters, one per line. Each line is of the form "machinename vpopdir vpopuid vpopgid". For example: <code>poptoaster.domain.tld /home/vpopmail 508 508</code> Note: vpopuid and vpopgid are values taken from the vpopmail machine\'s /etc/passwd',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'vpopmailrestart',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, add a <i>vpopmail</i> <a href="../browse/part_export.cgi">export</a> instead. This option used to define the shell commands to run on vpopmail machines after files are copied. An example can be found in eg/vpopmailrestart of the source distribution.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'safe-part_pkg',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, obsolete. Used to validate package definition setup and recur expressions against a preset list. Useful for webdemos, annoying to powerusers.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'safe-part_bill_event',
- 'section' => 'UI',
- 'description' => 'Validates invoice event expressions against a preset list. Useful for webdemos, annoying to powerusers.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'show_ss',
- 'section' => 'UI',
- 'description' => 'Turns on display/collection of SS# in the web interface.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'agent_defaultpkg',
- 'section' => 'UI',
- 'description' => 'Setting this option will cause new packages to be available to all agent types by default.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'legacy_link',
- 'section' => 'UI',
- 'description' => 'Display options in the web interface to link legacy pre-Freeside services.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'legacy_link-steal',
- 'section' => 'UI',
- 'description' => 'Allow "stealing" an already-audited service from one customer (or package) to another using the link function.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'queue_dangerous_controls',
- 'section' => 'UI',
- 'description' => 'Enable queue modification controls on account pages and for new jobs. Unless you are a developer working on new export code, you should probably leave this off to avoid causing provisioning problems.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'security_phrase',
- 'section' => 'password',
- 'description' => 'Enable the tracking of a "security phrase" with each account. Not recommended, as it is vulnerable to social engineering.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'locale',
- 'section' => 'UI',
- 'description' => 'Message locale',
- 'type' => 'select',
- 'select_enum' => [ qw(en_US) ],
- },
-
- {
- 'key' => 'selfservice_server-quiet',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, the self-service server no longer sends superfluous decline and cancel emails. Used to disable decline and cancel emails generated by transactions initiated by the selfservice server.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'signup_server-quiet',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, the signup server is now part of the self-service server and no longer sends superfluous decline and cancel emails. Used to disable decline and cancel emails generated by transactions initiated by the signup server. Does not disable welcome emails.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'signup_server-payby',
- 'section' => '',
- 'description' => 'Acceptable payment types for the signup server',
- 'type' => 'selectmultiple',
- 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB PREPAY BILL COMP) ],
- },
-
- {
- 'key' => 'signup_server-email',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, this feature is no longer available. See the ***fill me in*** report instead. Used to contain a comma-separated list of email addresses to receive notification of signups via the signup server.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'signup_server-default_agentnum',
- 'section' => '',
- 'description' => 'Default agentnum for the signup server',
- 'type' => 'text',
- },
-
- {
- 'key' => 'signup_server-default_refnum',
- 'section' => '',
- 'description' => 'Default advertising source number for the signup server',
- 'type' => 'text',
- },
-
- {
- 'key' => 'show-msgcat-codes',
- 'section' => 'UI',
- 'description' => 'Show msgcat codes in error messages. Turn this option on before reporting errors to the mailing list.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'signup_server-realtime',
- 'section' => '',
- 'description' => 'Run billing for signup server signups immediately, and do not provision accounts which subsequently have a balance.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'backend-realtime',
- 'section' => '',
- 'description' => 'Run billing for backend signups immediately.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'declinetemplate',
- 'section' => 'billing',
- 'description' => 'Template file for credit card decline emails.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'emaildecline',
- 'section' => 'billing',
- 'description' => 'Enable emailing of credit card decline notices.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'emaildecline-exclude',
- 'section' => 'billing',
- 'description' => 'List of error messages that should not trigger email decline notices, one per line.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cancelmessage',
- 'section' => 'billing',
- 'description' => 'Template file for cancellation emails.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cancelsubject',
- 'section' => 'billing',
- 'description' => 'Subject line for cancellation emails.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'emailcancel',
- 'section' => 'billing',
- 'description' => 'Enable emailing of cancellation notices.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'require_cardname',
- 'section' => 'billing',
- 'description' => 'Require an "Exact name on card" to be entered explicitly; don\'t default to using the first and last name.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'enable_taxclasses',
- 'section' => 'billing',
- 'description' => 'Enable per-package tax classes',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'require_taxclasses',
- 'section' => 'billing',
- 'description' => 'Require a taxclass to be entered for every package',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'welcome_email',
- 'section' => '',
- 'description' => 'Template file for welcome email. Welcome emails are sent to the customer email invoice destination(s) each time a svc_acct record is created. See the <a href="http://search.cpan.org/~mjd/Text-Template/lib/Text/Template.pm">Text::Template</a> documentation for details on the template substitution language. The following variables are available<ul><li><code>$username</code> <li><code>$password</code> <li><code>$first</code> <li><code>$last</code> <li><code>$pkg</code></ul>',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'welcome_email-from',
- 'section' => '',
- 'description' => 'From: address header for welcome email',
- 'type' => 'text',
- },
-
- {
- 'key' => 'welcome_email-subject',
- 'section' => '',
- 'description' => 'Subject: header for welcome email',
- 'type' => 'text',
- },
-
- {
- 'key' => 'welcome_email-mimetype',
- 'section' => '',
- 'description' => 'MIME type for welcome email',
- 'type' => 'select',
- 'select_enum' => [ 'text/plain', 'text/html' ],
- },
-
- {
- 'key' => 'payby',
- 'section' => 'billing',
- 'description' => 'Available payment types.',
- 'type' => 'selectmultiple',
- 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD COMP) ],
- },
-
- {
- 'key' => 'payby-default',
- 'section' => 'UI',
- 'description' => 'Default payment type. HIDE disables display of billing information and sets customers to BILL.',
- 'type' => 'select',
- 'select_enum' => [ '', qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD COMP HIDE) ],
- },
-
- {
- 'key' => 'svc_acct-notes',
- 'section' => 'UI',
- 'description' => 'Extra HTML to be displayed on the Account View screen.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'radius-password',
- 'section' => '',
- 'description' => 'RADIUS attribute for plain-text passwords.',
- 'type' => 'select',
- 'select_enum' => [ 'Password', 'User-Password' ],
- },
-
- {
- 'key' => 'radius-ip',
- 'section' => '',
- 'description' => 'RADIUS attribute for IP addresses.',
- 'type' => 'select',
- 'select_enum' => [ 'Framed-IP-Address', 'Framed-Address' ],
- },
-
- {
- 'key' => 'svc_acct-alldomains',
- 'section' => '',
- 'description' => 'Allow accounts to select any domain in the database. Normally accounts can only select from the domain set in the service definition and those purchased by the customer.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'dump-scpdest',
- 'section' => '',
- 'description' => 'destination for scp database dumps: user@host:/path',
- 'type' => 'text',
- },
-
- {
- 'key' => 'dump-pgpid',
- 'section' => '',
- 'description' => "Optional PGP public key user or key id for database dumps. The public key should exist on the freeside user's public keyring, and the gpg binary and GnuPG perl module should be installed.",
- 'type' => 'text',
- },
-
- {
- 'key' => 'users-allow_comp',
- 'section' => 'deprecated',
- 'description' => '<b>DEPRECATED</b>, enable the <i>Complimentary customer</i> access right instead. Was: Usernames (Freeside users, created with <a href="../docs/man/bin/freeside-adduser.html">freeside-adduser</a>) which can create complimentary customers, one per line. If no usernames are entered, all users can create complimentary accounts.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cvv-save',
- 'section' => 'billing',
- 'description' => 'Save CVV2 information after the initial transaction for the selected credit card types. Enabling this option may be in violation of your merchant agreement(s), so please check them carefully before enabling this option for any credit card types.',
- 'type' => 'selectmultiple',
- 'select_enum' => [ "VISA card",
- "MasterCard",
- "Discover card",
- "American Express card",
- "Diner's Club/Carte Blanche",
- "enRoute",
- "JCB",
- "BankCard",
- ],
- },
-
- {
- 'key' => 'allow_negative_charges',
- 'section' => 'billing',
- 'description' => 'Allow negative charges. Normally not used unless importing data from a legacy system that requires this.',
- 'type' => 'checkbox',
- },
- {
- 'key' => 'auto_unset_catchall',
- 'section' => '',
- 'description' => 'When canceling a svc_acct that is the email catchall for one or more svc_domains, automatically set their catchall fields to null. If this option is not set, the attempt will simply fail.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'system_usernames',
- 'section' => 'username',
- 'description' => 'A list of system usernames that cannot be edited or removed, one per line. Use a bare username to prohibit modification/deletion of the username in any domain, or username@domain to prohibit modification/deletetion of a specific username and domain.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cust_pkg-change_svcpart',
- 'section' => '',
- 'description' => "When changing packages, move services even if svcparts don't match between old and new pacakge definitions.",
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'disable_autoreverse',
- 'section' => 'BIND',
- 'description' => 'Disable automatic synchronization of reverse-ARPA entries.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_www-enable_subdomains',
- 'section' => '',
- 'description' => 'Enable selection of specific subdomains for virtual host creation.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_www-usersvc_svcpart',
- 'section' => '',
- 'description' => 'Allowable service definition svcparts for virtual hosts, one per line.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'selfservice_server-primary_only',
- 'section' => '',
- 'description' => 'Only allow primary accounts to access self-service functionality.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'card_refund-days',
- 'section' => 'billing',
- 'description' => 'After a payment, the number of days a refund link will be available for that payment. Defaults to 120.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'agent-showpasswords',
- 'section' => '',
- 'description' => 'Display unencrypted user passwords in the agent (reseller) interface',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'global_unique-username',
- 'section' => 'username',
- 'description' => 'Global username uniqueness control: none (usual setting - check uniqueness per exports), username (all usernames are globally unique, regardless of domain or exports), or username@domain (all username@domain pairs are globally unique, regardless of exports). disabled turns off duplicate checking completely and is STRONGLY NOT RECOMMENDED unless you REALLY need to turn this off.',
- 'type' => 'select',
- 'select_enum' => [ 'none', 'username', 'username@domain', 'disabled' ],
- },
-
- {
- 'key' => 'svc_external-skip_manual',
- 'section' => 'UI',
- 'description' => 'When provisioning svc_external services, skip manual entry of id and title fields in the UI. Usually used in conjunction with an export that populates these fields (i.e. artera_turbo).',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_external-display_type',
- 'section' => 'UI',
- 'description' => 'Select a specific svc_external type to enable some UI changes specific to that type (i.e. artera_turbo).',
- 'type' => 'select',
- 'select_enum' => [ 'generic', 'artera_turbo', ],
- },
-
- {
- 'key' => 'ticket_system',
- 'section' => '',
- 'description' => 'Ticketing system integration. <b>RT_Internal</b> uses the built-in RT ticketing system (see the <a href="../docs/install-rt">integrated ticketing installation instructions</a>). <b>RT_External</b> accesses an external RT installation in a separate database (local or remote).',
- 'type' => 'select',
- #'select_enum' => [ '', qw(RT_Internal RT_Libs RT_External) ],
- 'select_enum' => [ '', qw(RT_Internal RT_External) ],
- },
-
- {
- 'key' => 'ticket_system-default_queueid',
- 'section' => '',
- 'description' => 'Default queue used when creating new customer tickets.',
- 'type' => 'select-sub',
- 'options_sub' => sub {
- my $conf = new FS::Conf;
- if ( $conf->config('ticket_system') ) {
- eval "use FS::TicketSystem;";
- die $@ if $@;
- FS::TicketSystem->queues();
- } else {
- ();
- }
- },
- 'option_sub' => sub {
- my $conf = new FS::Conf;
- if ( $conf->config('ticket_system') ) {
- eval "use FS::TicketSystem;";
- die $@ if $@;
- FS::TicketSystem->queue(shift);
- } else {
- '';
- }
- },
- },
-
- {
- 'key' => 'ticket_system-custom_priority_field',
- 'section' => '',
- 'description' => 'Custom field from the ticketing system to use as a custom priority classification.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'ticket_system-custom_priority_field-values',
- 'section' => '',
- 'description' => 'Values for the custom field from the ticketing system to break down and sort customer ticket lists.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'ticket_system-custom_priority_field_queue',
- 'section' => '',
- 'description' => 'Ticketing system queue in which the custom field specified in ticket_system-custom_priority_field is located.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'ticket_system-rt_external_datasrc',
- 'section' => '',
- 'description' => 'With external RT integration, the DBI data source for the external RT installation, for example, <code>DBI:Pg:user=rt_user;password=rt_word;host=rt.example.com;dbname=rt</code>',
- 'type' => 'text',
-
- },
-
- {
- 'key' => 'ticket_system-rt_external_url',
- 'section' => '',
- 'description' => 'With external RT integration, the URL for the external RT installation, for example, <code>https://rt.example.com/rt</code>',
- 'type' => 'text',
- },
-
- {
- 'key' => 'company_name',
- 'section' => 'required',
- 'description' => 'Your company name',
- 'type' => 'text',
- },
-
- {
- 'key' => 'echeck-void',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to enable local-only voiding of echeck payments in addition to refunds against the payment gateway',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'cc-void',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to enable local-only voiding of credit card payments in addition to refunds against the payment gateway',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'unvoid',
- 'section' => 'deprecated',
- 'description' => '<B>DEPRECATED</B>, now controlled by ACLs. Used to enable unvoiding of voided payments',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'address2-search',
- 'section' => 'UI',
- 'description' => 'Enable a "Unit" search box which searches the second address field',
- 'type' => 'checkbox',
- },
-
- { 'key' => 'referral_credit',
- 'section' => 'billing',
- 'description' => "Enables one-time referral credits in the amount of one month <i>referred</i> customer's recurring fee (irregardless of frequency).",
- 'type' => 'checkbox',
- },
-
- { 'key' => 'selfservice_server-cache_module',
- 'section' => '',
- 'description' => 'Module used to store self-service session information. All modules handle any number of self-service servers. Cache::SharedMemoryCache is appropriate for a single database / single Freeside server. Cache::FileCache is useful for multiple databases on a single server, or when IPC::ShareLite is not available (i.e. FreeBSD).', # _Database stores session information in the database and is appropriate for multiple Freeside servers, but may be slower.',
- 'type' => 'select',
- 'select_enum' => [ 'Cache::SharedMemoryCache', 'Cache::FileCache', ], # '_Database' ],
- },
-
- {
- 'key' => 'hylafax',
- 'section' => '',
- 'description' => 'Options for a HylaFAX server to enable the FAX invoice destination. They should be in the form of a space separated list of arguments to the Fax::Hylafax::Client::sendfax subroutine. You probably shouldn\'t override things like \'docfile\'. *Note* Only supported when using typeset invoices (see the invoice_latex configuration option).',
- 'type' => [qw( checkbox textarea )],
- },
-
- {
- 'key' => 'svc_acct-usage_suspend',
- 'section' => 'billing',
- 'description' => 'Suspends the package an account belongs to when svc_acct.seconds is decremented to 0 or below (accounts with an empty seconds value are ignored). Typically used in conjunction with prepaid packages and freeside-sqlradius-radacctd.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_acct-usage_unsuspend',
- 'section' => 'billing',
- 'description' => 'Unuspends the package an account belongs to when svc_acct.seconds is incremented from 0 or below to a positive value (accounts with an empty seconds value are ignored). Typically used in conjunction with prepaid packages and freeside-sqlradius-radacctd.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'cust-fields',
- 'section' => 'UI',
- 'description' => 'Which customer fields to display on reports by default',
- 'type' => 'select',
- 'select_hash' => [ FS::ConfDefaults->cust_fields_avail() ],
- },
-
- {
- 'key' => 'cust_pkg-display_times',
- 'section' => 'UI',
- 'description' => 'Display full timestamps (not just dates) for customer packages. Useful if you are doing real-time things like hourly prepaid.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_acct-edit_uid',
- 'section' => 'shell',
- 'description' => 'Allow UID editing.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_acct-edit_gid',
- 'section' => 'shell',
- 'description' => 'Allow GID editing.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'zone-underscore',
- 'section' => 'BIND',
- 'description' => 'Allow underscores in zone names. As underscores are illegal characters in zone names, this option is not recommended.',
- 'type' => 'checkbox',
- },
-
- #these should become per-user...
- {
- 'key' => 'vonage-username',
- 'section' => '',
- 'description' => 'Vonage Click2Call username (see <a href="https://secure.click2callu.com/">https://secure.click2callu.com/</a>)',
- 'type' => 'text',
- },
- {
- 'key' => 'vonage-password',
- 'section' => '',
- 'description' => 'Vonage Click2Call username (see <a href="https://secure.click2callu.com/">https://secure.click2callu.com/</a>)',
- 'type' => 'text',
- },
- {
- 'key' => 'vonage-fromnumber',
- 'section' => '',
- 'description' => 'Vonage Click2Call number (see <a href="https://secure.click2callu.com/">https://secure.click2callu.com/</a>)',
- 'type' => 'text',
- },
-
- {
- 'key' => 'echeck-nonus',
- 'section' => 'billing',
- 'description' => 'Disable ABA-format account checking for Electronic Check payment info',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'voip-cust_cdr_spools',
- 'section' => '',
- 'description' => 'Enable the per-customer option for individual CDR spools.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'svc_forward-arbitrary_dst',
- 'section' => '',
- 'description' => "Allow forwards to point to arbitrary strings that don't necessarily look like email addresses. Only used when using forwards for weird, non-email things.",
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'tax-ship_address',
- 'section' => 'billing',
- 'description' => 'By default, tax calculations are done based on the billing address. Enable this switch to calculate tax based on the shipping address instead. Note: Tax reports can take a long time when enabled.',
- 'type' => 'checkbox',
- },
-
- {
- 'key' => 'batch-default_format',
- 'section' => 'billing',
- 'description' => 'Default format for batches.',
- 'type' => 'select',
- 'select_enum' => [ 'csv-td_canada_trust-merchant_pc_batch', 'BoM' ]
- },
-
- {
- 'key' => 'batchconfig-BoM',
- 'section' => 'billing',
- 'description' => 'Configuration for Bank of Montreal batching, seven lines: 1. Origin ID, 2. Datacenter, 3. Typecode, 4. Short name, 5. Long name, 6. Bank, 7. Bank account',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'payment_history-years',
- 'section' => 'UI',
- 'description' => 'Number of years of payment history to show by default. Currently defaults to 2.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'cust_main-ticket_statuses',
- 'section' => 'UI',
- 'description' => 'Show tickets with these statuses on the customer view page.',
- 'type' => 'selectmultiple',
- 'select_enum' => [qw( new open stalled resolved rejected deleted )],
- },
-
- {
- 'key' => 'cust_main-max_tickets',
- 'section' => 'UI',
- 'description' => 'Maximum number of tickets to show on the customer view page.',
- 'type' => 'text',
- },
-
- {
- 'key' => 'cust_main-skeleton_tables',
- 'section' => '',
- 'description' => 'Tables which will have skeleton records inserted into them for each customer. Syntax for specifying tables is unfortunately a tricky perl data structure for now.',
- 'type' => 'textarea',
- },
-
- {
- 'key' => 'cust_main-skeleton_custnum',
- 'section' => '',
- 'description' => 'Customer number specifying the source data to copy into skeleton tables for new customers.',
- 'type' => 'text',
- },
-
-);
-
-1;
-
diff --git a/FS/FS/ConfDefaults.pm b/FS/FS/ConfDefaults.pm
deleted file mode 100644
index b9cbcfb..0000000
--- a/FS/FS/ConfDefaults.pm
+++ /dev/null
@@ -1,68 +0,0 @@
-package FS::ConfDefaults;
-
-=head1 NAME
-
-FS::ConfDefaults - Freeside configuration default and available values
-
-=head1 SYNOPSIS
-
- use FS::ConfDefaults;
-
- @avail_cust_fields = FS::ConfDefaults->cust_fields_avail();
-
-=head1 DESCRIPTION
-
-Just a small class to keep config default and available values
-
-=head1 METHODS
-
-=over 4
-
-=item cust_fields_avail
-
-Returns a list, suitable for assigning to a hash, of available values and
-labels for customer fields values.
-
-=cut
-
-# XXX should use msgcat for "Day phone" and "Night phone", but how?
-sub cust_fields_avail { (
-
- 'Customer' =>
- 'Last, First or Company (Last, First)',
- 'Cust# | Customer' =>
- 'custnum | Last, First or Company (Last, First)',
-
- 'Name | Company' =>
- 'Last, First | Company',
- 'Cust# | Name | Company' =>
- 'custnum | Last, First | Company',
-
- '(bill) Customer | (service) Customer' =>
- 'Last, First or Company (Last, First) | (same for service contact if present)',
- 'Cust# | (bill) Customer | (service) Customer' =>
- 'custnum | Last, First or Company (Last, First) | (same for service contact if present)',
-
- '(bill) Name | (bill) Company | (service) Name | (service) Company' =>
- 'Last, First | Company | (same for service address if present)',
- 'Cust# | (bill) Name | (bill) Company | (service) Name | (service) Company' =>
- 'custnum | Last, First | Company | (same for service address if present)',
-
- 'Cust# | Name | Company | Address 1 | Address 2 | City | State | Zip | Country | Day phone | Night phone | Invoicing email(s)' =>
- 'custnum | Last, First | Company | (all address fields ) | Day phone | Night phone | Invoicing email(s)',
-
-); }
-
-=back
-
-=head1 BUGS
-
-Not yet.
-
-=head1 SEE ALSO
-
-L<FS::Conf>
-
-=cut
-
-1;
diff --git a/FS/FS/ConfItem.pm b/FS/FS/ConfItem.pm
deleted file mode 100644
index a0e997a..0000000
--- a/FS/FS/ConfItem.pm
+++ /dev/null
@@ -1,63 +0,0 @@
-package FS::ConfItem;
-
-=head1 NAME
-
-FS::ConfItem - Configuration option meta-data.
-
-=head1 SYNOPSIS
-
- use FS::Conf;
- @config_items = $conf->config_items;
-
- foreach $item ( @config_items ) {
- $key = $item->key;
- $section = $item->section;
- $description = $item->description;
- }
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = @_ ? shift : {};
- bless ($self, $class);
-}
-
-=item key
-
-=item section
-
-=item description
-
-=cut
-
-sub AUTOLOAD {
- my $self = shift;
- my $field = $AUTOLOAD;
- $field =~ s/.*://;
- $self->{$field};
-}
-
-=back
-
-=head1 BUGS
-
-Terse docs.
-
-=head1 SEE ALSO
-
-L<FS::Conf>
-
-=cut
-
-1;
-
diff --git a/FS/FS/Cron/backup.pm b/FS/FS/Cron/backup.pm
deleted file mode 100644
index 204069a..0000000
--- a/FS/FS/Cron/backup.pm
+++ /dev/null
@@ -1,43 +0,0 @@
-package FS::Cron::backup;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK );
-use Exporter;
-use FS::UID qw(driver_name datasrc);
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( backup_scp );
-
-sub backup_scp {
- my $conf = new FS::Conf;
- my $dest = $conf->config('dump-scpdest');
- if ( $dest ) {
- datasrc =~ /dbname=([\w\.]+)$/ or die "unparsable datasrc ". datasrc;
- my $database = $1;
- eval "use Net::SCP qw(scp);";
- die $@ if $@;
- if ( driver_name eq 'Pg' ) {
- system("pg_dump $database >/var/tmp/$database.sql")
- } else {
- die "database dumps not yet supported for ". driver_name;
- }
- if ( $conf->config('dump-pgpid') ) {
- eval 'use GnuPG;';
- die $@ if $@;
- my $gpg = new GnuPG;
- $gpg->encrypt( plaintext => "/var/tmp/$database.sql",
- output => "/var/tmp/$database.gpg",
- recipient => $conf->config('dump-pgpid'),
- );
- chmod 0600, '/var/tmp/$database.gpg';
- scp("/var/tmp/$database.gpg", $dest);
- unlink "/var/tmp/$database.gpg" or die $!;
- } else {
- chmod 0600, '/var/tmp/$database.sql';
- scp("/var/tmp/$database.sql", $dest);
- }
- unlink "/var/tmp/$database.sql" or die $!;
- }
-}
-
-1;
diff --git a/FS/FS/Cron/bill.pm b/FS/FS/Cron/bill.pm
deleted file mode 100644
index 774bf30..0000000
--- a/FS/FS/Cron/bill.pm
+++ /dev/null
@@ -1,119 +0,0 @@
-package FS::Cron::bill;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK );
-use Exporter;
-use Date::Parse;
-use FS::Record qw(qsearch qsearchs);
-use FS::cust_main;
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw ( bill );
-
-sub bill {
-
- my %opt = @_;
-
- $FS::cust_main::DEBUG = 1 if $opt{'v'};
-
- my %search = ();
- $search{'payby'} = $opt{'p'} if $opt{'p'};
- $search{'agentnum'} = $opt{'a'} if $opt{'a'};
-
- #we're at now now (and later).
- my($time)= $opt{'d'} ? str2time($opt{'d'}) : $^T;
- $time += $opt{'y'} * 86400 if $opt{'y'};
-
- # select * from cust_main where
- my $where_pkg = <<"END";
- 0 < ( select count(*) from cust_pkg
- where cust_main.custnum = cust_pkg.custnum
- and ( cancel is null or cancel = 0 )
- and ( setup is null or setup = 0
- or bill is null or bill <= $time
- or ( expire is not null and expire <= $^T )
- )
- )
-END
-
- # or
- my $where_bill_event = <<"END";
- 0 < ( select count(*) from cust_bill
- where cust_main.custnum = cust_bill.custnum
- and 0 < charged
- - coalesce(
- ( select sum(amount) from cust_bill_pay
- where cust_bill.invnum = cust_bill_pay.invnum )
- ,0
- )
- - coalesce(
- ( select sum(amount) from cust_credit_bill
- where cust_bill.invnum = cust_credit_bill.invnum )
- ,0
- )
- and 0 < ( select count(*) from part_bill_event
- where payby = cust_main.payby
- and ( disabled is null or disabled = '' )
- and seconds <= $time - cust_bill._date
- and 0 = ( select count(*) from cust_bill_event
- where cust_bill.invnum = cust_bill_event.invnum
- and part_bill_event.eventpart = cust_bill_event.eventpart
- and status = 'done'
- )
-
- )
- )
-END
-
- my $extra_sql = ( scalar(%search) ? ' AND ' : ' WHERE ' ). "( $where_pkg OR $where_bill_event )";
-
- my @cust_main;
- if ( @ARGV ) {
- @cust_main = map { qsearchs('cust_main', { custnum => $_, %search } ) } @ARGV
- } else {
- @cust_main = qsearch('cust_main', \%search, '', $extra_sql );
- }
- ;
-
- my($cust_main,%saw);
- foreach $cust_main ( @cust_main ) {
-
- # $^T not $time because -d is for pre-printing invoices
- foreach my $cust_pkg (
- grep { $_->expire && $_->expire <= $^T } $cust_main->ncancelled_pkgs
- ) {
- my $error = $cust_pkg->cancel;
- warn "Error cancelling expired pkg ". $cust_pkg->pkgnum. " for custnum ".
- $cust_main->custnum. ": $error"
- if $error;
- }
- # $^T not $time because -d is for pre-printing invoices
- foreach my $cust_pkg (
- grep { $_->part_pkg->is_prepaid
- && $_->bill && $_->bill < $^T && ! $_->susp
- }
- $cust_main->ncancelled_pkgs
- ) {
- my $error = $cust_pkg->suspend;
- warn "Error suspending package ". $cust_pkg->pkgnum.
- " for custnum ". $cust_main->custnum.
- ": $error"
- if $error;
- }
-
- my $error = $cust_main->bill( 'time' => $time,
- 'resetup' => $opt{'s'},
- );
- warn "Error billing, custnum ". $cust_main->custnum. ": $error" if $error;
-
- $cust_main->apply_payments;
- $cust_main->apply_credits;
-
- $error = $cust_main->collect( 'invoice_time' => $time,
- 'freq' => $opt{'freq'},
- );
- warn "Error collecting, custnum". $cust_main->custnum. ": $error" if $error;
-
- }
-
-}
diff --git a/FS/FS/Cron/vacuum.pm b/FS/FS/Cron/vacuum.pm
deleted file mode 100644
index 075572d..0000000
--- a/FS/FS/Cron/vacuum.pm
+++ /dev/null
@@ -1,23 +0,0 @@
-package FS::Cron::vacuum;
-
-use vars qw( @ISA @EXPORT_OK);
-use Exporter;
-use FS::UID qw(driver_name dbh);
-use FS::Schema qw(dbdef);
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( vacuum );
-
-sub vacuum {
-
- if ( driver_name eq 'Pg' ) {
- dbh->{AutoCommit} = 1; #so we can vacuum
- foreach my $table ( dbdef->tables ) {
- my $sth = dbh->prepare("VACUUM ANALYZE $table") or die dbh->errstr;
- $sth->execute or die $sth->errstr;
- }
- }
-
-}
-
-1;
diff --git a/FS/FS/CurrentUser.pm b/FS/FS/CurrentUser.pm
deleted file mode 100644
index bcd337d..0000000
--- a/FS/FS/CurrentUser.pm
+++ /dev/null
@@ -1,67 +0,0 @@
-package FS::CurrentUser;
-
-use vars qw($CurrentUser $upgrade_hack);
-
-#not at compile-time, circular dependancey causes trouble
-#use FS::Record qw(qsearchs);
-#use FS::access_user;
-
-$upgrade_hack = 0;
-
-=head1 NAME
-
-FS::CurrentUser - Package representing the current user
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=cut
-
-sub load_user {
- my( $class, $user ) = @_; #, $pass
-
- if ( $upgrade_hack ) {
- return $CurrentUser = new FS::CurrentUser::BootstrapUser;
- }
-
- #return "" if $user =~ /^fs_(queue|selfservice)$/;
-
- #not the best thing in the world...
- eval "use FS::Record qw(qsearchs);";
- die $@ if $@;
- eval "use FS::access_user;";
- die $@ if $@;
-
- $CurrentUser = qsearchs('access_user', {
- 'username' => $user,
- #'_password' =>
- 'disabled' => '',
- } );
-
- die "unknown user: $user" unless $CurrentUser; # or bad password
-
- $CurrentUser;
-}
-
-=head1 BUGS
-
-Creepy crawlies
-
-=head1 SEE ALSO
-
-=cut
-
-package FS::CurrentUser::BootstrapUser;
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
-}
-
-sub AUTOLOAD { 1 };
-
-1;
-
diff --git a/FS/FS/Daemon.pm b/FS/FS/Daemon.pm
deleted file mode 100644
index 7e0d45c..0000000
--- a/FS/FS/Daemon.pm
+++ /dev/null
@@ -1,92 +0,0 @@
-package FS::Daemon;
-
-use vars qw( @ISA @EXPORT_OK );
-use vars qw( $pid_dir $me $pid_file $sigint $sigterm $logfile );
-use Exporter;
-use Fcntl qw(:flock);
-use POSIX qw(setsid);
-use IO::File;
-use Date::Format;
-
-#this is a simple refactoring of the stuff from freeside-queued, just to
-#avoid duplicate code. eventually this should use something from CPAN.
-
-@ISA = qw(Exporter);
-@EXPORT_OK = qw( daemonize1 drop_root daemonize2 sigint sigterm logfile );
-
-$pid_dir = '/var/run';
-
-sub daemonize1 {
- $me = shift;
-
- $pid_file = "$pid_dir/$me";
- $pid_file .= '.'.shift if scalar(@_);
- $pid_file .= '.pid';
-
- chdir "/" or die "Can't chdir to /: $!";
- open STDIN, '/dev/null' or die "Can't read /dev/null: $!";
- defined(my $pid = fork) or die "Can't fork: $!";
- if ( $pid ) {
- print "$me started with pid $pid\n"; #logging to $log_file\n";
- exit unless $pid_file;
- my $pidfh = new IO::File ">$pid_file" or exit;
- print $pidfh "$pid\n";
- exit;
- }
-
- #sub REAPER { my $pid = wait; $SIG{CHLD} = \&REAPER; $kids--; }
- #$SIG{CHLD} = \&REAPER;
- $sigterm = 0;
- $sigint = 0;
- $SIG{INT} = sub { warn "SIGINT received; shutting down\n"; $sigint++; };
- $SIG{TERM} = sub { warn "SIGTERM received; shutting down\n"; $sigterm++; };
-}
-
-sub drop_root {
- my $freeside_gid = scalar(getgrnam('freeside'))
- or die "can't find freeside group\n";
- $) = $freeside_gid;
- $( = $freeside_gid;
- #if freebsd can't setuid(), presumably it can't setgid() either. grr fleabsd
- ($(,$)) = ($),$();
- $) = $freeside_gid;
-
- $> = $FS::UID::freeside_uid;
- $< = $FS::UID::freeside_uid;
- #freebsd is sofa king broken, won't setuid()
- ($<,$>) = ($>,$<);
- $> = $FS::UID::freeside_uid;
-}
-
-sub daemonize2 {
- open STDOUT, '>/dev/null' or die "Can't write to /dev/null: $!";
- setsid or die "Can't start a new session: $!";
- open STDERR, '>&STDOUT' or die "Can't dup stdout: $!";
-
- $SIG{__DIE__} = \&_die;
- $SIG{__WARN__} = \&_logmsg;
-
- warn "$me starting\n";
-}
-
-sub sigint { $sigint; }
-sub sigterm { $sigterm; }
-
-sub logfile { $logfile = shift; } #_logmsg('test'); }
-
-sub _die {
- my $msg = shift;
- unlink $pid_file if -e $pid_file;
- _logmsg($msg);
-}
-
-sub _logmsg {
- chomp( my $msg = shift );
- my $log = new IO::File ">>$logfile";
- flock($log, LOCK_EX);
- seek($log, 0, 2);
- print $log "[". time2str("%a %b %e %T %Y",time). "] [$$] $msg\n";
- flock($log, LOCK_UN);
- close $log;
-}
-
diff --git a/FS/FS/InitHandler.pm b/FS/FS/InitHandler.pm
deleted file mode 100644
index 5038cf3..0000000
--- a/FS/FS/InitHandler.pm
+++ /dev/null
@@ -1,91 +0,0 @@
-package FS::InitHandler;
-
-# this leaks memory under graceful restarts and i wouldn't use it on any
-# modern server. useful for very slow machines with memory to spare, just
-# always do a full restart
-
-use strict;
-use vars qw($DEBUG);
-use FS::UID qw(adminsuidsetup);
-use FS::Record;
-
-$DEBUG = 1;
-
-sub handler {
-
- use Date::Format;
- use Date::Parse;
- use Tie::IxHash;
- use HTML::Entities;
- use IO::Handle;
- use IO::File;
- use String::Approx;
- use HTML::Widgets::SelectLayers 0.02;
- #use FS::UID;
- #use FS::Record;
- use FS::Conf;
- use FS::CGI;
- use FS::Msgcat;
-
- use FS::agent;
- use FS::agent_type;
- use FS::domain_record;
- use FS::cust_bill;
- use FS::cust_bill_pay;
- use FS::cust_credit;
- use FS::cust_credit_bill;
- use FS::cust_main;
- use FS::cust_main_county;
- use FS::cust_pay;
- use FS::cust_pkg;
- use FS::cust_refund;
- use FS::cust_svc;
- use FS::nas;
- use FS::part_bill_event;
- use FS::part_pkg;
- use FS::part_referral;
- use FS::part_svc;
- use FS::pkg_svc;
- use FS::port;
- use FS::queue;
- use FS::raddb;
- use FS::session;
- use FS::svc_acct;
- use FS::svc_acct_pop;
- use FS::svc_domain;
- use FS::svc_forward;
- use FS::svc_www;
- use FS::type_pkgs;
- use FS::part_export;
- use FS::part_export_option;
- use FS::export_svc;
- use FS::msgcat;
-
- warn "[FS::InitHandler] handler called\n" if $DEBUG;
-
- #this is sure to be broken on freebsd
- $> = $FS::UID::freeside_uid;
-
- open(MAPSECRETS,"<$FS::UID::conf_dir/mapsecrets")
- or die "can't read $FS::UID::conf_dir/mapsecrets: $!";
-
- my %seen;
- while (<MAPSECRETS>) {
- next if /^\s*(#|$)/;
- /^([\w\-\.]+)\s(.*)$/
- or do { warn "strange line in mapsecrets: $_"; next; };
- my($user, $datasrc) = ($1, $2);
- next if $seen{$datasrc}++;
- warn "[FS::InitHandler] preloading $datasrc for $user\n" if $DEBUG;
- adminsuidsetup($user);
- }
-
- close MAPSECRETS;
-
- #lalala probably broken on freebsd
- ($<, $>) = ($>, $<);
- $< = 0;
-
-}
-
-1;
diff --git a/FS/FS/Misc.pm b/FS/FS/Misc.pm
deleted file mode 100644
index 101a2d4..0000000
--- a/FS/FS/Misc.pm
+++ /dev/null
@@ -1,420 +0,0 @@
-package FS::Misc;
-
-use strict;
-use vars qw ( @ISA @EXPORT_OK $DEBUG );
-use Exporter;
-use Carp;
-use Data::Dumper;
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( send_email send_fax states_hash state_label );
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::Misc - Miscellaneous subroutines
-
-=head1 SYNOPSIS
-
- use FS::Misc qw(send_email);
-
- send_email();
-
-=head1 DESCRIPTION
-
-Miscellaneous subroutines. This module contains miscellaneous subroutines
-called from multiple other modules. These are not OO or necessarily related,
-but are collected here to elimiate code duplication.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item send_email OPTION => VALUE ...
-
-Options:
-
-I<from> - (required)
-
-I<to> - (required) comma-separated scalar or arrayref of recipients
-
-I<subject> - (required)
-
-I<content-type> - (optional) MIME type for the body
-
-I<body> - (required unless I<nobody> is true) arrayref of body text lines
-
-I<mimeparts> - (optional, but required if I<nobody> is true) arrayref of MIME::Entity->build PARAMHASH refs or MIME::Entity objects. These will be passed as arguments to MIME::Entity->attach().
-
-I<nobody> - (optional) when set true, send_email will ignore the I<body> option and simply construct a message with the given I<mimeparts>. In this case,
-I<content-type>, if specified, overrides the default "multipart/mixed" for the outermost MIME container.
-
-I<content-encoding> - (optional) when using nobody, optional top-level MIME
-encoding which, if specified, overrides the default "7bit".
-
-I<type> - (optional) type parameter for multipart/related messages
-
-=cut
-
-use vars qw( $conf );
-use Date::Format;
-use Mail::Header;
-use Mail::Internet 1.44;
-use MIME::Entity;
-use FS::UID;
-
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
-} );
-
-sub send_email {
- my(%options) = @_;
- if ( $DEBUG ) {
- my %doptions = %options;
- $doptions{'body'} = '(full body not shown in debug)';
- warn "FS::Misc::send_email called with options:\n ". Dumper(\%doptions);
-# join("\n", map { " $_: ". $options{$_} } keys %options ). "\n"
- }
-
- $ENV{MAILADDRESS} = $options{'from'};
- my $to = ref($options{to}) ? join(', ', @{ $options{to} } ) : $options{to};
-
- my @mimeargs = ();
- my @mimeparts = ();
- if ( $options{'nobody'} ) {
-
- croak "'mimeparts' option required when 'nobody' option given\n"
- unless $options{'mimeparts'};
-
- @mimeparts = @{$options{'mimeparts'}};
-
- @mimeargs = (
- 'Type' => ( $options{'content-type'} || 'multipart/mixed' ),
- 'Encoding' => ( $options{'content-encoding'} || '7bit' ),
- );
-
- } else {
-
- @mimeparts = @{$options{'mimeparts'}}
- if ref($options{'mimeparts'}) eq 'ARRAY';
-
- if (scalar(@mimeparts)) {
-
- @mimeargs = (
- 'Type' => 'multipart/mixed',
- 'Encoding' => '7bit',
- );
-
- unshift @mimeparts, {
- 'Type' => ( $options{'content-type'} || 'text/plain' ),
- 'Data' => $options{'body'},
- 'Encoding' => ( $options{'content-type'} ? '-SUGGEST' : '7bit' ),
- 'Disposition' => 'inline',
- };
-
- } else {
-
- @mimeargs = (
- 'Type' => ( $options{'content-type'} || 'text/plain' ),
- 'Data' => $options{'body'},
- 'Encoding' => ( $options{'content-type'} ? '-SUGGEST' : '7bit' ),
- );
-
- }
-
- }
-
- my $domain;
- if ( $options{'from'} =~ /\@([\w\.\-]+)/ ) {
- $domain = $1;
- } else {
- warn 'no domain found in invoice from address '. $options{'from'}.
- '; constructing Message-ID @example.com';
- $domain = 'example.com';
- }
- my $message_id = join('.', rand()*(2**32), $$, time). "\@$domain";
-
- my $message = MIME::Entity->build(
- 'From' => $options{'from'},
- 'To' => $to,
- 'Sender' => $options{'from'},
- 'Reply-To' => $options{'from'},
- 'Date' => time2str("%a, %d %b %Y %X %z", time),
- 'Subject' => $options{'subject'},
- 'Message-ID' => "<$message_id>",
- @mimeargs,
- );
-
- if ( $options{'type'} ) {
- #false laziness w/cust_bill::generate_email
- $message->head->replace('Content-type',
- $message->mime_type.
- '; boundary="'. $message->head->multipart_boundary. '"'.
- '; type='. $options{'type'}
- );
- }
-
- foreach my $part (@mimeparts) {
-
- if ( UNIVERSAL::isa($part, 'MIME::Entity') ) {
-
- warn "attaching MIME part from MIME::Entity object\n"
- if $DEBUG;
- $message->add_part($part);
-
- } elsif ( ref($part) eq 'HASH' ) {
-
- warn "attaching MIME part from hashref:\n".
- join("\n", map " $_: ".$part->{$_}, keys %$part ). "\n"
- if $DEBUG;
- $message->attach(%$part);
-
- } else {
- croak "mimepart $part isn't a hashref or MIME::Entity object!";
- }
-
- }
-
- my $smtpmachine = $conf->config('smtpmachine');
- $!=0;
-
- $message->mysmtpsend( 'Host' => $smtpmachine,
- 'MailFrom' => $options{'from'},
- );
-
-}
-
-#this kludges a "mysmtpsend" method into Mail::Internet for send_email above
-package Mail::Internet;
-
-use Mail::Address;
-use Net::SMTP;
-
-sub Mail::Internet::mysmtpsend {
- my $src = shift;
- my %opt = @_;
- my $host = $opt{Host};
- my $envelope = $opt{MailFrom};
- my $noquit = 0;
- my $smtp;
- my @hello = defined $opt{Hello} ? (Hello => $opt{Hello}) : ();
-
- push(@hello, 'Port', $opt{'Port'})
- if exists $opt{'Port'};
-
- push(@hello, 'Debug', $opt{'Debug'})
- if exists $opt{'Debug'};
-
- if(ref($host) && UNIVERSAL::isa($host,'Net::SMTP')) {
- $smtp = $host;
- $noquit = 1;
- }
- else {
- #local $SIG{__DIE__};
- #$smtp = eval { Net::SMTP->new($host, @hello) };
- $smtp = new Net::SMTP $host, @hello;
- }
-
- unless ( defined($smtp) ) {
- my $err = $!;
- $err =~ s/Invalid argument/Unknown host/;
- return "can't connect to $host: $err"
- }
-
- my $hdr = $src->head->dup;
-
- _prephdr($hdr);
-
- # Who is it to
-
- my @rcpt = map { ref($_) ? @$_ : $_ } grep { defined } @opt{'To','Cc','Bcc'};
- @rcpt = map { $hdr->get($_) } qw(To Cc Bcc)
- unless @rcpt;
- my @addr = map($_->address, Mail::Address->parse(@rcpt));
-
- return 'No valid destination addresses found!'
- unless(@addr);
-
- $hdr->delete('Bcc'); # Remove blind Cc's
-
- # Send it
-
- #warn "Headers: \n" . join('',@{$hdr->header});
- #warn "Body: \n" . join('',@{$src->body});
-
- my $ok = $smtp->mail( $envelope ) &&
- $smtp->to(@addr) &&
- $smtp->data(join("", @{$hdr->header},"\n",@{$src->body}));
-
- if ( $ok ) {
- $smtp->quit
- unless $noquit;
- return '';
- } else {
- return $smtp->code. ' '. $smtp->message;
- }
-
-}
-package FS::Misc;
-#eokludge
-
-=item send_fax OPTION => VALUE ...
-
-Options:
-
-I<dialstring> - (required) 10-digit phone number w/ area code
-
-I<docdata> - (required) Array ref containing PostScript or TIFF Class F document
-
--or-
-
-I<docfile> - (required) Filename of PostScript TIFF Class F document
-
-...any other options will be passed to L<Fax::Hylafax::Client::sendfax>
-
-
-=cut
-
-sub send_fax {
-
- my %options = @_;
-
- die 'HylaFAX support has not been configured.'
- unless $conf->exists('hylafax');
-
- eval {
- require Fax::Hylafax::Client;
- };
-
- if ($@) {
- if ($@ =~ /^Can't locate Fax.*/) {
- die "You must have Fax::Hylafax::Client installed to use invoice faxing."
- } else {
- die $@;
- }
- }
-
- my %hylafax_opts = map { split /\s+/ } $conf->config('hylafax');
-
- die 'Called send_fax without a \'dialstring\'.'
- unless exists($options{'dialstring'});
-
- if (exists($options{'docdata'}) and ref($options{'docdata'}) eq 'ARRAY') {
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- my $fh = new File::Temp(
- TEMPLATE => 'faxdoc.'. $options{'dialstring'} . '.XXXXXXXX',
- DIR => $dir,
- UNLINK => 0,
- ) or die "can't open temp file: $!\n";
-
- $options{docfile} = $fh->filename;
-
- print $fh @{$options{'docdata'}};
- close $fh;
-
- delete $options{'docdata'};
- }
-
- die 'Called send_fax without a \'docfile\' or \'docdata\'.'
- unless exists($options{'docfile'});
-
- #FIXME: Need to send canonical dialstring to HylaFAX, but this only
- # works in the US.
-
- $options{'dialstring'} =~ s/[^\d\+]//g;
- if ($options{'dialstring'} =~ /^\d{10}$/) {
- $options{dialstring} = '+1' . $options{'dialstring'};
- } else {
- return 'Invalid dialstring ' . $options{'dialstring'} . '.';
- }
-
- my $faxjob = &Fax::Hylafax::Client::sendfax(%options, %hylafax_opts);
-
- if ($faxjob->success) {
- warn "Successfully queued fax to '$options{dialstring}' with jobid " .
- $faxjob->jobid
- if $DEBUG;
- return '';
- } else {
- return 'Error while sending FAX: ' . $faxjob->trace;
- }
-
-}
-
-=item states_hash COUNTRY
-
-Returns a list of key/value pairs containing state (or other sub-country
-division) abbriviations and names.
-
-=cut
-
-use FS::Record qw(qsearch);
-use Locale::SubCountry;
-
-sub states_hash {
- my($country) = @_;
-
- my @states =
-# sort
- map { s/[\n\r]//g; $_; }
- map { $_->state; }
- qsearch( 'cust_main_county',
- { 'country' => $country },
- 'DISTINCT ON ( state ) *',
- )
- ;
-
- #it could throw a fatal "Invalid country code" error (for example "AX")
- my $subcountry = eval { new Locale::SubCountry($country) }
- or return ( '', '(n/a)' );
-
- #"i see your schwartz is as big as mine!"
- map { ( $_->[0] => $_->[1] ) }
- sort { $a->[1] cmp $b->[1] }
- map { [ $_ => state_label($_, $subcountry) ] }
- @states;
-}
-
-=item state_label STATE COUNTRY_OR_LOCALE_SUBCOUNRY_OBJECT
-
-=cut
-
-sub state_label {
- my( $state, $country ) = @_;
-
- unless ( ref($country) ) {
- $country = eval { new Locale::SubCountry($country) }
- or return'(n/a)';
-
- }
-
- # US kludge to avoid changing existing behaviour
- # also we actually *use* the abbriviations...
- my $full_name = $country->country_code eq 'US'
- ? ''
- : $country->full_name($state);
-
- $full_name = '' if $full_name eq 'unknown';
- $full_name =~ s/\(see also.*\)\s*$//;
- $full_name .= " ($state)" if $full_name;
-
- $full_name || $state || '(n/a)';
-
-}
-
-=back
-
-=head1 BUGS
-
-This package exists.
-
-=head1 SEE ALSO
-
-L<FS::UID>, L<FS::CGI>, L<FS::Record>, the base documentation.
-
-L<Fax::Hylafax::Client>
-
-=cut
-
-1;
diff --git a/FS/FS/Msgcat.pm b/FS/FS/Msgcat.pm
deleted file mode 100644
index 625743d..0000000
--- a/FS/FS/Msgcat.pm
+++ /dev/null
@@ -1,98 +0,0 @@
-package FS::Msgcat;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK $conf $locale $debug );
-use Exporter;
-use FS::UID;
-#use FS::Record qw( qsearchs ); # wtf? won't import...
-use FS::Record;
-use FS::Conf;
-use FS::msgcat;
-
-@ISA = qw(Exporter);
-@EXPORT_OK = qw( gettext geterror );
-
-$FS::UID::callback{'Msgcat'} = sub {
- $conf = new FS::Conf;
- $locale = $conf->config('locale') || 'en_US';
- $debug = $conf->exists('show-msgcat-codes')
-};
-
-=head1 NAME
-
-FS::Msgcat - Message catalog functions
-
-=head1 SYNOPSIS
-
- use FS::Msgcat qw(gettext geterror);
-
- #simple interface for retreiving messages...
- $message = gettext('msgcode');
- #or errors (includes the error code)
- $message = geterror('msgcode');
-
-=head1 DESCRIPTION
-
-FS::Msgcat provides functions to use the message catalog. If you want to
-maintain the message catalog database, see L<FS::msgcat> instead.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item gettext MSGCODE
-
-Returns the full message for the supplied message code.
-
-=cut
-
-sub gettext {
- $debug ? geterror(@_) : _gettext(@_);
-}
-
-sub _gettext {
- my $msgcode = shift;
- my $msgcat = FS::Record::qsearchs('msgcat', {
- 'msgcode' => $msgcode,
- 'locale' => $locale
- } );
- if ( $msgcat ) {
- $msgcat->msg;
- } else {
- warn "WARNING: message for msgcode $msgcode in locale $locale not found";
- $msgcode;
- }
-
-}
-
-=item geterror MSGCODE
-
-Returns the full message for the supplied message code, including the message
-code.
-
-=cut
-
-sub geterror {
- my $msgcode = shift;
- my $msg = _gettext($msgcode);
- if ( $msg eq $msgcode ) {
- "Error code $msgcode (message for locale $locale not found)";
- } else {
- "$msg (error code $msgcode)";
- }
-}
-
-=back
-
-=head1 BUGS
-
-i18n/l10n, eek
-
-=head1 SEE ALSO
-
-L<FS::msgcat>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/Pony.pm b/FS/FS/Pony.pm
deleted file mode 100644
index c37dd78..0000000
--- a/FS/FS/Pony.pm
+++ /dev/null
@@ -1,23 +0,0 @@
-package FS::Pony;
-
-=head1 NAME
-
-FS::Pony - A pony
-
-=head1 SYNOPSYS
-
-use FS::Pony; # <-- yours!
-
-=head1 DESCRIPTION
-
-We told you it came with a pony.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-http://420.am/~ivan/nopony.jpg
-
-=cut
-
-1;
diff --git a/FS/FS/Record.pm b/FS/FS/Record.pm
deleted file mode 100644
index a551bb8..0000000
--- a/FS/FS/Record.pm
+++ /dev/null
@@ -1,1971 +0,0 @@
-package FS::Record;
-
-use strict;
-use vars qw( $AUTOLOAD @ISA @EXPORT_OK $DEBUG
- $me %virtual_fields_cache $nowarn_identical );
-use Exporter;
-use Carp qw(carp cluck croak confess);
-use File::CounterFile;
-use Locale::Country;
-use DBI qw(:sql_types);
-use DBIx::DBSchema 0.25;
-use FS::UID qw(dbh getotaker datasrc driver_name);
-use FS::CurrentUser;
-use FS::Schema qw(dbdef);
-use FS::SearchCache;
-use FS::Msgcat qw(gettext);
-use FS::Conf;
-
-use FS::part_virtual_field;
-
-use Tie::IxHash;
-
-@ISA = qw(Exporter);
-
-#export dbdef for now... everything else expects to find it here
-@EXPORT_OK = qw(dbh fields hfields qsearch qsearchs dbdef jsearch);
-
-$DEBUG = 0;
-$me = '[FS::Record]';
-
-$nowarn_identical = 0;
-
-my $rsa_module;
-my $rsa_loaded;
-my $rsa_encrypt;
-my $rsa_decrypt;
-
-FS::UID->install_callback( sub {
- $File::CounterFile::DEFAULT_DIR = "/usr/local/etc/freeside/counters.". datasrc;
-} );
-
-=head1 NAME
-
-FS::Record - Database record objects
-
-=head1 SYNOPSIS
-
- use FS::Record;
- use FS::Record qw(dbh fields qsearch qsearchs);
-
- $record = new FS::Record 'table', \%hash;
- $record = new FS::Record 'table', { 'column' => 'value', ... };
-
- $record = qsearchs FS::Record 'table', \%hash;
- $record = qsearchs FS::Record 'table', { 'column' => 'value', ... };
- @records = qsearch FS::Record 'table', \%hash;
- @records = qsearch FS::Record 'table', { 'column' => 'value', ... };
-
- $table = $record->table;
- $dbdef_table = $record->dbdef_table;
-
- $value = $record->get('column');
- $value = $record->getfield('column');
- $value = $record->column;
-
- $record->set( 'column' => 'value' );
- $record->setfield( 'column' => 'value' );
- $record->column('value');
-
- %hash = $record->hash;
-
- $hashref = $record->hashref;
-
- $error = $record->insert;
-
- $error = $record->delete;
-
- $error = $new_record->replace($old_record);
-
- # external use deprecated - handled by the database (at least for Pg, mysql)
- $value = $record->unique('column');
-
- $error = $record->ut_float('column');
- $error = $record->ut_number('column');
- $error = $record->ut_numbern('column');
- $error = $record->ut_money('column');
- $error = $record->ut_text('column');
- $error = $record->ut_textn('column');
- $error = $record->ut_alpha('column');
- $error = $record->ut_alphan('column');
- $error = $record->ut_phonen('column');
- $error = $record->ut_anything('column');
- $error = $record->ut_name('column');
-
- $quoted_value = _quote($value,'table','field');
-
- #deprecated
- $fields = hfields('table');
- if ( $fields->{Field} ) { # etc.
-
- @fields = fields 'table'; #as a subroutine
- @fields = $record->fields; #as a method call
-
-
-=head1 DESCRIPTION
-
-(Mostly) object-oriented interface to database records. Records are currently
-implemented on top of DBI. FS::Record is intended as a base class for
-table-specific classes to inherit from, i.e. FS::cust_main.
-
-=head1 CONSTRUCTORS
-
-=over 4
-
-=item new [ TABLE, ] HASHREF
-
-Creates a new record. It doesn't store it in the database, though. See
-L<"insert"> for that.
-
-Note that the object stores this hash reference, not a distinct copy of the
-hash it points to. You can ask the object for a copy with the I<hash>
-method.
-
-TABLE can only be omitted when a dervived class overrides the table method.
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
-
- unless ( defined ( $self->table ) ) {
- $self->{'Table'} = shift;
- carp "warning: FS::Record::new called with table name ". $self->{'Table'};
- }
-
- $self->{'Hash'} = shift;
-
- foreach my $field ( grep !defined($self->{'Hash'}{$_}), $self->fields ) {
- $self->{'Hash'}{$field}='';
- }
-
- $self->_rebless if $self->can('_rebless');
-
- $self->{'modified'} = 0;
-
- $self->_cache($self->{'Hash'}, shift) if $self->can('_cache') && @_;
-
- $self;
-}
-
-sub new_or_cached {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
-
- $self->{'Table'} = shift unless defined ( $self->table );
-
- my $hashref = $self->{'Hash'} = shift;
- my $cache = shift;
- if ( defined( $cache->cache->{$hashref->{$cache->key}} ) ) {
- my $obj = $cache->cache->{$hashref->{$cache->key}};
- $obj->_cache($hashref, $cache) if $obj->can('_cache');
- $obj;
- } else {
- $cache->cache->{$hashref->{$cache->key}} = $self->new($hashref, $cache);
- }
-
-}
-
-sub create {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- if ( defined $self->table ) {
- cluck "create constructor is deprecated, use new!";
- $self->new(@_);
- } else {
- croak "FS::Record::create called (not from a subclass)!";
- }
-}
-
-=item qsearch PARAMS_HASHREF | TABLE, HASHREF, SELECT, EXTRA_SQL, CACHE_OBJ, ADDL_FROM
-
-Searches the database for all records matching (at least) the key/value pairs
-in HASHREF. Returns all the records found as `FS::TABLE' objects if that
-module is loaded (i.e. via `use FS::cust_main;'), otherwise returns FS::Record
-objects.
-
-The preferred usage is to pass a hash reference of named parameters:
-
- my @records = qsearch( {
- 'table' => 'table_name',
- 'hashref' => { 'field' => 'value'
- 'field' => { 'op' => '<',
- 'value' => '420',
- },
- },
-
- #these are optional...
- 'select' => '*',
- 'extra_sql' => 'AND field ',
- #'cache_obj' => '', #optional
- 'addl_from' => 'LEFT JOIN othtable USING ( field )',
- }
- );
-
-Much code still uses old-style positional parameters, this is also probably
-fine in the common case where there are only two parameters:
-
- my @records = qsearch( 'table', { 'field' => 'value' } );
-
-###oops, argh, FS::Record::new only lets us create database fields.
-#Normal behaviour if SELECT is not specified is `*', as in
-#C<SELECT * FROM table WHERE ...>. However, there is an experimental new
-#feature where you can specify SELECT - remember, the objects returned,
-#although blessed into the appropriate `FS::TABLE' package, will only have the
-#fields you specify. This might have unwanted results if you then go calling
-#regular FS::TABLE methods
-#on it.
-
-=cut
-
-sub qsearch {
- my($stable, $record, $select, $extra_sql, $cache, $addl_from );
- if ( ref($_[0]) ) { #hashref for now, eventually maybe accept a list too
- my $opt = shift;
- $stable = $opt->{'table'} or die "table name is required";
- $record = $opt->{'hashref'} || {};
- $select = $opt->{'select'} || '*';
- $extra_sql = $opt->{'extra_sql'} || '';
- $cache = $opt->{'cache_obj'} || '';
- $addl_from = $opt->{'addl_from'} || '';
- } else {
- ($stable, $record, $select, $extra_sql, $cache, $addl_from ) = @_;
- $select ||= '*';
- }
-
- #$stable =~ /^([\w\_]+)$/ or die "Illegal table: $table";
- #for jsearch
- $stable =~ /^([\w\s\(\)\.\,\=]+)$/ or die "Illegal table: $stable";
- $stable = $1;
- my $dbh = dbh;
-
- my $table = $cache ? $cache->table : $stable;
- my $dbdef_table = dbdef->table($table)
- or die "No schema for table $table found - ".
- "do you need to run freeside-upgrade?";
- my $pkey = $dbdef_table->primary_key;
-
- my @real_fields = grep exists($record->{$_}), real_fields($table);
- my @virtual_fields;
- if ( eval 'scalar(@FS::'. $table. '::ISA);' ) {
- @virtual_fields = grep exists($record->{$_}), "FS::$table"->virtual_fields;
- } else {
- cluck "warning: FS::$table not loaded; virtual fields not searchable";
- @virtual_fields = ();
- }
-
- my $statement = "SELECT $select FROM $stable";
- $statement .= " $addl_from" if $addl_from;
- if ( @real_fields or @virtual_fields ) {
- $statement .= ' WHERE '. join(' AND ',
- ( map {
-
- my $op = '=';
- my $column = $_;
- if ( ref($record->{$_}) ) {
- $op = $record->{$_}{'op'} if $record->{$_}{'op'};
- #$op = 'LIKE' if $op =~ /^ILIKE$/i && driver_name ne 'Pg';
- if ( uc($op) eq 'ILIKE' ) {
- $op = 'LIKE';
- $record->{$_}{'value'} = lc($record->{$_}{'value'});
- $column = "LOWER($_)";
- }
- $record->{$_} = $record->{$_}{'value'}
- }
-
- if ( ! defined( $record->{$_} ) || $record->{$_} eq '' ) {
- if ( $op eq '=' ) {
- if ( driver_name eq 'Pg' ) {
- my $type = dbdef->table($table)->column($column)->type;
- if ( $type =~ /(int|(big)?serial)/i ) {
- qq-( $column IS NULL )-;
- } else {
- qq-( $column IS NULL OR $column = '' )-;
- }
- } else {
- qq-( $column IS NULL OR $column = "" )-;
- }
- } elsif ( $op eq '!=' ) {
- if ( driver_name eq 'Pg' ) {
- my $type = dbdef->table($table)->column($column)->type;
- if ( $type =~ /(int|(big)?serial)/i ) {
- qq-( $column IS NOT NULL )-;
- } else {
- qq-( $column IS NOT NULL AND $column != '' )-;
- }
- } else {
- qq-( $column IS NOT NULL AND $column != "" )-;
- }
- } else {
- if ( driver_name eq 'Pg' ) {
- qq-( $column $op '' )-;
- } else {
- qq-( $column $op "" )-;
- }
- }
- } else {
- "$column $op ?";
- }
- } @real_fields ),
- ( map {
- my $op = '=';
- my $column = $_;
- if ( ref($record->{$_}) ) {
- $op = $record->{$_}{'op'} if $record->{$_}{'op'};
- if ( uc($op) eq 'ILIKE' ) {
- $op = 'LIKE';
- $record->{$_}{'value'} = lc($record->{$_}{'value'});
- $column = "LOWER($_)";
- }
- $record->{$_} = $record->{$_}{'value'};
- }
-
- # ... EXISTS ( SELECT name, value FROM part_virtual_field
- # JOIN virtual_field
- # ON part_virtual_field.vfieldpart = virtual_field.vfieldpart
- # WHERE recnum = svc_acct.svcnum
- # AND (name, value) = ('egad', 'brain') )
-
- my $value = $record->{$_};
-
- my $subq;
-
- $subq = ($value ? 'EXISTS ' : 'NOT EXISTS ') .
- "( SELECT part_virtual_field.name, virtual_field.value ".
- "FROM part_virtual_field JOIN virtual_field ".
- "ON part_virtual_field.vfieldpart = virtual_field.vfieldpart ".
- "WHERE virtual_field.recnum = ${table}.${pkey} ".
- "AND part_virtual_field.name = '${column}'".
- ($value ?
- " AND virtual_field.value ${op} '${value}'"
- : "") . ")";
- $subq;
-
- } @virtual_fields ) );
-
- }
-
- $statement .= " $extra_sql" if defined($extra_sql);
-
- warn "[debug]$me $statement\n" if $DEBUG > 1;
- my $sth = $dbh->prepare($statement)
- or croak "$dbh->errstr doing $statement";
-
- my $bind = 1;
-
- foreach my $field (
- grep defined( $record->{$_} ) && $record->{$_} ne '', @real_fields
- ) {
- if ( $record->{$field} =~ /^\d+(\.\d+)?$/
- && dbdef->table($table)->column($field)->type =~ /(int|(big)?serial)/i
- ) {
- $sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_INTEGER } );
- } else {
- $sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_VARCHAR } );
- }
- }
-
-# $sth->execute( map $record->{$_},
-# grep defined( $record->{$_} ) && $record->{$_} ne '', @fields
-# ) or croak "Error executing \"$statement\": ". $sth->errstr;
-
- $sth->execute or croak "Error executing \"$statement\": ". $sth->errstr;
-
- if ( eval 'scalar(@FS::'. $table. '::ISA);' ) {
- @virtual_fields = "FS::$table"->virtual_fields;
- } else {
- cluck "warning: FS::$table not loaded; virtual fields not returned either";
- @virtual_fields = ();
- }
-
- my %result;
- tie %result, "Tie::IxHash";
- my @stuff = @{ $sth->fetchall_arrayref( {} ) };
- if($pkey) {
- %result = map { $_->{$pkey}, $_ } @stuff;
- } else {
- @result{@stuff} = @stuff;
- }
-
- $sth->finish;
-
- if ( keys(%result) and @virtual_fields ) {
- $statement =
- "SELECT virtual_field.recnum, part_virtual_field.name, ".
- "virtual_field.value ".
- "FROM part_virtual_field JOIN virtual_field USING (vfieldpart) ".
- "WHERE part_virtual_field.dbtable = '$table' AND ".
- "virtual_field.recnum IN (".
- join(',', keys(%result)). ") AND part_virtual_field.name IN ('".
- join(q!', '!, @virtual_fields) . "')";
- warn "[debug]$me $statement\n" if $DEBUG > 1;
- $sth = $dbh->prepare($statement) or croak "$dbh->errstr doing $statement";
- $sth->execute or croak "Error executing \"$statement\": ". $sth->errstr;
-
- foreach (@{ $sth->fetchall_arrayref({}) }) {
- my $recnum = $_->{recnum};
- my $name = $_->{name};
- my $value = $_->{value};
- if (exists($result{$recnum})) {
- $result{$recnum}->{$name} = $value;
- }
- }
- }
- my @return;
- if ( eval 'scalar(@FS::'. $table. '::ISA);' ) {
- if ( eval 'FS::'. $table. '->can(\'new\')' eq \&new ) {
- #derivied class didn't override new method, so this optimization is safe
- if ( $cache ) {
- @return = map {
- new_or_cached( "FS::$table", { %{$_} }, $cache )
- } values(%result);
- } else {
- @return = map {
- new( "FS::$table", { %{$_} } )
- } values(%result);
- }
- } else {
- #okay, its been tested
- # warn "untested code (class FS::$table uses custom new method)";
- @return = map {
- eval 'FS::'. $table. '->new( { %{$_} } )';
- } values(%result);
- }
-
- # Check for encrypted fields and decrypt them.
- my $conf = new FS::Conf;
- if ($conf->exists('encryption') && eval 'defined(@FS::'. $table . '::encrypted_fields)') {
- foreach my $record (@return) {
- foreach my $field (eval '@FS::'. $table . '::encrypted_fields') {
- # Set it directly... This may cause a problem in the future...
- $record->setfield($field, $record->decrypt($record->getfield($field)));
- }
- }
- }
- } else {
- cluck "warning: FS::$table not loaded; returning FS::Record objects";
- @return = map {
- FS::Record->new( $table, { %{$_} } );
- } values(%result);
- }
- return @return;
-}
-
-=item by_key PRIMARY_KEY_VALUE
-
-This is a class method that returns the record with the given primary key
-value. This method is only useful in FS::Record subclasses. For example:
-
- my $cust_main = FS::cust_main->by_key(1); # retrieve customer with custnum 1
-
-is equivalent to:
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => 1 } );
-
-=cut
-
-sub by_key {
- my ($class, $pkey_value) = @_;
-
- my $table = $class->table
- or croak "No table for $class found";
-
- my $dbdef_table = dbdef->table($table)
- or die "No schema for table $table found - ".
- "do you need to create it or run dbdef-create?";
- my $pkey = $dbdef_table->primary_key
- or die "No primary key for table $table";
-
- return qsearchs($table, { $pkey => $pkey_value });
-}
-
-=item jsearch TABLE, HASHREF, SELECT, EXTRA_SQL, PRIMARY_TABLE, PRIMARY_KEY
-
-Experimental JOINed search method. Using this method, you can execute a
-single SELECT spanning multiple tables, and cache the results for subsequent
-method calls. Interface will almost definately change in an incompatible
-fashion.
-
-Arguments:
-
-=cut
-
-sub jsearch {
- my($table, $record, $select, $extra_sql, $ptable, $pkey ) = @_;
- my $cache = FS::SearchCache->new( $ptable, $pkey );
- my %saw;
- ( $cache,
- grep { !$saw{$_->getfield($pkey)}++ }
- qsearch($table, $record, $select, $extra_sql, $cache )
- );
-}
-
-=item qsearchs PARAMS_HASHREF | TABLE, HASHREF, SELECT, EXTRA_SQL, CACHE_OBJ, ADDL_FROM
-
-Same as qsearch, except that if more than one record matches, it B<carp>s but
-returns the first. If this happens, you either made a logic error in asking
-for a single item, or your data is corrupted.
-
-=cut
-
-sub qsearchs { # $result_record = &FS::Record:qsearchs('table',\%hash);
- my $table = $_[0];
- my(@result) = qsearch(@_);
- cluck "warning: Multiple records in scalar search ($table)"
- if scalar(@result) > 1;
- #should warn more vehemently if the search was on a primary key?
- scalar(@result) ? ($result[0]) : ();
-}
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item table
-
-Returns the table name.
-
-=cut
-
-sub table {
-# cluck "warning: FS::Record::table deprecated; supply one in subclass!";
- my $self = shift;
- $self -> {'Table'};
-}
-
-=item dbdef_table
-
-Returns the DBIx::DBSchema::Table object for the table.
-
-=cut
-
-sub dbdef_table {
- my($self)=@_;
- my($table)=$self->table;
- dbdef->table($table);
-}
-
-=item get, getfield COLUMN
-
-Returns the value of the column/field/key COLUMN.
-
-=cut
-
-sub get {
- my($self,$field) = @_;
- # to avoid "Use of unitialized value" errors
- if ( defined ( $self->{Hash}->{$field} ) ) {
- $self->{Hash}->{$field};
- } else {
- '';
- }
-}
-sub getfield {
- my $self = shift;
- $self->get(@_);
-}
-
-=item set, setfield COLUMN, VALUE
-
-Sets the value of the column/field/key COLUMN to VALUE. Returns VALUE.
-
-=cut
-
-sub set {
- my($self,$field,$value) = @_;
- $self->{'modified'} = 1;
- $self->{'Hash'}->{$field} = $value;
-}
-sub setfield {
- my $self = shift;
- $self->set(@_);
-}
-
-=item AUTLOADED METHODS
-
-$record->column is a synonym for $record->get('column');
-
-$record->column('value') is a synonym for $record->set('column','value');
-
-=cut
-
-# readable/safe
-sub AUTOLOAD {
- my($self,$value)=@_;
- my($field)=$AUTOLOAD;
- $field =~ s/.*://;
- if ( defined($value) ) {
- confess "errant AUTOLOAD $field for $self (arg $value)"
- unless ref($self) && $self->can('setfield');
- $self->setfield($field,$value);
- } else {
- confess "errant AUTOLOAD $field for $self (no args)"
- unless ref($self) && $self->can('getfield');
- $self->getfield($field);
- }
-}
-
-# efficient
-#sub AUTOLOAD {
-# my $field = $AUTOLOAD;
-# $field =~ s/.*://;
-# if ( defined($_[1]) ) {
-# $_[0]->setfield($field, $_[1]);
-# } else {
-# $_[0]->getfield($field);
-# }
-#}
-
-=item hash
-
-Returns a list of the column/value pairs, usually for assigning to a new hash.
-
-To make a distinct duplicate of an FS::Record object, you can do:
-
- $new = new FS::Record ( $old->table, { $old->hash } );
-
-=cut
-
-sub hash {
- my($self) = @_;
- confess $self. ' -> hash: Hash attribute is undefined'
- unless defined($self->{'Hash'});
- %{ $self->{'Hash'} };
-}
-
-=item hashref
-
-Returns a reference to the column/value hash. This may be deprecated in the
-future; if there's a reason you can't just use the autoloaded or get/set
-methods, speak up.
-
-=cut
-
-sub hashref {
- my($self) = @_;
- $self->{'Hash'};
-}
-
-=item modified
-
-Returns true if any of this object's values have been modified with set (or via
-an autoloaded method). Doesn't yet recognize when you retreive a hashref and
-modify that.
-
-=cut
-
-sub modified {
- my $self = shift;
- $self->{'modified'};
-}
-
-=item insert
-
-Inserts this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
- my $saved = {};
-
- my $error = $self->check;
- return $error if $error;
-
- #single-field unique keys are given a value if false
- #(like MySQL's AUTO_INCREMENT or Pg SERIAL)
- foreach ( $self->dbdef_table->unique->singles ) {
- $self->unique($_) unless $self->getfield($_);
- }
-
- #and also the primary key, if the database isn't going to
- my $primary_key = $self->dbdef_table->primary_key;
- my $db_seq = 0;
- if ( $primary_key ) {
- my $col = $self->dbdef_table->column($primary_key);
-
- $db_seq =
- uc($col->type) =~ /^(BIG)?SERIAL\d?/
- || ( driver_name eq 'Pg'
- && defined($col->default)
- && $col->default =~ /^nextval\(/i
- )
- || ( driver_name eq 'mysql'
- && defined($col->local)
- && $col->local =~ /AUTO_INCREMENT/i
- );
- $self->unique($primary_key) unless $self->getfield($primary_key) || $db_seq;
- }
-
- my $table = $self->table;
-
-
- # Encrypt before the database
- my $conf = new FS::Conf;
- if ($conf->exists('encryption') && defined(eval '@FS::'. $table . 'encrypted_fields')) {
- foreach my $field (eval '@FS::'. $table . '::encrypted_fields') {
- $self->{'saved'} = $self->getfield($field);
- $self->setfield($field, $self->enrypt($self->getfield($field)));
- }
- }
-
-
- #false laziness w/delete
- my @real_fields =
- grep defined($self->getfield($_)) && $self->getfield($_) ne "",
- real_fields($table)
- ;
- my @values = map { _quote( $self->getfield($_), $table, $_) } @real_fields;
- #eslaf
-
- my $statement = "INSERT INTO $table ";
- if ( @real_fields ) {
- $statement .=
- "( ".
- join( ', ', @real_fields ).
- ") VALUES (".
- join( ', ', @values ).
- ")"
- ;
- } else {
- $statement .= 'DEFAULT VALUES';
- }
- warn "[debug]$me $statement\n" if $DEBUG > 1;
- my $sth = dbh->prepare($statement) or return dbh->errstr;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- $sth->execute or return $sth->errstr;
-
- # get inserted id from the database, if applicable & needed
- if ( $db_seq && ! $self->getfield($primary_key) ) {
- warn "[debug]$me retreiving sequence from database\n" if $DEBUG;
-
- my $insertid = '';
-
- if ( driver_name eq 'Pg' ) {
-
- #my $oid = $sth->{'pg_oid_status'};
- #my $i_sql = "SELECT $primary_key FROM $table WHERE oid = ?";
-
- my $default = $self->dbdef_table->column($primary_key)->default;
- unless ( $default =~ /^nextval\(\(?'"?([\w\.]+)"?'/i ) {
- dbh->rollback if $FS::UID::AutoCommit;
- return "can't parse $table.$primary_key default value".
- " for sequence name: $default";
- }
- my $sequence = $1;
-
- my $i_sql = "SELECT currval('$sequence')";
- my $i_sth = dbh->prepare($i_sql) or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return dbh->errstr;
- };
- #$i_sth->execute($oid) or do {
- $i_sth->execute() or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return $i_sth->errstr;
- };
- $insertid = $i_sth->fetchrow_arrayref->[0];
-
- } elsif ( driver_name eq 'mysql' ) {
-
- $insertid = dbh->{'mysql_insertid'};
- # work around mysql_insertid being null some of the time, ala RT :/
- unless ( $insertid ) {
- warn "WARNING: DBD::mysql didn't return mysql_insertid; ".
- "using SELECT LAST_INSERT_ID();";
- my $i_sql = "SELECT LAST_INSERT_ID()";
- my $i_sth = dbh->prepare($i_sql) or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return dbh->errstr;
- };
- $i_sth->execute or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return $i_sth->errstr;
- };
- $insertid = $i_sth->fetchrow_arrayref->[0];
- }
-
- } else {
-
- dbh->rollback if $FS::UID::AutoCommit;
- return "don't know how to retreive inserted ids from ". driver_name.
- ", try using counterfiles (maybe run dbdef-create?)";
-
- }
-
- $self->setfield($primary_key, $insertid);
-
- }
-
- my @virtual_fields =
- grep defined($self->getfield($_)) && $self->getfield($_) ne "",
- $self->virtual_fields;
- if (@virtual_fields) {
- my %v_values = map { $_, $self->getfield($_) } @virtual_fields;
-
- my $vfieldpart = $self->vfieldpart_hashref;
-
- my $v_statement = "INSERT INTO virtual_field(recnum, vfieldpart, value) ".
- "VALUES (?, ?, ?)";
-
- my $v_sth = dbh->prepare($v_statement) or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return dbh->errstr;
- };
-
- foreach (keys(%v_values)) {
- $v_sth->execute($self->getfield($primary_key),
- $vfieldpart->{$_},
- $v_values{$_})
- or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return $v_sth->errstr;
- };
- }
- }
-
-
- my $h_sth;
- if ( defined dbdef->table('h_'. $table) ) {
- my $h_statement = $self->_h_statement('insert');
- warn "[debug]$me $h_statement\n" if $DEBUG > 2;
- $h_sth = dbh->prepare($h_statement) or do {
- dbh->rollback if $FS::UID::AutoCommit;
- return dbh->errstr;
- };
- } else {
- $h_sth = '';
- }
- $h_sth->execute or return $h_sth->errstr if $h_sth;
-
- dbh->commit or croak dbh->errstr if $FS::UID::AutoCommit;
-
- # Now that it has been saved, reset the encrypted fields so that $new
- # can still be used.
- foreach my $field (keys %{$saved}) {
- $self->setfield($field, $saved->{$field});
- }
-
- '';
-}
-
-=item add
-
-Depriciated (use insert instead).
-
-=cut
-
-sub add {
- cluck "warning: FS::Record::add deprecated!";
- insert @_; #call method in this scope
-}
-
-=item delete
-
-Delete this record from the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- my $statement = "DELETE FROM ". $self->table. " WHERE ". join(' AND ',
- map {
- $self->getfield($_) eq ''
- #? "( $_ IS NULL OR $_ = \"\" )"
- ? ( driver_name eq 'Pg'
- ? "$_ IS NULL"
- : "( $_ IS NULL OR $_ = \"\" )"
- )
- : "$_ = ". _quote($self->getfield($_),$self->table,$_)
- } ( $self->dbdef_table->primary_key )
- ? ( $self->dbdef_table->primary_key)
- : real_fields($self->table)
- );
- warn "[debug]$me $statement\n" if $DEBUG > 1;
- my $sth = dbh->prepare($statement) or return dbh->errstr;
-
- my $h_sth;
- if ( defined dbdef->table('h_'. $self->table) ) {
- my $h_statement = $self->_h_statement('delete');
- warn "[debug]$me $h_statement\n" if $DEBUG > 2;
- $h_sth = dbh->prepare($h_statement) or return dbh->errstr;
- } else {
- $h_sth = '';
- }
-
- my $primary_key = $self->dbdef_table->primary_key;
- my $v_sth;
- my @del_vfields;
- my $vfp = $self->vfieldpart_hashref;
- foreach($self->virtual_fields) {
- next if $self->getfield($_) eq '';
- unless(@del_vfields) {
- my $st = "DELETE FROM virtual_field WHERE recnum = ? AND vfieldpart = ?";
- $v_sth = dbh->prepare($st) or return dbh->errstr;
- }
- push @del_vfields, $_;
- }
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $rc = $sth->execute or return $sth->errstr;
- #not portable #return "Record not found, statement:\n$statement" if $rc eq "0E0";
- $h_sth->execute or return $h_sth->errstr if $h_sth;
- $v_sth->execute($self->getfield($primary_key), $vfp->{$_})
- or return $v_sth->errstr
- foreach (@del_vfields);
-
- dbh->commit or croak dbh->errstr if $FS::UID::AutoCommit;
-
- #no need to needlessly destoy the data either (causes problems actually)
- #undef $self; #no need to keep object!
-
- '';
-}
-
-=item del
-
-Depriciated (use delete instead).
-
-=cut
-
-sub del {
- cluck "warning: FS::Record::del deprecated!";
- &delete(@_); #call method in this scope
-}
-
-=item replace OLD_RECORD
-
-Replace the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my $new = shift;
- my $old = shift;
-
- if (!defined($old)) {
- warn "[debug]$me replace called with no arguments; autoloading old record\n"
- if $DEBUG;
- my $primary_key = $new->dbdef_table->primary_key;
- if ( $primary_key ) {
- $old = qsearchs($new->table, { $primary_key => $new->$primary_key() } )
- or croak "can't find ". $new->table. ".$primary_key ".
- $new->$primary_key();
- } else {
- croak $new->table. " has no primary key; pass old record as argument";
- }
- }
-
- warn "[debug]$me $new ->replace $old\n" if $DEBUG;
-
- if ( $new->can('replace_check') ) {
- my $error = $new->replace_check($old);
- return $error if $error;
- }
-
- return "Records not in same table!" unless $new->table eq $old->table;
-
- my $primary_key = $old->dbdef_table->primary_key;
- return "Can't change primary key $primary_key ".
- 'from '. $old->getfield($primary_key).
- ' to ' . $new->getfield($primary_key)
- if $primary_key
- && ( $old->getfield($primary_key) ne $new->getfield($primary_key) );
-
- my $error = $new->check;
- return $error if $error;
-
- # Encrypt for replace
- my $conf = new FS::Conf;
- my $saved = {};
- if ($conf->exists('encryption') && defined(eval '@FS::'. $new->table . 'encrypted_fields')) {
- foreach my $field (eval '@FS::'. $new->table . '::encrypted_fields') {
- $saved->{$field} = $new->getfield($field);
- $new->setfield($field, $new->encrypt($new->getfield($field)));
- }
- }
-
- #my @diff = grep $new->getfield($_) ne $old->getfield($_), $old->fields;
- my %diff = map { ($new->getfield($_) ne $old->getfield($_))
- ? ($_, $new->getfield($_)) : () } $old->fields;
-
- unless ( keys(%diff) ) {
- carp "[warning]$me $new -> replace $old: records identical"
- unless $nowarn_identical;
- return '';
- }
-
- my $statement = "UPDATE ". $old->table. " SET ". join(', ',
- map {
- "$_ = ". _quote($new->getfield($_),$old->table,$_)
- } real_fields($old->table)
- ). ' WHERE '.
- join(' AND ',
- map {
-
- if ( $old->getfield($_) eq '' ) {
-
- #false laziness w/qsearch
- if ( driver_name eq 'Pg' ) {
- my $type = $old->dbdef_table->column($_)->type;
- if ( $type =~ /(int|(big)?serial)/i ) {
- qq-( $_ IS NULL )-;
- } else {
- qq-( $_ IS NULL OR $_ = '' )-;
- }
- } else {
- qq-( $_ IS NULL OR $_ = "" )-;
- }
-
- } else {
- "$_ = ". _quote($old->getfield($_),$old->table,$_);
- }
-
- } ( $primary_key ? ( $primary_key ) : real_fields($old->table) )
- )
- ;
- warn "[debug]$me $statement\n" if $DEBUG > 1;
- my $sth = dbh->prepare($statement) or return dbh->errstr;
-
- my $h_old_sth;
- if ( defined dbdef->table('h_'. $old->table) ) {
- my $h_old_statement = $old->_h_statement('replace_old');
- warn "[debug]$me $h_old_statement\n" if $DEBUG > 2;
- $h_old_sth = dbh->prepare($h_old_statement) or return dbh->errstr;
- } else {
- $h_old_sth = '';
- }
-
- my $h_new_sth;
- if ( defined dbdef->table('h_'. $new->table) ) {
- my $h_new_statement = $new->_h_statement('replace_new');
- warn "[debug]$me $h_new_statement\n" if $DEBUG > 2;
- $h_new_sth = dbh->prepare($h_new_statement) or return dbh->errstr;
- } else {
- $h_new_sth = '';
- }
-
- # For virtual fields we have three cases with different SQL
- # statements: add, replace, delete
- my $v_add_sth;
- my $v_rep_sth;
- my $v_del_sth;
- my (@add_vfields, @rep_vfields, @del_vfields);
- my $vfp = $old->vfieldpart_hashref;
- foreach(grep { exists($diff{$_}) } $new->virtual_fields) {
- if($diff{$_} eq '') {
- # Delete
- unless(@del_vfields) {
- my $st = "DELETE FROM virtual_field WHERE recnum = ? ".
- "AND vfieldpart = ?";
- warn "[debug]$me $st\n" if $DEBUG > 2;
- $v_del_sth = dbh->prepare($st) or return dbh->errstr;
- }
- push @del_vfields, $_;
- } elsif($old->getfield($_) eq '') {
- # Add
- unless(@add_vfields) {
- my $st = "INSERT INTO virtual_field (value, recnum, vfieldpart) ".
- "VALUES (?, ?, ?)";
- warn "[debug]$me $st\n" if $DEBUG > 2;
- $v_add_sth = dbh->prepare($st) or return dbh->errstr;
- }
- push @add_vfields, $_;
- } else {
- # Replace
- unless(@rep_vfields) {
- my $st = "UPDATE virtual_field SET value = ? ".
- "WHERE recnum = ? AND vfieldpart = ?";
- warn "[debug]$me $st\n" if $DEBUG > 2;
- $v_rep_sth = dbh->prepare($st) or return dbh->errstr;
- }
- push @rep_vfields, $_;
- }
- }
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $rc = $sth->execute or return $sth->errstr;
- #not portable #return "Record not found (or records identical)." if $rc eq "0E0";
- $h_old_sth->execute or return $h_old_sth->errstr if $h_old_sth;
- $h_new_sth->execute or return $h_new_sth->errstr if $h_new_sth;
-
- $v_del_sth->execute($old->getfield($primary_key),
- $vfp->{$_})
- or return $v_del_sth->errstr
- foreach(@del_vfields);
-
- $v_add_sth->execute($new->getfield($_),
- $old->getfield($primary_key),
- $vfp->{$_})
- or return $v_add_sth->errstr
- foreach(@add_vfields);
-
- $v_rep_sth->execute($new->getfield($_),
- $old->getfield($primary_key),
- $vfp->{$_})
- or return $v_rep_sth->errstr
- foreach(@rep_vfields);
-
- dbh->commit or croak dbh->errstr if $FS::UID::AutoCommit;
-
- # Now that it has been saved, reset the encrypted fields so that $new
- # can still be used.
- foreach my $field (keys %{$saved}) {
- $new->setfield($field, $saved->{$field});
- }
-
- '';
-
-}
-
-=item rep
-
-Depriciated (use replace instead).
-
-=cut
-
-sub rep {
- cluck "warning: FS::Record::rep deprecated!";
- replace @_; #call method in this scope
-}
-
-=item check
-
-Checks virtual fields (using check_blocks). Subclasses should still provide
-a check method to validate real fields, foreign keys, etc., and call this
-method via $self->SUPER::check.
-
-(FIXME: Should this method try to make sure that it I<is> being called from
-a subclass's check method, to keep the current semantics as far as possible?)
-
-=cut
-
-sub check {
- #confess "FS::Record::check not implemented; supply one in subclass!";
- my $self = shift;
-
- foreach my $field ($self->virtual_fields) {
- for ($self->getfield($field)) {
- # See notes on check_block in FS::part_virtual_field.
- eval $self->pvf($field)->check_block;
- if ( $@ ) {
- #this is bad, probably want to follow the stack backtrace up and see
- #wtf happened
- my $err = "Fatal error checking $field for $self";
- cluck "$err: $@";
- return "$err (see log for backtrace): $@";
-
- }
- $self->setfield($field, $_);
- }
- }
- '';
-}
-
-sub _h_statement {
- my( $self, $action, $time ) = @_;
-
- $time ||= time;
-
- my @fields =
- grep defined($self->getfield($_)) && $self->getfield($_) ne "",
- real_fields($self->table);
- ;
- my @values = map { _quote( $self->getfield($_), $self->table, $_) } @fields;
-
- "INSERT INTO h_". $self->table. " ( ".
- join(', ', qw(history_date history_user history_action), @fields ).
- ") VALUES (".
- join(', ', $time, dbh->quote(getotaker()), dbh->quote($action), @values).
- ")"
- ;
-}
-
-=item unique COLUMN
-
-B<Warning>: External use is B<deprecated>.
-
-Replaces COLUMN in record with a unique number, using counters in the
-filesystem. Used by the B<insert> method on single-field unique columns
-(see L<DBIx::DBSchema::Table>) and also as a fallback for primary keys
-that aren't SERIAL (Pg) or AUTO_INCREMENT (mysql).
-
-Returns the new value.
-
-=cut
-
-sub unique {
- my($self,$field) = @_;
- my($table)=$self->table;
-
- croak "Unique called on field $field, but it is ",
- $self->getfield($field),
- ", not null!"
- if $self->getfield($field);
-
- #warn "table $table is tainted" if is_tainted($table);
- #warn "field $field is tainted" if is_tainted($field);
-
- my($counter) = new File::CounterFile "$table.$field",0;
-# hack for web demo
-# getotaker() =~ /^([\w\-]{1,16})$/ or die "Illegal CGI REMOTE_USER!";
-# my($user)=$1;
-# my($counter) = new File::CounterFile "$user/$table.$field",0;
-# endhack
-
- my $index = $counter->inc;
- $index = $counter->inc while qsearchs($table, { $field=>$index } );
-
- $index =~ /^(\d*)$/;
- $index=$1;
-
- $self->setfield($field,$index);
-
-}
-
-=item ut_float COLUMN
-
-Check/untaint floating point numeric data: 1.1, 1, 1.1e10, 1e10. May not be
-null. If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_float {
- my($self,$field)=@_ ;
- ($self->getfield($field) =~ /^(\d+\.\d+)$/ ||
- $self->getfield($field) =~ /^(\d+)$/ ||
- $self->getfield($field) =~ /^(\d+\.\d+e\d+)$/ ||
- $self->getfield($field) =~ /^(\d+e\d+)$/)
- or return "Illegal or empty (float) $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_snumber COLUMN
-
-Check/untaint signed numeric data (whole numbers). May not be null. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_snumber {
- my($self, $field) = @_;
- $self->getfield($field) =~ /^(-?)\s*(\d+)$/
- or return "Illegal or empty (numeric) $field: ". $self->getfield($field);
- $self->setfield($field, "$1$2");
- '';
-}
-
-=item ut_number COLUMN
-
-Check/untaint simple numeric data (whole numbers). May not be null. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_number {
- my($self,$field)=@_;
- $self->getfield($field) =~ /^(\d+)$/
- or return "Illegal or empty (numeric) $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_numbern COLUMN
-
-Check/untaint simple numeric data (whole numbers). May be null. If there is
-an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_numbern {
- my($self,$field)=@_;
- $self->getfield($field) =~ /^(\d*)$/
- or return "Illegal (numeric) $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_money COLUMN
-
-Check/untaint monetary numbers. May be negative. Set to 0 if null. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_money {
- my($self,$field)=@_;
- $self->setfield($field, 0) if $self->getfield($field) eq '';
- $self->getfield($field) =~ /^(\-)? ?(\d*)(\.\d{2})?$/
- or return "Illegal (money) $field: ". $self->getfield($field);
- #$self->setfield($field, "$1$2$3" || 0);
- $self->setfield($field, ( ($1||''). ($2||''). ($3||'') ) || 0);
- '';
-}
-
-=item ut_text COLUMN
-
-Check/untaint text. Alphanumerics, spaces, and the following punctuation
-symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' " , . ? / = [ ]
-May not be null. If there is an error, returns the error, otherwise returns
-false.
-
-=cut
-
-sub ut_text {
- my($self,$field)=@_;
- #warn "msgcat ". \&msgcat. "\n";
- #warn "notexist ". \&notexist. "\n";
- #warn "AUTOLOAD ". \&AUTOLOAD. "\n";
- $self->getfield($field)
- =~ /^([\w \!\@\#\$\%\&\(\)\-\+\;\:\'\"\,\.\?\/\=\[\]]+)$/
- or return gettext('illegal_or_empty_text'). " $field: ".
- $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_textn COLUMN
-
-Check/untaint text. Alphanumerics, spaces, and the following punctuation
-symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' " , . ? /
-May be null. If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_textn {
- my($self,$field)=@_;
- $self->getfield($field)
- =~ /^([\w \!\@\#\$\%\&\(\)\-\+\;\:\'\"\,\.\?\/\=\[\]]*)$/
- or return gettext('illegal_text'). " $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_alpha COLUMN
-
-Check/untaint alphanumeric strings (no spaces). May not be null. If there is
-an error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_alpha {
- my($self,$field)=@_;
- $self->getfield($field) =~ /^(\w+)$/
- or return "Illegal or empty (alphanumeric) $field: ".
- $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_alpha COLUMN
-
-Check/untaint alphanumeric strings (no spaces). May be null. If there is an
-error, returns the error, otherwise returns false.
-
-=cut
-
-sub ut_alphan {
- my($self,$field)=@_;
- $self->getfield($field) =~ /^(\w*)$/
- or return "Illegal (alphanumeric) $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_phonen COLUMN [ COUNTRY ]
-
-Check/untaint phone numbers. May be null. If there is an error, returns
-the error, otherwise returns false.
-
-Takes an optional two-letter ISO country code; without it or with unsupported
-countries, ut_phonen simply calls ut_alphan.
-
-=cut
-
-sub ut_phonen {
- my( $self, $field, $country ) = @_;
- return $self->ut_alphan($field) unless defined $country;
- my $phonen = $self->getfield($field);
- if ( $phonen eq '' ) {
- $self->setfield($field,'');
- } elsif ( $country eq 'US' || $country eq 'CA' ) {
- $phonen =~ s/\D//g;
- $phonen =~ /^(\d{3})(\d{3})(\d{4})(\d*)$/
- or return gettext('illegal_phone'). " $field: ". $self->getfield($field);
- $phonen = "$1-$2-$3";
- $phonen .= " x$4" if $4;
- $self->setfield($field,$phonen);
- } else {
- warn "warning: don't know how to check phone numbers for country $country";
- return $self->ut_textn($field);
- }
- '';
-}
-
-=item ut_ip COLUMN
-
-Check/untaint ip addresses. IPv4 only for now.
-
-=cut
-
-sub ut_ip {
- my( $self, $field ) = @_;
- $self->getfield($field) =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/
- or return "Illegal (IP address) $field: ". $self->getfield($field);
- for ( $1, $2, $3, $4 ) { return "Illegal (IP address) $field" if $_ > 255; }
- $self->setfield($field, "$1.$2.$3.$4");
- '';
-}
-
-=item ut_ipn COLUMN
-
-Check/untaint ip addresses. IPv4 only for now. May be null.
-
-=cut
-
-sub ut_ipn {
- my( $self, $field ) = @_;
- if ( $self->getfield($field) =~ /^()$/ ) {
- $self->setfield($field,'');
- '';
- } else {
- $self->ut_ip($field);
- }
-}
-
-=item ut_domain COLUMN
-
-Check/untaint host and domain names.
-
-=cut
-
-sub ut_domain {
- my( $self, $field ) = @_;
- #$self->getfield($field) =~/^(\w+\.)*\w+$/
- $self->getfield($field) =~/^(([\w\-]+\.)*\w+)$/
- or return "Illegal (domain) $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_name COLUMN
-
-Check/untaint proper names; allows alphanumerics, spaces and the following
-punctuation: , . - '
-
-May not be null.
-
-=cut
-
-sub ut_name {
- my( $self, $field ) = @_;
- $self->getfield($field) =~ /^([\w \,\.\-\']+)$/
- or return gettext('illegal_name'). " $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_zip COLUMN
-
-Check/untaint zip codes.
-
-=cut
-
-my @zip_reqd_countries = qw( CA ); #US implicit...
-
-sub ut_zip {
- my( $self, $field, $country ) = @_;
-
- if ( $country eq 'US' ) {
-
- $self->getfield($field) =~ /^\s*(\d{5}(\-\d{4})?)\s*$/
- or return gettext('illegal_zip'). " $field for country $country: ".
- $self->getfield($field);
- $self->setfield($field, $1);
-
- } elsif ( $country eq 'CA' ) {
-
- $self->getfield($field) =~ /^\s*([A-Z]\d[A-Z])\s*(\d[A-Z]\d)\s*$/i
- or return gettext('illegal_zip'). " $field for country $country: ".
- $self->getfield($field);
- $self->setfield($field, "$1 $2");
-
- } else {
-
- if ( $self->getfield($field) =~ /^\s*$/
- && ( !$country || ! grep { $_ eq $country } @zip_reqd_countries )
- )
- {
- $self->setfield($field,'');
- } else {
- $self->getfield($field) =~ /^\s*(\w[\w\-\s]{2,8}\w)\s*$/
- or return gettext('illegal_zip'). " $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- }
-
- }
-
- '';
-}
-
-=item ut_country COLUMN
-
-Check/untaint country codes. Country names are changed to codes, if possible -
-see L<Locale::Country>.
-
-=cut
-
-sub ut_country {
- my( $self, $field ) = @_;
- unless ( $self->getfield($field) =~ /^(\w\w)$/ ) {
- if ( $self->getfield($field) =~ /^([\w \,\.\(\)\']+)$/
- && country2code($1) ) {
- $self->setfield($field,uc(country2code($1)));
- }
- }
- $self->getfield($field) =~ /^(\w\w)$/
- or return "Illegal (country) $field: ". $self->getfield($field);
- $self->setfield($field,uc($1));
- '';
-}
-
-=item ut_anything COLUMN
-
-Untaints arbitrary data. Be careful.
-
-=cut
-
-sub ut_anything {
- my( $self, $field ) = @_;
- $self->getfield($field) =~ /^(.*)$/s
- or return "Illegal $field: ". $self->getfield($field);
- $self->setfield($field,$1);
- '';
-}
-
-=item ut_enum COLUMN CHOICES_ARRAYREF
-
-Check/untaint a column, supplying all possible choices, like the "enum" type.
-
-=cut
-
-sub ut_enum {
- my( $self, $field, $choices ) = @_;
- foreach my $choice ( @$choices ) {
- if ( $self->getfield($field) eq $choice ) {
- $self->setfield($choice);
- return '';
- }
- }
- return "Illegal (enum) field $field: ". $self->getfield($field);
-}
-
-=item ut_foreign_key COLUMN FOREIGN_TABLE FOREIGN_COLUMN
-
-Check/untaint a foreign column key. Call a regular ut_ method (like ut_number)
-on the column first.
-
-=cut
-
-sub ut_foreign_key {
- my( $self, $field, $table, $foreign ) = @_;
- qsearchs($table, { $foreign => $self->getfield($field) })
- or return "Can't find ". $self->table. ".$field ". $self->getfield($field).
- " in $table.$foreign";
- '';
-}
-
-=item ut_foreign_keyn COLUMN FOREIGN_TABLE FOREIGN_COLUMN
-
-Like ut_foreign_key, except the null value is also allowed.
-
-=cut
-
-sub ut_foreign_keyn {
- my( $self, $field, $table, $foreign ) = @_;
- $self->getfield($field)
- ? $self->ut_foreign_key($field, $table, $foreign)
- : '';
-}
-
-=item ut_agentnum_acl
-
-Checks this column as an agentnum, taking into account the current users's
-ACLs.
-
-=cut
-
-sub ut_agentnum_acl {
- my( $self, $field, $null_acl ) = @_;
-
- my $error = $self->ut_foreign_keyn($field, 'agent', 'agentnum');
- return "Illegal agentnum: $error" if $error;
-
- my $curuser = $FS::CurrentUser::CurrentUser;
-
- if ( $self->$field() ) {
-
- return "Access deined"
- unless $curuser->agentnum($self->$field());
-
- } else {
-
- return "Access denied"
- unless $curuser->access_right($null_acl);
-
- }
-
- '';
-
-}
-
-=item virtual_fields [ TABLE ]
-
-Returns a list of virtual fields defined for the table. This should not
-be exported, and should only be called as an instance or class method.
-
-=cut
-
-sub virtual_fields {
- my $self = shift;
- my $table;
- $table = $self->table or confess "virtual_fields called on non-table";
-
- confess "Unknown table $table" unless dbdef->table($table);
-
- return () unless dbdef->table('part_virtual_field');
-
- unless ( $virtual_fields_cache{$table} ) {
- my $query = 'SELECT name from part_virtual_field ' .
- "WHERE dbtable = '$table'";
- my $dbh = dbh;
- my $result = $dbh->selectcol_arrayref($query);
- confess "Error executing virtual fields query: $query: ". $dbh->errstr
- if $dbh->err;
- $virtual_fields_cache{$table} = $result;
- }
-
- @{$virtual_fields_cache{$table}};
-
-}
-
-
-=item fields [ TABLE ]
-
-This is a wrapper for real_fields and virtual_fields. Code that called
-fields before should probably continue to call fields.
-
-=cut
-
-sub fields {
- my $something = shift;
- my $table;
- if($something->isa('FS::Record')) {
- $table = $something->table;
- } else {
- $table = $something;
- $something = "FS::$table";
- }
- return (real_fields($table), $something->virtual_fields());
-}
-
-=back
-
-=item pvf FIELD_NAME
-
-Returns the FS::part_virtual_field object corresponding to a field in the
-record (specified by FIELD_NAME).
-
-=cut
-
-sub pvf {
- my ($self, $name) = (shift, shift);
-
- if(grep /^$name$/, $self->virtual_fields) {
- return qsearchs('part_virtual_field', { dbtable => $self->table,
- name => $name } );
- }
- ''
-}
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item real_fields [ TABLE ]
-
-Returns a list of the real columns in the specified table. Called only by
-fields() and other subroutines elsewhere in FS::Record.
-
-=cut
-
-sub real_fields {
- my $table = shift;
-
- my($table_obj) = dbdef->table($table);
- confess "Unknown table $table" unless $table_obj;
- $table_obj->columns;
-}
-
-=item _quote VALUE, TABLE, COLUMN
-
-This is an internal function used to construct SQL statements. It returns
-VALUE DBI-quoted (see L<DBI/"quote">) unless VALUE is a number and the column
-type (see L<DBIx::DBSchema::Column>) does not end in `char' or `binary'.
-
-=cut
-
-sub _quote {
- my($value, $table, $column) = @_;
- my $column_obj = dbdef->table($table)->column($column);
- my $column_type = $column_obj->type;
- my $nullable = $column_obj->null;
-
- warn " $table.$column: $value ($column_type".
- ( $nullable ? ' NULL' : ' NOT NULL' ).
- ")\n" if $DEBUG > 2;
-
- if ( $value eq '' && $column_type =~ /^(int|numeric)/ ) {
- if ( $nullable ) {
- 'NULL';
- } else {
- cluck "WARNING: Attempting to set non-null integer $table.$column null; ".
- "using 0 instead";
- 0;
- }
- } elsif ( $value =~ /^\d+(\.\d+)?$/ &&
- ! $column_type =~ /(char|binary|text)$/i ) {
- $value;
- } else {
- dbh->quote($value);
- }
-}
-
-=item vfieldpart_hashref TABLE
-
-Returns a hashref of virtual field names and vfieldparts applicable to the given
-TABLE.
-
-=cut
-
-sub vfieldpart_hashref {
- my $self = shift;
- my $table = $self->table;
-
- return {} unless dbdef->table('part_virtual_field');
-
- my $dbh = dbh;
- my $statement = "SELECT vfieldpart, name FROM part_virtual_field WHERE ".
- "dbtable = '$table'";
- my $sth = $dbh->prepare($statement);
- $sth->execute or croak "Execution of '$statement' failed: ".$dbh->errstr;
- return { map { $_->{name}, $_->{vfieldpart} }
- @{$sth->fetchall_arrayref({})} };
-
-}
-
-
-=item hfields TABLE
-
-This is deprecated. Don't use it.
-
-It returns a hash-type list with the fields of this record's table set true.
-
-=cut
-
-sub hfields {
- carp "warning: hfields is deprecated";
- my($table)=@_;
- my(%hash);
- foreach (fields($table)) {
- $hash{$_}=1;
- }
- \%hash;
-}
-
-sub _dump {
- my($self)=@_;
- join("\n", map {
- "$_: ". $self->getfield($_). "|"
- } (fields($self->table)) );
-}
-
-sub encrypt {
- my ($self, $value) = @_;
- my $encrypted;
-
- my $conf = new FS::Conf;
- if ($conf->exists('encryption')) {
- if ($self->is_encrypted($value)) {
- # Return the original value if it isn't plaintext.
- $encrypted = $value;
- } else {
- $self->loadRSA;
- if (ref($rsa_encrypt) =~ /::RSA/) { # We Can Encrypt
- # RSA doesn't like the empty string so let's pack it up
- # The database doesn't like the RSA data so uuencode it
- my $length = length($value)+1;
- $encrypted = pack("u*",$rsa_encrypt->encrypt(pack("Z$length",$value)));
- } else {
- die ("You can't encrypt w/o a valid RSA engine - Check your installation or disable encryption");
- }
- }
- }
- return $encrypted;
-}
-
-sub is_encrypted {
- my ($self, $value) = @_;
- # Possible Bug - Some work may be required here....
-
- if (length($value) > 80) {
- return 1;
- } else {
- return 0;
- }
-}
-
-sub decrypt {
- my ($self,$value) = @_;
- my $decrypted = $value; # Will return the original value if it isn't encrypted or can't be decrypted.
- my $conf = new FS::Conf;
- if ($conf->exists('encryption') && $self->is_encrypted($value)) {
- $self->loadRSA;
- if (ref($rsa_decrypt) =~ /::RSA/) {
- my $encrypted = unpack ("u*", $value);
- $decrypted = unpack("Z*", $rsa_decrypt->decrypt($encrypted));
- }
- }
- return $decrypted;
-}
-
-sub loadRSA {
- my $self = shift;
- #Initialize the Module
- $rsa_module = 'Crypt::OpenSSL::RSA'; # The Default
-
- my $conf = new FS::Conf;
- if ($conf->exists('encryptionmodule') && $conf->config('encryptionmodule') ne '') {
- $rsa_module = $conf->config('encryptionmodule');
- }
-
- if (!$rsa_loaded) {
- eval ("require $rsa_module"); # No need to import the namespace
- $rsa_loaded++;
- }
- # Initialize Encryption
- if ($conf->exists('encryptionpublickey') && $conf->config('encryptionpublickey') ne '') {
- my $public_key = join("\n",$conf->config('encryptionpublickey'));
- $rsa_encrypt = $rsa_module->new_public_key($public_key);
- }
-
- # Intitalize Decryption
- if ($conf->exists('encryptionprivatekey') && $conf->config('encryptionprivatekey') ne '') {
- my $private_key = join("\n",$conf->config('encryptionprivatekey'));
- $rsa_decrypt = $rsa_module->new_private_key($private_key);
- }
-}
-
-sub DESTROY { return; }
-
-#sub DESTROY {
-# my $self = shift;
-# #use Carp qw(cluck);
-# #cluck "DESTROYING $self";
-# warn "DESTROYING $self";
-#}
-
-#sub is_tainted {
-# return ! eval { join('',@_), kill 0; 1; };
-# }
-
-=back
-
-=head1 BUGS
-
-This module should probably be renamed, since much of the functionality is
-of general use. It is not completely unlike Adapter::DBI (see below).
-
-Exported qsearch and qsearchs should be deprecated in favor of method calls
-(against an FS::Record object like the old search and searchs that qsearch
-and qsearchs were on top of.)
-
-The whole fields / hfields mess should be removed.
-
-The various WHERE clauses should be subroutined.
-
-table string should be deprecated in favor of DBIx::DBSchema::Table.
-
-No doubt we could benefit from a Tied hash. Documenting how exists / defined
-true maps to the database (and WHERE clauses) would also help.
-
-The ut_ methods should ask the dbdef for a default length.
-
-ut_sqltype (like ut_varchar) should all be defined
-
-A fallback check method should be provided which uses the dbdef.
-
-The ut_money method assumes money has two decimal digits.
-
-The Pg money kludge in the new method only strips `$'.
-
-The ut_phonen method only checks US-style phone numbers.
-
-The _quote function should probably use ut_float instead of a regex.
-
-All the subroutines probably should be methods, here or elsewhere.
-
-Probably should borrow/use some dbdef methods where appropriate (like sub
-fields)
-
-As of 1.14, DBI fetchall_hashref( {} ) doesn't set fetchrow_hashref NAME_lc,
-or allow it to be set. Working around it is ugly any way around - DBI should
-be fixed. (only affects RDBMS which return uppercase column names)
-
-ut_zip should take an optional country like ut_phone.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<FS::UID>, L<DBI>
-
-Adapter::DBI from Ch. 11 of Advanced Perl Programming by Sriram Srinivasan.
-
-http://poop.sf.net/
-
-=cut
-
-1;
-
diff --git a/FS/FS/Report.pm b/FS/FS/Report.pm
deleted file mode 100644
index 181fea2..0000000
--- a/FS/FS/Report.pm
+++ /dev/null
@@ -1,46 +0,0 @@
-package FS::Report;
-
-use strict;
-
-=head1 NAME
-
-FS::Report - Report data objects
-
-=head1 SYNOPSIS
-
- #see the more speicific report objects, currently only FS::Report::Table
-
-=head1 DESCRIPTION
-
-See the more specific report objects, currently only FS::Report::Table
-
-=head1 METHODS
-
-=over 4
-
-=item new [ OPTION => VALUE ... ]
-
-Constructor. Takes a list of options and their values.
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = @_ ? ( ref($_[0]) ? shift : { @_ } ) : {};
- bless( $self, $class );
-}
-
-=back
-
-=head1 BUGS
-
-Documentation.
-
-=head1 SEE ALSO
-
-L<FS::Report::Table>, reports in the web interface.
-
-=cut
-
-1;
diff --git a/FS/FS/Report/Table.pm b/FS/FS/Report/Table.pm
deleted file mode 100644
index 9f636fa..0000000
--- a/FS/FS/Report/Table.pm
+++ /dev/null
@@ -1,27 +0,0 @@
-package FS::Report::Table;
-
-use strict;
-use vars qw( @ISA );
-use FS::Report;
-
-@ISA = qw( FS::Report );
-
-=head1 NAME
-
-FS::Report::Table - Tables of report data
-
-=head1 SYNOPSIS
-
-See the more specific report objects, currently only FS::Report::Table::Monthly
-
-=head1 BUGS
-
-Documentation.
-
-=head1 SEE ALSO
-
-L<FS::Report::Table::Monthly>, reports in the web interface.
-
-=cut
-
-1;
diff --git a/FS/FS/Report/Table/Monthly.pm b/FS/FS/Report/Table/Monthly.pm
deleted file mode 100644
index 145f2a8..0000000
--- a/FS/FS/Report/Table/Monthly.pm
+++ /dev/null
@@ -1,366 +0,0 @@
-package FS::Report::Table::Monthly;
-
-use strict;
-use vars qw( @ISA $expenses_kludge );
-use Time::Local;
-use FS::UID qw( dbh );
-use FS::Report::Table;
-use FS::CurrentUser;
-
-@ISA = qw( FS::Report::Table );
-
-$expenses_kludge = 0;
-
-=head1 NAME
-
-FS::Report::Table::Monthly - Tables of report data, indexed monthly
-
-=head1 SYNOPSIS
-
- use FS::Report::Table::Monthly;
-
- my $report = new FS::Report::Table::Monthly (
- 'items' => [ 'invoiced', 'netsales', 'credits', 'receipts', ],
- 'start_month' => 4,
- 'start_year' => 2000,
- 'end_month' => 4,
- 'end_year' => 2020,
- #opt
- 'agentnum' => 54
- 'params' => [ [ 'paramsfor', 'item_one' ], [ 'item', 'two' ] ], # ...
- 'remove_empty' => 1, #collapse empty rows, default 0
- 'item_labels' => [ ], #useful with remove_empty
- );
-
- my $data = $report->data;
-
-=head1 METHODS
-
-=over 4
-
-=item data
-
-Returns a hashref of data (!! describe)
-
-=cut
-
-sub data {
- my $self = shift;
-
- #use Data::Dumper;
- #warn Dumper($self);
-
- my $smonth = $self->{'start_month'};
- my $syear = $self->{'start_year'};
- my $emonth = $self->{'end_month'};
- my $eyear = $self->{'end_year'};
- my $agentnum = $self->{'agentnum'};
-
- my %data;
-
- while ( $syear < $eyear || ( $syear == $eyear && $smonth < $emonth+1 ) ) {
-
- push @{$data{label}}, "$smonth/$syear";
-
- my $speriod = timelocal(0,0,0,1,$smonth-1,$syear);
- push @{$data{speriod}}, $speriod;
- if ( ++$smonth == 13 ) { $syear++; $smonth=1; }
- my $eperiod = timelocal(0,0,0,1,$smonth-1,$syear);
- push @{$data{eperiod}}, $eperiod;
-
- my $col = 0;
- my @row = ();
- foreach my $item ( @{$self->{'items'}} ) {
- my @param = $self->{'params'} ? @{ $self->{'params'}[$col] }: ();
- my $value = $self->$item($speriod, $eperiod, $agentnum, @param);
- #push @{$data{$item}}, $value;
- push @{$data{data}->[$col++]}, $value;
- }
-
- }
-
- #these need to get generalized, sheesh
- $data{'items'} = $self->{'items'};
- $data{'item_labels'} = $self->{'item_labels'} || $self->{'items'};
- $data{'colors'} = $self->{'colors'};
- $data{'links'} = $self->{'links'} || [];
-
- #use Data::Dumper;
- #warn Dumper(\%data);
-
- if ( $self->{'remove_empty'} ) {
-
- #warn "removing empty rows\n";
-
- my $col = 0;
- #these need to get generalized, sheesh
- my @newitems = ();
- my @newlabels = ();
- my @newdata = ();
- my @newcolors = ();
- my @newlinks = ();
- foreach my $item ( @{$self->{'items'}} ) {
-
- if ( grep { $_ != 0 } @{$data{'data'}->[$col]} ) {
- push @newitems, $data{'items'}->[$col];
- push @newlabels, $data{'item_labels'}->[$col];
- push @newdata, $data{'data'}->[$col];
- push @newcolors, $data{'colors'}->[$col];
- push @newlinks, $data{'links'}->[$col];
- }
-
- $col++;
- }
-
- $data{'items'} = \@newitems;
- $data{'item_labels'} = \@newlabels;
- $data{'data'} = \@newdata;
- $data{'colors'} = \@newcolors;
- $data{'links'} = \@newlinks;
-
- }
-
- #use Data::Dumper;
- #warn Dumper(\%data);
-
- \%data;
-
-}
-
-sub invoiced { #invoiced
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
-
- $self->scalar_sql("
- SELECT SUM(charged)
- FROM cust_bill
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum)
- );
-
-}
-
-sub netsales { #net sales
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
-
- my $credited = $self->scalar_sql("
- SELECT SUM(cust_credit_bill.amount)
- FROM cust_credit_bill
- LEFT JOIN cust_bill USING ( invnum )
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum, 'cust_bill')
- );
-
- #horrible local kludge
- my $expenses = !$expenses_kludge ? 0 : $self->scalar_sql("
- SELECT SUM(cust_bill_pkg.setup)
- FROM cust_bill_pkg
- LEFT JOIN cust_bill USING ( invnum )
- LEFT JOIN cust_main USING ( custnum )
- LEFT JOIN cust_pkg USING ( pkgnum )
- LEFT JOIN part_pkg USING ( pkgpart )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum, 'cust_bill'). "
- AND LOWER(part_pkg.pkg) LIKE 'expense _%'
- ");
-
- $self->invoiced($speriod,$eperiod,$agentnum) - $credited - $expenses;
-}
-
-#deferred revenue
-
-sub receipts { #cashflow
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
-
- my $refunded = $self->scalar_sql("
- SELECT SUM(refund)
- FROM cust_refund
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum)
- );
-
- #horrible local kludge that doesn't even really work right
- my $expenses = !$expenses_kludge ? 0 : $self->scalar_sql("
- SELECT SUM(cust_bill_pay.amount)
- FROM cust_bill_pay
- LEFT JOIN cust_bill USING ( invnum )
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum, 'cust_bill_pay'). "
- AND 0 < ( SELECT COUNT(*) from cust_bill_pkg, cust_pkg, part_pkg
- WHERE cust_bill.invnum = cust_bill_pkg.invnum
- AND cust_pkg.pkgnum = cust_bill_pkg.pkgnum
- AND cust_pkg.pkgpart = part_pkg.pkgpart
- AND LOWER(part_pkg.pkg) LIKE 'expense _%'
- )
- ");
- # my $expenses_sql2 = "SELECT SUM(cust_bill_pay.amount) FROM cust_bill_pay, cust_bill_pkg, cust_bill, cust_pkg, part_pkg WHERE cust_bill_pay.invnum = cust_bill.invnum AND cust_bill.invnum = cust_bill_pkg.invnum AND cust_bill_pay._date >= $speriod AND cust_bill_pay._date < $eperiod AND cust_pkg.pkgnum = cust_bill_pkg.pkgnum AND cust_pkg.pkgpart = part_pkg.pkgpart AND LOWER(part_pkg.pkg) LIKE 'expense _%'";
-
- $self->payments($speriod, $eperiod, $agentnum) - $refunded - $expenses;
-}
-
-sub payments {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $self->scalar_sql("
- SELECT SUM(paid)
- FROM cust_pay
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum)
- );
-}
-
-sub credits {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $self->scalar_sql("
- SELECT SUM(amount)
- FROM cust_credit
- LEFT JOIN cust_main USING ( custnum )
- WHERE ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum)
- );
-}
-
-#these should be auto-generated or $AUTOLOADed or something
-sub invoiced_12mo {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $speriod = $self->_subtract_11mo($speriod);
- $self->invoiced($speriod, $eperiod, $agentnum);
-}
-
-sub netsales_12mo {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $speriod = $self->_subtract_11mo($speriod);
- $self->netsales($speriod, $eperiod, $agentnum);
-}
-
-sub receipts_12mo {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $speriod = $self->_subtract_11mo($speriod);
- $self->receipts($speriod, $eperiod, $agentnum);
-}
-
-sub payments_12mo {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $speriod = $self->_subtract_11mo($speriod);
- $self->payments($speriod, $eperiod, $agentnum);
-}
-
-sub credits_12mo {
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $speriod = $self->_subtract_11mo($speriod);
- $self->credits($speriod, $eperiod, $agentnum);
-}
-
-#not being too bad with the false laziness
-use Time::Local qw(timelocal);
-sub _subtract_11mo {
- my($self, $time) = @_;
- my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($time) )[0,1,2,3,4,5];
- $mon -= 11;
- if ( $mon < 0 ) { $mon+=12; $year--; }
- timelocal($sec,$min,$hour,$mday,$mon,$year);
-}
-
-sub cust_bill_pkg {
- my( $self, $speriod, $eperiod, $agentnum, %opt ) = @_;
-
- my $where = '';
- if ( $opt{'classnum'} =~ /^(\d+)$/ ) {
- if ( $1 == 0 ) {
- $where = "classnum IS NULL";
- } else {
- $where = "classnum = $1";
- }
- }
-
- $agentnum ||= $opt{'agentnum'};
-
- $self->scalar_sql("
- SELECT SUM(cust_bill_pkg.setup + cust_bill_pkg.recur)
- FROM cust_bill_pkg
- LEFT JOIN cust_bill USING ( invnum )
- LEFT JOIN cust_main USING ( custnum )
- LEFT JOIN cust_pkg USING ( pkgnum )
- LEFT JOIN part_pkg USING ( pkgpart )
- WHERE pkgnum != 0
- AND $where
- AND ". $self->in_time_period_and_agent($speriod, $eperiod, $agentnum)
- );
-
-}
-
-# NEEDS TO BE AGENTNUM-capable
-sub canceled { #active
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $self->scalar_sql("
- SELECT COUNT(*)
- FROM cust_pkg
- LEFT JOIN cust_main USING ( custnum )
- WHERE 0 = ( SELECT COUNT(*)
- FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- )
- AND cust_pkg.cancel > $speriod AND cust_pkg.cancel < $eperiod
- ");
-}
-
-# NEEDS TO BE AGENTNUM-capable
-sub newaccount { #newaccount
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $self->scalar_sql("
- SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- AND ( cust_pkg.susp IS NULL OR cust_pkg.susp = 0 )
- AND cust_pkg.setup > $speriod AND cust_pkg.setup < $eperiod
- ");
-}
-
-# NEEDS TO BE AGENTNUM-capable
-sub suspended { #suspended
- my( $self, $speriod, $eperiod, $agentnum ) = @_;
- $self->scalar_sql("
- SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- AND 0 = ( SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.susp IS NULL OR cust_pkg.susp = 0 )
- )
- AND cust_pkg.susp > $speriod AND cust_pkg.susp < $eperiod
- ");
-}
-
-sub in_time_period_and_agent {
- my( $self, $speriod, $eperiod, $agentnum ) = splice(@_, 0, 4);
- my $table = @_ ? shift().'.' : '';
-
- my $sql = "${table}_date >= $speriod AND ${table}_date < $eperiod";
-
- #agent selection
- $sql .= " AND agentnum = $agentnum"
- if $agentnum;
-
- #agent virtualization
- $sql .= ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql;
-
- $sql;
-}
-
-sub scalar_sql {
- my( $self, $sql ) = ( shift, shift );
- my $sth = dbh->prepare($sql) or die dbh->errstr;
- $sth->execute
- or die "Unexpected error executing statement $sql: ". $sth->errstr;
- $sth->fetchrow_arrayref->[0] || 0;
-}
-
-=back
-
-=head1 BUGS
-
-Documentation.
-
-=head1 SEE ALSO
-
-=cut
-
-1;
-
diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm
deleted file mode 100644
index 0bb97f4..0000000
--- a/FS/FS/Schema.pm
+++ /dev/null
@@ -1,1602 +0,0 @@
-package FS::Schema;
-
-use vars qw(@ISA @EXPORT_OK $DEBUG $setup_hack %dbdef_cache);
-use subs qw(reload_dbdef);
-use Exporter;
-use DBIx::DBSchema 0.30;
-use DBIx::DBSchema::Table;
-use DBIx::DBSchema::Column 0.06;
-use DBIx::DBSchema::ColGroup::Unique;
-use DBIx::DBSchema::ColGroup::Index;
-use FS::UID qw(datasrc);
-
-@ISA = qw(Exporter);
-@EXPORT_OK = qw( dbdef dbdef_dist reload_dbdef );
-
-$DEBUG = 0;
-$me = '[FS::Schema]';
-
-=head1 NAME
-
-FS::Schema - Freeside database schema
-
-=head1 SYNOPSYS
-
- use FS::Schema qw(dbdef dbdef_dist reload_dbdef);
-
- $dbdef = reload_dbdef;
- $dbdef = reload_dbdef "/non/standard/filename";
- $dbdef = dbdef;
- $dbdef_dist = dbdef_dist;
-
-=head1 DESCRIPTION
-
-This class represents the database schema.
-
-=head1 METHODS
-
-=over 4
-
-=item reload_dbdef([FILENAME])
-
-Load a database definition (see L<DBIx::DBSchema>), optionally from a
-non-default filename. This command is executed at startup unless
-I<$FS::Schema::setup_hack> is true. Returns a DBIx::DBSchema object.
-
-=cut
-
-sub reload_dbdef {
- my $file = shift;
-
- unless ( exists $dbdef_cache{$file} ) {
- warn "[debug]$me loading dbdef for $file\n" if $DEBUG;
- $dbdef_cache{$file} = DBIx::DBSchema->load( $file )
- or die "can't load database schema from $file";
- } else {
- warn "[debug]$me re-using cached dbdef for $file\n" if $DEBUG;
- }
- $dbdef = $dbdef_cache{$file};
-}
-
-=item dbdef
-
-Returns the current database definition (represents the current database,
-assuming it is up-to-date). See L<DBIx::DBSchema>.
-
-=cut
-
-sub dbdef { $dbdef; }
-
-=item dbdef_dist [ OPTION => VALUE ... ]
-
-Returns the current canoical database definition as defined in this file.
-
-=cut
-
-sub dbdef_dist {
-
- ###
- # create a dbdef object from the old data structure
- ###
-
- my $tables_hashref = tables_hashref();
-
- #turn it into objects
- my $dbdef = new DBIx::DBSchema map {
- my @columns;
- while (@{$tables_hashref->{$_}{'columns'}}) {
- #my($name, $type, $null, $length, $default, $local) =
- my @coldef =
- splice @{$tables_hashref->{$_}{'columns'}}, 0, 6;
- my %hash = map { $_ => shift @coldef }
- qw( name type null length default local );
-
- unless ( defined $hash{'default'} ) {
- warn "$_:\n".
- join('', map "$_ => $hash{$_}\n", keys %hash) ;# $stop = <STDIN>;
- }
-
- push @columns, new DBIx::DBSchema::Column ( \%hash );
- }
- DBIx::DBSchema::Table->new(
- $_,
- $tables_hashref->{$_}{'primary_key'},
- DBIx::DBSchema::ColGroup::Unique->new($tables_hashref->{$_}{'unique'}),
- DBIx::DBSchema::ColGroup::Index->new($tables_hashref->{$_}{'index'}),
- @columns,
- );
- } keys %$tables_hashref;
-
- if ( $DEBUG ) {
- warn "[debug]$me initial dbdef_dist created ($dbdef) with tables:\n";
- warn "[debug]$me $_\n" foreach $dbdef->tables;
- }
-
- my $cust_main = $dbdef->table('cust_main');
- #unless ($ship) { #remove ship_ from cust_main
- # $cust_main->delcolumn($_) foreach ( grep /^ship_/, $cust_main->columns );
- #} else { #add indices
- push @{$cust_main->index->lol_ref},
- map { [ "ship_$_" ] } qw( last company daytime night fax );
- #}
-
- #add radius attributes to svc_acct
- #
- #my($svc_acct)=$dbdef->table('svc_acct');
- #
- #my($attribute);
- #foreach $attribute (@attributes) {
- # $svc_acct->addcolumn ( new DBIx::DBSchema::Column (
- # 'radius_'. $attribute,
- # 'varchar',
- # 'NULL',
- # $char_d,
- # ));
- #}
- #
- #foreach $attribute (@check_attributes) {
- # $svc_acct->addcolumn( new DBIx::DBSchema::Column (
- # 'rc_'. $attribute,
- # 'varchar',
- # 'NULL',
- # $char_d,
- # ));
- #}
-
- #create history tables (false laziness w/create-history-tables)
- foreach my $table (
- grep { ! /^clientapi_session/ }
- grep { ! /^h_/ }
- $dbdef->tables
- ) {
- my $tableobj = $dbdef->table($table)
- or die "unknown table $table";
-
- die "unique->lol_ref undefined for $table"
- unless defined $tableobj->unique->lol_ref;
- die "index->lol_ref undefined for $table"
- unless defined $tableobj->index->lol_ref;
-
- my $h_tableobj = DBIx::DBSchema::Table->new( {
- name => "h_$table",
- primary_key => 'historynum',
- unique => DBIx::DBSchema::ColGroup::Unique->new( [] ),
- 'index' => DBIx::DBSchema::ColGroup::Index->new( [
- @{$tableobj->unique->lol_ref},
- @{$tableobj->index->lol_ref}
- ] ),
- columns => [
- DBIx::DBSchema::Column->new( {
- 'name' => 'historynum',
- 'type' => 'serial',
- 'null' => 'NOT NULL',
- 'length' => '',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_date',
- 'type' => 'int',
- 'null' => 'NULL',
- 'length' => '',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_user',
- 'type' => 'varchar',
- 'null' => 'NOT NULL',
- 'length' => '80',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_action',
- 'type' => 'varchar',
- 'null' => 'NOT NULL',
- 'length' => '80',
- 'default' => '',
- 'local' => '',
- } ),
- map {
- my $column = $tableobj->column($_);
-
- #clone so as to not disturb the original
- $column = DBIx::DBSchema::Column->new( {
- map { $_ => $column->$_() }
- qw( name type null length default local )
- } );
-
- if ( $column->type eq 'serial' ) {
- $column->type('int');
- $column->null('NULL');
- }
- #$column->default('')
- # if $column->default =~ /^nextval\(/i;
- #( my $local = $column->local ) =~ s/AUTO_INCREMENT//i;
- #$column->local($local);
- $column;
- } $tableobj->columns
- ],
- } );
- $dbdef->addtable($h_tableobj);
- }
-
- $dbdef;
-
-}
-
-sub tables_hashref {
-
- my $char_d = 80; #default maxlength for text fields
-
- #my(@date_type) = ( 'timestamp', '', '' );
- my @date_type = ( 'int', 'NULL', '' );
- my @perl_type = ( 'text', 'NULL', '' );
- my @money_type = ( 'decimal', '', '10,2' );
-
- my $username_len = 32; #usernamemax config file
-
- # name type nullability length default local
-
- return {
-
- 'agent' => {
- 'columns' => [
- 'agentnum', 'serial', '', '', '', '',
- 'agent', 'varchar', '', $char_d, '', '',
- 'typenum', 'int', '', '', '', '',
- 'freq', 'int', 'NULL', '', '', '',
- 'prog', @perl_type, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- 'username', 'varchar', 'NULL', $char_d, '', '',
- '_password','varchar', 'NULL', $char_d, '', '',
- 'ticketing_queueid', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'agentnum',
- 'unique' => [],
- 'index' => [ ['typenum'], ['disabled'] ],
- },
-
- 'agent_type' => {
- 'columns' => [
- 'typenum', 'serial', '', '', '', '',
- 'atype', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'typenum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'type_pkgs' => {
- 'columns' => [
- 'typepkgnum', 'serial', '', '', '', '',
- 'typenum', 'int', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- ],
- 'primary_key' => 'typepkgnum',
- 'unique' => [ ['typenum', 'pkgpart'] ],
- 'index' => [ ['typenum'] ],
- },
-
- 'cust_bill' => {
- 'columns' => [
- 'invnum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'charged', @money_type, '', '',
- 'printed', 'int', '', '', '', '',
- 'closed', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'invnum',
- 'unique' => [],
- 'index' => [ ['custnum'], ['_date'] ],
- },
-
- 'cust_bill_event' => {
- 'columns' => [
- 'eventnum', 'serial', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'eventpart', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'status', 'varchar', '', $char_d, '', '',
- 'statustext', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'eventnum',
- #no... there are retries now #'unique' => [ [ 'eventpart', 'invnum' ] ],
- 'unique' => [],
- 'index' => [ ['invnum'], ['status'] ],
- },
-
- 'part_bill_event' => {
- 'columns' => [
- 'eventpart', 'serial', '', '', '', '',
- 'freq', 'varchar', 'NULL', $char_d, '', '',
- 'payby', 'char', '', 4, '', '',
- 'event', 'varchar', '', $char_d, '', '',
- 'eventcode', @perl_type, '', '',
- 'seconds', 'int', 'NULL', '', '', '',
- 'weight', 'int', '', '', '', '',
- 'plan', 'varchar', 'NULL', $char_d, '', '',
- 'plandata', 'text', 'NULL', '', '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'eventpart',
- 'unique' => [],
- 'index' => [ ['payby'], ['disabled'], ],
- },
-
- 'cust_bill_pkg' => {
- 'columns' => [
- 'billpkgnum', 'serial', '', '', '', '',
- 'pkgnum', 'int', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'setup', @money_type, '', '',
- 'recur', @money_type, '', '',
- 'sdate', @date_type, '', '',
- 'edate', @date_type, '', '',
- 'itemdesc', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'billpkgnum',
- 'unique' => [],
- 'index' => [ ['invnum'], [ 'pkgnum' ] ],
- },
-
- 'cust_bill_pkg_detail' => {
- 'columns' => [
- 'detailnum', 'serial', '', '', '', '',
- 'pkgnum', 'int', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'detail', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'detailnum',
- 'unique' => [],
- 'index' => [ [ 'pkgnum', 'invnum' ] ],
- },
-
- 'cust_credit' => {
- 'columns' => [
- 'crednum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'amount', @money_type, '', '',
- 'otaker', 'varchar', '', 32, '', '',
- 'reason', 'text', 'NULL', '', '', '',
- 'closed', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'crednum',
- 'unique' => [],
- 'index' => [ ['custnum'] ],
- },
-
- 'cust_credit_bill' => {
- 'columns' => [
- 'creditbillnum', 'serial', '', '', '', '',
- 'crednum', 'int', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'amount', @money_type, '', '',
- ],
- 'primary_key' => 'creditbillnum',
- 'unique' => [],
- 'index' => [ ['crednum'], ['invnum'] ],
- },
-
- 'cust_credit_bill_pkg' => {
- 'columns' => [
- 'creditbillpkgnum', 'serial', '', '', '', '',
- 'creditbillnum', 'int', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- 'setuprecur', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'creditbillpkgnum',
- 'unique' => [],
- 'index' => [ [ 'creditbillnum' ], [ 'billpkgnum' ], ],
- },
-
- 'cust_main' => {
- 'columns' => [
- 'custnum', 'serial', '', '', '', '',
- 'agentnum', 'int', '', '', '', '',
- 'agent_custid', 'varchar', 'NULL', $char_d, '', '',
-# 'titlenum', 'int', 'NULL', '', '', '',
- 'last', 'varchar', '', $char_d, '', '',
-# 'middle', 'varchar', 'NULL', $char_d, '', '',
- 'first', 'varchar', '', $char_d, '', '',
- 'ss', 'varchar', 'NULL', 11, '', '',
- 'company', 'varchar', 'NULL', $char_d, '', '',
- 'address1', 'varchar', '', $char_d, '', '',
- 'address2', 'varchar', 'NULL', $char_d, '', '',
- 'city', 'varchar', '', $char_d, '', '',
- 'county', 'varchar', 'NULL', $char_d, '', '',
- 'state', 'varchar', 'NULL', $char_d, '', '',
- 'zip', 'varchar', 'NULL', 10, '', '',
- 'country', 'char', '', 2, '', '',
- 'daytime', 'varchar', 'NULL', 20, '', '',
- 'night', 'varchar', 'NULL', 20, '', '',
- 'fax', 'varchar', 'NULL', 12, '', '',
- 'ship_last', 'varchar', 'NULL', $char_d, '', '',
-# 'ship_middle', 'varchar', 'NULL', $char_d, '', '',
- 'ship_first', 'varchar', 'NULL', $char_d, '', '',
- 'ship_company', 'varchar', 'NULL', $char_d, '', '',
- 'ship_address1', 'varchar', 'NULL', $char_d, '', '',
- 'ship_address2', 'varchar', 'NULL', $char_d, '', '',
- 'ship_city', 'varchar', 'NULL', $char_d, '', '',
- 'ship_county', 'varchar', 'NULL', $char_d, '', '',
- 'ship_state', 'varchar', 'NULL', $char_d, '', '',
- 'ship_zip', 'varchar', 'NULL', 10, '', '',
- 'ship_country', 'char', 'NULL', 2, '', '',
- 'ship_daytime', 'varchar', 'NULL', 20, '', '',
- 'ship_night', 'varchar', 'NULL', 20, '', '',
- 'ship_fax', 'varchar', 'NULL', 12, '', '',
- 'payby', 'char', '', 4, '', '',
- 'payinfo', 'varchar', 'NULL', 512, '', '',
- 'paycvv', 'varchar', 'NULL', 512, '', '',
- 'paymask', 'varchar', 'NULL', $char_d, '', '',
- #'paydate', @date_type, '', '',
- 'paydate', 'varchar', 'NULL', 10, '', '',
- 'paystart_month', 'int', 'NULL', '', '', '',
- 'paystart_year', 'int', 'NULL', '', '', '',
- 'payissue', 'varchar', 'NULL', 2, '', '',
- 'payname', 'varchar', 'NULL', $char_d, '', '',
- 'payip', 'varchar', 'NULL', 15, '', '',
- 'tax', 'char', 'NULL', 1, '', '',
- 'otaker', 'varchar', '', 32, '', '',
- 'refnum', 'int', '', '', '', '',
- 'referral_custnum', 'int', 'NULL', '', '', '',
- 'comments', 'text', 'NULL', '', '', '',
- 'spool_cdr','char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'custnum',
- 'unique' => [ [ 'agentnum', 'agent_custid' ] ],
- #'index' => [ ['last'], ['company'] ],
- 'index' => [ ['last'], [ 'company' ], [ 'referral_custnum' ],
- [ 'daytime' ], [ 'night' ], [ 'fax' ], [ 'refnum' ],
- [ 'county' ], [ 'state' ], [ 'country' ], [ 'zip' ],
- [ 'ship_last' ], [ 'ship_company' ],
- [ 'payby' ], [ 'paydate' ],
-
- ],
- },
-
- 'cust_main_invoice' => {
- 'columns' => [
- 'destnum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'dest', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'destnum',
- 'unique' => [],
- 'index' => [ ['custnum'], ],
- },
-
- 'cust_main_county' => { #county+state+country are checked off the
- #cust_main_county for validation and to provide
- # a tax rate.
- 'columns' => [
- 'taxnum', 'serial', '', '', '', '',
- 'state', 'varchar', 'NULL', $char_d, '', '',
- 'county', 'varchar', 'NULL', $char_d, '', '',
- 'country', 'char', '', 2, '', '',
- 'taxclass', 'varchar', 'NULL', $char_d, '', '',
- 'exempt_amount', @money_type, '', '',
- 'tax', 'real', '', '', '', '', #tax %
- 'taxname', 'varchar', 'NULL', $char_d, '', '',
- 'setuptax', 'char', 'NULL', 1, '', '', # Y = setup tax exempt
- 'recurtax', 'char', 'NULL', 1, '', '', # Y = recur tax exempt
- ],
- 'primary_key' => 'taxnum',
- 'unique' => [],
- # 'unique' => [ ['taxnum'], ['state', 'county'] ],
- 'index' => [ [ 'county' ], [ 'state' ], [ 'country' ] ],
- },
-
- 'cust_pay' => {
- 'columns' => [
- 'paynum', 'serial', '', '', '', '',
- #now cust_bill_pay #'invnum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'paid', @money_type, '', '',
- '_date', @date_type, '', '',
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- # index into payby table
- # eventually
- 'payinfo', 'varchar', 'NULL', $char_d, '', '', #see cust_main above
- 'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
- 'closed', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'paynum',
- 'unique' => [],
- 'index' => [ [ 'custnum' ], [ 'paybatch' ], [ 'payby' ], [ '_date' ] ],
- },
-
- 'cust_pay_void' => {
- 'columns' => [
- 'paynum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'paid', @money_type, '', '',
- '_date', @date_type, '', '',
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- # index into payby table
- # eventually
- 'payinfo', 'varchar', 'NULL', $char_d, '', '', #see cust_main above
- 'paybatch', 'varchar', 'NULL', $char_d, '', '', #for auditing purposes.
- 'closed', 'char', 'NULL', 1, '', '',
- 'void_date', @date_type, '', '',
- 'reason', 'varchar', 'NULL', $char_d, '', '',
- 'otaker', 'varchar', '', 32, '', '',
- ],
- 'primary_key' => 'paynum',
- 'unique' => [],
- 'index' => [ [ 'custnum' ] ],
- },
-
- 'cust_bill_pay' => {
- 'columns' => [
- 'billpaynum', 'serial', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'paynum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- '_date', @date_type, '', '',
- ],
- 'primary_key' => 'billpaynum',
- 'unique' => [],
- 'index' => [ [ 'paynum' ], [ 'invnum' ] ],
- },
-
- 'cust_bill_pay_pkg' => {
- 'columns' => [
- 'billpaypkgnum', 'serial', '', '', '', '',
- 'billpaynum', 'int', '', '', '', '',
- 'billpkgnum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- 'setuprecur', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'billpaypkgnum',
- 'unique' => [],
- 'index' => [ [ 'billpaynum' ], [ 'billpkgnum' ], ],
- },
-
- 'pay_batch' => { #batches of payments to an external processor
- 'columns' => [
- 'batchnum', 'serial', '', '', '', '',
- 'status', 'char', 'NULL', 1, '', '',
- 'download', @date_type, '', '',
- 'upload', @date_type, '', '',
- ],
- 'primary_key' => 'batchnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cust_pay_batch' => { #what's this used for again? list of customers
- #in current CARD batch? (necessarily CARD?)
- 'columns' => [
- 'paybatchnum', 'serial', '', '', '', '',
- 'batchnum', 'int', '', '', '', '',
- 'invnum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'last', 'varchar', '', $char_d, '', '',
- 'first', 'varchar', '', $char_d, '', '',
- 'address1', 'varchar', '', $char_d, '', '',
- 'address2', 'varchar', 'NULL', $char_d, '', '',
- 'city', 'varchar', '', $char_d, '', '',
- 'state', 'varchar', 'NULL', $char_d, '', '',
- 'zip', 'varchar', 'NULL', 10, '', '',
- 'country', 'char', '', 2, '', '',
- # 'trancode', 'int', '', '', '', ''
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should be
- 'payinfo', 'varchar', '', 512, '', '',
- #'exp', @date_type, '', ''
- 'exp', 'varchar', 'NULL', 11, '', '',
- 'payname', 'varchar', 'NULL', $char_d, '', '',
- 'amount', @money_type, '', '',
- 'status', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'paybatchnum',
- 'unique' => [],
- 'index' => [ ['batchnum'], ['invnum'], ['custnum'] ],
- },
-
- 'cust_pkg' => {
- 'columns' => [
- 'pkgnum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- 'otaker', 'varchar', '', 32, '', '',
- 'setup', @date_type, '', '',
- 'bill', @date_type, '', '',
- 'last_bill', @date_type, '', '',
- 'susp', @date_type, '', '',
- 'cancel', @date_type, '', '',
- 'expire', @date_type, '', '',
- 'manual_flag', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'pkgnum',
- 'unique' => [],
- 'index' => [ ['custnum'], ['pkgpart'] ],
- },
-
- 'cust_refund' => {
- 'columns' => [
- 'refundnum', 'serial', '', '', '', '',
- #now cust_credit_refund #'crednum', 'int', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'refund', @money_type, '', '',
- 'otaker', 'varchar', '', 32, '', '',
- 'reason', 'varchar', '', $char_d, '', '',
- 'payby', 'char', '', 4, '', '', # CARD/BILL/COMP, should
- # be index into payby
- # table eventually
- 'payinfo', 'varchar', 'NULL', $char_d, '', '', #see cust_main above
- 'paybatch', 'varchar', 'NULL', $char_d, '', '',
- 'closed', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'refundnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cust_credit_refund' => {
- 'columns' => [
- 'creditrefundnum', 'serial', '', '', '', '',
- 'crednum', 'int', '', '', '', '',
- 'refundnum', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- '_date', @date_type, '', '',
- ],
- 'primary_key' => 'creditrefundnum',
- 'unique' => [],
- 'index' => [ [ 'crednum', 'refundnum' ] ],
- },
-
-
- 'cust_svc' => {
- 'columns' => [
- 'svcnum', 'serial', '', '', '', '',
- 'pkgnum', 'int', 'NULL', '', '', '',
- 'svcpart', 'int', '', '', '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [ ['svcnum'], ['pkgnum'], ['svcpart'] ],
- },
-
- 'part_pkg' => {
- 'columns' => [
- 'pkgpart', 'serial', '', '', '', '',
- 'pkg', 'varchar', '', $char_d, '', '',
- 'comment', 'varchar', '', $char_d, '', '',
- 'promo_code', 'varchar', 'NULL', $char_d, '', '',
- 'setup', @perl_type, '', '',
- 'freq', 'varchar', '', $char_d, '', '', #billing frequency
- 'recur', @perl_type, '', '',
- 'setuptax', 'char', 'NULL', 1, '', '',
- 'recurtax', 'char', 'NULL', 1, '', '',
- 'plan', 'varchar', 'NULL', $char_d, '', '',
- 'plandata', 'text', 'NULL', '', '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- 'taxclass', 'varchar', 'NULL', $char_d, '', '',
- 'classnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'pkgpart',
- 'unique' => [],
- 'index' => [ [ 'promo_code' ], [ 'disabled' ] ],
- },
-
-# 'part_title' => {
-# 'columns' => [
-# 'titlenum', 'int', '', '',
-# 'title', 'varchar', '', $char_d,
-# ],
-# 'primary_key' => 'titlenum',
-# 'unique' => [ [] ],
-# 'index' => [ [] ],
-# },
-
- 'pkg_svc' => {
- 'columns' => [
- 'pkgsvcnum', 'serial', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- 'svcpart', 'int', '', '', '', '',
- 'quantity', 'int', '', '', '', '',
- 'primary_svc','char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'pkgsvcnum',
- 'unique' => [ ['pkgpart', 'svcpart'] ],
- 'index' => [ ['pkgpart'] ],
- },
-
- 'part_referral' => {
- 'columns' => [
- 'refnum', 'serial', '', '', '', '',
- 'referral', 'varchar', '', $char_d, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- 'agentnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'refnum',
- 'unique' => [],
- 'index' => [ ['disabled'] ],
- },
-
- 'part_svc' => {
- 'columns' => [
- 'svcpart', 'serial', '', '', '', '',
- 'svc', 'varchar', '', $char_d, '', '',
- 'svcdb', 'varchar', '', $char_d, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'svcpart',
- 'unique' => [],
- 'index' => [ [ 'disabled' ] ],
- },
-
- 'part_svc_column' => {
- 'columns' => [
- 'columnnum', 'serial', '', '', '', '',
- 'svcpart', 'int', '', '', '', '',
- 'columnname', 'varchar', '', 64, '', '',
- 'columnvalue', 'varchar', 'NULL', $char_d, '', '',
- 'columnflag', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'columnnum',
- 'unique' => [ [ 'svcpart', 'columnname' ] ],
- 'index' => [ [ 'svcpart' ] ],
- },
-
- #(this should be renamed to part_pop)
- 'svc_acct_pop' => {
- 'columns' => [
- 'popnum', 'serial', '', '', '', '',
- 'city', 'varchar', '', $char_d, '', '',
- 'state', 'varchar', '', $char_d, '', '',
- 'ac', 'char', '', 3, '', '',
- 'exch', 'char', '', 3, '', '',
- 'loc', 'char', 'NULL', 4, '', '', #NULL for legacy purposes
- ],
- 'primary_key' => 'popnum',
- 'unique' => [],
- 'index' => [ [ 'state' ] ],
- },
-
- 'part_pop_local' => {
- 'columns' => [
- 'localnum', 'serial', '', '', '', '',
- 'popnum', 'int', '', '', '', '',
- 'city', 'varchar', 'NULL', $char_d, '', '',
- 'state', 'char', 'NULL', 2, '', '',
- 'npa', 'char', '', 3, '', '',
- 'nxx', 'char', '', 3, '', '',
- ],
- 'primary_key' => 'localnum',
- 'unique' => [],
- 'index' => [ [ 'npa', 'nxx' ], [ 'popnum' ] ],
- },
-
- 'svc_acct' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'username', 'varchar', '', $username_len, '', '', #unique (& remove dup code)
- '_password', 'varchar', '', 72, '', '', #13 for encryped pw's plus ' *SUSPENDED* (md5 passwords can be 34, blowfish 60)
- 'sec_phrase', 'varchar', 'NULL', $char_d, '', '',
- 'popnum', 'int', 'NULL', '', '', '',
- 'uid', 'int', 'NULL', '', '', '',
- 'gid', 'int', 'NULL', '', '', '',
- 'finger', 'varchar', 'NULL', $char_d, '', '',
- 'dir', 'varchar', 'NULL', $char_d, '', '',
- 'shell', 'varchar', 'NULL', $char_d, '', '',
- 'quota', 'varchar', 'NULL', $char_d, '', '',
- 'slipip', 'varchar', 'NULL', 15, '', '', #four TINYINTs, bah.
- 'seconds', 'int', 'NULL', '', '', '', #uhhhh
- 'domsvc', 'int', '', '', '', '',
- ],
- 'primary_key' => 'svcnum',
- #'unique' => [ [ 'username', 'domsvc' ] ],
- 'unique' => [],
- 'index' => [ ['username'], ['domsvc'] ],
- },
-
- #'svc_charge' => {
- # 'columns' => [
- # 'svcnum', 'int', '', '',
- # 'amount', @money_type,
- # ],
- # 'primary_key' => 'svcnum',
- # 'unique' => [ [] ],
- # 'index' => [ [] ],
- #},
-
- 'svc_domain' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'domain', 'varchar', '', $char_d, '', '',
- 'catchall', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [ ['domain'] ],
- 'index' => [],
- },
-
- 'domain_record' => {
- 'columns' => [
- 'recnum', 'serial', '', '', '', '',
- 'svcnum', 'int', '', '', '', '',
- 'reczone', 'varchar', '', 255, '', '',
- 'recaf', 'char', '', 2, '', '',
- 'rectype', 'varchar', '', 5, '', '',
- 'recdata', 'varchar', '', 255, '', '',
- ],
- 'primary_key' => 'recnum',
- 'unique' => [],
- 'index' => [ ['svcnum'] ],
- },
-
- 'svc_forward' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'srcsvc', 'int', 'NULL', '', '', '',
- 'src', 'varchar', 'NULL', 255, '', '',
- 'dstsvc', 'int', 'NULL', '', '', '',
- 'dst', 'varchar', 'NULL', 255, '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [ ['srcsvc'], ['dstsvc'] ],
- },
-
- 'svc_www' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'recnum', 'int', '', '', '', '',
- 'usersvc', 'int', '', '', '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [],
- },
-
- #'svc_wo' => {
- # 'columns' => [
- # 'svcnum', 'int', '', '',
- # 'svcnum', 'int', '', '',
- # 'svcnum', 'int', '', '',
- # 'worker', 'varchar', '', $char_d,
- # '_date', @date_type,
- # ],
- # 'primary_key' => 'svcnum',
- # 'unique' => [ [] ],
- # 'index' => [ [] ],
- #},
-
- 'prepay_credit' => {
- 'columns' => [
- 'prepaynum', 'serial', '', '', '', '',
- 'identifier', 'varchar', '', $char_d, '', '',
- 'amount', @money_type, '', '',
- 'seconds', 'int', 'NULL', '', '', '',
- 'agentnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'prepaynum',
- 'unique' => [ ['identifier'] ],
- 'index' => [],
- },
-
- 'port' => {
- 'columns' => [
- 'portnum', 'serial', '', '', '', '',
- 'ip', 'varchar', 'NULL', 15, '', '',
- 'nasport', 'int', 'NULL', '', '', '',
- 'nasnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'portnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'nas' => {
- 'columns' => [
- 'nasnum', 'serial', '', '', '', '',
- 'nas', 'varchar', '', $char_d, '', '',
- 'nasip', 'varchar', '', 15, '', '',
- 'nasfqdn', 'varchar', '', $char_d, '', '',
- 'last', 'int', '', '', '', '',
- ],
- 'primary_key' => 'nasnum',
- 'unique' => [ [ 'nas' ], [ 'nasip' ] ],
- 'index' => [ [ 'last' ] ],
- },
-
- 'session' => {
- 'columns' => [
- 'sessionnum', 'serial', '', '', '', '',
- 'portnum', 'int', '', '', '', '',
- 'svcnum', 'int', '', '', '', '',
- 'login', @date_type, '', '',
- 'logout', @date_type, '', '',
- ],
- 'primary_key' => 'sessionnum',
- 'unique' => [],
- 'index' => [ [ 'portnum' ] ],
- },
-
- 'queue' => {
- 'columns' => [
- 'jobnum', 'serial', '', '', '', '',
- 'job', 'text', '', '', '', '',
- '_date', 'int', '', '', '', '',
- 'status', 'varchar', '', $char_d, '', '',
- 'statustext', 'text', 'NULL', '', '', '',
- 'svcnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'jobnum',
- 'unique' => [],
- 'index' => [ [ 'svcnum' ], [ 'status' ] ],
- },
-
- 'queue_arg' => {
- 'columns' => [
- 'argnum', 'serial', '', '', '', '',
- 'jobnum', 'int', '', '', '', '',
- 'arg', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'argnum',
- 'unique' => [],
- 'index' => [ [ 'jobnum' ] ],
- },
-
- 'queue_depend' => {
- 'columns' => [
- 'dependnum', 'serial', '', '', '', '',
- 'jobnum', 'int', '', '', '', '',
- 'depend_jobnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'dependnum',
- 'unique' => [],
- 'index' => [ [ 'jobnum' ], [ 'depend_jobnum' ] ],
- },
-
- 'export_svc' => {
- 'columns' => [
- 'exportsvcnum' => 'serial', '', '', '', '',
- 'exportnum' => 'int', '', '', '', '',
- 'svcpart' => 'int', '', '', '', '',
- ],
- 'primary_key' => 'exportsvcnum',
- 'unique' => [ [ 'exportnum', 'svcpart' ] ],
- 'index' => [ [ 'exportnum' ], [ 'svcpart' ] ],
- },
-
- 'part_export' => {
- 'columns' => [
- 'exportnum', 'serial', '', '', '', '',
- 'machine', 'varchar', '', $char_d, '', '',
- 'exporttype', 'varchar', '', $char_d, '', '',
- 'nodomain', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'exportnum',
- 'unique' => [],
- 'index' => [ [ 'machine' ], [ 'exporttype' ] ],
- },
-
- 'part_export_option' => {
- 'columns' => [
- 'optionnum', 'serial', '', '', '', '',
- 'exportnum', 'int', '', '', '', '',
- 'optionname', 'varchar', '', $char_d, '', '',
- 'optionvalue', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'optionnum',
- 'unique' => [],
- 'index' => [ [ 'exportnum' ], [ 'optionname' ] ],
- },
-
- 'radius_usergroup' => {
- 'columns' => [
- 'usergroupnum', 'serial', '', '', '', '',
- 'svcnum', 'int', '', '', '', '',
- 'groupname', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'usergroupnum',
- 'unique' => [],
- 'index' => [ [ 'svcnum' ], [ 'groupname' ] ],
- },
-
- 'msgcat' => {
- 'columns' => [
- 'msgnum', 'serial', '', '', '', '',
- 'msgcode', 'varchar', '', $char_d, '', '',
- 'locale', 'varchar', '', 16, '', '',
- 'msg', 'text', '', '', '', '',
- ],
- 'primary_key' => 'msgnum',
- 'unique' => [ [ 'msgcode', 'locale' ] ],
- 'index' => [],
- },
-
- 'cust_tax_exempt' => {
- 'columns' => [
- 'exemptnum', 'serial', '', '', '', '',
- 'custnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
- 'year', 'int', '', '', '', '',
- 'month', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- ],
- 'primary_key' => 'exemptnum',
- 'unique' => [ [ 'custnum', 'taxnum', 'year', 'month' ] ],
- 'index' => [],
- },
-
- 'cust_tax_exempt_pkg' => {
- 'columns' => [
- 'exemptpkgnum', 'serial', '', '', '', '',
- #'custnum', 'int', '', '', '', ''
- 'billpkgnum', 'int', '', '', '', '',
- 'taxnum', 'int', '', '', '', '',
- 'year', 'int', '', '', '', '',
- 'month', 'int', '', '', '', '',
- 'amount', @money_type, '', '',
- ],
- 'primary_key' => 'exemptpkgnum',
- 'unique' => [],
- 'index' => [ [ 'taxnum', 'year', 'month' ],
- [ 'billpkgnum' ],
- [ 'taxnum' ]
- ],
- },
-
- 'router' => {
- 'columns' => [
- 'routernum', 'serial', '', '', '', '',
- 'routername', 'varchar', '', $char_d, '', '',
- 'svcnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'routernum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'part_svc_router' => {
- 'columns' => [
- 'svcrouternum', 'serial', '', '', '', '',
- 'svcpart', 'int', '', '', '', '',
- 'routernum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'svcrouternum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'addr_block' => {
- 'columns' => [
- 'blocknum', 'serial', '', '', '', '',
- 'routernum', 'int', '', '', '', '',
- 'ip_gateway', 'varchar', '', 15, '', '',
- 'ip_netmask', 'int', '', '', '', '',
- ],
- 'primary_key' => 'blocknum',
- 'unique' => [ [ 'blocknum', 'routernum' ] ],
- 'index' => [],
- },
-
- 'svc_broadband' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'blocknum', 'int', '', '', '', '',
- 'speed_up', 'int', '', '', '', '',
- 'speed_down', 'int', '', '', '', '',
- 'ip_addr', 'varchar', '', 15, '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'part_virtual_field' => {
- 'columns' => [
- 'vfieldpart', 'int', '', '', '', '',
- 'dbtable', 'varchar', '', 32, '', '',
- 'name', 'varchar', '', 32, '', '',
- 'check_block', 'text', 'NULL', '', '', '',
- 'length', 'int', 'NULL', '', '', '',
- 'list_source', 'text', 'NULL', '', '', '',
- 'label', 'varchar', 'NULL', 80, '', '',
- ],
- 'primary_key' => 'vfieldpart',
- 'unique' => [],
- 'index' => [],
- },
-
- 'virtual_field' => {
- 'columns' => [
- 'vfieldnum', 'serial', '', '', '', '',
- 'recnum', 'int', '', '', '', '',
- 'vfieldpart', 'int', '', '', '', '',
- 'value', 'varchar', '', 128, '', '',
- ],
- 'primary_key' => 'vfieldnum',
- 'unique' => [ [ 'vfieldpart', 'recnum' ] ],
- 'index' => [],
- },
-
- 'acct_snarf' => {
- 'columns' => [
- 'snarfnum', 'int', '', '', '', '',
- 'svcnum', 'int', '', '', '', '',
- 'machine', 'varchar', '', 255, '', '',
- 'protocol', 'varchar', '', $char_d, '', '',
- 'username', 'varchar', '', $char_d, '', '',
- '_password', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'snarfnum',
- 'unique' => [],
- 'index' => [ [ 'svcnum' ] ],
- },
-
- 'svc_external' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'id', 'int', 'NULL', '', '', '',
- 'title', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cust_pay_refund' => {
- 'columns' => [
- 'payrefundnum', 'serial', '', '', '', '',
- 'paynum', 'int', '', '', '', '',
- 'refundnum', 'int', '', '', '', '',
- '_date', @date_type, '', '',
- 'amount', @money_type, '', '',
- ],
- 'primary_key' => 'payrefundnum',
- 'unique' => [],
- 'index' => [ ['paynum'], ['refundnum'] ],
- },
-
- 'part_pkg_option' => {
- 'columns' => [
- 'optionnum', 'serial', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- 'optionname', 'varchar', '', $char_d, '', '',
- 'optionvalue', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'optionnum',
- 'unique' => [],
- 'index' => [ [ 'pkgpart' ], [ 'optionname' ] ],
- },
-
- 'rate' => {
- 'columns' => [
- 'ratenum', 'serial', '', '', '', '',
- 'ratename', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'ratenum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'rate_detail' => {
- 'columns' => [
- 'ratedetailnum', 'serial', '', '', '', '',
- 'ratenum', 'int', '', '', '', '',
- 'orig_regionnum', 'int', 'NULL', '', '', '',
- 'dest_regionnum', 'int', '', '', '', '',
- 'min_included', 'int', '', '', '', '',
- #'min_charge', @money_type, '', '',
- 'min_charge', 'decimal', '', '10,5', '', '',
- 'sec_granularity', 'int', '', '', '', '',
- #time period (link to table of periods)?
- ],
- 'primary_key' => 'ratedetailnum',
- 'unique' => [ [ 'ratenum', 'orig_regionnum', 'dest_regionnum' ] ],
- 'index' => [ [ 'ratenum', 'dest_regionnum' ] ],
- },
-
- 'rate_region' => {
- 'columns' => [
- 'regionnum', 'serial', '', '', '', '',
- 'regionname', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'regionnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'rate_prefix' => {
- 'columns' => [
- 'prefixnum', 'serial', '', '', '', '',
- 'regionnum', 'int', '', '',, '', '',
- 'countrycode', 'varchar', '', 3, '', '',
- 'npa', 'varchar', 'NULL', 6, '', '',
- 'nxx', 'varchar', 'NULL', 3, '', '',
- ],
- 'primary_key' => 'prefixnum',
- 'unique' => [],
- 'index' => [ [ 'countrycode' ], [ 'regionnum' ] ],
- },
-
- 'reg_code' => {
- 'columns' => [
- 'codenum', 'serial', '', '', '', '',
- 'code', 'varchar', '', $char_d, '', '',
- 'agentnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'codenum',
- 'unique' => [ [ 'agentnum', 'code' ] ],
- 'index' => [ [ 'agentnum' ] ],
- },
-
- 'reg_code_pkg' => {
- 'columns' => [
- 'codepkgnum', 'serial', '', '', '', '',
- 'codenum', 'int', '', '', '', '',
- 'pkgpart', 'int', '', '', '', '',
- ],
- 'primary_key' => 'codepkgnum',
- 'unique' => [ [ 'codenum', 'pkgpart' ] ],
- 'index' => [ [ 'codenum' ] ],
- },
-
- 'clientapi_session' => {
- 'columns' => [
- 'sessionnum', 'serial', '', '', '', '',
- 'sessionid', 'varchar', '', $char_d, '', '',
- 'namespace', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'sessionnum',
- 'unique' => [ [ 'sessionid', 'namespace' ] ],
- 'index' => [],
- },
-
- 'clientapi_session_field' => {
- 'columns' => [
- 'fieldnum', 'serial', '', '', '', '',
- 'sessionnum', 'int', '', '', '', '',
- 'fieldname', 'varchar', '', $char_d, '', '',
- 'fieldvalue', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'fieldnum',
- 'unique' => [ [ 'sessionnum', 'fieldname' ] ],
- 'index' => [],
- },
-
- 'payment_gateway' => {
- 'columns' => [
- 'gatewaynum', 'serial', '', '', '', '',
- 'gateway_module', 'varchar', '', $char_d, '', '',
- 'gateway_username', 'varchar', 'NULL', $char_d, '', '',
- 'gateway_password', 'varchar', 'NULL', $char_d, '', '',
- 'gateway_action', 'varchar', 'NULL', $char_d, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'gatewaynum',
- 'unique' => [],
- 'index' => [ [ 'disabled' ] ],
- },
-
- 'payment_gateway_option' => {
- 'columns' => [
- 'optionnum', 'serial', '', '', '', '',
- 'gatewaynum', 'int', '', '', '', '',
- 'optionname', 'varchar', '', $char_d, '', '',
- 'optionvalue', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'optionnum',
- 'unique' => [],
- 'index' => [ [ 'gatewaynum' ], [ 'optionname' ] ],
- },
-
- 'agent_payment_gateway' => {
- 'columns' => [
- 'agentgatewaynum', 'serial', '', '', '', '',
- 'agentnum', 'int', '', '', '', '',
- 'gatewaynum', 'int', '', '', '', '',
- 'cardtype', 'varchar', 'NULL', $char_d, '', '',
- 'taxclass', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'agentgatewaynum',
- 'unique' => [],
- 'index' => [ [ 'agentnum', 'cardtype' ], ],
- },
-
- 'banned_pay' => {
- 'columns' => [
- 'bannum', 'serial', '', '', '', '',
- 'payby', 'char', '', 4, '', '',
- 'payinfo', 'varchar', '', 128, '', '', #say, a 512-big digest _hex encoded
- #'paymask', 'varchar', 'NULL', $char_d, '', ''
- '_date', @date_type, '', '',
- 'otaker', 'varchar', '', 32, '', '',
- 'reason', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'bannum',
- 'unique' => [ [ 'payby', 'payinfo' ] ],
- 'index' => [],
- },
-
- 'cancel_reason' => {
- 'columns' => [
- 'reasonnum', 'serial', '', '', '', '',
- 'reason', 'varchar', '', $char_d, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'reasonnum',
- 'unique' => [],
- 'index' => [ [ 'disabled' ] ],
- },
-
- 'pkg_class' => {
- 'columns' => [
- 'classnum', 'serial', '', '', '', '',
- 'classname', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'classnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cdr' => {
- 'columns' => [
- # qw( name type null length default local );
-
- ###
- #asterisk fields
- ###
-
- 'acctid', 'bigserial', '', '', '', '',
- 'calldate', 'TIMESTAMP with time zone', '', '', \'now()', '',
- 'clid', 'varchar', '', $char_d, \"''", '',
- 'src', 'varchar', '', $char_d, \"''", '',
- 'dst', 'varchar', '', $char_d, \"''", '',
- 'dcontext', 'varchar', '', $char_d, \"''", '',
- 'channel', 'varchar', '', $char_d, \"''", '',
- 'dstchannel', 'varchar', '', $char_d, \"''", '',
- 'lastapp', 'varchar', '', $char_d, \"''", '',
- 'lastdata', 'varchar', '', $char_d, \"''", '',
-
- #these don't seem to be logged by most of the SQL cdr_* modules
- #except tds under sql-illegal names, so;
- # ... don't rely on them for rating?
- # and, what they hey, i went ahead and changed the names and data types
- # to freeside-style dates...
- #'start', 'timestamp', 'NULL', '', '', '',
- #'answer', 'timestamp', 'NULL', '', '', '',
- #'end', 'timestamp', 'NULL', '', '', '',
- 'startdate', @date_type, '', '',
- 'answerdate', @date_type, '', '',
- 'enddate', @date_type, '', '',
- #
-
- 'duration', 'int', '', '', 0, '',
- 'billsec', 'int', '', '', 0, '',
- 'disposition', 'varchar', '', 45, \"''", '',
- 'amaflags', 'int', '', '', 0, '',
- 'accountcode', 'varchar', '', 20, \"''", '',
- 'uniqueid', 'varchar', '', 32, \"''", '',
- 'userfield', 'varchar', '', 255, \"''", '',
-
- ###
- # fields for unitel/RSLCOM/convergent that don't map well to asterisk
- # defaults
- ###
-
- #cdr_type: Usage = 1, S&E = 7, OC&C = 8
- 'cdrtypenum', 'int', 'NULL', '', '', '',
-
- 'charged_party', 'varchar', 'NULL', $char_d, '', '',
-
- 'upstream_currency', 'char', 'NULL', 3, '', '',
- 'upstream_price', 'decimal', 'NULL', '10,2', '', '',
- 'upstream_rateplanid', 'int', 'NULL', '', '', '', #?
-
- # how it was rated internally...
- 'ratedetailnum', 'int', 'NULL', '', '', '',
- 'rated_price', 'decimal', 'NULL', '10,2', '', '',
-
- 'distance', 'decimal', 'NULL', '', '', '',
- 'islocal', 'int', 'NULL', '', '', '', # '', '', 0, '' instead?
-
- #cdr_calltype: the big list in appendix 2
- 'calltypenum', 'int', 'NULL', '', '', '',
-
- 'description', 'varchar', 'NULL', $char_d, '', '',
- 'quantity', 'int', 'NULL', '', '', '',
-
- #cdr_carrier: Telstra =1, Optus = 2, RSL COM = 3
- 'carrierid', 'int', 'NULL', '', '', '',
-
- 'upstream_rateid', 'int', 'NULL', '', '', '',
-
- ###
- #and now for our own fields
- ###
-
- # a svcnum... right..?
- 'svcnum', 'int', 'NULL', '', '', '',
-
- #NULL, done (or something)
- 'freesidestatus', 'varchar', 'NULL', 32, '', '',
-
- ],
- 'primary_key' => 'acctid',
- 'unique' => [],
- 'index' => [ [ 'calldate' ], [ 'dst' ], [ 'accountcode' ], [ 'freesidestatus' ] ],
- },
-
- 'cdr_calltype' => {
- 'columns' => [
- 'calltypenum', 'serial', '', '', '', '',
- 'calltypename', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'calltypenum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cdr_type' => {
- 'columns' => [
- 'cdrtypenum' => 'serial', '', '', '', '',
- 'cdrtypename' => 'varchar', '', '', '', '',
- ],
- 'primary_key' => 'cdrtypenum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'cdr_carrier' => {
- 'columns' => [
- 'carrierid' => 'serial', '', '', '', '',
- 'carriername' => 'varchar', '', '', '', '',
- ],
- 'primary_key' => 'carrierid',
- 'unique' => [],
- 'index' => [],
- },
-
- #map upstream rateid to ours...
- 'cdr_upstream_rate' => {
- 'columns' => [
- 'upstreamratenum', 'serial', '', '', '', '',
- 'upstream_rateid', 'varchar', '', $char_d, '', '',
- 'ratedetailnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'upstreamratenum', #XXX need a primary key
- 'unique' => [ [ 'upstream_rateid' ] ], #unless we add another field, yeah
- 'index' => [],
- },
-
- 'inventory_item' => {
- 'columns' => [
- 'itemnum', 'serial', '', '', '', '',
- 'classnum', 'int', '', '', '', '',
- 'item', 'varchar', '', $char_d, '', '',
- 'svcnum', 'int', 'NULL', '', '', '',
- ],
- 'primary_key' => 'itemnum',
- 'unique' => [ [ 'classnum', 'item' ] ],
- 'index' => [ [ 'classnum' ], [ 'svcnum' ] ],
- },
-
- 'inventory_class' => {
- 'columns' => [
- 'classnum', 'serial', '', '', '', '',
- 'classname', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'classnum',
- 'unique' => [],
- 'index' => [],
- },
-
- 'access_user' => {
- 'columns' => [
- 'usernum', 'serial', '', '', '', '',
- 'username', 'varchar', '', $char_d, '', '',
- '_password', 'varchar', '', $char_d, '', '',
- 'last', 'varchar', '', $char_d, '', '',
- 'first', 'varchar', '', $char_d, '', '',
- 'disabled', 'char', 'NULL', 1, '', '',
- ],
- 'primary_key' => 'usernum',
- 'unique' => [ [ 'username' ] ],
- 'index' => [],
- },
-
- 'access_user_pref' => {
- 'columns' => [
- 'prefnum', 'serial', '', '', '', '',
- 'usernum', 'int', '', '', '', '',
- 'prefname', 'varchar', '', $char_d, '', '',
- 'prefvalue', 'text', 'NULL', '', '', '',
- ],
- 'primary_key' => 'prefnum',
- 'unique' => [],
- 'index' => [ [ 'usernum' ] ],
- },
-
- 'access_group' => {
- 'columns' => [
- 'groupnum', 'serial', '', '', '', '',
- 'groupname', 'varchar', '', $char_d, '', '',
- ],
- 'primary_key' => 'groupnum',
- 'unique' => [ [ 'groupname' ] ],
- 'index' => [],
- },
-
- 'access_usergroup' => {
- 'columns' => [
- 'usergroupnum', 'serial', '', '', '', '',
- 'usernum', 'int', '', '', '', '',
- 'groupnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'usergroupnum',
- 'unique' => [ [ 'usernum', 'groupnum' ] ],
- 'index' => [ [ 'usernum' ] ],
- },
-
- 'access_groupagent' => {
- 'columns' => [
- 'groupagentnum', 'serial', '', '', '', '',
- 'groupnum', 'int', '', '', '', '',
- 'agentnum', 'int', '', '', '', '',
- ],
- 'primary_key' => 'groupagentnum',
- 'unique' => [ [ 'groupnum', 'agentnum' ] ],
- 'index' => [ [ 'groupnum' ] ],
- },
-
- 'access_right' => {
- 'columns' => [
- 'rightnum', 'serial', '', '', '', '',
- 'righttype', 'varchar', '', $char_d, '', '',
- 'rightobjnum', 'int', '', '', '', '',
- 'rightname', 'varchar', '', '', '', '',
- ],
- 'primary_key' => 'rightnum',
- 'unique' => [ [ 'righttype', 'rightobjnum', 'rightname' ] ],
- 'index' => [],
- },
-
- 'svc_phone' => {
- 'columns' => [
- 'svcnum', 'int', '', '', '', '',
- 'countrycode', 'varchar', '', 3, '', '',
- 'phonenum', 'varchar', '', 15, '', '', #12 ?
- 'pin', 'varchar', 'NULL', $char_d, '', '',
- ],
- 'primary_key' => 'svcnum',
- 'unique' => [],
- 'index' => [ [ 'countrycode', 'phonenum' ] ],
- },
-
- };
-
- #'new_table' => {
- # 'columns' => [
- # 'num', 'serial', '', '', '', '',
- # ],
- # 'primary_key' => 'num',
- # 'unique' => [],
- # 'index' => [],
- #},
-
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>
-
-=cut
-
-1;
-
diff --git a/FS/FS/SearchCache.pm b/FS/FS/SearchCache.pm
deleted file mode 100644
index 4218acf..0000000
--- a/FS/FS/SearchCache.pm
+++ /dev/null
@@ -1,96 +0,0 @@
-package FS::SearchCache;
-
-use strict;
-use vars qw($DEBUG);
-#use Carp qw(carp cluck croak confess);
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::SearchCache - cache
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my( $table, $key ) = @_;
- warn "table $table\n" if $DEBUG > 1;
- warn "key $key\n" if $DEBUG > 1;
- my $self = { 'table' => $table,
- 'key' => $key,
- 'cache' => {},
- 'subcache' => {},
- };
- bless ($self, $class);
-
- $self;
-}
-
-=item table
-
-=cut
-
-sub table { my $self = shift; $self->{table}; }
-
-=item key
-
-=cut
-
-sub key { my $self = shift; $self->{key}; }
-
-=item cache
-
-=cut
-
-sub cache { my $self = shift; $self->{cache}; }
-
-=item subcache
-
-=cut
-
-sub subcache {
- my $self = shift;
- my $col = shift;
- my $table = shift;
- my $keyval = shift;
- if ( exists $self->{subcache}->{$col}->{$keyval} ) {
- warn "returning existing subcache for $keyval ($col)".
- "$self->{subcache}->{$col}->{$keyval}\n" if $DEBUG;
- return $self->{subcache}->{$col}->{$keyval};
- } else {
- #my $tablekey = @_ ? shift : $col;
- my $tablekey = $col;
- my $subcache = ref($self)->new( $table, $tablekey );
- $self->{subcache}->{$col}->{$keyval} = $subcache;
- warn "creating new subcache $table $tablekey: $subcache\n" if $DEBUG;
- $subcache;
- }
-}
-
-=back
-
-=head1 BUGS
-
-Dismal documentation.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/Setup.pm b/FS/FS/Setup.pm
deleted file mode 100644
index 90f6f10..0000000
--- a/FS/FS/Setup.pm
+++ /dev/null
@@ -1,462 +0,0 @@
-package FS::Setup;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK );
-use Exporter;
-#use Tie::DxHash;
-use Tie::IxHash;
-use FS::UID qw( dbh );
-use FS::Record;
-
-use FS::svc_domain;
-$FS::svc_domain::whois_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( create_initial_data );
-
-=head1 NAME
-
-FS::Setup - Database setup
-
-=head1 SYNOPSIS
-
- use FS::Setup;
-
-=head1 DESCRIPTION
-
-Currently this module simply provides a place to store common subroutines for
-database setup.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item
-
-=cut
-
-sub create_initial_data {
- my %opt = @_;
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- $FS::UID::AutoCommit = 0;
-
- populate_locales();
-
- #initial_data data
- populate_initial_data(%opt);
-
- populate_access();
-
- populate_msgcat();
-
- if ( $oldAutoCommit ) {
- dbh->commit or die dbh->errstr;
- }
-
-}
-
-sub populate_locales {
-
- use Locale::Country;
- use Locale::SubCountry;
- use FS::cust_main_county;
-
- #cust_main_county
- foreach my $country ( sort map uc($_), all_country_codes ) {
-
- my $subcountry = eval { new Locale::SubCountry($country) };
- my @states = $subcountry ? $subcountry->all_codes : undef;
-
- if ( !scalar(@states) || ( scalar(@states)==1 && !defined($states[0]) ) ) {
-
- my $cust_main_county = new FS::cust_main_county({
- 'tax' => 0,
- 'country' => $country,
- });
- my $error = $cust_main_county->insert;
- die $error if $error;
-
- } else {
-
- if ( $states[0] =~ /^(\d+|\w)$/ ) {
- @states = map $subcountry->full_name($_), @states
- }
-
- foreach my $state ( @states ) {
-
- my $cust_main_county = new FS::cust_main_county({
- 'state' => $state,
- 'tax' => 0,
- 'country' => $country,
- });
- my $error = $cust_main_county->insert;
- die $error if $error;
-
- }
-
- }
- }
-
-}
-
-sub populate_initial_data {
- my %opt = @_;
-
- my $data = initial_data(%opt);
-
- foreach my $table ( keys %$data ) {
-
- my $class = "FS::$table";
- eval "use $class;";
- die $@ if $@;
-
- my @records = @{ $data->{$table} };
-
- foreach my $record ( @records ) {
- my $args = delete($record->{'_insert_args'}) || [];
- my $object = $class->new( $record );
- my $error = $object->insert( @$args );
- die "error inserting record into $table: $error\n"
- if $error;
- }
-
- }
-
-}
-
-sub initial_data {
- my %opt = @_;
-
- #tie my %hash, 'Tie::DxHash',
- tie my %hash, 'Tie::IxHash',
-
- #superuser group
- 'access_group' => [
- { 'groupname' => 'Superuser' },
- ],
-
- #billing events
- 'part_bill_event' => [
- { 'payby' => 'CARD',
- 'event' => 'Batch card',
- 'seconds' => 0,
- 'eventcode' => '$cust_bill->batch_card();',
- 'weight' => 40,
- 'plan' => 'batch-card',
- },
- { 'payby' => 'BILL',
- 'event' => 'Send invoice',
- 'seconds' => 0,
- 'eventcode' => '$cust_bill->send();',
- 'weight' => 50,
- 'plan' => 'send',
- },
- { 'payby' => 'DCRD',
- 'event' => 'Send invoice',
- 'seconds' => 0,
- 'eventcode' => '$cust_bill->send();',
- 'weight' => 50,
- 'plan' => 'send',
- },
- { 'payby' => 'DCHK',
- 'event' => 'Send invoice',
- 'seconds' => 0,
- 'eventcode' => '$cust_bill->send();',
- 'weight' => 50,
- 'plan' => 'send',
- },
- { 'payby' => 'DCLN',
- 'event' => 'Suspend',
- 'seconds' => 0,
- 'eventcode' => '$cust_bill->suspend();',
- 'weight' => 40,
- 'plan' => 'suspend',
- },
- ],
-
- #you must create a service definition. An example of a service definition
- #would be a dial-up account or a domain. First, it is necessary to create a
- #domain definition. Click on View/Edit service definitions and Add a new
- #service definition with Table svc_domain (and no modifiers).
- 'part_svc' => [
- { 'svc' => 'Domain',
- 'svcdb' => 'svc_domain',
- }
- ],
-
- #Now that you have created your first service, you must create a package
- #including this service which you can sell to customers. Zero, one, or many
- #services are bundled into a package. Click on View/Edit package
- #definitions and Add a new package definition which includes quantity 1 of
- #the svc_domain service you created above.
- 'part_pkg' => [
- { 'pkg' => 'System Domain',
- 'comment' => '(NOT FOR CUSTOMERS)',
- 'freq' => '0',
- 'plan' => 'flat',
- '_insert_args' => [
- 'pkg_svc' => { 1 => 1 }, # XXX
- 'primary_svc' => 1, #XXX
- 'options' => {
- 'setup_fee' => '0',
- 'recur_fee' => '0',
- },
- ],
- },
- ],
-
- #After you create your first package, then you must define who is able to
- #sell that package by creating an agent type. An example of an agent type
- #would be an internal sales representitive which sells regular and
- #promotional packages, as opposed to an external sales representitive
- #which would only sell regular packages of services. Click on View/Edit
- #agent types and Add a new agent type.
- 'agent_type' => [
- { 'atype' => 'internal' },
- ],
-
- #Allow this agent type to sell the package you created above.
- 'type_pkgs' => [
- { 'typenum' => 1, #XXX
- 'pkgpart' => 1, #XXX
- },
- ],
-
- #After creating a new agent type, you must create an agent. Click on
- #View/Edit agents and Add a new agent.
- 'agent' => [
- { 'agent' => 'Internal',
- 'typenum' => 1, # XXX
- },
- ],
-
- #Set up at least one Advertising source. Advertising sources will help you
- #keep track of how effective your advertising is, tracking where customers
- #heard of your service offerings. You must create at least one advertising
- #source. If you do not wish to use the referral functionality, simply
- #create a single advertising source only. Click on View/Edit advertising
- #sources and Add a new advertising source.
- 'part_referral' => [
- { 'referral' => 'Internal', },
- ],
-
- #Click on New Customer and create a new customer for your system accounts
- #with billing type Complimentary. Leave the First package dropdown set to
- #(none).
- 'cust_main' => [
- { 'agentnum' => 1, #XXX
- 'refnum' => 1, #XXX
- 'first' => 'System',
- 'last' => 'Accounts',
- 'address1' => '1234 System Lane',
- 'city' => 'Systemtown',
- 'state' => 'CA',
- 'zip' => '54321',
- 'country' => 'US',
- 'payby' => 'COMP',
- 'payinfo' => 'system', #or something
- 'paydate' => '1/2037',
- },
- ],
-
- #From the Customer View screen of the newly created customer, order the
- #package you defined above.
- 'cust_pkg' => [
- { 'custnum' => 1, #XXX
- 'pkgpart' => 1, #XXX
- },
- ],
-
- #From the Package View screen of the newly created package, choose
- #(Provision) to add the customer's service for this new package.
- #Add your own domain.
- 'svc_domain' => [
- { 'domain' => $opt{'domain'},
- 'pkgnum' => 1, #XXX
- 'svcpart' => 1, #XXX
- 'action' => 'N', #pseudo-field
- },
- ],
-
- #Go back to View/Edit service definitions on the main menu, and Add a new
- #service definition with Table svc_acct. Select your domain in the domsvc
- #Modifier. Set Fixed to define a service locked-in to this domain, or
- #Default to define a service which may select from among this domain and
- #the customer's domains.
-
- #not yet....
-
- #)
- ;
-
- \%hash;
-
-}
-
-sub populate_access {
-
- use FS::AccessRight;
- use FS::access_right;
-
- foreach my $rightname ( FS::AccessRight->rights ) {
- my $access_right = new FS::access_right {
- 'righttype' => 'FS::access_group',
- 'rightobjnum' => 1, #$supergroup->groupnum,
- 'rightname' => $rightname,
- };
- my $ar_error = $access_right->insert;
- die $ar_error if $ar_error;
- }
-
- #foreach my $agent ( qsearch('agent', {} ) ) {
- my $access_groupagent = new FS::access_groupagent {
- 'groupnum' => 1, #$supergroup->groupnum,
- 'agentnum' => 1, #$agent->agentnum,
- };
- my $aga_error = $access_groupagent->insert;
- die $aga_error if $aga_error;
- #}
-
-}
-
-sub populate_msgcat {
-
- use FS::Record qw(qsearch);
- use FS::msgcat;
-
- foreach my $del_msgcat ( qsearch('msgcat', {}) ) {
- my $error = $del_msgcat->delete;
- die $error if $error;
- }
-
- my %messages = msgcat_messages();
-
- foreach my $msgcode ( keys %messages ) {
- foreach my $locale ( keys %{$messages{$msgcode}} ) {
- my $msgcat = new FS::msgcat( {
- 'msgcode' => $msgcode,
- 'locale' => $locale,
- 'msg' => $messages{$msgcode}{$locale},
- });
- my $error = $msgcat->insert;
- die $error if $error;
- }
- }
-
-}
-
-sub msgcat_messages {
-
- # 'msgcode' => {
- # 'en_US' => 'Message',
- # },
-
- (
-
- 'passwords_dont_match' => {
- 'en_US' => "Passwords don't match",
- },
-
- 'invalid_card' => {
- 'en_US' => 'Invalid credit card number',
- },
-
- 'unknown_card_type' => {
- 'en_US' => 'Unknown card type',
- },
-
- 'not_a' => {
- 'en_US' => 'Not a ',
- },
-
- 'empty_password' => {
- 'en_US' => 'Empty password',
- },
-
- 'no_access_number_selected' => {
- 'en_US' => 'No access number selected',
- },
-
- 'illegal_text' => {
- 'en_US' => 'Illegal (text)',
- #'en_US' => 'Only letters, numbers, spaces, and the following punctuation symbols are permitted: ! @ # $ % & ( ) - + ; : \' " , . ? / in field',
- },
-
- 'illegal_or_empty_text' => {
- 'en_US' => 'Illegal or empty (text)',
- #'en_US' => 'Only letters, numbers, spaces, and the following punctuation symbols are permitted: ! @ # $ % & ( ) - + ; : \' " , . ? / in required field',
- },
-
- 'illegal_username' => {
- 'en_US' => 'Illegal username',
- },
-
- 'illegal_password' => {
- 'en_US' => 'Illegal password (',
- },
-
- 'illegal_password_characters' => {
- 'en_US' => ' characters)',
- },
-
- 'username_in_use' => {
- 'en_US' => 'Username in use',
- },
-
- 'illegal_email_invoice_address' => {
- 'en_US' => 'Illegal email invoice address',
- },
-
- 'illegal_name' => {
- 'en_US' => 'Illegal (name)',
- #'en_US' => 'Only letters, numbers, spaces and the following punctuation symbols are permitted: , . - \' in field',
- },
-
- 'illegal_phone' => {
- 'en_US' => 'Illegal (phone)',
- #'en_US' => '',
- },
-
- 'illegal_zip' => {
- 'en_US' => 'Illegal (zip)',
- #'en_US' => '',
- },
-
- 'expired_card' => {
- 'en_US' => 'Expired card',
- },
-
- 'daytime' => {
- 'en_US' => 'Day Phone',
- },
-
- 'night' => {
- 'en_US' => 'Night Phone',
- },
-
- 'svc_external-id' => {
- 'en_US' => 'External ID',
- },
-
- 'svc_external-title' => {
- 'en_US' => 'Title',
- },
-
- );
-}
-
-=back
-
-=head1 BUGS
-
-Sure.
-
-=head1 SEE ALSO
-
-=cut
-
-1;
-
diff --git a/FS/FS/TicketSystem.pm b/FS/FS/TicketSystem.pm
deleted file mode 100644
index a80a827..0000000
--- a/FS/FS/TicketSystem.pm
+++ /dev/null
@@ -1,30 +0,0 @@
-package FS::TicketSystem;
-
-use strict;
-use vars qw( $conf $system $AUTOLOAD );
-use FS::Conf;
-use FS::UID;
-
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
- $system = $conf->config('ticket_system');
-} );
-
-sub AUTOLOAD {
- my $self = shift;
-
- my($sub)=$AUTOLOAD;
- $sub =~ s/.*://;
-
- my $conf = new FS::Conf;
- die "FS::TicketSystem::$AUTOLOAD called, but no ticket system configured\n"
- unless $system;
-
- eval "use FS::TicketSystem::$system;";
- die $@ if $@;
-
- $self .= "::$system";
- $self->$sub(@_);
-}
-
-1;
diff --git a/FS/FS/TicketSystem/RT_External.pm b/FS/FS/TicketSystem/RT_External.pm
deleted file mode 100644
index 7dde862..0000000
--- a/FS/FS/TicketSystem/RT_External.pm
+++ /dev/null
@@ -1,264 +0,0 @@
-package FS::TicketSystem::RT_External;
-
-use strict;
-use vars qw( $conf $default_queueid
- $priority_field $priority_field_queue $field
- $dbh $external_url );
-use URI::Escape;
-use FS::UID qw(dbh);
-use FS::Record qw(qsearchs);
-use FS::cust_main;
-
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
- $default_queueid = $conf->config('ticket_system-default_queueid');
- $priority_field =
- $conf->config('ticket_system-custom_priority_field');
- if ( $priority_field ) {
- $priority_field_queue =
- $conf->config('ticket_system-custom_priority_field_queue');
- $field = $priority_field_queue
- ? $priority_field_queue. '.%7B'. $priority_field. '%7D'
- : $priority_field;
- } else {
- $priority_field_queue = '';
- $field = '';
- }
-
- $external_url = '';
- $dbh = dbh;
- if ($conf->config('ticket_system') eq 'RT_External') {
- my ($datasrc, $user, $pass) = $conf->config('ticket_system-rt_external_datasrc');
- $dbh = DBI->connect($datasrc, $user, $pass, { 'ChopBlanks' => 1 })
- or die "RT_External DBI->connect error: $DBI::errstr\n";
-
- $external_url = $conf->config('ticket_system-rt_external_url');
- }
-
-} );
-
-sub num_customer_tickets {
- my( $self, $custnum, $priority ) = @_;
-
- my( $from_sql, @param) = $self->_from_customer( $custnum, $priority );
-
- my $sql = "SELECT COUNT(*) $from_sql";
- my $sth = $dbh->prepare($sql) or die $dbh->errstr. " preparing $sql";
- $sth->execute(@param) or die $sth->errstr. " executing $sql";
-
- $sth->fetchrow_arrayref->[0];
-
-}
-
-sub customer_tickets {
- my( $self, $custnum, $limit, $priority ) = @_;
- $limit ||= 0;
-
- my( $from_sql, @param) = $self->_from_customer( $custnum, $priority );
- my $sql = "SELECT tickets.*, queues.name".
- ( length($priority) ? ", objectcustomfieldvalues.content" : '' ).
- " $from_sql ORDER BY priority, id DESC LIMIT $limit";
- my $sth = $dbh->prepare($sql) or die $dbh->errstr. "preparing $sql";
- $sth->execute(@param) or die $sth->errstr. "executing $sql";
-
- #munge column names??? #httemplate/view/cust_main/tickets.html has column
- #names that might not make sense now...
- $sth->fetchall_arrayref({});
-
-}
-
-sub _from_customer {
- my( $self, $custnum, $priority ) = @_;
-
- my @param = ();
- my $join = '';
- my $where = '';
- if ( defined($priority) ) {
-
- my $queue_sql = " ObjectCustomFields.ObjectId = ( SELECT id FROM queues
- WHERE queues.name = ? )
- OR ( ? = '' AND ObjectCustomFields.ObjectId = 0 )";
-
- my $customfield_sql =
- "customfield = (
- SELECT CustomFields.Id FROM CustomFields
- JOIN ObjectCustomFields
- ON ( CustomFields.id = ObjectCustomFields.CustomField )
- WHERE LookupType = 'RT::Queue-RT::Ticket'
- AND name = ?
- AND ( $queue_sql )
- )";
-
- push @param, $priority_field,
- $priority_field_queue,
- $priority_field_queue;
-
- if ( length($priority) ) {
- #$where = "
- # and ? = ( select content from TicketCustomFieldValues
- # where ticket = tickets.id
- # and customfield = ( select id from customfields
- # where name = ?
- # and ( $queue_sql )
- # )
- # )
- #";
- unshift @param, $priority;
-
- $join = "JOIN ObjectCustomFieldValues
- ON ( tickets.id = ObjectCustomFieldValues.ObjectId )";
-
- $where = " AND content = ?
- AND ObjectCustomFieldValues.disabled != 1
- AND ObjectType = 'RT::Ticket'
- AND $customfield_sql";
-
- } else {
-
- $where =
- "AND 0 = ( SELECT count(*) FROM ObjectCustomFieldValues
- WHERE ObjectId = tickets.id
- AND ObjectType = 'RT::Ticket'
- AND $customfield_sql
- )
- ";
- }
-
- }
-
- my $sql = "
- FROM tickets
- JOIN queues ON ( tickets.queue = queues.id )
- JOIN links ON ( tickets.id = links.localbase )
- $join
- WHERE ( ". join(' OR ', map "status = '$_'", $self->statuses ). " )
- AND target = 'freeside://freeside/cust_main/$custnum'
- $where
- ";
-
- ( $sql, @param );
-
-}
-
-sub statuses {
- #my $self = shift;
- my @statuses = grep { ! /^\s*$/ } $conf->config('cust_main-ticket_statuses');
- @statuses = (qw( new open stalled )) unless scalar(@statuses);
- @statuses;
-}
-
-sub href_customer_tickets {
- my( $self, $custnum, $priority ) = @_;
-
- #my $href = $self->baseurl;
-
- #i snarfed this from an RT bookmarked search, then unescaped (some of) it with
- #perl -npe 's/%([0-9A-F]{2})/pack('C', hex($1))/eg;'
-
- my $href .=
- "Search/Results.html?Order=ASC&".
- "Query= MemberOf = 'freeside://freeside/cust_main/$custnum' ".
- #" AND ( Status = 'open' OR Status = 'new' OR Status = 'stalled' )"
- " AND ( ". join(' OR ', map "Status = '$_'", $self->statuses ). " ) "
- ;
-
- if ( defined($priority) && $field && $priority_field_queue ) {
- $href .= " AND Queue = '$priority_field_queue' ";
- }
- if ( defined($priority) && $field ) {
- $href .= " AND 'CF.$field' ";
- if ( $priority ) {
- $href .= "= '$priority' ";
- } else {
- $href .= "IS 'NULL' "; #this is "RTQL", not SQL
- }
- }
-
- #$href =
- uri_escape($href);
- #eventually should unescape all of it...
-
- $href .= '&Rows=100'.
- '&OrderBy=id&Page=1'.
- '&Format=%27%20%20%20%3Cb%3E%3Ca%20href%3D%22'.
- $self->baseurl.
- 'Ticket%2FDisplay.html%3Fid%3D__id__%22%3E__id__%3C%2Fa%3E%3C%2Fb%3E%2FTITLE%3A%23%27%2C%20%0A%27%3Cb%3E%3Ca%20href%3D%22'.
- $self->baseurl.
- 'Ticket%2FDisplay.html%3Fid%3D__id__%22%3E__Subject__%3C%2Fa%3E%3C%2Fb%3E%2FTITLE%3ASubject%27%2C%20%0A%27__Status__%27%2C%20';
-
- if ( defined($priority) && $field ) {
- $href .= '%0A%27__CustomField.'. $field. '__%2FTITLE%3ASeverity%27%2C%20';
- }
-
- $href .= '%0A%27__QueueName__%27%2C%20%0A%27__OwnerName__%27%2C%20%0A%27__Priority__%27%2C%20%0A%27__NEWLINE__%27%2C%20%0A%27%27%2C%20%0A%27%3Csmall%3E__Requestors__%3C%2Fsmall%3E%27%2C%20%0A%27%3Csmall%3E__CreatedRelative__%3C%2Fsmall%3E%27%2C';
-
- if ( defined($priority) && $field ) {
- $href .= '%20%0A%27__-__%27%2C';
- }
-
- $href .= '%20%0A%27%3Csmall%3E__ToldRelative__%3C%2Fsmall%3E%27%2C%20%0A%27%3Csmall%3E__LastUpdatedRelative__%3C%2Fsmall%3E%27%2C%20%0A%27%3Csmall%3E__TimeLeft__%3C%2Fsmall%3E%27';
-
- #$href =
- #uri_escape($href);
-
- $self->baseurl. $href;
-
-}
-
-sub href_new_ticket {
- my( $self, $custnum_or_cust_main, $requestors ) = @_;
-
- my( $custnum, $cust_main );
- if ( ref($custnum_or_cust_main) ) {
- $cust_main = $custnum_or_cust_main;
- $custnum = $cust_main->custnum;
- } else {
- $custnum = $custnum_or_cust_main;
- $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } );
- }
- my $queueid = $cust_main->agent->ticketing_queueid || $default_queueid;
-
- $self->baseurl.
- 'Ticket/Create.html?'.
- "Queue=$queueid".
- "&new-MemberOf=freeside://freeside/cust_main/$custnum".
- ( $requestors ? '&Requestors='. uri_escape($requestors) : '' )
- ;
-}
-
-sub href_ticket {
- my($self, $ticketnum) = @_;
- $self->baseurl. 'Ticket/Display.html?id='.$ticketnum;
-}
-
-sub queues {
- my($self) = @_;
-
- my $sql = "SELECT id, name FROM queues WHERE disabled = 0";
- my $sth = $dbh->prepare($sql) or die $dbh->errstr. " preparing $sql";
- $sth->execute() or die $sth->errstr. " executing $sql";
-
- map { $_->[0] => $_->[1] } @{ $sth->fetchall_arrayref([]) };
-
-}
-
-sub queue {
- my($self, $queueid) = @_;
-
- return '' unless $queueid;
-
- my $sql = "SELECT name FROM queues WHERE id = ?";
- my $sth = $dbh->prepare($sql) or die $dbh->errstr. " preparing $sql";
- $sth->execute($queueid) or die $sth->errstr. " executing $sql";
-
- $sth->fetchrow_arrayref->[0];
-
-}
-
-sub baseurl {
- #my $self = shift;
- $external_url;
-}
-
-1;
-
diff --git a/FS/FS/TicketSystem/RT_Internal.pm b/FS/FS/TicketSystem/RT_Internal.pm
deleted file mode 100644
index 8fce918..0000000
--- a/FS/FS/TicketSystem/RT_Internal.pm
+++ /dev/null
@@ -1,29 +0,0 @@
-package FS::TicketSystem::RT_Internal;
-
-use strict;
-use vars qw( @ISA );
-use FS::UID qw(dbh);
-use FS::CGI qw(popurl);
-use FS::TicketSystem::RT_Libs;
-
-@ISA = qw( FS::TicketSystem::RT_Libs );
-
-sub sql_num_customer_tickets {
- "( select count(*) from tickets
- join links on ( tickets.id = links.localbase )
- where ( status = 'new' or status = 'open' or status = 'stalled' )
- and target = 'freeside://freeside/cust_main/' || custnum
- )";
-}
-
-sub baseurl {
- #my $self = shift;
- if ( $RT::URI::freeside::URL ) {
- $RT::URI::freeside::URL. 'rt/';
- } else {
- 'http://you_need_to_set_RT_URI_freeside_URL_in_SiteConfig.pm/';
- }
-}
-
-1;
-
diff --git a/FS/FS/TicketSystem/RT_Libs.pm b/FS/FS/TicketSystem/RT_Libs.pm
deleted file mode 100644
index aebe8c5..0000000
--- a/FS/FS/TicketSystem/RT_Libs.pm
+++ /dev/null
@@ -1,10 +0,0 @@
-package FS::TicketSystem::RT_Libs;
-
-use strict;
-use vars qw( @ISA );
-use FS::TicketSystem::RT_External;
-
-@ISA = qw( FS::TicketSystem::RT_External );
-
-1;
-
diff --git a/FS/FS/UI/Web.pm b/FS/FS/UI/Web.pm
deleted file mode 100644
index 080ac6e..0000000
--- a/FS/FS/UI/Web.pm
+++ /dev/null
@@ -1,326 +0,0 @@
-package FS::UI::Web;
-
-use vars qw($DEBUG);
-use FS::Conf;
-use FS::Record qw(dbdef);
-
-#use vars qw(@ISA);
-#use FS::UI
-#@ISA = qw( FS::UI );
-
-$DEBUG = 0;
-
-use Date::Parse;
-sub parse_beginning_ending {
- my($cgi) = @_;
-
- my $beginning = 0;
- if ( $cgi->param('begin') =~ /^(\d+)$/ ) {
- $beginning = $1;
- } elsif ( $cgi->param('beginning') =~ /^([ 0-9\-\/]{1,64})$/ ) {
- $beginning = str2time($1) || 0;
- }
-
- my $ending = 4294967295; #2^32-1
- if ( $cgi->param('end') =~ /^(\d+)$/ ) {
- $ending = $1 - 1;
- } elsif ( $cgi->param('ending') =~ /^([ 0-9\-\/]{1,64})$/ ) {
- #probably need an option to turn off the + 86399
- $ending = str2time($1) + 86399;
- }
-
- ( $beginning, $ending );
-}
-
-###
-# cust_main report subroutines
-###
-
-
-=item cust_header [ CUST_FIELDS_VALUE ]
-
-Returns an array of customer information headers according to the supplied
-customer fields value, or if no value is supplied, the B<cust-fields>
-configuration value.
-
-=cut
-
-use vars qw( @cust_fields );
-
-sub cust_header {
-
- warn "FS::svc_Common::cust_header called"
- if $DEBUG;
-
- my %header2method = (
- 'Customer' => 'name',
- 'Cust#' => 'custnum',
- 'Name' => 'contact',
- 'Company' => 'company',
- '(bill) Customer' => 'name',
- '(service) Customer' => 'ship_name',
- '(bill) Name' => 'contact',
- '(service) Name' => 'ship_contact',
- '(bill) Company' => 'company',
- '(service) Company' => 'ship_company',
- 'Address 1' => 'address1',
- 'Address 2' => 'address2',
- 'City' => 'city',
- 'State' => 'state',
- 'Zip' => 'zip',
- 'Country' => 'country_full',
- 'Day phone' => 'daytime', # XXX should use msgcat, but how?
- 'Night phone' => 'night', # XXX should use msgcat, but how?
- 'Invoicing email(s)' => 'invoicing_list_emailonly',
- );
-
- my $cust_fields;
- my @cust_header;
- if ( @_ && $_[0] ) {
-
- warn " using supplied cust-fields override".
- " (ignoring cust-fields config file)"
- if $DEBUG;
- $cust_fields = shift;
-
- } else {
-
- my $conf = new FS::Conf;
- if ( $conf->exists('cust-fields')
- && $conf->config('cust-fields') =~ /^([\w \|\#\(\)]+):?/
- )
- {
- warn " found cust-fields configuration value"
- if $DEBUG;
- $cust_fields = $1;
- } else {
- warn " no cust-fields configuration value found; using default 'Customer'"
- if $DEBUG;
- $cust_fields = 'Customer';
- }
-
- }
-
- @cust_header = split(/ \| /, $cust_fields);
- @cust_fields = map { $header2method{$_} } @cust_header;
-
- #my $svc_x = shift;
- @cust_header;
-}
-
-=item cust_sql_fields [ CUST_FIELDS_VALUE ]
-
-Returns a list of fields for the SELECT portion of an SQL query.
-
-As with L<the cust_header subroutine|/cust_header>, the fields returned are
-defined by the supplied customer fields setting, or if no customer fields
-setting is supplied, the <B>cust-fields</B> configuration value.
-
-=cut
-
-sub cust_sql_fields {
-
- my @fields = qw( last first company );
- push @fields, map "ship_$_", @fields;
- push @fields, 'country';
-
- cust_header(@_);
- #inefficientish, but tiny lists and only run once per page
- push @fields,
- grep { my $field = $_; grep { $_ eq $field } @cust_fields }
- qw( address1 address2 city state zip daytime night );
-
- map "cust_main.$_", @fields;
-}
-
-=item cust_fields SVC_OBJECT [ CUST_FIELDS_VALUE ]
-
-Given a svc_ object that contains fields from cust_main (say, from a
-JOINed search. See httemplate/search/svc_* for examples), returns an array
-of customer information, or "(unlinked)" if this service is not linked to a
-customer.
-
-As with L<the cust_header subroutine|/cust_header>, the fields returned are
-defined by the supplied customer fields setting, or if no customer fields
-setting is supplied, the <B>cust-fields</B> configuration value.
-
-=cut
-
-sub cust_fields {
- my $svc_x = shift;
- warn "FS::svc_Common::cust_fields called for $svc_x ".
- "(cust_fields: @cust_fields)"
- if $DEBUG > 1;
-
- #cust_header(@_) unless @cust_fields; #now need to cache to keep cust_fields
- # #override incase we were passed as a sub
-
- my $seen_unlinked = 0;
- map {
- if ( $svc_x->custnum ) {
- warn " $svc_x -> $_"
- if $DEBUG > 1;
- $svc_x->$_(@_);
- } else {
- warn " ($svc_x unlinked)"
- if $DEBUG > 1;
- $seen_unlinked++ ? '' : '(unlinked)';
- }
- } @cust_fields;
-}
-
-###
-# begin JSRPC code...
-###
-
-package FS::UI::Web::JSRPC;
-
-use strict;
-use vars qw($DEBUG);
-use Carp;
-use Storable qw(nfreeze);
-use MIME::Base64;
-use JSON;
-use FS::UID;
-use FS::Record qw(qsearchs);
-use FS::queue;
-
-$DEBUG = 0;
-
-sub new {
- my $class = shift;
- my $self = {
- env => {},
- job => shift,
- cgi => shift,
- };
-
- bless $self, $class;
-
- croak "CGI object required as second argument" unless $self->{'cgi'};
-
- return $self;
-}
-
-sub process {
-
- my $self = shift;
-
- my $cgi = $self->{'cgi'};
-
- # XXX this should parse JSON foo and build a proper data structure
- my @args = $cgi->param('arg');
-
- #work around konqueror bug!
- @args = map { s/\x00$//; $_; } @args;
-
- my $sub = $cgi->param('sub'); #????
-
- warn "FS::UI::Web::JSRPC::process:\n".
- " cgi=$cgi\n".
- " sub=$sub\n".
- " args=".join(', ',@args)."\n"
- if $DEBUG;
-
- if ( $sub eq 'start_job' ) {
-
- $self->start_job(@args);
-
- } elsif ( $sub eq 'job_status' ) {
-
- $self->job_status(@args);
-
- } else {
-
- die "unknown sub $sub";
-
- }
-
-}
-
-sub start_job {
- my $self = shift;
-
- warn "FS::UI::Web::start_job: ". join(', ', @_) if $DEBUG;
-# my %param = @_;
- my %param = ();
- while ( @_ ) {
- my( $field, $value ) = splice(@_, 0, 2);
- unless ( exists( $param{$field} ) ) {
- $param{$field} = $value;
- } elsif ( ! ref($param{$field}) ) {
- $param{$field} = [ $param{$field}, $value ];
- } else {
- push @{$param{$field}}, $value;
- }
- }
- warn "FS::UI::Web::start_job\n".
- join('', map {
- if ( ref($param{$_}) ) {
- " $_ => [ ". join(', ', @{$param{$_}}). " ]\n";
- } else {
- " $_ => $param{$_}\n";
- }
- } keys %param )
- if $DEBUG;
-
- #first get the CGI params shipped off to a job ASAP so an id can be returned
- #to the caller
-
- my $job = new FS::queue { 'job' => $self->{'job'} };
-
- #too slow to insert all the cgi params as individual args..,?
- #my $error = $queue->insert('_JOB', $cgi->Vars);
-
- #warn 'froze string of size '. length(nfreeze(\%param)). " for job args\n"
- # if $DEBUG;
-
- my $error = $job->insert( '_JOB', encode_base64(nfreeze(\%param)) );
-
- if ( $error ) {
-
- warn "job not inserted: $error\n"
- if $DEBUG;
-
- $error; #this doesn't seem to be handled well,
- # will trigger "illegal jobnum" below?
- # (should never be an error inserting the job, though, only thing
- # would be Pg f%*kage)
- } else {
-
- warn "job inserted successfully with jobnum ". $job->jobnum. "\n"
- if $DEBUG;
-
- $job->jobnum;
- }
-
-}
-
-sub job_status {
- my( $self, $jobnum ) = @_; #$url ???
-
- sleep 1; # XXX could use something better...
-
- my $job;
- if ( $jobnum =~ /^(\d+)$/ ) {
- $job = qsearchs('queue', { 'jobnum' => $jobnum } );
- } else {
- die "FS::UI::Web::job_status: illegal jobnum $jobnum\n";
- }
-
- my @return;
- if ( $job && $job->status ne 'failed' ) {
- @return = ( 'progress', $job->statustext );
- } elsif ( !$job ) { #handle job gone case : job successful
- # so close popup, redirect parent window...
- @return = ( 'complete' );
- } else {
- @return = ( 'error', $job ? $job->statustext : $jobnum );
- }
-
- objToJson(\@return);
-
-}
-
-1;
-
diff --git a/FS/FS/UID.pm b/FS/FS/UID.pm
deleted file mode 100644
index eb703d3..0000000
--- a/FS/FS/UID.pm
+++ /dev/null
@@ -1,346 +0,0 @@
-package FS::UID;
-
-use strict;
-use vars qw(
- @ISA @EXPORT_OK $cgi $dbh $freeside_uid $user
- $conf_dir $secrets $datasrc $db_user $db_pass %callback @callback
- $driver_name $AutoCommit
-);
-use subs qw(
- getsecrets cgisetotaker
-);
-use Exporter;
-use Carp qw(carp croak cluck confess);
-use DBI;
-use FS::Conf;
-use FS::CurrentUser;
-
-@ISA = qw(Exporter);
-@EXPORT_OK = qw(checkeuid checkruid cgisuidsetup adminsuidsetup forksuidsetup
- getotaker dbh datasrc getsecrets driver_name myconnect );
-
-$freeside_uid = scalar(getpwnam('freeside'));
-
-$conf_dir = "/usr/local/etc/freeside/";
-
-$AutoCommit = 1; #ours, not DBI
-
-=head1 NAME
-
-FS::UID - Subroutines for database login and assorted other stuff
-
-=head1 SYNOPSIS
-
- use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker
- checkeuid checkruid);
-
- adminsuidsetup $user;
-
- $cgi = new CGI;
- $dbh = cgisuidsetup($cgi);
-
- $dbh = dbh;
-
- $datasrc = datasrc;
-
- $driver_name = driver_name;
-
-=head1 DESCRIPTION
-
-Provides a hodgepodge of subroutines.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item adminsuidsetup USER
-
-Sets the user to USER (see config.html from the base documentation).
-Cleans the environment.
-Make sure the script is running as freeside, or setuid freeside.
-Opens a connection to the database.
-Swaps real and effective UIDs.
-Runs any defined callbacks (see below).
-Returns the DBI database handle (usually you don't need this).
-
-=cut
-
-sub adminsuidsetup {
- $dbh->disconnect if $dbh;
- &forksuidsetup(@_);
-}
-
-sub forksuidsetup {
- $user = shift;
- my $olduser = $user;
-
- if ( $FS::CurrentUser::upgrade_hack ) {
- $user = 'fs_bootstrap';
- } else {
- croak "fatal: adminsuidsetup called without arguements" unless $user;
-
- $user =~ /^([\w\-\.]+)$/ or croak "fatal: illegal user $user";
- $user = $1;
- }
-
- $ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
- $ENV{'SHELL'} = '/bin/sh';
- $ENV{'IFS'} = " \t\n";
- $ENV{'CDPATH'} = '';
- $ENV{'ENV'} = '';
- $ENV{'BASH_ENV'} = '';
-
- croak "Not running uid freeside!" unless checkeuid();
-
- if ( $FS::CurrentUser::upgrade_hack && $olduser ) {
- $dbh = &myconnect($olduser);
- } else {
- $dbh = &myconnect();
- }
-
- use FS::Schema qw(reload_dbdef);
- reload_dbdef("/usr/local/etc/freeside/dbdef.$datasrc")
- unless $FS::Schema::setup_hack;
-
- FS::CurrentUser->load_user($user);
-
- foreach ( keys %callback ) {
- &{$callback{$_}};
- # breaks multi-database installs # delete $callback{$_}; #run once
- }
-
- &{$_} foreach @callback;
-
- $dbh;
-}
-
-sub myconnect {
- DBI->connect( getsecrets(@_), { 'AutoCommit' => 0,
- 'ChopBlanks' => 1,
- 'ShowErrorStatement' => 1,
- }
- )
- or die "DBI->connect error: $DBI::errstr\n";
-}
-
-=item install_callback
-
-A package can install a callback to be run in adminsuidsetup by passing
-a coderef to the FS::UID->install_callback class method. If adminsuidsetup has
-run already, the callback will also be run immediately.
-
- $coderef = sub { warn "Hi, I'm returning your call!" };
- FS::UID->install_callback($coderef);
-
- install_callback FS::UID sub {
- warn "Hi, I'm returning your call!"
- };
-
-=cut
-
-sub install_callback {
- my $class = shift;
- my $callback = shift;
- push @callback, $callback;
- &{$callback} if $dbh;
-}
-
-=item cgisuidsetup CGI_object
-
-Takes a single argument, which is a CGI (see L<CGI>) or Apache (see L<Apache>)
-object (CGI::Base is depriciated). Runs cgisetotaker and then adminsuidsetup.
-
-=cut
-
-sub cgisuidsetup {
- $cgi=shift;
- if ( $cgi->isa('CGI::Base') ) {
- carp "Use of CGI::Base is depriciated";
- } elsif ( $cgi->isa('Apache') ) {
-
- } elsif ( ! $cgi->isa('CGI') ) {
- croak "fatal: unrecognized object $cgi";
- }
- cgisetotaker;
- adminsuidsetup($user);
-}
-
-=item cgi
-
-Returns the CGI (see L<CGI>) object.
-
-=cut
-
-sub cgi {
- carp "warning: \$FS::UID::cgi isa Apache" if $cgi->isa('Apache');
- $cgi;
-}
-
-=item dbh
-
-Returns the DBI database handle.
-
-=cut
-
-sub dbh {
- $dbh;
-}
-
-=item datasrc
-
-Returns the DBI data source.
-
-=cut
-
-sub datasrc {
- $datasrc;
-}
-
-=item driver_name
-
-Returns just the driver name portion of the DBI data source.
-
-=cut
-
-sub driver_name {
- return $driver_name if defined $driver_name;
- $driver_name = ( split(':', $datasrc) )[1];
-}
-
-sub suidsetup {
- croak "suidsetup depriciated";
-}
-
-=item getotaker
-
-Returns the current Freeside user.
-
-=cut
-
-sub getotaker {
- $user;
-}
-
-=item cgisetotaker
-
-Sets and returns the CGI REMOTE_USER. $cgi should be defined as a CGI.pm
-object (see L<CGI>) or an Apache object (see L<Apache>). Support for CGI::Base
-and derived classes is depriciated.
-
-=cut
-
-sub cgisetotaker {
- if ( $cgi && $cgi->isa('CGI::Base') && defined $cgi->var('REMOTE_USER')) {
- carp "Use of CGI::Base is depriciated";
- $user = lc ( $cgi->var('REMOTE_USER') );
- } elsif ( $cgi && $cgi->isa('CGI') && defined $cgi->remote_user ) {
- $user = lc ( $cgi->remote_user );
- } elsif ( $cgi && $cgi->isa('Apache') ) {
- $user = lc ( $cgi->connection->user );
- } else {
- die "fatal: Can't get REMOTE_USER! for cgi $cgi - you need to setup ".
- "Apache user authentication as documented in httemplate/docs/install.html";
- }
- $user;
-}
-
-=item checkeuid
-
-Returns true if effective UID is that of the freeside user.
-
-=cut
-
-sub checkeuid {
- ( $> == $freeside_uid );
-}
-
-=item checkruid
-
-Returns true if the real UID is that of the freeside user.
-
-=cut
-
-sub checkruid {
- ( $< == $freeside_uid );
-}
-
-=item getsecrets [ USER ]
-
-Sets the user to USER, if supplied.
-Sets and returns the DBI datasource, username and password for this user from
-the `/usr/local/etc/freeside/mapsecrets' file.
-
-=cut
-
-sub getsecrets {
- my($setuser) = shift;
- $user = $setuser if $setuser;
- my($conf) = new FS::Conf $conf_dir;
-
- if ( $conf->exists('mapsecrets') ) {
- die "No user!" unless $user;
- my($line) = grep /^\s*($user|\*)\s/, $conf->config('mapsecrets');
- confess "User $user not found in mapsecrets!" unless $line;
- $line =~ /^\s*($user|\*)\s+(.*)$/;
- $secrets = $2;
- die "Illegal mapsecrets line for user?!" unless $secrets;
- } else {
- # no mapsecrets file at all, so do the default thing
- $secrets = 'secrets';
- }
-
- ($datasrc, $db_user, $db_pass) = $conf->config($secrets)
- or die "Can't get secrets: $secrets: $!\n";
- $FS::Conf::default_dir = $conf_dir. "/conf.$datasrc";
- undef $driver_name;
- ($datasrc, $db_user, $db_pass);
-}
-
-=back
-
-=head1 CALLBACKS
-
-Warning: this interface is (still) likely to change in future releases.
-
-New (experimental) callback interface:
-
-A package can install a callback to be run in adminsuidsetup by passing
-a coderef to the FS::UID->install_callback class method. If adminsuidsetup has
-run already, the callback will also be run immediately.
-
- $coderef = sub { warn "Hi, I'm returning your call!" };
- FS::UID->install_callback($coderef);
-
- install_callback FS::UID sub {
- warn "Hi, I'm returning your call!"
- };
-
-Old (deprecated) callback interface:
-
-A package can install a callback to be run in adminsuidsetup by putting a
-coderef into the hash %FS::UID::callback :
-
- $coderef = sub { warn "Hi, I'm returning your call!" };
- $FS::UID::callback{'Package::Name'} = $coderef;
-
-=head1 BUGS
-
-Too many package-global variables.
-
-Not OO.
-
-No capabilities yet. When mod_perl and Authen::DBI are implemented,
-cgisuidsetup will go away as well.
-
-Goes through contortions to support non-OO syntax with multiple datasrc's.
-
-Callbacks are (still) inelegant.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<CGI>, L<DBI>, config.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/XMLRPC.pm b/FS/FS/XMLRPC.pm
deleted file mode 100644
index 84f3e41..0000000
--- a/FS/FS/XMLRPC.pm
+++ /dev/null
@@ -1,165 +0,0 @@
-package FS::XMLRPC;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use Frontier::RPC2;
-
-# Instead of 'use'ing freeside modules on the fly below, just preload them now.
-use FS;
-use FS::CGI;
-use FS::Conf;
-use FS::Record;
-use FS::cust_main;
-
-@ISA = qw( );
-
-$DEBUG = 1;
-
-=head1 NAME
-
-FS::XMLRPC - Object methods for handling XMLRPC requests
-
-=head1 SYNOPSIS
-
- use FS::XMLRPC;
-
- $xmlrpc = new FS::XMLRPC;
-
- ($error, $response_xml) = $xmlrpc->serve($request_xml);
-
-=head1 DESCRIPTION
-
-The FS::XMLRPC object is a mechanisim to access read-only data from freeside's subroutines. It does not, at least not at this point, give you the ability to access methods of freeside objects remotely. It can, however, be used to call subroutines such as FS::cust_main::smart_search and FS::Record::qsearch.
-
-See the serve method below for calling syntax.
-
-=head1 METHODS
-
-=over 4
-
-=item new
-
-Provides a FS::XMLRPC object used to handle incoming XMLRPC requests.
-
-=cut
-
-sub new {
-
- my $class = shift;
- my $self = {};
- bless($self, $class);
-
- $self->{_coder} = new Frontier::RPC2;
-
- return $self;
-
-}
-
-=item serve REQUEST_XML_SCALAR
-
-The serve method takes a scalar containg an XMLRPC request for one of freeside's subroutines (not object methods). Parameters passed in the 'methodCall' will be passed as a list to the subroutine untouched. The return value of the called subroutine _must_ be a freeside object reference (eg. qsearchs) or a list of freeside object references (eg. qsearch, smart_search), _and_, the object(s) returned must support the hashref method. This will be checked first by calling UNIVERSAL::can('FS::class::subroutine', 'hashref').
-
-Return value is an XMLRPC methodResponse containing the results of the call. The result of the subroutine call itself will be coded in the methodResponse as an array of structs, regardless of whether there was many or a single object returned. In other words, after you decode the response, you'll always have an array.
-
-=cut
-
-sub serve {
-
- my ($self, $request_xml) = (shift, shift);
- my $response_xml;
-
- my $coder = $self->{_coder};
- my $call = $coder->decode($request_xml);
-
- warn "Got methodCall with method_name='" . $call->{method_name} . "'"
- if $DEBUG;
-
- $response_xml = $coder->encode_response(&_serve($call->{method_name}, $call->{value}));
-
- return ('', $response_xml);
-
-}
-
-sub _serve { #Subroutine, not method
-
- my ($method_name, $params) = (shift, shift);
-
- use Data::Dumper;
-
- #die 'Called _serve without parameters' unless ref($params) eq 'ARRAY';
- $params = [] unless (ref($params) eq 'ARRAY');
-
- if ($method_name =~ /^(\w+)\.(\w+)/) {
-
- #my ($class, $sub) = split(/\./, $method_name);
- my ($class, $sub) = ($1, $2);
- my $fssub = "FS::${class}::${sub}";
- warn "fssub: ${fssub}" if $DEBUG;
- warn "params: " . Dumper($params) if $DEBUG;
-
- my @result;
-
- if ($class eq 'Conf') { #Special case for FS::Conf because we need an obj.
-
- if ($sub eq 'config') {
- my $conf = new FS::Conf;
- @result = ($conf->config(@$params));
- } else {
- warn "FS::XMLRPC: Can't call undefined subroutine '${fssub}'";
- }
-
- } else {
-
- unless (UNIVERSAL::can("FS::${class}", $sub)) {
- warn "FS::XMLRPC: Can't call undefined subroutine '${fssub}'";
- # Should we encode an error in the response,
- # or just break silently to the remote caller and complain locally?
- return [];
- }
-
- eval {
- no strict 'refs';
- my $fssub = "FS::${class}::${sub}";
- @result = (&$fssub(@$params));
- };
-
- if ($@) {
- warn "FS::XMLRPC: Error while calling '${fssub}': $@";
- return [];
- }
-
- }
-
- warn Dumper(@result);
-
- if (grep { UNIVERSAL::can($_, 'hashref') ? 0 : 1 } @result) {
- #warn "FS::XMLRPC: One or more objects returned from '${fssub}' doesn't " .
- # "support the 'hashref' method.";
-
- # If they're not FS::Record decendants, just return the results unmap'd?
- # This is more flexible, but possibly more error-prone.
- return [ @result ];
- } else {
- return [ map { $_->hashref } @result ];
- }
- } elsif ($method_name eq 'version') {
- return [ $FS::VERSION ];
- } # else...
-
- warn "Unhandle XMLRPC request '${method_name}'";
- return [];
-
-}
-
-=head1 BUGS
-
-Probably lots.
-
-=head1 SEE ALSO
-
-L<Frontier::RPC2>.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_group.pm b/FS/FS/access_group.pm
deleted file mode 100644
index 2519040..0000000
--- a/FS/FS/access_group.pm
+++ /dev/null
@@ -1,162 +0,0 @@
-package FS::access_group;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::m2name_Common;
-use FS::access_groupagent;
-use FS::access_right;
-
-@ISA = qw(FS::m2m_Common FS::m2name_Common FS::Record);
-
-=head1 NAME
-
-FS::access_group - Object methods for access_group records
-
-=head1 SYNOPSIS
-
- use FS::access_group;
-
- $record = new FS::access_group \%hash;
- $record = new FS::access_group { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_group object represents an access group. FS::access_group inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item groupnum - primary key
-
-=item groupname - Access group name
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new access group. To add the access group to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_group'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid access group. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('groupnum')
- || $self->ut_text('groupname')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item access_groupagent
-
-Returns all associated FS::access_groupagent records.
-
-=cut
-
-sub access_groupagent {
- my $self = shift;
- qsearch('access_groupagent', { 'groupnum' => $self->groupnum } );
-}
-
-=item access_rights
-
-Returns all associated FS::access_right records.
-
-=cut
-
-sub access_rights {
- my $self = shift;
- qsearch('access_right', { 'righttype' => 'FS::access_group',
- 'rightobjnum' => $self->groupnum
- }
- );
-}
-
-=item access_right RIGHTNAME
-
-Returns the specified FS::access_right record. Can be used as a boolean, to
-test if this group has the given RIGHTNAME.
-
-=cut
-
-sub access_right {
- my( $self, $name ) = shift;
- qsearchs('access_right', { 'righttype' => 'FS::access_group',
- 'rightobjnum' => $self->groupnum,
- 'rightname' => $name,
- }
- );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_groupagent.pm b/FS/FS/access_groupagent.pm
deleted file mode 100644
index 3de8fee..0000000
--- a/FS/FS/access_groupagent.pm
+++ /dev/null
@@ -1,134 +0,0 @@
-package FS::access_groupagent;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::agent;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::access_groupagent - Object methods for access_groupagent records
-
-=head1 SYNOPSIS
-
- use FS::access_groupagent;
-
- $record = new FS::access_groupagent \%hash;
- $record = new FS::access_groupagent { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_groupagent object represents an group reseller virtualization. FS::access_groupagent inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item groupagentnum - primary key
-
-=item groupnum -
-
-=item agentnum -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new group reseller virtualization. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_groupagent'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid group reseller virtualization. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('groupagentnum')
- || $self->ut_foreign_key('groupnum', 'access_group', 'groupnum')
- || $self->ut_foreign_key('agentnum', 'agent', 'agentnum')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item agent
-
-Returns the associated FS::agent object.
-
-=cut
-
-sub agent {
- my $self = shift;
- qsearchs('agent', { 'agentnum' => $self->agentnum } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_right.pm b/FS/FS/access_right.pm
deleted file mode 100644
index 67200f2..0000000
--- a/FS/FS/access_right.pm
+++ /dev/null
@@ -1,127 +0,0 @@
-package FS::access_right;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::access_right - Object methods for access_right records
-
-=head1 SYNOPSIS
-
- use FS::access_right;
-
- $record = new FS::access_right \%hash;
- $record = new FS::access_right { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_right object represents an example. FS::access_right inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item rightnum - primary key
-
-=item righttype -
-
-=item rightobjnum -
-
-=item rightname -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_right'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('rightnum')
- || $self->ut_text('righttype')
- || $self->ut_text('rightobjnum')
- || $self->ut_text('rightname')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_user.pm b/FS/FS/access_user.pm
deleted file mode 100644
index 874da66..0000000
--- a/FS/FS/access_user.pm
+++ /dev/null
@@ -1,376 +0,0 @@
-package FS::access_user;
-
-use strict;
-use vars qw( @ISA $htpasswd_file );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::m2m_Common;
-use FS::access_usergroup;
-use FS::agent;
-
-@ISA = qw( FS::m2m_Common FS::Record );
-
-#kludge htpasswd for now
-$htpasswd_file = '/usr/local/etc/freeside/htpasswd';
-
-=head1 NAME
-
-FS::access_user - Object methods for access_user records
-
-=head1 SYNOPSIS
-
- use FS::access_user;
-
- $record = new FS::access_user \%hash;
- $record = new FS::access_user { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_user object represents an internal access user. FS::access_user inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item usernum - primary key
-
-=item username -
-
-=item _password -
-
-=item last -
-
-=item first -
-
-=item disabled - empty or 'Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new internal access user. To add the user to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_user'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error =
- $self->SUPER::insert(@_)
- || $self->htpasswd_kludge()
- ;
-
- if ( $error ) {
- $dbh->rollback or die $dbh->errstr if $oldAutoCommit;
- return $error;
- } else {
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
- }
-
-}
-
-sub htpasswd_kludge {
- my $self = shift;
-
- #awful kludge to skip setting htpasswd for fs_* users
- return '' if $self->username =~ /^fs_/;
-
- unshift @_, '-c' unless -e $htpasswd_file;
- if (
- system('htpasswd', '-b', @_,
- $htpasswd_file,
- $self->username,
- $self->_password,
- ) == 0
- )
- {
- return '';
- } else {
- return 'htpasswd exited unsucessfully';
- }
-}
-
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error =
- $self->SUPER::delete(@_)
- || $self->htpasswd_kludge('-D')
- ;
-
- if ( $error ) {
- $dbh->rollback or die $dbh->errstr if $oldAutoCommit;
- return $error;
- } else {
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
- }
-
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my($new, $old) = ( shift, shift );
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error =
- $new->SUPER::replace($old, @_)
- || $new->htpasswd_kludge()
- ;
-
- if ( $error ) {
- $dbh->rollback or die $dbh->errstr if $oldAutoCommit;
- return $error;
- } else {
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
- }
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid internal access user. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('usernum')
- || $self->ut_text('username')
- || $self->ut_text('_password')
- || $self->ut_text('last')
- || $self->ut_text('first')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item name
-
-Returns a name string for this user: "Last, First".
-
-=cut
-
-sub name {
- my $self = shift;
- $self->get('last'). ', '. $self->first;
-}
-
-=item access_usergroup
-
-=cut
-
-sub access_usergroup {
- my $self = shift;
- qsearch( 'access_usergroup', { 'usernum' => $self->usernum } );
-}
-
-#=item access_groups
-#
-#=cut
-#
-#sub access_groups {
-#
-#}
-#
-#=item access_groupnames
-#
-#=cut
-#
-#sub access_groupnames {
-#
-#}
-
-=item agentnums
-
-Returns a list of agentnums this user can view (via group membership).
-
-=cut
-
-sub agentnums {
- my $self = shift;
- my $sth = dbh->prepare(
- "SELECT DISTINCT agentnum FROM access_usergroup
- JOIN access_groupagent USING ( groupnum )
- WHERE usernum = ?"
- ) or die dbh->errstr;
- $sth->execute($self->usernum) or die $sth->errstr;
- map { $_->[0] } @{ $sth->fetchall_arrayref };
-}
-
-=item agentnums_href
-
-Returns a hashref of agentnums this user can view.
-
-=cut
-
-sub agentnums_href {
- my $self = shift;
- { map { $_ => 1 } $self->agentnums };
-}
-
-=item agentnums_sql
-
-Returns an sql fragement to select only agentnums this user can view.
-
-=cut
-
-sub agentnums_sql {
- my $self = shift;
-
- my @agentnums = $self->agentnums;
- return ' 1 = 0 ' unless scalar(@agentnums);
-
- '( '.
- join( ' OR ', map "agentnum = $_", @agentnums ).
- ' )';
-}
-
-=item agentnum
-
-Returns true if the user can view the specified agent.
-
-=cut
-
-sub agentnum {
- my( $self, $agentnum ) = @_;
- my $sth = dbh->prepare(
- "SELECT COUNT(*) FROM access_usergroup
- JOIN access_groupagent USING ( groupnum )
- WHERE usernum = ? AND agentnum = ?"
- ) or die dbh->errstr;
- $sth->execute($self->usernum, $agentnum) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item agents
-
-Returns the list of agents this user can view (via group membership), as
-FS::agent objects.
-
-=cut
-
-sub agents {
- my $self = shift;
- qsearch({
- 'table' => 'agent',
- 'hashref' => { disabled=>'' },
- 'extra_sql' => ' AND '. $self->agentnums_sql,
- });
-}
-
-=item access_right
-
-Given a right name, returns true if this user has this right (currently via
-group membership, eventually also via user overrides).
-
-=cut
-
-sub access_right {
- my( $self, $rightname ) = @_;
- my $sth = dbh->prepare("
- SELECT groupnum FROM access_usergroup
- LEFT JOIN access_group USING ( groupnum )
- LEFT JOIN access_right
- ON ( access_group.groupnum = access_right.rightobjnum )
- WHERE usernum = ?
- AND righttype = 'FS::access_group'
- AND rightname = ?
- ") or die dbh->errstr;
- $sth->execute($self->usernum, $rightname) or die $sth->errstr;
- my $row = $sth->fetchrow_arrayref;
- $row ? $row->[0] : '';
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_user_pref.pm b/FS/FS/access_user_pref.pm
deleted file mode 100644
index ff957f2..0000000
--- a/FS/FS/access_user_pref.pm
+++ /dev/null
@@ -1,127 +0,0 @@
-package FS::access_user_pref;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::access_user_pref - Object methods for access_user_pref records
-
-=head1 SYNOPSIS
-
- use FS::access_user_pref;
-
- $record = new FS::access_user_pref \%hash;
- $record = new FS::access_user_pref { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_user_pref object represents an example. FS::access_user_pref inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item prefnum - primary key
-
-=item usernum -
-
-=item prefname -
-
-=item prefvalue -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_user_pref'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('prefnum')
- || $self->ut_number('usernum')
- || $self->ut_text('prefname')
- || $self->ut_textn('prefvalue')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/access_usergroup.pm b/FS/FS/access_usergroup.pm
deleted file mode 100644
index 4d8836c..0000000
--- a/FS/FS/access_usergroup.pm
+++ /dev/null
@@ -1,144 +0,0 @@
-package FS::access_usergroup;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::access_user;
-use FS::access_group;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::access_usergroup - Object methods for access_usergroup records
-
-=head1 SYNOPSIS
-
- use FS::access_usergroup;
-
- $record = new FS::access_usergroup \%hash;
- $record = new FS::access_usergroup { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::access_usergroup object represents an example. FS::access_usergroup inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item usergroupnum - primary key
-
-=item usernum -
-
-=item groupnum -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'access_usergroup'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('usergroupnum')
- || $self->ut_number('usernum')
- || $self->ut_number('groupnum')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item access_user
-
-=cut
-
-sub access_user {
- my $self = shift;
- qsearchs( 'access_user', { 'usernum' => $self->usernum } );
-}
-
-=item access_group
-
-=cut
-
-sub access_group {
- my $self = shift;
- qsearchs( 'access_group', { 'groupnum' => $self->groupnum } );
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/acct_snarf.pm b/FS/FS/acct_snarf.pm
deleted file mode 100644
index b4e88bf..0000000
--- a/FS/FS/acct_snarf.pm
+++ /dev/null
@@ -1,128 +0,0 @@
-package FS::acct_snarf;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::acct_snarf - Object methods for acct_snarf records
-
-=head1 SYNOPSIS
-
- use FS::acct_snarf;
-
- $record = new FS::acct_snarf \%hash;
- $record = new FS::acct_snarf { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::svc_acct object represents an external mail account, typically for
-download of mail. FS::acct_snarf inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item snarfnum - primary key
-
-=item svcnum - Account (see L<FS::svc_acct>)
-
-=item machine - external machine to download mail from
-
-=item protocol - protocol (pop3, imap, etc.)
-
-=item username - external login username
-
-=item _password - external login password
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'acct_snarf'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid external mail account. If
-there is an error, returns the error, otherwise returns false. Called by the
-insert and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('snarfnum')
- || $self->ut_number('svcnum')
- || $self->ut_foreign_key('svcnum', 'svc_acct', 'svcnum')
- || $self->ut_domain('machine')
- || $self->ut_alphan('protocol')
- || $self->ut_textn('username')
- ;
- return $error if $error;
-
- $self->_password =~ /^[^\t\n]*$/ or return "illegal password";
- $self->_password($1);
-
- ''; #no error
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/addr_block.pm b/FS/FS/addr_block.pm
deleted file mode 100755
index 1fb6060..0000000
--- a/FS/FS/addr_block.pm
+++ /dev/null
@@ -1,331 +0,0 @@
-package FS::addr_block;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs qsearch dbh );
-use FS::router;
-use FS::svc_broadband;
-use FS::Conf;
-use NetAddr::IP;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::addr_block - Object methods for addr_block records
-
-=head1 SYNOPSIS
-
- use FS::addr_block;
-
- $record = new FS::addr_block \%hash;
- $record = new FS::addr_block { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::addr_block record describes an address block assigned for broadband
-access. FS::addr_block inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item blocknum - primary key, used in FS::svc_broadband to associate
-services to the block.
-
-=item routernum - the router (see FS::router) to which this
-block is assigned.
-
-=item ip_gateway - the gateway address used by customers within this block.
-
-=item ip_netmask - the netmask of the block, expressed as an integer.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new record. To add the record to the database, see "insert".
-
-=cut
-
-sub table { 'addr_block'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-sub delete {
- my $self = shift;
- return 'Block must be deallocated before deletion'
- if $self->router;
-
- $self->SUPER::delete;
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_number('routernum')
- || $self->ut_ip('ip_gateway')
- || $self->ut_number('ip_netmask')
- ;
- return $error if $error;
-
-
- # A routernum of 0 indicates an unassigned block and is allowed
- return "Unknown routernum"
- if ($self->routernum and not $self->router);
-
- my $self_addr = $self->NetAddr;
- return "Cannot parse address: ". $self->ip_gateway . '/' . $self->ip_netmask
- unless $self_addr;
-
- if (not $self->blocknum) {
- my @block = grep {
- my $block_addr = $_->NetAddr;
- if($block_addr->contains($self_addr)
- or $self_addr->contains($block_addr)) { $_; };
- } qsearch( 'addr_block', {});
- foreach(@block) {
- return "Block intersects existing block ".$_->ip_gateway."/".$_->ip_netmask;
- }
- }
-
- $self->SUPER::check;
-}
-
-
-=item router
-
-Returns the FS::router object corresponding to this object. If the
-block is unassigned, returns undef.
-
-=cut
-
-sub router {
- my $self = shift;
- return qsearchs('router', { routernum => $self->routernum });
-}
-
-=item svc_broadband
-
-Returns a list of FS::svc_broadband objects associated
-with this object.
-
-=cut
-
-sub svc_broadband {
- my $self = shift;
- return qsearch('svc_broadband', { blocknum => $self->blocknum });
-}
-
-=item NetAddr
-
-Returns a NetAddr::IP object for this block's address and netmask.
-
-=cut
-
-sub NetAddr {
- my $self = shift;
-
- return new NetAddr::IP ($self->ip_gateway, $self->ip_netmask);
-}
-
-=item next_free_addr
-
-Returns a NetAddr::IP object corresponding to the first unassigned address
-in the block (other than the network, broadcast, or gateway address). If
-there are no free addresses, returns false.
-
-=cut
-
-sub next_free_addr {
- my $self = shift;
-
- my $conf = new FS::Conf;
- my @excludeaddr = $conf->config('exclude_ip_addr');
-
-my @used =
-( (map { $_->NetAddr->addr }
- ($self,
- qsearch('svc_broadband', { blocknum => $self->blocknum }))
- ), @excludeaddr
-);
-
- my @free = $self->NetAddr->hostenum;
- while (my $ip = shift @free) {
- if (not grep {$_ eq $ip->addr;} @used) { return $ip; };
- }
-
- '';
-
-}
-
-=item allocate
-
-Allocates this address block to a router. Takes an FS::router object
-as an argument.
-
-At present it's not possible to reallocate a block to a different router
-except by deallocating it first, which requires that none of its addresses
-be assigned. This is probably as it should be.
-
-=cut
-
-sub allocate {
- my ($self, $router) = @_;
-
- return 'Block is already allocated'
- if($self->router);
-
- return 'Block must be allocated to a router'
- unless(ref $router eq 'FS::router');
-
- my @svc = $self->svc_broadband;
- if (@svc) {
- return 'Block has assigned addresses: '. join ', ', map {$_->ip_addr} @svc;
- }
-
- my $new = new FS::addr_block {$self->hash};
- $new->routernum($router->routernum);
- return $new->replace($self);
-
-}
-
-=item deallocate
-
-Deallocates the block (i.e. sets the routernum to 0). If any addresses in the
-block are assigned to services, it fails.
-
-=cut
-
-sub deallocate {
- my $self = shift;
-
- my @svc = $self->svc_broadband;
- if (@svc) {
- return 'Block has assigned addresses: '. join ', ', map {$_->ip_addr} @svc;
- }
-
- my $new = new FS::addr_block {$self->hash};
- $new->routernum(0);
- return $new->replace($self);
-}
-
-=item split_block
-
-Splits this address block into two equal blocks, occupying the same space as
-the original block. The first of the two will also have the same blocknum.
-The gateway address of each block will be set to the first usable address, i.e.
-(network address)+1. Since this method is designed for use on unallocated
-blocks, this is probably the correct behavior.
-
-(At present, splitting allocated blocks is disallowed. Anyone who wants to
-implement this is reminded that each split costs three addresses, and any
-customers who were using these addresses will have to be moved; depending on
-how full the block was before being split, they might have to be moved to a
-different block. Anyone who I<still> wants to implement it is asked to tie it
-to a configuration switch so that site admins can disallow it.)
-
-=cut
-
-sub split_block {
-
- # We should consider using Attribute::Handlers/Aspect/Hook::LexWrap/
- # something to atomicize functions, so that we can say
- #
- # sub split_block : atomic {
- #
- # instead of repeating all this AutoCommit verbage in every
- # sub that does more than one database operation.
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $self = shift;
- my $error;
-
- if ($self->router) {
- return 'Block is already allocated';
- }
-
- #TODO: Smallest allowed block should be a config option.
- if ($self->NetAddr->masklen() ge 30) {
- return 'Cannot split blocks with a mask length >= 30';
- }
-
- my (@new, @ip);
- $ip[0] = $self->NetAddr;
- @ip = map {$_->first()} $ip[0]->split($self->ip_netmask + 1);
-
- foreach (0,1) {
- $new[$_] = new FS::addr_block {$self->hash};
- $new[$_]->ip_gateway($ip[$_]->addr);
- $new[$_]->ip_netmask($ip[$_]->masklen);
- }
-
- $new[1]->blocknum('');
-
- $error = $new[0]->replace($self);
- if ($error) {
- $dbh->rollback;
- return $error;
- }
-
- $error = $new[1]->insert;
- if ($error) {
- $dbh->rollback;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- return '';
-}
-
-=item merge
-
-To be implemented.
-
-=back
-
-=head1 BUGS
-
-Minimum block size should be a config option. It's hardcoded at /30 right
-now because that's the smallest block that makes any sense at all.
-
-=cut
-
-1;
-
diff --git a/FS/FS/agent.pm b/FS/FS/agent.pm
deleted file mode 100644
index e40ef09..0000000
--- a/FS/FS/agent.pm
+++ /dev/null
@@ -1,444 +0,0 @@
-package FS::agent;
-
-use strict;
-use vars qw( @ISA );
-#use Crypt::YAPassGen;
-use FS::Record qw( dbh qsearch qsearchs );
-use FS::cust_main;
-use FS::cust_pkg;
-use FS::agent_type;
-use FS::reg_code;
-use FS::TicketSystem;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::agent - Object methods for agent records
-
-=head1 SYNOPSIS
-
- use FS::agent;
-
- $record = new FS::agent \%hash;
- $record = new FS::agent { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $agent_type = $record->agent_type;
-
- $hashref = $record->pkgpart_hashref;
- #may purchase $pkgpart if $hashref->{$pkgpart};
-
-=head1 DESCRIPTION
-
-An FS::agent object represents an agent. Every customer has an agent. Agents
-can be used to track things like resellers or salespeople. FS::agent inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item agentnum - primary key (assigned automatically for new agents)
-
-=item agent - Text name of this agent
-
-=item typenum - Agent type. See L<FS::agent_type>
-
-=item prog - For future use.
-
-=item freq - For future use.
-
-=item disabled - Disabled flag, empty or 'Y'
-
-=item username - Username for the Agent interface
-
-=item _password - Password for the Agent interface
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new agent. To add the agent to the database, see L<"insert">.
-
-=cut
-
-sub table { 'agent'; }
-
-=item insert
-
-Adds this agent to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this agent from the database. Only agents with no customers can be
-deleted. If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete an agent with customers!"
- if qsearch( 'cust_main', { 'agentnum' => $self->agentnum } );
-
- $self->SUPER::delete;
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid agent. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('agentnum')
- || $self->ut_text('agent')
- || $self->ut_number('typenum')
- || $self->ut_numbern('freq')
- || $self->ut_textn('prog')
- ;
- return $error if $error;
-
- if ( $self->dbdef_table->column('disabled') ) {
- $error = $self->ut_enum('disabled', [ '', 'Y' ] );
- return $error if $error;
- }
-
- if ( $self->dbdef_table->column('username') ) {
- $error = $self->ut_alphan('username');
- return $error if $error;
- if ( length($self->username) ) {
- my $conflict = qsearchs('agent', { 'username' => $self->username } );
- return 'duplicate agent username (with '. $conflict->agent. ')'
- if $conflict && $conflict->agentnum != $self->agentnum;
- $error = $self->ut_text('password'); # ut_text... arbitrary choice
- } else {
- $self->_password('');
- }
- }
-
- return "Unknown typenum!"
- unless $self->agent_type;
-
- $self->SUPER::check;
-}
-
-=item agent_type
-
-Returns the FS::agent_type object (see L<FS::agent_type>) for this agent.
-
-=cut
-
-sub agent_type {
- my $self = shift;
- qsearchs( 'agent_type', { 'typenum' => $self->typenum } );
-}
-
-=item pkgpart_hashref
-
-Returns a hash reference. The keys of the hash are pkgparts. The value is
-true if this agent may purchase the specified package definition. See
-L<FS::part_pkg>.
-
-=cut
-
-sub pkgpart_hashref {
- my $self = shift;
- $self->agent_type->pkgpart_hashref;
-}
-
-=item ticketing_queue
-
-Returns the queue name corresponding with the id from the I<ticketing_queueid>
-field, or the empty string.
-
-=cut
-
-sub ticketing_queue {
- my $self = shift;
- FS::TicketSystem->queue($self->ticketing_queueid);
-};
-
-=item num_prospect_cust_main
-
-Returns the number of prospects (customers with no packages ever ordered) for
-this agent.
-
-=cut
-
-sub num_prospect_cust_main {
- shift->num_sql(FS::cust_main->prospect_sql);
-}
-
-sub num_sql {
- my( $self, $sql ) = @_;
- my $statement = "SELECT COUNT(*) FROM cust_main WHERE agentnum = ? AND $sql";
- my $sth = dbh->prepare($statement) or die dbh->errstr." preparing $statement";
- $sth->execute($self->agentnum) or die $sth->errstr. " executing $statement";
- $sth->fetchrow_arrayref->[0];
-}
-
-=item prospect_cust_main
-
-Returns the prospects (customers with no packages ever ordered) for this agent,
-as cust_main objects.
-
-=cut
-
-sub prospect_cust_main {
- shift->cust_main_sql(FS::cust_main->prospect_sql);
-}
-
-sub cust_main_sql {
- my( $self, $sql ) = @_;
- qsearch( 'cust_main',
- { 'agentnum' => $self->agentnum },
- '',
- " AND $sql"
- );
-}
-
-=item num_active_cust_main
-
-Returns the number of active customers for this agent (customers with active
-recurring packages).
-
-=cut
-
-sub num_active_cust_main {
- shift->num_sql(FS::cust_main->active_sql);
-}
-
-=item active_cust_main
-
-Returns the active customers for this agent, as cust_main objects.
-
-=cut
-
-sub active_cust_main {
- shift->cust_main_sql(FS::cust_main->active_sql);
-}
-
-=item num_inactive_cust_main
-
-Returns the number of inactive customers for this agent (customers with no
-active recurring packages, but otherwise unsuspended/uncancelled).
-
-=cut
-
-sub num_inactive_cust_main {
- shift->num_sql(FS::cust_main->inactive_sql);
-}
-
-=item inactive_cust_main
-
-Returns the inactive customers for this agent, as cust_main objects.
-
-=cut
-
-sub inactive_cust_main {
- shift->cust_main_sql(FS::cust_main->inactive_sql);
-}
-
-
-=item num_susp_cust_main
-
-Returns the number of suspended customers for this agent.
-
-=cut
-
-sub num_susp_cust_main {
- shift->num_sql(FS::cust_main->susp_sql);
-}
-
-=item susp_cust_main
-
-Returns the suspended customers for this agent, as cust_main objects.
-
-=cut
-
-sub susp_cust_main {
- shift->cust_main_sql(FS::cust_main->susp_sql);
-}
-
-=item num_cancel_cust_main
-
-Returns the number of cancelled customer for this agent.
-
-=cut
-
-sub num_cancel_cust_main {
- shift->num_sql(FS::cust_main->cancel_sql);
-}
-
-=item cancel_cust_main
-
-Returns the cancelled customers for this agent, as cust_main objects.
-
-=cut
-
-sub cancel_cust_main {
- shift->cust_main_sql(FS::cust_main->cancel_sql);
-}
-
-=item num_active_cust_pkg
-
-Returns the number of active customer packages for this agent.
-
-=cut
-
-sub num_active_cust_pkg {
- shift->num_pkg_sql(FS::cust_pkg->active_sql);
-}
-
-sub num_pkg_sql {
- my( $self, $sql ) = @_;
- my $statement =
- "SELECT COUNT(*) FROM cust_pkg LEFT JOIN cust_main USING ( custnum )".
- " WHERE agentnum = ? AND $sql";
- my $sth = dbh->prepare($statement) or die dbh->errstr." preparing $statement";
- $sth->execute($self->agentnum) or die $sth->errstr. "executing $statement";
- $sth->fetchrow_arrayref->[0];
-}
-
-=item num_inactive_cust_pkg
-
-Returns the number of inactive customer packages (one-time packages otherwise
-unsuspended/uncancelled) for this agent.
-
-=cut
-
-sub num_inactive_cust_pkg {
- shift->num_pkg_sql(FS::cust_pkg->inactive_sql);
-}
-
-=item num_susp_cust_pkg
-
-Returns the number of suspended customer packages for this agent.
-
-=cut
-
-sub num_susp_cust_pkg {
- shift->num_pkg_sql(FS::cust_pkg->susp_sql);
-}
-
-=item num_cancel_cust_pkg
-
-Returns the number of cancelled customer packages for this agent.
-
-=cut
-
-sub num_cancel_cust_pkg {
- shift->num_pkg_sql(FS::cust_pkg->cancel_sql);
-}
-
-=item generate_reg_codes NUM PKGPART_ARRAYREF
-
-Generates the specified number of registration codes, allowing purchase of the
-specified package definitions. Returns an array reference of the newly
-generated codes, or a scalar error message.
-
-=cut
-
-#false laziness w/prepay_credit::generate
-sub generate_reg_codes {
- my( $self, $num, $pkgparts ) = @_;
-
- my @codeset = ( 'A'..'Z' );
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my @codes = ();
- for ( 1 ... $num ) {
- my $reg_code = new FS::reg_code {
- 'agentnum' => $self->agentnum,
- 'code' => join('', map($codeset[int(rand $#codeset)], (0..7) ) ),
- };
- my $error = $reg_code->insert($pkgparts);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- push @codes, $reg_code->code;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- \@codes;
-
-}
-
-=item num_reg_code
-
-Returns the number of unused registration codes for this agent.
-
-=cut
-
-sub num_reg_code {
- my $self = shift;
- my $sth = dbh->prepare(
- "SELECT COUNT(*) FROM reg_code WHERE agentnum = ?"
- ) or die dbh->errstr;
- $sth->execute($self->agentnum) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item num_prepay_credit
-
-Returns the number of unused prepaid cards for this agent.
-
-=cut
-
-sub num_prepay_credit {
- my $self = shift;
- my $sth = dbh->prepare(
- "SELECT COUNT(*) FROM prepay_credit WHERE agentnum = ?"
- ) or die dbh->errstr;
- $sth->execute($self->agentnum) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::agent_type>, L<FS::cust_main>, L<FS::part_pkg>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/agent_payment_gateway.pm b/FS/FS/agent_payment_gateway.pm
deleted file mode 100644
index bd99d0c..0000000
--- a/FS/FS/agent_payment_gateway.pm
+++ /dev/null
@@ -1,139 +0,0 @@
-package FS::agent_payment_gateway;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::payment_gateway;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::agent_payment_gateway - Object methods for agent_payment_gateway records
-
-=head1 SYNOPSIS
-
- use FS::agent_payment_gateway;
-
- $record = new FS::agent_payment_gateway \%hash;
- $record = new FS::agent_payment_gateway { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::agent_payment_gateway object represents a payment gateway override for
-a specific agent. FS::agent_payment_gateway inherits from FS::Record. The
-following fields are currently supported:
-
-=over 4
-
-=item agentgatewaynum - primary key
-
-=item agentnum -
-
-=item gatewaynum -
-
-=item cardtype -
-
-=item taxclass -
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new override. To add the override to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'agent_payment_gateway'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid override. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('agentgatewaynum')
- || $self->ut_foreign_key('agentnum', 'agent', 'agentnum')
- || $self->ut_foreign_key('gatewaynum', 'payment_gateway', 'gatewaynum' )
- || $self->ut_textn('cardtype')
- || $self->ut_textn('taxclass')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item payment_gateway
-
-=cut
-
-sub payment_gateway {
- my $self = shift;
- qsearchs('payment_gateway', { 'gatewaynum' => $self->gatewaynum } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::payment_gateway>, L<FS::agent>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/agent_type.pm b/FS/FS/agent_type.pm
deleted file mode 100644
index 2660bb4..0000000
--- a/FS/FS/agent_type.pm
+++ /dev/null
@@ -1,191 +0,0 @@
-package FS::agent_type;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch );
-use FS::m2m_Common;
-use FS::agent;
-use FS::type_pkgs;
-
-@ISA = qw( FS::m2m_Common FS::Record );
-
-=head1 NAME
-
-FS::agent_type - Object methods for agent_type records
-
-=head1 SYNOPSIS
-
- use FS::agent_type;
-
- $record = new FS::agent_type \%hash;
- $record = new FS::agent_type { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $hashref = $record->pkgpart_hashref;
- #may purchase $pkgpart if $hashref->{$pkgpart};
-
- @type_pkgs = $record->type_pkgs;
-
- @pkgparts = $record->pkgpart;
-
-=head1 DESCRIPTION
-
-An FS::agent_type object represents an agent type. Every agent (see
-L<FS::agent>) has an agent type. Agent types define which packages (see
-L<FS::part_pkg>) may be purchased by customers (see L<FS::cust_main>), via
-FS::type_pkgs records (see L<FS::type_pkgs>). FS::agent_type inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item typenum - primary key (assigned automatically for new agent types)
-
-=item atype - Text name of this agent type
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new agent type. To add the agent type to the database, see
-L<"insert">.
-
-=cut
-
-sub table { 'agent_type'; }
-
-=item insert
-
-Adds this agent type to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this agent type from the database. Only agent types with no agents
-can be deleted. If there is an error, returns the error, otherwise returns
-false.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete an agent_type with agents!"
- if qsearch( 'agent', { 'typenum' => $self->typenum } );
-
- $self->SUPER::delete;
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid agent type. If there is an
-error, returns the error, otherwise returns false. Called by the insert and
-replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('typenum')
- or $self->ut_text('atype')
- or $self->SUPER::check;
-
-}
-
-=item pkgpart_hashref
-
-Returns a hash reference. The keys of the hash are pkgparts. The value is
-true iff this agent may purchase the specified package definition. See
-L<FS::part_pkg>.
-
-=cut
-
-sub pkgpart_hashref {
- my $self = shift;
- my %pkgpart;
- #$pkgpart{$_}++ foreach $self->pkgpart;
- # not compatible w/5.004_04 (fixed in 5.004_05)
- foreach ( $self->pkgpart ) { $pkgpart{$_}++; }
- \%pkgpart;
-}
-
-=item type_pkgs
-
-Returns all FS::type_pkgs objects (see L<FS::type_pkgs>) for this agent type.
-
-=cut
-
-sub type_pkgs {
- my $self = shift;
- qsearch('type_pkgs', { 'typenum' => $self->typenum } );
-}
-
-=item type_pkgs_enabled
-
-Returns all FS::type_pkg objects (see L<FS::type_pkgs>) that link to enabled
-package definitions (see L<FS::part_pkg>).
-
-An additional strange feature is that the returned type_pkg objects also have
-all fields of the associated part_pkg object.
-
-=cut
-
-sub type_pkgs_enabled {
- my $self = shift;
- qsearch({
- 'table' => 'type_pkgs',
- 'addl_from' => 'JOIN part_pkg USING ( pkgpart )',
- 'hashref' => { 'typenum' => $self->typenum },
- 'extra_sql' => " AND ( disabled = '' OR disabled IS NULL )".
- " ORDER BY pkg",
- });
-}
-
-=item pkgpart
-
-Returns the pkgpart of all package definitions (see L<FS::part_pkg>) for this
-agent type.
-
-=cut
-
-sub pkgpart {
- my $self = shift;
- map $_->pkgpart, $self->type_pkgs;
-}
-
-=back
-
-=head1 BUGS
-
-type_pkgs_enabled should order itself by something (pkg?)
-
-type_pkgs_enabled should populate something that caches for the part_pkg method
-rather than add fields to this object, right? In fact we need a "poop" object
-framework that does that automatically for any joined search at some point....
-right?
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::agent>, L<FS::type_pkgs>, L<FS::cust_main>,
-L<FS::part_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/banned_pay.pm b/FS/FS/banned_pay.pm
deleted file mode 100644
index 1ad87f5..0000000
--- a/FS/FS/banned_pay.pm
+++ /dev/null
@@ -1,136 +0,0 @@
-package FS::banned_pay;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::UID qw( getotaker );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::banned_pay - Object methods for banned_pay records
-
-=head1 SYNOPSIS
-
- use FS::banned_pay;
-
- $record = new FS::banned_pay \%hash;
- $record = new FS::banned_pay { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::banned_pay object represents an banned credit card or ACH account.
-FS::banned_pay inherits from FS::Record. The following fields are currently
-supported:
-
-=over 4
-
-=item bannum - primary key
-
-=item payby - I<CARD> or I<CHEK>
-
-=item payinfo - fingerprint of banned card (base64-encoded MD5 digest)
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item otaker - order taker (assigned automatically, see L<FS::UID>)
-
-=item reason - reason (text)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new ban. To add the ban to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'banned_pay'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid ban. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('bannum')
- || $self->ut_enum('payby', [ 'CARD', 'CHEK' ] )
- || $self->ut_text('payinfo')
- || $self->ut_numbern('_date')
- || $self->ut_textn('reason')
- ;
- return $error if $error;
-
- $self->_date(time) unless $self->_date;
-
- $self->otaker(getotaker);
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cancel_reason.pm b/FS/FS/cancel_reason.pm
deleted file mode 100644
index 19cc721..0000000
--- a/FS/FS/cancel_reason.pm
+++ /dev/null
@@ -1,123 +0,0 @@
-package FS::cancel_reason;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cancel_reason - Object methods for cancel_reason records
-
-=head1 SYNOPSIS
-
- use FS::cancel_reason;
-
- $record = new FS::cancel_reason \%hash;
- $record = new FS::cancel_reason { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cancel_reason object represents an cancellation reason.
-FS::cancel_reason inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item reasonnum - primary key
-
-=item reason -
-
-=item disabled - empty or "Y"
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new cancellation reason. To add the reason to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cancel_reason'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid reason. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('reasonnum')
- || $self->ut_text('reason')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cdr.pm b/FS/FS/cdr.pm
deleted file mode 100644
index 2f47170..0000000
--- a/FS/FS/cdr.pm
+++ /dev/null
@@ -1,642 +0,0 @@
-package FS::cdr;
-
-use strict;
-use vars qw( @ISA );
-use Date::Parse;
-use Date::Format;
-use Time::Local;
-use FS::UID qw( dbh );
-use FS::Record qw( qsearch qsearchs );
-use FS::cdr_type;
-use FS::cdr_calltype;
-use FS::cdr_carrier;
-use FS::cdr_upstream_rate;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cdr - Object methods for cdr records
-
-=head1 SYNOPSIS
-
- use FS::cdr;
-
- $record = new FS::cdr \%hash;
- $record = new FS::cdr { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cdr object represents an Call Data Record, typically from a telephony
-system or provider of some sort. FS::cdr inherits from FS::Record. The
-following fields are currently supported:
-
-=over 4
-
-=item acctid - primary key
-
-=item calldate - Call timestamp (SQL timestamp)
-
-=item clid - Caller*ID with text
-
-=item src - Caller*ID number / Source number
-
-=item dst - Destination extension
-
-=item dcontext - Destination context
-
-=item channel - Channel used
-
-=item dstchannel - Destination channel if appropriate
-
-=item lastapp - Last application if appropriate
-
-=item lastdata - Last application data
-
-=item startdate - Start of call (UNIX-style integer timestamp)
-
-=item answerdate - Answer time of call (UNIX-style integer timestamp)
-
-=item enddate - End time of call (UNIX-style integer timestamp)
-
-=item duration - Total time in system, in seconds
-
-=item billsec - Total time call is up, in seconds
-
-=item disposition - What happened to the call: ANSWERED, NO ANSWER, BUSY
-
-=item amaflags - What flags to use: BILL, IGNORE etc, specified on a per channel basis like accountcode.
-
-=cut
-
- #ignore the "omit" and "documentation" AMAs??
- #AMA = Automated Message Accounting.
- #default: Sets the system default.
- #omit: Do not record calls.
- #billing: Mark the entry for billing
- #documentation: Mark the entry for documentation.
-
-=back
-
-=item accountcode - CDR account number to use: account
-
-=item uniqueid - Unique channel identifier (Unitel/RSLCOM Event ID)
-
-=item userfield - CDR user-defined field
-
-=item cdr_type - CDR type - see L<FS::cdr_type> (Usage = 1, S&E = 7, OC&C = 8)
-
-=item charged_party - Service number to be billed
-
-=item upstream_currency - Wholesale currency from upstream
-
-=item upstream_price - Wholesale price from upstream
-
-=item upstream_rateplanid - Upstream rate plan ID
-
-=item rated_price - Rated (or re-rated) price
-
-=item distance - km (need units field?)
-
-=item islocal - Local - 1, Non Local = 0
-
-=item calltypenum - Type of call - see L<FS::cdr_calltype>
-
-=item description - Description (cdr_type 7&8 only) (used for cust_bill_pkg.itemdesc)
-
-=item quantity - Number of items (cdr_type 7&8 only)
-
-=item carrierid - Upstream Carrier ID (see L<FS::cdr_carrier>)
-
-=cut
-
-#Telstra =1, Optus = 2, RSL COM = 3
-
-=item upstream_rateid - Upstream Rate ID
-
-=item svcnum - Link to customer service (see L<FS::cust_svc>)
-
-=item freesidestatus - NULL, done (or something)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new CDR. To add the CDR to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cdr'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid CDR. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-Note: Unlike most types of records, we don't want to "reject" a CDR and we want
-to process them as quickly as possible, so we allow the database to check most
-of the data.
-
-=cut
-
-sub check {
- my $self = shift;
-
-# we don't want to "reject" a CDR like other sorts of input...
-# my $error =
-# $self->ut_numbern('acctid')
-## || $self->ut_('calldate')
-# || $self->ut_text('clid')
-# || $self->ut_text('src')
-# || $self->ut_text('dst')
-# || $self->ut_text('dcontext')
-# || $self->ut_text('channel')
-# || $self->ut_text('dstchannel')
-# || $self->ut_text('lastapp')
-# || $self->ut_text('lastdata')
-# || $self->ut_numbern('startdate')
-# || $self->ut_numbern('answerdate')
-# || $self->ut_numbern('enddate')
-# || $self->ut_number('duration')
-# || $self->ut_number('billsec')
-# || $self->ut_text('disposition')
-# || $self->ut_number('amaflags')
-# || $self->ut_text('accountcode')
-# || $self->ut_text('uniqueid')
-# || $self->ut_text('userfield')
-# || $self->ut_numbern('cdrtypenum')
-# || $self->ut_textn('charged_party')
-## || $self->ut_n('upstream_currency')
-## || $self->ut_n('upstream_price')
-# || $self->ut_numbern('upstream_rateplanid')
-## || $self->ut_n('distance')
-# || $self->ut_numbern('islocal')
-# || $self->ut_numbern('calltypenum')
-# || $self->ut_textn('description')
-# || $self->ut_numbern('quantity')
-# || $self->ut_numbern('carrierid')
-# || $self->ut_numbern('upstream_rateid')
-# || $self->ut_numbern('svcnum')
-# || $self->ut_textn('freesidestatus')
-# ;
-# return $error if $error;
-
- $self->calldate( $self->startdate_sql )
- if !$self->calldate && $self->startdate;
-
- unless ( $self->charged_party ) {
- if ( $self->dst =~ /^(\+?1)?8[02-8]{2}/ ) {
- $self->charged_party($self->dst);
- } else {
- $self->charged_party($self->src);
- }
- }
-
- #check the foreign keys even?
- #do we want to outright *reject* the CDR?
- my $error =
- $self->ut_numbern('acctid')
-
- #Usage = 1, S&E = 7, OC&C = 8
- || $self->ut_foreign_keyn('cdrtypenum', 'cdr_type', 'cdrtypenum' )
-
- #the big list in appendix 2
- || $self->ut_foreign_keyn('calltypenum', 'cdr_calltype', 'calltypenum' )
-
- # Telstra =1, Optus = 2, RSL COM = 3
- || $self->ut_foreign_keyn('carrierid', 'cdr_carrier', 'carrierid' )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item set_status_and_rated_price STATUS [ RATED_PRICE ]
-
-Sets the status to the provided string. If there is an error, returns the
-error, otherwise returns false.
-
-=cut
-
-sub set_status_and_rated_price {
- my($self, $status, $rated_price) = @_;
- $self->freesidestatus($status);
- $self->rated_price($rated_price);
- $self->replace();
-}
-
-=item calldate_unix
-
-Parses the calldate in SQL string format and returns a UNIX timestamp.
-
-=cut
-
-sub calldate_unix {
- str2time(shift->calldate);
-}
-
-=item startdate_sql
-
-Parses the startdate in UNIX timestamp format and returns a string in SQL
-format.
-
-=cut
-
-sub startdate_sql {
- my($sec,$min,$hour,$mday,$mon,$year) = localtime(shift->startdate);
- $mon++;
- $year += 1900;
- "$year-$mon-$mday $hour:$min:$sec";
-}
-
-=item cdr_carrier
-
-Returns the FS::cdr_carrier object associated with this CDR, or false if no
-carrierid is defined.
-
-=cut
-
-my %carrier_cache = ();
-
-sub cdr_carrier {
- my $self = shift;
- return '' unless $self->carrierid;
- $carrier_cache{$self->carrierid} ||=
- qsearchs('cdr_carrier', { 'carrierid' => $self->carrierid } );
-}
-
-=item carriername
-
-Returns the carrier name (see L<FS::cdr_carrier>), or the empty string if
-no FS::cdr_carrier object is assocated with this CDR.
-
-=cut
-
-sub carriername {
- my $self = shift;
- my $cdr_carrier = $self->cdr_carrier;
- $cdr_carrier ? $cdr_carrier->carriername : '';
-}
-
-=item cdr_calltype
-
-Returns the FS::cdr_calltype object associated with this CDR, or false if no
-calltypenum is defined.
-
-=cut
-
-my %calltype_cache = ();
-
-sub cdr_calltype {
- my $self = shift;
- return '' unless $self->calltypenum;
- $calltype_cache{$self->calltypenum} ||=
- qsearchs('cdr_calltype', { 'calltypenum' => $self->calltypenum } );
-}
-
-=item calltypename
-
-Returns the call type name (see L<FS::cdr_calltype>), or the empty string if
-no FS::cdr_calltype object is assocated with this CDR.
-
-=cut
-
-sub calltypename {
- my $self = shift;
- my $cdr_calltype = $self->cdr_calltype;
- $cdr_calltype ? $cdr_calltype->calltypename : '';
-}
-
-=item cdr_upstream_rate
-
-Returns the upstream rate mapping (see L<FS::cdr_upstream_rate>), or the empty
-string if no FS::cdr_upstream_rate object is associated with this CDR.
-
-=cut
-
-sub cdr_upstream_rate {
- my $self = shift;
- return '' unless $self->upstream_rateid;
- qsearchs('cdr_upstream_rate', { 'upstream_rateid' => $self->upstream_rateid })
- or '';
-}
-
-=item _convergent_format COLUMN [ COUNTRYCODE ]
-
-Returns the number in COLUMN formatted as follows:
-
-If the country code does not match COUNTRYCODE (default "61"), it is returned
-unchanged.
-
-If the country code does match COUNTRYCODE (default "61"), it is removed. In
-addiiton, "0" is prepended unless the number starts with 13, 18 or 19. (???)
-
-=cut
-
-sub _convergent_format {
- my( $self, $field ) = ( shift, shift );
- my $countrycode = scalar(@_) ? shift : '61'; #+61 = australia
- #my $number = $self->$field();
- my $number = $self->get($field);
- #if ( $number =~ s/^(\+|011)$countrycode// ) {
- if ( $number =~ s/^\+$countrycode// ) {
- $number = "0$number"
- unless $number =~ /^1[389]/; #???
- }
- $number;
-}
-
-=item downstream_csv [ OPTION => VALUE, ... ]
-
-=cut
-
-my %export_formats = (
- 'convergent' => [
- 'carriername', #CARRIER
- sub { shift->_convergent_format('src') }, #SERVICE_NUMBER
- sub { shift->_convergent_format('charged_party') }, #CHARGED_NUMBER
- sub { time2str('%Y-%m-%d', shift->calldate_unix ) }, #DATE
- sub { time2str('%T', shift->calldate_unix ) }, #TIME
- 'billsec', #'duration', #DURATION
- sub { shift->_convergent_format('dst') }, #NUMBER_DIALED
- '', #XXX add (from prefixes in most recent email) #FROM_DESC
- '', #XXX add (from prefixes in most recent email) #TO_DESC
- 'calltypename', #CLASS_CODE
- 'rated_price', #PRICE
- sub { shift->rated_price ? 'Y' : 'N' }, #RATED
- '', #OTHER_INFO
- ],
-);
-
-sub downstream_csv {
- my( $self, %opt ) = @_;
-
- my $format = $opt{'format'}; # 'convergent';
- return "Unknown format $format" unless exists $export_formats{$format};
-
- eval "use Text::CSV_XS;";
- die $@ if $@;
- my $csv = new Text::CSV_XS;
-
- my @columns =
- map {
- ref($_) ? &{$_}($self) : $self->$_();
- }
- @{ $export_formats{$format} };
-
- my $status = $csv->combine(@columns);
- die "FS::CDR: error combining ". $csv->error_input(). "into downstream CSV"
- unless $status;
-
- $csv->string;
-
-}
-
-=back
-
-=head1 CLASS METHODS
-
-=over 4
-
-=item batch_import
-
-=cut
-
-my($tmp_mday, $tmp_mon, $tmp_year);
-
-my %import_formats = (
- 'asterisk' => [
- 'accountcode',
- 'src',
- 'dst',
- 'dcontext',
- 'clid',
- 'channel',
- 'dstchannel',
- 'lastapp',
- 'lastdata',
- 'startdate', # XXX will need massaging
- 'answer', # XXX same
- 'end', # XXX same
- 'duration',
- 'billsec',
- 'disposition',
- 'amaflags',
- 'uniqueid',
- 'userfield',
- ],
- 'unitel' => [
- 'uniqueid',
- #'cdr_type',
- 'cdrtypenum',
- 'calldate', # may need massaging? huh maybe not...
- #'billsec', #XXX duration and billsec?
- sub { $_[0]->billsec( $_[1] );
- $_[0]->duration( $_[1] );
- },
- 'src',
- 'dst', # XXX needs to have "+61" prepended unless /^\+/ ???
- 'charged_party',
- 'upstream_currency',
- 'upstream_price',
- 'upstream_rateplanid',
- 'distance',
- 'islocal',
- 'calltypenum',
- 'startdate', #XXX needs massaging
- 'enddate', #XXX same
- 'description',
- 'quantity',
- 'carrierid',
- 'upstream_rateid',
- ],
- 'ams' => [
-
- # Date
- sub { my($cdr, $date) = @_;
- $date =~ /^(\d{1,2})\/(\d{1,2})\/(\d\d(\d\d)?)$/
- or die "unparsable date: $date"; #maybe we shouldn't die...
- #$cdr->startdate( timelocal(0, 0, 0 ,$2, $1-1, $3) );
- ($tmp_mday, $tmp_mon, $tmp_year) = ( $2, $1-1, $3 );
- },
-
- # Time
- sub { my($cdr, $time) = @_;
- #my($sec, $min, $hour, $mday, $mon, $year)= localtime($cdr->startdate);
- $time =~ /^(\d{1,2}):(\d{1,2}):(\d{1,2})$/
- or die "unparsable time: $time"; #maybe we shouldn't die...
- #$cdr->startdate( timelocal($3, $2, $1 ,$mday, $mon, $year) );
- $cdr->startdate(
- timelocal($3, $2, $1 ,$tmp_mday, $tmp_mon, $tmp_year)
- );
- },
-
- # Source_Number
- 'src',
-
- # Terminating_Number
- 'dst',
-
- # Duration
- sub { my($cdr, $min) = @_;
- my $sec = sprintf('%.0f', $min * 60 );
- $cdr->billsec( $sec );
- $cdr->duration( $sec );
- },
-
- ],
-);
-
-sub batch_import {
- my $param = shift;
-
- my $fh = $param->{filehandle};
- my $format = $param->{format};
-
- return "Unknown format $format" unless exists $import_formats{$format};
-
- eval "use Text::CSV_XS;";
- die $@ if $@;
-
- my $csv = new Text::CSV_XS;
-
- my $imported = 0;
- #my $columns;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $format eq 'ams' ) { # and other formats with a header too?
-
- }
-
- my $body = 0;
- my $line;
- while ( defined($line=<$fh>) ) {
-
- #skip header...
- if ( ! $body++ && $format eq 'ams' && $line =~ /^[\w\, ]+$/ ) {
- next;
- }
-
- $csv->parse($line) or do {
- $dbh->rollback if $oldAutoCommit;
- return "can't parse: ". $csv->error_input();
- };
-
- my @columns = $csv->fields();
- #warn join('-',@columns);
-
- if ( $format eq 'ams' ) {
- @columns = map { s/^ +//; $_; } @columns;
- }
-
- my @later = ();
- my %cdr =
- map {
-
- my $field_or_sub = $_;
- if ( ref($field_or_sub) ) {
- push @later, $field_or_sub, shift(@columns);
- ();
- } else {
- ( $field_or_sub => shift @columns );
- }
-
- }
- @{ $import_formats{$format} }
- ;
-
- my $cdr = new FS::cdr ( \%cdr );
-
- while ( scalar(@later) ) {
- my $sub = shift @later;
- my $data = shift @later;
- &{$sub}($cdr, $data); # $cdr->&{$sub}($data);
- }
-
- my $error = $cdr->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
-
- #or just skip?
- #next;
- }
-
- $imported++;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- #might want to disable this if we skip records for any reason...
- return "Empty file!" unless $imported;
-
- '';
-
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cdr_calltype.pm b/FS/FS/cdr_calltype.pm
deleted file mode 100644
index fe45608..0000000
--- a/FS/FS/cdr_calltype.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-package FS::cdr_calltype;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cdr_calltype - Object methods for cdr_calltype records
-
-=head1 SYNOPSIS
-
- use FS::cdr_calltype;
-
- $record = new FS::cdr_calltype \%hash;
- $record = new FS::cdr_calltype { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cdr_calltype object represents an CDR call type. FS::cdr_calltype
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item calltypenum - primary key
-
-=item calltypename - CDR call type name
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new call type. To add the call type to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cdr_calltype'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid call type. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('calltypenum')
- || $self->ut_text('calltypename')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cdr_carrier.pm b/FS/FS/cdr_carrier.pm
deleted file mode 100644
index 609c939..0000000
--- a/FS/FS/cdr_carrier.pm
+++ /dev/null
@@ -1,116 +0,0 @@
-package FS::cdr_carrier;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cdr_carrier - Object methods for cdr_carrier records
-
-=head1 SYNOPSIS
-
- use FS::cdr_carrier;
-
- $record = new FS::cdr_carrier \%hash;
- $record = new FS::cdr_carrier { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cdr_carrier object represents an CDR carrier or upstream.
-FS::cdr_carrier inherits from FS::Record. The following fields are currently
-supported:
-
-=over 4
-
-=item carrierid - primary key
-
-=item carriername - Carrier name
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new carrier. To add the carrier to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cdr_carrier'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid carrier. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('carrierid')
- || $self->ut_text('carriername')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cdr_type.pm b/FS/FS/cdr_type.pm
deleted file mode 100644
index e258bf8..0000000
--- a/FS/FS/cdr_type.pm
+++ /dev/null
@@ -1,119 +0,0 @@
-package FS::cdr_type;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cdr_type - Object methods for cdr_type records
-
-=head1 SYNOPSIS
-
- use FS::cdr_type;
-
- $record = new FS::cdr_type \%hash;
- $record = new FS::cdr_type { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cdr_type object represents an CDR type. FS::cdr_type inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item cdrtypenum - primary key
-
-=item typename - CDR type name
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new CDR type. To add the CDR type to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cdr_type'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid CDR type. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('cdrtypenum')
- || $self->ut_text('typename')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cdr_upstream_rate.pm b/FS/FS/cdr_upstream_rate.pm
deleted file mode 100644
index 2fd9782..0000000
--- a/FS/FS/cdr_upstream_rate.pm
+++ /dev/null
@@ -1,138 +0,0 @@
-package FS::cdr_upstream_rate;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::rate_detail;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cdr_upstream_rate - Object methods for cdr_upstream_rate records
-
-=head1 SYNOPSIS
-
- use FS::cdr_upstream_rate;
-
- $record = new FS::cdr_upstream_rate \%hash;
- $record = new FS::cdr_upstream_rate { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cdr_upstream_rate object represents an upstream rate mapping to
-internal rate detail (see L<FS::rate_detail>). FS::cdr_upstream_rate inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item upstreamratenum - primary key
-
-=item upstream_rateid - CDR upstream Rate ID (cdr.upstream_rateid - see L<FS::cdr>)
-
-=item ratedetailnum - Rate detail - see L<FS::rate_detail>
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new upstream rate mapping. To add the upstream rate to the database,
-see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cdr_upstream_rate'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid upstream rate. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('upstreamratenum')
- #|| $self->ut_number('upstream_rateid')
- || $self->ut_alpha('upstream_rateid')
- #|| $self->ut_text('upstream_rateid')
- || $self->ut_foreign_key('ratedetailnum', 'rate_detail', 'ratedetailnum' )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item rate_detail
-
-Returns the internal rate detail object for this upstream rate (see
-L<FS::rate_detail>).
-
-=cut
-
-sub rate_detail {
- my $self = shift;
- qsearchs('rate_detail', { 'ratedetailnum' => $self->ratedetailnum } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/clientapi_session.pm b/FS/FS/clientapi_session.pm
deleted file mode 100644
index f71a126..0000000
--- a/FS/FS/clientapi_session.pm
+++ /dev/null
@@ -1,121 +0,0 @@
-package FS::clientapi_session;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::clientapi_session - Object methods for clientapi_session records
-
-=head1 SYNOPSIS
-
- use FS::clientapi_session;
-
- $record = new FS::clientapi_session \%hash;
- $record = new FS::clientapi_session { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::clientapi_session object represents an FS::ClientAPI session.
-FS::clientapi_session inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item sessionnum - primary key
-
-=item sessionid - session ID
-
-=item namespace - session namespace
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'clientapi_session'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('primary_key')
- || $self->ut_number('validate_other_fields')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::ClientAPI>, <FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/clientapi_session_field.pm b/FS/FS/clientapi_session_field.pm
deleted file mode 100644
index bfa487d..0000000
--- a/FS/FS/clientapi_session_field.pm
+++ /dev/null
@@ -1,126 +0,0 @@
-package FS::clientapi_session_field;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::clientapi_session_field - Object methods for clientapi_session_field records
-
-=head1 SYNOPSIS
-
- use FS::clientapi_session_field;
-
- $record = new FS::clientapi_session_field \%hash;
- $record = new FS::clientapi_session_field { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::clientapi_session_field object represents a FS::ClientAPI session data
-field. FS::clientapi_session_field inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item fieldnum - primary key
-
-=item sessionnum - Base ClientAPI sesison (see L<FS::clientapi_session>)
-
-=item fieldname
-
-=item fieldvalie
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'clientapi_session_field'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('primary_key')
- || $self->ut_number('validate_other_fields')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::clientapi_session>, L<FS::ClientAPI>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill.pm b/FS/FS/cust_bill.pm
deleted file mode 100644
index a93d175..0000000
--- a/FS/FS/cust_bill.pm
+++ /dev/null
@@ -1,2638 +0,0 @@
-package FS::cust_bill;
-
-use strict;
-use vars qw( @ISA $DEBUG $conf $money_char );
-use vars qw( $invoice_lines @buf ); #yuck
-use Fcntl qw(:flock); #for spool_csv
-use IPC::Run3;
-use Date::Format;
-use Text::Template 1.20;
-use File::Temp 0.14;
-use String::ShellQuote;
-use HTML::Entities;
-use Locale::Country;
-use FS::UID qw( datasrc );
-use FS::Misc qw( send_email send_fax );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::cust_main_Mixin;
-use FS::cust_main;
-use FS::cust_bill_pkg;
-use FS::cust_credit;
-use FS::cust_pay;
-use FS::cust_pkg;
-use FS::cust_credit_bill;
-use FS::pay_batch;
-use FS::cust_pay_batch;
-use FS::cust_bill_event;
-use FS::part_pkg;
-use FS::cust_bill_pay;
-use FS::part_bill_event;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-$DEBUG = 0;
-
-#ask FS::UID to run this stuff for us later
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
- $money_char = $conf->config('money_char') || '$';
-} );
-
-=head1 NAME
-
-FS::cust_bill - Object methods for cust_bill records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill;
-
- $record = new FS::cust_bill \%hash;
- $record = new FS::cust_bill { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- ( $total_previous_balance, @previous_cust_bill ) = $record->previous;
-
- @cust_bill_pkg_objects = $cust_bill->cust_bill_pkg;
-
- ( $total_previous_credits, @previous_cust_credit ) = $record->cust_credit;
-
- @cust_pay_objects = $cust_bill->cust_pay;
-
- $tax_amount = $record->tax;
-
- @lines = $cust_bill->print_text;
- @lines = $cust_bill->print_text $time;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill object represents an invoice; a declaration that a customer
-owes you money. The specific charges are itemized as B<cust_bill_pkg> records
-(see L<FS::cust_bill_pkg>). FS::cust_bill inherits from FS::Record. The
-following fields are currently supported:
-
-=over 4
-
-=item invnum - primary key (assigned automatically for new invoices)
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item charged - amount of this invoice
-
-=item printed - deprecated
-
-=item closed - books closed flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new invoice. To add the invoice to the database, see L<"insert">.
-Invoices are normally created by calling the bill method of a customer object
-(see L<FS::cust_main>).
-
-=cut
-
-sub table { 'cust_bill'; }
-
-sub cust_linked { $_[0]->cust_main_custnum; }
-sub cust_unlinked_msg {
- my $self = shift;
- "WARNING: can't find cust_main.custnum ". $self->custnum.
- ' (cust_bill.invnum '. $self->invnum. ')';
-}
-
-=item insert
-
-Adds this invoice to the database ("Posts" the invoice). If there is an error,
-returns the error, otherwise returns false.
-
-=item delete
-
-This method now works but you probably shouldn't use it. Instead, apply a
-credit against the invoice.
-
-Using this method to delete invoices outright is really, really bad. There
-would be no record you ever posted this invoice, and there are no check to
-make sure charged = 0 or that there are no associated cust_bill_pkg records.
-
-Really, don't use it.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete closed invoice" if $self->closed =~ /^Y/i;
- $self->SUPER::delete(@_);
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-Only printed may be changed. printed is normally updated by calling the
-collect method of a customer object (see L<FS::cust_main>).
-
-=cut
-
-#replace can be inherited from Record.pm
-
-# replace_check is now the preferred way to #implement replace data checks
-# (so $object->replace() works without an argument)
-
-sub replace_check {
- my( $new, $old ) = ( shift, shift );
- return "Can't change custnum!" unless $old->custnum == $new->custnum;
- #return "Can't change _date!" unless $old->_date eq $new->_date;
- return "Can't change _date!" unless $old->_date == $new->_date;
- return "Can't change charged!" unless $old->charged == $new->charged
- || $old->charged == 0;
-
- '';
-}
-
-=item check
-
-Checks all fields to make sure this is a valid invoice. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('invnum')
- || $self->ut_number('custnum')
- || $self->ut_numbern('_date')
- || $self->ut_money('charged')
- || $self->ut_numbern('printed')
- || $self->ut_enum('closed', [ '', 'Y' ])
- ;
- return $error if $error;
-
- return "Unknown customer"
- unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-
- $self->_date(time) unless $self->_date;
-
- $self->printed(0) if $self->printed eq '';
-
- $self->SUPER::check;
-}
-
-=item previous
-
-Returns a list consisting of the total previous balance for this customer,
-followed by the previous outstanding invoices (as FS::cust_bill objects also).
-
-=cut
-
-sub previous {
- my $self = shift;
- my $total = 0;
- my @cust_bill = sort { $a->_date <=> $b->_date }
- grep { $_->owed != 0 && $_->_date < $self->_date }
- qsearch( 'cust_bill', { 'custnum' => $self->custnum } )
- ;
- foreach ( @cust_bill ) { $total += $_->owed; }
- $total, @cust_bill;
-}
-
-=item cust_bill_pkg
-
-Returns the line items (see L<FS::cust_bill_pkg>) for this invoice.
-
-=cut
-
-sub cust_bill_pkg {
- my $self = shift;
- qsearch( 'cust_bill_pkg', { 'invnum' => $self->invnum } );
-}
-
-=item open_cust_bill_pkg
-
-Returns the open line items for this invoice.
-
-Note that cust_bill_pkg with both setup and recur fees are returned as two
-separate line items, each with only one fee.
-
-=cut
-
-# modeled after cust_main::open_cust_bill
-sub open_cust_bill_pkg {
- my $self = shift;
-
- # grep { $_->owed > 0 } $self->cust_bill_pkg
-
- my %other = ( 'recur' => 'setup',
- 'setup' => 'recur', );
- my @open = ();
- foreach my $field ( qw( recur setup )) {
- push @open, map { $_->set( $other{$field}, 0 ); $_; }
- grep { $_->owed($field) > 0 }
- $self->cust_bill_pkg;
- }
-
- @open;
-}
-
-=item cust_bill_event
-
-Returns the completed invoice events (see L<FS::cust_bill_event>) for this
-invoice.
-
-=cut
-
-sub cust_bill_event {
- my $self = shift;
- qsearch( 'cust_bill_event', { 'invnum' => $self->invnum } );
-}
-
-
-=item cust_main
-
-Returns the customer (see L<FS::cust_main>) for this invoice.
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-=item cust_suspend_if_balance_over AMOUNT
-
-Suspends the customer associated with this invoice if the total amount owed on
-this invoice and all older invoices is greater than the specified amount.
-
-Returns a list: an empty list on success or a list of errors.
-
-=cut
-
-sub cust_suspend_if_balance_over {
- my( $self, $amount ) = ( shift, shift );
- my $cust_main = $self->cust_main;
- if ( $cust_main->total_owed_date($self->_date) < $amount ) {
- return ();
- } else {
- $cust_main->suspend;
- }
-}
-
-=item cust_credit
-
-Depreciated. See the cust_credited method.
-
- #Returns a list consisting of the total previous credited (see
- #L<FS::cust_credit>) and unapplied for this customer, followed by the previous
- #outstanding credits (FS::cust_credit objects).
-
-=cut
-
-sub cust_credit {
- use Carp;
- croak "FS::cust_bill->cust_credit depreciated; see ".
- "FS::cust_bill->cust_credit_bill";
- #my $self = shift;
- #my $total = 0;
- #my @cust_credit = sort { $a->_date <=> $b->_date }
- # grep { $_->credited != 0 && $_->_date < $self->_date }
- # qsearch('cust_credit', { 'custnum' => $self->custnum } )
- #;
- #foreach (@cust_credit) { $total += $_->credited; }
- #$total, @cust_credit;
-}
-
-=item cust_pay
-
-Depreciated. See the cust_bill_pay method.
-
-#Returns all payments (see L<FS::cust_pay>) for this invoice.
-
-=cut
-
-sub cust_pay {
- use Carp;
- croak "FS::cust_bill->cust_pay depreciated; see FS::cust_bill->cust_bill_pay";
- #my $self = shift;
- #sort { $a->_date <=> $b->_date }
- # qsearch( 'cust_pay', { 'invnum' => $self->invnum } )
- #;
-}
-
-=item cust_bill_pay
-
-Returns all payment applications (see L<FS::cust_bill_pay>) for this invoice.
-
-=cut
-
-sub cust_bill_pay {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_bill_pay', { 'invnum' => $self->invnum } );
-}
-
-=item cust_credited
-
-Returns all applied credits (see L<FS::cust_credit_bill>) for this invoice.
-
-=cut
-
-sub cust_credited {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_credit_bill', { 'invnum' => $self->invnum } )
- ;
-}
-
-=item tax
-
-Returns the tax amount (see L<FS::cust_bill_pkg>) for this invoice.
-
-=cut
-
-sub tax {
- my $self = shift;
- my $total = 0;
- my @taxlines = qsearch( 'cust_bill_pkg', { 'invnum' => $self->invnum ,
- 'pkgnum' => 0 } );
- foreach (@taxlines) { $total += $_->setup; }
- $total;
-}
-
-=item owed
-
-Returns the amount owed (still outstanding) on this invoice, which is charged
-minus all payment applications (see L<FS::cust_bill_pay>) and credit
-applications (see L<FS::cust_credit_bill>).
-
-=cut
-
-sub owed {
- my $self = shift;
- my $balance = $self->charged;
- $balance -= $_->amount foreach ( $self->cust_bill_pay );
- $balance -= $_->amount foreach ( $self->cust_credited );
- $balance = sprintf( "%.2f", $balance);
- $balance =~ s/^\-0\.00$/0.00/; #yay ieee fp
- $balance;
-}
-
-
-=item generate_email PARAMHASH
-
-PARAMHASH can contain the following:
-
-=over 4
-
-=item from => sender address, required
-
-=item tempate => alternate template name, optional
-
-=item print_text => text attachment arrayref, optional
-
-=item subject => email subject, optional
-
-=back
-
-Returns an argument list to be passed to L<FS::Misc::send_email>.
-
-=cut
-
-use MIME::Entity;
-
-sub generate_email {
-
- my $self = shift;
- my %args = @_;
-
- my $me = '[FS::cust_bill::generate_email]';
-
- my %return = (
- 'from' => $args{'from'},
- 'subject' => (($args{'subject'}) ? $args{'subject'} : 'Invoice'),
- );
-
- if (ref($args{'to'} eq 'ARRAY')) {
- $return{'to'} = $args{'to'};
- } else {
- $return{'to'} = [ grep { $_ !~ /^(POST|FAX)$/ }
- $self->cust_main->invoicing_list
- ];
- }
-
- if ( $conf->exists('invoice_html') ) {
-
- warn "$me creating HTML/text multipart message"
- if $DEBUG;
-
- $return{'nobody'} = 1;
-
- my $alternative = build MIME::Entity
- 'Type' => 'multipart/alternative',
- 'Encoding' => '7bit',
- 'Disposition' => 'inline'
- ;
-
- my $data;
- if ( $conf->exists('invoice_email_pdf')
- and scalar($conf->config('invoice_email_pdf_note')) ) {
-
- warn "$me using 'invoice_email_pdf_note' in multipart message"
- if $DEBUG;
- $data = [ map { $_ . "\n" }
- $conf->config('invoice_email_pdf_note')
- ];
-
- } else {
-
- warn "$me not using 'invoice_email_pdf_note' in multipart message"
- if $DEBUG;
- if ( ref($args{'print_text'}) eq 'ARRAY' ) {
- $data = $args{'print_text'};
- } else {
- $data = [ $self->print_text('', $args{'template'}) ];
- }
-
- }
-
- $alternative->attach(
- 'Type' => 'text/plain',
- #'Encoding' => 'quoted-printable',
- 'Encoding' => '7bit',
- 'Data' => $data,
- 'Disposition' => 'inline',
- );
-
- $args{'from'} =~ /\@([\w\.\-]+)/ or $1 = 'example.com';
- my $content_id = join('.', rand()*(2**32), $$, time). "\@$1";
-
- my $path = "$FS::UID::conf_dir/conf.$FS::UID::datasrc";
- my $file;
- if ( defined($args{'_template'}) && length($args{'_template'})
- && -e "$path/logo_". $args{'_template'}. ".png"
- )
- {
- $file = "$path/logo_". $args{'_template'}. ".png";
- } else {
- $file = "$path/logo.png";
- }
-
- my $image = build MIME::Entity
- 'Type' => 'image/png',
- 'Encoding' => 'base64',
- 'Path' => $file,
- 'Filename' => 'logo.png',
- 'Content-ID' => "<$content_id>",
- ;
-
- $alternative->attach(
- 'Type' => 'text/html',
- 'Encoding' => 'quoted-printable',
- 'Data' => [ '<html>',
- ' <head>',
- ' <title>',
- ' '. encode_entities($return{'subject'}),
- ' </title>',
- ' </head>',
- ' <body bgcolor="#e8e8e8">',
- $self->print_html('', $args{'template'}, $content_id),
- ' </body>',
- '</html>',
- ],
- 'Disposition' => 'inline',
- #'Filename' => 'invoice.pdf',
- );
-
- if ( $conf->exists('invoice_email_pdf') ) {
-
- #attaching pdf too:
- # multipart/mixed
- # multipart/related
- # multipart/alternative
- # text/plain
- # text/html
- # image/png
- # application/pdf
-
- my $related = build MIME::Entity 'Type' => 'multipart/related',
- 'Encoding' => '7bit';
-
- #false laziness w/Misc::send_email
- $related->head->replace('Content-type',
- $related->mime_type.
- '; boundary="'. $related->head->multipart_boundary. '"'.
- '; type=multipart/alternative'
- );
-
- $related->add_part($alternative);
-
- $related->add_part($image);
-
- my $pdf = build MIME::Entity $self->mimebuild_pdf('', $args{'template'});
-
- $return{'mimeparts'} = [ $related, $pdf ];
-
- } else {
-
- #no other attachment:
- # multipart/related
- # multipart/alternative
- # text/plain
- # text/html
- # image/png
-
- $return{'content-type'} = 'multipart/related';
- $return{'mimeparts'} = [ $alternative, $image ];
- $return{'type'} = 'multipart/alternative'; #Content-Type of first part...
- #$return{'disposition'} = 'inline';
-
- }
-
- } else {
-
- if ( $conf->exists('invoice_email_pdf') ) {
- warn "$me creating PDF attachment"
- if $DEBUG;
-
- #mime parts arguments a la MIME::Entity->build().
- $return{'mimeparts'} = [
- { $self->mimebuild_pdf('', $args{'template'}) }
- ];
- }
-
- if ( $conf->exists('invoice_email_pdf')
- and scalar($conf->config('invoice_email_pdf_note')) ) {
-
- warn "$me using 'invoice_email_pdf_note'"
- if $DEBUG;
- $return{'body'} = [ map { $_ . "\n" }
- $conf->config('invoice_email_pdf_note')
- ];
-
- } else {
-
- warn "$me not using 'invoice_email_pdf_note'"
- if $DEBUG;
- if ( ref($args{'print_text'}) eq 'ARRAY' ) {
- $return{'body'} = $args{'print_text'};
- } else {
- $return{'body'} = [ $self->print_text('', $args{'template'}) ];
- }
-
- }
-
- }
-
- %return;
-
-}
-
-=item mimebuild_pdf
-
-Returns a list suitable for passing to MIME::Entity->build(), representing
-this invoice as PDF attachment.
-
-=cut
-
-sub mimebuild_pdf {
- my $self = shift;
- (
- 'Type' => 'application/pdf',
- 'Encoding' => 'base64',
- 'Data' => [ $self->print_pdf(@_) ],
- 'Disposition' => 'attachment',
- 'Filename' => 'invoice.pdf',
- );
-}
-
-=item send [ TEMPLATENAME [ , AGENTNUM [ , INVOICE_FROM ] ] ]
-
-Sends this invoice to the destinations configured for this customer: sends
-email, prints and/or faxes. See L<FS::cust_main_invoice>.
-
-TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
-
-AGENTNUM, if specified, means that this invoice will only be sent for customers
-of the specified agent or agent(s). AGENTNUM can be a scalar agentnum (for a
-single agent) or an arrayref of agentnums.
-
-INVOICE_FROM, if specified, overrides the default email invoice From: address.
-
-=cut
-
-sub send {
- my $self = shift;
- my $template = scalar(@_) ? shift : '';
- if ( scalar(@_) && $_[0] ) {
- my $agentnums = ref($_[0]) ? shift : [ shift ];
- return 'N/A' unless grep { $_ == $self->cust_main->agentnum } @$agentnums;
- }
-
- my $invoice_from =
- scalar(@_)
- ? shift
- : ( $self->_agent_invoice_from || $conf->config('invoice_from') );
-
- my @invoicing_list = $self->cust_main->invoicing_list;
-
- $self->email($template, $invoice_from)
- if grep { $_ !~ /^(POST|FAX)$/ } @invoicing_list or !@invoicing_list;
-
- $self->print($template)
- if grep { $_ eq 'POST' } @invoicing_list; #postal
-
- $self->fax($template)
- if grep { $_ eq 'FAX' } @invoicing_list; #fax
-
- '';
-
-}
-
-=item email [ TEMPLATENAME [ , INVOICE_FROM ] ]
-
-Emails this invoice.
-
-TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
-
-INVOICE_FROM, if specified, overrides the default email invoice From: address.
-
-=cut
-
-sub email {
- my $self = shift;
- my $template = scalar(@_) ? shift : '';
- my $invoice_from =
- scalar(@_)
- ? shift
- : ( $self->_agent_invoice_from || $conf->config('invoice_from') );
-
- my @invoicing_list = grep { $_ !~ /^(POST|FAX)$/ }
- $self->cust_main->invoicing_list;
-
- #better to notify this person than silence
- @invoicing_list = ($invoice_from) unless @invoicing_list;
-
- my $error = send_email(
- $self->generate_email(
- 'from' => $invoice_from,
- 'to' => [ grep { $_ !~ /^(POST|FAX)$/ } @invoicing_list ],
- 'template' => $template,
- )
- );
- die "can't email invoice: $error\n" if $error;
- #die "$error\n" if $error;
-
-}
-
-=item lpr_data [ TEMPLATENAME ]
-
-Returns the postscript or plaintext for this invoice as an arrayref.
-
-TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
-
-=cut
-
-sub lpr_data {
- my( $self, $template) = @_;
- $conf->exists('invoice_latex')
- ? [ $self->print_ps('', $template) ]
- : [ $self->print_text('', $template) ];
-}
-
-=item print [ TEMPLATENAME ]
-
-Prints this invoice.
-
-TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
-
-=cut
-
-sub print {
- my $self = shift;
- my $template = scalar(@_) ? shift : '';
-
- my $lpr = $conf->config('lpr');
-
- my $outerr = '';
- run3 $lpr, $self->lpr_data($template), \$outerr, \$outerr;
- if ( $? ) {
- $outerr = ": $outerr" if length($outerr);
- die "Error from $lpr (exit status ". ($?>>8). ")$outerr\n";
- }
-
-}
-
-=item fax [ TEMPLATENAME ]
-
-Faxes this invoice.
-
-TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
-
-=cut
-
-sub fax {
- my $self = shift;
- my $template = scalar(@_) ? shift : '';
-
- die 'FAX invoice destination not (yet?) supported with plain text invoices.'
- unless $conf->exists('invoice_latex');
-
- my $dialstring = $self->cust_main->getfield('fax');
- #Check $dialstring?
-
- my $error = send_fax( 'docdata' => $self->lpr_data($template),
- 'dialstring' => $dialstring,
- );
- die $error if $error;
-
-}
-
-=item send_if_newest [ TEMPLATENAME [ , AGENTNUM [ , INVOICE_FROM ] ] ]
-
-Like B<send>, but only sends the invoice if it is the newest open invoice for
-this customer.
-
-=cut
-
-sub send_if_newest {
- my $self = shift;
-
- return ''
- if scalar(
- grep { $_->owed > 0 }
- qsearch('cust_bill', {
- 'custnum' => $self->custnum,
- #'_date' => { op=>'>', value=>$self->_date },
- 'invnum' => { op=>'>', value=>$self->invnum },
- } )
- );
-
- $self->send(@_);
-}
-
-=item send_csv OPTION => VALUE, ...
-
-Sends invoice as a CSV data-file to a remote host with the specified protocol.
-
-Options are:
-
-protocol - currently only "ftp"
-server
-username
-password
-dir
-
-The file will be named "N-YYYYMMDDHHMMSS.csv" where N is the invoice number
-and YYMMDDHHMMSS is a timestamp.
-
-See L</print_csv> for a description of the output format.
-
-=cut
-
-sub send_csv {
- my($self, %opt) = @_;
-
- #create file(s)
-
- my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/cust_bill";
- mkdir $spooldir, 0700 unless -d $spooldir;
-
- my $tracctnum = $self->invnum. time2str('-%Y%m%d%H%M%S', time);
- my $file = "$spooldir/$tracctnum.csv";
-
- my ( $header, $detail ) = $self->print_csv(%opt, 'tracctnum' => $tracctnum );
-
- open(CSV, ">$file") or die "can't open $file: $!";
- print CSV $header;
-
- print CSV $detail;
-
- close CSV;
-
- my $net;
- if ( $opt{protocol} eq 'ftp' ) {
- eval "use Net::FTP;";
- die $@ if $@;
- $net = Net::FTP->new($opt{server}) or die @$;
- } else {
- die "unknown protocol: $opt{protocol}";
- }
-
- $net->login( $opt{username}, $opt{password} )
- or die "can't FTP to $opt{username}\@$opt{server}: login error: $@";
-
- $net->binary or die "can't set binary mode";
-
- $net->cwd($opt{dir}) or die "can't cwd to $opt{dir}";
-
- $net->put($file) or die "can't put $file: $!";
-
- $net->quit;
-
- unlink $file;
-
-}
-
-=item spool_csv
-
-Spools CSV invoice data.
-
-Options are:
-
-=over 4
-
-=item format - 'default' or 'billco'
-
-=item dest - if set (to POST, EMAIL or FAX), only sends spools invoices if the customer has the corresponding invoice destinations set (see L<FS::cust_main_invoice>).
-
-=item agent_spools - if set to a true value, will spool to per-agent files rather than a single global file
-
-=item balanceover - if set, only spools the invoice if the total amount owed on this invoice and all older invoices is greater than the specified amount.
-
-=back
-
-=cut
-
-sub spool_csv {
- my($self, %opt) = @_;
-
- my $cust_main = $self->cust_main;
-
- if ( $opt{'dest'} ) {
- my %invoicing_list = map { /^(POST|FAX)$/ or 'EMAIL' =~ /^(.*)$/; $1 => 1 }
- $cust_main->invoicing_list;
- return 'N/A' unless $invoicing_list{$opt{'dest'}}
- || ! keys %invoicing_list;
- }
-
- if ( $opt{'balanceover'} ) {
- return 'N/A'
- if $cust_main->total_owed_date($self->_date) < $opt{'balanceover'};
- }
-
- my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/cust_bill";
- mkdir $spooldir, 0700 unless -d $spooldir;
-
- my $tracctnum = $self->invnum. time2str('-%Y%m%d%H%M%S', time);
-
- my $file =
- "$spooldir/".
- ( $opt{'agent_spools'} ? 'agentnum'.$cust_main->agentnum : 'spool' ).
- ( lc($opt{'format'}) eq 'billco' ? '-header' : '' ) .
- '.csv';
-
- my ( $header, $detail ) = $self->print_csv(%opt, 'tracctnum' => $tracctnum );
-
- open(CSV, ">>$file") or die "can't open $file: $!";
- flock(CSV, LOCK_EX);
- seek(CSV, 0, 2);
-
- print CSV $header;
-
- if ( lc($opt{'format'}) eq 'billco' ) {
-
- flock(CSV, LOCK_UN);
- close CSV;
-
- $file =
- "$spooldir/".
- ( $opt{'agent_spools'} ? 'agentnum'.$cust_main->agentnum : 'spool' ).
- '-detail.csv';
-
- open(CSV,">>$file") or die "can't open $file: $!";
- flock(CSV, LOCK_EX);
- seek(CSV, 0, 2);
- }
-
- print CSV $detail;
-
- flock(CSV, LOCK_UN);
- close CSV;
-
- return '';
-
-}
-
-=item print_csv OPTION => VALUE, ...
-
-Returns CSV data for this invoice.
-
-Options are:
-
-format - 'default' or 'billco'
-
-Returns a list consisting of two scalars. The first is a single line of CSV
-header information for this invoice. The second is one or more lines of CSV
-detail information for this invoice.
-
-If I<format> is not specified or "default", the fields of the CSV file are as
-follows:
-
-record_type, invnum, custnum, _date, charged, first, last, company, address1, address2, city, state, zip, country, pkg, setup, recur, sdate, edate
-
-=over 4
-
-=item record type - B<record_type> is either C<cust_bill> or C<cust_bill_pkg>
-
-B<record_type> is C<cust_bill> for the initial header line only. The
-last five fields (B<pkg> through B<edate>) are irrelevant, and all other
-fields are filled in.
-
-B<record_type> is C<cust_bill_pkg> for detail lines. Only the first two fields
-(B<record_type> and B<invnum>) and the last five fields (B<pkg> through B<edate>)
-are filled in.
-
-=item invnum - invoice number
-
-=item custnum - customer number
-
-=item _date - invoice date
-
-=item charged - total invoice amount
-
-=item first - customer first name
-
-=item last - customer first name
-
-=item company - company name
-
-=item address1 - address line 1
-
-=item address2 - address line 1
-
-=item city
-
-=item state
-
-=item zip
-
-=item country
-
-=item pkg - line item description
-
-=item setup - line item setup fee (one or both of B<setup> and B<recur> will be defined)
-
-=item recur - line item recurring fee (one or both of B<setup> and B<recur> will be defined)
-
-=item sdate - start date for recurring fee
-
-=item edate - end date for recurring fee
-
-=back
-
-If I<format> is "billco", the fields of the header CSV file are as follows:
-
- +-------------------------------------------------------------------+
- | FORMAT HEADER FILE |
- |-------------------------------------------------------------------|
- | Field | Description | Name | Type | Width |
- | 1 | N/A-Leave Empty | RC | CHAR | 2 |
- | 2 | N/A-Leave Empty | CUSTID | CHAR | 15 |
- | 3 | Transaction Account No | TRACCTNUM | CHAR | 15 |
- | 4 | Transaction Invoice No | TRINVOICE | CHAR | 15 |
- | 5 | Transaction Zip Code | TRZIP | CHAR | 5 |
- | 6 | Transaction Company Bill To | TRCOMPANY | CHAR | 30 |
- | 7 | Transaction Contact Bill To | TRNAME | CHAR | 30 |
- | 8 | Additional Address Unit Info | TRADDR1 | CHAR | 30 |
- | 9 | Bill To Street Address | TRADDR2 | CHAR | 30 |
- | 10 | Ancillary Billing Information | TRADDR3 | CHAR | 30 |
- | 11 | Transaction City Bill To | TRCITY | CHAR | 20 |
- | 12 | Transaction State Bill To | TRSTATE | CHAR | 2 |
- | 13 | Bill Cycle Close Date | CLOSEDATE | CHAR | 10 |
- | 14 | Bill Due Date | DUEDATE | CHAR | 10 |
- | 15 | Previous Balance | BALFWD | NUM* | 9 |
- | 16 | Pmt/CR Applied | CREDAPPLY | NUM* | 9 |
- | 17 | Total Current Charges | CURRENTCHG | NUM* | 9 |
- | 18 | Total Amt Due | TOTALDUE | NUM* | 9 |
- | 19 | Total Amt Due | AMTDUE | NUM* | 9 |
- | 20 | 30 Day Aging | AMT30 | NUM* | 9 |
- | 21 | 60 Day Aging | AMT60 | NUM* | 9 |
- | 22 | 90 Day Aging | AMT90 | NUM* | 9 |
- | 23 | Y/N | AGESWITCH | CHAR | 1 |
- | 24 | Remittance automation | SCANLINE | CHAR | 100 |
- | 25 | Total Taxes & Fees | TAXTOT | NUM* | 9 |
- | 26 | Customer Reference Number | CUSTREF | CHAR | 15 |
- | 27 | Federal Tax*** | FEDTAX | NUM* | 9 |
- | 28 | State Tax*** | STATETAX | NUM* | 9 |
- | 29 | Other Taxes & Fees*** | OTHERTAX | NUM* | 9 |
- +-------+-------------------------------+------------+------+-------+
-
-If I<format> is "billco", the fields of the detail CSV file are as follows:
-
- FORMAT FOR DETAIL FILE
- | | | |
- Field | Description | Name | Type | Width
- 1 | N/A-Leave Empty | RC | CHAR | 2
- 2 | N/A-Leave Empty | CUSTID | CHAR | 15
- 3 | Account Number | TRACCTNUM | CHAR | 15
- 4 | Invoice Number | TRINVOICE | CHAR | 15
- 5 | Line Sequence (sort order) | LINESEQ | NUM | 6
- 6 | Transaction Detail | DETAILS | CHAR | 100
- 7 | Amount | AMT | NUM* | 9
- 8 | Line Format Control** | LNCTRL | CHAR | 2
- 9 | Grouping Code | GROUP | CHAR | 2
- 10 | User Defined | ACCT CODE | CHAR | 15
-
-=cut
-
-sub print_csv {
- my($self, %opt) = @_;
-
- eval "use Text::CSV_XS";
- die $@ if $@;
-
- my $cust_main = $self->cust_main;
-
- my $csv = Text::CSV_XS->new({'always_quote'=>1});
-
- if ( lc($opt{'format'}) eq 'billco' ) {
-
- my $taxtotal = 0;
- $taxtotal += $_->{'amount'} foreach $self->_items_tax;
-
- my $duedate = '';
- if ( $conf->exists('invoice_default_terms')
- && $conf->config('invoice_default_terms')=~ /^\s*Net\s*(\d+)\s*$/ ) {
- $duedate = time2str("%m/%d/%Y", $self->_date + ($1*86400) );
- }
-
- my( $previous_balance, @unused ) = $self->previous; #previous balance
-
- my $pmt_cr_applied = 0;
- $pmt_cr_applied += $_->{'amount'}
- foreach ( $self->_items_payments, $self->_items_credits ) ;
-
- my $totaldue = sprintf('%.2f', $self->owed + $previous_balance);
-
- $csv->combine(
- '', # 1 | N/A-Leave Empty CHAR 2
- '', # 2 | N/A-Leave Empty CHAR 15
- $opt{'tracctnum'}, # 3 | Transaction Account No CHAR 15
- $self->invnum, # 4 | Transaction Invoice No CHAR 15
- $cust_main->zip, # 5 | Transaction Zip Code CHAR 5
- $cust_main->company, # 6 | Transaction Company Bill To CHAR 30
- #$cust_main->payname, # 7 | Transaction Contact Bill To CHAR 30
- $cust_main->contact, # 7 | Transaction Contact Bill To CHAR 30
- $cust_main->address2, # 8 | Additional Address Unit Info CHAR 30
- $cust_main->address1, # 9 | Bill To Street Address CHAR 30
- '', # 10 | Ancillary Billing Information CHAR 30
- $cust_main->city, # 11 | Transaction City Bill To CHAR 20
- $cust_main->state, # 12 | Transaction State Bill To CHAR 2
-
- # XXX ?
- time2str("%m/%d/%Y", $self->_date), # 13 | Bill Cycle Close Date CHAR 10
-
- # XXX ?
- $duedate, # 14 | Bill Due Date CHAR 10
-
- $previous_balance, # 15 | Previous Balance NUM* 9
- $pmt_cr_applied, # 16 | Pmt/CR Applied NUM* 9
- sprintf("%.2f", $self->charged), # 17 | Total Current Charges NUM* 9
- $totaldue, # 18 | Total Amt Due NUM* 9
- $totaldue, # 19 | Total Amt Due NUM* 9
- '', # 20 | 30 Day Aging NUM* 9
- '', # 21 | 60 Day Aging NUM* 9
- '', # 22 | 90 Day Aging NUM* 9
- 'N', # 23 | Y/N CHAR 1
- '', # 24 | Remittance automation CHAR 100
- $taxtotal, # 25 | Total Taxes & Fees NUM* 9
- $self->custnum, # 26 | Customer Reference Number CHAR 15
- '0', # 27 | Federal Tax*** NUM* 9
- sprintf("%.2f", $taxtotal), # 28 | State Tax*** NUM* 9
- '0', # 29 | Other Taxes & Fees*** NUM* 9
- );
-
- } else {
-
- $csv->combine(
- 'cust_bill',
- $self->invnum,
- $self->custnum,
- time2str("%x", $self->_date),
- sprintf("%.2f", $self->charged),
- ( map { $cust_main->getfield($_) }
- qw( first last company address1 address2 city state zip country ) ),
- map { '' } (1..5),
- ) or die "can't create csv";
- }
-
- my $header = $csv->string. "\n";
-
- my $detail = '';
- if ( lc($opt{'format'}) eq 'billco' ) {
-
- my $lineseq = 0;
- foreach my $item ( $self->_items_pkg ) {
-
- $csv->combine(
- '', # 1 | N/A-Leave Empty CHAR 2
- '', # 2 | N/A-Leave Empty CHAR 15
- $opt{'tracctnum'}, # 3 | Account Number CHAR 15
- $self->invnum, # 4 | Invoice Number CHAR 15
- $lineseq++, # 5 | Line Sequence (sort order) NUM 6
- $item->{'description'}, # 6 | Transaction Detail CHAR 100
- $item->{'amount'}, # 7 | Amount NUM* 9
- '', # 8 | Line Format Control** CHAR 2
- '', # 9 | Grouping Code CHAR 2
- '', # 10 | User Defined CHAR 15
- );
-
- $detail .= $csv->string. "\n";
-
- }
-
- } else {
-
- foreach my $cust_bill_pkg ( $self->cust_bill_pkg ) {
-
- my($pkg, $setup, $recur, $sdate, $edate);
- if ( $cust_bill_pkg->pkgnum ) {
-
- ($pkg, $setup, $recur, $sdate, $edate) = (
- $cust_bill_pkg->cust_pkg->part_pkg->pkg,
- ( $cust_bill_pkg->setup != 0
- ? sprintf("%.2f", $cust_bill_pkg->setup )
- : '' ),
- ( $cust_bill_pkg->recur != 0
- ? sprintf("%.2f", $cust_bill_pkg->recur )
- : '' ),
- ( $cust_bill_pkg->sdate
- ? time2str("%x", $cust_bill_pkg->sdate)
- : '' ),
- ($cust_bill_pkg->edate
- ?time2str("%x", $cust_bill_pkg->edate)
- : '' ),
- );
-
- } else { #pkgnum tax
- next unless $cust_bill_pkg->setup != 0;
- my $itemdesc = defined $cust_bill_pkg->dbdef_table->column('itemdesc')
- ? ( $cust_bill_pkg->itemdesc || 'Tax' )
- : 'Tax';
- ($pkg, $setup, $recur, $sdate, $edate) =
- ( $itemdesc, sprintf("%10.2f",$cust_bill_pkg->setup), '', '', '' );
- }
-
- $csv->combine(
- 'cust_bill_pkg',
- $self->invnum,
- ( map { '' } (1..11) ),
- ($pkg, $setup, $recur, $sdate, $edate)
- ) or die "can't create csv";
-
- $detail .= $csv->string. "\n";
-
- }
-
- }
-
- ( $header, $detail );
-
-}
-
-=item comp
-
-Pays this invoice with a compliemntary payment. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub comp {
- my $self = shift;
- my $cust_pay = new FS::cust_pay ( {
- 'invnum' => $self->invnum,
- 'paid' => $self->owed,
- '_date' => '',
- 'payby' => 'COMP',
- 'payinfo' => $self->cust_main->payinfo,
- 'paybatch' => '',
- } );
- $cust_pay->insert;
-}
-
-=item realtime_card
-
-Attempts to pay this invoice with a credit card payment via a
-Business::OnlinePayment realtime gateway. See
-http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment
-for supported processors.
-
-=cut
-
-sub realtime_card {
- my $self = shift;
- $self->realtime_bop( 'CC', @_ );
-}
-
-=item realtime_ach
-
-Attempts to pay this invoice with an electronic check (ACH) payment via a
-Business::OnlinePayment realtime gateway. See
-http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment
-for supported processors.
-
-=cut
-
-sub realtime_ach {
- my $self = shift;
- $self->realtime_bop( 'ECHECK', @_ );
-}
-
-=item realtime_lec
-
-Attempts to pay this invoice with phone bill (LEC) payment via a
-Business::OnlinePayment realtime gateway. See
-http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment
-for supported processors.
-
-=cut
-
-sub realtime_lec {
- my $self = shift;
- $self->realtime_bop( 'LEC', @_ );
-}
-
-sub realtime_bop {
- my( $self, $method ) = @_;
-
- my $cust_main = $self->cust_main;
- my $balance = $cust_main->balance;
- my $amount = ( $balance < $self->owed ) ? $balance : $self->owed;
- $amount = sprintf("%.2f", $amount);
- return "not run (balance $balance)" unless $amount > 0;
-
- my $description = 'Internet Services';
- if ( $conf->exists('business-onlinepayment-description') ) {
- my $dtempl = $conf->config('business-onlinepayment-description');
-
- my $agent_obj = $cust_main->agent
- or die "can't retreive agent for $cust_main (agentnum ".
- $cust_main->agentnum. ")";
- my $agent = $agent_obj->agent;
- my $pkgs = join(', ',
- map { $_->cust_pkg->part_pkg->pkg }
- grep { $_->pkgnum } $self->cust_bill_pkg
- );
- $description = eval qq("$dtempl");
- }
-
- $cust_main->realtime_bop($method, $amount,
- 'description' => $description,
- 'invnum' => $self->invnum,
- );
-
-}
-
-=item batch_card
-
-Adds a payment for this invoice to the pending credit card batch (see
-L<FS::cust_pay_batch>).
-
-=cut
-
-sub batch_card {
- my $self = shift;
- my $cust_main = $self->cust_main;
-
- my $amount = sprintf("%.2f", $cust_main->balance - $cust_main->in_transit_payments);
- return '' unless $amount > 0;
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $pay_batch = qsearchs('pay_batch', {'status' => 'O'});
-
- unless ( $pay_batch ) {
- $pay_batch = new FS::pay_batch;
- $pay_batch->setfield('status' => 'O');
- my $error = $pay_batch->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- die "error creating new batch: $error\n";
- }
- }
-
- my $old_cust_pay_batch = qsearchs('cust_pay_batch', {
- 'batchnum' => $pay_batch->getfield('batchnum'),
- 'custnum' => $cust_main->getfield('custnum'),
- } );
-
- my $cust_pay_batch = new FS::cust_pay_batch ( {
- 'batchnum' => $pay_batch->getfield('batchnum'),
- 'invnum' => $self->getfield('invnum'), # is there a better value?
- 'custnum' => $cust_main->getfield('custnum'),
- 'last' => $cust_main->getfield('last'),
- 'first' => $cust_main->getfield('first'),
- 'address1' => $cust_main->getfield('address1'),
- 'address2' => $cust_main->getfield('address2'),
- 'city' => $cust_main->getfield('city'),
- 'state' => $cust_main->getfield('state'),
- 'zip' => $cust_main->getfield('zip'),
- 'country' => $cust_main->getfield('country'),
- 'payby' => $cust_main->payby,
- 'payinfo' => $cust_main->payinfo,
- 'exp' => $cust_main->getfield('paydate'),
- 'payname' => $cust_main->getfield('payname'),
- 'amount' => $amount, # consolidating
- } );
-
- $cust_pay_batch->paybatchnum($old_cust_pay_batch->paybatchnum)
- if $old_cust_pay_batch;
-
- my $error;
- if ($old_cust_pay_batch) {
- $error = $cust_pay_batch->replace($old_cust_pay_batch)
- } else {
- $error = $cust_pay_batch->insert;
- }
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- die $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-sub _agent_template {
- my $self = shift;
- $self->_agent_plandata('agent_templatename');
-}
-
-sub _agent_invoice_from {
- my $self = shift;
- $self->_agent_plandata('agent_invoice_from');
-}
-
-sub _agent_plandata {
- my( $self, $option ) = @_;
-
- my $part_bill_event = qsearchs( 'part_bill_event',
- {
- 'payby' => $self->cust_main->payby,
- 'plan' => 'send_agent',
- 'plandata' => { 'op' => '~',
- 'value' => "(^|\n)agentnum ".
- '([0-9]*, )*'.
- $self->cust_main->agentnum.
- '(, [0-9]*)*'.
- "(\n|\$)",
- },
- },
- '',
- 'ORDER BY seconds LIMIT 1'
- );
-
- return '' unless $part_bill_event;
-
- if ( $part_bill_event->plandata =~ /^$option (.*)$/m ) {
- return $1;
- } else {
- warn "can't parse part_bill_event eventpart#". $part_bill_event->eventpart.
- " plandata for $option";
- return '';
- }
-
-}
-
-=item print_text [ TIME [ , TEMPLATE ] ]
-
-Returns an text invoice, as a list of lines.
-
-TIME an optional value used to control the printing of overdue messages. The
-default is now. It isn't the date of the invoice; that's the `_date' field.
-It is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-#still some false laziness w/_items stuff (and send_csv)
-sub print_text {
-
- my( $self, $today, $template ) = @_;
- $today ||= time;
-
-# my $invnum = $self->invnum;
- my $cust_main = $self->cust_main;
- $cust_main->payname( $cust_main->first. ' '. $cust_main->getfield('last') )
- unless $cust_main->payname && $cust_main->payby !~ /^(CHEK|DCHK)$/;
-
- my( $pr_total, @pr_cust_bill ) = $self->previous; #previous balance
-# my( $cr_total, @cr_cust_credit ) = $self->cust_credit; #credits
- #my $balance_due = $self->owed + $pr_total - $cr_total;
- my $balance_due = $self->owed + $pr_total;
-
- #my @collect = ();
- #my($description,$amount);
- @buf = ();
-
- #previous balance
- foreach ( @pr_cust_bill ) {
- push @buf, [
- "Previous Balance, Invoice #". $_->invnum.
- " (". time2str("%x",$_->_date). ")",
- $money_char. sprintf("%10.2f",$_->owed)
- ];
- }
- if (@pr_cust_bill) {
- push @buf,['','-----------'];
- push @buf,[ 'Total Previous Balance',
- $money_char. sprintf("%10.2f",$pr_total ) ];
- push @buf,['',''];
- }
-
- #new charges
- foreach my $cust_bill_pkg (
- ( grep { $_->pkgnum } $self->cust_bill_pkg ), #packages first
- ( grep { ! $_->pkgnum } $self->cust_bill_pkg ), #then taxes
- ) {
-
- my $desc = $cust_bill_pkg->desc;
-
- if ( $cust_bill_pkg->pkgnum > 0 ) {
-
- if ( $cust_bill_pkg->setup != 0 ) {
- my $description = $desc;
- $description .= ' Setup' if $cust_bill_pkg->recur != 0;
- push @buf, [ $description,
- $money_char. sprintf("%10.2f", $cust_bill_pkg->setup) ];
- push @buf,
- map { [ " ". $_->[0]. ": ". $_->[1], '' ] }
- $cust_bill_pkg->cust_pkg->h_labels($self->_date);
- }
-
- if ( $cust_bill_pkg->recur != 0 ) {
- push @buf, [
- "$desc (" . time2str("%x", $cust_bill_pkg->sdate) . " - " .
- time2str("%x", $cust_bill_pkg->edate) . ")",
- $money_char. sprintf("%10.2f", $cust_bill_pkg->recur)
- ];
- push @buf,
- map { [ " ". $_->[0]. ": ". $_->[1], '' ] }
- $cust_bill_pkg->cust_pkg->h_labels( $cust_bill_pkg->edate,
- $cust_bill_pkg->sdate );
- }
-
- push @buf, map { [ " $_", '' ] } $cust_bill_pkg->details;
-
- } else { #pkgnum tax or one-shot line item
-
- if ( $cust_bill_pkg->setup != 0 ) {
- push @buf, [ $desc,
- $money_char. sprintf("%10.2f", $cust_bill_pkg->setup) ];
- }
- if ( $cust_bill_pkg->recur != 0 ) {
- push @buf, [ "$desc (". time2str("%x", $cust_bill_pkg->sdate). " - "
- . time2str("%x", $cust_bill_pkg->edate). ")",
- $money_char. sprintf("%10.2f", $cust_bill_pkg->recur)
- ];
- }
-
- }
-
- }
-
- push @buf,['','-----------'];
- push @buf,['Total New Charges',
- $money_char. sprintf("%10.2f",$self->charged) ];
- push @buf,['',''];
-
- push @buf,['','-----------'];
- push @buf,['Total Charges',
- $money_char. sprintf("%10.2f",$self->charged + $pr_total) ];
- push @buf,['',''];
-
- #credits
- foreach ( $self->cust_credited ) {
-
- #something more elaborate if $_->amount ne $_->cust_credit->credited ?
-
- my $reason = substr($_->cust_credit->reason,0,32);
- $reason .= '...' if length($reason) < length($_->cust_credit->reason);
- $reason = " ($reason) " if $reason;
- push @buf,[
- "Credit #". $_->crednum. " (". time2str("%x",$_->cust_credit->_date) .")".
- $reason,
- $money_char. sprintf("%10.2f",$_->amount)
- ];
- }
- #foreach ( @cr_cust_credit ) {
- # push @buf,[
- # "Credit #". $_->crednum. " (" . time2str("%x",$_->_date) .")",
- # $money_char. sprintf("%10.2f",$_->credited)
- # ];
- #}
-
- #get & print payments
- foreach ( $self->cust_bill_pay ) {
-
- #something more elaborate if $_->amount ne ->cust_pay->paid ?
-
- push @buf,[
- "Payment received ". time2str("%x",$_->cust_pay->_date ),
- $money_char. sprintf("%10.2f",$_->amount )
- ];
- }
-
- #balance due
- my $balance_due_msg = $self->balance_due_msg;
-
- push @buf,['','-----------'];
- push @buf,[$balance_due_msg, $money_char.
- sprintf("%10.2f", $balance_due ) ];
-
- #create the template
- $template ||= $self->_agent_template;
- my $templatefile = 'invoice_template';
- $templatefile .= "_$template" if length($template);
- my @invoice_template = $conf->config($templatefile)
- or die "cannot load config file $templatefile";
- $invoice_lines = 0;
- my $wasfunc = 0;
- foreach ( grep /invoice_lines\(\d*\)/, @invoice_template ) { #kludgy
- /invoice_lines\((\d*)\)/;
- $invoice_lines += $1 || scalar(@buf);
- $wasfunc=1;
- }
- die "no invoice_lines() functions in template?" unless $wasfunc;
- my $invoice_template = new Text::Template (
- TYPE => 'ARRAY',
- SOURCE => [ map "$_\n", @invoice_template ],
- ) or die "can't create new Text::Template object: $Text::Template::ERROR";
- $invoice_template->compile()
- or die "can't compile template: $Text::Template::ERROR";
-
- #setup template variables
- package FS::cust_bill::_template; #!
- use vars qw( $invnum $date $page $total_pages @address $overdue @buf $agent );
-
- $invnum = $self->invnum;
- $date = $self->_date;
- $page = 1;
- $agent = $self->cust_main->agent->agent;
-
- if ( $FS::cust_bill::invoice_lines ) {
- $total_pages =
- int( scalar(@FS::cust_bill::buf) / $FS::cust_bill::invoice_lines );
- $total_pages++
- if scalar(@FS::cust_bill::buf) % $FS::cust_bill::invoice_lines;
- } else {
- $total_pages = 1;
- }
-
- #format address (variable for the template)
- my $l = 0;
- @address = ( '', '', '', '', '', '' );
- package FS::cust_bill; #!
- $FS::cust_bill::_template::address[$l++] =
- $cust_main->payname.
- ( ( $cust_main->payby eq 'BILL' ) && $cust_main->payinfo
- ? " (P.O. #". $cust_main->payinfo. ")"
- : ''
- )
- ;
- $FS::cust_bill::_template::address[$l++] = $cust_main->company
- if $cust_main->company;
- $FS::cust_bill::_template::address[$l++] = $cust_main->address1;
- $FS::cust_bill::_template::address[$l++] = $cust_main->address2
- if $cust_main->address2;
- $FS::cust_bill::_template::address[$l++] =
- $cust_main->city. ", ". $cust_main->state. " ". $cust_main->zip;
-
- my $countrydefault = $conf->config('countrydefault') || 'US';
- $FS::cust_bill::_template::address[$l++] = code2country($cust_main->country)
- unless $cust_main->country eq $countrydefault;
-
- # #overdue? (variable for the template)
- # $FS::cust_bill::_template::overdue = (
- # $balance_due > 0
- # && $today > $self->_date
- ## && $self->printed > 1
- # && $self->printed > 0
- # );
-
- #and subroutine for the template
- sub FS::cust_bill::_template::invoice_lines {
- my $lines = shift || scalar(@buf);
- map {
- scalar(@buf) ? shift @buf : [ '', '' ];
- }
- ( 1 .. $lines );
- }
-
- #and fill it in
- $FS::cust_bill::_template::page = 1;
- my $lines;
- my @collect;
- while (@buf) {
- push @collect, split("\n",
- $invoice_template->fill_in( PACKAGE => 'FS::cust_bill::_template' )
- );
- $FS::cust_bill::_template::page++;
- }
-
- map "$_\n", @collect;
-
-}
-
-=item print_latex [ TIME [ , TEMPLATE ] ]
-
-Internal method - returns a filename of a filled-in LaTeX template for this
-invoice (Note: add ".tex" to get the actual filename).
-
-See print_ps and print_pdf for methods that return PostScript and PDF output.
-
-TIME an optional value used to control the printing of overdue messages. The
-default is now. It isn't the date of the invoice; that's the `_date' field.
-It is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-#still some false laziness w/print_text and print_html (and send_csv) (mostly print_text should use _items stuff though)
-sub print_latex {
-
- my( $self, $today, $template ) = @_;
- $today ||= time;
- warn "FS::cust_bill::print_latex called on $self with suffix $template\n"
- if $DEBUG;
-
- my $cust_main = $self->cust_main;
- $cust_main->payname( $cust_main->first. ' '. $cust_main->getfield('last') )
- unless $cust_main->payname && $cust_main->payby !~ /^(CHEK|DCHK)$/;
-
- my( $pr_total, @pr_cust_bill ) = $self->previous; #previous balance
-# my( $cr_total, @cr_cust_credit ) = $self->cust_credit; #credits
- #my $balance_due = $self->owed + $pr_total - $cr_total;
- my $balance_due = $self->owed + $pr_total;
-
- #create the template
- $template ||= $self->_agent_template;
- my $templatefile = 'invoice_latex';
- my $suffix = length($template) ? "_$template" : '';
- $templatefile .= $suffix;
- my @invoice_template = map "$_\n", $conf->config($templatefile)
- or die "cannot load config file $templatefile";
-
- my($format, $text_template);
- if ( grep { /^%%Detail/ } @invoice_template ) {
- #change this to a die when the old code is removed
- warn "old-style invoice template $templatefile; ".
- "patch with conf/invoice_latex.diff or use new conf/invoice_latex*\n";
- $format = 'old';
- } else {
- $format = 'Text::Template';
- $text_template = new Text::Template(
- TYPE => 'ARRAY',
- SOURCE => \@invoice_template,
- DELIMITERS => [ '[@--', '--@]' ],
- );
-
- $text_template->compile()
- or die 'While compiling ' . $templatefile . ': ' . $Text::Template::ERROR;
- }
-
- my $returnaddress;
- if ( length($conf->config_orbase('invoice_latexreturnaddress', $template)) ) {
- $returnaddress = join("\n",
- $conf->config_orbase('invoice_latexreturnaddress', $template)
- );
- } else {
- $returnaddress = '~';
- }
-
- my %invoice_data = (
- 'invnum' => $self->invnum,
- 'date' => time2str('%b %o, %Y', $self->_date),
- 'today' => time2str('%b %o, %Y', $today),
- 'agent' => _latex_escape($cust_main->agent->agent),
- 'payname' => _latex_escape($cust_main->payname),
- 'company' => _latex_escape($cust_main->company),
- 'address1' => _latex_escape($cust_main->address1),
- 'address2' => _latex_escape($cust_main->address2),
- 'city' => _latex_escape($cust_main->city),
- 'state' => _latex_escape($cust_main->state),
- 'zip' => _latex_escape($cust_main->zip),
- 'footer' => join("\n", $conf->config_orbase('invoice_latexfooter', $template) ),
- 'smallfooter' => join("\n", $conf->config_orbase('invoice_latexsmallfooter', $template) ),
- 'returnaddress' => $returnaddress,
- 'quantity' => 1,
- 'terms' => $conf->config('invoice_default_terms') || 'Payable upon receipt',
- #'notes' => join("\n", $conf->config('invoice_latexnotes') ),
- 'conf_dir' => "$FS::UID::conf_dir/conf.$FS::UID::datasrc",
- );
-
- my $countrydefault = $conf->config('countrydefault') || 'US';
- if ( $cust_main->country eq $countrydefault ) {
- $invoice_data{'country'} = '';
- } else {
- $invoice_data{'country'} = _latex_escape(code2country($cust_main->country));
- }
-
- $invoice_data{'notes'} =
- join("\n",
-# #do variable substitutions in notes
-# map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- $conf->config_orbase('invoice_latexnotes', $template)
- );
- warn "invoice notes: ". $invoice_data{'notes'}. "\n"
- if $DEBUG;
-
- $invoice_data{'footer'} =~ s/\n+$//;
- $invoice_data{'smallfooter'} =~ s/\n+$//;
- $invoice_data{'notes'} =~ s/\n+$//;
-
- $invoice_data{'po_line'} =
- ( $cust_main->payby eq 'BILL' && $cust_main->payinfo )
- ? _latex_escape("Purchase Order #". $cust_main->payinfo)
- : '~';
-
- my @filled_in = ();
- if ( $format eq 'old' ) {
-
- my @line_item = ();
- my @total_item = ();
- while ( @invoice_template ) {
- my $line = shift @invoice_template;
-
- if ( $line =~ /^%%Detail\s*$/ ) {
-
- while ( ( my $line_item_line = shift @invoice_template )
- !~ /^%%EndDetail\s*$/ ) {
- push @line_item, $line_item_line;
- }
- foreach my $line_item ( $self->_items ) {
- #foreach my $line_item ( $self->_items_pkg ) {
- $invoice_data{'ref'} = $line_item->{'pkgnum'};
- $invoice_data{'description'} =
- _latex_escape($line_item->{'description'});
- if ( exists $line_item->{'ext_description'} ) {
- $invoice_data{'description'} .=
- "\\tabularnewline\n~~".
- join( "\\tabularnewline\n~~",
- map _latex_escape($_), @{$line_item->{'ext_description'}}
- );
- }
- $invoice_data{'amount'} = $line_item->{'amount'};
- $invoice_data{'product_code'} = $line_item->{'pkgpart'} || 'N/A';
- push @filled_in,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b } @line_item;
- }
-
- } elsif ( $line =~ /^%%TotalDetails\s*$/ ) {
-
- while ( ( my $total_item_line = shift @invoice_template )
- !~ /^%%EndTotalDetails\s*$/ ) {
- push @total_item, $total_item_line;
- }
-
- my @total_fill = ();
-
- my $taxtotal = 0;
- foreach my $tax ( $self->_items_tax ) {
- $invoice_data{'total_item'} = _latex_escape($tax->{'description'});
- $taxtotal += $tax->{'amount'};
- $invoice_data{'total_amount'} = '\dollar '. $tax->{'amount'};
- push @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
- }
-
- if ( $taxtotal ) {
- $invoice_data{'total_item'} = 'Sub-total';
- $invoice_data{'total_amount'} =
- '\dollar '. sprintf('%.2f', $self->charged - $taxtotal );
- unshift @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
- }
-
- $invoice_data{'total_item'} = '\textbf{Total}';
- $invoice_data{'total_amount'} =
- '\textbf{\dollar '. sprintf('%.2f', $self->charged + $pr_total ). '}';
- push @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
-
- #foreach my $thing ( sort { $a->_date <=> $b->_date } $self->_items_credits, $self->_items_payments
-
- # credits
- foreach my $credit ( $self->_items_credits ) {
- $invoice_data{'total_item'} = _latex_escape($credit->{'description'});
- #$credittotal
- $invoice_data{'total_amount'} = '-\dollar '. $credit->{'amount'};
- push @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
- }
-
- # payments
- foreach my $payment ( $self->_items_payments ) {
- $invoice_data{'total_item'} = _latex_escape($payment->{'description'});
- #$paymenttotal
- $invoice_data{'total_amount'} = '-\dollar '. $payment->{'amount'};
- push @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
- }
-
- $invoice_data{'total_item'} = '\textbf{'. $self->balance_due_msg. '}';
- $invoice_data{'total_amount'} =
- '\textbf{\dollar '. sprintf('%.2f', $self->owed + $pr_total ). '}';
- push @total_fill,
- map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
- @total_item;
-
- push @filled_in, @total_fill;
-
- } else {
- #$line =~ s/\$(\w+)/$invoice_data{$1}/eg;
- $line =~ s/\$(\w+)/exists($invoice_data{$1}) ? $invoice_data{$1} : nounder($1)/eg;
- push @filled_in, $line;
- }
-
- }
-
- sub nounder {
- my $var = $1;
- $var =~ s/_/\-/g;
- $var;
- }
-
- } elsif ( $format eq 'Text::Template' ) {
-
- my @detail_items = ();
- my @total_items = ();
-
- $invoice_data{'detail_items'} = \@detail_items;
- $invoice_data{'total_items'} = \@total_items;
-
- foreach my $line_item ( $self->_items ) {
- my $detail = {
- ext_description => [],
- };
- $detail->{'ref'} = $line_item->{'pkgnum'};
- $detail->{'quantity'} = 1;
- $detail->{'description'} = _latex_escape($line_item->{'description'});
- if ( exists $line_item->{'ext_description'} ) {
- @{$detail->{'ext_description'}} = map {
- _latex_escape($_);
- } @{$line_item->{'ext_description'}};
- }
- $detail->{'amount'} = $line_item->{'amount'};
- $detail->{'product_code'} = $line_item->{'pkgpart'} || 'N/A';
-
- push @detail_items, $detail;
- }
-
-
- my $taxtotal = 0;
- foreach my $tax ( $self->_items_tax ) {
- my $total = {};
- $total->{'total_item'} = _latex_escape($tax->{'description'});
- $taxtotal += $tax->{'amount'};
- $total->{'total_amount'} = '\dollar '. $tax->{'amount'};
- push @total_items, $total;
- }
-
- if ( $taxtotal ) {
- my $total = {};
- $total->{'total_item'} = 'Sub-total';
- $total->{'total_amount'} =
- '\dollar '. sprintf('%.2f', $self->charged - $taxtotal );
- unshift @total_items, $total;
- }
-
- {
- my $total = {};
- $total->{'total_item'} = '\textbf{Total}';
- $total->{'total_amount'} =
- '\textbf{\dollar '. sprintf('%.2f', $self->charged + $pr_total ). '}';
- push @total_items, $total;
- }
-
- #foreach my $thing ( sort { $a->_date <=> $b->_date } $self->_items_credits, $self->_items_payments
-
- # credits
- foreach my $credit ( $self->_items_credits ) {
- my $total;
- $total->{'total_item'} = _latex_escape($credit->{'description'});
- #$credittotal
- $total->{'total_amount'} = '-\dollar '. $credit->{'amount'};
- push @total_items, $total;
- }
-
- # payments
- foreach my $payment ( $self->_items_payments ) {
- my $total = {};
- $total->{'total_item'} = _latex_escape($payment->{'description'});
- #$paymenttotal
- $total->{'total_amount'} = '-\dollar '. $payment->{'amount'};
- push @total_items, $total;
- }
-
- {
- my $total;
- $total->{'total_item'} = '\textbf{'. $self->balance_due_msg. '}';
- $total->{'total_amount'} =
- '\textbf{\dollar '. sprintf('%.2f', $self->owed + $pr_total ). '}';
- push @total_items, $total;
- }
-
- } else {
- die "guru meditation #54";
- }
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- my $fh = new File::Temp( TEMPLATE => 'invoice.'. $self->invnum. '.XXXXXXXX',
- DIR => $dir,
- SUFFIX => '.tex',
- UNLINK => 0,
- ) or die "can't open temp file: $!\n";
- if ( $format eq 'old' ) {
- print $fh join('', @filled_in );
- } elsif ( $format eq 'Text::Template' ) {
- $text_template->fill_in(OUTPUT => $fh, HASH => \%invoice_data);
- } else {
- die "guru meditation #32";
- }
- close $fh;
-
- $fh->filename =~ /^(.*).tex$/ or die "unparsable filename: ". $fh->filename;
- return $1;
-
-}
-
-=item print_ps [ TIME [ , TEMPLATE ] ]
-
-Returns an postscript invoice, as a scalar.
-
-TIME an optional value used to control the printing of overdue messages. The
-default is now. It isn't the date of the invoice; that's the `_date' field.
-It is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-sub print_ps {
- my $self = shift;
-
- my $file = $self->print_latex(@_);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- chdir($dir);
-
- my $sfile = shell_quote $file;
-
- system("pslatex $sfile.tex >/dev/null 2>&1") == 0
- or die "pslatex $file.tex failed; see $file.log for details?\n";
- system("pslatex $sfile.tex >/dev/null 2>&1") == 0
- or die "pslatex $file.tex failed; see $file.log for details?\n";
-
- system('dvips', '-q', '-t', 'letter', "$file.dvi", '-o', "$file.ps" ) == 0
- or die "dvips failed";
-
- open(POSTSCRIPT, "<$file.ps")
- or die "can't open $file.ps: $! (error in LaTeX template?)\n";
-
- unlink("$file.dvi", "$file.log", "$file.aux", "$file.ps", "$file.tex");
-
- my $ps = '';
- while (<POSTSCRIPT>) {
- $ps .= $_;
- }
-
- close POSTSCRIPT;
-
- return $ps;
-
-}
-
-=item print_pdf [ TIME [ , TEMPLATE ] ]
-
-Returns an PDF invoice, as a scalar.
-
-TIME an optional value used to control the printing of overdue messages. The
-default is now. It isn't the date of the invoice; that's the `_date' field.
-It is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-sub print_pdf {
- my $self = shift;
-
- my $file = $self->print_latex(@_);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- chdir($dir);
-
- #system('pdflatex', "$file.tex");
- #system('pdflatex', "$file.tex");
- #! LaTeX Error: Unknown graphics extension: .eps.
-
- my $sfile = shell_quote $file;
-
- system("pslatex $sfile.tex >/dev/null 2>&1") == 0
- or die "pslatex $file.tex failed; see $file.log for details?\n";
- system("pslatex $sfile.tex >/dev/null 2>&1") == 0
- or die "pslatex $file.tex failed; see $file.log for details?\n";
-
- #system('dvipdf', "$file.dvi", "$file.pdf" );
- system(
- "dvips -q -t letter -f $sfile.dvi ".
- "| gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$sfile.pdf ".
- " -c save pop -"
- ) == 0
- or die "dvips | gs failed: $!";
-
- open(PDF, "<$file.pdf")
- or die "can't open $file.pdf: $! (error in LaTeX template?)\n";
-
- unlink("$file.dvi", "$file.log", "$file.aux", "$file.pdf", "$file.tex");
-
- my $pdf = '';
- while (<PDF>) {
- $pdf .= $_;
- }
-
- close PDF;
-
- return $pdf;
-
-}
-
-=item print_html [ TIME [ , TEMPLATE [ , CID ] ] ]
-
-Returns an HTML invoice, as a scalar.
-
-TIME an optional value used to control the printing of overdue messages. The
-default is now. It isn't the date of the invoice; that's the `_date' field.
-It is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-CID is a MIME Content-ID used to create a "cid:" URL for the logo image, used
-when emailing the invoice as part of a multipart/related MIME email.
-
-=cut
-
-#some falze laziness w/print_text and print_latex (and send_csv)
-sub print_html {
- my( $self, $today, $template, $cid ) = @_;
- $today ||= time;
-
- my $cust_main = $self->cust_main;
- $cust_main->payname( $cust_main->first. ' '. $cust_main->getfield('last') )
- unless $cust_main->payname && $cust_main->payby !~ /^(CHEK|DCHK)$/;
-
- $template ||= $self->_agent_template;
- my $templatefile = 'invoice_html';
- my $suffix = length($template) ? "_$template" : '';
- $templatefile .= $suffix;
- my @html_template = map "$_\n", $conf->config($templatefile)
- or die "cannot load config file $templatefile";
-
- my $html_template = new Text::Template(
- TYPE => 'ARRAY',
- SOURCE => \@html_template,
- DELIMITERS => [ '<%=', '%>' ],
- );
-
- $html_template->compile()
- or die 'While compiling ' . $templatefile . ': ' . $Text::Template::ERROR;
-
- my %invoice_data = (
- 'invnum' => $self->invnum,
- 'date' => time2str('%b&nbsp;%o,&nbsp;%Y', $self->_date),
- 'today' => time2str('%b %o, %Y', $today),
- 'agent' => encode_entities($cust_main->agent->agent),
- 'payname' => encode_entities($cust_main->payname),
- 'company' => encode_entities($cust_main->company),
- 'address1' => encode_entities($cust_main->address1),
- 'address2' => encode_entities($cust_main->address2),
- 'city' => encode_entities($cust_main->city),
- 'state' => encode_entities($cust_main->state),
- 'zip' => encode_entities($cust_main->zip),
- 'terms' => $conf->config('invoice_default_terms')
- || 'Payable upon receipt',
- 'cid' => $cid,
- 'template' => $template,
-# 'conf_dir' => "$FS::UID::conf_dir/conf.$FS::UID::datasrc",
- );
-
- if (
- defined( $conf->config_orbase('invoice_htmlreturnaddress', $template) )
- && length( $conf->config_orbase('invoice_htmlreturnaddress', $template) )
- ) {
- $invoice_data{'returnaddress'} =
- join("\n", $conf->config('invoice_htmlreturnaddress', $template) );
- } else {
- $invoice_data{'returnaddress'} =
- join("\n", map {
- s/~/&nbsp;/g;
- s/\\\\\*?\s*$/<BR>/;
- s/\\hyphenation\{[\w\s\-]+\}//;
- $_;
- }
- $conf->config_orbase( 'invoice_latexreturnaddress',
- $template
- )
- );
- }
-
- my $countrydefault = $conf->config('countrydefault') || 'US';
- if ( $cust_main->country eq $countrydefault ) {
- $invoice_data{'country'} = '';
- } else {
- $invoice_data{'country'} =
- encode_entities(code2country($cust_main->country));
- }
-
- if (
- defined( $conf->config_orbase('invoice_htmlnotes', $template) )
- && length( $conf->config_orbase('invoice_htmlnotes', $template) )
- ) {
- $invoice_data{'notes'} =
- join("\n", $conf->config_orbase('invoice_htmlnotes', $template) );
- } else {
- $invoice_data{'notes'} =
- join("\n", map {
- s/%%(.*)$/<!-- $1 -->/;
- s/\\section\*\{\\textsc\{(.)(.*)\}\}/<p><b><font size="+1">$1<\/font>\U$2<\/b>/;
- s/\\begin\{enumerate\}/<ol>/;
- s/\\item / <li>/;
- s/\\end\{enumerate\}/<\/ol>/;
- s/\\textbf\{(.*)\}/<b>$1<\/b>/;
- $_;
- }
- $conf->config_orbase('invoice_latexnotes', $template)
- );
- }
-
-# #do variable substitutions in notes
-# $invoice_data{'notes'} =
-# join("\n",
-# map { my $b=$_; $b =~ s/\$(\w+)/$invoice_data{$1}/eg; $b }
-# $conf->config_orbase('invoice_latexnotes', $suffix)
-# );
-
- if (
- defined( $conf->config_orbase('invoice_htmlfooter', $template) )
- && length( $conf->config_orbase('invoice_htmlfooter', $template) )
- ) {
- $invoice_data{'footer'} =
- join("\n", $conf->config_orbase('invoice_htmlfooter', $template) );
- } else {
- $invoice_data{'footer'} =
- join("\n", map { s/~/&nbsp;/g; s/\\\\\*?\s*$/<BR>/; $_; }
- $conf->config_orbase('invoice_latexfooter', $template)
- );
- }
-
- $invoice_data{'po_line'} =
- ( $cust_main->payby eq 'BILL' && $cust_main->payinfo )
- ? encode_entities("Purchase Order #". $cust_main->payinfo)
- : '';
-
- my $money_char = $conf->config('money_char') || '$';
-
- foreach my $line_item ( $self->_items ) {
- my $detail = {
- ext_description => [],
- };
- $detail->{'ref'} = $line_item->{'pkgnum'};
- $detail->{'description'} = encode_entities($line_item->{'description'});
- if ( exists $line_item->{'ext_description'} ) {
- @{$detail->{'ext_description'}} = map {
- encode_entities($_);
- } @{$line_item->{'ext_description'}};
- }
- $detail->{'amount'} = $money_char. $line_item->{'amount'};
- $detail->{'product_code'} = $line_item->{'pkgpart'} || 'N/A';
-
- push @{$invoice_data{'detail_items'}}, $detail;
- }
-
-
- my $taxtotal = 0;
- foreach my $tax ( $self->_items_tax ) {
- my $total = {};
- $total->{'total_item'} = encode_entities($tax->{'description'});
- $taxtotal += $tax->{'amount'};
- $total->{'total_amount'} = $money_char. $tax->{'amount'};
- push @{$invoice_data{'total_items'}}, $total;
- }
-
- if ( $taxtotal ) {
- my $total = {};
- $total->{'total_item'} = 'Sub-total';
- $total->{'total_amount'} =
- $money_char. sprintf('%.2f', $self->charged - $taxtotal );
- unshift @{$invoice_data{'total_items'}}, $total;
- }
-
- my( $pr_total, @pr_cust_bill ) = $self->previous; #previous balance
- {
- my $total = {};
- $total->{'total_item'} = '<b>Total</b>';
- $total->{'total_amount'} =
- "<b>$money_char". sprintf('%.2f', $self->charged + $pr_total ). '</b>';
- push @{$invoice_data{'total_items'}}, $total;
- }
-
- #foreach my $thing ( sort { $a->_date <=> $b->_date } $self->_items_credits, $self->_items_payments
-
- # credits
- foreach my $credit ( $self->_items_credits ) {
- my $total;
- $total->{'total_item'} = encode_entities($credit->{'description'});
- #$credittotal
- $total->{'total_amount'} = "-$money_char". $credit->{'amount'};
- push @{$invoice_data{'total_items'}}, $total;
- }
-
- # payments
- foreach my $payment ( $self->_items_payments ) {
- my $total = {};
- $total->{'total_item'} = encode_entities($payment->{'description'});
- #$paymenttotal
- $total->{'total_amount'} = "-$money_char". $payment->{'amount'};
- push @{$invoice_data{'total_items'}}, $total;
- }
-
- {
- my $total;
- $total->{'total_item'} = '<b>'. $self->balance_due_msg. '</b>';
- $total->{'total_amount'} =
- "<b>$money_char". sprintf('%.2f', $self->owed + $pr_total ). '</b>';
- push @{$invoice_data{'total_items'}}, $total;
- }
-
- $html_template->fill_in( HASH => \%invoice_data);
-}
-
-# quick subroutine for print_latex
-#
-# There are ten characters that LaTeX treats as special characters, which
-# means that they do not simply typeset themselves:
-# # $ % & ~ _ ^ \ { }
-#
-# TeX ignores blanks following an escaped character; if you want a blank (as
-# in "10% of ..."), you have to "escape" the blank as well ("10\%\ of ...").
-
-sub _latex_escape {
- my $value = shift;
- $value =~ s/([#\$%&~_\^{}])( )?/"\\$1". ( ( defined($2) && length($2) ) ? "\\$2" : '' )/ge;
- $value =~ s/([<>])/\$$1\$/g;
- $value;
-}
-
-#utility methods for print_*
-
-sub balance_due_msg {
- my $self = shift;
- my $msg = 'Balance Due';
- return $msg unless $conf->exists('invoice_default_terms');
- if ( $conf->config('invoice_default_terms') =~ /^\s*Net\s*(\d+)\s*$/ ) {
- $msg .= ' - Please pay by '. time2str("%x", $self->_date + ($1*86400) );
- } elsif ( $conf->config('invoice_default_terms') ) {
- $msg .= ' - '. $conf->config('invoice_default_terms');
- }
- $msg;
-}
-
-sub _items {
- my $self = shift;
- my @display = scalar(@_)
- ? @_
- : qw( _items_previous _items_pkg );
- #: qw( _items_pkg );
- #: qw( _items_previous _items_pkg _items_tax _items_credits _items_payments );
- my @b = ();
- foreach my $display ( @display ) {
- push @b, $self->$display(@_);
- }
- @b;
-}
-
-sub _items_previous {
- my $self = shift;
- my $cust_main = $self->cust_main;
- my( $pr_total, @pr_cust_bill ) = $self->previous; #previous balance
- my @b = ();
- foreach ( @pr_cust_bill ) {
- push @b, {
- 'description' => 'Previous Balance, Invoice #'. $_->invnum.
- ' ('. time2str('%x',$_->_date). ')',
- #'pkgpart' => 'N/A',
- 'pkgnum' => 'N/A',
- 'amount' => sprintf("%.2f", $_->owed),
- };
- }
- @b;
-
- #{
- # 'description' => 'Previous Balance',
- # #'pkgpart' => 'N/A',
- # 'pkgnum' => 'N/A',
- # 'amount' => sprintf("%10.2f", $pr_total ),
- # 'ext_description' => [ map {
- # "Invoice ". $_->invnum.
- # " (". time2str("%x",$_->_date). ") ".
- # sprintf("%10.2f", $_->owed)
- # } @pr_cust_bill ],
-
- #};
-}
-
-sub _items_pkg {
- my $self = shift;
- my @cust_bill_pkg = grep { $_->pkgnum } $self->cust_bill_pkg;
- $self->_items_cust_bill_pkg(\@cust_bill_pkg, @_);
-}
-
-sub _items_tax {
- my $self = shift;
- my @cust_bill_pkg = grep { ! $_->pkgnum } $self->cust_bill_pkg;
- $self->_items_cust_bill_pkg(\@cust_bill_pkg, @_);
-}
-
-sub _items_cust_bill_pkg {
- my $self = shift;
- my $cust_bill_pkg = shift;
-
- my @b = ();
- foreach my $cust_bill_pkg ( @$cust_bill_pkg ) {
-
- my $desc = $cust_bill_pkg->desc;
-
- if ( $cust_bill_pkg->pkgnum > 0 ) {
-
- if ( $cust_bill_pkg->setup != 0 ) {
- my $description = $desc;
- $description .= ' Setup' if $cust_bill_pkg->recur != 0;
- my @d = $cust_bill_pkg->cust_pkg->h_labels_short($self->_date);
- push @d, $cust_bill_pkg->details if $cust_bill_pkg->recur == 0;
- push @b, {
- description => $description,
- #pkgpart => $part_pkg->pkgpart,
- pkgnum => $cust_bill_pkg->pkgnum,
- amount => sprintf("%.2f", $cust_bill_pkg->setup),
- ext_description => \@d,
- };
- }
-
- if ( $cust_bill_pkg->recur != 0 ) {
- push @b, {
- description => "$desc (" .
- time2str('%x', $cust_bill_pkg->sdate). ' - '.
- time2str('%x', $cust_bill_pkg->edate). ')',
- #pkgpart => $part_pkg->pkgpart,
- pkgnum => $cust_bill_pkg->pkgnum,
- amount => sprintf("%.2f", $cust_bill_pkg->recur),
- ext_description =>
- [ $cust_bill_pkg->cust_pkg->h_labels_short( $cust_bill_pkg->edate,
- $cust_bill_pkg->sdate),
- $cust_bill_pkg->details,
- ],
- };
- }
-
- } else { #pkgnum tax or one-shot line item (??)
-
- if ( $cust_bill_pkg->setup != 0 ) {
- push @b, {
- 'description' => $desc,
- 'amount' => sprintf("%.2f", $cust_bill_pkg->setup),
- };
- }
- if ( $cust_bill_pkg->recur != 0 ) {
- push @b, {
- 'description' => "$desc (".
- time2str("%x", $cust_bill_pkg->sdate). ' - '.
- time2str("%x", $cust_bill_pkg->edate). ')',
- 'amount' => sprintf("%.2f", $cust_bill_pkg->recur),
- };
- }
-
- }
-
- }
-
- @b;
-
-}
-
-sub _items_credits {
- my $self = shift;
-
- my @b;
- #credits
- foreach ( $self->cust_credited ) {
-
- #something more elaborate if $_->amount ne $_->cust_credit->credited ?
-
- my $reason = $_->cust_credit->reason;
- #my $reason = substr($_->cust_credit->reason,0,32);
- #$reason .= '...' if length($reason) < length($_->cust_credit->reason);
- $reason = " ($reason) " if $reason;
- push @b, {
- #'description' => 'Credit ref\#'. $_->crednum.
- # " (". time2str("%x",$_->cust_credit->_date) .")".
- # $reason,
- 'description' => 'Credit applied '.
- time2str("%x",$_->cust_credit->_date). $reason,
- 'amount' => sprintf("%.2f",$_->amount),
- };
- }
- #foreach ( @cr_cust_credit ) {
- # push @buf,[
- # "Credit #". $_->crednum. " (" . time2str("%x",$_->_date) .")",
- # $money_char. sprintf("%10.2f",$_->credited)
- # ];
- #}
-
- @b;
-
-}
-
-sub _items_payments {
- my $self = shift;
-
- my @b;
- #get & print payments
- foreach ( $self->cust_bill_pay ) {
-
- #something more elaborate if $_->amount ne ->cust_pay->paid ?
-
- push @b, {
- 'description' => "Payment received ".
- time2str("%x",$_->cust_pay->_date ),
- 'amount' => sprintf("%.2f", $_->amount )
- };
- }
-
- @b;
-
-}
-
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item reprint
-
-=cut
-
-sub process_reprint {
- process_re_X('print', @_);
-}
-
-=item reemail
-
-=cut
-
-sub process_reemail {
- process_re_X('email', @_);
-}
-
-=item refax
-
-=cut
-
-sub process_refax {
- process_re_X('fax', @_);
-}
-
-use Storable qw(thaw);
-use Data::Dumper;
-use MIME::Base64;
-sub process_re_X {
- my( $method, $job ) = ( shift, shift );
- warn "process_re_X $method for job $job\n" if $DEBUG;
-
- my $param = thaw(decode_base64(shift));
- warn Dumper($param) if $DEBUG;
-
- re_X(
- $method,
- $job,
- %$param,
- );
-
-}
-
-sub re_X {
- my($method, $job, %param ) = @_;
-# [ 'begin', 'end', 'agentnum', 'open', 'days', 'newest_percust' ],
- if ( $DEBUG ) {
- warn "re_X $method for job $job with param:\n".
- join( '', map { " $_ => ". $param{$_}. "\n" } keys %param );
- }
-
- #some false laziness w/search/cust_bill.html
- my $distinct = '';
- my $orderby = 'ORDER BY cust_bill._date';
-
- my @where;
-
- if ( $param{'begin'} =~ /^(\d+)$/ ) {
- push @where, "cust_bill._date >= $1";
- }
- if ( $param{'end'} =~ /^(\d+)$/ ) {
- push @where, "cust_bill._date < $1";
- }
- if ( $param{'agentnum'} =~ /^(\d+)$/ ) {
- push @where, "cust_main.agentnum = $1";
- }
-
- my $owed =
- "charged - ( SELECT COALESCE(SUM(amount),0) FROM cust_bill_pay
- WHERE cust_bill_pay.invnum = cust_bill.invnum )
- - ( SELECT COALESCE(SUM(amount),0) FROM cust_credit_bill
- WHERE cust_credit_bill.invnum = cust_bill.invnum )";
-
- push @where, "0 != $owed"
- if $param{'open'};
-
- push @where, "cust_bill._date < ". (time-86400*$param{'days'})
- if $param{'days'};
-
- my $extra_sql = scalar(@where) ? 'WHERE '. join(' AND ', @where) : '';
-
- my $addl_from = 'left join cust_main using ( custnum )';
-
- if ( $param{'newest_percust'} ) {
- $distinct = 'DISTINCT ON ( cust_bill.custnum )';
- $orderby = 'ORDER BY cust_bill.custnum ASC, cust_bill._date DESC';
- #$count_query = "SELECT COUNT(DISTINCT cust_bill.custnum), 'N/A', 'N/A'";
- }
-
- my @cust_bill = qsearch( 'cust_bill',
- {},
- "$distinct cust_bill.*",
- $extra_sql,
- '',
- $addl_from
- );
-
- my( $num, $last, $min_sec ) = (0, time, 5); #progresbar foo
- foreach my $cust_bill ( @cust_bill ) {
- $cust_bill->$method();
-
- if ( $job ) { #progressbar foo
- $num++;
- if ( time - $min_sec > $last ) {
- my $error = $job->update_statustext(
- int( 100 * $num / scalar(@cust_bill) )
- );
- die $error if $error;
- $last = time;
- }
- }
-
- }
-
-}
-
-=back
-
-=head1 BUGS
-
-The delete method.
-
-print_text formatting (and some logic :/) is in source, but needs to be
-slurped in from a file. Also number of lines ($=).
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>, L<FS::cust_bill_pay>, L<FS::cust_pay>,
-L<FS::cust_bill_pkg>, L<FS::cust_bill_credit>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_ApplicationCommon.pm b/FS/FS/cust_bill_ApplicationCommon.pm
deleted file mode 100644
index fb06a4b..0000000
--- a/FS/FS/cust_bill_ApplicationCommon.pm
+++ /dev/null
@@ -1,243 +0,0 @@
-package FS::cust_bill_ApplicationCommon;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Schema qw( dbdef );
-use FS::Record qw( qsearch qsearchs dbh );
-
-@ISA = qw( FS::Record );
-
-$DEBUG = 1;
-
-=head1 NAME
-
-FS::cust_bill_ApplicationCommon - Base class for bill application classes
-
-=head1 SYNOPSIS
-
-use FS::cust_bill_ApplicationCommon;
-
-@ISA = qw( FS::cust_bill_ApplicationCommon );
-
-sub _app_source_name { 'payment'; }
-sub _app_source_table { 'cust_pay'; }
-sub _app_lineitem_breakdown_table { 'cust_bill_pay_pkg'; }
-
-=head1 DESCRIPTION
-
-FS::cust_bill_ApplicationCommon is intended as a base class for classes which
-represent application of things to invoices, currently payments
-(see L<FS::cust_bill_pay>) or credits (see L<FS::cust_credit_bill>).
-
-=head1 METHODS
-
-=item insert
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert(@_)
- || $self->apply_to_lineitems;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $app ( $self->lineitem_applications ) {
- my $error = $app->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item apply_to_lineitems
-
-Auto-applies this invoice application to specific line items, if possible.
-
-=cut
-
-sub apply_to_lineitems {
- my $self = shift;
-
- my @apply = ();
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my @open = $self->cust_bill->open_cust_bill_pkg; #FOR UPDATE...?
- warn scalar(@open). " open line items for invoice ".
- $self->cust_bill->invnum. "\n"
- if $DEBUG;
- my $total = 0;
- $total += $_->setup + $_->recur foreach @open;
- $total = sprintf('%.2f', $total);
-
- if ( $self->amount > $total ) {
- dbh->rollback if $oldAutoCommit;
- return "Can't apply a ". $self->_app_source_name. ' of $'. $self->amount.
- " greater than the remaining owed on line items (\$$total)";
- }
-
- #easy cases:
- # - one lineitem (a simple special case of:)
- # - amount is for whole invoice (well, all of remaining lineitem links)
- if ( $self->amount == $total ) {
-
- #@apply = map { [ $_, $_->amount ]; } @open;
- @apply = map { [ $_, $_->setup || $_->recur ]; } @open;
-
- } else {
-
- #slightly magic case:
- # - amount exactly and uniquely matches a single open lineitem
- # (you must be trying to pay or credit that item, then)
-
- my @same = grep { $_->setup == $self->amount
- || $_->recur == $self->amount
- }
- @open;
- @apply = map { [ $_, $self->amount ]; } @same
- if scalar(@same) == 1;
-
- }
-
- #and the rest:
- # - leave unapplied, for now
- # - eventually, auto-apply? sequentially? pro-rated against total remaining?
-
- # do the applicaiton(s)
- my $table = $self->lineitem_breakdown_table;
- my $source_key = dbdef->table($self->table)->primary_key;
- foreach my $apply ( @apply ) {
- my ( $cust_bill_pkg, $amount ) = @$apply;
- my $application = "FS::$table"->new( {
- $source_key => $self->$source_key(),
- 'billpkgnum' => $cust_bill_pkg->billpkgnum,
- 'amount' => $amount,
- 'setuprecur' => ( $cust_bill_pkg->setup > 0 ? 'setup' : 'recur' ),
- });
- my $error = $application->insert;
- if ( $error ) {
- dbh->rollbck if $oldAutoCommit;
- return $error;
- }
- }
-
- '';
-
-}
-
-=item lineitem_applications
-
-Returns all the specific line item applications for this invoice application.
-
-=cut
-
-sub lineitem_applications {
- my $self = shift;
- my $primary_key = dbdef->table($self->table)->primary_key;
- qsearchs({
- 'table' => $self->lineitem_breakdown_table,
- 'hashref' => { $primary_key => $self->$primary_key() },
- });
-
-}
-
-=item cust_bill
-
-Returns the invoice (see L<FS::cust_bill>)
-
-=cut
-
-sub cust_bill {
- my $self = shift;
- qsearchs( 'cust_bill', { 'invnum' => $self->invnum } );
-}
-
-=item lineitem_breakdown_table
-
-=cut
-
-sub lineitem_breakdown_table {
- my $self = shift;
- $self->_load_table($self->_app_lineitem_breakdown_table);
-}
-
-sub _load_table {
- my( $self, $table ) = @_;
- eval "use FS::$table";
- die $@ if $@;
- $table;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_bill_pay> and L<FS::cust_bill_pay_pkg>,
-L<FS::cust_credit_bill> and L<FS::cust_credit_bill_pkg>
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_event.pm b/FS/FS/cust_bill_event.pm
deleted file mode 100644
index 128e5a5..0000000
--- a/FS/FS/cust_bill_event.pm
+++ /dev/null
@@ -1,282 +0,0 @@
-package FS::cust_bill_event;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::cust_bill;
-use FS::part_bill_event;
-
-@ISA = qw(FS::cust_main_Mixin FS::Record);
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::cust_bill_event - Object methods for cust_bill_event records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill_event;
-
- $record = new FS::cust_bill_event \%hash;
- $record = new FS::cust_bill_event { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill_event object represents an complete invoice event.
-FS::cust_bill_event inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item eventnum - primary key
-
-=item invnum - invoice (see L<FS::cust_bill>)
-
-=item eventpart - event definition (see L<FS::part_bill_event>)
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item status - event status: B<done> or B<failed>
-
-=item statustext - additional status detail (i.e. error message)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new completed invoice event. To add the compelted invoice event to
-the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_bill_event'; }
-
-sub cust_linked { $_[0]->cust_main_custnum; }
-sub cust_unlinked_msg {
- my $self = shift;
- "WARNING: can't find cust_main.custnum ". $self->custnum.
- ' (cust_bill.invnum '. $self->invnum. ')';
-}
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid completed invoice event. If
-there is an error, returns the error, otherwise returns false. Called by the
-insert and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error = $self->ut_numbern('eventnum')
- || $self->ut_number('invnum')
- || $self->ut_number('eventpart')
- || $self->ut_number('_date')
- || $self->ut_enum('status', [qw( done failed )])
- || $self->ut_textn('statustext')
- ;
-
- return "Unknown invnum ". $self->invnum
- unless qsearchs( 'cust_bill' ,{ 'invnum' => $self->invnum } );
-
- return "Unknown eventpart ". $self->eventpart
- unless qsearchs( 'part_bill_event' ,{ 'eventpart' => $self->eventpart } );
-
- $self->SUPER::check;
-}
-
-=item part_bill_event
-
-Returns the invoice event definition (see L<FS::part_bill_event>) for this
-completed invoice event.
-
-=cut
-
-sub part_bill_event {
- my $self = shift;
- qsearchs( 'part_bill_event', { 'eventpart' => $self->eventpart } );
-}
-
-=item cust_bill
-
-Returns the invoice (see L<FS::cust_bill>) for this completed invoice event.
-
-=cut
-
-sub cust_bill {
- my $self = shift;
- qsearchs( 'cust_bill', { 'invnum' => $self->invnum } );
-}
-
-=item retry
-
-Changes the status of this event from B<done> to B<failed>, allowing it to be
-retried.
-
-=cut
-
-sub retry {
- my $self = shift;
- return '' unless $self->status eq 'done';
- my $old = ref($self)->new( { $self->hash } );
- $self->status('failed');
- $self->replace($old);
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item reprint
-
-=cut
-
-sub process_reprint {
- process_re_X('print', @_);
-}
-
-=item reemail
-
-=cut
-
-sub process_reemail {
- process_re_X('email', @_);
-}
-
-=item refax
-
-=cut
-
-sub process_refax {
- process_re_X('fax', @_);
-}
-
-use Storable qw(thaw);
-use Data::Dumper;
-use MIME::Base64;
-sub process_re_X {
- my( $method, $job ) = ( shift, shift );
-
- my $param = thaw(decode_base64(shift));
- warn Dumper($param) if $DEBUG;
-
- re_X(
- $method,
- $param->{'beginning'},
- $param->{'ending'},
- $param->{'failed'},
- $job,
- );
-
-}
-
-sub re_X {
- my($method, $beginning, $ending, $failed, $job) = @_;
-
- my $where = " WHERE plan LIKE 'send%'".
- " AND cust_bill_event._date >= $beginning".
- " AND cust_bill_event._date <= $ending";
- $where .= " AND statustext != '' AND statustext IS NOT NULL"
- if $failed;
-
- my $from = 'LEFT JOIN part_bill_event USING ( eventpart )';
-
- my @cust_bill_event = qsearch( 'cust_bill_event', {}, '', $where, '', $from );
-
- my( $num, $last, $min_sec ) = (0, time, 5); #progresbar foo
- foreach my $cust_bill_event ( @cust_bill_event ) {
-
- $cust_bill_event->cust_bill->$method(
- $cust_bill_event->part_bill_event->templatename
- );
-
- if ( $job ) { #progressbar foo
- $num++;
- if ( time - $min_sec > $last ) {
- my $error = $job->update_statustext(
- int( 100 * $num / scalar(@cust_bill_event) )
- );
- die $error if $error;
- $last = time;
- }
- }
-
- }
-
- #this doesn't work, but it would be nice
- #if ( $job ) { #progressbar foo
- # my $error = $job->update_statustext(
- # scalar(@cust_bill_event). " invoices re-${method}ed"
- # );
- # die $error if $error;
- #}
-
-}
-
-=back
-
-=head1 BUGS
-
-Far too early in the morning.
-
-=head1 SEE ALSO
-
-L<FS::part_bill_event>, L<FS::cust_bill>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_pay.pm b/FS/FS/cust_bill_pay.pm
deleted file mode 100644
index 67f8eaf..0000000
--- a/FS/FS/cust_bill_pay.pm
+++ /dev/null
@@ -1,163 +0,0 @@
-package FS::cust_bill_pay;
-
-use strict;
-use vars qw( @ISA $conf );
-use FS::Record qw( qsearchs );
-use FS::cust_bill_ApplicationCommon;
-use FS::cust_bill;
-use FS::cust_pay;
-
-@ISA = qw( FS::cust_bill_ApplicationCommon );
-
-#ask FS::UID to run this stuff for us later
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
-} );
-
-=head1 NAME
-
-FS::cust_bill_pay - Object methods for cust_bill_pay records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill_pay;
-
- $record = new FS::cust_bill_pay \%hash;
- $record = new FS::cust_bill_pay { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill_pay object represents the application of a payment to a
-specific invoice. FS::cust_bill_pay inherits from
-FS::cust_bill_ApplicationCommon and FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item billpaynum - primary key (assigned automatically)
-
-=item invnum - Invoice (see L<FS::cust_bill>)
-
-=item paynum - Payment (see L<FS::cust_pay>)
-
-=item amount - Amount of the payment to apply to the specific invoice.
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_bill_pay'; }
-
-sub _app_source_name { 'payment'; }
-sub _app_source_table { 'cust_pay'; }
-sub _app_lineitem_breakdown_table { 'cust_bill_pay_pkg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this payment application, unless the closed flag for the parent payment
-(see L<FS::cust_pay>) is set.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete application for closed payment"
- if $self->cust_pay->closed =~ /^Y/i;
- return "Can't delete application for closed invoice"
- if $self->cust_bill->closed =~ /^Y/i;
- $self->SUPER::delete(@_);
-}
-
-=item replace OLD_RECORD
-
-Currently unimplemented (accounting reasons).
-
-=cut
-
-sub replace {
- return "Can't modify application of payment!";
-}
-
-=item check
-
-Checks all fields to make sure this is a valid payment application. If there
-is an error, returns the error, otherwise returns false. Called by the insert
-method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('billpaynum')
- || $self->ut_foreign_key('paynum', 'cust_pay', 'paynum' )
- || $self->ut_foreign_key('invnum', 'cust_bill', 'invnum' )
- || $self->ut_numbern('_date')
- || $self->ut_money('amount')
- ;
- return $error if $error;
-
- return "amount must be > 0" if $self->amount <= 0;
-
- $self->_date(time) unless $self->_date;
-
- return "Cannot apply more than remaining value of invoice"
- unless $self->amount <= $self->cust_bill->owed;
-
- return "Cannot apply more than remaining value of payment"
- unless $self->amount <= $self->cust_pay->unapplied;
-
- $self->SUPER::check;
-}
-
-=item cust_pay
-
-Returns the payment (see L<FS::cust_pay>)
-
-=cut
-
-sub cust_pay {
- my $self = shift;
- qsearchs( 'cust_pay', { 'paynum' => $self->paynum } );
-}
-
-=back
-
-=head1 BUGS
-
-Delete and replace methods.
-
-=head1 SEE ALSO
-
-L<FS::cust_pay>, L<FS::cust_bill>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_pay_pkg.pm b/FS/FS/cust_bill_pay_pkg.pm
deleted file mode 100644
index af331cd..0000000
--- a/FS/FS/cust_bill_pay_pkg.pm
+++ /dev/null
@@ -1,132 +0,0 @@
-package FS::cust_bill_pay_pkg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cust_bill_pay_pkg - Object methods for cust_bill_pay_pkg records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill_pay_pkg;
-
- $record = new FS::cust_bill_pay_pkg \%hash;
- $record = new FS::cust_bill_pay_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill_pay_pkg object represents application of a payment (see
-L<FS::cust_bill_pay>) to a specific line item within an invoice (see
-L<FS::cust_bill_pkg>). FS::cust_bill_pay_pkg inherits from FS::Record. The
-following fields are currently supported:
-
-=over 4
-
-=item billpaypkgnum - primary key
-
-=item billpaynum - Payment application to the overall invoice (see L<FS::cust_bill_pay>)
-
-=item billpkgnum - Line item to which payment is applied (see L<FS::cust_bill_pkg>)
-
-=item amount - Amount of the payment applied to this line item.
-
-=item setuprecur - 'setup' or 'recur', designates whether the payment was applied to the setup or recurring portion of the line item.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_bill_pay_pkg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid payment application. If there
-is an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('billpaypkgnum')
- || $self->ut_foreign_key('billpaynum', 'cust_bill_pay', 'billpaynum' )
- || $self->ut_foreign_key('billpkgnum', 'cust_bill_pkg', 'billpkgnum' )
- || $self->ut_money('amount')
- || $self->ut_enum('setuprecur', [ 'setup', 'recur' ] )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-B<setuprecur> field is a kludge to compensate for cust_bill_pkg having separate
-setup and recur fields. It should be removed once that's fixed.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_pkg.pm b/FS/FS/cust_bill_pkg.pm
deleted file mode 100644
index e41a3c5..0000000
--- a/FS/FS/cust_bill_pkg.pm
+++ /dev/null
@@ -1,309 +0,0 @@
-package FS::cust_bill_pkg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs dbdef dbh );
-use FS::cust_main_Mixin;
-use FS::cust_pkg;
-use FS::cust_bill;
-use FS::cust_bill_pkg_detail;
-use FS::cust_bill_pay_pkg;
-use FS::cust_credit_bill_pkg;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-=head1 NAME
-
-FS::cust_bill_pkg - Object methods for cust_bill_pkg records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill_pkg;
-
- $record = new FS::cust_bill_pkg \%hash;
- $record = new FS::cust_bill_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill_pkg object represents an invoice line item.
-FS::cust_bill_pkg inherits from FS::Record. The following fields are currently
-supported:
-
-=over 4
-
-=item billpkgnum - primary key
-
-=item invnum - invoice (see L<FS::cust_bill>)
-
-=item pkgnum - package (see L<FS::cust_pkg>) or 0 for the special virtual sales tax package, or -1 for the virtual line item (itemdesc is used for the line)
-
-=item setup - setup fee
-
-=item recur - recurring fee
-
-=item sdate - starting date of recurring fee
-
-=item edate - ending date of recurring fee
-
-=item itemdesc - Line item description (currentlty used only when pkgnum is 0 or -1)
-
-=back
-
-sdate and edate are specified as UNIX timestamps; see L<perlfunc/"time">. Also
-see L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new line item. To add the line item to the database, see
-L<"insert">. Line items are normally created by calling the bill method of a
-customer object (see L<FS::cust_main>).
-
-=cut
-
-sub table { 'cust_bill_pkg'; }
-
-=item insert
-
-Adds this line item to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- unless ( defined dbdef->table('cust_bill_pkg_detail') && $self->get('details') ) {
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- return '';
- }
-
- foreach my $detail ( @{$self->get('details')} ) {
- my $cust_bill_pkg_detail = new FS::cust_bill_pkg_detail {
- 'pkgnum' => $self->pkgnum,
- 'invnum' => $self->invnum,
- 'detail' => $detail,
- };
- $error = $cust_bill_pkg_detail->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item delete
-
-Currently unimplemented. I don't remove line items because there would then be
-no record the items ever existed (which is bad, no?)
-
-=cut
-
-sub delete {
- return "Can't delete cust_bill_pkg records!";
-}
-
-=item replace OLD_RECORD
-
-Currently unimplemented. This would be even more of an accounting nightmare
-than deleteing the items. Just don't do it.
-
-=cut
-
-sub replace {
- return "Can't modify cust_bill_pkg records!";
-}
-
-=item check
-
-Checks all fields to make sure this is a valid line item. If there is an
-error, returns the error, otherwise returns false. Called by the insert
-method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('billpkgnum')
- || $self->ut_snumber('pkgnum')
- || $self->ut_number('invnum')
- || $self->ut_money('setup')
- || $self->ut_money('recur')
- || $self->ut_numbern('sdate')
- || $self->ut_numbern('edate')
- || $self->ut_textn('itemdesc')
- ;
- return $error if $error;
-
- #if ( $self->pkgnum != 0 ) { #allow unchecked pkgnum 0 for tax! (add to part_pkg?)
- if ( $self->pkgnum > 0 ) { #allow -1 for non-pkg line items and 0 for tax (add to part_pkg?)
- return "Unknown pkgnum ". $self->pkgnum
- unless qsearchs( 'cust_pkg', { 'pkgnum' => $self->pkgnum } );
- }
-
- return "Unknown invnum"
- unless qsearchs( 'cust_bill' ,{ 'invnum' => $self->invnum } );
-
- $self->SUPER::check;
-}
-
-=item cust_pkg
-
-Returns the package (see L<FS::cust_pkg>) for this invoice line item.
-
-=cut
-
-sub cust_pkg {
- my $self = shift;
- qsearchs( 'cust_pkg', { 'pkgnum' => $self->pkgnum } );
-}
-
-=item details
-
-Returns an array of detail information for the invoice line item.
-
-=cut
-
-sub details {
- my $self = shift;
- return () unless defined dbdef->table('cust_bill_pkg_detail');
- map { $_->detail }
- qsearch ( 'cust_bill_pkg_detail', { 'pkgnum' => $self->pkgnum,
- 'invnum' => $self->invnum, } );
- #qsearch ( 'cust_bill_pkg_detail', { 'lineitemnum' => $self->lineitemnum });
-}
-
-=item desc
-
-Returns a description for this line item. For typical line items, this is the
-I<pkg> field of the corresponding B<FS::part_pkg> object (see L<FS::part_pkg>).
-For one-shot line items and named taxes, it is the I<itemdesc> field of this
-line item, and for generic taxes, simply returns "Tax".
-
-=cut
-
-sub desc {
- my $self = shift;
-
- if ( $self->pkgnum > 0 ) {
- $self->cust_pkg->part_pkg->pkg;
- } else {
- $self->itemdesc || 'Tax';
- }
-}
-
-=item owed_setup
-
-Returns the amount owed (still outstanding) on this line item's setup fee,
-which is the amount of the line item minus all payment applications (see
-L<FS::cust_bill_pay_pkg> and credit applications (see
-L<FS::cust_credit_bill_pkg>).
-
-=cut
-
-sub owed_setup {
- my $self = shift;
- $self->owed('setup', @_);
-}
-
-=item owed_recur
-
-Returns the amount owed (still outstanding) on this line item's recurring fee,
-which is the amount of the line item minus all payment applications (see
-L<FS::cust_bill_pay_pkg> and credit applications (see
-L<FS::cust_credit_bill_pkg>).
-
-=cut
-
-sub owed_recur {
- my $self = shift;
- $self->owed('recur', @_);
-}
-
-# modeled after cust_bill::owed...
-sub owed {
- my( $self, $field ) = @_;
- my $balance = $self->$field();
- $balance -= $_->amount foreach ( $self->cust_bill_pay_pkg($field) );
- $balance -= $_->amount foreach ( $self->cust_credit_bill_pkg($field) );
- $balance = sprintf( '%.2f', $balance );
- $balance =~ s/^\-0\.00$/0.00/; #yay ieee fp
- $balance;
-}
-
-sub cust_bill_pay_pkg {
- my( $self, $field ) = @_;
- qsearch( 'cust_bill_pay_pkg', { 'billpkgnum' => $self->billpkgnum,
- 'setuprecur' => $field,
- }
- );
-}
-
-sub cust_credit_bill_pkg {
- my( $self, $field ) = @_;
- qsearch( 'cust_credit_bill_pkg', { 'billpkgnum' => $self->billpkgnum,
- 'setuprecur' => $field,
- }
- );
-}
-
-=back
-
-=head1 BUGS
-
-setup and recur shouldn't be separate fields. There should be one "amount"
-field and a flag to tell you if it is a setup/one-time fee or a recurring fee.
-
-A line item with both should really be two separate records (preserving
-sdate and edate for setup fees for recurring packages - that information may
-be valuable later). Invoice generation (cust_main::bill), invoice printing
-(cust_bill), tax reports (report_tax.cgi) and line item reports
-(cust_bill_pkg.cgi) would need to be updated.
-
-owed_setup and owed_recur could then be repaced by just owed, and
-cust_bill::open_cust_bill_pkg and
-cust_bill_ApplicationCommon::apply_to_lineitems could be simplified.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_bill>, L<FS::cust_pkg>, L<FS::cust_main>, schema.html
-from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_bill_pkg_detail.pm b/FS/FS/cust_bill_pkg_detail.pm
deleted file mode 100644
index 4156816..0000000
--- a/FS/FS/cust_bill_pkg_detail.pm
+++ /dev/null
@@ -1,124 +0,0 @@
-package FS::cust_bill_pkg_detail;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cust_bill_pkg_detail - Object methods for cust_bill_pkg_detail records
-
-=head1 SYNOPSIS
-
- use FS::cust_bill_pkg_detail;
-
- $record = new FS::cust_bill_pkg_detail \%hash;
- $record = new FS::cust_bill_pkg_detail { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_bill_pkg_detail object represents additional detail information for
-an invoice line item (see L<FS::cust_bill_pkg>). FS::cust_bill_pkg_detail
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item detailnum - primary key
-
-=item pkgnum -
-
-=item invnum -
-
-=item detail - detail description
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new line item detail. To add the line item detail to the database,
-see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_bill_pkg_detail'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid line item detail. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('detailnum')
- || $self->ut_foreign_key('pkgnum', 'cust_pkg', 'pkgnum')
- || $self->ut_foreign_key('invnum', 'cust_bill', 'invnum')
- || $self->ut_text('detail')
- || $self->SUPER::check
- ;
-
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_bill_pkg>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_credit.pm b/FS/FS/cust_credit.pm
deleted file mode 100644
index 9cc92d2..0000000
--- a/FS/FS/cust_credit.pm
+++ /dev/null
@@ -1,339 +0,0 @@
-package FS::cust_credit;
-
-use strict;
-use vars qw( @ISA $conf $unsuspendauto );
-use Date::Format;
-use FS::UID qw( dbh getotaker );
-use FS::Misc qw(send_email);
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::cust_main;
-use FS::cust_refund;
-use FS::cust_credit_bill;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-#ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::cust_credit'} = sub {
-
- $conf = new FS::Conf;
- $unsuspendauto = $conf->exists('unsuspendauto');
-
-};
-
-=head1 NAME
-
-FS::cust_credit - Object methods for cust_credit records
-
-=head1 SYNOPSIS
-
- use FS::cust_credit;
-
- $record = new FS::cust_credit \%hash;
- $record = new FS::cust_credit { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_credit object represents a credit; the equivalent of a negative
-B<cust_bill> record (see L<FS::cust_bill>). FS::cust_credit inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item crednum - primary key (assigned automatically for new credits)
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item amount - amount of the credit
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item otaker - order taker (assigned automatically, see L<FS::UID>)
-
-=item reason - text
-
-=item closed - books closed flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new credit. To add the credit to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_credit'; }
-sub cust_linked { $_[0]->cust_main_custnum; }
-sub cust_unlinked_msg {
- my $self = shift;
- "WARNING: can't find cust_main.custnum ". $self->custnum.
- ' (cust_credit.crednum '. $self->crednum. ')';
-}
-
-=item insert
-
-Adds this credit to the database ("Posts" the credit). If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $cust_main = qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
- my $old_balance = $cust_main->balance;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error inserting $self: $error";
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- #false laziness w/ cust_credit::insert
- if ( $unsuspendauto && $old_balance && $cust_main->balance <= 0 ) {
- my @errors = $cust_main->unsuspend;
- #return
- # side-fx with nested transactions? upstack rolls back?
- warn "WARNING:Errors unsuspending customer ". $cust_main->custnum. ": ".
- join(' / ', @errors)
- if @errors;
- }
- #eslaf
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Currently unimplemented.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete closed credit" if $self->closed =~ /^Y/i;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_credit_bill ( $self->cust_credit_bill ) {
- my $error = $cust_credit_bill->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $conf->config('deletecredits') ne '' ) {
-
- my $cust_main = qsearchs('cust_main',{ 'custnum' => $self->custnum });
-
- my $error = send_email(
- 'from' => $conf->config('invoice_from'), #??? well as good as any
- 'to' => $conf->config('deletecredits'),
- 'subject' => 'FREESIDE NOTIFICATION: Credit deleted',
- 'body' => [
- "This is an automatic message from your Freeside installation\n",
- "informing you that the following credit has been deleted:\n",
- "\n",
- 'crednum: '. $self->crednum. "\n",
- 'custnum: '. $self->custnum.
- " (". $cust_main->last. ", ". $cust_main->first. ")\n",
- 'amount: $'. sprintf("%.2f", $self->amount). "\n",
- 'date: '. time2str("%a %b %e %T %Y", $self->_date). "\n",
- 'reason: '. $self->reason. "\n",
- ],
- );
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't send credit deletion notification: $error";
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item replace OLD_RECORD
-
-Credits may not be modified; there would then be no record the credit was ever
-posted.
-
-=cut
-
-sub replace {
- #return "Can't modify credit!"
- my $self = shift;
- return "Can't modify closed credit" if $self->closed =~ /^Y/i;
- $self->SUPER::replace(@_);
-}
-
-=item check
-
-Checks all fields to make sure this is a valid credit. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('crednum')
- || $self->ut_number('custnum')
- || $self->ut_numbern('_date')
- || $self->ut_money('amount')
- || $self->ut_textn('reason')
- || $self->ut_enum('closed', [ '', 'Y' ])
- ;
- return $error if $error;
-
- return "amount must be > 0 " if $self->amount <= 0;
-
- return "Unknown customer"
- unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-
- $self->_date(time) unless $self->_date;
-
- $self->otaker(getotaker);
-
- $self->SUPER::check;
-}
-
-=item cust_refund
-
-Depreciated. See the cust_credit_refund method.
-
-#Returns all refunds (see L<FS::cust_refund>) for this credit.
-
-=cut
-
-sub cust_refund {
- use Carp;
- croak "FS::cust_credit->cust_pay depreciated; see ".
- "FS::cust_credit->cust_credit_refund";
- #my $self = shift;
- #sort { $a->_date <=> $b->_date }
- # qsearch( 'cust_refund', { 'crednum' => $self->crednum } )
- #;
-}
-
-=item cust_credit_refund
-
-Returns all refund applications (see L<FS::cust_credit_refund>) for this credit.
-
-=cut
-
-sub cust_credit_refund {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_credit_refund', { 'crednum' => $self->crednum } )
- ;
-}
-
-=item cust_credit_bill
-
-Returns all application to invoices (see L<FS::cust_credit_bill>) for this
-credit.
-
-=cut
-
-sub cust_credit_bill {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_credit_bill', { 'crednum' => $self->crednum } )
- ;
-}
-
-=item credited
-
-Returns the amount of this credit that is still outstanding; which is
-amount minus all refund applications (see L<FS::cust_credit_refund>) and
-applications to invoices (see L<FS::cust_credit_bill>).
-
-=cut
-
-sub credited {
- my $self = shift;
- my $amount = $self->amount;
- $amount -= $_->amount foreach ( $self->cust_credit_refund );
- $amount -= $_->amount foreach ( $self->cust_credit_bill );
- sprintf( "%.2f", $amount );
-}
-
-=item cust_main
-
-Returns the customer (see L<FS::cust_main>) for this credit.
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-
-=back
-
-=head1 BUGS
-
-The delete method. The replace method.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_credit_refund>, L<FS::cust_refund>,
-L<FS::cust_credit_bill> L<FS::cust_bill>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_credit_bill.pm b/FS/FS/cust_credit_bill.pm
deleted file mode 100644
index c015ec1..0000000
--- a/FS/FS/cust_credit_bill.pm
+++ /dev/null
@@ -1,166 +0,0 @@
-package FS::cust_credit_bill;
-
-use strict;
-use vars qw( @ISA $conf );
-use FS::UID qw( getotaker );
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_bill_ApplicationCommon;
-use FS::cust_bill;
-use FS::cust_credit;
-
-@ISA = qw( FS::cust_bill_ApplicationCommon );
-
-#ask FS::UID to run this stuff for us later
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
-} );
-
-=head1 NAME
-
-FS::cust_credit_bill - Object methods for cust_credit_bill records
-
-=head1 SYNOPSIS
-
- use FS::cust_credit_bill;
-
- $record = new FS::cust_credit_bill \%hash;
- $record = new FS::cust_credit_bill { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_credit_bill object represents application of a credit (see
-L<FS::cust_credit>) to an invoice (see L<FS::cust_bill>). FS::cust_credit_bill
-inherits from FS::cust_bill_ApplicationCommon and FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item creditbillnum - primary key
-
-=item crednum - credit being applied
-
-=item invnum - invoice to which credit is applied (see L<FS::cust_bill>)
-
-=item amount - amount of the credit applied
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new cust_credit_bill. To add the cust_credit_bill to the database,
-see L<"insert">.
-
-=cut
-
-sub table { 'cust_credit_bill'; }
-
-sub _app_source_name { 'credit'; }
-sub _app_source_table { 'cust_credit'; }
-sub _app_lineitem_breakdown_table { 'cust_credit_bill_pkg'; }
-
-=item insert
-
-Adds this cust_credit_bill to the database ("Posts" all or part of a credit).
-If there is an error, returns the error, otherwise returns false.
-
-=item delete
-
-Currently unimplemented.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete application for closed credit"
- if $self->cust_credit->closed =~ /^Y/i;
- return "Can't delete application for closed invoice"
- if $self->cust_bill->closed =~ /^Y/i;
- $self->SUPER::delete(@_);
-}
-
-=item replace OLD_RECORD
-
-Application of credits may not be modified.
-
-=cut
-
-sub replace {
- return "Can't modify application of credit!"
-}
-
-=item check
-
-Checks all fields to make sure this is a valid credit application. If there
-is an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('creditbillnum')
- || $self->ut_foreign_key('crednum', 'cust_credit', 'crednum')
- || $self->ut_foreign_key('invnum', 'cust_bill', 'invnum' )
- || $self->ut_numbern('_date')
- || $self->ut_money('amount')
- ;
- return $error if $error;
-
- return "amount must be > 0" if $self->amount <= 0;
-
- $self->_date(time) unless $self->_date;
-
- return "Cannot apply more than remaining value of credit"
- unless $self->amount <= $self->cust_credit->credited;
-
- return "Cannot apply more than remaining value of invoice"
- unless $self->amount <= $self->cust_bill->owed;
-
- $self->SUPER::check;
-}
-
-=item sub cust_credit
-
-Returns the credit (see L<FS::cust_credit>)
-
-=cut
-
-sub cust_credit {
- my $self = shift;
- qsearchs( 'cust_credit', { 'crednum' => $self->crednum } );
-}
-
-=back
-
-=head1 BUGS
-
-The delete method.
-
-This probably should have been called cust_bill_credit.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_bill>, L<FS::cust_credit>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_credit_bill_pkg.pm b/FS/FS/cust_credit_bill_pkg.pm
deleted file mode 100644
index 98521d6..0000000
--- a/FS/FS/cust_credit_bill_pkg.pm
+++ /dev/null
@@ -1,132 +0,0 @@
-package FS::cust_credit_bill_pkg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cust_credit_bill_pkg - Object methods for cust_credit_bill_pkg records
-
-=head1 SYNOPSIS
-
- use FS::cust_credit_bill_pkg;
-
- $record = new FS::cust_credit_bill_pkg \%hash;
- $record = new FS::cust_credit_bill_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_credit_bill_pkg object represents application of a credit (see
-L<FS::cust_credit_bill>) to a specific line item within an invoice
-(see L<FS::cust_bill_pkg>). FS::cust_credit_bill_pkg inherits from FS::Record.
-The following fields are currently supported:
-
-=over 4
-
-=item creditbillpkg - primary key
-
-=item creditbillnum - Credit application to the overall invoice (see L<FS::cust_credit::bill>)
-
-=item billpkgnum - Line item to which credit is applied (see L<FS::cust_bill_pkg>)
-
-=item amount - Amount of the credit applied to this line item.
-
-=item setuprecur - 'setup' or 'recur', designates whether the payment was applied to the setup or recurring portion of the line item.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_credit_bill_pkg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid credit applicaiton. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('creditbillpkgnum')
- || $self->ut_foreign_key('creditbillnum', 'cust_credit_bill', 'creditbillnum')
- || $self->ut_foreign_key('billpkgnum', 'cust_bill_pkg', 'billpkgnum' )
- || $self->ut_money('amount')
- || $self->ut_enum('setuprecur', [ 'setup', 'recur' ] )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-B<setuprecur> field is a kludge to compensate for cust_bill_pkg having separate
-setup and recur fields. It should be removed once that's fixed.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_credit_refund.pm b/FS/FS/cust_credit_refund.pm
deleted file mode 100644
index 36c77aa..0000000
--- a/FS/FS/cust_credit_refund.pm
+++ /dev/null
@@ -1,179 +0,0 @@
-package FS::cust_credit_refund;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs dbh );
-#use FS::UID qw(getotaker);
-use FS::cust_credit;
-use FS::cust_refund;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::cust_credit_refund - Object methods for cust_bill_pay records
-
-=head1 SYNOPSIS
-
- use FS::cust_credit_refund;
-
- $record = new FS::cust_credit_refund \%hash;
- $record = new FS::cust_credit_refund { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_credit_refund represents the application of a refund to a specific
-credit. FS::cust_credit_refund inherits from FS::Record. The following fields
-are currently supported:
-
-=over 4
-
-=item creditrefundnum - primary key (assigned automatically)
-
-=item crednum - Credit (see L<FS::cust_credit>)
-
-=item refundnum - Refund (see L<FS::cust_refund>)
-
-=item amount - Amount of the refund to apply to the specific credit.
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_credit_refund'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
- my $error = $self->SUPER::insert;
- return $error if $error;
-
- '';
-}
-
-=item delete
-
-Currently unimplemented (accounting reasons).
-
-=cut
-
-sub delete {
- return "Can't (yet?) delete cust_credit_refund records!";
-}
-
-=item replace OLD_RECORD
-
-Currently unimplemented (accounting reasons).
-
-=cut
-
-sub replace {
- return "Can't (yet?) modify cust_credit_refund records!";
-}
-
-=item check
-
-Checks all fields to make sure this is a valid refund application. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('creditrefundnum')
- || $self->ut_number('crednum')
- || $self->ut_number('refundnum')
- || $self->ut_money('amount')
- || $self->ut_numbern('_date')
- ;
- return $error if $error;
-
- return "amount must be > 0" if $self->amount <= 0;
-
- return "unknown cust_credit.crednum: ". $self->crednum
- unless my $cust_credit =
- qsearchs( 'cust_credit', { 'crednum' => $self->crednum } );
-
- return "Unknown refund"
- unless my $cust_refund =
- qsearchs( 'cust_refund', { 'refundnum' => $self->refundnum } );
-
- $self->_date(time) unless $self->_date;
-
- return "Cannot apply more than remaining value of credit"
- unless $self->amount <= $cust_credit->credited;
-
- return "Cannot apply more than remaining value of refund"
- unless $self->amount <= $cust_refund->unapplied;
-
- $self->SUPER::check;
-}
-
-=item cust_refund
-
-Returns the refund (see L<FS::cust_refund>)
-
-=cut
-
-sub cust_refund {
- my $self = shift;
- qsearchs( 'cust_refund', { 'refundnum' => $self->refundnum } );
-}
-
-=item cust_credit
-
-Returns the credit (see L<FS::cust_credit>)
-
-=cut
-
-sub cust_credit {
- my $self = shift;
- qsearchs( 'cust_credit', { 'crednum' => $self->crednum } );
-}
-
-=back
-
-=head1 BUGS
-
-Delete and replace methods.
-
-the checks for over-applied refunds could be better done like the ones in
-cust_bill_credit
-
-=head1 SEE ALSO
-
-L<FS::cust_credit>, L<FS::cust_refund>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm
deleted file mode 100644
index e86f399..0000000
--- a/FS/FS/cust_main.pm
+++ /dev/null
@@ -1,4665 +0,0 @@
-package FS::cust_main;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK $DEBUG $me $conf @encrypted_fields
- $import $skip_fuzzyfiles $ignore_expired_card );
-use vars qw( $realtime_bop_decline_quiet ); #ugh
-use Safe;
-use Carp;
-use Exporter;
-BEGIN {
- eval "use Time::Local;";
- die "Time::Local minimum version 1.05 required with Perl versions before 5.6"
- if $] < 5.006 && !defined($Time::Local::VERSION);
- #eval "use Time::Local qw(timelocal timelocal_nocheck);";
- eval "use Time::Local qw(timelocal_nocheck);";
-}
-use Digest::MD5 qw(md5_base64);
-use Date::Format;
-use Date::Parse;
-#use Date::Manip;
-use String::Approx qw(amatch);
-use Business::CreditCard 0.28;
-use Locale::Country;
-use FS::UID qw( getotaker dbh );
-use FS::Record qw( qsearchs qsearch dbdef );
-use FS::Misc qw( send_email );
-use FS::Msgcat qw(gettext);
-use FS::cust_pkg;
-use FS::cust_svc;
-use FS::cust_bill;
-use FS::cust_bill_pkg;
-use FS::cust_pay;
-use FS::cust_pay_void;
-use FS::cust_credit;
-use FS::cust_refund;
-use FS::part_referral;
-use FS::cust_main_county;
-use FS::agent;
-use FS::cust_main_invoice;
-use FS::cust_credit_bill;
-use FS::cust_bill_pay;
-use FS::prepay_credit;
-use FS::queue;
-use FS::part_pkg;
-use FS::part_bill_event;
-use FS::cust_bill_event;
-use FS::cust_tax_exempt;
-use FS::cust_tax_exempt_pkg;
-use FS::type_pkgs;
-use FS::payment_gateway;
-use FS::agent_payment_gateway;
-use FS::banned_pay;
-
-@ISA = qw( FS::Record );
-
-@EXPORT_OK = qw( smart_search );
-
-$realtime_bop_decline_quiet = 0;
-
-# 1 is mostly method/subroutine entry and options
-# 2 traces progress of some operations
-# 3 is even more information including possibly sensitive data
-$DEBUG = 0;
-$me = '[FS::cust_main]';
-
-$import = 0;
-$skip_fuzzyfiles = 0;
-$ignore_expired_card = 0;
-
-@encrypted_fields = ('payinfo', 'paycvv');
-
-#ask FS::UID to run this stuff for us later
-#$FS::UID::callback{'FS::cust_main'} = sub {
-install_callback FS::UID sub {
- $conf = new FS::Conf;
- #yes, need it for stuff below (prolly should be cached)
-};
-
-sub _cache {
- my $self = shift;
- my ( $hashref, $cache ) = @_;
- if ( exists $hashref->{'pkgnum'} ) {
- #@{ $self->{'_pkgnum'} } = ();
- my $subcache = $cache->subcache( 'pkgnum', 'cust_pkg', $hashref->{custnum});
- $self->{'_pkgnum'} = $subcache;
- #push @{ $self->{'_pkgnum'} },
- FS::cust_pkg->new_or_cached($hashref, $subcache) if $hashref->{pkgnum};
- }
-}
-
-=head1 NAME
-
-FS::cust_main - Object methods for cust_main records
-
-=head1 SYNOPSIS
-
- use FS::cust_main;
-
- $record = new FS::cust_main \%hash;
- $record = new FS::cust_main { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- @cust_pkg = $record->all_pkgs;
-
- @cust_pkg = $record->ncancelled_pkgs;
-
- @cust_pkg = $record->suspended_pkgs;
-
- $error = $record->bill;
- $error = $record->bill %options;
- $error = $record->bill 'time' => $time;
-
- $error = $record->collect;
- $error = $record->collect %options;
- $error = $record->collect 'invoice_time' => $time,
- ;
-
-=head1 DESCRIPTION
-
-An FS::cust_main object represents a customer. FS::cust_main inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item custnum - primary key (assigned automatically for new customers)
-
-=item agentnum - agent (see L<FS::agent>)
-
-=item refnum - Advertising source (see L<FS::part_referral>)
-
-=item first - name
-
-=item last - name
-
-=item ss - social security number (optional)
-
-=item company - (optional)
-
-=item address1
-
-=item address2 - (optional)
-
-=item city
-
-=item county - (optional, see L<FS::cust_main_county>)
-
-=item state - (see L<FS::cust_main_county>)
-
-=item zip
-
-=item country - (see L<FS::cust_main_county>)
-
-=item daytime - phone (optional)
-
-=item night - phone (optional)
-
-=item fax - phone (optional)
-
-=item ship_first - name
-
-=item ship_last - name
-
-=item ship_company - (optional)
-
-=item ship_address1
-
-=item ship_address2 - (optional)
-
-=item ship_city
-
-=item ship_county - (optional, see L<FS::cust_main_county>)
-
-=item ship_state - (see L<FS::cust_main_county>)
-
-=item ship_zip
-
-=item ship_country - (see L<FS::cust_main_county>)
-
-=item ship_daytime - phone (optional)
-
-=item ship_night - phone (optional)
-
-=item ship_fax - phone (optional)
-
-=item payby
-
-I<CARD> (credit card - automatic), I<DCRD> (credit card - on-demand), I<CHEK> (electronic check - automatic), I<DCHK> (electronic check - on-demand), I<LECB> (Phone bill billing), I<BILL> (billing), I<COMP> (free), or I<PREPAY> (special billing type: applies a credit - see L<FS::prepay_credit> and sets billing type to I<BILL>)
-
-=item payinfo
-
-Card Number, P.O., comp issuer (4-8 lowercase alphanumerics; think username) or prepayment identifier (see L<FS::prepay_credit>)
-
-=cut
-
-sub payinfo {
- my($self,$payinfo) = @_;
- if ( defined($payinfo) ) {
- $self->paymask($payinfo);
- $self->setfield('payinfo', $payinfo); # This is okay since we are the 'setter'
- } else {
- $payinfo = $self->getfield('payinfo'); # This is okay since we are the 'getter'
- return $payinfo;
- }
-}
-
-
-=item paycvv
-
-Card Verification Value, "CVV2" (also known as CVC2 or CID), the 3 or 4 digit number on the back (or front, for American Express) of the credit card
-
-=cut
-
-=item paymask - Masked payment type
-
-=over 4
-
-=item Credit Cards
-
-Mask all but the last four characters.
-
-=item Checks
-
-Mask all but last 2 of account number and bank routing number.
-
-=item Others
-
-Do nothing, return the unmasked string.
-
-=back
-
-=cut
-
-sub paymask {
- my($self,$value)=@_;
-
- # If it doesn't exist then generate it
- my $paymask=$self->getfield('paymask');
- if (!defined($value) && (!defined($paymask) || $paymask eq '')) {
- $value = $self->payinfo;
- }
-
- if ( defined($value) && !$self->is_encrypted($value)) {
- my $payinfo = $value;
- my $payby = $self->payby;
- if ($payby eq 'CARD' || $payby eq 'DCRD') { # Credit Cards (Show last four)
- $paymask = 'x'x(length($payinfo)-4). substr($payinfo,(length($payinfo)-4));
- } elsif ($payby eq 'CHEK' ||
- $payby eq 'DCHK' ) { # Checks (Show last 2 @ bank)
- my( $account, $aba ) = split('@', $payinfo );
- $paymask = 'x'x(length($account)-2). substr($account,(length($account)-2))."@".$aba;
- } else { # Tie up loose ends
- $paymask = $payinfo;
- }
- $self->setfield('paymask', $paymask); # This is okay since we are the 'setter'
- } elsif (defined($value) && $self->is_encrypted($value)) {
- $paymask = 'N/A';
- }
- return $paymask;
-}
-
-=item paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy
-
-=item paystart_month - start date month (maestro/solo cards only)
-
-=item paystart_year - start date year (maestro/solo cards only)
-
-=item payissue - issue number (maestro/solo cards only)
-
-=item payname - name on card or billing name
-
-=item payip - IP address from which payment information was received
-
-=item tax - tax exempt, empty or `Y'
-
-=item otaker - order taker (assigned automatically, see L<FS::UID>)
-
-=item comments - comments (optional)
-
-=item referral_custnum - referring customer number
-
-=item spool_cdr - Enable individual CDR spooling, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new customer. To add the customer to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'cust_main'; }
-
-=item insert [ CUST_PKG_HASHREF [ , INVOICING_LIST_ARYREF ] [ , OPTION => VALUE ... ] ]
-
-Adds this customer to the database. If there is an error, returns the error,
-otherwise returns false.
-
-CUST_PKG_HASHREF: If you pass a Tie::RefHash data structure to the insert
-method containing FS::cust_pkg and FS::svc_I<tablename> objects, all records
-are inserted atomicly, or the transaction is rolled back. Passing an empty
-hash reference is equivalent to not supplying this parameter. There should be
-a better explanation of this, but until then, here's an example:
-
- use Tie::RefHash;
- tie %hash, 'Tie::RefHash'; #this part is important
- %hash = (
- $cust_pkg => [ $svc_acct ],
- ...
- );
- $cust_main->insert( \%hash );
-
-INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will
-be set as the invoicing list (see L<"invoicing_list">). Errors return as
-expected and rollback the entire transaction; it is not necessary to call
-check_invoicing_list first. The invoicing_list is set after the records in the
-CUST_PKG_HASHREF above are inserted, so it is now possible to set an
-invoicing_list destination to the newly-created svc_acct. Here's an example:
-
- $cust_main->insert( {}, [ $email, 'POST' ] );
-
-Currently available options are: I<depend_jobnum> and I<noexport>.
-
-If I<depend_jobnum> is set, all provisioning jobs will have a dependancy
-on the supplied jobnum (they will not run until the specific job completes).
-This can be used to defer provisioning until some action completes (such
-as running the customer's credit card successfully).
-
-The I<noexport> option is deprecated. If I<noexport> is set true, no
-provisioning jobs (exports) are scheduled. (You can schedule them later with
-the B<reexport> method.)
-
-=cut
-
-sub insert {
- my $self = shift;
- my $cust_pkgs = @_ ? shift : {};
- my $invoicing_list = @_ ? shift : '';
- my %options = @_;
- warn "$me insert called with options ".
- join(', ', map { "$_: $options{$_}" } keys %options ). "\n"
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $prepay_identifier = '';
- my( $amount, $seconds ) = ( 0, 0 );
- my $payby = '';
- if ( $self->payby eq 'PREPAY' ) {
-
- $self->payby('BILL');
- $prepay_identifier = $self->payinfo;
- $self->payinfo('');
-
- warn " looking up prepaid card $prepay_identifier\n"
- if $DEBUG > 1;
-
- my $error = $self->get_prepay($prepay_identifier, \$amount, \$seconds);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- #return "error applying prepaid card (transaction rolled back): $error";
- return $error;
- }
-
- $payby = 'PREP' if $amount;
-
- } elsif ( $self->payby =~ /^(CASH|WEST|MCRD)$/ ) {
-
- $payby = $1;
- $self->payby('BILL');
- $amount = $self->paid;
-
- }
-
- warn " inserting $self\n"
- if $DEBUG > 1;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- #return "inserting cust_main record (transaction rolled back): $error";
- return $error;
- }
-
- warn " setting invoicing list\n"
- if $DEBUG > 1;
-
- if ( $invoicing_list ) {
- $error = $self->check_invoicing_list( $invoicing_list );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "checking invoicing_list (transaction rolled back): $error";
- }
- $self->invoicing_list( $invoicing_list );
- }
-
- if ( $conf->config('cust_main-skeleton_tables')
- && $conf->config('cust_main-skeleton_custnum') ) {
-
- warn " inserting skeleton records\n"
- if $DEBUG > 1;
-
- my $error = $self->start_copy_skel;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- }
-
- warn " ordering packages\n"
- if $DEBUG > 1;
-
- $error = $self->order_pkgs($cust_pkgs, \$seconds, %options);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $seconds ) {
- $dbh->rollback if $oldAutoCommit;
- return "No svc_acct record to apply pre-paid time";
- }
-
- if ( $amount ) {
- warn " inserting initial $payby payment of $amount\n"
- if $DEBUG > 1;
- $error = $self->insert_cust_pay($payby, $amount, $prepay_identifier);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "inserting payment (transaction rolled back): $error";
- }
- }
-
- unless ( $import || $skip_fuzzyfiles ) {
- warn " queueing fuzzyfiles update\n"
- if $DEBUG > 1;
- $error = $self->queue_fuzzyfiles_update;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "updating fuzzy search cache: $error";
- }
- }
-
- warn " insert complete; committing transaction\n"
- if $DEBUG > 1;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-sub start_copy_skel {
- my $self = shift;
-
- #'mg_user_preference' => {},
- #'mg_user_indicator_profile.user_indicator_profile_id' => { 'mg_profile_indicator.profile_indicator_id' => { 'mg_profile_details.profile_detail_id' }, },
- #'mg_watchlist_header.watchlist_header_id' => { 'mg_watchlist_details.watchlist_details_id' },
- #'mg_user_grid_header.grid_header_id' => { 'mg_user_grid_details.user_grid_details_id' },
- #'mg_portfolio_header.portfolio_header_id' => { 'mg_portfolio_trades.portfolio_trades_id' => { 'mg_portfolio_trades_positions.portfolio_trades_positions_id' } },
- my @tables = eval($conf->config_binary('cust_main-skeleton_tables'));
- die $@ if $@;
-
- _copy_skel( 'cust_main', #tablename
- $conf->config('cust_main-skeleton_custnum'), #sourceid
- $self->custnum, #destid
- @tables, #child tables
- );
-}
-
-#recursive subroutine, not a method
-sub _copy_skel {
- my( $table, $sourceid, $destid, %child_tables ) = @_;
-
- my $primary_key;
- if ( $table =~ /^(\w+)\.(\w+)$/ ) {
- ( $table, $primary_key ) = ( $1, $2 );
- } else {
- my $dbdef_table = dbdef->table($table);
- $primary_key = $dbdef_table->primary_key
- or return "$table has no primary key".
- " (or do you need to run dbdef-create?)";
- }
-
- warn " _copy_skel: $table.$primary_key $sourceid to $destid for ".
- join (', ', keys %child_tables). "\n"
- if $DEBUG > 2;
-
- foreach my $child_table_def ( keys %child_tables ) {
-
- my $child_table;
- my $child_pkey = '';
- if ( $child_table_def =~ /^(\w+)\.(\w+)$/ ) {
- ( $child_table, $child_pkey ) = ( $1, $2 );
- } else {
- $child_table = $child_table_def;
-
- $child_pkey = dbdef->table($child_table)->primary_key;
- # or return "$table has no primary key".
- # " (or do you need to run dbdef-create?)\n";
- }
-
- my $sequence = '';
- if ( keys %{ $child_tables{$child_table_def} } ) {
-
- return "$child_table has no primary key".
- " (run dbdef-create or try specifying it?)\n"
- unless $child_pkey;
-
- #false laziness w/Record::insert and only works on Pg
- #refactor the proper last-inserted-id stuff out of Record::insert if this
- # ever gets use for anything besides a quick kludge for one customer
- my $default = dbdef->table($child_table)->column($child_pkey)->default;
- $default =~ /^nextval\(\(?'"?([\w\.]+)"?'/i
- or return "can't parse $child_table.$child_pkey default value ".
- " for sequence name: $default";
- $sequence = $1;
-
- }
-
- my @sel_columns = grep { $_ ne $primary_key }
- dbdef->table($child_table)->columns;
- my $sel_columns = join(', ', @sel_columns );
-
- my @ins_columns = grep { $_ ne $child_pkey } @sel_columns;
- my $ins_columns = ' ( '. join(', ', $primary_key, @ins_columns ). ' ) ';
- my $placeholders = ' ( ?, '. join(', ', map '?', @ins_columns ). ' ) ';
-
- my $sel_st = "SELECT $sel_columns FROM $child_table".
- " WHERE $primary_key = $sourceid";
- warn " $sel_st\n"
- if $DEBUG > 2;
- my $sel_sth = dbh->prepare( $sel_st )
- or return dbh->errstr;
-
- $sel_sth->execute or return $sel_sth->errstr;
-
- while ( my $row = $sel_sth->fetchrow_hashref ) {
-
- warn " selected row: ".
- join(', ', map { "$_=".$row->{$_} } keys %$row ). "\n"
- if $DEBUG > 2;
-
- my $statement =
- "INSERT INTO $child_table $ins_columns VALUES $placeholders";
- my $ins_sth =dbh->prepare($statement)
- or return dbh->errstr;
- my @param = ( $destid, map $row->{$_}, @ins_columns );
- warn " $statement: [ ". join(', ', @param). " ]\n"
- if $DEBUG > 2;
- $ins_sth->execute( @param )
- or return $ins_sth->errstr;
-
- #next unless keys %{ $child_tables{$child_table} };
- next unless $sequence;
-
- #another section of that laziness
- my $seq_sql = "SELECT currval('$sequence')";
- my $seq_sth = dbh->prepare($seq_sql) or return dbh->errstr;
- $seq_sth->execute or return $seq_sth->errstr;
- my $insertid = $seq_sth->fetchrow_arrayref->[0];
-
- # don't drink soap! recurse! recurse! okay!
- my $error =
- _copy_skel( $child_table_def,
- $row->{$child_pkey}, #sourceid
- $insertid, #destid
- %{ $child_tables{$child_table_def} },
- );
- return $error if $error;
-
- }
-
- }
-
- return '';
-
-}
-
-=item order_pkgs HASHREF, [ SECONDSREF, [ , OPTION => VALUE ... ] ]
-
-Like the insert method on an existing record, this method orders a package
-and included services atomicaly. Pass a Tie::RefHash data structure to this
-method containing FS::cust_pkg and FS::svc_I<tablename> objects. There should
-be a better explanation of this, but until then, here's an example:
-
- use Tie::RefHash;
- tie %hash, 'Tie::RefHash'; #this part is important
- %hash = (
- $cust_pkg => [ $svc_acct ],
- ...
- );
- $cust_main->order_pkgs( \%hash, \'0', 'noexport'=>1 );
-
-Services can be new, in which case they are inserted, or existing unaudited
-services, in which case they are linked to the newly-created package.
-
-Currently available options are: I<depend_jobnum> and I<noexport>.
-
-If I<depend_jobnum> is set, all provisioning jobs will have a dependancy
-on the supplied jobnum (they will not run until the specific job completes).
-This can be used to defer provisioning until some action completes (such
-as running the customer's credit card successfully).
-
-The I<noexport> option is deprecated. If I<noexport> is set true, no
-provisioning jobs (exports) are scheduled. (You can schedule them later with
-the B<reexport> method for each cust_pkg object. Using the B<reexport> method
-on the cust_main object is not recommended, as existing services will also be
-reexported.)
-
-=cut
-
-sub order_pkgs {
- my $self = shift;
- my $cust_pkgs = shift;
- my $seconds = shift;
- my %options = @_;
- my %svc_options = ();
- $svc_options{'depend_jobnum'} = $options{'depend_jobnum'}
- if exists $options{'depend_jobnum'};
- warn "$me order_pkgs called with options ".
- join(', ', map { "$_: $options{$_}" } keys %options ). "\n"
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- local $FS::svc_Common::noexport_hack = 1 if $options{'noexport'};
-
- foreach my $cust_pkg ( keys %$cust_pkgs ) {
- $cust_pkg->custnum( $self->custnum );
- my $error = $cust_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "inserting cust_pkg (transaction rolled back): $error";
- }
- foreach my $svc_something ( @{$cust_pkgs->{$cust_pkg}} ) {
- if ( $svc_something->svcnum ) {
- my $old_cust_svc = $svc_something->cust_svc;
- my $new_cust_svc = new FS::cust_svc { $old_cust_svc->hash };
- $new_cust_svc->pkgnum( $cust_pkg->pkgnum);
- $error = $new_cust_svc->replace($old_cust_svc);
- } else {
- $svc_something->pkgnum( $cust_pkg->pkgnum );
- if ( $seconds && $$seconds && $svc_something->isa('FS::svc_acct') ) {
- $svc_something->seconds( $svc_something->seconds + $$seconds );
- $$seconds = 0;
- }
- $error = $svc_something->insert(%svc_options);
- }
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- #return "inserting svc_ (transaction rolled back): $error";
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-}
-
-=item recharge_prepay IDENTIFIER | PREPAY_CREDIT_OBJ [ , AMOUNTREF, SECONDSREF ]
-
-Recharges this (existing) customer with the specified prepaid card (see
-L<FS::prepay_credit>), specified either by I<identifier> or as an
-FS::prepay_credit object. If there is an error, returns the error, otherwise
-returns false.
-
-Optionally, two scalar references can be passed as well. They will have their
-values filled in with the amount and number of seconds applied by this prepaid
-card.
-
-=cut
-
-sub recharge_prepay {
- my( $self, $prepay_credit, $amountref, $secondsref ) = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my( $amount, $seconds ) = ( 0, 0 );
-
- my $error = $self->get_prepay($prepay_credit, \$amount, \$seconds)
- || $self->increment_seconds($seconds)
- || $self->insert_cust_pay_prepay( $amount,
- ref($prepay_credit)
- ? $prepay_credit->identifier
- : $prepay_credit
- );
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( defined($amountref) ) { $$amountref = $amount; }
- if ( defined($secondsref) ) { $$secondsref = $seconds; }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item get_prepay IDENTIFIER | PREPAY_CREDIT_OBJ , AMOUNTREF, SECONDSREF
-
-Looks up and deletes a prepaid card (see L<FS::prepay_credit>),
-specified either by I<identifier> or as an FS::prepay_credit object.
-
-References to I<amount> and I<seconds> scalars should be passed as arguments
-and will be incremented by the values of the prepaid card.
-
-If the prepaid card specifies an I<agentnum> (see L<FS::agent>), it is used to
-check or set this customer's I<agentnum>.
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-
-sub get_prepay {
- my( $self, $prepay_credit, $amountref, $secondsref ) = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- unless ( ref($prepay_credit) ) {
-
- my $identifier = $prepay_credit;
-
- $prepay_credit = qsearchs(
- 'prepay_credit',
- { 'identifier' => $prepay_credit },
- '',
- 'FOR UPDATE'
- );
-
- unless ( $prepay_credit ) {
- $dbh->rollback if $oldAutoCommit;
- return "Invalid prepaid card: ". $identifier;
- }
-
- }
-
- if ( $prepay_credit->agentnum ) {
- if ( $self->agentnum && $self->agentnum != $prepay_credit->agentnum ) {
- $dbh->rollback if $oldAutoCommit;
- return "prepaid card not valid for agent ". $self->agentnum;
- }
- $self->agentnum($prepay_credit->agentnum);
- }
-
- my $error = $prepay_credit->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "removing prepay_credit (transaction rolled back): $error";
- }
-
- $$amountref += $prepay_credit->amount;
- $$secondsref += $prepay_credit->seconds;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item increment_seconds SECONDS
-
-Updates this customer's single or primary account (see L<FS::svc_acct>) by
-the specified number of seconds. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub increment_seconds {
- my( $self, $seconds ) = @_;
- warn "$me increment_seconds called: $seconds seconds\n"
- if $DEBUG;
-
- my @cust_pkg = grep { $_->part_pkg->svcpart('svc_acct') }
- $self->ncancelled_pkgs;
-
- if ( ! @cust_pkg ) {
- return 'No packages with primary or single services found'.
- ' to apply pre-paid time';
- } elsif ( scalar(@cust_pkg) > 1 ) {
- #maybe have a way to specify the package/account?
- return 'Multiple packages found to apply pre-paid time';
- }
-
- my $cust_pkg = $cust_pkg[0];
- warn " found package pkgnum ". $cust_pkg->pkgnum. "\n"
- if $DEBUG > 1;
-
- my @cust_svc =
- $cust_pkg->cust_svc( $cust_pkg->part_pkg->svcpart('svc_acct') );
-
- if ( ! @cust_svc ) {
- return 'No account found to apply pre-paid time';
- } elsif ( scalar(@cust_svc) > 1 ) {
- return 'Multiple accounts found to apply pre-paid time';
- }
-
- my $svc_acct = $cust_svc[0]->svc_x;
- warn " found service svcnum ". $svc_acct->pkgnum.
- ' ('. $svc_acct->email. ")\n"
- if $DEBUG > 1;
-
- $svc_acct->increment_seconds($seconds);
-
-}
-
-=item insert_cust_pay_prepay AMOUNT [ PAYINFO ]
-
-Inserts a prepayment in the specified amount for this customer. An optional
-second argument can specify the prepayment identifier for tracking purposes.
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub insert_cust_pay_prepay {
- shift->insert_cust_pay('PREP', @_);
-}
-
-=item insert_cust_pay_cash AMOUNT [ PAYINFO ]
-
-Inserts a cash payment in the specified amount for this customer. An optional
-second argument can specify the payment identifier for tracking purposes.
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub insert_cust_pay_cash {
- shift->insert_cust_pay('CASH', @_);
-}
-
-=item insert_cust_pay_west AMOUNT [ PAYINFO ]
-
-Inserts a Western Union payment in the specified amount for this customer. An
-optional second argument can specify the prepayment identifier for tracking
-purposes. If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub insert_cust_pay_west {
- shift->insert_cust_pay('WEST', @_);
-}
-
-sub insert_cust_pay {
- my( $self, $payby, $amount ) = splice(@_, 0, 3);
- my $payinfo = scalar(@_) ? shift : '';
-
- my $cust_pay = new FS::cust_pay {
- 'custnum' => $self->custnum,
- 'paid' => sprintf('%.2f', $amount),
- #'_date' => #date the prepaid card was purchased???
- 'payby' => $payby,
- 'payinfo' => $payinfo,
- };
- $cust_pay->insert;
-
-}
-
-=item reexport
-
-This method is deprecated. See the I<depend_jobnum> option to the insert and
-order_pkgs methods for a better way to defer provisioning.
-
-Re-schedules all exports by calling the B<reexport> method of all associated
-packages (see L<FS::cust_pkg>). If there is an error, returns the error;
-otherwise returns false.
-
-=cut
-
-sub reexport {
- my $self = shift;
-
- carp "WARNING: FS::cust_main::reexport is deprectated; ".
- "use the depend_jobnum option to insert or order_pkgs to delay export";
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_pkg ( $self->ncancelled_pkgs ) {
- my $error = $cust_pkg->reexport;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item delete NEW_CUSTNUM
-
-This deletes the customer. If there is an error, returns the error, otherwise
-returns false.
-
-This will completely remove all traces of the customer record. This is not
-what you want when a customer cancels service; for that, cancel all of the
-customer's packages (see L</cancel>).
-
-If the customer has any uncancelled packages, you need to pass a new (valid)
-customer number for those packages to be transferred to. Cancelled packages
-will be deleted. Did I mention that this is NOT what you want when a customer
-cancels service and that you really should be looking see L<FS::cust_pkg/cancel>?
-
-You can't delete a customer with invoices (see L<FS::cust_bill>),
-or credits (see L<FS::cust_credit>), payments (see L<FS::cust_pay>) or
-refunds (see L<FS::cust_refund>).
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $self->cust_bill ) {
- $dbh->rollback if $oldAutoCommit;
- return "Can't delete a customer with invoices";
- }
- if ( $self->cust_credit ) {
- $dbh->rollback if $oldAutoCommit;
- return "Can't delete a customer with credits";
- }
- if ( $self->cust_pay ) {
- $dbh->rollback if $oldAutoCommit;
- return "Can't delete a customer with payments";
- }
- if ( $self->cust_refund ) {
- $dbh->rollback if $oldAutoCommit;
- return "Can't delete a customer with refunds";
- }
-
- my @cust_pkg = $self->ncancelled_pkgs;
- if ( @cust_pkg ) {
- my $new_custnum = shift;
- unless ( qsearchs( 'cust_main', { 'custnum' => $new_custnum } ) ) {
- $dbh->rollback if $oldAutoCommit;
- return "Invalid new customer number: $new_custnum";
- }
- foreach my $cust_pkg ( @cust_pkg ) {
- my %hash = $cust_pkg->hash;
- $hash{'custnum'} = $new_custnum;
- my $new_cust_pkg = new FS::cust_pkg ( \%hash );
- my $error = $new_cust_pkg->replace($cust_pkg);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
- my @cancelled_cust_pkg = $self->all_pkgs;
- foreach my $cust_pkg ( @cancelled_cust_pkg ) {
- my $error = $cust_pkg->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- foreach my $cust_main_invoice ( #(email invoice destinations, not invoices)
- qsearch( 'cust_main_invoice', { 'custnum' => $self->custnum } )
- ) {
- my $error = $cust_main_invoice->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item replace OLD_RECORD [ INVOICING_LIST_ARYREF ]
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will
-be set as the invoicing list (see L<"invoicing_list">). Errors return as
-expected and rollback the entire transaction; it is not necessary to call
-check_invoicing_list first. Here's an example:
-
- $new_cust_main->replace( $old_cust_main, [ $email, 'POST' ] );
-
-=cut
-
-sub replace {
- my $self = shift;
- my $old = shift;
- my @param = @_;
- warn "$me replace called\n"
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- # If the mask is blank then try to set it - if we can...
- if (!defined($self->getfield('paymask')) || $self->getfield('paymask') eq '') {
- $self->paymask($self->payinfo);
- }
-
- # We absolutely have to have an old vs. new record to make this work.
- if (!defined($old)) {
- $old = qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
- }
-
- my $curuser = $FS::CurrentUser::CurrentUser;
- if ( $self->payby eq 'COMP'
- && $self->payby ne $old->payby
- && ! $curuser->access_right('Complimentary customer')
- )
- {
- return "You are not permitted to create complimentary accounts.";
- }
-
- local($ignore_expired_card) = 1
- if $old->payby =~ /^(CARD|DCRD)$/
- && $self->payby =~ /^(CARD|DCRD)$/
- && $old->payinfo eq $self->payinfo;
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::replace($old);
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( @param ) { # INVOICING_LIST_ARYREF
- my $invoicing_list = shift @param;
- $error = $self->check_invoicing_list( $invoicing_list );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $self->invoicing_list( $invoicing_list );
- }
-
- if ( $self->payby =~ /^(CARD|CHEK|LECB)$/ &&
- grep { $self->get($_) ne $old->get($_) } qw(payinfo paydate payname) ) {
- # card/check/lec info has changed, want to retry realtime_ invoice events
- my $error = $self->retry_realtime;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- unless ( $import || $skip_fuzzyfiles ) {
- $error = $self->queue_fuzzyfiles_update;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "updating fuzzy search cache: $error";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item queue_fuzzyfiles_update
-
-Used by insert & replace to update the fuzzy search cache
-
-=cut
-
-sub queue_fuzzyfiles_update {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $queue = new FS::queue { 'job' => 'FS::cust_main::append_fuzzyfiles' };
- my $error = $queue->insert( map $self->getfield($_),
- qw(first last company)
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "queueing job (transaction rolled back): $error";
- }
-
- if ( $self->ship_last ) {
- $queue = new FS::queue { 'job' => 'FS::cust_main::append_fuzzyfiles' };
- $error = $queue->insert( map $self->getfield("ship_$_"),
- qw(first last company)
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "queueing job (transaction rolled back): $error";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid customer record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- warn "$me check BEFORE: \n". $self->_dump
- if $DEBUG > 2;
-
- my $error =
- $self->ut_numbern('custnum')
- || $self->ut_number('agentnum')
- || $self->ut_textn('agent_custid')
- || $self->ut_number('refnum')
- || $self->ut_name('last')
- || $self->ut_name('first')
- || $self->ut_textn('company')
- || $self->ut_text('address1')
- || $self->ut_textn('address2')
- || $self->ut_text('city')
- || $self->ut_textn('county')
- || $self->ut_textn('state')
- || $self->ut_country('country')
- || $self->ut_anything('comments')
- || $self->ut_numbern('referral_custnum')
- ;
- #barf. need message catalogs. i18n. etc.
- $error .= "Please select an advertising source."
- if $error =~ /^Illegal or empty \(numeric\) refnum: /;
- return $error if $error;
-
- return "Unknown agent"
- unless qsearchs( 'agent', { 'agentnum' => $self->agentnum } );
-
- return "Unknown refnum"
- unless qsearchs( 'part_referral', { 'refnum' => $self->refnum } );
-
- return "Unknown referring custnum: ". $self->referral_custnum
- unless ! $self->referral_custnum
- || qsearchs( 'cust_main', { 'custnum' => $self->referral_custnum } );
-
- if ( $self->ss eq '' ) {
- $self->ss('');
- } else {
- my $ss = $self->ss;
- $ss =~ s/\D//g;
- $ss =~ /^(\d{3})(\d{2})(\d{4})$/
- or return "Illegal social security number: ". $self->ss;
- $self->ss("$1-$2-$3");
- }
-
-
-# bad idea to disable, causes billing to fail because of no tax rates later
-# unless ( $import ) {
- unless ( qsearch('cust_main_county', {
- 'country' => $self->country,
- 'state' => '',
- } ) ) {
- return "Unknown state/county/country: ".
- $self->state. "/". $self->county. "/". $self->country
- unless qsearch('cust_main_county',{
- 'state' => $self->state,
- 'county' => $self->county,
- 'country' => $self->country,
- } );
- }
-# }
-
- $error =
- $self->ut_phonen('daytime', $self->country)
- || $self->ut_phonen('night', $self->country)
- || $self->ut_phonen('fax', $self->country)
- || $self->ut_zip('zip', $self->country)
- ;
- return $error if $error;
-
- my @addfields = qw(
- last first company address1 address2 city county state zip
- country daytime night fax
- );
-
- if ( defined $self->dbdef_table->column('ship_last') ) {
- if ( scalar ( grep { $self->getfield($_) ne $self->getfield("ship_$_") }
- @addfields )
- && scalar ( grep { $self->getfield("ship_$_") ne '' } @addfields )
- )
- {
- my $error =
- $self->ut_name('ship_last')
- || $self->ut_name('ship_first')
- || $self->ut_textn('ship_company')
- || $self->ut_text('ship_address1')
- || $self->ut_textn('ship_address2')
- || $self->ut_text('ship_city')
- || $self->ut_textn('ship_county')
- || $self->ut_textn('ship_state')
- || $self->ut_country('ship_country')
- ;
- return $error if $error;
-
- #false laziness with above
- unless ( qsearchs('cust_main_county', {
- 'country' => $self->ship_country,
- 'state' => '',
- } ) ) {
- return "Unknown ship_state/ship_county/ship_country: ".
- $self->ship_state. "/". $self->ship_county. "/". $self->ship_country
- unless qsearch('cust_main_county',{
- 'state' => $self->ship_state,
- 'county' => $self->ship_county,
- 'country' => $self->ship_country,
- } );
- }
- #eofalse
-
- $error =
- $self->ut_phonen('ship_daytime', $self->ship_country)
- || $self->ut_phonen('ship_night', $self->ship_country)
- || $self->ut_phonen('ship_fax', $self->ship_country)
- || $self->ut_zip('ship_zip', $self->ship_country)
- ;
- return $error if $error;
-
- } else { # ship_ info eq billing info, so don't store dup info in database
- $self->setfield("ship_$_", '')
- foreach qw( last first company address1 address2 city county state zip
- country daytime night fax );
- }
- }
-
- $self->payby =~ /^(CARD|DCRD|CHEK|DCHK|LECB|BILL|COMP|PREPAY|CASH|WEST|MCRD)$/
- or return "Illegal payby: ". $self->payby;
-
- $error = $self->ut_numbern('paystart_month')
- || $self->ut_numbern('paystart_year')
- || $self->ut_numbern('payissue')
- ;
- return $error if $error;
-
- if ( $self->payip eq '' ) {
- $self->payip('');
- } else {
- $error = $self->ut_ip('payip');
- return $error if $error;
- }
-
- # If it is encrypted and the private key is not availaible then we can't
- # check the credit card.
-
- my $check_payinfo = 1;
-
- if ($self->is_encrypted($self->payinfo)) {
- $check_payinfo = 0;
- }
-
- $self->payby($1);
-
- if ( $check_payinfo && $self->payby =~ /^(CARD|DCRD)$/ ) {
-
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\D//g;
- $payinfo =~ /^(\d{13,16})$/
- or return gettext('invalid_card'); # . ": ". $self->payinfo;
- $payinfo = $1;
- $self->payinfo($payinfo);
- validate($payinfo)
- or return gettext('invalid_card'); # . ": ". $self->payinfo;
-
- return gettext('unknown_card_type')
- if cardtype($self->payinfo) eq "Unknown";
-
- my $ban = qsearchs('banned_pay', $self->_banned_pay_hashref);
- if ( $ban ) {
- return 'Banned credit card: banned on '.
- time2str('%a %h %o at %r', $ban->_date).
- ' by '. $ban->otaker.
- ' (ban# '. $ban->bannum. ')';
- }
-
- if ( defined $self->dbdef_table->column('paycvv') ) {
- if (length($self->paycvv) && !$self->is_encrypted($self->paycvv)) {
- if ( cardtype($self->payinfo) eq 'American Express card' ) {
- $self->paycvv =~ /^(\d{4})$/
- or return "CVV2 (CID) for American Express cards is four digits.";
- $self->paycvv($1);
- } else {
- $self->paycvv =~ /^(\d{3})$/
- or return "CVV2 (CVC2/CID) is three digits.";
- $self->paycvv($1);
- }
- } else {
- $self->paycvv('');
- }
- }
-
- my $cardtype = cardtype($payinfo);
- if ( $cardtype =~ /^(Switch|Solo)$/i ) {
-
- return "Start date or issue number is required for $cardtype cards"
- unless $self->paystart_month && $self->paystart_year or $self->payissue;
-
- return "Start month must be between 1 and 12"
- if $self->paystart_month
- and $self->paystart_month < 1 || $self->paystart_month > 12;
-
- return "Start year must be 1990 or later"
- if $self->paystart_year
- and $self->paystart_year < 1990;
-
- return "Issue number must be beween 1 and 99"
- if $self->payissue
- and $self->payissue < 1 || $self->payissue > 99;
-
- } else {
- $self->paystart_month('');
- $self->paystart_year('');
- $self->payissue('');
- }
-
- } elsif ( $check_payinfo && $self->payby =~ /^(CHEK|DCHK)$/ ) {
-
- my $payinfo = $self->payinfo;
- $payinfo =~ s/[^\d\@]//g;
- if ( $conf->exists('echeck-nonus') ) {
- $payinfo =~ /^(\d+)\@(\d+)$/ or return 'invalid echeck account@aba';
- $payinfo = "$1\@$2";
- } else {
- $payinfo =~ /^(\d+)\@(\d{9})$/ or return 'invalid echeck account@aba';
- $payinfo = "$1\@$2";
- }
- $self->payinfo($payinfo);
- $self->paycvv('') if $self->dbdef_table->column('paycvv');
-
- my $ban = qsearchs('banned_pay', $self->_banned_pay_hashref);
- if ( $ban ) {
- return 'Banned ACH account: banned on '.
- time2str('%a %h %o at %r', $ban->_date).
- ' by '. $ban->otaker.
- ' (ban# '. $ban->bannum. ')';
- }
-
- } elsif ( $self->payby eq 'LECB' ) {
-
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\D//g;
- $payinfo =~ /^1?(\d{10})$/ or return 'invalid btn billing telephone number';
- $payinfo = $1;
- $self->payinfo($payinfo);
- $self->paycvv('') if $self->dbdef_table->column('paycvv');
-
- } elsif ( $self->payby eq 'BILL' ) {
-
- $error = $self->ut_textn('payinfo');
- return "Illegal P.O. number: ". $self->payinfo if $error;
- $self->paycvv('') if $self->dbdef_table->column('paycvv');
-
- } elsif ( $self->payby eq 'COMP' ) {
-
- my $curuser = $FS::CurrentUser::CurrentUser;
- if ( ! $self->custnum
- && ! $curuser->access_right('Complimentary customer')
- )
- {
- return "You are not permitted to create complimentary accounts."
- }
-
- $error = $self->ut_textn('payinfo');
- return "Illegal comp account issuer: ". $self->payinfo if $error;
- $self->paycvv('') if $self->dbdef_table->column('paycvv');
-
- } elsif ( $self->payby eq 'PREPAY' ) {
-
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\W//g; #anything else would just confuse things
- $self->payinfo($payinfo);
- $error = $self->ut_alpha('payinfo');
- return "Illegal prepayment identifier: ". $self->payinfo if $error;
- return "Unknown prepayment identifier"
- unless qsearchs('prepay_credit', { 'identifier' => $self->payinfo } );
- $self->paycvv('') if $self->dbdef_table->column('paycvv');
-
- }
-
- if ( $self->paydate eq '' || $self->paydate eq '-' ) {
- return "Expiration date required"
- unless $self->payby =~ /^(BILL|PREPAY|CHEK|DCHK|LECB|CASH|WEST|MCRD)$/;
- $self->paydate('');
- } else {
- my( $m, $y );
- if ( $self->paydate =~ /^(\d{1,2})[\/\-](\d{2}(\d{2})?)$/ ) {
- ( $m, $y ) = ( $1, length($2) == 4 ? $2 : "20$2" );
- } elsif ( $self->paydate =~ /^(20)?(\d{2})[\/\-](\d{1,2})[\/\-]\d+$/ ) {
- ( $m, $y ) = ( $3, "20$2" );
- } else {
- return "Illegal expiration date: ". $self->paydate;
- }
- $self->paydate("$y-$m-01");
- my($nowm,$nowy)=(localtime(time))[4,5]; $nowm++; $nowy+=1900;
- return gettext('expired_card')
- if !$import
- && !$ignore_expired_card
- && ( $y<$nowy || ( $y==$nowy && $1<$nowm ) );
- }
-
- if ( $self->payname eq '' && $self->payby !~ /^(CHEK|DCHK)$/ &&
- ( ! $conf->exists('require_cardname')
- || $self->payby !~ /^(CARD|DCRD)$/ )
- ) {
- $self->payname( $self->first. " ". $self->getfield('last') );
- } else {
- $self->payname =~ /^([\w \,\.\-\'\&]+)$/
- or return gettext('illegal_name'). " payname: ". $self->payname;
- $self->payname($1);
- }
-
- foreach my $flag (qw( tax spool_cdr )) {
- $self->$flag() =~ /^(Y?)$/ or return "Illegal $flag: ". $self->$flag();
- $self->$flag($1);
- }
-
- $self->otaker(getotaker) unless $self->otaker;
-
- warn "$me check AFTER: \n". $self->_dump
- if $DEBUG > 2;
-
- $self->SUPER::check;
-}
-
-=item all_pkgs
-
-Returns all packages (see L<FS::cust_pkg>) for this customer.
-
-=cut
-
-sub all_pkgs {
- my $self = shift;
- if ( $self->{'_pkgnum'} ) {
- values %{ $self->{'_pkgnum'}->cache };
- } else {
- qsearch( 'cust_pkg', { 'custnum' => $self->custnum });
- }
-}
-
-=item ncancelled_pkgs
-
-Returns all non-cancelled packages (see L<FS::cust_pkg>) for this customer.
-
-=cut
-
-sub ncancelled_pkgs {
- my $self = shift;
- if ( $self->{'_pkgnum'} ) {
- grep { ! $_->getfield('cancel') } values %{ $self->{'_pkgnum'}->cache };
- } else {
- @{ [ # force list context
- qsearch( 'cust_pkg', {
- 'custnum' => $self->custnum,
- 'cancel' => '',
- }),
- qsearch( 'cust_pkg', {
- 'custnum' => $self->custnum,
- 'cancel' => 0,
- }),
- ] };
- }
-}
-
-=item suspended_pkgs
-
-Returns all suspended packages (see L<FS::cust_pkg>) for this customer.
-
-=cut
-
-sub suspended_pkgs {
- my $self = shift;
- grep { $_->susp } $self->ncancelled_pkgs;
-}
-
-=item unflagged_suspended_pkgs
-
-Returns all unflagged suspended packages (see L<FS::cust_pkg>) for this
-customer (thouse packages without the `manual_flag' set).
-
-=cut
-
-sub unflagged_suspended_pkgs {
- my $self = shift;
- return $self->suspended_pkgs
- unless dbdef->table('cust_pkg')->column('manual_flag');
- grep { ! $_->manual_flag } $self->suspended_pkgs;
-}
-
-=item unsuspended_pkgs
-
-Returns all unsuspended (and uncancelled) packages (see L<FS::cust_pkg>) for
-this customer.
-
-=cut
-
-sub unsuspended_pkgs {
- my $self = shift;
- grep { ! $_->susp } $self->ncancelled_pkgs;
-}
-
-=item num_cancelled_pkgs
-
-Returns the number of cancelled packages (see L<FS::cust_pkg>) for this
-customer.
-
-=cut
-
-sub num_cancelled_pkgs {
- my $self = shift;
- $self->num_pkgs("cancel IS NOT NULL AND cust_pkg.cancel != 0");
-}
-
-sub num_pkgs {
- my( $self, $sql ) = @_;
- my $sth = dbh->prepare(
- "SELECT COUNT(*) FROM cust_pkg WHERE custnum = ? AND $sql"
- ) or die dbh->errstr;
- $sth->execute($self->custnum) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item unsuspend
-
-Unsuspends all unflagged suspended packages (see L</unflagged_suspended_pkgs>
-and L<FS::cust_pkg>) for this customer. Always returns a list: an empty list
-on success or a list of errors.
-
-=cut
-
-sub unsuspend {
- my $self = shift;
- grep { $_->unsuspend } $self->suspended_pkgs;
-}
-
-=item suspend
-
-Suspends all unsuspended packages (see L<FS::cust_pkg>) for this customer.
-
-Returns a list: an empty list on success or a list of errors.
-
-=cut
-
-sub suspend {
- my $self = shift;
- grep { $_->suspend } $self->unsuspended_pkgs;
-}
-
-=item suspend_if_pkgpart PKGPART [ , PKGPART ... ]
-
-Suspends all unsuspended packages (see L<FS::cust_pkg>) matching the listed
-PKGPARTs (see L<FS::part_pkg>).
-
-Returns a list: an empty list on success or a list of errors.
-
-=cut
-
-sub suspend_if_pkgpart {
- my $self = shift;
- my @pkgparts = @_;
- grep { $_->suspend }
- grep { my $pkgpart = $_->pkgpart; grep { $pkgpart eq $_ } @pkgparts }
- $self->unsuspended_pkgs;
-}
-
-=item suspend_unless_pkgpart PKGPART [ , PKGPART ... ]
-
-Suspends all unsuspended packages (see L<FS::cust_pkg>) unless they match the
-listed PKGPARTs (see L<FS::part_pkg>).
-
-Returns a list: an empty list on success or a list of errors.
-
-=cut
-
-sub suspend_unless_pkgpart {
- my $self = shift;
- my @pkgparts = @_;
- grep { $_->suspend }
- grep { my $pkgpart = $_->pkgpart; ! grep { $pkgpart eq $_ } @pkgparts }
- $self->unsuspended_pkgs;
-}
-
-=item cancel [ OPTION => VALUE ... ]
-
-Cancels all uncancelled packages (see L<FS::cust_pkg>) for this customer.
-
-Available options are: I<quiet>, I<reasonnum>, and I<ban>
-
-I<quiet> can be set true to supress email cancellation notices.
-
-# I<reasonnum> can be set to a cancellation reason (see L<FS::cancel_reason>)
-
-I<ban> can be set true to ban this customer's credit card or ACH information,
-if present.
-
-Always returns a list: an empty list on success or a list of errors.
-
-=cut
-
-sub cancel {
- my $self = shift;
- my %opt = @_;
-
- if ( $opt{'ban'} && $self->payby =~ /^(CARD|DCRD|CHEK|DCHK)$/ ) {
-
- #should try decryption (we might have the private key)
- # and if not maybe queue a job for the server that does?
- return ( "Can't (yet) ban encrypted credit cards" )
- if $self->is_encrypted($self->payinfo);
-
- my $ban = new FS::banned_pay $self->_banned_pay_hashref;
- my $error = $ban->insert;
- return ( $error ) if $error;
-
- }
-
- grep { $_ } map { $_->cancel(@_) } $self->ncancelled_pkgs;
-}
-
-sub _banned_pay_hashref {
- my $self = shift;
-
- my %payby2ban = (
- 'CARD' => 'CARD',
- 'DCRD' => 'CARD',
- 'CHEK' => 'CHEK',
- 'DCHK' => 'CHEK'
- );
-
- {
- 'payby' => $payby2ban{$self->payby},
- 'payinfo' => md5_base64($self->payinfo),
- #'reason' =>
- };
-}
-
-=item agent
-
-Returns the agent (see L<FS::agent>) for this customer.
-
-=cut
-
-sub agent {
- my $self = shift;
- qsearchs( 'agent', { 'agentnum' => $self->agentnum } );
-}
-
-=item bill OPTIONS
-
-Generates invoices (see L<FS::cust_bill>) for this customer. Usually used in
-conjunction with the collect method.
-
-Options are passed as name-value pairs.
-
-Currently available options are:
-
-resetup - if set true, re-charges setup fees.
-
-time - bills the customer as if it were that time. Specified as a UNIX
-timestamp; see L<perlfunc/"time">). Also see L<Time::Local> and
-L<Date::Parse> for conversion functions. For example:
-
- use Date::Parse;
- ...
- $cust_main->bill( 'time' => str2time('April 20th, 2001') );
-
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub bill {
- my( $self, %options ) = @_;
- return '' if $self->payby eq 'COMP';
- warn "$me bill customer ". $self->custnum. "\n"
- if $DEBUG;
-
- my $time = $options{'time'} || time;
-
- my $error;
-
- #put below somehow?
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $self->select_for_update; #mutex
-
- #create a new invoice
- #(we'll remove it later if it doesn't actually need to be generated [contains
- # no line items] and we're inside a transaciton so nothing else will see it)
- my $cust_bill = new FS::cust_bill ( {
- 'custnum' => $self->custnum,
- '_date' => $time,
- #'charged' => $charged,
- 'charged' => 0,
- } );
- $error = $cust_bill->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't create invoice for customer #". $self->custnum. ": $error";
- }
- my $invnum = $cust_bill->invnum;
-
- ###
- # find the packages which are due for billing, find out how much they are
- # & generate invoice database.
- ###
-
- my( $total_setup, $total_recur ) = ( 0, 0 );
- my %tax;
- my @precommit_hooks = ();
-
- foreach my $cust_pkg (
- qsearch('cust_pkg', { 'custnum' => $self->custnum } )
- ) {
-
- #NO!! next if $cust_pkg->cancel;
- next if $cust_pkg->getfield('cancel');
-
- warn " bill package ". $cust_pkg->pkgnum. "\n" if $DEBUG > 1;
-
- #? to avoid use of uninitialized value errors... ?
- $cust_pkg->setfield('bill', '')
- unless defined($cust_pkg->bill);
-
- my $part_pkg = $cust_pkg->part_pkg;
-
- my %hash = $cust_pkg->hash;
- my $old_cust_pkg = new FS::cust_pkg \%hash;
-
- my @details = ();
-
- ###
- # bill setup
- ###
-
- my $setup = 0;
- if ( !$cust_pkg->setup || $options{'resetup'} ) {
-
- warn " bill setup\n" if $DEBUG > 1;
-
- $setup = eval { $cust_pkg->calc_setup( $time ) };
- if ( $@ ) {
- $dbh->rollback if $oldAutoCommit;
- return "$@ running calc_setup for $cust_pkg\n";
- }
-
- $cust_pkg->setfield('setup', $time) unless $cust_pkg->setup;
- }
-
- ###
- # bill recurring fee
- ###
-
- my $recur = 0;
- my $sdate;
- if ( $part_pkg->getfield('freq') ne '0' &&
- ! $cust_pkg->getfield('susp') &&
- ( $cust_pkg->getfield('bill') || 0 ) <= $time
- ) {
-
- warn " bill recur\n" if $DEBUG > 1;
-
- # XXX shared with $recur_prog
- $sdate = $cust_pkg->bill || $cust_pkg->setup || $time;
-
- #over two params! lets at least switch to a hashref for the rest...
- my %param = ( 'precommit_hooks' => \@precommit_hooks, );
-
- $recur = eval { $cust_pkg->calc_recur( \$sdate, \@details, \%param ) };
- if ( $@ ) {
- $dbh->rollback if $oldAutoCommit;
- return "$@ running calc_recur for $cust_pkg\n";
- }
-
- #change this bit to use Date::Manip? CAREFUL with timezones (see
- # mailing list archive)
- my ($sec,$min,$hour,$mday,$mon,$year) =
- (localtime($sdate) )[0,1,2,3,4,5];
-
- #pro-rating magic - if $recur_prog fiddles $sdate, want to use that
- # only for figuring next bill date, nothing else, so, reset $sdate again
- # here
- $sdate = $cust_pkg->bill || $cust_pkg->setup || $time;
- $cust_pkg->last_bill($sdate)
- if $cust_pkg->dbdef_table->column('last_bill');
-
- if ( $part_pkg->freq =~ /^\d+$/ ) {
- $mon += $part_pkg->freq;
- until ( $mon < 12 ) { $mon -= 12; $year++; }
- } elsif ( $part_pkg->freq =~ /^(\d+)w$/ ) {
- my $weeks = $1;
- $mday += $weeks * 7;
- } elsif ( $part_pkg->freq =~ /^(\d+)d$/ ) {
- my $days = $1;
- $mday += $days;
- } elsif ( $part_pkg->freq =~ /^(\d+)h$/ ) {
- my $hours = $1;
- $hour += $hours;
- } else {
- $dbh->rollback if $oldAutoCommit;
- return "unparsable frequency: ". $part_pkg->freq;
- }
- $cust_pkg->setfield('bill',
- timelocal_nocheck($sec,$min,$hour,$mday,$mon,$year));
- }
-
- warn "\$setup is undefined" unless defined($setup);
- warn "\$recur is undefined" unless defined($recur);
- warn "\$cust_pkg->bill is undefined" unless defined($cust_pkg->bill);
-
- ###
- # If $cust_pkg has been modified, update it and create cust_bill_pkg records
- ###
-
- if ( $cust_pkg->modified ) {
-
- warn " package ". $cust_pkg->pkgnum. " modified; updating\n"
- if $DEBUG >1;
-
- $error=$cust_pkg->replace($old_cust_pkg);
- if ( $error ) { #just in case
- $dbh->rollback if $oldAutoCommit;
- return "Error modifying pkgnum ". $cust_pkg->pkgnum. ": $error";
- }
-
- $setup = sprintf( "%.2f", $setup );
- $recur = sprintf( "%.2f", $recur );
- if ( $setup < 0 && ! $conf->exists('allow_negative_charges') ) {
- $dbh->rollback if $oldAutoCommit;
- return "negative setup $setup for pkgnum ". $cust_pkg->pkgnum;
- }
- if ( $recur < 0 && ! $conf->exists('allow_negative_charges') ) {
- $dbh->rollback if $oldAutoCommit;
- return "negative recur $recur for pkgnum ". $cust_pkg->pkgnum;
- }
-
- if ( $setup != 0 || $recur != 0 ) {
-
- warn " charges (setup=$setup, recur=$recur); adding line items\n"
- if $DEBUG > 1;
- my $cust_bill_pkg = new FS::cust_bill_pkg ({
- 'invnum' => $invnum,
- 'pkgnum' => $cust_pkg->pkgnum,
- 'setup' => $setup,
- 'recur' => $recur,
- 'sdate' => $sdate,
- 'edate' => $cust_pkg->bill,
- 'details' => \@details,
- });
- $error = $cust_bill_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't create invoice line item for invoice #$invnum: $error";
- }
- $total_setup += $setup;
- $total_recur += $recur;
-
- ###
- # handle taxes
- ###
-
- unless ( $self->tax =~ /Y/i || $self->payby eq 'COMP' ) {
-
- my $prefix =
- ( $conf->exists('tax-ship_address') && length($self->ship_last) )
- ? 'ship_'
- : '';
- my %taxhash = map { $_ => $self->get("$prefix$_") }
- qw( state county country );
-
- $taxhash{'taxclass'} = $part_pkg->taxclass;
-
- my @taxes = qsearch( 'cust_main_county', \%taxhash );
-
- unless ( @taxes ) {
- $taxhash{'taxclass'} = '';
- @taxes = qsearch( 'cust_main_county', \%taxhash );
- }
-
- #one more try at a whole-country tax rate
- unless ( @taxes ) {
- $taxhash{$_} = '' foreach qw( state county );
- @taxes = qsearch( 'cust_main_county', \%taxhash );
- }
-
- # maybe eliminate this entirely, along with all the 0% records
- unless ( @taxes ) {
- $dbh->rollback if $oldAutoCommit;
- return
- "fatal: can't find tax rate for state/county/country/taxclass ".
- join('/', ( map $self->get("$prefix$_"),
- qw(state county country)
- ),
- $part_pkg->taxclass ). "\n";
- }
-
- foreach my $tax ( @taxes ) {
-
- my $taxable_charged = 0;
- $taxable_charged += $setup
- unless $part_pkg->setuptax =~ /^Y$/i
- || $tax->setuptax =~ /^Y$/i;
- $taxable_charged += $recur
- unless $part_pkg->recurtax =~ /^Y$/i
- || $tax->recurtax =~ /^Y$/i;
- next unless $taxable_charged;
-
- if ( $tax->exempt_amount && $tax->exempt_amount > 0 ) {
- #my ($mon,$year) = (localtime($sdate) )[4,5];
- my ($mon,$year) = (localtime( $sdate || $cust_bill->_date ) )[4,5];
- $mon++;
- my $freq = $part_pkg->freq || 1;
- if ( $freq !~ /(\d+)$/ ) {
- $dbh->rollback if $oldAutoCommit;
- return "daily/weekly package definitions not (yet?)".
- " compatible with monthly tax exemptions";
- }
- my $taxable_per_month =
- sprintf("%.2f", $taxable_charged / $freq );
-
- #call the whole thing off if this customer has any old
- #exemption records...
- my @cust_tax_exempt =
- qsearch( 'cust_tax_exempt' => { custnum=> $self->custnum } );
- if ( @cust_tax_exempt ) {
- $dbh->rollback if $oldAutoCommit;
- return
- 'this customer still has old-style tax exemption records; '.
- 'run bin/fs-migrate-cust_tax_exempt?';
- }
-
- foreach my $which_month ( 1 .. $freq ) {
-
- #maintain the new exemption table now
- my $sql = "
- SELECT SUM(amount)
- FROM cust_tax_exempt_pkg
- LEFT JOIN cust_bill_pkg USING ( billpkgnum )
- LEFT JOIN cust_bill USING ( invnum )
- WHERE custnum = ?
- AND taxnum = ?
- AND year = ?
- AND month = ?
- ";
- my $sth = dbh->prepare($sql) or do {
- $dbh->rollback if $oldAutoCommit;
- return "fatal: can't lookup exising exemption: ". dbh->errstr;
- };
- $sth->execute(
- $self->custnum,
- $tax->taxnum,
- 1900+$year,
- $mon,
- ) or do {
- $dbh->rollback if $oldAutoCommit;
- return "fatal: can't lookup exising exemption: ". dbh->errstr;
- };
- my $existing_exemption = $sth->fetchrow_arrayref->[0] || 0;
-
- my $remaining_exemption =
- $tax->exempt_amount - $existing_exemption;
- if ( $remaining_exemption > 0 ) {
- my $addl = $remaining_exemption > $taxable_per_month
- ? $taxable_per_month
- : $remaining_exemption;
- $taxable_charged -= $addl;
-
- my $cust_tax_exempt_pkg = new FS::cust_tax_exempt_pkg ( {
- 'billpkgnum' => $cust_bill_pkg->billpkgnum,
- 'taxnum' => $tax->taxnum,
- 'year' => 1900+$year,
- 'month' => $mon,
- 'amount' => sprintf("%.2f", $addl ),
- } );
- $error = $cust_tax_exempt_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "fatal: can't insert cust_tax_exempt_pkg: $error";
- }
- } # if $remaining_exemption > 0
-
- #++
- $mon++;
- #until ( $mon < 12 ) { $mon -= 12; $year++; }
- until ( $mon < 13 ) { $mon -= 12; $year++; }
-
- } #foreach $which_month
-
- } #if $tax->exempt_amount
-
- $taxable_charged = sprintf( "%.2f", $taxable_charged);
-
- #$tax += $taxable_charged * $cust_main_county->tax / 100
- $tax{ $tax->taxname || 'Tax' } +=
- $taxable_charged * $tax->tax / 100
-
- } #foreach my $tax ( @taxes )
-
- } #unless $self->tax =~ /Y/i || $self->payby eq 'COMP'
-
- } #if $setup != 0 || $recur != 0
-
- } #if $cust_pkg->modified
-
- } #foreach my $cust_pkg
-
- unless ( $cust_bill->cust_bill_pkg ) {
- $cust_bill->delete; #don't create an invoice w/o line items
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- return '';
- }
-
- my $charged = sprintf( "%.2f", $total_setup + $total_recur );
-
- foreach my $taxname ( grep { $tax{$_} > 0 } keys %tax ) {
- my $tax = sprintf("%.2f", $tax{$taxname} );
- $charged = sprintf( "%.2f", $charged+$tax );
-
- my $cust_bill_pkg = new FS::cust_bill_pkg ({
- 'invnum' => $invnum,
- 'pkgnum' => 0,
- 'setup' => $tax,
- 'recur' => 0,
- 'sdate' => '',
- 'edate' => '',
- 'itemdesc' => $taxname,
- });
- $error = $cust_bill_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't create invoice line item for invoice #$invnum: $error";
- }
- $total_setup += $tax;
-
- }
-
- $cust_bill->charged( sprintf( "%.2f", $total_setup + $total_recur ) );
- $error = $cust_bill->replace;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't update charged for invoice #$invnum: $error";
- }
-
- foreach my $hook ( @precommit_hooks ) {
- eval {
- &{$hook}; #($self) ?
- };
- if ( $@ ) {
- $dbh->rollback if $oldAutoCommit;
- return "$@ running precommit hook $hook\n";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-}
-
-=item collect OPTIONS
-
-(Attempt to) collect money for this customer's outstanding invoices (see
-L<FS::cust_bill>). Usually used after the bill method.
-
-Depending on the value of `payby', this may print or email an invoice (I<BILL>,
-I<DCRD>, or I<DCHK>), charge a credit card (I<CARD>), charge via electronic
-check/ACH (I<CHEK>), or just add any necessary (pseudo-)payment (I<COMP>).
-
-Most actions are now triggered by invoice events; see L<FS::part_bill_event>
-and the invoice events web interface.
-
-If there is an error, returns the error, otherwise returns false.
-
-Options are passed as name-value pairs.
-
-Currently available options are:
-
-invoice_time - Use this time when deciding when to print invoices and
-late notices on those invoices. The default is now. It is specified as a UNIX timestamp; see L<perlfunc/"time">). Also see L<Time::Local> and L<Date::Parse>
-for conversion functions.
-
-retry - Retry card/echeck/LEC transactions even when not scheduled by invoice
-events.
-
-quiet - set true to surpress email card/ACH decline notices.
-
-freq - "1d" for the traditional, daily events (the default), or "1m" for the
-new monthly events
-
-payby - allows for one time override of normal customer billing method
-
-=cut
-
-sub collect {
- my( $self, %options ) = @_;
- my $invoice_time = $options{'invoice_time'} || time;
-
- #put below somehow?
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $self->select_for_update; #mutex
-
- my $balance = $self->balance;
- warn "$me collect customer ". $self->custnum. ": balance $balance\n"
- if $DEBUG;
- unless ( $balance > 0 ) { #redundant?????
- $dbh->rollback if $oldAutoCommit; #hmm
- return '';
- }
-
- if ( exists($options{'retry_card'}) ) {
- carp 'retry_card option passed to collect is deprecated; use retry';
- $options{'retry'} ||= $options{'retry_card'};
- }
- if ( exists($options{'retry'}) && $options{'retry'} ) {
- my $error = $self->retry_realtime;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $extra_sql = '';
- if ( defined $options{'freq'} && $options{'freq'} eq '1m' ) {
- $extra_sql = " AND freq = '1m' ";
- } else {
- $extra_sql = " AND ( freq = '1d' OR freq IS NULL OR freq = '' ) ";
- }
-
- foreach my $cust_bill ( $self->open_cust_bill ) {
-
- # don't try to charge for the same invoice if it's already in a batch
- #next if qsearchs( 'cust_pay_batch', { 'invnum' => $cust_bill->invnum } );
-
- last if $self->balance <= 0;
-
- warn " invnum ". $cust_bill->invnum. " (owed ". $cust_bill->owed. ")\n"
- if $DEBUG > 1;
-
- foreach my $part_bill_event (
- sort { $a->seconds <=> $b->seconds
- || $a->weight <=> $b->weight
- || $a->eventpart <=> $b->eventpart }
- grep { $_->seconds <= ( $invoice_time - $cust_bill->_date )
- && ! qsearch( 'cust_bill_event', {
- 'invnum' => $cust_bill->invnum,
- 'eventpart' => $_->eventpart,
- 'status' => 'done',
- } )
- }
- qsearch( {
- 'table' => 'part_bill_event',
- 'hashref' => { 'payby' => (exists($options{'payby'})
- ? $options{'payby'}
- : $self->payby
- ),
- 'disabled' => '', },
- 'extra_sql' => $extra_sql,
- } )
- ) {
-
- last if $cust_bill->owed <= 0 # don't run subsequent events if owed<=0
- || $self->balance <= 0; # or if balance<=0
-
- warn " calling invoice event (". $part_bill_event->eventcode. ")\n"
- if $DEBUG > 1;
- my $cust_main = $self; #for callback
-
- my $error;
- {
- local $realtime_bop_decline_quiet = 1 if $options{'quiet'};
- local $SIG{__DIE__}; # don't want Mason __DIE__ handler active
- $error = eval $part_bill_event->eventcode;
- }
-
- my $status = '';
- my $statustext = '';
- if ( $@ ) {
- $status = 'failed';
- $statustext = $@;
- } elsif ( $error ) {
- $status = 'done';
- $statustext = $error;
- } else {
- $status = 'done'
- }
-
- #add cust_bill_event
- my $cust_bill_event = new FS::cust_bill_event {
- 'invnum' => $cust_bill->invnum,
- 'eventpart' => $part_bill_event->eventpart,
- #'_date' => $invoice_time,
- '_date' => time,
- 'status' => $status,
- 'statustext' => $statustext,
- };
- $error = $cust_bill_event->insert;
- if ( $error ) {
- #$dbh->rollback if $oldAutoCommit;
- #return "error: $error";
-
- # gah, even with transactions.
- $dbh->commit if $oldAutoCommit; #well.
- my $e = 'WARNING: Event run but database not updated - '.
- 'error inserting cust_bill_event, invnum #'. $cust_bill->invnum.
- ', eventpart '. $part_bill_event->eventpart.
- ": $error";
- warn $e;
- return $e;
- }
-
-
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item retry_realtime
-
-Schedules realtime credit card / electronic check / LEC billing events for
-for retry. Useful if card information has changed or manual retry is desired.
-The 'collect' method must be called to actually retry the transaction.
-
-Implementation details: For each of this customer's open invoices, changes
-the status of the first "done" (with statustext error) realtime processing
-event to "failed".
-
-=cut
-
-sub retry_realtime {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_bill (
- grep { $_->cust_bill_event }
- $self->open_cust_bill
- ) {
- my @cust_bill_event =
- sort { $a->part_bill_event->seconds <=> $b->part_bill_event->seconds }
- grep {
- #$_->part_bill_event->plan eq 'realtime-card'
- $_->part_bill_event->eventcode =~
- /\$cust_bill\->realtime_(card|ach|lec)/
- && $_->status eq 'done'
- && $_->statustext
- }
- $cust_bill->cust_bill_event;
- next unless @cust_bill_event;
- my $error = $cust_bill_event[0]->retry;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error scheduling invoice event for retry: $error";
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item realtime_bop METHOD AMOUNT [ OPTION => VALUE ... ]
-
-Runs a realtime credit card, ACH (electronic check) or phone bill transaction
-via a Business::OnlinePayment realtime gateway. See
-L<http://420.am/business-onlinepayment> for supported gateways.
-
-Available methods are: I<CC>, I<ECHECK> and I<LEC>
-
-Available options are: I<description>, I<invnum>, I<quiet>
-
-The additional options I<payname>, I<address1>, I<address2>, I<city>, I<state>,
-I<zip>, I<payinfo> and I<paydate> are also available. Any of these options,
-if set, will override the value from the customer record.
-
-I<description> is a free-text field passed to the gateway. It defaults to
-"Internet services".
-
-If an I<invnum> is specified, this payment (if successful) is applied to the
-specified invoice. If you don't specify an I<invnum> you might want to
-call the B<apply_payments> method.
-
-I<quiet> can be set true to surpress email decline notices.
-
-(moved from cust_bill) (probably should get realtime_{card,ach,lec} here too)
-
-=cut
-
-sub realtime_bop {
- my( $self, $method, $amount, %options ) = @_;
- if ( $DEBUG ) {
- warn "$me realtime_bop: $method $amount\n";
- warn " $_ => $options{$_}\n" foreach keys %options;
- }
-
- $options{'description'} ||= 'Internet services';
-
- eval "use Business::OnlinePayment";
- die $@ if $@;
-
- my $payinfo = exists($options{'payinfo'})
- ? $options{'payinfo'}
- : $self->payinfo;
-
- ###
- # select a gateway
- ###
-
- my $taxclass = '';
- if ( $options{'invnum'} ) {
- my $cust_bill = qsearchs('cust_bill', { 'invnum' => $options{'invnum'} } );
- die "invnum ". $options{'invnum'}. " not found" unless $cust_bill;
- my @taxclasses =
- map { $_->part_pkg->taxclass }
- grep { $_ }
- map { $_->cust_pkg }
- $cust_bill->cust_bill_pkg;
- unless ( grep { $taxclasses[0] ne $_ } @taxclasses ) { #unless there are
- #different taxclasses
- $taxclass = $taxclasses[0];
- }
- }
-
- #look for an agent gateway override first
- my $cardtype;
- if ( $method eq 'CC' ) {
- $cardtype = cardtype($payinfo);
- } elsif ( $method eq 'ECHECK' ) {
- $cardtype = 'ACH';
- } else {
- $cardtype = $method;
- }
-
- my $override =
- qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => $cardtype,
- taxclass => $taxclass, } )
- || qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => '',
- taxclass => $taxclass, } )
- || qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => $cardtype,
- taxclass => '', } )
- || qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => '',
- taxclass => '', } );
-
- my $payment_gateway = '';
- my( $processor, $login, $password, $action, @bop_options );
- if ( $override ) { #use a payment gateway override
-
- $payment_gateway = $override->payment_gateway;
-
- $processor = $payment_gateway->gateway_module;
- $login = $payment_gateway->gateway_username;
- $password = $payment_gateway->gateway_password;
- $action = $payment_gateway->gateway_action;
- @bop_options = $payment_gateway->options;
-
- } else { #use the standard settings from the config
-
- ( $processor, $login, $password, $action, @bop_options ) =
- $self->default_payment_gateway($method);
-
- }
-
- ###
- # massage data
- ###
-
- my $address = exists($options{'address1'})
- ? $options{'address1'}
- : $self->address1;
- my $address2 = exists($options{'address2'})
- ? $options{'address2'}
- : $self->address2;
- $address .= ", ". $address2 if length($address2);
-
- my $o_payname = exists($options{'payname'})
- ? $options{'payname'}
- : $self->payname;
- my($payname, $payfirst, $paylast);
- if ( $o_payname && $method ne 'ECHECK' ) {
- ($payname = $o_payname) =~ /^\s*([\w \,\.\-\']*)?\s+([\w\,\.\-\']+)\s*$/
- or return "Illegal payname $payname";
- ($payfirst, $paylast) = ($1, $2);
- } else {
- $payfirst = $self->getfield('first');
- $paylast = $self->getfield('last');
- $payname = "$payfirst $paylast";
- }
-
- my @invoicing_list = grep { $_ ne 'POST' } $self->invoicing_list;
- if ( $conf->exists('emailinvoiceauto')
- || ( $conf->exists('emailinvoiceonly') && ! @invoicing_list ) ) {
- push @invoicing_list, $self->all_emails;
- }
-
- my $email = ($conf->exists('business-onlinepayment-email-override'))
- ? $conf->config('business-onlinepayment-email-override')
- : $invoicing_list[0];
-
- my %content = ();
-
- my $payip = exists($options{'payip'})
- ? $options{'payip'}
- : $self->payip;
- $content{customer_ip} = $payip
- if length($payip);
-
- if ( $method eq 'CC' ) {
-
- $content{card_number} = $payinfo;
- my $paydate = exists($options{'paydate'})
- ? $options{'paydate'}
- : $self->paydate;
- $paydate =~ /^\d{2}(\d{2})[\/\-](\d+)[\/\-]\d+$/;
- $content{expiration} = "$2/$1";
-
- my $paycvv = exists($options{'paycvv'})
- ? $options{'paycvv'}
- : $self->paycvv;
- $content{cvv2} = $self->paycvv
- if length($paycvv);
-
- my $paystart_month = exists($options{'paystart_month'})
- ? $options{'paystart_month'}
- : $self->paystart_month;
-
- my $paystart_year = exists($options{'paystart_year'})
- ? $options{'paystart_year'}
- : $self->paystart_year;
-
- $content{card_start} = "$paystart_month/$paystart_year"
- if $paystart_month && $paystart_year;
-
- my $payissue = exists($options{'payissue'})
- ? $options{'payissue'}
- : $self->payissue;
- $content{issue_number} = $payissue if $payissue;
-
- $content{recurring_billing} = 'YES'
- if qsearch('cust_pay', { 'custnum' => $self->custnum,
- 'payby' => 'CARD',
- 'payinfo' => $payinfo,
- } );
-
- } elsif ( $method eq 'ECHECK' ) {
- ( $content{account_number}, $content{routing_code} ) =
- split('@', $payinfo);
- $content{bank_name} = $o_payname;
- $content{account_type} = 'CHECKING';
- $content{account_name} = $payname;
- $content{customer_org} = $self->company ? 'B' : 'I';
- $content{customer_ssn} = exists($options{'ss'})
- ? $options{'ss'}
- : $self->ss;
- } elsif ( $method eq 'LEC' ) {
- $content{phone} = $payinfo;
- }
-
- ###
- # run transaction(s)
- ###
-
- my( $action1, $action2 ) = split(/\s*\,\s*/, $action );
-
- my $transaction = new Business::OnlinePayment( $processor, @bop_options );
- $transaction->content(
- 'type' => $method,
- 'login' => $login,
- 'password' => $password,
- 'action' => $action1,
- 'description' => $options{'description'},
- 'amount' => $amount,
- 'invoice_number' => $options{'invnum'},
- 'customer_id' => $self->custnum,
- 'last_name' => $paylast,
- 'first_name' => $payfirst,
- 'name' => $payname,
- 'address' => $address,
- 'city' => ( exists($options{'city'})
- ? $options{'city'}
- : $self->city ),
- 'state' => ( exists($options{'state'})
- ? $options{'state'}
- : $self->state ),
- 'zip' => ( exists($options{'zip'})
- ? $options{'zip'}
- : $self->zip ),
- 'country' => ( exists($options{'country'})
- ? $options{'country'}
- : $self->country ),
- 'referer' => 'http://cleanwhisker.420.am/',
- 'email' => $email,
- 'phone' => $self->daytime || $self->night,
- %content, #after
- );
- $transaction->submit();
-
- if ( $transaction->is_success() && $action2 ) {
- my $auth = $transaction->authorization;
- my $ordernum = $transaction->can('order_number')
- ? $transaction->order_number
- : '';
-
- my $capture =
- new Business::OnlinePayment( $processor, @bop_options );
-
- my %capture = (
- %content,
- type => $method,
- action => $action2,
- login => $login,
- password => $password,
- order_number => $ordernum,
- amount => $amount,
- authorization => $auth,
- description => $options{'description'},
- );
-
- foreach my $field (qw( authorization_source_code returned_ACI transaction_identifier validation_code
- transaction_sequence_num local_transaction_date
- local_transaction_time AVS_result_code )) {
- $capture{$field} = $transaction->$field() if $transaction->can($field);
- }
-
- $capture->content( %capture );
-
- $capture->submit();
-
- unless ( $capture->is_success ) {
- my $e = "Authorization successful but capture failed, custnum #".
- $self->custnum. ': '. $capture->result_code.
- ": ". $capture->error_message;
- warn $e;
- return $e;
- }
-
- }
-
- ###
- # remove paycvv after initial transaction
- ###
-
- #false laziness w/misc/process/payment.cgi - check both to make sure working
- # correctly
- if ( defined $self->dbdef_table->column('paycvv')
- && length($self->paycvv)
- && ! grep { $_ eq cardtype($payinfo) } $conf->config('cvv-save')
- ) {
- my $error = $self->remove_cvv;
- if ( $error ) {
- warn "WARNING: error removing cvv: $error\n";
- }
- }
-
- ###
- # result handling
- ###
-
- if ( $transaction->is_success() ) {
-
- my %method2payby = (
- 'CC' => 'CARD',
- 'ECHECK' => 'CHEK',
- 'LEC' => 'LECB',
- );
-
- my $paybatch = '';
- if ( $payment_gateway ) { # agent override
- $paybatch = $payment_gateway->gatewaynum. '-';
- }
-
- $paybatch .= "$processor:". $transaction->authorization;
-
- $paybatch .= ':'. $transaction->order_number
- if $transaction->can('order_number')
- && length($transaction->order_number);
-
- my $cust_pay = new FS::cust_pay ( {
- 'custnum' => $self->custnum,
- 'invnum' => $options{'invnum'},
- 'paid' => $amount,
- '_date' => '',
- 'payby' => $method2payby{$method},
- 'payinfo' => $payinfo,
- 'paybatch' => $paybatch,
- } );
- my $error = $cust_pay->insert;
- if ( $error ) {
- $cust_pay->invnum(''); #try again with no specific invnum
- my $error2 = $cust_pay->insert;
- if ( $error2 ) {
- # gah, even with transactions.
- my $e = 'WARNING: Card/ACH debited but database not updated - '.
- "error inserting payment ($processor): $error2".
- " (previously tried insert with invnum #$options{'invnum'}" .
- ": $error )";
- warn $e;
- return $e;
- }
- }
- return ''; #no error
-
- } else {
-
- my $perror = "$processor error: ". $transaction->error_message;
-
- if ( !$options{'quiet'} && !$realtime_bop_decline_quiet
- && $conf->exists('emaildecline')
- && grep { $_ ne 'POST' } $self->invoicing_list
- && ! grep { $transaction->error_message =~ /$_/ }
- $conf->config('emaildecline-exclude')
- ) {
- my @templ = $conf->config('declinetemplate');
- my $template = new Text::Template (
- TYPE => 'ARRAY',
- SOURCE => [ map "$_\n", @templ ],
- ) or return "($perror) can't create template: $Text::Template::ERROR";
- $template->compile()
- or return "($perror) can't compile template: $Text::Template::ERROR";
-
- my $templ_hash = { error => $transaction->error_message };
-
- my $error = send_email(
- 'from' => $conf->config('invoice_from'),
- 'to' => [ grep { $_ ne 'POST' } $self->invoicing_list ],
- 'subject' => 'Your payment could not be processed',
- 'body' => [ $template->fill_in(HASH => $templ_hash) ],
- );
-
- $perror .= " (also received error sending decline notification: $error)"
- if $error;
-
- }
-
- return $perror;
- }
-
-}
-
-=item default_payment_gateway
-
-=cut
-
-sub default_payment_gateway {
- my( $self, $method ) = @_;
-
- die "Real-time processing not enabled\n"
- unless $conf->exists('business-onlinepayment');
-
- #load up config
- my $bop_config = 'business-onlinepayment';
- $bop_config .= '-ach'
- if $method eq 'ECHECK' && $conf->exists($bop_config. '-ach');
- my ( $processor, $login, $password, $action, @bop_options ) =
- $conf->config($bop_config);
- $action ||= 'normal authorization';
- pop @bop_options if scalar(@bop_options) % 2 && $bop_options[-1] =~ /^\s*$/;
- die "No real-time processor is enabled - ".
- "did you set the business-onlinepayment configuration value?\n"
- unless $processor;
-
- ( $processor, $login, $password, $action, @bop_options )
-}
-
-=item remove_cvv
-
-Removes the I<paycvv> field from the database directly.
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub remove_cvv {
- my $self = shift;
- my $sth = dbh->prepare("UPDATE cust_main SET paycvv = '' WHERE custnum = ?")
- or return dbh->errstr;
- $sth->execute($self->custnum)
- or return $sth->errstr;
- $self->paycvv('');
- '';
-}
-
-=item realtime_refund_bop METHOD [ OPTION => VALUE ... ]
-
-Refunds a realtime credit card, ACH (electronic check) or phone bill transaction
-via a Business::OnlinePayment realtime gateway. See
-L<http://420.am/business-onlinepayment> for supported gateways.
-
-Available methods are: I<CC>, I<ECHECK> and I<LEC>
-
-Available options are: I<amount>, I<reason>, I<paynum>
-
-Most gateways require a reference to an original payment transaction to refund,
-so you probably need to specify a I<paynum>.
-
-I<amount> defaults to the original amount of the payment if not specified.
-
-I<reason> specifies a reason for the refund.
-
-Implementation note: If I<amount> is unspecified or equal to the amount of the
-orignal payment, first an attempt is made to "void" the transaction via
-the gateway (to cancel a not-yet settled transaction) and then if that fails,
-the normal attempt is made to "refund" ("credit") the transaction via the
-gateway is attempted.
-
-#The additional options I<payname>, I<address1>, I<address2>, I<city>, I<state>,
-#I<zip>, I<payinfo> and I<paydate> are also available. Any of these options,
-#if set, will override the value from the customer record.
-
-#If an I<invnum> is specified, this payment (if successful) is applied to the
-#specified invoice. If you don't specify an I<invnum> you might want to
-#call the B<apply_payments> method.
-
-=cut
-
-#some false laziness w/realtime_bop, not enough to make it worth merging
-#but some useful small subs should be pulled out
-sub realtime_refund_bop {
- my( $self, $method, %options ) = @_;
- if ( $DEBUG ) {
- warn "$me realtime_refund_bop: $method refund\n";
- warn " $_ => $options{$_}\n" foreach keys %options;
- }
-
- eval "use Business::OnlinePayment";
- die $@ if $@;
-
- ###
- # look up the original payment and optionally a gateway for that payment
- ###
-
- my $cust_pay = '';
- my $amount = $options{'amount'};
-
- my( $processor, $login, $password, @bop_options ) ;
- my( $auth, $order_number ) = ( '', '', '' );
-
- if ( $options{'paynum'} ) {
-
- warn " paynum: $options{paynum}\n" if $DEBUG > 1;
- $cust_pay = qsearchs('cust_pay', { paynum=>$options{'paynum'} } )
- or return "Unknown paynum $options{'paynum'}";
- $amount ||= $cust_pay->paid;
-
- $cust_pay->paybatch =~ /^((\d+)\-)?(\w+):\s*([\w\-]*)(:([\w\-]+))?$/
- or return "Can't parse paybatch for paynum $options{'paynum'}: ".
- $cust_pay->paybatch;
- my $gatewaynum = '';
- ( $gatewaynum, $processor, $auth, $order_number ) = ( $2, $3, $4, $6 );
-
- if ( $gatewaynum ) { #gateway for the payment to be refunded
-
- my $payment_gateway =
- qsearchs('payment_gateway', { 'gatewaynum' => $gatewaynum } );
- die "payment gateway $gatewaynum not found"
- unless $payment_gateway;
-
- $processor = $payment_gateway->gateway_module;
- $login = $payment_gateway->gateway_username;
- $password = $payment_gateway->gateway_password;
- @bop_options = $payment_gateway->options;
-
- } else { #try the default gateway
-
- my( $conf_processor, $unused_action );
- ( $conf_processor, $login, $password, $unused_action, @bop_options ) =
- $self->default_payment_gateway($method);
-
- return "processor of payment $options{'paynum'} $processor does not".
- " match default processor $conf_processor"
- unless $processor eq $conf_processor;
-
- }
-
-
- } else { # didn't specify a paynum, so look for agent gateway overrides
- # like a normal transaction
-
- my $cardtype;
- if ( $method eq 'CC' ) {
- $cardtype = cardtype($self->payinfo);
- } elsif ( $method eq 'ECHECK' ) {
- $cardtype = 'ACH';
- } else {
- $cardtype = $method;
- }
- my $override =
- qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => $cardtype,
- taxclass => '', } )
- || qsearchs('agent_payment_gateway', { agentnum => $self->agentnum,
- cardtype => '',
- taxclass => '', } );
-
- if ( $override ) { #use a payment gateway override
-
- my $payment_gateway = $override->payment_gateway;
-
- $processor = $payment_gateway->gateway_module;
- $login = $payment_gateway->gateway_username;
- $password = $payment_gateway->gateway_password;
- #$action = $payment_gateway->gateway_action;
- @bop_options = $payment_gateway->options;
-
- } else { #use the standard settings from the config
-
- my $unused_action;
- ( $processor, $login, $password, $unused_action, @bop_options ) =
- $self->default_payment_gateway($method);
-
- }
-
- }
- return "neither amount nor paynum specified" unless $amount;
-
- my %content = (
- 'type' => $method,
- 'login' => $login,
- 'password' => $password,
- 'order_number' => $order_number,
- 'amount' => $amount,
- 'referer' => 'http://cleanwhisker.420.am/',
- );
- $content{authorization} = $auth
- if length($auth); #echeck/ACH transactions have an order # but no auth
- #(at least with authorize.net)
-
- #first try void if applicable
- if ( $cust_pay && $cust_pay->paid == $amount ) { #and check dates?
- warn " attempting void\n" if $DEBUG > 1;
- my $void = new Business::OnlinePayment( $processor, @bop_options );
- $void->content( 'action' => 'void', %content );
- $void->submit();
- if ( $void->is_success ) {
- my $error = $cust_pay->void($options{'reason'});
- if ( $error ) {
- # gah, even with transactions.
- my $e = 'WARNING: Card/ACH voided but database not updated - '.
- "error voiding payment: $error";
- warn $e;
- return $e;
- }
- warn " void successful\n" if $DEBUG > 1;
- return '';
- }
- }
-
- warn " void unsuccessful, trying refund\n"
- if $DEBUG > 1;
-
- #massage data
- my $address = $self->address1;
- $address .= ", ". $self->address2 if $self->address2;
-
- my($payname, $payfirst, $paylast);
- if ( $self->payname && $method ne 'ECHECK' ) {
- $payname = $self->payname;
- $payname =~ /^\s*([\w \,\.\-\']*)?\s+([\w\,\.\-\']+)\s*$/
- or return "Illegal payname $payname";
- ($payfirst, $paylast) = ($1, $2);
- } else {
- $payfirst = $self->getfield('first');
- $paylast = $self->getfield('last');
- $payname = "$payfirst $paylast";
- }
-
- my @invoicing_list = grep { $_ ne 'POST' } $self->invoicing_list;
- if ( $conf->exists('emailinvoiceauto')
- || ( $conf->exists('emailinvoiceonly') && ! @invoicing_list ) ) {
- push @invoicing_list, $self->all_emails;
- }
-
- my $email = ($conf->exists('business-onlinepayment-email-override'))
- ? $conf->config('business-onlinepayment-email-override')
- : $invoicing_list[0];
-
- my $payip = exists($options{'payip'})
- ? $options{'payip'}
- : $self->payip;
- $content{customer_ip} = $payip
- if length($payip);
-
- my $payinfo = '';
- if ( $method eq 'CC' ) {
-
- if ( $cust_pay ) {
- $content{card_number} = $payinfo = $cust_pay->payinfo;
- #$self->paydate =~ /^\d{2}(\d{2})[\/\-](\d+)[\/\-]\d+$/;
- #$content{expiration} = "$2/$1";
- } else {
- $content{card_number} = $payinfo = $self->payinfo;
- $self->paydate =~ /^\d{2}(\d{2})[\/\-](\d+)[\/\-]\d+$/;
- $content{expiration} = "$2/$1";
- }
-
- } elsif ( $method eq 'ECHECK' ) {
- ( $content{account_number}, $content{routing_code} ) =
- split('@', $payinfo = $self->payinfo);
- $content{bank_name} = $self->payname;
- $content{account_type} = 'CHECKING';
- $content{account_name} = $payname;
- $content{customer_org} = $self->company ? 'B' : 'I';
- $content{customer_ssn} = $self->ss;
- } elsif ( $method eq 'LEC' ) {
- $content{phone} = $payinfo = $self->payinfo;
- }
-
- #then try refund
- my $refund = new Business::OnlinePayment( $processor, @bop_options );
- my %sub_content = $refund->content(
- 'action' => 'credit',
- 'customer_id' => $self->custnum,
- 'last_name' => $paylast,
- 'first_name' => $payfirst,
- 'name' => $payname,
- 'address' => $address,
- 'city' => $self->city,
- 'state' => $self->state,
- 'zip' => $self->zip,
- 'country' => $self->country,
- 'email' => $email,
- 'phone' => $self->daytime || $self->night,
- %content, #after
- );
- warn join('', map { " $_ => $sub_content{$_}\n" } keys %sub_content )
- if $DEBUG > 1;
- $refund->submit();
-
- return "$processor error: ". $refund->error_message
- unless $refund->is_success();
-
- my %method2payby = (
- 'CC' => 'CARD',
- 'ECHECK' => 'CHEK',
- 'LEC' => 'LECB',
- );
-
- my $paybatch = "$processor:". $refund->authorization;
- $paybatch .= ':'. $refund->order_number
- if $refund->can('order_number') && $refund->order_number;
-
- while ( $cust_pay && $cust_pay->unappled < $amount ) {
- my @cust_bill_pay = $cust_pay->cust_bill_pay;
- last unless @cust_bill_pay;
- my $cust_bill_pay = pop @cust_bill_pay;
- my $error = $cust_bill_pay->delete;
- last if $error;
- }
-
- my $cust_refund = new FS::cust_refund ( {
- 'custnum' => $self->custnum,
- 'paynum' => $options{'paynum'},
- 'refund' => $amount,
- '_date' => '',
- 'payby' => $method2payby{$method},
- 'payinfo' => $payinfo,
- 'paybatch' => $paybatch,
- 'reason' => $options{'reason'} || 'card or ACH refund',
- } );
- my $error = $cust_refund->insert;
- if ( $error ) {
- $cust_refund->paynum(''); #try again with no specific paynum
- my $error2 = $cust_refund->insert;
- if ( $error2 ) {
- # gah, even with transactions.
- my $e = 'WARNING: Card/ACH refunded but database not updated - '.
- "error inserting refund ($processor): $error2".
- " (previously tried insert with paynum #$options{'paynum'}" .
- ": $error )";
- warn $e;
- return $e;
- }
- }
-
- ''; #no error
-
-}
-
-=item total_owed
-
-Returns the total owed for this customer on all invoices
-(see L<FS::cust_bill/owed>).
-
-=cut
-
-sub total_owed {
- my $self = shift;
- $self->total_owed_date(2145859200); #12/31/2037
-}
-
-=item total_owed_date TIME
-
-Returns the total owed for this customer on all invoices with date earlier than
-TIME. TIME is specified as a UNIX timestamp; see L<perlfunc/"time">). Also
-see L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-sub total_owed_date {
- my $self = shift;
- my $time = shift;
- my $total_bill = 0;
- foreach my $cust_bill (
- grep { $_->_date <= $time }
- qsearch('cust_bill', { 'custnum' => $self->custnum, } )
- ) {
- $total_bill += $cust_bill->owed;
- }
- sprintf( "%.2f", $total_bill );
-}
-
-=item apply_credits OPTION => VALUE ...
-
-Applies (see L<FS::cust_credit_bill>) unapplied credits (see L<FS::cust_credit>)
-to outstanding invoice balances in chronological order (or reverse
-chronological order if the I<order> option is set to B<newest>) and returns the
-value of any remaining unapplied credits available for refund (see
-L<FS::cust_refund>).
-
-=cut
-
-sub apply_credits {
- my $self = shift;
- my %opt = @_;
-
- return 0 unless $self->total_credited;
-
- my @credits = sort { $b->_date <=> $a->_date} (grep { $_->credited > 0 }
- qsearch('cust_credit', { 'custnum' => $self->custnum } ) );
-
- my @invoices = $self->open_cust_bill;
- @invoices = sort { $b->_date <=> $a->_date } @invoices
- if defined($opt{'order'}) && $opt{'order'} eq 'newest';
-
- my $credit;
- foreach my $cust_bill ( @invoices ) {
- my $amount;
-
- if ( !defined($credit) || $credit->credited == 0) {
- $credit = pop @credits or last;
- }
-
- if ($cust_bill->owed >= $credit->credited) {
- $amount=$credit->credited;
- }else{
- $amount=$cust_bill->owed;
- }
-
- my $cust_credit_bill = new FS::cust_credit_bill ( {
- 'crednum' => $credit->crednum,
- 'invnum' => $cust_bill->invnum,
- 'amount' => $amount,
- } );
- my $error = $cust_credit_bill->insert;
- die $error if $error;
-
- redo if ($cust_bill->owed > 0);
-
- }
-
- return $self->total_credited;
-}
-
-=item apply_payments
-
-Applies (see L<FS::cust_bill_pay>) unapplied payments (see L<FS::cust_pay>)
-to outstanding invoice balances in chronological order.
-
- #and returns the value of any remaining unapplied payments.
-
-=cut
-
-sub apply_payments {
- my $self = shift;
-
- #return 0 unless
-
- my @payments = sort { $b->_date <=> $a->_date } ( grep { $_->unapplied > 0 }
- qsearch('cust_pay', { 'custnum' => $self->custnum } ) );
-
- my @invoices = sort { $a->_date <=> $b->_date} (grep { $_->owed > 0 }
- qsearch('cust_bill', { 'custnum' => $self->custnum } ) );
-
- my $payment;
-
- foreach my $cust_bill ( @invoices ) {
- my $amount;
-
- if ( !defined($payment) || $payment->unapplied == 0 ) {
- $payment = pop @payments or last;
- }
-
- if ( $cust_bill->owed >= $payment->unapplied ) {
- $amount = $payment->unapplied;
- } else {
- $amount = $cust_bill->owed;
- }
-
- my $cust_bill_pay = new FS::cust_bill_pay ( {
- 'paynum' => $payment->paynum,
- 'invnum' => $cust_bill->invnum,
- 'amount' => $amount,
- } );
- my $error = $cust_bill_pay->insert;
- die $error if $error;
-
- redo if ( $cust_bill->owed > 0);
-
- }
-
- return $self->total_unapplied_payments;
-}
-
-=item total_credited
-
-Returns the total outstanding credit (see L<FS::cust_credit>) for this
-customer. See L<FS::cust_credit/credited>.
-
-=cut
-
-sub total_credited {
- my $self = shift;
- my $total_credit = 0;
- foreach my $cust_credit ( qsearch('cust_credit', {
- 'custnum' => $self->custnum,
- } ) ) {
- $total_credit += $cust_credit->credited;
- }
- sprintf( "%.2f", $total_credit );
-}
-
-=item total_unapplied_payments
-
-Returns the total unapplied payments (see L<FS::cust_pay>) for this customer.
-See L<FS::cust_pay/unapplied>.
-
-=cut
-
-sub total_unapplied_payments {
- my $self = shift;
- my $total_unapplied = 0;
- foreach my $cust_pay ( qsearch('cust_pay', {
- 'custnum' => $self->custnum,
- } ) ) {
- $total_unapplied += $cust_pay->unapplied;
- }
- sprintf( "%.2f", $total_unapplied );
-}
-
-=item balance
-
-Returns the balance for this customer (total_owed minus total_credited
-minus total_unapplied_payments).
-
-=cut
-
-sub balance {
- my $self = shift;
- sprintf( "%.2f",
- $self->total_owed - $self->total_credited - $self->total_unapplied_payments
- );
-}
-
-=item balance_date TIME
-
-Returns the balance for this customer, only considering invoices with date
-earlier than TIME (total_owed_date minus total_credited minus
-total_unapplied_payments). TIME is specified as a UNIX timestamp; see
-L<perlfunc/"time">). Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-=cut
-
-sub balance_date {
- my $self = shift;
- my $time = shift;
- sprintf( "%.2f",
- $self->total_owed_date($time)
- - $self->total_credited
- - $self->total_unapplied_payments
- );
-}
-
-=item in_transit_payments
-
-Returns the total of requests for payments for this customer pending in
-batches in transit to the bank. See L<FS::pay_batch> and L<FS::cust_pay_batch>
-
-=cut
-
-sub in_transit_payments {
- my $self = shift;
- my $in_transit_payments = 0;
- foreach my $pay_batch ( qsearch('pay_batch', {
- 'status' => 'I',
- } ) ) {
- foreach my $cust_pay_batch ( qsearch('cust_pay_batch', {
- 'batchnum' => $pay_batch->batchnum,
- 'custnum' => $self->custnum,
- } ) ) {
- $in_transit_payments += $cust_pay_batch->amount;
- }
- }
- sprintf( "%.2f", $in_transit_payments );
-}
-
-=item paydate_monthyear
-
-Returns a two-element list consisting of the month and year of this customer's
-paydate (credit card expiration date for CARD customers)
-
-=cut
-
-sub paydate_monthyear {
- my $self = shift;
- if ( $self->paydate =~ /^(\d{4})-(\d{1,2})-\d{1,2}$/ ) { #Pg date format
- ( $2, $1 );
- } elsif ( $self->paydate =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) {
- ( $1, $3 );
- } else {
- ('', '');
- }
-}
-
-=item payinfo_masked
-
-Returns a "masked" payinfo field appropriate to the payment type. Masked characters are replaced by 'x'es. Use this to display publicly accessable account Information.
-
-Credit Cards - Mask all but the last four characters.
-Checks - Mask all but last 2 of account number and bank routing number.
-Others - Do nothing, return the unmasked string.
-
-=cut
-
-sub payinfo_masked {
- my $self = shift;
- return $self->paymask;
-}
-
-=item invoicing_list [ ARRAYREF ]
-
-If an arguement is given, sets these email addresses as invoice recipients
-(see L<FS::cust_main_invoice>). Errors are not fatal and are not reported
-(except as warnings), so use check_invoicing_list first.
-
-Returns a list of email addresses (with svcnum entries expanded).
-
-Note: You can clear the invoicing list by passing an empty ARRAYREF. You can
-check it without disturbing anything by passing nothing.
-
-This interface may change in the future.
-
-=cut
-
-sub invoicing_list {
- my( $self, $arrayref ) = @_;
-
- if ( $arrayref ) {
- my @cust_main_invoice;
- if ( $self->custnum ) {
- @cust_main_invoice =
- qsearch( 'cust_main_invoice', { 'custnum' => $self->custnum } );
- } else {
- @cust_main_invoice = ();
- }
- foreach my $cust_main_invoice ( @cust_main_invoice ) {
- #warn $cust_main_invoice->destnum;
- unless ( grep { $cust_main_invoice->address eq $_ } @{$arrayref} ) {
- #warn $cust_main_invoice->destnum;
- my $error = $cust_main_invoice->delete;
- warn $error if $error;
- }
- }
- if ( $self->custnum ) {
- @cust_main_invoice =
- qsearch( 'cust_main_invoice', { 'custnum' => $self->custnum } );
- } else {
- @cust_main_invoice = ();
- }
- my %seen = map { $_->address => 1 } @cust_main_invoice;
- foreach my $address ( @{$arrayref} ) {
- next if exists $seen{$address} && $seen{$address};
- $seen{$address} = 1;
- my $cust_main_invoice = new FS::cust_main_invoice ( {
- 'custnum' => $self->custnum,
- 'dest' => $address,
- } );
- my $error = $cust_main_invoice->insert;
- warn $error if $error;
- }
- }
-
- if ( $self->custnum ) {
- map { $_->address }
- qsearch( 'cust_main_invoice', { 'custnum' => $self->custnum } );
- } else {
- ();
- }
-
-}
-
-=item check_invoicing_list ARRAYREF
-
-Checks these arguements as valid input for the invoicing_list method. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub check_invoicing_list {
- my( $self, $arrayref ) = @_;
- foreach my $address ( @{$arrayref} ) {
-
- if ($address eq 'FAX' and $self->getfield('fax') eq '') {
- return 'Can\'t add FAX invoice destination with a blank FAX number.';
- }
-
- my $cust_main_invoice = new FS::cust_main_invoice ( {
- 'custnum' => $self->custnum,
- 'dest' => $address,
- } );
- my $error = $self->custnum
- ? $cust_main_invoice->check
- : $cust_main_invoice->checkdest
- ;
- return $error if $error;
- }
- '';
-}
-
-=item set_default_invoicing_list
-
-Sets the invoicing list to all accounts associated with this customer,
-overwriting any previous invoicing list.
-
-=cut
-
-sub set_default_invoicing_list {
- my $self = shift;
- $self->invoicing_list($self->all_emails);
-}
-
-=item all_emails
-
-Returns the email addresses of all accounts provisioned for this customer.
-
-=cut
-
-sub all_emails {
- my $self = shift;
- my %list;
- foreach my $cust_pkg ( $self->all_pkgs ) {
- my @cust_svc = qsearch('cust_svc', { 'pkgnum' => $cust_pkg->pkgnum } );
- my @svc_acct =
- map { qsearchs('svc_acct', { 'svcnum' => $_->svcnum } ) }
- grep { qsearchs('svc_acct', { 'svcnum' => $_->svcnum } ) }
- @cust_svc;
- $list{$_}=1 foreach map { $_->email } @svc_acct;
- }
- keys %list;
-}
-
-=item invoicing_list_addpost
-
-Adds postal invoicing to this customer. If this customer is already configured
-to receive postal invoices, does nothing.
-
-=cut
-
-sub invoicing_list_addpost {
- my $self = shift;
- return if grep { $_ eq 'POST' } $self->invoicing_list;
- my @invoicing_list = $self->invoicing_list;
- push @invoicing_list, 'POST';
- $self->invoicing_list(\@invoicing_list);
-}
-
-=item invoicing_list_emailonly
-
-Returns the list of email invoice recipients (invoicing_list without non-email
-destinations such as POST and FAX).
-
-=cut
-
-sub invoicing_list_emailonly {
- my $self = shift;
- grep { $_ !~ /^([A-Z]+)$/ } $self->invoicing_list;
-}
-
-=item referral_cust_main [ DEPTH [ EXCLUDE_HASHREF ] ]
-
-Returns an array of customers referred by this customer (referral_custnum set
-to this custnum). If DEPTH is given, recurses up to the given depth, returning
-customers referred by customers referred by this customer and so on, inclusive.
-The default behavior is DEPTH 1 (no recursion).
-
-=cut
-
-sub referral_cust_main {
- my $self = shift;
- my $depth = @_ ? shift : 1;
- my $exclude = @_ ? shift : {};
-
- my @cust_main =
- map { $exclude->{$_->custnum}++; $_; }
- grep { ! $exclude->{ $_->custnum } }
- qsearch( 'cust_main', { 'referral_custnum' => $self->custnum } );
-
- if ( $depth > 1 ) {
- push @cust_main,
- map { $_->referral_cust_main($depth-1, $exclude) }
- @cust_main;
- }
-
- @cust_main;
-}
-
-=item referral_cust_main_ncancelled
-
-Same as referral_cust_main, except only returns customers with uncancelled
-packages.
-
-=cut
-
-sub referral_cust_main_ncancelled {
- my $self = shift;
- grep { scalar($_->ncancelled_pkgs) } $self->referral_cust_main;
-}
-
-=item referral_cust_pkg [ DEPTH ]
-
-Like referral_cust_main, except returns a flat list of all unsuspended (and
-uncancelled) packages for each customer. The number of items in this list may
-be useful for comission calculations (perhaps after a C<grep { my $pkgpart = $_->pkgpart; grep { $_ == $pkgpart } @commission_worthy_pkgparts> } $cust_main-> ).
-
-=cut
-
-sub referral_cust_pkg {
- my $self = shift;
- my $depth = @_ ? shift : 1;
-
- map { $_->unsuspended_pkgs }
- grep { $_->unsuspended_pkgs }
- $self->referral_cust_main($depth);
-}
-
-=item referring_cust_main
-
-Returns the single cust_main record for the customer who referred this customer
-(referral_custnum), or false.
-
-=cut
-
-sub referring_cust_main {
- my $self = shift;
- return '' unless $self->referral_custnum;
- qsearchs('cust_main', { 'custnum' => $self->referral_custnum } );
-}
-
-=item credit AMOUNT, REASON
-
-Applies a credit to this customer. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub credit {
- my( $self, $amount, $reason ) = @_;
- my $cust_credit = new FS::cust_credit {
- 'custnum' => $self->custnum,
- 'amount' => $amount,
- 'reason' => $reason,
- };
- $cust_credit->insert;
-}
-
-=item charge AMOUNT [ PKG [ COMMENT [ TAXCLASS ] ] ]
-
-Creates a one-time charge for this customer. If there is an error, returns
-the error, otherwise returns false.
-
-=cut
-
-sub charge {
- my ( $self, $amount ) = ( shift, shift );
- my $pkg = @_ ? shift : 'One-time charge';
- my $comment = @_ ? shift : '$'. sprintf("%.2f",$amount);
- my $taxclass = @_ ? shift : '';
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $part_pkg = new FS::part_pkg ( {
- 'pkg' => $pkg,
- 'comment' => $comment,
- #'setup' => $amount,
- #'recur' => '0',
- 'plan' => 'flat',
- 'plandata' => "setup_fee=$amount",
- 'freq' => 0,
- 'disabled' => 'Y',
- 'taxclass' => $taxclass,
- } );
-
- my $error = $part_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- my $pkgpart = $part_pkg->pkgpart;
- my %type_pkgs = ( 'typenum' => $self->agent->typenum, 'pkgpart' => $pkgpart );
- unless ( qsearchs('type_pkgs', \%type_pkgs ) ) {
- my $type_pkgs = new FS::type_pkgs \%type_pkgs;
- $error = $type_pkgs->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $cust_pkg = new FS::cust_pkg ( {
- 'custnum' => $self->custnum,
- 'pkgpart' => $pkgpart,
- } );
-
- $error = $cust_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item cust_bill
-
-Returns all the invoices (see L<FS::cust_bill>) for this customer.
-
-=cut
-
-sub cust_bill {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch('cust_bill', { 'custnum' => $self->custnum, } )
-}
-
-=item open_cust_bill
-
-Returns all the open (owed > 0) invoices (see L<FS::cust_bill>) for this
-customer.
-
-=cut
-
-sub open_cust_bill {
- my $self = shift;
- grep { $_->owed > 0 } $self->cust_bill;
-}
-
-=item cust_credit
-
-Returns all the credits (see L<FS::cust_credit>) for this customer.
-
-=cut
-
-sub cust_credit {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_credit', { 'custnum' => $self->custnum } )
-}
-
-=item cust_pay
-
-Returns all the payments (see L<FS::cust_pay>) for this customer.
-
-=cut
-
-sub cust_pay {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_pay', { 'custnum' => $self->custnum } )
-}
-
-=item cust_pay_void
-
-Returns all voided payments (see L<FS::cust_pay_void>) for this customer.
-
-=cut
-
-sub cust_pay_void {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_pay_void', { 'custnum' => $self->custnum } )
-}
-
-
-=item cust_refund
-
-Returns all the refunds (see L<FS::cust_refund>) for this customer.
-
-=cut
-
-sub cust_refund {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_refund', { 'custnum' => $self->custnum } )
-}
-
-=item select_for_update
-
-Selects this record with the SQL "FOR UPDATE" command. This can be useful as
-a mutex.
-
-=cut
-
-sub select_for_update {
- my $self = shift;
- qsearch('cust_main', { 'custnum' => $self->custnum }, '*', 'FOR UPDATE' );
-}
-
-=item name
-
-Returns a name string for this customer, either "Company (Last, First)" or
-"Last, First".
-
-=cut
-
-sub name {
- my $self = shift;
- my $name = $self->contact;
- $name = $self->company. " ($name)" if $self->company;
- $name;
-}
-
-=item ship_name
-
-Returns a name string for this (service/shipping) contact, either
-"Company (Last, First)" or "Last, First".
-
-=cut
-
-sub ship_name {
- my $self = shift;
- if ( $self->get('ship_last') ) {
- my $name = $self->ship_contact;
- $name = $self->ship_company. " ($name)" if $self->ship_company;
- $name;
- } else {
- $self->name;
- }
-}
-
-=item contact
-
-Returns this customer's full (billing) contact name only, "Last, First"
-
-=cut
-
-sub contact {
- my $self = shift;
- $self->get('last'). ', '. $self->first;
-}
-
-=item ship_contact
-
-Returns this customer's full (shipping) contact name only, "Last, First"
-
-=cut
-
-sub ship_contact {
- my $self = shift;
- $self->get('ship_last')
- ? $self->get('ship_last'). ', '. $self->ship_first
- : $self->contact;
-}
-
-=item country_full
-
-Returns this customer's full country name
-
-=cut
-
-sub country_full {
- my $self = shift;
- code2country($self->country);
-}
-
-=item status
-
-Returns a status string for this customer, currently:
-
-=over 4
-
-=item prospect - No packages have ever been ordered
-
-=item active - One or more recurring packages is active
-
-=item inactive - No active recurring packages, but otherwise unsuspended/uncancelled (the inactive status is new - previously inactive customers were mis-identified as cancelled)
-
-=item suspended - All non-cancelled recurring packages are suspended
-
-=item cancelled - All recurring packages are cancelled
-
-=back
-
-=cut
-
-sub status {
- my $self = shift;
- for my $status (qw( prospect active inactive suspended cancelled )) {
- my $method = $status.'_sql';
- my $numnum = ( my $sql = $self->$method() ) =~ s/cust_main\.custnum/?/g;
- my $sth = dbh->prepare("SELECT $sql") or die dbh->errstr;
- $sth->execute( ($self->custnum) x $numnum ) or die $sth->errstr;
- return $status if $sth->fetchrow_arrayref->[0];
- }
-}
-
-=item statuscolor
-
-Returns a hex triplet color string for this customer's status.
-
-=cut
-
-use vars qw(%statuscolor);
-%statuscolor = (
- 'prospect' => '7e0079', #'000000', #black? naw, purple
- 'active' => '00CC00', #green
- 'inactive' => '0000CC', #blue
- 'suspended' => 'FF9900', #yellow
- 'cancelled' => 'FF0000', #red
-);
-
-sub statuscolor {
- my $self = shift;
- $statuscolor{$self->status};
-}
-
-=back
-
-=head1 CLASS METHODS
-
-=over 4
-
-=item prospect_sql
-
-Returns an SQL expression identifying prospective cust_main records (customers
-with no packages ever ordered)
-
-=cut
-
-use vars qw($select_count_pkgs);
-$select_count_pkgs =
- "SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum";
-
-sub select_count_pkgs_sql {
- $select_count_pkgs;
-}
-
-sub prospect_sql { "
- 0 = ( $select_count_pkgs )
-"; }
-
-=item active_sql
-
-Returns an SQL expression identifying active cust_main records (customers with
-no active recurring packages, but otherwise unsuspended/uncancelled).
-
-=cut
-
-sub active_sql { "
- 0 < ( $select_count_pkgs AND ". FS::cust_pkg->active_sql. "
- )
-"; }
-
-=item inactive_sql
-
-Returns an SQL expression identifying inactive cust_main records (customers with
-active recurring packages).
-
-=cut
-
-sub inactive_sql { "
- 0 = ( $select_count_pkgs AND ". FS::cust_pkg->active_sql. " )
- AND
- 0 < ( $select_count_pkgs AND ". FS::cust_pkg->inactive_sql. " )
-"; }
-
-=item susp_sql
-=item suspended_sql
-
-Returns an SQL expression identifying suspended cust_main records.
-
-=cut
-
-
-sub suspended_sql { susp_sql(@_); }
-sub susp_sql { "
- 0 < ( $select_count_pkgs AND ". FS::cust_pkg->suspended_sql. " )
- AND
- 0 = ( $select_count_pkgs AND ". FS::cust_pkg->active_sql. " )
-"; }
-
-=item cancel_sql
-=item cancelled_sql
-
-Returns an SQL expression identifying cancelled cust_main records.
-
-=cut
-
-sub cancelled_sql { cancel_sql(@_); }
-sub cancel_sql {
-
- my $recurring_sql = FS::cust_pkg->recurring_sql;
- #my $recurring_sql = "
- # '0' != ( select freq from part_pkg
- # where cust_pkg.pkgpart = part_pkg.pkgpart )
- #";
-
- "
- 0 < ( $select_count_pkgs )
- AND 0 = ( $select_count_pkgs AND $recurring_sql
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- )
- ";
-}
-
-=item uncancel_sql
-=item uncancelled_sql
-
-Returns an SQL expression identifying un-cancelled cust_main records.
-
-=cut
-
-sub uncancelled_sql { uncancel_sql(@_); }
-sub uncancel_sql { "
- ( 0 < ( $select_count_pkgs
- AND ( cust_pkg.cancel IS NULL
- OR cust_pkg.cancel = 0
- )
- )
- OR 0 = ( $select_count_pkgs )
- )
-"; }
-
-=item fuzzy_search FUZZY_HASHREF [ HASHREF, SELECT, EXTRA_SQL, CACHE_OBJ ]
-
-Performs a fuzzy (approximate) search and returns the matching FS::cust_main
-records. Currently, I<first>, I<last> and/or I<company> may be specified (the
-appropriate ship_ field is also searched).
-
-Additional options are the same as FS::Record::qsearch
-
-=cut
-
-sub fuzzy_search {
- my( $self, $fuzzy, $hash, @opt) = @_;
- #$self
- $hash ||= {};
- my @cust_main = ();
-
- check_and_rebuild_fuzzyfiles();
- foreach my $field ( keys %$fuzzy ) {
- my %match = ();
- $match{$_}=1 foreach ( amatch( $fuzzy->{$field},
- ['i'],
- @{ $self->all_X($field) }
- )
- );
-
- my @fcust = ();
- foreach ( keys %match ) {
- push @fcust, qsearch('cust_main', { %$hash, $field=>$_}, @opt);
- push @fcust, qsearch('cust_main', { %$hash, "ship_$field"=>$_}, @opt);
- }
- my %fsaw = ();
- push @cust_main, grep { ! $fsaw{$_->custnum}++ } @fcust;
- }
-
- # we want the components of $fuzzy ANDed, not ORed, but still don't want dupes
- my %saw = ();
- @cust_main = grep { ++$saw{$_->custnum} == scalar(keys %$fuzzy) } @cust_main;
-
- @cust_main;
-
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item smart_search OPTION => VALUE ...
-
-Accepts the following options: I<search>, the string to search for. The string
-will be searched for as a customer number, phone number, name or company name,
-first searching for an exact match then fuzzy and substring matches (in some
-cases - see the source code for the exact heuristics used).
-
-Any additional options treated as an additional qualifier on the search
-(i.e. I<agentnum>).
-
-Returns a (possibly empty) array of FS::cust_main objects.
-
-=cut
-
-sub smart_search {
- my %options = @_;
-
- #here is the agent virtualization
- my $agentnums_sql = $FS::CurrentUser::CurrentUser->agentnums_sql;
-
- my @cust_main = ();
-
- my $search = delete $options{'search'};
- ( my $alphanum_search = $search ) =~ s/\W//g;
-
- if ( $alphanum_search =~ /^1?(\d{3})(\d{3})(\d{4})(\d*)$/ ) { #phone# search
-
- #false laziness w/Record::ut_phone
- my $phonen = "$1-$2-$3";
- $phonen .= " x$4" if $4;
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => { %options },
- 'extra_sql' => ( scalar(keys %options) ? ' AND ' : ' WHERE ' ).
- ' ( '.
- join(' OR ', map "$_ = '$phonen'",
- qw( daytime night fax
- ship_daytime ship_night ship_fax )
- ).
- ' ) '.
- " AND $agentnums_sql", #agent virtualization
- } );
-
- unless ( @cust_main || $phonen =~ /x\d+$/ ) { #no exact match
- #try looking for matches with extensions unless one was specified
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => { %options },
- 'extra_sql' => ( scalar(keys %options) ? ' AND ' : ' WHERE ' ).
- ' ( '.
- join(' OR ', map "$_ LIKE '$phonen\%'",
- qw( daytime night
- ship_daytime ship_night )
- ).
- ' ) '.
- " AND $agentnums_sql", #agent virtualization
- } );
-
- }
-
- } elsif ( $search =~ /^\s*(\d+)\s*$/ ) { # customer # search
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => { 'custnum' => $1, %options },
- 'extra_sql' => " AND $agentnums_sql", #agent virtualization
- } );
-
- } elsif ( $search =~ /^\s*(\S.*\S)\s+\((.+), ([^,]+)\)\s*$/ ) {
-
- my($company, $last, $first) = ( $1, $2, $3 );
-
- # "Company (Last, First)"
- #this is probably something a browser remembered,
- #so just do an exact search
-
- foreach my $prefix ( '', 'ship_' ) {
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => { $prefix.'first' => $first,
- $prefix.'last' => $last,
- $prefix.'company' => $company,
- %options,
- },
- 'extra_sql' => " AND $agentnums_sql",
- } );
- }
-
- } elsif ( $search =~ /^\s*(\S.*\S)\s*$/ ) { # value search
- # try (ship_){last,company}
-
- my $value = lc($1);
-
- # # remove "(Last, First)" in "Company (Last, First)", otherwise the
- # # full strings the browser remembers won't work
- # $value =~ s/\([\w \,\.\-\']*\)$//; #false laziness w/Record::ut_name
-
- use Lingua::EN::NameParse;
- my $NameParse = new Lingua::EN::NameParse(
- auto_clean => 1,
- allow_reversed => 1,
- );
-
- my($last, $first) = ( '', '' );
- #maybe disable this too and just rely on NameParse?
- if ( $value =~ /^(.+),\s*([^,]+)$/ ) { # Last, First
-
- ($last, $first) = ( $1, $2 );
-
- #} elsif ( $value =~ /^(.+)\s+(.+)$/ ) {
- } elsif ( ! $NameParse->parse($value) ) {
-
- my %name = $NameParse->components;
- $first = $name{'given_name_1'};
- $last = $name{'surname_1'};
-
- }
-
- if ( $first && $last ) {
-
- my($q_last, $q_first) = ( dbh->quote($last), dbh->quote($first) );
-
- #exact
- my $sql = scalar(keys %options) ? ' AND ' : ' WHERE ';
- $sql .= "
- ( ( LOWER(last) = $q_last AND LOWER(first) = $q_first )
- OR ( LOWER(ship_last) = $q_last AND LOWER(ship_first) = $q_first )
- )";
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => \%options,
- 'extra_sql' => "$sql AND $agentnums_sql", #agent virtualization
- } );
-
- # or it just be something that was typed in... (try that in a sec)
-
- }
-
- my $q_value = dbh->quote($value);
-
- #exact
- my $sql = scalar(keys %options) ? ' AND ' : ' WHERE ';
- $sql .= " ( LOWER(last) = $q_value
- OR LOWER(company) = $q_value
- OR LOWER(ship_last) = $q_value
- OR LOWER(ship_company) = $q_value
- )";
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => \%options,
- 'extra_sql' => "$sql AND $agentnums_sql", #agent virtualization
- } );
-
- unless ( @cust_main ) { #no exact match, trying substring/fuzzy
-
- #still some false laziness w/ search/cust_main.cgi
-
- #substring
-
- my @hashrefs = (
- { 'company' => { op=>'ILIKE', value=>"%$value%" }, },
- { 'ship_company' => { op=>'ILIKE', value=>"%$value%" }, },
- );
-
- if ( $first && $last ) {
-
- push @hashrefs,
- { 'first' => { op=>'ILIKE', value=>"%$first%" },
- 'last' => { op=>'ILIKE', value=>"%$last%" },
- },
- { 'ship_first' => { op=>'ILIKE', value=>"%$first%" },
- 'ship_last' => { op=>'ILIKE', value=>"%$last%" },
- },
- ;
-
- } else {
-
- push @hashrefs,
- { 'last' => { op=>'ILIKE', value=>"%$value%" }, },
- { 'ship_last' => { op=>'ILIKE', value=>"%$value%" }, },
- ;
- }
-
- foreach my $hashref ( @hashrefs ) {
-
- push @cust_main, qsearch( {
- 'table' => 'cust_main',
- 'hashref' => { %$hashref,
- %options,
- },
- 'extra_sql' => " AND $agentnums_sql", #agent virtualizaiton
- } );
-
- }
-
- #fuzzy
- my @fuzopts = (
- \%options, #hashref
- '', #select
- " AND $agentnums_sql", #extra_sql #agent virtualization
- );
-
- if ( $first && $last ) {
- push @cust_main, FS::cust_main->fuzzy_search(
- { 'last' => $last, #fuzzy hashref
- 'first' => $first }, #
- @fuzopts
- );
- }
- foreach my $field ( 'last', 'company' ) {
- push @cust_main,
- FS::cust_main->fuzzy_search( { $field => $value }, @fuzopts );
- }
-
- }
-
- #eliminate duplicates
- my %saw = ();
- @cust_main = grep { !$saw{$_->custnum}++ } @cust_main;
-
- }
-
- @cust_main;
-
-}
-
-=item check_and_rebuild_fuzzyfiles
-
-=cut
-
-use vars qw(@fuzzyfields);
-@fuzzyfields = ( 'last', 'first', 'company' );
-
-sub check_and_rebuild_fuzzyfiles {
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- rebuild_fuzzyfiles() if grep { ! -e "$dir/cust_main.$_" } @fuzzyfields
-}
-
-=item rebuild_fuzzyfiles
-
-=cut
-
-sub rebuild_fuzzyfiles {
-
- use Fcntl qw(:flock);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- mkdir $dir, 0700 unless -d $dir;
-
- foreach my $fuzzy ( @fuzzyfields ) {
-
- open(LOCK,">>$dir/cust_main.$fuzzy")
- or die "can't open $dir/cust_main.$fuzzy: $!";
- flock(LOCK,LOCK_EX)
- or die "can't lock $dir/cust_main.$fuzzy: $!";
-
- open (CACHE,">$dir/cust_main.$fuzzy.tmp")
- or die "can't open $dir/cust_main.$fuzzy.tmp: $!";
-
- foreach my $field ( $fuzzy, "ship_$fuzzy" ) {
- my $sth = dbh->prepare("SELECT $field FROM cust_main".
- " WHERE $field != '' AND $field IS NOT NULL");
- $sth->execute or die $sth->errstr;
-
- while ( my $row = $sth->fetchrow_arrayref ) {
- print CACHE $row->[0]. "\n";
- }
-
- }
-
- close CACHE or die "can't close $dir/cust_main.$fuzzy.tmp: $!";
-
- rename "$dir/cust_main.$fuzzy.tmp", "$dir/cust_main.$fuzzy";
- close LOCK;
- }
-
-}
-
-=item all_X
-
-=cut
-
-sub all_X {
- my( $self, $field ) = @_;
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- open(CACHE,"<$dir/cust_main.$field")
- or die "can't open $dir/cust_main.$field: $!";
- my @array = map { chomp; $_; } <CACHE>;
- close CACHE;
- \@array;
-}
-
-=item append_fuzzyfiles LASTNAME COMPANY
-
-=cut
-
-sub append_fuzzyfiles {
- #my( $first, $last, $company ) = @_;
-
- &check_and_rebuild_fuzzyfiles;
-
- use Fcntl qw(:flock);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
-
- foreach my $field (qw( first last company )) {
- my $value = shift;
-
- if ( $value ) {
-
- open(CACHE,">>$dir/cust_main.$field")
- or die "can't open $dir/cust_main.$field: $!";
- flock(CACHE,LOCK_EX)
- or die "can't lock $dir/cust_main.$field: $!";
-
- print CACHE "$value\n";
-
- flock(CACHE,LOCK_UN)
- or die "can't unlock $dir/cust_main.$field: $!";
- close CACHE;
- }
-
- }
-
- 1;
-}
-
-=item batch_import
-
-=cut
-
-sub batch_import {
- my $param = shift;
- #warn join('-',keys %$param);
- my $fh = $param->{filehandle};
- my $agentnum = $param->{agentnum};
-
- my $refnum = $param->{refnum};
- my $pkgpart = $param->{pkgpart};
-
- #my @fields = @{$param->{fields}};
- my $format = $param->{'format'};
- my @fields;
- my $payby;
- if ( $format eq 'simple' ) {
- @fields = qw( cust_pkg.setup dayphone first last
- address1 address2 city state zip comments );
- $payby = 'BILL';
- } elsif ( $format eq 'extended' ) {
- @fields = qw( agent_custid refnum
- last first address1 address2 city state zip country
- daytime night
- ship_last ship_first ship_address1 ship_address2
- ship_city ship_state ship_zip ship_country
- payinfo paycvv paydate
- invoicing_list
- cust_pkg.pkgpart
- svc_acct.username svc_acct._password
- );
- $payby = 'BILL';
- } else {
- die "unknown format $format";
- }
-
- eval "use Text::CSV_XS;";
- die $@ if $@;
-
- my $csv = new Text::CSV_XS;
- #warn $csv;
- #warn $fh;
-
- my $imported = 0;
- #my $columns;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #while ( $columns = $csv->getline($fh) ) {
- my $line;
- while ( defined($line=<$fh>) ) {
-
- $csv->parse($line) or do {
- $dbh->rollback if $oldAutoCommit;
- return "can't parse: ". $csv->error_input();
- };
-
- my @columns = $csv->fields();
- #warn join('-',@columns);
-
- my %cust_main = (
- agentnum => $agentnum,
- refnum => $refnum,
- country => $conf->config('countrydefault') || 'US',
- payby => $payby, #default
- paydate => '12/2037', #default
- );
- my $billtime = time;
- my %cust_pkg = ( pkgpart => $pkgpart );
- my %svc_acct = ();
- foreach my $field ( @fields ) {
-
- if ( $field =~ /^cust_pkg\.(pkgpart|setup|bill|susp|expire|cancel)$/ ) {
-
- #$cust_pkg{$1} = str2time( shift @$columns );
- if ( $1 eq 'pkgpart' ) {
- $cust_pkg{$1} = shift @columns;
- } elsif ( $1 eq 'setup' ) {
- $billtime = str2time(shift @columns);
- } else {
- $cust_pkg{$1} = str2time( shift @columns );
- }
-
- } elsif ( $field =~ /^svc_acct\.(username|_password)$/ ) {
-
- $svc_acct{$1} = shift @columns;
-
- } else {
-
- #refnum interception
- if ( $field eq 'refnum' && $columns[0] !~ /^\s*(\d+)\s*$/ ) {
-
- my $referral = $columns[0];
- my %hash = ( 'referral' => $referral,
- 'agentnum' => $agentnum,
- 'disabled' => '',
- );
-
- my $part_referral = qsearchs('part_referral', \%hash )
- || new FS::part_referral \%hash;
-
- unless ( $part_referral->refnum ) {
- my $error = $part_referral->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't auto-insert advertising source: $referral: $error";
- }
- }
-
- $columns[0] = $part_referral->refnum;
- }
-
- #$cust_main{$field} = shift @$columns;
- $cust_main{$field} = shift @columns;
- }
- }
-
- $cust_main{'payby'} = 'CARD' if length($cust_main{'payinfo'});
-
- my $invoicing_list = $cust_main{'invoicing_list'}
- ? [ delete $cust_main{'invoicing_list'} ]
- : [];
-
- my $cust_main = new FS::cust_main ( \%cust_main );
-
- use Tie::RefHash;
- tie my %hash, 'Tie::RefHash'; #this part is important
-
- if ( $cust_pkg{'pkgpart'} ) {
- my $cust_pkg = new FS::cust_pkg ( \%cust_pkg );
-
- my @svc_acct = ();
- if ( $svc_acct{'username'} ) {
- $svc_acct{svcpart} = $cust_pkg->part_pkg->svcpart( 'svc_acct' );
- push @svc_acct, new FS::svc_acct ( \%svc_acct )
- }
-
- $hash{$cust_pkg} = \@svc_acct;
- }
-
- my $error = $cust_main->insert( \%hash, $invoicing_list );
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't insert customer for $line: $error";
- }
-
- if ( $format eq 'simple' ) {
-
- #false laziness w/bill.cgi
- $error = $cust_main->bill( 'time' => $billtime );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't bill customer for $line: $error";
- }
-
- $cust_main->apply_payments;
- $cust_main->apply_credits;
-
- $error = $cust_main->collect();
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't collect customer for $line: $error";
- }
-
- }
-
- $imported++;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- return "Empty file!" unless $imported;
-
- ''; #no error
-
-}
-
-=item batch_charge
-
-=cut
-
-sub batch_charge {
- my $param = shift;
- #warn join('-',keys %$param);
- my $fh = $param->{filehandle};
- my @fields = @{$param->{fields}};
-
- eval "use Text::CSV_XS;";
- die $@ if $@;
-
- my $csv = new Text::CSV_XS;
- #warn $csv;
- #warn $fh;
-
- my $imported = 0;
- #my $columns;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #while ( $columns = $csv->getline($fh) ) {
- my $line;
- while ( defined($line=<$fh>) ) {
-
- $csv->parse($line) or do {
- $dbh->rollback if $oldAutoCommit;
- return "can't parse: ". $csv->error_input();
- };
-
- my @columns = $csv->fields();
- #warn join('-',@columns);
-
- my %row = ();
- foreach my $field ( @fields ) {
- $row{$field} = shift @columns;
- }
-
- my $cust_main = qsearchs('cust_main', { 'custnum' => $row{'custnum'} } );
- unless ( $cust_main ) {
- $dbh->rollback if $oldAutoCommit;
- return "unknown custnum $row{'custnum'}";
- }
-
- if ( $row{'amount'} > 0 ) {
- my $error = $cust_main->charge($row{'amount'}, $row{'pkg'});
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $imported++;
- } elsif ( $row{'amount'} < 0 ) {
- my $error = $cust_main->credit( sprintf( "%.2f", 0-$row{'amount'} ),
- $row{'pkg'} );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $imported++;
- } else {
- #hmm?
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- return "Empty file!" unless $imported;
-
- ''; #no error
-
-}
-
-=back
-
-=head1 BUGS
-
-The delete method.
-
-The delete method should possibly take an FS::cust_main object reference
-instead of a scalar customer number.
-
-Bill and collect options should probably be passed as references instead of a
-list.
-
-There should probably be a configuration file with a list of allowed credit
-card types.
-
-No multiple currency support (probably a larger project than just this module).
-
-payinfo_masked false laziness with cust_pay.pm and cust_refund.pm
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_pkg>, L<FS::cust_bill>, L<FS::cust_credit>
-L<FS::agent>, L<FS::part_referral>, L<FS::cust_main_county>,
-L<FS::cust_main_invoice>, L<FS::UID>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_main_Mixin.pm b/FS/FS/cust_main_Mixin.pm
deleted file mode 100644
index aa4143d..0000000
--- a/FS/FS/cust_main_Mixin.pm
+++ /dev/null
@@ -1,147 +0,0 @@
-package FS::cust_main_Mixin;
-
-use strict;
-use FS::cust_main;
-
-=head1 NAME
-
-FS::cust_main_Mixin - Mixin class for records that contain fields from cust_main
-
-=head1 SYNOPSIS
-
-package FS::some_table;
-use vars qw(@ISA);
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-=head1 DESCRIPTION
-
-This is a mixin class for records that contain fields from the cust_main table,
-for example, from a JOINed search. See httemplate/search/ for examples.
-
-=head1 METHODS
-
-=over 4
-
-=item name
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<name> method, or "(unlinked)" if this object is not linked to
-a customer.
-
-=cut
-
-sub cust_unlinked_msg { '(unlinked)'; }
-sub cust_linked { $_[0]->custnum; }
-
-sub name {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::name($self)
- : $self->cust_unlinked_msg;
-}
-
-=item ship_name
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<ship_name> method, or "(unlinked)" if this object is not
-linked to a customer.
-
-=cut
-
-sub ship_name {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::ship_name($self)
- : $self->cust_unlinked_msg;
-}
-
-=item contact
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<contact> method, or "(unlinked)" if this object is not linked
-to a customer.
-
-=cut
-
-sub contact {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::contact($self)
- : $self->cust_unlinked_msg;
-}
-
-=item ship_contact
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<ship_contact> method, or "(unlinked)" if this object is not
-linked to a customer.
-
-=cut
-
-sub ship_contact {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::ship_contact($self)
- : $self->cust_unlinked_msg;
-}
-
-=item country_full
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<country_full> method, or "(unlinked)" if this object is not
-linked to a customer.
-
-=cut
-
-sub country_full {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::country_full($self)
- : $self->cust_unlinked_msg;
-}
-
-=item invoicing_list_emailonly
-
-Given an object that contains fields from cust_main (say, from a JOINed
-search; see httemplate/search/ for examples), returns the equivalent of the
-FS::cust_main I<country_full> method, or "(unlinked)" if this object is not
-linked to a customer.
-
-=cut
-
-sub invoicing_list_emailonly {
- my $self = shift;
- warn "invoicing_list_email only called on $self, ".
- "custnum ". $self->custnum. "\n";
- $self->cust_linked
- ? FS::cust_main::invoicing_list_emailonly($self)
- : $self->cust_unlinked_msg;
-}
-
-#read-only
-sub invoicing_list {
- my $self = shift;
- $self->cust_linked
- ? FS::cust_main::invoicing_list($self)
- : ();
-}
-
-=cut
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_main>, L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_main_county.pm b/FS/FS/cust_main_county.pm
deleted file mode 100644
index 17f3460..0000000
--- a/FS/FS/cust_main_county.pm
+++ /dev/null
@@ -1,291 +0,0 @@
-package FS::cust_main_county;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK $conf
- @cust_main_county %cust_main_county $countyflag );
-use Exporter;
-use FS::Record qw( qsearch );
-
-@ISA = qw( FS::Record );
-@EXPORT_OK = qw( regionselector );
-
-@cust_main_county = ();
-$countyflag = '';
-
-#ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::cust_main_county'} = sub {
- $conf = new FS::Conf;
-};
-
-=head1 NAME
-
-FS::cust_main_county - Object methods for cust_main_county objects
-
-=head1 SYNOPSIS
-
- use FS::cust_main_county;
-
- $record = new FS::cust_main_county \%hash;
- $record = new FS::cust_main_county { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- ($county_html, $state_html, $country_html) =
- FS::cust_main_county::regionselector( $county, $state, $country );
-
-=head1 DESCRIPTION
-
-An FS::cust_main_county object represents a tax rate, defined by locale.
-FS::cust_main_county inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item taxnum - primary key (assigned automatically for new tax rates)
-
-=item state
-
-=item county
-
-=item country
-
-=item tax - percentage
-
-=item taxclass
-
-=item exempt_amount
-
-=item taxname - if defined, printed on invoices instead of "Tax"
-
-=item setuptax - if 'Y', this tax does not apply to setup fees
-
-=item recurtax - if 'Y', this tax does not apply to recurring fees
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new tax rate. To add the tax rate to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_main_county'; }
-
-=item insert
-
-Adds this tax rate to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this tax rate from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid tax rate. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->exempt_amount(0) unless $self->exempt_amount;
-
- $self->ut_numbern('taxnum')
- || $self->ut_anything('state')
- || $self->ut_textn('county')
- || $self->ut_text('country')
- || $self->ut_float('tax')
- || $self->ut_textn('taxclass') # ...
- || $self->ut_money('exempt_amount')
- || $self->ut_textn('taxname')
- || $self->ut_enum('setuptax', [ '', 'Y' ] )
- || $self->ut_enum('recurtax', [ '', 'Y' ] )
- || $self->SUPER::check
- ;
-
-}
-
-sub taxname {
- my $self = shift;
- if ( $self->dbdef_table->column('taxname') ) {
- return $self->setfield('taxname', $_[0]) if @_;
- return $self->getfield('taxname');
- }
- return '';
-}
-
-sub setuptax {
- my $self = shift;
- if ( $self->dbdef_table->column('setuptax') ) {
- return $self->setfield('setuptax', $_[0]) if @_;
- return $self->getfield('setuptax');
- }
- return '';
-}
-
-sub recurtax {
- my $self = shift;
- if ( $self->dbdef_table->column('recurtax') ) {
- return $self->setfield('recurtax', $_[0]) if @_;
- return $self->getfield('recurtax');
- }
- return '';
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item regionselector [ COUNTY STATE COUNTRY [ PREFIX [ ONCHANGE [ DISABLED ] ] ] ]
-
-=cut
-
-sub regionselector {
- my ( $selected_county, $selected_state, $selected_country,
- $prefix, $onchange, $disabled ) = @_;
-
- $prefix = '' unless defined $prefix;
-
- $countyflag = 0;
-
-# unless ( @cust_main_county ) { #cache
- @cust_main_county = qsearch('cust_main_county', {} );
- foreach my $c ( @cust_main_county ) {
- $countyflag=1 if $c->county;
- #push @{$cust_main_county{$c->country}{$c->state}}, $c->county;
- $cust_main_county{$c->country}{$c->state}{$c->county} = 1;
- }
-# }
- $countyflag=1 if $selected_county;
-
- my $script_html = <<END;
- <SCRIPT>
- function opt(what,value,text) {
- var optionName = new Option(text, value, false, false);
- var length = what.length;
- what.options[length] = optionName;
- }
- function ${prefix}country_changed(what) {
- country = what.options[what.selectedIndex].text;
- for ( var i = what.form.${prefix}state.length; i >= 0; i-- )
- what.form.${prefix}state.options[i] = null;
-END
- #what.form.${prefix}state.options[0] = new Option('', '', false, true);
-
- foreach my $country ( sort keys %cust_main_county ) {
- $script_html .= "\nif ( country == \"$country\" ) {\n";
- foreach my $state ( sort keys %{$cust_main_county{$country}} ) {
- ( my $dstate = $state ) =~ s/[\n\r]//g;
- my $text = $dstate || '(n/a)';
- $script_html .= qq!opt(what.form.${prefix}state, "$dstate", "$text");\n!;
- }
- $script_html .= "}\n";
- }
-
- $script_html .= <<END;
- }
- function ${prefix}state_changed(what) {
-END
-
- if ( $countyflag ) {
- $script_html .= <<END;
- state = what.options[what.selectedIndex].text;
- country = what.form.${prefix}country.options[what.form.${prefix}country.selectedIndex].text;
- for ( var i = what.form.${prefix}county.length; i >= 0; i-- )
- what.form.${prefix}county.options[i] = null;
-END
-
- foreach my $country ( sort keys %cust_main_county ) {
- $script_html .= "\nif ( country == \"$country\" ) {\n";
- foreach my $state ( sort keys %{$cust_main_county{$country}} ) {
- $script_html .= "\nif ( state == \"$state\" ) {\n";
- #foreach my $county ( sort @{$cust_main_county{$country}{$state}} ) {
- foreach my $county ( sort keys %{$cust_main_county{$country}{$state}} ) {
- my $text = $county || '(n/a)';
- $script_html .=
- qq!opt(what.form.${prefix}county, "$county", "$text");\n!;
- }
- $script_html .= "}\n";
- }
- $script_html .= "}\n";
- }
- }
-
- $script_html .= <<END;
- }
- </SCRIPT>
-END
-
- my $county_html = $script_html;
- if ( $countyflag ) {
- $county_html .= qq!<SELECT NAME="${prefix}county" onChange="$onchange" $disabled>!;
- $county_html .= '</SELECT>';
- } else {
- $county_html .=
- qq!<INPUT TYPE="hidden" NAME="${prefix}county" VALUE="$selected_county">!;
- }
-
- my $state_html = qq!<SELECT NAME="${prefix}state" !.
- qq!onChange="${prefix}state_changed(this); $onchange" $disabled>!;
- foreach my $state ( sort keys %{ $cust_main_county{$selected_country} } ) {
- my $text = $state || '(n/a)';
- my $selected = $state eq $selected_state ? 'SELECTED' : '';
- $state_html .= qq(\n<OPTION $selected VALUE="$state">$text</OPTION>);
- }
- $state_html .= '</SELECT>';
-
- $state_html .= '</SELECT>';
-
- my $country_html = qq!<SELECT NAME="${prefix}country" !.
- qq!onChange="${prefix}country_changed(this); $onchange" $disabled>!;
- my $countrydefault = $conf->config('countrydefault') || 'US';
- foreach my $country (
- sort { ($b eq $countrydefault) <=> ($a eq $countrydefault) or $a cmp $b }
- keys %cust_main_county
- ) {
- my $selected = $country eq $selected_country ? ' SELECTED' : '';
- $country_html .= qq(\n<OPTION$selected VALUE="$country">$country</OPTION>");
- }
- $country_html .= '</SELECT>';
-
- ($county_html, $state_html, $country_html);
-
-}
-
-=back
-
-=head1 BUGS
-
-regionselector? putting web ui components in here? they should probably live
-somewhere else...
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>, L<FS::cust_bill>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_main_invoice.pm b/FS/FS/cust_main_invoice.pm
deleted file mode 100644
index 48f47e0..0000000
--- a/FS/FS/cust_main_invoice.pm
+++ /dev/null
@@ -1,173 +0,0 @@
-package FS::cust_main_invoice;
-
-use strict;
-use vars qw(@ISA $conf);
-use Exporter;
-use FS::Record qw( qsearchs );
-use FS::Conf;
-use FS::cust_main;
-use FS::svc_acct;
-use FS::Msgcat qw(gettext);
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::cust_main_invoice - Object methods for cust_main_invoice records
-
-=head1 SYNOPSIS
-
- use FS::cust_main_invoice;
-
- $record = new FS::cust_main_invoice \%hash;
- $record = new FS::cust_main_invoice { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $email_address = $record->address;
-
-=head1 DESCRIPTION
-
-An FS::cust_main_invoice object represents an invoice destination. FS::cust_main_invoice inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item destnum - primary key
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item dest - Invoice destination: If numeric, a svcnum (see L<FS::svc_acct>), if string, a literal email address, `POST' to enable mailing (the default if no cust_main_invoice records exist), or `FAX' to enable faxing via a HylaFAX server.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new invoice destination. To add the invoice destination to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'cust_main_invoice'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Delete this record from the database.
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
-
- return "Can't change custnum!" unless $old->custnum == $new->custnum;
-
- $new->SUPER::replace($old);
-}
-
-
-=item check
-
-Checks all fields to make sure this is a valid invoice destination. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and repalce methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error = $self->ut_numbern('destnum')
- || $self->ut_number('custnum')
- || $self->checkdest;
- ;
- return $error if $error;
-
- return "Unknown customer"
- unless qsearchs('cust_main',{ 'custnum' => $self->custnum });
-
- $self->SUPER::check;
-}
-
-=item checkdest
-
-Checks the dest field only.
-
-#If it finds that the account ends in the
-#same domain configured as the B<domain> configuration file, it will change the
-#invoice destination from an email address to a service number (see
-#L<FS::svc_acct>).
-
-=cut
-
-sub checkdest {
- my $self = shift;
-
- my $error = $self->ut_text('dest');
- return $error if $error;
-
- if ( $self->dest =~ /^(POST|FAX)$/ ) {
- #contemplate our navel
- } elsif ( $self->dest =~ /^(\d+)$/ ) {
- return "Unknown local account (specified by svcnum: ". $self->dest. ")"
- unless qsearchs( 'svc_acct', { 'svcnum' => $self->dest } );
- } elsif ( $self->dest =~ /^([\w\.\-\&\+]+)\@(([\w\.\-]+\.)+\w+)$/ ) {
- my($user, $domain) = ($1, $2);
- $self->dest("$1\@$2");
- } else {
- return gettext("illegal_email_invoice_address"). ': '. $self->dest;
- }
-
- ''; #no error
-}
-
-=item address
-
-Returns the literal email address for this record (or `POST' or `FAX').
-
-=cut
-
-sub address {
- my $self = shift;
- if ( $self->dest =~ /^(\d+)$/ ) {
- my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $1 } )
- or return undef;
- $svc_acct->email;
- } else {
- $self->dest;
- }
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_pay.pm b/FS/FS/cust_pay.pm
deleted file mode 100644
index f057d2f..0000000
--- a/FS/FS/cust_pay.pm
+++ /dev/null
@@ -1,568 +0,0 @@
-package FS::cust_pay;
-
-use strict;
-use vars qw( @ISA $conf $unsuspendauto $ignore_noapply );
-use Date::Format;
-use Business::CreditCard;
-use Text::Template;
-use FS::Misc qw(send_email);
-use FS::Record qw( dbh qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::cust_bill;
-use FS::cust_bill_pay;
-use FS::cust_pay_refund;
-use FS::cust_main;
-use FS::cust_pay_void;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-$ignore_noapply = 0;
-
-#ask FS::UID to run this stuff for us later
-FS::UID->install_callback( sub {
- $conf = new FS::Conf;
- $unsuspendauto = $conf->exists('unsuspendauto');
-} );
-
-=head1 NAME
-
-FS::cust_pay - Object methods for cust_pay objects
-
-=head1 SYNOPSIS
-
- use FS::cust_pay;
-
- $record = new FS::cust_pay \%hash;
- $record = new FS::cust_pay { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_pay object represents a payment; the transfer of money from a
-customer. FS::cust_pay inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item paynum - primary key (assigned automatically for new payments)
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item paid - Amount of this payment
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item payby - `CARD' (credit cards), `CHEK' (electronic check/ACH),
-`LECB' (phone bill billing), `BILL' (billing), `PREP` (prepaid card),
-`CASH' (cash), `WEST' (Western Union), `MCRD' (Manual credit card), or
-`COMP' (free)
-
-=item payinfo - card number, check #, or comp issuer (4-8 lowercase alphanumerics; think username), respectively
-
-=item paybatch - text field for tracking card processing
-
-=item closed - books closed flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new payment. To add the payment to the databse, see L<"insert">.
-
-=cut
-
-sub table { 'cust_pay'; }
-sub cust_linked { $_[0]->cust_main_custnum; }
-sub cust_unlinked_msg {
- my $self = shift;
- "WARNING: can't find cust_main.custnum ". $self->custnum.
- ' (cust_pay.paynum '. $self->paynum. ')';
-}
-
-=item insert
-
-Adds this payment to the database.
-
-For backwards-compatibility and convenience, if the additional field invnum
-is defined, an FS::cust_bill_pay record for the full amount of the payment
-will be created. In this case, custnum is optional.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $self->invnum ) {
- my $cust_bill = qsearchs('cust_bill', { 'invnum' => $self->invnum } )
- or do {
- $dbh->rollback if $oldAutoCommit;
- return "Unknown cust_bill.invnum: ". $self->invnum;
- };
- $self->custnum($cust_bill->custnum );
- }
-
-
- my $error = $self->check;
- return $error if $error;
-
- my $cust_main = $self->cust_main;
- my $old_balance = $cust_main->balance;
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error inserting $self: $error";
- }
-
- if ( $self->invnum ) {
- my $cust_bill_pay = new FS::cust_bill_pay {
- 'invnum' => $self->invnum,
- 'paynum' => $self->paynum,
- 'amount' => $self->paid,
- '_date' => $self->_date,
- };
- $error = $cust_bill_pay->insert;
- if ( $error ) {
- if ( $ignore_noapply ) {
- warn "warning: error inserting $cust_bill_pay: $error ".
- "(ignore_noapply flag set; inserting cust_pay record anyway)\n";
- } else {
- $dbh->rollback if $oldAutoCommit;
- return "error inserting $cust_bill_pay: $error";
- }
- }
- }
-
- if ( $self->paybatch =~ /^webui-/ ) {
- my @cust_pay = qsearch('cust_pay', {
- 'custnum' => $self->custnum,
- 'paybatch' => $self->paybatch,
- } );
- if ( scalar(@cust_pay) > 1 ) {
- $dbh->rollback if $oldAutoCommit;
- return "a payment with webui token ". $self->paybatch. " already exists";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- #false laziness w/ cust_credit::insert
- if ( $unsuspendauto && $old_balance && $cust_main->balance <= 0 ) {
- my @errors = $cust_main->unsuspend;
- #return
- # side-fx with nested transactions? upstack rolls back?
- warn "WARNING:Errors unsuspending customer ". $cust_main->custnum. ": ".
- join(' / ', @errors)
- if @errors;
- }
- #eslaf
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- #my $cust_main = $self->cust_main;
- if ( $conf->exists('payment_receipt_email')
- && grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list
- ) {
-
- my $receipt_template = new Text::Template (
- TYPE => 'ARRAY',
- SOURCE => [ map "$_\n", $conf->config('payment_receipt_email') ],
- ) or do {
- warn "can't create payment receipt template: $Text::Template::ERROR";
- return '';
- };
-
- my @invoicing_list = grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list;
-
- my $payby = $self->payby;
- my $payinfo = $self->payinfo;
- $payby =~ s/^BILL$/Check/ if $payinfo;
- $payinfo = $self->payinfo_masked if $payby eq 'CARD' || $payby eq 'CHEK';
- $payby =~ s/^CHEK$/Electronic check/;
-
- my $error = send_email(
- 'from' => $conf->config('invoice_from'), #??? well as good as any
- 'to' => \@invoicing_list,
- 'subject' => 'Payment receipt',
- 'body' => [ $receipt_template->fill_in( HASH => {
- 'date' => time2str("%a %B %o, %Y", $self->_date),
- 'name' => $cust_main->name,
- 'paynum' => $self->paynum,
- 'paid' => sprintf("%.2f", $self->paid),
- 'payby' => ucfirst(lc($payby)),
- 'payinfo' => $payinfo,
- 'balance' => $cust_main->balance,
- } ) ],
- );
- if ( $error ) {
- warn "can't send payment receipt: $error";
- }
-
- }
-
- '';
-
-}
-
-=item void [ REASON ]
-
-Voids this payment: deletes the payment and all associated applications and
-adds a record of the voided payment to the FS::cust_pay_void table.
-
-=cut
-
-sub void {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $cust_pay_void = new FS::cust_pay_void ( {
- map { $_ => $self->get($_) } $self->fields
- } );
- $cust_pay_void->reason(shift) if scalar(@_);
- my $error = $cust_pay_void->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $error = $self->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Deletes this payment and all associated applications (see L<FS::cust_bill_pay>),
-unless the closed flag is set. In most cases, you want to use the void
-method instead to leave a record of the deleted payment.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete closed payment" if $self->closed =~ /^Y/i;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $app ( $self->cust_bill_pay, $self->cust_pay_refund ) {
- my $error = $app->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $conf->config('deletepayments') ne '' ) {
-
- my $cust_main = $self->cust_main;
-
- my $error = send_email(
- 'from' => $conf->config('invoice_from'), #??? well as good as any
- 'to' => $conf->config('deletepayments'),
- 'subject' => 'FREESIDE NOTIFICATION: Payment deleted',
- 'body' => [
- "This is an automatic message from your Freeside installation\n",
- "informing you that the following payment has been deleted:\n",
- "\n",
- 'paynum: '. $self->paynum. "\n",
- 'custnum: '. $self->custnum.
- " (". $cust_main->last. ", ". $cust_main->first. ")\n",
- 'paid: $'. sprintf("%.2f", $self->paid). "\n",
- 'date: '. time2str("%a %b %e %T %Y", $self->_date). "\n",
- 'payby: '. $self->payby. "\n",
- 'payinfo: '. $self->payinfo. "\n",
- 'paybatch: '. $self->paybatch. "\n",
- ],
- );
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't send payment deletion notification: $error";
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item replace OLD_RECORD
-
-You probably shouldn't modify payments...
-
-=item check
-
-Checks all fields to make sure this is a valid payment. If there is an error,
-returns the error, otherwise returns false. Called by the insert method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('paynum')
- || $self->ut_numbern('custnum')
- || $self->ut_money('paid')
- || $self->ut_numbern('_date')
- || $self->ut_textn('paybatch')
- || $self->ut_enum('closed', [ '', 'Y' ])
- ;
- return $error if $error;
-
- return "paid must be > 0 " if $self->paid <= 0;
-
- return "unknown cust_main.custnum: ". $self->custnum
- unless $self->invnum
- || qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-
- $self->_date(time) unless $self->_date;
-
- $self->payby =~ /^(CARD|CHEK|LECB|BILL|COMP|PREP|CASH|WEST|MCRD)$/
- or return "Illegal payby";
- $self->payby($1);
-
- #false laziness with cust_refund::check
- if ( $self->payby eq 'CARD' ) {
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\D//g;
- $self->payinfo($payinfo);
- if ( $self->payinfo ) {
- $self->payinfo =~ /^(\d{13,16})$/
- or return "Illegal (mistyped?) credit card number (payinfo)";
- $self->payinfo($1);
- validate($self->payinfo) or return "Illegal credit card number";
- return "Unknown card type" if cardtype($self->payinfo) eq "Unknown";
- } else {
- $self->payinfo('N/A');
- }
-
- } else {
- $error = $self->ut_textn('payinfo');
- return $error if $error;
- }
-
- $self->SUPER::check;
-}
-
-=item batch_insert CUST_PAY_OBJECT, ...
-
-Class method which inserts multiple payments. Takes a list of FS::cust_pay
-objects. Returns a list, each element representing the status of inserting the
-corresponding payment - empty. If there is an error inserting any payment, the
-entire transaction is rolled back, i.e. all payments are inserted or none are.
-
-For example:
-
- my @errors = FS::cust_pay->batch_insert(@cust_pay);
- my $num_errors = scalar(grep $_, @errors);
- if ( $num_errors == 0 ) {
- #success; all payments were inserted
- } else {
- #failure; no payments were inserted.
- }
-
-=cut
-
-sub batch_insert {
- my $self = shift; #class method
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $errors = 0;
-
- my @errors = map {
- my $error = $_->insert;
- if ( $error ) {
- $errors++;
- } else {
- $_->cust_main->apply_payments;
- }
- $error;
- } @_;
-
- if ( $errors ) {
- $dbh->rollback if $oldAutoCommit;
- } else {
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- }
-
- @errors;
-
-}
-
-=item cust_bill_pay
-
-Returns all applications to invoices (see L<FS::cust_bill_pay>) for this
-payment.
-
-=cut
-
-sub cust_bill_pay {
- my $self = shift;
- sort { $a->_date <=> $b->_date
- || $a->invnum <=> $b->invnum }
- qsearch( 'cust_bill_pay', { 'paynum' => $self->paynum } )
- ;
-}
-
-=item cust_pay_refund
-
-Returns all applications of refunds (see L<FS::cust_pay_refund>) to this
-payment.
-
-=cut
-
-sub cust_pay_refund {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_pay_refund', { 'paynum' => $self->paynum } )
- ;
-}
-
-
-=item unapplied
-
-Returns the amount of this payment that is still unapplied; which is
-paid minus all payment applications (see L<FS::cust_bill_pay>) and refund
-applications (see L<FS::cust_pay_refund>).
-
-=cut
-
-sub unapplied {
- my $self = shift;
- my $amount = $self->paid;
- $amount -= $_->amount foreach ( $self->cust_bill_pay );
- $amount -= $_->amount foreach ( $self->cust_pay_refund );
- sprintf("%.2f", $amount );
-}
-
-=item unrefunded
-
-Returns the amount of this payment that has not been refuned; which is
-paid minus all refund applications (see L<FS::cust_pay_refund>).
-
-=cut
-
-sub unrefunded {
- my $self = shift;
- my $amount = $self->paid;
- $amount -= $_->amount foreach ( $self->cust_pay_refund );
- sprintf("%.2f", $amount );
-}
-
-
-=item cust_main
-
-Returns the parent customer object (see L<FS::cust_main>).
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-=item payinfo_masked
-
-Returns a "masked" payinfo field with all but the last four characters replaced
-by 'x'es. Useful for displaying credit cards.
-
-=cut
-
-sub payinfo_masked {
- my $self = shift;
- #some false laziness w/cust_main::paymask
- if ( $self->payby eq 'CARD' ) {
- my $payinfo = $self->payinfo;
- 'x'x(length($payinfo)-4). substr($payinfo,(length($payinfo)-4));
- } elsif ( $self->payby eq 'CHEK' ) {
- my( $account, $aba ) = split('@', $self->payinfo );
- 'x'x(length($account)-2). substr($account,(length($account)-2)). "@". $aba;
- } else {
- $self->payinfo;
- }
-}
-
-=back
-
-=head1 BUGS
-
-Delete and replace methods. payinfo_masked false laziness with cust_main.pm
-and cust_refund.pm
-
-=head1 SEE ALSO
-
-L<FS::cust_bill_pay>, L<FS::cust_bill>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_pay_batch.pm b/FS/FS/cust_pay_batch.pm
deleted file mode 100644
index e057334..0000000
--- a/FS/FS/cust_pay_batch.pm
+++ /dev/null
@@ -1,564 +0,0 @@
-package FS::cust_pay_batch;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw(dbh qsearch qsearchs);
-use Business::CreditCard;
-
-@ISA = qw( FS::Record );
-
-# 1 is mostly method/subroutine entry and options
-# 2 traces progress of some operations
-# 3 is even more information including possibly sensitive data
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::cust_pay_batch - Object methods for batch cards
-
-=head1 SYNOPSIS
-
- use FS::cust_pay_batch;
-
- $record = new FS::cust_pay_batch \%hash;
- $record = new FS::cust_pay_batch { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_pay_batch object represents a credit card transaction ready to be
-batched (sent to a processor). FS::cust_pay_batch inherits from FS::Record.
-Typically called by the collect method of an FS::cust_main object. The
-following fields are currently supported:
-
-=over 4
-
-=item paybatchnum - primary key (automatically assigned)
-
-=item batchnum - indentifies group in batch
-
-=item payby - CARD/CHEK/LECB/BILL/COMP
-
-=item payinfo
-
-=item exp - card expiration
-
-=item amount
-
-=item invnum - invoice
-
-=item custnum - customer
-
-=item payname - name on card
-
-=item first - name
-
-=item last - name
-
-=item address1
-
-=item address2
-
-=item city
-
-=item state
-
-=item zip
-
-=item country
-
-=item status
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'cust_pay_batch'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Delete this record from the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid transaction. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and repalce methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('paybatchnum')
- || $self->ut_numbern('trancode') #depriciated
- || $self->ut_money('amount')
- || $self->ut_number('invnum')
- || $self->ut_number('custnum')
- || $self->ut_text('address1')
- || $self->ut_textn('address2')
- || $self->ut_text('city')
- || $self->ut_textn('state')
- ;
-
- return $error if $error;
-
- $self->getfield('last') =~ /^([\w \,\.\-\']+)$/ or return "Illegal last name";
- $self->setfield('last',$1);
-
- $self->first =~ /^([\w \,\.\-\']+)$/ or return "Illegal first name";
- $self->first($1);
-
- $self->payby =~ /^(CARD|CHEK|LECB|BILL|COMP|PREP|CASH|WEST|MCRD)$/
- or return "Illegal payby";
- $self->payby($1);
-
- # FIXME
- # there is no point in false laziness here
- # we will effectively set "check_payinfo to 0"
- # we can change that when we finish the refactor
-
- #my $cardnum = $self->cardnum;
- #$cardnum =~ s/\D//g;
- #$cardnum =~ /^(\d{13,16})$/
- # or return "Illegal credit card number";
- #$cardnum = $1;
- #$self->cardnum($cardnum);
- #validate($cardnum) or return "Illegal credit card number";
- #return "Unknown card type" if cardtype($cardnum) eq "Unknown";
-
- if ( $self->exp eq '' ) {
- return "Expiration date required"
- unless $self->payby =~ /^(CHEK|DCHK|LECB|WEST)$/;
- $self->exp('');
- } else {
- if ( $self->exp =~ /^(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})$/ ) {
- $self->exp("$1-$2-$3");
- } elsif ( $self->exp =~ /^(\d{1,2})[\/\-](\d{2}(\d{2})?)$/ ) {
- if ( length($2) == 4 ) {
- $self->exp("$2-$1-01");
- } elsif ( $2 > 98 ) { #should pry change to check for "this year"
- $self->exp("19$2-$1-01");
- } else {
- $self->exp("20$2-$1-01");
- }
- } else {
- return "Illegal expiration date";
- }
- }
-
- if ( $self->payname eq '' ) {
- $self->payname( $self->first. " ". $self->getfield('last') );
- } else {
- $self->payname =~ /^([\w \,\.\-\']+)$/
- or return "Illegal billing name";
- $self->payname($1);
- }
-
- #$self->zip =~ /^\s*(\w[\w\-\s]{3,8}\w)\s*$/
- # or return "Illegal zip: ". $self->zip;
- #$self->zip($1);
-
- $self->country =~ /^(\w\w)$/ or return "Illegal country: ". $self->country;
- $self->country($1);
-
- $error = $self->ut_zip('zip', $self->country);
- return $error if $error;
-
- #check invnum, custnum, ?
-
- $self->SUPER::check;
-}
-
-=item cust_main
-
-Returns the customer (see L<FS::cust_main>) for this batched credit card
-payment.
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item import_results
-
-=cut
-
-sub import_results {
- use Time::Local;
- use FS::cust_pay;
- eval "use Text::CSV_XS;";
- die $@ if $@;
-#
- my $param = shift;
- my $fh = $param->{'filehandle'};
- my $format = $param->{'format'};
- my $paybatch = $param->{'paybatch'};
-
- my $filetype; # CSV, Fixed80, Fixed264
- my @fields;
- my $formatre; # for Fixed.+
- my @values;
- my $begin_condition;
- my $end_condition;
- my $end_hook;
- my $hook;
- my $approved_condition;
- my $declined_condition;
-
- if ( $format eq 'csv-td_canada_trust-merchant_pc_batch' ) {
-
- $filetype = "CSV";
-
- @fields = (
- 'paybatchnum', # Reference#: Invoice number of the transaction
- 'paid', # Amount: Amount of the transaction. Dollars and cents
- # with no decimal entered.
- '', # Card Type: 0 - MCrd, 1 - Visa, 2 - AMEX, 3 - Discover,
- # 4 - Insignia, 5 - Diners/EnRoute, 6 - JCB
- '_date', # Transaction Date: Date the Transaction was processed
- 'time', # Transaction Time: Time the transaction was processed
- 'payinfo', # Card Number: Card number for the transaction
- '', # Expiry Date: Expiry date of the card
- '', # Auth#: Authorization number entered for force post
- # transaction
- 'type', # Transaction Type: 0 - purchase, 40 - refund,
- # 20 - force post
- 'result', # Processing Result: 3 - Approval,
- # 4 - Declined/Amount over limit,
- # 5 - Invalid/Expired/stolen card,
- # 6 - Comm Error
- '', # Terminal ID: Terminal ID used to process the transaction
- );
-
- $end_condition = sub {
- my $hash = shift;
- $hash->{'type'} eq '0BC';
- };
-
- $end_hook = sub {
- my( $hash, $total) = @_;
- $total = sprintf("%.2f", $total);
- my $batch_total = sprintf("%.2f", $hash->{'paybatchnum'} / 100 );
- return "Our total $total does not match bank total $batch_total!"
- if $total != $batch_total;
- '';
- };
-
- $hook = sub {
- my $hash = shift;
- $hash->{'paid'} = sprintf("%.2f", $hash->{'paid'} / 100 );
- $hash->{'_date'} = timelocal( substr($hash->{'time'}, 4, 2),
- substr($hash->{'time'}, 2, 2),
- substr($hash->{'time'}, 0, 2),
- substr($hash->{'_date'}, 6, 2),
- substr($hash->{'_date'}, 4, 2)-1,
- substr($hash->{'_date'}, 0, 4)-1900, );
- };
-
- $approved_condition = sub {
- my $hash = shift;
- $hash->{'type'} eq '0' && $hash->{'result'} == 3;
- };
-
- $declined_condition = sub {
- my $hash = shift;
- $hash->{'type'} eq '0' && ( $hash->{'result'} == 4
- || $hash->{'result'} == 5 );
- };
-
-
- }elsif ( $format eq 'PAP' ) {
-
- $filetype = "Fixed264";
-
- @fields = (
- 'recordtype', # We are interested in the 'D' or debit records
- 'batchnum', # Record#: batch number we used when sending the file
- 'datacenter', # Where in the bowels of the bank the data was processed
- 'paid', # Amount: Amount of the transaction. Dollars and cents
- # with no decimal entered.
- '_date', # Transaction Date: Date the Transaction was processed
- 'bank', # Routing information
- 'payinfo', # Account number for the transaction
- 'paybatchnum', # Reference#: Invoice number of the transaction
- );
-
- $formatre = '^(.).{19}(.{4})(.{3})(.{10})(.{6})(.{9})(.{12}).{110}(.{19}).{71}$';
-
- $end_condition = sub {
- my $hash = shift;
- $hash->{'recordtype'} eq 'W';
- };
-
- $end_hook = sub {
- my( $hash, $total) = @_;
- $total = sprintf("%.2f", $total);
- my $batch_total = $hash->{'datacenter'}.$hash->{'paid'}.
- substr($hash->{'_date'},0,1); # YUCK!
- $batch_total = sprintf("%.2f", $batch_total / 100 );
- return "Our total $total does not match bank total $batch_total!"
- if $total != $batch_total;
- '';
- };
-
- $hook = sub {
- my $hash = shift;
- $hash->{'paid'} = sprintf("%.2f", $hash->{'paid'} / 100 );
- my $tmpdate = timelocal( 0,0,1,1,0,substr($hash->{'_date'}, 0, 3)+2000);
- $tmpdate += 86400*(substr($hash->{'_date'}, 3, 3)-1) ;
- $hash->{'_date'} = $tmpdate;
- $hash->{'payinfo'} = $hash->{'payinfo'} . '@' . $hash->{'bank'};
- };
-
- $approved_condition = sub {
- 1;
- };
-
- $declined_condition = sub {
- 0;
- };
-
-
- } else {
- return "Unknown format $format";
- }
-
- my $csv = new Text::CSV_XS;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $pay_batch = qsearchs('pay_batch',{'batchnum'=> $paybatch});
- unless ($pay_batch && $pay_batch->status eq 'I') {
- $dbh->rollback if $oldAutoCommit;
- return "batch $paybatch is not in transit";
- };
-
- my $newbatch = new FS::pay_batch { $pay_batch->hash };
- $newbatch->status('R'); # Resolved
- $newbatch->upload(time);
- my $error = $newbatch->replace($pay_batch);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error
- }
-
- my $total = 0;
- my $line;
- while ( defined($line=<$fh>) ) {
-
- next if $line =~ /^\s*$/; #skip blank lines
-
- if ($filetype eq "CSV") {
- $csv->parse($line) or do {
- $dbh->rollback if $oldAutoCommit;
- return "can't parse: ". $csv->error_input();
- };
- @values = $csv->fields();
- }elsif ($filetype eq "Fixed80" || $filetype eq "Fixed264"){
- @values = $line =~ /$formatre/;
- unless (@values) {
- $dbh->rollback if $oldAutoCommit;
- return "can't parse: ". $line;
- };
- }else{
- $dbh->rollback if $oldAutoCommit;
- return "Unknown file type $filetype";
- }
-
- my %hash;
- foreach my $field ( @fields ) {
- my $value = shift @values;
- next unless $field;
- $hash{$field} = $value;
- }
-
- if ( &{$end_condition}(\%hash) ) {
- my $error = &{$end_hook}(\%hash, $total);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- last;
- }
-
- my $cust_pay_batch =
- qsearchs('cust_pay_batch', { 'paybatchnum' => $hash{'paybatchnum'}+0 } );
- unless ( $cust_pay_batch ) {
- $dbh->rollback if $oldAutoCommit;
- return "unknown paybatchnum $hash{'paybatchnum'}\n";
- }
- my $custnum = $cust_pay_batch->custnum,
- my $payby = $cust_pay_batch->payby,
-
- my $new_cust_pay_batch = new FS::cust_pay_batch { $cust_pay_batch->hash };
-
- &{$hook}(\%hash);
-
- if ( &{$approved_condition}(\%hash) ) {
-
- $new_cust_pay_batch->status('Approved');
-
- my $cust_pay = new FS::cust_pay ( {
- 'custnum' => $custnum,
- 'payby' => $payby,
- 'paybatch' => $paybatch,
- map { $_ => $hash{$_} } (qw( paid _date payinfo )),
- } );
- $error = $cust_pay->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error adding payment paybatchnum $hash{'paybatchnum'}: $error\n";
- }
- $total += $hash{'paid'};
-
- $cust_pay->cust_main->apply_payments;
-
- } elsif ( &{$declined_condition}(\%hash) ) {
-
- $new_cust_pay_batch->status('Declined');
-
- #this should be configurable... if anybody else ever uses batches
- # $cust_pay_batch->cust_main->suspend;
-
- foreach my $part_bill_event (
- sort { $a->seconds <=> $b->seconds
- || $a->weight <=> $b->weight
- || $a->eventpart <=> $b->eventpart }
- grep { ! qsearch( 'cust_bill_event', {
- 'invnum' => $cust_pay_batch->invnum,
- 'eventpart' => $_->eventpart,
- 'status' => 'done',
- } )
- }
- qsearch( {
- 'table' => 'part_bill_event',
- 'hashref' => { 'payby' => 'DCLN',
- 'disabled' => '', },
- } )
- ) {
-
- # don't run subsequent events if balance<=0
- last if $cust_pay_batch->cust_main->balance <= 0;
-
- warn " calling invoice event (". $part_bill_event->eventcode. ")\n"
- if $DEBUG > 1;
- my $cust_main = $cust_pay_batch->cust_main; #for callback
-
- my $error;
- {
- local $SIG{__DIE__}; # don't want Mason __DIE__ handler active
- $error = eval $part_bill_event->eventcode;
- }
-
- my $status = '';
- my $statustext = '';
- if ( $@ ) {
- $status = 'failed';
- $statustext = $@;
- } elsif ( $error ) {
- $status = 'done';
- $statustext = $error;
- } else {
- $status = 'done'
- }
-
- #add cust_bill_event
- my $cust_bill_event = new FS::cust_bill_event {
- 'invnum' => $cust_pay_batch->invnum,
- 'eventpart' => $part_bill_event->eventpart,
- '_date' => time,
- 'status' => $status,
- 'statustext' => $statustext,
- };
- $error = $cust_bill_event->insert;
- if ( $error ) {
- # gah, even with transactions.
- $dbh->commit if $oldAutoCommit; #well.
- my $e = 'WARNING: Event run but database not updated - '.
- 'error inserting cust_bill_event, invnum #'. $cust_pay_batch->invnum.
- ', eventpart '. $part_bill_event->eventpart.
- ": $error";
- warn $e;
- return $e;
- }
-
- }
-
- }
-
- my $error = $new_cust_pay_batch->replace($cust_pay_batch);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error updating status of paybatchnum $hash{'paybatchnum'}: $error\n";
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=back
-
-=head1 BUGS
-
-There should probably be a configuration file with a list of allowed credit
-card types.
-
-=head1 SEE ALSO
-
-L<FS::cust_main>, L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_pay_refund.pm b/FS/FS/cust_pay_refund.pm
deleted file mode 100644
index 15e0e53..0000000
--- a/FS/FS/cust_pay_refund.pm
+++ /dev/null
@@ -1,177 +0,0 @@
-package FS::cust_pay_refund;
-
-use strict;
-use vars qw( @ISA ); #$conf );
-use FS::UID qw( getotaker );
-use FS::Record qw( qsearchs ); # qsearch );
-use FS::cust_main;
-use FS::cust_pay;
-use FS::cust_refund;
-
-@ISA = qw( FS::Record );
-
-#ask FS::UID to run this stuff for us later
-#FS::UID->install_callback( sub {
-# $conf = new FS::Conf;
-#} );
-
-=head1 NAME
-
-FS::cust_pay_refund - Object methods for cust_pay_refund records
-
-=head1 SYNOPSIS
-
- use FS::cust_pay_refund;
-
- $record = new FS::cust_pay_refund \%hash;
- $record = new FS::cust_pay_refund { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_pay_refund object represents application of a refund (see
-L<FS::cust_refund>) to an payment (see L<FS::cust_pay>). FS::cust_pay_refund
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item payrefundnum - primary key
-
-=item paynum - credit being applied
-
-=item refundnum - invoice to which credit is applied (see L<FS::cust_bill>)
-
-=item amount - amount of the credit applied
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new cust_pay_refund. To add the cust_pay_refund to the database,
-see L<"insert">.
-
-=cut
-
-sub table { 'cust_pay_refund'; }
-
-=item insert
-
-Adds this cust_pay_refund to the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item delete
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't apply refund to closed payment"
- if $self->cust_pay->closed =~ /^Y/i;
- return "Can't apply closed refund"
- if $self->cust_refund->closed =~ /^Y/i;
- $self->SUPER::delete(@_);
-}
-
-=item replace OLD_RECORD
-
-Application of refunds to payments may not be modified.
-
-=cut
-
-sub replace {
- return "Can't modify application of a refund to payment!"
-}
-
-=item check
-
-Checks all fields to make sure this is a valid refund application to a payment.
-If there is an error, returns the error, otherwise returns false. Called by
-the insert and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('payrefundnum')
- || $self->ut_number('paynum')
- || $self->ut_number('refundnum')
- || $self->ut_numbern('_date')
- || $self->ut_money('amount')
- ;
- return $error if $error;
-
- return "amount must be > 0" if $self->amount <= 0;
-
- return "Unknown payment"
- unless my $cust_pay =
- qsearchs( 'cust_pay', { 'paynum' => $self->paynum } );
-
- return "Unknown refund"
- unless my $cust_refund =
- qsearchs( 'cust_refund', { 'refundnum' => $self->refundnum } );
-
- $self->_date(time) unless $self->_date;
-
- return 'Cannot apply ($'. $self->amount. ') more than'.
- ' remaining value of refund ($'. $cust_refund->unapplied. ')'
- unless $self->amount <= $cust_refund->unapplied;
-
- return "Cannot apply more than remaining value of payment"
- unless $self->amount <= $cust_pay->unapplied;
-
- $self->SUPER::check;
-}
-
-=item sub cust_pay
-
-Returns the payment (see L<FS::cust_pay>)
-
-=cut
-
-sub cust_pay {
- my $self = shift;
- qsearchs( 'cust_pay', { 'paynum' => $self->paynum } );
-}
-
-=item cust_refund
-
-Returns the refund (see L<FS::cust_refund>)
-
-=cut
-
-sub cust_refund {
- my $self = shift;
- qsearchs( 'cust_refund', { 'refundnum' => $self->refundnum } );
-}
-
-=back
-
-=head1 BUGS
-
-The delete method.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_refund>, L<FS::cust_bill>, L<FS::cust_credit>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_pay_void.pm b/FS/FS/cust_pay_void.pm
deleted file mode 100644
index 946d69f..0000000
--- a/FS/FS/cust_pay_void.pm
+++ /dev/null
@@ -1,236 +0,0 @@
-package FS::cust_pay_void;
-use strict;
-use vars qw( @ISA );
-use Business::CreditCard;
-use FS::UID qw(getotaker);
-use FS::Record qw(qsearchs dbh fields); # qsearch );
-use FS::cust_pay;
-#use FS::cust_bill;
-#use FS::cust_bill_pay;
-#use FS::cust_pay_refund;
-#use FS::cust_main;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::cust_pay_void - Object methods for cust_pay_void objects
-
-=head1 SYNOPSIS
-
- use FS::cust_pay_void;
-
- $record = new FS::cust_pay_void \%hash;
- $record = new FS::cust_pay_void { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_pay_void object represents a voided payment. The following fields
-are currently supported:
-
-=over 4
-
-=item paynum - primary key (assigned automatically for new payments)
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item paid - Amount of this payment
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item payby - `CARD' (credit cards), `CHEK' (electronic check/ACH),
-`LECB' (phone bill billing), `BILL' (billing), `CASH' (cash),
-`WEST' (Western Union), `MCRD' (Manual credit card), or `COMP' (free)
-
-=item payinfo - card number, check #, or comp issuer (4-8 lowercase alphanumerics; think username), respectively
-
-=item paybatch - text field for tracking card processing
-
-=item closed - books closed flag, empty or `Y'
-
-=item void_date
-
-=item reason
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new payment. To add the payment to the databse, see L<"insert">.
-
-=cut
-
-sub table { 'cust_pay_void'; }
-
-=item insert
-
-Adds this voided payment to the database.
-
-=item unvoid
-
-"Un-void"s this payment: Deletes the voided payment from the database and adds
-back a normal payment.
-
-=cut
-
-sub unvoid {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $cust_pay = new FS::cust_pay ( {
- map { $_ => $self->get($_) } fields('cust_pay')
- } );
- my $error = $cust_pay->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $error = $self->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Deletes this voided payment. You probably don't want to use this directly; see
-the B<unvoid> method to add the original payment back.
-
-=item replace OLD_RECORD
-
-Currently unimplemented.
-
-=cut
-
-sub replace {
- return "Can't modify voided payments!";
-}
-
-=item check
-
-Checks all fields to make sure this is a valid voided payment. If there is an
-error, returns the error, otherwise returns false. Called by the insert
-method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('paynum')
- || $self->ut_numbern('custnum')
- || $self->ut_money('paid')
- || $self->ut_number('_date')
- || $self->ut_textn('paybatch')
- || $self->ut_enum('closed', [ '', 'Y' ])
- || $self->ut_numbern('void_date')
- || $self->ut_textn('reason')
- ;
- return $error if $error;
-
- return "paid must be > 0 " if $self->paid <= 0;
-
- return "unknown cust_main.custnum: ". $self->custnum
- unless $self->invnum
- || qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-
- $self->void_date(time) unless $self->void_date;
-
- $self->payby =~ /^(CARD|CHEK|LECB|BILL|COMP|PREP|CASH|WEST|MCRD)$/
- or return "Illegal payby";
- $self->payby($1);
-
- #false laziness with cust_refund::check
- if ( $self->payby eq 'CARD' ) {
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\D//g;
- $self->payinfo($payinfo);
- if ( $self->payinfo ) {
- $self->payinfo =~ /^(\d{13,16})$/
- or return "Illegal (mistyped?) credit card number (payinfo)";
- $self->payinfo($1);
- validate($self->payinfo) or return "Illegal credit card number";
- return "Unknown card type" if cardtype($self->payinfo) eq "Unknown";
- } else {
- $self->payinfo('N/A');
- }
-
- } else {
- $error = $self->ut_textn('payinfo');
- return $error if $error;
- }
-
- $self->otaker(getotaker);
-
- $self->SUPER::check;
-}
-
-=item cust_main
-
-Returns the parent customer object (see L<FS::cust_main>).
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-=item payinfo_masked
-
-Returns a "masked" payinfo field with all but the last four characters replaced
-by 'x'es. Useful for displaying credit cards.
-
-=cut
-
-sub payinfo_masked {
- my $self = shift;
- my $payinfo = $self->payinfo;
- 'x'x(length($payinfo)-4). substr($payinfo,(length($payinfo)-4));
-}
-
-=back
-
-=head1 BUGS
-
-Delete and replace methods.
-
-=head1 SEE ALSO
-
-L<FS::cust_pay>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm
deleted file mode 100644
index 4976a2d..0000000
--- a/FS/FS/cust_pkg.pm
+++ /dev/null
@@ -1,1419 +0,0 @@
-package FS::cust_pkg;
-
-use strict;
-use vars qw(@ISA $disable_agentcheck @SVCDB_CANCEL_SEQ $DEBUG);
-use Tie::IxHash;
-use FS::UID qw( getotaker dbh );
-use FS::Misc qw( send_email );
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::cust_svc;
-use FS::part_pkg;
-use FS::cust_main;
-use FS::type_pkgs;
-use FS::pkg_svc;
-use FS::cust_bill_pkg;
-use FS::h_cust_svc;
-use FS::reg_code;
-
-# need to 'use' these instead of 'require' in sub { cancel, suspend, unsuspend,
-# setup }
-# because they load configuration by setting FS::UID::callback (see TODO)
-use FS::svc_acct;
-use FS::svc_domain;
-use FS::svc_www;
-use FS::svc_forward;
-
-# for sending cancel emails in sub cancel
-use FS::Conf;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-$DEBUG = 0;
-
-$disable_agentcheck = 0;
-
-# The order in which to unprovision services.
-@SVCDB_CANCEL_SEQ = qw( svc_external
- svc_www
- svc_forward
- svc_acct
- svc_domain
- svc_broadband );
-
-sub _cache {
- my $self = shift;
- my ( $hashref, $cache ) = @_;
- #if ( $hashref->{'pkgpart'} ) {
- if ( $hashref->{'pkg'} ) {
- # #@{ $self->{'_pkgnum'} } = ();
- # my $subcache = $cache->subcache('pkgpart', 'part_pkg');
- # $self->{'_pkgpart'} = $subcache;
- # #push @{ $self->{'_pkgnum'} },
- # FS::part_pkg->new_or_cached($hashref, $subcache);
- $self->{'_pkgpart'} = FS::part_pkg->new($hashref);
- }
- if ( exists $hashref->{'svcnum'} ) {
- #@{ $self->{'_pkgnum'} } = ();
- my $subcache = $cache->subcache('svcnum', 'cust_svc', $hashref->{pkgnum});
- $self->{'_svcnum'} = $subcache;
- #push @{ $self->{'_pkgnum'} },
- FS::cust_svc->new_or_cached($hashref, $subcache) if $hashref->{svcnum};
- }
-}
-
-=head1 NAME
-
-FS::cust_pkg - Object methods for cust_pkg objects
-
-=head1 SYNOPSIS
-
- use FS::cust_pkg;
-
- $record = new FS::cust_pkg \%hash;
- $record = new FS::cust_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->cancel;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $part_pkg = $record->part_pkg;
-
- @labels = $record->labels;
-
- $seconds = $record->seconds_since($timestamp);
-
- $error = FS::cust_pkg::order( $custnum, \@pkgparts );
- $error = FS::cust_pkg::order( $custnum, \@pkgparts, \@remove_pkgnums ] );
-
-=head1 DESCRIPTION
-
-An FS::cust_pkg object represents a customer billing item. FS::cust_pkg
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item pkgnum - primary key (assigned automatically for new billing items)
-
-=item custnum - Customer (see L<FS::cust_main>)
-
-=item pkgpart - Billing item definition (see L<FS::part_pkg>)
-
-=item setup - date
-
-=item bill - date (next bill date)
-
-=item last_bill - last bill date
-
-=item susp - date
-
-=item expire - date
-
-=item cancel - date
-
-=item otaker - order taker (assigned automatically if null, see L<FS::UID>)
-
-=item manual_flag - If this field is set to 1, disables the automatic
-unsuspension of this package when using the B<unsuspendauto> config file.
-
-=back
-
-Note: setup, bill, susp, expire and cancel are specified as UNIX timestamps;
-see L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for
-conversion functions.
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new billing item. To add the item to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_pkg'; }
-sub cust_linked { $_[0]->cust_main_custnum; }
-sub cust_unlinked_msg {
- my $self = shift;
- "WARNING: can't find cust_main.custnum ". $self->custnum.
- ' (cust_pkg.pkgnum '. $self->pkgnum. ')';
-}
-
-=item insert [ OPTION => VALUE ... ]
-
-Adds this billing item to the database ("Orders" the item). If there is an
-error, returns the error, otherwise returns false.
-
-If the additional field I<promo_code> is defined instead of I<pkgpart>, it
-will be used to look up the package definition and agent restrictions will be
-ignored.
-
-The following options are available: I<change>
-
-I<change>, if set true, supresses any referral credit to a referring customer.
-
-=cut
-
-sub insert {
- my( $self, %options ) = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- #if ( $self->reg_code ) {
- # my $reg_code = qsearchs('reg_code', { 'code' => $self->reg_code } );
- # $error = $reg_code->delete;
- # if ( $error ) {
- # $dbh->rollback if $oldAutoCommit;
- # return $error;
- # }
- #}
-
- my $conf = new FS::Conf;
- my $cust_main = $self->cust_main;
- my $part_pkg = $self->part_pkg;
- if ( $conf->exists('referral_credit')
- && $cust_main->referral_custnum
- && ! $options{'change'}
- && $part_pkg->freq !~ /^0\D?$/
- )
- {
- my $referring_cust_main = $cust_main->referring_cust_main;
- if ( $referring_cust_main->status ne 'cancelled' ) {
- my $error;
- if ( $part_pkg->freq !~ /^\d+$/ ) {
- warn 'WARNING: Not crediting customer '. $cust_main->referral_custnum.
- ' for package '. $self->pkgnum.
- ' ( customer '. $self->custnum. ')'.
- ' - One-time referral credits not (yet) available for '.
- ' packages with '. $part_pkg->freq_pretty. ' frequency';
- } else {
-
- my $amount = sprintf( "%.2f", $part_pkg->base_recur / $part_pkg->freq );
- my $error =
- $referring_cust_main->credit( $amount,
- 'Referral credit for '. $cust_main->name
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error crediting customer ". $cust_main->referral_custnum.
- " for referral: $error";
- }
-
- }
-
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item delete
-
-This method now works but you probably shouldn't use it.
-
-You don't want to delete billing items, because there would then be no record
-the customer ever purchased the item. Instead, see the cancel method.
-
-=cut
-
-#sub delete {
-# return "Can't delete cust_pkg records!";
-#}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-Currently, custnum, setup, bill, susp, expire, and cancel may be changed.
-
-Changing pkgpart may have disasterous effects. See the order subroutine.
-
-setup and bill are normally updated by calling the bill method of a customer
-object (see L<FS::cust_main>).
-
-suspend is normally updated by the suspend and unsuspend methods.
-
-cancel is normally updated by the cancel method (and also the order subroutine
-in some cases).
-
-Calls
-
-=cut
-
-sub replace {
- my( $new, $old ) = ( shift, shift );
-
- #return "Can't (yet?) change pkgpart!" if $old->pkgpart != $new->pkgpart;
- return "Can't change otaker!" if $old->otaker ne $new->otaker;
-
- #allow this *sigh*
- #return "Can't change setup once it exists!"
- # if $old->getfield('setup') &&
- # $old->getfield('setup') != $new->getfield('setup');
-
- #some logic for bill, susp, cancel?
-
- local($disable_agentcheck) = 1 if $old->pkgpart == $new->pkgpart;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #save off and freeze RADIUS attributes for any associated svc_acct records
- my @svc_acct = ();
- if ( $old->part_pkg->is_prepaid || $new->part_pkg->is_prepaid ) {
-
- #also check for specific exports?
- # to avoid spurious modify export events
- @svc_acct = map { $_->svc_x }
- grep { $_->part_svc->svcdb eq 'svc_acct' }
- $old->cust_svc;
-
- $_->snapshot foreach @svc_acct;
-
- }
-
- my $error = $new->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- #for prepaid packages,
- #trigger export of new RADIUS Expiration attribute when cust_pkg.bill changes
- foreach my $old_svc_acct ( @svc_acct ) {
- my $new_svc_acct = new FS::svc_acct { $old_svc_acct->hash };
- my $s_error = $new_svc_acct->replace($old_svc_acct);
- if ( $s_error ) {
- $dbh->rollback if $oldAutoCommit;
- return $s_error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid billing item. If there is an
-error, returns the error, otherwise returns false. Called by the insert and
-replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('pkgnum')
- || $self->ut_foreign_key('custnum', 'cust_main', 'custnum')
- || $self->ut_numbern('pkgpart')
- || $self->ut_numbern('setup')
- || $self->ut_numbern('bill')
- || $self->ut_numbern('susp')
- || $self->ut_numbern('cancel')
- ;
- return $error if $error;
-
- if ( $self->reg_code ) {
-
- unless ( grep { $self->pkgpart == $_->pkgpart }
- map { $_->reg_code_pkg }
- qsearchs( 'reg_code', { 'code' => $self->reg_code,
- 'agentnum' => $self->cust_main->agentnum })
- ) {
- return "Unknown registration code";
- }
-
- } elsif ( $self->promo_code ) {
-
- my $promo_part_pkg =
- qsearchs('part_pkg', {
- 'pkgpart' => $self->pkgpart,
- 'promo_code' => { op=>'ILIKE', value=>$self->promo_code },
- } );
- return 'Unknown promotional code' unless $promo_part_pkg;
-
- } else {
-
- unless ( $disable_agentcheck ) {
- my $agent =
- qsearchs( 'agent', { 'agentnum' => $self->cust_main->agentnum } );
- my $pkgpart_href = $agent->pkgpart_hashref;
- return "agent ". $agent->agentnum.
- " can't purchase pkgpart ". $self->pkgpart
- unless $pkgpart_href->{ $self->pkgpart };
- }
-
- $error = $self->ut_foreign_key('pkgpart', 'part_pkg', 'pkgpart' );
- return $error if $error;
-
- }
-
- $self->otaker(getotaker) unless $self->otaker;
- $self->otaker =~ /^([\w\.\-]{0,16})$/ or return "Illegal otaker";
- $self->otaker($1);
-
- if ( $self->dbdef_table->column('manual_flag') ) {
- $self->manual_flag('') if $self->manual_flag eq ' ';
- $self->manual_flag =~ /^([01]?)$/
- or return "Illegal manual_flag ". $self->manual_flag;
- $self->manual_flag($1);
- }
-
- $self->SUPER::check;
-}
-
-=item cancel [ OPTION => VALUE ... ]
-
-Cancels and removes all services (see L<FS::cust_svc> and L<FS::part_svc>)
-in this package, then cancels the package itself (sets the cancel field to
-now).
-
-Available options are: I<quiet>
-
-I<quiet> can be set true to supress email cancellation notices.
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub cancel {
- my( $self, %options ) = @_;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my %svc;
- foreach my $cust_svc (
- qsearch( 'cust_svc', { 'pkgnum' => $self->pkgnum } )
- ) {
- push @{ $svc{$cust_svc->part_svc->svcdb} }, $cust_svc;
- }
-
- foreach my $svcdb (@SVCDB_CANCEL_SEQ) {
- foreach my $cust_svc (@{ $svc{$svcdb} }) {
- my $error = $cust_svc->cancel;
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error cancelling cust_svc: $error";
- }
- }
- }
-
- # Add a credit for remaining service
- my $remaining_value = $self->calc_remain();
- if ( $remaining_value > 0 ) {
- my $error = $self->cust_main->credit(
- $remaining_value,
- 'Credit for unused time on '. $self->part_pkg->pkg,
- );
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return "Error crediting customer \$$remaining_value for unused time on".
- $self->part_pkg->pkg. ": $error";
- }
- }
-
- unless ( $self->getfield('cancel') ) {
- my %hash = $self->hash;
- $hash{'cancel'} = time;
- my $new = new FS::cust_pkg ( \%hash );
- $error = $new->replace($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- my $conf = new FS::Conf;
- my @invoicing_list = grep { $_ !~ /^(POST|FAX)$/ } $self->cust_main->invoicing_list;
- if ( !$options{'quiet'} && $conf->exists('emailcancel') && @invoicing_list ) {
- my $conf = new FS::Conf;
- my $error = send_email(
- 'from' => $conf->config('invoice_from'),
- 'to' => \@invoicing_list,
- 'subject' => $conf->config('cancelsubject'),
- 'body' => [ map "$_\n", $conf->config('cancelmessage') ],
- );
- #should this do something on errors?
- }
-
- ''; #no errors
-
-}
-
-=item suspend
-
-Suspends all services (see L<FS::cust_svc> and L<FS::part_svc>) in this
-package, then suspends the package itself (sets the susp field to now).
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub suspend {
- my $self = shift;
- my $error ;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_svc (
- qsearch( 'cust_svc', { 'pkgnum' => $self->pkgnum } )
- ) {
- my $part_svc = qsearchs( 'part_svc', { 'svcpart' => $cust_svc->svcpart } );
-
- $part_svc->svcdb =~ /^([\w\-]+)$/ or do {
- $dbh->rollback if $oldAutoCommit;
- return "Illegal svcdb value in part_svc!";
- };
- my $svcdb = $1;
- require "FS/$svcdb.pm";
-
- my $svc = qsearchs( $svcdb, { 'svcnum' => $cust_svc->svcnum } );
- if ($svc) {
- $error = $svc->suspend;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- }
-
- unless ( $self->getfield('susp') ) {
- my %hash = $self->hash;
- $hash{'susp'} = time;
- my $new = new FS::cust_pkg ( \%hash );
- $error = $new->replace($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- ''; #no errors
-}
-
-=item unsuspend [ OPTION => VALUE ... ]
-
-Unsuspends all services (see L<FS::cust_svc> and L<FS::part_svc>) in this
-package, then unsuspends the package itself (clears the susp field).
-
-Available options are: I<adjust_next_bill>.
-
-I<adjust_next_bill> can be set true to adjust the next bill date forward by
-the amount of time the account was inactive. This was set true by default
-since 1.4.2 and 1.5.0pre6; however, starting with 1.7.0 this needs to be
-explicitly requested. Price plans for which this makes sense (anniversary-date
-based than prorate or subscription) could have an option to enable this
-behaviour?
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub unsuspend {
- my( $self, %opt ) = @_;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_svc (
- qsearch('cust_svc',{'pkgnum'=> $self->pkgnum } )
- ) {
- my $part_svc = qsearchs( 'part_svc', { 'svcpart' => $cust_svc->svcpart } );
-
- $part_svc->svcdb =~ /^([\w\-]+)$/ or do {
- $dbh->rollback if $oldAutoCommit;
- return "Illegal svcdb value in part_svc!";
- };
- my $svcdb = $1;
- require "FS/$svcdb.pm";
-
- my $svc = qsearchs( $svcdb, { 'svcnum' => $cust_svc->svcnum } );
- if ($svc) {
- $error = $svc->unsuspend;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- }
-
- unless ( ! $self->getfield('susp') ) {
- my %hash = $self->hash;
- my $inactive = time - $hash{'susp'};
-
- $hash{'bill'} = ( $hash{'bill'} || $hash{'setup'} ) + $inactive
- if $opt{'adjust_next_bill'}
- && $inactive > 0 && ( $hash{'bill'} || $hash{'setup'} );
-
- $hash{'susp'} = '';
- my $new = new FS::cust_pkg ( \%hash );
- $error = $new->replace($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- ''; #no errors
-}
-
-=item last_bill
-
-Returns the last bill date, or if there is no last bill date, the setup date.
-Useful for billing metered services.
-
-=cut
-
-sub last_bill {
- my $self = shift;
- if ( $self->dbdef_table->column('last_bill') ) {
- return $self->setfield('last_bill', $_[0]) if @_;
- return $self->getfield('last_bill') if $self->getfield('last_bill');
- }
- my $cust_bill_pkg = qsearchs('cust_bill_pkg', { 'pkgnum' => $self->pkgnum,
- 'edate' => $self->bill, } );
- $cust_bill_pkg ? $cust_bill_pkg->sdate : $self->setup || 0;
-}
-
-=item part_pkg
-
-Returns the definition for this billing item, as an FS::part_pkg object (see
-L<FS::part_pkg>).
-
-=cut
-
-sub part_pkg {
- my $self = shift;
- #exists( $self->{'_pkgpart'} )
- $self->{'_pkgpart'}
- ? $self->{'_pkgpart'}
- : qsearchs( 'part_pkg', { 'pkgpart' => $self->pkgpart } );
-}
-
-=item calc_setup
-
-Calls the I<calc_setup> of the FS::part_pkg object associated with this billing
-item.
-
-=cut
-
-sub calc_setup {
- my $self = shift;
- $self->part_pkg->calc_setup($self, @_);
-}
-
-=item calc_recur
-
-Calls the I<calc_recur> of the FS::part_pkg object associated with this billing
-item.
-
-=cut
-
-sub calc_recur {
- my $self = shift;
- $self->part_pkg->calc_recur($self, @_);
-}
-
-=item calc_remain
-
-Calls the I<calc_remain> of the FS::part_pkg object associated with this
-billing item.
-
-=cut
-
-sub calc_remain {
- my $self = shift;
- $self->part_pkg->calc_remain($self, @_);
-}
-
-=item calc_cancel
-
-Calls the I<calc_cancel> of the FS::part_pkg object associated with this
-billing item.
-
-=cut
-
-sub calc_cancel {
- my $self = shift;
- $self->part_pkg->calc_cancel($self, @_);
-}
-
-=item cust_svc [ SVCPART ]
-
-Returns the services for this package, as FS::cust_svc objects (see
-L<FS::cust_svc>). If a svcpart is specified, return only the matching
-services.
-
-=cut
-
-sub cust_svc {
- my $self = shift;
-
- if ( @_ ) {
- return qsearch( 'cust_svc', { 'pkgnum' => $self->pkgnum,
- 'svcpart' => shift, } );
- }
-
- #if ( $self->{'_svcnum'} ) {
- # values %{ $self->{'_svcnum'}->cache };
- #} else {
- $self->_sort_cust_svc(
- [ qsearch( 'cust_svc', { 'pkgnum' => $self->pkgnum } ) ]
- );
- #}
-
-}
-
-=item h_cust_svc END_TIMESTAMP [ START_TIMESTAMP ]
-
-Returns historical services for this package created before END TIMESTAMP and
-(optionally) not cancelled before START_TIMESTAMP, as FS::h_cust_svc objects
-(see L<FS::h_cust_svc>).
-
-=cut
-
-sub h_cust_svc {
- my $self = shift;
-
- $self->_sort_cust_svc(
- [ qsearch( 'h_cust_svc',
- { 'pkgnum' => $self->pkgnum, },
- FS::h_cust_svc->sql_h_search(@_),
- )
- ]
- );
-}
-
-sub _sort_cust_svc {
- my( $self, $arrayref ) = @_;
-
- map { $_->[0] }
- sort { $b->[1] cmp $a->[1] or $a->[2] <=> $b->[2] }
- map {
- my $pkg_svc = qsearchs( 'pkg_svc', { 'pkgpart' => $self->pkgpart,
- 'svcpart' => $_->svcpart } );
- [ $_,
- $pkg_svc ? $pkg_svc->primary_svc : '',
- $pkg_svc ? $pkg_svc->quantity : 0,
- ];
- }
- @$arrayref;
-
-}
-
-=item num_cust_svc [ SVCPART ]
-
-Returns the number of provisioned services for this package. If a svcpart is
-specified, counts only the matching services.
-
-=cut
-
-sub num_cust_svc {
- my $self = shift;
- my $sql = 'SELECT COUNT(*) FROM cust_svc WHERE pkgnum = ?';
- $sql .= ' AND svcpart = ?' if @_;
- my $sth = dbh->prepare($sql) or die dbh->errstr;
- $sth->execute($self->pkgnum, @_) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item available_part_svc
-
-Returns a list FS::part_svc objects representing services included in this
-package but not yet provisioned. Each FS::part_svc object also has an extra
-field, I<num_avail>, which specifies the number of available services.
-
-=cut
-
-sub available_part_svc {
- my $self = shift;
- grep { $_->num_avail > 0 }
- map {
- my $part_svc = $_->part_svc;
- $part_svc->{'Hash'}{'num_avail'} = #evil encapsulation-breaking
- $_->quantity - $self->num_cust_svc($_->svcpart);
- $part_svc;
- }
- $self->part_pkg->pkg_svc;
-}
-
-=item status
-
-Returns a short status string for this package, currently:
-
-=over 4
-
-=item not yet billed
-
-=item one-time charge
-
-=item active
-
-=item suspended
-
-=item cancelled
-
-=back
-
-=cut
-
-sub status {
- my $self = shift;
-
- my $freq = length($self->freq) ? $self->freq : $self->part_pkg->freq;
-
- return 'cancelled' if $self->get('cancel');
- return 'suspended' if $self->susp;
- return 'not yet billed' unless $self->setup;
- return 'one-time charge' if $freq =~ /^(0|$)/;
- return 'active';
-}
-
-=item statuses
-
-Class method that returns the list of possible status strings for pacakges
-(see L<the status method|/status>). For example:
-
- @statuses = FS::cust_pkg->statuses();
-
-=cut
-
-tie my %statuscolor, 'Tie::IxHash',
- 'not yet billed' => '000000',
- 'one-time charge' => '000000',
- 'active' => '00CC00',
- 'suspended' => 'FF9900',
- 'cancelled' => 'FF0000',
-;
-
-sub statuses {
- my $self = shift; #could be class...
- grep { $_ !~ /^(not yet billed)$/ } #this is a dumb status anyway
- # mayble split btw one-time vs. recur
- keys %statuscolor;
-}
-
-=item statuscolor
-
-Returns a hex triplet color string for this package's status.
-
-=cut
-
-sub statuscolor {
- my $self = shift;
- $statuscolor{$self->status};
-}
-
-=item labels
-
-Returns a list of lists, calling the label method for all services
-(see L<FS::cust_svc>) of this billing item.
-
-=cut
-
-sub labels {
- my $self = shift;
- map { [ $_->label ] } $self->cust_svc;
-}
-
-=item h_labels END_TIMESTAMP [ START_TIMESTAMP ]
-
-Like the labels method, but returns historical information on services that
-were active as of END_TIMESTAMP and (optionally) not cancelled before
-START_TIMESTAMP.
-
-Returns a list of lists, calling the label method for all (historical) services
-(see L<FS::h_cust_svc>) of this billing item.
-
-=cut
-
-sub h_labels {
- my $self = shift;
- map { [ $_->label(@_) ] } $self->h_cust_svc(@_);
-}
-
-=item h_labels_short END_TIMESTAMP [ START_TIMESTAMP ]
-
-Like h_labels, except returns a simple flat list, and shortens long
-(currently >5) lists of identical services to one line that lists the service
-label and the number of individual services rather than individual items.
-
-=cut
-
-sub h_labels_short {
- my $self = shift;
-
- my %labels;
- #tie %labels, 'Tie::IxHash';
- push @{ $labels{$_->[0]} }, $_->[1]
- foreach $self->h_labels(@_);
- my @labels;
- foreach my $label ( keys %labels ) {
- my @values = @{ $labels{$label} };
- my $num = scalar(@values);
- if ( $num > 5 ) {
- push @labels, "$label ($num)";
- } else {
- push @labels, map { "$label: $_" } @values;
- }
- }
-
- @labels;
-
-}
-
-=item cust_main
-
-Returns the parent customer object (see L<FS::cust_main>).
-
-=cut
-
-sub cust_main {
- my $self = shift;
- qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-}
-
-=item seconds_since TIMESTAMP
-
-Returns the number of seconds all accounts (see L<FS::svc_acct>) in this
-package have been online since TIMESTAMP, according to the session monitor.
-
-TIMESTAMP is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-sub seconds_since {
- my($self, $since) = @_;
- my $seconds = 0;
-
- foreach my $cust_svc (
- grep { $_->part_svc->svcdb eq 'svc_acct' } $self->cust_svc
- ) {
- $seconds += $cust_svc->seconds_since($since);
- }
-
- $seconds;
-
-}
-
-=item seconds_since_sqlradacct TIMESTAMP_START TIMESTAMP_END
-
-Returns the numbers of seconds all accounts (see L<FS::svc_acct>) in this
-package have been online between TIMESTAMP_START (inclusive) and TIMESTAMP_END
-(exclusive).
-
-TIMESTAMP_START and TIMESTAMP_END are specified as UNIX timestamps; see
-L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-
-=cut
-
-sub seconds_since_sqlradacct {
- my($self, $start, $end) = @_;
-
- my $seconds = 0;
-
- foreach my $cust_svc (
- grep {
- my $part_svc = $_->part_svc;
- $part_svc->svcdb eq 'svc_acct'
- && scalar($part_svc->part_export('sqlradius'));
- } $self->cust_svc
- ) {
- $seconds += $cust_svc->seconds_since_sqlradacct($start, $end);
- }
-
- $seconds;
-
-}
-
-=item attribute_since_sqlradacct TIMESTAMP_START TIMESTAMP_END ATTRIBUTE
-
-Returns the sum of the given attribute for all accounts (see L<FS::svc_acct>)
-in this package for sessions ending between TIMESTAMP_START (inclusive) and
-TIMESTAMP_END
-(exclusive).
-
-TIMESTAMP_START and TIMESTAMP_END are specified as UNIX timestamps; see
-L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-=cut
-
-sub attribute_since_sqlradacct {
- my($self, $start, $end, $attrib) = @_;
-
- my $sum = 0;
-
- foreach my $cust_svc (
- grep {
- my $part_svc = $_->part_svc;
- $part_svc->svcdb eq 'svc_acct'
- && scalar($part_svc->part_export('sqlradius'));
- } $self->cust_svc
- ) {
- $sum += $cust_svc->attribute_since_sqlradacct($start, $end, $attrib);
- }
-
- $sum;
-
-}
-
-=item transfer DEST_PKGNUM | DEST_CUST_PKG, [ OPTION => VALUE ... ]
-
-Transfers as many services as possible from this package to another package.
-
-The destination package can be specified by pkgnum by passing an FS::cust_pkg
-object. The destination package must already exist.
-
-Services are moved only if the destination allows services with the correct
-I<svcpart> (not svcdb), unless the B<change_svcpart> option is set true. Use
-this option with caution! No provision is made for export differences
-between the old and new service definitions. Probably only should be used
-when your exports for all service definitions of a given svcdb are identical.
-(attempt a transfer without it first, to move all possible svcpart-matching
-services)
-
-Any services that can't be moved remain in the original package.
-
-Returns an error, if there is one; otherwise, returns the number of services
-that couldn't be moved.
-
-=cut
-
-sub transfer {
- my ($self, $dest_pkgnum, %opt) = @_;
-
- my $remaining = 0;
- my $dest;
- my %target;
-
- if (ref ($dest_pkgnum) eq 'FS::cust_pkg') {
- $dest = $dest_pkgnum;
- $dest_pkgnum = $dest->pkgnum;
- } else {
- $dest = qsearchs('cust_pkg', { pkgnum => $dest_pkgnum });
- }
-
- return ('Package does not exist: '.$dest_pkgnum) unless $dest;
-
- foreach my $pkg_svc ( $dest->part_pkg->pkg_svc ) {
- $target{$pkg_svc->svcpart} = $pkg_svc->quantity;
- }
-
- foreach my $cust_svc ($dest->cust_svc) {
- $target{$cust_svc->svcpart}--;
- }
-
- my %svcpart2svcparts = ();
- if ( exists $opt{'change_svcpart'} && $opt{'change_svcpart'} ) {
- warn "change_svcpart option received, creating alternates list\n" if $DEBUG;
- foreach my $svcpart ( map { $_->svcpart } $self->cust_svc ) {
- next if exists $svcpart2svcparts{$svcpart};
- my $part_svc = qsearchs('part_svc', { 'svcpart' => $svcpart } );
- $svcpart2svcparts{$svcpart} = [
- map { $_->[0] }
- sort { $b->[1] cmp $a->[1] or $a->[2] <=> $b->[2] }
- map {
- my $pkg_svc = qsearchs( 'pkg_svc', { 'pkgpart' => $dest->pkgpart,
- 'svcpart' => $_ } );
- [ $_,
- $pkg_svc ? $pkg_svc->primary_svc : '',
- $pkg_svc ? $pkg_svc->quantity : 0,
- ];
- }
-
- grep { $_ != $svcpart }
- map { $_->svcpart }
- qsearch('part_svc', { 'svcdb' => $part_svc->svcdb } )
- ];
- warn "alternates for svcpart $svcpart: ".
- join(', ', @{$svcpart2svcparts{$svcpart}}). "\n"
- if $DEBUG;
- }
- }
-
- foreach my $cust_svc ($self->cust_svc) {
- if($target{$cust_svc->svcpart} > 0) {
- $target{$cust_svc->svcpart}--;
- my $new = new FS::cust_svc {
- svcnum => $cust_svc->svcnum,
- svcpart => $cust_svc->svcpart,
- pkgnum => $dest_pkgnum,
- };
- my $error = $new->replace($cust_svc);
- return $error if $error;
- } elsif ( exists $opt{'change_svcpart'} && $opt{'change_svcpart'} ) {
- if ( $DEBUG ) {
- warn "looking for alternates for svcpart ". $cust_svc->svcpart. "\n";
- warn "alternates to consider: ".
- join(', ', @{$svcpart2svcparts{$cust_svc->svcpart}}). "\n";
- }
- my @alternate = grep {
- warn "considering alternate svcpart $_: ".
- "$target{$_} available in new package\n"
- if $DEBUG;
- $target{$_} > 0;
- } @{$svcpart2svcparts{$cust_svc->svcpart}};
- if ( @alternate ) {
- warn "alternate(s) found\n" if $DEBUG;
- my $change_svcpart = $alternate[0];
- $target{$change_svcpart}--;
- my $new = new FS::cust_svc {
- svcnum => $cust_svc->svcnum,
- svcpart => $change_svcpart,
- pkgnum => $dest_pkgnum,
- };
- my $error = $new->replace($cust_svc);
- return $error if $error;
- } else {
- $remaining++;
- }
- } else {
- $remaining++
- }
- }
- return $remaining;
-}
-
-=item reexport
-
-This method is deprecated. See the I<depend_jobnum> option to the insert and
-order_pkgs methods in FS::cust_main for a better way to defer provisioning.
-
-=cut
-
-sub reexport {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_svc ( $self->cust_svc ) {
- #false laziness w/svc_Common::insert
- my $svc_x = $cust_svc->svc_x;
- foreach my $part_export ( $cust_svc->part_svc->part_export ) {
- my $error = $part_export->export_insert($svc_x);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=back
-
-=head1 CLASS METHODS
-
-=over 4
-
-=item recurring_sql
-
-Returns an SQL expression identifying recurring packages.
-
-=cut
-
-sub recurring_sql { "
- '0' != ( select freq from part_pkg
- where cust_pkg.pkgpart = part_pkg.pkgpart )
-"; }
-
-=item onetime_sql
-
-Returns an SQL expression identifying one-time packages.
-
-=cut
-
-sub onetime_sql { "
- '0' = ( select freq from part_pkg
- where cust_pkg.pkgpart = part_pkg.pkgpart )
-"; }
-
-=item active_sql
-
-Returns an SQL expression identifying active packages.
-
-=cut
-
-sub active_sql { "
- ". $_[0]->recurring_sql(). "
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- AND ( cust_pkg.susp IS NULL OR cust_pkg.susp = 0 )
-"; }
-
-=item inactive_sql
-
-Returns an SQL expression identifying inactive packages (one-time packages
-that are otherwise unsuspended/uncancelled).
-
-=cut
-
-sub inactive_sql { "
- ". $_[0]->onetime_sql(). "
- AND ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- AND ( cust_pkg.susp IS NULL OR cust_pkg.susp = 0 )
-"; }
-
-=item susp_sql
-=item suspended_sql
-
-Returns an SQL expression identifying suspended packages.
-
-=cut
-
-sub suspended_sql { susp_sql(@_); }
-sub susp_sql {
- #$_[0]->recurring_sql(). ' AND '.
- "
- ( cust_pkg.cancel IS NULL OR cust_pkg.cancel = 0 )
- AND cust_pkg.susp IS NOT NULL AND cust_pkg.susp != 0
- ";
-}
-
-=item cancel_sql
-=item cancelled_sql
-
-Returns an SQL exprression identifying cancelled packages.
-
-=cut
-
-sub cancelled_sql { cancel_sql(@_); }
-sub cancel_sql {
- #$_[0]->recurring_sql(). ' AND '.
- "cust_pkg.cancel IS NOT NULL AND cust_pkg.cancel != 0";
-}
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF [ RETURN_CUST_PKG_ARRAYREF ] ]
-
-CUSTNUM is a customer (see L<FS::cust_main>)
-
-PKGPARTS is a list of pkgparts specifying the the billing item definitions (see
-L<FS::part_pkg>) to order for this customer. Duplicates are of course
-permitted.
-
-REMOVE_PKGNUMS is an optional list of pkgnums specifying the billing items to
-remove for this customer. The services (see L<FS::cust_svc>) are moved to the
-new billing items. An error is returned if this is not possible (see
-L<FS::pkg_svc>). An empty arrayref is equivalent to not specifying this
-parameter.
-
-RETURN_CUST_PKG_ARRAYREF, if specified, will be filled in with the
-newly-created cust_pkg objects.
-
-=cut
-
-sub order {
- my ($custnum, $pkgparts, $remove_pkgnum, $return_cust_pkg) = @_;
-
- my $conf = new FS::Conf;
-
- # Transactionize this whole mess
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error;
- my $cust_main = qsearchs('cust_main', { custnum => $custnum });
- return "Customer not found: $custnum" unless $cust_main;
-
- my @old_cust_pkg = map { qsearchs('cust_pkg', { pkgnum => $_ }) }
- @$remove_pkgnum;
-
- my $change = scalar(@old_cust_pkg) != 0;
-
- my %hash = ();
- if ( scalar(@old_cust_pkg) == 1 ) {
- #$hash{$_} = $old_cust_pkg[0]->$_() foreach qw( last_bill bill );
- $hash{'setup'} = time;
- }
-
- # Create the new packages.
- foreach my $pkgpart (@$pkgparts) {
- my $cust_pkg = new FS::cust_pkg { custnum => $custnum,
- pkgpart => $pkgpart,
- %hash,
- };
- $error = $cust_pkg->insert( 'change' => $change );
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- push @$return_cust_pkg, $cust_pkg;
- }
- # $return_cust_pkg now contains refs to all of the newly
- # created packages.
-
- # Transfer services and cancel old packages.
- foreach my $old_pkg (@old_cust_pkg) {
-
- foreach my $new_pkg (@$return_cust_pkg) {
- $error = $old_pkg->transfer($new_pkg);
- if ($error and $error == 0) {
- # $old_pkg->transfer failed.
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- if ( $error > 0 && $conf->exists('cust_pkg-change_svcpart') ) {
- warn "trying transfer again with change_svcpart option\n" if $DEBUG;
- foreach my $new_pkg (@$return_cust_pkg) {
- $error = $old_pkg->transfer($new_pkg, 'change_svcpart'=>1 );
- if ($error and $error == 0) {
- # $old_pkg->transfer failed.
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- if ($error > 0) {
- # Transfers were successful, but we went through all of the
- # new packages and still had services left on the old package.
- # We can't cancel the package under the circumstances, so abort.
- $dbh->rollback if $oldAutoCommit;
- return "Unable to transfer all services from package ".$old_pkg->pkgnum;
- }
- $error = $old_pkg->cancel( quiet=>1 );
- if ($error) {
- $dbh->rollback;
- return $error;
- }
- }
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-=back
-
-=head1 BUGS
-
-sub order is not OO. Perhaps it should be moved to FS::cust_main and made so?
-
-In sub order, the @pkgparts array (passed by reference) is clobbered.
-
-Also in sub order, no money is adjusted. Once FS::part_pkg defines a standard
-method to pass dates to the recur_prog expression, it should do so.
-
-FS::svc_acct, FS::svc_domain, FS::svc_www, FS::svc_ip and FS::svc_forward are
-loaded via 'use' at compile time, rather than via 'require' in sub { setup,
-suspend, unsuspend, cancel } because they use %FS::UID::callback to load
-configuration values. Probably need a subroutine which decides what to do
-based on whether or not we've fetched the user yet, rather than a hash. See
-FS::UID and the TODO.
-
-Now that things are transactional should the check in the insert method be
-moved to check ?
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>, L<FS::part_pkg>, L<FS::cust_svc>,
-L<FS::pkg_svc>, schema.html from the base documentation
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_refund.pm b/FS/FS/cust_refund.pm
deleted file mode 100644
index 8c672b8..0000000
--- a/FS/FS/cust_refund.pm
+++ /dev/null
@@ -1,319 +0,0 @@
-package FS::cust_refund;
-
-use strict;
-use vars qw( @ISA );
-use Business::CreditCard;
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::UID qw(getotaker);
-use FS::cust_credit;
-use FS::cust_credit_refund;
-use FS::cust_pay_refund;
-use FS::cust_main;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::cust_refund - Object method for cust_refund objects
-
-=head1 SYNOPSIS
-
- use FS::cust_refund;
-
- $record = new FS::cust_refund \%hash;
- $record = new FS::cust_refund { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_refund represents a refund: the transfer of money to a customer;
-equivalent to a negative payment (see L<FS::cust_pay>). FS::cust_refund
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item refundnum - primary key (assigned automatically for new refunds)
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item refund - Amount of the refund
-
-=item reason - Reason for the refund
-
-=item _date - specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=item payby - `CARD' (credit cards), `CHEK' (electronic check/ACH),
-`LECB' (Phone bill billing), `BILL' (billing), `CASH' (cash),
-`WEST' (Western Union), `MCRD' (Manual credit card), or `COMP' (free)
-
-=item payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
-
-=item paybatch - text field for tracking card processing
-
-=item otaker - order taker (assigned automatically, see L<FS::UID>)
-
-=item closed - books closed flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new refund. To add the refund to the database, see L<"insert">.
-
-=cut
-
-sub table { 'cust_refund'; }
-
-=item insert
-
-Adds this refund to the database.
-
-For backwards-compatibility and convenience, if the additional field crednum is
-defined, an FS::cust_credit_refund record for the full amount of the refund
-will be created. Or (this time for convenience and consistancy), if the
-additional field paynum is defined, an FS::cust_pay_refund record for the full
-amount of the refund will be created. In both cases, custnum is optional.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $self->crednum ) {
- my $cust_credit = qsearchs('cust_credit', { 'crednum' => $self->crednum } )
- or do {
- $dbh->rollback if $oldAutoCommit;
- return "Unknown cust_credit.crednum: ". $self->crednum;
- };
- $self->custnum($cust_credit->custnum);
- } elsif ( $self->paynum ) {
- my $cust_pay = qsearchs('cust_pay', { 'paynum' => $self->paynum } )
- or do {
- $dbh->rollback if $oldAutoCommit;
- return "Unknown cust_pay.paynum: ". $self->paynum;
- };
- $self->custnum($cust_pay->custnum);
- }
-
- my $error = $self->check;
- return $error if $error;
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $self->crednum ) {
- my $cust_credit_refund = new FS::cust_credit_refund {
- 'crednum' => $self->crednum,
- 'refundnum' => $self->refundnum,
- 'amount' => $self->refund,
- '_date' => $self->_date,
- };
- $error = $cust_credit_refund->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- #$self->custnum($cust_credit_refund->cust_credit->custnum);
- } elsif ( $self->paynum ) {
- my $cust_pay_refund = new FS::cust_pay_refund {
- 'paynum' => $self->paynum,
- 'refundnum' => $self->refundnum,
- 'amount' => $self->refund,
- '_date' => $self->_date,
- };
- $error = $cust_pay_refund->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Currently unimplemented (accounting reasons).
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't delete closed refund" if $self->closed =~ /^Y/i;
- $self->SUPER::delete(@_);
-}
-
-=item replace OLD_RECORD
-
-Currently unimplemented (accounting reasons).
-
-=cut
-
-sub replace {
- return "Can't (yet?) modify cust_refund records!";
-}
-
-=item check
-
-Checks all fields to make sure this is a valid refund. If there is an error,
-returns the error, otherwise returns false. Called by the insert method.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('refundnum')
- || $self->ut_numbern('custnum')
- || $self->ut_money('refund')
- || $self->ut_text('reason')
- || $self->ut_numbern('_date')
- || $self->ut_textn('paybatch')
- || $self->ut_enum('closed', [ '', 'Y' ])
- ;
- return $error if $error;
-
- return "refund must be > 0 " if $self->refund <= 0;
-
- $self->_date(time) unless $self->_date;
-
- return "unknown cust_main.custnum: ". $self->custnum
- unless $self->crednum
- || qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
-
- $self->payby =~ /^(CARD|CHEK|LECB|BILL|COMP|CASH|WEST|MCRD)$/
- or return "Illegal payby";
- $self->payby($1);
-
- #false laziness with cust_pay::check
- if ( $self->payby eq 'CARD' ) {
- my $payinfo = $self->payinfo;
- $payinfo =~ s/\D//g;
- $self->payinfo($payinfo);
- if ( $self->payinfo ) {
- $self->payinfo =~ /^(\d{13,16})$/
- or return "Illegal (mistyped?) credit card number (payinfo)";
- $self->payinfo($1);
- validate($self->payinfo) or return "Illegal credit card number";
- return "Unknown card type" if cardtype($self->payinfo) eq "Unknown";
- } else {
- $self->payinfo('N/A');
- }
-
- } else {
- $error = $self->ut_textn('payinfo');
- return $error if $error;
- }
-
- $self->otaker(getotaker);
-
- $self->SUPER::check;
-}
-
-=item cust_credit_refund
-
-Returns all applications to credits (see L<FS::cust_credit_refund>) for this
-refund.
-
-=cut
-
-sub cust_credit_refund {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_credit_refund', { 'refundnum' => $self->refundnum } )
- ;
-}
-
-=item cust_pay_refund
-
-Returns all applications to payments (see L<FS::cust_pay_refund>) for this
-refund.
-
-=cut
-
-sub cust_pay_refund {
- my $self = shift;
- sort { $a->_date <=> $b->_date }
- qsearch( 'cust_pay_refund', { 'refundnum' => $self->refundnum } )
- ;
-}
-
-=item unapplied
-
-Returns the amount of this refund that is still unapplied; which is
-amount minus all credit applications (see L<FS::cust_credit_refund>) and
-payment applications (see L<FS::cust_pay_refund>).
-
-=cut
-
-sub unapplied {
- my $self = shift;
- my $amount = $self->refund;
- $amount -= $_->amount foreach ( $self->cust_credit_refund );
- $amount -= $_->amount foreach ( $self->cust_pay_refund );
- sprintf("%.2f", $amount );
-}
-
-
-
-=item payinfo_masked
-
-Returns a "masked" payinfo field with all but the last four characters replaced
-by 'x'es. Useful for displaying credit cards.
-
-=cut
-
-
-sub payinfo_masked {
- my $self = shift;
- my $payinfo = $self->payinfo;
- 'x'x(length($payinfo)-4). substr($payinfo,(length($payinfo)-4));
-}
-
-
-=back
-
-=head1 BUGS
-
-Delete and replace methods. payinfo_masked false laziness with cust_main.pm
-and cust_pay.pm
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_credit>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_svc.pm b/FS/FS/cust_svc.pm
deleted file mode 100644
index 8914e8c..0000000
--- a/FS/FS/cust_svc.pm
+++ /dev/null
@@ -1,664 +0,0 @@
-package FS::cust_svc;
-
-use strict;
-use vars qw( @ISA $DEBUG $ignore_quantity );
-use Carp qw( carp cluck );
-use FS::Conf;
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::cust_pkg;
-use FS::part_pkg;
-use FS::part_svc;
-use FS::pkg_svc;
-use FS::svc_acct;
-use FS::svc_domain;
-use FS::svc_forward;
-use FS::svc_broadband;
-use FS::svc_phone;
-use FS::svc_external;
-use FS::domain_record;
-use FS::part_export;
-use FS::cdr;
-
-@ISA = qw( FS::Record );
-
-$DEBUG = 0;
-
-$ignore_quantity = 0;
-
-sub _cache {
- my $self = shift;
- my ( $hashref, $cache ) = @_;
- if ( $hashref->{'username'} ) {
- $self->{'_svc_acct'} = FS::svc_acct->new($hashref, '');
- }
- if ( $hashref->{'svc'} ) {
- $self->{'_svcpart'} = FS::part_svc->new($hashref);
- }
-}
-
-=head1 NAME
-
-FS::cust_svc - Object method for cust_svc objects
-
-=head1 SYNOPSIS
-
- use FS::cust_svc;
-
- $record = new FS::cust_svc \%hash
- $record = new FS::cust_svc { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- ($label, $value) = $record->label;
-
-=head1 DESCRIPTION
-
-An FS::cust_svc represents a service. FS::cust_svc inherits from FS::Record.
-The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key (assigned automatically for new services)
-
-=item pkgnum - Package (see L<FS::cust_pkg>)
-
-=item svcpart - Service definition (see L<FS::part_svc>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new service. To add the refund to the database, see L<"insert">.
-Services are normally created by creating FS::svc_ objects (see
-L<FS::svc_acct>, L<FS::svc_domain>, and L<FS::svc_forward>, among others).
-
-=cut
-
-sub table { 'cust_svc'; }
-
-=item insert
-
-Adds this service to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this service from the database. If there is an error, returns the
-error, otherwise returns false. Note that this only removes the cust_svc
-record - you should probably use the B<cancel> method instead.
-
-=item cancel
-
-Cancels the relevant service by calling the B<cancel> method of the associated
-FS::svc_XXX object (i.e. an FS::svc_acct object or FS::svc_domain object),
-deleting the FS::svc_XXX record and then deleting this record.
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub cancel {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $part_svc = $self->part_svc;
-
- $part_svc->svcdb =~ /^([\w\-]+)$/ or do {
- $dbh->rollback if $oldAutoCommit;
- return "Illegal svcdb value in part_svc!";
- };
- my $svcdb = $1;
- require "FS/$svcdb.pm";
-
- my $svc = $self->svc_x;
- if ($svc) {
- my $error = $svc->cancel;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error canceling service: $error";
- }
- $error = $svc->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error deleting service: $error";
- }
- }
-
- my $error = $self->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error deleting cust_svc: $error";
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- ''; #no errors
-
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $new->svcpart != $old->svcpart ) {
- my $svc_x = $new->svc_x;
- my $new_svc_x = ref($svc_x)->new({$svc_x->hash, svcpart=>$new->svcpart });
- local($FS::Record::nowarn_identical) = 1;
- my $error = $new_svc_x->replace($svc_x);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error if $error;
- }
- }
-
- my $error = $new->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error if $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid service. If there is an error,
-returns the error, otherwise returns false. Called by the insert and
-replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('svcnum')
- || $self->ut_numbern('pkgnum')
- || $self->ut_number('svcpart')
- ;
- return $error if $error;
-
- my $part_svc = qsearchs( 'part_svc', { 'svcpart' => $self->svcpart } );
- return "Unknown svcpart" unless $part_svc;
-
- if ( $self->pkgnum ) {
- my $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $self->pkgnum } );
- return "Unknown pkgnum" unless $cust_pkg;
- my $pkg_svc = qsearchs( 'pkg_svc', {
- 'pkgpart' => $cust_pkg->pkgpart,
- 'svcpart' => $self->svcpart,
- });
- # or new FS::pkg_svc ( { 'pkgpart' => $cust_pkg->pkgpart,
- # 'svcpart' => $self->svcpart,
- # 'quantity' => 0 } );
- my $quantity = $pkg_svc ? $pkg_svc->quantity : 0;
-
- my @cust_svc = qsearch('cust_svc', {
- 'pkgnum' => $self->pkgnum,
- 'svcpart' => $self->svcpart,
- });
- return "Already ". scalar(@cust_svc). " ". $part_svc->svc.
- " services for pkgnum ". $self->pkgnum
- if scalar(@cust_svc) >= $quantity && !$ignore_quantity;
- }
-
- $self->SUPER::check;
-}
-
-=item part_svc
-
-Returns the definition for this service, as a FS::part_svc object (see
-L<FS::part_svc>).
-
-=cut
-
-sub part_svc {
- my $self = shift;
- $self->{'_svcpart'}
- ? $self->{'_svcpart'}
- : qsearchs( 'part_svc', { 'svcpart' => $self->svcpart } );
-}
-
-=item cust_pkg
-
-Returns the package this service belongs to, as a FS::cust_pkg object (see
-L<FS::cust_pkg>).
-
-=cut
-
-sub cust_pkg {
- my $self = shift;
- qsearchs( 'cust_pkg', { 'pkgnum' => $self->pkgnum } );
-}
-
-=item label
-
-Returns a list consisting of:
-- The name of this service (from part_svc)
-- A meaningful identifier (username, domain, or mail alias)
-- The table name (i.e. svc_domain) for this service
-- svcnum
-
-Usage example:
-
- my($label, $value, $svcdb) = $cust_svc->label;
-
-=cut
-
-sub label {
- my $self = shift;
- carp "FS::cust_svc::label called on $self" if $DEBUG;
- my $svc_x = $self->svc_x
- or die "can't find ". $self->part_svc->svcdb. '.svcnum '. $self->svcnum;
- $self->_svc_label($svc_x);
-}
-
-sub _svc_label {
- my( $self, $svc_x ) = ( shift, shift );
- my $svcdb = $self->part_svc->svcdb;
-
- my $tag;
- if ( $svcdb eq 'svc_acct' ) {
- $tag = $svc_x->email(@_);
- } elsif ( $svcdb eq 'svc_forward' ) {
- if ( $svc_x->srcsvc ) {
- my $svc_acct = $svc_x->srcsvc_acct(@_);
- $tag = $svc_acct->email(@_);
- } else {
- $tag = $svc_x->src;
- }
- $tag .= '->';
- if ( $svc_x->dstsvc ) {
- my $svc_acct = $svc_x->dstsvc_acct(@_);
- $tag .= $svc_acct->email(@_);
- } else {
- $tag .= $svc_x->dst;
- }
- } elsif ( $svcdb eq 'svc_domain' ) {
- $tag = $svc_x->getfield('domain');
- } elsif ( $svcdb eq 'svc_www' ) {
- my $domain_record = $svc_x->domain_record(@_);
- $tag = $domain_record->zone;
- } elsif ( $svcdb eq 'svc_broadband' ) {
- $tag = $svc_x->ip_addr;
- } elsif ( $svcdb eq 'svc_phone' ) {
- $tag = $svc_x->phonenum; #XXX format it better
- } elsif ( $svcdb eq 'svc_external' ) {
- my $conf = new FS::Conf;
- if ( $conf->config('svc_external-display_type') eq 'artera_turbo' ) {
- $tag = sprintf('%010d', $svc_x->id). '-'.
- substr('0000000000'.uc($svc_x->title), -10);
- } else {
- $tag = $svc_x->id. ': '. $svc_x->title;
- }
- } else {
- cluck "warning: asked for label of unsupported svcdb; using svcnum";
- $tag = $svc_x->getfield('svcnum');
- }
-
- $self->part_svc->svc, $tag, $svcdb, $self->svcnum;
-
-}
-
-=item svc_x
-
-Returns the FS::svc_XXX object for this service (i.e. an FS::svc_acct object or
-FS::svc_domain object, etc.)
-
-=cut
-
-sub svc_x {
- my $self = shift;
- my $svcdb = $self->part_svc->svcdb;
- if ( $svcdb eq 'svc_acct' && $self->{'_svc_acct'} ) {
- $self->{'_svc_acct'};
- } else {
- #require "FS/$svcdb.pm";
- qsearchs( $svcdb, { 'svcnum' => $self->svcnum } );
- }
-}
-
-=item seconds_since TIMESTAMP
-
-See L<FS::svc_acct/seconds_since>. Equivalent to
-$cust_svc->svc_x->seconds_since, but more efficient. Meaningless for records
-where B<svcdb> is not "svc_acct".
-
-=cut
-
-#note: implementation here, POD in FS::svc_acct
-sub seconds_since {
- my($self, $since) = @_;
- my $dbh = dbh;
- my $sth = $dbh->prepare(' SELECT SUM(logout-login) FROM session
- WHERE svcnum = ?
- AND login >= ?
- AND logout IS NOT NULL'
- ) or die $dbh->errstr;
- $sth->execute($self->svcnum, $since) or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item seconds_since_sqlradacct TIMESTAMP_START TIMESTAMP_END
-
-See L<FS::svc_acct/seconds_since_sqlradacct>. Equivalent to
-$cust_svc->svc_x->seconds_since_sqlradacct, but more efficient. Meaningless
-for records where B<svcdb> is not "svc_acct".
-
-=cut
-
-#note: implementation here, POD in FS::svc_acct
-sub seconds_since_sqlradacct {
- my($self, $start, $end) = @_;
-
- my $svc_x = $self->svc_x;
-
- my @part_export = $self->part_svc->part_export_usage;
- die "no accounting-capable exports are enabled for ". $self->part_svc->svc.
- " service definition"
- unless @part_export;
- #or return undef;
-
- my $seconds = 0;
- foreach my $part_export ( @part_export ) {
-
- next if $part_export->option('ignore_accounting');
-
- my $dbh = DBI->connect( map { $part_export->option($_) }
- qw(datasrc username password) )
- or die "can't connect to sqlradius database: ". $DBI::errstr;
-
- #select a unix time conversion function based on database type
- my $str2time;
- if ( $dbh->{Driver}->{Name} =~ /^mysql(PP)?$/ ) {
- $str2time = 'UNIX_TIMESTAMP(';
- } elsif ( $dbh->{Driver}->{Name} eq 'Pg' ) {
- $str2time = 'EXTRACT( EPOCH FROM ';
- } else {
- warn "warning: unknown database type ". $dbh->{Driver}->{Name}.
- "; guessing how to convert to UNIX timestamps";
- $str2time = 'extract(epoch from ';
- }
-
- my $username = $part_export->export_username($svc_x);
-
- my $query;
-
- #find closed sessions completely within the given range
- my $sth = $dbh->prepare("SELECT SUM(acctsessiontime)
- FROM radacct
- WHERE UserName = ?
- AND $str2time AcctStartTime) >= ?
- AND $str2time AcctStopTime ) < ?
- AND $str2time AcctStopTime ) > 0
- AND AcctStopTime IS NOT NULL"
- ) or die $dbh->errstr;
- $sth->execute($username, $start, $end) or die $sth->errstr;
- my $regular = $sth->fetchrow_arrayref->[0];
-
- #find open sessions which start in the range, count session start->range end
- $query = "SELECT SUM( ? - $str2time AcctStartTime ) )
- FROM radacct
- WHERE UserName = ?
- AND $str2time AcctStartTime ) >= ?
- AND $str2time AcctStartTime ) < ?
- AND ( ? - $str2time AcctStartTime ) ) < 86400
- AND ( $str2time AcctStopTime ) = 0
- OR AcctStopTime IS NULL )";
- $sth = $dbh->prepare($query) or die $dbh->errstr;
- $sth->execute($end, $username, $start, $end, $end)
- or die $sth->errstr. " executing query $query";
- my $start_during = $sth->fetchrow_arrayref->[0];
-
- #find closed sessions which start before the range but stop during,
- #count range start->session end
- $sth = $dbh->prepare("SELECT SUM( $str2time AcctStopTime ) - ? )
- FROM radacct
- WHERE UserName = ?
- AND $str2time AcctStartTime ) < ?
- AND $str2time AcctStopTime ) >= ?
- AND $str2time AcctStopTime ) < ?
- AND $str2time AcctStopTime ) > 0
- AND AcctStopTime IS NOT NULL"
- ) or die $dbh->errstr;
- $sth->execute($start, $username, $start, $start, $end ) or die $sth->errstr;
- my $end_during = $sth->fetchrow_arrayref->[0];
-
- #find closed (not anymore - or open) sessions which start before the range
- # but stop after, or are still open, count range start->range end
- # don't count open sessions (probably missing stop record)
- $sth = $dbh->prepare("SELECT COUNT(*)
- FROM radacct
- WHERE UserName = ?
- AND $str2time AcctStartTime ) < ?
- AND ( $str2time AcctStopTime ) >= ?
- )"
- # OR AcctStopTime = 0
- # OR AcctStopTime IS NULL )"
- ) or die $dbh->errstr;
- $sth->execute($username, $start, $end ) or die $sth->errstr;
- my $entire_range = ($end-$start) * $sth->fetchrow_arrayref->[0];
-
- $seconds += $regular + $end_during + $start_during + $entire_range;
-
- }
-
- $seconds;
-
-}
-
-=item attribute_since_sqlradacct TIMESTAMP_START TIMESTAMP_END ATTRIBUTE
-
-See L<FS::svc_acct/attribute_since_sqlradacct>. Equivalent to
-$cust_svc->svc_x->attribute_since_sqlradacct, but more efficient. Meaningless
-for records where B<svcdb> is not "svc_acct".
-
-=cut
-
-#note: implementation here, POD in FS::svc_acct
-#(false laziness w/seconds_since_sqlradacct above)
-sub attribute_since_sqlradacct {
- my($self, $start, $end, $attrib) = @_;
-
- my $svc_x = $self->svc_x;
-
- my @part_export = $self->part_svc->part_export_usage;
- die "no accounting-capable exports are enabled for ". $self->part_svc->svc.
- " service definition"
- unless @part_export;
- #or return undef;
-
- my $sum = 0;
-
- foreach my $part_export ( @part_export ) {
-
- next if $part_export->option('ignore_accounting');
-
- my $dbh = DBI->connect( map { $part_export->option($_) }
- qw(datasrc username password) )
- or die "can't connect to sqlradius database: ". $DBI::errstr;
-
- #select a unix time conversion function based on database type
- my $str2time;
- if ( $dbh->{Driver}->{Name} =~ /^mysql(PP)?$/ ) {
- $str2time = 'UNIX_TIMESTAMP(';
- } elsif ( $dbh->{Driver}->{Name} eq 'Pg' ) {
- $str2time = 'EXTRACT( EPOCH FROM ';
- } else {
- warn "warning: unknown database type ". $dbh->{Driver}->{Name}.
- "; guessing how to convert to UNIX timestamps";
- $str2time = 'extract(epoch from ';
- }
-
- my $username = $part_export->export_username($svc_x);
-
- my $sth = $dbh->prepare("SELECT SUM($attrib)
- FROM radacct
- WHERE UserName = ?
- AND $str2time AcctStopTime ) >= ?
- AND $str2time AcctStopTime ) < ?
- AND AcctStopTime IS NOT NULL"
- ) or die $dbh->errstr;
- $sth->execute($username, $start, $end) or die $sth->errstr;
-
- $sum += $sth->fetchrow_arrayref->[0];
-
- }
-
- $sum;
-
-}
-
-=item get_session_history TIMESTAMP_START TIMESTAMP_END
-
-See L<FS::svc_acct/get_session_history>. Equivalent to
-$cust_svc->svc_x->get_session_history, but more efficient. Meaningless for
-records where B<svcdb> is not "svc_acct".
-
-=cut
-
-sub get_session_history {
- my($self, $start, $end, $attrib) = @_;
-
- #$attrib ???
-
- my @part_export = $self->part_svc->part_export_usage;
- die "no accounting-capable exports are enabled for ". $self->part_svc->svc.
- " service definition"
- unless @part_export;
- #or return undef;
-
- my @sessions = ();
-
- foreach my $part_export ( @part_export ) {
- push @sessions,
- @{ $part_export->usage_sessions( $start, $end, $self->svc_x ) };
- }
-
- @sessions;
-
-}
-
-=item get_cdrs_for_update
-
-Returns (and SELECTs "FOR UPDATE") all unprocessed (freesidestatus NULL) CDR
-objects (see L<FS::cdr>) associated with this service.
-
-Currently CDRs are associated with svc_acct services via a DID in the
-username. This part is rather tenative and still subject to change...
-
-=cut
-
-sub get_cdrs_for_update {
- my($self, %options) = @_;
-
- my $default_prefix = $options{'default_prefix'};
-
- #CDRs are now associated with svc_phone services via svc_phone.phonenum
- #return () unless $self->svc_x->isa('FS::svc_phone');
- return () unless $self->part_svc->svcdb eq 'svc_phone';
- my $number = $self->svc_x->phonenum;
-
- my @cdrs =
- qsearch( {
- 'table' => 'cdr',
- 'hashref' => { 'freesidestatus' => '',
- 'charged_party' => $number
- },
- 'extra_sql' => 'FOR UPDATE',
- } );
-
- if ( length($default_prefix) ) {
- push @cdrs,
- qsearch( {
- 'table' => 'cdr',
- 'hashref' => { 'freesidestatus' => '',
- 'charged_party' => "$default_prefix$number",
- },
- 'extra_sql' => 'FOR UPDATE',
- } );
- }
-
- @cdrs;
-}
-
-=item pkg_svc
-
-Returns the pkg_svc record for for this service, if applicable.
-
-=cut
-
-sub pkg_svc {
- my $self = shift;
- my $cust_pkg = $self->cust_pkg;
- return undef unless $cust_pkg;
-
- qsearchs( 'pkg_svc', { 'svcpart' => $self->svcpart,
- 'pkgpart' => $cust_pkg->pkgpart,
- }
- );
-}
-
-=back
-
-=head1 BUGS
-
-Behaviour of changing the svcpart of cust_svc records is undefined and should
-possibly be prohibited, and pkg_svc records are not checked.
-
-pkg_svc records are not checked in general (here).
-
-Deleting this record doesn't check or delete the svc_* record associated
-with this record.
-
-In seconds_since_sqlradacct, specifying a DATASRC/USERNAME/PASSWORD instead of
-a DBI database handle is not yet implemented.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_pkg>, L<FS::part_svc>, L<FS::pkg_svc>,
-schema.html from the base documentation
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_tax_exempt.pm b/FS/FS/cust_tax_exempt.pm
deleted file mode 100644
index 3e39887..0000000
--- a/FS/FS/cust_tax_exempt.pm
+++ /dev/null
@@ -1,151 +0,0 @@
-package FS::cust_tax_exempt;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main;
-use FS::cust_main_county;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::cust_tax_exempt - Object methods for cust_tax_exempt records
-
-=head1 SYNOPSIS
-
- use FS::cust_tax_exempt;
-
- $record = new FS::cust_tax_exempt \%hash;
- $record = new FS::cust_tax_exempt { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_tax_exempt object represents a record of an old-style customer tax
-exemption. Currently this is only used for "texas tax". FS::cust_tax_exempt
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item exemptnum - primary key
-
-=item custnum - customer (see L<FS::cust_main>)
-
-=item taxnum - tax rate (see L<FS::cust_main_county>)
-
-=item year
-
-=item month
-
-=item amount
-
-=back
-
-=head1 NOTE
-
-Old-style customer tax exemptions are only useful for legacy migrations - if
-you are looking for current customer tax exemption data see
-L<FS::cust_tax_exempt_pkg>.
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new exemption record. To add the example to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_tax_exempt'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('exemptnum')
- || $self->ut_foreign_key('custnum', 'cust_main', 'custnum')
- || $self->ut_foreign_key('taxnum', 'cust_main_county', 'taxnum')
- || $self->ut_number('year') #check better
- || $self->ut_number('month') #check better
- || $self->ut_money('amount')
- || $self->SUPER::check
- ;
-}
-
-=item cust_main_county
-
-Returns the FS::cust_main_county object associated with this tax exemption.
-
-=cut
-
-sub cust_main_county {
- my $self = shift;
- qsearchs( 'cust_main_county', { 'taxnum' => $self->taxnum } );
-}
-
-=back
-
-=head1 BUGS
-
-Texas tax is a royal pain in the ass.
-
-=head1 SEE ALSO
-
-L<FS::cust_main_county>, L<FS::cust_main>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/cust_tax_exempt_pkg.pm b/FS/FS/cust_tax_exempt_pkg.pm
deleted file mode 100644
index 128921b..0000000
--- a/FS/FS/cust_tax_exempt_pkg.pm
+++ /dev/null
@@ -1,136 +0,0 @@
-package FS::cust_tax_exempt_pkg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::cust_bill_pkg;
-use FS::cust_main_county;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-=head1 NAME
-
-FS::cust_tax_exempt_pkg - Object methods for cust_tax_exempt_pkg records
-
-=head1 SYNOPSIS
-
- use FS::cust_tax_exempt_pkg;
-
- $record = new FS::cust_tax_exempt_pkg \%hash;
- $record = new FS::cust_tax_exempt_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::cust_tax_exempt_pkg object represents a record of a customer tax
-exemption. Currently this is only used for "texas tax". FS::cust_tax_exempt
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item exemptpkgnum - primary key
-
-=item billpkgnum - invoice line item (see L<FS::cust_bill_pkg>)
-
-=item taxnum - tax rate (see L<FS::cust_main_county>)
-
-=item year
-
-=item month
-
-=item amount
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new exemption record. To add the examption record to the database,
-see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'cust_tax_exempt_pkg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid exemption record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('exemptnum')
-# || $self->ut_foreign_key('custnum', 'cust_main', 'custnum')
- || $self->ut_foreign_key('billpkgnum', 'cust_bill_pkg', 'billpkgnum')
- || $self->ut_foreign_key('taxnum', 'cust_main_county', 'taxnum')
- || $self->ut_number('year') #check better
- || $self->ut_number('month') #check better
- || $self->ut_money('amount')
- || $self->SUPER::check
- ;
-}
-
-=back
-
-=head1 BUGS
-
-Texas tax is still a royal pain in the ass.
-
-=head1 SEE ALSO
-
-L<FS::cust_main_county>, L<FS::cust_bill_pkg>, L<FS::Record>, schema.html from
-the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/domain_record.pm b/FS/FS/domain_record.pm
deleted file mode 100644
index 6513abf..0000000
--- a/FS/FS/domain_record.pm
+++ /dev/null
@@ -1,438 +0,0 @@
-package FS::domain_record;
-
-use strict;
-use vars qw( @ISA $noserial_hack $DEBUG );
-use FS::Conf;
-#use FS::Record qw( qsearch qsearchs );
-use FS::Record qw( qsearchs dbh );
-use FS::svc_domain;
-use FS::svc_www;
-
-@ISA = qw(FS::Record);
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::domain_record - Object methods for domain_record records
-
-=head1 SYNOPSIS
-
- use FS::domain_record;
-
- $record = new FS::domain_record \%hash;
- $record = new FS::domain_record { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::domain_record object represents an entry in a DNS zone.
-FS::domain_record inherits from FS::Record. The following fields are currently
-supported:
-
-=over 4
-
-=item recnum - primary key
-
-=item svcnum - Domain (see L<FS::svc_domain>) of this entry
-
-=item reczone - partial (or full) zone for this entry
-
-=item recaf - address family for this entry, currently only `IN' is recognized.
-
-=item rectype - record type for this entry (A, MX, etc.)
-
-=item recdata - data for this entry
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new entry. To add the entry to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'domain_record'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( $self->rectype eq '_mstr' ) { #delete all other records
- foreach my $domain_record ( reverse $self->svc_domain->domain_record ) {
- my $error = $domain_record->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- unless ( $self->rectype =~ /^(SOA|_mstr)$/ ) {
- my $error = $self->increment_serial;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $conf = new FS::Conf;
- if ( $self->rectype =~ /^A$/ && ! $conf->exists('disable_autoreverse') ) {
- my $reverse = $self->reverse_record;
- if ( $reverse && ! $reverse->recnum ) {
- my $error = $reverse->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error adding corresponding reverse-ARPA record: $error";
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete a domain record which has a website!"
- if qsearchs( 'svc_www', { 'recnum' => $self->recnum } );
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- unless ( $self->rectype =~ /^(SOA|_mstr)$/ ) {
- my $error = $self->increment_serial;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $conf = new FS::Conf;
- if ( $self->rectype =~ /^A$/ && ! $conf->exists('disable_autoreverse') ) {
- my $reverse = $self->reverse_record;
- if ( $reverse && $reverse->recnum && $reverse->recdata eq $self->zone.'.' ){
- my $error = $reverse->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error removing corresponding reverse-ARPA record: $error";
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::replace(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- unless ( $self->rectype eq 'SOA' ) {
- my $error = $self->increment_serial;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid entry. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('recnum')
- || $self->ut_number('svcnum')
- ;
- return $error if $error;
-
- return "Unknown svcnum (in svc_domain)"
- unless qsearchs('svc_domain', { 'svcnum' => $self->svcnum } );
-
- my $conf = new FS::Conf;
-
- if ( $conf->exists('zone-underscore') ) {
- $self->reczone =~ /^(@|[a-z0-9_\.\-\*]+)$/i
- or return "Illegal reczone: ". $self->reczone;
- $self->reczone($1);
- } else {
- $self->reczone =~ /^(@|[a-z0-9\.\-\*]+)$/i
- or return "Illegal reczone: ". $self->reczone;
- $self->reczone($1);
- }
-
- $self->recaf =~ /^(IN)$/ or return "Illegal recaf: ". $self->recaf;
- $self->recaf($1);
-
- $self->rectype =~ /^(SOA|NS|MX|A|PTR|CNAME|TXT|_mstr)$/
- or return "Illegal rectype (only SOA NS MX A PTR CNAME TXT recognized): ".
- $self->rectype;
- $self->rectype($1);
-
- return "Illegal reczone for ". $self->rectype. ": ". $self->reczone
- if $self->rectype !~ /^MX$/i && $self->reczone =~ /\*/;
-
- if ( $self->rectype eq 'SOA' ) {
- my $recdata = $self->recdata;
- $recdata =~ s/\s+/ /g;
- $recdata =~ /^([a-z0-9\.\-]+ [\w\-\+]+\.[a-z0-9\.\-]+ \( ((\d+|((\d+[WDHMS])+)) ){5}\))$/i
- or return "Illegal data for SOA record: $recdata";
- $self->recdata($1);
- } elsif ( $self->rectype eq 'NS' ) {
- $self->recdata =~ /^([a-z0-9\.\-]+)$/i
- or return "Illegal data for NS record: ". $self->recdata;
- $self->recdata($1);
- } elsif ( $self->rectype eq 'MX' ) {
- $self->recdata =~ /^(\d+)\s+([a-z0-9\.\-]+)$/i
- or return "Illegal data for MX record: ". $self->recdata;
- $self->recdata("$1 $2");
- } elsif ( $self->rectype eq 'A' ) {
- $self->recdata =~ /^((\d{1,3}\.){3}\d{1,3})$/
- or return "Illegal data for A record: ". $self->recdata;
- $self->recdata($1);
- } elsif ( $self->rectype eq 'PTR' ) {
- if ( $conf->exists('zone-underscore') ) {
- $self->recdata =~ /^([a-z0-9_\.\-]+)$/i
- or return "Illegal data for PTR record: ". $self->recdata;
- $self->recdata($1);
- } else {
- $self->recdata =~ /^([a-z0-9\.\-]+)$/i
- or return "Illegal data for PTR record: ". $self->recdata;
- $self->recdata($1);
- }
- } elsif ( $self->rectype eq 'CNAME' ) {
- $self->recdata =~ /^([a-z0-9\.\-]+|\@)$/i
- or return "Illegal data for CNAME record: ". $self->recdata;
- $self->recdata($1);
- } elsif ( $self->rectype eq 'TXT' ) {
- if ( $self->recdata =~ /^((?:\S+)|(?:".+"))$/ ) {
- $self->recdata($1);
- } else {
- $self->recdata('"'. $self->recdata. '"'); #?
- }
- # or return "Illegal data for TXT record: ". $self->recdata;
- } elsif ( $self->rectype eq '_mstr' ) {
- $self->recdata =~ /^((\d{1,3}\.){3}\d{1,3})$/
- or return "Illegal data for _master pseudo-record: ". $self->recdata;
- } else {
- die "ack!";
- }
-
- $self->SUPER::check;
-}
-
-=item increment_serial
-
-=cut
-
-sub increment_serial {
- return '' if $noserial_hack;
- my $self = shift;
-
- my $soa = qsearchs('domain_record', {
- svcnum => $self->svcnum,
- reczone => '@',
- recaf => 'IN',
- rectype => 'SOA', } )
- || qsearchs('domain_record', {
- svcnum => $self->svcnum,
- reczone => $self->svc_domain->domain.'.',
- recaf => 'IN',
- rectype => 'SOA',
- } )
- or return "soa record not found; can't increment serial";
-
- my $data = $soa->recdata;
- $data =~ s/(\(\D*)(\d+)/$1.($2+1)/e; #well, it works.
-
- my %hash = $soa->hash;
- $hash{recdata} = $data;
- my $new = new FS::domain_record \%hash;
- $new->replace($soa);
-}
-
-=item svc_domain
-
-Returns the domain (see L<FS::svc_domain>) for this record.
-
-=cut
-
-sub svc_domain {
- my $self = shift;
- qsearchs('svc_domain', { svcnum => $self->svcnum } );
-}
-
-=item zone
-
-Returns the canonical zone name.
-
-=cut
-
-sub zone {
- my $self = shift;
- my $zone = $self->reczone; # or die ?
- if ( $zone =~ /\.$/ ) {
- $zone =~ s/\.$//;
- } else {
- my $svc_domain = $self->svc_domain; # or die ?
- $zone .= '.'. $svc_domain->domain;
- $zone =~ s/^\@\.//;
- }
- $zone;
-}
-
-=item reverse_record
-
-Returns the corresponding reverse-ARPA record as another FS::domain_record
-object. If the specific record does not exist in the database but the
-reverse-ARPA zone itself does, an appropriate new record is created. If no
-reverse-ARPA zone is available at all, returns false.
-
-(You can test whether or not record itself exists in the database or is a new
-object that might need to be inserted by checking the recnum field)
-
-Mostly used by the insert and delete methods - probably should see them for
-examples.
-
-=cut
-
-sub reverse_record {
- my $self = shift;
- warn "reverse_record called\n" if $DEBUG;
- #should support classless reverse-ARPA ala rfc2317 too
- $self->recdata =~ /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/
- or return '';
- my $domain = "$3.$2.$1.in-addr.arpa";
- my $ptr_reczone = $4;
- warn "reverse_record: searching for domain: $domain\n" if $DEBUG;
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- or return '';
- warn "reverse_record: found domain: $domain\n" if $DEBUG;
- my %hash = (
- 'svcnum' => $svc_domain->svcnum,
- 'reczone' => $ptr_reczone,
- 'recaf' => 'IN',
- 'rectype' => 'PTR',
- );
- qsearchs('domain_record', \%hash )
- or new FS::domain_record { %hash, 'recdata' => $self->zone.'.' };
-}
-
-=back
-
-=head1 BUGS
-
-The data validation doesn't check everything it could. In particular,
-there is no protection against bad data that passes the regex, duplicate
-SOA records, forgetting the trailing `.', impossible IP addersses, etc. Of
-course, it's still better than editing the zone files directly. :)
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/export_svc.pm b/FS/FS/export_svc.pm
deleted file mode 100644
index 0370f5f..0000000
--- a/FS/FS/export_svc.pm
+++ /dev/null
@@ -1,322 +0,0 @@
-package FS::export_svc;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::part_export;
-use FS::part_svc;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::export_svc - Object methods for export_svc records
-
-=head1 SYNOPSIS
-
- use FS::export_svc;
-
- $record = new FS::export_svc \%hash;
- $record = new FS::export_svc { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::export_svc object links a service definition (see L<FS::part_svc>) to
-an export (see L<FS::part_export>). FS::export_svc inherits from FS::Record.
-The following fields are currently supported:
-
-=over 4
-
-=item exportsvcnum - primary key
-
-=item exportnum - export (see L<FS::part_export>)
-
-=item svcpart - service definition (see L<FS::part_svc>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'export_svc'; }
-
-=item insert [ JOB, OFFSET, MULTIPLIER ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-TODOC: JOB, OFFSET, MULTIPLIER
-
-=cut
-
-sub insert {
- my $self = shift;
- my( $job, $offset, $mult ) = ( '', 0, 100);
- $job = shift if @_;
- $offset = shift if @_;
- $mult = shift if @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->check;
- return $error if $error;
-
- #check for duplicates!
- my @checks = ();
- my $svcdb = $self->part_svc->svcdb;
- if ( $svcdb eq 'svc_acct' ) {
-
- if ( $self->part_export->nodomain =~ /^Y/i ) {
- push @checks, {
- label => 'usernames',
- method => 'username',
- sortby => sub { $a cmp $b },
- };
- } else {
- push @checks, {
- label => 'username@domain',
- method => 'email',
- sortby => sub {
- my($auser, $adomain) = split('@', $a);
- my($buser, $bdomain) = split('@', $b);
- $adomain cmp $bdomain || $auser cmp $buser;
- },
- };
- }
-
- unless ( $self->part_svc->part_svc_column('uid')->columnflag eq 'F' ) {
- push @checks, {
- label => 'uids',
- method => 'uid',
- sortby => sub { $a <=> $b },
- };
- }
-
- } elsif ( $svcdb eq 'svc_domain' ) {
- push @checks, {
- label => 'domains',
- method => 'domain',
- sortby => sub { $a cmp $b },
- };
- } else {
- warn "WARNING: No duplicate checking done on merge of $svcdb exports";
- }
-
- if ( @checks ) {
-
- my $done = 0;
- my $percheck = $mult / scalar(@checks);
-
- foreach my $check ( @checks ) {
-
- if ( $job ) {
- $error = $job->update_statustext(int( $offset + ($done+.33) *$percheck ));
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my @current_svc = $self->part_export->svc_x;
- #warn "current: ". scalar(@current_svc). " $current_svc[0]\n";
-
- if ( $job ) {
- $error = $job->update_statustext(int( $offset + ($done+.67) *$percheck ));
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my @new_svc = $self->part_svc->svc_x;
- #warn "new: ". scalar(@new_svc). " $new_svc[0]\n";
-
- if ( $job ) {
- $error = $job->update_statustext(int( $offset + ($done+1) *$percheck ));
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $method = $check->{'method'};
- my %cur_svc = map { $_->$method() => $_ } @current_svc;
- my @dup_svc = grep { $cur_svc{$_->$method()} } @new_svc;
- #my @diff_customer = grep {
- # $_->cust_pkg->custnum != $cur_svc{$_->$method()}->cust_pkg->custnum
- # } @dup_svc;
-
-
-
- if ( @dup_svc ) { #aye, that's the rub
- #error out for now, eventually accept different options of adjustments
- # to make to allow us to continue forward
- $dbh->rollback if $oldAutoCommit;
-
- my @diff_customer_svc = grep {
- my $cust_pkg = $_->cust_svc->cust_pkg;
- my $custnum = $cust_pkg ? $cust_pkg->custnum : 0;
- my $other_cust_pkg = $cur_svc{$_->$method()}->cust_svc->cust_pkg;
- my $other_custnum = $other_cust_pkg ? $other_cust_pkg->custnum : 0;
- $custnum != $other_custnum;
- } @dup_svc;
-
- my $label = $check->{'label'};
- my $sortby = $check->{'sortby'};
- return "Can't export ".
- $self->part_svc->svcpart.':'.$self->part_svc->svc. " service to ".
- $self->part_export->exportnum.':'.$self->part_export->exporttype.
- ' on '. $self->part_export->machine.
- ' : '. scalar(@dup_svc). " duplicate $label".
- ' ('. scalar(@diff_customer_svc). " from different customers)".
- ": ". join(', ', sort $sortby map { $_->$method() } @dup_svc )
- #": ". join(', ', sort $sortby map { $_->$method() } @diff_customer_svc )
- ;
- }
-
- $done++;
- }
-
- } #end of duplicate check, whew
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
-# if ( $self->part_svc->svcdb eq 'svc_acct' ) {
-#
-# if ( $self->part_export->nodomain =~ /^Y/i ) {
-#
-# select username from svc_acct where svcpart = $svcpart
-# group by username having count(*) > 1;
-#
-# } else {
-#
-# select username, domain
-# from svc_acct
-# join svc_domain on ( svc_acct.domsvc = svc_domain.svcnum )
-# group by username, domain having count(*) > 1;
-#
-# }
-#
-# } elsif ( $self->part_svc->svcdb eq 'svc_domain' ) {
-#
-# #similar but easier domain checking one
-#
-# } #etc.?
-#
-# my @services =
-# map { $_->part_svc }
-# grep { $_->svcpart != $self->svcpart }
-# $self->part_export->export_svc;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('exportsvcnum')
- || $self->ut_number('exportnum')
- || $self->ut_foreign_key('exportnum', 'part_export', 'exportnum')
- || $self->ut_number('svcpart')
- || $self->ut_foreign_key('svcpart', 'part_svc', 'svcpart')
- || $self->SUPER::check
- ;
-}
-
-=item part_export
-
-Returns the FS::part_export object (see L<FS::part_export>).
-
-=cut
-
-sub part_export {
- my $self = shift;
- qsearchs( 'part_export', { 'exportnum' => $self->exportnum } );
-}
-
-=item part_svc
-
-Returns the FS::part_svc object (see L<FS::part_svc>).
-
-=cut
-
-sub part_svc {
- my $self = shift;
- qsearchs( 'part_svc', { 'svcpart' => $self->svcpart } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::part_export>, L<FS::part_svc>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_Common.pm b/FS/FS/h_Common.pm
deleted file mode 100644
index d55da8c..0000000
--- a/FS/FS/h_Common.pm
+++ /dev/null
@@ -1,103 +0,0 @@
-package FS::h_Common;
-
-use strict;
-use FS::Record qw(dbdef);
-use Carp qw(confess);
-
-=head1 NAME
-
-FS::h_Common - History table "mixin" common base class
-
-=head1 SYNOPSIS
-
-package FS::h_tablename;
-@ISA = qw( FS::h_Common FS::tablename );
-
-sub table { 'h_table_name'; }
-
-sub insert { return "can't insert history records manually"; }
-sub delete { return "can't delete history records"; }
-sub replace { return "can't modify history records"; }
-
-=head1 DESCRIPTION
-
-FS::h_Common is intended as a "mixin" base class for history table classes to
-inherit from.
-
-=head1 METHODS
-
-=over 4
-
-=item sql_h_search END_TIMESTAMP [ START_TIMESTAMP ]
-
-Returns an a list consisting of the "SELECT" and "EXTRA_SQL" SQL fragments to
-search for the appropriate history records created before END_TIMESTAMP
-and (optionally) not cancelled before START_TIMESTAMP.
-
-=cut
-
-sub sql_h_search {
- my( $self, $end ) = ( shift, shift );
-
- my $table = $self->table;
- my $real_table = ($table =~ /^h_(.*)$/) ? $1 : $table;
- my $pkey = dbdef->table($real_table)->primary_key
- or die "can't (yet) search history table $real_table without a primary key";
-
- unless ($end) {
- confess 'Called sql_h_search without END_TIMESTAMP';
- }
-
- my $notcancelled = '';
- if ( scalar(@_) && $_[0] ) {
- $notcancelled = "AND 0 = ( SELECT COUNT(*) FROM $table as notdel
- WHERE notdel.$pkey = maintable.$pkey
- AND notdel.history_action = 'delete'
- AND notdel.history_date > maintable.history_date
- AND notdel.history_date <= $_[0]
- )";
- }
-
- (
- "DISTINCT ON ( $pkey ) *",
-
- "AND history_date <= $end
- AND ( history_action = 'insert'
- OR history_action = 'replace_new'
- )
- $notcancelled
- ORDER BY $pkey ASC, history_date DESC",
-
- '',
-
- 'AS maintable',
- );
-
-}
-
-=item sql_h_searchs END_TIMESTAMP [ START_TIMESTAMP ]
-
-Like sql_h_search, but limited to the single most recent record (before
-END_TIMESTAMP)
-
-=cut
-
-sub sql_h_searchs {
- my $self = shift;
- my($select, $where, $cacheobj, $as) = $self->sql_h_search(@_);
- $where .= ' LIMIT 1';
- ($select, $where, $cacheobj, $as);
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_cust_bill.pm b/FS/FS/h_cust_bill.pm
deleted file mode 100644
index 7a3d811..0000000
--- a/FS/FS/h_cust_bill.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_cust_bill;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::cust_bill;
-
-@ISA = qw( FS::h_Common FS::cust_bill );
-
-sub table { 'h_cust_bill' };
-
-=head1 NAME
-
-FS::h_cust_bill - Historical record of customer tax changes (old-style)
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_cust_bill object represents historical changes to invoices.
-FS::h_cust_bill inherits from FS::h_Common and FS::cust_bill.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_bill>, L<FS::h_Common>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_cust_svc.pm b/FS/FS/h_cust_svc.pm
deleted file mode 100644
index af0bf60..0000000
--- a/FS/FS/h_cust_svc.pm
+++ /dev/null
@@ -1,107 +0,0 @@
-package FS::h_cust_svc;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use Carp;
-use FS::Record qw(qsearchs);
-use FS::h_Common;
-use FS::cust_svc;
-
-@ISA = qw( FS::h_Common FS::cust_svc );
-
-$DEBUG = 0;
-
-sub table { 'h_cust_svc'; }
-
-=head1 NAME
-
-FS::h_cust_svc - Object method for h_cust_svc objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_cust_svc object represents a historical service. FS::h_cust_svc
-inherits from FS::h_Common and FS::cust_svc.
-
-=head1 METHODS
-
-=over 4
-
-=item label END_TIMESTAMP [ START_TIMESTAMP ]
-
-Returns a list consisting of:
-- The name of this historical service (from part_svc)
-- A meaningful identifier (username, domain, or mail alias)
-- The table name (i.e. svc_domain) for this historical service
-
-=cut
-
-sub label {
- my $self = shift;
- carp "FS::h_cust_svc::label called on $self" if $DEBUG;
- my $svc_x = $self->h_svc_x(@_);
- my $part_svc = $self->part_svc;
-
- unless ($svc_x) {
- carp "can't find h_". $self->part_svc->svcdb. '.svcnum '. $self->svcnum if $DEBUG;
- return $part_svc->svc, 'n/a', $part_svc->svcdb;
- }
-
- my @label;
- eval { @label = $self->_svc_label($svc_x, @_); };
-
- if ($@) {
- carp 'while resolving history record for svcdb/svcnum ' .
- $part_svc->svcdb . '/' . $self->svcnum . ': ' . $@ if $DEBUG;
- return $part_svc->svc, 'n/a', $part_svc->svcdb;
- } else {
- return @label;
- }
-
-}
-
-=item h_svc_x END_TIMESTAMP [ START_TIMESTAMP ]
-
-Returns the FS::h_svc_XXX object for this service as of END_TIMESTAMP (i.e. an
-FS::h_svc_acct object or FS::h_svc_domain object, etc.) and (optionally) not
-cancelled before START_TIMESTAMP.
-
-=cut
-
-#false laziness w/cust_pkg::h_cust_svc
-sub h_svc_x {
- my $self = shift;
- my $svcdb = $self->part_svc->svcdb;
-
- warn "requiring FS/h_$svcdb.pm" if $DEBUG;
- require "FS/h_$svcdb.pm";
- my $svc_x = qsearchs(
- "h_$svcdb",
- { 'svcnum' => $self->svcnum, },
- "FS::h_$svcdb"->sql_h_searchs(@_),
- ) || $self->SUPER::svc_x;
-
- if ($svc_x) {
- carp "Using $svcdb in place of missing h_${svcdb} record."
- if ($svc_x->isa('FS::' . $svcdb) and $DEBUG);
- return $svc_x;
- } else {
- return '';
- }
-
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::cust_svc>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_cust_tax_exempt.pm b/FS/FS/h_cust_tax_exempt.pm
deleted file mode 100644
index 9d2318b..0000000
--- a/FS/FS/h_cust_tax_exempt.pm
+++ /dev/null
@@ -1,40 +0,0 @@
-package FS::h_cust_tax_exempt;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::cust_tax_exempt;
-
-@ISA = qw( FS::h_Common FS::cust_tax_exempt );
-
-sub table { 'h_cust_tax_exempt' };
-
-=head1 NAME
-
-FS::h_cust_tax_exempt - Historical record of customer tax changes (old-style)
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_cust_tax_exempt object represents historical changes to old-style
-customer tax exemptions. FS::h_cust_tax_exempt inherits from FS::h_Common and
-FS::cust_tax_exempt.
-
-=head1 NOTE
-
-Old-style customer tax exemptions are only useful for legacy migrations - if
-you are looking for current customer tax exemption data see
-L<FS::cust_tax_exempt_pkg>.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_tax_exempt>, L<FS::cust_tax_exempt_pkg>, L<FS::h_Common>,
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_domain_record.pm b/FS/FS/h_domain_record.pm
deleted file mode 100644
index 0ab974f..0000000
--- a/FS/FS/h_domain_record.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_domain_record;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::domain_record;
-
-@ISA = qw( FS::h_Common FS::domain_record );
-
-sub table { 'h_domain_record' };
-
-=head1 NAME
-
-FS::h_domain_record - Historical DNS entry objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_domain_record object represents a historical entry in a DNS zone.
-FS::h_domain_record inherits from FS::h_Common and FS::domain_record.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_external>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_acct.pm b/FS/FS/h_svc_acct.pm
deleted file mode 100644
index 247d20c..0000000
--- a/FS/FS/h_svc_acct.pm
+++ /dev/null
@@ -1,78 +0,0 @@
-package FS::h_svc_acct;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use Carp qw(carp);
-use FS::Record qw(qsearchs);
-use FS::h_Common;
-use FS::svc_acct;
-use FS::svc_domain;
-use FS::h_svc_domain;
-
-@ISA = qw( FS::h_Common FS::svc_acct );
-
-$DEBUG = 0;
-
-sub table { 'h_svc_acct' };
-
-=head1 NAME
-
-FS::h_svc_acct - Historical account objects
-
-=head1 SYNOPSIS
-
-=head1 METHODS
-
-=over 4
-
-=item svc_domain
-
-=cut
-
-sub svc_domain {
- my $self = shift;
- qsearchs( 'h_svc_domain',
- { 'svcnum' => $self->domsvc },
- FS::h_svc_domain->sql_h_searchs(@_),
- );
-}
-
-=item domain
-
-Returns the domain associated with this account.
-
-=cut
-
-sub domain {
- my $self = shift;
- die "svc_acct.domsvc is null for svcnum ". $self->svcnum unless $self->domsvc;
-
- my $svc_domain = $self->svc_domain(@_) || $self->SUPER::svc_domain()
- or die 'no history svc_domain.svcnum for svc_acct.domsvc ' . $self->domsvc;
-
- carp 'Using FS::svc_acct record in place of missing FS::h_svc_acct record.'
- if ($svc_domain->isa('FS::svc_acct') and $DEBUG);
-
- $svc_domain->domain;
-
-}
-
-
-=back
-
-=head1 DESCRIPTION
-
-An FS::h_svc_acct object represents a historical account. FS::h_svc_acct
-inherits from FS::h_Common and FS::svc_acct.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_acct>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_broadband.pm b/FS/FS/h_svc_broadband.pm
deleted file mode 100644
index d6038fb..0000000
--- a/FS/FS/h_svc_broadband.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_svc_broadband;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::svc_broadband;
-
-@ISA = qw( FS::h_Common FS::svc_broadband );
-
-sub table { 'h_svc_broadband' };
-
-=head1 NAME
-
-FS::h_svc_broadband - Historical broadband connection objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_svc_broadband object represents a historical broadband connection.
-FS::h_svc_broadband inherits from FS::h_Common and FS::svc_broadband.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_broadband>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_domain.pm b/FS/FS/h_svc_domain.pm
deleted file mode 100644
index 60d54f7..0000000
--- a/FS/FS/h_svc_domain.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_svc_domain;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::svc_domain;
-
-@ISA = qw( FS::h_Common FS::svc_domain );
-
-sub table { 'h_svc_domain' };
-
-=head1 NAME
-
-FS::h_svc_domain - Historical domain objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_svc_domain object represents a historical domain. FS::h_svc_domain
-inherits from FS::h_Common and FS::svc_domain.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_domain>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_external.pm b/FS/FS/h_svc_external.pm
deleted file mode 100644
index 5eb7064..0000000
--- a/FS/FS/h_svc_external.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_svc_external;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::svc_external;
-
-@ISA = qw( FS::h_Common FS::svc_external );
-
-sub table { 'h_svc_external' };
-
-=head1 NAME
-
-FS::h_svc_external - Historical externally tracked service objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_svc_external object represents a historical externally tracked service.
-FS::h_svc_external inherits from FS::h_Common and FS::svc_external.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_external>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_forward.pm b/FS/FS/h_svc_forward.pm
deleted file mode 100644
index 25b2039..0000000
--- a/FS/FS/h_svc_forward.pm
+++ /dev/null
@@ -1,85 +0,0 @@
-package FS::h_svc_forward;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw(qsearchs);
-use FS::h_Common;
-use FS::svc_forward;
-use FS::svc_acct;
-use FS::h_svc_acct;
-
-use Carp qw(carp);
-
-$DEBUG = 0;
-
-@ISA = qw( FS::h_Common FS::svc_forward );
-
-sub table { 'h_svc_forward' };
-
-=head1 NAME
-
-FS::h_svc_forward - Historical mail forwarding alias objects
-
-=head1 SYNOPSIS
-
-=head1 METHODS
-
-=over 4
-
-=item srcsvc_acct
-
-=cut
-
-sub srcsvc_acct {
- my $self = shift;
- my $h_svc_acct = qsearchs(
- 'h_svc_acct',
- { 'svcnum' => $self->srcsvc },
- FS::h_svc_acct->sql_h_searchs(@_),
- ) || $self->SUPER::srcsvc_acct
- or die "no history svc_acct.svcnum for svc_forward.srcsvc ". $self->srcsvc;
-
- carp 'Using svc_acct in place of missing h_svc_acct record.'
- if ($h_svc_acct->isa('FS::domain_record') and $DEBUG);
-
- return $h_svc_acct;
-
-}
-
-=item dstsvc_acct
-
-=cut
-
-sub dstsvc_acct {
- my $self = shift;
- my $h_svc_acct = qsearchs(
- 'h_svc_acct',
- { 'svcnum' => $self->dstsvc },
- FS::h_svc_acct->sql_h_searchs(@_),
- ) || $self->SUPER::dstsvc_acct
- or die "no history svc_acct.svcnum for svc_forward.dstsvc ". $self->dstsvc;
-
- carp 'Using svc_acct in place of missing h_svc_acct record.'
- if ($h_svc_acct->isa('FS::domain_record') and $DEBUG);
-
- return $h_svc_acct;
-}
-
-=back
-
-=head1 DESCRIPTION
-
-An FS::h_svc_forward object represents a historical mail forwarding alias.
-FS::h_svc_forward inherits from FS::h_Common and FS::svc_forward.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_forward>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_phone.pm b/FS/FS/h_svc_phone.pm
deleted file mode 100644
index 95898c7..0000000
--- a/FS/FS/h_svc_phone.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::h_svc_phone;
-
-use strict;
-use vars qw( @ISA );
-use FS::h_Common;
-use FS::svc_phone;
-
-@ISA = qw( FS::h_Common FS::svc_phone );
-
-sub table { 'h_svc_phone' };
-
-=head1 NAME
-
-FS::h_svc_phone - Historical phone number objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-An FS::h_svc_phone object represents a historical phone number.
-FS::h_svc_phone inherits from FS::h_Common and FS::svc_phone.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_phone>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/h_svc_www.pm b/FS/FS/h_svc_www.pm
deleted file mode 100644
index 2a3b6dc..0000000
--- a/FS/FS/h_svc_www.pm
+++ /dev/null
@@ -1,67 +0,0 @@
-package FS::h_svc_www;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use Carp qw(carp);
-use FS::Record qw(qsearchs);
-use FS::h_Common;
-use FS::svc_www;
-use FS::h_domain_record;
-
-@ISA = qw( FS::h_Common FS::svc_www );
-
-$DEBUG = 0;
-
-sub table { 'h_svc_www' };
-
-=head1 NAME
-
-FS::h_svc_www - Historical web virtual host objects
-
-=head1 SYNOPSIS
-
-=head1 METHODS
-
-=over 4
-
-=item domain_record
-
-=cut
-
-sub domain_record {
- my $self = shift;
-
- carp 'Called FS::h_svc_www->domain_record on svcnum ' . $self->svcnum if $DEBUG;
-
- my $domain_record = qsearchs(
- 'h_domain_record',
- { 'recnum' => $self->recnum },
- FS::h_domain_record->sql_h_searchs(@_),
- ) || $self->SUPER::domain_record
- or die "no history domain_record.recnum for svc_www.recnum ". $self->domsvc;
-
- carp 'Using domain_record in place of missing h_domain_record record.'
- if ($domain_record->isa('FS::domain_record') and $DEBUG);
-
- return $domain_record;
-
-}
-
-=back
-
-=head1 DESCRIPTION
-
-An FS::h_svc_www object represents a historical web virtual host.
-FS::h_svc_www inherits from FS::h_Common and FS::svc_www.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::h_Common>, L<FS::svc_www>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/inventory_class.pm b/FS/FS/inventory_class.pm
deleted file mode 100644
index 508889b..0000000
--- a/FS/FS/inventory_class.pm
+++ /dev/null
@@ -1,164 +0,0 @@
-package FS::inventory_class;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( dbh qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::inventory_class - Object methods for inventory_class records
-
-=head1 SYNOPSIS
-
- use FS::inventory_class;
-
- $record = new FS::inventory_class \%hash;
- $record = new FS::inventory_class { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::inventory_class object represents a class of inventory, such as "DID
-numbers" or "physical equipment serials". FS::inventory_class inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item classnum - primary key
-
-=item classname - Name of this class
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new inventory class. To add the class to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'inventory_class'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid inventory class. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('classnum')
- || $self->ut_textn('classname')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item num_avail
-
-Returns the number of available (unused/unallocated) inventory items of this
-class (see L<FS::inventory_item>).
-
-=cut
-
-sub num_avail {
- shift->num_sql('( svcnum IS NULL OR svcnum = 0 )');
-}
-
-sub num_sql {
- my( $self, $sql ) = @_;
- $sql = "AND $sql" if length($sql);
- my $statement =
- "SELECT COUNT(*) FROM inventory_item WHERE classnum = ? $sql";
- my $sth = dbh->prepare($statement) or die dbh->errstr. " preparing $statement";
- $sth->execute($self->classnum) or die $sth->errstr. " executing $statement";
- $sth->fetchrow_arrayref->[0];
-}
-
-=item num_used
-
-Returns the number of used (allocated) inventory items of this class (see
-L<FS::inventory_class>).
-
-=cut
-
-sub num_used {
- shift->num_sql("svcnum IS NOT NULL AND svcnum > 0 ");
-}
-
-=item num_total
-
-Returns the total number of inventory items of this class (see
-L<FS::inventory_class>).
-
-=cut
-
-sub num_total {
- shift->num_sql('');
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::inventory_item>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/inventory_item.pm b/FS/FS/inventory_item.pm
deleted file mode 100644
index 7fa350f..0000000
--- a/FS/FS/inventory_item.pm
+++ /dev/null
@@ -1,204 +0,0 @@
-package FS::inventory_item;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( dbh qsearch qsearchs );
-use FS::cust_main_Mixin;
-use FS::inventory_class;
-use FS::cust_svc;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-=head1 NAME
-
-FS::inventory_item - Object methods for inventory_item records
-
-=head1 SYNOPSIS
-
- use FS::inventory_item;
-
- $record = new FS::inventory_item \%hash;
- $record = new FS::inventory_item { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::inventory_item object represents a specific piece of (real or virtual)
-inventory, such as a specific DID or serial number. FS::inventory_item
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item itemnum - primary key
-
-=item classnum - Inventory class (see L<FS::inventory_class>)
-
-=item item - Item identifier (unique within its inventory class)
-
-=item svcnum - Customer servcie (see L<FS::cust_svc>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new item. To add the item to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'inventory_item'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid item. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('itemnum')
- || $self->ut_foreign_key('classnum', 'inventory_class', 'classnum' )
- || $self->ut_text('item')
- || $self->ut_foreign_keyn('svcnum', 'cust_svc', 'svcnum' )
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item cust_svc
-
-Returns the customer service associated with this inventory item, if the
-item has been used (see L<FS::cust_svc>).
-
-=cut
-
-sub cust_svc {
- my $self = shift;
- return '' unless $self->svcnum;
- qsearchs( 'cust_svc', { 'svcnum' => $self->svcnum } );
-}
-
-=back
-
-=head1 CLASS METHODS
-
-=over 4
-
-=item batch_import
-
-=cut
-
-sub batch_import {
- my $param = shift;
-
- my $fh = $param->{filehandle};
-
- my $imported = 0;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $line;
- while ( defined($line=<$fh>) ) {
-
- chomp $line;
-
- my $inventory_item = new FS::inventory_item {
- 'classnum' => $param->{'classnum'},
- 'item' => $line,
- };
-
- my $error = $inventory_item->insert;
-
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
-
- #or just skip?
- #next;
- }
-
- $imported++;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- #might want to disable this if we skip records for any reason...
- return "Empty file!" unless $imported;
-
- '';
-
-}
-
-=back
-
-=head1 BUGS
-
-maybe batch_import should be a regular method in FS::inventory_class
-
-=head1 SEE ALSO
-
-L<inventory_class>, L<cust_svc>, L<FS::Record>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/m2m_Common.pm b/FS/FS/m2m_Common.pm
deleted file mode 100644
index fd8700a..0000000
--- a/FS/FS/m2m_Common.pm
+++ /dev/null
@@ -1,110 +0,0 @@
-package FS::m2m_Common;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Schema qw( dbdef );
-use FS::Record qw( qsearch qsearchs ); #dbh );
-
-@ISA = qw( FS::Record );
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::m2m_Common - Base class for classes in a many-to-many relationship
-
-=head1 SYNOPSIS
-
-use FS::m2m_Common;
-
-@ISA = qw( FS::m2m_Common );
-
-=head1 DESCRIPTION
-
-FS::m2m_Common is intended as a base class for classes which have a
-many-to-many relationship with another table (via a linking table).
-
-Note: It is currently assumed that the link table contains two fields
-named the same as the primary keys of ths base and target tables.
-
-=head1 METHODS
-
-=over 4
-
-=item process_m2m
-
-=cut
-
-sub process_m2m {
- my( $self, %opt ) = @_;
-
- my $self_pkey = $self->dbdef_table->primary_key;
-
- my $link_table = $self->_load_table($opt{'link_table'});
-
- my $target_table = $self->_load_table($opt{'target_table'});
- my $target_pkey = dbdef->table($target_table)->primary_key;
-
- foreach my $target_obj ( qsearch($target_table, {} ) ) {
-
- my $targetnum = $target_obj->$target_pkey();
-
- my $link_obj = qsearchs( $link_table, {
- $self_pkey => $self->$self_pkey(),
- $target_pkey => $targetnum,
- });
-
- if ( $link_obj && ! $opt{'params'}->{"$target_pkey$targetnum"} ) {
-
- my $d_link_obj = $link_obj; #need to save $link_obj for below.
- my $error = $d_link_obj->delete;
- die $error if $error;
-
- } elsif ( $opt{'params'}->{"$target_pkey$targetnum"} && ! $link_obj ) {
-
- #ok to clobber it now (but bad form nonetheless?)
- #$link_obj = new "FS::$link_table" ( {
- $link_obj = "FS::$link_table"->new( {
- $self_pkey => $self->$self_pkey(),
- $target_pkey => $targetnum,
- });
- my $error = $link_obj->insert;
- die $error if $error;
- }
-
- }
-
- '';
-}
-
-sub _load_table {
- my( $self, $table ) = @_;
- eval "use FS::$table";
- die $@ if $@;
- $table;
-}
-
-#=item target_table
-#
-#=cut
-#
-#sub target_table {
-# my $self = shift;
-# my $target_table = $self->_target_table;
-# eval "use FS::$target_table";
-# die $@ if $@;
-# $target_table;
-#}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/FS/FS/m2name_Common.pm b/FS/FS/m2name_Common.pm
deleted file mode 100644
index 7c9637e..0000000
--- a/FS/FS/m2name_Common.pm
+++ /dev/null
@@ -1,95 +0,0 @@
-package FS::m2name_Common;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Schema qw( dbdef );
-use FS::Record qw( qsearch qsearchs ); #dbh );
-
-@ISA = qw( FS::Record );
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::m2name_Common - Base class for tables with a related table listing names
-
-=head1 SYNOPSIS
-
-use FS::m2name_Common;
-
-@ISA = qw( FS::m2name_Common );
-
-=head1 DESCRIPTION
-
-FS::m2name_Common is intended as a base class for classes which have a
-related table that lists names.
-
-=head1 METHODS
-
-=over 4
-
-=item process_m2name
-
-=cut
-
-sub process_m2name {
- my( $self, %opt ) = @_;
-
- my $self_pkey = $self->dbdef_table->primary_key;
- my $link_sourcekey = $opt{'num_col'} || $self_pkey;
-
- my $link_table = $self->_load_table($opt{'link_table'});
-
- my $link_static = $opt{'link_static'} || {};
-
- foreach my $name ( @{ $opt{'names_list'} } ) {
-
- my $obj = qsearchs( $link_table, {
- $link_sourcekey => $self->$self_pkey(),
- $opt{'name_col'} => $name,
- %$link_static,
- });
-
- if ( $obj && ! $opt{'params'}->{"$link_table.$name"} ) {
-
- my $d_obj = $obj; #need to save $obj for below.
- my $error = $d_obj->delete;
- die "error deleting $d_obj for $link_table.$name: $error" if $error;
-
- } elsif ( $opt{'params'}->{"$link_table.$name"} && ! $obj ) {
-
- #ok to clobber it now (but bad form nonetheless?)
- #$obj = new "FS::$link_table" ( {
- $obj = "FS::$link_table"->new( {
- $link_sourcekey => $self->$self_pkey(),
- $opt{'name_col'} => $name,
- %$link_static,
- });
- my $error = $obj->insert;
- die "error inserting $obj for $link_table.$name: $error" if $error;
- }
-
- }
-
- '';
-}
-
-sub _load_table {
- my( $self, $table ) = @_;
- eval "use FS::$table";
- die $@ if $@;
- $table;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/FS/FS/msgcat.pm b/FS/FS/msgcat.pm
deleted file mode 100644
index cbdc1d6..0000000
--- a/FS/FS/msgcat.pm
+++ /dev/null
@@ -1,133 +0,0 @@
-package FS::msgcat;
-
-use strict;
-use vars qw( @ISA );
-use Exporter;
-use FS::UID;
-use FS::Record qw( qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::msgcat - Object methods for message catalog entries
-
-=head1 SYNOPSIS
-
- use FS::msgcat;
-
- $record = new FS::msgcat \%hash;
- $record = new FS::msgcat { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::msgcat object represents an message catalog entry. FS::msgcat inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item msgnum - primary key
-
-=item msgcode - Error code
-
-=item locale - Locale
-
-=item msg - Message
-
-=back
-
-If you just want to B<use> message catalogs, see L<FS::Msgcat>.
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new message catalog entry. To add the message catalog entry to the
-database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'msgcat'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid message catalog entry. If there
-is an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('msgnum')
- || $self->ut_text('msgcode')
- || $self->ut_text('msg')
- ;
- return $error if $error;
-
- $self->locale =~ /^([\w\@]+)$/ or return "illegal locale: ". $self->locale;
- $self->locale($1);
-
- $self->SUPER::check
-}
-
-=back
-
-=head1 BUGS
-
-i18n/l10n, eek
-
-=head1 SEE ALSO
-
-L<FS::Msgcat>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/nas.pm b/FS/FS/nas.pm
deleted file mode 100644
index 97b0ea1..0000000
--- a/FS/FS/nas.pm
+++ /dev/null
@@ -1,150 +0,0 @@
-package FS::nas;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw(qsearchs); #qsearch);
-use FS::UID qw( dbh );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::nas - Object methods for nas records
-
-=head1 SYNOPSIS
-
- use FS::nas;
-
- $record = new FS::nas \%hash;
- $record = new FS::nas {
- 'nasnum' => 1,
- 'nasip' => '10.4.20.23',
- 'nasfqdn' => 'box1.brc.nv.us.example.net',
- };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->heartbeat($timestamp);
-
-=head1 DESCRIPTION
-
-An FS::nas object represents an Network Access Server on your network, such as
-a terminal server or equivalent. FS::nas inherits from FS::Record. The
-following fields are currently supported:
-
-=over 4
-
-=item nasnum - primary key
-
-=item nas - NAS name
-
-=item nasip - NAS ip address
-
-=item nasfqdn - NAS fully-qualified domain name
-
-=item last - timestamp indicating the last instant the NAS was in a known
- state (used by the session monitoring).
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new NAS. To add the NAS to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'nas'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid NAS. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('nasnum')
- || $self->ut_text('nas')
- || $self->ut_ip('nasip')
- || $self->ut_domain('nasfqdn')
- || $self->ut_numbern('last')
- || $self->SUPER::check
- ;
-}
-
-=item heartbeat TIMESTAMP
-
-Updates the timestamp for this nas
-
-=cut
-
-sub heartbeat {
- my($self, $timestamp) = @_;
- my $dbh = dbh;
- my $sth =
- $dbh->prepare("UPDATE nas SET last = ? WHERE nasnum = ? AND last < ?");
- $sth->execute($timestamp, $self->nasnum, $timestamp) or die $sth->errstr;
- $self->last($timestamp);
-}
-
-=back
-
-=head1 BUGS
-
-heartbeat method uses SQL directly and doesn't update history tables.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/option_Common.pm b/FS/FS/option_Common.pm
deleted file mode 100644
index ad3c269..0000000
--- a/FS/FS/option_Common.pm
+++ /dev/null
@@ -1,295 +0,0 @@
-package FS::option_Common;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw( qsearch qsearchs dbh );
-
-@ISA = qw( FS::Record );
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::option_Common - Base class for option sub-classes
-
-=head1 SYNOPSIS
-
-use FS::option_Common;
-
-@ISA = qw( FS::option_Common );
-
-=head1 DESCRIPTION
-
-FS::option_Common is intended as a base class for classes which have a
-simple one-to-many class associated with them, used to store a hash-like data
-structure of keys and values.
-
-=head1 METHODS
-
-=over 4
-
-=item insert [ HASHREF | OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-If a list or hash reference of options is supplied, option records are also
-created.
-
-=cut
-
-#false laziness w/queue.pm
-sub insert {
- my $self = shift;
- my $options =
- ( ref($_[0]) eq 'HASH' )
- ? shift
- : { @_ };
- warn "FS::option_Common::insert called on $self with options ".
- join(', ', map "$_ => ".$options->{$_}, keys %$options)
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- my $pkey = $self->pkey;
- my $option_table = $self->option_table;
-
- foreach my $optionname ( keys %{$options} ) {
- my $href = {
- $pkey => $self->get($pkey),
- 'optionname' => $optionname,
- 'optionvalue' => $options->{$optionname},
- };
-
- #my $option_record = eval "new FS::$option_table \$href";
- #if ( $@ ) {
- # $dbh->rollback if $oldAutoCommit;
- # return $@;
- #}
- my $option_record = "FS::$option_table"->new($href);
-
- $error = $option_record->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Delete this record from the database. Any associated option records are also
-deleted.
-
-=cut
-
-#foreign keys would make this much less tedious... grr dumb mysql
-sub delete {
- my $self = shift;
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- my $pkey = $self->pkey;
- #my $option_table = $self->option_table;
-
- foreach my $obj ( $self->option_objects ) {
- my $error = $obj->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item replace OLD_RECORD [ HASHREF | OPTION => VALUE ... ]
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-If a list hash reference of options is supplied, part_export_option records are
-created or modified (see L<FS::part_export_option>).
-
-=cut
-
-sub replace {
- my $self = shift;
- my $old = shift;
- my $options =
- ( ref($_[0]) eq 'HASH' )
- ? shift
- : { @_ };
- warn "FS::option_Common::insert called on $self with options ".
- join(', ', map "$_ => ". $options->{$_}, keys %$options)
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- my $pkey = $self->pkey;
- my $option_table = $self->option_table;
-
- foreach my $optionname ( keys %{$options} ) {
- my $old = qsearchs( $option_table, {
- $pkey => $self->get($pkey),
- 'optionname' => $optionname,
- } );
-
- my $href = {
- $pkey => $self->get($pkey),
- 'optionname' => $optionname,
- 'optionvalue' => $options->{$optionname},
- };
-
- #my $new = eval "new FS::$option_table \$href";
- #if ( $@ ) {
- # $dbh->rollback if $oldAutoCommit;
- # return $@;
- #}
- my $new = "FS::$option_table"->new($href);
-
- $new->optionnum($old->optionnum) if $old;
- my $error = $old ? $new->replace($old) : $new->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- #remove extraneous old options
- foreach my $opt (
- grep { !exists $options->{$_->optionname} } $old->option_objects
- ) {
- my $error = $opt->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item option_objects
-
-Returns all options as FS::I<tablename>_option objects.
-
-=cut
-
-sub option_objects {
- my $self = shift;
- my $pkey = $self->pkey;
- my $option_table = $self->option_table;
- qsearch($option_table, { $pkey => $self->get($pkey) } );
-}
-
-=item options
-
-Returns a list of option names and values suitable for assigning to a hash.
-
-=cut
-
-sub options {
- my $self = shift;
- map { $_->optionname => $_->optionvalue } $self->option_objects;
-}
-
-=item option OPTIONNAME
-
-Returns the option value for the given name, or the empty string.
-
-=cut
-
-sub option {
- my $self = shift;
- my $pkey = $self->pkey;
- my $option_table = $self->option_table;
- my $obj =
- qsearchs($option_table, {
- $pkey => $self->get($pkey),
- optionname => shift,
- } );
- $obj ? $obj->optionvalue : '';
-}
-
-
-sub pkey {
- my $self = shift;
- my $pkey = $self->dbdef_table->primary_key;
-}
-
-sub option_table {
- my $self = shift;
- my $option_table = $self->table . '_option';
- eval "use FS::$option_table";
- die $@ if $@;
- $option_table;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_bill_event.pm b/FS/FS/part_bill_event.pm
deleted file mode 100644
index 2aef5bc..0000000
--- a/FS/FS/part_bill_event.pm
+++ /dev/null
@@ -1,216 +0,0 @@
-package FS::part_bill_event;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::Conf;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::part_bill_event - Object methods for part_bill_event records
-
-=head1 SYNOPSIS
-
- use FS::part_bill_event;
-
- $record = new FS::part_bill_event \%hash;
- $record = new FS::part_bill_event { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_bill_event object represents an invoice event definition -
-a callback which is triggered when an invoice is a certain amount of time
-overdue. FS::part_bill_event inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item eventpart - primary key
-
-=item payby - CARD, DCRD, CHEK, DCHK, LECB, BILL, or COMP
-
-=item event - event name
-
-=item eventcode - event action
-
-=item seconds - how long after the invoice date events of this type are triggered
-
-=item weight - ordering for events with identical seconds
-
-=item plan - eventcode plan
-
-=item plandata - additional plan data
-
-=item disabled - Disabled flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new invoice event definition. To add the invoice event definition to
-the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'part_bill_event'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid invoice event definition. If
-there is an error, returns the error, otherwise returns false. Called by the
-insert and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- $self->weight(0) unless $self->weight;
-
- my $conf = new FS::Conf;
- if ( $conf->exists('safe-part_bill_event') ) {
- my $error = $self->ut_anything('eventcode');
- return $error if $error;
-
- my $c = $self->eventcode;
-
- $c =~ /^\s*\$cust_main\->(suspend|cancel|invoicing_list_addpost|bill|collect)\(\);\s*("";)?\s*$/
-
- or $c =~ /^\s*\$cust_bill\->(comp|realtime_(card|ach|lec)|batch_card|send)\(\);\s*$/
-
- or $c =~ /^\s*\$cust_bill\->send(_if_newest)?\(\'[\w\-\s]+\'\s*(,\s*(\d+|\[\s*\d+(,\s*\d+)*\s*\])\s*,\s*'[\w\@\.\-\+]*'\s*)?\);\s*$/
-
- or $c =~ /^\s*\$cust_main\->apply_payments; \$cust_main->apply_credits; "";\s*$/
-
- or $c =~ /^\s*\$cust_main\->charge\( \s*\d*\.?\d*\s*,\s*\'[\w \!\@\#\$\%\&\(\)\-\+\;\:\"\,\.\?\/]*\'\s*\);\s*$/
-
- or $c =~ /^\s*\$cust_main\->suspend_(if|unless)_pkgpart\([\d\,\s]*\);\s*$/
-
- or $c =~ /^\s*\$cust_bill\->cust_suspend_if_balance_over\([\d\.\s]*\);\s*$/
-
- or do {
- #log
- return "illegal eventcode: $c";
- };
-
- }
-
- my $error = $self->ut_numbern('eventpart')
- || $self->ut_enum('payby', [qw( CARD DCLN DCRD CHEK DCHK LECB BILL COMP )] )
- || $self->ut_text('event')
- || $self->ut_anything('eventcode')
- || $self->ut_number('seconds')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- || $self->ut_number('weight')
- || $self->ut_textn('plan')
- || $self->ut_anything('plandata')
- ;
- #|| $self->ut_snumber('seconds')
- return $error if $error;
-
- #quelle kludge
- if ( $self->plandata =~ /^(agent_)?templatename\s+(.*)$/m ) {
- my $name= $2;
-
- foreach my $file (qw( template
- latex latexnotes latexreturnaddress latexfooter
- latexsmallfooter
- html htmlnotes htmlreturnaddress htmlfooter
- ))
- {
- unless ( $conf->exists("invoice_${file}_$name") ) {
- $conf->set(
- "invoice_${file}_$name" =>
- join("\n", $conf->config("invoice_$file") )
- );
- }
- }
- }
-
- $self->SUPER::check;
-}
-
-=item templatename
-
-Returns the alternate invoice template name, if any, or false if there is
-no alternate template for this invoice event.
-
-=cut
-
-sub templatename {
- my $self = shift;
- if ( $self->plan =~ /^send_(alternate|agent)$/
- && $self->plandata =~ /^(agent_)?templatename (.*)$/m
- )
- {
- $2;
- } else {
- '';
- }
-}
-
-
-=back
-
-=head1 BUGS
-
-The whole "eventcode" idea is bunk. This should be refactored with subclasses
-like part_pkg/ and part_export/
-
-=head1 SEE ALSO
-
-L<FS::cust_bill>, L<FS::cust_bill_event>, L<FS::Record>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_export.pm b/FS/FS/part_export.pm
deleted file mode 100644
index dce2d2a..0000000
--- a/FS/FS/part_export.pm
+++ /dev/null
@@ -1,458 +0,0 @@
-package FS::part_export;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK $DEBUG %exports );
-use Exporter;
-use Tie::IxHash;
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::option_Common;
-use FS::part_svc;
-use FS::part_export_option;
-use FS::export_svc;
-
-@ISA = qw( FS::option_Common );
-@EXPORT_OK = qw(export_info);
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::part_export - Object methods for part_export records
-
-=head1 SYNOPSIS
-
- use FS::part_export;
-
- $record = new FS::part_export \%hash;
- $record = new FS::part_export { 'column' => 'value' };
-
- #($new_record, $options) = $template_recored->clone( $svcpart );
-
- $error = $record->insert( { 'option' => 'value' } );
- $error = $record->insert( \%options );
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_export object represents an export of Freeside data to an external
-provisioning system. FS::part_export inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item exportnum - primary key
-
-=item machine - Machine name
-
-=item exporttype - Export type
-
-=item nodomain - blank or "Y" : usernames are exported to this service with no domain
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new export. To add the export to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'part_export'; }
-
-=cut
-
-#=item clone SVCPART
-#
-#An alternate constructor. Creates a new export by duplicating an existing
-#export. The given svcpart is assigned to the new export.
-#
-#Returns a list consisting of the new export object and a hashref of options.
-#
-#=cut
-#
-#sub clone {
-# my $self = shift;
-# my $class = ref($self);
-# my %hash = $self->hash;
-# $hash{'exportnum'} = '';
-# $hash{'svcpart'} = shift;
-# ( $class->new( \%hash ),
-# { map { $_->optionname => $_->optionvalue }
-# qsearch('part_export_option', { 'exportnum' => $self->exportnum } )
-# }
-# );
-#}
-
-=item insert HASHREF
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-If a hash reference of options is supplied, part_export_option records are
-created (see L<FS::part_export_option>).
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-#foreign keys would make this much less tedious... grr dumb mysql
-sub delete {
- my $self = shift;
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- foreach my $export_svc ( $self->export_svc ) {
- my $error = $export_svc->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid export. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('exportnum')
- || $self->ut_domain('machine')
- || $self->ut_alpha('exporttype')
- ;
- return $error if $error;
-
- $self->nodomain =~ /^(Y?)$/ or return "Illegal nodomain: ". $self->nodomain;
- $self->nodomain($1);
-
- $self->deprecated(1); #BLAH
-
- #check exporttype?
-
- $self->SUPER::check;
-}
-
-#=item part_svc
-#
-#Returns the service definition (see L<FS::part_svc>) for this export.
-#
-#=cut
-#
-#sub part_svc {
-# my $self = shift;
-# qsearchs('part_svc', { svcpart => $self->svcpart } );
-#}
-
-sub part_svc {
- use Carp;
- croak "FS::part_export::part_svc deprecated";
- #confess "FS::part_export::part_svc deprecated";
-}
-
-=item svc_x
-
-Returns a list of associated FS::svc_* records.
-
-=cut
-
-sub svc_x {
- my $self = shift;
- map { $_->svc_x } $self->cust_svc;
-}
-
-=item cust_svc
-
-Returns a list of associated FS::cust_svc records.
-
-=cut
-
-sub cust_svc {
- my $self = shift;
- map { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- grep { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- $self->export_svc;
-}
-
-=item export_svc
-
-Returns a list of associated FS::export_svc records.
-
-=cut
-
-sub export_svc {
- my $self = shift;
- qsearch('export_svc', { 'exportnum' => $self->exportnum } );
-}
-
-=item part_export_option
-
-Returns all options as FS::part_export_option objects (see
-L<FS::part_export_option>).
-
-=cut
-
-sub part_export_option {
- my $self = shift;
- $self->option_objects;
-}
-
-=item options
-
-Returns a list of option names and values suitable for assigning to a hash.
-
-=item option OPTIONNAME
-
-Returns the option value for the given name, or the empty string.
-
-=item _rebless
-
-Reblesses the object into the FS::part_export::EXPORTTYPE class, where
-EXPORTTYPE is the object's I<exporttype> field. There should be better docs
-on how to create new exports, but until then, see L</NEW EXPORT CLASSES>.
-
-=cut
-
-sub _rebless {
- my $self = shift;
- my $exporttype = $self->exporttype;
- my $class = ref($self). "::$exporttype";
- eval "use $class;";
- #die $@ if $@;
- bless($self, $class) unless $@;
- $self;
-}
-
-#these should probably all go away, just let the subclasses define em
-
-=item export_insert SVC_OBJECT
-
-=cut
-
-sub export_insert {
- my $self = shift;
- #$self->rebless;
- $self->_export_insert(@_);
-}
-
-#sub AUTOLOAD {
-# my $self = shift;
-# $self->rebless;
-# my $method = $AUTOLOAD;
-# #$method =~ s/::(\w+)$/::_$1/; #infinite loop prevention
-# $method =~ s/::(\w+)$/_$1/; #infinite loop prevention
-# $self->$method(@_);
-#}
-
-=item export_replace NEW OLD
-
-=cut
-
-sub export_replace {
- my $self = shift;
- #$self->rebless;
- $self->_export_replace(@_);
-}
-
-=item export_delete
-
-=cut
-
-sub export_delete {
- my $self = shift;
- #$self->rebless;
- $self->_export_delete(@_);
-}
-
-=item export_suspend
-
-=cut
-
-sub export_suspend {
- my $self = shift;
- #$self->rebless;
- $self->_export_suspend(@_);
-}
-
-=item export_unsuspend
-
-=cut
-
-sub export_unsuspend {
- my $self = shift;
- #$self->rebless;
- $self->_export_unsuspend(@_);
-}
-
-#fallbacks providing useful error messages intead of infinite loops
-sub _export_insert {
- my $self = shift;
- return "_export_insert: unknown export type ". $self->exporttype;
-}
-
-sub _export_replace {
- my $self = shift;
- return "_export_replace: unknown export type ". $self->exporttype;
-}
-
-sub _export_delete {
- my $self = shift;
- return "_export_delete: unknown export type ". $self->exporttype;
-}
-
-#call svcdb-specific fallbacks
-
-sub _export_suspend {
- my $self = shift;
- #warn "warning: _export_suspened unimplemented for". ref($self);
- my $svc_x = shift;
- my $new = $svc_x->clone_suspended;
- $self->_export_replace( $new, $svc_x );
-}
-
-sub _export_unsuspend {
- my $self = shift;
- #warn "warning: _export_unsuspend unimplemented for ". ref($self);
- my $svc_x = shift;
- my $old = $svc_x->clone_kludge_unsuspend;
- $self->_export_replace( $svc_x, $old );
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item export_info [ SVCDB ]
-
-Returns a hash reference of the exports for the given I<svcdb>, or if no
-I<svcdb> is specified, for all exports. The keys of the hash are
-I<exporttype>s and the values are again hash references containing information
-on the export:
-
- 'desc' => 'Description',
- 'options' => {
- 'option' => { label=>'Option Label' },
- 'option2' => { label=>'Another label' },
- },
- 'nodomain' => 'Y', #or ''
- 'notes' => 'Additional notes',
-
-=cut
-
-sub export_info {
- #warn $_[0];
- return $exports{$_[0]} || {} if @_;
- #{ map { %{$exports{$_}} } keys %exports };
- my $r = { map { %{$exports{$_}} } keys %exports };
-}
-
-#=item exporttype2svcdb EXPORTTYPE
-#
-#Returns the applicable I<svcdb> for an I<exporttype>.
-#
-#=cut
-#
-#sub exporttype2svcdb {
-# my $exporttype = $_[0];
-# foreach my $svcdb ( keys %exports ) {
-# return $svcdb if grep { $exporttype eq $_ } keys %{$exports{$svcdb}};
-# }
-# '';
-#}
-
-foreach my $INC ( @INC ) {
- foreach my $file ( glob("$INC/FS/part_export/*.pm") ) {
- warn "attempting to load export info from $file\n" if $DEBUG;
- $file =~ /\/(\w+)\.pm$/ or do {
- warn "unrecognized file in $INC/FS/part_export/: $file\n";
- next;
- };
- my $mod = $1;
- my $info = eval "use FS::part_export::$mod; ".
- "\\%FS::part_export::$mod\::info;";
- if ( $@ ) {
- die "error using FS::part_export::$mod (skipping): $@\n" if $@;
- next;
- }
- unless ( keys %$info ) {
- warn "no %info hash found in FS::part_export::$mod, skipping\n"
- unless $mod =~ /^(passwdfile|null)$/; #hack but what the heck
- next;
- }
- warn "got export info from FS::part_export::$mod: $info\n" if $DEBUG;
- no strict 'refs';
- foreach my $svc (
- ref($info->{'svc'}) ? @{$info->{'svc'}} : $info->{'svc'}
- ) {
- unless ( $svc ) {
- warn "blank svc for FS::part_export::$mod (skipping)\n";
- next;
- }
- $exports{$svc}->{$mod} = $info;
- }
- }
-}
-
-=back
-
-=head1 NEW EXPORT CLASSES
-
-A module should be added in FS/FS/part_export/ (an example may be found in
-eg/export_template.pm)
-
-=head1 BUGS
-
-Hmm... cust_export class (not necessarily a database table...) ... ?
-
-deprecated column...
-
-=head1 SEE ALSO
-
-L<FS::part_export_option>, L<FS::export_svc>, L<FS::svc_acct>,
-L<FS::svc_domain>,
-L<FS::svc_forward>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_export/acct_sql.pm b/FS/FS/part_export/acct_sql.pm
deleted file mode 100644
index 4b92e80..0000000
--- a/FS/FS/part_export/acct_sql.pm
+++ /dev/null
@@ -1,271 +0,0 @@
-package FS::part_export::acct_sql;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-#use Digest::MD5 qw(md5_hex);
-use FS::Record; #qw(qsearchs);
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'datasrc' => { label => 'DBI data source' },
- 'username' => { label => 'Database username' },
- 'password' => { label => 'Database password' },
- 'table' => { label => 'Database table' },
- 'schema' => { label =>
- 'Database schema mapping to Freeside methods.',
- type => 'textarea',
- },
- 'primary_key' => { label => 'Database primary key' },
- 'crypt' => { label => 'Password encryption',
- type=>'select', options=>[qw(crypt md5)],
- default=>'crypt',
- },
-;
-
-tie my %vpopmail_map, 'Tie::IxHash',
- 'pw_name' => 'username',
- 'pw_domain' => 'domain',
- 'pw_passwd' => 'crypt_password',
- 'pw_uid' => 'uid',
- 'pw_gid' => 'gid',
- 'pw_gecos' => 'finger',
- 'pw_dir' => 'dir',
- #'pw_shell' => 'shell',
- 'pw_shell' => 'quota',
-;
-my $vpopmail_map = join('\n', map "$_ $vpopmail_map{$_}", keys %vpopmail_map );
-
-tie my %postfix_courierimap_mailbox_map, 'Tie::IxHash',
- 'username' => 'email',
- 'password' => '_password',
- 'crypt' => 'crypt_password',
- 'name' => 'finger',
- 'maildir' => 'virtual_maildir',
- 'domain' => 'domain',
- 'svcnum' => 'svcnum',
-;
-my $postfix_courierimap_mailbox_map =
- join('\n', map "$_ $postfix_courierimap_mailbox_map{$_}",
- keys %postfix_courierimap_mailbox_map );
-
-tie my %postfix_courierimap_alias_map, 'Tie::IxHash',
- 'address' => 'email',
- 'goto' => 'email',
- 'domain' => 'domain',
- 'svcnum' => 'svcnum',
-;
-my $postfix_courierimap_alias_map =
- join('\n', map "$_ $postfix_courierimap_alias_map{$_}",
- keys %postfix_courierimap_alias_map );
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export of accounts to SQL databases '.
- '(vpopmail, Postfix+Courier IMAP, others?)',
- 'options' => \%options,
- 'nodomain' => '',
- 'notes' => <<END
-Export accounts (svc_acct records) to SQL databases. Currently has default
-configurations for vpopmail and Postfix+Courier IMAP but intended to be
-configurable for other schemas as well.
-
-<BR><BR>In contrast to sqlmail, this is intended to export just svc_acct
-records only, rather than a single export for svc_acct, svc_forward and
-svc_domain records, to export in "default" database schemas rather than
-configure the MTA or POP/IMAP server for a Freeside-specific schema, and
-to be configured for different mail server setups.
-
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <li><INPUT TYPE="button" VALUE="vpopmail" onClick='
- this.form.table.value = "vpopmail";
- this.form.schema.value = "$vpopmail_map";
- this.form.primary_key.value = "pw_name, pw_domain";
- '>
- <LI><INPUT TYPE="button" VALUE="postfix_courierimap_mailbox" onClick='
- this.form.table.value = "mailbox";
- this.form.schema.value = "$postfix_courierimap_mailbox_map";
- this.form.primary_key.value = "username";
- '>
- <LI><INPUT TYPE="button" VALUE="postfix_courierimap_alias" onClick='
- this.form.table.value = "alias";
- this.form.schema.value = "$postfix_courierimap_alias_map";
- this.form.primary_key.value = "address";
- '>
-</UL>
-END
-);
-
-sub _map {
- my $self = shift;
- map { /^\s*(\S+)\s*(\S+)\s*$/ } split("\n", $self->option('schema') );
-}
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
-
- my %map = $self->_map;
-
- my %record = map { my $value = $map{$_};
- my @arg = ();
- push @arg, $self->option('crypt')
- if $value eq 'crypt_password' && $self->option('crypt');
- $_ => $svc_acct->$value(@arg);
- } keys %map;
-
- my $err_or_queue =
- $self->acct_sql_queue(
- $svc_acct->svcnum,
- 'insert',
- $self->option('table'),
- %record
- );
- return $err_or_queue unless ref($err_or_queue);
-
- '';
-
-}
-
-sub _export_replace {
- my($self, $new, $old) = (shift, shift, shift);
-
- my %map = $self->_map;
-
- my @primary_key = ();
- if ( $self->option('primary_key') =~ /,/ ) {
- foreach my $key ( split(/\s*,\s*/, $self->option('primary_key') ) ) {
- my $keymap = $map{$key};
- push @primary_key, $old->$keymap();
- }
- } else {
- my $keymap = $map{$self->option('primary_key')};
- push @primary_key, $old->$keymap();
- }
-
- my %record = map { my $value = $map{$_};
- my @arg = ();
- push @arg, $self->option('crypt')
- if $value eq 'crypt_password' && $self->option('crypt');
- $_ => $new->$value(@arg);
- } keys %map;
-
- my $err_or_queue = $self->acct_sql_queue(
- $new->svcnum,
- 'replace',
- $self->option('table'),
- $self->option('primary_key'), @primary_key,
- %record,
- );
- return $err_or_queue unless ref($err_or_queue);
- '';
-}
-
-sub _export_delete {
- my ( $self, $svc_acct ) = (shift, shift);
-
- my %map = $self->_map;
-
- my %primary_key = ();
- if ( $self->option('primary_key') =~ /,/ ) {
- foreach my $key ( split(/\s*,\s*/, $self->option('primary_key') ) ) {
- my $keymap = $map{$key};
- $primary_key{ $key } = $svc_acct->$keymap();
- }
- } else {
- my $keymap = $map{$self->option('primary_key')};
- $primary_key{ $self->option('primary_key') } = $svc_acct->$keymap(),
- }
-
- my $err_or_queue = $self->acct_sql_queue(
- $svc_acct->svcnum,
- 'delete',
- $self->option('table'),
- %primary_key,
- #$self->option('primary_key') => $svc_acct->$keymap(),
- );
- return $err_or_queue unless ref($err_or_queue);
- '';
-}
-
-sub acct_sql_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::acct_sql::acct_sql_$method",
- };
- $queue->insert(
- $self->option('datasrc'),
- $self->option('username'),
- $self->option('password'),
- @_,
- ) or $queue;
-}
-
-sub acct_sql_insert { #subroutine, not method
- my $dbh = acct_sql_connect(shift, shift, shift);
- my( $table, %record ) = @_;
-
- my $sth = $dbh->prepare(
- "INSERT INTO $table ( ". join(", ", keys %record).
- " ) VALUES ( ". join(", ", map '?', keys %record ). " )"
- ) or die $dbh->errstr;
-
- $sth->execute( values(%record) )
- or die "can't insert into $table table: ". $sth->errstr;
-
- $dbh->disconnect;
-}
-
-sub acct_sql_delete { #subroutine, not method
- my $dbh = acct_sql_connect(shift, shift, shift);
- my( $table, %record ) = @_;
-
- my $sth = $dbh->prepare(
- "DELETE FROM $table WHERE ". join(' AND ', map "$_ = ? ", keys %record )
- ) or die $dbh->errstr;
-
- $sth->execute( map $record{$_}, keys %record )
- or die "can't delete from $table table: ". $sth->errstr;
-
- $dbh->disconnect;
-}
-
-sub acct_sql_replace { #subroutine, not method
- my $dbh = acct_sql_connect(shift, shift, shift);
-
- my( $table, $pkey ) = ( shift, shift );
-
- my %primary_key = ();
- if ( $pkey =~ /,/ ) {
- foreach my $key ( split(/\s*,\s*/, $pkey ) ) {
- $primary_key{$key} = shift;
- }
- } else {
- $primary_key{$pkey} = shift;
- }
-
- my %record = @_;
-
- my $sth = $dbh->prepare(
- "UPDATE $table".
- ' SET '. join(', ', map "$_ = ?", keys %record ).
- ' WHERE '. join(' AND ', map "$_ = ?", keys %primary_key )
- ) or die $dbh->errstr;
-
- $sth->execute( values(%record), values(%primary_key) );
-
- $dbh->disconnect;
-}
-
-sub acct_sql_connect {
- #my($datasrc, $username, $password) = @_;
- #DBI->connect($datasrc, $username, $password) or die $DBI::errstr;
- DBI->connect(@_) or die $DBI::errstr;
-}
-
-1;
-
diff --git a/FS/FS/part_export/apache.pm b/FS/FS/part_export/apache.pm
deleted file mode 100644
index 35b00cc..0000000
--- a/FS/FS/part_export/apache.pm
+++ /dev/null
@@ -1,47 +0,0 @@
-package FS::part_export::apache;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::null;
-
-@ISA = qw(FS::part_export::null);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'httpd_conf' => { label=>'httpd.conf snippet location',
- default=>'/etc/apache/httpd-freeside.conf', },
- 'restart' => { label=>'Apache restart command',
- default=>'apachectl graceful',
- },
- 'template' => {
- label => 'Template',
- type => 'textarea',
- default => <<'END',
-<VirtualHost $domain> #generic
-#<VirtualHost ip.addr> #preferred, http://httpd.apache.org/docs/dns-caveats.html
-DocumentRoot /var/www/$zone
-ServerName $zone
-ServerAlias *.$zone
-#BandWidthModule On
-#LargeFileLimit 4096 12288
-#FrontpageEnable on
-</VirtualHost>
-
-END
- },
-;
-
-%info = (
- 'svc' => 'svc_www',
- 'desc' => 'Export an Apache httpd.conf file snippet.',
- 'options' => \%options,
- 'notes' => <<'END'
-Batch export of an httpd.conf snippet from a template. Typically used with
-something like <code>Include /etc/apache/httpd-freeside.conf</code> in
-httpd.conf. <a href="http://search.cpan.org/dist/File-Rsync">File::Rsync</a>
-must be installed. Run bin/apache.export to export the files.
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/artera_turbo.pm b/FS/FS/part_export/artera_turbo.pm
deleted file mode 100644
index c006db9..0000000
--- a/FS/FS/part_export/artera_turbo.pm
+++ /dev/null
@@ -1,181 +0,0 @@
-package FS::part_export::artera_turbo;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::Record qw(qsearch);
-use FS::part_export;
-use FS::cust_svc;
-use FS::svc_external;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'rid' => { 'label' => 'Reseller ID (RID)' },
- 'username' => { 'label' => 'Reseller username', },
- 'password' => { 'label' => 'Reseller password', },
- 'pid' => { 'label' => 'Artera Product ID', },
- 'priceid' => { 'label' => 'Artera Price ID', },
- 'agent_aid' => { 'label' => 'Export agentnum values to Artera AID',
- 'type' => 'checkbox',
- },
- 'aid' => { 'label' => 'Artera Agent ID to use if not using agentnum values', },
- 'production' => { 'label' => 'Production mode (leave unchecked for staging)',
- 'type' => 'checkbox',
- },
- 'debug' => { 'label' => 'Enable debug logging',
- 'type' => 'checkbox',
- },
- 'enable_edit' => { 'label' => 'Enable local editing of Artera serial numbers and key codes (note that the changes will NOT be exported to Artera)',
- 'type' => 'checkbox',
- },
-;
-
-%info = (
- 'svc' => 'svc_external',
- #'svc' => [qw( svc_acct svc_forward )],
- 'desc' =>
- 'Real-time export to Artera Turbo Reseller API',
- 'options' => \%options,
- #'nodomain' => 'Y',
- 'notes' => <<'END'
-Real-time export to <a href="http://www.arteraturbo.com/">Artera Turbo</a>
-Reseller API. Requires installation of
-<a href="http://search.cpan.org/dist/Net-Artera">Net::Artera</a>
-from CPAN. You probably also want to:
-<UL>
- <LI>In the configuration UI section: set the <B>svc_external-skip_manual</B> and <B>svc_external-display_type</B> configuration values.
- <LI>In the message catalog: set <B>svc_external-id</B> to <I>Artera Serial Number</I> and set <B>svc_external-title</B> to <I>Artera Key Code</I>.
-</UL>
-END
-);
-
-sub rebless { shift; }
-
-sub _new_Artera {
- my $self = shift;
-
- my $artera = new Net::Artera (
- map { $_ => $self->option($_) }
- qw( rid username password production )
- );
-}
-
-
-sub _export_insert {
- my($self, $svc_external) = (shift, shift);
-
- # want the ASN (serial) and AKC (key code) right away
-
- eval "use Net::Artera;";
- return $@ if $@;
- $Net::Artera::DEBUG = 1 if $self->option('debug');
- my $artera = $self->_new_Artera;
-
- my $cust_pkg = $svc_external->cust_svc->cust_pkg;
- my $part_pkg = $cust_pkg->part_pkg;
- my @svc_acct = grep { $_->table eq 'svc_acct' }
- map { $_->svc_x }
- sort { my $svcpart = $part_pkg->svcpart('svc_acct');
- ($b->svcpart==$svcpart) cmp ($a->svcpart==$svcpart); }
- qsearch('cust_svc', { 'pkgnum' => $cust_pkg->pkgnum } );
- my $email = scalar(@svc_acct) ? $svc_acct[0]->email : '';
-
- my $cust_main = $cust_pkg->cust_main;
-
- my $result = $artera->newOrder(
- 'pid' => $self->option('pid'),
- 'priceid' => $self->option('priceid'),
- 'email' => $email,
- 'cname' => $cust_main->name,
- 'ref' => $svc_external->svcnum,
- 'aid' => ( $self->option('agent_aid')
- ? $cust_main->agentnum
- : $self->option('aid') ),
- 'add1' => $cust_main->address1,
- 'add2' => $cust_main->address2,
- 'add3' => $cust_main->city,
- 'add4' => $cust_main->state,
- 'zip' => $cust_main->zip,
- 'cid' => $cust_main->country,
- 'phone' => $cust_main->daytime || $cust_main->night,
- 'fax' => $cust_main->fax,
- );
-
- if ( $result->{'id'} == 1 ) {
- my $new = new FS::svc_external { $svc_external->hash };
- $new->id(sprintf('%010d', $result->{'ASN'}));
- $new->title( substr('0000000000'.uc($result->{'AKC'}), -10) );
- $new->replace($svc_external);
- } else {
- $result->{'message'} || 'No response from Artera';
- }
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return '' if $self->option('enable_edit');
- return "can't change serial number with Artera"
- if $old->id != $new->id && $old->id;
- return "can't change key code with Artera"
- if $old->title ne $new->title && $old->title;
- '';
-}
-
-sub _export_delete {
- my( $self, $svc_external ) = (shift, shift);
- $self->queue_statusChange(17, $svc_external);
-}
-
-sub _export_suspend {
- my( $self, $svc_external ) = (shift, shift);
- $self->queue_statusChange(16, $svc_external);
-}
-
-sub _export_unsuspend {
- my( $self, $svc_external ) = (shift, shift);
- $self->queue_statusChange(15, $svc_external);
-}
-
-sub queue_statusChange {
- my( $self, $status, $svc_external ) = @_;
-
- my $queue = new FS::queue {
- 'svcnum' => $svc_external->svcnum,
- 'job' => 'FS::part_export::artera_turbo::statusChange',
- };
- $queue->insert(
- ( map { $self->option($_) }
- qw( rid username password production ) ),
- $status,
- $svc_external->id,
- $svc_external->title,
- $self->option('debug'),
- );
-}
-
-sub statusChange {
- my( $rid, $username, $password, $prod, $status, $id, $title, $debug ) = @_;
-
- eval "use Net::Artera;";
- return $@ if $@;
- $Net::Artera::DEBUG = 1 if $debug;
-
- my $artera = new Net::Artera (
- 'rid' => $rid,
- 'username' => $username,
- 'password' => $password,
- 'production' => $prod,
- );
-
- my $result = $artera->statusChange(
- 'asn' => sprintf('%010d', $id),
- 'akc' => substr("0000000000$title", -10),
- 'statusid' => $status,
- );
-
- die $result->{'message'} unless $result->{'id'} == 1;
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/bind.pm b/FS/FS/part_export/bind.pm
deleted file mode 100644
index 1ef7b65..0000000
--- a/FS/FS/part_export/bind.pm
+++ /dev/null
@@ -1,35 +0,0 @@
-package FS::part_export::bind;
-
-use vars qw(@ISA %info %options);
-use Tie::IxHash;
-use FS::part_export::null;
-
-@ISA = qw(FS::part_export::null);
-
-tie %options, 'Tie::IxHash',
- 'named_conf' => { label => 'named.conf location',
- default=> '/etc/bind/named.conf' },
- 'zonepath' => { label => 'path to zone files',
- default=> '/etc/bind/', },
- 'bind_release' => { label => 'ISC BIND Release',
- type => 'select',
- options => [qw(BIND8 BIND9)],
- default => 'BIND8' },
- 'bind9_minttl' => { label => 'The minttl required by bind9 and RFC1035.',
- default => '1D' },
- 'reload' => { label => 'Optional reload command. If not specified, defaults to "ndc" under BIND8 and "rndc" under BIND9.', },
-;
-
-%info = (
- 'svc' => 'svc_domain',
- 'desc' => 'Batch export to BIND named',
- 'options' => \%options,
- 'notes' => <<'END'
-Batch export of BIND zone and configuration files to a primary nameserver.
-<a href="http://search.cpan.org/search?dist=File-Rsync">File::Rsync</a>
-must be installed. Run bin/bind.export to export the files.
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/bind_slave.pm b/FS/FS/part_export/bind_slave.pm
deleted file mode 100644
index c89325f..0000000
--- a/FS/FS/part_export/bind_slave.pm
+++ /dev/null
@@ -1,28 +0,0 @@
-package FS::part_export::bind_slave;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::null;
-
-@ISA = qw(FS::part_export::null);
-
-tie my %options, 'Tie::IxHash',
- 'master' => { label=> 'Master IP address(s) (semicolon-separated)' },
- %FS::part_export::bind::options,
-;
-delete $options{'zonepath'};
-
-%info = (
- 'svc' => 'svc_domain',
- 'desc' =>'Batch export to slave BIND named',
- 'options' => \%options,
- 'notes' => <<'END'
-Batch export of BIND configuration file to a secondary nameserver. Zones are
-slaved from the listed masters.
-<a href="http://search.cpan.org/dist/File-Rsync">File::Rsync</a>
-must be installed. Run bin/bind.export to export the files.
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/bsdshell.pm b/FS/FS/part_export/bsdshell.pm
deleted file mode 100644
index 7b5feb2..0000000
--- a/FS/FS/part_export/bsdshell.pm
+++ /dev/null
@@ -1,25 +0,0 @@
-package FS::part_export::bsdshell;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::passwdfile;
-
-@ISA = qw(FS::part_export::passwdfile);
-
-tie my %options, 'Tie::IxHash', %FS::part_export::passwdfile::options;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' =>
- 'Batch export of /etc/passwd and /etc/master.passwd files (BSD)',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-MD5 crypt requires installation of
-<a href="http://search.cpan.org/dist/Crypt-PasswdMD5">Crypt::PasswdMD5</a>
-from CPAN. Run bin/bsdshell.export to export the files.
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/communigate_pro.pm b/FS/FS/part_export/communigate_pro.pm
deleted file mode 100644
index 6da2017..0000000
--- a/FS/FS/part_export/communigate_pro.pm
+++ /dev/null
@@ -1,178 +0,0 @@
-package FS::part_export::communigate_pro;
-
-use vars qw(@ISA %info %options);
-use Tie::IxHash;
-use FS::part_export;
-use FS::queue;
-
-@ISA = qw(FS::part_export);
-
-tie %options, 'Tie::IxHash',
- 'port' => { label=>'Port number', default=>'106', },
- 'login' => { label=>'The administrator account name. The name can contain a domain part.', },
- 'password' => { label=>'The administrator account password.', },
- 'accountType' => { label=>'Type for newly-created accounts',
- type=>'select',
- options=>[qw( MultiMailbox TextMailbox MailDirMailbox )],
- default=>'MultiMailbox',
- },
- 'externalFlag' => { label=> 'Create accounts with an external (visible for legacy mailers) INBOX.',
- type=>'checkbox',
- },
- 'AccessModes' => { label=>'Access modes',
- default=>'Mail POP IMAP PWD WebMail WebSite',
- },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to a CommuniGate Pro mail server',
- 'options' => \%options,
- 'notes' => <<'END'
-Real time export to a
-<a href="http://www.stalker.com/CommuniGatePro/">CommuniGate Pro</a>
-mail server. The
-<a href="http://www.stalker.com/CGPerl/">CommuniGate Pro Perl Interface</a>
-must be installed as CGP::CLI.
-END
-);
-
-sub rebless { shift; }
-
-sub export_username {
- my($self, $svc_acct) = (shift, shift);
- $svc_acct->email;
-}
-
-sub _export_insert {
- my( $self, $svc_acct ) = (shift, shift);
- my @options = ( $svc_acct->svcnum, 'CreateAccount',
- 'accountName' => $self->export_username($svc_acct),
- 'accountType' => $self->option('accountType'),
- 'AccessModes' => $self->option('AccessModes'),
- 'RealName' => $svc_acct->finger,
- 'Password' => $svc_acct->_password,
- );
- push @options, 'MaxAccountSize' => $svc_acct->quota if $svc_acct->quota;
- push @options, 'externalFlag' => $self->option('externalFlag')
- if $self->option('externalFlag');
-
- $self->communigate_pro_queue( @options );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't (yet) change username with CommuniGate Pro"
- if $old->username ne $new->username;
- return "can't (yet) change domain with CommuniGate Pro"
- if $self->export_username($old) ne $self->export_username($new);
- return "can't (yet) change GECOS with CommuniGate Pro"
- if $old->finger ne $new->finger;
- return "can't (yet) change quota with CommuniGate Pro"
- if $old->quota ne $new->quota;
- return '' unless $old->username ne $new->username
- || $old->_password ne $new->_password
- || $old->finger ne $new->finger
- || $old->quota ne $new->quota;
-
- return '' if '*SUSPENDED* '. $old->_password eq $new->_password;
-
- #my $err_or_queue = $self->communigate_pro_queue( $new->svcnum,'RenameAccount',
- # $old->email, $new->email );
- #return $err_or_queue unless ref($err_or_queue);
- #my $jobnum = $err_or_queue->jobnum;
-
- $self->communigate_pro_queue( $new->svcnum, 'SetAccountPassword',
- $self->export_username($new), $new->_password )
- if $new->_password ne $old->_password;
-
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $self->communigate_pro_queue( $svc_acct->svcnum, 'DeleteAccount',
- $self->export_username($svc_acct),
- );
-}
-
-sub _export_suspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->communigate_pro_queue( $svc_acct->svcnum, 'UpdateAccountSettings',
- 'accountName' => $self->export_username($svc_acct),
- 'AccessModes' => 'Mail',
- );
-}
-
-sub _export_unsuspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->communigate_pro_queue( $svc_acct->svcnum, 'UpdateAccountSettings',
- 'accountName' => $self->export_username($svc_acct),
- 'AccessModes' => $self->option('AccessModes'),
- );
-}
-
-sub communigate_pro_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my @kludge_methods = qw(CreateAccount UpdateAccountSettings);
- my $sub = 'communigate_pro_command';
- $sub = $method if grep { $method eq $_ } @kludge_methods;
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::communigate_pro::$sub",
- };
- $queue->insert(
- $self->machine,
- $self->option('port'),
- $self->option('login'),
- $self->option('password'),
- $method,
- @_,
- );
-
-}
-
-sub CreateAccount {
- my( $machine, $port, $login, $password, $method, %args ) = @_;
- my $accountName = delete $args{'accountName'};
- my $accountType = delete $args{'accountType'};
- my $externalFlag = delete $args{'externalFlag'};
- $args{'AccessModes'} = [ split(' ', $args{'AccessModes'}) ];
- my @args = ( accountName => $accountName,
- accountType => $accountType,
- settings => \%args,
- );
- #externalFlag => $externalFlag,
- push @args, externalFlag => $externalFlag if $externalFlag;
-
- communigate_pro_command( $machine, $port, $login, $password, $method, @args );
-
-}
-
-sub UpdateAccountSettings {
- my( $machine, $port, $login, $password, $method, %args ) = @_;
- my $accountName = delete $args{'accountName'};
- $args{'AccessModes'} = [ split(' ', $args{'AccessModes'}) ];
- @args = ( $accountName, \%args );
- communigate_pro_command( $machine, $port, $login, $password, $method, @args );
-}
-
-sub communigate_pro_command { #subroutine, not method
- my( $machine, $port, $login, $password, $method, @args ) = @_;
-
- eval "use CGP::CLI";
-
- my $cli = new CGP::CLI( {
- 'PeerAddr' => $machine,
- 'PeerPort' => $port,
- 'login' => $login,
- 'password' => $password,
- } ) or die "Can't login to CGPro: $CGP::ERR_STRING\n";
-
- $cli->$method(@args) or die "CGPro error: ". $cli->getErrMessage;
-
- $cli->Logout or die "Can't logout of CGPro: $CGP::ERR_STRING\n";
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/communigate_pro_singledomain.pm b/FS/FS/part_export/communigate_pro_singledomain.pm
deleted file mode 100644
index e25043f..0000000
--- a/FS/FS/part_export/communigate_pro_singledomain.pm
+++ /dev/null
@@ -1,37 +0,0 @@
-package FS::part_export::communigate_pro_singledomain;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::communigate_pro;
-
-@ISA = qw(FS::part_export::communigate_pro);
-
-tie my %options, 'Tie::IxHash', %FS::part_export::communigate_pro::options,
- 'domain' => { label=>'Domain', },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' =>
- 'Real-time export to a CommuniGate Pro mail server, one domain only',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-Real time export to a
-<a href="http://www.stalker.com/CommuniGatePro/">CommuniGate Pro</a>
-mail server. This is an unusual export to CommuniGate Pro that forces all
-accounts into a single domain. As CommuniGate Pro supports multiple domains,
-unless you have a specific reason for using this export, you probably want to
-use the communigate_pro export instead. The
-<a href="http://www.stalker.com/CGPerl/">CommuniGate Pro Perl Interface</a>
-must be installed as CGP::CLI.
-END
-);
-
-sub export_username {
- my($self, $svc_acct) = (shift, shift);
- $svc_acct->username. '@'. $self->option('domain');
-}
-
-1;
-
diff --git a/FS/FS/part_export/cp.pm b/FS/FS/part_export/cp.pm
deleted file mode 100644
index 96fa437..0000000
--- a/FS/FS/part_export/cp.pm
+++ /dev/null
@@ -1,161 +0,0 @@
-package FS::part_export::cp;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'port' => { label=>'Port number' },
- 'username' => { label=>'Username' },
- 'password' => { label=>'Password' },
- 'domain' => { label=>'Domain' },
- 'workgroup' => { label=>'Default Workgroup' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to Critical Path Account Provisioning Protocol',
- 'options'=> \%options,
- 'notes' => <<'END'
-Real-time export to
-<a href="http://www.cp.net/">Critial Path Account Provisioning Protocol</a>.
-Requires installation of
-<a href="http://search.cpan.org/dist/Net-APP">Net::APP</a>
-from CPAN.
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my( $self, $svc_acct ) = (shift, shift);
- $self->cp_queue( $svc_acct->svcnum, 'create_mailbox',
- 'Mailbox' => $svc_acct->username,
- 'Password' => $svc_acct->_password,
- 'Workgroup' => $self->option('workgroup'),
- 'Domain' => $svc_acct->domain,
- );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't change domain with Critical Path"
- if $old->domain ne $new->domain;
- return "can't change username with Critical Path" #CP no longer supports this
- if $old->username ne $new->username;
- return '' unless $old->_password ne $new->_password;
- $self->cp_queue( $new->svcnum, 'replace', $new->domain,
- $old->username, $new->username, $old->_password, $new->_password );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $self->cp_queue( $svc_acct->svcnum, 'delete_mailbox',
- 'Mailbox' => $svc_acct->username,
- 'Domain' => $svc_acct->domain,
- );
-}
-
-sub _export_suspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->cp_queue( $svc_acct->svcnum, 'set_mailbox_status',
- 'Mailbox' => $svc_acct->username,
- 'Domain' => $svc_acct->domain,
- 'OTHER' => 'T',
- 'OTHER_SUSPEND' => 'T',
- );
-}
-
-sub _export_unsuspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->cp_queue( $svc_acct->svcnum, 'set_mailbox_status',
- 'Mailbox' => $svc_acct->username,
- 'Domain' => $svc_acct->domain,
- 'PAYMENT' => 'F',
- 'OTHER' => 'F',
- 'OTHER_SUSPEND' => 'F',
- 'OTHER_BOUNCE' => 'F',
- );
-}
-
-sub cp_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => 'FS::part_export::cp::cp_command',
- };
- $queue->insert(
- $self->machine,
- $self->option('port'),
- $self->option('username'),
- $self->option('password'),
- $self->option('domain'),
- $method,
- @_,
- );
-}
-
-sub cp_command { #subroutine, not method
- my($host, $port, $username, $password, $login_domain, $method, @args) = @_;
-
- #quelle hack
- if ( $method eq 'replace' ) {
-
- my( $domain, $old_username, $new_username, $old_password, $new_password)
- = @args;
-
- if ( $old_username ne $new_username ) {
- cp_command($host, $port, $username, $password, 'rename_mailbox',
- Domain => $domain,
- Old_Mailbox => $old_username,
- New_Mailbox => $new_username,
- );
- }
-
- #my $other = 'F';
- if ( $new_password =~ /^\*SUSPENDED\* (.*)$/ ) {
- $new_password = $1;
- # $other = 'T';
- }
- #cp_command($host, $port, $username, $password, $login_domain,
- # 'set_mailbox_status',
- # Domain => $domain,
- # Mailbox => $new_username,
- # Other => $other,
- # Other_Bounce => $other,
- #);
-
- if ( $old_password ne $new_password ) {
- cp_command($host, $port, $username, $password, $login_domain,
- 'change_mailbox',
- Domain => $domain,
- Mailbox => $new_username,
- Password => $new_password,
- );
- }
-
- return;
- }
- #eof quelle hack
-
- eval "use Net::APP;";
-
- my $app = new Net::APP (
- "$host:$port",
- User => $username,
- Password => $password,
- Domain => $login_domain,
- Timeout => 60,
- #Debug => 1,
- ) or die "$@\n";
-
- $app->$method( @args );
-
- die $app->message."\n" unless $app->ok;
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/cpanel.pm b/FS/FS/part_export/cpanel.pm
deleted file mode 100644
index 0ad00df..0000000
--- a/FS/FS/part_export/cpanel.pm
+++ /dev/null
@@ -1,192 +0,0 @@
-package FS::part_export::cpanel;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote access username' },
- 'accesshash' => { label=>'Remote access key', type=>'textarea' },
- 'debug' => { label=>'Enable debugging', type=>'checkbox' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to Cpanel control panel.',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => 'Real time export to a the <a href="http://www.cpanel.net/">Cpanel</a> control panel software. Service definition names are exported as Cpanel packages. Requires installation of the Cpanel::Accounting perl module distributed with Cpanel.',
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
- $err_or_queue = $self->cpanel_queue( $svc_acct->svcnum, 'insert',
- $svc_acct->domain,
- $svc_acct->username,
- $svc_acct->_password,
- $svc_acct->cust_svc->part_svc->svc,
- );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't change username with cpanel"
- if $old->username ne $new->username;
- return "can't change password with cpanel"
- if $old->_passsword ne $new->_password;
- return "can't change domain with cpanel"
- if $old->domain ne $new->domain;
-
- '';
-
- ##return '' unless $old->_password ne $new->_password;
- #$err_or_queue = $self->cpanel_queue( $new->svcnum,
- # 'replace', $new->username, $new->_password );
- #ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $err_or_queue = $self->cpanel_queue( $svc_acct->svcnum,
- 'delete', $svc_acct->username
- );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_suspend {
- my( $self, $svc_acct ) = (shift, shift);
- $err_or_queue = $self->cpanel_queue( $svc_acct->svcnum,
- 'suspend', $svc_acct->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_unsuspend {
- my( $self, $svc_acct ) = (shift, shift);
- $err_or_queue = $self->cpanel_queue( $svc_acct->svcnum,
- 'unsuspend', $svc_acct->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-
-sub cpanel_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::cpanel::cpanel_$method",
- };
- $queue->insert(
- $self->machine,
- $self->option('user'),
- $self->option('accesshash'),
- $self->option('debug'),
- @_
- ) or $queue;
-}
-
-
-sub cpanel_insert { #subroutine, not method
- my( $machine, $user, $accesshash, $debug ) = splice(@_,0,4);
-
-# my $whm = cpanel_connect($machine, $user, $accesshash, $debug);
-# warn " cpanel->createacct ". join(', ', @_). "\n"
-# if $debug;
-# my $response = $whm->createacct(@_);
-# die $whm->{'error'} if $whm->{'error'};
-# warn " cpanel response: $response\n"
-# if $debug;
-
- warn "cpanel_insert: attempting web interface to add POP"
- if $debug;
-
- my($domain, $username, $password, $svc) = @_;
-
- use LWP::UserAgent;
- use HTTP::Request::Common qw(POST);
-
- my $url =
- "http://$user:$accesshash\@$domain:2082/frontend/x/mail/addpop2.html";
-
- my $ua = LWP::UserAgent->new();
-
- #$req->authorization_basic($user, $accesshash);
-
- my $res = $ua->request(
- POST( $url,
- [
- 'email' => $username,
- 'domain' => $domain,
- 'password' => $password,
- 'quota' => 10, #?
- ]
- )
- );
-
- die "Error submitting data to $url: ". $res->status_line
- unless $res->is_success;
-
- die "Username in use"
- if $res->content =~ /exists/;
-
- die "Account not created: ". $res->content
- if $res->content =~ /failure/;
-
-}
-
-#sub cpanel_replace { #subroutine, not method
-#}
-
-sub cpanel_delete { #subroutine, not method
- my( $machine, $user, $accesshash, $debug ) = splice(@_,0,4);
- my $whm = cpanel_connect($machine, $user, $accesshash, $debug);
- warn " cpanel->killacct ". join(', ', @_). "\n"
- if $debug;
- my $response = $whm->killacct(shift);
- die $whm->{'error'} if $whm->{'error'};
- warn " cpanel response: $response\n"
- if $debug;
-}
-
-sub cpanel_suspend { #subroutine, not method
- my( $machine, $user, $accesshash, $debug ) = splice(@_,0,4);
- my $whm = cpanel_connect($machine, $user, $accesshash, $debug);
- warn " cpanel->suspend ". join(', ', @_). "\n"
- if $debug;
- my $response = $whm->suspend(shift);
- die $whm->{'error'} if $whm->{'error'};
- warn " cpanel response: $response\n"
- if $debug;
-}
-
-sub cpanel_unsuspend { #subroutine, not method
- my( $machine, $user, $accesshash, $debug ) = splice(@_,0,4);
- my $whm = cpanel_connect($machine, $user, $accesshash, $debug);
- warn " cpanel->unsuspend ". join(', ', @_). "\n"
- if $debug;
- my $response = $whm->unsuspend(shift);
- die $whm->{'error'} if $whm->{'error'};
- warn " cpanel response: $response\n"
- if $debug;
-}
-
-sub cpanel_connect {
- my( $host, $user, $accesshash, $debug ) = @_;
-
- eval "use Cpanel::Accounting;";
- die $@ if $@;
-
- warn "creating new Cpanel::Accounting connection to $user@$host\n"
- if $debug;
-
- my $whm = new Cpanel::Accounting;
- $whm->{'host'} = $host;
- $whm->{'user'} = $user;
- $whm->{'accesshash'} = $accesshash;
- $whm->{'usessl'} = 1;
-
- $whm;
-}
diff --git a/FS/FS/part_export/cyrus.pm b/FS/FS/part_export/cyrus.pm
deleted file mode 100644
index 84c9e5a..0000000
--- a/FS/FS/part_export/cyrus.pm
+++ /dev/null
@@ -1,120 +0,0 @@
-package FS::part_export::cyrus;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'server' => { label=>'IMAP server' },
- 'username' => { label=>'Admin username' },
- 'password' => { label=>'Admin password' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to Cyrus IMAP server',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-Integration with
-<a href="http://asg.web.cmu.edu/cyrus/imapd/">Cyrus IMAP Server</a>.
-Cyrus::IMAP::Admin should be installed locally and the connection to the
-server secured. <B>svc_acct.quota</B>, if available, is used to set the
-Cyrus quota.
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
- $self->cyrus_queue( $svc_acct->svcnum, 'insert',
- $svc_acct->username, $svc_acct->quota );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't change username using Cyrus"
- if $old->username ne $new->username;
- return '';
-# #return '' unless $old->_password ne $new->_password;
-# $self->cyrus_queue( $new->svcnum,
-# 'replace', $new->username, $new->_password );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $self->cyrus_queue( $svc_acct->svcnum, 'delete',
- $svc_acct->username );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub cyrus_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::cyrus::cyrus_$method",
- };
- $queue->insert(
- $self->option('server'),
- $self->option('username'),
- $self->option('password'),
- @_
- );
-}
-
-sub cyrus_insert { #subroutine, not method
- my $client = cyrus_connect(shift, shift, shift);
- my( $username, $quota ) = @_;
- my $rc = $client->create("user.$username");
- my $error = $client->error;
- die "creating user.$username: $error" if $error;
-
- $rc = $client->setacl("user.$username", $username => 'all' );
- $error = $client->error;
- die "setacl user.$username: $error" if $error;
-
- if ( $quota ) {
- $rc = $client->setquota("user.$username", 'STORAGE' => $quota );
- $error = $client->error;
- die "setquota user.$username: $error" if $error;
- }
-
-}
-
-sub cyrus_delete { #subroutine, not method
- my ( $server, $admin_username, $password_username, $username ) = @_;
- my $client = cyrus_connect($server, $admin_username, $password_username);
-
- my $rc = $client->setacl("user.$username", $admin_username => 'all' );
- my $error = $client->error;
- die $error if $error;
-
- $rc = $client->delete("user.$username");
- $error = $client->error;
- die $error if $error;
-}
-
-sub cyrus_connect {
-
- my( $server, $admin_username, $admin_password ) = @_;
-
- eval "use Cyrus::IMAP::Admin;";
-
- my $client = Cyrus::IMAP::Admin->new($server);
- $client->authenticate(
- -user => $admin_username,
- -mechanism => "login",
- -password => $admin_password,
- );
- $client;
-
-}
-
-#sub cyrus_replace { #subroutine, not method
-#}
-
-1;
-
diff --git a/FS/FS/part_export/domain_shellcommands.pm b/FS/FS/part_export/domain_shellcommands.pm
deleted file mode 100644
index 994c113..0000000
--- a/FS/FS/part_export/domain_shellcommands.pm
+++ /dev/null
@@ -1,165 +0,0 @@
-package FS::part_export::domain_shellcommands;
-
-use strict;
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'useradd' => { label=>'Insert command',
- default=>'',
- },
- 'userdel' => { label=>'Delete command',
- default=>'',
- },
- 'usermod' => { label=>'Modify command',
- default=>'',
- },
-;
-
-%info = (
- 'svc' => 'svc_domain',
- 'desc' => 'Run remote commands via SSH, for domains (qmail, ISPMan).',
- 'options' => \%options,
- 'notes' => <<'END'
-Run remote commands via SSH, for domains. You will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>.
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <LI>
- <INPUT TYPE="button" VALUE="qmail catchall .qmail-domain-default maintenance" onClick='
- this.form.useradd.value = "[ \"$uid\" -a \"$gid\" -a \"$dir\" -a \"$qdomain\" ] && [ -e $dir/.qmail-$qdomain-default ] || { touch $dir/.qmail-$qdomain-default; chown $uid:$gid $dir/.qmail-$qdomain-default; }";
- this.form.userdel.value = "";
- this.form.usermod.value = "";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="ISPMan CLI" onClick='
- this.form.useradd.value = "/usr/local/ispman/bin/ispman.addDomain -d $domain changeme";
- this.form.userdel.value = "/usr/local/ispman/bin/ispman.deleteDomain -d $domain";
- this.form.usermod.value = "";
- '>
-</UL>
-The following variables are available for interpolation (prefixed with <code>new_</code> or <code>old_</code> for replace operations):
-<UL>
- <LI><code>$domain</code>
- <LI><code>$qdomain</code> - domain with periods replaced by colons
- <LI><code>$uid</code> - of catchall account
- <LI><code>$gid</code> - of catchall account
- <LI><code>$dir</code> - home directory of catchall account
- <LI>All other fields in
- <a href="../docs/schema.html#svc_domain">svc_domain</a> are also available.
-</UL>
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self) = shift;
- $self->_export_command('useradd', @_);
-}
-
-sub _export_delete {
- my($self) = shift;
- $self->_export_command('userdel', @_);
-}
-
-sub _export_command {
- my ( $self, $action, $svc_domain) = (shift, shift, shift);
- my $command = $self->option($action);
- return '' if $command =~ /^\s*$/;
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${$_} = $svc_domain->getfield($_) foreach $svc_domain->fields;
- }
- ( $qdomain = $domain ) =~ s/\./:/g; #see dot-qmail(5): EXTENSION ADDRESSES
-
- if ( $svc_domain->catchall ) {
- no strict 'refs';
- my $svc_acct = $svc_domain->catchall_svc_acct;
- ${$_} = $svc_acct->getfield($_) foreach qw(uid gid dir);
- } else {
- no strict 'refs';
- ${$_} = '' foreach qw(uid gid dir);
- }
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $svc_domain->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-sub _export_replace {
- my($self, $new, $old ) = (shift, shift, shift);
- my $command = $self->option('usermod');
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${"old_$_"} = $old->getfield($_) foreach $old->fields;
- ${"new_$_"} = $new->getfield($_) foreach $new->fields;
- }
- ( $old_qdomain = $old_domain ) =~ s/\./:/g; #see dot-qmail(5): EXTENSION ADDRESSES
- ( $new_qdomain = $new_domain ) =~ s/\./:/g; #see dot-qmail(5): EXTENSION ADDRESSES
-
- {
- no strict 'refs';
-
- if ( $old->catchall ) {
- my $svc_acct = $old->catchall_svc_acct;
- ${"old_$_"} = $svc_acct->getfield($_) foreach qw(uid gid dir);
- } else {
- ${"old_$_"} = '' foreach qw(uid gid dir);
- }
- if ( $new->catchall ) {
- my $svc_acct = $new->catchall_svc_acct;
- ${"new_$_"} = $svc_acct->getfield($_) foreach qw(uid gid dir);
- } else {
- ${"new_$_"} = '' foreach qw(uid gid dir);
- }
-
- }
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $new->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub shellcommands_queue {
- my( $self, $svcnum ) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::domain_shellcommands::ssh_cmd",
- };
- $queue->insert( @_ );
-}
-
-sub ssh_cmd { #subroutine, not method
- use Net::SSH '0.08';
- &Net::SSH::ssh_cmd( { @_ } );
-}
-
-#sub shellcommands_insert { #subroutine, not method
-#}
-#sub shellcommands_replace { #subroutine, not method
-#}
-#sub shellcommands_delete { #subroutine, not method
-#}
-
-1;
-
diff --git a/FS/FS/part_export/everyone_net.pm b/FS/FS/part_export/everyone_net.pm
deleted file mode 100644
index e04318e..0000000
--- a/FS/FS/part_export/everyone_net.pm
+++ /dev/null
@@ -1,132 +0,0 @@
-package FS::part_export::everyone_net;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'clientID' => { label=>'clientID' },
- 'password' => { label=>'Password' },
- #'workgroup' => { label=>'Default Workgroup' },
- 'debug' => { label=>'Enable debugging',
- type=>'checkbox' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to Everyone.net outsourced mail service',
- 'options'=> \%options,
- 'notes' => <<'END'
-Real-time export to
-<a href="http://www.cp.net/">Everyone.net</a> via the XRC Remote API.
-Requires installation of
-<a href="http://search.cpan.org/dist/Net-XRC">Net::XRC</a>
-from CPAN.
-END
-);
-
-sub rebless { shift; }
-
-# experiement: want the status of these right away (don't want account to
-# create or whatever and then get error in the queue from dup username or
-# something), so no queueing
-
-sub _export_insert {
- my( $self, $svc_acct ) = (shift, shift);
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- $self->_xrc_command( 'createUser',
- $svc_acct->domain,
- [],
- string($svc_acct->username),
- string($svc_acct->_password),
- );
-}
-
-sub _xrc_command {
- my( $self, $method, $domain, @args ) = @_;
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- local($Net::XRC::DEBUG) = 1
- if $self->option('debug');
-
- my $xrc = new Net::XRC (
- 'clientID' => $self->option('clientID'),
- 'password' => $self->option('password'),
- );
-
- my $dresponse = $xrc->lookupMXReadyClientIDByEmailDomain( string($domain) );
- return $dresponse->error unless $dresponse->is_success;
- my $clientID = $dresponse->content;
- return "clientID for domain $domain not found"
- if $clientID == -1;
-
- my $response = $xrc->$method($clientID, @args);
- return $response->error unless $response->is_success;
- '';
-
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- return "can't change domain with Everyone.net"
- if $old->domain ne $new->domain;
- return "can't change username with Everyone.net"
- if $old->username ne $new->username;
- return '' unless $old->_password ne $new->_password;
-
- $self->_xrc_command( 'setUserPassword',
- $new->domain,
- string($new->username),
- string($new->_password),
- );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- $self->_xrc_command( 'deleteUser',
- $svc_acct->domain,
- string($svc_acct->username),
- );
-}
-
-sub _export_suspend {
- my( $self, $svc_acct ) = (shift, shift);
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- $self->_xrc_command( 'suspendUser',
- $svc_acct->domain,
- string($svc_acct->username),
- );
-}
-
-sub _export_unsuspend {
- my( $self, $svc_acct ) = (shift, shift);
-
- eval "use Net::XRC qw(:types);";
- return $@ if $@;
-
- $self->_xrc_command( 'unsuspendUser',
- $svc_acct->domain,
- string($svc_acct->username),
- );
-}
-
-1;
-
diff --git a/FS/FS/part_export/forward_shellcommands.pm b/FS/FS/part_export/forward_shellcommands.pm
deleted file mode 100644
index cee24e4..0000000
--- a/FS/FS/part_export/forward_shellcommands.pm
+++ /dev/null
@@ -1,182 +0,0 @@
-package FS::part_export::forward_shellcommands;
-
-use strict;
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'useradd' => { label=>'Insert command',
- default=>'',
- },
- 'userdel' => { label=>'Delete command',
- default=>'',
- },
- 'usermod' => { label=>'Modify command',
- default=>'',
- },
-;
-
-%info = (
- 'svc' => 'svc_forward',
- 'desc' => 'Run remote commands via SSH, for forwards',
- 'options' => \%options,
- 'notes' => <<'END'
-Run remote commands via SSH, for forwards. You will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>.
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <LI>
- <INPUT TYPE="button" VALUE="text vpopmail maintenance" onClick='
- this.form.useradd.value = "[ -d /home/vpopmail/domains/$domain/$username ] && { echo \"$destination\" > /home/vpopmail/domains/$domain/$username/.qmail; chown vpopmail:vchkpw /home/vpopmail/domains/$domain/$username/.qmail; }";
- this.form.userdel.value = "rm /home/vpopmail/domains/$domain/$username/.qmail";
- this.form.usermod.value = "mv /home/vpopmail/domains/$old_domain/$old_username/.qmail /home/vpopmail/domains/$new_domain/$new_username; [ \"$old_destination\" != \"$new_destination\" ] && { echo \"$new_destination\" > /home/vpopmail/domains/$new_domain/$new_username/.qmail; chown vpopmail:vchkpw /home/vpopmail/domains/$new_domain/$new_username/.qmail; }";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="ISPMan CLI" onClick='
- this.form.useradd.value = "";
- this.form.userdel.value = "";
- this.form.usermod.value = "";
- '>
-</UL>
-The following variables are available for interpolation (prefixed with
-<code>new_</code> or <code>old_</code> for replace operations):
-<UL>
- <LI><code>$username</code> - username of forward source
- <LI><code>$domain</code> - domain of forward source
- <LI><code>$source</code> - forward source ($username@$domain)
- <LI><code>$destination</code> - forward destination
- <LI>All other fields in <a href="../docs/schema.html#svc_forward">svc_forward</a> are also available.
-</UL>
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self) = shift;
- $self->_export_command('useradd', @_);
-}
-
-sub _export_delete {
- my($self) = shift;
- $self->_export_command('userdel', @_);
-}
-
-sub _export_command {
- my ( $self, $action, $svc_forward ) = (shift, shift, shift);
- my $command = $self->option($action);
- return '' if $command =~ /^\s*$/;
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${$_} = $svc_forward->getfield($_) foreach $svc_forward->fields;
- }
-
- if ( $svc_forward->srcsvc ) {
- my $srcsvc_acct = $svc_forward->srcsvc_acct;
- $username = $srcsvc_acct->username;
- $domain = $srcsvc_acct->domain;
- $source = $srcsvc_acct->email;
- } else {
- $source = $svc_forward->src;
- ( $username, $domain ) = split(/\@/, $source);
- }
-
- if ($svc_forward->dstsvc) {
- $destination = $svc_forward->dstsvc_acct->email;
- } else {
- $destination = $svc_forward->dst;
- }
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $svc_forward->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- my $command = $self->option('usermod');
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${"old_$_"} = $old->getfield($_) foreach $old->fields;
- ${"new_$_"} = $new->getfield($_) foreach $new->fields;
- }
-
- if ( $old->srcsvc ) {
- my $srcsvc_acct = $old->srcsvc_acct;
- $old_username = $srcsvc_acct->username;
- $old_domain = $srcsvc_acct->domain;
- $old_source = $srcsvc_acct->email;
- } else {
- $old_source = $old->src;
- ( $old_username, $old_domain ) = split(/\@/, $old_source);
- }
-
- if ( $old->dstsvc ) {
- $old_destination = $old->dstsvc_acct->email;
- } else {
- $old_destination = $old->dst;
- }
-
- if ( $new->srcsvc ) {
- my $srcsvc_acct = $new->srcsvc_acct;
- $new_username = $srcsvc_acct->username;
- $new_domain = $srcsvc_acct->domain;
- $new_source = $srcsvc_acct->email;
- } else {
- $new_source = $new->src;
- ( $new_username, $new_domain ) = split(/\@/, $new_source);
- }
-
- if ( $new->dstsvc ) {
- $new_destination = $new->dstsvc_acct->email;
- } else {
- $new_destination = $new->dst;
- }
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $new->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub shellcommands_queue {
- my( $self, $svcnum ) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::forward_shellcommands::ssh_cmd",
- };
- $queue->insert( @_ );
-}
-
-sub ssh_cmd { #subroutine, not method
- use Net::SSH '0.08';
- &Net::SSH::ssh_cmd( { @_ } );
-}
-
-#sub shellcommands_insert { #subroutine, not method
-#}
-#sub shellcommands_replace { #subroutine, not method
-#}
-#sub shellcommands_delete { #subroutine, not method
-#}
-
-1;
-
diff --git a/FS/FS/part_export/http.pm b/FS/FS/part_export/http.pm
deleted file mode 100644
index 55d8329..0000000
--- a/FS/FS/part_export/http.pm
+++ /dev/null
@@ -1,134 +0,0 @@
-package FS::part_export::http;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'method' => { label =>'Method',
- type =>'select',
- #options =>[qw(POST GET)],
- options =>[qw(POST)],
- default =>'POST' },
- 'url' => { label => 'URL', default => 'http://', },
- 'insert_data' => {
- label => 'Insert data',
- type => 'textarea',
- default => join("\n",
- 'DomainName $svc_x->domain',
- 'Email ( grep { $_ !~ /^(POST|FAX)$/ } $svc_x->cust_svc->cust_pkg->cust_main->invoicing_list)[0]',
- 'test 1',
- 'reseller $svc_x->cust_svc->cust_pkg->part_pkg->pkg =~ /reseller/i',
- ),
- },
- 'delete_data' => {
- label => 'Delete data',
- type => 'textarea',
- default => join("\n",
- ),
- },
- 'replace_data' => {
- label => 'Replace data',
- type => 'textarea',
- default => join("\n",
- ),
- },
-;
-
-%info = (
- 'svc' => 'svc_domain',
- 'desc' => 'Send an HTTP or HTTPS GET or POST request',
- 'options' => \%options,
- 'notes' => <<'END'
-Send an HTTP or HTTPS GET or POST to the specified URL. For HTTPS support,
-<a href="http://search.cpan.org/dist/Crypt-SSLeay">Crypt::SSLeay</a>
-or <a href="http://search.cpan.org/dist/IO-Socket-SSL">IO::Socket::SSL</a>
-is required.
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my $self = shift;
- $self->_export_command('insert', @_);
-}
-
-sub _export_delete {
- my $self = shift;
- $self->_export_command('delete', @_);
-}
-
-sub _export_command {
- my( $self, $action, $svc_x ) = ( shift, shift, shift );
-
- return unless $self->option("${action}_data");
-
- $self->http_queue( $svc_x->svcnum,
- $self->option('method'),
- $self->option('url'),
- map {
- /^\s*(\S+)\s+(.*)$/ or /()()/;
- my( $field, $value_expression ) = ( $1, $2 );
- my $value = eval $value_expression;
- die $@ if $@;
- ( $field, $value );
- } split(/\n/, $self->option("${action}_data") )
- );
-
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = ( shift, shift, shift );
-
- return unless $self->option('replace_data');
-
- $self->http_queue( $svc_x->svcnum,
- $self->option('method'),
- $self->option('url'),
- map {
- /^\s*(\S+)\s+(.*)$/ or /()()/;
- my( $field, $value_expression ) = ( $1, $2 );
- die $@ if $@;
- ( $field, $value );
- } split(/\n/, $self->option('replace_data') )
- );
-
-}
-
-sub http_queue {
- my($self, $svcnum) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::http::http",
- };
- $queue->insert( @_ );
-}
-
-sub http {
- my($method, $url, @data) = @_;
-
- $method = lc($method);
-
- eval "use LWP::UserAgent;";
- die "using LWP::UserAgent: $@" if $@;
- eval "use HTTP::Request::Common;";
- die "using HTTP::Request::Common: $@" if $@;
-
- my $ua = LWP::UserAgent->new;
-
- #my $response = $ua->$method(
- # $url, \%data,
- # 'Content-Type'=>'application/x-www-form-urlencoded'
- #);
- my $req = HTTP::Request::Common::POST( $url, \@data );
- my $response = $ua->request($req);
-
- die $response->error_as_HTML if $response->is_error;
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/infostreet.pm b/FS/FS/part_export/infostreet.pm
deleted file mode 100644
index ef16c7c..0000000
--- a/FS/FS/part_export/infostreet.pm
+++ /dev/null
@@ -1,277 +0,0 @@
-package FS::part_export::infostreet;
-
-use vars qw(@ISA %info %infostreet2cust_main $DEBUG);
-use Tie::IxHash;
-use FS::UID qw(dbh);
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'url' => { label=>'XML-RPC Access URL', },
- 'login' => { label=>'InfoStreet login', },
- 'password' => { label=>'InfoStreet password', },
- 'groupID' => { label=>'InfoStreet groupID', },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to InfoStreet streetSmartAPI',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-Real-time export to
-<a href="http://www.infostreet.com/">InfoStreet</a> streetSmartAPI.
-Requires installation of
-<a href="http://search.cpan.org/dist/Frontier-Client">Frontier::Client</a> from CPAN.
-END
-);
-
-$DEBUG = 0;
-
-%infostreet2cust_main = (
- 'firstName' => 'first',
- 'lastName' => 'last',
- 'address1' => 'address1',
- 'address2' => 'address2',
- 'city' => 'city',
- 'state' => 'state',
- 'zipCode' => 'zip',
- 'country' => 'country',
- 'phoneNumber' => 'daytime',
- 'faxNumber' => 'night', #noment-request...
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my( $self, $svc_acct ) = (shift, shift);
- my $cust_main = $svc_acct->cust_svc->cust_pkg->cust_main;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $err_or_queue = $self->infostreet_err_or_queue( $svc_acct->svcnum,
- 'createUser', $svc_acct->username, $svc_acct->_password );
- return $err_or_queue unless ref($err_or_queue);
- my $jobnum = $err_or_queue->jobnum;
-
- my %contact_info = ( map {
- $_ => $cust_main->getfield( $infostreet2cust_main{$_} );
- } keys %infostreet2cust_main );
-
- my @emails = grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list;
- $contact_info{'email'} = $emails[0] if @emails;
-
- #this one is kinda noment-specific
- $contact_info{'organization'} = $cust_main->agent->agent;
-
- $err_or_queue = $self->infostreet_queueContact( $svc_acct->svcnum,
- $svc_acct->username, %contact_info );
- return $err_or_queue unless ref($err_or_queue);
-
- # If a quota has been specified set the quota because it is not the default
- $err_or_queue = $self->infostreet_queueSetQuota( $svc_acct->svcnum,
- $svc_acct->username, $svc_acct->quota ) if $svc_acct->quota;
- return $err_or_queue unless ref($err_or_queue);
-
- my $error = $err_or_queue->depend_insert( $jobnum );
- return $error if $error;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't change username with InfoStreet"
- if $old->username ne $new->username;
-
- # If the quota has changed then do the export to setQuota
- my $err_or_queue = $self->infostreet_queueSetQuota( $new->svcnum, $new->username, $new->quota )
- if ( $old->quota != $new->quota );
- return $err_or_queue unless ref($err_or_queue);
-
-
- return '' unless $old->_password ne $new->_password;
- $self->infostreet_queue( $new->svcnum,
- 'passwd', $new->username, $new->_password );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $self->infostreet_queue( $svc_acct->svcnum,
- 'purgeAccount,releaseUsername', $svc_acct->username );
-}
-
-sub _export_suspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->infostreet_queue( $svc_acct->svcnum,
- 'setStatus', $svc_acct->username, 'DISABLED' );
-}
-
-sub _export_unsuspend {
- my( $self, $svc_acct ) = (shift, shift);
- $self->infostreet_queue( $svc_acct->svcnum,
- 'setStatus', $svc_acct->username, 'ACTIVE' );
-}
-
-sub infostreet_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => 'FS::part_export::infostreet::infostreet_command',
- };
- $queue->insert(
- $self->option('url'),
- $self->option('login'),
- $self->option('password'),
- $self->option('groupID'),
- $method,
- @_,
- );
-}
-
-#ick false laziness
-sub infostreet_err_or_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => 'FS::part_export::infostreet::infostreet_command',
- };
- $queue->insert(
- $self->option('url'),
- $self->option('login'),
- $self->option('password'),
- $self->option('groupID'),
- $method,
- @_,
- ) or $queue;
-}
-
-sub infostreet_queueContact {
- my( $self, $svcnum ) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => 'FS::part_export::infostreet::infostreet_setContact',
- };
- $queue->insert(
- $self->option('url'),
- $self->option('login'),
- $self->option('password'),
- $self->option('groupID'),
- @_,
- ) or $queue;
-}
-
-sub infostreet_setContact {
- my($url, $is_username, $is_password, $groupID, $username, %contact_info) = @_;
- my $accountID = infostreet_command($url, $is_username, $is_password, $groupID,
- 'getAccountID', $username);
- foreach my $field ( keys %contact_info ) {
- infostreet_command($url, $is_username, $is_password, $groupID,
- 'setContactField', [ 'int'=>$accountID ], $field, $contact_info{$field} );
- }
-
-}
-
-sub infostreet_queueSetQuota {
-
- my( $self, $svcnum) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => 'FS::part_export::infostreet::infostreet_setQuota',
- };
-
- $queue->insert(
- $self->option('url'),
- $self->option('login'),
- $self->option('password'),
- $self->option('groupID'),
- @_,
- ) or $queue;
-
-}
-
-sub infostreet_setQuota {
- my($url, $is_username, $is_password, $groupID, $username, $quota) = @_;
- infostreet_command($url, $is_username, $is_password, $groupID, 'setQuota', $username, [ 'int'=> $quota ] );
-}
-
-
-sub infostreet_command { #subroutine, not method
- my($url, $username, $password, $groupID, $method, @args) = @_;
-
- warn "[FS::part_export::infostreet] $method ".join(' ', @args)."\n" if $DEBUG;
-
- #quelle hack
- if ( $method =~ /,/ ) {
- foreach my $part ( split(/,\s*/, $method) ) {
- infostreet_command($url, $username, $password, $groupID, $part, @args);
- }
- return;
- }
-
- eval "use Frontier::Client;";
- die $@ if $@;
-
- eval 'sub Frontier::RPC2::String::repr {
- my $self = shift;
- my $value = $$self;
- $value =~ s/([&<>\"])/$Frontier::RPC2::char_entities{$1}/ge;
- $value;
- }';
- die $@ if $@;
-
- my $conn = Frontier::Client->new( url => $url );
- my $key_result = $conn->call( 'authenticate', $username, $password, $groupID);
- my %key_result = _infostreet_parse($key_result);
- die $key_result{error} unless $key_result{success};
- my $key = $key_result{data};
-
- #my $result = $conn->call($method, $key, @args);
- my $result = $conn->call( $method, $key,
- map {
- if ( ref($_) ) {
- my( $type, $value) = @{$_};
- $conn->$type($value);
- } else {
- $conn->string($_);
- }
- } @args );
- my %result = _infostreet_parse($result);
- die $result{error} unless $result{success};
-
- $result->{data};
-
-}
-
-#sub infostreet_command_byid { #subroutine, not method;
-# my($url, $username, $password, $groupID, $method, @args ) = @_;
-#
-# infostreet_command
-#
-#}
-
-sub _infostreet_parse { #subroutine, not method
- my $arg = shift;
- map {
- my $value = $arg->{$_};
- #warn ref($value);
- $value = $value->value()
- if ref($value) && $value->isa('Frontier::RPC2::DataType');
- $_=>$value;
- } keys %$arg;
-}
-
-1;
-
diff --git a/FS/FS/part_export/ldap.pm b/FS/FS/part_export/ldap.pm
deleted file mode 100644
index 823d99d..0000000
--- a/FS/FS/part_export/ldap.pm
+++ /dev/null
@@ -1,294 +0,0 @@
-package FS::part_export::ldap;
-
-use vars qw(@ISA %info @saltset);
-use Tie::IxHash;
-use FS::Record qw( dbh );
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'dn' => { label=>'Root DN' },
- 'password' => { label=>'Root DN password' },
- 'userdn' => { label=>'User DN' },
- 'attributes' => { label=>'Attributes',
- type=>'textarea',
- default=>join("\n",
- 'uid $username',
- 'mail $username\@$domain',
- 'uidno $uid',
- 'gidno $gid',
- 'cn $first',
- 'sn $last',
- 'mailquota $quota',
- 'vmail',
- 'location',
- 'mailtag',
- 'mailhost',
- 'mailmessagestore $dir',
- 'userpassword $crypt_password',
- 'hint',
- 'answer $sec_phrase',
- 'objectclass top,person,inetOrgPerson',
- ),
- },
- 'radius' => { label=>'Export RADIUS attributes', type=>'checkbox', },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to LDAP',
- 'options' => \%options,
- 'notes' => <<'END'
-Real-time export to arbitrary LDAP attributes. Requires installation of
-<a href="http://search.cpan.org/dist/Net-LDAP">Net::LDAP</a> from CPAN.
-END
-);
-
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
-
- #false laziness w/shellcommands.pm
- {
- no strict 'refs';
- ${$_} = $svc_acct->getfield($_) foreach $svc_acct->fields;
- ${$_} = $svc_acct->$_() foreach qw( domain );
- my $cust_pkg = $svc_acct->cust_svc->cust_pkg;
- if ( $cust_pkg ) {
- my $cust_main = $cust_pkg->cust_main;
- ${$_} = $cust_main->getfield($_) foreach qw(first last);
- }
- }
- $crypt_password = ''; #surpress "used only once" warnings
- $crypt_password = '{crypt}'. crypt( $svc_acct->_password,
- $saltset[int(rand(64))].$saltset[int(rand(64))] );
-
- my $username_attrib;
- my %attrib = map { /^\s*(\w+)\s+(.*\S)\s*$/;
- $username_attrib = $1 if $2 eq '$username';
- ( $1 => eval(qq("$2")) ); }
- grep { /^\s*(\w+)\s+(.*\S)\s*$/ }
- split("\n", $self->option('attributes'));
-
- if ( $self->option('radius') ) {
- foreach my $table (qw(reply check)) {
- my $method = "radius_$table";
- my %radius = $svc_acct->$method();
- foreach my $radius ( keys %radius ) {
- ( my $ldap = $radius ) =~ s/\-//g;
- $attrib{$ldap} = $radius{$radius};
- }
- }
- }
-
- my $err_or_queue = $self->ldap_queue( $svc_acct->svcnum, 'insert',
- #$svc_acct->username,
- $username_attrib,
- %attrib );
- return $err_or_queue unless ref($err_or_queue);
-
- #groups with LDAP?
- #my @groups = $svc_acct->radius_groups;
- #if ( @groups ) {
- # my $err_or_queue = $self->ldap_queue(
- # $svc_acct->svcnum, 'usergroup_insert',
- # $svc_acct->username, @groups );
- # return $err_or_queue unless ref($err_or_queue);
- #}
-
- '';
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- return "can't (yet?) change username with ldap"
- if $old->username ne $new->username;
-
- return "ldap replace unimplemented";
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $jobnum = '';
- #if ( $old->username ne $new->username ) {
- # my $err_or_queue = $self->ldap_queue( $new->svcnum, 'rename',
- # $new->username, $old->username );
- # unless ( ref($err_or_queue) ) {
- # $dbh->rollback if $oldAutoCommit;
- # return $err_or_queue;
- # }
- # $jobnum = $err_or_queue->jobnum;
- #}
-
- foreach my $table (qw(reply check)) {
- my $method = "radius_$table";
- my %new = $new->$method();
- my %old = $old->$method();
- if ( grep { !exists $old{$_} #new attributes
- || $new{$_} ne $old{$_} #changed
- } keys %new
- ) {
- my $err_or_queue = $self->ldap_queue( $new->svcnum, 'insert',
- $table, $new->username, %new );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- my @del = grep { !exists $new{$_} } keys %old;
- if ( @del ) {
- my $err_or_queue = $self->ldap_queue( $new->svcnum, 'attrib_delete',
- $table, $new->username, @del );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
- }
-
- # (sorta) false laziness with FS::svc_acct::replace
- my @oldgroups = @{$old->usergroup}; #uuuh
- my @newgroups = $new->radius_groups;
- my @delgroups = ();
- foreach my $oldgroup ( @oldgroups ) {
- if ( grep { $oldgroup eq $_ } @newgroups ) {
- @newgroups = grep { $oldgroup ne $_ } @newgroups;
- next;
- }
- push @delgroups, $oldgroup;
- }
-
- if ( @delgroups ) {
- my $err_or_queue = $self->ldap_queue( $new->svcnum, 'usergroup_delete',
- $new->username, @delgroups );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- if ( @newgroups ) {
- my $err_or_queue = $self->ldap_queue( $new->svcnum, 'usergroup_insert',
- $new->username, @newgroups );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- return "ldap delete unimplemented";
- my $err_or_queue = $self->ldap_queue( $svc_acct->svcnum, 'delete',
- $svc_acct->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub ldap_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::ldap::ldap_$method",
- };
- $queue->insert(
- $self->machine,
- $self->option('dn'),
- $self->option('password'),
- $self->option('userdn'),
- @_,
- ) or $queue;
-}
-
-sub ldap_insert { #subroutine, not method
- my $ldap = ldap_connect(shift, shift, shift);
- my( $userdn, $username_attrib, %attrib ) = @_;
-
- $userdn = "$username_attrib=$attrib{$username_attrib}, $userdn"
- if $username_attrib;
- #icky hack, but should be unsurprising to the LDAPers
- foreach my $key ( grep { $attrib{$_} =~ /,/ } keys %attrib ) {
- $attrib{$key} = [ split(/,/, $attrib{$key}) ];
- }
-
- my $status = $ldap->add( $userdn, attrs => [ %attrib ] );
- die 'LDAP error: '. $status->error. "\n" if $status->is_error;
-
- $ldap->unbind;
-}
-
-#sub ldap_delete { #subroutine, not method
-# my $dbh = ldap_connect(shift, shift, shift);
-# my $username = shift;
-#
-# foreach my $table (qw( radcheck radreply usergroup )) {
-# my $sth = $dbh->prepare( "DELETE FROM $table WHERE UserName = ?" );
-# $sth->execute($username)
-# or die "can't delete from $table table: ". $sth->errstr;
-# }
-# $dbh->disconnect;
-#}
-
-sub ldap_connect {
- my( $machine, $dn, $password ) = @_;
- my %bind_options;
- $bind_options{password} = $password if length($password);
-
- eval "use Net::LDAP";
- die $@ if $@;
-
- my $ldap = Net::LDAP->new($machine) or die $@;
- my $status = $ldap->bind( $dn, %bind_options );
- die 'LDAP error: '. $status->error. "\n" if $status->is_error;
-
- $ldap;
-}
-
-1;
-
diff --git a/FS/FS/part_export/null.pm b/FS/FS/part_export/null.pm
deleted file mode 100644
index 0145af3..0000000
--- a/FS/FS/part_export/null.pm
+++ /dev/null
@@ -1,13 +0,0 @@
-package FS::part_export::null;
-
-use vars qw(@ISA);
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-sub rebless { shift; }
-
-sub _export_insert {}
-sub _export_replace {}
-sub _export_delete {}
-
diff --git a/FS/FS/part_export/passwdfile.pm b/FS/FS/part_export/passwdfile.pm
deleted file mode 100644
index 2978d25..0000000
--- a/FS/FS/part_export/passwdfile.pm
+++ /dev/null
@@ -1,18 +0,0 @@
-package FS::part_export::passwdfile;
-
-use strict;
-use vars qw(@ISA %options);
-use Tie::IxHash;
-use FS::part_export::null;
-
-@ISA = qw(FS::part_export::null);
-
-tie %options, 'Tie::IxHash',
- 'crypt' => { label=>'Password encryption',
- type=>'select', options=>[qw(crypt md5)],
- default=>'crypt',
- },
-;
-
-1;
-
diff --git a/FS/FS/part_export/postfix.pm b/FS/FS/part_export/postfix.pm
deleted file mode 100644
index 4fd19ee..0000000
--- a/FS/FS/part_export/postfix.pm
+++ /dev/null
@@ -1,32 +0,0 @@
-package FS::part_export::postfix;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::null;
-
-@ISA = qw(FS::part_export::null);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'aliases' => { label=>'aliases file location', default=>'/etc/aliases' },
- 'virtual' => { label=>'virtual file location', default=>'/etc/postfix/virtual' },
- 'mydomain' => { label=>'local domain', default=>'' },
- 'newaliases' => { label=>'newaliases command', default=>'newaliases' },
- 'postmap' => { label=>'postmap command',
- default=>'postmap hash:/etc/postfix/virtual', },
- 'reload' => { label=>'reload command',
- default=>'postfix reload' },
-;
-
-%info = (
- 'svc' => 'svc_forward',
- 'desc' => 'Postfix text files',
- 'options' => \%options,
- 'notes' => <<'END'
-Batch export of Postfix aliases and virtual files.
-<a href="http://search.cpan.org/dist/File-Rsync">File::Rsync</a>
-must be installed. Run bin/postfix.export to export the files.
-END
-);
-
-1;
diff --git a/FS/FS/part_export/radiator.pm b/FS/FS/part_export/radiator.pm
deleted file mode 100644
index 2ac3edb..0000000
--- a/FS/FS/part_export/radiator.pm
+++ /dev/null
@@ -1,167 +0,0 @@
-package FS::part_export::radiator;
-
-use vars qw(@ISA %info $radusers);
-use Tie::IxHash;
-use FS::part_export::sqlradius;
-
-tie my %options, 'Tie::IxHash', %FS::part_export::sqlradius::options;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to RADIATOR',
- 'options' => \%options,
- 'nodomain' => '',
- 'notes' => <<'END',
-Real-time export of the <b>radusers</b> table to any SQL database in
-<a href="http://www.open.com.au/radiator/">Radiator</a>-native format.
-To setup accounting, see the RADIATOR documentation for hooks to update
-a standard <b>radacct</b> table.
-END
-);
-
-@ISA = qw(FS::part_export::sqlradius); #for regular sqlradius accounting
-
-$radusers = 'RADUSERS'; #MySQL is case sensitive about table names! huh
-
-#sub export_username {
-# my($self, $svc_acct) = (shift, shift);
-# $svc_acct->email;
-#}
-
-sub _export_insert {
- my( $self, $svc_acct ) = (shift, shift);
-
- $self->radiator_queue(
- $svc_acct->svcnum,
- 'insert',
- $self->_radiator_hash($svc_acct),
- );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
-# return "can't (yet) change domain with radiator export"
-# if $old->domain ne $new->domain;
-# return "can't (yet) change username with radiator export"
-# if $old->username ne $new->username;
-
- $self->radiator_queue(
- $new->svcnum,
- 'replace',
- $self->export_username($old),
- $self->_radiator_hash($new),
- );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
-
- $self->radiator_queue(
- $svc_acct->svcnum,
- 'delete',
- $self->export_username($svc_acct),
- );
-}
-
-sub _radiator_hash {
- my( $self, $svc_acct ) = @_;
- my %hash = (
- 'username' => $self->export_username($svc_acct),
- 'pass_word' => $svc_acct->crypt_password,
- 'fullname' => $svc_acct->finger,
- map { my $method = "radius_$_"; $_ => $svc_acct->$method(); }
- qw( framed_filter_id framed_mtu framed_netmask framed_protocol
- framed_routing login_host login_service login_tcp_port )
- );
- $hash{'timeleft'} = $svc_acct->seconds
- if $svc_acct->seconds =~ /^\d+$/;
- $hash{'staticaddress'} = $svc_acct->slipip
- if $svc_acct->slipip =~ /^[\d\.]+$/; # and $self->slipip ne '0.0.0.0';
-
- $hash{'servicename'} = ( $svc_acct->radius_groups )[0];
-
- my $cust_pkg = $svc_acct->cust_svc->cust_pkg;
- $hash{'validto'} = $cust_pkg->bill
- if $cust_pkg && $cust_pkg->part_pkg->is_prepaid && $cust_pkg->bill;
-
- #some other random stuff, should probably be attributes or virtual fields
- #$hash{'state'} = 0; #only inserts
- #$hash{'badlogins'} = 0; #only inserts
- $hash{'maxlogins'} = 1;
- $hash{'addeddate'} = $cust_pkg->setup
- if $cust_pkg && $cust_pkg->setup;
- $hash{'validfrom'} = $cust_pkg->last_bill || $cust_pkg->setup
- if $cust_pkg && ( $cust_pkg->last_bill || $cust_pkg->setup );
- $hash{'state'} = $cust_pkg->susp ? 1 : 0
- if $cust_pkg;
-
- %hash;
-}
-
-sub radiator_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::radiator::radiator_$method",
- };
- $queue->insert(
- $self->option('datasrc'),
- $self->option('username'),
- $self->option('password'),
- @_,
- ); # or $queue;
-}
-
-sub radiator_insert { #subroutine, not method
- my $dbh = radiator_connect(shift, shift, shift);
- my %hash = @_;
- $hash{'state'} = 0; #see "random stuff" above
- $hash{'badlogins'} = 0; #see "random stuff" above
-
- my $sth = $dbh->prepare(
- "INSERT INTO $radusers ( ". join(', ', keys %hash ). ' ) '.
- 'VALUES ( '. join(', ', map '?', keys %hash ). ' ) '
- ) or die $dbh->errstr;
- $sth->execute( values %hash )
- or die $sth->errstr;
-
- $dbh->disconnect;
-
-}
-
-sub radiator_replace { #subroutine, not method
- my $dbh = radiator_connect(shift, shift, shift);
- my ( $old_username, %hash ) = @_;
-
- my $sth = $dbh->prepare(
- "UPDATE $radusers SET ". join(', ', map " $_ = ?", keys %hash ).
- ' WHERE username = ?'
- ) or die $dbh->errstr;
- $sth->execute( values(%hash), $old_username )
- or die $sth->errstr;
-
- $dbh->disconnect;
-}
-
-sub radiator_delete { #subroutine, not method
- my $dbh = radiator_connect(shift, shift, shift);
- my ( $username ) = @_;
-
- my $sth = $dbh->prepare(
- "DELETE FROM $radusers WHERE username = ?"
- ) or die $dbh->errstr;
- $sth->execute( $username )
- or die $sth->errstr;
-
- $dbh->disconnect;
-}
-
-
-sub radiator_connect {
- #my($datasrc, $username, $password) = @_;
- #DBI->connect($datasrc, $username, $password) or die $DBI::errstr;
- DBI->connect(@_) or die $DBI::errstr;
-}
-
-1;
diff --git a/FS/FS/part_export/router.pm b/FS/FS/part_export/router.pm
deleted file mode 100644
index 648a437..0000000
--- a/FS/FS/part_export/router.pm
+++ /dev/null
@@ -1,190 +0,0 @@
-package FS::part_export::router;
-
-=head1 FS::part_export::router
-
-This export connects to a router and transmits commands via telnet or SSH.
-It requires the following custom router fields:
-
-=over 4
-
-=item admin_address - IP address (or hostname) to connect
-
-=item admin_user - username for admin access
-
-=item admin_password - password for admin access
-
-=back
-
-The export itself needs the following options:
-
-=over 4
-
-=item insert, replace, delete - command strings (to be interpolated)
-
-=item Prompt - prompt string to expect from router after successful login
-
-=item Timeout - time to wait for prompt string
-
-=back
-
-(Prompt and Timeout are required only for telnet connections.)
-
-=cut
-
-use vars qw(@ISA %info @saltset);
-use Tie::IxHash;
-use String::ShellQuote;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'protocol' => {
- label=>'Protocol',
- type =>'select',
- options => [qw(telnet ssh)],
- default => 'telnet'},
- 'insert' => {label=>'Insert command', default=>'' },
- 'delete' => {label=>'Delete command', default=>'' },
- 'replace' => {label=>'Replace command', default=>'' },
- 'Timeout' => {label=>'Time to wait for prompt', default=>'20' },
- 'Prompt' => {label=>'Prompt string', default=>'#' }
-;
-
-%info = (
- 'svc' => 'svc_broadband',
- 'desc' => 'Send a command to a router.',
- 'options' => \%options,
- 'notes' => 'Installation of Net::Telnet from CPAN is required for telnet connections. ( more detailed description from Kristian / fire2wire? )',
-);
-
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self) = shift;
- $self->_export_command('insert', @_);
-}
-
-sub _export_delete {
- my($self) = shift;
- $self->_export_command('delete', @_);
-}
-
-sub _export_suspend {
- my($self) = shift;
- $self->_export_command('suspend', @_);
-}
-
-sub _export_unsuspend {
- my($self) = shift;
- $self->_export_command('unsuspend', @_);
-}
-
-sub _export_command {
- my ( $self, $action, $svc_broadband) = (shift, shift, shift);
- my $command = $self->option($action);
- return '' if $command =~ /^\s*$/;
-
- no strict 'vars';
- {
- no strict 'refs';
- ${$_} = $svc_broadband->getfield($_) foreach $svc_broadband->fields;
- }
- # fetch router info
- my $router = $svc_broadband->addr_block->router;
- my %r;
- $r{$_} = $router->getfield($_) foreach $router->virtual_fields;
- #warn qq("$command");
- #warn eval(qq("$command"));
-
- warn "admin_address: '$r{admin_address}'";
-
- if ($r{admin_address} ne '') {
- $self->router_queue( $svc_broadband->svcnum, $self->option('protocol'),
- user => $r{admin_user},
- password => $r{admin_password},
- host => $r{admin_address},
- Timeout => $self->option('Timeout'),
- Prompt => $self->option('Prompt'),
- command => eval(qq("$command")),
- );
- } else {
- return '';
- }
-}
-
-sub _export_replace {
-
- # We don't handle the case of a svc_broadband moving between routers.
- # If you want to do that, reprovision the service.
-
- my($self, $new, $old ) = (shift, shift, shift);
- my $command = $self->option('replace');
- no strict 'vars';
- {
- no strict 'refs';
- ${"old_$_"} = $old->getfield($_) foreach $old->fields;
- ${"new_$_"} = $new->getfield($_) foreach $new->fields;
- }
-
- my $router = $new->addr_block->router;
- my %r;
- $r{$_} = $router->getfield($_) foreach $router->virtual_fields;
-
- if ($r{admin_address} ne '') {
- $self->router_queue( $new->svcnum, $self->option('protocol'),
- user => $r{admin_user},
- password => $r{admin_password},
- host => $r{admin_address},
- Timeout => $self->option('Timeout'),
- Prompt => $self->option('Prompt'),
- command => eval(qq("$command")),
- );
- } else {
- return '';
- }
-}
-
-#a good idea to queue anything that could fail or take any time
-sub router_queue {
- #warn join ':', @_;
- my( $self, $svcnum, $protocol ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- };
- $queue->job ("FS::part_export::router::".$protocol."_cmd");
- $queue->insert( @_ );
-}
-
-sub ssh_cmd { #subroutine, not method
- use Net::SSH '0.08';
- &Net::SSH::ssh_cmd( { @_ } );
-}
-
-sub telnet_cmd {
- eval 'use Net::Telnet;';
- die $@ if $@;
-
- warn join(', ', @_);
-
- my %arg = @_;
-
- my $t = new Net::Telnet (Timeout => $arg{Timeout},
- Prompt => $arg{Prompt});
- $t->open($arg{host});
- $t->login($arg{user}, $arg{password});
- my @error = $t->cmd($arg{command});
- die @error if (grep /^ERROR/, @error);
-}
-
-#sub router_insert { #subroutine, not method
-#}
-#sub router_replace { #subroutine, not method
-#}
-#sub router_delete { #subroutine, not method
-#}
-
-1;
-
diff --git a/FS/FS/part_export/shellcommands.pm b/FS/FS/part_export/shellcommands.pm
deleted file mode 100644
index e488a52..0000000
--- a/FS/FS/part_export/shellcommands.pm
+++ /dev/null
@@ -1,334 +0,0 @@
-package FS::part_export::shellcommands;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use String::ShellQuote;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'useradd' => { label=>'Insert command',
- default=>'useradd -c $finger -d $dir -m -s $shell -u $uid -p $crypt_password $username'
- #default=>'cp -pr /etc/skel $dir; chown -R $uid.$gid $dir'
- },
- 'useradd_stdin' => { label=>'Insert command STDIN',
- type =>'textarea',
- default=>'',
- },
- 'userdel' => { label=>'Delete command',
- default=>'userdel -r $username',
- #default=>'rm -rf $dir',
- },
- 'userdel_stdin' => { label=>'Delete command STDIN',
- type =>'textarea',
- default=>'',
- },
- 'usermod' => { label=>'Modify command',
- default=>'usermod -c $new_finger -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -g $new_gid -p $new_crypt_password $old_username',
- #default=>'[ -d $old_dir ] && mv $old_dir $new_dir || ( '.
- # 'chmod u+t $old_dir; mkdir $new_dir; cd $old_dir; '.
- # 'find . -depth -print | cpio -pdm $new_dir; '.
- # 'chmod u-t $new_dir; chown -R $uid.$gid $new_dir; '.
- # 'rm -rf $old_dir'.
- #')'
- },
- 'usermod_stdin' => { label=>'Modify command STDIN',
- type =>'textarea',
- default=>'',
- },
- 'usermod_pwonly' => { label=>'Disallow username, domain, uid, gid, and dir changes', #and RADIUS group changes',
- type =>'checkbox',
- },
- 'usermod_nousername' => { label=>'Disallow just username changes',
- type =>'checkbox',
- },
- 'suspend' => { label=>'Suspension command',
- default=>'usermod -L $username',
- },
- 'suspend_stdin' => { label=>'Suspension command STDIN',
- default=>'',
- },
- 'unsuspend' => { label=>'Unsuspension command',
- default=>'usermod -U $username',
- },
- 'unsuspend_stdin' => { label=>'Unsuspension command STDIN',
- default=>'',
- },
- 'crypt' => { label => 'Default password encryption',
- type=>'select', options=>[qw(crypt md5)],
- default => 'crypt',
- },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' =>
- 'Real-time export via remote SSH (i.e. useradd, userdel, etc.)',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-Run remote commands via SSH. Usernames are considered unique (also see
-shellcommands_withdomain). You probably want this if the commands you are
-running will not accept a domain as a parameter. You will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>.
-
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <LI>
- <INPUT TYPE="button" VALUE="Linux" onClick='
- this.form.useradd.value = "useradd -c $finger -d $dir -m -s $shell -u $uid -p $crypt_password $username";
- this.form.useradd_stdin.value = "";
- this.form.userdel.value = "userdel -r $username";
- this.form.userdel_stdin.value="";
- this.form.usermod.value = "usermod -c $new_finger -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -g $new_gid -p $new_crypt_password $old_username";
- this.form.usermod_stdin.value = "";
- this.form.suspend.value = "usermod -L $username";
- this.form.suspend_stdin.value="";
- this.form.unsuspend.value = "usermod -U $username";
- this.form.unsuspend_stdin.value="";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="FreeBSD before 4.10 / 5.3" onClick='
- this.form.useradd.value = "lockf /etc/passwd.lock pw useradd $username -d $dir -m -s $shell -u $uid -c $finger -h 0";
- this.form.useradd_stdin.value = "$_password\n";
- this.form.userdel.value = "lockf /etc/passwd.lock pw userdel $username -r"; this.form.userdel_stdin.value="";
- this.form.usermod.value = "lockf /etc/passwd.lock pw usermod $old_username -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -g $new_gid -c $new_finger -h 0";
- this.form.usermod_stdin.value = "$new__password\n"; this.form.suspend.value = "lockf /etc/passwd.lock pw lock $username";
- this.form.suspend_stdin.value="";
- this.form.unsuspend.value = "lockf /etc/passwd.lock pw unlock $username"; this.form.unsuspend_stdin.value="";
- '>
- Note: On FreeBSD versions before 5.3 and 4.10 (4.10 is after 4.9, not
- 4.1!), due to deficient locking in pw(1), you must disable the chpass(1),
- chsh(1), chfn(1), passwd(1), and vipw(1) commands, or replace them with
- wrappers that prepend "lockf /etc/passwd.lock". Alternatively, apply the
- patch in
- <A HREF="http://www.freebsd.org/cgi/query-pr.cgi?pr=23501">FreeBSD PR#23501</A>
- and use the "FreeBSD 4.10 / 5.3 or later" button below.
- <LI>
- <INPUT TYPE="button" VALUE="FreeBSD 4.10 / 5.3 or later" onClick='
- this.form.useradd.value = "pw useradd $username -d $dir -m -s $shell -u $uid -g $gid -c $finger -h 0";
- this.form.useradd_stdin.value = "$_password\n";
- this.form.userdel.value = "pw userdel $username -r";
- this.form.userdel_stdin.value="";
- this.form.usermod.value = "pw usermod $old_username -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -g $new_gid -c $new_finger -h 0";
- this.form.usermod_stdin.value = "$new__password\n";
- this.form.suspend.value = "pw lock $username";
- this.form.suspend_stdin.value="";
- this.form.unsuspend.value = "pw unlock $username";
- this.form.unsuspend_stdin.value="";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="NetBSD/OpenBSD" onClick='
- this.form.useradd.value = "useradd -c $finger -d $dir -m -s $shell -u $uid -p $crypt_password $username";
- this.form.useradd_stdin.value = "";
- this.form.userdel.value = "userdel -r $username";
- this.form.userdel_stdin.value="";
- this.form.usermod.value = "usermod -c $new_finger -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -g $new_gid -p $new_crypt_password $old_username";
- this.form.usermod_stdin.value = "";
- this.form.suspend.value = "";
- this.form.suspend_stdin.value="";
- this.form.unsuspend.value = "";
- this.form.unsuspend_stdin.value="";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="Just maintain directories (use with sysvshell or bsdshell)" onClick='
- this.form.useradd.value = "cp -pr /etc/skel $dir; chown -R $uid.$gid $dir"; this.form.useradd_stdin.value = "";
- this.form.usermod.value = "[ -d $old_dir ] && mv $old_dir $new_dir || ( chmod u+t $old_dir; mkdir $new_dir; cd $old_dir; find . -depth -print | cpio -pdm $new_dir; chmod u-t $new_dir; chown -R $new_uid.$new_gid $new_dir; rm -rf $old_dir )";
- this.form.usermod_stdin.value = "";
- this.form.userdel.value = "rm -rf $dir";
- this.form.userdel_stdin.value="";
- this.form.suspend.value = "";
- this.form.suspend_stdin.value="";
- this.form.unsuspend.value = "";
- this.form.unsuspend_stdin.value="";
- '>
-</UL>
-
-The following variables are available for interpolation (prefixed with new_ or
-old_ for replace operations):
-<UL>
- <LI><code>$username</code>
- <LI><code>$_password</code>
- <LI><code>$quoted_password</code> - unencrypted password, already quoted for the shell (do not add additional quotes)
- <LI><code>$crypt_password</code> - encrypted password, already quoted for the shell (do not add additional quotes)
- <LI><code>$uid</code>
- <LI><code>$gid</code>
- <LI><code>$finger</code> - GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$first</code> - First name of GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$last</code> - Last name of GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$dir</code> - home directory
- <LI><code>$shell</code>
- <LI><code>$quota</code>
- <LI><code>@radius_groups</code>
- <LI>All other fields in <a href="../docs/schema.html#svc_acct">svc_acct</a> are also available.
-</UL>
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self) = shift;
- $self->_export_command('useradd', @_);
-}
-
-sub _export_delete {
- my($self) = shift;
- $self->_export_command('userdel', @_);
-}
-
-sub _export_suspend {
- my($self) = shift;
- $self->_export_command_or_super('suspend', @_);
-}
-
-sub _export_unsuspend {
- my($self) = shift;
- $self->_export_command_or_super('unsuspend', @_);
-}
-
-sub _export_command_or_super {
- my($self, $action) = (shift, shift);
- if ( $self->option($action) =~ /^\s*$/ ) {
- my $method = "SUPER::_export_$action";
- $self->$method(@_);
- } else {
- $self->_export_command($action, @_);
- }
-};
-
-
-sub _export_command {
- my ( $self, $action, $svc_acct) = (shift, shift, shift);
- my $command = $self->option($action);
- return '' if $command =~ /^\s*$/;
- my $stdin = $self->option($action."_stdin");
-
- no strict 'vars';
- {
- no strict 'refs';
- ${$_} = $svc_acct->getfield($_) foreach $svc_acct->fields;
-
- my $count = 1;
- foreach my $acct_snarf ( $svc_acct->acct_snarf ) {
- ${"snarf_$_$count"} = shell_quote( $acct_snarf->get($_) )
- foreach qw( machine username _password );
- $count++;
- }
- }
-
- my $cust_pkg = $svc_acct->cust_svc->cust_pkg;
- if ( $cust_pkg ) {
- $email = ( grep { $_ !~ /^(POST|FAX)$/ } $cust_pkg->cust_main->invoicing_list )[0];
- } else {
- $email = '';
- }
-
- $finger =~ /^(.*)\s+(\S+)$/ or $finger =~ /^((.*))$/;
- ($first, $last ) = ( $1, $2 );
- $first = shell_quote $first;
- $last = shell_quote $last;
- $finger = shell_quote $finger;
- $quoted_password = shell_quote $_password;
- $domain = $svc_acct->domain;
-
- $crypt_password =
- shell_quote( $svc_acct->crypt_password( $self->option('crypt') ) );
-
- @radius_groups = $svc_acct->radius_groups;
-
- $self->shellcommands_queue( $svc_acct->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- stdin_string => eval(qq("$stdin")),
- );
-}
-
-sub _export_replace {
- my($self, $new, $old ) = (shift, shift, shift);
- my $command = $self->option('usermod');
- my $stdin = $self->option('usermod_stdin');
- no strict 'vars';
- {
- no strict 'refs';
- ${"old_$_"} = $old->getfield($_) foreach $old->fields;
- ${"new_$_"} = $new->getfield($_) foreach $new->fields;
- }
- $new_finger =~ /^(.*)\s+(\S+)$/ or $new_finger =~ /^((.*))$/;
- ($new_first, $new_last ) = ( $1, $2 );
- $new_first = shell_quote $new_first;
- $new_last = shell_quote $new_last;
- $new_finger = shell_quote $new_finger;
- $quoted_new__password = shell_quote $new__password; #old, wrong?
- $new_quoted_password = shell_quote $new__password; #new, better?
- $old_domain = $old->domain;
- $new_domain = $new->domain;
-
- $new_crypt_password =
- shell_quote( $new->crypt_password( $self->option('crypt') ) );
-
- @old_radius_groups = $old->radius_groups;
- @new_radius_groups = $new->radius_groups;
-
- my $error = '';
- if ( $self->option('usermod_pwonly') || $self->option('usermod_nousername') ){
- if ( $old_username ne $new_username ) {
- $error ||= "can't change username";
- }
- }
- if ( $self->option('usermod_pwonly') ) {
- if ( $old_domain ne $new_domain ) {
- $error ||= "can't change domain";
- }
- if ( $old_uid != $new_uid ) {
- $error ||= "can't change uid";
- }
- if ( $old_gid != $new_gid ) {
- $error ||= "can't change gid";
- }
- if ( $old_dir ne $new_dir ) {
- $error ||= "can't change dir";
- }
- #if ( join("\n", sort @old_radius_groups) ne
- # join("\n", sort @new_radius_groups) ) {
- # $error ||= "can't change RADIUS groups";
- #}
- }
- return $error. ' ('. $self->exporttype. ' to '. $self->machine. ')'
- if $error;
-
- $self->shellcommands_queue( $new->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- stdin_string => eval(qq("$stdin")),
- );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub shellcommands_queue {
- my( $self, $svcnum ) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::shellcommands::ssh_cmd",
- };
- $queue->insert( @_ );
-}
-
-sub ssh_cmd { #subroutine, not method
- use Net::SSH '0.08';
- &Net::SSH::ssh_cmd( { @_ } );
-}
-
-#sub shellcommands_insert { #subroutine, not method
-#}
-#sub shellcommands_replace { #subroutine, not method
-#}
-#sub shellcommands_delete { #subroutine, not method
-#}
-
-1;
-
diff --git a/FS/FS/part_export/shellcommands_withdomain.pm b/FS/FS/part_export/shellcommands_withdomain.pm
deleted file mode 100644
index 7c5d904..0000000
--- a/FS/FS/part_export/shellcommands_withdomain.pm
+++ /dev/null
@@ -1,112 +0,0 @@
-package FS::part_export::shellcommands_withdomain;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::shellcommands;
-
-@ISA = qw(FS::part_export::shellcommands);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'useradd' => { label=>'Insert command',
- #default=>''
- },
- 'useradd_stdin' => { label=>'Insert command STDIN',
- type =>'textarea',
- #default=>"$_password\n$_password\n",
- },
- 'userdel' => { label=>'Delete command',
- #default=>'',
- },
- 'userdel_stdin' => { label=>'Delete command STDIN',
- type =>'textarea',
- #default=>'',
- },
- 'usermod' => { label=>'Modify command',
- default=>'',
- },
- 'usermod_stdin' => { label=>'Modify command STDIN',
- type =>'textarea',
- #default=>"$_password\n$_password\n",
- },
- 'usermod_pwonly' => { label=>'Disallow username, domain, uid, dir and RADIUS group changes',
- type =>'checkbox',
- },
- 'usermod_nousername' => { label=>'Disallow just username changes',
- type =>'checkbox',
- },
- 'suspend' => { label=>'Suspension command',
- default=>'',
- },
- 'suspend_stdin' => { label=>'Suspension command STDIN',
- default=>'',
- },
- 'unsuspend' => { label=>'Unsuspension command',
- default=>'',
- },
- 'unsuspend_stdin' => { label=>'Unsuspension command STDIN',
- default=>'',
- },
- 'crypt' => { label => 'Default password encryption',
- type=>'select', options=>[qw(crypt md5)],
- default => 'crypt',
- },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export via remote SSH (vpopmail, ISPMan)',
- 'options' => \%options,
- 'notes' => <<'END'
-Run remote commands via SSH. username@domain (rather than just usernames) are
-considered unique (also see shellcommands). You probably want this if the
-commands you are running will accept a domain as a parameter, and will allow
-the same username with different domains. You will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>.
-
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <LI><INPUT TYPE="button" VALUE="vpopmail" onClick='
- this.form.useradd.value = "/home/vpopmail/bin/vadduser $username\\\@$domain $quoted_password";
- this.form.useradd_stdin.value = "";
- this.form.userdel.value = "/home/vpopmail/bin/vdeluser $username\\\@$domain";
- this.form.userdel_stdin.value="";
- this.form.usermod.value = "/home/vpopmail/bin/vpasswd $new_username\\\@$new_domain $new_quoted_password";
- this.form.usermod_stdin.value = "";
- this.form.usermod_pwonly.checked = true;
- '>
- <LI><INPUT TYPE="button" VALUE="ISPMan CLI" onClick='
- this.form.useradd.value = "/usr/local/ispman/bin/ispman.addUser -d $domain -f $first -l $last -q $quota -p $quoted_password $username";
- this.form.useradd_stdin.value = "";
- this.form.userdel.value = "/usr/local/ispman/bin/ispman.delUser -d $domain $username";
- this.form.userdel_stdin.value="";
- this.form.usermod.value = "/usr/local/ispman/bin/ispman.passwd.user $new_username\\\@$new_domain $new_quoted_password";
- this.form.usermod_stdin.value = "";
- this.form.usermod_pwonly.checked = true;
- '>
-</UL>
-
-The following variables are available for interpolation (prefixed with
-<code>new_</code> or <code>old_</code> for replace operations):
-<UL>
- <LI><code>$username</code>
- <LI><code>$domain</code>
- <LI><code>$_password</code>
- <LI><code>$quoted_password</code> - unencrypted password, already quoted for the shell (do not add additional quotes)
- <LI><code>$crypt_password</code> - encrypted password, already quoted for the shell (do not add additional quotes)
- <LI><code>$uid</code>
- <LI><code>$gid</code>
- <LI><code>$finger</code> - GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$first</code> - First name of GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$last</code> - Last name of GECOS, already quoted for the shell (do not add additional quotes)
- <LI><code>$dir</code> - home directory
- <LI><code>$shell</code>
- <LI><code>$quota</code>
- <LI><code>@radius_groups</code>
- <LI>All other fields in <a href="../docs/schema.html#svc_acct">svc_acct</a> are also available.
-</UL>
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/sqlmail.pm b/FS/FS/part_export/sqlmail.pm
deleted file mode 100644
index 6d61e0e..0000000
--- a/FS/FS/part_export/sqlmail.pm
+++ /dev/null
@@ -1,220 +0,0 @@
-package FS::part_export::sqlmail;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use Digest::MD5 qw(md5_hex);
-use FS::Record qw(qsearchs);
-use FS::part_export;
-use FS::svc_domain;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'datasrc' => { label => 'DBI data source' },
- 'username' => { label => 'Database username' },
- 'password' => { label => 'Database password' },
- 'server_type' => {
- label => 'Server type',
- type => 'select',
- options => [qw(dovecot_plain dovecot_crypt dovecot_digest_md5 courier_plain
- courier_crypt)],
- default => ['dovecot_plain'], },
- 'svc_acct_table' => { label => 'User Table', default => 'user_acct' },
- 'svc_forward_table' => { label => 'Forward Table', default => 'forward' },
- 'svc_domain_table' => { label => 'Domain Table', default => 'domain' },
- 'svc_acct_fields' => { label => 'svc_acct Export Fields',
- default => 'username _password domsvc svcnum' },
- 'svc_forward_fields' => { label => 'svc_forward Export Fields',
- default => 'domain svcnum catchall' },
- 'svc_domain_fields' => { label => 'svc_domain Export Fields',
- default => 'srcsvc dstsvc dst' },
- 'resolve_dstsvc' => { label => q{Resolve svc_forward.dstsvc to an email address and store it in dst. (Doesn't require that you also export dstsvc.)},
- type => 'checkbox' },
-;
-
-%info = (
- 'svc' => [qw( svc_acct svc_domain svc_forward )],
- 'desc' => 'Real-time export to SQL-backed mail server',
- 'options' => \%options,
- 'nodomain' => '',
- 'notes' => <<'END'
-Database schema can be made to work with Courier IMAP, Exim and Dovecot.
-Others could work but are untested. (more detailed description from
-Kristian / fire2wire? )
-END
-);
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc) = (shift, shift);
- # this is a svc_something.
-
- my $svcdb = $svc->cust_svc->part_svc->svcdb;
- my $export_table = $self->option($svcdb . '_table')
- or die('Export table not defined for svcdb: ' . $svcdb);
- my @export_fields = split(/\s+/, $self->option($svcdb . '_fields'));
- my $svchash = update_values($self, $svc, $svcdb);
-
- foreach my $key (keys(%$svchash)) {
- unless (grep { $key eq $_ } @export_fields) {
- delete $svchash->{$key};
- }
- }
-
- my $error = $self->sqlmail_queue( $svc->svcnum, 'insert',
- $self->option('server_type'), $export_table,
- (map { ($_, $svchash->{$_}); } keys(%$svchash)));
- return $error if $error;
- '';
-
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
- my $svcdb = $new->cust_svc->part_svc->svcdb;
- my $export_table = $self->option($svcdb . '_table')
- or die('Export table not defined for svcdb: ' . $svcdb);
- my @export_fields = split(/\s+/, $self->option($svcdb . '_fields'));
- my $svchash = update_values($self, $new, $svcdb);
-
- foreach my $key (keys(%$svchash)) {
- unless (grep { $key eq $_ } @export_fields) {
- delete $svchash->{$key};
- }
- }
-
- my $error = $self->sqlmail_queue( $new->svcnum, 'replace',
- $old->svcnum, $self->option('server_type'), $export_table,
- (map { ($_, $svchash->{$_}); } keys(%$svchash)));
- return $error if $error;
- '';
-
-}
-
-sub _export_delete {
- my( $self, $svc ) = (shift, shift);
-
- my $svcdb = $svc->cust_svc->part_svc->svcdb;
- my $table = $self->option($svcdb . '_table')
- or die('Export table not defined for svcdb: ' . $svcdb);
-
- $self->sqlmail_queue( $svc->svcnum, 'delete', $table,
- $svc->svcnum );
-}
-
-sub sqlmail_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::sqlmail::sqlmail_$method",
- };
- $queue->insert(
- $self->option('datasrc'),
- $self->option('username'),
- $self->option('password'),
- @_,
- );
-}
-
-sub sqlmail_insert { #subroutine, not method
- my $dbh = sqlmail_connect(shift, shift, shift);
- my( $server_type, $table ) = (shift, shift);
-
- my %attrs = @_;
-
- map { $attrs{$_} = $attrs{$_} ? qq!'$attrs{$_}'! : 'NULL'; } keys(%attrs);
- my $query = sprintf("INSERT INTO %s (%s) values (%s)",
- $table, join(",", keys(%attrs)),
- join(',', values(%attrs)));
-
- $dbh->do($query) or die $dbh->errstr;
- $dbh->disconnect;
-
- '';
-}
-
-sub sqlmail_delete { #subroutine, not method
- my $dbh = sqlmail_connect(shift, shift, shift);
- my( $table, $svcnum ) = @_;
-
- $dbh->do("DELETE FROM $table WHERE svcnum = $svcnum") or die $dbh->errstr;
- $dbh->disconnect;
-
- '';
-}
-
-sub sqlmail_replace {
- my $dbh = sqlmail_connect(shift, shift, shift);
- my($oldsvcnum, $server_type, $table) = (shift, shift, shift);
-
- my %attrs = @_;
- map { $attrs{$_} = $attrs{$_} ? qq!'$attrs{$_}'! : 'NULL'; } keys(%attrs);
-
- my $query = "SELECT COUNT(*) FROM $table WHERE svcnum = $oldsvcnum";
- my $result = $dbh->selectrow_arrayref($query) or die $dbh->errstr;
-
- if (@$result[0] == 0) {
- $query = sprintf("INSERT INTO %s (%s) values (%s)",
- $table, join(",", keys(%attrs)),
- join(',', values(%attrs)));
- $dbh->do($query) or die $dbh->errstr;
- } else {
- $query = sprintf('UPDATE %s SET %s WHERE svcnum = %s',
- $table, join(', ', map {"$_ = $attrs{$_}"} keys(%attrs)),
- $oldsvcnum);
- $dbh->do($query) or die $dbh->errstr;
- }
-
- $dbh->disconnect;
-
- '';
-}
-
-sub sqlmail_connect {
- DBI->connect(@_) or die $DBI::errstr;
-}
-
-sub update_values {
-
- # Update records to conform to a particular server_type.
-
- my ($self, $svc, $svcdb) = (shift,shift,shift);
- my $svchash = { %{$svc->hashref} } or return ''; # We need a copy.
-
- if ($svcdb eq 'svc_acct') {
- if ($self->option('server_type') eq 'courier_crypt') {
- my $salt = join '', ('.', '/', 0..9,'A'..'Z', 'a'..'z')[rand 64, rand 64];
- $svchash->{_password} = crypt($svchash->{_password}, $salt);
-
- } elsif ($self->option('server_type') eq 'dovecot_plain') {
- $svchash->{_password} = '{PLAIN}' . $svchash->{_password};
-
- } elsif ($self->option('server_type') eq 'dovecot_crypt') {
- my $salt = join '', ('.', '/', 0..9,'A'..'Z', 'a'..'z')[rand 64, rand 64];
- $svchash->{_password} = '{CRYPT}' . crypt($svchash->{_password}, $salt);
-
- } elsif ($self->option('server_type') eq 'dovecot_digest_md5') {
- my $svc_domain = qsearchs('svc_domain', { svcnum => $svc->domsvc });
- die('Unable to lookup svc_domain with domsvc: ' . $svc->domsvc)
- unless ($svc_domain);
-
- my $domain = $svc_domain->domain;
- my $md5hash = '{DIGEST-MD5}' . md5_hex(join(':', $svchash->{username},
- $domain, $svchash->{_password}));
- $svchash->{_password} = $md5hash;
- }
- } elsif ($svcdb eq 'svc_forward') {
- if ($self->option('resolve_dstsvc') && $svc->dstsvc_acct) {
- $svchash->{dst} = $svc->dstsvc_acct->username . '@' .
- $svc->dstsvc_acct->svc_domain->domain;
- }
- }
-
- return($svchash);
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/sqlradius.pm b/FS/FS/part_export/sqlradius.pm
deleted file mode 100644
index 10bccb0..0000000
--- a/FS/FS/part_export/sqlradius.pm
+++ /dev/null
@@ -1,552 +0,0 @@
-package FS::part_export::sqlradius;
-
-use vars qw(@ISA $DEBUG %info %options $notes1 $notes2);
-use Tie::IxHash;
-use FS::Record qw( dbh qsearch );
-use FS::part_export;
-use FS::svc_acct;
-use FS::export_svc;
-
-@ISA = qw(FS::part_export);
-
-$DEBUG = 0;
-
-tie %options, 'Tie::IxHash',
- 'datasrc' => { label=>'DBI data source ' },
- 'username' => { label=>'Database username' },
- 'password' => { label=>'Database password' },
- 'ignore_accounting' => {
- type => 'checkbox',
- label => 'Ignore accounting records from this database'
- },
- 'hide_ip' => {
- type => 'checkbox',
- label => 'Hide IP address information on session reports',
- },
- 'hide_data' => {
- type => 'checkbox',
- label => 'Hide download/upload information on session reports',
- },
- 'show_called_station' => {
- type => 'checkbox',
- label => 'Show the Called-Station-ID on session reports',
- },
-;
-
-$notes1 = <<'END';
-Real-time export of <b>radcheck</b>, <b>radreply</b> and <b>usergroup</b>
-tables to any SQL database for
-<a href="http://www.freeradius.org/">FreeRADIUS</a>
-or <a href="http://radius.innercite.com/">ICRADIUS</a>.
-END
-
-$notes2 = <<'END';
-An existing RADIUS database will be updated in realtime, but you can use
-<a href="../docs/man/bin/freeside-sqlradius-reset">freeside-sqlradius-reset</a>
-to delete the entire RADIUS database and repopulate the tables from the
-Freeside database. See the
-<a href="http://search.cpan.org/dist/DBI/DBI.pm#connect">DBI documentation</a>
-and the
-<a href="http://search.cpan.org/search?mode=module&query=DBD%3A%3A">documentation for your DBD</a>
-for the exact syntax of a DBI data source.
-<ul>
- <li>Using FreeRADIUS 0.9.0 with the PostgreSQL backend, the db_postgresql.sql schema and postgresql.conf queries contain incompatible changes. This is fixed in 0.9.1. Only new installs with 0.9.0 and PostgreSQL are affected - upgrades and other database backends and versions are unaffected.
- <li>Using ICRADIUS, add a dummy "op" column to your database:
- <blockquote><code>
- ALTER&nbsp;TABLE&nbsp;radcheck&nbsp;ADD&nbsp;COLUMN&nbsp;op&nbsp;VARCHAR(2)&nbsp;NOT&nbsp;NULL&nbsp;DEFAULT&nbsp;'=='<br>
- ALTER&nbsp;TABLE&nbsp;radreply&nbsp;ADD&nbsp;COLUMN&nbsp;op&nbsp;VARCHAR(2)&nbsp;NOT&nbsp;NULL&nbsp;DEFAULT&nbsp;'=='<br>
- ALTER&nbsp;TABLE&nbsp;radgroupcheck&nbsp;ADD&nbsp;COLUMN&nbsp;op&nbsp;VARCHAR(2)&nbsp;NOT&nbsp;NULL&nbsp;DEFAULT&nbsp;'=='<br>
- ALTER&nbsp;TABLE&nbsp;radgroupreply&nbsp;ADD&nbsp;COLUMN&nbsp;op&nbsp;VARCHAR(2)&nbsp;NOT&nbsp;NULL&nbsp;DEFAULT&nbsp;'=='
- </code></blockquote>
- <li>Using Radiator, see the
- <a href="http://www.open.com.au/radiator/faq.html#38">Radiator FAQ</a>
- for configuration information.
-</ul>
-END
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to SQL-backed RADIUS (FreeRADIUS, ICRADIUS)',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => $notes1.
- 'This export does not export RADIUS realms (see also '.
- 'sqlradius_withdomain). '.
- $notes2
-);
-
-sub rebless { shift; }
-
-sub export_username {
- my($self, $svc_acct) = (shift, shift);
- warn "export_username called on $self with arg $svc_acct" if $DEBUG;
- $svc_acct->username;
-}
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
-
- foreach my $table (qw(reply check)) {
- my $method = "radius_$table";
- my %attrib = $svc_acct->$method();
- next unless keys %attrib;
- my $err_or_queue = $self->sqlradius_queue( $svc_acct->svcnum, 'insert',
- $table, $self->export_username($svc_acct), %attrib );
- return $err_or_queue unless ref($err_or_queue);
- }
- my @groups = $svc_acct->radius_groups;
- if ( @groups ) {
- my $err_or_queue = $self->sqlradius_queue(
- $svc_acct->svcnum, 'usergroup_insert',
- $self->export_username($svc_acct), @groups );
- return $err_or_queue unless ref($err_or_queue);
- }
- '';
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $jobnum = '';
- if ( $self->export_username($old) ne $self->export_username($new) ) {
- my $err_or_queue = $self->sqlradius_queue( $new->svcnum, 'rename',
- $self->export_username($new), $self->export_username($old) );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- $jobnum = $err_or_queue->jobnum;
- }
-
- foreach my $table (qw(reply check)) {
- my $method = "radius_$table";
- my %new = $new->$method();
- my %old = $old->$method();
- if ( grep { !exists $old{$_} #new attributes
- || $new{$_} ne $old{$_} #changed
- } keys %new
- ) {
- my $err_or_queue = $self->sqlradius_queue( $new->svcnum, 'insert',
- $table, $self->export_username($new), %new );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- my @del = grep { !exists $new{$_} } keys %old;
- if ( @del ) {
- my $err_or_queue = $self->sqlradius_queue( $new->svcnum, 'attrib_delete',
- $table, $self->export_username($new), @del );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
- }
-
- # (sorta) false laziness with FS::svc_acct::replace
- my @oldgroups = @{$old->usergroup}; #uuuh
- my @newgroups = $new->radius_groups;
- my @delgroups = ();
- foreach my $oldgroup ( @oldgroups ) {
- if ( grep { $oldgroup eq $_ } @newgroups ) {
- @newgroups = grep { $oldgroup ne $_ } @newgroups;
- next;
- }
- push @delgroups, $oldgroup;
- }
-
- if ( @delgroups ) {
- my $err_or_queue = $self->sqlradius_queue( $new->svcnum, 'usergroup_delete',
- $self->export_username($new), @delgroups );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- if ( @newgroups ) {
- my $err_or_queue = $self->sqlradius_queue( $new->svcnum, 'usergroup_insert',
- $self->export_username($new), @newgroups );
- unless ( ref($err_or_queue) ) {
- $dbh->rollback if $oldAutoCommit;
- return $err_or_queue;
- }
- if ( $jobnum ) {
- my $error = $err_or_queue->depend_insert( $jobnum );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- my $err_or_queue = $self->sqlradius_queue( $svc_acct->svcnum, 'delete',
- $self->export_username($svc_acct) );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub sqlradius_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::sqlradius::sqlradius_$method",
- };
- $queue->insert(
- $self->option('datasrc'),
- $self->option('username'),
- $self->option('password'),
- @_,
- ) or $queue;
-}
-
-sub sqlradius_insert { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my( $table, $username, %attributes ) = @_;
-
- foreach my $attribute ( keys %attributes ) {
-
- my $s_sth = $dbh->prepare(
- "SELECT COUNT(*) FROM rad$table WHERE UserName = ? AND Attribute = ?"
- ) or die $dbh->errstr;
- $s_sth->execute( $username, $attribute ) or die $s_sth->errstr;
-
- if ( $s_sth->fetchrow_arrayref->[0] ) {
-
- my $u_sth = $dbh->prepare(
- "UPDATE rad$table SET Value = ? WHERE UserName = ? AND Attribute = ?"
- ) or die $dbh->errstr;
- $u_sth->execute($attributes{$attribute}, $username, $attribute)
- or die $u_sth->errstr;
-
- } else {
-
- my $i_sth = $dbh->prepare(
- "INSERT INTO rad$table ( UserName, Attribute, op, Value ) ".
- "VALUES ( ?, ?, ?, ? )"
- ) or die $dbh->errstr;
- $i_sth->execute(
- $username,
- $attribute,
- ( $attribute =~ /Password/i ? '==' : ':=' ),
- $attributes{$attribute},
- ) or die $i_sth->errstr;
-
- }
-
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_usergroup_insert { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my( $username, @groups ) = @_;
-
- my $sth = $dbh->prepare(
- "INSERT INTO usergroup ( UserName, GroupName ) VALUES ( ?, ? )"
- ) or die $dbh->errstr;
- foreach my $group ( @groups ) {
- $sth->execute( $username, $group )
- or die "can't insert into groupname table: ". $sth->errstr;
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_usergroup_delete { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my( $username, @groups ) = @_;
-
- my $sth = $dbh->prepare(
- "DELETE FROM usergroup WHERE UserName = ? AND GroupName = ?"
- ) or die $dbh->errstr;
- foreach my $group ( @groups ) {
- $sth->execute( $username, $group )
- or die "can't delete from groupname table: ". $sth->errstr;
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_rename { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my($new_username, $old_username) = @_;
- foreach my $table (qw(radreply radcheck usergroup )) {
- my $sth = $dbh->prepare("UPDATE $table SET Username = ? WHERE UserName = ?")
- or die $dbh->errstr;
- $sth->execute($new_username, $old_username)
- or die "can't update $table: ". $sth->errstr;
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_attrib_delete { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my( $table, $username, @attrib ) = @_;
-
- foreach my $attribute ( @attrib ) {
- my $sth = $dbh->prepare(
- "DELETE FROM rad$table WHERE UserName = ? AND Attribute = ?" )
- or die $dbh->errstr;
- $sth->execute($username,$attribute)
- or die "can't delete from rad$table table: ". $sth->errstr;
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_delete { #subroutine, not method
- my $dbh = sqlradius_connect(shift, shift, shift);
- my $username = shift;
-
- foreach my $table (qw( radcheck radreply usergroup )) {
- my $sth = $dbh->prepare( "DELETE FROM $table WHERE UserName = ?" );
- $sth->execute($username)
- or die "can't delete from $table table: ". $sth->errstr;
- }
- $dbh->disconnect;
-}
-
-sub sqlradius_connect {
- #my($datasrc, $username, $password) = @_;
- #DBI->connect($datasrc, $username, $password) or die $DBI::errstr;
- DBI->connect(@_) or die $DBI::errstr;
-}
-
-#--
-
-=item usage_sessions TIMESTAMP_START TIMESTAMP_END [ SVC_ACCT [ IP [ PREFIX [ SQL_SELECT ] ] ] ]
-
-TIMESTAMP_START and TIMESTAMP_END are specified as UNIX timestamps; see
-L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-SVC_ACCT, if specified, limits the results to the specified account.
-
-IP, if specified, limits the results to the specified IP address.
-
-PREFIX, if specified, limits the results to records with a matching
-Called-Station-ID.
-
-#SQL_SELECT defaults to * if unspecified. It can be useful to set it to
-#SUM(acctsessiontime) or SUM(AcctInputOctets), etc.
-
-Returns an arrayref of hashrefs with the following fields:
-
-=over 4
-
-=item username
-
-=item framedipaddress
-
-=item acctstarttime
-
-=item acctstoptime
-
-=item acctsessiontime
-
-=item acctinputoctets
-
-=item acctoutputoctets
-
-=item calledstationid
-
-=back
-
-=cut
-
-#some false laziness w/cust_svc::seconds_since_sqlradacct
-
-sub usage_sessions {
- my( $self, $start, $end ) = splice(@_, 0, 3);
- my $svc_acct = @_ ? shift : '';
- my $ip = @_ ? shift : '';
- my $prefix = @_ ? shift : '';
- #my $select = @_ ? shift : '*';
-
- $end ||= 2147483647;
-
- return [] if $self->option('ignore_accounting');
-
- my $dbh = sqlradius_connect( map $self->option($_),
- qw( datasrc username password ) );
-
- #select a unix time conversion function based on database type
- my $str2time;
- if ( $dbh->{Driver}->{Name} =~ /^mysql(PP)?$/ ) {
- $str2time = 'UNIX_TIMESTAMP(';
- } elsif ( $dbh->{Driver}->{Name} eq 'Pg' ) {
- $str2time = 'EXTRACT( EPOCH FROM ';
- } else {
- warn "warning: unknown database type ". $dbh->{Driver}->{Name}.
- "; guessing how to convert to UNIX timestamps";
- $str2time = 'extract(epoch from ';
- }
-
- my @fields = (
- qw( username realm framedipaddress
- acctsessiontime acctinputoctets acctoutputoctets
- calledstationid
- ),
- "$str2time acctstarttime ) as acctstarttime",
- "$str2time acctstoptime ) as acctstoptime",
- );
-
- my @param = ();
- my $where = '';
-
- if ( $svc_acct ) {
- my $username = $self->export_username($svc_acct);
- if ( $svc_acct =~ /^([^@]+)\@([^@]+)$/ ) {
- $where = '( UserName = ? OR ( UserName = ? AND Realm = ? ) ) AND';
- push @param, $username, $1, $2;
- } else {
- $where = 'UserName = ? AND';
- push @param, $username;
- }
- }
-
- if ( length($ip) ) {
- $where .= ' FramedIPAddress = ? AND';
- push @param, $ip;
- }
-
- if ( length($prefix) ) {
- #assume sip: for now, else things get ugly trying to match /^\w+:$prefix/
- $where .= " CalledStationID LIKE 'sip:$prefix\%' AND";
- }
-
- push @param, $start, $end;
-
- my $sth = $dbh->prepare('SELECT '. join(', ', @fields).
- " FROM radacct
- WHERE $where
- $str2time AcctStopTime ) >= ?
- AND $str2time AcctStopTime ) <= ?
- ORDER BY AcctStartTime DESC
- ") or die $dbh->errstr;
- $sth->execute(@param) or die $sth->errstr;
-
- [ map { { %$_ } } @{ $sth->fetchall_arrayref({}) } ];
-
-}
-
-=item update_svc_acct
-
-=cut
-
-sub update_svc_acct {
- my $self = shift;
-
- my $dbh = sqlradius_connect( map $self->option($_),
- qw( datasrc username password ) );
-
- my @fields = qw( radacctid username realm acctsessiontime );
-
- my @param = ();
- my $where = '';
-
- my $sth = $dbh->prepare("
- SELECT RadAcctId, UserName, Realm, AcctSessionTime
- FROM radacct
- WHERE FreesideStatus IS NULL
- AND AcctStopTime != 0
- ") or die $dbh->errstr;
- $sth->execute() or die $sth->errstr;
-
- while ( my $row = $sth->fetchrow_arrayref ) {
- my($RadAcctId, $UserName, $Realm, $AcctSessionTime) = @$row;
- warn "processing record: ".
- "$RadAcctId ($UserName\@$Realm for ${AcctSessionTime}s"
- if $DEBUG;
-
- my %search = ( 'username' => $UserName );
- my $extra_sql = '';
- if ( ref($self) =~ /withdomain/ ) { #well...
- $extra_sql = " AND '$Realm' = ( SELECT domain FROM svc_domain
- WHERE svc_domain.svcnum = svc_acct.domsvc ) ";
- my $svc_domain = qsearch
- }
-
- my @svc_acct =
- grep { qsearch( 'export_svc', { 'exportnum' => $self->exportnum,
- 'svcpart' => $_->cust_svc->svcpart, } )
- }
- qsearch( 'svc_acct',
- { 'username' => $UserName },
- '',
- $extra_sql
- );
-
- my $errinfo = "for RADIUS detail RadAcctID $RadAcctId ".
- "(UserName $UserName, Realm $Realm)";
- my $status = 'skipped';
- if ( !@svc_acct ) {
- warn "WARNING: no svc_acct record found $errinfo - skipping\n";
- } elsif ( scalar(@svc_acct) > 1 ) {
- warn "WARNING: multiple svc_acct records found $errinfo - skipping\n";
- } else {
- my $svc_acct = $svc_acct[0];
- warn "found svc_acct ". $svc_acct->svcnum. " $errinfo\n" if $DEBUG;
- if ( $svc_acct->seconds !~ /^$/ ) {
- warn " svc_acct.seconds found (". $svc_acct->seconds.
- ") - decrementing\n"
- if $DEBUG;
- my $error = $svc_acct->decrement_seconds($AcctSessionTime);
- die $error if $error;
- $status = 'done';
- } else {
- warn " no existing seconds value for svc_acct - skiping\n" if $DEBUG;
- }
- }
-
- warn "setting FreesideStatus to $status $errinfo\n" if $DEBUG;
- my $psth = $dbh->prepare("UPDATE radacct
- SET FreesideStatus = ?
- WHERE RadAcctId = ?"
- ) or die $dbh->errstr;
- $psth->execute($status, $RadAcctId) or die $psth->errstr;
-
- }
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/sqlradius_withdomain.pm b/FS/FS/part_export/sqlradius_withdomain.pm
deleted file mode 100644
index e5a7151..0000000
--- a/FS/FS/part_export/sqlradius_withdomain.pm
+++ /dev/null
@@ -1,28 +0,0 @@
-package FS::part_export::sqlradius_withdomain;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::sqlradius;
-
-tie my %options, 'Tie::IxHash', %FS::part_export::sqlradius::options;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to SQL-backed RADIUS (FreeRADIUS, ICRADIUS) with realms',
- 'options' => \%options,
- 'nodomain' => '',
- 'notes' => $FS::part_export::sqlradius::notes1.
- 'This export exports domains to RADIUS realms (see also '.
- 'sqlradius). '.
- $FS::part_export::sqlradius::notes2
-);
-
-@ISA = qw(FS::part_export::sqlradius);
-
-sub export_username {
- my($self, $svc_acct) = (shift, shift);
- $svc_acct->email;
-}
-
-1;
-
diff --git a/FS/FS/part_export/sysvshell.pm b/FS/FS/part_export/sysvshell.pm
deleted file mode 100644
index 244c3bf..0000000
--- a/FS/FS/part_export/sysvshell.pm
+++ /dev/null
@@ -1,25 +0,0 @@
-package FS::part_export::sysvshell;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export::passwdfile;
-
-@ISA = qw(FS::part_export::passwdfile);
-
-tie my %options, 'Tie::IxHash', %FS::part_export::passwdfile::options;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' =>
- 'Batch export of /etc/passwd and /etc/shadow files (Linux, Solaris)',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-MD5 crypt requires installation of
-<a href="http://search.cpan.org/dist/Crypt-PasswdMD5">Crypt::PasswdMD5</a>
-from CPAN. Run bin/sysvshell.export to export the files.
-END
-);
-
-1;
-
diff --git a/FS/FS/part_export/textradius.pm b/FS/FS/part_export/textradius.pm
deleted file mode 100644
index 65936ea..0000000
--- a/FS/FS/part_export/textradius.pm
+++ /dev/null
@@ -1,191 +0,0 @@
-package FS::part_export::textradius;
-
-use vars qw(@ISA %info $prefix);
-use Fcntl qw(:flock);
-use Tie::IxHash;
-use FS::UID qw(datasrc);
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'users' => { label=>'users file location', default=>'/etc/raddb/users' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' =>
- 'Real-time export to a text /etc/raddb/users file (Livingston, Cistron)',
- 'options' => \%options,
- 'notes' => <<'END'
-This will edit a text RADIUS users file in place on a remote server.
-Requires installation of
-<a href="http://search.cpan.org/dist/RADIUS-UserFile">RADIUS::UserFile</a>
-from CPAN. If using RADIUS::UserFile 1.01, make sure to apply
-<a href="http://rt.cpan.org/NoAuth/Bug.html?id=1210">this patch</a>. Also
-make sure <a href="http://rsync.samba.org/">rsync</a> is installed on the
-remote machine, and <a href="../docs/ssh.html">SSH is setup for unattended
-operation</a>.
-END
-);
-
-$prefix = "/usr/local/etc/freeside/export.";
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
- $err_or_queue = $self->textradius_queue( $svc_acct->svcnum, 'insert',
- $svc_acct->username, $svc_acct->radius_check, '-', $svc_acct->radius_reply);
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- return "can't (yet?) change username with textradius"
- if $old->username ne $new->username;
- #return '' unless $old->_password ne $new->_password;
- $err_or_queue = $self->textradius_queue( $new->svcnum, 'insert',
- $new->username, $new->radius_check, '-', $new->radius_reply);
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $err_or_queue = $self->textradius_queue( $svc_acct->svcnum, 'delete',
- $svc_acct->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-#a good idea to queue anything that could fail or take any time
-sub textradius_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::textradius::textradius_$method",
- };
- $queue->insert(
- $self->option('user')||'root',
- $self->machine,
- $self->option('users'),
- @_,
- ) or $queue;
-}
-
-sub textradius_insert { #subroutine, not method
- my( $user, $host, $users, $username, @attributes ) = @_;
-
- #silly arg processing
- my($att, @check);
- push @check, $att while @attributes && ($att=shift @attributes) ne '-';
- my %check = @check;
- my %reply = @attributes;
-
- my $file = textradius_download($user, $host, $users);
-
- eval "use RADIUS::UserFile;";
- die $@ if $@;
-
- my $userfile = new RADIUS::UserFile(
- File => $file,
- Who => [ $username ],
- Check_Items => [ keys %check ],
- ) or die "error parsing $file";
-
- $userfile->remove($username);
- $userfile->add(
- Who => $username,
- Attributes => { %check, %reply },
- Comment => 'user added by Freeside',
- ) or die "error adding to $file";
-
- $userfile->update( Who => [ $username ] )
- or die "error updating $file";
-
- textradius_upload($user, $host, $users);
-
-}
-
-sub textradius_delete { #subroutine, not method
- my( $user, $host, $users, $username ) = @_;
-
- my $file = textradius_download($user, $host, $users);
-
- eval "use RADIUS::UserFile;";
- die $@ if $@;
-
- my $userfile = new RADIUS::UserFile(
- File => $file,
- Who => [ $username ],
- ) or die "error parsing $file";
-
- $userfile->remove($username);
-
- $userfile->update( Who => [ $username ] )
- or die "error updating $file";
-
- textradius_upload($user, $host, $users);
-}
-
-sub textradius_download {
- my( $user, $host, $users ) = @_;
-
- my $dir = $prefix. datasrc;
- mkdir $dir, 0700 or die $! unless -d $dir;
- $dir .= "/$host";
- mkdir $dir, 0700 or die $! unless -d $dir;
-
- my $dest = "$dir/users";
-
- eval "use File::Rsync;";
- die $@ if $@;
- my $rsync = File::Rsync->new({ rsh => 'ssh' });
-
- open(LOCK, "+>>$dest.lock")
- and flock(LOCK,LOCK_EX)
- or die "can't open $dest.lock: $!";
-
- $rsync->exec( {
- src => "$user\@$host:$users",
- dest => $dest,
- } ); # true/false return value from exec is not working, alas
- if ( $rsync->err ) {
- die "error downloading $user\@$host:$users : ".
- 'exit status: '. $rsync->status. ', '.
- 'STDERR: '. join(" / ", $rsync->err). ', '.
- 'STDOUT: '. join(" / ", $rsync->out);
- }
-
- $dest;
-}
-
-sub textradius_upload {
- my( $user, $host, $users ) = @_;
-
- my $dir = $prefix. datasrc. "/$host";
-
- eval "use File::Rsync;";
- die $@ if $@;
- my $rsync = File::Rsync->new({
- rsh => 'ssh',
- #dry_run => 1,
- });
- $rsync->exec( {
- src => "$dir/users",
- dest => "$user\@$host:$users",
- } ); # true/false return value from exec is not working, alas
- if ( $rsync->err ) {
- die "error uploading to $user\@$host:$users : ".
- 'exit status: '. $rsync->status. ', '.
- 'STDERR: '. join(" / ", $rsync->err). ', '.
- 'STDOUT: '. join(" / ", $rsync->out);
- }
-
- flock(LOCK,LOCK_UN);
- close LOCK;
-
-}
-
-1;
-
diff --git a/FS/FS/part_export/vpopmail.pm b/FS/FS/part_export/vpopmail.pm
deleted file mode 100644
index 0fc8266..0000000
--- a/FS/FS/part_export/vpopmail.pm
+++ /dev/null
@@ -1,254 +0,0 @@
-package FS::part_export::vpopmail;
-
-use vars qw(@ISA %info @saltset $exportdir);
-use Fcntl qw(:flock);
-use Tie::IxHash;
-use File::Path;
-use FS::UID qw( datasrc );
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- #'machine' => { label=>'vpopmail machine', },
- 'dir' => { label=>'directory', }, # ?more info? default?
- 'uid' => { label=>'vpopmail uid' },
- 'gid' => { label=>'vpopmail gid' },
- 'restart' => { label=> 'vpopmail restart command',
- default=> 'cd /home/vpopmail/domains; for domain in *; do /home/vpopmail/bin/vmkpasswd $domain; done; /var/qmail/bin/qmail-newu; killall -HUP qmail-send',
- },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- 'desc' => 'Real-time export to vpopmail text files',
- 'options' => \%options,
- 'notes' => <<'END'
-This export is currently unmaintained. See shellcommands_withdomain for an
-export that uses vpopmail CLI commands instead.<BR>
-<BR>
-Real time export to <a href="http://inter7.com/vpopmail/">vpopmail</a> text
-files. <a href="http://search.cpan.org/dist/File-Rsync">File::Rsync</a>
-must be installed, and you will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>
-to <b>vpopmail</b>@<i>export.host</i>.
-END
-);
-
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_acct) = (shift, shift);
- $self->vpopmail_queue( $svc_acct->svcnum, 'insert',
- $svc_acct->username,
- crypt($svc_acct->_password,$saltset[int(rand(64))].$saltset[int(rand(64))]),
- $svc_acct->domain,
- $svc_acct->quota,
- $svc_acct->finger,
- );
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
-
- my $cpassword = crypt(
- $new->_password, $saltset[int(rand(64))].$saltset[int(rand(64))]
- );
-
- return "can't change username with vpopmail"
- if $old->username ne $new->username;
-
- #no.... if mail can't be preserved, better to disallow username changes
- #if ($old->username ne $new->username || $old->domain ne $new->domain ) {
- # vpopmail_queue( $svc_acct->svcnum, 'delete',
- # $old->username, $old->domain
- # );
- # vpopmail_queue( $svc_acct->svcnum, 'insert',
- # $new->username,
- # $cpassword,
- # $new->domain,
- # );
-
- return '' unless $old->_password ne $new->_password;
-
- $self->vpopmail_queue( $new->svcnum, 'replace',
- $new->username, $cpassword, $new->domain, $new->quota, $new->finger );
-}
-
-sub _export_delete {
- my( $self, $svc_acct ) = (shift, shift);
- $self->vpopmail_queue( $svc_acct->svcnum, 'delete',
- $svc_acct->username, $svc_acct->domain );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub vpopmail_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
-
- my $exportdir = "/usr/local/etc/freeside/export." . datasrc;
- mkdir $exportdir, 0700 or die $! unless -d $exportdir;
- $exportdir .= "/vpopmail";
- mkdir $exportdir, 0700 or die $! unless -d $exportdir;
- $exportdir .= '/'. $self->machine;
- mkdir $exportdir, 0700 or die $! unless -d $exportdir;
- mkdir "$exportdir/domains", 0700 or die $! unless -d "$exportdir/domains";
-
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::vpopmail::vpopmail_$method",
- };
- $queue->insert(
- $exportdir,
- $self->machine,
- $self->option('dir'),
- $self->option('uid'),
- $self->option('gid'),
- $self->option('restart'),
- @_
- );
-}
-
-sub vpopmail_insert { #subroutine, not method
- my( $exportdir, $machine, $dir, $uid, $gid, $restart ) = splice @_,0,6;
- my( $username, $password, $domain, $quota, $finger ) = @_;
-
- mkdir "$exportdir/domains/$domain", 0700 or die $!
- unless -d "$exportdir/domains/$domain";
-
- (open(VPASSWD, ">>$exportdir/domains/$domain/vpasswd")
- and flock(VPASSWD,LOCK_EX)
- ) or die "can't open vpasswd file for $username\@$domain: ".
- "$exportdir/domains/$domain/vpasswd: $!";
- print VPASSWD join(":",
- $username,
- $password,
- '1',
- '0',
- $finger,
- "$dir/domains/$domain/$username",
- $quota ? $quota.'S' : 'NOQUOTA',
- ), "\n";
-
- flock(VPASSWD,LOCK_UN);
- close(VPASSWD);
-
- for my $mkdir (
- grep { ! -d $_ } map { "$exportdir/domains/$domain/$username$_" }
- ( '', qw( /Maildir /Maildir/cur /Maildir/new /Maildir/tmp ) )
- ) {
- mkdir $mkdir, 0700 or die "can't mkdir $mkdir: $!";
- }
-
- vpopmail_sync( $exportdir, $machine, $dir, $uid, $gid, $restart );
-
-}
-
-sub vpopmail_replace { #subroutine, not method
- my( $exportdir, $machine, $dir, $uid, $gid, $restart ) = splice @_,0,6;
- my( $username, $password, $domain, $quota, $finger ) = @_;
-
- (open(VPASSWD, "$exportdir/domains/$domain/vpasswd")
- and flock(VPASSWD,LOCK_EX)
- ) or die "can't open $exportdir/domains/$domain/vpasswd: $!";
-
- open(VPASSWDTMP, ">$exportdir/domains/$domain/vpasswd.tmp")
- or die "Can't open $exportdir/domains/$domain/vpasswd.tmp: $!";
-
- while (<VPASSWD>) {
- my ($mailbox, $pw, $vuid, $vgid, $vfinger, $vdir, $vquota, @rest) =
- split(':', $_);
- if ( $username ne $mailbox ) {
- print VPASSWDTMP $_;
- next
- }
- print VPASSWDTMP join (':',
- $mailbox,
- $password,
- '1',
- '0',
- $finger,
- "$dir/domains/$domain/$username", #$vdir
- $quota ? $quota.'S' : 'NOQUOTA',
- ), "\n";
- }
-
- close(VPASSWDTMP);
-
- rename "$exportdir/domains/$domain/vpasswd.tmp", "$exportdir/domains/$domain/vpasswd"
- or die "Can't rename $exportdir/domains/$domain/vpasswd.tmp: $!";
-
- flock(VPASSWD,LOCK_UN);
- close(VPASSWD);
-
- vpopmail_sync( $exportdir, $machine, $dir, $uid, $gid, $restart );
-
-}
-
-sub vpopmail_delete { #subroutine, not method
- my( $exportdir, $machine, $dir, $uid, $gid, $restart ) = splice @_,0,6;
- my( $username, $domain ) = @_;
-
- (open(VPASSWD, "$exportdir/domains/$domain/vpasswd")
- and flock(VPASSWD,LOCK_EX)
- ) or die "can't open $exportdir/domains/$domain/vpasswd: $!";
-
- open(VPASSWDTMP, ">$exportdir/domains/$domain/vpasswd.tmp")
- or die "Can't open $exportdir/domains/$domain/vpasswd.tmp: $!";
-
- while (<VPASSWD>) {
- my ($mailbox, $rest) = split(':', $_);
- print VPASSWDTMP $_ unless $username eq $mailbox;
- }
-
- close(VPASSWDTMP);
-
- rename "$exportdir/domains/$domain/vpasswd.tmp",
- "$exportdir/domains/$domain/vpasswd"
- or die "Can't rename $exportdir/domains/$domain/vpasswd.tmp: $!";
-
- flock(VPASSWD,LOCK_UN);
- close(VPASSWD);
-
- rmtree "$exportdir/domains/$domain/$username"
- or die "can't rmtree $exportdir/domains/$domain/$username: $!";
-
- vpopmail_sync( $exportdir, $machine, $dir, $uid, $gid, $restart );
-}
-
-sub vpopmail_sync {
- my( $exportdir, $machine, $dir, $uid, $gid, $restart ) = splice @_,0,6;
-
- chdir $exportdir;
-# my @args = ( $rsync, "-rlpt", "-e", $ssh, "domains/",
-# "vpopmail\@$machine:$dir/domains/" );
-# system {$args[0]} @args;
-
- eval "use File::Rsync;";
- die $@ if $@;
-
- my $rsync = File::Rsync->new({ rsh => 'ssh' });
-
- $rsync->exec( {
- recursive => 1,
- perms => 1,
- times => 1,
- src => "$exportdir/domains/",
- dest => "vpopmail\@$machine:$dir/domains/",
- } ); # true/false return value from exec is not working, alas
- if ( $rsync->err ) {
- die "error uploading to vpopmail\@$machine:$dir/domains/ : ".
- 'exit status: '. $rsync->status. ', '.
- 'STDERR: '. join(" / ", $rsync->err). ', '.
- 'STDOUT: '. join(" / ", $rsync->out);
- }
-
- eval "use Net::SSH qw(ssh);";
- die $@ if $@;
-
- ssh("vpopmail\@$machine", $restart) if $restart;
-}
-
-1;
-
diff --git a/FS/FS/part_export/www_shellcommands.pm b/FS/FS/part_export/www_shellcommands.pm
deleted file mode 100644
index 9d3564e..0000000
--- a/FS/FS/part_export/www_shellcommands.pm
+++ /dev/null
@@ -1,167 +0,0 @@
-package FS::part_export::www_shellcommands;
-
-use strict;
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'user' => { label=>'Remote username', default=>'root' },
- 'useradd' => { label=>'Insert command',
- default=>'mkdir $homedir/$zone; chown $username $homedir/$zone; ln -s $homedir/$zone /var/www/$zone',
- },
- 'userdel' => { label=>'Delete command',
- default=>'[ -n "$zone" ] && rm -rf /var/www/$zone; rm -rf $homedir/$zone',
- },
- 'usermod' => { label=>'Modify command',
- default=>'[ -n "$old_zone" ] && rm /var/www/$old_zone; [ "$old_zone" != "$new_zone" -a -n "$new_zone" ] && ( mv $old_homedir/$old_zone $new_homedir/$new_zone; ln -sf $new_homedir/$new_zone /var/www/$new_zone ); [ "$old_username" != "$new_username" ] && chown -R $new_username $new_homedir/$new_zone; ln -sf $new_homedir/$new_zone /var/www/$new_zone',
- },
-;
-
-%info = (
- 'svc' => 'svc_www',
- 'desc' => 'Run remote commands via SSH, for virtual web sites (directory maintenance, FrontPage, ISPMan)',
- 'options' => \%options,
- 'notes' => <<'END'
-Run remote commands via SSH, for virtual web sites. You will need to
-<a href="../docs/ssh.html">setup SSH for unattended operation</a>.
-<BR><BR>Use these buttons for some useful presets:
-<UL>
- <LI>
- <INPUT TYPE="button" VALUE="Maintain directories" onClick='
- this.form.user.value = "root";
- this.form.useradd.value = "mkdir $homedir/$zone; chown $username $homedir/$zone; ln -s $homedir/$zone /var/www/$zone";
- this.form.userdel.value = "[ -n \"$zone\" ] && rm -rf /var/www/$zone; rm -rf $homedir/$zone";
- this.form.usermod.value = "[ -n \"$old_zone\" ] && rm /var/www/$old_zone; [ \"$old_zone\" != \"$new_zone\" -a -n \"$new_zone\" ] && ( mv $old_homedir/$old_zone $new_homedir/$new_zone; ln -sf $new_homedir/$new_zone /var/www/$new_zone ); [ \"$old_username\" != \"$new_username\" ] && chown -R $new_username $new_homedir/$new_zone; ln -sf $new_homedir/$new_zone /var/www/$new_zone";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="FrontPage extensions" onClick='
- this.form.user.value = "root";
- this.form.useradd.value = "/usr/local/frontpage/version5.0/bin/owsadm.exe -o install -p 80 -m $zone -xu $username -xg www-data -s /etc/apache/httpd.conf -u $username -pw $_password";
- this.form.userdel.value = "/usr/local/frontpage/version5.0/bin/owsadm.exe -o uninstall -p 80 -m $zone -s /etc/apache/httpd.conf";
- this.form.usermod.value = "";
- '>
- <LI>
- <INPUT TYPE="button" VALUE="ISPMan CLI" onClick='
- this.form.user.value = "root";
- this.form.useradd.value = "/usr/local/ispman/bin/ispman.addvhost -d $domain $bare_zone";
- this.form.userdel.value = "/usr/local/ispman/bin/ispman.deletevhost -d $domain $bare_zone";
- this.form.usermod.value = "";
- '></UL>
-The following variables are available for interpolation (prefixed with
-<code>new_</code> or <code>old_</code> for replace operations):
-<UL>
- <LI><code>$zone</code> - fully-qualified zone of this virtual host
- <LI><code>$bare_zone</code> - just the zone of this virtual host, without the domain portion
- <LI><code>$domain</code> - base domain
- <LI><code>$username</code>
- <LI><code>$homedir</code>
- <LI>All other fields in <a href="../docs/schema.html#svc_www">svc_www</a>
- are also available.
-</UL>
-END
-);
-
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self) = shift;
- $self->_export_command('useradd', @_);
-}
-
-sub _export_delete {
- my($self) = shift;
- $self->_export_command('userdel', @_);
-}
-
-sub _export_command {
- my ( $self, $action, $svc_www) = (shift, shift, shift);
- my $command = $self->option($action);
- return '' if $command =~ /^\s*$/;
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${$_} = $svc_www->getfield($_) foreach $svc_www->fields;
- }
- my $domain_record = $svc_www->domain_record; # or die ?
- my $zone = $domain_record->zone; # or die ?
- my $domain = $domain_record->svc_domain->domain;
- ( my $bare_zone = $zone ) =~ s/\.$domain$//;
- my $svc_acct = $svc_www->svc_acct; # or die ?
- my $username = $svc_acct->username;
- my $_password = $svc_acct->_password;
- my $homedir = $svc_acct->dir; # or die ?
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $svc_www->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-sub _export_replace {
- my($self, $new, $old ) = (shift, shift, shift);
- my $command = $self->option('usermod');
-
- #set variable for the command
- no strict 'vars';
- {
- no strict 'refs';
- ${"old_$_"} = $old->getfield($_) foreach $old->fields;
- ${"new_$_"} = $new->getfield($_) foreach $new->fields;
- }
- my $old_domain_record = $old->domain_record; # or die ?
- my $old_zone = $old_domain_record->zone; # or die ?
- my $old_domain = $old_domain_record->svc_domain->domain;
- ( my $old_bare_zone = $old_zone ) =~ s/\.$old_domain$//;
- my $old_svc_acct = $old->svc_acct; # or die ?
- my $old_username = $old_svc_acct->username;
- my $old_homedir = $old_svc_acct->dir; # or die ?
-
- my $new_domain_record = $new->domain_record; # or die ?
- my $new_zone = $new_domain_record->zone; # or die ?
- my $new_domain = $new_domain_record->svc_domain->domain;
- ( my $new_bare_zone = $new_zone ) =~ s/\.$new_domain$//;
- my $new_svc_acct = $new->svc_acct; # or die ?
- my $new_username = $new_svc_acct->username;
- #my $new__password = $new_svc_acct->_password;
- my $new_homedir = $new_svc_acct->dir; # or die ?
-
- #done setting variables for the command
-
- $self->shellcommands_queue( $new->svcnum,
- user => $self->option('user')||'root',
- host => $self->machine,
- command => eval(qq("$command")),
- );
-}
-
-#a good idea to queue anything that could fail or take any time
-sub shellcommands_queue {
- my( $self, $svcnum ) = (shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::www_shellcommands::ssh_cmd",
- };
- $queue->insert( @_ );
-}
-
-sub ssh_cmd { #subroutine, not method
- use Net::SSH '0.08';
- &Net::SSH::ssh_cmd( { @_ } );
-}
-
-#sub shellcommands_insert { #subroutine, not method
-#}
-#sub shellcommands_replace { #subroutine, not method
-#}
-#sub shellcommands_delete { #subroutine, not method
-#}
-
diff --git a/FS/FS/part_export_option.pm b/FS/FS/part_export_option.pm
deleted file mode 100644
index e759404..0000000
--- a/FS/FS/part_export_option.pm
+++ /dev/null
@@ -1,134 +0,0 @@
-package FS::part_export_option;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::part_export;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::part_export_option - Object methods for part_export_option records
-
-=head1 SYNOPSIS
-
- use FS::part_export_option;
-
- $record = new FS::part_export_option \%hash;
- $record = new FS::part_export_option { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_export_option object represents an export option.
-FS::part_export_option inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item optionnum - primary key
-
-=item exportnum - export (see L<FS::part_export>)
-
-=item optionname - option name
-
-=item optionvalue - option value
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new export option. To add the export option to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'part_export_option'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid export option. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('optionnum')
- || $self->ut_foreign_key('exportnum', 'part_export', 'exportnum')
- || $self->ut_alpha('optionname')
- || $self->ut_anything('optionvalue')
- ;
- return $error if $error;
-
- return "Unknown exportnum: ". $self->exportnum
- unless qsearchs('part_export', { 'exportnum' => $self->exportnum } );
-
- #check options & values?
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-Possibly.
-
-=head1 SEE ALSO
-
-L<FS::part_export>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_pkg.pm b/FS/FS/part_pkg.pm
deleted file mode 100644
index 9de27f8..0000000
--- a/FS/FS/part_pkg.pm
+++ /dev/null
@@ -1,830 +0,0 @@
-package FS::part_pkg;
-
-use strict;
-use vars qw( @ISA %plans $DEBUG );
-use Carp qw(carp cluck confess);
-use Tie::IxHash;
-use FS::Conf;
-use FS::Record qw( qsearch qsearchs dbh dbdef );
-use FS::pkg_svc;
-use FS::part_svc;
-use FS::cust_pkg;
-use FS::agent_type;
-use FS::type_pkgs;
-use FS::part_pkg_option;
-use FS::pkg_class;
-
-@ISA = qw( FS::Record ); # FS::option_Common ); # this can use option_Common
- # when all the plandata bs is
- # gone
-
-$DEBUG = 0;
-
-=head1 NAME
-
-FS::part_pkg - Object methods for part_pkg objects
-
-=head1 SYNOPSIS
-
- use FS::part_pkg;
-
- $record = new FS::part_pkg \%hash
- $record = new FS::part_pkg { 'column' => 'value' };
-
- $custom_record = $template_record->clone;
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- @pkg_svc = $record->pkg_svc;
-
- $svcnum = $record->svcpart;
- $svcnum = $record->svcpart( 'svc_acct' );
-
-=head1 DESCRIPTION
-
-An FS::part_pkg object represents a package definition. FS::part_pkg
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item pkgpart - primary key (assigned automatically for new package definitions)
-
-=item pkg - Text name of this package definition (customer-viewable)
-
-=item comment - Text name of this package definition (non-customer-viewable)
-
-=item classnum - Optional package class (see L<FS::pkg_class>)
-
-=item promo_code - Promotional code
-
-=item setup - Setup fee expression (deprecated)
-
-=item freq - Frequency of recurring fee
-
-=item recur - Recurring fee expression (deprecated)
-
-=item setuptax - Setup fee tax exempt flag, empty or `Y'
-
-=item recurtax - Recurring fee tax exempt flag, empty or `Y'
-
-=item taxclass - Tax class
-
-=item plan - Price plan
-
-=item plandata - Price plan data (deprecated - see L<FS::part_pkg_option> instead)
-
-=item disabled - Disabled flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new package definition. To add the package definition to
-the database, see L<"insert">.
-
-=cut
-
-sub table { 'part_pkg'; }
-
-=item clone
-
-An alternate constructor. Creates a new package definition by duplicating
-an existing definition. A new pkgpart is assigned and `(CUSTOM) ' is prepended
-to the comment field. To add the package definition to the database, see
-L<"insert">.
-
-=cut
-
-sub clone {
- my $self = shift;
- my $class = ref($self);
- my %hash = $self->hash;
- $hash{'pkgpart'} = '';
- $hash{'comment'} = "(CUSTOM) ". $hash{'comment'}
- unless $hash{'comment'} =~ /^\(CUSTOM\) /;
- #new FS::part_pkg ( \%hash ); # ?
- new $class ( \%hash ); # ?
-}
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this package definition to the database. If there is an error,
-returns the error, otherwise returns false.
-
-Currently available options are: I<pkg_svc>, I<primary_svc>, I<cust_pkg>,
-I<custnum_ref> and I<options>.
-
-If I<pkg_svc> is set to a hashref with svcparts as keys and quantities as
-values, appropriate FS::pkg_svc records will be inserted.
-
-If I<primary_svc> is set to the svcpart of the primary service, the appropriate
-FS::pkg_svc record will be updated.
-
-If I<cust_pkg> is set to a pkgnum of a FS::cust_pkg record (or the FS::cust_pkg
-record itself), the object will be updated to point to this package definition.
-
-In conjunction with I<cust_pkg>, if I<custnum_ref> is set to a scalar reference,
-the scalar will be updated with the custnum value from the cust_pkg record.
-
-If I<options> is set to a hashref of options, appropriate FS::part_pkg_option
-records will be inserted.
-
-=cut
-
-sub insert {
- my $self = shift;
- my %options = @_;
- warn "FS::part_pkg::insert called on $self with options ".
- join(', ', map "$_=>$options{$_}", keys %options)
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- warn " saving legacy plandata" if $DEBUG;
- my $plandata = $self->get('plandata');
- $self->set('plandata', '');
-
- warn " inserting part_pkg record" if $DEBUG;
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $plandata ) {
-
- warn " inserting part_pkg_option records for plandata" if $DEBUG;
- foreach my $part_pkg_option (
- map { /^(\w+)=(.*)$/ or do { $dbh->rollback if $oldAutoCommit;
- return "illegal plandata: $plandata";
- };
- new FS::part_pkg_option {
- 'pkgpart' => $self->pkgpart,
- 'optionname' => $1,
- 'optionvalue' => $2,
- };
- }
- split("\n", $plandata)
- ) {
- my $error = $part_pkg_option->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- } elsif ( $options{'options'} ) {
-
- warn " inserting part_pkg_option records for options hashref" if $DEBUG;
- foreach my $optionname ( keys %{$options{'options'}} ) {
-
- my $part_pkg_option =
- new FS::part_pkg_option {
- 'pkgpart' => $self->pkgpart,
- 'optionname' => $optionname,
- 'optionvalue' => $options{'options'}->{$optionname},
- };
-
- my $error = $part_pkg_option->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- }
-
- }
-
- my $conf = new FS::Conf;
- if ( $conf->exists('agent_defaultpkg') ) {
- warn " agent_defaultpkg set; allowing all agents to purchase package"
- if $DEBUG;
- foreach my $agent_type ( qsearch('agent_type', {} ) ) {
- my $type_pkgs = new FS::type_pkgs({
- 'typenum' => $agent_type->typenum,
- 'pkgpart' => $self->pkgpart,
- });
- my $error = $type_pkgs->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- warn " inserting pkg_svc records" if $DEBUG;
- my $pkg_svc = $options{'pkg_svc'} || {};
- foreach my $part_svc ( qsearch('part_svc', {} ) ) {
- my $quantity = $pkg_svc->{$part_svc->svcpart} || 0;
- my $primary_svc =
- ( $options{'primary_svc'} && $options{'primary_svc'}==$part_svc->svcpart )
- ? 'Y'
- : '';
-
- my $pkg_svc = new FS::pkg_svc( {
- 'pkgpart' => $self->pkgpart,
- 'svcpart' => $part_svc->svcpart,
- 'quantity' => $quantity,
- 'primary_svc' => $primary_svc,
- } );
- my $error = $pkg_svc->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- if ( $options{'cust_pkg'} ) {
- warn " updating cust_pkg record " if $DEBUG;
- my $old_cust_pkg =
- ref($options{'cust_pkg'})
- ? $options{'cust_pkg'}
- : qsearchs('cust_pkg', { pkgnum => $options{'cust_pkg'} } );
- ${ $options{'custnum_ref'} } = $old_cust_pkg->custnum
- if $options{'custnum_ref'};
- my %hash = $old_cust_pkg->hash;
- $hash{'pkgpart'} = $self->pkgpart,
- my $new_cust_pkg = new FS::cust_pkg \%hash;
- local($FS::cust_pkg::disable_agentcheck) = 1;
- my $error = $new_cust_pkg->replace($old_cust_pkg);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error modifying cust_pkg record: $error";
- }
- }
-
- warn " commiting transaction" if $DEBUG;
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item delete
-
-Currently unimplemented.
-
-=cut
-
-sub delete {
- return "Can't (yet?) delete package definitions.";
-# check & make sure the pkgpart isn't in cust_pkg or type_pkgs?
-}
-
-=item replace OLD_RECORD [ , OPTION => VALUE ... ]
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-Currently available options are: I<pkg_svc> and I<primary_svc>
-
-If I<pkg_svc> is set to a hashref with svcparts as keys and quantities as
-values, the appropriate FS::pkg_svc records will be replace.
-
-If I<primary_svc> is set to the svcpart of the primary service, the appropriate
-FS::pkg_svc record will be updated.
-
-=cut
-
-sub replace {
- my( $new, $old ) = ( shift, shift );
- my %options = @_;
- warn "FS::part_pkg::replace called on $new to replace $old ".
- "with options %options"
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- warn " saving legacy plandata" if $DEBUG;
- my $plandata = $new->get('plandata');
- $new->set('plandata', '');
-
- warn " deleting old part_pkg_option records" if $DEBUG;
- foreach my $part_pkg_option ( $old->part_pkg_option ) {
- my $error = $part_pkg_option->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- warn " replacing part_pkg record" if $DEBUG;
- my $error = $new->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- warn " inserting part_pkg_option records for plandata" if $DEBUG;
- foreach my $part_pkg_option (
- map { /^(\w+)=(.*)$/ or do { $dbh->rollback if $oldAutoCommit;
- return "illegal plandata: $plandata";
- };
- new FS::part_pkg_option {
- 'pkgpart' => $new->pkgpart,
- 'optionname' => $1,
- 'optionvalue' => $2,
- };
- }
- split("\n", $plandata)
- ) {
- my $error = $part_pkg_option->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- warn " replacing pkg_svc records" if $DEBUG;
- my $pkg_svc = $options{'pkg_svc'} || {};
- foreach my $part_svc ( qsearch('part_svc', {} ) ) {
- my $quantity = $pkg_svc->{$part_svc->svcpart} || 0;
- my $primary_svc = $options{'primary_svc'} == $part_svc->svcpart ? 'Y' : '';
-
- my $old_pkg_svc = qsearchs('pkg_svc', {
- 'pkgpart' => $old->pkgpart,
- 'svcpart' => $part_svc->svcpart,
- } );
- my $old_quantity = $old_pkg_svc ? $old_pkg_svc->quantity : 0;
- my $old_primary_svc =
- ( $old_pkg_svc && $old_pkg_svc->dbdef_table->column('primary_svc') )
- ? $old_pkg_svc->primary_svc
- : '';
- next unless $old_quantity != $quantity || $old_primary_svc ne $primary_svc;
-
- my $new_pkg_svc = new FS::pkg_svc( {
- 'pkgsvcnum' => ( $old_pkg_svc ? $old_pkg_svc->pkgsvcnum : '' ),
- 'pkgpart' => $new->pkgpart,
- 'svcpart' => $part_svc->svcpart,
- 'quantity' => $quantity,
- 'primary_svc' => $primary_svc,
- } );
- my $error = $old_pkg_svc
- ? $new_pkg_svc->replace($old_pkg_svc)
- : $new_pkg_svc->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- warn " commiting transaction" if $DEBUG;
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-=item check
-
-Checks all fields to make sure this is a valid package definition. If
-there is an error, returns the error, otherwise returns false. Called by the
-insert and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- warn "FS::part_pkg::check called on $self" if $DEBUG;
-
- for (qw(setup recur plandata)) {
- #$self->set($_=>0) if $self->get($_) =~ /^\s*$/; }
- return "Use of $_ field is deprecated; set a plan and options"
- if length($self->get($_));
- $self->set($_, '');
- }
-
- if ( $self->dbdef_table->column('freq')->type =~ /(int)/i ) {
- my $error = $self->ut_number('freq');
- return $error if $error;
- } else {
- $self->freq =~ /^(\d+[hdw]?)$/
- or return "Illegal or empty freq: ". $self->freq;
- $self->freq($1);
- }
-
- my $error = $self->ut_numbern('pkgpart')
- || $self->ut_text('pkg')
- || $self->ut_text('comment')
- || $self->ut_textn('promo_code')
- || $self->ut_alphan('plan')
- || $self->ut_enum('setuptax', [ '', 'Y' ] )
- || $self->ut_enum('recurtax', [ '', 'Y' ] )
- || $self->ut_textn('taxclass')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- || $self->SUPER::check
- ;
- return $error if $error;
-
- if ( $self->classnum !~ /^$/ ) {
- my $error = $self->ut_foreign_key('classnum', 'pkg_class', 'classnum');
- return $error if $error;
- } else {
- $self->classnum('');
- }
-
- return 'Unknown plan '. $self->plan
- unless exists($plans{$self->plan});
-
- my $conf = new FS::Conf;
- return 'Taxclass is required'
- if ! $self->taxclass && $conf->exists('require_taxclasses');
-
- '';
-}
-
-=item pkg_class
-
-Returns the package class, as an FS::pkg_class object, or the empty string
-if there is no package class.
-
-=cut
-
-sub pkg_class {
- my $self = shift;
- if ( $self->classnum ) {
- qsearchs('pkg_class', { 'classnum' => $self->classnum } );
- } else {
- return '';
- }
-}
-
-=item classname
-
-Returns the package class name, or the empty string if there is no package
-class.
-
-=cut
-
-sub classname {
- my $self = shift;
- my $pkg_class = $self->pkg_class;
- $pkg_class
- ? $pkg_class->classname
- : '';
-}
-
-=item pkg_svc
-
-Returns all FS::pkg_svc objects (see L<FS::pkg_svc>) for this package
-definition (with non-zero quantity).
-
-=cut
-
-sub pkg_svc {
- my $self = shift;
- #sort { $b->primary cmp $a->primary }
- grep { $_->quantity }
- qsearch( 'pkg_svc', { 'pkgpart' => $self->pkgpart } );
-}
-
-=item svcpart [ SVCDB ]
-
-Returns the svcpart of the primary service definition (see L<FS::part_svc>)
-associated with this package definition (see L<FS::pkg_svc>). Returns
-false if there not a primary service definition or exactly one service
-definition with quantity 1, or if SVCDB is specified and does not match the
-svcdb of the service definition,
-
-=cut
-
-sub svcpart {
- my $self = shift;
- my $svcdb = scalar(@_) ? shift : '';
- my @svcdb_pkg_svc =
- grep { ( $svcdb eq $_->part_svc->svcdb || !$svcdb ) } $self->pkg_svc;
- my @pkg_svc = ();
- @pkg_svc = grep { $_->primary_svc =~ /^Y/i } @svcdb_pkg_svc
- if dbdef->table('pkg_svc')->column('primary_svc');
- @pkg_svc = grep {$_->quantity == 1 } @svcdb_pkg_svc
- unless @pkg_svc;
- return '' if scalar(@pkg_svc) != 1;
- $pkg_svc[0]->svcpart;
-}
-
-=item payby
-
-Returns a list of the acceptable payment types for this package. Eventually
-this should come out of a database table and be editable, but currently has the
-following logic instead:
-
-If the package is free, the single item B<BILL> is
-returned, otherwise, the single item B<CARD> is returned.
-
-(CHEK? LEC? Probably shouldn't accept those by default, prone to abuse)
-
-=cut
-
-sub payby {
- my $self = shift;
- if ( $self->is_free ) {
- ( 'BILL' );
- } else {
- ( 'CARD' );
- }
-}
-
-=item is_free
-
-Returns true if this package is free.
-
-=cut
-
-sub is_free {
- my $self = shift;
- unless ( $self->plan ) {
- $self->setup =~ /^\s*0+(\.0*)?\s*$/
- && $self->recur =~ /^\s*0+(\.0*)?\s*$/;
- } elsif ( $self->can('is_free_options') ) {
- not grep { $_ !~ /^\s*0*(\.0*)?\s*$/ }
- map { $self->option($_) }
- $self->is_free_options;
- } else {
- warn "FS::part_pkg::is_free: FS::part_pkg::". $self->plan. " subclass ".
- "provides neither is_free_options nor is_free method; returning false";
- 0;
- }
-}
-
-
-sub freqs_href {
- #method, class method or sub? #my $self = shift;
-
- tie my %freq, 'Tie::IxHash',
- '0' => '(no recurring fee)',
- '1h' => 'hourly',
- '1d' => 'daily',
- '1w' => 'weekly',
- '2w' => 'biweekly (every 2 weeks)',
- '1' => 'monthly',
- '2' => 'bimonthly (every 2 months)',
- '3' => 'quarterly (every 3 months)',
- '6' => 'semiannually (every 6 months)',
- '12' => 'annually',
- '24' => 'biannually (every 2 years)',
- '36' => 'triannually (every 3 years)',
- '48' => '(every 4 years)',
- '60' => '(every 5 years)',
- '120' => '(every 10 years)',
- ;
-
- \%freq;
-
-}
-
-=item freq_pretty
-
-Returns an english representation of the I<freq> field, such as "monthly",
-"weekly", "semi-annually", etc.
-
-=cut
-
-sub freq_pretty {
- my $self = shift;
- my $freq = $self->freq;
-
- #my $freqs_href = $self->freqs_href;
- my $freqs_href = freqs_href();
-
- if ( exists($freqs_href->{$freq}) ) {
- $freqs_href->{$freq};
- } else {
- my $interval = 'month';
- if ( $freq =~ /^(\d+)([hdw])$/ ) {
- my %interval = ( 'h' => 'hour', 'd'=>'day', 'w'=>'week' );
- $interval = $interval{$2};
- }
- if ( $1 == 1 ) {
- "every $interval";
- } else {
- "every $freq ${interval}s";
- }
- }
-}
-
-=item plandata
-
-For backwards compatibility, returns the plandata field as well as all options
-from FS::part_pkg_option.
-
-=cut
-
-sub plandata {
- my $self = shift;
- carp "plandata is deprecated";
- if ( @_ ) {
- $self->SUPER::plandata(@_);
- } else {
- my $plandata = $self->get('plandata');
- my %options = $self->options;
- $plandata .= join('', map { "$_=$options{$_}\n" } keys %options );
- $plandata;
- }
-}
-
-=item part_pkg_option
-
-Returns all options as FS::part_pkg_option objects (see
-L<FS::part_pkg_option>).
-
-=cut
-
-sub part_pkg_option {
- my $self = shift;
- qsearch('part_pkg_option', { 'pkgpart' => $self->pkgpart } );
-}
-
-=item options
-
-Returns a list of option names and values suitable for assigning to a hash.
-
-=cut
-
-sub options {
- my $self = shift;
- map { $_->optionname => $_->optionvalue } $self->part_pkg_option;
-}
-
-=item option OPTIONNAME
-
-Returns the option value for the given name, or the empty string.
-
-=cut
-
-sub option {
- my( $self, $opt, $ornull ) = @_;
- my $part_pkg_option =
- qsearchs('part_pkg_option', {
- pkgpart => $self->pkgpart,
- optionname => $opt,
- } );
- return $part_pkg_option->optionvalue if $part_pkg_option;
- my %plandata = map { /^(\w+)=(.*)$/; ( $1 => $2 ); }
- split("\n", $self->get('plandata') );
- return $plandata{$opt} if exists $plandata{$opt};
- cluck "WARNING: (pkgpart ". $self->pkgpart. ") Package def option $opt".
- "not found in options or plandata!\n"
- unless $ornull;
- '';
-}
-
-=item _rebless
-
-Reblesses the object into the FS::part_pkg::PLAN class (if available), where
-PLAN is the object's I<plan> field. There should be better docs
-on how to create new price plans, but until then, see L</NEW PLAN CLASSES>.
-
-=cut
-
-sub _rebless {
- my $self = shift;
- my $plan = $self->plan;
- unless ( $plan ) {
- confess "no price plan found for pkgpart ". $self->pkgpart. "\n"
- if $DEBUG;
- return $self;
- }
- return $self if ref($self) =~ /::$plan$/; #already blessed into plan subclass
- my $class = ref($self). "::$plan";
- warn "reblessing $self into $class" if $DEBUG;
- eval "use $class;";
- die $@ if $@;
- bless($self, $class) unless $@;
- $self;
-}
-
-#fallbacks that eval the setup and recur fields, for backwards compat
-
-sub calc_setup {
- my $self = shift;
- warn 'no price plan class for '. $self->plan. ", eval-ing setup\n";
- $self->_calc_eval('setup', @_);
-}
-
-sub calc_recur {
- my $self = shift;
- warn 'no price plan class for '. $self->plan. ", eval-ing recur\n";
- $self->_calc_eval('recur', @_);
-}
-
-use vars qw( $sdate @details );
-sub _calc_eval {
- #my( $self, $field, $cust_pkg ) = @_;
- my( $self, $field, $cust_pkg, $sdateref, $detailsref ) = @_;
- *sdate = $sdateref;
- *details = $detailsref;
- $self->$field() =~ /^(.*)$/
- or die "Illegal $field (pkgpart ". $self->pkgpart. '): '.
- $self->$field(). "\n";
- my $prog = $1;
- return 0 if $prog =~ /^\s*$/;
- my $value = eval $prog;
- die $@ if $@;
- $value;
-}
-
-#fallback that return 0 for old legacy packages with no plan
-
-sub calc_remain { 0; }
-sub calc_cancel { 0; }
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item plan_info
-
-=cut
-
-my %info;
-foreach my $INC ( @INC ) {
- warn "globbing $INC/FS/part_pkg/*.pm\n" if $DEBUG;
- foreach my $file ( glob("$INC/FS/part_pkg/*.pm") ) {
- warn "attempting to load plan info from $file\n" if $DEBUG;
- $file =~ /\/(\w+)\.pm$/ or do {
- warn "unrecognized file in $INC/FS/part_pkg/: $file\n";
- next;
- };
- my $mod = $1;
- my $info = eval "use FS::part_pkg::$mod; ".
- "\\%FS::part_pkg::$mod\::info;";
- if ( $@ ) {
- die "error using FS::part_pkg::$mod (skipping): $@\n" if $@;
- next;
- }
- unless ( keys %$info ) {
- warn "no %info hash found in FS::part_pkg::$mod, skipping\n"
- unless $mod =~ /^(passwdfile|null)$/; #hack but what the heck
- next;
- }
- warn "got plan info from FS::part_pkg::$mod: $info\n" if $DEBUG;
- if ( exists($info->{'disabled'}) && $info->{'disabled'} ) {
- warn "skipping disabled plan FS::part_pkg::$mod" if $DEBUG;
- next;
- }
- $info{$mod} = $info;
- }
-}
-
-tie %plans, 'Tie::IxHash',
- map { $_ => $info{$_} }
- sort { $info{$a}->{'weight'} <=> $info{$b}->{'weight'} }
- keys %info;
-
-sub plan_info {
- \%plans;
-}
-
-=back
-
-=head1 NEW PLAN CLASSES
-
-A module should be added in FS/FS/part_pkg/ Eventually, an example may be
-found in eg/plan_template.pm. Until then, it is suggested that you use the
-other modules in FS/FS/part_pkg/ as a guide.
-
-=head1 BUGS
-
-The delete method is unimplemented.
-
-setup and recur semantics are not yet defined (and are implemented in
-FS::cust_bill. hmm.). now they're deprecated and need to go.
-
-plandata should go
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_pkg>, L<FS::type_pkgs>, L<FS::pkg_svc>, L<Safe>.
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_pkg/flat.pm b/FS/FS/part_pkg/flat.pm
deleted file mode 100644
index bed86cc..0000000
--- a/FS/FS/part_pkg/flat.pm
+++ /dev/null
@@ -1,81 +0,0 @@
-package FS::part_pkg::flat;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch);
-use FS::part_pkg;
-
-@ISA = qw(FS::part_pkg);
-
-%info = (
- 'name' => 'Flat rate (anniversary billing)',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'externalid' => { 'name' => 'Optional External ID',
- 'default' => '',
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'unused_credit', 'externalid' ],
- 'weight' => 10,
-);
-
-sub calc_setup {
- my($self, $cust_pkg ) = @_;
- $self->option('setup_fee');
-}
-
-sub calc_recur {
- my $self = shift;
- $self->base_recur(@_);
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_fee');
-}
-
-sub calc_remain {
- my ($self, $cust_pkg) = @_;
- my $time = time; #should be able to pass this in for credit calculation
- my $next_bill = $cust_pkg->getfield('bill') || 0;
- my $last_bill = $cust_pkg->last_bill || 0;
- return 0 if ! $self->base_recur
- || ! $self->option('unused_credit', 1)
- || ! $last_bill
- || ! $next_bill
- || $next_bill < $time;
-
- my %sec = (
- 'h' => 3600, # 60 * 60
- 'd' => 86400, # 60 * 60 * 24
- 'w' => 604800, # 60 * 60 * 24 * 7
- 'm' => 2629744, # 60 * 60 * 24 * 365.2422 / 12
- );
-
- $self->freq =~ /^(\d+)([hdwm]?)$/
- or die 'unparsable frequency: '. $self->freq;
- my $freq_sec = $1 * $sec{$2||'m'};
- return 0 unless $freq_sec;
-
- sprintf("%.2f", $self->base_recur * ( $next_bill - $time ) / $freq_sec );
-
-}
-
-sub is_free_options {
- qw( setup_fee recur_fee );
-}
-
-sub is_prepaid {
- 0; #no, we're postpaid
-}
-
-1;
diff --git a/FS/FS/part_pkg/flat_comission.pm b/FS/FS/part_pkg/flat_comission.pm
deleted file mode 100644
index 442415e..0000000
--- a/FS/FS/part_pkg/flat_comission.pm
+++ /dev/null
@@ -1,50 +0,0 @@
-package FS::part_pkg::flat_comission;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Flat rate with recurring commission per (any) active package',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'comission_amount' => { 'name' => 'Commission amount per month (per active package)',
- 'default' => 0,
- },
- 'comission_depth' => { 'name' => 'Number of layers',
- 'default' => 1,
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'unused_credit', 'comission_depth', 'comission_amount' ],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $error = $cust_pkg->cust_main->credit( \' + what.comission_amount.value + \' * scalar($cust_pkg->cust_main->referral_cust_pkg(\' + what.comission_depth.value+ \')), "commission" ); die $error if $error; \' + what.recur_fee.value + \';\'',
- 'weight' => 62,
-);
-
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
-
- my $amount = $self->option('comission_amount');
- my $num_active = scalar(
- $cust_pkg->cust_main->referral_cust_pkg( $self->option('comission_depth') )
- );
-
- my $error = $cust_pkg->cust_main->credit( $amount*$num_active, "commission" );
- die $error if $error;
-
- $self->option('recur_fee');
-}
-
-1;
diff --git a/FS/FS/part_pkg/flat_comission_cust.pm b/FS/FS/part_pkg/flat_comission_cust.pm
deleted file mode 100644
index 4abe66a..0000000
--- a/FS/FS/part_pkg/flat_comission_cust.pm
+++ /dev/null
@@ -1,55 +0,0 @@
-package FS::part_pkg::flat_comission_cust;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Flat rate with recurring commission per active customer',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'comission_amount' => { 'name' => 'Commission amount per month (per active customer)',
- 'default' => 0,
- },
- 'comission_depth' => { 'name' => 'Number of layers',
- 'default' => 1,
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'unused_credit', 'comission_depth', 'comission_amount' ],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $error = $cust_pkg->cust_main->credit( \' + what.comission_amount.value + \' * scalar($cust_pkg->cust_main->referral_cust_main_ncancelled(\' + what.comission_depth.value+ \')), "commission" ); die $error if $error; \' + what.recur_fee.value + \';\'',
- 'weight' => '60',
-);
-
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
-
- my $amount = $self->option('comission_amount');
- my $num_active = scalar(
- $cust_pkg->cust_main->referral_cust_main_ncancelled(
- $self->option('comission_depth')
- )
- );
-
- if ( $amount && $num_active ) {
- my $error =
- $cust_pkg->cust_main->credit( $amount*$num_active, "commission" );
- die $error if $error;
- }
-
- $self->option('recur_fee');
-}
-
-1;
diff --git a/FS/FS/part_pkg/flat_comission_pkg.pm b/FS/FS/part_pkg/flat_comission_pkg.pm
deleted file mode 100644
index 0f4d02a..0000000
--- a/FS/FS/part_pkg/flat_comission_pkg.pm
+++ /dev/null
@@ -1,50 +0,0 @@
-package FS::part_pkg::flat_comission_pkg;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Flat rate with recurring commission per (selected) active package',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'comission_amount' => { 'name' => 'Commission amount per month (per uncancelled package)',
- 'default' => 0,
- },
- 'comission_depth' => { 'name' => 'Number of layers',
- 'default' => 1,
- },
- 'comission_pkgpart' => { 'name' => 'Applicable packages<BR><FONT SIZE="-1">(hold <b>ctrl</b> to select multiple packages)</FONT>',
- 'type' => 'select_multiple',
- 'select_table' => 'part_pkg',
- 'select_hash' => { 'disabled' => '' } ,
- 'select_key' => 'pkgpart',
- 'select_label' => 'pkg',
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'unused_credit', 'comission_depth', 'comission_amount', 'comission_pkgpart' ],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '""; var pkgparts = ""; for ( var c=0; c < document.flat_comission_pkg.comission_pkgpart.options.length; c++ ) { if (document.flat_comission_pkg.comission_pkgpart.options[c].selected) { pkgparts = pkgparts + document.flat_comission_pkg.comission_pkgpart.options[c].value + \', \'; } } what.recur.value = \'my $error = $cust_pkg->cust_main->credit( \' + what.comission_amount.value + \' * scalar( grep { my $pkgpart = $_->pkgpart; grep { $_ == $pkgpart } ( \' + pkgparts + \' ) } $cust_pkg->cust_main->referral_cust_pkg(\' + what.comission_depth.value+ \')), "commission" ); die $error if $error; \' + what.recur_fee.value + \';\'',
- #'disabled' => 1,
- 'weight' => '64',
-);
-
-# XXX this needs to be fixed!!!
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
- $self->option('recur_fee');
-}
-
-1;
diff --git a/FS/FS/part_pkg/flat_delayed.pm b/FS/FS/part_pkg/flat_delayed.pm
deleted file mode 100644
index ec11699..0000000
--- a/FS/FS/part_pkg/flat_delayed.pm
+++ /dev/null
@@ -1,44 +0,0 @@
-package FS::part_pkg::flat_delayed;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Free (or setup fee) for X days, then flat rate'.
- ' (anniversary billing)',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'free_days' => { 'name' => 'Initial free days',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- },
- 'fieldorder' => [ 'free_days', 'setup_fee', 'recur_fee', 'unused_credit' ],
- #'setup' => '\'my $d = $cust_pkg->bill || $time; $d += 86400 * \' + what.free_days.value + \'; $cust_pkg->bill($d); $cust_pkg_mod_flag=1; \' + what.setup_fee.value',
- #'recur' => 'what.recur_fee.value',
- 'weight' => 50,
-);
-
-sub calc_setup {
- my($self, $cust_pkg, $time ) = @_;
-
- my $d = $cust_pkg->bill || $time;
- $d += 86400 * $self->option('free_days');
- $cust_pkg->bill($d);
-
- $self->option('setup_fee');
-}
-
-1;
diff --git a/FS/FS/part_pkg/incomplete/billoneday.pm b/FS/FS/part_pkg/incomplete/billoneday.pm
deleted file mode 100644
index 8740547..0000000
--- a/FS/FS/part_pkg/incomplete/billoneday.pm
+++ /dev/null
@@ -1,48 +0,0 @@
-package FS::part_pkg::billoneday;
-
-use strict;
-use vars qw(@ISA %info);
-use Time::Local qw(timelocal);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'charge a full month every (selectable) billing day',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'cutoff_day' => { 'name' => 'billing day',
- 'default' => 1,
- },
-
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee','cutoff_day'],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $mnow = $sdate; my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($sdate) )[0,1,2,3,4,5]; $sdate = timelocal(0,0,0,$self->option('cutoff_day'),$mon,$year); \' + what.recur_fee.value',
- 'freq' => 'm',
- 'weight' => 30,
-);
-
-sub calc_recur {
- my($self, $cust_pkg, $sdate ) = @_;
-
- my $mnow = $$sdate;
- my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($mnow) )[0,1,2,3,4,5];
- my $mstart = timelocal(0,0,0,$self->option('cutoff_day'),$mon,$year);
- my $mend = timelocal(0,0,0,$self->option('cutoff_day'), $mon == 11 ? 0 : $mon+1, $year+($mon==11));
-
- if($mday > $self->option('cutoff_date') and $mstart != $mnow ) {
- $$sdate = timelocal(0,0,0,$self->option('cutoff_day'), $mon == 11 ? 0 : $mon+1, $year+($mon==11));
- }
- else{
- $$sdate = timelocal(0,0,0,$self->option('cutoff_day'), $mon, $year);
- }
- $self->option('recur_fee');
-}
-1;
diff --git a/FS/FS/part_pkg/prepaid.pm b/FS/FS/part_pkg/prepaid.pm
deleted file mode 100644
index 5e7d2ba..0000000
--- a/FS/FS/part_pkg/prepaid.pm
+++ /dev/null
@@ -1,28 +0,0 @@
-package FS::part_pkg::prepaid;
-
-use strict;
-use vars qw(@ISA %info);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Prepaid, flat rate',
- 'fields' => {
- 'setup_fee' => { 'name' => 'One-time setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Initial and recharge fee for this package',
- 'default' => 0,
- }
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', ],
- 'weight' => 25,
-);
-
-sub is_prepaid {
- 1;
-}
-
-1;
-
diff --git a/FS/FS/part_pkg/prorate.pm b/FS/FS/part_pkg/prorate.pm
deleted file mode 100644
index e436679..0000000
--- a/FS/FS/part_pkg/prorate.pm
+++ /dev/null
@@ -1,64 +0,0 @@
-package FS::part_pkg::prorate;
-
-use strict;
-use vars qw(@ISA %info);
-use Time::Local qw(timelocal);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'First partial month pro-rated, then flat-rate (selectable billing day)',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'cutoff_day' => { 'name' => 'billing day',
- 'default' => 1,
- },
- #it would be better if this had to be turned on, its confusing
- 'externalid' => { 'name' => 'Optional External ID',
- 'default' => '',
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'unused_credit', 'cutoff_day',
- 'externalid', ],
- 'freq' => 'm',
- 'weight' => 20,
-);
-
-sub calc_recur {
- my($self, $cust_pkg, $sdate ) = @_;
- my $cutoff_day = $self->option('cutoff_day', 1) || 1;
- my $mnow = $$sdate;
- my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($mnow) )[0,1,2,3,4,5];
- my $mend;
- my $mstart;
-
- if ( $mday >= $cutoff_day ) {
- $mend =
- timelocal(0,0,0,$cutoff_day, $mon == 11 ? 0 : $mon+1, $year+($mon==11));
- $mstart =
- timelocal(0,0,0,$cutoff_day,$mon,$year);
-
- } else {
- $mend = timelocal(0,0,0,$cutoff_day, $mon, $year);
- if ($mon==0) {$mon=11;$year--;} else {$mon--;}
- $mstart= timelocal(0,0,0,$cutoff_day,$mon,$year);
- }
-
- $$sdate = $mstart;
- my $permonth = $self->option('recur_fee') / $self->freq;
-
- $permonth * ( ( $self->freq - 1 ) + ($mend-$mnow) / ($mend-$mstart) );
-}
-
-1;
diff --git a/FS/FS/part_pkg/sesmon_hour.pm b/FS/FS/part_pkg/sesmon_hour.pm
deleted file mode 100644
index 9843edb..0000000
--- a/FS/FS/part_pkg/sesmon_hour.pm
+++ /dev/null
@@ -1,56 +0,0 @@
-package FS::part_pkg::sesmon_hour;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Base charge plus charge per-hour from the session monitor',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'recur_included_hours' => { 'name' => 'Hours included',
- 'default' => 0,
- },
- 'recur_hourly_charge' => { 'name' => 'Additional charge per hour',
- 'default' => 0,
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_flat', 'unused_credit', 'recur_included_hours', 'recur_hourly_charge' ],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $hours = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 3600 - \' + what.recur_included_hours.value + \'; $hours = 0 if $hours < 0; \' + what.recur_flat.value + \' + \' + what.recur_hourly_charge.value + \' * $hours;\'',
- 'weight' => 80,
-);
-
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
-
- my $hours = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 3600;
- $hours -= $self->option('recur_included_hours');
- $hours = 0 if $hours < 0;
-
- $self->option('recur_flat') + $hours * $self->option('recur_hourly_charge');
-
-}
-
-sub is_free_options {
- qw( setup_fee recur_fee recur_hourly_charge );
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
diff --git a/FS/FS/part_pkg/sesmon_minute.pm b/FS/FS/part_pkg/sesmon_minute.pm
deleted file mode 100644
index 39516f8..0000000
--- a/FS/FS/part_pkg/sesmon_minute.pm
+++ /dev/null
@@ -1,55 +0,0 @@
-package FS::part_pkg::sesmon_minute;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Base charge plus charge per-minute from the session monitor',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'recur_included_min' => { 'name' => 'Minutes included',
- 'default' => 0,
- },
- 'recur_minly_charge' => { 'name' => 'Additional charge per minute',
- 'default' => 0,
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_flat', 'unused_credit', 'recur_included_min', 'recur_minly_charge' ],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $min = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 60 - \' + what.recur_included_min.value + \'; $min = 0 if $min < 0; \' + what.recur_flat.value + \' + \' + what.recur_minly_charge.value + \' * $min;\'',
- 'weight' => 80,
-);
-
-
-sub calc_recur {
- my( $self, $cust_pkg ) = @);
- my $min = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 60;
- $min -= $self->option('recur_included_min');
- $min = 0 if $min < 0;
-
- $self->option('recur_flat') + $min * $self->option('recur_minly_charge');
-}
-
-sub is_free_options {
- qw( setup_fee recur_fee recur_minly_charge );
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
diff --git a/FS/FS/part_pkg/sql_external.pm b/FS/FS/part_pkg/sql_external.pm
deleted file mode 100644
index ca58c4e..0000000
--- a/FS/FS/part_pkg/sql_external.pm
+++ /dev/null
@@ -1,76 +0,0 @@
-package FS::part_pkg::sql_external;
-
-use strict;
-use vars qw(@ISA %info);
-use DBI;
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Base charge plus additional fees for external services from a configurable SQL query',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'datasrc' => { 'name' => 'DBI data source',
- 'default' => '',
- },
- 'db_username' => { 'name' => 'Database username',
- 'default' => '',
- },
- 'db_password' => { 'name' => 'Database password',
- 'default' => '',
- },
- 'query' => { 'name' => 'SQL query',
- 'default' => '',
- },
- },
- 'fieldorder' => [qw( setup_fee recur_flat unused_credit datasrc db_username db_password query )],
- #'setup' => 'what.setup_fee.value',
- #'recur' => q!'my $dbh = DBI->connect("' + what.datasrc.value + '", "' + what.db_username.value + '", "' + what.db_password.value + '" ) or die $DBI::errstr; my $sth = $dbh->prepare("' + what.query.value + '") or die $dbh->errstr; my $price = ' + what.recur_flat.value + '; foreach my $cust_svc ( grep { $_->part_svc->svcdb eq "svc_external" } $cust_pkg->cust_svc ){ my $id = $cust_svc->svc_x->id; $sth->execute($id) or die $sth->errstr; $price += $sth->fetchrow_arrayref->[0]; } $price;'!,
- 'weight' => '72',
-);
-
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
-
- my $dbh = DBI->connect( map { $self->option($_) }
- qw( datasrc db_username db_password )
- )
- or die $DBI::errstr;
-
- my $sth = $dbh->prepare( $self->option('query') )
- or die $dbh->errstr;
-
- my $price = $self->option('recur_flat');
-
- foreach my $cust_svc (
- grep { $_->part_svc->svcdb eq "svc_external" } $cust_pkg->cust_svc
- ) {
- my $id = $cust_svc->svc_x->id;
- $sth->execute($id) or die $sth->errstr;
- $price += $sth->fetchrow_arrayref->[0];
- }
-
- $price;
-}
-
-sub is_free {
- 0;
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
diff --git a/FS/FS/part_pkg/sql_generic.pm b/FS/FS/part_pkg/sql_generic.pm
deleted file mode 100644
index 0e6ab7c..0000000
--- a/FS/FS/part_pkg/sql_generic.pm
+++ /dev/null
@@ -1,87 +0,0 @@
-package FS::part_pkg::sql_generic;
-
-use strict;
-use vars qw(@ISA %info);
-use DBI;
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Base charge plus a per-domain metered rate from a configurable SQL query',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'recur_included' => { 'name' => 'Units included',
- 'default' => 0,
- },
- 'recur_unit_charge' => { 'name' => 'Additional charge per unit',
- 'default' => 0,
- },
- 'datasrc' => { 'name' => 'DBI data source',
- 'default' => '',
- },
- 'db_username' => { 'name' => 'Database username',
- 'default' => '',
- },
- 'db_password' => { 'name' => 'Database username',
- 'default' => '',
- },
- 'query' => { 'name' => 'SQL query',
- 'default' => '',
- },
- },
- 'fieldorder' => [qw( setup_fee recur_flat unused_credit recur_included recur_unit_charge datasrc db_username db_password query )],
- # 'setup' => 'what.setup_fee.value',
- # 'recur' => '\'my $dbh = DBI->connect(\"\' + what.datasrc.value + \'\", \"\' + what.db_username.value + \'\") or die $DBI::errstr; \'',
- #'recur' => '\'my $dbh = DBI->connect(\"\' + what.datasrc.value + \'\", \"\' + what.db_username.value + \'\", \"\' + what.db_password.value + \'\" ) or die $DBI::errstr; my $sth = $dbh->prepare(\"\' + what.query.value + \'\") or die $dbh->errstr; my $units = 0; foreach my $cust_svc ( grep { $_->part_svc->svcdb eq \"svc_domain\" } $cust_pkg->cust_svc ) { my $domain = $cust_svc->svc_x->domain; $sth->execute($domain) or die $sth->errstr; $units += $sth->fetchrow_arrayref->[0]; } $units -= \' + what.recur_included.value + \'; $units = 0 if $units < 0; \' + what.recur_flat.value + \' + $units * \' + what.recur_unit_charge.value + \';\'',
- #'recur' => '\'my $dbh = DBI->connect("\' + what.datasrc.value + \'", "\' + what.db_username.value + \'", "\' what.db_password.value + \'" ) or die $DBI::errstr; my $sth = $dbh->prepare("\' + what.query.value + \'") or die $dbh->errstr; my $units = 0; foreach my $cust_svc ( grep { $_->part_svc->svcdb eq "svc_domain" } $cust_pkg->cust_svc ) { my $domain = $cust_svc->svc_x->domain; $sth->execute($domain) or die $sth->errstr; $units += $sth->fetchrow_arrayref->[0]; } $units -= \' + what.recur_included.value + \'; $units = 0 if $units < 0; \' + what.recur_flat.value + \' + $units * \' + what.recur_unit_charge + \';\'',
- 'weight' => '70',
-);
-
-sub calc_recur {
- my($self, $cust_pkg ) = @_;
-
- my $dbh = DBI->connect( map { $self->option($_) }
- qw( datasrc db_username db_password )
- )
- or die $DBI::errstr;
-
- my $sth = $dbh->prepare( $self->option('query') )
- or die $dbh->errstr;
-
- my $units = 0;
- foreach my $cust_svc (
- grep { $_->part_svc->svcdb eq "svc_domain" } $cust_pkg->cust_svc
- ) {
- my $domain = $cust_svc->svc_x->domain;
- $sth->execute($domain) or die $sth->errstr;
-
- $units += $sth->fetchrow_arrayref->[0];
- }
-
- $units -= $self->option('recur_included');
- $units = 0 if $units < 0;
-
- $self->option('recur_flat') + $units * $self->option('recur_unit_charge');
-}
-
-sub is_free_options {
- qw( setup_fee recur_flat recur_unit_charge );
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
diff --git a/FS/FS/part_pkg/sqlradacct_hour.pm b/FS/FS/part_pkg/sqlradacct_hour.pm
deleted file mode 100644
index e54a8a5..0000000
--- a/FS/FS/part_pkg/sqlradacct_hour.pm
+++ /dev/null
@@ -1,170 +0,0 @@
-package FS::part_pkg::sqlradacct_hour;
-
-use strict;
-use vars qw(@ISA %info);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'Base charge plus per-hour (and for data) from an SQL RADIUS radacct table',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
-
- 'recur_included_hours' => { 'name' => 'Hours included',
- 'default' => 0,
- },
- 'recur_hourly_charge' => { 'name' => 'Additional charge per hour',
- 'default' => 0,
- },
- 'recur_hourly_cap' => { 'name' => 'Maximum overage charge for hours'.
- ' (0 means no cap)',
-
- 'default' => 0,
- },
-
- 'recur_included_input' => { 'name' => 'Upload megabytes included',
- 'default' => 0,
- },
- 'recur_input_charge' => { 'name' =>
- 'Additional charge per megabyte upload',
- 'default' => 0,
- },
- 'recur_input_cap' => { 'name' => 'Maximum overage charge for upload'.
- ' (0 means no cap)',
- 'default' => 0,
- },
-
- 'recur_included_output' => { 'name' => 'Download megabytes included',
- 'default' => 0,
- },
- 'recur_output_charge' => { 'name' =>
- 'Additional charge per megabyte download',
- 'default' => 0,
- },
- 'recur_output_cap' => { 'name' => 'Maximum overage charge for download'.
- ' (0 means no cap)',
- 'default' => 0,
- },
-
- 'recur_included_total' => { 'name' =>
- 'Total megabytes included',
- 'default' => 0,
- },
- 'recur_total_charge' => { 'name' =>
- 'Additional charge per megabyte total',
- 'default' => 0,
- },
- 'recur_total_cap' => { 'name' => 'Maximum overage charge for total'.
- ' megabytes (0 means no cap)',
- 'default' => 0,
- },
-
- 'global_cap' => { 'name' => 'Global cap on all overage charges'.
- ' (0 means no cap)',
- 'default' => 0,
- },
-
- },
- 'fieldorder' => [qw( setup_fee recur_flat unused_credit recur_included_hours recur_hourly_charge recur_hourly_cap recur_included_input recur_input_charge recur_input_cap recur_included_output recur_output_charge recur_output_cap recur_included_total recur_total_charge recur_total_cap global_cap )],
- #'setup' => 'what.setup_fee.value',
- #'recur' => '\'my $last_bill = $cust_pkg->last_bill; my $hours = $cust_pkg->seconds_since_sqlradacct($last_bill, $sdate ) / 3600 - \' + what.recur_included_hours.value + \'; $hours = 0 if $hours < 0; my $input = $cust_pkg->attribute_since_sqlradacct($last_bill, $sdate, \"AcctInputOctets\" ) / 1048576; my $output = $cust_pkg->attribute_since_sqlradacct($last_bill, $sdate, \"AcctOutputOctets\" ) / 1048576; my $total = $input + $output - \' + what.recur_included_total.value + \'; $total = 0 if $total < 0; my $input = $input - \' + what.recur_included_input.value + \'; $input = 0 if $input < 0; my $output = $output - \' + what.recur_included_output.value + \'; $output = 0 if $output < 0; my $totalcharge = sprintf(\"%.2f\", \' + what.recur_total_charge.value + \' * $total); my $inputcharge = sprintf(\"%.2f\", \' + what.recur_input_charge.value + \' * $input); my $outputcharge = sprintf(\"%.2f\", \' + what.recur_output_charge.value + \' * $output); my $hourscharge = sprintf(\"%.2f\", \' + what.recur_hourly_charge.value + \' * $hours); if ( \' + what.recur_total_charge.value + \' > 0 ) { push @details, \"Last month\\\'s data \". sprintf(\"%.1f\", $total). \" megs: \\\$$totalcharge\" } if ( \' + what.recur_input_charge.value + \' > 0 ) { push @details, \"Last month\\\'s download \". sprintf(\"%.1f\", $input). \" megs: \\\$$inputcharge\" } if ( \' + what.recur_output_charge.value + \' > 0 ) { push @details, \"Last month\\\'s upload \". sprintf(\"%.1f\", $output). \" megs: \\\$$outputcharge\" } if ( \' + what.recur_hourly_charge.value + \' > 0 ) { push @details, \"Last month\\\'s time \". sprintf(\"%.1f\", $hours). \" hours: \\\$$hourscharge\"; } \' + what.recur_flat.value + \' + $hourscharge + $inputcharge + $outputcharge + $totalcharge ;\'',
- 'weight' => 40,
-);
-
-sub calc_recur {
- my($self, $cust_pkg, $sdate, $details ) = @_;
-
- my $last_bill = $cust_pkg->last_bill;
- my $hours = $cust_pkg->seconds_since_sqlradacct($last_bill, $$sdate ) / 3600;
- $hours -= $self->option('recur_included_hours');
- $hours = 0 if $hours < 0;
-
- my $input = $cust_pkg->attribute_since_sqlradacct( $last_bill,
- $$sdate,
- 'AcctInputOctets' )
- / 1048576;
-
- my $output = $cust_pkg->attribute_since_sqlradacct( $last_bill,
- $$sdate,
- 'AcctOutputOctets' )
- / 1048576;
-
- my $total = $input + $output - $self->option('recur_included_total');
- $total = 0 if $total < 0;
- $input = $input - $self->option('recur_included_input');
- $input = 0 if $input < 0;
- $output = $output - $self->option('recur_included_output');
- $output = 0 if $output < 0;
-
- my $totalcharge =
- $total * sprintf('%.2f', $self->option('recur_total_charge'));
- $totalcharge = $self->option('recur_total_cap')
- if $self->option('recur_total_cap')
- && $totalcharge > $self->option('recur_total_cap');
-
- my $inputcharge =
- $input * sprintf('%.2f', $self->option('recur_input_charge'));
- $inputcharge = $self->option('recur_input_cap')
- if $self->option('recur_input_cap')
- && $inputcharge > $self->option('recur_input_cap');
-
- my $outputcharge =
- $output * sprintf('%.2f', $self->option('recur_output_charge'));
- $outputcharge = $self->option('recur_output_cap')
- if $self->option('recur_output_cap')
- && $outputcharge > $self->option('recur_output_cap');
-
- my $hourscharge =
- $hours * sprintf('%.2f', $self->option('recur_hourly_charge'));
- $hourscharge = $self->option('recur_hours_cap')
- if $self->option('recur_hours_cap')
- && $hourscharge > $self->option('recur_hours_cap');
-
- if ( $self->option('recur_total_charge') > 0 ) {
- push @$details, "Last month's data ".
- sprintf('%.1f', $total). " megs: $totalcharge";
- }
- if ( $self->option('recur_input_charge') > 0 ) {
- push @$details, "Last month's download ".
- sprintf('%.1f', $input). " megs: $inputcharge";
- }
- if ( $self->option('recur_output_charge') > 0 ) {
- push @$details, "Last month's upload ".
- sprintf('%.1f', $output). " megs: $outputcharge";
- }
- if ( $self->option('recur_hourly_charge') > 0 ) {
- push @$details, "Last month\'s time ".
- sprintf('%.1f', $hours). " hours: $hourscharge";
- }
-
- my $charges = $hourscharge + $inputcharge + $outputcharge + $totalcharge;
- if ( $self->option('global_cap') && $charges > $self->option('global_cap') ) {
- $charges = $self->option('global_cap');
- push @$details, "Usage charges capped at: $charges";
- }
-
- $self->option('recur_flat') + $charges;
-}
-
-sub is_free_options {
- qw( setup_fee recur_flat recur_hourly_charge
- recur_input_charge recur_output_charge recur_total_charge );
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
diff --git a/FS/FS/part_pkg/subscription.pm b/FS/FS/part_pkg/subscription.pm
deleted file mode 100644
index 6b5da5c..0000000
--- a/FS/FS/part_pkg/subscription.pm
+++ /dev/null
@@ -1,50 +0,0 @@
-package FS::part_pkg::subscription;
-
-use strict;
-use vars qw(@ISA %info);
-use Time::Local qw(timelocal);
-#use FS::Record qw(qsearch qsearchs);
-use FS::part_pkg::flat;
-
-@ISA = qw(FS::part_pkg::flat);
-
-%info = (
- 'name' => 'First partial month full charge, then flat-rate (selectable billing day)',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_fee' => { 'name' => 'Recurring fee for this package',
- 'default' => 0,
- },
- 'cutoff_day' => { 'name' => 'billing day',
- 'default' => 1,
- },
- #it would be better if this had to be turned on, its confusing
- 'externalid' => { 'name' => 'Optional External ID',
- 'default' => '',
- },
- },
- 'fieldorder' => [ 'setup_fee', 'recur_fee', 'cutoff_day', 'externalid' ],
- 'fieldorder' => [ 'setup_fee', 'recur_fee','cutoff_day'],
- 'freq' => 'm',
- 'weight' => 30,
-);
-
-sub calc_recur {
- my($self, $cust_pkg, $sdate ) = @_;
- my $cutoff_day = $self->option('cutoff_day', 1) || 1;
- my $mnow = $$sdate;
- my ($sec,$min,$hour,$mday,$mon,$year) = (localtime($mnow) )[0,1,2,3,4,5];
-
- if ( $mday < $cutoff_day ) {
- if ($mon==0) {$mon=11;$year--;}
- else {$mon--;}
- }
-
- $$sdate = timelocal(0,0,0,$cutoff_day,$mon,$year);
-
- $self->option('recur_fee');
-}
-
-1;
diff --git a/FS/FS/part_pkg/voip_cdr.pm b/FS/FS/part_pkg/voip_cdr.pm
deleted file mode 100644
index 500a1b0..0000000
--- a/FS/FS/part_pkg/voip_cdr.pm
+++ /dev/null
@@ -1,353 +0,0 @@
-package FS::part_pkg::voip_cdr;
-
-use strict;
-use vars qw(@ISA $DEBUG %info);
-use Date::Format;
-use Tie::IxHash;
-use FS::Conf;
-use FS::Record qw(qsearchs qsearch);
-use FS::part_pkg::flat;
-#use FS::rate;
-#use FS::rate_prefix;
-
-@ISA = qw(FS::part_pkg::flat);
-
-$DEBUG = 1;
-
-tie my %rating_method, 'Tie::IxHash',
- 'prefix' => 'Rate calls by using destination prefix to look up a region and rate according to the internal prefix and rate tables',
- 'upstream' => 'Rate calls based on upstream data: If the call type is "1", map the upstream rate ID directly to an internal rate (rate_detail), otherwise, pass the upstream price through directly.',
-;
-
-#tie my %cdr_location, 'Tie::IxHash',
-# 'internal' => 'Internal: CDR records imported into the internal CDR table',
-# 'external' => 'External: CDR records queried directly from an external '.
-# 'Asterisk (or other?) CDR table',
-#;
-
-%info = (
- 'name' => 'VoIP rating by plan of CDR records in an internal (or external?) SQL table',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'ratenum' => { 'name' => 'Rate plan',
- 'type' => 'select',
- 'select_table' => 'rate',
- 'select_key' => 'ratenum',
- 'select_label' => 'ratename',
- },
- 'rating_method' => { 'name' => 'Region rating method',
- 'type' => 'select',
- 'select_options' => \%rating_method,
- },
-
- 'default_prefix' => { 'name' => 'Default prefix optionally prepended to customer DID numbers when searching for CDR records',
- 'default' => '+1',
- },
-
- #XXX also have option for an external db??
-# 'cdr_location' => { 'name' => 'CDR database location'
-# 'type' => 'select',
-# 'select_options' => \%cdr_location,
-# 'select_callback' => {
-# 'external' => {
-# 'enable' => [ 'datasrc', 'username', 'password' ],
-# },
-# 'internal' => {
-# 'disable' => [ 'datasrc', 'username', 'password' ],
-# }
-# },
-# },
-# 'datasrc' => { 'name' => 'DBI data source for external CDR table',
-# 'disabled' => 'Y',
-# },
-# 'username' => { 'name' => 'External database username',
-# 'disabled' => 'Y',
-# },
-# 'password' => { 'name' => 'External database password',
-# 'disabled' => 'Y',
-# },
-
- },
- 'fieldorder' => [qw( setup_fee recur_flat unused_credit ratenum rating_method default_prefix )],
- 'weight' => 40,
-);
-
-sub calc_setup {
- my($self, $cust_pkg ) = @_;
- $self->option('setup_fee');
-}
-
-#false laziness w/voip_sqlradacct... resolve it if that one ever gets used again
-sub calc_recur {
- my($self, $cust_pkg, $sdate, $details, $param ) = @_;
-
- my $last_bill = $cust_pkg->last_bill;
-
- my $ratenum = $cust_pkg->part_pkg->option('ratenum');
-
- my $spool_cdr = $cust_pkg->cust_main->spool_cdr;
-
- my %included_min = ();
-
- my $charges = 0;
-
- my $downstream_cdr = '';
-
- foreach my $cust_svc (
- grep { $_->part_svc->svcdb eq 'svc_phone' } $cust_pkg->cust_svc
- ) {
-
- foreach my $cdr (
- $cust_svc->get_cdrs_for_update() # $last_bill, $$sdate )
- ) {
- if ( $DEBUG > 1 ) {
- warn "rating CDR $cdr\n".
- join('', map { " $_ => ". $cdr->{$_}. "\n" } keys %$cdr );
- }
-
- my $rate_detail;
- my( $rate_region, $regionnum );
- my $pretty_destnum;
- my $charge = 0;
- my @call_details = ();
- if ( $self->option('rating_method') eq 'prefix'
- || ! $self->option('rating_method')
- )
- {
-
- ###
- # look up rate details based on called station id
- # (or calling station id for toll free calls)
- ###
-
- my( $to_or_from, $number );
- if ( $cdr->dst =~ /^(\+?1)?8[02-8]{2}/ ) { #tollfree call
- $to_or_from = 'from';
- $number = $cdr->src;
- } else { #regular call
- $to_or_from = 'to';
- $number = $cdr->dst;
- }
-
- #remove non-phone# stuff and whitespace
- $number =~ s/\s//g;
-# my $proto = '';
-# $dest =~ s/^(\w+):// and $proto = $1; #sip:
-# my $siphost = '';
-# $dest =~ s/\@(.*)$// and $siphost = $1; # @10.54.32.1, @sip.example.com
-
- #determine the country code
- my $countrycode;
- if ( $number =~ /^011(((\d)(\d))(\d))(\d+)$/
- || $number =~ /^\+(((\d)(\d))(\d))(\d+)$/
- )
- {
-
- my( $three, $two, $one, $u1, $u2, $rest ) = ( $1,$2,$3,$4,$5,$6 );
- #first look for 1 digit country code
- if ( qsearch('rate_prefix', { 'countrycode' => $one } ) ) {
- $countrycode = $one;
- $number = $u1.$u2.$rest;
- } elsif ( qsearch('rate_prefix', { 'countrycode' => $two } ) ) { #or 2
- $countrycode = $two;
- $number = $u2.$rest;
- } else { #3 digit country code
- $countrycode = $three;
- $number = $rest;
- }
-
- } else {
- $countrycode = '1';
- $number =~ s/^1//;# if length($number) > 10;
- }
-
- warn "rating call $to_or_from +$countrycode $number\n" if $DEBUG;
- $pretty_destnum = "+$countrycode $number";
-
- #find a rate prefix, first look at most specific (4 digits) then 3, etc.,
- # finally trying the country code only
- my $rate_prefix = '';
- for my $len ( reverse(1..6) ) {
- $rate_prefix = qsearchs('rate_prefix', {
- 'countrycode' => $countrycode,
- #'npa' => { op=> 'LIKE', value=> substr($number, 0, $len) }
- 'npa' => substr($number, 0, $len),
- } ) and last;
- }
- $rate_prefix ||= qsearchs('rate_prefix', {
- 'countrycode' => $countrycode,
- 'npa' => '',
- });
-
- #
- die "Can't find rate for call $to_or_from +$countrycode $\numbern"
- unless $rate_prefix;
-
- $regionnum = $rate_prefix->regionnum;
- $rate_detail = qsearchs('rate_detail', {
- 'ratenum' => $ratenum,
- 'dest_regionnum' => $regionnum,
- } );
-
- $rate_region = $rate_prefix->rate_region;
-
- warn " found rate for regionnum $regionnum ".
- "and rate detail $rate_detail\n"
- if $DEBUG;
-
- } elsif ( $self->option('rating_method') eq 'upstream' ) {
-
- if ( $cdr->cdrtypenum == 1 ) { #rate based on upstream rateid
-
- $rate_detail = $cdr->cdr_upstream_rate->rate_detail;
-
- $regionnum = $rate_detail->dest_regionnum;
- $rate_region = $rate_detail->dest_region;
-
- $pretty_destnum = $cdr->dst;
-
- warn " found rate for regionnum $regionnum and ".
- "rate detail $rate_detail\n"
- if $DEBUG;
-
- } else { #pass upstream price through
-
- $charge = sprintf('%.2f', $cdr->upstream_price);
-
- @call_details = (
- #time2str("%Y %b %d - %r", $cdr->calldate_unix ),
- time2str("%c", $cdr->calldate_unix), #XXX this should probably be a config option dropdown so they can select US vs- rest of world dates or whatnot
- 'N/A', #minutes...
- '$'.$charge,
- #$pretty_destnum,
- $cdr->description, #$rate_region->regionname,
- );
-
- }
-
- } else {
- die "don't know how to rate CDRs using method: ".
- $self->option('rating_method'). "\n";
- }
-
- ###
- # find the price and add detail to the invoice
- ###
-
- # if $rate_detail is not found, skip this CDR... i.e.
- # don't add it to invoice, don't set its status to NULL,
- # don't call downstream_csv or something on it...
- # but DO emit a warning...
- if ( ! $rate_detail && ! scalar(@call_details) ) {
-
- warn "no rate_detail found for CDR.acctid: ". $cdr->acctid.
- "; skipping\n"
-
- } else { # there *is* a rate_detail (or call_details), proceed...
-
- unless ( @call_details ) {
-
- $included_min{$regionnum} = $rate_detail->min_included
- unless exists $included_min{$regionnum};
-
- my $granularity = $rate_detail->sec_granularity;
- my $seconds = $cdr->billsec; # |ength($cdr->billsec) ? $cdr->billsec : $cdr->duration;
- $seconds += $granularity - ( $seconds % $granularity );
- my $minutes = sprintf("%.1f", $seconds / 60);
- $minutes =~ s/\.0$// if $granularity == 60;
-
- $included_min{$regionnum} -= $minutes;
-
- if ( $included_min{$regionnum} < 0 ) {
- my $charge_min = 0 - $included_min{$regionnum};
- $included_min{$regionnum} = 0;
- $charge = sprintf('%.2f', $rate_detail->min_charge * $charge_min );
- $charges += $charge;
- }
-
- # this is why we need regionnum/rate_region....
- warn " (rate region $rate_region)\n" if $DEBUG;
-
- @call_details = (
- #time2str("%Y %b %d - %r", $cdr->calldate_unix ),
- time2str("%c", $cdr->calldate_unix), #XXX this should probably be a config option dropdown so they can select US vs- rest of world dates or whatnot
- $minutes.'m',
- '$'.$charge,
- $pretty_destnum,
- $rate_region->regionname,
- );
-
- }
-
- warn " adding details on charge to invoice: ".
- join(' - ', @call_details )
- if $DEBUG;
-
- push @$details, join(' - ', @call_details); #\@call_details,
-
- # if the customer flag is on, call "downstream_csv" or something
- # like it to export the call downstream!
- # XXX price plan option to pick format, or something...
- $downstream_cdr .= $cdr->downstream_csv( 'format' => 'convergent' )
- if $spool_cdr;
-
- my $error = $cdr->set_status_and_rated_price('done', $charge);
- die $error if $error;
-
- }
-
- } # $cdr
-
- } # $cust_svc
-
- if ( $spool_cdr && length($downstream_cdr) ) {
-
- use FS::UID qw(datasrc);
- my $dir = '/usr/local/etc/freeside/export.'. datasrc. '/cdr';
- mkdir $dir, 0700 unless -d $dir;
- $dir .= '/'. $cust_pkg->custnum.
- mkdir $dir, 0700 unless -d $dir;
- my $filename = time2str("$dir/CDR%Y%m%d-spool.CSV", time); #XXX invoice date instead? would require changing the order things are generated in cust_main::bill insert cust_bill first - with transactions it could be done though
-
- push @{ $param->{'precommit_hooks'} },
- sub {
- #lock the downstream spool file and append the records
- use Fcntl qw(:flock);
- use IO::File;
- my $spool = new IO::File ">>$filename"
- or die "can't open $filename: $!\n";
- flock( $spool, LOCK_EX)
- or die "can't lock $filename: $!\n";
- seek($spool, 0, 2)
- or die "can't seek to end of $filename: $!\n";
- print $spool $downstream_cdr;
- flock( $spool, LOCK_UN );
- close $spool;
- };
-
- } #if ( $spool_cdr && length($downstream_cdr) )
-
- $self->option('recur_flat') + $charges;
-
-}
-
-sub is_free {
- 0;
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
-
diff --git a/FS/FS/part_pkg/voip_sqlradacct.pm b/FS/FS/part_pkg/voip_sqlradacct.pm
deleted file mode 100644
index bf18003..0000000
--- a/FS/FS/part_pkg/voip_sqlradacct.pm
+++ /dev/null
@@ -1,192 +0,0 @@
-package FS::part_pkg::voip_sqlradacct;
-
-use strict;
-use vars qw(@ISA $DEBUG %info);
-use Date::Format;
-use FS::Record qw(qsearchs qsearch);
-use FS::part_pkg::flat;
-#use FS::rate;
-use FS::rate_prefix;
-
-@ISA = qw(FS::part_pkg::flat);
-
-$DEBUG = 1;
-
-%info = (
- 'name' => 'VoIP rating by plan of CDR records in an SQL RADIUS radacct table',
- 'fields' => {
- 'setup_fee' => { 'name' => 'Setup fee for this package',
- 'default' => 0,
- },
- 'recur_flat' => { 'name' => 'Base recurring fee for this package',
- 'default' => 0,
- },
- 'unused_credit' => { 'name' => 'Credit the customer for the unused portion'.
- ' of service at cancellation',
- 'type' => 'checkbox',
- },
- 'ratenum' => { 'name' => 'Rate plan',
- 'type' => 'select',
- 'select_table' => 'rate',
- 'select_key' => 'ratenum',
- 'select_label' => 'ratename',
- },
- },
- 'fieldorder' => [qw( setup_fee recur_flat unused_credit ratenum ignore_unrateable )],
- 'weight' => 40,
-);
-
-sub calc_setup {
- my($self, $cust_pkg ) = @_;
- $self->option('setup_fee');
-}
-
-#false laziness w/voip_cdr... resolve it if this one ever gets used again
-sub calc_recur {
- my($self, $cust_pkg, $sdate, $details ) = @_;
-
- my $last_bill = $cust_pkg->last_bill;
-
- my $ratenum = $cust_pkg->part_pkg->option('ratenum');
-
- my %included_min = ();
-
- my $charges = 0;
-
- foreach my $cust_svc (
- grep { $_->part_svc->svcdb eq 'svc_acct' } $cust_pkg->cust_svc
- ) {
-
- foreach my $session (
- $cust_svc->get_session_history( $last_bill, $$sdate )
- ) {
- if ( $DEBUG > 1 ) {
- warn "rating session $session\n".
- join('', map { " $_ => ". $session->{$_}. "\n" } keys %$session );
- }
-
- ###
- # look up rate details based on called station id
- ###
-
- my $dest = $session->{'calledstationid'};
-
- #remove non-phone# stuff and whitespace
- $dest =~ s/\s//g;
- my $proto = '';
- $dest =~ s/^(\w+):// and $proto = $1; #sip:
- my $siphost = '';
- $dest =~ s/\@(.*)$// and $siphost = $1; # @10.54.32.1, @sip.example.com
-
- #determine the country code
- my $countrycode;
- if ( $dest =~ /^011(((\d)(\d))(\d))(\d+)$/ ) {
-
- my( $three, $two, $one, $u1, $u2, $rest ) = ( $1, $2, $3, $4, $5, $6 );
- #first look for 1 digit country code
- if ( qsearch('rate_prefix', { 'countrycode' => $one } ) ) {
- $countrycode = $one;
- $dest = $u1.$u2.$rest;
- } elsif ( qsearch('rate_prefix', { 'countrycode' => $two } ) ) { #or 2
- $countrycode = $two;
- $dest = $u2.$rest;
- } else { #3 digit country code
- $countrycode = $three;
- $dest = $rest;
- }
-
- } else {
- $countrycode = '1';
- $dest =~ s/^1//;# if length($dest) > 10;
- }
-
- warn "rating call to +$countrycode $dest\n" if $DEBUG;
-
- #find a rate prefix, first look at most specific (4 digits) then 3, etc.,
- # finally trying the country code only
- my $rate_prefix = '';
- for my $len ( reverse(1..6) ) {
- $rate_prefix = qsearchs('rate_prefix', {
- 'countrycode' => $countrycode,
- #'npa' => { op=> 'LIKE', value=> substr($dest, 0, $len) }
- 'npa' => substr($dest, 0, $len),
- } ) and last;
- }
- $rate_prefix ||= qsearchs('rate_prefix', {
- 'countrycode' => $countrycode,
- 'npa' => '',
- });
-
- die "Can't find rate for call to +$countrycode $dest\n"
- unless $rate_prefix;
-
- my $regionnum = $rate_prefix->regionnum;
- my $rate_detail = qsearchs('rate_detail', {
- 'ratenum' => $ratenum,
- 'dest_regionnum' => $regionnum,
- } );
-
- warn " found rate for regionnum $regionnum ".
- "and rate detail $rate_detail\n"
- if $DEBUG;
-
- ###
- # find the price and add detail to the invoice
- ###
-
- $included_min{$regionnum} = $rate_detail->min_included
- unless exists $included_min{$regionnum};
-
- my $granularity = $rate_detail->sec_granularity;
- my $seconds = $session->{'acctsessiontime'};
- $seconds += $granularity - ( $seconds % $granularity );
- my $minutes = sprintf("%.1f", $seconds / 60);
- $minutes =~ s/\.0$// if $granularity == 60;
-
- $included_min{$regionnum} -= $minutes;
-
- my $charge = 0;
- if ( $included_min{$regionnum} < 0 ) {
- my $charge_min = 0 - $included_min{$regionnum};
- $included_min{$regionnum} = 0;
- $charge = sprintf('%.2f', $rate_detail->min_charge * $charge_min );
- $charges += $charge;
- }
-
- my $rate_region = $rate_prefix->rate_region;
- warn " (rate region $rate_region)\n" if $DEBUG;
-
- my @call_details = (
- #time2str("%Y %b %d - %r", $session->{'acctstarttime'}),
- time2str("%c", $session->{'acctstarttime'}),
- $minutes.'m',
- '$'.$charge,
- "+$countrycode $dest",
- $rate_region->regionname,
- );
-
- warn " adding details on charge to invoice: ".
- join(' - ', @call_details )
- if $DEBUG;
-
- push @$details, join(' - ', @call_details); #\@call_details,
-
- } # $session
-
- } # $cust_svc
-
- $self->option('recur_flat') + $charges;
-
-}
-
-sub is_free {
- 0;
-}
-
-sub base_recur {
- my($self, $cust_pkg) = @_;
- $self->option('recur_flat');
-}
-
-1;
-
diff --git a/FS/FS/part_pkg_option.pm b/FS/FS/part_pkg_option.pm
deleted file mode 100644
index c2f609e..0000000
--- a/FS/FS/part_pkg_option.pm
+++ /dev/null
@@ -1,131 +0,0 @@
-package FS::part_pkg_option;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::part_pkg;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::part_pkg_option - Object methods for part_pkg_option records
-
-=head1 SYNOPSIS
-
- use FS::part_pkg_option;
-
- $record = new FS::part_pkg_option \%hash;
- $record = new FS::part_pkg_option { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_pkg_option object represents an package definition option.
-FS::part_pkg_option inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item optionnum - primary key
-
-=item pkgpart - package definition (see L<FS::part_pkg>)
-
-=item optionname - option name
-
-=item optionvalue - option value
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new package definition option. To add the package definition option
-to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'part_pkg_option'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid package definition option. If
-there is an error, returns the error, otherwise returns false. Called by the
-insert and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('optionnum')
- || $self->ut_foreign_key('pkgpart', 'part_pkg', 'pkgpart')
- || $self->ut_alpha('optionname')
- || $self->ut_anything('optionvalue')
- ;
- return $error if $error;
-
- #check options & values?
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-Possibly.
-
-=head1 SEE ALSO
-
-L<FS::part_pkg>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_pop_local.pm b/FS/FS/part_pop_local.pm
deleted file mode 100644
index 01c59df..0000000
--- a/FS/FS/part_pop_local.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-package FS::part_pop_local;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record; # qw( qsearchs );
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::part_pop_local - Object methods for part_pop_local records
-
-=head1 SYNOPSIS
-
- use FS::part_pop_local;
-
- $record = new FS::part_pop_local \%hash;
- $record = new FS::part_pop_local { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_pop_local object represents a local call area. Each
-FS::part_pop_local record maps a NPA/NXX (area code and exchange) to the POP
-(see L<FS::svc_acct_pop>) which is a local call. FS::part_pop_local inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item localnum - primary key (assigned automatically for new accounts)
-
-=item popnum - see L<FS::svc_acct_pop>
-
-=item city
-
-=item state
-
-=item npa - area code
-
-=item nxx - exchange
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new point of presence (if only it were that easy!). To add the
-point of presence to the database, see L<"insert">.
-
-=cut
-
-sub table { 'part_pop_local'; }
-
-=item insert
-
-Adds this point of presence to the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item delete
-
-Removes this point of presence from the database.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid point of presence. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('localnum')
- or $self->ut_numbern('popnum')
- or $self->ut_text('city')
- or $self->ut_text('state')
- or $self->ut_number('npa')
- or $self->ut_number('nxx')
- or $self->SUPER::check
- ;
-
-}
-
-=back
-
-=head1 BUGS
-
-US/CA-centric.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::svc_acct_pop>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_referral.pm b/FS/FS/part_referral.pm
deleted file mode 100644
index 87bc87c..0000000
--- a/FS/FS/part_referral.pm
+++ /dev/null
@@ -1,204 +0,0 @@
-package FS::part_referral;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::agent;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::part_referral - Object methods for part_referral objects
-
-=head1 SYNOPSIS
-
- use FS::part_referral;
-
- $record = new FS::part_referral \%hash
- $record = new FS::part_referral { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_referral represents a advertising source - where a customer heard
-of your services. This can be used to track the effectiveness of a particular
-piece of advertising, for example. FS::part_referral inherits from FS::Record.
-The following fields are currently supported:
-
-=over 4
-
-=item refnum - primary key (assigned automatically for new referrals)
-
-=item referral - Text name of this advertising source
-
-=item disabled - Disabled flag, empty or 'Y'
-
-=item agentnum - Optional agentnum (see L<FS::agent>)
-
-=back
-
-=head1 NOTE
-
-These were called B<referrals> before version 1.4.0 - the name was changed
-so as not to be confused with the new customer-to-customer referrals.
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new advertising source. To add the referral to the database, see
-L<"insert">.
-
-=cut
-
-sub table { 'part_referral'; }
-
-=item insert
-
-Adds this advertising source to the database. If there is an error, returns
-the error, otherwise returns false.
-
-=item delete
-
-Currently unimplemented.
-
-=cut
-
-sub delete {
- my $self = shift;
- return "Can't (yet?) delete part_referral records";
- #need to make sure no customers have this referral!
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid advertising source. If there is
-an error, returns the error, otherwise returns false. Called by the insert and
-replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error = $self->ut_numbern('refnum')
- || $self->ut_text('referral')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- #|| $self->ut_foreign_keyn('agentnum', 'agent', 'agentnum')
- || $self->ut_agentnum_acl('agentnum', 'Edit global advertising sources')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item agent
-
-Returns the associated agent for this referral, if any, as an FS::agent object.
-
-=cut
-
-sub agent {
- my $self = shift;
- qsearchs('agent', { 'agentnum' => $self->agentnum } );
-}
-
-=back
-
-=head1 CLASS METHODS
-
-=over 4
-
-=item acl_agentnum_sql [ INCLUDE_GLOBAL_BOOL ]
-
-Returns an SQL fragment for searching for part_referral records allowed by the
-current users's agent ACLs (and "Edit global advertising sources" right).
-
-Pass a true value to include global advertising sources (for example, when
-simply using rather than editing advertising sources).
-
-=cut
-
-sub acl_agentnum_sql {
- my $self = shift;
-
- my $curuser = $FS::CurrentUser::CurrentUser;
- my $sql = $curuser->agentnums_sql;
- $sql = " ( $sql OR agentnum IS NULL ) "
- if $curuser->access_right('Edit global advertising sources')
- or defined($_[0]) && $_[0];
-
- $sql;
-
-}
-
-=item all_part_referral [ INCLUDE_GLOBAL_BOOL ]
-
-Returns all part_referral records allowed by the current users's agent ACLs
-(and "Edit global advertising sources" right).
-
-Pass a true value to include global advertising sources (for example, when
-simply using rather than editing advertising sources).
-
-=cut
-
-sub all_part_referral {
- my $self = shift;
-
- qsearch({
- 'table' => 'part_referral',
- 'extra_sql' => ' WHERE '. $self->acl_agentnum_sql(@_). ' ORDER BY refnum ',
- });
-
-}
-
-=item num_part_referral [ INCLUDE_GLOBAL_BOOL ]
-
-Returns the number of part_referral records allowed by the current users's
-agent ACLs (and "Edit global advertising sources" right).
-
-=cut
-
-sub num_part_referral {
- my $self = shift;
-
- my $sth = dbh->prepare(
- 'SELECT COUNT(*) FROM part_referral WHERE '. $self->acl_agentnum_sql(@_)
- ) or die dbh->errstr;
- $sth->execute() or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=back
-
-=head1 BUGS
-
-The delete method is unimplemented.
-
-`Advertising source'. Yes, it's a sucky name. The only other ones I could
-come up with were "Marketing channel" and "Heard Abouts" and those are
-definately both worse.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_main>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_svc.pm b/FS/FS/part_svc.pm
deleted file mode 100644
index 2587347..0000000
--- a/FS/FS/part_svc.pm
+++ /dev/null
@@ -1,662 +0,0 @@
-package FS::part_svc;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw( qsearch qsearchs fields dbh );
-use FS::Schema qw( dbdef );
-use FS::part_svc_column;
-use FS::part_export;
-use FS::export_svc;
-use FS::cust_svc;
-
-@ISA = qw(FS::Record);
-
-$DEBUG = 1;
-
-=head1 NAME
-
-FS::part_svc - Object methods for part_svc objects
-
-=head1 SYNOPSIS
-
- use FS::part_svc;
-
- $record = new FS::part_svc \%hash
- $record = new FS::part_svc { 'column' => 'value' };
-
- $error = $record->insert;
- $error = $record->insert( [ 'pseudofield' ] );
- $error = $record->insert( [ 'pseudofield' ], \%exportnums );
-
- $error = $new_record->replace($old_record);
- $error = $new_record->replace($old_record, '1.3-COMPAT', [ 'pseudofield' ] );
- $error = $new_record->replace($old_record, '1.3-COMPAT', [ 'pseudofield' ], \%exportnums );
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_svc represents a service definition. FS::part_svc inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item svcpart - primary key (assigned automatically for new service definitions)
-
-=item svc - text name of this service definition
-
-=item svcdb - table used for this service. See L<FS::svc_acct>,
-L<FS::svc_domain>, and L<FS::svc_forward>, among others.
-
-=item disabled - Disabled flag, empty or `Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new service definition. To add the service definition to the
-database, see L<"insert">.
-
-=cut
-
-sub table { 'part_svc'; }
-
-=item insert [ EXTRA_FIELDS_ARRAYREF [ , EXPORTNUMS_HASHREF [ , JOB ] ] ]
-
-Adds this service definition to the database. If there is an error, returns
-the error, otherwise returns false.
-
-The following pseudo-fields may be defined, and will be maintained in
-the part_svc_column table appropriately (see L<FS::part_svc_column>).
-
-=over 4
-
-=item I<svcdb>__I<field> - Default or fixed value for I<field> in I<svcdb>.
-
-=item I<svcdb>__I<field>_flag - defines I<svcdb>__I<field> action: null or empty (no default), `D' for default, `F' for fixed (unchangeable), `M' for manual selection from inventory, or `A' for automatic selection from inventory. For virtual fields, can also be 'X' for excluded.
-
-=back
-
-If you want to add part_svc_column records for fields that do not exist as
-(real or virtual) fields in the I<svcdb> table, make sure to list then in
-EXTRA_FIELDS_ARRAYREF also.
-
-If EXPORTNUMS_HASHREF is specified (keys are exportnums and values are
-boolean), the appopriate export_svc records will be inserted.
-
-TODOC: JOB
-
-=cut
-
-sub insert {
- my $self = shift;
- my @fields = ();
- my @exportnums = ();
- @fields = @{shift(@_)} if @_;
- if ( @_ ) {
- my $exportnums = shift;
- @exportnums = grep $exportnums->{$_}, keys %$exportnums;
- }
- my $job = '';
- $job = shift if @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- # add part_svc_column records
-
- my $svcdb = $self->svcdb;
-# my @rows = map { /^${svcdb}__(.*)$/; $1 }
-# grep ! /_flag$/,
-# grep /^${svcdb}__/,
-# fields('part_svc');
- foreach my $field (
- grep { $_ ne 'svcnum'
- && defined( $self->getfield($svcdb.'__'.$_.'_flag') )
- } (fields($svcdb), @fields)
- ) {
- my $part_svc_column = $self->part_svc_column($field);
- my $previous = qsearchs('part_svc_column', {
- 'svcpart' => $self->svcpart,
- 'columnname' => $field,
- } );
-
- my $flag = $self->getfield($svcdb.'__'.$field.'_flag');
- #if ( uc($flag) =~ /^([DFMAX])$/ ) {
- if ( uc($flag) =~ /^([A-Z])$/ ) { #part_svc_column will test it
- $part_svc_column->setfield('columnflag', $1);
- $part_svc_column->setfield('columnvalue',
- $self->getfield($svcdb.'__'.$field)
- );
- if ( $previous ) {
- $error = $part_svc_column->replace($previous);
- } else {
- $error = $part_svc_column->insert;
- }
- } else {
- $error = $previous ? $previous->delete : '';
- }
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- }
-
- # add export_svc records
- my $slice = 100/scalar(@exportnums) if @exportnums;
- my $done = 0;
- foreach my $exportnum ( @exportnums ) {
- my $export_svc = new FS::export_svc ( {
- 'exportnum' => $exportnum,
- 'svcpart' => $self->svcpart,
- } );
- $error = $export_svc->insert($job, $slice*$done++, $slice);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item delete
-
-Currently unimplemented. Set the "disabled" field instead.
-
-=cut
-
-sub delete {
- return "Can't (yet?) delete service definitions.";
-# check & make sure the svcpart isn't in cust_svc or pkg_svc (in any packages)?
-}
-
-=item replace OLD_RECORD [ '1.3-COMPAT' [ , EXTRA_FIELDS_ARRAYREF [ , EXPORTNUMS_HASHREF [ , JOB ] ] ] ]
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-TODOC: 1.3-COMPAT
-
-TODOC: EXTRA_FIELDS_ARRAYREF (same as insert method)
-
-TODOC: JOB
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
- my $compat = '';
- my @fields = ();
- my $exportnums;
- my $job = '';
- if ( @_ && $_[0] eq '1.3-COMPAT' ) {
- shift;
- $compat = '1.3';
- @fields = @{shift(@_)} if @_;
- $exportnums = @_ ? shift : '';
- $job = shift if @_;
- } else {
- return 'non-1.3-COMPAT interface not yet written';
- #not yet implemented
- }
-
- return "Can't change svcdb for an existing service definition!"
- unless $old->svcdb eq $new->svcdb;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $new->SUPER::replace( $old );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $compat eq '1.3' ) {
-
- # maintain part_svc_column records
-
- my $svcdb = $new->svcdb;
- foreach my $field (
- grep { $_ ne 'svcnum'
- && defined( $new->getfield($svcdb.'__'.$_.'_flag') )
- } (fields($svcdb),@fields)
- ) {
- my $part_svc_column = $new->part_svc_column($field);
- my $previous = qsearchs('part_svc_column', {
- 'svcpart' => $new->svcpart,
- 'columnname' => $field,
- } );
-
- my $flag = $new->getfield($svcdb.'__'.$field.'_flag');
- #if ( uc($flag) =~ /^([DFMAX])$/ ) {
- if ( uc($flag) =~ /^([A-Z])$/ ) { #part_svc_column will test it
- $part_svc_column->setfield('columnflag', $1);
- $part_svc_column->setfield('columnvalue',
- $new->getfield($svcdb.'__'.$field)
- );
- if ( $previous ) {
- $error = $part_svc_column->replace($previous);
- } else {
- $error = $part_svc_column->insert;
- }
- } else {
- $error = $previous ? $previous->delete : '';
- }
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- # maintain export_svc records
-
- if ( $exportnums ) {
-
- #false laziness w/ edit/process/agent_type.cgi
- my @new_export_svc = ();
- foreach my $part_export ( qsearch('part_export', {}) ) {
- my $exportnum = $part_export->exportnum;
- my $hashref = {
- 'exportnum' => $exportnum,
- 'svcpart' => $new->svcpart,
- };
- my $export_svc = qsearchs('export_svc', $hashref);
-
- if ( $export_svc && ! $exportnums->{$exportnum} ) {
- $error = $export_svc->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- } elsif ( ! $export_svc && $exportnums->{$exportnum} ) {
- push @new_export_svc, new FS::export_svc ( $hashref );
- }
-
- }
-
- my $slice = 100/scalar(@new_export_svc) if @new_export_svc;
- my $done = 0;
- foreach my $export_svc (@new_export_svc) {
- $error = $export_svc->insert($job, $slice*$done++, $slice);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- if ( $job ) {
- $error = $job->update_statustext( int( $slice * $done ) );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- }
-
- } else {
- $dbh->rollback if $oldAutoCommit;
- return 'non-1.3-COMPAT interface not yet written';
- #not yet implemented
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item check
-
-Checks all fields to make sure this is a valid service definition. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error;
- $error=
- $self->ut_numbern('svcpart')
- || $self->ut_text('svc')
- || $self->ut_alpha('svcdb')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- ;
- return $error if $error;
-
- my @fields = eval { fields( $self->svcdb ) }; #might die
- return "Unknown svcdb: ". $self->svcdb. " (Error: $@)"
- unless @fields;
-
- $self->SUPER::check;
-}
-
-=item part_svc_column COLUMNNAME
-
-Returns the part_svc_column object (see L<FS::part_svc_column>) for the given
-COLUMNNAME, or a new part_svc_column object if none exists.
-
-=cut
-
-sub part_svc_column {
- my( $self, $columnname) = @_;
- $self->svcpart &&
- qsearchs('part_svc_column', {
- 'svcpart' => $self->svcpart,
- 'columnname' => $columnname,
- }
- ) or new FS::part_svc_column {
- 'svcpart' => $self->svcpart,
- 'columnname' => $columnname,
- };
-}
-
-=item all_part_svc_column
-
-=cut
-
-sub all_part_svc_column {
- my $self = shift;
- qsearch('part_svc_column', { 'svcpart' => $self->svcpart } );
-}
-
-=item part_export [ EXPORTTYPE ]
-
-Returns a list of all exports (see L<FS::part_export>) for this service, or,
-if an export type is specified, only returns exports of the given type.
-
-=cut
-
-sub part_export {
- my $self = shift;
- my %search;
- $search{'exporttype'} = shift if @_;
- map { qsearchs('part_export', { 'exportnum' => $_->exportnum, %search } ) }
- qsearch('export_svc', { 'svcpart' => $self->svcpart } );
-}
-
-=item part_export_usage
-
-Returns a list of any exports (see L<FS::part_export>) for this service that
-are capable of reporting usage information.
-
-=cut
-
-sub part_export_usage {
- my $self = shift;
- grep $_->can('usage_sessions'), $self->part_export;
-}
-
-=item cust_svc [ PKGPART ]
-
-Returns a list of associated customer services (FS::cust_svc records).
-
-If a PKGPART is specified, returns the customer services which are contained
-within packages of that type (see L<FS::part_pkg>). If PKGPARTis specified as
-B<0>, returns unlinked customer services.
-
-=cut
-
-sub cust_svc {
- my $self = shift;
-
- my $hashref = { 'svcpart' => $self->svcpart };
-
- my( $addl_from, $extra_sql ) = ( '', '' );
- if ( @_ ) {
- my $pkgpart = shift;
- if ( $pkgpart =~ /^(\d+)$/ ) {
- $addl_from = 'LEFT JOIN cust_pkg USING ( pkgnum )';
- $extra_sql = "AND pkgpart = $1";
- } elsif ( $pkgpart eq '0' ) {
- $hashref->{'pkgnum'} = '';
- }
- }
-
- qsearch({
- 'table' => 'cust_svc',
- 'addl_from' => $addl_from,
- 'hashref' => $hashref,
- 'extra_sql' => $extra_sql,
- });
-}
-
-=item num_cust_svc [ PKGPART ]
-
-Returns the number of associated customer services (FS::cust_svc records).
-
-If a PKGPART is specified, returns the number of customer services which are
-contained within packages of that type (see L<FS::part_pkg>). If PKGPART
-is specified as B<0>, returns the number of unlinked customer services.
-
-=cut
-
-sub num_cust_svc {
- my $self = shift;
-
- my @param = ( $self->svcpart );
-
- my( $join, $and ) = ( '', '' );
- if ( @_ ) {
- my $pkgpart = shift;
- if ( $pkgpart ) {
- $join = 'LEFT JOIN cust_pkg USING ( pkgnum )';
- $and = 'AND pkgpart = ?';
- push @param, $pkgpart;
- } elsif ( $pkgpart eq '0' ) {
- $and = 'AND pkgnum IS NULL';
- }
- }
-
- my $sth = dbh->prepare(
- "SELECT COUNT(*) FROM cust_svc $join WHERE svcpart = ? $and"
- ) or die dbh->errstr;
- $sth->execute(@param)
- or die $sth->errstr;
- $sth->fetchrow_arrayref->[0];
-}
-
-=item svc_x
-
-Returns a list of associated FS::svc_* records.
-
-=cut
-
-sub svc_x {
- my $self = shift;
- map { $_->svc_x } $self->cust_svc;
-}
-
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item process
-
-Job-queue processor for web interface adds/edits
-
-=cut
-
-use Storable qw(thaw);
-use Data::Dumper;
-use MIME::Base64;
-sub process {
- my $job = shift;
-
- my $param = thaw(decode_base64(shift));
- warn Dumper($param) if $DEBUG;
-
- my $old = qsearchs('part_svc', { 'svcpart' => $param->{'svcpart'} })
- if $param->{'svcpart'};
-
- $param->{'svc_acct__usergroup'} =
- ref($param->{'svc_acct__usergroup'})
- ? join(',', @{$param->{'svc_acct__usergroup'}} )
- : $param->{'svc_acct__usergroup'};
-
- my $new = new FS::part_svc ( {
- map {
- $_ => $param->{$_};
- # } qw(svcpart svc svcdb)
- } ( fields('part_svc'),
- map { my $svcdb = $_;
- my @fields = fields($svcdb);
- push @fields, 'usergroup' if $svcdb eq 'svc_acct'; #kludge
-
- map {
- if ( $param->{ $svcdb.'__'.$_.'_flag' } =~ /^[MA]$/ ) {
- $param->{ $svcdb.'__'.$_ } =
- delete( $param->{ $svcdb.'__'.$_.'_classnum' } );
- }
- ( $svcdb.'__'.$_, $svcdb.'__'.$_.'_flag' );
- }
- @fields;
-
- } grep defined( dbdef->table($_) ),
- qw( svc_acct svc_domain svc_forward svc_www svc_broadband
- svc_phone svc_external
- )
- )
- } );
-
- my %exportnums =
- map { $_->exportnum => ( $param->{'exportnum'.$_->exportnum} || '') }
- qsearch('part_export', {} );
-
- my $error;
- if ( $param->{'svcpart'} ) {
- $error = $new->replace( $old,
- '1.3-COMPAT',
- [ 'usergroup' ],
- \%exportnums,
- $job
- );
- } else {
- $error = $new->insert( [ 'usergroup' ],
- \%exportnums,
- $job,
- );
- $param->{'svcpart'} = $new->getfield('svcpart');
- }
-
- die "$error\n" if $error;
-}
-
-=item process_bulk_cust_svc
-
-Job-queue processor for web interface bulk customer service changes
-
-=cut
-
-use Storable qw(thaw);
-use Data::Dumper;
-use MIME::Base64;
-sub process_bulk_cust_svc {
- my $job = shift;
-
- my $param = thaw(decode_base64(shift));
- warn Dumper($param) if $DEBUG;
-
- my $old_part_svc =
- qsearchs('part_svc', { 'svcpart' => $param->{'old_svcpart'} } );
-
- die "Must select a new service definition\n" unless $param->{'new_svcpart'};
-
- #the rest should be abstracted out to to its own subroutine?
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- local( $FS::cust_svc::ignore_quantity ) = 1;
-
- my $total = $old_part_svc->num_cust_svc( $param->{'pkgpart'} );
-
- my $n = 0;
- foreach my $old_cust_svc ( $old_part_svc->cust_svc( $param->{'pkgpart'} ) ) {
-
- my $new_cust_svc = new FS::cust_svc { $old_cust_svc->hash };
-
- $new_cust_svc->svcpart( $param->{'new_svcpart'} );
- my $error = $new_cust_svc->replace($old_cust_svc);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- die "$error\n" if $error;
- }
-
- $error = $job->update_statustext( int( 100 * ++$n / $total ) );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- die $error if $error;
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=head1 BUGS
-
-Delete is unimplemented.
-
-The list of svc_* tables is hardcoded. When svc_acct_pop is renamed, this
-should be fixed.
-
-all_part_svc_column methods should be documented
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::part_svc_column>, L<FS::part_pkg>, L<FS::pkg_svc>,
-L<FS::cust_svc>, L<FS::svc_acct>, L<FS::svc_forward>, L<FS::svc_domain>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_svc_column.pm b/FS/FS/part_svc_column.pm
deleted file mode 100644
index fb08eaa..0000000
--- a/FS/FS/part_svc_column.pm
+++ /dev/null
@@ -1,120 +0,0 @@
-package FS::part_svc_column;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( fields );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::part_svc_column - Object methods for part_svc_column objects
-
-=head1 SYNOPSIS
-
- use FS::part_svc_column;
-
- $record = new FS::part_svc_column \%hash
- $record = new FS::part_svc_column { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_svc_column record represents a service definition column
-constraint. FS::part_svc_column inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item columnnum - primary key (assigned automatcially for new records)
-
-=item svcpart - service definition (see L<FS::part_svc>)
-
-=item columnname - column name in part_svc.svcdb table
-
-=item columnvalue - default or fixed value for the column
-
-=item columnflag - null or empty (no default), `D' for default, `F' for fixed (unchangeable), `M' for manual selection from inventory, or `A' for automatic selection from inventory. For virtual fields, can also be 'X' for excluded.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new column constraint. To add the column constraint to the database, see L<"insert">.
-
-=cut
-
-sub table { 'part_svc_column'; }
-
-=item insert
-
-Adds this service definition to the database. If there is an error, returns
-the error, otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('columnnum')
- || $self->ut_number('svcpart')
- || $self->ut_alpha('columnname')
- || $self->ut_anything('columnvalue')
- ;
- return $error if $error;
-
- $self->columnflag =~ /^([DFMAX])$/
- or return "illegal columnflag ". $self->columnflag;
- $self->columnflag(uc($1));
-
- if ( $self->columnflag =~ /^[MA]$/ ) {
- $error =
- $self->ut_foreign_key( 'columnvalue', 'inventory_class', 'classnum' );
- return $error if $error;
- }
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::part_svc>, L<FS::part_pkg>, L<FS::pkg_svc>,
-L<FS::cust_svc>, L<FS::svc_acct>, L<FS::svc_forward>, L<FS::svc_domain>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/part_svc_router.pm b/FS/FS/part_svc_router.pm
deleted file mode 100755
index df04cc9..0000000
--- a/FS/FS/part_svc_router.pm
+++ /dev/null
@@ -1,33 +0,0 @@
-package FS::part_svc_router;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw(qsearchs);
-use FS::router;
-use FS::part_svc;
-
-@ISA = qw(FS::Record);
-
-sub table { 'part_svc_router'; }
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('svcrouternum')
- || $self->ut_foreign_key('svcpart', 'part_svc', 'svcpart')
- || $self->ut_foreign_key('routernum', 'router', 'routernum');
- return $error if $error;
- ''; #no error
-}
-
-sub router {
- my $self = shift;
- return qsearchs('router', { routernum => $self->routernum });
-}
-
-sub part_svc {
- my $self = shift;
- return qsearchs('part_svc', { svcpart => $self->svcpart });
-}
-
-1;
diff --git a/FS/FS/part_virtual_field.pm b/FS/FS/part_virtual_field.pm
deleted file mode 100755
index 992d449..0000000
--- a/FS/FS/part_virtual_field.pm
+++ /dev/null
@@ -1,300 +0,0 @@
-package FS::part_virtual_field;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs qsearch );
-use FS::Schema qw( dbdef );
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::part_virtual_field - Object methods for part_virtual_field records
-
-=head1 SYNOPSIS
-
- use FS::part_virtual_field;
-
- $record = new FS::part_virtual_field \%hash;
- $record = new FS::part_virtual_field { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::part_virtual_field object represents the definition of a virtual field
-(see the BACKGROUND section). FS::part_virtual_field contains the name and
-base table of the field, as well as validation rules and UI hints about the
-display of the field. The actual data is stored in FS::virtual_field; see
-its manpage for details.
-
-FS::part_virtual_field inherits from FS::Record. The following fields are
-currently supported:
-
-=over 2
-
-=item vfieldpart - primary key (assigned automatically)
-
-=item name - name of the field
-
-=item dbtable - table for which this virtual field is defined
-
-=item check_block - Perl code to validate/normalize data
-
-=item list_source - Perl code to generate a list of values (UI hint)
-
-=item length - expected length of the value (UI hint)
-
-=item label - descriptive label for the field (UI hint)
-
-=item sequence - sort key (UI hint; unimplemented)
-
-=back
-
-=head1 BACKGROUND
-
-"Form is none other than emptiness,
- and emptiness is none other than form."
--- Heart Sutra
-
-The virtual field mechanism allows site admins to make trivial changes to
-the Freeside database schema without modifying the code. Specifically, the
-user can add custom-defined 'fields' to the set of data tracked by Freeside
-about objects such as customers and services. These fields are not associated
-with any logic in the core Freeside system, but may be referenced in peripheral
-code such as exports, price calculations, or alternate interfaces, or may just
-be stored in the database for future reference.
-
-This system was originally devised for svc_broadband, which (by necessity)
-comprises such a wide range of access technologies that no static set of fields
-could contain all the information needed by the exports. In an appalling
-display of False Laziness, a parallel mechanism was implemented for the
-router table, to store properties such as passwords to configure routers.
-
-The original system treated svc_broadband custom fields (sb_fields) as records
-in a completely separate table. Any code that accessed or manipulated these
-fields had to be aware that they were I<not> fields in svc_broadband, but
-records in sb_field. For example, code that inserted a svc_broadband with
-several custom fields had to create an FS::svc_broadband object, call its
-insert() method, and then create several FS::sb_field objects and call I<their>
-insert() methods.
-
-This created a problem for exports. The insert method on any FS::svc_Common
-object (including svc_broadband) automatically triggers exports after the
-record has been inserted. However, at this point, the sb_fields had not yet
-been inserted, so the export could not rely on their presence, which was the
-original purpose of sb_fields.
-
-Hence the new system. Virtual fields are appended to the field list of every
-record at the FS::Record level, whether the object is created ex nihilo with
-new() or fetched with qsearch(). The fields() method now returns a list of
-both real and virtual fields. The insert(), replace(), and delete() methods
-now update both the base table and the virtual fields, in a single transaction.
-
-A new method is provided, virtual_fields(), which gives only the virtual
-fields. UI code that dynamically generates form widgets to edit virtual field
-data should use this to figure out what fields are defined. (See below.)
-
-Subclasses may override virtual_fields() to restrict the set of virtual
-fields available. Some discipline and sanity on the part of the programmer
-are required; in particular, this function should probably not depend on any
-fields in the record other than the primary key, since the others may change
-after the object is instantiated. (Making it depend on I<virtual> fields is
-just asking for pain.) One use of this is seen in FS::svc_Common; another
-possibility is field-level access control based on FS::UID::getotaker().
-
-As a trivial case, a subclass may opt out of supporting virtual fields with
-the following code:
-
-sub virtual_fields { () }
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new record. To add the record to the database, see "insert".
-
-=cut
-
-sub table { 'part_virtual_field'; }
-sub virtual_fields { () }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-If there is an error, returns the error, otherwise returns false.
-Called by the insert and replace methods.
-
-=back
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error = $self->ut_text('name') ||
- $self->ut_text('dbtable') ||
- $self->ut_number('length')
- ;
- return $error if $error;
-
- # Make sure it's a real table with a numeric primary key
- my ($table, $pkey);
- if($table = dbdef->table($self->dbtable)) {
- if($pkey = $table->primary_key) {
- if($table->column($pkey)->type =~ /int/i) {
- # this is what it should be
- } else {
- $error = "$table.$pkey is not an integer";
- }
- } else {
- $error = "$table does not have a single-field primary key";
- }
- } else {
- $error = "$table does not exist in the schema";
- }
- return $error if $error;
-
- # Possibly some sanity checks for check_block and list_source?
-
- $self->SUPER::check;
-}
-
-=item list
-
-Evaluates list_source.
-
-=cut
-
-sub list {
- my $self = shift;
- return () unless $self->list_source;
-
- my @opts = eval($self->list_source);
- if($@) {
- warn $@;
- return ();
- } else {
- return @opts;
- }
-}
-
-=item widget UI_TYPE MODE [ VALUE ]
-
-Generates UI code for a widget suitable for editing/viewing the field, based on
-list_source and length.
-
-The only UI_TYPE currently supported is 'HTML', and the only MODE is 'view'.
-Others will be added later.
-
-In HTML, all widgets are assumed to be table rows. View widgets look like
-<TR><TD ALIGN="right">Label</TD><TD BGCOLOR="#ffffff">Value</TD></TR>
-
-(Most of the display style stuff, such as the colors, should probably go into
-a separate module specific to the UI. That can wait, though. The API for
-this function won't change.)
-
-VALUE (optional) is the current value of the field.
-
-=cut
-
-sub widget {
- my $self = shift;
- my ($ui_type, $mode, $value) = @_;
- my $text;
- my $label = $self->label || $self->name;
-
- if ($ui_type eq 'HTML') {
- if ($mode eq 'view') {
- $text = q!<TR><TD ALIGN="right">! . $label .
- q!</TD><TD BGCOLOR="#ffffff">! . $value .
- q!</TD></TR>! . "\n";
- } elsif ($mode eq 'edit') {
- $text = q!<TR><TD ALIGN="right">! . $label .
- q!</TD><TD>!;
- if ($self->list_source) {
- $text .= q!<SELECT NAME="! . $self->name .
- q!" SIZE=1>! . "\n";
- foreach ($self->list) {
- $text .= q!<OPTION VALUE="! . $_ . q!"!;
- $text .= ' SELECTED' if ($_ eq $value);
- $text .= '>' . $_ . '</OPTION>' . "\n";
- }
- } else {
- $text .= q!<INPUT NAME="! . $self->name .
- q!" VALUE="! . $value . q!"!;
- if ($self->length) {
- $text .= q! SIZE="! . $self->length . q!"!;
- }
- $text .= '>';
- }
- $text .= q!</TD></TR>! . "\n";
- } else {
- return '';
- }
- } else {
- return '';
- }
- return $text;
-}
-
-=head1 NOTES
-
-=head2 Semantics of check_block:
-
-This has been changed from the sb_field implementation to make check_blocks
-simpler and more natural to Perl programmers who work on things other than
-Freeside.
-
-The check_block is eval'd with the (proposed) new value of the field in $_,
-and the object to be updated in $self. Its return value is ignored. The
-check_block may change the value of $_ to override the proposed value, or
-call die() (with an appropriate error message) to reject the update entirely;
-the error string will be returned as the output of the check() method.
-
-This makes check_blocks like
-
-C<s/foo/bar/>
-
-do what you expect.
-
-The check_block is expected NOT to do anything freaky to $self, like modifying
-other fields or calling $self->check(). You have been warned.
-
-(FIXME: Rewrite some of the warnings from part_sb_field and insert here.)
-
-=head1 BUGS
-
-None. It's absolutely falwless.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::virtual_field>
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/pay_batch.pm b/FS/FS/pay_batch.pm
deleted file mode 100644
index 7d9d9fb..0000000
--- a/FS/FS/pay_batch.pm
+++ /dev/null
@@ -1,125 +0,0 @@
-package FS::pay_batch;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::pay_batch - Object methods for pay_batch records
-
-=head1 SYNOPSIS
-
- use FS::pay_batch;
-
- $record = new FS::pay_batch \%hash;
- $record = new FS::pay_batch { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::pay_batch object represents an example. FS::pay_batch inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item batchnum - primary key
-
-=item status -
-
-=item download -
-
-=item upload -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'pay_batch'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('batchnum')
- || $self->ut_enum('status', [ 'O', 'I', 'R' ])
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-status is somewhat redundant now that download and upload exist
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/payby.pm b/FS/FS/payby.pm
deleted file mode 100644
index 72a8766..0000000
--- a/FS/FS/payby.pm
+++ /dev/null
@@ -1,131 +0,0 @@
-package FS::payby;
-
-use strict;
-use vars qw(%hash);
-use Tie::IxHash;
-
-=head1 NAME
-
-FS::payby - Object methods for payment type records
-
-=head1 SYNOPSIS
-
- use FS::payby;
-
- #for now...
-
- my @payby = FS::payby->payby;
-
- tie my %payby, 'Tie::IxHash', FS::payby->payby2longname
-
- my @cust_payby = FS::payby->cust_payby;
-
- tie my %payby, 'Tie::IxHash', FS::payby->cust_payby2longname
-
-=head1 DESCRIPTION
-
-Payment types.
-
-=head1 METHODS
-
-=over 4
-
-=item
-
-=cut
-
-tie %hash, 'Tie::IxHash',
- 'CARD' => {
- tinyname => 'card',
- shortname => 'Credit card',
- longname => 'Credit card (automatic)',
- },
- 'DCRD' => {
- tinyname => 'card',
- shortname => 'Credit card',
- longname => 'Credit card (on-demand)',
- cust_pay => 'CARD', #this is a customer type only, payments are CARD...
- },
- 'CHEK' => {
- tinyname => 'check',
- shortname => 'Electronic check',
- longname => 'Electronic check (automatic)',
- },
- 'DCHK' => {
- tinyname => 'check',
- shortname => 'Electronic check',
- longname => 'Electronic check (on-demand)',
- cust_pay => 'CHEK', #this is a customer type only, payments are CHEK...
- },
- 'LECB' => {
- tinyname => 'phone bill',
- shortname => 'Phone bill billing',
- longname => 'Phone bill billing',
- },
- 'BILL' => {
- tinyname => 'billing',
- shortname => 'Billing',
- longname => 'Billing',
- },
- 'CASH' => {
- tinyname => 'cash',
- shortname => 'Cash', # initial payment, then billing
- longname => 'Cash',
- cust_main => 'BILL', #this is a payment type only, customers go to BILL...
- },
- 'WEST' => {
- tinyname => 'western union',
- shortname => 'Western Union', # initial payment, then billing
- longname => 'Western Union',
- cust_main => 'BILL', #this is a payment type only, customers go to BILL...
- },
- 'MCRD' => { #not the same as DCRD
- tinyname => 'card',
- shortname => 'Manual credit card', # initial payment, then billing
- longname => 'Manual credit card',
- cust_main => 'BILL', #this is a payment type only, customers go to BILL...
- },
- 'COMP' => {
- tinyname => 'comp',
- shortname => 'Complimentary',
- longname => 'Complimentary',
- },
- 'DCLN' => { # This is only an event.
- tinyname => 'declined',
- shortname => 'Declined payment',
- longname => 'Declined payment',
- },
-;
-
-sub payby {
- keys %hash;
-}
-
-sub payby2longname {
- my $self = shift;
- map { $_ => $hash{$_}->{longname} } $self->payby;
-}
-
-sub cust_payby {
- my $self = shift;
- grep { ! exists $hash{$_}->{cust_main} } $self->payby;
-}
-
-sub cust_payby2longname {
- my $self = shift;
- map { $_ => $hash{$_}->{longname} } $self->cust_payby;
-}
-
-=back
-
-=head1 BUGS
-
-This should eventually be an actual database table, and all tables that
-currently have a char payby field should have a foreign key into here instead.
-
-=head1 SEE ALSO
-
-=cut
-
-1;
-
diff --git a/FS/FS/payment_gateway.pm b/FS/FS/payment_gateway.pm
deleted file mode 100644
index a5cdd9d..0000000
--- a/FS/FS/payment_gateway.pm
+++ /dev/null
@@ -1,147 +0,0 @@
-package FS::payment_gateway;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::option_Common;
-
-@ISA = qw( FS::option_Common );
-
-=head1 NAME
-
-FS::payment_gateway - Object methods for payment_gateway records
-
-=head1 SYNOPSIS
-
- use FS::payment_gateway;
-
- $record = new FS::payment_gateway \%hash;
- $record = new FS::payment_gateway { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::payment_gateway object represents an payment gateway.
-FS::payment_gateway inherits from FS::Record. The following fields are
-currently supported:
-
-=over 4
-
-=item gatewaynum - primary key
-
-=item gateway_module - Business::OnlinePayment:: module name
-
-=item gateway_username - payment gateway username
-
-=item gateway_password - payment gateway password
-
-=item gateway_action - optional action or actions (multiple actions are separated with `,': for example: `Authorization Only, Post Authorization'). Defaults to `Normal Authorization'.
-
-=item disabled - Disabled flag, empty or 'Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new payment gateway. To add the payment gateway to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'payment_gateway'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid payment gateway. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('gatewaynum')
- || $self->ut_alpha('gateway_module')
- || $self->ut_textn('gateway_username')
- || $self->ut_anything('gateway_password')
- || $self->ut_enum('disabled', [ '', 'Y' ] )
- #|| $self->ut_textn('gateway_action')
- ;
- return $error if $error;
-
- if ( $self->gateway_action ) {
- my @actions = split(/,\s*/, $self->gateway_action);
- $self->gateway_action(
- join( ',', map { /^(Normal Authorization|Authorization Only|Credit|Post Authorization)$/
- or return "Unknown action $_";
- $1
- }
- @actions
- )
- );
- } else {
- $self->gateway_action('Normal Authorization');
- }
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/payment_gateway_option.pm b/FS/FS/payment_gateway_option.pm
deleted file mode 100644
index 0576022..0000000
--- a/FS/FS/payment_gateway_option.pm
+++ /dev/null
@@ -1,126 +0,0 @@
-package FS::payment_gateway_option;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::payment_gateway_option - Object methods for payment_gateway_option records
-
-=head1 SYNOPSIS
-
- use FS::payment_gateway_option;
-
- $record = new FS::payment_gateway_option \%hash;
- $record = new FS::payment_gateway_option { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::payment_gateway_option object represents an option key and value for
-a payment gateway. FS::payment_gateway_option inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item optionnum - primary key
-
-=item gatewaynum -
-
-=item optionname -
-
-=item optionvalue -
-
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new option. To add the option to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'payment_gateway_option'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid option. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('optionnum')
- || $self->ut_foreign_key('gatewaynum', 'payment_gateway', 'gatewaynum')
- || $self->ut_text('optionname')
- || $self->ut_textn('optionvalue')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/pkg_class.pm b/FS/FS/pkg_class.pm
deleted file mode 100644
index 0fa6e48..0000000
--- a/FS/FS/pkg_class.pm
+++ /dev/null
@@ -1,111 +0,0 @@
-package FS::pkg_class;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch );
-use FS::part_pkg;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::pkg_class - Object methods for pkg_class records
-
-=head1 SYNOPSIS
-
- use FS::pkg_class;
-
- $record = new FS::pkg_class \%hash;
- $record = new FS::pkg_class { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::pkg_class object represents an package class. Every package definition
-(see L<FS::part_pkg>) has, optionally, a package class. FS::pkg_class inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item classnum - primary key (assigned automatically for new package classes)
-
-=item classname - Text name of this package class
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new package class. To add the package class to the database, see
-L<"insert">.
-
-=cut
-
-sub table { 'pkg_class'; }
-
-=item insert
-
-Adds this package class to the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item delete
-
-Deletes this package class from the database. Only package classes with no
-associated package definitions can be deleted. If there is an error, returns
-the error, otherwise returns false.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete an pkg_class with part_pkg records!"
- if qsearch( 'part_pkg', { 'classnum' => $self->classnum } );
-
- $self->SUPER::delete;
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid package class. If there is an
-error, returns the error, otherwise returns false. Called by the insert and
-replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('classnum')
- or $self->ut_text('classname')
- or $self->SUPER::check;
-
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::part_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/pkg_svc.pm b/FS/FS/pkg_svc.pm
deleted file mode 100644
index 065ddbe..0000000
--- a/FS/FS/pkg_svc.pm
+++ /dev/null
@@ -1,158 +0,0 @@
-package FS::pkg_svc;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs );
-use FS::part_pkg;
-use FS::part_svc;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::pkg_svc - Object methods for pkg_svc records
-
-=head1 SYNOPSIS
-
- use FS::pkg_svc;
-
- $record = new FS::pkg_svc \%hash;
- $record = new FS::pkg_svc { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $part_pkg = $record->part_pkg;
-
- $part_svc = $record->part_svc;
-
-=head1 DESCRIPTION
-
-An FS::pkg_svc record links a billing item definition (see L<FS::part_pkg>) to
-a service definition (see L<FS::part_svc>). FS::pkg_svc inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item pkgsvcnum - primary key
-
-=item pkgpart - Billing item definition (see L<FS::part_pkg>)
-
-=item svcpart - Service definition (see L<FS::part_svc>)
-
-=item quantity - Quantity of this service definition that this billing item
-definition includes
-
-=item primary_svc - primary flag, empty or 'Y'
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new record. To add the record to the database, see L<"insert">.
-
-=cut
-
-sub table { 'pkg_svc'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
-
- return "Can't change pkgpart!" if $old->pkgpart != $new->pkgpart;
- return "Can't change svcpart!" if $old->svcpart != $new->svcpart;
-
- $new->SUPER::replace($old);
-}
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error;
- $error =
- $self->ut_numbern('pkgsvcnum')
- || $self->ut_number('pkgpart')
- || $self->ut_number('svcpart')
- || $self->ut_number('quantity')
- ;
- return $error if $error;
-
- return "Unknown pkgpart!" unless $self->part_pkg;
- return "Unknown svcpart!" unless $self->part_svc;
-
- if ( $self->dbdef_table->column('primary_svc') ) {
- $error = $self->ut_enum('primary_svc', [ '', 'Y' ] );
- return $error if $error;
- }
-
- $self->SUPER::check;
-}
-
-=item part_pkg
-
-Returns the FS::part_pkg object (see L<FS::part_pkg>).
-
-=cut
-
-sub part_pkg {
- my $self = shift;
- qsearchs( 'part_pkg', { 'pkgpart' => $self->pkgpart } );
-}
-
-=item part_svc
-
-Returns the FS::part_svc object (see L<FS::part_svc>).
-
-=cut
-
-sub part_svc {
- my $self = shift;
- qsearchs( 'part_svc', { 'svcpart' => $self->svcpart } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::part_pkg>, L<FS::part_svc>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/port.pm b/FS/FS/port.pm
deleted file mode 100644
index c26ca85..0000000
--- a/FS/FS/port.pm
+++ /dev/null
@@ -1,154 +0,0 @@
-package FS::port;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs );
-use FS::nas;
-use FS::session;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::port - Object methods for port records
-
-=head1 SYNOPSIS
-
- use FS::port;
-
- $record = new FS::port \%hash;
- $record = new FS::port { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $session = $port->session;
-
-=head1 DESCRIPTION
-
-An FS::port object represents an individual port on a NAS. FS::port inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item portnum - primary key
-
-=item ip - IP address of this port
-
-=item nasport - port number on the NAS
-
-=item nasnum - NAS this port is on - see L<FS::nas>
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new port. To add the port to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'port'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid port. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('portnum')
- || $self->ut_ipn('ip')
- || $self->ut_numbern('nasport')
- || $self->ut_number('nasnum');
- ;
- return $error if $error;
- return "Either ip or nasport must be specified"
- unless $self->ip || $self->nasport;
- return "Unknown nasnum"
- unless qsearchs('nas', { 'nasnum' => $self->nasnum } );
- $self->SUPER::check;
-}
-
-=item session
-
-Returns the currently open session on this port, or if no session is currently
-open, the most recent session. See L<FS::session>.
-
-=cut
-
-sub session {
- my $self = shift;
- qsearchs('session', { 'portnum' => $self->portnum }, '*',
- 'ORDER BY login DESC LIMIT 1' );
-}
-
-=back
-
-=head1 BUGS
-
-The session method won't deal well if you have multiple open sessions on a
-port, for example if your RADIUS server drops B<stop> records. Suggestions for
-how to deal with this sort of lossage welcome; should we close the session
-when we get a new session on that port? Tag it as invalid somehow? Close it
-one second after it was opened? *sigh* Maybe FS::session shouldn't let you
-create overlapping sessions, at least folks will find out their logging is
-dropping records.
-
-If you think the above refers multiple user logins you need to read the
-manpages again.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/prepay_credit.pm b/FS/FS/prepay_credit.pm
deleted file mode 100644
index 38e87ad..0000000
--- a/FS/FS/prepay_credit.pm
+++ /dev/null
@@ -1,191 +0,0 @@
-package FS::prepay_credit;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw(qsearchs dbh);
-use FS::agent;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::prepay_credit - Object methods for prepay_credit records
-
-=head1 SYNOPSIS
-
- use FS::prepay_credit;
-
- $record = new FS::prepay_credit \%hash;
- $record = new FS::prepay_credit {
- 'identifier' => '4198123455512121'
- 'amount' => '19.95',
- };
-
- $record = new FS::prepay_credit {
- 'identifier' => '4198123455512121'
- 'seconds' => '7200',
- };
-
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::prepay_credit object represents a pre-paid card. FS::prepay_credit
-inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item field - description
-
-=item identifier - identifier entered by the user to receive the credit
-
-=item amount - amount of the credit
-
-=item seconds - time amount of credit (see L<FS::svc_acct/seconds>)
-
-=item agentnum - optional agent (see L<FS::agent>) for this prepaid card
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new pre-paid credit. To add the pre-paid credit to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'prepay_credit'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-=item check
-
-Checks all fields to make sure this is a valid pre-paid credit. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $identifier = $self->identifier;
- $identifier =~ s/\W//g; #anything else would just confuse things
- $self->identifier($identifier);
-
- $self->ut_numbern('prepaynum')
- || $self->ut_alpha('identifier')
- || $self->ut_money('amount')
- || $self->ut_numbern('seconds')
- || $self->ut_foreign_keyn('agentnum', 'agent', 'agentnum')
- || $self->SUPER::check
- ;
-
-}
-
-=item agent
-
-Returns the agent (see L<FS::agent>) for this prepaid card, if any.
-
-=cut
-
-sub agent {
- my $self = shift;
- qsearchs('agent', { 'agentnum' => $self->agentnum } );
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item generate NUM TYPE HASHREF
-
-Generates the specified number of prepaid cards. Returns an array reference of
-the newly generated card identifiers, or a scalar error message.
-
-=cut
-
-#false laziness w/agent::generate_reg_codes
-sub generate {
- my( $num, $type, $hashref ) = @_;
-
- my @codeset = ();
- push @codeset, ( 'A'..'Z' ) if $type =~ /alpha/;
- push @codeset, ( '1'..'9' ) if $type =~ /numeric/;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my @cards = ();
- for ( 1 ... $num ) {
- my $prepay_credit = new FS::prepay_credit {
- 'identifier' => join('', map($codeset[int(rand $#codeset)], (0..7) ) ),
- %$hashref,
- };
- my $error = $prepay_credit->check || $prepay_credit->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "(inserting prepay_credit) $error";
- }
- push @cards, $prepay_credit->identifier;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- \@cards;
-
-}
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::svc_acct>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/queue.pm b/FS/FS/queue.pm
deleted file mode 100644
index 5f8bf11..0000000
--- a/FS/FS/queue.pm
+++ /dev/null
@@ -1,465 +0,0 @@
-package FS::queue;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK $DEBUG $conf $jobnums);
-use Exporter;
-use FS::UID qw(myconnect);
-use FS::Conf;
-use FS::Record qw( qsearch qsearchs dbh );
-#use FS::queue;
-use FS::queue_arg;
-use FS::queue_depend;
-use FS::cust_svc;
-
-@ISA = qw(FS::Record);
-@EXPORT_OK = qw( joblisting );
-
-$DEBUG = 0;
-
-$FS::UID::callback{'FS::queue'} = sub {
- $conf = new FS::Conf;
-};
-
-$jobnums = '';
-
-=head1 NAME
-
-FS::queue - Object methods for queue records
-
-=head1 SYNOPSIS
-
- use FS::queue;
-
- $record = new FS::queue \%hash;
- $record = new FS::queue { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::queue object represents an queued job. FS::queue inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item jobnum - primary key
-
-=item job - fully-qualified subroutine name
-
-=item status - job status
-
-=item statustext - freeform text status message
-
-=item _date - UNIX timestamp
-
-=item svcnum - optional link to service (see L<FS::cust_svc>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new job. To add the job to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'queue'; }
-
-=item insert [ ARGUMENT, ARGUMENT... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-If any arguments are supplied, a queue_arg record for each argument is also
-created (see L<FS::queue_arg>).
-
-=cut
-
-#false laziness w/part_export.pm
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- foreach my $arg ( @_ ) {
- my $queue_arg = new FS::queue_arg ( {
- 'jobnum' => $self->jobnum,
- 'arg' => $arg,
- } );
- $error = $queue_arg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- if ( $jobnums ) {
- warn "jobnums global is active: $jobnums\n" if $DEBUG;
- push @$jobnums, $self->jobnum;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item delete
-
-Delete this record from the database. Any corresponding queue_arg records are
-deleted as well
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my @del = qsearch( 'queue_arg', { 'jobnum' => $self->jobnum } );
- push @del, qsearch( 'queue_depend', { 'depend_jobnum' => $self->jobnum } );
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- foreach my $del ( @del ) {
- $error = $del->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid job. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('jobnum')
- || $self->ut_anything('job')
- || $self->ut_numbern('_date')
- || $self->ut_enum('status',['', qw( new locked failed )])
- || $self->ut_anything('statustext')
- || $self->ut_numbern('svcnum')
- ;
- return $error if $error;
-
- $error = $self->ut_foreign_keyn('svcnum', 'cust_svc', 'svcnum');
- $self->svcnum('') if $error;
-
- $self->status('new') unless $self->status;
- $self->_date(time) unless $self->_date;
-
- $self->SUPER::check;
-}
-
-=item args
-
-Returns a list of the arguments associated with this job.
-
-=cut
-
-sub args {
- my $self = shift;
- map $_->arg, qsearch( 'queue_arg',
- { 'jobnum' => $self->jobnum },
- '',
- 'ORDER BY argnum'
- );
-}
-
-=item cust_svc
-
-Returns the FS::cust_svc object associated with this job, if any.
-
-=cut
-
-sub cust_svc {
- my $self = shift;
- qsearchs('cust_svc', { 'svcnum' => $self->svcnum } );
-}
-
-=item queue_depend
-
-Returns the FS::queue_depend objects associated with this job, if any.
-(Dependancies that must complete before this job can be run).
-
-=cut
-
-sub queue_depend {
- my $self = shift;
- qsearch('queue_depend', { 'jobnum' => $self->jobnum } );
-}
-
-=item depend_insert OTHER_JOBNUM
-
-Inserts a dependancy for this job - it will not be run until the other job
-specified completes. If there is an error, returns the error, otherwise
-returns false.
-
-When using job dependancies, you should wrap the insertion of all relevant jobs
-in a database transaction.
-
-=cut
-
-sub depend_insert {
- my($self, $other_jobnum) = @_;
- my $queue_depend = new FS::queue_depend ( {
- 'jobnum' => $self->jobnum,
- 'depend_jobnum' => $other_jobnum,
- } );
- $queue_depend->insert;
-}
-
-=item queue_depended
-
-Returns the FS::queue_depend objects that associate other jobs with this job,
-if any. (The jobs that are waiting for this job to complete before they can
-run).
-
-=cut
-
-sub queue_depended {
- my $self = shift;
- qsearch('queue_depend', { 'depend_jobnum' => $self->jobnum } );
-}
-
-=item depended_delete
-
-Deletes the other queued jobs (FS::queue objects) that are waiting for this
-job, if any. If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub depended_delete {
- my $self = shift;
- my $error;
- foreach my $job (
- map { qsearchs('queue', { 'jobnum' => $_->jobnum } ) } $self->queue_depended
- ) {
- $error = $job->depended_delete;
- return $error if $error;
- $error = $job->delete;
- return $error if $error
- }
-}
-
-=item update_statustext VALUE
-
-Updates the statustext value of this job to supplied value, in the database.
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-use vars qw($_update_statustext_dbh);
-sub update_statustext {
- my( $self, $statustext ) = @_;
- return '' if $statustext eq $self->statustext;
- warn "updating statustext for $self to $statustext" if $DEBUG;
-
- $_update_statustext_dbh ||= myconnect;
-
- my $sth = $_update_statustext_dbh->prepare(
- 'UPDATE queue set statustext = ? WHERE jobnum = ?'
- ) or return $_update_statustext_dbh->errstr;
-
- $sth->execute($statustext, $self->jobnum) or return $sth->errstr;
- $_update_statustext_dbh->commit or die $_update_statustext_dbh->errstr;
- $self->statustext($statustext);
- '';
-
- #my $new = new FS::queue { $self->hash };
- #$new->statustext($statustext);
- #my $error = $new->replace($self);
- #return $error if $error;
- #$self->statustext($statustext);
- #'';
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item joblisting HASHREF NOACTIONS
-
-=cut
-
-sub joblisting {
- my($hashref, $noactions) = @_;
-
- use Date::Format;
- use HTML::Entities;
- use FS::CGI;
-
- my @queue = qsearch( 'queue', $hashref );
- return '' unless scalar(@queue);
-
- my $p = FS::CGI::popurl(2);
-
- my $html = qq!<FORM ACTION="$p/misc/queue.cgi" METHOD="POST">!.
- FS::CGI::table(). <<END;
- <TR>
- <TH COLSPAN=2>Job</TH>
- <TH>Args</TH>
- <TH>Date</TH>
- <TH>Status</TH>
-END
- $html .= '<TH>Account</TH>' unless $hashref->{svcnum};
- $html .= '</TR>';
-
- my $dangerous = $conf->exists('queue_dangerous_controls');
-
- my $areboxes = 0;
-
- foreach my $queue ( sort {
- $a->getfield('jobnum') <=> $b->getfield('jobnum')
- } @queue ) {
- my $queue_hashref = $queue->hashref;
- my $jobnum = $queue->jobnum;
-
- my $args;
- if ( $dangerous || $queue->job !~ /^FS::part_export::/ || !$noactions ) {
- $args = encode_entities( join(' ', $queue->args) );
- } else {
- $args = '';
- }
-
- my $date = time2str( "%a %b %e %T %Y", $queue->_date );
- my $status = $queue->status;
- $status .= ': '. $queue->statustext if $queue->statustext;
- my @queue_depend = $queue->queue_depend;
- $status .= ' (waiting for '.
- join(', ', map { $_->depend_jobnum } @queue_depend ).
- ')'
- if @queue_depend;
- my $changable = $dangerous
- || ( ! $noactions && $status =~ /^failed/ || $status =~ /^locked/ );
- if ( $changable ) {
- $status .=
- qq! (&nbsp;<A HREF="$p/misc/queue.cgi?jobnum=$jobnum&action=new">retry</A>&nbsp;|!.
- qq!&nbsp;<A HREF="$p/misc/queue.cgi?jobnum=$jobnum&action=del">remove</A>&nbsp;)!;
- }
- my $cust_svc = $queue->cust_svc;
-
- $html .= <<END;
- <TR>
- <TD>$jobnum</TD>
- <TD>$queue_hashref->{job}</TD>
- <TD>$args</TD>
- <TD>$date</TD>
- <TD>$status</TD>
-END
-
- unless ( $hashref->{svcnum} ) {
- my $account;
- if ( $cust_svc ) {
- my $table = $cust_svc->part_svc->svcdb;
- my $label = ( $cust_svc->label )[1];
- $account = qq!<A HREF="../view/$table.cgi?!. $queue->svcnum.
- qq!">$label</A>!;
- } else {
- $account = '';
- }
- $html .= "<TD>$account</TD>";
- }
-
- if ( $changable ) {
- $areboxes=1;
- $html .=
- qq!<TD><INPUT NAME="jobnum$jobnum" TYPE="checkbox" VALUE="1"></TD>!;
-
- }
-
- $html .= '</TR>';
-
-}
-
- $html .= '</TABLE>';
-
- if ( $areboxes ) {
- $html .= '<BR><INPUT TYPE="submit" NAME="action" VALUE="retry selected">'.
- '<INPUT TYPE="submit" NAME="action" VALUE="remove selected"><BR>';
- }
-
- $html;
-
-}
-
-=back
-
-=head1 BUGS
-
-$jobnums global
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/queue_arg.pm b/FS/FS/queue_arg.pm
deleted file mode 100644
index c96ff12..0000000
--- a/FS/FS/queue_arg.pm
+++ /dev/null
@@ -1,117 +0,0 @@
-package FS::queue_arg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::queue_arg - Object methods for queue_arg records
-
-=head1 SYNOPSIS
-
- use FS::queue_arg;
-
- $record = new FS::queue_arg \%hash;
- $record = new FS::queue_arg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::queue_arg object represents job argument. FS::queue_arg inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item argnum - primary key
-
-=item jobnum - see L<FS::queue>
-
-=item arg - argument
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new argument. To add the argument to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'queue_arg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid argument. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('argnum')
- || $self->ut_numbern('jobnum')
- || $self->ut_anything('arg')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::queue>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/queue_depend.pm b/FS/FS/queue_depend.pm
deleted file mode 100644
index 99a22c5..0000000
--- a/FS/FS/queue_depend.pm
+++ /dev/null
@@ -1,121 +0,0 @@
-package FS::queue_depend;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::queue;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::queue_depend - Object methods for queue_depend records
-
-=head1 SYNOPSIS
-
- use FS::queue_depend;
-
- $record = new FS::queue_depend \%hash;
- $record = new FS::queue_depend { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::queue_depend object represents an job dependancy. FS::queue_depend
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item dependnum - primary key
-
-=item jobnum - source jobnum (see L<FS::queue>).
-
-=item depend_jobnum - dependancy jobnum (see L<FS::queue>)
-
-=back
-
-The job specified by B<jobnum> depends on the job specified B<depend_jobnum> -
-the B<jobnum> job will not be run until the B<depend_jobnum> job has completed
-successfully (or manually removed).
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new dependancy. To add the dependancy to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'queue_depend'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid dependancy. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('dependnum')
- || $self->ut_foreign_key('jobnum', 'queue', 'jobnum')
- || $self->ut_foreign_key('depend_jobnum', 'queue', 'jobnum')
- || $self->SUPER::check
- ;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::queue>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/raddb.pm b/FS/FS/raddb.pm
deleted file mode 100644
index 506b325..0000000
--- a/FS/FS/raddb.pm
+++ /dev/null
@@ -1,1912 +0,0 @@
-package FS::raddb;
-use vars qw(%attrib);
-
-%attrib = (
- '3com_user_access_level' => '3Com-User-Access-Level',
- '3gpp2_accounting_contain' => '3GPP2-Accounting-Container',
- '3gpp2_acct_stop_trigger' => '3GPP2-Acct-Stop-Trigger',
- '3gpp2_active_time' => '3GPP2-Active-Time',
- '3gpp2_airlink_priority' => '3GPP2-Airlink-Priority',
- '3gpp2_airlink_record_typ' => '3GPP2-Airlink-Record-Type',
- '3gpp2_airlink_sequence_n' => '3GPP2-Airlink-Sequence-Number',
- '3gpp2_allowed_diffserv_m' => '3GPP2-Allowed-Diffserv-Marking',
- '3gpp2_allowed_persistent' => '3GPP2-Allowed-Persistent-TFTs',
- '3gpp2_bad_ppp_frame_coun' => '3GPP2-Bad-PPP-Frame-Count',
- '3gpp2_begin_session' => '3GPP2-Begin-Session',
- '3gpp2_bsid' => '3GPP2-BSID',
- '3gpp2_compulsory_tunnel_' => '3GPP2-Compulsory-Tunnel-Indicator',
- '3gpp2_correlation_id' => '3GPP2-Correlation-Id',
- '3gpp2_dcch_frame_size' => '3GPP2-DCCH-Frame-Size',
- '3gpp2_diffserv_class_opt' => '3GPP2-Diffserv-Class-Option',
- '3gpp2_disconnect_reason' => '3GPP2-Disconnect-Reason',
- '3gpp2_dns_update_capabil' => '3GPP2-DNS-Update-Capability',
- '3gpp2_dns_update_require' => '3GPP2-DNS-Update-Required',
- '3gpp2_esn' => '3GPP2-ESN',
- '3gpp2_fch_frame_size' => '3GPP2-FCH-Frame-Size',
- '3gpp2_foreign_agent_addr' => '3GPP2-Foreign-Agent-Address',
- '3gpp2_forward_dcch_mux_o' => '3GPP2-Forward-DCCH-Mux-Option',
- '3gpp2_forward_dcch_rc' => '3GPP2-Forward-DCCH-RC',
- '3gpp2_forward_fch_mux_op' => '3GPP2-Forward-FCH-Mux-Option',
- '3gpp2_forward_fch_rc' => '3GPP2-Forward-FCH-RC',
- '3gpp2_forward_pdch_rc' => '3GPP2-Forward-PDCH-RC',
- '3gpp2_forward_traffic_ty' => '3GPP2-Forward-Traffic-Type',
- '3gpp2_home_agent_ip_addr' => '3GPP2-Home-Agent-IP-Address',
- '3gpp2_ike_preshared_secr' => '3GPP2-Ike-Preshared-Secret-Request',
- '3gpp2_inbound_mobile_ip_' => '3GPP2-Inbound-Mobile-IP-Sig-Octets',
- '3gpp2_ip_qos' => '3GPP2-IP-QoS',
- '3gpp2_ip_technology' => '3GPP2-IP-Technology',
- '3gpp2_keyid' => '3GPP2-KeyID',
- '3gpp2_last_user_activity' => '3GPP2-Last-User-Activity-Time',
- '3gpp2_mip_lifetime' => '3GPP2-MIP-Lifetime',
- '3gpp2_mn_aaa_removal_ind' => '3GPP2-MN-AAA-Removal-Indication',
- '3gpp2_mn_ha_shared_key' => '3GPP2-MN-HA-Shared-Key',
- '3gpp2_mn_ha_spi' => '3GPP2-MN-HA-SPI',
- '3gpp2_module_orig_term_i' => '3GPP2-Module-Orig-Term-Indicator',
- '3gpp2_number_active_tran' => '3GPP2-Number-Active-Transitions',
- '3gpp2_originating_number' => '3GPP2-Originating-Number-SDBs',
- '3gpp2_originating_sdb_oc' => '3GPP2-Originating-SDB-OCtet-Count',
- '3gpp2_outbound_mobile_ip' => '3GPP2-Outbound-Mobile-IP-Sig-Octets',
- '3gpp2_pcf_ip_address' => '3GPP2-PCF-IP-Address',
- '3gpp2_pre_shared_secret' => '3GPP2-Pre-Shared-Secret',
- '3gpp2_prepaid_acct_capab' => '3GPP2-Prepaid-acct-Capability',
- '3gpp2_prepaid_acct_quota' => '3GPP2-Prepaid-Acct-Quota',
- '3gpp2_prepaid_tariff_swi' => '3GPP2-PrePaid-Tariff-Switching',
- '3gpp2_received_hdlc_octe' => '3GPP2-Received-HDLC-Octets',
- '3gpp2_release_indicator' => '3GPP2-Release-Indicator',
- '3gpp2_remote_address_tab' => '3GPP2-Remote-Address-Table-Index',
- '3gpp2_remote_ip_address' => '3GPP2-Remote-IP-Address',
- '3gpp2_remote_ipv4_addr_o' => '3GPP2-Remote-IPv4-Addr-Octet-Count',
- '3gpp2_remote_ipv6_addres' => '3GPP2-Remote-IPv6-Address',
- '3gpp2_remote_ipv6_octet_' => '3GPP2-Remote-IPv6-Octet-Count',
- '3gpp2_reverse_dcch_mux_o' => '3GPP2-Reverse-DCCH-Mux-Option',
- '3gpp2_reverse_dhhc_rc' => '3GPP2-Reverse-DHHC-RC',
- '3gpp2_reverse_fch_mux_op' => '3GPP2-Reverse-FCH-Mux-Option',
- '3gpp2_reverse_fch_rc' => '3GPP2-Reverse-FCH-RC',
- '3gpp2_reverse_traffic_ty' => '3GPP2-Reverse-Traffic-Type',
- '3gpp2_reverse_tunnel_spe' => '3GPP2-Reverse-Tunnel-Spec',
- '3gpp2_rn_packet_data_ina' => '3GPP2-RN-Packet-Data-Inactivity-Timer',
- '3gpp2_s_key' => '3GPP2-S-Key',
- '3gpp2_s_lifetime' => '3GPP2-S-Lifetime',
- '3gpp2_s_request' => '3GPP2-S-Request',
- '3gpp2_security_level' => '3GPP2-Security-Level',
- '3gpp2_service_option' => '3GPP2-Service-Option',
- '3gpp2_service_option_pro' => '3GPP2-Service-Option-Profile',
- '3gpp2_service_reference_' => '3GPP2-Service-Reference-Id',
- '3gpp2_session_continue' => '3GPP2-Session-Continue',
- '3gpp2_session_terminatio' => '3GPP2-Session-Termination-Capability',
- '3gpp2_terminating_number' => '3GPP2-Terminating-Number-SDBs',
- '3gpp2_terminating_sdb_oc' => '3GPP2-Terminating-SDB-Octet-Count',
- '3gpp2_user_id' => '3GPP2-User-Id',
- '3gpp_charging_characteri' => '3GPP-Charging-Characteristics',
- '3gpp_charging_gateway_ad' => '3GPP-Charging-Gateway-Address',
- '3gpp_charging_gateway_ip' => '3GPP-Charging-Gateway-IPv6-Address',
- '3gpp_charging_id' => '3GPP-Charging-ID',
- '3gpp_ggsn_address' => '3GPP-GGSN-Address',
- '3gpp_ggsn_ipv6_address' => '3GPP-GGSN-IPv6-Address',
- '3gpp_ggsn_mcc_mnc' => '3GPP-GGSN-MCC-MNC',
- '3gpp_gprs_negotiated_qos' => '3GPP-GPRS-Negotiated-QoS-profile',
- '3gpp_imsi' => '3GPP-IMSI',
- '3gpp_imsi_mcc_mnc' => '3GPP-IMSI-MCC-MNC',
- '3gpp_ipv6_dns_servers' => '3GPP-IPv6-DNS-Servers',
- '3gpp_nsapi' => '3GPP-NSAPI',
- '3gpp_pdp_type' => '3GPP-PDP-Type',
- '3gpp_selection_mode' => '3GPP-Selection-Mode',
- '3gpp_session_stop_indica' => '3GPP-Session-Stop-Indicator',
- '3gpp_sgsn_address' => '3GPP-SGSN-Address',
- '3gpp_sgsn_ipv6_address' => '3GPP-SGSN-IPv6-Address',
- 'aat_assign_ip_pool' => 'AAT-Assign-IP-Pool',
- 'aat_atm_direct' => 'AAT-ATM-Direct',
- 'aat_atm_traffic_profile' => 'AAT-ATM-Traffic-Profile',
- 'aat_atm_vci' => 'AAT-ATM-VCI',
- 'aat_atm_vpi' => 'AAT-ATM-VPI',
- 'aat_client_primary_dns' => 'AAT-Client-Primary-DNS',
- 'aat_client_primary_wins_' => 'AAT-Client-Primary-WINS-NBNS',
- 'aat_client_secondary_win' => 'AAT-Client-Secondary-WINS-NBNS',
- 'aat_data_filter' => 'AAT-Data-Filter',
- 'aat_input_octets_diff' => 'AAT-Input-Octets-Diff',
- 'aat_ip_pool_definition' => 'AAT-IP-Pool-Definition',
- 'aat_ip_tos' => 'AAT-IP-TOS',
- 'aat_ip_tos_apply_to' => 'AAT-IP-TOS-Apply-To',
- 'aat_ip_tos_precedence' => 'AAT-IP-TOS-Precedence',
- 'aat_mcast_client' => 'AAT-MCast-Client',
- 'aat_output_octets_diff' => 'AAT-Output-Octets-Diff',
- 'aat_ppp_address' => 'AAT-PPP-Address',
- 'aat_require_auth' => 'AAT-Require-Auth',
- 'aat_source_ip_check' => 'AAT-Source-IP-Check',
- 'aat_user_mac_address' => 'AAT-User-MAC-Address',
- 'aat_vrouter_name' => 'AAT-Vrouter-Name',
- 'acc_access_community' => 'Acc-Access-Community',
- 'acc_access_partition' => 'Acc-Access-Partition',
- 'acc_acct_on_off_reason' => 'Acc-Acct-On-Off-Reason',
- 'acc_ace_token' => 'Acc-Ace-Token',
- 'acc_ace_token_ttl' => 'Acc-Ace-Token-Ttl',
- 'acc_apsm_oversubscribed' => 'Acc-Apsm-Oversubscribed',
- 'acc_bridging_support' => 'Acc-Bridging-Support',
- 'acc_callback_cbcp_type' => 'Acc-Callback-CBCP-Type',
- 'acc_callback_delay' => 'Acc-Callback-Delay',
- 'acc_callback_mode' => 'Acc-Callback-Mode',
- 'acc_callback_num_valid' => 'Acc-Callback-Num-Valid',
- 'acc_ccp_option' => 'Acc-Ccp-Option',
- 'acc_clearing_cause' => 'Acc-Clearing-Cause',
- 'acc_clearing_location' => 'Acc-Clearing-Location',
- 'acc_connect_rx_speed' => 'Acc-Connect-Rx-Speed',
- 'acc_connect_tx_speed' => 'Acc-Connect-Tx-Speed',
- 'acc_customer_id' => 'Acc-Customer-Id',
- 'acc_dial_port_index' => 'Acc-Dial-Port-Index',
- 'acc_dialout_auth_mode' => 'Acc-Dialout-Auth-Mode',
- 'acc_dialout_auth_passwor' => 'Acc-Dialout-Auth-Password',
- 'acc_dialout_auth_usernam' => 'Acc-Dialout-Auth-Username',
- 'acc_dns_server_pri' => 'Acc-Dns-Server-Pri',
- 'acc_dns_server_sec' => 'Acc-Dns-Server-Sec',
- 'acc_igmp_admin_state' => 'Acc-Igmp-Admin-State',
- 'acc_igmp_version' => 'Acc-Igmp-Version',
- 'acc_input_errors' => 'Acc-Input-Errors',
- 'acc_ip_compression' => 'Acc-Ip-Compression',
- 'acc_ip_gateway_pri' => 'Acc-Ip-Gateway-Pri',
- 'acc_ip_gateway_sec' => 'Acc-Ip-Gateway-Sec',
- 'acc_ip_pool_name' => 'Acc-Ip-Pool-Name',
- 'acc_ipx_compression' => 'Acc-Ipx-Compression',
- 'acc_ml_call_threshold' => 'Acc-ML-Call-Threshold',
- 'acc_ml_clear_threshold' => 'Acc-ML-Clear-Threshold',
- 'acc_ml_damping_factor' => 'Acc-ML-Damping-Factor',
- 'acc_ml_mlx_admin_state' => 'Acc-ML-MLX-Admin-State',
- 'acc_modem_error_protocol' => 'Acc-Modem-Error-Protocol',
- 'acc_modem_modulation_typ' => 'Acc-Modem-Modulation-Type',
- 'acc_nbns_server_pri' => 'Acc-Nbns-Server-Pri',
- 'acc_nbns_server_sec' => 'Acc-Nbns-Server-Sec',
- 'acc_output_errors' => 'Acc-Output-Errors',
- 'acc_reason_code' => 'Acc-Reason-Code',
- 'acc_request_type' => 'Acc-Request-Type',
- 'acc_route_policy' => 'Acc-Route-Policy',
- 'acc_service_profile' => 'Acc-Service-Profile',
- 'acc_tunnel_port' => 'Acc-Tunnel-Port',
- 'acc_tunnel_secret' => 'Acc-Tunnel-Secret',
- 'acc_vpsm_reject_cause' => 'Acc-Vpsm-Reject-Cause',
- 'acct_authentic' => 'Acct-Authentic',
- 'acct_delay_time' => 'Acct-Delay-Time',
- 'acct_dyn_ac_ent' => 'Acct_Dyn_Ac_Ent',
- 'acct_dyn_ac_enu' => 'Acct-Dyn-Ac-Ent',
- 'acct_input_gigawords' => 'Acct-Input-Gigawords',
- 'acct_input_octets' => 'Acct-Input-Octets',
- 'acct_input_octets_64' => 'Acct_Input_Octets_64',
- 'acct_input_octets_65' => 'Acct-Input-Octets-64',
- 'acct_input_packets' => 'Acct-Input-Packets',
- 'acct_input_packets_64' => 'Acct_Input_Packets_64',
- 'acct_input_packets_65' => 'Acct-Input-Packets-64',
- 'acct_interim_interval' => 'Acct-Interim-Interval',
- 'acct_link_count' => 'Acct-Link-Count',
- 'acct_mcast_in_octets' => 'Acct_Mcast_In_Octets',
- 'acct_mcast_in_octett' => 'Acct-Mcast-In-Octets',
- 'acct_mcast_in_packets' => 'Acct_Mcast_In_Packets',
- 'acct_mcast_in_packett' => 'Acct-Mcast-In-Packets',
- 'acct_mcast_out_octets' => 'Acct_Mcast_Out_Octets',
- 'acct_mcast_out_octett' => 'Acct-Mcast-Out-Octets',
- 'acct_mcast_out_packets' => 'Acct_Mcast_Out_Packets',
- 'acct_mcast_out_packett' => 'Acct-Mcast-Out-Packets',
- 'acct_multi_session_id' => 'Acct-Multi-Session-Id',
- 'acct_output_gigawords' => 'Acct-Output-Gigawords',
- 'acct_output_octets' => 'Acct-Output-Octets',
- 'acct_output_octets_64' => 'Acct_Output_Octets_64',
- 'acct_output_octets_65' => 'Acct-Output-Octets-64',
- 'acct_output_packets' => 'Acct-Output-Packets',
- 'acct_output_packets_64' => 'Acct_Output_Packets_64',
- 'acct_output_packets_65' => 'Acct-Output-Packets-64',
- 'acct_session_gigawords' => 'Acct-Session-Gigawords',
- 'acct_session_id' => 'Acct-Session-Id',
- 'acct_session_input_gigaw' => 'Acct-Session-Input-Gigawords',
- 'acct_session_input_octet' => 'Acct-Session-Input-Octets',
- 'acct_session_octets' => 'Acct-Session-Octets',
- 'acct_session_output_giga' => 'Acct-Session-Output-Gigawords',
- 'acct_session_output_octe' => 'Acct-Session-Output-Octets',
- 'acct_session_start_time' => 'Acct-Session-Start-Time',
- 'acct_session_time' => 'Acct-Session-Time',
- 'acct_status_type' => 'Acct-Status-Type',
- 'acct_terminate_cause' => 'Acct-Terminate-Cause',
- 'acct_tunnel_connection' => 'Acct-Tunnel-Connection',
- 'acct_tunnel_packets_lost' => 'Acct-Tunnel-Packets-Lost',
- 'acct_type' => 'Acct-Type',
- 'acct_unique_session_id' => 'Acct-Unique-Session-Id',
- 'add_prefix' => 'Add-Prefix',
- 'add_suffix' => 'Add-Suffix',
- 'alteon_service_type' => 'Alteon-Service-Type',
- 'altiga_access_hours_g_u' => 'Altiga-Access-Hours-G/U',
- 'altiga_allow_alpha_only_' => 'Altiga-Allow-Alpha-Only-Passwords-G',
- 'altiga_ipsec_allow_passw' => 'Altiga-IPSec-Allow-Passwd-Store-G/U',
- 'altiga_ipsec_authenticat' => 'Altiga-IPSec-Authentication-G',
- 'altiga_ipsec_banner_g' => 'Altiga-IPSec-Banner-G',
- 'altiga_ipsec_default_dom' => 'Altiga-IPSec-Default-Domain-G',
- 'altiga_ipsec_l2l_keepali' => 'Altiga-IPSec-L2L-Keepalives-G',
- 'altiga_ipsec_mode_config' => 'Altiga-IPSec-Mode-Config-G',
- 'altiga_ipsec_over_nat_g' => 'Altiga-IPSec-Over-NAT-G',
- 'altiga_ipsec_over_nat_po' => 'Altiga-IPSec-Over-NAT-Port-Num-G',
- 'altiga_ipsec_sec_associa' => 'Altiga-IPSec-Sec-Association-G/U',
- 'altiga_ipsec_secondary_d' => 'Altiga-IPSec-Secondary-Domains-G',
- 'altiga_ipsec_split_tunne' => 'Altiga-IPSec-Split-Tunnel-List-G',
- 'altiga_ipsec_tunnel_type' => 'Altiga-IPSec-Tunnel-Type-G',
- 'altiga_ipsec_user_group_' => 'Altiga-IPSec-User-Group-Lock-G',
- 'altiga_l2tp_encryption_g' => 'Altiga-L2TP-Encryption-G',
- 'altiga_l2tp_min_authenti' => 'Altiga-L2TP-Min-Authentication-G/U',
- 'altiga_min_password_leng' => 'Altiga-Min-Password-Length-G',
- 'altiga_pptp_encryption_g' => 'Altiga-PPTP-Encryption-G',
- 'altiga_pptp_min_authenti' => 'Altiga-PPTP-Min-Authentication-G/U',
- 'altiga_primary_dns_g' => 'Altiga-Primary-DNS-G',
- 'altiga_primary_wins_g' => 'Altiga-Primary-WINS-G',
- 'altiga_priority_on_sep_g' => 'Altiga-Priority-on-SEP-G/U',
- 'altiga_secondary_dns_g' => 'Altiga-Secondary-DNS-G',
- 'altiga_secondary_wins_g' => 'Altiga-Secondary-WINS-G',
- 'altiga_sep_card_assignme' => 'Altiga-SEP-Card-Assignment-G/U',
- 'altiga_simultaneous_logi' => 'Altiga-Simultaneous-Logins-G/U',
- 'altiga_tunneling_protoco' => 'Altiga-Tunneling-Protocols-G/U',
- 'altiga_use_client_addres' => 'Altiga-Use-Client-Address-G/U',
- 'annex_acct_servers' => 'Annex-Acct-Servers',
- 'annex_addr_resolution_pr' => 'Annex-Addr-Resolution-Protocol',
- 'annex_addr_resolution_se' => 'Annex-Addr-Resolution-Servers',
- 'annex_audit_level' => 'Annex-Audit-Level',
- 'annex_authen_servers' => 'Annex-Authen-Servers',
- 'annex_begin_modulation' => 'Annex-Begin-Modulation',
- 'annex_begin_receive_line' => 'Annex-Begin-Receive-Line-Level',
- 'annex_callback_portlist' => 'Annex-Callback-Portlist',
- 'annex_cli_command' => 'Annex-CLI-Command',
- 'annex_cli_filter' => 'Annex-CLI-Filter',
- 'annex_compression_protoc' => 'Annex-Compression-Protocol',
- 'annex_connect_progress' => 'Annex-Connect-Progress',
- 'annex_disconnect_reason' => 'Annex-Disconnect-Reason',
- 'annex_domain_name' => 'Annex-Domain-Name',
- 'annex_edo' => 'Annex-EDO',
- 'annex_end_modulation' => 'Annex-End-Modulation',
- 'annex_end_receive_line_l' => 'Annex-End-Receive-Line-Level',
- 'annex_error_correction_p' => 'Annex-Error-Correction-Prot',
- 'annex_filter' => 'Annex-Filter',
- 'annex_host_allow' => 'Annex-Host-Allow',
- 'annex_host_restrict' => 'Annex-Host-Restrict',
- 'annex_input_filter' => 'Annex-Input-Filter',
- 'annex_keypress_timeout' => 'Annex-Keypress-Timeout',
- 'annex_local_ip_address' => 'Annex-Local-IP-Address',
- 'annex_local_username' => 'Annex-Local-Username',
- 'annex_logical_channel_nu' => 'Annex-Logical-Channel-Number',
- 'annex_maximum_call_durat' => 'Annex-Maximum-Call-Duration',
- 'annex_modem_disc_reason' => 'Annex-Modem-Disc-Reason',
- 'annex_mrru' => 'Annex-MRRU',
- 'annex_multicast_rate_lim' => 'Annex-Multicast-Rate-Limit',
- 'annex_multilink_id' => 'Annex-Multilink-Id',
- 'annex_num_in_multilink' => 'Annex-Num-In-Multilink',
- 'annex_output_filter' => 'Annex-Output-Filter',
- 'annex_pool_id' => 'Annex-Pool-Id',
- 'annex_port' => 'Annex-Port',
- 'annex_ppp_trace_level' => 'Annex-PPP-Trace-Level',
- 'annex_pre_input_octets' => 'Annex-Pre-Input-Octets',
- 'annex_pre_input_packets' => 'Annex-Pre-Input-Packets',
- 'annex_pre_output_octets' => 'Annex-Pre-Output-Octets',
- 'annex_pre_output_packets' => 'Annex-Pre-Output-Packets',
- 'annex_primary_dns_server' => 'Annex-Primary-DNS-Server',
- 'annex_primary_nbns_serve' => 'Annex-Primary-NBNS-Server',
- 'annex_product_name' => 'Annex-Product-Name',
- 'annex_rate_reneg_req_rcv' => 'Annex-Rate-Reneg-Req-Rcvd',
- 'annex_rate_reneg_req_sen' => 'Annex-Rate-Reneg-Req-Sent',
- 'annex_re_chap_timeout' => 'Annex-Re-CHAP-Timeout',
- 'annex_receive_speed' => 'Annex-Receive-Speed',
- 'annex_retrain_requests_r' => 'Annex-Retrain-Requests-Rcvd',
- 'annex_retrain_requests_s' => 'Annex-Retrain-Requests-Sent',
- 'annex_retransmitted_pack' => 'Annex-Retransmitted-Packets',
- 'annex_sec_profile_index' => 'Annex-Sec-Profile-Index',
- 'annex_secondary_dns_serv' => 'Annex-Secondary-DNS-Server',
- 'annex_secondary_nbns_ser' => 'Annex-Secondary-NBNS-Server',
- 'annex_signal_to_noise_ra' => 'Annex-Signal-to-Noise-Ratio',
- 'annex_sw_version' => 'Annex-SW-Version',
- 'annex_syslog_tap' => 'Annex-Syslog-Tap',
- 'annex_system_disc_reason' => 'Annex-System-Disc-Reason',
- 'annex_transmit_speed' => 'Annex-Transmit-Speed',
- 'annex_transmitted_packet' => 'Annex-Transmitted-Packets',
- 'annex_tunnel_authen_mode' => 'Annex-Tunnel-Authen-Mode',
- 'annex_tunnel_authen_type' => 'Annex-Tunnel-Authen-Type',
- 'annex_unauthenticated_ti' => 'Annex-Unauthenticated-Time',
- 'annex_user_level' => 'Annex-User-Level',
- 'annex_user_server_locati' => 'Annex-User-Server-Location',
- 'annex_wan_number' => 'Annex-Wan-Number',
- 'arap_challenge_response' => 'ARAP-Challenge-Response',
- 'arap_features' => 'ARAP-Features',
- 'arap_password' => 'ARAP-Password',
- 'arap_security' => 'ARAP-Security',
- 'arap_security_data' => 'ARAP-Security-Data',
- 'arap_zone_access' => 'ARAP-Zone-Access',
- 'ascend_access_intercept_' => 'Ascend-Access-Intercept-LEA',
- 'ascend_access_intercepta' => 'Ascend-Access-Intercept-Log',
- 'ascend_add_seconds' => 'Ascend-Add-Seconds',
- 'ascend_appletalk_peer_mo' => 'Ascend-Appletalk-Peer-Mode',
- 'ascend_appletalk_route' => 'Ascend-Appletalk-Route',
- 'ascend_ara_pw' => 'Ascend-Ara-PW',
- 'ascend_assign_ip_client' => 'Ascend-Assign-IP-Client',
- 'ascend_assign_ip_global_' => 'Ascend-Assign-IP-Global-Pool',
- 'ascend_assign_ip_pool' => 'Ascend-Assign-IP-Pool',
- 'ascend_assign_ip_server' => 'Ascend-Assign-IP-Server',
- 'ascend_atm_connect_group' => 'Ascend-ATM-Connect-Group',
- 'ascend_atm_connect_vci' => 'Ascend-ATM-Connect-Vci',
- 'ascend_atm_connect_vpi' => 'Ascend-ATM-Connect-Vpi',
- 'ascend_atm_direct' => 'Ascend-ATM-Direct',
- 'ascend_atm_direct_profil' => 'Ascend-ATM-Direct-Profile',
- 'ascend_atm_fault_managem' => 'Ascend-ATM-Fault-Management',
- 'ascend_atm_group' => 'Ascend-ATM-Group',
- 'ascend_atm_loopback_cell' => 'Ascend-ATM-Loopback-Cell-Loss',
- 'ascend_atm_vci' => 'Ascend-ATM-Vci',
- 'ascend_atm_vpi' => 'Ascend-ATM-Vpi',
- 'ascend_auth_delay' => 'Ascend-Auth-Delay',
- 'ascend_auth_type' => 'Ascend-Auth-Type',
- 'ascend_authen_alias' => 'Ascend-Authen-Alias',
- 'ascend_backup' => 'Ascend-Backup',
- 'ascend_bacp_enable' => 'Ascend-BACP-Enable',
- 'ascend_base_channel_coun' => 'Ascend-Base-Channel-Count',
- 'ascend_bi_directional_au' => 'Ascend-Bi-Directional-Auth',
- 'ascend_billing_number' => 'Ascend-Billing-Number',
- 'ascend_bir_bridge_group' => 'Ascend-BIR-Bridge-Group',
- 'ascend_bir_enable' => 'Ascend-BIR-Enable',
- 'ascend_bir_proxy' => 'Ascend-BIR-Proxy',
- 'ascend_bridge' => 'Ascend-Bridge',
- 'ascend_bridge_address' => 'Ascend-Bridge-Address',
- 'ascend_bridge_non_pppoe' => 'Ascend-Bridge-Non-PPPoE',
- 'ascend_cache_refresh' => 'Ascend-Cache-Refresh',
- 'ascend_cache_time' => 'Ascend-Cache-Time',
- 'ascend_call_attempt_limi' => 'Ascend-Call-Attempt-Limit',
- 'ascend_call_block_durati' => 'Ascend-Call-Block-Duration',
- 'ascend_call_by_call' => 'Ascend-Call-By-Call',
- 'ascend_call_direction' => 'Ascend-Call-Direction',
- 'ascend_call_filter' => 'Ascend-Call-Filter',
- 'ascend_call_type' => 'Ascend-Call-Type',
- 'ascend_callback' => 'Ascend-Callback',
- 'ascend_callback_delay' => 'Ascend-Callback-Delay',
- 'ascend_calling_id_number' => 'Ascend-Calling-Id-Number-Plan',
- 'ascend_calling_id_presen' => 'Ascend-Calling-Id-Presentatn',
- 'ascend_calling_id_screen' => 'Ascend-Calling-Id-Screening',
- 'ascend_calling_id_type_o' => 'Ascend-Calling-Id-Type-Of-Num',
- 'ascend_calling_subaddres' => 'Ascend-Calling-Subaddress',
- 'ascend_cbcp_delay' => 'Ascend-CBCP-Delay',
- 'ascend_cbcp_enable' => 'Ascend-CBCP-Enable',
- 'ascend_cbcp_mode' => 'Ascend-CBCP-Mode',
- 'ascend_cbcp_trunk_group' => 'Ascend-CBCP-Trunk-Group',
- 'ascend_cir_timer' => 'Ascend-CIR-Timer',
- 'ascend_ckt_type' => 'Ascend-Ckt-Type',
- 'ascend_client_assign_dns' => 'Ascend-Client-Assign-DNS',
- 'ascend_client_assign_win' => 'Ascend-Client-Assign-WINS',
- 'ascend_client_gateway' => 'Ascend-Client-Gateway',
- 'ascend_client_primary_dn' => 'Ascend-Client-Primary-DNS',
- 'ascend_client_primary_wi' => 'Ascend-Client-Primary-WINS',
- 'ascend_client_secondary_' => 'Ascend-Client-Secondary-WINS',
- 'ascend_client_secondarya' => 'Ascend-Client-Secondary-DNS',
- 'ascend_connect_progress' => 'Ascend-Connect-Progress',
- 'ascend_data_filter' => 'Ascend-Data-Filter',
- 'ascend_data_rate' => 'Ascend-Data-Rate',
- 'ascend_data_svc' => 'Ascend-Data-Svc',
- 'ascend_dba_monitor' => 'Ascend-DBA-Monitor',
- 'ascend_dec_channel_count' => 'Ascend-Dec-Channel-Count',
- 'ascend_destination_nas_p' => 'Ascend-Destination-Nas-Port',
- 'ascend_dhcp_maximum_leas' => 'Ascend-DHCP-Maximum-Leases',
- 'ascend_dhcp_pool_number' => 'Ascend-DHCP-Pool-Number',
- 'ascend_dhcp_reply' => 'Ascend-DHCP-Reply',
- 'ascend_dial_number' => 'Ascend-Dial-Number',
- 'ascend_dialed_number' => 'Ascend-Dialed-Number',
- 'ascend_dialout_allowed' => 'Ascend-Dialout-Allowed',
- 'ascend_disconnect_cause' => 'Ascend-Disconnect-Cause',
- 'ascend_dropped_octets' => 'Ascend-Dropped-Octets',
- 'ascend_dropped_packets' => 'Ascend-Dropped-Packets',
- 'ascend_dsl_cir_recv_limi' => 'Ascend-Dsl-CIR-Recv-Limit',
- 'ascend_dsl_cir_xmit_limi' => 'Ascend-Dsl-CIR-Xmit-Limit',
- 'ascend_dsl_downstream_li' => 'Ascend-Dsl-Downstream-Limit',
- 'ascend_dsl_rate_mode' => 'Ascend-Dsl-Rate-Mode',
- 'ascend_dsl_rate_type' => 'Ascend-Dsl-Rate-Type',
- 'ascend_dsl_upstream_limi' => 'Ascend-Dsl-Upstream-Limit',
- 'ascend_egress_enabled' => 'Ascend-Egress-Enabled',
- 'ascend_endpoint_disc' => 'Ascend-Endpoint-Disc',
- 'ascend_event_type' => 'Ascend-Event-Type',
- 'ascend_expect_callback' => 'Ascend-Expect-Callback',
- 'ascend_fcp_parameter' => 'Ascend-FCP-Parameter',
- 'ascend_filter' => 'Ascend-Filter',
- 'ascend_filter_required' => 'Ascend-Filter-Required',
- 'ascend_first_dest' => 'Ascend-First-Dest',
- 'ascend_force_56' => 'Ascend-Force-56',
- 'ascend_fr_08_mode' => 'Ascend-FR-08-Mode',
- 'ascend_fr_circuit_name' => 'Ascend-FR-Circuit-Name',
- 'ascend_fr_dce_n392' => 'Ascend-FR-DCE-N392',
- 'ascend_fr_dce_n393' => 'Ascend-FR-DCE-N393',
- 'ascend_fr_direct' => 'Ascend-FR-Direct',
- 'ascend_fr_direct_dlci' => 'Ascend-FR-Direct-DLCI',
- 'ascend_fr_direct_profile' => 'Ascend-FR-Direct-Profile',
- 'ascend_fr_dlci' => 'Ascend-FR-DLCI',
- 'ascend_fr_dte_n392' => 'Ascend-FR-DTE-N392',
- 'ascend_fr_dte_n393' => 'Ascend-FR-DTE-N393',
- 'ascend_fr_link_mgt' => 'Ascend-FR-Link-Mgt',
- 'ascend_fr_link_status_dl' => 'Ascend-FR-Link-Status-DLCI',
- 'ascend_fr_linkup' => 'Ascend-FR-LinkUp',
- 'ascend_fr_n391' => 'Ascend-FR-N391',
- 'ascend_fr_nailed_grp' => 'Ascend-FR-Nailed-Grp',
- 'ascend_fr_profile_name' => 'Ascend-FR-Profile-Name',
- 'ascend_fr_svc_addr' => 'Ascend-FR-SVC-Addr',
- 'ascend_fr_t391' => 'Ascend-FR-T391',
- 'ascend_fr_t392' => 'Ascend-FR-T392',
- 'ascend_fr_type' => 'Ascend-FR-Type',
- 'ascend_ft1_caller' => 'Ascend-FT1-Caller',
- 'ascend_global_call_id' => 'Ascend-Global-Call-Id',
- 'ascend_group' => 'Ascend-Group',
- 'ascend_h323_conference_i' => 'Ascend-H323-Conference-Id',
- 'ascend_h323_dialed_time' => 'Ascend-H323-Dialed-Time',
- 'ascend_h323_fegw_address' => 'Ascend-H323-Fegw-Address',
- 'ascend_h323_gatekeeper' => 'Ascend-H323-Gatekeeper',
- 'ascend_handle_ipx' => 'Ascend-Handle-IPX',
- 'ascend_history_weigh_typ' => 'Ascend-History-Weigh-Type',
- 'ascend_home_agent_ip_add' => 'Ascend-Home-Agent-IP-Addr',
- 'ascend_home_agent_passwo' => 'Ascend-Home-Agent-Password',
- 'ascend_home_agent_udp_po' => 'Ascend-Home-Agent-UDP-Port',
- 'ascend_home_network_name' => 'Ascend-Home-Network-Name',
- 'ascend_host_info' => 'Ascend-Host-Info',
- 'ascend_idle_limit' => 'Ascend-Idle-Limit',
- 'ascend_if_netmask' => 'Ascend-IF-Netmask',
- 'ascend_inc_channel_count' => 'Ascend-Inc-Channel-Count',
- 'ascend_inter_arrival_jit' => 'Ascend-Inter-Arrival-Jitter',
- 'ascend_ip_direct' => 'Ascend-IP-Direct',
- 'ascend_ip_pool_chaining' => 'Ascend-IP-Pool-Chaining',
- 'ascend_ip_pool_definitio' => 'Ascend-IP-Pool-Definition',
- 'ascend_ip_tos' => 'Ascend-IP-TOS',
- 'ascend_ip_tos_apply_to' => 'Ascend-IP-TOS-Apply-To',
- 'ascend_ip_tos_precedence' => 'Ascend-IP-TOS-Precedence',
- 'ascend_ipsec_profile' => 'Ascend-IPSEC-Profile',
- 'ascend_ipx_alias' => 'Ascend-IPX-Alias',
- 'ascend_ipx_header_compre' => 'Ascend-IPX-Header-Compression',
- 'ascend_ipx_node_addr' => 'Ascend-IPX-Node-Addr',
- 'ascend_ipx_peer_mode' => 'Ascend-IPX-Peer-Mode',
- 'ascend_ipx_route' => 'Ascend-IPX-Route',
- 'ascend_link_compression' => 'Ascend-Link-Compression',
- 'ascend_max_shared_users' => 'Ascend-Max-Shared-Users',
- 'ascend_maximum_call_dura' => 'Ascend-Maximum-Call-Duration',
- 'ascend_maximum_channels' => 'Ascend-Maximum-Channels',
- 'ascend_maximum_time' => 'Ascend-Maximum-Time',
- 'ascend_menu_item' => 'Ascend-Menu-Item',
- 'ascend_menu_selector' => 'Ascend-Menu-Selector',
- 'ascend_metric' => 'Ascend-Metric',
- 'ascend_minimum_channels' => 'Ascend-Minimum-Channels',
- 'ascend_modem_portno' => 'Ascend-Modem-PortNo',
- 'ascend_modem_shelfno' => 'Ascend-Modem-ShelfNo',
- 'ascend_modem_slotno' => 'Ascend-Modem-SlotNo',
- 'ascend_mpp_idle_percent' => 'Ascend-MPP-Idle-Percent',
- 'ascend_mtu' => 'Ascend-MTU',
- 'ascend_multicast_client' => 'Ascend-Multicast-Client',
- 'ascend_multicast_gleave_' => 'Ascend-Multicast-GLeave-Delay',
- 'ascend_multicast_rate_li' => 'Ascend-Multicast-Rate-Limit',
- 'ascend_multilink_id' => 'Ascend-Multilink-ID',
- 'ascend_nas_port_format' => 'Ascend-NAS-Port-Format',
- 'ascend_netware_timeout' => 'Ascend-Netware-timeout',
- 'ascend_num_in_multilink' => 'Ascend-Num-In-Multilink',
- 'ascend_number_sessions' => 'Ascend-Number-Sessions',
- 'ascend_numbering_plan_id' => 'Ascend-Numbering-Plan-ID',
- 'ascend_owner_ip_addr' => 'Ascend-Owner-IP-Addr',
- 'ascend_port_redir_portnu' => 'Ascend-Port-Redir-Portnum',
- 'ascend_port_redir_protoc' => 'Ascend-Port-Redir-Protocol',
- 'ascend_port_redir_server' => 'Ascend-Port-Redir-Server',
- 'ascend_ppp_address' => 'Ascend-PPP-Address',
- 'ascend_ppp_async_map' => 'Ascend-PPP-Async-Map',
- 'ascend_ppp_vj_1172' => 'Ascend-PPP-VJ-1172',
- 'ascend_ppp_vj_slot_comp' => 'Ascend-PPP-VJ-Slot-Comp',
- 'ascend_pppoe_enable' => 'Ascend-PPPoE-Enable',
- 'ascend_pre_input_octets' => 'Ascend-Pre-Input-Octets',
- 'ascend_pre_input_packets' => 'Ascend-Pre-Input-Packets',
- 'ascend_pre_output_octets' => 'Ascend-Pre-Output-Octets',
- 'ascend_pre_output_packet' => 'Ascend-Pre-Output-Packets',
- 'ascend_preempt_limit' => 'Ascend-Preempt-Limit',
- 'ascend_presession_time' => 'Ascend-PreSession-Time',
- 'ascend_pri_number_type' => 'Ascend-PRI-Number-Type',
- 'ascend_primary_home_agen' => 'Ascend-Primary-Home-Agent',
- 'ascend_private_route' => 'Ascend-Private-Route',
- 'ascend_private_route_req' => 'Ascend-Private-Route-Required',
- 'ascend_private_route_tab' => 'Ascend-Private-Route-Table-ID',
- 'ascend_pw_lifetime' => 'Ascend-PW-Lifetime',
- 'ascend_pw_warntime' => 'Ascend-PW-Warntime',
- 'ascend_qos_downstream' => 'Ascend-QOS-Downstream',
- 'ascend_qos_upstream' => 'Ascend-QOS-Upstream',
- 'ascend_receive_secret' => 'Ascend-Receive-Secret',
- 'ascend_recv_name' => 'Ascend-Recv-Name',
- 'ascend_redirect_number' => 'Ascend-Redirect-Number',
- 'ascend_remote_addr' => 'Ascend-Remote-Addr',
- 'ascend_remote_fw' => 'Ascend-Remote-FW',
- 'ascend_remove_seconds' => 'Ascend-Remove-Seconds',
- 'ascend_require_auth' => 'Ascend-Require-Auth',
- 'ascend_route_appletalk' => 'Ascend-Route-Appletalk',
- 'ascend_route_ip' => 'Ascend-Route-IP',
- 'ascend_route_ipx' => 'Ascend-Route-IPX',
- 'ascend_secondary_home_ag' => 'Ascend-Secondary-Home-Agent',
- 'ascend_seconds_of_histor' => 'Ascend-Seconds-Of-History',
- 'ascend_send_auth' => 'Ascend-Send-Auth',
- 'ascend_send_passwd' => 'Ascend-Send-Passwd',
- 'ascend_send_secret' => 'Ascend-Send-Secret',
- 'ascend_service_type' => 'Ascend-Service-Type',
- 'ascend_session_svr_key' => 'Ascend-Session-Svr-Key',
- 'ascend_session_type' => 'Ascend-Session-Type',
- 'ascend_shared_profile_en' => 'Ascend-Shared-Profile-Enable',
- 'ascend_source_auth' => 'Ascend-Source-Auth',
- 'ascend_source_ip_check' => 'Ascend-Source-IP-Check',
- 'ascend_svc_enabled' => 'Ascend-SVC-Enabled',
- 'ascend_target_util' => 'Ascend-Target-Util',
- 'ascend_telnet_profile' => 'Ascend-Telnet-Profile',
- 'ascend_temporary_rtes' => 'Ascend-Temporary-Rtes',
- 'ascend_third_prompt' => 'Ascend-Third-Prompt',
- 'ascend_token_expiry' => 'Ascend-Token-Expiry',
- 'ascend_token_idle' => 'Ascend-Token-Idle',
- 'ascend_token_immediate' => 'Ascend-Token-Immediate',
- 'ascend_traffic_shaper' => 'Ascend-Traffic-Shaper',
- 'ascend_transit_number' => 'Ascend-Transit-Number',
- 'ascend_ts_idle_limit' => 'Ascend-TS-Idle-Limit',
- 'ascend_ts_idle_mode' => 'Ascend-TS-Idle-Mode',
- 'ascend_tunnel_vrouter_na' => 'Ascend-Tunnel-VRouter-Name',
- 'ascend_tunneling_protoco' => 'Ascend-Tunneling-Protocol',
- 'ascend_user_acct_base' => 'Ascend-User-Acct-Base',
- 'ascend_user_acct_host' => 'Ascend-User-Acct-Host',
- 'ascend_user_acct_key' => 'Ascend-User-Acct-Key',
- 'ascend_user_acct_port' => 'Ascend-User-Acct-Port',
- 'ascend_user_acct_time' => 'Ascend-User-Acct-Time',
- 'ascend_user_acct_type' => 'Ascend-User-Acct-Type',
- 'ascend_uu_info' => 'Ascend-UU-Info',
- 'ascend_vrouter_name' => 'Ascend-VRouter-Name',
- 'ascend_x25_cug' => 'Ascend-X25-Cug',
- 'ascend_x25_nui' => 'Ascend-X25-Nui',
- 'ascend_x25_nui_password_' => 'Ascend-X25-Nui-Password-Prompt',
- 'ascend_x25_nui_prompt' => 'Ascend-X25-Nui-Prompt',
- 'ascend_x25_pad_alias_1' => 'Ascend-X25-Pad-Alias-1',
- 'ascend_x25_pad_alias_2' => 'Ascend-X25-Pad-Alias-2',
- 'ascend_x25_pad_alias_3' => 'Ascend-X25-Pad-Alias-3',
- 'ascend_x25_pad_banner' => 'Ascend-X25-Pad-Banner',
- 'ascend_x25_pad_prompt' => 'Ascend-X25-Pad-Prompt',
- 'ascend_x25_pad_x3_parame' => 'Ascend-X25-Pad-X3-Parameters',
- 'ascend_x25_pad_x3_profil' => 'Ascend-X25-Pad-X3-Profile',
- 'ascend_x25_profile_name' => 'Ascend-X25-Profile-Name',
- 'ascend_x25_reverse_charg' => 'Ascend-X25-Reverse-Charging',
- 'ascend_x25_rpoa' => 'Ascend-X25-Rpoa',
- 'ascend_x25_x121_address' => 'Ascend-X25-X121-Address',
- 'ascend_xmit_rate' => 'Ascend-Xmit-Rate',
- 'assigned_ip_address' => 'Assigned_IP_Address',
- 'assigned_ip_addrest' => 'Assigned-IP-Address',
- 'auth_type' => 'Auth-Type',
- 'autz_type' => 'Autz-Type',
- 'bg_aging_time' => 'BG_Aging_Time',
- 'bg_aging_timf' => 'BG-Aging-Time',
- 'bg_path_cost' => 'BG_Path_Cost',
- 'bg_path_cosu' => 'BG-Path-Cost',
- 'bg_span_dis' => 'BG_Span_Dis',
- 'bg_span_dit' => 'BG-Span-Dis',
- 'bg_trans_bpdu' => 'BG_Trans_BPDU',
- 'bg_trans_bpdv' => 'BG-Trans-BPDU',
- 'bind_auth_context' => 'Bind_Auth_Context',
- 'bind_auth_contexu' => 'Bind-Auth-Context',
- 'bind_auth_max_sessions' => 'Bind_Auth_Max_Sessions',
- 'bind_auth_max_sessiont' => 'Bind-Auth-Max-Sessions',
- 'bind_auth_protocol' => 'Bind_Auth_Protocol',
- 'bind_auth_protocom' => 'Bind-Auth-Protocol',
- 'bind_auth_service_grp' => 'Bind_Auth_Service_Grp',
- 'bind_auth_service_grq' => 'Bind-Auth-Service-Grp',
- 'bind_bypass_bypass' => 'Bind_Bypass_Bypass',
- 'bind_bypass_bypast' => 'Bind-Bypass-Bypass',
- 'bind_bypass_context' => 'Bind_Bypass_Context',
- 'bind_bypass_contexu' => 'Bind-Bypass-Context',
- 'bind_dot1q_port' => 'Bind_Dot1q_Port',
- 'bind_dot1q_poru' => 'Bind-Dot1q-Port',
- 'bind_dot1q_slot' => 'Bind_Dot1q_Slot',
- 'bind_dot1q_slou' => 'Bind-Dot1q-Slot',
- 'bind_dot1q_vlan_tag_id' => 'Bind_Dot1q_Vlan_Tag_Id',
- 'bind_dot1q_vlan_tag_ie' => 'Bind-Dot1q-Vlan-Tag-Id',
- 'bind_int_context' => 'Bind_Int_Context',
- 'bind_int_contexu' => 'Bind-Int-Context',
- 'bind_int_interface_name' => 'Bind_Int_Interface_Name',
- 'bind_int_interface_namf' => 'Bind-Int-Interface-Name',
- 'bind_l2tp_flow_control' => 'Bind_L2TP_Flow_Control',
- 'bind_l2tp_flow_controm' => 'Bind-L2TP-Flow-Control',
- 'bind_l2tp_tunnel_name' => 'Bind_L2TP_Tunnel_Name',
- 'bind_l2tp_tunnel_namf' => 'Bind-L2TP-Tunnel-Name',
- 'bind_ses_context' => 'Bind_Ses_Context',
- 'bind_ses_contexu' => 'Bind-Ses-Context',
- 'bind_sub_password' => 'Bind_Sub_Password',
- 'bind_sub_passwore' => 'Bind-Sub-Password',
- 'bind_sub_user_at_context' => 'Bind_Sub_User_At_Context',
- 'bind_sub_user_at_contexu' => 'Bind-Sub-User-At-Context',
- 'bind_tun_context' => 'Bind_Tun_Context',
- 'bind_tun_contexu' => 'Bind-Tun-Context',
- 'bind_type' => 'Bind_Type',
- 'bind_typf' => 'Bind-Type',
- 'bintec_bibodialtable' => 'BinTec-biboDialTable',
- 'bintec_biboppptable' => 'BinTec-biboPPPTable',
- 'bintec_ipextiftable' => 'BinTec-ipExtIfTable',
- 'bintec_ipextrttable' => 'BinTec-ipExtRtTable',
- 'bintec_ipfiltertable' => 'BinTec-ipFilterTable',
- 'bintec_ipnatpresettable' => 'BinTec-ipNatPresetTable',
- 'bintec_ipqostable' => 'BinTec-ipQoSTable',
- 'bintec_iproutetable' => 'BinTec-ipRouteTable',
- 'bintec_ipxcirctable' => 'BinTec-ipxCircTable',
- 'bintec_ipxstaticroutetab' => 'BinTec-ipxStaticRouteTable',
- 'bintec_ipxstaticservtabl' => 'BinTec-ipxStaticServTable',
- 'bintec_ospfiftable' => 'BinTec-ospfIfTable',
- 'bintec_pppextiftable' => 'BinTec-pppExtIfTable',
- 'bintec_qosiftable' => 'BinTec-qosIfTable',
- 'bintec_qospolicytable' => 'BinTec-qosPolicyTable',
- 'bintec_ripcirctable' => 'BinTec-ripCircTable',
- 'bintec_sapcirctable' => 'BinTec-sapCircTable',
- 'bridge_group' => 'Bridge_Group',
- 'bridge_grouq' => 'Bridge-Group',
- 'cabletron_protocol_calla' => 'Cabletron-Protocol-Callable',
- 'cabletron_protocol_enabl' => 'Cabletron-Protocol-Enable',
- 'call_id' => 'call-id',
- 'callback_id' => 'Callback-Id',
- 'callback_number' => 'Callback-Number',
- 'called_station_id' => 'Called-Station-Id',
- 'caller_id' => 'Caller-ID',
- 'calling_station_id' => 'Calling-Station-Id',
- 'cbbsm_bandwidth' => 'CBBSM-Bandwidth',
- 'challenge_state' => 'Challenge-State',
- 'chap_challenge' => 'CHAP-Challenge',
- 'chap_password' => 'CHAP-Password',
- 'char_noecho' => 'Char-Noecho',
- 'cisco_abort_cause' => 'Cisco-Abort-Cause',
- 'cisco_account_info' => 'Cisco-Account-Info',
- 'cisco_assign_ip_pool' => 'Cisco-Assign-IP-Pool',
- 'cisco_avpair' => 'Cisco-AVPair',
- 'cisco_call_filter' => 'Cisco-Call-Filter',
- 'cisco_call_type' => 'Cisco-Call-Type',
- 'cisco_command_code' => 'Cisco-Command-Code',
- 'cisco_control_info' => 'Cisco-Control-Info',
- 'cisco_data_filter' => 'Cisco-Data-Filter',
- 'cisco_data_rate' => 'Cisco-Data-Rate',
- 'cisco_disconnect_cause' => 'Cisco-Disconnect-Cause',
- 'cisco_email_server_ack_f' => 'Cisco-Email-Server-Ack-Flag',
- 'cisco_email_server_addre' => 'Cisco-Email-Server-Address',
- 'cisco_fax_account_id_ori' => 'Cisco-Fax-Account-Id-Origin',
- 'cisco_fax_auth_status' => 'Cisco-Fax-Auth-Status',
- 'cisco_fax_connect_speed' => 'Cisco-Fax-Connect-Speed',
- 'cisco_fax_coverpage_flag' => 'Cisco-Fax-Coverpage-Flag',
- 'cisco_fax_dsn_address' => 'Cisco-Fax-Dsn-Address',
- 'cisco_fax_dsn_flag' => 'Cisco-Fax-Dsn-Flag',
- 'cisco_fax_mdn_address' => 'Cisco-Fax-Mdn-Address',
- 'cisco_fax_mdn_flag' => 'Cisco-Fax-Mdn-Flag',
- 'cisco_fax_modem_time' => 'Cisco-Fax-Modem-Time',
- 'cisco_fax_msg_id' => 'Cisco-Fax-Msg-Id',
- 'cisco_fax_pages' => 'Cisco-Fax-Pages',
- 'cisco_fax_process_abort_' => 'Cisco-Fax-Process-Abort-Flag',
- 'cisco_fax_recipient_coun' => 'Cisco-Fax-Recipient-Count',
- 'cisco_gateway_id' => 'Cisco-Gateway-Id',
- 'cisco_idle_limit' => 'Cisco-Idle-Limit',
- 'cisco_ip_direct' => 'Cisco-IP-Direct',
- 'cisco_ip_pool_definition' => 'Cisco-IP-Pool-Definition',
- 'cisco_link_compression' => 'Cisco-Link-Compression',
- 'cisco_maximum_channels' => 'Cisco-Maximum-Channels',
- 'cisco_maximum_time' => 'Cisco-Maximum-Time',
- 'cisco_multilink_id' => 'Cisco-Multilink-ID',
- 'cisco_nas_port' => 'Cisco-NAS-Port',
- 'cisco_num_in_multilink' => 'Cisco-Num-In-Multilink',
- 'cisco_port_used' => 'Cisco-Port-Used',
- 'cisco_ppp_async_map' => 'Cisco-PPP-Async-Map',
- 'cisco_ppp_vj_slot_comp' => 'Cisco-PPP-VJ-Slot-Comp',
- 'cisco_pre_input_octets' => 'Cisco-Pre-Input-Octets',
- 'cisco_pre_input_packets' => 'Cisco-Pre-Input-Packets',
- 'cisco_pre_output_octets' => 'Cisco-Pre-Output-Octets',
- 'cisco_pre_output_packets' => 'Cisco-Pre-Output-Packets',
- 'cisco_presession_time' => 'Cisco-PreSession-Time',
- 'cisco_pw_lifetime' => 'Cisco-PW-Lifetime',
- 'cisco_route_ip' => 'Cisco-Route-IP',
- 'cisco_service_info' => 'Cisco-Service-Info',
- 'cisco_target_util' => 'Cisco-Target-Util',
- 'cisco_xmit_rate' => 'Cisco-Xmit-Rate',
- 'class' => 'Class',
- 'client_dns_pri' => 'Client_DNS_Pri',
- 'client_dns_prj' => 'Client-DNS-Pri',
- 'client_dns_sec' => 'Client_DNS_Sec',
- 'client_dns_sed' => 'Client-DNS-Sec',
- 'client_id' => 'Client-Id',
- 'client_ip_address' => 'Client-IP-Address',
- 'client_port_dnis' => 'Client-Port-DNIS',
- 'client_port_id' => 'Client-Port-Id',
- 'colubris_avpair' => 'Colubris-AVPair',
- 'configuration_token' => 'Configuration-Token',
- 'connect_info' => 'Connect-Info',
- 'connect_rate' => 'Connect-Rate',
- 'context_name' => 'Context_Name',
- 'context_namf' => 'Context-Name',
- 'crypt_password' => 'Crypt-Password',
- 'current_time' => 'Current-Time',
- 'cvpn3000_access_hours' => 'CVPN3000-Access-Hours',
- 'cvpn3000_allow_network_e' => 'CVPN3000-Allow-Network-Extension-Mode',
- 'cvpn3000_auth_server_pas' => 'CVPN3000-Auth-Server-Password',
- 'cvpn3000_auth_server_pri' => 'CVPN3000-Auth-Server-Priority',
- 'cvpn3000_auth_server_typ' => 'CVPN3000-Auth-Server-Type',
- 'cvpn3000_authd_user_idle' => 'CVPN3000-Authd-User-Idle-Timeout',
- 'cvpn3000_cisco_ip_phone_' => 'CVPN3000-Cisco-IP-Phone-Bypass',
- 'cvpn3000_dhcp_network_sc' => 'CVPN3000-DHCP-Network-Scope',
- 'cvpn3000_ike_keep_alives' => 'CVPN3000-IKE-Keep-Alives',
- 'cvpn3000_ipsec_allow_pas' => 'CVPN3000-IPSec-Allow-Passwd-Store',
- 'cvpn3000_ipsec_auth_on_r' => 'CVPN3000-IPSec-Auth-On-Rekey',
- 'cvpn3000_ipsec_authentic' => 'CVPN3000-IPSec-Authentication',
- 'cvpn3000_ipsec_authoriza' => 'CVPN3000-IPSec-Authorization-Type',
- 'cvpn3000_ipsec_authorizb' => 'CVPN3000-IPSec-Authorization-Required',
- 'cvpn3000_ipsec_backup_se' => 'CVPN3000-IPSec-Backup-Servers',
- 'cvpn3000_ipsec_backup_sf' => 'CVPN3000-IPSec-Backup-Server-List',
- 'cvpn3000_ipsec_banner1' => 'CVPN3000-IPSec-Banner1',
- 'cvpn3000_ipsec_banner2' => 'CVPN3000-IPSec-Banner2',
- 'cvpn3000_ipsec_client_fw' => 'CVPN3000-IPSec-Client-Fw-Filter-Name',
- 'cvpn3000_ipsec_client_fx' => 'CVPN3000-IPSec-Client-Fw-Filter-Opt',
- 'cvpn3000_ipsec_confidenc' => 'CVPN3000-IPSec-Confidence-Level',
- 'cvpn3000_ipsec_default_d' => 'CVPN3000-IPSec-Default-Domain',
- 'cvpn3000_ipsec_dn_field' => 'CVPN3000-IPSec-DN-Field',
- 'cvpn3000_ipsec_group_nam' => 'CVPN3000-IPSec-Group-Name',
- 'cvpn3000_ipsec_ike_peer_' => 'CVPN3000-IPSec-IKE-Peer-ID-Check',
- 'cvpn3000_ipsec_ip_compre' => 'CVPN3000-IPSec-IP-Compression',
- 'cvpn3000_ipsec_ltl_keepa' => 'CVPN3000-IPSec-LTL-Keepalives',
- 'cvpn3000_ipsec_mode_conf' => 'CVPN3000-IPSec-Mode-Config',
- 'cvpn3000_ipsec_over_udp' => 'CVPN3000-IPSec-Over-UDP',
- 'cvpn3000_ipsec_over_udp_' => 'CVPN3000-IPSec-Over-UDP-Port',
- 'cvpn3000_ipsec_reqrd_cli' => 'CVPN3000-IPSec-Reqrd-Client-Fw-Cap',
- 'cvpn3000_ipsec_sec_assoc' => 'CVPN3000-IPSec-Sec-Association',
- 'cvpn3000_ipsec_split_dns' => 'CVPN3000-IPSec-Split-DNS-Names',
- 'cvpn3000_ipsec_split_tun' => 'CVPN3000-IPSec-Split-Tunnel-List',
- 'cvpn3000_ipsec_split_tuo' => 'CVPN3000-IPSec-Split-Tunneling-Policy',
- 'cvpn3000_ipsec_tunnel_ty' => 'CVPN3000-IPSec-Tunnel-Type',
- 'cvpn3000_ipsec_user_grou' => 'CVPN3000-IPSec-User-Group-Lock',
- 'cvpn3000_l2tp_encryption' => 'CVPN3000-L2TP-Encryption',
- 'cvpn3000_l2tp_min_auth_p' => 'CVPN3000-L2TP-Min-Auth-Protocol',
- 'cvpn3000_l2tp_mppc_compr' => 'CVPN3000-L2TP-MPPC-Compression',
- 'cvpn3000_leap_bypass' => 'CVPN3000-LEAP-Bypass',
- 'cvpn3000_ms_client_icpt_' => 'CVPN3000-MS-Client-Icpt-DHCP-Conf-Msg',
- 'cvpn3000_ms_client_subne' => 'CVPN3000-MS-Client-Subnet-Mask',
- 'cvpn3000_partition_max_s' => 'CVPN3000-Partition-Max-Sessions',
- 'cvpn3000_partition_mobil' => 'CVPN3000-Partition-Mobile-IP-Key',
- 'cvpn3000_partition_mobim' => 'CVPN3000-Partition-Mobile-IP-Address',
- 'cvpn3000_partition_mobin' => 'CVPN3000-Partition-Mobile-IP-SPI',
- 'cvpn3000_partition_premi' => 'CVPN3000-Partition-Premise-Router',
- 'cvpn3000_partition_prima' => 'CVPN3000-Partition-Primary-DHCP',
- 'cvpn3000_partition_secon' => 'CVPN3000-Partition-Secondary-DHCP',
- 'cvpn3000_pptp_encryption' => 'CVPN3000-PPTP-Encryption',
- 'cvpn3000_pptp_min_auth_p' => 'CVPN3000-PPTP-Min-Auth-Protocol',
- 'cvpn3000_pptp_mppc_compr' => 'CVPN3000-PPTP-MPPC-Compression',
- 'cvpn3000_primary_dns' => 'CVPN3000-Primary-DNS',
- 'cvpn3000_primary_wins' => 'CVPN3000-Primary-WINS',
- 'cvpn3000_priority_on_sep' => 'CVPN3000-Priority-On-SEP',
- 'cvpn3000_reqrd_client_fw' => 'CVPN3000-Reqrd-Client-Fw-Vendor-Code',
- 'cvpn3000_reqrd_client_fx' => 'CVPN3000-Reqrd-Client-Fw-Product-Code',
- 'cvpn3000_reqrd_client_fy' => 'CVPN3000-Reqrd-Client-Fw-Description',
- 'cvpn3000_request_auth_ve' => 'CVPN3000-Request-Auth-Vector',
- 'cvpn3000_require_hw_clie' => 'CVPN3000-Require-HW-Client-Auth',
- 'cvpn3000_require_individ' => 'CVPN3000-Require-Individual-User-Auth',
- 'cvpn3000_secondary_dns' => 'CVPN3000-Secondary-DNS',
- 'cvpn3000_secondary_wins' => 'CVPN3000-Secondary-WINS',
- 'cvpn3000_sep_card_assign' => 'CVPN3000-SEP-Card-Assignment',
- 'cvpn3000_simultaneous_lo' => 'CVPN3000-Simultaneous-Logins',
- 'cvpn3000_strip_realm' => 'CVPN3000-Strip-Realm',
- 'cvpn3000_tunneling_proto' => 'CVPN3000-Tunneling-Protocols',
- 'cvpn3000_use_client_addr' => 'CVPN3000-Use-Client-Address',
- 'cvpn3000_user_auth_serve' => 'CVPN3000-User-Auth-Server-Name',
- 'cvpn3000_user_auth_servf' => 'CVPN3000-User-Auth-Server-Port',
- 'cvpn3000_user_auth_servg' => 'CVPN3000-User-Auth-Server-Secret',
- 'cvpn5000_client_assigned' => 'CVPN5000-Client-Assigned-IP',
- 'cvpn5000_client_assignee' => 'CVPN5000-Client-Assigned-IPX',
- 'cvpn5000_client_real_ip' => 'CVPN5000-Client-Real-IP',
- 'cvpn5000_echo' => 'CVPN5000-Echo',
- 'cvpn5000_tunnel_throughp' => 'CVPN5000-Tunnel-Throughput',
- 'cvpn5000_vpn_groupinfo' => 'CVPN5000-VPN-GroupInfo',
- 'cvpn5000_vpn_password' => 'CVPN5000-VPN-Password',
- 'cvx_assign_ip_pool' => 'CVX-Assign-IP-Pool',
- 'cvx_client_assign_dns' => 'CVX-Client-Assign-DNS',
- 'cvx_data_filter' => 'CVX-Data-Filter',
- 'cvx_data_rate' => 'CVX-Data-Rate',
- 'cvx_disconnect_cause' => 'CVX-Disconnect-Cause',
- 'cvx_identification' => 'CVX-Identification',
- 'cvx_idle_limit' => 'CVX-Idle-Limit',
- 'cvx_ipsvc_aznlvl' => 'CVX-IPSVC-AZNLVL',
- 'cvx_ipsvc_mask' => 'CVX-IPSVC-Mask',
- 'cvx_maximum_channels' => 'CVX-Maximum-Channels',
- 'cvx_modem_begin_modulati' => 'CVX-Modem-Begin-Modulation',
- 'cvx_modem_begin_recv_lin' => 'CVX-Modem-Begin-Recv-Line-Lvl',
- 'cvx_modem_data_compressi' => 'CVX-Modem-Data-Compression',
- 'cvx_modem_end_modulation' => 'CVX-Modem-End-Modulation',
- 'cvx_modem_end_recv_line_' => 'CVX-Modem-End-Recv-Line-Lvl',
- 'cvx_modem_error_correcti' => 'CVX-Modem-Error-Correction',
- 'cvx_modem_local_rate_neg' => 'CVX-Modem-Local-Rate-Negs',
- 'cvx_modem_local_retrains' => 'CVX-Modem-Local-Retrains',
- 'cvx_modem_remote_rate_ne' => 'CVX-Modem-Remote-Rate-Negs',
- 'cvx_modem_remote_retrain' => 'CVX-Modem-Remote-Retrains',
- 'cvx_modem_retx_packets' => 'CVX-Modem-ReTx-Packets',
- 'cvx_modem_snr' => 'CVX-Modem-SNR',
- 'cvx_modem_tx_packets' => 'CVX-Modem-Tx-Packets',
- 'cvx_multicast_client' => 'CVX-Multicast-Client',
- 'cvx_multicast_rate_limit' => 'CVX-Multicast-Rate-Limit',
- 'cvx_multilink_group_numb' => 'CVX-Multilink-Group-Number',
- 'cvx_multilink_match_info' => 'CVX-Multilink-Match-Info',
- 'cvx_ppp_address' => 'CVX-PPP-Address',
- 'cvx_ppp_log_mask' => 'CVX-PPP-Log-Mask',
- 'cvx_presession_time' => 'CVX-PreSession-Time',
- 'cvx_primary_dns' => 'CVX-Primary-DNS',
- 'cvx_radius_redirect' => 'CVX-Radius-Redirect',
- 'cvx_secondary_dns' => 'CVX-Secondary-DNS',
- 'cvx_ss7_session_id_type' => 'CVX-SS7-Session-ID-Type',
- 'cvx_vpop_id' => 'CVX-VPOP-ID',
- 'cvx_xmit_rate' => 'CVX-Xmit-Rate',
- 'dhcp_max_leases' => 'DHCP_Max_Leases',
- 'dhcp_max_leaset' => 'DHCP-Max-Leases',
- 'dialback_name' => 'Dialback-Name',
- 'dialback_no' => 'Dialback-No',
- 'digest_algorithm' => 'Digest-Algorithm',
- 'digest_attributes' => 'Digest-Attributes',
- 'digest_body_digest' => 'Digest-Body-Digest',
- 'digest_cnonce' => 'Digest-CNonce',
- 'digest_method' => 'Digest-Method',
- 'digest_nonce' => 'Digest-Nonce',
- 'digest_nonce_count' => 'Digest-Nonce-Count',
- 'digest_qop' => 'Digest-QOP',
- 'digest_realm' => 'Digest-Realm',
- 'digest_response' => 'Digest-Response',
- 'digest_uri' => 'Digest-URI',
- 'digest_user_name' => 'Digest-User-Name',
- 'eap_code' => 'EAP-Code',
- 'eap_id' => 'EAP-Id',
- 'eap_md5_password' => 'EAP-MD5-Password',
- 'eap_message' => 'EAP-Message',
- 'eap_sim_any_id_req' => 'EAP-Sim-ANY_ID_REQ',
- 'eap_sim_checkcode' => 'EAP-Sim-CHECKCODE',
- 'eap_sim_counter' => 'EAP-Sim-COUNTER',
- 'eap_sim_counter_too_smal' => 'EAP-Sim-COUNTER_TOO_SMALL',
- 'eap_sim_encr_data' => 'EAP-Sim-ENCR_DATA',
- 'eap_sim_extra' => 'EAP-Sim-EXTRA',
- 'eap_sim_fullauth_id_req' => 'EAP-Sim-FULLAUTH_ID_REQ',
- 'eap_sim_hmac' => 'EAP-Sim-HMAC',
- 'eap_sim_identity' => 'EAP-Sim-IDENTITY',
- 'eap_sim_imsi' => 'EAP-Sim-IMSI',
- 'eap_sim_iv' => 'EAP-Sim-IV',
- 'eap_sim_kc1' => 'EAP-Sim-KC1',
- 'eap_sim_kc2' => 'EAP-Sim-KC2',
- 'eap_sim_kc3' => 'EAP-Sim-KC3',
- 'eap_sim_key' => 'EAP-Sim-KEY',
- 'eap_sim_mac' => 'EAP-Sim-MAC',
- 'eap_sim_next_pseudonum' => 'EAP-Sim-NEXT_PSEUDONUM',
- 'eap_sim_next_reauth_id' => 'EAP-Sim-NEXT_REAUTH_ID',
- 'eap_sim_nonce_mt' => 'EAP-Sim-NONCE_MT',
- 'eap_sim_nonce_s' => 'EAP-Sim-NONCE_S',
- 'eap_sim_notification' => 'EAP-Sim-NOTIFICATION',
- 'eap_sim_padding' => 'EAP-Sim-PADDING',
- 'eap_sim_permanent_id_req' => 'EAP-Sim-PERMANENT_ID_REQ',
- 'eap_sim_rand' => 'EAP-Sim-RAND',
- 'eap_sim_rand1' => 'EAP-Sim-Rand1',
- 'eap_sim_rand2' => 'EAP-Sim-Rand2',
- 'eap_sim_rand3' => 'EAP-Sim-Rand3',
- 'eap_sim_selected_version' => 'EAP-Sim-SELECTED_VERSION',
- 'eap_sim_sres1' => 'EAP-Sim-SRES1',
- 'eap_sim_sres2' => 'EAP-Sim-SRES2',
- 'eap_sim_sres3' => 'EAP-Sim-SRES3',
- 'eap_sim_state' => 'EAP-Sim-State',
- 'eap_sim_subtype' => 'EAP-Sim-Subtype',
- 'eap_sim_version_list' => 'EAP-Sim-VERSION_LIST',
- 'eap_tls_require_client_c' => 'EAP-TLS-Require-Client-Cert',
- 'eap_type' => 'EAP-Type',
- 'eap_type_gtc' => 'EAP-Type-GTC',
- 'eap_type_identity' => 'EAP-Type-Identity',
- 'eap_type_leap' => 'EAP-Type-LEAP',
- 'eap_type_md5' => 'EAP-Type-MD5',
- 'eap_type_nak' => 'EAP-Type-NAK',
- 'eap_type_notification' => 'EAP-Type-Notification',
- 'eap_type_otp' => 'EAP-Type-OTP',
- 'eap_type_peap' => 'EAP-Type-PEAP',
- 'eap_type_sim' => 'EAP-Type-SIM',
- 'eap_type_sim2' => 'EAP-Type-SIM2',
- 'eap_type_tls' => 'EAP-Type-TLS',
- 'eap_type_ttls' => 'EAP-Type-TTLS',
- 'error_cause' => 'Error-Cause',
- 'erx_address_pool_name' => 'ERX-Address-Pool-Name',
- 'erx_alternate_cli_access' => 'ERX-Alternate-Cli-Access-Level',
- 'erx_alternate_cli_vroute' => 'ERX-Alternate-Cli-Vrouter-Name',
- 'erx_atm_mbs' => 'ERX-Atm-MBS',
- 'erx_atm_pcr' => 'ERX-Atm-PCR',
- 'erx_atm_scr' => 'ERX-Atm-SCR',
- 'erx_atm_service_category' => 'ERX-Atm-Service-Category',
- 'erx_bearer_type' => 'ERX-Bearer-Type',
- 'erx_cli_allow_all_vr_acc' => 'ERX-Cli-Allow-All-VR-Access',
- 'erx_cli_initial_access_l' => 'ERX-Cli-Initial-Access-Level',
- 'erx_dial_out_number' => 'ERX-Dial-Out-Number',
- 'erx_egress_policy_name' => 'ERX-Egress-Policy-Name',
- 'erx_egress_statistics' => 'ERX-Egress-Statistics',
- 'erx_framed_ip_route_tag' => 'ERX-Framed-Ip-Route-Tag',
- 'erx_igmp_enable' => 'ERX-Igmp-Enable',
- 'erx_ingress_policy_name' => 'ERX-Ingress-Policy-Name',
- 'erx_ingress_statistics' => 'ERX-Ingress-Statistics',
- 'erx_input_gigapkts' => 'ERX-Input-Gigapkts',
- 'erx_ipv6_local_interface' => 'ERX-IpV6-Local-Interface',
- 'erx_ipv6_primary_dns' => 'ERX-Ipv6-Primary-Dns',
- 'erx_ipv6_secondary_dns' => 'ERX-Ipv6-Secondary-Dns',
- 'erx_ipv6_virtual_router' => 'ERX-IpV6-Virtual-Router',
- 'erx_local_loopback_inter' => 'ERX-Local-Loopback-Interface',
- 'erx_maximum_bps' => 'ERX-Maximum-BPS',
- 'erx_minimum_bps' => 'ERX-Minimum-BPS',
- 'erx_output_gigapkts' => 'ERX-Output-Gigapkts',
- 'erx_ppp_auth_protocol' => 'ERX-PPP-Auth-Protocol',
- 'erx_ppp_password' => 'ERX-PPP-Password',
- 'erx_ppp_username' => 'ERX-PPP-Username',
- 'erx_pppoe_description' => 'ERX-Pppoe-Description',
- 'erx_pppoe_max_sessions' => 'ERX-Pppoe-Max-Sessions',
- 'erx_pppoe_url' => 'ERX-Pppoe-Url',
- 'erx_primary_dns' => 'ERX-Primary-Dns',
- 'erx_primary_wins' => 'ERX-Primary-Wins',
- 'erx_qos_profile_interfac' => 'ERX-Qos-Profile-Interface-Type',
- 'erx_qos_profile_name' => 'ERX-Qos-Profile-Name',
- 'erx_redirect_vr_name' => 'ERX-Redirect-VR-Name',
- 'erx_sa_validate' => 'ERX-Sa-Validate',
- 'erx_secondary_dns' => 'ERX-Secondary-Dns',
- 'erx_secondary_wins' => 'ERX-Secondary-Wins',
- 'erx_service_bundle' => 'ERX-Service-Bundle',
- 'erx_tunnel_interface_id' => 'ERX-Tunnel-Interface-Id',
- 'erx_tunnel_maximum_sessi' => 'ERX-Tunnel-Maximum-Sessions',
- 'erx_tunnel_nas_port_meth' => 'ERX-Tunnel-Nas-Port-Method',
- 'erx_tunnel_password' => 'ERX-Tunnel-Password',
- 'erx_tunnel_tos' => 'ERX-Tunnel-Tos',
- 'erx_tunnel_virtual_route' => 'ERX-Tunnel-Virtual-Router',
- 'erx_virtual_router_name' => 'ERX-Virtual-Router-Name',
- 'event_timestamp' => 'Event-Timestamp',
- 'exec_program' => 'Exec-Program',
- 'exec_program_wait' => 'Exec-Program-Wait',
- 'expiration' => 'Expiration',
- 'extreme_netlogin_only' => 'Extreme-Netlogin-Only',
- 'extreme_netlogin_url' => 'Extreme-Netlogin-Url',
- 'extreme_netlogin_url_des' => 'Extreme-Netlogin-Url-Desc',
- 'extreme_netlogin_vlan' => 'Extreme-Netlogin-Vlan',
- 'fall_through' => 'Fall-Through',
- 'filter_id' => 'Filter-Id',
- 'foundry_command_exceptio' => 'Foundry-Command-Exception-Flag',
- 'foundry_command_string' => 'Foundry-Command-String',
- 'foundry_inm_privilege' => 'Foundry-INM-Privilege',
- 'foundry_privilege_level' => 'Foundry-Privilege-Level',
- 'framed_address' => 'Framed-Address',
- 'framed_appletalk_link' => 'Framed-AppleTalk-Link',
- 'framed_appletalk_network' => 'Framed-AppleTalk-Network',
- 'framed_appletalk_zone' => 'Framed-AppleTalk-Zone',
- 'framed_callback_id' => 'Framed-Callback-Id',
- 'framed_compression' => 'Framed-Compression',
- 'framed_filter_id' => 'Framed-Filter-Id',
- 'framed_interface_id' => 'Framed-Interface-Id',
- 'framed_ip_address' => 'Framed-IP-Address',
- 'framed_ip_netmask' => 'Framed-IP-Netmask',
- 'framed_ipv6_pool' => 'Framed-IPv6-Pool',
- 'framed_ipv6_prefix' => 'Framed-IPv6-Prefix',
- 'framed_ipv6_route' => 'Framed-IPv6-Route',
- 'framed_ipx_network' => 'Framed-IPX-Network',
- 'framed_mtu' => 'Framed-MTU',
- 'framed_netmask' => 'Framed-Netmask',
- 'framed_pool' => 'Framed-Pool',
- 'framed_protocol' => 'Framed-Protocol',
- 'framed_route' => 'Framed-Route',
- 'framed_routing' => 'Framed-Routing',
- 'freeradius_proxied_to' => 'FreeRADIUS-Proxied-To',
- 'gandalf_around_the_corne' => 'Gandalf-Around-The-Corner',
- 'gandalf_authentication_s' => 'Gandalf-Authentication-String',
- 'gandalf_calling_line_id_' => 'Gandalf-Calling-Line-ID-1',
- 'gandalf_calling_line_ida' => 'Gandalf-Calling-Line-ID-2',
- 'gandalf_channel_group_na' => 'Gandalf-Channel-Group-Name-1',
- 'gandalf_channel_group_nb' => 'Gandalf-Channel-Group-Name-2',
- 'gandalf_compression_stat' => 'Gandalf-Compression-Status',
- 'gandalf_dial_prefix_name' => 'Gandalf-Dial-Prefix-Name-1',
- 'gandalf_dial_prefix_namf' => 'Gandalf-Dial-Prefix-Name-2',
- 'gandalf_fwd_broadcast_in' => 'Gandalf-Fwd-Broadcast-In',
- 'gandalf_fwd_broadcast_ou' => 'Gandalf-Fwd-Broadcast-Out',
- 'gandalf_fwd_multicast_in' => 'Gandalf-Fwd-Multicast-In',
- 'gandalf_fwd_multicast_ou' => 'Gandalf-Fwd-Multicast-Out',
- 'gandalf_fwd_unicast_in' => 'Gandalf-Fwd-Unicast-In',
- 'gandalf_fwd_unicast_out' => 'Gandalf-Fwd-Unicast-Out',
- 'gandalf_hunt_group' => 'Gandalf-Hunt-Group',
- 'gandalf_ipx_spoofing_sta' => 'Gandalf-IPX-Spoofing-State',
- 'gandalf_ipx_watchdog_spo' => 'Gandalf-IPX-Watchdog-Spoof',
- 'gandalf_min_outgoing_bea' => 'Gandalf-Min-Outgoing-Bearer',
- 'gandalf_modem_mode' => 'Gandalf-Modem-Mode',
- 'gandalf_modem_required_1' => 'Gandalf-Modem-Required-1',
- 'gandalf_modem_required_2' => 'Gandalf-Modem-Required-2',
- 'gandalf_operational_mode' => 'Gandalf-Operational-Modes',
- 'gandalf_phone_number_1' => 'Gandalf-Phone-Number-1',
- 'gandalf_phone_number_2' => 'Gandalf-Phone-Number-2',
- 'gandalf_ppp_authenticati' => 'Gandalf-PPP-Authentication',
- 'gandalf_ppp_ncp_type' => 'Gandalf-PPP-NCP-Type',
- 'gandalf_remote_lan_name' => 'Gandalf-Remote-LAN-Name',
- 'gandalf_sap_group_name_1' => 'Gandalf-SAP-Group-Name-1',
- 'gandalf_sap_group_name_2' => 'Gandalf-SAP-Group-Name-2',
- 'gandalf_sap_group_name_3' => 'Gandalf-SAP-Group-Name-3',
- 'gandalf_sap_group_name_4' => 'Gandalf-SAP-Group-Name-4',
- 'gandalf_sap_group_name_5' => 'Gandalf-SAP-Group-Name-5',
- 'garderos_location_name' => 'Garderos-Location-Name',
- 'garderos_service_name' => 'Garderos-Service-Name',
- 'group' => 'Group',
- 'group_name' => 'Group-Name',
- 'gw_final_xlated_cdn' => 'gw-final-xlated-cdn',
- 'gw_rxd_cdn' => 'gw-rxd-cdn',
- 'h323_billing_model' => 'h323-billing-model',
- 'h323_call_origin' => 'h323-call-origin',
- 'h323_call_type' => 'h323-call-type',
- 'h323_conf_id' => 'h323-conf-id',
- 'h323_connect_time' => 'h323-connect-time',
- 'h323_credit_amount' => 'h323-credit-amount',
- 'h323_credit_time' => 'h323-credit-time',
- 'h323_currency' => 'h323-currency',
- 'h323_disconnect_cause' => 'h323-disconnect-cause',
- 'h323_disconnect_time' => 'h323-disconnect-time',
- 'h323_gw_id' => 'h323-gw-id',
- 'h323_incoming_conf_id' => 'h323-incoming-conf-id',
- 'h323_preferred_lang' => 'h323-preferred-lang',
- 'h323_prompt_id' => 'h323-prompt-id',
- 'h323_redirect_ip_address' => 'h323-redirect-ip-address',
- 'h323_redirect_number' => 'h323-redirect-number',
- 'h323_remote_address' => 'h323-remote-address',
- 'h323_return_code' => 'h323-return-code',
- 'h323_setup_time' => 'h323-setup-time',
- 'h323_time_and_day' => 'h323-time-and-day',
- 'h323_voice_quality' => 'h323-voice-quality',
- 'hint' => 'Hint',
- 'huntgroup_name' => 'Huntgroup-Name',
- 'idle_timeout' => 'Idle-Timeout',
- 'incoming_req_uri' => 'incoming-req-uri',
- 'initial_modulation_type' => 'Initial-Modulation-Type',
- 'ip3_ip_option' => 'IP3-IP-Option',
- 'ip3_rdata_rate' => 'IP3-RData-Rate',
- 'ip3_xdata_rate' => 'IP3-XData-Rate',
- 'ip_address_pool_name' => 'Ip_Address_Pool_Name',
- 'ip_address_pool_namf' => 'Ip-Address-Pool-Name',
- 'ip_host_addr' => 'Ip_Host_Addr',
- 'ip_host_adds' => 'Ip-Host-Addr',
- 'ip_tos_field' => 'IP_TOS_Field',
- 'ip_tos_fiele' => 'IP-TOS-Field',
- 'itk_acct_serv_ip' => 'ITK-Acct-Serv-IP',
- 'itk_acct_serv_prot' => 'ITK-Acct-Serv-Prot',
- 'itk_auth_req_type' => 'ITK-Auth-Req-Type',
- 'itk_auth_serv_ip' => 'ITK-Auth-Serv-IP',
- 'itk_auth_serv_prot' => 'ITK-Auth-Serv-Prot',
- 'itk_banner' => 'ITK-Banner',
- 'itk_channel_binding' => 'ITK-Channel-Binding',
- 'itk_ddi' => 'ITK-DDI',
- 'itk_dest_no' => 'ITK-Dest-No',
- 'itk_dialout_type' => 'ITK-Dialout-Type',
- 'itk_filter_rule' => 'ITK-Filter-Rule',
- 'itk_ftp_auth_ip' => 'ITK-Ftp-Auth-IP',
- 'itk_ip_pool' => 'ITK-IP-Pool',
- 'itk_isdn_prot' => 'ITK-ISDN-Prot',
- 'itk_modem_init_string' => 'ITK-Modem-Init-String',
- 'itk_modem_pool_id' => 'ITK-Modem-Pool-Id',
- 'itk_nas_name' => 'ITK-NAS-Name',
- 'itk_password_prompt' => 'ITK-Password-Prompt',
- 'itk_ppp_auth_type' => 'ITK-PPP-Auth-Type',
- 'itk_ppp_client_server_mo' => 'ITK-PPP-Client-Server-Mode',
- 'itk_ppp_compression_prot' => 'ITK-PPP-Compression-Prot',
- 'itk_prompt' => 'ITK-Prompt',
- 'itk_provider_id' => 'ITK-Provider-Id',
- 'itk_start_delay' => 'ITK-Start-Delay',
- 'itk_tunnel_ip' => 'ITK-Tunnel-IP',
- 'itk_tunnel_prot' => 'ITK-Tunnel-Prot',
- 'itk_usergroup' => 'ITK-Usergroup',
- 'itk_username' => 'ITK-Username',
- 'itk_username_prompt' => 'ITK-Username-Prompt',
- 'itk_users_default_entry' => 'ITK-Users-Default-Entry',
- 'itk_users_default_pw' => 'ITK-Users-Default-Pw',
- 'itk_welcome_message' => 'ITK-Welcome-Message',
- 'juniper_allow_commands' => 'Juniper-Allow-Commands',
- 'juniper_allow_configurat' => 'Juniper-Allow-Configuration',
- 'juniper_deny_commands' => 'Juniper-Deny-Commands',
- 'juniper_deny_configurati' => 'Juniper-Deny-Configuration',
- 'juniper_local_user_name' => 'Juniper-Local-User-Name',
- 'karlnet_turbocell_name' => 'KarlNet-TurboCell-Name',
- 'karlnet_turbocell_opmode' => 'KarlNet-TurboCell-OpMode',
- 'karlnet_turbocell_opstat' => 'KarlNet-TurboCell-OpState',
- 'karlnet_turbocell_txrate' => 'KarlNet-TurboCell-TxRate',
- 'lac_port' => 'LAC_Port',
- 'lac_port_type' => 'LAC_Port_Type',
- 'lac_port_typf' => 'LAC-Port-Type',
- 'lac_poru' => 'LAC-Port',
- 'lac_real_port' => 'LAC_Real_Port',
- 'lac_real_port_type' => 'LAC_Real_Port_Type',
- 'lac_real_port_typf' => 'LAC-Real-Port-Type',
- 'lac_real_poru' => 'LAC-Real-Port',
- 'ldap_group' => 'Ldap-Group',
- 'ldap_userdn' => 'Ldap-UserDn',
- 'le_admin_group' => 'LE-Admin-Group',
- 'le_advice_of_charge' => 'LE-Advice-of-Charge',
- 'le_connect_detail' => 'LE-Connect-Detail',
- 'le_ip_gateway' => 'LE-IP-Gateway',
- 'le_ip_pool' => 'LE-IP-Pool',
- 'le_ipsec_active_profile' => 'LE-IPSec-Active-Profile',
- 'le_ipsec_deny_action' => 'LE-IPSec-Deny-Action',
- 'le_ipsec_log_options' => 'LE-IPSec-Log-Options',
- 'le_ipsec_outsource_profi' => 'LE-IPSec-Outsource-Profile',
- 'le_ipsec_passive_profile' => 'LE-IPSec-Passive-Profile',
- 'le_modem_info' => 'LE-Modem-Info',
- 'le_multicast_client' => 'LE-Multicast-Client',
- 'le_nat_inmap' => 'LE-NAT-Inmap',
- 'le_nat_log_options' => 'LE-NAT-Log-Options',
- 'le_nat_other_session_tim' => 'LE-NAT-Other-Session-Timeout',
- 'le_nat_outmap' => 'LE-NAT-Outmap',
- 'le_nat_outsource_inmap' => 'LE-NAT-Outsource-Inmap',
- 'le_nat_outsource_outmap' => 'LE-NAT-Outsource-Outmap',
- 'le_nat_sess_dir_fail_act' => 'LE-NAT-Sess-Dir-Fail-Action',
- 'le_nat_tcp_session_timeo' => 'LE-NAT-TCP-Session-Timeout',
- 'le_terminate_detail' => 'LE-Terminate-Detail',
- 'lm_password' => 'LM-Password',
- 'local_web_acct_duration' => 'Local-Web-Acct-Duration',
- 'local_web_acct_interim_r' => 'Local-Web-Acct-Interim-Rx-Bytes',
- 'local_web_acct_interim_s' => 'Local-Web-Acct-Interim-Rx-Gigawords',
- 'local_web_acct_interim_t' => 'Local-Web-Acct-Interim-Tx-Bytes',
- 'local_web_acct_interim_u' => 'Local-Web-Acct-Interim-Tx-Gigawords',
- 'local_web_acct_interim_v' => 'Local-Web-Acct-Interim-Tx-Mgmt',
- 'local_web_acct_interim_w' => 'Local-Web-Acct-Interim-Rx-Mgmt',
- 'local_web_acct_rx_mgmt' => 'Local-Web-Acct-Rx-Mgmt',
- 'local_web_acct_time' => 'Local-Web-Acct-Time',
- 'local_web_acct_tx_mgmt' => 'Local-Web-Acct-Tx-Mgmt',
- 'local_web_border_router' => 'Local-Web-Border-Router',
- 'local_web_client_ip' => 'Local-Web-Client-Ip',
- 'local_web_reauth_counter' => 'Local-Web-Reauth-Counter',
- 'local_web_rx_limit' => 'Local-Web-Rx-Limit',
- 'local_web_tx_limit' => 'Local-Web-Tx-Limit',
- 'login_callback_number' => 'Login-Callback-Number',
- 'login_host' => 'Login-Host',
- 'login_ip_host' => 'Login-IP-Host',
- 'login_ipv6_host' => 'Login-IPv6-Host',
- 'login_lat_group' => 'Login-LAT-Group',
- 'login_lat_node' => 'Login-LAT-Node',
- 'login_lat_port' => 'Login-LAT-Port',
- 'login_lat_service' => 'Login-LAT-Service',
- 'login_port' => 'Login-Port',
- 'login_service' => 'Login-Service',
- 'login_tcp_port' => 'Login-TCP-Port',
- 'login_time' => 'Login-Time',
- 'mcast_maxgroups' => 'Mcast_MaxGroups',
- 'mcast_maxgroupt' => 'Mcast-MaxGroups',
- 'mcast_receive' => 'Mcast_Receive',
- 'mcast_receivf' => 'Mcast-Receive',
- 'mcast_send' => 'Mcast_Send',
- 'mcast_sene' => 'Mcast-Send',
- 'medium_type' => 'Medium_Type',
- 'medium_typf' => 'Medium-Type',
- 'menu' => 'Menu',
- 'merit_proxy_action' => 'Merit-Proxy-Action',
- 'merit_user_id' => 'Merit-User-Id',
- 'merit_user_realm' => 'Merit-User-Realm',
- 'message_authenticator' => 'Message-Authenticator',
- 'method' => 'method',
- 'mikrotik_group' => 'Mikrotik-Group',
- 'mikrotik_recv_limit' => 'Mikrotik-Recv-Limit',
- 'mikrotik_xmit_limit' => 'Mikrotik-Xmit-Limit',
- 'module_failure_message' => 'Module-Failure-Message',
- 'module_success_message' => 'Module-Success-Message',
- 'motorola_canopy_cirenabl' => 'Motorola-Canopy-CIRENABLE',
- 'motorola_canopy_dlba' => 'Motorola-Canopy-DLBA',
- 'motorola_canopy_enable' => 'Motorola-Canopy-Enable',
- 'motorola_canopy_higherbw' => 'Motorola-Canopy-HIGHERBW',
- 'motorola_canopy_hpcenabl' => 'Motorola-Canopy-HPCENABLE',
- 'motorola_canopy_hpsdldr' => 'Motorola-Canopy-HPSDLDR',
- 'motorola_canopy_hpsuldr' => 'Motorola-Canopy-HPSULDR',
- 'motorola_canopy_lpsdldr' => 'Motorola-Canopy-LPSDLDR',
- 'motorola_canopy_lpsuldr' => 'Motorola-Canopy-LPSULDR',
- 'motorola_canopy_sdldr' => 'Motorola-Canopy-SDLDR',
- 'motorola_canopy_shared_s' => 'Motorola-Canopy-Shared-Secret',
- 'motorola_canopy_suldr' => 'Motorola-Canopy-SULDR',
- 'motorola_canopy_ulba' => 'Motorola-Canopy-ULBA',
- 'ms_acct_auth_type' => 'MS-Acct-Auth-Type',
- 'ms_acct_eap_type' => 'MS-Acct-EAP-Type',
- 'ms_arap_pw_change_reason' => 'MS-ARAP-PW-Change-Reason',
- 'ms_bap_usage' => 'MS-BAP-Usage',
- 'ms_chap2_cpw' => 'MS-CHAP2-CPW',
- 'ms_chap2_response' => 'MS-CHAP2-Response',
- 'ms_chap2_success' => 'MS-CHAP2-Success',
- 'ms_chap_challenge' => 'MS-CHAP-Challenge',
- 'ms_chap_cpw_1' => 'MS-CHAP-CPW-1',
- 'ms_chap_cpw_2' => 'MS-CHAP-CPW-2',
- 'ms_chap_domain' => 'MS-CHAP-Domain',
- 'ms_chap_error' => 'MS-CHAP-Error',
- 'ms_chap_lm_enc_pw' => 'MS-CHAP-LM-Enc-PW',
- 'ms_chap_mppe_keys' => 'MS-CHAP-MPPE-Keys',
- 'ms_chap_nt_enc_pw' => 'MS-CHAP-NT-Enc-PW',
- 'ms_chap_response' => 'MS-CHAP-Response',
- 'ms_chap_use_ntlm_auth' => 'MS-CHAP-Use-NTLM-Auth',
- 'ms_filter' => 'MS-Filter',
- 'ms_link_drop_time_limit' => 'MS-Link-Drop-Time-Limit',
- 'ms_link_utilization_thre' => 'MS-Link-Utilization-Threshold',
- 'ms_mppe_encryption_polic' => 'MS-MPPE-Encryption-Policy',
- 'ms_mppe_encryption_type' => 'MS-MPPE-Encryption-Type',
- 'ms_mppe_encryption_types' => 'MS-MPPE-Encryption-Types',
- 'ms_mppe_recv_key' => 'MS-MPPE-Recv-Key',
- 'ms_mppe_send_key' => 'MS-MPPE-Send-Key',
- 'ms_new_arap_password' => 'MS-New-ARAP-Password',
- 'ms_old_arap_password' => 'MS-Old-ARAP-Password',
- 'ms_primary_dns_server' => 'MS-Primary-DNS-Server',
- 'ms_primary_nbns_server' => 'MS-Primary-NBNS-Server',
- 'ms_ras_vendor' => 'MS-RAS-Vendor',
- 'ms_ras_version' => 'MS-RAS-Version',
- 'ms_secondary_dns_server' => 'MS-Secondary-DNS-Server',
- 'ms_secondary_nbns_server' => 'MS-Secondary-NBNS-Server',
- 'multi_link_flag' => 'Multi-Link-Flag',
- 'nas_identifier' => 'NAS-Identifier',
- 'nas_ip_address' => 'NAS-IP-Address',
- 'nas_ipv6_address' => 'NAS-IPv6-Address',
- 'nas_port' => 'NAS-Port',
- 'nas_port_id' => 'NAS-Port-Id',
- 'nas_port_type' => 'NAS-Port-Type',
- 'nas_real_port' => 'NAS_Real_Port',
- 'nas_real_poru' => 'NAS-Real-Port',
- 'navini_avpair' => 'Navini-AVPair',
- 'next_hop_dn' => 'next-hop-dn',
- 'next_hop_ip' => 'next-hop-ip',
- 'nn_data_rate' => 'NN-Data-Rate',
- 'nn_data_rate_ceiling' => 'NN-Data-Rate-Ceiling',
- 'nn_homenode' => 'NN-Homenode',
- 'nn_homeservice' => 'NN-Homeservice',
- 'nn_homeservice_name' => 'NN-Homeservice-Name',
- 'no_such_attribute' => 'No-Such-Attribute',
- 'nokia_charging_id' => 'Nokia-Charging-Id',
- 'nokia_ggsn_ip_address' => 'Nokia-GGSN-IP-Address',
- 'nokia_imsi' => 'Nokia-IMSI',
- 'nokia_prepaid_ind' => 'Nokia-Prepaid-Ind',
- 'nokia_sgsn_ip_address' => 'Nokia-SGSN-IP-Address',
- 'nomadix_bw_down' => 'Nomadix-Bw-Down',
- 'nomadix_bw_up' => 'Nomadix-Bw-Up',
- 'nomadix_config_url' => 'Nomadix-Config-URL',
- 'nomadix_endofsession' => 'Nomadix-EndofSession',
- 'nomadix_expiration' => 'Nomadix-Expiration',
- 'nomadix_goodbye_url' => 'Nomadix-Goodbye-URL',
- 'nomadix_ip_upsell' => 'Nomadix-IP-Upsell',
- 'nomadix_logoff_url' => 'Nomadix-Logoff-URL',
- 'nomadix_maxbytesdown' => 'Nomadix-MaxBytesDown',
- 'nomadix_maxbytesup' => 'Nomadix-MaxBytesUp',
- 'nomadix_net_vlan' => 'Nomadix-Net-VLAN',
- 'nomadix_subnet' => 'Nomadix-Subnet',
- 'nomadix_url_redirection' => 'Nomadix-URL-Redirection',
- 'ns_admin_privilege' => 'NS-Admin-Privilege',
- 'ns_mta_md5_password' => 'NS-MTA-MD5-Password',
- 'ns_primary_dns' => 'NS-Primary-DNS',
- 'ns_primary_wins' => 'NS-Primary-WINS',
- 'ns_secondary_dns' => 'NS-Secondary-DNS',
- 'ns_secondary_wins' => 'NS-Secondary-WINS',
- 'ns_user_group' => 'NS-User-Group',
- 'ns_vsys_name' => 'NS-VSYS-Name',
- 'nt_password' => 'NT-Password',
- 'ntlm_user_name' => 'NTLM-User-Name',
- 'old_password' => 'Old-Password',
- 'outgoing_req_uri' => 'outgoing-req-uri',
- 'packet_dst_port' => 'Packet-Dst-Port',
- 'packet_type' => 'Packet-Type',
- 'pam_auth' => 'Pam-Auth',
- 'password' => 'Password',
- 'password_retry' => 'Password-Retry',
- 'police_burst' => 'Police_Burst',
- 'police_bursu' => 'Police-Burst',
- 'police_rate' => 'Police_Rate',
- 'police_ratf' => 'Police-Rate',
- 'pool_name' => 'Pool-Name',
- 'port_limit' => 'Port-Limit',
- 'port_message' => 'Port-Message',
- 'post_auth_type' => 'Post-Auth-Type',
- 'post_proxy_type' => 'Post-Proxy-Type',
- 'postauth_type' => 'PostAuth-Type',
- 'pppoe_motm' => 'PPPOE_MOTM',
- 'pppoe_motn' => 'PPPOE-MOTM',
- 'pppoe_url' => 'PPPOE_URL',
- 'pppoe_urm' => 'PPPOE-URL',
- 'pre_acct_type' => 'Pre-Acct-Type',
- 'pre_proxy_type' => 'Pre-Proxy-Type',
- 'prefix' => 'Prefix',
- 'prev_hop_ip' => 'prev-hop-ip',
- 'prev_hop_via' => 'prev-hop-via',
- 'prompt' => 'Prompt',
- 'propel_accelerate' => 'Propel-Accelerate',
- 'propel_client_ip_address' => 'Propel-Client-IP-Address',
- 'propel_client_nas_ip_add' => 'Propel-Client-NAS-IP-Address',
- 'propel_client_source_id' => 'Propel-Client-Source-ID',
- 'propel_dialed_digits' => 'Propel-Dialed-Digits',
- 'proxy_state' => 'Proxy-State',
- 'proxy_to_realm' => 'Proxy-To-Realm',
- 'pvc_circuit_padding' => 'PVC_Circuit_Padding',
- 'pvc_circuit_paddinh' => 'PVC-Circuit-Padding',
- 'pvc_encapsulation_type' => 'PVC_Encapsulation_Type',
- 'pvc_encapsulation_typf' => 'PVC-Encapsulation-Type',
- 'pvc_profile_name' => 'PVC_Profile_Name',
- 'pvc_profile_namf' => 'PVC-Profile-Name',
- 'quintum_avpair' => 'Quintum-AVPair',
- 'quintum_h323_billing_mod' => 'Quintum-h323-billing-model',
- 'quintum_h323_call_origin' => 'Quintum-h323-call-origin',
- 'quintum_h323_call_type' => 'Quintum-h323-call-type',
- 'quintum_h323_conf_id' => 'Quintum-h323-conf-id',
- 'quintum_h323_connect_tim' => 'Quintum-h323-connect-time',
- 'quintum_h323_credit_amou' => 'Quintum-h323-credit-amount',
- 'quintum_h323_credit_time' => 'Quintum-h323-credit-time',
- 'quintum_h323_currency_ty' => 'Quintum-h323-currency-type',
- 'quintum_h323_disconnect_' => 'Quintum-h323-disconnect-time',
- 'quintum_h323_disconnecta' => 'Quintum-h323-disconnect-cause',
- 'quintum_h323_gw_id' => 'Quintum-h323-gw-id',
- 'quintum_h323_incoming_co' => 'Quintum-h323-incoming-conf-id',
- 'quintum_h323_preferred_l' => 'Quintum-h323-preferred-lang',
- 'quintum_h323_prompt_id' => 'Quintum-h323-prompt-id',
- 'quintum_h323_redirect_ip' => 'Quintum-h323-redirect-ip-address',
- 'quintum_h323_redirect_nu' => 'Quintum-h323-redirect-number',
- 'quintum_h323_remote_addr' => 'Quintum-h323-remote-address',
- 'quintum_h323_return_code' => 'Quintum-h323-return-code',
- 'quintum_h323_setup_time' => 'Quintum-h323-setup-time',
- 'quintum_h323_time_and_da' => 'Quintum-h323-time-and-day',
- 'quintum_h323_voice_quali' => 'Quintum-h323-voice-quality',
- 'quintum_nas_port' => 'Quintum-NAS-Port',
- 'rate_limit_burst' => 'Rate_Limit_Burst',
- 'rate_limit_bursu' => 'Rate-Limit-Burst',
- 'rate_limit_rate' => 'Rate_Limit_Rate',
- 'rate_limit_ratf' => 'Rate-Limit-Rate',
- 'realm' => 'Realm',
- 'redcreek_tunneled_dns_se' => 'RedCreek-Tunneled-DNS-Server',
- 'redcreek_tunneled_domain' => 'RedCreek-Tunneled-DomainName',
- 'redcreek_tunneled_gatewa' => 'RedCreek-Tunneled-Gateway',
- 'redcreek_tunneled_hostna' => 'RedCreek-Tunneled-HostName',
- 'redcreek_tunneled_ip_add' => 'RedCreek-Tunneled-IP-Addr',
- 'redcreek_tunneled_ip_net' => 'RedCreek-Tunneled-IP-Netmask',
- 'redcreek_tunneled_search' => 'RedCreek-Tunneled-Search-List',
- 'redcreek_tunneled_wins_s' => 'RedCreek-Tunneled-WINS-Server1',
- 'redcreek_tunneled_wins_t' => 'RedCreek-Tunneled-WINS-Server2',
- 'replicate_to_realm' => 'Replicate-To-Realm',
- 'reply_message' => 'Reply-Message',
- 'response_packet_type' => 'Response-Packet-Type',
- 'rewrite_rule' => 'Rewrite-Rule',
- 'sdx_service_name' => 'Sdx-Service-Name',
- 'sdx_session_volume_quota' => 'Sdx-Session-Volume-Quota',
- 'sdx_tunnel_disconnect_ca' => 'Sdx-Tunnel-Disconnect-Cause-Info',
- 'service_type' => 'Service-Type',
- 'session' => 'Session',
- 'session_error_code' => 'Session_Error_Code',
- 'session_error_codf' => 'Session-Error-Code',
- 'session_error_msg' => 'Session_Error_Msg',
- 'session_error_msh' => 'Session-Error-Msg',
- 'session_protocol' => 'session-protocol',
- 'session_timeout' => 'Session-Timeout',
- 'session_type' => 'Session-Type',
- 'shasta_service_profile' => 'Shasta-Service-Profile',
- 'shasta_user_privilege' => 'Shasta-User-Privilege',
- 'shasta_vpn_name' => 'Shasta-VPN-Name',
- 'shiva_acct_serv_switch' => 'Shiva-Acct-Serv-Switch',
- 'shiva_called_number' => 'Shiva-Called-Number',
- 'shiva_calling_number' => 'Shiva-Calling-Number',
- 'shiva_compression_type' => 'Shiva-Compression-Type',
- 'shiva_connect_reason' => 'Shiva-Connect-Reason',
- 'shiva_customer_id' => 'Shiva-Customer-Id',
- 'shiva_disconnect_reason' => 'Shiva-Disconnect-Reason',
- 'shiva_event_flags' => 'Shiva-Event-Flags',
- 'shiva_function' => 'Shiva-Function',
- 'shiva_link_protocol' => 'Shiva-Link-Protocol',
- 'shiva_link_speed' => 'Shiva-Link-Speed',
- 'shiva_links_in_bundle' => 'Shiva-Links-In-Bundle',
- 'shiva_network_protocols' => 'Shiva-Network-Protocols',
- 'shiva_session_id' => 'Shiva-Session-Id',
- 'shiva_type_of_service' => 'Shiva-Type-Of-Service',
- 'shiva_user_attributes' => 'Shiva-User-Attributes',
- 'simultaneous_use' => 'Simultaneous-Use',
- 'sip_from' => 'Sip-From',
- 'sip_hdr' => 'sip-hdr',
- 'sip_method' => 'Sip-Method',
- 'sip_to' => 'Sip-To',
- 'sip_translated_request_u' => 'Sip-Translated-Request-URI',
- 'smb_account_ctrl' => 'SMB-Account-CTRL',
- 'smb_account_ctrl_text' => 'SMB-Account-CTRL-TEXT',
- 'sonicwall_user_group' => 'SonicWall-User-Group',
- 'sonicwall_user_privilege' => 'SonicWall-User-Privilege',
- 'source_validation' => 'Source_Validation',
- 'source_validatioo' => 'Source-Validation',
- 'sql_group' => 'Sql-Group',
- 'sql_user_name' => 'SQL-User-Name',
- 'ss3_firewall_user_privil' => 'SS3-Firewall-User-Privilege',
- 'st_acct_vc_connection_id' => 'ST-Acct-VC-Connection-Id',
- 'st_policy_name' => 'ST-Policy-Name',
- 'st_primary_dns_server' => 'ST-Primary-DNS-Server',
- 'st_primary_nbns_server' => 'ST-Primary-NBNS-Server',
- 'st_secondary_dns_server' => 'ST-Secondary-DNS-Server',
- 'st_secondary_nbns_server' => 'ST-Secondary-NBNS-Server',
- 'st_service_domain' => 'ST-Service-Domain',
- 'st_service_name' => 'ST-Service-Name',
- 'state' => 'State',
- 'strip_user_name' => 'Strip-User-Name',
- 'stripped_user_name' => 'Stripped-User-Name',
- 'subscriber' => 'subscriber',
- 'suffix' => 'Suffix',
- 'telebit_accounting_info' => 'Telebit-Accounting-Info',
- 'telebit_activate_command' => 'Telebit-Activate-Command',
- 'telebit_login_command' => 'Telebit-Login-Command',
- 'telebit_port_name' => 'Telebit-Port-Name',
- 'termination_action' => 'Termination-Action',
- 'termination_menu' => 'Termination-Menu',
- 'trapeze_encryption_type' => 'Trapeze-Encryption-Type',
- 'trapeze_end_date' => 'Trapeze-End-Date',
- 'trapeze_mobility_profile' => 'Trapeze-Mobility-Profile',
- 'trapeze_ssid' => 'Trapeze-SSID',
- 'trapeze_start_date' => 'Trapeze-Start-Date',
- 'trapeze_time_of_day' => 'Trapeze-Time-Of-Day',
- 'trapeze_url' => 'Trapeze-URL',
- 'trapeze_vlan_name' => 'Trapeze-VLAN-Name',
- 'tty_level_max' => 'TTY_Level_Max',
- 'tty_level_may' => 'TTY-Level-Max',
- 'tty_level_start' => 'TTY_Level_Start',
- 'tty_level_staru' => 'TTY-Level-Start',
- 'tunnel_algorithm' => 'Tunnel_Algorithm',
- 'tunnel_algorithn' => 'Tunnel-Algorithm',
- 'tunnel_assignment_id' => 'Tunnel-Assignment-Id',
- 'tunnel_client_auth_id' => 'Tunnel-Client-Auth-Id',
- 'tunnel_client_endpoint' => 'Tunnel-Client-Endpoint',
- 'tunnel_cmd_timeout' => 'Tunnel_Cmd_Timeout',
- 'tunnel_cmd_timeouu' => 'Tunnel-Cmd-Timeout',
- 'tunnel_connection_id' => 'Tunnel-Connection-Id',
- 'tunnel_context' => 'Tunnel_Context',
- 'tunnel_contexu' => 'Tunnel-Context',
- 'tunnel_deadtime' => 'Tunnel_Deadtime',
- 'tunnel_deadtimf' => 'Tunnel-Deadtime',
- 'tunnel_dnis' => 'Tunnel_DNIS',
- 'tunnel_dnit' => 'Tunnel-DNIS',
- 'tunnel_domain' => 'Tunnel_Domain',
- 'tunnel_domaio' => 'Tunnel-Domain',
- 'tunnel_function' => 'Tunnel_Function',
- 'tunnel_functioo' => 'Tunnel-Function',
- 'tunnel_group' => 'Tunnel_Group',
- 'tunnel_grouq' => 'Tunnel-Group',
- 'tunnel_l2f_second_passwo' => 'Tunnel_L2F_Second_Password',
- 'tunnel_l2f_second_passwp' => 'Tunnel-L2F-Second-Password',
- 'tunnel_local_name' => 'Tunnel_Local_Name',
- 'tunnel_local_namf' => 'Tunnel-Local-Name',
- 'tunnel_max_sessions' => 'Tunnel_Max_Sessions',
- 'tunnel_max_sessiont' => 'Tunnel-Max-Sessions',
- 'tunnel_max_tunnels' => 'Tunnel_Max_Tunnels',
- 'tunnel_max_tunnelt' => 'Tunnel-Max-Tunnels',
- 'tunnel_medium_type' => 'Tunnel-Medium-Type',
- 'tunnel_password' => 'Tunnel-Password',
- 'tunnel_police_burst' => 'Tunnel_Police_Burst',
- 'tunnel_police_bursu' => 'Tunnel-Police-Burst',
- 'tunnel_police_rate' => 'Tunnel_Police_Rate',
- 'tunnel_police_ratf' => 'Tunnel-Police-Rate',
- 'tunnel_preference' => 'Tunnel-Preference',
- 'tunnel_private_group_id' => 'Tunnel-Private-Group-Id',
- 'tunnel_rate_limit_burst' => 'Tunnel_Rate_Limit_Burst',
- 'tunnel_rate_limit_bursu' => 'Tunnel-Rate-Limit-Burst',
- 'tunnel_rate_limit_rate' => 'Tunnel_Rate_Limit_Rate',
- 'tunnel_rate_limit_ratf' => 'Tunnel-Rate-Limit-Rate',
- 'tunnel_remote_name' => 'Tunnel_Remote_Name',
- 'tunnel_remote_namf' => 'Tunnel-Remote-Name',
- 'tunnel_retransmit' => 'Tunnel_Retransmit',
- 'tunnel_retransmiu' => 'Tunnel-Retransmit',
- 'tunnel_server_auth_id' => 'Tunnel-Server-Auth-Id',
- 'tunnel_server_endpoint' => 'Tunnel-Server-Endpoint',
- 'tunnel_session_auth' => 'Tunnel_Session_Auth',
- 'tunnel_session_auth_ctx' => 'Tunnel_Session_Auth_Ctx',
- 'tunnel_session_auth_cty' => 'Tunnel-Session-Auth-Ctx',
- 'tunnel_session_auth_serv' => 'Tunnel_Session_Auth_Service_Grp',
- 'tunnel_session_auth_serw' => 'Tunnel-Session-Auth-Service-Grp',
- 'tunnel_session_auti' => 'Tunnel-Session-Auth',
- 'tunnel_type' => 'Tunnel-Type',
- 'tunnel_window' => 'Tunnel_Window',
- 'tunnel_windox' => 'Tunnel-Window',
- 'unix_ftp_gid' => 'Unix-FTP-GID',
- 'unix_ftp_group_ids' => 'Unix-FTP-Group-Ids',
- 'unix_ftp_group_names' => 'Unix-FTP-Group-Names',
- 'unix_ftp_home' => 'Unix-FTP-Home',
- 'unix_ftp_shell' => 'Unix-FTP-Shell',
- 'unix_ftp_uid' => 'Unix-FTP-UID',
- 'user_category' => 'User-Category',
- 'user_name' => 'User-Name',
- 'user_name_is_star' => 'User-Name-Is-Star',
- 'user_password' => 'User-Password',
- 'user_profile' => 'User-Profile',
- 'user_service_type' => 'User-Service-Type',
- 'usr_accm_type' => 'USR-ACCM-Type',
- 'usr_acct_reason_code' => 'USR-Acct-Reason-Code',
- 'usr_actual_voltage' => 'USR-Actual-Voltage',
- 'usr_appletalk' => 'USR-Appletalk',
- 'usr_appletalk_network_ra' => 'USR-Appletalk-Network-Range',
- 'usr_at_call_input_filter' => 'USR-AT-Call-Input-Filter',
- 'usr_at_call_output_filte' => 'USR-AT-Call-Output-Filter',
- 'usr_at_input_filter' => 'USR-AT-Input-Filter',
- 'usr_at_output_filter' => 'USR-AT-Output-Filter',
- 'usr_at_rtmp_input_filter' => 'USR-AT-RTMP-Input-Filter',
- 'usr_at_rtmp_output_filte' => 'USR-AT-RTMP-Output-Filter',
- 'usr_at_zip_input_filter' => 'USR-AT-Zip-Input-Filter',
- 'usr_at_zip_output_filter' => 'USR-AT-Zip-Output-Filter',
- 'usr_auth_mode' => 'USR-Auth-Mode',
- 'usr_back_channel_data_ra' => 'USR-Back-Channel-Data-Rate',
- 'usr_bearer_capabilities' => 'USR-Bearer-Capabilities',
- 'usr_block_error_count_li' => 'USR-Block-Error-Count-Limit',
- 'usr_blocks_received' => 'USR-Blocks-Received',
- 'usr_blocks_resent' => 'USR-Blocks-Resent',
- 'usr_blocks_sent' => 'USR-Blocks-Sent',
- 'usr_bridging' => 'USR-Bridging',
- 'usr_call_arrival_in_gmt' => 'USR-Call-Arrival-in-GMT',
- 'usr_call_arrival_time' => 'USR-Call-Arrival-Time',
- 'usr_call_connect_in_gmt' => 'USR-Call-Connect-in-GMT',
- 'usr_call_connecting_time' => 'USR-Call-Connecting-Time',
- 'usr_call_end_date_time' => 'USR-Call-End-Date-Time',
- 'usr_call_end_time' => 'USR-Call-End-Time',
- 'usr_call_error_code' => 'USR-Call-Error-Code',
- 'usr_call_event_code' => 'USR-Call-Event-Code',
- 'usr_call_reference_numbe' => 'USR-Call-Reference-Number',
- 'usr_call_start_date_time' => 'USR-Call-Start-Date-Time',
- 'usr_call_terminate_in_gm' => 'USR-Call-Terminate-in-GMT',
- 'usr_call_type' => 'USR-Call-Type',
- 'usr_callback_type' => 'USR-Callback-Type',
- 'usr_called_party_number' => 'USR-Called-Party-Number',
- 'usr_calling_party_number' => 'USR-Calling-Party-Number',
- 'usr_card_type' => 'USR-Card-Type',
- 'usr_ccp_algorithm' => 'USR-CCP-Algorithm',
- 'usr_cdma_call_reference_' => 'USR-CDMA-Call-Reference-Number',
- 'usr_channel' => 'USR-Channel',
- 'usr_channel_connected_to' => 'USR-Channel-Connected-To',
- 'usr_channel_decrement' => 'USR-Channel-Decrement',
- 'usr_channel_expansion' => 'USR-Channel-Expansion',
- 'usr_characters_received' => 'USR-Characters-Received',
- 'usr_characters_sent' => 'USR-Characters-Sent',
- 'usr_chassis_call_channel' => 'USR-Chassis-Call-Channel',
- 'usr_chassis_call_slot' => 'USR-Chassis-Call-Slot',
- 'usr_chassis_call_span' => 'USR-Chassis-Call-Span',
- 'usr_chassis_slot' => 'USR-Chassis-Slot',
- 'usr_chassis_temp_thresho' => 'USR-Chassis-Temp-Threshold',
- 'usr_chassis_temperature' => 'USR-Chassis-Temperature',
- 'usr_chat_script_name' => 'USR-Chat-Script-Name',
- 'usr_compression_algorith' => 'USR-Compression-Algorithm',
- 'usr_compression_reset_mo' => 'USR-Compression-Reset-Mode',
- 'usr_compression_type' => 'USR-Compression-Type',
- 'usr_connect_speed' => 'USR-Connect-Speed',
- 'usr_connect_term_reason' => 'USR-Connect-Term-Reason',
- 'usr_connect_time' => 'USR-Connect-Time',
- 'usr_connect_time_limit' => 'USR-Connect-Time-Limit',
- 'usr_cusr_hat_script_rule' => 'USR-CUSR-hat-Script-Rules',
- 'usr_default_dte_data_rat' => 'USR-Default-DTE-Data-Rate',
- 'usr_device_connected_to' => 'USR-Device-Connected-To',
- 'usr_disconnect_cause_ind' => 'USR-Disconnect-Cause-Indicator',
- 'usr_dnis_reauthenticatio' => 'USR-DNIS-ReAuthentication',
- 'usr_ds0' => 'USR-DS0',
- 'usr_ds0s' => 'USR-DS0s',
- 'usr_dte_data_idle_timout' => 'USR-DTE-Data-Idle-Timout',
- 'usr_dte_ring_no_answer_l' => 'USR-DTE-Ring-No-Answer-Limit',
- 'usr_dtr_false_timeout' => 'USR-DTR-False-Timeout',
- 'usr_dtr_true_timeout' => 'USR-DTR-True-Timeout',
- 'usr_end_time' => 'USR-End-Time',
- 'usr_equalization_type' => 'USR-Equalization-Type',
- 'usr_esn' => 'USR-ESN',
- 'usr_et_bridge_call_outpu' => 'USR-ET-Bridge-Call-Output-Filte',
- 'usr_et_bridge_input_filt' => 'USR-ET-Bridge-Input-Filter',
- 'usr_et_bridge_output_fil' => 'USR-ET-Bridge-Output-Filter',
- 'usr_event_date_time' => 'USR-Event-Date-Time',
- 'usr_event_id' => 'USR-Event-Id',
- 'usr_expansion_algorithm' => 'USR-Expansion-Algorithm',
- 'usr_expected_voltage' => 'USR-Expected-Voltage',
- 'usr_failure_to_connect_r' => 'USR-Failure-to-Connect-Reason',
- 'usr_fallback_enabled' => 'USR-Fallback-Enabled',
- 'usr_fallback_limit' => 'USR-Fallback-Limit',
- 'usr_filter_zones' => 'USR-Filter-Zones',
- 'usr_final_rx_link_data_r' => 'USR-Final-Rx-Link-Data-Rate',
- 'usr_final_tx_link_data_r' => 'USR-Final-Tx-Link-Data-Rate',
- 'usr_framed_ip_address_po' => 'USR-Framed_IP_Address_Pool_Name',
- 'usr_framed_ipx_route' => 'USR-Framed-IPX-Route',
- 'usr_gateway_ip_address' => 'USR-Gateway-IP-Address',
- 'usr_harc_disconnect_code' => 'USR-HARC-Disconnect-Code',
- 'usr_host_type' => 'USR-Host-Type',
- 'usr_ids0_call_type' => 'USR-IDS0-Call-Type',
- 'usr_igmp_maximum_respons' => 'USR-IGMP-Maximum-Response-Time',
- 'usr_igmp_query_interval' => 'USR-IGMP-Query-Interval',
- 'usr_igmp_robustness' => 'USR-IGMP-Robustness',
- 'usr_igmp_routing' => 'USR-IGMP-Routing',
- 'usr_igmp_version' => 'USR-IGMP-Version',
- 'usr_imsi' => 'USR-IMSI',
- 'usr_initial_rx_link_data' => 'USR-Initial-Rx-Link-Data-Rate',
- 'usr_initial_tx_link_data' => 'USR-Initial-Tx-Link-Data-Rate',
- 'usr_interface_index' => 'USR-Interface-Index',
- 'usr_ip' => 'USR-IP',
- 'usr_ip_call_input_filter' => 'USR-IP-Call-Input-Filter',
- 'usr_ip_call_output_filte' => 'USR-IP-Call-Output-Filter',
- 'usr_ip_default_route_opt' => 'USR-IP-Default-Route-Option',
- 'usr_ip_rip_input_filter' => 'USR-IP-RIP-Input-Filter',
- 'usr_ip_rip_output_filter' => 'USR-IP-RIP-Output-Filter',
- 'usr_ip_rip_policies' => 'USR-IP-RIP-Policies',
- 'usr_ip_rip_simple_auth_p' => 'USR-IP-RIP-Simple-Auth-Password',
- 'usr_ip_saa_filter' => 'USR-IP-SAA-Filter',
- 'usr_ipx' => 'USR-IPX',
- 'usr_ipx_call_input_filte' => 'USR-IPX-Call-Input-Filter',
- 'usr_ipx_call_output_filt' => 'USR-IPX-Call-Output-Filter',
- 'usr_ipx_rip_input_filter' => 'USR-IPX-RIP-Input-Filter',
- 'usr_ipx_rip_output_filte' => 'USR-IPX-RIP-Output-Filter',
- 'usr_ipx_routing' => 'USR-IPX-Routing',
- 'usr_ipx_wan' => 'USR-IPX-WAN',
- 'usr_iwf_call_identifier' => 'USR-IWF-Call-Identifier',
- 'usr_iwf_ip_address' => 'USR-IWF-IP-Address',
- 'usr_keypress_timeout' => 'USR-Keypress-Timeout',
- 'usr_last_callers_number_' => 'USR-Last-Callers-Number-ANI',
- 'usr_last_number_dialed_i' => 'USR-Last-Number-Dialed-In-DNIS',
- 'usr_last_number_dialed_o' => 'USR-Last-Number-Dialed-Out',
- 'usr_line_reversals' => 'USR-Line-Reversals',
- 'usr_local_framed_ip_addr' => 'USR-Local-Framed-IP-Addr',
- 'usr_local_ip_address' => 'USR-Local-IP-Address',
- 'usr_log_filter_packets' => 'USR-Log-Filter-Packets',
- 'usr_max_channels' => 'USR-Max-Channels',
- 'usr_mbi_ct_bchannel_used' => 'USR-Mbi_Ct_BChannel_Used',
- 'usr_mbi_ct_pri_card_slot' => 'USR-Mbi_Ct_PRI_Card_Slot',
- 'usr_mbi_ct_pri_card_span' => 'USR-Mbi_Ct_PRI_Card_Span_Line',
- 'usr_mbi_ct_tdm_time_slot' => 'USR-Mbi_Ct_TDM_Time_Slot',
- 'usr_mic' => 'USR-MIC',
- 'usr_min_compression_size' => 'USR-Min-Compression-Size',
- 'usr_mobile_ip_address' => 'USR-Mobile-IP-Address',
- 'usr_mobile_numbytes_rxed' => 'USR-Mobile-NumBytes-Rxed',
- 'usr_mobile_numbytes_txed' => 'USR-Mobile-NumBytes-Txed',
- 'usr_mobileip_home_agent_' => 'USR-MobileIP-Home-Agent-Address',
- 'usr_modem_group' => 'USR-Modem-Group',
- 'usr_modem_setup_time' => 'USR-Modem-Setup-Time',
- 'usr_modem_training_time' => 'USR-Modem-Training-Time',
- 'usr_modulation_type' => 'USR-Modulation-Type',
- 'usr_mp_edo' => 'USR-MP-EDO',
- 'usr_mp_edo_hiper' => 'USR-MP-EDO-HIPER',
- 'usr_mp_mrru' => 'USR-MP-MRRU',
- 'usr_mpip_tunnel_originat' => 'USR-MPIP-Tunnel-Originator',
- 'usr_multicast_forwarding' => 'USR-Multicast-Forwarding',
- 'usr_multicast_proxy' => 'USR-Multicast-Proxy',
- 'usr_multicast_receive' => 'USR-Multicast-Receive',
- 'usr_nas_type' => 'USR-NAS-Type',
- 'usr_nfas_id' => 'USR-NFAS-ID',
- 'usr_num_fax_pages_proces' => 'USR-Num-Fax-Pages-Processed',
- 'usr_number_of_blers' => 'USR-Number-of-Blers',
- 'usr_number_of_characters' => 'USR-Number-Of-Characters-Lost',
- 'usr_number_of_fallbacks' => 'USR-Number-of-Fallbacks',
- 'usr_number_of_link_naks' => 'USR-Number-of-Link-NAKs',
- 'usr_number_of_link_timeo' => 'USR-Number-of-Link-Timeouts',
- 'usr_number_of_rings_limi' => 'USR-Number-of-Rings-Limit',
- 'usr_number_of_upshifts' => 'USR-Number-of-Upshifts',
- 'usr_orig_nas_type' => 'USR-Orig-NAS-Type',
- 'usr_originate_answer_mod' => 'USR-Originate-Answer-Mode',
- 'usr_ospf_addressless_ind' => 'USR-OSPF-Addressless-Index',
- 'usr_packet_bus_session' => 'USR-Packet-Bus-Session',
- 'usr_physical_state' => 'USR-Physical-State',
- 'usr_port_tap' => 'USR-Port-Tap',
- 'usr_port_tap_address' => 'USR-Port-Tap-Address',
- 'usr_port_tap_facility' => 'USR-Port-Tap-Facility',
- 'usr_port_tap_format' => 'USR-Port-Tap-Format',
- 'usr_port_tap_output' => 'USR-Port-Tap-Output',
- 'usr_port_tap_priority' => 'USR-Port-Tap-Priority',
- 'usr_power_supply_number' => 'USR-Power-Supply-Number',
- 'usr_primary_dns_server' => 'USR-Primary_DNS_Server',
- 'usr_primary_nbns_server' => 'USR-Primary_NBNS_Server',
- 'usr_pw_cutoff' => 'USR-PW_Cutoff',
- 'usr_pw_framed_routing_v2' => 'USR-PW_Framed_Routing_V2',
- 'usr_pw_index' => 'USR-PW_Index',
- 'usr_pw_packet' => 'USR-PW_Packet',
- 'usr_pw_tunnel_authentica' => 'USR-PW_Tunnel_Authentication',
- 'usr_pw_usr_ifilter_ip' => 'USR-PW_USR_IFilter_IP',
- 'usr_pw_usr_ifilter_ipx' => 'USR-PW_USR_IFilter_IPX',
- 'usr_pw_usr_ofilter_ip' => 'USR-PW_USR_OFilter_IP',
- 'usr_pw_usr_ofilter_ipx' => 'USR-PW_USR_OFilter_IPX',
- 'usr_pw_usr_ofilter_sap' => 'USR-PW_USR_OFilter_SAP',
- 'usr_pw_vpn_gateway' => 'USR-PW_VPN_Gateway',
- 'usr_pw_vpn_id' => 'USR-PW_VPN_ID',
- 'usr_pw_vpn_name' => 'USR-PW_VPN_Name',
- 'usr_pw_vpn_neighbor' => 'USR-PW_VPN_Neighbor',
- 'usr_q931_call_reference_' => 'USR-Q931-Call-Reference-Value',
- 'usr_rad_dvmrp_metric' => 'USR-Rad-Dvmrp-Metric',
- 'usr_rad_location_type' => 'USR-Rad-Location-Type',
- 'usr_rad_multicast_routin' => 'USR-Rad-Multicast-Routing-Ttl',
- 'usr_rad_multicast_routio' => 'USR-Rad-Multicast-Routing-RtLim',
- 'usr_rad_multicast_routip' => 'USR-Rad-Multicast-Routing-Proto',
- 'usr_rad_multicast_routiq' => 'USR-Rad-Multicast-Routing-Bound',
- 'usr_re_chap_timeout' => 'USR-Re-Chap-Timeout',
- 'usr_receive_acc_map' => 'USR-Receive-Acc-Map',
- 'usr_reply_script1' => 'USR-Reply-Script1',
- 'usr_reply_script2' => 'USR-Reply-Script2',
- 'usr_reply_script3' => 'USR-Reply-Script3',
- 'usr_reply_script4' => 'USR-Reply-Script4',
- 'usr_reply_script5' => 'USR-Reply-Script5',
- 'usr_reply_script6' => 'USR-Reply-Script6',
- 'usr_request_type' => 'USR-Request-Type',
- 'usr_retrains_granted' => 'USR-Retrains-Granted',
- 'usr_retrains_requested' => 'USR-Retrains-Requested',
- 'usr_rmmie_firmware_build' => 'USR-RMMIE-Firmware-Build-Date',
- 'usr_rmmie_firmware_versi' => 'USR-RMMIE-Firmware-Version',
- 'usr_rmmie_last_update_ev' => 'USR-RMMIE-Last-Update-Event',
- 'usr_rmmie_last_update_ti' => 'USR-RMMIE-Last-Update-Time',
- 'usr_rmmie_manufacturer_i' => 'USR-RMMIE-Manufacturer-ID',
- 'usr_rmmie_num_of_updates' => 'USR-RMMIE-Num-Of-Updates',
- 'usr_rmmie_planned_discon' => 'USR-RMMIE-Planned-Disconnect',
- 'usr_rmmie_product_code' => 'USR-RMMIE-Product-Code',
- 'usr_rmmie_pwrlvl_farecho' => 'USR-RMMIE-PwrLvl-FarEcho-Canc',
- 'usr_rmmie_pwrlvl_nearech' => 'USR-RMMIE-PwrLvl-NearEcho-Canc',
- 'usr_rmmie_pwrlvl_noise_l' => 'USR-RMMIE-PwrLvl-Noise-Lvl',
- 'usr_rmmie_pwrlvl_xmit_lv' => 'USR-RMMIE-PwrLvl-Xmit-Lvl',
- 'usr_rmmie_rcv_pwrlvl_330' => 'USR-RMMIE-Rcv-PwrLvl-3300Hz',
- 'usr_rmmie_rcv_pwrlvl_375' => 'USR-RMMIE-Rcv-PwrLvl-3750Hz',
- 'usr_rmmie_rcv_tot_pwrlvl' => 'USR-RMMIE-Rcv-Tot-PwrLvl',
- 'usr_rmmie_serial_number' => 'USR-RMMIE-Serial-Number',
- 'usr_rmmie_status' => 'USR-RMMIE-Status',
- 'usr_rmmie_x2_status' => 'USR-RMMIE-x2-Status',
- 'usr_routing_protocol' => 'USR-Routing-Protocol',
- 'usr_sap_filter_in' => 'USR-SAP-Filter-In',
- 'usr_secondary_dns_server' => 'USR-Secondary_DNS_Server',
- 'usr_secondary_nbns_serve' => 'USR-Secondary_NBNS_Server',
- 'usr_security_login_limit' => 'USR-Security-Login-Limit',
- 'usr_security_resp_limit' => 'USR-Security-Resp-Limit',
- 'usr_send_name' => 'USR-Send-Name',
- 'usr_send_password' => 'USR-Send-Password',
- 'usr_send_script1' => 'USR-Send-Script1',
- 'usr_send_script2' => 'USR-Send-Script2',
- 'usr_send_script3' => 'USR-Send-Script3',
- 'usr_send_script4' => 'USR-Send-Script4',
- 'usr_send_script5' => 'USR-Send-Script5',
- 'usr_send_script6' => 'USR-Send-Script6',
- 'usr_server_time' => 'USR-Server-Time',
- 'usr_service_option' => 'USR-Service-Option',
- 'usr_simplified_mnp_level' => 'USR-Simplified-MNP-Levels',
- 'usr_simplified_v42bis_us' => 'USR-Simplified-V42bis-Usage',
- 'usr_slot_connected_to' => 'USR-Slot-Connected-To',
- 'usr_speed_of_connection' => 'USR-Speed-Of-Connection',
- 'usr_spoofing' => 'USR-Spoofing',
- 'usr_start_time' => 'USR-Start-Time',
- 'usr_supports_tags' => 'USR-Supports-Tags',
- 'usr_sync_async_mode' => 'USR-Sync-Async-Mode',
- 'usr_syslog_tap' => 'USR-Syslog-Tap',
- 'usr_terminal_type' => 'USR-Terminal-Type',
- 'usr_transmit_acc_map' => 'USR-Transmit-Acc-Map',
- 'usr_tunnel_auth_hostname' => 'USR-Tunnel-Auth-Hostname',
- 'usr_tunnel_security' => 'USR-Tunnel-Security',
- 'usr_tunnel_switch_endpoi' => 'USR-Tunnel-Switch-Endpoint',
- 'usr_tunneled_mlpp' => 'USR-Tunneled-MLPP',
- 'usr_unauthenticated_time' => 'USR-Unauthenticated-Time',
- 'usr_vpn_encrypter' => 'USR-VPN-Encrypter',
- 'usr_vpn_gw_location_id' => 'USR-VPN-GW-Location-Id',
- 'usr_vts_session_key' => 'USR-VTS-Session-Key',
- 'vendor_specific' => 'Vendor-Specific',
- 'versanet_termination_cau' => 'Versanet-Termination-Cause',
- 'vnc_pppoe_cbq_rx' => 'VNC-PPPoE-CBQ-RX',
- 'vnc_pppoe_cbq_rx_fallbac' => 'VNC-PPPoE-CBQ-RX-Fallback',
- 'vnc_pppoe_cbq_tx' => 'VNC-PPPoE-CBQ-TX',
- 'vnc_pppoe_cbq_tx_fallbac' => 'VNC-PPPoE-CBQ-TX-Fallback',
- 'vnc_splash' => 'VNC-Splash',
- 'wispr_bandwidth_max_down' => 'WISPr-Bandwidth-Max-Down',
- 'wispr_bandwidth_max_up' => 'WISPr-Bandwidth-Max-Up',
- 'wispr_bandwidth_min_down' => 'WISPr-Bandwidth-Min-Down',
- 'wispr_bandwidth_min_up' => 'WISPr-Bandwidth-Min-Up',
- 'wispr_billing_class_of_s' => 'WISPr-Billing-Class-Of-Service',
- 'wispr_location_id' => 'WISPr-Location-ID',
- 'wispr_location_name' => 'WISPr-Location-Name',
- 'wispr_logoff_url' => 'WISPr-Logoff-URL',
- 'wispr_redirection_url' => 'WISPr-Redirection-URL',
- 'wispr_session_terminate_' => 'WISPr-Session-Terminate-Time',
- 'wispr_session_terminatea' => 'WISPr-Session-Terminate-End-Of-Day',
- 'x_ascend_add_seconds' => 'X-Ascend-Add-Seconds',
- 'x_ascend_ara_pw' => 'X-Ascend-Ara-PW',
- 'x_ascend_assign_ip_clien' => 'X-Ascend-Assign-IP-Client',
- 'x_ascend_assign_ip_globa' => 'X-Ascend-Assign-IP-Global-Pool',
- 'x_ascend_assign_ip_pool' => 'X-Ascend-Assign-IP-Pool',
- 'x_ascend_assign_ip_serve' => 'X-Ascend-Assign-IP-Server',
- 'x_ascend_authen_alias' => 'X-Ascend-Authen-Alias',
- 'x_ascend_backup' => 'X-Ascend-Backup',
- 'x_ascend_bacp_enable' => 'X-Ascend-BACP-Enable',
- 'x_ascend_base_channel_co' => 'X-Ascend-Base-Channel-Count',
- 'x_ascend_billing_number' => 'X-Ascend-Billing-Number',
- 'x_ascend_bridge' => 'X-Ascend-Bridge',
- 'x_ascend_bridge_address' => 'X-Ascend-Bridge-Address',
- 'x_ascend_call_attempt_li' => 'X-Ascend-Call-Attempt-Limit',
- 'x_ascend_call_block_dura' => 'X-Ascend-Call-Block-Duration',
- 'x_ascend_call_by_call' => 'X-Ascend-Call-By-Call',
- 'x_ascend_call_filter' => 'X-Ascend-Call-Filter',
- 'x_ascend_call_type' => 'X-Ascend-Call-Type',
- 'x_ascend_callback' => 'X-Ascend-Callback',
- 'x_ascend_client_assign_d' => 'X-Ascend-Client-Assign-DNS',
- 'x_ascend_client_gateway' => 'X-Ascend-Client-Gateway',
- 'x_ascend_client_primary_' => 'X-Ascend-Client-Primary-DNS',
- 'x_ascend_client_secondar' => 'X-Ascend-Client-Secondary-DNS',
- 'x_ascend_connect_progres' => 'X-Ascend-Connect-Progress',
- 'x_ascend_data_filter' => 'X-Ascend-Data-Filter',
- 'x_ascend_data_rate' => 'X-Ascend-Data-Rate',
- 'x_ascend_data_svc' => 'X-Ascend-Data-Svc',
- 'x_ascend_dba_monitor' => 'X-Ascend-DBA-Monitor',
- 'x_ascend_dec_channel_cou' => 'X-Ascend-Dec-Channel-Count',
- 'x_ascend_dhcp_maximum_le' => 'X-Ascend-DHCP-Maximum-Leases',
- 'x_ascend_dhcp_pool_numbe' => 'X-Ascend-DHCP-Pool-Number',
- 'x_ascend_dhcp_reply' => 'X-Ascend-DHCP-Reply',
- 'x_ascend_dial_number' => 'X-Ascend-Dial-Number',
- 'x_ascend_dialout_allowed' => 'X-Ascend-Dialout-Allowed',
- 'x_ascend_disconnect_caus' => 'X-Ascend-Disconnect-Cause',
- 'x_ascend_event_type' => 'X-Ascend-Event-Type',
- 'x_ascend_expect_callback' => 'X-Ascend-Expect-Callback',
- 'x_ascend_fcp_parameter' => 'X-Ascend-FCP-Parameter',
- 'x_ascend_first_dest' => 'X-Ascend-First-Dest',
- 'x_ascend_force_56' => 'X-Ascend-Force-56',
- 'x_ascend_fr_circuit_name' => 'X-Ascend-FR-Circuit-Name',
- 'x_ascend_fr_dce_n392' => 'X-Ascend-FR-DCE-N392',
- 'x_ascend_fr_dce_n393' => 'X-Ascend-FR-DCE-N393',
- 'x_ascend_fr_direct' => 'X-Ascend-FR-Direct',
- 'x_ascend_fr_direct_dlci' => 'X-Ascend-FR-Direct-DLCI',
- 'x_ascend_fr_direct_profi' => 'X-Ascend-FR-Direct-Profile',
- 'x_ascend_fr_dlci' => 'X-Ascend-FR-DLCI',
- 'x_ascend_fr_dte_n392' => 'X-Ascend-FR-DTE-N392',
- 'x_ascend_fr_dte_n393' => 'X-Ascend-FR-DTE-N393',
- 'x_ascend_fr_link_mgt' => 'X-Ascend-FR-Link-Mgt',
- 'x_ascend_fr_linkup' => 'X-Ascend-FR-LinkUp',
- 'x_ascend_fr_n391' => 'X-Ascend-FR-N391',
- 'x_ascend_fr_nailed_grp' => 'X-Ascend-FR-Nailed-Grp',
- 'x_ascend_fr_profile_name' => 'X-Ascend-FR-Profile-Name',
- 'x_ascend_fr_t391' => 'X-Ascend-FR-T391',
- 'x_ascend_fr_t392' => 'X-Ascend-FR-T392',
- 'x_ascend_fr_type' => 'X-Ascend-FR-Type',
- 'x_ascend_ft1_caller' => 'X-Ascend-FT1-Caller',
- 'x_ascend_group' => 'X-Ascend-Group',
- 'x_ascend_handle_ipx' => 'X-Ascend-Handle-IPX',
- 'x_ascend_history_weigh_t' => 'X-Ascend-History-Weigh-Type',
- 'x_ascend_home_agent_ip_a' => 'X-Ascend-Home-Agent-IP-Addr',
- 'x_ascend_home_agent_pass' => 'X-Ascend-Home-Agent-Password',
- 'x_ascend_home_agent_udp_' => 'X-Ascend-Home-Agent-UDP-Port',
- 'x_ascend_home_network_na' => 'X-Ascend-Home-Network-Name',
- 'x_ascend_host_info' => 'X-Ascend-Host-Info',
- 'x_ascend_idle_limit' => 'X-Ascend-Idle-Limit',
- 'x_ascend_if_netmask' => 'X-Ascend-IF-Netmask',
- 'x_ascend_inc_channel_cou' => 'X-Ascend-Inc-Channel-Count',
- 'x_ascend_ip_direct' => 'X-Ascend-IP-Direct',
- 'x_ascend_ip_pool_definit' => 'X-Ascend-IP-Pool-Definition',
- 'x_ascend_ipx_alias' => 'X-Ascend-IPX-Alias',
- 'x_ascend_ipx_node_addr' => 'X-Ascend-IPX-Node-Addr',
- 'x_ascend_ipx_peer_mode' => 'X-Ascend-IPX-Peer-Mode',
- 'x_ascend_ipx_route' => 'X-Ascend-IPX-Route',
- 'x_ascend_link_compressio' => 'X-Ascend-Link-Compression',
- 'x_ascend_maximum_call_du' => 'X-Ascend-Maximum-Call-Duration',
- 'x_ascend_maximum_channel' => 'X-Ascend-Maximum-Channels',
- 'x_ascend_maximum_time' => 'X-Ascend-Maximum-Time',
- 'x_ascend_menu_item' => 'X-Ascend-Menu-Item',
- 'x_ascend_menu_selector' => 'X-Ascend-Menu-Selector',
- 'x_ascend_metric' => 'X-Ascend-Metric',
- 'x_ascend_minimum_channel' => 'X-Ascend-Minimum-Channels',
- 'x_ascend_modem_portno' => 'X-Ascend-Modem-PortNo',
- 'x_ascend_modem_shelfno' => 'X-Ascend-Modem-ShelfNo',
- 'x_ascend_modem_slotno' => 'X-Ascend-Modem-SlotNo',
- 'x_ascend_mpp_idle_percen' => 'X-Ascend-MPP-Idle-Percent',
- 'x_ascend_multicast_clien' => 'X-Ascend-Multicast-Client',
- 'x_ascend_multicast_rate_' => 'X-Ascend-Multicast-Rate-Limit',
- 'x_ascend_multilink_id' => 'X-Ascend-Multilink-ID',
- 'x_ascend_netware_timeout' => 'X-Ascend-Netware-timeout',
- 'x_ascend_num_in_multilin' => 'X-Ascend-Num-In-Multilink',
- 'x_ascend_number_sessions' => 'X-Ascend-Number-Sessions',
- 'x_ascend_ppp_address' => 'X-Ascend-PPP-Address',
- 'x_ascend_ppp_async_map' => 'X-Ascend-PPP-Async-Map',
- 'x_ascend_ppp_vj_1172' => 'X-Ascend-PPP-VJ-1172',
- 'x_ascend_ppp_vj_slot_com' => 'X-Ascend-PPP-VJ-Slot-Comp',
- 'x_ascend_pre_input_octet' => 'X-Ascend-Pre-Input-Octets',
- 'x_ascend_pre_input_packe' => 'X-Ascend-Pre-Input-Packets',
- 'x_ascend_pre_output_octe' => 'X-Ascend-Pre-Output-Octets',
- 'x_ascend_pre_output_pack' => 'X-Ascend-Pre-Output-Packets',
- 'x_ascend_preempt_limit' => 'X-Ascend-Preempt-Limit',
- 'x_ascend_presession_time' => 'X-Ascend-PreSession-Time',
- 'x_ascend_pri_number_type' => 'X-Ascend-PRI-Number-Type',
- 'x_ascend_primary_home_ag' => 'X-Ascend-Primary-Home-Agent',
- 'x_ascend_pw_lifetime' => 'X-Ascend-PW-Lifetime',
- 'x_ascend_pw_warntime' => 'X-Ascend-PW-Warntime',
- 'x_ascend_receive_secret' => 'X-Ascend-Receive-Secret',
- 'x_ascend_remote_addr' => 'X-Ascend-Remote-Addr',
- 'x_ascend_remove_seconds' => 'X-Ascend-Remove-Seconds',
- 'x_ascend_require_auth' => 'X-Ascend-Require-Auth',
- 'x_ascend_route_ip' => 'X-Ascend-Route-IP',
- 'x_ascend_route_ipx' => 'X-Ascend-Route-IPX',
- 'x_ascend_secondary_home_' => 'X-Ascend-Secondary-Home-Agent',
- 'x_ascend_seconds_of_hist' => 'X-Ascend-Seconds-Of-History',
- 'x_ascend_send_auth' => 'X-Ascend-Send-Auth',
- 'x_ascend_send_passwd' => 'X-Ascend-Send-Passwd',
- 'x_ascend_send_secret' => 'X-Ascend-Send-Secret',
- 'x_ascend_session_svr_key' => 'X-Ascend-Session-Svr-Key',
- 'x_ascend_shared_profile_' => 'X-Ascend-Shared-Profile-Enable',
- 'x_ascend_target_util' => 'X-Ascend-Target-Util',
- 'x_ascend_temporary_rtes' => 'X-Ascend-Temporary-Rtes',
- 'x_ascend_third_prompt' => 'X-Ascend-Third-Prompt',
- 'x_ascend_token_expiry' => 'X-Ascend-Token-Expiry',
- 'x_ascend_token_idle' => 'X-Ascend-Token-Idle',
- 'x_ascend_token_immediate' => 'X-Ascend-Token-Immediate',
- 'x_ascend_transit_number' => 'X-Ascend-Transit-Number',
- 'x_ascend_ts_idle_limit' => 'X-Ascend-TS-Idle-Limit',
- 'x_ascend_ts_idle_mode' => 'X-Ascend-TS-Idle-Mode',
- 'x_ascend_tunneling_proto' => 'X-Ascend-Tunneling-Protocol',
- 'x_ascend_user_acct_base' => 'X-Ascend-User-Acct-Base',
- 'x_ascend_user_acct_host' => 'X-Ascend-User-Acct-Host',
- 'x_ascend_user_acct_key' => 'X-Ascend-User-Acct-Key',
- 'x_ascend_user_acct_port' => 'X-Ascend-User-Acct-Port',
- 'x_ascend_user_acct_time' => 'X-Ascend-User-Acct-Time',
- 'x_ascend_user_acct_type' => 'X-Ascend-User-Acct-Type',
- 'x_ascend_xmit_rate' => 'X-Ascend-Xmit-Rate',
- 'xedia_address_pool' => 'Xedia-Address-Pool',
- 'xedia_client_access_netw' => 'Xedia-Client-Access-Network',
- 'xedia_dns_server' => 'Xedia-DNS-Server',
- 'xedia_netbios_server' => 'Xedia-NetBios-Server',
- 'xedia_ppp_echo_interval' => 'Xedia-PPP-Echo-Interval',
- 'xedia_ssh_privileges' => 'Xedia-SSH-Privileges',
-
- #NETC.NET.AU (RADIATOR?)
- 'authentication_type' => 'Authentication-Type',
-
- #wtxs (dunno)
- #'radius_operator' => 'Radius-Operator',
-
-);
-
-1;
diff --git a/FS/FS/radius_usergroup.pm b/FS/FS/radius_usergroup.pm
deleted file mode 100644
index 9bba057..0000000
--- a/FS/FS/radius_usergroup.pm
+++ /dev/null
@@ -1,131 +0,0 @@
-package FS::radius_usergroup;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::svc_acct;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::radius_usergroup - Object methods for radius_usergroup records
-
-=head1 SYNOPSIS
-
- use FS::radius_usergroup;
-
- $record = new FS::radius_usergroup \%hash;
- $record = new FS::radius_usergroup { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::radius_usergroup object links an account (see L<FS::svc_acct>) with a
-RADIUS group. FS::radius_usergroup inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item usergroupnum - primary key
-
-=item svcnum - Account (see L<FS::svc_acct>).
-
-=item groupname - group name
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new record. To add the record to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'radius_usergroup'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-#inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-#inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-#inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('usergroupnum')
- || $self->ut_number('svcnum')
- || $self->ut_foreign_key('svcnum','svc_acct','svcnum')
- || $self->ut_text('groupname')
- || $self->SUPER::check
- ;
-}
-
-=item svc_acct
-
-Returns the account associated with this record (see L<FS::svc_acct>).
-
-=cut
-
-sub svc_acct {
- my $self = shift;
- qsearchs('svc_acct', { svcnum => $self->svcnum } );
-}
-
-=back
-
-=head1 BUGS
-
-Don't let 'em get you down.
-
-=head1 SEE ALSO
-
-L<svc_acct>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/rate.pm b/FS/FS/rate.pm
deleted file mode 100644
index a471e2e..0000000
--- a/FS/FS/rate.pm
+++ /dev/null
@@ -1,379 +0,0 @@
-package FS::rate;
-
-use strict;
-use vars qw( @ISA $DEBUG );
-use FS::Record qw( qsearch qsearchs dbh fields );
-use FS::rate_detail;
-
-@ISA = qw(FS::Record);
-
-$DEBUG = 1;
-
-=head1 NAME
-
-FS::rate - Object methods for rate records
-
-=head1 SYNOPSIS
-
- use FS::rate;
-
- $record = new FS::rate \%hash;
- $record = new FS::rate { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::rate object represents an rate plan. FS::rate inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item ratenum - primary key
-
-=item ratename
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new rate plan. To add the rate plan to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'rate'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-Currently available options are: I<rate_detail>
-
-If I<rate_detail> is set to an array reference of FS::rate_detail objects, the
-objects will have their ratenum field set and will be inserted after this
-record.
-
-=cut
-
-sub insert {
- my $self = shift;
- my %options = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->check;
- return $error if $error;
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $options{'rate_detail'} ) {
-
- my( $num, $last, $min_sec ) = (0, time, 5); #progressbar foo
-
- foreach my $rate_detail ( @{$options{'rate_detail'}} ) {
-
- $rate_detail->ratenum($self->ratenum);
- $error = $rate_detail->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $options{'job'} ) {
- $num++;
- if ( time - $min_sec > $last ) {
- my $error = $options{'job'}->update_statustext(
- int( 100 * $num / scalar( @{$options{'rate_detail'}} ) )
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $last = time;
- }
- }
-
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD [ , OPTION => VALUE ... ]
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-Currently available options are: I<rate_detail>
-
-If I<rate_detail> is set to an array reference of FS::rate_detail objects, the
-objects will have their ratenum field set and will be inserted after this
-record. Any existing rate_detail records associated with this record will be
-deleted.
-
-=cut
-
-sub replace {
- my ($new, $old) = (shift, shift);
- my %options = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
-# my @old_rate_detail = ();
-# @old_rate_detail = $old->rate_detail if $options{'rate_detail'};
-
- my $error = $new->SUPER::replace($old);
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
-# foreach my $old_rate_detail ( @old_rate_detail ) {
-#
-# my $error = $old_rate_detail->delete;
-# if ($error) {
-# $dbh->rollback if $oldAutoCommit;
-# return $error;
-# }
-#
-# if ( $options{'job'} ) {
-# $num++;
-# if ( time - $min_sec > $last ) {
-# my $error = $options{'job'}->update_statustext(
-# int( 50 * $num / scalar( @old_rate_detail ) )
-# );
-# if ( $error ) {
-# $dbh->rollback if $oldAutoCommit;
-# return $error;
-# }
-# $last = time;
-# }
-# }
-#
-# }
- if ( $options{'rate_detail'} ) {
- my $sth = $dbh->prepare('DELETE FROM rate_detail WHERE ratenum = ?') or do {
- $dbh->rollback if $oldAutoCommit;
- return $dbh->errstr;
- };
-
- $sth->execute($old->ratenum) or do {
- $dbh->rollback if $oldAutoCommit;
- return $sth->errstr;
- };
-
- my( $num, $last, $min_sec ) = (0, time, 5); #progresbar foo
-# $num = 0;
- foreach my $rate_detail ( @{$options{'rate_detail'}} ) {
-
- $rate_detail->ratenum($new->ratenum);
- $error = $rate_detail->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $options{'job'} ) {
- $num++;
- if ( time - $min_sec > $last ) {
- my $error = $options{'job'}->update_statustext(
- int( 100 * $num / scalar( @{$options{'rate_detail'}} ) )
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $last = time;
- }
- }
-
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid rate plan. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('ratenum')
- || $self->ut_text('ratename')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item dest_detail REGIONNUM | RATE_REGION_OBJECTD
-
-Returns the rate detail (see L<FS::rate_detail>) for this rate to the
-specificed destination.
-
-=cut
-
-sub dest_detail {
- my $self = shift;
- my $regionnum = ref($_[0]) ? shift->regionnum : shift;
- qsearchs( 'rate_detail', { 'ratenum' => $self->ratenum,
- 'dest_regionnum' => $regionnum, } );
-}
-
-=item rate_detail
-
-Returns all region-specific details (see L<FS::rate_detail>) for this rate.
-
-=cut
-
-sub rate_detail {
- my $self = shift;
- qsearch( 'rate_detail', { 'ratenum' => $self->ratenum } );
-}
-
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item process
-
-Experimental job-queue processor for web interface adds/edits
-
-=cut
-
-use Storable qw(thaw);
-use Data::Dumper;
-use MIME::Base64;
-sub process {
- my $job = shift;
-
- my $param = thaw(decode_base64(shift));
- warn Dumper($param) if $DEBUG;
-
- my $old = qsearchs('rate', { 'ratenum' => $param->{'ratenum'} } )
- if $param->{'ratenum'};
-
- my @rate_detail = map {
-
- my $regionnum = $_->regionnum;
- if ( $param->{"sec_granularity$regionnum"} ) {
-
- new FS::rate_detail {
- 'dest_regionnum' => $regionnum,
- map { $_ => $param->{"$_$regionnum"} }
- qw( min_included min_charge sec_granularity )
- };
-
- } else {
-
- new FS::rate_detail {
- 'dest_regionnum' => $regionnum,
- 'min_included' => 0,
- 'min_charge' => 0,
- 'sec_granularity' => '60'
- };
-
- }
-
- } qsearch('rate_region', {} );
-
- my $rate = new FS::rate {
- map { $_ => $param->{$_} }
- fields('rate')
- };
-
- my $error = '';
- if ( $param->{'ratenum'} ) {
- warn "$rate replacing $old (". $param->{'ratenum'}. ")\n" if $DEBUG;
- $error = $rate->replace( $old,
- 'rate_detail' => \@rate_detail,
- 'job' => $job,
- );
- } else {
- warn "inserting $rate\n" if $DEBUG;
- $error = $rate->insert( 'rate_detail' => \@rate_detail,
- 'job' => $job,
- );
- #$ratenum = $rate->getfield('ratenum');
- }
-
- die "$error\n" if $error;
-
-}
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/rate_detail.pm b/FS/FS/rate_detail.pm
deleted file mode 100644
index 6f023f5..0000000
--- a/FS/FS/rate_detail.pm
+++ /dev/null
@@ -1,165 +0,0 @@
-package FS::rate_detail;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::rate;
-use FS::rate_region;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::rate_detail - Object methods for rate_detail records
-
-=head1 SYNOPSIS
-
- use FS::rate_detail;
-
- $record = new FS::rate_detail \%hash;
- $record = new FS::rate_detail { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::rate_detail object represents an call plan rate. FS::rate_detail
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item ratedetailnum - primary key
-
-=item ratenum - rate plan (see L<FS::rate>)
-
-=item orig_regionnum - call origination region
-
-=item dest_regionnum - call destination region
-
-=item min_included - included minutes
-
-=item min_charge - charge per minute
-
-=item sec_granularity - granularity in seconds, i.e. 6 or 60
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new call plan rate. To add the call plan rate to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'rate_detail'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid call plan rate. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('ratedetailnum')
- || $self->ut_foreign_key('ratenum', 'rate', 'ratenum')
- || $self->ut_foreign_keyn('orig_regionnum', 'rate_region', 'regionnum' )
- || $self->ut_foreign_key('dest_regionnum', 'rate_region', 'regionnum' )
- || $self->ut_number('min_included')
-
- #|| $self->ut_money('min_charge')
- #good enough for now...
- || $self->ut_float('min_charge')
-
- || $self->ut_number('sec_granularity')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item orig_region
-
-Returns the origination region (see L<FS::rate_region>) associated with this
-call plan rate.
-
-=cut
-
-sub orig_region {
- my $self = shift;
- qsearchs('rate_region', { 'regionnum' => $self->orig_regionnum } );
-}
-
-=item dest_region
-
-Returns the destination region (see L<FS::rate_region>) associated with this
-call plan rate.
-
-=cut
-
-sub dest_region {
- my $self = shift;
- qsearchs('rate_region', { 'regionnum' => $self->dest_regionnum } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::rate>, L<FS::rate_region>, L<FS::Record>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/rate_prefix.pm b/FS/FS/rate_prefix.pm
deleted file mode 100644
index 42b004f..0000000
--- a/FS/FS/rate_prefix.pm
+++ /dev/null
@@ -1,139 +0,0 @@
-package FS::rate_prefix;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-use FS::rate_region;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::rate_prefix - Object methods for rate_prefix records
-
-=head1 SYNOPSIS
-
- use FS::rate_prefix;
-
- $record = new FS::rate_prefix \%hash;
- $record = new FS::rate_prefix { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::rate_prefix object represents an call rating prefix. FS::rate_prefix
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item prefixnum - primary key
-
-=item regionnum - call ration region (see L<FS::rate_region>)
-
-=item countrycode
-
-=item npa
-
-=item nxx
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new prefix. To add the prefix to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'rate_prefix'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid prefix. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('prefixnum')
- || $self->ut_foreign_key('regionnum', 'rate_region', 'regionnum' )
- || $self->ut_number('countrycode')
- || $self->ut_numbern('npa')
- || $self->ut_numbern('nxx')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item rate_region
-
-Returns the rate region (see L<FS::rate_region>) for this prefix.
-
-=cut
-
-sub rate_region {
- my $self = shift;
- qsearchs('rate_region', { 'regionnum' => $self->regionnum } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::rate_region>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/rate_region.pm b/FS/FS/rate_region.pm
deleted file mode 100644
index 65dfd2a..0000000
--- a/FS/FS/rate_region.pm
+++ /dev/null
@@ -1,313 +0,0 @@
-package FS::rate_region;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::rate_prefix;
-use FS::rate_detail;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::rate_region - Object methods for rate_region records
-
-=head1 SYNOPSIS
-
- use FS::rate_region;
-
- $record = new FS::rate_region \%hash;
- $record = new FS::rate_region { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::rate_region object represents an call rating region. FS::rate_region
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item regionnum - primary key
-
-=item regionname
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new region. To add the region to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'rate_region'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-Currently available options are: I<rate_prefix> and I<dest_detail>
-
-If I<rate_prefix> is set to an array reference of FS::rate_prefix objects, the
-objects will have their regionnum field set and will be inserted after this
-record.
-
-If I<dest_detail> is set to an array reference of FS::rate_detail objects, the
-objects will have their dest_regionnum field set and will be inserted after
-this record.
-
-
-=cut
-
-sub insert {
- my $self = shift;
- my %options = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->check;
- return $error if $error;
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $options{'rate_prefix'} ) {
- foreach my $rate_prefix ( @{$options{'rate_prefix'}} ) {
- $rate_prefix->regionnum($self->regionnum);
- $error = $rate_prefix->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- if ( $options{'dest_detail'} ) {
- foreach my $rate_detail ( @{$options{'dest_detail'}} ) {
- $rate_detail->dest_regionnum($self->regionnum);
- $error = $rate_detail->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD [ , OPTION => VALUE ... ]
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-Currently available options are: I<rate_prefix> and I<dest_detail>
-
-If I<rate_prefix> is set to an array reference of FS::rate_prefix objects, the
-objects will have their regionnum field set and will be inserted after this
-record. Any existing rate_prefix records associated with this record will be
-deleted.
-
-If I<dest_detail> is set to an array reference of FS::rate_detail objects, the
-objects will have their dest_regionnum field set and will be inserted after
-this record. Any existing rate_detail records associated with this record will
-be deleted.
-
-=cut
-
-sub replace {
- my ($new, $old) = (shift, shift);
- my %options = @_;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my @old_rate_prefix = ();
- @old_rate_prefix = $old->rate_prefix if $options{'rate_prefix'};
- my @old_dest_detail = ();
- @old_dest_detail = $old->dest_detail if $options{'dest_detail'};
-
- my $error = $new->SUPER::replace($old);
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- foreach my $old_rate_prefix ( @old_rate_prefix ) {
- my $error = $old_rate_prefix->delete;
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- foreach my $old_dest_detail ( @old_dest_detail ) {
- my $error = $old_dest_detail->delete;
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- foreach my $rate_prefix ( @{$options{'rate_prefix'}} ) {
- $rate_prefix->regionnum($new->regionnum);
- $error = $rate_prefix->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- foreach my $rate_detail ( @{$options{'dest_detail'}} ) {
- $rate_detail->dest_regionnum($new->regionnum);
- $error = $rate_detail->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item check
-
-Checks all fields to make sure this is a valid region. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('regionnum')
- || $self->ut_text('regionname')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item rate_prefix
-
-Returns all prefixes (see L<FS::rate_prefix>) for this region.
-
-=cut
-
-sub rate_prefix {
- my $self = shift;
-
- sort { $a->countrycode cmp $b->countrycode
- or $a->npa cmp $b->npa
- or $a->nxx cmp $b->nxx
- }
- qsearch( 'rate_prefix', { 'regionnum' => $self->regionnum } );
-}
-
-=item dest_detail
-
-Returns all rate details (see L<FS::rate_detail>) for this region as a
-destionation.
-
-=cut
-
-sub dest_detail {
- my $self = shift;
- qsearch( 'rate_detail', { 'dest_regionnum' => $self->regionnum, } );
-}
-
-=item prefixes_short
-
-Returns a string representing all the prefixes for this region.
-
-=cut
-
-sub prefixes_short {
- my $self = shift;
-
- my $countrycode = '';
- my $out = '';
-
- foreach my $rate_prefix ( $self->rate_prefix ) {
- if ( $countrycode ne $rate_prefix->countrycode ) {
- $out =~ s/, $//;
- $countrycode = $rate_prefix->countrycode;
- $out.= " +$countrycode ";
- }
- my $npa = $rate_prefix->npa;
- if ( $countrycode eq '1' ) {
- $out .= '('. substr( $npa, 0, 3 ). ')';
- $out .= ' '. substr( $npa, 3 ) if length($npa) > 3;
- } else {
- $out .= $rate_prefix->npa;
- }
- $out .= ', ';
- }
- $out =~ s/, $//;
-
- $out;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/reg_code.pm b/FS/FS/reg_code.pm
deleted file mode 100644
index f48ccf0..0000000
--- a/FS/FS/reg_code.pm
+++ /dev/null
@@ -1,223 +0,0 @@
-package FS::reg_code;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw(qsearch dbh);
-use FS::agent;
-use FS::reg_code_pkg;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::reg_code - One-time registration codes
-
-=head1 SYNOPSIS
-
- use FS::reg_code;
-
- $record = new FS::reg_code \%hash;
- $record = new FS::reg_code { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::reg_code object is a one-time registration code. FS::reg_code inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item codenum - primary key
-
-=item code - registration code string
-
-=item agentnum - Agent (see L<FS::agent>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new registration code. To add the code to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'reg_code'; }
-
-=item insert [ PKGPART_ARRAYREF ]
-
-Adds this record to the database. If an arrayref of pkgparts
-(see L<FS::part_pkg>) is specified, the appropriate reg_code_pkg records
-(see L<FS::reg_code_pkg>) will be inserted.
-
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub insert {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( @_ ) {
- my $pkgparts = shift;
- foreach my $pkgpart ( @$pkgparts ) {
- my $reg_code_pkg = new FS::reg_code_pkg ( {
- 'codenum' => $self->codenum,
- 'pkgpart' => $pkgpart,
- } );
- $error = $reg_code_pkg->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item delete
-
-Delete this record (and all associated reg_code_pkg records) from the database.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $reg_code_pkg ( $self->reg_code_pkg ) {
- my $error = $reg_code_pkg->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid registration code. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('codenum')
- || $self->ut_alpha('code')
- || $self->ut_foreign_key('agentnum', 'agent', 'agentnum')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item part_pkg
-
-Returns all package definitions (see L<FS::part_pkg> for this registration
-code.
-
-=cut
-
-sub part_pkg {
- my $self = shift;
- map { $_->part_pkg } $self->reg_code_pkg;
-}
-
-=item reg_code_pkg
-
-Returns all FS::reg_code_pkg records for this registration code.
-
-=cut
-
-sub reg_code_pkg {
- my $self = shift;
- qsearch('reg_code_pkg', { 'codenum' => $self->codenum } );
-}
-
-
-=back
-
-=head1 BUGS
-
-Feeping creaturitis.
-
-=head1 SEE ALSO
-
-L<FS::reg_code_pkg>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/reg_code_pkg.pm b/FS/FS/reg_code_pkg.pm
deleted file mode 100644
index 837b755..0000000
--- a/FS/FS/reg_code_pkg.pm
+++ /dev/null
@@ -1,139 +0,0 @@
-package FS::reg_code_pkg;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw(qsearchs);
-use FS::reg_code;
-use FS::part_pkg;
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::reg_code_pkg - Class linking registration codes (see L<FS::reg_code>) with package definitions (see L<FS::part_pkg>)
-
-=head1 SYNOPSIS
-
- use FS::reg_code_pkg;
-
- $record = new FS::reg_code_pkg \%hash;
- $record = new FS::reg_code_pkg { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::reg_code_pkg object links a registration code to a package definition.
-FS::table_name inherits from FS::Record. The following fields are currently
-supported:
-
-=over 4
-
-=item codepkgnum - primary key
-
-=item codenum - registration code (see L<FS::reg_code>)
-
-=item pkgpart - package definition (see L<FS::part_pkg>)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new registration code. To add the registration code to the database,
-see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'reg_code_pkg'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('codepkgnum')
- || $self->ut_foreign_key('codenum', 'reg_code', 'codenum')
- || $self->ut_foreign_key('pkgpart', 'part_pkg', 'pkgpart')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item part_pkg
-
-Returns the package definition (see L<FS::part_pkg>)
-
-=cut
-
-sub part_pkg {
- my $self = shift;
- qsearchs('part_pkg', { 'pkgpart' => $self->pkgpart } );
-}
-
-=back
-
-=head1 BUGS
-
-Feeping creaturitis.
-
-=head1 SEE ALSO
-
-L<FS::reg_code_pkg>, L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/router.pm b/FS/FS/router.pm
deleted file mode 100755
index 88ba990..0000000
--- a/FS/FS/router.pm
+++ /dev/null
@@ -1,140 +0,0 @@
-package FS::router;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs qsearch );
-use FS::addr_block;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::router - Object methods for router records
-
-=head1 SYNOPSIS
-
- use FS::router;
-
- $record = new FS::router \%hash;
- $record = new FS::router { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::router record describes a broadband router, such as a DSLAM or a wireless
- access point. FS::router inherits from FS::Record. The following
-fields are currently supported:
-
-=over 4
-
-=item routernum - primary key
-
-=item routername - descriptive name for the router
-
-=item svcnum - svcnum of the owning FS::svc_broadband, if appropriate
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new record. To add the record to the database, see "insert".
-
-=cut
-
-sub table { 'router'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('routernum')
- || $self->ut_text('routername');
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=item addr_block
-
-Returns a list of FS::addr_block objects (address blocks) associated
-with this object.
-
-=cut
-
-sub addr_block {
- my $self = shift;
- return qsearch('addr_block', { routernum => $self->routernum });
-}
-
-=item part_svc_router
-
-Returns a list of FS::part_svc_router objects associated with this
-object. This is unlikely to be useful for any purpose other than retrieving
-the associated FS::part_svc objects. See below.
-
-=cut
-
-sub part_svc_router {
- my $self = shift;
- return qsearch('part_svc_router', { routernum => $self->routernum });
-}
-
-=item part_svc
-
-Returns a list of FS::part_svc objects associated with this object.
-
-=cut
-
-sub part_svc {
- my $self = shift;
- return map { qsearchs('part_svc', { svcpart => $_->svcpart }) }
- $self->part_svc_router;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-FS::svc_broadband, FS::router, FS::addr_block, FS::part_svc,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/session.pm b/FS/FS/session.pm
deleted file mode 100644
index 615c8ae..0000000
--- a/FS/FS/session.pm
+++ /dev/null
@@ -1,265 +0,0 @@
-package FS::session;
-
-use strict;
-use vars qw( @ISA $conf $start $stop );
-use FS::UID qw( dbh );
-use FS::Record qw( qsearchs );
-use FS::svc_acct;
-use FS::port;
-use FS::nas;
-
-@ISA = qw(FS::Record);
-
-$FS::UID::callback{'FS::session'} = sub {
- $conf = new FS::Conf;
- $start = $conf->exists('session-start') ? $conf->config('session-start') : '';
- $stop = $conf->exists('session-stop') ? $conf->config('session-stop') : '';
-};
-
-=head1 NAME
-
-FS::session - Object methods for session records
-
-=head1 SYNOPSIS
-
- use FS::session;
-
- $record = new FS::session \%hash;
- $record = new FS::session {
- 'portnum' => 1,
- 'svcnum' => 2,
- 'login' => $timestamp,
- 'logout' => $timestamp,
- };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->nas_heartbeat($timestamp);
-
-=head1 DESCRIPTION
-
-An FS::session object represents an user login session. FS::session inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item sessionnum - primary key
-
-=item portnum - NAS port for this session - see L<FS::port>
-
-=item svcnum - User for this session - see L<FS::svc_acct>
-
-=item login - timestamp indicating the beginning of this user session.
-
-=item logout - timestamp indicating the end of this user session. May be null,
- which indicates a currently open session.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new session. To add the session to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'session'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false. If the `login' field is empty, it is replaced with
-the current time.
-
-=cut
-
-sub insert {
- my $self = shift;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- $error = $self->check;
- return $error if $error;
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- if ( qsearchs('session', { 'portnum' => $self->portnum, 'logout' => '' } ) ) {
- $dbh->rollback if $oldAutoCommit;
- return "a session on that port is already open!";
- }
-
- $self->setfield('login', time()) unless $self->getfield('login');
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $self->nas_heartbeat($self->getfield('login'));
-
- #session-starting callback
- #redundant with heartbeat, yuck
- my $port = qsearchs('port',{'portnum'=>$self->portnum});
- my $nas = qsearchs('nas',{'nasnum'=>$port->nasnum});
- #kcuy
- my( $ip, $nasip, $nasfqdn ) = ( $port->ip, $nas->nasip, $nas->nasfqdn );
- system( eval qq("$start") ) if $start;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false. If the `logout' field is empty,
-it is replaced with the current time.
-
-=cut
-
-sub replace {
- my($self, $old) = @_;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $error = $self->check;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $self->setfield('logout', time()) unless $self->getfield('logout');
-
- $error = $self->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $self->nas_heartbeat($self->getfield('logout'));
-
- #session-ending callback
- #redundant with heartbeat, yuck
- my $port = qsearchs('port',{'portnum'=>$self->portnum});
- my $nas = qsearchs('nas',{'nasnum'=>$port->nasnum});
- #kcuy
- my( $ip, $nasip, $nasfqdn ) = ( $port->ip, $nas->nasip, $nas->nasfqdn );
- system( eval qq("$stop") ) if $stop;
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item check
-
-Checks all fields to make sure this is a valid session. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
- my $error =
- $self->ut_numbern('sessionnum')
- || $self->ut_number('portnum')
- || $self->ut_number('svcnum')
- || $self->ut_numbern('login')
- || $self->ut_numbern('logout')
- ;
- return $error if $error;
- return "Unknown svcnum"
- unless qsearchs('svc_acct', { 'svcnum' => $self->svcnum } );
- $self->SUPER::check;
-}
-
-=item nas_heartbeat
-
-Heartbeats the nas associated with this session (see L<FS::nas>).
-
-=cut
-
-sub nas_heartbeat {
- my $self = shift;
- my $port = qsearchs('port',{'portnum'=>$self->portnum});
- my $nas = qsearchs('nas',{'nasnum'=>$port->nasnum});
- $nas->heartbeat(shift);
-}
-
-=item svc_acct
-
-Returns the svc_acct record associated with this session (see L<FS::svc_acct>).
-
-=cut
-
-sub svc_acct {
- my $self = shift;
- qsearchs('svc_acct', { 'svcnum' => $self->svcnum } );
-}
-
-=back
-
-=head1 BUGS
-
-Maybe you shouldn't be able to insert a session if there's currently an open
-session on that port. Or maybe the open session on that port should be flagged
-as problematic? autoclosed? *sigh*
-
-Hmm, sessions refer to current svc_acct records... probably need to constrain
-deletions to svc_acct records such that no svc_acct records are deleted which
-have a session (even if long-closed).
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_Common.pm b/FS/FS/svc_Common.pm
deleted file mode 100644
index 907f35f..0000000
--- a/FS/FS/svc_Common.pm
+++ /dev/null
@@ -1,779 +0,0 @@
-package FS::svc_Common;
-
-use strict;
-use vars qw( @ISA $noexport_hack $DEBUG );
-use Carp;
-use FS::Record qw( qsearch qsearchs fields dbh );
-use FS::cust_main_Mixin;
-use FS::cust_svc;
-use FS::part_svc;
-use FS::queue;
-use FS::cust_main;
-use FS::inventory_item;
-use FS::inventory_class;
-
-@ISA = qw( FS::cust_main_Mixin FS::Record );
-
-$DEBUG = 1;
-
-=head1 NAME
-
-FS::svc_Common - Object method for all svc_ records
-
-=head1 SYNOPSIS
-
-use FS::svc_Common;
-
-@ISA = qw( FS::svc_Common );
-
-=head1 DESCRIPTION
-
-FS::svc_Common is intended as a base class for table-specific classes to
-inherit from, i.e. FS::svc_acct. FS::svc_Common inherits from FS::Record.
-
-=head1 METHODS
-
-=over 4
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
-
- unless ( defined ( $self->table ) ) {
- $self->{'Table'} = shift;
- carp "warning: FS::Record::new called with table name ". $self->{'Table'};
- }
-
- #$self->{'Hash'} = shift;
- my $newhash = shift;
- $self->{'Hash'} = { map { $_ => $newhash->{$_} } qw(svcnum svcpart) };
-
- $self->setdefault( $self->_fieldhandlers )
- unless $self->svcnum;
-
- $self->{'Hash'}{$_} = $newhash->{$_}
- foreach grep { defined($newhash->{$_}) && length($newhash->{$_}) }
- keys %$newhash;
-
- foreach my $field ( grep !defined($self->{'Hash'}{$_}), $self->fields ) {
- $self->{'Hash'}{$field}='';
- }
-
- $self->_rebless if $self->can('_rebless');
-
- $self->{'modified'} = 0;
-
- $self->_cache($self->{'Hash'}, shift) if $self->can('_cache') && @_;
-
- $self;
-}
-
-#empty default
-sub _fieldhandlers { {}; }
-
-sub virtual_fields {
-
- # This restricts the fields based on part_svc_column and the svcpart of
- # the service. There are four possible cases:
- # 1. svcpart passed as part of the svc_x hash.
- # 2. svcpart fetched via cust_svc based on svcnum.
- # 3. No svcnum or svcpart. In this case, return ALL the fields with
- # dbtable eq $self->table.
- # 4. Called via "fields('svc_acct')" or something similar. In this case
- # there is no $self object.
-
- my $self = shift;
- my $svcpart;
- my @vfields = $self->SUPER::virtual_fields;
-
- return @vfields unless (ref $self); # Case 4
-
- if ($self->svcpart) { # Case 1
- $svcpart = $self->svcpart;
- } elsif ( $self->svcnum
- && qsearchs('cust_svc',{'svcnum'=>$self->svcnum} )
- ) { #Case 2
- $svcpart = $self->cust_svc->svcpart;
- } else { # Case 3
- $svcpart = '';
- }
-
- if ($svcpart) { #Cases 1 and 2
- my %flags = map { $_->columnname, $_->columnflag } (
- qsearch ('part_svc_column', { svcpart => $svcpart } )
- );
- return grep { not ($flags{$_} eq 'X') } @vfields;
- } else { # Case 3
- return @vfields;
- }
- return ();
-}
-
-=item check
-
-Checks the validity of fields in this record.
-
-At present, this does nothing but call FS::Record::check (which, in turn,
-does nothing but run virtual field checks).
-
-=cut
-
-sub check {
- my $self = shift;
- $self->SUPER::check;
-}
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-Currently available options are: I<jobnums>, I<child_objects> and
-I<depend_jobnum>.
-
-If I<jobnum> is set to an array reference, the jobnums of any export jobs will
-be added to the referenced array.
-
-If I<child_objects> is set to an array reference of FS::tablename objects (for
-example, FS::acct_snarf objects), they will have their svcnum field set and
-will be inserted after this record, but before any exports are run. Each
-element of the array can also optionally be a two-element array reference
-containing the child object and the name of an alternate field to be filled in
-with the newly-inserted svcnum, for example C<[ $svc_forward, 'srcsvc' ]>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-=cut
-
-sub insert {
- my $self = shift;
- my %options = @_;
- warn "FS::svc_Common::insert called with options ".
- join(', ', map { "$_: $options{$_}" } keys %options ). "\n"
- if $DEBUG;
-
- my @jobnums = ();
- local $FS::queue::jobnums = \@jobnums;
- warn "FS::svc_Common::insert: set \$FS::queue::jobnums to $FS::queue::jobnums"
- if $DEBUG;
- my $objects = $options{'child_objects'} || [];
- my $depend_jobnums = $options{'depend_jobnum'} || [];
- $depend_jobnums = [ $depend_jobnums ] unless ref($depend_jobnums);
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $error = $self->check;
- return $error if $error;
-
- my $svcnum = $self->svcnum;
- my $cust_svc = $svcnum ? qsearchs('cust_svc',{'svcnum'=>$self->svcnum}) : '';
- #unless ( $svcnum ) {
- if ( !$svcnum or !$cust_svc ) {
- $cust_svc = new FS::cust_svc ( {
- #hua?# 'svcnum' => $svcnum,
- 'svcnum' => $self->svcnum,
- 'pkgnum' => $self->pkgnum,
- 'svcpart' => $self->svcpart,
- } );
- $error = $cust_svc->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $svcnum = $self->svcnum($cust_svc->svcnum);
- } else {
- #$cust_svc = qsearchs('cust_svc',{'svcnum'=>$self->svcnum});
- unless ( $cust_svc ) {
- $dbh->rollback if $oldAutoCommit;
- return "no cust_svc record found for svcnum ". $self->svcnum;
- }
- $self->pkgnum($cust_svc->pkgnum);
- $self->svcpart($cust_svc->svcpart);
- }
-
- $error = $self->set_auto_inventory;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $error = $self->SUPER::insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- foreach my $object ( @$objects ) {
- my($field, $obj);
- if ( ref($object) eq 'ARRAY' ) {
- ($obj, $field) = @$object;
- } else {
- $obj = $object;
- $field = 'svcnum';
- }
- $obj->$field($self->svcnum);
- $error = $obj->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- #new-style exports!
- unless ( $noexport_hack ) {
-
- warn "FS::svc_Common::insert: \$FS::queue::jobnums is $FS::queue::jobnums"
- if $DEBUG;
-
- foreach my $part_export ( $self->cust_svc->part_svc->part_export ) {
- my $error = $part_export->export_insert($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "exporting to ". $part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
-
- foreach my $depend_jobnum ( @$depend_jobnums ) {
- warn "inserting dependancies on supplied job $depend_jobnum\n"
- if $DEBUG;
- foreach my $jobnum ( @jobnums ) {
- my $queue = qsearchs('queue', { 'jobnum' => $jobnum } );
- warn "inserting dependancy for job $jobnum on $depend_jobnum\n"
- if $DEBUG;
- my $error = $queue->depend_insert($depend_jobnum);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error queuing job dependancy: $error";
- }
- }
- }
-
- }
-
- if ( exists $options{'jobnums'} ) {
- push @{ $options{'jobnums'} }, @jobnums;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item delete
-
-Deletes this account from the database. If there is an error, returns the
-error, otherwise returns false.
-
-The corresponding FS::cust_svc record will be deleted as well.
-
-=cut
-
-sub delete {
- my $self = shift;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $svcnum = $self->svcnum;
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $error = $self->SUPER::delete;
- return $error if $error;
-
- #new-style exports!
- unless ( $noexport_hack ) {
- foreach my $part_export ( $self->cust_svc->part_svc->part_export ) {
- $error = $part_export->export_delete($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "exporting to ". $part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
- }
-
- $error = $self->return_inventory;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error returning inventory: $error";
- }
-
- my $cust_svc = $self->cust_svc;
- $error = $cust_svc->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-sub replace {
- my ($new, $old) = (shift, shift);
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $new->set_auto_inventory;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $error = $new->SUPER::replace($old);
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- #new-style exports!
- unless ( $noexport_hack ) {
-
- #not quite false laziness, but same pattern as FS::svc_acct::replace and
- #FS::part_export::sqlradius::_export_replace. List::Compare or something
- #would be useful but too much of a pain in the ass to deploy
-
- my @old_part_export = $old->cust_svc->part_svc->part_export;
- my %old_exportnum = map { $_->exportnum => 1 } @old_part_export;
- my @new_part_export =
- $new->svcpart
- ? qsearchs('part_svc', { svcpart=>$new->svcpart } )->part_export
- : $new->cust_svc->part_svc->part_export;
- my %new_exportnum = map { $_->exportnum => 1 } @new_part_export;
-
- foreach my $delete_part_export (
- grep { ! $new_exportnum{$_->exportnum} } @old_part_export
- ) {
- my $error = $delete_part_export->export_delete($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error deleting, export to ". $delete_part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
-
- foreach my $replace_part_export (
- grep { $old_exportnum{$_->exportnum} } @new_part_export
- ) {
- my $error = $replace_part_export->export_replace($new,$old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error exporting to ". $replace_part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
-
- foreach my $insert_part_export (
- grep { ! $old_exportnum{$_->exportnum} } @new_part_export
- ) {
- my $error = $insert_part_export->export_insert($new);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error inserting export to ". $insert_part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-
-=item setfixed
-
-Sets any fixed fields for this service (see L<FS::part_svc>). If there is an
-error, returns the error, otherwise returns the FS::part_svc object (use ref()
-to test the return). Usually called by the check method.
-
-=cut
-
-sub setfixed {
- my $self = shift;
- $self->setx('F', @_);
-}
-
-=item setdefault
-
-Sets all fields to their defaults (see L<FS::part_svc>), overriding their
-current values. If there is an error, returns the error, otherwise returns
-the FS::part_svc object (use ref() to test the return).
-
-=cut
-
-sub setdefault {
- my $self = shift;
- $self->setx('D', @_ );
-}
-
-=item set_default_and_fixed
-
-=cut
-
-sub set_default_and_fixed {
- my $self = shift;
- $self->setx( [ 'D', 'F' ], @_ );
-}
-
-=item setx FLAG | FLAG_ARRAYREF , [ CALLBACK_HASHREF ]
-
-Sets fields according to the passed in flag or arrayref of flags.
-
-Optionally, a hashref of field names and callback coderefs can be passed.
-If a coderef exists for a given field name, instead of setting the field,
-the coderef is called with the column value (part_svc_column.columnvalue)
-as the single parameter.
-
-=cut
-
-sub setx {
- my $self = shift;
- my $x = shift;
- my @x = ref($x) ? @$x : ($x);
- my $coderef = scalar(@_) ? shift : $self->_fieldhandlers;
-
- my $error =
- $self->ut_numbern('svcnum')
- ;
- return $error if $error;
-
- my $part_svc = $self->part_svc;
- return "Unkonwn svcpart" unless $part_svc;
-
- #set default/fixed/whatever fields from part_svc
-
- foreach my $part_svc_column (
- grep { my $f = $_->columnflag; grep { $f eq $_ } @x } #columnflag in @x
- $part_svc->all_part_svc_column
- ) {
-
- my $columnname = $part_svc_column->columnname;
- my $columnvalue = $part_svc_column->columnvalue;
-
- $columnvalue = &{ $coderef->{$columnname} }( $self, $columnvalue )
- if exists( $coderef->{$columnname} );
- $self->setfield( $columnname, $columnvalue );
-
- }
-
- $part_svc;
-
-}
-
-sub part_svc {
- my $self = shift;
-
- #get part_svc
- my $svcpart;
- if ( $self->get('svcpart') ) {
- $svcpart = $self->get('svcpart');
- } elsif ( $self->svcnum && qsearchs('cust_svc', {'svcnum'=>$self->svcnum}) ) {
- my $cust_svc = $self->cust_svc;
- return "Unknown svcnum" unless $cust_svc;
- $svcpart = $cust_svc->svcpart;
- }
-
- qsearchs( 'part_svc', { 'svcpart' => $svcpart } );
-
-}
-
-=item set_auto_inventory
-
-Sets any fields which auto-populate from inventory (see L<FS::part_svc>).
-If there is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub set_auto_inventory {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('svcnum')
- ;
- return $error if $error;
-
- my $part_svc = $self->part_svc;
- return "Unkonwn svcpart" unless $part_svc;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #set default/fixed/whatever fields from part_svc
- my $table = $self->table;
- foreach my $field ( grep { $_ ne 'svcnum' } $self->fields ) {
- my $part_svc_column = $part_svc->part_svc_column($field);
- if ( $part_svc_column->columnflag eq 'A' && $self->$field() eq '' ) {
-
- my $classnum = $part_svc_column->columnvalue;
- my $inventory_item = qsearchs({
- 'table' => 'inventory_item',
- 'hashref' => { 'classnum' => $classnum,
- 'svcnum' => '',
- },
- 'extra_sql' => 'LIMIT 1 FOR UPDATE',
- });
-
- unless ( $inventory_item ) {
- $dbh->rollback if $oldAutoCommit;
- my $inventory_class =
- qsearchs('inventory_class', { 'classnum' => $classnum } );
- return "Can't find inventory_class.classnum $classnum"
- unless $inventory_class;
- return "Out of ". $inventory_class->classname. "s\n"; #Lingua:: BS
- #for pluralizing
- }
-
- $inventory_item->svcnum( $self->svcnum );
- my $ierror = $inventory_item->replace();
- if ( $ierror ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error provisioning inventory: $ierror";
-
- }
-
- $self->setfield( $field, $inventory_item->item );
-
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-
-}
-
-=item return_inventory
-
-=cut
-
-sub return_inventory {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $inventory_item ( $self->inventory_item ) {
- $inventory_item->svcnum('');
- my $error = $inventory_item->replace();
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error returning inventory: $error";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- '';
-}
-
-=item inventory_item
-
-Returns the inventory items associated with this svc_ record, as
-FS::inventory_item objects (see L<FS::inventory_item>.
-
-=cut
-
-sub inventory_item {
- my $self = shift;
- qsearch({
- 'table' => 'inventory_item',
- 'hashref' => { 'svcnum' => $self->svcnum, },
- });
-}
-
-=item cust_svc
-
-Returns the cust_svc record associated with this svc_ record, as a FS::cust_svc
-object (see L<FS::cust_svc>).
-
-=cut
-
-sub cust_svc {
- my $self = shift;
- qsearchs('cust_svc', { 'svcnum' => $self->svcnum } );
-}
-
-=item suspend
-
-Runs export_suspend callbacks.
-
-=cut
-
-sub suspend {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #new-style exports!
- unless ( $noexport_hack ) {
- foreach my $part_export ( $self->cust_svc->part_svc->part_export ) {
- my $error = $part_export->export_suspend($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error exporting to ". $part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item unsuspend
-
-Runs export_unsuspend callbacks.
-
-=cut
-
-sub unsuspend {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #new-style exports!
- unless ( $noexport_hack ) {
- foreach my $part_export ( $self->cust_svc->part_svc->part_export ) {
- my $error = $part_export->export_unsuspend($self);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error exporting to ". $part_export->exporttype.
- " (transaction rolled back): $error";
- }
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-=item cancel
-
-Stub - returns false (no error) so derived classes don't need to define these
-methods. Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=cut
-
-sub cancel { ''; }
-
-=item clone_suspended
-
-Constructor used by FS::part_export::_export_suspend fallback. Stub returning
-same object for svc_ classes which don't implement a suspension fallback
-(everything except svc_acct at the moment). Document better.
-
-=cut
-
-sub clone_suspended {
- shift;
-}
-
-=item clone_kludge_unsuspend
-
-Constructor used by FS::part_export::_export_unsuspend fallback. Stub returning
-same object for svc_ classes which don't implement a suspension fallback
-(everything except svc_acct at the moment). Document better.
-
-=cut
-
-sub clone_kludge_unsuspend {
- shift;
-}
-
-=back
-
-=head1 BUGS
-
-The setfixed method return value.
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::cust_svc>, L<FS::part_svc>, L<FS::cust_pkg>, schema.html
-from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm
deleted file mode 100644
index b201f23..0000000
--- a/FS/FS/svc_acct.pm
+++ /dev/null
@@ -1,1761 +0,0 @@
-package FS::svc_acct;
-
-use strict;
-use vars qw( @ISA $DEBUG $me $conf $skip_fuzzyfiles
- $dir_prefix @shells $usernamemin
- $usernamemax $passwordmin $passwordmax
- $username_ampersand $username_letter $username_letterfirst
- $username_noperiod $username_nounderscore $username_nodash
- $username_uppercase $username_percent
- $password_noampersand $password_noexclamation
- $welcome_template $welcome_from $welcome_subject $welcome_mimetype
- $smtpmachine
- $radius_password $radius_ip
- $dirhash
- @saltset @pw_set );
-use Carp;
-use Fcntl qw(:flock);
-use Date::Format;
-use Crypt::PasswdMD5 1.2;
-use Data::Dumper;
-use FS::UID qw( datasrc );
-use FS::Conf;
-use FS::Record qw( qsearch qsearchs fields dbh dbdef );
-use FS::Msgcat qw(gettext);
-use FS::svc_Common;
-use FS::cust_svc;
-use FS::part_svc;
-use FS::svc_acct_pop;
-use FS::cust_main_invoice;
-use FS::svc_domain;
-use FS::raddb;
-use FS::queue;
-use FS::radius_usergroup;
-use FS::export_svc;
-use FS::part_export;
-use FS::svc_forward;
-use FS::svc_www;
-use FS::cdr;
-
-@ISA = qw( FS::svc_Common );
-
-$DEBUG = 0;
-$me = '[FS::svc_acct]';
-
-#ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::svc_acct'} = sub {
- $conf = new FS::Conf;
- $dir_prefix = $conf->config('home');
- @shells = $conf->config('shells');
- $usernamemin = $conf->config('usernamemin') || 2;
- $usernamemax = $conf->config('usernamemax');
- $passwordmin = $conf->config('passwordmin') || 6;
- $passwordmax = $conf->config('passwordmax') || 8;
- $username_letter = $conf->exists('username-letter');
- $username_letterfirst = $conf->exists('username-letterfirst');
- $username_noperiod = $conf->exists('username-noperiod');
- $username_nounderscore = $conf->exists('username-nounderscore');
- $username_nodash = $conf->exists('username-nodash');
- $username_uppercase = $conf->exists('username-uppercase');
- $username_ampersand = $conf->exists('username-ampersand');
- $username_percent = $conf->exists('username-percent');
- $password_noampersand = $conf->exists('password-noexclamation');
- $password_noexclamation = $conf->exists('password-noexclamation');
- $dirhash = $conf->config('dirhash') || 0;
- if ( $conf->exists('welcome_email') ) {
- $welcome_template = new Text::Template (
- TYPE => 'ARRAY',
- SOURCE => [ map "$_\n", $conf->config('welcome_email') ]
- ) or warn "can't create welcome email template: $Text::Template::ERROR";
- $welcome_from = $conf->config('welcome_email-from'); # || 'your-isp-is-dum'
- $welcome_subject = $conf->config('welcome_email-subject') || 'Welcome';
- $welcome_mimetype = $conf->config('welcome_email-mimetype') || 'text/plain';
- } else {
- $welcome_template = '';
- $welcome_from = '';
- $welcome_subject = '';
- $welcome_mimetype = '';
- }
- $smtpmachine = $conf->config('smtpmachine');
- $radius_password = $conf->config('radius-password') || 'Password';
- $radius_ip = $conf->config('radius-ip') || 'Framed-IP-Address';
-};
-
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-@pw_set = ( 'a'..'z', 'A'..'Z', '0'..'9', '(', ')', '#', '!', '.', ',' );
-
-sub _cache {
- my $self = shift;
- my ( $hashref, $cache ) = @_;
- if ( $hashref->{'svc_acct_svcnum'} ) {
- $self->{'_domsvc'} = FS::svc_domain->new( {
- 'svcnum' => $hashref->{'domsvc'},
- 'domain' => $hashref->{'svc_acct_domain'},
- 'catchall' => $hashref->{'svc_acct_catchall'},
- } );
- }
-}
-
-=head1 NAME
-
-FS::svc_acct - Object methods for svc_acct records
-
-=head1 SYNOPSIS
-
- use FS::svc_acct;
-
- $record = new FS::svc_acct \%hash;
- $record = new FS::svc_acct { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
- %hash = $record->radius;
-
- %hash = $record->radius_reply;
-
- %hash = $record->radius_check;
-
- $domain = $record->domain;
-
- $svc_domain = $record->svc_domain;
-
- $email = $record->email;
-
- $seconds_since = $record->seconds_since($timestamp);
-
-=head1 DESCRIPTION
-
-An FS::svc_acct object represents an account. FS::svc_acct inherits from
-FS::svc_Common. The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key (assigned automatcially for new accounts)
-
-=item username
-
-=item _password - generated if blank
-
-=item sec_phrase - security phrase
-
-=item popnum - Point of presence (see L<FS::svc_acct_pop>)
-
-=item uid
-
-=item gid
-
-=item finger - GECOS
-
-=item dir - set automatically if blank (and uid is not)
-
-=item shell
-
-=item quota - (unimplementd)
-
-=item slipip - IP address
-
-=item seconds -
-
-=item domsvc - svcnum from svc_domain
-
-=item radius_I<Radius_Attribute> - I<Radius-Attribute> (reply)
-
-=item rc_I<Radius_Attribute> - I<Radius-Attribute> (check)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new account. To add the account to the database, see L<"insert">.
-
-=cut
-
-sub table { 'svc_acct'; }
-
-sub _fieldhandlers {
- {
- #false laziness with edit/svc_acct.cgi
- 'usergroup' => sub {
- my( $self, $groups ) = @_;
- if ( ref($groups) eq 'ARRAY' ) {
- $groups;
- } elsif ( length($groups) ) {
- [ split(/\s*,\s*/, $groups) ];
- } else {
- [];
- }
- },
- };
-}
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this account to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-The additional field I<usergroup> can optionally be defined; if so it should
-contain an arrayref of group names. See L<FS::radius_usergroup>.
-
-The additional field I<child_objects> can optionally be defined; if so it
-should contain an arrayref of FS::tablename objects. They will have their
-svcnum fields set and will be inserted after this record, but before any
-exports are run. Each element of the array can also optionally be a
-two-element array reference containing the child object and the name of an
-alternate field to be filled in with the newly-inserted svcnum, for example
-C<[ $svc_forward, 'srcsvc' ]>
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-(TODOC: L<FS::queue> and L<freeside-queued>)
-
-(TODOC: new exports!)
-
-=cut
-
-sub insert {
- my $self = shift;
- my %options = @_;
-
- if ( $DEBUG ) {
- warn "[$me] insert called on $self: ". Dumper($self).
- "\nwith options: ". Dumper(%options);
- }
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $self->check;
- return $error if $error;
-
- if ( $self->svcnum && qsearchs('cust_svc',{'svcnum'=>$self->svcnum}) ) {
- my $cust_svc = qsearchs('cust_svc',{'svcnum'=>$self->svcnum});
- unless ( $cust_svc ) {
- $dbh->rollback if $oldAutoCommit;
- return "no cust_svc record found for svcnum ". $self->svcnum;
- }
- $self->pkgnum($cust_svc->pkgnum);
- $self->svcpart($cust_svc->svcpart);
- }
-
- $error = $self->_check_duplicate;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- my @jobnums;
- $error = $self->SUPER::insert(
- 'jobnums' => \@jobnums,
- 'child_objects' => $self->child_objects,
- %options,
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- if ( $self->usergroup ) {
- foreach my $groupname ( @{$self->usergroup} ) {
- my $radius_usergroup = new FS::radius_usergroup ( {
- svcnum => $self->svcnum,
- groupname => $groupname,
- } );
- my $error = $radius_usergroup->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
- }
-
- unless ( $skip_fuzzyfiles ) {
- $error = $self->queue_fuzzyfiles_update;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "updating fuzzy search cache: $error";
- }
- }
-
- my $cust_pkg = $self->cust_svc->cust_pkg;
-
- if ( $cust_pkg ) {
- my $cust_main = $cust_pkg->cust_main;
-
- if ( $conf->exists('emailinvoiceauto') ) {
- my @invoicing_list = $cust_main->invoicing_list;
- push @invoicing_list, $self->email;
- $cust_main->invoicing_list(\@invoicing_list);
- }
-
- #welcome email
- my $to = '';
- if ( $welcome_template && $cust_pkg ) {
- my $to = join(', ', grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list );
- if ( $to ) {
- my $wqueue = new FS::queue {
- 'svcnum' => $self->svcnum,
- 'job' => 'FS::svc_acct::send_email'
- };
- my $error = $wqueue->insert(
- 'to' => $to,
- 'from' => $welcome_from,
- 'subject' => $welcome_subject,
- 'mimetype' => $welcome_mimetype,
- 'body' => $welcome_template->fill_in( HASH => {
- 'custnum' => $self->custnum,
- 'username' => $self->username,
- 'password' => $self->_password,
- 'first' => $cust_main->first,
- 'last' => $cust_main->getfield('last'),
- 'pkg' => $cust_pkg->part_pkg->pkg,
- } ),
- );
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error queuing welcome email: $error";
- }
-
- if ( $options{'depend_jobnum'} ) {
- warn "$me depend_jobnum found; adding to welcome email dependancies"
- if $DEBUG;
- if ( ref($options{'depend_jobnum'}) ) {
- warn "$me adding jobs ". join(', ', @{$options{'depend_jobnum'}} ).
- "to welcome email dependancies"
- if $DEBUG;
- push @jobnums, @{ $options{'depend_jobnum'} };
- } else {
- warn "$me adding job $options{'depend_jobnum'} ".
- "to welcome email dependancies"
- if $DEBUG;
- push @jobnums, $options{'depend_jobnum'};
- }
- }
-
- foreach my $jobnum ( @jobnums ) {
- my $error = $wqueue->depend_insert($jobnum);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error queuing welcome email job dependancy: $error";
- }
- }
-
- }
-
- }
-
- } # if ( $cust_pkg )
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-}
-
-=item delete
-
-Deletes this account from the database. If there is an error, returns the
-error, otherwise returns false.
-
-The corresponding FS::cust_svc record will be deleted as well.
-
-(TODOC: new exports!)
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "can't delete system account" if $self->_check_system;
-
- return "Can't delete an account which is a (svc_forward) source!"
- if qsearch( 'svc_forward', { 'srcsvc' => $self->svcnum } );
-
- return "Can't delete an account which is a (svc_forward) destination!"
- if qsearch( 'svc_forward', { 'dstsvc' => $self->svcnum } );
-
- return "Can't delete an account with (svc_www) web service!"
- if qsearch( 'svc_www', { 'usersvc' => $self->svcnum } );
-
- # what about records in session ? (they should refer to history table)
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $cust_main_invoice (
- qsearch( 'cust_main_invoice', { 'dest' => $self->svcnum } )
- ) {
- unless ( defined($cust_main_invoice) ) {
- warn "WARNING: something's wrong with qsearch";
- next;
- }
- my %hash = $cust_main_invoice->hash;
- $hash{'dest'} = $self->email;
- my $new = new FS::cust_main_invoice \%hash;
- my $error = $new->replace($cust_main_invoice);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- foreach my $svc_domain (
- qsearch( 'svc_domain', { 'catchall' => $self->svcnum } )
- ) {
- my %hash = new FS::svc_domain->hash;
- $hash{'catchall'} = '';
- my $new = new FS::svc_domain \%hash;
- my $error = $new->replace($svc_domain);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- foreach my $radius_usergroup (
- qsearch('radius_usergroup', { 'svcnum' => $self->svcnum } )
- ) {
- my $error = $radius_usergroup->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-The additional field I<usergroup> can optionally be defined; if so it should
-contain an arrayref of group names. See L<FS::radius_usergroup>.
-
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
- my $error;
- warn "$me replacing $old with $new\n" if $DEBUG;
-
- # We absolutely have to have an old vs. new record to make this work.
- if (!defined($old)) {
- $old = qsearchs( 'svc_acct', { 'svcnum' => $new->svcnum } );
- }
-
- return "can't modify system account" if $old->_check_system;
-
- {
- #no warnings 'numeric'; #alas, a 5.006-ism
- local($^W) = 0;
-
- foreach my $xid (qw( uid gid )) {
-
- return "Can't change $xid!"
- if ! $conf->exists("svc_acct-edit_$xid")
- && $old->$xid() != $new->$xid()
- && $new->cust_svc->part_svc->part_svc_column($xid)->columnflag ne 'F'
- }
-
- }
-
- #change homdir when we change username
- $new->setfield('dir', '') if $old->username ne $new->username;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- # redundant, but so $new->usergroup gets set
- $error = $new->check;
- return $error if $error;
-
- $old->usergroup( [ $old->radius_groups ] );
- if ( $DEBUG ) {
- warn $old->email. " old groups: ". join(' ',@{$old->usergroup}). "\n";
- warn $new->email. "new groups: ". join(' ',@{$new->usergroup}). "\n";
- }
- if ( $new->usergroup ) {
- #(sorta) false laziness with FS::part_export::sqlradius::_export_replace
- my @newgroups = @{$new->usergroup};
- foreach my $oldgroup ( @{$old->usergroup} ) {
- if ( grep { $oldgroup eq $_ } @newgroups ) {
- @newgroups = grep { $oldgroup ne $_ } @newgroups;
- next;
- }
- my $radius_usergroup = qsearchs('radius_usergroup', {
- svcnum => $old->svcnum,
- groupname => $oldgroup,
- } );
- my $error = $radius_usergroup->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error deleting radius_usergroup $oldgroup: $error";
- }
- }
-
- foreach my $newgroup ( @newgroups ) {
- my $radius_usergroup = new FS::radius_usergroup ( {
- svcnum => $new->svcnum,
- groupname => $newgroup,
- } );
- my $error = $radius_usergroup->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "error adding radius_usergroup $newgroup: $error";
- }
- }
-
- }
-
- if ( $old->username ne $new->username || $old->domsvc != $new->domsvc ) {
- $new->svcpart( $new->cust_svc->svcpart ) unless $new->svcpart;
- $error = $new->_check_duplicate;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- }
-
- $error = $new->SUPER::replace($old);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error if $error;
- }
-
- if ( $new->username ne $old->username && ! $skip_fuzzyfiles ) {
- $error = $new->queue_fuzzyfiles_update;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "updating fuzzy search cache: $error";
- }
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-}
-
-=item queue_fuzzyfiles_update
-
-Used by insert & replace to update the fuzzy search cache
-
-=cut
-
-sub queue_fuzzyfiles_update {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $queue = new FS::queue {
- 'svcnum' => $self->svcnum,
- 'job' => 'FS::svc_acct::append_fuzzyfiles'
- };
- my $error = $queue->insert($self->username);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "queueing job (transaction rolled back): $error";
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-
-=item suspend
-
-Suspends this account by calling export-specific suspend hooks. If there is
-an error, returns the error, otherwise returns false.
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=cut
-
-sub suspend {
- my $self = shift;
- return "can't suspend system account" if $self->_check_system;
- $self->SUPER::suspend;
-}
-
-=item unsuspend
-
-Unsuspends this account by by calling export-specific suspend hooks. If there
-is an error, returns the error, otherwise returns false.
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=cut
-
-sub unsuspend {
- my $self = shift;
- my %hash = $self->hash;
- if ( $hash{_password} =~ /^\*SUSPENDED\* (.*)$/ ) {
- $hash{_password} = $1;
- my $new = new FS::svc_acct ( \%hash );
- my $error = $new->replace($self);
- return $error if $error;
- }
-
- $self->SUPER::unsuspend;
-}
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-If the B<auto_unset_catchall> configuration option is set, this method will
-automatically remove any references to the canceled service in the catchall
-field of svc_domain. This allows packages that contain both a svc_domain and
-its catchall svc_acct to be canceled in one step.
-
-=cut
-
-sub cancel {
- # Only one thing to do at this level
- my $self = shift;
- foreach my $svc_domain (
- qsearch( 'svc_domain', { catchall => $self->svcnum } ) ) {
- if($conf->exists('auto_unset_catchall')) {
- my %hash = $svc_domain->hash;
- $hash{catchall} = '';
- my $new = new FS::svc_domain ( \%hash );
- my $error = $new->replace($svc_domain);
- return $error if $error;
- } else {
- return "cannot unprovision svc_acct #".$self->svcnum.
- " while assigned as catchall for svc_domain #".$svc_domain->svcnum;
- }
- }
-
- $self->SUPER::cancel;
-}
-
-
-=item check
-
-Checks all fields to make sure this is a valid service. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-Sets any fixed values; see L<FS::part_svc>.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my($recref) = $self->hashref;
-
- my $x = $self->setfixed( $self->_fieldhandlers );
- return $x unless ref($x);
- my $part_svc = $x;
-
- if ( $part_svc->part_svc_column('usergroup')->columnflag eq "F" ) {
- $self->usergroup(
- [ split(',', $part_svc->part_svc_column('usergroup')->columnvalue) ] );
- }
-
- my $error = $self->ut_numbern('svcnum')
- #|| $self->ut_number('domsvc')
- || $self->ut_foreign_key('domsvc', 'svc_domain', 'svcnum' )
- || $self->ut_textn('sec_phrase')
- ;
- return $error if $error;
-
- my $ulen = $usernamemax || $self->dbdef_table->column('username')->length;
- if ( $username_uppercase ) {
- $recref->{username} =~ /^([a-z0-9_\-\.\&\%]{$usernamemin,$ulen})$/i
- or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username};
- $recref->{username} = $1;
- } else {
- $recref->{username} =~ /^([a-z0-9_\-\.\&\%]{$usernamemin,$ulen})$/
- or return gettext('illegal_username'). " ($usernamemin-$ulen): ". $recref->{username};
- $recref->{username} = $1;
- }
-
- if ( $username_letterfirst ) {
- $recref->{username} =~ /^[a-z]/ or return gettext('illegal_username');
- } elsif ( $username_letter ) {
- $recref->{username} =~ /[a-z]/ or return gettext('illegal_username');
- }
- if ( $username_noperiod ) {
- $recref->{username} =~ /\./ and return gettext('illegal_username');
- }
- if ( $username_nounderscore ) {
- $recref->{username} =~ /_/ and return gettext('illegal_username');
- }
- if ( $username_nodash ) {
- $recref->{username} =~ /\-/ and return gettext('illegal_username');
- }
- unless ( $username_ampersand ) {
- $recref->{username} =~ /\&/ and return gettext('illegal_username');
- }
- if ( $password_noampersand ) {
- $recref->{_password} =~ /\&/ and return gettext('illegal_password');
- }
- if ( $password_noexclamation ) {
- $recref->{_password} =~ /\!/ and return gettext('illegal_password');
- }
- unless ( $username_percent ) {
- $recref->{username} =~ /\%/ and return gettext('illegal_username');
- }
-
- $recref->{popnum} =~ /^(\d*)$/ or return "Illegal popnum: ".$recref->{popnum};
- $recref->{popnum} = $1;
- return "Unknown popnum" unless
- ! $recref->{popnum} ||
- qsearchs('svc_acct_pop',{'popnum'=> $recref->{popnum} } );
-
- unless ( $part_svc->part_svc_column('uid')->columnflag eq 'F' ) {
-
- $recref->{uid} =~ /^(\d*)$/ or return "Illegal uid";
- $recref->{uid} = $1 eq '' ? $self->unique('uid') : $1;
-
- $recref->{gid} =~ /^(\d*)$/ or return "Illegal gid";
- $recref->{gid} = $1 eq '' ? $recref->{uid} : $1;
- #not all systems use gid=uid
- #you can set a fixed gid in part_svc
-
- return "Only root can have uid 0"
- if $recref->{uid} == 0
- && $recref->{username} !~ /^(root|toor|smtp)$/;
-
- unless ( $recref->{username} eq 'sync' ) {
- if ( grep $_ eq $recref->{shell}, @shells ) {
- $recref->{shell} = (grep $_ eq $recref->{shell}, @shells)[0];
- } else {
- return "Illegal shell \`". $self->shell. "\'; ".
- $conf->dir. "/shells contains: @shells";
- }
- } else {
- $recref->{shell} = '/bin/sync';
- }
-
- } else {
- $recref->{gid} ne '' ?
- return "Can't have gid without uid" : ( $recref->{gid}='' );
- #$recref->{dir} ne '' ?
- # return "Can't have directory without uid" : ( $recref->{dir}='' );
- $recref->{shell} ne '' ?
- return "Can't have shell without uid" : ( $recref->{shell}='' );
- }
-
- unless ( $part_svc->part_svc_column('dir')->columnflag eq 'F' ) {
-
- $recref->{dir} =~ /^([\/\w\-\.\&]*)$/
- or return "Illegal directory: ". $recref->{dir};
- $recref->{dir} = $1;
- return "Illegal directory"
- if $recref->{dir} =~ /(^|\/)\.+(\/|$)/; #no .. component
- return "Illegal directory"
- if $recref->{dir} =~ /\&/ && ! $username_ampersand;
- unless ( $recref->{dir} ) {
- $recref->{dir} = $dir_prefix . '/';
- if ( $dirhash > 0 ) {
- for my $h ( 1 .. $dirhash ) {
- $recref->{dir} .= substr($recref->{username}, $h-1, 1). '/';
- }
- } elsif ( $dirhash < 0 ) {
- for my $h ( reverse $dirhash .. -1 ) {
- $recref->{dir} .= substr($recref->{username}, $h, 1). '/';
- }
- }
- $recref->{dir} .= $recref->{username};
- ;
- }
-
- }
-
- # $error = $self->ut_textn('finger');
- # return $error if $error;
- if ( $self->getfield('finger') eq '' ) {
- my $cust_pkg = $self->svcnum
- ? $self->cust_svc->cust_pkg
- : qsearchs('cust_pkg', { 'pkgnum' => $self->getfield('pkgnum') } );
- if ( $cust_pkg ) {
- my $cust_main = $cust_pkg->cust_main;
- $self->setfield('finger', $cust_main->first.' '.$cust_main->get('last') );
- }
- }
- $self->getfield('finger') =~
- /^([\w \t\!\@\#\$\%\&\(\)\-\+\;\'\"\,\.\?\/\*\<\>]*)$/
- or return "Illegal finger: ". $self->getfield('finger');
- $self->setfield('finger', $1);
-
- $recref->{quota} =~ /^(\w*)$/ or return "Illegal quota";
- $recref->{quota} = $1;
-
- unless ( $part_svc->part_svc_column('slipip')->columnflag eq 'F' ) {
- if ( $recref->{slipip} eq '' ) {
- $recref->{slipip} = '';
- } elsif ( $recref->{slipip} eq '0e0' ) {
- $recref->{slipip} = '0e0';
- } else {
- $recref->{slipip} =~ /^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/
- or return "Illegal slipip: ". $self->slipip;
- $recref->{slipip} = $1;
- }
-
- }
-
- #arbitrary RADIUS stuff; allow ut_textn for now
- foreach ( grep /^radius_/, fields('svc_acct') ) {
- $self->ut_textn($_);
- }
-
- #generate a password if it is blank
- $recref->{_password} = join('',map($pw_set[ int(rand $#pw_set) ], (0..7) ) )
- unless ( $recref->{_password} );
-
- #if ( $recref->{_password} =~ /^((\*SUSPENDED\* )?)([^\t\n]{4,16})$/ ) {
- if ( $recref->{_password} =~ /^((\*SUSPENDED\* )?)([^\t\n]{$passwordmin,$passwordmax})$/ ) {
- $recref->{_password} = $1.$3;
- #uncomment this to encrypt password immediately upon entry, or run
- #bin/crypt_pw in cron to give new users a window during which their
- #password is available to techs, for faxing, etc. (also be aware of
- #radius issues!)
- #$recref->{password} = $1.
- # crypt($3,$saltset[int(rand(64))].$saltset[int(rand(64))]
- #;
- } elsif ( $recref->{_password} =~ /^((\*SUSPENDED\* )?)([\w\.\/\$\;\+]{13,60})$/ ) {
- $recref->{_password} = $1.$3;
- } elsif ( $recref->{_password} eq '*' ) {
- $recref->{_password} = '*';
- } elsif ( $recref->{_password} eq '!' ) {
- $recref->{_password} = '!';
- } elsif ( $recref->{_password} eq '!!' ) {
- $recref->{_password} = '!!';
- } else {
- #return "Illegal password";
- return gettext('illegal_password'). " $passwordmin-$passwordmax ".
- FS::Msgcat::_gettext('illegal_password_characters').
- ": ". $recref->{_password};
- }
-
- $self->SUPER::check;
-}
-
-=item _check_system
-
-Internal function to check the username against the list of system usernames
-from the I<system_usernames> configuration value. Returns true if the username
-is listed on the system username list.
-
-=cut
-
-sub _check_system {
- my $self = shift;
- scalar( grep { $self->username eq $_ || $self->email eq $_ }
- $conf->config('system_usernames')
- );
-}
-
-=item _check_duplicate
-
-Internal function to check for duplicates usernames, username@domain pairs and
-uids.
-
-If the I<global_unique-username> configuration value is set to B<username> or
-B<username@domain>, enforces global username or username@domain uniqueness.
-
-In all cases, check for duplicate uids and usernames or username@domain pairs
-per export and with identical I<svcpart> values.
-
-=cut
-
-sub _check_duplicate {
- my $self = shift;
-
- my $global_unique = $conf->config('global_unique-username') || 'none';
- return '' if $global_unique eq 'disabled';
-
- #this is Pg-specific. what to do for mysql etc?
- # ( mysql LOCK TABLES certainly isn't equivalent or useful here :/ )
- warn "$me locking svc_acct table for duplicate search" if $DEBUG;
- dbh->do("LOCK TABLE svc_acct IN SHARE ROW EXCLUSIVE MODE")
- or die dbh->errstr;
- warn "$me acquired svc_acct table lock for duplicate search" if $DEBUG;
-
- my $part_svc = qsearchs('part_svc', { 'svcpart' => $self->svcpart } );
- unless ( $part_svc ) {
- return 'unknown svcpart '. $self->svcpart;
- }
-
- my @dup_user = grep { !$self->svcnum || $_->svcnum != $self->svcnum }
- qsearch( 'svc_acct', { 'username' => $self->username } );
- return gettext('username_in_use')
- if $global_unique eq 'username' && @dup_user;
-
- my @dup_userdomain = grep { !$self->svcnum || $_->svcnum != $self->svcnum }
- qsearch( 'svc_acct', { 'username' => $self->username,
- 'domsvc' => $self->domsvc } );
- return gettext('username_in_use')
- if $global_unique eq 'username@domain' && @dup_userdomain;
-
- my @dup_uid;
- if ( $part_svc->part_svc_column('uid')->columnflag ne 'F'
- && $self->username !~ /^(toor|(hyla)?fax)$/ ) {
- @dup_uid = grep { !$self->svcnum || $_->svcnum != $self->svcnum }
- qsearch( 'svc_acct', { 'uid' => $self->uid } );
- } else {
- @dup_uid = ();
- }
-
- if ( @dup_user || @dup_userdomain || @dup_uid ) {
- my $exports = FS::part_export::export_info('svc_acct');
- my %conflict_user_svcpart;
- my %conflict_userdomain_svcpart = ( $self->svcpart => 'SELF', );
-
- foreach my $part_export ( $part_svc->part_export ) {
-
- #this will catch to the same exact export
- my @svcparts = map { $_->svcpart } $part_export->export_svc;
-
- #this will catch to exports w/same exporthost+type ???
- #my @other_part_export = qsearch('part_export', {
- # 'machine' => $part_export->machine,
- # 'exporttype' => $part_export->exporttype,
- #} );
- #foreach my $other_part_export ( @other_part_export ) {
- # push @svcparts, map { $_->svcpart }
- # qsearch('export_svc', { 'exportnum' => $part_export->exportnum });
- #}
-
- #my $nodomain = $exports->{$part_export->exporttype}{'nodomain'};
- #silly kludge to avoid uninitialized value errors
- my $nodomain = exists( $exports->{$part_export->exporttype}{'nodomain'} )
- ? $exports->{$part_export->exporttype}{'nodomain'}
- : '';
- if ( $nodomain =~ /^Y/i ) {
- $conflict_user_svcpart{$_} = $part_export->exportnum
- foreach @svcparts;
- } else {
- $conflict_userdomain_svcpart{$_} = $part_export->exportnum
- foreach @svcparts;
- }
- }
-
- foreach my $dup_user ( @dup_user ) {
- my $dup_svcpart = $dup_user->cust_svc->svcpart;
- if ( exists($conflict_user_svcpart{$dup_svcpart}) ) {
- return "duplicate username: conflicts with svcnum ". $dup_user->svcnum.
- " via exportnum ". $conflict_user_svcpart{$dup_svcpart};
- }
- }
-
- foreach my $dup_userdomain ( @dup_userdomain ) {
- my $dup_svcpart = $dup_userdomain->cust_svc->svcpart;
- if ( exists($conflict_userdomain_svcpart{$dup_svcpart}) ) {
- return "duplicate username\@domain: conflicts with svcnum ".
- $dup_userdomain->svcnum. " via exportnum ".
- $conflict_userdomain_svcpart{$dup_svcpart};
- }
- }
-
- foreach my $dup_uid ( @dup_uid ) {
- my $dup_svcpart = $dup_uid->cust_svc->svcpart;
- if ( exists($conflict_user_svcpart{$dup_svcpart})
- || exists($conflict_userdomain_svcpart{$dup_svcpart}) ) {
- return "duplicate uid: conflicts with svcnum ". $dup_uid->svcnum.
- " via exportnum ". $conflict_user_svcpart{$dup_svcpart}
- || $conflict_userdomain_svcpart{$dup_svcpart};
- }
- }
-
- }
-
- return '';
-
-}
-
-=item radius
-
-Depriciated, use radius_reply instead.
-
-=cut
-
-sub radius {
- carp "FS::svc_acct::radius depriciated, use radius_reply";
- $_[0]->radius_reply;
-}
-
-=item radius_reply
-
-Returns key/value pairs, suitable for assigning to a hash, for any RADIUS
-reply attributes of this record.
-
-Note that this is now the preferred method for reading RADIUS attributes -
-accessing the columns directly is discouraged, as the column names are
-expected to change in the future.
-
-=cut
-
-sub radius_reply {
- my $self = shift;
-
- return %{ $self->{'radius_reply'} }
- if exists $self->{'radius_reply'};
-
- my %reply =
- map {
- /^(radius_(.*))$/;
- my($column, $attrib) = ($1, $2);
- #$attrib =~ s/_/\-/g;
- ( $FS::raddb::attrib{lc($attrib)}, $self->getfield($column) );
- } grep { /^radius_/ && $self->getfield($_) } fields( $self->table );
-
- if ( $self->slipip && $self->slipip ne '0e0' ) {
- $reply{$radius_ip} = $self->slipip;
- }
-
- if ( $self->seconds !~ /^$/ ) {
- $reply{'Session-Timeout'} = $self->seconds;
- }
-
- %reply;
-}
-
-=item radius_check
-
-Returns key/value pairs, suitable for assigning to a hash, for any RADIUS
-check attributes of this record.
-
-Note that this is now the preferred method for reading RADIUS attributes -
-accessing the columns directly is discouraged, as the column names are
-expected to change in the future.
-
-=cut
-
-sub radius_check {
- my $self = shift;
-
- return %{ $self->{'radius_check'} }
- if exists $self->{'radius_check'};
-
- my %check =
- map {
- /^(rc_(.*))$/;
- my($column, $attrib) = ($1, $2);
- #$attrib =~ s/_/\-/g;
- ( $FS::raddb::attrib{lc($attrib)}, $self->getfield($column) );
- } grep { /^rc_/ && $self->getfield($_) } fields( $self->table );
-
- my $password = $self->_password;
- my $pw_attrib = length($password) <= 12 ? $radius_password : 'Crypt-Password'; $check{$pw_attrib} = $password;
-
- my $cust_svc = $self->cust_svc;
- die "FATAL: no cust_svc record for svc_acct.svcnum ". $self->svcnum. "\n"
- unless $cust_svc;
- my $cust_pkg = $cust_svc->cust_pkg;
- if ( $cust_pkg && $cust_pkg->part_pkg->is_prepaid && $cust_pkg->bill ) {
- $check{'Expiration'} = time2str('%B %e %Y %T', $cust_pkg->bill ); #http://lists.cistron.nl/pipermail/freeradius-users/2005-January/040184.html
- }
-
- %check;
-
-}
-
-=item snapshot
-
-This method instructs the object to "snapshot" or freeze RADIUS check and
-reply attributes to the current values.
-
-=cut
-
-#bah, my english is too broken this morning
-#Of note is the "Expiration" attribute, which, for accounts in prepaid packages, is typically defined on-the-fly as the associated packages cust_pkg.bill. (This is used by
-#the FS::cust_pkg's replace method to trigger the correct export updates when
-#package dates change)
-
-sub snapshot {
- my $self = shift;
-
- $self->{$_} = { $self->$_() }
- foreach qw( radius_reply radius_check );
-
-}
-
-=item forget_snapshot
-
-This methos instructs the object to forget any previously snapshotted
-RADIUS check and reply attributes.
-
-=cut
-
-sub forget_snapshot {
- my $self = shift;
-
- delete $self->{$_}
- foreach qw( radius_reply radius_check );
-
-}
-
-=item domain
-
-Returns the domain associated with this account.
-
-=cut
-
-sub domain {
- my $self = shift;
- die "svc_acct.domsvc is null for svcnum ". $self->svcnum unless $self->domsvc;
- my $svc_domain = $self->svc_domain(@_)
- or die "no svc_domain.svcnum for svc_acct.domsvc ". $self->domsvc;
- $svc_domain->domain;
-}
-
-=item svc_domain
-
-Returns the FS::svc_domain record for this account's domain (see
-L<FS::svc_domain>).
-
-=cut
-
-sub svc_domain {
- my $self = shift;
- $self->{'_domsvc'}
- ? $self->{'_domsvc'}
- : qsearchs( 'svc_domain', { 'svcnum' => $self->domsvc } );
-}
-
-=item cust_svc
-
-Returns the FS::cust_svc record for this account (see L<FS::cust_svc>).
-
-=cut
-
-#inherited from svc_Common
-
-=item email
-
-Returns an email address associated with the account.
-
-=cut
-
-sub email {
- my $self = shift;
- $self->username. '@'. $self->domain(@_);
-}
-
-=item acct_snarf
-
-Returns an array of FS::acct_snarf records associated with the account.
-If the acct_snarf table does not exist or there are no associated records,
-an empty list is returned
-
-=cut
-
-sub acct_snarf {
- my $self = shift;
- return () unless dbdef->table('acct_snarf');
- eval "use FS::acct_snarf;";
- die $@ if $@;
- qsearch('acct_snarf', { 'svcnum' => $self->svcnum } );
-}
-
-=item decrement_seconds SECONDS
-
-Decrements the I<seconds> field of this record by the given amount. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub decrement_seconds {
- shift->_op_seconds('-', @_);
-}
-
-=item increment_seconds SECONDS
-
-Increments the I<seconds> field of this record by the given amount. If there
-is an error, returns the error, otherwise returns false.
-
-=cut
-
-sub increment_seconds {
- shift->_op_seconds('+', @_);
-}
-
-
-my %op2action = (
- '-' => 'suspend',
- '+' => 'unsuspend',
-);
-my %op2condition = (
- '-' => sub { my($self, $seconds) = @_;
- $self->seconds - $seconds <= 0;
- },
- '+' => sub { my($self, $seconds) = @_;
- $self->seconds + $seconds > 0;
- },
-);
-
-sub _op_seconds {
- my( $self, $op, $seconds ) = @_;
- warn "$me _op_seconds called for svcnum ". $self->svcnum.
- ' ('. $self->email. "): $op $seconds\n"
- if $DEBUG;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $sql = "UPDATE svc_acct SET seconds = ".
- " CASE WHEN seconds IS NULL THEN 0 ELSE seconds END ". #$seconds||0
- " $op ? WHERE svcnum = ?";
- warn "$me $sql\n"
- if $DEBUG;
-
- my $sth = $dbh->prepare( $sql )
- or die "Error preparing $sql: ". $dbh->errstr;
- my $rv = $sth->execute($seconds, $self->svcnum);
- die "Error executing $sql: ". $sth->errstr
- unless defined($rv);
- die "Can't update seconds for svcnum". $self->svcnum
- if $rv == 0;
-
- my $action = $op2action{$op};
-
- if ( $conf->exists("svc_acct-usage_$action")
- && &{$op2condition{$op}}($self, $seconds) ) {
- #my $error = $self->$action();
- my $error = $self->cust_svc->cust_pkg->$action();
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "Error ${action}ing: $error";
- }
- }
-
- warn "$me update successful; committing\n"
- if $DEBUG;
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-
-}
-
-
-=item seconds_since TIMESTAMP
-
-Returns the number of seconds this account has been online since TIMESTAMP,
-according to the session monitor (see L<FS::Session>).
-
-TIMESTAMP is specified as a UNIX timestamp; see L<perlfunc/"time">. Also see
-L<Time::Local> and L<Date::Parse> for conversion functions.
-
-=cut
-
-#note: POD here, implementation in FS::cust_svc
-sub seconds_since {
- my $self = shift;
- $self->cust_svc->seconds_since(@_);
-}
-
-=item seconds_since_sqlradacct TIMESTAMP_START TIMESTAMP_END
-
-Returns the numbers of seconds this account has been online between
-TIMESTAMP_START (inclusive) and TIMESTAMP_END (exclusive), according to an
-external SQL radacct table, specified via sqlradius export. Sessions which
-started in the specified range but are still open are counted from session
-start to the end of the range (unless they are over 1 day old, in which case
-they are presumed missing their stop record and not counted). Also, sessions
-which end in the range but started earlier are counted from the start of the
-range to session end. Finally, sessions which start before the range but end
-after are counted for the entire range.
-
-TIMESTAMP_START and TIMESTAMP_END are specified as UNIX timestamps; see
-L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-=cut
-
-#note: POD here, implementation in FS::cust_svc
-sub seconds_since_sqlradacct {
- my $self = shift;
- $self->cust_svc->seconds_since_sqlradacct(@_);
-}
-
-=item attribute_since_sqlradacct TIMESTAMP_START TIMESTAMP_END ATTRIBUTE
-
-Returns the sum of the given attribute for all accounts (see L<FS::svc_acct>)
-in this package for sessions ending between TIMESTAMP_START (inclusive) and
-TIMESTAMP_END (exclusive).
-
-TIMESTAMP_START and TIMESTAMP_END are specified as UNIX timestamps; see
-L<perlfunc/"time">. Also see L<Time::Local> and L<Date::Parse> for conversion
-functions.
-
-=cut
-
-#note: POD here, implementation in FS::cust_svc
-sub attribute_since_sqlradacct {
- my $self = shift;
- $self->cust_svc->attribute_since_sqlradacct(@_);
-}
-
-=item get_session_history TIMESTAMP_START TIMESTAMP_END
-
-Returns an array of hash references of this customers login history for the
-given time range. (document this better)
-
-=cut
-
-sub get_session_history {
- my $self = shift;
- $self->cust_svc->get_session_history(@_);
-}
-
-=item get_cdrs TIMESTAMP_START TIMESTAMP_END [ 'OPTION' => 'VALUE ... ]
-
-=cut
-
-sub get_cdrs {
- my($self, $start, $end, %opt ) = @_;
-
- my $did = $self->username; #yup
-
- my $prefix = $opt{'default_prefix'}; #convergent.au '+61'
-
- my $for_update = $opt{'for_update'} ? 'FOR UPDATE' : '';
-
- #SELECT $for_update * FROM cdr
- # WHERE calldate >= $start #need a conversion
- # AND calldate < $end #ditto
- # AND ( charged_party = "$did"
- # OR charged_party = "$prefix$did" #if length($prefix);
- # OR ( ( charged_party IS NULL OR charged_party = '' )
- # AND
- # ( src = "$did" OR src = "$prefix$did" ) # if length($prefix)
- # )
- # )
- # AND ( freesidestatus IS NULL OR freesidestatus = '' )
-
- my $charged_or_src;
- if ( length($prefix) ) {
- $charged_or_src =
- " AND ( charged_party = '$did'
- OR charged_party = '$prefix$did'
- OR ( ( charged_party IS NULL OR charged_party = '' )
- AND
- ( src = '$did' OR src = '$prefix$did' )
- )
- )
- ";
- } else {
- $charged_or_src =
- " AND ( charged_party = '$did'
- OR ( ( charged_party IS NULL OR charged_party = '' )
- AND
- src = '$did'
- )
- )
- ";
-
- }
-
- qsearch(
- 'select' => "$for_update *",
- 'table' => 'cdr',
- 'hashref' => {
- #( freesidestatus IS NULL OR freesidestatus = '' )
- 'freesidestatus' => '',
- },
- 'extra_sql' => $charged_or_src,
-
- );
-
-}
-
-=item radius_groups
-
-Returns all RADIUS groups for this account (see L<FS::radius_usergroup>).
-
-=cut
-
-sub radius_groups {
- my $self = shift;
- if ( $self->usergroup ) {
- confess "explicitly specified usergroup not an arrayref: ". $self->usergroup
- unless ref($self->usergroup) eq 'ARRAY';
- #when provisioning records, export callback runs in svc_Common.pm before
- #radius_usergroup records can be inserted...
- @{$self->usergroup};
- } else {
- map { $_->groupname }
- qsearch('radius_usergroup', { 'svcnum' => $self->svcnum } );
- }
-}
-
-=item clone_suspended
-
-Constructor used by FS::part_export::_export_suspend fallback. Document
-better.
-
-=cut
-
-sub clone_suspended {
- my $self = shift;
- my %hash = $self->hash;
- $hash{_password} = join('',map($pw_set[ int(rand $#pw_set) ], (0..7) ) );
- new FS::svc_acct \%hash;
-}
-
-=item clone_kludge_unsuspend
-
-Constructor used by FS::part_export::_export_unsuspend fallback. Document
-better.
-
-=cut
-
-sub clone_kludge_unsuspend {
- my $self = shift;
- my %hash = $self->hash;
- $hash{_password} = '';
- new FS::svc_acct \%hash;
-}
-
-=item check_password
-
-Checks the supplied password against the (possibly encrypted) password in the
-database. Returns true for a successful authentication, false for no match.
-
-Currently supported encryptions are: classic DES crypt() and MD5
-
-=cut
-
-sub check_password {
- my($self, $check_password) = @_;
-
- #remove old-style SUSPENDED kludge, they should be allowed to login to
- #self-service and pay up
- ( my $password = $self->_password ) =~ s/^\*SUSPENDED\* //;
-
- #eventually should check a "password-encoding" field
- if ( $password =~ /^(\*|!!?)$/ ) { #no self-service login
- return 0;
- } elsif ( length($password) < 13 ) { #plaintext
- $check_password eq $password;
- } elsif ( length($password) == 13 ) { #traditional DES crypt
- crypt($check_password, $password) eq $password;
- } elsif ( $password =~ /^\$1\$/ ) { #MD5 crypt
- unix_md5_crypt($check_password, $password) eq $password;
- } elsif ( $password =~ /^\$2a?\$/ ) { #Blowfish
- warn "Can't check password: Blowfish encryption not yet supported, svcnum".
- $self->svcnum. "\n";
- 0;
- } else {
- warn "Can't check password: Unrecognized encryption for svcnum ".
- $self->svcnum. "\n";
- 0;
- }
-
-}
-
-=item crypt_password [ DEFAULT_ENCRYPTION_TYPE ]
-
-Returns an encrypted password, either by passing through an encrypted password
-in the database or by encrypting a plaintext password from the database.
-
-The optional DEFAULT_ENCRYPTION_TYPE parameter can be set to I<crypt> (classic
-UNIX DES crypt), I<md5> (md5 crypt supported by most modern Linux and BSD
-distrubtions), or (eventually) I<blowfish> (blowfish hashing supported by
-OpenBSD, SuSE, other Linux distibutions with pam_unix2, etc.). The default
-encryption type is only used if the password is not already encrypted in the
-database.
-
-=cut
-
-sub crypt_password {
- my $self = shift;
- #eventually should check a "password-encoding" field
- if ( length($self->_password) == 13
- || $self->_password =~ /^\$(1|2a?)\$/
- || $self->_password =~ /^(\*|NP|\*LK\*|!!?)$/
- )
- {
- $self->_password;
- } else {
- my $encryption = ( scalar(@_) && $_[0] ) ? shift : 'crypt';
- if ( $encryption eq 'crypt' ) {
- crypt(
- $self->_password,
- $saltset[int(rand(64))].$saltset[int(rand(64))]
- );
- } elsif ( $encryption eq 'md5' ) {
- unix_md5_crypt( $self->_password );
- } elsif ( $encryption eq 'blowfish' ) {
- die "unknown encryption method $encryption";
- } else {
- die "unknown encryption method $encryption";
- }
- }
-}
-
-=item virtual_maildir
-
-Returns $domain/maildirs/$username/
-
-=cut
-
-sub virtual_maildir {
- my $self = shift;
- $self->domain. '/maildirs/'. $self->username. '/';
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item send_email
-
-This is the FS::svc_acct job-queue-able version. It still uses
-FS::Misc::send_email under-the-hood.
-
-=cut
-
-sub send_email {
- my %opt = @_;
-
- eval "use FS::Misc qw(send_email)";
- die $@ if $@;
-
- $opt{mimetype} ||= 'text/plain';
- $opt{mimetype} .= '; charset="iso-8859-1"' unless $opt{mimetype} =~ /charset/;
-
- my $error = send_email(
- 'from' => $opt{from},
- 'to' => $opt{to},
- 'subject' => $opt{subject},
- 'content-type' => $opt{mimetype},
- 'body' => [ map "$_\n", split("\n", $opt{body}) ],
- );
- die $error if $error;
-}
-
-=item check_and_rebuild_fuzzyfiles
-
-=cut
-
-sub check_and_rebuild_fuzzyfiles {
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- -e "$dir/svc_acct.username"
- or &rebuild_fuzzyfiles;
-}
-
-=item rebuild_fuzzyfiles
-
-=cut
-
-sub rebuild_fuzzyfiles {
-
- use Fcntl qw(:flock);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
-
- #username
-
- open(USERNAMELOCK,">>$dir/svc_acct.username")
- or die "can't open $dir/svc_acct.username: $!";
- flock(USERNAMELOCK,LOCK_EX)
- or die "can't lock $dir/svc_acct.username: $!";
-
- my @all_username = map $_->getfield('username'), qsearch('svc_acct', {});
-
- open (USERNAMECACHE,">$dir/svc_acct.username.tmp")
- or die "can't open $dir/svc_acct.username.tmp: $!";
- print USERNAMECACHE join("\n", @all_username), "\n";
- close USERNAMECACHE or die "can't close $dir/svc_acct.username.tmp: $!";
-
- rename "$dir/svc_acct.username.tmp", "$dir/svc_acct.username";
- close USERNAMELOCK;
-
-}
-
-=item all_username
-
-=cut
-
-sub all_username {
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
- open(USERNAMECACHE,"<$dir/svc_acct.username")
- or die "can't open $dir/svc_acct.username: $!";
- my @array = map { chomp; $_; } <USERNAMECACHE>;
- close USERNAMECACHE;
- \@array;
-}
-
-=item append_fuzzyfiles USERNAME
-
-=cut
-
-sub append_fuzzyfiles {
- my $username = shift;
-
- &check_and_rebuild_fuzzyfiles;
-
- use Fcntl qw(:flock);
-
- my $dir = $FS::UID::conf_dir. "cache.". $FS::UID::datasrc;
-
- open(USERNAME,">>$dir/svc_acct.username")
- or die "can't open $dir/svc_acct.username: $!";
- flock(USERNAME,LOCK_EX)
- or die "can't lock $dir/svc_acct.username: $!";
-
- print USERNAME "$username\n";
-
- flock(USERNAME,LOCK_UN)
- or die "can't unlock $dir/svc_acct.username: $!";
- close USERNAME;
-
- 1;
-}
-
-
-
-=item radius_usergroup_selector GROUPS_ARRAYREF [ SELECTNAME ]
-
-=cut
-
-sub radius_usergroup_selector {
- my $sel_groups = shift;
- my %sel_groups = map { $_=>1 } @$sel_groups;
-
- my $selectname = shift || 'radius_usergroup';
-
- my $dbh = dbh;
- my $sth = $dbh->prepare(
- 'SELECT DISTINCT(groupname) FROM radius_usergroup ORDER BY groupname'
- ) or die $dbh->errstr;
- $sth->execute() or die $sth->errstr;
- my @all_groups = map { $_->[0] } @{$sth->fetchall_arrayref};
-
- my $html = <<END;
- <SCRIPT>
- function ${selectname}_doadd(object) {
- var myvalue = object.${selectname}_add.value;
- var optionName = new Option(myvalue,myvalue,false,true);
- var length = object.$selectname.length;
- object.$selectname.options[length] = optionName;
- object.${selectname}_add.value = "";
- }
- </SCRIPT>
- <SELECT MULTIPLE NAME="$selectname">
-END
-
- foreach my $group ( @all_groups ) {
- $html .= qq(<OPTION VALUE="$group");
- if ( $sel_groups{$group} ) {
- $html .= ' SELECTED';
- $sel_groups{$group} = 0;
- }
- $html .= ">$group</OPTION>\n";
- }
- foreach my $group ( grep { $sel_groups{$_} } keys %sel_groups ) {
- $html .= qq(<OPTION VALUE="$group" SELECTED>$group</OPTION>\n);
- };
- $html .= '</SELECT>';
-
- $html .= qq!<BR><INPUT TYPE="text" NAME="${selectname}_add">!.
- qq!<INPUT TYPE="button" VALUE="Add new group" onClick="${selectname}_doadd(this.form)">!;
-
- $html;
-}
-
-=back
-
-=head1 BUGS
-
-The $recref stuff in sub check should be cleaned up.
-
-The suspend, unsuspend and cancel methods update the database, but not the
-current object. This is probably a bug as it's unexpected and
-counterintuitive.
-
-radius_usergroup_selector? putting web ui components in here? they should
-probably live somewhere else...
-
-insertion of RADIUS group stuff in insert could be done with child_objects now
-(would probably clean up export of them too)
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, edit/part_svc.cgi from an installed web interface,
-export.html from the base documentation, L<FS::Record>, L<FS::Conf>,
-L<FS::cust_svc>, L<FS::part_svc>, L<FS::cust_pkg>, L<FS::queue>,
-L<freeside-queued>), L<FS::svc_acct_pop>,
-schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_acct_pop.pm b/FS/FS/svc_acct_pop.pm
deleted file mode 100644
index de41f5b..0000000
--- a/FS/FS/svc_acct_pop.pm
+++ /dev/null
@@ -1,206 +0,0 @@
-package FS::svc_acct_pop;
-
-use strict;
-use vars qw( @ISA @EXPORT_OK @svc_acct_pop %svc_acct_pop );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw( FS::Record Exporter );
-@EXPORT_OK = qw( popselector );
-
-=head1 NAME
-
-FS::svc_acct_pop - Object methods for svc_acct_pop records
-
-=head1 SYNOPSIS
-
- use FS::svc_acct_pop;
-
- $record = new FS::svc_acct_pop \%hash;
- $record = new FS::svc_acct_pop { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $html = FS::svc_acct_pop::popselector( $popnum, $state );
-
-=head1 DESCRIPTION
-
-An FS::svc_acct object represents an point of presence. FS::svc_acct_pop
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item popnum - primary key (assigned automatically for new accounts)
-
-=item city
-
-=item state
-
-=item ac - area code
-
-=item exch - exchange
-
-=item loc - rest of number
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new point of presence (if only it were that easy!). To add the
-point of presence to the database, see L<"insert">.
-
-=cut
-
-sub table { 'svc_acct_pop'; }
-
-=item insert
-
-Adds this point of presence to the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item delete
-
-Removes this point of presence from the database.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid point of presence. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- $self->ut_numbern('popnum')
- or $self->ut_text('city')
- or $self->ut_text('state')
- or $self->ut_number('ac')
- or $self->ut_number('exch')
- or $self->ut_numbern('loc')
- or $self->SUPER::check
- ;
-
-}
-
-=item text
-
-Returns:
-
-"$city, $state ($ac)/$exch"
-
-=cut
-
-sub text {
- my $self = shift;
- $self->city. ', '. $self->state.
- ' ('. $self->ac. ')/'. $self->exch. '-'. $self->loc;
-}
-
-=back
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item popselector [ POPNUM [ STATE ] ]
-
-=cut
-
-#horrible false laziness with signup.cgi (pull special-case for 0 & 1
-# pop code out from signup.cgi??)
-sub popselector {
- my( $popnum, $state ) = @_;
-
- unless ( @svc_acct_pop ) { #cache pop list
- @svc_acct_pop = qsearch('svc_acct_pop', {} );
- %svc_acct_pop = ();
- push @{$svc_acct_pop{$_->state}}, $_ foreach @svc_acct_pop;
- }
-
- my $text = <<END;
- <SCRIPT>
- function opt(what,href,text) {
- var optionName = new Option(text, href, false, false)
- var length = what.length;
- what.options[length] = optionName;
- }
-
- function popstate_changed(what) {
- state = what.options[what.selectedIndex].text;
- what.form.popnum.options.length = 0
- what.form.popnum.options[0] = new Option("", "", false, true);
-END
-
- foreach my $popstate ( sort { $a cmp $b } keys %svc_acct_pop ) {
- $text .= "\nif ( state == \"$popstate\" ) {\n";
-
- foreach my $pop ( @{$svc_acct_pop{$popstate}}) {
- my $o_popnum = $pop->popnum;
- my $poptext = $pop->text;
- $text .= "opt(what.form.popnum, \"$o_popnum\", \"$poptext\");\n"
- }
- $text .= "}\n";
- }
-
- $text .= "}\n</SCRIPT>\n";
-
- $text .=
- qq!<SELECT NAME="popstate" SIZE=1 onChange="popstate_changed(this)">!.
- qq!<OPTION> !;
- $text .= "<OPTION>$_" foreach sort { $a cmp $b } keys %svc_acct_pop;
- $text .= '</SELECT>'; #callback? return 3 html pieces? #'</TD><TD>';
-
- $text .= qq!<SELECT NAME="popnum" SIZE=1><OPTION> !;
- my @initial_select;
- if ( scalar(@svc_acct_pop) > 100 ) {
- @initial_select = qsearchs( 'svc_acct_pop', { 'popnum' => $popnum } );
- } else {
- @initial_select = @svc_acct_pop;
- }
- foreach my $pop ( @initial_select ) {
- $text .= qq!<OPTION VALUE="!. $pop->popnum. '"'.
- ( ( $popnum && $pop->popnum == $popnum ) ? ' SELECTED' : '' ). ">".
- $pop->text;
- }
- $text .= '</SELECT>';
-
- $text;
-
-}
-
-=back
-
-=head1 BUGS
-
-It should be renamed to part_pop.
-
-popselector? putting web ui components in here? they should probably live
-somewhere else...
-
-popselector: pull special-case for 0 & 1 pop code out from signup.cgi
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::svc_acct>, L<FS::part_pop_local>, schema.html from the
-base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_broadband.pm b/FS/FS/svc_broadband.pm
deleted file mode 100755
index aaac891..0000000
--- a/FS/FS/svc_broadband.pm
+++ /dev/null
@@ -1,243 +0,0 @@
-package FS::svc_broadband;
-
-use strict;
-use vars qw(@ISA $conf);
-use FS::Record qw( qsearchs qsearch dbh );
-use FS::svc_Common;
-use FS::cust_svc;
-use FS::addr_block;
-use NetAddr::IP;
-
-@ISA = qw( FS::svc_Common );
-
-$FS::UID::callback{'FS::svc_broadband'} = sub {
- $conf = new FS::Conf;
-};
-
-=head1 NAME
-
-FS::svc_broadband - Object methods for svc_broadband records
-
-=head1 SYNOPSIS
-
- use FS::svc_broadband;
-
- $record = new FS::svc_broadband \%hash;
- $record = new FS::svc_broadband { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_broadband object represents a 'broadband' Internet connection, such
-as a DSL, cable modem, or fixed wireless link. These services are assumed to
-have the following properties:
-
-FS::svc_broadband inherits from FS::svc_Common. The following fields are
-currently supported:
-
-=over 4
-
-=item svcnum - primary key
-
-=item blocknum - see FS::addr_block
-
-=item
-speed_up - maximum upload speed, in bits per second. If set to zero, upload
-speed will be unlimited. Exports that do traffic shaping should handle this
-correctly, and not blindly set the upload speed to zero and kill the customer's
-connection.
-
-=item
-speed_down - maximum download speed, as above
-
-=item ip_addr - the customer's IP address. If the customer needs more than one
-IP address, set this to the address of the customer's router. As a result, the
-customer's router will have the same address for both its internal and external
-interfaces thus saving address space. This has been found to work on most NAT
-routers available.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new svc_broadband. To add the record to the database, see
-"insert".
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'svc_broadband'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields pkgnum and svcpart (see FS::cust_svc) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-=cut
-
-# Standard FS::svc_Common::insert
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# Standard FS::svc_Common::delete
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# Standard FS::svc_Common::replace
-
-=item suspend
-
-Called by the suspend method of FS::cust_pkg (see FS::cust_pkg).
-
-=item unsuspend
-
-Called by the unsuspend method of FS::cust_pkg (see FS::cust_pkg).
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see FS::cust_pkg).
-
-=item check
-
-Checks all fields to make sure this is a valid broadband service. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-sub check {
- my $self = shift;
- my $x = $self->setfixed;
-
- return $x unless ref($x);
-
- my $error =
- $self->ut_numbern('svcnum')
- || $self->ut_foreign_key('blocknum', 'addr_block', 'blocknum')
- || $self->ut_number('speed_up')
- || $self->ut_number('speed_down')
- || $self->ut_ipn('ip_addr')
- ;
- return $error if $error;
-
- if($self->speed_up < 0) { return 'speed_up must be positive'; }
- if($self->speed_down < 0) { return 'speed_down must be positive'; }
-
- if (not($self->ip_addr) or $self->ip_addr eq '0.0.0.0') {
- my $next_addr = $self->addr_block->next_free_addr;
- if ($next_addr) {
- $self->ip_addr($next_addr->addr);
- } else {
- return "No free addresses in addr_block (blocknum: ".$self->blocknum.")";
- }
- }
-
- # This should catch errors in the ip_addr. If it doesn't,
- # they'll almost certainly not map into the block anyway.
- my $self_addr = $self->NetAddr; #netmask is /32
- return ('Cannot parse address: ' . $self->ip_addr) unless $self_addr;
-
- my $block_addr = $self->addr_block->NetAddr;
- unless ($block_addr->contains($self_addr)) {
- return 'blocknum '.$self->blocknum.' does not contain address '.$self->ip_addr;
- }
-
- my $router = $self->addr_block->router
- or return 'Cannot assign address from unallocated block:'.$self->addr_block->blocknum;
- if(grep { $_->routernum == $router->routernum} $self->allowed_routers) {
- } # do nothing
- else {
- return 'Router '.$router->routernum.' cannot provide svcpart '.$self->svcpart;
- }
-
- $self->SUPER::check;
-}
-
-=item NetAddr
-
-Returns a NetAddr::IP object containing the IP address of this service. The netmask
-is /32.
-
-=cut
-
-sub NetAddr {
- my $self = shift;
- return new NetAddr::IP ($self->ip_addr);
-}
-
-=item addr_block
-
-Returns the FS::addr_block record (i.e. the address block) for this broadband service.
-
-=cut
-
-sub addr_block {
- my $self = shift;
-
- return qsearchs('addr_block', { blocknum => $self->blocknum });
-}
-
-=back
-
-=item allowed_routers
-
-Returns a list of allowed FS::router objects.
-
-=cut
-
-sub allowed_routers {
- my $self = shift;
-
- return map { $_->router } qsearch('part_svc_router', { svcpart => $self->svcpart });
-}
-
-=head1 BUGS
-
-The business with sb_field has been 'fixed', in a manner of speaking.
-
-=head1 SEE ALSO
-
-FS::svc_Common, FS::Record, FS::addr_block,
-FS::part_svc, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_domain.pm b/FS/FS/svc_domain.pm
deleted file mode 100644
index bdaf79b..0000000
--- a/FS/FS/svc_domain.pm
+++ /dev/null
@@ -1,451 +0,0 @@
-package FS::svc_domain;
-
-use strict;
-use vars qw( @ISA $whois_hack $conf
- @defaultrecords $soadefaultttl $soaemail $soaexpire $soamachine
- $soarefresh $soaretry
-);
-use Carp;
-use Date::Format;
-#use Net::Whois::Raw;
-use FS::Record qw(fields qsearch qsearchs dbh);
-use FS::Conf;
-use FS::svc_Common;
-use FS::cust_svc;
-use FS::svc_acct;
-use FS::cust_pkg;
-use FS::cust_main;
-use FS::domain_record;
-use FS::queue;
-
-@ISA = qw( FS::svc_Common );
-
-#ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::domain'} = sub {
- $conf = new FS::Conf;
-
- @defaultrecords = $conf->config('defaultrecords');
- $soadefaultttl = $conf->config('soadefaultttl');
- $soaemail = $conf->config('soaemail');
- $soaexpire = $conf->config('soaexpire');
- $soamachine = $conf->config('soamachine');
- $soarefresh = $conf->config('soarefresh');
- $soaretry = $conf->config('soaretry');
-
-};
-
-=head1 NAME
-
-FS::svc_domain - Object methods for svc_domain records
-
-=head1 SYNOPSIS
-
- use FS::svc_domain;
-
- $record = new FS::svc_domain \%hash;
- $record = new FS::svc_domain { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_domain object represents a domain. FS::svc_domain inherits from
-FS::svc_Common. The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key (assigned automatically for new accounts)
-
-=item domain
-
-=item catchall - optional svcnum of an svc_acct record, designating an email catchall account.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new domain. To add the domain to the database, see L<"insert">.
-
-=cut
-
-sub table { 'svc_domain'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this domain to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields I<pkgnum> and I<svcpart> (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-The additional field I<action> should be set to I<N> for new domains or I<M>
-for transfers.
-
-A registration or transfer email will be submitted unless
-$FS::svc_domain::whois_hack is true.
-
-The additional field I<email> can be used to manually set the admin contact
-email address on this email. Otherwise, the svc_acct records for this package
-(see L<FS::cust_pkg>) are searched. If there is exactly one svc_acct record
-in the same package, it is automatically used. Otherwise an error is returned.
-
-If any I<soamachine> configuration file exists, an SOA record is added to
-the domain_record table (see <FS::domain_record>).
-
-If any records are defined in the I<defaultrecords> configuration file,
-appropriate records are added to the domain_record table (see
-L<FS::domain_record>).
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-=cut
-
-sub insert {
- my $self = shift;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $error = $self->check;
- return $error if $error;
-
- return "Domain in use (here)"
- if qsearchs( 'svc_domain', { 'domain' => $self->domain } );
-
- my $whois = $self->whois;
- if ( $self->action eq "N" && ! $whois_hack && $whois ) {
- $dbh->rollback if $oldAutoCommit;
- return "Domain in use (see whois)";
- }
- if ( $self->action eq "M" && ! $whois ) {
- $dbh->rollback if $oldAutoCommit;
- return "Domain not found (see whois)";
- }
-
- $error = $self->SUPER::insert(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $self->submit_internic unless $whois_hack;
-
- if ( $soamachine ) {
- my $soa = new FS::domain_record {
- 'svcnum' => $self->svcnum,
- 'reczone' => '@',
- 'recaf' => 'IN',
- 'rectype' => 'SOA',
- 'recdata' => "$soamachine $soaemail ( ". time2str("%Y%m%d", time). "00 ".
- "$soarefresh $soaretry $soaexpire $soadefaultttl )"
- };
- $error = $soa->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "couldn't insert SOA record for new domain: $error";
- }
-
- foreach my $record ( @defaultrecords ) {
- my($zone,$af,$type,$data) = split(/\s+/,$record,4);
- my $domain_record = new FS::domain_record {
- 'svcnum' => $self->svcnum,
- 'reczone' => $zone,
- 'recaf' => $af,
- 'rectype' => $type,
- 'recdata' => $data,
- };
- my $error = $domain_record->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "couldn't insert record for new domain: $error";
- }
- }
-
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-
- ''; #no error
-}
-
-=item delete
-
-Deletes this domain from the database. If there is an error, returns the
-error, otherwise returns false.
-
-The corresponding FS::cust_svc record will be deleted as well.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- return "Can't delete a domain which has accounts!"
- if qsearch( 'svc_acct', { 'domsvc' => $self->svcnum } );
-
- #return "Can't delete a domain with (domain_record) zone entries!"
- # if qsearch('domain_record', { 'svcnum' => $self->svcnum } );
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- foreach my $domain_record ( reverse $self->domain_record ) {
- my $error = $domain_record->delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return "can't delete DNS entry: ".
- join(' ', map $domain_record->$_(),
- qw( reczone recaf rectype recdata )
- ).
- ":$error";
- }
- }
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
-}
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
-
- return "Can't change domain - reorder."
- if $old->getfield('domain') ne $new->getfield('domain');
-
- # Better to do it here than to force the caller to remember that svc_domain is weird.
- $new->setfield(action => 'M');
- my $error = $new->SUPER::replace($old);
- return $error if $error;
-}
-
-=item suspend
-
-Just returns false (no error) for now.
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Just returns false (no error) for now.
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Just returns false (no error) for now.
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid domain. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-Sets any fixed values; see L<FS::part_svc>.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $x = $self->setfixed;
- return $x unless ref($x);
- #my $part_svc = $x;
-
- my $error = $self->ut_numbern('svcnum')
- || $self->ut_numbern('catchall')
- ;
- return $error if $error;
-
- #hmm
- my $pkgnum;
- if ( $self->svcnum ) {
- my $cust_svc = qsearchs( 'cust_svc', { 'svcnum' => $self->svcnum } );
- $pkgnum = $cust_svc->pkgnum;
- } else {
- $pkgnum = $self->pkgnum;
- }
-
- my($recref) = $self->hashref;
-
- unless ( $whois_hack ) {
- unless ( $self->email ) { #find out an email address
- my @svc_acct;
- foreach ( qsearch( 'cust_svc', { 'pkgnum' => $pkgnum } ) ) {
- my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $_->svcnum } );
- push @svc_acct, $svc_acct if $svc_acct;
- }
-
- if ( scalar(@svc_acct) == 0 ) {
- return "Must order an account in package ". $pkgnum. " first";
- } elsif ( scalar(@svc_acct) > 1 ) {
- return "More than one account in package ". $pkgnum. ": specify admin contact email";
- } else {
- $self->email($svc_acct[0]->email );
- }
- }
- }
-
- #if ( $recref->{domain} =~ /^([\w\-\.]{1,22})\.(com|net|org|edu)$/ ) {
- if ( $recref->{domain} =~ /^([\w\-]{1,63})\.(com|net|org|edu)$/ ) {
- $recref->{domain} = "$1.$2";
- # hmmmmmmmm.
- } elsif ( $whois_hack && $recref->{domain} =~ /^([\w\-\.]+)$/ ) {
- $recref->{domain} = $1;
- } else {
- return "Illegal domain ". $recref->{domain}.
- " (or unknown registry - try \$whois_hack)";
- }
-
- $recref->{action} =~ /^(M|N)$/
- or return "Illegal action: ". $recref->{action};
- $recref->{action} = $1;
-
- if ( $recref->{catchall} ne '' ) {
- my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $recref->{catchall} } );
- return "Unknown catchall" unless $svc_acct;
- }
-
- $self->ut_textn('purpose')
- or $self->SUPER::check;
-
-}
-
-=item domain_record
-
-=cut
-
-sub domain_record {
- my $self = shift;
-
- my %order = (
- 'SOA' => 1,
- 'NS' => 2,
- 'MX' => 3,
- 'CNAME' => 4,
- 'A' => 5,
- 'TXT' => 6,
- 'PTR' => 7,
- );
-
- sort { $order{$a->rectype} <=> $order{$b->rectype} }
- qsearch('domain_record', { svcnum => $self->svcnum } );
-
-}
-
-sub catchall_svc_acct {
- my $self = shift;
- if ( $self->catchall ) {
- qsearchs( 'svc_acct', { 'svcnum' => $self->catchall } );
- } else {
- '';
- }
-}
-
-=item whois
-
-# Returns the Net::Whois::Domain object (see L<Net::Whois>) for this domain, or
-# undef if the domain is not found in whois.
-
-(If $FS::svc_domain::whois_hack is true, returns that in all cases instead.)
-
-=cut
-
-sub whois {
- #$whois_hack or new Net::Whois::Domain $_[0]->domain;
- $whois_hack or die "whois_hack not set...\n";
-}
-
-=item _whois
-
-Depriciated.
-
-=cut
-
-sub _whois {
- die "_whois depriciated";
-}
-
-=item submit_internic
-
-Submits a registration email for this domain.
-
-=cut
-
-sub submit_internic {
- #my $self = shift;
- carp "submit_internic depreciated";
-}
-
-=back
-
-=head1 BUGS
-
-Delete doesn't send a registration template.
-
-All registries should be supported.
-
-Should change action to a real field.
-
-The $recref stuff in sub check should be cleaned up.
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, L<FS::Record>, L<FS::Conf>, L<FS::cust_svc>,
-L<FS::part_svc>, L<FS::cust_pkg>, L<Net::Whois>, schema.html from the base
-documentation, config.html from the base documentation.
-
-=cut
-
-1;
-
-
diff --git a/FS/FS/svc_external.pm b/FS/FS/svc_external.pm
deleted file mode 100644
index 79eec97..0000000
--- a/FS/FS/svc_external.pm
+++ /dev/null
@@ -1,180 +0,0 @@
-package FS::svc_external;
-
-use strict;
-use vars qw(@ISA); # $conf
-use FS::UID;
-#use FS::Record qw( qsearch qsearchs dbh);
-use FS::svc_Common;
-
-@ISA = qw( FS::svc_Common );
-
-#FS::UID::install_callback( sub {
-# $conf = new FS::Conf;
-#};
-
-=head1 NAME
-
-FS::svc_external - Object methods for svc_external records
-
-=head1 SYNOPSIS
-
- use FS::svc_external;
-
- $record = new FS::svc_external \%hash;
- $record = new FS::svc_external { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_external object represents a externally tracked service.
-FS::svc_external inherits from FS::svc_Common. The following fields are
-currently supported:
-
-=over 4
-
-=item svcnum - primary key
-
-=item id - unique number of external record
-
-=item title - for invoice line items
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new external service. To add the external service to the database,
-see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'svc_external'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this external service to the database. If there is an error, returns the
-error, otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-=cut
-
-#sub insert {
-# my $self = shift;
-# my $error;
-#
-# $error = $self->SUPER::insert(@_);
-# return $error if $error;
-#
-# '';
-#}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-#sub delete {
-# my $self = shift;
-# my $error;
-#
-# $error = $self->SUPER::delete;
-# return $error if $error;
-#
-# '';
-#}
-
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-#sub replace {
-# my ( $new, $old ) = ( shift, shift );
-# my $error;
-#
-# $error = $new->SUPER::replace($old);
-# return $error if $error;
-#
-# '';
-#}
-
-=item suspend
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid external service. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and repalce methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $x = $self->setfixed;
- return $x unless ref($x);
- my $part_svc = $x;
-
- my $error =
- $self->ut_numbern('svcnum')
- || $self->ut_numbern('id')
- || $self->ut_textn('title')
- ;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, L<FS::Record>, L<FS::cust_svc>, L<FS::part_svc>,
-L<FS::cust_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_forward.pm b/FS/FS/svc_forward.pm
deleted file mode 100644
index ab24d32..0000000
--- a/FS/FS/svc_forward.pm
+++ /dev/null
@@ -1,312 +0,0 @@
-package FS::svc_forward;
-
-use strict;
-use vars qw( @ISA );
-use FS::Conf;
-use FS::Record qw( fields qsearch qsearchs dbh );
-use FS::svc_Common;
-use FS::cust_svc;
-use FS::svc_acct;
-use FS::svc_domain;
-
-@ISA = qw( FS::svc_Common );
-
-=head1 NAME
-
-FS::svc_forward - Object methods for svc_forward records
-
-=head1 SYNOPSIS
-
- use FS::svc_forward;
-
- $record = new FS::svc_forward \%hash;
- $record = new FS::svc_forward { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_forward object represents a mail forwarding alias. FS::svc_forward
-inherits from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key (assigned automatcially for new accounts)
-
-=item srcsvc - svcnum of the source of the forward (see L<FS::svc_acct>)
-
-=item src - literal source (username or full email address)
-
-=item dstsvc - svcnum of the destination of the forward (see L<FS::svc_acct>)
-
-=item dst - literal destination (username or full email address)
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new mail forwarding alias. To add the mail forwarding alias to the
-database, see L<"insert">.
-
-=cut
-
-sub table { 'svc_forward'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this mail forwarding alias to the database. If there is an error, returns
-the error, otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-=cut
-
-sub insert {
- my $self = shift;
- my $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- $error = $self->check;
- return $error if $error;
-
- $error = $self->SUPER::insert(@_);
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- ''; #no error
-
-}
-
-=item delete
-
-Deletes this mail forwarding alias from the database. If there is an error,
-returns the error, otherwise returns false.
-
-The corresponding FS::cust_svc record will be deleted as well.
-
-=cut
-
-sub delete {
- my $self = shift;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::Autocommit = 0;
- my $dbh = dbh;
-
- my $error = $self->SUPER::delete;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
-
- if ( $new->srcsvc != $old->srcsvc
- && ( $new->dstsvc != $old->dstsvc
- || ! $new->dstsvc && $new->dst ne $old->dst
- )
- ) {
- return "Can't change both source and destination of a mail forward!"
- }
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- my $error = $new->SUPER::replace($old);
- if ($error) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-=item suspend
-
-Just returns false (no error) for now.
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Just returns false (no error) for now.
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Just returns false (no error) for now.
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid mail forwarding alias. If there
-is an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-Sets any fixed values; see L<FS::part_svc>.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $x = $self->setfixed;
- return $x unless ref($x);
- #my $part_svc = $x;
-
- my $error = $self->ut_numbern('svcnum')
- || $self->ut_numbern('srcsvc')
- || $self->ut_numbern('dstsvc')
- ;
- return $error if $error;
-
- return "Both srcsvc and src were defined; only one can be specified"
- if $self->srcsvc && $self->src;
-
- return "one of srcsvc or src is required"
- unless $self->srcsvc || $self->src;
-
- return "Unknown srcsvc: ". $self->srcsvc
- unless ! $self->srcsvc || $self->srcsvc_acct;
-
- return "Both dstsvc and dst were defined; only one can be specified"
- if $self->dstsvc && $self->dst;
-
- return "one of dstsvc or dst is required"
- unless $self->dstsvc || $self->dst;
-
- return "Unknown dstsvc: ". $self->dstsvc
- unless ! $self->dstsvc || $self->dstsvc_acct;
- #return "Unknown dstsvc"
- # unless qsearchs('svc_acct', { 'svcnum' => $self->dstsvc } )
- # || ! $self->dstsvc;
-
- if ( $self->src ) {
- $self->src =~ /^([\w\.\-\&]*)(\@([\w\-]+\.)+\w+)$/
- or return "Illegal src: ". $self->src;
- $self->src("$1$2");
- } else {
- $self->src('');
- }
-
- if ( $self->dst ) {
- my $conf = new FS::Conf;
- if ( $conf->exists('svc_forward-arbitrary_dst') ) {
- my $error = $self->ut_textn('dst');
- return $error if $error;
- } else {
- $self->dst =~ /^([\w\.\-\&]*)(\@([\w\-]+\.)+\w+)$/
- or return "Illegal dst: ". $self->dst;
- $self->dst("$1$2");
- }
- } else {
- $self->dst('');
- }
-
- $self->SUPER::check;
-}
-
-=item srcsvc_acct
-
-Returns the FS::svc_acct object referenced by the srcsvc column, or false for
-literally specified forwards.
-
-=cut
-
-sub srcsvc_acct {
- my $self = shift;
- qsearchs('svc_acct', { 'svcnum' => $self->srcsvc } );
-}
-
-=item dstsvc_acct
-
-Returns the FS::svc_acct object referenced by the srcsvc column, or false for
-literally specified forwards.
-
-=cut
-
-sub dstsvc_acct {
- my $self = shift;
- qsearchs('svc_acct', { 'svcnum' => $self->dstsvc } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::Conf>, L<FS::cust_svc>, L<FS::part_svc>, L<FS::cust_pkg>,
-L<FS::svc_acct>, L<FS::svc_domain>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_phone.pm b/FS/FS/svc_phone.pm
deleted file mode 100644
index fca3369..0000000
--- a/FS/FS/svc_phone.pm
+++ /dev/null
@@ -1,146 +0,0 @@
-package FS::svc_phone;
-
-use strict;
-use vars qw( @ISA );
-#use FS::Record qw( qsearch qsearchs );
-use FS::svc_Common;
-
-@ISA = qw( FS::svc_Common );
-
-=head1 NAME
-
-FS::svc_phone - Object methods for svc_phone records
-
-=head1 SYNOPSIS
-
- use FS::svc_phone;
-
- $record = new FS::svc_phone \%hash;
- $record = new FS::svc_phone { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_phone object represents a phone number. FS::svc_phone inherits
-from FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key
-
-=item countrycode -
-
-=item phonenum -
-
-=item pin -
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new phone number. To add the number to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'svc_phone'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item suspend
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid phone number. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('svcnum')
- || $self->ut_numbern('countrycode')
- || $self->ut_number('phonenum')
- || $self->ut_numbern('pin')
- ;
- return $error if $error;
-
- $self->countrycode(1) unless $self->countrycode;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, L<FS::Record>, L<FS::cust_svc>, L<FS::part_svc>,
-L<FS::cust_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/svc_www.pm b/FS/FS/svc_www.pm
deleted file mode 100644
index 12d7e92..0000000
--- a/FS/FS/svc_www.pm
+++ /dev/null
@@ -1,286 +0,0 @@
-package FS::svc_www;
-
-use strict;
-use vars qw(@ISA $conf $apacheip);
-#use FS::Record qw( qsearch qsearchs );
-use FS::Record qw( qsearchs dbh );
-use FS::svc_Common;
-use FS::cust_svc;
-use FS::domain_record;
-use FS::svc_acct;
-use FS::svc_domain;
-
-@ISA = qw( FS::svc_Common );
-
-#ask FS::UID to run this stuff for us later
-$FS::UID::callback{'FS::svc_www'} = sub {
- $conf = new FS::Conf;
- $apacheip = $conf->config('apacheip');
-};
-
-=head1 NAME
-
-FS::svc_www - Object methods for svc_www records
-
-=head1 SYNOPSIS
-
- use FS::svc_www;
-
- $record = new FS::svc_www \%hash;
- $record = new FS::svc_www { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::svc_www object represents an web virtual host. FS::svc_www inherits
-from FS::svc_Common. The following fields are currently supported:
-
-=over 4
-
-=item svcnum - primary key
-
-=item recnum - DNS `A' record corresponding to this web virtual host. (see L<FS::domain_record>)
-
-=item usersvc - account (see L<FS::svc_acct>) corresponding to this web virtual host.
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new web virtual host. To add the record to the database, see
-L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'svc_www'; }
-
-=item insert [ , OPTION => VALUE ... ]
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-Currently available options are: I<depend_jobnum>
-
-If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
-jobnums), all provisioning jobs will have a dependancy on the supplied
-jobnum(s) (they will not run until the specific job(s) complete(s)).
-
-
-=cut
-
-sub insert {
- my $self = shift;
-
- my $error = $self->check;
- return $error if $error;
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
- my $oldAutoCommit = $FS::UID::AutoCommit;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
-
- #if ( $self->recnum =~ /^([\w\-]+|\@)\.(([\w\.\-]+\.)+\w+)$/ ) {
- if ( $self->recnum =~ /^([\w\-]+|\@)\.(\d+)$/ ) {
- my( $reczone, $domain_svcnum ) = ( $1, $2 );
- unless ( $apacheip ) {
- $dbh->rollback if $oldAutoCommit;
- return "Configuration option apacheip not set; can't autocreate A record";
- #"for $reczone". $svc_domain->domain;
- }
- my $domain_record = new FS::domain_record {
- 'svcnum' => $domain_svcnum,
- 'reczone' => $reczone,
- 'recaf' => 'IN',
- 'rectype' => 'A',
- 'recdata' => $apacheip,
- };
- $error = $domain_record->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
- $self->recnum($domain_record->recnum);
- }
-
- $error = $self->SUPER::insert(@_);
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- return $error;
- }
-
- $dbh->commit or die $dbh->errstr if $oldAutoCommit;
- '';
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-sub delete {
- my $self = shift;
- my $error;
-
- $error = $self->SUPER::delete;
- return $error if $error;
-
- '';
-}
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
- my $error;
-
- $error = $new->SUPER::replace($old);
- return $error if $error;
-
- '';
-}
-
-=item suspend
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid web virtual host. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and repalce methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $x = $self->setfixed;
- return $x unless ref($x);
- #my $part_svc = $x;
-
- my $error =
- $self->ut_numbern('svcnum')
-# || $self->ut_number('recnum')
- || $self->ut_numbern('usersvc')
- ;
- return $error if $error;
-
- if ( $self->recnum =~ /^(\d+)$/ ) {
-
- $self->recnum($1);
- return "Unknown recnum: ". $self->recnum
- unless qsearchs('domain_record', { 'recnum' => $self->recnum } );
-
- } elsif ( $self->recnum =~ /^([\w\-]+|\@)\.(([\w\.\-]+\.)+\w+)$/ ) {
-
- my( $reczone, $domain ) = ( $1, $2 );
-
- my $svc_domain = qsearchs( 'svc_domain', { 'domain' => $domain } )
- or return "unknown domain $domain (recnum $1.$2)";
-
- my $domain_record = qsearchs( 'domain_record', {
- 'reczone' => $reczone,
- 'svcnum' => $svc_domain->svcnum,
- });
-
- if ( $domain_record ) {
- $self->recnum($domain_record->recnum);
- } else {
- #insert will create it
- #$self->recnum("$reczone.$domain");
- $self->recnum("$reczone.". $svc_domain->svcnum);
- }
-
- } else {
- return "Illegal recnum: ". $self->recnum;
- }
-
- if ( $self->usersvc ) {
- return "Unknown usersvc0 (svc_acct.svcnum): ". $self->usersvc
- unless qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
- }
-
- $self->SUPER::check;
-
-}
-
-=item domain_record
-
-Returns the FS::domain_record record for this web virtual host's zone (see
-L<FS::domain_record>).
-
-=cut
-
-sub domain_record {
- my $self = shift;
- qsearchs('domain_record', { 'recnum' => $self->recnum } );
-}
-
-=item svc_acct
-
-Returns the FS::svc_acct record for this web virtual host's owner (see
-L<FS::svc_acct>).
-
-=cut
-
-sub svc_acct {
- my $self = shift;
- qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
-}
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, L<FS::Record>, L<FS::domain_record>, L<FS::cust_svc>,
-L<FS::part_svc>, L<FS::cust_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/FS/FS/type_pkgs.pm b/FS/FS/type_pkgs.pm
deleted file mode 100644
index bf34e7c..0000000
--- a/FS/FS/type_pkgs.pm
+++ /dev/null
@@ -1,125 +0,0 @@
-package FS::type_pkgs;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearchs );
-use FS::agent_type;
-use FS::part_pkg;
-
-@ISA = qw( FS::Record );
-
-=head1 NAME
-
-FS::type_pkgs - Object methods for type_pkgs records
-
-=head1 SYNOPSIS
-
- use FS::type_pkgs;
-
- $record = new FS::type_pkgs \%hash;
- $record = new FS::type_pkgs { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::type_pkgs record links an agent type (see L<FS::agent_type>) to a
-billing item definition (see L<FS::part_pkg>). FS::type_pkgs inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item typepkgnum - primary key
-
-=item typenum - Agent type, see L<FS::agent_type>
-
-=item pkgpart - Billing item definition, see L<FS::part_pkg>
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Create a new record. To add the record to the database, see L<"insert">.
-
-=cut
-
-sub table { 'type_pkgs'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=item delete
-
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-
-=item replace OLD_RECORD
-
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=item check
-
-Checks all fields to make sure this is a valid record. If there is an error,
-returns the error, otherwise returns false. Called by the insert and replace
-methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('typepkgnum')
- || $self->ut_number('typenum')
- || $self->ut_number('pkgpart')
- ;
- return $error if $error;
-
- return "Unknown typenum"
- unless qsearchs( 'agent_type', { 'typenum' => $self->typenum } );
-
- return "Unknown pkgpart"
- unless qsearchs( 'part_pkg', { 'pkgpart' => $self->pkgpart } );
-
- $self->SUPER::check;
-}
-
-=item part_pkg
-
-Returns the FS::part_pkg object associated with this record.
-
-=cut
-
-sub part_pkg {
- my $self = shift;
- qsearchs( 'part_pkg', { 'pkgpart' => $self->pkgpart } );
-}
-
-=cut
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::Record>, L<FS::agent_type>, L<FS::part_pkgs>, schema.html from the base
-documentation.
-
-=cut
-
-1;
-
diff --git a/FS/MANIFEST b/FS/MANIFEST
deleted file mode 100644
index 10f9ffa..0000000
--- a/FS/MANIFEST
+++ /dev/null
@@ -1,356 +0,0 @@
-Changes
-MANIFEST
-MANIFEST.SKIP
-Makefile.PL
-README
-bin/freeside-addoutsource
-bin/freeside-addoutsourceuser
-bin/freeside-addgroup
-bin/freeside-adduser
-bin/freeside-apply-credits
-bin/freeside-bill
-bin/freeside-count-active-customers
-bin/freeside-daily
-bin/freeside-deloutsource
-bin/freeside-deloutsourceuser
-bin/freeside-deluser
-bin/freeside-email
-bin/freeside-expiration-alerter
-bin/freeside-queued
-bin/freeside-radgroup
-bin/freeside-reexport
-bin/freeside-selfservice-server
-bin/freeside-setinvoice
-bin/freeside-setup
-bin/freeside-sqlradius-radacctd
-bin/freeside-sqlradius-reset
-bin/freeside-sqlradius-seconds
-FS.pm
-FS/AccessRight.pm
-FS/CGI.pm
-FS/InitHandler.pm
-FS/ClientAPI.pm
-FS/ClientAPI_SessionCache.pm
-FS/ClientAPI/passwd.pm
-FS/ClientAPI/MyAccount.pm
-FS/Conf.pm
-FS/ConfItem.pm
-FS/Cron/backup.pm
-FS/Cron/bill.pm
-FS/Cron/vacuum.pm
-FS/Daemon.pm
-FS/Misc.pm
-FS/Record.pm
-FS/Report.pm
-FS/Report/Table.pm
-FS/Report/Table/Monthly.pm
-FS/SearchCache.pm
-FS/UI/Web.pm
-FS/UID.pm
-FS/Msgcat.pm
-FS/Pony.pm
-FS/acct_snarf.pm
-FS/agent.pm
-FS/agent_type.pm
-FS/cust_bill.pm
-FS/cust_bill_pkg.pm
-FS/cust_bill_pkg_detail.pm
-FS/cust_credit.pm
-FS/cust_credit_bill.pm
-FS/cust_main.pm
-FS/cust_main_Mixin.pm
-FS/cust_main_county.pm
-FS/cust_main_invoice.pm
-FS/cust_pay.pm
-FS/cust_bill_event.pm
-FS/cust_bill_pay.pm
-FS/cust_pay_batch.pm
-FS/cust_pay_refund.pm
-FS/cust_pkg.pm
-FS/cust_refund.pm
-FS/cust_credit_refund.pm
-FS/cust_svc.pm
-FS/h_Common.pm
-FS/h_cust_bill.pm
-FS/h_cust_svc.pm
-FS/h_cust_tax_exempt.pm
-FS/h_domain_record.pm
-FS/h_svc_acct.pm
-FS/h_svc_broadband.pm
-FS/h_svc_domain.pm
-FS/h_svc_external.pm
-FS/h_svc_forward.pm
-FS/h_svc_www.pm
-FS/part_bill_event.pm
-FS/export_svc.pm
-FS/part_export.pm
-FS/part_export_option.pm
-FS/part_export/acct_sql.pm
-FS/part_export/apache.pm
-FS/part_export/bind.pm
-FS/part_export/bind_slave.pm
-FS/part_export/bsdshell.pm
-FS/part_export/communigate_pro.pm
-FS/part_export/communigate_pro_singledomain.pm
-FS/part_export/cp.pm
-FS/part_export/cyrus.pm
-FS/part_export/domain_shellcommands.pm
-FS/part_export/forward_shellcommands.pm
-FS/part_export/http.pm
-FS/part_export/infostreet.pm
-FS/part_export/ldap.pm
-FS/part_export/null.pm
-FS/part_export/radiator.pm
-FS/part_export/router.pm
-FS/part_export/shellcommands.pm
-FS/part_export/shellcommands_withdomain.pm
-FS/part_export/sqlmail.pm
-FS/part_export/sqlradius.pm
-FS/part_export/sysvshell.pm
-FS/part_export/textradius.pm
-FS/part_export/vpopmail.pm
-FS/part_export/www_shellcommands.pm
-FS/part_pkg.pm
-FS/part_pkg_option.pm
-FS/part_pkg/flat.pm
-FS/part_pkg/flat_comission.pm
-FS/part_pkg/flat_comission_cust.pm
-FS/part_pkg/flat_comission_pkg.pm
-FS/part_pkg/flat_delayed.pm
-FS/part_pkg/prorate.pm
-FS/part_pkg/sesmon_hour.pm
-FS/part_pkg/sesmon_minute.pm
-FS/part_pkg/sql_external.pm
-FS/part_pkg/sql_generic.pm
-FS/part_pkg/sqlradacct_hour.pm
-FS/part_pkg/subscription.pm
-FS/part_pkg/voip_sqlradacct.pm
-FS/part_pkg/voip_cdr.pm
-FS/part_pop_local.pm
-FS/part_referral.pm
-FS/part_svc.pm
-FS/part_svc_column.pm
-FS/part_svc_router.pm
-FS/part_virtual_field.pm
-FS/payby.pm
-FS/pkg_class.pm
-FS/pkg_svc.pm
-FS/rate.pm
-FS/rate_detail.pm
-FS/rate_region.pm
-FS/rate_prefix.pm
-FS/reg_code.pm
-FS/reg_code_pkg.pm
-FS/svc_Common.pm
-FS/svc_acct.pm
-FS/svc_acct_pop.pm
-FS/svc_broadband.pm
-FS/svc_domain.pm
-FS/svc_external.pm
-FS/router.pm
-FS/type_pkgs.pm
-FS/nas.pm
-FS/port.pm
-FS/session.pm
-FS/domain_record.pm
-FS/prepay_credit.pm
-FS/svc_www.pm
-FS/svc_forward.pm
-FS/raddb.pm
-FS/radius_usergroup.pm
-FS/queue.pm
-FS/queue_arg.pm
-FS/queue_depend.pm
-FS/msgcat.pm
-FS/cust_tax_exempt.pm
-FS/cust_tax_exempt_pkg.pm
-FS/clientapi_session.pm
-FS/clientapi_session_field.pm
-t/agent.t
-t/agent_type.t
-t/AccessRight.t
-t/CGI.t
-t/InitHandler.t
-t/ClientAPI.t
-t/ClientAPI_SessionCache.t
-t/Conf.t
-t/ConfItem.t
-t/Cron-backup.t
-t/Cron-bill.t
-t/Cron-vacuum.t
-t/Daemon.t
-t/Misc.t
-t/Record.t
-t/Report.t
-t/Report-Table.t
-t/Report-Table-Monthly.t
-t/UID.t
-t/Msgcat.t
-t/SearchCache.t
-t/cust_bill.t
-t/cust_bill_event.t
-t/cust_bill_pay.t
-t/cust_bill_pkg.t
-t/cust_bill_pkg_detail.t
-t/cust_credit.t
-t/cust_credit_bill.t
-t/cust_credit_refund.t
-t/cust_main.t
-t/cust_main_Mixin.t
-t/cust_main_county.t
-t/cust_main_invoice.t
-t/cust_pay.t
-t/cust_pay_batch.t
-t/cust_pay_refund.t
-t/cust_pkg.t
-t/cust_refund.t
-t/cust_svc.t
-t/h_cust_bill.t
-t/h_cust_svc.t
-t/h_cust_tax_exempt.t
-t/h_Common.t
-t/h_cust_svc.t
-t/h_domain_record.t
-t/h_svc_acct.t
-t/h_svc_broadband.t
-t/h_svc_domain.t
-t/h_svc_external.t
-t/h_svc_forward.t
-t/h_svc_www.t
-t/cust_tax_exempt.t
-t/cust_tax_exempt_pkg.t
-t/domain_record.t
-t/nas.t
-t/part_bill_event.t
-t/export_svc.t
-t/part_export.t
-t/part_export_option.t
-t/part_export-acct_sql.t
-t/part_export-apache.t
-t/part_export-bind.t
-t/part_export-bind_slave.t
-t/part_export-bsdshell.t
-t/part_export-communigate_pro.t
-t/part_export-communigate_pro_singledomain.t
-t/part_export-cp.t
-t/part_export-cyrus.t
-t/part_export-domain_shellcommands.t
-t/part_export-forward_shellcommands.t
-t/part_export-http.t
-t/part_export-infostreet.t
-t/part_export-ldap.t
-t/part_export-null.t
-t/part_export-passwdfile.t
-t/part_export-postfix.t
-t/part_export-radiator.t
-t/part_export-router.t
-t/part_export-shellcommands.t
-t/part_export-shellcommands_withdomain.t
-t/part_export-sqlmail.t
-t/part_export-sqlradius.t
-t/part_export-sysvshell.t
-t/part_export-textradius.t
-t/part_export-vpopmail.t
-t/part_export-www_shellcommands.t
-t/part_pkg.t
-t/part_pkg_option.t
-t/part_pkg-flat.t
-t/part_pkg-flat_comission.t
-t/part_pkg-flat_comission_cust.t
-t/part_pkg-flat_comission_pkg.t
-t/part_pkg-flat_delayed.t
-t/part_pkg-prorate.t
-t/part_pkg-sesmon_hour.t
-t/part_pkg-sesmon_minute.t
-t/part_pkg-sql_external.t
-t/part_pkg-sql_generic.t
-t/part_pkg-sqlradacct_hour.t
-t/part_pkg-subscription.t
-t/part_pkg-voip_sqlradacct.t
-t/part_pkg-voip_cdr.t
-t/part_pop_local.t
-t/part_referral.t
-t/part_svc.t
-t/part_svc_column.t
-t/payby.t
-t/pkg_class.t
-t/pkg_svc.t
-t/port.t
-t/prepay_credit.t
-t/rate.t
-t/rate_detail.t
-t/rate_region.t
-t/rate_prefix.t
-t/radius_usergroup.t
-t/reg_code.t
-t/reg_code_pkg.t
-t/session.t
-t/svc_acct.t
-t/svc_acct_pop.t
-t/svc_broadband.t
-t/svc_Common.t
-t/svc_domain.t
-t/svc_external.t
-t/svc_forward.t
-t/svc_www.t
-t/type_pkgs.t
-t/queue.t
-t/queue_arg.t
-t/queue_depend.t
-t/msgcat.t
-t/raddb.t
-t/clientapi_session.t
-t/clientapi_session_field.t
-FS/payment_gateway.pm
-t/payment_gateway.t
-FS/payment_gateway_option.pm
-t/payment_gateway_option.t
-FS/option_Common.pm
-t/option_Common.t
-FS/agent_payment_gateway.pm
-t/agent_payment_gateway.t
-FS/banned_pay.pm
-t/banned_pay.t
-FS/cancel_reason.pm
-t/cancel_reason.t
-bin/freeside-prepaidd
-FS/cdr.pm
-t/cdr.t
-FS/cdr_calltype.pm
-t/cdr_calltype.t
-FS/cdr_type.pm
-t/cdr_type.t
-FS/cdr_carrier.pm
-t/cdr_carrier.t
-FS/inventory_class.pm
-t/inventory_class.t
-FS/inventory_item.pm
-t/inventory_item.t
-FS/cdr_upstream_rate.pm
-t/cdr_upstream_rate.t
-FS/access_user.pm
-t/access_user.t
-FS/access_user_pref.pm
-t/access_user_pref.t
-FS/access_group.pm
-t/access_group.t
-FS/access_usergroup.pm
-t/access_usergroup.t
-FS/access_groupagent.pm
-t/access_groupagent.t
-FS/access_right.pm
-t/access_right.t
-FS/m2m_Common.pm
-FS/pay_batch.pm
-t/pay_batch.t
-FS/ConfDefaults.pm
-t/ConfDefaults.t
-FS/m2name_Common.pm
-FS/CurrentUser.pm
-FS/svc_phone.pm
-t/svc_phone.t
-FS/h_svc_phone.pm
-FS/cust_bill_pay_pkg.pm
-t/cust_bill_pay_pkg.t
-FS/cust_credit_bill_pkg.pm
-t/cust_credit_bill_pkg.t
diff --git a/FS/MANIFEST.SKIP b/FS/MANIFEST.SKIP
deleted file mode 100644
index ae335e7..0000000
--- a/FS/MANIFEST.SKIP
+++ /dev/null
@@ -1 +0,0 @@
-CVS/
diff --git a/FS/Makefile.PL b/FS/Makefile.PL
deleted file mode 100644
index 1647f8e..0000000
--- a/FS/Makefile.PL
+++ /dev/null
@@ -1,10 +0,0 @@
-use ExtUtils::MakeMaker;
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- 'NAME' => 'FS',
- 'VERSION_FROM' => 'FS.pm', # finds $VERSION
- 'EXE_FILES' => [ glob 'bin/*' ],
- 'INSTALLSCRIPT' => '/usr/local/bin',
- 'INSTALLSITEBIN' => '/usr/local/bin',
-);
diff --git a/FS/README b/FS/README
deleted file mode 100644
index d4c35ac..0000000
--- a/FS/README
+++ /dev/null
@@ -1,6 +0,0 @@
-This is the Perl module section of Freeside.
-
-perl Makefile.PL
-make
-make test
-make install
diff --git a/FS/bin/freeside-addgroup b/FS/bin/freeside-addgroup
deleted file mode 100755
index 7b30f7d..0000000
--- a/FS/bin/freeside-addgroup
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use vars qw($opt_s);
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-use FS::CurrentUser;
-use FS::AccessRight;
-use FS::access_group;
-use FS::access_right;
-use FS::access_groupagent;
-
-getopts("s");
-my $user = shift or die &usage; #just for adminsuidsetup
-my $group = shift or die &usage;
-
-$FS::CurrentUser::upgrade_hack = 1;
-#adminsuidsetup $rootuser;
-adminsuidsetup $user;
-
-my $access_group = new FS::access_group { 'groupname' => $group };
-my $error = $access_group->insert;
-die $error if $error;
-
-if ( $opt_s ) {
- foreach my $rightname ( FS::AccessRight->rights ) {
- my $access_right = new FS::access_right {
- 'righttype' => 'FS::access_group',
- 'rightobjnum' => $access_group->groupnum,
- 'rightname' => $rightname,
- };
- my $ar_error = $access_right->insert;
- die $ar_error if $ar_error;
- }
-
- foreach my $agent ( qsearch('agent', {} ) ) {
- my $access_groupagent = new FS::access_groupagent {
- 'groupnum' => $access_group->groupnum,
- 'agentnum' => $agent->agentnum,
- };
- my $aga_error = $access_groupagent->insert;
- die $aga_error if $aga_error;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-addgroup [ -s ] username groupname"
-}
-
diff --git a/FS/bin/freeside-addoutsource b/FS/bin/freeside-addoutsource
deleted file mode 100644
index db4e7a3..0000000
--- a/FS/bin/freeside-addoutsource
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-
-domain=$1
-
-createdb $domain && \
-\
-mkdir /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain && \
-\
-chown freeside /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain && \
-\
-cp /home/ivan/freeside/conf/[a-z]* /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain && \
-\
-touch /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain/secrets && \
-\
-chown freeside /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain/secrets && \
-\
-chmod 600 /usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain/secrets && \
-\
-echo -e "DBI:Pg:dbname=$domain\nfreeside\n" >/usr/local/etc/freeside/conf.DBI:Pg:dbname=$domain/secrets && \
-\
-mkdir /usr/local/etc/freeside/counters.DBI:Pg:dbname=$domain && \
-mkdir /usr/local/etc/freeside/cache.DBI:Pg:dbname=$domain && \
-mkdir /usr/local/etc/freeside/export.DBI:Pg:dbname=$domain
-
diff --git a/FS/bin/freeside-addoutsourceuser b/FS/bin/freeside-addoutsourceuser
deleted file mode 100644
index 02a4351..0000000
--- a/FS/bin/freeside-addoutsourceuser
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-username=$1
-domain=$2
-password=$3
-realdomain=$4
-
-freeside-adduser -h /usr/local/etc/freeside/htpasswd \
- -s conf.DBI:Pg:dbname=$domain/secrets \
- -b \
- $username $password 2>/dev/null
-
-[ -e /usr/local/etc/freeside/dbdef.DBI:Pg:dbname=$domain ] \
- || ( freeside-setup -d $realdomain $username 2>/dev/null )
-
diff --git a/FS/bin/freeside-adduser b/FS/bin/freeside-adduser
deleted file mode 100644
index b955902..0000000
--- a/FS/bin/freeside-adduser
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw($opt_s $opt_h $opt_b $opt_c $opt_g $opt_n);
-use Fcntl qw(:flock);
-use Getopt::Std;
-
-my $FREESIDE_CONF = "/usr/local/etc/freeside";
-
-getopts("s:bch:g:n");
-die &usage if $opt_c && ! $opt_h;
-my $user = shift or die &usage;
-
-#if ( -e "$FREESIDE_CONF/mapsecrets" ) {
-# open(MAPSECRETS,"<$FREESIDE_CONF/mapsecrets")
-# or die "can't open $FREESIDE_CONF/mapsecrets: $!";
-# while (<MAPSECRETS>) {
-# /^(\S+) / or die "unparsable line in mapsecrets: $_";
-# die "user $user already exists\n" if $user eq $1;
-# }
-# close MAPSECRETS;
-#}
-
-if ( $opt_h ) {
- my @args = ( 'htpasswd' );
- push @args, '-b' if $opt_b;
- push @args, '-c' if $opt_c;
- push @args, $opt_h, $user;
- push @args, shift if $opt_b;
- #warn join(', ', @args)."\n";
- system(@args) == 0 or die "htpasswd failed: $?";
-}
-
-if ( $opt_s ) {
- open(MAPSECRETS,">>$FREESIDE_CONF/mapsecrets")
- and flock(MAPSECRETS,LOCK_EX)
- or die "can't open $FREESIDE_CONF/mapsecrets: $!";
- print MAPSECRETS "$user $opt_s\n";
- close MAPSECRETS or die "can't close $FREESIDE_CONF/mapsecrets: $!";
-}
-
-###
-
-exit if $opt_n;
-
-###
-
-use FS::UID qw(adminsuidsetup);
-use FS::CurrentUser;
-use FS::access_user;
-use FS::access_usergroup;
-
-$FS::CurrentUser::upgrade_hack = 1;
-#adminsuidsetup $rootuser;
-adminsuidsetup $user;
-
-my $access_user = new FS::access_user {
- 'username' => $user,
- '_password' => 'notyet',
- 'first' => 'Firstname', # $opt_f ||
- 'last' => 'Lastname', # $opt_l ||
-};
-my $au_error = $access_user->insert;
-die $au_error if $au_error;
-
-if ( $opt_g ) {
-
- my $access_usergroup = new FS::access_usergroup {
- 'usernum' => $access_user->usernum,
- 'groupnum' => $opt_g,
- };
- my $aug_error = $access_usergroup->insert;
- die $aug_error if $aug_error;
-
-}
-
-###
-
-sub usage {
- die "Usage:\n\n freeside-adduser [ -h htpasswd_file [ -c ] [ -b ] ] [ -g groupnum ] username [ password ]"
-}
-
-=head1 NAME
-
-freeside-adduser - Command line interface to add (freeside) users.
-
-=head1 SYNOPSIS
-
- freeside-adduser [ -n ] [ -h htpasswd_file [ -c ] [ -b ] ] [ -g groupnum ] username [ password ]
-
-=head1 DESCRIPTION
-
-Adds a user to the Freeside billing system. This is for adding users (internal
-sales/tech folks) to the web interface, not for adding customer accounts.
-
- -h: Also call htpasswd for this user with the given filename
-
- -c: Passed to htpasswd(1)
-
- -b: same as htpasswd(1), probably insecure, not recommended
-
- -g: initial groupnum
-
- Development/multi-DB options:
-
- -s: alternate secrets file
-
- -n: no ACL added, for bootstrapping
-
-=head1 SEE ALSO
-
-L<htpasswd>(1), base Freeside documentation
-
-=cut
-
diff --git a/FS/bin/freeside-apply-credits b/FS/bin/freeside-apply-credits
deleted file mode 100755
index ea6a7bd..0000000
--- a/FS/bin/freeside-apply-credits
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw( $user $cust_main @customers );
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-use FS::cust_main;
-
-$user = shift or die &usage;
-&adminsuidsetup( $user );
-
-my @customers = qsearch('cust_main', {} );
-die "No customers" unless (scalar(@customers) > 0);
-
-foreach $cust_main (@customers) {
- print "Applying credits for customer #". $cust_main->custnum;
- $cust_main->apply_credits;
-}
-
-
-
diff --git a/FS/bin/freeside-bill b/FS/bin/freeside-bill
deleted file mode 100755
index 49ad4a7..0000000
--- a/FS/bin/freeside-bill
+++ /dev/null
@@ -1,128 +0,0 @@
-#!/usr/bin/perl -w
-# don't take any world-facing input
-#!/usr/bin/perl -Tw
-
-use strict;
-use Fcntl qw(:flock);
-use Date::Parse;
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch qsearchs);
-use FS::cust_main;
-
-&untaint_argv; #what it sounds like (eww)
-use vars qw($opt_a $opt_c $opt_d $opt_p);
-getopts("acd:p");
-my $user = shift or die &usage;
-
-adminsuidsetup $user;
-
-my %bill_only = map { $_ => 1 } (
- @ARGV ? @ARGV : ( map $_->custnum, qsearch('cust_main', {} ) )
-);
-
-#we're at now now (and later).
-my($time)= $opt_d ? str2time($opt_d) : $^T;
-
-# find packages w/ bill < time && cancel != '', and create corresponding
-# customer objects
-
-my($cust_main,%saw);
-foreach $cust_main (
- map {
- unless ( exists $saw{ $_->custnum } && defined $saw{ $_->custnum} ) {
- $saw{ $_->custnum } = 0; # to avoid 'use of uninitialized value' errors
- }
- if (
- ( $opt_a || ( ( $_->getfield('bill') || 0 ) <= $time ) )
- && $bill_only{ $_->custnum }
- && !$saw{ $_->custnum }++
- ) {
- qsearchs('cust_main',{'custnum'=> $_->custnum } );
- } else {
- ();
- }
- } ( qsearch('cust_pkg', { 'cancel' => '' }),
- qsearch('cust_pkg', { 'cancel' => 0 }),
- )
-) {
-
- # and bill them
-
- print "Billing customer #" . $cust_main->getfield('custnum') . "\n";
-
- my($error);
-
- $error=$cust_main->bill('time'=>$time);
- warn "Error billing, customer #" . $cust_main->getfield('custnum') .
- ":" . $error if $error;
-
- if ($opt_p) {
- $cust_main->apply_payments;
- $cust_main->apply_credits;
- }
-
- if ($opt_c) {
- $error=$cust_main->collect( 'invoice_time' => $time);
- warn "Error collecting from customer #" . $cust_main->custnum. ":$error"
- if $error;
-
- #sleep 1;
- }
-
-}
-
-# subroutines
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- #$ARGV[$_] =~ /^([\w\-\/]*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- # Date::Parse
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-bill [ -c [ -p ] ] [ -d 'date' ] user [ custnum custnum ... ]\n";
-}
-
-=head1 NAME
-
-freeside-bill - Command line (crontab, script) interface to customer billing.
-
-=head1 SYNOPSIS
-
- freeside-bill [ -c [ -p ] [ -a ] ] [ -d 'date' ] user [ custnum custnum ... ]
-
-=head1 DESCRIPTION
-
-This script is deprecated in 1.4.0. You should use freeside-daily instead.
-
-Bills customers. Searches for customers who are due for billing and calls
-the bill and collect methods of a cust_main object. See L<FS::cust_main>.
-
- -c: Turn on collecting (you probably want this).
-
- -p: Apply unapplied payments and credits before collecting (you probably want
- this too)
-
- -a: Call collect even if there isn't a new invoice (probably a bad idea for
- daily use)
-
- -d: Pretend it's 'date'. Date is in any format Date::Parse is happy with,
- but be careful.
-
-user: From the mapsecrets file - see config.html from the base documentation
-
-custnum: if one or more customer numbers are specified, only bills those
-customers. Otherwise, bills all customers.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<freeside-daily>, L<FS::cust_main>, config.html from the base documentation
-
-=cut
-
diff --git a/FS/bin/freeside-count-active-customers b/FS/bin/freeside-count-active-customers
deleted file mode 100755
index 759085a..0000000
--- a/FS/bin/freeside-count-active-customers
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-domain=$1
-
-echo "\t
-select count(*) from cust_main where
- 0 < ( SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- AND ( cust_pkg.cancel IS NULL
- OR cust_pkg.cancel = 0
- )
- )
- OR 0 = ( SELECT COUNT(*) FROM cust_pkg
- WHERE cust_pkg.custnum = cust_main.custnum
- );
-" | psql -U freeside -q $domain | head -1
-
diff --git a/FS/bin/freeside-daily b/FS/bin/freeside-daily
deleted file mode 100755
index b9742c4..0000000
--- a/FS/bin/freeside-daily
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup);
-
-&untaint_argv; #what it sounds like (eww)
-#use vars qw($opt_d $opt_v $opt_p $opt_a $opt_s $opt_y);
-use vars qw(%opt);
-getopts("p:a:d:vsy:", \%opt);
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-use FS::Cron::bill qw(bill);
-bill(%opt);
-
-use FS::Cron::vacuum qw(vacuum);
-vacuum();
-
-use FS::Cron::backup qw(backup_scp);
-backup_scp();
-
-###
-# subroutines
-###
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- #$ARGV[$_] =~ /^([\w\-\/]*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- # Date::Parse
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-daily [ -d 'date' ] user [ custnum custnum ... ]\n";
-}
-
-###
-# documentation
-###
-
-=head1 NAME
-
-freeside-daily - Run daily billing and invoice collection events.
-
-=head1 SYNOPSIS
-
- freeside-daily [ -d 'date' ] [ -y days ] [ -p 'payby' ] [ -a agentnum ] [ -s ] [ -v ] user [ custnum custnum ... ]
-
-=head1 DESCRIPTION
-
-Bills customers and runs invoice collection events. Should be run from
-crontab daily.
-
-Bills customers. Searches for customers who are due for billing and calls
-the bill and collect methods of a cust_main object. See L<FS::cust_main>.
-
- -d: Pretend it's 'date'. Date is in any format Date::Parse is happy with,
- but be careful.
-
- -y: In addition to -d, which specifies an absolute date, the -y switch
- specifies an offset, in days. For example, "-y 15" would increment the
- "pretend date" 15 days from whatever was specified by the -d switch
- (or now, if no -d switch was given).
-
- -p: Only process customers with the specified payby (I<CARD>, I<DCRD>, I<CHEK>, I<DCHK>, I<BILL>, I<COMP>, I<LECB>)
-
- -a: Only process customers with the specified agentnum
-
- -s: re-charge setup fees
-
- -v: enable debugging
-
-user: From the mapsecrets file - see config.html from the base documentation
-
-custnum: if one or more customer numbers are specified, only bills those
-customers. Otherwise, bills all customers.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<FS::cust_main>, config.html from the base documentation
-
-=cut
-
diff --git a/FS/bin/freeside-deloutsource b/FS/bin/freeside-deloutsource
deleted file mode 100644
index 5618535..0000000
--- a/FS/bin/freeside-deloutsource
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-domain=$1
-
-dropdb $domain && \
-rm -rf /usr/local/etc/freeside/conf.DBI:Pg:host=localhost\;dbname=$domain && \
-rm -rf /usr/local/etc/freeside/counters.DBI:Pg:host=localhost\;dbname=$domain && \
-rm -rf /usr/local/etc/freeside/cache.DBI:Pg:host=localhost\;dbname=$domain && \
-rm -rf /usr/local/etc/freeside/export.DBI:Pg:host=localhost\;dbname=$domain && \
-rm /usr/local/etc/freeside/dbdef.DBI:Pg:host=localhost\;dbname=$domain
-
diff --git a/FS/bin/freeside-deloutsourceuser b/FS/bin/freeside-deloutsourceuser
deleted file mode 100644
index 96871e5..0000000
--- a/FS/bin/freeside-deloutsourceuser
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-username=$1
-
-freeside-deluser -h /usr/local/etc/freeside/htpasswd $username 2>/dev/null
-
diff --git a/FS/bin/freeside-deluser b/FS/bin/freeside-deluser
deleted file mode 100644
index 57d6ce1..0000000
--- a/FS/bin/freeside-deluser
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw($opt_h);
-use Fcntl qw(:flock);
-use Getopt::Std;
-
-my $FREESIDE_CONF = "/usr/local/etc/freeside";
-
-getopts("h:");
-my $user = shift or die &usage;
-
-if ( $opt_h ) {
- open(HTPASSWD,"<$opt_h")
- and flock(HTPASSWD,LOCK_EX)
- or die "can't open $opt_h: $!";
- open(HTPASSWD_TMP,">$opt_h.tmp") or die "can't open $opt_h.tmp: $!";
- while (<HTPASSWD>) {
- print HTPASSWD_TMP $_ unless /^$user:/;
- }
- close HTPASSWD_TMP;
- rename "$opt_h.tmp", "$opt_h" or die $!;
- flock(HTPASSWD,LOCK_UN);
- close HTPASSWD;
-}
-
-open(MAPSECRETS,"<$FREESIDE_CONF/mapsecrets")
- and flock(MAPSECRETS,LOCK_EX)
- or die "can't open $FREESIDE_CONF/mapsecrets: $!";
-open(MAPSECRETS_TMP,">>$FREESIDE_CONF/mapsecrets.tmp")
- or die "can't open $FREESIDE_CONF/mapsecrets.tmp: $!";
-while (<MAPSECRETS>) {
- print MAPSECRETS_TMP $_ unless /^$user\s/;
-}
-close MAPSECRETS_TMP;
-rename "$FREESIDE_CONF/mapsecrets.tmp", "$FREESIDE_CONF/mapsecrets" or die $!;
-flock(MAPSECRETS,LOCK_UN);
-close MAPSECRETS;
-
-sub usage {
- die "Usage:\n\n freeside-deluser [ -h htpasswd_file ] username"
-}
-
-=head1 NAME
-
-freeside-deluser - Command line interface to add (freeside) users.
-
-=head1 SYNOPSIS
-
- freeside-deluser [ -h htpasswd_file ] username
-
-=head1 DESCRIPTION
-
-Adds a user to the Freeside billing system. This is for adding users (internal
-sales/tech folks) to the web interface, not for adding customer accounts.
-
- -h: Also delete from the given htpasswd filename
-
-=head1 SEE ALSO
-
-L<freeside-adduser>, L<htpasswd>(1), base Freeside documentation
-
-=cut
-
diff --git a/FS/bin/freeside-email b/FS/bin/freeside-email
deleted file mode 100755
index 400dc2a..0000000
--- a/FS/bin/freeside-email
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Conf;
-use FS::Record qw(qsearch);
-use FS::svc_acct;
-
-&untaint_argv; #what it sounds like (eww)
-my $user = shift or die &usage;
-
-adminsuidsetup $user;
-
-my $conf = new FS::Conf;
-
-my @svc_acct = qsearch('svc_acct', {});
-my @emails = map $_->email, @svc_acct;
-
-print join("\n", @emails), "\n";
-
-# subroutines
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- #$ARGV[$_] =~ /^([\w\-\/]*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- # Date::Parse
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-email user\n";
-}
-
-=head1 NAME
-
-freeside-email - Prints email addresses of all users on STDOUT
-
-=head1 SYNOPSIS
-
- freeside-email user
-
-=head1 DESCRIPTION
-
-Prints the email addresses of all customers on STDOUT, separated by newlines.
-
-user: From the mapsecrets file - see config.html from the base documentation
-
-=head1 VERSION
-
-$Id: freeside-email,v 1.2 2002-09-18 22:50:44 ivan Exp $
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-=cut
-
diff --git a/FS/bin/freeside-expiration-alerter b/FS/bin/freeside-expiration-alerter
deleted file mode 100755
index 691fd3a..0000000
--- a/FS/bin/freeside-expiration-alerter
+++ /dev/null
@@ -1,226 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use Date::Format;
-use Time::Local;
-use Text::Template;
-use Getopt::Std;
-use Net::SMTP;
-use Mail::Header;
-use Mail::Internet;
-use FS::Conf;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-use FS::cust_main;
-
-use vars qw($smtpmachine @body);
-
-#hush, perl!
-$FS::alerter::_template::first = "";
-$FS::alerter::_template::last = "";
-$FS::alerter::_template::company = "";
-$FS::alerter::_template::payby = "";
-$FS::alerter::_template::expdate = "";
-
-# Set the mail program and other variables
-my $mail_sender = "billing\@mydomain.tld"; # or invoice_from if available
-my $failure_recipient = "postmaster"; # or invoice_from if available
-my $warning_time = 30 * 24 * 60 * 60;
-my $urgent_time = 15 * 24 * 60 * 60;
-my $panic_time = 5 * 24 * 60 * 60;
-my $window_time = 24 * 60 * 60;
-
-&untaint_argv; #what it sounds like (eww)
-
-#we're at now now (and later).
-my($_date)= $^T;
-
-# Get the current month
-my ($sec,$min,$hour,$mday,$mon,$year) =
- (localtime($_date) )[0,1,2,3,4,5];
-$mon++;
-
-# Login to the database
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-# Get the needed configuration files
-my $conf = new FS::Conf;
-$smtpmachine = $conf->config('smtpmachine');
-$mail_sender = $conf->config('invoice_from')
- if $conf->exists('invoice_from');
-$failure_recipient = $conf->config('invoice_from')
- if $conf->exists('invoice_from');
-
-
-my(@customers)=qsearch('cust_main',{});
-if (scalar(@customers) == 0)
-{
- exit 1;
-}
-
-# Prepare for sending email
-
-$ENV{MAILADDRESS} = $mail_sender;
-my $header = new Mail::Header ( [
- "From: Account Processor",
- "To: $failure_recipient",
- "Sender: $mail_sender",
- "Reply-To: $mail_sender",
- "Subject: Unnotified Billing Arrangement Expirations",
-] );
-
-my @alerter_template = $conf->config('alerter_template')
- or die "cannot load config file alerter_template";
-
-my $alerter = new Text::Template (TYPE => 'ARRAY', SOURCE => [ map "$_\n", @alerter_template ])
- or die "can't create new Text::Template object: Text::Template::ERROR";
-$alerter->compile() or die "can't compile template: Text::Template::ERROR";
-
-# Now I can start looping
-foreach my $customer (@customers)
-{
- my $paydate = $customer->getfield('paydate');
- next if $paydate =~ /^\s*$/; #skip empty expiration dates
-
- my $custnum = $customer->getfield('custnum');
- my $first = $customer->getfield('first');
- my $last = $customer->getfield('last');
- my $company = $customer->getfield('company');
- my $payby = $customer->getfield('payby');
- my $payinfo = $customer->getfield('payinfo');
- my $daytime = $customer->getfield('daytime');
- my $night = $customer->getfield('night');
-
- my ($payyear,$paymonth,$payday) = split (/-/,$paydate);
-
- my $expire_time = timelocal(0,0,0,$payday,--$paymonth,$payyear);
-
- #credit cards expire at the end of the month/year of their exp date
- if ($payby eq 'CARD' || $payby eq 'DCRD') {
- ($paymonth < 11) ? $paymonth++ : ($paymonth=0, $payyear++);
- $expire_time = timelocal(0,0,0,$payday,$paymonth,$payyear);
- $expire_time--;
- }
-
- if (($expire_time < $_date + $warning_time &&
- $expire_time > $_date + $warning_time - $window_time) ||
- ($expire_time < $_date + $urgent_time &&
- $expire_time > $_date + $urgent_time - $window_time) ||
- ($expire_time < $_date + $panic_time &&
- $expire_time > $_date + $panic_time - $window_time)) {
-
-
-
- my @packages = $customer->ncancelled_pkgs;
- if (scalar(@packages) != 0) {
- my @invoicing_list = $customer->invoicing_list;
- if ( grep { $_ ne 'POST' } @invoicing_list ) {
- my $header = new Mail::Header ( [
- "From: $mail_sender",
- "To: ". join(', ', grep { $_ ne 'POST' } @invoicing_list ),
- "Sender: $mail_sender",
- "Reply-To: $mail_sender",
- "Date: ". time2str("%a, %d %b %Y %X %z", time),
- "Subject: Billing Arrangement Expiration",
- ] );
- $FS::alerter::_template::first = $first;
- $FS::alerter::_template::last = $last;
- $FS::alerter::_template::company = $company;
- if ($payby eq 'CARD' || $payby eq 'DCRD') {
- $FS::alerter::_template::payby = "credit card (" .
- substr($payinfo, 0, 2) . "xxxxxxxxxx" .
- substr($payinfo, -4) . ")";
- }elsif ($payby eq 'COMP') {
- $FS::alerter::_template::payby = "complimentary account";
- }else{
- $FS::alerter::_template::payby = "current method";
- }
- $FS::alerter::_template::expdate = $expire_time;
-
- my $message = new Mail::Internet (
- 'Header' => $header,
- 'Body' => [ $alerter->fill_in( PACKAGE => 'FS::alerter::_template' ) ],
- );
- $!=0;
- $message->smtpsend( Host => $smtpmachine )
- or $message->smtpsend( Host => $smtpmachine, Debug => 1 )
- or die "Can't send expiration email: $!";
-
- } elsif ( ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list ) {
- push @body, sprintf(qq{%5d %-32.32s %4s %10s %12s %12s},
- $custnum,
- $first . " " . $last . " " . $company,
- $payby,
- $paydate,
- $daytime,
- $night);
- }
- }
- }
-}
-
-# Now I need to send EMAIL
-if (scalar(@body)) {
- my $message = new Mail::Internet (
- 'Header' => $header,
- 'Body' => [ (@body) ],
- );
- $!=0;
- $message->smtpsend( Host => $smtpmachine )
- or $message->smtpsend( Host => $smtpmachine, Debug => 1 )
- or die "can't send alerter failure email to $failure_recipient".
- " via server $smtpmachine with SMTP: $!";
-}
-
-# subroutines
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- $ARGV[$_] =~ /^([\w\-\/]*)$/ || die "Illegal argument \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-expiration-alerter user\n";
-}
-
-=head1 NAME
-
-freeside-expiration-alerter - Emails notifications of credit card expirations.
-
-=head1 SYNOPSIS
-
- freeside-expiration-alerter user
-
-=head1 DESCRIPTION
-
-Emails customers notice that their credit card or other billing arrangement
-is about to expire. Usually run as a cron job.
-
-user: From the mapsecrets file - see config.html from the base documentation
-
-=head1 VERSION
-
-$Id: freeside-expiration-alerter,v 1.5 2003-04-21 20:53:57 ivan Exp $
-
-=head1 BUGS
-
-Yes..... Use at your own risk. No guarantees or warrantees of any
-kind apply to this program. Parts of this program are hacked from
-other GNU licensed software created mainly by Ivan Kohler.
-
-This is released under the GNU Public License. See www.gnu.org
-for more information regarding this license.
-
-=head1 SEE ALSO
-
-L<FS::cust_main>, config.html from the base documentation
-
-=head1 AUTHOR
-
-Jeff Finucane <jeff@cmh.net>
-
-=cut
-
-
diff --git a/FS/bin/freeside-monthly b/FS/bin/freeside-monthly
deleted file mode 100755
index a6c75e7..0000000
--- a/FS/bin/freeside-monthly
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup);
-
-&untaint_argv; #what it sounds like (eww)
-#use vars qw($opt_d $opt_v $opt_p $opt_a $opt_s $opt_y);
-use vars qw(%opt);
-getopts("p:a:d:vsy:", \%opt);
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-use FS::Cron::bill qw(bill);
-bill(%opt, 'freq'=>'1m' );
-
-###
-# subroutines
-###
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- #$ARGV[$_] =~ /^([\w\-\/]*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- # Date::Parse
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-monthly [ -d 'date' ] user [ custnum custnum ... ]\n";
-}
-
-###
-# documentation
-###
-
-=head1 NAME
-
-freeside-monthly - Run monthly billing and invoice collection events.
-
-=head1 SYNOPSIS
-
- freeside-monthly [ -d 'date' ] [ -y days ] [ -p 'payby' ] [ -a agentnum ] [ -s ] [ -v ] user [ custnum custnum ... ]
-
-=head1 DESCRIPTION
-
-Bills customers and runs invoice collection events, for the alternate monthly
-event chain. If you have defined monthly event checks, should be run from
-crontab monthly.
-
-Bills customers. Searches for customers who are due for billing and calls
-the bill and collect methods of a cust_main object. See L<FS::cust_main>.
-
- -d: Pretend it's 'date'. Date is in any format Date::Parse is happy with,
- but be careful.
-
- -y: In addition to -d, which specifies an absolute date, the -y switch
- specifies an offset, in days. For example, "-y 15" would increment the
- "pretend date" 15 days from whatever was specified by the -d switch
- (or now, if no -d switch was given).
-
- -p: Only process customers with the specified payby (I<CARD>, I<DCRD>, I<CHEK>, I<DCHK>, I<BILL>, I<COMP>, I<LECB>)
-
- -a: Only process customers with the specified agentnum
-
- -s: re-charge setup fees
-
- -v: enable debugging
-
-user: From the mapsecrets file - see config.html from the base documentation
-
-custnum: if one or more customer numbers are specified, only bills those
-customers. Otherwise, bills all customers.
-
-=head1 NOTE
-
-In most cases, you would use freeside-daily only and not freeside-monthly.
-freeside-monthly would only be used in cases where you have events that can
-only be run once each month, for example, batching invoices to a third-party
-print/mail provider.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<freeside-daily>, L<FS::cust_main>, config.html from the base documentation
-
-=cut
-
diff --git a/FS/bin/freeside-prepaidd b/FS/bin/freeside-prepaidd
deleted file mode 100644
index e51a563..0000000
--- a/FS/bin/freeside-prepaidd
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 sigint sigterm);
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch); # qsearchs);
-use FS::cust_pkg;
-
-my $user = shift or die &usage;
-
-#daemonize1('freeside-sprepaidd', $user); #keep unique pid files w/multi installs
-daemonize1('freeside-prepaidd');
-
-drop_root();
-
-adminsuidsetup($user);
-
-logfile( "/usr/local/etc/freeside/prepaidd-log.". $FS::UID::datasrc );
-
-daemonize2();
-
-#--
-
-while (1) {
-
- foreach my $cust_pkg (
- qsearch( {
- 'select' => 'cust_pkg.*, part_pkg.plan',
- 'table' => 'cust_pkg',
- 'addl_from' => 'LEFT JOIN part_pkg USING ( pkgpart )',
- #'hashref' => { 'plan' => 'prepaid' },#should check part_pkg::is_prepaid
- #'extra_sql' => "AND bill < ". time.
- 'hashref' => {},
- 'extra_sql' => "WHERE plan = 'prepaid' AND bill < ". time.
- " AND bill IS NOT NULL".
- " AND ( susp IS NULL OR susp = 0)".
- " AND ( cancel IS NULL OR cancel = 0)"
- } )
- ) {
- my $error = $cust_pkg->suspend;
- warn "Error suspended package ". $cust_pkg->pkgnum.
- " for custnum ". $cust_pkg->custnum.
- ": $error\n"
- if $error;
- }
-
- die "exiting" if sigterm() || sigint();
- sleep 5;
-
-}
-
-#--
-
-sub usage {
- die "Usage:\n\n freeside-prepaidd user\n";
-}
-
-=head1 NAME
-
-freeside-prepaidd - Real-time daemon for prepaid packages
-
-=head1 SYNOPSIS
-
- freeside-prepaidd
-
-=head1 DESCRIPTION
-
-Runs continuously and suspendes any prepaid customer packages which have
-passed their renewal date (next bill date).
-
-=head1 SEE ALSO
-
-=cut
-
-1;
diff --git a/FS/bin/freeside-queued b/FS/bin/freeside-queued
deleted file mode 100644
index 3a0a9b4..0000000
--- a/FS/bin/freeside-queued
+++ /dev/null
@@ -1,253 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw( $DEBUG $kids $max_kids %kids );
-use POSIX qw(:sys_wait_h);
-use IO::File;
-use FS::UID qw(adminsuidsetup forksuidsetup driver_name dbh myconnect);
-use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 sigint sigterm);
-use FS::Record qw(qsearch qsearchs);
-use FS::queue;
-use FS::queue_depend;
-
-# no autoloading just yet
-use FS::cust_main;
-use FS::svc_acct;
-use Net::SSH 0.07;
-use FS::part_export;
-
-$DEBUG = 0;
-
-$max_kids = '10'; #guess it should be a config file...
-$kids = 0;
-
-my $user = shift or die &usage;
-
-warn "starting daemonization (forking)\n" if $DEBUG;
-#daemonize1('freeside-queued',$user); #to keep pid files unique w/multi installs
-daemonize1('freeside-queued');
-
-warn "dropping privledges\n" if $DEBUG;
-drop_root();
-
-
-$ENV{HOME} = (getpwuid($>))[7]; #for ssh
-
-warn "connecting to database\n" if $DEBUG;
-$@ = 'not connected';
-while ( $@ ) {
- eval { adminsuidsetup $user; };
- if ( $@ ) {
- warn $@;
- warn "sleeping for reconnect...\n";
- sleep 5;
- }
-}
-
-logfile( "/usr/local/etc/freeside/queuelog.". $FS::UID::datasrc );
-
-warn "completing daemonization (detaching))\n" if $DEBUG;
-daemonize2();
-
-#--
-
-my $warnkids=0;
-while (1) {
-
- &reap_kids;
- #prevent runaway forking
- if ( $kids >= $max_kids ) {
- warn "WARNING: maximum $kids children reached\n" unless $warnkids++;
- &reap_kids;
- sleep 1; #waiting for signals is cheap
- next;
- }
- $warnkids=0;
-
- unless ( dbh && dbh->ping ) {
- warn "WARNING: connection to database lost, reconnecting...\n";
-
- eval { $FS::UID::dbh = myconnect; };
-
- unless ( !$@ && dbh && dbh->ping ) {
- warn "WARNING: still no connection to database, sleeping for retry...\n";
- sleep 10;
- next;
- } else {
- warn "WARNING: reconnected to database\n";
- }
- }
-
- #my($job, $ljob);
- #{
- # my $oldAutoCommit = $FS::UID::AutoCommit;
- # local $FS::UID::AutoCommit = 0;
- $FS::UID::AutoCommit = 0;
-
- #assuming mysql 4.1 w/subqueries now
- #my $nodepend = driver_name eq 'mysql'
- # ? ''
- # : 'AND 0 = ( SELECT COUNT(*) FROM queue_depend'.
- # ' WHERE queue_depend.jobnum = queue.jobnum ) ';
- my $nodepend = 'AND 0 = ( SELECT COUNT(*) FROM queue_depend'.
- ' WHERE queue_depend.jobnum = queue.jobnum ) ';
-
- my $job = qsearchs(
- 'queue',
- { 'status' => 'new' },
- '',
- driver_name eq 'mysql'
- ? "$nodepend ORDER BY jobnum LIMIT 1 FOR UPDATE"
- : "$nodepend ORDER BY jobnum FOR UPDATE LIMIT 1"
- ) or do {
- # if $oldAutoCommit {
- dbh->commit or do {
- warn "WARNING: database error, closing connection: ". dbh->errstr;
- undef $FS::UID::dbh;
- next;
- };
- # }
- sleep 5; #connecting to db is expensive
- next;
- };
-
- #assuming mysql 4.1 w/subqueries now
- #if ( driver_name eq 'mysql'
- # && qsearch('queue_depend', { 'jobnum' => $job->jobnum } ) ) {
- # dbh->commit or die dbh->errstr; #if $oldAutoCommit;
- # sleep 5; #would be better if mysql could do everything in query above
- # next;
- #}
-
- my %hash = $job->hash;
- $hash{'status'} = 'locked';
- my $ljob = new FS::queue ( \%hash );
- my $error = $ljob->replace($job);
- if ( $error ) {
- warn "WARNING: database error locking job, closing connection: ".
- dbh->errstr;
- undef $FS::UID::dbh;
- next;
- }
-
- # if $oldAutoCommit {
- dbh->commit or do {
- warn "WARNING: database error, closing connection: ". dbh->errstr;
- undef $FS::UID::dbh;
- next;
- };
- # }
-
- $FS::UID::AutoCommit = 1;
- #}
-
- my @args = $ljob->args;
- splice @args, 0, 1, $ljob if $args[0] eq '_JOB';
-
- defined( my $pid = fork ) or do {
- warn "WARNING: can't fork: $!\n";
- my %hash = $job->hash;
- $hash{'status'} = 'failed';
- $hash{'statustext'} = "[freeside-queued] can't fork: $!";
- my $ljob = new FS::queue ( \%hash );
- my $error = $ljob->replace($job);
- die $error if $error;
- next; #don't increment the kid counter
- };
-
- if ( $pid ) {
- $kids++;
- $kids{$pid} = 1;
- } else { #kid time
-
- #get new db handle
- $FS::UID::dbh->{InactiveDestroy} = 1;
-
- forksuidsetup($user);
-
- #auto-use classes...
- #if ( $ljob->job =~ /(FS::part_export::\w+)::/ ) {
- if ( $ljob->job =~ /(FS::part_export::\w+)::/
- || $ljob->job =~ /(FS::\w+)::/
- )
- {
- my $class = $1;
- eval "use $class;";
- if ( $@ ) {
- warn "job use $class failed";
- my %hash = $ljob->hash;
- $hash{'status'} = 'failed';
- $hash{'statustext'} = $@;
- my $fjob = new FS::queue( \%hash );
- my $error = $fjob->replace($ljob);
- die $error if $error;
- exit; #end-of-kid
- };
- }
-
- my $eval = "&". $ljob->job. '(@args);';
- warn 'running "&'. $ljob->job. '('. join(', ', @args). ")\n" if $DEBUG;
- eval $eval; #throw away return value? suppose so
- if ( $@ ) {
- warn "job $eval failed";
- my %hash = $ljob->hash;
- $hash{'status'} = 'failed';
- $hash{'statustext'} = $@;
- my $fjob = new FS::queue( \%hash );
- my $error = $fjob->replace($ljob);
- die $error if $error;
- } else {
- $ljob->delete;
- }
-
- exit;
- #end-of-kid
- }
-
-} continue {
- if ( sigterm() ) {
- warn "received TERM signal; exiting\n";
- exit;
- }
- if ( sigint() ) {
- warn "received INT signal; exiting\n";
- exit;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-queued user\n";
-}
-
-sub reap_kids {
- foreach my $pid ( keys %kids ) {
- my $kid = waitpid($pid, WNOHANG);
- if ( $kid > 0 ) {
- $kids--;
- delete $kids{$kid};
- }
- }
-}
-
-=head1 NAME
-
-freeside-queued - Job queue daemon
-
-=head1 SYNOPSIS
-
- freeside-queued user
-
-=head1 DESCRIPTION
-
-Job queue daemon. Should be running at all times.
-
-user: from the mapsecrets file - see config.html from the base documentation
-
-=head1 VERSION
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-=cut
-
diff --git a/FS/bin/freeside-radgroup b/FS/bin/freeside-radgroup
deleted file mode 100644
index ed85626..0000000
--- a/FS/bin/freeside-radgroup
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-use FS::cust_svc;
-use FS::svc_acct;
-
-&untaint_argv; #what it sounds like (eww)
-
-my($user, $action, $groupname, $svcpart) = @ARGV;
-
-adminsuidsetup $user;
-
-my @svc_acct = map { $_->svc_x } qsearch('cust_svc', { svcpart => $svcpart } );
-
-if ( lc($action) eq 'add' ) {
- foreach my $svc_acct ( @svc_acct ) {
- my @groups = $svc_acct->radius_groups;
- next if grep { $_ eq $groupname } @groups;
- push @groups, $groupname;
- my %hash = $svc_acct->hash;
- $hash{usergroup} = \@groups;
- my $new = new FS::svc_acct \%hash;
- my $error = $new->replace($svc_acct);
- die $error if $error;
- }
-} else {
- die &usage;
-}
-
-# subroutines
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-radgroup user action groupname svcpart\n";
-}
-
-=head1 NAME
-
-freeside-radgroup - Command line utility to manipulate radius groups
-
-=head1 SYNOPSIS
-
- freeside-addgroup user action groupname svcpart
-
-=head1 DESCRIPTION
-
- B<user> is a freeside user as added with freeside-adduser.
-
- B<command> is the action to take. Available actions are: I<add>
-
- B<groupname> is the group to add (or remove, etc.)
-
- B<svcpart> specifies which accounts will be updated.
-
-=head1 EXAMPLES
-
-freeside-radgroup freesideuser add groupname 3
-
-Adds I<groupname> to all accounts with service definition 3.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<freeside-adduser>, L<FS::svc_acct>, L<FS::part_svc>
-
-=cut
-
diff --git a/FS/bin/freeside-reexport b/FS/bin/freeside-reexport
deleted file mode 100644
index 54af9dd..0000000
--- a/FS/bin/freeside-reexport
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw($opt_s $opt_u $opt_p);
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::svc_acct;
-use FS::cust_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $export_x = shift or die &usage;
-my @part_export;
-if ( $export_x =~ /^(\d+)$/ ) {
- @part_export = qsearchs('part_export', { exportnum=>$1 } )
- or die "exportnum $export_x not found\n";
-} else {
- @part_export = qsearch('part_export', { exporttype=>$export_x } )
- or die "no exports of type $export_x found\n";
-}
-
-getopts('s:u:p:');
-
-my @svc_x = ();
-if ( $opt_s ) {
- my $cust_svc = qsearchs('cust_svc', { svcnum=>$opt_s } )
- or die "svcnum $opt_s not found\n";
- push @svc_x, $cust_svc->svc_x;
-} elsif ( $opt_u ) {
- my $svc_x = qsearchs('svc_acct', { username=>$opt_u } )
- or die "username $opt_u not found\n";
- push @svc_x, $svc_x;
-} elsif ( $opt_p ) {
- push @svc_x, map { $_->svc_x } qsearch('cust_svc', { svcpart=>$opt_p } );
- die "no services with svcpart $opt_p found\n" unless @svc_x;
-}
-
-foreach my $part_export ( @part_export ) {
- foreach my $svc_x ( @svc_x ) {
- my $error = $part_export->export_insert($svc_x);
- die $error if $error;
- }
-}
-
-
-sub usage {
- die "Usage:\n\n freeside-reexport user exportnum|exporttype [ -s svcnum | -u username | -p svcpart ]\n";
-}
-
-=head1 NAME
-
-freeside-reexport - Command line tool to re-trigger export jobs for existing services
-
-=head1 SYNOPSIS
-
- freeside-reexport user exportnum|exporttype [ -s svcnum | -u username | -p svcpart ]
-
-=head1 DESCRIPTION
-
- Re-queues the export job for the specified exportnum or exporttype(s) and
- specified service (selected by svcnum or username).
-
-=head1 SEE ALSO
-
-L<freeside-sqlradius-reset>, L<FS::part_export>
-
-=cut
-
diff --git a/FS/bin/freeside-selfservice-server b/FS/bin/freeside-selfservice-server
deleted file mode 100644
index 6026fd1..0000000
--- a/FS/bin/freeside-selfservice-server
+++ /dev/null
@@ -1,227 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw( $Debug %kids $kids $max_kids $ssh_pid %old_ssh_pid $keepalives );
-use subs qw( lock_write unlock_write myshutdown usage );
-use Fcntl qw(:flock);
-use POSIX qw(:sys_wait_h);
-use IO::Handle;
-use IO::Select;
-use IO::File;
-use Storable 2.09 qw(nstore_fd fd_retrieve);
-use Net::SSH qw(sshopen2);
-use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 sigint sigterm);
-use FS::UID qw(adminsuidsetup forksuidsetup);
-use FS::ClientAPI;
-
-use FS::Conf;
-use FS::cust_bill;
-use FS::cust_pkg;
-
-$Debug = 1; # 2 will turn on more logging
- # 3 will log packet contents, including passwords
-
-$max_kids = '10'; #?
-$keepalives = 0; #let clientd turn it on, so we don't barf on old ones
-$kids = 0;
-
-my $user = shift or die &usage;
-my $machine = shift or die &usage;
-my $tag = scalar(@ARGV) ? shift : '';
-
-my $lock_file = "/usr/local/etc/freeside/selfservice.$machine.writelock";
-
-
-# to keep pid files unique w/multi machines (and installs!)
-# $FS::UID::datasrc not posible
-daemonize1("freeside-selfservice-server","$user.$machine");
-
-#false laziness w/Daemon::drop_root
-my $freeside_gid = scalar(getgrnam('freeside'))
- or die "can't find freeside group\n";
-
-open(LOCKFILE,">$lock_file") or die "can't open $lock_file: $!";
-chown $FS::UID::freeside_uid, $freeside_gid, $lock_file;
-
-drop_root();
-
-$ENV{HOME} = (getpwuid($>))[7]; #for ssh
-
-adminsuidsetup $user;
-
-#logfile("/usr/local/etc/freeside/selfservice.". $FS::UID::datasrc); #MACHINE
-logfile("/usr/local/etc/freeside/selfservice.$machine.log");
-
-daemonize2();
-
-
-my $conf = new FS::Conf;
-
-my $clientd = "/usr/local/sbin/freeside-selfservice-clientd"; #better name?
-
-my $warnkids=0;
-while (1) {
- my($writer,$reader,$error) = (new IO::Handle, new IO::Handle, new IO::Handle);
- warn "connecting to $machine\n" if $Debug;
-
- $ssh_pid = sshopen2($machine,$reader,$writer,$clientd,$tag);
-
-# nstore_fd(\*writer, {'hi'=>'there'});
-
- warn "entering main loop\n" if $Debug;
- my $undisp = 0;
- my $keepalive_count = 0;
- my $s = IO::Select->new( $reader );
- while (1) {
-
- &reap_kids;
-
- warn "waiting for packet from client\n" if $Debug && !$undisp;
- $undisp = 1;
- my @handles = $s->can_read(5);
- unless ( @handles ) {
- myshutdown() if sigint() || sigterm();
- if ( $keepalives && $keepalive_count++ > 10 ) {
- $keepalive_count = 0;
- lock_write;
- nstore_fd( { _token => '_keepalive' }, $writer );
- unlock_write;
- }
- next;
- }
-
- $undisp = 0;
-
- warn "receiving packet from client\n" if $Debug;
-
- my $packet = eval { fd_retrieve($reader); };
- if ( $@ ) {
- warn "Storable error receiving packet from client".
- " (assuming lost connection): $@\n"
- if $Debug;
- if ( $ssh_pid ) {
- warn "sending TERM signal to ssh process $ssh_pid\n" if $Debug;
- kill 'TERM', $ssh_pid;
- $old_ssh_pid{$ssh_pid} = 1;
- $ssh_pid = 0;
- }
- last;
- }
- warn "packet received\n".
- join('', map { " $_=>$packet->{$_}\n" } keys %$packet )
- if $Debug > 2;
-
- if ( $packet->{_packet} eq '_enable_keepalive' ) {
- warn "enabling keep alives\n" if $Debug;
- $keepalives=1;
- next;
- }
-
- #prevent runaway forking
- my $warnkids = 0;
- while ( $kids >= $max_kids ) {
- warn "WARNING: maximum $kids children reached\n" unless $warnkids++;
- &reap_kids;
- sleep 1;
- }
-
- warn "forking child\n" if $Debug;
- defined( my $pid = fork ) or die "can't fork: $!";
- if ( $pid ) {
- $kids++;
- $kids{$pid} = 1;
- warn "child $pid spawned\n" if $Debug;
- } else { #kid time
-
- ##get new db handle
- #$FS::UID::dbh->{InactiveDestroy} = 1;
- #forksuidsetup($user);
-
- #get db handle
- adminsuidsetup($user);
-
- my $type = $packet->{_packet};
- warn "calling $type handler\n" if $Debug;
- my $rv = eval { FS::ClientAPI->dispatch($type, $packet); };
- if ( $@ ) {
- warn my $error = "WARNING: error dispatching $type: $@";
- $rv = { _error => $error };
- }
- $rv->{_token} = $packet->{_token}; #identifier
-
- open(LOCKFILE,">$lock_file") or die "can't open $lock_file: $!";
- lock_write;
- warn "sending response\n" if $Debug;
- nstore_fd($rv, $writer) or die "FATAL: can't send response: $!";
- $writer->flush or die "FATAL: can't flush: $!";
- unlock_write;
-
- warn "child exiting\n" if $Debug;
- exit; #end-of-kid
- }
-
- }
-
- myshutdown if sigint() || sigterm();
- warn "connection lost, reconnecting\n" if $Debug;
- sleep 3;
-
-}
-
-###
-# utility subroutines
-###
-
-sub reap_kids {
- #warn "reaping kids\n";
- foreach my $pid ( keys %kids ) {
- my $kid = waitpid($pid, WNOHANG);
- if ( $kid > 0 ) {
- $kids--;
- delete $kids{$kid};
- }
- }
-
- foreach my $pid ( keys %old_ssh_pid ) {
- waitpid($pid, WNOHANG) and delete $old_ssh_pid{$pid};
- }
- #warn "done reaping\n";
-}
-
-sub myshutdown {
- &reap_kids;
- my $wait = 12; #wait up to 1 minute
- while ( $kids > 0 && $wait-- ) {
- warn "waiting for $kids children to terminate";
- sleep 5;
- &reap_kids;
- }
- warn "abandoning $kids children" if $kids;
- kill 'TERM', $ssh_pid if $ssh_pid;
- die "exiting";
-}
-
-sub lock_write {
- warn "locking $lock_file mutex for write to write stream\n" if $Debug > 1;
-
- #broken on freebsd?
- #flock($writer, LOCK_EX) or die "FATAL: can't lock write stream: $!";
-
- flock(LOCKFILE, LOCK_EX) or die "FATAL: can't lock $lock_file: $!";
-
-}
-
-sub unlock_write {
- warn "unlocking $lock_file mutex\n" if $Debug > 1;
-
- #broken on freebsd?
- #flock($writer, LOCK_UN) or die "WARNING: can't release write lock: $!";
-
- flock(LOCKFILE, LOCK_UN) or die "FATAL: can't unlock $lock_file: $!";
-
-}
-
-sub usage {
- die "Usage:\n\n freeside-selfservice-server user machine\n";
-}
-
diff --git a/FS/bin/freeside-setinvoice b/FS/bin/freeside-setinvoice
deleted file mode 100644
index 708e2fa..0000000
--- a/FS/bin/freeside-setinvoice
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Conf;
-use FS::Record qw(qsearch qsearchs);
-use FS::cust_main;
-use FS::svc_acct;
-
-&untaint_argv; #what it sounds like (eww)
-my $user = shift or die &usage;
-
-adminsuidsetup $user;
-
-foreach my $cust_main (
- grep { ! scalar($_->invoicing_list) }
- qsearch( 'cust_main', {} )
-) {
- my @dest;
- my @cust_pkg = $cust_main->ncancelled_pkgs;
- foreach my $cust_pkg ( @cust_pkg ) {
- foreach my $cust_svc ( $cust_pkg->cust_svc ) {
- my $svc_acct = qsearchs( 'svc_acct', { 'svcnum' => $cust_svc->svcnum } );
- push @dest, $svc_acct->svcnum if $svc_acct;
- }
- }
- push @dest, 'POST' unless @dest;
- $cust_main->invoicing_list(\@dest);
-}
-
-sub untaint_argv {
- foreach $_ ( $[ .. $#ARGV ) { #untaint @ARGV
- $ARGV[$_] =~ /^(.*)$/ || die "Illegal arguement \"$ARGV[$_]\"";
- $ARGV[$_]=$1;
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-setinvoice user\n";
-}
-
-
diff --git a/FS/bin/freeside-setup b/FS/bin/freeside-setup
deleted file mode 100755
index 2ba717c..0000000
--- a/FS/bin/freeside-setup
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#to delay loading dbdef until we're ready
-BEGIN { $FS::Schema::setup_hack = 1; }
-
-use strict;
-use vars qw($opt_s $opt_d $opt_v);
-use Getopt::Std;
-use FS::UID qw(adminsuidsetup datasrc checkeuid getsecrets);
-use FS::CurrentUser;
-use FS::Schema qw( dbdef_dist reload_dbdef );
-use FS::Record;
-#use FS::raddb;
-use FS::Setup qw(create_initial_data);
-
-die "Not running uid freeside!" unless checkeuid();
-
-#my %attrib2db =
-# map { lc($FS::raddb::attrib{$_}) => $_ } keys %FS::raddb::attrib;
-
-getopts("svd:");
-#my $user = shift or die &usage;
-getsecrets(); #$user);
-
-#needs to match FS::Record
-my($dbdef_file) = "/usr/local/etc/freeside/dbdef.". datasrc;
-
-###
-
-#print "\nEnter the maximum username length: ";
-#my($username_len)=&getvalue;
-my $username_len = 32; #usernamemax config file
-
-#print "\n\n", <<END, ":";
-#Freeside tracks the RADIUS User-Name, check attribute Password and
-#reply attribute Framed-IP-Address for each user. You can specify additional
-#check and reply attributes (or you can add them later with the
-#fs-radius-add-check and fs-radius-add-reply programs).
-#
-#First enter any additional RADIUS check attributes you need to track for each
-#user, separated by whitespace.
-#END
-#my @check_attributes = map { $attrib2db{lc($_)} or die "unknown attribute $_"; }
-# split(" ",&getvalue);
-#
-#print "\n\n", <<END, ":";
-#Now enter any additional reply attributes you need to track for each user,
-#separated by whitespace.
-#END
-#my @attributes = map { $attrib2db{lc($_)} or die "unknown attribute $_"; }
-# split(" ",&getvalue);
-#
-#print "\n\n", <<END, ":";
-#Do you wish to enable the tracking of a second, separate shipping/service
-#address?
-#END
-#my $ship = &_yesno;
-#
-#sub getvalue {
-# my($x)=scalar(<STDIN>);
-# chop $x;
-# $x;
-#}
-#
-#sub _yesno {
-# print " [y/N]:";
-# my $x = scalar(<STDIN>);
-# $x =~ /^y/i;
-#}
-
-#my @check_attributes = (); #add later
-#my @attributes = (); #add later
-#my $ship = $opt_s;
-
-###
-# create a dbdef object from the old data structure
-###
-
-my $dbdef = dbdef_dist;
-
-#important
-$dbdef->save($dbdef_file);
-&FS::Schema::reload_dbdef($dbdef_file);
-
-###
-# create 'em
-###
-
-$FS::CurrentUser::upgrade_hack = 1;
-my $dbh = adminsuidsetup; #$user;
-
-#create tables
-$|=1;
-
-foreach my $statement ( $dbdef->sql($dbh) ) {
- warn $statement if $statement =~ /TABLE cdr/;
- $dbh->do( $statement )
- or die "CREATE error: ". $dbh->errstr. "\ndoing statement: $statement";
-}
-
-#now go back and reverse engineer the db
-#so we pick up the correct column DEFAULTs for #oidless inserts
-dbdef_create($dbh, $dbdef_file);
-delete $FS::Schema::dbdef_cache{$dbdef_file}; #force an actual reload
-reload_dbdef($dbdef_file);
-
-create_initial_data('domain' => $opt_d);
-
-warn "Freeside database initialized - commiting transaction\n" if $opt_v;
-
-$dbh->commit or die $dbh->errstr;
-$dbh->disconnect or die $dbh->errstr;
-
-warn "Database initialization committed successfully\n" if $opt_v;
-
-sub dbdef_create { # reverse engineer the schema from the DB and save to file
- my( $dbh, $file ) = @_;
- my $dbdef = new_native DBIx::DBSchema $dbh;
- $dbdef->save($file);
-}
-
-sub usage {
- die "Usage:\n freeside-setup -d domain.name [ -v ] user\n";
-}
-
-1;
-
diff --git a/FS/bin/freeside-sqlradius-radacctd b/FS/bin/freeside-sqlradius-radacctd
deleted file mode 100644
index e98eaa0..0000000
--- a/FS/bin/freeside-sqlradius-radacctd
+++ /dev/null
@@ -1,150 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw( @part_export );
-use subs qw(myshutdown);
-use POSIX qw(:sys_wait_h);
-#use IO::File;
-use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 sigint sigterm);
-use FS::UID qw(adminsuidsetup); #forksuidsetup driver_name dbh myconnect);
-use FS::Record qw(qsearch); # qsearchs);
-use FS::part_export;
-#use FS::svc_acct;
-#use FS::cust_svc;
-
-my $user = shift or die &usage;
-
-#daemonize1('freeside-sqlradius-radacctd', $user); #keep unique pid files w/multi installs
-daemonize1('freeside-sqlradius-radacctd');
-
-drop_root();
-
-#$ENV{HOME} = (getpwuid($>))[7]; #for ssh
-
-adminsuidsetup $user;
-
-logfile( "/usr/local/etc/freeside/sqlradius-radacctd-log.". $FS::UID::datasrc );
-
-daemonize2();
-
-#--
-
-#don't just look for ->can('usage_sessions'), we're sqlradius-specific
-# (radiator is supposed to be setup with a radacct table)
-
-@part_export =
- qsearch('part_export', { 'exporttype' => 'sqlradius' } );
-push @part_export,
- qsearch('part_export', { 'exporttype' => 'sqlradius_withdomain' } );
-push @part_export,
- qsearch('part_export', { 'exporttype' => 'radiator' } );
-
-@part_export = grep { ! $_->option('ignore_accounting') } @part_export;
-
-die "no sqlradius, sqlradius_withdomain or radiator exports without".
- " ignore_accounting"
- unless @part_export;
-
-while (1) {
-
- #fork off one kid per export (machine)
- # _>{'_radacct_kid'} is an evil kludge
- foreach my $part_export ( grep ! $_->{'_radacct_kid'}, @part_export ) {
-
- defined( my $pid = fork ) or do {
- warn "WARNING: can't fork to spawn child for ". $part_export->machine;
- next;
- };
-
- if ( $pid ) {
- $part_export->{'_radacct_kid'} = $pid;
- warn "child $pid spawned for ". $part_export->machine;
- } else { #kid time
-
- adminsuidsetup($user); #get our own db handle
-
- until ( sigint || sigterm ) {
- $part_export->update_svc_acct();
- sleep 1;
- }
-
- warn "child for ". $part_export->machine. " done";
- exit;
-
- } #eo kid
-
- }
-
- #reap up any kids that died...
- &reap_kids;
-
- myshutdown() if sigterm() || sigint();
-
- sleep 5;
-}
-
-#--
-
-sub myshutdown {
- &reap_kids;
-
- #kill all the kids
- kill 'TERM', $_ foreach grep $_, map $_->{'_radacct_kid'}, @part_export;
-
- my $wait = 12; #wait up to 1 minute
- while ( ( grep $_->{'_radacct_kid'}, @part_export ) && $wait-- ) {
- warn "waiting for children to terminate";
- sleep 5;
- &reap_kids;
- }
- warn "abandoning children" if grep $_->{'_radacct_kid'}, @part_export;
- die "exiting";
-}
-
-sub reap_kids {
- #warn "reaping kids\n";
- foreach my $part_export ( grep $_->{'_radacct_kid'}, @part_export ) {
- my $pid = $part_export->{'_radacct_kid'};
- my $kid = waitpid($pid, WNOHANG);
- if ( $kid > 0 ) {
- $part_export->{'_radacct_kid'} = '';
- }
- }
- #warn "done reaping\n";
-}
-
-sub usage {
- die "Usage:\n\n freeside-sqlradius-radacctd user\n";
-}
-
-=head1 NAME
-
-freeside-sqlradius-radacctd - Real-time radacct import daemon
-
-=head1 SYNOPSIS
-
- freeside-sqlradius-radacctd username
-
-=head1 DESCRIPTION
-
-Imports records from an the SQL radacct tables of all sqlradius,
-sqlradius_withdomain and radiator exports (except those with the
-ignore_accounting flag) and updates the svc_acct.seconds for each account.
-Runs as a daemon and updates the database in real-time.
-
-B<username> is a username added by freeside-adduser.
-
-=head1 RADIUS DATABASE CHANGES
-
-ALTER TABLE radacct ADD COLUMN FreesideStatus varchar(32) NULL;
-
-If you want to ignore the existing accountg records, also do:
-
-UPDATE radacct SET FreesideStatus = 'done' WHERE FreesideStatus IS NULL;
-
-=head1 SEE ALSO
-
-=cut
-
-1;
-
diff --git a/FS/bin/freeside-sqlradius-reset b/FS/bin/freeside-sqlradius-reset
deleted file mode 100755
index 2ac5012..0000000
--- a/FS/bin/freeside-sqlradius-reset
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::svc_acct;
-use FS::cust_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#my $machine = shift or die &usage;
-
-my @exports = ();
-if ( @ARGV ) {
- foreach my $exportnum ( @ARGV ) {
- foreach my $exporttype (qw( sqlradius sqlradius_withdomain )) {
- push @exports, qsearch('part_export', { exportnum => $exportnum,
- exporttype => $exporttype, } );
- }
- }
- } else {
- @exports = qsearch('part_export', { exporttype=>'sqlradius' } );
- push @exports, qsearch('part_export', { exporttype=>'sqlradius_withdomain' } );
-}
-
-foreach my $export ( @exports ) {
- my $icradius_dbh = DBI->connect(
- map { $export->option($_) } qw( datasrc username password )
- ) or die $DBI::errstr;
- for my $table (qw( radcheck radreply usergroup )) {
- my $sth = $icradius_dbh->prepare("DELETE FROM $table");
- $sth->execute or die "Can't reset $table table: ". $sth->errstr;
- }
- $icradius_dbh->disconnect;
-}
-
-foreach my $export ( @exports ) {
-
- #my @svcparts = map { $_->svcpart } $export->export_svc;
-
- my @svc_acct =
- map { qsearchs('svc_acct', { 'svcnum' => $_->svcnum } ) }
- map { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- grep { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- $export->export_svc;
-
- foreach my $svc_acct ( @svc_acct ) {
-
- $svc_acct->check; #set any fixed usergroup so it'll export even if all
- #svc_acct records don't have the group yet
-
- #false laziness with FS::svc_acct::insert (like it matters)
- my $error = $export->export_insert($svc_acct);
- die $error if $error;
-
- }
-}
-
-sub usage {
- die "Usage:\n\n freeside-sqlradius-reset user [ exportnum, ... ]\n";
-}
-
-=head1 NAME
-
-freeside-sqlradius-reset - Command line interface to reset and recreate RADIUS SQL tables
-
-=head1 SYNOPSIS
-
- freeside-sqlradius-reset username [ EXPORTNUM, ... ]
-
-=head1 DESCRIPTION
-
-Deletes the radcheck, radreply and usergroup tables and repopulates them from
-the Freeside database, for the specified exports, or, if no exports are
-specified, for all sqlradius and sqlradius_withdomain exports.
-
-B<username> is a username added by freeside-adduser.
-
-=head1 SEE ALSO
-
-L<freeside-reexport>, L<FS::part_export>, L<FS::part_export::sqlradius>
-
-=cut
-
-
-
diff --git a/FS/bin/freeside-sqlradius-seconds b/FS/bin/freeside-sqlradius-seconds
deleted file mode 100644
index 1c978fa..0000000
--- a/FS/bin/freeside-sqlradius-seconds
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use Date::Parse;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearchs);
-use FS::svc_acct;
-
-my $fs_user = shift or die &usage;
-adminsuidsetup( $fs_user );
-
-my $target_user = shift or die &usage;
-my $start = shift or die &usage;
-$start = str2time($start);
-my $stop = scalar(@ARGV) ? str2time(shift) : time;
-
-my $svc_acct = qsearchs( 'svc_acct', { 'username' => $target_user } );
-die "username $target_user not found\n" unless $svc_acct;
-
-print $svc_acct->seconds_since_sqlradacct( $start, $stop ). "\n";
-
-sub usage {
- die "Usage:\n\n freeside-sqlradius-seconds freeside_username target_username start_date stop_date\n";
-}
-
-
-=head1 NAME
-
-freeside-sqlradius-seconds - Real-time radacct import daemon
-
-=head1 SYNOPSIS
-
- freeside-sqlradius-seconds freeside_username target_username start_date [ stop_date ]
-
-=head1 DESCRIPTION
-
-Returns the number of seconds the specified username has been online between
-start_date (inclusive) and stop_date (exclusive).
-See L<FS::svc_acct/seconds_since_sqlradacct>
-
-B<freeside_username> is a username added by freeside-adduser.
-B<target_username> is the username of the user account to query.
-B<start_date> and B<stop_date> are in any format Date::Parse is happy with.
-B<stop_date> defaults to now if not specified.
-
-=head1 BUGS
-
-Selection of the account in question is rather simplistic in that
-B<target_username> doesn't necessarily identify a unique account (and wouldn't
-even if a domain was specified), and no sqlradius export is checked for.
-
-=head1 SEE ALSO
-
-L<FS::svc_acct/seconds_since_sqlradacct>
-
-=cut
-
-1;
diff --git a/FS/bin/freeside-upgrade b/FS/bin/freeside-upgrade
deleted file mode 100755
index a1212ae..0000000
--- a/FS/bin/freeside-upgrade
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw($DEBUG $DRY_RUN);
-use Term::ReadKey;
-use DBIx::DBSchema 0.31;
-use FS::UID qw(adminsuidsetup checkeuid datasrc ); #getsecrets);
-use FS::CurrentUser;
-use FS::Schema qw( dbdef dbdef_dist reload_dbdef );
-
-$DEBUG = 1;
-
-die "Not running uid freeside!" unless checkeuid();
-
-my $user = shift or die &usage;
-$FS::CurrentUser::upgrade_hack = 1;
-my $dbh = adminsuidsetup($user);
-
-#needs to match FS::Schema...
-my $dbdef_file = "/usr/local/etc/freeside/dbdef.". datasrc;
-
-dbdef_create($dbh, $dbdef_file);
-
-delete $FS::Schema::dbdef_cache{$dbdef_file}; #force an actual reload
-reload_dbdef($dbdef_file);
-
-$DBIx::DBSchema::DEBUG = $DEBUG;
-$DBIx::DBSchema::Table::DEBUG = $DEBUG;
-dbdef->update_schema( dbdef_dist, $dbh );
-
-$dbh->commit or die $dbh->errstr;
-
-dbdef_create($dbh, $dbdef_file);
-
-$dbh->disconnect or die $dbh->errstr;
-
-###
-
-sub dbdef_create { # reverse engineer the schema from the DB and save to file
- my( $dbh, $file ) = @_;
- my $dbdef = new_native DBIx::DBSchema $dbh;
- $dbdef->save($file);
-}
-
-sub usage {
- die "Usage:\n freeside-upgrade user\n";
-}
-
-1;
diff --git a/FS/t/AccessRight.t b/FS/t/AccessRight.t
deleted file mode 100644
index a966842..0000000
--- a/FS/t/AccessRight.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::AccessRight;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/CGI.t b/FS/t/CGI.t
deleted file mode 100644
index 1b4e238..0000000
--- a/FS/t/CGI.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::CGI;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/ClientAPI.t b/FS/t/ClientAPI.t
deleted file mode 100644
index 973d8da..0000000
--- a/FS/t/ClientAPI.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::ClientAPI;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/ClientAPI_SessionCache.t b/FS/t/ClientAPI_SessionCache.t
deleted file mode 100644
index 605803e..0000000
--- a/FS/t/ClientAPI_SessionCache.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::ClientAPI_SessionCache;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Conf.t b/FS/t/Conf.t
deleted file mode 100644
index a9f7653..0000000
--- a/FS/t/Conf.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Conf;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/ConfDefaults.t b/FS/t/ConfDefaults.t
deleted file mode 100644
index 433555a..0000000
--- a/FS/t/ConfDefaults.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::ConfDefaults;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/ConfItem.t b/FS/t/ConfItem.t
deleted file mode 100644
index c7932d7..0000000
--- a/FS/t/ConfItem.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::ConfItem;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Cron-backup.t b/FS/t/Cron-backup.t
deleted file mode 100644
index 847d41a..0000000
--- a/FS/t/Cron-backup.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Cron::backup;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Cron-bill.t b/FS/t/Cron-bill.t
deleted file mode 100644
index 42c7b4f..0000000
--- a/FS/t/Cron-bill.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Cron::bill;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Cron-vacuum.t b/FS/t/Cron-vacuum.t
deleted file mode 100644
index eaa6b76..0000000
--- a/FS/t/Cron-vacuum.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Cron::vacuum;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Daemon.t b/FS/t/Daemon.t
deleted file mode 100644
index 24893fd..0000000
--- a/FS/t/Daemon.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Daemon;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/InitHandler.t b/FS/t/InitHandler.t
deleted file mode 100644
index 0ce60c8..0000000
--- a/FS/t/InitHandler.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::InitHandler;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Misc.t b/FS/t/Misc.t
deleted file mode 100644
index cc7751a..0000000
--- a/FS/t/Misc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Misc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Msgcat.t b/FS/t/Msgcat.t
deleted file mode 100644
index 29e71b3..0000000
--- a/FS/t/Msgcat.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Msgcat;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Record.t b/FS/t/Record.t
deleted file mode 100644
index 00de1ed..0000000
--- a/FS/t/Record.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Record;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Report-Table-Monthly.t b/FS/t/Report-Table-Monthly.t
deleted file mode 100644
index 6ff365d..0000000
--- a/FS/t/Report-Table-Monthly.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Report::Table::Monthly;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Report-Table.t b/FS/t/Report-Table.t
deleted file mode 100644
index 866d498..0000000
--- a/FS/t/Report-Table.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Report::Table;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/Report.t b/FS/t/Report.t
deleted file mode 100644
index 76d6ea4..0000000
--- a/FS/t/Report.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::Report;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/SearchCache.t b/FS/t/SearchCache.t
deleted file mode 100644
index 3c26f35..0000000
--- a/FS/t/SearchCache.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::SearchCache;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/UID.t b/FS/t/UID.t
deleted file mode 100644
index 9f7da4e..0000000
--- a/FS/t/UID.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::UID;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_group.t b/FS/t/access_group.t
deleted file mode 100644
index be14109..0000000
--- a/FS/t/access_group.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_group;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_groupagent.t b/FS/t/access_groupagent.t
deleted file mode 100644
index aff1f25..0000000
--- a/FS/t/access_groupagent.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_groupagent;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_right.t b/FS/t/access_right.t
deleted file mode 100644
index 66cd362..0000000
--- a/FS/t/access_right.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_right;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_user.t b/FS/t/access_user.t
deleted file mode 100644
index cab679d..0000000
--- a/FS/t/access_user.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_user;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_user_pref.t b/FS/t/access_user_pref.t
deleted file mode 100644
index 2822098..0000000
--- a/FS/t/access_user_pref.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_user_pref;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/access_usergroup.t b/FS/t/access_usergroup.t
deleted file mode 100644
index 383a7cf..0000000
--- a/FS/t/access_usergroup.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::access_usergroup;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/acct_snarf.t b/FS/t/acct_snarf.t
deleted file mode 100644
index 642760f..0000000
--- a/FS/t/acct_snarf.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::acct_snarf;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/agent.t b/FS/t/agent.t
deleted file mode 100644
index 769cce2..0000000
--- a/FS/t/agent.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::agent;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/agent_payment_gateway.t b/FS/t/agent_payment_gateway.t
deleted file mode 100644
index af78a9a..0000000
--- a/FS/t/agent_payment_gateway.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::agent_payment_gateway;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/agent_type.t b/FS/t/agent_type.t
deleted file mode 100644
index 99c66a1..0000000
--- a/FS/t/agent_type.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::agent_type;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/banned_pay.t b/FS/t/banned_pay.t
deleted file mode 100644
index bef1ff2..0000000
--- a/FS/t/banned_pay.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::banned_pay;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cancel_reason.t b/FS/t/cancel_reason.t
deleted file mode 100644
index a5948f6..0000000
--- a/FS/t/cancel_reason.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cancel_reason;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cdr.t b/FS/t/cdr.t
deleted file mode 100644
index 1d1f3eb..0000000
--- a/FS/t/cdr.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cdr;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cdr_calltype.t b/FS/t/cdr_calltype.t
deleted file mode 100644
index d4e1394..0000000
--- a/FS/t/cdr_calltype.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cdr_calltype;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cdr_carrier.t b/FS/t/cdr_carrier.t
deleted file mode 100644
index 1e21615..0000000
--- a/FS/t/cdr_carrier.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cdr_carrier;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cdr_type.t b/FS/t/cdr_type.t
deleted file mode 100644
index 9dff15a..0000000
--- a/FS/t/cdr_type.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cdr_type;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cdr_upstream_rate.t b/FS/t/cdr_upstream_rate.t
deleted file mode 100644
index f9458c5..0000000
--- a/FS/t/cdr_upstream_rate.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cdr_upstream_rate;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/clientapi_session.t b/FS/t/clientapi_session.t
deleted file mode 100644
index a6414c3..0000000
--- a/FS/t/clientapi_session.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::clientapi_session;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/clientapi_session_field.t b/FS/t/clientapi_session_field.t
deleted file mode 100644
index a9d4fa9..0000000
--- a/FS/t/clientapi_session_field.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::clientapi_session_field;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill.t b/FS/t/cust_bill.t
deleted file mode 100644
index b43f08e..0000000
--- a/FS/t/cust_bill.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_ApplicationCommon.t b/FS/t/cust_bill_ApplicationCommon.t
deleted file mode 100644
index fa03d34..0000000
--- a/FS/t/cust_bill_ApplicationCommon.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_ApplicationCommon;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_event.t b/FS/t/cust_bill_event.t
deleted file mode 100644
index 0e2ca3e..0000000
--- a/FS/t/cust_bill_event.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_event;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_pay.t b/FS/t/cust_bill_pay.t
deleted file mode 100644
index 001eed0..0000000
--- a/FS/t/cust_bill_pay.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_pay;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_pay_pkg.t b/FS/t/cust_bill_pay_pkg.t
deleted file mode 100644
index b8fcddb..0000000
--- a/FS/t/cust_bill_pay_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_pay_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_pkg.t b/FS/t/cust_bill_pkg.t
deleted file mode 100644
index 0e45bdb..0000000
--- a/FS/t/cust_bill_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_bill_pkg_detail.t b/FS/t/cust_bill_pkg_detail.t
deleted file mode 100644
index ea6e3d1..0000000
--- a/FS/t/cust_bill_pkg_detail.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_bill_pkg_detail;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_credit.t b/FS/t/cust_credit.t
deleted file mode 100644
index cddf75c..0000000
--- a/FS/t/cust_credit.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_credit;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_credit_bill.t b/FS/t/cust_credit_bill.t
deleted file mode 100644
index 0ef54c3..0000000
--- a/FS/t/cust_credit_bill.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_credit_bill;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_credit_bill_pkg.t b/FS/t/cust_credit_bill_pkg.t
deleted file mode 100644
index 4eb84c3..0000000
--- a/FS/t/cust_credit_bill_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_credit_bill_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_credit_refund.t b/FS/t/cust_credit_refund.t
deleted file mode 100644
index 6b2b599..0000000
--- a/FS/t/cust_credit_refund.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_credit_refund;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_main.t b/FS/t/cust_main.t
deleted file mode 100644
index b0ffbdb..0000000
--- a/FS/t/cust_main.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_main;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_main_Mixin.t b/FS/t/cust_main_Mixin.t
deleted file mode 100644
index c8b9291..0000000
--- a/FS/t/cust_main_Mixin.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_main_Mixin;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_main_county.t b/FS/t/cust_main_county.t
deleted file mode 100644
index dd61199..0000000
--- a/FS/t/cust_main_county.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_main_county;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_main_invoice.t b/FS/t/cust_main_invoice.t
deleted file mode 100644
index 9661620..0000000
--- a/FS/t/cust_main_invoice.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_main_invoice;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_pay.t b/FS/t/cust_pay.t
deleted file mode 100644
index f6d0b75..0000000
--- a/FS/t/cust_pay.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_pay;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_pay_batch.t b/FS/t/cust_pay_batch.t
deleted file mode 100644
index 02b572c..0000000
--- a/FS/t/cust_pay_batch.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_pay_batch;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_pay_refund.t b/FS/t/cust_pay_refund.t
deleted file mode 100644
index 85d6c23..0000000
--- a/FS/t/cust_pay_refund.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_pay_refund;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_pay_void.t b/FS/t/cust_pay_void.t
deleted file mode 100644
index dca9bec..0000000
--- a/FS/t/cust_pay_void.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_pay_void;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_pkg.t b/FS/t/cust_pkg.t
deleted file mode 100644
index c6a6860..0000000
--- a/FS/t/cust_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_refund.t b/FS/t/cust_refund.t
deleted file mode 100644
index 91583da..0000000
--- a/FS/t/cust_refund.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_refund;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_svc.t b/FS/t/cust_svc.t
deleted file mode 100644
index 267d731..0000000
--- a/FS/t/cust_svc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_svc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_tax_exempt.pm b/FS/t/cust_tax_exempt.pm
deleted file mode 100644
index 8af13e3..0000000
--- a/FS/t/cust_tax_exempt.pm
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_tax_exempt;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_tax_exempt.t b/FS/t/cust_tax_exempt.t
deleted file mode 100644
index 8af13e3..0000000
--- a/FS/t/cust_tax_exempt.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_tax_exempt;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/cust_tax_exempt_pkg.t b/FS/t/cust_tax_exempt_pkg.t
deleted file mode 100644
index 099a0ce..0000000
--- a/FS/t/cust_tax_exempt_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::cust_tax_exempt_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/domain_record.t b/FS/t/domain_record.t
deleted file mode 100644
index 794518c..0000000
--- a/FS/t/domain_record.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::domain_record;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/export_svc.t b/FS/t/export_svc.t
deleted file mode 100644
index 773c5de..0000000
--- a/FS/t/export_svc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::export_svc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_Common.t b/FS/t/h_Common.t
deleted file mode 100644
index 174bb99..0000000
--- a/FS/t/h_Common.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_Common;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_cust_bill.t b/FS/t/h_cust_bill.t
deleted file mode 100644
index ceccb2a..0000000
--- a/FS/t/h_cust_bill.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_cust_bill;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_cust_svc.t b/FS/t/h_cust_svc.t
deleted file mode 100644
index a7dabbe..0000000
--- a/FS/t/h_cust_svc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_cust_svc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_cust_tax_exempt.t b/FS/t/h_cust_tax_exempt.t
deleted file mode 100644
index 432238a..0000000
--- a/FS/t/h_cust_tax_exempt.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_cust_tax_exempt;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_domain_record.t b/FS/t/h_domain_record.t
deleted file mode 100644
index f48e72e..0000000
--- a/FS/t/h_domain_record.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_domain_record;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_acct.t b/FS/t/h_svc_acct.t
deleted file mode 100644
index 9c94d08..0000000
--- a/FS/t/h_svc_acct.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_acct;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_broadband.t b/FS/t/h_svc_broadband.t
deleted file mode 100644
index b8e5c7c..0000000
--- a/FS/t/h_svc_broadband.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_broadband;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_domain.t b/FS/t/h_svc_domain.t
deleted file mode 100644
index 87d2a09..0000000
--- a/FS/t/h_svc_domain.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_domain;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_external.t b/FS/t/h_svc_external.t
deleted file mode 100644
index 5248f87..0000000
--- a/FS/t/h_svc_external.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_external;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_forward.t b/FS/t/h_svc_forward.t
deleted file mode 100644
index 64731d5..0000000
--- a/FS/t/h_svc_forward.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_forward;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/h_svc_www.t b/FS/t/h_svc_www.t
deleted file mode 100644
index 07558ce..0000000
--- a/FS/t/h_svc_www.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::h_svc_www;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/inventory_class.t b/FS/t/inventory_class.t
deleted file mode 100644
index 80b2fa2..0000000
--- a/FS/t/inventory_class.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::inventory_class;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/inventory_item.t b/FS/t/inventory_item.t
deleted file mode 100644
index 8ce9d67..0000000
--- a/FS/t/inventory_item.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::inventory_item;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/msgcat.t b/FS/t/msgcat.t
deleted file mode 100644
index c38c639..0000000
--- a/FS/t/msgcat.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::msgcat;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/nas.t b/FS/t/nas.t
deleted file mode 100644
index 6f8ae36..0000000
--- a/FS/t/nas.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::nas;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/option_Common.t b/FS/t/option_Common.t
deleted file mode 100644
index ad26141..0000000
--- a/FS/t/option_Common.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::option_Common;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_bill_event.t b/FS/t/part_bill_event.t
deleted file mode 100644
index 5626a9f..0000000
--- a/FS/t/part_bill_event.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_bill_event;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-acct_sql.t b/FS/t/part_export-acct_sql.t
deleted file mode 100644
index 9eed472..0000000
--- a/FS/t/part_export-acct_sql.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::acct_sql;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-apache.t b/FS/t/part_export-apache.t
deleted file mode 100644
index b999508..0000000
--- a/FS/t/part_export-apache.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::apache;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-bind.t b/FS/t/part_export-bind.t
deleted file mode 100644
index d0c96be..0000000
--- a/FS/t/part_export-bind.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::bind;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-bind_slave.t b/FS/t/part_export-bind_slave.t
deleted file mode 100644
index c6a0386..0000000
--- a/FS/t/part_export-bind_slave.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::bind_slave;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-bsdshell.t b/FS/t/part_export-bsdshell.t
deleted file mode 100644
index eaf417a..0000000
--- a/FS/t/part_export-bsdshell.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::bsdshell;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-communigate_pro.t b/FS/t/part_export-communigate_pro.t
deleted file mode 100644
index 88b8b64..0000000
--- a/FS/t/part_export-communigate_pro.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::communigate_pro;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-communigate_pro_singledomain.t b/FS/t/part_export-communigate_pro_singledomain.t
deleted file mode 100644
index 6f8a64e..0000000
--- a/FS/t/part_export-communigate_pro_singledomain.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::communigate_pro_singledomain;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-cp.t b/FS/t/part_export-cp.t
deleted file mode 100644
index bbefa6c..0000000
--- a/FS/t/part_export-cp.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::cp;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-cyrus.t b/FS/t/part_export-cyrus.t
deleted file mode 100644
index e0b3f35..0000000
--- a/FS/t/part_export-cyrus.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::cyrus;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-domain_shellcommands.t b/FS/t/part_export-domain_shellcommands.t
deleted file mode 100644
index a2a44fb..0000000
--- a/FS/t/part_export-domain_shellcommands.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::domain_shellcommands;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-forward_shellcommands.t b/FS/t/part_export-forward_shellcommands.t
deleted file mode 100644
index 78ca68d..0000000
--- a/FS/t/part_export-forward_shellcommands.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::forward_shellcommands;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-http.t b/FS/t/part_export-http.t
deleted file mode 100644
index ea41b93..0000000
--- a/FS/t/part_export-http.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::http;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-infostreet.t b/FS/t/part_export-infostreet.t
deleted file mode 100644
index 1b33418..0000000
--- a/FS/t/part_export-infostreet.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::infostreet;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-ldap.t b/FS/t/part_export-ldap.t
deleted file mode 100644
index 826c341..0000000
--- a/FS/t/part_export-ldap.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::ldap;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-null.t b/FS/t/part_export-null.t
deleted file mode 100644
index 055cdce..0000000
--- a/FS/t/part_export-null.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::null;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-passwdfile.t b/FS/t/part_export-passwdfile.t
deleted file mode 100644
index 0f18f30..0000000
--- a/FS/t/part_export-passwdfile.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::passwdfile;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-postfix.t b/FS/t/part_export-postfix.t
deleted file mode 100644
index 9518caa..0000000
--- a/FS/t/part_export-postfix.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::postfix;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-radiator.t b/FS/t/part_export-radiator.t
deleted file mode 100644
index 546e9de..0000000
--- a/FS/t/part_export-radiator.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::radiator;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-router.t b/FS/t/part_export-router.t
deleted file mode 100644
index 54e4b63..0000000
--- a/FS/t/part_export-router.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::router;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-shellcommands.t b/FS/t/part_export-shellcommands.t
deleted file mode 100644
index 7bb47d3..0000000
--- a/FS/t/part_export-shellcommands.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::shellcommands;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-shellcommands_withdomain.t b/FS/t/part_export-shellcommands_withdomain.t
deleted file mode 100644
index c0bd1bb..0000000
--- a/FS/t/part_export-shellcommands_withdomain.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::shellcommands_withdomain;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-sqlmail.t b/FS/t/part_export-sqlmail.t
deleted file mode 100644
index b048a75..0000000
--- a/FS/t/part_export-sqlmail.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::sqlmail;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-sqlradius.t b/FS/t/part_export-sqlradius.t
deleted file mode 100644
index 5fb23a5..0000000
--- a/FS/t/part_export-sqlradius.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::sqlradius;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-sqlradius_withdomain.t b/FS/t/part_export-sqlradius_withdomain.t
deleted file mode 100644
index 504bf67..0000000
--- a/FS/t/part_export-sqlradius_withdomain.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::sqlradius_withdomain;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-sysvshell.t b/FS/t/part_export-sysvshell.t
deleted file mode 100644
index 7fc24ac..0000000
--- a/FS/t/part_export-sysvshell.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::sysvshell;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-textradius.t b/FS/t/part_export-textradius.t
deleted file mode 100644
index d8a48a0..0000000
--- a/FS/t/part_export-textradius.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::textradius;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-vpopmail.t b/FS/t/part_export-vpopmail.t
deleted file mode 100644
index 2e37114..0000000
--- a/FS/t/part_export-vpopmail.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::vpopmail;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export-www_shellcommands.t b/FS/t/part_export-www_shellcommands.t
deleted file mode 100644
index 2ea79cf..0000000
--- a/FS/t/part_export-www_shellcommands.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export::www_shellcommands;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export.t b/FS/t/part_export.t
deleted file mode 100644
index 26b3987..0000000
--- a/FS/t/part_export.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_export_option.t b/FS/t/part_export_option.t
deleted file mode 100644
index 13200c2..0000000
--- a/FS/t/part_export_option.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_export_option;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-flat.t b/FS/t/part_pkg-flat.t
deleted file mode 100644
index 3eee7a7..0000000
--- a/FS/t/part_pkg-flat.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::flat;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-flat_comission.t b/FS/t/part_pkg-flat_comission.t
deleted file mode 100644
index fefa57e..0000000
--- a/FS/t/part_pkg-flat_comission.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::flat_comission;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-flat_comission_cust.t b/FS/t/part_pkg-flat_comission_cust.t
deleted file mode 100644
index 05d3ac4..0000000
--- a/FS/t/part_pkg-flat_comission_cust.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::flat_comission_cust;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-flat_comission_pkg.t b/FS/t/part_pkg-flat_comission_pkg.t
deleted file mode 100644
index 851b58d..0000000
--- a/FS/t/part_pkg-flat_comission_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::flat_comission_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-flat_delayed.t b/FS/t/part_pkg-flat_delayed.t
deleted file mode 100644
index ed63846..0000000
--- a/FS/t/part_pkg-flat_delayed.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::flat_delayed;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-prorate.t b/FS/t/part_pkg-prorate.t
deleted file mode 100644
index d32b1c0..0000000
--- a/FS/t/part_pkg-prorate.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::prorate;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-sesmon_hour.t b/FS/t/part_pkg-sesmon_hour.t
deleted file mode 100644
index 4f02cfc..0000000
--- a/FS/t/part_pkg-sesmon_hour.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::sesmon_hour;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-sesmon_minute.t b/FS/t/part_pkg-sesmon_minute.t
deleted file mode 100644
index 6ceaa3c..0000000
--- a/FS/t/part_pkg-sesmon_minute.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::sesmon_minute;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-sql_external.t b/FS/t/part_pkg-sql_external.t
deleted file mode 100644
index 366ed01..0000000
--- a/FS/t/part_pkg-sql_external.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::sql_external;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-sql_generic.t b/FS/t/part_pkg-sql_generic.t
deleted file mode 100644
index 299a7c6..0000000
--- a/FS/t/part_pkg-sql_generic.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::sql_generic;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-sqlradacct_hour.t b/FS/t/part_pkg-sqlradacct_hour.t
deleted file mode 100644
index 2a4ed79..0000000
--- a/FS/t/part_pkg-sqlradacct_hour.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::sqlradacct_hour;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-subscription.t b/FS/t/part_pkg-subscription.t
deleted file mode 100644
index 10b4479..0000000
--- a/FS/t/part_pkg-subscription.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::subscription;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-voip_cdr.t b/FS/t/part_pkg-voip_cdr.t
deleted file mode 100644
index 2d988a3..0000000
--- a/FS/t/part_pkg-voip_cdr.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::voip_cdr;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg-voip_sqlradacct.t b/FS/t/part_pkg-voip_sqlradacct.t
deleted file mode 100644
index 8d54204..0000000
--- a/FS/t/part_pkg-voip_sqlradacct.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg::voip_sqlradacct;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg.t b/FS/t/part_pkg.t
deleted file mode 100644
index fd96073..0000000
--- a/FS/t/part_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pkg_option.t b/FS/t/part_pkg_option.t
deleted file mode 100644
index 6239b2d..0000000
--- a/FS/t/part_pkg_option.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pkg_option;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_pop_local.t b/FS/t/part_pop_local.t
deleted file mode 100644
index 4e4ad17..0000000
--- a/FS/t/part_pop_local.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_pop_local;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_referral.t b/FS/t/part_referral.t
deleted file mode 100644
index d20b979..0000000
--- a/FS/t/part_referral.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_referral;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_svc.t b/FS/t/part_svc.t
deleted file mode 100644
index bdb2a7a..0000000
--- a/FS/t/part_svc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_svc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/part_svc_column.t b/FS/t/part_svc_column.t
deleted file mode 100644
index 467025c..0000000
--- a/FS/t/part_svc_column.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::part_svc_column;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/pay_batch.t b/FS/t/pay_batch.t
deleted file mode 100644
index c43133d..0000000
--- a/FS/t/pay_batch.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::pay_batch;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/payby.t b/FS/t/payby.t
deleted file mode 100644
index 7430bc8..0000000
--- a/FS/t/payby.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::payby;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/payment_gateway.t b/FS/t/payment_gateway.t
deleted file mode 100644
index 4bcc781..0000000
--- a/FS/t/payment_gateway.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::payment_gateway;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/payment_gateway_option.t b/FS/t/payment_gateway_option.t
deleted file mode 100644
index 19e6451..0000000
--- a/FS/t/payment_gateway_option.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::payment_gateway_option;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/pkg_class.t b/FS/t/pkg_class.t
deleted file mode 100644
index fb3774f..0000000
--- a/FS/t/pkg_class.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::pkg_class;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/pkg_svc.t b/FS/t/pkg_svc.t
deleted file mode 100644
index 77d3429..0000000
--- a/FS/t/pkg_svc.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::pkg_svc;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/port.t b/FS/t/port.t
deleted file mode 100644
index 46377aa..0000000
--- a/FS/t/port.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::port;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/prepay_credit.t b/FS/t/prepay_credit.t
deleted file mode 100644
index e7626bd..0000000
--- a/FS/t/prepay_credit.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::prepay_credit;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/queue.t b/FS/t/queue.t
deleted file mode 100644
index 43e3373..0000000
--- a/FS/t/queue.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::queue;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/queue_arg.t b/FS/t/queue_arg.t
deleted file mode 100644
index cf3f91d..0000000
--- a/FS/t/queue_arg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::queue_arg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/queue_depend.t b/FS/t/queue_depend.t
deleted file mode 100644
index 8eaa2cd..0000000
--- a/FS/t/queue_depend.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::queue_depend;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/raddb.t b/FS/t/raddb.t
deleted file mode 100644
index ac28d07..0000000
--- a/FS/t/raddb.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::raddb;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/radius_usergroup.t b/FS/t/radius_usergroup.t
deleted file mode 100644
index 325742c..0000000
--- a/FS/t/radius_usergroup.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::radius_usergroup;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/rate.t b/FS/t/rate.t
deleted file mode 100644
index ae9c8bb..0000000
--- a/FS/t/rate.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::rate;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/rate_detail.t b/FS/t/rate_detail.t
deleted file mode 100644
index 163972e..0000000
--- a/FS/t/rate_detail.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::rate_detail;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/rate_prefix.t b/FS/t/rate_prefix.t
deleted file mode 100644
index d4bd513..0000000
--- a/FS/t/rate_prefix.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::rate_prefix;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/rate_region.t b/FS/t/rate_region.t
deleted file mode 100644
index 6e0db8f..0000000
--- a/FS/t/rate_region.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::rate_region;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/reg_code.t b/FS/t/reg_code.t
deleted file mode 100644
index 4b95990..0000000
--- a/FS/t/reg_code.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::reg_code;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/reg_code_pkg.t b/FS/t/reg_code_pkg.t
deleted file mode 100644
index 7f89ffa..0000000
--- a/FS/t/reg_code_pkg.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::reg_code_pkg;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/session.t b/FS/t/session.t
deleted file mode 100644
index c4b714e..0000000
--- a/FS/t/session.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::session;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_Common.t b/FS/t/svc_Common.t
deleted file mode 100644
index ed49e1e..0000000
--- a/FS/t/svc_Common.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_Common;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_acct.t b/FS/t/svc_acct.t
deleted file mode 100644
index 9ca78c9..0000000
--- a/FS/t/svc_acct.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_acct;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_acct_pop.t b/FS/t/svc_acct_pop.t
deleted file mode 100644
index e612c40..0000000
--- a/FS/t/svc_acct_pop.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_acct_pop;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_broadband.t b/FS/t/svc_broadband.t
deleted file mode 100644
index 02dc112..0000000
--- a/FS/t/svc_broadband.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_broadband;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_domain.t b/FS/t/svc_domain.t
deleted file mode 100644
index 4d91898..0000000
--- a/FS/t/svc_domain.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_domain;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_external.t b/FS/t/svc_external.t
deleted file mode 100644
index 20a6767..0000000
--- a/FS/t/svc_external.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_external;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_forward.t b/FS/t/svc_forward.t
deleted file mode 100644
index d653d34..0000000
--- a/FS/t/svc_forward.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_forward;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_phone.t b/FS/t/svc_phone.t
deleted file mode 100644
index 15b9ca2..0000000
--- a/FS/t/svc_phone.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_phone;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/svc_www.t b/FS/t/svc_www.t
deleted file mode 100644
index eb4e83f..0000000
--- a/FS/t/svc_www.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::svc_www;
-$loaded=1;
-print "ok 1\n";
diff --git a/FS/t/type_pkgs.t b/FS/t/type_pkgs.t
deleted file mode 100644
index 9840180..0000000
--- a/FS/t/type_pkgs.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n" }
-END {print "not ok 1\n" unless $loaded;}
-use FS::type_pkgs;
-$loaded=1;
-print "ok 1\n";
diff --git a/GPL b/GPL
deleted file mode 100644
index e77696a..0000000
--- a/GPL
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/INSTALL b/INSTALL
deleted file mode 100644
index 4b9b085..0000000
--- a/INSTALL
+++ /dev/null
@@ -1 +0,0 @@
-See httemplate/docs/index.html
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 604b402..0000000
--- a/Makefile
+++ /dev/null
@@ -1,344 +0,0 @@
-#!/usr/bin/make
-
-#solaris and perhaps other very weirdass /bin/sh
-#SHELL="/bin/ksh"
-
-DATASOURCE = DBI:Pg:dbname=freeside
-#DATASOURCE=DBI:mysql:freeside
-
-DB_USER = freeside
-DB_PASSWORD=
-
-TEMPLATE = mason
-
-MASON_HANDLER = /usr/local/etc/freeside/handler.pl
-MASONDATA = /usr/local/etc/freeside/masondata
-
-#deb
-FREESIDE_DOCUMENT_ROOT = /var/www/freeside
-#redhat, fedora, mandrake
-#FREESIDE_DOCUMENT_ROOT = /var/www/html/freeside
-#freebsd
-#FREESIDE_DOCUMENT_ROOT = /usr/local/www/data/freeside
-#openbsd
-#FREESIDE_DOCUMENT_ROOT = /var/www/htdocs/freeside
-#suse
-#FREESIDE_DOCUMENT_ROOT = /srv/www/htdocs/freeside
-#apache
-#FREESIDE_DOCUMENT_ROOT = /usr/local/apache/htdocs/freeside
-
-#deb, redhat, fedora, mandrake, suse, others?
-INIT_FILE = /etc/init.d/freeside
-#freebsd
-#INIT_FILE = /usr/local/etc/rc.d/011.freeside.sh
-
-#deb
-INIT_INSTALL = /usr/sbin/update-rc.d freeside defaults 21 20
-#redhat, fedora
-#INIT_INSTALL = /sbin/chkconfig freeside on
-#not necessary (freebsd)
-#INIT_INSTALL = /usr/bin/true
-
-#deb, suse
-HTTPD_RESTART = /etc/init.d/apache restart
-#redhat, fedora, mandrake
-#HTTPD_RESTART = /etc/init.d/httpd restart
-#freebsd
-#HTTPD_RESTART = /usr/local/etc/rc.d/apache.sh stop || true; sleep 10; /usr/local/etc/rc.d/apache.sh start
-#openbsd
-#HTTPD_RESTART = kill -TERM `cat /var/www/logs/httpd.pid`; sleep 10; /usr/sbin/httpd -u -DSSL
-#apache
-#HTTPD_RESTART = /usr/local/apache/bin/apachectl stop; sleep 10; /usr/local/apache/bin/apachectl startssl
-
-#(an include directory, not a file - "Include /etc/apache/conf.d" in httpd.conf)
-#deb (3.1+),
-APACHE_CONF = /etc/apache/conf.d
-
-FREESIDE_RESTART = ${INIT_FILE} restart
-
-#deb, redhat, fedora, mandrake, suse, others?
-INSTALLGROUP = root
-#freebsd, openbsd
-#INSTALLGROUP = wheel
-
-#edit the stuff below to have the daemons start
-
-QUEUED_USER=fs_queue
-
-SELFSERVICE_USER = fs_selfservice
-#never run on the same machine in production!!!
-SELFSERVICE_MACHINES = localhost
-# SELFSERVICE_MACHINES = www.example.com
-# SELFSERVICE_MACHINES = web1.example.com web2.example.com
-
-#user with sudo access on SELFSERVICE_MACHINES for automated self-service
-#installation.
-SELFSERVICE_INSTALL_USER = ivan
-SELFSERVICE_INSTALL_USERADD = /usr/sbin/useradd
-#SELFSERVICE_INSTALL_USERADD = "/usr/sbin/pw useradd"
-
-#RT_ENABLED = 0
-RT_ENABLED = 1
-RT_DOMAIN = example.com
-RT_TIMEZONE = US/Pacific
-#RT_TIMEZONE = US/Eastern
-FREESIDE_URL = "http://localhost/freeside/"
-
-#for now, same db as specified in DATASOURCE... eventually, otherwise?
-RT_DB_DATABASE = freeside
-
-#---
-
-#not changable yet
-FREESIDE_CONF = /usr/local/etc/freeside
-#rt/config.layout.in
-RT_PATH = /opt/rt3
-
-#only used for dev kludge now, not a big deal
-FREESIDE_PATH = `pwd`
-PERL_INC_DEV_KLUDGE = /usr/local/share/perl/5.8.8/
-
-VERSION=1.7.0
-TAG=freeside_1_7_0
-
-help:
- @echo "supported targets:"
- @echo " create-database create-config"
- @echo " install deploy"
- @echo " configure-rt create-rt"
- @echo " clean help"
- @echo
- @echo " install-docs install-perl-modules"
- @echo " install-init install-apache"
- @echo " install-rt"
- @echo " install-selfservice update-selfservice"
- @echo
- @echo " dev dev-docs dev-perl-modules"
- @echo
- @echo " masondocs alldocs docs"
- @echo " htmlman forcehtmlman"
- @echo " perl-modules"
- #@echo
- #@echo " upload-docs release update-webdemo"
-
-
-masondocs: htmlman httemplate/* httemplate/*/* httemplate/*/*/* httemplate/*/*/*/* httemplate/*/*/*/*/*
- rm -rf masondocs
- cp -pr httemplate masondocs
- touch masondocs
-
-alldocs: masondocs
-
-docs:
- make ${TEMPLATE}docs
-
-htmlman:
- [ -e ./httemplate/docs/man ] || mkdir httemplate/docs/man
- [ -e ./httemplate/docs/man/bin ] || mkdir httemplate/docs/man/bin
- [ -e ./httemplate/docs/man/FS ] || mkdir httemplate/docs/man/FS
- [ -e ./httemplate/docs/man/FS/UI ] || mkdir httemplate/docs/man/FS/UI
- [ -e ./httemplate/docs/man/FS/part_export ] || mkdir httemplate/docs/man/FS/part_export
- chmod a+rx bin/pod2x
- [ -e DONT_REBUILD_DOCS ] || bin/pod2x
-
-forcehtmlman:
- [ -e ./httemplate/docs/man ] || mkdir httemplate/docs/man
- [ -e ./httemplate/docs/man/bin ] || mkdir httemplate/docs/man/bin
- [ -e ./httemplate/docs/man/FS ] || mkdir httemplate/docs/man/FS
- [ -e ./httemplate/docs/man/FS/UI ] || mkdir httemplate/docs/man/FS/UI
- [ -e ./httemplate/docs/man/FS/part_export ] || mkdir httemplate/docs/man/FS/part_export
- bin/pod2x
-
-install-docs: docs
- [ -e ${FREESIDE_DOCUMENT_ROOT} ] && mv ${FREESIDE_DOCUMENT_ROOT} ${FREESIDE_DOCUMENT_ROOT}.`date +%Y%m%d%H%M%S` || true
- cp -r ${TEMPLATE}docs ${FREESIDE_DOCUMENT_ROOT}
- cp htetc/handler.pl ${MASON_HANDLER}
- perl -p -i -e "\
- s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g; \
- s'%%%RT_ENABLED%%%'${RT_ENABLED}'g; \
- " ${MASON_HANDLER}
- [ ! -e ${MASONDATA} ] && mkdir ${MASONDATA} || true
- chown -R freeside ${MASONDATA}
-
-dev-docs:
- [ -e ${FREESIDE_DOCUMENT_ROOT} ] && mv ${FREESIDE_DOCUMENT_ROOT} ${FREESIDE_DOCUMENT_ROOT}.`date +%Y%m%d%H%M%S` || true
- ln -s ${FREESIDE_PATH}/httemplate ${FREESIDE_DOCUMENT_ROOT}
- cp htetc/handler.pl ${MASON_HANDLER}
- perl -p -i -e "\
- s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g; \
- s'%%%RT_ENABLED%%%'${RT_ENABLED}'g; \
- s'###use Module::Refresh;###'use Module::Refresh;'; \
- s'###Module::Refresh->refresh;###'Module::Refresh->refresh;'; \
- " ${MASON_HANDLER} || true
-
-
-perl-modules:
- cd FS; \
- [ -e Makefile ] || perl Makefile.PL; \
- make; \
- perl -p -i -e "\
- s/%%%VERSION%%%/${VERSION}/g;\
- " blib/lib/FS.pm; \
-
-install-perl-modules: perl-modules
- [ -L ${PERL_INC_DEV_KLUDGE}/FS ] \
- && rm ${PERL_INC_DEV_KLUDGE}/FS \
- && mv ${PERL_INC_DEV_KLUDGE}/FS.old ${PERL_INC_DEV_KLUDGE}/FS \
- || true
- cd FS; \
- make install UNINST=1
-
-dev-perl-modules: perl-modules
- [ -d ${PERL_INC_DEV_KLUDGE}/FS -a ! -L ${PERL_INC_DEV_KLUDGE}/FS ] \
- && mv ${PERL_INC_DEV_KLUDGE}/FS ${PERL_INC_DEV_KLUDGE}/FS.old \
- || true
-
- rm -rf ${PERL_INC_DEV_KLUDGE}/FS
- ln -sf ${FREESIDE_PATH}/FS/blib/lib/FS ${PERL_INC_DEV_KLUDGE}/FS
-
-install-init:
- #[ -e ${INIT_FILE} ] || install -o root -g ${INSTALLGROUP} -m 711 init.d/freeside-init ${INIT_FILE}
- install -o root -g ${INSTALLGROUP} -m 711 init.d/freeside-init ${INIT_FILE}
- perl -p -i -e "\
- s/%%%QUEUED_USER%%%/${QUEUED_USER}/g;\
- s/%%%SELFSERVICE_USER%%%/${SELFSERVICE_USER}/g;\
- s/%%%SELFSERVICE_MACHINES%%%/${SELFSERVICE_MACHINES}/g;\
- " ${INIT_FILE}
- ${INIT_INSTALL}
-
-install-apache:
- [ -d ${APACHE_CONF} ] && \
- ( install -o root -m 755 htetc/freeside-base.conf ${APACHE_CONF} && \
- ( [ ${RT_ENABLED} -eq 1 ] && install -o root -m 755 htetc/freeside-rt.conf ${APACHE_CONF} || true ) && \
- perl -p -i -e "\
- s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g; \
- " ${APACHE_CONF}/freeside-*.conf \
- ) || true
-
-install-selfservice:
- [ -e ~freeside/.ssh/id_dsa.pub ] || su - freeside -c 'ssh-keygen -t dsa'
- for MACHINE in ${SELFSERVICE_MACHINES}; do \
- scp -r fs_selfservice/FS-SelfService ${SELFSERVICE_INSTALL_USER}@$$MACHINE:. ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; perl Makefile.PL && make" ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; sudo make install" ;\
- scp ~freeside/.ssh/id_dsa.pub ${SELFSERVICE_INSTALL_USER}@$$MACHINE:. ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "sudo ${SELFSERVICE_INSTALL_USERADD} freeside; sudo install -d -o freeside -m 600 ~freeside/.ssh/" ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "sudo ${SELFSERVICE_INSTALL_USERADD} freeside; sudo install -o freeside -m 600 ./id_dsa.pub ~freeside/.ssh/authorized_keys" ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "sudo install -o freeside -d /usr/local/freeside" ;\
- done
-
-update-selfservice:
- for MACHINE in ${SELFSERVICE_MACHINES}; do \
- RSYNC_RSH=ssh rsync -rlptz fs_selfservice/FS-SelfService/ ${SELFSERVICE_INSTALL_USER}@$$MACHINE:FS-SelfService ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; perl Makefile.PL && make" ;\
- ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; sudo make install" ;\
- done
-
-install: install-perl-modules install-docs install-init install-apache install-rt
-
-deploy: install
- ${HTTPD_RESTART}
- ${FREESIDE_RESTART}
-
-dev: dev-perl-modules dev-docs
-
-create-database:
- perl -e 'use DBIx::DataSource qw( create_database ); create_database( "${DATASOURCE}", "${DB_USER}", "${DB_PASSWORD}" ) or die $$DBIx::DataSource::errstr;'
-
-create-config: install-perl-modules
- [ -e ${FREESIDE_CONF} ] && mv ${FREESIDE_CONF} ${FREESIDE_CONF}.`date +%Y%m%d%H%M%S` || true
- install -d -o freeside ${FREESIDE_CONF}
-
- touch ${FREESIDE_CONF}/secrets
- chown freeside ${FREESIDE_CONF}/secrets
- chmod 600 ${FREESIDE_CONF}/secrets
-
- echo -e "${DATASOURCE}\n${DB_USER}\n${DB_PASSWORD}" >${FREESIDE_CONF}/secrets
- chmod 600 ${FREESIDE_CONF}/secrets
- chown freeside ${FREESIDE_CONF}/secrets
-
- mkdir "${FREESIDE_CONF}/conf.${DATASOURCE}"
- rm -rf conf/registries #old dirs just won't go away
- #cp conf/[a-z]* "${FREESIDE_CONF}/conf.${DATASOURCE}"
- cp `ls -d conf/[a-z]* | grep -v CVS` "${FREESIDE_CONF}/conf.${DATASOURCE}"
- chown -R freeside "${FREESIDE_CONF}/conf.${DATASOURCE}"
-
- mkdir "${FREESIDE_CONF}/counters.${DATASOURCE}"
- chown freeside "${FREESIDE_CONF}/counters.${DATASOURCE}"
-
- mkdir "${FREESIDE_CONF}/cache.${DATASOURCE}"
- chown freeside "${FREESIDE_CONF}/cache.${DATASOURCE}"
-
- mkdir "${FREESIDE_CONF}/export.${DATASOURCE}"
- chown freeside "${FREESIDE_CONF}/export.${DATASOURCE}"
-
-configure-rt:
- cd rt; \
- cp config.layout.in config.layout; \
- perl -p -i -e "\
- s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g;\
- s'%%%MASONDATA%%%'${MASONDATA}'g;\
- " config.layout; \
- ./configure --enable-layout=Freeside\
- --with-db-type=Pg \
- --with-db-dba=${DB_USER} \
- --with-db-database=${RT_DB_DATABASE} \
- --with-db-rt-user=${DB_USER} \
- --with-db-rt-pass=${DB_PASSWORD} \
- --with-web-user=freeside \
- --with-web-group=freeside \
- --with-rt-group=freeside
-
-create-rt: configure-rt
- [ -d /opt ] || mkdir /opt #doh
- [ -d /opt/rt3 ] || mkdir /opt/rt3 #
- [ -d /opt/rt3/share ] || mkdir /opt/rt3/share #
- cd rt; make install
- echo -e "${DB_PASSWORD}\n\\d sessions"\
- | psql -U ${DB_USER} -W ${RT_DB_DATABASE} 2>&1\
- | grep '^Did not find'\
- && rt/sbin/rt-setup-database --dba '${DB_USER}' \
- --dba-password '${DB_PASSWORD}' \
- --action schema \
- || true
- rt/sbin/rt-setup-database --action insert_initial \
- && rt/sbin/rt-setup-database --action insert --datafile ${RT_PATH}/etc/initialdata \
- || true
- perl -p -i -e "\
- s'%%%RT_DOMAIN%%%'${RT_DOMAIN}'g;\
- s'%%%RT_TIMEZONE%%%'${RT_TIMEZONE}'g;\
- s'%%%FREESIDE_URL%%%'${FREESIDE_URL}'g;\
- " ${RT_PATH}/etc/RT_SiteConfig.pm
-
-install-rt:
- [ ${RT_ENABLED} -eq 1 ] && ( cd rt; make install ) || true
-
-clean:
- rm -rf masondocs
- cd FS; \
- make clean
-
-#these are probably only useful if you're me...
-
-upload-docs: forcehtmlman
- ssh 420.am rm -rf /var/www/www.sisd.com/freeside/docs
- scp -pr httemplate/docs 420.am:/var/www/www.sisd.com/freeside/docs
-
-#release: upload-docs
-release:
- cd /home/ivan/freeside
- #cvs tag ${TAG}
- cvs tag -F ${TAG}
-
- #cd /home/ivan
- cvs export -r ${TAG} -d freeside-${VERSION} freeside
- tar czvf freeside-${VERSION}.tar.gz freeside-${VERSION}
-
- scp freeside-${VERSION}.tar.gz ivan@420.am:/var/www/www.sisd.com/freeside/
- mv freeside-${VERSION} freeside-${VERSION}.tar.gz ..
-
-update-webdemo:
- ssh ivan@420.am '( cd freeside; cvs update -d -P )'
- #ssh root@420.am '( cd /home/ivan/freeside; make clean; make deploy )'
- ssh root@420.am '( cd /home/ivan/freeside; make deploy )'
-
diff --git a/README b/README
deleted file mode 100644
index 25689e9..0000000
--- a/README
+++ /dev/null
@@ -1,45 +0,0 @@
-Freeside
-
-Copyright (C) 2005 Freeside Internet Services, Inc.
-Copyright (C) 2000-2005 Ivan Kohler
-Copyright (C) 1999 Silicon Interactive Software Design
-All rights reserved
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of:
-
- a) the GNU General Public License as published by the Free
- Software Foundation; either version 2, or (at your option) any
- later version
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public
- License along with this program, in the file `GPL'; if not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111-1307, USA.
-
-Freeside is a billing and administration package for Internet Service
-Providers.
-
-The Freeside home page is at `http://www.sisd.com/freeside'.
-
-The documentation is in `httemplate/docs'.
-
-A mailing list for users is available. Send a blank message to
-<freeside-users-subscribe@sisd.com> to subscribe.
-
-A mailing list for developers is available. It is intended to be lower volume
-and higher SNR than the users list. Send a blank message to
-<freeside-devel-subscribe@sisd.com> to subscribe.
-
-Commercial installation, customization and support services as well as
-preconfigured appliances are available from Ivan Kohler <ivan@sisd.com>.
-Requests for free support sent to me directly will be ignored. Please
-subscribe to the the user mailing list to request free support!
-
-Ivan Kohler <ivan-freeside_readme@420.am>
-
diff --git a/SCHEMA_CHANGE b/SCHEMA_CHANGE
deleted file mode 100644
index b3d77aa..0000000
--- a/SCHEMA_CHANGE
+++ /dev/null
@@ -1,17 +0,0 @@
-primarily:
-- edit FS/FS/Schema.pm
-
-if the changes are something other than table and/or column additions:
-- httemplate/docs/upgrade10.html
-- README.1.7.X
-
-for new tables:
-- make sure the new tables are added to FS/FS/Schema.pm and run make install-perl-modules
-- run bin/generate-table-module tablename
-- edit the resulting FS/FS/table.pm
-
-docs:
-- sorta neglected: FS/FS.pm
-- somehwat neglected: httemplate/docs/schema.html
-- really neglected: httemplate/docs/schema.dia
-
diff --git a/TODO b/TODO
deleted file mode 100644
index 4c582c9..0000000
--- a/TODO
+++ /dev/null
@@ -1,9 +0,0 @@
-$Id: TODO,v 1.68 2002-02-16 18:14:23 ivan Exp $
-
-The TODO list / bug-tracking is now kept in a database. See
-http://pouncequick.420.am/rt/
-
-If you are interested in helping with any of these, please join the
-*development* mailing list (send a blank message to
-ivan-freeside-devel-subscribe@sisd.com) to avoid duplication of effort.
-
diff --git a/bin/add-history-records.pl b/bin/add-history-records.pl
deleted file mode 100755
index fbf9d09..0000000
--- a/bin/add-history-records.pl
+++ /dev/null
@@ -1,139 +0,0 @@
-#!/usr/bin/perl
-
-die "This is broken. Don't use it!\n";
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearchs qsearch);
-
-use Data::Dumper;
-
-my @tables = qw(svc_acct svc_broadband svc_domain svc_external svc_forward svc_www cust_svc domain_record);
-#my @tables = qw(svc_www);
-
-my $user = shift or die &usage;
-my $dbh = adminsuidsetup($user);
-
-my $dbdef = FS::Record::dbdef;
-
-foreach my $table (@tables) {
-
- my $h_table = 'h_' . $table;
- my $cnt = 0;
- my $t_cnt = 0;
-
- eval "use FS::${table}";
- die $@ if $@;
- eval "use FS::${h_table}";
- die $@ if $@;
-
- print "Adding history records for ${table}...\n";
-
- my $dbdef_table = $dbdef->table($table);
- my $pkey = $dbdef_table->primary_key;
-
- foreach my $rec (qsearch($table, {})) {
-
- #my $h_rec = qsearchs(
- # $h_table,
- # { $pkey => $rec->getfield($pkey) },
- # eval "FS::${h_table}->sql_h_searchs(time)",
- #);
-
- my $h_rec = qsearchs(
- $h_table,
- { $pkey => $rec->getfield($pkey) },
- "DISTINCT ON ( $pkey ) *",
- "AND history_action = 'insert' ORDER BY $pkey ASC, history_date DESC",
- '',
- 'AS maintable',
- );
-
- unless ($h_rec) {
- my $h_insert_rec = $rec->_h_statement('insert', 1);
- #print $h_insert_rec . "\n";
- $dbh->do($h_insert_rec);
- die $dbh->errstr if $dbh->err;
- $dbh->commit or die $dbh->errstr;
- $cnt++;
- }
-
-
- $t_cnt++;
-
- }
-
- print "History records inserted into $h_table: $cnt\n";
- print " Total records in $table: $t_cnt\n";
-
- print "\n";
-
-}
-
-foreach my $table (@tables) {
-
- my $h_table = 'h_' . $table;
- my $cnt = 0;
-
- eval "use FS::${table}";
- die $@ if $@;
- eval "use FS::${h_table}";
- die $@ if $@;
-
- print "Adding insert records for unmatched delete records on ${table}...\n";
-
- my $dbdef_table = $dbdef->table($table);
- my $pkey = $dbdef_table->primary_key;
-
- #SELECT * FROM h_svc_www
- #DISTINCT ON ( $pkey ) ?
- my $where = "
- WHERE ${pkey} in (
- SELECT ${h_table}1.${pkey}
- FROM ${h_table} as ${h_table}1
- WHERE (
- SELECT count(${h_table}2.${pkey})
- FROM ${h_table} as ${h_table}2
- WHERE ${h_table}2.${pkey} = ${h_table}1.${pkey}
- AND ${h_table}2.history_action = 'delete'
- ) > 0
- AND (
- SELECT count(${h_table}3.${pkey})
- FROM ${h_table} as ${h_table}3
- WHERE ${h_table}3.${pkey} = ${h_table}1.${pkey}
- AND ( ${h_table}3.history_action = 'insert'
- OR ${h_table}3.history_action = 'replace_new' )
- ) = 0
- GROUP BY ${h_table}1.${pkey})";
-
-
- my @h_recs = qsearch(
- $h_table, { },
- "DISTINCT ON ( $pkey ) *",
- $where,
- '',
- ''
- );
-
- foreach my $h_rec (@h_recs) {
- #print "Adding insert record for deleted record with pkey='" . $h_rec->getfield($pkey) . "'...\n";
- my $class = 'FS::' . $table;
- my $rec = $class->new({ $h_rec->hash });
- my $h_insert_rec = $rec->_h_statement('insert', 1);
- #print $h_insert_rec . "\n";
- $dbh->do($h_insert_rec);
- die $dbh->errstr if $dbh->err;
- $dbh->commit or die $dbh->errstr;
- $cnt++;
- }
-
- print "History records inserted into $h_table: $cnt\n";
-
-}
-
-
-
-sub usage {
- die "Usage:\n add-history-records.pl user\n";
-}
-
diff --git a/bin/apache.export b/bin/apache.export
deleted file mode 100755
index 47863a9..0000000
--- a/bin/apache.export
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-#use File::Path;
-use File::Rsync;
-use Net::SSH qw(ssh);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::cust_svc;
-use FS::svc_www;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#needs the export number in there somewhere too...?
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/apache";
-mkdir $spooldir, 0700 unless -d $spooldir;
-
-my @exports = qsearch('part_export', { 'exporttype' => 'apache' } );
-
-my $rsync = File::Rsync->new({
- rsh => 'ssh',
-# dry_run => 1,
-});
-
-foreach my $export ( @exports ) {
-
- my $machine = $export->machine;
- my $file = "$spooldir/$machine.conf";
-
- open(HTTPD_CONF,">$file") or die "can't open $file: $!";
-
- my $template = $export->option('template');
-
- my @svc_www = $export->svc_x;
-
- foreach my $svc_www ( @svc_www ) {
- use vars qw($zone $username);
- $zone = $svc_www->domain_record->zone;
- $username = $svc_www->svc_acct->username;
- print HTTPD_CONF eval(qq("$template")). "\n\n";
- }
-
- my $user = $export->option('user');
- my $httpd_conf = $export->option('httpd_conf');
-
- $rsync->exec( {
- src => $file,
- dest => "$user\@$machine:$httpd_conf",
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
- # warn $rsync->out;
-
- my $restart = $export->option('restart') || 'apachectl graceful';
-
- ssh("root\@$machine", $restart);
-
-}
-
-close HTTPD_CONF;
-
-# -----
-
-sub usage {
- die "Usage:\n apache.export user\n";
-}
-
diff --git a/bin/artera.import b/bin/artera.import
deleted file mode 100644
index 716ddda..0000000
--- a/bin/artera.import
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-
-use Text::CSV_XS;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearchs);
-use FS::svc_external;
-use FS::svc_domain;
-use FS::svc_acct;
-
-$FS::svc_Common::noexport_hack = 1;
-
-my $svcpart = 30;
-
-my $user = shift
- or die 'Usage:\n\n artera.import user <artera_active_orders.csv';
-adminsuidsetup $user;
-
-##
-
-my $csv = new Text::CSV_XS;
-
-my $header = scalar(<>);
-
-my( $num, $linked ) = ( 0, 0 );
-
-while (<>) {
- my $status = $csv->parse($_)
- or die $csv->error_input;
- my($serial, $keycode, $name, $ordernum, $email) = $csv->fields();
- #warn join(" - ", $serial, $keycode, $name, $ordernum, $email ). "\n";
-
- $email =~ /^([^@]+)\@([^@]+)$/
- or die $email;
- my($username, $domain) = ( $1, $2 );
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } );
- my $cust_svc = '';
- if ( $svc_domain ) {
- my $svc_acct = qsearchs('svc_acct', {
- 'username' => $username,
- 'domsvc' => $svc_domain->svcnum,
- } );
- $cust_svc = $svc_acct->cust_svc
- if $svc_acct;
- #} else {
- # warn "can't find domain $domain\n";
- }
-
- my $exist = qsearchs('svc_external', { 'id' => $serial } );
- next if $exist;
-
- my $svc_external = new FS::svc_external {
- 'svcpart' => $svcpart,
- 'pkgnum' => ( $cust_svc ? $cust_svc->pkgnum : '' ),
- 'id' => $serial,
- 'title' => $keycode,
- };
- #my $error = $svc_external->check;
- my $error = $svc_external->insert;
- if ( $cust_svc && $error =~ /^Already/ ) {
- warn $error;
- $svc_external->pkgnum('');
- $error = $svc_external->insert;
- }
- warn $error if $error;
-
- $num++;
- $linked++ if $cust_svc;
- #print "$num imported, $linked linked\n";
-
-}
-
-print "$num imported, $linked linked\n";
-
diff --git a/bin/backup-dvd b/bin/backup-dvd
deleted file mode 100644
index d0314b4..0000000
--- a/bin/backup-dvd
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/bash
-
-database="freeside"
-DEVICE="/dev/hda"
-
-su freeside -c "pg_dump $database" >/var/backups/$database.sql
-
-DATE=$(date +%Y-%m-%d)
-
-#NOTE: These two paths must end in a / in
-#order to correctly build up the other paths
-#BACKUP_DIR="/backup/directory/"
-BACKUP_DIR="/backup/"
- #TEMP_BACKUP_FILES_DIR="/backup/temp/"
-
-BACKUP_FILE=$BACKUP_DIR"backup-"$DATE".tar.bz2"
- #DATABASE_FILE=$TEMP_BACKUP_FILES_DIR"foo-"$DATE".sql"
-
- #These directories shouldn't end in a / although
- #I don't think it will cause any problems if
- #they do. There should be a space at the end though
- #to ensure the database file gets concatenated correctly.
- #SOURCE="/a/location /other/locations " $DATABASE_FILE
-
-#echo Removing old backup directories
-rm -rf $BACKUP_DIR
- #rm -rf $TEMP_BACKUP_FILES_DIR
-
-#echo Creating new backup directories
-mkdir $BACKUP_DIR
- #mkdir $TEMP_BACKUP_FILES_DIR
-
- #echo Creating database backup
- #pg_dump -U username -f $DATABASE_FILE databaseName
-
-#echo Backing up $SOURCE to file $BACKUP_FILE
-#tar -cvpl -f $BACKUP_FILE --anchored --exclude /backup /
-tar -cjpl -f $BACKUP_FILE --anchored --exclude /backup /
-
- ##This is not necessary and possibly harmful for DVD+RW media
- #echo Quick blanking media
- #dvd+rw-format -blank /dev/hdc
-
-#echo Burning backup
-growisofs -dvd-compat -Z $DEVICE -quiet -r -J $BACKUP_FILE
diff --git a/bin/billco-upload b/bin/billco-upload
deleted file mode 100644
index ce4a43d..0000000
--- a/bin/billco-upload
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-AGENTNUMS="1 2 3"
-
-date=`date +"%Y%m%d"`
-dir="/usr/local/etc/freeside/export.DBI:Pg:dbname=freeside/cust_bill"
-cd "$dir"
-
-for AGENTNUM in $AGENTNUMS; do
-
- for a in header detail; do
- mv agentnum$AGENTNUM-$a.csv agentnum$AGENTNUM-$date-$a.csv
- done
-
- zip agentnum$AGENTNUM-$date.zip agentnum$AGENTNUM-$date-header.csv agentnum$AGENTNUM-$date-detail.csv
-
- echo $dir/agentnum$AGENTNUM-$date.zip
-
-done
-
diff --git a/bin/bind.export b/bin/bind.export
deleted file mode 100755
index 286e43a..0000000
--- a/bin/bind.export
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use File::Path;
-use File::Rsync;
-use Net::SSH qw(ssh);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::cust_pkg;
-use FS::cust_svc;
-use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/bind";
-mkdir $spooldir, 0700 unless -d $spooldir;
-
-my @exports = qsearch('part_export', { 'exporttype' => 'bind' } );
-my @sexports = qsearch('part_export', { 'exporttype' => 'bind_slave' } );
-
-my $rsync = File::Rsync->new({
- rsh => 'ssh',
-# dry_run => 1,
-});
-
-foreach my $export ( @exports ) {
-
- my $machine = $export->machine;
- my $prefix = "$spooldir/$machine";
-
- my $bind_rel = $export->option('bind_release');
- my $ndc_cmd = $export->option('reload')
- || ( ($bind_rel eq 'BIND9') ? 'rndc' : 'ndc' );
- my $minttl = $export->option('bind9_minttl');
-
- #prevent old domain files from piling up
- #rmtree "$prefix" or die "can't rmtree $prefix.db: $!";
-
- mkdir $prefix, 0700 unless -d $prefix;
-
- open(NAMED_CONF,">$prefix/named.conf")
- or die "can't open $prefix/named.conf: $!";
-
- if ( -e "$prefix/named.conf.HEADER" ) {
- open(CONF_HEADER,"<$prefix/named.conf.HEADER")
- or die "can't open $prefix/named.conf.HEADER: $!";
- while (<CONF_HEADER>) { print NAMED_CONF $_; }
- close CONF_HEADER;
- }
-
- my $zonepath = $export->option('zonepath');
- $zonepath =~ s/\/$//;
-
- my @svc_domain = $export->svc_x;
-
- foreach my $svc_domain ( @svc_domain ) {
- my $domain = $svc_domain->domain;
- my @masters = qsearch('domain_record', {
- 'svcnum' => $svc_domain->svcnum,
- 'rectype' => '_mstr',
- } );
- if ( @masters ) {
- my $masters = join('; ', map { $_->recdata } @masters );
-
- print NAMED_CONF <<END;
-zone "$domain" {
- type slave;
- file "db.$domain";
- masters { $masters; };
-};
-
-END
-
- } else {
-
- print NAMED_CONF <<END;
-zone "$domain" {
- type master;
- file "$zonepath/db.$domain";
-};
-
-END
-
- open (DB_MASTER,">$prefix/db.$domain")
- or die "can't open $prefix/db.$domain: $!";
-
- if ($bind_rel eq 'BIND9') {
- print DB_MASTER "\$TTL $minttl\n\$ORIGIN $domain.\n";
- }
-
- my @domain_records =
- qsearch('domain_record', { 'svcnum' => $svc_domain->svcnum } );
- foreach my $domain_record (
- sort { $b->rectype cmp $a->rectype } @domain_records
- ) {
- #if ( $domain_record->rectype eq 'SOA' ) {
- # print DB_MASTER join("\t", $domain_record-> reczone
- #} else {
- print DB_MASTER join("\t",
- map { $domain_record->getfield($_) }
- qw( reczone recaf rectype recdata )
- ), "\n";
- #}
- }
-
- close DB_MASTER;
-
- }
-
- }
-
- $rsync->exec( {
- src => "$prefix/",
- recursive => 1,
- dest => "root\@$machine:$zonepath/",
- exclude => [qw( *.import named.conf.HEADER named.conf )],
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
- # warn $rsync->out;
-
- $rsync->exec( {
- src => "$prefix/named.conf",
- dest => "root\@$machine:". $export->option('named_conf'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-# warn $rsync->out;
-
- ssh("root\@$machine", "$ndc_cmd reload");
-
-}
-
-close NAMED_CONF;
-
-foreach my $sexport ( @sexports ) { #false laziness with above
-
- my $machine = $sexport->machine;
- my $prefix = "$spooldir/$machine";
-
- my $bind_rel = $sexport->option('bind_release');
- my $ndc_cmd = ($bind_rel eq 'BIND9') ? 'rndc' : 'ndc';
-
- #prevent old domain files from piling up
- #rmtree "$prefix" or die "can't rmtree $prefix.db: $!";
-
- mkdir $prefix, 0700 unless -d $prefix;
-
- open(NAMED_CONF,">$prefix/named.conf")
- or die "can't open $prefix/named.conf: $!";
-
- if ( -e "$prefix/named.conf.HEADER" ) {
- open(CONF_HEADER,"<$prefix/named.conf.HEADER")
- or die "can't open $prefix/named.conf.HEADER: $!";
- while (<CONF_HEADER>) { print NAMED_CONF $_; }
- close CONF_HEADER;
- }
-
- my $masters = $sexport->option('master');
-
- #false laziness with freeside-sqlradius-reset
- my @svc_domain =
- map { qsearchs('svc_domain', { 'svcnum' => $_->svcnum } ) }
- map { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- grep { qsearch('cust_svc', { 'svcpart' => $_->svcpart } ) }
- $sexport->export_svc;
-
- foreach my $svc_domain ( @svc_domain ) {
- my $domain = $svc_domain->domain;
- print NAMED_CONF <<END;
-zone "$domain" {
- type slave;
- file "db.$domain";
- masters { $masters; };
-};
-
-END
-
- }
-
- $rsync->exec( {
- src => "$prefix/named.conf",
- dest => "root\@$machine:". $sexport->option('named_conf'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-# warn $rsync->out;
-
- ssh("root\@$machine", "$ndc_cmd reload");
-
-}
-close NAMED_CONF;
-
-# -----
-
-sub usage {
- die "Usage:\n bind.export user\n";
-}
-
diff --git a/bin/bind.import b/bin/bind.import
deleted file mode 100755
index 1cdf567..0000000
--- a/bin/bind.import
+++ /dev/null
@@ -1,234 +0,0 @@
-#!/usr/bin/perl -w
-#
-# REQUIRED:
-# -p: part number for domains
-#
-# -n: named.conf file (or an include file with zones you want to import),
-# for example root@ns.isp.com:/var/named/named.conf
-#
-# OPTIONAL:
-# -d: dry-run, debug: don't insert any records, just dump debugging output
-# -s: import slave zones as master. useful if you need to recreate your
-# primary nameserver from a secondary
-# -c dir: override patch for downloading zone files (for example, when
-# downloading zone files from chrooted bind)
-#
-# need to manually put header in
-# /usr/local/etc/freeside/export.<datasrc./bind/<machine>/named.conf.HEADER
-# (or, nowadays, better just to include the file freeside exports)
-
-use strict;
-
-use vars qw($domain_svcpart);
-
-use Getopt::Std;
-use Data::Dumper;
-#use BIND::Conf_Parser;
-#use DNS::ZoneParse 0.81;
-
-use Net::SCP qw(scp iscp);
-
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch); #qsearchs);
-#use FS::svc_acct_sm;
-use FS::svc_domain;
-use FS::domain_record;
-#use FS::svc_acct;
-#use FS::part_svc;
-
-use vars qw($opt_p $opt_n $opt_s $opt_c $opt_d);
-getopts("p:n:sc:d");
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::domain_record::noserial_hack = 1;
-
-use vars qw($spooldir);
-$spooldir = "/usr/local/etc/freeside/export.". datasrc. "/bind";
-mkdir $spooldir unless -d $spooldir;
-
-$domain_svcpart = $opt_p;
-
-my $named_conf = $opt_n;
-
-use vars qw($named_machine $prefix);
-$named_machine = (split(/:/, $named_conf))[0];
-my $pnamed_machine = $named_machine;
-$pnamed_machine =~ s/^[\w\-]+\@//;
-$prefix = "$spooldir/$pnamed_machine";
-mkdir $prefix unless -d $prefix;
-
-#iscp("$named_conf","$prefix/named.conf.import");
-scp("$named_conf","$prefix/named.conf.import");
-
-##
-
-$FS::svc_domain::whois_hack=1;
-
-my $p = Parser->new;
-$p->parse_file("$prefix/named.conf.import");
-
-print "\nBIND import completed.\n";
-
-##
-
-sub usage {
- die "Usage:\n\n bind.import -p partnum -n \"user\@machine:/path/to/named.conf\" [ -s ] [ -c chroot_dir ] [ -f ] user\n";
-}
-
-########
-BEGIN {
-
- package Parser;
- use BIND::Conf_Parser;
- use vars qw(@ISA $named_dir);
- @ISA = qw(BIND::Conf_Parser);
-
- $named_dir = 'COULD_NOT_FIND_NAMED_DIRECTORY_TRY_SETTING_-C_OPTION';
- sub handle_option {
- my($self, $option, $argument) = @_;
- return unless $option eq "directory";
- $named_dir = $argument;
- #warn "found named dir: $named_dir\n";
- }
-
- sub handle_zone {
- my($self, $name, $class, $type, $options) = @_;
- return unless $class eq 'in';
- return if grep { $name eq $_ } (qw(
- . localhost 127.in-addr.arpa 0.in-addr.arpa 255.in-addr.arpa
- 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa
- 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.int
- ));
-
- use FS::Record qw(qsearchs);
- use FS::svc_domain;
-
- my $domain =
- qsearchs('svc_domain', { 'domain' => $name } )
- || new FS::svc_domain( {
- svcpart => $main::domain_svcpart,
- domain => $name,
- action => 'N',
- } );
- unless ( $domain->svcnum ) {
- my $error = $domain->insert;
- die $error if $error;
- }
-
- if ( $type eq 'slave' && !$main::opt_s ) {
-
- if ( $main::opt_d ) {
-
- use Data::Dumper;
- print "$name: ". Dumper($options);
-
- } else {
-
- foreach my $master ( @{ $options->{masters} } ) {
- my $domain_record = new FS::domain_record( {
- 'svcnum' => $domain->svcnum,
- 'reczone' => '@',
- 'recaf' => 'IN',
- 'rectype' => '_mstr',
- 'recdata' => $master,
- } );
- my $error = $domain_record->insert;
- die $error if $error;
- }
-
- }
-
- } elsif ( $type eq 'master' || ( $type eq 'slave' && $main::opt_s ) ) {
-
- my $file = $options->{file};
-
- use File::Basename;
- my $basefile = basename($file);
- my $sourcefile = $file;
- if ( $main::opt_c ) {
- $sourcefile = "$main::opt_c/$sourcefile" if $main::opt_c;
- } else {
- $sourcefile = "$named_dir/$sourcefile" unless $file =~ /^\//;
- }
-
- use Net::SCP qw(iscp scp);
- #iscp("$main::named_machine:$sourcefile",
- # "$main::prefix/$basefile.import");
- scp("$main::named_machine:$sourcefile",
- "$main::prefix/$basefile.import");
-
- use DNS::ZoneParse 0.84;
- my $zone = DNS::ZoneParse->new("$main::prefix/$basefile.import");
-
- my $dump = $zone->dump;
-
- if ( $main::opt_d ) {
-
- use Data::Dumper;
- print "$name: ". Dumper($dump);
-
- } else {
-
- foreach my $rectype ( keys %$dump ) {
- if ( $rectype =~ /^SOA$/i ) {
- my $rec = $dump->{$rectype};
- $rec->{email} =~ s/\@/\./;
- my $domain_record = new FS::domain_record( {
- 'svcnum' => $domain->svcnum,
- 'reczone' => $rec->{origin},
- 'recaf' => 'IN',
- 'rectype' => $rectype,
- 'recdata' =>
- $rec->{primary}. ' '. $rec->{email}. ' ( '.
- join(' ', map $rec->{$_},
- qw( serial refresh retry expire minimumTTL ) ).
- ' )',
- } );
- my $error = $domain_record->insert;
- die $error if $error;
- } else {
- #die $dump->{$rectype};
-
- my $datasub;
- if ( $rectype =~ /^MX$/i ) {
- $datasub = sub { $_[0]->{priority}. ' '. $_[0]->{host}; };
- } elsif ( $rectype =~ /^TXT$/i ) {
- $datasub = sub { $_[0]->{text}; };
- } else {
- $datasub = sub { $_[0]->{host}; };
- }
-
- foreach my $rec ( @{ $dump->{$rectype} } ) {
- my $domain_record = new FS::domain_record( {
- 'svcnum' => $domain->svcnum,
- 'reczone' => $rec->{name},
- 'recaf' => $rec->{class} || 'IN',
- 'rectype' => $rectype,
- 'recdata' => &{$datasub}($rec),
- } );
- my $error = $domain_record->insert;
- if ( $error ) {
- warn "$error inserting ".
- $rec->{name}. ' . '. $domain->domain. "\n";
- warn Dumper($rec);
- #system('cat',"$main::prefix/$basefile.import");
- die;
- }
- }
- }
- }
-
- }
-
- #} else {
- # die "unrecognized type $type\n";
- }
-
- }
-
-}
-#########
-
diff --git a/bin/bsdshell.export b/bin/bsdshell.export
deleted file mode 100755
index 6e0d103..0000000
--- a/bin/bsdshell.export
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/usr/bin/perl -w
-
-# bsdshell export
-
-use strict;
-use File::Rsync;
-use Net::SSH qw(ssh);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::cust_svc;
-use FS::svc_acct;
-
-my @saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc;
-#my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/shell";
-
-my @bsd_exports = qsearch('part_export', { 'exporttype' => 'bsdshell' } );
-
-my $rsync = File::Rsync->new({
- rsh => 'ssh',
-# dry_run => 1,
-});
-
-foreach my $export ( @bsd_exports ) {
- my $machine = $export->machine;
- my $prefix = "$spooldir/$machine";
- mkdir $prefix, 0700 unless -d $prefix;
-
- #LOCKING!!!
-
- ( open(MASTER,">$prefix/master.passwd")
- #!!! and flock(MASTER,LOCK_EX|LOCK_NB)
- ) or die "Can't open $prefix/master.passwd: $!";
- ( open(PASSWD,">$prefix/passwd")
- #!!! and flock(PASSWD,LOCK_EX|LOCK_NB)
- ) or die "Can't open $prefix/passwd: $!";
-
- chmod 0644, "$prefix/passwd";
- chmod 0600, "$prefix/master.passwd";
-
- my @svc_acct = $export->svc_x;
-
- next unless @svc_acct;
-
- foreach my $svc_acct ( sort { $a->uid <=> $b->uid } @svc_acct ) {
-
- my $password = $svc_acct->_password;
- my $cpassword;
- #if ( ( length($password) <= 8 )
- if ( ( length($password) <= 12 )
- && ( $password ne '*' )
- && ( $password ne '!!' )
- && ( $password ne '' )
- ) {
- $cpassword=crypt($password,
- $saltset[int(rand(64))].$saltset[int(rand(64))]
- );
- # MD5 !!!!
- } else {
- $cpassword=$password;
- }
-
- ###
- # FORMAT OF THE PASSWD FILE HERE
- print PASSWD join(":",
- $svc_acct->username,
- 'x', # "##". $username,
- $svc_acct->uid,
- $svc_acct->gid,
- $svc_acct->finger,
- $svc_acct->dir,
- $svc_acct->shell,
- ), "\n";
-
- ###
- # FORMAT OF FreeBSD MASTER PASSWD FILE HERE
- print MASTER join(":",
- $svc_acct->username, # User name
- $cpassword, # Encrypted password
- $svc_acct->uid, # User ID
- $svc_acct->gid, # Group ID
- "", # Login Class
- "0", # Password Change Time
- "0", # Password Expiration Time
- $svc_acct->finger, # Users name
- $svc_acct->dir, # Users home directory
- $svc_acct->shell, # shell
- ), "\n" ;
-
- }
-
- #!!! flock(MASTER,LOCK_UN);
- #!!! flock(PASSWD,LOCK_UN);
- close MASTER;
- close PASSWD;
-
- $rsync->exec( {
- src => "$prefix/passwd",
- dest => "root\@$machine:/etc/passwd"
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-
- $rsync->exec( {
- src => "$prefix/master.passwd",
- dest => "root\@$machine:/etc/master.passwd.new"
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
- ssh("root\@$machine", "pwd_mkdb /etc/master.passwd.new");
-
- # UNLOCK!!
-}
diff --git a/bin/cdr_calltype.import b/bin/cdr_calltype.import
deleted file mode 100755
index a998284..0000000
--- a/bin/cdr_calltype.import
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/perl -w
-#
-# bin/cdr_calltype.import ivan ~ivan/convergent/newspecs/fixed_inbound/calltypes.csv
-
-use strict;
-use FS::UID qw(dbh adminsuidsetup);
-use FS::cdr_calltype;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-while (<>) {
-
- chomp;
- my $line = $_;
-
- #$line =~ /^(\d+),"([^"]+)"$/ or do {
- $line =~ /^(\d+),"([^"]+)"/ or do {
- warn "unparsable line: $line\n";
- next;
- };
-
- my $cdr_calltype = new FS::cdr_calltype {
- 'calltypenum' => $1,
- 'calltypename' => $2,
- };
-
- #my $error = $cdr_calltype->check;
- my $error = $cdr_calltype->insert;
- if ( $error ) {
- warn "********** $error FOR LINE: $line\n";
- dbh->commit;
- #my $wait = scalar(<STDIN>);
- }
-
-}
-
-sub usage {
- "Usage:\n\ncdr_calltype.import username filename ...\n";
-}
-
diff --git a/bin/cdr_upstream_rate.import b/bin/cdr_upstream_rate.import
deleted file mode 100755
index fda3883..0000000
--- a/bin/cdr_upstream_rate.import
+++ /dev/null
@@ -1,142 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Usage: bin/cdr_upstream_rate.import username ratenum filename
-#
-# records will be imported into cdr_upstream_rate, rate_detail and rate_region
-#
-# Example: bin/cdr_upstream_rate.import ivan 1 ~ivan/convergent/sample_rate_table.csv
-#
-# username: a freeside login (from /usr/local/etc/freeside/mapsecrets)
-# ratenum: rate plan (FS::rate) created with the web UI
-# filename: CSV file
-#
-# the following fields are currently used:
-# - Class Code => cdr_upstream_rate.rateid
-# - Description => rate_region.regionname
-# (rate_detail->dest_region)
-# - 1_rate => ( * 60 / 1_rate_seconds ) => rate_detail.min_charge
-# - 1_rate_seconds => (used above)
-# - 1_second_increment => rate_detail.sec_granularity
-#
-# the following fields are not (yet) used:
-# - Flagfall => what's this for?
-#
-# - 1_cap_time => freeside doesn't have voip time caps yet...
-# - 1_cap_cost => freeside doesn't have voip cost caps yet...
-# - 1_repeat => not sure what this is for, sample data is all 0
-#
-# - 2_rate => \
-# - 2_rate_seconds => |
-# - 2_second_increment => | not sure what the second set of rate data
-# - 2_cap_time => | is supposed to be for...
-# - 2_cap_cost => |
-# - 2_repeat => /
-#
-# - Carrier => probably not needed?
-# - Start Date => not necessary?
-
-use strict;
-use vars qw( $DEBUG );
-use Text::CSV_XS;
-use FS::UID qw(dbh adminsuidsetup);
-use FS::Record qw(qsearchs);
-use FS::rate;
-use FS::cdr_upstream_rate;
-use FS::rate_detail;
-use FS::rate_region;
-
-$DEBUG = 1;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $ratenum = shift or die &usage;
-
-my $rate = qsearchs( 'rate', { 'ratenum' => $ratenum } );
-die "rate plan $ratenum not found in rate table\n"
- unless $rate;
-
-my $csv = new Text::CSV_XS;
-my $hline = scalar(<>);
-chomp($hline);
-$csv->parse($hline) or die "can't parse header: $hline\n";
-my @header = $csv->fields();
-
-$FS::UID::AutoCommit = 0;
-
-while (<>) {
-
- chomp;
- my $line = $_;
-
-# #$line =~ /^(\d+),"([^"]+)"$/ or do {
-# #}
-# $line =~ /^(\d+),"([^"]+)"/ or do {
-# warn "unparsable line: $line\n";
-# next;
-# };
-
- $csv->parse($line) or die "can't parse line: $line\n";
- my @line = $csv->fields();
-
- my %hash = map { $_ => shift(@line) } @header;
-
- warn join('', map { "$_ => $hash{$_}\n" } keys %hash )
- if $DEBUG > 1;
-
- my $rate_region = new FS::rate_region {
- 'regionname' => $hash{'Description'}
- };
-
- my $error = $rate_region->insert;
- if ( $error ) {
- dbh->rollback;
- die "error inserting into rate_region: $error\n";
- }
- my $dest_regionnum = $rate_region->regionnum;
- warn "rate_region $dest_regionnum inserted\n"
- if $DEBUG;
-
- my $rate_detail = new FS::rate_detail {
- 'ratenum' => $ratenum,
- 'dest_regionnum' => $dest_regionnum,
- 'min_included' => 0,
- #'min_charge', => sprintf('%.5f', 60 * $hash{'1_rate'} / $hash{'1_rate_seconds'} ),
- 'min_charge', => sprintf('%.5f', $hash{'1_rate'} /
- ( $hash{'1_rate_seconds'} / 60 )
- ),
- 'sec_granularity' => $hash{'1_second_increment'},
- };
- $error = $rate_detail->insert;
- if ( $error ) {
- dbh->rollback;
- die "error inserting into rate_detail: $error\n";
- }
- my $ratedetailnum = $rate_detail->ratedetailnum;
- warn "rate_detail $ratedetailnum inserted\n"
- if $DEBUG;
-
- my $cdr_upstream_rate = new FS::cdr_upstream_rate {
- 'upstream_rateid' => $hash{'Class Code'},
- 'ratedetailnum' => $rate_detail->ratedetailnum,
- };
- $error = $cdr_upstream_rate->insert;
- if ( $error ) {
- dbh->rollback;
- die "error inserting into cdr_upstream_rate: $error\n";
- }
- warn "cdr_upstream_rate ". $cdr_upstream_rate->upstreamratenum. " inserted\n"
- if $DEBUG;
-
- dbh->commit or die "can't commit: ". dbh->errstr;
-
- warn "\n" if $DEBUG;
-
-}
-
-dbh->commit or die "can't commit: ". dbh->errstr;
-
-sub usage {
- "Usage:\n\ncdr_upstream_rate.import username ratenum filename\n";
-}
-
diff --git a/bin/create-fetchmailrc b/bin/create-fetchmailrc
deleted file mode 100644
index 11bde0c..0000000
--- a/bin/create-fetchmailrc
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/usr/bin/perl -w
-# this quick hack helps you generate/maintain .fetchmailrc files from
-# FS::acct_snarf data. it is run from a shellcommands export as:
-# create-fetchmailrc $username $dir $snarf_machine1 $snarf_username1 $snarf__password1 $snarf_machine2 $snarf_username2 $snarf__password2 ...
-
-use strict;
-use POSIX qw( setuid setgid );
-
-my $header = <<END;
-# Configuration created by create-fetchmailrc
-set postmaster "postmaster"
-set bouncemail
-set no spambounce
-set properties ""
-set daemon 240
-END
-
-my $username = shift @ARGV or die "no username specified\n";
-my $homedir = shift @ARGV or die "no homedir specified\n";
-my $filename = "$homedir/.fetchmailrc";
-
-my $gid = scalar(getgrnam($username)) or die "can't find $username's gid\n";
-my $uid = scalar(getpwnam($username)) or die "can't find $username's uid\n";
-
-exit unless $ARGV[0];
-
-open(FETCHMAILRC, ">$filename") or die "can't open $filename: $!\n";
-chown $uid, $gid, $filename or die "can't chown $uid.$gid $filename: $!\n";
-chmod 0600, $filename or die "can't chmod 600 $filename: $!\n";
-print FETCHMAILRC $header;
-
-while ($ARGV[0]) {
- my( $s_machine, $s_username, $s_password ) = splice( @ARGV, 0, 3 );
- print FETCHMAILRC <<END;
-poll $s_machine
- user '$s_username' there with password '$s_password' is '$username' here
-END
-}
-
-close FETCHMAILRC;
-
-setgid($gid) or die "can't setgid $gid\n";
-setuid($uid) or die "can't setuid $uid\n";
-$ENV{HOME} = $homedir;
-
-system(qq(fetchmail -a -K --antispam "550,451" -d 180 -f $filename));
-
diff --git a/bin/create-history-tables b/bin/create-history-tables
deleted file mode 100755
index 39248bf..0000000
--- a/bin/create-history-tables
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use DBI;
-use DBIx::DBSchema 0.21;
-use DBIx::DBSchema::Table;
-use DBIx::DBSchema::Column;
-use DBIx::DBSchema::ColGroup::Unique;
-use DBIx::DBSchema::ColGroup::Index;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(dbdef);
-
-my $user = shift or die &usage;
-my $dbh = adminsuidsetup $user;
-
-my $schema = dbdef();
-
-#false laziness w/fs-setup
-my @tables = scalar(@ARGV)
- ? @ARGV
- : grep { ! /^(h|pg)_/ } $schema->tables;
-foreach my $table ( @tables ) {
- next if grep { /^h_$table/ } $schema->tables;
- warn "creating history table for $table\n";
- my $tableobj = $schema->table($table)
- or die "unknown table $table (did you run dbdef-create?)\n";
- my $h_tableobj = DBIx::DBSchema::Table->new( {
- name => "h_$table",
- primary_key => 'historynum',
- unique => DBIx::DBSchema::ColGroup::Unique->new( [] ),
- 'index' => DBIx::DBSchema::ColGroup::Index->new( [
- @{$tableobj->unique->lol_ref},
- @{$tableobj->index->lol_ref}
- ] ),
- columns => [
- DBIx::DBSchema::Column->new( {
- 'name' => 'historynum',
- 'type' => 'serial',
- 'null' => 'NOT NULL',
- 'length' => '',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_date',
- 'type' => 'int',
- 'null' => 'NULL',
- 'length' => '',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_user',
- 'type' => 'varchar',
- 'null' => 'NOT NULL',
- 'length' => '80',
- 'default' => '',
- 'local' => '',
- } ),
- DBIx::DBSchema::Column->new( {
- 'name' => 'history_action',
- 'type' => 'varchar',
- 'null' => 'NOT NULL',
- 'length' => '80',
- 'default' => '',
- 'local' => '',
- } ),
- map {
- my $column = $tableobj->column($_);
- $column->type('int')
- if $column->type eq 'serial';
- $column->default('')
- if $column->default =~ /^nextval\(/i;
- ( my $local = $column->local ) =~ s/AUTO_INCREMENT//i;
- $column->local($local);
- $column;
- } $tableobj->columns
- ],
- } );
- foreach my $statement ( $h_tableobj->sql_create_table($dbh) ) {
- $dbh->do( $statement )
- or die "CREATE error: ". $dbh->errstr. "\ndoing statement: $statement";
- }
-
-}
-
-$dbh->commit or die $dbh->errstr;
-$dbh->disconnect or die $dbh->errstr;
-
-sub usage {
- die "Usage:\n create-history-tables user [ table table ... ] \n";
-}
-
diff --git a/bin/dbdef-create b/bin/dbdef-create
deleted file mode 100755
index fea02c8..0000000
--- a/bin/dbdef-create
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use DBI;
-use DBIx::DBSchema 0.26;
-use FS::UID qw(adminsuidsetup datasrc driver_name);
-
-my $user = shift or die &usage;
-
-my($dbh)=adminsuidsetup $user;
-
-#needs to match FS::Record
-my($dbdef_file) = "/usr/local/etc/freeside/dbdef.". datasrc;
-
-my $dbdef = new_native DBIx::DBSchema $dbh;
-
-#print $dbdef->pretty_print;
-
-#important
-$dbdef->save($dbdef_file);
-
-sub usage {
- die "Usage:\n dbdef-create user\n";
-}
diff --git a/bin/fix-sequences b/bin/fix-sequences
deleted file mode 100755
index dc4abd7..0000000
--- a/bin/fix-sequences
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/usr/bin/perl -Tw
-
-# run dbdef-create first!
-
-use strict;
-use DBI;
-use DBIx::DBSchema 0.26;
-use DBIx::DBSchema::Table;
-use DBIx::DBSchema::Column;
-use DBIx::DBSchema::ColGroup::Unique;
-use DBIx::DBSchema::ColGroup::Index;
-use FS::UID qw(adminsuidsetup driver_name);
-use FS::Record qw(dbdef);
-
-my $user = shift or die &usage;
-my $dbh = adminsuidsetup $user;
-
-my $schema = dbdef();
-
-#false laziness w/fs-setup
-my @tables = scalar(@ARGV)
- ? @ARGV
- : grep { ! /^h_/ } $schema->tables;
-foreach my $table ( @tables ) {
- my $tableobj = $schema->table($table)
- or die "unknown table $table (did you run dbdef-create?)\n";
-
- my $primary_key = $tableobj->primary_key;
- next unless $primary_key;
-
- my $col = $tableobj->column($primary_key);
-
-
- next unless uc($col->type) eq 'SERIAL'
- || ( driver_name eq 'Pg'
- && defined($col->default)
- && $col->default =~ /^nextval\(/i
- )
- || ( driver_name eq 'mysql'
- && defined($col->local)
- && $col->local =~ /AUTO_INCREMENT/i
- );
-
- my $seq = "${table}_${primary_key}_seq";
- if ( driver_name eq 'Pg'
- && defined($col->default)
- && $col->default =~ /^nextval\('"(public\.)?(\w+_seq)"'::text\)$/
- ) {
- $seq = $2;
- }
-
- warn "fixing sequence for $table\n";
-
-
- my $sql = "SELECT setval( '$seq',
- ( SELECT max($primary_key) FROM $table ) );";
-
- #warn $col->default. " $seq\n$sql\n";
- $dbh->do( $sql ) or die $dbh->errstr;
-
-}
-
-$dbh->commit or die $dbh->errstr;
-$dbh->disconnect or die $dbh->errstr;
-
-sub usage {
- die "Usage:\n fix-sequences user [ table table ... ] \n";
-}
-
diff --git a/bin/freeside-init b/bin/freeside-init
deleted file mode 100755
index fe12931..0000000
--- a/bin/freeside-init
+++ /dev/null
@@ -1,60 +0,0 @@
-#! /bin/sh
-#
-# start the freeside job queue daemon
-
-#PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=/usr/local/bin/freeside-queued
-NAME=freeside-queued
-DESC="freeside job queue daemon"
-USER="ivan"
-
-test -f $DAEMON || exit 0
-
-set -e
-
-case "$1" in
- start)
- echo -n "Starting $DESC: "
-# start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid -b -m\
-# --exec $DAEMON
- $DAEMON $USER &
- echo "$NAME."
- ;;
- stop)
- echo -n "Stopping $DESC: "
- start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
- --exec $DAEMON
- echo "$NAME."
- rm /var/run/$NAME.pid
- ;;
- #reload)
- #
- # If the daemon can reload its config files on the fly
- # for example by sending it SIGHUP, do it here.
- #
- # If the daemon responds to changes in its config file
- # directly anyway, make this a do-nothing entry.
- #
- # echo "Reloading $DESC configuration files."
- # start-stop-daemon --stop --signal 1 --quiet --pidfile \
- # /var/run/$NAME.pid --exec $DAEMON
- #;;
- restart|force-reload)
- #
- # If the "reload" option is implemented, move the "force-reload"
- # option to the "reload" entry above. If not, "force-reload" is
- # just the same as "restart".
- #
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- N=/etc/init.d/$NAME
- # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
- echo "Usage: $N {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/bin/freeside-session-kill b/bin/freeside-session-kill
deleted file mode 100755
index d5fd703..0000000
--- a/bin/freeside-session-kill
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use vars qw($conf);
-use Fcntl qw(:flock);
-use FS::UID qw(adminsuidsetup datasrc dbh);
-use FS::Record qw(dbdef qsearch fields);
-use FS::session;
-use FS::svc_acct;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $sessionlock = "/usr/local/etc/freeside/session-kill.lock.". datasrc;
-
-open(LOCK,"+>>$sessionlock") or die "Can't open $sessionlock: $!";
-select(LOCK); $|=1; select(STDOUT);
-unless ( flock(LOCK,LOCK_EX|LOCK_NB) ) {
- seek(LOCK,0,0);
- my($pid)=<LOCK>;
- chop($pid);
- #no reason to start loct of blocking processes
- die "Is another session kill process running under pid $pid?\n";
-}
-seek(LOCK,0,0);
-print LOCK $$,"\n";
-
-$FS::UID::AutoCommit = 0;
-
-my $now = time;
-
-#uhhhhh
-
-use DBIx::DBSchema;
-use DBIx::DBSchema::Table; #down this path lies madness
-use DBIx::DBSchema::Column;
-
-my $dbdef = dbdef or die;
-#warn $dbdef;
-#warn $dbdef->{'tables'};
-#warn keys %{$dbdef->{'tables'}};
-my $session_table = $dbdef->table('session') or die;
-my $svc_acct_table = $dbdef->table('svc_acct') or die;
-
-my $session_svc_acct = new DBIx::DBSchema::Table ( 'session,svc_acct', '', '', '',
- map( DBIx::DBSchema::Column->new( "session.$_",
- $session_table->column($_)->type,
- $session_table->column($_)->null,
- $session_table->column($_)->length,
- ), $session_table->columns() ),
- map( DBIx::DBSchema::Column->new( "svc_acct.$_",
- $svc_acct_table->column($_)->type,
- $svc_acct_table->column($_)->null,
- $svc_acct_table->column($_)->length,
- ), $svc_acct_table->columns ),
-# map("svc_acct.$_", $svc_acct_table->columns),
-);
-
-$dbdef->addtable($session_svc_acct); #madness, i tell you
-
-$FS::Record::DEBUG = 1;
-my @session = qsearch('session,svc_acct', {}, '', ' WHERE '. join(' AND ',
- 'svc_acct.svcnum = session.svcnum',
- '( session.logout IS NULL OR session.logout = 0 )',
- "( $now - session.login ) >= svc_acct.seconds"
-). " FOR UPDATE" );
-
-my $dbh = dbh;
-
-foreach my $join ( @session ) {
-
- my $session = new FS::session ( {
- map { $_ => $join->{'Hash'}{"session.$_"} } fields('session')
- } ); #see no evil
-
- my $svc_acct = new FS::svc_acct ( {
- map { $_ => $join->{'Hash'}{"svc_acct.$_"} } fields('svc_acct')
- } );
-
- #false laziness w/ fs_session_server
- my $nsession = new FS::session ( { $session->hash } );
- my $error = $nsession->replace($session);
- if ( $error ) {
- $dbh->rollback;
- die $error;
- }
- my $time = $nsession->logout - $nsession->login;
- my $new_svc_acct = new FS::svc_acct ( { $svc_acct->hash } );
- my $seconds = $new_svc_acct->seconds;
- $seconds -= $time;
- $seconds = 0 if $seconds < 0;
- $new_svc_acct->seconds( $seconds );
- $error = $new_svc_acct->replace( $svc_acct );
- warn "can't debit time from ". $svc_acct->username. ": $error\n"; #don't want to rollback, though
- #ssenizal eslaf
-
-}
-
-$dbh->commit or die $dbh->errstr;
-
-sub usage {
- die "Usage:\n\n freeside-session-kill user\n";
-}
diff --git a/bin/freeside.import b/bin/freeside.import
deleted file mode 100644
index fdfcc08..0000000
--- a/bin/freeside.import
+++ /dev/null
@@ -1,146 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use DBI;
-
-my $s_datasrc = 'DBI:mysql:host=ns1.enetonline.net;port=3307;user=ivan;dbname=freeside';
-my $s_dbuser = 'ivan';
-my $s_dbpass = '';
-
-my $d_datasrc = 'DBI:Pg:dbname=freeside';
-my $d_dbuser = 'freeside';
-my $d_dbpass = '';
-
-#my @tables = qw(
-#addr_block
-#agent
-#agent_type
-#cust_bill
-#cust_bill_event
-#cust_bill_pay
-#cust_bill_pkg
-#cust_bill_pkg_detail
-#cust_credit
-#cust_credit_bill
-#cust_credit_refund
-#cust_main
-#cust_main_county
-#cust_main_invoice
-#cust_pay
-#cust_pay_batch
-#cust_pkg
-#cust_refund
-#cust_svc
-#cust_tax_exempt
-#domain_record
-#export_svc
-#h_addr_block
-#h_agent
-#h_agent_type
-#h_cust_bill
-#h_cust_bill_event
-#h_cust_bill_pay
-#h_cust_bill_pkg
-#h_cust_bill_pkg_detail
-#h_cust_credit
-#h_cust_credit_bill
-#h_cust_credit_refund
-#h_cust_main
-#h_cust_main_county
-#h_cust_main_invoice
-#h_cust_pay
-#h_cust_pay_batch
-#h_cust_pkg
-#h_cust_refund
-#h_cust_svc
-#h_cust_tax_exempt
-#h_domain_record
-#h_export_svc
-#h_msgcat
-#h_nas
-#h_part_bill_event
-#h_part_export
-#h_part_export_option
-#h_part_pkg
-#h_part_pop_local
-#h_part_referral
-#h_part_svc
-#h_part_svc_column
-#h_part_svc_router
-#h_pkg_svc
-#h_port
-#h_prepay_credit
-#h_queue
-#h_queue_arg
-#h_queue_depend
-#h_radius_usergroup
-#h_router
-#h_router_field
-#h_sb_field
-#h_session
-#h_svc_acct
-#h_svc_acct_pop
-#h_svc_broadband
-#h_svc_domain
-#h_svc_forward
-#h_svc_www
-#h_type_pkgs
-#msgcat
-#nas
-#part_bill_event
-#part_export
-#part_export_option
-#part_pkg
-
-my @tables = qw(
-part_pop_local
-part_referral
-part_router_field
-part_sb_field
-part_svc
-part_svc_column
-part_svc_router
-pkg_svc
-port
-prepay_credit
-queue
-queue_arg
-queue_depend
-radius_usergroup
-router
-router_field
-sb_field
-session
-svc_acct
-svc_acct_pop
-svc_broadband
-svc_domain
-svc_forward
-svc_www
-type_pkgs
-);
-
-my $s_dbh = DBI->connect($s_datasrc, $s_dbuser, $s_dbpass) or die $DBI::errstr;
-my $d_dbh = DBI->connect($d_datasrc, $d_dbuser, $d_dbpass) or die $DBI::errstr;
-
-foreach my $table ( @tables ) {
- $d_dbh->do("delete from $table");
-
- my $s_sth = $s_dbh->prepare("select * from $table");
- $s_sth->execute or die $s_sth->errstr;
-
- my $row;
- while ( $row = $s_sth->fetchrow_arrayref ) {
- my $d_sth = $d_dbh->prepare(
- "insert into $table ( ".
- join(', ', @{$s_sth->{NAME}} ).
- ' ) VALUES ( '.
- join(', ', map { '?' } @{$s_sth->{NAME}} ).
- ' )'
- ) or die $d_dbh->errstr;
-
- $d_sth->execute(@$row) or die $d_sth->errstr;
-
- }
-}
-
diff --git a/bin/fs-migrate-part_svc b/bin/fs-migrate-part_svc
deleted file mode 100755
index b0f3ac5..0000000
--- a/bin/fs-migrate-part_svc
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch fields);
-use FS::part_svc;
-
-my $user = shift or die &usage;
-my $dbh = adminsuidsetup $user;
-
-my $oldAutoCommit = $FS::UID::AutoCommit;
-local $FS::UID::AutoCommit = 0;
-
-foreach my $part_svc ( qsearch('part_svc', {} ) ) {
- foreach my $field (
- grep { defined($part_svc->getfield($part_svc->svcdb.'__'.$_.'_flag') ) }
- fields($part_svc->svcdb)
- ) {
- my $flag = $part_svc->getfield($part_svc->svcdb.'__'.$field.'_flag');
- if ( uc($flag) =~ /^([DF])$/ ) {
- my $part_svc_column = new FS::part_svc_column {
- 'svcpart' => $part_svc->svcpart,
- 'columnname' => $field,
- 'columnflag' => $1,
- 'columnvalue' => $part_svc->getfield($part_svc->svcdb.'__'.$field),
- };
- my $error = $part_svc_column->insert;
- if ( $error ) {
- $dbh->rollback if $oldAutoCommit;
- die $error;
- }
- }
- }
-}
-
-$dbh->commit or die $dbh->errstr;
-
-sub usage {
- die "Usage:\n fs-migrate-part_svc user\n";
-}
-
diff --git a/bin/fs-migrate-payref b/bin/fs-migrate-payref
deleted file mode 100755
index 1584197..0000000
--- a/bin/fs-migrate-payref
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-use FS::cust_pay;
-use FS::cust_refund;
-
-my $user = shift or die &usage;
-my $dbh = adminsuidsetup $user;
-
-# apply payments to invoices
-
-foreach my $cust_pay ( qsearch('cust_pay', {} ) ) {
- my $error = $cust_pay->upgrade_replace;
- warn $error if $error;
-}
-
-# apply refunds to credits
-
-foreach my $cust_refund ( qsearch('cust_refund') ) {
- my $error = $cust_refund->upgrade_replace;
- warn $error if $error;
-}
-
-# ? apply credits to invoices
-
-sub usage {
- die "Usage:\n fs-migrate-payref user\n";
-}
-
diff --git a/bin/fs-migrate-svc_acct_sm b/bin/fs-migrate-svc_acct_sm
deleted file mode 100755
index e34b235..0000000
--- a/bin/fs-migrate-svc_acct_sm
+++ /dev/null
@@ -1,229 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# $Id: fs-migrate-svc_acct_sm,v 1.4 2002-06-21 09:13:16 ivan Exp $
-#
-# jeff@cmh.net 01-Jul-20
-
-#to delay loading dbdef until we're ready
-#BEGIN { $FS::Record::setup_hack = 1; }
-
-use strict;
-use Term::Query qw(query);
-#use DBI;
-#use DBIx::DBSchema;
-#use DBIx::DBSchema::Table;
-#use DBIx::DBSchema::Column;
-#use DBIx::DBSchema::ColGroup::Unique;
-#use DBIx::DBSchema::ColGroup::Index;
-use FS::Conf;
-use FS::UID qw(adminsuidsetup datasrc checkeuid getsecrets);
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_domain;
-use FS::svc_forward;
-use vars qw( $conf $old_default_domain %part_domain_svc %part_acct_svc %part_forward_svc $svc_acct $svc_acct_sm $error);
-
-die "Not running uid freeside!" unless checkeuid();
-
-my $user = shift or die &usage;
-getsecrets($user);
-
-$conf = new FS::Conf;
-$old_default_domain = $conf->config('domain');
-
-#needs to match FS::Record
-#my($dbdef_file) = "/usr/local/etc/freeside/dbdef.". datasrc;
-
-###
-# This section would be the appropriate place to manipulate
-# the schema & tables.
-###
-
-## we need to add the domsvc to svc_acct
-## we must add a svc_forward record....
-## I am thinking that the fields svcnum (int), destsvc (int), and
-## dest (varchar (80)) are appropriate, with destsvc/dest an either/or
-## much in the spirit of cust_main_invoice
-
-###
-# massage the data
-###
-
-my($dbh)=adminsuidsetup $user;
-
-$|=1;
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-%part_domain_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_domain'});
-%part_acct_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-%part_forward_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_forward'});
-
-die "No services with svcdb svc_domain!\n" unless %part_domain_svc;
-die "No services with svcdb svc_acct!\n" unless %part_acct_svc;
-die "No services with svcdb svc_forward!\n" unless %part_forward_svc;
-
-my($svc_domain) = qsearchs('svc_domain', { 'domain' => $old_default_domain });
-if (! $svc_domain || $svc_domain->domain != $old_default_domain) {
- print <<EOF;
-
-Your database currently does not contain a svc_domain record for the
-domain $old_default_domain. Would you like me to add one for you?
-EOF
-
- my($response)=scalar(<STDIN>);
- chop $response;
- if ($response =~ /^[yY]/) {
- print "\n\n", &menu_domain_svc, "\n", <<END;
-I need to create new domain accounts. Which service shall I use for that?
-END
- my($domain_svcpart)=&getdomainpart;
-
- $svc_domain = new FS::svc_domain {
- 'domain' => $old_default_domain,
- 'svcpart' => $domain_svcpart,
- 'action' => 'M',
- };
-# $error=$svc_domain->insert && die "Error adding domain $old_default_domain: $error";
- $error=$svc_domain->insert;
- die "Error adding domain $old_default_domain: $error" if $error;
- }else{
- print <<EOF;
-
- This program cannot function properly until a svc_domain record matching
-your conf_dir/domain file exists.
-EOF
-
- exit 1;
- }
-}
-
-print "\n\n", &menu_acct_svc, "\n", <<END;
-I may need to create some new pop accounts and set up forwarding to them
-for some users. Which service shall I use for that?
-END
-my($pop_svcpart)=&getacctpart;
-
-print "\n\n", &menu_forward_svc, "\n", <<END;
-I may need to create some new forwarding for some users. Which service
-shall I use for that?
-END
-my($forward_svcpart)=&getforwardpart;
-
-sub menu_domain_svc {
- ( join "\n", map "$_: ".$part_domain_svc{$_}->svc, sort keys %part_domain_svc ). "\n";
-}
-sub menu_acct_svc {
- ( join "\n", map "$_: ".$part_acct_svc{$_}->svc, sort keys %part_acct_svc ). "\n";
-}
-sub menu_forward_svc {
- ( join "\n", map "$_: ".$part_forward_svc{$_}->svc, sort keys %part_forward_svc ). "\n";
-}
-sub getdomainpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_domain_svc ];
- $^W=1;
- $return;
-}
-sub getacctpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_acct_svc ];
- $^W=1;
- $return;
-}
-sub getforwardpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_forward_svc ];
- $^W=1;
- $return;
-}
-
-
-#migrate data
-
-my(@svc_accts) = qsearch('svc_acct', {});
-foreach $svc_acct (@svc_accts) {
- my(@svc_acct_sms) = qsearch('svc_acct_sm', {
- domuid => $svc_acct->getfield('uid'),
- }
- );
-
- # Ok.. we've got the svc_acct record, and an array of svc_acct_sm's
- # What do we do from here?
-
- # The intuitive:
- # plop the svc_acct into the 'default domain'
- # and then represent the svc_acct_sm's with svc_forwards
- # they can be gussied up manually, later
- #
- # Perhaps better:
- # when no svc_acct_sm exists, place svc_acct in 'default domain'
- # when one svc_acct_sm exists, place svc_acct in corresponding
- # domain & possibly create a svc_forward in 'default domain'
- # when multiple svc_acct_sm's exists (in different domains) we'd
- # better use the 'intuitive' approach.
- #
- # Specific way:
- # as 'perhaps better,' but we may be able to guess which domain
- # is correct by comparing the svcnum of domains to the username
- # of the svc_acct
- #
-
- # The intuitive way:
-
- my $def_acct = new FS::svc_acct ( { $svc_acct->hash } );
- $def_acct->setfield('domsvc' => $svc_domain->getfield('svcnum'));
- $error = $def_acct->replace($svc_acct);
- die "Error replacing svc_acct for " . $def_acct->username . " : $error" if $error;
-
- foreach $svc_acct_sm (@svc_acct_sms) {
-
- my($domrec)=qsearchs('svc_domain', {
- svcnum => $svc_acct_sm->getfield('domsvc'),
- }) || die "svc_acct_sm references invalid domsvc $svc_acct_sm->getfield('domsvc')\n";
-
- if ($svc_acct_sm->getfield('domuser') =~ /^\*$/) {
-
- my($newdom) = new FS::svc_domain ( { $domrec->hash } );
- $newdom->setfield('catchall', $svc_acct->svcnum);
- $newdom->setfield('action', "M");
- $error = $newdom->replace($domrec);
- die "Error replacing svc_domain for (anything)@" . $domrec->domain . " : $error" if $error;
-
- } else {
-
- my($newacct) = new FS::svc_acct {
- 'svcpart' => $pop_svcpart,
- 'username' => $svc_acct_sm->getfield('domuser'),
- 'domsvc' => $svc_acct_sm->getfield('domsvc'),
- 'dir' => '/dev/null',
- };
- $error = $newacct->insert;
- die "Error adding svc_acct for " . $newacct->username . " : $error" if $error;
-
- my($newforward) = new FS::svc_forward {
- 'svcpart' => $forward_svcpart,
- 'srcsvc' => $newacct->getfield('svcnum'),
- 'dstsvc' => $def_acct->getfield('svcnum'),
- };
- $error = $newforward->insert;
- die "Error adding svc_forward for " . $newacct->username ." : $error" if $error;
- }
-
- $error = $svc_acct_sm->delete;
- die "Error deleting svc_acct_sm for " . $svc_acct_sm->domuser ." : $error" if $error;
-
- };
-
-};
-
-
-$dbh->commit or die $dbh->errstr;
-$dbh->disconnect or die $dbh->errstr;
-
-print "svc_acct_sm records sucessfully migrated\n";
-
-sub usage {
- die "Usage:\n fs-migrate-svc_acct_sm user\n";
-}
-
diff --git a/bin/fs-radius-add-check b/bin/fs-radius-add-check
deleted file mode 100755
index 4e4769e..0000000
--- a/bin/fs-radius-add-check
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/usr/bin/perl -Tw
-
-# quick'n'dirty hack of fs-setup to add radius attributes
-
-use strict;
-use DBI;
-use FS::UID qw(adminsuidsetup checkeuid getsecrets);
-use FS::raddb;
-
-die "Not running uid freeside!" unless checkeuid();
-
-my %attrib2db =
- map { lc($FS::raddb::attrib{$_}) => $_ } keys %FS::raddb::attrib;
-
-my $user = shift or die &usage;
-getsecrets($user);
-
-my $dbh = adminsuidsetup $user;
-
-###
-
-print "\n\n", <<END, ":";
-Enter the additional RADIUS check attributes you need to track for
-each user, separated by whitespace.
-END
-my @attributes = map { $attrib2db{lc($_)} or die "unknown attribute $_"; }
- split(" ",&getvalue);
-
-sub getvalue {
- my($x)=scalar(<STDIN>);
- chop $x;
- $x;
-}
-
-###
-
-my($char_d) = 80; #default maxlength for text fields
-
-###
-
-foreach my $attribute ( @attributes ) {
-
- my $statement =
- "ALTER TABLE svc_acct ADD COLUMN rc_$attribute varchar($char_d) NULL";
- my $sth = $dbh->prepare( $statement )
- or warn "Error preparing $statement: ". $dbh->errstr;
- my $rc = $sth->execute
- or warn "Error executing $statement: ". $sth->errstr;
-
- $statement =
- "ALTER TABLE h_svc_acct ADD COLUMN rc_$attribute varchar($char_d) NULL";
- $sth = $dbh->prepare( $statement )
- or warn "Error preparing $statement: ". $dbh->errstr;
- $rc = $sth->execute
- or warn "Error executing $statement: ". $sth->errstr;
-
-}
-
-$dbh->commit or die $dbh->errstr;
-
-$dbh->disconnect or die $dbh->errstr;
-
-print "\n\n", "Now you must run dbdef-create.\n\n";
-
-sub usage {
- die "Usage:\n fs-radius-add-check user\n";
-}
-
diff --git a/bin/fs-radius-add-reply b/bin/fs-radius-add-reply
deleted file mode 100755
index 3de0137..0000000
--- a/bin/fs-radius-add-reply
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/usr/bin/perl -Tw
-
-# quick'n'dirty hack of fs-setup to add radius attributes
-
-use strict;
-use DBI;
-use FS::UID qw(adminsuidsetup checkeuid getsecrets);
-use FS::raddb;
-
-die "Not running uid freeside!" unless checkeuid();
-
-my %attrib2db =
- map { lc($FS::raddb::attrib{$_}) => $_ } keys %FS::raddb::attrib;
-
-my $user = shift or die &usage;
-getsecrets($user);
-
-my $dbh = adminsuidsetup $user;
-
-###
-
-print "\n\n", <<END, ":";
-Enter the additional RADIUS reply attributes you need to track for
-each user, separated by whitespace.
-END
-my @attributes = map { $attrib2db{lc($_)} or die "unknown attribute $_"; }
- split(" ",&getvalue);
-
-sub getvalue {
- my($x)=scalar(<STDIN>);
- chop $x;
- $x;
-}
-
-###
-
-my($char_d) = 80; #default maxlength for text fields
-
-###
-
-foreach my $attribute ( @attributes ) {
-
- my $statement =
- "ALTER TABLE svc_acct ADD COLUMN radius_$attribute varchar($char_d) NULL";
- my $sth = $dbh->prepare( $statement )
- or warn "Error preparing $statement: ". $dbh->errstr;
- my $rc = $sth->execute
- or warn "Error executing $statement: ". $sth->errstr;
-
- $statement =
- "ALTER TABLE h_svc_acct ADD COLUMN radius_$attribute varchar($char_d) NULL";
- $sth = $dbh->prepare( $statement )
- or warn "Error preparing $statement: ". $dbh->errstr;
- $rc = $sth->execute
- or warn "Error executing $statement: ". $sth->errstr;
-
-}
-
-$dbh->commit or die $dbh->errstr;
-
-$dbh->disconnect or die $dbh->errstr;
-
-print "\n\n", "Now you must run dbdef-create.\n\n";
-
-sub usage {
- die "Usage:\n fs-radius-add-reply user\n";
-}
-
-
diff --git a/bin/generate-prepay b/bin/generate-prepay
deleted file mode 100755
index cb4ba7f..0000000
--- a/bin/generate-prepay
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::prepay_credit;
-
-require 5.004; #srand(time|$$);
-
-my $user = shift or die &usage;
-&adminsuidsetup( $user );
-
-my $amount = shift or die &usage;
-
-my $seconds = shift or die &usage;
-
-my $num_digits = shift or die &usage;
-
-my $num_entries = shift or die &usage;
-
-for ( 1 .. $num_entries ) {
- my $identifier = join( '', map int(rand(10)), ( 1 .. $num_digits ) );
- my $prepay_credit = new FS::prepay_credit {
- 'identifier' => $identifier,
- 'amount' => $amount,
- 'seconds' => $seconds,
- };
- my $error = $prepay_credit->insert;
- die $error if $error;
- print "$identifier\n";
-}
-
-sub usage {
- die "Usage:\n\n generate-prepay user amount seconds num_digits num_entries";
-}
-
diff --git a/bin/generate-raddb b/bin/generate-raddb
deleted file mode 100755
index af21c05..0000000
--- a/bin/generate-raddb
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/perl
-
-# usage: generate-raddb radius-server/raddb/dictionary* >raddb.pm
-# i.e.: generate-raddb ~/freeradius/freeradius-1.0.5/share/dictionary* ~/wirelessoceans/dictionary.ip3networks ~/wtxs/dictionary.mot.canopy >raddb.pm.new
-print <<END;
-package FS::raddb;
-use vars qw(%attrib);
-
-%attrib = (
-END
-
-while (<>) {
- next if /^(#|\s*$|\$INCLUDE\s+)/;
- next if /^(VALUE|VENDOR|BEGIN\-VENDOR|END\-VENDOR)\s+/;
- /^(ATTRIBUTE|ATTRIB_NMC)\s+([\w\-\/]+)\s+/ or die $_;
- $attrib = $2;
- $dbname = lc($2);
- $dbname =~ s/[\-\/]/_/g;
- $dbname = substr($dbname,0,24);
- while ( exists $hash{$dbname} ) {
- #warn $dbname;
- $dbname =~ s/(.)$//;
- my $w = $1;
- $w =~ tr/_a-z0-9/a-z0-9_/;
- $dbname = "$dbname$w";
- }
- $hash{$dbname} = $attrib;
- #print "$2\n";
-}
-
-foreach ( sort keys %hash ) {
-# print "$_\n" if length($_)>24;
-# print substr($_,0,24),"\n" if length($_)>24;
-# $max = length($_) if length($_)>$max;
-# have to fudge things since everything >24 is *not* unique
-
- #print " '". substr($_,0,24). "' => '$hash{$_}',\n";
- print " '$_' ". ( " " x (24-length($_) ) ). "=> '$hash{$_}',\n";
-}
-
-print <<END;
-
- #NETC.NET.AU (RADIATOR?)
- 'authentication_type' => 'Authentication-Type',
-
- #wtxs (dunno)
- #'radius_operator' => 'Radius-Operator',
-
-);
-
-1;
-END
-
diff --git a/bin/generate-table-module b/bin/generate-table-module
deleted file mode 100755
index b3204fa..0000000
--- a/bin/generate-table-module
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/usr/bin/perl
-
-use FS::Schema qw( dbdef_dist );
-
-my $table = shift;
-
-###
-# add a new FS/FS/table.pm
-###
-
-my %ut = ( #just guesses
- 'int' => 'number',
- 'number' => 'float',
- 'varchar' => 'text',
- 'text' => 'text',
- 'serial' => 'number',
-);
-
-my $dbdef_table = dbdef_dist->table($table)
- or die "define table in Schema.pm first";
-my $primary_key = $dbdef_table->primary_key;
-
-open(SRC,"<eg/table_template.pm") or die $!;
--e "FS/FS/$table.pm" and die "FS/FS/$table.pm already exists!";
-open(DEST,">FS/FS/$table.pm") or die $!;
-
-while (my $line = <SRC>) {
-
- $line =~ s/table_name/$table/g;
-
- if ( $line =~ /^=item\s+field\s+-\s+description\s*$/ ) {
-
- foreach my $column ( $dbdef_table->columns ) {
- print DEST "=item $column - ";
- print DEST "primary key"
- if $column eq $primary_key;
- print DEST "\n\n";
- }
- next;
-
- } elsif ( $line=~ /^(\s*)\$self->ut_numbern\('primary_key'\)\s*/ ) {
-
- print DEST "$1\$self->ut_numbern('$primary_key')\n"
- if $primary_key;
- next;
-
- } elsif (
- $line =~ /^(\s*)\|\|\s+\$self->ut_number\('validate_other_fields'\)\s*/
- ) {
-
- foreach my $column ( grep { $_ ne $primary_key } $dbdef_table->columns ) {
- my $ut = $ut{$dbdef_table->column($column)->type};
- $ut .= 'n' if $dbdef_table->column($column)->null;
- print DEST "$1|| \$self->ut_$ut('$column')\n";
- }
- next;
-
- }
-
- print DEST $line;
-}
-
-close SRC;
-close DEST;
-
-###
-# add FS/t/table.t
-###
-
-open(TEST,">FS/t/$table.t") or die $!;
-print TEST <<ENDTEST;
-BEGIN { \$| = 1; print "1..1\\n" }
-END {print "not ok 1\\n" unless \$loaded;}
-use FS::$table;
-\$loaded=1;
-print "ok 1\\n";
-ENDTEST
-close TEST;
-
-###
-# add them to MANIFEST
-###
-
-system('cvs edit FS/MANIFEST');
-
-open(MANIFEST,">>FS/MANIFEST") or die $!;
-print MANIFEST "FS/$table.pm\n",
- "t/$table.t\n";
-close MANIFEST;
-
diff --git a/bin/generate-tests b/bin/generate-tests
deleted file mode 100755
index 73fd29e..0000000
--- a/bin/generate-tests
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/perl
-@files = glob('FS/*.pm');
-foreach (@files) {
-# warn $_;
- chomp;
- s/^FS\///;
- $f=$_;
- $f=~s/pm$/t/;
- $m=$_;
- $m=~s/\.pm$//;
- open(TEST,">t/$f");
- print "t/$f\n";
- print TEST
- 'BEGIN { $| = 1; print "1..1\n" }'. "\n".
- 'END {print "not ok 1\n" unless $loaded;}'. "\n".
- "use FS::$m;\n".
- '$loaded=1;'. "\n".
- 'print "ok 1\n";'. "\n"
- ;
- close TEST;
-}
diff --git a/bin/ispman.ldap.import b/bin/ispman.ldap.import
deleted file mode 100755
index 7495f47..0000000
--- a/bin/ispman.ldap.import
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Net::LDAP::LDIF;
-
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearchs);
-use FS::svc_domain;
-use FS::svc_acct;
-
-my $user = shift or die;
-adminsuidsetup($user);
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-my $domain_svcpart = 1;
-my $account_svcpart = 2;
-my $mailbox_svcpart = 3;
-my $fedweeknet_svcpart = 4;
-
-#my $ldif =
-# Net::LDAP::LDIF->new( "ispman-06-23-04.ldif", "r", onerror => 'undef' );
-my $ldif =
- Net::LDAP::LDIF->new( "ispman-06-23-04.ldif", "r", onerror => 'warn' );
-
-#my %objectclass;
-
-my $acct = 0;
-my $imported = 0;
-
-my $entry;
-while ( $entry = $ldif->read_entry ) {
- #warn "$entry\n";
- my %attributes = map { $_ => [ $entry->get_value( $_ ) ] } $entry->attributes;
-
- my $objectclass = join('/', @{$attributes{'objectclass'}} );
-
- next unless $objectclass eq 'posixAccount/ispmanDomainUser/radiusprofile';
-
- foreach my $attr ( keys %attributes ) {
- print join( " => ", substr($attr.' 'x30,0,30), @{$attributes{ $attr }} ), "\n";
- #if ( $attr eq 'objectclass' ) {
- # $objectclass{ join('/', @{$attributes{$attr}} ) }++;
- #}
- }
- print "\n";
-
- $acct++;
-
- my $email = $attributes{'maillocaladdress'}->[0];
- $email =~ /^(\w+)\@([\w\.\-]+)$/ or die $email;
- die "$1 ne ". $attributes{'ispmanuserid'}->[0]. "\n"
- unless lc($1) eq $attributes{'ispmanuserid'}->[0];
- my $username = lc($1);
- my $domain = lc($2);
-
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- || new FS::svc_domain { 'svcpart' => $domain_svcpart,
- 'domain' => $domain,
- 'action' => 'N',
- };
-
- unless ( $svc_domain->svcnum ) {
- my $error = $svc_domain->insert;
- if ( $error ) {
- die "inserting domain: $error\n";
- }
- }
-
- ( my $password = $attributes{'userpassword'}->[0] ) =~ s/^\{crypt\}//;
-
- # pick svcpart
- my $svcpart = $account_svcpart;
- if ( $domain eq 'fedweeknet.com' ) {
- $svcpart = $fedweeknet_svcpart;
- } elsif ( $attributes{'dialupaccess'}->[0] =~ /(false|no)/i ) {
- $svcpart = $mailbox_svcpart;
- }
-
- my $dir = $attributes{'homedirectory'}->[0];
- $dir =~ s/\s+//g;
- $dir =~ s/\@/_/;
-
- my $svc_acct = new FS::svc_acct {
- 'svcpart' => $svcpart,
- 'username' => $username,
- '_password' => $password,
- 'finger' => $attributes{'cn'}->[0],
- 'domsvc' => $svc_domain->svcnum,
- 'shell' => $attributes{'loginshell'}->[0],
- 'uid' => $attributes{'uidnumber'}->[0],
- 'gid' => $attributes{'gidnumber'}->[0],
- 'dir' => $dir,
- 'quota' => $attributes{'mailquota'}->[0],
- };
- my $error = $svc_acct->insert;
- #my $error = $svc_acct->check;
-
- if ( $error ) {
- warn "$error\n";
- } else {
- $imported++;
- }
-
-}
-
-print "$imported of $acct imported\n";
-
-#print "\n\n";
-
-#foreach ( sort { $objectclass{$b} <=> $objectclass{$a} } keys %objectclass ) {
-# print "$objectclass{$_}: $_\n";
-#}
diff --git a/bin/mapsecrets2access_user b/bin/mapsecrets2access_user
deleted file mode 100755
index 3fcd506..0000000
--- a/bin/mapsecrets2access_user
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use File::Copy "cp";
-use FS::UID qw(adminsuidsetup);
-use FS::CurrentUser;
-use FS::AccessRight;
-use FS::Record qw(qsearchs qsearch);
-use FS::access_group;
-use FS::access_user;
-use FS::access_usergroup;
-use FS::access_right;
-use FS::access_groupagent;
-use FS::agent;
-
-$FS::CurrentUser::upgrade_hack = 1;
-adminsuidsetup shift;
-
-my $supergroup = qsearchs('access_group', { 'groupname' => 'Superuser' } );
-unless ( $supergroup ) {
-
- $supergroup = new FS::access_group { 'groupname' => 'Superuser' };
- my $error = $supergroup->insert;
- die $error if $error;
-
- foreach my $rightname ( FS::AccessRight->rights ) {
- my $access_right = new FS::access_right {
- 'righttype' => 'FS::access_group',
- 'rightobjnum' => $supergroup->groupnum,
- 'rightname' => $rightname,
- };
- my $ar_error = $access_right->insert;
- die $ar_error if $ar_error;
- }
-
- foreach my $agent ( qsearch('agent', {} ) ) {
- my $access_groupagent = new FS::access_groupagent {
- 'groupnum' => $supergroup->groupnum,
- 'agentnum' => $agent->agentnum,
- };
- my $aga_error = $access_groupagent->insert;
- die $aga_error if $aga_error;
- }
-
-}
-my $supergroupnum = $supergroup->groupnum;
-
-my $mapsecrets = '/usr/local/etc/freeside/mapsecrets';
-open(MAPSECRETS, "<$mapsecrets") or die $!;
-while (<MAPSECRETS>) {
- /([\w]+)\s+secrets\s*$/ or die "unparsable line in mapsecrets: $_";
- my $username = $1;
-
- next if qsearchs('access_user', { 'username' => $username } );
-
- my $access_user = new FS::access_user {
- 'username' => $username,
- '_password' => 'notyet',
- 'first' => 'Legacy',
- 'last' => 'User',
- };
- my $au_error = $access_user->insert;
- die $au_error if $au_error;
-
- my $access_usergroup = new FS::access_usergroup {
- 'usernum' => $access_user->usernum,
- 'groupnum' => $supergroupnum,
- };
- my $aug_error = $access_usergroup->insert;
- die $aug_error if $aug_error;
-
-}
-close MAPSECRETS;
-
-# okay to clobber mapsecrets now i guess
-cp $mapsecrets, "$mapsecrets.bak$$";
-open(MAPSECRETS, ">$mapsecrets") or die $!;
-print MAPSECRETS '* secrets'. "\n";
-close MAPSECRETS or die $!;
diff --git a/bin/masonize b/bin/masonize
deleted file mode 100755
index 509ef3e..0000000
--- a/bin/masonize
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/perl
-
-foreach $file ( split(/\n/, `find . -depth -print`) ) {
- next unless $file =~ /(cgi|html)$/;
- open(F,$file) or die "can't open $file for reading: $!";
- @file = <F>;
- #print "$file ". scalar(@file). "\n";
- close $file;
- $newline = ''; #avoid prepending extraneous newlines
- $all = join('',@file);
-
- $w = '';
-
- $mode = 'html';
- while ( length($all) ) {
-
- if ( $mode eq 'html' ) {
-
- if ( $all =~ /^(.+?)(<%=?.*)$/s && $1 !~ /<%/s ) {
- $w .= $1;
- $all = $2;
- next;
- } elsif ( $all =~ /^<%=(.*)$/s ) {
- $w .= '<%';
- $all = $1;
- $mode = 'perlv';
- #die;
- next;
- } elsif ( $all =~ /^<%(.*)$/s ) {
- $w .= $newline; $newline = "\n";
- $all = $1;
- $mode = 'perlc';
-
- #avoid newline prepend fix from borking indented first <%
- $w =~ s/\n\s+\z/\n/;
- $w .= "\n" if $w =~ /.+\z/;
-
- next;
- } elsif ( $all !~ /<%/s ) {
- $w .= $all;
- last;
- } else {
- warn length($all); die;
- }
- die;
-
- } elsif ( $mode eq 'perlv' ) {
-
- if ( $all =~ /^(.*?%>)(.*)$/s ) {
- $w .= $1;
- $all=$2;
- $mode = 'html';
- next;
- }
- die "unterminated <%= ??? (in $file):";
-
- } elsif ( $mode eq 'perlc' ) {
-
- if ( $all =~ /^([^\n]*?)%>(.*)$/s ) {
- $w .= "%$1\n";
- $all=$2;
- $mode='html';
- next;
- }
- if ( $all =~ /^([^\n]*)\n(.*)$/s ) {
- $w .= "%$1\n";
- $all=$2;
- next;
- }
-
- } else { die };
-
- }
-
- system("chmod u+w $file");
- select W; $| = 1; select STDOUT;
- open(W,">$file") or die "can't open $file for writing: $!";
- print W $w;
- close W;
-}
diff --git a/bin/passwd.import b/bin/passwd.import
deleted file mode 100755
index 8ab9e2a..0000000
--- a/bin/passwd.import
+++ /dev/null
@@ -1,121 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw(%part_svc);
-use Date::Parse;
-use Term::Query qw(query);
-use Net::SCP qw(iscp);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-my($spooldir)="/usr/local/etc/freeside/export.". datasrc;
-
-#$FS::svc_acct::nossh_hack = 1;
-$FS::svc_Common::noexport_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number to import.
-END
-my($shell_svcpart)=&getpart;
-
-print "\n\n", <<END;
-Enter the location and name of your _user_ passwd file, for example
-"mail.isp.com:/etc/passwd" or "nis.isp.com:/etc/global/passwd"
-END
-my($loc_passwd)=&getvalue(":");
-iscp("root\@$loc_passwd", "$spooldir/passwd.import");
-
-print "\n\n", <<END;
-Enter the location and name of your _user_ shadow file, for example
-"mail.isp.com:/etc/shadow" or "bsd.isp.com:/etc/master.passwd"
-END
-my($loc_shadow)=&getvalue(":");
-iscp("root\@$loc_shadow", "$spooldir/shadow.import");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-open(PASSWD,"<$spooldir/passwd.import");
-open(SHADOW,"<$spooldir/shadow.import");
-
-my(%password);
-while (<SHADOW>) {
- chop;
- my($username,$password)=split(/:/);
- #$password =~ s/^\!$/\*/;
- #$password =~ s/\!+/\*SUSPENDED\* /;
- $password =~ s/^NP$/\*/;
- $password =~ s/^\*LK\*$/\*/;
- $password{$username}=$password;
-}
-
-while (<PASSWD>) {
- chop;
- my($username,$x,$uid,$gid,$finger,$dir,$shell) = split(/:/);
- my $password = $password{$username};
-
- my $svcpart = $shell_svcpart;
-
- #if ( qsearchs('svc_acct', { 'username' => $username } ) ) {
- # warn "warning: $username already exists; skipping\n";
- # next;
- #}
-
- my($svc_acct) = new FS::svc_acct ({
- 'svcpart' => $svcpart,
- 'username' => $username,
- '_password' => $password,
- 'uid' => $uid,
- 'gid' => $gid,
- 'finger' => $finger,
- 'dir' => $dir,
- 'shell' => $shell,
- #%{$allparam{$username}},
- });
- my($error);
- $error=$svc_acct->insert;
- if ( $error ) {
- if ( $error =~ /duplicate/i ) {
- warn "$username: $error";
- } else {
- die "$username: $error";
- }
- }
-
-}
-
-sub usage {
- die "Usage:\n\n passwd.import user\n";
-}
-
diff --git a/bin/pg-readonly b/bin/pg-readonly
deleted file mode 100644
index ad69fbd..0000000
--- a/bin/pg-readonly
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/perl
-#
-# hack to update/add read-only permissions for a user on the db
-#
-# usage: pg-readonly freesideuser readonlyuser
-
-use strict;
-use DBI;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(dbdef);
-
-my $user = shift or die &usage;
-my $rouser = shift or die &usage;
-
-my $dbh = adminsuidsetup $user;
-
-foreach my $table ( dbdef->tables ) {
- $dbh->do("GRANT SELECT ON $table TO $rouser");
- $dbh->commit();
- if ( my $pkey = dbdef->table($table)->primary_key ) {
- $dbh->do("GRANT SELECT ON ${table}_${pkey}_seq TO $rouser");
- $dbh->commit();
- }
-}
diff --git a/bin/pod2x b/bin/pod2x
deleted file mode 100755
index 46ccc77..0000000
--- a/bin/pod2x
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/perl
-
-#use Pod::Text;
-#$Pod::Text::termcap=1;
-
-my $site_perl = "./FS";
-#my $catman = "./catman";
-#my $catman = "./htdocs/docs/man";
-#my $html = "./htdocs/docs/man";
-my $html = "./httemplate/docs/man";
-
-$|=1;
-
-die "Can't find $site_perl" unless -d $site_perl;
-#die "Can't find $catman" unless -d $catman;
-die "Can't find $html" unless -d $html;
-
-#make some useless links
-foreach my $file (
- glob("$site_perl/bin/freeside-*"),
-) {
- next if $file =~ /\.pod$/;
- #symlink $file, "$file.pod"; # or die "link $file to $file.pod: $!";
- system("cp $file $file.pod");
-}
-
-foreach my $file (
- glob("$site_perl/*.pm"),
- glob("$site_perl/*/*.pm"),
- glob("$site_perl/*/*/*.pm"),
- glob("$site_perl/bin/*.pod"),
- glob("./fs_sesmon/FS-SessionClient/*.pm"),
- glob("./fs_signup/FS-SignupClient/*.pm"),
- glob("./fs_selfadmin/FS-MailAdminServer/*.pm"),
-) {
- next if $file =~ /(^|\/)blib\//;
- #$file =~ /\/([\w\-]+)\.pm$/ or die "oops file $file";
- my $name;
- if ( $file =~ /fs_\w+\/FS\-\w+\/(.*)\.pm$/ ) {
- $name = "FS/$1";
- } elsif ( $file =~ /$site_perl\/(.*)\.(pm|pod)$/ ) {
- $name = $1;
- } else {
- die "oops file $file";
- }
- print "$name\n";
- my $htmlroot = join('/', map '..',1..(scalar($file =~ tr/\///)-2)) || '.';
-# system "pod2text $file >$catman/$name.txt";
- system "pod2html --podroot=$site_perl --podpath=./FS:./FS/UI:.:./bin --norecurse --htmlroot=$htmlroot $file >$html/$name.html";
- #system "pod2html --podroot=$site_perl --htmlroot=$htmlroot $file >$html/$name.html";
-# system "pod2html $file >$html/$name.html";
-}
-
-#remove the useless links
-unlink glob("$site_perl/bin/*.pod");
-
diff --git a/bin/postfix.export b/bin/postfix.export
deleted file mode 100755
index 61380da..0000000
--- a/bin/postfix.export
+++ /dev/null
@@ -1,122 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-#use File::Path;
-use File::Rsync;
-use Net::SSH qw(ssh);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch); # qsearchs);
-use FS::part_export;
-#use FS::cust_pkg;
-use FS::cust_svc;
-#use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/postfix";
-mkdir $spooldir, 0700 unless -d $spooldir;
-
-my @exports = qsearch('part_export', { 'exporttype' => 'postfix' } );
-
-my $rsync = File::Rsync->new({
- rsh => 'ssh',
-# dry_run => 1,
-});
-
-foreach my $export ( @exports ) {
-
- my $machine = $export->machine;
- my $prefix = "$spooldir/$machine";
- mkdir $prefix, 0700 unless -d $prefix;
-
- #construct %domain hash
-
- my $mydomain = $export->option('mydomain');
- my %domain;
- foreach my $svc_forward ( $export->svc_x ) {
-
- my( $username, $domain );
- my $srcsvc_acct = $svc_forward->srcsvc_acct;
- if ( $srcsvc_acct ) {
- ( $username, $domain ) = ( $srcsvc_acct->username, $srcsvc_acct->domain );
- } elsif ( $svc_forward->src =~ /^([^@]*)\@([^@]+)$/ ) {
- ( $username, $domain ) = ( $1, $2 );
- } else {
- die "bad svc_forward record? svcnum ". $svc_forward->svcnum. "\n";
- }
-
- my( $dusername, $ddomain );
- my $dstsvc_acct = $svc_forward->dstsvc_acct;
- if ( $dstsvc_acct ) {
- $dusername = $dstsvc_acct->username;
- $ddomain = $dstsvc_acct->domain;
- } elsif ( $svc_forward->dst =~ /([^@]+)\@([^@]+)$/ ) {
- ( $dusername, $ddomain ) = ( $1, $2 );
- } else {
- die "bad svc_forward record? svcnum ". $svc_forward->svcnum. "\n";
- }
- my $dest;
- if ( $ddomain eq $mydomain ) {
- $dest = $dusername;
- } else {
- $dest = "$dusername\@$ddomain";
- }
-
- push @{$domain{$domain}{$username}}, $dest;
-
- }
-
- #write aliases
-
- my $aliases = delete $domain{$mydomain};
- open(ALIASES, ">$prefix/aliases") or die "can't open $prefix/aliases: $!";
- foreach my $alias ( keys %$aliases ) {
- print ALIASES "$alias: ". join(',', @{ $aliases->{$alias} } ). "\n";
- }
- close ALIASES;
-
- #write virtual
-
- open(VIRTUAL, ">$prefix/virtual") or die "can't open $prefix/virtual: $!";
- foreach my $domain ( keys %domain ) {
- print VIRTUAL "$domain DOMAIN\n";
- #foreach my $virtual ( sort { $a ne '' <=> $b ne '' } keys %{$domain{$domain}} ) {
- foreach my $virtual ( sort { ( ($b ne '') <=> ($a ne '') ) || $a cmp $b } keys %{$domain{$domain}} ) {
- print VIRTUAL "$virtual\@$domain ".
- join(',', @{ $domain{$domain}{$virtual} } ). "\n";
- }
- print VIRTUAL "\n";
- }
- close VIRTUAL;
-
- #rsync
-
- my $user = $export->option('user');
- $rsync->exec( {
- src => "$prefix/aliases",
- dest => "$user\@$machine:". $export->option('aliases'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-# warn $rsync->out;
-
- ssh("$user\@$machine", $export->option('newaliases') || 'newaliases');
-# ssh("$user\@$machine", "postfix reload");
-
- $rsync->exec( {
- src => "$prefix/virtual",
- dest => "$user\@$machine:". $export->option('virtual'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-# warn $rsync->out;
- ssh("$user\@$machine", $export->option('postmap')
- || 'postmap hash:/etc/postfix/virtual');
- ssh("$user\@$machine", $export->option('reload') || 'postfix reload');
-
-}
-
-# -----
-
-sub usage {
- die "Usage:\n postfix.export user\n";
-}
-
-
diff --git a/bin/postfix_courierimap.import b/bin/postfix_courierimap.import
deleted file mode 100755
index 12c138b..0000000
--- a/bin/postfix_courierimap.import
+++ /dev/null
@@ -1,137 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw(%part_svc %domain_part_svc);
-#use Date::Parse;
-use DBI;
-use Term::Query qw(query);
-use FS::UID qw(adminsuidsetup); #datasrc
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number to import.
-END
-my $mailbox_svcpart = &getpart;
-
-%domain_part_svc = map { $_->svcpart, $_ }
- qsearch('part_svc', { 'svcdb' => 'svc_domain'} );
-
-die "No services with svcdb svc_domain!\n" unless %domain_part_svc;
-
-print "\n\n", &menu_domain_svc, "\n", <<END;
-Enter part number for domains.
-END
-my $domain_svcpart = &getdomainpart;
-
-my $datasrc = &getvalue("\n\nEnter the DBI datasource:");
-my $db_user = &getvalue("\n\nEnter the database user:");
-my $db_pass = &getvalue("\n\nEnter the database password:");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub menu_domain_svc {
- ( join "\n", map "$_: ".$domain_part_svc{$_}->svc, sort keys %domain_part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getdomainpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %domain_part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-my $dbh = DBI->connect( $datasrc, $db_user, $db_pass )
- or die $DBI::errstr;
-
-my $sth = $dbh->prepare('SELECT username, password, crypt, name, domain FROM mailbox')
- or die $dbh->errstr;
-$sth->execute or die $sth->errstr;
-
-my $row;
-while ( defined ( $row = $sth->fetchrow_arrayref ) ) {
- my( $r_username, $password, $crypt, $finger, $r_domain ) = @$row;
-
- my( $username, $domain );
- if ( $r_username =~ /^([^@]+)\@([^@]+)$/ ) {
- $username = $1;
- $domain = $2;
- } else {
- $username = $r_username;
- $domain = $r_domain;
- }
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- || new FS::svc_domain {
- 'domain' => $domain,
- 'svcpart' => $domain_svcpart,
- 'action' => 'N',
- };
- unless ( $svc_domain->svcnum ) {
- my $error = $svc_domain->insert;
- if ( $error ) {
- die "can't insert domain $domain: $error\n";
- }
- }
-
- $password = $crypt if $password eq '*CRYPTED*';
-
- $finger =~ s/Outdoor Power.*$/Outdoor Power/;
-
- my $svc_acct = new FS::svc_acct {
- 'svcpart' => $mailbox_svcpart,
- 'username' => $username,
- 'domsvc' => $svc_domain->svcnum,
- '_password' => $password,
- 'finger' => $finger,
- };
-
- my $error = $svc_acct->insert;
- #my $error = $svc_acct->check;
- if ( $error ) {
- if ( $error =~ /duplicate/i ) {
- warn "$r_username / $r_domain: $error";
- } else {
- die "$r_username / $r_domain: $error";
- }
- }
-
-}
-
-sub usage {
- die "Usage:\n\n postfix_courierimap.import user\n";
-}
-
-
diff --git a/bin/print-schema b/bin/print-schema
deleted file mode 100755
index 886e325..0000000
--- a/bin/print-schema
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/perl
-
-use DBIx::DBSchema;
-
-$l = load DBIx::DBSchema "/usr/local/etc/freeside/dbdef.DBI:Pg:dbname=freeside";
-
-print $l->pretty_print, "\n";
diff --git a/bin/rate-us.import b/bin/rate-us.import
deleted file mode 100755
index 66ac5de..0000000
--- a/bin/rate-us.import
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-#use Spreadsheet::ParseExcel;
-use DBI;
-use FS::UID qw(adminsuidsetup);
-use FS::rate_region;
-use FS::rate_prefix;
-use FS::rate_region;
-
-my $ratenum = 1;
-
-my $user = shift or usage();
-adminsuidsetup $user;
-
-sub usage {
- #die "Usage:\n\n rate.import user rates.xls worksheet_name";
- die "Usage:\n\n rate.import user";
-}
-
-my %rate_region;
-
-foreach my $file ( 'areas and rates US.xls',
- 'areas and rates US2.xls',
- 'areas and rates US3.xls',
- )
-{
-
- my $dbh = DBI->connect("DBI:Excel:file=$file")
- or die "can't connect: $DBI::errstr";
-
- #my $table = shift or usage();
- my $table = 'Sheet1';
- my $sth = $dbh->prepare("select * from $table")
- or die "can't prepare: ". $dbh->errstr;
- $sth->execute
- or die "can't execute: ". $sth->errstr;
-
- while ( my $row = $sth->fetchrow_hashref ) {
-
- #print join(' - ', map $row->{$_}, qw( rate_center Code Area_Prefix Rate ) ). "\n";
-
- my $regionname = $row->{'rate_center'};
- $regionname =~ s/\xA0//g;
- #$regionname =~ s/\xE9/e/g; #e with accent aigu
- $regionname =~ s/(^\s+|\s+$)//;
- $regionname .= ', USA';
-
- my $prefix = $row->{'area_prefix'};
- $prefix =~ s/\xA0//g;
- $prefix =~ s/\s$//;
- #my $prefixprefix = '';
- #if ( $prefix =~ /^\s*(\d+)\s*\((.*)\)\s*$/ ) {
- # $prefixprefix = $1;
- # $prefix = $2;
- #} elsif ( $prefix =~ /^\s*\((\d{3})\)\s*(.*)$/ ) {
- # $prefixprefix = $1;
- # $prefix = $2;
- #}
-
- my @rate_prefix = map {
- #warn $row->{'rate_center'}. ": $prefixprefix$_\n";
- new FS::rate_prefix {
- 'countrycode' => '1', # $row->{'Country'}
- #'npa' => $prefixprefix.$_,
- 'npa' => $_,
- };
- }
- split(/\s*[;,]\s*/, $prefix);
-
-
- my $dest_detail = new FS::rate_detail {
- 'ratenum' => $ratenum,
- 'min_included' => 0,
- 'min_charge' =>
- sprintf('%.2f', $row->{'rate'} ),
- 'sec_granularity' => 60,
- };
-
- unless ( exists $rate_region{$regionname} ) {
-
- my $rate_region = new FS::rate_region {
- 'regionname' => $regionname,
- };
-
- my $error = $rate_region->insert( 'rate_prefix' => \@rate_prefix,
- 'dest_detail' => [ $dest_detail ],
- );
- die $error if $error;
-
- $rate_region{$regionname} = $rate_region->regionnum;
-
- } else {
-
- foreach my $rate_prefix ( @rate_prefix ) {
- $rate_prefix->regionnum($rate_region{$regionname});
- my $error = $rate_prefix->insert;
- die $error if $error;
- }
-
- #$rate_detail->dest_regionnum($rate_region{$regionname});
- #$error = $rate_detail->insert;
- #die $error if $error;
-
- }
-
- }
-
-}
diff --git a/bin/rate.import b/bin/rate.import
deleted file mode 100755
index fdd756d..0000000
--- a/bin/rate.import
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-#use Spreadsheet::ParseExcel;
-use DBI;
-use FS::UID qw(adminsuidsetup);
-use FS::rate_region;
-use FS::rate_prefix;
-use FS::rate_region;
-
-my $ratenum = 1;
-
-my $user = shift or usage();
-adminsuidsetup $user;
-
-#my $file = shift or usage();
-my $file = 'areas and rates.xls';
-my $dbh = DBI->connect("DBI:Excel:file=$file")
- or die "can't connect: $DBI::errstr";
-
-#my $table = shift or usage();
-my $table = 'areas_and_rates';
-my $sth = $dbh->prepare("select * from $table")
- or die "can't prepare: ". $dbh->errstr;
-$sth->execute
- or die "can't execute: ". $sth->errstr;
-
-sub usage {
- #die "Usage:\n\n rate.import user rates.xls worksheet_name";
- die "Usage:\n\n rate.import user";
-}
-
-##
-
-while ( my $row = $sth->fetchrow_hashref ) {
-
- #print join(' - ', map $row->{$_}, qw( Country Code Area_Prefix Rate ) ). "\n";
-
- my $regionname = $row->{'Country'};
- $regionname =~ s/\xA0//g;
- $regionname =~ s/\xE9/e/g; #e with accent aigu
- $regionname =~ s/(^\s+|\s+$)//;
-
- #next if $regionname =~ /Sweden Telia Mobile/;
-
- my $rate_region = new FS::rate_region {
- 'regionname' => $regionname,
- };
-
- my $prefix = $row->{'Area_Prefix'};
- $prefix =~ s/\xA0//g;
- $prefix =~ s/\s$//;
- my $prefixprefix = '';
- if ( $prefix =~ /^\s*(\d+)\s*\((.*)\)\s*$/ ) {
- $prefixprefix = $1;
- $prefix = $2;
- } elsif ( $prefix =~ /^\s*\((\d{3})\)\s*(.*)$/ ) {
- $prefixprefix = $1;
- $prefix = $2;
- }
-
- my @rate_prefix = ();
- if ( $prefix =~ /\d/ ) {
-
- @rate_prefix = map {
- #warn $row->{'Country'}. ": $prefixprefix$_\n";
- new FS::rate_prefix {
- 'countrycode' => $row->{'Code'},
- 'npa' => $prefixprefix.$_,
- };
- }
- split(/\s*[;,]\s*/, $prefix);
-
- } else {
- @rate_prefix = ( new FS::rate_prefix {
- 'countycode' => $row->{'Code'},
- 'npa' => '',
- };
- );
- }
-
- my $dest_detail = new FS::rate_detail {
- 'ratenum' => $ratenum,
- 'min_included' => 0,
- 'min_charge' =>
- sprintf('%.2f', $row->{'Rate'} ),
- 'sec_granularity' => 60,
- };
-
- my $error = $rate_region->insert( 'rate_prefix' => \@rate_prefix,
- 'dest_detail' => [ $dest_detail ],
- );
- die $error if $error;
-
-}
diff --git a/bin/rollback b/bin/rollback
deleted file mode 100755
index 7f83ef4..0000000
--- a/bin/rollback
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/perl
-
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch qsearchs fields);
-
-use FS::svc_acct;
-
-#cust_pkg pkgnum 240133 241206 replace_old
-#cust_svc svcnum 31102 32083 delete
-#svc_acct svcnum 37162 37652 delete
-my($user, $table, $pkey, $start, $end, $action) = @ARGV;
-
-adminsuidsetup $user or die;
-
-#eval "use FS::h_$table;";
-#die $@ if $@;
-eval "use FS::$table;";
-die $@ if $@;
-
-my @history = grep { $_->historynum <= $end } qsearch("h_$table", { 'historynum' => { op=>'>=', value=>$start }, history_action => $action } );
-
-my %seen;
-foreach my $h (@history) {
- my $error;
- if ( $action eq 'replace_old' ) {
- my $old = qsearchs($table, { $pkey => $h->get($pkey) } );
- unless ( $old ) { die "can't find $table $pkey ". $h->get($pkey). "\n"; }
- my $new = "FS::$table"->new( { map { $_ => $h->get($_) } fields($table) } );
- $error = $new->replace($old);
- } elsif ( $action eq 'delete' ) {
- next if $seen{$h->get($pkey)}++;
- my $new = "FS::$table"->new( { map { $_ => $h->get($_) } fields($table) } );
- $error = $new->insert;
- } else {
- die "unknown action $action\n";
- }
- die $error if $error;
-}
diff --git a/bin/rt-drop-tables b/bin/rt-drop-tables
deleted file mode 100755
index b027542..0000000
--- a/bin/rt-drop-tables
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/usr/bin/perl
-
-my @tables = qw(
-Attachments
-Queues
-Links
-Principals
-Groups
-ScripConditions
-Transactions
-Scrips
-ACL
-GroupMembers
-CachedGroupMembers
-Users
-Tickets
-ScripActions
-Templates
-TicketCustomFieldValues
-CustomFields
-CustomFieldValues
-sessions
-);
-
-foreach my $table ( @tables ) {
- print "drop table $table;\n";
- print "drop sequence ${table}_id_seq;\n";
-}
-
diff --git a/bin/rt-update-links b/bin/rt-update-links
deleted file mode 100644
index 75d554f..0000000
--- a/bin/rt-update-links
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/perl
-
-use FS::UID qw(adminsuidsetup);
-
-my( $olddb, $newdb ) = ( shift, shift );
-
-$FS::CurrentUser::upgrade_hack = 1;
-my $dbh = adminsuidsetup;
-
-my $statement = "select * from links where base like 'fsck.com-rt://$olddb/%' OR target like 'fsck.com-rt://$olddb/%'";
-
-my $sth = $dbh->prepare($statement) or die $dbh->errstr;
-$sth->execute or die $sth->errstr;
-
-while ( my $row = $sth->fetchrow_hashref ) {
-
- ( my $base = $row->{'base'} )
- =~ s(^fsck\.com-rt://$olddb/)(fsck.com-rt://$newdb/);
-
- ( my $target = $row->{'target'} )
- =~ s(^fsck\.com-rt://$olddb/)(fsck.com-rt://$newdb/);
-
- if ( $row->{'base'} ne $base || $row->{'target'} ne $target ) {
-
- my $update = 'UPDATE links SET base = ?, target = ? where id = ?';
- my @param = ( $base, $target, $row->{'id'} );
-
- warn "$update : ". join(', ', @param). "\n";
- $dbh->do($update, {}, @param );
-
- }
-
-}
-
-$dbh->commit;
-
diff --git a/bin/sendmail.import b/bin/sendmail.import
deleted file mode 100644
index ef745fc..0000000
--- a/bin/sendmail.import
+++ /dev/null
@@ -1,178 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Term::Query qw(query);
-use Net::SCP qw(iscp);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-##use FS::svc_acct_sm;
-#use FS::svc_domain;
-#use FS::domain_record;
-use FS::svc_acct;
-##use FS::part_svc;
-use FS::svc_forward;
-use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#$FS::svc_Common::noexport_hack = 1;
-#$FS::domain_record::noserial_hack = 1;
-
-use vars qw($defaultdomain);
-$defaultdomain = '295.ca';
-
-use vars qw(@svcpart $forward_svcpart);
-@svcpart = qw( 2 4 );
-$forward_svcpart = 7;
-
-use vars qw($spooldir);
-$spooldir = "/usr/local/etc/freeside/export.". datasrc. "/sendmail";
-mkdir($spooldir, 0755) unless -d $spooldir;
-
-print "\n\n", <<END;
-Enter the location and name of your Sendmail aliases file, for example
-"mail.isp.com:/etc/mail/aliases"
-END
-my($aliases)=&getvalue(":");
-
-use vars qw($aliases_machine $aliases_prefix);
-$aliases_machine = (split(/:/, $aliases))[0];
-$aliases_prefix = "$spooldir/$aliases_machine";
-mkdir($aliases_prefix, 0755) unless -d $aliases_prefix;
-
-#iscp("root\@$aliases","$aliases_prefix/aliases.import");
-iscp("ivan\@$aliases","$aliases_prefix/aliases.import");
-
-print "\n\n", <<END;
-Enter the location and name of your Sendmail virtusertable directory, for example
-"mail.isp.com:/etc/mail/virtusertable"
-END
-my($virtusertable)=&getvalue(":");
-
-use vars qw($virtusertable_machine $virtusertable_prefix);
-$virtusertable_machine = (split(/:/, $virtusertable))[0];
-$virtusertable_prefix = "$spooldir/$virtusertable_machine";
-mkdir($virtusertable_prefix, 0755) unless -d $virtusertable_prefix;
-mkdir("$virtusertable_prefix/virtusertable.import", 0755)
- unless -d "$virtusertable_prefix/virtusertable.import";
-
-#iscp("root\@$virtusertable/*","$aliases_prefix/virtusertable.import/");
-iscp("ivan\@$virtusertable/*","$aliases_prefix/virtusertable.import/");
-
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-##
-
-foreach my $file (
- "$aliases_prefix/aliases.import",
- glob("$aliases_prefix/virtusertable.import/*"),
-) {
-
- warn "importing $file\n";
-
- open(FILE,"<$file") or die $!;
- while (<FILE>) {
- next if /^\s*#/ || /^\s*$/; #skip comments & blank lines
-
- unless ( /^([\w\@\.\-]+)[:\s]\s*(.*\S)\s*$/ ) {
- warn "Unparsable line: $_";
- next;
- }
- my($rawusername, $rawdest) = ($1, $2);
-
- my($username, $domain);
- if ( $rawusername =~ /^([\w\-\.\&]*)\@([\w\.\-]+)$/ ) {
- $username = $1;
- $domain = $2;
- } elsif ( $rawusername =~ /\@/ ) {
- die "Unparsable username: $rawusername\n";
- } else {
- $username = $rawusername;
- $domain = $defaultdomain;
- }
-
- #find svc_acct record or set $src
- my($srcsvc, $src) = &svcnum_or_literal($username, $domain);
-
- foreach my $dest ( split(/,/, $rawdest) ) {
-
- my($dusername, $ddomain);
- if ( $dest =~ /^([\w\-\.\&]+)\@([\w\.\-]+)$/ ) {
- $dusername = $1;
- $ddomain = $2;
- } elsif ( $dest =~ /\@/ ) {
- die "Unparsable username: $dest\n";
- } else {
- $dusername = $dest;
- $ddomain = $defaultdomain;
- }
- my($dstsvc, $dst) = &svcnum_or_literal($dusername, $ddomain);
-
- my $svc_forward = new FS::svc_forward ({
- svcpart => $forward_svcpart,
- srcsvc => $srcsvc,
- src => $src,
- dstsvc => $dstsvc,
- dst => $dst,
- });
- my $error = $svc_forward->insert;
- #my $error = $svc_forward->check;
- if ( $error ) {
- die "$rawusername: $rawdest: $error\n";
- }
- }
-
-
- } #next entry
-
-} #next file
-
-##
-
-sub svcnum_or_literal {
- my($username, $domain) = @_;
-
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } );
- my $domsvc = $svc_domain ? $svc_domain->svcnum : '';
-
- my @svc_acct = grep { my $svc_acct = $_;
- grep { $svc_acct->cust_svc->svcpart == $_ } @svcpart
- }
- qsearch('svc_acct', {
- 'username' => $username,
- 'domsvc' => $domsvc,
- });
-
- if ( scalar(@svc_acct) > 1 ) {
- die "multiple sources found for $username\@$domain !\n";
- }
-
- my( $svcnum, $literal ) = ('', '');
- if ( @svc_acct ) {
- my $svc_acct = $svc_acct[0];
- $svcnum = $svc_acct->svcnum;
- } else {
- $literal = "$username\@$domain";
- }
-
- return( $svcnum, $literal );
-
-}
-
-sub usage {
- die "Usage:\n\n sendmail.import user\n";
-}
-
-
-
-
-
diff --git a/bin/sequences.reset b/bin/sequences.reset
deleted file mode 100644
index 2dc1d3b..0000000
--- a/bin/sequences.reset
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/perl
-
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(dbdef dbh);
-
-my $user = shift;
-adminsuidsetup $user or die;
-
-foreach my $table ( dbdef->tables ) {
- my $primary_key = dbdef->table($table)->primary_key;
- next unless $primary_key;
- #my $local = dbdef->table($table)->column($primary_key)->local;
- ##next unless $default =~ /nextval/;
- #print "$local\n";
-
- my $statement = "select setval('${table}_${primary_key}_seq', ( select max($primary_key) from $table ) )";
-
- print "$statement;\n";
- next;
-
- my $sth = dbh->prepare($statement) or do {
- warn dbh->errstr. " preparing $statement\n";
- next;
- };
- $sth->execute or do {
- warn dbh->errstr. " executing $statement\n";
- dbh->commit;
- next;
- }
-
-}
-
diff --git a/bin/shadow.reimport b/bin/shadow.reimport
deleted file mode 100755
index 7957011..0000000
--- a/bin/shadow.reimport
+++ /dev/null
@@ -1,125 +0,0 @@
-#!/usr/bin/perl -w
-#
-# -d: dry-run: make no changes
-# -r: replace: overwrite existing passwords (otherwise only "*" passwords will
-# be changed)
-# -b: blowfish replace: overwrite existing passwords only if they are
-# blowfish-encrypted
-
-use strict;
-use vars qw(%part_svc);
-use Getopt::Std;
-use Term::Query qw(query);
-use Net::SCP qw(iscp);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-
-use vars qw($opt_d $opt_r $opt_b);
-getopts("drb");
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-my($spooldir)="/usr/local/etc/freeside/export.". datasrc;
-
-#$FS::svc_acct::nossh_hack = 1;
-$FS::svc_Common::noexport_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number or part numbers to import.
-END
-my($shell_svcpart)=&getvalue;
-my @shell_svcpart = split(/[,\s]+/, $shell_svcpart);
-
-print "\n\n", <<END;
-Enter the location and name of your _user_ shadow file, for example
-"mail.isp.com:/etc/shadow" or "bsd.isp.com:/etc/master.passwd"
-END
-my($loc_shadow)=&getvalue(":");
-iscp("root\@$loc_shadow", "$spooldir/shadow.import");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-open(SHADOW,"<$spooldir/shadow.import");
-
-my($line, $updated);
-while (<SHADOW>) {
- $line++;
- chop;
- my($username,$password)=split(/:/);
-
-# my @svc_acct = grep { $_->cust_svc->svcpart == $shell_svcpart }
-# qsearch('svc_acct', { 'username' => $username } );
- my @svc_acct = grep {
- my $svcpart = $_->cust_svc->svcpart;
- grep { $_ == $svcpart } @shell_svcpart;
- } qsearch('svc_acct', { 'username' => $username } );
-
- next unless @svc_acct;
-
- if ( scalar(@svc_acct) > 1 ) {
- die "more than one $username found!\n";
- next;
- }
-
- my $svc_acct = shift @svc_acct;
-
- next unless $svc_acct->_password eq '*'
- || $opt_r
- || ( $opt_b && $svc_acct->_password =~ /^\$2a?\$/ );
-
- next if $svc_acct->username eq 'root';
-
- next if $password eq 'NP' || $password eq '*LK*';
-
- next if $svc_acct->_password eq $password;
- next if $svc_acct->_password =~ /^\*SUSPENDED\*/;
-
- my $new_svc_acct = new FS::svc_acct( { $svc_acct->hash } );
- $new_svc_acct->_password($password);
- #warn "$username: ". $svc_acct->_password. " -> $password\n";
- warn "changing password for $username\n";
- unless ( $opt_d ) {
- my $error = $new_svc_acct->replace($svc_acct);
- die "$username: $error" if $error;
- }
-
- $updated++;
-
-}
-
-warn "$updated of $line passwords changed\n";
-
-sub usage {
- die "Usage:\n\n shadow.reimport [ -d ] [ -r ] user\n";
-}
-
diff --git a/bin/slony-setup b/bin/slony-setup
deleted file mode 100755
index b384bb9..0000000
--- a/bin/slony-setup
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/perl
-#
-# hack to update/add read-only permissions for a user on the db
-#
-# usage: pg-readonly freesideuser readonlyuser
-
-use strict;
-use DBI;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(dbdef);
-
-my $user = shift or die &usage;
-adminsuidsetup($user);
-
-#---
-
-#su postgres -c 'createlang plpgsql freeside'
-
-#---
-
-my $MASTERHOST = '172.21.0.204';
-my $SLAVEHOST = '172.21.0.205';
-#my $REPLICATIONUSER='pgsql';
-my $REPLICATIONUSER='postgres';
-
-#drop set ( id = 1, origin = 1);
-
-print <<END;
-cluster name = freeside;
-node 1 admin conninfo = 'dbname=freeside host=$MASTERHOST user=$REPLICATIONUSER';
-node 2 admin conninfo = 'dbname=freeside host=$SLAVEHOST user=$REPLICATIONUSER';
-init cluster ( id=1, comment = 'Master Node');
-create set (id=1, origin=1, comment='All freeside tables');
-
-END
-
-my $id = 1;
-
-foreach my $table ( dbdef->tables ) {
- #next if $table =~ /^sql_/i;
- print "set add table (set id=1, origin=1, id=". $id++. ", fully qualified name = 'public.$table' );\n";
-
-}
-
-print <<END;
-store node (id=2, comment = 'Slave node');
-store path (server = 1, client = 2, conninfo='dbname=freeside host=$MASTERHOST user=$REPLICATIONUSER');
-store path (server = 2, client = 1, conninfo='dbname=freeside host=$SLAVEHOST user=$REPLICATIONUSER');
-store listen (origin=1, provider = 1, receiver =2);
-store listen (origin=2, provider = 2, receiver =1);
-END
-
-
diff --git a/bin/sqlradius-norealm.reimport b/bin/sqlradius-norealm.reimport
deleted file mode 100755
index b7d0166..0000000
--- a/bin/sqlradius-norealm.reimport
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw(%part_svc);
-#use Date::Parse;
-use DBI;
-use Term::Query qw(query);
-use FS::UID qw(adminsuidsetup); #datasrc
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-$FS::svc_Common::noexport_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number to import.
-END
-my $sqlradius_svcpart = &getpart;
-
-my $datasrc = &getvalue("\n\nEnter the DBI datasource:");
-my $db_user = &getvalue("\n\nEnter the database user:");
-my $db_pass = &getvalue("\n\nEnter the database password:");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-my $dbh = DBI->connect( $datasrc, $db_user, $db_pass )
- or die $DBI::errstr;
-
-my $sth = $dbh->prepare('SELECT DISTINCT UserName FROM radcheck')
- or die $dbh->errstr;
-$sth->execute or die $sth->errstr;
-
-my $row;
-while ( defined ( $row = $sth->fetchrow_arrayref ) ) {
- my( $username ) = @$row;
-
- my( $password, $group ) = ( '', '', '' );
-
- my $rc_sth = $dbh->prepare(
- 'SELECT Attribute, Value'.
- ' FROM radcheck'.
- ' WHERE UserName = ?'
- ) or die $dbh->errstr;
- $rc_sth->execute($username) or die $rc_sth->errstr;
-
- foreach my $rc_row ( @{$rc_sth->fetchall_arrayref} ) {
- my($attribute, $value) = @$rc_row;
- if ( $attribute =~ /^((Crypt|User)-)?Password$/ ) {
- $password = $value unless $password && !$1;
- } else {
- #handle other params!
- }
- }
-
- my @svc_acct = grep { $_->cust_svc->svcpart == $sqlradius_svcpart }
- qsearch('svc_acct', { 'username' => $username, } );
-
- #print "$r_username / $realm: $password / $finger: ";
- print "$username: $password: ";
- if ( scalar(@svc_acct) == 0 ) {
- print "not found\n";
- next;
- } elsif ( scalar(@svc_acct) > 1 ) {
- print "multiple matches found?!?!\n";
- next;
- } else {
- #print "correcting password and name\n";
- print "correcting password\n";
- }
-
- my $svc_acct = $svc_acct[0];
- #my $new = new FS::svc_acct { $svc_acct->hash, '_password' => $password, 'finger' => $finger };
- my $new = new FS::svc_acct { $svc_acct->hash, '_password' => $password };
- my $error = $new->replace($svc_acct);
- #my $error = $new->check;
- die "$username: $error" if $error;
-
-}
-
-sub usage {
- die "Usage:\n\n sqlradius-norealm.reimport user\n";
-}
-
diff --git a/bin/sqlradius.import b/bin/sqlradius.import
deleted file mode 100644
index e75f65b..0000000
--- a/bin/sqlradius.import
+++ /dev/null
@@ -1,152 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw(%part_svc %domain_part_svc);
-#use Date::Parse;
-use DBI;
-use Term::Query qw(query);
-use FS::UID qw(adminsuidsetup); #datasrc
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number to import.
-END
-my $sqlradius_svcpart = &getpart;
-
-%domain_part_svc = map { $_->svcpart, $_ }
- qsearch('part_svc', { 'svcdb' => 'svc_domain'} );
-
-die "No services with svcdb svc_domain!\n" unless %domain_part_svc;
-
-print "\n\n", &menu_domain_svc, "\n", <<END;
-Enter part number for domains.
-END
-my $domain_svcpart = &getdomainpart;
-
-my $datasrc = &getvalue("\n\nEnter the DBI datasource:");
-my $db_user = &getvalue("\n\nEnter the database user:");
-my $db_pass = &getvalue("\n\nEnter the database password:");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub menu_domain_svc {
- ( join "\n", map "$_: ".$domain_part_svc{$_}->svc, sort keys %domain_part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getdomainpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %domain_part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-my $dbh = DBI->connect( $datasrc, $db_user, $db_pass )
- or die $DBI::errstr;
-
-my $sth = $dbh->prepare('SELECT DISTINCT UserName, Realm FROM radcheck')
- or die $dbh->errstr;
-$sth->execute or die $sth->errstr;
-
-my $row;
-while ( defined ( $row = $sth->fetchrow_arrayref ) ) {
- my( $r_username, $realm ) = @$row;
-
- my( $username, $domain );
- if ( $r_username =~ /^([^@]+)\@([^@]+)$/ ) {
- $username = $1;
- $domain = $2;
- } else {
- $username = $r_username;
- $domain = $realm;
- }
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- || new FS::svc_domain {
- 'domain' => $domain,
- 'svcpart' => $domain_svcpart,
- 'action' => 'N',
- };
- unless ( $svc_domain->svcnum ) {
- my $error = $svc_domain->insert;
- if ( $error ) {
- die "can't insert domain $domain: $error\n";
- }
- }
-
- my( $password, $finger, $group ) = ( '', '', '' );
-
- my $rc_sth = $dbh->prepare(
- 'SELECT Attribute, Value, Name, GroupName'.
- ' FROM radcheck'.
- ' WHERE UserName = ? and Realm = ?'
- ) or die $dbh->errstr;
- $rc_sth->execute($r_username, $realm) or die $rc_sth->errstr;
-
- foreach my $rc_row ( @{$rc_sth->fetchall_arrayref} ) {
- my($attribute, $value, $name, $groupname) = @$rc_row;
- if ( $attribute =~ /^((User|Crypt)-)?Password$/ ) {
- $password = $value;
- $finger = $name;
- $group = $groupname;
- } else {
- #handle other params!
- }
- }
-
- my $svc_acct = new FS::svc_acct {
- 'svcpart' => $sqlradius_svcpart,
- 'username' => $username,
- 'domsvc' => $svc_domain->svcnum,
- '_password' => $password,
- 'finger' => $finger,
- };
-
- my $error = $svc_acct->insert;
- #my $error = $svc_acct->check;
- if ( $error ) {
- if ( $error =~ /duplicate/i ) {
- warn "$r_username / $realm: $error";
- } else {
- die "$r_username / $realm: $error";
- }
- }
-
-}
-
-sub usage {
- die "Usage:\n\n sqlradius.import user\n";
-}
-
diff --git a/bin/sqlradius.reimport b/bin/sqlradius.reimport
deleted file mode 100755
index 2218a3f..0000000
--- a/bin/sqlradius.reimport
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw(%part_svc %domain_part_svc);
-#use Date::Parse;
-use DBI;
-use Term::Query qw(query);
-use FS::UID qw(adminsuidsetup); #datasrc
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_acct;
-use FS::part_svc;
-use FS::svc_domain;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-#push @FS::svc_acct::shells, qw(/bin/sync /sbin/shutdown /bin/halt /sbin/halt); #others?
-
-$FS::svc_Common::noexport_hack = 1;
-$FS::svc_domain::whois_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Enter part number to import.
-END
-my $sqlradius_svcpart = &getpart;
-
-%domain_part_svc = map { $_->svcpart, $_ }
- qsearch('part_svc', { 'svcdb' => 'svc_domain'} );
-
-die "No services with svcdb svc_domain!\n" unless %domain_part_svc;
-
-print "\n\n", &menu_domain_svc, "\n", <<END;
-Enter part number for domains.
-END
-my $domain_svcpart = &getdomainpart;
-
-my $datasrc = &getvalue("\n\nEnter the DBI datasource:");
-my $db_user = &getvalue("\n\nEnter the database user:");
-my $db_pass = &getvalue("\n\nEnter the database password:");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub menu_domain_svc {
- ( join "\n", map "$_: ".$domain_part_svc{$_}->svc, sort keys %domain_part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getdomainpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %domain_part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-my $dbh = DBI->connect( $datasrc, $db_user, $db_pass )
- or die $DBI::errstr;
-
-my $sth = $dbh->prepare('SELECT DISTINCT UserName, Realm FROM radcheck')
- or die $dbh->errstr;
-$sth->execute or die $sth->errstr;
-
-my $row;
-while ( defined ( $row = $sth->fetchrow_arrayref ) ) {
- my( $r_username, $realm ) = @$row;
-
- my( $username, $domain );
- if ( $r_username =~ /^([^@]+)\@([^@]+)$/ ) {
- $username = $1;
- $domain = $2;
- } else {
- $username = $r_username;
- $domain = $realm;
- }
- my $svc_domain = qsearchs('svc_domain', { 'domain' => $domain } )
- || new FS::svc_domain {
- 'domain' => $domain,
- 'svcpart' => $domain_svcpart,
- 'action' => 'N',
- };
- unless ( $svc_domain->svcnum ) {
- die "new domain? wtf";
- my $error = $svc_domain->insert;
- if ( $error ) {
- die "can't insert domain $domain: $error\n";
- }
- }
-
- #my( $password, $finger, $group ) = ( '', '', '' );
- my( $password, $group ) = ( '', '', '' );
-
- my $rc_sth = $dbh->prepare(
- 'SELECT Attribute, Value, Name, GroupName'.
- ' FROM radcheck'.
- ' WHERE UserName = ? and Realm = ?'
- ) or die $dbh->errstr;
- $rc_sth->execute($r_username, $realm) or die $rc_sth->errstr;
-
- foreach my $rc_row ( @{$rc_sth->fetchall_arrayref} ) {
- my($attribute, $value, $name, $groupname) = @$rc_row;
- if ( $attribute =~ /^((Crypt|User)-)?Password$/ ) {
- $password = $value;
- #$finger = $name;
- $group = $groupname;
- } else {
- #handle other params!
- }
- }
-
- my @svc_acct = grep { $_->cust_svc->svcpart == $sqlradius_svcpart }
- qsearch('svc_acct', { 'username' => $username,
- 'domsvc' => $svc_domain->svcnum, } );
-
- #print "$r_username / $realm: $password / $finger: ";
- print "$r_username / $realm: $password: ";
- if ( scalar(@svc_acct) == 0 ) {
- print "not found\n";
- next;
- } elsif ( scalar(@svc_acct) > 1 ) {
- print "multiple matches found?!?!\n";
- next;
- } else {
- #print "correcting password and name\n";
- print "correcting password\n";
- }
-
- my $svc_acct = $svc_acct[0];
- #my $new = new FS::svc_acct { $svc_acct->hash, '_password' => $password, 'finger' => $finger };
- my $new = new FS::svc_acct { $svc_acct->hash, '_password' => $password };
- my $error = $new->replace($svc_acct);
- #my $error = $new->check;
- die "$r_username / $realm: $error" if $error;
-
-}
-
-sub usage {
- die "Usage:\n\n sqlradius.reimport user\n";
-}
-
diff --git a/bin/svc_acct.export b/bin/svc_acct.export
deleted file mode 100755
index 0bc370f..0000000
--- a/bin/svc_acct.export
+++ /dev/null
@@ -1,641 +0,0 @@
-#!/usr/bin/perl -w
-#
-# $Id: svc_acct.export,v 1.36 2002-05-16 14:28:35 ivan Exp $
-#
-# Create and export password, radius and vpopmail password files:
-# passwd, passwd.adjunct, shadow, acp_passwd, acp_userinfo, acp_dialup
-# users/assign, domains/vdomain/vpasswd
-# Also export sendmail and qmail config files.
-
-use strict;
-use vars qw($conf);
-use Fcntl qw(:flock);
-use File::Path;
-use IO::Handle;
-use FS::Conf;
-use Net::SSH qw(ssh);
-use Net::SCP qw(scp);
-use FS::UID qw(adminsuidsetup datasrc dbh);
-use FS::Record qw(qsearch qsearchs fields);
-use FS::svc_acct;
-use FS::svc_domain;
-use FS::svc_forward;
-
-my $ssh='ssh';
-my $rsync='rsync';
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-$conf = new FS::Conf;
-
-my $userpolicy = $conf->config('username_policy')
- if $conf->exists('username_policy');
-
-my @shellmachines = $conf->config('shellmachines')
- if $conf->exists('shellmachines');
-
-my @bsdshellmachines = $conf->config('bsdshellmachines')
- if $conf->exists('bsdshellmachines');
-
-my @nismachines = $conf->config('nismachines')
- if $conf->exists('nismachines');
-
-my @erpcdmachines = $conf->config('erpcdmachines')
- if $conf->exists('erpcdmachines');
-
-my @radiusmachines = $conf->config('radiusmachines')
- if $conf->exists('radiusmachines');
-
-my $textradiusprepend =
- $conf->exists('textradiusprepend')
- ? $conf->config('textradiusprepend')
- : '';
-
-warn "using depriciated textradiusprepend file" if $textradiusprepend;
-
-
-my $radiusprepend =
- $conf->exists('radiusprepend')
- ? join("\n", $conf->config('radiusprepend'))
- : '';
-
-my @vpopmailmachines = $conf->config('vpopmailmachines')
- if $conf->exists('vpopmailmachines');
-my $vpopmailrestart = '';
-$vpopmailrestart = $conf->config('vpopmailrestart')
- if $conf->exists('vpopmailrestart');
-
-my ($machine, $vpopdir, $vpopuid, $vpopgid) = split (/\s+/, $vpopmailmachines[0]) if $vpopmailmachines[0];
-
-my($shellmachine, @qmailmachines);
-if ( $conf->exists('qmailmachines') ) {
- $shellmachine = $conf->config('shellmachine');
- @qmailmachines = $conf->config('qmailmachines');
-}
-
-my(@sendmailmachines, $sendmailconfigpath, $sendmailrestart);
-if ( $conf->exists('sendmailmachines') ) {
- @sendmailmachines = $conf->config('sendmailmachines');
- $sendmailconfigpath = $conf->config('sendmailconfigpath') || '/etc';
- $sendmailrestart = $conf->config('sendmailrestart');
-}
-
-my $mydomain = $conf->config('domain') if $conf->exists('domain');
-
-
-
-
-my(@saltset)= ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-require 5.004; #srand(time|$$);
-
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc;
-my $spoollock = "/usr/local/etc/freeside/svc_acct.export.lock.". datasrc;
-
-open(EXPORT,"+>>$spoollock") or die "Can't open $spoollock: $!";
-select(EXPORT); $|=1; select(STDOUT);
-unless ( flock(EXPORT,LOCK_EX|LOCK_NB) ) {
- seek(EXPORT,0,0);
- my($pid)=<EXPORT>;
- chop($pid);
- #no reason to start lots of blocking processes
- die "Is another export process running under pid $pid?\n";
-}
-seek(EXPORT,0,0);
-print EXPORT $$,"\n";
-
-my(@svc_domain)=qsearch('svc_domain',{});
-
-( open(MASTER,">$spooldir/master.passwd")
- and flock(MASTER,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/.master.passwd: $!";
-( open(PASSWD,">$spooldir/passwd")
- and flock(PASSWD,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/passwd: $!";
-( open(SHADOW,">$spooldir/shadow")
- and flock(SHADOW,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/shadow: $!";
-( open(ACP_PASSWD,">$spooldir/acp_passwd")
- and flock(ACP_PASSWD,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/acp_passwd: $!";
-( open(ACP_DIALUP,">$spooldir/acp_dialup")
- and flock(ACP_DIALUP,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/acp_dialup: $!";
-( open(USERS,">$spooldir/users")
- and flock(USERS,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/users: $!";
-
-( open(ASSIGN,">$spooldir/assign")
- and flock(ASSIGN,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/assign: $!";
-( open(RCPTHOSTS,">$spooldir/rcpthosts")
- and flock(RCPTHOSTS,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/rcpthosts: $!";
-( open(VPOPRCPTHOSTS,">$spooldir/vpoprcpthosts")
- and flock(VPOPRCPTHOSTS,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/rcpthosts: $!";
-( open(RECIPIENTMAP,">$spooldir/recipientmap")
- and flock(RECIPIENTMAP,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/recipientmap: $!";
-( open(VIRTUALDOMAINS,">$spooldir/virtualdomains")
- and flock(VIRTUALDOMAINS,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/virtualdomains: $!";
-( open(VPOPVIRTUALDOMAINS,">$spooldir/vpopvirtualdomains")
- and flock(VPOPVIRTUALDOMAINS,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/virtualdomains: $!";
-( open(VIRTUSERTABLE,">$spooldir/virtusertable")
- and flock(VIRTUSERTABLE,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/virtusertable: $!";
-( open(SENDMAIL_CW,">$spooldir/sendmail.cw")
- and flock(SENDMAIL_CW,LOCK_EX|LOCK_NB)
-) or die "Can't open $spooldir/sendmail.cw: $!";
-
-
-
-chmod 0644, "$spooldir/passwd",
- "$spooldir/acp_dialup",
- "$spooldir/assign",
- "$spooldir/sendmail.cw",
- "$spooldir/virtusertable",
- "$spooldir/rcpthosts",
- "$spooldir/vpoprcpthosts",
- "$spooldir/recipientmap",
- "$spooldir/virtualdomains",
- "$spooldir/vpopvirtualdomains",
-
-;
-chmod 0600, "$spooldir/master.passwd",
- "$spooldir/acp_passwd",
- "$spooldir/shadow",
- "$spooldir/users",
-;
-
-rmtree"$spooldir/domains", 0, 1;
-mkdir "$spooldir/domains", 0700;
-
-setpriority(0,0,10);
-
-print USERS "$radiusprepend\n";
-
-my %usernames; ## this hack helps keep the passwd files sane
-my @sendmail;
-
-my $svc_domain;
-foreach $svc_domain (sort {$a->domain cmp $b->domain} @svc_domain) {
-
- my($domain)=$svc_domain->domain;
- print RCPTHOSTS "$domain\n.$domain\n";
- print VPOPRCPTHOSTS "$domain\n";
- print SENDMAIL_CW "$domain\n";
-
- ###
- # FORMAT OF THE ASSIGN/USERS FILE HERE
- print ASSIGN join(":",
- "+" . $domain . "-",
- $domain,
- $vpopuid,
- $vpopgid,
- $vpopdir . "/domains/" . $domain,
- "-",
- "",
- "",
- ), "\n" if $vpopmailmachines[0];
-
- (mkdir "$spooldir/domains/" . $domain, 0700)
- or die "Can't create $spooldir/domains/" . $domain .": $!";
-
- ( open(QMAILDEFAULT,">$spooldir/domains/" . $domain . "/.qmail-default")
- and flock(QMAILDEFAULT,LOCK_EX|LOCK_NB)
- ) or die "Can't open $spooldir/domains/" . $domain . "/.qmail-default: $!";
-
- ( open(VPASSWD,">$spooldir/domains/" . $domain . "/vpasswd")
- and flock(VPASSWD,LOCK_EX|LOCK_NB)
- ) or die "Can't open $spooldir/domains/" . $domain . "/vpasswd: $!";
-
- my ($svc_acct);
-
- if ($svc_domain->getfield('catchall')) {
- $svc_acct = qsearchs('svc_acct', {'svcnum' => $svc_domain->catchall});
- die "Cannot find catchall account for domain $domain\n" unless $svc_acct;
-
- my $username = $svc_acct->username;
- push @sendmail, "\@$domain\t$username\n";
- print VIRTUALDOMAINS "$domain:$username-$domain\n",
- ".$domain:$username-$domain\n",
- ;
-
- ###
- # FORMAT OF THE .QMAIL-DEFAULT FILE HERE
- print QMAILDEFAULT "| $vpopdir/bin/vdelivermail \"\" " . $svc_acct->email . "\n"
- if $vpopmailmachines[0];
-
- }else{
- ###
- # FORMAT OF THE .QMAIL-DEFAULT FILE HERE
- print QMAILDEFAULT "| $vpopdir/bin/vdelivermail \"\" bounce-no-mailbox\n"
- if $vpopmailmachines[0];
- }
-
- print VPOPVIRTUALDOMAINS "$domain:$domain\n";
-
- foreach $svc_acct (qsearch('svc_acct', {'domsvc' => $svc_domain->svcnum})) {
- my($password)=$svc_acct->getfield('_password');
- my($cpassword,$rpassword);
- #if ( ( length($password) <= 8 )
- if ( ( length($password) <= 12 )
- && ( $password ne '*' )
- && ( $password ne '!!' )
- && ( $password ne '' )
- ) {
- $cpassword=crypt($password,
- $saltset[int(rand(64))].$saltset[int(rand(64))]
- );
- $rpassword=$password;
- } else {
- $cpassword=$password;
- $rpassword='UNIX';
- }
-
- my $username;
-
- if ($mydomain && ($mydomain eq $svc_domain->domain)) {
- $username=$svc_acct->username;
- } elsif ($userpolicy =~ /^prepend domsvc$/) {
- $username=$svc_acct->domsvc . $svc_acct->username;
- } elsif ($userpolicy =~ /^append domsvc$/) {
- $username=$svc_acct->username . $svc_acct->domsvc;
- } elsif ($userpolicy =~ /^append domain$/) {
- $username=$svc_acct->username . $svc_domain->domain;
- } elsif ($userpolicy =~ /^append domain$/) {
- $username=$svc_acct->username . $svc_domain->domain;
- } elsif ($userpolicy =~ /^append \@domain$/) {
- $username=$svc_acct->username . '@'. $svc_domain->domain;
- } else {
- die "Unknown policy in username_policy\n";
- }
-
- if ($svc_acct->dir ne '/dev/null' || $svc_acct->slipip ne '') {
- if ($usernames{$username}++) {
- die "Duplicate username detected: $username\n";
- }
- }
-
- if ( $svc_acct->uid =~ /^(\d+)$/ ) {
-
- die "Non-root user ". $svc_acct->username. " has 0 UID!"
- if $svc_acct->uid == 0 && $svc_acct->username ne 'root';
-
- if ( $svc_acct->dir ne "/dev/null") {
-
- ###
- # FORMAT OF FreeBSD MASTER PASSWD FILE HERE
- print MASTER join(":",
- $username, # User name
- $cpassword, # Encrypted password
- $svc_acct->uid, # User ID
- $svc_acct->gid, # Group ID
- "", # Login Class
- "0", # Password Change Time
- "0", # Password Expiration Time
- $svc_acct->finger, # Users name
- $svc_acct->dir, # Users home directory
- $svc_acct->shell, # shell
- ), "\n" ;
-
-
- ###
- # FORMAT OF THE PASSWD FILE HERE
- print PASSWD join(":",
- $username,
- 'x', # "##". $username,
- $svc_acct->uid,
- $svc_acct->gid,
- $svc_acct->finger,
- $svc_acct->dir,
- $svc_acct->shell,
- ), "\n";
-
- ###
- # FORMAT OF THE SHADOW FILE HERE
- print SHADOW join(":",
- $username,
- $cpassword,
- '',
- '',
- '',
- '',
- '',
- '',
- '',
- ), "\n";
- }
- }
-
- ###
- # FORMAT OF THE VPASSWD FILE HERE
- print VPASSWD join(":",
- $svc_acct->username,
- $cpassword,
- '1',
- '0',
- $svc_acct->username,
- "$vpopdir/domains/" . $svc_domain->domain ."/" . $svc_acct->username,
- 'NOQUOTA',
- ), "\n";
-
-
- if ( $svc_acct->slipip ne '' ) {
-
- ###
- # FORMAT OF THE ACP_* FILES HERE
- print ACP_PASSWD join(":",
- $username,
- $cpassword,
- "0",
- "0",
- "",
- "",
- "",
- ), "\n";
-
- my($ip)=$svc_acct->slipip;
-
- unless ( $ip eq '0.0.0.0' || $svc_acct->slipip eq '0e0' ) {
- print ACP_DIALUP $username, "\t*\t", $svc_acct->slipip, "\n";
- }
-
- my %radreply = $svc_acct->radius_reply;
- my %radcheck = $svc_acct->radius_check;
-
- my $radcheck = join ", ", map { qq($_ = "$radcheck{$_}") } keys %radcheck;
- $radcheck .= ", " if $radcheck;
-
- ###
- # FORMAT OF THE USERS FILE HERE
- print USERS
- $username,
- qq(\t${textradiusprepend}),
- $radcheck,
-# qq(Password = "$rpassword"\n\t),
- join ",\n\t", map { qq($_ = "$radreply{$_}") } keys %radreply;
-
- #if ( $ip && $ip ne '0e0' ) {
- # #print USERS qq(,\n\tFramed-Address = "$ip"\n\n);
- # print USERS qq(,\n\tFramed-IP-Address = "$ip"\n\n);
- #} else {
- print USERS qq(\n\n);
- #}
-
- }
-
- ###
- # vpopmail directory structure creation
-
- (mkdir "$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username, 0700)
- or die "Can't create $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . ": $!";
- (mkdir "$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/Maildir", 0700)
- or die "Can't create $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . " /Maildir: $!";
- (mkdir "$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/Maildir/cur", 0700)
- or die "Can't create $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . " /Maildir/cur: $!";
- (mkdir "$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/Maildir/new", 0700)
- or die "Can't create $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . " /Maildir/new: $!";
- (mkdir "$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/Maildir/tmp", 0700)
- or die "Can't create $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . " /Maildir/tmp: $!";
-
- ( open(DOTQMAIL,">$spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/.qmail")
- and flock(DOTQMAIL,LOCK_EX|LOCK_NB)
- ) or die "Can't open $spooldir/domains/" . $svc_domain->domain . "/" . $svc_acct->username . "/.qmail: $!";
-
- my($svc_forward);
- foreach $svc_forward (qsearch('svc_forward', {'srcsvc' => $svc_acct->svcnum})) {
- my($destination);
- if ($svc_forward->dstsvc) {
- my $dst_acct = qsearchs('svc_acct', {'svcnum' => $svc_forward->dstsvc});
- my $dst_domain = qsearchs('svc_domain', {'svcnum' => $dst_acct->domsvc});
- $destination = $dst_acct->username . '@' . $dst_domain->domain;
-
- if ($dst_domain->domain eq $mydomain) {
- print VIRTUSERTABLE $svc_acct->username . "@" . $svc_domain->domain .
- "\t" . $dst_acct->username . "\n";
- print RECIPIENTMAP $svc_acct->username . "@" . $svc_domain->domain .
- ":$destination\n";
- }
- } else {
- $destination = $svc_forward->dst;
- }
-
- ###
- # FORMAT OF .QMAIL FILES HERE
- print DOTQMAIL "$destination\n";
- }
-
- flock(DOTQMAIL,LOCK_UN);
- close DOTQMAIL;
-
- }
-
- flock(VPASSWD,LOCK_UN);
- flock(QMAILDEFAULT,LOCK_UN);
- close VPASSWD;
- close QMAILDEFAULT;
-
-}
-
-###
-# FORMAT OF THE ASSIGN/USERS FILE FINAL LINE HERE
-print ASSIGN ".\n";
-
-print VIRTUSERTABLE @sendmail;
-
-flock(MASTER,LOCK_UN);
-flock(PASSWD,LOCK_UN);
-flock(SHADOW,LOCK_UN);
-flock(ACP_DIALUP,LOCK_UN);
-flock(ACP_PASSWD,LOCK_UN);
-flock(USERS,LOCK_UN);
-flock(ASSIGN,LOCK_UN);
-flock(SENDMAIL_CW,LOCK_UN);
-flock(VIRTUSERTABLE,LOCK_UN);
-flock(RCPTHOSTS,LOCK_UN);
-flock(VPOPRCPTHOSTS,LOCK_UN);
-flock(RECIPIENTMAP,LOCK_UN);
-flock(VPOPVIRTUALDOMAINS,LOCK_UN);
-
-close MASTER;
-close PASSWD;
-close SHADOW;
-close ACP_DIALUP;
-close ACP_PASSWD;
-close USERS;
-close ASSIGN;
-close SENDMAIL_CW;
-close VIRTUSERTABLE;
-close RCPTHOSTS;
-close VPOPRCPTHOSTS;
-close RECIPIENTMAP;
-close VPOPVIRTUALDOMAINS;
-
-###
-# export stuff
-#
-
-my($ashellmachine);
-foreach $ashellmachine (@shellmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/passwd","root\@$ashellmachine:/etc/passwd.new")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/shadow","root\@$ashellmachine:/etc/shadow.new")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$ashellmachine",
- "( ".
- "mv /etc/passwd.new /etc/passwd; ".
- "mv /etc/shadow.new /etc/shadow; ".
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-my($bsdshellmachine);
-foreach $bsdshellmachine (@bsdshellmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/passwd","root\@$bsdshellmachine:/etc/passwd.new")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/master.passwd","root\@$bsdshellmachine:/etc/master.passwd.new")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$bsdshellmachine",
- "( ".
- "mv /etc/passwd.new /etc/passwd; ".
- #"mv /etc/master.passwd.new /etc/master.passwd; ".
- "pwd_mkdb /etc/master.passwd.new; ".
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-my($nismachine);
-foreach $nismachine (@nismachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/passwd","root\@$nismachine:/etc/global/passwd")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/shadow","root\@$nismachine:/etc/global/shadow")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$nismachine",
- "( ".
- "cd /var/yp; make; ".
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-my($erpcdmachine);
-foreach $erpcdmachine (@erpcdmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/acp_passwd","root\@$erpcdmachine:/usr/annex/acp_passwd")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/acp_dialup","root\@$erpcdmachine:/usr/annex/acp_dialup")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$erpcdmachine",
- "( ".
- "kill -USR1 \`cat /usr/annex/erpcd.pid\'".
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-my($radiusmachine);
-foreach $radiusmachine (@radiusmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/users","root\@$radiusmachine:/etc/raddb/users")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$radiusmachine",
- "( ".
- "builddbm".
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-#my @args = ("/bin/tar", "c", "--force-local", "-C", "$spooldir", "-f", "$spooldir/vpoptarball", "domains");
-
-#system {$args[0]} @args;
-
-my($vpopmailmachine);
-foreach $vpopmailmachine (@vpopmailmachines) {
- my ($machine, $vpopdir, $vpopuid, $vpopgid) = split (/\s+/, $vpopmailmachine);
- my $scp = new Net::SCP;
-# $scp->scp("$spooldir/vpoptarball","root\@$machine:vpoptarball")
-# or die "scp error: ". $scp->{errstr};
-# ssh("root\@$machine",
-# "( ".
-# "rm -rf domains; ".
-# "tar xf vpoptarball; ".
-# "chown -R $vpopuid:$vpopgid domains; ".
-# "tar cf vpoptarball domains; ".
-# "cd $vpopdir; ".
-# "tar xf ~/vpoptarball; ".
-# " )"
-# )
-# == 0 or die "ssh error: $!";
-
- chdir $spooldir;
- my @args = ("$rsync", "-rlpt", "-e", "$ssh", "domains/", "vpopmail\@$machine:$vpopdir/domains/");
-
- system {$args[0]} @args;
-
- $scp->scp("$spooldir/assign","root\@$machine:/var/qmail/users/assign")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/vpopvirtualdomains","root\@$machine:/var/qmail/control/virtualdomains")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/vpoprcpthosts","root\@$machine:/var/qmail/control/rcpthosts")
- or die "scp error: ". $scp->{errstr};
-
- ssh("root\@$machine",
- "( ".
- $vpopmailrestart .
- " )"
- )
- == 0 or die "ssh error: $!";
-
-
-}
-
-my($sendmailmachine);
-foreach $sendmailmachine (@sendmailmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/sendmail.cw","root\@$sendmailmachine:$sendmailconfigpath/sendmail.cw.new")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/virtusertable","root\@$sendmailmachine:$sendmailconfigpath/virtusertable.new")
- or die "scp error: ". $scp->{errstr};
- ssh("root\@$sendmailmachine",
- "( ".
- "mv $sendmailconfigpath/sendmail.cw.new $sendmailconfigpath/sendmail.cw; ".
- "mv $sendmailconfigpath/virtusertable.new $sendmailconfigpath/virtusertable; ".
- $sendmailrestart.
- " )"
- )
- == 0 or die "ssh error: $!";
-}
-
-my($qmailmachine);
-foreach $qmailmachine (@qmailmachines) {
- my $scp = new Net::SCP;
- $scp->scp("$spooldir/recipientmap","root\@$qmailmachine:/var/qmail/control/recipientmap")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/virtualdomains","root\@$qmailmachine:/var/qmail/control/virtualdomains")
- or die "scp error: ". $scp->{errstr};
- $scp->scp("$spooldir/rcpthosts","root\@$qmailmachine:/var/qmail/control/rcpthosts")
- or die "scp error: ". $scp->{errstr};
- #ssh("root\@$qmailmachine","/etc/init.d/qmail restart")
- # == 0 or die "ssh error: $!";
-}
-
-unlink $spoollock;
-flock(EXPORT,LOCK_UN);
-close EXPORT;
-
-#
-
-sub usage {
- die "Usage:\n\n svc_acct.export user\n";
-}
-
diff --git a/bin/svc_acct.import b/bin/svc_acct.import
deleted file mode 100755
index eb94e1c..0000000
--- a/bin/svc_acct.import
+++ /dev/null
@@ -1,238 +0,0 @@
-#!/usr/bin/perl -Tw
-# $Id: svc_acct.import,v 1.17 2001-08-19 10:25:44 ivan Exp $
-
-use strict;
-use vars qw(%part_svc);
-use Date::Parse;
-use Term::Query qw(query);
-use Net::SCP qw(iscp);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch);
-use FS::svc_acct;
-use FS::part_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-push @FS::svc_acct::shells, qw(/bin/sync /sbin/shuddown /bin/halt); #others?
-
-my($spooldir)="/usr/local/etc/freeside/export.". datasrc;
-
-$FS::svc_acct::nossh_hack = 1;
-
-###
-
-%part_svc=map { $_->svcpart, $_ } qsearch('part_svc',{'svcdb'=>'svc_acct'});
-
-die "No services with svcdb svc_acct!\n" unless %part_svc;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Most accounts probably have entries in passwd and users (with Port-Limit
-nonexistant or 1).
-END
-my($ppp_svcpart)=&getpart;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Some accounts have entries in passwd and users, but with Port-Limit 2 (or
-more).
-END
-my($isdn_svcpart)=&getpart;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Some accounts might have entries in users only (Port-Limit 1)
-END
-my($oppp_svcpart)=&getpart;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Some accounts might have entries in users only (Port-Limit >= 2)
-END
-my($oisdn_svcpart)=&getpart;
-
-print "\n\n", &menu_svc, "\n", <<END;
-POP mail accounts have entries in passwd only, and have a particular shell.
-END
-my($pop_shell)=&getvalue("Enter that shell:");
-my($popmail_svcpart)=&getpart;
-
-print "\n\n", &menu_svc, "\n", <<END;
-Everything else in passwd is a shell account.
-END
-my($shell_svcpart)=&getpart;
-
-print "\n\n", <<END;
-Enter the location and name of your _user_ passwd file, for example
-"mail.isp.com:/etc/passwd" or "nis.isp.com:/etc/global/passwd"
-END
-my($loc_passwd)=&getvalue(":");
-iscp("root\@$loc_passwd", "$spooldir/passwd.import");
-
-print "\n\n", <<END;
-Enter the location and name of your _user_ shadow file, for example
-"mail.isp.com:/etc/shadow" or "bsd.isp.com:/etc/master.passwd"
-END
-my($loc_shadow)=&getvalue(":");
-iscp("root\@$loc_shadow", "$spooldir/shadow.import");
-
-print "\n\n", <<END;
-Enter the location and name of your radius "users" file, for example
-"radius.isp.com:/etc/raddb/users"
-END
-my($loc_users)=&getvalue(":");
-iscp("root\@$loc_users", "$spooldir/users.import");
-
-sub menu_svc {
- ( join "\n", map "$_: ".$part_svc{$_}->svc, sort keys %part_svc ). "\n";
-}
-sub getpart {
- $^W=0; # Term::Query isn't -w-safe
- my $return = query "Enter part number:", 'irk', [ keys %part_svc ];
- $^W=1;
- $return;
-}
-sub getvalue {
- my $prompt = shift;
- $^W=0; # Term::Query isn't -w-safe
- my $return = query $prompt, '';
- $^W=1;
- $return;
-}
-
-print "\n\n";
-
-###
-
-open(PASSWD,"<$spooldir/passwd.import");
-open(SHADOW,"<$spooldir/shadow.import");
-open(USERS,"<$spooldir/users.import");
-
-my(%upassword,%ip,%allparam);
-my(%param,$username);
-while (<USERS>) {
- chop;
- next if /^\s*$/;
- next if /^\s*#/;
- if ( /^\S/ ) {
- /^(\w+)\s+(Auth-Type\s+=\s+Local,\s+)?Password\s+=\s+"([^"]+)"(,\s+Expiration\s+=\s+"([^"]*")\s*)?$/
- or die "1Unexpected line in users.import: $_";
- my($password,$expiration);
- ($username,$password,$expiration)=(lc($1),$3,$5);
- $password = '' if $password eq 'UNIX';
- $upassword{$username}=$password;
- undef %param;
- } else {
- die "2Unexpected line in users.import: $_";
- }
- while (<USERS>) {
- chop;
- if ( /^\s*$/ ) {
- if ( defined $param{'radius_Framed_IP_Address'} ) {
- $ip{$username} = $param{'radius_Framed_IP_Address'};
- delete $param{'radius_Framed_IP_Address'};
- } else {
- $ip{$username} = '0e0';
- }
- $allparam{$username}={ %param };
- last;
- } elsif ( /^\s+([\w\-]+)\s=\s"?([\w\.\-\s]+)"?,?\s*$/ ) {
- my($attribute,$value)=($1,$2);
- $attribute =~ s/\-/_/g;
- $param{'radius_'.$attribute}=$value;
- } else {
- die "3Unexpected line in users.import: $_";
- }
- }
-}
-#? incase there isn't a terminating blank line ?
-if ( defined $param{'radius_Framed_IP_Address'} ) {
- $ip{$username} = $param{'radius_Framed_IP_Address'};
- delete $param{'radius_Framed_IP_Address'};
-} else {
- $ip{$username} = '0e0';
-}
-$allparam{$username}={ %param };
-
-my(%password);
-while (<SHADOW>) {
- chop;
- my($username,$password)=split(/:/);
- #$password =~ s/^\!$/\*/;
- #$password =~ s/\!+/\*SUSPENDED\* /;
- $password{$username}=$password;
-}
-
-while (<PASSWD>) {
- chop;
- my($username,$x,$uid,$gid,$finger,$dir,$shell)=split(/:/);
- my($password)=$upassword{$username} || $password{$username};
-
- my($maxb)=${$allparam{$username}}{'radius_Port_Limit'};
- my($svcpart);
- if ( exists $upassword{$username} ) {
- if ( $maxb >= 2 ) {
- $svcpart = $isdn_svcpart
- } elsif ( ! $maxb || $maxb == 1 ) {
- $svcpart = $ppp_svcpart
- } else {
- die "Illegal Port-Limit in users ($username)!\n";
- }
- } elsif ( $shell eq $pop_shell ) {
- $svcpart = $popmail_svcpart;
- } else {
- $svcpart = $shell_svcpart;
- }
-
- my($svc_acct) = new FS::svc_acct ({
- 'svcpart' => $svcpart,
- 'username' => $username,
- '_password' => $password,
- 'uid' => $uid,
- 'gid' => $gid,
- 'finger' => $finger,
- 'dir' => $dir,
- 'shell' => $shell,
- 'slipip' => $ip{$username},
- %{$allparam{$username}},
- });
- my($error);
- $error=$svc_acct->insert;
- die $error if $error;
-
- delete $allparam{$username};
- delete $upassword{$username};
-}
-
-#my($username);
-foreach $username ( keys %upassword ) {
- my($password)=$upassword{$username};
-
- my($maxb)=${$allparam{$username}}{'radius_Port_Limit'} || 0;
- my($svcpart);
- if ( $maxb == 2 ) {
- $svcpart = $oisdn_svcpart
- } elsif ( ! $maxb || $maxb == 1 ) {
- $svcpart = $oppp_svcpart
- } else {
- die "Illegal Port-Limit in users!\n";
- }
-
- my($svc_acct) = new FS::svc_acct ({
- 'svcpart' => $svcpart,
- 'username' => $username,
- '_password' => $password,
- 'slipip' => $ip{$username},
- %{$allparam{$username}},
- });
- my($error);
- $error=$svc_acct->insert;
- die $error, if $error;
-
- delete $allparam{$username};
- delete $upassword{$username};
-}
-
-#
-
-sub usage {
- die "Usage:\n\n svc_acct.import user\n";
-}
-
diff --git a/bin/svc_broadband.renumber b/bin/svc_broadband.renumber
deleted file mode 100755
index 980fa00..0000000
--- a/bin/svc_broadband.renumber
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch qsearchs);
-use FS::svc_Common;
-use FS::part_svc_router;
-use FS::svc_broadband;
-use FS::router;
-use FS::addr_block;
-
-$FS::svc_Common::noexport_hack = 1; #Disable exports!
-
-my $user = shift if $ARGV[0] or die &usage;
-adminsuidsetup($user);
-
-my $remapfile = shift if $ARGV[0] or die &usage;
-my $old_blocknum = shift if $ARGV[0] or die &usage;
-my $new_blocknum = shift if $ARGV[0] or die &usage;
-my $old_svcnum = shift if $ARGV[0];
-
-my %ipmap;
-
-open(REMAP, "<$remapfile") or die $!;
-while (<REMAP>) {
- next unless (/^([0-9\.]+)\s+([0-9\.]+)$/);
- my ($old_ip, $new_ip) = ($1, $2);
- $ipmap{$old_ip} = $new_ip;
-}
-close(REMAP);
-
-my @svcs;
-if ($old_svcnum) {
- @svcs = ( qsearchs('svc_broadband', { svcnum => $old_svcnum,
- blocknum => $old_blocknum }) );
-} else {
- @svcs = qsearch('svc_broadband', { blocknum => $old_blocknum });
-}
-
-foreach my $old_sb (@svcs) {
-
- my $old_ip = $old_sb->ip_addr;
- my $new_ip = $ipmap{$old_ip};
- print "Renumbering ${old_ip} (${old_blocknum}) => ${new_ip} (${new_blocknum})...\n";
-
-
- my $new_sb = new FS::svc_broadband
- { $old_sb->hash,
- ip_addr => $new_ip,
- blocknum => $new_blocknum,
- svcpart => $old_sb->cust_svc->svcpart,
- };
-
- my $error = $new_sb->replace($old_sb);
- die $error if $error;
-
-}
-
-
-
-exit(0);
-
-sub usage {
-
- my $usage = <<EOT;
-Usage:
- svc_broadband.renumber user remapfile old_blocknum new_blocknum [ svcnum ]
-
-remapfile format:
-old_ip_address new_ip_address
-...
-
-Example remapfile:
-10.0.0.5 192.168.0.5
-10.0.0.20 192.168.0.20
-10.0.0.32 192.168.0.3
-
-Warning: This assumes your routers have already been reconfigured with the
- new addresses. Exports will not be run!
-
-EOT
-
-}
diff --git a/bin/svc_domain.erase b/bin/svc_domain.erase
deleted file mode 100755
index c023661..0000000
--- a/bin/svc_domain.erase
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/perl -w
-#
-# $Id: svc_domain.erase,v 1.1 2002-04-20 11:57:35 ivan Exp $
-
-use strict;
-use FS::UID qw(adminsuidsetup);
-use FS::Record qw(qsearch);
-
-use FS::domain_record;
-use FS::svc_domain;
-
-adminsuidsetup(shift @ARGV) or die "Usage: svc_domain.erase user\n";
-
-foreach my $record ( qsearch('domain_record',{}), qsearch('svc_domain', {} ) ) {
- my $error = $record->delete;
- die $error if $error;
-}
diff --git a/bin/sysvshell.export b/bin/sysvshell.export
deleted file mode 100755
index c13912c..0000000
--- a/bin/sysvshell.export
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/usr/bin/perl -w
-
-# sysvshell export
-
-use strict;
-use File::Rsync;
-use Net::SSH qw(ssh);
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(qsearch qsearchs);
-use FS::part_export;
-use FS::cust_svc;
-use FS::svc_acct;
-
-my @saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-my $spooldir = "/usr/local/etc/freeside/export.". datasrc;
-#my $spooldir = "/usr/local/etc/freeside/export.". datasrc. "/shell";
-
-my @sysv_exports = qsearch('part_export', { 'exporttype' => 'sysvshell' } );
-
-my $rsync = File::Rsync->new({
- rsh => 'ssh',
-# dry_run => 1,
-});
-
-foreach my $export ( @sysv_exports ) {
- my $machine = $export->machine;
- my $prefix = "$spooldir/$machine";
- mkdir $prefix, 0700 unless -d $prefix;
-
- #LOCKING!!!
-
- ( open(SHADOW,">$prefix/shadow")
- #!!! and flock(SHADOW,LOCK_EX|LOCK_NB)
- ) or die "Can't open $prefix/shadow: $!";
- ( open(PASSWD,">$prefix/passwd")
- #!!! and flock(PASSWD,LOCK_EX|LOCK_NB)
- ) or die "Can't open $prefix/passwd: $!";
-
- chmod 0644, "$prefix/passwd";
- chmod 0600, "$prefix/shadow";
-
- my @svc_acct = $export->svc_x;
-
- next unless @svc_acct;
-
- foreach my $svc_acct ( sort { $a->uid <=> $b->uid } @svc_acct ) {
-
- my $password = $svc_acct->_password;
- my $cpassword;
- #if ( ( length($password) <= 8 )
- if ( ( length($password) <= 12 )
- && ( $password ne '*' )
- && ( $password ne '!!' )
- && ( $password ne '' )
- ) {
- $cpassword=crypt($password,
- $saltset[int(rand(64))].$saltset[int(rand(64))]
- );
- # MD5 !!!!
- } else {
- $cpassword=$password;
- }
-
- ###
- # FORMAT OF THE PASSWD FILE HERE
- print PASSWD join(":",
- $svc_acct->username,
- 'x', # "##". $username,
- $svc_acct->uid,
- $svc_acct->gid,
- $svc_acct->finger,
- $svc_acct->dir,
- $svc_acct->shell,
- ), "\n";
-
- ###
- # FORMAT OF THE SHADOW FILE HERE
- print SHADOW join(":",
- $svc_acct->username,
- $cpassword,
- '',
- '',
- '',
- '',
- '',
- '',
- '',
- ), "\n";
-
- }
-
- #!!! flock(SHADOW,LOCK_UN);
- #!!! flock(PASSWD,LOCK_UN);
- close SHADOW;
- close PASSWD;
-
- $rsync->exec( {
- src => "$prefix/shadow",
- dest => "root\@$machine:/etc/shadow"
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-
- $rsync->exec( {
- src => "$prefix/passwd",
- dest => "root\@$machine:/etc/passwd"
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
-
- # UNLOCK!!
-}
diff --git a/conf/agent_defaultpkg b/conf/agent_defaultpkg
deleted file mode 100644
index e69de29..0000000
--- a/conf/agent_defaultpkg
+++ /dev/null
diff --git a/conf/alerter_template b/conf/alerter_template
deleted file mode 100644
index 5177e4e..0000000
--- a/conf/alerter_template
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-Ivan Kohler
-12345 Test Lane
-Truckee, CA 96161
-
-
-{ $first; } { $last; }:
-
- We thank you for your continuing patronage. This notice is to remind you
-that your { $payby } used to pay SISD.COM for Internet
-service will expire on { use Date::Format; time2str("%x", $expdate); }. Please provide us with new billing
-information so that we may continue your service uninterrupted.
-
-Very Truly Yours,
-
- SISD Service Team
-
-
-
diff --git a/conf/cust_pkg-change_svcpart b/conf/cust_pkg-change_svcpart
deleted file mode 100644
index e69de29..0000000
--- a/conf/cust_pkg-change_svcpart
+++ /dev/null
diff --git a/conf/declinetemplate b/conf/declinetemplate
deleted file mode 100644
index 14b8c60..0000000
--- a/conf/declinetemplate
+++ /dev/null
@@ -1,10 +0,0 @@
-Hi,
-
-Your credit card could not be processed for the following reason:
- { $error }
-
-Please provide us with new billing information so that we may continue your
-service uninterrupted.
-
-Thanks.
-
diff --git a/conf/home b/conf/home
deleted file mode 100644
index 05280cb..0000000
--- a/conf/home
+++ /dev/null
@@ -1 +0,0 @@
-/home
diff --git a/conf/invoice_from b/conf/invoice_from
deleted file mode 100644
index 110ec8f..0000000
--- a/conf/invoice_from
+++ /dev/null
@@ -1 +0,0 @@
-ivan-unconfigured-freeside-installation@420.am
diff --git a/conf/invoice_html b/conf/invoice_html
deleted file mode 100644
index 32e5362..0000000
--- a/conf/invoice_html
+++ /dev/null
@@ -1,131 +0,0 @@
-<STYLE TYPE="text/css">
-.invoice { font-family: sans-serif; font-size: 10pt }
-.invoice_header { font-size: 10pt }
-.invoice_headerright TH { border-top: 2px solid #000000; border-bottom: 2px solid #000000 }
-.invoice_headerright TD { font-size: 10pt; empty-cells: show }
-.invoice_longtable table { cellspacing: none }
-.invoice_longtable TH { border-top: 2px solid #000000; border-bottom: 1px solid #000000; padding-left: none; padding-right: none; font-size: 10pt }
-.invoice_desc TD { border-top: 2px solid #000000; font-weight: bold; font-size: 10pt }
-.invoice_extdesc TD { font-size: 8pt }
-.invoice_totaldesc TD { font-size: 10pt; empty-cells: show }
-</STYLE>
-
-<table class="invoice" bgcolor="#ffffff" WIDTH=768 CELLSPACING=8><tr><td>
-
- <table class="invoice_header" width="100%">
- <tr>
- <td><img src="<%= $cid ? "cid:$cid" : "cust_bill-logo.cgi?$template" %>"></td>
- <td align="left"><%= $returnaddress %></td>
- <td align="right">
- <table CLASS="invoice_headerright" cellspacing=0>
- <tr>
- <td align="right">
- Invoice&nbsp;date<BR>
- <B><%= $date %></B>
- </td>
- <td>
- </td>
- <td align="left">
- Invoice&nbsp;number<BR>
- <B><%= $invnum %></B>
- </td>
- </tr>
- <tr>
- <th>&nbsp;</th>
- <th colspan=1 align="center">
- <FONT SIZE="+3">I</FONT><FONT SIZE="+2">NVOICE</FONT>
- </th>
- <th>&nbsp;</th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- <td align="left">
- <b><%= $payname %></b><BR>
- <%= join('<BR>', grep length($_), $company,
- $address1,
- $address2,
- "$city,&nbsp;$state&nbsp;&nbsp;$zip",
- $country,
- )
- %>
- </td>
- <td align="right">
- Terms: <%= $terms %><BR>
- <%= $po_line %>
- </td>
- </tr>
-
- </table>
-
- <p><b><font size="+1">C</font><font size="+0">HARGES</font></b>
- <p>
- <table class="invoice_longtable" CELLSPACING=0 WIDTH="100%">
- <tr>
- <th align="center">Ref</th>
- <th align="left">Description</th>
- <th align="right">Amount</th>
- </tr>
- <%=
-
- foreach my $line ( @detail_items ) {
- $OUT .=
- '<tr class="invoice_desc">'.
- '<td align="center">'. $line->{'ref'}. '</td>'.
- '<td align="left">'. $line->{'description'}. '</td>'.
- '<td align="right">'. $line->{'amount'}. '</td>'.
- '</tr>'
- ;
- foreach my $ext_desc ( @{$line->{'ext_description'} } ) {
- $OUT .=
- '<tr class="invoice_extdesc">'.
- '<td></td>'.
- '<td align="left">-&nbsp;'. $ext_desc. '</td>'.
- '<td></td>'.
- '</tr>'
- }
- }
-
- my $style = 'border-top: 3px solid #000000;';
- my $linenum = 0;
-
- foreach my $line ( @total_items ) {
-
- $style .= 'border-bottom: 3px solid #000000;'
- if ++$linenum == scalar(@total_items);
-
- $OUT .=
- '<tr class="invoice_totaldesc">'.
- qq(<td style="$style">&nbsp;</td>).
- qq(<td align="left" style="$style">).
- $line->{'total_item'}. '</td>'.
- qq(<td align="right" style="$style">).
- $line->{'total_amount'}. '</td>'.
- '</tr>'
- ;
-
- $style='';
-
- }
-
- %>
- </table>
- <br><br>
-
-<!-- <p><b><font size="+1">N</font><font size="+0">OTES</font></b>
-
- <ol>
- <li>Please make your check payable to <b>Ivan Kohler</b>
- <li>If you have any questions please email or telephone.
- </ol>
--->
-<%= $notes %>
-
- <hr NOSHADE SIZE=2 COLOR="#000000">
- <p align="center"><%= $footer %>
-
-</td></tr></table>
diff --git a/conf/invoice_latex b/conf/invoice_latex
deleted file mode 100644
index d1b471a..0000000
--- a/conf/invoice_latex
+++ /dev/null
@@ -1,244 +0,0 @@
-%% file: Standard Multipage.tex
-%% Purpose: Multipage bill template for e-Bills
-%%
-%% Created by Mark Asplen-Taylor
-%% Asplen Management Ltd
-%% www.asplen.co.uk
-%%
-%% Modified for Freeside by Kristian Hoffman
-%%
-%% Changes
-%% 0.1 4/12/00 Created
-%% 0.2 18/10/01 More fields added
-%% 1.0 16/11/01 RELEASED
-%% 1.2 16/10/02 Invoice number added
-%% 1.3 2/12/02 Logo graphic added
-%% 1.4 7/2/03 Multipage headers/footers added
-%% n/a forked for Freeside; checked into CVS
-%%
-
-\documentclass[letterpaper]{article}
-
-\usepackage{fancyhdr,lastpage,ifthen,longtable,afterpage}
-\usepackage{graphicx} % required for logo graphic
-
-\addtolength{\voffset}{-0.0cm} % top margin to top of header
-\addtolength{\hoffset}{-0.6cm} % left margin on page
-\addtolength{\topmargin}{-1.25cm} % top margin to top of header
-\setlength{\headheight}{2.0cm} % height of header
-\setlength{\headsep}{1.0cm} % between header and text
-\setlength{\footskip}{1.0cm} % bottom of footer from bottom of text
-
-%\addtolength{\textwidth}{2.1in} % width of text
-\setlength{\textwidth}{19.5cm}
-\setlength{\textheight}{19.5cm}
-\setlength{\oddsidemargin}{-0.9cm} % odd page left margin
-\setlength{\evensidemargin}{-0.9cm} % even page left margin
-
-\renewcommand{\headrulewidth}{0pt}
-\renewcommand{\footrulewidth}{1pt}
-
-% Adjust the inset of the mailing address
-\newcommand{\addressinset}[1][]{\hspace{1.0cm}}
-
-% Adjust the inset of the return address and logo
-\newcommand{\returninset}[1][]{\hspace{-0.25cm}}
-
-% New command for address lines i.e. skip them if blank
-\newcommand{\addressline}[1]{\ifthenelse{\equal{#1}{}}{}{#1\newline}}
-
-% Inserts dollar symbol
-\newcommand{\dollar}[1][]{\symbol{36}}
-
-% Remove plain style header/footer
-\fancypagestyle{plain}{
- \fancyhead{}
-}
-\fancyhf{}
-
-% Define fancy header/footer for first and subsequent pages
-\fancyfoot[C]{
- \ifthenelse{\equal{\thepage}{1}}
- { % First page
- \small{
-[@-- $footer --@]
- }
- }
- { % ... pages
- \small{
-[@-- $smallfooter --@]
- }
- }
-}
-
-\fancyfoot[R]{
- \ifthenelse{\equal{\thepage}{1}}
- { % First page
- }
- { % ... pages
- \small{\thepage\ of \pageref{LastPage}}
- }
-}
-
-\fancyhead[L]{
- \ifthenelse{\equal{\thepage}{1}}
- { % First page
- \returninset
- \makebox{
- \begin{tabular}{ll}
- \includegraphics{[@-- $conf_dir --@]/logo.eps} &
- \begin{minipage}[b]{5.5cm}
-[@-- $returnaddress --@]
- \end{minipage}
- \end{tabular}
- }
- }
- { % ... pages
- %\includegraphics{[@-- $conf_dir --@]/logo.eps} % Uncomment if you want the logo on all pages.
- }
-}
-
-\fancyhead[R]{
- \ifthenelse{\equal{\thepage}{1}}
- { % First page
- \begin{tabular}{rcl}
- Invoice date & & Invoice number \\
- \vspace{0.2cm}
- \textbf{[@-- $date --@]} & & \textbf{[@-- $invnum --@]} \\\hline
- \rule{0pt}{5ex} &~~ \huge{\textsc{Invoice}} & \\
- \vspace{-0.2cm}
- & & \\\hline
- \end{tabular}
- }
- { % ... pages
- \small{
- \begin{tabular}{ll}
- Invoice date & Invoice number\\
- \textbf{[@-- $date --@]} & \textbf{[@-- $invnum --@]}\\
- \end{tabular}
- }
- }
-}
-
-\pagestyle{fancy}
-
-
-%% Font options are:
-%% bch Bitsream Charter
-%% put Utopia
-%% phv Adobe Helvetica
-%% pnc New Century Schoolbook
-%% ptm Times
-%% pcr Courier
-
-\renewcommand{\familydefault}{phv}
-
-
-% Commands for freeside description...
-\newcommand{\FSdesc}[3]{
- \multicolumn{1}{c}{\rule{0pt}{2.5ex}\textbf{#1}} &
- \textbf{#2} &
- \multicolumn{1}{r}{\textbf{\dollar #3}}\\
-}
-% ...extended description...
-\newcommand{\FSextdesc}[1]{
- \multicolumn{1}{l}{\rule{0pt}{1.0ex}} &
- \multicolumn{2}{l}{\small{~-~#1}}\\
-}
-% ...and total line items.
-\newcommand{\FStotaldesc}[2]{
- & \multicolumn{1}{l}{#1} & #2\\
-}
-
-
-\begin{document}
-%
-%% Headers and footers defined for the first page
-%
-%% The LH Heading comprising logo
-%% UNCOMMENT the following FOUR lines and change the path if necssary to provide a logo
-%
-%% The Heading comprising isue date, customer ref & INVOICE name
-%
-%% Header & footer changes for subsequent pages
-%
-%
-%
-\begin{tabular}{ll}
-\addressinset \rule{0cm}{0cm} &
-\makebox{
-\begin{minipage}[t]{5.0cm}
-\vspace{0.25cm}
-\textbf{[@-- $payname --@]}\\
-\addressline{[@-- $company --@]}
-\addressline{[@-- $address1 --@]}
-\addressline{[@-- $address2 --@]}
-\addressline{[@-- $city --@], [@-- $state --@]~~[@-- $zip --@]}
-\addressline{[@-- $country --@]}
-\end{minipage}}
-\end{tabular}
-\hfill
-\makebox{
-\begin{minipage}[t]{6.4cm}
-\begin{flushright}
-Terms: [@-- $terms --@]\\
-[@-- $po_line --@]\\
-\end{flushright}
-\end{minipage}}
-\vspace{1.5cm}
-%
-\section*{\textsc{Charges}}
-\begin{longtable}{clr}
-\hline
-\rule{0pt}{2.5ex}
-\makebox[1.4cm]{\textbf{Ref}} &
-\makebox[12.8cm][l]{\textbf{Description}} &
-\makebox[2.5cm][r]{\textbf{Amount}} \\
-\hline
-\endfirsthead
-\multicolumn{3}{r}{\rule{0pt}{2.5ex}Continued from previous page}\\
-\hline
-\rule{0pt}{2.5ex}
-\makebox[1.4cm]{\textbf{Ref}} &
-\makebox[12.8cm][l]{\textbf{Description}} &
-\makebox[2.5cm][r]{\textbf{Amount}} \\
-\hline
-\endhead
-\multicolumn{3}{r}{\rule{0pt}{2.5ex}Continued on next page...}\\
-\endfoot
-\hline
-[@--
-
- foreach my $line (@total_items) {
- $OUT .= '\FStotaldesc{' . $line->{'total_item'} . '}' .
- '{' . $line->{'total_amount'} . '}' . "\n";
- }
-
---@]
-\hline
-\endlastfoot
-[@--
-
- foreach my $line (@detail_items) {
- my $ext_description = $line->{'ext_description'};
-
- # Don't break-up small packages.
- my $rowbreak = @$ext_description < 5 ? '*' : '';
-
- $OUT .= "\\hline\n";
- $OUT .= '\FSdesc{' . $line->{'ref'} . '}{' . $line->{'description'} . '}' .
- '{' . $line->{'amount'} . "}${rowbreak}\n";
-
- foreach my $ext_desc (@$ext_description) {
- $ext_desc = substr($ext_desc, 0, 80) . '...'
- if (length($ext_desc) > 80);
- $OUT .= '\FSextdesc{' . $ext_desc . '}' . "${rowbreak}\n";
- }
-
- }
-
---@]
-\end{longtable}
-\vfill
-[@-- $notes --@]
-\end{document}
diff --git a/conf/invoice_latex.diff b/conf/invoice_latex.diff
deleted file mode 100644
index b66a522..0000000
--- a/conf/invoice_latex.diff
+++ /dev/null
@@ -1,138 +0,0 @@
---- invoice_latex.old 2005-04-14 01:52:02.000000000 -0700
-+++ invoice_latex 2005-04-14 02:33:26.000000000 -0700
-@@ -5,7 +5,7 @@
- %% Asplen Management Ltd
- %% www.asplen.co.uk
- %%
--%% Modified for Freeside by Ivan Kohler
-+%% Modified for Freeside by Ivan Kohler and Kristian Hoffman
- %%
- %% Changes
- %% 0.1 4/12/00 Created
-@@ -61,7 +61,7 @@
- %% Headers and footers defined for the first page
- \fancyfoot[CO,CE]{\small{
- \begin{tabular}{c}
--$footer
-+[@-- $footer --@]
- \end{tabular}}}
- %
- %% The LH Heading comprising logo
-@@ -76,7 +76,7 @@
- \begin{tabular}{rcl}
- Invoice date & & Invoice number \\
- \vspace{0.2cm}
--\textbf{$date} & & \textbf{$invnum} \\\hline
-+\textbf{[@-- $date --@]} & & \textbf{[@-- $invnum --@]} \\\hline
- \rule{0pt}{5ex} &~~ \huge{\textsc{Invoice}}& \\
- \vspace{-0.2cm}
- & & \\\hline
-@@ -85,71 +85,76 @@
- %% Header & footer changes for subsequent pages
- %
- \afterpage{ \fancyfoot[RO,RE]{\small{\thepage\ of \pageref{LastPage}}} }
--\afterpage{ \fancyfoot[CO,CE]{\small{$smallfooter}} }
-+\afterpage{ \fancyfoot[CO,CE]{\small{[@-- $smallfooter --@]}} }
- \afterpage{ \fancyhead[LO,LE]{\small{}} }
- \afterpage{ \fancyhead[RO,RE]{\small{
- \begin{tabular}{ll}
- Invoice date & Invoice number\\
--\textbf{$date} & \textbf{$invnum}\\
-+\textbf{[@-- $date --@]} & \textbf{[@-- $invnum --@]}\\
- \end{tabular}}} }
- %
- %
- \makebox{
- \begin{minipage}[t]{2.9in}
- \vspace{0.20in}
--\textbf{$payname}\\
--\addressline{$company}
--\addressline{$address1}
--\addressline{$address2}
--\addressline{$city, $state $zip}
--\addressline{$country}
-+\textbf{[@-- $payname --@]}\\
-+\addressline{[@-- $company --@]}
-+\addressline{[@-- $address1 --@]}
-+\addressline{[@-- $address2 --@]}
-+\addressline{[@-- $city --@], [@-- $state --@] [@-- $zip --@]}
-+\addressline{[@-- $country --@]}
- \end{minipage}}
- \hfill
- \makebox{
- \begin{minipage}[t]{2.5in}
- \begin{flushright}
--Terms: $terms\\
--$po_line\\
-+Terms: [@-- $terms --@]\\
-+[@-- $po_line --@]\\
- \end{flushright}
- \end{minipage}}
- \vspace{0.5cm}
- %
- \section*{\textsc{Charges}}
--\begin{longtable}{|c|l|c|r|r|}
-+\begin{longtable}{|c|l|r|}
- \hline
- \rule{0pt}{2.5ex}
- \makebox[1.4cm]{\textbf{Ref}} &
--\makebox[7.9cm][l]{\textbf{Description}} &
--\makebox[1.3cm][c]{\textbf{Quantity}} &
--\makebox[2.5cm][r]{\textbf{Unit Price}} &
--\makebox[2.5cm][r]{\textbf{Amount}} \\
-+\makebox[13cm][l]{\textbf{Description}} &
-+\makebox[2cm][r]{\textbf{Amount}} \\
- \hline
- \endfirsthead
--\multicolumn{5}{r}{\rule{0pt}{2.5ex}Continued from previous page}\\
-+\multicolumn{3}{r}{\rule{0pt}{2.5ex}Continued from previous page}\\
- \hline
- \rule{0pt}{2.5ex}
- \makebox[1.4cm]{\textbf{Ref}} &
--\makebox[7.9cm][l]{\textbf{Description}} &
--\makebox[1.3cm][c]{\textbf{Quantity}} &
--\makebox[2.5cm][r]{\textbf{Unit Price}} &
--\makebox[2.5cm][r]{\textbf{Amount}} \\
-+\makebox[13cm][l]{\textbf{Description}} &
-+\makebox[2cm][r]{\textbf{Amount}} \\
- \hline
- \endhead
--\multicolumn{5}{r}{\rule{0pt}{2.5ex}/cont...}\\
-+\multicolumn{3}{r}{\rule{0pt}{2.5ex}/cont...}\\
- \endfoot
--%%TotalDetails
-- & \multicolumn{3}{l}{$total_item} & $total_amount\\
--%%EndTotalDetails
-+[@--
-+
-+ foreach my $line (@total_items) {
-+ $OUT .= ' & \multicolumn{1}{l}{' . $line->{'total_item'} . '} & ' .
-+ $line->{'total_amount'} . '\\\\' . "\n";
-+ }
-+
-+--@]
- \hline
- \endlastfoot
--%%Detail
--\rule{0pt}{2.5ex}$ref &
--\begin{tabular}{l}
--$description\tabularnewline
--\end{tabular}
--& $quantity & \dollar $amount & \dollar $amount\\\hline
--%%EndDetail
-+[@--
-+
-+ foreach my $line (@detail_items) {
-+ $OUT .= '\rule{0pt}{2.5ex}' . $line->{'ref'} . ' &' . "\n".
-+ '\begin{tabular}{l}' . "\n".
-+ $line->{'description'} . '\tabularnewline' . "\n".
-+ '\end{tabular}' . "\n".
-+ '& \dollar ' . $line->{'amount'} . '\\\\\\hline' . "\n";
-+ }
-+
-+--@]
- \end{longtable}
- \vfill
--$notes
-+[@-- $notes --@]
- \end{document}
diff --git a/conf/invoice_latexfooter b/conf/invoice_latexfooter
deleted file mode 100644
index 527c356..0000000
--- a/conf/invoice_latexfooter
+++ /dev/null
@@ -1 +0,0 @@
-Ivan Kohler~~~Freeside - open-source billing
diff --git a/conf/invoice_latexnotes b/conf/invoice_latexnotes
deleted file mode 100644
index 46af6d6..0000000
--- a/conf/invoice_latexnotes
+++ /dev/null
@@ -1,8 +0,0 @@
-%%
-%% Add any customer specific notes in here
-%%
-\section*{\textsc{Notes}}
-\begin{enumerate}
-\item Please make your check payable to \textbf{Ivan Kohler}.
-\item If you have any questions please email or telephone.
-\end{enumerate}
diff --git a/conf/invoice_latexreturnaddress b/conf/invoice_latexreturnaddress
deleted file mode 100644
index 95067e2..0000000
--- a/conf/invoice_latexreturnaddress
+++ /dev/null
@@ -1,3 +0,0 @@
-Ivan Kohler\\*
-12345 Test Lane\\*
-Truckee, CA~~96161
diff --git a/conf/invoice_latexsmallfooter b/conf/invoice_latexsmallfooter
deleted file mode 100644
index 527c356..0000000
--- a/conf/invoice_latexsmallfooter
+++ /dev/null
@@ -1 +0,0 @@
-Ivan Kohler~~~Freeside - open-source billing
diff --git a/conf/invoice_template b/conf/invoice_template
deleted file mode 100644
index 4b2c64b..0000000
--- a/conf/invoice_template
+++ /dev/null
@@ -1,27 +0,0 @@
-
- Invoice
- { substr("Page $page of $total_pages ", 0, 19); } { use Date::Format; time2str("%x", $date); } FS-{ $invnum; }
-
-
-Ivan Kohler
-12345 Test Lane
-Truckee, CA 96161
-
-
-{ $address[0]; }
-{ $address[1]; }
-{ $address[2]; }
-{ $address[3]; }
-{ $address[4]; }
-{ $address[5]; }
-
-{
- join("\n",
- map {
- my ( $desc, $price ) = @{$_};
- " ". substr( $desc. " "x65, 0, 65). " ". substr( $price. " "x11, 0, 11);
- } invoice_lines(31)
- );
-}
-
- -=> Freeside - open-source billing for ISPs - http://www.sisd.com/freeside <=-
diff --git a/conf/locale b/conf/locale
deleted file mode 100644
index 7741b83..0000000
--- a/conf/locale
+++ /dev/null
@@ -1 +0,0 @@
-en_US
diff --git a/conf/logo.eps b/conf/logo.eps
deleted file mode 100644
index ff25dd4..0000000
--- a/conf/logo.eps
+++ /dev/null
@@ -1,13510 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%HiResBoundingBox: 261.500000 345.500000 418.500000 446.500000
-%%Creator: xpdf/pdftops 3.00
-%%LanguageLevel: 2
-%%DocumentMedia: plain 612 792 0 () ()
-%%BoundingBox: 19 0 70 33
-%%EndComments
-%%BeginProcSet: epsffit 1 0
-gsave
--65.000 -111.618 translate
-0.324 0.324 scale
-%%EndProcSet
-
-% EPSF created by ps2eps 1.54
-%%BeginProlog
-save
-countdictstack
-mark
-newpath
-/showpage {} def
-/setpagedevice {pop} def
-%%EndProlog
-%%Page 1 1
-/xpdf 75 dict def xpdf begin
-% PDF special state
-/pdfDictSize 15 def
-/pdfSetup {
- 3 1 roll 2 array astore
- /setpagedevice where {
- pop 3 dict begin
- /PageSize exch def
- /ImagingBBox null def
- /Policies 1 dict dup begin /PageSize 3 def end def
- { /Duplex true def } if
- currentdict end setpagedevice
- } {
- pop pop
- } ifelse
-} def
-/pdfStartPage {
- pdfDictSize dict begin
- /pdfFill [0] def
- /pdfStroke [0] def
- /pdfLastFill false def
- /pdfLastStroke false def
- /pdfTextMat [1 0 0 1 0 0] def
- /pdfFontSize 0 def
- /pdfCharSpacing 0 def
- /pdfTextRender 0 def
- /pdfTextRise 0 def
- /pdfWordSpacing 0 def
- /pdfHorizScaling 1 def
- /pdfTextClipPath [] def
-} def
-/pdfEndPage { end } def
-% separation convention operators
-/findcmykcustomcolor where {
- pop
-}{
- /findcmykcustomcolor { 5 array astore } def
-} ifelse
-/setcustomcolor where {
- pop
-}{
- /setcustomcolor {
- exch
- [ exch /Separation exch dup 4 get exch /DeviceCMYK exch
- 0 4 getinterval cvx
- [ exch /dup load exch { mul exch dup } /forall load
- /pop load dup ] cvx
- ] setcolorspace setcolor
- } def
-} ifelse
-/customcolorimage where {
- pop
-}{
- /customcolorimage {
- gsave
- [ exch /Separation exch dup 4 get exch /DeviceCMYK exch
- 0 4 getinterval
- [ exch /dup load exch { mul exch dup } /forall load
- /pop load dup ] cvx
- ] setcolorspace
- 10 dict begin
- /ImageType 1 def
- /DataSource exch def
- /ImageMatrix exch def
- /BitsPerComponent exch def
- /Height exch def
- /Width exch def
- /Decode [1 0] def
- currentdict end
- image
- grestore
- } def
-} ifelse
-% PDF color state
-/sCol {
- pdfLastStroke not {
- pdfStroke aload length
- dup 1 eq {
- pop setgray
- }{
- dup 3 eq {
- pop setrgbcolor
- }{
- 4 eq {
- setcmykcolor
- }{
- findcmykcustomcolor exch setcustomcolor
- } ifelse
- } ifelse
- } ifelse
- /pdfLastStroke true def /pdfLastFill false def
- } if
-} def
-/fCol {
- pdfLastFill not {
- pdfFill aload length
- dup 1 eq {
- pop setgray
- }{
- dup 3 eq {
- pop setrgbcolor
- }{
- 4 eq {
- setcmykcolor
- }{
- findcmykcustomcolor exch setcustomcolor
- } ifelse
- } ifelse
- } ifelse
- /pdfLastFill true def /pdfLastStroke false def
- } if
-} def
-% build a font
-/pdfMakeFont {
- 4 3 roll findfont
- 4 2 roll matrix scale makefont
- dup length dict begin
- { 1 index /FID ne { def } { pop pop } ifelse } forall
- /Encoding exch def
- currentdict
- end
- definefont pop
-} def
-/pdfMakeFont16 {
- exch findfont
- dup length dict begin
- { 1 index /FID ne { def } { pop pop } ifelse } forall
- /WMode exch def
- currentdict
- end
- definefont pop
-} def
-/pdfMakeFont16L3 {
- 1 index /CIDFont resourcestatus {
- pop pop 1 index /CIDFont findresource /CIDFontType known
- } {
- false
- } ifelse
- {
- 0 eq { /Identity-H } { /Identity-V } ifelse
- exch 1 array astore composefont pop
- } {
- pdfMakeFont16
- } ifelse
-} def
-% graphics state operators
-/q { gsave pdfDictSize dict begin } def
-/Q { end grestore } def
-/cm { concat } def
-/d { setdash } def
-/i { setflat } def
-/j { setlinejoin } def
-/J { setlinecap } def
-/M { setmiterlimit } def
-/w { setlinewidth } def
-% color operators
-/g { dup 1 array astore /pdfFill exch def setgray
- /pdfLastFill true def /pdfLastStroke false def } def
-/G { dup 1 array astore /pdfStroke exch def setgray
- /pdfLastStroke true def /pdfLastFill false def } def
-/rg { 3 copy 3 array astore /pdfFill exch def setrgbcolor
- /pdfLastFill true def /pdfLastStroke false def } def
-/RG { 3 copy 3 array astore /pdfStroke exch def setrgbcolor
- /pdfLastStroke true def /pdfLastFill false def } def
-/k { 4 copy 4 array astore /pdfFill exch def setcmykcolor
- /pdfLastFill true def /pdfLastStroke false def } def
-/K { 4 copy 4 array astore /pdfStroke exch def setcmykcolor
- /pdfLastStroke true def /pdfLastFill false def } def
-/ck { 6 copy 6 array astore /pdfFill exch def
- findcmykcustomcolor exch setcustomcolor
- /pdfLastFill true def /pdfLastStroke false def } def
-/CK { 6 copy 6 array astore /pdfStroke exch def
- findcmykcustomcolor exch setcustomcolor
- /pdfLastStroke true def /pdfLastFill false def } def
-% path segment operators
-/m { moveto } def
-/l { lineto } def
-/c { curveto } def
-/re { 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto
- neg 0 rlineto closepath } def
-/h { closepath } def
-% path painting operators
-/S { sCol stroke } def
-/Sf { fCol stroke } def
-/f { fCol fill } def
-/f* { fCol eofill } def
-% clipping operators
-/W { clip newpath } def
-/W* { eoclip newpath } def
-% text state operators
-/Tc { /pdfCharSpacing exch def } def
-/Tf { dup /pdfFontSize exch def
- dup pdfHorizScaling mul exch matrix scale
- pdfTextMat matrix concatmatrix dup 4 0 put dup 5 0 put
- exch findfont exch makefont setfont } def
-/Tr { /pdfTextRender exch def } def
-/Ts { /pdfTextRise exch def } def
-/Tw { /pdfWordSpacing exch def } def
-/Tz { /pdfHorizScaling exch def } def
-% text positioning operators
-/Td { pdfTextMat transform moveto } def
-/Tm { /pdfTextMat exch def } def
-% text string operators
-/cshow where {
- pop
- /cshow2 {
- dup {
- pop pop
- 1 string dup 0 3 index put 3 index exec
- } exch cshow
- pop pop
- } def
-}{
- /cshow2 {
- currentfont /FontType get 0 eq {
- 0 2 2 index length 1 sub {
- 2 copy get exch 1 add 2 index exch get
- 2 copy exch 256 mul add
- 2 string dup 0 6 5 roll put dup 1 5 4 roll put
- 3 index exec
- } for
- } {
- dup {
- 1 string dup 0 3 index put 3 index exec
- } forall
- } ifelse
- pop pop
- } def
-} ifelse
-/awcp {
- exch {
- false charpath
- 5 index 5 index rmoveto
- 6 index eq { 7 index 7 index rmoveto } if
- } exch cshow2
- 6 {pop} repeat
-} def
-/Tj {
- fCol
- 1 index stringwidth pdfTextMat idtransform pop
- sub 1 index length dup 0 ne { div } { pop pop 0 } ifelse
- pdfWordSpacing pdfHorizScaling mul 0 pdfTextMat dtransform 32
- 4 3 roll pdfCharSpacing pdfHorizScaling mul add 0
- pdfTextMat dtransform
- 6 5 roll Tj1
-} def
-/Tj16 {
- fCol
- 2 index stringwidth pdfTextMat idtransform pop
- sub exch div
- pdfWordSpacing pdfHorizScaling mul 0 pdfTextMat dtransform 32
- 4 3 roll pdfCharSpacing pdfHorizScaling mul add 0
- pdfTextMat dtransform
- 6 5 roll Tj1
-} def
-/Tj16V {
- fCol
- 2 index stringwidth pdfTextMat idtransform exch pop
- sub exch div
- 0 pdfWordSpacing pdfTextMat dtransform 32
- 4 3 roll pdfCharSpacing add 0 exch
- pdfTextMat dtransform
- 6 5 roll Tj1
-} def
-/Tj1 {
- 0 pdfTextRise pdfTextMat dtransform rmoveto
- currentpoint 8 2 roll
- pdfTextRender 1 and 0 eq {
- 6 copy awidthshow
- } if
- pdfTextRender 3 and dup 1 eq exch 2 eq or {
- 7 index 7 index moveto
- 6 copy
- currentfont /FontType get 3 eq { fCol } { sCol } ifelse
- false awcp currentpoint stroke moveto
- } if
- pdfTextRender 4 and 0 ne {
- 8 6 roll moveto
- false awcp
- /pdfTextClipPath [ pdfTextClipPath aload pop
- {/moveto cvx}
- {/lineto cvx}
- {/curveto cvx}
- {/closepath cvx}
- pathforall ] def
- currentpoint newpath moveto
- } {
- 8 {pop} repeat
- } ifelse
- 0 pdfTextRise neg pdfTextMat dtransform rmoveto
-} def
-/TJm { pdfFontSize 0.001 mul mul neg 0
- pdfTextMat dtransform rmoveto } def
-/TJmV { pdfFontSize 0.001 mul mul neg 0 exch
- pdfTextMat dtransform rmoveto } def
-/Tclip { pdfTextClipPath cvx exec clip newpath
- /pdfTextClipPath [] def } def
-% Level 2 image operators
-/pdfImBuf 100 string def
-/pdfIm {
- image
- { currentfile pdfImBuf readline
- not { pop exit } if
- (%-EOD-) eq { exit } if } loop
-} def
-/pdfImSep {
- findcmykcustomcolor exch
- dup /Width get /pdfImBuf1 exch string def
- dup /Decode get aload pop 1 index sub /pdfImDecodeRange exch def
- /pdfImDecodeLow exch def
- begin Width Height BitsPerComponent ImageMatrix DataSource end
- /pdfImData exch def
- { pdfImData pdfImBuf1 readstring pop
- 0 1 2 index length 1 sub {
- 1 index exch 2 copy get
- pdfImDecodeRange mul 255 div pdfImDecodeLow add round cvi
- 255 exch sub put
- } for }
- 6 5 roll customcolorimage
- { currentfile pdfImBuf readline
- not { pop exit } if
- (%-EOD-) eq { exit } if } loop
-} def
-/pdfImM {
- fCol imagemask
- { currentfile pdfImBuf readline
- not { pop exit } if
- (%-EOD-) eq { exit } if } loop
-} def
-end
-xpdf begin
-/F2_0 /Helvetica 1 1
-[ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
- /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
- /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
- /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
- /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quotesingle
- /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash
- /zero/one/two/three/four/five/six/seven
- /eight/nine/colon/semicolon/less/equal/greater/question
- /at/A/B/C/D/E/F/G
- /H/I/J/K/L/M/N/O
- /P/Q/R/S/T/U/V/W
- /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore
- /grave/a/b/c/d/e/f/g
- /h/i/j/k/l/m/n/o
- /p/q/r/s/t/u/v/w
- /x/y/z/braceleft/bar/braceright/asciitilde/bullet
- /Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis/dagger/daggerdbl
- /circumflex/perthousand/Scaron/guilsinglleft/OE/bullet/Zcaron/bullet
- /bullet/quoteleft/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
- /tilde/trademark/scaron/guilsinglright/oe/bullet/zcaron/Ydieresis
- /space/exclamdown/cent/sterling/currency/yen/brokenbar/section
- /dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
- /degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered
- /cedilla/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters/questiondown
- /Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
- /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
- /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply
- /Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
- /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla
- /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis
- /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide
- /oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]
-pdfMakeFont
-612 792 false pdfSetup
-pdfStartPage
-26.1663 -1.02141e-14 translate
-0.9406 0.9406 scale
-[] 0 d
-1 i
-0 j
-0 J
-10 M
-1 w
-0 g
-0 G
-q
-[1 0 0 1 0 0] cm
-[1 0 0 1 0 0] Tm
-0 0 Td
-0 g
-328.715 366.945 10.4374 0.2006 re
-f*
-0 g
-324.902 367.146 18.0648 0.2005 re
-f*
-0 g
-322.292 367.346 23.2834 0.2006 re
-f*
-0 g
-320.285 367.547 27.2978 0.2005 re
-f*
-0 g
-318.278 367.747 31.3122 0.2006 re
-f*
-0 g
-316.672 367.948 34.323 0.2006 re
-f*
-0 g
-315.267 368.148 37.3338 0.2005 re
-f*
-0 g
-313.862 368.349 39.9433 0.2005 re
-f*
-0 g
-312.658 368.549 42.5525 0.2006 re
-f*
-0 g
-311.453 368.75 44.9612 0.2006 re
-f*
-0 g
-310.249 368.951 47.1691 0.2006 re
-f*
-0 g
-309.245 369.151 49.377 0.2005 re
-f*
-0 g
-308.242 369.352 50.5813 0.2005 re
-f*
-0 g
-307.238 369.552 49.377 0.2006 re
-f*
-0 g
-306.435 369.753 47.9719 0.2006 re
-f*
-0 g
-305.432 369.953 47.3698 0.2006 re
-f*
-0 g
-304.629 370.154 46.5669 0.2005 re
-f*
-0 g
-303.826 370.355 46.1654 0.2006 re
-f*
-0 g
-303.023 370.555 45.7641 0.2005 re
-f*
-1 g
-348.787 370.555 13.8496 0.2005 re
-f*
-0.498 0 0.482 rg
-362.637 370.555 2.2079 0.2005 re
-f*
-0 g
-302.22 370.756 45.3626 0.2006 re
-f*
-1 g
-347.583 370.756 13.8497 0.2006 re
-f*
-0.498 0 0.482 rg
-361.433 370.756 4.2151 0.2006 re
-f*
-0 g
-301.417 370.956 45.1618 0.2005 re
-f*
-1 g
-346.579 370.956 13.6489 0.2005 re
-f*
-0.498 0 0.482 rg
-360.228 370.956 6.2224 0.2005 re
-f*
-0 g
-300.615 371.157 45.1619 0.2006 re
-f*
-1 g
-345.776 371.157 13.4481 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 371.157 7.8281 0.2006 re
-f*
-0 g
-300.012 371.357 44.7605 0.2005 re
-f*
-1 g
-344.773 371.357 13.4481 0.2005 re
-f*
-0.498 0 0.482 rg
-358.221 371.357 9.6346 0.2005 re
-f*
-0 g
-299.209 371.558 44.7604 0.2006 re
-f*
-1 g
-343.97 371.558 13.2475 0.2006 re
-f*
-0.498 0 0.482 rg
-357.217 371.558 11.2403 0.2006 re
-f*
-0 g
-298.607 371.758 44.5597 0.2006 re
-f*
-1 g
-343.167 371.758 13.0467 0.2006 re
-f*
-0.498 0 0.482 rg
-356.214 371.758 13.0468 0.2006 re
-f*
-0 g
-298.005 371.959 44.5597 0.2005 re
-f*
-1 g
-342.565 371.959 12.8461 0.2005 re
-f*
-0.498 0 0.482 rg
-355.411 371.959 14.4518 0.2005 re
-f*
-0 g
-297.202 372.16 44.5597 0.2005 re
-f*
-1 g
-341.762 372.16 12.846 0.2005 re
-f*
-0.498 0 0.482 rg
-354.608 372.16 16.0576 0.2005 re
-f*
-0 g
-296.6 372.36 44.5597 0.2006 re
-f*
-1 g
-341.16 372.36 12.6454 0.2006 re
-f*
-0.498 0 0.482 rg
-353.805 372.36 17.4625 0.2006 re
-f*
-0 g
-295.998 372.561 44.359 0.2006 re
-f*
-1 g
-340.357 372.561 12.6453 0.2006 re
-f*
-0.498 0 0.482 rg
-353.002 372.561 18.8677 0.2006 re
-f*
-0 g
-295.396 372.761 44.359 0.2006 re
-f*
-1 g
-339.755 372.761 12.4446 0.2006 re
-f*
-0.498 0 0.482 rg
-352.2 372.761 20.2726 0.2006 re
-f*
-0 g
-294.794 372.962 44.359 0.2006 re
-f*
-1 g
-339.153 372.962 12.2439 0.2006 re
-f*
-0.498 0 0.482 rg
-351.397 372.962 21.6777 0.2006 re
-f*
-0 g
-294.192 373.162 44.359 0.2005 re
-f*
-1 g
-338.551 373.162 12.2439 0.2005 re
-f*
-0.498 0 0.482 rg
-350.794 373.162 22.882 0.2005 re
-f*
-0 g
-293.589 373.363 44.5597 0.2005 re
-f*
-1 g
-338.149 373.363 11.8424 0.2005 re
-f*
-0.498 0 0.482 rg
-349.991 373.363 24.2871 0.2005 re
-f*
-0 g
-292.987 373.563 44.5598 0.2006 re
-f*
-1 g
-337.547 373.563 11.8424 0.2006 re
-f*
-0.498 0 0.482 rg
-349.389 373.563 25.4914 0.2006 re
-f*
-0 g
-292.385 373.764 44.5597 0.2006 re
-f*
-1 g
-336.945 373.764 11.8425 0.2006 re
-f*
-0.498 0 0.482 rg
-348.787 373.764 26.6956 0.2006 re
-f*
-0 g
-291.783 373.965 44.7605 0.2005 re
-f*
-1 g
-336.543 373.965 11.6417 0.2005 re
-f*
-0.498 0 0.482 rg
-348.185 373.965 27.6993 0.2005 re
-f*
-0 g
-291.381 374.165 44.5597 0.2005 re
-f*
-1 g
-335.941 374.165 11.6417 0.2005 re
-f*
-0.498 0 0.482 rg
-347.583 374.165 28.9036 0.2005 re
-f*
-0 g
-290.779 374.366 44.7605 0.2006 re
-f*
-1 g
-335.54 374.366 11.4409 0.2006 re
-f*
-0.498 0 0.482 rg
-346.981 374.366 30.108 0.2006 re
-f*
-0 g
-290.378 374.566 44.5597 0.2006 re
-f*
-1 g
-334.938 374.566 11.441 0.2006 re
-f*
-0.498 0 0.482 rg
-346.379 374.566 31.1115 0.2006 re
-f*
-0 g
-289.776 374.767 44.7605 0.2005 re
-f*
-1 g
-334.536 374.767 11.4409 0.2005 re
-f*
-0.498 0 0.482 rg
-345.977 374.767 32.1152 0.2005 re
-f*
-0 g
-289.174 374.967 44.9611 0.2006 re
-f*
-1 g
-334.135 374.967 11.2403 0.2006 re
-f*
-0.498 0 0.482 rg
-345.375 374.967 33.1187 0.2006 re
-f*
-0 g
-288.772 375.168 44.9612 0.2005 re
-f*
-1 g
-333.733 375.168 11.0396 0.2005 re
-f*
-0.498 0 0.482 rg
-344.773 375.168 34.323 0.2005 re
-f*
-0 g
-288.371 375.368 44.9611 0.2006 re
-f*
-1 g
-333.332 375.368 11.0396 0.2006 re
-f*
-0.498 0 0.482 rg
-344.371 375.368 35.1259 0.2006 re
-f*
-0 g
-287.768 375.569 45.1619 0.2006 re
-f*
-1 g
-332.93 375.569 10.8389 0.2006 re
-f*
-0.498 0 0.482 rg
-343.769 375.569 36.3302 0.2006 re
-f*
-0 g
-287.367 375.77 45.1619 0.2006 re
-f*
-1 g
-332.529 375.77 10.8388 0.2006 re
-f*
-0.498 0 0.482 rg
-343.368 375.77 37.1331 0.2006 re
-f*
-0 g
-286.765 375.97 45.3626 0.2005 re
-f*
-1 g
-332.127 375.97 10.6382 0.2005 re
-f*
-0.498 0 0.482 rg
-342.766 375.97 38.1367 0.2005 re
-f*
-0 g
-286.363 376.171 45.3626 0.2005 re
-f*
-1 g
-331.726 376.171 10.6381 0.2005 re
-f*
-0.498 0 0.482 rg
-342.364 376.171 39.1403 0.2005 re
-f*
-0 g
-285.962 376.371 45.3625 0.2006 re
-f*
-1 g
-331.325 376.371 10.4375 0.2006 re
-f*
-0.498 0 0.482 rg
-341.762 376.371 40.1439 0.2006 re
-f*
-0 g
-285.561 376.572 45.3626 0.2006 re
-f*
-1 g
-330.923 376.572 10.4374 0.2006 re
-f*
-0.498 0 0.482 rg
-341.361 376.572 40.9468 0.2006 re
-f*
-0 g
-284.958 376.772 45.5633 0.2005 re
-f*
-1 g
-330.522 376.772 10.4374 0.2005 re
-f*
-0.498 0 0.482 rg
-340.959 376.772 41.7496 0.2005 re
-f*
-0 g
-284.557 376.973 45.7639 0.2006 re
-f*
-1 g
-330.321 376.973 10.2368 0.2006 re
-f*
-0.498 0 0.482 rg
-340.558 376.973 42.7532 0.2006 re
-f*
-0 g
-284.156 377.173 45.764 0.2005 re
-f*
-1 g
-329.92 377.173 10.2367 0.2005 re
-f*
-0.498 0 0.482 rg
-340.156 377.173 43.5561 0.2005 re
-f*
-0 g
-283.754 377.374 45.7641 0.2006 re
-f*
-1 g
-329.518 377.374 10.2367 0.2006 re
-f*
-0.498 0 0.482 rg
-339.755 377.374 44.3589 0.2006 re
-f*
-0 g
-283.353 377.575 45.9648 0.2006 re
-f*
-1 g
-329.317 377.575 10.0359 0.2006 re
-f*
-0.498 0 0.482 rg
-339.353 377.575 45.1619 0.2006 re
-f*
-0 g
-282.951 377.775 45.9647 0.2005 re
-f*
-1 g
-328.916 377.775 10.036 0.2005 re
-f*
-0.498 0 0.482 rg
-338.952 377.775 45.9647 0.2005 re
-f*
-0 g
-282.55 377.976 45.9647 0.2006 re
-f*
-1 g
-328.515 377.976 10.036 0.2006 re
-f*
-0.498 0 0.482 rg
-338.551 377.976 46.7676 0.2006 re
-f*
-0 g
-282.148 378.176 46.1655 0.2005 re
-f*
-1 g
-328.314 378.176 9.8352 0.2005 re
-f*
-0.498 0 0.482 rg
-338.149 378.176 47.5705 0.2005 re
-f*
-0 g
-281.747 378.377 46.1655 0.2006 re
-f*
-1 g
-327.912 378.377 9.8353 0.2006 re
-f*
-0.498 0 0.482 rg
-337.748 378.377 48.3733 0.2006 re
-f*
-0 g
-281.346 378.577 46.3662 0.2006 re
-f*
-1 g
-327.712 378.577 9.6346 0.2006 re
-f*
-0.498 0 0.482 rg
-337.346 378.577 49.1762 0.2006 re
-f*
-0 g
-280.944 378.778 46.3662 0.2005 re
-f*
-1 g
-327.31 378.778 9.6345 0.2005 re
-f*
-0.498 0 0.482 rg
-336.945 378.778 49.9792 0.2005 re
-f*
-0 g
-280.543 378.978 46.5668 0.2006 re
-f*
-1 g
-327.11 378.978 9.4339 0.2006 re
-f*
-0.498 0 0.482 rg
-336.543 378.978 50.7819 0.2006 re
-f*
-0 g
-280.141 379.179 46.7676 0.2005 re
-f*
-1 g
-326.909 379.179 9.4339 0.2005 re
-f*
-0.498 0 0.482 rg
-336.343 379.179 51.3841 0.2005 re
-f*
-0 g
-279.74 379.38 46.7677 0.2006 re
-f*
-1 g
-326.507 379.38 9.4338 0.2006 re
-f*
-0.498 0 0.482 rg
-335.941 379.38 52.187 0.2006 re
-f*
-0 g
-279.338 379.58 46.9684 0.2006 re
-f*
-1 g
-326.307 379.58 9.2331 0.2006 re
-f*
-0.498 0 0.482 rg
-335.54 379.58 52.9899 0.2006 re
-f*
-0 g
-278.937 379.781 46.9683 0.2005 re
-f*
-1 g
-325.905 379.781 9.2331 0.2005 re
-f*
-0.498 0 0.482 rg
-335.138 379.781 53.5921 0.2005 re
-f*
-0 g
-278.736 379.981 46.9684 0.2006 re
-f*
-1 g
-325.704 379.981 9.2331 0.2006 re
-f*
-0.498 0 0.482 rg
-334.938 379.981 54.1942 0.2006 re
-f*
-0 g
-278.335 380.182 47.1691 0.2005 re
-f*
-1 g
-325.504 380.182 9.0324 0.2005 re
-f*
-0.498 0 0.482 rg
-334.536 380.182 54.9971 0.2005 re
-f*
-0 g
-277.933 380.382 47.3698 0.2006 re
-f*
-1 g
-325.303 380.382 9.0323 0.2006 re
-f*
-0.498 0 0.482 rg
-334.335 380.382 55.5994 0.2006 re
-f*
-0 g
-277.532 380.583 47.3697 0.2005 re
-f*
-1 g
-324.902 380.583 9.0324 0.2005 re
-f*
-0.498 0 0.482 rg
-333.934 380.583 56.4022 0.2005 re
-f*
-0 g
-277.331 380.783 47.3698 0.2006 re
-f*
-1 g
-324.701 380.783 9.0324 0.2006 re
-f*
-0.498 0 0.482 rg
-333.733 380.783 56.8036 0.2006 re
-f*
-0 g
-287.367 380.984 37.1331 0.2006 re
-f*
-1 g
-324.5 380.984 8.8316 0.2006 re
-f*
-0.498 0 0.482 rg
-333.332 380.984 57.6066 0.2006 re
-f*
-0 g
-287.367 381.185 36.9324 0.2005 re
-f*
-1 g
-324.299 381.185 8.8316 0.2005 re
-f*
-0.498 0 0.482 rg
-333.131 381.185 58.2087 0.2005 re
-f*
-0 g
-287.367 381.385 36.5309 0.2006 re
-f*
-1 g
-323.898 381.385 8.8317 0.2006 re
-f*
-0.498 0 0.482 rg
-332.73 381.385 58.8108 0.2006 re
-f*
-0 g
-287.367 381.586 36.3302 0.2005 re
-f*
-1 g
-323.697 381.586 8.8317 0.2005 re
-f*
-0.498 0 0.482 rg
-332.529 381.586 59.413 0.2005 re
-f*
-0 g
-287.367 381.786 36.1295 0.2006 re
-f*
-1 g
-323.497 381.786 8.6309 0.2006 re
-f*
-0.498 0 0.482 rg
-332.127 381.786 60.2159 0.2006 re
-f*
-0 g
-287.367 381.987 35.9288 0.2006 re
-f*
-1 g
-323.296 381.987 8.6309 0.2006 re
-f*
-0.498 0 0.482 rg
-331.927 381.987 60.6173 0.2006 re
-f*
-0 g
-278.937 382.188 0.2007 0.2005 re
-f*
-1 g
-279.138 382.188 8.2295 0.2005 re
-f*
-0 g
-287.367 382.188 35.7281 0.2005 re
-f*
-1 g
-323.095 382.188 8.4302 0.2005 re
-f*
-0.498 0 0.482 rg
-331.525 382.188 61.4201 0.2005 re
-f*
-0 g
-278.937 382.388 43.9575 0.2006 re
-f*
-1 g
-322.894 382.388 8.4302 0.2006 re
-f*
-0.498 0 0.482 rg
-331.325 382.388 61.8216 0.2006 re
-f*
-0 g
-278.937 382.589 43.7569 0.2005 re
-f*
-1 g
-322.694 382.589 8.4301 0.2005 re
-f*
-0.498 0 0.482 rg
-331.124 382.589 62.4238 0.2005 re
-f*
-0 g
-278.937 382.789 43.5561 0.2006 re
-f*
-1 g
-322.493 382.789 8.2295 0.2006 re
-f*
-0.498 0 0.482 rg
-330.722 382.789 63.2266 0.2006 re
-f*
-0 g
-278.937 382.99 43.3554 0.2006 re
-f*
-1 g
-322.292 382.99 8.2295 0.2006 re
-f*
-0.498 0 0.482 rg
-330.522 382.99 63.628 0.2006 re
-f*
-0 g
-278.937 383.19 43.1547 0.2005 re
-f*
-1 g
-322.092 383.19 8.2294 0.2005 re
-f*
-0.498 0 0.482 rg
-330.321 383.19 64.2303 0.2005 re
-f*
-0 g
-278.937 383.391 42.9539 0.2006 re
-f*
-1 g
-321.891 383.391 8.2295 0.2006 re
-f*
-0.498 0 0.482 rg
-330.12 383.391 64.6317 0.2006 re
-f*
-0 g
-278.937 383.591 42.7533 0.2005 re
-f*
-1 g
-321.69 383.591 8.0287 0.2005 re
-f*
-0.498 0 0.482 rg
-329.719 383.591 65.4345 0.2005 re
-f*
-0 g
-278.937 383.792 42.5525 0.2006 re
-f*
-1 g
-321.489 383.792 8.0288 0.2006 re
-f*
-0.498 0 0.482 rg
-329.518 383.792 65.8359 0.2006 re
-f*
-0 g
-278.937 383.992 42.3518 0.2006 re
-f*
-1 g
-321.289 383.992 8.0288 0.2006 re
-f*
-0.498 0 0.482 rg
-329.317 383.992 66.4381 0.2006 re
-f*
-0 g
-278.937 384.193 42.1511 0.2005 re
-f*
-1 g
-321.088 384.193 8.0287 0.2005 re
-f*
-0.498 0 0.482 rg
-329.117 384.193 66.8396 0.2005 re
-f*
-0 g
-278.937 384.394 41.9503 0.2005 re
-f*
-1 g
-320.887 384.394 8.0288 0.2005 re
-f*
-0.498 0 0.482 rg
-328.916 384.394 67.241 0.2005 re
-f*
-0 g
-278.937 384.594 41.7497 0.2006 re
-f*
-1 g
-320.687 384.594 7.828 0.2006 re
-f*
-0.498 0 0.482 rg
-328.515 384.594 68.0439 0.2006 re
-f*
-0 g
-271.109 384.795 0.2008 0.2006 re
-f*
-1 g
-271.31 384.795 7.6273 0.2006 re
-f*
-0 g
-278.937 384.795 41.5489 0.2006 re
-f*
-1 g
-320.486 384.795 7.8281 0.2006 re
-f*
-0.498 0 0.482 rg
-328.314 384.795 68.4453 0.2006 re
-f*
-0 g
-270.707 384.995 0.6022 0.2006 re
-f*
-1 g
-271.31 384.995 7.6273 0.2006 re
-f*
-0 g
-278.937 384.995 41.3482 0.2006 re
-f*
-1 g
-320.285 384.995 7.828 0.2006 re
-f*
-0.498 0 0.482 rg
-328.113 384.995 69.0475 0.2006 re
-f*
-0 g
-270.507 385.196 0.8029 0.2005 re
-f*
-1 g
-271.31 385.196 7.6273 0.2005 re
-f*
-0 g
-278.937 385.196 41.1475 0.2005 re
-f*
-1 g
-320.084 385.196 7.828 0.2005 re
-f*
-0.498 0 0.482 rg
-327.912 385.196 69.4489 0.2005 re
-f*
-0 g
-270.306 385.396 1.0036 0.2006 re
-f*
-1 g
-271.31 385.396 7.6273 0.2006 re
-f*
-0 g
-278.937 385.396 40.9467 0.2006 re
-f*
-1 g
-319.884 385.396 7.8281 0.2006 re
-f*
-0.498 0 0.482 rg
-327.712 385.396 69.8504 0.2006 re
-f*
-0 g
-269.904 385.597 1.4051 0.2005 re
-f*
-1 g
-271.31 385.597 7.6273 0.2005 re
-f*
-0 g
-278.937 385.597 40.7461 0.2005 re
-f*
-1 g
-319.683 385.597 7.828 0.2005 re
-f*
-0.498 0 0.482 rg
-327.511 385.597 70.4525 0.2005 re
-f*
-0 g
-269.704 385.797 1.6058 0.2006 re
-f*
-1 g
-271.31 385.797 7.6273 0.2006 re
-f*
-0 g
-278.937 385.797 40.7461 0.2006 re
-f*
-1 g
-319.683 385.797 7.6273 0.2006 re
-f*
-0.498 0 0.482 rg
-327.31 385.797 70.8539 0.2006 re
-f*
-0 g
-269.503 385.998 1.8065 0.2005 re
-f*
-1 g
-271.31 385.998 7.6273 0.2005 re
-f*
-0 g
-278.937 385.998 40.5453 0.2005 re
-f*
-1 g
-319.482 385.998 7.6273 0.2005 re
-f*
-0.498 0 0.482 rg
-327.11 385.998 71.2554 0.2005 re
-f*
-0 g
-269.102 386.199 2.208 0.2006 re
-f*
-1 g
-271.31 386.199 7.6273 0.2006 re
-f*
-0 g
-278.937 386.199 40.3446 0.2006 re
-f*
-1 g
-319.281 386.199 7.6273 0.2006 re
-f*
-0.498 0 0.482 rg
-326.909 386.199 71.8576 0.2006 re
-f*
-0 g
-268.901 386.399 2.4087 0.2005 re
-f*
-1 g
-271.31 386.399 7.6273 0.2005 re
-f*
-0 g
-278.937 386.399 40.1438 0.2005 re
-f*
-1 g
-319.081 386.399 7.6274 0.2005 re
-f*
-0.498 0 0.482 rg
-326.708 386.399 72.259 0.2005 re
-f*
-0 g
-268.7 386.6 2.6094 0.2006 re
-f*
-1 g
-271.31 386.6 7.6273 0.2006 re
-f*
-0 g
-278.937 386.6 39.9431 0.2006 re
-f*
-1 g
-318.88 386.6 7.6274 0.2006 re
-f*
-0.498 0 0.482 rg
-326.507 386.6 72.6604 0.2006 re
-f*
-0 g
-268.299 386.8 3.0108 0.2006 re
-f*
-1 g
-271.31 386.8 7.6273 0.2006 re
-f*
-0 g
-278.937 386.8 39.9431 0.2006 re
-f*
-1 g
-318.88 386.8 7.4267 0.2006 re
-f*
-0.498 0 0.482 rg
-326.307 386.8 73.0618 0.2006 re
-f*
-0 g
-268.098 387.001 3.2115 0.2005 re
-f*
-1 g
-271.31 387.001 7.6273 0.2005 re
-f*
-0 g
-278.937 387.001 39.7425 0.2005 re
-f*
-1 g
-318.679 387.001 7.4265 0.2005 re
-f*
-0.498 0 0.482 rg
-326.106 387.001 73.6641 0.2005 re
-f*
-0 g
-267.897 387.201 3.4123 0.2005 re
-f*
-1 g
-271.31 387.201 7.6273 0.2005 re
-f*
-0 g
-278.937 387.201 39.5417 0.2005 re
-f*
-1 g
-318.479 387.201 7.4266 0.2005 re
-f*
-0.498 0 0.482 rg
-325.905 387.201 74.0655 0.2005 re
-f*
-0 g
-267.697 387.402 3.613 0.2006 re
-f*
-1 g
-271.31 387.402 7.6273 0.2006 re
-f*
-0 g
-278.937 387.402 39.341 0.2006 re
-f*
-1 g
-318.278 387.402 7.4266 0.2006 re
-f*
-0.498 0 0.482 rg
-325.704 387.402 74.4669 0.2006 re
-f*
-0 g
-267.295 387.603 4.0144 0.2006 re
-f*
-1 g
-271.31 387.603 7.6273 0.2006 re
-f*
-0 g
-278.937 387.603 39.341 0.2006 re
-f*
-1 g
-318.278 387.603 7.2259 0.2006 re
-f*
-0.498 0 0.482 rg
-325.504 387.603 74.8683 0.2006 re
-f*
-0 g
-267.094 387.803 4.2151 0.2006 re
-f*
-1 g
-271.31 387.803 7.6273 0.2006 re
-f*
-0 g
-278.937 387.803 39.1402 0.2006 re
-f*
-1 g
-318.077 387.803 7.226 0.2006 re
-f*
-0.498 0 0.482 rg
-325.303 387.803 75.4705 0.2006 re
-f*
-0 g
-266.894 388.004 4.4159 0.2006 re
-f*
-1 g
-271.31 388.004 7.6273 0.2006 re
-f*
-0 g
-278.937 388.004 38.9395 0.2006 re
-f*
-1 g
-317.876 388.004 7.226 0.2006 re
-f*
-0.498 0 0.482 rg
-325.102 388.004 75.8719 0.2006 re
-f*
-0 g
-266.693 388.204 4.6166 0.2005 re
-f*
-1 g
-271.31 388.204 7.6273 0.2005 re
-f*
-0 g
-278.937 388.204 38.7389 0.2005 re
-f*
-1 g
-317.676 388.204 7.2258 0.2005 re
-f*
-0.498 0 0.482 rg
-324.902 388.204 76.2734 0.2005 re
-f*
-0 g
-266.492 388.405 4.8173 0.2005 re
-f*
-1 g
-271.31 388.405 7.6273 0.2005 re
-f*
-0 g
-278.937 388.405 38.7389 0.2005 re
-f*
-1 g
-317.676 388.405 7.0251 0.2005 re
-f*
-0.498 0 0.482 rg
-324.701 388.405 76.6748 0.2005 re
-f*
-0 g
-266.292 388.605 5.018 0.2006 re
-f*
-1 g
-271.31 388.605 7.6273 0.2006 re
-f*
-0 g
-278.937 388.605 38.5381 0.2006 re
-f*
-1 g
-317.475 388.605 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-324.5 388.605 77.0762 0.2006 re
-f*
-0 g
-265.89 388.806 5.4195 0.2006 re
-f*
-1 g
-271.31 388.806 7.6273 0.2006 re
-f*
-0 g
-278.937 388.806 38.3374 0.2006 re
-f*
-1 g
-317.274 388.806 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-324.299 388.806 77.4777 0.2006 re
-f*
-0 g
-265.689 389.006 5.6202 0.2005 re
-f*
-1 g
-271.31 389.006 7.6273 0.2005 re
-f*
-0 g
-278.937 389.006 38.3374 0.2005 re
-f*
-1 g
-317.274 389.006 7.0252 0.2005 re
-f*
-0.498 0 0.482 rg
-324.299 389.006 77.8791 0.2005 re
-f*
-0 g
-265.489 389.207 5.8209 0.2005 re
-f*
-1 g
-271.31 389.207 7.6273 0.2005 re
-f*
-0 g
-278.937 389.207 38.1367 0.2005 re
-f*
-1 g
-317.074 389.207 7.0252 0.2005 re
-f*
-0.498 0 0.482 rg
-324.099 389.207 78.2805 0.2005 re
-f*
-0 g
-265.288 389.407 6.0216 0.2006 re
-f*
-1 g
-271.31 389.407 7.6273 0.2006 re
-f*
-0 g
-278.937 389.407 37.9359 0.2006 re
-f*
-1 g
-316.873 389.407 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-323.898 389.407 78.682 0.2006 re
-f*
-0 g
-265.087 389.608 6.2224 0.2006 re
-f*
-1 g
-271.31 389.608 7.6273 0.2006 re
-f*
-0 g
-278.937 389.608 37.9359 0.2006 re
-f*
-1 g
-316.873 389.608 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-323.697 389.608 79.0835 0.2006 re
-f*
-0 g
-264.886 389.809 6.4231 0.2005 re
-f*
-1 g
-271.31 389.809 7.6273 0.2005 re
-f*
-0 g
-278.937 389.809 37.7352 0.2005 re
-f*
-1 g
-316.672 389.809 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-323.497 389.809 79.4849 0.2005 re
-f*
-0 g
-264.686 390.009 6.6238 0.2006 re
-f*
-1 g
-271.31 390.009 7.6273 0.2006 re
-f*
-0 g
-278.937 390.009 37.5345 0.2006 re
-f*
-1 g
-316.471 390.009 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-323.497 390.009 79.6856 0.2006 re
-f*
-0 g
-264.485 390.21 6.8245 0.2005 re
-f*
-1 g
-271.31 390.21 7.6273 0.2005 re
-f*
-0 g
-278.937 390.21 37.5345 0.2005 re
-f*
-1 g
-316.471 390.21 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-323.296 390.21 80.087 0.2005 re
-f*
-0 g
-264.284 390.41 7.0252 0.2006 re
-f*
-1 g
-271.31 390.41 7.6273 0.2006 re
-f*
-0 g
-278.937 390.41 37.3338 0.2006 re
-f*
-1 g
-316.271 390.41 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-323.095 390.41 80.4884 0.2006 re
-f*
-0 g
-264.084 390.611 7.226 0.2006 re
-f*
-1 g
-271.31 390.611 7.6273 0.2006 re
-f*
-0 g
-278.937 390.611 37.1331 0.2006 re
-f*
-1 g
-316.07 390.611 6.8244 0.2006 re
-f*
-0.498 0 0.482 rg
-322.894 390.611 80.89 0.2006 re
-f*
-0 g
-263.883 390.811 7.4267 0.2006 re
-f*
-1 g
-271.31 390.811 7.6273 0.2006 re
-f*
-0 g
-278.937 390.811 37.1331 0.2006 re
-f*
-1 g
-316.07 390.811 6.8244 0.2006 re
-f*
-0.498 0 0.482 rg
-322.894 390.811 81.0907 0.2006 re
-f*
-0 g
-263.682 391.012 7.6274 0.2005 re
-f*
-1 g
-271.31 391.012 7.6273 0.2005 re
-f*
-0 g
-278.937 391.012 36.9323 0.2005 re
-f*
-1 g
-315.869 391.012 6.8246 0.2005 re
-f*
-0.498 0 0.482 rg
-322.694 391.012 81.492 0.2005 re
-f*
-0 g
-263.281 391.213 8.0288 0.2005 re
-f*
-1 g
-271.31 391.213 7.6273 0.2005 re
-f*
-0 g
-278.937 391.213 36.9323 0.2005 re
-f*
-1 g
-315.869 391.213 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-322.493 391.213 81.8935 0.2005 re
-f*
-0 g
-263.08 391.413 8.2296 0.2006 re
-f*
-1 g
-271.31 391.413 7.6273 0.2006 re
-f*
-0 g
-278.937 391.413 36.7317 0.2006 re
-f*
-1 g
-315.669 391.413 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-322.292 391.413 82.2949 0.2006 re
-f*
-0 g
-262.879 391.614 8.4303 0.2006 re
-f*
-1 g
-271.31 391.614 7.6273 0.2006 re
-f*
-0 g
-278.937 391.614 36.5309 0.2006 re
-f*
-1 g
-315.468 391.614 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-322.292 391.614 82.4957 0.2006 re
-f*
-0 g
-262.679 391.814 8.631 0.2005 re
-f*
-1 g
-271.31 391.814 7.6273 0.2005 re
-f*
-0 g
-278.937 391.814 36.5309 0.2005 re
-f*
-1 g
-315.468 391.814 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-322.092 391.814 82.8971 0.2005 re
-f*
-0 g
-262.478 392.015 8.8317 0.2006 re
-f*
-1 g
-271.31 392.015 7.6273 0.2006 re
-f*
-0 g
-278.937 392.015 36.3302 0.2006 re
-f*
-1 g
-315.267 392.015 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-321.891 392.015 83.2986 0.2006 re
-f*
-0 g
-262.277 392.215 9.0324 0.2005 re
-f*
-1 g
-271.31 392.215 7.6273 0.2005 re
-f*
-0 g
-278.937 392.215 36.3302 0.2005 re
-f*
-1 g
-315.267 392.215 6.6237 0.2005 re
-f*
-0.498 0 0.482 rg
-321.891 392.215 83.4993 0.2005 re
-f*
-0 g
-262.277 392.416 9.0324 0.2006 re
-f*
-1 g
-271.31 392.416 7.6273 0.2006 re
-f*
-0 g
-278.937 392.416 36.1295 0.2006 re
-f*
-1 g
-315.066 392.416 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-321.69 392.416 83.9007 0.2006 re
-f*
-0 g
-262.076 392.616 9.2332 0.2006 re
-f*
-1 g
-271.31 392.616 7.6273 0.2006 re
-f*
-0 g
-278.937 392.616 36.1295 0.2006 re
-f*
-1 g
-315.066 392.616 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-321.489 392.616 84.3022 0.2006 re
-f*
-0 g
-261.876 392.817 9.4339 0.2005 re
-f*
-1 g
-271.31 392.817 7.6273 0.2005 re
-f*
-0 g
-278.937 392.817 35.9287 0.2005 re
-f*
-1 g
-314.866 392.817 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-321.489 392.817 84.5029 0.2005 re
-f*
-0 g
-261.675 393.018 9.6346 0.2006 re
-f*
-1 g
-271.31 393.018 7.6273 0.2006 re
-f*
-0 g
-278.937 393.018 35.9287 0.2006 re
-f*
-1 g
-314.866 393.018 6.4231 0.2006 re
-f*
-0.498 0 0.482 rg
-321.289 393.018 84.9043 0.2006 re
-f*
-0 g
-261.474 393.218 9.8353 0.2005 re
-f*
-1 g
-271.31 393.218 7.6273 0.2005 re
-f*
-0 g
-278.937 393.218 35.7281 0.2005 re
-f*
-1 g
-314.665 393.218 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-321.088 393.218 85.3057 0.2005 re
-f*
-0 g
-261.274 393.419 10.036 0.2006 re
-f*
-1 g
-271.31 393.419 7.6273 0.2006 re
-f*
-0 g
-278.937 393.419 35.7281 0.2006 re
-f*
-1 g
-314.665 393.419 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-321.088 393.419 85.5064 0.2006 re
-f*
-0 g
-261.073 393.619 10.2368 0.2006 re
-f*
-1 g
-271.31 393.619 7.6273 0.2006 re
-f*
-0 g
-278.937 393.619 35.5273 0.2006 re
-f*
-1 g
-314.464 393.619 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-320.887 393.619 85.908 0.2006 re
-f*
-0 g
-260.872 393.82 10.4375 0.2005 re
-f*
-1 g
-271.31 393.82 7.6273 0.2005 re
-f*
-0 g
-278.937 393.82 35.5273 0.2005 re
-f*
-1 g
-314.464 393.82 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-320.887 393.82 86.1087 0.2005 re
-f*
-0 g
-260.671 394.02 10.6382 0.2006 re
-f*
-1 g
-271.31 394.02 7.6273 0.2006 re
-f*
-0 g
-278.937 394.02 35.3266 0.2006 re
-f*
-1 g
-314.263 394.02 6.4231 0.2006 re
-f*
-0.498 0 0.482 rg
-320.687 394.02 86.51 0.2006 re
-f*
-0 g
-260.471 394.221 10.8389 0.2005 re
-f*
-1 g
-271.31 394.221 7.6273 0.2005 re
-f*
-0 g
-278.937 394.221 35.3266 0.2005 re
-f*
-1 g
-314.263 394.221 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-320.486 394.221 86.9115 0.2005 re
-f*
-0 g
-260.27 394.421 11.0396 0.2006 re
-f*
-1 g
-271.31 394.421 7.6273 0.2006 re
-f*
-0 g
-278.937 394.421 35.1259 0.2006 re
-f*
-1 g
-314.063 394.421 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-320.486 394.421 86.9115 0.2006 re
-f*
-0 g
-260.27 394.622 11.0396 0.2006 re
-f*
-1 g
-271.31 394.622 7.6273 0.2006 re
-f*
-0 g
-278.937 394.622 35.1259 0.2006 re
-f*
-1 g
-314.063 394.622 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-320.285 394.622 87.3129 0.2006 re
-f*
-0 g
-260.069 394.823 11.2403 0.2005 re
-f*
-1 g
-271.31 394.823 7.6273 0.2005 re
-f*
-0 g
-278.937 394.823 34.9251 0.2005 re
-f*
-1 g
-313.862 394.823 6.4231 0.2005 re
-f*
-0.498 0 0.482 rg
-320.285 394.823 87.5137 0.2005 re
-f*
-0 g
-259.868 395.023 11.4411 0.2006 re
-f*
-1 g
-271.31 395.023 7.6273 0.2006 re
-f*
-0 g
-278.937 395.023 34.9251 0.2006 re
-f*
-1 g
-313.862 395.023 6.2224 0.2006 re
-f*
-0.498 0 0.482 rg
-320.084 395.023 87.9151 0.2006 re
-f*
-0 g
-259.668 395.224 11.6418 0.2005 re
-f*
-1 g
-271.31 395.224 7.6273 0.2005 re
-f*
-0 g
-278.937 395.224 34.7245 0.2005 re
-f*
-1 g
-313.661 395.224 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-320.084 395.224 88.1158 0.2005 re
-f*
-0 g
-259.467 395.424 11.8425 0.2006 re
-f*
-1 g
-271.31 395.424 7.6273 0.2006 re
-f*
-0 g
-278.937 395.424 34.7245 0.2006 re
-f*
-1 g
-313.661 395.424 6.2222 0.2006 re
-f*
-0.498 0 0.482 rg
-319.884 395.424 88.5173 0.2006 re
-f*
-0 g
-259.266 395.625 12.0432 0.2005 re
-f*
-1 g
-271.31 395.625 7.6273 0.2005 re
-f*
-0 g
-278.937 395.625 34.5237 0.2005 re
-f*
-1 g
-313.461 395.625 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-319.884 395.625 88.5173 0.2005 re
-f*
-0 g
-259.266 395.825 12.0432 0.2006 re
-f*
-1 g
-271.31 395.825 7.6273 0.2006 re
-f*
-0 g
-278.937 395.825 34.5237 0.2006 re
-f*
-1 g
-313.461 395.825 6.2224 0.2006 re
-f*
-0.498 0 0.482 rg
-319.683 395.825 88.9186 0.2006 re
-f*
-0 g
-259.066 396.026 12.2439 0.2006 re
-f*
-1 g
-271.31 396.026 7.6273 0.2006 re
-f*
-0 g
-278.937 396.026 34.5237 0.2006 re
-f*
-1 g
-313.461 396.026 6.2224 0.2006 re
-f*
-0.498 0 0.482 rg
-319.683 396.026 89.1194 0.2006 re
-f*
-0 g
-258.865 396.227 12.4447 0.2005 re
-f*
-1 g
-271.31 396.227 7.6273 0.2005 re
-f*
-0 g
-278.937 396.227 34.323 0.2005 re
-f*
-1 g
-313.26 396.227 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-319.482 396.227 89.5209 0.2005 re
-f*
-0 g
-258.664 396.427 12.6454 0.2006 re
-f*
-1 g
-271.31 396.427 7.6273 0.2006 re
-f*
-0 g
-278.937 396.427 34.323 0.2006 re
-f*
-1 g
-313.26 396.427 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-319.482 396.427 89.7216 0.2006 re
-f*
-0 g
-258.463 396.628 12.8461 0.2005 re
-f*
-1 g
-271.31 396.628 7.6273 0.2005 re
-f*
-0 g
-278.937 396.628 34.1223 0.2005 re
-f*
-1 g
-313.059 396.628 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-319.281 396.628 89.9223 0.2005 re
-f*
-0 g
-258.463 396.828 12.8461 0.2006 re
-f*
-1 g
-271.31 396.828 7.6273 0.2006 re
-f*
-0 g
-278.937 396.828 34.1223 0.2006 re
-f*
-1 g
-313.059 396.828 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-319.281 396.828 90.123 0.2006 re
-f*
-0 g
-258.263 397.029 13.0468 0.2006 re
-f*
-1 g
-271.31 397.029 7.6273 0.2006 re
-f*
-0 g
-278.937 397.029 34.1223 0.2006 re
-f*
-1 g
-313.059 397.029 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 397.029 90.5245 0.2006 re
-f*
-0 g
-258.062 397.229 13.2475 0.2005 re
-f*
-1 g
-271.31 397.229 7.6273 0.2005 re
-f*
-0 g
-278.937 397.229 33.9216 0.2005 re
-f*
-1 g
-312.858 397.229 6.2222 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 397.229 90.7253 0.2005 re
-f*
-0 g
-258.062 397.43 13.2475 0.2006 re
-f*
-1 g
-271.31 397.43 7.6273 0.2006 re
-f*
-0 g
-278.937 397.43 33.9216 0.2006 re
-f*
-1 g
-312.858 397.43 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 397.43 90.926 0.2006 re
-f*
-0 g
-257.861 397.63 13.4483 0.2005 re
-f*
-1 g
-271.31 397.63 7.6273 0.2005 re
-f*
-0 g
-278.937 397.63 33.7209 0.2005 re
-f*
-1 g
-312.658 397.63 6.2222 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 397.63 91.1267 0.2005 re
-f*
-0 g
-257.661 397.831 13.649 0.2006 re
-f*
-1 g
-271.31 397.831 7.6273 0.2006 re
-f*
-0 g
-278.937 397.831 33.7209 0.2006 re
-f*
-1 g
-312.658 397.831 6.2222 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 397.831 91.3274 0.2006 re
-f*
-0 g
-257.46 398.032 13.8497 0.2006 re
-f*
-1 g
-271.31 398.032 7.6273 0.2006 re
-f*
-0 g
-278.937 398.032 33.7209 0.2006 re
-f*
-1 g
-312.658 398.032 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-318.679 398.032 91.7287 0.2006 re
-f*
-0 g
-257.46 398.232 13.8497 0.2005 re
-f*
-1 g
-271.31 398.232 7.6273 0.2005 re
-f*
-0 g
-278.937 398.232 33.5201 0.2005 re
-f*
-1 g
-312.457 398.232 6.2224 0.2005 re
-f*
-0.498 0 0.482 rg
-318.679 398.232 91.7287 0.2005 re
-f*
-0 g
-257.259 398.433 14.0504 0.2006 re
-f*
-1 g
-271.31 398.433 7.6273 0.2006 re
-f*
-0 g
-278.937 398.433 33.5201 0.2006 re
-f*
-1 g
-312.457 398.433 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-318.479 398.433 92.1302 0.2006 re
-f*
-0 g
-257.058 398.633 14.2511 0.2005 re
-f*
-1 g
-271.31 398.633 7.6273 0.2005 re
-f*
-0 g
-278.937 398.633 33.5201 0.2005 re
-f*
-1 g
-312.457 398.633 6.0216 0.2005 re
-f*
-0.498 0 0.482 rg
-318.479 398.633 92.3309 0.2005 re
-f*
-0 g
-257.058 398.834 14.2511 0.2006 re
-f*
-1 g
-271.31 398.834 7.6273 0.2006 re
-f*
-0 g
-278.937 398.834 33.3194 0.2006 re
-f*
-1 g
-312.256 398.834 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-318.479 398.834 92.3309 0.2006 re
-f*
-0 g
-256.858 399.034 14.4519 0.2006 re
-f*
-1 g
-271.31 399.034 7.6273 0.2006 re
-f*
-0 g
-278.937 399.034 33.3194 0.2006 re
-f*
-1 g
-312.256 399.034 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-318.278 399.034 92.7324 0.2006 re
-f*
-0 g
-256.657 399.235 14.6526 0.2005 re
-f*
-1 g
-271.31 399.235 7.6273 0.2005 re
-f*
-0 g
-278.937 399.235 33.3194 0.2005 re
-f*
-1 g
-312.256 399.235 6.0216 0.2005 re
-f*
-0.498 0 0.482 rg
-318.278 399.235 92.9331 0.2005 re
-f*
-0 g
-256.657 399.435 14.6526 0.2005 re
-f*
-1 g
-271.31 399.435 7.6273 0.2005 re
-f*
-0 g
-278.937 399.435 33.1187 0.2005 re
-f*
-1 g
-312.056 399.435 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-318.278 399.435 92.9331 0.2005 re
-f*
-0 g
-256.456 399.636 14.8533 0.2006 re
-f*
-1 g
-271.31 399.636 7.6273 0.2006 re
-f*
-0 g
-278.937 399.636 33.1187 0.2006 re
-f*
-1 g
-312.056 399.636 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.077 399.636 93.3346 0.2006 re
-f*
-0 g
-256.256 399.837 15.054 0.2006 re
-f*
-1 g
-271.31 399.837 7.6273 0.2006 re
-f*
-0 g
-278.937 399.837 33.1187 0.2006 re
-f*
-1 g
-312.056 399.837 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.077 399.837 93.5353 0.2006 re
-f*
-0 g
-256.256 400.037 15.054 0.2006 re
-f*
-1 g
-271.31 400.037 7.6273 0.2006 re
-f*
-0 g
-278.937 400.037 32.918 0.2006 re
-f*
-1 g
-311.855 400.037 6.2222 0.2006 re
-f*
-0.498 0 0.482 rg
-318.077 400.037 93.5353 0.2006 re
-f*
-0 g
-256.055 400.238 15.2547 0.2005 re
-f*
-1 g
-271.31 400.238 7.6273 0.2005 re
-f*
-0 g
-278.937 400.238 32.918 0.2005 re
-f*
-1 g
-311.855 400.238 6.0215 0.2005 re
-f*
-0.498 0 0.482 rg
-317.876 400.238 93.9367 0.2005 re
-f*
-0 g
-255.854 400.438 15.4555 0.2006 re
-f*
-1 g
-271.31 400.438 7.6273 0.2006 re
-f*
-0 g
-278.937 400.438 32.918 0.2006 re
-f*
-1 g
-311.855 400.438 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-317.876 400.438 93.9367 0.2006 re
-f*
-0 g
-255.854 400.639 15.4555 0.2005 re
-f*
-1 g
-271.31 400.639 7.6273 0.2005 re
-f*
-0 g
-278.937 400.639 32.7173 0.2005 re
-f*
-1 g
-311.654 400.639 6.2222 0.2005 re
-f*
-0.498 0 0.482 rg
-317.876 400.639 94.1375 0.2005 re
-f*
-0 g
-255.653 400.839 15.6562 0.2006 re
-f*
-1 g
-271.31 400.839 7.6273 0.2006 re
-f*
-0 g
-278.937 400.839 32.7173 0.2006 re
-f*
-1 g
-311.654 400.839 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-317.676 400.839 94.5388 0.2006 re
-f*
-0 g
-255.653 401.04 15.6562 0.2006 re
-f*
-1 g
-271.31 401.04 7.6273 0.2006 re
-f*
-0 g
-278.937 401.04 32.7173 0.2006 re
-f*
-1 g
-311.654 401.04 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-317.676 401.04 94.5388 0.2006 re
-f*
-0 g
-255.453 401.241 15.8569 0.2005 re
-f*
-1 g
-271.31 401.241 7.6273 0.2005 re
-f*
-0 g
-278.937 401.241 32.5165 0.2005 re
-f*
-1 g
-311.453 401.241 6.2224 0.2005 re
-f*
-0.498 0 0.482 rg
-317.676 401.241 94.7395 0.2005 re
-f*
-0 g
-255.252 401.441 16.0576 0.2005 re
-f*
-1 g
-271.31 401.441 7.6273 0.2005 re
-f*
-0 g
-278.937 401.441 32.5165 0.2005 re
-f*
-1 g
-311.453 401.441 6.2224 0.2005 re
-f*
-0.498 0 0.482 rg
-317.676 401.441 94.9402 0.2005 re
-f*
-0 g
-255.252 401.642 16.0576 0.2006 re
-f*
-1 g
-271.31 401.642 7.6273 0.2006 re
-f*
-0 g
-278.937 401.642 32.5165 0.2006 re
-f*
-1 g
-311.453 401.642 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-317.475 401.642 95.141 0.2006 re
-f*
-0 g
-255.051 401.842 16.2583 0.2006 re
-f*
-1 g
-271.31 401.842 7.6273 0.2006 re
-f*
-0 g
-278.937 401.842 32.5165 0.2006 re
-f*
-1 g
-311.453 401.842 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-317.475 401.842 95.3417 0.2006 re
-f*
-0 g
-255.051 402.043 16.2583 0.2005 re
-f*
-1 g
-271.31 402.043 7.6273 0.2005 re
-f*
-0 g
-278.937 402.043 32.3158 0.2005 re
-f*
-1 g
-311.253 402.043 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-317.475 402.043 95.3417 0.2005 re
-f*
-0 g
-254.851 402.243 16.4591 0.2005 re
-f*
-1 g
-271.31 402.243 7.6273 0.2005 re
-f*
-0 g
-278.937 402.243 32.3158 0.2005 re
-f*
-1 g
-311.253 402.243 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-317.475 402.243 95.5425 0.2005 re
-f*
-0 g
-254.851 402.444 16.4591 0.2006 re
-f*
-1 g
-271.31 402.444 7.6273 0.2006 re
-f*
-0 g
-278.937 402.444 32.3158 0.2006 re
-f*
-1 g
-311.253 402.444 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-317.274 402.444 95.7432 0.2006 re
-f*
-0 g
-254.65 402.644 16.6598 0.2006 re
-f*
-1 g
-271.31 402.644 7.6273 0.2006 re
-f*
-0 g
-278.937 402.644 32.1151 0.2006 re
-f*
-1 g
-311.052 402.644 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-317.274 402.644 95.9438 0.2006 re
-f*
-0 g
-254.449 402.845 16.8605 0.2006 re
-f*
-1 g
-271.31 402.845 7.6273 0.2006 re
-f*
-0 g
-278.937 402.845 32.1151 0.2006 re
-f*
-1 g
-311.052 402.845 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-317.274 402.845 95.9438 0.2006 re
-f*
-0 g
-254.449 403.046 16.8605 0.2006 re
-f*
-1 g
-271.31 403.046 7.6273 0.2006 re
-f*
-0 g
-278.937 403.046 32.1151 0.2006 re
-f*
-1 g
-311.052 403.046 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-317.274 403.046 96.1446 0.2006 re
-f*
-0 g
-254.248 403.246 17.0612 0.2005 re
-f*
-1 g
-271.31 403.246 7.6273 0.2005 re
-f*
-0 g
-278.937 403.246 32.1151 0.2005 re
-f*
-1 g
-311.052 403.246 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-317.274 403.246 96.1446 0.2005 re
-f*
-0 g
-254.248 403.447 17.0612 0.2005 re
-f*
-1 g
-271.31 403.447 7.6273 0.2005 re
-f*
-0 g
-278.937 403.447 31.9144 0.2005 re
-f*
-1 g
-310.851 403.447 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-317.274 403.447 96.3453 0.2005 re
-f*
-0 g
-254.048 403.647 17.2619 0.2006 re
-f*
-1 g
-271.31 403.647 7.6273 0.2006 re
-f*
-0 g
-278.937 403.647 31.9144 0.2006 re
-f*
-1 g
-310.851 403.647 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 403.647 96.546 0.2006 re
-f*
-0 g
-254.048 403.848 17.2619 0.2006 re
-f*
-1 g
-271.31 403.848 7.6273 0.2006 re
-f*
-0 g
-278.937 403.848 31.9144 0.2006 re
-f*
-1 g
-310.851 403.848 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 403.848 96.7467 0.2006 re
-f*
-0 g
-253.847 404.048 17.4626 0.2005 re
-f*
-1 g
-271.31 404.048 7.6273 0.2005 re
-f*
-0 g
-278.937 404.048 31.9144 0.2005 re
-f*
-1 g
-310.851 404.048 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 404.048 13.6489 0.2005 re
-f*
-1 g
-330.722 404.048 8.4302 0.2005 re
-f*
-0.498 0 0.482 rg
-339.153 404.048 74.6676 0.2005 re
-f*
-0 g
-253.847 404.249 17.4626 0.2005 re
-f*
-1 g
-271.31 404.249 7.6273 0.2005 re
-f*
-0 g
-278.937 404.249 31.7137 0.2005 re
-f*
-1 g
-310.651 404.249 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 404.249 12.2439 0.2005 re
-f*
-1 g
-329.317 404.249 11.2403 0.2005 re
-f*
-0.498 0 0.482 rg
-340.558 404.249 73.4633 0.2005 re
-f*
-0 g
-253.646 404.449 17.6633 0.2006 re
-f*
-1 g
-271.31 404.449 7.6273 0.2006 re
-f*
-0 g
-278.937 404.449 31.7137 0.2006 re
-f*
-1 g
-310.651 404.449 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 404.449 11.0395 0.2006 re
-f*
-1 g
-328.113 404.449 13.4483 0.2006 re
-f*
-0.498 0 0.482 rg
-341.561 404.449 72.4597 0.2006 re
-f*
-0 g
-253.646 404.65 17.6633 0.2006 re
-f*
-1 g
-271.31 404.65 7.6273 0.2006 re
-f*
-0 g
-278.937 404.65 31.7137 0.2006 re
-f*
-1 g
-310.651 404.65 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 404.65 9.8352 0.2006 re
-f*
-1 g
-326.909 404.65 15.6561 0.2006 re
-f*
-0.498 0 0.482 rg
-342.565 404.65 71.6568 0.2006 re
-f*
-0 g
-253.445 404.851 17.8641 0.2005 re
-f*
-1 g
-271.31 404.851 7.6273 0.2005 re
-f*
-0 g
-278.937 404.851 31.7137 0.2005 re
-f*
-1 g
-310.651 404.851 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 404.851 8.8316 0.2005 re
-f*
-1 g
-325.905 404.851 17.2619 0.2005 re
-f*
-0.498 0 0.482 rg
-343.167 404.851 71.0546 0.2005 re
-f*
-0 g
-253.445 405.051 17.8641 0.2006 re
-f*
-1 g
-271.31 405.051 7.6273 0.2006 re
-f*
-0 g
-278.937 405.051 31.7137 0.2006 re
-f*
-1 g
-310.651 405.051 6.423 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 405.051 8.0288 0.2006 re
-f*
-1 g
-325.102 405.051 7.0251 0.2006 re
-f*
-0 g
-332.127 405.051 6.2223 0.2006 re
-f*
-1 g
-338.35 405.051 5.6201 0.2006 re
-f*
-0.498 0 0.482 rg
-343.97 405.051 70.4526 0.2006 re
-f*
-0 g
-253.445 405.252 17.8641 0.2005 re
-f*
-1 g
-271.31 405.252 7.6273 0.2005 re
-f*
-0 g
-278.937 405.252 31.513 0.2005 re
-f*
-1 g
-310.45 405.252 6.4229 0.2005 re
-f*
-0.498 0 0.482 rg
-316.873 405.252 7.6274 0.2005 re
-f*
-1 g
-324.5 405.252 5.6201 0.2005 re
-f*
-0 g
-330.12 405.252 9.8353 0.2005 re
-f*
-1 g
-339.956 405.252 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-344.572 405.252 69.8504 0.2005 re
-f*
-0 g
-253.245 405.452 18.0648 0.2006 re
-f*
-1 g
-271.31 405.452 7.6273 0.2006 re
-f*
-0 g
-278.937 405.452 31.513 0.2006 re
-f*
-1 g
-310.45 405.452 6.4229 0.2006 re
-f*
-0.498 0 0.482 rg
-316.873 405.452 7.0252 0.2006 re
-f*
-1 g
-323.898 405.452 5.2187 0.2006 re
-f*
-0 g
-329.117 405.452 12.0432 0.2006 re
-f*
-1 g
-341.16 405.452 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-344.973 405.452 69.6497 0.2006 re
-f*
-0 g
-253.245 405.653 18.0648 0.2006 re
-f*
-1 g
-271.31 405.653 7.6273 0.2006 re
-f*
-0 g
-278.937 405.653 31.513 0.2006 re
-f*
-1 g
-310.45 405.653 6.4229 0.2006 re
-f*
-0.498 0 0.482 rg
-316.873 405.653 6.4231 0.2006 re
-f*
-1 g
-323.296 405.653 4.8172 0.2006 re
-f*
-0 g
-328.113 405.653 13.8497 0.2006 re
-f*
-1 g
-341.963 405.653 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-345.576 405.653 69.0475 0.2006 re
-f*
-0 g
-253.044 405.853 18.2655 0.2006 re
-f*
-1 g
-271.31 405.853 7.6273 0.2006 re
-f*
-0 g
-278.937 405.853 31.513 0.2006 re
-f*
-1 g
-310.45 405.853 6.4229 0.2006 re
-f*
-0.498 0 0.482 rg
-316.873 405.853 5.821 0.2006 re
-f*
-1 g
-322.694 405.853 4.8172 0.2006 re
-f*
-0 g
-327.511 405.853 15.0539 0.2006 re
-f*
-1 g
-342.565 405.853 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-345.977 405.853 68.8468 0.2006 re
-f*
-0 g
-253.044 406.054 18.2655 0.2005 re
-f*
-1 g
-271.31 406.054 7.6273 0.2005 re
-f*
-0 g
-278.937 406.054 31.513 0.2005 re
-f*
-1 g
-310.45 406.054 6.4229 0.2005 re
-f*
-0.498 0 0.482 rg
-316.873 406.054 5.2188 0.2005 re
-f*
-1 g
-322.092 406.054 4.6165 0.2005 re
-f*
-0 g
-326.708 406.054 16.459 0.2005 re
-f*
-1 g
-343.167 406.054 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-346.379 406.054 68.4453 0.2005 re
-f*
-0 g
-252.843 406.255 18.4662 0.2005 re
-f*
-1 g
-271.31 406.255 7.6273 0.2005 re
-f*
-0 g
-278.937 406.255 31.3122 0.2005 re
-f*
-1 g
-310.249 406.255 6.6237 0.2005 re
-f*
-0.498 0 0.482 rg
-316.873 406.255 4.8174 0.2005 re
-f*
-1 g
-321.69 406.255 4.6165 0.2005 re
-f*
-0 g
-326.307 406.255 17.4626 0.2005 re
-f*
-1 g
-343.769 406.255 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-346.78 406.255 68.0438 0.2005 re
-f*
-0 g
-252.843 406.455 18.4662 0.2006 re
-f*
-1 g
-271.31 406.455 7.6273 0.2006 re
-f*
-0 g
-278.937 406.455 31.3122 0.2006 re
-f*
-1 g
-310.249 406.455 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-316.873 406.455 4.2152 0.2006 re
-f*
-1 g
-321.088 406.455 4.6165 0.2006 re
-f*
-0 g
-325.704 406.455 18.4662 0.2006 re
-f*
-1 g
-344.171 406.455 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-347.382 406.455 67.6425 0.2006 re
-f*
-0 g
-252.843 406.656 18.4662 0.2006 re
-f*
-1 g
-271.31 406.656 7.6273 0.2006 re
-f*
-0 g
-278.937 406.656 31.3122 0.2006 re
-f*
-1 g
-310.249 406.656 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-316.873 406.656 3.8138 0.2006 re
-f*
-1 g
-320.687 406.656 4.6165 0.2006 re
-f*
-0 g
-325.303 406.656 19.269 0.2006 re
-f*
-1 g
-344.572 406.656 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-347.784 406.656 67.241 0.2006 re
-f*
-0 g
-252.643 406.856 18.6669 0.2005 re
-f*
-1 g
-271.31 406.856 7.6273 0.2005 re
-f*
-0 g
-278.937 406.856 31.3122 0.2005 re
-f*
-1 g
-310.249 406.856 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 406.856 3.0108 0.2005 re
-f*
-1 g
-320.084 406.856 4.8172 0.2005 re
-f*
-0 g
-324.902 406.856 20.0719 0.2005 re
-f*
-1 g
-344.973 406.856 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-348.185 406.856 67.0402 0.2005 re
-f*
-0 g
-252.643 407.057 18.6669 0.2006 re
-f*
-1 g
-271.31 407.057 7.6273 0.2006 re
-f*
-0 g
-278.937 407.057 31.3122 0.2006 re
-f*
-1 g
-310.249 407.057 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 407.057 2.4086 0.2006 re
-f*
-1 g
-319.482 407.057 4.8173 0.2006 re
-f*
-0 g
-324.299 407.057 21.0755 0.2006 re
-f*
-1 g
-345.375 407.057 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-348.386 407.057 66.8395 0.2006 re
-f*
-0 g
-252.442 407.257 18.8677 0.2005 re
-f*
-1 g
-271.31 407.257 7.6273 0.2005 re
-f*
-0 g
-278.937 407.257 31.1115 0.2005 re
-f*
-1 g
-310.048 407.257 7.0252 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 407.257 2.0071 0.2005 re
-f*
-1 g
-319.081 407.257 5.0181 0.2005 re
-f*
-0 g
-324.099 407.257 21.4769 0.2005 re
-f*
-1 g
-345.576 407.257 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-348.787 407.257 66.438 0.2005 re
-f*
-0 g
-252.442 407.458 18.8677 0.2006 re
-f*
-1 g
-271.31 407.458 7.6273 0.2006 re
-f*
-0 g
-278.937 407.458 31.1115 0.2006 re
-f*
-1 g
-310.048 407.458 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 407.458 1.405 0.2006 re
-f*
-1 g
-318.479 407.458 5.2187 0.2006 re
-f*
-0 g
-323.697 407.458 22.2798 0.2006 re
-f*
-1 g
-345.977 407.458 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-349.189 407.458 66.2374 0.2006 re
-f*
-0 g
-252.442 407.658 18.8677 0.2006 re
-f*
-1 g
-271.31 407.658 7.6273 0.2006 re
-f*
-0 g
-278.937 407.658 31.1115 0.2006 re
-f*
-1 g
-310.048 407.658 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-317.074 407.658 1.0035 0.2006 re
-f*
-1 g
-318.077 407.658 5.2188 0.2006 re
-f*
-0 g
-323.296 407.658 22.882 0.2006 re
-f*
-1 g
-346.178 407.658 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-349.389 407.658 66.0367 0.2006 re
-f*
-0 g
-252.241 407.859 19.0684 0.2005 re
-f*
-1 g
-271.31 407.859 7.6273 0.2005 re
-f*
-0 g
-278.937 407.859 31.1115 0.2005 re
-f*
-1 g
-310.048 407.859 7.0252 0.2005 re
-f*
-0.498 0 0.482 rg
-317.074 407.859 0.4014 0.2005 re
-f*
-1 g
-317.475 407.859 5.4194 0.2005 re
-f*
-0 g
-322.894 407.859 23.6849 0.2005 re
-f*
-1 g
-346.579 407.859 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-349.791 407.859 65.8359 0.2005 re
-f*
-0 g
-252.241 408.06 19.0684 0.2006 re
-f*
-1 g
-271.31 408.06 7.6273 0.2006 re
-f*
-0 g
-278.937 408.06 31.1115 0.2006 re
-f*
-1 g
-310.048 408.06 12.6454 0.2006 re
-f*
-0 g
-322.694 408.06 24.0863 0.2006 re
-f*
-1 g
-346.78 408.06 3.2114 0.2006 re
-f*
-0.498 0 0.482 rg
-349.991 408.06 65.6353 0.2006 re
-f*
-0 g
-252.241 408.26 19.0684 0.2005 re
-f*
-1 g
-271.31 408.26 7.6273 0.2005 re
-f*
-0 g
-278.937 408.26 31.1115 0.2005 re
-f*
-1 g
-310.048 408.26 12.2439 0.2005 re
-f*
-0 g
-322.292 408.26 24.8892 0.2005 re
-f*
-1 g
-347.181 408.26 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-350.393 408.26 65.2338 0.2005 re
-f*
-0 g
-252.04 408.461 19.2691 0.2006 re
-f*
-1 g
-271.31 408.461 7.6273 0.2006 re
-f*
-0 g
-278.937 408.461 31.1115 0.2006 re
-f*
-1 g
-310.048 408.461 12.0432 0.2006 re
-f*
-0 g
-322.092 408.461 25.2906 0.2006 re
-f*
-1 g
-347.382 408.461 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-350.594 408.461 65.2338 0.2006 re
-f*
-0 g
-252.04 408.661 19.2691 0.2006 re
-f*
-1 g
-271.31 408.661 7.6273 0.2006 re
-f*
-0 g
-278.937 408.661 30.9108 0.2006 re
-f*
-1 g
-309.848 408.661 11.8425 0.2006 re
-f*
-0 g
-321.69 408.661 25.8927 0.2006 re
-f*
-1 g
-347.583 408.661 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-350.794 408.661 65.033 0.2006 re
-f*
-0 g
-252.04 408.862 19.2691 0.2005 re
-f*
-1 g
-271.31 408.862 7.6273 0.2005 re
-f*
-0 g
-278.937 408.862 30.9108 0.2005 re
-f*
-1 g
-309.848 408.862 11.6417 0.2005 re
-f*
-0 g
-321.489 408.862 26.2943 0.2005 re
-f*
-1 g
-347.784 408.862 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-351.196 408.862 64.6316 0.2005 re
-f*
-0 g
-251.84 409.062 19.4698 0.2006 re
-f*
-1 g
-271.31 409.062 7.6273 0.2006 re
-f*
-0 g
-278.937 409.062 30.9108 0.2006 re
-f*
-1 g
-309.848 409.062 11.2403 0.2006 re
-f*
-0 g
-321.088 409.062 26.8963 0.2006 re
-f*
-1 g
-347.984 409.062 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-351.397 409.062 64.6317 0.2006 re
-f*
-0 g
-251.84 409.263 19.4698 0.2005 re
-f*
-1 g
-271.31 409.263 7.6273 0.2005 re
-f*
-0 g
-278.937 409.263 30.9108 0.2005 re
-f*
-1 g
-309.848 409.263 11.0395 0.2005 re
-f*
-0 g
-320.887 409.263 27.4986 0.2005 re
-f*
-1 g
-348.386 409.263 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-351.597 409.263 64.431 0.2005 re
-f*
-0 g
-251.84 409.463 19.4698 0.2006 re
-f*
-1 g
-271.31 409.463 7.6273 0.2006 re
-f*
-0 g
-278.937 409.463 30.9108 0.2006 re
-f*
-1 g
-309.848 409.463 10.8389 0.2006 re
-f*
-0 g
-320.687 409.463 27.6992 0.2006 re
-f*
-1 g
-348.386 409.463 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-351.999 409.463 64.0296 0.2006 re
-f*
-0 g
-251.639 409.664 19.6705 0.2006 re
-f*
-1 g
-271.31 409.664 7.6273 0.2006 re
-f*
-0 g
-278.937 409.664 30.9108 0.2006 re
-f*
-1 g
-309.848 409.664 10.4374 0.2006 re
-f*
-0 g
-320.285 409.664 28.3014 0.2006 re
-f*
-1 g
-348.586 409.664 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-352.2 409.664 64.0294 0.2006 re
-f*
-0 g
-251.639 409.865 19.6705 0.2005 re
-f*
-1 g
-271.31 409.865 7.6273 0.2005 re
-f*
-0 g
-278.937 409.865 30.9108 0.2005 re
-f*
-1 g
-309.848 409.865 10.2367 0.2005 re
-f*
-0 g
-320.084 409.865 28.7029 0.2005 re
-f*
-1 g
-348.787 409.865 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-352.4 409.865 63.8287 0.2005 re
-f*
-0 g
-251.639 410.065 19.6705 0.2006 re
-f*
-1 g
-271.31 410.065 7.6273 0.2006 re
-f*
-0 g
-278.937 410.065 30.7101 0.2006 re
-f*
-1 g
-309.647 410.065 10.2366 0.2006 re
-f*
-0 g
-319.884 410.065 29.1043 0.2006 re
-f*
-1 g
-348.988 410.065 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-352.601 410.065 63.628 0.2006 re
-f*
-0 g
-251.438 410.266 19.8713 0.2005 re
-f*
-1 g
-271.31 410.266 7.6273 0.2005 re
-f*
-0 g
-278.937 410.266 30.7101 0.2005 re
-f*
-1 g
-309.647 410.266 10.036 0.2005 re
-f*
-0 g
-319.683 410.266 29.5057 0.2005 re
-f*
-1 g
-349.189 410.266 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-352.802 410.266 63.4272 0.2005 re
-f*
-0 g
-251.438 410.466 19.8713 0.2006 re
-f*
-1 g
-271.31 410.466 7.6273 0.2006 re
-f*
-0 g
-278.937 410.466 30.7101 0.2006 re
-f*
-1 g
-309.647 410.466 9.8352 0.2006 re
-f*
-0 g
-319.482 410.466 29.9072 0.2006 re
-f*
-1 g
-349.389 410.466 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-353.002 410.466 63.4274 0.2006 re
-f*
-0 g
-251.438 410.667 19.8713 0.2005 re
-f*
-1 g
-271.31 410.667 7.6273 0.2005 re
-f*
-0 g
-278.937 410.667 30.7101 0.2005 re
-f*
-1 g
-309.647 410.667 9.6345 0.2005 re
-f*
-0 g
-319.281 410.667 30.3086 0.2005 re
-f*
-1 g
-349.59 410.667 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 410.667 63.2266 0.2005 re
-f*
-0 g
-251.438 410.867 19.8713 0.2006 re
-f*
-1 g
-271.31 410.867 7.6273 0.2006 re
-f*
-0 g
-278.937 410.867 30.7101 0.2006 re
-f*
-1 g
-309.647 410.867 9.4337 0.2006 re
-f*
-0 g
-319.081 410.867 30.5094 0.2006 re
-f*
-1 g
-349.59 410.867 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-353.404 410.867 63.0259 0.2006 re
-f*
-0 g
-251.238 411.068 20.072 0.2006 re
-f*
-1 g
-271.31 411.068 7.6273 0.2006 re
-f*
-0 g
-278.937 411.068 30.7101 0.2006 re
-f*
-1 g
-309.647 411.068 9.233 0.2006 re
-f*
-0 g
-318.88 411.068 30.9109 0.2006 re
-f*
-1 g
-349.791 411.068 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-353.605 411.068 62.8252 0.2006 re
-f*
-0 g
-251.238 411.268 20.072 0.2005 re
-f*
-1 g
-271.31 411.268 7.6273 0.2005 re
-f*
-0 g
-278.937 411.268 30.7101 0.2005 re
-f*
-1 g
-309.647 411.268 9.0324 0.2005 re
-f*
-0 g
-318.679 411.268 31.3121 0.2005 re
-f*
-1 g
-349.991 411.268 3.8138 0.2005 re
-f*
-0.498 0 0.482 rg
-353.805 411.268 28.7028 0.2005 re
-f*
-1 g
-382.508 411.268 1.2043 0.2005 re
-f*
-0.498 0 0.482 rg
-383.712 411.268 23.2835 0.2005 re
-f*
-1 g
-406.996 411.268 1.6057 0.2005 re
-f*
-0.498 0 0.482 rg
-408.602 411.268 8.0288 0.2005 re
-f*
-0 g
-251.238 411.469 20.072 0.2006 re
-f*
-1 g
-271.31 411.469 7.6273 0.2006 re
-f*
-0 g
-278.937 411.469 30.7101 0.2006 re
-f*
-1 g
-309.647 411.469 8.8316 0.2006 re
-f*
-0 g
-318.479 411.469 31.5129 0.2006 re
-f*
-1 g
-349.991 411.469 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-354.006 411.469 27.0972 0.2006 re
-f*
-1 g
-381.103 411.469 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-384.917 411.469 20.4734 0.2006 re
-f*
-1 g
-405.39 411.469 4.6166 0.2006 re
-f*
-0.498 0 0.482 rg
-410.007 411.469 6.6237 0.2006 re
-f*
-0 g
-251.238 411.67 20.072 0.2005 re
-f*
-1 g
-271.31 411.67 7.6273 0.2005 re
-f*
-0 g
-278.937 411.67 30.5094 0.2005 re
-f*
-1 g
-309.446 411.67 8.8316 0.2005 re
-f*
-0 g
-318.278 411.67 31.9144 0.2005 re
-f*
-1 g
-350.192 411.67 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-354.207 411.67 26.2942 0.2005 re
-f*
-1 g
-380.501 411.67 4.8173 0.2005 re
-f*
-0.498 0 0.482 rg
-385.318 411.67 19.269 0.2005 re
-f*
-1 g
-404.587 411.67 6.0216 0.2005 re
-f*
-0.498 0 0.482 rg
-410.609 411.67 6.0216 0.2005 re
-f*
-0 g
-251.037 411.87 20.2727 0.2006 re
-f*
-1 g
-271.31 411.87 7.6273 0.2006 re
-f*
-0 g
-278.937 411.87 30.5094 0.2006 re
-f*
-1 g
-309.446 411.87 8.6308 0.2006 re
-f*
-0 g
-318.077 411.87 32.3159 0.2006 re
-f*
-1 g
-350.393 411.87 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-354.407 411.87 6.2223 0.2006 re
-f*
-1 g
-360.63 411.87 9.6345 0.2006 re
-f*
-0.498 0 0.482 rg
-370.264 411.87 9.6346 0.2006 re
-f*
-1 g
-379.899 411.87 5.8208 0.2006 re
-f*
-0.498 0 0.482 rg
-385.72 411.87 2.6093 0.2006 re
-f*
-1 g
-388.329 411.87 0.2008 0.2006 re
-f*
-0.498 0 0.482 rg
-388.53 411.87 6.2223 0.2006 re
-f*
-1 g
-394.752 411.87 0.2007 0.2006 re
-f*
-0.498 0 0.482 rg
-394.953 411.87 9.0324 0.2006 re
-f*
-1 g
-403.985 411.87 7.2259 0.2006 re
-f*
-0.498 0 0.482 rg
-411.211 411.87 5.4194 0.2006 re
-f*
-0 g
-251.037 412.071 20.2727 0.2006 re
-f*
-1 g
-271.31 412.071 7.6273 0.2006 re
-f*
-0 g
-278.937 412.071 30.5094 0.2006 re
-f*
-1 g
-309.446 412.071 8.4301 0.2006 re
-f*
-0 g
-317.876 412.071 32.5166 0.2006 re
-f*
-1 g
-350.393 412.071 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-354.407 412.071 6.2223 0.2006 re
-f*
-1 g
-360.63 412.071 9.6345 0.2006 re
-f*
-0.498 0 0.482 rg
-370.264 412.071 9.2331 0.2006 re
-f*
-1 g
-379.497 412.071 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-382.307 412.071 1.6058 0.2006 re
-f*
-1 g
-383.913 412.071 2.2078 0.2006 re
-f*
-0.498 0 0.482 rg
-386.121 412.071 2.2079 0.2006 re
-f*
-1 g
-388.329 412.071 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-394.953 412.071 8.6309 0.2006 re
-f*
-1 g
-403.584 412.071 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-406.996 412.071 1.8065 0.2006 re
-f*
-1 g
-408.802 412.071 2.6093 0.2006 re
-f*
-0.498 0 0.482 rg
-411.412 412.071 5.4194 0.2006 re
-f*
-0 g
-251.037 412.271 20.2727 0.2005 re
-f*
-1 g
-271.31 412.271 7.6273 0.2005 re
-f*
-0 g
-278.937 412.271 30.5094 0.2005 re
-f*
-1 g
-309.446 412.271 8.2295 0.2005 re
-f*
-0 g
-317.676 412.271 32.9179 0.2005 re
-f*
-1 g
-350.594 412.271 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-354.608 412.271 6.0216 0.2005 re
-f*
-1 g
-360.63 412.271 9.6345 0.2005 re
-f*
-0.498 0 0.482 rg
-370.264 412.271 8.8317 0.2005 re
-f*
-1 g
-379.096 412.271 2.2079 0.2005 re
-f*
-0.498 0 0.482 rg
-381.304 412.271 3.4122 0.2005 re
-f*
-1 g
-384.716 412.271 1.6057 0.2005 re
-f*
-0.498 0 0.482 rg
-386.322 412.271 2.0072 0.2005 re
-f*
-1 g
-388.329 412.271 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-394.953 412.271 8.2295 0.2005 re
-f*
-1 g
-403.182 412.271 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-406.193 412.271 3.613 0.2005 re
-f*
-1 g
-409.806 412.271 2.0071 0.2005 re
-f*
-0.498 0 0.482 rg
-411.813 412.271 5.018 0.2005 re
-f*
-0 g
-251.037 412.472 20.2727 0.2006 re
-f*
-1 g
-271.31 412.472 7.6273 0.2006 re
-f*
-0 g
-278.937 412.472 30.5094 0.2006 re
-f*
-1 g
-309.446 412.472 8.0287 0.2006 re
-f*
-0 g
-317.475 412.472 21.0756 0.2006 re
-f*
-1 g
-338.551 412.472 2.81 0.2006 re
-f*
-0 g
-341.361 412.472 9.2331 0.2006 re
-f*
-1 g
-350.594 412.472 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-354.809 412.472 5.8209 0.2006 re
-f*
-1 g
-360.63 412.472 9.6345 0.2006 re
-f*
-0.498 0 0.482 rg
-370.264 412.472 8.4303 0.2006 re
-f*
-1 g
-378.695 412.472 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-380.902 412.472 4.4158 0.2006 re
-f*
-1 g
-385.318 412.472 1.405 0.2006 re
-f*
-0.498 0 0.482 rg
-386.723 412.472 1.6057 0.2006 re
-f*
-1 g
-388.329 412.472 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-394.953 412.472 7.8281 0.2006 re
-f*
-1 g
-402.781 412.472 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-405.591 412.472 4.8172 0.2006 re
-f*
-1 g
-410.408 412.472 1.8065 0.2006 re
-f*
-0.498 0 0.482 rg
-412.215 412.472 4.6165 0.2006 re
-f*
-0 g
-250.836 412.672 20.4734 0.2005 re
-f*
-1 g
-271.31 412.672 7.6273 0.2005 re
-f*
-0 g
-278.937 412.672 30.5094 0.2005 re
-f*
-1 g
-309.446 412.672 8.0287 0.2005 re
-f*
-0 g
-317.475 412.672 19.8713 0.2005 re
-f*
-1 g
-337.346 412.672 5.0179 0.2005 re
-f*
-0 g
-342.364 412.672 8.4303 0.2005 re
-f*
-1 g
-350.794 412.672 4.215 0.2005 re
-f*
-0.498 0 0.482 rg
-355.01 412.672 8.631 0.2005 re
-f*
-1 g
-363.641 412.672 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 412.672 11.2403 0.2005 re
-f*
-1 g
-378.494 412.672 2.0072 0.2005 re
-f*
-0.498 0 0.482 rg
-380.501 412.672 5.018 0.2005 re
-f*
-1 g
-385.519 412.672 1.4051 0.2005 re
-f*
-0.498 0 0.482 rg
-386.924 412.672 1.4049 0.2005 re
-f*
-1 g
-388.329 412.672 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 412.672 10.6381 0.2005 re
-f*
-1 g
-402.379 412.672 2.8101 0.2005 re
-f*
-0.498 0 0.482 rg
-405.189 412.672 5.6201 0.2005 re
-f*
-1 g
-410.81 412.672 1.6058 0.2005 re
-f*
-0.498 0 0.482 rg
-412.415 412.672 4.4158 0.2005 re
-f*
-0 g
-250.836 412.873 20.4734 0.2006 re
-f*
-1 g
-271.31 412.873 7.6273 0.2006 re
-f*
-0 g
-278.937 412.873 30.5094 0.2006 re
-f*
-1 g
-309.446 412.873 7.828 0.2006 re
-f*
-0 g
-317.274 412.873 19.4698 0.2006 re
-f*
-1 g
-336.744 412.873 6.2223 0.2006 re
-f*
-0 g
-342.966 412.873 8.0287 0.2006 re
-f*
-1 g
-350.995 412.873 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-355.21 412.873 8.4302 0.2006 re
-f*
-1 g
-363.641 412.873 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 412.873 10.8389 0.2006 re
-f*
-1 g
-378.092 412.873 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-380.3 412.873 5.6201 0.2006 re
-f*
-1 g
-385.92 412.873 1.2043 0.2006 re
-f*
-0.498 0 0.482 rg
-387.125 412.873 1.2043 0.2006 re
-f*
-1 g
-388.329 412.873 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 412.873 10.4374 0.2006 re
-f*
-1 g
-402.179 412.873 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-404.989 412.873 6.2223 0.2006 re
-f*
-1 g
-411.211 412.873 1.405 0.2006 re
-f*
-0.498 0 0.482 rg
-412.616 412.873 4.4159 0.2006 re
-f*
-0 g
-250.836 413.073 20.4734 0.2006 re
-f*
-1 g
-271.31 413.073 7.6273 0.2006 re
-f*
-0 g
-278.937 413.073 13.0467 0.2006 re
-f*
-1 g
-291.984 413.073 10.036 0.2006 re
-f*
-0 g
-302.02 413.073 7.4267 0.2006 re
-f*
-1 g
-309.446 413.073 7.6273 0.2006 re
-f*
-0 g
-317.074 413.073 19.0683 0.2006 re
-f*
-1 g
-336.142 413.073 7.2259 0.2006 re
-f*
-0 g
-343.368 413.073 7.6273 0.2006 re
-f*
-1 g
-350.995 413.073 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-355.21 413.073 8.4302 0.2006 re
-f*
-1 g
-363.641 413.073 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 413.073 10.6382 0.2006 re
-f*
-1 g
-377.892 413.073 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-380.099 413.073 6.0215 0.2006 re
-f*
-1 g
-386.121 413.073 1.2043 0.2006 re
-f*
-0.498 0 0.482 rg
-387.325 413.073 1.0036 0.2006 re
-f*
-1 g
-388.329 413.073 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 413.073 10.036 0.2006 re
-f*
-1 g
-401.777 413.073 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-404.788 413.073 6.8244 0.2006 re
-f*
-1 g
-411.612 413.073 1.2043 0.2006 re
-f*
-0.498 0 0.482 rg
-412.817 413.073 4.2152 0.2006 re
-f*
-0 g
-250.836 413.274 20.4734 0.2005 re
-f*
-1 g
-271.31 413.274 7.6273 0.2005 re
-f*
-0 g
-278.937 413.274 13.0467 0.2005 re
-f*
-1 g
-291.984 413.274 10.036 0.2005 re
-f*
-0 g
-302.02 413.274 7.4267 0.2005 re
-f*
-1 g
-309.446 413.274 7.4265 0.2005 re
-f*
-0 g
-316.873 413.274 18.667 0.2005 re
-f*
-1 g
-335.54 413.274 3.2115 0.2005 re
-f*
-0 g
-338.751 413.274 2.8101 0.2005 re
-f*
-1 g
-341.561 413.274 2.2079 0.2005 re
-f*
-0 g
-343.769 413.274 7.4266 0.2005 re
-f*
-1 g
-351.196 413.274 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-355.411 413.274 8.2295 0.2005 re
-f*
-1 g
-363.641 413.274 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 413.274 10.4375 0.2005 re
-f*
-1 g
-377.691 413.274 2.2079 0.2005 re
-f*
-0.498 0 0.482 rg
-379.899 413.274 6.4229 0.2005 re
-f*
-1 g
-386.322 413.274 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-387.325 413.274 1.0036 0.2005 re
-f*
-1 g
-388.329 413.274 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 413.274 9.8352 0.2005 re
-f*
-1 g
-401.576 413.274 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-404.587 413.274 7.2259 0.2005 re
-f*
-1 g
-411.813 413.274 1.2044 0.2005 re
-f*
-0.498 0 0.482 rg
-413.017 413.274 4.0144 0.2005 re
-f*
-0 g
-250.836 413.475 20.4734 0.2006 re
-f*
-1 g
-271.31 413.475 7.6273 0.2006 re
-f*
-0 g
-278.937 413.475 13.0467 0.2006 re
-f*
-1 g
-291.984 413.475 10.036 0.2006 re
-f*
-0 g
-302.02 413.475 7.4267 0.2006 re
-f*
-1 g
-309.446 413.475 7.4265 0.2006 re
-f*
-0 g
-316.873 413.475 18.2655 0.2006 re
-f*
-1 g
-335.138 413.475 3.0108 0.2006 re
-f*
-0 g
-338.149 413.475 4.2151 0.2006 re
-f*
-1 g
-342.364 413.475 1.8065 0.2006 re
-f*
-0 g
-344.171 413.475 7.0252 0.2006 re
-f*
-1 g
-351.196 413.475 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-355.612 413.475 8.0288 0.2006 re
-f*
-1 g
-363.641 413.475 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 413.475 10.2367 0.2006 re
-f*
-1 g
-377.49 413.475 2.208 0.2006 re
-f*
-0.498 0 0.482 rg
-379.698 413.475 6.8244 0.2006 re
-f*
-1 g
-386.522 413.475 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-387.526 413.475 0.8028 0.2006 re
-f*
-1 g
-388.329 413.475 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 413.475 9.6345 0.2006 re
-f*
-1 g
-401.376 413.475 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-404.386 413.475 7.6274 0.2006 re
-f*
-1 g
-412.014 413.475 1.2042 0.2006 re
-f*
-0.498 0 0.482 rg
-413.218 413.475 3.8138 0.2006 re
-f*
-0 g
-250.836 413.675 20.4734 0.2005 re
-f*
-1 g
-271.31 413.675 7.6273 0.2005 re
-f*
-0 g
-278.937 413.675 13.0467 0.2005 re
-f*
-1 g
-291.984 413.675 10.036 0.2005 re
-f*
-0 g
-302.02 413.675 7.4267 0.2005 re
-f*
-1 g
-309.446 413.675 7.2258 0.2005 re
-f*
-0 g
-316.672 413.675 18.2655 0.2005 re
-f*
-1 g
-334.938 413.675 2.8101 0.2005 re
-f*
-0 g
-337.748 413.675 5.018 0.2005 re
-f*
-1 g
-342.766 413.675 1.6057 0.2005 re
-f*
-0 g
-344.371 413.675 6.8245 0.2005 re
-f*
-1 g
-351.196 413.675 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-355.812 413.675 7.8281 0.2005 re
-f*
-1 g
-363.641 413.675 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 413.675 10.036 0.2005 re
-f*
-1 g
-377.289 413.675 2.2079 0.2005 re
-f*
-0.498 0 0.482 rg
-379.497 413.675 7.2259 0.2005 re
-f*
-1 g
-386.723 413.675 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-387.727 413.675 0.6021 0.2005 re
-f*
-1 g
-388.329 413.675 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 413.675 9.4338 0.2005 re
-f*
-1 g
-401.175 413.675 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-404.186 413.675 8.0288 0.2005 re
-f*
-1 g
-412.215 413.675 1.2043 0.2005 re
-f*
-0.498 0 0.482 rg
-413.419 413.675 3.613 0.2005 re
-f*
-0 g
-250.635 413.876 20.6741 0.2006 re
-f*
-1 g
-271.31 413.876 7.6273 0.2006 re
-f*
-0 g
-278.937 413.876 16.0575 0.2006 re
-f*
-1 g
-294.994 413.876 3.613 0.2006 re
-f*
-0 g
-298.607 413.876 10.8389 0.2006 re
-f*
-1 g
-309.446 413.876 7.0251 0.2006 re
-f*
-0 g
-316.471 413.876 18.0648 0.2006 re
-f*
-1 g
-334.536 413.876 2.8101 0.2006 re
-f*
-0 g
-337.346 413.876 5.8208 0.2006 re
-f*
-1 g
-343.167 413.876 1.6058 0.2006 re
-f*
-0 g
-344.773 413.876 6.6237 0.2006 re
-f*
-1 g
-351.397 413.876 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-355.812 413.876 7.8281 0.2006 re
-f*
-1 g
-363.641 413.876 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 413.876 9.8353 0.2006 re
-f*
-1 g
-377.089 413.876 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-379.497 413.876 7.4267 0.2006 re
-f*
-1 g
-386.924 413.876 0.8028 0.2006 re
-f*
-0.498 0 0.482 rg
-387.727 413.876 0.6021 0.2006 re
-f*
-1 g
-388.329 413.876 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 413.876 9.2331 0.2006 re
-f*
-1 g
-400.974 413.876 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-403.985 413.876 8.4302 0.2006 re
-f*
-1 g
-412.415 413.876 1.2043 0.2006 re
-f*
-0.498 0 0.482 rg
-413.62 413.876 3.4123 0.2006 re
-f*
-0 g
-250.635 414.076 20.6741 0.2006 re
-f*
-1 g
-271.31 414.076 7.6273 0.2006 re
-f*
-0 g
-278.937 414.076 16.0575 0.2006 re
-f*
-1 g
-294.994 414.076 3.613 0.2006 re
-f*
-0 g
-298.607 414.076 10.6381 0.2006 re
-f*
-1 g
-309.245 414.076 7.2259 0.2006 re
-f*
-0 g
-316.471 414.076 17.6633 0.2006 re
-f*
-1 g
-334.135 414.076 3.0108 0.2006 re
-f*
-0 g
-337.146 414.076 6.423 0.2006 re
-f*
-1 g
-343.568 414.076 1.405 0.2006 re
-f*
-0 g
-344.973 414.076 6.4231 0.2006 re
-f*
-1 g
-351.397 414.076 4.6165 0.2006 re
-f*
-0.498 0 0.482 rg
-356.013 414.076 7.6274 0.2006 re
-f*
-1 g
-363.641 414.076 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 414.076 9.6346 0.2006 re
-f*
-1 g
-376.888 414.076 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-379.297 414.076 7.6274 0.2006 re
-f*
-1 g
-386.924 414.076 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-387.928 414.076 0.4013 0.2006 re
-f*
-1 g
-388.329 414.076 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 414.076 9.0324 0.2006 re
-f*
-1 g
-400.774 414.076 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-403.784 414.076 8.8316 0.2006 re
-f*
-1 g
-412.616 414.076 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-413.62 414.076 3.6129 0.2006 re
-f*
-0 g
-250.635 414.277 20.6741 0.2005 re
-f*
-1 g
-271.31 414.277 7.6273 0.2005 re
-f*
-0 g
-278.937 414.277 16.0575 0.2005 re
-f*
-1 g
-294.994 414.277 3.613 0.2005 re
-f*
-0 g
-298.607 414.277 10.6381 0.2005 re
-f*
-1 g
-309.245 414.277 7.0252 0.2005 re
-f*
-0 g
-316.271 414.277 17.6633 0.2005 re
-f*
-1 g
-333.934 414.277 3.0108 0.2005 re
-f*
-0 g
-336.945 414.277 6.8245 0.2005 re
-f*
-1 g
-343.769 414.277 1.405 0.2005 re
-f*
-0 g
-345.174 414.277 6.423 0.2005 re
-f*
-1 g
-351.597 414.277 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-356.214 414.277 7.4267 0.2005 re
-f*
-1 g
-363.641 414.277 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 414.277 9.4339 0.2005 re
-f*
-1 g
-376.687 414.277 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-379.297 414.277 7.828 0.2005 re
-f*
-1 g
-387.125 414.277 0.803 0.2005 re
-f*
-0.498 0 0.482 rg
-387.928 414.277 0.4013 0.2005 re
-f*
-1 g
-388.329 414.277 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 414.277 8.8316 0.2005 re
-f*
-1 g
-400.573 414.277 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-403.784 414.277 9.0323 0.2005 re
-f*
-1 g
-412.817 414.277 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-413.82 414.277 3.4122 0.2005 re
-f*
-0 g
-250.635 414.477 20.6741 0.2005 re
-f*
-1 g
-271.31 414.477 7.6273 0.2005 re
-f*
-0 g
-278.937 414.477 16.0575 0.2005 re
-f*
-1 g
-294.994 414.477 3.613 0.2005 re
-f*
-0 g
-298.607 414.477 10.6381 0.2005 re
-f*
-1 g
-309.245 414.477 6.8245 0.2005 re
-f*
-0 g
-316.07 414.477 17.6633 0.2005 re
-f*
-1 g
-333.733 414.477 3.0108 0.2005 re
-f*
-0 g
-336.744 414.477 7.4266 0.2005 re
-f*
-1 g
-344.171 414.477 1.2043 0.2005 re
-f*
-0 g
-345.375 414.477 6.2223 0.2005 re
-f*
-1 g
-351.597 414.477 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-356.214 414.477 7.4267 0.2005 re
-f*
-1 g
-363.641 414.477 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 414.477 9.2331 0.2005 re
-f*
-1 g
-376.486 414.477 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-379.096 414.477 8.0287 0.2005 re
-f*
-1 g
-387.125 414.477 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-388.128 414.477 0.2007 0.2005 re
-f*
-1 g
-388.329 414.477 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 414.477 8.6309 0.2005 re
-f*
-1 g
-400.372 414.477 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-403.584 414.477 9.4339 0.2005 re
-f*
-1 g
-413.017 414.477 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-414.021 414.477 3.2114 0.2005 re
-f*
-0 g
-250.635 414.678 20.6741 0.2006 re
-f*
-1 g
-271.31 414.678 7.6273 0.2006 re
-f*
-0 g
-278.937 414.678 16.0575 0.2006 re
-f*
-1 g
-294.994 414.678 3.613 0.2006 re
-f*
-0 g
-298.607 414.678 10.6381 0.2006 re
-f*
-1 g
-309.245 414.678 6.8245 0.2006 re
-f*
-0 g
-316.07 414.678 17.4626 0.2006 re
-f*
-1 g
-333.533 414.678 3.0108 0.2006 re
-f*
-0 g
-336.543 414.678 7.828 0.2006 re
-f*
-1 g
-344.371 414.678 1.0036 0.2006 re
-f*
-0 g
-345.375 414.678 6.2223 0.2006 re
-f*
-1 g
-351.597 414.678 4.8173 0.2006 re
-f*
-0.498 0 0.482 rg
-356.415 414.678 7.2259 0.2006 re
-f*
-1 g
-363.641 414.678 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 414.678 9.0324 0.2006 re
-f*
-1 g
-376.286 414.678 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-379.096 414.678 8.2294 0.2006 re
-f*
-1 g
-387.325 414.678 0.8029 0.2006 re
-f*
-0.498 0 0.482 rg
-388.128 414.678 0.2007 0.2006 re
-f*
-1 g
-388.329 414.678 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 414.678 8.4302 0.2006 re
-f*
-1 g
-400.171 414.678 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-403.584 414.678 9.4339 0.2006 re
-f*
-1 g
-413.017 414.678 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.021 414.678 3.2114 0.2006 re
-f*
-0 g
-250.635 414.878 20.6741 0.2006 re
-f*
-1 g
-271.31 414.878 7.6273 0.2006 re
-f*
-0 g
-278.937 414.878 16.0575 0.2006 re
-f*
-1 g
-294.994 414.878 3.613 0.2006 re
-f*
-0 g
-298.607 414.878 10.6381 0.2006 re
-f*
-1 g
-309.245 414.878 6.6237 0.2006 re
-f*
-0 g
-315.869 414.878 17.4626 0.2006 re
-f*
-1 g
-333.332 414.878 3.0109 0.2006 re
-f*
-0 g
-336.343 414.878 8.2294 0.2006 re
-f*
-1 g
-344.572 414.878 1.0036 0.2006 re
-f*
-0 g
-345.576 414.878 6.2224 0.2006 re
-f*
-1 g
-351.798 414.878 4.6165 0.2006 re
-f*
-0.498 0 0.482 rg
-356.415 414.878 7.2259 0.2006 re
-f*
-1 g
-363.641 414.878 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 414.878 8.8317 0.2006 re
-f*
-1 g
-376.085 414.878 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-379.096 414.878 8.2294 0.2006 re
-f*
-1 g
-387.325 414.878 4.4159 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 414.878 8.4302 0.2006 re
-f*
-1 g
-400.171 414.878 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-403.383 414.878 9.8352 0.2006 re
-f*
-1 g
-413.218 414.878 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.222 414.878 3.0108 0.2006 re
-f*
-0 g
-250.435 415.079 20.8749 0.2006 re
-f*
-1 g
-271.31 415.079 7.6273 0.2006 re
-f*
-0 g
-278.937 415.079 16.0575 0.2006 re
-f*
-1 g
-294.994 415.079 3.613 0.2006 re
-f*
-0 g
-298.607 415.079 10.6381 0.2006 re
-f*
-1 g
-309.245 415.079 6.4231 0.2006 re
-f*
-0 g
-315.669 415.079 17.4625 0.2006 re
-f*
-1 g
-333.131 415.079 3.0108 0.2006 re
-f*
-0 g
-336.142 415.079 8.631 0.2006 re
-f*
-1 g
-344.773 415.079 0.8028 0.2006 re
-f*
-0 g
-345.576 415.079 6.2224 0.2006 re
-f*
-1 g
-351.798 415.079 4.8172 0.2006 re
-f*
-0.498 0 0.482 rg
-356.615 415.079 7.0252 0.2006 re
-f*
-1 g
-363.641 415.079 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 415.079 8.8317 0.2006 re
-f*
-1 g
-376.085 415.079 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-378.895 415.079 8.6309 0.2006 re
-f*
-1 g
-387.526 415.079 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 415.079 8.2295 0.2006 re
-f*
-1 g
-399.971 415.079 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-403.383 415.079 9.8352 0.2006 re
-f*
-1 g
-413.218 415.079 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.222 415.079 3.0108 0.2006 re
-f*
-0 g
-250.435 415.28 20.8749 0.2005 re
-f*
-1 g
-271.31 415.28 7.6273 0.2005 re
-f*
-0 g
-278.937 415.28 16.0575 0.2005 re
-f*
-1 g
-294.994 415.28 3.613 0.2005 re
-f*
-0 g
-298.607 415.28 10.6381 0.2005 re
-f*
-1 g
-309.245 415.28 6.4231 0.2005 re
-f*
-0 g
-315.669 415.28 17.2618 0.2005 re
-f*
-1 g
-332.93 415.28 3.0108 0.2005 re
-f*
-0 g
-335.941 415.28 15.8569 0.2005 re
-f*
-1 g
-351.798 415.28 5.0179 0.2005 re
-f*
-0.498 0 0.482 rg
-356.816 415.28 6.8245 0.2005 re
-f*
-1 g
-363.641 415.28 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 415.28 8.631 0.2005 re
-f*
-1 g
-375.884 415.28 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-378.895 415.28 8.6309 0.2005 re
-f*
-1 g
-387.526 415.28 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 415.28 8.0288 0.2005 re
-f*
-1 g
-399.77 415.28 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-403.182 415.28 10.2367 0.2005 re
-f*
-1 g
-413.419 415.28 0.8028 0.2005 re
-f*
-0.498 0 0.482 rg
-414.222 415.28 3.2116 0.2005 re
-f*
-0 g
-250.435 415.48 20.8749 0.2006 re
-f*
-1 g
-271.31 415.48 7.6273 0.2006 re
-f*
-0 g
-278.937 415.48 16.0575 0.2006 re
-f*
-1 g
-294.994 415.48 3.613 0.2006 re
-f*
-0 g
-298.607 415.48 10.6381 0.2006 re
-f*
-1 g
-309.245 415.48 6.2223 0.2006 re
-f*
-0 g
-315.468 415.48 17.2619 0.2006 re
-f*
-1 g
-332.73 415.48 3.2115 0.2006 re
-f*
-0 g
-335.941 415.48 16.0575 0.2006 re
-f*
-1 g
-351.999 415.48 4.8173 0.2006 re
-f*
-0.498 0 0.482 rg
-356.816 415.48 6.8245 0.2006 re
-f*
-1 g
-363.641 415.48 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 415.48 8.4303 0.2006 re
-f*
-1 g
-375.684 415.48 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-378.895 415.48 8.8316 0.2006 re
-f*
-1 g
-387.727 415.48 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 415.48 8.0288 0.2006 re
-f*
-1 g
-399.77 415.48 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-403.182 415.48 10.2367 0.2006 re
-f*
-1 g
-413.419 415.48 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.422 415.48 3.0108 0.2006 re
-f*
-0 g
-250.435 415.681 20.8749 0.2005 re
-f*
-1 g
-271.31 415.681 7.6273 0.2005 re
-f*
-0 g
-278.937 415.681 16.0575 0.2005 re
-f*
-1 g
-294.994 415.681 3.613 0.2005 re
-f*
-0 g
-298.607 415.681 10.6381 0.2005 re
-f*
-1 g
-309.245 415.681 6.2223 0.2005 re
-f*
-0 g
-315.468 415.681 17.0612 0.2005 re
-f*
-1 g
-332.529 415.681 3.2115 0.2005 re
-f*
-0 g
-335.74 415.681 16.2582 0.2005 re
-f*
-1 g
-351.999 415.681 5.018 0.2005 re
-f*
-0.498 0 0.482 rg
-357.017 415.681 6.6238 0.2005 re
-f*
-1 g
-363.641 415.681 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 415.681 8.4303 0.2005 re
-f*
-1 g
-375.684 415.681 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-378.895 415.681 8.8316 0.2005 re
-f*
-1 g
-387.727 415.681 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 415.681 7.828 0.2005 re
-f*
-1 g
-399.569 415.681 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-403.182 415.681 10.4374 0.2005 re
-f*
-1 g
-413.62 415.681 0.8029 0.2005 re
-f*
-0.498 0 0.482 rg
-414.422 415.681 3.0108 0.2005 re
-f*
-0 g
-250.435 415.881 20.8749 0.2006 re
-f*
-1 g
-271.31 415.881 7.6273 0.2006 re
-f*
-0 g
-278.937 415.881 16.0575 0.2006 re
-f*
-1 g
-294.994 415.881 3.613 0.2006 re
-f*
-0 g
-298.607 415.881 10.6381 0.2006 re
-f*
-1 g
-309.245 415.881 6.2223 0.2006 re
-f*
-0 g
-315.468 415.881 16.8604 0.2006 re
-f*
-1 g
-332.328 415.881 3.4123 0.2006 re
-f*
-0 g
-335.74 415.881 16.2582 0.2006 re
-f*
-1 g
-351.999 415.881 5.018 0.2006 re
-f*
-0.498 0 0.482 rg
-357.017 415.881 6.6238 0.2006 re
-f*
-1 g
-363.641 415.881 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 415.881 8.2295 0.2006 re
-f*
-1 g
-375.483 415.881 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 415.881 9.0323 0.2006 re
-f*
-1 g
-387.727 415.881 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 415.881 7.828 0.2006 re
-f*
-1 g
-399.569 415.881 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-403.182 415.881 10.4374 0.2006 re
-f*
-1 g
-413.62 415.881 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.623 415.881 2.8101 0.2006 re
-f*
-0 g
-250.435 416.082 20.8749 0.2006 re
-f*
-1 g
-271.31 416.082 7.6273 0.2006 re
-f*
-0 g
-278.937 416.082 16.0575 0.2006 re
-f*
-1 g
-294.994 416.082 3.613 0.2006 re
-f*
-0 g
-298.607 416.082 10.6381 0.2006 re
-f*
-1 g
-309.245 416.082 6.2223 0.2006 re
-f*
-0 g
-315.468 416.082 16.8604 0.2006 re
-f*
-1 g
-332.328 416.082 3.2116 0.2006 re
-f*
-0 g
-335.54 416.082 16.4589 0.2006 re
-f*
-1 g
-351.999 416.082 5.2187 0.2006 re
-f*
-0.498 0 0.482 rg
-357.217 416.082 6.4231 0.2006 re
-f*
-1 g
-363.641 416.082 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 416.082 8.2295 0.2006 re
-f*
-1 g
-375.483 416.082 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 416.082 9.0323 0.2006 re
-f*
-1 g
-387.727 416.082 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 416.082 7.6273 0.2006 re
-f*
-1 g
-399.368 416.082 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 416.082 10.6381 0.2006 re
-f*
-1 g
-413.62 416.082 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-414.623 416.082 2.8101 0.2006 re
-f*
-0 g
-250.435 416.282 20.8749 0.2005 re
-f*
-1 g
-271.31 416.282 7.6273 0.2005 re
-f*
-0 g
-278.937 416.282 16.0575 0.2005 re
-f*
-1 g
-294.994 416.282 3.613 0.2005 re
-f*
-0 g
-298.607 416.282 10.6381 0.2005 re
-f*
-1 g
-309.245 416.282 6.0216 0.2005 re
-f*
-0 g
-315.267 416.282 16.8604 0.2005 re
-f*
-1 g
-332.127 416.282 3.4123 0.2005 re
-f*
-0 g
-335.54 416.282 16.6597 0.2005 re
-f*
-1 g
-352.2 416.282 5.0179 0.2005 re
-f*
-0.498 0 0.482 rg
-357.217 416.282 6.4231 0.2005 re
-f*
-1 g
-363.641 416.282 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 416.282 8.0288 0.2005 re
-f*
-1 g
-375.282 416.282 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-378.695 416.282 9.2331 0.2005 re
-f*
-1 g
-387.928 416.282 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 416.282 7.6273 0.2005 re
-f*
-1 g
-399.368 416.282 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-402.981 416.282 10.8388 0.2005 re
-f*
-1 g
-413.82 416.282 0.8029 0.2005 re
-f*
-0.498 0 0.482 rg
-414.623 416.282 2.8101 0.2005 re
-f*
-0 g
-250.435 416.483 20.8749 0.2005 re
-f*
-1 g
-271.31 416.483 7.6273 0.2005 re
-f*
-0 g
-278.937 416.483 16.0575 0.2005 re
-f*
-1 g
-294.994 416.483 3.613 0.2005 re
-f*
-0 g
-298.607 416.483 10.6381 0.2005 re
-f*
-1 g
-309.245 416.483 6.0216 0.2005 re
-f*
-0 g
-315.267 416.483 16.6597 0.2005 re
-f*
-1 g
-331.927 416.483 3.613 0.2005 re
-f*
-0 g
-335.54 416.483 16.6597 0.2005 re
-f*
-1 g
-352.2 416.483 5.2187 0.2005 re
-f*
-0.498 0 0.482 rg
-357.418 416.483 6.2223 0.2005 re
-f*
-1 g
-363.641 416.483 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 416.483 8.0288 0.2005 re
-f*
-1 g
-375.282 416.483 3.4123 0.2005 re
-f*
-0.498 0 0.482 rg
-378.695 416.483 9.2331 0.2005 re
-f*
-1 g
-387.928 416.483 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 416.483 7.4266 0.2005 re
-f*
-1 g
-399.168 416.483 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.981 416.483 10.8388 0.2005 re
-f*
-1 g
-413.82 416.483 0.2008 0.2005 re
-f*
-0.498 0 0.482 rg
-414.021 416.483 3.4122 0.2005 re
-f*
-0 g
-250.435 416.683 20.8749 0.2006 re
-f*
-1 g
-271.31 416.683 7.6273 0.2006 re
-f*
-0 g
-278.937 416.683 16.0575 0.2006 re
-f*
-1 g
-294.994 416.683 3.613 0.2006 re
-f*
-0 g
-298.607 416.683 10.6381 0.2006 re
-f*
-1 g
-309.245 416.683 6.0216 0.2006 re
-f*
-0 g
-315.267 416.683 16.6597 0.2006 re
-f*
-1 g
-331.927 416.683 3.4123 0.2006 re
-f*
-0 g
-335.339 416.683 16.8604 0.2006 re
-f*
-1 g
-352.2 416.683 5.2187 0.2006 re
-f*
-0.498 0 0.482 rg
-357.418 416.683 6.2223 0.2006 re
-f*
-1 g
-363.641 416.683 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 416.683 7.8281 0.2006 re
-f*
-1 g
-375.081 416.683 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 416.683 9.2331 0.2006 re
-f*
-1 g
-387.928 416.683 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 416.683 7.4266 0.2006 re
-f*
-1 g
-399.168 416.683 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 416.683 14.4518 0.2006 re
-f*
-0 g
-250.234 416.884 21.0756 0.2006 re
-f*
-1 g
-271.31 416.884 7.6273 0.2006 re
-f*
-0 g
-278.937 416.884 16.0575 0.2006 re
-f*
-1 g
-294.994 416.884 3.613 0.2006 re
-f*
-0 g
-298.607 416.884 10.6381 0.2006 re
-f*
-1 g
-309.245 416.884 6.0216 0.2006 re
-f*
-0 g
-315.267 416.884 16.459 0.2006 re
-f*
-1 g
-331.726 416.884 3.613 0.2006 re
-f*
-0 g
-335.339 416.884 16.8604 0.2006 re
-f*
-1 g
-352.2 416.884 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-357.619 416.884 6.0216 0.2006 re
-f*
-1 g
-363.641 416.884 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 416.884 7.8281 0.2006 re
-f*
-1 g
-375.081 416.884 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 416.884 9.2331 0.2006 re
-f*
-1 g
-387.928 416.884 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 416.884 7.4266 0.2006 re
-f*
-1 g
-399.168 416.884 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 416.884 14.4518 0.2006 re
-f*
-0 g
-250.234 417.085 14.2511 0.2005 re
-f*
-1 g
-264.485 417.085 25.8928 0.2005 re
-f*
-0 g
-290.378 417.085 4.6165 0.2005 re
-f*
-1 g
-294.994 417.085 3.613 0.2005 re
-f*
-0 g
-298.607 417.085 10.6381 0.2005 re
-f*
-1 g
-309.245 417.085 5.8209 0.2005 re
-f*
-0 g
-315.066 417.085 16.6597 0.2005 re
-f*
-1 g
-331.726 417.085 3.613 0.2005 re
-f*
-0 g
-335.339 417.085 17.0611 0.2005 re
-f*
-1 g
-352.4 417.085 5.2187 0.2005 re
-f*
-0.498 0 0.482 rg
-357.619 417.085 6.0216 0.2005 re
-f*
-1 g
-363.641 417.085 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 417.085 7.6274 0.2005 re
-f*
-1 g
-374.881 417.085 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 417.085 9.4339 0.2005 re
-f*
-1 g
-387.928 417.085 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 417.085 7.2259 0.2005 re
-f*
-1 g
-398.967 417.085 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 417.085 14.6525 0.2005 re
-f*
-0 g
-250.234 417.285 14.2511 0.2005 re
-f*
-1 g
-264.485 417.285 25.8928 0.2005 re
-f*
-0 g
-290.378 417.285 4.6165 0.2005 re
-f*
-1 g
-294.994 417.285 3.613 0.2005 re
-f*
-0 g
-298.607 417.285 10.6381 0.2005 re
-f*
-1 g
-309.245 417.285 5.8209 0.2005 re
-f*
-0 g
-315.066 417.285 16.459 0.2005 re
-f*
-1 g
-331.525 417.285 3.6129 0.2005 re
-f*
-0 g
-335.138 417.285 17.2619 0.2005 re
-f*
-1 g
-352.4 417.285 5.4194 0.2005 re
-f*
-0.498 0 0.482 rg
-357.82 417.285 5.8209 0.2005 re
-f*
-1 g
-363.641 417.285 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 417.285 7.6274 0.2005 re
-f*
-1 g
-374.881 417.285 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 417.285 9.6345 0.2005 re
-f*
-1 g
-388.128 417.285 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 417.285 7.2259 0.2005 re
-f*
-1 g
-398.967 417.285 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 417.285 14.8532 0.2005 re
-f*
-0 g
-250.234 417.486 14.2511 0.2006 re
-f*
-1 g
-264.485 417.486 25.8928 0.2006 re
-f*
-0 g
-290.378 417.486 4.6165 0.2006 re
-f*
-1 g
-294.994 417.486 3.613 0.2006 re
-f*
-0 g
-298.607 417.486 10.6381 0.2006 re
-f*
-1 g
-309.245 417.486 5.8209 0.2006 re
-f*
-0 g
-315.066 417.486 16.459 0.2006 re
-f*
-1 g
-331.525 417.486 3.6129 0.2006 re
-f*
-0 g
-335.138 417.486 17.2619 0.2006 re
-f*
-1 g
-352.4 417.486 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-357.82 417.486 5.8209 0.2006 re
-f*
-1 g
-363.641 417.486 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 417.486 7.6274 0.2006 re
-f*
-1 g
-374.881 417.486 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 417.486 9.6345 0.2006 re
-f*
-1 g
-388.128 417.486 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 417.486 7.2259 0.2006 re
-f*
-1 g
-398.967 417.486 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 417.486 14.8532 0.2006 re
-f*
-0 g
-250.234 417.686 14.2511 0.2006 re
-f*
-1 g
-264.485 417.686 25.8928 0.2006 re
-f*
-0 g
-290.378 417.686 4.6165 0.2006 re
-f*
-1 g
-294.994 417.686 3.613 0.2006 re
-f*
-0 g
-298.607 417.686 10.6381 0.2006 re
-f*
-1 g
-309.245 417.686 5.8209 0.2006 re
-f*
-0 g
-315.066 417.686 16.2582 0.2006 re
-f*
-1 g
-331.325 417.686 3.8137 0.2006 re
-f*
-0 g
-335.138 417.686 17.2619 0.2006 re
-f*
-1 g
-352.4 417.686 5.6201 0.2006 re
-f*
-0.498 0 0.482 rg
-358.02 417.686 5.6202 0.2006 re
-f*
-1 g
-363.641 417.686 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 417.686 7.4267 0.2006 re
-f*
-1 g
-374.68 417.686 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 417.686 9.6345 0.2006 re
-f*
-1 g
-388.128 417.686 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 417.686 7.0252 0.2006 re
-f*
-1 g
-398.766 417.686 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 417.686 14.8532 0.2006 re
-f*
-0 g
-250.234 417.887 14.2511 0.2006 re
-f*
-1 g
-264.485 417.887 25.8928 0.2006 re
-f*
-0 g
-290.378 417.887 4.6165 0.2006 re
-f*
-1 g
-294.994 417.887 3.613 0.2006 re
-f*
-0 g
-298.607 417.887 10.6381 0.2006 re
-f*
-1 g
-309.245 417.887 5.6201 0.2006 re
-f*
-0 g
-314.866 417.887 16.459 0.2006 re
-f*
-1 g
-331.325 417.887 3.8137 0.2006 re
-f*
-0 g
-335.138 417.887 17.2619 0.2006 re
-f*
-1 g
-352.4 417.887 5.6201 0.2006 re
-f*
-0.498 0 0.482 rg
-358.02 417.887 5.6202 0.2006 re
-f*
-1 g
-363.641 417.887 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 417.887 7.4267 0.2006 re
-f*
-1 g
-374.68 417.887 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 417.887 9.6345 0.2006 re
-f*
-1 g
-388.128 417.887 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 417.887 7.0252 0.2006 re
-f*
-1 g
-398.766 417.887 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 417.887 14.8532 0.2006 re
-f*
-0 g
-250.234 418.087 14.2511 0.2006 re
-f*
-1 g
-264.485 418.087 25.8928 0.2006 re
-f*
-0 g
-290.378 418.087 4.6165 0.2006 re
-f*
-1 g
-294.994 418.087 3.613 0.2006 re
-f*
-0 g
-298.607 418.087 10.6381 0.2006 re
-f*
-1 g
-309.245 418.087 5.6201 0.2006 re
-f*
-0 g
-314.866 418.087 16.459 0.2006 re
-f*
-1 g
-331.325 418.087 3.8137 0.2006 re
-f*
-0 g
-335.138 418.087 17.4626 0.2006 re
-f*
-1 g
-352.601 418.087 5.6201 0.2006 re
-f*
-0.498 0 0.482 rg
-358.221 418.087 5.4195 0.2006 re
-f*
-1 g
-363.641 418.087 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 418.087 7.4267 0.2006 re
-f*
-1 g
-374.68 418.087 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 418.087 9.6345 0.2006 re
-f*
-1 g
-388.128 418.087 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 418.087 7.0252 0.2006 re
-f*
-1 g
-398.766 418.087 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 418.087 14.8532 0.2006 re
-f*
-0 g
-250.234 418.288 14.2511 0.2005 re
-f*
-1 g
-264.485 418.288 25.8928 0.2005 re
-f*
-0 g
-290.378 418.288 4.6165 0.2005 re
-f*
-1 g
-294.994 418.288 3.613 0.2005 re
-f*
-0 g
-298.607 418.288 10.6381 0.2005 re
-f*
-1 g
-309.245 418.288 5.6201 0.2005 re
-f*
-0 g
-314.866 418.288 16.2583 0.2005 re
-f*
-1 g
-331.124 418.288 4.0144 0.2005 re
-f*
-0 g
-335.138 418.288 17.4626 0.2005 re
-f*
-1 g
-352.601 418.288 5.6201 0.2005 re
-f*
-0.498 0 0.482 rg
-358.221 418.288 5.4195 0.2005 re
-f*
-1 g
-363.641 418.288 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 418.288 7.2259 0.2005 re
-f*
-1 g
-374.479 418.288 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 418.288 9.6345 0.2005 re
-f*
-1 g
-388.128 418.288 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 418.288 7.0252 0.2005 re
-f*
-1 g
-398.766 418.288 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 418.288 14.8532 0.2005 re
-f*
-0 g
-250.234 418.489 14.2511 0.2005 re
-f*
-1 g
-264.485 418.489 25.8928 0.2005 re
-f*
-0 g
-290.378 418.489 4.6165 0.2005 re
-f*
-1 g
-294.994 418.489 3.613 0.2005 re
-f*
-0 g
-298.607 418.489 10.8389 0.2005 re
-f*
-1 g
-309.446 418.489 5.4193 0.2005 re
-f*
-0 g
-314.866 418.489 16.2583 0.2005 re
-f*
-1 g
-331.124 418.489 3.8137 0.2005 re
-f*
-0 g
-334.938 418.489 17.6633 0.2005 re
-f*
-1 g
-352.601 418.489 5.6201 0.2005 re
-f*
-0.498 0 0.482 rg
-358.221 418.489 5.4195 0.2005 re
-f*
-1 g
-363.641 418.489 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 418.489 7.2259 0.2005 re
-f*
-1 g
-374.479 418.489 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 418.489 9.6345 0.2005 re
-f*
-1 g
-388.128 418.489 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 418.489 7.0252 0.2005 re
-f*
-1 g
-398.766 418.489 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 418.489 14.8532 0.2005 re
-f*
-0 g
-250.234 418.689 14.2511 0.2006 re
-f*
-1 g
-264.485 418.689 25.8928 0.2006 re
-f*
-0 g
-290.378 418.689 4.6165 0.2006 re
-f*
-1 g
-294.994 418.689 3.613 0.2006 re
-f*
-0 g
-298.607 418.689 10.8389 0.2006 re
-f*
-1 g
-309.446 418.689 5.4193 0.2006 re
-f*
-0 g
-314.866 418.689 16.2583 0.2006 re
-f*
-1 g
-331.124 418.689 3.8137 0.2006 re
-f*
-0 g
-334.938 418.689 17.6633 0.2006 re
-f*
-1 g
-352.601 418.689 5.8209 0.2006 re
-f*
-0.498 0 0.482 rg
-358.422 418.689 5.2187 0.2006 re
-f*
-1 g
-363.641 418.689 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 418.689 7.2259 0.2006 re
-f*
-1 g
-374.479 418.689 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 418.689 9.6345 0.2006 re
-f*
-1 g
-388.128 418.689 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 418.689 6.8244 0.2006 re
-f*
-1 g
-398.566 418.689 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 418.689 14.8532 0.2006 re
-f*
-0 g
-250.234 418.89 14.2511 0.2006 re
-f*
-1 g
-264.485 418.89 25.8928 0.2006 re
-f*
-0 g
-290.378 418.89 4.6165 0.2006 re
-f*
-1 g
-294.994 418.89 3.613 0.2006 re
-f*
-0 g
-298.607 418.89 10.8389 0.2006 re
-f*
-1 g
-309.446 418.89 5.4193 0.2006 re
-f*
-0 g
-314.866 418.89 16.0576 0.2006 re
-f*
-1 g
-330.923 418.89 4.0144 0.2006 re
-f*
-0 g
-334.938 418.89 17.6633 0.2006 re
-f*
-1 g
-352.601 418.89 5.8209 0.2006 re
-f*
-0.498 0 0.482 rg
-358.422 418.89 5.2187 0.2006 re
-f*
-1 g
-363.641 418.89 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 418.89 7.2259 0.2006 re
-f*
-1 g
-374.479 418.89 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 418.89 9.6345 0.2006 re
-f*
-1 g
-388.128 418.89 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 418.89 6.8244 0.2006 re
-f*
-1 g
-398.566 418.89 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 418.89 14.8532 0.2006 re
-f*
-0 g
-250.234 419.09 14.2511 0.2005 re
-f*
-1 g
-264.485 419.09 25.8928 0.2005 re
-f*
-0 g
-290.378 419.09 4.6165 0.2005 re
-f*
-1 g
-294.994 419.09 3.613 0.2005 re
-f*
-0 g
-298.607 419.09 10.8389 0.2005 re
-f*
-1 g
-309.446 419.09 5.4193 0.2005 re
-f*
-0 g
-314.866 419.09 16.0576 0.2005 re
-f*
-1 g
-330.923 419.09 4.0144 0.2005 re
-f*
-0 g
-334.938 419.09 17.6633 0.2005 re
-f*
-1 g
-352.601 419.09 5.8209 0.2005 re
-f*
-0.498 0 0.482 rg
-358.422 419.09 5.2187 0.2005 re
-f*
-1 g
-363.641 419.09 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 419.09 7.2259 0.2005 re
-f*
-1 g
-374.479 419.09 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 419.09 9.6345 0.2005 re
-f*
-1 g
-388.128 419.09 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 419.09 6.8244 0.2005 re
-f*
-1 g
-398.566 419.09 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 419.09 14.8532 0.2005 re
-f*
-0 g
-250.234 419.291 14.2511 0.2006 re
-f*
-1 g
-264.485 419.291 25.8928 0.2006 re
-f*
-0 g
-290.378 419.291 4.6165 0.2006 re
-f*
-1 g
-294.994 419.291 3.613 0.2006 re
-f*
-0 g
-298.607 419.291 10.8389 0.2006 re
-f*
-1 g
-309.446 419.291 5.4193 0.2006 re
-f*
-0 g
-314.866 419.291 16.0576 0.2006 re
-f*
-1 g
-330.923 419.291 4.0144 0.2006 re
-f*
-0 g
-334.938 419.291 17.6633 0.2006 re
-f*
-1 g
-352.601 419.291 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-358.623 419.291 5.018 0.2006 re
-f*
-1 g
-363.641 419.291 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 419.291 7.0252 0.2006 re
-f*
-1 g
-374.279 419.291 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 419.291 9.6345 0.2006 re
-f*
-1 g
-388.128 419.291 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 419.291 6.8244 0.2006 re
-f*
-1 g
-398.566 419.291 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 419.291 14.8532 0.2006 re
-f*
-0 g
-250.234 419.491 14.2511 0.2005 re
-f*
-1 g
-264.485 419.491 25.8928 0.2005 re
-f*
-0 g
-290.378 419.491 4.6165 0.2005 re
-f*
-1 g
-294.994 419.491 3.613 0.2005 re
-f*
-0 g
-298.607 419.491 10.8389 0.2005 re
-f*
-1 g
-309.446 419.491 5.2187 0.2005 re
-f*
-0 g
-314.665 419.491 16.2582 0.2005 re
-f*
-1 g
-330.923 419.491 4.0144 0.2005 re
-f*
-0 g
-334.938 419.491 17.6633 0.2005 re
-f*
-1 g
-352.601 419.491 6.0216 0.2005 re
-f*
-0.498 0 0.482 rg
-358.623 419.491 5.018 0.2005 re
-f*
-1 g
-363.641 419.491 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 419.491 7.0252 0.2005 re
-f*
-1 g
-374.279 419.491 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 419.491 9.6345 0.2005 re
-f*
-1 g
-388.128 419.491 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 419.491 6.8244 0.2005 re
-f*
-1 g
-398.566 419.491 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 419.491 14.8532 0.2005 re
-f*
-0 g
-250.234 419.692 14.2511 0.2006 re
-f*
-1 g
-264.485 419.692 25.8928 0.2006 re
-f*
-0 g
-290.378 419.692 4.6165 0.2006 re
-f*
-1 g
-294.994 419.692 3.613 0.2006 re
-f*
-0 g
-298.607 419.692 10.8389 0.2006 re
-f*
-1 g
-309.446 419.692 5.2187 0.2006 re
-f*
-0 g
-314.665 419.692 16.2582 0.2006 re
-f*
-1 g
-330.923 419.692 4.0144 0.2006 re
-f*
-0 g
-334.938 419.692 17.6633 0.2006 re
-f*
-1 g
-352.601 419.692 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-358.623 419.692 5.018 0.2006 re
-f*
-1 g
-363.641 419.692 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 419.692 7.0252 0.2006 re
-f*
-1 g
-374.279 419.692 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 419.692 9.6345 0.2006 re
-f*
-1 g
-388.128 419.692 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 419.692 6.8244 0.2006 re
-f*
-1 g
-398.566 419.692 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 419.692 14.8532 0.2006 re
-f*
-0 g
-250.234 419.892 14.2511 0.2005 re
-f*
-1 g
-264.485 419.892 6.6237 0.2005 re
-f*
-0 g
-271.109 419.892 0.2008 0.2005 re
-f*
-1 g
-271.31 419.892 7.6273 0.2005 re
-f*
-0 g
-278.937 419.892 0.2007 0.2005 re
-f*
-1 g
-279.138 419.892 11.2403 0.2005 re
-f*
-0 g
-290.378 419.892 4.6165 0.2005 re
-f*
-1 g
-294.994 419.892 3.613 0.2005 re
-f*
-0 g
-298.607 419.892 10.8389 0.2005 re
-f*
-1 g
-309.446 419.892 5.2187 0.2005 re
-f*
-0 g
-314.665 419.892 16.0575 0.2005 re
-f*
-1 g
-330.722 419.892 4.2151 0.2005 re
-f*
-0 g
-334.938 419.892 17.6633 0.2005 re
-f*
-1 g
-352.601 419.892 6.2223 0.2005 re
-f*
-0.498 0 0.482 rg
-358.823 419.892 4.8173 0.2005 re
-f*
-1 g
-363.641 419.892 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 419.892 7.0252 0.2005 re
-f*
-1 g
-374.279 419.892 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 419.892 9.6345 0.2005 re
-f*
-1 g
-388.128 419.892 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 419.892 6.8244 0.2005 re
-f*
-1 g
-398.566 419.892 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 419.892 14.8532 0.2005 re
-f*
-0 g
-250.234 420.093 21.0756 0.2006 re
-f*
-1 g
-271.31 420.093 7.6273 0.2006 re
-f*
-0 g
-278.937 420.093 16.0575 0.2006 re
-f*
-1 g
-294.994 420.093 3.613 0.2006 re
-f*
-0 g
-298.607 420.093 11.0396 0.2006 re
-f*
-1 g
-309.647 420.093 5.018 0.2006 re
-f*
-0 g
-314.665 420.093 16.0575 0.2006 re
-f*
-1 g
-330.722 420.093 4.2151 0.2006 re
-f*
-0 g
-334.938 420.093 17.6633 0.2006 re
-f*
-1 g
-352.601 420.093 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-358.823 420.093 4.8173 0.2006 re
-f*
-1 g
-363.641 420.093 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 420.093 7.0252 0.2006 re
-f*
-1 g
-374.279 420.093 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 420.093 9.6345 0.2006 re
-f*
-1 g
-388.128 420.093 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 420.093 6.8244 0.2006 re
-f*
-1 g
-398.566 420.093 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 420.093 14.8532 0.2006 re
-f*
-0 g
-250.234 420.294 21.0756 0.2005 re
-f*
-1 g
-271.31 420.294 7.6273 0.2005 re
-f*
-0 g
-278.937 420.294 16.0575 0.2005 re
-f*
-1 g
-294.994 420.294 3.613 0.2005 re
-f*
-0 g
-298.607 420.294 11.0396 0.2005 re
-f*
-1 g
-309.647 420.294 5.018 0.2005 re
-f*
-0 g
-314.665 420.294 16.0575 0.2005 re
-f*
-1 g
-330.722 420.294 4.2151 0.2005 re
-f*
-0 g
-334.938 420.294 17.8641 0.2005 re
-f*
-1 g
-352.802 420.294 6.0215 0.2005 re
-f*
-0.498 0 0.482 rg
-358.823 420.294 4.8173 0.2005 re
-f*
-1 g
-363.641 420.294 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 420.294 7.0252 0.2005 re
-f*
-1 g
-374.279 420.294 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 420.294 9.6345 0.2005 re
-f*
-1 g
-388.128 420.294 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 420.294 6.8244 0.2005 re
-f*
-1 g
-398.566 420.294 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 420.294 14.8532 0.2005 re
-f*
-0 g
-250.234 420.494 21.0756 0.2006 re
-f*
-1 g
-271.31 420.494 7.6273 0.2006 re
-f*
-0 g
-278.937 420.494 16.0575 0.2006 re
-f*
-1 g
-294.994 420.494 3.613 0.2006 re
-f*
-0 g
-298.607 420.494 11.0396 0.2006 re
-f*
-1 g
-309.647 420.494 5.018 0.2006 re
-f*
-0 g
-314.665 420.494 16.0575 0.2006 re
-f*
-1 g
-330.722 420.494 4.2151 0.2006 re
-f*
-0 g
-334.938 420.494 17.8641 0.2006 re
-f*
-1 g
-352.802 420.494 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-358.823 420.494 4.8173 0.2006 re
-f*
-1 g
-363.641 420.494 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 420.494 7.0252 0.2006 re
-f*
-1 g
-374.279 420.494 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 420.494 9.6345 0.2006 re
-f*
-1 g
-388.128 420.494 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 420.494 6.8244 0.2006 re
-f*
-1 g
-398.566 420.494 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 420.494 14.8532 0.2006 re
-f*
-0 g
-250.234 420.695 21.0756 0.2006 re
-f*
-1 g
-271.31 420.695 7.6273 0.2006 re
-f*
-0 g
-278.937 420.695 16.0575 0.2006 re
-f*
-1 g
-294.994 420.695 3.613 0.2006 re
-f*
-0 g
-298.607 420.695 11.0396 0.2006 re
-f*
-1 g
-309.647 420.695 5.018 0.2006 re
-f*
-0 g
-314.665 420.695 16.0575 0.2006 re
-f*
-1 g
-330.722 420.695 4.2151 0.2006 re
-f*
-0 g
-334.938 420.695 17.8641 0.2006 re
-f*
-1 g
-352.802 420.695 6.2222 0.2006 re
-f*
-0.498 0 0.482 rg
-359.024 420.695 4.6166 0.2006 re
-f*
-1 g
-363.641 420.695 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 420.695 7.0252 0.2006 re
-f*
-1 g
-374.279 420.695 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 420.695 9.6345 0.2006 re
-f*
-1 g
-388.128 420.695 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 420.695 6.8244 0.2006 re
-f*
-1 g
-398.566 420.695 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 420.695 14.8532 0.2006 re
-f*
-0 g
-250.234 420.895 21.0756 0.2006 re
-f*
-1 g
-271.31 420.895 7.6273 0.2006 re
-f*
-0 g
-278.937 420.895 16.0575 0.2006 re
-f*
-1 g
-294.994 420.895 3.613 0.2006 re
-f*
-0 g
-298.607 420.895 11.0396 0.2006 re
-f*
-1 g
-309.647 420.895 5.018 0.2006 re
-f*
-0 g
-314.665 420.895 16.0575 0.2006 re
-f*
-1 g
-330.722 420.895 4.2151 0.2006 re
-f*
-0 g
-334.938 420.895 17.8641 0.2006 re
-f*
-1 g
-352.802 420.895 6.2222 0.2006 re
-f*
-0.498 0 0.482 rg
-359.024 420.895 4.6166 0.2006 re
-f*
-1 g
-363.641 420.895 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 420.895 7.0252 0.2006 re
-f*
-1 g
-374.279 420.895 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 420.895 9.6345 0.2006 re
-f*
-1 g
-388.128 420.895 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 420.895 6.8244 0.2006 re
-f*
-1 g
-398.566 420.895 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 420.895 14.8532 0.2006 re
-f*
-0 g
-250.234 421.096 21.0756 0.2005 re
-f*
-1 g
-271.31 421.096 7.6273 0.2005 re
-f*
-0 g
-278.937 421.096 16.0575 0.2005 re
-f*
-1 g
-294.994 421.096 3.613 0.2005 re
-f*
-0 g
-298.607 421.096 11.2403 0.2005 re
-f*
-1 g
-309.848 421.096 4.8173 0.2005 re
-f*
-0 g
-314.665 421.096 16.0575 0.2005 re
-f*
-1 g
-330.722 421.096 4.2151 0.2005 re
-f*
-0 g
-334.938 421.096 17.8641 0.2005 re
-f*
-1 g
-352.802 421.096 6.2222 0.2005 re
-f*
-0.498 0 0.482 rg
-359.024 421.096 4.6166 0.2005 re
-f*
-1 g
-363.641 421.096 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 421.096 7.0252 0.2005 re
-f*
-1 g
-374.279 421.096 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 421.096 9.6345 0.2005 re
-f*
-1 g
-388.128 421.096 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 421.096 6.8244 0.2005 re
-f*
-1 g
-398.566 421.096 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 421.096 14.8532 0.2005 re
-f*
-0 g
-250.234 421.296 21.0756 0.2005 re
-f*
-1 g
-271.31 421.296 7.6273 0.2005 re
-f*
-0 g
-278.937 421.296 16.0575 0.2005 re
-f*
-1 g
-294.994 421.296 3.613 0.2005 re
-f*
-0 g
-298.607 421.296 11.2403 0.2005 re
-f*
-1 g
-309.848 421.296 4.8173 0.2005 re
-f*
-0 g
-314.665 421.296 16.0575 0.2005 re
-f*
-1 g
-330.722 421.296 4.2151 0.2005 re
-f*
-0 g
-334.938 421.296 17.6633 0.2005 re
-f*
-1 g
-352.601 421.296 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-359.024 421.296 4.6166 0.2005 re
-f*
-1 g
-363.641 421.296 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 421.296 7.0252 0.2005 re
-f*
-1 g
-374.279 421.296 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 421.296 9.6345 0.2005 re
-f*
-1 g
-388.128 421.296 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 421.296 6.8244 0.2005 re
-f*
-1 g
-398.566 421.296 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 421.296 14.8532 0.2005 re
-f*
-0 g
-250.234 421.497 21.0756 0.2006 re
-f*
-1 g
-271.31 421.497 7.6273 0.2006 re
-f*
-0 g
-278.937 421.497 16.0575 0.2006 re
-f*
-1 g
-294.994 421.497 3.613 0.2006 re
-f*
-0 g
-298.607 421.497 11.2403 0.2006 re
-f*
-1 g
-309.848 421.497 4.8173 0.2006 re
-f*
-0 g
-314.665 421.497 16.0575 0.2006 re
-f*
-1 g
-330.722 421.497 4.2151 0.2006 re
-f*
-0 g
-334.938 421.497 17.6633 0.2006 re
-f*
-1 g
-352.601 421.497 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 421.497 4.4159 0.2006 re
-f*
-1 g
-363.641 421.497 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 421.497 7.0252 0.2006 re
-f*
-1 g
-374.279 421.497 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 421.497 9.6345 0.2006 re
-f*
-1 g
-388.128 421.497 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 421.497 6.8244 0.2006 re
-f*
-1 g
-398.566 421.497 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 421.497 14.8532 0.2006 re
-f*
-0 g
-250.234 421.697 21.0756 0.2006 re
-f*
-1 g
-271.31 421.697 7.6273 0.2006 re
-f*
-0 g
-278.937 421.697 16.0575 0.2006 re
-f*
-1 g
-294.994 421.697 3.613 0.2006 re
-f*
-0 g
-298.607 421.697 11.2403 0.2006 re
-f*
-1 g
-309.848 421.697 4.8173 0.2006 re
-f*
-0 g
-314.665 421.697 16.0575 0.2006 re
-f*
-1 g
-330.722 421.697 4.2151 0.2006 re
-f*
-0 g
-334.938 421.697 17.6633 0.2006 re
-f*
-1 g
-352.601 421.697 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 421.697 4.4159 0.2006 re
-f*
-1 g
-363.641 421.697 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 421.697 7.0252 0.2006 re
-f*
-1 g
-374.279 421.697 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 421.697 9.6345 0.2006 re
-f*
-1 g
-388.128 421.697 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 421.697 6.8244 0.2006 re
-f*
-1 g
-398.566 421.697 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 421.697 12.0431 0.2006 re
-f*
-1 g
-414.824 421.697 0.2008 0.2006 re
-f*
-0.498 0 0.482 rg
-415.025 421.697 2.6093 0.2006 re
-f*
-0 g
-250.234 421.898 21.0756 0.2005 re
-f*
-1 g
-271.31 421.898 7.6273 0.2005 re
-f*
-0 g
-278.937 421.898 16.0575 0.2005 re
-f*
-1 g
-294.994 421.898 3.613 0.2005 re
-f*
-0 g
-298.607 421.898 11.441 0.2005 re
-f*
-1 g
-310.048 421.898 4.6166 0.2005 re
-f*
-0 g
-314.665 421.898 16.0575 0.2005 re
-f*
-1 g
-330.722 421.898 4.2151 0.2005 re
-f*
-0 g
-334.938 421.898 17.6633 0.2005 re
-f*
-1 g
-352.601 421.898 6.6237 0.2005 re
-f*
-0.498 0 0.482 rg
-359.225 421.898 4.4159 0.2005 re
-f*
-1 g
-363.641 421.898 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 421.898 7.2259 0.2005 re
-f*
-1 g
-374.479 421.898 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 421.898 9.6345 0.2005 re
-f*
-1 g
-388.128 421.898 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 421.898 6.8244 0.2005 re
-f*
-1 g
-398.566 421.898 16.4591 0.2005 re
-f*
-0.498 0 0.482 rg
-415.025 421.898 2.6093 0.2005 re
-f*
-0 g
-250.234 422.099 21.0756 0.2006 re
-f*
-1 g
-271.31 422.099 7.6273 0.2006 re
-f*
-0 g
-278.937 422.099 16.0575 0.2006 re
-f*
-1 g
-294.994 422.099 3.613 0.2006 re
-f*
-0 g
-298.607 422.099 11.441 0.2006 re
-f*
-1 g
-310.048 422.099 4.6166 0.2006 re
-f*
-0 g
-314.665 422.099 16.0575 0.2006 re
-f*
-1 g
-330.722 422.099 4.2151 0.2006 re
-f*
-0 g
-334.938 422.099 17.6633 0.2006 re
-f*
-1 g
-352.601 422.099 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 422.099 4.4159 0.2006 re
-f*
-1 g
-363.641 422.099 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 422.099 7.2259 0.2006 re
-f*
-1 g
-374.479 422.099 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 422.099 9.6345 0.2006 re
-f*
-1 g
-388.128 422.099 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 422.099 7.0252 0.2006 re
-f*
-1 g
-398.766 422.099 16.2583 0.2006 re
-f*
-0.498 0 0.482 rg
-415.025 422.099 2.6093 0.2006 re
-f*
-0 g
-250.234 422.299 21.0756 0.2005 re
-f*
-1 g
-271.31 422.299 7.6273 0.2005 re
-f*
-0 g
-278.937 422.299 16.0575 0.2005 re
-f*
-1 g
-294.994 422.299 3.613 0.2005 re
-f*
-0 g
-298.607 422.299 11.441 0.2005 re
-f*
-1 g
-310.048 422.299 4.6166 0.2005 re
-f*
-0 g
-314.665 422.299 16.0575 0.2005 re
-f*
-1 g
-330.722 422.299 4.2151 0.2005 re
-f*
-0 g
-334.938 422.299 17.6633 0.2005 re
-f*
-1 g
-352.601 422.299 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-359.425 422.299 4.2151 0.2005 re
-f*
-1 g
-363.641 422.299 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 422.299 7.2259 0.2005 re
-f*
-1 g
-374.479 422.299 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 422.299 9.6345 0.2005 re
-f*
-1 g
-388.128 422.299 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 422.299 7.0252 0.2005 re
-f*
-1 g
-398.766 422.299 16.2583 0.2005 re
-f*
-0.498 0 0.482 rg
-415.025 422.299 2.4086 0.2005 re
-f*
-0 g
-250.234 422.5 21.0756 0.2006 re
-f*
-1 g
-271.31 422.5 7.6273 0.2006 re
-f*
-0 g
-278.937 422.5 16.0575 0.2006 re
-f*
-1 g
-294.994 422.5 3.613 0.2006 re
-f*
-0 g
-298.607 422.5 11.441 0.2006 re
-f*
-1 g
-310.048 422.5 4.6166 0.2006 re
-f*
-0 g
-314.665 422.5 16.0575 0.2006 re
-f*
-1 g
-330.722 422.5 4.2151 0.2006 re
-f*
-0 g
-334.938 422.5 17.6633 0.2006 re
-f*
-1 g
-352.601 422.5 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 422.5 4.2151 0.2006 re
-f*
-1 g
-363.641 422.5 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 422.5 7.2259 0.2006 re
-f*
-1 g
-374.479 422.5 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 422.5 9.6345 0.2006 re
-f*
-1 g
-388.128 422.5 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 422.5 7.0252 0.2006 re
-f*
-1 g
-398.766 422.5 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 422.5 8.0287 0.2006 re
-f*
-1 g
-410.81 422.5 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-415.025 422.5 2.4086 0.2006 re
-f*
-0 g
-250.234 422.7 21.0756 0.2006 re
-f*
-1 g
-271.31 422.7 7.6273 0.2006 re
-f*
-0 g
-278.937 422.7 16.0575 0.2006 re
-f*
-1 g
-294.994 422.7 3.613 0.2006 re
-f*
-0 g
-298.607 422.7 11.6417 0.2006 re
-f*
-1 g
-310.249 422.7 4.4159 0.2006 re
-f*
-0 g
-314.665 422.7 16.0575 0.2006 re
-f*
-1 g
-330.722 422.7 4.2151 0.2006 re
-f*
-0 g
-334.938 422.7 17.6633 0.2006 re
-f*
-1 g
-352.601 422.7 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 422.7 4.2151 0.2006 re
-f*
-1 g
-363.641 422.7 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 422.7 7.2259 0.2006 re
-f*
-1 g
-374.479 422.7 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 422.7 9.6345 0.2006 re
-f*
-1 g
-388.128 422.7 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 422.7 7.0252 0.2006 re
-f*
-1 g
-398.766 422.7 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 422.7 8.0287 0.2006 re
-f*
-1 g
-410.81 422.7 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-415.025 422.7 2.4086 0.2006 re
-f*
-0 g
-250.435 422.901 20.8749 0.2005 re
-f*
-1 g
-271.31 422.901 7.6273 0.2005 re
-f*
-0 g
-278.937 422.901 16.0575 0.2005 re
-f*
-1 g
-294.994 422.901 3.613 0.2005 re
-f*
-0 g
-298.607 422.901 11.6417 0.2005 re
-f*
-1 g
-310.249 422.901 16.6597 0.2005 re
-f*
-0 g
-326.909 422.901 4.0144 0.2005 re
-f*
-1 g
-330.923 422.901 4.0144 0.2005 re
-f*
-0 g
-334.938 422.901 12.0431 0.2005 re
-f*
-1 g
-346.981 422.901 0.2008 0.2005 re
-f*
-0 g
-347.181 422.901 5.4194 0.2005 re
-f*
-1 g
-352.601 422.901 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-359.425 422.901 4.2151 0.2005 re
-f*
-1 g
-363.641 422.901 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 422.901 7.4267 0.2005 re
-f*
-1 g
-374.68 422.901 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 422.901 9.6345 0.2005 re
-f*
-1 g
-388.128 422.901 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 422.901 7.2259 0.2005 re
-f*
-1 g
-398.967 422.901 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 422.901 8.0287 0.2005 re
-f*
-1 g
-410.81 422.901 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-415.025 422.901 2.4086 0.2005 re
-f*
-0 g
-250.435 423.101 20.8749 0.2006 re
-f*
-1 g
-271.31 423.101 7.6273 0.2006 re
-f*
-0 g
-278.937 423.101 16.0575 0.2006 re
-f*
-1 g
-294.994 423.101 3.613 0.2006 re
-f*
-0 g
-298.607 423.101 11.6417 0.2006 re
-f*
-1 g
-310.249 423.101 16.6597 0.2006 re
-f*
-0 g
-326.909 423.101 4.0144 0.2006 re
-f*
-1 g
-330.923 423.101 16.2583 0.2006 re
-f*
-0 g
-347.181 423.101 5.4194 0.2006 re
-f*
-1 g
-352.601 423.101 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 423.101 4.2151 0.2006 re
-f*
-1 g
-363.641 423.101 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 423.101 7.4267 0.2006 re
-f*
-1 g
-374.68 423.101 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 423.101 9.6345 0.2006 re
-f*
-1 g
-388.128 423.101 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 423.101 7.2259 0.2006 re
-f*
-1 g
-398.967 423.101 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 423.101 8.0287 0.2006 re
-f*
-1 g
-410.81 423.101 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-414.824 423.101 2.6094 0.2006 re
-f*
-0 g
-250.435 423.302 20.8749 0.2005 re
-f*
-1 g
-271.31 423.302 7.6273 0.2005 re
-f*
-0 g
-278.937 423.302 16.0575 0.2005 re
-f*
-1 g
-294.994 423.302 3.613 0.2005 re
-f*
-0 g
-298.607 423.302 11.8425 0.2005 re
-f*
-1 g
-310.45 423.302 4.2151 0.2005 re
-f*
-0 g
-314.665 423.302 8.4302 0.2005 re
-f*
-1 g
-323.095 423.302 3.8136 0.2005 re
-f*
-0 g
-326.909 423.302 4.0144 0.2005 re
-f*
-1 g
-330.923 423.302 16.2583 0.2005 re
-f*
-0 g
-347.181 423.302 5.4194 0.2005 re
-f*
-1 g
-352.601 423.302 6.8245 0.2005 re
-f*
-0.498 0 0.482 rg
-359.425 423.302 4.2151 0.2005 re
-f*
-1 g
-363.641 423.302 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 423.302 7.4267 0.2005 re
-f*
-1 g
-374.68 423.302 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-378.494 423.302 9.6345 0.2005 re
-f*
-1 g
-388.128 423.302 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 423.302 7.2259 0.2005 re
-f*
-1 g
-398.967 423.302 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.781 423.302 8.0287 0.2005 re
-f*
-1 g
-410.81 423.302 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-414.824 423.302 2.6094 0.2005 re
-f*
-0 g
-250.435 423.502 20.8749 0.2006 re
-f*
-1 g
-271.31 423.502 7.6273 0.2006 re
-f*
-0 g
-278.937 423.502 16.0575 0.2006 re
-f*
-1 g
-294.994 423.502 3.613 0.2006 re
-f*
-0 g
-298.607 423.502 11.8425 0.2006 re
-f*
-1 g
-310.45 423.502 4.4157 0.2006 re
-f*
-0 g
-314.866 423.502 8.2296 0.2006 re
-f*
-1 g
-323.095 423.502 3.8136 0.2006 re
-f*
-0 g
-326.909 423.502 4.0144 0.2006 re
-f*
-1 g
-330.923 423.502 16.2583 0.2006 re
-f*
-0 g
-347.181 423.502 5.2187 0.2006 re
-f*
-1 g
-352.4 423.502 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 423.502 4.2151 0.2006 re
-f*
-1 g
-363.641 423.502 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 423.502 7.4267 0.2006 re
-f*
-1 g
-374.68 423.502 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-378.494 423.502 9.6345 0.2006 re
-f*
-1 g
-388.128 423.502 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 423.502 7.4266 0.2006 re
-f*
-1 g
-399.168 423.502 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-402.781 423.502 8.0287 0.2006 re
-f*
-1 g
-410.81 423.502 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-414.824 423.502 2.6094 0.2006 re
-f*
-0 g
-250.435 423.703 20.8749 0.2006 re
-f*
-1 g
-271.31 423.703 7.6273 0.2006 re
-f*
-0 g
-278.937 423.703 16.0575 0.2006 re
-f*
-1 g
-294.994 423.703 3.613 0.2006 re
-f*
-0 g
-298.607 423.703 12.0432 0.2006 re
-f*
-1 g
-310.651 423.703 4.215 0.2006 re
-f*
-0 g
-314.866 423.703 8.2296 0.2006 re
-f*
-1 g
-323.095 423.703 3.8136 0.2006 re
-f*
-0 g
-326.909 423.703 4.0144 0.2006 re
-f*
-1 g
-330.923 423.703 4.0144 0.2006 re
-f*
-0 g
-334.938 423.703 8.0288 0.2006 re
-f*
-1 g
-342.966 423.703 4.2151 0.2006 re
-f*
-0 g
-347.181 423.703 5.2187 0.2006 re
-f*
-1 g
-352.4 423.703 7.2259 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 423.703 4.0144 0.2006 re
-f*
-1 g
-363.641 423.703 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 423.703 7.6274 0.2006 re
-f*
-1 g
-374.881 423.703 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 423.703 9.2331 0.2006 re
-f*
-1 g
-387.928 423.703 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 423.703 7.4266 0.2006 re
-f*
-1 g
-399.168 423.703 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 423.703 7.828 0.2006 re
-f*
-1 g
-410.81 423.703 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-414.824 423.703 2.6094 0.2006 re
-f*
-0 g
-250.435 423.904 20.8749 0.2005 re
-f*
-1 g
-271.31 423.904 7.6273 0.2005 re
-f*
-0 g
-278.937 423.904 16.0575 0.2005 re
-f*
-1 g
-294.994 423.904 3.8137 0.2005 re
-f*
-0 g
-298.808 423.904 11.8425 0.2005 re
-f*
-1 g
-310.651 423.904 4.215 0.2005 re
-f*
-0 g
-314.866 423.904 8.2296 0.2005 re
-f*
-1 g
-323.095 423.904 3.8136 0.2005 re
-f*
-0 g
-326.909 423.904 4.2151 0.2005 re
-f*
-1 g
-331.124 423.904 3.8137 0.2005 re
-f*
-0 g
-334.938 423.904 8.0288 0.2005 re
-f*
-1 g
-342.966 423.904 4.2151 0.2005 re
-f*
-0 g
-347.181 423.904 5.2187 0.2005 re
-f*
-1 g
-352.4 423.904 7.2259 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 423.904 4.0144 0.2005 re
-f*
-1 g
-363.641 423.904 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 423.904 7.6274 0.2005 re
-f*
-1 g
-374.881 423.904 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-378.695 423.904 9.2331 0.2005 re
-f*
-1 g
-387.928 423.904 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 423.904 7.4266 0.2005 re
-f*
-1 g
-399.168 423.904 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-402.981 423.904 7.828 0.2005 re
-f*
-1 g
-410.81 423.904 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-414.824 423.904 2.6094 0.2005 re
-f*
-0 g
-250.435 424.104 20.8749 0.2006 re
-f*
-1 g
-271.31 424.104 7.6273 0.2006 re
-f*
-0 g
-278.937 424.104 16.0575 0.2006 re
-f*
-1 g
-294.994 424.104 3.8137 0.2006 re
-f*
-0 g
-298.808 424.104 11.8425 0.2006 re
-f*
-1 g
-310.651 424.104 4.215 0.2006 re
-f*
-0 g
-314.866 424.104 8.4303 0.2006 re
-f*
-1 g
-323.296 424.104 3.6129 0.2006 re
-f*
-0 g
-326.909 424.104 4.2151 0.2006 re
-f*
-1 g
-331.124 424.104 3.8137 0.2006 re
-f*
-0 g
-334.938 424.104 8.0288 0.2006 re
-f*
-1 g
-342.966 424.104 4.2151 0.2006 re
-f*
-0 g
-347.181 424.104 5.2187 0.2006 re
-f*
-1 g
-352.4 424.104 7.2259 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 424.104 4.0144 0.2006 re
-f*
-1 g
-363.641 424.104 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 424.104 7.8281 0.2006 re
-f*
-1 g
-375.081 424.104 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 424.104 9.2331 0.2006 re
-f*
-1 g
-387.928 424.104 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 424.104 7.6273 0.2006 re
-f*
-1 g
-399.368 424.104 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 424.104 7.828 0.2006 re
-f*
-1 g
-410.81 424.104 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-414.623 424.104 2.8101 0.2006 re
-f*
-0 g
-250.435 424.305 20.8749 0.2005 re
-f*
-1 g
-271.31 424.305 7.6273 0.2005 re
-f*
-0 g
-278.937 424.305 16.0575 0.2005 re
-f*
-1 g
-294.994 424.305 3.8137 0.2005 re
-f*
-0 g
-298.808 424.305 12.0432 0.2005 re
-f*
-1 g
-310.851 424.305 4.0143 0.2005 re
-f*
-0 g
-314.866 424.305 8.4303 0.2005 re
-f*
-1 g
-323.296 424.305 3.6129 0.2005 re
-f*
-0 g
-326.909 424.305 4.2151 0.2005 re
-f*
-1 g
-331.124 424.305 4.0144 0.2005 re
-f*
-0 g
-335.138 424.305 7.8281 0.2005 re
-f*
-1 g
-342.966 424.305 4.2151 0.2005 re
-f*
-0 g
-347.181 424.305 5.2187 0.2005 re
-f*
-1 g
-352.4 424.305 7.2259 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 424.305 4.0144 0.2005 re
-f*
-1 g
-363.641 424.305 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 424.305 7.8281 0.2005 re
-f*
-1 g
-375.081 424.305 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-378.695 424.305 9.2331 0.2005 re
-f*
-1 g
-387.928 424.305 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 424.305 7.6273 0.2005 re
-f*
-1 g
-399.368 424.305 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-402.981 424.305 7.828 0.2005 re
-f*
-1 g
-410.81 424.305 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-414.623 424.305 2.6093 0.2005 re
-f*
-0 g
-250.435 424.505 20.8749 0.2006 re
-f*
-1 g
-271.31 424.505 7.6273 0.2006 re
-f*
-0 g
-278.937 424.505 16.0575 0.2006 re
-f*
-1 g
-294.994 424.505 3.8137 0.2006 re
-f*
-0 g
-298.808 424.505 12.0432 0.2006 re
-f*
-1 g
-310.851 424.505 4.0143 0.2006 re
-f*
-0 g
-314.866 424.505 8.4303 0.2006 re
-f*
-1 g
-323.296 424.505 3.6129 0.2006 re
-f*
-0 g
-326.909 424.505 4.4158 0.2006 re
-f*
-1 g
-331.325 424.505 3.8137 0.2006 re
-f*
-0 g
-335.138 424.505 7.8281 0.2006 re
-f*
-1 g
-342.966 424.505 4.0143 0.2006 re
-f*
-0 g
-346.981 424.505 5.2188 0.2006 re
-f*
-1 g
-352.2 424.505 7.4266 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 424.505 4.0144 0.2006 re
-f*
-1 g
-363.641 424.505 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 424.505 8.0288 0.2006 re
-f*
-1 g
-375.282 424.505 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 424.505 9.2331 0.2006 re
-f*
-1 g
-387.928 424.505 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 424.505 7.828 0.2006 re
-f*
-1 g
-399.569 424.505 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 424.505 7.828 0.2006 re
-f*
-1 g
-410.81 424.505 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-414.623 424.505 2.6093 0.2006 re
-f*
-0 g
-250.635 424.706 20.6741 0.2006 re
-f*
-1 g
-271.31 424.706 7.6273 0.2006 re
-f*
-0 g
-278.937 424.706 16.0575 0.2006 re
-f*
-1 g
-294.994 424.706 3.8137 0.2006 re
-f*
-0 g
-298.808 424.706 12.2439 0.2006 re
-f*
-1 g
-311.052 424.706 3.8136 0.2006 re
-f*
-0 g
-314.866 424.706 8.4303 0.2006 re
-f*
-1 g
-323.296 424.706 3.4122 0.2006 re
-f*
-0 g
-326.708 424.706 4.6165 0.2006 re
-f*
-1 g
-331.325 424.706 3.8137 0.2006 re
-f*
-0 g
-335.138 424.706 7.8281 0.2006 re
-f*
-1 g
-342.966 424.706 4.0143 0.2006 re
-f*
-0 g
-346.981 424.706 5.2188 0.2006 re
-f*
-1 g
-352.2 424.706 7.4266 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 424.706 4.0144 0.2006 re
-f*
-1 g
-363.641 424.706 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 424.706 8.0288 0.2006 re
-f*
-1 g
-375.282 424.706 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-378.695 424.706 9.2331 0.2006 re
-f*
-1 g
-387.928 424.706 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 424.706 7.828 0.2006 re
-f*
-1 g
-399.569 424.706 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-402.981 424.706 7.828 0.2006 re
-f*
-1 g
-410.81 424.706 3.8137 0.2006 re
-f*
-0.498 0 0.482 rg
-414.623 424.706 2.6093 0.2006 re
-f*
-0 g
-250.635 424.906 20.6741 0.2005 re
-f*
-1 g
-271.31 424.906 7.6273 0.2005 re
-f*
-0 g
-278.937 424.906 16.0575 0.2005 re
-f*
-1 g
-294.994 424.906 3.8137 0.2005 re
-f*
-0 g
-298.808 424.906 12.2439 0.2005 re
-f*
-1 g
-311.052 424.906 3.8136 0.2005 re
-f*
-0 g
-314.866 424.906 8.4303 0.2005 re
-f*
-1 g
-323.296 424.906 3.4122 0.2005 re
-f*
-0 g
-326.708 424.906 4.6165 0.2005 re
-f*
-1 g
-331.325 424.906 3.8137 0.2005 re
-f*
-0 g
-335.138 424.906 7.8281 0.2005 re
-f*
-1 g
-342.966 424.906 4.0143 0.2005 re
-f*
-0 g
-346.981 424.906 5.2188 0.2005 re
-f*
-1 g
-352.2 424.906 7.4266 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 424.906 4.0144 0.2005 re
-f*
-1 g
-363.641 424.906 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 424.906 8.2295 0.2005 re
-f*
-1 g
-375.483 424.906 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-378.695 424.906 9.0323 0.2005 re
-f*
-1 g
-387.727 424.906 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 424.906 8.0288 0.2005 re
-f*
-1 g
-399.77 424.906 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-403.182 424.906 7.6273 0.2005 re
-f*
-1 g
-410.81 424.906 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-414.422 424.906 2.81 0.2005 re
-f*
-0 g
-250.635 425.107 20.8748 0.2006 re
-f*
-1 g
-271.51 425.107 7.4266 0.2006 re
-f*
-0 g
-278.937 425.107 16.0575 0.2006 re
-f*
-1 g
-294.994 425.107 4.0144 0.2006 re
-f*
-0 g
-299.009 425.107 5.2187 0.2006 re
-f*
-1 g
-304.227 425.107 2.208 0.2006 re
-f*
-0 g
-306.435 425.107 4.8172 0.2006 re
-f*
-1 g
-311.253 425.107 3.6129 0.2006 re
-f*
-0 g
-314.866 425.107 8.4303 0.2006 re
-f*
-1 g
-323.296 425.107 3.4122 0.2006 re
-f*
-0 g
-326.708 425.107 4.8173 0.2006 re
-f*
-1 g
-331.525 425.107 3.6129 0.2006 re
-f*
-0 g
-335.138 425.107 7.8281 0.2006 re
-f*
-1 g
-342.966 425.107 4.0143 0.2006 re
-f*
-0 g
-346.981 425.107 5.018 0.2006 re
-f*
-1 g
-351.999 425.107 7.6274 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 425.107 4.0144 0.2006 re
-f*
-1 g
-363.641 425.107 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 425.107 8.2295 0.2006 re
-f*
-1 g
-375.483 425.107 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-378.895 425.107 8.8316 0.2006 re
-f*
-1 g
-387.727 425.107 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 425.107 8.2295 0.2006 re
-f*
-1 g
-399.971 425.107 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-403.182 425.107 7.6273 0.2006 re
-f*
-1 g
-410.81 425.107 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-414.422 425.107 2.81 0.2006 re
-f*
-0 g
-250.635 425.308 20.8748 0.2005 re
-f*
-1 g
-271.51 425.308 7.4266 0.2005 re
-f*
-0 g
-278.937 425.308 16.0575 0.2005 re
-f*
-1 g
-294.994 425.308 4.0144 0.2005 re
-f*
-0 g
-299.009 425.308 4.8173 0.2005 re
-f*
-1 g
-303.826 425.308 3.0108 0.2005 re
-f*
-0 g
-306.837 425.308 4.4158 0.2005 re
-f*
-1 g
-311.253 425.308 3.8137 0.2005 re
-f*
-0 g
-315.066 425.308 8.2295 0.2005 re
-f*
-1 g
-323.296 425.308 3.4122 0.2005 re
-f*
-0 g
-326.708 425.308 4.8173 0.2005 re
-f*
-1 g
-331.525 425.308 3.6129 0.2005 re
-f*
-0 g
-335.138 425.308 7.8281 0.2005 re
-f*
-1 g
-342.966 425.308 4.0143 0.2005 re
-f*
-0 g
-346.981 425.308 5.018 0.2005 re
-f*
-1 g
-351.999 425.308 7.6274 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 425.308 4.0144 0.2005 re
-f*
-1 g
-363.641 425.308 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 425.308 8.4303 0.2005 re
-f*
-1 g
-375.684 425.308 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-378.895 425.308 8.8316 0.2005 re
-f*
-1 g
-387.727 425.308 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 425.308 8.2295 0.2005 re
-f*
-1 g
-399.971 425.308 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-403.182 425.308 7.6273 0.2005 re
-f*
-1 g
-410.81 425.308 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-414.222 425.308 3.0108 0.2005 re
-f*
-0 g
-250.635 425.508 20.8748 0.2006 re
-f*
-1 g
-271.51 425.508 7.4266 0.2006 re
-f*
-0 g
-278.937 425.508 16.0575 0.2006 re
-f*
-1 g
-294.994 425.508 4.0144 0.2006 re
-f*
-0 g
-299.009 425.508 4.6166 0.2006 re
-f*
-1 g
-303.625 425.508 3.4122 0.2006 re
-f*
-0 g
-307.038 425.508 4.4158 0.2006 re
-f*
-1 g
-311.453 425.508 3.613 0.2006 re
-f*
-0 g
-315.066 425.508 8.2295 0.2006 re
-f*
-1 g
-323.296 425.508 3.2115 0.2006 re
-f*
-0 g
-326.507 425.508 5.2187 0.2006 re
-f*
-1 g
-331.726 425.508 3.4122 0.2006 re
-f*
-0 g
-335.138 425.508 7.8281 0.2006 re
-f*
-1 g
-342.966 425.508 3.8137 0.2006 re
-f*
-0 g
-346.78 425.508 5.2186 0.2006 re
-f*
-1 g
-351.999 425.508 7.6274 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 425.508 4.0144 0.2006 re
-f*
-1 g
-363.641 425.508 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 425.508 8.4303 0.2006 re
-f*
-1 g
-375.684 425.508 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-378.895 425.508 8.6309 0.2006 re
-f*
-1 g
-387.526 425.508 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 425.508 8.4302 0.2006 re
-f*
-1 g
-400.171 425.508 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-403.383 425.508 7.4266 0.2006 re
-f*
-1 g
-410.81 425.508 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-414.222 425.508 2.8102 0.2006 re
-f*
-0 g
-250.635 425.709 20.8748 0.2005 re
-f*
-1 g
-271.51 425.709 7.4266 0.2005 re
-f*
-0 g
-278.937 425.709 16.0575 0.2005 re
-f*
-1 g
-294.994 425.709 4.2151 0.2005 re
-f*
-0 g
-299.209 425.709 4.4159 0.2005 re
-f*
-1 g
-303.625 425.709 3.6129 0.2005 re
-f*
-0 g
-307.238 425.709 4.4159 0.2005 re
-f*
-1 g
-311.654 425.709 3.4122 0.2005 re
-f*
-0 g
-315.066 425.709 8.0288 0.2005 re
-f*
-1 g
-323.095 425.709 3.4122 0.2005 re
-f*
-0 g
-326.507 425.709 5.2187 0.2005 re
-f*
-1 g
-331.726 425.709 3.613 0.2005 re
-f*
-0 g
-335.339 425.709 7.6273 0.2005 re
-f*
-1 g
-342.966 425.709 3.8137 0.2005 re
-f*
-0 g
-346.78 425.709 5.018 0.2005 re
-f*
-1 g
-351.798 425.709 7.828 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 425.709 4.0144 0.2005 re
-f*
-1 g
-363.641 425.709 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 425.709 8.631 0.2005 re
-f*
-1 g
-375.884 425.709 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-378.895 425.709 8.6309 0.2005 re
-f*
-1 g
-387.526 425.709 4.2151 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 425.709 8.6309 0.2005 re
-f*
-1 g
-400.372 425.709 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-403.383 425.709 7.4266 0.2005 re
-f*
-1 g
-410.81 425.709 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-414.222 425.709 2.8102 0.2005 re
-f*
-0 g
-250.836 425.909 20.6741 0.2006 re
-f*
-1 g
-271.51 425.909 7.4266 0.2006 re
-f*
-0 g
-278.937 425.909 16.0575 0.2006 re
-f*
-1 g
-294.994 425.909 4.2151 0.2006 re
-f*
-0 g
-299.209 425.909 4.4159 0.2006 re
-f*
-1 g
-303.625 425.909 3.6129 0.2006 re
-f*
-0 g
-307.238 425.909 4.4159 0.2006 re
-f*
-1 g
-311.654 425.909 3.4122 0.2006 re
-f*
-0 g
-315.066 425.909 8.0288 0.2006 re
-f*
-1 g
-323.095 425.909 3.2115 0.2006 re
-f*
-0 g
-326.307 425.909 5.6201 0.2006 re
-f*
-1 g
-331.927 425.909 3.4123 0.2006 re
-f*
-0 g
-335.339 425.909 7.6273 0.2006 re
-f*
-1 g
-342.966 425.909 3.8137 0.2006 re
-f*
-0 g
-346.78 425.909 5.018 0.2006 re
-f*
-1 g
-351.798 425.909 7.828 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 425.909 4.0144 0.2006 re
-f*
-1 g
-363.641 425.909 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 425.909 8.8317 0.2006 re
-f*
-1 g
-376.085 425.909 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-379.096 425.909 8.4302 0.2006 re
-f*
-1 g
-387.526 425.909 4.2151 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 425.909 8.6309 0.2006 re
-f*
-1 g
-400.372 425.909 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-403.383 425.909 7.2259 0.2006 re
-f*
-1 g
-410.609 425.909 3.4123 0.2006 re
-f*
-0.498 0 0.482 rg
-414.021 425.909 3.0108 0.2006 re
-f*
-0 g
-250.836 426.11 20.6741 0.2006 re
-f*
-1 g
-271.51 426.11 7.4266 0.2006 re
-f*
-0 g
-278.937 426.11 16.0575 0.2006 re
-f*
-1 g
-294.994 426.11 4.2151 0.2006 re
-f*
-0 g
-299.209 426.11 4.4159 0.2006 re
-f*
-1 g
-303.625 426.11 3.6129 0.2006 re
-f*
-0 g
-307.238 426.11 4.6166 0.2006 re
-f*
-1 g
-311.855 426.11 3.2115 0.2006 re
-f*
-0 g
-315.066 426.11 8.0288 0.2006 re
-f*
-1 g
-323.095 426.11 3.2115 0.2006 re
-f*
-0 g
-326.307 426.11 5.6201 0.2006 re
-f*
-1 g
-331.927 426.11 3.4123 0.2006 re
-f*
-0 g
-335.339 426.11 7.6273 0.2006 re
-f*
-1 g
-342.966 426.11 3.6129 0.2006 re
-f*
-0 g
-346.579 426.11 5.2188 0.2006 re
-f*
-1 g
-351.798 426.11 8.0287 0.2006 re
-f*
-0.498 0 0.482 rg
-359.827 426.11 3.8137 0.2006 re
-f*
-1 g
-363.641 426.11 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 426.11 8.8317 0.2006 re
-f*
-1 g
-376.085 426.11 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-379.096 426.11 8.2294 0.2006 re
-f*
-1 g
-387.325 426.11 4.4159 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 426.11 8.8316 0.2006 re
-f*
-1 g
-400.573 426.11 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-403.584 426.11 7.0252 0.2006 re
-f*
-1 g
-410.609 426.11 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-413.82 426.11 3.2116 0.2006 re
-f*
-0 g
-250.836 426.31 20.6741 0.2005 re
-f*
-1 g
-271.51 426.31 7.4266 0.2005 re
-f*
-0 g
-278.937 426.31 16.0575 0.2005 re
-f*
-1 g
-294.994 426.31 4.4159 0.2005 re
-f*
-0 g
-299.41 426.31 4.2151 0.2005 re
-f*
-1 g
-303.625 426.31 3.8137 0.2005 re
-f*
-0 g
-307.439 426.31 4.4158 0.2005 re
-f*
-1 g
-311.855 426.31 3.4122 0.2005 re
-f*
-0 g
-315.267 426.31 7.8281 0.2005 re
-f*
-1 g
-323.095 426.31 3.2115 0.2005 re
-f*
-0 g
-326.307 426.31 5.8208 0.2005 re
-f*
-1 g
-332.127 426.31 3.2116 0.2005 re
-f*
-0 g
-335.339 426.31 7.6273 0.2005 re
-f*
-1 g
-342.966 426.31 3.6129 0.2005 re
-f*
-0 g
-346.579 426.31 5.018 0.2005 re
-f*
-1 g
-351.597 426.31 8.2295 0.2005 re
-f*
-0.498 0 0.482 rg
-359.827 426.31 3.8137 0.2005 re
-f*
-1 g
-363.641 426.31 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 426.31 9.0324 0.2005 re
-f*
-1 g
-376.286 426.31 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-379.297 426.31 8.0287 0.2005 re
-f*
-1 g
-387.325 426.31 4.4159 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 426.31 9.0324 0.2005 re
-f*
-1 g
-400.774 426.31 2.81 0.2005 re
-f*
-0.498 0 0.482 rg
-403.584 426.31 7.0252 0.2005 re
-f*
-1 g
-410.609 426.31 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-413.82 426.31 3.2116 0.2005 re
-f*
-0 g
-250.836 426.511 20.6741 0.2006 re
-f*
-1 g
-271.51 426.511 7.4266 0.2006 re
-f*
-0 g
-278.937 426.511 16.0575 0.2006 re
-f*
-1 g
-294.994 426.511 4.4159 0.2006 re
-f*
-0 g
-299.41 426.511 4.2151 0.2006 re
-f*
-1 g
-303.625 426.511 3.8137 0.2006 re
-f*
-0 g
-307.439 426.511 4.6165 0.2006 re
-f*
-1 g
-312.056 426.511 3.2115 0.2006 re
-f*
-0 g
-315.267 426.511 7.8281 0.2006 re
-f*
-1 g
-323.095 426.511 3.0107 0.2006 re
-f*
-0 g
-326.106 426.511 6.2223 0.2006 re
-f*
-1 g
-332.328 426.511 3.2116 0.2006 re
-f*
-0 g
-335.54 426.511 7.4266 0.2006 re
-f*
-1 g
-342.966 426.511 3.4122 0.2006 re
-f*
-0 g
-346.379 426.511 5.2187 0.2006 re
-f*
-1 g
-351.597 426.511 8.2295 0.2006 re
-f*
-0.498 0 0.482 rg
-359.827 426.511 3.8137 0.2006 re
-f*
-1 g
-363.641 426.511 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 426.511 9.2331 0.2006 re
-f*
-1 g
-376.486 426.511 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-379.297 426.511 7.828 0.2006 re
-f*
-1 g
-387.125 426.511 4.6166 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 426.511 9.2331 0.2006 re
-f*
-1 g
-400.974 426.511 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-403.784 426.511 6.8244 0.2006 re
-f*
-1 g
-410.609 426.511 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-413.62 426.511 3.4123 0.2006 re
-f*
-0 g
-250.836 426.711 20.6741 0.2005 re
-f*
-1 g
-271.51 426.711 7.4266 0.2005 re
-f*
-0 g
-278.937 426.711 16.0575 0.2005 re
-f*
-1 g
-294.994 426.711 4.6166 0.2005 re
-f*
-0 g
-299.611 426.711 4.0144 0.2005 re
-f*
-1 g
-303.625 426.711 3.8137 0.2005 re
-f*
-0 g
-307.439 426.711 4.8172 0.2005 re
-f*
-1 g
-312.256 426.711 3.0108 0.2005 re
-f*
-0 g
-315.267 426.711 7.8281 0.2005 re
-f*
-1 g
-323.095 426.711 3.0107 0.2005 re
-f*
-0 g
-326.106 426.711 6.2223 0.2005 re
-f*
-1 g
-332.328 426.711 3.2116 0.2005 re
-f*
-0 g
-335.54 426.711 7.4266 0.2005 re
-f*
-1 g
-342.966 426.711 3.4122 0.2005 re
-f*
-0 g
-346.379 426.711 5.018 0.2005 re
-f*
-1 g
-351.397 426.711 8.4302 0.2005 re
-f*
-0.498 0 0.482 rg
-359.827 426.711 3.8137 0.2005 re
-f*
-1 g
-363.641 426.711 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 426.711 9.4339 0.2005 re
-f*
-1 g
-376.687 426.711 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-379.297 426.711 7.6274 0.2005 re
-f*
-1 g
-386.924 426.711 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-387.928 426.711 0.2006 0.2005 re
-f*
-1 g
-388.128 426.711 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 426.711 9.4338 0.2005 re
-f*
-1 g
-401.175 426.711 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-403.784 426.711 6.6237 0.2005 re
-f*
-1 g
-410.408 426.711 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-413.419 426.711 3.4122 0.2005 re
-f*
-0 g
-251.037 426.912 20.4734 0.2006 re
-f*
-1 g
-271.51 426.912 7.4266 0.2006 re
-f*
-0 g
-278.937 426.912 16.0575 0.2006 re
-f*
-1 g
-294.994 426.912 4.6166 0.2006 re
-f*
-0 g
-299.611 426.912 4.0144 0.2006 re
-f*
-1 g
-303.625 426.912 3.8137 0.2006 re
-f*
-0 g
-307.439 426.912 5.0179 0.2006 re
-f*
-1 g
-312.457 426.912 3.0108 0.2006 re
-f*
-0 g
-315.468 426.912 7.6274 0.2006 re
-f*
-1 g
-323.095 426.912 2.81 0.2006 re
-f*
-0 g
-325.905 426.912 6.6238 0.2006 re
-f*
-1 g
-332.529 426.912 3.0108 0.2006 re
-f*
-0 g
-335.54 426.912 7.4266 0.2006 re
-f*
-1 g
-342.966 426.912 3.2115 0.2006 re
-f*
-0 g
-346.178 426.912 5.2187 0.2006 re
-f*
-1 g
-351.397 426.912 8.4302 0.2006 re
-f*
-0.498 0 0.482 rg
-359.827 426.912 3.8137 0.2006 re
-f*
-1 g
-363.641 426.912 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 426.912 9.6346 0.2006 re
-f*
-1 g
-376.888 426.912 2.6093 0.2006 re
-f*
-0.498 0 0.482 rg
-379.497 426.912 7.4267 0.2006 re
-f*
-1 g
-386.924 426.912 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-387.928 426.912 0.2006 0.2006 re
-f*
-1 g
-388.128 426.912 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 426.912 9.6345 0.2006 re
-f*
-1 g
-401.376 426.912 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-403.985 426.912 6.423 0.2006 re
-f*
-1 g
-410.408 426.912 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-413.419 426.912 3.4122 0.2006 re
-f*
-0 g
-251.037 427.113 20.4734 0.2006 re
-f*
-1 g
-271.51 427.113 7.4266 0.2006 re
-f*
-0 g
-278.937 427.113 16.0575 0.2006 re
-f*
-1 g
-294.994 427.113 3.613 0.2006 re
-f*
-0 g
-298.607 427.113 0.2007 0.2006 re
-f*
-1 g
-298.808 427.113 1.0036 0.2006 re
-f*
-0 g
-299.812 427.113 4.0144 0.2006 re
-f*
-1 g
-303.826 427.113 3.613 0.2006 re
-f*
-0 g
-307.439 427.113 5.0179 0.2006 re
-f*
-1 g
-312.457 427.113 3.0108 0.2006 re
-f*
-0 g
-315.468 427.113 7.6274 0.2006 re
-f*
-1 g
-323.095 427.113 2.6093 0.2006 re
-f*
-0 g
-325.704 427.113 7.0252 0.2006 re
-f*
-1 g
-332.73 427.113 3.0108 0.2006 re
-f*
-0 g
-335.74 427.113 7.0252 0.2006 re
-f*
-1 g
-342.766 427.113 3.4122 0.2006 re
-f*
-0 g
-346.178 427.113 5.018 0.2006 re
-f*
-1 g
-351.196 427.113 8.6309 0.2006 re
-f*
-0.498 0 0.482 rg
-359.827 427.113 3.8137 0.2006 re
-f*
-1 g
-363.641 427.113 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 427.113 9.8353 0.2006 re
-f*
-1 g
-377.089 427.113 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-379.698 427.113 7.0251 0.2006 re
-f*
-1 g
-386.723 427.113 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-387.727 427.113 0.4014 0.2006 re
-f*
-1 g
-388.128 427.113 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 427.113 9.8352 0.2006 re
-f*
-1 g
-401.576 427.113 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-403.985 427.113 6.2223 0.2006 re
-f*
-1 g
-410.207 427.113 3.0107 0.2006 re
-f*
-0.498 0 0.482 rg
-413.218 427.113 3.613 0.2006 re
-f*
-0 g
-251.037 427.313 20.4734 0.2005 re
-f*
-1 g
-271.51 427.313 7.4266 0.2005 re
-f*
-0 g
-278.937 427.313 16.0575 0.2005 re
-f*
-1 g
-294.994 427.313 3.613 0.2005 re
-f*
-0 g
-298.607 427.313 0.2007 0.2005 re
-f*
-1 g
-298.808 427.313 1.0036 0.2005 re
-f*
-0 g
-299.812 427.313 4.0144 0.2005 re
-f*
-1 g
-303.826 427.313 3.613 0.2005 re
-f*
-0 g
-307.439 427.313 5.2187 0.2005 re
-f*
-1 g
-312.658 427.313 2.81 0.2005 re
-f*
-0 g
-315.468 427.313 7.6274 0.2005 re
-f*
-1 g
-323.095 427.313 2.6093 0.2005 re
-f*
-0 g
-325.704 427.313 7.2259 0.2005 re
-f*
-1 g
-332.93 427.313 2.8101 0.2005 re
-f*
-0 g
-335.74 427.313 7.0252 0.2005 re
-f*
-1 g
-342.766 427.313 3.2114 0.2005 re
-f*
-0 g
-345.977 427.313 5.2188 0.2005 re
-f*
-1 g
-351.196 427.313 8.6309 0.2005 re
-f*
-0.498 0 0.482 rg
-359.827 427.313 3.8137 0.2005 re
-f*
-1 g
-363.641 427.313 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 427.313 10.036 0.2005 re
-f*
-1 g
-377.289 427.313 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-379.698 427.313 6.8244 0.2005 re
-f*
-1 g
-386.522 427.313 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-387.526 427.313 0.6021 0.2005 re
-f*
-1 g
-388.128 427.313 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 427.313 10.036 0.2005 re
-f*
-1 g
-401.777 427.313 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-404.186 427.313 6.0216 0.2005 re
-f*
-1 g
-410.207 427.313 2.8101 0.2005 re
-f*
-0.498 0 0.482 rg
-413.017 427.313 3.8136 0.2005 re
-f*
-0 g
-251.037 427.514 20.4734 0.2006 re
-f*
-1 g
-271.51 427.514 7.4266 0.2006 re
-f*
-0 g
-278.937 427.514 16.0575 0.2006 re
-f*
-1 g
-294.994 427.514 3.613 0.2006 re
-f*
-0 g
-298.607 427.514 0.4014 0.2006 re
-f*
-1 g
-299.009 427.514 1.0036 0.2006 re
-f*
-0 g
-300.012 427.514 3.8137 0.2006 re
-f*
-1 g
-303.826 427.514 3.613 0.2006 re
-f*
-0 g
-307.439 427.514 5.4194 0.2006 re
-f*
-1 g
-312.858 427.514 2.8101 0.2006 re
-f*
-0 g
-315.669 427.514 7.2258 0.2006 re
-f*
-1 g
-322.894 427.514 2.6094 0.2006 re
-f*
-0 g
-325.504 427.514 7.4266 0.2006 re
-f*
-1 g
-332.93 427.514 3.0108 0.2006 re
-f*
-0 g
-335.941 427.514 6.8245 0.2006 re
-f*
-1 g
-342.766 427.514 3.2114 0.2006 re
-f*
-0 g
-345.977 427.514 5.018 0.2006 re
-f*
-1 g
-350.995 427.514 8.8317 0.2006 re
-f*
-0.498 0 0.482 rg
-359.827 427.514 3.8137 0.2006 re
-f*
-1 g
-363.641 427.514 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 427.514 10.2367 0.2006 re
-f*
-1 g
-377.49 427.514 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-379.899 427.514 6.4229 0.2006 re
-f*
-1 g
-386.322 427.514 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-387.325 427.514 0.8029 0.2006 re
-f*
-1 g
-388.128 427.514 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 427.514 10.2367 0.2006 re
-f*
-1 g
-401.978 427.514 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-404.386 427.514 5.6202 0.2006 re
-f*
-1 g
-410.007 427.514 2.81 0.2006 re
-f*
-0.498 0 0.482 rg
-412.817 427.514 3.8137 0.2006 re
-f*
-0 g
-251.238 427.714 20.2727 0.2005 re
-f*
-1 g
-271.51 427.714 7.4266 0.2005 re
-f*
-0 g
-278.937 427.714 16.0575 0.2005 re
-f*
-1 g
-294.994 427.714 3.613 0.2005 re
-f*
-0 g
-298.607 427.714 0.4014 0.2005 re
-f*
-1 g
-299.009 427.714 1.0036 0.2005 re
-f*
-0 g
-300.012 427.714 4.0144 0.2005 re
-f*
-1 g
-304.027 427.714 3.4123 0.2005 re
-f*
-0 g
-307.439 427.714 5.6201 0.2005 re
-f*
-1 g
-313.059 427.714 2.6094 0.2005 re
-f*
-0 g
-315.669 427.714 7.2258 0.2005 re
-f*
-1 g
-322.894 427.714 2.4087 0.2005 re
-f*
-0 g
-325.303 427.714 7.828 0.2005 re
-f*
-1 g
-333.131 427.714 2.8101 0.2005 re
-f*
-0 g
-335.941 427.714 6.8245 0.2005 re
-f*
-1 g
-342.766 427.714 3.0108 0.2005 re
-f*
-0 g
-345.776 427.714 5.018 0.2005 re
-f*
-1 g
-350.794 427.714 9.0323 0.2005 re
-f*
-0.498 0 0.482 rg
-359.827 427.714 3.8137 0.2005 re
-f*
-1 g
-363.641 427.714 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 427.714 10.4375 0.2005 re
-f*
-1 g
-377.691 427.714 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-380.099 427.714 6.0215 0.2005 re
-f*
-1 g
-386.121 427.714 1.2043 0.2005 re
-f*
-0.498 0 0.482 rg
-387.325 427.714 0.8029 0.2005 re
-f*
-1 g
-388.128 427.714 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 427.714 10.4374 0.2005 re
-f*
-1 g
-402.179 427.714 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-404.587 427.714 5.4195 0.2005 re
-f*
-1 g
-410.007 427.714 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-412.616 427.714 4.0144 0.2005 re
-f*
-0 g
-251.238 427.915 20.2727 0.2006 re
-f*
-1 g
-271.51 427.915 7.4266 0.2006 re
-f*
-0 g
-278.937 427.915 16.0575 0.2006 re
-f*
-1 g
-294.994 427.915 3.613 0.2006 re
-f*
-0 g
-298.607 427.915 0.6021 0.2006 re
-f*
-1 g
-299.209 427.915 1.0036 0.2006 re
-f*
-0 g
-300.213 427.915 3.8137 0.2006 re
-f*
-1 g
-304.027 427.915 3.4123 0.2006 re
-f*
-0 g
-307.439 427.915 5.8208 0.2006 re
-f*
-1 g
-313.26 427.915 2.6093 0.2006 re
-f*
-0 g
-315.869 427.915 7.0252 0.2006 re
-f*
-1 g
-322.894 427.915 2.208 0.2006 re
-f*
-0 g
-325.102 427.915 8.2294 0.2006 re
-f*
-1 g
-333.332 427.915 2.8101 0.2006 re
-f*
-0 g
-336.142 427.915 6.423 0.2006 re
-f*
-1 g
-342.565 427.915 3.0108 0.2006 re
-f*
-0 g
-345.576 427.915 5.2188 0.2006 re
-f*
-1 g
-350.794 427.915 8.8316 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 427.915 4.0144 0.2006 re
-f*
-1 g
-363.641 427.915 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 427.915 10.6382 0.2006 re
-f*
-1 g
-377.892 427.915 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-380.3 427.915 5.6201 0.2006 re
-f*
-1 g
-385.92 427.915 1.2043 0.2006 re
-f*
-0.498 0 0.482 rg
-387.125 427.915 1.0036 0.2006 re
-f*
-1 g
-388.128 427.915 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 427.915 10.8388 0.2006 re
-f*
-1 g
-402.58 427.915 2.208 0.2006 re
-f*
-0.498 0 0.482 rg
-404.788 427.915 5.018 0.2006 re
-f*
-1 g
-409.806 427.915 2.6093 0.2006 re
-f*
-0.498 0 0.482 rg
-412.415 427.915 4.2151 0.2006 re
-f*
-0 g
-251.238 428.115 20.2727 0.2006 re
-f*
-1 g
-271.51 428.115 7.4266 0.2006 re
-f*
-0 g
-278.937 428.115 16.0575 0.2006 re
-f*
-1 g
-294.994 428.115 3.613 0.2006 re
-f*
-0 g
-298.607 428.115 0.8029 0.2006 re
-f*
-1 g
-299.41 428.115 1.0036 0.2006 re
-f*
-0 g
-300.414 428.115 3.6129 0.2006 re
-f*
-1 g
-304.027 428.115 3.4123 0.2006 re
-f*
-0 g
-307.439 428.115 6.0215 0.2006 re
-f*
-1 g
-313.461 428.115 2.4086 0.2006 re
-f*
-0 g
-315.869 428.115 6.8246 0.2006 re
-f*
-1 g
-322.694 428.115 2.2078 0.2006 re
-f*
-0 g
-324.902 428.115 8.631 0.2006 re
-f*
-1 g
-333.533 428.115 2.6093 0.2006 re
-f*
-0 g
-336.142 428.115 6.423 0.2006 re
-f*
-1 g
-342.565 428.115 2.8101 0.2006 re
-f*
-0 g
-345.375 428.115 5.2187 0.2006 re
-f*
-1 g
-350.594 428.115 9.0324 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 428.115 4.0144 0.2006 re
-f*
-1 g
-363.641 428.115 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 428.115 11.0396 0.2006 re
-f*
-1 g
-378.293 428.115 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-380.501 428.115 5.018 0.2006 re
-f*
-1 g
-385.519 428.115 1.4051 0.2006 re
-f*
-0.498 0 0.482 rg
-386.924 428.115 1.2042 0.2006 re
-f*
-1 g
-388.128 428.115 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 428.115 11.0396 0.2006 re
-f*
-1 g
-402.781 428.115 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-404.989 428.115 4.6165 0.2006 re
-f*
-1 g
-409.605 428.115 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-412.014 428.115 4.6165 0.2006 re
-f*
-0 g
-251.238 428.316 20.2727 0.2005 re
-f*
-1 g
-271.51 428.316 7.4266 0.2005 re
-f*
-0 g
-278.937 428.316 16.0575 0.2005 re
-f*
-1 g
-294.994 428.316 3.613 0.2005 re
-f*
-0 g
-298.607 428.316 0.8029 0.2005 re
-f*
-1 g
-299.41 428.316 1.2043 0.2005 re
-f*
-0 g
-300.615 428.316 3.4122 0.2005 re
-f*
-1 g
-304.027 428.316 3.2115 0.2005 re
-f*
-0 g
-307.238 428.316 6.4231 0.2005 re
-f*
-1 g
-313.661 428.316 2.4086 0.2005 re
-f*
-0 g
-316.07 428.316 6.6238 0.2005 re
-f*
-1 g
-322.694 428.316 2.0071 0.2005 re
-f*
-0 g
-324.701 428.316 9.0324 0.2005 re
-f*
-1 g
-333.733 428.316 2.6094 0.2005 re
-f*
-0 g
-336.343 428.316 6.0215 0.2005 re
-f*
-1 g
-342.364 428.316 3.0108 0.2005 re
-f*
-0 g
-345.375 428.316 5.018 0.2005 re
-f*
-1 g
-350.393 428.316 9.2331 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 428.316 1.0036 0.2005 re
-f*
-1 g
-360.63 428.316 0.2007 0.2005 re
-f*
-0.498 0 0.482 rg
-360.83 428.316 2.8101 0.2005 re
-f*
-1 g
-363.641 428.316 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 428.316 11.2403 0.2005 re
-f*
-1 g
-378.494 428.316 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-380.902 428.316 4.215 0.2005 re
-f*
-1 g
-385.117 428.316 1.6058 0.2005 re
-f*
-0.498 0 0.482 rg
-386.723 428.316 1.405 0.2005 re
-f*
-1 g
-388.128 428.316 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 428.316 11.441 0.2005 re
-f*
-1 g
-403.182 428.316 2.2079 0.2005 re
-f*
-0.498 0 0.482 rg
-405.39 428.316 3.8137 0.2005 re
-f*
-1 g
-409.204 428.316 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-411.813 428.316 4.8173 0.2005 re
-f*
-0 g
-251.438 428.516 20.072 0.2006 re
-f*
-1 g
-271.51 428.516 7.4266 0.2006 re
-f*
-0 g
-278.937 428.516 16.0575 0.2006 re
-f*
-1 g
-294.994 428.516 3.613 0.2006 re
-f*
-0 g
-298.607 428.516 1.0036 0.2006 re
-f*
-1 g
-299.611 428.516 1.2043 0.2006 re
-f*
-0 g
-300.815 428.516 3.2115 0.2006 re
-f*
-1 g
-304.027 428.516 3.2115 0.2006 re
-f*
-0 g
-307.238 428.516 6.8245 0.2006 re
-f*
-1 g
-314.063 428.516 2.2079 0.2006 re
-f*
-0 g
-316.271 428.516 6.2223 0.2006 re
-f*
-1 g
-322.493 428.516 2.0072 0.2006 re
-f*
-0 g
-324.5 428.516 9.4338 0.2006 re
-f*
-1 g
-333.934 428.516 2.6094 0.2006 re
-f*
-0 g
-336.543 428.516 5.8208 0.2006 re
-f*
-1 g
-342.364 428.516 2.8101 0.2006 re
-f*
-0 g
-345.174 428.516 5.2187 0.2006 re
-f*
-1 g
-350.393 428.516 9.2331 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 428.516 1.0036 0.2006 re
-f*
-1 g
-360.63 428.516 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 428.516 11.6418 0.2006 re
-f*
-1 g
-378.895 428.516 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-381.304 428.516 3.4122 0.2006 re
-f*
-1 g
-384.716 428.516 1.6057 0.2006 re
-f*
-0.498 0 0.482 rg
-386.322 428.516 1.8065 0.2006 re
-f*
-1 g
-388.128 428.516 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 428.516 11.6417 0.2006 re
-f*
-1 g
-403.383 428.516 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-405.792 428.516 3.0108 0.2006 re
-f*
-1 g
-408.802 428.516 2.6093 0.2006 re
-f*
-0.498 0 0.482 rg
-411.412 428.516 5.018 0.2006 re
-f*
-0 g
-251.438 428.717 20.072 0.2005 re
-f*
-1 g
-271.51 428.717 7.4266 0.2005 re
-f*
-0 g
-278.937 428.717 16.0575 0.2005 re
-f*
-1 g
-294.994 428.717 3.613 0.2005 re
-f*
-0 g
-298.607 428.717 1.2043 0.2005 re
-f*
-1 g
-299.812 428.717 1.2043 0.2005 re
-f*
-0 g
-301.016 428.717 3.0108 0.2005 re
-f*
-1 g
-304.027 428.717 3.2115 0.2005 re
-f*
-0 g
-307.238 428.717 7.0252 0.2005 re
-f*
-1 g
-314.263 428.717 2.2079 0.2005 re
-f*
-0 g
-316.471 428.717 6.0216 0.2005 re
-f*
-1 g
-322.493 428.717 1.8065 0.2005 re
-f*
-0 g
-324.299 428.717 10.0359 0.2005 re
-f*
-1 g
-334.335 428.717 2.4087 0.2005 re
-f*
-0 g
-336.744 428.717 5.4194 0.2005 re
-f*
-1 g
-342.163 428.717 2.81 0.2005 re
-f*
-0 g
-344.973 428.717 5.2188 0.2005 re
-f*
-1 g
-350.192 428.717 9.4338 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 428.717 1.0036 0.2005 re
-f*
-1 g
-360.63 428.717 6.6237 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 428.717 12.0432 0.2005 re
-f*
-1 g
-379.297 428.717 2.81 0.2005 re
-f*
-0.498 0 0.482 rg
-382.107 428.717 1.8066 0.2005 re
-f*
-1 g
-383.913 428.717 2.2078 0.2005 re
-f*
-0.498 0 0.482 rg
-386.121 428.717 2.0072 0.2005 re
-f*
-1 g
-388.128 428.717 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 428.717 12.0432 0.2005 re
-f*
-1 g
-403.784 428.717 2.81 0.2005 re
-f*
-0.498 0 0.482 rg
-406.594 428.717 1.6058 0.2005 re
-f*
-1 g
-408.2 428.717 2.8101 0.2005 re
-f*
-0.498 0 0.482 rg
-411.01 428.717 5.4194 0.2005 re
-f*
-0 g
-251.438 428.918 20.072 0.2006 re
-f*
-1 g
-271.51 428.918 7.4266 0.2006 re
-f*
-0 g
-278.937 428.918 16.0575 0.2006 re
-f*
-1 g
-294.994 428.918 3.613 0.2006 re
-f*
-0 g
-298.607 428.918 1.405 0.2006 re
-f*
-1 g
-300.012 428.918 1.2043 0.2006 re
-f*
-0 g
-301.217 428.918 2.8101 0.2006 re
-f*
-1 g
-304.027 428.918 3.0108 0.2006 re
-f*
-0 g
-307.038 428.918 7.4266 0.2006 re
-f*
-1 g
-314.464 428.918 2.2079 0.2006 re
-f*
-0 g
-316.672 428.918 5.6202 0.2006 re
-f*
-1 g
-322.292 428.918 1.8065 0.2006 re
-f*
-0 g
-324.099 428.918 10.4374 0.2006 re
-f*
-1 g
-334.536 428.918 2.4086 0.2006 re
-f*
-0 g
-336.945 428.918 5.018 0.2006 re
-f*
-1 g
-341.963 428.918 2.8101 0.2006 re
-f*
-0 g
-344.773 428.918 5.2186 0.2006 re
-f*
-1 g
-349.991 428.918 9.6346 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 428.918 1.0036 0.2006 re
-f*
-1 g
-360.63 428.918 6.6237 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 428.918 12.4447 0.2006 re
-f*
-1 g
-379.698 428.918 6.0215 0.2006 re
-f*
-0.498 0 0.482 rg
-385.72 428.918 2.4086 0.2006 re
-f*
-1 g
-388.128 428.918 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 428.918 12.6453 0.2006 re
-f*
-1 g
-404.386 428.918 6.2223 0.2006 re
-f*
-0.498 0 0.482 rg
-410.609 428.918 5.8209 0.2006 re
-f*
-0 g
-251.438 429.118 20.2727 0.2006 re
-f*
-1 g
-271.711 429.118 7.2259 0.2006 re
-f*
-0 g
-278.937 429.118 16.0575 0.2006 re
-f*
-1 g
-294.994 429.118 3.613 0.2006 re
-f*
-0 g
-298.607 429.118 1.6057 0.2006 re
-f*
-1 g
-300.213 429.118 1.2044 0.2006 re
-f*
-0 g
-301.417 429.118 2.4086 0.2006 re
-f*
-1 g
-303.826 429.118 3.2115 0.2006 re
-f*
-0 g
-307.038 429.118 7.828 0.2006 re
-f*
-1 g
-314.866 429.118 2.0072 0.2006 re
-f*
-0 g
-316.873 429.118 5.2188 0.2006 re
-f*
-1 g
-322.092 429.118 1.8064 0.2006 re
-f*
-0 g
-323.898 429.118 10.8389 0.2006 re
-f*
-1 g
-334.737 429.118 2.4086 0.2006 re
-f*
-0 g
-337.146 429.118 4.6166 0.2006 re
-f*
-1 g
-341.762 429.118 2.6093 0.2006 re
-f*
-0 g
-344.371 429.118 5.4195 0.2006 re
-f*
-1 g
-349.791 429.118 9.8352 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 429.118 20.4734 0.2006 re
-f*
-1 g
-380.099 429.118 5.2187 0.2006 re
-f*
-0.498 0 0.482 rg
-385.318 429.118 2.81 0.2006 re
-f*
-1 g
-388.128 429.118 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 429.118 13.0468 0.2006 re
-f*
-1 g
-404.788 429.118 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-410.207 429.118 6.2223 0.2006 re
-f*
-0 g
-251.639 429.319 20.0719 0.2005 re
-f*
-1 g
-271.711 429.319 7.2259 0.2005 re
-f*
-0 g
-278.937 429.319 16.0575 0.2005 re
-f*
-1 g
-294.994 429.319 3.613 0.2005 re
-f*
-0 g
-298.607 429.319 1.8065 0.2005 re
-f*
-1 g
-300.414 429.319 1.405 0.2005 re
-f*
-0 g
-301.819 429.319 1.8065 0.2005 re
-f*
-1 g
-303.625 429.319 3.2115 0.2005 re
-f*
-0 g
-306.837 429.319 8.4302 0.2005 re
-f*
-1 g
-315.267 429.319 1.8065 0.2005 re
-f*
-0 g
-317.074 429.319 4.8172 0.2005 re
-f*
-1 g
-321.891 429.319 1.6058 0.2005 re
-f*
-0 g
-323.497 429.319 11.6417 0.2005 re
-f*
-1 g
-335.138 429.319 2.208 0.2005 re
-f*
-0 g
-337.346 429.319 4.2151 0.2005 re
-f*
-1 g
-341.561 429.319 2.6093 0.2005 re
-f*
-0 g
-344.171 429.319 5.6202 0.2005 re
-f*
-1 g
-349.791 429.319 9.8352 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 429.319 21.2763 0.2005 re
-f*
-1 g
-380.902 429.319 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-384.716 429.319 3.4122 0.2005 re
-f*
-1 g
-388.128 429.319 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 429.319 13.8497 0.2005 re
-f*
-1 g
-405.591 429.319 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-409.404 429.319 6.8244 0.2005 re
-f*
-0 g
-251.639 429.519 20.0719 0.2005 re
-f*
-1 g
-271.711 429.519 7.2259 0.2005 re
-f*
-0 g
-278.937 429.519 13.0467 0.2005 re
-f*
-1 g
-291.984 429.519 0.2008 0.2005 re
-f*
-0 g
-292.184 429.519 2.81 0.2005 re
-f*
-1 g
-294.994 429.519 3.613 0.2005 re
-f*
-0 g
-298.607 429.519 2.0072 0.2005 re
-f*
-1 g
-300.615 429.519 1.6057 0.2005 re
-f*
-0 g
-302.22 429.519 1.2044 0.2005 re
-f*
-1 g
-303.425 429.519 3.2115 0.2005 re
-f*
-0 g
-306.636 429.519 9.0324 0.2005 re
-f*
-1 g
-315.669 429.519 1.8064 0.2005 re
-f*
-0 g
-317.475 429.519 4.2152 0.2005 re
-f*
-1 g
-321.69 429.519 1.405 0.2005 re
-f*
-0 g
-323.095 429.519 12.2439 0.2005 re
-f*
-1 g
-335.339 429.519 2.4086 0.2005 re
-f*
-0 g
-337.748 429.519 3.6129 0.2005 re
-f*
-1 g
-341.361 429.519 2.4087 0.2005 re
-f*
-0 g
-343.769 429.519 5.8208 0.2005 re
-f*
-1 g
-349.59 429.519 10.036 0.2005 re
-f*
-0.498 0 0.482 rg
-359.626 429.519 22.4805 0.2005 re
-f*
-1 g
-382.107 429.519 1.4051 0.2005 re
-f*
-0.498 0 0.482 rg
-383.512 429.519 4.6165 0.2005 re
-f*
-1 g
-388.128 429.519 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 429.519 15.054 0.2005 re
-f*
-1 g
-406.795 429.519 1.6057 0.2005 re
-f*
-0.498 0 0.482 rg
-408.401 429.519 7.828 0.2005 re
-f*
-0 g
-251.639 429.72 20.0719 0.2006 re
-f*
-1 g
-271.711 429.72 7.2259 0.2006 re
-f*
-0 g
-278.937 429.72 13.0467 0.2006 re
-f*
-1 g
-291.984 429.72 6.6238 0.2006 re
-f*
-0 g
-298.607 429.72 2.2079 0.2006 re
-f*
-1 g
-300.815 429.72 5.6202 0.2006 re
-f*
-0 g
-306.435 429.72 9.6345 0.2006 re
-f*
-1 g
-316.07 429.72 1.8064 0.2006 re
-f*
-0 g
-317.876 429.72 3.4123 0.2006 re
-f*
-1 g
-321.289 429.72 1.4051 0.2006 re
-f*
-0 g
-322.694 429.72 13.0467 0.2006 re
-f*
-1 g
-335.74 429.72 2.6093 0.2006 re
-f*
-0 g
-338.35 429.72 2.4087 0.2006 re
-f*
-1 g
-340.758 429.72 2.81 0.2006 re
-f*
-0 g
-343.568 429.72 5.8209 0.2006 re
-f*
-1 g
-349.389 429.72 10.2367 0.2006 re
-f*
-0.498 0 0.482 rg
-359.626 429.72 28.5021 0.2006 re
-f*
-1 g
-388.128 429.72 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 429.72 24.4877 0.2006 re
-f*
-0 g
-251.639 429.92 20.0719 0.2006 re
-f*
-1 g
-271.711 429.92 7.2259 0.2006 re
-f*
-0 g
-278.937 429.92 13.0467 0.2006 re
-f*
-1 g
-291.984 429.92 6.6238 0.2006 re
-f*
-0 g
-298.607 429.92 2.6093 0.2006 re
-f*
-1 g
-301.217 429.92 5.018 0.2006 re
-f*
-0 g
-306.235 429.92 10.4374 0.2006 re
-f*
-1 g
-316.672 429.92 2.0073 0.2006 re
-f*
-0 g
-318.679 429.92 1.8064 0.2006 re
-f*
-1 g
-320.486 429.92 1.6058 0.2006 re
-f*
-0 g
-322.092 429.92 14.0503 0.2006 re
-f*
-1 g
-336.142 429.92 7.0252 0.2006 re
-f*
-0 g
-343.167 429.92 6.0216 0.2006 re
-f*
-1 g
-349.189 429.92 10.2367 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 429.92 28.7028 0.2006 re
-f*
-1 g
-388.128 429.92 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 429.92 24.2871 0.2006 re
-f*
-0 g
-251.84 430.121 19.8712 0.2006 re
-f*
-1 g
-271.711 430.121 7.2259 0.2006 re
-f*
-0 g
-278.937 430.121 13.0467 0.2006 re
-f*
-1 g
-291.984 430.121 6.6238 0.2006 re
-f*
-0 g
-298.607 430.121 2.8101 0.2006 re
-f*
-1 g
-301.417 430.121 4.4158 0.2006 re
-f*
-0 g
-305.833 430.121 11.6417 0.2006 re
-f*
-1 g
-317.475 430.121 4.0144 0.2006 re
-f*
-0 g
-321.489 430.121 15.2547 0.2006 re
-f*
-1 g
-336.744 430.121 6.0216 0.2006 re
-f*
-0 g
-342.766 430.121 6.2222 0.2006 re
-f*
-1 g
-348.988 430.121 10.4375 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 430.121 28.7028 0.2006 re
-f*
-1 g
-388.128 430.121 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 430.121 24.2871 0.2006 re
-f*
-0 g
-251.84 430.322 19.8712 0.2005 re
-f*
-1 g
-271.711 430.322 7.2259 0.2005 re
-f*
-0 g
-278.937 430.322 23.0827 0.2005 re
-f*
-1 g
-302.02 430.322 3.4123 0.2005 re
-f*
-0 g
-305.432 430.322 13.4481 0.2005 re
-f*
-1 g
-318.88 430.322 1.6058 0.2005 re
-f*
-0 g
-320.486 430.322 16.8605 0.2005 re
-f*
-1 g
-337.346 430.322 4.8172 0.2005 re
-f*
-0 g
-342.163 430.322 6.6238 0.2005 re
-f*
-1 g
-348.787 430.322 10.6381 0.2005 re
-f*
-0.498 0 0.482 rg
-359.425 430.322 28.7028 0.2005 re
-f*
-1 g
-388.128 430.322 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 430.322 24.2871 0.2005 re
-f*
-0 g
-251.84 430.522 19.8712 0.2006 re
-f*
-1 g
-271.711 430.522 7.2259 0.2006 re
-f*
-0 g
-278.937 430.522 23.6849 0.2006 re
-f*
-1 g
-302.622 430.522 2.2079 0.2006 re
-f*
-0 g
-304.83 430.522 33.3194 0.2006 re
-f*
-1 g
-338.149 430.522 3.2115 0.2006 re
-f*
-0 g
-341.361 430.522 7.2259 0.2006 re
-f*
-1 g
-348.586 430.522 10.8389 0.2006 re
-f*
-0.498 0 0.482 rg
-359.425 430.522 28.7028 0.2006 re
-f*
-1 g
-388.128 430.522 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 430.522 24.0863 0.2006 re
-f*
-0 g
-252.04 430.723 19.8712 0.2005 re
-f*
-1 g
-271.912 430.723 7.0252 0.2005 re
-f*
-0 g
-278.937 430.723 69.4489 0.2005 re
-f*
-1 g
-348.386 430.723 11.0396 0.2005 re
-f*
-0.498 0 0.482 rg
-359.425 430.723 28.7028 0.2005 re
-f*
-1 g
-388.128 430.723 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 430.723 24.0863 0.2005 re
-f*
-0 g
-252.04 430.923 19.8712 0.2006 re
-f*
-1 g
-271.912 430.923 7.0252 0.2006 re
-f*
-0 g
-278.937 430.923 69.2482 0.2006 re
-f*
-1 g
-348.185 430.923 11.0395 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 430.923 28.9036 0.2006 re
-f*
-1 g
-388.128 430.923 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 430.923 24.0863 0.2006 re
-f*
-0 g
-252.04 431.124 19.8712 0.2006 re
-f*
-1 g
-271.912 431.124 7.0252 0.2006 re
-f*
-0 g
-278.937 431.124 69.0474 0.2006 re
-f*
-1 g
-347.984 431.124 11.2403 0.2006 re
-f*
-0.498 0 0.482 rg
-359.225 431.124 28.9036 0.2006 re
-f*
-1 g
-388.128 431.124 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 431.124 23.8856 0.2006 re
-f*
-0 g
-252.241 431.324 19.6705 0.2005 re
-f*
-1 g
-271.912 431.324 7.0252 0.2005 re
-f*
-0 g
-278.937 431.324 68.8468 0.2005 re
-f*
-1 g
-347.784 431.324 11.4409 0.2005 re
-f*
-0.498 0 0.482 rg
-359.225 431.324 28.9036 0.2005 re
-f*
-1 g
-388.128 431.324 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 431.324 23.8856 0.2005 re
-f*
-0 g
-252.241 431.525 19.6705 0.2005 re
-f*
-1 g
-271.912 431.525 7.0252 0.2005 re
-f*
-0 g
-278.937 431.525 68.4453 0.2005 re
-f*
-1 g
-347.382 431.525 11.8424 0.2005 re
-f*
-0.498 0 0.482 rg
-359.225 431.525 28.9036 0.2005 re
-f*
-1 g
-388.128 431.525 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 431.525 23.8856 0.2005 re
-f*
-0 g
-252.241 431.725 19.6705 0.2006 re
-f*
-1 g
-271.912 431.725 7.0252 0.2006 re
-f*
-0 g
-278.937 431.725 68.2446 0.2006 re
-f*
-1 g
-347.181 431.725 11.8424 0.2006 re
-f*
-0.498 0 0.482 rg
-359.024 431.725 29.1043 0.2006 re
-f*
-1 g
-388.128 431.725 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 431.725 23.6849 0.2006 re
-f*
-0 g
-252.442 431.926 19.6705 0.2006 re
-f*
-1 g
-272.112 431.926 6.8245 0.2006 re
-f*
-0 g
-278.937 431.926 68.0438 0.2006 re
-f*
-1 g
-346.981 431.926 12.0432 0.2006 re
-f*
-0.498 0 0.482 rg
-359.024 431.926 29.1043 0.2006 re
-f*
-1 g
-388.128 431.926 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 431.926 23.6849 0.2006 re
-f*
-0 g
-252.442 432.127 19.6705 0.2005 re
-f*
-1 g
-272.112 432.127 6.8245 0.2005 re
-f*
-0 g
-278.937 432.127 67.6424 0.2005 re
-f*
-1 g
-346.579 432.127 12.4446 0.2005 re
-f*
-0.498 0 0.482 rg
-359.024 432.127 29.1043 0.2005 re
-f*
-1 g
-388.128 432.127 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 432.127 23.4841 0.2005 re
-f*
-0 g
-252.643 432.327 19.4697 0.2005 re
-f*
-1 g
-272.112 432.327 6.8245 0.2005 re
-f*
-0 g
-278.937 432.327 67.4417 0.2005 re
-f*
-1 g
-346.379 432.327 12.6453 0.2005 re
-f*
-0.498 0 0.482 rg
-359.024 432.327 29.1043 0.2005 re
-f*
-1 g
-388.128 432.327 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 432.327 23.4841 0.2005 re
-f*
-0 g
-252.643 432.528 19.4697 0.2006 re
-f*
-1 g
-272.112 432.528 6.8245 0.2006 re
-f*
-0 g
-278.937 432.528 67.0402 0.2006 re
-f*
-1 g
-345.977 432.528 12.8461 0.2006 re
-f*
-0.498 0 0.482 rg
-358.823 432.528 29.305 0.2006 re
-f*
-1 g
-388.128 432.528 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 432.528 23.4841 0.2006 re
-f*
-0 g
-252.643 432.728 19.6705 0.2006 re
-f*
-1 g
-272.313 432.728 6.6237 0.2006 re
-f*
-0 g
-278.937 432.728 66.8396 0.2006 re
-f*
-1 g
-345.776 432.728 13.0467 0.2006 re
-f*
-0.498 0 0.482 rg
-358.823 432.728 29.305 0.2006 re
-f*
-1 g
-388.128 432.728 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 432.728 23.2835 0.2006 re
-f*
-0 g
-252.843 432.929 19.4698 0.2006 re
-f*
-1 g
-272.313 432.929 6.6237 0.2006 re
-f*
-0 g
-278.937 432.929 66.4381 0.2006 re
-f*
-1 g
-345.375 432.929 13.4482 0.2006 re
-f*
-0.498 0 0.482 rg
-358.823 432.929 29.305 0.2006 re
-f*
-1 g
-388.128 432.929 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 432.929 23.2835 0.2006 re
-f*
-0 g
-252.843 433.129 19.4698 0.2006 re
-f*
-1 g
-272.313 433.129 6.6237 0.2006 re
-f*
-0 g
-278.937 433.129 66.0366 0.2006 re
-f*
-1 g
-344.973 433.129 13.649 0.2006 re
-f*
-0.498 0 0.482 rg
-358.623 433.129 29.5057 0.2006 re
-f*
-1 g
-388.128 433.129 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 433.129 23.2835 0.2006 re
-f*
-0 g
-253.044 433.33 19.2691 0.2005 re
-f*
-1 g
-272.313 433.33 6.8244 0.2005 re
-f*
-0 g
-279.138 433.33 65.4345 0.2005 re
-f*
-1 g
-344.572 433.33 14.0504 0.2005 re
-f*
-0.498 0 0.482 rg
-358.623 433.33 29.5057 0.2005 re
-f*
-1 g
-388.128 433.33 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 433.33 23.0827 0.2005 re
-f*
-0 g
-253.044 433.53 19.4698 0.2005 re
-f*
-1 g
-272.514 433.53 6.6237 0.2005 re
-f*
-0 g
-279.138 433.53 65.0331 0.2005 re
-f*
-1 g
-344.171 433.53 14.2511 0.2005 re
-f*
-0.498 0 0.482 rg
-358.422 433.53 29.7064 0.2005 re
-f*
-1 g
-388.128 433.53 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 433.53 23.0827 0.2005 re
-f*
-0 g
-253.044 433.731 19.4698 0.2006 re
-f*
-1 g
-272.514 433.731 6.6237 0.2006 re
-f*
-0 g
-279.138 433.731 64.6317 0.2006 re
-f*
-1 g
-343.769 433.731 14.6525 0.2006 re
-f*
-0.498 0 0.482 rg
-358.422 433.731 29.7064 0.2006 re
-f*
-1 g
-388.128 433.731 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 433.731 22.882 0.2006 re
-f*
-0 g
-253.245 433.932 19.2691 0.2006 re
-f*
-1 g
-272.514 433.932 6.6237 0.2006 re
-f*
-0 g
-279.138 433.932 64.2302 0.2006 re
-f*
-1 g
-343.368 433.932 14.8532 0.2006 re
-f*
-0.498 0 0.482 rg
-358.221 433.932 29.9072 0.2006 re
-f*
-1 g
-388.128 433.932 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 433.932 22.882 0.2006 re
-f*
-0 g
-253.245 434.132 19.2691 0.2005 re
-f*
-1 g
-272.514 434.132 6.6237 0.2005 re
-f*
-0 g
-279.138 434.132 63.8288 0.2005 re
-f*
-1 g
-342.966 434.132 15.2546 0.2005 re
-f*
-0.498 0 0.482 rg
-358.221 434.132 29.9072 0.2005 re
-f*
-1 g
-388.128 434.132 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 434.132 22.6813 0.2005 re
-f*
-0 g
-253.445 434.333 19.2691 0.2006 re
-f*
-1 g
-272.715 434.333 6.423 0.2006 re
-f*
-0 g
-279.138 434.333 15.4554 0.2006 re
-f*
-1 g
-294.593 434.333 2.4086 0.2006 re
-f*
-0 g
-297.002 434.333 45.3626 0.2006 re
-f*
-1 g
-342.364 434.333 15.6561 0.2006 re
-f*
-0.498 0 0.482 rg
-358.02 434.333 30.1079 0.2006 re
-f*
-1 g
-388.128 434.333 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 434.333 22.6813 0.2006 re
-f*
-0 g
-253.445 434.533 19.2691 0.2005 re
-f*
-1 g
-272.715 434.533 6.423 0.2005 re
-f*
-0 g
-279.138 434.533 14.6525 0.2005 re
-f*
-1 g
-293.79 434.533 3.8137 0.2005 re
-f*
-0 g
-297.604 434.533 44.359 0.2005 re
-f*
-1 g
-341.963 434.533 16.0575 0.2005 re
-f*
-0.498 0 0.482 rg
-358.02 434.533 30.1079 0.2005 re
-f*
-1 g
-388.128 434.533 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 434.533 22.4805 0.2005 re
-f*
-0 g
-253.646 434.734 19.0683 0.2006 re
-f*
-1 g
-272.715 434.734 6.423 0.2006 re
-f*
-0 g
-279.138 434.734 14.0504 0.2006 re
-f*
-1 g
-293.188 434.734 4.8172 0.2006 re
-f*
-0 g
-298.005 434.734 43.3554 0.2006 re
-f*
-1 g
-341.361 434.734 16.459 0.2006 re
-f*
-0.498 0 0.482 rg
-357.82 434.734 30.3086 0.2006 re
-f*
-1 g
-388.128 434.734 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 434.734 22.4805 0.2006 re
-f*
-0 g
-253.646 434.934 19.269 0.2005 re
-f*
-1 g
-272.915 434.934 6.2223 0.2005 re
-f*
-0 g
-279.138 434.934 13.6489 0.2005 re
-f*
-1 g
-292.786 434.934 5.6202 0.2005 re
-f*
-0 g
-298.407 434.934 42.3518 0.2005 re
-f*
-1 g
-340.758 434.934 17.0611 0.2005 re
-f*
-0.498 0 0.482 rg
-357.82 434.934 30.3086 0.2005 re
-f*
-1 g
-388.128 434.934 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 434.934 22.4805 0.2005 re
-f*
-0 g
-253.847 435.135 19.0683 0.2006 re
-f*
-1 g
-272.915 435.135 6.2223 0.2006 re
-f*
-0 g
-279.138 435.135 13.2475 0.2006 re
-f*
-1 g
-292.385 435.135 6.2223 0.2006 re
-f*
-0 g
-298.607 435.135 41.5489 0.2006 re
-f*
-1 g
-340.156 435.135 17.4626 0.2006 re
-f*
-0.498 0 0.482 rg
-357.619 435.135 30.5093 0.2006 re
-f*
-1 g
-388.128 435.135 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 435.135 22.2799 0.2006 re
-f*
-0 g
-253.847 435.335 19.0683 0.2005 re
-f*
-1 g
-272.915 435.335 6.2223 0.2005 re
-f*
-0 g
-279.138 435.335 13.0468 0.2005 re
-f*
-1 g
-292.184 435.335 6.6237 0.2005 re
-f*
-0 g
-298.808 435.335 40.7461 0.2005 re
-f*
-1 g
-339.554 435.335 17.864 0.2005 re
-f*
-0.498 0 0.482 rg
-357.418 435.335 30.71 0.2005 re
-f*
-1 g
-388.128 435.335 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 435.335 22.2799 0.2005 re
-f*
-0 g
-254.048 435.536 19.0683 0.2006 re
-f*
-1 g
-273.116 435.536 6.0216 0.2006 re
-f*
-0 g
-279.138 435.536 13.0468 0.2006 re
-f*
-1 g
-292.184 435.536 6.8244 0.2006 re
-f*
-0 g
-299.009 435.536 39.7425 0.2006 re
-f*
-1 g
-338.751 435.536 18.6669 0.2006 re
-f*
-0.498 0 0.482 rg
-357.418 435.536 30.71 0.2006 re
-f*
-1 g
-388.128 435.536 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 435.536 22.0791 0.2006 re
-f*
-0 g
-254.048 435.737 19.0683 0.2006 re
-f*
-1 g
-273.116 435.737 6.0216 0.2006 re
-f*
-0 g
-279.138 435.737 12.846 0.2006 re
-f*
-1 g
-291.984 435.737 7.0252 0.2006 re
-f*
-0 g
-299.009 435.737 39.1403 0.2006 re
-f*
-1 g
-338.149 435.737 19.0683 0.2006 re
-f*
-0.498 0 0.482 rg
-357.217 435.737 30.9108 0.2006 re
-f*
-1 g
-388.128 435.737 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 435.737 22.0791 0.2006 re
-f*
-0 g
-254.248 435.937 19.0683 0.2006 re
-f*
-1 g
-273.317 435.937 5.8209 0.2006 re
-f*
-0 g
-279.138 435.937 12.6453 0.2006 re
-f*
-1 g
-291.783 435.937 7.4266 0.2006 re
-f*
-0 g
-299.209 435.937 38.3375 0.2006 re
-f*
-1 g
-337.547 435.937 19.4697 0.2006 re
-f*
-0.498 0 0.482 rg
-357.017 435.937 31.1115 0.2006 re
-f*
-1 g
-388.128 435.937 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 435.937 21.8784 0.2006 re
-f*
-0 g
-254.248 436.138 19.0683 0.2005 re
-f*
-1 g
-273.317 436.138 6.0216 0.2005 re
-f*
-0 g
-279.338 436.138 12.4446 0.2005 re
-f*
-1 g
-291.783 436.138 7.4266 0.2005 re
-f*
-0 g
-299.209 436.138 37.7353 0.2005 re
-f*
-1 g
-336.945 436.138 20.0719 0.2005 re
-f*
-0.498 0 0.482 rg
-357.017 436.138 7.4267 0.2005 re
-f*
-1 g
-364.443 436.138 1.8064 0.2005 re
-f*
-0.498 0 0.482 rg
-366.25 436.138 21.8784 0.2005 re
-f*
-1 g
-388.128 436.138 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 436.138 21.8784 0.2005 re
-f*
-0 g
-254.449 436.338 19.0684 0.2005 re
-f*
-1 g
-273.517 436.338 5.8208 0.2005 re
-f*
-0 g
-279.338 436.338 12.4446 0.2005 re
-f*
-1 g
-291.783 436.338 7.6274 0.2005 re
-f*
-0 g
-299.41 436.338 36.9324 0.2005 re
-f*
-1 g
-336.343 436.338 20.4733 0.2005 re
-f*
-0.498 0 0.482 rg
-356.816 436.338 7.2259 0.2005 re
-f*
-1 g
-364.042 436.338 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-366.651 436.338 21.4769 0.2005 re
-f*
-1 g
-388.128 436.338 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 436.338 21.6777 0.2005 re
-f*
-0 g
-254.449 436.539 19.0684 0.2006 re
-f*
-1 g
-273.517 436.539 5.8208 0.2006 re
-f*
-0 g
-279.338 436.539 12.4446 0.2006 re
-f*
-1 g
-291.783 436.539 7.8281 0.2006 re
-f*
-0 g
-299.611 436.539 35.9288 0.2006 re
-f*
-1 g
-335.54 436.539 21.0755 0.2006 re
-f*
-0.498 0 0.482 rg
-356.615 436.539 7.2259 0.2006 re
-f*
-1 g
-363.841 436.539 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-366.852 436.539 21.2762 0.2006 re
-f*
-1 g
-388.128 436.539 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 436.539 21.6777 0.2006 re
-f*
-0 g
-254.65 436.739 19.0684 0.2006 re
-f*
-1 g
-273.718 436.739 5.6201 0.2006 re
-f*
-0 g
-279.338 436.739 12.4446 0.2006 re
-f*
-1 g
-291.783 436.739 7.8281 0.2006 re
-f*
-0 g
-299.611 436.739 35.3266 0.2006 re
-f*
-1 g
-334.938 436.739 21.477 0.2006 re
-f*
-0.498 0 0.482 rg
-356.415 436.739 7.2259 0.2006 re
-f*
-1 g
-363.641 436.739 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-367.053 436.739 21.0755 0.2006 re
-f*
-1 g
-388.128 436.739 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 436.739 21.4769 0.2006 re
-f*
-0 g
-254.65 436.94 19.0684 0.2006 re
-f*
-1 g
-273.718 436.94 5.6201 0.2006 re
-f*
-0 g
-279.338 436.94 12.4446 0.2006 re
-f*
-1 g
-291.783 436.94 7.8281 0.2006 re
-f*
-0 g
-299.611 436.94 34.7244 0.2006 re
-f*
-1 g
-334.335 436.94 22.0792 0.2006 re
-f*
-0.498 0 0.482 rg
-356.415 436.94 7.0252 0.2006 re
-f*
-1 g
-363.44 436.94 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-367.253 436.94 20.8748 0.2006 re
-f*
-1 g
-388.128 436.94 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 436.94 21.2763 0.2006 re
-f*
-0 g
-254.851 437.141 19.0684 0.2005 re
-f*
-1 g
-273.919 437.141 5.4194 0.2005 re
-f*
-0 g
-279.338 437.141 12.4446 0.2005 re
-f*
-1 g
-291.783 437.141 8.0288 0.2005 re
-f*
-0 g
-299.812 437.141 33.9216 0.2005 re
-f*
-1 g
-333.733 437.141 22.4805 0.2005 re
-f*
-0.498 0 0.482 rg
-356.214 437.141 7.226 0.2005 re
-f*
-1 g
-363.44 437.141 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 437.141 20.8748 0.2005 re
-f*
-1 g
-388.128 437.141 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 437.141 21.2763 0.2005 re
-f*
-0 g
-254.851 437.341 19.0684 0.2005 re
-f*
-1 g
-273.919 437.341 5.4194 0.2005 re
-f*
-0 g
-279.338 437.341 12.4446 0.2005 re
-f*
-1 g
-291.783 437.341 8.0288 0.2005 re
-f*
-0 g
-299.812 437.341 33.3194 0.2005 re
-f*
-1 g
-333.131 437.341 22.882 0.2005 re
-f*
-0.498 0 0.482 rg
-356.013 437.341 7.2259 0.2005 re
-f*
-1 g
-363.239 437.341 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-367.454 437.341 20.674 0.2005 re
-f*
-1 g
-388.128 437.341 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 437.341 21.0755 0.2005 re
-f*
-0 g
-255.051 437.542 19.0683 0.2006 re
-f*
-1 g
-274.12 437.542 5.4195 0.2006 re
-f*
-0 g
-279.539 437.542 12.2438 0.2006 re
-f*
-1 g
-291.783 437.542 8.0288 0.2006 re
-f*
-0 g
-299.812 437.542 32.5165 0.2006 re
-f*
-1 g
-332.328 437.542 23.4842 0.2006 re
-f*
-0.498 0 0.482 rg
-355.812 437.542 7.4266 0.2006 re
-f*
-1 g
-363.239 437.542 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-367.454 437.542 20.674 0.2006 re
-f*
-1 g
-388.128 437.542 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 437.542 21.0755 0.2006 re
-f*
-0 g
-255.252 437.742 18.8676 0.2006 re
-f*
-1 g
-274.12 437.742 5.4195 0.2006 re
-f*
-0 g
-279.539 437.742 12.2438 0.2006 re
-f*
-1 g
-291.783 437.742 8.0288 0.2006 re
-f*
-0 g
-299.812 437.742 31.9144 0.2006 re
-f*
-1 g
-331.726 437.742 23.8856 0.2006 re
-f*
-0.498 0 0.482 rg
-355.612 437.742 7.6273 0.2006 re
-f*
-1 g
-363.239 437.742 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-367.454 437.742 20.674 0.2006 re
-f*
-1 g
-388.128 437.742 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 437.742 20.8748 0.2006 re
-f*
-0 g
-255.252 437.943 19.0683 0.2005 re
-f*
-1 g
-274.32 437.943 5.2188 0.2005 re
-f*
-0 g
-279.539 437.943 12.2438 0.2005 re
-f*
-1 g
-291.783 437.943 8.2295 0.2005 re
-f*
-0 g
-300.012 437.943 31.1115 0.2005 re
-f*
-1 g
-331.124 437.943 24.2871 0.2005 re
-f*
-0.498 0 0.482 rg
-355.411 437.943 7.828 0.2005 re
-f*
-1 g
-363.239 437.943 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-367.454 437.943 20.674 0.2005 re
-f*
-1 g
-388.128 437.943 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 437.943 20.8748 0.2005 re
-f*
-0 g
-255.453 438.143 19.0684 0.2006 re
-f*
-1 g
-274.521 438.143 5.018 0.2006 re
-f*
-0 g
-279.539 438.143 12.2438 0.2006 re
-f*
-1 g
-291.783 438.143 8.2295 0.2006 re
-f*
-0 g
-300.012 438.143 30.5094 0.2006 re
-f*
-1 g
-330.522 438.143 24.6885 0.2006 re
-f*
-0.498 0 0.482 rg
-355.21 438.143 8.0287 0.2006 re
-f*
-1 g
-363.239 438.143 4.4159 0.2006 re
-f*
-0.498 0 0.482 rg
-367.655 438.143 20.4733 0.2006 re
-f*
-1 g
-388.128 438.143 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 438.143 20.6741 0.2006 re
-f*
-0 g
-255.453 438.344 19.0684 0.2005 re
-f*
-1 g
-274.521 438.344 5.2186 0.2005 re
-f*
-0 g
-279.74 438.344 12.0432 0.2005 re
-f*
-1 g
-291.783 438.344 8.2295 0.2005 re
-f*
-0 g
-300.012 438.344 29.9072 0.2005 re
-f*
-1 g
-329.92 438.344 25.2907 0.2005 re
-f*
-0.498 0 0.482 rg
-355.21 438.344 8.0287 0.2005 re
-f*
-1 g
-363.239 438.344 4.4159 0.2005 re
-f*
-0.498 0 0.482 rg
-367.655 438.344 20.4733 0.2005 re
-f*
-1 g
-388.128 438.344 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 438.344 20.6741 0.2005 re
-f*
-0 g
-255.653 438.544 19.0683 0.2006 re
-f*
-1 g
-274.722 438.544 5.018 0.2006 re
-f*
-0 g
-279.74 438.544 12.2439 0.2006 re
-f*
-1 g
-291.984 438.544 8.0288 0.2006 re
-f*
-0 g
-300.012 438.544 29.3051 0.2006 re
-f*
-1 g
-329.317 438.544 25.692 0.2006 re
-f*
-0.498 0 0.482 rg
-355.01 438.544 8.2295 0.2006 re
-f*
-1 g
-363.239 438.544 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-367.454 438.544 20.674 0.2006 re
-f*
-1 g
-388.128 438.544 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 438.544 20.4734 0.2006 re
-f*
-0 g
-255.653 438.745 19.2691 0.2006 re
-f*
-1 g
-274.922 438.745 4.8172 0.2006 re
-f*
-0 g
-279.74 438.745 12.2439 0.2006 re
-f*
-1 g
-291.984 438.745 8.0288 0.2006 re
-f*
-0 g
-300.012 438.745 28.7029 0.2006 re
-f*
-1 g
-328.715 438.745 26.0935 0.2006 re
-f*
-0.498 0 0.482 rg
-354.809 438.745 8.4302 0.2006 re
-f*
-1 g
-363.239 438.745 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-367.454 438.745 20.674 0.2006 re
-f*
-1 g
-388.128 438.745 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 438.745 20.2727 0.2006 re
-f*
-0 g
-255.854 438.946 19.0684 0.2005 re
-f*
-1 g
-274.922 438.946 4.8172 0.2005 re
-f*
-0 g
-279.74 438.946 12.4447 0.2005 re
-f*
-1 g
-292.184 438.946 7.828 0.2005 re
-f*
-0 g
-300.012 438.946 28.1007 0.2005 re
-f*
-1 g
-328.113 438.946 26.2943 0.2005 re
-f*
-0.498 0 0.482 rg
-354.407 438.946 8.8316 0.2005 re
-f*
-1 g
-363.239 438.946 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-367.454 438.946 20.674 0.2005 re
-f*
-1 g
-388.128 438.946 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 438.946 20.2727 0.2005 re
-f*
-0 g
-256.055 439.146 19.0683 0.2006 re
-f*
-1 g
-275.123 439.146 4.8173 0.2006 re
-f*
-0 g
-279.94 439.146 12.2439 0.2006 re
-f*
-1 g
-292.184 439.146 7.828 0.2006 re
-f*
-0 g
-300.012 439.146 27.4986 0.2006 re
-f*
-1 g
-327.511 439.146 26.6957 0.2006 re
-f*
-0.498 0 0.482 rg
-354.207 439.146 9.0323 0.2006 re
-f*
-1 g
-363.239 439.146 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-367.454 439.146 20.674 0.2006 re
-f*
-1 g
-388.128 439.146 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 439.146 20.0719 0.2006 re
-f*
-0 g
-256.055 439.347 19.269 0.2005 re
-f*
-1 g
-275.324 439.347 4.6166 0.2005 re
-f*
-0 g
-279.94 439.347 12.4446 0.2005 re
-f*
-1 g
-292.385 439.347 7.6273 0.2005 re
-f*
-0 g
-300.012 439.347 26.8964 0.2005 re
-f*
-1 g
-326.909 439.347 27.0971 0.2005 re
-f*
-0.498 0 0.482 rg
-354.006 439.347 9.4339 0.2005 re
-f*
-1 g
-363.44 439.347 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-367.253 439.347 20.8748 0.2005 re
-f*
-1 g
-388.128 439.347 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 439.347 19.8712 0.2005 re
-f*
-0 g
-256.256 439.547 19.2691 0.2006 re
-f*
-1 g
-275.525 439.547 4.4158 0.2006 re
-f*
-0 g
-279.94 439.547 12.4446 0.2006 re
-f*
-1 g
-292.385 439.547 7.6273 0.2006 re
-f*
-0 g
-300.012 439.547 26.495 0.2006 re
-f*
-1 g
-326.507 439.547 27.2979 0.2006 re
-f*
-0.498 0 0.482 rg
-353.805 439.547 9.8352 0.2006 re
-f*
-1 g
-363.641 439.547 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-367.053 439.547 21.0755 0.2006 re
-f*
-1 g
-388.128 439.547 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 439.547 19.8712 0.2006 re
-f*
-0 g
-256.456 439.748 19.0684 0.2006 re
-f*
-1 g
-275.525 439.748 4.6165 0.2006 re
-f*
-0 g
-280.141 439.748 12.4446 0.2006 re
-f*
-1 g
-292.586 439.748 7.2259 0.2006 re
-f*
-0 g
-299.812 439.748 26.0935 0.2006 re
-f*
-1 g
-325.905 439.748 27.6993 0.2006 re
-f*
-0.498 0 0.482 rg
-353.605 439.748 10.2367 0.2006 re
-f*
-1 g
-363.841 439.748 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-367.053 439.748 21.0755 0.2006 re
-f*
-1 g
-388.128 439.748 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 439.748 19.6705 0.2006 re
-f*
-0 g
-256.456 439.948 19.269 0.2005 re
-f*
-1 g
-275.725 439.948 4.4159 0.2005 re
-f*
-0 g
-280.141 439.948 12.6453 0.2005 re
-f*
-1 g
-292.786 439.948 7.0252 0.2005 re
-f*
-0 g
-299.812 439.948 25.6921 0.2005 re
-f*
-1 g
-325.504 439.948 27.6993 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 439.948 10.8388 0.2005 re
-f*
-1 g
-364.042 439.948 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-366.651 439.948 18.4661 0.2005 re
-f*
-1 g
-385.117 439.948 0.2008 0.2005 re
-f*
-0.498 0 0.482 rg
-385.318 439.948 2.81 0.2005 re
-f*
-1 g
-388.128 439.948 3.613 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 439.948 19.6705 0.2005 re
-f*
-0 g
-256.657 440.149 19.2691 0.2006 re
-f*
-1 g
-275.926 440.149 4.2151 0.2006 re
-f*
-0 g
-280.141 440.149 12.6453 0.2006 re
-f*
-1 g
-292.786 440.149 7.0252 0.2006 re
-f*
-0 g
-299.812 440.149 25.2907 0.2006 re
-f*
-1 g
-325.102 440.149 27.8999 0.2006 re
-f*
-0.498 0 0.482 rg
-353.002 440.149 11.2403 0.2006 re
-f*
-1 g
-364.243 440.149 2.208 0.2006 re
-f*
-0.498 0 0.482 rg
-366.451 440.149 18.6668 0.2006 re
-f*
-1 g
-385.117 440.149 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 440.149 19.4698 0.2006 re
-f*
-0 g
-256.858 440.35 19.2691 0.2005 re
-f*
-1 g
-276.127 440.35 4.2151 0.2005 re
-f*
-0 g
-280.342 440.35 12.6453 0.2005 re
-f*
-1 g
-292.987 440.35 6.8245 0.2005 re
-f*
-0 g
-299.812 440.35 24.6885 0.2005 re
-f*
-1 g
-324.5 440.35 28.1007 0.2005 re
-f*
-0.498 0 0.482 rg
-352.601 440.35 12.2439 0.2005 re
-f*
-1 g
-364.845 440.35 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-365.848 440.35 19.269 0.2005 re
-f*
-1 g
-385.117 440.35 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-391.741 440.35 19.2691 0.2005 re
-f*
-0 g
-256.858 440.55 19.4698 0.2006 re
-f*
-1 g
-276.327 440.55 4.0144 0.2006 re
-f*
-0 g
-280.342 440.55 12.6453 0.2006 re
-f*
-1 g
-292.987 440.55 6.6238 0.2006 re
-f*
-0 g
-299.611 440.55 24.4878 0.2006 re
-f*
-1 g
-324.099 440.55 28.3014 0.2006 re
-f*
-0.498 0 0.482 rg
-352.4 440.55 32.7172 0.2006 re
-f*
-1 g
-385.117 440.55 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-391.741 440.55 19.2691 0.2006 re
-f*
-0 g
-257.058 440.751 19.4698 0.2005 re
-f*
-1 g
-276.528 440.751 4.0144 0.2005 re
-f*
-0 g
-280.543 440.751 12.6453 0.2005 re
-f*
-1 g
-293.188 440.751 6.423 0.2005 re
-f*
-0 g
-299.611 440.751 24.0863 0.2005 re
-f*
-1 g
-323.697 440.751 28.3014 0.2005 re
-f*
-0.498 0 0.482 rg
-351.999 440.751 58.8108 0.2005 re
-f*
-0 g
-257.259 440.951 19.4697 0.2006 re
-f*
-1 g
-276.729 440.951 3.8138 0.2006 re
-f*
-0 g
-280.543 440.951 12.6453 0.2006 re
-f*
-1 g
-293.188 440.951 6.423 0.2006 re
-f*
-0 g
-299.611 440.951 23.6849 0.2006 re
-f*
-1 g
-323.296 440.951 28.5022 0.2006 re
-f*
-0.498 0 0.482 rg
-351.798 440.951 58.8107 0.2006 re
-f*
-0 g
-257.259 441.152 19.6705 0.2006 re
-f*
-1 g
-276.93 441.152 3.8136 0.2006 re
-f*
-0 g
-280.743 441.152 12.4447 0.2006 re
-f*
-1 g
-293.188 441.152 6.2223 0.2006 re
-f*
-0 g
-299.41 441.152 23.4841 0.2006 re
-f*
-1 g
-322.894 441.152 28.5022 0.2006 re
-f*
-0.498 0 0.482 rg
-351.397 441.152 59.0115 0.2006 re
-f*
-0 g
-257.46 441.352 19.6705 0.2005 re
-f*
-1 g
-277.13 441.352 3.6129 0.2005 re
-f*
-0 g
-280.743 441.352 12.4447 0.2005 re
-f*
-1 g
-293.188 441.352 6.2223 0.2005 re
-f*
-0 g
-299.41 441.352 23.0827 0.2005 re
-f*
-1 g
-322.493 441.352 28.5021 0.2005 re
-f*
-0.498 0 0.482 rg
-350.995 441.352 59.413 0.2005 re
-f*
-0 g
-257.661 441.553 19.6705 0.2006 re
-f*
-1 g
-277.331 441.553 3.613 0.2006 re
-f*
-0 g
-280.944 441.553 12.4446 0.2006 re
-f*
-1 g
-293.389 441.553 5.8208 0.2006 re
-f*
-0 g
-299.209 441.553 23.0828 0.2006 re
-f*
-1 g
-322.292 441.553 28.5022 0.2006 re
-f*
-0.498 0 0.482 rg
-350.794 441.553 59.4129 0.2006 re
-f*
-0 g
-257.661 441.753 19.8713 0.2005 re
-f*
-1 g
-277.532 441.753 3.4122 0.2005 re
-f*
-0 g
-280.944 441.753 12.4446 0.2005 re
-f*
-1 g
-293.389 441.753 5.8208 0.2005 re
-f*
-0 g
-299.209 441.753 22.6813 0.2005 re
-f*
-1 g
-321.891 441.753 28.5022 0.2005 re
-f*
-0.498 0 0.482 rg
-350.393 441.753 59.6137 0.2005 re
-f*
-0 g
-257.861 441.954 19.8712 0.2006 re
-f*
-1 g
-277.732 441.954 3.4123 0.2006 re
-f*
-0 g
-281.145 441.954 12.2439 0.2006 re
-f*
-1 g
-293.389 441.954 5.6201 0.2006 re
-f*
-0 g
-299.009 441.954 22.4806 0.2006 re
-f*
-1 g
-321.489 441.954 28.5021 0.2006 re
-f*
-0.498 0 0.482 rg
-349.991 441.954 60.0152 0.2006 re
-f*
-0 g
-258.062 442.155 19.8712 0.2006 re
-f*
-1 g
-277.933 442.155 3.4122 0.2006 re
-f*
-0 g
-281.346 442.155 12.0432 0.2006 re
-f*
-1 g
-293.389 442.155 5.6201 0.2006 re
-f*
-0 g
-299.009 442.155 22.2799 0.2006 re
-f*
-1 g
-321.289 442.155 28.1007 0.2006 re
-f*
-0.498 0 0.482 rg
-349.389 442.155 60.4166 0.2006 re
-f*
-0 g
-258.263 442.355 19.8712 0.2005 re
-f*
-1 g
-278.134 442.355 3.4123 0.2005 re
-f*
-0 g
-281.546 442.355 11.8424 0.2005 re
-f*
-1 g
-293.389 442.355 5.4194 0.2005 re
-f*
-0 g
-298.808 442.355 22.0791 0.2005 re
-f*
-1 g
-320.887 442.355 28.1007 0.2005 re
-f*
-0.498 0 0.482 rg
-348.988 442.355 60.6173 0.2005 re
-f*
-0 g
-258.263 442.556 20.0719 0.2006 re
-f*
-1 g
-278.335 442.556 3.2116 0.2006 re
-f*
-0 g
-281.546 442.556 11.8424 0.2006 re
-f*
-1 g
-293.389 442.556 5.2187 0.2006 re
-f*
-0 g
-298.607 442.556 22.0792 0.2006 re
-f*
-1 g
-320.687 442.556 27.6992 0.2006 re
-f*
-0.498 0 0.482 rg
-348.386 442.556 61.0187 0.2006 re
-f*
-0 g
-258.463 442.756 20.072 0.2005 re
-f*
-1 g
-278.535 442.756 3.2114 0.2005 re
-f*
-0 g
-281.747 442.756 11.6418 0.2005 re
-f*
-1 g
-293.389 442.756 5.2187 0.2005 re
-f*
-0 g
-298.607 442.756 21.6777 0.2005 re
-f*
-1 g
-320.285 442.756 27.6992 0.2005 re
-f*
-0.498 0 0.482 rg
-347.984 442.756 61.4202 0.2005 re
-f*
-0 g
-258.664 442.957 20.0719 0.2006 re
-f*
-1 g
-278.736 442.957 3.2116 0.2006 re
-f*
-0 g
-281.948 442.957 11.441 0.2006 re
-f*
-1 g
-293.389 442.957 5.018 0.2006 re
-f*
-0 g
-298.407 442.957 21.6777 0.2006 re
-f*
-1 g
-320.084 442.957 27.2978 0.2006 re
-f*
-0.498 0 0.482 rg
-347.382 442.957 61.8216 0.2006 re
-f*
-0 g
-258.865 443.157 20.2727 0.2006 re
-f*
-1 g
-279.138 443.157 3.0108 0.2006 re
-f*
-0 g
-282.148 443.157 11.2403 0.2006 re
-f*
-1 g
-293.389 443.157 4.8173 0.2006 re
-f*
-0 g
-298.206 443.157 21.6776 0.2006 re
-f*
-1 g
-319.884 443.157 26.8965 0.2006 re
-f*
-0.498 0 0.482 rg
-346.78 443.157 62.223 0.2006 re
-f*
-0 g
-258.865 443.358 20.4734 0.2005 re
-f*
-1 g
-279.338 443.358 3.0108 0.2005 re
-f*
-0 g
-282.349 443.358 11.0396 0.2005 re
-f*
-1 g
-293.389 443.358 4.6165 0.2005 re
-f*
-0 g
-298.005 443.358 21.477 0.2005 re
-f*
-1 g
-319.482 443.358 26.6957 0.2005 re
-f*
-0.498 0 0.482 rg
-346.178 443.358 62.6245 0.2005 re
-f*
-0 g
-259.066 443.558 20.4734 0.2006 re
-f*
-1 g
-279.539 443.558 3.0108 0.2006 re
-f*
-0 g
-282.55 443.558 10.8388 0.2006 re
-f*
-1 g
-293.389 443.558 4.4158 0.2006 re
-f*
-0 g
-297.805 443.558 21.477 0.2006 re
-f*
-1 g
-319.281 443.558 26.2942 0.2006 re
-f*
-0.498 0 0.482 rg
-345.576 443.558 63.2267 0.2006 re
-f*
-0 g
-259.266 443.759 20.4733 0.2005 re
-f*
-1 g
-279.74 443.759 3.0108 0.2005 re
-f*
-0 g
-282.75 443.759 10.4375 0.2005 re
-f*
-1 g
-293.188 443.759 4.4158 0.2005 re
-f*
-0 g
-297.604 443.759 21.4769 0.2005 re
-f*
-1 g
-319.081 443.759 25.8928 0.2005 re
-f*
-0.498 0 0.482 rg
-344.973 443.759 63.6281 0.2005 re
-f*
-0 g
-259.467 443.959 20.6741 0.2006 re
-f*
-1 g
-280.141 443.959 2.8101 0.2006 re
-f*
-0 g
-282.951 443.959 10.2367 0.2006 re
-f*
-1 g
-293.188 443.959 4.2151 0.2006 re
-f*
-0 g
-297.403 443.959 21.4769 0.2006 re
-f*
-1 g
-318.88 443.959 25.6921 0.2006 re
-f*
-0.498 0 0.482 rg
-344.572 443.959 63.8288 0.2006 re
-f*
-0 g
-259.668 444.16 20.6741 0.2006 re
-f*
-1 g
-280.342 444.16 2.8101 0.2006 re
-f*
-0 g
-283.152 444.16 9.8352 0.2006 re
-f*
-1 g
-292.987 444.16 4.2152 0.2006 re
-f*
-0 g
-297.202 444.16 21.477 0.2006 re
-f*
-1 g
-318.679 444.16 25.2905 0.2006 re
-f*
-0.498 0 0.482 rg
-343.97 444.16 64.2303 0.2006 re
-f*
-0 g
-259.868 444.361 20.8748 0.2005 re
-f*
-1 g
-280.743 444.361 2.6094 0.2005 re
-f*
-0 g
-283.353 444.361 9.6345 0.2005 re
-f*
-1 g
-292.987 444.361 4.0144 0.2005 re
-f*
-0 g
-297.002 444.361 21.477 0.2005 re
-f*
-1 g
-318.479 444.361 24.8892 0.2005 re
-f*
-0.498 0 0.482 rg
-343.368 444.361 64.6317 0.2005 re
-f*
-0 g
-259.868 444.561 21.0756 0.2005 re
-f*
-1 g
-280.944 444.561 2.81 0.2005 re
-f*
-0 g
-283.754 444.561 9.0324 0.2005 re
-f*
-1 g
-292.786 444.561 4.0144 0.2005 re
-f*
-0 g
-296.801 444.561 21.477 0.2005 re
-f*
-1 g
-318.278 444.561 24.287 0.2005 re
-f*
-0.498 0 0.482 rg
-342.565 444.561 65.2339 0.2005 re
-f*
-0 g
-260.069 444.762 21.2762 0.2006 re
-f*
-1 g
-281.346 444.762 2.6094 0.2006 re
-f*
-0 g
-283.955 444.762 8.6309 0.2006 re
-f*
-1 g
-292.586 444.762 4.0144 0.2006 re
-f*
-0 g
-296.6 444.762 21.4769 0.2006 re
-f*
-1 g
-318.077 444.762 23.8857 0.2006 re
-f*
-0.498 0 0.482 rg
-341.963 444.762 65.836 0.2006 re
-f*
-0 g
-260.27 444.962 21.2763 0.2006 re
-f*
-1 g
-281.546 444.962 2.81 0.2006 re
-f*
-0 g
-284.356 444.962 8.0288 0.2006 re
-f*
-1 g
-292.385 444.962 3.8137 0.2006 re
-f*
-0 g
-296.199 444.962 21.6776 0.2006 re
-f*
-1 g
-317.876 444.962 23.4842 0.2006 re
-f*
-0.498 0 0.482 rg
-341.361 444.962 66.2374 0.2006 re
-f*
-0 g
-260.471 445.163 21.477 0.2006 re
-f*
-1 g
-281.948 445.163 2.6094 0.2006 re
-f*
-0 g
-284.557 445.163 7.6273 0.2006 re
-f*
-1 g
-292.184 445.163 3.8136 0.2006 re
-f*
-0 g
-295.998 445.163 21.6778 0.2006 re
-f*
-1 g
-317.676 445.163 23.0827 0.2006 re
-f*
-0.498 0 0.482 rg
-340.758 445.163 66.6388 0.2006 re
-f*
-0 g
-260.671 445.363 21.6777 0.2005 re
-f*
-1 g
-282.349 445.363 2.8101 0.2005 re
-f*
-0 g
-285.159 445.363 6.6237 0.2005 re
-f*
-1 g
-291.783 445.363 3.8137 0.2005 re
-f*
-0 g
-295.597 445.363 21.8784 0.2005 re
-f*
-1 g
-317.475 445.363 22.6813 0.2005 re
-f*
-0.498 0 0.482 rg
-340.156 445.363 67.0403 0.2005 re
-f*
-0 g
-260.872 445.564 21.8784 0.2006 re
-f*
-1 g
-282.75 445.564 2.8101 0.2006 re
-f*
-0 g
-285.561 445.564 5.6202 0.2006 re
-f*
-1 g
-291.181 445.564 4.0144 0.2006 re
-f*
-0 g
-295.195 445.564 22.0791 0.2006 re
-f*
-1 g
-317.274 445.564 22.2799 0.2006 re
-f*
-0.498 0 0.482 rg
-339.554 445.564 67.4417 0.2006 re
-f*
-0 g
-261.073 445.765 22.0792 0.2005 re
-f*
-1 g
-283.152 445.765 3.0108 0.2005 re
-f*
-0 g
-286.163 445.765 4.2151 0.2005 re
-f*
-1 g
-290.378 445.765 4.4158 0.2005 re
-f*
-0 g
-294.794 445.765 22.2799 0.2005 re
-f*
-1 g
-317.074 445.765 21.8784 0.2005 re
-f*
-0.498 0 0.482 rg
-338.952 445.765 67.8432 0.2005 re
-f*
-0 g
-261.073 445.965 22.4807 0.2006 re
-f*
-1 g
-283.553 445.965 3.6129 0.2006 re
-f*
-0 g
-287.166 445.965 2.2079 0.2006 re
-f*
-1 g
-289.374 445.965 5.018 0.2006 re
-f*
-0 g
-294.392 445.965 22.4805 0.2006 re
-f*
-1 g
-316.873 445.965 21.477 0.2006 re
-f*
-0.498 0 0.482 rg
-338.35 445.965 68.2446 0.2006 re
-f*
-0 g
-261.274 446.166 22.882 0.2006 re
-f*
-1 g
-284.156 446.166 9.8352 0.2006 re
-f*
-0 g
-293.991 446.166 22.6813 0.2006 re
-f*
-1 g
-316.672 446.166 21.0756 0.2006 re
-f*
-0.498 0 0.482 rg
-337.748 446.166 68.646 0.2006 re
-f*
-0 g
-261.474 446.366 23.2834 0.2005 re
-f*
-1 g
-284.758 446.366 8.631 0.2005 re
-f*
-0 g
-293.389 446.366 23.2834 0.2005 re
-f*
-1 g
-316.672 446.366 20.4734 0.2005 re
-f*
-0.498 0 0.482 rg
-337.146 446.366 69.0475 0.2005 re
-f*
-0 g
-261.675 446.567 23.6849 0.2005 re
-f*
-1 g
-285.36 446.567 7.4266 0.2005 re
-f*
-0 g
-292.786 446.567 23.6849 0.2005 re
-f*
-1 g
-316.471 446.567 19.8713 0.2005 re
-f*
-0.498 0 0.482 rg
-336.343 446.567 69.8503 0.2005 re
-f*
-0 g
-261.876 446.767 24.2871 0.2006 re
-f*
-1 g
-286.163 446.767 5.6201 0.2006 re
-f*
-0 g
-291.783 446.767 24.4878 0.2006 re
-f*
-1 g
-316.271 446.767 19.4698 0.2006 re
-f*
-0.498 0 0.482 rg
-335.74 446.767 70.2518 0.2006 re
-f*
-0 g
-262.076 446.968 25.2907 0.2006 re
-f*
-1 g
-287.367 446.968 3.2115 0.2006 re
-f*
-0 g
-290.579 446.968 25.6921 0.2006 re
-f*
-1 g
-316.271 446.968 18.8676 0.2006 re
-f*
-0.498 0 0.482 rg
-335.138 446.968 70.6533 0.2006 re
-f*
-0 g
-262.277 447.168 53.7928 0.2005 re
-f*
-1 g
-316.07 447.168 18.4662 0.2005 re
-f*
-0.498 0 0.482 rg
-334.536 447.168 71.0547 0.2005 re
-f*
-0 g
-262.478 447.369 53.3913 0.2006 re
-f*
-1 g
-315.869 447.369 18.0648 0.2006 re
-f*
-0.498 0 0.482 rg
-333.934 447.369 71.4561 0.2006 re
-f*
-0 g
-262.679 447.57 53.1906 0.2005 re
-f*
-1 g
-315.869 447.57 17.4626 0.2005 re
-f*
-0.498 0 0.482 rg
-333.332 447.57 71.8576 0.2005 re
-f*
-0 g
-262.879 447.77 52.7893 0.2006 re
-f*
-1 g
-315.669 447.77 17.0611 0.2006 re
-f*
-0.498 0 0.482 rg
-332.73 447.77 72.259 0.2006 re
-f*
-0 g
-263.08 447.971 52.5886 0.2006 re
-f*
-1 g
-315.669 447.971 16.4589 0.2006 re
-f*
-0.498 0 0.482 rg
-332.127 447.971 72.6605 0.2006 re
-f*
-0 g
-263.281 448.171 52.187 0.2006 re
-f*
-1 g
-315.468 448.171 16.0576 0.2006 re
-f*
-0.498 0 0.482 rg
-331.525 448.171 73.0618 0.2006 re
-f*
-0 g
-263.481 448.372 51.9863 0.2005 re
-f*
-1 g
-315.468 448.372 15.4554 0.2005 re
-f*
-0.498 0 0.482 rg
-330.923 448.372 73.4633 0.2005 re
-f*
-0 g
-263.682 448.572 51.5849 0.2005 re
-f*
-1 g
-315.267 448.572 15.0539 0.2005 re
-f*
-0.498 0 0.482 rg
-330.321 448.572 73.8648 0.2005 re
-f*
-0 g
-263.883 448.773 51.3842 0.2006 re
-f*
-1 g
-315.267 448.773 14.4518 0.2006 re
-f*
-0.498 0 0.482 rg
-329.719 448.773 74.2662 0.2006 re
-f*
-0 g
-264.084 448.973 50.9828 0.2006 re
-f*
-1 g
-315.066 448.973 14.2511 0.2006 re
-f*
-0.498 0 0.482 rg
-329.317 448.973 74.4669 0.2006 re
-f*
-0 g
-264.284 449.174 50.782 0.2005 re
-f*
-1 g
-315.066 449.174 13.6489 0.2005 re
-f*
-0.498 0 0.482 rg
-328.715 449.174 74.8683 0.2005 re
-f*
-0 g
-264.485 449.375 50.5813 0.2006 re
-f*
-1 g
-315.066 449.375 13.2475 0.2006 re
-f*
-0.498 0 0.482 rg
-328.314 449.375 75.069 0.2006 re
-f*
-0 g
-264.686 449.575 50.1798 0.2005 re
-f*
-1 g
-314.866 449.575 12.8461 0.2005 re
-f*
-0.498 0 0.482 rg
-327.712 449.575 75.2698 0.2005 re
-f*
-0 g
-264.886 449.776 49.9791 0.2006 re
-f*
-1 g
-314.866 449.776 12.4447 0.2006 re
-f*
-0.498 0 0.482 rg
-327.31 449.776 75.4705 0.2006 re
-f*
-0 g
-265.288 449.976 49.5776 0.2006 re
-f*
-1 g
-314.866 449.976 12.0432 0.2006 re
-f*
-0.498 0 0.482 rg
-326.909 449.976 75.6712 0.2006 re
-f*
-0 g
-265.489 450.177 49.1763 0.2005 re
-f*
-1 g
-314.665 450.177 11.8424 0.2005 re
-f*
-0.498 0 0.482 rg
-326.507 450.177 75.8719 0.2005 re
-f*
-0 g
-265.689 450.377 48.9756 0.2005 re
-f*
-1 g
-314.665 450.377 11.4409 0.2005 re
-f*
-0.498 0 0.482 rg
-326.106 450.377 76.0727 0.2005 re
-f*
-0 g
-265.89 450.578 48.7749 0.2006 re
-f*
-1 g
-314.665 450.578 11.0395 0.2006 re
-f*
-0.498 0 0.482 rg
-325.704 450.578 76.2734 0.2006 re
-f*
-0 g
-266.091 450.778 48.3733 0.2006 re
-f*
-1 g
-314.464 450.778 10.8389 0.2006 re
-f*
-0.498 0 0.482 rg
-325.303 450.778 76.4741 0.2006 re
-f*
-0 g
-266.292 450.979 48.1726 0.2006 re
-f*
-1 g
-314.464 450.979 10.4374 0.2006 re
-f*
-0.498 0 0.482 rg
-324.902 450.979 76.6748 0.2006 re
-f*
-0 g
-266.492 451.18 47.9719 0.2005 re
-f*
-1 g
-314.464 451.18 10.2367 0.2005 re
-f*
-0.498 0 0.482 rg
-324.701 451.18 76.6748 0.2005 re
-f*
-0 g
-266.693 451.38 47.7712 0.2005 re
-f*
-1 g
-314.464 451.38 9.8353 0.2005 re
-f*
-0.498 0 0.482 rg
-324.299 451.38 76.6748 0.2005 re
-f*
-0 g
-267.094 451.581 47.169 0.2006 re
-f*
-1 g
-314.263 451.581 9.8353 0.2006 re
-f*
-0.498 0 0.482 rg
-324.099 451.581 76.6748 0.2006 re
-f*
-0 g
-267.295 451.781 46.9683 0.2006 re
-f*
-1 g
-314.263 451.781 9.4338 0.2006 re
-f*
-0.498 0 0.482 rg
-323.697 451.781 76.8755 0.2006 re
-f*
-0 g
-267.496 451.982 46.7676 0.2006 re
-f*
-1 g
-314.263 451.982 9.2331 0.2006 re
-f*
-0.498 0 0.482 rg
-323.497 451.982 76.8755 0.2006 re
-f*
-0 g
-267.697 452.183 46.5669 0.2005 re
-f*
-1 g
-314.263 452.183 9.0324 0.2005 re
-f*
-0.498 0 0.482 rg
-323.296 452.183 76.6748 0.2005 re
-f*
-0 g
-268.098 452.383 46.1654 0.2005 re
-f*
-1 g
-314.263 452.383 8.6309 0.2005 re
-f*
-0.498 0 0.482 rg
-322.894 452.383 76.8756 0.2005 re
-f*
-0 g
-268.299 452.583 45.764 0.2006 re
-f*
-1 g
-314.063 452.583 8.631 0.2006 re
-f*
-0.498 0 0.482 rg
-322.694 452.583 76.8754 0.2006 re
-f*
-0 g
-268.499 452.784 45.5633 0.2006 re
-f*
-1 g
-314.063 452.784 8.4302 0.2006 re
-f*
-0.498 0 0.482 rg
-322.493 452.784 76.8755 0.2006 re
-f*
-0 g
-268.7 452.985 45.3626 0.2005 re
-f*
-1 g
-314.063 452.985 8.2295 0.2005 re
-f*
-0.498 0 0.482 rg
-322.292 452.985 76.6748 0.2005 re
-f*
-0 g
-269.102 453.185 44.9612 0.2006 re
-f*
-1 g
-314.063 453.185 8.0288 0.2006 re
-f*
-0.498 0 0.482 rg
-322.092 453.185 76.6748 0.2006 re
-f*
-0 g
-269.302 453.386 44.7604 0.2005 re
-f*
-1 g
-314.063 453.386 7.828 0.2005 re
-f*
-0.498 0 0.482 rg
-321.891 453.386 76.6748 0.2005 re
-f*
-0 g
-269.503 453.586 44.5597 0.2006 re
-f*
-1 g
-314.063 453.586 7.6274 0.2006 re
-f*
-0.498 0 0.482 rg
-321.69 453.586 76.6747 0.2006 re
-f*
-0 g
-269.904 453.787 44.1583 0.2006 re
-f*
-1 g
-314.063 453.787 7.4266 0.2006 re
-f*
-0.498 0 0.482 rg
-321.489 453.787 76.4741 0.2006 re
-f*
-0 g
-270.105 453.987 43.9576 0.2005 re
-f*
-1 g
-314.063 453.987 7.2259 0.2005 re
-f*
-0.498 0 0.482 rg
-321.289 453.987 76.4741 0.2005 re
-f*
-0 g
-270.306 454.188 43.7568 0.2006 re
-f*
-1 g
-314.063 454.188 7.2259 0.2006 re
-f*
-0.498 0 0.482 rg
-321.289 454.188 76.2734 0.2006 re
-f*
-0 g
-270.707 454.389 43.3554 0.2005 re
-f*
-1 g
-314.063 454.389 7.0252 0.2005 re
-f*
-0.498 0 0.482 rg
-321.088 454.389 76.0726 0.2005 re
-f*
-0 g
-270.908 454.589 43.1547 0.2006 re
-f*
-1 g
-314.063 454.589 6.8244 0.2006 re
-f*
-0.498 0 0.482 rg
-320.887 454.589 76.0727 0.2006 re
-f*
-0 g
-271.109 454.79 42.954 0.2006 re
-f*
-1 g
-314.063 454.79 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-320.687 454.79 75.8719 0.2006 re
-f*
-0 g
-271.51 454.99 42.3517 0.2005 re
-f*
-1 g
-313.862 454.99 6.8246 0.2005 re
-f*
-0.498 0 0.482 rg
-320.687 454.99 75.6711 0.2005 re
-f*
-0 g
-271.711 455.191 42.151 0.2006 re
-f*
-1 g
-313.862 455.191 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-320.486 455.191 75.6712 0.2006 re
-f*
-0 g
-272.112 455.391 41.7496 0.2005 re
-f*
-1 g
-313.862 455.391 6.4231 0.2005 re
-f*
-0.498 0 0.482 rg
-320.285 455.391 75.4705 0.2005 re
-f*
-0 g
-272.313 455.592 41.5488 0.2006 re
-f*
-1 g
-313.862 455.592 6.4231 0.2006 re
-f*
-0.498 0 0.482 rg
-320.285 455.592 75.2698 0.2006 re
-f*
-0 g
-272.715 455.792 41.1474 0.2005 re
-f*
-1 g
-313.862 455.792 6.2224 0.2005 re
-f*
-0.498 0 0.482 rg
-320.084 455.792 75.069 0.2005 re
-f*
-0 g
-272.915 455.993 41.1475 0.2006 re
-f*
-1 g
-314.063 455.993 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-320.084 455.993 74.8683 0.2006 re
-f*
-0 g
-273.116 456.194 40.9468 0.2006 re
-f*
-1 g
-314.063 456.194 5.8208 0.2006 re
-f*
-0.498 0 0.482 rg
-319.884 456.194 74.6677 0.2006 re
-f*
-0 g
-273.517 456.394 40.5453 0.2005 re
-f*
-1 g
-314.063 456.394 5.8208 0.2005 re
-f*
-0.498 0 0.482 rg
-319.884 456.394 74.4669 0.2005 re
-f*
-0 g
-273.919 456.595 40.1439 0.2006 re
-f*
-1 g
-314.063 456.595 5.6202 0.2006 re
-f*
-0.498 0 0.482 rg
-319.683 456.595 74.2661 0.2006 re
-f*
-0 g
-274.12 456.795 39.9432 0.2005 re
-f*
-1 g
-314.063 456.795 5.6202 0.2005 re
-f*
-0.498 0 0.482 rg
-319.683 456.795 32.5165 0.2005 re
-f*
-1 g
-352.2 456.795 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 456.795 40.5453 0.2005 re
-f*
-0 g
-274.521 456.996 39.5417 0.2006 re
-f*
-1 g
-314.063 456.996 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-319.482 456.996 32.7173 0.2006 re
-f*
-1 g
-352.2 456.996 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 456.996 40.1439 0.2006 re
-f*
-0 g
-274.722 457.196 39.3411 0.2006 re
-f*
-1 g
-314.063 457.196 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-319.482 457.196 32.7173 0.2006 re
-f*
-1 g
-352.2 457.196 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 457.196 39.9431 0.2006 re
-f*
-0 g
-275.123 457.397 38.9396 0.2005 re
-f*
-1 g
-314.063 457.397 5.4194 0.2005 re
-f*
-0.498 0 0.482 rg
-319.482 457.397 32.7173 0.2005 re
-f*
-1 g
-352.2 457.397 1.0036 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 457.397 39.5417 0.2005 re
-f*
-0 g
-275.324 457.597 38.7389 0.2006 re
-f*
-1 g
-314.063 457.597 5.2187 0.2006 re
-f*
-0.498 0 0.482 rg
-319.281 457.597 32.918 0.2006 re
-f*
-1 g
-352.2 457.597 1.0036 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 457.597 39.1403 0.2006 re
-f*
-0 g
-275.725 457.798 38.3375 0.2005 re
-f*
-1 g
-314.063 457.798 5.2187 0.2005 re
-f*
-0.498 0 0.482 rg
-319.281 457.798 32.7172 0.2005 re
-f*
-1 g
-351.999 457.798 1.2044 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 457.798 38.9395 0.2005 re
-f*
-0 g
-276.127 457.999 37.936 0.2006 re
-f*
-1 g
-314.063 457.999 5.2187 0.2006 re
-f*
-0.498 0 0.482 rg
-319.281 457.999 32.7172 0.2006 re
-f*
-1 g
-351.999 457.999 1.2044 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 457.999 38.5381 0.2006 re
-f*
-0 g
-276.327 458.199 37.7353 0.2006 re
-f*
-1 g
-314.063 458.199 5.0179 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 458.199 32.918 0.2006 re
-f*
-1 g
-351.999 458.199 1.2044 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 458.199 38.1367 0.2006 re
-f*
-0 g
-276.729 458.4 37.3339 0.2005 re
-f*
-1 g
-314.063 458.4 5.0179 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 458.4 32.918 0.2005 re
-f*
-1 g
-351.999 458.4 1.2044 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 458.4 37.9359 0.2005 re
-f*
-0 g
-277.13 458.6 37.1331 0.2006 re
-f*
-1 g
-314.263 458.6 4.8172 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 458.6 32.7174 0.2006 re
-f*
-1 g
-351.798 458.6 1.405 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 458.6 37.5345 0.2006 re
-f*
-0 g
-277.532 458.801 36.7316 0.2005 re
-f*
-1 g
-314.263 458.801 4.8172 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 458.801 32.7174 0.2005 re
-f*
-1 g
-351.798 458.801 1.405 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 458.801 37.1331 0.2005 re
-f*
-0 g
-277.732 459.001 36.531 0.2006 re
-f*
-1 g
-314.263 459.001 4.8172 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 459.001 32.7174 0.2006 re
-f*
-1 g
-351.798 459.001 1.405 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 459.001 36.9323 0.2006 re
-f*
-0 g
-278.134 459.202 36.1295 0.2006 re
-f*
-1 g
-314.263 459.202 4.8172 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 459.202 32.7174 0.2006 re
-f*
-1 g
-351.798 459.202 1.405 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 459.202 36.5309 0.2006 re
-f*
-0 g
-278.535 459.403 35.728 0.2005 re
-f*
-1 g
-314.263 459.403 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 459.403 32.7173 0.2005 re
-f*
-1 g
-351.597 459.403 1.6058 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 459.403 36.1295 0.2005 re
-f*
-0 g
-278.736 459.603 35.5274 0.2005 re
-f*
-1 g
-314.263 459.603 4.6165 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 459.603 32.7173 0.2005 re
-f*
-1 g
-351.597 459.603 1.6058 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 459.603 35.7281 0.2005 re
-f*
-0 g
-279.138 459.804 35.3266 0.2006 re
-f*
-1 g
-314.464 459.804 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 459.804 32.7173 0.2006 re
-f*
-1 g
-351.597 459.804 1.6058 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 459.804 35.3266 0.2006 re
-f*
-0 g
-279.539 460.004 34.9251 0.2006 re
-f*
-1 g
-314.464 460.004 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 460.004 32.7173 0.2006 re
-f*
-1 g
-351.597 460.004 1.6058 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 460.004 34.9251 0.2006 re
-f*
-0 g
-279.94 460.205 34.5237 0.2006 re
-f*
-1 g
-314.464 460.205 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 460.205 32.5166 0.2006 re
-f*
-1 g
-351.397 460.205 1.8065 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 460.205 34.7245 0.2006 re
-f*
-0 g
-280.342 460.405 34.1223 0.2005 re
-f*
-1 g
-314.464 460.405 4.4158 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 460.405 32.5166 0.2005 re
-f*
-1 g
-351.397 460.405 1.8065 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 460.405 34.323 0.2005 re
-f*
-0 g
-280.743 460.606 33.9217 0.2006 re
-f*
-1 g
-314.665 460.606 4.215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 460.606 32.5166 0.2006 re
-f*
-1 g
-351.397 460.606 1.8065 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 460.606 33.9215 0.2006 re
-f*
-0 g
-281.145 460.806 33.5202 0.2005 re
-f*
-1 g
-314.665 460.806 4.215 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 460.806 32.3159 0.2005 re
-f*
-1 g
-351.196 460.806 2.0072 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 460.806 33.5201 0.2005 re
-f*
-0 g
-281.546 461.007 33.1187 0.2006 re
-f*
-1 g
-314.665 461.007 4.215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 461.007 32.3159 0.2006 re
-f*
-1 g
-351.196 461.007 2.0072 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 461.007 33.1186 0.2006 re
-f*
-0 g
-281.948 461.208 32.7173 0.2006 re
-f*
-1 g
-314.665 461.208 4.215 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 461.208 32.3159 0.2006 re
-f*
-1 g
-351.196 461.208 2.0072 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 461.208 32.7172 0.2006 re
-f*
-0 g
-282.349 461.408 32.3159 0.2005 re
-f*
-1 g
-314.665 461.408 4.215 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 461.408 32.1151 0.2005 re
-f*
-1 g
-350.995 461.408 2.208 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 461.408 32.3158 0.2005 re
-f*
-0 g
-282.75 461.609 32.1151 0.2005 re
-f*
-1 g
-314.866 461.609 4.0144 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 461.609 32.1151 0.2005 re
-f*
-1 g
-350.995 461.609 2.208 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 461.609 31.9143 0.2005 re
-f*
-0 g
-283.152 461.809 31.7136 0.2006 re
-f*
-1 g
-314.866 461.809 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 461.809 32.1151 0.2006 re
-f*
-1 g
-350.995 461.809 2.208 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 461.809 31.5129 0.2006 re
-f*
-0 g
-283.553 462.01 31.3121 0.2006 re
-f*
-1 g
-314.866 462.01 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 462.01 31.9145 0.2006 re
-f*
-1 g
-350.794 462.01 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 462.01 31.1115 0.2006 re
-f*
-0 g
-283.955 462.21 31.1115 0.2005 re
-f*
-1 g
-315.066 462.21 3.8136 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 462.21 31.9145 0.2005 re
-f*
-1 g
-350.794 462.21 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 462.21 30.7101 0.2005 re
-f*
-0 g
-284.356 462.411 30.7101 0.2006 re
-f*
-1 g
-315.066 462.411 3.8136 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 462.411 31.9145 0.2006 re
-f*
-1 g
-350.794 462.411 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 462.411 30.1079 0.2006 re
-f*
-0 g
-284.758 462.611 30.5094 0.2005 re
-f*
-1 g
-315.267 462.611 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-318.88 462.611 31.7137 0.2005 re
-f*
-1 g
-350.594 462.611 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 462.611 29.7065 0.2005 re
-f*
-0 g
-285.36 462.812 29.9072 0.2006 re
-f*
-1 g
-315.267 462.812 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 462.812 31.7137 0.2006 re
-f*
-1 g
-350.594 462.812 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 462.812 29.305 0.2006 re
-f*
-0 g
-285.761 463.013 29.5058 0.2006 re
-f*
-1 g
-315.267 463.013 3.6129 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 463.013 31.7137 0.2006 re
-f*
-1 g
-350.594 463.013 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 463.013 28.9035 0.2006 re
-f*
-0 g
-286.163 463.213 29.305 0.2006 re
-f*
-1 g
-315.468 463.213 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-318.88 463.213 31.513 0.2006 re
-f*
-1 g
-350.393 463.213 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 463.213 28.5021 0.2006 re
-f*
-0 g
-286.564 463.414 28.9036 0.2005 re
-f*
-1 g
-315.468 463.414 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 463.414 31.3123 0.2005 re
-f*
-1 g
-350.393 463.414 2.8101 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 463.414 27.9 0.2005 re
-f*
-0 g
-287.166 463.614 28.3014 0.2005 re
-f*
-1 g
-315.468 463.614 3.6129 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 463.614 31.1116 0.2005 re
-f*
-1 g
-350.192 463.614 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 463.614 27.4985 0.2005 re
-f*
-0 g
-287.568 463.815 28.1008 0.2006 re
-f*
-1 g
-315.669 463.815 3.4121 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 463.815 31.1116 0.2006 re
-f*
-1 g
-350.192 463.815 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 463.815 27.0971 0.2006 re
-f*
-0 g
-287.969 464.015 27.6994 0.2006 re
-f*
-1 g
-315.669 464.015 3.4121 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 464.015 30.9108 0.2006 re
-f*
-1 g
-349.991 464.015 3.2116 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 464.015 26.495 0.2006 re
-f*
-0 g
-288.571 464.216 27.2978 0.2005 re
-f*
-1 g
-315.869 464.216 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-319.081 464.216 30.9108 0.2005 re
-f*
-1 g
-349.991 464.216 3.2116 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 464.216 26.0935 0.2005 re
-f*
-0 g
-288.973 464.416 26.8964 0.2006 re
-f*
-1 g
-315.869 464.416 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-319.081 464.416 30.7102 0.2006 re
-f*
-1 g
-349.791 464.416 3.4122 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 464.416 25.4914 0.2006 re
-f*
-0 g
-289.575 464.617 26.495 0.2005 re
-f*
-1 g
-316.07 464.617 3.2115 0.2005 re
-f*
-0.498 0 0.482 rg
-319.281 464.617 30.5094 0.2005 re
-f*
-1 g
-349.791 464.617 3.4122 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 464.617 25.0899 0.2005 re
-f*
-0 g
-289.976 464.818 26.0936 0.2006 re
-f*
-1 g
-316.07 464.818 3.2115 0.2006 re
-f*
-0.498 0 0.482 rg
-319.281 464.818 30.3086 0.2006 re
-f*
-1 g
-349.59 464.818 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 464.818 24.4878 0.2006 re
-f*
-0 g
-290.579 465.018 25.6921 0.2006 re
-f*
-1 g
-316.271 465.018 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-319.281 465.018 30.3086 0.2006 re
-f*
-1 g
-349.59 465.018 3.613 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 465.018 24.0863 0.2006 re
-f*
-0 g
-291.181 465.219 25.0899 0.2005 re
-f*
-1 g
-316.271 465.219 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-319.281 465.219 30.1079 0.2005 re
-f*
-1 g
-349.389 465.219 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 465.219 23.4842 0.2005 re
-f*
-0 g
-291.582 465.419 24.8892 0.2005 re
-f*
-1 g
-316.471 465.419 3.0108 0.2005 re
-f*
-0.498 0 0.482 rg
-319.482 465.419 29.9072 0.2005 re
-f*
-1 g
-349.389 465.419 3.8137 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 465.419 22.882 0.2005 re
-f*
-0 g
-292.184 465.62 24.287 0.2006 re
-f*
-1 g
-316.471 465.62 3.0108 0.2006 re
-f*
-0.498 0 0.482 rg
-319.482 465.62 29.7065 0.2006 re
-f*
-1 g
-349.189 465.62 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 465.62 22.4806 0.2006 re
-f*
-0 g
-292.786 465.82 23.8856 0.2006 re
-f*
-1 g
-316.672 465.82 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-319.482 465.82 29.7065 0.2006 re
-f*
-1 g
-349.189 465.82 4.0144 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 465.82 21.8784 0.2006 re
-f*
-0 g
-293.389 466.021 23.2834 0.2006 re
-f*
-1 g
-316.672 466.021 3.0109 0.2006 re
-f*
-0.498 0 0.482 rg
-319.683 466.021 29.3049 0.2006 re
-f*
-1 g
-348.988 466.021 4.2152 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 466.021 21.2762 0.2006 re
-f*
-0 g
-293.79 466.222 23.0827 0.2005 re
-f*
-1 g
-316.873 466.222 2.8102 0.2005 re
-f*
-0.498 0 0.482 rg
-319.683 466.222 29.3049 0.2005 re
-f*
-1 g
-348.988 466.222 4.2152 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 466.222 20.6741 0.2005 re
-f*
-0 g
-294.392 466.422 22.6813 0.2006 re
-f*
-1 g
-317.074 466.422 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-319.683 466.422 29.1043 0.2006 re
-f*
-1 g
-348.787 466.422 4.4158 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 466.422 20.0719 0.2006 re
-f*
-0 g
-295.195 466.623 21.8784 0.2005 re
-f*
-1 g
-317.074 466.623 2.81 0.2005 re
-f*
-0.498 0 0.482 rg
-319.884 466.623 28.7029 0.2005 re
-f*
-1 g
-348.586 466.623 4.6166 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 466.623 19.4698 0.2005 re
-f*
-0 g
-295.797 466.823 21.477 0.2006 re
-f*
-1 g
-317.274 466.823 2.6093 0.2006 re
-f*
-0.498 0 0.482 rg
-319.884 466.823 28.7029 0.2006 re
-f*
-1 g
-348.586 466.823 4.6166 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 466.823 18.8676 0.2006 re
-f*
-0 g
-296.399 467.024 20.8748 0.2006 re
-f*
-1 g
-317.274 467.024 2.8101 0.2006 re
-f*
-0.498 0 0.482 rg
-320.084 467.024 28.3014 0.2006 re
-f*
-1 g
-348.386 467.024 4.8173 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 467.024 18.2654 0.2006 re
-f*
-0 g
-297.002 467.224 20.4734 0.2005 re
-f*
-1 g
-317.475 467.224 2.6094 0.2005 re
-f*
-0.498 0 0.482 rg
-320.084 467.224 28.1007 0.2005 re
-f*
-1 g
-348.185 467.224 5.018 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 467.224 17.6633 0.2005 re
-f*
-0 g
-297.604 467.425 20.072 0.2005 re
-f*
-1 g
-317.676 467.425 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-320.285 467.425 27.9 0.2005 re
-f*
-1 g
-348.185 467.425 5.018 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 467.425 17.0611 0.2005 re
-f*
-0 g
-298.206 467.625 19.6704 0.2006 re
-f*
-1 g
-317.876 467.625 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-320.285 467.625 27.6992 0.2006 re
-f*
-1 g
-347.984 467.625 5.2188 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 467.625 16.2582 0.2006 re
-f*
-0 g
-299.009 467.826 18.8676 0.2006 re
-f*
-1 g
-317.876 467.826 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-320.486 467.826 27.2979 0.2006 re
-f*
-1 g
-347.784 467.826 5.4194 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 467.826 15.6561 0.2006 re
-f*
-0 g
-299.611 468.027 18.4661 0.2005 re
-f*
-1 g
-318.077 468.027 2.6095 0.2005 re
-f*
-0.498 0 0.482 rg
-320.687 468.027 26.8963 0.2005 re
-f*
-1 g
-347.583 468.027 5.6202 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 468.027 14.8532 0.2005 re
-f*
-0 g
-300.414 468.227 17.864 0.2006 re
-f*
-1 g
-318.278 468.227 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-320.687 468.227 26.8963 0.2006 re
-f*
-1 g
-347.583 468.227 5.6202 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 468.227 14.2511 0.2006 re
-f*
-0 g
-301.217 468.428 17.2619 0.2005 re
-f*
-1 g
-318.479 468.428 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-320.887 468.428 26.495 0.2005 re
-f*
-1 g
-347.382 468.428 5.8209 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 468.428 13.4482 0.2005 re
-f*
-0 g
-301.819 468.628 16.6597 0.2006 re
-f*
-1 g
-318.479 468.628 2.6094 0.2006 re
-f*
-0.498 0 0.482 rg
-321.088 468.628 26.0935 0.2006 re
-f*
-1 g
-347.181 468.628 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 468.628 12.6453 0.2006 re
-f*
-0 g
-302.622 468.829 16.0576 0.2006 re
-f*
-1 g
-318.679 468.829 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-321.088 468.829 25.8927 0.2006 re
-f*
-1 g
-346.981 468.829 6.2224 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 468.829 11.8424 0.2006 re
-f*
-0 g
-303.425 469.029 15.4553 0.2005 re
-f*
-1 g
-318.88 469.029 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-321.289 469.029 25.4914 0.2005 re
-f*
-1 g
-346.78 469.029 6.423 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 469.029 11.2403 0.2005 re
-f*
-0 g
-304.227 469.23 14.8532 0.2006 re
-f*
-1 g
-319.081 469.23 2.4087 0.2006 re
-f*
-0.498 0 0.482 rg
-321.489 469.23 25.0899 0.2006 re
-f*
-1 g
-346.579 469.23 6.6238 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 469.23 10.4374 0.2006 re
-f*
-0 g
-305.231 469.43 14.0504 0.2005 re
-f*
-1 g
-319.281 469.43 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-321.69 469.43 24.8891 0.2005 re
-f*
-1 g
-346.579 469.43 6.6238 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 469.43 9.4338 0.2005 re
-f*
-0 g
-306.034 469.631 13.4482 0.2006 re
-f*
-1 g
-319.482 469.631 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-321.891 469.631 24.4878 0.2006 re
-f*
-1 g
-346.379 469.631 6.8245 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 469.631 8.6309 0.2006 re
-f*
-0 g
-306.837 469.832 12.8461 0.2006 re
-f*
-1 g
-319.683 469.832 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-322.092 469.832 24.0863 0.2006 re
-f*
-1 g
-346.178 469.832 7.0252 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 469.832 7.6273 0.2006 re
-f*
-0 g
-307.841 470.032 12.0431 0.2005 re
-f*
-1 g
-319.884 470.032 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-322.292 470.032 23.6848 0.2005 re
-f*
-1 g
-345.977 470.032 7.226 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 470.032 6.8244 0.2005 re
-f*
-0 g
-308.844 470.233 11.2403 0.2006 re
-f*
-1 g
-320.084 470.233 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-322.493 470.233 23.2835 0.2006 re
-f*
-1 g
-345.776 470.233 7.4266 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 470.233 5.6201 0.2006 re
-f*
-0 g
-309.848 470.433 10.4374 0.2005 re
-f*
-1 g
-320.285 470.433 2.4087 0.2005 re
-f*
-0.498 0 0.482 rg
-322.694 470.433 22.6812 0.2005 re
-f*
-1 g
-345.375 470.433 7.8281 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 470.433 4.6165 0.2005 re
-f*
-0 g
-311.052 470.634 9.4338 0.2006 re
-f*
-1 g
-320.486 470.634 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-322.894 470.634 22.2799 0.2006 re
-f*
-1 g
-345.174 470.634 8.0288 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 470.634 3.6129 0.2006 re
-f*
-0 g
-312.256 470.834 8.4303 0.2005 re
-f*
-1 g
-320.687 470.834 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-323.095 470.834 21.8783 0.2005 re
-f*
-1 g
-344.973 470.834 8.2296 0.2005 re
-f*
-0.498 0 0.482 rg
-353.203 470.834 2.4086 0.2005 re
-f*
-0 g
-313.461 471.035 7.6274 0.2006 re
-f*
-1 g
-321.088 471.035 2.2079 0.2006 re
-f*
-0.498 0 0.482 rg
-323.296 471.035 21.477 0.2006 re
-f*
-1 g
-344.773 471.035 8.4302 0.2006 re
-f*
-0.498 0 0.482 rg
-353.203 471.035 1.2043 0.2006 re
-f*
-0 g
-314.665 471.235 6.6237 0.2006 re
-f*
-1 g
-321.289 471.235 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-323.697 471.235 20.8748 0.2006 re
-f*
-0 g
-316.271 471.436 5.2187 0.2005 re
-f*
-1 g
-321.489 471.436 2.4086 0.2005 re
-f*
-0.498 0 0.482 rg
-323.898 471.436 20.2727 0.2005 re
-f*
-0 g
-317.676 471.637 4.215 0.2006 re
-f*
-1 g
-321.891 471.637 2.208 0.2006 re
-f*
-0.498 0 0.482 rg
-324.099 471.637 19.8711 0.2006 re
-f*
-0 g
-319.482 471.837 2.6094 0.2006 re
-f*
-1 g
-322.092 471.837 2.4086 0.2006 re
-f*
-0.498 0 0.482 rg
-324.5 471.837 19.0683 0.2006 re
-f*
-0 g
-321.289 472.038 0.8029 0.2005 re
-f*
-1 g
-322.092 472.038 2.6093 0.2005 re
-f*
-0.498 0 0.482 rg
-324.701 472.038 18.6669 0.2005 re
-f*
-0.498 0 0.482 rg
-325.102 472.238 17.864 0.2006 re
-f*
-0.498 0 0.482 rg
-325.504 472.439 17.2619 0.2005 re
-f*
-0.498 0 0.482 rg
-325.905 472.639 16.459 0.2006 re
-f*
-0.498 0 0.482 rg
-326.307 472.84 15.6561 0.2006 re
-f*
-0.498 0 0.482 rg
-326.909 473.041 14.6526 0.2005 re
-f*
-0.498 0 0.482 rg
-327.511 473.241 13.4482 0.2006 re
-f*
-0.498 0 0.482 rg
-328.113 473.442 12.4447 0.2005 re
-f*
-0.498 0 0.482 rg
-328.715 473.642 11.2403 0.2006 re
-f*
-0.498 0 0.482 rg
-329.518 473.843 9.8352 0.2005 re
-f*
-0.498 0 0.482 rg
-330.321 474.043 8.2296 0.2006 re
-f*
-0.498 0 0.482 rg
-331.525 474.244 6.0216 0.2006 re
-f*
-0.498 0 0.482 rg
-333.533 474.445 2.2079 0.2005 re
-f*
-Q
-showpage
-pdfEndPage
-end
-%%Trailer
-cleartomark
-countdictstack
-exch sub { end } repeat
-restore
-%%EOF
-grestore
diff --git a/conf/logo.png b/conf/logo.png
deleted file mode 100644
index 1e415e6..0000000
--- a/conf/logo.png
+++ /dev/null
Binary files differ
diff --git a/conf/lpr b/conf/lpr
deleted file mode 100644
index fa1c313..0000000
--- a/conf/lpr
+++ /dev/null
@@ -1 +0,0 @@
-lpr -h
diff --git a/conf/maxsearchrecordsperpage b/conf/maxsearchrecordsperpage
deleted file mode 100644
index 29d6383..0000000
--- a/conf/maxsearchrecordsperpage
+++ /dev/null
@@ -1 +0,0 @@
-100
diff --git a/conf/payment_receipt_email b/conf/payment_receipt_email
deleted file mode 100644
index 1a0a758..0000000
--- a/conf/payment_receipt_email
+++ /dev/null
@@ -1,26 +0,0 @@
-
-{ $date }
-
-Dear { $name },
-
-This message is to inform you that your payment of ${ $paid } has been
-received.
-
-Payment ID: { $paynum }
-Date: { $date }
-Amount: { $paid }
-Type: { $payby } # { $payinfo }
-
-{
- if ( $balance > 0 ) {
- $OUT .= "Your current balance is now \$$balance.\n\n";
- } elsif ( $balance < 0 ) {
- $OUT .= 'You have a credit balance of $'. sprintf("%.2f",0-$balance).
- ".\n".
- "Future charges will be deducted from this balance before billing ".
- "you again.\n\n";
-
- }
-}
-Thank you for your business.
-
diff --git a/conf/report_template b/conf/report_template
deleted file mode 100644
index 9c6bb2b..0000000
--- a/conf/report_template
+++ /dev/null
@@ -1,14 +0,0 @@
-{ sprintf("%-19s", "Page $page of $total_pages"); } {
- my $spacer = (40 - length($title) > 0) ? 40 - length($title) : 0;
- $spacer = int($spacer / 2);
- my $titlelen = 40 - $spacer;
- sprintf("%*s%-*s", $spacer, " ", $titlelen, $title);
- } { use Date::Format; time2str("%x %X", $date); }
-
-
-{
- join("\n", map { $_ } report_lines(57));
-}
-
-
-
diff --git a/conf/shells b/conf/shells
deleted file mode 100644
index a41fc62..0000000
--- a/conf/shells
+++ /dev/null
@@ -1,5 +0,0 @@
-
-/bin/sh
-/bin/csh
-/bin/bash
-/bin/false
diff --git a/conf/show-msgcat-codes b/conf/show-msgcat-codes
deleted file mode 100644
index e69de29..0000000
--- a/conf/show-msgcat-codes
+++ /dev/null
diff --git a/conf/smtpmachine b/conf/smtpmachine
deleted file mode 100644
index 2fbb50c..0000000
--- a/conf/smtpmachine
+++ /dev/null
@@ -1 +0,0 @@
-localhost
diff --git a/conf/soadefaultttl b/conf/soadefaultttl
deleted file mode 100644
index 92f616f..0000000
--- a/conf/soadefaultttl
+++ /dev/null
@@ -1 +0,0 @@
-259200
diff --git a/conf/soaexpire b/conf/soaexpire
deleted file mode 100644
index d235b91..0000000
--- a/conf/soaexpire
+++ /dev/null
@@ -1 +0,0 @@
-3600000
diff --git a/conf/soarefresh b/conf/soarefresh
deleted file mode 100644
index 9f35f8e..0000000
--- a/conf/soarefresh
+++ /dev/null
@@ -1 +0,0 @@
-10800
diff --git a/conf/soaretry b/conf/soaretry
deleted file mode 100644
index bb08106..0000000
--- a/conf/soaretry
+++ /dev/null
@@ -1 +0,0 @@
-1800
diff --git a/debian/README.Debian b/debian/README.Debian
deleted file mode 100644
index b51eee8..0000000
--- a/debian/README.Debian
+++ /dev/null
@@ -1,6 +0,0 @@
-freeside for Debian
--------------------
-
-<possible notes regarding this package - if none, delete this file>
-
- -- Ivan Kohler <ivan-debian@420.am>, Thu, 12 Apr 2001 15:49:17 -0700
diff --git a/debian/changelog b/debian/changelog
deleted file mode 100644
index d8283b5..0000000
--- a/debian/changelog
+++ /dev/null
@@ -1,9 +0,0 @@
-freeside (1.4.1-1) unstable; urgency=low
-
- * Initial Release.
-
- -- Ivan Kohler <ivan-debian@420.am> Thu, 12 Apr 2001 15:49:17 -0700
-
-Local variables:
-mode: debian-changelog
-End:
diff --git a/debian/conffiles.ex b/debian/conffiles.ex
deleted file mode 100644
index 8686d2a..0000000
--- a/debian/conffiles.ex
+++ /dev/null
@@ -1,7 +0,0 @@
-#
-# If you want to use this conffile, remove all comments and put files that
-# you want dpkg to process here using their absolute pathnames.
-# See section 9.1 of the packaging manual.
-#
-# for example:
-# /etc/freeside/freeside.conf
diff --git a/debian/control b/debian/control
deleted file mode 100644
index d7873b2..0000000
--- a/debian/control
+++ /dev/null
@@ -1,59 +0,0 @@
-Source: freeside
-Section: admin
-Priority: optional
-Maintainer: Ivan Kohler <ivan-debian@420.am>
-Build-Depends: debhelper (>> 3.0.0)
-Standards-Version: 3.5.2
-
-Package: freeside
-Architecture: any
-Depends: freeside-lib
-Recommends: freeside-doc, freeside-ui-web
-Suggests: freeside-selfservice-server
-Description: Billing and administration package for ISPs.
- Freeside is a billing and account administration package for ISPs. It stores
- customer information in an SQL database, and will update UNIX passwd and
- shadow files, RADIUS users file and SQL databases, and configuration for
- sendmail, qmail, BIND and/or Apache. It is also useful as a central database
- of accounts/domains/web-space for a large number of machines.
-
-Package: freeside-doc
-Architecture: all
-Description: Documentation for freeside
- This package provides the HTML documentation for Freeside, a billing and
- account administration package for ISPs.
-
-Package: freeside-lib
-Architecture: all
-Depends: libmime-base64-perl, libdigest-md5-perl, liburi-perl, libhtml-tagset-perl, libhtml-parser-perl, libnet-perl, liblocale-codes-perl, libnet-whois-perl, libwww-perl, libbusiness-creditcard-perl, libmailtools-perl, libtimedate-perl, libdate-manip-perl, libfile-counterfile-perl, libfreezethaw-perl, libtext-template-perl, libdbd-pg-perl, libdbix-datasource-perl, libdbix-dbschema-perl, libnet-ssh-perl, libnet-scp-perl, libapache-asp-perl, libtie-ixhash-perl, libtime-duration-perl, libhtml-widgets-selectlayers-perl, libstorable-perl, libapache-dbi-perl
-Description: Freeside libraries and extension API
- This package contains the libraries which implement the business logic and
- backend functions of Freeside, a billing and account administration package
- for ISPs. This package also contains the manual pages for the library API.
- (? like a libmodule-perl package)
-
-Package: freeside-ui-web
-Architecture: all
-Depends: libhtml-mason-perl, libstring-approx-perl, freeside-lib, libapache-mod-perl|apache-perl
-Suggests: libapache-mod-ssl|apache-ssl
-Description: Easy-to-use web interface for Freeside
- This package contains the web interface for Freeside, a billing and account
- administration package for ISPs. This is what sales or support folks will
- typically use to add new accounts, edit exiting accounts and so on.
-
-Package: freeside-selfservice-server
-Architecture: all
-Depends: freeside-lib, libnet-ssh-perl, ssh
-Description:
- This package contains the server side of the customer self-service interface.
- It is installed on a private backend machine, and opens an outgoing ssh
- connection to one or more public web server(s).
-
-Package: freeside-selfservice-client
-Architecture: all
-Depends: libstorable-perl, libhttp-browserdetect-perl, libbusiness-creditcard-perl, ssh
-Description:
- This package contains the client side of the customer self-service interface.
- It is typically installed on a public webserver and interfaces with
- freeside-selfservice-server installed on a private backend machine.
-
diff --git a/debian/copyright b/debian/copyright
deleted file mode 100644
index e148fce..0000000
--- a/debian/copyright
+++ /dev/null
@@ -1,10 +0,0 @@
-This package was debianized by Ivan Kohler <ivan-debian@420.am> on
-Thu, 12 Apr 2001 15:49:17 -0700.
-
-It was downloaded from <fill in ftp site>
-
-Upstream Author(s): <put author(s) name and email here>
-
-Copyright:
-
-<Must follow here>
diff --git a/debian/cron.d.ex b/debian/cron.d.ex
deleted file mode 100644
index 61c074d..0000000
--- a/debian/cron.d.ex
+++ /dev/null
@@ -1,4 +0,0 @@
-#
-# Regular cron jobs for the freeside package
-#
-0 4 * * * root freeside_maintenance
diff --git a/debian/dirs b/debian/dirs
deleted file mode 100644
index ca882bb..0000000
--- a/debian/dirs
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/bin
-usr/sbin
diff --git a/debian/docs b/debian/docs
deleted file mode 100644
index 16636bd..0000000
--- a/debian/docs
+++ /dev/null
@@ -1,3 +0,0 @@
-INSTALL
-README
-TODO
diff --git a/debian/ex.doc-base.package b/debian/ex.doc-base.package
deleted file mode 100644
index 2a055d1..0000000
--- a/debian/ex.doc-base.package
+++ /dev/null
@@ -1,22 +0,0 @@
-Document: freeside
-Title: Debian freeside Manual
-Author: <insert document author here>
-Abstract: This manual describes what freeside is
- and how it can be used to
- manage online manuals on Debian systems.
-Section: unknown
-
-Format: debiandoc-sgml
-Files: /usr/share/doc/freeside/freeside.sgml.gz
-
-Format: postscript
-Files: /usr/share/doc/freeside/freeside.ps.gz
-
-Format: text
-Files: /usr/share/doc/freeside/freeside.text.gz
-
-Format: HTML
-Index: /usr/share/doc/freeside/html/index.html
-Files: /usr/share/doc/freeside/html/*.html
-
-
diff --git a/debian/freeside-doc.docs b/debian/freeside-doc.docs
deleted file mode 100644
index 299950c..0000000
--- a/debian/freeside-doc.docs
+++ /dev/null
@@ -1,2 +0,0 @@
-#DOCS#
-
diff --git a/debian/freeside-doc.files b/debian/freeside-doc.files
deleted file mode 100644
index 299950c..0000000
--- a/debian/freeside-doc.files
+++ /dev/null
@@ -1,2 +0,0 @@
-#DOCS#
-
diff --git a/debian/init.d.ex b/debian/init.d.ex
deleted file mode 100644
index 5791049..0000000
--- a/debian/init.d.ex
+++ /dev/null
@@ -1,70 +0,0 @@
-#! /bin/sh
-#
-# skeleton example file to build /etc/init.d/ scripts.
-# This file should be used to construct scripts for /etc/init.d.
-#
-# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
-# Modified for Debian GNU/Linux
-# by Ian Murdock <imurdock@gnu.ai.mit.edu>.
-#
-# Version: @(#)skeleton 1.8 03-Mar-1998 miquels@cistron.nl
-#
-# This file was automatically customized by dh-make on Thu, 12 Apr 2001 15:49:17 -0700
-
-PATH=/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=/usr/sbin/freeside
-NAME=freeside
-DESC=freeside
-
-test -f $DAEMON || exit 0
-
-set -e
-
-case "$1" in
- start)
- echo -n "Starting $DESC: "
- start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
- --exec $DAEMON
- echo "$NAME."
- ;;
- stop)
- echo -n "Stopping $DESC: "
- start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
- --exec $DAEMON
- echo "$NAME."
- ;;
- #reload)
- #
- # If the daemon can reload its config files on the fly
- # for example by sending it SIGHUP, do it here.
- #
- # If the daemon responds to changes in its config file
- # directly anyway, make this a do-nothing entry.
- #
- # echo "Reloading $DESC configuration files."
- # start-stop-daemon --stop --signal 1 --quiet --pidfile \
- # /var/run/$NAME.pid --exec $DAEMON
- #;;
- restart|force-reload)
- #
- # If the "reload" option is implemented, move the "force-reload"
- # option to the "reload" entry above. If not, "force-reload" is
- # just the same as "restart".
- #
- echo -n "Restarting $DESC: "
- start-stop-daemon --stop --quiet --pidfile \
- /var/run/$NAME.pid --exec $DAEMON
- sleep 1
- start-stop-daemon --start --quiet --pidfile \
- /var/run/$NAME.pid --exec $DAEMON
- echo "$NAME."
- ;;
- *)
- N=/etc/init.d/$NAME
- # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
- echo "Usage: $N {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/debian/manpage.1.ex b/debian/manpage.1.ex
deleted file mode 100644
index ec542bb..0000000
--- a/debian/manpage.1.ex
+++ /dev/null
@@ -1,60 +0,0 @@
-.\" Hey, EMACS: -*- nroff -*-
-.\" First parameter, NAME, should be all caps
-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
-.\" other parameters are allowed: see man(7), man(1)
-.TH FREESIDE SECTION "April 12, 2001"
-.\" Please adjust this date whenever revising the manpage.
-.\"
-.\" Some roff macros, for reference:
-.\" .nh disable hyphenation
-.\" .hy enable hyphenation
-.\" .ad l left justify
-.\" .ad b justify to both left and right margins
-.\" .nf disable filling
-.\" .fi enable filling
-.\" .br insert line break
-.\" .sp <n> insert n+1 empty lines
-.\" for manpage-specific macros, see man(7)
-.SH NAME
-freeside \- program to do something
-.SH SYNOPSIS
-.B freeside
-.RI [ options ] " files" ...
-.br
-.B bar
-.RI [ options ] " files" ...
-.SH DESCRIPTION
-This manual page documents briefly the
-.B freeside
-and
-.B bar
-commands.
-This manual page was written for the Debian GNU/Linux distribution
-because the original program does not have a manual page.
-Instead, it has documentation in the GNU Info format; see below.
-.PP
-.\" TeX users may be more comfortable with the \fB<whatever>\fP and
-.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
-.\" respectively.
-\fBfreeside\fP is a program that...
-.SH OPTIONS
-These programs follow the usual GNU command line syntax, with long
-options starting with two dashes (`-').
-A summary of options is included below.
-For a complete description, see the Info files.
-.TP
-.B \-h, \-\-help
-Show summary of options.
-.TP
-.B \-v, \-\-version
-Show version of program.
-.SH SEE ALSO
-.BR bar (1),
-.BR baz (1).
-.br
-The programs are documented fully by
-.IR "The Rise and Fall of a Fooish Bar" ,
-available via the Info system.
-.SH AUTHOR
-This manual page was written by Ivan Kohler <ivan-debian@420.am>,
-for the Debian GNU/Linux system (but may be used by others).
diff --git a/debian/manpage.sgml.ex b/debian/manpage.sgml.ex
deleted file mode 100644
index 9bc3a86..0000000
--- a/debian/manpage.sgml.ex
+++ /dev/null
@@ -1,143 +0,0 @@
-<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
-
-<!-- Process this file with docbook-to-man to generate an nroff manual
- page: `docbook-to-man manpage.sgml > manpage.1'. You may view
- the manual page with: `docbook-to-man manpage.sgml | nroff -man |
- less'. A typical entry in a Makefile or Makefile.am is:
-
-manpage.1: manpage.sgml
- docbook-to-man $< > $@
- -->
-
- <!-- Fill in your name for FIRSTNAME and SURNAME. -->
- <!ENTITY dhfirstname "<firstname>FIRSTNAME</firstname>">
- <!ENTITY dhsurname "<surname>SURNAME</surname>">
- <!-- Please adjust the date whenever revising the manpage. -->
- <!ENTITY dhdate "<date>April 12, 2001</date>">
- <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
- allowed: see man(7), man(1). -->
- <!ENTITY dhsection "<manvolnum>SECTION</manvolnum>">
- <!ENTITY dhemail "<email>ivan-debian@420.am</email>">
- <!ENTITY dhusername "Ivan Kohler">
- <!ENTITY dhucpackage "<refentrytitle>FREESIDE</refentrytitle>">
- <!ENTITY dhpackage "freeside">
-
- <!ENTITY debian "<productname>Debian GNU/Linux</productname>">
- <!ENTITY gnu "<acronym>GNU</acronym>">
-]>
-
-<refentry>
- <refentryinfo>
- <address>
- &dhemail;
- </address>
- <author>
- &dhfirstname;
- &dhsurname;
- </author>
- <copyright>
- <year>2001</year>
- <holder>&dhusername;</holder>
- </copyright>
- &dhdate;
- </refentryinfo>
- <refmeta>
- &dhucpackage;
-
- &dhsection;
- </refmeta>
- <refnamediv>
- <refname>&dhpackage;</refname>
-
- <refpurpose>program to do something</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <cmdsynopsis>
- <command>&dhpackage;</command>
-
- <arg><option>-e <replaceable>this</replaceable></option></arg>
-
- <arg><option>--example <replaceable>that</replaceable></option></arg>
- </cmdsynopsis>
- </refsynopsisdiv>
- <refsect1>
- <title>DESCRIPTION</title>
-
- <para>This manual page documents briefly the
- <command>&dhpackage;</command> and <command>bar</command>
- commands.</para>
-
- <para>This manual page was written for the &debian; distribution
- because the original program does not have a manual page.
- Instead, it has documentation in the &gnu;
- <application>Info</application> format; see below.</para>
-
- <para><command>&dhpackage;</command> is a program that...</para>
-
- </refsect1>
- <refsect1>
- <title>OPTIONS</title>
-
- <para>These programs follow the usual GNU command line syntax,
- with long options starting with two dashes (`-'). A summary of
- options is included below. For a complete description, see the
- <application>Info</application> files.</para>
-
- <variablelist>
- <varlistentry>
- <term><option>-h</option>
- <option>--help</option>
- </term>
- <listitem>
- <para>Show summary of options.</para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><option>-v</option>
- <option>--version</option>
- </term>
- <listitem>
- <para>Show version of program.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsect1>
- <refsect1>
- <title>SEE ALSO</title>
-
- <para>bar (1), baz (1).</para>
-
- <para>The programs are documented fully by <citetitle>The Rise and
- Fall of a Fooish Bar</citetitle> available via the
- <application>Info</application> system.</para>
- </refsect1>
- <refsect1>
- <title>AUTHOR</title>
-
- <para>This manual page was written by &dhusername; &dhemail; for
- the &debian; system (but may be used by others). Permission is
- granted to copy, distribute and/or modify this document under
- the terms of the <acronym>GNU</acronym> Free Documentation
- License, Version 1.1 or any later version published by the Free
- Software Foundation; with no Invariant Sections, no Front-Cover
- Texts and no Back-Cover Texts.</para>
-
- </refsect1>
-</refentry>
-
-<!-- Keep this comment at the end of the file
-Local variables:
-mode: sgml
-sgml-omittag:t
-sgml-shorttag:t
-sgml-minimize-attributes:nil
-sgml-always-quote-attributes:t
-sgml-indent-step:2
-sgml-indent-data:t
-sgml-parent-document:nil
-sgml-default-dtd-file:nil
-sgml-exposed-tags:nil
-sgml-local-catalogs:nil
-sgml-local-ecat-files:nil
-End:
--->
diff --git a/debian/menu.ex b/debian/menu.ex
deleted file mode 100644
index ddc947e..0000000
--- a/debian/menu.ex
+++ /dev/null
@@ -1,2 +0,0 @@
-?package(freeside):needs=X11|text|vc|wm section=Apps/see-menu-manual\
- title="freeside" command="/usr/bin/freeside"
diff --git a/debian/postinst.ex b/debian/postinst.ex
deleted file mode 100644
index c4d4bfb..0000000
--- a/debian/postinst.ex
+++ /dev/null
@@ -1,47 +0,0 @@
-#! /bin/sh
-# postinst script for freeside
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <postinst> `configure' <most-recently-configured-version>
-# * <old-postinst> `abort-upgrade' <new version>
-# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
-# <new-version>
-# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
-# <failed-install-package> <version> `removing'
-# <conflicting-package> <version>
-# for details, see /usr/share/doc/packaging-manual/
-#
-# quoting from the policy:
-# Any necessary prompting should almost always be confined to the
-# post-installation script, and should be protected with a conditional
-# so that unnecessary prompting doesn't happen if a package's
-# installation fails and the `postinst' is called with `abort-upgrade',
-# `abort-remove' or `abort-deconfigure'.
-
-case "$1" in
- configure)
-
- ;;
-
- abort-upgrade|abort-remove|abort-deconfigure)
-
- ;;
-
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/postrm.ex b/debian/postrm.ex
deleted file mode 100644
index bed8abd..0000000
--- a/debian/postrm.ex
+++ /dev/null
@@ -1,36 +0,0 @@
-#! /bin/sh
-# postrm script for freeside
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <postrm> `remove'
-# * <postrm> `purge'
-# * <old-postrm> `upgrade' <new-version>
-# * <new-postrm> `failed-upgrade' <old-version>
-# * <new-postrm> `abort-install'
-# * <new-postrm> `abort-install' <old-version>
-# * <new-postrm> `abort-upgrade' <old-version>
-# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
-
-
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 0
-
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-
diff --git a/debian/preinst.ex b/debian/preinst.ex
deleted file mode 100644
index 0b42bb2..0000000
--- a/debian/preinst.ex
+++ /dev/null
@@ -1,42 +0,0 @@
-#! /bin/sh
-# preinst script for freeside
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <new-preinst> `install'
-# * <new-preinst> `install' <old-version>
-# * <new-preinst> `upgrade' <old-version>
-# * <old-preinst> `abort-upgrade' <new-version>
-#
-# For details see /usr/share/doc/packaging-manual/
-
-case "$1" in
- install|upgrade)
-# if [ "$1" = "upgrade" ]
-# then
-# start-stop-daemon --stop --quiet --oknodo \
-# --pidfile /var/run/freeside.pid \
-# --exec /usr/sbin/freeside 2>/dev/null || true
-# fi
- ;;
-
- abort-upgrade)
- ;;
-
- *)
- echo "preinst called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/prerm.ex b/debian/prerm.ex
deleted file mode 100644
index ebb87c5..0000000
--- a/debian/prerm.ex
+++ /dev/null
@@ -1,37 +0,0 @@
-#! /bin/sh
-# prerm script for freeside
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <prerm> `remove'
-# * <old-prerm> `upgrade' <new-version>
-# * <new-prerm> `failed-upgrade' <old-version>
-# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
-# * <deconfigured's-prerm> `deconfigure' `in-favour'
-# <package-being-installed> <version> `removing'
-# <conflicting-package> <version>
-# for details, see /usr/share/doc/packaging-manual/
-
-case "$1" in
- remove|upgrade|deconfigure)
-# install-info --quiet --remove /usr/info/freeside.info.gz
- ;;
- failed-upgrade)
- ;;
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 0
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff --git a/debian/rules b/debian/rules
deleted file mode 100755
index 71016c4..0000000
--- a/debian/rules
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/make -f
-# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 by Joey Hess.
-#
-# This version is for a hypothetical package that builds an
-# architecture-dependant package, as well as an architecture-independent
-# package.
-
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-# This is the debhelper compatability version to use.
-export DH_COMPAT=3
-
-configure: configure-stamp
-configure-stamp:
- dh_testdir
- # Add here commands to configure the package.
-
-
- touch configure-stamp
-
-build: configure-stamp build-stamp
-build-stamp:
- dh_testdir
-
- # Add here commands to compile the package.
- $(MAKE)
-
- touch build-stamp
-
-clean:
- dh_testdir
- dh_testroot
- rm -f build-stamp configure-stamp
-
- # Add here commands to clean up after the build process.
- -$(MAKE) clean
-
- dh_clean
-
-install: DH_OPTIONS=
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
-
- # Add here commands to install the package into debian/freeside.
- $(MAKE) install DESTDIR=$(CURDIR)/debian/freeside
-
- dh_movefiles
-
-# Build architecture-independent files here.
-# Pass -i to all debhelper commands in this target to reduce clutter.
-binary-indep: build install
- dh_testdir -i
- dh_testroot -i
-# dh_installdebconf -i
- dh_installdocs -i
- dh_installexamples -i
- dh_installmenu -i
-# dh_installlogrotate -i
-# dh_installemacsen -i
-# dh_installpam -i
-# dh_installmime -i
-# dh_installinit -i
- dh_installcron -i
-# dh_installman -i
- dh_installinfo -i
-# dh_undocumented -i
- dh_installchangelogs -i
- dh_link -i
- dh_compress -i
- dh_fixperms -i
- dh_installdeb -i
-# dh_perl -i
- dh_gencontrol -i
- dh_md5sums -i
- dh_builddeb -i
-
-# Build architecture-dependent files here.
-binary-arch: build install
- dh_testdir -a
- dh_testroot -a
-# dh_installdebconf -a
- dh_installdocs -a
- dh_installexamples -a
- dh_installmenu -a
-# dh_installlogrotate -a
-# dh_installemacsen -a
-# dh_installpam -a
-# dh_installmime -a
-# dh_installinit -a
- dh_installcron -a
-# dh_installman -a
- dh_installinfo -a
-# dh_undocumented -a
- dh_installchangelogs -a
- dh_strip -a
- dh_link -a
- dh_compress -a
- dh_fixperms -a
-# dh_makeshlibs -a
- dh_installdeb -a
-# dh_perl -a
- dh_shlibdeps -a
- dh_gencontrol -a
- dh_md5sums -a
- dh_builddeb -a
-
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/debian/watch.ex b/debian/watch.ex
deleted file mode 100644
index 3f57ae0..0000000
--- a/debian/watch.ex
+++ /dev/null
@@ -1,5 +0,0 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# Site Directory Pattern Version Script
-sunsite.unc.edu /pub/Linux/Incoming freeside-(.*)\.tar\.gz debian uupdate
diff --git a/eg/TEMPLATE_cust_main.import b/eg/TEMPLATE_cust_main.import
deleted file mode 100755
index e91a2f1..0000000
--- a/eg/TEMPLATE_cust_main.import
+++ /dev/null
@@ -1,198 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Template for importing legacy customer data
-#
-# $Id: TEMPLATE_cust_main.import,v 1.4 2001-08-21 02:44:47 ivan Exp $
-
-use strict;
-use Date::Parse;
-use FS::UID qw(adminsuidsetup datasrc);
-use FS::Record qw(fields qsearch qsearchs);
-use FS::cust_main;
-use FS::cust_pkg;
-use FS::cust_svc;
-use FS::svc_acct;
-use FS::pkg_svc;
-
-my $user = shift or die &usage;
-adminsuidsetup $user;
-
-# use these for the imported cust_main records (unless you have these in legacy
-# data)
-my($agentnum)=4;
-my($refnum)=5;
-
-# map from legacy billing data to pkgpart, maps imported field
-# LegacyBillingData to pkgpart. your names and pkgparts will be different
-my(%pkgpart)=(
- 'Employee' => 10,
- 'Business' => 11,
- 'Individual' => 12,
- 'Basic PPP' => 13,
- 'Slave' => 14,
- 'Co-Located Server' => 15,
- 'Virtual Web' => 16,
- 'Perk Mail' => 17,
- 'Credit Hold' => 18,
-);
-
-my($file)="legacy_file";
-
-open(CLIENT,$file)
- or die "Can't open $file: $!";
-
-# put a tab-separated header atop the file, or define @fields
-# (use these names or change them below)
-#
-# for cust_main
-# custnum - unique
-# last - (name)
-# first - (name)
-# company
-# address1
-# address2
-# city
-# state
-# zip
-# country
-# daytime - (phone)
-# night - (phone)
-# fax
-# payby - CARD, BILL or COMP
-# payinfo - Credit card #, P.O. # or COMP authorization
-# paydate - Expiration
-# tax - 'Y' for tax exempt
-# for cust_pkg
-# LegacyBillingData - maps via %pkgpart above to a pkgpart
-# for svc_acct
-# username
-
-my($header);
-$header=<CLIENT>;
-chop $header;
-my(@fields)=map { /^\s*(.*[^\s]+)\s*$/; $1 } split(/\t/,$header);
-#print join("\n",@fields);
-
-my($error);
-my($link,$line)=(0,0);
-while (<CLIENT>) {
- chop;
- next if /^[\s\t]*$/; #skip any blank lines
-
- #define %svc hash for this record
- my(@record)=split(/\t/);
- my(%svc);
- foreach (@fields) {
- $svc{$_}=shift @record;
- }
-
- # might need to massage some data like this
- $svc{'payby'} =~ s/^Credit Card$/CARD/io;
- $svc{'payby'} =~ s/^Check$/BILL/io;
- $svc{'payby'} =~ s/^Cash$/BILL/io;
- $svc{'payby'} =~ s/^$/BILL/o;
- $svc{'First'} =~ s/&/and/go;
- $svc{'Zip'} =~ s/\s+$//go;
-
- my($cust_main) = new FS::cust_main ( {
- 'custnum' => $svc{'custnum'},
- 'agentnum' => $agentnum,
- 'last' => $svc{'last'},
- 'first' => $svc{'first'},
- 'company' => $svc{'company'},
- 'address1' => $svc{'address1'},
- 'address2' => $svc{'address2'},
- 'city' => $svc{'city'},
- 'state' => $svc{'state'},
- 'zip' => $svc{'zip'},
- 'country' => $svc{'country'},
- 'daytime' => $svc{'daytime'},
- 'night' => $svc{'night'},
- 'fax' => $svc{'fax'},
- 'payby' => $svc{'payby'},
- 'payinfo' => $svc{'payinfo'},
- 'paydate' => $svc{'paydate'},
- 'payname' => $svc{'payname'},
- 'tax' => $svc{'tax'},
- 'refnum' => $refnum,
- } );
-
- $error=$cust_main->insert;
-
- if ( $error ) {
- warn $cust_main->_dump;
- warn map "$_: ". $svc{$_}. "|\n", keys %svc;
- die $error;
- }
-
- my($cust_pkg)=new FS::cust_pkg ( {
- 'custnum' => $svc{'custnum'},
- 'pkgpart' => $pkgpart{$svc{'LegacyBillingData'}},
- 'setup' => '',
- 'bill' => '',
- 'susp' => '',
- 'expire' => '',
- 'cancel' => '',
- } );
-
- $error=$cust_pkg->insert;
- if ( $error ) {
- warn $svc{'LegacyBillingData'};
- die $error;
- }
-
- unless ( $svc{'username'} ) {
- warn "Empty login";
- } else {
- #find svc_acct record (imported with bin/svc_acct.import) for this username
- my($svc_acct)=qsearchs('svc_acct',{'username'=>$svc{'username'}});
- unless ( $svc_acct ) {
- warn "username ", $svc{'username'}, " not found\n";
- } else {
- #link to the cust_pkg record we created above
-
- #find cust_svc record for this svc_acct record
- my($o_cust_svc)=qsearchs('cust_svc',{
- 'svcnum' => $svc_acct->svcnum,
- 'pkgnum' => '',
- } );
- unless ( $o_cust_svc ) {
- warn "No unlinked cust_svc for svcnum ", $svc_acct->svcnum;
- } else {
-
- #make sure this svcpart is in pkgpart
- my($pkg_svc)=qsearchs('pkg_svc',{
- 'pkgpart' => $pkgpart{$svc{'LegacyBillingData'}},
- 'svcpart' => $o_cust_svc->svcpart,
- 'quantity' => 1,
- });
- unless ( $pkg_svc ) {
- warn "login ", $svc{'username'}, ": No svcpart ", $o_cust_svc->svcpart,
- " for pkgpart ", $pkgpart{$svc{'Acct. Type'}}, "\n" ;
- } else {
-
- #create new cust_svc record linked to cust_pkg record
- my($n_cust_svc) = new FS::cust_svc ({
- 'svcnum' => $o_cust_svc->svcnum,
- 'pkgnum' => $cust_pkg->pkgnum,
- 'svcpart' => $pkg_svc->svcpart,
- });
- my($error) = $n_cust_svc->replace($o_cust_svc);
- die $error if $error;
- $link++;
- }
- }
- }
- }
-
- $line++;
-
-}
-
-warn "\n$link of $line lines linked\n";
-
-# ---
-
-sub usage {
- die "Usage:\n\n cust_main.import user\n";
-}
diff --git a/eg/export_template.pm b/eg/export_template.pm
deleted file mode 100644
index 2830ce3..0000000
--- a/eg/export_template.pm
+++ /dev/null
@@ -1,106 +0,0 @@
-package FS::part_export::myexport;
-
-use vars qw(@ISA %info);
-use Tie::IxHash;
-use FS::part_export;
-
-@ISA = qw(FS::part_export);
-
-tie my %options, 'Tie::IxHash',
- 'regular_option' => { label => 'Option description', default => 'value' },
- 'select_option' => { label => 'Select option description',
- type => 'select', options=>[qw(chocolate vanilla)],
- default => 'vanilla',
- },
- 'textarea_option' => { label => 'Textarea option description',
- type => 'textarea',
- default => 'Default text.',
- },
- 'checkbox_option' => { label => 'Checkbox label', type => 'checkbox' },
-;
-
-%info = (
- 'svc' => 'svc_acct',
- #'svc' => [qw( svc_acct svc_forward )],
- 'desc' =>
- 'Export short description',
- 'options' => \%options,
- 'nodomain' => 'Y',
- 'notes' => <<'END'
-HTML notes about this export.
-END
-
-sub rebless { shift; }
-
-sub _export_insert {
- my($self, $svc_something) = (shift, shift);
- $err_or_queue = $self->myexport_queue( $svc_something->svcnum, 'insert',
- $svc_something->username, $svc_something->_password );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_replace {
- my( $self, $new, $old ) = (shift, shift, shift);
- #return "can't change username with myexport"
- # if $old->username ne $new->username;
- #return '' unless $old->_password ne $new->_password;
- $err_or_queue = $self->myexport_queue( $new->svcnum,
- 'replace', $new->username, $new->_password );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_delete {
- my( $self, $svc_something ) = (shift, shift);
- $err_or_queue = $self->myexport_queue( $svc_something->svcnum,
- 'delete', $svc_something->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-#these two are optional
-# fallback for svc_acct will change and restore password
-sub _export_suspend {
- my( $self, $svc_something ) = (shift, shift);
- $err_or_queue = $self->myexport_queue( $svc_something->svcnum,
- 'suspend', $svc_something->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-sub _export_unsuspend {
- my( $self, $svc_something ) = (shift, shift);
- $err_or_queue = $self->myexport_queue( $svc_something->svcnum,
- 'unsuspend', $svc_something->username );
- ref($err_or_queue) ? '' : $err_or_queue;
-}
-
-###
-
-#a good idea to queue anything that could fail or take any time
-sub myexport_queue {
- my( $self, $svcnum, $method ) = (shift, shift, shift);
- my $queue = new FS::queue {
- 'svcnum' => $svcnum,
- 'job' => "FS::part_export::myexport::myexport_$method",
- };
- $queue->insert( @_ ) or $queue;
-}
-
-sub myexport_insert { #subroutine, not method
- my( $username, $password ) = @_;
- #do things with $username and $password
-}
-
-sub myexport_replace { #subroutine, not method
-}
-
-sub myexport_delete { #subroutine, not method
- my( $username ) = @_;
- #do things with $username
-}
-
-sub myexport_suspend { #subroutine, not method
-}
-
-sub myexport_unsuspend { #subroutine, not method
-}
-
-
diff --git a/eg/table_template-svc.pm b/eg/table_template-svc.pm
deleted file mode 100644
index 7f7ef4b..0000000
--- a/eg/table_template-svc.pm
+++ /dev/null
@@ -1,161 +0,0 @@
-package FS::svc_table;
-
-use strict;
-use vars qw(@ISA);
-#use FS::Record qw( qsearch qsearchs );
-use FS::svc_Common;
-use FS::cust_svc;
-
-@ISA = qw(FS::svc_Common);
-
-=head1 NAME
-
-FS::table_name - Object methods for table_name records
-
-=head1 SYNOPSIS
-
- use FS::table_name;
-
- $record = new FS::table_name \%hash;
- $record = new FS::table_name { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
- $error = $record->suspend;
-
- $error = $record->unsuspend;
-
- $error = $record->cancel;
-
-=head1 DESCRIPTION
-
-An FS::table_name object represents an example. FS::table_name inherits from
-FS::svc_Common. The following fields are currently supported:
-
-=over 4
-
-=item field - description
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-sub table { 'table_name'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be
-defined. An FS::cust_svc record will be created and inserted.
-
-=cut
-
-sub insert {
- my $self = shift;
- my $error;
-
- $error = $self->SUPER::insert;
- return $error if $error;
-
- '';
-}
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-sub delete {
- my $self = shift;
- my $error;
-
- $error = $self->SUPER::delete;
- return $error if $error;
-
- '';
-}
-
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-sub replace {
- my ( $new, $old ) = ( shift, shift );
- my $error;
-
- $error = $new->SUPER::replace($old);
- return $error if $error;
-
- '';
-}
-
-=item suspend
-
-Called by the suspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item unsuspend
-
-Called by the unsuspend method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item cancel
-
-Called by the cancel method of FS::cust_pkg (see L<FS::cust_pkg>).
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and repalce methods.
-
-=cut
-
-sub check {
- my $self = shift;
-
- my $x = $self->setfixed;
- return $x unless ref($x);
- my $part_svc = $x;
-
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::svc_Common>, L<FS::Record>, L<FS::cust_svc>, L<FS::part_svc>,
-L<FS::cust_pkg>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/eg/table_template.pm b/eg/table_template.pm
deleted file mode 100644
index 5da6f3b..0000000
--- a/eg/table_template.pm
+++ /dev/null
@@ -1,118 +0,0 @@
-package FS::table_name;
-
-use strict;
-use vars qw( @ISA );
-use FS::Record qw( qsearch qsearchs );
-
-@ISA = qw(FS::Record);
-
-=head1 NAME
-
-FS::table_name - Object methods for table_name records
-
-=head1 SYNOPSIS
-
- use FS::table_name;
-
- $record = new FS::table_name \%hash;
- $record = new FS::table_name { 'column' => 'value' };
-
- $error = $record->insert;
-
- $error = $new_record->replace($old_record);
-
- $error = $record->delete;
-
- $error = $record->check;
-
-=head1 DESCRIPTION
-
-An FS::table_name object represents an example. FS::table_name inherits from
-FS::Record. The following fields are currently supported:
-
-=over 4
-
-=item field - description
-
-=back
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-Creates a new example. To add the example to the database, see L<"insert">.
-
-Note that this stores the hash reference, not a distinct copy of the hash it
-points to. You can ask the object for a copy with the I<hash> method.
-
-=cut
-
-# the new method can be inherited from FS::Record, if a table method is defined
-
-sub table { 'table_name'; }
-
-=item insert
-
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-
-=cut
-
-# the insert method can be inherited from FS::Record
-
-=item delete
-
-Delete this record from the database.
-
-=cut
-
-# the delete method can be inherited from FS::Record
-
-=item replace OLD_RECORD
-
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-
-=cut
-
-# the replace method can be inherited from FS::Record
-
-=item check
-
-Checks all fields to make sure this is a valid example. If there is
-an error, returns the error, otherwise returns false. Called by the insert
-and replace methods.
-
-=cut
-
-# the check method should currently be supplied - FS::Record contains some
-# data checking routines
-
-sub check {
- my $self = shift;
-
- my $error =
- $self->ut_numbern('primary_key')
- || $self->ut_number('validate_other_fields')
- ;
- return $error if $error;
-
- $self->SUPER::check;
-}
-
-=back
-
-=head1 BUGS
-
-The author forgot to customize this manpage.
-
-=head1 SEE ALSO
-
-L<FS::Record>, schema.html from the base documentation.
-
-=cut
-
-1;
-
diff --git a/eg/xmlrpc-example.pl b/eg/xmlrpc-example.pl
deleted file mode 100755
index 7a2a0a6..0000000
--- a/eg/xmlrpc-example.pl
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use Frontier::Client;
-use Data::Dumper;
-
-my $server = new Frontier::Client (
- url => 'http://user:pass@freesidehost/misc/xmlrpc.cgi',
-);
-
-#my $method = 'cust_main.smart_search';
-#my @args = (search => '1');
-
-my $method = 'Record.qsearch';
-my @args = (cust_main => { });
-
-my $result = $server->call($method, @args);
-
-if (ref($result) eq 'ARRAY') {
- print "Result:\n";
- print Dumper(@$result);
-}
-
diff --git a/etc/abbr_state.txt b/etc/abbr_state.txt
deleted file mode 100644
index 7e4f57f..0000000
--- a/etc/abbr_state.txt
+++ /dev/null
@@ -1,72 +0,0 @@
-State/Possession Abbreviation
-
-ALABAMA AL
-ALASKA AK
-AMERICAN SAMOA AS
-ARIZONA AZ
-ARKANSAS AR
-CALIFORNIA CA
-COLORADO CO
-CONNECTICUT CT
-DELAWARE DE
-DISTRICT OF COLUMBIA DC
-FEDERATED STATES OF MICRONESIA FM
-FLORIDA FL
-GEORGIA GA
-GUAM GU
-HAWAII HI
-IDAHO ID
-ILLINOIS IL
-INDIANA IN
-IOWA IA
-KANSAS KS
-KENTUCKY KY
-LOUISIANA LA
-MAINE ME
-MARSHALL ISLANDS MH
-MARYLAND MD
-MASSACHUSETTS MA
-MICHIGAN MI
-MINNESOTA MN
-MISSISSIPPI MS
-MISSOURI MO
-MONTANA MT
-NEBRASKA NE
-NEVADA NV
-NEW HAMPSHIRE NH
-NEW JERSEY NJ
-NEW MEXICO NM
-NEW YORK NY
-NORTH CAROLINA NC
-NORTH DAKOTA ND
-NORTHERN MARIANA ISLANDS MP
-OHIO OH
-OKLAHOMA OK
-OREGON OR
-PALAU PW
-PENNSYLVANIA PA
-PUERTO RICO PR
-RHODE ISLAND RI
-SOUTH CAROLINA SC
-SOUTH DAKOTA SD
-TENNESSEE TN
-TEXAS TX
-UTAH UT
-VERMONT VT
-VIRGIN ISLANDS VI
-VIRGINIA VA
-WASHINGTON WA
-WEST VIRGINIA WV
-WISCONSIN WI
-WYOMING WY
-
-
-Military "State" Abbreviation
-
-Armed Forces Africa AE
-Armed Forces Americas AA
-(except Canada)
-Armed Forces Canada AE
-Armed Forces Europe AE
-Armed Forces Middle East AE
-Armed Forces Pacific AP
diff --git a/etc/countries.txt b/etc/countries.txt
deleted file mode 100644
index 73c3975..0000000
--- a/etc/countries.txt
+++ /dev/null
@@ -1,239 +0,0 @@
-AFGHANISTAN AF AFG 004
-ALBANIA AL ALB 008
-ALGERIA DZ DZA 012
-AMERICAN SAMOA AS ASM 016
-ANDORRA AD AND 020
-ANGOLA AO AGO 024
-ANGUILLA AI AIA 660
-ANTARCTICA AQ ATA 010
-ANTIGUA AND BARBUDA AG ATG 028
-ARGENTINA AR ARG 032
-ARMENIA AM ARM 051
-ARUBA AW ABW 533
-AUSTRALIA AU AUS 036
-AUSTRIA AT AUT 040
-AZERBAIJAN AZ AZE 031
-BAHAMAS BS BHS 044
-BAHRAIN BH BHR 048
-BANGLADESH BD BGD 050
-BARBADOS BB BRB 052
-BELARUS BY BLR 112
-BELGIUM BE BEL 056
-BELIZE BZ BLZ 084
-BENIN BJ BEN 204
-BERMUDA BM BMU 060
-BHUTAN BT BTN 064
-BOLIVIA BO BOL 068
-BOSNIA AND HERZEGOWINA BA BIH 070
-BOTSWANA BW BWA 072
-BOUVET ISLAND BV BVT 074
-BRAZIL BR BRA 076
-BRITISH INDIAN OCEAN TERRITORY IO IOT 086
-BRUNEI DARUSSALAM BN BRN 096
-BULGARIA BG BGR 100
-BURKINA FASO BF BFA 854
-BURUNDI BI BDI 108
-CAMBODIA KH KHM 116
-CAMEROON CM CMR 120
-CANADA CA CAN 124
-CAPE VERDE CV CPV 132
-CAYMAN ISLANDS KY CYM 136
-CENTRAL AFRICAN REPUBLIC CF CAF 140
-CHAD TD TCD 148
-CHILE CL CHL 152
-CHINA CN CHN 156
-CHRISTMAS ISLAND CX CXR 162
-COCOS (KEELING) ISLANDS CC CCK 166
-COLOMBIA CO COL 170
-COMOROS KM COM 174
-CONGO CG COG 178
-COOK ISLANDS CK COK 184
-COSTA RICA CR CRI 188
-COTE D'IVOIRE CI CIV 384
-CROATIA (local name: Hrvatska) HR HRV 191
-CUBA CU CUB 192
-CYPRUS CY CYP 196
-CZECH REPUBLIC CZ CZE 203
-DENMARK DK DNK 208
-DJIBOUTI DJ DJI 262
-DOMINICA DM DMA 212
-DOMINICAN REPUBLIC DO DOM 214
-EAST TIMOR TP TMP 626
-ECUADOR EC ECU 218
-EGYPT EG EGY 818
-EL SALVADOR SV SLV 222
-EQUATORIAL GUINEA GQ GNQ 226
-ERITREA ER ERI 232
-ESTONIA EE EST 233
-ETHIOPIA ET ETH 231
-FALKLAND ISLANDS (MALVINAS) FK FLK 238
-FAROE ISLANDS FO FRO 234
-FIJI FJ FJI 242
-FINLAND FI FIN 246
-FRANCE FR FRA 250
-FRANCE, METROPOLITAN FX FXX 249
-FRENCH GUIANA GF GUF 254
-FRENCH POLYNESIA PF PYF 258
-FRENCH SOUTHERN TERRITORIES TF ATF 260
-GABON GA GAB 266
-GAMBIA GM GMB 270
-GEORGIA GE GEO 268
-GERMANY DE DEU 276
-GHANA GH GHA 288
-GIBRALTAR GI GIB 292
-GREECE GR GRC 300
-GREENLAND GL GRL 304
-GRENADA GD GRD 308
-GUADELOUPE GP GLP 312
-GUAM GU GUM 316
-GUATEMALA GT GTM 320
-GUINEA GN GIN 324
-GUINEA-BISSAU GW GNB 624
-GUYANA GY GUY 328
-HAITI HT HTI 332
-HEARD AND MC DONALD ISLANDS HM HMD 334
-HONDURAS HN HND 340
-HONG KONG HK HKG 344
-HUNGARY HU HUN 348
-ICELAND IS ISL 352
-INDIA IN IND 356
-INDONESIA ID IDN 360
-IRAN (ISLAMIC REPUBLIC OF) IR IRN 364
-IRAQ IQ IRQ 368
-IRELAND IE IRL 372
-ISRAEL IL ISR 376
-ITALY IT ITA 380
-JAMAICA JM JAM 388
-JAPAN JP JPN 392
-JORDAN JO JOR 400
-KAZAKHSTAN KZ KAZ 398
-KENYA KE KEN 404
-KIRIBATI KI KIR 296
-KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF KP PRK 408
-KOREA, REPUBLIC OF KR KOR 410
-KUWAIT KW KWT 414
-KYRGYZSTAN KG KGZ 417
-LAO PEOPLE'S DEMOCRATIC REPUBLIC LA LAO 418
-LATVIA LV LVA 428
-LEBANON LB LBN 422
-LESOTHO LS LSO 426
-LIBERIA LR LBR 430
-LIBYAN ARAB JAMAHIRIYA LY LBY 434
-LIECHTENSTEIN LI LIE 438
-LITHUANIA LT LTU 440
-LUXEMBOURG LU LUX 442
-MACAU MO MAC 446
-MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF MK MKD 807
-MADAGASCAR MG MDG 450
-MALAWI MW MWI 454
-MALAYSIA MY MYS 458
-MALDIVES MV MDV 462
-MALI ML MLI 466
-MALTA MT MLT 470
-MARSHALL ISLANDS MH MHL 584
-MARTINIQUE MQ MTQ 474
-MAURITANIA MR MRT 478
-MAURITIUS MU MUS 480
-MAYOTTE YT MYT 175
-MEXICO MX MEX 484
-MICRONESIA, FEDERATED STATES OF FM FSM 583
-MOLDOVA, REPUBLIC OF MD MDA 498
-MONACO MC MCO 492
-MONGOLIA MN MNG 496
-MONTSERRAT MS MSR 500
-MOROCCO MA MAR 504
-MOZAMBIQUE MZ MOZ 508
-MYANMAR MM MMR 104
-NAMIBIA NA NAM 516
-NAURU NR NRU 520
-NEPAL NP NPL 524
-NETHERLANDS NL NLD 528
-NETHERLANDS ANTILLES AN ANT 530
-NEW CALEDONIA NC NCL 540
-NEW ZEALAND NZ NZL 554
-NICARAGUA NI NIC 558
-NIGER NE NER 562
-NIGERIA NG NGA 566
-NIUE NU NIU 570
-NORFOLK ISLAND NF NFK 574
-NORTHERN MARIANA ISLANDS MP MNP 580
-NORWAY NO NOR 578
-OMAN OM OMN 512
-PAKISTAN PK PAK 586
-PALAU PW PLW 585
-PANAMA PA PAN 591
-PAPUA NEW GUINEA PG PNG 598
-PARAGUAY PY PRY 600
-PERU PE PER 604
-PHILIPPINES PH PHL 608
-PITCAIRN PN PCN 612
-POLAND PL POL 616
-PORTUGAL PT PRT 620
-PUERTO RICO PR PRI 630
-QATAR QA QAT 634
-REUNION RE REU 638
-ROMANIA RO ROM 642
-RUSSIAN FEDERATION RU RUS 643
-RWANDA RW RWA 646
-SAINT KITTS AND NEVIS KN KNA 659
-SAINT LUCIA LC LCA 662
-SAINT VINCENT AND THE GRENADINES VC VCT 670
-SAMOA WS WSM 882
-SAN MARINO SM SMR 674
-SAO TOME AND PRINCIPE ST STP 678
-SAUDI ARABIA SA SAU 682
-SENEGAL SN SEN 686
-SEYCHELLES SC SYC 690
-SIERRA LEONE SL SLE 694
-SINGAPORE SG SGP 702
-SLOVAKIA (Slovak Republic) SK SVK 703
-SLOVENIA SI SVN 705
-SOLOMON ISLANDS SB SLB 090
-SOMALIA SO SOM 706
-SOUTH AFRICA ZA ZAF 710
-SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS GS SGS 239
-SPAIN ES ESP 724
-SRI LANKA LK LKA 144
-ST. HELENA SH SHN 654
-ST. PIERRE AND MIQUELON PM SPM 666
-SUDAN SD SDN 736
-SURINAME SR SUR 740
-SVALBARD AND JAN MAYEN ISLANDS SJ SJM 744
-SWAZILAND SZ SWZ 748
-SWEDEN SE SWE 752
-SWITZERLAND CH CHE 756
-SYRIAN ARAB REPUBLIC SY SYR 760
-TAIWAN, PROVINCE OF CHINA TW TWN 158
-TAJIKISTAN TJ TJK 762
-TANZANIA, UNITED REPUBLIC OF TZ TZA 834
-THAILAND TH THA 764
-TOGO TG TGO 768
-TOKELAU TK TKL 772
-TONGA TO TON 776
-TRINIDAD AND TOBAGO TT TTO 780
-TUNISIA TN TUN 788
-TURKEY TR TUR 792
-TURKMENISTAN TM TKM 795
-TURKS AND CAICOS ISLANDS TC TCA 796
-TUVALU TV TUV 798
-UGANDA UG UGA 800
-UKRAINE UA UKR 804
-UNITED ARAB EMIRATES AE ARE 784
-UNITED KINGDOM GB GBR 826
-UNITED STATES US USA 840
-UNITED STATES MINOR OUTLYING ISLANDS UM UMI 581
-URUGUAY UY URY 858
-UZBEKISTAN UZ UZB 860
-VANUATU VU VUT 548
-VATICAN CITY STATE (HOLY SEE) VA VAT 336
-VENEZUELA VE VEN 862
-VIET NAM VN VNM 704
-VIRGIN ISLANDS (BRITISH) VG VGB 092
-VIRGIN ISLANDS (U.S.) VI VIR 850
-WALLIS AND FUTUNA ISLANDS WF WLF 876
-WESTERN SAHARA EH ESH 732
-YEMEN YE YEM 887
-YUGOSLAVIA YU YUG 891
-ZAIRE ZR ZAR 180
-ZAMBIA ZM ZMB 894
-ZIMBABWE ZW ZWE 716
diff --git a/etc/domain-template.txt b/etc/domain-template.txt
deleted file mode 100644
index 8e4983c..0000000
--- a/etc/domain-template.txt
+++ /dev/null
@@ -1,231 +0,0 @@
-[ URL ftp://rs.internic.net/templates/domain-template.txt ] [ 03/98 ]
-
-******* Please DO NOT REMOVE Version Number or Sections A-Q ********
-
-Domain Version Number: 4.0
-
-******* Email completed agreement to hostmaster@internic.net *******
-
- NETWORK SOLUTIONS, INC.
-
- DOMAIN NAME REGISTRATION AGREEMENT
-
-
-A. Introduction. This domain name registration agreement
-("Registration Agreement") is submitted to NETWORK SOLUTIONS, INC.
-("NSI") for the purpose of applying for and registering a domain name
-on the Internet. If this Registration Agreement is accepted by NSI,
-and a domain name is registered in NSI's domain name database and
-assigned to the Registrant, Registrant ("Registrant") agrees to be
-bound by the terms of this Registration Agreement and the terms of
-NSI's Domain Name Dispute Policy ("Dispute Policy") which is
-incorporated herein by reference and made a part of this Registration
-Agreement. This Registration Agreement shall be accepted at the
-offices of NSI.
-
-B. Fees and Payments.
-
-1) Registration or renewal (re-registration) date through March 31, 1998:
-Registrant agrees to pay a registration fee of One Hundred United States
-Dollars (US$100) as consideration for the registration of each new domain
-name or Fifty United States Dollars (US$50) to renew (re-register) an
-existing registration.
-2) Registration or renewal date on and after April 1, 1998: Registrant
-agrees to pay a registration fee of Seventy United States Dollars (US$70)
-as consideration for the registration of each new domain name or the
-applicable renewal (re-registration) fee (currently Thirty-Five United
-States Dollars (US$35)) at the time of renewal (re-registration).
-3) Period of Service: The non-refundable fee covers a period of two (2)
-years for each new registration, and one (1) year for each renewal,
-and includes any permitted modification(s) to the domain name record
-during the covered period.
-4) Payment: Payment is due to Network Solutions within thirty (30)
-days from the date of the invoice.
-
-C. Dispute Policy. Registrant agrees, as a condition to
-submitting this Registration Agreement, and if the Registration
-Agreement is accepted by NSI, that the Registrant shall be bound by
-NSI's current Dispute Policy. The current version of the Dispute
-Policy may be found at the InterNIC Registration Services web site:
-"http://www.netsol.com/rs/dispute-policy.html".
-
-D. Dispute Policy Changes or Modifications. Registrant agrees
-that NSI, in its sole discretion, may change or modify the Dispute
-Policy, incorporated by reference herein, at any time. Registrant
-agrees that Registrant's maintaining the registration of a domain name
-after changes or modifications to the Dispute Policy become effective
-constitutes Registrant's continued acceptance of these changes or
-modifications. Registrant agrees that if Registrant considers any such
-changes or modifications to be unacceptable, Registrant may request
-that the domain name be deleted from the domain name database.
-
-E. Disputes. Registrant agrees that, if the registration of its
-domain name is challenged by any third party, the Registrant will be
-subject to the provisions specified in the Dispute Policy.
-
-F. Agents. Registrant agrees that if this Registration Agreement
-is completed by an agent for the Registrant, such as an ISP or
-Administrative Contact/Agent, the Registrant is nonetheless bound as a
-principal by all terms and conditions herein, including the Dispute
-Policy.
-
-G. Limitation of Liability. Registrant agrees that NSI shall have
-no liability to the Registrant for any loss Registrant may incur in
-connection with NSI's processing of this Registration Agreement, in
-connection with NSI's processing of any authorized modification to the
-domain name's record during the covered period, as a result of the
-Registrant's ISP's failure to pay either the initial registration fee
-or renewal fee, or as a result of the application of the provisions of
-the Dispute Policy. Registrant agrees that in no event shall the
-maximum liability of NSI under this Agreement for any matter exceed
-Five Hundred United States Dollars (US$500).
-
-H. Indemnity. Registrant agrees, in the event the Registration
-Agreement is accepted by NSI and a subsequent dispute arises with any
-third party, to indemnify and hold NSI harmless pursuant to the terms
-and conditions contained in the Dispute Policy.
-
-I. Breach. Registrant agrees that failure to abide by any
-provision of this Registration Agreement or the Dispute Policy may be
-considered by NSI to be a material breach and that NSI may provide a
-written notice, describing the breach, to the Registrant. If, within
-thirty (30) days of the date of mailing such notice, the Registrant
-fails to provide evidence, which is reasonably satisfactory to NSI,
-that it has not breached its obligations, then NSI may delete
-Registrant's registration of the domain name. Any such breach by a
-Registrant shall not be deemed to be excused simply because NSI did
-not act earlier in response to that, or any other, breach by the
-Registrant.
-
-J. No Guaranty. Registrant agrees that, by registration of a
-domain name, such registration does not confer immunity from objection
-to either the registration or use of the domain name.
-
-K. Warranty. Registrant warrants by submitting this Registration
-Agreement that, to the best of Registrant's knowledge and belief, the
-information submitted herein is true and correct, and that any future
-changes to this information will be provided to NSI in a timely manner
-according to the domain name modification procedures in place at that
-time. Breach of this warranty will constitute a material breach.
-
-L. Revocation. Registrant agrees that NSI may delete a
-Registrant's domain name if this Registration Agreement, or subsequent
-modification(s) thereto, contains false or misleading information, or
-conceals or omits any information NSI would likely consider material
-to its decision to approve this Registration Agreement.
-
-M. Right of Refusal. NSI, in its sole discretion, reserves the
-right to refuse to approve the Registration Agreement for any
-Registrant. Registrant agrees that the submission of this Registration
-Agreement does not obligate NSI to accept this Registration Agreement.
-Registrant agrees that NSI shall not be liable for loss or damages
-that may result from NSI's refusal to accept this Registration
-Agreement.
-
-N. Severability. Registrant agrees that the terms of this
-Registration Agreement are severable. If any term or provision is
-declared invalid, it shall not affect the remaining terms or
-provisions which shall continue to be binding.
-
-O. Entirety. Registrant agrees that this Registration Agreement
-and the Dispute Policy is the complete and exclusive agreement between
-Registrant and NSI regarding the registration of Registrant's domain
-name. This Registration Agreement and the Dispute Policy supersede all
-prior agreements and understandings, whether established by custom,
-practice, policy, or precedent.
-
-P. Governing Law. Registrant agrees that this Registration
-Agreement shall be governed in all respects by and construed in
-accordance with the laws of the Commonwealth of Virginia, United
-States of America. By submitting this Registration Agreement,
-Registrant consents to the exclusive jurisdiction and venue of the
-United States District Court for the Eastern District of Virginia,
-Alexandria Division. If there is no jurisdiction in the United States
-District Court for the Eastern District of Virginia, Alexandria
-Division, then jurisdiction shall be in the Circuit Court of Fairfax
-County, Fairfax, Virginia.
-
-Q. This is Domain Name Registration Agreement Version
-Number 4.0. This Registration Agreement is only for registrations
-under top-level domains: COM, ORG, NET, and EDU. By completing
-and submitting this Registration Agreement for consideration and
-acceptance by NSI, the Registrant agrees that he/she has read and
-agrees to be bound by A through P above.
-
-
-Authorization
-0a. (N)ew (M)odify (D)elete....:###action###
-0b. Auth Scheme................:
-0c. Auth Info..................:
-
-1. Comments...................:###purpose###
-
-2. Complete Domain Name.......:###domain###
-
-Organization Using Domain Name
-
-3a. Organization Name..........:###company###
-###LOOP###
-3b. Street Address.............:###address###
-###ENDLOOP###
-3c. City.......................:###city###
-3d. State......................:###state###
-3e. Postal Code................:###zip###
-3f. Country....................:###country###
-
-Administrative Contact
-4a. NIC Handle (if known)......:
-4b. (I)ndividual (R)ole........:I
-4c. Name (Last, First).........:###last###, ###first###
-4d. Organization Name..........:###company###
-###LOOP###
-4e. Street Address.............:###address###
-###ENDLOOP###
-4f. City.......................:###city###
-4g. State......................:###state###
-4h. Postal Code................:###zip###
-4i. Country....................:###country###
-4j. Phone Number...............:###daytime###
-4k. Fax Number.................:###fax###
-4l. E-Mailbox..................:###email###
-
-Technical Contact
-5a. NIC Handle (if known)......:###tech_contact###
-5b. (I)ndividual (R)ole........:
-5c. Name (Last, First).........:
-5d. Organization Name..........:
-5e. Street Address.............:
-5f. City.......................:
-5g. State......................:
-5h. Postal Code................:
-5i. Country....................:
-5j. Phone Number...............:
-5k. Fax Number.................:
-5l. E-Mailbox..................:
-
-Billing Contact
-6a. NIC Handle (if known)......:
-6b. (I)ndividual (R)ole........:
-6c. Name (Last, First).........:
-6d. Organization Name..........:
-6e. Street Address.............:
-6f. City.......................:
-6g. State......................:
-6h. Postal Code................:
-6i. Country....................:
-6j. Phone Number...............:
-6k. Fax Number.................:
-6l. E-Mailbox..................:
-
-Prime Name Server
-7a. Primary Server Hostname....:###primary###
-7b. Primary Server Netaddress..:###primary_ip###
-
-Secondary Name Server(s)
-###LOOP###
-8a. Secondary Server Hostname..:###secondary###
-8b. Secondary Server Netaddress:###secondary_ip###
-###ENDLOOP###
-
-END OF AGREEMENT
-
diff --git a/etc/megapop.pl b/etc/megapop.pl
deleted file mode 100755
index b250bcd..0000000
--- a/etc/megapop.pl
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# $Id: megapop.pl,v 1.1 1999-04-19 10:32:44 ivan Exp $
-#
-# this will break when megapop changes the URL or format of their listing page.
-# that's stupid. perhaps they can provide a machine-readable listing?
-
-use strict;
-use LWP::UserAgent;
-use FS::UID qw(adminsuidsetup);
-use FS::svc_acct_pop;
-
-my $url = "http://www.megapop.com/location.htm";
-
-my $user = shift or die &usage;
-adminsuidsetup($user);
-
-my %state2usps = &state2usps;
-$state2usps{'WASHINGTON STATE'} = 'WA'; #megapop's on crack
-$state2usps{'CANADA'} = 'CANADA'; #freeside's on crack
-
-my $ua = new LWP::UserAgent;
-my $request = new HTTP::Request('GET', $url);
-my $response = $ua->request($request);
-die $response->error_as_HTML unless $response->is_success;
-my $line;
-my $usps = '';
-foreach $line ( split("\n", $response->content) ) {
- if ( $line =~ /\W(\w[\w\s]*\w)\s+LOCATIONS/i ) {
- $usps = $state2usps{uc($1)}
- or warn "warning: unknown state $1\n";
- } elsif ( $line =~ /(\d{3})\-(\d{3})\-(\d{4})\s+(\w[\w\s]*\w)/ ) {
- print "$1 $2 $3 $4 $usps\n";
- my $svc_acct_pop = new FS::svc_acct_pop ( {
- 'city' => $4,
- 'state' => $usps,
- 'ac' => $1,
- 'exch' => $2,
- } );
- my $error = $svc_acct_pop->insert;
- die $error if $error;
- }
-}
-
-sub usage {
- die "Usage:\n $0 user\n";
-}
-
-sub state2usps{ (
- 'ALABAMA' => 'AL',
- 'ALASKA' => 'AK',
- 'AMERICAN SAMOA' => 'AS',
- 'ARIZONA' => 'AZ',
- 'ARKANSAS' => 'AR',
- 'CALIFORNIA' => 'CA',
- 'COLORADO' => 'CO',
- 'CONNECTICUT' => 'CT',
- 'DELAWARE' => 'DE',
- 'DISTRICT OF COLUMBIA' => 'DC',
- 'FEDERATED STATES OF MICRONESIA' => 'FM',
- 'FLORIDA' => 'FL',
- 'GEORGIA' => 'GA',
- 'GUAM' => 'GU',
- 'HAWAII' => 'HI',
- 'IDAHO' => 'ID',
- 'ILLINOIS' => 'IL',
- 'INDIANA' => 'IN',
- 'IOWA' => 'IA',
- 'KANSAS' => 'KS',
- 'KENTUCKY' => 'KY',
- 'LOUISIANA' => 'LA',
- 'MAINE' => 'ME',
- 'MARSHALL ISLANDS' => 'MH',
- 'MARYLAND' => 'MD',
- 'MASSACHUSETTS' => 'MA',
- 'MICHIGAN' => 'MI',
- 'MINNESOTA' => 'MN',
- 'MISSISSIPPI' => 'MS',
- 'MISSOURI' => 'MO',
- 'MONTANA' => 'MT',
- 'NEBRASKA' => 'NE',
- 'NEVADA' => 'NV',
- 'NEW HAMPSHIRE' => 'NH',
- 'NEW JERSEY' => 'NJ',
- 'NEW MEXICO' => 'NM',
- 'NEW YORK' => 'NY',
- 'NORTH CAROLINA' => 'NC',
- 'NORTH DAKOTA' => 'ND',
- 'NORTHERN MARIANA ISLANDS' => 'MP',
- 'OHIO' => 'OH',
- 'OKLAHOMA' => 'OK',
- 'OREGON' => 'OR',
- 'PALAU' => 'PW',
- 'PENNSYLVANIA' => 'PA',
- 'PUERTO RICO' => 'PR',
- 'RHODE ISLAND' => 'RI',
- 'SOUTH CAROLINA' => 'SC',
- 'SOUTH DAKOTA' => 'SD',
- 'TENNESSEE' => 'TN',
- 'TEXAS' => 'TX',
- 'UTAH' => 'UT',
- 'VERMONT' => 'VT',
- 'VIRGIN ISLANDS' => 'VI',
- 'VIRGINIA' => 'VA',
- 'WASHINGTON' => 'WA',
- 'WEST VIRGINIA' => 'WV',
- 'WISCONSIN' => 'WI',
- 'WYOMING' => 'WY',
- 'ARMED FORCES AFRICA' => 'AE',
- 'ARMED FORCES AMERICAS' => 'AA',
- 'ARMED FORCES CANADA' => 'AE',
- 'ARMED FORCES EUROPE' => 'AE',
- 'ARMED FORCES MIDDLE EAST' => 'AE',
- 'ARMED FORCES PACIFIC' => 'AP',
-) }
-
diff --git a/etc/sql-reserved-words.txt b/etc/sql-reserved-words.txt
deleted file mode 100644
index dc507ce..0000000
--- a/etc/sql-reserved-words.txt
+++ /dev/null
@@ -1,103 +0,0 @@
-From http://epoch.cs.berkeley.edu:8000/sequoia/dba/montage/FAQ/SQL.html
- by Jean Anderson (jta@postgres.berkeley.edu)
-
-What are the SQL reserved words?
-
-I grep'd the following list out of the sql docs available via anonymous ftp to speckle.ncsl.nist.gov:/isowg3.
-SQL3 words are not set in stone, but you'd do well to avoid them.
-
- From sql1992.txt:
-
- AFTER, ALIAS, ASYNC, BEFORE, BOOLEAN, BREADTH,
- COMPLETION, CALL, CYCLE, DATA, DEPTH, DICTIONARY, EACH, ELSEIF,
- EQUALS, GENERAL, IF, IGNORE, LEAVE, LESS, LIMIT, LOOP, MODIFY,
- NEW, NONE, OBJECT, OFF, OID, OLD, OPERATION, OPERATORS, OTHERS,
- PARAMETERS, PENDANT, PREORDER, PRIVATE, PROTECTED, RECURSIVE, REF,
- REFERENCING, REPLACE, RESIGNAL, RETURN, RETURNS, ROLE, ROUTINE,
- ROW, SAVEPOINT, SEARCH, SENSITIVE, SEQUENCE, SIGNAL, SIMILAR,
- SQLEXCEPTION, SQLWARNING, STRUCTURE, TEST, THERE, TRIGGER, TYPE,
- UNDER, VARIABLE, VIRTUAL, VISIBLE, WAIT, WHILE, WITHOUT
-
- From sql1992.txt (Annex E):
-
- ABSOLUTE, ACTION, ADD, ALLOCATE, ALTER, ARE, ASSERTION, AT, BETWEEN,
- BIT, BIT
-
-What are the SQL reserved words?
-
-I grep'd the following list out of the sql docs available via anonymous ftp to speckle.ncsl.nist.gov:/isowg3.
-SQL3 words are not set in stone, but you'd do well to avoid them.
-
- From sql1992.txt:
-
- AFTER, ALIAS, ASYNC, BEFORE, BOOLEAN, BREADTH,
- COMPLETION, CALL, CYCLE, DATA, DEPTH, DICTIONARY, EACH, ELSEIF,
- EQUALS, GENERAL, IF, IGNORE, LEAVE, LESS, LIMIT, LOOP, MODIFY,
- NEW, NONE, OBJECT, OFF, OID, OLD, OPERATION, OPERATORS, OTHERS,
- PARAMETERS, PENDANT, PREORDER, PRIVATE, PROTECTED, RECURSIVE, REF,
- REFERENCING, REPLACE, RESIGNAL, RETURN, RETURNS, ROLE, ROUTINE,
- ROW, SAVEPOINT, SEARCH, SENSITIVE, SEQUENCE, SIGNAL, SIMILAR,
- SQLEXCEPTION, SQLWARNING, STRUCTURE, TEST, THERE, TRIGGER, TYPE,
- UNDER, VARIABLE, VIRTUAL, VISIBLE, WAIT, WHILE, WITHOUT
-
- From sql1992.txt (Annex E):
-
- ABSOLUTE, ACTION, ADD, ALLOCATE, ALTER, ARE, ASSERTION, AT, BETWEEN,
- BIT, BIT
-
-What are the SQL reserved words?
-
-I grep'd the following list out of the sql docs available via anonymous ftp to speckle.ncsl.nist.gov:/isowg3.
-SQL3 words are not set in stone, but you'd do well to avoid them.
-
- From sql1992.txt:
-
- AFTER, ALIAS, ASYNC, BEFORE, BOOLEAN, BREADTH,
- COMPLETION, CALL, CYCLE, DATA, DEPTH, DICTIONARY, EACH, ELSEIF,
- EQUALS, GENERAL, IF, IGNORE, LEAVE, LESS, LIMIT, LOOP, MODIFY,
- NEW, NONE, OBJECT, OFF, OID, OLD, OPERATION, OPERATORS, OTHERS,
- PARAMETERS, PENDANT, PREORDER, PRIVATE, PROTECTED, RECURSIVE, REF,
- REFERENCING, REPLACE, RESIGNAL, RETURN, RETURNS, ROLE, ROUTINE,
- ROW, SAVEPOINT, SEARCH, SENSITIVE, SEQUENCE, SIGNAL, SIMILAR,
- SQLEXCEPTION, SQLWARNING, STRUCTURE, TEST, THERE, TRIGGER, TYPE,
- UNDER, VARIABLE, VIRTUAL, VISIBLE, WAIT, WHILE, WITHOUT
-
- From sql1992.txt (Annex E):
-
- ABSOLUTE, ACTION, ADD, ALLOCATE, ALTER, ARE, ASSERTION, AT, BETWEEN,
- BIT, BIT_LENGTH, BOTH, CASCADE, CASCADED, CASE, CAST, CATALOG,
- CHAR_LENGTH, CHARACTER_LENGTH, COALESCE, COLLATE, COLLATION, COLUMN,
- CONNECT, CONNECTION, CONSTRAINT, CONSTRAINTS, CONVERT, CORRESPONDING,
- CROSS, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER,
- DATE, DAY, DEALLOCATE, DEFERRABLE, DEFERRED, DESCRIBE, DESCRIPTOR,
- DIAGNOSTICS, DISCONNECT, DOMAIN, DROP, ELSE, END-EXEC, EXCEPT,
- EXCEPTION, EXECUTE, EXTERNAL, EXTRACT, FALSE, FIRST, FULL, GET,
- GLOBAL, HOUR, IDENTITY, IMMEDIATE, INITIALLY, INNER, INPUT,
- INSENSITIVE, INTERSECT, INTERVAL, ISOLATION, JOIN, LAST, LEADING,
- LEFT, LEVEL, LOCAL, LOWER, MATCH, MINUTE, MONTH, NAMES, NATIONAL,
- NATURAL, NCHAR, NEXT, NO, NULLIF, OCTET_LENGTH, ONLY, OUTER, OUTPUT,
- OVERLAPS, PAD, PARTIAL, POSITION, PREPARE, PRESERVE, PRIOR, READ,
- RELATIVE, RESTRICT, REVOKE, RIGHT, ROWS, SCROLL, SECOND, SESSION,
- SESSION_USER, SIZE, SPACE, SQLSTATE, SUBSTRING, SYSTEM_USER,
- TEMPORARY, THEN, TIME, TIMESTAMP, TIMEZONE_HOUR, TIMEZONE_MINUTE,
- TRAILING, TRANSACTION, TRANSLATE, TRANSLATION, TRIM, TRUE, UNKNOWN,
- UPPER, USAGE, USING, VALUE, VARCHAR, VARYING, WHEN, WRITE, YEAR, ZONE
-
- From sql3part2.txt (Annex E)
-
- ACTION, ACTOR, AFTER, ALIAS, ASYNC, ATTRIBUTES, BEFORE, BOOLEAN,
- BREADTH, COMPLETION, CURRENT_PATH, CYCLE, DATA, DEPTH, DESTROY,
- DICTIONARY, EACH, ELEMENT, ELSEIF, EQUALS, FACTOR, GENERAL, HOLD,
- IGNORE, INSTEAD, LESS, LIMIT, LIST, MODIFY, NEW, NEW_TABLE, NO,
- NONE, OFF, OID, OLD, OLD_TABLE, OPERATION, OPERATOR, OPERATORS,
- PARAMETERS, PATH, PENDANT, POSTFIX, PREFIX, PREORDER, PRIVATE,
- PROTECTED, RECURSIVE, REFERENCING, REPLACE, ROLE, ROUTINE, ROW,
- SAVEPOINT, SEARCH, SENSITIVE, SEQUENCE, SESSION, SIMILAR, SPACE,
- SQLEXCEPTION, SQLWARNING, START, STATE, STRUCTURE, SYMBOL, TERM,
- TEST, THERE, TRIGGER, TYPE, UNDER, VARIABLE, VIRTUAL, VISIBLE,
- WAIT, WITHOUT
-
- sql3part4.txt (ANNEX E):
-
- CALL, DO, ELSEIF, EXCEPTION, IF, LEAVE, LOOP, OTHERS, RESIGNAL,
- RETURN, RETURNS, SIGNAL, TUPLE, WHILE
diff --git a/fs_passwd/fs_passwd b/fs_passwd/fs_passwd
deleted file mode 100755
index feddb46..0000000
--- a/fs_passwd/fs_passwd
+++ /dev/null
@@ -1,131 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# fs_passwd
-#
-# portions of this script are copied from the `passwd' script in the original
-# (perl 4) camel book, now archived at
-# http://www.perl.com/CPAN/scripts/nutshell/ch6/passwd
-#
-# ivan@sisd.com 98-mar-8
-#
-# password lengths 0,255 instead of 6,8 - we'll let the server process
-# check the data ivan@sisd.com 98-jul-17
-#
-# updated for the exciting new world of self-service 2004-mar-10
-
-use strict;
-use Getopt::Std;
-use FS::SelfService qw(passwd);
-use vars qw($opt_f $opt_s);
-
-my($freeside_uid)=scalar(getpwnam('freeside'));
-
-$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-$SIG{__DIE__}= sub { system '/bin/stty', 'echo'; };
-
-die "passwd program isn't running setuid to freeside\n" if $> != $freeside_uid;
-
-unshift @ARGV, "-f" if $0 =~ /chfn$/;
-unshift @ARGV, "-s" if $0 =~ /chsh$/;
-
-getopts('fs');
-
-my($me)='';
-if ( $_ = shift(@ARGV) ) {
- /^(\w{2,8})$/;
- $me = $1;
-}
-die "You can't change the password for $me." if $me && $<;
-$me = (getpwuid($<))[0] unless $me;
-
-my($name,$passwd,$uid,$gid,$quota,$comment,$gcos,$dir,$shell)=
- getpwnam $me;
-
-my($old_password,$new_password,$new_gecos,$new_shell);
-
-if ( $opt_f || $opt_s ) {
- system '/bin/stty', '-echo';
- print "Password:";
- $old_password=<STDIN>;
- system '/bin/stty', 'echo';
- chop($old_password);
- #$old_password =~ /^(.{6,8})$/ or die "\nIllegal password.\n";
- $old_password =~ /^(.{0,255})$/ or die "\nIllegal password.\n";
- $old_password = $1;
-
- $new_password = '';
-
- if ( $opt_f ) {
- print "\nChanging gecos for $me.\n";
- print "Gecos [", $gcos, "]: ";
- $new_gecos=<STDIN>;
- chop($new_gecos);
- $new_gecos ||= $gcos;
- $new_gecos =~ /^(.{0,255})$/ or die "\nIllegal gecos.\n";
- } else {
- $new_gecos = '';
- }
-
- if ( $opt_s ) {
- print "\nChanging shell for $me.\n";
- print "Shell [", $shell, "]: ";
- $new_shell=<STDIN>;
- chop($new_shell);
- $new_shell ||= $shell;
- $new_shell =~ /^(.{0,255})$/ or die "\nIllegal shell.\n";
- } else {
- $new_shell = '';
- }
-
-} else {
-
- print "Changing password for $me.\n";
- print "Old password:";
- system '/bin/stty', '-echo';
- $old_password=<STDIN>;
- chop $old_password;
- #$old_password =~ /^(.{6,8})$/ or die "\nIllegal password.\n";
- $old_password =~ /^(.{0,255})$/ or die "\nIllegal password.\n";
- $old_password = $1;
- print "\nEnter the new password (minimum of 6, maximum of 8 characters)\n";
- print "Please use a combination of upper and lowercase letters and numbers.\n";
- print "New password:";
- $new_password=<STDIN>;
- chop($new_password);
- #$new_password =~ /^(.{6,8})$/ or die "\nIllegal password.\n";
- $new_password =~ /^(.{0,255})$/ or die "\nIllegal password.\n";
- $new_password = $1;
- print "\nRe-enter new password:";
- my($check_new_password);
- $check_new_password=<STDIN>;
- chop($check_new_password);
- die "\nThey don't match; try again.\n" unless $check_new_password eq $new_password;
-
- $new_gecos='';
- $new_shell='';
-}
-print "\n";
-
-system '/bin/stty', 'echo';
-
-my $rv = passwd(
- 'username' => $me,
- 'old_password' => $old_password,
- 'new_password' => $new_password,
- 'new_gecos' => $new_gecos,
- 'new_shell' => $new_shell,
-);
-
-my $error = $rv->{error};
-
-if ($error) {
- print "\nUpdate error: $error\n";
-} else {
- print "\nUpdate sucessful.\n";
-}
diff --git a/fs_radlog/fs_radlogd b/fs_radlog/fs_radlogd
deleted file mode 100755
index 74c2af3..0000000
--- a/fs_radlog/fs_radlogd
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# ivan@sisd.com 98-mar-23
-
-use strict;
-use Date::Parse; #but hopefully not
-
-$|=1;
-
-my($file,$pos)=@_;
-open(FILE,"<$file") or die "Can't open $file: $!";
-seek(FILE,$pos,0) or die "Can't seek: $!";
-
-my($datestr);
-my(%param);
-
-$SIG{'HUP'} = sub { print "EOF\n"; exit; };
-
-while (1) {
-
- while (<FILE>) {
- next if /^$/;
- if ( /^\S/ ) {
- chop($datestr=$_);
- undef %param;
- } else {
- warn "Unexpected line: $_";
- }
- while (<FILE>) {
- if ( /^$/ ) {
- #if ( $param{'Acct-Status-Type'} eq 'Stop' ) {
- print join("\t",
- tell FILE,
- %param,
- ),"\n";
- #}
- last;
- } elsif ( /^\s+([\w\-]+)\s\=\s\"?([\w\.\-]+)\"?\s*$/ ) {
- $param{$1}=$2;
- } else {
- warn "Unexpected line: $_";
- }
-
- }
-
- }
- sleep 1;
- seek(FILE,0,1);
-}
-
-
diff --git a/fs_selfadmin/FS-MailAdminServer/MailAdminClient.pm b/fs_selfadmin/FS-MailAdminServer/MailAdminClient.pm
deleted file mode 100755
index 46cde4c..0000000
--- a/fs_selfadmin/FS-MailAdminServer/MailAdminClient.pm
+++ /dev/null
@@ -1,541 +0,0 @@
-package FS::MailAdminClient;
-
-use strict;
-use vars qw($VERSION @ISA @EXPORT_OK $fs_mailadmind_socket);
-use Exporter;
-use Socket;
-use FileHandle;
-use IO::Handle;
-
-$VERSION = '0.01';
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( signup_info authenticate list_packages list_mailboxes delete_mailbox password_mailbox add_mailbox list_forwards list_pkg_forwards delete_forward add_forward new_customer );
-
-$fs_mailadmind_socket = "/usr/local/freeside/fs_mailadmind_socket";
-
-$ENV{'PATH'} ='/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-my $freeside_uid = scalar(getpwnam('freeside'));
-die "not running as the freeside user\n" if $> != $freeside_uid;
-
-=head1 NAME
-
-FS::MailAdminClient - Freeside mail administration client API
-
-=head1 SYNOPSIS
-
- use FS::MailAdminClient qw( signup_info list_mailboxes new_customer );
-
- ( $locales, $packages, $pops ) = signup_info;
-
- ( $accounts ) = list_mailboxes;
-
- $error = new_customer ( {
- 'first' => $first,
- 'last' => $last,
- 'ss' => $ss,
- 'comapny' => $company,
- 'address1' => $address1,
- 'address2' => $address2,
- 'city' => $city,
- 'county' => $county,
- 'state' => $state,
- 'zip' => $zip,
- 'country' => $country,
- 'daytime' => $daytime,
- 'night' => $night,
- 'fax' => $fax,
- 'payby' => $payby,
- 'payinfo' => $payinfo,
- 'paydate' => $paydate,
- 'payname' => $payname,
- 'invoicing_list' => $invoicing_list,
- 'pkgpart' => $pkgpart,
- 'username' => $username,
- '_password' => $password,
- 'popnum' => $popnum,
- } );
-
-=head1 DESCRIPTION
-
-This module provides an API for a remote mail administration server.
-
-It needs to be run as the freeside user. Because of this, the program which
-calls these subroutines should be written very carefully.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item signup_info
-
-Returns three array references of hash references.
-
-The first set of hash references is of allowable locales. Each hash reference
-has the following keys:
- taxnum
- state
- county
- country
-
-The second set of hash references is of allowable packages. Each hash
-reference has the following keys:
- pkgpart
- pkg
-
-The third set of hash references is of allowable POPs (Points Of Presence).
-Each hash reference has the following keys:
- popnum
- city
- state
- ac
- exch
-
-=cut
-
-sub signup_info {
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "signup_info\n";
- SOCK->flush;
-
- chop ( my $n_cust_main_county = <SOCK> );
- my @cust_main_county = map {
- chop ( my $taxnum = <SOCK> );
- chop ( my $state = <SOCK> );
- chop ( my $county = <SOCK> );
- chop ( my $country = <SOCK> );
- {
- 'taxnum' => $taxnum,
- 'state' => $state,
- 'county' => $county,
- 'country' => $country,
- };
- } 1 .. $n_cust_main_county;
-
- chop ( my $n_part_pkg = <SOCK> );
- my @part_pkg = map {
- chop ( my $pkgpart = <SOCK> );
- chop ( my $pkg = <SOCK> );
- {
- 'pkgpart' => $pkgpart,
- 'pkg' => $pkg,
- };
- } 1 .. $n_part_pkg;
-
- chop ( my $n_svc_acct_pop = <SOCK> );
- my @svc_acct_pop = map {
- chop ( my $popnum = <SOCK> );
- chop ( my $city = <SOCK> );
- chop ( my $state = <SOCK> );
- chop ( my $ac = <SOCK> );
- chop ( my $exch = <SOCK> );
- chop ( my $loc = <SOCK> );
- {
- 'popnum' => $popnum,
- 'city' => $city,
- 'state' => $state,
- 'ac' => $ac,
- 'exch' => $exch,
- 'loc' => $loc,
- };
- } 1 .. $n_svc_acct_pop;
-
- close SOCK;
-
- \@cust_main_county, \@part_pkg, \@svc_acct_pop;
-}
-
-=item authenticate
-
-Authentictes against a service on the remote Freeside system. Requires a hash
-reference as a parameter with the following keys:
- authuser
- _password
-
-Returns a scalar error message of the form "authuser OK|FAILED" or an error
-message.
-
-=cut
-
-sub authenticate {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "authenticate", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser _password
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item list_packages
-
-Returns one array reference of hash references.
-
-The set of hash references is of existing packages. Each hash reference
-has the following keys:
- pkgnum
- domain
- account
-
-=cut
-
-sub list_packages {
- my $user = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "list_packages\n", $user, "\n";
- SOCK->flush;
-
- chop ( my $n_packages = <SOCK> );
- my @packages = map {
- chop ( my $pkgnum = <SOCK> );
- chop ( my $domain = <SOCK> );
- chop ( my $account = <SOCK> );
- {
- 'pkgnum' => $pkgnum,
- 'domain' => $domain,
- 'account' => $account,
- };
- } 1 .. $n_packages;
-
- close SOCK;
-
- \@packages;
-}
-
-=item list_mailboxes
-
-Returns one array references of hash references.
-
-The set of hash references is of existing accounts. Each hash reference
-has the following keys:
- svcnum
- username
- _password
-
-=cut
-
-sub list_mailboxes {
- my ($user, $package) = @_;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "list_mailboxes\n", $user, "\n", $package, "\n";
- SOCK->flush;
-
- chop ( my $n_svc_acct = <SOCK> );
- my @svc_acct = map {
- chop ( my $svcnum = <SOCK> );
- chop ( my $username = <SOCK> );
- chop ( my $_password = <SOCK> );
- {
- 'svcnum' => $svcnum,
- 'username' => $username,
- '_password' => $_password,
- };
- } 1 .. $n_svc_acct;
-
- close SOCK;
-
- \@svc_acct;
-}
-
-=item delete_mailbox
-
-Deletes a mailbox service from the remote Freeside system. Requires a hash
-reference as a paramater with the following keys:
- authuser
- account
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub delete_mailbox {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "delete_mailbox", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser account
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item password_mailbox
-
-Changes the password for a mailbox service on the remote Freeside system.
- Requires a hash reference as a paramater with the following keys:
- authuser
- account
- _password
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub password_mailbox {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "password_mailbox", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser account _password
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item add_mailbox
-
-Creates a mailbox service on the remote Freeside system. Requires a hash
-reference as a parameter with the following keys:
- authuser
- package
- account
- _password
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub add_mailbox {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "add_mailbox", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser package account _password
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item list_forwards
-
-Returns one array references of hash references.
-
-The set of hash references is of existing forwards. Each hash reference
-has the following keys:
- svcnum
- dest
-
-=cut
-
-sub list_forwards {
- my ($user, $service) = @_;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "list_forwards\n", $user, "\n", $service, "\n";
- SOCK->flush;
-
- chop ( my $n_svc_forward = <SOCK> );
- my @svc_forward = map {
- chop ( my $svcnum = <SOCK> );
- chop ( my $dest = <SOCK> );
- {
- 'svcnum' => $svcnum,
- 'dest' => $dest,
- };
- } 1 .. $n_svc_forward;
-
- close SOCK;
-
- \@svc_forward;
-}
-
-=item list_pkg_forwards
-
-Returns one array references of hash references.
-
-The set of hash references is of existing forwards. Each hash reference
-has the following keys:
- svcnum
- srcsvc
- dest
-
-=cut
-
-sub list_pkg_forwards {
- my ($user, $package) = @_;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "list_pkg_forwards\n", $user, "\n", $package, "\n";
- SOCK->flush;
-
- chop ( my $n_svc_forward = <SOCK> );
- my @svc_forward = map {
- chop ( my $svcnum = <SOCK> );
- chop ( my $srcsvc = <SOCK> );
- chop ( my $dest = <SOCK> );
- {
- 'svcnum' => $svcnum,
- 'srcsvc' => $srcsvc,
- 'dest' => $dest,
- };
- } 1 .. $n_svc_forward;
-
- close SOCK;
-
- \@svc_forward;
-}
-
-=item delete_forward
-
-Deletes a forward service from the remote Freeside system. Requires a hash
-reference as a paramater with the following keys:
- authuser
- svcnum
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub delete_forward {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "delete_forward", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser svcnum
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item add_forward
-
-Creates a forward service on the remote Freeside system. Requires a hash
-reference as a parameter with the following keys:
- authuser
- package
- source
- dest
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub add_forward {
- my $hashref = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "add_forward", "\n";
- SOCK->flush;
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- authuser package source dest
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- close SOCK;
-
- $error;
-}
-
-=item new_customer HASHREF
-
-Adds a customer to the remote Freeside system. Requires a hash reference as
-a paramater with the following keys:
- first
- last
- ss
- comapny
- address1
- address2
- city
- county
- state
- zip
- country
- daytime
- night
- fax
- payby
- payinfo
- paydate
- payname
- invoicing_list
- pkgpart
- username
- _password
- popnum
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub new_customer {
- my $hashref = shift;
-
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_mailadmind_socket)) or die "connect: $!";
- print SOCK "new_customer\n";
-
- print SOCK join("\n", map { $hashref->{$_} } qw(
- first last ss company address1 address2 city county state zip country
- daytime night fax payby payinfo paydate payname invoicing_list
- pkgpart username _password popnum
- ) ), "\n";
- SOCK->flush;
-
- chop( my $error = <SOCK> );
- $error;
-}
-
-=back
-
-=head1 VERSION
-
-$Id: MailAdminClient.pm,v 1.1 2001-10-18 15:04:54 jeff Exp $
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<fs_signupd>, L<FS::SignupServer>, L<FS::cust_main>
-
-=cut
-
-1;
-
diff --git a/fs_selfadmin/FS-MailAdminServer/cgi/mailadmin.cgi b/fs_selfadmin/FS-MailAdminServer/cgi/mailadmin.cgi
deleted file mode 100755
index c26c3dc..0000000
--- a/fs_selfadmin/FS-MailAdminServer/cgi/mailadmin.cgi
+++ /dev/null
@@ -1,698 +0,0 @@
-#!/usr/bin/perl
-########################################################################
-# #
-# mailadmin.cgi NCI2000 #
-# Jeff Finucane <jeff@nci2000.net> #
-# 26 April 2001 #
-# #
-########################################################################
-
-use DBI;
-use strict;
-use CGI;
-use FS::MailAdminClient qw(authenticate list_packages list_mailboxes delete_mailbox password_mailbox add_mailbox list_forwards list_pkg_forwards delete_forward add_forward);
-
-my $sessionfile = '/usr/local/apache/htdocs/mailadmin/adminsess'; # session file
-my $tmpdir = '/usr/local/apache/htdocs/mailadmin/tmp'; # Location to store temp files
-my $cookiedomain = ".your.dom"; # domain if THIS server, should prepend with a '.'
-my $cookieexpire = '+12h'; # expire the cookie session after this much idle time
-my $sessexpire = 43200; # expire session after this long of no use (in seconds)
-
-my $body = "<body bgcolor=dddddd>";
-
-#### Should not have to change anything under this line ####
-my $printmainpage = 1;
-my $i = 0;
-my $printheader = 1;
-my $query = new CGI;
-my $cgi = $query->url();
-my $now = getdatetime();
-my $current_package = 0;
-my $current_account = 0;
-my $current_domname = "";
-
-# if they are trying to login we wont check the session yet
-if ($query->param('login') eq '' && $query->param('action') ne 'login') {
- checksession();
- printheader();
-}
-
-if ($query->param('login') ne '') {
-
- my $username = $query->param('username');
- my $password = $query->param('password');
-
- if (!checkuserpass($username, $password)) {
- printheader();
- error('not_admin');
- }
-
- my @alpha = ('A'..'Z', 'a'..'z', 0..9);
- my $sessid = '';
- for (my $i = 0; $i < 10; $i++) {
- $sessid .= @alpha[rand(@alpha)];
- }
-
- my $cookie1 = $query->cookie(-name=>'username',
- -value=>$username,
- -expires=>$cookieexpire,
- -domain=>$cookiedomain);
-
- my $cookie2 = $query->cookie(-name=>'ma_sessionid',
- -value=>$sessid,
- -expires=>$cookieexpire,
- -domain=>$cookiedomain);
-
- my $now = time();
- open(NEWSESS, ">>$sessionfile") || error('open');
- print NEWSESS "$username $sessid $now 0 0\n";
- close(NEWSESS);
-
- print $query->header(-COOKIE=>[$cookie1, $cookie2]);
-
- $printmainpage = 1;
-
-} elsif ($query->param('action') eq 'blankframe') {
-
- print "<html>$body</body></html>\n";
- $printmainpage = 0;
-
-} elsif ($query->param('action') eq 'list_packages') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- my $list = list_packages($username);
- print "<html>$body\n";
- print "<center><table border=0>\n";
- print "<tr><td></td><td><p>Package Number</td><td><p>Description</td></tr>\n";
- foreach my $package ( @{$list} ) {
- print "<tr>";
- print "<td></td><td><p>$package->{'pkgnum'}</td><td><p>$package->{'domain'}</td>\n";
- print "<td></td><td><a href=\"$cgi\?action=select&package=$package->{'pkgnum'}&account=$package->{'account'}&domname=$package->{'domain'}\" target=\"rightmainframe\">select</td>\n";
- print "</tr>";
- }
- print "</table>\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'list_mailboxes') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $list = list_mailboxes($username, $current_package);
- my $forwardlist = list_pkg_forwards($username, $current_package);
- print "<html>$body\n";
- print "<center><table border=0>\n";
- print "<tr><td></td><td><p>Username</td><td><p>Password</td></tr>\n";
- foreach my $account ( @{$list} ) {
- print "<tr>";
- print "<td></td><td><p>$account->{'username'}</td><td><p>$account->{'_password'}</td>\n";
- print "<td></td><td><a href=\"$cgi\?action=change&account=$account->{'svcnum'}&mailbox=$account->{'username'}\" target=\"rightmainframe\">change</td>\n";
- print "</tr>";
-
-# my $forwardlist = list_forwards($username, $account->{'svcnum'});
-# foreach my $forward ( @{$forwardlist} ) {
-# my $label = qq!=> ! . $forward->{'dest'};
-# print "<tr><td></td><td></td><td><p>$label</td></tr>\n";
-# }
- foreach my $forward ( @{$forwardlist} ) {
- if ($forward->{'srcsvc'} == $account->{'svcnum'}) {
- my $label = qq!=> ! . $forward->{'dest'};
- print "<tr><td></td><td></td><td><p>$label</td></tr>\n";
- }
- }
-
- }
- print "</table>\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'select') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- $current_package = $query->param('package');
- $current_account = $query->param('account');
- $current_domname = $query->param('domname');
- set_package();
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<center>\n";
- print "<p>Selected package $current_package\n";
- print "</center>\n";
- print "</form>\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'change') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $mailbox = $query->param('mailbox');
- my $list = list_forwards($username, $account);
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<center><table border=0>\n";
- print "<tr><td></td><td><p>Username</td><td><p>$mailbox</td></tr>\n";
- print "<input type=hidden name=\"account\" value=\"$account\">\n";
- print "<input type=hidden name=\"mailbox\" value=\"$mailbox\">\n";
- foreach my $forward ( @{$list} ) {
- my $label = qq!=> ! . $forward->{'dest'};
-# print "<tr><td></td><td></td><td><p>$label</td></tr>\n";
- print "<tr><td></td><td></td><td><p>$label</td><td><a href=\"$cgi\?action=deleteforward&service=$forward->{'svcnum'}&mailbox=$mailbox&dest=$forward->{'dest'}\" target=\"rightmainframe\">remove</td></tr>\n";
- }
- print "<tr><td></td><td><p>Password</td><td><input type=text name=\"_password\" value=\"\"></td></tr>\n";
- print "</table>\n";
- print "<input type=submit name=\"deleteaccount\" value=\"Delete This User\">\n";
- print "<input type=submit name=\"changepassword\" value=\"Change The Password\">\n";
- print "<input type=submit name=\"addforward\" value=\"Add Forwarding\">\n";
- print "</center>\n";
- print "</form>\n";
- print "<br>\n";
- print "<p> You may delete this user and all mailforwarding by pressing <B>Delete This User</B>.\n";
- print "<p> To set or change the password for this user, type the new password in the box next to <B>Password</B> and press <B>Change The Password</B>.\n";
- print "<p> If you would like to have mail destined for this user forwarded to another email address then press the <B>Add Forwarding</B> button.\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('deleteaccount') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $mailbox = $query->param('mailbox');
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<p>Are you certain you want to delete user $mailbox?\n";
- print "<p><input type=hidden name=\"account\" value=\"$account\">\n";
- print "<input type=submit name=\"deleteaccounty\" value=\"Confirm\">\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('deleteaccounty') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
-
- if ( my $error = delete_mailbox ( {
- 'authuser' => $username,
- 'account' => $account,
- } ) ) {
- print "<html>$body\n";
- print "<p>$error\n";
- print "</body></html>\n";
-
- } else {
- print "<html>$body\n";
- print "<p>Deleted\n";
- print "</body></html>\n";
- }
-
- $printmainpage=0;
-
-} elsif ($query->param('changepassword') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $_password = $query->param('_password');
-
- if ( my $error = password_mailbox ( {
- 'authuser' => $username,
- 'account' => $account,
- '_password' => $_password,
- } ) ) {
- print "<html>$body\n";
- print "<p>$error\n";
- print "</body></html>\n";
-
- } else {
- print "<html>$body\n";
- print "<p>Changed\n";
- print "</body></html>\n";
- }
-
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'newmailbox') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<center><table border=0>\n";
- print "<tr><td></td><td><p>Username </td><td><input type=text name=\"account\" value=\"\"></td><td>@ " . $current_domname . "</td></tr>\n";
- print "<tr><td></td><td><p>Password</td><td><input type=text name=\"_password\" value=\"\"></td></tr>\n";
- print "</table>\n";
- print "<input type=submit name=\"addmailbox\" value=\"Add This User\">\n";
- print "</center>\n";
- print "</form>\n";
- print "<br>\n";
- print "<p>Use this screen to add a new mailbox user. If the domain name of the email address (the part after the <B>@</B> sign) is not what you expect then you may need to use <B>List Packages</B> to select the package with the correct domain.\n";
- print "<p>Enter the first portion of the email address in the box adjacent to <B>Username</B> and enter the password for that user in the space next to <B>Password</B>. Then press the button labeled <B>Add The User</B>.\n";
- print "<p>If you do not want to add a new user at this time then select a choice from the menu at the left, such as <B>List Mailboxes</B>.\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('addmailbox') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $_password = $query->param('_password');
-
- if ( my $error = add_mailbox ( {
- 'authuser' => $username,
- 'package' => $current_package,
- 'account' => $account,
- '_password' => $_password,
- } ) ) {
- print "<html>$body\n";
- print "<p>$error\n";
- print "</body></html>\n";
-
- } else {
- print "<html>$body\n";
- print "<p>Created\n";
- print "</body></html>\n";
- }
-
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'deleteforward') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $svcnum = $query->param('service');
- my $mailbox = $query->param('mailbox');
- my $dest = $query->param('dest');
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<p>Are you certain you want to remove the forwarding from $mailbox to $dest?\n";
- print "<p><input type=hidden name=\"service\" value=\"$svcnum\">\n";
- print "<input type=submit name=\"deleteforwardy\" value=\"Confirm\">\n";
- print "</body></html>\n";
- $printmainpage=0;
-
-} elsif ($query->param('deleteforwardy') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $service = $query->param('service');
-
- if ( my $error = delete_forward ( {
- 'authuser' => $username,
- 'svcnum' => $service,
- } ) ) {
- print "<html>$body\n";
- print "<p>$error\n";
- print "</body></html>\n";
-
- } else {
- print "<html>$body\n";
- print "<p>Forwarding Removed\n";
- print "</body></html>\n";
- }
-
- $printmainpage=0;
-
-} elsif ($query->param('addforward') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $mailbox = $query->param('mailbox');
-
- print "<html>$body\n";
- print "<form name=form1 action=\"$cgi\" method=post target=\"rightmainframe\">\n";
- print "<center><table border=0>\n";
- print "<input type=hidden name=\"account\" value=\"$account\">\n";
- print "<input type=hidden name=\"mailbox\" value=\"$mailbox\">\n";
- print "<tr><td>Forward mail from </td><td><p>$mailbox:</td><td> to </td></tr>\n";
- print "<tr><td></td><td><p>Destination:</td><td><input type=text name=\"dest\" value=\"\"></td></tr>\n";
- print "</table>\n";
- print "<input type=submit name=\"addforwarddst\" value=\"Add the Forwarding\">\n";
- print "</center>\n";
- print "</form>\n";
- print "<br>\n";
- print "<p> If you would like mail originally destined for the above address to be forwarded to a different email address then type that email address in the box next to <B>Destination:</B> and press the <B>Add the Forwarding</B> button.\n";
- print "<p> If you do not want to add mail forwarding then select a choice from the menu at the left, such as <B>List Accounts</B>.\n";
-
- $printmainpage=0;
-
-} elsif ($query->param('addforwarddst') ne '') {
-
- my $username = $query->cookie(-name=>'username'); # session checked
- select_package($username) unless $current_package;
- my $account = $query->param('account');
- my $dest = $query->param('dest');
-
- if ( my $error = add_forward ( {
- 'authuser' => $username,
- 'package' => $current_package,
- 'source' => $account,
- 'dest' => $dest,
- } ) ) {
- print "<html>$body\n";
- print "<p>$error\n";
- print "</body></html>\n";
-
- } else {
- print "<html>$body\n";
- print "<p>Forwarding Created\n";
- print "</body></html>\n";
- }
-
- $printmainpage=0;
-
-} elsif ($query->param('action') eq 'navframe') {
-
- print "<html><body bgcolor=bbbbbb>\n";
- print "<center><h2>NCI2000 MAIL ADMIN Web Interface</h2></center>\n";
-
- print "<br><center>Choose Action:</center><br>\n";
- print "<center><table border=0>\n";
- print "<ul>\n";
- print "<tr><td><li><a href=\"$cgi\?action=logout\" target=\"_top\">Log Off</a></td><tr>\n";
- print "<tr><td><li><a href=\"$cgi\?action=list_packages\" target=\"rightmainframe\">List Packages</a></td><tr>\n";
- print "<tr><td><li><a href=\"$cgi\?action=list_mailboxes\" target=\"rightmainframe\">List Accounts</a></td><tr>\n";
- print "<tr><td><li><a href=\"$cgi\?action=newmailbox\" target=\"rightmainframe\">Add Account</a></td><tr>\n";
- print "</ul>\n";
- print "</table></center>\n";
-
- print "<br><br><br>\n";
- print "</body></html>\n";
-
- $printmainpage = 0;
-
-} elsif ($query->param('action') eq 'rightmainframe') {
-
- print "<html>$body\n";
- print "<br><br><br>\n";
- print "<font size=4><----- Please choose function on the left menu</font>\n";
- print "<br><br>\n";
- print "<p> Choose <B>Log Off</B> when you are finished. This helps prevent unauthorized access to your accounts.\n";
- print "<p> Use <B>List Packages</B> when you administer multiple packages. When you have multiple domains at NCI2000 you are likely to have multiple packages. Use of <B>List Packages</B> is not necessary if administer only one package.\n";
- print "<p> Use <B>List Accounts</B> to view your current arrangement of mailboxes. From this list you my choose to make changes to existing mailboxes or delete mailboxes. If you would like to modify the forwarding associated with a mailbox then choose it from this list.\n";
- print "<p> Use <B>Add Account</B> when you would like an additional mailbox. After you have added the mailbox you may choose to make additional changes from the list provided by <B>List Accounts<B>.\n";
- print "</body></html>\n";
-
- $printmainpage = 0;
-
-}
-
-
-if ($query->param('action') eq 'login') {
-
- printheader();
- printlogin();
-
-} elsif ($query->param('action') eq 'logout') {
-
- destroysession();
- printheader();
- printlogin();
-
-} elsif ($printmainpage) {
-
-
- print "<html><head><title>NCI2000 MAIL ADMIN Web Interface</title></head>\n";
- print "<FRAMESET cols=\"160,*\" BORDER=\"3\">\n";
- print "<FRAME NAME=\"navframe\" src=\"$cgi?action=navframe\">\n";
- print "<FRAME NAME=\"rightmainframe\" src=\"$cgi?action=rightmainframe\">\n";
- print "</FRAMESET>\n";
- print "</html>\n";
-
-
-}
-
-sub getdatetime {
- my $today = localtime(time());
- my ($day,$mon,$dayofmon,$time,$year) = split(/\s+/,$today);
- my @datemonths = ("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
-
- my $numidx = "01";
- my ($nummon);
- foreach my $mons (@datemonths) {
- if ($mon eq $mons) {
- $nummon = $numidx;
- }
- $numidx++;
- }
-
- return "$year-$nummon-$dayofmon $time";
-
-}
-
-sub error {
-
- my $error = shift;
- my $arg1 = shift;
-
- printheader();
-
- if ($error eq 'not_admin') {
- print "<html><head><title>Error!</title></head>\n";
- print "$body\n";
- print "<center><h1><font face=arial>Error!</font></h1></center>\n";
- print "<font face=arial>Unauthorized attempt to access mail administration.</font>\n";
- print "<br><font face=arial>Please login again if you think this is an error.</font>\n";
- print "<form><input type=button value=\"<<Back\" OnClick=\"history.back()\"></form>\n";
- print "</body></html>\n";
- } elsif ($error eq 'exists') {
- print "<html><head><title>Error!</title></head>\n";
- print "$body\n";
- print "<center><h1><font face=arial>Error!</font></h1></center>\n";
- print "<font face=arial>The user you are trying to enter already exists. Please go back and enter a different username</font>\n";
- print "</font></body></html>\n";
- } elsif ($error eq 'ingroup') {
- print "<html><head><title>Error!</title></head>\n";
- print "$body\n";
- print "<center><h1><font face=arial>Error!</font></h1></center>\n";
- print "<font face=arial>This user is already in the group <i>$arg1</i>. Please go back and deselect group <i>$arg1</i> from the list.</font>\n";
- print "<form><input type=button value=\"<<Back\" OnClick=\"history.back()\"></form>\n";
- print "</font></body></html>\n";
- } elsif ($error eq 'sess_expired') {
- print "<html>$body\n";
- print "<center><font size=4>Your session has expired.</font></center>\n";
- print "<br><br><center>Please login again <a href=\"$cgi\?action=login\" target=\"_top\"> HERE</a></center>\n";
- print "</body></html>\n";
- } elsif ($error eq 'open') {
- print "<html>$body\n";
- print "<center><font size=4>Unable to open or rename file.</font></center>\n";
- print "<br><br><center>If this continues, please contact your administrator</center>\n";
- print "</body></html>\n";
- }
-
-
- exit;
-
-}
-
-
-#print a html header if not printed yet
-sub printheader {
-
- if ($printheader) {
- print "Content-Type: text/html\n\n";
- $printheader = 0;
- }
-
-}
-
-
-#verify user can access administration
-sub checksession {
-
- my $username = $query->cookie(-name=>'username');
- my $sessionid = $query->cookie(-name=>'ma_sessionid');
-
- if ($sessionid eq '') {
- printheader();
- if ($query->param()) {
- error('sess_expired');
- } else {
- printlogin();
- exit;
- }
- }
-
- my $now = time();
- my $founduser = 0;
- open(SESSFILE, "$sessionfile") || error('open');
- error('open') if -l "$tmpdir/adminsess.$$";
- open(NEWSESS, ">$tmpdir/adminsess.$$") || error('open');
- while (<SESSFILE>) {
- chomp();
- my ($user, $sess, $time, $pkgnum, $svcdomain, $domname) = split(/\s+/);
- next if $now - $sessexpire > $time;
- if ($username eq $user && !$founduser) {
- if ($sess eq $sessionid) {
- $founduser = 1;
- print NEWSESS "$user $sess $now $pkgnum $svcdomain $domname\n";
- $current_package=$pkgnum;
- $current_account=$svcdomain;
- $current_domname=$domname;
- next;
- }
- }
- print NEWSESS "$user $sess $time $pkgnum $svcdomain $domname\n";
- }
- close(SESSFILE);
- close(NEWSESS);
- system("mv $tmpdir/adminsess.$$ $sessionfile");
- error('sess_expired') unless $founduser;
-
- my $cookie1 = $query->cookie(-name=>'username',
- -value=>$username,
- -expires=>$cookieexpire,
- -domain=>$cookiedomain);
-
- my $cookie2 = $query->cookie(-name=>'ma_sessionid',
- -value=>$sessionid,
- -expires=>$cookieexpire,
- -domain=>$cookiedomain);
-
- print $query->header(-COOKIE=>[$cookie1, $cookie2]);
-
- $printheader = 0;
-
- return 0;
-
-}
-
-sub destroysession {
-
- my $username = $query->cookie(-name=>'username');
- my $sessionid = $query->cookie(-name=>'ma_sessionid');
-
- if ($sessionid eq '') {
- printheader();
- if ($query->param()) {
- error('sess_expired');
- } else {
- printlogin();
- exit;
- }
- }
-
- my $now = time();
- my $founduser = 0;
- open(SESSFILE, "$sessionfile") || error('open');
- error('open') if -l "$tmpdir/adminsess.$$";
- open(NEWSESS, ">$tmpdir/adminsess.$$") || error('open');
- while (<SESSFILE>) {
- chomp();
- my ($user, $sess, $time, $pkgnum, $svcdomain, $domname) = split(/\s+/);
- next if $now - $sessexpire > $time;
- if ($username eq $user && !$founduser) {
- if ($sess eq $sessionid) {
- $founduser = 1;
- next;
- }
- }
- print NEWSESS "$user $sess $time $pkgnum $svcdomain $domname\n";
- }
- close(SESSFILE);
- close(NEWSESS);
- system("mv $tmpdir/adminsess.$$ $sessionfile");
- error('sess_expired') unless $founduser;
-
- $printheader = 0;
-
- return 0;
-
-}
-
-# checks the username and pass against the database
-sub checkuserpass {
-
- my $username = shift;
- my $password = shift;
-
- my $error = authenticate ( {
- 'authuser' => $username,
- '_password' => $password,
- } );
-
- if ($error eq "$username OK") {
- return 1;
- }else{
- return 0;
- }
-
-}
-
-#printlogin prints a login page
-sub printlogin {
-
- print "<html>$body\n";
- print "<center><font size=4>Please login to access MAIL ADMIN</font></center>\n";
- print "<form action=\"$cgi\" method=post>\n";
- print "<center>Email Address: &nbsp; <input type=text name=\"username\">\n";
- print "<br>Email Password: <input type=password name=\"password\">\n";
- print "<br><input type=submit name=\"login\" value=\"Login\">\n";
- print "</form></center>\n";
- print "</body></html>\n";
-}
-
-
-#select_package chooses a administrable package if more than one exists
-sub select_package {
- my $user = shift;
- my $packages = list_packages($user);
- if (scalar(@{$packages}) eq 1) {
- $current_package = @{$packages}[0]->{'pkgnum'};
- set_package();
- }
- if (scalar(@{$packages}) > 1) {
-# print $query->redirect("$cgi\?action=list_packages");
- print "<p>No package selected. You must first <a href=\"$cgi\?action=list_packages\" target=\"rightmainframe\">select a package</a>.\n";
- exit;
- }
-}
-
-sub set_package {
-
- my $username = $query->cookie(-name=>'username');
- my $sessionid = $query->cookie(-name=>'ma_sessionid');
-
- if ($sessionid eq '') {
- printheader();
- if ($query->param()) {
- error('sess_expired');
- } else {
- printlogin();
- exit;
- }
- }
-
- my $now = time();
- my $founduser = 0;
- open(SESSFILE, "$sessionfile") || error('open');
- error('open') if -l "$tmpdir/adminsess.$$";
- open(NEWSESS, ">$tmpdir/adminsess.$$") || error('open');
- while (<SESSFILE>) {
- chomp();
- my ($user, $sess, $time, $pkgnum, $svcdomain, $domname) = split(/\s+/);
- next if $now - $sessexpire > $time;
- if ($username eq $user && !$founduser) {
- if ($sess eq $sessionid) {
- $founduser = 1;
- print NEWSESS "$user $sess $time $current_package $current_account $current_domname\n";
- next;
- }
- }
- print NEWSESS "$user $sess $time $pkgnum $svcdomain $domname\n";
- }
- close(SESSFILE);
- close(NEWSESS);
- system("mv $tmpdir/adminsess.$$ $sessionfile");
- error('sess_expired') unless $founduser;
-
- $printheader = 0;
-
- return 0;
-
-}
-
diff --git a/fs_selfadmin/FS-MailAdminServer/fs_mailadmind b/fs_selfadmin/FS-MailAdminServer/fs_mailadmind
deleted file mode 100755
index 746d782..0000000
--- a/fs_selfadmin/FS-MailAdminServer/fs_mailadmind
+++ /dev/null
@@ -1,366 +0,0 @@
-#!/usr/bin/perl -Tw
-
-eval 'exec /usr/bin/perl -Tw -S $0 ${1+"$@"}'
- if 0; # not running under some shell
-#
-# fs_mailadmind
-#
-# This is run REMOTELY over ssh by fs_mailadmin_server.
-#
-
-use strict;
-use Socket;
-
-use vars qw( $Debug );
-
-$Debug = 0;
-
-my($fs_mailadmind_socket)="/usr/local/freeside/fs_mailadmind_socket";
-
-$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-$|=1;
-
-warn "[fs_mailadmind] Reading locales...\n" if $Debug;
-chomp( my $n_cust_main_county = <STDIN> );
-my @cust_main_county = map {
- chomp( my $taxnum = <STDIN> );
- chomp( my $state = <STDIN> );
- chomp( my $county = <STDIN> );
- chomp( my $country = <STDIN> );
- {
- 'taxnum' => $taxnum,
- 'state' => $state,
- 'county' => $county,
- 'country' => $country,
- };
-} ( 1 .. $n_cust_main_county );
-
-warn "[fs_mailadmind] Reading package definitions...\n" if $Debug;
-chomp( my $n_part_pkg = <STDIN> );
-my @part_pkg = map {
- chomp( my $pkgpart = <STDIN> );
- chomp( my $pkg = <STDIN> );
- {
- 'pkgpart' => $pkgpart,
- 'pkg' => $pkg,
- };
-} ( 1 .. $n_part_pkg );
-
-warn "[fs_mailadmind] Reading POPs...\n" if $Debug;
-chomp( my $n_svc_acct_pop = <STDIN> );
-my @svc_acct_pop = map {
- chomp( my $popnum = <STDIN> );
- chomp( my $city = <STDIN> );
- chomp( my $state = <STDIN> );
- chomp( my $ac = <STDIN> );
- chomp( my $exch = <STDIN> );
- chomp( my $loc = <STDIN> );
- {
- 'popnum' => $popnum,
- 'city' => $city,
- 'state' => $state,
- 'ac' => $ac,
- 'exch' => $exch,
- 'loc' => $loc,
- };
-} ( 1 .. $n_svc_acct_pop );
-
-warn "[fs_mailadmind] Creating $fs_mailadmind_socket\n" if $Debug;
-my $uaddr = sockaddr_un($fs_mailadmind_socket);
-my $proto = getprotobyname('tcp');
-socket(Server,PF_UNIX,SOCK_STREAM,0) or die "socket: $!";
-unlink($fs_mailadmind_socket);
-bind(Server, $uaddr) or die "bind: $!";
-listen(Server,SOMAXCONN) or die "listen: $!";
-
-warn "[fs_mailadmind] Entering main loop...\n" if $Debug;
-my $paddr;
-for ( ; $paddr = accept(Client,Server); close Client) {
-
- chop( my $command = <Client> );
-
- if ( $command eq "signup_info" ) {
- warn "[fs_mailadmind] sending signup info...\n" if $Debug;
- print Client join("\n", $n_cust_main_county,
- map {
- $_->{taxnum},
- $_->{state},
- $_->{county},
- $_->{country},
- } @cust_main_county
- ), "\n";
-
- print Client join("\n", $n_part_pkg,
- map {
- $_->{pkgpart},
- $_->{pkg},
- } @part_pkg
- ), "\n";
-
- print Client join("\n", $n_svc_acct_pop,
- map {
- $_->{popnum},
- $_->{city},
- $_->{state},
- $_->{ac},
- $_->{exch},
- $_->{loc},
- } @svc_acct_pop
- ), "\n";
-
- } elsif ( $command eq "new_customer" ) {
- warn "[fs_mailadmind] reading customer signup...\n" if $Debug;
- my(
- $first, $last, $ss, $company, $address1, $address2, $city, $county,
- $state, $zip, $country, $daytime, $night, $fax, $payby, $payinfo,
- $paydate, $payname, $invoicing_list, $pkgpart, $username, $password,
- $popnum,
- ) = map { scalar(<Client>) } ( 1 .. 23 );
-
- warn "[fs_mailadmind] sending customer data to remote server...\n" if $Debug;
- print
- $first, $last, $ss, $company, $address1, $address2, $city, $county,
- $state, $zip, $country, $daytime, $night, $fax, $payby, $payinfo,
- $paydate, $payname, $invoicing_list, $pkgpart, $username, $password,
- $popnum,
- ;
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "authenticate" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading authentication material...\n" if $Debug;
- chop( my $password = <Client> );
- warn "[fs_mailadmind] sending information to remote server...\n" if $Debug;
- print "authenticate\n", $user, "\n", $password, "\n";
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "list_packages" ) {
- warn "[fs_mailadmind] reading user information to list_packages...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] sending user information to remote server...\n" if $Debug;
- print "list_packages\n", $user, "\n";
-
- warn "[fs_mailadmind] reading data from remote server...\n" if $Debug;
- chomp( my $n_packages = <STDIN> );
- my @packages = map {
- chomp( my $pkgnum = <STDIN> );
- chomp( my $domain = <STDIN> );
- chomp( my $account = <STDIN> );
- {
- 'pkgnum' => $pkgnum,
- 'domain' => $domain,
- 'account' => $account,
- };
- } ( 1 .. $n_packages );
-
- warn "[fs_mailadmind] sending data to local client...\n" if $Debug;
-
- print Client join("\n", $n_packages,
- map {
- $_->{pkgnum},
- $_->{domain},
- $_->{account},
- } @packages
- ), "\n";
-
- } elsif ( $command eq "list_mailboxes" ) {
- warn "[fs_mailadmind] reading user information to list_mailboxes...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading package number to list_mailboxes...\n" if $Debug;
- chop( my $package = <Client> );
- warn "[fs_mailadmind] sending user information to remote server...\n" if $Debug;
- print "list_mailboxes\n", $user, "\n", $package, "\n";
-
- warn "[fs_mailadmind] reading data from remote server...\n" if $Debug;
- chomp( my $n_svc_acct = <STDIN> );
- my @svc_acct = map {
- chomp( my $svcnum = <STDIN> );
- chomp( my $username = <STDIN> );
- chomp( my $_password = <STDIN> );
- {
- 'svcnum' => $svcnum,
- 'username' => $username,
- '_password' => $_password,
- };
- } ( 1 .. $n_svc_acct );
-
- warn "[fs_mailadmind] sending data to local client...\n" if $Debug;
-
- print Client join("\n", $n_svc_acct,
- map {
- $_->{svcnum},
- $_->{username},
- $_->{_password},
- } @svc_acct
- ), "\n";
-
- } elsif ( $command eq "delete_mailbox" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading account information to delete...\n" if $Debug;
- chop( my $account = <Client> );
- warn "[fs_mailadmind] sending information to remote server...\n" if $Debug;
- print "delete_mailbox\n", $user, "\n", $account, "\n";
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "password_mailbox" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading account information to password...\n" if $Debug;
- my(
- $account, $_password,
- ) = map { scalar(<Client>) } ( 1 .. 2 );
-
- warn "[fs_mailadmind] sending password data to remote server...\n" if $Debug;
- print "password_mailbox", "\n";
- print
- $user, "\n", $account, $_password,
- ;
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "add_mailbox" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading account information to create...\n" if $Debug;
- my(
- $package, $account, $_password,
- ) = map { scalar(<Client>) } ( 1 .. 3 );
-
- warn "[fs_mailadmind] sending service data to remote server...\n" if $Debug;
- print "add_mailbox", "\n";
- print
- $user, "\n", $package, $account, $_password,
- ;
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "add_forward" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading forward information to create...\n" if $Debug;
- my(
- $package, $source, $dest,
- ) = map { scalar(<Client>) } ( 1 .. 3 );
-
- warn "[fs_mailadmind] sending service data to remote server...\n" if $Debug;
- print "add_forward", "\n";
- print
- $user, "\n", $package, $source, $dest,
- ;
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "delete_forward" ) {
- warn "[fs_mailadmind] reading user information to auth...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading forward information to delete...\n" if $Debug;
- chop( my $service = <Client> );
- warn "[fs_mailadmind] sending information to remote server...\n" if $Debug;
- print "delete_forward\n", $user, "\n", $service, "\n";
-
- warn "[fs_mailadmind] reading error from remote server...\n" if $Debug;
- my $error = <STDIN>;
-
- warn "[fs_mailadmind] sending error to local client...\n" if $Debug;
- print Client $error;
-
- } elsif ( $command eq "list_forwards" ) {
- warn "[fs_mailadmind] reading user information to list_forwards...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading service number to list_forwards...\n" if $Debug;
- chop( my $service = <Client> );
- warn "[fs_mailadmind] sending user information to remote server...\n" if $Debug;
- print "list_forwards\n", $user, "\n", $service, "\n";
-
- warn "[fs_mailadmind] reading data from remote server...\n" if $Debug;
- chomp( my $n_svc_forward = <STDIN> );
- my @svc_forward = map {
- chomp( my $svcnum = <STDIN> );
- chomp( my $dest = <STDIN> );
- {
- 'svcnum' => $svcnum,
- 'dest' => $dest,
- };
- } ( 1 .. $n_svc_forward );
-
- warn "[fs_mailadmind] sending data to local client...\n" if $Debug;
-
- print Client join("\n", $n_svc_forward,
- map {
- $_->{svcnum},
- $_->{dest},
- } @svc_forward
- ), "\n";
-
- } elsif ( $command eq "list_pkg_forwards" ) {
- warn "[fs_mailadmind] reading user information to list_pkg_forwards...\n" if $Debug;
- chop( my $user = <Client> );
- warn "[fs_mailadmind] reading service number to list_forwards...\n" if $Debug;
- chop( my $package = <Client> );
- warn "[fs_mailadmind] sending user information to remote server...\n" if $Debug;
- print "list_pkg_forwards\n", $user, "\n", $package, "\n";
-
- warn "[fs_mailadmind] reading data from remote server...\n" if $Debug;
- chomp( my $n_svc_forward = <STDIN> );
- my @svc_forward = map {
- chomp( my $svcnum = <STDIN> );
- chomp( my $srcsvc = <STDIN> );
- chomp( my $dest = <STDIN> );
- {
- 'svcnum' => $svcnum,
- 'srcsvc' => $srcsvc,
- 'dest' => $dest,
- };
- } ( 1 .. $n_svc_forward );
-
- warn "[fs_mailadmind] sending data to local client...\n" if $Debug;
-
- print Client join("\n", $n_svc_forward,
- map {
- $_->{svcnum},
- $_->{srcsvc},
- $_->{dest},
- } @svc_forward
- ), "\n";
-
- } else {
- die "unexpected command from client: $command";
- }
-
-}
-
diff --git a/fs_selfadmin/README b/fs_selfadmin/README
deleted file mode 100644
index d9857f0..0000000
--- a/fs_selfadmin/README
+++ /dev/null
@@ -1,27 +0,0 @@
-
-This collection of files implements a 'self-administered mail service.'
-Configuration is similar to fs_signupd
-
-Additionally you will need to modify the database:
-
-CREATE TABLE svc_acct_admin (
- svcnum int primary key,
- adminsvc int not null
-);
-
-creating both as keys might be good
-
-(and perform the dbdef-create)
-
-
-As it exists now, a package containing one svc_domain, at least one
-svc_acct_admin, and other services can have its svc_acct's and svc_forward's
-manipulated by the svc_acct referenced by a svc_acct_admin in the package.
-
-One svc_acct may be referenced as svc_acct_admin for multiple packages.
-
-fs_mailadmin_server contains hard coded references to service numbers which
-will require editing for your system.
-
-It's not a lot, but it might provide inspiration.
-
diff --git a/fs_selfadmin/fs_mailadmin_server b/fs_selfadmin/fs_mailadmin_server
deleted file mode 100755
index ef47885..0000000
--- a/fs_selfadmin/fs_mailadmin_server
+++ /dev/null
@@ -1,642 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# fs_mailadmin_server
-#
-
-use strict;
-use IO::Handle;
-use FS::SSH qw(sshopen2);
-use FS::UID qw(adminsuidsetup);
-use FS::Conf;
-use FS::Record qw( qsearch qsearchs );
-use FS::cust_main_county;
-use FS::cust_main;
-use FS::svc_acct_admin;
-
-use vars qw( $opt $Debug $conf $default_domain );
-
-$Debug = 1;
-
-#my @payby = qw(CARD PREPAY);
-
-my $user = shift or die &usage;
-&adminsuidsetup( $user );
-
-$conf = new FS::Conf;
-$default_domain = $conf->config('domain');
-
-my $machine = shift or die &usage;
-
-my $agentnum = shift or die &usage;
-my $agent = qsearchs( 'agent', { 'agentnum' => $agentnum } ) or die &usage;
-my $pkgpart = $agent->pkgpart_hashref;
-
-my $refnum = shift or die &usage;
-
-#causing trouble for some folks
-#$SIG{CHLD} = sub { wait() };
-
-my($fs_mailadmind)=$conf->config('fs_mailadmind');
-
-while (1) {
- my($reader,$writer)=(new IO::Handle, new IO::Handle);
- $writer->autoflush(1);
- warn "[fs_mailadmin_server] Connecting to $machine...\n" if $Debug;
- sshopen2($machine,$reader,$writer,$fs_mailadmind);
-
- my $data;
-
- warn "[fs_mailadmin_server] Sending locales...\n" if $Debug;
- my @cust_main_county = qsearch('cust_main_county', {} );
- print $writer $data = join("\n",
- ( scalar(@cust_main_county) || die "no tax rates (cust_main_county records)" ),
- map {
- $_->taxnum,
- $_->state,
- $_->county,
- $_->country,
- } @cust_main_county
- ),"\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
- warn "[fs_mailadmin_server] Sending package definitions...\n" if $Debug;
- my @part_pkg = grep { $_->svcpart('svc_acct') && $pkgpart->{ $_->pkgpart } }
- qsearch( 'part_pkg', {} );
- print $writer $data = join("\n",
- ( scalar(@part_pkg) || die "no usable package definitions, agent $agentnum" ),
- map {
- $_->pkgpart,
- $_->pkg,
- } @part_pkg
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
- warn "[fs_mailadmin_server] Sending POPs...\n" if $Debug;
- my @svc_acct_pop = qsearch ('svc_acct_pop',{} );
- print $writer $data = join("\n",
- ( scalar(@svc_acct_pop) || die "No points of presence (svc_acct_pop records)" ),
- map {
- $_->popnum,
- $_->city,
- $_->state,
- $_->ac,
- $_->exch,
- $_->loc,
- } @svc_acct_pop
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
- warn "[fs_mailadmin_server] Entering main loop...\n" if $Debug;
-COMMAND: while (1) {
- warn "[fs_mailadmin_server] Reading (waiting for) command...\n" if $Debug;
- chop( my($command, $user) = map { scalar(<$reader>) } ( 1 .. 2 ) );
- my $domain = $default_domain;
- $user =~ /^([\w\.\-]+)\@(([\w\-]+\.)+\w+)$/;
- ($user, $domain) = ($1, $2);
-
- if ($command eq 'authenticate'){
- warn "[fs_mailadmin_server] Processing authenticate command for $user \n" if $Debug;
- chop( my($password) = map { scalar(<$reader>) } ( 1 .. 1 ) );
-
- my $error = '';
-
- my @svc_domain = qsearchs('svc_domain', { 'domain' => $domain });
-
- if (scalar(@svc_domain) != 1) {
- warn "Nonexistant or duplicate service account for \"$domain\"";
- next COMMAND;
- }
-
- my @svc_acct = qsearchs('svc_acct', { 'username' => $user,
- 'domsvc' => $svc_domain[0]->svcnum });
- if (scalar(@svc_acct) != 1) {
- die "Nonexistant or duplicate service account for \"$user\"";
- next COMMAND;
- }
-
- if ($svc_acct[0]->_password eq $password) {
- $error = "$user\@$domain OK";
- }else{
- $error = "$user\@$domain FAILED";
- }
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
- }
- elsif ($command eq 'list_packages'){
- warn "[fs_mailadmin_server] Processing list_packages command for $user \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval {find_administrable_packages( $user, $domain )};
- warn "$@" if $@;
-
- my %packages;
- my %accounts;
-
- foreach my $package (@packages) {
- $packages{my $pkgnum = $package->getfield('pkgnum')} = $default_domain;
- $accounts{$pkgnum} = 0;
- my @services = qsearch('cust_svc', { 'pkgnum' => $pkgnum });
- foreach my $service (@services) {
- if ($service->getfield('svcpart') eq '4'){
- my $account=qsearchs('svc_domain', { 'svcnum' => $service->getfield('svcnum') });
- $packages{$pkgnum}=$account->getfield('domain');
- $accounts{$pkgnum}=$account->getfield('svcnum');
- }
- }
- }
-
- print $writer $data = join("\n",
- ( scalar(keys(%packages)) ),
- map {
- $_,
- $packages{$_},
- $accounts{$_},
- } keys(%packages)
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
- }elsif ($command eq 'list_mailboxes'){
-
- warn "[fs_mailadmin_server] Processing list_mailboxes command for $user" if $Debug;
- chop( my($pkgnum) = map { scalar(<$reader>) } ( 1 .. 1 ) );
- warn "package $pkgnum \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval {find_administrable_packages( $user, $domain )};
- warn "$@" if $@;
-
- my @accounts;
-
- foreach my $package (@packages) {
- next unless ($pkgnum eq $package->getfield('pkgnum'));
- my @services = qsearch('cust_svc', { 'pkgnum' => $package->getfield('pkgnum') });
- foreach my $service (@services) {
- if ($service->getfield('svcpart') eq '2'){
- my $account=qsearchs('svc_acct', { 'svcnum' => $service->getfield('svcnum') });
-# $accounts[$#accounts+1]=$account->getfield('username');
- $accounts[$#accounts+1]=$account;
- }
- }
- }
-
- print $writer $data = join("\n",
-# ( scalar(@accounts) || die "No accounts (svc_acct records)" ),
- ( scalar(@accounts) ),
- map {
- $_->svcnum,
-# $_->username,
- $_->email,
-# $_->_password,
- '*****',
- } @accounts
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
-
- } elsif ($command eq 'delete_mailbox'){
- warn "[fs_mailadmin_server] Processing delete_mailbox command for $user " if $Debug;
- chop( my($account) = map { scalar(<$reader>) } ( 1 .. 1 ) );
- warn "account $account \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval { find_administrable_packages($user, $domain) };
- warn "$@" if $@;
- $error ||= "$@" if $@;
-
- my @svc_acct = qsearchs('svc_acct', { 'svcnum' => $account }) unless $error;
- if (scalar(@svc_acct) != 1) { $error ||= 'Nonexistant or duplicate service account for user.' };
- if (! $error && check_administrator(\@packages, $svc_acct[0])){
-# not sure about the next three lines... do we delete? or return error
- foreach my $svc_forward (qsearch('svc_forward', { 'dstsvc' => $svc_acct[0]->getfield('svcnum') })) {
- $error ||= $svc_forward->delete;
- }
- foreach my $svc_forward (qsearch('svc_forward', { 'srcsvc' => $svc_acct[0]->getfield('svcnum') })) {
- $error ||= $svc_forward->delete;
- }
- $error ||= $svc_acct[0]->delete;
- } else {
- $error ||= "Illegal attempt to remove service";
- }
-
-
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
-
- } elsif ($command eq 'password_mailbox'){
- warn "[fs_mailadmin_server] Processing password_mailbox command for $user " if $Debug;
- chop( my($account, $_password) = map { scalar(<$reader>) } ( 1 .. 2 ) );
- warn "account $account with password $_password \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval { find_administrable_packages($user, $domain) };
- warn "$@" if $@;
- $error ||= "$@" if $@;
-
- my @svc_acct = qsearchs('svc_acct', { 'svcnum' => $account }) unless $error;
- if (scalar(@svc_acct) != 1) { $error ||= 'Nonexistant or duplicate service account.' };
-
- if (! $error && check_administrator(\@packages, $svc_acct[0])){
- my $new = new FS::svc_acct ({$svc_acct[0]->hash});
- $new->setfield('_password' => $_password);
- $error ||= $new->replace($svc_acct[0]);
- } else {
- $error ||= "Illegal attempt to change password";
- }
-
-
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
-
- } elsif ($command eq 'add_mailbox'){
- warn "[fs_mailadmin_server] Processing add_mailbox command for $user " if $Debug;
- chop( my($target_package, $account, $_password) = map { scalar(<$reader>) } ( 1 .. 3 ) );
- warn "in package $target_package account $account with password $_password \n" if $Debug;
-
- my $found_package;
- my $domainsvc=0;
- my $svcpart=2; # this is 'email box'
- my $svcpartsm=3; # this is 'domain alias'
- my $error = '';
- my $found = 0;
-
- my @packages = eval { find_administrable_packages($user, $domain) };
- warn "$@" if $@;
- $error ||= "$@" if $@;
-
- foreach my $package (@packages) {
- if ($package->getfield('pkgnum') eq $target_package) {
- $found = 1;
- $found_package=$package;
- my @services = qsearch('cust_svc', { 'pkgnum' => $target_package });
- foreach my $service (@services) {
- if ($service->getfield('svcpart') eq '4'){
- my @svc_domain=qsearchs('svc_domain', { 'svcnum' => $service->getfield('svcnum') });
- if (scalar(@svc_domain) eq 1) {
- $domainsvc=$svc_domain[0]->getfield('svcnum');
- }
- }
- }
- last;
- }
- }
- warn "User $user does not have administration rights to package $target_package\n" unless $found;
- $error ||= "User $user does not have administration rights to package $target_package\n" unless $found;
-
- my $part_pkg = qsearchs('part_pkg',{'pkgpart'=>$found_package->getfield('pkgpart')});
-
- #list of services this pkgpart includes (although at the moment we only care
- # about $svcpart
- my $pkg_svc;
- my %pkg_svc = ();
- foreach $pkg_svc ( qsearch('pkg_svc',{'pkgpart'=> $found_package->pkgpart }) ) {
- $pkg_svc{$pkg_svc->svcpart} = $pkg_svc->quantity if $pkg_svc->quantity;
- }
-
- my @services = qsearch('cust_svc', {'pkgnum' => $found_package->getfield('pkgnum'),
- 'svcpart' => $svcpart,
- });
-
- if (scalar(@services) >= $pkg_svc{$svcpart}) {
- $error="Maximum allowed already reached.";
- }
-
- my $svc_acct = new FS::svc_acct ( {
- 'pkgnum' => $found_package->pkgnum,
- 'svcpart' => $svcpart,
- 'username' => $account,
- 'domsvc' => $domainsvc,
- '_password' => $_password,
- } );
-
- my $y = $svc_acct->setdefault; # arguably should be in new method
- $error ||= $y unless ref($y);
- #and just in case you were silly
- $svc_acct->pkgnum($found_package->pkgnum);
- $svc_acct->svcpart($svcpart);
- $svc_acct->username($account);
- $svc_acct->domsvc($domainsvc);
- $svc_acct->_password($_password);
-
- $error ||= $svc_acct->check;
-
- if ( ! $error ) { #in this case, $cust_pkg should always
- #be definied, but....
- $error ||= $svc_acct->insert;
- warn "WARNING: $error on pre-checked svc_acct record!" if $error;
- }
-
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
-
- }elsif ($command eq 'list_forwards'){
-
- warn "[fs_mailadmin_server] Processing list_forwards command for $user" if $Debug;
- chop( my($svcnum) = map { scalar(<$reader>) } ( 1 .. 1 ) );
- warn "service $svcnum \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval {find_administrable_packages( $user, $domain )};
- warn "$@" if $@;
-
- my @forwards;
-
- foreach my $package (@packages) {
-# next unless ($pkgnum eq $package->getfield('pkgnum'));
- my @services = qsearch('cust_svc', { 'pkgnum' => $package->getfield('pkgnum') });
- foreach my $service (@services) {
- if ($service->getfield('svcpart') eq '10'){
- my $forward=qsearchs('svc_forward', { 'svcnum' => $service->getfield('svcnum') });
- $forwards[$#forwards+1]=$forward if ($forward->getfield('srcsvc') == $svcnum);
- }
- }
- }
-
- print $writer $data = join("\n",
- ( scalar(@forwards) ),
- map {
- $_->svcnum,
- ($_->dstsvc ? qsearchs('svc_acct', {'svcnum' => $_->dstsvc})->email : $_->dst),
- } @forwards
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
-
- }elsif ($command eq 'list_pkg_forwards'){
-
- warn "[fs_mailadmin_server] Processing list_pkg_forwards command for $user" if $Debug;
- chop( my($pkgnum) = map { scalar(<$reader>) } ( 1 .. 1 ) );
- warn "package $pkgnum \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval {find_administrable_packages( $user, $domain )};
- warn "$@" if $@;
-
- my @forwards;
-
- foreach my $package (@packages) {
- next unless ($pkgnum eq $package->getfield('pkgnum'));
- my @services = qsearch('cust_svc', { 'pkgnum' => $package->getfield('pkgnum') });
- foreach my $service (@services) {
- if ($service->getfield('svcpart') eq '10'){
- my $forward=qsearchs('svc_forward', { 'svcnum' => $service->getfield('svcnum') });
- $forwards[$#forwards+1]=$forward;
- }
- }
- }
-
- print $writer $data = join("\n",
- ( scalar(@forwards) ),
- map {
- $_->svcnum,
- $_->srcsvc,
- ($_->dstsvc ? qsearchs('svc_acct', {'svcnum' => $_->dstsvc})->email : $_->dst),
- } @forwards
- ), "\n";
- warn "[fs_mailadmin_server] $data\n" if $Debug > 2;
-
-
- } elsif ($command eq 'delete_forward'){
- warn "[fs_mailadmin_server] Processing delete_forward command for $user " if $Debug;
- chop( my($forward) = map { scalar(<$reader>) } ( 1 .. 1 ) );
- warn "forward $forward \n" if $Debug;
-
- my $error = '';
-
- my @packages = eval { find_administrable_packages($user, $domain) };
- warn "$@" if $@;
- $error ||= "$@" if $@;
-
- my @svc_forward = qsearchs('svc_forward', { 'svcnum' => $forward }) unless $error;
- if (scalar(@svc_forward) != 1) { $error ||= 'Nonexistant or duplicate service account for user.' };
- if (! $error && check_administrator(\@packages, $svc_forward[0])){
-# not sure about the next three lines... do we delete? or return error
- $error ||= $svc_forward[0]->delete;
- } else {
- $error ||= "Illegal attempt to remove service";
- }
-
-
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
-
- } elsif ($command eq 'add_forward'){
- warn "[fs_mailadmin_server] Processing add_forward command for $user " if $Debug;
- chop( my($target_package, $source, $dest) = map { scalar(<$reader>) } ( 1 .. 3 ) );
- warn "in package $target_package source $source with destination $dest \n" if $Debug;
-
- my $found_package;
- my $domainsvc=0;
- my $svcpart=10; # this is 'forward service'
- my $error = '';
- my $found = 0;
-
- my @packages = eval { find_administrable_packages($user, $domain) };
- warn "$@" if $@;
- $error ||= "$@" if $@;
-
- foreach my $package (@packages) {
- if ($package->getfield('pkgnum') eq $target_package) {
- $found = 1;
- $found_package=$package;
- last;
- }
- }
- warn "User $user does not have administration rights to package $target_package\n" unless $found;
- $error ||= "User $user does not have administration rights to package $target_package\n" unless $found;
-
- my $svc_acct = qsearchs('svc_acct', { 'svcnum' => $source });
- warn "Forwarding source $source does not exist.\n" unless $svc_acct;
- $error ||= "Forwarding source $source does not exist.\n" unless $svc_acct;
-
- my $cust_svc = qsearchs('cust_svc', { 'svcnum' => $source });
- warn "Forwarding source $source not attached to any account.\n" unless $cust_svc;
- $error ||= "Forwarding source $source not attached to any account.\n" unless $cust_svc;
-
- if ( ! $error ) {
- warn "Forwarding source $source is not in package $target_package\n"
- unless ($cust_svc->getfield('pkgnum') == $target_package);
- $error ||= "Forwarding source $source is not in package $target_package\n"
- unless ($cust_svc->getfield('pkgnum') == $target_package);
- }
-
- my $part_pkg = qsearchs('part_pkg',{'pkgpart'=>$found_package->getfield('pkgpart')});
-
- #list of services this pkgpart includes (although at the moment we only care
- # about $svcpart
- my $pkg_svc;
- my %pkg_svc = ();
- foreach $pkg_svc ( qsearch('pkg_svc',{'pkgpart'=> $found_package->pkgpart }) ) {
- $pkg_svc{$pkg_svc->svcpart} = $pkg_svc->quantity if $pkg_svc->quantity;
- }
-
- my @services = qsearch('cust_svc', {'pkgnum' => $found_package->getfield('pkgnum'),
- 'svcpart' => $svcpart,
- });
-
- if (scalar(@services) >= $pkg_svc{$svcpart}) {
- $error="Maximum allowed already reached.";
- }
-
- my $svc_forward = new FS::svc_forward ( {
- 'pkgnum' => $found_package->pkgnum,
- 'svcpart' => $svcpart,
- 'srcsvc' => $source,
- 'dstsvc' => 0,
- 'dst' => $dest,
- } );
-
- my $y = $svc_forward->setdefault; # arguably should be in new method
- $error ||= $y unless ref($y);
- #and just in case you were silly
- $svc_forward->pkgnum($found_package->pkgnum);
- $svc_forward->svcpart($svcpart);
- $svc_forward->srcsvc($source);
- $svc_forward->dstsvc(0);
- $svc_forward->dst($dest);
-
- $error ||= $svc_forward->check;
-
- if ( ! $error ) { #in this case, $cust_pkg should always
- #be definied, but....
- $error ||= $svc_forward->insert;
- warn "WARNING: $error on pre-checked svc_forward record!" if $error;
- }
-
- warn "[fs_mailadmin_server] Sending results...\n" if $Debug;
- print $writer $error, "\n";
-
- } else {
- warn "[fs_mailadmin_server] Bad command: $command \n" if $Debug;
- print $writer "Bad command \n";
- }
- }
- close $writer;
- close $reader;
- warn "connection to $machine lost! waiting 60 seconds...\n";
- sleep 60;
- warn "reconnecting...\n";
-}
-
-sub usage {
- die "Usage:\n\n fs_mailadmin_server user machine agentnum refnum\n";
-}
-
-#sub find_administrable_packages {
-# my $user = shift;
-#
-# my $error = '';
-#
-# my @svc_acct = qsearchs('svc_acct', { 'username' => $user });
-# if (scalar(@svc_acct) != 1) {
-# die "Nonexistant or duplicate service account for \"$user\"";
-# }
-#
-# my @cust_svc = qsearchs('cust_svc', { 'svcnum' => $svc_acct[0]->getfield('svcnum') });
-# if (scalar(@cust_svc) != 1 ) {
-# die "Nonexistant or duplicate customer service for \"$user\"";
-# }
-#
-# my @cust_pkg = qsearchs('cust_pkg', { 'pkgnum' => $cust_svc[0]->getfield('pkgnum') });
-# if (scalar(@cust_pkg) != 1) {
-# die "Nonexistant or duplicate customer package for \"$user\"";
-# }
-#
-# my @cust_main = qsearchs('cust_main', { 'custnum' => $cust_pkg[0]->getfield('custnum') });
-# if (scalar(@cust_main) != 1 ) {
-# die "Nonexistant or duplicate customer for \"$user\"";
-# }
-#
-# my @packages = $cust_main[0]->ncancelled_pkgs;
-#}
-
-sub find_administrable_packages {
- my $user = shift;
- my $domain = shift;
-
- my @packages;
- my $error = '';
-
- my @svc_domain = qsearchs('svc_domain', { 'domain' => $domain });
-
- if (scalar(@svc_domain) != 1) {
- die "Nonexistant or duplicate service account for \"$domain\"";
- }
-
- my @svc_acct = qsearchs('svc_acct', { 'username' => $user,
- 'domsvc' => $svc_domain[0]->svcnum });
- if (scalar(@svc_acct) != 1) {
- die "Nonexistant or duplicate service account for \"$user\"";
- }
-
- my @svc_acct_admin = qsearch('svc_acct_admin', {'adminsvc' => $svc_acct[0]->getfield('svcnum') });
- die "Nonexistant or duplicate customer service for \"$user\"" unless scalar(@svc_acct_admin);
-
- foreach my $svc_acct_admin (@svc_acct_admin) {
- my @cust_svc = qsearchs('cust_svc', { 'svcnum' => $svc_acct_admin->getfield('svcnum') });
- if (scalar(@cust_svc) != 1 ) {
- die "Nonexistant or duplicate customer service for admin \"$svc_acct_admin->getfield('svcnum')\"";
- }
-
- my @cust_pkg = qsearchs('cust_pkg', { 'pkgnum' => $cust_svc[0]->getfield('pkgnum') });
- if (scalar(@cust_pkg) != 1) {
- die "Nonexistant or duplicate customer package for admin \"$user\"";
- }
-
- push @packages, $cust_pkg[0] unless $cust_pkg[0]->getfield('cancel');
-
- }
- (@packages);
-}
-
-sub check_administrator {
- my ($allowed_packages_aref, $svc_acct_ref) = @_;
-
- my $error = '';
- my $found = 0;
-
- {
- my @cust_svc = qsearchs('cust_svc', { 'svcnum' => $svc_acct_ref->getfield('svcnum') });
- if (scalar(@cust_svc) != 1 ) {
- warn "Nonexistant or duplicate customer service for \"$svc_acct_ref->getfield('username')\"";
- last;
- }
-
- my @cust_pkg = qsearchs('cust_pkg', { 'pkgnum' => $cust_svc[0]->getfield('pkgnum') });
- if (scalar(@cust_pkg) != 1) {
- warn "Nonexistant or duplicate customer package for \"$svc_acct_ref->getfield('username')\"";
- last;
- }
-
- foreach my $package (@$allowed_packages_aref) {
- if ($package->getfield('pkgnum') eq $cust_pkg[0]->getfield('pkgnum')) {
- $found = 1;
- last;
- }
- }
- }
-
- $found;
-}
-
-sub check_add {
- my ($allowed_packages_aref, $target_package) = @_;
-
- my $error = '';
- my $found = 0;
-
- foreach my $package (@$allowed_packages_aref) {
- if ($package->getfield('pkgnum') eq $target_package) {
- $found = 1;
- last;
- }
- }
-
- $found;
-}
-
diff --git a/fs_selfservice/DEPLOY b/fs_selfservice/DEPLOY
deleted file mode 100755
index 6341278..0000000
--- a/fs_selfservice/DEPLOY
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-
-#this is a quick hack for my dev machine. do not use it.
-# see the "make install-selfservice" and "make update-selfservice" makefile
-# targets to properly install this stuff.
-
-#kill `cat /var/run/freeside-selfservice-server.fs_selfservice.pid`
-
-cd FS-SelfService
-perl Makefile.PL && make && make install
-cd ..
-
-( cd ..; make deploy; cd fs_selfservice )
-
-cp /home/ivan/freeside/fs_selfservice/FS-SelfService/cgi/* /var/www/MyAccount
-chown freeside /var/www/MyAccount/*.cgi
-chmod 755 /var/www/MyAccount/*.cgi
-ln -s /var/www/MyAccount/selfservice.cgi /var/www/MyAccount/index.cgi || true
-
- #cp /home/ivan/freeside/fs_signup/FS-SignupClient/cgi/* /var/www/signup/
- ##mv /var/www/signup/signup-snarf.html /var/www/signup/signup.html #!!!!!
- ##mv /var/www/signup/signup-billaddress.html /var/www/signup/signup.html #!!!!!
- ##mv /var/www/signup/signup-freeoption.html /var/www/signup/signup.html #!!!!!
- #chown freeside /var/www/signup/signup.cgi
- #chmod 755 /var/www/signup/signup.cgi
- #ln -s /var/www/signup/signup.cgi /var/www/signup/index.cgi || true
-
diff --git a/fs_selfservice/FS-SelfService/Changes b/fs_selfservice/FS-SelfService/Changes
deleted file mode 100644
index b9e26b7..0000000
--- a/fs_selfservice/FS-SelfService/Changes
+++ /dev/null
@@ -1,6 +0,0 @@
-Revision history for Perl extension FS::SelfService.
-
-0.01 Tue May 28 16:49:41 2002
- - original version; created by h2xs 1.21 with options
- -A -X -n FS::SelfService
-
diff --git a/fs_selfservice/FS-SelfService/MANIFEST b/fs_selfservice/FS-SelfService/MANIFEST
deleted file mode 100644
index ebd0d3b..0000000
--- a/fs_selfservice/FS-SelfService/MANIFEST
+++ /dev/null
@@ -1,6 +0,0 @@
-Changes
-Makefile.PL
-MANIFEST
-SelfService.pm
-test.pl
-freeside-selfservice-clientd
diff --git a/fs_selfservice/FS-SelfService/Makefile.PL b/fs_selfservice/FS-SelfService/Makefile.PL
deleted file mode 100644
index 85c92b4..0000000
--- a/fs_selfservice/FS-SelfService/Makefile.PL
+++ /dev/null
@@ -1,20 +0,0 @@
-use ExtUtils::MakeMaker;
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- 'NAME' => 'FS::SelfService',
- 'VERSION_FROM' => 'SelfService.pm', # finds $VERSION
- 'EXE_FILES' => [ 'freeside-selfservice-clientd',
- #'freeside-selfservice-xmlrpc-server',
- ],
- 'INSTALLSCRIPT' => '/usr/local/sbin',
- 'INSTALLSITEBIN' => '/usr/local/sbin',
- 'INSTALLSITESCRIPT' => '/usr/local/sbin', #recent deb users this...
- 'PERM_RWX' => '750',
- 'PREREQ_PM' => {
- 'Storable' => 2.09,
- }, # e.g., Module::Name => 1.1
- ($] >= 5.005 ? ## Add these new keywords supported since 5.005
- (ABSTRACT_FROM => 'SelfService.pm', # retrieve abstract from module
- AUTHOR => 'Ivan Kohler <ivan-freeside-selfservice@420.am>') : ()),
-);
diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm
deleted file mode 100644
index c3026fa..0000000
--- a/fs_selfservice/FS-SelfService/SelfService.pm
+++ /dev/null
@@ -1,1098 +0,0 @@
-package FS::SelfService;
-
-use strict;
-use vars qw($VERSION @ISA @EXPORT_OK $dir $socket %autoload $tag);
-use Exporter;
-use Socket;
-use FileHandle;
-#use IO::Handle;
-use IO::Select;
-use Storable 2.09 qw(nstore_fd fd_retrieve);
-
-$VERSION = '0.03';
-
-@ISA = qw( Exporter );
-
-$dir = "/usr/local/freeside";
-$socket = "$dir/selfservice_socket";
-$socket .= '.'.$tag if defined $tag && length($tag);
-
-#maybe should ask ClientAPI for this list
-%autoload = (
- 'passwd' => 'passwd/passwd',
- 'chfn' => 'passwd/passwd',
- 'chsh' => 'passwd/passwd',
- 'login' => 'MyAccount/login',
- 'logout' => 'MyAccount/logout',
- 'customer_info' => 'MyAccount/customer_info',
- 'edit_info' => 'MyAccount/edit_info', #add to ss cgi!
- 'invoice' => 'MyAccount/invoice',
- 'invoice_logo' => 'MyAccount/invoice_logo',
- 'list_invoices' => 'MyAccount/list_invoices', #?
- 'cancel' => 'MyAccount/cancel', #add to ss cgi!
- 'payment_info' => 'MyAccount/payment_info',
- 'process_payment' => 'MyAccount/process_payment',
- 'process_prepay' => 'MyAccount/process_prepay',
- 'list_pkgs' => 'MyAccount/list_pkgs', #add to ss cgi (added?)
- 'list_svcs' => 'MyAccount/list_svcs', #add to ss cgi (added?)
- 'order_pkg' => 'MyAccount/order_pkg', #add to ss cgi!
- 'cancel_pkg' => 'MyAccount/cancel_pkg', #add to ss cgi!
- 'charge' => 'MyAccount/charge', #?
- 'part_svc_info' => 'MyAccount/part_svc_info',
- 'provision_acct' => 'MyAccount/provision_acct',
- 'provision_external' => 'MyAccount/provision_external',
- 'unprovision_svc' => 'MyAccount/unprovision_svc',
- 'myaccount_passwd' => 'MyAccount/myaccount_passwd',
- 'signup_info' => 'Signup/signup_info',
- 'new_customer' => 'Signup/new_customer',
- 'agent_login' => 'Agent/agent_login',
- 'agent_logout' => 'Agent/agent_logout',
- 'agent_info' => 'Agent/agent_info',
- 'agent_list_customers' => 'Agent/agent_list_customers',
-);
-@EXPORT_OK = ( keys(%autoload), qw( regionselector expselect popselector ) );
-
-$ENV{'PATH'} ='/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-my $freeside_uid = scalar(getpwnam('freeside'));
-die "not running as the freeside user\n" if $> != $freeside_uid;
-
--e $dir or die "FATAL: $dir doesn't exist!";
--d $dir or die "FATAL: $dir isn't a directory!";
--r $dir or die "FATAL: Can't read $dir as freeside user!";
--x $dir or die "FATAL: $dir not searchable (executable) as freeside user!";
-
-foreach my $autoload ( keys %autoload ) {
-
- my $eval =
- "sub $autoload { ". '
- my $param;
- if ( ref($_[0]) ) {
- $param = shift;
- } else {
- #warn scalar(@_). ": ". join(" / ", @_);
- $param = { @_ };
- }
-
- $param->{_packet} = \''. $autoload{$autoload}. '\';
-
- simple_packet($param);
- }';
-
- eval $eval;
- die $@ if $@;
-
-}
-
-sub simple_packet {
- my $packet = shift;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($socket)) or die "connect to $socket: $!";
- nstore_fd($packet, \*SOCK) or die "can't send packet: $!";
- SOCK->flush;
-
- #shoudl trap: Magic number checking on storable file failed at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/fd_retrieve.al) line 337, at /usr/local/share/perl/5.6.1/FS/SelfService.pm line 71
-
- #block until there is a message on socket
-# my $w = new IO::Select;
-# $w->add(\*SOCK);
-# my @wait = $w->can_read;
- my $return = fd_retrieve(\*SOCK) or die "error reading result: $!";
- die $return->{'_error'} if defined $return->{_error} && $return->{_error};
-
- $return;
-}
-
-=head1 NAME
-
-FS::SelfService - Freeside self-service API
-
-=head1 SYNOPSIS
-
- # password and shell account changes
- use FS::SelfService qw(passwd chfn chsh);
-
- # "my account" functionality
- use FS::SelfService qw( login customer_info invoice cancel payment_info process_payment );
-
- my $rv = login( { 'username' => $username,
- 'domain' => $domain,
- 'password' => $password,
- }
- );
-
- if ( $rv->{'error'} ) {
- #handle login error...
- } else {
- #successful login
- my $session_id = $rv->{'session_id'};
- }
-
- my $customer_info = customer_info( { 'session_id' => $session_id } );
-
- #payment_info and process_payment are available in 1.5+ only
- my $payment_info = payment_info( { 'session_id' => $session_id } );
-
- #!!! process_payment example
-
- #!!! list_pkgs example
-
- #!!! order_pkg example
-
- #!!! cancel_pkg example
-
- # signup functionality
- use FS::SelfService qw( signup_info new_customer );
-
- my $signup_info = signup_info;
-
- $rv = new_customer( {
- 'first' => $first,
- 'last' => $last,
- 'company' => $company,
- 'address1' => $address1,
- 'address2' => $address2,
- 'city' => $city,
- 'state' => $state,
- 'zip' => $zip,
- 'country' => $country,
- 'daytime' => $daytime,
- 'night' => $night,
- 'fax' => $fax,
- 'payby' => $payby,
- 'payinfo' => $payinfo,
- 'paycvv' => $paycvv,
- 'paystart_month' => $paystart_month
- 'paystart_year' => $paystart_year,
- 'payissue' => $payissue,
- 'payip' => $payip
- 'paydate' => $paydate,
- 'payname' => $payname,
- 'invoicing_list' => $invoicing_list,
- 'referral_custnum' => $referral_custnum,
- 'pkgpart' => $pkgpart,
- 'username' => $username,
- '_password' => $password,
- 'popnum' => $popnum,
- 'agentnum' => $agentnum,
- }
- );
-
- my $error = $rv->{'error'};
- if ( $error eq '_decline' ) {
- print_decline();
- } elsif ( $error ) {
- reprint_signup();
- } else {
- print_success();
- }
-
-=head1 DESCRIPTION
-
-Use this API to implement your own client "self-service" module.
-
-If you just want to customize the look of the existing "self-service" module,
-see XXXX instead.
-
-=head1 PASSWORD, GECOS, SHELL CHANGING FUNCTIONS
-
-=over 4
-
-=item passwd
-
-=item chfn
-
-=item chsh
-
-=back
-
-=head1 "MY ACCOUNT" FUNCTIONS
-
-=over 4
-
-=item login HASHREF
-
-Creates a user session. Takes a hash reference as parameter with the
-following keys:
-
-=over 4
-
-=item username
-
-=item domain
-
-=item password
-
-=back
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item error
-
-Empty on success, or an error message on errors.
-
-=item session_id
-
-Session identifier for successful logins
-
-=back
-
-=item customer_info HASHREF
-
-Returns general customer information.
-
-Takes a hash reference as parameter with a single key: B<session_id>
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item name
-
-Customer name
-
-=item balance
-
-Balance owed
-
-=item open
-
-Array reference of hash references of open inoices. Each hash reference has
-the following keys: invnum, date, owed
-
-=item small_custview
-
-An HTML fragment containing shipping and billing addresses.
-
-=item The following fields are also returned: first last company address1 address2 city county state zip country daytime night fax ship_first ship_last ship_company ship_address1 ship_address2 ship_city ship_state ship_zip ship_country ship_daytime ship_night ship_fax payby payinfo payname month year invoicing_list postal_invoicing
-
-=back
-
-=item edit_info HASHREF
-
-Takes a hash reference as parameter with any of the following keys:
-
-first last company address1 address2 city county state zip country daytime night fax ship_first ship_last ship_company ship_address1 ship_address2 ship_city ship_state ship_zip ship_country ship_daytime ship_night ship_fax payby payinfo paycvv payname month year invoicing_list postal_invoicing
-
-If a field exists, the customer record is updated with the new value of that
-field. If a field does not exist, that field is not changed on the customer
-record.
-
-Returns a hash reference with a single key, B<error>, empty on success, or an
-error message on errors
-
-=item invoice HASHREF
-
-Returns an invoice. Takes a hash reference as parameter with two keys:
-session_id and invnum
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item error
-
-Empty on success, or an error message on errors
-
-=item invnum
-
-Invoice number
-
-=item invoice_text
-
-Invoice text
-
-=back
-
-=item list_invoices HASHREF
-
-Returns a list of all customer invoices. Takes a hash references with a single
-key, session_id.
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item error
-
-Empty on success, or an error message on errors
-
-=item invoices
-
-Reference to array of hash references with the following keys:
-
-=over 4
-
-=item invnum
-
-Invoice ID
-
-=item _date
-
-Invoice date, in UNIX epoch time
-
-=back
-
-=back
-
-=item cancel HASHREF
-
-Cancels this customer.
-
-Takes a hash reference as parameter with a single key: B<session_id>
-
-Returns a hash reference with a single key, B<error>, which is empty on
-success or an error message on errors.
-
-=item payment_info HASHREF
-
-Returns information that may be useful in displaying a payment page.
-
-Takes a hash reference as parameter with a single key: B<session_id>.
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item error
-
-Empty on success, or an error message on errors
-
-=item balance
-
-Balance owed
-
-=item payname
-
-Exact name on credit card (CARD/DCRD)
-
-=item address1
-
-=item address2
-
-=item city
-
-=item state
-
-=item zip
-
-=item payby
-
-Customer's current default payment type.
-
-=item card_type
-
-For CARD/DCRD payment types, the card type (Visa card, MasterCard, Discover card, American Express card, etc.)
-
-=item payinfo
-
-For CARD/DCRD payment types, the card number
-
-=item month
-
-For CARD/DCRD payment types, expiration month
-
-=item year
-
-For CARD/DCRD payment types, expiration year
-
-=item cust_main_county
-
-County/state/country data - array reference of hash references, each of which has the fields of a cust_main_county record (see L<FS::cust_main_county>). Note these are not FS::cust_main_county objects, but hash references of columns and values.
-
-=item states
-
-Array reference of all states in the current default country.
-
-=item card_types
-
-Hash reference of card types; keys are card types, values are the exact strings
-passed to the process_payment function
-
-=item paybatch
-
-Unique transaction identifier (prevents multiple charges), passed to the
-process_payment function
-
-=back
-
-=item process_payment HASHREF
-
-Processes a payment and possible change of address or payment type. Takes a
-hash reference as parameter with the following keys:
-
-=over 4
-
-=item session_id
-
-=item save
-
-If true, address and card information entered will be saved for subsequent
-transactions.
-
-=item auto
-
-If true, future credit card payments will be done automatically (sets payby to
-CARD). If false, future credit card payments will be done on-demand (sets
-payby to DCRD). This option only has meaning if B<save> is set true.
-
-=item payname
-
-=item address1
-
-=item address2
-
-=item city
-
-=item state
-
-=item zip
-
-=item payinfo
-
-Card number
-
-=item month
-
-Card expiration month
-
-=item year
-
-Card expiration year
-
-=item paybatch
-
-Unique transaction identifier, returned from the payment_info function.
-Prevents multiple charges.
-
-=back
-
-Returns a hash reference with a single key, B<error>, empty on success, or an
-error message on errors
-
-=item list_pkgs
-
-Returns package information for this customer.
-
-Takes a hash reference as parameter with a single key: B<session_id>
-
-Returns a hash reference containing customer package information. The hash reference contains the following keys:
-
-=over 4
-
-
-=item cust_pkg HASHREF
-
-Array reference of hash references, each of which has the fields of a cust_pkg
-record (see L<FS::cust_pkg>) as well as the fields below. Note these are not
-the internal FS:: objects, but hash references of columns and values.
-
-=item all fields of part_pkg (XXXpare this down to a secure subset)
-
-=item part_svc - An array of hash references, each of which has the following keys:
-
-=over 4
-
-=item all fields of part_svc (XXXpare this down to a secure subset)
-
-=item avail
-
-=back
-
-=item error
-
-Empty on success, or an error message on errors.
-
-=back
-
-=item order_pkg
-
-Orders a package for this customer.
-
-Takes a hash reference as parameter with the following keys:
-
-=over 4
-
-=item session_id
-
-=item pkgpart
-
-=item svcpart
-
-optional svcpart, required only if the package definition does not contain
-one svc_acct service definition with quantity 1 (it may contain others with
-quantity >1)
-
-=item username
-
-=item _password
-
-=item sec_phrase
-
-=item popnum
-
-=back
-
-Returns a hash reference with a single key, B<error>, empty on success, or an
-error message on errors. The special error '_decline' is returned for
-declined transactions.
-
-=item cancel_pkg
-
-Cancels a package for this customer.
-
-Takes a hash reference as parameter with the following keys:
-
-=over 4
-
-=item session_id
-
-=item pkgpart
-
-=back
-
-Returns a hash reference with a single key, B<error>, empty on success, or an
-error message on errors.
-
-=back
-
-=head1 SIGNUP FUNCTIONS
-
-=over 4
-
-=item signup_info HASHREF
-
-Takes a hash reference as parameter with the following keys:
-
-=over 4
-
-=item session_id - Optional agent/reseller interface session
-
-=back
-
-Returns a hash reference containing information that may be useful in
-displaying a signup page. The hash reference contains the following keys:
-
-=over 4
-
-=item cust_main_county
-
-County/state/country data - array reference of hash references, each of which has the fields of a cust_main_county record (see L<FS::cust_main_county>). Note these are not FS::cust_main_county objects, but hash references of columns and values.
-
-=item part_pkg
-
-Available packages - array reference of hash references, each of which has the fields of a part_pkg record (see L<FS::part_pkg>). Each hash reference also has an additional 'payby' field containing an array reference of acceptable payment types specific to this package (see below and L<FS::part_pkg/payby>). Note these are not FS::part_pkg objects, but hash references of columns and values. Requires the 'signup_server-default_agentnum' configuration value to be set, or
-an agentnum specified explicitly via reseller interface session_id in the
-options.
-
-=item agent
-
-Array reference of hash references, each of which has the fields of an agent record (see L<FS::agent>). Note these are not FS::agent objects, but hash references of columns and values.
-
-=item agentnum2part_pkg
-
-Hash reference; keys are agentnums, values are array references of available packages for that agent, in the same format as the part_pkg arrayref above.
-
-=item svc_acct_pop
-
-Access numbers - array reference of hash references, each of which has the fields of an svc_acct_pop record (see L<FS::svc_acct_pop>). Note these are not FS::svc_acct_pop objects, but hash references of columns and values.
-
-=item security_phrase
-
-True if the "security_phrase" feature is enabled
-
-=item payby
-
-Array reference of acceptable payment types for signup
-
-=over 4
-
-=item CARD (credit card - automatic)
-
-=item DCRD (credit card - on-demand - version 1.5+ only)
-
-=item CHEK (electronic check - automatic)
-
-=item DCHK (electronic check - on-demand - version 1.5+ only)
-
-=item LECB (Phone bill billing)
-
-=item BILL (billing, not recommended for signups)
-
-=item COMP (free, definately not recommended for signups)
-
-=item PREPAY (special billing type: applies a credit (see FS::prepay_credit) and sets billing type to BILL)
-
-=back
-
-=item cvv_enabled
-
-True if CVV features are available (1.5+ or 1.4.2 with CVV schema patch)
-
-=item msgcat
-
-Hash reference of message catalog values, to support error message customization. Currently available keys are: passwords_dont_match, invalid_card, unknown_card_type, and not_a (as in "Not a Discover card"). Values are configured in the web interface under "View/Edit message catalog".
-
-=item statedefault
-
-Default state
-
-=item countrydefault
-
-Default country
-
-=back
-
-=item new_customer HASHREF
-
-Creates a new customer. Takes a hash reference as parameter with the
-following keys:
-
-=over 4
-
-=item first - first name (required)
-
-=item last - last name (required)
-
-=item ss (not typically collected; mostly used for ACH transactions)
-
-=item company
-
-=item address1 (required)
-
-=item address2
-
-=item city (required)
-
-=item county
-
-=item state (required)
-
-=item zip (required)
-
-=item daytime - phone
-
-=item night - phone
-
-=item fax - phone
-
-=item payby - CARD, DCRD, CHEK, DCHK, LECB, BILL, COMP or PREPAY (see L</signup_info> (required)
-
-=item payinfo - Card number for CARD/DCRD, account_number@aba_number for CHEK/DCHK, prepaid "pin" for PREPAY, purchase order number for BILL
-
-=item paycvv - Credit card CVV2 number (1.5+ or 1.4.2 with CVV schema patch)
-
-=item paydate - Expiration date for CARD/DCRD
-
-=item payname - Exact name on credit card for CARD/DCRD, bank name for CHEK/DCHK
-
-=item invoicing_list - comma-separated list of email addresses for email invoices. The special value 'POST' is used to designate postal invoicing (it may be specified alone or in addition to email addresses),
-
-=item referral_custnum - referring customer number
-
-=item pkgpart - pkgpart of initial package
-
-=item username
-
-=item _password
-
-=item sec_phrase - security phrase
-
-=item popnum - access number (index, not the literal number)
-
-=item agentnum - agent number
-
-=back
-
-Returns a hash reference with the following keys:
-
-=over 4
-
-=item error Empty on success, or an error message on errors. The special error '_decline' is returned for declined transactions; other error messages should be suitable for display to the user (and are customizable in under Sysadmin | View/Edit message catalog)
-
-=back
-
-=item regionselector HASHREF | LIST
-
-Takes as input a hashref or list of key/value pairs with the following keys:
-
-=over 4
-
-=item selected_county
-
-=item selected_state
-
-=item selected_country
-
-=item prefix - Specify a unique prefix string if you intend to use the HTML output multiple time son one page.
-
-=item onchange - Specify a javascript subroutine to call on changes
-
-=item default_state
-
-=item default_country
-
-=item locales - An arrayref of hash references specifying regions. Normally you can just pass the value of the I<cust_main_county> field returned by B<signup_info>.
-
-=back
-
-Returns a list consisting of three HTML fragments for county selection,
-state selection and country selection, respectively.
-
-=cut
-
-#false laziness w/FS::cust_main_county (this is currently the "newest" version)
-sub regionselector {
- my $param;
- if ( ref($_[0]) ) {
- $param = shift;
- } else {
- $param = { @_ };
- }
- $param->{'selected_country'} ||= $param->{'default_country'};
- $param->{'selected_state'} ||= $param->{'default_state'};
-
- my $prefix = exists($param->{'prefix'}) ? $param->{'prefix'} : '';
-
- my $countyflag = 0;
-
- my %cust_main_county;
-
-# unless ( @cust_main_county ) { #cache
- #@cust_main_county = qsearch('cust_main_county', {} );
- #foreach my $c ( @cust_main_county ) {
- foreach my $c ( @{ $param->{'locales'} } ) {
- #$countyflag=1 if $c->county;
- $countyflag=1 if $c->{county};
- #push @{$cust_main_county{$c->country}{$c->state}}, $c->county;
- #$cust_main_county{$c->country}{$c->state}{$c->county} = 1;
- $cust_main_county{$c->{country}}{$c->{state}}{$c->{county}} = 1;
- }
-# }
- $countyflag=1 if $param->{selected_county};
-
- my $script_html = <<END;
- <SCRIPT>
- function opt(what,value,text) {
- var optionName = new Option(text, value, false, false);
- var length = what.length;
- what.options[length] = optionName;
- }
- function ${prefix}country_changed(what) {
- country = what.options[what.selectedIndex].text;
- for ( var i = what.form.${prefix}state.length; i >= 0; i-- )
- what.form.${prefix}state.options[i] = null;
-END
- #what.form.${prefix}state.options[0] = new Option('', '', false, true);
-
- foreach my $country ( sort keys %cust_main_county ) {
- $script_html .= "\nif ( country == \"$country\" ) {\n";
- foreach my $state ( sort keys %{$cust_main_county{$country}} ) {
- my $text = $state || '(n/a)';
- $script_html .= qq!opt(what.form.${prefix}state, "$state", "$text");\n!;
- }
- $script_html .= "}\n";
- }
-
- $script_html .= <<END;
- }
- function ${prefix}state_changed(what) {
-END
-
- if ( $countyflag ) {
- $script_html .= <<END;
- state = what.options[what.selectedIndex].text;
- country = what.form.${prefix}country.options[what.form.${prefix}country.selectedIndex].text;
- for ( var i = what.form.${prefix}county.length; i >= 0; i-- )
- what.form.${prefix}county.options[i] = null;
-END
-
- foreach my $country ( sort keys %cust_main_county ) {
- $script_html .= "\nif ( country == \"$country\" ) {\n";
- foreach my $state ( sort keys %{$cust_main_county{$country}} ) {
- $script_html .= "\nif ( state == \"$state\" ) {\n";
- #foreach my $county ( sort @{$cust_main_county{$country}{$state}} ) {
- foreach my $county ( sort keys %{$cust_main_county{$country}{$state}} ) {
- my $text = $county || '(n/a)';
- $script_html .=
- qq!opt(what.form.${prefix}county, "$county", "$text");\n!;
- }
- $script_html .= "}\n";
- }
- $script_html .= "}\n";
- }
- }
-
- $script_html .= <<END;
- }
- </SCRIPT>
-END
-
- my $county_html = $script_html;
- if ( $countyflag ) {
- $county_html .= qq!<SELECT NAME="${prefix}county" onChange="$param->{'onchange'}">!;
- $county_html .= '</SELECT>';
- } else {
- $county_html .=
- qq!<INPUT TYPE="hidden" NAME="${prefix}county" VALUE="$param->{'selected_county'}">!;
- }
-
- my $state_html = qq!<SELECT NAME="${prefix}state" !.
- qq!onChange="${prefix}state_changed(this); $param->{'onchange'}">!;
- foreach my $state ( sort keys %{ $cust_main_county{$param->{'selected_country'}} } ) {
- my $text = $state || '(n/a)';
- my $selected = $state eq $param->{'selected_state'} ? 'SELECTED' : '';
- $state_html .= "\n<OPTION $selected VALUE=$state>$text</OPTION>"
- }
- $state_html .= '</SELECT>';
-
- $state_html .= '</SELECT>';
-
- my $country_html = qq!<SELECT NAME="${prefix}country" !.
- qq!onChange="${prefix}country_changed(this); $param->{'onchange'}">!;
- my $countrydefault = $param->{default_country} || 'US';
- foreach my $country (
- sort { ($b eq $countrydefault) <=> ($a eq $countrydefault) or $a cmp $b }
- keys %cust_main_county
- ) {
- my $selected = $country eq $param->{'selected_country'} ? ' SELECTED' : '';
- $country_html .= "\n<OPTION$selected>$country</OPTION>"
- }
- $country_html .= '</SELECT>';
-
- ($county_html, $state_html, $country_html);
-
-}
-
-#=item expselect HASHREF | LIST
-#
-#Takes as input a hashref or list of key/value pairs with the following keys:
-#
-#=over 4
-#
-#=item prefix - Specify a unique prefix string if you intend to use the HTML output multiple time son one page.
-#
-#=item date - current date, in yyyy-mm-dd or m-d-yyyy format
-#
-#=back
-
-=item expselect PREFIX [ DATE ]
-
-Takes as input a unique prefix string and the current expiration date, in
-yyyy-mm-dd or m-d-yyyy format
-
-Returns an HTML fragments for expiration date selection.
-
-=cut
-
-sub expselect {
- #my $param;
- #if ( ref($_[0]) ) {
- # $param = shift;
- #} else {
- # $param = { @_ };
- #my $prefix = $param->{'prefix'};
- #my $prefix = exists($param->{'prefix'}) ? $param->{'prefix'} : '';
- #my $date = exists($param->{'date'}) ? $param->{'date'} : '';
- my $prefix = shift;
- my $date = scalar(@_) ? shift : '';
-
- my( $m, $y ) = ( 0, 0 );
- if ( $date =~ /^(\d{4})-(\d{2})-\d{2}$/ ) { #PostgreSQL date format
- ( $m, $y ) = ( $2, $1 );
- } elsif ( $date =~ /^(\d{1,2})-(\d{1,2}-)?(\d{4}$)/ ) {
- ( $m, $y ) = ( $1, $3 );
- }
- my $return = qq!<SELECT NAME="$prefix!. qq!_month" SIZE="1">!;
- for ( 1 .. 12 ) {
- $return .= "<OPTION";
- $return .= " SELECTED" if $_ == $m;
- $return .= ">$_";
- }
- $return .= qq!</SELECT>/<SELECT NAME="$prefix!. qq!_year" SIZE="1">!;
- my @t = localtime;
- my $thisYear = $t[5] + 1900;
- for ( ($thisYear > $y && $y > 0 ? $y : $thisYear) .. 2037 ) {
- $return .= "<OPTION";
- $return .= " SELECTED" if $_ == $y;
- $return .= ">$_";
- }
- $return .= "</SELECT>";
-
- $return;
-}
-
-=item popselector HASHREF | LIST
-
-Takes as input a hashref or list of key/value pairs with the following keys:
-
-=over 4
-
-=item popnum
-
-=item pops - An arrayref of hash references specifying access numbers. Normally you can just pass the value of the I<svc_acct_pop> field returned by B<signup_info>.
-
-=back
-
-Returns an HTML fragment for access number selection.
-
-=cut
-
-#horrible false laziness with FS/FS/svc_acct_pop.pm::popselector
-sub popselector {
- my $param;
- if ( ref($_[0]) ) {
- $param = shift;
- } else {
- $param = { @_ };
- }
- my $popnum = $param->{'popnum'};
- my $pops = $param->{'pops'};
-
- return '<INPUT TYPE="hidden" NAME="popnum" VALUE="">' unless @$pops;
- return $pops->[0]{city}. ', '. $pops->[0]{state}.
- ' ('. $pops->[0]{ac}. ')/'. $pops->[0]{exch}. '-'. $pops->[0]{loc}.
- '<INPUT TYPE="hidden" NAME="popnum" VALUE="'. $pops->[0]{popnum}. '">'
- if scalar(@$pops) == 1;
-
- my %pop = ();
- my %popnum2pop = ();
- foreach (@$pops) {
- push @{ $pop{ $_->{state} }->{ $_->{ac} } }, $_;
- $popnum2pop{$_->{popnum}} = $_;
- }
-
- my $text = <<END;
- <SCRIPT>
- function opt(what,href,text) {
- var optionName = new Option(text, href, false, false)
- var length = what.length;
- what.options[length] = optionName;
- }
-END
-
- my $init_popstate = $param->{'init_popstate'};
- if ( $init_popstate ) {
- $text .= '<INPUT TYPE="hidden" NAME="init_popstate" VALUE="'.
- $init_popstate. '">';
- } else {
- $text .= <<END;
- function acstate_changed(what) {
- state = what.options[what.selectedIndex].text;
- what.form.popac.options.length = 0
- what.form.popac.options[0] = new Option("Area code", "-1", false, true);
-END
- }
-
- my @states = $init_popstate ? ( $init_popstate ) : keys %pop;
- foreach my $state ( sort { $a cmp $b } @states ) {
- $text .= "\nif ( state == \"$state\" ) {\n" unless $init_popstate;
-
- foreach my $ac ( sort { $a cmp $b } keys %{ $pop{$state} }) {
- $text .= "opt(what.form.popac, \"$ac\", \"$ac\");\n";
- if ($ac eq $param->{'popac'}) {
- $text .= "what.form.popac.options[what.form.popac.length-1].selected = true;\n";
- }
- }
- $text .= "}\n" unless $init_popstate;
- }
- $text .= "popac_changed(what.form.popac)}\n";
-
- $text .= <<END;
- function popac_changed(what) {
- ac = what.options[what.selectedIndex].text;
- what.form.popnum.options.length = 0;
- what.form.popnum.options[0] = new Option("City", "-1", false, true);
-
-END
-
- foreach my $state ( @states ) {
- foreach my $popac ( keys %{ $pop{$state} } ) {
- $text .= "\nif ( ac == \"$popac\" ) {\n";
-
- foreach my $pop ( @{$pop{$state}->{$popac}}) {
- my $o_popnum = $pop->{popnum};
- my $poptext = $pop->{city}. ', '. $pop->{state}.
- ' ('. $pop->{ac}. ')/'. $pop->{exch}. '-'. $pop->{loc};
-
- $text .= "opt(what.form.popnum, \"$o_popnum\", \"$poptext\");\n";
- if ($popnum == $o_popnum) {
- $text .= "what.form.popnum.options[what.form.popnum.length-1].selected = true;\n";
- }
- }
- $text .= "}\n";
- }
- }
-
-
- $text .= "}\n</SCRIPT>\n";
-
- $text .=
- qq!<TABLE CELLPADDING="0"><TR><TD><SELECT NAME="acstate"! .
- qq!SIZE=1 onChange="acstate_changed(this)"><OPTION VALUE=-1>State!;
- $text .= "<OPTION" . ($_ eq $param->{'acstate'} ? " SELECTED" : "") .
- ">$_" foreach sort { $a cmp $b } @states;
- $text .= '</SELECT>'; #callback? return 3 html pieces? #'</TD>';
-
- $text .=
- qq!<SELECT NAME="popac" SIZE=1 onChange="popac_changed(this)">!.
- qq!<OPTION>Area code</SELECT></TR><TR VALIGN="top">!;
-
- $text .= qq!<TR><TD><SELECT NAME="popnum" SIZE=1 STYLE="width: 20em"><OPTION>City!;
-
-
- #comment this block to disable initial list polulation
- my @initial_select = ();
- if ( scalar( @$pops ) > 100 ) {
- push @initial_select, $popnum2pop{$popnum} if $popnum2pop{$popnum};
- } else {
- @initial_select = @$pops;
- }
- foreach my $pop ( sort { $a->{state} cmp $b->{state} } @initial_select ) {
- $text .= qq!<OPTION VALUE="!. $pop->{popnum}. '"'.
- ( ( $popnum && $pop->{popnum} == $popnum ) ? ' SELECTED' : '' ). ">".
- $pop->{city}. ', '. $pop->{state}.
- ' ('. $pop->{ac}. ')/'. $pop->{exch}. '-'. $pop->{loc};
- }
-
- $text .= qq!</SELECT></TD></TR></TABLE>!;
-
- $text;
-
-}
-
-=back
-
-=head1 RESELLER FUNCTIONS
-
-Note: Resellers can also use the B<signup_info> and B<new_customer> functions
-with their active session, and the B<customer_info> and B<order_pkg> functions
-with their active session and an additional I<custnum> parameter.
-
-=over 4
-
-=item agent_login
-
-=item agent_info
-
-=item agent_list_customers
-
-=back
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<freeside-selfservice-clientd>, L<freeside-selfservice-server>
-
-=cut
-
-1;
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent.cgi b/fs_selfservice/FS-SelfService/cgi/agent.cgi
deleted file mode 100644
index b51938d..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent.cgi
+++ /dev/null
@@ -1,457 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#some false laziness w/selfservice.cgi
-
-use strict;
-use vars qw($DEBUG $me $cgi $session_id $form_max $template_dir);
-use subs qw(do_template);
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-use Business::CreditCard;
-use Text::Template;
-#use HTML::Entities;
-use FS::SelfService qw( agent_login agent_logout agent_info
- agent_list_customers
- signup_info new_customer
- customer_info list_pkgs order_pkg
- part_svc_info provision_acct provision_external
- unprovision_svc
- );
-
-$DEBUG = 0;
-$me = 'agent.cgi:';
-
-$template_dir = '.';
-
-$form_max = 255;
-
-warn "$me starting\n" if $DEBUG;
-
-warn "$me initializing CGI\n" if $DEBUG;
-$cgi = new CGI;
-
-unless ( defined $cgi->param('session') ) {
- warn "$me no session defined, sending login page\n" if $DEBUG;
- do_template('agent_login',{});
- exit;
-}
-
-if ( $cgi->param('session') eq 'login' ) {
-
- warn "$me processing login\n" if $DEBUG;
-
- $cgi->param('username') =~ /^\s*([a-z0-9_\-\.\&]{0,$form_max})\s*$/i
- or die "illegal username";
- my $username = $1;
-
- $cgi->param('password') =~ /^(.{0,$form_max})$/
- or die "illegal password";
- my $password = $1;
-
- my $rv = agent_login(
- 'username' => $username,
- 'password' => $password,
- );
- if ( $rv->{error} ) {
- do_template('agent_login', {
- 'error' => $rv->{error},
- 'username' => $username,
- } );
- exit;
- } else {
- $cgi->param('session' => $rv->{session_id} );
- $cgi->param('action' => 'agent_main' );
- }
-}
-
-$session_id = $cgi->param('session');
-
-warn "$me checking action\n" if $DEBUG;
-$cgi->param('action') =~
- /^(agent_main|signup|process_signup|list_customers|view_customer|agent_provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|agent_order_pkg|process_order_pkg|logout)$/
- or die "unknown action ". $cgi->param('action');
-my $action = $1;
-
-warn "$me running $action\n" if $DEBUG;
-my $result = eval "&$action();";
-die $@ if $@;
-
-if ( $result->{error} eq "Can't resume session" ) { #ick
- do_template('agent_login',{});
- exit;
-}
-
-warn "$me processing template $action\n" if $DEBUG;
-do_template($action, {
- 'session_id' => $session_id,
- %{$result}
-});
-warn "$me done processing template $action\n" if $DEBUG;
-
-#--
-
-sub logout {
- $action = 'agent_logout';
- agent_logout( 'session_id' => $session_id );
-}
-
-sub agent_main { agent_info( 'session_id' => $session_id ); }
-
-sub signup { signup_info( 'session_id' => $session_id ); }
-
-sub process_signup {
-
- my $init_data = signup_info( 'session_id' => $session_id );
- if ( $init_data->{'error'} ) {
- if ( $init_data->{'error'} eq "Can't resume session" ) { #ick
- do_template('agent_login',{});
- exit;
- } else { #?
- die $init_data->{'error'};
- }
- }
-
- my $error = '';
-
- #false laziness w/signup.cgi, identical except for agentnum vs session_id
- my $payby = $cgi->param('payby');
- if ( $payby eq 'CHEK' || $payby eq 'DCHK' ) {
- #$payinfo = join('@', map { $cgi->param( $payby. "_payinfo$_" ) } (1,2) );
- $cgi->param('payinfo' => $cgi->param($payby. '_payinfo1'). '@'.
- $cgi->param($payby. '_payinfo2')
- );
- } else {
- $cgi->param('payinfo' => $cgi->param( $payby. '_payinfo' ) );
- }
- $cgi->param('paydate' => $cgi->param( $payby. '_month' ). '-'.
- $cgi->param( $payby. '_year' )
- );
- $cgi->param('payname' => $cgi->param( $payby. '_payname' ) );
- $cgi->param('paycvv' => defined $cgi->param( $payby. '_paycvv' )
- ? $cgi->param( $payby. '_paycvv' )
- : ''
- );
-
- if ( $cgi->param('invoicing_list') ) {
- $cgi->param('invoicing_list' => $cgi->param('invoicing_list'). ', POST')
- if $cgi->param('invoicing_list_POST');
- } else {
- $cgi->param('invoicing_list' => 'POST' );
- }
-
- if ( $cgi->param('_password') ne $cgi->param('_password2') ) {
- $error = $init_data->{msgcat}{passwords_dont_match}; #msgcat
- $cgi->param('_password', '');
- $cgi->param('_password2', '');
- }
-
- if ( $payby =~ /^(CARD|DCRD)$/ && $cgi->param('CARD_type') ) {
- my $payinfo = $cgi->param('payinfo');
- $payinfo =~ s/\D//g;
-
- $payinfo =~ /^(\d{13,16})$/
- or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- $payinfo = $1;
- validate($payinfo)
- or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- cardtype($payinfo) eq $cgi->param('CARD_type')
- or $error ||= $init_data->{msgcat}{not_a}. $cgi->param('CARD_type');
- }
-
- unless ( $error ) {
- my $rv = new_customer ( {
- 'session_id' => $session_id,
- map { $_ => scalar($cgi->param($_)) }
- qw( last first ss company
- address1 address2 city county state zip country
- daytime night fax
-
- ship_last ship_first ship_company
- ship_address1 ship_address2 ship_city ship_county ship_state
- ship_zip ship_country
- ship_daytime ship_night ship_fax
-
- payby payinfo paycvv paydate payname invoicing_list
- referral_custnum promo_code reg_code
- pkgpart username sec_phrase _password popnum refnum
- ),
- grep { /^snarf_/ } $cgi->param
- } );
- $error = $rv->{'error'};
- }
- #eslaf
-
- if ( $error ) {
- $action = 'signup';
- my $r = {
- $cgi->Vars,
- %{$init_data},
- 'error' => $error,
- };
- #warn join('\n', map "$_ => $r->{$_}", keys %$r )."\n";
- $r;
- } else {
- $action = 'agent_main';
- my $agent_info = agent_info( 'session_id' => $session_id );
- $agent_info->{'message'} = 'Signup successful';
- $agent_info;
- }
-
-}
-
-sub list_customers {
-
- my $results =
- agent_list_customers( 'session_id' => $session_id,
- map { $_ => $cgi->param($_) }
- grep defined($cgi->param($_)),
- qw(prospect active susp cancel),
- 'search',
- );
-
- if ( scalar( @{$results->{'customers'}} ) == 1 ) {
- $action = 'view_customer';
- customer_info (
- 'agent_session_id' => $session_id,
- 'custnum' => $results->{'customers'}[0]{'custnum'},
- );
- } else {
- $results;
- }
-
-}
-
-sub view_customer {
-
- #my $init_data = signup_info( 'session_id' => $session_id );
- #if ( $init_data->{'error'} ) {
- # if ( $init_data->{'error'} eq "Can't resume session" ) { #ick
- # do_template('agent_login',{});
- # exit;
- # } else { #?
- # die $init_data->{'error'};
- # }
- #}
- #
- #my $customer_info =
- customer_info (
- 'agent_session_id' => $session_id,
- 'custnum' => $cgi->param('custnum'),
- );
- #
- #return {
- # ( map { $_ => $init_data->{$_} }
- # qw( part_pkg security_phrase svc_acct_pop ),
- # ),
- # %$customer_info,
- #};
-}
-
-sub agent_order_pkg {
-
- my $init_data = signup_info( 'session_id' => $session_id );
- if ( $init_data->{'error'} ) {
- if ( $init_data->{'error'} eq "Can't resume session" ) { #ick
- do_template('agent_login',{});
- exit;
- } else { #?
- die $init_data->{'error'};
- }
- }
-
- my $customer_info = customer_info (
- 'agent_session_id' => $session_id,
- 'custnum' => $cgi->param('custnum'),
- );
-
- return {
- ( map { $_ => $init_data->{$_} }
- qw( part_pkg security_phrase svc_acct_pop ),
- ),
- %$customer_info,
- };
-
-}
-
-sub agent_provision {
- my $result = list_pkgs(
- 'agent_session_id' => $session_id,
- 'custnum' => $cgi->param('custnum'),
- );
- die $result->{'error'} if exists $result->{'error'} && $result->{'error'};
- $result;
-}
-
-sub provision_svc {
-
- my $result = part_svc_info(
- 'agent_session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( pkgnum svcpart custnum ),
- );
- die $result->{'error'} if exists $result->{'error'} && $result->{'error'};
-
- $result->{'svcdb'} =~ /^svc_(.*)$/
- #or return { 'error' => 'Unknown svcdb '. $result->{'svcdb'} };
- or die 'Unknown svcdb '. $result->{'svcdb'};
- $action .= "_$1";
- $action = "agent_$action";
-
- $result;
-}
-
-sub process_svc_acct {
-
- my $result = provision_acct (
- 'agent_session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw(
- custnum pkgnum svcpart username _password _password2 sec_phrase popnum )
- );
-
- if ( exists $result->{'error'} && $result->{'error'} ) {
- #warn "$result $result->{'error'}";
- $action = 'provision_svc_acct';
- $action = "agent_$action";
- return {
- $cgi->Vars,
- %{ part_svc_info( 'agent_session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw(pkgnum svcpart custnum)
- )
- },
- 'error' => $result->{'error'},
- };
- } else {
- #warn "$result $result->{'error'}";
- $action = 'agent_provision';
- return {
- %{agent_provision()},
- 'message' => $result->{'svc'}. ' setup successfully.',
- };
- }
-
-}
-
-sub process_svc_external {
-
- my $result = provision_external (
- 'agent_session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( custnum pkgnum svcpart )
- );
-
- #warn "$result $result->{'error'}";
- $action = 'agent_provision';
- return {
- %{agent_provision()},
- 'message' => $result->{'error'}
- ? '<FONT COLOR="#FF0000">'. $result->{'error'}. '</FONT>'
- : $result->{'svc'}. ' setup successfully'.
- ': serial number '.
- sprintf('%010d', $result->{'id'}). '-'. $result->{'title'}
- };
-
-}
-
-sub delete_svc {
- my $result = unprovision_svc(
- 'agent_session_id' => $session_id,
- 'custnum' => $cgi->param('custnum'),
- 'svcnum' => $cgi->param('svcnum'),
- );
-
- $action = 'agent_provision';
-
- return {
- %{agent_provision()},
- 'message' => $result->{'error'}
- ? '<FONT COLOR="#FF0000">'. $result->{'error'}. '</FONT>'
- : $result->{'svc'}. ' removed.'
- };
-
-}
-
-sub process_order_pkg {
-
- my $results = '';
-
- unless ( length($cgi->param('_password')) ) {
- my $init_data = signup_info( 'session_id' => $session_id );
- #die $init_data->{'error'} if $init_data->{'error'};
- $results = { 'error' => $init_data->{msgcat}{empty_password} };
- }
- if ( $cgi->param('_password') ne $cgi->param('_password2') ) {
- my $init_data = signup_info( 'session_id' => $session_id );
- $results = { 'error' => $init_data->{msgcat}{passwords_dont_match} };
- $cgi->param('_password', '');
- $cgi->param('_password2', '');
- }
-
- $results ||= order_pkg (
- 'agent_session_id' => $session_id,
- map { $_ => $cgi->param($_) }
- qw( custnum pkgpart username _password _password2 sec_phrase popnum )
- );
-
- if ( $results->{'error'} ) {
- $action = 'agent_order_pkg';
- return {
- $cgi->Vars,
- %{agent_order_pkg()},
- #'message' => '<FONT COLOR="#FF0000">'. $results->{'error'}. '</FONT>',
- 'error' => '<FONT COLOR="#FF0000">'. $results->{'error'}. '</FONT>',
- };
- } else {
- $action = 'view_customer';
- #$cgi->delete( grep { $_ ne 'custnum' } $cgi->param );
- return {
- %{view_customer()},
- 'message' => 'Package order successful.',
- };
- }
-
-}
-
-#--
-
-sub do_template {
- my $name = shift;
- my $fill_in = shift;
- #warn join(' / ', map { "$_=>".$fill_in->{$_} } keys %$fill_in). "\n";
-
- $cgi->delete_all();
- $fill_in->{'selfurl'} = $cgi->self_url; #OLD
- $fill_in->{'self_url'} = $cgi->self_url;
- $fill_in->{'cgi'} = \$cgi;
-
- my $template = new Text::Template( TYPE => 'FILE',
- SOURCE => "$template_dir/$name.html",
- DELIMITERS => [ '<%=', '%>' ],
- UNTAINT => 1, )
- or die $Text::Template::ERROR;
-
- local $^W = 0;
- print $cgi->header( '-expires' => 'now' ),
- $template->fill_in( PACKAGE => 'FS::SelfService::_agentcgi',
- HASH => $fill_in
- );
-}
-
-package FS::SelfService::_agentcgi;
-
-use HTML::Entities;
-use FS::SelfService qw(regionselector expselect popselector);
-
-#false laziness w/selfservice.cgi
-sub include {
- my $name = shift;
- my $template = new Text::Template( TYPE => 'FILE',
- SOURCE => "$main::template_dir/$name.html",
- DELIMITERS => [ '<%=', '%>' ],
- UNTAINT => 1,
- )
- or die $Text::Template::ERROR;
-
- $template->fill_in( PACKAGE => 'FS::SelfService::_agentcgi',
- #HASH => $fill_in
- );
-
-}
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_customer_menu.html b/fs_selfservice/FS-SelfService/cgi/agent_customer_menu.html
deleted file mode 100644
index 603fc0b..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_customer_menu.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<%= $url = "$selfurl?session=$session_id;custnum=$custnum;action="; ''; %>
-<TD VALIGN="top" HEIGHT=384 BGCOLOR="#dddddd">
-<A HREF="<%= $url %>agent_provision">Setup services</A><BR><BR>
-<A HREF="<%= $url %>agent_order_pkg">Purchase additional package</A><BR><BR>
-
-</TD>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_delete_svc.html b/fs_selfservice/FS-SelfService/cgi/agent_delete_svc.html
deleted file mode 100644
index 7a2b750..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_delete_svc.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<%= $small_custview %>
-<BR>
-<%= if ( $error ) {
-
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT>!;
-} else {
- $OUT .= "<FONT SIZE=4>$svc removed.</FONT>";
-} %>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_login.html b/fs_selfservice/FS-SelfService/cgi/agent_login.html
deleted file mode 100644
index 4b0778e..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_login.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<HTML><HEAD><TITLE>Reseller Login</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=5>Reseller Login</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM ACTION="<%= $self_url %>" METHOD=POST>
-<INPUT TYPE="hidden" NAME="session" VALUE="login">
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=2 CELLPADDING=0>
-<TR>
- <TH ALIGN="right">Username </TH>
- <TD>
- <INPUT TYPE="text" NAME="username" VALUE="<%= $username %>">
- </TD>
-</TR>
-<TR>
- <TH ALIGN="right">Password </TH>
- <TD>
- <INPUT TYPE="password" NAME="password">
- </TD>
-</TR>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" VALUE="Login">
-</FORM></BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_logout.html b/fs_selfservice/FS-SelfService/cgi/agent_logout.html
deleted file mode 100644
index 9809467..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_logout.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-You have been logged out.
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_main.html b/fs_selfservice/FS-SelfService/cgi/agent_main.html
deleted file mode 100644
index 9dd3383..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_main.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-
-<%= $message
- ? "<FONT SIZE=\"+2\"><B>$message</B></FONT>"
- : "Hello $agent!"
-%><BR><BR>
-
-<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#eeeeee">
-<TR><TH BGCOLOR="#cccccc">Customer summary</TH></TR>
-<TR><TD BGCOLOR="#dddddd">
-
- <B><%= $num_prospect %></B>
- <%= $num_prospect ? qq!<A HREF="${url}list_customers;prospect=1">! : '' %>prospects</A>
-
- <BR><FONT COLOR="#00CC00"><B><%= $num_active %></B></FONT>
- <%= $num_active ? qq!<A HREF="${url}list_customers;active=1">! : '' %>active</A>
-
- <BR><FONT COLOR="#FF9900"><B><%= $num_susp %></B></FONT>
- <%= $num_susp ? qq!<A HREF="${url}list_customers;susp=1">! : '' %>suspended</A>
-
- <BR><FONT COLOR="#FF0000"><B><%= $num_cancel %></B></FONT>
- <%= $num_cancel ? qq!<A HREF="${url}list_customers;cancel=1">! : '' %>cancelled</A>
-
-</TD></TR></TABLE>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
-
-
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_menu.html b/fs_selfservice/FS-SelfService/cgi/agent_menu.html
deleted file mode 100644
index 84a2953..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_menu.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<TD VALIGN="top" HEIGHT=384 BGCOLOR="#dddddd">
-
-<A HREF="<%= $url %>agent_main">Overview</A><BR><BR>
-<A HREF="<%= $url %>signup">New customer<!--/prospect--></A><BR><BR>
-<FORM ACTION="<%= $selfurl %>">
-<INPUT TYPE="hidden" NAME="session" VALUE="<%= $session_id %>">
-<INPUT TYPE="hidden" NAME="action" VALUE="list_customers">
-<INPUT TYPE="text" NAME="search" SIZE=20><BR>
-<SMALL><I>cust&nbsp;#,&nbsp;last&nbsp;name,&nbsp;or&nbsp;company</I></SMALL><BR>
-<INPUT TYPE="submit" VALUE="Search customers"><BR>
-</FORM>
-<A HREF="<%= $url %>logout">Logout</A><BR><BR>
-
-</TD>
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_order_pkg.html b/fs_selfservice/FS-SelfService/cgi/agent_order_pkg.html
deleted file mode 100644
index 0a665c9..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_order_pkg.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;custnum=$custnum;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-<%= $small_custview %>
-<BR>
-
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_customer_menu') %>
-<TD VALIGN="top">
-<%= include('order_pkg') %>
-</TD></TR></TABLE>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_provision.html b/fs_selfservice/FS-SelfService/cgi/agent_provision.html
deleted file mode 100644
index 8770e2f..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_provision.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;custnum=$custnum;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-
-<%= $message
- ? "<FONT SIZE=\"+2\"><B>$message</B></FONT><BR><BR>"
- : ''
-%>
-
-<%= $small_custview %>
-<BR>
-
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_customer_menu') %>
-<TD VALIGN="top">
-<%= include('provision_list') %>
-</TD></TR></TABLE>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/agent_provision_svc_acct.html b/fs_selfservice/FS-SelfService/cgi/agent_provision_svc_acct.html
deleted file mode 100644
index 8d299cd..0000000
--- a/fs_selfservice/FS-SelfService/cgi/agent_provision_svc_acct.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;custnum=$custnum;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-<%= $small_custview %>
-<BR>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_customer_menu') %>
-<TD VALIGN="top">
-<%= include('svc_acct') %>
-</TD></TR></TABLE>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/change_password.html b/fs_selfservice/FS-SelfService/cgi/change_password.html
deleted file mode 100644
index af7b453..0000000
--- a/fs_selfservice/FS-SelfService/cgi/change_password.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<FONT SIZE=4>Change password</FONT><BR><BR>
-
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">$error</FONT><BR><BR>!;
-} ''; %>
-
-<FORM ACTION="<%= $selfurl %>" METHOD="POST">
-<INPUT TYPE="hidden" NAME="session" VALUE="<%= $session_id %>">
-<INPUT TYPE="hidden" NAME="action" VALUE="process_change_password">
-
-<TABLE BGCOLOR="#cccccc">
-
- <TR>
- <TH ALIGN="right">Change password for account: </TH>
- <TD>
- <SELECT NAME="svcnum">
- <%= foreach my $svc ( @svcs ) {
- $OUT .= '<OPTION VALUE="'. $svc->{'svcnum'}. '"'.
- ( $svc->{'svcnum'} eq $svcnum ? ' SELECTED' : '' ). '>'.
- $svc->{'label'}. ': '. $svc->{'value'}. "\n";
- }
- %>
- </SELECT>
- </TD>
- </TR>
-
- <TR>
- <TH ALIGN="right">New password: </TH>
- <TD><INPUT TYPE="password" NAME="new_password" SIZE="18"></TD>
- </TR>
-
- <TR>
- <TH ALIGN="right">Re-enter new password: </TH>
- <TD><INPUT TYPE="password" NAME="new_password2" SIZE="18"></TD>
- </TR>
-
-</TABLE>
-<BR>
-
-<INPUT TYPE="submit" VALUE="Change password">
-
-</FORM>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi
deleted file mode 100644
index cade712..0000000
--- a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use CGI;
-use FS::SelfService qw( invoice_logo );
-
-my $cgi = new CGI;
-
-my($query) = $cgi->keywords;
-$query =~ /^([^\.\/]*)$/ or '' =~ /^()$/;
-my $templatename = $1;
-my $hashref = invoice_logo('templatename' => $templatename);
-
-print $cgi->header( '-type' => $hashref->{'content_type'},
- '-expires' => 'now',
- ).
- $hashref->{'logo'};
-
diff --git a/fs_selfservice/FS-SelfService/cgi/cvv2.html b/fs_selfservice/FS-SelfService/cgi/cvv2.html
deleted file mode 100644
index b178c85..0000000
--- a/fs_selfservice/FS-SelfService/cgi/cvv2.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<HTML>
- <HEAD>
- <TITLE>
- CVV2 information
- </TITLE>
- </HEAD>
- <BODY BGCOLOR="#e8e8e8">
- The CVV2 number (also called CVC2 or CID) is a three- or four-digit
- security code used to reduce credit card fraud.<BR><BR>
- <TABLE BORDER=0 CELLSPACING=4>
- <TR>
- <TH>Visa / MasterCard / Discover</TH>
- <TH>American Express</TH>
- </TR>
- <TR>
- <TD>
- <IMG BORDER=0 ALT="Visa/MasterCard/Discover" SRC="cvv2.png">
- </TD>
- <TD>
- <IMG BORDER=0 ALT="American Express" SRC="cvv2_amex.png">
- </TD>
- </TABLE>
- <CENTER><A HREF="javascript:close()">(close window)</A></CENTER>
- </BODY>
-</HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/cvv2.png b/fs_selfservice/FS-SelfService/cgi/cvv2.png
deleted file mode 100644
index 4610dcb..0000000
--- a/fs_selfservice/FS-SelfService/cgi/cvv2.png
+++ /dev/null
Binary files differ
diff --git a/fs_selfservice/FS-SelfService/cgi/cvv2_amex.png b/fs_selfservice/FS-SelfService/cgi/cvv2_amex.png
deleted file mode 100644
index 21c36a0..0000000
--- a/fs_selfservice/FS-SelfService/cgi/cvv2_amex.png
+++ /dev/null
Binary files differ
diff --git a/fs_selfservice/FS-SelfService/cgi/decline.html b/fs_selfservice/FS-SelfService/cgi/decline.html
deleted file mode 100644
index a37ba3a..0000000
--- a/fs_selfservice/FS-SelfService/cgi/decline.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<HTML><HEAD><TITLE>Processing error</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>Processing error</FONT><BR><BR>
-There has been an error processing your account. Please contact customer
-support.
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/delete_svc.html b/fs_selfservice/FS-SelfService/cgi/delete_svc.html
deleted file mode 100644
index 8468deb..0000000
--- a/fs_selfservice/FS-SelfService/cgi/delete_svc.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT>!;
-} else {
- $OUT .= "<FONT SIZE=4>$svc removed.</FONT>";
-} %>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/list_customers.html b/fs_selfservice/FS-SelfService/cgi/list_customers.html
deleted file mode 100644
index 858e5e9..0000000
--- a/fs_selfservice/FS-SelfService/cgi/list_customers.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-
-<%=
- if ( @customers ) {
- $OUT .= '<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#eeeeee">'.
- '<TR><TH BGCOLOR="#cccccc" COLSPAN=3>Customers</TH><TD>';
- my $col1 = "ffffff";
- my $col2 = "dddddd";
- my $col = $col1;
-
- foreach my $customer ( @customers ) {
- my $td = qq!<TD BGCOLOR="#$col">!;
- my $a = qq!<A HREF="${url}view_customer;custnum=!.
- $customer->{'custnum'}. '">';
- $OUT .=
- '<TR>'.
- "$td<FONT COLOR=\"". $customer->{'statuscolor'}. '">'.
- ucfirst($customer->{'status'}). "</TD>". "$td</TD>".
- "$td$a". $customer->{'name'}. "</A></TD>".
- '</TR>';
- #"$td</TD>".
- $col = $col eq $col1 ? $col2 : $col1;
- }
- $OUT .= '</TABLE>';
- } else {
- $OUT .= 'No customers.<BR><BR>';
- }
-%>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/login.html b/fs_selfservice/FS-SelfService/cgi/login.html
deleted file mode 100644
index 5607de7..0000000
--- a/fs_selfservice/FS-SelfService/cgi/login.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<HTML><HEAD><TITLE>Login</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=5>Login</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM ACTION="<%= $self_url %>" METHOD=POST>
-<INPUT TYPE="hidden" NAME="session" VALUE="login">
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=2 CELLPADDING=0>
-<TR>
- <TH ALIGN="right">Username </TH>
- <TD>
- <INPUT TYPE="text" NAME="username" VALUE="<%= $username %>">
- </TD>
-</TR>
-<TR>
- <TH ALIGN="right">Domain </TH>
- <TD>
- <INPUT TYPE="text" NAME="domain" VALUE="<%= $domain %>">
- </TD>
-</TR>
-<!--<INPUT TYPE="hidden" NAME="domain" VALUE="myisp.com">-->
-<TR>
- <TH ALIGN="right">Password </TH>
- <TD>
- <INPUT TYPE="password" NAME="password">
- </TD>
-</TR>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" VALUE="Login">
-</FORM></BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/logout.html b/fs_selfservice/FS-SelfService/cgi/logout.html
deleted file mode 100644
index 0e774e9..0000000
--- a/fs_selfservice/FS-SelfService/cgi/logout.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-You have been logged out.
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/make_payment.html b/fs_selfservice/FS-SelfService/cgi/make_payment.html
deleted file mode 100644
index 1bbbe90..0000000
--- a/fs_selfservice/FS-SelfService/cgi/make_payment.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<FONT SIZE=4>Make a payment</FONT><BR><BR>
-<FORM NAME="OneTrueForm" METHOD="POST" ACTION="<%=$selfurl%>" onSubmit="document.OneTrueForm.process.disabled=true">
-<INPUT TYPE="hidden" NAME="session" VALUE="<%=$session_id%>">
-<INPUT TYPE="hidden" NAME="action" VALUE="payment_results">
-<TABLE BGCOLOR="#cccccc">
-<TR>
- <TD ALIGN="right">Amount&nbsp;Due</TD>
- <TD>
- <TABLE><TR><TD BGCOLOR="#ffffff">
- $<%=sprintf("%.2f",$balance)%>
- </TD></TR></TABLE>
- </TD>
-</TR>
-<TR>
- <TD ALIGN="right">Payment&nbsp;amount</TD>
- <TD>
- <TABLE><TR><TD BGCOLOR="#ffffff">
- $<INPUT TYPE="text" NAME="amount" SIZE=8 VALUE="<%=sprintf("%.2f",$balance)%>">
- </TD></TR></TABLE>
- </TD>
-</TR><TR>
- <TD ALIGN="right">Card&nbsp;type</TD>
- <TD>
- <SELECT NAME="card_type"><OPTION></OPTION>
- <%= foreach ( keys %card_types ) {
- $selected = $card_type eq $card_types{$_} ? ' SELECTED' : '';
- $OUT .= qq(<OPTION$selected VALUE="). $card_types{$_}. qq(">$_\n);
- } %>
- </SELECT>
- </TD>
-</TD><TR>
- <TD ALIGN="right">Card&nbsp;number</TD>
- <TD>
- <TABLE>
- <TR>
- <TD>
- <INPUT TYPE="text" NAME="payinfo" SIZE=20 MAXLENGTH=19 VALUE="<%=$payinfo%>"> </TD>
- <TD>Exp.</TD>
- <TD>
- <SELECT NAME="month">
- <%= for ( ( map "0$_", 1 .. 9 ), 10 .. 12 ) {
- $OUT .= '<OPTION'. ($_ == $month ? ' SELECTED' : ''). ">$_\n";
- } %>
- </SELECT>
- </TD>
- <TD> / </TD>
- <TD>
- <SELECT NAME="year">
- <%= my @a = localtime; for ( $a[5]+1900 .. $a[5]+1915 ) {
- $OUT .= '<OPTION'. ($_ == $year ? ' SELECTED' : ''). ">$_\n";
- } %>
- </SELECT>
- </TD>
- </TR>
- </TABLE>
- </TD>
-</TR><TR>
- <TD ALIGN="right">Exact&nbsp;name&nbsp;on&nbsp;card</TD>
- <TD><INPUT TYPE="text" SIZE=32 MAXLENGTH=80 NAME="payname" VALUE="<%=$payname%>"></TD>
-</TR><TR>
- <TD ALIGN="right">Card&nbsp;billing&nbsp;address</TD>
- <TD>
- <INPUT TYPE="text" SIZE=40 MAXLENGTH=80 NAME="address1" VALUE="<%=$address1%>">
- </TD>
-</TR><TR>
- <TD ALIGN="right">Address&nbsp;line&nbsp;2</TD>
- <TD>
- <INPUT TYPE="text" SIZE=40 MAXLENGTH=80 NAME="address2" VALUE="<%=$address2%>">
- </TD>
-</TR><TR>
- <TD ALIGN="right">City</TD>
- <TD>
- <TABLE>
- <TR>
- <TD>
- <INPUT TYPE="text" NAME="city" SIZE="12" MAXLENGTH=80 VALUE="<%=$city%>">
- </TD>
- <TD>State</TD>
- <TD>
- <SELECT NAME="state">
- <%= for ( @states ) {
- $OUT .= '<OPTION'. ($_ eq $state ? ' SELECTED' : '' ). ">$_\n";
- } %>
- </SELECT>
- </TD>
- <TD>Zip</TD>
- <TD>
- <INPUT TYPE="text" NAME="zip" SIZE=11 MAXLENGTH=10 VALUE="<%=$zip%>">
- </TD>
- </TR>
- </TABLE>
- </TD>
-</TR><TR>
- <TD COLSPAN=2>
- <INPUT TYPE="checkbox" CHECKED NAME="save" VALUE="1">
- Remember this information
- </TD>
-</TR><TR>
- <TD COLSPAN=2>
- <INPUT TYPE="checkbox"<%= $payby eq 'CARD' ? ' CHECKED' : '' %> NAME="auto" VALUE="1" onClick="if (this.checked) { document.OneTrueForm.save.checked=true; }">
- Charge future payments to this card automatically
- </TD>
-</TR>
-</TABLE>
-<BR>
-<INPUT TYPE="hidden" NAME="paybatch" VALUE="<%=$paybatch%>">
-<INPUT TYPE="submit" NAME="process" VALUE="Process payment"> <!-- onClick="this.disabled=true"> -->
-</FORM>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/map.gif b/fs_selfservice/FS-SelfService/cgi/map.gif
deleted file mode 100644
index ef884d8..0000000
--- a/fs_selfservice/FS-SelfService/cgi/map.gif
+++ /dev/null
Binary files differ
diff --git a/fs_selfservice/FS-SelfService/cgi/myaccount.html b/fs_selfservice/FS-SelfService/cgi/myaccount.html
deleted file mode 100644
index 546ca11..0000000
--- a/fs_selfservice/FS-SelfService/cgi/myaccount.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-Hello <%= $name %>!<BR><BR>
-<%= $small_custview %>
-<BR>
-<%= if ( $balance > 0 ) {
- $OUT .= qq! <B><A HREF="${url}make_payment">Make a payment</A></B><BR><BR>!;
-} %>
-<%=
- if ( @open_invoices ) {
- $OUT .= '<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#eeeeee">'.
- '<TR><TH BGCOLOR="#ff6666" COLSPAN=5>Open Invoices</TH></TR>';
- my $link = qq!<A HREF="<%= $url %>myaccount!;
- my $col1 = "ffffff";
- my $col2 = "dddddd";
- my $col = $col1;
-
- foreach my $invoice ( @open_invoices ) {
- my $td = qq!<TD BGCOLOR="#$col">!;
- my $a=qq!<A HREF="${url}view_invoice;invnum=!. $invoice->{'invnum'}. '">';
- $OUT .=
- "<TR>$td${a}Invoice #". $invoice->{'invnum'}. "</A></TD>$td</TD>".
- "$td$a". $invoice->{'date'}. "</A></TD>$td</TD>".
- qq!<TD BGCOLOR="#$col" ALIGN="right">$a\$!. $invoice->{'owed'}.
- '</A></TD>'.
- '</TR>';
- $col = $col eq $col1 ? $col2 : $col1;
- }
- $OUT .= '</TABLE>';
- } else {
- $OUT .= 'You have no outstanding invoices.<BR><BR>';
- }
-%>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
-
-
diff --git a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html
deleted file mode 100644
index 6dacc3e..0000000
--- a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<TABLE BORDER=0><TR>
-<TD VALIGN="top" HEIGHT=384 BGCOLOR="#dddddd">
-
-<TABLE CELLSPACING=0 BORDER=0>
-
-<%=
-
-my @menu = (
-{ title=>' ' },
-{ title=>'Overview', url=>'myaccount', size=>'+1', },
-{ title=>' ' },
-
-{ title=>'Purchase', size=>'+1', },
-# { title=>'Purchase additional package*', url=>'order', 'indent'=>2 },
-);
-
-if ( 1 ) { #XXXFIXME "enable selfservice prepay features" flag or something, eventually per-pkg or something really fancy
-
- push @menu, (
- { title=>'Recharge my account with a credit card',
- url=>'make_payment', indent=>2 },
- { title=>'Recharge my account with a prepaid card',
- url=>'recharge_prepay', indent=>2 },
- );
-
-}
-
-push @menu, (
-
-{ title=>' ' },
-
-{ title=>'Setup my services', url=>'provision', size=>'+1', },
-
-{ title=>' ' },
-
-{ title=>'Change my information', size=>'+1', },
-# { title=>'Change payment information*', url=>'change_bill', indent=>2 },
-# { title=>'Change service address*', url=>'change_ship', indent=>2 },
- { title=>'Change password(s)', url=>'change_password', indent=>2 },
-
-{ title=>' ' },
-
-{ title=>'Logout', url=>'logout', size=>'+1', },
-
-);
-
-foreach my $item ( @menu ) {
-
- $OUT .= '<TR><TD';
- if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
- $OUT .= ' BGCOLOR="#eeeeee" '.
- ' STYLE="border-top: 1px solid black;'.
- ' border-left: 1px solid black;'.
- ' border-bottom: 1px solid black"';
- } else {
- $OUT .= ' STYLE="border-right: 1px solid black"';
- }
- $OUT.='>';
-
- $OUT .= '<FONT SIZE="'. $item->{'size'}. '">'
- if exists $item->{'size'};
-
- $OUT .= '&nbsp;' x $item->{'indent'}
- if exists $item->{'indent'};
-
- $OUT .= '<A HREF="'. $url. $item->{'url'}. '">'
- if exists $item->{'url'} && $action ne $item->{'url'};
-
- $item->{'title'} =~ s/ /&nbsp;/g;
- $OUT .= $item->{'title'};
-
- $OUT .= '</FONT>'
- if exists $item->{'size'};
-
- $OUT .= '</A>'
- if exists $item->{'url'} && $action ne $item->{'url'};
-
- $OUT .= '</TD></TR>';
-
-}
-
-%>
-
-<!-- <TR><TD STYLE="border-right: 1px solid black"><BR><BR>*&nbsp;coming&nbsp;soon</TD></TR> -->
-
-<TR><TD STYLE="border-right: 1px solid black" HEIGHT="100%"><BR><BR><BR><BR></TD></TR>
-
-</TABLE>
-
-</TD>
diff --git a/fs_selfservice/FS-SelfService/cgi/order_pkg.html b/fs_selfservice/FS-SelfService/cgi/order_pkg.html
deleted file mode 100644
index 9cdd4cd..0000000
--- a/fs_selfservice/FS-SelfService/cgi/order_pkg.html
+++ /dev/null
@@ -1,75 +0,0 @@
-<SCRIPT TYPE="text/javascript">
-function enable_order_pkg () {
- if ( document.OrderPkgForm.pkgpart.selectedIndex > 0 ) {
- document.OrderPkgForm.submit.disabled = false;
- } else {
- document.OrderPkgForm.submit.disabled = true;
- }
-}
-</SCRIPT>
-<FONT SIZE=4>Purchase additional package</FONT><BR><BR>
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">$error</FONT><BR><BR>!;
-} ''; %>
-<FORM NAME="OrderPkgForm" ACTION="<%= $selfurl %>" METHOD=POST>
-<INPUT TYPE="hidden" NAME="session" VALUE="<%= $session_id %>">
-<INPUT TYPE="hidden" NAME="action" VALUE="process_order_pkg">
-<INPUT TYPE="hidden" NAME="custnum" VALUE="<%= $custnum %>">
-<TABLE BGCOLOR="#cccccc" BORDER=0 CELLSPACING=0>
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart" onChange="enable_order_pkg()">
- <OPTION VALUE="">
-
- <%=
- foreach my $part_pkg ( @part_pkg ) {
- $OUT .= '<OPTION VALUE="'. $part_pkg->{'pkgpart'}. '"';
- $OUT .= ' SELECTED' if $pkgpart && $part_pkg->{'pkgpart'} == $pkgpart;
- $OUT .= '>'. $part_pkg->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $_password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $_password2 %>"></TD>
-</TR>
-<%=
- if ( $security_phrase ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( @svc_acct_pop ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector( 'popnum' => $popnum,
- 'pops' => \@svc_acct_pop,
- 'init_popstate' => $init_popstate,
- 'popac' => $popac,
- 'acstate' => $acstate,
- ).
- '</TD></TR>';
- } else {
- $OUT .= popselector(popnum=>$popnum, pops=>\@svc_acct_pop);
- }
-%>
-</TABLE>
-<INPUT NAME="submit" TYPE="submit" VALUE="Purchase" disabled>
-</FORM>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/passwd.cgi b/fs_selfservice/FS-SelfService/cgi/passwd.cgi
deleted file mode 100755
index d77876e..0000000
--- a/fs_selfservice/FS-SelfService/cgi/passwd.cgi
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use Getopt::Std;
-use FS::SelfService qw(passwd);
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-
-my $freeside_uid = scalar(getpwnam('freeside'));
-
-$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-die "passwd.cgi isn't running as freeside user\n" if $> != $freeside_uid;
-
-my $cgi = new CGI;
-
-$cgi->param('username') =~ /^([^\n]{0,255}$)/ or die "Illegal username";
-my $me = $1;
-
-$cgi->param('domain') =~ /^([^\n]{0,255}$)/ or die "Illegal domain";
-my $domain = $1;
-
-$cgi->param('old_password') =~ /^([^\n]{0,255}$)/ or die "Illegal old_password";
-my $old_password = $1;
-
-$cgi->param('new_password') =~ /^([^\n]{0,255}$)/ or die "Illegal new_password";
-my $new_password = $1;
-
-die "New passwords don't match"
- unless $new_password eq $cgi->param('new_password2');
-
-my $rv = passwd(
- 'username' => $me,
- 'domain' => $domain,
- 'old_password' => $old_password,
- 'new_password' => $new_password,
-);
-
-my $error = $rv->{error};
-
-if ($error) {
- die $error;
-} else {
- print $cgi->header(), <<END;
-<html>
- <head>
- <title>Password changed</title>
- </head>
- <body bgcolor="#e8e8e8">
- <h3>Password changed</h3>
-<br>Your password has been changed.
- </body>
-</html>
-END
-}
diff --git a/fs_selfservice/FS-SelfService/cgi/passwd.html b/fs_selfservice/FS-SelfService/cgi/passwd.html
deleted file mode 100644
index 459c96a..0000000
--- a/fs_selfservice/FS-SelfService/cgi/passwd.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<html>
- <head>
- <title>Change password</title>
- </head>
- <body bgcolor="#e8e8e8">
- <h3>Change password</h3>
- <form action="passwd.cgi" method="post">
- <table bgcolor="#cccccc" border=0 cellspacing=2>
- <tr><th align="right">Username</th>
- <td><input type="text" name="username" size="18"></td>
- </tr>
- <tr><th align="right">Domain</th>
- <td><input type="text" name="domain" size="18"></td>
- </tr>
- <tr><th align="right">Current password</th>
- <td><input type="password" name="old_password" size="18"></td>
- </tr>
- <tr><th align="right">New password</th>
- <td><input type="password" name="new_password" size="18"></td>
- </tr>
- <tr><th align="right">Re-enter new password</th>
- <td><input type="password" name="new_password2" size="18"></td>
- </tr>
- </table>
- <br><input type="submit" value="Change password">
- </body>
-</html>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/payment_results.html b/fs_selfservice/FS-SelfService/cgi/payment_results.html
deleted file mode 100644
index 9fe400f..0000000
--- a/fs_selfservice/FS-SelfService/cgi/payment_results.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<FONT SIZE=4>Payment results</FONT><BR><BR>
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error processing your payment: $error</FONT>!;
-} else {
- $OUT .= 'Your payment was processed successfully. Thank you.';
-} %>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/process_change_password.html b/fs_selfservice/FS-SelfService/cgi/process_change_password.html
deleted file mode 100644
index 4fdee79..0000000
--- a/fs_selfservice/FS-SelfService/cgi/process_change_password.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<FONT SIZE=4>Password changed for <%= $value %> <%= $label %>.</FONT>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html b/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html
deleted file mode 100644
index 3b81291..0000000
--- a/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<FONT SIZE=4><%= $svc %> setup successfully.</FONT>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/process_svc_external.html b/fs_selfservice/FS-SelfService/cgi/process_svc_external.html
deleted file mode 100644
index 19fec73..0000000
--- a/fs_selfservice/FS-SelfService/cgi/process_svc_external.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<HTML><HEAD><TITLE><%= $error ? 'MyAccount' : sprintf("Your serial number is %010d-$title", $id) %></TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<FONT SIZE=4><%= $svc %> setup successfully.</FONT>
-
-<BR><BR>Your serial number is <%= sprintf("%010d-$title", $id) %>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/promocode.html b/fs_selfservice/FS-SelfService/cgi/promocode.html
deleted file mode 100644
index f8ee7f6..0000000
--- a/fs_selfservice/FS-SelfService/cgi/promocode.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>ISP Signup - promotional code</FONT><BR><BR>
-<SCRIPT>
-function gotoURL(object) {
- window.location.href = 'signup.cgi?promo_code=' + object.promo_code.value;
-}
-</SCRIPT>
-<FORM>
-Enter promotional code <INPUT TYPE="text" NAME="promo_code">
-<INPUT type="submit" VALUE="Signup" onClick="gotoURL(this.form)">
-
-</FORM>
-</BODY>
-</HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/provision.html b/fs_selfservice/FS-SelfService/cgi/provision.html
deleted file mode 100644
index d31e607..0000000
--- a/fs_selfservice/FS-SelfService/cgi/provision.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<%= include('provision_list') %>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/provision_list.html b/fs_selfservice/FS-SelfService/cgi/provision_list.html
deleted file mode 100644
index cd587f0..0000000
--- a/fs_selfservice/FS-SelfService/cgi/provision_list.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<FONT SIZE=4>Setup services</FONT><BR><BR>
-
-<SCRIPT>
-function areyousure(href, message) {
- if (confirm(message) == true)
- window.location.href = href;
-}
-</SCRIPT>
-
-<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#ffffff">
-
-<%= foreach my $pkg (
- grep { scalar(@{$_->{part_svc}})
- || scalar(@{$_->{cust_svc}})
- } @cust_pkg
- ) {
-
- $OUT .= #'<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#ffffff">'.
- '<TR><TH BGCOLOR="#6666ff" COLSPAN=3>'.
- $pkg->{'pkg'}.
- '</TH></TR>';
-
- my $col1 = "ffffff";
- my $col2 = "dddddd";
- my $col = $col1;
-
- foreach my $cust_svc ( @{ $pkg->{cust_svc} } ) {
- my $td = qq!<TD BGCOLOR="#$col"!;
-
- $OUT .= '<TR>'.
- "$td ALIGN=right>". $cust_svc->{label}[0]. ': </TD>'.
- "$td><B>". $cust_svc->{label}[1]. '</B>';
- $OUT .= '<BR><I>password: '. encode_entities($cust_svc->{_password}). '</I>'
- if exists($cust_svc->{_password});
- $OUT .= '</TD>'.
- "$td><FONT SIZE=-1>";
-
- #if ( $cust_svc->{label}[2] eq 'svc_acct' ) {
- # $OUT .= qq!(<A HREF="${url}changepw;svcnum=$cust_svc->{'svcnum'}">!.
- # 'change&nbsp;pw) ';
- #}
-
- unless ( $cust_svc->{'svcnum'} == $svcnum ) {
- $OUT .= qq!(<A HREF="javascript:areyousure('${url}delete_svc;svcnum=$cust_svc->{svcnum}', 'This will permanently delete the $cust_svc->{label}[1] $cust_svc->{label}[0]. Are you sure?')">!.
- 'delete</A>)';
-
- }
- $OUT .= '</FONT></TD></TR>';
- $col = $col eq $col1 ? $col2 : $col1;
- }
-
- $OUT .= '<TR><TD COLSPAN=3 BGCOLOR="#000000"></TD></TR>'
- if scalar(@{$pkg->{part_svc}}) && scalar(@{$pkg->{cust_svc}});
-
- $col = $col1;
-
- foreach my $part_svc ( @{ $pkg->{part_svc} } ) {
-
- my $td = qq!<TD BGCOLOR="#$col"!;
-
- my $link;
-
- if ( $part_svc->{'svcdb'} eq 'svc_external'
- #&& $conf->exists('svc_external-skip_manual')
- ) {
- $link = "${url}process_svc_external;".
- "pkgnum=$pkg->{'pkgnum'};".
- "svcpart=$part_svc->{'svcpart'}";
- } else {
- $link = "${url}provision_svc;".
- "pkgnum=$pkg->{'pkgnum'};".
- "svcpart=$part_svc->{'svcpart'}";
- }
-
- $OUT .= "<TR>$td COLSPAN=3 ALIGN=center>".
- qq!<A HREF="$link">!. 'Setup '. $part_svc->{'svc'}. '</A> '.
- '('. $part_svc->{'num_avail'}. ' available)'.
- '</TD></TR>'
- #self-service only supports these services so far
- if grep { $part_svc->{'svcdb'} eq $_ } qw( svc_acct svc_external );
-
- $col = $col eq $col1 ? $col2 : $col1;
- }
-
- #$OUT .= '</TABLE><BR>';
- $OUT .= '<TR><TD BGCOLOR="#eeeeee" COLSPAN=3>&nbsp;</TD></TR>';
-
-} %>
-
-</TABLE>
diff --git a/fs_selfservice/FS-SelfService/cgi/provision_svc_acct.html b/fs_selfservice/FS-SelfService/cgi/provision_svc_acct.html
deleted file mode 100644
index 5054074..0000000
--- a/fs_selfservice/FS-SelfService/cgi/provision_svc_acct.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<%= include('svc_acct') %>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/recharge_prepay.html b/fs_selfservice/FS-SelfService/cgi/recharge_prepay.html
deleted file mode 100644
index f858459..0000000
--- a/fs_selfservice/FS-SelfService/cgi/recharge_prepay.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<FONT SIZE=4>Recharge with prepaid card</FONT><BR><BR>
-<FORM NAME="OneTrueForm" METHOD="POST" ACTION="<%=$selfurl%>" onSubmit="document.OneTrueForm.process.disabled=true">
-<INPUT TYPE="hidden" NAME="session" VALUE="<%=$session_id%>">
-<INPUT TYPE="hidden" NAME="action" VALUE="recharge_results">
-<TABLE BGCOLOR="#cccccc">
-<!--
-<TR>
- <TD ALIGN="right">Amount&nbsp;Due</TD>
- <TD>
- <TABLE><TR><TD BGCOLOR="#ffffff">
- $<%=sprintf("%.2f",$balance)%>
- </TD></TR></TABLE>
- </TD>
-</TR>
--->
-<TR>
- <TD ALIGN="right">Prepaid&nbsp;card&nbsp;number</TD>
- <TD>
- <INPUT TYPE="text" NAME="prepaid_cardnum" SIZE=20 MAXLENGTH=19 VALUE="<%=$prepaid_cardnum%>">
- </TD>
-</TR>
-</TABLE>
-<BR>
-<INPUT TYPE="hidden" NAME="paybatch" VALUE="<%=$paybatch%>">
-<INPUT TYPE="submit" NAME="process" VALUE="Recharge"> <!-- onClick="this.disabled=true"> -->
-</FORM>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/recharge_results.html b/fs_selfservice/FS-SelfService/cgi/recharge_results.html
deleted file mode 100644
index b1eb7cb..0000000
--- a/fs_selfservice/FS-SelfService/cgi/recharge_results.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<FONT SIZE=4>Recharge results</FONT><BR><BR>
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error processing your prepaid card: $error</FONT>!;
-} else {
- $OUT .= 'Prepaid card recharge successful!<BR><BR>';
-
- $OUT .= '$'. sprintf('%.2f', $amount). ' added to your account.<BR><BR>'
- if $amount;
-
- $OUT .= $duration. ' added to your account.<BR><BR>'
- if $seconds;
-
- $OUT .= 'Thank you.';
-} %>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
diff --git a/fs_selfservice/FS-SelfService/cgi/regcode.html b/fs_selfservice/FS-SelfService/cgi/regcode.html
deleted file mode 100644
index e639b9b..0000000
--- a/fs_selfservice/FS-SelfService/cgi/regcode.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>ISP Signup - registration code</FONT><BR><BR>
-<SCRIPT>
-function gotoURL(object) {
- window.location.href = 'signup.cgi?reg_code=' + object.reg_code.value;
-}
-</SCRIPT>
-<FORM>
-Enter registration code <INPUT TYPE="text" NAME="reg_code">
-<INPUT type="submit" VALUE="Signup" onClick="gotoURL(this.form)">
-
-</FORM>
-</BODY>
-</HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
deleted file mode 100644
index 4ab1309..0000000
--- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
+++ /dev/null
@@ -1,341 +0,0 @@
-#!/usr/bin/perl -Tw
-
-use strict;
-use vars qw($cgi $session_id $form_max $template_dir);
-use subs qw(do_template);
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-use Text::Template;
-use HTML::Entities;
-use FS::SelfService qw( login customer_info invoice
- payment_info process_payment
- process_prepay
- list_pkgs
- part_svc_info provision_acct provision_external
- unprovision_svc
- list_svcs myaccount_passwd
- );
-
-$template_dir = '.';
-
-$form_max = 255;
-
-$cgi = new CGI;
-
-unless ( defined $cgi->param('session') ) {
- do_template('login',{});
- exit;
-}
-
-if ( $cgi->param('session') eq 'login' ) {
-
- $cgi->param('username') =~ /^\s*([a-z0-9_\-\.\&]{0,$form_max})\s*$/i
- or die "illegal username";
- my $username = $1;
-
- $cgi->param('domain') =~ /^\s*([\w\-\.]{0,$form_max})\s*$/
- or die "illegal domain";
- my $domain = $1;
-
- $cgi->param('password') =~ /^(.{0,$form_max})$/
- or die "illegal password";
- my $password = $1;
-
- my $rv = login(
- 'username' => $username,
- 'domain' => $domain,
- 'password' => $password,
- );
- if ( $rv->{error} ) {
- do_template('login', {
- 'error' => $rv->{error},
- 'username' => $username,
- 'domain' => $domain,
- } );
- exit;
- } else {
- $cgi->param('session' => $rv->{session_id} );
- $cgi->param('action' => 'myaccount' );
- }
-}
-
-$session_id = $cgi->param('session');
-
-#order|pw_list XXX ???
-$cgi->param('action') =~
- /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|change_password|process_change_password)$/
- or die "unknown action ". $cgi->param('action');
-my $action = $1;
-
-my $result = eval "&$action();";
-die $@ if $@;
-
-if ( $result->{error} eq "Can't resume session" ) { #ick
- do_template('login',{});
- exit;
-}
-
-#warn $result->{'open_invoices'};
-#warn scalar(@{$result->{'open_invoices'}});
-
-warn "processing template $action\n";
-do_template($action, {
- 'session_id' => $session_id,
- 'action' => $action, #so the menu knows what tab we're on...
- %{$result}
-});
-
-#--
-
-sub myaccount { customer_info( 'session_id' => $session_id ); }
-
-sub view_invoice {
-
- $cgi->param('invnum') =~ /^(\d+)$/ or die "illegal invnum";
- my $invnum = $1;
-
- invoice( 'session_id' => $session_id,
- 'invnum' => $invnum,
- );
-
-}
-
-sub make_payment {
- payment_info( 'session_id' => $session_id );
-}
-
-sub payment_results {
-
- use Business::CreditCard;
-
- $cgi->param('amount') =~ /^\s*(\d+(\.\d{2})?)\s*$/
- or die "illegal amount"; #!!!
- my $amount = $1;
-
- my $payinfo = $cgi->param('payinfo');
- $payinfo =~ s/\D//g;
- $payinfo =~ /^(\d{13,16})$/
- #or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- or die "illegal card"; #!!!
- $payinfo = $1;
- validate($payinfo)
- #or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- or die "invalid card"; #!!!
- cardtype($payinfo) eq $cgi->param('card_type')
- #or $error ||= $init_data->{msgcat}{not_a}. $cgi->param('CARD_type');
- or die "not a ". $cgi->param('card_type');
-
- $cgi->param('month') =~ /^(\d{2})$/ or die "illegal month";
- my $month = $1;
- $cgi->param('year') =~ /^(\d{4})$/ or die "illegal year";
- my $year = $1;
-
- $cgi->param('payname') =~ /^(.{0,80})$/ or die "illegal payname";
- my $payname = $1;
-
- $cgi->param('address1') =~ /^(.{0,80})$/ or die "illegal address1";
- my $address1 = $1;
-
- $cgi->param('address2') =~ /^(.{0,80})$/ or die "illegal address2";
- my $address2 = $1;
-
- $cgi->param('city') =~ /^(.{0,80})$/ or die "illegal city";
- my $city = $1;
-
- $cgi->param('state') =~ /^(.{2})$/ or die "illegal state";
- my $state = $1;
-
- $cgi->param('zip') =~ /^(.{0,10})$/ or die "illegal zip";
- my $zip = $1;
-
- my $save = 0;
- $save = 1 if $cgi->param('save');
-
- my $auto = 0;
- $auto = 1 if $cgi->param('auto');
-
- $cgi->param('paybatch') =~ /^([\w\-\.]+)$/ or die "illegal paybatch";
- my $paybatch = $1;
-
- process_payment(
- 'session_id' => $session_id,
- 'amount' => $amount,
- 'payinfo' => $payinfo,
- 'month' => $month,
- 'year' => $year,
- 'payname' => $payname,
- 'address1' => $address1,
- 'address2' => $address2,
- 'city' => $city,
- 'state' => $state,
- 'zip' => $zip,
- 'save' => $save,
- 'auto' => $auto,
- 'paybatch' => $paybatch,
- );
-
-}
-
-sub recharge_prepay {
- customer_info( 'session_id' => $session_id );
-}
-
-sub recharge_results {
-
- my $prepaid_cardnum = $cgi->param('prepaid_cardnum');
- $prepaid_cardnum =~ s/\W//g;
- $prepaid_cardnum =~ /^(\w*)$/ or die "illegal prepaid card number";
- $prepaid_cardnum = $1;
-
- process_prepay ( 'session_id' => $session_id,
- 'prepaid_cardnum' => $prepaid_cardnum,
- );
-}
-
-sub logout {
- FS::SelfService::logout( 'session_id' => $session_id );
-}
-
-sub provision {
- my $result = list_pkgs( 'session_id' => $session_id );
- die $result->{'error'} if exists $result->{'error'} && $result->{'error'};
- $result;
-}
-
-sub provision_svc {
-
- my $result = part_svc_info(
- 'session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( pkgnum svcpart ),
- );
- die $result->{'error'} if exists $result->{'error'} && $result->{'error'};
-
- $result->{'svcdb'} =~ /^svc_(.*)$/
- #or return { 'error' => 'Unknown svcdb '. $result->{'svcdb'} };
- or die 'Unknown svcdb '. $result->{'svcdb'};
- $action .= "_$1";
-
- $result;
-}
-
-sub process_svc_acct {
-
- my $result = provision_acct (
- 'session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw(
- pkgnum svcpart username _password _password2 sec_phrase popnum )
- );
-
- if ( exists $result->{'error'} && $result->{'error'} ) {
- #warn "$result $result->{'error'}";
- $action = 'provision_svc_acct';
- return {
- $cgi->Vars,
- %{ part_svc_info( 'session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( pkgnum svcpart )
- )
- },
- 'error' => $result->{'error'},
- };
- } else {
- #warn "$result $result->{'error'}";
- return $result;
- }
-
-}
-
-sub process_svc_external {
- provision_external (
- 'session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( pkgnum svcpart )
- );
-}
-
-sub delete_svc {
- unprovision_svc(
- 'session_id' => $session_id,
- 'svcnum' => $cgi->param('svcnum'),
- );
-}
-
-sub change_password {
- list_svcs(
- 'session_id' => $session_id,
- 'svcdb' => 'svc_acct',
- );
-};
-
-sub process_change_password {
-
- my $result = myaccount_passwd(
- 'session_id' => $session_id,
- map { $_ => $cgi->param($_) } qw( svcnum new_password new_password2 )
- );
-
- if ( exists $result->{'error'} && $result->{'error'} ) {
-
- $action = 'change_password';
- return {
- $cgi->Vars,
- %{ list_svcs( 'session_id' => $session_id,
- 'svcdb' => 'svc_acct',
- )
- },
- #'svcnum' => $cgi->param('svcnum'),
- 'error' => $result->{'error'}
- };
-
- } else {
-
- return $result;
-
- }
-
-}
-
-#--
-
-sub do_template {
- my $name = shift;
- my $fill_in = shift;
-
- $cgi->delete_all();
- $fill_in->{'selfurl'} = $cgi->self_url;
- $fill_in->{'cgi'} = \$cgi;
-
- my $template = new Text::Template( TYPE => 'FILE',
- SOURCE => "$template_dir/$name.html",
- DELIMITERS => [ '<%=', '%>' ],
- UNTAINT => 1, )
- or die $Text::Template::ERROR;
-
- print $cgi->header( '-expires' => 'now' ),
- $template->fill_in( PACKAGE => 'FS::SelfService::_selfservicecgi',
- HASH => $fill_in
- );
-}
-
-#*FS::SelfService::_selfservicecgi::include = \&Text::Template::fill_in_file;
-
-package FS::SelfService::_selfservicecgi;
-
-#use FS::SelfService qw(regionselector expselect popselector);
-use HTML::Entities;
-use FS::SelfService qw(popselector);
-
-#false laziness w/agent.cgi
-sub include {
- my $name = shift;
- my $template = new Text::Template( TYPE => 'FILE',
- SOURCE => "$main::template_dir/$name.html",
- DELIMITERS => [ '<%=', '%>' ],
- UNTAINT => 1,
- )
- or die $Text::Template::ERROR;
-
- $template->fill_in( PACKAGE => 'FS::SelfService::_selfservicecgi',
- #HASH => $fill_in
- );
-
-}
-
diff --git a/fs_selfservice/FS-SelfService/cgi/signup-agentselect.html b/fs_selfservice/FS-SelfService/cgi/signup-agentselect.html
deleted file mode 100755
index 7851c56..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup-agentselect.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>ISP Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM NAME="OneTrueForm" ACTION="<%= $self_url %>" METHOD=POST onSubmit="document.OneTrueForm.signup.disabled=true">
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<INPUT TYPE="hidden" NAME="ref" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-Agent <SELECT NAME="agentnum">
-<%=
- warn $init_data;
- warn $init_data->{'agent'};
- foreach my $agent ( @{$init_data->{'agent'}} ) {
- $OUT .= '<OPTION VALUE="'. $agent->{'agentnum'}. '"';
- $OUT .= ' SELECTED' if $agent->{'agentnum'} eq $agentnum;
- $OUT .= '>'. $agent->{'agent'};
- }
-%>
-</SELECT><BR><BR>
-Contact Information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($county_html, $state_html, $country_html) =
- regionselector( $county, $state, $country );
-
- "$county_html $state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12></TD>
-</TR>
-</TABLE><font color="#ff0000">*</font> required fields<BR>
-<BR>Billing information<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR><TD>
-
- <%=
- $OUT .= '<INPUT TYPE="checkbox" NAME="invoicing_list_POST" VALUE="POST"';
- my @invoicing_list = split(', ', $invoicing_list );
- $OUT .= ' CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
- $OUT .= '>';
- %>
-
- Postal mail invoice
-</TD></TR>
-<TR><TD>Email invoice <INPUT TYPE="text" NAME="invoicing_list" VALUE="<%= join(', ', grep { $_ ne 'POST' } split(', ', $invoicing_list ) ) %>">
-</TD></TR>
-<%= scalar(@payby) > 1 ? '<TR><TD>Billing type</TD></TR>' : '' %>
-</TABLE>
-<TABLE BGCOLOR="#c0c0c0" BORDER=1 WIDTH="100%">
-<TR>
-
- <%=
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected = $cgi->param('CARD_type') eq $types{$_} ? 'SELECTED' : '';
- $cardselect .= qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- my %payby = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", "12-2037"). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="Accounts Payable">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("COMP"),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="" MAXLENGTH=80>!,
- );
-
- my( $account, $aba ) = split('@', $payinfo);
- my %paybychecked = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="$payname">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="$payname">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="$payname">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="$payinfo" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", $paydate). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="$payname">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("COMP", $paydate),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="$payinfo" MAXLENGTH=80>!,
- );
-
- for (@payby) {
- if ( scalar(@payby) == 1) {
- $OUT .= '<TD VALIGN=TOP>'.
- qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$_">!.
- "$paybychecked{$_}</TD>";
- } else {
- $OUT .= qq!<TD VALIGN=TOP><INPUT TYPE="radio" NAME="payby" VALUE="$_"!;
- if ($payby eq $_) {
- $OUT .= qq! CHECKED> $paybychecked{$_}</TD>!;
- } else {
- $OUT .= qq!> $payby{$_}</TD>!;
- }
-
- }
- }
- %>
-
-</TR></TABLE><font color="#ff0000">*</font> required fields for each billing type
-<BR><BR>First package
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart"><OPTION VALUE="">(none)
-
- <%=
- foreach my $package ( @{$packages} ) {
- $OUT .= '<OPTION VALUE="'. $package->{'pkgpart'}. '"';
- $OUT .= ' SELECTED' if $pkgpart && $package->{'pkgpart'} == $pkgpart;
- $OUT .= '>'. $package->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $password2 %>"></TD>
-</TR>
-<%=
- if ( $init_data->{'security_phrase'} ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( scalar(@$pops) ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector($popnum). '</TD></TR>';
- } else {
- $OUT .= popselector($popnum);
- }
-%>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" NAME="signup" VALUE="Signup" >
-</FORM></BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/signup-alternate.html b/fs_selfservice/FS-SelfService/cgi/signup-alternate.html
deleted file mode 100755
index 490cefa..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup-alternate.html
+++ /dev/null
@@ -1,218 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>ISP Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM NAME="dummy">
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<INPUT TYPE="hidden" NAME="ref" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-<INPUT TYPE="hidden" NAME="agentnum" VALUE="3">
-Contact Information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD><SELECT NAME="state" SIZE="1">
-
- <%=
- foreach ( @{$locales} ) {
- my $value = $_->{'state'};
- $value .= ' ('. $_->{'county'}. ')' if $_->{'county'};
- $value .= ' / '. $_->{'country'};
-
- $OUT .= qq(<OPTION VALUE="$value");
- $OUT .= ' SELECTED' if ( $state eq $_->{'state'}
- && $county eq $_->{'county'}
- && $country eq $_->{'country'}
- );
- $OUT .= ">$value</OPTION>";
- }
- %>
-
- </SELECT></TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12></TD>
-</TR>
-</TABLE><font color="#ff0000">*</font> required fields<BR>
-
-<BR><BR>
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Username</TH>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Password</TH>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $password %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Re-enter Password</TH>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $password2 %>"></TD>
-</TR>
-
-<%= if ( $init_data->{'security_phrase'} ) {
- <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-
-<%= if ( scalar(@$pops) ) {
- '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector($popnum). '</TD></TR>';
- } else {
- popselector($popnum);
- }
-%>
-
-</TABLE><font color="#ff0000">*</font> required fields
-
-<BR><BR>First package
-
- <%= use Tie::IxHash;
- my %pkgpart2payby = map { $_->{pkgpart} => $_->{payby}[0] } @{$packages};
- tie my %options, 'Tie::IxHash',
- '' => '(none)',
- map { $_->{pkgpart} => $_->{pkg} }
- sort { $a->{recur} <=> $b->{recur} }
- @{$packages}
- ;
-
- use HTML::Widgets::SelectLayers 0.02;
- my @form_text = qw( magic ref ss agentnum
- last first company address1 address2
- city zip daytime night fax
- username _password _password2 sec_phrase );
- my @form_select = qw( state ); #county country
- if ( scalar(@$pops) == 0 or scalar(@$pops) == 1 ) {
- push @form_text, 'popnum',
- } else {
- push @form_select, 'popnum',
- }
- my $widget = new HTML::Widgets::SelectLayers(
- options => \%options,
- selected_layer => $pkgpart,
- form_name => 'dummy',
- form_action => $self_url,
- form_text => \@form_text,
- form_select => \@form_select,
- layer_callback => sub {
- my $layer = shift;
- my $html = qq( <INPUT TYPE="hidden" NAME="pkgpart" VALUE="$layer">);
-
- if ( $pkgpart2payby{$layer} eq 'BILL' ) {
- $html .= <<ENDOUT;
-<INPUT TYPE="hidden" NAME="payby" VALUE="BILL">
-<INPUT TYPE="hidden" NAME="invoicing_list_POST" VALUE="">
-<INPUT TYPE="hidden" NAME="BILL_payinfo" VALUE="">
-<INPUT TYPE="hidden" NAME="BILL_month" VALUE="12">
-<INPUT TYPE="hidden" NAME="BILL_year" VALUE="2037">
-<INPUT TYPE="hidden" NAME="BILL_payname" VALUE="">
-<BR><BR><INPUT TYPE="submit" VALUE="Signup">
-ENDOUT
- } elsif ( $pkgpart2payby{$layer} eq 'CARD' ) {
- my $postal_checked = '';
- my @invoicing_list = split(', ', $invoicing_list );
- $postal_checked = 'CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
-
- $invoicing_list= join(', ', grep { $_ ne 'POST' } @invoicing_list );
-
- my $expselect = expselect("CARD", $paydate);
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected =
- $cgi->param('CARD_type') eq $types{$_} ? 'SELECTED' : '';
- $cardselect .=
- qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- $html .= <<ENDOUT;
-<INPUT TYPE="hidden" NAME="payby" VALUE="CARD">
-<BR><BR>Billing information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0>
-<INPUT TYPE="hidden" NAME="invoicing_list_POST" VALUE="">
-<TR>
- <TD ALIGN="right">Email statement to </TD>
- <TD><INPUT TYPE="text" NAME="invoicing_list" VALUE="$invoicing_list"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Credit card type</TH>
- <TD>$cardselect</TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Card number</TH>
- <TD><INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>*</font>Exp</TH>
- <TD>$expselect</TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Name on card</TH>
- <TD><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname"></TD>
-</TR>
-</TABLE>
-<font color="#ff0000">*</font> required fields
-<BR><BR><INPUT TYPE="submit" VALUE="Signup">
-ENDOUT
- } else {
- $html = <<ENDOUT;
-<BR>Please select a package.<BR>
-ENDOUT
-
- }
-
- $html;
-
- },
- );
-
- $widget->html;
-
-
- %>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/signup-billaddress.html b/fs_selfservice/FS-SelfService/cgi/signup-billaddress.html
deleted file mode 100755
index 3cf9d25..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup-billaddress.html
+++ /dev/null
@@ -1,307 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8" onUnload="myclose()">
-<script language="JavaScript"><!--
- var mywindow = -1;
- function myopen(filename,windowname,properties) {
- myclose();
- mywindow = window.open(filename,windowname,properties);
- }
- function myclose() {
- if ( mywindow != -1 )
- mywindow.close();
- mywindow = -1
- }
-//--></script>
-<FONT SIZE=7>ISP Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM NAME="OneTrueForm" ACTION="<%= $self_url %>" METHOD=POST onSubmit="document.OneTrueForm.signup.disabled=true">
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<INPUT TYPE="hidden" NAME="ref" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-Where did you hear about our service? <SELECT NAME="refnum">
-<%=
- $OUT .= '<OPTION VALUE="">' unless $refnum;
- foreach my $part_referral ( @{$init_data->{'part_referral'}} ) {
- $OUT .= '<OPTION VALUE="'. $part_referral->{'refnum'}. '"';
- $OUT .= ' SELECTED' if $part_referral->{'refnum'} eq $refnum;
- $OUT .= '>'. $part_referral->{'referral'};
- }
-%>
-</SELECT><BR><BR>
-Billing Address (where credit card statement is sent)
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Exact name on card<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>" onChange="changed(this)">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>" onChange="changed(this)"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($county_html, $state_html, $country_html) =
- regionselector( $county, $state, $country, '', 'changed(this)' );
-
- "$county_html $state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18 onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18 onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12 onChange="changed(this)"></TD>
-</TR>
-</TABLE>
-
-<SCRIPT>
-function changed(what) {
- what.form.same.checked = false;
-}
-function samechanged(what) {
- if ( what.checked ) {
-
- <%= foreach (qw(
- last first company address1 address2 city zip daytime night fax
- )) {
- $OUT .= "what.form.ship_$_.value = what.form.$_.value;\n";
- }
- %>
-
- what.form.ship_country.selectedIndex = what.form.country.selectedIndex;
- ship_country_changed(what.form.ship_country);
- what.form.ship_state.selectedIndex = what.form.state.selectedIndex;
- ship_state_changed(what.form.ship_state);
- what.form.ship_county.selectedIndex = what.form.county.selectedIndex;
- }
-}
-</SCRIPT>
-
-<BR><BR>
-Service Address
-(<INPUT TYPE="checkbox" NAME="same" VALUE="Y" onClick="samechanged(this)" <%= $same eq 'Y' ? 'CHECKED' : '' %>>same as billing address)<BR>
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_last" VALUE="<%= $ship_last %>" onChange="changed(this)">,
- <INPUT TYPE="text" NAME="ship_first" VALUE="<%= $ship_first %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_company" SIZE=70 VALUE="<%= $ship_company %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_address1" SIZE=70 VALUE="<%= $ship_address1 %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_address2" SIZE=70 VALUE="<%= $ship_address2 %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="ship_city" VALUE="<%= $ship_city %>" onChange="changed(this)"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($ship_county_html, $ship_state_html, $ship_country_html) =
- regionselector( $ship_county,
- $ship_state,
- $ship_country,
- 'ship_',
- 'changed(this)',
- );
-
- "$ship_county_html $ship_state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="ship_zip" SIZE=10 VALUE="<%= $ship_zip %>" onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $ship_country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_daytime" VALUE="<%= $ship_daytime %>" SIZE=18 onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_night" VALUE="<%= $ship_night %>" SIZE=18 onChange="changed(this)"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="ship_fax" VALUE="<%= $ship_fax %>" SIZE=12 onChange="changed(this)"></TD>
-</TR>
-</TABLE>
-
-<font color="#ff0000">*</font> required fields<BR>
-
-<BR>Billing information<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR><TD>
-
- <%=
- $OUT .= '<INPUT TYPE="checkbox" NAME="invoicing_list_POST" VALUE="POST"';
- my @invoicing_list = split(', ', $invoicing_list );
- $OUT .= ' CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
- $OUT .= '>';
- %>
-
- Postal mail invoice
-</TD></TR>
-<TR><TD>Email invoice <INPUT TYPE="text" NAME="invoicing_list" VALUE="<%= join(', ', grep { $_ ne 'POST' } split(', ', $invoicing_list ) ) %>">
-</TD></TR>
-<%= scalar(@payby) > 1 ? '<TR><TD>Billing type</TD></TR>' : '' %>
-</TABLE>
-<TABLE BGCOLOR="#c0c0c0" BORDER=1 WIDTH="100%">
-<TR>
-
- <%=
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected = $cgi->param('CARD_type') eq $types{$_} ? 'SELECTED' : '';
- $cardselect .= qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- my %payby = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD"), #. qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD"), #. qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", "12-2037"). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="Accounts Payable">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("COMP"),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $payby{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- my( $account, $aba ) = split('@', $payinfo);
- my %paybychecked = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD", $paydate), #. qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD", $paydate), #. qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="$payname">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="$payname">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="$payname">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="$payinfo" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", $paydate). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="$payname">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("COMP", $paydate),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="$payinfo" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $paybychecked{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="$paycvv" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- for (@payby) {
- if ( scalar(@payby) == 1) {
- $OUT .= '<TD VALIGN=TOP>'.
- qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$_">!.
- "$paybychecked{$_}</TD>";
- } else {
- $OUT .= qq!<TD VALIGN=TOP><INPUT TYPE="radio" NAME="payby" VALUE="$_"!;
- if ($payby eq $_) {
- $OUT .= qq! CHECKED> $paybychecked{$_}</TD>!;
- } else {
- $OUT .= qq!> $payby{$_}</TD>!;
- }
-
- }
- }
- %>
-
-</TR></TABLE><font color="#ff0000">*</font> required fields for each billing type
-<BR><BR>First package
-<INPUT TYPE="hidden" NAME="promo_code" VALUE="<%= $cgi->param('promo_code') %>">
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart">
-
- <%=
- $OUT .= '<OPTION VALUE="">(none)' unless scalar(@$packages) == 1;
- foreach my $package ( @{$packages} ) {
- $OUT .= '<OPTION VALUE="'. $package->{'pkgpart'}. '"';
- $OUT .= ' SELECTED'
- if ( $pkgpart && $package->{'pkgpart'} == $pkgpart )
- || scalar(@$packages) == 1;
- $OUT .= '>'. $package->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $password2 %>"></TD>
-</TR>
-<%=
- if ( $init_data->{'security_phrase'} ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( scalar(@$pops) ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector($popnum). '</TD></TR>';
- } else {
- $OUT .= popselector($popnum);
- }
-%>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" NAME="signup" VALUE="Signup">
-</FORM></BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/signup-freeoption.html b/fs_selfservice/FS-SelfService/cgi/signup-freeoption.html
deleted file mode 100755
index 40ad03c..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup-freeoption.html
+++ /dev/null
@@ -1,262 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8" onUnload="myclose()">
-<script language="JavaScript"><!--
- var mywindow = -1;
- function myopen(filename,windowname,properties) {
- myclose();
- mywindow = window.open(filename,windowname,properties);
- }
- function myclose() {
- if ( mywindow != -1 )
- mywindow.close();
- mywindow = -1
- }
-//--></script>
-<FONT SIZE=7>ISP Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM NAME="OneTrueForm" ACTION="<%= $self_url %>" METHOD=POST onSubmit="document.OneTrueForm.signup.disabled=true">
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<INPUT TYPE="hidden" NAME="ref" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-Where did you hear about our service? <SELECT NAME="refnum">
-<%=
- $OUT .= '<OPTION VALUE="">' unless $refnum;
- foreach my $part_referral ( @{$init_data->{'part_referral'}} ) {
- $OUT .= '<OPTION VALUE="'. $part_referral->{'refnum'}. '"';
- $OUT .= ' SELECTED' if $part_referral->{'refnum'} eq $refnum;
- $OUT .= '>'. $part_referral->{'referral'};
- }
-%>
-</SELECT><BR><BR>
-Contact Information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($county_html, $state_html, $country_html) =
- regionselector( $county, $state, $country );
-
- "$county_html $state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12></TD>
-</TR>
-</TABLE><font color="#ff0000">*</font> required fields<BR>
-<BR>
-<%=
- my $first_payby = $packages->[0]{'payby'}[0];
- unless ( grep { scalar( @{$_->{'payby'}} ) > 1
- || $_->{'payby'}->[0] ne $first_payby
- } @$packages
- ) {
- @payby = ( $first_payby );
- }
-
- unless ( scalar(@payby) == 1 && $payby[0] eq 'BILL' ) {
-
- $OUT .= ' Billing information
- <TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
- <TR><TD>
- <INPUT TYPE="checkbox" NAME="invoicing_list_POST" VALUE="POST"';
-
- my @invoicing_list = split(', ', $invoicing_list );
-
- $OUT .= ' CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
-
- $OUT .= '> Postal mail invoice
- </TD></TR>
- <TR><TD>Email invoice
- <INPUT TYPE="text" NAME="invoicing_list" VALUE="'
- .join(', ', grep { $_ ne 'POST' } split(', ', $invoicing_list ) ).
- '"></TD></TR>';
-
- $OUT .= '<TR><TD>Billing type</TD></TR>'
- if scalar(@payby) > 1;
-
- $OUT .= '</TABLE>';
-
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="invoicing_list" VALUE="">
- <INPUT TYPE="hidden" NAME="invoicing_list_POST" VALUE="">';
- }
-
-%>
-
-<TABLE BGCOLOR="#c0c0c0" BORDER=1 WIDTH="100%">
-<TR>
-
- <%=
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected = $cgi->param('CARD_type') eq $types{$_} ? 'SELECTED' : '';
- $cardselect .= qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- my %payby = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => <<'END',
-<INPUT TYPE="hidden" NAME="BILL_payinfo" VALUE="">
-<INPUT TYPE="hidden" NAME="BILL_month" VALUE="12">
-<INPUT TYPE="hidden" NAME="BILL_year" VALUE="2037">
-<INPUT TYPE="hidden" NAME="BILL_payname" VALUE="">
-END
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("COMP"),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $payby{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- my( $account, $aba ) = split('@', $payinfo);
- my %paybychecked = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="$payname">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="$payname">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="$payname">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="$payinfo" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => <<'END',
-<INPUT TYPE="hidden" NAME="BILL_payinfo" VALUE="">
-<INPUT TYPE="hidden" NAME="BILL_month" VALUE="12">
-<INPUT TYPE="hidden" NAME="BILL_year" VALUE="2037">
-<INPUT TYPE="hidden" NAME="BILL_payname" VALUE="">
-END
-
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("COMP", $paydate),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="$payinfo" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $paybychecked{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="$paycvv" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- for (@payby) {
- if ( scalar(@payby) == 1) {
- $OUT .= '<TD VALIGN=TOP>'.
- qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$_">!.
- "$paybychecked{$_}</TD>";
- } else {
- $OUT .= qq!<TD VALIGN=TOP><INPUT TYPE="radio" NAME="payby" VALUE="$_"!;
- if ($payby eq $_) {
- $OUT .= qq! CHECKED> $paybychecked{$_}</TD>!;
- } else {
- $OUT .= qq!> $payby{$_}</TD>!;
- }
-
- }
- }
- %>
-
-</TR></TABLE>
-<%= unless ( scalar(@payby) == 1 && $payby[0] eq 'BILL' ) {
- $OUT .= '<font color="#ff0000">*</font> required fields for each billing type';
- }
- '';
-%>
-<BR><BR>First package
-<INPUT TYPE="hidden" NAME="promo_code" VALUE="<%= $cgi->param('promo_code') %>"><TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart">
-
- <%=
- $OUT .= '<OPTION VALUE="">(none)' unless scalar(@$packages) == 1;
- foreach my $package ( @{$packages} ) {
- $OUT .= '<OPTION VALUE="'. $package->{'pkgpart'}. '"';
- $OUT .= ' SELECTED'
- if ( $pkgpart && $package->{'pkgpart'} == $pkgpart )
- || scalar(@$packages) == 1;
- $OUT .= '>'. $package->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $password2 %>"></TD>
-</TR>
-<%=
- if ( $init_data->{'security_phrase'} ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( scalar(@$pops) ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector($popnum). '</TD></TR>';
- } else {
- $OUT .= popselector($popnum);
- }
-%>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" NAME="signup" VALUE="Signup">
-</FORM></BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/signup-snarf.html b/fs_selfservice/FS-SelfService/cgi/signup-snarf.html
deleted file mode 100755
index d167efb..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup-snarf.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8" onUnload="myclose()">
-<script language="JavaScript"><!--
- var mywindow = -1;
- function myopen(filename,windowname,properties) {
- myclose();
- mywindow = window.open(filename,windowname,properties);
- }
- function myclose() {
- if ( mywindow != -1 )
- mywindow.close();
- mywindow = -1
- }
-//--></script>
-<FONT SIZE=7>ISP Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM ACTION="<%= $self_url %>" METHOD=POST>
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<INPUT TYPE="hidden" NAME="ref" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-Contact Information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($county_html, $state_html, $country_html) =
- regionselector( $county, $state, $country );
-
- "$county_html $state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12></TD>
-</TR>
-</TABLE><font color="#ff0000">*</font> required fields<BR>
-<BR>Billing information<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR><TD>
-
- <%=
- $OUT .= '<INPUT TYPE="checkbox" NAME="invoicing_list_POST" VALUE="POST"';
- my @invoicing_list = split(', ', $invoicing_list );
- $OUT .= ' CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
- $OUT .= '>';
- %>
-
- Postal mail invoice
-</TD></TR>
-<TR><TD>Email invoice <INPUT TYPE="text" NAME="invoicing_list" VALUE="<%= join(', ', grep { $_ ne 'POST' } split(', ', $invoicing_list ) ) %>">
-</TD></TR>
-<%= scalar(@payby) > 1 ? '<TR><TD>Billing type</TD></TR>' : '' %>
-</TABLE>
-<TABLE BGCOLOR="#c0c0c0" BORDER=1 WIDTH="100%">
-<TR>
-
- <%=
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected = $cgi->param('CARD_type') eq $types{$_} ? 'SELECTED' : '';
- $cardselect .= qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- my %payby = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", "12-2037"). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="Accounts Payable">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("COMP"),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $payby{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- my( $account, $aba ) = split('@', $payinfo);
- my %paybychecked = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="$payname">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="$payname">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="$payname">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="$payinfo" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", $paydate). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="$payname">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("COMP", $paydate),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="$payinfo" MAXLENGTH=80>!,
- );
-
- if ( $init_data->{'cvv_enabled'} ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $paybychecked{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="$paycvv" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- for (@payby) {
- if ( scalar(@payby) == 1) {
- $OUT .= '<TD VALIGN=TOP>'.
- qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$_">!.
- "$paybychecked{$_}</TD>";
- } else {
- $OUT .= qq!<TD VALIGN=TOP><INPUT TYPE="radio" NAME="payby" VALUE="$_"!;
- if ($payby eq $_) {
- $OUT .= qq! CHECKED> $paybychecked{$_}</TD>!;
- } else {
- $OUT .= qq!> $payby{$_}</TD>!;
- }
-
- }
- }
- %>
-
-</TR></TABLE><font color="#ff0000">*</font> required fields for each billing type
-<BR><BR>First package
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart"><OPTION VALUE="">(none)
-
- <%=
- foreach my $package ( @{$packages} ) {
- $OUT .= '<OPTION VALUE="'. $package->{'pkgpart'}. '"';
- $OUT .= ' SELECTED' if $pkgpart && $package->{'pkgpart'} == $pkgpart;
- $OUT .= '>'. $package->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $password2 %>"></TD>
-</TR>
-<%=
- if ( $init_data->{'security_phrase'} ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( scalar(@$pops) ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector($popnum). '</TD></TR>';
- } else {
- $OUT .= popselector($popnum);
- }
-%>
-</TABLE>
-<BR><BR>Enter up to ten external accounts from which to retrieve email
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="left">Mail server</TH>
- <TH ALIGN="left">Username</TH>
- <TH ALIGN="left">Password</TH>
-</TR>
-<%=
- for my $num ( 1..10 ) {
- no strict 'vars';
- $OUT .= qq!<TR><TD><INPUT TYPE="text" NAME="snarf_machine$num" VALUE="${"snarf_machine$num"}"></TD>!.
- qq!<INPUT TYPE="hidden" NAME="snarf_protocol$num" VALUE="pop3">!.
- qq!<TD><INPUT TYPE="text" NAME="snarf_username$num" VALUE="${"snarf_username$num"}"></TD>!.
- qq!<TD><INPUT TYPE="password" NAME="snarf_password$num" VALUE="${"snarf_password$num"}"></TD>!.
- qq!</TR>!;
- }
-%>
-</TABLE>
-
-<BR><BR><INPUT TYPE="submit" VALUE="Signup">
-</FORM></BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi
deleted file mode 100755
index d2ad0d6..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup.cgi
+++ /dev/null
@@ -1,333 +0,0 @@
-#!/usr/bin/perl -T
-#!/usr/bin/perl -Tw
-#
-# $Id: signup.cgi,v 1.2 2005-03-12 14:35:12 ivan Exp $
-
-use strict;
-use vars qw( @payby $cgi $init_data
- $self_url $error $agentnum
-
- $ieak_file $ieak_template
- $signup_html $signup_template
- $success_html $success_template
- $decline_html $decline_template
- );
-
-use subs qw( print_form print_okay print_decline
- success_default decline_default
- );
-use CGI;
-#use CGI::Carp qw(fatalsToBrowser);
-use Text::Template;
-use Business::CreditCard;
-use HTTP::BrowserDetect;
-use FS::SelfService qw( signup_info new_customer );
-
-#acceptable payment methods
-#
-#@payby = qw( CARD BILL COMP );
-#@payby = qw( CARD BILL );
-#@payby = qw( CARD );
-@payby = qw( CARD PREPAY );
-
-$ieak_file = '/usr/local/freeside/ieak.template';
-$signup_html = -e 'signup.html'
- ? 'signup.html'
- : '/usr/local/freeside/signup.html';
-$success_html = -e 'success.html'
- ? 'success.html'
- : '/usr/local/freeside/success.html';
-$decline_html = -e 'decline.html'
- ? 'decline.html'
- : '/usr/local/freeside/decline.html';
-
-
-if ( -e $ieak_file ) {
- my $ieak_txt = Text::Template::_load_text($ieak_file)
- or die $Text::Template::ERROR;
- $ieak_txt =~ /^(.*)$/s; #untaint the template source - it's trusted
- $ieak_txt = $1;
- $ieak_txt =~ s/\r//g; # don't double \r on old templates
- $ieak_txt =~ s/\n/\r\n/g;
- $ieak_template = new Text::Template ( TYPE => 'STRING', SOURCE => $ieak_txt )
- or die $Text::Template::ERROR;
-} else {
- $ieak_template = '';
-}
-
-$agentnum = '';
-if ( -e $signup_html ) {
- my $signup_txt = Text::Template::_load_text($signup_html)
- or die $Text::Template::ERROR;
- $signup_txt =~ /^(.*)$/s; #untaint the template source - it's trusted
- $signup_txt = $1;
- $signup_template = new Text::Template ( TYPE => 'STRING',
- SOURCE => $signup_txt,
- DELIMITERS => [ '<%=', '%>' ]
- )
- or die $Text::Template::ERROR;
- if ( $signup_txt =~
- /<\s*INPUT TYPE="?hidden"?\s+NAME="?agentnum"?\s+VALUE="?(\d+)"?\s*>/si
- ) {
- $agentnum = $1;
- }
-} else {
- #too much maintenance hassle to keep in this file
- die "can't find ./signup.html or /usr/local/freeside/signup.html";
- #$signup_template = new Text::Template ( TYPE => 'STRING',
- # SOURCE => &signup_default,
- # DELIMITERS => [ '<%=', '%>' ]
- # )
- # or die $Text::Template::ERROR;
-}
-
-if ( -e $success_html ) {
- my $success_txt = Text::Template::_load_text($success_html)
- or die $Text::Template::ERROR;
- $success_txt =~ /^(.*)$/s; #untaint the template source - it's trusted
- $success_txt = $1;
- $success_template = new Text::Template ( TYPE => 'STRING',
- SOURCE => $success_txt,
- DELIMITERS => [ '<%=', '%>' ],
- )
- or die $Text::Template::ERROR;
-} else {
- $success_template = new Text::Template ( TYPE => 'STRING',
- SOURCE => &success_default,
- DELIMITERS => [ '<%=', '%>' ],
- )
- or die $Text::Template::ERROR;
-}
-
-if ( -e $decline_html ) {
- my $decline_txt = Text::Template::_load_text($decline_html)
- or die $Text::Template::ERROR;
- $decline_txt =~ /^(.*)$/s; #untaint the template source - it's trusted
- $decline_txt = $1;
- $decline_template = new Text::Template ( TYPE => 'STRING',
- SOURCE => $decline_txt,
- DELIMITERS => [ '<%=', '%>' ],
- )
- or die $Text::Template::ERROR;
-} else {
- $decline_template = new Text::Template ( TYPE => 'STRING',
- SOURCE => &decline_default,
- DELIMITERS => [ '<%=', '%>' ],
- )
- or die $Text::Template::ERROR;
-}
-
-$cgi = new CGI;
-
-$init_data = signup_info( 'agentnum' => $agentnum,
- 'promo_code' => scalar($cgi->param('promo_code')),
- 'reg_code' => uc(scalar($cgi->param('reg_code'))),
- );
-
-if ( ( defined($cgi->param('magic')) && $cgi->param('magic') eq 'process' )
- || ( defined($cgi->param('action')) && $cgi->param('action') eq 'process_signup' )
- ) {
-
- $error = '';
-
- $cgi->param('agentnum', $agentnum) if $agentnum;
- $cgi->param('reg_code', uc(scalar($cgi->param('reg_code'))) );
-
- #false laziness w/agent.cgi, identical except for agentnum
- my $payby = $cgi->param('payby');
- if ( $payby eq 'CHEK' || $payby eq 'DCHK' ) {
- #$payinfo = join('@', map { $cgi->param( $payby. "_payinfo$_" ) } (1,2) );
- $cgi->param('payinfo' => $cgi->param($payby. '_payinfo1'). '@'.
- $cgi->param($payby. '_payinfo2')
- );
- } else {
- $cgi->param('payinfo' => $cgi->param( $payby. '_payinfo' ) );
- }
- $cgi->param('paydate' => $cgi->param( $payby. '_month' ). '-'.
- $cgi->param( $payby. '_year' )
- );
- $cgi->param('payname' => $cgi->param( $payby. '_payname' ) );
- $cgi->param('paycvv' => defined $cgi->param( $payby. '_paycvv' )
- ? $cgi->param( $payby. '_paycvv' )
- : ''
- );
-
- if ( $cgi->param('invoicing_list') ) {
- $cgi->param('invoicing_list' => $cgi->param('invoicing_list'). ', POST')
- if $cgi->param('invoicing_list_POST');
- } else {
- $cgi->param('invoicing_list' => 'POST' );
- }
-
- if ( $cgi->param('_password') ne $cgi->param('_password2') ) {
- $error = $init_data->{msgcat}{passwords_dont_match}; #msgcat
- $cgi->param('_password', '');
- $cgi->param('_password2', '');
- }
-
- if ( $payby =~ /^(CARD|DCRD)$/ && $cgi->param('CARD_type') ) {
- my $payinfo = $cgi->param('payinfo');
- $payinfo =~ s/\D//g;
-
- $payinfo =~ /^(\d{13,16})$/
- or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- $payinfo = $1;
- validate($payinfo)
- or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
- cardtype($payinfo) eq $cgi->param('CARD_type')
- or $error ||= $init_data->{msgcat}{not_a}. $cgi->param('CARD_type');
- }
-
- unless ( $error ) {
- my $rv = new_customer( {
- map { $_ => scalar($cgi->param($_)) }
- qw( last first ss company
- address1 address2 city county state zip country
- daytime night fax
-
- ship_last ship_first ship_company
- ship_address1 ship_address2 ship_city ship_county ship_state
- ship_zip ship_country
- ship_daytime ship_night ship_fax
-
- payby payinfo paycvv paydate payname invoicing_list
- referral_custnum promo_code reg_code
- pkgpart username sec_phrase _password popnum refnum
- agentnum
- ),
- grep { /^snarf_/ } $cgi->param
- } );
- $error = $rv->{'error'};
- }
- #eslaf
-
- if ( $error eq '_decline' ) {
- print_decline();
- } elsif ( $error ) {
- #fudge the snarf info
- no strict 'refs';
- ${$_} = $cgi->param($_) foreach grep { /^snarf_/ } $cgi->param;
- print_form();
- } else {
- print_okay(
- 'pkgpart' => scalar($cgi->param('pkgpart')),
- );
- }
-
-} else {
- $error = '';
- print_form;
-}
-
-sub print_form {
-
- $error = "Error: $error" if $error;
-
- my $r = {
- $cgi->Vars,
- %{$init_data},
- 'error' => $error,
- };
-
- $r->{referral_custnum} = $r->{'ref'};
- #$cgi->delete('ref');
- #$cgi->delete('init_popstate');
- $r->{self_url} = $cgi->self_url;
-
- print $cgi->header( '-expires' => 'now' ),
- $signup_template->fill_in( PACKAGE => 'FS::SelfService::_signupcgi',
- HASH => $r
- );
-}
-
-sub print_decline {
- print $cgi->header( '-expires' => 'now' ),
- $decline_template->fill_in();
-}
-
-sub print_okay {
- my %param = @_;
- my $user_agent = new HTTP::BrowserDetect $ENV{HTTP_USER_AGENT};
-
- $cgi->param('username') =~ /^(.+)$/
- or die "fatal: invalid username got past FS::SelfService::new_customer";
- my $username = $1;
- $cgi->param('_password') =~ /^(.+)$/
- or die "fatal: invalid password got past FS::SelfService::new_customer";
- my $password = $1;
- ( $cgi->param('first'). ' '. $cgi->param('last') ) =~ /^(.*)$/
- or die "fatal: invalid email_name got past FS::SelfService::new_customer";
- my $email_name = $1; #global for template
-
- #my %pop = ();
- my %popnum2pop = ();
- foreach ( @{ $init_data->{'svc_acct_pop'} } ) {
- #push @{ $pop{ $_->{state} }->{ $_->{ac} } }, $_;
- $popnum2pop{$_->{popnum}} = $_;
- }
-
- my( $ac, $exch, $loc);
- my $pop = $popnum2pop{$cgi->param('popnum')};
- #or die "fatal: invalid popnum got past FS::SelfService::new_customer";
- if ( $pop ) {
- ( $ac, $exch, $loc ) = ( $pop->{'ac'}, $pop->{'exch'}, $pop->{'loc'} );
- } else {
- ( $ac, $exch, $loc ) = ( '', '', ''); #presumably you're not using them.
- }
-
- #global for template
- my $pkg = ( grep { $_->{'pkgpart'} eq $param{'pkgpart'} }
- @{ $init_data->{'part_pkg'} }
- )[0]->{'pkg'};
-
- if ( $ieak_template && $user_agent->windows && $user_agent->ie ) {
- #send an IEAK config
- print $cgi->header('application/x-Internet-signup'),
- $ieak_template->fill_in();
- } else { #send a simple confirmation
- print $cgi->header( '-expires' => 'now' ),
- $success_template->fill_in( HASH => {
- username => $username,
- password => $password,
- _password => $password,
- email_name => $email_name,
- ac => $ac,
- exch => $exch,
- loc => $loc,
- pkg => $pkg,
- });
- }
-}
-
-sub success_default { #html to use if you don't specify a success file
- <<'END';
-<HTML><HEAD><TITLE>Signup successful</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>Signup successful</FONT><BR><BR>
-Thanks for signing up!
-<BR><BR>
-Signup information for <%= $email_name %>:
-<BR><BR>
-Username: <%= $username %><BR>
-Password: <%= $password %><BR>
-Access number: (<%= $ac %>) / <%= $exch %> - <%= $local %><BR>
-Package: <%= $pkg %><BR>
-</BODY></HTML>
-END
-}
-
-sub decline_default { #html to use if there is a decline
- <<'END';
-<HTML><HEAD><TITLE>Processing error</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>Processing error</FONT><BR><BR>
-There has been an error processing your account. Please contact customer
-support.
-</BODY></HTML>
-END
-}
-
-# subs for the templates...
-
-package FS::SelfService::_signupcgi;
-use HTML::Entities;
-use FS::SelfService qw(regionselector expselect popselector);
-
diff --git a/fs_selfservice/FS-SelfService/cgi/signup.html b/fs_selfservice/FS-SelfService/cgi/signup.html
deleted file mode 100755
index 2ab07b3..0000000
--- a/fs_selfservice/FS-SelfService/cgi/signup.html
+++ /dev/null
@@ -1,236 +0,0 @@
-<HTML><HEAD><TITLE><%= $agent || 'ISP' %> Signup form</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8" onUnload="myclose()">
-<script language="JavaScript"><!--
- var mywindow = -1;
- function myopen(filename,windowname,properties) {
- myclose();
- mywindow = window.open(filename,windowname,properties);
- }
- function myclose() {
- if ( mywindow != -1 )
- mywindow.close();
- mywindow = -1
- }
-//--></script>
-<FONT SIZE=7><%= $agent || 'ISP' %> Signup form</FONT><BR><BR>
-<FONT SIZE="+1" COLOR="#ff0000"><%= $error %></FONT>
-<FORM NAME="OneTrueForm" ACTION="<%= $self_url %>" METHOD=POST onSubmit="document.OneTrueForm.signup.disabled=true">
-<INPUT TYPE="hidden" NAME="session" VALUE="<%= $session_id %>">
-<INPUT TYPE="hidden" NAME="action" VALUE="process_signup">
-<INPUT TYPE="hidden" NAME="referral_custnum" VALUE="<%= $referral_custnum %>">
-<INPUT TYPE="hidden" NAME="ss" VALUE="">
-Where did you hear about our service? <SELECT NAME="refnum">
-<%=
- $OUT .= '<OPTION VALUE="">' unless $refnum;
- foreach my $part_referral ( @part_referral ) {
- $OUT .= '<OPTION VALUE="'. $part_referral->{'refnum'}. '"';
- $OUT .= ' SELECTED' if $part_referral->{'refnum'} eq $refnum;
- $OUT .= '>'. $part_referral->{'referral'};
- }
-%>
-</SELECT><BR><BR>
-Contact Information
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Contact name<BR>(last, first)</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="last" VALUE="<%= $last %>">,
- <INPUT TYPE="text" NAME="first" VALUE="<%= $first %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Company</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="company" SIZE=70 VALUE="<%= $company %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Address</TH>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address1" SIZE=70 VALUE="<%= $address1 %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">&nbsp;</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="address2" SIZE=70 VALUE="<%= $address2 %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>City</TH>
- <TD><INPUT TYPE="text" NAME="city" VALUE="<%= $city %>"></TD>
- <TH ALIGN="right"><font color="#ff0000">*</font>State/Country</TH>
- <TD>
- <%=
- ($county_html, $state_html, $country_html) =
- regionselector( {
- selected_county => $county,
- selected_state => $state,
- selected_country => $country,
- default_state => $statedefault,
- default_country => $countrydefault,
- locales => \@cust_main_county,
- } );
-
- "$county_html $state_html";
- %>
- </TD>
- <TH><font color="#ff0000">*</font>Zip</TH>
- <TD><INPUT TYPE="text" NAME="zip" SIZE=10 VALUE="<%= $zip %>"></TD>
-</TR>
-<TR>
- <TH ALIGN="right"><font color="#ff0000">*</font>Country</TH>
- <TD><%= $country_html %></TD>
-<TR>
- <TD ALIGN="right">Day Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="daytime" VALUE="<%= $daytime %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Night Phone</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="night" VALUE="<%= $night %>" SIZE=18></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Fax</TD>
- <TD COLSPAN=5><INPUT TYPE="text" NAME="fax" VALUE="<%= $fax %>" SIZE=12></TD>
-</TR>
-</TABLE><font color="#ff0000">*</font> required fields<BR>
-<BR>Billing information<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR><TD>
-
- <%=
- $OUT .= '<INPUT TYPE="checkbox" NAME="invoicing_list_POST" VALUE="POST"';
- my @invoicing_list = split(', ', $invoicing_list );
- $OUT .= ' CHECKED'
- if ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list;
- $OUT .= '>';
- %>
-
- Postal mail invoice
-</TD></TR>
-<TR><TD>Email invoice <INPUT TYPE="text" NAME="invoicing_list" VALUE="<%= join(', ', grep { $_ ne 'POST' } split(', ', $invoicing_list ) ) %>">
-</TD></TR>
-<%= scalar(@payby) > 1 ? '<TR><TD>Billing type</TD></TR>' : '' %>
-</TABLE>
-<TABLE BGCOLOR="#c0c0c0" BORDER=1 WIDTH="100%">
-<TR>
-
- <%=
-
- my $cardselect = '<SELECT NAME="CARD_type"><OPTION></OPTION>';
- my %types = (
- 'VISA' => 'VISA card',
- 'MasterCard' => 'MasterCard',
- 'Discover' => 'Discover card',
- 'American Express' => 'American Express card',
- );
- foreach ( keys %types ) {
- $selected = $CARD_type eq $types{$_} ? 'SELECTED' : '';
- $cardselect .= qq!<OPTION $selected VALUE="$types{$_}">$_</OPTION>!;
- }
- $cardselect .= '</SELECT>';
-
- my %payby = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD"). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", "12-2037"). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="Accounts Payable">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE=""><BR><font color="#ff0000">*</font>Exp !. expselect("COMP"),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="" MAXLENGTH=80>!,
- );
-
- if ( $cvv_enabled ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $payby{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- my( $account, $aba ) = split('@', $payinfo);
- my %paybychecked = (
- 'CARD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="CARD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("CARD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="CARD_payname" VALUE="$payname">!,
- 'DCRD' => qq!Credit card<BR><font color="#ff0000">*</font>$cardselect<INPUT TYPE="text" NAME="DCRD_payinfo" VALUE="$payinfo" MAXLENGTH=19><BR><font color="#ff0000">*</font>Exp !. expselect("DCRD", $paydate). qq!<BR><font color="#ff0000">*</font>Name on card<BR><INPUT TYPE="text" NAME="DCRD_payname" VALUE="$payname">!,
- 'CHEK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="CHEK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="CHEK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="CHEK_month" VALUE="12"><INPUT TYPE="hidden" NAME="CHEK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="CHEK_payname" VALUE="$payname">!,
- 'DCHK' => qq!Electronic check<BR>${r}Account number <INPUT TYPE="text" NAME="DCHK_payinfo1" VALUE="$account" MAXLENGTH=10><BR>${r}ABA/Routing code <INPUT TYPE="text" NAME="DCHK_payinfo2" VALUE="$aba" SIZE=10 MAXLENGTH=9><INPUT TYPE="hidden" NAME="DCHK_month" VALUE="12"><INPUT TYPE="hidden" NAME="DCHK_year" VALUE="2037"><BR>${r}Bank name <INPUT TYPE="text" NAME="DCHK_payname" VALUE="$payname">!,
- 'LECB' => qq!Phone bill billing<BR>${r}Phone number <INPUT TYPE="text" BANE="LECB_payinfo" VALUE="$payinfo" MAXLENGTH=15 SIZE=16><INPUT TYPE="hidden" NAME="LECB_month" VALUE="12"><INPUT TYPE="hidden" NAME="LECB_year" VALUE="2037"><INPUT TYPE="hidden" NAME="LECB_payname" VALUE="">!,
- 'BILL' => qq!Billing<BR>P.O. <INPUT TYPE="text" NAME="BILL_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("BILL", $paydate). qq!<BR><font color="#ff0000">*</font>Attention<BR><INPUT TYPE="text" NAME="BILL_payname" VALUE="$payname">!,
- 'COMP' => qq!Complimentary<BR><font color="#ff0000">*</font>Approved by<INPUT TYPE="text" NAME="COMP_payinfo" VALUE="$payinfo"><BR><font color="#ff0000">*</font>Exp !. expselect("COMP", $paydate),
- 'PREPAY' => qq!Prepaid card<BR><font color="#ff0000">*</font><INPUT TYPE="text" NAME="PREPAY_payinfo" VALUE="$payinfo" MAXLENGTH=80>!,
- );
-
- if ( $cvv_enabled ) {
- foreach my $payby ( grep { exists $payby{$_} } qw(CARD DCRD) ) { #1.4/1.5
- $paybychecked{$payby} .= qq!<BR>CVV2&nbsp;(<A HREF="javascript:myopen('cvv2.html','cvv2','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=480,height=288')">help</A>)&nbsp;<INPUT TYPE="text" NAME=${payby}_paycvv VALUE="$paycvv" SIZE=4 MAXLENGTH=4>!;
- }
- }
-
- for (@payby) {
- if ( scalar(@payby) == 1) {
- $OUT .= '<TD VALIGN=TOP>'.
- qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$_">!.
- "$paybychecked{$_}</TD>";
- } else {
- $OUT .= qq!<TD VALIGN=TOP><INPUT TYPE="radio" NAME="payby" VALUE="$_"!;
- if ($payby eq $_) {
- $OUT .= qq! CHECKED> $paybychecked{$_}</TD>!;
- } else {
- $OUT .= qq!> $payby{$_}</TD>!;
- }
-
- }
- }
- %>
-
-</TR></TABLE><font color="#ff0000">*</font> required fields for each billing type
-<BR><BR>First package
-<INPUT TYPE="hidden" NAME="promo_code" VALUE="<%= $promo_code %>">
-<INPUT TYPE="hidden" NAME="reg_code" VALUE="<%= $reg_code %>">
-<TABLE BGCOLOR="#c0c0c0" BORDER=0 CELLSPACING=0 WIDTH="100%">
-<TR>
- <TD COLSPAN=2><SELECT NAME="pkgpart">
-
- <%=
- $OUT .= '<OPTION VALUE="">(none)' unless scalar(@part_pkg ) ==1;
- foreach my $part_pkg ( @part_pkg ) {
- $OUT .= '<OPTION VALUE="'. $part_pkg->{'pkgpart'}. '"';
- $OUT .= ' SELECTED' if $pkgpart && $part_pkg->{'pkgpart'} == $pkgpart;
- $OUT .= '>'. $part_pkg->{'pkg'};
- }
- %>
-
- </SELECT></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $_password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $_password2 %>"></TD>
-</TR>
-<%=
- if ( $security_phrase ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( @svc_acct_pop ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector( 'popnum' => $popnum,
- 'pops' => \@svc_acct_pop,
- 'init_popstate' => $init_popstate,
- 'popac' => $popac,
- 'acstate' => $acstate,
- ).
- '</TD></TR>';
- } else {
- $OUT .= popselector(popnum=>$popnum, pops=>\@svc_acct_pop);
- }
-%>
-</TABLE>
-<BR><BR><INPUT TYPE="submit" NAME="signup" VALUE="Signup">
-</FORM></BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/stateselect.html b/fs_selfservice/FS-SelfService/cgi/stateselect.html
deleted file mode 100644
index ba55bff..0000000
--- a/fs_selfservice/FS-SelfService/cgi/stateselect.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<HTML><HEAD><TITLE>ISP Signup</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>ISP Signup - state selection</FONT><BR><BR>
-<SCRIPT>
-function gotoURL(object) {
- window.location.href = object.options[object.selectedIndex].value;
-}
-</SCRIPT>
-<FORM>
-Select your state from the map or dropdown:
-<MAP NAME=usmap>
-<area shape=poly COORDS="264,157,286,155,292,193,276,195,270,199,264,157" href="signup.cgi?init_popstate=AL">
-<area shape=poly COORDS="28,197,46,185,72,199,72,241,88,243,102,261,92,263,70,241,42,243,28,257,12,259,34,243,20,233,16,223,34,215,22,207,30,205,28,197" href="../states/Alaska.html">
-<area shape=poly COORDS="70,137,106,137,100,189,84,187,60,173,70,133,70,137,70,137" href="signup.cgi?init_popstate=AZ">
-<area shape=poly COORDS="250,153,242,179,220,177,218,171,216,145,252,143,250,155,250,153" href="signup.cgi?init_popstate=AR">
-<area shape=poly COORDS="10,79,38,81,30,109,62,151,56,173,40,169,20,145,4,101,10,75,26,79,10,79,10,79" href="signup.cgi?init_popstate=CA">
-<area shape=poly COORDS="108,103,158,107,154,141,104,137,110,101,128,103,108,103" href="signup.cgi?init_popstate=CO">
-<area shape=poly COORDS="374,107,405,105,405,123,372,125,374,107" href="signup.cgi?init_popstate=CT">
-<area shape=poly COORDS="370,143,402,145,405,157,362,157,370,143" href="signup.cgi?init_popstate=DE">
-<area shape=poly COORDS="275,193,325,187,327,197,341,219,341,233,335,237,317,215,315,205,307,195,293,203,275,193" href="signup.cgi?init_popstate=FL">
-<area shape=poly COORDS="297,153,283,155,297,191,321,189,321,169,297,153" href="signup.cgi?init_popstate=GA">
-<area shape=poly COORDS="98,233,142,263,156,251,162,239,164,229,136,231,94,221,100,235,98,233" href="signup.cgi?init_popstate=HI">
-<area shape=poly COORDS="68,21,76,21,72,35,80,47,80,55,84,65,100,69,94,93,56,83,66,51,70,19,68,21" href="signup.cgi?init_popstate=ID">
-<area shape=poly COORDS="242,91,258,89,266,123,256,139,234,109,248,87,242,91" href="signup.cgi?init_popstate=IL">
-<area shape=poly COORDS="261,95,265,123,265,131,285,117,277,91,261,95" href="signup.cgi?init_popstate=IN">
-<area shape=poly COORDS="198,87,206,111,232,109,240,99,240,91,232,79,198,87" href="signup.cgi?init_popstate=IA">
-<area shape=poly COORDS="158,111,158,135,214,139,214,127,208,113,158,111" href="signup.cgi?init_popstate=KS">
-<area shape=poly COORDS="263,133,275,129,289,115,303,121,307,129,299,135,251,141,269,131,263,133" href="signup.cgi?init_popstate=KY">
-<area shape=poly COORDS="222,179,246,179,244,197,258,193,262,213,226,209,224,177,222,179" href="signup.cgi?init_popstate=LA">
-<area shape=poly COORDS="363,37,373,59,373,47,387,31,377,9,365,15,363,37" href="signup.cgi?init_popstate=ME">
-<area shape=poly COORDS="376,159,405,159,405,175,374,177,376,159" href="signup.cgi?init_popstate=MD">
-<area shape=poly COORDS="378,74,380,88,404,88,404,72,378,74" href="signup.cgi?init_popstate=MA">
-<area shape=poly COORDS="265,73,269,83,265,93,293,91,295,71,281,53,271,53,267,69,265,73,265,73" href="signup.cgi?init_popstate=MI">
-<area shape=poly COORDS="194,31,222,33,242,35,224,51,222,63,222,73,234,79,196,85,194,31" href="signup.cgi?init_popstate=MN">
-<area shape=poly COORDS="265,159,271,199,257,201,259,195,241,197,251,155,265,159" href="signup.cgi?init_popstate=MS">
-<area shape=poly COORDS="206,113,234,111,256,139,248,147,214,145,208,111,206,113" href="signup.cgi?init_popstate=MO">
-<area shape=poly COORDS="78,23,148,31,146,67,84,63,78,35,80,19,78,23" href="signup.cgi?init_popstate=MT">
-<area shape=poly COORDS="146,85,148,103,158,105,164,109,206,109,198,85,144,87,146,85" href="signup.cgi?init_popstate=NE">
-<area shape=poly COORDS="40,83,76,87,64,151,32,109,40,83,40,83" href="signup.cgi?init_popstate=NV">
-<area shape=poly COORDS="298,11,330,9,330,25,298,25,298,11" href="signup.cgi?init_popstate=NH">
-<area shape=poly COORDS="372,127,404,125,405,141,368,139,376,125,372,127" href="signup.cgi?init_popstate=NJ">
-<area shape=poly COORDS="106,137,100,191,122,187,148,187,150,139,106,137,106,137" href="signup.cgi?init_popstate=NM">
-<area shape=poly COORDS="313,79,331,63,337,45,349,45,359,65,357,79,345,65,315,77,313,79,313,79" href="signup.cgi?init_popstate=NY">
-<area shape=poly COORDS="309,137,295,151,319,149,337,153,357,131,351,129,309,137,309,137" href="signup.cgi?init_popstate=NC">
-<area shape=poly COORDS="146,31,148,57,198,57,190,31,146,31,146,31" href="signup.cgi?init_popstate=ND">
-<area shape=poly COORDS="281,93,285,113,299,121,311,101,309,85,299,93,281,93,281,93" href="signup.cgi?init_popstate=OH">
-<area shape=poly COORDS="148,145,174,145,174,163,218,171,216,143,150,139,150,145,156,143,148,145,148,145" href="signup.cgi?init_popstate=OK">
-<area shape=poly COORDS="20,41,8,73,16,77,22,77,28,77,36,79,42,81,48,83,56,83,66,49,20,41,20,41" href="signup.cgi?init_popstate=OR">
-<area shape=poly COORDS="309,83,345,71,351,93,313,105,309,83,309,83" href="signup.cgi?init_popstate=PA">
-<area shape=poly COORDS="376,93,405,93,405,107,376,105,376,93" href="signup.cgi?init_popstate=RI">
-<area shape=poly COORDS="301,155,321,149,337,155,325,175,301,157,301,155,301,155" href="signup.cgi?init_popstate=SC">
-<area shape=poly COORDS="146,59,198,61,198,83,146,83,148,57,146,59,146,59" href="signup.cgi?init_popstate=SD">
-<area shape=poly COORDS="255,145,251,157,297,153,311,133,255,145,255,145" href="signup.cgi?init_popstate=TN">
-<area shape=poly COORDS="150,145,172,145,174,167,198,173,218,173,228,207,204,221,198,231,202,247,180,241,154,207,146,219,120,189,154,189,152,145,150,145,150,145" href="signup.cgi?init_popstate=TX">
-<area shape=poly COORDS="78,89,96,91,96,103,110,103,106,135,70,133,78,89,78,89" href="signup.cgi?init_popstate=UT">
-<area shape=poly COORDS="298,29,332,29,332,47,294,45,298,29" href="signup.cgi?init_popstate=VT">
-<area shape=poly COORDS="307,127,297,137,351,127,349,113,341,111,341,105,329,107,315,131,307,127,307,127" href="signup.cgi?init_popstate=VA">
-<area shape=poly COORDS="32,13,68,19,64,47,20,39,20,13,30,19,32,13,32,13" href="signup.cgi?init_popstate=WA">
-<area shape=poly COORDS="303,119,313,129,329,103,311,105,299,121,313,127,303,119,303,119" href="signup.cgi?init_popstate=WV">
-<area shape=poly COORDS="228,51,256,55,254,89,238,89,234,77,224,71,230,49,236,53,228,51,228,51" href="signup.cgi?init_popstate=WI">
-<area shape=poly COORDS="146,71,144,103,96,99,102,63,148,69,146,71,146,71" href="signup.cgi?init_popstate=WY">
-</MAP>
-<IMG SRC="map.gif" usemap=#usmap WIDTH=405 HEIGHT=270 border=0><BR>
-<SELECT NAME="init_popstate" onChange="gotoURL(this.form.init_popstate)">
-<OPTION VALUE="stateselect.html"></OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AL">Alabama</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AK">Alaska</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=AS">American Samoa</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=AZ">Arizona</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AR">Arkansas</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=CA">California</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=CO">Colorado</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=CT">Connecticut</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=DE">Delaware</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=DC">District of Columbia</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=FM">Federated States of Micronesia</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=FL">Florida</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=GA">Georgia</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=GU">Guam</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=HI">Hawaii</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=ID">Idaho</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=IL">Illinois</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=IN">Indiana</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=IA">Iowa</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=KS">Kansas</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=KY">Kentucky</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=LA">Louisiana</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=ME">Maine</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=MH">Marshall Islands</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=MD">Maryland</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MA">Massachusetts</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MI">Michigan</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MN">Minnesota</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MS">Mississippi</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MO">Missouri</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=MT">Montana</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NE">Nebraska</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NV">Nevada</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NH">New Hampshire</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NJ">New Jersey</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NM">New Mexico</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NY">New York</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=NC">North Carolina</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=ND">North Dakota</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=MP">Northern Mariana Islands</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=OH">Ohio</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=OK">Oklahoma</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=OR">Oregon</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=PW">Palau</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=PA">Pennsylvania</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=PR">Puerto Rico</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=RI">Rhode Island</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=SC">South Carolina</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=SD">South Dakota</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=TN">Tennessee</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=TX">Texas</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=UT">Utah</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=VT">Vermont</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=VI">Virgin Islands</OPTION>-->
-<OPTION VALUE="signup.cgi?init_popstate=VA">Virginia</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=WA">Washington</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=WV">West Virginia</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=WI">Wisconsin</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=WY">Wyoming</OPTION>
-<!--<OPTION VALUE="signup.cgi?init_popstate=AE">Armed Forces Africa</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AA">Armed Forces Americas</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AE">Armed Forces Canada</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AE">Armed Forces Europe</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AE">Armed Forces Middle East</OPTION>
-<OPTION VALUE="signup.cgi?init_popstate=AP">Armed Forces Pacific</OPTION>
--->
-</SELECT>
-</FORM>
-</BODY>
-</HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/success.html b/fs_selfservice/FS-SelfService/cgi/success.html
deleted file mode 100644
index 397cc6c..0000000
--- a/fs_selfservice/FS-SelfService/cgi/success.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<HTML><HEAD><TITLE>Signup successful</TITLE></HEAD>
-<BODY BGCOLOR="#e8e8e8"><FONT SIZE=7>Signup successful</FONT><BR><BR>
-Thanks for signing up!
-<BR><BR>
-Signup information for <%= $email_name %>:
-<BR><BR>
-Username: <%= $username %><BR>
-Password: <%= $password %><BR>
-Access number: (<%= $ac %>) / <%= $exch %> - <%= $local %><BR>
-Package: <%= $pkg %><BR>
-</BODY></HTML>
diff --git a/fs_selfservice/FS-SelfService/cgi/svc_acct.html b/fs_selfservice/FS-SelfService/cgi/svc_acct.html
deleted file mode 100644
index abed878..0000000
--- a/fs_selfservice/FS-SelfService/cgi/svc_acct.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<FONT SIZE=4>Setup <%= $svc %></FONT><BR><BR>
-
-<%= if ( $error ) {
- $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error setting up $svc: $error!.
- '</FONT><BR><BR>';
-} ''; %>
-<FORM ACTION="<%= $selfurl %>" METHOD=POST>
-<INPUT TYPE="hidden" NAME="session" VALUE="<%= $session_id %>">
-<INPUT TYPE="hidden" NAME="action" VALUE="process_svc_acct">
-<INPUT TYPE="hidden" NAME="custnum" VALUE="<%= $custnum %>">
-<INPUT TYPE="hidden" NAME="pkgnum" VALUE="<%= $pkgnum %>">
-<INPUT TYPE="hidden" NAME="svcpart" VALUE="<%= $svcpart %>">
-<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR="#cccccc">
-<TR>
- <TD ALIGN="right">Username</TD>
- <TD><INPUT TYPE="text" NAME="username" VALUE="<%= $username %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Password</TD>
- <TD><INPUT TYPE="password" NAME="_password" VALUE="<%= $_password %>"></TD>
-</TR>
-<TR>
- <TD ALIGN="right">Re-enter Password</TD>
- <TD><INPUT TYPE="password" NAME="_password2" VALUE="<%= $_password2 %>"></TD>
-</TR>
-<%=
- if ( $security_phrase ) {
- $OUT .= <<ENDOUT;
-<TR>
- <TD ALIGN="right">Security Phrase</TD>
- <TD><INPUT TYPE="text" NAME="sec_phrase" VALUE="$sec_phrase">
- </TD>
-</TR>
-ENDOUT
- } else {
- $OUT .= '<INPUT TYPE="hidden" NAME="sec_phrase" VALUE="">';
- }
-%>
-<%=
- if ( @svc_acct_pop ) {
- $OUT .= '<TR><TD ALIGN="right">Access number</TD><TD>'.
- popselector( 'popnum' => $popnum,
- 'pops' => \@svc_acct_pop,
- 'init_popstate' => $init_popstate,
- 'popac' => $popac,
- 'acstate' => $acstate,
- ).
- '</TD></TR>';
- } else {
- $OUT .= popselector(popnum=>$popnum, pops=>\@svc_acct_pop);
- }
-%>
-</TABLE>
-<INPUT TYPE="submit" VALUE="Setup">
-</FORM>
diff --git a/fs_selfservice/FS-SelfService/cgi/view_customer.html b/fs_selfservice/FS-SelfService/cgi/view_customer.html
deleted file mode 100644
index 11e4432..0000000
--- a/fs_selfservice/FS-SelfService/cgi/view_customer.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<HTML><HEAD><TITLE>Reseller</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>Reseller</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_menu') %>
-<TD VALIGN="top">
-
-<%= $message
- ? "<FONT SIZE=\"+2\"><B>$message</B></FONT><BR><BR>"
- : ''
-%>
-
-<%= $small_custview %>
-
-<BR>
-
-<TABLE BORDER=0 CELLPADDING=4><TR>
-<%= include('agent_customer_menu') %>
-<TD VALIGN="top">
-
-</TD></TR></TABLE>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
-
-
diff --git a/fs_selfservice/FS-SelfService/cgi/view_invoice.html b/fs_selfservice/FS-SelfService/cgi/view_invoice.html
deleted file mode 100644
index ad2f4f4..0000000
--- a/fs_selfservice/FS-SelfService/cgi/view_invoice.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee"><FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-
-<%= $invoice_html %>
-
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
-
-
-
diff --git a/fs_selfservice/FS-SelfService/freeside-selfservice-clientd b/fs_selfservice/FS-SelfService/freeside-selfservice-clientd
deleted file mode 100644
index bdc8e15..0000000
--- a/fs_selfservice/FS-SelfService/freeside-selfservice-clientd
+++ /dev/null
@@ -1,272 +0,0 @@
-#!/usr/bin/perl -w
-#
-# freeside-selfservice-clientd
-#
-# This is run REMOTELY over ssh by freeside-selfservice-server
-
-use strict;
-use subs qw(spawn logmsg lock_write unlock_write);
-use Fcntl qw(:flock);
-use POSIX qw(:sys_wait_h);
-use Socket;
-use Storable 2.09 qw(nstore_fd fd_retrieve);
-use IO::Handle qw(_IONBF);
-use IO::Select;
-use IO::File;
-
-#STDOUT->setbuf('');
-
-my $tag = scalar(@ARGV) ? '.'.shift : '';
-
-use vars qw( $Debug );
-$Debug = 2; #2 will turn on child logging
- #3 will log packet contents,#including passwords
- #4 will log receipts of all packets from server including
- # keepalives (big!)
-
-my $socket = "/usr/local/freeside/selfservice_socket$tag";
-my $pid_file = "$socket.pid";
-
-my $log_file = "/usr/local/freeside/selfservice$tag.log";
-
-my $lock_file = "/usr/local/freeside/selfservice$tag.writelock";
-
-#my $me = '[client]';
-
-$|=1;
-
-$SIG{__WARN__} = \&_logmsg;
-
-#read data to be cached or something
-#warn "$me Reading init data\n" if $Debug;
-#my $signup_init =
-
-warn "Creating $lock_file\n" if $Debug;
-open(LOCKFILE,">$lock_file") or die "can't open $lock_file: $!";
-close LOCKFILE;
-
-warn "Creating $socket\n" if $Debug;
-my $uaddr = sockaddr_un($socket);
-my $proto = getprotobyname('tcp');
-socket(Server,PF_UNIX,SOCK_STREAM,0) or die "socket: $!";
-unlink($socket);
-bind(Server, $uaddr) or die "bind: $!";
-listen(Server,SOMAXCONN) or die "listen: $!";
-
-if ( -e $pid_file ) {
- open(PIDFILE,"<$pid_file");
- my $old_pid = <PIDFILE>;
- close PIDFILE;
- if ( $old_pid =~ /^(\d+)$/ ) {
- kill 'TERM', $1;
- }
-}
-open(PIDFILE,">$pid_file");
-print PIDFILE "$$\n";
-close PIDFILE;
-
-#my $waitedpid;
-#sub REAPER { $waitedpid = wait; $SIG{CHLD} = \&REAPER; }
-#$SIG{CHLD} = \&REAPER;
-
-warn "enabling keep alives\n" if $Debug;
-nstore_fd( { _packet => '_enable_keepalive' } , \*STDOUT );
-
-warn "entering main loop\n" if $Debug;
-
-my %kids;
-
-my $s = new IO::Select;
-$s->add(\*STDIN);
-$s->add(\*Server);
-
-#for ( $waitedpid = 0;
-# accept(Client,Server) || $waitedpid;
-# $waitedpid = 0, close Client)
-#{
-# next if $waitedpid;
-
-#$SIG{PIPE} = sub { warn "SIGPIPE received" };
-#$SIG{CHLD} = sub { warn "SIGCHLD received" };
-
-#sub REAPER { warn "SIGCHLD received"; my $pid = wait; $SIG{CHLD} = \&REAPER; }
-#sub REAPER { my $pid = wait; $SIG{CHLD} = \&REAPER; }
-#sub REAPER { my $pid = wait; delete $kids{$pid}; $SIG{CHLD} = \&REAPER; }
-#$SIG{CHLD} = \&REAPER;
-
-my $undisp = 0;
-while (1) {
-
- &reap_kids;
-
- warn "waiting for connection\n" if $Debug && !$undisp;
-
- #my @handles = $s->can_read();
- my @handles = $s->can_read(5);
- $undisp = !scalar(@handles);
- foreach my $handle ( @handles ) {
-
- if ( $handle == \*STDIN ) {
-
- warn "receiving packet from server\n" if $Debug > 3;
-
- my $packet = fd_retrieve(\*STDIN);
- my $token = $packet->{'_token'};
-
- if ( $token eq '_keepalive' ) {
- $undisp = 1;
- next;
- }
-
- warn "received packet from server with token $token\n".
- ( $Debug > 2
- ? join('', map { " $_=>$packet->{$_}\n" } keys %$packet )
- : '' )
- if $Debug;
-
- if ( exists($kids{$token}) ) {
- warn "sending return packet to $token via $kids{$token}\n"
- if $Debug;
- nstore_fd($packet, $kids{$token});
- warn "flushing to $token\n" if $Debug;
- until ( $kids{$token}->flush ) {
- warn "WARNING: error flushing: $!";
- sleep 1;
- }
- #no close or delete here - will block waiting for child
- warn "done with $token\n" if $Debug;
- } else {
- warn "WARNING: unknown token $token, discarding message";
- }
-
- } elsif ( $handle == \*Server ) {
-
- until ( accept(Client, Server) ) {
- warn "WARNING: accept failed: $!";
- next;
- }
-
- warn "received local connection; forking\n" if $Debug;
-
- spawn sub { #child
- warn "[child-$$] reading packet from local client" if $Debug > 1;
- my $packet = fd_retrieve(\*Client);
- warn "[child-$$] packet received:\n".
- join('', map { " $_=>$packet->{$_}\n" } keys %$packet )
- if $Debug > 2;
- my $command = $packet->{'command'};
- #handle some commands weirdly?
- $packet->{_token}=$$;
-
- warn "[child-$$] locking write stream\n" if $Debug > 1;
- lock_write;
-
- warn "[child-$$] sending packet to remote server\n" if $Debug > 1;
- nstore_fd($packet, \*STDOUT) or die "FATAL: can't send response: $!";
-
- warn "[child-$$] flushing write stream\n" if $Debug > 1;
- STDOUT->flush or die "FATAL: can't flush: $!";
-
- warn "[child-$$] releasing write lock\n" if $Debug > 1;
- unlock_write;
-
- warn "[child-$$] closing write stream\n" if $Debug > 1;
- close STDOUT or die "FATAL: can't close write stream: $!"; #??!
-
- warn "[child-$$] waiting for response from parent\n" if $Debug > 1;
- my $w = new IO::Select;
- $w->add(\*STDIN);
- until ( $w->can_read ) {
- warn "[child-$$] WARNING: interrupted select: $!\n";
- }
- my $rv = fd_retrieve(\*STDIN);
-
- #close STDIN;
-
- warn "[child-$$] sending response to local client" if $Debug > 1;
- nstore_fd($rv, \*Client);
- Client->flush or die "FATAL: can't flush to local client: $!";
- close Client or die "FATAL: can't close connection to local client: $!";
-
- warn "[child-$$] child exiting" if $Debug > 1;
- exit;
-
- }; #eo child
-
- #close Client;
-
- } else {
- die "wtf? $handle";
- }
-
- }
-
-}
-
-sub reap_kids {
- #warn "reaping kids\n";
- foreach my $pid ( keys %kids ) {
- my $kid = waitpid($pid, WNOHANG);
- if ( $kid > 0 ) {
- close $kids{$kid};
- delete $kids{$kid};
- }
- }
- #warn "done reaping\n";
-}
-
-sub spawn {
- my $coderef = shift;
-
- unless (@_ == 0 && $coderef && ref($coderef) eq 'CODE') {
- use Carp;
- confess "usage: spawn CODEREF";
- }
-
- my $pid;
- #if (!defined($pid = fork)) {
- my $kid = new IO::Handle;
- if (!defined($pid = open($kid, '|-'))) {
- warn "WARNING: cannot fork: $!";
- return;
- } elsif ($pid) {
- warn "begat $pid" if $Debug;
- $kids{$pid} = $kid;
- #$kids{$pid}->autoflush;
- return; # I'm the parent
- }
- # else I'm the child -- go spawn
-
-# open(STDIN, "<&Client") || die "can't dup client to stdin";
-# open(STDOUT, ">&Client") || die "can't dup client to stdout";
-# open(STDERR, ">&STDOUT") || die "can't dup stdout to stderr";
- exit &$coderef();
-}
-
-sub _logmsg {
- chomp( my $msg = shift );
- my $log = new IO::File ">>$log_file";
- die "can't open $log_file: $!" unless defined($log);
- flock($log, LOCK_EX);
- seek($log, 0, 2);
- print $log "[client] [". scalar(localtime). "] [$$] $msg\n";
- flock($log, LOCK_UN);
- close $log;
-}
-
-sub lock_write {
- #broken on freebsd?
- #flock(STDOUT, LOCK_EX) or die "FATAL: can't lock write stream: $!";
-
- #open a new one for each kid to get a unique lock
- open(LOCKFILE,">$lock_file") or die "can't open $lock_file: $!";
-
- flock(LOCKFILE, LOCK_EX) or die "FATAL: can't lock $lock_file: $!";
-}
-
-sub unlock_write {
- #broken on freebsd?
- #flock(STDOUT, LOCK_UN) or die "FATAL: can't release write lock: $!";
-
- flock(LOCKFILE, LOCK_UN) or die "FATAL: can't unlock $lock_file: $!";
-}
diff --git a/fs_selfservice/FS-SelfService/ieak.template b/fs_selfservice/FS-SelfService/ieak.template
deleted file mode 100755
index 52edaa9..0000000
--- a/fs_selfservice/FS-SelfService/ieak.template
+++ /dev/null
@@ -1,40 +0,0 @@
-[Entry]
-Entry_Name = The Internet
-[Phone]
-Dial_As_Is=no
-Phone_Number = { $exch. $loc }
-Area_Code = { $ac }
-Country_Code = 1
-Country_Id = 1
-[Server]
-Type = PPP
-SW_Compress = Yes
-PW_Encrypt = Yes
-Negotiate_TCP/IP = Yes
-Disable_LCP = No
-[TCP/IP]
-Specify_IP_Address = No
-Specity_Server_Address = No
-IP_Header_Compress = Yes
-Gateway_On_Remote = Yes
-[User]
-Name = { $username }
-Password = { $password }
-Display_Password = Yes
-[Internet_Mail]
-Email_Name = { $email_name }
-Email_Address = { $username }\@domain.tld
-POP_Server = mail.domain.tld
-POP_Server_Port_Number = 110
-POP_Login_Name = { $username }
-POP_Login_Password = { $password }
-SMTP_Server = mail.domain.tld
-SMTP_Server_Port_Number = 25
-Install_Mail = 1
-[Internet_News]
-NNTP_Server = news.domain.tld
-NNTP_Server_Port_Number = 119
-Logon_Required = No
-Install_News = 1
-[Branding]
-Window_Title = The Internet
diff --git a/fs_selfservice/FS-SelfService/test.pl b/fs_selfservice/FS-SelfService/test.pl
deleted file mode 100644
index 7468ea4..0000000
--- a/fs_selfservice/FS-SelfService/test.pl
+++ /dev/null
@@ -1,17 +0,0 @@
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl test.pl'
-
-#########################
-
-# change 'tests => 1' to 'tests => last_test_to_print';
-
-use Test;
-BEGIN { plan tests => 1 };
-use FS::SelfService;
-ok(1); # If we made it this far, we're ok.
-
-#########################
-
-# Insert your test code below, the Test module is use()ed here so read
-# its man page ( perldoc Test ) for help writing this test script.
-
diff --git a/fs_selfservice/fs_passwd_test b/fs_selfservice/fs_passwd_test
deleted file mode 100755
index 4f8b8a8..0000000
--- a/fs_selfservice/fs_passwd_test
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use FS::SelfService qw(passwd);
-
-my $rv = passwd(
- 'username' => 'ivan',
- 'old_password' => 'heyhoo',
- 'new_password' => 'haloo',
-);
-my $error = $rv->{error};
-
-if ( $error eq 'Incorrect password.' ) {
- exit;
-} else {
- die $error if $error;
- die "no error";
-}
-
diff --git a/fs_sesmon/FS-SessionClient/Changes b/fs_sesmon/FS-SessionClient/Changes
deleted file mode 100644
index 390a7b9..0000000
--- a/fs_sesmon/FS-SessionClient/Changes
+++ /dev/null
@@ -1,5 +0,0 @@
-Revision history for Perl extension FS::SessionClient
-
-0.01 Wed Oct 18 16:34:36 1999
- - original version; created by ivan 1.0
-
diff --git a/fs_sesmon/FS-SessionClient/MANIFEST b/fs_sesmon/FS-SessionClient/MANIFEST
deleted file mode 100644
index 162d4e4..0000000
--- a/fs_sesmon/FS-SessionClient/MANIFEST
+++ /dev/null
@@ -1,11 +0,0 @@
-Changes
-MANIFEST
-MANIFEST.SKIP
-Makefile.PL
-SessionClient.pm
-test.pl
-fs_sessiond
-cgi/login.cgi
-cgi/logout.cgi
-bin/freeside-login
-bin/freeside-logout
diff --git a/fs_sesmon/FS-SessionClient/MANIFEST.SKIP b/fs_sesmon/FS-SessionClient/MANIFEST.SKIP
deleted file mode 100644
index ae335e7..0000000
--- a/fs_sesmon/FS-SessionClient/MANIFEST.SKIP
+++ /dev/null
@@ -1 +0,0 @@
-CVS/
diff --git a/fs_sesmon/FS-SessionClient/Makefile.PL b/fs_sesmon/FS-SessionClient/Makefile.PL
deleted file mode 100644
index 137b6b8..0000000
--- a/fs_sesmon/FS-SessionClient/Makefile.PL
+++ /dev/null
@@ -1,10 +0,0 @@
-use ExtUtils::MakeMaker;
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- 'NAME' => 'FS::SessionClient',
- 'VERSION_FROM' => 'SessionClient.pm', # finds $VERSION
- 'EXE_FILES' => [ qw(fs_sessiond bin/freeside-login bin/freeside-logout) ],
- 'INSTALLSCRIPT' => '/usr/local/sbin',
- 'PERM_RWX' => '750',
-);
diff --git a/fs_sesmon/FS-SessionClient/SessionClient.pm b/fs_sesmon/FS-SessionClient/SessionClient.pm
deleted file mode 100644
index 8a0ff70..0000000
--- a/fs_sesmon/FS-SessionClient/SessionClient.pm
+++ /dev/null
@@ -1,122 +0,0 @@
-package FS::SessionClient;
-
-use strict;
-use vars qw($AUTOLOAD $VERSION @ISA @EXPORT_OK $fs_sessiond_socket);
-use Exporter;
-use Socket;
-use FileHandle;
-use IO::Handle;
-
-$VERSION = '0.01';
-
-@ISA = qw( Exporter );
-@EXPORT_OK = qw( login logout portnum );
-
-$fs_sessiond_socket = "/usr/local/freeside/fs_sessiond_socket";
-
-$ENV{'PATH'} ='/usr/bin:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-my $freeside_uid = scalar(getpwnam('freeside'));
-die "not running as the freeside user\n" if $> != $freeside_uid;
-
-=head1 NAME
-
-FS::SessionClient - Freeside session client API
-
-=head1 SYNOPSIS
-
- use FS::SessionClient qw( login portnum logout );
-
- $error = login ( {
- 'username' => $username,
- 'password' => $password,
- 'login' => $timestamp,
- 'portnum' => $portnum,
- } );
-
- $portnum = portnum( { 'ip' => $ip } ) or die "unknown ip!"
- $portnum = portnum( { 'nasnum' => $nasnum, 'nasport' => $nasport } )
- or die "unknown nasnum/nasport";
-
- $error = logout ( {
- 'username' => $username,
- 'password' => $password,
- 'logout' => $timestamp,
- 'portnum' => $portnum,
- } );
-
-=head1 DESCRIPTION
-
-This modules provides an API for a remote session application.
-
-It needs to be run as the freeside user. Because of this, the program which
-calls these subroutines should be written very carefully.
-
-=head1 SUBROUTINES
-
-=over 4
-
-=item login HASHREF
-
-HASHREF should have the following keys: username, password, login and portnum.
-login is a UNIX timestamp; if not specified, will default to the current time.
-Starts a new session for the specified user and portnum. The password is
-optional, but must be correct if specified.
-
-Returns a scalar error message, or the empty string for success.
-
-=item portnum
-
-HASHREF should contain a single key: ip, or the two keys: nasnum and nasport.
-Returns a portnum suitable for the login and logout subroutines, or false
-on error.
-
-=item logout HASHREF
-
-HASHREF should have the following keys: usrename, password, logout and portnum.
-logout is a UNIX timestamp; if not specified, will default to the current time.
-Starts a new session for the specified user and portnum. The password is
-optional, but must be correct if specified.
-
-Returns a scalar error message, or the empty string for success.
-
-=cut
-
-sub AUTOLOAD {
- my $hashref = shift;
- my $method = $AUTOLOAD;
- $method =~ s/^.*:://;
- socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "socket: $!";
- connect(SOCK, sockaddr_un($fs_sessiond_socket)) or die "connect: $!";
- print SOCK "$method\n";
-
- print SOCK join("\n", %{$hashref}, 'END' ), "\n";
- SOCK->flush;
-
- chomp( my $r = <SOCK> );
- $r;
-}
-
-=back
-
-=head1 VERSION
-
-$Id: SessionClient.pm,v 1.3 2000-12-03 20:25:20 ivan Exp $
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<fs_sessiond>
-
-=cut
-
-1;
-
-
-
diff --git a/fs_sesmon/FS-SessionClient/bin/freeside-login b/fs_sesmon/FS-SessionClient/bin/freeside-login
deleted file mode 100644
index a6d4751..0000000
--- a/fs_sesmon/FS-SessionClient/bin/freeside-login
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#false-laziness hack w freeside-logout
-
-use strict;
-use FS::SessionClient qw( login portnum );
-
-my $username = shift;
-
-my $portnum;
-if ( scalar(@ARGV) == 1 ) {
- my $arg = shift;
- if ( $arg =~ /^(\d+)$/ ) {
- $portnum = $1;
- } elsif ( $arg =~ /^([\d\.]+)$/ ) {
- $portnum = portnum( { 'ip' => $1 } ) or die "unknown ip!"
- } else {
- &usage;
- }
-} elsif ( scalar(@ARGV) == 2 ) {
- $portnum = portnum( { 'nasnum' => shift, 'nasport' => shift } )
- or die "unknown nasnum/nasport";
-} else {
- &usage;
-}
-
-my $error = login ( {
- 'username' => $username,
- 'portnum' => $portnum,
-} );
-
-warn $error if $error;
-
-sub usage {
- die "Usage:\n\n freeside-login username ( portnum | ip | nasnum nasport )";
-}
diff --git a/fs_sesmon/FS-SessionClient/bin/freeside-logout b/fs_sesmon/FS-SessionClient/bin/freeside-logout
deleted file mode 100644
index 9b4ecfe..0000000
--- a/fs_sesmon/FS-SessionClient/bin/freeside-logout
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#false-laziness hack w freeside-login
-
-use strict;
-use FS::SessionClient qw( logout portnum );
-
-my $username = shift;
-
-my $portnum;
-if ( scalar(@ARGV) == 1 ) {
- my $arg = shift;
- if ( $arg =~ /^(\d+)$/ ) {
- $portnum = $1;
- } elsif ( $arg =~ /^([\d\.]+)$/ ) {
- $portnum = portnum( { 'ip' => $1 } ) or die "unknown ip!"
- } else {
- &usage;
- }
-} elsif ( scalar(@ARGV) == 2 ) {
- $portnum = portnum( { 'nasnum' => shift, 'nasport' => shift } )
- or die "unknown nasnum/nasport";
-} else {
- &usage;
-}
-
-my $error = logout ( {
- 'username' => $username,
- 'portnum' => $portnum,
-} );
-
-warn $error if $error;
-
-sub usage {
- die "Usage:\n\n freeside-logout username ( portnum | ip | nasnum nasport )";
-}
diff --git a/fs_sesmon/FS-SessionClient/cgi/login.cgi b/fs_sesmon/FS-SessionClient/cgi/login.cgi
deleted file mode 100644
index 0307c5a..0000000
--- a/fs_sesmon/FS-SessionClient/cgi/login.cgi
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#false-laziness hack w logout.cgi
-
-use strict;
-use vars qw( $cgi $username $password $error $ip $portnum );
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-use FS::SessionClient qw( login portnum );
-
-$cgi = new CGI;
-
-if ( defined $cgi->param('magic') ) {
- $cgi->param('username') =~ /^\s*(\w{1,255})\s*$/ or do {
- $error = "Illegal username";
- &print_form;
- exit;
- };
- $username = $1;
- $cgi->param('password') =~ /^([^\n]{0,255})$/ or die "guru meditation #420";
- $password = $1;
- #$ip = $cgi->remote_host;
- $ip = $ENV{REMOTE_ADDR};
- $ip =~ /^([\d\.]+)$/ or die "illegal ip: $ip";
- $ip = $1;
- $portnum = portnum( { 'ip' => $1 } ) or do {
- $error = "You appear to be coming from an unknown IP address. Verify ".
- "that your computer is set to obtain an IP address automatically ".
- "via DHCP.";
- &print_form;
- exit;
- };
-
- ( $error = login ( {
- 'username' => $username,
- 'portnum' => $portnum,
- 'password' => $password,
- } ) )
- ? &print_form()
- : &print_okay();
-
-} else {
- $username = '';
- $password = '';
- $error = '';
- &print_form;
-}
-
-sub print_form {
- my $self_url = $cgi->self_url;
-
- print $cgi->header( '-expires' => 'now' ), <<END;
-<HTML><HEAD><TITLE>login</TITLE></HEAD>
-<BODY BGCOLOR="#FFFFFF">
-END
-
-print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT>! if $error;
-
-print <<END;
-<FORM ACTION="$self_url" METHOD="POST">
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="4" ALIGN="center">
-<TR>
- <TD ALIGN="center" COLSPAN="2">
- <STRONG>Welcome</STRONG>
- </TD>
-</TR>
-<TR>
- <TD ALIGN="right">
- Username
- </TD>
- <TD ALIGN="left">
- <INPUT TYPE="text" NAME="username" VALUE="$username">
- </TD>
-</TR>
-<TR>
- <TD ALIGN="right">
- Password
- </TD>
- <TD ALIGN="left">
- <INPUT TYPE="password" NAME="password">
- </TD>
-</TR>
-<TR>
- <TD ALIGN="center" COLSPAN="2">
- <INPUT TYPE="submit" VALUE=" Login ">
- </TD>
-</TR>
-</TABLE>
-</FORM>
-</BODY>
-</HTML>
-END
-
-}
-
-sub print_okay {
- print $cgi->header( '-expires' => 'now' ), <<END;
-<HTML><HEAD><TITLE>login sucessful</TITLE></HEAD>
-<BODY>login successful, etc.
-</BODY>
-</HTML>
-END
-}
-
-sub usage {
- die "Usage:\n\n freeside-login username ( portnum | ip | nasnum nasport )";
-}
diff --git a/fs_sesmon/FS-SessionClient/cgi/logout.cgi b/fs_sesmon/FS-SessionClient/cgi/logout.cgi
deleted file mode 100644
index 95cef98..0000000
--- a/fs_sesmon/FS-SessionClient/cgi/logout.cgi
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/perl -Tw
-
-#false-laziness hack w login.cgi
-
-use strict;
-use vars qw( $cgi $username $password $error $ip $portnum );
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-use FS::SessionClient qw( logout portnum );
-
-$cgi = new CGI;
-
-if ( defined $cgi->param('magic') ) {
- $cgi->param('username') =~ /^\s*(\w{1,255})\s*$/ or do {
- $error = "Illegal username";
- &print_form;
- exit;
- };
- $username = $1;
- $cgi->param('password') =~ /^([^\n]{0,255})$/ or die "guru meditation #420";
- $password = $1;
- #$ip = $cgi->remote_host;
- $ip = $ENV{REMOTE_ADDR};
- $ip =~ /^([\d\.]+)$/ or die "illegal ip: $ip";
- $ip = $1;
- $portnum = portnum( { 'ip' => $1 } ) or do {
- $error = "You appear to be coming from an unknown IP address. Verify ".
- "that your computer is set to obtain an IP address automatically ".
- "via DHCP.";
- &print_form;
- exit;
- };
-
- ( $error = logout ( {
- 'username' => $username,
- 'portnum' => $portnum,
- 'password' => $password,
- } ) )
- ? &print_form()
- : &print_okay();
-
-} else {
- $username = '';
- $password = '';
- $error = '';
- &print_form;
-}
-
-sub print_form {
- my $self_url = $cgi->self_url;
-
- print $cgi->header( '-expires' => 'now' ), <<END;
-<HTML><HEAD><TITLE>logout</TITLE></HEAD>
-<BODY>
-END
-
-print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT>! if $error;
-
-print <<END;
-<FORM ACTION="$self_url" METHOD=POST>
-<INPUT TYPE="hidden" NAME="magic" VALUE="process">
-Username <INPUT TYPE="text" NAME="username" VALUE="$username"><BR>
-Password <INPUT TYPE="password" NAME="password"><BR>
-<INPUT TYPE="submit">
-</FORM>
-</BODY>
-</HTML>
-END
-
-}
-
-sub print_okay {
- print $cgi->header( '-expires' => 'now' ), <<END;
-<HTML><HEAD><TITLE>logout sucessful</TITLE></HEAD>
-<BODY>logout successful, etc.
-</BODY>
-</HTML>
-END
-}
-
-sub usage {
- die "Usage:\n\n freeside-logout username ( portnum | ip | nasnum nasport )";
-}
diff --git a/fs_sesmon/FS-SessionClient/fs_sessiond b/fs_sesmon/FS-SessionClient/fs_sessiond
deleted file mode 100644
index bfdb20a..0000000
--- a/fs_sesmon/FS-SessionClient/fs_sessiond
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# fs_sessiond
-#
-# This is run REMOTELY over ssh by fs_session_server
-#
-
-use strict;
-use Socket;
-
-use vars qw( $Debug );
-
-$Debug = 1;
-
-my $fs_sessiond_socket = "/usr/local/freeside/fs_sessiond_socket";
-
-$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-$|=1;
-
-my $me = "[fs_sessiond]";
-
-warn "$me starting\n" if $Debug;
-#nothing to read from server
-
-warn "$me creating $fs_sessiond_socket\n" if $Debug;
-my $uaddr = sockaddr_un($fs_sessiond_socket);
-my $proto = getprotobyname('tcp');
-socket(Server,PF_UNIX,SOCK_STREAM,0) or die "socket: $!";
-unlink($fs_sessiond_socket);
-bind(Server, $uaddr) or die "bind: $!";
-listen(Server,SOMAXCONN) or die "listen: $!";
-
-warn "$me entering main loop\n" if $Debug;
-my $paddr;
-for ( ; $paddr = accept(Client,Server); close Client) {
-
- chomp( my $command = <Client> );
-
- if ( $command eq 'login' || $command eq 'logout' || $command eq 'portnum' ) {
- warn "$me reading data from local client\n" if $Debug;
- my @data;
- my $dos = 0;
- push @data, scalar(<Client>) until $dos++ == 99 || $data[$#data] eq "END\n";
- if ( $dos == 99 ) {
- warn "$me WARNING: DoS attempt!"
- } else {
- warn "$me sending data to remote server\n" if $Debug;
- print "$command\n", @data;
- warn "$me reading result from remote server\n" if $Debug;
- my $error = <STDIN>;
- warn "$me sending error to local client\n" if $Debug;
- print Client $error;
- }
- } else {
- warn "$me WARNING: unexpected command from client: $command";
- }
-
-}
-
diff --git a/fs_sesmon/FS-SessionClient/test.pl b/fs_sesmon/FS-SessionClient/test.pl
deleted file mode 100644
index 4b9ae17..0000000
--- a/fs_sesmon/FS-SessionClient/test.pl
+++ /dev/null
@@ -1,21 +0,0 @@
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl test.pl'
-
-######################### We start with some black magic to print on failure.
-
-# Change 1..1 below to 1..last_test_to_print .
-# (It may become useful if the test is moved to ./t subdirectory.)
-
-BEGIN { $| = 1; print "1..1\n"; }
-END {print "not ok 1\n" unless $loaded;}
-#use FS::SessionClient;
-#sigh, "not running as the freeside user"
-$loaded = 1;
-print "ok 1\n";
-
-######################### End of black magic.
-
-# Insert your test code below (better if it prints "ok 13"
-# (correspondingly "not ok 13") depending on the success of chunk 13
-# of the test code):
-
diff --git a/fs_sesmon/fs_session_server b/fs_sesmon/fs_session_server
deleted file mode 100644
index 00229f8..0000000
--- a/fs_sesmon/fs_session_server
+++ /dev/null
@@ -1,140 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# fs_session_server
-#
-
-use strict;
-use vars qw( $opt $Debug );
-use IO::Handle;
-use Net::SSH qw(sshopen2);
-use FS::UID qw(adminsuidsetup dbh);
-use FS::Record qw( qsearchs ); #qsearch );
-#use FS::cust_main_county;
-#use FS::cust_main;
-use FS::session;
-use FS::port;
-use FS::svc_acct;
-
-#require "configfile";
-$Debug = 1;
-
-my $user = shift or die &usage;
-&adminsuidsetup( $user );
-
-my $machine = shift or die &usage;
-
-my $fs_sessiond = "/usr/local/sbin/fs_sessiond";
-
-my $me = "[fs_session_server]";
-
-while (1) {
- my($reader, $writer) = (new IO::Handle, new IO::Handle);
- $writer->autoflush(1);
- warn "$me Connecting to $machine\n" if $Debug;
- sshopen2($machine,$reader,$writer,$fs_sessiond);
-
- warn "$me Entering main loop\n" if $Debug;
- while (1) {
- warn "$me Reading (waiting for) data\n" if $Debug;
- my $command = scalar(<$reader>);
- chomp $command;
- #DoS protection here too, to protect against a compromised client? *sigh*
- my %hash;
- while ( ( my $key = scalar(<$reader>) ) ne "END\n" ) {
- chomp $key;
- chomp( $hash{$key} = scalar(<$reader>) );
- }
-
- if ( $command eq 'login' ) {
- my $error = &login(\%hash);
- print $writer "$error\n";
- } elsif ( $command eq 'logout' ) {
- my $error = &logout(\%hash);
- print $writer "$error\n";
- } elsif ( $command eq 'portnum' ) {
- my $port;
- if ( exists $hash{'ip'} ) {
- $hash{'ip'} =~ /^([\d\.]+)$/ or $1='nomatch';
- $port = qsearchs('port', { 'ip' => $1 } );
- } else {
- $hash{'nasnum'} =~ /^(\d+)$/ and my $nasnum = $1;
- $hash{'nasport'} =~ /^(\d+)$/ and my $nasport = $1;
- $port = qsearchs('port', { 'nasnum'=>$nasnum, 'nasport'=>$nasport } );
- }
- print $writer ( $port ? $port->portnum : '' ), "\n";
- } else {
- warn "$me WARNING: unrecognized command: $command";
- }
- }
- #won't ever reach without code above to throw out of loop, but...
- close $writer;
- close $reader;
- warn "connection to $machine lost!\n";
- sleep 5;
- warn "reconnecting...\n";
-}
-
-sub login {
- my $href = shift;
- $href->{'username'} =~ /^([a-z0-9_\-\.]+)$/ or return "Illegal username";
- my $username = $1;
- my $svc_acct = qsearchs('svc_acct', { 'username' => $username } )
- or return "Unknown user";
- return "Incorrect password"
- if exists($href->{'password'})
- && $href->{'password'} ne $svc_acct->_password;
- return "Time limit exceeded" unless $svc_acct->seconds;
- my $session = new FS::session {
- 'portnum' => $href->{'portnum'},
- 'svcnum' => $svc_acct->svcnum,
- 'login' => $href->{'login'},
- };
- $session->insert;
-}
-
-sub logout {
- my $href = shift;
- $href->{'username'} =~ /^([a-z0-9_\-\.]+)$/ or return "Illegal username";
- my $username = $1;
- local $FS::UID::AutoCommit = 0;
- my $dbh = dbh;
- my $svc_acct =
- qsearchs('svc_acct', { 'username' => $username }, '', 'FOR UPDATE' )
- or return "Unknown user";
- return "Incorrect password"
- if exists($href->{'password'})
- && $href->{'password'} ne $svc_acct->_password;
- my $session = qsearchs( 'session', {
- 'portnum' => $href->{'portnum'},
- 'svcnum' => $svc_acct->svcnum,
- 'logout' => '',
- },
- '', 'FOR UPDATE'
- );
- unless ( $session ) {
- $dbh->rollback;
- return "No currently open sessions found for that user/port!";
- }
- my $nsession = new FS::session ( { $session->hash } );
- warn "$nsession replacing $session";
- my $error = $nsession->replace($session);
- if ( $error ) {
- $dbh->rollback;
- return "can't logout: $error";
- }
- my $time = $nsession->logout - $nsession->login;
- my $new_svc_acct = new FS::svc_acct ( { $svc_acct->hash } );
- my $seconds = $new_svc_acct->seconds;
- $seconds -= $time;
- $seconds = 0 if $seconds < 0;
- $new_svc_acct->seconds( $seconds );
- $error = $new_svc_acct->replace( $svc_acct );
- warn "can't debit time: $error\n"; #don't want to rollback, though
- $dbh->commit or die $dbh->errstr;
- ''
-}
-
-sub usage {
- die "Usage:\n\n fs_session_server user machine\n";
-}
-
diff --git a/fs_webdemo/register.cgi b/fs_webdemo/register.cgi
deleted file mode 100755
index 8255822..0000000
--- a/fs_webdemo/register.cgi
+++ /dev/null
@@ -1,136 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# $Id: register.cgi,v 1.5 2000-03-03 18:22:42 ivan Exp $
-
-use strict;
-use vars qw(
- $datasrc $user $pass $x
- $cgi $username $email
- $dbh $sth
- );
- #$freeside_bin $freeside_test $freeside_conf
- #@pw_set @saltset
- #$user_pw $crypt_pw
- #$header $msg
-use CGI;
-use CGI::Carp qw(fatalsToBrowser);
-use DBI;
-#use Mail::Internet;
-#use Mail::Header;
-#use Date::Format;
-
-$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-$ENV{'SHELL'} = '/bin/sh';
-$ENV{'IFS'} = " \t\n";
-$ENV{'CDPATH'} = '';
-$ENV{'ENV'} = '';
-$ENV{'BASH_ENV'} = '';
-
-#$freeside_bin = '/home/freeside/bin/';
-#$freeside_test = '/home/freeside/test/';
-#$freeside_conf = '/usr/local/etc/freeside/';
-
-$datasrc = 'DBI:mysql:http_auth';
-$user = "freeside";
-$pass = "maelcolm";
-
-##my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9', '(', ')', '#', '!', '.', ',' );
-##my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9' );
-#@pw_set = ( 'a'..'z', '0'..'9' );
-#@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-###
-
-$cgi = new CGI;
-
-$username = $cgi->param('username');
-$username =~ /^\s*([a-z][\w]{0,15})\s*$/i
- or &idiot("Illegal username. Please use 1-16 alphanumeric characters, and start your username with a letter.");
-$username = lc($1);
-
-$email = $cgi->param('email');
-$email =~ /^([\w\-\.\+]+\@[\w\-\.]+)$/
- or &idiot("Illegal email address.");
-$email = $1;
-
-###
-
-#$user_pw = join('',map($pw_set[ int(rand $#pw_set) ], (0..7) ) );
-#$crypt_pw = crypt($user_pw,$saltset[int(rand(64))].$saltset[int(rand(64))]);
-
-###
-
- local $SIG{HUP} = 'IGNORE';
- local $SIG{INT} = 'IGNORE';
- local $SIG{QUIT} = 'IGNORE';
- local $SIG{TERM} = 'IGNORE';
- local $SIG{TSTP} = 'IGNORE';
- local $SIG{PIPE} = 'IGNORE';
-
-###
-
-$dbh = DBI->connect( $datasrc, $user, $pass, {
- 'AutoCommit' => 'true',
-} ) or die "DBI->connect error: $DBI::errstr\n";
-$x = $DBI::errstr; #silly; to avoid "used only once" warning
-
-$sth = $dbh->prepare("INSERT INTO mysql_auth VALUES (". join(", ",
- $dbh->quote($username),
-# $dbh->quote("X"),
-# $dbh->quote($crypt_pw),
- $dbh->quote($email),
- $dbh->quote('freeside'),
- $dbh->quote('unconfigured'),
-). ")" );
-
-$sth->execute or &idiot("Username in use: ". $sth->errstr);
-
-$dbh->disconnect or die $dbh->errstr;
-
-###
-
-$|=1;
-print $cgi->header;
-print <<END;
-<HTML>
- <HEAD>
- <TITLE>Freeside demo registration successful</TITLE>
- </HEAD>
- <BODY BGCOLOR="#FFFFFF">
- <table>
- <tr><td>
- <p align=center>
- <img border=0 alt="Silicon Interactive Software Design" src="http://www.sisd.com/freeside/small-logo.gif">
- </td><td>
- <center><font color="#ff0000" size=7>freeside demo registration successful</font></center>
- </td></tr>
- </table>
- <P>Your sample database has been setup. Your password and the URL for the
- Freeside demo have been emailed to you.
- </BODY>
-</HTML>
-END
-
-###
-
-sub idiot {
- my($error)=@_;
- print $cgi->header, <<END;
-<HTML>
- <HEAD>
- <TITLE>Registration error</TITLE>
- </HEAD>
- <BODY BGCOLOR="#FFFFFF">
- <CENTER>
- <H4>Registration error</H4>
- </CENTER>
- <P><B>$error</B>
- <P>Hit the <I>Back</I> button in your web browser, correct this mistake,
- and submit the form again.
- </BODY>
-</HTML>
-END
-
- exit;
-
-}
diff --git a/fs_webdemo/register.html b/fs_webdemo/register.html
deleted file mode 100644
index acf9cff..0000000
--- a/fs_webdemo/register.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<HTML>
- <HEAD>
- <TITLE>
- Freeside - Billing and account administration software for ISPs
- </TITLE>
- </HEAD>
- <BODY BGCOLOR="#ffffff">
- <table>
- <tr><td>
- <A HREF="http://www.sisd.com/">
- <IMG BORDER=0 SRC="small-logo.gif" ALIGN=LEFT>
- </A>
- </td><td>
- <center><font color="#ff0000" size=7 size=+4>freeside demo registration</font></center>
- </td></tr>
- </table>
-<P>You will need to choose a username for access to the Freeside web demo.
-
-<P><FONT SIZE=+1 COLOR="#ff0000">A password
- and the URL for your demo will be emailed to you, so don't waste your
- time with non-deliverable addresses.</FONT>
-We will <B>not</B> give your email address to any third party,
- nor will we send you any unsolicited email (or in fact any email after the automatic registration).
- <FORM ACTION="register.cgi" METHOD="POST">
- <PRE>
-Freeside username: <INPUT TYPE="text" NAME="username" MAXLENGTH=16>
-
-Email address: <INPUT TYPE="text" NAME="email">
-</PRE>
-<BR><INPUT TYPE="Submit" VALUE="Register">
- </FORM>
- </BODY>
-</HTML>
diff --git a/fs_webdemo/registerd b/fs_webdemo/registerd
deleted file mode 100755
index 6314d0a..0000000
--- a/fs_webdemo/registerd
+++ /dev/null
@@ -1,192 +0,0 @@
-#!/usr/bin/perl -w
-#
-# $Id: registerd,v 1.8 2000-03-03 12:27:54 ivan Exp $
-
-use strict;
-use vars qw(
- $freeside_conf
- $mysql_data
- $datasrc $user $pass $x
- $dbh $sth
- @pw_set @saltset
- $header $msg
- );
- # $freeside_bin $freeside_test
- # $cgi $username $name $email $user_pw $crypt_pw
-#use CGI;
-#use CGI::Carp qw(fatalsToBrowser);
-use DBI;
-use Mail::Internet;
-use Mail::Header;
-use Date::Format;
-
-#$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-#$ENV{'SHELL'} = '/bin/sh';
-#$ENV{'IFS'} = " \t\n";
-#$ENV{'CDPATH'} = '';
-#$ENV{'ENV'} = '';
-#$ENV{'BASH_ENV'} = '';
-
-#$freeside_bin = '/home/freeside/bin/';
-#$freeside_test = '/home/freeside/test/';
-$freeside_conf = '/usr/local/etc/freeside/';
-
-$mysql_data = "/var/lib/mysql";
-
-$datasrc = 'DBI:mysql:http_auth';
-$user = "freeside";
-$pass = "maelcolm";
-
-#my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9', '(', ')', '#', '!', '.', ',' );
-#my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9' );
-@pw_set = ( 'a'..'z', '0'..'9' );
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-#die "not running as system user freeside"
-# unless $> == scalar(getpwnam('freeside'));
-die "not running as root user"
- unless $> == 0;
-
-$dbh = DBI->connect( $datasrc, $user, $pass, {
- 'AutoCommit' => 'true',
-} ) or die "DBI->connect error: $DBI::errstr\n";
-$x = $DBI::errstr; #silly; to avoid "used only once" warning
-
-while ( 1 ) {
-
- $SIG{HUP} = 'IGNORE';
- $SIG{INT} = 'IGNORE';
- $SIG{QUIT} = 'IGNORE';
- $SIG{TERM} = 'IGNORE';
- $SIG{TSTP} = 'IGNORE';
- $SIG{PIPE} = 'IGNORE';
-
- $sth = $dbh->prepare("LOCK TABLES mysql_auth WRITE");
- $sth->execute or die $sth->errstr;
-
- $sth = $dbh->prepare(
- 'SELECT * FROM mysql_auth WHERE status = "unconfigured"'
- );
- $sth->execute or die $sth->errstr;
- my $pending = $sth->fetchall_arrayref( {} );
-
- $sth = $dbh->prepare(
- 'UPDATE mysql_auth SET status = "locked" WHERE status = "unconfigured"'
- );
- $sth->execute or die $sth->errstr;
-
- $sth = $dbh->prepare("UNLOCK TABLES");
- $sth->execute or die $sth->errstr;
-
- #
-
- foreach my $row ( @{$pending} ) {
-
- my $username = $row->{'username'};
- my $email = $row->{'passwd'};
-
- system("/usr/bin/mysqladmin --user=$user --password=$pass ".
- "create demo_$username >/dev/null");
-
- system "cp -p $mysql_data/demo_template/* $mysql_data/demo_$username";
-
- mkdir "${freeside_conf}conf.DBI:mysql:demo_$username", 0755;
- system "cp -pr ${freeside_conf}conf.DBI:mysql:demo_template/* ".
- "${freeside_conf}conf.DBI:mysql:demo_$username";
-
- mkdir "${freeside_conf}counters.DBI:mysql:demo_$username", 0755;
- system "cp -p ${freeside_conf}counters.DBI:mysql:demo_template/* ".
- "${freeside_conf}counters.DBI:mysql:demo_$username";
- chown scalar(getpwnam('freeside')), scalar(getgrnam('freeside')),
- "${freeside_conf}counters.DBI:mysql:demo_$username";
-
- system "cp -p ${freeside_conf}dbdef.DBI:mysql:demo_template ".
- "${freeside_conf}dbdef.DBI:mysql:demo_$username";
-
- open(INVOICE_FROM, ">${freeside_conf}conf.DBI:mysql:demo_$username/invoice_from")
- or die "Can\'t open ${freeside_conf}conf.DBI:mysql:demo_$username/invoice_from: $!";
- print INVOICE_FROM "$email\n";
- close INVOICE_FROM;
-
- open(LPR, ">${freeside_conf}conf.DBI:mysql:demo_$username/lpr")
- or die "Can\'t open ${freeside_conf}conf.DBI:mysql:demo_$username/lpr: $!";
- print LPR "mail $email";
- close LPR;
-
- open(FROM, ">${freeside_conf}conf.DBI:mysql:demo_$username/registries/internic/from")
- or die "Can\'t open ${freeside_conf}conf.DBI:mysql:demo_$username/registries/internic/from: $!";
- print FROM "$email\n";
- close FROM;
-
- open(TO, ">${freeside_conf}conf.DBI:mysql:demo_$username/registries/internic/to")
- or die "Can\'t open ${freeside_conf}conf.DBI:mysql:demo_$username/registries/internic/to: $!";
- print TO "$email\n";
- close TO;
-
- open(SECRETS, ">${freeside_conf}secrets.demo_$username")
- or die "Can\'t open ${freeside_conf}secrets.demo_$username: $!";
- chown scalar(getpwnam('freeside')), scalar(getgrnam('freeside')),
- "${freeside_conf}secrets.demo_$username";
- chmod 0600, "${freeside_conf}secrets.demo_$username";
- print SECRETS "DBI:mysql:demo_$username\nfreeside\nmaelcolm\n";
- close SECRETS;
-
- open(MAPSECRETS, ">>${freeside_conf}mapsecrets")
- or die "Can\'t open ${freeside_conf}mapsecrets: $!";
- print MAPSECRETS "$username secrets.demo_$username\n";
- close MAPSECRETS;
-
- my $user_pw = join('',map($pw_set[ int(rand $#pw_set) ], (0..7) ) );
- my $crypt_pw =
- crypt($user_pw,$saltset[int(rand(64))].$saltset[int(rand(64))]);
-
- $sth = $dbh->prepare(
- qq(UPDATE mysql_auth SET passwd = "$crypt_pw", status = "done" WHERE username = "$username")
- );
- $sth->execute or die $sth->errstr;
-
- $ENV{SMTPHOSTS} = "localhost";
- $ENV{MAILADDRESS} = 'ivan-fsreg@sisd.com';
- $ENV{TZ} = "PST8PDT";
- $header = Mail::Header->new( [
- 'From: ivan-fsreg@sisd.com',
- "To: $email",
- 'Bcc: ivan-fsreg_bcc@sisd.com',
- 'Sender: ivan-fsreg@sisd.com',
- 'Reply-To: ivan-fsreg@sisd.com',
- #'Date: '. time2str("%a, %d %b %Y %X %z", time ),
- 'Date: '. time2str("%a, %d %b %Y %X ", time ). "-0800",
- 'Subject: Freeside demo information',
- ] );
- $msg = Mail::Internet->new(
- 'Header' => $header,
- 'Body' => [
- "Hello,\n",
- "\n",
- "Your sample Freeside database has been setup.\n",
- "\n",
- "Point your web browswer at http://freeside.sisd.com/ and use the following\n",
- "authentication information:\n",
- "\n",
- "Username: $username\n",
- "Password: $user_pw\n",
- "\n",
- "-- \n",
- "ivan\n",
- ]
- );
- $msg->smtpsend or die "Can\'t send registration email!";
-
- }
-
- $SIG{HUP} = 'DEFAULT';
- $SIG{INT} = 'DEFAULT';
- $SIG{QUIT} = 'DEFAULT';
- $SIG{TERM} = 'DEFAULT';
- $SIG{TSTP} = 'DEFAULT';
- $SIG{PIPE} = 'DEFAULT';
-
- sleep 5;
-
-}
-
diff --git a/fs_webdemo/registerd.Pg b/fs_webdemo/registerd.Pg
deleted file mode 100755
index f166846..0000000
--- a/fs_webdemo/registerd.Pg
+++ /dev/null
@@ -1,221 +0,0 @@
-#!/usr/bin/perl -w
-#
-# $Id: registerd.Pg,v 1.11 2001-10-24 15:29:30 ivan Exp $
-
-use strict;
-use vars qw(
- $freeside_conf
- $mysql_data
- $datasrc $user $pass $x
- $dbh $sth
- @pw_set @saltset
- $header $msg
- );
- # $freeside_bin $freeside_test
- # $cgi $username $name $email $user_pw $crypt_pw
-#use CGI;
-#use CGI::Carp qw(fatalsToBrowser);
-use DBI;
-use Mail::Internet;
-use Mail::Header;
-use Date::Format;
-
-#$ENV{'PATH'} ='/usr/local/bin:/usr/bin:/usr/ucb:/bin';
-#$ENV{'SHELL'} = '/bin/sh';
-#$ENV{'IFS'} = " \t\n";
-#$ENV{'CDPATH'} = '';
-#$ENV{'ENV'} = '';
-#$ENV{'BASH_ENV'} = '';
-
-#$freeside_bin = '/home/freeside/bin/';
-#$freeside_test = '/home/freeside/test/';
-$freeside_conf = '/usr/local/etc/freeside/';
-
-#$mysql_data = "/var/lib/mysql";
-
-$datasrc = 'DBI:mysql:http_auth';
-$user = "freeside";
-$pass = "maelcolm";
-
-#my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9', '(', ')', '#', '!', '.', ',' );
-#my(@pw_set)= ( 'a'..'z', 'A'..'Z', '0'..'9' );
-@pw_set = ( 'a'..'z', '0'..'9' );
-@saltset = ( 'a'..'z' , 'A'..'Z' , '0'..'9' , '.' , '/' );
-
-#die "not running as system user freeside"
-# unless $> == scalar(getpwnam('freeside'));
-die "not running as root user"
- unless $> == 0;
-
-$dbh = DBI->connect( $datasrc, $user, $pass, {
- 'AutoCommit' => 'true',
-} ) or die "DBI->connect error: $DBI::errstr\n";
-#$x = $DBI::errstr; #silly; to avoid "used only once" warning
-
-while ( 1 ) {
-
- $SIG{HUP} = 'IGNORE';
- $SIG{INT} = 'IGNORE';
- $SIG{QUIT} = 'IGNORE';
- $SIG{TERM} = 'IGNORE';
- $SIG{TSTP} = 'IGNORE';
- $SIG{PIPE} = 'IGNORE';
-
- $sth = $dbh->prepare("LOCK TABLES mysql_auth WRITE");
- $sth->execute or die $sth->errstr;
-
- $sth = $dbh->prepare(
- 'SELECT * FROM mysql_auth WHERE status = "unconfigured"'
- );
- $sth->execute or die $sth->errstr;
- my $pending = $sth->fetchall_arrayref( {} );
-
- $sth = $dbh->prepare(
- 'UPDATE mysql_auth SET status = "locked" WHERE status = "unconfigured"'
- );
- $sth->execute or die $sth->errstr;
-
- $sth = $dbh->prepare("UNLOCK TABLES");
- $sth->execute or die $sth->errstr;
-
- #
-
- foreach my $row ( @{$pending} ) {
-
- my $username = $row->{'username'};
- my $email = $row->{'passwd'};
-
- my $pdbh = DBI->connect( 'DBI:Pg:host=localhost;dbname=demo_template', 'freeside', 'maelcolm' )
- or do { &myerr("$username: ". $DBI::errstr); next; };
-
- my $psth = $pdbh->prepare("CREATE DATABASE demo_$username")
- or do { &myerr("$username: ". $pdbh->errstr); next; };
- $psth->execute()
- or do { &myerr("$username: ". $psth->errstr); next; };
-
- $pdbh->disconnect
- or do { &myerr("fatal: $DBI::errstr"); die; };
-
- open(PSQL,"|psql -U freeside demo_$username")
- or do { &myerr("|psql -U freeside demo_$username: $!"); next; };
- open(PSQLDATA, "</usr/local/etc/freeside/demo_template.Pg")
- or do { &myerr("/usr/local/etc/freeside/demo_template.Pg: $!"); next; };
- while(<PSQLDATA>) {
- print PSQL $_;
- }
- close PSQLDATA
- or do { &myerr("/usr/local/etc/freeside/demo_template.Pg: $!"); next; };
- close PSQL
- or do { &myerr("|psql -U freeside demo_$username: $!"); next; };
-
- mkdir "${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username", 0755;
- system "cp -pr ${freeside_conf}conf.DBI:Pg:host=localhost\\;dbname=demo_template/* ".
- "${freeside_conf}conf.DBI:Pg:host=localhost\\;dbname=demo_$username";
-
- mkdir "${freeside_conf}counters.DBI:Pg:host=localhost;dbname=demo_$username", 0755;
- system "cp -p ${freeside_conf}counters.DBI:Pg:host=localhost\\;dbname=demo_template/* ".
- "${freeside_conf}counters.DBI:Pg:host=localhost\\;dbname=demo_$username";
- chown scalar(getpwnam('freeside')), scalar(getgrnam('freeside')),
- "${freeside_conf}counters.DBI:Pg:host=localhost;dbname=demo_$username";
-
- system "cp -p ${freeside_conf}dbdef.DBI:Pg:host=localhost\\;dbname=demo_template ".
- "${freeside_conf}dbdef.DBI:Pg:host=localhost\\;dbname=demo_$username";
-
- open(INVOICE_FROM, ">${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/invoice_from")
- or die "Can\'t open ${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/invoice_from: $!";
- print INVOICE_FROM "$email\n";
- close INVOICE_FROM;
-
- open(LPR, ">${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/lpr")
- or die "Can\'t open ${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/lpr: $!";
- print LPR "mail $email";
- close LPR;
-
-# open(FROM, ">${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/registries/internic/from")
-# or die "Can\'t open ${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/registries/internic/from: $!";
-# print FROM "$email\n";
-# close FROM;
-#
-# open(TO, ">${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/registries/internic/to")
-# or die "Can\'t open ${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username/registries/internic/to: $!";
-# print TO "$email\n";
-# close TO;
-
- open(SECRETS, ">${freeside_conf}secrets.demo_$username")
- or die "Can\'t open ${freeside_conf}secrets.demo_$username: $!";
- chown scalar(getpwnam('freeside')), scalar(getgrnam('freeside')),
- "${freeside_conf}secrets.demo_$username";
- chmod 0600, "${freeside_conf}secrets.demo_$username";
- print SECRETS "DBI:Pg:host=localhost;dbname=demo_$username\nfreeside\nmaelcolm\n";
- close SECRETS;
-
- open(MAPSECRETS, ">>${freeside_conf}mapsecrets")
- or die "Can\'t open ${freeside_conf}mapsecrets: $!";
- print MAPSECRETS "$username secrets.demo_$username\n";
- close MAPSECRETS;
-
- my $user_pw = join('',map($pw_set[ int(rand $#pw_set) ], (0..7) ) );
- my $crypt_pw =
- crypt($user_pw,$saltset[int(rand(64))].$saltset[int(rand(64))]);
-
- $sth = $dbh->prepare(
- qq(UPDATE mysql_auth SET passwd = "$crypt_pw", status = "done" WHERE username = "$username")
- );
- $sth->execute or die $sth->errstr;
-
- #$ENV{SMTPHOSTS} = "localhost";
- $ENV{SMTPHOSTS} = "192.168.1.1";
- $ENV{MAILADDRESS} = 'ivan-fsreg@sisd.com';
- $ENV{TZ} = "PST8PDT";
- $header = Mail::Header->new( [
- 'From: ivan-fsreg@sisd.com',
- "To: $email",
- 'Bcc: ivan-fsreg_bcc@sisd.com',
- 'Sender: ivan-fsreg@sisd.com',
- 'Reply-To: ivan-fsreg@sisd.com',
- #'Date: '. time2str("%a, %d %b %Y %X %z", time ),
- 'Date: '. time2str("%a, %d %b %Y %X ", time ). "-0800",
- 'Subject: Freeside demo information',
- ] );
- $msg = Mail::Internet->new(
- 'Header' => $header,
- 'Body' => [
- "Hello,\n",
- "\n",
- "Your sample Freeside database has been setup.\n",
- "\n",
- "Your login and database will be automatically deleted in 1-2 months.\n",
- "\n",
- "Point your web browswer at http://freeside.sisd.com/ and use the following\n",
- "authentication information:\n",
- "\n",
- "Username: $username\n",
- "Password: $user_pw\n",
- "\n",
- "-- \n",
- "ivan\n",
- ]
- );
- $msg->smtpsend or die "Can\'t send registration email!";
-
- }
-
- $SIG{HUP} = 'DEFAULT';
- $SIG{INT} = 'DEFAULT';
- $SIG{QUIT} = 'DEFAULT';
- $SIG{TERM} = 'DEFAULT';
- $SIG{TSTP} = 'DEFAULT';
- $SIG{PIPE} = 'DEFAULT';
-
- sleep 5;
-
-}
-
-sub myerr {
- my $msg = shift;
- open(MAIL,"|mail ivan-fsdemoerr\@420.am");
- print MAIL $msg, "\n\n";
- print MAIL $msg, "\n\n";
- close MAIL;
-};
-
diff --git a/htetc/freeside-base.conf b/htetc/freeside-base.conf
deleted file mode 100644
index f8ebece..0000000
--- a/htetc/freeside-base.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-PerlModule HTML::Mason
-<Directory %%%FREESIDE_DOCUMENT_ROOT%%%>
-AuthName Freeside
-AuthType Basic
-AuthUserFile /usr/local/etc/freeside/htpasswd
-require valid-user
-<Files ~ (\.cgi|\.html)>
-AddHandler perl-script .cgi .html
-PerlHandler HTML::Mason
-</Files>
-<Perl>
-require "/usr/local/etc/freeside/handler.pl";
-</Perl>
-</Directory>
-
diff --git a/htetc/freeside-rt.conf b/htetc/freeside-rt.conf
deleted file mode 100644
index 1cb089b..0000000
--- a/htetc/freeside-rt.conf
+++ /dev/null
@@ -1,31 +0,0 @@
-<Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/NoAuth>
-<Limit GET POST>
-allow from all
-Satisfy any
-SetHandler perl-script
-PerlHandler HTML::Mason
-</Limit>
-</Directory>
-
-<Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/REST/1.0/NoAuth>
-<Limit GET POST>
-allow from all
-Satisfy any
-SetHandler perl-script
-PerlHandler HTML::Mason
-</Limit>
-</Directory>
-
-<DirectoryMatch "^%%%FREESIDE_DOCUMENT_ROOT%%%/rt/.*NoAuth/images">
-SetHandler None
-</DirectoryMatch>
-
-<Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/Ticket/Attachment>
-SetHandler perl-script
-PerlHandler HTML::Mason
-</Directory>
-
-<Directory %%%FREESIDE_DOCUMENT_ROOT%%%/rt/Search>
-SetHandler perl-script
-PerlHandler HTML::Mason
-</Directory>
diff --git a/htetc/handler.pl b/htetc/handler.pl
deleted file mode 100644
index ef3aed7..0000000
--- a/htetc/handler.pl
+++ /dev/null
@@ -1,351 +0,0 @@
-#!/usr/bin/perl
-#
-# This is a basic, fairly fuctional Mason handler.pl.
-#
-# For something a little more involved, check out session_handler.pl
-
-package HTML::Mason;
-
-# Bring in main Mason package.
-use HTML::Mason 1.1;
-
-# Bring in ApacheHandler, necessary for mod_perl integration.
-# Uncomment the second line (and comment the first) to use
-# Apache::Request instead of CGI.pm to parse arguments.
-use HTML::Mason::ApacheHandler;
-# use HTML::Mason::ApacheHandler (args_method=>'mod_perl');
-
-# Uncomment the next line if you plan to use the Mason previewer.
-#use HTML::Mason::Preview;
-
-use strict;
-
-###use Module::Refresh;###
-
-# List of modules that you want to use from components (see Admin
-# manual for details)
-#{ package HTML::Mason::Commands;
-# use CGI;
-#}
-
-# Create Mason objects
-#
-
-#my $parser = new HTML::Mason::Parser;
-#my $interp = new HTML::Mason::Interp (parser=>$parser,
-# comp_root=>'/var/www/masondocs',
-# data_dir=>'/usr/local/etc/freeside/masondata',
-# out_mode=>'stream',
-# );
-
-use vars qw($r);
-
-if ( %%%RT_ENABLED%%% ) {
- eval '
- use lib ( "/opt/rt3/local/lib", "/opt/rt3/lib" );
- use RT;
- use vars qw($Nobody $SystemUser);
- RT::LoadConfig();
- ';
- die $@ if $@;
-
-
-}
-
-
-my $ah = new HTML::Mason::ApacheHandler (
- #interp => $interp,
- #auto_send_headers => 0,
- comp_root=> [
- [ 'freeside' => '%%%FREESIDE_DOCUMENT_ROOT%%%' ],
- [ 'rt' => '%%%FREESIDE_DOCUMENT_ROOT%%%/rt' ],
- ],
- data_dir=>'/usr/local/etc/freeside/masondata',
- #out_mode=>'stream',
-
- #RT
- args_method => 'CGI',
- default_escape_flags => 'h',
- allow_globals => [qw(%session)],
- #autoflush => 1,
-);
-
-# Activate the following if running httpd as root (the normal case).
-# Resets ownership of all files created by Mason at startup.
-#
-#chown (Apache->server->uid, Apache->server->gid, $interp->files_written);
-
-sub handler
-{
- ($r) = @_;
-
- # If you plan to intermix images in the same directory as
- # components, activate the following to prevent Mason from
- # evaluating image files as components.
- #
- #return -1 if $r->content_type && $r->content_type !~ m|^text/|i;
-
- #rar
- { package HTML::Mason::Commands;
- use strict;
- use vars qw( $cgi $p $fsurl);
- use vars qw( %session );
- use CGI 2.47 qw(-private_tempfiles);
- #use CGI::Carp qw(fatalsToBrowser);
- use Date::Format;
- use Date::Parse;
- use Time::Local;
- use Time::Duration;
- use Tie::IxHash;
- use URI::Escape;
- use HTML::Entities;
- use JSON;
- use IO::Handle;
- use IO::File;
- use IO::Scalar;
- use Net::Whois::Raw qw(whois);
- if ( $] < 5.006 ) {
- eval "use Net::Whois::Raw 0.32 qw(whois)";
- die $@ if $@;
- }
- use Text::CSV_XS;
- use Spreadsheet::WriteExcel;
- use Business::CreditCard;
- use String::Approx qw(amatch);
- use Chart::LinesPoints;
- use Chart::Mountain;
- use Color::Scheme;
- use HTML::Widgets::SelectLayers 0.05;
- use Locale::Country;
- use FS;
- use FS::UID qw(cgisuidsetup dbh getotaker datasrc driver_name);
- use FS::Record qw(qsearch qsearchs fields dbdef);
- use FS::Conf;
- use FS::CGI qw(header menubar popurl rooturl table itable ntable idiot
- eidiot small_custview myexit http_header);
- use FS::UI::Web;
- use FS::Msgcat qw(gettext geterror);
- use FS::Misc qw( send_email send_fax states_hash state_label );
- use FS::Report::Table::Monthly;
- use FS::TicketSystem;
-
- use FS::agent;
- use FS::agent_type;
- use FS::domain_record;
- use FS::cust_bill;
- use FS::cust_bill_pay;
- use FS::cust_credit;
- use FS::cust_credit_bill;
- use FS::cust_main qw(smart_search);
- use FS::cust_main_county;
- use FS::cust_pay;
- use FS::cust_pkg;
- use FS::cust_refund;
- use FS::cust_svc;
- use FS::nas;
- use FS::part_bill_event;
- use FS::part_pkg;
- use FS::part_referral;
- use FS::part_svc;
- use FS::part_svc_router;
- use FS::part_virtual_field;
- use FS::pay_batch;
- use FS::pkg_svc;
- use FS::port;
- use FS::queue qw(joblisting);
- use FS::raddb;
- use FS::session;
- use FS::svc_acct;
- use FS::svc_acct_pop qw(popselector);
- use FS::svc_domain;
- use FS::svc_forward;
- use FS::svc_www;
- use FS::router;
- use FS::addr_block;
- use FS::svc_broadband;
- use FS::svc_external;
- use FS::type_pkgs;
- use FS::part_export;
- use FS::part_export_option;
- use FS::export_svc;
- use FS::msgcat;
- use FS::rate;
- use FS::rate_region;
- use FS::rate_prefix;
- use FS::payment_gateway;
- use FS::agent_payment_gateway;
- use FS::XMLRPC;
- use FS::payby;
- use FS::cdr;
- use FS::inventory_class;
- use FS::inventory_item;
- use FS::pkg_class;
- use FS::access_user;
- use FS::access_group;
- use FS::access_usergroup;
- use FS::access_groupagent;
- use FS::access_right;
- use FS::AccessRight;
- use FS::svc_phone;
-
- if ( %%%RT_ENABLED%%% ) {
- eval '
- use RT::Tickets;
- use RT::Transactions;
- use RT::Users;
- use RT::CurrentUser;
- use RT::Templates;
- use RT::Queues;
- use RT::ScripActions;
- use RT::ScripConditions;
- use RT::Scrips;
- use RT::Groups;
- use RT::GroupMembers;
- use RT::CustomFields;
- use RT::CustomFieldValues;
- use RT::ObjectCustomFieldValues;
-
- use RT::Interface::Web;
- use MIME::Entity;
- use Text::Wrapper;
- use CGI::Cookie;
- use Time::ParseDate;
- use HTML::Scrubber;
- use Text::Quoted;
- ';
- die $@ if $@;
- }
-
- *CGI::redirect = sub {
- my( $self, $location ) = @_;
- use vars qw($m);
-
- # false laziness w/below
- if ( defined(@DBIx::Profile::ISA) ) { #profiling redirect
-
- my $page =
- qq!<HTML><BODY>Redirect to <A HREF="$location">$location</A>!.
- '<BR><BR><PRE>'.
- ( UNIVERSAL::can(dbh, 'sprintProfile')
- ? encode_entities(dbh->sprintProfile())
- : 'DBIx::Profile missing sprintProfile method;'.
- 'unpatched or too old?' ).
- #"\n\n". &sprintAutoProfile(). '</PRE>'.
- "\n\n". '</PRE>'.
- '</BODY></HTML>';
- dbh->{'private_profile'} = {};
- return $page;
-
- } else { #normal redirect
-
- $m->redirect($location);
- '';
-
- }
-
- };
-
- unless ( $HTML::Mason::r->filename =~ /\/rt\/.*NoAuth/ ) { #RT
- $cgi = new CGI;
- &cgisuidsetup($cgi);
- #&cgisuidsetup($r);
- $p = popurl(2);
- $fsurl = rooturl();
- }
-
- sub include {
- use vars qw($m);
- $m->scomp(@_);
- }
-
- sub redirect {
- my( $location ) = @_;
- use vars qw($m);
- $m->clear_buffer;
- #false laziness w/above
- if ( defined(@DBIx::Profile::ISA) ) { #profiling redirect
-
- $m->print(
- qq!<HTML><BODY>Redirect to <A HREF="$location">$location</A>!.
- '<BR><BR><PRE>'.
- ( UNIVERSAL::can(dbh, 'sprintProfile')
- ? encode_entities(dbh->sprintProfile())
- : 'DBIx::Profile missing sprintProfile method;'.
- 'unpatched or too old?' ).
- #"\n\n". &sprintAutoProfile(). '</PRE>'.
- "\n\n". '</PRE>'.
- '</BODY></HTML>'
- );
- dbh->{'private_profile'} = {};
-
- #whew. removing this is all that's needed to fix the annoying
- #blank-page-instead-of-profiling-redirect-when-called-from-an-include
- #bug triggered by mason 1.32
- #my $rv = $m->abort(200);
-
- } else { #normal redirect
-
- $m->redirect($location);
-
- }
-
- }
-
- } # end package HTML::Mason::Commands;
-
- ###Module::Refresh->refresh;###
-
- $r->content_type('text/html');
- #eorar
-
- my $headers = $r->headers_out;
- $headers->{'Cache-control'} = 'no-cache';
- #$r->no_cache(1);
- $headers->{'Expires'} = '0';
-
-# $r->send_http_header;
-
- #$ah->interp->remove_escape('h');
-
- if ( $r->filename =~ /\/rt\// ) { #RT
- #warn "processing RT file". $r->filename. "; escaping for RT\n";
-
- # MasonX::Request::ExtendedCompRoot
- #$ah->interp->comp_root( '/rt'. $ah->interp->comp_root() );
-
- $ah->interp->set_escape( h => \&RT::Interface::Web::EscapeUTF8 );
-
- local $SIG{__WARN__};
- local $SIG{__DIE__};
-
- RT::Init();
-
- # We don't need to handle non-text, non-xml items
- return -1 if defined( $r->content_type ) && $r->content_type !~ m!(^text/|\bxml\b)!io;
-
- } else {
- $ah->interp->set_escape( 'h' => sub { ${$_[0]}; } );
- }
-
- my %session;
- my $status;
- eval { $status = $ah->handle_request($r); };
-#!!
-# if ( $@ ) {
-# $RT::Logger->crit($@);
-# }
-
- undef %session;
-
-#!!
-# if ($RT::Handle->TransactionDepth) {
-# $RT::Handle->ForceRollback;
-# $RT::Logger->crit(
-#"Transaction not committed. Usually indicates a software fault. Data loss may have occurred"
-# );
-# }
-
- $status;
-}
-
-1;
diff --git a/httemplate/browse/pay_batch.cgi b/httemplate/browse/pay_batch.cgi
deleted file mode 100755
index 66c86d6..0000000
--- a/httemplate/browse/pay_batch.cgi
+++ /dev/null
@@ -1,54 +0,0 @@
-<!-- mason kludge -->
-<%= include("/elements/header.html","Credit card batches", menubar( 'Main Menu' => $p,)) %>
-
-<BR><BR>
-
-<%
- my %statusmap = ('I'=>'In Transit', 'O'=>'Open', 'R'=>'Resolved');
-%>
-
-<BR>
-<%= &table() %>
- <TR>
- <TH>Batch</TH>
- <TH>First Download</TH>
- <TH>Last Upload</TH>
- <TH>Item Count</TH>
- <TH>Amount</TH>
- <TH>Status</TH>
- </TR>
-
-<%
-foreach my $pay_batch ( sort { $b->batchnum <=> $a->batchnum }
- qsearch('pay_batch', {} )
-) {
-
- my $statement = "SELECT SUM(amount) from cust_pay_batch WHERE batchnum=" .
- $pay_batch->batchnum;
- my $sth = dbh->prepare($statement) or die dbh->errstr. "doing $statement";
- $sth->execute or die "Error executing \"$statement\": ". $sth->errstr;
- my $total = $sth->fetchrow_arrayref->[0];
-
- my $c_statement = "SELECT COUNT(*) from cust_pay_batch WHERE batchnum=" .
- $pay_batch->batchnum;
- my $c_sth = dbh->prepare($c_statement)
- or die dbh->errstr. "doing $c_statement";
- $c_sth->execute or die "Error executing \"$c_statement\": ". $c_sth->errstr;
- my $cards = $c_sth->fetchrow_arrayref->[0];
-
-%>
-
- <TR>
- <TD><A HREF="cust_pay_batch.cgi?<%= $pay_batch->batchnum %>"><%= $pay_batch->batchnum %></TD>
- <TD><%= $pay_batch->download ? time2str("%a %b %e %T %Y", $pay_batch->download) : '' %></TD>
- <TD><%= $pay_batch->upload ? time2str("%a %b %e %T %Y", $pay_batch->upload) : '' %></TD>
- <TD><%= $cards %></TD>
- <TD align="right"><%= $total %></TD>
- <TD><%= $statusmap{$pay_batch->status} %></TD>
- </TR>
-
-<% } %>
-
- </TABLE>
- </BODY>
-</HTML>
diff --git a/init.d/freeside-init b/init.d/freeside-init
deleted file mode 100644
index 56733bd..0000000
--- a/init.d/freeside-init
+++ /dev/null
@@ -1,76 +0,0 @@
-#! /bin/sh
-#
-# chkconfig: 345 86 16
-# description: Freeside daemons
-
-QUEUED_USER=%%%QUEUED_USER%%%
-
-SELFSERVICE_USER=%%%SELFSERVICE_USER%%%
-SELFSERVICE_MACHINES="%%%SELFSERVICE_MACHINES%%%"
-
-#INSTALLSCRIPT/INSTALLSITEBIN from Makefile.PL
-PATH="$PATH:/usr/local/bin"
-export PATH
-
-case "$1" in
- start)
- # Start daemons.
- echo -n "Starting freeside-queued: "
- freeside-queued $QUEUED_USER
- echo "done."
-
- #echo -n "Starting freeside-sqlradius-radacctd: "
- #freeside-sqlradius-radacctd $QUEUED_USER
- #echo "done."
-
- echo -n "Starting freeside-prepaidd: "
- freeside-prepaidd $QUEUED_USER
- echo "done."
-
- for MACHINE in $SELFSERVICE_MACHINES; do
- echo -n "Starting freeside-selfservice-server to $MACHINE: "
- freeside-selfservice-server $SELFSERVICE_USER $MACHINE
- echo "done."
- done
-
- ;;
- stop)
- # Stop daemons.
- echo -n "Stopping freeside-queued: "
- kill `cat /var/run/freeside-queued.pid`
- echo "done."
-
- echo -n "Stopping freeside-sqlradius-radacctd: "
- kill `cat /var/run/freeside-sqlradius-radacctd.pid`
- echo "done."
-
- echo -n "Stopping freeside-prepaidd: "
- kill `cat /var/run/freeside-prepaidd.pid`
- echo "done."
-
- if [ -e /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid ]
- then
- echo -n "Stopping (old) freeside-selfservice-server: "
- kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid`
- rm /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid
- fi
-
- for MACHINE in $SELFSERVICE_MACHINES; do
- echo -n "Stopping freeside-selfservice-server to $MACHINE: "
- kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid`
- echo "done."
- done
-
- ;;
-
- restart)
- $0 stop
- $0 start
- ;;
- *)
- echo "Usage: freeside {start|stop|restart}"
- exit 1
-esac
-
-exit 0
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/Changes b/install/5.005/DBD-Pg-1.22-fixvercmp/Changes
deleted file mode 100644
index c345628..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/Changes
+++ /dev/null
@@ -1,352 +0,0 @@
-1.22 Wed Mar 26 22:33:44 EST 2003
- - Win32 compile fix for snprintf [Joe Spears]
- - Fix memory allocation problem in bytea escaping [Barrie Slaymaker]
- - Add utf8 support [Dominic Mitchell <dom@semantico.com>]
- - Transform Perl arrays into PostgreSQL arrays [Alexey Slynko]
- - Fix for foreign_key_info() [Keith Keller]
- - Fix PG_TEXT parameter binding
- - Doc cleanups [turnstep]
- - Fix warning from func($table, 'table_attributes') [turnstep]
- - Added suppport for schemas [turnstep]
- - Fix binary to a bytea field conversion [Chris Dunlop <chris@onthe.net.au>]
-1.21 Sun Jan 12 21:00:44 EST 2003
- - System tables no longer returned by tables(). [Dave Rolsky]
- - Fix table_attributes to handle removal of pg_relcheck in 7.3,
- from Ian Barwick <barwick@gmx.net>
- - Properly reset transaction status after failed transaction when
- autocommit is off. Properly report transaction failure message.
- Kai <kai@xs4all.nl>
- - New pg_bool_tf database handle that when set to true booleans are
- returned as 't'/'f' rather than 1/0.
-
-1.20 Wed Nov 27 16:19:26 2002
- - Maintenance transferred to GBorg,
- http://gborg.postgresql.org/project/dbdpg/projdisplay.php. Incremented
- version number to reflect new management. [Bruce Momjian]
- - README cleaned up. [Bruce Momjian]
- - Added t/15funct.t, a series of tests that determine if the meta data
- is working. [Thomas Lowery]
- - Added implementations of column_info() and table_info(), and
- primary_key_info(). [Thomas Lowery]
- - The POD formatting was cleaned up. [David Wheeler]
- - The preparser was updated to better handle escaped characters. [Rudy
- Lippan]
- - Removed redundant use of strlen() in pg_error() (Jason E. Stewart).
- - Test suite cleaned up, converted to use Test::More, and updated to use
- standard DBI environment variables for connecting to a test database.
- [Jason E. Stewart]
- - Added eg/lotest.pl as a demonstration of using large objects in buffers
- rather than files. Contributed by Garth Webb.
- - Added LISTEN/NOTIFY functionality. Congributed by Alex Pilosov.
- - Added constants for common PostgreSQL data types, plus simple tests to
- make sure that they work. These are exportable via "use DBD::Pg
- qw(:pg_types);". [David Wheeler]
- - Deprecatated the undocumented (and invalid) use of SQL_BINARY in
- bind_param() and documented the correct approach: "bind_param($num,
- $val { pg_type => PG_BYTEA });". Use of SQL_BINARY in bind_param() will
- now issue a warning if $h->{Warn} is true. [David Wheeler]
- - Removed invalid (and broken) support for SQL_BINARY in quote(). [David
- Wheeler]
- - Added App::Info::RDBMS::PostgreSQL to the distribution (but it won't
- be installed) to help Makefile.PL find the PostgreSQL include and
- library files. [David Wheeler]
- - Fixed compile-time warnings. [David Wheeler and Jason E. Stewart]
-
-2002-04-27 Jeffrey W. Baker <jwbaker@acm.org>
-
- - dbdimp.c: Add default at end of switch statement for pg_type attrib.
- - t/13pgtype.t: test for above.
-
-2002-04-09 Jeffrey W. Baker <jwbaker@acm.org>
-
- - Pg.pm, dbdimp.c: Applied patch from
- Thomas A. Lowery <tlowery@stlowery.net> concerning metadata
- in table_info and so forth.
-
-2002-03-06 Jeffrey W. Baker <jwbaker@acm.org>
- - Pg.pm (quote): Applied patch from David Wheeler <david@wheeler.net>
- to simplfiy and speed up quoting.
- - t/11quoting.t: Tests for above patch.
- - t/12placeholders.t: Tests for placeholder parsing in quoted strings.
-
-2002-03-06 Jeffrey W. Baker
- - Version 1.10 uploaded to CPAN.
-
-1.01 Jun 27, 2001
- - fixed core dump when trying to use a BYTEA value with
- a byte outside 0..127 Alex Pilosov <alex@pilosoft.com>
-
-1.00 May 27, 2001
- - Fetching all records now resets Active flag as it should.
-
-0.99 May 24, 2001
- - fix the segmentation fault in pg_error.
-
-0.98 Apr 25, 2001
- - bug-fix for core-dump after any failed function call.
- - applied patch from Alex Pilosov <alex@pilosoft.com>
- which adds support for the datatype bytea
-
-0.97 Apr 20, 2001
- - fix bug in connect method, which erroneously set the userid
- and the password to the environment variables DBI_USER and
- DBI_PASS.
- - applied patch from Jan-Pieter Cornet <john@pc.xs4all.nl>,
- which removed the special handling of a backslash when
- used for octal presentation. Now a backslash always will
- be escaped.
-
-0.96 Apr 09, 2001
- - remove memory-leak in ping function, bug-fix
- from Doug Perham <dperham@wgate.com>
- - correct the recognition of primary keys in
- table_attributes(). Patch from Brian Powell
- <brian@nicklebys.com>.
- - applied patch from David D. Kilzer <ddkilzer@lubricants-oil.com>
- which fixes a segmentation fault in DBD::pg::blob_read() when
- reading LOBs that required perl to reallocate space for the
- variable holding the scalar value
- - updated test.pl to create a test blob larger than 256 bytes
- (now 128 Kbytes)
- - apply patch from Tom Lane, which fixes a seg-fault when
- inserting large amounts of text.
- - apply patch from Peter Haworth pmh@edison.ioppublishing.com,
- which removes the newlines from the error messages and which
- quotes date placeholders.
-
-0.95 Jul 10, 2000
- - add Win32 port from Bob Kline <bkline@rksystems.com>.
-
-0.94 Jul 07, 2000
- - applied patch from Rudy Lippan <almighty@randomc.com>
- which fixes a memory-leak with failed connections.
- - applied patch from Hein Roehrig <hein@acm.org>
- which fixes a bug with escaping a backslash except for
- octal presentation
- - applied patch from Francis J. Lacoste <francis.lacoste@iNsu.COM
- which fixes a segmentation fault when all binded parameters are NULL
- - adapt test.pl to avoid warnings with postgresql-7.0
- - added support for 'COPY FROM STDIN' and 'COPY TO STDOUT'
- - added patch from Mark Stosberg <mark@summersault.com>
- to enhance the table_attributes subroutine
-
-0.93 Sep 29, 1999
- - it is required now to set the environment variables POSTGRES_INCLUDE
- and POSTGRES_LIB for compiling the module.
- - add Win32 port from Bob Kline <bkline@rksystems.com>.
- - support for all large-object functions via the func
- interface.
- - fixed bug with placeholders and casts spotted by
- mschout@gkg.net
- - replaced the method attributes by the method table_attributes,
- from Scott Williams <scott@james.com>.
- - fix type definitions for type_info_all().
- bug spotted by "carlos" <emarcet@intramed.net.ar>.
- - now the Pg-specific quote() method also evaluates the
- data-type paramater.
-
-0.92 Jun 16, 1999
- - proposal from Philip Warner <pjw@rhyme.com.au>:
- increase BUFSIZE from 1024 to 32768 in order to improve
- I/O performance.
- - bug-fix in Makefile.PL for $POSTGRES_HOME not defined
- spotted by mdalphin@amgen.com (Mark Dalphin)
- - bug-fix for data-type datetime in type_info_all
- spotted by Alan Grover <awgrover@iconnect-inc.com>
- - bug-fix for escaped 's spotted by Hankin <hankin@consultco.com>
- - removed 'large objects' related tests from test.pl
-
-0.91 Feb 14, 1999
- - removed restriction for commercial use in copyright
- - corrected DATA_TYPE in type_info_all()
-
-0.90 Jan 15, 1998
- - discard parameter authtype from connect string
- - remove work-around for bug in the large object
- interface of postgresql
-
-0.89 Nov 05, 1998
- - bug-fix from Jan Iven <j.iven@rz.uni-sb.de>:
- fix problem with quoting Null in bind variables.
-
-0.88 Oct 10, 1998
- - fixed blob_read
- - suppressed warning when testing DBI::errstr
-
-0.87 Sep 05, 1998
- - Pg.xs adapted to Driver.xst from DBI-1.0
- - major rewrite of module documentation
- - major rewrite of the test script
- - use built-in DBI method for $dbh->do
- - add macro dHTR in order to avoid compile errors
- with threaded perl5.005
- - renamed attribute AutoEscape to pg_auto_escape
- - renamed attribute SIZE to pg_size
- - new attribute pg_type
- - added support for DBI->data_sources($driver)
- - added support for $dbh->table_info
- - blob_read documented and added to test.pl
- - added support for attr parameter in bind_param()
-
-0.86 Aug 21, 1998
- - added /usr/lib/ to search path for libpq.
- - added ChopBlanks, patch from
- Victor Krasinsky <victor@rdovira.lviv.ua>
- - changed test.pl to test multiple database handles
-
-0.85 July 19, 1998
- - non-printable characters in parameters will not be
- converted to '.'. They are passed unchanged to the
- database.
-
-0.84 July 18, 1998
- - bug-fix from Max Cohan <mcohan@adnc.net>:
- check for \xxx presentation before escaping backslash
- in parameters.
- - introduce new database handle attribute AutoEscape, which
- controls escaping of quotes and backslashes in parameters.
- When set to on, all quotes except at the beginning and
- at the end of a line will be escaped and all backslashes
- except when used to indicate an octal presentation (\xxx)
- will be escaped. Default of AutoEscape is on.
-
-0.83 July 10, 1998
- - bug-fix from Max Cohan <mcohan@adnc.net>:
- using traces together with undef in place-holders dumped
- core.
-
-0.82 June 20, 1998
- - bug-fix from Matthew Lenz <matthew@nocturnal.org>:
- corrected include path in Makefile.PL .
- - added 'use strict;' to test.pl
-
-0.81 June 13, 1998
- - bug-fix from Rolf Grossmann <grossman@securitas.net>:
- undefined parameters in an execute statement will be
- translated from 'undef' to 'NULL'. Also every parameter
- for bind_param() will be quoted by default (escape quote
- and backslash). Appropriate tests have been added to test.pl.
- - change ping method to use libpq-interface.
-
-0.80 June 07, 1998
- - adapted to postgresql-6.4:
- the backend protocol has changed, which needs an adapted
- ping method. A ping-test has been added to the test-script.
- Also some type identifiers have changed.
-
-0.73 June 03, 1998
- - changed include directives in Makefile.PL from
- archlib to installarchlib and from sitearch to
- installsitearch (Tony.Curtis@vcpc.univie.ac.at).
- - applied patch from Junio Hamano <junio@twinsun.com>
- quote method also doubles backslash.
-
-0.72 April 20, 1998
- - applied patch from Michael J Schout <mschout@gkg.net>
- which fixed the bug with queries containing the cast
- operator.
- - applied patch from "Irving Reid" <irving@tor.securecomputing.com>
- which fixed a memory leak.
-
-0.71 April 04, 1998
- - applied patch from "Irving Reid"
- <irving@tor.securecomputing.com> which fixed the
- the problem with the InactiveDestroy message.
-
-0.70 March 28, 1998
- - linking again with the shared version of libpq
- due to problems on several operating systems.
-
-0.69 March 6, 1998
- - expanded the search path for include files
- - module is now linked with static libpq.a
-
-0.68 March 3, 1998
- - return to UNIX domain sockets in test-scripts
-
-0.67 February 21, 1998
- - remove part of Driver.xst due to compile
- error on some systems.
-
-0.66 February 19, 1998
- - remove defines in Pg.h so that
- it compiles also with postgresql-6.2.1
- - changed ping method: set RaiseError=0
-
-0.65 February 14, 1998
- - adapted to changes in DBI-0.91, so that the
- default setting for AutoCommit and PrintError is
- again conformant to the DBI specs.
-
-0.64 February 01, 1998
- - changed syntax of data_source (ODBC-conformant):
- 'dbi:Pg:dbname=dbname;host=host;port=port'
- !!! PLEASE ADAPT YOUR SCRIPTS !!!
- - implemented place-holders
- - implemented ping-method
- - added support for $dbh->{RaiseError} and $dbh->{PrintError},
- note: DBI-default for PrintError is on !
- - allow commit and rollback only if AutoCommit = off
- - added documentation for $dbh->tables;
- - new method to get meta-information about a given table:
- $dbh->DBD::Pg::db::attributes($table);
- - host-parameter in test.pl is set explicitly to localhost
-
-0.63 October 05, 1997
- - adapted to PostgreSQL-6.2:
- o $sth->rows as well as $sth->execute
- and $sth->do return the number of
- affected rows even for non-Select
- statements.
- o support for password authorization added,
- please check the man-page for pg_passwd.
- - the data_source parameter of the connect
- method accepts two additional parameters
- which are treated as host and port:
- DBI->connect("dbi:Pg:dbname:host:port", "uid", "pwd")
- - support for AutoCommit, please read the
- module documentation for impacts on your
- scripts !
- - more perl-ish handling of data type bool,
- please read the module documentation for
- impacts on your scripts !
-
-0.62 August 26, 1997
- - added blobs/README
-
-0.61 August 23, 1997
- - adapted to DBI-0.89/Driver.xst
- - added support for blob_read
-
-0.52 August 15, 1997
- - added support for literal $sth->{'TYPE'},
- pg_type.pl / pg_type.pm.
-
-0.51 August 12, 1997
- - changed attributes to be DBI conformant:
- o OID_STATUS to pg_oid_status
- o CMD_STATUS to pg_cmd_status
-
-0.5 August 05, 1997
- - support for user authentication
- - support for bind_columns
- - added $dbh->tables
-
-0.4 Jun 24, 1997
- - adapted to DBI-0.84:
- o new syntax for DBI->connect !
- o execute returns 0E0 -> n for SELECT stmt
- -1 for non SELECT stmt
- -2 on error
- - new attribute $sth->{'OID_STATUS'}
- - new attribute $sth->{'CMD_STATUS'}
-
-0.3 Apr 24, 1997
- - bug fix release, ( still alpha ! )
-
-0.2 Mar 13, 1997
- - complete rewrite, ( still alpha ! )
-
-0.1 Feb 15, 1997
- - creation, ( totally pre-alpha ! )
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/MANIFEST b/install/5.005/DBD-Pg-1.22-fixvercmp/MANIFEST
deleted file mode 100644
index 7d1b700..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/MANIFEST
+++ /dev/null
@@ -1,38 +0,0 @@
-Changes
-MANIFEST
-Makefile.PL
-Pg.h
-Pg.pm
-Pg.xs
-README
-README.win32
-dbd-pg.pod
-dbdimp.c
-dbdimp.h
-eg/ApacheDBI.pl
-eg/lotest.pl
-eg/notify_test.patch
-t/00basic.t
-t/01connect.t
-t/01constants.t
-t/01setup.t
-t/02prepare.t
-t/03bind.t
-t/04execute.t
-t/05fetch.t
-t/06disconnect.t
-t/07reuse.t
-t/08txn.t
-t/09autocommit.t
-t/11quoting.t
-t/12placeholders.t
-t/13pgtype.t
-t/15funct.t
-t/99cleanup.t
-t/lib/App/Info.pm
-t/lib/App/Info/Handler.pm
-t/lib/App/Info/Handler/Prompt.pm
-t/lib/App/Info/RDBMS.pm
-t/lib/App/Info/RDBMS/PostgreSQL.pm
-t/lib/App/Info/Request.pm
-t/lib/App/Info/Util.pm
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/Makefile.PL b/install/5.005/DBD-Pg-1.22-fixvercmp/Makefile.PL
deleted file mode 100644
index 0633280..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/Makefile.PL
+++ /dev/null
@@ -1,83 +0,0 @@
-
-# $Id: Makefile.PL,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-use ExtUtils::MakeMaker;
-use Config;
-use strict;
-
-use DBI 1.00;
-use DBI::DBD;
-
-my $lib;
-BEGIN {
- my %sep = (MacOS => ':',
- MSWin32 => '\\',
- os2 => '\\',
- VMS => '\\',
- NetWare => '\\',
- dos => '\\');
- my $s = $sep{$^O} || '/';
- $lib = join $s, 't', 'lib';
-}
-
-use lib $lib;
-print "Configuring Pg\n";
-print "Remember to actually read the README file !\n";
-
-my $POSTGRES_INCLUDE;
-my $POSTGRES_LIB;
-
-if ((!$ENV{POSTGRES_INCLUDE} or !$ENV{POSTGRES_LIB}) and !$ENV{POSTGRES_HOME}) {
- # Use App::Info to get the data we need.
- require App::Info::RDBMS::PostgreSQL;
- require App::Info::Handler::Prompt;
- my $p = App::Info::Handler::Prompt->new;
- my $pg = App::Info::RDBMS::PostgreSQL->new(on_unknown => $p);
- $POSTGRES_INCLUDE = $pg->inc_dir;
- $POSTGRES_LIB = $pg->lib_dir;
-} elsif ((!$ENV{POSTGRES_INCLUDE} or !$ENV{POSTGRES_LIB}) and $ENV{POSTGRES_HOME}) {
- $POSTGRES_INCLUDE = "$ENV{POSTGRES_HOME}/include";
- $POSTGRES_LIB = "$ENV{POSTGRES_HOME}/lib";
-} else {
- $POSTGRES_INCLUDE = "$ENV{POSTGRES_INCLUDE}";
- $POSTGRES_LIB = "$ENV{POSTGRES_LIB}";
-}
-
-my $os = $^O;
-print "OS: $os\n";
-
-my $dbi_arch_dir;
-if ($os eq 'MSWin32') {
- $dbi_arch_dir = "\$(INSTALLSITEARCH)/auto/DBI";
-} else {
- $dbi_arch_dir = dbd_dbi_arch_dir();
-}
-
-my %opts = (
- NAME => 'DBD::Pg',
- VERSION_FROM => 'Pg.pm',
- INC => "-I$POSTGRES_INCLUDE -I$dbi_arch_dir",
- OBJECT => "Pg\$(OBJ_EXT) dbdimp\$(OBJ_EXT)",
- LIBS => ["-L$POSTGRES_LIB -lpq"],
- AUTHOR => 'http://gborg.postgresql.org/project/dbdpg/projdisplay.php',
- ABSTRACT => 'PostgreSQL database driver for the DBI module',
- PREREQ_PM => { 'Test::Simple' => 0.17 }, # Need Test::More
-);
-
-if ($os eq 'hpux') {
- my $osvers = $Config{osvers};
- if ($osvers < 10) {
- print "Warning: Forced to build static not dynamic on $os $osvers.\a\n";
- $opts{LINKTYPE} = 'static';
- }
-}
-
-if ($Config{dlsrc} =~ /dl_none/) {
- $opts{LINKTYPE} = 'static';
-}
-
-WriteMakefile(%opts);
-
-exit(0);
-
-# end of Makefile.PL
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.h b/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.h
deleted file mode 100644
index b77a9f8..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- $Id: Pg.h,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
- Copyright (c) 1997,1998,1999,2000 Edmund Mergl
- Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
-
- You may distribute under the terms of either the GNU General Public
- License or the Artistic License, as specified in the Perl README file.
-
-*/
-
-
-#ifdef WIN32
-static int errno;
-#endif
-
-#include "libpq-fe.h"
-
-#ifdef NEVER
-#include<sys/stat.h>
-#include "libpq/libpq-fs.h"
-#endif
-#ifndef INV_READ
-#define INV_READ 0x00040000
-#endif
-#ifndef INV_WRITE
-#define INV_WRITE 0x00020000
-#endif
-
-#ifdef BUFSIZ
-#undef BUFSIZ
-#endif
-/* this should improve I/O performance for large objects */
-#define BUFSIZ 32768
-
-
-#define NEED_DBIXS_VERSION 93
-
-#include <DBIXS.h> /* installed by the DBI module */
-
-#include "dbdimp.h" /* read in our implementation details */
-
-#include <dbd_xsh.h> /* installed by the DBI module */
-
-
-/* end of Pg.h */
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.pm
deleted file mode 100644
index 284e563..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.pm
+++ /dev/null
@@ -1,1913 +0,0 @@
-
-# $Id: Pg.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-#
-# Copyright (c) 1997,1998,1999,2000 Edmund Mergl
-# Copyright (c) 2002 Jeffrey W. Baker
-# Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
-#
-# You may distribute under the terms of either the GNU General Public
-# License or the Artistic License, as specified in the Perl README file.
-
-
-require 5.004;
-
-$DBD::Pg::VERSION = '1.22';
-
-{
- package DBD::Pg;
-
- use DBI ();
- use DynaLoader ();
- use Exporter ();
- @ISA = qw(DynaLoader Exporter);
-
- %EXPORT_TAGS = (
- pg_types => [ qw(
- PG_BOOL PG_BYTEA PG_CHAR PG_INT8 PG_INT2 PG_INT4 PG_TEXT PG_OID
- PG_FLOAT4 PG_FLOAT8 PG_ABSTIME PG_RELTIME PG_TINTERVAL PG_BPCHAR
- PG_VARCHAR PG_DATE PG_TIME PG_DATETIME PG_TIMESPAN PG_TIMESTAMP
- )]);
-
- Exporter::export_ok_tags('pg_types');
-
- require_version DBI 1.00;
-
- bootstrap DBD::Pg $VERSION;
-
- $err = 0; # holds error code for DBI::err
- $errstr = ""; # holds error string for DBI::errstr
- $drh = undef; # holds driver handle once initialized
-
- sub driver{
- return $drh if $drh;
- my($class, $attr) = @_;
-
- $class .= "::dr";
-
- # not a 'my' since we use it above to prevent multiple drivers
-
- $drh = DBI::_new_drh($class, {
- 'Name' => 'Pg',
- 'Version' => $VERSION,
- 'Err' => \$DBD::Pg::err,
- 'Errstr' => \$DBD::Pg::errstr,
- 'Attribution' => 'PostgreSQL DBD by Edmund Mergl',
- });
-
- $drh;
- }
-
- ## Used by both the dr and db packages
- sub pg_server_version {
- my $dbh = shift;
- return $dbh->{pg_server_version} if defined $dbh->{pg_server_version};
- my ($version) = $dbh->selectrow_array("SELECT version();");
- return 0 unless $version =~ /^PostgreSQL ([\d\.]+)/;
- $dbh{pg_server_version} = $1;
- return $dbh{pg_server_version};
- }
-
- sub pg_use_catalog {
- my $dbh = shift;
- my $version = DBD::Pg::pg_server_version($dbh);
- $version =~ /^(\d+\.\d+)/;
- return $1 < 7.3 ? "" : "pg_catalog.";
- }
-
- 1;
-}
-
-
-{ package DBD::Pg::dr; # ====== DRIVER ======
- use strict;
-
- sub data_sources {
- my $drh = shift;
- my $dbh = DBD::Pg::dr::connect($drh, 'dbname=template1') or return undef;
- $dbh->{AutoCommit} = 1;
- my $CATALOG = DBD::Pg::pg_use_catalog($dbh);
- my $sth = $dbh->prepare("SELECT datname FROM ${CATALOG}pg_database ORDER BY datname");
- $sth->execute or return undef;
- my (@sources, @datname);
- while (@datname = $sth->fetchrow_array) {
- push @sources, "dbi:Pg:dbname=$datname[0]";
- }
- $sth->finish;
- $dbh->disconnect;
- return @sources;
- }
-
-
- sub connect {
- my($drh, $dbname, $user, $auth)= @_;
-
- # create a 'blank' dbh
-
- my $Name = $dbname;
- $Name =~ s/^.*dbname\s*=\s*//;
- $Name =~ s/\s*;.*$//;
-
- $user = "" unless defined($user);
- $auth = "" unless defined($auth);
-
- $user = $ENV{DBI_USER} if $user eq "";
- $auth = $ENV{DBI_PASS} if $auth eq "";
-
- $user = "" unless defined($user);
- $auth = "" unless defined($auth);
-
- my($dbh) = DBI::_new_dbh($drh, {
- 'Name' => $Name,
- 'User' => $user, 'CURRENT_USER' => $user,
- });
-
- # Connect to the database..
- DBD::Pg::db::_login($dbh, $dbname, $user, $auth) or return undef;
-
- $dbh;
- }
-
-}
-
-
-{ package DBD::Pg::db; # ====== DATABASE ======
- use strict;
- use Carp ();
-
- sub prepare {
- my($dbh, $statement, @attribs)= @_;
-
- # create a 'blank' sth
-
- my $sth = DBI::_new_sth($dbh, {
- 'Statement' => $statement,
- });
-
- DBD::Pg::st::_prepare($sth, $statement, @attribs) or return undef;
-
- $sth;
- }
-
-
- sub ping {
- my($dbh) = @_;
-
- local $SIG{__WARN__} = sub { } if $dbh->{PrintError};
- local $dbh->{RaiseError} = 0 if $dbh->{RaiseError};
- my $ret = DBD::Pg::db::_ping($dbh);
-
- return $ret;
- }
-
- # Column expected in statement handle returned.
- # table_cat, table_schem, table_name, column_name, data_type, type_name,
- # column_size, buffer_length, DECIMAL_DIGITS, NUM_PREC_RADIX, NULLABLE,
- # REMARKS, COLUMN_DEF, SQL_DATA_TYPE, SQL_DATETIME_SUB, CHAR_OCTET_LENGTH,
- # ORDINAL_POSITION, IS_NULLABLE
- # The result set is ordered by TABLE_CAT, TABLE_SCHEM,
- # TABLE_NAME and ORDINAL_POSITION.
-
- sub column_info {
- my ($dbh) = shift;
- my @attrs = @_;
- # my ($dbh, $catalog, $schema, $table, $column) = @_;
- my $CATALOG = DBD::Pg::pg_use_catalog($dbh);
-
- my @wh = ();
- my @flds = qw/catname n.nspname c.relname a.attname/;
-
- for my $idx (0 .. $#attrs) {
- next if ($flds[$idx] eq 'catname'); # Skip catalog
- if(defined $attrs[$idx] and length $attrs[$idx]) {
- # Insure that the value is enclosed in single quotes.
- $attrs[$idx] =~ s/^'?(\w+)'?$/'$1'/;
- if ($attrs[$idx] =~ m/[,%]/) {
- # contains a meta character.
- push( @wh, q{( } . join ( " OR "
- , map { m/\%/
- ? qq{$flds[$idx] ILIKE $_ }
- : qq{$flds[$idx] = $_ }
- } (split /,/, $attrs[$idx]) )
- . q{ )}
- );
- }
- else {
- push( @wh, qq{$flds[$idx] = $attrs[$idx]} );
- }
- }
- }
-
- my $wh = ""; # ();
- $wh = join( " AND ", '', @wh ) if (@wh);
- my $version = DBD::Pg::pg_server_version($dbh);
- $version =~ /^(\d+\.\d+)/;
- $version = $1;
- my $showschema = $version < 7.3 ? "NULL::text" : "n.nspname";
- my $schemajoin = $version < 7.3 ? "" : "LEFT JOIN pg_catalog.pg_namespace n ON (n.oid = c.relnamespace)";
- my $col_info_sql = qq{
- SELECT
- NULL::text AS "TABLE_CAT"
- , $showschema AS "TABLE_SCHEM"
- , c.relname AS "TABLE_NAME"
- , a.attname AS "COLUMN_NAME"
- , t.typname AS "DATA_TYPE"
- , NULL::text AS "TYPE_NAME"
- , a.attlen AS "COLUMN_SIZE"
- , NULL::text AS "BUFFER_LENGTH"
- , NULL::text AS "DECIMAL_DIGITS"
- , NULL::text AS "NUM_PREC_RADIX"
- , a.attnotnull AS "NULLABLE"
- , NULL::text AS "REMARKS"
- , a.atthasdef AS "COLUMN_DEF"
- , NULL::text AS "SQL_DATA_TYPE"
- , NULL::text AS "SQL_DATETIME_SUB"
- , NULL::text AS "CHAR_OCTET_LENGTH"
- , a.attnum AS "ORDINAL_POSITION"
- , a.attnotnull AS "IS_NULLABLE"
- , a.atttypmod as atttypmod
- , a.attnotnull as attnotnull
- , a.atthasdef as atthasdef
- , a.attnum as attnum
- FROM
- ${CATALOG}pg_attribute a
- , ${CATALOG}pg_type t
- , ${CATALOG}pg_class c
- $schemajoin
- WHERE
- a.attrelid = c.oid
- AND a.attnum >= 0
- AND t.oid = a.atttypid
- AND c.relkind in ('r','v')
- $wh
- ORDER BY 2, 3, 4
- };
-
- my $sth = $dbh->prepare( $col_info_sql ) or return undef;
- $sth->execute();
-
- return $sth;
- }
-
- sub primary_key_info {
- my $dbh = shift;
- my ($catalog, $schema, $table) = @_;
- my @attrs = @_;
- my $CATALOG = DBD::Pg::pg_use_catalog($dbh);
-
- # TABLE_CAT:, TABLE_SCHEM:, TABLE_NAME:, COLUMN_NAME:, KEY_SEQ:
- # , PK_NAME:
-
- my @wh = (); my @dat = (); # Used to hold data for the attributes.
-
- my $version = DBD::Pg::pg_server_version($dbh);
- $version =~ /^(\d+\.\d+)/;
- $version = $1;
-
- my @flds = qw/catname u.usename bc.relname/;
- $flds[1] = 'n.nspname' unless ($version < 7.3);
-
- for my $idx (0 .. $#attrs) {
- next if ($flds[$idx] eq 'catname'); # Skip catalog
- if(defined $attrs[$idx] and length $attrs[$idx]) {
- if ($attrs[$idx] =~ m/[,%_?]/) {
- # contains a meta character.
- push( @wh, q{( } . join ( " OR "
- , map { push(@dat, $_);
- m/[%_?]/
- ? qq{$flds[$idx] iLIKE ? }
- : qq{$flds[$idx] = ? }
- } (split /,/, $attrs[$idx]) )
- . q{ )}
- );
- }
- else {
- push( @dat, $attrs[$idx] );
- push( @wh, qq{$flds[$idx] = ? } );
- }
- }
- }
-
- my $wh = '';
- $wh = join( " AND ", '', @wh ) if (@wh);
-
- # Base primary key selection query borrowed from phpPgAdmin.
- my $showschema = $version < 7.3 ? "NULL::text" : "n.nspname";
- my $schemajoin = $version < 7.3 ? "" : "LEFT JOIN pg_catalog.pg_namespace n ON (n.oid = bc.relnamespace)";
- my $pri_key_sql = qq{
- SELECT
- NULL::text AS "TABLE_CAT"
- , $showschema AS "TABLE_SCHEM"
- , bc.relname AS "TABLE_NAME"
- , a.attname AS "COLUMN_NAME"
- , a.attnum AS "KEY_SEQ"
- , ic.relname AS "PK_NAME"
- FROM
- ${CATALOG}pg_index i
- , ${CATALOG}pg_attribute a
- , ${CATALOG}pg_class ic
- , ${CATALOG}pg_class bc
- $schemajoin
- WHERE
- i.indrelid = bc.oid
- AND i.indexrelid = ic.oid
- AND
- (
- i.indkey[0] = a.attnum
- OR
- i.indkey[1] = a.attnum
- OR
- i.indkey[2] = a.attnum
- OR
- i.indkey[3] = a.attnum
- OR
- i.indkey[4] = a.attnum
- OR
- i.indkey[5] = a.attnum
- OR
- i.indkey[6] = a.attnum
- OR
- i.indkey[7] = a.attnum
- OR
- i.indkey[8] = a.attnum
- OR
- i.indkey[9] = a.attnum
- OR
- i.indkey[10] = a.attnum
- OR
- i.indkey[11] = a.attnum
- OR
- i.indkey[12] = a.attnum
- )
- AND a.attrelid = bc.oid
- AND i.indproc = '0'::oid
- AND i.indisprimary = 't'
- $wh
- ORDER BY 2, 3, 5
- };
-
- my $sth = $dbh->prepare( $pri_key_sql ) or return undef;
- $sth->execute(@dat);
-
- return $sth;
- }
-
- sub foreign_key_info {
- # todo: verify schema work as expected
- # add code to handle multiple-column keys correctly
- # return something nicer for pre-7.3?
- # try to clean up SQL, perl code
- # create a test script?
-
- my $dbh = shift;
- my ($pk_catalog, $pk_schema, $pk_table,
- $fk_catalog, $fk_schema, $fk_table) = @_;
-
- # this query doesn't work for Postgres before 7.3
- my $version = $dbh->pg_server_version;
- $version =~ /^(\d+)\.(\d)/;
- return undef if ($1.$2 < 73);
-
- # Used to hold data for the attributes.
- my @dat = ();
-
- # SQL to find primary/unique keys of a table
- my $pkey_sql = qq{
- SELECT
- NULL::text AS PKTABLE_CAT,
- pknam.nspname AS PKTABLE_SCHEM,
- pkc.relname AS PKTABLE_NAME,
- pka.attname AS PKCOLUMN_NAME,
- NULL::text AS FKTABLE_CAT,
- NULL::text AS FKTABLE_SCHEM,
- NULL::text AS FKTABLE_NAME,
- NULL::text AS FKCOLUMN_NAME,
- pkcon.conkey[1] AS KEY_SEQ,
- CASE
- WHEN pkcon.confupdtype = 'c' THEN 0
- WHEN pkcon.confupdtype = 'r' THEN 1
- WHEN pkcon.confupdtype = 'n' THEN 2
- WHEN pkcon.confupdtype = 'a' THEN 3
- WHEN pkcon.confupdtype = 'd' THEN 4
- END AS UPDATE_RULE,
- CASE
- WHEN pkcon.confdeltype = 'c' THEN 0
- WHEN pkcon.confdeltype = 'r' THEN 1
- WHEN pkcon.confdeltype = 'n' THEN 2
- WHEN pkcon.confdeltype = 'a' THEN 3
- WHEN pkcon.confdeltype = 'd' THEN 4
- END AS DELETE_RULE,
- NULL::text AS FK_NAME,
- pkcon.conname AS PK_NAME,
- CASE
- WHEN pkcon.condeferrable = 'f' THEN 7
- WHEN pkcon.condeferred = 't' THEN 6
- WHEN pkcon.condeferred = 'f' THEN 5
- END AS DEFERRABILITY,
- CASE
- WHEN pkcon.contype = 'p' THEN 'PRIMARY'
- WHEN pkcon.contype = 'u' THEN 'UNIQUE'
- END AS UNIQUE_OR_PRIMARY
- FROM
- pg_constraint AS pkcon
- JOIN
- pg_class pkc ON pkc.oid=pkcon.conrelid
- JOIN
- pg_namespace pknam ON pkcon.connamespace=pknam.oid
- JOIN
- pg_attribute pka ON pka.attnum=pkcon.conkey[1] AND pka.attrelid=pkc.oid
- };
-
- # SQL to find foreign keys of a table
- my $fkey_sql = qq{
- SELECT
- NULL::text AS PKTABLE_CAT,
- pknam.nspname AS PKTABLE_SCHEM,
- pkc.relname AS PKTABLE_NAME,
- pka.attname AS PKCOLUMN_NAME,
- NULL::text AS FKTABLE_CAT,
- fknam.nspname AS FKTABLE_SCHEM,
- fkc.relname AS FKTABLE_NAME,
- fka.attname AS FKCOLUMN_NAME,
- fkcon.conkey[1] AS KEY_SEQ,
- CASE
- WHEN fkcon.confupdtype = 'c' THEN 0
- WHEN fkcon.confupdtype = 'r' THEN 1
- WHEN fkcon.confupdtype = 'n' THEN 2
- WHEN fkcon.confupdtype = 'a' THEN 3
- WHEN fkcon.confupdtype = 'd' THEN 4
- END AS UPDATE_RULE,
- CASE
- WHEN fkcon.confdeltype = 'c' THEN 0
- WHEN fkcon.confdeltype = 'r' THEN 1
- WHEN fkcon.confdeltype = 'n' THEN 2
- WHEN fkcon.confdeltype = 'a' THEN 3
- WHEN fkcon.confdeltype = 'd' THEN 4
- END AS DELETE_RULE,
- fkcon.conname AS FK_NAME,
- pkcon.conname AS PK_NAME,
- CASE
- WHEN fkcon.condeferrable = 'f' THEN 7
- WHEN fkcon.condeferred = 't' THEN 6
- WHEN fkcon.condeferred = 'f' THEN 5
- END AS DEFERRABILITY,
- CASE
- WHEN pkcon.contype = 'p' THEN 'PRIMARY'
- WHEN pkcon.contype = 'u' THEN 'UNIQUE'
- END AS UNIQUE_OR_PRIMARY
- FROM
- pg_constraint AS fkcon
- JOIN
- pg_constraint AS pkcon ON fkcon.confrelid=pkcon.conrelid
- AND fkcon.confkey=pkcon.conkey
- JOIN
- pg_class fkc ON fkc.oid=fkcon.conrelid
- JOIN
- pg_class pkc ON pkc.oid=fkcon.confrelid
- JOIN
- pg_namespace pknam ON pkcon.connamespace=pknam.oid
- JOIN
- pg_namespace fknam ON fkcon.connamespace=fknam.oid
- JOIN
- pg_attribute fka ON fka.attnum=fkcon.conkey[1] AND fka.attrelid=fkc.oid
- JOIN
- pg_attribute pka ON pka.attnum=pkcon.conkey[1] AND pka.attrelid=pkc.oid
- };
-
- # if schema are provided, use this SQL
- my $pk_schema_sql = " AND pknam.nspname = ? ";
- my $fk_schema_sql = " AND fknam.nspname = ? ";
-
- my $key_sql;
-
- # if $fk_table: generate SQL stub, which will be same
- # whether or not $pk_table supplied
- if ($fk_table)
- {
- $key_sql = $fkey_sql . qq{
- WHERE
- fkc.relname = ?
- };
- push @dat, $fk_table;
-
- if ($fk_schema)
- {
- $key_sql .= $fk_schema_sql;
- push @dat,$fk_schema;
- }
- }
-
- # if $fk_table and $pk_table: (defined by DBI, not SQL/CLI)
- # return foreign key of $fk_table that refers to $pk_table
- # (if any)
- if ($pk_table and $fk_table)
- {
- $key_sql .= qq{
- AND
- pkc.relname = ?
- };
- push @dat, $pk_table;
-
- if ($pk_schema)
- {
- $key_sql .= $pk_schema_sql;
- push @dat,$pk_schema;
- }
- }
-
- # if $fk_table but no $pk_table:
- # return all foreign keys of $fk_table, and all
- # primary keys of tables to which $fk_table refers
- if (!$pk_table and $fk_table)
- {
- # find primary/unique keys referenced by $fk_table
- # (this one is a little tricky)
- $key_sql .= ' UNION ' . $pkey_sql . qq{
- WHERE
- pkcon.conname IN
- (
- SELECT
- pkcon.conname
- FROM
- pg_constraint AS fkcon
- JOIN
- pg_constraint AS pkcon ON fkcon.confrelid=pkcon.conrelid AND
- fkcon.confkey=pkcon.conkey
- JOIN
- pg_class fkc ON fkc.oid=fkcon.conrelid
- WHERE
- fkc.relname = ?
- )
- };
- push @dat, $fk_table;
-
- if ($fk_schema)
- {
- $key_sql .= $pk_schema_sql;
- push @dat,$fk_schema;
- }
- }
-
- # if $pk_table but no $fk_table:
- # return primary key of $pk_table and all foreign keys
- # that reference $pk_table
- # question: what about unique keys?
- # (DBI and SQL/CLI both state to omit unique keys)
-
- if ($pk_table and !$fk_table)
- {
- # find primary key (only!) of $pk_table
- $key_sql = $pkey_sql . qq{
- WHERE
- pkc.relname = ?
- AND
- pkcon.contype = 'p'
- };
- @dat = ($pk_table);
-
- if ($pk_schema)
- {
- $key_sql .= $pk_schema_sql;
- push @dat,$pk_schema;
- }
-
- # find all foreign keys that reference $pk_table
- $key_sql .= 'UNION ' . $fkey_sql . qq{
- WHERE
- pkc.relname = ?
- AND
- pkcon.contype = 'p'
- };
- push @dat, $pk_table;
-
- if ($pk_schema)
- {
- $key_sql .= $fk_schema_sql;
- push @dat,$pk_schema;
- }
- }
-
- return undef unless $key_sql;
- my $sth = $dbh->prepare( $key_sql ) or
- return undef;
- $sth->execute(@dat);
-
- return $sth;
- }
-
-
- sub table_info { # DBI spec: TABLE_CAT, TABLE_SCHEM, TABLE_NAME, TABLE_TYPE, REMARKS
- my $dbh = shift;
- my ($catalog, $schema, $table, $type) = @_;
- my @attrs = @_;
-
- my $tbl_sql = ();
-
- my $version = DBD::Pg::pg_server_version($dbh);
- $version =~ /^(\d+\.\d+)/;
- $version = $1;
- my $CATALOG = DBD::Pg::pg_use_catalog($dbh);
-
- if ( # Rules 19a
- (defined $catalog and $catalog eq '%')
- and (defined $schema and $schema eq '')
- and (defined $table and $table eq '')
- ) {
- $tbl_sql = q{
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , NULL::text AS "TABLE_TYPE"
- , NULL::text AS "REMARKS"
- };
- }
- elsif (# Rules 19b
- (defined $catalog and $catalog eq '')
- and (defined $schema and $schema eq '%')
- and (defined $table and $table eq '')
- ) {
- $tbl_sql = ($version < 7.3) ? q{
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , NULL::text AS "TABLE_TYPE"
- , NULL::text AS "REMARKS"
- } : q{
- SELECT
- NULL::text AS "TABLE_CAT"
- , n.nspname AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , NULL::text AS "TABLE_TYPE"
- , NULL::text AS "REMARKS"
- FROM pg_catalog.pg_namespace n
- ORDER BY 1
- };
- }
- elsif (# Rules 19c
- (defined $catalog and $catalog eq '')
- and (defined $schema and $schema eq '')
- and (defined $table and $table eq '')
- and (defined $type and $type eq '%')
- ) {
- # From the postgresql 7.2.1 manual 3.5 pg_class
- # 'r' = ordinary table
- #, 'i' = index
- #, 'S' = sequence
- #, 'v' = view
- #, 's' = special
- #, 't' = secondary TOAST table
- $tbl_sql = q{
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'table' AS "TABLE_TYPE"
- , 'ordinary table - r' AS "REMARKS"
- union
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'index' AS "TABLE_TYPE"
- , 'index - i' AS "REMARKS"
- union
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'sequence' AS "TABLE_TYPE"
- , 'sequence - S' AS "REMARKS"
- union
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'view' AS "TABLE_TYPE"
- , 'view - v' AS "REMARKS"
- union
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'special' AS "TABLE_TYPE"
- , 'special - s' AS "REMARKS"
- union
- SELECT
- NULL::text AS "TABLE_CAT"
- , NULL::text AS "TABLE_SCHEM"
- , NULL::text AS "TABLE_NAME"
- , 'secondary' AS "TABLE_TYPE"
- , 'secondary TOAST table - t' AS "REMARKS"
- };
- }
- else {
- # Default SQL
- my $showschema = $version < 7.3 ? "NULL::text" : "n.nspname";
- my $schemajoin = $version < 7.3 ? "" : "LEFT JOIN pg_catalog.pg_namespace n ON (n.oid = c.relnamespace)";
- my $schemacase = $version < 7.3 ? "CASE WHEN c.relname ~ '^pg_' THEN 'SYSTEM TABLE' ELSE 'TABLE' END" :
- "CASE WHEN n.nspname ~ '^pg_' THEN 'SYSTEM TABLE' ELSE 'TABLE' END";
- $tbl_sql = qq{
- SELECT NULL::text AS "TABLE_CAT"
- , $showschema AS "TABLE_SCHEM"
- , c.relname AS "TABLE_NAME"
- , CASE
- WHEN c.relkind = 'v' THEN 'VIEW'
- ELSE $schemacase
- END AS "TABLE_TYPE"
- , d.description AS "REMARKS"
- FROM ${CATALOG}pg_user AS u
- , ${CATALOG}pg_class AS c
- LEFT JOIN
- ${CATALOG}pg_description AS d
- ON (c.relfilenode = d.objoid AND d.objsubid = 0)
- $schemajoin
- WHERE
- ((c.relkind = 'r'
- AND c.relhasrules = FALSE) OR
- (c.relkind = 'v'
- AND c.relhasrules = TRUE))
- AND c.relname !~ '^xin[vx][0-9]+'
- AND c.relowner = u.usesysid
- ORDER BY 1, 2, 3
- };
-
- # Did we receive any arguments?
- if (@attrs) {
- my @wh = ();
- my @flds = qw/catname n.nspname c.relname c.relkind/;
-
- for my $idx (0 .. $#attrs) {
- next if ($flds[$idx] eq 'catname'); # Skip catalog
- if(defined $attrs[$idx] and length $attrs[$idx]) {
- # Change the "name" of the types to the real value.
- if ($flds[$idx] =~ m/relkind/) {
- $attrs[$idx] =~ s/^\'?table\'?/'r'/i;
- $attrs[$idx] =~ s/^\'?index\'?/'i'/i;
- $attrs[$idx] =~ s/^\'?sequence\'?/'S'/i;
- $attrs[$idx] =~ s/^\'?view\'?/'v'/i;
- $attrs[$idx] =~ s/^\'?special\'?/'s'/i;
- $attrs[$idx] =~ s/^\'?secondary\'?/'t'/i;
- }
- # Insure that the value is enclosed in single quotes.
- $attrs[$idx] =~ s/^'?(\w+)'?$/'$1'/;
- if ($attrs[$idx] =~ m/[,%]/) {
- # contains a meta character.
- push( @wh, q{( } . join ( " OR "
- , map { m/\%/
- ? qq{$flds[$idx] LIKE $_ }
- : qq{$flds[$idx] = $_ }
- } (split /,/, $attrs[$idx]) )
- . q{ )}
- );
- }
- else {
- push( @wh, qq{$flds[$idx] = $attrs[$idx]} );
- }
- }
- }
-
- my $wh = ();
- if (@wh) {
- $wh = join( " AND ",'', @wh );
- $tbl_sql = qq{
- SELECT NULL::text AS "TABLE_CAT"
- , $showschema AS "TABLE_SCHEM"
- , c.relname AS "TABLE_NAME"
- , CASE
- WHEN c.relkind = 'r' THEN
- CASE WHEN n.nspname ~ '^pg_' THEN 'SYSTEM TABLE' ELSE 'TABLE' END
- WHEN c.relkind = 'v' THEN 'VIEW'
- WHEN c.relkind = 'i' THEN 'INDEX'
- WHEN c.relkind = 'S' THEN 'SEQUENCE'
- WHEN c.relkind = 's' THEN 'SPECIAL'
- WHEN c.relkind = 't' THEN 'SECONDARY'
- ELSE 'UNKNOWN'
- END AS "TABLE_TYPE"
- , d.description AS "REMARKS"
- FROM ${CATALOG}pg_class AS c
- LEFT JOIN
- ${CATALOG}pg_description AS d
- ON (c.relfilenode = d.objoid AND d.objsubid = 0)
- $schemajoin
- WHERE
- c.relname !~ '^xin[vx][0-9]+'
- $wh
- ORDER BY 2, 3
- };
- }
- }
- }
-
- my $sth = $dbh->prepare( $tbl_sql ) or return undef;
- $sth->execute();
-
- return $sth;
- }
-
-
- sub tables {
- my($dbh) = @_;
- my $version = DBD::Pg::pg_server_version($dbh);
- $version =~ /^(\d+\.\d+)/;
- $version = $1;
- my $SQL = ($version < 7.3) ?
- "SELECT relname AS \"TABLE_NAME\"
- FROM pg_class
- WHERE relkind = 'r'
- AND relname !~ '^pg_'
- AND relname !~ '^xin[vx][0-9]+'
- ORDER BY 1" :
- "SELECT n.nspname AS \"SCHEMA_NAME\", c.relname AS \"TABLE_NAME\"
- FROM pg_catalog.pg_class c
- LEFT JOIN pg_catalog.pg_namespace n ON (n.oid = c.relnamespace)
- WHERE c.relkind = 'r'
- AND n.nspname NOT IN ('pg_catalog', 'pg_toast')
- AND pg_catalog.pg_table_is_visible(c.oid)
- ORDER BY 1,2";
- my $sth = $dbh->prepare($SQL) or return undef;
- $sth->execute or return undef;
- my (@tables, @relname);
- while (@relname = $sth->fetchrow_array) {
- push @tables, $version < 7.3 ? $relname[0] : "$relname[0].$relname[1]";
- }
- $sth->finish;
-
- return @tables;
- }
-
-
- sub table_attributes {
- my ($dbh, $table) = @_;
- my $CATALOG = DBD::Pg::pg_use_catalog($dbh);
- my $result = [];
- my $attrs = $dbh->selectall_arrayref(
- "select a.attname, t.typname, a.attlen, a.atttypmod, a.attnotnull, a.atthasdef, a.attnum
- from ${CATALOG}pg_attribute a,
- ${CATALOG}pg_class c,
- ${CATALOG}pg_type t
- where c.relname = ?
- and a.attrelid = c.oid
- and a.attnum >= 0
- and t.oid = a.atttypid
- order by 1
- ", undef, $table);
-
- return $result unless scalar(@$attrs);
-
- # Select the array value for tables primary key.
- my $pk_key_sql = qq{SELECT pg_index.indkey
- FROM ${CATALOG}pg_class, ${CATALOG}pg_index
- WHERE
- pg_class.oid = pg_index.indrelid
- AND pg_class.relname = '$table'
- AND pg_index.indisprimary = 't'
- };
- # Expand this (returned as a string) a real array.
- my @pk = ();
- my $pkeys = $dbh->selectrow_array( $pk_key_sql );
- if (defined $pkeys) {
- foreach (split( /\s+/, $pkeys))
- {
- push @pk, $_;
- }
- }
- my $pk_bt =
- (@pk) ? "AND pg_attribute.attnum in (" . join ( ", ", @pk ) . ")"
- : "";
-
- # Get the primary key
- my $pri_key = $dbh->selectcol_arrayref("SELECT pg_attribute.attname
- FROM ${CATALOG}pg_class, ${CATALOG}pg_attribute, ${CATALOG}pg_index
- WHERE pg_class.oid = pg_attribute.attrelid
- AND pg_class.oid = pg_index.indrelid
- $pk_bt
- AND pg_index.indisprimary = 't'
- AND pg_class.relname = ?
- ORDER BY pg_attribute.attnum
- ", undef, $table );
- $pri_key = [] unless $pri_key;
-
- foreach my $attr (reverse @$attrs) {
- my ($col_name, $col_type, $size, $mod, $notnull, $hasdef, $attnum) = @$attr;
- my $col_size = do {
- if ($size > 0) {
- $size;
- } elsif ($mod > 0xffff) {
- my $prec = ($mod & 0xffff) - 4;
- $mod >>= 16;
- my $dig = $mod;
- $dig;
- } elsif ($mod >= 4) {
- $mod - 4;
- } else {
- $mod;
- }
- };
-
- # Get the default value, if any
- my ($default) = $dbh->selectrow_array("SELECT adsrc FROM ${CATALOG}pg_attrdef WHERE adnum = $attnum") if -1 == $attnum;
- $default = '' unless $default;
-
- # Test for any constraints
- # Note: as of PostgreSQL 7.3 pg_relcheck has been replaced
- # by pg_constraint. To maintain compatibility, check
- # version number and execute appropriate query.
-
- my $version = pg_server_version( $dbh );
-
- my $con_query = $version < 7.3
- ? "SELECT rcsrc FROM pg_relcheck WHERE rcname = '${table}_$col_name'"
- : "SELECT consrc FROM pg_catalog.pg_constraint WHERE contype = 'c' AND conname = '${table}_$col_name'";
- my ($constraint) = $dbh->selectrow_array($con_query);
- $constraint = '' unless $constraint;
-
- # Check to see if this is the primary key
- my $is_primary_key = scalar(grep { /^$col_name$/i } @$pri_key) ? 1 : 0;
-
- push @$result,
- { NAME => $col_name,
- TYPE => $col_type,
- SIZE => $col_size,
- NOTNULL => $notnull,
- DEFAULT => $default,
- CONSTRAINT => $constraint,
- PRIMARY_KEY => $is_primary_key,
- };
- }
-
- return $result;
- }
-
-
- sub type_info_all {
- my ($dbh) = @_;
-
- #my $names = {
- # TYPE_NAME => 0,
- # DATA_TYPE => 1,
- # PRECISION => 2,
- # LITERAL_PREFIX => 3,
- # LITERAL_SUFFIX => 4,
- # CREATE_PARAMS => 5,
- # NULLABLE => 6,
- # CASE_SENSITIVE => 7,
- # SEARCHABLE => 8,
- # UNSIGNED_ATTRIBUTE => 9,
- # MONEY =>10,
- # AUTO_INCREMENT =>11,
- # LOCAL_TYPE_NAME =>12,
- # MINIMUM_SCALE =>13,
- # MAXIMUM_SCALE =>14,
- # };
-
- my $names = {
- TYPE_NAME => 0,
- DATA_TYPE => 1,
- COLUMN_SIZE => 2, # was PRECISION originally
- LITERAL_PREFIX => 3,
- LITERAL_SUFFIX => 4,
- CREATE_PARAMS => 5,
- NULLABLE => 6,
- CASE_SENSITIVE => 7,
- SEARCHABLE => 8,
- UNSIGNED_ATTRIBUTE=> 9,
- FIXED_PREC_SCALE => 10, # was MONEY originally
- AUTO_UNIQUE_VALUE => 11, # was AUTO_INCREMENT originally
- LOCAL_TYPE_NAME => 12,
- MINIMUM_SCALE => 13,
- MAXIMUM_SCALE => 14,
- NUM_PREC_RADIX => 15,
- };
-
-
- # typname |typlen|typprtlen| SQL92
- # --------------+------+---------+ -------
- # bool | 1| 1| BOOLEAN
- # text | -1| -1| like VARCHAR, but automatic storage allocation
- # bpchar | -1| -1| CHARACTER(n) bp=blank padded
- # varchar | -1| -1| VARCHAR(n)
- # int2 | 2| 5| SMALLINT
- # int4 | 4| 10| INTEGER
- # int8 | 8| 20| /
- # money | 4| 24| /
- # float4 | 4| 12| FLOAT(p) for p<7=float4, for p<16=float8
- # float8 | 8| 24| REAL
- # abstime | 4| 20| /
- # reltime | 4| 20| /
- # tinterval | 12| 47| /
- # date | 4| 10| /
- # time | 8| 16| /
- # datetime | 8| 47| /
- # timespan | 12| 47| INTERVAL
- # timestamp | 4| 19| TIMESTAMP
- # --------------+------+---------+
-
- # DBI type definitions / PostgreSQL definitions # type needs to be DBI-specific (not pg_type)
- #
- # SQL_ALL_TYPES 0
- # SQL_CHAR 1 1042 bpchar
- # SQL_NUMERIC 2 700 float4
- # SQL_DECIMAL 3 700 float4
- # SQL_INTEGER 4 23 int4
- # SQL_SMALLINT 5 21 int2
- # SQL_FLOAT 6 700 float4
- # SQL_REAL 7 701 float8
- # SQL_DOUBLE 8 20 int8
- # SQL_DATE 9 1082 date
- # SQL_TIME 10 1083 time
- # SQL_TIMESTAMP 11 1296 timestamp
- # SQL_VARCHAR 12 1043 varchar
-
- my $ti = [
- $names,
- # name type prec prefix suffix create params null case se unsign mon incr local min max
- #
- [ 'bytea', -2, 4096, '\'', '\'', undef, 1, '1', 3, undef, '0', '0', 'BYTEA', undef, undef, undef ],
- [ 'bool', 0, 1, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'BOOLEAN', undef, undef, undef ],
- [ 'int8', 8, 20, undef, undef, undef, 1, '0', 2, '0', '0', '0', 'LONGINT', undef, undef, undef ],
- [ 'int2', 5, 5, undef, undef, undef, 1, '0', 2, '0', '0', '0', 'SMALLINT', undef, undef, undef ],
- [ 'int4', 4, 10, undef, undef, undef, 1, '0', 2, '0', '0', '0', 'INTEGER', undef, undef, undef ],
- [ 'text', 12, 4096, '\'', '\'', undef, 1, '1', 3, undef, '0', '0', 'TEXT', undef, undef, undef ],
- [ 'float4', 6, 12, undef, undef, 'precision', 1, '0', 2, '0', '0', '0', 'FLOAT', undef, undef, undef ],
- [ 'float8', 7, 24, undef, undef, 'precision', 1, '0', 2, '0', '0', '0', 'REAL', undef, undef, undef ],
- [ 'abstime', 10, 20, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'ABSTIME', undef, undef, undef ],
- [ 'reltime', 10, 20, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'RELTIME', undef, undef, undef ],
- [ 'tinterval', 11, 47, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'TINTERVAL', undef, undef, undef ],
- [ 'money', 0, 24, undef, undef, undef, 1, '0', 2, undef, '1', '0', 'MONEY', undef, undef, undef ],
- [ 'bpchar', 1, 4096, '\'', '\'', 'max length', 1, '1', 3, undef, '0', '0', 'CHARACTER', undef, undef, undef ],
- [ 'bpchar', 12, 4096, '\'', '\'', 'max length', 1, '1', 3, undef, '0', '0', 'CHARACTER', undef, undef, undef ],
- [ 'varchar', 12, 4096, '\'', '\'', 'max length', 1, '1', 3, undef, '0', '0', 'VARCHAR', undef, undef, undef ],
- [ 'date', 9, 10, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'DATE', undef, undef, undef ],
- [ 'time', 10, 16, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'TIME', undef, undef, undef ],
- [ 'datetime', 11, 47, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'DATETIME', undef, undef, undef ],
- [ 'timespan', 11, 47, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'INTERVAL', undef, undef, undef ],
- [ 'timestamp', 10, 19, '\'', '\'', undef, 1, '0', 2, undef, '0', '0', 'TIMESTAMP', undef, undef, undef ]
- #
- # intentionally omitted: char, all geometric types, all array types
- ];
- return $ti;
- }
-
-
- # Characters that need to be escaped by quote().
- my %esc = ( "'" => '\\047', # '\\' . sprintf("%03o", ord("'")), # ISO SQL 2
- '\\' => '\\134', # '\\' . sprintf("%03o", ord("\\")),
- );
-
- # Set up lookup for SQL types we don't want to escape.
- my %no_escape = map { $_ => 1 }
- DBI::SQL_INTEGER, DBI::SQL_SMALLINT, DBI::SQL_DECIMAL,
- DBI::SQL_FLOAT, DBI::SQL_REAL, DBI::SQL_DOUBLE, DBI::SQL_NUMERIC;
-
- sub quote {
- my ($dbh, $str, $data_type) = @_;
- return "NULL" unless defined $str;
- return $str if $data_type && $no_escape{$data_type};
-
- $dbh->DBI::set_err(1, "Use of SQL_BINARY invalid in quote()")
- if $data_type && $data_type == DBI::SQL_BINARY;
-
- $str =~ s/(['\\\0])/$esc{$1}/g;
- return "'$str'";
- }
-
-} # end of package DBD::Pg::db
-
-{ package DBD::Pg::st; # ====== STATEMENT ======
-
- # all done in XS
-
-}
-
-1;
-
-__END__
-
-=head1 NAME
-
-DBD::Pg - PostgreSQL database driver for the DBI module
-
-=head1 SYNOPSIS
-
- use DBI;
-
- $dbh = DBI->connect("dbi:Pg:dbname=$dbname", "", "");
-
- # for some advanced uses you may need PostgreSQL type values:
- use DBD::Oracle qw(:pg_types);
-
- # See the DBI module documentation for full details
-
-=head1 DESCRIPTION
-
-DBD::Pg is a Perl module which works with the DBI module to provide access to
-PostgreSQL databases.
-
-=head1 MODULE DOCUMENTATION
-
-This documentation describes driver specific behavior and restrictions. It is
-not supposed to be used as the only reference for the user. In any case
-consult the DBI documentation first!
-
-=head1 THE DBI CLASS
-
-=head2 DBI Class Methods
-
-=over 4
-
-=item B<connect>
-
-To connect to a database with a minimum of parameters, use the following
-syntax:
-
- $dbh = DBI->connect("dbi:Pg:dbname=$dbname", "", "");
-
-This connects to the database $dbname at localhost without any user
-authentication. This is sufficient for the defaults of PostgreSQL.
-
-The following connect statement shows all possible parameters:
-
- $dbh = DBI->connect("dbi:Pg:dbname=$dbname;host=$host;port=$port;" .
- "options=$options;tty=$tty", "$username", "$password");
-
-If a parameter is undefined PostgreSQL first looks for specific environment
-variables and then it uses hard coded defaults:
-
- parameter environment variable hard coded default
- --------------------------------------------------
- dbname PGDATABASE current userid
- host PGHOST localhost
- port PGPORT 5432
- options PGOPTIONS ""
- tty PGTTY ""
- username PGUSER current userid
- password PGPASSWORD ""
-
-If a host is specified, the postmaster on this host needs to be started with
-the C<-i> option (TCP/IP sockets).
-
-The options parameter specifies runtime options for the Postgres
-backend. Common usage is to increase the number of buffers with the C<-B>
-option. Also important is the C<-F> option, which disables automatic fsync()
-call after each transaction. For further details please refer to the
-L<postgres>.
-
-For authentication with username and password appropriate entries have to be
-made in pg_hba.conf. Please refer to the L<pg_hba.conf> and the L<pg_passwd>
-for the different types of authentication. Note that for these two parameters
-DBI distinguishes between empty and undefined. If these parameters are
-undefined DBI substitutes the values of the environment variables DBI_USER and
-DBI_PASS if present.
-
-=item B<available_drivers>
-
- @driver_names = DBI->available_drivers;
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<data_sources>
-
- @data_sources = DBI->data_sources('Pg');
-
-The driver supports this method. Note that the necessary database connection to
-the database template1 will be done on the localhost without any
-user-authentication. Other preferences can only be set with the environment
-variables PGHOST, DBI_USER and DBI_PASS.
-
-=item B<trace>
-
- DBI->trace($trace_level, $trace_file)
-
-Implemented by DBI, no driver-specific impact.
-
-=back
-
-=head2 DBI Dynamic Attributes
-
-See Common Methods.
-
-=head1 METHODS COMMON TO ALL HANDLES
-
-=over 4
-
-=item B<err>
-
- $rv = $h->err;
-
-Supported by the driver as proposed by DBI. For the connect method it returns
-PQstatus. In all other cases it returns PQresultStatus of the current handle.
-
-=item B<errstr>
-
- $str = $h->errstr;
-
-Supported by the driver as proposed by DBI. It returns the PQerrorMessage
-related to the current handle.
-
-=item B<state>
-
- $str = $h->state;
-
-This driver does not (yet) support the state method.
-
-=item B<trace>
-
- $h->trace($trace_level, $trace_filename);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<trace_msg>
-
- $h->trace_msg($message_text);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<func>
-
-This driver supports a variety of driver specific functions accessible via the
-func interface:
-
- $attrs = $dbh->func($table, 'table_attributes');
-
-This method returns for the given table a reference to an array of hashes:
-
- NAME attribute name
- TYPE attribute type
- SIZE attribute size (-1 for variable size)
- NULLABLE flag nullable
- DEFAULT default value
- CONSTRAINT constraint
- PRIMARY_KEY flag is_primary_key
-
- $lobjId = $dbh->func($mode, 'lo_creat');
-
-Creates a new large object and returns the object-id. $mode is a bit-mask
-describing different attributes of the new object. Use the following
-constants:
-
- $dbh->{pg_INV_WRITE}
- $dbh->{pg_INV_READ}
-
-Upon failure it returns undef.
-
- $lobj_fd = $dbh->func($lobjId, $mode, 'lo_open');
-
-Opens an existing large object and returns an object-descriptor for use in
-subsequent lo_* calls. For the mode bits see lo_create. Returns undef upon
-failure. Note that 0 is a perfectly correct object descriptor!
-
- $nbytes = $dbh->func($lobj_fd, $buf, $len, 'lo_write');
-
-Writes $len bytes of $buf into the large object $lobj_fd. Returns the number
-of bytes written and undef upon failure.
-
- $nbytes = $dbh->func($lobj_fd, $buf, $len, 'lo_read');
-
-Reads $len bytes into $buf from large object $lobj_fd. Returns the number of
-bytes read and undef upon failure.
-
- $loc = $dbh->func($lobj_fd, $offset, $whence, 'lo_lseek');
-
-Change the current read or write location on the large object
-$obj_id. Currently $whence can only be 0 (L_SET). Returns the current location
-and undef upon failure.
-
- $loc = $dbh->func($lobj_fd, 'lo_tell');
-
-Returns the current read or write location on the large object $lobj_fd and
-undef upon failure.
-
- $lobj_fd = $dbh->func($lobj_fd, 'lo_close');
-
-Closes an existing large object. Returns true upon success and false upon
-failure.
-
- $lobj_fd = $dbh->func($lobj_fd, 'lo_unlink');
-
-Deletes an existing large object. Returns true upon success and false upon
-failure.
-
- $lobjId = $dbh->func($filename, 'lo_import');
-
-Imports a Unix file as large object and returns the object id of the new
-object or undef upon failure.
-
- $ret = $dbh->func($lobjId, 'lo_export', 'filename');
-
-Exports a large object into a Unix file. Returns false upon failure, true
-otherwise.
-
- $ret = $dbh->func($line, 'putline');
-
-Used together with the SQL-command 'COPY table FROM STDIN' to copy large
-amount of data into a table avoiding the overhead of using single
-insert commands. The application must explicitly send the two characters "\."
-to indicate to the backend that it has finished sending its data. See test.pl
-for an example on how to use this function.
-
- $ret = $dbh->func($buffer, length, 'getline');
-
-Used together with the SQL-command 'COPY table TO STDOUT' to dump a complete
-table. See test.pl for an example on how to use this function.
-
- $ret = $dbh->func('pg_notifies');
-
-Returns either undef or a reference to two-element array [ $table,
-$backend_pid ] of asynchronous notifications received.
-
- $fd = $dbh->func('getfd');
-
-Returns fd of the actual connection to server. Can be used with select() and
-func('pg_notifies').
-
-=back
-
-=head1 ATTRIBUTES COMMON TO ALL HANDLES
-
-=over 4
-
-=item B<Warn> (boolean, inherited)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<Active> (boolean, read-only)
-
-Supported by the driver as proposed by DBI. A database handle is active while
-it is connected and statement handle is active until it is finished.
-
-=item B<Kids> (integer, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<ActiveKids> (integer, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<CachedKids> (hash ref)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<CompatMode> (boolean, inherited)
-
-Not used by this driver.
-
-=item B<InactiveDestroy> (boolean)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<PrintError> (boolean, inherited)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<RaiseError> (boolean, inherited)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<HandleError> (boolean, inherited)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<ChopBlanks> (boolean, inherited)
-
-Supported by the driver as proposed by DBI. This method is similar to the
-SQL-function RTRIM.
-
-=item B<LongReadLen> (integer, inherited)
-
-Implemented by DBI, not used by the driver.
-
-=item B<LongTruncOk> (boolean, inherited)
-
-Implemented by DBI, not used by the driver.
-
-=item B<Taint> (boolean, inherited)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<private_*>
-
-Implemented by DBI, no driver-specific impact.
-
-=back
-
-=head1 DBI DATABASE HANDLE OBJECTS
-
-=head2 Database Handle Methods
-
-=over 4
-
-=item B<selectrow_array>
-
- @row_ary = $dbh->selectrow_array($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<selectrow_arrayref>
-
- $ary_ref = $dbh->selectrow_arrayref($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<selectrow_hashref>
-
- $hash_ref = $dbh->selectrow_hashref($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<selectall_arrayref>
-
- $ary_ref = $dbh->selectall_arrayref($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<selectall_hashref>
-
- $hash_ref = $dbh->selectall_hashref($statement, $key_field);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<selectcol_arrayref>
-
- $ary_ref = $dbh->selectcol_arrayref($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<prepare>
-
- $sth = $dbh->prepare($statement, \%attr);
-
-PostgreSQL does not have the concept of preparing a statement. Hence the
-prepare method just stores the statement after checking for place-holders. No
-information about the statement is available after preparing it.
-
-=item B<prepare_cached>
-
- $sth = $dbh->prepare_cached($statement, \%attr);
-
-Implemented by DBI, no driver-specific impact. This method is not useful for
-this driver, because preparing a statement has no database interaction.
-
-=item B<do>
-
- $rv = $dbh->do($statement, \%attr, @bind_values);
-
-Implemented by DBI, no driver-specific impact. See the notes for the execute
-method elsewhere in this document.
-
-=item B<commit>
-
- $rc = $dbh->commit;
-
-Supported by the driver as proposed by DBI. See also the notes about
-B<Transactions> elsewhere in this document.
-
-=item B<rollback>
-
- $rc = $dbh->rollback;
-
-Supported by the driver as proposed by DBI. See also the notes about
-B<Transactions> elsewhere in this document.
-
-=item B<disconnect>
-
- $rc = $dbh->disconnect;
-
-Supported by the driver as proposed by DBI.
-
-=item B<ping>
-
- $rc = $dbh->ping;
-
-This driver supports the ping-method, which can be used to check the validity
-of a database-handle. The ping method issues an empty query and checks the
-result status.
-
-=item B<table_info>
-
- $sth = $dbh->table_info;
-
-Supported by the driver as proposed by DBI. This method returns all tables and
-views which are owned by the current user. It does not select any indexes and
-sequences. Also System tables are not selected. As TABLE_QUALIFIER the reltype
-attribute is returned and the REMARKS are undefined.
-
-=item B<foreign_key_info>
-
- $sth = $dbh->foreign_key_info( $pk_catalog, $pk_schema, $pk_table,
- $fk_catalog, $fk_schema, $fk_table );
-
-Supported by the driver as proposed by DBI. Unimplemented for Postgres
-servers before 7.3 (returns undef). Currently only returns information
-about first column of any multiple-column keys.
-
-=item B<tables>
-
- @names = $dbh->tables;
-
-Supported by the driver as proposed by DBI. This method returns all tables and
-views which are owned by the current user. It does not select any indexes and
-sequences, or system tables.
-
-=item B<type_info_all>
-
- $type_info_all = $dbh->type_info_all;
-
-Supported by the driver as proposed by DBI. Only for SQL data-types and for
-frequently used data-types information is provided. The mapping between the
-PostgreSQL typename and the SQL92 data-type (if possible) has been done
-according to the following table:
-
- +---------------+------------------------------------+
- | typname | SQL92 |
- |---------------+------------------------------------|
- | bool | BOOL |
- | text | / |
- | bpchar | CHAR(n) |
- | varchar | VARCHAR(n) |
- | int2 | SMALLINT |
- | int4 | INT |
- | int8 | / |
- | money | / |
- | float4 | FLOAT(p) p<7=float4, p<16=float8 |
- | float8 | REAL |
- | abstime | / |
- | reltime | / |
- | tinterval | / |
- | date | / |
- | time | / |
- | datetime | / |
- | timespan | TINTERVAL |
- | timestamp | TIMESTAMP |
- +---------------+------------------------------------+
-
-For further details concerning the PostgreSQL specific data-types please read
-the L<pgbuiltin>.
-
-=item B<type_info>
-
- @type_info = $dbh->type_info($data_type);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<quote>
-
- $sql = $dbh->quote($value, $data_type);
-
-This module implements its own quote method. In addition to the DBI method it
-also doubles the backslash, because PostgreSQL treats a backslash as an escape
-character.
-
-B<NOTE:> The undocumented (and invalid) support for the C<SQL_BINARY> data
-type is officially deprecated. Use C<PG_BYTEA> with C<bind_param()> instead:
-
- $rv = $sth->bind_param($param_num, $bind_value,
- { pg_type => DBD::Pg::PG_BYTEA });
-
-=back
-
-=head2 Database Handle Attributes
-
-=over 4
-
-=item B<AutoCommit> (boolean)
-
-Supported by the driver as proposed by DBI. According to the classification of
-DBI, PostgreSQL is a database, in which a transaction must be explicitly
-started. Without starting a transaction, every change to the database becomes
-immediately permanent. The default of AutoCommit is on, which corresponds to
-the default behavior of PostgreSQL. When setting AutoCommit to off, a
-transaction will be started and every commit or rollback will automatically
-start a new transaction. For details see the notes about B<Transactions>
-elsewhere in this document.
-
-=item B<Driver> (handle)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<Name> (string, read-only)
-
-The default method of DBI is overridden by a driver specific method, which
-returns only the database name. Anything else from the connection string is
-stripped off. Note, that here the method is read-only in contrast to the DBI
-specs.
-
-=item B<RowCacheSize> (integer)
-
-Implemented by DBI, not used by the driver.
-
-=item B<pg_auto_escape> (boolean)
-
-PostgreSQL specific attribute. If true, then quotes and backslashes in all
-parameters will be escaped in the following way:
-
- escape quote with a quote (SQL)
- escape backslash with a backslash
-
-The default is on. Note, that PostgreSQL also accepts quotes, which are
-escaped by a backslash. Any other ASCII character can be used directly in a
-string constant.
-
-=item B<pg_enable_utf8> (boolean)
-
-PostgreSQL specific attribute. If true, then the utf8 flag will be
-turned for returned character data (if the data is valid utf8). For
-details about the utf8 flag, see L<Encode>. This is only relevant under
-perl 5.8 and higher.
-
-B<NB>: This attribute is experimental and may be subject to change.
-
-=item B<pg_INV_READ> (integer, read-only)
-
-Constant to be used for the mode in lo_creat and lo_open.
-
-=item B<pg_INV_WRITE> (integer, read-only)
-
-Constant to be used for the mode in lo_creat and lo_open.
-
-=back
-
-=head1 DBI STATEMENT HANDLE OBJECTS
-
-=head2 Statement Handle Methods
-
-=over 4
-
-=item B<bind_param>
-
- $rv = $sth->bind_param($param_num, $bind_value, \%attr);
-
-Supported by the driver as proposed by DBI.
-
-B<NOTE:> The undocumented (and invalid) support for the C<SQL_BINARY>
-SQL type is officially deprecated. Use C<PG_BYTEA> instead:
-
- $rv = $sth->bind_param($param_num, $bind_value,
- { pg_type => DBD::Pg::PG_BYTEA });
-
-=item B<bind_param_inout>
-
-Not supported by this driver.
-
-=item B<execute>
-
- $rv = $sth->execute(@bind_values);
-
-Supported by the driver as proposed by DBI. In addition to 'UPDATE', 'DELETE',
-'INSERT' statements, for which it returns always the number of affected rows,
-the execute method can also be used for 'SELECT ... INTO table' statements.
-
-=item B<fetchrow_arrayref>
-
- $ary_ref = $sth->fetchrow_arrayref;
-
-Supported by the driver as proposed by DBI.
-
-=item B<fetchrow_array>
-
- @ary = $sth->fetchrow_array;
-
-Supported by the driver as proposed by DBI.
-
-=item B<fetchrow_hashref>
-
- $hash_ref = $sth->fetchrow_hashref;
-
-Supported by the driver as proposed by DBI.
-
-=item B<fetchall_arrayref>
-
- $tbl_ary_ref = $sth->fetchall_arrayref;
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<finish>
-
- $rc = $sth->finish;
-
-Supported by the driver as proposed by DBI.
-
-=item B<rows>
-
- $rv = $sth->rows;
-
-Supported by the driver as proposed by DBI. In contrast to many other drivers
-the number of rows is available immediately after executing the statement.
-
-=item B<bind_col>
-
- $rc = $sth->bind_col($column_number, \$var_to_bind, \%attr);
-
-Supported by the driver as proposed by DBI.
-
-=item B<bind_columns>
-
- $rc = $sth->bind_columns(\%attr, @list_of_refs_to_vars_to_bind);
-
-Supported by the driver as proposed by DBI.
-
-=item B<dump_results>
-
- $rows = $sth->dump_results($maxlen, $lsep, $fsep, $fh);
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<blob_read>
-
- $blob = $sth->blob_read($id, $offset, $len);
-
-Supported by this driver as proposed by DBI. Implemented by DBI but not
-documented, so this method might change.
-
-This method seems to be heavily influenced by the current implementation of
-blobs in Oracle. Nevertheless we try to be as compatible as possible. Whereas
-Oracle suffers from the limitation that blobs are related to tables and every
-table can have only one blob (data-type LONG), PostgreSQL handles its blobs
-independent of any table by using so called object identifiers. This explains
-why the blob_read method is blessed into the STATEMENT package and not part of
-the DATABASE package. Here the field parameter has been used to handle this
-object identifier. The offset and len parameter may be set to zero, in which
-case the driver fetches the whole blob at once.
-
-Starting with PostgreSQL-6.5 every access to a blob has to be put into a
-transaction. This holds even for a read-only access.
-
-See also the PostgreSQL-specific functions concerning blobs which are
-available via the func-interface.
-
-For further information and examples about blobs, please read the chapter
-about Large Objects in the PostgreSQL Programmer's Guide.
-
-=back
-
-=head2 Statement Handle Attributes
-
-=over 4
-
-=item B<NUM_OF_FIELDS> (integer, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<NUM_OF_PARAMS> (integer, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<NAME> (array-ref, read-only)
-
-Supported by the driver as proposed by DBI.
-
-=item B<NAME_lc> (array-ref, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<NAME_uc> (array-ref, read-only)
-
-Implemented by DBI, no driver-specific impact.
-
-=item B<TYPE> (array-ref, read-only)
-
-Supported by the driver as proposed by DBI, with the restriction, that the
-types are PostgreSQL specific data-types which do not correspond to
-international standards.
-
-=item B<PRECISION> (array-ref, read-only)
-
-Not supported by the driver.
-
-=item B<SCALE> (array-ref, read-only)
-
-Not supported by the driver.
-
-=item B<NULLABLE> (array-ref, read-only)
-
-Not supported by the driver.
-
-=item B<CursorName> (string, read-only)
-
-Not supported by the driver. See the note about B<Cursors> elsewhere in this
-document.
-
-=item B<Statement> (string, read-only)
-
-Supported by the driver as proposed by DBI.
-
-=item B<RowCache> (integer, read-only)
-
-Not supported by the driver.
-
-=item B<pg_size> (array-ref, read-only)
-
-PostgreSQL specific attribute. It returns a reference to an array of integer
-values for each column. The integer shows the size of the column in
-bytes. Variable length columns are indicated by -1.
-
-=item B<pg_type> (hash-ref, read-only)
-
-PostgreSQL specific attribute. It returns a reference to an array of strings
-for each column. The string shows the name of the data_type.
-
-=item B<pg_oid_status> (integer, read-only)
-
-PostgreSQL specific attribute. It returns the OID of the last INSERT command.
-
-=item B<pg_cmd_status> (integer, read-only)
-
-PostgreSQL specific attribute. It returns the type of the last
-command. Possible types are: INSERT, DELETE, UPDATE, SELECT.
-
-=back
-
-=head1 FURTHER INFORMATION
-
-=head2 Transactions
-
-The transaction behavior is now controlled with the attribute AutoCommit. For
-a complete definition of AutoCommit please refer to the DBI documentation.
-
-According to the DBI specification the default for AutoCommit is TRUE. In this
-mode, any change to the database becomes valid immediately. Any 'begin',
-'commit' or 'rollback' statement will be rejected.
-
-If AutoCommit is switched-off, immediately a transaction will be started by
-issuing a 'begin' statement. Any 'commit' or 'rollback' will start a new
-transaction. A disconnect will issue a 'rollback' statement.
-
-=head2 Large Objects
-
-The driver supports all large-objects related functions provided by libpq via
-the func-interface. Please note, that starting with PostgreSQL 6.5 any access
-to a large object - even read-only - has to be put into a transaction!
-
-=head2 Cursors
-
-Although PostgreSQL has a cursor concept, it has not been used in the current
-implementation. Cursors in PostgreSQL can only be used inside a transaction
-block. Because only one transaction block at a time is allowed, this would
-have implied the restriction, not to use any nested SELECT statements. Hence
-the execute method fetches all data at once into data structures located in
-the frontend application. This has to be considered when selecting large
-amounts of data!
-
-=head2 Data-Type bool
-
-The current implementation of PostgreSQL returns 't' for true and 'f' for
-false. From the Perl point of view a rather unfortunate choice. The DBD::Pg
-module translates the result for the data-type bool in a perl-ish like manner:
-'f' -> '0' and 't' -> '1'. This way the application does not have to check the
-database-specific returned values for the data-type bool, because Perl treats
-'0' as false and '1' as true.
-
-Boolean values can be passed to PostgreSQL as TRUE, 't', 'true', 'y', 'yes' or
-'1' for true and FALSE, 'f', 'false', 'n', 'no' or '0' for false.
-
-=head2 Schema support
-
-PostgreSQL version 7.3 introduced schema support. Note that the PostgreSQL
-schema concept may differ to that of other databases. Please refer to the
-PostgreSQL documentation for more details.
-
-Currently DBD::Pg does not provide explicit support for PostgreSQL schemas.
-However, schema functionality may be used without any restrictions by
-explicitly addressing schema objects, e.g.
-
- my $res = $dbh->selectall_arrayref("SELECT * FROM my_schema.my_table");
-
-or by manipulating the schema search path with SET search_path, e.g.
-
- $dbh->do("SET search_path TO my_schema, public");
-
-B<NOTE:> If you create an object with the same name as a PostgreSQL system
-object (as contained in the pg_catalog schema) and explicitly set the search
-path so that pg_catalog comes after the new object's schema, some DBD::Pg
-methods (particularly those querying PostgreSQL system objects) may fail.
-This problem should be fixed in a future release of DBD::Pg. Creating objects
-with the same name as system objects (or beginning with 'pg_') is not
-recommended practice and should be avoided in any case.
-
-=head1 SEE ALSO
-
-L<DBI>
-
-=head1 AUTHORS
-
-DBI and DBD-Oracle by Tim Bunce (Tim.Bunce@ig.co.uk)
-
-DBD-Pg by Edmund Mergl (E.Mergl@bawue.de) and Jeffrey W. Baker
-(jwbaker@acm.org). By David Wheeler <david@wheeler.net>, Jason
-Stewart <jason@openinformatics.com> and Bruce Momjian
-<pgman@candle.pha.pa.us> after v1.13.
-
-Major parts of this package have been copied from DBI and DBD-Oracle.
-
-=head1 COPYRIGHT
-
-The DBD::Pg module is free software. You may distribute under the terms of
-either the GNU General Public License or the Artistic License, as specified in
-the Perl README file.
-
-=head1 ACKNOWLEDGMENTS
-
-See also B<DBI/ACKNOWLEDGMENTS>.
-
-=cut
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.xs b/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.xs
deleted file mode 100644
index e5e4362..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/Pg.xs
+++ /dev/null
@@ -1,644 +0,0 @@
-/*
- $Id: Pg.xs,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
- Copyright (c) 1997,1998,1999,2000 Edmund Mergl
- Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
-
- You may distribute under the terms of either the GNU General Public
- License or the Artistic License, as specified in the Perl README file.
-
-*/
-
-
-#include "Pg.h"
-
-
-#ifdef _MSC_VER
-#define strncasecmp(a,b,c) _strnicmp((a),(b),(c))
-#endif
-
-
-
-DBISTATE_DECLARE;
-
-
-MODULE = DBD::Pg PACKAGE = DBD::Pg
-
-I32
-constant(name=Nullch)
- char *name
- PROTOTYPE:
- ALIAS:
- PG_BOOL = 16
- PG_BYTEA = 17
- PG_CHAR = 18
- PG_INT8 = 20
- PG_INT2 = 21
- PG_INT4 = 23
- PG_TEXT = 25
- PG_OID = 26
- PG_FLOAT4 = 700
- PG_FLOAT8 = 701
- PG_ABSTIME = 702
- PG_RELTIME = 703
- PG_TINTERVAL = 704
- PG_BPCHAR = 1042
- PG_VARCHAR = 1043
- PG_DATE = 1082
- PG_TIME = 1083
- PG_DATETIME = 1184
- PG_TIMESPAN = 1186
- PG_TIMESTAMP = 1296
- CODE:
- if (!ix) {
- if (!name) name = GvNAME(CvGV(cv));
- croak("Unknown DBD::Pg constant '%s'", name);
- }
- else RETVAL = ix;
- OUTPUT:
- RETVAL
-
-PROTOTYPES: DISABLE
-
-BOOT:
- items = 0; /* avoid 'unused variable' warning */
- DBISTATE_INIT;
- /* XXX this interface will change: */
- DBI_IMP_SIZE("DBD::Pg::dr::imp_data_size", sizeof(imp_drh_t));
- DBI_IMP_SIZE("DBD::Pg::db::imp_data_size", sizeof(imp_dbh_t));
- DBI_IMP_SIZE("DBD::Pg::st::imp_data_size", sizeof(imp_sth_t));
- dbd_init(DBIS);
-
-
-# ------------------------------------------------------------
-# driver level interface
-# ------------------------------------------------------------
-MODULE = DBD::Pg PACKAGE = DBD::Pg::dr
-
-# disconnect_all renamed and ALIASed to avoid length clash on VMS :-(
-void
-discon_all_(drh)
- SV * drh
- ALIAS:
- disconnect_all = 1
- CODE:
- D_imp_drh(drh);
- ST(0) = dbd_discon_all(drh, imp_drh) ? &sv_yes : &sv_no;
-
-
-
-# ------------------------------------------------------------
-# database level interface
-# ------------------------------------------------------------
-MODULE = DBD::Pg PACKAGE = DBD::Pg::db
-
-void
-_login(dbh, dbname, username, pwd)
- SV * dbh
- char * dbname
- char * username
- char * pwd
- CODE:
- D_imp_dbh(dbh);
- ST(0) = pg_db_login(dbh, imp_dbh, dbname, username, pwd) ? &sv_yes : &sv_no;
-
-
-int
-_ping(dbh)
- SV * dbh
- CODE:
- int ret;
- ret = dbd_db_ping(dbh);
- if (ret == 0) {
- XST_mUNDEF(0);
- }
- else {
- XST_mIV(0, ret);
- }
-
-void
-getfd(dbh)
- SV * dbh
- CODE:
- int ret;
- D_imp_dbh(dbh);
-
- ret = dbd_db_getfd(dbh, imp_dbh);
- ST(0) = sv_2mortal( newSViv( ret ) );
-
-void
-pg_notifies(dbh)
- SV * dbh
- CODE:
- D_imp_dbh(dbh);
-
- ST(0) = dbd_db_pg_notifies(dbh, imp_dbh);
-
-void
-commit(dbh)
- SV * dbh
- CODE:
- D_imp_dbh(dbh);
- if (DBIc_has(imp_dbh, DBIcf_AutoCommit)) {
- warn("commit ineffective with AutoCommit enabled");
- }
- ST(0) = dbd_db_commit(dbh, imp_dbh) ? &sv_yes : &sv_no;
-
-
-void
-rollback(dbh)
- SV * dbh
- CODE:
- D_imp_dbh(dbh);
- if (DBIc_has(imp_dbh, DBIcf_AutoCommit)) {
- warn("rollback ineffective with AutoCommit enabled");
- }
- ST(0) = dbd_db_rollback(dbh, imp_dbh) ? &sv_yes : &sv_no;
-
-
-void
-disconnect(dbh)
- SV * dbh
- CODE:
- D_imp_dbh(dbh);
- if ( !DBIc_ACTIVE(imp_dbh) ) {
- XSRETURN_YES;
- }
- /* pre-disconnect checks and tidy-ups */
- if (DBIc_CACHED_KIDS(imp_dbh)) {
- SvREFCNT_dec(DBIc_CACHED_KIDS(imp_dbh));
- DBIc_CACHED_KIDS(imp_dbh) = Nullhv;
- }
- /* Check for disconnect() being called whilst refs to cursors */
- /* still exists. This possibly needs some more thought. */
- if (DBIc_ACTIVE_KIDS(imp_dbh) && DBIc_WARN(imp_dbh) && !dirty) {
- char *plural = (DBIc_ACTIVE_KIDS(imp_dbh)==1) ? "" : "s";
- warn("disconnect(%s) invalidates %d active statement%s. %s",
- SvPV(dbh,na), (int)DBIc_ACTIVE_KIDS(imp_dbh), plural,
- "Either destroy statement handles or call finish on them before disconnecting.");
- }
- ST(0) = dbd_db_disconnect(dbh, imp_dbh) ? &sv_yes : &sv_no;
-
-
-void
-STORE(dbh, keysv, valuesv)
- SV * dbh
- SV * keysv
- SV * valuesv
- CODE:
- D_imp_dbh(dbh);
- ST(0) = &sv_yes;
- if (!dbd_db_STORE_attrib(dbh, imp_dbh, keysv, valuesv)) {
- if (!DBIS->set_attr(dbh, keysv, valuesv)) {
- ST(0) = &sv_no;
- }
- }
-
-
-void
-FETCH(dbh, keysv)
- SV * dbh
- SV * keysv
- CODE:
- D_imp_dbh(dbh);
- SV *valuesv = dbd_db_FETCH_attrib(dbh, imp_dbh, keysv);
- if (!valuesv) {
- valuesv = DBIS->get_attr(dbh, keysv);
- }
- ST(0) = valuesv; /* dbd_db_FETCH_attrib did sv_2mortal */
-
-
-void
-DESTROY(dbh)
- SV * dbh
- PPCODE:
- D_imp_dbh(dbh);
- ST(0) = &sv_yes;
- if (!DBIc_IMPSET(imp_dbh)) { /* was never fully set up */
- if (DBIc_WARN(imp_dbh) && !dirty && dbis->debug >= 2) {
- warn("Database handle %s DESTROY ignored - never set up", SvPV(dbh,na));
- }
- }
- else {
- /* pre-disconnect checks and tidy-ups */
- if (DBIc_CACHED_KIDS(imp_dbh)) {
- SvREFCNT_dec(DBIc_CACHED_KIDS(imp_dbh));
- DBIc_CACHED_KIDS(imp_dbh) = Nullhv;
- }
- if (DBIc_IADESTROY(imp_dbh)) { /* want's ineffective destroy */
- DBIc_ACTIVE_off(imp_dbh);
- }
- if (DBIc_ACTIVE(imp_dbh)) {
- if (DBIc_WARN(imp_dbh) && (!dirty || dbis->debug >= 3)) {
- warn("Database handle destroyed without explicit disconnect");
- }
- /* The application has not explicitly disconnected. That's bad. */
- /* To ensure integrity we *must* issue a rollback. This will be */
- /* harmless if the application has issued a commit. If it hasn't */
- /* then it'll ensure integrity. Consider a Ctrl-C killing perl */
- /* between two statements that must be executed as a transaction. */
- /* Perl will call DESTROY on the dbh and, if we don't rollback, */
- /* the server will automatically commit! Bham! Corrupt database! */
- if (!DBIc_has(imp_dbh,DBIcf_AutoCommit)) {
- dbd_db_rollback(dbh, imp_dbh); /* ROLLBACK! */
- }
- dbd_db_disconnect(dbh, imp_dbh);
- }
- dbd_db_destroy(dbh, imp_dbh);
- }
-
-
-# driver specific functions
-
-
-void
-lo_open(dbh, lobjId, mode)
- SV * dbh
- unsigned int lobjId
- int mode
- CODE:
- int ret = pg_db_lo_open(dbh, lobjId, mode);
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-void
-lo_close(dbh, fd)
- SV * dbh
- int fd
- CODE:
- ST(0) = (-1 != pg_db_lo_close(dbh, fd)) ? &sv_yes : &sv_no;
-
-
-void
-lo_read(dbh, fd, buf, len)
- SV * dbh
- int fd
- char * buf
- int len
- PREINIT:
- SV *bufsv = SvROK(ST(2)) ? SvRV(ST(2)) : ST(2);
- int ret;
- CODE:
- buf = SvGROW(bufsv, len + 1);
- ret = pg_db_lo_read(dbh, fd, buf, len);
- if (ret > 0) {
- SvCUR_set(bufsv, ret);
- *SvEND(bufsv) = '\0';
- sv_setpvn(ST(2), buf, ret);
- SvSETMAGIC(ST(2));
- }
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_write(dbh, fd, buf, len)
- SV * dbh
- int fd
- char * buf
- int len
- CODE:
- int ret = pg_db_lo_write(dbh, fd, buf, len);
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_lseek(dbh, fd, offset, whence)
- SV * dbh
- int fd
- int offset
- int whence
- CODE:
- int ret = pg_db_lo_lseek(dbh, fd, offset, whence);
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_creat(dbh, mode)
- SV * dbh
- int mode
- CODE:
- int ret = pg_db_lo_creat(dbh, mode);
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_tell(dbh, fd)
- SV * dbh
- int fd
- CODE:
- int ret = pg_db_lo_tell(dbh, fd);
- ST(0) = (-1 != ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_unlink(dbh, lobjId)
- SV * dbh
- unsigned int lobjId
- CODE:
- ST(0) = (-1 != pg_db_lo_unlink(dbh, lobjId)) ? &sv_yes : &sv_no;
-
-
-void
-lo_import(dbh, filename)
- SV * dbh
- char * filename
- CODE:
- unsigned int ret = pg_db_lo_import(dbh, filename);
- ST(0) = (ret) ? sv_2mortal(newSViv(ret)) : &sv_undef;
-
-
-void
-lo_export(dbh, lobjId, filename)
- SV * dbh
- unsigned int lobjId
- char * filename
- CODE:
- ST(0) = (-1 != pg_db_lo_export(dbh, lobjId, filename)) ? &sv_yes : &sv_no;
-
-
-void
-putline(dbh, buf)
- SV * dbh
- char * buf
- CODE:
- int ret = pg_db_putline(dbh, buf);
- ST(0) = (-1 != ret) ? &sv_yes : &sv_no;
-
-
-void
-getline(dbh, buf, len)
- PREINIT:
- SV *bufsv = SvROK(ST(1)) ? SvRV(ST(1)) : ST(1);
- INPUT:
- SV * dbh
- int len
- char * buf = sv_grow(bufsv, len);
- CODE:
- int ret = pg_db_getline(dbh, buf, len);
- if (*buf == '\\' && *(buf+1) == '.') {
- ret = -1;
- }
- sv_setpv((SV*)ST(1), buf);
- SvSETMAGIC(ST(1));
- ST(0) = (-1 != ret) ? &sv_yes : &sv_no;
-
-
-void
-endcopy(dbh)
- SV * dbh
- CODE:
- ST(0) = (-1 != pg_db_endcopy(dbh)) ? &sv_yes : &sv_no;
-
-
-# -- end of DBD::Pg::db
-
-
-# ------------------------------------------------------------
-# statement interface
-# ------------------------------------------------------------
-MODULE = DBD::Pg PACKAGE = DBD::Pg::st
-
-void
-_prepare(sth, statement, attribs=Nullsv)
- SV * sth
- char * statement
- SV * attribs
- CODE:
- {
- D_imp_sth(sth);
- D_imp_dbh_from_sth;
- DBD_ATTRIBS_CHECK("_prepare", sth, attribs);
- if (!strncasecmp(statement, "begin", 5) ||
- !strncasecmp(statement, "end", 4) ||
- !strncasecmp(statement, "commit", 6) ||
- !strncasecmp(statement, "abort", 5) ||
- !strncasecmp(statement, "rollback", 8) ) {
- warn("please use DBI functions for transaction handling");
- ST(0) = &sv_no;
- } else {
- ST(0) = dbd_st_prepare(sth, imp_sth, statement, attribs) ? &sv_yes : &sv_no;
- }
- }
-
-
-void
-rows(sth)
- SV * sth
- CODE:
- D_imp_sth(sth);
- XST_mIV(0, dbd_st_rows(sth, imp_sth));
-
-
-void
-bind_param(sth, param, value, attribs=Nullsv)
- SV * sth
- SV * param
- SV * value
- SV * attribs
- CODE:
- {
- IV sql_type = 0;
- D_imp_sth(sth);
- if (attribs) {
- if (SvNIOK(attribs)) {
- sql_type = SvIV(attribs);
- attribs = Nullsv;
- }
- else {
- SV **svp;
- DBD_ATTRIBS_CHECK("bind_param", sth, attribs);
- /* XXX we should perhaps complain if TYPE is not SvNIOK */
- DBD_ATTRIB_GET_IV(attribs, "TYPE", 4, svp, sql_type);
- }
- }
- ST(0) = dbd_bind_ph(sth, imp_sth, param, value, sql_type, attribs, FALSE, 0) ? &sv_yes : &sv_no;
- }
-
-
-void
-bind_param_inout(sth, param, value_ref, maxlen, attribs=Nullsv)
- SV * sth
- SV * param
- SV * value_ref
- IV maxlen
- SV * attribs
- CODE:
- {
- IV sql_type = 0;
- D_imp_sth(sth);
- if (!SvROK(value_ref) || SvTYPE(SvRV(value_ref)) > SVt_PVMG) {
- croak("bind_param_inout needs a reference to a scalar value");
- }
- if (SvREADONLY(SvRV(value_ref))) {
- croak(no_modify);
- }
- if (attribs) {
- if (SvNIOK(attribs)) {
- sql_type = SvIV(attribs);
- attribs = Nullsv;
- }
- else {
- SV **svp;
- DBD_ATTRIBS_CHECK("bind_param", sth, attribs);
- DBD_ATTRIB_GET_IV(attribs, "TYPE", 4, svp, sql_type);
- }
- }
- ST(0) = dbd_bind_ph(sth, imp_sth, param, SvRV(value_ref), sql_type, attribs, TRUE, maxlen) ? &sv_yes : &sv_no;
- }
-
-
-void
-execute(sth, ...)
- SV * sth
- CODE:
- D_imp_sth(sth);
- int ret;
- if (items > 1) {
- /* Handle binding supplied values to placeholders */
- int i;
- SV *idx;
- imp_sth->all_params_len = 0; /* used for malloc of statement string in case we have placeholders */
- if (items-1 != DBIc_NUM_PARAMS(imp_sth)) {
- croak("execute called with %ld bind variables, %d needed", items-1, DBIc_NUM_PARAMS(imp_sth));
- XSRETURN_UNDEF;
- }
- idx = sv_2mortal(newSViv(0));
- for(i=1; i < items ; ++i) {
- sv_setiv(idx, i);
- if (!dbd_bind_ph(sth, imp_sth, idx, ST(i), 0, Nullsv, FALSE, 0)) {
- XSRETURN_UNDEF; /* dbd_bind_ph already registered error */
- }
- }
- }
- ret = dbd_st_execute(sth, imp_sth);
- /* remember that dbd_st_execute must return <= -2 for error */
- if (ret == 0) { /* ok with no rows affected */
- XST_mPV(0, "0E0"); /* (true but zero) */
- }
- else if (ret < -1) { /* -1 == unknown number of rows */
- XST_mUNDEF(0); /* <= -2 means error */
- }
- else {
- XST_mIV(0, ret); /* typically 1, rowcount or -1 */
- }
-
-
-void
-fetchrow_arrayref(sth)
- SV * sth
- ALIAS:
- fetch = 1
- CODE:
- D_imp_sth(sth);
- AV *av = dbd_st_fetch(sth, imp_sth);
- ST(0) = (av) ? sv_2mortal(newRV_inc((SV *)av)) : &sv_undef;
-
-
-void
-fetchrow_array(sth)
- SV * sth
- ALIAS:
- fetchrow = 1
- PPCODE:
- D_imp_sth(sth);
- AV *av;
- av = dbd_st_fetch(sth, imp_sth);
- if (av) {
- int num_fields = AvFILL(av)+1;
- int i;
- EXTEND(sp, num_fields);
- for(i=0; i < num_fields; ++i) {
- PUSHs(AvARRAY(av)[i]);
- }
- }
-
-
-void
-finish(sth)
- SV * sth
- CODE:
- D_imp_sth(sth);
- D_imp_dbh_from_sth;
- if (!DBIc_ACTIVE(imp_dbh)) {
- /* Either an explicit disconnect() or global destruction */
- /* has disconnected us from the database. Finish is meaningless */
- /* XXX warn */
- XSRETURN_YES;
- }
- if (!DBIc_ACTIVE(imp_sth)) {
- /* No active statement to finish */
- XSRETURN_YES;
- }
- ST(0) = dbd_st_finish(sth, imp_sth) ? &sv_yes : &sv_no;
-
-
-void
-blob_read(sth, field, offset, len, destrv=Nullsv, destoffset=0)
- SV * sth
- int field
- long offset
- long len
- SV * destrv
- long destoffset
- CODE:
- {
- D_imp_sth(sth);
- if (!destrv) {
- destrv = sv_2mortal(newRV_inc(sv_2mortal(newSViv(0))));
- }
- ST(0) = dbd_st_blob_read(sth, imp_sth, field, offset, len, destrv, destoffset) ? SvRV(destrv) : &sv_undef;
- }
-
-void
-STORE(sth, keysv, valuesv)
- SV * sth
- SV * keysv
- SV * valuesv
- CODE:
- D_imp_sth(sth);
- ST(0) = &sv_yes;
- if (!dbd_st_STORE_attrib(sth, imp_sth, keysv, valuesv)) {
- if (!DBIS->set_attr(sth, keysv, valuesv)) {
- ST(0) = &sv_no;
- }
- }
-
-
-# FETCH renamed and ALIASed to avoid case clash on VMS :-(
-void
-FETCH_attrib(sth, keysv)
- SV * sth
- SV * keysv
- ALIAS:
- FETCH = 1
- CODE:
- D_imp_sth(sth);
- SV *valuesv = dbd_st_FETCH_attrib(sth, imp_sth, keysv);
- if (!valuesv) {
- valuesv = DBIS->get_attr(sth, keysv);
- }
- ST(0) = valuesv; /* dbd_st_FETCH_attrib did sv_2mortal */
-
-
-void
-DESTROY(sth)
- SV * sth
- PPCODE:
- D_imp_sth(sth);
- ST(0) = &sv_yes;
- if (!DBIc_IMPSET(imp_sth)) { /* was never fully set up */
- if (DBIc_WARN(imp_sth) && !dirty && dbis->debug >= 2) {
- warn("Statement handle %s DESTROY ignored - never set up", SvPV(sth,na));
- }
- }
- else {
- if (DBIc_IADESTROY(imp_sth)) { /* want's ineffective destroy */
- DBIc_ACTIVE_off(imp_sth);
- }
- if (DBIc_ACTIVE(imp_sth)) {
- dbd_st_finish(sth, imp_sth);
- }
- dbd_st_destroy(sth, imp_sth);
- }
-
-
-# end of Pg.xs
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/README b/install/5.005/DBD-Pg-1.22-fixvercmp/README
deleted file mode 100644
index 7edebde..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/README
+++ /dev/null
@@ -1,166 +0,0 @@
-
-DBD::Pg -- the DBI PostgreSQL interface for Perl
-
-# $Id: README,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-DESCRIPTION:
-------------
-
-This is version 1.21 of DBD-Pg. The web site for this interface is at:
-
- http://gborg.postgresql.org/project/dbdpg/projdisplay.php
-
-For further information about DBI look at:
-
- http://dbi.perl.org/
-
-For information about PostgreSQL, visit:
-
- http://www.postgresql.org/
-
-COPYRIGHT:
-----------
-
- Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
- Copyright (c) 1997,1998,1999,2000 Edmund Mergl
- Copyright (c) 2002 Jeffrey W. Baker
- Copyright (c) 2002 PostgreSQL Global Development Group
-
-You may distribute under the terms of either the GNU General Public
-License or the Artistic License, as specified in the Perl README file.
-
-
-HOW TO GET THE LATEST VERSION:
-------------------------------
-
-Use the following URL to look for new versions of this module:
-
- http://gborg.postgresql.org/project/dbdpg/projdisplay.php
-
-or
-
- http://www.perl.com/CPAN/modules/by-module/DBD/
-
-Note, that this request will be redirected automatically to the
-nearest CPAN site.
-
-
-IF YOU HAVE PROBLEMS:
----------------------
-
-Please send comments and bug-reports to <dbd-general@gborg.postgresql.org>
-
-Please include the output of perl -v and perl -V, the version of PostgreSQL,
-the version of DBD-Pg, the version of DBI, and details about your platform
-in your bug-report.
-
-
-REQUIREMENTS:
--------------
-
- build, test, and install Perl 5 (at least 5.005)
- build, test, and install the DBI module (at least 1.30)
- build, test, and install PostgreSQL (at least 7.3)
- build, test, and install Test::Simple (at least 0.17)
-
-INSTALLATION:
--------------
-
-By default Makefile.PL uses App:Info to find the location of the
-PostgreSQL library and include directories. However, if you want to
-control it yourself, define the environment variables POSTGRES_INCLUDE
-and POSTGRES_LIB, or POSTGRES_HOME.
-
- 1. perl Makefile.PL
- 2. make
- 3. make test
- 4. make install
-
-Do steps 1 to 3 as normal user, not as root!
-
-
-TESTING:
---------
-
-The tests are designed to connect to a live database. The following
-environment variables must be set for the tests to run:
-
- DBI_DSN=dbi:Pg:dbname=<database>
- DBI_USER=<username>
- DBI_PASS=<password>
-
-If you are using the shared library libpq.so check if your dynamic
-loader finds libpq.so. With Linux the command /sbin/ldconfig -v should
-tell you, where it finds libpq.so. If ldconfig does not find libpq.so,
-either add an appropriate entry to /etc/ld.so.conf and re-run ldconfig
-or add the path to the environment variable LD_LIBRARY_PATH.
-
-A typical error message resulting from not finding libpq.so is:
-
- install_driver(Pg) failed: Can't load './blib/arch/auto/DBD/Pg/Pg.so'
- for module DBD::Pg: File not found at
-
-If you get an error message like:
-
- perl: error while loading shared libraries:
- /usr/lib/perl5/site_perl/5.6.0/i386-linux/auto/DBD/Pg/Pg.so: undefined
- symbol: PQconnectdb
-
-when you call DBI->connect, then your libpq.so was probably not seen at
-build-time. This should have caused 'make test' to fail; did you really
-run it and look at the output? Check the setting of POSTGRES_LIB and
-recompile DBD-Pg.
-
-Some linux distributions have incomplete perl installations. If you have
-compile errors like "XS_VERSION_BOOTCHECK undeclared", do:
-
- find .../lib/perl5 -name XSUB.h -print
-
-If this file is not present, you need to recompile and re-install perl.
-
-SGI users: if you get segmentation faults make sure, you use the malloc
-which comes with perl when compiling perl (the default is not to).
-"David R. Noble" <drnoble@engsci.sandia.gov>
-
-HP users: if you get error messages like:
-
- can't open shared library: .../lib/libpq.sl
- No such file or directory
-
-when running the test script, try to replace the 'shared' option in the
-LDDFLAGS with 'archive'. Dan Lauterbach <danla@dimensional.com>
-
-
-FreeBSD users: if you get during make test the error message:
-
- 'DBD driver has not implemented the AutoCommit attribute'
-
-recompile the DBI module and the DBD-Pg module and disable optimization.
-This error message is due to the broken optimization in gcc-2.7.2.1.
-
-If you get compiler errors like:
- In function `XS_DBD__Pg__dr_discon_all_'
- `sv_yes' undeclared (first use in this function)
-
-It may be because there is a 'patchlevel.h' file from another package
-(such as 'hdf') in your POSTGRES_INCLUDE dir. The presence of this file
-prevents the compiler from finding the perl include file
-'mach/CORE/patchlevel.h'. Do 'pg_config --includedir' to identify the
-POSTGRES_INCLUDE dir. Rename patchlevel.h whilst you build DBD::Pg.
-
-
-Sun Users: if you get compile errors like:
-
- /usr/include/string.h:57: parse error before `]'
-
-then you need to remove from pgsql/include/libpq-fe.h the define for
-strerror, which clashes with the definition in the standard include
-file.
-
-Win32 Users: Running DBD-Pg scripts on Win32 needs some configuration work
-on the server side:
-
- o add a postgres user with the same name as the NT-User
- (eg Administrator)
- o make sure, that your pg_hba.conf on the server is configured,
- such that a connection from another host will be accepted
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/README.win32 b/install/5.005/DBD-Pg-1.22-fixvercmp/README.win32
deleted file mode 100644
index 3cbe673..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/README.win32
+++ /dev/null
@@ -1,63 +0,0 @@
-
-$Id: README.win32,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-
-Here is a step-by-step procedure for getting DBD-Pg to work on Windows
-NT. This Port has been done by Bob Kline <bkline@rksystems.com>.
-
-
-prerequisites: (older versions might also work, but these are the
--------------- versions I used)
-
- o Windows NT4 SP4
- o Visual Studio 6.0
- o ActivePerl-5_6_0_613 with DBI-1.13
- o postgresql-7.0.2
- o DBD-Pg-0.95
-
-Here we assume, that perl and postgresql have been installed in C:\. Now
-perform the following steps:
-
-
-1. compile libpq
-----------------
-
-set POSTGRES_HOME=C:\postgresql-7.0.2
-cd postgresql-7.0.2
-mkdir lib
-mkdir include
-cd src
-copy include\port\win32.h include\os.h
-edit interfaces\libpq\fe-connect.c and add as first statement in connectDBStart() the following code:
- #ifdef WIN32
- static int WeHaveCalledWSAStartup;
- if (!WeHaveCalledWSAStartup) {
- WSADATA wsaData;
- if (WSAStartup(MAKEWORD(1, 1), &wsaData)) {
- printfPQExpBuffer(&conn->errorMessage, "WSAStartup failed: errno=%d\n", h_errno);
- goto connect_errReturn;
- }
- WeHaveCalledWSAStartup = 1;
- }
- #endif
-edit interfaces\libpq\win32.mak and change the flag /ML to /MD: CPP_PROJ=/nologo /MD ...
-nmake /f win32.mak
-cd ..
-copy src\interfaces\libpq\Release\libpq.lib lib
-copy src\interfaces\libpq\libpq-fe.h include
-copy src\include\postgres_ext.h include
-cd ..
-
-
-2. build DBD-Pg
----------------
-
-cd DBD-Pg
-perl Makefile.PL CAPI=TRUE
-nmake
-set the environment variable PGHOST to the name of the postgresql server: set PGHOST=myserver
-add on the server a postgres user with the same name as the NT-User (eg Administrator)
-make sure, that your pg_hba.conf on the server is configured, such that a connection from another host will be accepted
-mkdir C:\tmp
-nmake test (expect to get errors concerning blobs)
-nmake install
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/dbd-pg.pod b/install/5.005/DBD-Pg-1.22-fixvercmp/dbd-pg.pod
deleted file mode 100644
index ccbbc63..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/dbd-pg.pod
+++ /dev/null
@@ -1,411 +0,0 @@
-
-# $Id: dbd-pg.pod,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-=head1 NAME
-
-DBD::Pg - PostgreSQL database driver for the DBI module
-
-=head1 DESCRIPTION
-
-DBD::Pg is a Perl module which works with the DBI module to provide
-access to PostgreSQL databases.
-
-=head1 DBD::Pg
-
-=begin docbook
-<!-- The following blank =head1 is to allow us to use purely =head2 headings -->
-<!-- This keeps the POD fairly simple with regards to Pod::DocBook -->
-
-=end docbook
-
-=head1
-
-=head2 Version
-
-Version 0.91.
-
-=head2 Author and Contact Details
-
-The driver author is Edmund Mergl. He can be contacted via the
-I<dbi-users> mailing list.
-
-
-=head2 Supported Database Versions and Options
-
-The DBD-Pg-0.92 module supports Postgresql 6.5.
-
-
-=head2 Connect Syntax
-
-The C<DBI-E<gt>connect()> Data Source Name, or I<DSN>, can be one of the
-following:
-
- dbi:Pg:dbname=$dbname
- dbi:Pg:dbname=$dbname;host=$host;port=$port;options=$options;tty=$tty
-
-All parameters, including the userid and password parameter of the
-connect command, have a hard-coded default which can be overridden
-by setting appropriate environment variables:
-
- Parameter Environment Variable Default
- --------- -------------------- --------------
- dbname PGDATABASE current userid
- host PGHOST localhost
- port PGPORT 5432
- options PGOPTIONS ""
- tty PGTTY ""
- username PGUSER current userid
- password PGPASSWORD ""
-
-There are no driver specific attributes for the C<DBI->connect()> method.
-
-
-=head2 Numeric Data Handling
-
-Postgresql supports the following numeric types:
-
- Postgresql Range
- ---------- --------------------------
- int2 -32768 to +32767
- int4 -2147483648 to +2147483647
- float4 6 decimal places
- float8 15 decimal places
-
-Some platforms also support the int8 type.
-C<DBD::Pg> always returns all numbers as strings.
-
-
-=head2 String Data Handling
-
-Postgresql supports the following string data types:
-
- CHAR single character
- CHAR(size) fixed length blank-padded
- VARCHAR(size) variable length with limit
- TEXT variable length
-
-All string data types have a limit of 4096 bytes.
-The CHAR type is fixed length and blank padded.
-
-There is no special handling for data with the 8th bit set. They
-are stored unchanged in the database.
-None of the character types can store embedded nulls and Unicode is
-not formally supported.
-
-Strings can be concatenated using the C<||> operator.
-
-
-=head2 Date Data Handling
-
-Postgresql supports the following date time data types:
-
- Type Storage Recommendation Description
- --------- -------- -------------------------- ----------------------------
- abstime 4 bytes original date and time limited range
- date 4 bytes SQL92 type wide range
- datetime 8 bytes best general date and time wide range, high precision
- interval 12 bytes SQL92 type equivalent to timespan
- reltime 4 bytes original time interval limited range, low precision
- time 4 bytes SQL92 type wide range
- timespan 12 bytes best general time interval wide range, high precision
- timestamp 4 bytes SQL92 type limited range
-
- Data Type Range Resolution
- ---------- ---------------------------------- -----------
- abstime 1901-12-14 2038-01-19 1 sec
- timestamp 1901-12-14 2038-01-19 1 sec
- reltime -68 years +68 years 1 sec
- tinterval -178000000 years +178000000 years 1 microsec
- timespan -178000000 years 178000000 years 1 microsec
- date 4713 BC 32767 AD 1 day
- datetime 4713 BC 1465001 AD 1 microsec
- time 00:00:00:00 23:59:59:99 1 microsec
-
-Postgresql supports a range of date formats:
-
- Name Example
- ----------- ----------------------
- ISO 1997-12-17 0:37:16-08
- SQL 12/17/1997 07:37:16.00 PST
- Postgres Wed Dec 17 07:37:16 1997 PST
- European 17/12/1997 15:37:16.00 MET
- NonEuropean 12/17/1997 15:37:16.00 MET
- US 12/17/1997 07:37:16.00 MET
-
-The default output format does not depend on the client/server locale.
-It depends on, in increasing priority: the PGDATESTYLE environment
-variable at the server, the PGDATESTYLE environment variable at the client, and
-the C<SET DATESTYLE> SQL command.
-
-All of the formats described above can be used for input. A great many
-others can also be used. There is no specific default input format.
-If the format of a date input is ambiguous then the current DATESTYLE
-is used to help disambiguate.
-
-If you specify a date/time value without a time component, the default
-time is 00:00:00 (midnight). To specify a date/time value without a date
-is not allowed.
-If a date with a two digit year is input then if the year was less than
-70, add 2000; otherwise, add 1900.
-
-The currect date/time is returned by the keyword C<'now'> or C<'current'>,
-which has to be casted to a valid data type. For example:
-
- SELECT 'now'::datetime
-
-Postgresql supports a range of date time functions for converting
-between types, extracting parts of a date time value, truncating to a
-given unit, etc. The usual arithmetic can be performed on date and
-interval values, e.g., date-date=interval, etc.
-
-The following SQL expression can be used to convert an integer "seconds
-since 1-jan-1970 GMT" value to the corresponding database date time:
-
- DATETIME(unixtime_field)
-
-and to do the reverse:
-
- DATE_PART('epoch', datetime_field)
-
-The server stores all dates internally in GMT. Times are converted to
-local time on the database server before being sent to the client
-frontend, hence by default are in the server time zone.
-
-The TZ environment variable is used by the server as default time
-zone. The PGTZ environment variable on the client side is used to send
-the time zone information to the backend upon connection. The SQL C<SET
-TIME ZONE> command can set the time zone for the current session.
-
-
-=head2 LONG/BLOB Data Handling
-
-Postgresql handles BLOBS using a so called "large objects" type. The
-handling of this type differs from all other data types. The data are
-broken into chunks, which are stored in tuples in the database. Access
-to large objects is given by an interface which is modelled closely
-after the UNIX file system. The maximum size is limited by the file
-size of the operating system.
-
-
-If you just select the field, you get a "large object identifier" and
-not the data itself. The I<LongReadLen> and I<LongTruncOk> attributes are
-not implemented because they don't make sense in this case. The only
-method implemented by the driver is the undocumented DBI method
-C<blob_read()>.
-
-
-=head2 Other Data Handling issues
-
-The C<DBD::Pg> driver supports the C<type_info()> method.
-
-Postgresql supports automatic conversions between data types wherever
-it's reasonable.
-
-=head2 Transactions, Isolation and Locking
-
-Postgresql supports transactions.
-The current default isolation transaction level is "Serializable" and
-is currently implemented using table level locks. Both may change.
-No other isolation levels for transactions are supported.
-
-With AutoCommit on, a query never places a lock on a table. Readers
-never block writers and writers never block readers. This behavior
-changes whenever a transaction is started (AutoCommit off). Then a
-query induces a shared lock on a table and blocks anyone else
-until the transaction has been finished.
-
-The C<LOCK TABLE table_name> statement can be used to apply an explicit
-lock on a table. This only works inside a transaction (AutoCommit off).
-
-To ensure that a table being selected does not change before you make
-an update later in the transaction, you must explicitly lock it with a
-C<LOCK TABLE> statement before executing the select.
-
-
-=head2 No-Table Expression Select Syntax
-
-To select a constant expression, that is, an expression that doesn't involve
-data from a database table or view, just omit the "from" clause.
-Here's an example that selects the current time as a datetime:
-
- SELECT 'now'::datetime;
-
-=head2 Table Join Syntax
-
-Outer joins are not supported. Inner joins use the traditional syntax.
-
-=head2 Table and Column Names
-
-The max size of table and column names cannot exceed 31 charaters in
-length.
-Only alphanumeric characters can be used; the first character must
-be a letter.
-
-If an identifier is enclosed by double quotation marks (C<">), it can
-contain any combination of characters except double quotation marks.
-
-Postgresql converts all identifiers to lower-case unless enclosed in
-double quotation marks.
-National character set characters can be used, if enclosed in quotation
-marks.
-
-
-=head2 Case Sensitivity of LIKE Operator
-
-Postgresql has the following string matching operators:
-
- Glyph Description Example
- ----- ---------------------------------------- -----------------------------
- ~~ Same as SQL "LIKE" operator 'scrappy,marc' ~~ '%scrappy%'
- !~~ Same as SQL "NOT LIKE" operator 'bruce' !~~ '%al%'
- ~ Match (regex), case sensitive 'thomas' ~ '.*thomas.*'
- ~* Match (regex), case insensitive 'thomas' ~* '.*Thomas.*'
- !~ Does not match (regex), case sensitive 'thomas' !~ '.*Thomas.*'
- !~* Does not match (regex), case insensitive 'thomas' !~ '.*vadim.*'
-
-
-=head2 Row ID
-
-The Postgresql "row id" pseudocolumn is called I<oid>, object identifier.
-It can be treated as a string and used to rapidly (re)select rows.
-
-
-=head2 Automatic Key or Sequence Generation
-
-Postgresql does not support automatic key generation such as "auto
-increment" or "system generated" keys.
-
-However, Postgresql does support "sequence generators". Any number of
-named sequence generators can be created in a database. Sequences
-are used via functions called C<NEXTVAL> and C<CURRVAL>. Typical usage:
-
- INSERT INTO table (k, v) VALUES (nextval('seq_name'), ?);
-
-To get the value just inserted, you can use the corresponding C<currval()>
-SQL function in the same session, or
-
- SELECT last_value FROM seq_name
-
-
-=head2 Automatic Row Numbering and Row Count Limiting
-
-Postgresql does not support any way of automatically numbering returned rows.
-
-
-=head2 Parameter Binding
-
-Parameter binding is emulated by the driver.
-Both the C<?> and C<:1> style of placeholders are supported.
-
-The TYPE attribute of the C<bind_param()> method may be used to
-influence how parameters are treated. These SQL types are bound as
-VARCHAR: SQL_NUMERIC, SQL_DECIMAL, SQL_INTEGER, SQL_SMALLINT,
-SQL_FLOAT, SQL_REAL, SQL_DOUBLE, SQL_VARCHAR.
-
-The SQL_CHAR type is bound as a CHAR thus enabling fixed-width blank
-padded comparison semantics.
-
-Unsupported values of the TYPE attribute generate a warning.
-
-
-=head2 Stored Procedures
-
-C<DBD::Pg> does not support stored procedures.
-
-
-=head2 Table Metadata
-
-C<DBD::Pg> supports the C<table_info()> method.
-
-The I<pg_attribute> table contains detailed information about all columns
-of all the tables in the database, one row per table.
-
-The I<pg_index> table contains detailed information about all indexes in
-the database, one row per index.
-
-Primary keys are implemented as unique indexes. See I<pg_index> above.
-
-
-=head2 Driver-specific Attributes and Methods
-
-There are no significant C<DBD::Pg> driver-specific database handle attributes.
-
-C<DBD::Pg> has the following driver-specific statement handle attributes:
-
-=over 8
-
-=item I<pg_size>
-
-Returns a reference to an array of integer values for each column. The
-integer shows the storage (not display) size of the column in bytes.
-Variable length columns are indicated by -1.
-
-=item I<pg_type>
-
-Returns a reference to an array of strings for each column. The string
-shows the name of the data type.
-
-=item I<pg_oid_status>
-
-Returns the OID of the last INSERT command.
-
-=item I<pg_cmd_status>
-
-Returns the name of the last command type. Possible types are: INSERT,
-DELETE, UPDATE, SELECT.
-
-=back
-
-
-C<DBD::Pg> has no private methods.
-
-
-=head2 Positioned updates and deletes
-
-Postgresql does not support positioned updates or deletes.
-
-
-=head2 Differences from the DBI Specification
-
-C<DBD::Pg> has no significant differences in behavior from the
-current DBI specification.
-
-Note that C<DBD::Pg> does not fully parse the statement until
-it's executed. Thus attributes like I<$sth-E<gt>{NUM_OF_FIELDS}> are not
-available until after C<$sth-E<gt>execute> has been called. This is valid
-behaviour but is important to note when porting applications
-originally written for other drivers.
-
-
-=head2 URLs to More Database/Driver Specific Information
-
- http://www.postgresql.org
-
-
-=head2 Concurrent use of Multiple Handles
-
-C<DBD::Pg> supports an unlimited number of concurrent database
-connections to one or more databases.
-
-It also supports the preparation and execution of a new statement
-handle while still fetching data from another statement handle,
-provided it is
-associated with the same database handle.
-
-
-=head2 Other Significant Database or Driver Features
-
-Postgres offers substantial additional power by incorporating the
-following four additional basic concepts in such a way that users can
-easily extend the system: classes, inheritance, types, and functions.
-
-Other features provide additional power and flexibility: constraints,
-triggers, rules, transaction integrity, procedural languages, and large objects.
-
-It's also free Open Source Software with an active community of developers.
-
-=cut
-
-# This driver summary for DBD::Pg is Copyright (c) 1999 Tim Bunce
-# and Edmund Mergl.
-# $Id: dbd-pg.pod,v 1.1 2004-04-29 09:21:28 ivan Exp $
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.c b/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.c
deleted file mode 100644
index 55f4ee7..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.c
+++ /dev/null
@@ -1,2024 +0,0 @@
-/*
- $Id: dbdimp.c,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
- Copyright (c) 1997,1998,1999,2000 Edmund Mergl
- Copyright (c) 2002 Jeffrey W. Baker
- Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
-
- You may distribute under the terms of either the GNU General Public
- License or the Artistic License, as specified in the Perl README file.
-
-*/
-
-
-/*
- hard-coded OIDs: (here we need the postgresql types)
- pg_sql_type() 1042 (bpchar), 1043 (varchar)
- ddb_st_fetch() 1042 (bpchar), 16 (bool)
- ddb_preparse() 1043 (varchar)
- pgtype_bind_ok()
-*/
-
-#include "Pg.h"
-
-/* XXX DBI should provide a better version of this */
-#define IS_DBI_HANDLE(h) (SvROK(h) && SvTYPE(SvRV(h)) == SVt_PVHV && SvRMAGICAL(SvRV(h)) && (SvMAGIC(SvRV(h)))->mg_type == 'P')
-
-DBISTATE_DECLARE;
-
-/* hard-coded array delimiter */
-static char* array_delimiter = ",";
-
-static void dbd_preparse (imp_sth_t *imp_sth, char *statement);
-
-
-void
-dbd_init (dbistate)
- dbistate_t *dbistate;
-{
- DBIS = dbistate;
-}
-
-
-int
-dbd_discon_all (drh, imp_drh)
- SV *drh;
- imp_drh_t *imp_drh;
-{
- dTHR;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_discon_all\n"); }
-
- /* The disconnect_all concept is flawed and needs more work */
- if (!dirty && !SvTRUE(perl_get_sv("DBI::PERL_ENDING",0))) {
- sv_setiv(DBIc_ERR(imp_drh), (IV)1);
- sv_setpv(DBIc_ERRSTR(imp_drh),
- (char*)"disconnect_all not implemented");
- DBIh_EVENT2(drh, ERROR_event,
- DBIc_ERR(imp_drh), DBIc_ERRSTR(imp_drh));
- return FALSE;
- }
- if (perl_destruct_level) {
- perl_destruct_level = 0;
- }
- return FALSE;
-}
-
-
-/* Database specific error handling. */
-
-void
-pg_error (h, error_num, error_msg)
- SV *h;
- int error_num;
- char *error_msg;
-{
- D_imp_xxh(h);
- char *err, *src, *dst;
- int len = strlen(error_msg);
-
- err = (char *)malloc(len + 1);
- if (!err) {
- return;
- }
- src = error_msg;
- dst = err;
-
- /* copy error message without trailing newlines */
- while (*src != '\0' && *src != '\n') {
- *dst++ = *src++;
- }
- *dst = '\0';
-
- sv_setiv(DBIc_ERR(imp_xxh), (IV)error_num); /* set err early */
- sv_setpv(DBIc_ERRSTR(imp_xxh), (char*)err);
- DBIh_EVENT2(h, ERROR_event, DBIc_ERR(imp_xxh), DBIc_ERRSTR(imp_xxh));
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "%s error %d recorded: %s\n", err, error_num, SvPV(DBIc_ERRSTR(imp_xxh),na)); }
- free(err);
-}
-
-static int
-pgtype_bind_ok (dbtype)
- int dbtype;
-{
- /* basically we support types that can be returned as strings */
- switch(dbtype) {
- case 16: /* bool */
- case 17: /* bytea */
- case 18: /* char */
- case 20: /* int8 */
- case 21: /* int2 */
- case 23: /* int4 */
- case 25: /* text */
- case 26: /* oid */
- case 700: /* float4 */
- case 701: /* float8 */
- case 702: /* abstime */
- case 703: /* reltime */
- case 704: /* tinterval */
- case 1042: /* bpchar */
- case 1043: /* varchar */
- case 1082: /* date */
- case 1083: /* time */
- case 1184: /* datetime */
- case 1186: /* timespan */
- case 1296: /* timestamp */
- return 1;
- }
- return 0;
-}
-
-
-/* ================================================================== */
-
-int
-pg_db_login (dbh, imp_dbh, dbname, uid, pwd)
- SV *dbh;
- imp_dbh_t *imp_dbh;
- char *dbname;
- char *uid;
- char *pwd;
-{
- dTHR;
-
- char *conn_str;
- char *src;
- char *dest;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "pg_db_login\n"); }
-
- /* build connect string */
- /* DBD-Pg syntax: 'dbname=dbname;host=host;port=port' */
- /* pgsql syntax: 'dbname=dbname host=host port=port user=uid password=pwd' */
-
- conn_str = (char *)malloc(strlen(dbname) + strlen(uid) + strlen(pwd) + 16 + 1);
- if (! conn_str) {
- return 0;
- }
-
- src = dbname;
- dest = conn_str;
- while (*src) {
- if (*src != ';') {
- *dest++ = *src++;
- continue;
- }
- *dest++ = ' ';
- src++;
- }
- *dest = '\0';
-
- if (strlen(uid)) {
- strcat(conn_str, " user=");
- strcat(conn_str, uid);
- }
- if (strlen(uid) && strlen(pwd)) {
- strcat(conn_str, " password=");
- strcat(conn_str, pwd);
- }
-
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "pg_db_login: conn_str = >%s<\n", conn_str); }
-
- /* make a connection to the database */
- imp_dbh->conn = PQconnectdb(conn_str);
- free(conn_str);
-
- /* check to see that the backend connection was successfully made */
- if (PQstatus(imp_dbh->conn) != CONNECTION_OK) {
- pg_error(dbh, PQstatus(imp_dbh->conn), PQerrorMessage(imp_dbh->conn));
- PQfinish(imp_dbh->conn);
- return 0;
- }
-
- imp_dbh->init_commit = 1; /* initialize AutoCommit */
- imp_dbh->pg_auto_escape = 1; /* initialize pg_auto_escape */
- imp_dbh->pg_bool_tf = 0; /* initialize pg_bool_tf */
-
- DBIc_IMPSET_on(imp_dbh); /* imp_dbh set up now */
- DBIc_ACTIVE_on(imp_dbh); /* call disconnect before freeing */
- return 1;
-}
-
-
-int
-dbd_db_getfd (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- char id;
- SV* retsv;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_getfd\n"); }
-
- return PQsocket(imp_dbh->conn);
-}
-
-SV *
-dbd_db_pg_notifies (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- char id;
- PGnotify* notify;
- AV* ret;
- SV* retsv;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_pg_notifies\n"); }
-
- PQconsumeInput(imp_dbh->conn);
-
- notify = PQnotifies(imp_dbh->conn);
-
- if (!notify) return &sv_undef;
-
- ret=newAV();
-
- av_push(ret, newSVpv(notify->relname,0) );
- av_push(ret, newSViv(notify->be_pid) );
-
- /* Should free notify memory with PQfreemem() */
-
- retsv = newRV(sv_2mortal((SV*)ret));
-
- return retsv;
-}
-
-int
-dbd_db_ping (dbh)
- SV *dbh;
-{
- char id;
- D_imp_dbh(dbh);
- PGresult* result;
- ExecStatusType status;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_ping\n"); }
-
- if (NULL != imp_dbh->conn) {
- result = PQexec(imp_dbh->conn, " ");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
-
- if (PGRES_EMPTY_QUERY != status) {
- return 0;
- }
-
- return 1;
- }
-
- return 0;
-}
-
-
-int
-dbd_db_commit (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_commit\n"); }
-
- /* no commit if AutoCommit = on */
- if (DBIc_has(imp_dbh, DBIcf_AutoCommit) != FALSE) {
- return 0;
- }
-
- if (NULL != imp_dbh->conn) {
- PGresult* result = 0;
- ExecStatusType commitstatus, beginstatus;
-
- /* execute commit */
- result = PQexec(imp_dbh->conn, "commit");
- commitstatus = result ? PQresultStatus(result) : -1;
- PQclear(result);
-
- /* check result */
- if (commitstatus != PGRES_COMMAND_OK) {
- /* Only put the error message in DBH->errstr */
- pg_error(dbh, commitstatus, PQerrorMessage(imp_dbh->conn));
- }
-
- /* start new transaction. AutoCommit must be FALSE, ref. 20 lines up */
- result = PQexec(imp_dbh->conn, "begin");
- beginstatus = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (beginstatus != PGRES_COMMAND_OK) {
- /* Maybe add some loud barf here? Raising some very high error? */
- pg_error(dbh, beginstatus, "begin failed\n");
- return 0;
- }
-
- /* if the initial COMMIT failed, return 0 now */
- if (commitstatus != PGRES_COMMAND_OK) {
- return 0;
- }
-
- return 1;
- }
-
- return 0;
-}
-
-
-int
-dbd_db_rollback (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_rollback\n"); }
-
- /* no rollback if AutoCommit = on */
- if (DBIc_has(imp_dbh, DBIcf_AutoCommit) != FALSE) {
- return 0;
- }
-
- if (NULL != imp_dbh->conn) {
- PGresult* result = 0;
- ExecStatusType status;
-
- /* execute rollback */
- result = PQexec(imp_dbh->conn, "rollback");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
-
- /* check result */
- if (status != PGRES_COMMAND_OK) {
- pg_error(dbh, status, "rollback failed\n");
- return 0;
- }
-
- /* start new transaction. AutoCommit must be FALSE, ref. 20 lines up */
- result = PQexec(imp_dbh->conn, "begin");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(dbh, status, "begin failed\n");
- return 0;
- }
-
- return 1;
- }
-
- return 0;
-}
-
-
-int
-dbd_db_disconnect (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- dTHR;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_disconnect\n"); }
-
- /* We assume that disconnect will always work */
- /* since most errors imply already disconnected. */
- DBIc_ACTIVE_off(imp_dbh);
-
- if (NULL != imp_dbh->conn) {
- /* rollback if AutoCommit = off */
- if (DBIc_has(imp_dbh, DBIcf_AutoCommit) == FALSE) {
- PGresult* result = 0;
- ExecStatusType status;
- result = PQexec(imp_dbh->conn, "rollback");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(dbh, status, "rollback failed\n");
- return 0;
- }
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "dbd_db_disconnect: AutoCommit=off -> rollback\n"); }
- }
-
- PQfinish(imp_dbh->conn);
-
- imp_dbh->conn = NULL;
- }
-
- /* We don't free imp_dbh since a reference still exists */
- /* The DESTROY method is the only one to 'free' memory. */
- /* Note that statement objects may still exists for this dbh! */
- return 1;
-}
-
-
-void
-dbd_db_destroy (dbh, imp_dbh)
- SV *dbh;
- imp_dbh_t *imp_dbh;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_destroy\n"); }
-
- if (DBIc_ACTIVE(imp_dbh)) {
- dbd_db_disconnect(dbh, imp_dbh);
- }
-
- /* Nothing in imp_dbh to be freed */
- DBIc_IMPSET_off(imp_dbh);
-}
-
-
-int
-dbd_db_STORE_attrib (dbh, imp_dbh, keysv, valuesv)
- SV *dbh;
- imp_dbh_t *imp_dbh;
- SV *keysv;
- SV *valuesv;
-{
- STRLEN kl;
- char *key = SvPV(keysv,kl);
- int newval = SvTRUE(valuesv);
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_STORE\n"); }
-
- if (kl==10 && strEQ(key, "AutoCommit")) {
- int oldval = DBIc_has(imp_dbh, DBIcf_AutoCommit);
- DBIc_set(imp_dbh, DBIcf_AutoCommit, newval);
- if (oldval == FALSE && newval != FALSE && imp_dbh->init_commit) {
- /* do nothing, fall through */
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "dbd_db_STORE: initialize AutoCommit to on\n"); }
- } else if (oldval == FALSE && newval != FALSE) {
- if (NULL != imp_dbh->conn) {
- /* commit any outstanding changes */
- PGresult* result = 0;
- ExecStatusType status;
- result = PQexec(imp_dbh->conn, "commit");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(dbh, status, "commit failed\n");
- return 0;
- }
- }
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "dbd_db_STORE: switch AutoCommit to on: commit\n"); }
- } else if ((oldval != FALSE && newval == FALSE) || (oldval == FALSE && newval == FALSE && imp_dbh->init_commit)) {
- if (NULL != imp_dbh->conn) {
- /* start new transaction */
- PGresult* result = 0;
- ExecStatusType status;
- result = PQexec(imp_dbh->conn, "begin");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(dbh, status, "begin failed\n");
- return 0;
- }
- }
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "dbd_db_STORE: switch AutoCommit to off: begin\n"); }
- }
- /* only needed once */
- imp_dbh->init_commit = 0;
- return 1;
- } else if (kl==14 && strEQ(key, "pg_auto_escape")) {
- imp_dbh->pg_auto_escape = newval;
- } else if (kl==10 && strEQ(key, "pg_bool_tf")) {
- imp_dbh->pg_bool_tf = newval;
-#ifdef SvUTF8_off
- } else if (kl==14 && strEQ(key, "pg_enable_utf8")) {
- imp_dbh->pg_enable_utf8 = newval;
-#endif
- } else {
- return 0;
- }
-}
-
-
-SV *
-dbd_db_FETCH_attrib (dbh, imp_dbh, keysv)
- SV *dbh;
- imp_dbh_t *imp_dbh;
- SV *keysv;
-{
- STRLEN kl;
- char *key = SvPV(keysv,kl);
- SV *retsv = Nullsv;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_db_FETCH\n"); }
-
- if (kl==10 && strEQ(key, "AutoCommit")) {
- retsv = boolSV(DBIc_has(imp_dbh, DBIcf_AutoCommit));
- } else if (kl==14 && strEQ(key, "pg_auto_escape")) {
- retsv = newSViv((IV)imp_dbh->pg_auto_escape);
- } else if (kl==10 && strEQ(key, "pg_bool_tf")) {
- retsv = newSViv((IV)imp_dbh->pg_bool_tf);
-#ifdef SvUTF8_off
- } else if (kl==14 && strEQ(key, "pg_enable_utf8")) {
- retsv = newSViv((IV)imp_dbh->pg_enable_utf8);
-#endif
- } else if (kl==11 && strEQ(key, "pg_INV_READ")) {
- retsv = newSViv((IV)INV_READ);
- } else if (kl==12 && strEQ(key, "pg_INV_WRITE")) {
- retsv = newSViv((IV)INV_WRITE);
- }
-
- if (!retsv) {
- return Nullsv;
- }
- if (retsv == &sv_yes || retsv == &sv_no) {
- return retsv; /* no need to mortalize yes or no */
- }
- return sv_2mortal(retsv);
-}
-
-
-/* driver specific functins */
-
-
-int
-pg_db_lo_open (dbh, lobjId, mode)
- SV *dbh;
- unsigned int lobjId;
- int mode;
-{
- D_imp_dbh(dbh);
- return lo_open(imp_dbh->conn, lobjId, mode);
-}
-
-
-int
-pg_db_lo_close (dbh, fd)
- SV *dbh;
- int fd;
-{
- D_imp_dbh(dbh);
- return lo_close(imp_dbh->conn, fd);
-}
-
-
-int
-pg_db_lo_read (dbh, fd, buf, len)
- SV *dbh;
- int fd;
- char *buf;
- int len;
-{
- D_imp_dbh(dbh);
- return lo_read(imp_dbh->conn, fd, buf, len);
-}
-
-
-int
-pg_db_lo_write (dbh, fd, buf, len)
- SV *dbh;
- int fd;
- char *buf;
- int len;
-{
- D_imp_dbh(dbh);
- return lo_write(imp_dbh->conn, fd, buf, len);
-}
-
-
-int
-pg_db_lo_lseek (dbh, fd, offset, whence)
- SV *dbh;
- int fd;
- int offset;
- int whence;
-{
- D_imp_dbh(dbh);
- return lo_lseek(imp_dbh->conn, fd, offset, whence);
-}
-
-
-unsigned int
-pg_db_lo_creat (dbh, mode)
- SV *dbh;
- int mode;
-{
- D_imp_dbh(dbh);
- return lo_creat(imp_dbh->conn, mode);
-}
-
-
-int
-pg_db_lo_tell (dbh, fd)
- SV *dbh;
- int fd;
-{
- D_imp_dbh(dbh);
- return lo_tell(imp_dbh->conn, fd);
-}
-
-
-int
-pg_db_lo_unlink (dbh, lobjId)
- SV *dbh;
- unsigned int lobjId;
-{
- D_imp_dbh(dbh);
- return lo_unlink(imp_dbh->conn, lobjId);
-}
-
-
-unsigned int
-pg_db_lo_import (dbh, filename)
- SV *dbh;
- char *filename;
-{
- D_imp_dbh(dbh);
- return lo_import(imp_dbh->conn, filename);
-}
-
-
-int
-pg_db_lo_export (dbh, lobjId, filename)
- SV *dbh;
- unsigned int lobjId;
- char *filename;
-{
- D_imp_dbh(dbh);
- return lo_export(imp_dbh->conn, lobjId, filename);
-}
-
-
-int
-pg_db_putline (dbh, buffer)
- SV *dbh;
- char *buffer;
-{
- D_imp_dbh(dbh);
- return PQputline(imp_dbh->conn, buffer);
-}
-
-
-int
-pg_db_getline (dbh, buffer, length)
- SV *dbh;
- char *buffer;
- int length;
-{
- D_imp_dbh(dbh);
- return PQgetline(imp_dbh->conn, buffer, length);
-}
-
-
-int
-pg_db_endcopy (dbh)
- SV *dbh;
-{
- D_imp_dbh(dbh);
- return PQendcopy(imp_dbh->conn);
-}
-
-
-/* ================================================================== */
-
-
-int
-dbd_st_prepare (sth, imp_sth, statement, attribs)
- SV *sth;
- imp_sth_t *imp_sth;
- char *statement;
- SV *attribs;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_prepare: statement = >%s<\n", statement); }
-
- /* scan statement for '?', ':1' and/or ':foo' style placeholders */
- dbd_preparse(imp_sth, statement);
-
- /* initialize new statement handle */
- imp_sth->result = 0;
- imp_sth->cur_tuple = 0;
-
- DBIc_IMPSET_on(imp_sth);
- return 1;
-}
-
-
-static void
-dbd_preparse (imp_sth, statement)
- imp_sth_t *imp_sth;
- char *statement;
-{
- bool in_literal = FALSE;
- char in_comment = '\0';
- char *src, *start, *dest;
- phs_t phs_tpl;
- SV *phs_sv;
- int idx=0;
- char *style="", *laststyle=Nullch;
- STRLEN namelen;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_preparse: statement = >%s<\n", statement); }
-
- /* allocate room for copy of statement with spare capacity */
- /* for editing '?' or ':1' into ':p1'. */
- /* */
- /* Note: the calculated length used here for the safemalloc */
- /* isn't related in any way to the actual worst case length */
- /* of the translated statement, but allowing for 3 times */
- /* the length of the original statement should be safe... */
- imp_sth->statement = (char*)safemalloc(strlen(statement) * 3 + 1);
-
- /* initialise phs ready to be cloned per placeholder */
- memset(&phs_tpl, 0, sizeof(phs_tpl));
- phs_tpl.ftype = 1043; /* VARCHAR */
-
- src = statement;
- dest = imp_sth->statement;
- while(*src) {
-
- if (in_comment) {
- /* SQL-style and C++-style */
- if ((in_comment == '-' || in_comment == '/') && *src == '\n') {
- in_comment = '\0';
- }
- /* C-style */
- else if (in_comment == '*' && *src == '*' && *(src+1) == '/') {
- *dest++ = *src++; /* avoids asterisk-slash-asterisk issues */
- in_comment = '\0';
- }
- *dest++ = *src++;
- continue;
- }
-
- if (in_literal) {
- /* check if literal ends but keep quotes in literal */
- if (*src == in_literal) {
- int bs=0;
- char *str;
- str = src-1;
- while (*(str-bs) == '\\')
- bs++;
- if (!(bs & 1))
- in_literal = 0;
- }
- *dest++ = *src++;
- continue;
- }
-
- /* Look for comments: SQL-style or C++-style or C-style */
- if ((*src == '-' && *(src+1) == '-') ||
- (*src == '/' && *(src+1) == '/') ||
- (*src == '/' && *(src+1) == '*'))
- {
- in_comment = *(src+1);
- /* We know *src & the next char are to be copied, so do */
- /* it. In the case of C-style comments, it happens to */
- /* help us avoid slash-asterisk-slash oddities. */
- *dest++ = *src++;
- *dest++ = *src++;
- continue;
- }
-
- /* check if no placeholders */
- if (*src != ':' && *src != '?') {
- if (*src == '\'' || *src == '"') {
- in_literal = *src;
- }
- *dest++ = *src++;
- continue;
- }
-
- /* check for cast operator */
- if (*src == ':' && (*(src-1) == ':' || *(src+1) == ':')) {
- *dest++ = *src++;
- continue;
- }
-
- /* only here for : or ? outside of a comment or literal and no cast */
-
- start = dest; /* save name inc colon */
- *dest++ = *src++;
- if (*start == '?') { /* X/Open standard */
- sprintf(start,":p%d", ++idx); /* '?' -> ':p1' (etc) */
- dest = start+strlen(start);
- style = "?";
-
- } else if (isDIGIT(*src)) { /* ':1' */
- idx = atoi(src);
- *dest++ = 'p'; /* ':1'->':p1' */
- if (idx <= 0) {
- croak("Placeholder :%d invalid, placeholders must be >= 1", idx);
- }
- while(isDIGIT(*src)) {
- *dest++ = *src++;
- }
- style = ":1";
-
- } else if (isALNUM(*src)) { /* ':foo' */
- while(isALNUM(*src)) { /* includes '_' */
- *dest++ = *src++;
- }
- style = ":foo";
- } else { /* perhaps ':=' PL/SQL construct */
- continue;
- }
- *dest = '\0'; /* handy for debugging */
- namelen = (dest-start);
- if (laststyle && style != laststyle) {
- croak("Can't mix placeholder styles (%s/%s)",style,laststyle);
- }
- laststyle = style;
- if (imp_sth->all_params_hv == NULL) {
- imp_sth->all_params_hv = newHV();
- }
- phs_tpl.sv = &sv_undef;
- phs_sv = newSVpv((char*)&phs_tpl, sizeof(phs_tpl)+namelen+1);
- hv_store(imp_sth->all_params_hv, start, namelen, phs_sv, 0);
- strcpy( ((phs_t*)(void*)SvPVX(phs_sv))->name, start);
- }
- *dest = '\0';
- if (imp_sth->all_params_hv) {
- DBIc_NUM_PARAMS(imp_sth) = (int)HvKEYS(imp_sth->all_params_hv);
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, " dbd_preparse scanned %d distinct placeholders\n", (int)DBIc_NUM_PARAMS(imp_sth)); }
- }
-}
-
-
-/* if it LOOKS like a string, this function will determine whether the type needs to be surrounded in single quotes */
-static int pg_sql_needquote (sql_type)
- int sql_type;
-{
- if (sql_type > 1000 || sql_type == 17 || sql_type == 25 ) {
- return 1;
- }
- return 0;
-}
-
-
-
-static int
-pg_sql_type (imp_sth, name, sql_type)
- imp_sth_t *imp_sth;
- char *name;
- int sql_type;
-{
- switch (sql_type) {
- case SQL_CHAR:
- return 1042; /* bpchar */
- case SQL_NUMERIC:
- return 700; /* float4 */
- case SQL_DECIMAL:
- return 700; /* float4 */
- case SQL_INTEGER:
- return 23; /* int4 */
- case SQL_SMALLINT:
- return 21; /* int2 */
- case SQL_FLOAT:
- return 700; /* float4 */
- case SQL_REAL:
- return 701; /* float8 */
- case SQL_DOUBLE:
- return 20; /* int8 */
- case SQL_VARCHAR:
- return 1043; /* varchar */
- case SQL_BINARY:
- return 17; /* bytea */
- default:
- if (DBIc_WARN(imp_sth) && imp_sth && name) {
- warn("SQL type %d for '%s' is not fully supported, bound as VARCHAR instead",
- sql_type, name);
- }
- return pg_sql_type(imp_sth, name, SQL_VARCHAR);
- }
-}
-
-static int
-sql_pg_type (imp_sth, name, sql_type)
- imp_sth_t *imp_sth;
- char *name;
- int sql_type;
-{
- if (dbis->debug >= 1) {
- PerlIO_printf(DBILOGFP, "sql_pg_type name '%s' type '%d'\n", name, sql_type );
- }
-
- switch (sql_type) {
- case 17: /* bytea */
- return SQL_BINARY;
- case 20: /* int8 */
- return SQL_DOUBLE;
- case 21: /* int2 */
- return SQL_SMALLINT;
- case 23: /* int4 */
- return SQL_INTEGER;
- case 700: /* float4 */
- return SQL_NUMERIC;
- case 701: /* float8 */
- return SQL_REAL;
- case 1042: /* bpchar */
- return SQL_CHAR;
- case 1043: /* varchar */
- return SQL_VARCHAR;
- case 1082: /* date */
- return SQL_DATE;
- case 1083: /* time */
- return SQL_TIME;
- case 1296: /* date */
- return SQL_TIMESTAMP;
-
- default:
- return sql_type;
- }
-}
-
-
-static int
-dbd_rebind_ph (sth, imp_sth, phs)
- SV *sth;
- imp_sth_t *imp_sth;
- phs_t *phs;
-{
- STRLEN value_len;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_rebind\n"); }
-
- /* convert to a string ASAP */
- if (!SvPOK(phs->sv) && SvOK(phs->sv)) {
- sv_2pv(phs->sv, &na);
- }
-
- if (dbis->debug >= 2) {
- char *val = neatsvpv(phs->sv,0);
- PerlIO_printf(DBILOGFP, " bind %s <== %.1000s (", phs->name, val);
- if (SvOK(phs->sv)) {
- PerlIO_printf(DBILOGFP, "size %ld/%ld/%ld, ", (long)SvCUR(phs->sv),(long)SvLEN(phs->sv),phs->maxlen);
- } else {
- PerlIO_printf(DBILOGFP, "NULL, ");
- }
- PerlIO_printf(DBILOGFP, "ptype %d, otype %d%s)\n", (int)SvTYPE(phs->sv), phs->ftype, (phs->is_inout) ? ", inout" : "");
- }
-
- /* At the moment we always do sv_setsv() and rebind. */
- /* Later we may optimise this so that more often we can */
- /* just copy the value & length over and not rebind. */
-
- if (phs->is_inout) { /* XXX */
- if (SvREADONLY(phs->sv)) {
- croak(no_modify);
- }
- /* phs->sv _is_ the real live variable, it may 'mutate' later */
- /* pre-upgrade high to reduce risk of SvPVX realloc/move */
- (void)SvUPGRADE(phs->sv, SVt_PVNV);
- /* ensure room for result, 28 is magic number (see sv_2pv) */
- SvGROW(phs->sv, (phs->maxlen < 28) ? 28 : phs->maxlen+1);
- }
- else {
- /* phs->sv is copy of real variable, upgrade to at least string */
- (void)SvUPGRADE(phs->sv, SVt_PV);
- }
-
- /* At this point phs->sv must be at least a PV with a valid buffer, */
- /* even if it's undef (null) */
- /* Here we set phs->progv, phs->indp, and value_len. */
- if (SvOK(phs->sv)) {
- phs->progv = SvPV(phs->sv, value_len);
- phs->indp = 0;
- }
- else { /* it's null but point to buffer in case it's an out var */
- phs->progv = SvPVX(phs->sv);
- phs->indp = -1;
- value_len = 0;
- }
- phs->sv_type = SvTYPE(phs->sv); /* part of mutation check */
- phs->maxlen = SvLEN(phs->sv)-1; /* avail buffer space */
- if (phs->maxlen < 0) { /* can happen with nulls */
- phs->maxlen = 0;
- }
-
- phs->alen = value_len + phs->alen_incnull;
-
- imp_sth->all_params_len += SvOK(phs->sv) ? phs->alen : 4; /* NULL */
-
- if (dbis->debug >= 3) {
- PerlIO_printf(DBILOGFP, " bind %s <== '%.*s' (size %ld/%ld, otype %d, indp %d)\n",
- phs->name,
- (int)(phs->alen>SvIV(DBIS->neatsvpvlen) ? SvIV(DBIS->neatsvpvlen) : phs->alen),
- (phs->progv) ? phs->progv : "",
- (long)phs->alen, (long)phs->maxlen, phs->ftype, phs->indp);
- }
-
- return 1;
-}
-
-
-void dereference(value)
-SV** value;
-{
- AV* buf;
- SV* val;
- char *src;
- int is_ref;
- STRLEN len;
-
- if (SvTYPE(SvRV(*value)) != SVt_PVAV)
- croak("Not an array reference (%s)", neatsvpv(*value,0));
-
- buf = (AV *) SvRV(*value);
- sv_setpv(*value, "{");
- while ( SvOK(val = av_shift(buf)) ) {
- is_ref = SvROK(val);
- if (is_ref)
- dereference(&val);
- else
- sv_catpv(*value, "\"");
- /* Quote */
- src = SvPV(val, len);
- while (len--) {
- if (!is_ref && *src == '\"')
- sv_catpv(*value, "\\");
- sv_catpvn(*value, src++, 1);
- }
- /* End of quote */
- if (!is_ref)
- sv_catpv(*value, "\"");
- if (av_len(buf) > -1)
- sv_catpv(*value, array_delimiter);
- }
- sv_catpv(*value, "}");
- av_clear(buf);
-}
-
-int
-dbd_bind_ph (sth, imp_sth, ph_namesv, newvalue, sql_type, attribs, is_inout, maxlen)
- SV *sth;
- imp_sth_t *imp_sth;
- SV *ph_namesv;
- SV *newvalue;
- IV sql_type;
- SV *attribs;
- int is_inout;
- IV maxlen;
-{
- SV **phs_svp;
- STRLEN name_len;
- char *name;
- char namebuf[30];
- phs_t *phs;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_bind_ph\n"); }
-
- /* check if placeholder was passed as a number */
-
- if (SvGMAGICAL(ph_namesv)) { /* eg if from tainted expression */
- mg_get(ph_namesv);
- }
- if (!SvNIOKp(ph_namesv)) {
- name = SvPV(ph_namesv, name_len);
- }
- if (SvNIOKp(ph_namesv) || (name && isDIGIT(name[0]))) {
- sprintf(namebuf, ":p%d", (int)SvIV(ph_namesv));
- name = namebuf;
- name_len = strlen(name);
- }
- assert(name != Nullch);
-
- if (SvTYPE(newvalue) > SVt_PVLV) { /* hook for later array logic */
- croak("Can't bind a non-scalar value (%s)", neatsvpv(newvalue,0));
- }
- if (SvROK(newvalue) && !IS_DBI_HANDLE(newvalue)) {
- /* dbi handle allowed for cursor variables */
- dereference(&newvalue);
- }
- if (SvTYPE(newvalue) == SVt_PVLV && is_inout) { /* may allow later */
- croak("Can't bind ``lvalue'' mode scalar as inout parameter (currently)");
- }
-
- if (dbis->debug >= 2) {
- PerlIO_printf(DBILOGFP, " bind %s <== %s (type %ld", name, neatsvpv(newvalue,0), (long)sql_type);
- if (is_inout) {
- PerlIO_printf(DBILOGFP, ", inout 0x%lx, maxlen %ld", (long)newvalue, (long)maxlen);
- }
- if (attribs) {
- PerlIO_printf(DBILOGFP, ", attribs: %s", neatsvpv(attribs,0));
- }
- PerlIO_printf(DBILOGFP, ")\n");
- }
-
- phs_svp = hv_fetch(imp_sth->all_params_hv, name, name_len, 0);
- if (phs_svp == NULL) {
- croak("Can't bind unknown placeholder '%s' (%s)", name, neatsvpv(ph_namesv,0));
- }
- phs = (phs_t*)(void*)SvPVX(*phs_svp); /* placeholder struct */
-
- if (phs->sv == &sv_undef) { /* first bind for this placeholder */
- phs->ftype = 1043; /* our default type VARCHAR */
- phs->is_inout = is_inout;
- if (is_inout) {
- /* phs->sv assigned in the code below */
- ++imp_sth->has_inout_params;
- /* build array of phs's so we can deal with out vars fast */
- if (!imp_sth->out_params_av) {
- imp_sth->out_params_av = newAV();
- }
- av_push(imp_sth->out_params_av, SvREFCNT_inc(*phs_svp));
- }
-
- if (attribs) { /* only look for pg_type on first bind of var */
- SV **svp;
- /* Setup / Clear attributes as defined by attribs. */
- /* XXX If attribs is EMPTY then reset attribs to default? */
- if ( (svp = hv_fetch((HV*)SvRV(attribs), "pg_type", 7, 0)) != NULL) {
- int pg_type = SvIV(*svp);
- if (!pgtype_bind_ok(pg_type)) {
- croak("Can't bind %s, pg_type %d not supported by DBD::Pg", phs->name, pg_type);
- }
- if (sql_type) {
- croak("Can't specify both TYPE (%d) and pg_type (%d) for %s", sql_type, pg_type, phs->name);
- }
- phs->ftype = pg_type;
- }
- }
- if (sql_type) {
- /* SQL_BINARY (-2) is deprecated. */
- if (sql_type == -2 && DBIc_WARN(imp_sth)) {
- warn("Use of SQL type SQL_BINARY (%d) is deprecated. Use { pg_type => DBD::Pg::PG_BYTEA } instead.", sql_type);
- }
- phs->ftype = pg_sql_type(imp_sth, phs->name, sql_type);
- }
- } /* was first bind for this placeholder */
-
- /* check later rebinds for any changes */
- else if (is_inout || phs->is_inout) {
- croak("Can't rebind or change param %s in/out mode after first bind (%d => %d)", phs->name, phs->is_inout , is_inout);
- }
- else if (sql_type && phs->ftype != pg_sql_type(imp_sth, phs->name, sql_type)) {
- croak("Can't change TYPE of param %s to %d after initial bind", phs->name, sql_type);
- }
-
- phs->maxlen = maxlen; /* 0 if not inout */
-
- if (!is_inout) { /* normal bind to take a (new) copy of current value */
- if (phs->sv == &sv_undef) { /* (first time bind) */
- phs->sv = newSV(0);
- }
- sv_setsv(phs->sv, newvalue);
- } else if (newvalue != phs->sv) {
- if (phs->sv) {
- SvREFCNT_dec(phs->sv);
- }
- phs->sv = SvREFCNT_inc(newvalue); /* point to live var */
- }
-
- return dbd_rebind_ph(sth, imp_sth, phs);
-}
-
-
-int
-dbd_st_execute (sth, imp_sth) /* <= -2:error, >=0:ok row count, (-1=unknown count) */
- SV *sth;
- imp_sth_t *imp_sth;
-{
- dTHR;
-
- D_imp_dbh_from_sth;
- ExecStatusType status = -1;
- char *cmdStatus;
- char *cmdTuples;
- char *statement;
- int ret = -2;
- int num_fields;
- int i;
- STRLEN len;
- bool in_literal = FALSE;
- char in_comment = '\0';
- char *src;
- char *dest;
- char *val;
- char namebuf[30];
- phs_t *phs;
- SV **svp;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_execute\n"); }
-
- /*
- here we get the statement from the statement handle where
- it has been stored when creating a blank sth during prepare
- svp = hv_fetch((HV *)SvRV(sth), "Statement", 9, FALSE);
- statement = SvPV(*svp, na);
- */
-
- if (NULL == imp_dbh->conn) {
- pg_error(sth, -1, "execute on disconnected handle");
- return -2;
- }
-
- statement = imp_sth->statement;
- if (! statement) {
- /* are we prepared ? */
- pg_error(sth, -1, "statement not prepared\n");
- return -2;
- }
-
- /* do we have input parameters ? */
- if ((int)DBIc_NUM_PARAMS(imp_sth) > 0) {
- /*
- we have to allocate some additional memory for possible escaping
- quotes and backslashes:
- max_len = length of statement
- + total length of all params allowing for worst case all
- characters binary-escaped (\\xxx)
- + null terminator
- Note: parameters look like :p1 at this point, so there's no
- need to explicitly allow for surrounding quotes because '' is
- shorter than :p1
- */
- int max_len = strlen(imp_sth->statement) + imp_sth->all_params_len * 5 + 1;
- statement = (char*)safemalloc( max_len );
- dest = statement;
- src = imp_sth->statement;
- /* scan statement for ':p1' style placeholders */
- while(*src) {
-
- if (in_comment) {
- /* SQL-style and C++-style */
- if ((in_comment == '-' || in_comment == '/') && *src == '\n') {
- in_comment = '\0';
- }
- /* C-style */
- else if (in_comment == '*' && *src == '*' && *(src+1) == '/') {
- *dest++ = *src++; /* avoids asterisk-slash-asterisk issues */
- in_comment = '\0';
- }
- *dest++ = *src++;
- continue;
- }
-
- if (in_literal) {
- /* check if literal ends but keep quotes in literal */
- if (*src == in_literal) {
- int bs=0;
- char *str;
- str = src-1;
- while (*(str-bs) == '\\')
- bs++;
- if (!(bs & 1))
- in_literal = 0;
- }
- *dest++ = *src++;
- continue;
- }
-
- /* Look for comments: SQL-style or C++-style or C-style */
- if ((*src == '-' && *(src+1) == '-') ||
- (*src == '/' && *(src+1) == '/') ||
- (*src == '/' && *(src+1) == '*'))
- {
- in_comment = *(src+1);
- /* We know *src & the next char are to be copied, so do */
- /* it. In the case of C-style comments, it happens to */
- /* help us avoid slash-asterisk-slash oddities. */
- *dest++ = *src++;
- *dest++ = *src++;
- continue;
- }
-
- /* check if no placeholders */
- if (*src != ':' && *src != '?') {
- if (*src == '\'' || *src == '"') {
- in_literal = *src;
- }
- *dest++ = *src++;
- continue;
- }
-
- /* check for cast operator */
- if (*src == ':' && (*(src-1) == ':' || *(src+1) == ':')) {
- *dest++ = *src++;
- continue;
- }
-
-
- i = 0;
- namebuf[i++] = *src++; /* ':' */
- namebuf[i++] = *src++; /* 'p' */
-
- while (isDIGIT(*src) && i < (sizeof(namebuf)-1) ) {
- namebuf[i++] = *src++;
- }
- if ( i == (sizeof(namebuf) - 1)) {
- pg_error(sth, -1, "namebuf buffer overrun\n");
- return -2;
- }
- namebuf[i] = '\0';
- svp = hv_fetch(imp_sth->all_params_hv, namebuf, i, 0);
- if (svp == NULL) {
- pg_error(sth, -1, "parameter unknown\n");
- return -2;
- }
- /* get attribute */
- phs = (phs_t*)(void*)SvPVX(*svp);
- /* replace undef with NULL */
- if(!SvOK(phs->sv)) {
- val = "NULL";
- len = 4;
- } else {
- val = SvPV(phs->sv, len);
- }
- /* quote string attribute */
- if(!SvNIOK(phs->sv) && SvOK(phs->sv) && pg_sql_needquote(phs->ftype)) { /* avoid quoting NULL, tpf: bind_param as numeric */
- *dest++ = '\'';
- }
- while (len--) {
- if (imp_dbh->pg_auto_escape) {
- /* if the parameter was bound as PG_BYTEA, escape nonprintables */
- if (phs->ftype == 17 && !isPRINT(*val)) { /* escape null character */
- dest+=snprintf(dest, (statement + max_len) - dest, "\\\\%03o", *((unsigned char *)val));
- if (dest > statement + max_len) {
- pg_error(sth, -1, "statement buffer overrun\n");
- return -2;
- }
- val++;
- continue; /* do not copy the null */
- }
- /* escape quote */
- if (*val == '\'') {
- *dest++ = '\'';
- }
- /* escape backslash */
- if (*val == '\\') {
- if (phs->ftype == 17) { /* four backslashes. really. */
- *dest++ = '\\';
- *dest++ = '\\';
- *dest++ = '\\';
- } else {
- *dest++ = '\\';
- }
- }
- }
- /* copy attribute to statement */
- *dest++ = *val++;
- }
- /* quote string attribute */
- if(!SvNIOK(phs->sv) && SvOK(phs->sv) && pg_sql_needquote(phs->ftype)) { /* avoid quoting NULL, tpf: bind_param as numeric */
- *dest++ = '\'';
- }
- }
- *dest = '\0';
- }
-
- if (dbis->debug >= 2) { PerlIO_printf(DBILOGFP, "dbd_st_execute: statement = >%s<\n", statement); }
-
- /* clear old result (if any) */
- if (imp_sth->result) {
- PQclear(imp_sth->result);
- }
-
- /* execute statement */
- imp_sth->result = PQexec(imp_dbh->conn, statement);
-
- /* free statement string in case of input parameters */
- if ((int)DBIc_NUM_PARAMS(imp_sth) > 0) {
- Safefree(statement);
- }
-
- /* check status */
- status = imp_sth->result ? PQresultStatus(imp_sth->result) : -1;
- cmdStatus = imp_sth->result ? (char *)PQcmdStatus(imp_sth->result) : "";
- cmdTuples = imp_sth->result ? (char *)PQcmdTuples(imp_sth->result) : "";
-
- if (PGRES_TUPLES_OK == status) {
- /* select statement */
- num_fields = PQnfields(imp_sth->result);
- imp_sth->cur_tuple = 0;
- DBIc_NUM_FIELDS(imp_sth) = num_fields;
- DBIc_ACTIVE_on(imp_sth);
- ret = PQntuples(imp_sth->result);
- } else if (PGRES_COMMAND_OK == status) {
- /* non-select statement */
- if (! strncmp(cmdStatus, "DELETE", 6) || ! strncmp(cmdStatus, "INSERT", 6) || ! strncmp(cmdStatus, "UPDATE", 6)) {
- ret = atoi(cmdTuples);
- } else {
- ret = -1;
- }
- } else if (PGRES_COPY_OUT == status || PGRES_COPY_IN == status) {
- /* Copy Out/In data transfer in progress */
- ret = -1;
- } else {
- pg_error(sth, status, PQerrorMessage(imp_dbh->conn));
- ret = -2;
- }
-
- /* store the number of affected rows */
- imp_sth->rows = ret;
-
- return ret;
-}
-
-
-int
-is_high_bit_set(val)
- char *val;
-{
- while (*val++)
- if (*val & 0x80) return 1;
- return 0;
-}
-
-AV *
-dbd_st_fetch (sth, imp_sth)
- SV *sth;
- imp_sth_t *imp_sth;
-{
- D_imp_dbh_from_sth;
- int num_fields;
- int i;
- AV *av;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_fetch\n"); }
-
- /* Check that execute() was executed sucessfully */
- if ( !DBIc_ACTIVE(imp_sth) ) {
- pg_error(sth, 1, "no statement executing\n");
-
- return Nullav;
- }
-
- if ( imp_sth->cur_tuple == PQntuples(imp_sth->result) ) {
- imp_sth->cur_tuple = 0;
- DBIc_ACTIVE_off(imp_sth);
- return Nullav; /* we reached the last tuple */
- }
-
- av = DBIS->get_fbav(imp_sth);
- num_fields = AvFILL(av)+1;
-
- for(i = 0; i < num_fields; ++i) {
-
- SV *sv = AvARRAY(av)[i];
- if (PQgetisnull(imp_sth->result, imp_sth->cur_tuple, i)) {
- sv_setsv(sv, &sv_undef);
- } else {
- char *val = (char*)PQgetvalue(imp_sth->result, imp_sth->cur_tuple, i);
- int val_len = strlen(val);
- int type = PQftype(imp_sth->result, i); /* hopefully these hard coded values will not change */
- if (16 == type && ! imp_dbh->pg_bool_tf) {
- *val = (*val == 'f') ? '0' : '1'; /* bool: translate postgres into perl */
- }
- if (17 == type) { /* decode \001 -> chr(1), etc, in-place */
- char *p = val; /* points to next available pos */
- char *s = val; /* points to current scanning pos */
- int c1,c2,c3;
- while (*s) {
- if (*s == '\\') {
- if (*(s+1) == '\\') { /* double backslash */
- *p++ = '\\';
- s += 2;
- continue;
- }
- else if ( isdigit(c1=(*(s+1))) &&
- isdigit(c2=(*(s+2))) &&
- isdigit(c3=(*(s+3))) ) {
- *p++ = (c1 - '0') * 64 + (c2 - '0') * 8 + (c3 - '0');
- s += 4;
- continue;
- }
- }
- *p++ = *s++;
- }
- val_len = (p - val);
- }
- else if (1042 == type && DBIc_has(imp_sth,DBIcf_ChopBlanks)) {
- char *str = val;
- while((val_len > 0) && (str[val_len-1] == ' ')) {
- val_len--;
- }
- val[val_len] = '\0';
- }
- sv_setpvn(sv, val, val_len);
-#ifdef SvUTF8_off
- if (imp_dbh->pg_enable_utf8) {
- SvUTF8_off(sv);
- /* XXX Is this all the character data types? */
- if (18 == type || 25 == type || 1042 ==type || 1043 == type) {
- if (is_high_bit_set(val) && is_utf8_string(val, val_len))
- SvUTF8_on(sv);
- }
- }
-#endif
- }
- }
-
- imp_sth->cur_tuple += 1;
-
- return av;
-}
-
-
-int
-dbd_st_blob_read (sth, imp_sth, lobjId, offset, len, destrv, destoffset)
- SV *sth;
- imp_sth_t *imp_sth;
- int lobjId;
- long offset;
- long len;
- SV *destrv;
- long destoffset;
-{
- D_imp_dbh_from_sth;
- int ret, lobj_fd, nbytes, nread;
- PGresult* result;
- ExecStatusType status;
- SV *bufsv;
- char *tmp;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_blob_read\n"); }
- /* safety check */
- if (lobjId <= 0) {
- pg_error(sth, -1, "dbd_st_blob_read: lobjId <= 0");
- return 0;
- }
- if (offset < 0) {
- pg_error(sth, -1, "dbd_st_blob_read: offset < 0");
- return 0;
- }
- if (len < 0) {
- pg_error(sth, -1, "dbd_st_blob_read: len < 0");
- return 0;
- }
- if (! SvROK(destrv)) {
- pg_error(sth, -1, "dbd_st_blob_read: destrv not a reference");
- return 0;
- }
- if (destoffset < 0) {
- pg_error(sth, -1, "dbd_st_blob_read: destoffset < 0");
- return 0;
- }
-
- /* dereference destination and ensure it's writable string */
- bufsv = SvRV(destrv);
- if (! destoffset) {
- sv_setpvn(bufsv, "", 0);
- }
-
- /* execute begin
- result = PQexec(imp_dbh->conn, "begin");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(sth, status, PQerrorMessage(imp_dbh->conn));
- return 0;
- }
- */
-
- /* open large object */
- lobj_fd = lo_open(imp_dbh->conn, lobjId, INV_READ);
- if (lobj_fd < 0) {
- pg_error(sth, -1, PQerrorMessage(imp_dbh->conn));
- return 0;
- }
-
- /* seek on large object */
- if (offset > 0) {
- ret = lo_lseek(imp_dbh->conn, lobj_fd, offset, SEEK_SET);
- if (ret < 0) {
- pg_error(sth, -1, PQerrorMessage(imp_dbh->conn));
- return 0;
- }
- }
-
- /* read from large object */
- nread = 0;
- SvGROW(bufsv, destoffset + nread + BUFSIZ + 1);
- tmp = (SvPVX(bufsv)) + destoffset + nread;
- while ((nbytes = lo_read(imp_dbh->conn, lobj_fd, tmp, BUFSIZ)) > 0) {
- nread += nbytes;
- /* break if user wants only a specified chunk */
- if (len > 0 && nread > len) {
- nread = len;
- break;
- }
- SvGROW(bufsv, destoffset + nread + BUFSIZ + 1);
- tmp = (SvPVX(bufsv)) + destoffset + nread;
- }
-
- /* terminate string */
- SvCUR_set(bufsv, destoffset + nread);
- *SvEND(bufsv) = '\0';
-
- /* close large object */
- ret = lo_close(imp_dbh->conn, lobj_fd);
- if (ret < 0) {
- pg_error(sth, -1, PQerrorMessage(imp_dbh->conn));
- return 0;
- }
-
- /* execute end
- result = PQexec(imp_dbh->conn, "end");
- status = result ? PQresultStatus(result) : -1;
- PQclear(result);
- if (status != PGRES_COMMAND_OK) {
- pg_error(sth, status, PQerrorMessage(imp_dbh->conn));
- return 0;
- }
- */
-
- return nread;
-}
-
-
-int
-dbd_st_rows (sth, imp_sth)
- SV *sth;
- imp_sth_t *imp_sth;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_rows\n"); }
-
- return imp_sth->rows;
-}
-
-
-int
-dbd_st_finish (sth, imp_sth)
- SV *sth;
- imp_sth_t *imp_sth;
-{
- dTHR;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_finish\n"); }
-
- if (DBIc_ACTIVE(imp_sth) && imp_sth->result) {
- PQclear(imp_sth->result);
- imp_sth->result = 0;
- imp_sth->rows = 0;
- }
-
- DBIc_ACTIVE_off(imp_sth);
- return 1;
-}
-
-
-void
-dbd_st_destroy (sth, imp_sth)
- SV *sth;
- imp_sth_t *imp_sth;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_destroy\n"); }
-
- /* Free off contents of imp_sth */
-
- Safefree(imp_sth->statement);
- if (imp_sth->result) {
- PQclear(imp_sth->result);
- imp_sth->result = 0;
- }
-
- if (imp_sth->out_params_av)
- sv_free((SV*)imp_sth->out_params_av);
-
- if (imp_sth->all_params_hv) {
- HV *hv = imp_sth->all_params_hv;
- SV *sv;
- char *key;
- I32 retlen;
- hv_iterinit(hv);
- while( (sv = hv_iternextsv(hv, &key, &retlen)) != NULL ) {
- if (sv != &sv_undef) {
- phs_t *phs_tpl = (phs_t*)(void*)SvPVX(sv);
- sv_free(phs_tpl->sv);
- }
- }
- sv_free((SV*)imp_sth->all_params_hv);
- }
-
- DBIc_IMPSET_off(imp_sth); /* let DBI know we've done it */
-}
-
-
-int
-dbd_st_STORE_attrib (sth, imp_sth, keysv, valuesv)
- SV *sth;
- imp_sth_t *imp_sth;
- SV *keysv;
- SV *valuesv;
-{
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_STORE\n"); }
-
- return FALSE;
-}
-
-
-SV *
-dbd_st_FETCH_attrib (sth, imp_sth, keysv)
- SV *sth;
- imp_sth_t *imp_sth;
- SV *keysv;
-{
- STRLEN kl;
- char *key = SvPV(keysv,kl);
- int i, sz;
- SV *retsv = Nullsv;
-
- if (dbis->debug >= 1) { PerlIO_printf(DBILOGFP, "dbd_st_FETCH\n"); }
-
- if (! imp_sth->result) {
- return Nullsv;
- }
-
- i = DBIc_NUM_FIELDS(imp_sth);
-
- if (kl == 4 && strEQ(key, "NAME")) {
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- av_store(av, i, newSVpv(PQfname(imp_sth->result, i),0));
- }
- } else if ( kl== 4 && strEQ(key, "TYPE")) {
- /* Need to convert the Pg type to ANSI/SQL type. */
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- av_store(av, i, newSViv(sql_pg_type( imp_sth,
- PQfname(imp_sth->result, i),
- PQftype(imp_sth->result, i))));
- }
- } else if (kl==9 && strEQ(key, "PRECISION")) {
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- sz = PQfsize(imp_sth->result, i);
- av_store(av, i, sz > 0 ? newSViv(sz) : &sv_undef);
- }
- } else if (kl==5 && strEQ(key, "SCALE")) {
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- av_store(av, i, &sv_undef);
- }
- } else if (kl==8 && strEQ(key, "NULLABLE")) {
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- av_store(av, i, newSViv(2));
- }
- } else if (kl==10 && strEQ(key, "CursorName")) {
- retsv = &sv_undef;
- } else if (kl==11 && strEQ(key, "RowsInCache")) {
- retsv = &sv_undef;
- } else if (kl==7 && strEQ(key, "pg_size")) {
- AV *av = newAV();
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- av_store(av, i, newSViv(PQfsize(imp_sth->result, i)));
- }
- } else if (kl==7 && strEQ(key, "pg_type")) {
- AV *av = newAV();
- char *type_nam;
- retsv = newRV(sv_2mortal((SV*)av));
- while(--i >= 0) {
- switch (PQftype(imp_sth->result, i)) {
- case 16:
- type_nam = "bool";
- break;
- case 17:
- type_nam = "bytea";
- break;
- case 18:
- type_nam = "char";
- break;
- case 19:
- type_nam = "name";
- break;
- case 20:
- type_nam = "int8";
- break;
- case 21:
- type_nam = "int2";
- break;
- case 22:
- type_nam = "int28";
- break;
- case 23:
- type_nam = "int4";
- break;
- case 24:
- type_nam = "regproc";
- break;
- case 25:
- type_nam = "text";
- break;
- case 26:
- type_nam = "oid";
- break;
- case 27:
- type_nam = "tid";
- break;
- case 28:
- type_nam = "xid";
- break;
- case 29:
- type_nam = "cid";
- break;
- case 30:
- type_nam = "oid8";
- break;
- case 32:
- type_nam = "SET";
- break;
- case 210:
- type_nam = "smgr";
- break;
- case 600:
- type_nam = "point";
- break;
- case 601:
- type_nam = "lseg";
- break;
- case 602:
- type_nam = "path";
- break;
- case 603:
- type_nam = "box";
- break;
- case 604:
- type_nam = "polygon";
- break;
- case 605:
- type_nam = "filename";
- break;
- case 628:
- type_nam = "line";
- break;
- case 629:
- type_nam = "_line";
- break;
- case 700:
- type_nam = "float4";
- break;
- case 701:
- type_nam = "float8";
- break;
- case 702:
- type_nam = "abstime";
- break;
- case 703:
- type_nam = "reltime";
- break;
- case 704:
- type_nam = "tinterval";
- break;
- case 705:
- type_nam = "unknown";
- break;
- case 718:
- type_nam = "circle";
- break;
- case 719:
- type_nam = "_circle";
- break;
- case 790:
- type_nam = "money";
- break;
- case 791:
- type_nam = "_money";
- break;
- case 810:
- type_nam = "oidint2";
- break;
- case 910:
- type_nam = "oidint4";
- break;
- case 911:
- type_nam = "oidname";
- break;
- case 1000:
- type_nam = "_bool";
- break;
- case 1001:
- type_nam = "_bytea";
- break;
- case 1002:
- type_nam = "_char";
- break;
- case 1003:
- type_nam = "_name";
- break;
- case 1005:
- type_nam = "_int2";
- break;
- case 1006:
- type_nam = "_int28";
- break;
- case 1007:
- type_nam = "_int4";
- break;
- case 1008:
- type_nam = "_regproc";
- break;
- case 1009:
- type_nam = "_text";
- break;
- case 1028:
- type_nam = "_oid";
- break;
- case 1010:
- type_nam = "_tid";
- break;
- case 1011:
- type_nam = "_xid";
- break;
- case 1012:
- type_nam = "_cid";
- break;
- case 1013:
- type_nam = "_oid8";
- break;
- case 1014:
- type_nam = "_lock";
- break;
- case 1015:
- type_nam = "_stub";
- break;
- case 1016:
- type_nam = "_ref";
- break;
- case 1017:
- type_nam = "_point";
- break;
- case 1018:
- type_nam = "_lseg";
- break;
- case 1019:
- type_nam = "_path";
- break;
- case 1020:
- type_nam = "_box";
- break;
- case 1021:
- type_nam = "_float4";
- break;
- case 1022:
- type_nam = "_float8";
- break;
- case 1023:
- type_nam = "_abstime";
- break;
- case 1024:
- type_nam = "_reltime";
- break;
- case 1025:
- type_nam = "_tinterval";
- break;
- case 1026:
- type_nam = "_filename";
- break;
- case 1027:
- type_nam = "_polygon";
- break;
- case 1033:
- type_nam = "aclitem";
- break;
- case 1034:
- type_nam = "_aclitem";
- break;
- case 1042:
- type_nam = "bpchar";
- break;
- case 1043:
- type_nam = "varchar";
- break;
- case 1082:
- type_nam = "date";
- break;
- case 1083:
- type_nam = "time";
- break;
- case 1182:
- type_nam = "_date";
- break;
- case 1183:
- type_nam = "_time";
- break;
- case 1184:
- type_nam = "datetime";
- break;
- case 1185:
- type_nam = "_datetime";
- break;
- case 1186:
- type_nam = "timespan";
- break;
- case 1187:
- type_nam = "_timespan";
- break;
- case 1231:
- type_nam = "_numeric";
- break;
- case 1296:
- type_nam = "timestamp";
- break;
- case 1700:
- type_nam = "numeric";
- break;
-
- default:
- type_nam = "unknown";
-
- }
- av_store(av, i, newSVpv(type_nam, 0));
- }
- } else if (kl==13 && strEQ(key, "pg_oid_status")) {
- retsv = newSVpv((char *)PQoidStatus(imp_sth->result), 0);
- } else if (kl==13 && strEQ(key, "pg_cmd_status")) {
- retsv = newSVpv((char *)PQcmdStatus(imp_sth->result), 0);
- } else {
- return Nullsv;
- }
-
- return sv_2mortal(retsv);
-}
-
-
-/* end of dbdimp.c */
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.h b/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.h
deleted file mode 100644
index 58c105b..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/dbdimp.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- $Id: dbdimp.h,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
- Copyright (c) 1997,1998,1999,2000 Edmund Mergl
- Portions Copyright (c) 1994,1995,1996,1997 Tim Bunce
-
- You may distribute under the terms of either the GNU General Public
- License or the Artistic License, as specified in the Perl README file.
-*/
-
-#ifdef WIN32
-#define snprintf _snprintf
-#endif
-
-/* Define drh implementor data structure */
-struct imp_drh_st {
- dbih_drc_t com; /* MUST be first element in structure */
-};
-
-/* Define dbh implementor data structure */
-struct imp_dbh_st {
- dbih_dbc_t com; /* MUST be first element in structure */
-
- PGconn * conn; /* connection structure */
- int init_commit; /* initialize AutoCommit */
- int pg_auto_escape; /* initialize AutoEscape */
- int pg_bool_tf; /* do bools return 't'/'f' */
-#ifdef SvUTF8_off
- int pg_enable_utf8; /* should we attempt to make utf8 strings? */
-#endif
-};
-
-/* Define sth implementor data structure */
-struct imp_sth_st {
- dbih_stc_t com; /* MUST be first element in structure */
-
- PGresult* result; /* result structure */
- int cur_tuple; /* current tuple */
- int rows; /* number of affected rows */
-
- /* Input Details */
- char *statement; /* sql (see sth_scan) */
- HV *all_params_hv; /* all params, keyed by name */
- AV *out_params_av; /* quick access to inout params */
- int pg_pad_empty; /* convert ""->" " when binding */
- int all_params_len; /* length-sum of all params */
-
- /* (In/)Out Parameter Details */
- bool has_inout_params;
-};
-
-
-#define sword signed int
-#define sb2 signed short
-#define ub2 unsigned short
-
-typedef struct phs_st phs_t; /* scalar placeholder */
-
-struct phs_st { /* scalar placeholder EXPERIMENTAL */
- sword ftype; /* external OCI field type */
-
- SV *sv; /* the scalar holding the value */
- int sv_type; /* original sv type at time of bind */
- bool is_inout;
-
- IV maxlen; /* max possible len (=allocated buffer) */
-
- /* these will become an array */
- sb2 indp; /* null indicator */
- char *progv;
- ub2 arcode;
- IV alen; /* effective length ( <= maxlen ) */
-
- int alen_incnull; /* 0 or 1 if alen should include null */
- char name[1]; /* struct is malloc'd bigger as needed */
-};
-
-
-SV * dbd_db_pg_notifies (SV *dbh, imp_dbh_t *imp_dbh);
-
-/* end of dbdimp.h */
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/ApacheDBI.pl b/install/5.005/DBD-Pg-1.22-fixvercmp/eg/ApacheDBI.pl
deleted file mode 100755
index b084f70..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/ApacheDBI.pl
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/usr/local/bin/perl
-
-# $Id: ApacheDBI.pl,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-# don't forget to create in postgres the user who is running
-# the httpd, eg 'createuser nobody' !
-#
-# demo script, tested with:
-# - PostgreSQL-7.1.1
-# - apache_1.3.12
-# - mod_perl-1.23
-# - perl5.6.0
-# - DBI-1.14
-
-use CGI;
-use DBI;
-use strict;
-
-my $query = new CGI;
-
-print $query->header,
- $query->start_html(-title=>'A Simple Example'),
- $query->startform,
- "<CENTER><H3>Testing Module DBI</H3></CENTER>",
- "<P><CENTER><TABLE CELLPADDING=4 CELLSPACING=2 BORDER=1>",
- "<TR><TD>Enter the data source: </TD>",
- "<TD>", $query->textfield(-name=>'data_source', -size=>40, -default=>'dbi:Pg:dbname=template1'), "</TD>",
- "</TR>",
- "<TR><TD>Enter the user name: </TD>",
- "<TD>", $query->textfield(-name=>'username'), "</TD>",
- "</TR>",
- "<TR><TD>Enter the password: </TD>",
- "<TD>", $query->textfield(-name=>'auth'), "</TD>",
- "</TR>",
- "<TR><TD>Enter the select command: </TD>",
- "<TD>", $query->textfield(-name=>'cmd', -size=>40), "</TD>",
- "</TR>",
- "</TABLE></CENTER><P>",
- "<CENTER>", $query->submit(-value=>'Submit'), "</CENTER>",
- $query->endform;
-
-if ($query->param) {
-
- my $data_source = $query->param('data_source');
- my $username = $query->param('username');
- my $auth = $query->param('auth');
- my $cmd = $query->param('cmd');
- my $dbh = DBI->connect($data_source, $username, $auth);
- if ($dbh) {
- my $sth = $dbh->prepare($cmd);
- my $ret = $sth->execute;
- if ($ret) {
- my($i, $ary_ref);
- print "<P><CENTER><TABLE CELLPADDING=4 CELLSPACING=2 BORDER=1>\n";
- while ($ary_ref = $sth->fetchrow_arrayref) {
- print "<TR><TD>", join("</TD><TD>", @$ary_ref), "</TD></TR>\n";
- }
- print "</TABLE></CENTER><P>\n";
- $sth->finish;
- } else {
- print "<CENTER><H2>", $DBI::errstr, "</H2></CENTER>\n";
- }
- $dbh->disconnect;
- } else {
- print "<CENTER><H2>", $DBI::errstr, "</H2></CENTER>\n";
- }
-}
-
-print $query->end_html;
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/lotest.pl b/install/5.005/DBD-Pg-1.22-fixvercmp/eg/lotest.pl
deleted file mode 100644
index 6192c49..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/lotest.pl
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-
-use DBI;
-use DBD::Pg;
-
-my $dsn = "dbname=p1";
-my $dbh = DBI->connect('dbi:Pg:dbname=p1', undef, undef, { AutoCommit => 1 });
-
-my $buf = 'abcdefghijklmnopqrstuvwxyz' x 400;
-
-my $id = write_blob($dbh, undef, $buf);
-
-my $dat = read_blob($dbh, $id);
-
-print "Done\n";
-
-sub write_blob {
- my ($dbh, $lobj_id, $data) = @_;
-
- # begin transaction
- $dbh->{AutoCommit} = 0;
-
- # Create a new lo if we are not passed an lo object ID.
- unless ($lobj_id) {
- # Create the object.
- $lobj_id = $dbh->func($dbh->{'pg_INV_WRITE'}, 'lo_creat');
- }
-
- # Open it to get a file descriptor.
- my $lobj_fd = $dbh->func($lobj_id, $dbh->{'pg_INV_WRITE'}, 'lo_open');
-
- $dbh->func($lobj_fd, 0, 0, 'lo_lseek');
-
- # Write some data to it.
- my $len = $dbh->func($lobj_fd, $data, length($data), 'lo_write');
-
- die "Errors writing lo\n" if $len != length($data);
-
- # Close 'er up.
- $dbh->func($lobj_fd, 'lo_close') or die "Problems closing lo object\n";
-
- # end transaction
- $dbh->{AutoCommit} = 1;
-
- return $lobj_id;
-}
-
-sub read_blob {
- my ($dbh, $lobj_id) = @_;
- my $data = '';
- my $read_len = 256;
- my $chunk = '';
-
- # begin transaction
- $dbh->{AutoCommit} = 0;
-
- my $lobj_fd = $dbh->func($lobj_id, $dbh->{'pg_INV_READ'}, 'lo_open');
-
- $dbh->func($lobj_fd, 0, 0, 'lo_lseek');
-
- # Pull out all the data.
- while ($dbh->func($lobj_fd, $chunk, $read_len, 'lo_read')) {
- $data .= $chunk;
- }
-
- $dbh->func($lobj_fd, 'lo_close') or die "Problems closing lo object\n";
-
- # end transaction
- $dbh->{AutoCommit} = 1;
-
- return $data;
-}
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/notify_test.patch b/install/5.005/DBD-Pg-1.22-fixvercmp/eg/notify_test.patch
deleted file mode 100644
index 6f8acf8..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/eg/notify_test.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff -r --unified DBD-Pg-1.00/test.pl DBD-Pg-1.00.alex/test.pl
---- DBD-Pg-1.00/test.pl Sun May 27 10:10:13 2001
-+++ DBD-Pg-1.00.alex/test.pl Sun Jun 10 15:38:09 2001
-@@ -40,7 +40,7 @@
- my $dsn_main = "dbi:Pg:dbname=$dbmain";
- my $dsn_test = "dbi:Pg:dbname=$dbtest";
-
--my ($dbh0, $dbh, $sth);
-+my ($dbh0, $dbh, $dbh1, $sth);
-
- #DBI->trace(3); # make your choice
-
-@@ -445,16 +445,56 @@
- # end transaction
- $dbh->{AutoCommit} = 1;
-
-+# compare large objects
-+
- ( $dbh->func($lobjId, 'lo_unlink') )
- and print "\$dbh->func(lo_unlink) ...... ok\n"
- or print "\$dbh->func(lo_unlink) ...... not ok\n";
-
--# compare large objects
--
- ( $pgin cmp $buf and $pgin cmp $blob )
- and print "compare blobs .............. not ok\n"
- or print "compare blobs .............. ok\n";
-
-+my $fd;
-+( $fd=$dbh->func( 'getfd') )
-+ and print "\$dbh->func(getfd) .......... ok\n"
-+ or print "\$dbh->func(getfd) .......... not ok\n";
-+
-+( $dbh->do( 'LISTEN test ') )
-+ and print "\$dbh->do('LISTEN test') .... ok\n"
-+ or print "\$dbh->do('LISTEN test') .... not ok\n";
-+
-+( $dbh1 = DBI->connect("$dsn_test", '', '', { AutoCommit => 1 }) )
-+ and print "DBI->connect (for notify)... ok\n"
-+ or die "DBI->connect (for notify)... not ok: ", $DBI::errstr;
-+
-+# there should be no data for read on $fd , until we send a notify
-+
-+ my $rout;
-+ my $rin = '';
-+ vec($rin,$fd,1) = 1;
-+ my $nfound = select( $rout=$rin, undef, undef, 0);
-+
-+( $nfound==0 )
-+ and print "select(\$fd) returns no data. ok\n"
-+ or die "select(\$fd) returns no data. not ok\n";
-+
-+( $dbh1->do( 'NOTIFY test ') )
-+ and print "\$dbh1->do('NOTIFY test') ... ok\n"
-+ or print "\$dbh1->do('NOTIFY test') ... not ok\n";
-+
-+ my $nfound = select( $rout=$rin, undef, undef, 1);
-+
-+( $nfound==1 )
-+ and print "select(\$fd) returns data.... ok\n"
-+ or die "select(\$fd) returns data.... not ok\n";
-+
-+my $notify_r;
-+
-+( $notify_r = $dbh->func('notifies') )
-+ and print "\$dbh->func('notifies')...... ok\n"
-+ or die "\$dbh->func('notifies')...... not ok\n";
-+
- ######################### disconnect and drop test database
-
- # disconnect
-@@ -462,6 +502,10 @@
- ( $dbh->disconnect )
- and print "\$dbh->disconnect ........... ok\n"
- or die "\$dbh->disconnect ........... not ok: ", $DBI::errstr;
-+
-+( $dbh1->disconnect )
-+ and print "\$dbh1->disconnect .......... ok\n"
-+ or die "\$dbh1->disconnect .......... not ok: ", $DBI::errstr;
-
- $dbh0->do("DROP DATABASE $dbtest");
- $dbh0->disconnect;
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/00basic.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/00basic.t
deleted file mode 100644
index 1c0cb28..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/00basic.t
+++ /dev/null
@@ -1,10 +0,0 @@
-print "1..1\n";
-
-use DBI;
-use DBD::Pg;
-
-if ($DBD::Pg::VERSION) {
- print "ok 1\n";
-} else {
- print "not ok 1\n";
-}
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01connect.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/01connect.t
deleted file mode 100644
index be17b50..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01connect.t
+++ /dev/null
@@ -1,26 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 2;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-
-ok((defined $dbh and $dbh->disconnect()),
- 'connect with transaction'
- );
-
-undef $dbh;
-$dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 1});
-
-ok((defined $dbh and $dbh->disconnect()),
- 'connect without transaction'
- );
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01constants.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/01constants.t
deleted file mode 100644
index 09907e9..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01constants.t
+++ /dev/null
@@ -1,25 +0,0 @@
-use strict;
-use Test::More tests => 20;
-
-use DBD::Pg qw(:pg_types);
-
-ok(PG_BOOL == 16, 'PG_BOOL');
-ok(PG_BYTEA == 17, 'PG_BYTEA');
-ok(PG_CHAR == 18, 'PG_CHAR');
-ok(PG_INT8 == 20, 'PG_INT8');
-ok(PG_INT2 == 21, 'PG_INT2');
-ok(PG_INT4 == 23, 'PG_INT4');
-ok(PG_TEXT == 25, 'PG_TEXT');
-ok(PG_OID == 26, 'PG_OID');
-ok(PG_FLOAT4 == 700, 'PG_FLOAT4');
-ok(PG_FLOAT8 == 701, 'PG_FLOAT8');
-ok(PG_ABSTIME == 702, 'PG_ABSTIME');
-ok(PG_RELTIME == 703, 'PG_RELTIME');
-ok(PG_TINTERVAL == 704, 'PG_TINTERVAL');
-ok(PG_BPCHAR == 1042, 'PG_BPCHAR');
-ok(PG_VARCHAR == 1043, 'PG_VARCHAR');
-ok(PG_DATE == 1082, 'PG_DATE');
-ok(PG_TIME == 1083, 'PG_TIME');
-ok(PG_DATETIME == 1184, 'PG_DATETIME');
-ok(PG_TIMESPAN == 1186, 'PG_TIMESPAN');
-ok(PG_TIMESTAMP == 1296, 'PG_TIMESTAMP');
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01setup.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/01setup.t
deleted file mode 100644
index d0b57a3..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/01setup.t
+++ /dev/null
@@ -1,38 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 3;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 1});
-ok(defined $dbh,'connect without transaction');
-{
- local $dbh->{PrintError} = 0;
- local $dbh->{RaiseError} = 0;
- $dbh->do(q{DROP TABLE test});
-}
-
-my $sql = <<SQL;
-CREATE TABLE test (
- id int,
- name text,
- val text,
- score float,
- date timestamp default 'now()',
- array text[][]
-)
-SQL
-
-ok($dbh->do($sql),
- 'create table'
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/02prepare.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/02prepare.t
deleted file mode 100644
index 373aca2..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/02prepare.t
+++ /dev/null
@@ -1,84 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 8;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my $sql = <<SQL;
- SELECT *
- FROM test
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-$sql = <<SQL;
- SELECT id
- FROM test
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = 1
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-$sql = <<SQL;
- SELECT *
- FROM test
- WHERE id = ?
- AND name = ?
- AND value = ?
- AND score = ?
- and data = ?
-SQL
-
-ok($dbh->prepare($sql),
- "prepare: $sql"
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/03bind.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/03bind.t
deleted file mode 100644
index df7c884..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/03bind.t
+++ /dev/null
@@ -1,85 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 11;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my $sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
-SQL
-my $sth = $dbh->prepare($sql);
-ok(defined $sth,
- "prepare: $sql"
- );
-
-ok($sth->bind_param(1, 'foo'),
- 'bind int column with string'
- );
-
-ok($sth->bind_param(1, 1),
- 'rebind int column with int'
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
- AND name = ?
-SQL
-$sth = $dbh->prepare($sql);
-ok(defined $sth,
- "prepare: $sql"
- );
-
-ok($sth->bind_param(1, 'foo'),
- 'bind int column with string',
- );
-ok($sth->bind_param(2, 'bar'),
- 'bind string column with text'
- );
-ok($sth->bind_param(2, 'baz'),
- 'rebind string column with text'
- );
-
-ok($sth->finish(),
- 'finish'
- );
-
-# Make sure that we get warnings when we try to use SQL_BINARY.
-{
- local $SIG{__WARN__} =
- sub { ok($_[0] =~ /^Use of SQL type SQL_BINARY/,
- 'warning with SQL_BINARY'
- );
- };
-
- $sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
- AND name = ?
-SQL
- $sth = $dbh->prepare($sql);
-
- $sth->bind_param(1, 'foo', DBI::SQL_BINARY);
-}
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/04execute.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/04execute.t
deleted file mode 100644
index 9643878..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/04execute.t
+++ /dev/null
@@ -1,113 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 13;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my $sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
-SQL
-my $sth = $dbh->prepare($sql);
-ok(defined $sth,
- "prepare: $sql"
- );
-
-$sth->bind_param(1, 1);
-ok($sth->execute(),
- 'exectute with one bind param'
- );
-
-$sth->bind_param(1, 2);
-ok($sth->execute(),
- 'exectute with rebinding one param'
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
- AND name = ?
-SQL
-$sth = $dbh->prepare($sql);
-ok(defined $sth,
- "prepare: $sql"
- );
-
-$sth->bind_param(1, 2);
-$sth->bind_param(2, 'foo');
-ok($sth->execute(),
- 'exectute with two bind params'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth = $dbh->prepare($sql);
- $sth->bind_param(1, 2);
- $sth->execute();
-};
-ok(!$@,
- 'execute with only first of two params bound'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth = $dbh->prepare($sql);
- $sth->bind_param(2, 'foo');
- $sth->execute();
-};
-ok(!$@,
- 'execute with only second of two params bound'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth = $dbh->prepare($sql);
- $sth->execute();
-};
-ok(!$@,
- 'execute with neither of two params bound'
- );
-
-$sth = $dbh->prepare($sql);
-ok($sth->execute(1, 'foo'),
- 'execute with both params bound in execute'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth = $dbh->prepare(q{
- SELECT id
- , name
- FROM test
- WHERE id = ?
- AND name = ?
- });
- $sth->execute(1);
-};
-ok($@,
- 'execute with only one of two params bound in execute'
- );
-
-
-ok($sth->finish(),
- 'finish'
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/05fetch.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/05fetch.t
deleted file mode 100644
index b6f8f66..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/05fetch.t
+++ /dev/null
@@ -1,131 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 10;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-$dbh->do(q{INSERT INTO test (id, name, val) VALUES (1, 'foo', 'horse')});
-$dbh->do(q{INSERT INTO test (id, name, val) VALUES (2, 'bar', 'chicken')});
-$dbh->do(q{INSERT INTO test (id, name, val) VALUES (3, 'baz', 'pig')});
-ok($dbh->commit(),
- 'commit'
- );
-
-my $sql = <<SQL;
- SELECT id
- , name
- FROM test
-SQL
-my $sth = $dbh->prepare($sql);
-$sth->execute();
-
-my $rows = 0;
-while (my ($id, $name) = $sth->fetchrow_array()) {
- if (defined($id) && defined($name)) {
- $rows++;
- }
-}
-$sth->finish();
-ok($rows == 3,
- 'fetch three rows'
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE 1 = 0
-SQL
-$sth = $dbh->prepare($sql);
-$sth->execute();
-
-$rows = 0;
-while (my ($id, $name) = $sth->fetchrow_array()) {
- $rows++;
-}
-$sth->finish();
-
-ok($rows == 0,
- 'fetch zero rows'
- );
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE id = ?
-SQL
-$sth = $dbh->prepare($sql);
-$sth->execute(1);
-
-$rows = 0;
-while (my ($id, $name) = $sth->fetchrow_array()) {
- if (defined($id) && defined($name)) {
- $rows++;
- }
-}
-$sth->finish();
-
-ok($rows == 1,
- 'fetch one row on id'
- );
-
-# Attempt to test whether or not we can get unicode out of the database
-# correctly. Reuse the previous sth.
-SKIP: {
- eval "use Encode";
- skip "need Encode module for unicode tests", 3 if $@;
- local $dbh->{pg_enable_utf8} = 1;
- $dbh->do("INSERT INTO test (id, name, val) VALUES (4, '\001\000dam', 'cow')");
- $sth->execute(4);
- my ($id, $name) = $sth->fetchrow_array();
- ok(Encode::is_utf8($name),
- 'returned data has utf8 bit set'
- );
- is(length($name), 4,
- 'returned utf8 data is not corrupted'
- );
- $sth->finish();
- $sth->execute(1);
- my ($id2, $name2) = $sth->fetchrow_array();
- ok(! Encode::is_utf8($name2),
- 'returned ASCII data has not got utf8 bit set'
- );
- $sth->finish();
-}
-
-$sql = <<SQL;
- SELECT id
- , name
- FROM test
- WHERE name = ?
-SQL
-$sth = $dbh->prepare($sql);
-$sth->execute('foo');
-
-$rows = 0;
-while (my ($id, $name) = $sth->fetchrow_array()) {
- if (defined($id) && defined($name)) {
- $rows++;
- }
-}
-$sth->finish();
-
-ok($rows == 1,
- 'fetch one row on name'
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/06disconnect.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/06disconnect.t
deleted file mode 100644
index 5d76bc0..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/06disconnect.t
+++ /dev/null
@@ -1,31 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 3;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
-
-$dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-
-$dbh->disconnect();
-$dbh->disconnect();
-$dbh->disconnect();
-ok($dbh->disconnect(),
- 'disconnect on already disconnected dbh'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/07reuse.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/07reuse.t
deleted file mode 100644
index d09dfc0..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/07reuse.t
+++ /dev/null
@@ -1,28 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 3;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, PrintError => 0, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my $sth = $dbh->prepare(q{SELECT * FROM test});
-ok($dbh->disconnect(),
- 'disconnect with un-finished statement'
- );
-
-eval {
- $sth->execute();
-};
-ok($@,
- 'execute on disconnected statement'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/08txn.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/08txn.t
deleted file mode 100644
index 467aa31..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/08txn.t
+++ /dev/null
@@ -1,102 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 18;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh1 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh1,
- 'connect first dbh'
- );
-
-my $dbh2 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh2,
- 'connect second dbh'
- );
-
-$dbh1->do(q{DELETE FROM test});
-ok($dbh1->commit(),
- 'delete'
- );
-
-my $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on empty table from dbh1'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on empty table from dbh2'
- );
-
-$dbh1->do(q{INSERT INTO test (id, name, val) VALUES (1, 'foo', 'horse')});
-$dbh1->do(q{INSERT INTO test (id, name, val) VALUES (2, 'bar', 'chicken')});
-$dbh1->do(q{INSERT INTO test (id, name, val) VALUES (3, 'baz', 'pig')});
-
-$rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch three rows on dbh1'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on dbh2 before commit'
- );
-
-ok($dbh1->commit(),
- 'commit work'
- );
-
-$rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch on dbh1 after commit'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch on dbh2 after commit'
- );
-
-ok($dbh1->do(q{DELETE FROM test}),
- 'delete'
- );
-
-$rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on empty table from dbh1'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch on from dbh2 without commit'
- );
-
-ok($dbh1->rollback(),
- 'rollback'
- );
-
-$rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch on from dbh1 after rollback'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 3,
- 'fetch on from dbh2 after rollback'
- );
-
-ok($dbh1->disconnect(),
- 'disconnect on dbh1'
-);
-
-ok($dbh2->disconnect(),
- 'disconnect on dbh2'
-);
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/09autocommit.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/09autocommit.t
deleted file mode 100644
index 9b1b69f..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/09autocommit.t
+++ /dev/null
@@ -1,68 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 12;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh1 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 1}
- );
-ok(defined $dbh1,
- 'connect first dbh'
- );
-
-my $dbh2 = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 1}
- );
-ok(defined $dbh2,
- 'connect second dbh'
- );
-
-ok($dbh1->do(q{DELETE FROM test}),
- 'delete'
- );
-
-my $rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on empty table from dbh1'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 0,
- 'fetch on empty table from dbh2'
- );
-
-ok($dbh1->do(q{INSERT INTO test (id, name, val) VALUES (1, 'foo', 'horse')}),
- 'insert'
- );
-
-$rows = ($dbh1->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 1,
- 'fetch one row from dbh1'
- );
-
-$rows = ($dbh2->selectrow_array(q{SELECT COUNT(*) FROM test}))[0];
-ok($rows == 1,
- 'fetch one row from dbh1'
- );
-
-local $SIG{__WARN__} = sub {};
-ok(!$dbh1->commit(),
- 'commit'
- );
-
-ok(!$dbh1->rollback(),
- 'rollback'
- );
-
-ok($dbh1->disconnect(),
- 'disconnect on dbh1'
-);
-
-ok($dbh2->disconnect(),
- 'disconnect on dbh2'
-);
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/11quoting.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/11quoting.t
deleted file mode 100644
index afec963..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/11quoting.t
+++ /dev/null
@@ -1,50 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 8;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my %tests = (
- one=>["'", "'\\" . sprintf("%03o", ord("'")) . "'"],
- two=>["''", "'" . ("\\" . sprintf("%03o", ord("'")))x2 . "'"],
- three=>["\\", "'\\" . sprintf("%03o", ord("\\")) . "'"],
- four=>["\\'", sprintf("'\\%03o\\%03o'", ord("\\"), ord("'"))],
- five=>["\\'?:", sprintf("'\\%03o\\%03o?:'", ord("\\"), ord("'"))],
- );
-
-foreach my $test (keys %tests) {
- my ($unq, $quo, $ref);
-
- $unq = $tests{$test}->[0];
- $ref = $tests{$test}->[1];
- $quo = $dbh->quote($unq);
-
- ok($quo eq $ref,
- "$test: $unq -> expected $quo got $ref"
- );
-}
-
-# Make sure that SQL_BINARY doesn't work.
-# eval { $dbh->quote('foo', { TYPE => DBI::SQL_BINARY })};
-eval {
- local $dbh->{PrintError} = 0;
- $dbh->quote('foo', DBI::SQL_BINARY);
-};
-ok($@ && $@ =~ /Use of SQL_BINARY invalid in quote/,
- 'SQL_BINARY'
-);
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/12placeholders.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/12placeholders.t
deleted file mode 100644
index bd79ea7..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/12placeholders.t
+++ /dev/null
@@ -1,125 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 9;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-my $quo = $dbh->quote("\\'?:");
-my $sth = $dbh->prepare(qq{
- INSERT INTO test (name) VALUES ($quo)
- });
-$sth->execute();
-
-my $sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = $quo;
-SQL
-$sth = $dbh->prepare($sql);
-$sth->execute();
-
-my ($retr) = $sth->fetchrow_array();
-ok((defined($retr) && $retr eq "\\'?:"),
- 'fetch'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth->execute('foo');
-};
-ok($@,
- 'execute with one bind param where none expected'
- );
-
-$sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = ?
-SQL
-$sth = $dbh->prepare($sql);
-
-$sth->execute("\\'?:");
-
-($retr) = $sth->fetchrow_array();
-ok((defined($retr) && $retr eq "\\'?:"),
- 'execute with ? placeholder'
- );
-
-$sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = :1
-SQL
-$sth = $dbh->prepare($sql);
-
-$sth->execute("\\'?:");
-
-($retr) = $sth->fetchrow_array();
-ok((defined($retr) && $retr eq "\\'?:"),
- 'execute with :1 placeholder'
- );
-
-$sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = '?'
-SQL
-$sth = $dbh->prepare($sql);
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth->execute('foo');
-};
-ok($@,
- 'execute with quoted ?'
- );
-
-$sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = ':1'
-SQL
-$sth = $dbh->prepare($sql);
-
-eval {
- local $dbh->{PrintError} = 0;
- $sth->execute('foo');
-};
-ok($@,
- 'execute with quoted :1'
- );
-
-$sql = <<SQL;
- SELECT name
- FROM test
- WHERE name = '\\\\'
- AND name = '?'
-SQL
-$sth = $dbh->prepare($sql);
-
-eval {
- local $dbh->{PrintError} = 0;
- local $sth->{PrintError} = 0;
- $sth->execute('foo');
-};
-ok($@,
- 'execute with quoted ?'
- );
-
-$sth->finish();
-$dbh->rollback();
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/13pgtype.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/13pgtype.t
deleted file mode 100644
index 8db819e..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/13pgtype.t
+++ /dev/null
@@ -1,43 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 3;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-eval {
- local $dbh->{PrintError} = 0;
- $dbh->do(q{DROP TABLE tt});
- $dbh->commit();
-};
-$dbh->rollback();
-
-$dbh->do(q{CREATE TABLE tt (blah numeric(5,2), foo text)});
-my $sth = $dbh->prepare(qq{
- SELECT * FROM tt WHERE FALSE
- });
-$sth->execute();
-
-my @types = @{$sth->{pg_type}};
-
-ok($types[0] eq 'numeric',
- 'type numeric'
- );
-
-ok($types[1] eq 'text',
- 'type text'
- );
-
-$sth->finish();
-$dbh->rollback();
-$dbh->disconnect();
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/15funct.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/15funct.t
deleted file mode 100644
index 1bc2cf9..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/15funct.t
+++ /dev/null
@@ -1,353 +0,0 @@
-#!/usr/bin/perl -w -I./t
-$| = 1;
-
-# vim:ts=2:sw=2:ai:aw:nu:
-use DBI qw(:sql_types);
-use Data::Dumper;
-use strict;
-use Test::More;
-if (defined $ENV{DBI_DSN}) {
- plan tests => 59;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-#
-# Test the different methods, so are expected to fail.
-#
-
-my $sth;
-
-# foreach (@{ $DBI::EXPORT_TAGS{sql_types} }) {
-# no strict 'refs';
-# printf "%s=%d\n", $_, &{"DBI::$_"};
-# }
-
-my $get_info = {
- SQL_DBMS_NAME => 17
- , SQL_DBMS_VER => 18
- , SQL_IDENTIFIER_QUOTE_CHAR => 29
- , SQL_CATALOG_NAME_SEPARATOR => 41
- , SQL_CATALOG_LOCATION => 114
-};
-
-# Ping
- eval {
- ok( $dbh->ping(), "Testing Ping" );
- };
-ok ( !$@, "Ping Tested" );
-
-# Get Info
- eval {
- $sth = $dbh->get_info();
- };
-ok ($@, "Call to get_info with 0 arguements, error expected: $@" );
-$sth = undef;
-
-# Table Info
- eval {
- $sth = $dbh->table_info();
- };
-ok ((!$@ and defined $sth), "table_info tested" );
-$sth = undef;
-
-# Column Info
- eval {
- $sth = $dbh->column_info();
- };
-ok ((!$@ and defined $sth), "column_info tested" );
-#ok ($@, "Call to column_info with 0 arguements, error expected: $@" );
-$sth = undef;
-
-
-# Tables
- eval {
- $sth = $dbh->tables();
- };
-ok ((!$@ and defined $sth), "tables tested" );
-$sth = undef;
-
-# Type Info All
- eval {
- $sth = $dbh->type_info_all();
- };
-ok ((!$@ and defined $sth), "type_info_all tested" );
-$sth = undef;
-
-# Type Info
- eval {
- my @types = $dbh->type_info();
- die unless @types;
- };
-ok (!$@, "type_info(undef)");
-$sth = undef;
-
-# Quote
- eval {
- my $val = $dbh->quote();
- die unless $val;
- };
-ok ($@, "quote error expected: $@");
-
-$sth = undef;
-# Tests for quote:
-my @qt_vals = (1, 2, undef, 'NULL', "ThisIsAString", "This is Another String");
-my @expt_vals = (q{'1'}, q{'2'}, "NULL", q{'NULL'}, q{'ThisIsAString'}, q{'This is Another String'});
-for (my $x = 0; $x <= $#qt_vals; $x++) {
- local $^W = 0;
- my $val = $dbh->quote( $qt_vals[$x] );
- is( $val, $expt_vals[$x], "$x: quote on $qt_vals[$x] returned $val" );
-}
-
-is( $dbh->quote( 1, SQL_INTEGER() ), 1, "quote(1, SQL_INTEGER)" );
-
-
-# Quote Identifier
- eval {
- my $val = $dbh->quote_identifier();
- die unless $val;
- };
-
-ok ($@, "quote_identifier error expected: $@");
-$sth = undef;
-
-SKIP: {
- skip("get_info() not yet implemented", 1);
- # , SQL_IDENTIFIER_QUOTE_CHAR => 29
- # , SQL_CATALOG_NAME_SEPARATOR => 41
- my $qt = $dbh->get_info( $get_info->{SQL_IDENTIFIER_QUOTE_CHAR} );
- my $sep = $dbh->get_info( $get_info->{SQL_CATALOG_NAME_SEPARATOR} );
-
- # Uncomment this line and remove the next line when get_info() is implemented.
-# my $cmp_str = qq{${qt}link${qt}${sep}${qt}schema${qt}${sep}${qt}table${qt}};
- my $cmp_str = '';
- is( $dbh->quote_identifier( "link", "schema", "table" )
- , $cmp_str
- , q{quote_identifier( "link", "schema", "table" )}
- );
-}
-
-# Test ping
-
-ok ($dbh->ping, "Ping the current connection ..." );
-
-# Test Get Info.
-
-# SQL_KEYWORDS
-# SQL_CATALOG_TERM
-# SQL_DATA_SOURCE_NAME
-# SQL_DBMS_NAME
-# SQL_DBMS_VERSION
-# SQL_DRIVER_NAME
-# SQL_DRIVER_VER
-# SQL_PROCEDURE_TERM
-# SQL_SCHEMA_TERM
-# SQL_TABLE_TERM
-# SQL_USER_NAME
-
-SKIP: {
- skip("get_info() not yet implemented", 5);
- foreach my $info (sort keys %$get_info) {
- my $type = $dbh->get_info($get_info->{$info});
- ok( defined $type, "get_info($info) ($get_info->{$info}) " .
- ($type || '') );
- }
-}
-
-# Test Table Info
-$sth = $dbh->table_info( undef, undef, undef );
-ok( defined $sth, "table_info(undef, undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->table_info( undef, undef, undef, "VIEW" );
-ok( defined $sth, "table_info(undef, undef, undef, \"VIEW\") tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-# Test Table Info Rule 19a
-$sth = $dbh->table_info( '%', '', '');
-ok( defined $sth, "table_info('%', '', '',) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-# Test Table Info Rule 19b
-$sth = $dbh->table_info( '', '%', '');
-ok( defined $sth, "table_info('', '%', '',) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-# Test Table Info Rule 19c
-$sth = $dbh->table_info( '', '', '', '%');
-ok( defined $sth, "table_info('', '', '', '%',) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-# Test to see if this database contains any of the defined table types.
-$sth = $dbh->table_info( '', '', '', '%');
-ok( defined $sth, "table_info('', '', '', '%',) tested" );
-if ($sth) {
- my $ref = $sth->fetchall_hashref( 'TABLE_TYPE' );
- foreach my $type ( sort keys %$ref ) {
- my $tsth = $dbh->table_info( undef, undef, undef, $type );
- ok( defined $tsth, "table_info(undef, undef, undef, $type) tested" );
- DBI::dump_results($tsth) if defined $tsth;
- $tsth->finish;
- }
- $sth->finish;
-}
-$sth = undef;
-
-# Test Column Info
-$sth = $dbh->column_info( undef, undef, undef, undef );
-ok( defined $sth, "column_info(undef, undef, undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", undef, undef );
-ok( defined $sth, "column_info(undef, 'auser', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'ause%'", undef, undef );
-ok( defined $sth, "column_info(undef, 'ause%', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser','replicator'", undef, undef );
-ok( defined $sth, "column_info(undef, 'auser','replicator', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser','repl%'", undef, undef );
-ok( defined $sth, "column_info(undef, 'auser','repl%', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'fred','repl%'", undef, undef );
-ok( defined $sth, "column_info(undef, 'fred','repl%', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'fred','jim'", undef, undef );
-ok( defined $sth, "column_info(undef, 'fred','jim', undef, undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", "'pga_schema'", undef );
-ok( defined $sth, "column_info(undef, 'auser', 'pga_schema', undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", "'pga_%'", undef );
-ok( defined $sth, "column_info(undef, 'auser', 'pga_%', undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'ause%'", "'pga_%'", undef );
-ok( defined $sth, "column_info(undef, 'ause%', 'pga_%', undef) tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", "'pga_schema'", "'schemaname'" );
-ok( defined $sth, "column_info(undef, 'auser', 'pga_schema', 'schemaname') tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", "'pga_schema'", "'schema%'" );
-ok( defined $sth, "column_info(undef, 'auser', 'pga_schema', 'schema%') tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'auser'", "'pga_%'", "'schema%'" );
-ok( defined $sth, "column_info(undef, 'auser', 'pga_%', 'schema%') tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-$sth = $dbh->column_info( undef, "'ause%'", "'pga_%'", "'schema%'" );
-ok( defined $sth, "column_info(undef, 'ause%', 'pga_%', 'schema%') tested" );
-DBI::dump_results($sth) if defined $sth;
-$sth = undef;
-
-# Test call to primary_key_info
-local ($dbh->{Warn}, $dbh->{PrintError});
-$dbh->{PrintError} = $dbh->{Warn} = 0;
-
-# Primary Key Info
-eval {
- $sth = $dbh->primary_key_info();
- die unless $sth;
-};
-ok ($@, "Call to primary_key_info with 0 arguements, error expected: $@" );
-$sth = undef;
-
-# Primary Key
-eval {
- $sth = $dbh->primary_key();
- die unless $sth;
-};
-ok ($@, "Call to primary_key with 0 arguements, error expected: $@" );
-$sth = undef;
-
-$sth = $dbh->primary_key_info(undef, undef, undef );
-
-ok( defined $sth, "Statement handle defined for primary_key_info()" );
-
-if ( defined $sth ) {
- while( my $row = $sth->fetchrow_arrayref ) {
- local $^W = 0;
- # print join( ", ", @$row, "\n" );
- }
-
- undef $sth;
-
-}
-
-$sth = $dbh->primary_key_info(undef, undef, undef );
-ok( defined $sth, "Statement handle defined for primary_key_info()" );
-
-my ( %catalogs, %schemas, %tables);
-
-my $cnt = 0;
-while( my ($catalog, $schema, $table) = $sth->fetchrow_array ) {
- local $^W = 0;
- $catalogs{$catalog}++ if $catalog;
- $schemas{$schema}++ if $schema;
- $tables{$table}++ if $table;
- $cnt++;
-}
-ok( $cnt > 0, "At least one table has a primary key." );
-
-$sth = $dbh->primary_key_info(undef, qq{'$ENV{DBI_USER}'}, undef );
-ok(
- defined $sth
- , "Getting primary keys for tables owned by $ENV{DBI_USER}");
-DBI::dump_results($sth) if defined $sth;
-
-undef $sth;
-
-SKIP: {
- # foreign_key_info
- local ($dbh->{Warn}, $dbh->{PrintError});
- $dbh->{PrintError} = $dbh->{Warn} = 0;
- eval {
- $sth = $dbh->foreign_key_info();
- die unless $sth;
- };
- skip "foreign_key_info not supported by driver", 1 if $@;
- ok( defined $sth, "Statement handle defined for foreign_key_info()" );
- DBI::dump_results($sth) if defined $sth;
- $sth = undef;
-}
-
-ok( $dbh->disconnect, "Disconnect from database" );
-
-exit(0);
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/99cleanup.t b/install/5.005/DBD-Pg-1.22-fixvercmp/t/99cleanup.t
deleted file mode 100644
index e7563ab..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/99cleanup.t
+++ /dev/null
@@ -1,24 +0,0 @@
-use strict;
-use DBI;
-use Test::More;
-
-if (defined $ENV{DBI_DSN}) {
- plan tests => 3;
-} else {
- plan skip_all => 'cannot test without DB info';
-}
-
-my $dbh = DBI->connect($ENV{DBI_DSN}, $ENV{DBI_USER}, $ENV{DBI_PASS},
- {RaiseError => 1, AutoCommit => 0}
- );
-ok(defined $dbh,
- 'connect with transaction'
- );
-
-ok($dbh->do(q{DROP TABLE test}),
- 'drop'
- );
-
-ok($dbh->disconnect(),
- 'disconnect'
- );
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info.pm
deleted file mode 100644
index 417247f..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info.pm
+++ /dev/null
@@ -1,1167 +0,0 @@
-package App::Info;
-
-# $Id: Info.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-=head1 NAME
-
-App::Info - Information about software packages on a system
-
-=head1 SYNOPSIS
-
- use App::Info::Category::FooApp;
-
- my $app = App::Info::Category::FooApp->new;
-
- if ($app->installed) {
- print "App name: ", $app->name, "\n";
- print "Version: ", $app->version, "\n";
- print "Bin dir: ", $app->bin_dir, "\n";
- } else {
- print "App not installed on your system. :-(\n";
- }
-
-=head1 DESCRIPTION
-
-App::Info is an abstract base class designed to provide a generalized
-interface for subclasses that provide metadata about software packages
-installed on a system. The idea is that these classes can be used in Perl
-application installers in order to determine whether software dependencies
-have been fulfilled, and to get necessary metadata about those software
-packages.
-
-App::Info provides an event model for handling events triggered by App::Info
-subclasses. The events are classified as "info", "error", "unknown", and
-"confirm" events, and multiple handlers may be specified to handle any or all
-of these event types. This allows App::Info clients to flexibly handle events
-in any way they deem necessary. Implementing new event handlers is
-straight-forward, and use the triggering of events by App::Info subclasses is
-likewise kept easy-to-use.
-
-A few L<sample subclasses|"SEE ALSO"> are provided with the distribution, but
-others are invited to write their own subclasses and contribute them to the
-CPAN. Contributors are welcome to extend their subclasses to provide more
-information relevant to the application for which data is to be provided (see
-L<App::Info::HTTPD::Apache|App::Info::HTTPD::Apache> for an example), but are
-encouraged to, at a minimum, implement the abstract methods defined here and
-in the category abstract base classes (e.g.,
-L<App::Info::HTTPD|App::Info::HTTPD> and L<App::Info::Lib|App::Info::Lib>).
-See L<Subclassing|"SUBCLASSING"> for more information on implementing new
-subclasses.
-
-=cut
-
-use strict;
-use Carp ();
-use App::Info::Handler;
-use App::Info::Request;
-use vars qw($VERSION);
-
-$VERSION = '0.23';
-
-##############################################################################
-##############################################################################
-# This code ref is used by the abstract methods to throw an exception when
-# they're called directly.
-my $croak = sub {
- my ($caller, $meth) = @_;
- $caller = ref $caller || $caller;
- if ($caller eq __PACKAGE__) {
- $meth = __PACKAGE__ . '::' . $meth;
- Carp::croak(__PACKAGE__ . " is an abstract base class. Attempt to " .
- " call non-existent method $meth");
- } else {
- Carp::croak("Class $caller inherited from the abstract base class " .
- __PACKAGE__ . ", but failed to redefine the $meth() " .
- "method. Attempt to call non-existent method " .
- "${caller}::$meth");
- }
-};
-
-##############################################################################
-# This code reference is used by new() and the on_* error handler methods to
-# set the error handlers.
-my $set_handlers = sub {
- my $on_key = shift;
- # Default is to do nothing.
- return [] unless $on_key;
- my $ref = ref $on_key;
- if ($ref) {
- $on_key = [$on_key] unless $ref eq 'ARRAY';
- # Make sure they're all handlers.
- foreach my $h (@$on_key) {
- if (my $r = ref $h) {
- Carp::croak("$r object is not an App::Info::Handler")
- unless UNIVERSAL::isa($h, 'App::Info::Handler');
- } else {
- # Look up the handler.
- $h = App::Info::Handler->new( key => $h);
- }
- }
- # Return 'em!
- return $on_key;
- } else {
- # Look up the handler.
- return [ App::Info::Handler->new( key => $on_key) ];
- }
-};
-
-##############################################################################
-##############################################################################
-
-=head1 INTERFACE
-
-This section documents the public interface of App::Info.
-
-=head2 Constructor
-
-=head3 new
-
- my $app = App::Info::Category::FooApp->new(@params);
-
-Constructs an App::Info object and returns it. The @params arguments define
-how the App::Info object will respond to certain events, and correspond to
-their like-named methods. See the L<"Event Handler Object Methods"> section
-for more information on App::Info events and how to handle them. The
-parameters to C<new()> for the different types of App::Info events are:
-
-=over 4
-
-=item on_info
-
-=item on_error
-
-=item on_unknown
-
-=item on_confirm
-
-=back
-
-When passing event handlers to C<new()>, the list of handlers for each type
-should be an anonymous array, for example:
-
- my $app = App::Info::Category::FooApp->new( on_info => \@handlers );
-
-=cut
-
-sub new {
- my ($pkg, %p) = @_;
- my $class = ref $pkg || $pkg;
- # Fail if the method isn't overridden.
- $croak->($pkg, 'new') if $class eq __PACKAGE__;
-
- # Set up handlers.
- for (qw(on_error on_unknown on_info on_confirm)) {
- $p{$_} = $set_handlers->($p{$_});
- }
-
- # Do it!
- return bless \%p, $class;
-}
-
-##############################################################################
-##############################################################################
-
-=head2 Metadata Object Methods
-
-These are abstract methods in App::Info and must be provided by its
-subclasses. They provide the essential metadata of the software package
-supported by the App::Info subclass.
-
-=head3 key_name
-
- my $key_name = $app->key_name;
-
-Returns a string that uniquely identifies the software for which the App::Info
-subclass provides data. This value should be unique across all App::Info
-classes. Typically, it's simply the name of the software.
-
-=cut
-
-sub key_name { $croak->(shift, 'key_name') }
-
-=head3 installed
-
- if ($app->installed) {
- print "App is installed.\n"
- } else {
- print "App is not installed.\n"
- }
-
-Returns a true value if the application is installed, and a false value if it
-is not.
-
-=cut
-
-sub installed { $croak->(shift, 'installed') }
-
-##############################################################################
-
-=head3 name
-
- my $name = $app->name;
-
-Returns the name of the application.
-
-=cut
-
-sub name { $croak->(shift, 'name') }
-
-##############################################################################
-
-=head3 version
-
- my $version = $app->version;
-
-Returns the full version number of the application.
-
-=cut
-
-##############################################################################
-
-sub version { $croak->(shift, 'version') }
-
-=head3 major_version
-
- my $major_version = $app->major_version;
-
-Returns the major version number of the application. For example, if
-C<version()> returns "7.1.2", then this method returns "7".
-
-=cut
-
-sub major_version { $croak->(shift, 'major_version') }
-
-##############################################################################
-
-=head3 minor_version
-
- my $minor_version = $app->minor_version;
-
-Returns the minor version number of the application. For example, if
-C<version()> returns "7.1.2", then this method returns "1".
-
-=cut
-
-sub minor_version { $croak->(shift, 'minor_version') }
-
-##############################################################################
-
-=head3 patch_version
-
- my $patch_version = $app->patch_version;
-
-Returns the patch version number of the application. For example, if
-C<version()> returns "7.1.2", then this method returns "2".
-
-=cut
-
-sub patch_version { $croak->(shift, 'patch_version') }
-
-##############################################################################
-
-=head3 bin_dir
-
- my $bin_dir = $app->bin_dir;
-
-Returns the full path the application's bin directory, if it exists.
-
-=cut
-
-sub bin_dir { $croak->(shift, 'bin_dir') }
-
-##############################################################################
-
-=head3 inc_dir
-
- my $inc_dir = $app->inc_dir;
-
-Returns the full path the application's include directory, if it exists.
-
-=cut
-
-sub inc_dir { $croak->(shift, 'inc_dir') }
-
-##############################################################################
-
-=head3 lib_dir
-
- my $lib_dir = $app->lib_dir;
-
-Returns the full path the application's lib directory, if it exists.
-
-=cut
-
-sub lib_dir { $croak->(shift, 'lib_dir') }
-
-##############################################################################
-
-=head3 so_lib_dir
-
- my $so_lib_dir = $app->so_lib_dir;
-
-Returns the full path the application's shared library directory, if it
-exists.
-
-=cut
-
-sub so_lib_dir { $croak->(shift, 'so_lib_dir') }
-
-##############################################################################
-
-=head3 home_url
-
- my $home_url = $app->home_url;
-
-The URL for the software's home page.
-
-=cut
-
-sub home_url { $croak->(shift, 'home_url') }
-
-##############################################################################
-
-=head3 download_url
-
- my $download_url = $app->download_url;
-
-The URL for the software's download page.
-
-=cut
-
-sub download_url { $croak->(shift, 'download_url') }
-
-##############################################################################
-##############################################################################
-
-=head2 Event Handler Object Methods
-
-These methods provide control over App::Info event handling. Events can be
-handled by one or more objects of subclasses of App::Info::Handler. The first
-to return a true value will be the last to execute. This approach allows
-handlers to be stacked, and makes it relatively easy to create new handlers.
-L<App::Info::Handler|App::Info::Handler> for information on writing event
-handlers.
-
-Each of the event handler methods takes a list of event handlers as its
-arguments. If none are passed, the existing list of handlers for the relevant
-event type will be returned. If new handlers are passed in, they will be
-returned.
-
-The event handlers may be specified as one or more objects of the
-App::Info::Handler class or subclasses, as one or more strings that tell
-App::Info construct such handlers itself, or a combination of the two. The
-strings can only be used if the relevant App::Info::Handler subclasses have
-registered strings with App::Info. For example, the App::Info::Handler::Print
-class included in the App::Info distribution registers the strings "stderr"
-and "stdout" when it starts up. These strings may then be used to tell
-App::Info to construct App::Info::Handler::Print objects that print to STDERR
-or to STDOUT, respectively. See the App::Info::Handler subclasses for what
-strings they register with App::Info.
-
-=head3 on_info
-
- my @handlers = $app->on_info;
- $app->on_info(@handlers);
-
-Info events are triggered when the App::Info subclass wants to send an
-informational status message. By default, these events are ignored, but a
-common need is for such messages to simply print to STDOUT. Use the
-L<App::Info::Handler::Print|App::Info::Handler::Print> class included with the
-App::Info distribution to have info messages print to STDOUT:
-
- use App::Info::Handler::Print;
- $app->on_info('stdout');
- # Or:
- my $stdout_handler = App::Info::Handler::Print->new('stdout');
- $app->on_info($stdout_handler);
-
-=cut
-
-sub on_info {
- my $self = shift;
- $self->{on_info} = $set_handlers->(\@_) if @_;
- return @{ $self->{on_info} };
-}
-
-=head3 on_error
-
- my @handlers = $app->on_error;
- $app->on_error(@handlers);
-
-Error events are triggered when the App::Info subclass runs into an unexpected
-but not fatal problem. (Note that fatal problems will likely throw an
-exception.) By default, these events are ignored. A common way of handling
-these events is to print them to STDERR, once again using the
-L<App::Info::Handler::Print|App::Info::Handler::Print> class included with the
-App::Info distribution:
-
- use App::Info::Handler::Print;
- my $app->on_error('stderr');
- # Or:
- my $stderr_handler = App::Info::Handler::Print->new('stderr');
- $app->on_error($stderr_handler);
-
-Another approach might be to turn such events into fatal exceptions. Use the
-included L<App::Info::Handler::Carp|App::Info::Handler::Carp> class for this
-purpose:
-
- use App::Info::Handler::Carp;
- my $app->on_error('croak');
- # Or:
- my $croaker = App::Info::Handler::Carp->new('croak');
- $app->on_error($croaker);
-
-=cut
-
-sub on_error {
- my $self = shift;
- $self->{on_error} = $set_handlers->(\@_) if @_;
- return @{ $self->{on_error} };
-}
-
-=head3 on_unknown
-
- my @handlers = $app->on_unknown;
- $app->on_uknown(@handlers);
-
-Unknown events are trigged when the App::Info subclass cannot find the value
-to be returned by a method call. By default, these events are ignored. A
-common way of handling them is to have the application prompt the user for the
-relevant data. The App::Info::Handler::Prompt class included with the
-App::Info distribution can do just that:
-
- use App::Info::Handler::Prompt;
- my $app->on_unknown('prompt');
- # Or:
- my $prompter = App::Info::Handler::Prompt;
- $app->on_unknown($prompter);
-
-See L<App::Info::Handler::Prompt|App::Info::Handler::Prompt> for information
-on how it works.
-
-=cut
-
-sub on_unknown {
- my $self = shift;
- $self->{on_unknown} = $set_handlers->(\@_) if @_;
- return @{ $self->{on_unknown} };
-}
-
-=head3 on_confirm
-
- my @handlers = $app->on_confirm;
- $app->on_confirm(@handlers);
-
-Confirm events are triggered when the App::Info subclass has found an
-important piece of information (such as the location of the executable it'll
-use to collect information for the rest of its methods) and wants to confirm
-that the information is correct. These events will most often be triggered
-during the App::Info subclass object construction. Here, too, the
-App::Info::Handler::Prompt class included with the App::Info distribution can
-help out:
-
- use App::Info::Handler::Prompt;
- my $app->on_confirm('prompt');
- # Or:
- my $prompter = App::Info::Handler::Prompt;
- $app->on_confirm($prompter);
-
-=cut
-
-sub on_confirm {
- my $self = shift;
- $self->{on_confirm} = $set_handlers->(\@_) if @_;
- return @{ $self->{on_confirm} };
-}
-
-##############################################################################
-##############################################################################
-
-=head1 SUBCLASSING
-
-As an abstract base class, App::Info is not intended to be used directly.
-Instead, you'll use concrete subclasses that implement the interface it
-defines. These subclasses each provide the metadata necessary for a given
-software package, via the interface outlined above (plus any additional
-methods the class author deems sensible for a given application).
-
-This section describes the facilities App::Info provides for subclassing. The
-goal of the App::Info design has been to make subclassing straight-forward, so
-that developers can focus on gathering the data they need for their
-application and minimize the work necessary to handle unknown values or to
-confirm values. As a result, there are essentially three concepts that
-developers need to understand when subclassing App::Info: organization,
-utility methods, and events.
-
-=head2 Organization
-
-The organizational idea behind App::Info is to name subclasses by broad
-software categories. This approach allows the categories themselves to
-function as abstract base classes that extend App::Info, so that they can
-specify more methods for all of their base classes to implement. For example,
-App::Info::HTTPD has specified the C<httpd_root()> abstract method that its
-subclasses must implement. So as you get ready to implement your own subclass,
-think about what category of software you're gathering information about.
-New categories can be added as necessary.
-
-=head2 Utility Methods
-
-Once you've decided on the proper category, you can start implementing your
-App::Info concrete subclass. As you do so, take advantage of App::Info::Util,
-wherein I've tried to encapsulate common functionality to make subclassing
-easier. I found that most of what I was doing repetitively was looking for
-files and directories, and searching through files. Thus, App::Info::Util
-subclasses L<File::Spec|File::Spec> in order to offer easy access to
-commonly-used methods from that class, e.g., C<path()>. Plus, it has several
-of its own methods to assist you in finding files and directories in lists of
-files and directories, as well as methods for searching through files and
-returning the values found in those files. See
-L<App::Info::Util|App::Info::Util> for more information, and the App::Info
-subclasses in this distribution for usage examples.
-
-I recommend the use of a package-scoped lexical App::Info::Util object. That
-way it's nice and handy when you need to carry out common tasks. If you find
-you're doing something over and over that's not already addressed by an
-App::Info::Util method, consider submitting a patch to App::Info::Util to add
-the functionality you need.
-
-=head2 Events
-
-Use the methods described below to trigger events. Events are designed to
-provide a simple way for App::Info subclass developers to send status messages
-and errors, to confirm data values, and to request a value when the class
-caonnot determine a value itself. Events may optionally be handled by module
-users who assign App::Info::Handler subclass objects to your App::Info
-subclass object using the event handling methods described in the L<"Event
-Handler Object Methods"> section.
-
-=cut
-
-##############################################################################
-# This code reference is used by the event methods to manage the stack of
-# event handlers that may be available to handle each of the events.
-my $handler = sub {
- my ($self, $meth, $params) = @_;
-
- # Sanity check. We really want to keep control over this.
- Carp::croak("Cannot call protected method $meth()")
- unless UNIVERSAL::isa($self, scalar caller(1));
-
- # Create the request object.
- $params->{type} ||= $meth;
- my $req = App::Info::Request->new(%$params);
-
- # Do the deed. The ultimate handling handler may die.
- foreach my $eh (@{$self->{"on_$meth"}}) {
- last if $eh->handler($req);
- }
-
- # Return the requst.
- return $req;
-};
-
-##############################################################################
-
-=head3 info
-
- $self->info(@message);
-
-Use this method to display status messages for the user. You may wish to use
-it to inform users that you're searching for a particular file, or attempting
-to parse a file or some other resource for the data you need. For example, a
-common use might be in the object constructor: generally, when an App::Info
-object is created, some important initial piece of information is being
-sought, such as an executable file. That file may be in one of many locations,
-so it makes sense to let the user know that you're looking for it:
-
- $self->info("Searching for executable");
-
-Note that, due to the nature of App::Info event handlers, your informational
-message may be used or displayed any number of ways, or indeed not at all (as
-is the default behavior).
-
-The C<@message> will be joined into a single string and stored in the
-C<message> attribute of the App::Info::Request object passed to info event
-handlers.
-
-=cut
-
-sub info {
- my $self = shift;
- # Execute the handler sequence.
- my $req = $handler->($self, 'info', { message => join '', @_ });
-}
-
-##############################################################################
-
-=head3 error
-
- $self->error(@error);
-
-Use this method to inform the user that something unexpected has happened. An
-example might be when you invoke another program to parse its output, but it's
-output isn't what you expected:
-
- $self->error("Unable to parse version from `/bin/myapp -c`");
-
-As with all events, keep in mind that error events may be handled in any
-number of ways, or not at all.
-
-The C<@erorr> will be joined into a single string and stored in the C<message>
-attribute of the App::Info::Request object passed to error event handlers. If
-that seems confusing, think of it as an "error message" rather than an "error
-error." :-)
-
-=cut
-
-sub error {
- my $self = shift;
- # Execute the handler sequence.
- my $req = $handler->($self, 'error', { message => join '', @_ });
-}
-
-##############################################################################
-
-=head3 unknown
-
- my $val = $self->unknown(@params);
-
-Use this method when a value is unknown. This will give the user the option --
-assuming the appropriate handler handles the event -- to provide the needed
-data. The value entered will be returned by C<unknown()>. The parameters are
-as follows:
-
-=over 4
-
-=item key
-
-The C<key> parameter uniquely identifies the data point in your class, and is
-used by App::Info to ensure that an unknown event is handled only once, no
-matter how many times the method is called. The same value will be returned by
-subsequent calls to C<unknown()> as was returned by the first call, and no
-handlers will be activated. Typical values are "version" and "lib_dir".
-
-=item prompt
-
-The C<prompt> parameter is the prompt to be displayed should an event handler
-decide to prompt for the appropriate value. Such a prompt might be something
-like "Path to your httpd executable?". If this parameter is not provided,
-App::Info will construct one for you using your class' C<key_name()> method
-and the C<key> parameter. The result would be something like "Enter a valid
-FooApp version". The C<prompt> parameter value will be stored in the
-C<message> attribute of the App::Info::Request object passed to event
-handlers.
-
-=item callback
-
-Assuming a handler has collected a value for your unknown data point, it might
-make sense to validate the value. For example, if you prompt the user for a
-directory location, and the user enters one, it makes sense to ensure that the
-directory actually exists. The C<callback> parameter allows you to do this. It
-is a code reference that takes the new value or values as its arguments, and
-returns true if the value is valid, and false if it is not. For the sake of
-convenience, the first argument to the callback code reference is also stored
-in C<$_> .This makes it easy to validate using functions or operators that,
-er, operate on C<$_> by default, but still allows you to get more information
-from C<@_> if necessary. For the directory example, a good callback might be
-C<sub { -d }>. The C<callback> parameter code reference will be stored in the
-C<callback> attribute of the App::Info::Request object passed to event
-handlers.
-
-=item error
-
-The error parameter is the error message to display in the event that the
-C<callback> code reference returns false. This message may then be used by the
-event handler to let the user know what went wrong with the data she entered.
-For example, if the unknown value was a directory, and the user entered a
-value that the C<callback> identified as invalid, a message to display might
-be something like "Invalid directory path". Note that if the C<error>
-parameter is not provided, App::Info will supply the generic error message
-"Invalid value". This value will be stored in the C<error> attribute of the
-App::Info::Request object passed to event handlers.
-
-=back
-
-This may be the event method you use most, as it should be called in every
-metadata method if you cannot provide the data needed by that method. It will
-typically be the last part of the method. Here's an example demonstrating each
-of the above arguments:
-
- my $dir = $self->unknown( key => 'lib_dir',
- prompt => "Enter lib directory path",
- callback => sub { -d },
- error => "Not a directory");
-
-=cut
-
-sub unknown {
- my ($self, %params) = @_;
- my $key = delete $params{key}
- or Carp::croak("No key parameter passed to unknown()");
- # Just return the value if we've already handled this value. Ideally this
- # shouldn't happen.
- return $self->{__unknown__}{$key} if exists $self->{__unknown__}{$key};
-
- # Create a prompt and error message, if necessary.
- $params{message} = delete $params{prompt} ||
- "Enter a valid " . $self->key_name . " $key";
- $params{error} ||= 'Invalid value';
-
- # Execute the handler sequence.
- my $req = $handler->($self, "unknown", \%params);
-
- # Mark that we've provided this value and then return it.
- $self->{__unknown__}{$key} = $req->value;
- return $self->{__unknown__}{$key};
-}
-
-##############################################################################
-
-=head3 confirm
-
- my $val = $self->confirm(@params);
-
-This method is very similar to C<unknown()>, but serves a different purpose.
-Use this method for significant data points where you've found an appropriate
-value, but want to ensure it's really the correct value. A "significant data
-point" is usually a value essential for your class to collect metadata values.
-For example, you might need to locate an executable that you can then call to
-collect other data. In general, this will only happen once for an object --
-during object construction -- but there may be cases in which it is needed
-more than that. But hopefully, once you've confirmed in the constructor that
-you've found what you need, you can use that information to collect the data
-needed by all of the metadata methods and can assume that they'll be right
-because that first, significant data point has been confirmed.
-
-Other than where and how often to call C<confirm()>, its use is quite similar
-to that of C<unknown()>. Its parameters are as follows:
-
-=over
-
-=item key
-
-Same as for C<unknown()>, a string that uniquely identifies the data point in
-your class, and ensures that the event is handled only once for a given key.
-The same value will be returned by subsequent calls to C<confirm()> as was
-returned by the first call for a given key.
-
-=item prompt
-
-Same as for C<unknown()>. Although C<confirm()> is called to confirm a value,
-typically the prompt should request the relevant value, just as for
-C<unknown()>. The difference is that the handler I<should> use the C<value>
-parameter as the default should the user not provide a value. The C<prompt>
-parameter will be stored in the C<message> attribute of the App::Info::Request
-object passed to event handlers.
-
-=item value
-
-The value to be confirmed. This is the value you've found, and it will be
-provided to the user as the default option when they're prompted for a new
-value. This value will be stored in the C<value> attribute of the
-App::Info::Request object passed to event handlers.
-
-=item callback
-
-Same as for C<unknown()>. Because the user can enter data to replace the
-default value provided via the C<value> parameter, you might want to validate
-it. Use this code reference to do so. The callback will be stored in the
-C<callback> attribute of the App::Info::Request object passed to event
-handlers.
-
-=item error
-
-Same as for C<unknown()>: an error message to display in the event that a
-value entered by the user isn't validated by the C<callback> code reference.
-This value will be stored in the C<error> attribute of the App::Info::Request
-object passed to event handlers.
-
-=back
-
-Here's an example usage demonstrating all of the above arguments:
-
- my $exe = $self->confirm( key => 'shell',
- prompt => 'Path to your shell?',
- value => '/bin/sh',
- callback => sub { -x },
- error => 'Not an executable');
-
-
-=cut
-
-sub confirm {
- my ($self, %params) = @_;
- my $key = delete $params{key}
- or Carp::croak("No key parameter passed to confirm()");
- return $self->{__confirm__}{$key} if exists $self->{__confirm__}{$key};
-
- # Create a prompt and error message, if necessary.
- $params{message} = delete $params{prompt} ||
- "Enter a valid " . $self->key_name . " $key";
- $params{error} ||= 'Invalid value';
-
- # Execute the handler sequence.
- my $req = $handler->($self, "confirm", \%params);
-
- # Mark that we've confirmed this value.
- $self->{__confirm__}{$key} = $req->value;
-
- return $self->{__confirm__}{$key}
-}
-
-1;
-__END__
-
-=head2 Event Examples
-
-Below I provide some examples demonstrating the use of the event methods.
-These are meant to emphasize the contexts in which it's appropriate to use
-them.
-
-Let's start with the simplest, first. Let's say that to find the version
-number for an application, you need to search a file for the relevant data.
-Your App::Info concrete subclass might have a private method that handles this
-work, and this method is the appropriate place to use the C<info()> and, if
-necessary, C<error()> methods.
-
- sub _find_version {
- my $self = shift;
-
- # Try to find the revelant file. We cover this method below.
- # Just return if we cant' find it.
- my $file = $self->_find_file('version.conf') or return;
-
- # Send a status message.
- $self->info("Searching '$file' file for version");
-
- # Search the file. $util is an App::Info::Util object.
- my $ver = $util->search_file($file, qr/^Version\s+(.*)$/);
-
- # Trigger an error message, if necessary. We really think we'll have the
- # value, but we have to cover our butts in the unlikely event that we're
- # wrong.
- $self->error("Unable to find version in file '$file'") unless $ver;
-
- # Return the version number.
- return $ver;
- }
-
-Here we've used the C<info()> method to display a status message to let the
-user know what we're doing. Then we used the C<error()> method when something
-unexpected happened, which in this case was that we weren't able to find the
-version number in the file.
-
-Note the C<_find_file()> method we've thrown in. This might be a method that
-we call whenever we need to find a file that might be in one of a list of
-directories. This method, too, will be an appropriate place for an C<info()>
-method call. But rather than call the C<error()> method when the file can't be
-found, you might want to give an event handler a chance to supply that value
-for you. Use the C<unknown()> method for a case such as this:
-
- sub _find_file {
- my ($self, $file) = @_;
-
- # Send a status message.
- $self->info("Searching for '$file' file");
-
- # Look for the file. See App::Info:Utility for its interface.
- my @paths = qw(/usr/conf /etc/conf /foo/conf);
- my $found = $util->first_cat_path($file, @paths);
-
- # If we didn't find it, trigger an unknown event to
- # give a handler a chance to get the value.
- $found ||= $self->unknown( key => "file_$file",
- prompt => "Location of '$file' file?",
- callback => sub { -f },
- error => "Not a file");
-
- # Now return the file name, regardless of whether we found it or not.
- return $found;
- }
-
-Note how in this method, we've tried to locate the file ourselves, but if we
-can't find it, we trigger an unknown event. This allows clients of our
-App::Info subclass to try to establish the value themselves by having an
-App::Info::Handler subclass handle the event. If a value is found by an
-App::Info::Handler subclass, it will be returned by C<unknown()> and we can
-continue. But we can't assume that the unknown event will even be handled, and
-thus must expect that an unknown value may remain unknown. This is why the
-C<_find_version()> method above simply returns if C<_find_file()> doesn't
-return a file name; there's no point in searching through a file that doesn't
-exist.
-
-Attentive readers may be left to wonder how to decide when to use C<error()>
-and when to use C<unknown()>. To a large extent, this decision must be based
-on one's own understanding of what's most appropriate. Nevertheless, I offer
-the following simple guidelines: Use C<error()> when you expect something to
-work and then it just doesn't (as when a file exists and should contain the
-information you seek, but then doesn't). Use C<unknown()> when you're less
-sure of your processes for finding the value, and also for any of the values
-that should be returned by any of the L<metadata object methods|"Metadata
-Object Methods">. And of course, C<error()> would be more appropriate when you
-encounter an unexpected condition and don't think that it could be handled in
-any other way.
-
-Now, more than likely, a method such C<_find_version()> would be called by the
-C<version()> method, which is a metadata method mandated by the App::Info
-abstract base class. This is an appropriate place to handle an unknown version
-value. Indeed, every one of your metadata methods should make use of the
-C<unknown()> method. The C<version()> method then should look something like
-this:
-
- sub version {
- my $self = shift;
-
- unless (exists $self->{version}) {
- # Try to find the version number.
- $self->{version} = $self->_find_version ||
- $self->unknown( key => 'version',
- prompt => "Enter the version number");
- }
-
- # Now return the version number.
- return $self->{version};
- }
-
-Note how this method only tries to find the version number once. Any
-subsequent calls to C<version()> will return the same value that was returned
-the first time it was called. Of course, thanks to the C<key> parameter in the
-call to C<unknown()>, we could have have tried to enumerate the version number
-every time, as C<unknown()> will return the same value every time it is called
-(as, indeed, should C<_find_version()>. But by checking for the C<version> key
-in C<$self> ourselves, we save some of the overhead.
-
-But as I said before, every metadata method should make use of the
-C<unknown()> method. Thus, the C<major()> method might looks something like
-this:
-
- sub major {
- my $self = shift;
-
- unless (exists $self->{major}) {
- # Try to get the major version from the full version number.
- ($self->{major}) = $self->version =~ /^(\d+)\./;
- # Handle an unknown value.
- $self->{major} = $self->unknown( key => 'major',
- prompt => "Enter major version",
- callback => sub { /^\d+$/ },
- error => "Not a number")
- unless defined $self->{major};
- }
-
- return $self->{version};
- }
-
-Finally, the C<confirm()> method should be used to verify core pieces of data
-that significant numbers of other methods rely on. Typically such data are
-executables or configuration files from which will be drawn other metadata.
-Most often, such major data points will be sought in the object constructor.
-Here's an example:
-
- sub new {
- # Construct the object so that handlers will work properly.
- my $self = shift->SUPER::new(@_);
-
- # Try to find the executable.
- $self->info("Searching for executable");
- if (my $exe = $util->first_exe('/bin/myapp', '/usr/bin/myapp')) {
- # Confirm it.
- $self->{exe} =
- $self->confirm( key => 'binary',
- prompt => 'Path to your executable?',
- value => $exe,
- callback => sub { -x },
- error => 'Not an executable');
- } else {
- # Handle an unknown value.
- $self->{exe} =
- $self->unknown( key => 'binary',
- prompt => 'Path to your executable?',
- callback => sub { -x },
- error => 'Not an executable');
- }
-
- # We're done.
- return $self;
- }
-
-By now, most of what's going on here should be quite familiar. The use of the
-C<confirm()> method is quite similar to that of C<unknown()>. Really the only
-difference is that the value is known, but we need verification or a new value
-supplied if the value we found isn't correct. Such may be the case when
-multiple copies of the executable have been installed on the system, we found
-F</bin/myapp>, but the user may really be interested in F</usr/bin/myapp>.
-Thus the C<confirm()> event gives the user the chance to change the value if
-the confirm event is handled.
-
-The final thing to note about this constructor is the first line:
-
- my $self = shift->SUPER::new(@_);
-
-The first thing an App::Info subclass should do is execute this line to allow
-the super class to construct the object first. Doing so allows any event
-handling arguments to set up the event handlers, so that when we call
-C<confirm()> or C<unknown()> the event will be handled as the client expects.
-
-If we needed our subclass constructor to take its own parameter argumente, the
-approach is to specify the same C<key => $arg> syntax as is used by
-App::Info's C<new()> method. Say we wanted to allow clients of our App::Info
-subclass to pass in a list of alternate executable locations for us to search.
-Such an argument would most make sense as an array reference. So we specify
-that the key be C<alt_paths> and allow the user to construct an object like
-this:
-
- my $app = App::Info::Category::FooApp->new( alt_paths => \@paths );
-
-This approach allows the super class constructor arguments to pass unmolested
-(as long as we use unique keys!):
-
- my $app = App::Info::Category::FooApp->new( on_error => \@handlers,
- alt_paths => \@paths );
-
-Then, to retrieve these paths inside our C<new()> constructor, all we need do
-is access them directly from the object:
-
- my $self = shift->SUPER::new(@_);
- my $alt_paths = $self->{alt_paths};
-
-=head2 Subclassing Guidelines
-
-To summarize, here are some guidelines for subclassing App::Info.
-
-=over 4
-
-=item *
-
-Always subclass an App::Info category subclass. This will help to keep the
-App::Info namespace well-organized. New categories can be added as needed.
-
-=item *
-
-When you create the C<new()> constructor, always call C<SUPER::new(@_)>. This
-ensures that the event handling methods methods defined by the App::Info base
-classes (e.g., C<error()>) will work properly.
-
-=item *
-
-Use a package-scoped lexical App::Info::Util object to carry out common tasks.
-If you find you're doing something over and over that's not already addressed
-by an App::Info::Util method, and you think that others might find your
-solution useful, consider submitting a patch to App::Info::Util to add the
-functionality you need. See L<App::Info::Util|App::Info::Util> for complete
-documentation of its interface.
-
-=item *
-
-Use the C<info()> event triggering method to send messages to users of your
-subclass.
-
-=item *
-
-Use the C<error()> event triggering method to alert users of unexpected
-conditions. Fatal errors should still be fatal; use C<Carp::croak()> to throw
-exceptions for fatal errors.
-
-=item *
-
-Use the C<unknown()> event triggering method when a metadata or other
-important value is unknown and you want to give any event handlers the chance
-to provide the data.
-
-=item *
-
-Use the C<confirm()> event triggering method when a core piece of data is
-known (such as the location of an executable in the C<new()> constructor) and
-you need to make sure that you have the I<correct> information.
-
-=item *
-
-Be sure to implement B<all> of the abstract methods defined by App::Info and
-by your category abstract base class -- even if they don't do anything. Doing
-so ensures that all App::Info subclasses share a common interface, and can, if
-necessary, be used without regard to subclass. Any method not implemented but
-called on an object will generate a fatal exception.
-
-=back
-
-Otherwise, have fun! There are a lot of software packages for which relevant
-information might be collected and aggregated into an App::Info concrete
-subclass (witness all of the Automake macros in the world!), and folks who are
-knowledgeable about particular software packages or categories of software are
-warmly invited to contribute. As more subclasses are implemented, it will make
-sense, I think, to create separate distributions based on category -- or even,
-when necessary, on a single software package. Broader categories can then be
-aggregated in Bundle distributions.
-
-But I get ahead of myself...
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-The following classes define a few software package categories in which
-App::Info subclasses can be placed. Check them out for ideas on how to
-create new category subclasses.
-
-=over 4
-
-=item L<App::Info::HTTP|App::Info::HTTPD>
-
-=item L<App::Info::RDBMS|App::Info::RDBMS>
-
-=item L<App::Info::Lib|App::Info::Lib>
-
-=back
-
-The following classes implement the App::Info interface for various software
-packages. Check them out for examples of how to implement new App::Info
-concrete subclasses.
-
-=over
-
-=item L<App::Info::HTTPD::Apache|App::Info::HTTPD::Apache>
-
-=item L<App::Info::RDBMS::PostgreSQL|App::Info::RDBMS::PostgreSQL>
-
-=item L<App::Info::Lib::Expat|App::Info::Lib::Expat>
-
-=item L<App::Info::Lib::Iconv|App::Info::Lib::Iconv>
-
-=back
-
-L<App::Info::Util|App::Info::Util> provides utility methods for App::Info
-subclasses.
-
-L<App::Info::Handler|App::Info::Handler> defines an interface for event
-handlers to subclass. Consult its documentation for information on creating
-custom event handlers.
-
-The following classes implement the App::Info::Handler interface to offer some
-simple event handling. Check them out for examples of how to implement new
-App::Info::Handler subclasses.
-
-=over 4
-
-=item L<App::Info::Handler::Print|App::Info::Handler::Print>
-
-=item L<App::Info::Handler::Carp|App::Info::Handler::Carp>
-
-=item L<App::Info::Handler::Prompt|App::Info::Handler::Prompt>
-
-=back
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler.pm
deleted file mode 100644
index 65416a8..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler.pm
+++ /dev/null
@@ -1,305 +0,0 @@
-package App::Info::Handler;
-
-# $Id: Handler.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-=head1 NAME
-
-App::Info::Handler - App::Info event handler base class
-
-=head1 SYNOPSIS
-
- use App::Info::Category::FooApp;
- use App::Info::Handler;
-
- my $app = App::Info::Category::FooApp->new( on_info => ['default'] );
-
-=head1 DESCRIPTION
-
-This class defines the interface for subclasses that wish to handle events
-triggered by App::Info concrete subclasses. The different types of events
-triggered by App::Info can all be handled by App::Info::Handler (indeed, by
-default they're all handled by a single App::Info::Handler object), and
-App::Info::Handler subclasses may be designed to handle whatever events they
-wish.
-
-If you're interested in I<using> an App::Info event handler, this is probably
-not the class you should look at, since all it does is define a simple handler
-that does nothing with an event. Look to the L<App::Info::Handler
-subclasses|"SEE ALSO"> included in this distribution to do more interesting
-things with App::Info events.
-
-If, on the other hand, you're interested in implementing your own event
-handlers, read on!
-
-=cut
-
-use strict;
-use vars qw($VERSION);
-$VERSION = '0.22';
-
-my %handlers;
-
-=head1 INTERFACE
-
-This section documents the public interface of App::Info::Handler.
-
-=head2 Class Method
-
-=head3 register_handler
-
- App::Info::Handler->register_handler( $key => $code_ref );
-
-This class method may be used by App::Info::Handler subclasses to register
-themselves with App::Info::Handler. Multiple registrations are supported. The
-idea is that a subclass can define different functionality by specifying
-different strings that represent different modes of constructing an
-App::Info::Handler subclass object. The keys are case-sensitve, and should be
-unique across App::Info::Handler subclasses so that many subclasses can be
-loaded and used separately. If the C<$key> is already registered,
-C<register_handler()> will throw an exception. The values are code references
-that, when executed, return the appropriate App::Info::Handler subclass
-object.
-
-=cut
-
-sub register_handler {
- my ($pkg, $key, $code) = @_;
- Carp::croak("Handler '$key' already exists")
- if $handlers{$key};
- $handlers{$key} = $code;
-}
-
-# Register ourself.
-__PACKAGE__->register_handler('default', sub { __PACKAGE__->new } );
-
-##############################################################################
-
-=head2 Constructor
-
-=head3 new
-
- my $handler = App::Info::Handler->new;
- $handler = App::Info::Handler->new( key => $key);
-
-Constructs an App::Info::Handler object and returns it. If the key parameter
-is provided and has been registered by an App::Info::Handler subclass via the
-C<register_handler()> class method, then the relevant code reference will be
-executed and the resulting App::Info::Handler subclass object returned. This
-approach provides a handy shortcut for having C<new()> behave as an abstract
-factory method, returning an object of the subclass appropriate to the key
-parameter.
-
-=cut
-
-sub new {
- my ($pkg, %p) = @_;
- my $class = ref $pkg || $pkg;
- $p{key} ||= 'default';
- if ($class eq __PACKAGE__ && $p{key} ne 'default') {
- # We were called directly! Handle it.
- Carp::croak("No such handler '$p{key}'") unless $handlers{$p{key}};
- return $handlers{$p{key}}->();
- } else {
- # A subclass called us -- just instantiate and return.
- return bless \%p, $class;
- }
-}
-
-=head2 Instance Method
-
-=head3 handler
-
- $handler->handler($req);
-
-App::Info::Handler defines a single instance method that must be defined by
-its subclasses, C<handler()>. This is the method that will be executed by an
-event triggered by an App::Info concrete subclass. It takes as its single
-argument an App::Info::Request object, and returns a true value if it has
-handled the event request. Returning a false value declines the request, and
-App::Info will then move on to the next handler in the chain.
-
-The C<handler()> method implemented in App::Info::Handler itself does nothing
-more than return a true value. It thus acts as a very simple default event
-handler. See the App::Info::Handler subclasses for more interesting handling
-of events, or create your own!
-
-=cut
-
-sub handler { 1 }
-
-1;
-__END__
-
-=head1 SUBCLASSING
-
-I hatched the idea of the App::Info event model with its subclassable handlers
-as a way of separating the aggregation of application metadata from writing a
-user interface for handling certain conditions. I felt it a better idea to
-allow people to create their own user interfaces, and instead to provide only
-a few examples. The App::Info::Handler class defines the API interface for
-handling these conditions, which App::Info refers to as "events".
-
-There are various types of events defined by App::Info ("info", "error",
-"unknown", and "confirm"), but the App::Info::Handler interface is designed to
-be flexible enough to handle any and all of them. If you're interested in
-creating your own App::Info event handler, this is the place to learn how.
-
-=head2 The Interface
-
-To create an App::Info event handler, all one need do is subclass
-App::Info::Handler and then implement the C<new()> constructor and the
-C<handler()> method. The C<new()> constructor can do anything you like, and
-take any arguments you like. However, I do recommend that the first thing
-you do in your implementation is to call the super constructor:
-
- sub new {
- my $pkg = shift;
- my $self = $pkg->SUPER::new(@_);
- # ... other stuff.
- return $self;
- }
-
-Although the default C<new()> constructor currently doesn't do much, that may
-change in the future, so this call will keep you covered. What it does do is
-take the parameterized arguments and assign them to the App::Info::Handler
-object. Thus if you've specified a "mode" argument, where clients can
-construct objects of you class like this:
-
- my $handler = FooHandler->new( mode => 'foo' );
-
-You can access the mode parameter directly from the object, like so:
-
- sub new {
- my $pkg = shift;
- my $self = $pkg->SUPER::new(@_);
- if ($self->{mode} eq 'foo') {
- # ...
- }
- return $self;
- }
-
-Just be sure not to use a parameter key name required by App::Info::Handler
-itself. At the moment, the only parameter accepted by App::Info::Handler is
-"key", so in general you'll be pretty safe.
-
-Next, I recommend that you take advantage of the C<register_handler()> method
-to create some shortcuts for creating handlers of your class. For example, say
-we're creating a handler subclass FooHandler. It has two modes, a default
-"foo" mode and an advanced "bar" mode. To allow both to be constructed by
-stringified shortcuts, the FooHandler class implementation might start like
-this:
-
- package FooHandler;
-
- use strict;
- use App::Info::Handler;
- use vars qw(@ISA);
- @ISA = qw(App::Info::Handler);
-
- foreach my $c (qw(foo bar)) {
- App::Info::Handler->register_handler
- ( $c => sub { __PACKAGE__->new( mode => $c) } );
- }
-
-The strings "foo" and "bar" can then be used by clients as shortcuts to have
-App::Info objects automatically create and use handlers for certain events.
-For example, if a client wanted to use a "bar" event handler for its info
-events, it might do this:
-
- use App::Info::Category::FooApp;
- use FooHandler;
-
- my $app = App::Info::Category::FooApp->new(on_info => ['bar']);
-
-Take a look at App::Info::Handler::Print and App::Info::Handler::Carp to see
-concrete examples of C<register_handler()> usage.
-
-The final step in creating a new App::Info event handler is to implement the
-C<handler()> method itself. This method takes a single argument, an
-App::Info::Request object, and is expected to return true if it handled the
-request, and false if it did not. The App::Info::Request object contains all
-the metadata relevant to a request, including the type of event that triggered
-it; see L<App::Info::Request|App::Info::Request> for its documentation.
-
-Use the App::Info::Request object however you like to handle the request
-however you like. You are, however, expected to abide by a a few guidelines:
-
-=over 4
-
-=item *
-
-For error and info events, you are expected (but not required) to somehow
-display the info or error message for the user. How your handler chooses to do
-so is up to you and the handler.
-
-=item *
-
-For unknown and confirm events, you are expected to prompt the user for a
-value. If it's a confirm event, offer the known value (found in
-C<$req-E<gt>value>) as a default.
-
-=item *
-
-For unknown and confirm events, you are expected to call C<$req-E<gt>callback>
-and pass in the new value. If C<$req-E<gt>callback> returns a false value, you
-are expected to display the error message in C<$req-E<gt>error> and prompt the
-user again. Note that C<$req-E<gt>value> calls C<$req-E<gt>callback>
-internally, and thus assigns the value and returns true if
-C<$req-E<gt>callback> returns true, and does not assign the value and returns
-false if C<$req-E<gt>callback> returns false.
-
-=item *
-
-For unknown and confirm events, if you've collected a new value and
-C<$req-E<gt>callback> returns true for that value, you are expected to assign
-the value by passing it to C<$req-E<gt>value>. This allows App::Info to give
-the value back to the calling App::Info concrete subclass.
-
-=back
-
-Probably the easiest way to get started creating new App::Info event handlers
-is to check out the simple handlers provided with the distribution and follow
-their logical examples. Consult the App::Info documentation of the L<event
-methods|App::Info/"Events"> for details on how App::Info constructs the
-App::Info::Request object for each event type.
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info> thoroughly documents the client interface for setting
-event handlers, as well as the event triggering interface for App::Info
-concrete subclasses.
-
-L<App::Info::Request|App::Info::Request> documents the interface for the
-request objects passed to App::Info::Handler C<handler()> methods.
-
-The following App::Info::Handler subclasses offer examples for event handler
-authors, and, of course, provide actual event handling functionality for
-App::Info clients.
-
-=over 4
-
-=item L<App::Info::Handler::Carp|App::Info::Handler::Carp>
-
-=item L<App::Info::Handler::Print|App::Info::Handler::Print>
-
-=item L<App::Info::Handler::Prompt|App::Info::Handler::Prompt>
-
-=back
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler/Prompt.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler/Prompt.pm
deleted file mode 100644
index 47edd78..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Handler/Prompt.pm
+++ /dev/null
@@ -1,170 +0,0 @@
-package App::Info::Handler::Prompt;
-
-# $Id: Prompt.pm,v 1.1 2004-04-29 09:21:29 ivan Exp $
-
-=head1 NAME
-
-App::Info::Handler::Prompt - Prompting App::Info event handler
-
-=head1 SYNOPSIS
-
- use App::Info::Category::FooApp;
- use App::Info::Handler::Print;
-
- my $prompter = App::Info::Handler::Print->new;
- my $app = App::Info::Category::FooApp->new( on_unknown => $prompter );
-
- # Or...
- my $app = App::Info::Category::FooApp->new( on_confirm => 'prompt' );
-
-=head1 DESCRIPTION
-
-App::Info::Handler::Prompt objects handle App::Info events by printing their
-messages to C<STDOUT> and then accepting a new value from C<STDIN>. The new
-value is validated by any callback supplied by the App::Info concrete subclass
-that triggered the event. If the value is valid, App::Info::Handler::Prompt
-assigns the new value to the event request. If it isn't it prints the error
-message associated with the event request, and then prompts for the data
-again.
-
-Although designed with unknown and confirm events in mind,
-App::Info::Handler::Prompt handles info and error events as well. It will
-simply print info event messages to C<STDOUT> and print error event messages
-to C<STDERR>. For more interesting info and error event handling, see
-L<App::Info::Handler::Print|App::Info::Handler::Print> and
-L<App::Info::Handler::Carp|App::Info::Handler::Carp>.
-
-Upon loading, App::Info::Handler::Print registers itself with
-App::Info::Handler, setting up a single string, "prompt", that can be passed
-to an App::Info concrete subclass constructor. This string is a shortcut that
-tells App::Info how to create an App::Info::Handler::Print object for handling
-events.
-
-=cut
-
-use strict;
-use App::Info::Handler;
-use vars qw($VERSION @ISA);
-$VERSION = '0.22';
-@ISA = qw(App::Info::Handler);
-
-# Register ourselves.
-App::Info::Handler->register_handler
- ('prompt' => sub { __PACKAGE__->new('prompt') } );
-
-=head1 INTERFACE
-
-=head2 Constructor
-
-=head3 new
-
- my $prompter = App::Info::Handler::Prompt->new;
-
-Constructs a new App::Info::Handler::Prompt object and returns it. No special
-arguments are required.
-
-=cut
-
-sub new {
- my $pkg = shift;
- my $self = $pkg->SUPER::new(@_);
- $self->{tty} = -t STDIN && ( -t STDOUT || !( -f STDOUT || -c STDOUT ) );
- # We're done!
- return $self;
-}
-
-my $get_ans = sub {
- my ($prompt, $tty, $def) = @_;
- # Print the message.
- local $| = 1;
- local $\;
- print $prompt;
-
- # Collect the answer.
- my $ans;
- if ($tty) {
- $ans = <STDIN>;
- if (defined $ans ) {
- chomp $ans;
- } else { # user hit ctrl-D
- print "\n";
- }
- } else {
- print "$def\n" if defined $def;
- }
- return $ans;
-};
-
-sub handler {
- my ($self, $req) = @_;
- my $ans;
- my $type = $req->type;
- if ($type eq 'unknown' || $type eq 'confirm') {
- # We'll want to prompt for a new value.
- my $val = $req->value;
- my ($def, $dispdef) = defined $val ? ($val, " [$val] ") : ('', ' ');
- my $msg = $req->message or Carp::croak("No message in request");
- $msg .= $dispdef;
-
- # Get the answer.
- $ans = $get_ans->($msg, $self->{tty}, $def);
- # Just return if they entered an empty string or we couldnt' get an
- # answer.
- return 1 unless defined $ans && $ans ne '';
-
- # Validate the answer.
- my $err = $req->error;
- while (!$req->value($ans)) {
- print "$err: '$ans'\n";
- $ans = $get_ans->($msg, $self->{tty}, $def);
- return 1 unless defined $ans && $ans ne '';
- }
-
- } elsif ($type eq 'info') {
- # Just print the message.
- print STDOUT $req->message, "\n";
- } elsif ($type eq 'error') {
- # Just print the message.
- print STDERR $req->message, "\n";
- } else {
- # This shouldn't happen.
- Carp::croak("Invalid request type '$type'");
- }
-
- # Return true to indicate that we've handled the request.
- return 1;
-}
-
-1;
-__END__
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info> documents the event handling interface.
-
-L<App::Info::Handler::Carp|App::Info::Handler::Carp> handles events by
-passing their messages Carp module functions.
-
-L<App::Info::Handler::Print|App::Info::Handler::Print> handles events by
-printing their messages to a file handle.
-
-L<App::Info::Handler|App::Info::Handler> describes how to implement custom
-App::Info event handlers.
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS.pm
deleted file mode 100644
index 504d570..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS.pm
+++ /dev/null
@@ -1,55 +0,0 @@
-package App::Info::RDBMS;
-
-# $Id: RDBMS.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-use strict;
-use App::Info;
-use vars qw(@ISA $VERSION);
-@ISA = qw(App::Info);
-$VERSION = '0.22';
-
-1;
-__END__
-
-=head1 NAME
-
-App::Info::RDBMS - Information about databases on a system
-
-=head1 DESCRIPTION
-
-This class is an abstract base class for App::Info subclasses that provide
-information about relational databases. Its subclasses are required to
-implement its interface. See L<App::Info|App::Info> for a complete description
-and L<App::Info::RDBMS::PostgreSQL|App::Info::RDBMS::PostgreSQL> for an example
-implementation.
-
-=head1 INTERFACE
-
-Currently, App::Info::RDBMS adds no more methods than those from its parent
-class, App::Info.
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info>,
-L<App::Info::RDBMS::PostgreSQL|App::Info::RDBMS::PostgreSQL>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
-
-
-
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS/PostgreSQL.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS/PostgreSQL.pm
deleted file mode 100644
index aef326c..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/RDBMS/PostgreSQL.pm
+++ /dev/null
@@ -1,730 +0,0 @@
-package App::Info::RDBMS::PostgreSQL;
-
-# $Id: PostgreSQL.pm,v 1.1 2004-04-29 09:21:29 ivan Exp $
-
-=head1 NAME
-
-App::Info::RDBMS::PostgreSQL - Information about PostgreSQL
-
-=head1 SYNOPSIS
-
- use App::Info::RDBMS::PostgreSQL;
-
- my $pg = App::Info::RDBMS::PostgreSQL->new;
-
- if ($pg->installed) {
- print "App name: ", $pg->name, "\n";
- print "Version: ", $pg->version, "\n";
- print "Bin dir: ", $pg->bin_dir, "\n";
- } else {
- print "PostgreSQL is not installed. :-(\n";
- }
-
-=head1 DESCRIPTION
-
-App::Info::RDBMS::PostgreSQL supplies information about the PostgreSQL
-database server installed on the local system. It implements all of the
-methods defined by App::Info::RDBMS. Methods that trigger events will trigger
-them only the first time they're called (See L<App::Info|App::Info> for
-documentation on handling events). To start over (after, say, someone has
-installed PostgreSQL) construct a new App::Info::RDBMS::PostgreSQL object to
-aggregate new metadata.
-
-Some of the methods trigger the same events. This is due to cross-calling of
-shared subroutines. However, any one event should be triggered no more than
-once. For example, although the info event "Executing `pg_config --version`"
-is documented for the methods C<name()>, C<version()>, C<major_version()>,
-C<minor_version()>, and C<patch_version()>, rest assured that it will only be
-triggered once, by whichever of those four methods is called first.
-
-=cut
-
-use strict;
-use App::Info::RDBMS;
-use App::Info::Util;
-use vars qw(@ISA $VERSION);
-@ISA = qw(App::Info::RDBMS);
-$VERSION = '0.22';
-
-my $u = App::Info::Util->new;
-
-=head1 INTERFACE
-
-=head2 Constructor
-
-=head3 new
-
- my $pg = App::Info::RDBMS::PostgreSQL->new(@params);
-
-Returns an App::Info::RDBMS::PostgreSQL object. See L<App::Info|App::Info> for
-a complete description of argument parameters.
-
-When it called, C<new()> searches the file system for the F<pg_config>
-application. If found, F<pg_config> will be called by the object methods below
-to gather the data necessary for each. If F<pg_config> cannot be found, then
-PostgreSQL is assumed not to be installed, and each of the object methods will
-return C<undef>.
-
-App::Info::RDBMS::PostgreSQL searches for F<pg_config> along your path, as
-defined by C<File::Spec-E<gt>path>. Failing that, it searches the following
-directories:
-
-=over 4
-
-=item /usr/local/pgsql/bin
-
-=item /usr/local/postgres/bin
-
-=item /opt/pgsql/bin
-
-=item /usr/local/bin
-
-=item /usr/local/sbin
-
-=item /usr/bin
-
-=item /usr/sbin
-
-=item /bin
-
-=back
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Looking for pg_config
-
-=item confirm
-
-Path to pg_config?
-
-=item unknown
-
-Path to pg_config?
-
-=back
-
-=cut
-
-sub new {
- # Construct the object.
- my $self = shift->SUPER::new(@_);
-
- # Find pg_config.
- $self->info("Looking for pg_config");
- my @paths = ($u->path,
- qw(/usr/local/pgsql/bin
- /usr/local/postgres/bin
- /opt/pgsql/bin
- /usr/local/bin
- /usr/local/sbin
- /usr/bin
- /usr/sbin
- /bin));
-
- if (my $cfg = $u->first_cat_exe('pg_config', @paths)) {
- # We found it. Confirm.
- $self->{pg_config} = $self->confirm( key => 'pg_config',
- prompt => 'Path to pg_config?',
- value => $cfg,
- callback => sub { -x },
- error => 'Not an executable');
- } else {
- # Handle an unknown value.
- $self->{pg_config} = $self->unknown( key => 'pg_config',
- prompt => 'Path to pg_config?',
- callback => sub { -x },
- error => 'Not an executable');
- }
-
- return $self;
-}
-
-# We'll use this code reference as a common way of collecting data.
-my $get_data = sub {
- return unless $_[0]->{pg_config};
- $_[0]->info("Executing `$_[0]->{pg_config} $_[1]`");
- my $info = `$_[0]->{pg_config} $_[1]`;
- chomp $info;
- return $info;
-};
-
-##############################################################################
-
-=head2 Class Method
-
-=head3 key_name
-
- my $key_name = App::Info::RDBMS::PostgreSQL->key_name;
-
-Returns the unique key name that describes this class. The value returned is
-the string "PostgreSQL".
-
-=cut
-
-sub key_name { 'PostgreSQL' }
-
-##############################################################################
-
-=head2 Object Methods
-
-=head3 installed
-
- print "PostgreSQL is ", ($pg->installed ? '' : 'not '), "installed.\n";
-
-Returns true if PostgreSQL is installed, and false if it is not.
-App::Info::RDBMS::PostgreSQL determines whether PostgreSQL is installed based
-on the presence or absence of the F<pg_config> application on the file system
-as found when C<new()> constructed the object. If PostgreSQL does not appear
-to be installed, then all of the other object methods will return empty
-values.
-
-=cut
-
-sub installed { return $_[0]->{pg_config} ? 1 : undef }
-
-##############################################################################
-
-=head3 name
-
- my $name = $pg->name;
-
-Returns the name of the application. App::Info::RDBMS::PostgreSQL parses the
-name from the system call C<`pg_config --version`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --version`
-
-=item error
-
-Failed to find PostgreSQL version with `pg_config --version`
-
-Unable to parse name from string
-
-Unable to parse version from string
-
-Failed to parse PostgreSQL version parts from string
-
-=item unknown
-
-Enter a valid PostgreSQL name
-
-=back
-
-=cut
-
-# This code reference is used by name(), version(), major_version(),
-# minor_version(), and patch_version() to aggregate the data they need.
-my $get_version = sub {
- my $self = shift;
- $self->{'--version'} = 1;
- my $data = $get_data->($self, '--version');
- unless ($data) {
- $self->error("Failed to find PostgreSQL version with ".
- "`$self->{pg_config} --version");
- return;
- }
-
- chomp $data;
- my ($name, $version) = split /\s+/, $data, 2;
-
- # Check for and assign the name.
- $name ?
- $self->{name} = $name :
- $self->error("Unable to parse name from string '$data'");
-
- # Parse the version number.
- if ($version) {
- my ($x, $y, $z) = $version =~ /(\d+)\.(\d+).(\d+)/;
- if (defined $x and defined $y and defined $z) {
- @{$self}{qw(version major minor patch)} =
- ($version, $x, $y, $z);
- } else {
- $self->error("Failed to parse PostgreSQL version parts from " .
- "string '$version'");
- }
- } else {
- $self->error("Unable to parse version from string '$data'");
- }
-};
-
-sub name {
- my $self = shift;
- return unless $self->{pg_config};
-
- # Load data.
- $get_version->($self) unless $self->{'--version'};
-
- # Handle an unknown name.
- $self->{name} ||= $self->unknown( key => 'name' );
-
- # Return the name.
- return $self->{name};
-}
-
-##############################################################################
-
-=head3 version
-
- my $version = $pg->version;
-
-Returns the PostgreSQL version number. App::Info::RDBMS::PostgreSQL parses the
-version number from the system call C<`pg_config --version`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --version`
-
-=item error
-
-Failed to find PostgreSQL version with `pg_config --version`
-
-Unable to parse name from string
-
-Unable to parse version from string
-
-Failed to parse PostgreSQL version parts from string
-
-=item unknown
-
-Enter a valid PostgreSQL version number
-
-=back
-
-=cut
-
-sub version {
- my $self = shift;
- return unless $self->{pg_config};
-
- # Load data.
- $get_version->($self) unless $self->{'--version'};
-
- # Handle an unknown value.
- unless ($self->{version}) {
- # Create a validation code reference.
- my $chk_version = sub {
- # Try to get the version number parts.
- my ($x, $y, $z) = /^(\d+)\.(\d+).(\d+)$/;
- # Return false if we didn't get all three.
- return unless $x and defined $y and defined $z;
- # Save all three parts.
- @{$self}{qw(major minor patch)} = ($x, $y, $z);
- # Return true.
- return 1;
- };
- $self->{version} = $self->unknown( key => 'version number',
- callback => $chk_version);
- }
-
- return $self->{version};
-}
-
-##############################################################################
-
-=head3 major version
-
- my $major_version = $pg->major_version;
-
-Returns the PostgreSQL major version number. App::Info::RDBMS::PostgreSQL
-parses the major version number from the system call C<`pg_config --version`>.
-For example, C<version()> returns "7.1.2", then this method returns "7".
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --version`
-
-=item error
-
-Failed to find PostgreSQL version with `pg_config --version`
-
-Unable to parse name from string
-
-Unable to parse version from string
-
-Failed to parse PostgreSQL version parts from string
-
-=item unknown
-
-Enter a valid PostgreSQL major version number
-
-=back
-
-=cut
-
-# This code reference is used by major_version(), minor_version(), and
-# patch_version() to validate a version number entered by a user.
-my $is_int = sub { /^\d+$/ };
-
-sub major_version {
- my $self = shift;
- return unless $self->{pg_config};
- # Load data.
- $get_version->($self) unless exists $self->{'--version'};
- # Handle an unknown value.
- $self->{major} = $self->unknown( key => 'major version number',
- callback => $is_int)
- unless $self->{major};
- return $self->{major};
-}
-
-##############################################################################
-
-=head3 minor version
-
- my $minor_version = $pg->minor_version;
-
-Returns the PostgreSQL minor version number. App::Info::RDBMS::PostgreSQL
-parses the minor version number from the system call C<`pg_config --version`>.
-For example, if C<version()> returns "7.1.2", then this method returns "2".
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --version`
-
-=item error
-
-Failed to find PostgreSQL version with `pg_config --version`
-
-Unable to parse name from string
-
-Unable to parse version from string
-
-Failed to parse PostgreSQL version parts from string
-
-=item unknown
-
-Enter a valid PostgreSQL minor version number
-
-=back
-
-=cut
-
-sub minor_version {
- my $self = shift;
- return unless $self->{pg_config};
- # Load data.
- $get_version->($self) unless exists $self->{'--version'};
- # Handle an unknown value.
- $self->{minor} = $self->unknown( key => 'minor version number',
- callback => $is_int)
- unless defined $self->{minor};
- return $self->{minor};
-}
-
-##############################################################################
-
-=head3 patch version
-
- my $patch_version = $pg->patch_version;
-
-Returns the PostgreSQL patch version number. App::Info::RDBMS::PostgreSQL
-parses the patch version number from the system call C<`pg_config --version`>.
-For example, if C<version()> returns "7.1.2", then this method returns "1".
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --version`
-
-=item error
-
-Failed to find PostgreSQL version with `pg_config --version`
-
-Unable to parse name from string
-
-Unable to parse version from string
-
-Failed to parse PostgreSQL version parts from string
-
-=item unknown
-
-Enter a valid PostgreSQL minor version number
-
-=back
-
-=cut
-
-sub patch_version {
- my $self = shift;
- return unless $self->{pg_config};
- # Load data.
- $get_version->($self) unless exists $self->{'--version'};
- # Handle an unknown value.
- $self->{patch} = $self->unknown( key => 'patch version number',
- callback => $is_int)
- unless defined $self->{patch};
- return $self->{patch};
-}
-
-##############################################################################
-
-=head3 bin_dir
-
- my $bin_dir = $pg->bin_dir;
-
-Returns the PostgreSQL binary directory path. App::Info::RDBMS::PostgreSQL
-gathers the path from the system call C<`pg_config --bindir`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --bindir`
-
-=item error
-
-Cannot find bin directory
-
-=item unknown
-
-Enter a valid PostgreSQL bin directory
-
-=back
-
-=cut
-
-# This code reference is used by bin_dir(), lib_dir(), and so_lib_dir() to
-# validate a directory entered by the user.
-my $is_dir = sub { -d };
-
-sub bin_dir {
- my $self = shift;
- return unless $self->{pg_config};
- unless (exists $self->{bin_dir} ) {
- if (my $dir = $get_data->($self, '--bindir')) {
- $self->{bin_dir} = $dir;
- } else {
- # Handle an unknown value.
- $self->error("Cannot find bin directory");
- $self->{bin_dir} = $self->unknown( key => 'bin directory',
- callback => $is_dir)
- }
- }
-
- return $self->{bin_dir};
-}
-
-##############################################################################
-
-=head3 inc_dir
-
- my $inc_dir = $pg->inc_dir;
-
-Returns the PostgreSQL include directory path. App::Info::RDBMS::PostgreSQL
-gathers the path from the system call C<`pg_config --includedir`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --includedir`
-
-=item error
-
-Cannot find include directory
-
-=item unknown
-
-Enter a valid PostgreSQL include directory
-
-=back
-
-=cut
-
-sub inc_dir {
- my $self = shift;
- return unless $self->{pg_config};
- unless (exists $self->{inc_dir} ) {
- if (my $dir = $get_data->($self, '--includedir')) {
- $self->{inc_dir} = $dir;
- } else {
- # Handle an unknown value.
- $self->error("Cannot find include directory");
- $self->{inc_dir} = $self->unknown( key => 'include directory',
- callback => $is_dir)
- }
- }
-
- return $self->{inc_dir};
-}
-
-##############################################################################
-
-=head3 lib_dir
-
- my $lib_dir = $pg->lib_dir;
-
-Returns the PostgreSQL library directory path. App::Info::RDBMS::PostgreSQL
-gathers the path from the system call C<`pg_config --libdir`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --libdir`
-
-=item error
-
-Cannot find library directory
-
-=item unknown
-
-Enter a valid PostgreSQL library directory
-
-=back
-
-=cut
-
-sub lib_dir {
- my $self = shift;
- return unless $self->{pg_config};
- unless (exists $self->{lib_dir} ) {
- if (my $dir = $get_data->($self, '--libdir')) {
- $self->{lib_dir} = $dir;
- } else {
- # Handle an unknown value.
- $self->error("Cannot find library directory");
- $self->{lib_dir} = $self->unknown( key => 'library directory',
- callback => $is_dir)
- }
- }
-
- return $self->{lib_dir};
-}
-
-##############################################################################
-
-=head3 so_lib_dir
-
- my $so_lib_dir = $pg->so_lib_dir;
-
-Returns the PostgreSQL shared object library directory path.
-App::Info::RDBMS::PostgreSQL gathers the path from the system call
-C<`pg_config --pkglibdir`>.
-
-B<Events:>
-
-=over 4
-
-=item info
-
-Executing `pg_config --pkglibdir`
-
-=item error
-
-Cannot find shared object library directory
-
-=item unknown
-
-Enter a valid PostgreSQL shared object library directory
-
-=back
-
-=cut
-
-# Location of dynamically loadable modules.
-sub so_lib_dir {
- my $self = shift;
- return unless $self->{pg_config};
- unless (exists $self->{so_lib_dir} ) {
- if (my $dir = $get_data->($self, '--pkglibdir')) {
- $self->{so_lib_dir} = $dir;
- } else {
- # Handle an unknown value.
- $self->error("Cannot find shared object library directory");
- $self->{so_lib_dir} =
- $self->unknown( key => 'shared object library directory',
- callback => $is_dir)
- }
- }
-
- return $self->{so_lib_dir};
-}
-
-##############################################################################
-
-=head3 home_url
-
- my $home_url = $pg->home_url;
-
-Returns the PostgreSQL home page URL.
-
-=cut
-
-sub home_url { "http://www.postgresql.org/" }
-
-##############################################################################
-
-=head3 download_url
-
- my $download_url = $pg->download_url;
-
-Returns the PostgreSQL download URL.
-
-=cut
-
-sub download_url { "http://www.ca.postgresql.org/sitess.html" }
-
-1;
-__END__
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">> based on code by Sam
-Tregar <L<sam@tregar.com|"sam@tregar.com">>.
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info> documents the event handling interface.
-
-L<App::Info::RDBMS|App::Info::RDBMS> is the App::Info::RDBMS::PostgreSQL
-parent class.
-
-L<DBD::Pg|DBD::Pg> is the L<DBI|DBI> driver for connecting to PostgreSQL
-databases.
-
-L<http://www.postgresql.org/> is the PostgreSQL home page.
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Request.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Request.pm
deleted file mode 100644
index c02c97b..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Request.pm
+++ /dev/null
@@ -1,287 +0,0 @@
-package App::Info::Request;
-
-# $Id: Request.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-=head1 NAME
-
-App::Info::Request - App::Info event handler request object
-
-=head1 SYNOPSIS
-
- # In an App::Info::Handler subclass:
- sub handler {
- my ($self, $req) = @_;
- print "Event Type: ", $req->type;
- print "Message: ", $req->message;
- print "Error: ", $req->error;
- print "Value: ", $req->value;
- }
-
-=head1 DESCRIPTION
-
-Objects of this class are passed to the C<handler()> method of App::Info event
-handlers. Generally, this class will be of most interest to App::Info::Handler
-subclass implementers.
-
-The L<event triggering methods|App::Info/"Events"> in App::Info each construct
-a new App::Info::Request object and initialize it with their arguments. The
-App::Info::Request object is then the sole argument passed to the C<handler()>
-method of any and all App::Info::Handler objects in the event handling chain.
-Thus, if you'd like to create your own App::Info event handler, this is the
-object you need to be familiar with. Consult the
-L<App::Info::Handler|App::Info::Handler> documentation for details on creating
-custom event handlers.
-
-Each of the App::Info event triggering methods constructs an
-App::Info::Request object with different attribute values. Be sure to consult
-the documentation for the L<event triggering methods|App::Info/"Events"> in
-App::Info, where the values assigned to the App::Info::Request object are
-documented. Then, in your event handler subclass, check the value returned by
-the C<type()> method to determine what type of event request you're handling
-to handle the request appropriately.
-
-=cut
-
-use strict;
-use vars qw($VERSION);
-$VERSION = '0.23';
-
-##############################################################################
-
-=head1 INTERFACE
-
-The following sections document the App::Info::Request interface.
-
-=head2 Constructor
-
-=head3 new
-
- my $req = App::Info::Request->new(%params);
-
-This method is used internally by App::Info to construct new
-App::Info::Request objects to pass to event handler objects. Generally, you
-won't need to use it, other than perhaps for testing custom App::Info::Handler
-classes.
-
-The parameters to C<new()> are passed as a hash of named parameters that
-correspond to their like-named methods. The supported parameters are:
-
-=over 4
-
-=item type
-
-=item message
-
-=item error
-
-=item value
-
-=item callback
-
-=back
-
-See the object methods documentation below for details on these object
-attributes.
-
-=cut
-
-sub new {
- my $pkg = shift;
-
- # Make sure we've got a hash of arguments.
- Carp::croak("Odd number of parameters in call to " . __PACKAGE__ .
- "->new() when named parameters expected" ) if @_ % 2;
- my %params = @_;
-
- # Validate the callback.
- if ($params{callback}) {
- Carp::croak("Callback parameter '$params{callback}' is not a code ",
- "reference")
- unless UNIVERSAL::isa($params{callback}, 'CODE');
- } else {
- # Otherwise just assign a default approve callback.
- $params{callback} = sub { 1 };
- }
-
- # Validate type parameter.
- if (my $t = $params{type}) {
- Carp::croak("Invalid handler type '$t'")
- unless $t eq 'error' or $t eq 'info' or $t eq 'unknown'
- or $t eq 'confirm';
- } else {
- $params{type} = 'info';
- }
-
- # Return the request object.
- bless \%params, ref $pkg || $pkg;
-}
-
-##############################################################################
-
-=head2 Object Methods
-
-=head3 message
-
- my $message = $req->message;
-
-Returns the message stored in the App::Info::Request object. The message is
-typically informational, or an error message, or a prompt message.
-
-=cut
-
-sub message { $_[0]->{message} }
-
-##############################################################################
-
-=head3 error
-
- my $error = $req->error;
-
-Returns any error message associated with the App::Info::Request object. The
-error message is typically there to display for users when C<callback()>
-returns false.
-
-=cut
-
-sub error { $_[0]->{error} }
-
-##############################################################################
-
-=head3 type
-
- my $type = $req->type;
-
-Returns a string representing the type of event that triggered this request.
-The types are the same as the event triggering methods defined in App::Info.
-As of this writing, the supported types are:
-
-=over
-
-=item info
-
-=item error
-
-=item unknown
-
-=item confirm
-
-=back
-
-Be sure to consult the App::Info documentation for more details on the event
-types.
-
-=cut
-
-sub type { $_[0]->{type} }
-
-##############################################################################
-
-=head3 callback
-
- if ($req->callback($value)) {
- print "Value '$value' is valid.\n";
- } else {
- print "Value '$value' is not valid.\n";
- }
-
-Executes the callback anonymous subroutine supplied by the App::Info concrete
-base class that triggered the event. If the callback returns false, then
-C<$value> is invalid. If the callback returns true, then C<$value> is valid
-and can be assigned via the C<value()> method.
-
-Note that the C<value()> method itself calls C<callback()> if it was passed a
-value to assign. See its documentation below for more information.
-
-=cut
-
-sub callback {
- my $self = shift;
- my $code = $self->{callback};
- local $_ = $_[0];
- $code->(@_);
-}
-
-##############################################################################
-
-=head3 value
-
- my $value = $req->value;
- if ($req->value($value)) {
- print "Value '$value' successfully assigned.\n";
- } else {
- print "Value '$value' not successfully assigned.\n";
- }
-
-When called without an argument, C<value()> simply returns the value currently
-stored by the App::Info::Request object. Typically, the value is the default
-value for a confirm event, or a value assigned to an unknown event.
-
-When passed an argument, C<value()> attempts to store the the argument as a
-new value. However, C<value()> calls C<callback()> on the new value, and if
-C<callback()> returns false, then C<value()> returns false and does not store
-the new value. If C<callback()> returns true, on the other hand, then
-C<value()> goes ahead and stores the new value and returns true.
-
-=cut
-
-sub value {
- my $self = shift;
- if ($#_ >= 0) {
- # grab the value.
- my $value = shift;
- # Validate the value.
- if ($self->callback($value)) {
- # The value is good. Assign it and return true.
- $self->{value} = $value;
- return 1;
- } else {
- # Invalid value. Return false.
- return;
- }
- }
- # Just return the value.
- return $self->{value};
-}
-
-1;
-__END__
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info> documents the event triggering methods and how they
-construct App::Info::Request objects to pass to event handlers.
-
-L<App::Info::Handler:|App::Info::Handler> documents how to create custom event
-handlers, which must make use of the App::Info::Request object passed to their
-C<handler()> object methods.
-
-The following classes subclass App::Info::Handler, and thus offer good
-exemplars for using App::Info::Request objects when handling events.
-
-=over 4
-
-=item L<App::Info::Handler::Carp|App::Info::Handler::Carp>
-
-=item L<App::Info::Handler::Print|App::Info::Handler::Print>
-
-=item L<App::Info::Handler::Prompt|App::Info::Handler::Prompt>
-
-=back
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Util.pm b/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Util.pm
deleted file mode 100644
index 55bb333..0000000
--- a/install/5.005/DBD-Pg-1.22-fixvercmp/t/lib/App/Info/Util.pm
+++ /dev/null
@@ -1,456 +0,0 @@
-package App::Info::Util;
-
-# $Id: Util.pm,v 1.1 2004-04-29 09:21:28 ivan Exp $
-
-=head1 NAME
-
-App::Info::Util - Utility class for App::Info subclasses
-
-=head1 SYNOPSIS
-
- use App::Info::Util;
-
- my $util = App::Info::Util->new;
-
- # Subclasses File::Spec.
- my @paths = $util->paths;
-
- # First directory that exists in a list.
- my $dir = $util->first_dir(@paths);
-
- # First directory that exists in a path.
- $dir = $util->first_path($ENV{PATH});
-
- # First file that exists in a list.
- my $file = $util->first_file('this.txt', '/that.txt', 'C:\\foo.txt');
-
- # First file found among file base names and directories.
- my $files = ['this.txt', 'that.txt'];
- $file = $util->first_cat_file($files, @paths);
-
-=head1 DESCRIPTION
-
-This class subclasses L<File::Spec|File::Spec> and adds its own methods in
-order to offer utility methods to L<App::Info|App::Info> classes. Although
-intended to be used by App::Info subclasses, in truth App::Info::Util's
-utility may be considered more general, so feel free to use it elsewhere.
-
-The methods added in addition to the usual File::Spec suspects are designed to
-facilitate locating files and directories on the file system, as well as
-searching those files. The assumption is that, in order to provide useful
-metadata about a given software package, an App::Info subclass must find
-relevant files and directories and parse them with regular expressions. This
-class offers methods that simplify those tasks.
-
-=cut
-
-use strict;
-use File::Spec ();
-use vars qw(@ISA $VERSION);
-@ISA = qw(File::Spec);
-$VERSION = '0.22';
-
-my %path_dems = (MacOS => qr',',
- MSWin32 => qr';',
- os2 => qr';',
- VMS => undef,
- epoc => undef);
-
-my $path_dem = exists $path_dems{$^O} ? $path_dems{$^O} : qr':';
-
-=head1 CONSTRUCTOR
-
-=head2 new
-
- my $util = App::Info::Util->new;
-
-This is a very simple constructor that merely returns an App::Info::Util
-object. Since, like its File::Spec super class, App::Info::Util manages no
-internal data itself, all methods may be used as class methods, if one prefers
-to. The constructor here is provided merely as a convenience.
-
-=cut
-
-sub new { bless {}, ref $_[0] || $_[0] }
-
-=head1 OBJECT METHODS
-
-In addition to all of the methods offered by its super class,
-L<File::Spec|File::Spec>, App::Info::Util offers the following methods.
-
-=head2 first_dir
-
- my @paths = $util->paths;
- my $dir = $util->first_dir(@dirs);
-
-Returns the first file system directory in @paths that exists on the local
-file system. Only the first item in @paths that exists as a directory will be
-returned; any other paths leading to non-directories will be ignored.
-
-=cut
-
-sub first_dir {
- shift;
- foreach (@_) { return $_ if -d }
- return;
-}
-
-=head2 first_path
-
- my $path = $ENV{PATH};
- $dir = $util->first_path($path);
-
-Takes the $path string and splits it into a list of directory paths, based on
-the path demarcator on the local file system. Then calls C<first_dir()> to
-return the first directoy in the path list that exists on the local file
-system. The path demarcator is specified for the following file systems:
-
-=over 4
-
-=item MacOS: ","
-
-=item MSWin32: ";"
-
-=item os2: ";"
-
-=item VMS: undef
-
-This method always returns undef on VMS. Patches welcome.
-
-=item epoc: undef
-
-This method always returns undef on epoch. Patches welcome.
-
-=item Unix: ":"
-
-All other operating systems are assumed to be Unix-based.
-
-=back
-
-=cut
-
-sub first_path {
- return unless $path_dem;
- shift->first_dir(split /$path_dem/, shift)
-}
-
-=head2 first_file
-
- my $file = $util->first_file(@filelist);
-
-Examines each of the files in @filelist and returns the first one that exists
-on the file system. The file must be a regular file -- directories will be
-ignored.
-
-=cut
-
-sub first_file {
- shift;
- foreach (@_) { return $_ if -f }
- return;
-}
-
-=head2 first_exe
-
- my $exe = $util->first_exe(@exelist);
-
-Examines each of the files in @exelist and returns the first one that exists
-on the file system as an executable file. Directories will be ignored.
-
-=cut
-
-sub first_exe {
- shift;
- foreach (@_) { return $_ if -f && -x }
- return;
-}
-
-=head2 first_cat_path
-
- my $file = $util->first_cat_path('ick.txt', @paths);
- $file = $util->first_cat_path(['this.txt', 'that.txt'], @paths);
-
-The first argument to this method may be either a file or directory base name
-(that is, a file or directory name without a full path specification), or a
-reference to an array of file or directory base names. The remaining arguments
-constitute a list of directory paths. C<first_cat_path()> processes each of
-these directory paths, concatenates (by the method native to the local
-operating system) each of the file or directory base names, and returns the
-first one that exists on the file system.
-
-For example, let us say that we were looking for a file called either F<httpd>
-or F<apache>, and it could be in any of the following paths:
-F</usr/local/bin>, F</usr/bin/>, F</bin>. The method call looks like this:
-
- my $httpd = $util->first_cat_path(['httpd', 'apache'], '/usr/local/bin',
- '/usr/bin/', '/bin');
-
-If the OS is a Unix variant, C<first_cat_path()> will then look for the first
-file that exists in this order:
-
-=over 4
-
-=item /usr/local/bin/httpd
-
-=item /usr/local/bin/apache
-
-=item /usr/bin/httpd
-
-=item /usr/bin/apache
-
-=item /bin/httpd
-
-=item /bin/apache
-
-=back
-
-The first of these complete paths to be found will be returned. If none are
-found, then undef will be returned.
-
-=cut
-
-sub first_cat_path {
- my $self = shift;
- my $files = ref $_[0] ? shift() : [shift()];
- foreach my $p (@_) {
- foreach my $f (@$files) {
- my $path = $self->catfile($p, $f);
- return $path if -e $path;
- }
- }
- return;
-}
-
-=head2 first_cat_dir
-
- my $dir = $util->first_cat_dir('ick.txt', @paths);
- $dir = $util->first_cat_dir(['this.txt', 'that.txt'], @paths);
-
-Funtionally identical to C<first_cat_path()>, except that it returns the
-directory path in which the first file was found, rather than the full
-concatenated path. Thus, in the above example, if the file found was
-F</usr/bin/httpd>, while C<first_cat_path()> would return that value,
-C<first_cat_dir()> would return F</usr/bin> instead.
-
-=cut
-
-sub first_cat_dir {
- my $self = shift;
- my $files = ref $_[0] ? shift() : [shift()];
- foreach my $p (@_) {
- foreach my $f (@$files) {
- my $path = $self->catfile($p, $f);
- return $p if -e $path;
- }
- }
- return;
-}
-
-=head2 first_cat_exe
-
- my $exe = $util->first_cat_exe('ick.txt', @paths);
- $exe = $util->first_cat_exe(['this.txt', 'that.txt'], @paths);
-
-Funtionally identical to C<first_cat_path()>, except that it returns the full
-path to the first executable file found, rather than simply the first file
-found.
-
-=cut
-
-sub first_cat_exe {
- my $self = shift;
- my $files = ref $_[0] ? shift() : [shift()];
- foreach my $p (@_) {
- foreach my $f (@$files) {
- my $path = $self->catfile($p, $f);
- return $path if -f $path && -x $path;
- }
- }
- return;
-}
-
-=head2 search_file
-
- my $file = 'foo.txt';
- my $regex = qr/(text\s+to\s+find)/;
- my $value = $util->search_file($file, $regex);
-
-Opens C<$file> and executes the C<$regex> regular expression against each line
-in the file. Once the line matches and one or more values is returned by the
-match, the file is closed and the value or values returned.
-
-For example, say F<foo.txt> contains the line "Version 6.5, patch level 8",
-and you need to grab each of the three version parts. All three parts can
-be grabbed like this:
-
- my $regex = qr/Version\s+(\d+)\.(\d+),[^\d]*(\d+)/;
- my @nums = $util->search_file($file, $regex);
-
-Now C<@nums> will contain the values C<(6, 5, 8)>. Note that in a scalar
-context, the above search would yeild an array reference:
-
- my $regex = qr/Version\s+(\d+)\.(\d+),[^\d]*(\d+)/;
- my $nums = $util->search_file($file, $regex);
-
-So now C<$nums> contains C<[6, 5, 8]>. The same does not hold true if the
-match returns only one value, however. Say F<foo.txt> contains the line
-"king of the who?", and you wish to know who the king is king of. Either
-of the following two calls would get you the data you need:
-
- my $minions = $util->search_file($file, qr/King\s+of\s+(.*)/);
- my @minions = $util->search_file($file, qr/King\s+of\s+(.*)/);
-
-In the first case, because the regular expression contains only one set of
-parentheses, C<search_file()> will simply return that value: C<$minions>
-contains the string "the who?". In the latter case, C<@minions> of course
-contains a single element: C<("the who?")>.
-
-Note that a regular expression without parentheses -- that is, one that
-doesn't grab values and put them into $1, $2, etc., will never successfully
-match a line in this method. You must include something to parentetically
-match. If you just want to know the value of what was matched, parenthesize
-the whole thing and if the value returns, you have a match. Also, if you need
-to match patterns across lines, try using multiple regular expressions with
-C<multi_search_file()>, instead.
-
-=cut
-
-sub search_file {
- my ($self, $file, $regex) = @_;
- return unless $file && $regex;
- open F, "<$file" or Carp::croak "Cannot open $file: $!\n";
- my @ret;
- while (<F>) {
- # If we find a match, we're done.
- (@ret) = /$regex/ and last;
- }
- close F;
- # If the match returned an more than one value, always return the full
- # array. Otherwise, return just the first value in a scalar context.
- return unless @ret;
- return wantarray ? @ret : $#ret <= 0 ? $ret[0] : \@ret;
-}
-
-=head2 multi_search_file
-
- my @regexen = (qr/(one)/, qr/(two)\s+(three)/);
- my @matches = $util->multi_search_file($file, @regexen);
-
-Like C<search_file()>, this mehod opens C<$file> and parses it for regular
-expresion matches. This method, however, can take a list of regular
-expressions to look for, and will return the values found for all of them.
-Regular expressions that match and return multiple values will be returned as
-array referernces, while those that match and return a single value will
-return just that single value.
-
-For example, say you are parsing a file with lines like the following:
-
- #define XML_MAJOR_VERSION 1
- #define XML_MINOR_VERSION 95
- #define XML_MICRO_VERSION 2
-
-You need to get each of these numbers, but calling C<search_file()> for each
-of them would be wasteful, as each call to C<search_file()> opens the file and
-parses it. With C<multi_search_file()>, on the other hand, the file will be
-opened only once, and, once all of the regular expressions have returned
-matches, the file will be closed and the matches returned.
-
-Thus the above values can be collected like this:
-
- my @regexen = ( qr/XML_MAJOR_VERSION\s+(\d+)$/,
- qr/XML_MINOR_VERSION\s+(\d+)$/,
- qr/XML_MICRO_VERSION\s+(\d+)$/ );
-
- my @nums = $file->multi_search_file($file, @regexen);
-
-The result will be that C<@nums> contains C<(1, 95, 2)>. Note that
-C<multi_file_search()> tries to do the right thing by only parsing the file
-until all of the regular expressions have been matched. Thus, a large file
-with the values you need near the top can be parsed very quickly.
-
-As with C<search_file()>, C<multi_search_file()> can take regular expressions
-that match multiple values. These will be returned as array references. For
-example, say the file you're parsing has files like this:
-
- FooApp Version 4
- Subversion 2, Microversion 6
-
-To get all of the version numbers, you can either use three regular
-expressions, as in the previous example:
-
- my @regexen = ( qr/FooApp\s+Version\s+(\d+)$/,
- qr/Subversion\s+(\d+),/,
- qr/Microversion\s+(\d$)$/ );
-
- my @nums = $file->multi_search_file($file, @regexen);
-
-In which case C<@nums> will contain C<(4, 2, 6)>. Or, you can use just two
-regular expressions:
-
- my @regexen = ( qr/FooApp\s+Version\s+(\d+)$/,
- qr/Subversion\s+(\d+),\s+Microversion\s+(\d$)$/ );
-
- my @nums = $file->multi_search_file($file, @regexen);
-
-In which case C<@nums> will contain C<(4, [2, 6])>. Note that the two
-parentheses that return values in the second regular expression cause the
-matches to be returned as an array reference.
-
-=cut
-
-sub multi_search_file {
- my ($self, $file, @regexen) = @_;
- return unless $file && @regexen;
- my @each = @regexen;
- open F, "<$file" or Carp::croak "Cannot open $file: $!\n";
- my %ret;
- while (my $line = <F>) {
- my @splice;
- # Process each of the regular expresssions.
- for (my $i = 0; $i < @each; $i++) {
- if ((my @ret) = $line =~ /$each[$i]/) {
- # We have a match! If there's one match returned, just grab
- # it. If there's more than one, keep it as an array ref.
- $ret{$each[$i]} = $#ret > 0 ? \@ret : $ret[0];
- # We got values for this regex, so not its place in the @each
- # array.
- push @splice, $i;
- }
- }
- # Remove any regexen that have already found a match.
- for (@splice) { splice @each, $_, 1 }
- # If there are no more regexes, we're done -- no need to keep
- # processing lines in the file!
- last unless @each;
- }
- close F;
- return unless %ret;
- return wantarray ? @ret{@regexen} : \@ret{@regexen};
-}
-
-1;
-__END__
-
-=head1 BUGS
-
-Report all bugs via the CPAN Request Tracker at
-L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=App-Info>.
-
-=head1 AUTHOR
-
-David Wheeler <L<david@wheeler.net|"david@wheeler.net">>
-
-=head1 SEE ALSO
-
-L<App::Info|App::Info>, L<File::Spec|File::Spec>,
-L<App::Info::HTTPD::Apache|App::Info::HTTPD::Apache>
-L<App::Info::RDBMS::PostgreSQL|App::Info::RDBMS::PostgreSQL>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright (c) 2002, David Wheeler. All Rights Reserved.
-
-This module is free software; you can redistribute it and/or modify it under the
-same terms as Perl itself.
-
-=cut
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Changes b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Changes
deleted file mode 100644
index f413bd9..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Changes
+++ /dev/null
@@ -1,62 +0,0 @@
-Revision history for Perl extension DBIx::DBSchema.
-
-0.23 Mon Feb 16 17:35:54 PST 2004
- - Update Pg dependancy to 1.32
- - Update the simple load test so it skips DBIx::DBSchema::DBD::Pg if
- DBD::Pg 1.32 is not installed.
-
-0.22 Thu Oct 23 15:18:21 PDT 2003
- - Pg reverse-engineering fix: varchar with no limit
- - Pg needs (unreleased) DBD::Pg 1.30 (or deb 1.22-2... interesting)
-
-0.21 Thu Sep 19 05:04:18 PDT 2002
- - Pg reverse-engineering fix: now sets default
-
-0.20 Mon Mar 4 04:58:34 2002
- - documentation updates
- - fix Column->new when using named params
- - fix Pg driver reverse-engineering length of numeric columns:
- translate 655362 to 10,2, etc.
- - fix Pg driver reverse-engineering of text columns (don't have a
- length)
-
-0.19 Tue Oct 23 08:49:12 2001
- - documentation for %typemap
- - preliminary Sybase driver from Charles Shapiro
- <charles.shapiro@numethods.com> and Mitchell J. Friedman
- <mitchell.friedman@numethods.com>.
- - Fix Column::line to return a scalar as documented, not a list.
- - Should finally eliminate the Use of uninitialized value at
- ... DBIx/DBSchema/Column.pm line 251
-
-0.18 Fri Aug 10 17:07:28 2001
- - Added Table::delcolumn
- - patch from Charles Shapiro <cshapiro@numethods.com> to add
- `ORDER BY a.attnum' to the SQL in DBIx::DBSchema::DBD::Pg::columns
-
-0.17 Sat Jul 7 17:55:33 2001
- - Rework Table->new interface for named params
- - Fixes for Pg blobs, yay!
- - MySQL doesn't need non-standard index syntax anymore (since 3.22).
- - patch from Mark Ethan Trostler <mark@zzo.com> for generating
- tables without indices.
-
-0.16 Fri Jan 5 15:55:50 2001
- - Don't overflow index names.
-
-0.15 Fri Nov 24 23:39:16 2000
- - MySQL handling of BOOL type (change to TINYINT)
-
-0.14 Tue Oct 24 14:43:16 2000
- - MySQL handling of SERIAL type (change to INTEGER AUTO_INCREMENT)
-
-0.13 Wed Oct 11 10:47:13 2000
- - fixed up type mapping foo, added default values, added named
- parameters to Column->new, fixed quoting of default values
-
-0.11 Sun Sep 28 02:16:25 2000
- - oops, original verison got 0.10, so this one will get 0.11
-
-0.01 Sun Sep 17 07:57:35 2000
- - original version; created by h2xs 1.19
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema.pm
deleted file mode 100644
index fc4916d..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema.pm
+++ /dev/null
@@ -1,367 +0,0 @@
-package DBIx::DBSchema;
-
-use strict;
-use vars qw(@ISA $VERSION);
-#use Exporter;
-use Carp qw(confess);
-use DBI;
-use FreezeThaw qw(freeze thaw cmpStr);
-use DBIx::DBSchema::Table;
-use DBIx::DBSchema::Column;
-use DBIx::DBSchema::ColGroup::Unique;
-use DBIx::DBSchema::ColGroup::Index;
-
-#@ISA = qw(Exporter);
-@ISA = ();
-
-$VERSION = "0.23";
-
-=head1 NAME
-
-DBIx::DBSchema - Database-independent schema objects
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema;
-
- $schema = new DBIx::DBSchema @dbix_dbschema_table_objects;
- $schema = new_odbc DBIx::DBSchema $dbh;
- $schema = new_odbc DBIx::DBSchema $dsn, $user, $pass;
- $schema = new_native DBIx::DBSchema $dbh;
- $schema = new_native DBIx::DBSchema $dsn, $user, $pass;
-
- $schema->save("filename");
- $schema = load DBIx::DBSchema "filename";
-
- $schema->addtable($dbix_dbschema_table_object);
-
- @table_names = $schema->tables;
-
- $DBIx_DBSchema_table_object = $schema->table("table_name");
-
- @sql = $schema->sql($dbh);
- @sql = $schema->sql($dsn, $username, $password);
- @sql = $schema->sql($dsn); #doesn't connect to database - less reliable
-
- $perl_code = $schema->pretty_print;
- %hash = eval $perl_code;
- use DBI qw(:sql_types); $schema = pretty_read DBIx::DBSchema \%hash;
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema objects are collections of DBIx::DBSchema::Table objects and
-represent a database schema.
-
-This module implements an OO-interface to database schemas. Using this module,
-you can create a database schema with an OO Perl interface. You can read the
-schema from an existing database. You can save the schema to disk and restore
-it a different process. Most importantly, DBIx::DBSchema can write SQL
-CREATE statements statements for different databases from a single source.
-
-Currently supported databases are MySQL and PostgreSQL. Sybase support is
-partially implemented. DBIx::DBSchema will attempt to use generic SQL syntax
-for other databases. Assistance adding support for other databases is
-welcomed. See L<DBIx::DBSchema::DBD>, "Driver Writer's Guide and Base Class".
-
-=head1 METHODS
-
-=over 4
-
-=item new TABLE_OBJECT, TABLE_OBJECT, ...
-
-Creates a new DBIx::DBSchema object.
-
-=cut
-
-sub new {
- my($proto, @tables) = @_;
- my %tables = map { $_->name, $_ } @tables; #check for duplicates?
-
- my $class = ref($proto) || $proto;
- my $self = {
- 'tables' => \%tables,
- };
-
- bless ($self, $class);
-
-}
-
-=item new_odbc DATABASE_HANDLE | DATA_SOURCE USERNAME PASSWORD [ ATTR ]
-
-Creates a new DBIx::DBSchema object from an existing data source, which can be
-specified by passing an open DBI database handle, or by passing the DBI data
-source name, username, and password. This uses the experimental DBI type_info
-method to create a schema with standard (ODBC) SQL column types that most
-closely correspond to any non-portable column types. Use this to import a
-schema that you wish to use with many different database engines. Although
-primary key and (unique) index information will only be read from databases
-with DBIx::DBSchema::DBD drivers (currently MySQL and PostgreSQL), import of
-column names and attributes *should* work for any database. Note that this
-method only uses "ODBC" column types; it does not require or use an ODBC
-driver.
-
-=cut
-
-sub new_odbc {
- my($proto, $dbh) = (shift, shift);
- $dbh = DBI->connect( $dbh, @_ ) or die $DBI::errstr unless ref($dbh);
- $proto->new(
- map { new_odbc DBIx::DBSchema::Table $dbh, $_ } _tables_from_dbh($dbh)
- );
-}
-
-=item new_native DATABASE_HANDLE | DATA_SOURCE USERNAME PASSWORD [ ATTR ]
-
-Creates a new DBIx::DBSchema object from an existing data source, which can be
-specified by passing an open DBI database handle, or by passing the DBI data
-source name, username and password. This uses database-native methods to read
-the schema, and will preserve any non-portable column types. The method is
-only available if there is a DBIx::DBSchema::DBD for the corresponding database engine (currently, MySQL and PostgreSQL).
-
-=cut
-
-sub new_native {
- my($proto, $dbh) = (shift, shift);
- $dbh = DBI->connect( $dbh, @_ ) or die $DBI::errstr unless ref($dbh);
- $proto->new(
- map { new_native DBIx::DBSchema::Table ( $dbh, $_ ) } _tables_from_dbh($dbh)
- );
-}
-
-=item load FILENAME
-
-Loads a DBIx::DBSchema object from a file.
-
-=cut
-
-sub load {
- my($proto,$file)=@_; #use $proto ?
- open(FILE,"<$file") or die "Can't open $file: $!";
- my($string)=join('',<FILE>); #can $string have newlines? pry not?
- close FILE or die "Can't close $file: $!";
- my($self)=thaw $string;
- #no bless needed?
- $self;
-}
-
-=item save FILENAME
-
-Saves a DBIx::DBSchema object to a file.
-
-=cut
-
-sub save {
- my($self,$file)=@_;
- my($string)=freeze $self;
- open(FILE,">$file") or die "Can't open $file: $!";
- print FILE $string;
- close FILE or die "Can't close file: $!";
- my($check_self)=thaw $string;
- die "Verify error: Can't freeze and thaw dbdef $self"
- if (cmpStr($self,$check_self));
-}
-
-=item addtable TABLE_OBJECT
-
-Adds the given DBIx::DBSchema::Table object to this DBIx::DBSchema.
-
-=cut
-
-sub addtable {
- my($self,$table)=@_;
- $self->{'tables'}->{$table->name} = $table; #check for dupliates?
-}
-
-=item tables
-
-Returns a list of the names of all tables.
-
-=cut
-
-sub tables {
- my($self)=@_;
- keys %{$self->{'tables'}};
-}
-
-=item table TABLENAME
-
-Returns the specified DBIx::DBSchema::Table object.
-
-=cut
-
-sub table {
- my($self,$table)=@_;
- $self->{'tables'}->{$table};
-}
-
-=item sql [ DATABASE_HANDLE | DATA_SOURCE [ USERNAME PASSWORD [ ATTR ] ] ]
-
-Returns a list of SQL `CREATE' statements for this schema.
-
-The data source can be specified by passing an open DBI database handle, or by
-passing the DBI data source name, username and password.
-
-Although the username and password are optional, it is best to call this method
-with a database handle or data source including a valid username and password -
-a DBI connection will be opened and the quoting and type mapping will be more
-reliable.
-
-If passed a DBI data source (or handle) such as `DBI:mysql:database' or
-`DBI:Pg:dbname=database', will use syntax specific to that database engine.
-Currently supported databases are MySQL and PostgreSQL.
-
-If not passed a data source (or handle), or if there is no driver for the
-specified database, will attempt to use generic SQL syntax.
-
-=cut
-
-sub sql {
- my($self, $dbh) = (shift, shift);
- my $created_dbh = 0;
- unless ( ref($dbh) || ! @_ ) {
- $dbh = DBI->connect( $dbh, @_ ) or die $DBI::errstr;
- $created_dbh = 1;
- }
- my @r = map { $self->table($_)->sql_create_table($dbh); } $self->tables;
- $dbh->disconnect if $created_dbh;
- @r;
-}
-
-=item pretty_print
-
-Returns the data in this schema as Perl source, suitable for assigning to a
-hash.
-
-=cut
-
-sub pretty_print {
- my($self) = @_;
- join("},\n\n",
- map {
- my $table = $_;
- "'$table' => {\n".
- " 'columns' => [\n".
- join("", map {
- #cant because -w complains about , in qw()
- # (also biiiig problems with empty lengths)
- #" qw( $_ ".
- #$self->table($table)->column($_)->type. " ".
- #( $self->table($table)->column($_)->null ? 'NULL' : 0 ). " ".
- #$self->table($table)->column($_)->length. " ),\n"
- " '$_', ".
- "'". $self->table($table)->column($_)->type. "', ".
- "'". $self->table($table)->column($_)->null. "', ".
- "'". $self->table($table)->column($_)->length. "', ".
- "'". $self->table($table)->column($_)->default. "', ".
- "'". $self->table($table)->column($_)->local. "',\n"
- } $self->table($table)->columns
- ).
- " ],\n".
- " 'primary_key' => '". $self->table($table)->primary_key. "',\n".
- " 'unique' => [ ". join(', ',
- map { "[ '". join("', '", @{$_}). "' ]" }
- @{$self->table($table)->unique->lol_ref}
- ). " ],\n".
- " 'index' => [ ". join(', ',
- map { "[ '". join("', '", @{$_}). "' ]" }
- @{$self->table($table)->index->lol_ref}
- ). " ],\n"
- #" 'index' => [ ". " ],\n"
- } $self->tables
- ), "}\n";
-}
-
-=cut
-
-=item pretty_read HASHREF
-
-Creates a schema as specified by a data structure such as that created by
-B<pretty_print> method.
-
-=cut
-
-sub pretty_read {
- my($proto, $href) = @_;
- my $schema = $proto->new( map {
- my(@columns);
- while ( @{$href->{$_}{'columns'}} ) {
- push @columns, DBIx::DBSchema::Column->new(
- splice @{$href->{$_}{'columns'}}, 0, 6
- );
- }
- DBIx::DBSchema::Table->new(
- $_,
- $href->{$_}{'primary_key'},
- DBIx::DBSchema::ColGroup::Unique->new($href->{$_}{'unique'}),
- DBIx::DBSchema::ColGroup::Index->new($href->{$_}{'index'}),
- @columns,
- );
- } (keys %{$href}) );
-}
-
-# private subroutines
-
-sub _load_driver {
- my($dbh) = @_;
- my $driver;
- if ( ref($dbh) ) {
- $driver = $dbh->{Driver}->{Name};
- } else {
- $dbh =~ s/^dbi:(\w*?)(?:\((.*?)\))?://i #nicked from DBI->connect
- or '' =~ /()/; # ensure $1 etc are empty if match fails
- $driver = $1 or confess "can't parse data source: $dbh";
- }
-
- #require "DBIx/DBSchema/DBD/$driver.pm";
- #$driver;
- eval 'require "DBIx/DBSchema/DBD/$driver.pm"' and $driver or die $@;
-}
-
-sub _tables_from_dbh {
- my($dbh) = @_;
- my $sth = $dbh->table_info or die $dbh->errstr;
- #map { $_->{TABLE_NAME} } grep { $_->{TABLE_TYPE} eq 'TABLE' }
- # @{ $sth->fetchall_arrayref({ TABLE_NAME=>1, TABLE_TYPE=>1}) };
- map { $_->[0] } grep { $_->[1] =~ /^TABLE$/i }
- @{ $sth->fetchall_arrayref([2,3]) };
-}
-
-=back
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-Charles Shapiro <charles.shapiro@numethods.com> and Mitchell Friedman
-<mitchell.friedman@numethods.com> contributed the start of a Sybase driver.
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-Each DBIx::DBSchema object should have a name which corresponds to its name
-within the SQL database engine (DBI data source).
-
-pretty_print is actually pretty ugly.
-
-Perhaps pretty_read should eval column types so that we can use DBI
-qw(:sql_types) here instead of externally.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema::Table>, L<DBIx::DBSchema::ColGroup>,
-L<DBIx::DBSchema::ColGroup::Unique>, L<DBIx::DBSchema::ColGroup::Index>,
-L<DBIx::DBSchema::Column>, L<DBIx::DBSchema::DBD>,
-L<DBIx::DBSchema::DBD::mysql>, L<DBIx::DBSchema::DBD::Pg>, L<FS::Record>,
-L<DBI>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup.pm
deleted file mode 100644
index ceeb223..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup.pm
+++ /dev/null
@@ -1,141 +0,0 @@
-package DBIx::DBSchema::ColGroup;
-
-use strict;
-use vars qw(@ISA);
-#use Exporter;
-
-#@ISA = qw(Exporter);
-@ISA = qw();
-
-=head1 NAME
-
-DBIx::DBSchema::ColGroup - Column group objects
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema::ColGroup;
-
- $colgroup = new DBIx::DBSchema::ColGroup ( $lol_ref );
- $colgroup = new DBIx::DBSchema::ColGroup ( \@lol );
- $colgroup = new DBIx::DBSchema::ColGroup (
- [
- [ 'single_column' ],
- [ 'multiple_columns', 'another_column', ],
- ]
- );
-
- $lol_ref = $colgroup->lol_ref;
-
- @sql_lists = $colgroup->sql_list;
-
- @singles = $colgroup->singles;
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema::ColGroup objects represent sets of sets of columns. (IOW a
-"list of lists" - see L<perllol>.)
-
-=head1 METHODS
-
-=over 4
-
-=item new [ LOL_REF ]
-
-Creates a new DBIx::DBSchema::ColGroup object. Pass a reference to a list of
-lists of column names.
-
-=cut
-
-sub new {
- my($proto, $lol) = @_;
-
- my $class = ref($proto) || $proto;
- my $self = {
- 'lol' => $lol,
- };
-
- bless ($self, $class);
-
-}
-
-=item lol_ref
-
-Returns a reference to a list of lists of column names.
-
-=cut
-
-sub lol_ref {
- my($self) = @_;
- $self->{'lol'};
-}
-
-=item sql_list
-
-Returns a flat list of comma-separated values, for SQL statements.
-
-For example:
-
- @lol = (
- [ 'single_column' ],
- [ 'multiple_columns', 'another_column', ],
- );
-
- $colgroup = new DBIx::DBSchema::ColGroup ( \@lol );
-
- print join("\n", $colgroup->sql_list), "\n";
-
-Will print:
-
- single_column
- multiple_columns, another_column
-
-=cut
-
-sub sql_list { #returns a flat list of comman-separates lists (for sql)
- my($self)=@_;
- grep $_ ne '', map join(', ', @{$_}), @{$self->{'lol'}};
-}
-
-=item singles
-
-Returns a flat list of all single item lists.
-
-=cut
-
-sub singles { #returns single-field groups as a flat list
- my($self)=@_;
- #map ${$_}[0], grep scalar(@{$_}) == 1, @{$self->{'lol'}};
- map {
- ${$_}[0] =~ /^(\w+)$/
- #aah!
- or die "Illegal column ", ${$_}[0], " in colgroup!";
- $1;
- } grep scalar(@{$_}) == 1, @{$self->{'lol'}};
-}
-
-=back
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema::Table>, L<DBIx::DBSchema::ColGroup::Unique>,
-L<DBIx::DBSchema::ColGroup::Index>, L<DBIx::DBSchema>, L<perllol>, L<perldsc>,
-L<DBI>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Index.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Index.pm
deleted file mode 100644
index 1a92baa..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Index.pm
+++ /dev/null
@@ -1,37 +0,0 @@
-package DBIx::DBSchema::ColGroup::Index;
-
-use strict;
-use vars qw(@ISA);
-use DBIx::DBSchema::ColGroup;
-
-@ISA=qw(DBIx::DBSchema::ColGroup);
-
-=head1 NAME
-
-DBIx::DBSchema::ColGroup::Index - Index column group object
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema::ColGroup::Index;
-
- # see DBIx::DBSchema::ColGroup methods
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema::ColGroup::Index objects represent the (non-unique) indices of a
-database table (L<DBIx::DBSchema::Table>). DBIx::DBSchema::ColGroup::Index
-inherits from DBIx::DBSchema::ColGroup.
-
-=head1 BUGS
-
-Is this empty subclass needed?
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema::ColGroup>, L<DBIx::DBSchema::ColGroup::Unique>,
-L<DBIx::DBSchema::Table>, L<DBIx::DBSchema>, L<FS::Record>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Unique.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Unique.pm
deleted file mode 100644
index 450043f..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/ColGroup/Unique.pm
+++ /dev/null
@@ -1,38 +0,0 @@
-package DBIx::DBSchema::ColGroup::Unique;
-
-use strict;
-use vars qw(@ISA);
-use DBIx::DBSchema::ColGroup;
-
-@ISA=qw(DBIx::DBSchema::ColGroup);
-
-=head1 NAME
-
-DBIx::DBSchema::ColGroup::Unique - Unique column group object
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema::ColGroup::Unique;
-
- # see DBIx::DBSchema::ColGroup methods
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema::ColGroup::Unique objects represent the unique indices of a
-database table (L<DBIx::DBSchema::Table>). DBIx::DBSchema::ColGroup:Unique
-inherits from DBIx::DBSchema::ColGroup.
-
-=head1 BUGS
-
-Is this empty subclass needed?
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema::ColGroup>, L<DBIx::DBSchema::ColGroup::Index>,
-L<DBIx::DBSchema::Table>, L<DBIx::DBSchema>, L<FS::Record>
-
-=cut
-
-1;
-
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Column.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Column.pm
deleted file mode 100644
index 4e26646..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Column.pm
+++ /dev/null
@@ -1,300 +0,0 @@
-package DBIx::DBSchema::Column;
-
-use strict;
-use vars qw(@ISA $VERSION);
-#use Carp;
-#use Exporter;
-
-#@ISA = qw(Exporter);
-@ISA = qw();
-
-$VERSION = '0.02';
-
-=head1 NAME
-
-DBIx::DBSchema::Column - Column objects
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema::Column;
-
- #named params with a hashref (preferred)
- $column = new DBIx::DBSchema::Column ( {
- 'name' => 'column_name',
- 'type' => 'varchar'
- 'null' => 'NOT NULL',
- 'length' => 64,
- 'default' => '
- 'local' => '',
- } );
-
- #list
- $column = new DBIx::DBSchema::Column ( $name, $sql_type, $nullability, $length, $default, $local );
-
- $name = $column->name;
- $column->name( 'name' );
-
- $sql_type = $column->type;
- $column->type( 'sql_type' );
-
- $null = $column->null;
- $column->null( 'NULL' );
- $column->null( 'NOT NULL' );
- $column->null( '' );
-
- $length = $column->length;
- $column->length( '10' );
- $column->length( '8,2' );
-
- $default = $column->default;
- $column->default( 'Roo' );
-
- $sql_line = $column->line;
- $sql_line = $column->line($datasrc);
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema::Column objects represent columns in tables (see
-L<DBIx::DBSchema::Table>).
-
-=head1 METHODS
-
-=over 4
-
-=item new HASHREF
-
-=item new [ name [ , type [ , null [ , length [ , default [ , local ] ] ] ] ] ]
-
-Creates a new DBIx::DBSchema::Column object. Takes a hashref of named
-parameters, or a list. B<name> is the name of the column. B<type> is the SQL
-data type. B<null> is the nullability of the column (intrepreted using Perl's
-rules for truth, with one exception: `NOT NULL' is false). B<length> is the
-SQL length of the column. B<default> is the default value of the column.
-B<local> is reserved for database-specific information.
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
-
- my $self;
- if ( ref($_[0]) ) {
- $self = shift;
- } else {
- $self = { map { $_ => shift } qw(name type null length default local) };
- }
-
- #croak "Illegal name: ". $self->{'name'}
- # if grep $self->{'name'} eq $_, @reserved_words;
-
- $self->{'null'} =~ s/^NOT NULL$//i;
- $self->{'null'} = 'NULL' if $self->{'null'};
-
- bless ($self, $class);
-
-}
-
-=item name [ NAME ]
-
-Returns or sets the column name.
-
-=cut
-
-sub name {
- my($self,$value)=@_;
- if ( defined($value) ) {
- #croak "Illegal name: $name" if grep $name eq $_, @reserved_words;
- $self->{'name'} = $value;
- } else {
- $self->{'name'};
- }
-}
-
-=item type [ TYPE ]
-
-Returns or sets the column type.
-
-=cut
-
-sub type {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{'type'} = $value;
- } else {
- $self->{'type'};
- }
-}
-
-=item null [ NULL ]
-
-Returns or sets the column null flag (the empty string is equivalent to
-`NOT NULL')
-
-=cut
-
-sub null {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $value =~ s/^NOT NULL$//i;
- $value = 'NULL' if $value;
- $self->{'null'} = $value;
- } else {
- $self->{'null'};
- }
-}
-
-=item length [ LENGTH ]
-
-Returns or sets the column length.
-
-=cut
-
-sub length {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{'length'} = $value;
- } else {
- $self->{'length'};
- }
-}
-
-=item default [ LOCAL ]
-
-Returns or sets the default value.
-
-=cut
-
-sub default {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{'default'} = $value;
- } else {
- $self->{'default'};
- }
-}
-
-
-=item local [ LOCAL ]
-
-Returns or sets the database-specific field.
-
-=cut
-
-sub local {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{'local'} = $value;
- } else {
- $self->{'local'};
- }
-}
-
-=item line [ DATABASE_HANDLE | DATA_SOURCE [ USERNAME PASSWORD [ ATTR ] ] ]
-
-Returns an SQL column definition.
-
-The data source can be specified by passing an open DBI database handle, or by
-passing the DBI data source name, username and password.
-
-Although the username and password are optional, it is best to call this method
-with a database handle or data source including a valid username and password -
-a DBI connection will be opened and the quoting and type mapping will be more
-reliable.
-
-If passed a DBI data source (or handle) such as `DBI:mysql:database' or
-`DBI:Pg:dbname=database', will use syntax specific to that database engine.
-Currently supported databases are MySQL and PostgreSQL. Non-standard syntax
-for other engines (if applicable) may also be supported in the future.
-
-=cut
-
-sub line {
- my($self,$dbh) = (shift, shift);
-
- my $created_dbh = 0;
- unless ( ref($dbh) || ! @_ ) {
- $dbh = DBI->connect( $dbh, @_ ) or die $DBI::errstr;
- my $gratuitous = $DBI::errstr; #surpress superfluous `used only once' error
- $created_dbh = 1;
- }
-
- my $driver = DBIx::DBSchema::_load_driver($dbh);
- my %typemap;
- %typemap = eval "\%DBIx::DBSchema::DBD::${driver}::typemap" if $driver;
- my $type = defined( $typemap{uc($self->type)} )
- ? $typemap{uc($self->type)}
- : $self->type;
-
- my $null = $self->null;
-
- my $default;
- if ( defined($self->default) && $self->default ne ''
- && ref($dbh)
- # false laziness: nicked from FS::Record::_quote
- && ( $self->default !~ /^\-?\d+(\.\d+)?$/
- || $type =~ /(char|binary|blob|text)$/i
- )
- ) {
- $default = $dbh->quote($self->default);
- } else {
- $default = $self->default;
- }
-
- #this should be a callback into the driver
- if ( $driver eq 'mysql' ) { #yucky mysql hack
- $null ||= "NOT NULL";
- $self->local('AUTO_INCREMENT') if uc($self->type) eq 'SERIAL';
- } elsif ( $driver eq 'Pg' ) { #yucky Pg hack
- $null ||= "NOT NULL";
- $null =~ s/^NULL$//;
- }
-
- my $r = join(' ',
- $self->name,
- $type. ( ( defined($self->length) && $self->length )
- ? '('.$self->length.')'
- : ''
- ),
- $null,
- ( ( defined($default) && $default ne '' )
- ? 'DEFAULT '. $default
- : ''
- ),
- ( ( $driver eq 'mysql' && defined($self->local) )
- ? $self->local
- : ''
- ),
- );
- $dbh->disconnect if $created_dbh;
- $r;
-
-}
-
-=back
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-line() has database-specific foo that probably ought to be abstracted into
-the DBIx::DBSchema:DBD:: modules.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema::Table>, L<DBIx::DBSchema>, L<DBIx::DBSchema::DBD>, L<DBI>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD.pm
deleted file mode 100644
index a4c6000..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-package DBIx::DBSchema::DBD;
-
-use strict;
-use vars qw($VERSION);
-
-$VERSION = '0.02';
-
-=head1 NAME
-
-DBIx::DBSchema::DBD - DBIx::DBSchema Driver Writer's Guide and Base Class
-
-=head1 SYNOPSIS
-
- perldoc DBIx::DBSchema::DBD
-
- package DBIx::DBSchema::DBD::FooBase
- use DBIx::DBSchmea::DBD;
- @ISA = qw(DBIx::DBSchema::DBD);
-
-=head1 DESCRIPTION
-
-Drivers should be named DBIx::DBSchema::DBD::DatabaseName, where DatabaseName
-is the same as the DBD:: driver for this database. Drivers should implement the
-following class methods:
-
-=over 4
-
-=item columns CLASS DBI_DBH TABLE
-
-Given an active DBI database handle, return a listref of listrefs (see
-L<perllol>), each containing six elements: column name, column type,
-nullability, column length, column default, and a field reserved for
-driver-specific use.
-
-=item column CLASS DBI_DBH TABLE COLUMN
-
-Same as B<columns> above, except return the listref for a single column. You
-can inherit from DBIx::DBSchema::DBD to provide this function.
-
-=cut
-
-sub column {
- my($proto, $dbh, $table, $column) = @_;
- #@a = grep { $_->[0] eq $column } @{ $proto->columns( $dbh, $table ) };
- #$a[0];
- @{ [
- grep { $_->[0] eq $column } @{ $proto->columns( $dbh, $table ) }
- ] }[0]; #force list context on grep, return scalar of first element
-}
-
-=item primary_key CLASS DBI_DBH TABLE
-
-Given an active DBI database handle, return the primary key for the specified
-table.
-
-=item unique CLASS DBI_DBH TABLE
-
-Given an active DBI database handle, return a hashref of unique indices. The
-keys of the hashref are index names, and the values are arrayrefs which point
-a list of column names for each. See L<perldsc/"HASHES OF LISTS"> and
-L<DBIx::DBSchema::ColGroup>.
-
-=item index CLASS DBI_DBH TABLE
-
-Given an active DBI database handle, return a hashref of (non-unique) indices.
-The keys of the hashref are index names, and the values are arrayrefs which
-point a list of column names for each. See L<perldsc/"HASHES OF LISTS"> and
-L<DBIx::DBSchema::ColGroup>.
-
-=back
-
-=head1 TYPE MAPPING
-
-You can define a %typemap array for your driver to map "standard" data
-types to database-specific types. For example, the MySQL TIMESTAMP field
-has non-standard auto-updating semantics; the MySQL DATETIME type is
-what other databases and the ODBC standard call TIMESTAMP, so one of the
-entries in the MySQL %typemap is:
-
- 'TIMESTAMP' => 'DATETIME',
-
-Another example is the Pg %typemap which maps the standard types BLOB and
-LONG VARBINARY to the Pg-specific BYTEA:
-
- 'BLOB' => 'BYTEA',
- 'LONG VARBINARY' => 'BYTEA',
-
-Make sure you use all uppercase-keys.
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<DBIx::DBSchema::DBD::mysql>, L<DBIx::DBSchema::DBD::Pg>,
-L<DBIx::DBSchema::ColGroup>, L<DBI>, L<DBI::DBD>, L<perllol>,
-L<perldsc/"HASHES OF LISTS">
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Pg.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Pg.pm
deleted file mode 100644
index 018b890..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Pg.pm
+++ /dev/null
@@ -1,175 +0,0 @@
-package DBIx::DBSchema::DBD::Pg;
-
-use strict;
-use vars qw($VERSION @ISA %typemap);
-use DBD::Pg 1.22;
-use DBIx::DBSchema::DBD;
-
-$VERSION = '0.08';
-@ISA = qw(DBIx::DBSchema::DBD);
-
-%typemap = (
- 'BLOB' => 'BYTEA',
- 'LONG VARBINARY' => 'BYTEA',
-);
-
-=head1 NAME
-
-DBIx::DBSchema::DBD::Pg - PostgreSQL native driver for DBIx::DBSchema
-
-=head1 SYNOPSIS
-
-use DBI;
-use DBIx::DBSchema;
-
-$dbh = DBI->connect('dbi:Pg:dbname=database', 'user', 'pass');
-$schema = new_native DBIx::DBSchema $dbh;
-
-=head1 DESCRIPTION
-
-This module implements a PostgreSQL-native driver for DBIx::DBSchema.
-
-=cut
-
-sub columns {
- my($proto, $dbh, $table) = @_;
- my $sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT a.attname, t.typname, a.attlen, a.atttypmod, a.attnotnull,
- a.atthasdef, a.attnum
- FROM pg_class c, pg_attribute a, pg_type t
- WHERE c.relname = '$table'
- AND a.attnum > 0 AND a.attrelid = c.oid AND a.atttypid = t.oid
- ORDER BY a.attnum
-END
- $sth->execute or die $sth->errstr;
-
- map {
-
- my $default = '';
- if ( $_->{atthasdef} ) {
- my $attnum = $_->{attnum};
- my $d_sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT substring(d.adsrc for 128) FROM pg_attrdef d, pg_class c
- WHERE c.relname = '$table' AND c.oid = d.adrelid AND d.adnum = $attnum
-END
- $d_sth->execute or die $d_sth->errstr;
-
- $default = $d_sth->fetchrow_arrayref->[0];
- };
-
- my $len = '';
- if ( $_->{attlen} == -1 && $_->{atttypmod} != -1
- && $_->{typname} ne 'text' ) {
- $len = $_->{atttypmod} - 4;
- if ( $_->{typname} eq 'numeric' ) {
- $len = ($len >> 16). ','. ($len & 0xffff);
- }
- }
-
- my $type = $_->{'typname'};
- $type = 'char' if $type eq 'bpchar';
-
- [
- $_->{'attname'},
- $type,
- ! $_->{'attnotnull'},
- $len,
- $default,
- '' #local
- ];
-
- } @{ $sth->fetchall_arrayref({}) };
-}
-
-sub primary_key {
- my($proto, $dbh, $table) = @_;
- my $sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT a.attname, a.attnum
- FROM pg_class c, pg_attribute a, pg_type t
- WHERE c.relname = '${table}_pkey'
- AND a.attnum > 0 AND a.attrelid = c.oid AND a.atttypid = t.oid
-END
- $sth->execute or die $sth->errstr;
- my $row = $sth->fetchrow_hashref or return '';
- $row->{'attname'};
-}
-
-sub unique {
- my($proto, $dbh, $table) = @_;
- my $gratuitous = { map { $_ => [ $proto->_index_fields($dbh, $_ ) ] }
- grep { $proto->_is_unique($dbh, $_ ) }
- $proto->_all_indices($dbh, $table)
- };
-}
-
-sub index {
- my($proto, $dbh, $table) = @_;
- my $gratuitous = { map { $_ => [ $proto->_index_fields($dbh, $_ ) ] }
- grep { ! $proto->_is_unique($dbh, $_ ) }
- $proto->_all_indices($dbh, $table)
- };
-}
-
-sub _all_indices {
- my($proto, $dbh, $table) = @_;
- my $sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT c2.relname
- FROM pg_class c, pg_class c2, pg_index i
- WHERE c.relname = '$table' AND c.oid = i.indrelid AND i.indexrelid = c2.oid
-END
- $sth->execute or die $sth->errstr;
- map { $_->{'relname'} }
- grep { $_->{'relname'} !~ /_pkey$/ }
- @{ $sth->fetchall_arrayref({}) };
-}
-
-sub _index_fields {
- my($proto, $dbh, $index) = @_;
- my $sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT a.attname, a.attnum
- FROM pg_class c, pg_attribute a, pg_type t
- WHERE c.relname = '$index'
- AND a.attnum > 0 AND a.attrelid = c.oid AND a.atttypid = t.oid
-END
- $sth->execute or die $sth->errstr;
- map { $_->{'attname'} } @{ $sth->fetchall_arrayref({}) };
-}
-
-sub _is_unique {
- my($proto, $dbh, $index) = @_;
- my $sth = $dbh->prepare(<<END) or die $dbh->errstr;
- SELECT i.indisunique
- FROM pg_index i, pg_class c, pg_am a
- WHERE i.indexrelid = c.oid AND c.relname = '$index' AND c.relam = a.oid
-END
- $sth->execute or die $sth->errstr;
- my $row = $sth->fetchrow_hashref or die 'guru meditation #420';
- $row->{'indisunique'};
-}
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-Yes.
-
-columns doesn't return column default information.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<DBIx::DBSchema::DBD>, L<DBI>, L<DBI::DBD>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Sybase.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Sybase.pm
deleted file mode 100755
index 4a74069..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/Sybase.pm
+++ /dev/null
@@ -1,141 +0,0 @@
-package DBIx::DBSchema::DBD::Sybase;
-
-use strict;
-use vars qw($VERSION @ISA %typemap);
-use DBIx::DBSchema::DBD;
-
-$VERSION = '0.03';
-@ISA = qw(DBIx::DBSchema::DBD);
-
-%typemap = (
-# 'empty' => 'empty'
-);
-
-=head1 NAME
-
-DBIx::DBSchema::DBD::Sybase - Sybase database driver for DBIx::DBSchema
-
-=head1 SYNOPSIS
-
-use DBI;
-use DBIx::DBSchema;
-
-$dbh = DBI->connect('dbi:Sybase:dbname=database', 'user', 'pass');
-$schema = new_native DBIx::DBSchema $dbh;
-
-=head1 DESCRIPTION
-
-This module implements a Sybase driver for DBIx::DBSchema.
-
-=cut
-
-sub columns {
- my($proto, $dbh, $table) = @_;
-
- my $sth = $dbh->prepare("sp_columns \@table_name=$table")
- or die $dbh->errstr;
-
- $sth->execute or die $sth->errstr;
- my @cols = map {
- [
- $_->{'column_name'},
- $_->{'type_name'},
- ($_->{'nullable'} ? 1 : ''),
- $_->{'length'},
- '', #default
- '' #local
- ]
- } @{ $sth->fetchall_arrayref({}) };
- $sth->finish;
-
- @cols;
-}
-
-sub primary_key {
- return("StubbedPrimaryKey");
-}
-
-
-sub unique {
- my($proto, $dbh, $table) = @_;
- my $gratuitous = { map { $_ => [ $proto->_index_fields($dbh, $table, $_ ) ] }
- grep { $proto->_is_unique($dbh, $_ ) }
- $proto->_all_indices($dbh, $table)
- };
-}
-
-sub index {
- my($proto, $dbh, $table) = @_;
- my $gratuitous = { map { $_ => [ $proto->_index_fields($dbh, $table, $_ ) ] }
- grep { ! $proto->_is_unique($dbh, $_ ) }
- $proto->_all_indices($dbh, $table)
- };
-}
-
-sub _all_indices {
- my($proto, $dbh, $table) = @_;
-
- my $sth = $dbh->prepare_cached(<<END) or die $dbh->errstr;
- SELECT name
- FROM sysindexes
- WHERE id = object_id('$table') and indid between 1 and 254
-END
- $sth->execute or die $sth->errstr;
- my @indices = map { $_->[0] } @{ $sth->fetchall_arrayref() };
- $sth->finish;
- $sth = undef;
- @indices;
-}
-
-sub _index_fields {
- my($proto, $dbh, $table, $index) = @_;
-
- my @keys;
-
- my ($indid) = $dbh->selectrow_array("select indid from sysindexes where id = object_id('$table') and name = '$index'");
- for (1..30) {
- push @keys, $dbh->selectrow_array("select index_col('$table', $indid, $_)") || ();
- }
-
- return @keys;
-}
-
-sub _is_unique {
- my($proto, $dbh, $table, $index) = @_;
-
- my ($isunique) = $dbh->selectrow_array("select status & 2 from sysindexes where id = object_id('$table') and name = '$index'");
-
- return $isunique;
-}
-
-=head1 AUTHOR
-
-Charles Shapiro <charles.shapiro@numethods.com>
-(courtesy of Ivan Kohler <ivan-dbix-dbschema@420.am>)
-
-Mitchell Friedman <mitchell.friedman@numethods.com>
-
-Bernd Dulfer <bernd@widd.de>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2001 Charles Shapiro, Mitchell J. Friedman
-Copyright (c) 2001 nuMethods LLC.
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-Yes.
-
-The B<primary_key> method does not yet work.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<DBIx::DBSchema::DBD>, L<DBI>, L<DBI::DBD>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/mysql.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/mysql.pm
deleted file mode 100644
index f3804dd..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/DBD/mysql.pm
+++ /dev/null
@@ -1,126 +0,0 @@
-package DBIx::DBSchema::DBD::mysql;
-
-use strict;
-use vars qw($VERSION @ISA %typemap);
-use DBIx::DBSchema::DBD;
-
-$VERSION = '0.03';
-@ISA = qw(DBIx::DBSchema::DBD);
-
-%typemap = (
- 'TIMESTAMP' => 'DATETIME',
- 'SERIAL' => 'INTEGER',
- 'BOOL' => 'TINYINT',
- 'LONG VARBINARY' => 'LONGBLOB',
-);
-
-=head1 NAME
-
-DBIx::DBSchema::DBD::mysql - MySQL native driver for DBIx::DBSchema
-
-=head1 SYNOPSIS
-
-use DBI;
-use DBIx::DBSchema;
-
-$dbh = DBI->connect('dbi:mysql:database', 'user', 'pass');
-$schema = new_native DBIx::DBSchema $dbh;
-
-=head1 DESCRIPTION
-
-This module implements a MySQL-native driver for DBIx::DBSchema.
-
-=cut
-
-sub columns {
- my($proto, $dbh, $table ) = @_;
- my $sth = $dbh->prepare("SHOW COLUMNS FROM $table") or die $dbh->errstr;
- $sth->execute or die $sth->errstr;
- map {
- $_->{'Type'} =~ /^(\w+)\(?([\d\,]+)?\)?( unsigned)?$/
- or die "Illegal type: ". $_->{'Type'}. "\n";
- my($type, $length) = ($1, $2);
- [
- $_->{'Field'},
- $type,
- $_->{'Null'},
- $length,
- $_->{'Default'},
- $_->{'Extra'}
- ]
- } @{ $sth->fetchall_arrayref( {} ) };
-}
-
-#sub primary_key {
-# my($proto, $dbh, $table ) = @_;
-# my $primary_key = '';
-# my $sth = $dbh->prepare("SHOW INDEX FROM $table")
-# or die $dbh->errstr;
-# $sth->execute or die $sth->errstr;
-# my @pkey = map { $_->{'Column_name'} } grep {
-# $_->{'Key_name'} eq "PRIMARY"
-# } @{ $sth->fetchall_arrayref( {} ) };
-# scalar(@pkey) ? $pkey[0] : '';
-#}
-
-sub primary_key {
- my($proto, $dbh, $table) = @_;
- my($pkey, $unique_href, $index_href) = $proto->_show_index($dbh, $table);
- $pkey;
-}
-
-sub unique {
- my($proto, $dbh, $table) = @_;
- my($pkey, $unique_href, $index_href) = $proto->_show_index($dbh, $table);
- $unique_href;
-}
-
-sub index {
- my($proto, $dbh, $table) = @_;
- my($pkey, $unique_href, $index_href) = $proto->_show_index($dbh, $table);
- $index_href;
-}
-
-sub _show_index {
- my($proto, $dbh, $table ) = @_;
- my $sth = $dbh->prepare("SHOW INDEX FROM $table")
- or die $dbh->errstr;
- $sth->execute or die $sth->errstr;
-
- my $pkey = '';
- my(%index, %unique);
- foreach my $row ( @{ $sth->fetchall_arrayref({}) } ) {
- if ( $row->{'Key_name'} eq 'PRIMARY' ) {
- $pkey = $row->{'Column_name'};
- } elsif ( $row->{'Non_unique'} ) { #index
- push @{ $index{ $row->{'Key_name'} } }, $row->{'Column_name'};
- } else { #unique
- push @{ $unique{ $row->{'Key_name'} } }, $row->{'Column_name'};
- }
- }
-
- ( $pkey, \%unique, \%index );
-}
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<DBIx::DBSchema::DBD>, L<DBI>, L<DBI::DBD>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Table.pm b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Table.pm
deleted file mode 100644
index 2d6272e..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/DBSchema/Table.pm
+++ /dev/null
@@ -1,471 +0,0 @@
-package DBIx::DBSchema::Table;
-
-use strict;
-use vars qw(@ISA %create_params);
-#use Carp;
-#use Exporter;
-use DBIx::DBSchema::Column 0.02;
-use DBIx::DBSchema::ColGroup::Unique;
-use DBIx::DBSchema::ColGroup::Index;
-
-#@ISA = qw(Exporter);
-@ISA = qw();
-
-=head1 NAME
-
-DBIx::DBSchema::Table - Table objects
-
-=head1 SYNOPSIS
-
- use DBIx::DBSchema::Table;
-
- #old style (depriciated)
- $table = new DBIx::DBSchema::Table (
- "table_name",
- "primary_key",
- $dbix_dbschema_colgroup_unique_object,
- $dbix_dbschema_colgroup_index_object,
- @dbix_dbschema_column_objects,
- );
-
- #new style (preferred), pass a hashref of parameters
- $table = new DBIx::DBSchema::Table (
- {
- name => "table_name",
- primary_key => "primary_key",
- unique => $dbix_dbschema_colgroup_unique_object,
- 'index' => $dbix_dbschema_colgroup_index_object,
- columns => \@dbix_dbschema_column_objects,
- }
- );
-
- $table->addcolumn ( $dbix_dbschema_column_object );
-
- $table_name = $table->name;
- $table->name("table_name");
-
- $primary_key = $table->primary_key;
- $table->primary_key("primary_key");
-
- $dbix_dbschema_colgroup_unique_object = $table->unique;
- $table->unique( $dbix_dbschema__colgroup_unique_object );
-
- $dbix_dbschema_colgroup_index_object = $table->index;
- $table->index( $dbix_dbschema_colgroup_index_object );
-
- @column_names = $table->columns;
-
- $dbix_dbschema_column_object = $table->column("column");
-
- #preferred
- @sql_statements = $table->sql_create_table( $dbh );
- @sql_statements = $table->sql_create_table( $datasrc, $username, $password );
-
- #possible problems
- @sql_statements = $table->sql_create_table( $datasrc );
- @sql_statements = $table->sql_create_table;
-
-=head1 DESCRIPTION
-
-DBIx::DBSchema::Table objects represent a single database table.
-
-=head1 METHODS
-
-=over 4
-
-=item new [ TABLE_NAME [ , PRIMARY_KEY [ , UNIQUE [ , INDEX [ , COLUMN... ] ] ] ] ]
-
-=item new HASHREF
-
-Creates a new DBIx::DBSchema::Table object. The preferred usage is to pass a
-hash reference of named parameters.
-
- {
- name => TABLE_NAME,
- primary_key => PRIMARY_KEY,
- unique => UNIQUE,
- 'index' => INDEX,
- columns => COLUMNS
- }
-
-TABLE_NAME is the name of the table. PRIMARY_KEY is the primary key (may be
-empty). UNIQUE is a DBIx::DBSchema::ColGroup::Unique object (see
-L<DBIx::DBSchema::ColGroup::Unique>). INDEX is a
-DBIx::DBSchema::ColGroup::Index object (see
-L<DBIx::DBSchema::ColGroup::Index>). COLUMNS is a reference to an array of
-DBIx::DBSchema::Column objects (see L<DBIx::DBSchema::Column>).
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
-
- my $self;
- if ( ref($_[0]) ) {
-
- $self = shift;
- $self->{column_order} = [ map { $_->name } @{$self->{columns}} ];
- $self->{columns} = { map { $_->name, $_ } @{$self->{columns}} };
-
- } else {
-
- my($name,$primary_key,$unique,$index,@columns) = @_;
-
- my %columns = map { $_->name, $_ } @columns;
- my @column_order = map { $_->name } @columns;
-
- $self = {
- 'name' => $name,
- 'primary_key' => $primary_key,
- 'unique' => $unique,
- 'index' => $index,
- 'columns' => \%columns,
- 'column_order' => \@column_order,
- };
-
- }
-
- #check $primary_key, $unique and $index to make sure they are $columns ?
- # (and sanity check?)
-
- bless ($self, $class);
-
-}
-
-=item new_odbc DATABASE_HANDLE TABLE_NAME
-
-Creates a new DBIx::DBSchema::Table object from the supplied DBI database
-handle for the specified table. This uses the experimental DBI type_info
-method to create a table with standard (ODBC) SQL column types that most
-closely correspond to any non-portable column types. Use this to import a
-schema that you wish to use with many different database engines. Although
-primary key and (unique) index information will only be imported from databases
-with DBIx::DBSchema::DBD drivers (currently MySQL and PostgreSQL), import of
-column names and attributes *should* work for any database.
-
-Note: the _odbc refers to the column types used and nothing else - you do not
-have to have ODBC installed or connect to the database via ODBC.
-
-=cut
-
-%create_params = (
-# undef => sub { '' },
- '' => sub { '' },
- 'max length' => sub { $_[0]->{PRECISION}->[$_[1]]; },
- 'precision,scale' =>
- sub { $_[0]->{PRECISION}->[$_[1]]. ','. $_[0]->{SCALE}->[$_[1]]; }
-);
-
-sub new_odbc {
- my( $proto, $dbh, $name) = @_;
- my $driver = DBIx::DBSchema::_load_driver($dbh);
- my $sth = _null_sth($dbh, $name);
- my $sthpos = 0;
- $proto->new (
- $name,
- scalar(eval "DBIx::DBSchema::DBD::$driver->primary_key(\$dbh, \$name)"),
- DBIx::DBSchema::ColGroup::Unique->new(
- $driver
- ? [values %{eval "DBIx::DBSchema::DBD::$driver->unique(\$dbh, \$name)"}]
- : []
- ),
- DBIx::DBSchema::ColGroup::Index->new(
- $driver
- ? [ values %{eval "DBIx::DBSchema::DBD::$driver->index(\$dbh, \$name)"} ]
- : []
- ),
- map {
- my $type_info = scalar($dbh->type_info($sth->{TYPE}->[$sthpos]))
- or die "DBI::type_info ". $dbh->{Driver}->{Name}. " driver ".
- "returned no results for type ". $sth->{TYPE}->[$sthpos];
- new DBIx::DBSchema::Column
- $_,
- $type_info->{'TYPE_NAME'},
- #"SQL_". uc($type_info->{'TYPE_NAME'}),
- $sth->{NULLABLE}->[$sthpos],
- &{ $create_params{ $type_info->{CREATE_PARAMS} } }( $sth, $sthpos++ ), $driver && #default
- ${ [
- eval "DBIx::DBSchema::DBD::$driver->column(\$dbh, \$name, \$_)"
- ] }[4]
- # DB-local
- } @{$sth->{NAME}}
- );
-}
-
-=item new_native DATABASE_HANDLE TABLE_NAME
-
-Creates a new DBIx::DBSchema::Table object from the supplied DBI database
-handle for the specified table. This uses database-native methods to read the
-schema, and will preserve any non-portable column types. The method is only
-available if there is a DBIx::DBSchema::DBD for the corresponding database
-engine (currently, MySQL and PostgreSQL).
-
-=cut
-
-sub new_native {
- my( $proto, $dbh, $name) = @_;
- my $driver = DBIx::DBSchema::_load_driver($dbh);
- $proto->new (
- $name,
- scalar(eval "DBIx::DBSchema::DBD::$driver->primary_key(\$dbh, \$name)"),
- DBIx::DBSchema::ColGroup::Unique->new(
- [ values %{eval "DBIx::DBSchema::DBD::$driver->unique(\$dbh, \$name)"} ]
- ),
- DBIx::DBSchema::ColGroup::Index->new(
- [ values %{eval "DBIx::DBSchema::DBD::$driver->index(\$dbh, \$name)"} ]
- ),
- map {
- DBIx::DBSchema::Column->new( @{$_} )
- } eval "DBIx::DBSchema::DBD::$driver->columns(\$dbh, \$name)"
- );
-}
-
-=item addcolumn COLUMN
-
-Adds this DBIx::DBSchema::Column object.
-
-=cut
-
-sub addcolumn {
- my($self,$column)=@_;
- ${$self->{'columns'}}{$column->name}=$column; #sanity check?
- push @{$self->{'column_order'}}, $column->name;
-}
-
-=item delcolumn COLUMN_NAME
-
-Deletes this column. Returns false if no column of this name was found to
-remove, true otherwise.
-
-=cut
-
-sub delcolumn {
- my($self,$column) = @_;
- return 0 unless exists $self->{'columns'}{$column};
- delete $self->{'columns'}{$column};
- @{$self->{'column_order'}}= grep { $_ ne $column } @{$self->{'column_order'}}; 1;
-}
-
-=item name [ TABLE_NAME ]
-
-Returns or sets the table name.
-
-=cut
-
-sub name {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{name} = $value;
- } else {
- $self->{name};
- }
-}
-
-=item primary_key [ PRIMARY_KEY ]
-
-Returns or sets the primary key.
-
-=cut
-
-sub primary_key {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{primary_key} = $value;
- } else {
- #$self->{primary_key};
- #hmm. maybe should untaint the entire structure when it comes off disk
- # cause if you don't trust that, ?
- $self->{primary_key} =~ /^(\w*)$/
- #aah!
- or die "Illegal primary key: ", $self->{primary_key};
- $1;
- }
-}
-
-=item unique [ UNIQUE ]
-
-Returns or sets the DBIx::DBSchema::ColGroup::Unique object.
-
-=cut
-
-sub unique {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{unique} = $value;
- } else {
- $self->{unique};
- }
-}
-
-=item index [ INDEX ]
-
-Returns or sets the DBIx::DBSchema::ColGroup::Index object.
-
-=cut
-
-sub index {
- my($self,$value)=@_;
- if ( defined($value) ) {
- $self->{'index'} = $value;
- } else {
- $self->{'index'};
- }
-}
-
-=item columns
-
-Returns a list consisting of the names of all columns.
-
-=cut
-
-sub columns {
- my($self)=@_;
- #keys %{$self->{'columns'}};
- #must preserve order
- @{ $self->{'column_order'} };
-}
-
-=item column COLUMN_NAME
-
-Returns the column object (see L<DBIx::DBSchema::Column>) for the specified
-COLUMN_NAME.
-
-=cut
-
-sub column {
- my($self,$column)=@_;
- $self->{'columns'}->{$column};
-}
-
-=item sql_create_table [ DATABASE_HANDLE | DATA_SOURCE [ USERNAME PASSWORD [ ATTR ] ] ]
-
-Returns a list of SQL statments to create this table.
-
-The data source can be specified by passing an open DBI database handle, or by
-passing the DBI data source name, username and password.
-
-Although the username and password are optional, it is best to call this method
-with a database handle or data source including a valid username and password -
-a DBI connection will be opened and the quoting and type mapping will be more
-reliable.
-
-If passed a DBI data source (or handle) such as `DBI:mysql:database', will use
-MySQL- or PostgreSQL-specific syntax. Non-standard syntax for other engines
-(if applicable) may also be supported in the future.
-
-=cut
-
-sub sql_create_table {
- my($self, $dbh) = (shift, shift);
-
- my $created_dbh = 0;
- unless ( ref($dbh) || ! @_ ) {
- $dbh = DBI->connect( $dbh, @_ ) or die $DBI::errstr;
- my $gratuitous = $DBI::errstr; #surpress superfluous `used only once' error
- $created_dbh = 1;
- }
- #false laziness: nicked from DBSchema::_load_driver
- my $driver;
- if ( ref($dbh) ) {
- $driver = $dbh->{Driver}->{Name};
- } else {
- my $discard = $dbh;
- $discard =~ s/^dbi:(\w*?)(?:\((.*?)\))?://i #nicked from DBI->connect
- or '' =~ /()/; # ensure $1 etc are empty if match fails
- $driver = $1 or die "can't parse data source: $dbh";
- }
- #eofalse
-
-#should be in the DBD somehwere :/
-# my $saved_pkey = '';
-# if ( $driver eq 'Pg' && $self->primary_key ) {
-# my $pcolumn = $self->column( (
-# grep { $self->column($_)->name eq $self->primary_key } $self->columns
-# )[0] );
-##AUTO-INCREMENT# $pcolumn->type('serial') if lc($pcolumn->type) eq 'integer';
-# $pcolumn->local( $pcolumn->local. ' PRIMARY KEY' );
-# #my $saved_pkey = $self->primary_key;
-# #$self->primary_key('');
-# #change it back afterwords :/
-# }
-
- my @columns = map { $self->column($_)->line($dbh) } $self->columns;
-
- push @columns, "PRIMARY KEY (". $self->primary_key. ")"
- #if $self->primary_key && $driver ne 'Pg';
- if $self->primary_key;
-
- my $indexnum = 1;
-
- my @r = (
- "CREATE TABLE ". $self->name. " (\n ". join(",\n ", @columns). "\n)\n"
- );
-
- push @r, map {
- #my($index) = $self->name. "__". $_ . "_idx";
- #$index =~ s/,\s*/_/g;
- my $index = $self->name. $indexnum++;
- "CREATE UNIQUE INDEX $index ON ". $self->name. " ($_)\n"
- } $self->unique->sql_list
- if $self->unique;
-
- push @r, map {
- #my($index) = $self->name. "__". $_ . "_idx";
- #$index =~ s/,\s*/_/g;
- my $index = $self->name. $indexnum++;
- "CREATE INDEX $index ON ". $self->name. " ($_)\n"
- } $self->index->sql_list
- if $self->index;
-
- #$self->primary_key($saved_pkey) if $saved_pkey;
- $dbh->disconnect if $created_dbh;
- @r;
-}
-
-#
-
-sub _null_sth {
- my($dbh, $table) = @_;
- my $sth = $dbh->prepare("SELECT * FROM $table WHERE 1=0")
- or die $dbh->errstr;
- $sth->execute or die $sth->errstr;
- $sth;
-}
-
-=back
-
-=head1 AUTHOR
-
-Ivan Kohler <ivan-dbix-dbschema@420.am>
-
-Thanks to Mark Ethan Trostler <mark@zzo.com> for a patch to allow tables
-with no indices.
-
-=head1 COPYRIGHT
-
-Copyright (c) 2000 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-=head1 BUGS
-
-sql_create_table() has database-specific foo that probably ought to be
-abstracted into the DBIx::DBSchema::DBD:: modules.
-
-sql_create_table may change or destroy the object's data. If you need to use
-the object after sql_create_table, make a copy beforehand.
-
-Some of the logic in new_odbc might be better abstracted into Column.pm etc.
-
-=head1 SEE ALSO
-
-L<DBIx::DBSchema>, L<DBIx::DBSchema::ColGroup::Unique>,
-L<DBIx::DBSchema::ColGroup::Index>, L<DBIx::DBSchema::Column>, L<DBI>
-
-=cut
-
-1;
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST
deleted file mode 100644
index b04de25..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST
+++ /dev/null
@@ -1,19 +0,0 @@
-Changes
-MANIFEST
-MANIFEST.SKIP
-README
-TODO
-Makefile.PL
-DBSchema.pm
-t/load.t
-t/load-mysql.t
-t/load-pg.t
-DBSchema/Table.pm
-DBSchema/ColGroup.pm
-DBSchema/ColGroup/Index.pm
-DBSchema/ColGroup/Unique.pm
-DBSchema/Column.pm
-DBSchema/DBD.pm
-DBSchema/DBD/mysql.pm
-DBSchema/DBD/Pg.pm
-DBSchema/DBD/Sybase.pm
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST.SKIP b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST.SKIP
deleted file mode 100644
index ae335e7..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/MANIFEST.SKIP
+++ /dev/null
@@ -1 +0,0 @@
-CVS/
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Makefile.PL b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Makefile.PL
deleted file mode 100644
index a10e4da..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/Makefile.PL
+++ /dev/null
@@ -1,11 +0,0 @@
-use ExtUtils::MakeMaker;
-# See lib/ExtUtils/MakeMaker.pm for details of how to influence
-# the contents of the Makefile that is written.
-WriteMakefile(
- 'NAME' => 'DBIx::DBSchema',
- 'VERSION_FROM' => 'DBSchema.pm', # finds $VERSION
- 'PREREQ_PM' => {
- 'DBI' => 0,
- 'FreezeThaw' => 0,
- },
-);
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/README b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/README
deleted file mode 100644
index 8911ea4..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/README
+++ /dev/null
@@ -1,42 +0,0 @@
-DBIx::DBSchema
-
-Copyright (c) 2000-2002 Ivan Kohler
-Copyright (c) 2000 Mail Abuse Prevention System LLC
-All rights reserved.
-This program is free software; you can redistribute it and/or modify it under
-the same terms as Perl itself.
-
-This module implements an OO-interface to database schemas. Using this module,
-you can create a database schema with an OO Perl interface. You can read the
-schema from an existing database. You can save the schema to disk and restore
-it from different process. Most importantly, DBIx::DBSchema can write SQL
-CREATE statements for different databases from a single source.
-
-Currently supported databases are MySQL, PostgreSQL and Sybase.
-DBIx::DBSchema will attempt to use generic SQL syntax for other databases.
-Assistance adding support for other databases is welcomed. See the
-DBIx::DBSchema::DBD manpage, "Driver Writer's Guide and Base Class".
-
-To install:
- perl Makefile.PL
- make
- make test # nothing substantial yet
- make install
-
-Documentation will then be available via `man DBIx::DBSchema' or
-`perldoc DBIx::DBSchema'.
-
-Anonymous CVS access is available:
- $ export CVSROOT=":pserver:anonymous@cleanwhisker.420.am:/home/cvs/cvsroot"
- $ cvs login
- (Logging in to anonymous@cleanwhisker.420.am)
- CVS password: anonymous
- $ cvs checkout DBIx-DBSchema
-as well as <http://www.420.am/cgi-bin/cvsweb/DBIx-DBSchema>.
-
-A mailing list is available. Send a blank message to
-<ivan-dbix-dbschema-users-subscribe@420.am>.
-
-Homepage: <http://www.420.am/dbix-dbschema>
-
-$Id: README,v 1.1 2004-04-29 09:21:27 ivan Exp $
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/TODO b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/TODO
deleted file mode 100644
index e75850b..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/TODO
+++ /dev/null
@@ -1,6 +0,0 @@
-port and test with additional databases
-
-sql CREATE TABLE output should convert integers
-(i.e. use DBI qw(:sql_types);) to local types using DBI->type_info plus a hash
-to fudge things
-
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-mysql.t b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-mysql.t
deleted file mode 100644
index 78818c1..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-mysql.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n"; }
-END {print "not ok 1\n" unless $loaded;}
-use DBIx::DBSchema::DBD::mysql;
-$loaded = 1;
-print "ok 1\n";
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-pg.t b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-pg.t
deleted file mode 100644
index 93fcf4a..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load-pg.t
+++ /dev/null
@@ -1,12 +0,0 @@
-print "1..1\n";
-eval "use DBD::Pg 1.32";
-if ( length($@) ) {
- print "ok 1 # Skipped: DBD::Pg 1.32 required for Pg";
-} else {
- eval "use DBIx::DBSchema::DBD::Pg;";
- if ( length($@) ) {
- print "not ok 1\n";
- } else {
- print "ok 1\n";
- }
-}
diff --git a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load.t b/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load.t
deleted file mode 100644
index 67ea44b..0000000
--- a/install/5.005/DBIx-DBSchema-0.23-5.005kludge/t/load.t
+++ /dev/null
@@ -1,5 +0,0 @@
-BEGIN { $| = 1; print "1..1\n"; }
-END {print "not ok 1\n" unless $loaded;}
-use DBIx::DBSchema;
-$loaded = 1;
-print "ok 1\n";
diff --git a/install/centos/3/INSTALL b/install/centos/3/INSTALL
deleted file mode 100644
index 9228f57..0000000
--- a/install/centos/3/INSTALL
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/bin/sh
-
-yum install cvs perl perl-DateManip perl-HTML-Parser \
- perl-HTML-Tagset perl-URI perl-libwww-perl perl-CPAN \
- rsync screen zsh lftp cvs autoconf \
- gcc gd \
- rh-postgresql rh-postgresql-docs rh-postgresql-libs \
- rh-postgresql-server rh-postgresql-devel
-
-
-perl -MCPAN -e"install Net::Whois::Raw, Business::CreditCard, \
- File::CounterFile, String::Approx, Text::Template, \
- FreezeThaw, DBIx::DBSchema, \
- Net::SSH, String::ShellQuote, Net::SCP, \
- HTML::Mason, Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Cache::Cache, IPC::ShareLite, Locale::SubCountry, \
- Crypt::PasswdMD5, \
- Locale::SubCountry, DBI, DBD::Pg, \
- File::Temp, Storable, JavaScript::RPC::Server::CGI"
-
-#RT
-#perl -MCPAN -e "install Digest::MD5, Test::Inline, Class::ReturnValue, DBIx::SearchBuilder, HTML::Scrubber, Log::Dispatch, Locale::Maketext::Fuzzy, MIME::Entity, Text::Wrapper, Time::ParseDate, Term::ReadKey, Text::Autoformat, Text::Quoted, Tree::Simple, Module::Versions::Report"
-
-lftpget http://dag.wieers.com/packages/apt/apt-0.5.15cnc6-3.1.el3.dag.i386.rpm
-rpm -i apt-0.5.15cnc6-3.1.el3.dag.i386.rpm
-apt-get update
-apt-get install perl-GD perl-MailTools perl-TimeDate perl-NetAddr-IP
-
-perl -MCPAN -e"install Chart::Base"
-
-#apachetoolbox
-apt-get remove httpd
-yum install krb5-devel openssl-devel
-lftpget http://umn.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
-tar xzvf Apachetoolbox-install-1.5.72.tar.gz
-cd Apachetoolbox-1.5.72
-./install.sh
-# export INCLUDES="-I/usr/kerberos/include"
-cd apache_1.3.31;make
-make certificate TYPE=dummy
-make install
-ln -s /usr/local/apache/bin/htpasswd /usr/local/bin
-cp httpd-init /etc/init.d/httpd-freeside
-chmod a+rx /etc/init.d/httpd-freeside
-/sbin/chkconfig httpd-freeside on
-#end apachetoolbox
-
-/usr/sbin/useradd freeside
-
-/sbin/chkconfig rhdb on
-/etc/init.d/rhdb start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-LANG=C su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/centos/3/httpd-init b/install/centos/3/httpd-init
deleted file mode 100644
index dca95cf..0000000
--- a/install/centos/3/httpd-init
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/bash
-#
-# Startup script for the Apache Web Server
-#
-# chkconfig: - 85 15
-# description: Apache is a World Wide Web server. It is used to serve \
-# HTML files and CGI.
-# processname: httpd
-# Source function library.
-
-# Path to the apachectl script, server binary, and short-form for messages.
-apachectl=/usr/local/apache/bin/apachectl
-prog=httpd
-RETVAL=0
-
-start() {
- echo -n $"Starting $prog: "
- $apachectl startssl
- RETVAL=$?
-}
-stop() {
- echo -n $"Stopping $prog: "
- $apachectl stop
- RETVAL=$?
-}
-
-# See how we were called.
-case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart)
- stop
- sleep 3
- start
- ;;
- graceful|help|configtest)
- $apachectl $@
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $prog {start|stop|restart|graceful|help|configtest}"
- exit 1
-esac
-
-exit $RETVAL
-
diff --git a/install/debian/3.0/INSTALL b/install/debian/3.0/INSTALL
deleted file mode 100644
index 019d515..0000000
--- a/install/debian/3.0/INSTALL
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh
-
-echo "deb http://pouncequick.420.am/~ivan/freeside-woody/ ./" >>/etc/apt/sources.list
-
-apt-get update
-apt-get install screen zsh libapache-mod-ssl libapache-mod-perl rsync \
- postgresql cvs fsh \
- liburi-perl libhtml-tagset-perl libnet-perl liblocale-codes-perl \
- libnet-whois-perl libwww-perl libbusiness-creditcard-perl \
- libmailtools-perl libtimedate-perl libdate-manip-perl \
- libfile-counterfile-perl libfreezethaw-perl libstring-approx-perl \
- libtext-template-perl libdbi-perl libdbd-pg-perl \
- libdbix-datasource-perl libdbix-dbschema-perl libnet-ssh-perl \
- libstring-shellquote-perl libnet-scp-perl libapache-asp-perl \
- libtie-ixhash-perl libtime-duration-perl \
- libhtml-widgets-selectlayers-perl libstorable-perl \
- libapache-dbi-perl libcache-cache-perl libdbd-mysql-perl \
- libcrypt-passwdmd5-perl libnetaddr-ip-perl libfile-temp-perl \
- libnet-whois-raw-perl libchart-perl
-
-useradd freeside
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
diff --git a/install/debian/3.1/INSTALL b/install/debian/3.1/INSTALL
deleted file mode 100644
index c047660..0000000
--- a/install/debian/3.1/INSTALL
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/sh
-
-echo "deb http://420.am/~ivan/freeside-sarge/ ./" >>/etc/apt/sources.list
-
-apt-get update
-apt-get install make screen zsh cvs fsh rsync \
- apache libapache-mod-ssl libapache-mod-ssl-doc libapache-mod-perl \
- postgresql postgresql-contrib \
- tetex-base tetex-bin tetex-extra \
- gs lpr libpaper-utils psutils dialog psfontmgr \
- liburi-perl libhtml-tagset-perl libnet-perl \
- libwww-perl libbusiness-creditcard-perl \
- libmailtools-perl libtimedate-perl libdate-manip-perl \
- libfile-counterfile-perl libfreezethaw-perl libstring-approx-perl \
- libtext-template-perl libdbi-perl libdbd-pg-perl \
- libdbix-dbschema-perl libnet-ssh-perl \
- libstring-shellquote-perl libnet-scp-perl libhtml-mason-perl \
- libtie-ixhash-perl libtime-duration-perl \
- libhtml-widgets-selectlayers-perl \
- libapache-dbi-perl libcache-cache-perl libdbd-mysql-perl \
- libcrypt-passwdmd5-perl libnetaddr-ip-perl \
- libnet-whois-raw-perl libchart-perl \
- libmime-perl libapache-session-perl libhtml-tree-perl \
- libhtml-format-perl libtest-inline-perl libclass-returnvalue-perl \
- libdbix-searchbuilder-perl liblog-dispatch-perl \
- liblocale-maketext-lexicon-perl liblocale-maketext-fuzzy-perl \
- libtext-wrapper-perl libtime-modules-perl libterm-readkey-perl \
- libtext-autoformat-perl libtext-quoted-perl libregexp-common-perl \
- libhtml-scrubber-perl libtree-simple-perl liblocale-subcountry-perl \
- libtext-csv-perl libspreadsheet-writeexcel-perl libfrontier-rpc-perl \
- libjavascript-rpc-perl libipc-run3-perl libjson-perl
-
-useradd freeside
-groupadd freeside
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-perl -p -i.fsbackup -e 's/^(User|Group) .*/$1 freeside/' /etc/apache/httpd.conf
-( cd /usr/share/doc/libapache-mod-ssl/examples/;
- cp mod-ssl.conf vhost.conf.gz /etc/apache/conf.d
-)
-gunzip /etc/apache/conf.d/vhost.conf.gz
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-freeside-adduser fs_queue
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make configure-rt
-
-#muck with pg perms
-make create-rt
-#unmuck pg perms
-
-make deploy
diff --git a/install/fedora/fc1/INSTALL b/install/fedora/fc1/INSTALL
deleted file mode 100755
index c347609..0000000
--- a/install/fedora/fc1/INSTALL
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/bin/sh
-
-wget --passive-ftp --continue http://download.fedora.us/fedora/fedora/1/i386/RPMS.stable/apt-0.5.15cnc5-0.fdr.10.1.i386.rpm
-rpm -i apt*i386.rpm
-
-cp sources.list /etc/apt/sources.list
-
-apt-get update
-
-apt-get install perl-Devel-Symdump perl-BSD-Resource
-
-wget --passive-ftp --continue http://linux.reb00t.com/fedora-current/RPMS/apache-1.3.29-1.n0i.2.MPSSL.i686.rpm http://linux.reb00t.com/fedora-current/RPMS/mm-1.3.0-0.n0i.2.i686.rpm http://mirrors.kernel.org/fedora.us/fedora/fedora/1.91/i386/RPMS.os/db4-4.2.52-3.1.i386.rpm
-
-apt-get remove httpd mod_perl
-
-rpm -i mm-1.3.0-0.n0i.2.i686.rpm db4-4.2.52-3.1.i386.rpm apache-1.3.29-1.n0i.2.MPSSL.i686.rpm
-
-/sbin/chkconfig httpd on
-
-#edit /etc/httpd/conf/httpd.conf, remove mod_auth_db LoadMoudle and AddModule
-
-echo 'OPTIONS="-DHAVE_PERL -DHAVE_SSL"' >>/etc/sysconfig/apache
-
-/etc/init.d/httpd start
-
-echo 'RPM::Allow-Duplicated { "^db4$"; };' >>/etc/apt/apt.conf
-
-wget --continue http://atrpms.physik.fu-berlin.de/RPM-GPG-KEY.atrpms
-rpm --import RPM-GPG-KEY.atrpms
-wget --continue http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
-rpm --import RPM-GPG-KEY.dag.txt
-
-apt-get install perl-DBD-MySQL perl-DBI perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server postgresql-devel screen zsh lftp cvs gcc gd perl-GD perl-MailTools perl-FreezeThaw perl-NetAddr-IP perl-Chart
-
-perl -MCPAN -e"install Net::Whois::Raw, Business::CreditCard, \
- File::CounterFile, String::Approx, Text::Template, \
- DBIx::DataSource, DBIx::DBSchema, Net::SSH, \
- String::ShellQuote, Net::SCP, Apache::ASP, \
- Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Cache::Cache, IPC::ShareLite, Locale::SubCountry, \
- DBD::Pg, Crypt::PasswdMD5 "
-
-
-#remove perl & ssl LoadModule lines from /etc/httpd/conf/httpd.conf
-#as they're statically linked (?)
-
-/usr/sbin/useradd freeside
-chsh freeside -s /bin/bash
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-echo -e '\n\ny\nn" | su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/fedora/fc1/sources.list b/install/fedora/fc1/sources.list
deleted file mode 100644
index 9b36242..0000000
--- a/install/fedora/fc1/sources.list
+++ /dev/null
@@ -1,12 +0,0 @@
-# Fedora Core (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/1/i386 os updates
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/1/i386 os updates
-
-# Fedora Extras (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/1/i386 stable
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/1/i386 stable
-
-### Dag Apt Repository for Red Hat Fedora Core 1 (rhfc1)
-rpm http://apt.sw.be redhat/fc1/en/i386 dag
-
-rpm http://apt.physik.fu-berlin.de redhat/9/en/i386 at-testing
diff --git a/install/fedora/fc2/INSTALL b/install/fedora/fc2/INSTALL
deleted file mode 100755
index d6c0a4f..0000000
--- a/install/fedora/fc2/INSTALL
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-
-wget --passive-ftp --continue http://download.fedora.us/fedora/fedora/2/i386/RPMS.stable/apt-0.5.15cnc6-0.fdr.11.2.i386.rpm
-rpm -i apt*i386.rpm
-
-wget --continue http://atrpms.physik.fu-berlin.de/RPM-GPG-KEY.atrpms
-rpm --import RPM-GPG-KEY.atrpms
-wget --continue http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
-rpm --import RPM-GPG-KEY.dag.txt
-
-#echo 'RPM::Allow-Duplicated { "^db4$"; };' >>/etc/apt/apt.conf
-
-#might need to uncomment
-# GPG-Check "false";
-#in /etc/apt/apt.conf
-
-apt-get update
-cp sources.list /etc/apt/sources.list
-rm /etc/apt/sources.list.d/mirror-select.list
-apt-get update
-
-apt-get remove httpd mod_perl
-
-apt-get install perl-Devel-Symdump perl-BSD-Resource perl-DBD-MySQL perl-DBI perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server postgresql-devel screen zsh lftp cvs gcc gd perl-GD perl-MailTools perl-FreezeThaw perl-NetAddr-IP perl-Chart perl-Text-Template perl-Cache-Cache
-
-#for rt
-#apt-get install perl-Apache-Session perl-MIME-tools perl-TermReadKey perl-MLDBM perl-MLDBM-Sync
-
-perl -MCPAN -e"install Net::Whois::Raw, Business::CreditCard, \
- File::CounterFile, String::Approx, Text::Template, \
- DBIx::DataSource, DBIx::DBSchema, Net::SSH, \
- String::ShellQuote, Net::SCP, HTML::Mason, \
- Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Locale::SubCountry, \
- DBD::Pg, Crypt::PasswdMD5 "
-
-
-#apachetoolbox
-#lftpget http://umn.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
-#apache config
-#apache init script
-
-/usr/sbin/useradd freeside
-chsh freeside -s /bin/bash
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-echo -e '\n\ny\nn' | su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-ln -s /usr/local/apache/bin/htpasswd /usr/local/bin/
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/fedora/fc2/sources.list b/install/fedora/fc2/sources.list
deleted file mode 100644
index 038db1e..0000000
--- a/install/fedora/fc2/sources.list
+++ /dev/null
@@ -1,12 +0,0 @@
-# Fedora Core (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/2/i386 os updates
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/2/i386 os updates
-
-# Fedora Extras (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/2/i386 stable
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/2/i386 stable
-
-### Dag Apt Repository for Red Hat Fedora Core 2 (rhfc2)
-rpm http://apt.sw.be redhat/fc2/en/i386 dag
-
-rpm http://apt.physik.fu-berlin.de fedora/2/en/i386 at-testing
diff --git a/install/fedora/fc3/INSTALL b/install/fedora/fc3/INSTALL
deleted file mode 100755
index 93f746b..0000000
--- a/install/fedora/fc3/INSTALL
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-
-wget --passive-ftp --continue http://download.fedora.us/fedora/fedora/3/i386/RPMS.extras/apt-0.5.15cnc6-16.r362.i386.rpm
-rpm -i apt*i386.rpm
-
-wget --continue http://atrpms.physik.fu-berlin.de/RPM-GPG-KEY.atrpms
-rpm --import RPM-GPG-KEY.atrpms
-wget --continue http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
-rpm --import RPM-GPG-KEY.dag.txt
-
-#echo 'RPM::Allow-Duplicated { "^db4$"; };' >>/etc/apt/apt.conf
-
-#might need to uncomment
-# GPG-Check "false";
-#in /etc/apt/apt.conf
-
-apt-get update
-cp sources.list /etc/apt/sources.list
-rm /etc/apt/sources.list.d/mirror-select.list
-apt-get update
-
-apt-get -f install
-#apt-get remove httpd mod_perl
-pt-get remove httpd mod_perl httpd-manual httpd-suexec mod_auth_kerb mod_auth_mysql mod_auth_pgsql mod_authz_ldap mod_python mod_ssl php system-config-httpd MyODBC MySQL-python php php-pgsql php-mysql php-pear php-odbc php-ldap mod_perl
-
-apt-get install perl-Devel-Symdump perl-BSD-Resource perl-DBD-MySQL perl-DBI perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server postgresql-devel screen zsh lftp cvs gcc gd perl-GD perl-MailTools perl-FreezeThaw perl-NetAddr-IP perl-Chart perl-Text-Template perl-Cache-Cache perl-MIME-tools perl-Text-Template openssl openssl-devel perl-Text-CSV_XS perl-Frontier-RPC
-
-#for rt
-#apt-get install perl-Apache-Session perl-TermReadKey perl-MLDBM perl-MLDBM-Sync perl-Log-Dispatch perl-Term-ReadKey
-
-perl -MCPAN -e"install Net::Whois::Raw, Business::CreditCard, \
- File::CounterFile, String::Approx, \
- DBIx::DataSource, DBIx::DBSchema, Net::SSH, \
- String::ShellQuote, Net::SCP, HTML::Mason, \
- Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Locale::SubCountry, \
- DBD::Pg, Crypt::PasswdMD5, Spreadsheet::WriteExcel, \
- Fax::Hylafax::Client, JavaScript::RPC::Server::CGI"
-
-#for rt
-#perl -MCPAN -e"install HTML::TreeBuilder, HTML::FormatText, Test::Inline, \
-# Class::ReturnValue, DBIx::SearchBuilder, \
-# Log::Dispatch, Locale::Maketext::Lexicon, \
-# Locale::Maketext::Fuzzy, Text::Wrapper, \
-# Time::ParseDate, Text::AutoFormat, Text::Quoted, \
-# Regexp::Common, HTML::Scrubber, Tree::Simple"
-
-
-#apachetoolbox
-#lftpget http://easynews.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
-#apache config
-#apache init script
-
-/usr/sbin/useradd freeside
-chsh freeside -s /bin/bash
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-echo -e '\n\ny\nn' | su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-ln -s /usr/local/apache/bin/htpasswd /usr/local/bin/
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/fedora/fc3/sources.list b/install/fedora/fc3/sources.list
deleted file mode 100644
index d299e9d..0000000
--- a/install/fedora/fc3/sources.list
+++ /dev/null
@@ -1,12 +0,0 @@
-# Fedora Core (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/3/i386 os updates
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/3/i386 os updates
-
-# Fedora Extras (Kernel.org, San Francisco California, USA)
-rpm http://mirrors.kernel.org/fedora.us/fedora fedora/3/i386 extras
-rpm-src http://mirrors.kernel.org/fedora.us/fedora fedora/3/i386 extras
-
-### Dag Apt Repository for Red Hat Fedora Core 3 (rhfc3)
-rpm http://apt.sw.be fedora/3/en/i386 dag
-
-rpm http://apt.physik.fu-berlin.de fedora/3/en/i386 at-testing
diff --git a/install/freebsd/INSTALL b/install/freebsd/INSTALL
deleted file mode 100755
index e8c92b0..0000000
--- a/install/freebsd/INSTALL
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/sh
-
-# if /usr/local/sbin/portupgrade does not exist
-# then install portupgrade
-( cd /usr/ports/sysutils/portupgrade
- #??? setenv WITH_OPENSSL_PORT "yes"
- make install clean
-)
-
-# ???
-##rehash
-#pkgdb -u
-
-# if cvsup is not installed, then
-portinstall -PR cvsup-without-gui
-
-#cp /usr/share/examples/cvsup/ports-supfile /root
-#perl -pi -e 's/CHANGE_THIS/cvsup13/;' /root/ports-supfile
-#cvsup /root/ports-supfile
-
-# choose the fastest cvsup server, then cvsup update
-/usr/local/bin/cvsup -g -L 2 -h cvsup2.freebsd.org /usr/share/examples/cvsup/ports-supfile
-
-# Update the ports database
-#/usr/local/sbin/portsdb -Uu
-portsdb -Uu
-
-portinstall -PR portupgrade
-
-portinstall -PR lang/perl5.8
-# if FreeBSD 4.x, then
-/usr/local/bin/use.perl port
-
-#portupgrade -f `(pkg_info -R perl-5\* |tail +4; \
-# find /usr/local/lib/perl5/site_perl/5.[68].[1245] -type f -print0 \
-# | xargs -0 pkg_which -fv | sed -e '/: ?/d' -e 's/.*: //')|sort -u`
-
-
-for port in `grep -v '^ *#' ports`; do
- portinstall -PR $port
-done
-
-for a in JavaScript::RPC::Server::CGI Chart::LinesPoints Frontier::RPC2; do perl -MCPAN -e"install $a"; done
-
-su -l pgsql -c initdb
-echo '
-postgresql_enable="YES"
-postgresql_data="/usr/local/pgsql/data"
-postgresql_flags="-w -s -m fast"
-' >>/etc/rc.conf
-
-/usr/local/etc/rc.d/010.pgsql.sh start
-
-pw user add freeside -m
-
-su -l pgsql -c 'createuser -P freeside'
-
-su -l freeside -c 'createdb freeside'
-
-#?
-cd ../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-
-#edit apache config, etc.
-
-echo '
-apache_enable="YES"
-apache_flags="-DSSL"
-' >>/etc/rc.conf
-
-make deploy
-
diff --git a/install/freebsd/ports b/install/freebsd/ports
deleted file mode 100644
index 90b49e6..0000000
--- a/install/freebsd/ports
+++ /dev/null
@@ -1,56 +0,0 @@
-shells/zsh
-misc/screen
-security/sudo
-ftp/lftp
-lang/perl5.8
-www/apache13-modssl
-www/mod_perl
-net/rsync
-databases/postgresql74-server
-#databases/postgresql74-client
-misc/p5-Array-PrintCols
-devel/p5-Term-Query
-converters/p5-MIME-Base64
-security/p5-Digest-MD5
-security/p5-MD5
-net/p5-URI
-www/p5-HTML-Tagset
-www/p5-HTML-Parser
-net/p5-Net
-misc/p5-Locale-Codes
-net/p5-Net-Whois-Raw
-www/p5-libwww
-finance/p5-Business-CreditCard
-devel/p5-Data-ShowTable
-mail/p5-Mail-Tools
-devel/p5-TimeDate
-devel/p5-Date-Manip
-misc/p5-File-CounterFile
-devel/p5-FreezeThaw
-devel/p5-String-Approx
-textproc/p5-Text-Template
-databases/p5-DBI
-databases/p5-DBD-Pg
- #databases/p5-DBD-mysql
- #databases/p5-DBIx-DataSource
-database/p5-DBIx-DBSchema
-net/p5-Net-SSH
-textproc/p5-String-ShellQuote
-net/p5-Net-SCP
- #www/p5-Apache-ASP
-www/p5-HTML-Mason
-devel/p5-Tie-IxHash
-devel/p5-Time-Duration
-www/p5-HTML-Widgets-SelectLayers
-devel/p5-Storable
-www/p5-Apache-DBI
-devel/p5-Cache-Cache
-security/p5-Crypt-PasswdMD5
-net-mgmt/p5-NetAddr-IP
-graphics/p5-GD
-textproc/p5-Spreadsheet-WriteExcel
-textproc/p5-Text-CSV_XS
-misc/p5-Locale-SubCountry
-devel/p5-IO-stringy
-textproc/p5-XML-Parser
-mail/p5-MIME-Tools
diff --git a/install/openbsd/INSTALL b/install/openbsd/INSTALL
deleted file mode 100644
index 1beef92..0000000
--- a/install/openbsd/INSTALL
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-
-DIR=`pwd`
-
-#cd /usr/ports
-#cvs -q -d anoncvs@anoncvs6.usa.openbsd.org:/cvs up -r OPENBSD_`uname -r | perl -pe 's/\./_/g;'` -Pd
-
-for a in `grep -v '^ *#' $DIR/ports`
-do cd /usr/ports/$a
- make install
-done
-
-for a in `grep -v '^ *#' $DIR/cpan`
-do perl -MCPAN -e "install $a"
-done
-
-#from /usr/local/share/doc/postgresql/README.OpenBSD
-useradd -c "PostgreSQL Admin User" -g =uid -m -d /var/postgresql -s /bin/sh postgresql
-
-su -l postgresql -c 'mkdir /var/postgresql/data'
-su -l postgresql -c 'initdb -D /var/postgresql/data'
-
-cat <<END >>/etc/rc.local
-if [ -x /usr/local/bin/pg_ctl ]; then
- su -l postgresql -c "/usr/local/bin/pg_ctl start \
- -D /var/postgresql/data -l /var/postgresql/logfile \
- -o '-D /var/postgresql/data'"
- echo -n ' postgresql'
-fi
-END
-
-cat <<END >>/etc/rc.shutdown
-if [ -f /var/postgresql/data/postmaster.pid ]; then
- su -l postgresql -c "/usr/local/bin/pg_ctl stop -m fast \
- -D /var/postgresql/data"
- rm -f /var/postgresql/data/postmaster.pid
-fi
-
-su -l postgresql -c "/usr/local/bin/pg_ctl start \
- -D /var/postgresql/data -l /var/postgresql/logfile \
- -o '-D /var/postgresql/data'"
-
-useradd -c "Freeside" -g =uid -m freeside
-su -l postgresql -c 'createuser -P freeside'
-su -l freeside -c 'createdb freeside'
-
-#?
-cd ../..
-make install-perl-modules
-make create-config
-make deploy
-
-#edit apache config, etc.
-
diff --git a/install/openbsd/cpan b/install/openbsd/cpan
deleted file mode 100644
index 4304b72..0000000
--- a/install/openbsd/cpan
+++ /dev/null
@@ -1,15 +0,0 @@
-DBIx::DBSchema
-Time::Duration
-Business::CreditCard
-String::ShellQuote
-Net::SSH
-HTML::Mason
-HTML::Widgets::SelectLayers
-DBIx::DataSource
-Date::Manip
-String::Approx
-Tie::IxHash
-Date::Parse
-File::CounterFile
-Net::SCP
-Mail::Internet
diff --git a/install/openbsd/ports b/install/openbsd/ports
deleted file mode 100644
index 3e17d82..0000000
--- a/install/openbsd/ports
+++ /dev/null
@@ -1,24 +0,0 @@
-shells/zsh
-misc/screen
-#www/apache13-modssl
-www/mod_perl
-net/rsync
-databases/postgresql
-converters/p5-MIME-Base64
-security/p5-Digest-MD5
-security/p5-MD5
-www/p5-HTML-Tagset
-www/p5-HTML-Parser
-net/p5-libnet
-misc/p5-Locale-Codes
-net/p5-Net-Whois
-www/p5-libwww
-#mail/p5-Mail-Tools
-devel/p5-FreezeThaw
-textproc/p5-Text-Template
-databases/p5-DBI
-databases/p5-DBD-Pg
-#databases/p5-DBD-Msql-Mysql
-www/p5-Apache-ASP
-devel/p5-Storable
-www/p5-Apache-DBI
diff --git a/install/redhat/7.3/INSTALL b/install/redhat/7.3/INSTALL
deleted file mode 100644
index d2f60cb..0000000
--- a/install/redhat/7.3/INSTALL
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-
-wget --passive-ftp ftp://apt-rpm.tuxfamily.org/apt/redhat/7.3/en/i386/RPMS.extra/apt-*i386.rpm
-rpm -i apt*i386.rpm
-cp sources.list /etc/apt/
-apt-get update; apt-get update
-apt-get install apache mod_ssl mod_perl perl-CGI perl-CPAN perl-DBD-MySQL perl-DBD-Pg perl-DBI perl-DateManip perl-Digest-MD5 perl-HTML-Parser perl-HTML-Tagset perl-MIME-Base64 perl-Storable perl-TimeDate perl-URI perl-libnet perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server screen zsh lftp cvs #openssh
-
-wget --passive-ftp --continue http://download.atrpms.net/production/packages/redhat-7.3-i386/atrpms/atrpms-51-1.rh7.3.at.noarch.rpm http://download.atrpms.net/production/packages/redhat-7.3-i386/atrpms/atrpms-package-config-51-1.rh7.3.at.noarch.rpm http://download.atrpms.net/production/packages/redhat-7.3-i386/atrpms/gd-2.0.15-1_6.rh7.3.at.i386.rpm http://download.atrpms.net/production/packages/redhat-7.3-i386/atrpms/gd-devel-2.0.15-1_6.rh7.3.at.i386.rpm http://download.atrpms.net/production/packages/redhat-7.3-i386/atrpms/perl-GD-2.11-7.rh7.3.at.i386.rpm
-
-#rpm -i atrpms-package-config-51-1.rh7.3.at.noarch.rpm
-rpm -i atrpms-51-1.rh7.3.at.noarch.rpm
-rpm -i gd-2.0.15-1_6.rh7.3.at.i386.rpm
-rpm -i perl-GD-2.11-7.rh7.3.at.i386.rpm
-
-perl -MCPAN -e"install Locale::Country, Net::Whois, Business::CreditCard, \
- Mail::Internet, File::CounterFile, FreezeThaw, \
- String::Approx, Text::Template, DBIx::DataSource, \
- DBIx::DBSchema, Net::SSH, String::ShellQuote, \
- Net::SCP, Apache::ASP, Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, Cache::Cache"
-
-useradd freeside
-
-chkconfig postgresql on
-/etc/init.d/postgresql start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/redhat/7.3/sources.list b/install/redhat/7.3/sources.list
deleted file mode 100644
index 9a9ad5c..0000000
--- a/install/redhat/7.3/sources.list
+++ /dev/null
@@ -1,2 +0,0 @@
-rpm ftp://apt-rpm.tuxfamily.org/apt redhat/7.3/en/i386 os updates extra
-rpm-src ftp://apt-rpm.tuxfamily.org/apt redhat/7.3/en/i386 os updates extra
diff --git a/install/redhat/8/INSTALL b/install/redhat/8/INSTALL
deleted file mode 100755
index e6107d9..0000000
--- a/install/redhat/8/INSTALL
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/sh
-
-rpm -Fvh http://redhat.usu.edu/mirrors/apt4rpm/apt-0.5.4cnc8-fr1.i386.rpm
-
-cp sources.list /etc/apt/
-apt-get update; apt-get update
-#apt-get install apache mod_ssl mod_perl perl-CGI perl-CPAN perl-DBD-MySQL perl-DBD-Pg perl-DBI perl-DateManip perl-Digest-MD5 perl-HTML-Parser perl-HTML-Tagset perl-MIME-Base64 perl-Storable perl-TimeDate perl-URI perl-libnet perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server screen zsh lftp cvs #openssh
-
-#ftp://ftp.pbone.net/mirror/www.aucs.org/rpmcenter/packages/apache13-php43-mods-rh8
-
-apt-get install perl-CGI perl-CPAN perl-DBD-MySQL perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync krb5-libs postgresql-server postgresql postgresql-docs postgresql-libs postgresql-devel screen zsh lftp cvs gcc tetex-fonts tetex-latex tetex tetex-dvips ghostscript ghostscript-fonts libpng-devel freetype-devel libjpeg-devel #gd openssh
-
-#lftpget http://download.atrpms.net/testing/packages/redhat-8.0-i386/atrpms/gd-2.0.28-0_9.rh8.0.at.i386.rpm
-lftpget http://download.atrpms.net/testing/packages/redhat-8.0-i386/atrpms/libgd2-2.0.28-0_9.rh8.0.at.i386.rpm http://download.atrpms.net/testing/packages/redhat-8.0-i386/atrpms/gd-devel-2.0.28-0_9.rh8.0.at.i386.rpm
-
-rpm -i libgd2-2.0.28-0_9.rh8.0.at.i386.rpm gd-devel-2.0.28-0_9.rh8.0.at.i386.rpm
-
-perl -MCPAN -e"install Locale::Country, Net::Whois, Business::CreditCard,
- Mail::Internet, File::CounterFile, FreezeThaw,
- String::Approx, Text::Template, DBIx::DataSource,
- DBIx::DBSchema, Net::SSH, String::ShellQuote,
- Net::SCP, Apache::ASP, Tie::IxHash, Time::Duration,
- HTML::Widgets::SelectLayers, Apache::DBI, Cache::Cache,
- Test::Pod, NetAddr::IP, IPC::ShareLite,
- Chart::LinesPoints, DBI, DBD::Pg, HTML::Mason,
- Net::Whois::Raw, Crypt::PasswdMD5, File::Temp, Storable"
-
-#apachetoolbox i guess
-
-/usr/sbin/useradd freeside
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/redhat/8/README.insecure b/install/redhat/8/README.insecure
deleted file mode 100644
index 14f1bd0..0000000
--- a/install/redhat/8/README.insecure
+++ /dev/null
@@ -1,6 +0,0 @@
-Red Hat has ceased support for all pre-enterprise releases.
-
-Fedora Legacy (http://www.fedoralegacy.org) is only supporting 7.3 and 9.
-
-Red Hat 8.0 is NOT RECOMMENDED. Please consider using a supported
-distribution, such as 7.3, 9, or Fedora core.
diff --git a/install/redhat/8/sources.list b/install/redhat/8/sources.list
deleted file mode 100644
index 40a05ca..0000000
--- a/install/redhat/8/sources.list
+++ /dev/null
@@ -1 +0,0 @@
-rpm http://download.fedoralegacy.org/apt redhat/8.0/i386 os updates legacy-utils
diff --git a/install/redhat/9/INSTALL b/install/redhat/9/INSTALL
deleted file mode 100644
index ad69d9b..0000000
--- a/install/redhat/9/INSTALL
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/bin/sh
-
-wget --passive-ftp --continue http://download.fedora.us/fedora/redhat/9/i386/RPMS.stable/apt-0.5.5cnc6-0.fdr.8.rh90.i386.rpm
-rpm -i apt*i386.rpm
-#cp sources.list /etc/apt/
-apt-get update
-
-apt-get install krb5-devel perl-CGI perl-CPAN perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server screen zsh lftp cvs gcc # perl-DBD-MySQL # perl-suidperl gd openssh
-
-wget --passive-ftp --continue http://dl.atrpms.net/production/packages/redhat-9-i386/atrpms/perl-GD-2.16-10.rh9.at.i386.rpm http://dl.atrpms.net/production/packages/common/atrpms/atrpms-61-1.at.noarch.rpm http://dl.atrpms.net/testing/packages/redhat-9-i386/atrpms/gd-2.0.28-1_10.rh9.at.i386.rpm http://dl.atrpms.net/testing/packages/redhat-9-i386/atrpms/libgd2-2.0.28-1_10.rh9.at.i386.rpm
-
-#cp /etc/apt/apt.conf /etc/apt/apt.conf.real
-
-rpm -i atrpms*.rpm libgd2*i386.rpm gd-2*i386.rpm perl-GD*i386.rpm
-
-#mv /etc/apt/apt.conf.real /etc/apt/apt.conf
-
-apt-get install perl-MIME-tools
-
-perl -MCPAN -e"install Locale::Country, Business::CreditCard, \
- Mail::Internet, File::CounterFile, FreezeThaw, \
- String::Approx, Text::Template, DBIx::DataSource, \
- DBIx::DBSchema, Net::SSH, String::ShellQuote, \
- Net::SCP, HTML::Mason, Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Cache::Cache, Test::Pod, NetAddr::IP, IPC::ShareLite, \
- Chart::LinesPoints, Net::Whois::Raw, \
- Locale::SubCountry, Crypt::PasswdMD5, DBI, DBD::Pg, \
- JavaScript::RPC::Server::CGI, Text::CSV_XS, \
- Spreadsheet::WriteExcel, Frontier::RPC2, \
- File::Temp, Storable"
-
-apt-get remove httpd mod_perl mod_ssl
-#apachetoolbox
-lftpget http://easynews.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
-tar xzvf Apachetoolbox-install-1.5.72.tar.gz
-(cd Apachetoolbox-1.5.72; sh install.sh)
-# 4
-# 16
-# go
-# export INCLUDES="-I/usr/kerberos/include"
-cd apache_1.3.31;make
-#make certificate TYPE=dummy
-make install
-
-
-#apache config
-#apache init script
-
-/usr/sbin/useradd freeside
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/redhat/9/sources.list b/install/redhat/9/sources.list
deleted file mode 100644
index 6dcb3b4..0000000
--- a/install/redhat/9/sources.list
+++ /dev/null
@@ -1,2 +0,0 @@
-#rpm http://download.fedoralegacy.org/apt redhat/9/i386 os updates legacy-util
-rpm http://download.fedoralegacy.org/apt redhat/9/i386 os updates
diff --git a/install/redhat/es3/INSTALL b/install/redhat/es3/INSTALL
deleted file mode 100644
index 67e47ec..0000000
--- a/install/redhat/es3/INSTALL
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-#up2date cvs perl perl-DBD-MySQL perl-DBI perl-DateManip perl-HTML-Parser \
-up2date cvs perl perl-DateManip perl-HTML-Parser \
- perl-HTML-Tagset perl-URI perl-libwww-perl perl-CPAN \
- rsync screen zsh lftp cvs autoconf \
- gcc gd tetex tetex-afm tetex-dvips tetex-font tetex-latex
-
-up2date --src rh-postgresql rh-postgresql-docs rh-postgresql-libs \
- rh-postgresql-server rh-postgresql-devel
-
-##slony bits...
-#up2date rpm-build bison flex python-devel tcl-devel readline-devel zlib-devel openssl-devel krb5-devel pam-devel
-#mkdir /usr/src/redhat
-#rpm -i /var/spool/up2date/rh-postgresql-*.src.rpm
-#rpmbuild -bb /usr/src/redhat/SPECS/rh-postgresql.spec
-#apt-get remove rh-postgresql rh-postgresql-docs rh-postgresql-libs rh-postgresql-server rh-postgresql-devel
-#rpm -i /usr/src/redhat/RPMS/i386/rh-postgresql-7.3.8-2.i386.rpm /usr/src/redhat/RPMS/i386/rh-postgresql-devel-7.3.8-2.i386.rpm /usr/src/redhat/RPMS/i386/rh-postgresql-docs-7.3.8-2.i386.rpm /usr/src/redhat/RPMS/i386/rh-postgresql-libs-7.3.8-2.i386.rpm /usr/src/redhat/RPMS/i386/rh-postgresql-server-7.3.8-2.i386.rpm
-#
-#lftpget http://developer.postgresql.org/~wieck/slony1/download/slony1-1.0.5.tar.gz
-#tar xzvf slony1-1.0.5.tar.gz
-#cd slony1-1.0.5
-#./configure --with-pgsourcetree=/usr/src/redhat/BUILD/postgresql-7.3.8/
-#make
-#make install
-##edit /var/lib/pgsql/data/postgresql.conf: tcpip_socket = true
-##edit /var/lib/pgsql/data/pg_hba.conf (entries for both hosts on both):
-#host freeside freeside IP.ADDRESS 255.255.255.255 trust
-##end of slony bits
-
-perl -MCPAN -e"install Net::Whois::Raw, Business::CreditCard, \
- File::CounterFile, String::Approx, Text::Template, \
- FreezeThaw, DBIx::DBSchema, \
- Net::SSH, String::ShellQuote, Net::SCP, \
- HTML::Mason, Tie::IxHash, Time::Duration, \
- HTML::Widgets::SelectLayers, Apache::DBI, \
- Cache::Cache, IPC::ShareLite, Locale::SubCountry, \
- Crypt::PasswdMD5, \
- Locale::SubCountry, DBI, DBD::Pg, \
- File::Temp, Storable, JavaScript::RPC::Server::CGI"
-
-lftpget http://dag.wieers.com/packages/apt/apt-0.5.15cnc6-3.1.el3.dag.i386.rpm
-rpm -i apt-0.5.15cnc6-3.1.el3.dag.i386.rpm
-apt-get update
-apt-get install perl-GD perl-MailTools perl-TimeDate perl-NetAddr-IP
-
-perl -MCPAN -e"install Chart::Base"
-
-#apachetoolbox
-apt-get remove httpd
-up2date krb5-devel openssl-devel
-lftpget http://umn.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
-tar xzvf Apachetoolbox-install-1.5.72.tar.gz
-cd Apachetoolbox-1.5.72
-./install.sh
-# export INCLUDES="-I/usr/kerberos/include"
-cd apache_1.3.31;make
-make certificate TYPE=dummy
-make install
-ln -s /usr/local/apache/bin/htpasswd /usr/local/bin
-cp httpd-init /etc/init.d/httpd-freeside
-chmod a+rx /etc/init.d/httpd-freeside
-/sbin/chkconfig httpd-freeside on
-#end apachetoolbox
-
-/usr/sbin/useradd freeside
-
-/sbin/chkconfig rhdb on
-/etc/init.d/rhdb start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-LANG=C su freeside -c 'freeside-setup ivan'
-## do slony foo in here
-##master
-#su freeside -c 'pg_dump freeside' >dumps/setup.sql
-#scp dumps/setup.sql othermachine:.
-##slave
-#su freeside -c 'psql freeside <setup.sql'
-##end slony foo
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
diff --git a/install/redhat/es3/httpd-init b/install/redhat/es3/httpd-init
deleted file mode 100644
index dca95cf..0000000
--- a/install/redhat/es3/httpd-init
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/bash
-#
-# Startup script for the Apache Web Server
-#
-# chkconfig: - 85 15
-# description: Apache is a World Wide Web server. It is used to serve \
-# HTML files and CGI.
-# processname: httpd
-# Source function library.
-
-# Path to the apachectl script, server binary, and short-form for messages.
-apachectl=/usr/local/apache/bin/apachectl
-prog=httpd
-RETVAL=0
-
-start() {
- echo -n $"Starting $prog: "
- $apachectl startssl
- RETVAL=$?
-}
-stop() {
- echo -n $"Stopping $prog: "
- $apachectl stop
- RETVAL=$?
-}
-
-# See how we were called.
-case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart)
- stop
- sleep 3
- start
- ;;
- graceful|help|configtest)
- $apachectl $@
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $prog {start|stop|restart|graceful|help|configtest}"
- exit 1
-esac
-
-exit $RETVAL
-
diff --git a/install/suse/9.0/INSTALL b/install/suse/9.0/INSTALL
deleted file mode 100644
index 4e44147..0000000
--- a/install/suse/9.0/INSTALL
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/bin/sh
-
-# based on install/redhat/9/INSTALL
-
-# apt for SuSE howto: http://linux01.gwdg.de/apt4rpm/
-
-for file in ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.0-i386/RPMS.suser-rbos/apt-0.5.5cnc6-rb6.i586.rpm ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.0-i386/RPMS.suser-rbos/apt-libs-0.5.5cnc6-rb6.i586.rpm ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.0-i386/RPMS.suser-rbos/lua-5.0-rb3.i586.rpm; do
- curl -C - -o `basename $file` $file
-done
-
-rpm -i lua-5.0-rb3.i586.rpm
-rpm -i apt-libs-0.5.5cnc6-rb6.i586.rpm
-rpm -i apt-0.5.5cnc6-rb6.i586.rpm
-
-perl -pi.bak -e 's/386 update/386 base update/' /etc/apt/sources.list
-
-apt-get update; apt-get update
-
-apt-get install apache mod_ssl mod_perl perl-DBI perl-Msql-Mysql-modules perl-DBD-Pg perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-Apache-DBI perl-Apache-ASP perl-GD perl-MailTools perl-Tie-IxHash rsync postgresql postgresql-docs postgresql-libs postgresql-server postgresql-devel screen zsh lftp wget cvs make gcc
-
-perl -MCPAN -e"install DBD::Pg, Net::Whois, Business::CreditCard, \
- File::CounterFile, FreezeThaw, String::Approx, \
- Text::Template, DBIx::DataSource, DBIx::DBSchema, \
- Net::SSH, String::ShellQuote, Net::SCP, \
- Time::Duration, HTML::Widgets::SelectLayers, \
- Cache::Cache, Test::Pod, NetAddr::IP, IPC::ShareLite, \
- Chart::LinesPoints"
-
-/usr/sbin/useradd freeside
-
-/sbin/chkconfig postgresql on
-/etc/init.d/postgresql start
-
-/sbin/chkconfig apache on
-#/etc/init.d/apache start
-
-su postgres -c "createuser -P freeside"
-
-su freeside -c "createdb freeside"
-
-#?
-cd ../../..
-make install-perl-modules
-make create-config
-freeside-adduser -c -h /usr/local/etc/freeside/htpasswd ivan
-su freeside -c 'freeside-setup ivan'
-su freeside -c '/home/ivan/freeside/bin/populate-msgcat ivan'
-make deploy
-
-
-
-
diff --git a/rt/COPYING b/rt/COPYING
deleted file mode 100755
index e77696a..0000000
--- a/rt/COPYING
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/rt/Changelog b/rt/Changelog
deleted file mode 100644
index 2da390e..0000000
--- a/rt/Changelog
+++ /dev/null
@@ -1,12427 +0,0 @@
-------------------------------------------------------------------------
-r3729 | jesse | 2005-08-28 15:45:06 -0400 (Sun, 28 Aug 2005) | 1 line
-Changed paths:
- A /rt/tags/3.4.4 (from /rt/branches/3.4-RELEASE:3728)
-
-Tagged as 3.4.4 by svn RelEng 1.0
-------------------------------------------------------------------------
-r3728 | jesse | 2005-08-28 15:44:18 -0400 (Sun, 28 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r13812@hualien: jesse | 2005-08-28 15:43:29 -0400
- * bumping to 3.4.4
-
-------------------------------------------------------------------------
-r3727 | jesse | 2005-08-27 21:26:24 -0400 (Sat, 27 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
-
- r13804@hualien: jesse | 2005-08-27 21:25:50 -0400
- * Updated French translation from jfenal
-
-
-------------------------------------------------------------------------
-r3725 | jesse | 2005-08-25 16:05:12 -0400 (Thu, 25 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r13763@hualien: jesse | 2005-08-25 16:04:29 -0400
- * 3.4.4rc3
-
-------------------------------------------------------------------------
-r3724 | jesse | 2005-08-25 15:54:00 -0400 (Thu, 25 Aug 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r13760@hualien: jesse | 2005-08-25 15:51:57 -0400
- RT-Ticket: 6855
- RT-Status: resolved
- RT-Update: correspond
-
- * Applied a patch from Andreas Jakum to improve RT::Ticket->Import's handling
- of watchers
-
-
-------------------------------------------------------------------------
-r3723 | jesse | 2005-08-25 15:53:40 -0400 (Thu, 25 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
-
- r13759@hualien: jesse | 2005-08-25 15:31:56 -0400
- * Fixes to IsRTAddress processing. Spotted by Travis Campbell.
-
-
-------------------------------------------------------------------------
-r3722 | jesse | 2005-08-25 15:25:28 -0400 (Thu, 25 Aug 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Footer
- M /rt/branches/3.4-RELEASE/sbin/extract-message-catalog
-
- r13757@hualien: jesse | 2005-08-25 15:23:18 -0400
- RT-Ticket: 6934
- RT-Status: resolved
- RT-Update: correspond
-
- * A couple of patches to improve how localization extraction works from jfenal
-
-
-------------------------------------------------------------------------
-r3721 | jesse | 2005-08-25 15:01:03 -0400 (Thu, 25 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Users_Overlay.pm
-
- r13754@hualien: jesse | 2005-08-25 14:55:32 -0400
- * EquivObjects support for acl queries, from Todd Chapman
-
-
-------------------------------------------------------------------------
-r3720 | jesse | 2005-08-25 15:00:44 -0400 (Thu, 25 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r13753@hualien: jesse | 2005-08-25 14:53:06 -0400
- * Removing warnings about mod_perl2
-
-------------------------------------------------------------------------
-r3719 | jesse | 2005-08-24 02:00:52 -0400 (Wed, 24 Aug 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt.in
-
- r13743@hualien: jesse | 2005-08-24 02:00:08 -0400
- RT-Ticket: 6957
- RT-Status: resolved
- RT-Update: correspond
-
- * Applied a patch from ams to restore his byline to bin/rt
-
-------------------------------------------------------------------------
-r3714 | jesse | 2005-08-23 23:39:37 -0400 (Tue, 23 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r13733@hualien: jesse | 2005-08-23 23:38:39 -0400
- * bumped to pre2
-
-------------------------------------------------------------------------
-r3713 | jesse | 2005-08-23 23:39:17 -0400 (Tue, 23 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Callback
-
- r13732@hualien: jesse | 2005-08-23 23:38:28 -0400
- * Applied tom's callbacks fix
-
-
-------------------------------------------------------------------------
-r3711 | jesse | 2005-08-23 22:37:51 -0400 (Tue, 23 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r13728@hualien: jesse | 2005-08-23 22:37:12 -0400
- * Bumped to 3.4.4pre1
-
-------------------------------------------------------------------------
-r3710 | jesse | 2005-08-23 22:33:47 -0400 (Tue, 23 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
- M /rt/branches/3.4-RELEASE/bin/webmux.pl.in
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Handler.pm
-
- r13725@hualien: jesse | 2005-08-23 22:10:42 -0400
- * Added support for mod_perl 2.0
-
-------------------------------------------------------------------------
-r3709 | jesse | 2005-08-23 17:58:20 -0400 (Tue, 23 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
-
- r13720@hualien: jesse | 2005-08-23 17:54:29 -0400
- * Bugfixes to the German translation file
-
-------------------------------------------------------------------------
-r3708 | glasser | 2005-08-22 16:05:46 -0400 (Mon, 22 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r40177@tin-foil: glasser | 2005-08-18 18:49:13 -0400
- Updates to the standalone server to not dupe as much code, but may be rolled back if HSSM needs to be.
-
-------------------------------------------------------------------------
-r3707 | glasser | 2005-08-22 16:04:25 -0400 (Mon, 22 Aug 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r38371@tin-foil: glasser | 2005-08-02 15:05:25 -0400
- RT-Ticket: 6899
- RT-Status: resolved
- RT-Update: correspond
-
- When limiting based on a whole date, make sure you're not being pushed to
- another if you happen to be east of GMT.
-
- Patch by Ruslan Zakirov, problem found by Olivier Horec.
-
-------------------------------------------------------------------------
-r3706 | glasser | 2005-08-22 15:55:57 -0400 (Mon, 22 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r36571@tin-foil: glasser | 2005-07-08 16:53:26 -0400
- Fix from Tom Yu; if the Handle will give us a server-side function to lowercase
- values, use that.
-
-------------------------------------------------------------------------
-r3700 | trs | 2005-08-18 22:39:02 -0400 (Thu, 18 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
-
- r6002@wintermute: tom | 2005-08-18 22:37:53 -0400
- Fixed typo
-
-------------------------------------------------------------------------
-r3668 | jesse | 2005-08-17 22:04:31 -0400 (Wed, 17 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r13155@hualien: jesse | 2005-08-17 19:15:11 -0400
- * Note dependency on a current HSSM
-
-------------------------------------------------------------------------
-r3667 | jesse | 2005-08-17 22:04:12 -0400 (Wed, 17 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
-
- r13154@hualien: jesse | 2005-08-17 19:14:26 -0400
- * Fixes to standalone webserver for mason 1.30
-
-------------------------------------------------------------------------
-r3666 | alexmv | 2005-08-17 13:41:38 -0400 (Wed, 17 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Quicksearch
-
- r5920@zoq-fot-pik: chmrr | 2005-08-17 13:44:59 -0400
- * My memory was faulty; HTML escaping is not needed
-
-------------------------------------------------------------------------
-r3663 | alexmv | 2005-08-17 13:29:32 -0400 (Wed, 17 Aug 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3662 | alexmv | 2005-08-17 13:29:25 -0400 (Wed, 17 Aug 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Quicksearch
-
- r5914@zoq-fot-pik: chmrr | 2005-08-17 13:32:00 -0400
- * We love escaping! We need to escape quotes and slashes in
- TicketSQL, then URI escape, then HTML escape. And the query comes
- from the TicketSQL-escaped one, not the URI and HTML-escaped one. Oh,
- yeah, and don't forget to turn off the automatic HTML escaping that
- Mason does, or it'll be TicketSQL-HTML-URI-HTML escaped, which is
- Right Out.
-
-------------------------------------------------------------------------
-r3640 | jesse | 2005-08-11 13:46:50 -0400 (Thu, 11 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
-
- r12938@hualien: jesse | 2005-08-11 13:46:14 -0400
- * French localization had lost its header
-
-
-------------------------------------------------------------------------
-r3627 | jesse | 2005-08-10 15:25:55 -0400 (Wed, 10 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r7634@hualien: jesse | 2005-08-10 15:25:31 -0400
- * This is 3.4.3
-
-
-------------------------------------------------------------------------
-r3610 | jesse | 2005-08-05 19:18:01 -0400 (Fri, 05 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/22search_tix_by_txn.t
-
- r7399@hualien: jesse | 2005-08-05 19:16:58 -0400
- * Cleaned up searching by ticket or txn date.
-
-------------------------------------------------------------------------
-r3589 | kevinr | 2005-08-03 01:51:55 -0400 (Wed, 03 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r6872@SAD-GIRL-IN-SNOW: kevinr | 2005-08-03 01:51:33 -0400
- * More minor perldoc cleanup
-
-------------------------------------------------------------------------
-r3588 | kevinr | 2005-08-03 01:20:35 -0400 (Wed, 03 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Groups_Overlay.pm
-
- r6868@SAD-GIRL-IN-SNOW: kevinr | 2005-08-03 01:19:47 -0400
- * Fixed an outdated bit of POD
-
-------------------------------------------------------------------------
-r3585 | kevinr | 2005-08-02 20:18:54 -0400 (Tue, 02 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Base.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Group_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Handle.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SearchBuilder.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Template_Overlay.pm
-
- r6849@SAD-GIRL-IN-SNOW: kevinr | 2005-08-02 20:17:38 -0400
- * POD formatting fixes
-
-------------------------------------------------------------------------
-r3582 | glasser | 2005-08-02 15:10:05 -0400 (Tue, 02 Aug 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r38371@tin-foil: glasser | 2005-08-02 15:05:25 -0400
- RT-Ticket: 6899
- RT-Status: resolved
- RT-Update: correspond
-
- When limiting based on a whole date, make sure you're not being pushed to
- another if you happen to be east of GMT.
-
- Patch by Ruslan Zakirov, problem found by Olivier Horec.
-
-------------------------------------------------------------------------
-r3581 | glasser | 2005-08-02 15:08:03 -0400 (Tue, 02 Aug 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r36571@tin-foil: glasser | 2005-07-08 16:53:26 -0400
- Fix from Tom Yu; if the Handle will give us a server-side function to lowercase
- values, use that.
-
-------------------------------------------------------------------------
-r3579 | kevinr | 2005-08-02 14:22:27 -0400 (Tue, 02 Aug 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
-
- r6837@SAD-GIRL-IN-SNOW: kevinr | 2005-08-02 14:20:51 -0400
- RT-Ticket: 6897
- RT-Status: resolved
- RT-Update: correspond
-
- * Incorporated the updated Italian translation from Angelo Turetta
-
-------------------------------------------------------------------------
-r3576 | robert | 2005-08-02 00:23:36 -0400 (Tue, 02 Aug 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Menu
-
- r3582@woof: rspier | 2005-08-01 21:20:12 -0700
- allow arbitrary https?: urls in the menus
-
-------------------------------------------------------------------------
-r3564 | jesse | 2005-07-30 11:11:02 -0400 (Sat, 30 Jul 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3563 | jesse | 2005-07-30 11:10:42 -0400 (Sat, 30 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r7153@hualien: jesse | 2005-07-30 11:07:37 -0400
- 3.4.3rc2
-
-------------------------------------------------------------------------
-r3562 | jesse | 2005-07-30 11:10:02 -0400 (Sat, 30 Jul 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/id.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
-
- r7152@hualien: jesse | 2005-07-30 11:06:46 -0400
- * German and Danish translation header fixes.
- besides that just a message catalog regenration
-
-
-------------------------------------------------------------------------
-r3546 | kevinr | 2005-07-28 14:51:34 -0400 (Thu, 28 Jul 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/SelfService/Display.html
-
- r6713@SAD-GIRL-IN-SNOW: kevinr | 2005-07-28 14:50:47 -0400
- RT-Ticket: 6892
- RT-Status: resolved
- RT-Update: correspond
-
- * Applied patch from Hsin-Chan Chien to fix a bug with attachment uploading
- in SelfService mode.
-
-------------------------------------------------------------------------
-r3501 | alexmv | 2005-07-18 15:00:38 -0400 (Mon, 18 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r5198@zoq-fot-pik: chmrr | 2005-07-18 14:59:07 -0400
- * Fix TransactionBatch / DESTROY bug (backport from QUEBEC)
-
-------------------------------------------------------------------------
-r3498 | jesse | 2005-07-18 13:46:24 -0400 (Mon, 18 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r4894@hualien: jesse | 2005-07-18 13:44:44 -0400
- * releng.cnf bump to rc1
-
-------------------------------------------------------------------------
-r3476 | kevinr | 2005-07-14 18:22:40 -0400 (Thu, 14 Jul 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principal_Overlay.pm
-
- r6308@SAD-GIRL-IN-SNOW: kevinr | 2005-07-14 18:22:19 -0400
- * Applied Ruslan Zakirov's patch to fix the way ACE Object{,Type,Id} handles
- arguments
-
-------------------------------------------------------------------------
-r3466 | kevinr | 2005-07-12 18:35:15 -0400 (Tue, 12 Jul 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/t/regression/07rights.t
-
- r6229@sad-girl-in-snow: kevinr | 2005-07-12 18:34:56 -0400
- RT-Ticket: 6825
- RT-Status: resolved
- RT-Update: correspond
-
- Added Ruslan Zakirov's new queue-rights tests.
-
-------------------------------------------------------------------------
-r3465 | kevinr | 2005-07-12 18:12:03 -0400 (Tue, 12 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT.pm.in
-
- r6225@sad-girl-in-snow: kevinr | 2005-07-12 18:06:39 -0400
- * Applied Ruslan Zakirov's patch to clean up the ACE code and a trailing \n
-
-------------------------------------------------------------------------
-r3464 | alexmv | 2005-07-12 12:22:01 -0400 (Tue, 12 Jul 2005) | 13 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/PageLayout
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r4959@zoq-fot-pik: chmrr | 2005-07-12 12:22:32 -0400
- * Better threading support; Message-IDs of emails are based on the
- transaction which spawned them.
-
- * Support for ScripActionObj in Action::Generic (argument was being
- passed in but never used)
-
- * Standardize on case of 'Message-ID' per RFC
-
- * Remove newline from Message-ID before inserting into DB
-
- * Fixed minor HTML nit in PageLayout
-
-------------------------------------------------------------------------
-r3416 | kevinr | 2005-07-07 17:36:00 -0400 (Thu, 07 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r6064@sad-girl-in-snow: kevinr | 2005-07-07 17:35:40 -0400
- * Updated the custom field perldoc to explain some non-intuitive behavior.
-
-------------------------------------------------------------------------
-r3414 | kevinr | 2005-07-07 16:19:34 -0400 (Thu, 07 Jul 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
-
- r6055@sad-girl-in-snow: kevinr | 2005-07-07 16:19:18 -0400
- * Noted the deprecation of the *Ticket methods in the perldoc
- * Corrected some copied-and-pasted-but-not-fully-updated error messages
-
-------------------------------------------------------------------------
-r3405 | kevinr | 2005-07-06 16:08:17 -0400 (Wed, 06 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r6033@sad-girl-in-snow: kevinr | 2005-07-06 16:07:34 -0400
- * Improving consistency of perldoc presentation
-
-------------------------------------------------------------------------
-r3404 | kevinr | 2005-07-06 14:53:19 -0400 (Wed, 06 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Template_Overlay.pm
-
- r6009@sad-girl-in-snow: kevinr | 2005-07-06 14:39:22 -0400
- * Documented the behavior which was tripping me up.
-
-------------------------------------------------------------------------
-r3399 | alexmv | 2005-07-06 11:07:45 -0400 (Wed, 06 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowTransaction
-
- r4801@zoq-fot-pik: chmrr | 2005-07-06 11:03:17 -0400
- * Fix '#' links after ticket update
-
-------------------------------------------------------------------------
-r3394 | glasser | 2005-07-05 21:53:14 -0400 (Tue, 05 Jul 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r36303@tin-foil: glasser | 2005-07-05 19:55:16 -0300
- RT-Ticket: 6757
- RT-Status: resolved
- RT-Update: correspond
-
- Transaction custom fields weren't always being set in Updates, because
- Transaction->UpdateCustomFields was being confused by the -Magic values.
- (I should write a test for this, too.)
-
-------------------------------------------------------------------------
-r3393 | glasser | 2005-07-05 21:52:54 -0400 (Tue, 05 Jul 2005) | 13 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r36299@tin-foil: glasser | 2005-07-05 16:39:02 -0300
- RT-Ticket: 6774
- RT-Status: resolved
- RT-Update: correspond
-
- Actually set password when creating a new user, and clean up the error reporting
- from password setting. (And if you don't manage to set a password (either by leaving
- it blank or by entering an invalid password) when creating a user, add a notice that
- the user won't be able to log in.) Also, indentation cleanup.
-
- Patch by Ruslan Zakirov.
-
-
-------------------------------------------------------------------------
-r3392 | glasser | 2005-07-05 21:52:35 -0400 (Tue, 05 Jul 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r36292@tin-foil: glasser | 2005-07-05 13:43:16 -0300
- RT-Ticket: 6811
- RT-Status: resolved
- RT-Update: correspond
-
- Update French localization for 3.4.2 (thanks to J?\195?\169r?\195?\180me Fenal)
-
-------------------------------------------------------------------------
-r3391 | kevinr | 2005-07-05 20:48:09 -0400 (Tue, 05 Jul 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/SelfService/Display.html
-
- r6005@SAD-GIRL-IN-SNOW: kevinr | 2005-07-05 20:47:55 -0400
- RT-Ticket: 6505
- RT-Status: resolved
- RT-Update: correspond
-
- Fixed the bug Seph noted where the "Brief/Full Headers" links in SelfService
- were attempting to direct the user to /Ticket/Display.html instead of
- /SelfService/Display.html
-
-------------------------------------------------------------------------
-r3390 | kevinr | 2005-07-05 19:11:14 -0400 (Tue, 05 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r5982@SAD-GIRL-IN-SNOW: kevinr | 2005-07-05 19:06:09 -0400
- * Fixed a typo in the perldoc
-
-------------------------------------------------------------------------
-r3389 | glasser | 2005-07-05 16:05:39 -0400 (Tue, 05 Jul 2005) | 13 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r36299@tin-foil: glasser | 2005-07-05 16:39:02 -0300
- RT-Ticket: 6774
- RT-Status: resolved
- RT-Update: correspond
-
- Actually set password when creating a new user, and clean up the error reporting
- from password setting. (And if you don't manage to set a password (either by leaving
- it blank or by entering an invalid password) when creating a user, add a notice that
- the user won't be able to log in.) Also, indentation cleanup.
-
- Patch by Ruslan Zakirov.
-
-
-------------------------------------------------------------------------
-r3388 | glasser | 2005-07-05 12:45:50 -0400 (Tue, 05 Jul 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
-
- r36292@tin-foil: glasser | 2005-07-05 13:43:16 -0300
- RT-Ticket: 6811
- RT-Status: resolved
- RT-Update: correspond
-
- Update French localization for 3.4.2 (thanks to J?\195?\169r?\195?\180me Fenal)
-
-------------------------------------------------------------------------
-r3379 | glasser | 2005-07-04 14:18:35 -0400 (Mon, 04 Jul 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Results.html
-
- r36245@tin-foil: glasser | 2005-07-04 14:10:53 -0300
- RT-Ticket: 6747
- RT-Status: resolved
- RT-Update: Correspond
-
- Shorter links for RSS feed and offline
-
-------------------------------------------------------------------------
-r3378 | robert | 2005-07-04 00:40:37 -0400 (Mon, 04 Jul 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt.in
-
- r3412@bear: rspier | 2005-07-04T04:39:33.953112Z
- documentation error, use -m not -t
-
-
-------------------------------------------------------------------------
-r3295 | jesse | 2005-07-03 16:37:15 -0400 (Sun, 03 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r22106@hualien: jesse | 2005-07-03 16:35:22 -0400
- * We don't actually need a newer Text::WikiFormat
-
-------------------------------------------------------------------------
-r3293 | jesse | 2005-07-03 16:14:29 -0400 (Sun, 03 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt-mailgate.in
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/06mailgateway.t
-
- r22091@hualien: jesse | 2005-07-03 16:13:10 -0400
- * Disabling a new feature that might be dangerous; test fixes; cf fixes
-
-------------------------------------------------------------------------
-r3292 | jesse | 2005-07-03 16:14:21 -0400 (Sun, 03 Jul 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r22039@hualien: jesse | 2005-07-01 21:05:38 -0400
- * Refactoring of how RT::Record deals with custom fields for greater consistency
-
-
-------------------------------------------------------------------------
-r3272 | alexmv | 2005-07-01 00:32:15 -0400 (Fri, 01 Jul 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3271 | alexmv | 2005-07-01 00:32:10 -0400 (Fri, 01 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r4556@zoq-fot-pik: chmrr | 2005-06-30 17:58:57 -0400
- * Don't assume link is happy on creation
-
-------------------------------------------------------------------------
-r3270 | alexmv | 2005-07-01 00:32:06 -0400 (Fri, 01 Jul 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFieldWikitext
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r4555@zoq-fot-pik: chmrr | 2005-06-30 17:36:05 -0400
- * WikiText updates to auto-link http:// style links
-
-------------------------------------------------------------------------
-r3261 | kevinr | 2005-06-28 18:47:38 -0400 (Tue, 28 Jun 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Display.html
-
- r5752@sad-girl-in-snow: kevinr | 2005-06-28 17:45:36 -0500
- RT-Ticket: 6745
- RT-Status: resolved
- RT-Update: correspond
-
- Applied Seph's patch to add a BeforeShowHistory callback.
-
-------------------------------------------------------------------------
-r3254 | jesse | 2005-06-27 11:39:18 -0400 (Mon, 27 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/PageLayout
-
- r21952@hualien: jesse | 2005-06-27 11:38:54 -0400
- * Fixed a broken callback
-
-------------------------------------------------------------------------
-r3252 | jesse | 2005-06-24 13:55:24 -0400 (Fri, 24 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/id.po
-
- r21656@hualien: jesse | 2005-06-24 13:53:26 -0400
- * New Indonesian translation from James Briggs
-
-------------------------------------------------------------------------
-r3251 | jesse | 2005-06-24 13:55:11 -0400 (Fri, 24 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
-
- r21522@hualien: jesse | 2005-06-23 19:49:51 -0400
- * Some warning avoidance in Action/SendEmail.pm
-
-------------------------------------------------------------------------
-r3250 | jesse | 2005-06-24 13:54:56 -0400 (Fri, 24 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomField
-
- r21521@hualien: jesse | 2005-06-23 19:49:30 -0400
- * Custom field edit widget bullet proofing
-
-------------------------------------------------------------------------
-r3249 | jesse | 2005-06-24 13:54:42 -0400 (Fri, 24 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/07acl.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/09record_cf_api.t
-
- r21520@hualien: jesse | 2005-06-23 19:49:06 -0400
- * Test suite improvements and cleanups
-
-------------------------------------------------------------------------
-r3248 | jesse | 2005-06-24 13:54:19 -0400 (Fri, 24 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r20757@hualien: jesse | 2005-06-17 19:34:37 -0400
- * Updated mailgateway documentation
-
-------------------------------------------------------------------------
-r3246 | alexmv | 2005-06-23 17:48:26 -0400 (Thu, 23 Jun 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r4485@zoq-fot-pik: chmrr | 2005-06-23 17:50:48 -0400
- RT-Ticket: 6781
- RT-Update: correspond
- RT-Status: resolved
-
- * _AddWatcher takes Email, not Person; thanks to Andreas Jakum <ajakum@inode.at>
-
-------------------------------------------------------------------------
-r3245 | alexmv | 2005-06-23 17:43:57 -0400 (Thu, 23 Jun 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_SiteConfig.pm
-
- r4483@zoq-fot-pik: chmrr | 2005-06-23 17:46:18 -0400
- RT-Ticket: 6782
- RT-Update: correspond
- RT-Status: resolved
-
- * Fix perl invocation; thanks to Kim Toms <kim.toms@gmail.com>
-
-------------------------------------------------------------------------
-r3244 | alexmv | 2005-06-23 17:37:31 -0400 (Thu, 23 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Quicksearch
-
- r4481@zoq-fot-pik: chmrr | 2005-06-23 17:39:53 -0400
- * Actually fix the escaping bug
-
-------------------------------------------------------------------------
-r3243 | alexmv | 2005-06-23 16:58:14 -0400 (Thu, 23 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Quicksearch
-
- r4469@zoq-fot-pik: chmrr | 2005-06-23 17:00:09 -0400
- * Escape queue name properly
-
-------------------------------------------------------------------------
-r3242 | alexmv | 2005-06-23 16:58:02 -0400 (Thu, 23 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/MyRequests
- M /rt/branches/3.4-RELEASE/html/Elements/MyTickets
-
- r4468@zoq-fot-pik: chmrr | 2005-06-23 16:59:51 -0400
- * Remove possible closure issue (my $foo = .... if $bar;)
-
-------------------------------------------------------------------------
-r3241 | alexmv | 2005-06-23 16:57:54 -0400 (Thu, 23 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r4467@zoq-fot-pik: chmrr | 2005-06-23 16:58:52 -0400
- * Doc that CanonicalizeEmailAddress may be called as static
-
-------------------------------------------------------------------------
-r3240 | alexmv | 2005-06-23 16:57:51 -0400 (Thu, 23 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT.pm.in
-
- r4466@zoq-fot-pik: chmrr | 2005-06-23 16:58:19 -0400
- * Document Set() a little better
-
-------------------------------------------------------------------------
-r3227 | jesse | 2005-06-18 23:47:04 -0400 (Sat, 18 Jun 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalScrips
-
-* Fixed typo in kevin's fix (/l is a filter. it needs the |)
-
-------------------------------------------------------------------------
-r3226 | kevinr | 2005-06-18 22:37:51 -0400 (Sat, 18 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalScrips
-
- r4496@sad-girl-in-snow: kevinr | 2005-06-18 21:37:27 -0500
- * Fixes possible cross-site scripting bug.
-
-------------------------------------------------------------------------
-r3225 | kevinr | 2005-06-18 22:26:51 -0400 (Sat, 18 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3224 | kevinr | 2005-06-18 22:26:40 -0400 (Sat, 18 Jun 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalScrips
-
- r4487@sad-girl-in-snow: kevinr | 2005-06-18 21:23:04 -0500
- * Fixed a typo
- * now use $RT::WebAddress because it's a good idea
- * now localize 'Scrip' and number, instead of only the former
-
-------------------------------------------------------------------------
-r3223 | kevinr | 2005-06-18 03:41:38 -0400 (Sat, 18 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditScrips
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalScrips
-
- r4484@sad-girl-in-snow: kevinr | 2005-06-18 02:40:00 -0500
- * Cleaned up the list-of-scrips element and made it provide more useful info.
-
-------------------------------------------------------------------------
-r3222 | jesse | 2005-06-17 19:36:28 -0400 (Fri, 17 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt-mailgate.in
-
- r20757@hualien: jesse | 2005-06-17 19:34:37 -0400
- * Updated mailgateway documentation
-
-------------------------------------------------------------------------
-r3212 | jesse | 2005-06-16 12:40:01 -0400 (Thu, 16 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/en.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
-
- r20717@hualien: jesse | 2005-06-16 12:24:50 -0400
- * Message catalog updates
-
-------------------------------------------------------------------------
-r3211 | jesse | 2005-06-16 12:39:48 -0400 (Thu, 16 Jun 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Notify.pm
-
- r20716@hualien: jesse | 2005-06-16 12:23:58 -0400
- r20713@hualien: jesse | 2005-06-16 12:16:28 -0400
- r20711@hualien (orig r3204): alexmv | 2005-06-16 04:31:40 -0400
- r4308@zoq-fot-pik: chmrr | 2005-06-16 04:31:30 -0400
- * Missed an lc
-
-
-
-
-------------------------------------------------------------------------
-r3210 | jesse | 2005-06-16 12:39:36 -0400 (Thu, 16 Jun 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Notify.pm
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
-
- r20715@hualien: jesse | 2005-06-16 12:20:34 -0400
- r20712@hualien: jesse | 2005-06-16 12:16:22 -0400
- r20710@hualien (orig r3203): alexmv | 2005-06-16 04:29:14 -0400
- r4306@zoq-fot-pik: chmrr | 2005-06-16 04:29:06 -0400
- * Move /^$foo$/ regexes to use eq instead, to prevent regex insertion
- exploits
-
-
-
-
-------------------------------------------------------------------------
-r3209 | jesse | 2005-06-16 12:39:21 -0400 (Thu, 16 Jun 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Scrip_Overlay.pm
-
- r20714@hualien: jesse | 2005-06-16 12:20:30 -0400
- r20705@hualien: jesse | 2005-06-16 12:11:06 -0400
- r19183@hualien (orig r3063): pdh | 2005-06-03 01:01:55 -0400
- Misleading error referred to IsApplicable, not Commit
-
-
-
-
-
-------------------------------------------------------------------------
-r3208 | jesse | 2005-06-16 12:39:07 -0400 (Thu, 16 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3207 | jesse | 2005-06-16 12:38:53 -0400 (Thu, 16 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3206 | jesse | 2005-06-16 12:38:40 -0400 (Thu, 16 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
-
-
-------------------------------------------------------------------------
-r3205 | jesse | 2005-06-16 12:38:27 -0400 (Thu, 16 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
-
-
-------------------------------------------------------------------------
-r3181 | alexmv | 2005-06-15 17:52:14 -0400 (Wed, 15 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3180 | alexmv | 2005-06-15 17:52:08 -0400 (Wed, 15 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFieldBinary
-
- r4266@zoq-fot-pik: chmrr | 2005-06-15 17:51:16 -0400
- * Backport r3147 from quebec
-
-------------------------------------------------------------------------
-r3170 | jesse | 2005-06-15 15:58:48 -0400 (Wed, 15 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/SearchBuilder.pm
-
- r20542@hualien: jesse | 2005-06-15 15:56:43 -0400
- * Made search-by-any-customfield work
-
-
-------------------------------------------------------------------------
-r3155 | jesse | 2005-06-14 17:00:26 -0400 (Tue, 14 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/RT/I18N/id.po
-
- r20078@hualien: jesse | 2005-06-14 16:57:41 -0400
- * First draft Indonesian message catalog from James Briggs
-
-
-------------------------------------------------------------------------
-r3142 | kevinr | 2005-06-13 15:43:08 -0400 (Mon, 13 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r4210@SAD-GIRL-IN-SNOW: kevinr | 2005-06-13 15:39:50 -0400
- * fixed a couple small issues with the perldoc format
-
-------------------------------------------------------------------------
-r3120 | kevinr | 2005-06-09 01:33:18 -0400 (Thu, 09 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
-
- r4110@SAD-GIRL-IN-SNOW: kevinr | 2005-06-09 01:30:22 -0400
- * fixed the mis-typed perldoc tags
-
-------------------------------------------------------------------------
-r3119 | kevinr | 2005-06-09 01:32:41 -0400 (Thu, 09 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
-
- r4107@SAD-GIRL-IN-SNOW: kevinr | 2005-06-09 00:43:23 -0400
- * makes RT::ScripAction::Load return ($id, $message) instead of just $message,
- and adds perldoc for Load() to that effect.
-
-------------------------------------------------------------------------
-r3116 | jesse | 2005-06-09 01:00:12 -0400 (Thu, 09 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r19701@hualien: jesse | 2005-06-09 00:58:09 -0400
- * Bumping to 3.4.3pre1
-
-
-------------------------------------------------------------------------
-r3094 | kevinr | 2005-06-08 18:44:39 -0400 (Wed, 08 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt-mailgate.in
- M /rt/branches/3.4-RELEASE/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/06mailgateway.t
-
- r4080@sad-girl-in-snow: kevinr | 2005-06-08 18:35:07 -0400
- * Applied Ruslan Zakirov's ext-mailgate patch, which allows you to take or
- resolve tickets by e-mail.
-
-------------------------------------------------------------------------
-r3085 | kevinr | 2005-06-07 19:29:11 -0400 (Tue, 07 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r4043@SAD-GIRL-IN-SNOW: kevinr | 2005-06-07 19:28:11 -0400
- * Added return format information to perldoc for Comment() and Correspond()
-
-------------------------------------------------------------------------
-r3084 | kevinr | 2005-06-07 19:28:29 -0400 (Tue, 07 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r3943@SAD-GIRL-IN-SNOW: kevinr | 2005-06-02 16:12:07 -0400
- * Applied patch from Steve Turner to add a default callback to the Queue
- Admin page.
-
-------------------------------------------------------------------------
-r3077 | alexmv | 2005-06-07 17:56:50 -0400 (Tue, 07 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/mason_handler.svc.in
- M /rt/branches/3.4-RELEASE/bin/rt-mailgate.in
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CurrentUser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Date.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Group_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Handle.pm
- M /rt/branches/3.4-RELEASE/lib/RT/I18N.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Link_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Links_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/ActiveTicketsInQueue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/FromSQL.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SearchBuilder.pm
- M /rt/branches/3.4-RELEASE/lib/RT/System.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Users_Overlay.pm
-
- r4010@zoq-fot-pik: chmrr | 2005-06-07 17:08:18 -0400
- * Whitespace fixes for proper POD
-
-------------------------------------------------------------------------
-r3073 | jesse | 2005-06-05 17:30:17 -0400 (Sun, 05 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
-
-
-* Updated EmailSubjectTagRegex documentation. Thanks to Phil Homewood for spotting it.
-
-------------------------------------------------------------------------
-r3070 | robert | 2005-06-03 23:36:50 -0400 (Fri, 03 Jun 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r3078@bear: rspier | 2005-06-04T03:36:19.749340Z
- RT-Ticket: 6748
- RT-Status: resolved
- RT-Update: correspond
-
- Fallback to $LOGNAME if $USER isn't defined for --with-my-user-group
-
-
-
-------------------------------------------------------------------------
-r3059 | kevinr | 2005-06-02 16:17:31 -0400 (Thu, 02 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/Modify.html
-
- r3943@STRATTON-THREE-TWENTY-SEVEN: kevinr | 2005-06-02 16:12:07 -0400
- * Applied patch from Steve Turner to add a default callback to the Queue
- Admin page.
-
-------------------------------------------------------------------------
-r3057 | robert | 2005-06-02 00:15:13 -0400 (Thu, 02 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/AutoOpen.pm
-
- r3073@bear: rspier | 2005-06-02T04:14:40.726890Z
- Support for RT-Control: no-autoopen
-
-
-------------------------------------------------------------------------
-r3056 | glasser | 2005-06-01 18:39:36 -0400 (Wed, 01 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3055 | glasser | 2005-06-01 18:39:12 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/04send_email.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/21query-builder.t
-
- r33654@tin-foil: glasser | 2005-06-01 16:36:18 -0400
- Fix some test plans, mark some QB tests TODO
-
-------------------------------------------------------------------------
-r3054 | glasser | 2005-06-01 18:38:38 -0400 (Wed, 01 Jun 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r33653@tin-foil: glasser | 2005-06-01 15:19:20 -0400
- fixdeps wasn't working for me (it was trying to detar inside my MiniCPAN!);
- its code was "correct" but presumably one of the other 500 modules that were
- loaded confused CPAN. (This bug happened both before and after the previous change.)
- Now just uses a system() call to install.
-
-------------------------------------------------------------------------
-r3053 | glasser | 2005-06-01 18:38:05 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r33652@tin-foil: glasser | 2005-06-01 15:02:58 -0400
- A mini rewrite of testdeps: now it tells you at the bottom if it is missing anything
-
-------------------------------------------------------------------------
-r3052 | glasser | 2005-06-01 18:37:45 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33243@tin-foil: glasser | 2005-05-27 17:08:38 -0400
- Add some hopefully correct comments to the head of Search/Build
-
-------------------------------------------------------------------------
-r3051 | glasser | 2005-06-01 18:37:29 -0400 (Wed, 01 Jun 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/02basic_web.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/08web_cf_access.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/09record_cf_api.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/10merge.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/11-template-insert.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/12-search.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/13-attribute-tests.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/15cf_single_values_are_single.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/21query-builder.t
-
- r33242@tin-foil: glasser | 2005-05-27 14:08:19 -0400
- * Improved Query builder Tests
- * add plans to a bunch of other tests
-
-------------------------------------------------------------------------
-r3050 | glasser | 2005-06-01 18:37:12 -0400 (Wed, 01 Jun 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r3049 | glasser | 2005-06-01 18:36:55 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
- M /rt/branches/3.4-RELEASE/bin/standalone_httpd.in
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Groups.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Tickets.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Transactions.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Users.html
- M /rt/branches/3.4-RELEASE/html/Admin/index.html
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI/t.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/04send_email.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
-
- r33110@tin-foil: glasser | 2005-05-26 13:33:06 -0400
- Undo 'make license-tag' change; jesse should do this later though
-
-------------------------------------------------------------------------
-r3048 | glasser | 2005-06-01 18:36:40 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder/Tree.pm
-
- r33109@tin-foil: glasser | 2005-05-26 12:02:13 -0400
- More docs and refactoring on QueryBuilder::Tree
-
-------------------------------------------------------------------------
-r3047 | glasser | 2005-06-01 18:36:24 -0400 (Wed, 01 Jun 2005) | 12 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder/Tree.pm
-
- r33108@tin-foil: glasser | 2005-05-26 02:12:48 -0400
- rt-ticket: 6568
- rt-update: correspond
-
- * Better fix to Query Builder; in addition to refactoring most of the code which got
- information out of the tree, prune away childless AND/ORs, fixing the bug from ticket #6568.
-
- Also get rid of the reaction to the "Clear" action, which I don't think exists, and which
- I think is incorrect, since the root is supposed to have one child (see where it is
- first created).
-
-
-------------------------------------------------------------------------
-r3046 | glasser | 2005-06-01 18:35:53 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder/Tree.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder.pm
-
- r33107@tin-foil: glasser | 2005-05-26 01:56:25 -0400
- More Query Builder tree refactoring.
-
-------------------------------------------------------------------------
-r3045 | glasser | 2005-06-01 18:35:33 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- A /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder
- A /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder/Tree.pm
- A /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/QueryBuilder.pm
-
- r33106@tin-foil: glasser | 2005-05-26 01:21:29 -0400
- Move stuff out from html/Search/Build.html into a module; refactor some of the code there.
-
-------------------------------------------------------------------------
-r3044 | glasser | 2005-06-01 18:35:14 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
- M /rt/branches/3.4-RELEASE/bin/standalone_httpd.in
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Groups.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Tickets.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Transactions.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Users.html
- M /rt/branches/3.4-RELEASE/html/Admin/index.html
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI/t.pm
-
- r33105@tin-foil: glasser | 2005-05-26 00:02:36 -0400
- Run 'make license-tag'
-
-------------------------------------------------------------------------
-r3043 | glasser | 2005-06-01 18:34:56 -0400 (Wed, 01 Jun 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- A /rt/branches/3.4-RELEASE/lib/t/regression/21query-builder.t
-
- r33104@tin-foil: glasser | 2005-05-25 23:53:28 -0400
- Fix mistake in the function I just made
-
- Add a bit of testing of the query builder.
-
-------------------------------------------------------------------------
-r3042 | glasser | 2005-06-01 18:34:38 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33103@tin-foil: glasser | 2005-05-25 22:24:07 -0400
- And remove the old functionality too.
-
-------------------------------------------------------------------------
-r3041 | glasser | 2005-06-01 18:33:51 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33102@tin-foil: glasser | 2005-05-25 22:22:53 -0400
- build_array was being called twice for two totally disconnected reasons. Split one out.
-
-------------------------------------------------------------------------
-r3040 | glasser | 2005-06-01 18:32:34 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33101@tin-foil: glasser | 2005-05-25 21:05:02 -0400
- Attempt to add parentheses to the clauses select list, in Query Builder.
-
-------------------------------------------------------------------------
-r3039 | glasser | 2005-06-01 18:32:16 -0400 (Wed, 01 Jun 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33100@tin-foil: glasser | 2005-05-25 20:21:43 -0400
- Mini refactoring of Tree->SQL/HTML function
-
-------------------------------------------------------------------------
-r2998 | kevinr | 2005-05-31 21:08:40 -0400 (Tue, 31 May 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
-
- r3841@SAD-GIRL-IN-SNOW: kevinr | 2005-05-31 21:07:42 -0400
- RT-Ticket: 6669
- RT-Status: resolved
- RT-Action: correspond
-
- * Fixed the mysteriously-absent '1' in the Norwegian po.
-
-------------------------------------------------------------------------
-r2997 | kevinr | 2005-05-31 20:38:19 -0400 (Tue, 31 May 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
-
- r3010@SAD-GIRL-IN-SNOW: kevinr | 2005-05-31 18:10:17 -0400
- RT-Ticket: 6423
- RT-Status: resolve
- RT-Action: correspond
-
- * Fixed a line I broke in revision 3008 -- vi removed the '%1'.
-
-------------------------------------------------------------------------
-r2996 | kevinr | 2005-05-31 20:35:39 -0400 (Tue, 31 May 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r3009@SAD-GIRL-IN-SNOW: kevinr | 2005-05-31 17:52:48 -0400
- RT-Ticket: 6669
- RT-Status: resolved
- RT-Action: correspond
-
- * Fixed an extra space in lib/RT/Transaction_Overlay.pm and propagated the
- change to the po files, as per Brandon Pulsipher's suggestion.
-
-------------------------------------------------------------------------
-r2995 | kevinr | 2005-05-31 20:34:40 -0400 (Tue, 31 May 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Modify.html
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
-
- r3008@SAD-GIRL-IN-SNOW: kevinr | 2005-05-31 17:05:08 -0400
- RT-Ticket: 6423
- RT-Status: resolve
- RT-Action: correspond
-
- * Corrected a typo in Admin/Queues/Modify.html and propagated it to all the
- po files, as per Angelo Turetta's suggestion.
-
-------------------------------------------------------------------------
-r2994 | kevinr | 2005-05-31 16:11:31 -0400 (Tue, 31 May 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Error
-
- r3004@sad-girl-in-snow: kevinr | 2005-05-31 15:52:19 -0400
- RT-Ticket: 6684
- RT-Status: resolve
- RT-Action: correspond
-
- html/Elements/Error should not continue, and has been changed to add the
- standard footer element on %cleanup.
-
-------------------------------------------------------------------------
-r2993 | kevinr | 2005-05-31 16:10:33 -0400 (Tue, 31 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r2967@sad-girl-in-snow: kevinr | 2005-05-25 18:37:20 -0400
- * Added a comma where a compound sentence wanted it.
-
-------------------------------------------------------------------------
-r2992 | kevinr | 2005-05-31 16:10:01 -0400 (Tue, 31 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2965@sad-girl-in-snow: kevinr | 2005-05-25 17:47:26 -0400
- * changed "e-mail" back to "email"
- * removed discussion of pre-5.8.3 perl versions
-
-------------------------------------------------------------------------
-r2974 | jesse | 2005-05-29 19:28:58 -0400 (Sun, 29 May 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Results.html
-
- r17981@hualien: jesse | 2005-05-29 19:26:59 -0400
- r17979@hualien: jesse | 2005-05-29 19:21:59 -0400
- RT-Ticket: 6741
- RT-Status: resolved
- RT-Update: correspond
-
- * Sort order wasn't preserved for the "in memory" saved search. --Phil Homewood
-
-
-------------------------------------------------------------------------
-r2968 | jesse | 2005-05-25 22:46:40 -0400 (Wed, 25 May 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r17717@hualien: jesse | 2005-05-25 22:43:35 -0400
- * Better in-reply-to when replying to a message generated via the webui
- * Now only hang onto the first four and the last six References headers.
-
-
-------------------------------------------------------------------------
-r2967 | jesse | 2005-05-25 22:45:46 -0400 (Wed, 25 May 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r17705@hualien: jesse | 2005-05-25 01:17:11 -0400
- RT-Ticket: 6627
- RT-Status: resolved
- RT-Update: correspond
-
- * Updated German translation -- David Schmit
-
-------------------------------------------------------------------------
-r2966 | jesse | 2005-05-25 22:45:39 -0400 (Wed, 25 May 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r17704@hualien: jesse | 2005-05-25 00:59:29 -0400
- RT-Ticket: 6654
- RT-Status: resolved
- RT-Update: correspond
-
- * Updated Italian translation from Angelo Turetta
-
-
-------------------------------------------------------------------------
-r2965 | jesse | 2005-05-25 22:45:32 -0400 (Wed, 25 May 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r17703@hualien: jesse | 2005-05-25 00:55:10 -0400
- RT-Ticket: 6653
- RT-Status: resolved
- RT-Update: correspond
-
- * Small localization fix from Angelo Turetta
-
-
-
-------------------------------------------------------------------------
-r2964 | jesse | 2005-05-25 22:45:25 -0400 (Wed, 25 May 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r17684@hualien: jesse | 2005-05-24 18:18:21 -0400
- RT-Ticket: 6713
- RT-Status: resolved
- RT-Update: correspond
-
- * Text::WikiFormat is a dependency. And should have been in 3.4.2
-
-
-
-------------------------------------------------------------------------
-r2963 | jesse | 2005-05-25 22:45:17 -0400 (Wed, 25 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
- r17682@hualien: jesse | 2005-05-24 12:27:55 -0400
- * Wikitext fields weren't properly escaping HTML
-
-------------------------------------------------------------------------
-r2961 | glasser | 2005-05-25 19:58:06 -0400 (Wed, 25 May 2005) | 15 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r33096@tin-foil: glasser | 2005-05-25 19:56:11 -0400
- RT-Ticket: 6568
- RT-Status: open
- RT-Update: correspond
-
- * Simple fix to Query Builder to prevent a crash in situations involving
- the creation of AND/ORs with no children. A fix that treats the cause
- and not the symptom is planned. Currently, it may sometimes do "unexpected things"
- with your ADD, but it is at least in a state that the user can recover from.
-
- Specifically, for Danial's it works as expected; for Tim's example, it gives an incorrect
- error message (in the context of the QB page, not a Mason crash thing) but the select
- box is in a good state.
-
-
-------------------------------------------------------------------------
-r2960 | kevinr | 2005-05-25 18:38:43 -0400 (Wed, 25 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2967@SAD-GIRL-IN-SNOW: kevinr | 2005-05-25 18:37:20 -0400
- * Added a comma where a compound sentence wanted it.
-
-------------------------------------------------------------------------
-r2959 | kevinr | 2005-05-25 17:49:43 -0400 (Wed, 25 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2965@SAD-GIRL-IN-SNOW: kevinr | 2005-05-25 17:47:26 -0400
- * changed "e-mail" back to "email"
- * removed discussion of pre-5.8.3 perl versions
-
-------------------------------------------------------------------------
-r2958 | kevinr | 2005-05-25 16:47:14 -0400 (Wed, 25 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2950@SAD-GIRL-IN-SNOW: kevinr | 2005-05-25 16:39:58 -0400
- * fixed a bunch of typoes in the README
-
-------------------------------------------------------------------------
-r2957 | jesse | 2005-05-25 01:25:06 -0400 (Wed, 25 May 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/PreviewScrips
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
-
- r17705@hualien: jesse | 2005-05-25 01:17:11 -0400
- RT-Ticket: 6627
- RT-Status: resolved
- RT-Update: correspond
-
- * Updated German translation -- David Schmit
-
-------------------------------------------------------------------------
-r2956 | jesse | 2005-05-25 01:24:55 -0400 (Wed, 25 May 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
-
- r17704@hualien: jesse | 2005-05-25 00:59:29 -0400
- RT-Ticket: 6654
- RT-Status: resolved
- RT-Update: correspond
-
- * Updated Italian translation from Angelo Turetta
-
-
-------------------------------------------------------------------------
-r2955 | jesse | 2005-05-25 01:24:46 -0400 (Wed, 25 May 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Elements/DisplayOptions
-
- r17703@hualien: jesse | 2005-05-25 00:55:10 -0400
- RT-Ticket: 6653
- RT-Status: resolved
- RT-Update: correspond
-
- * Small localization fix from Angelo Turetta
-
-
-
-------------------------------------------------------------------------
-r2954 | jesse | 2005-05-24 18:21:27 -0400 (Tue, 24 May 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r17684@hualien: jesse | 2005-05-24 18:18:21 -0400
- RT-Ticket: 6713
- RT-Status: resolved
- RT-Update: correspond
-
- * Text::WikiFormat is a dependency. And should have been in 3.4.2
-
-
-
-------------------------------------------------------------------------
-r2953 | jesse | 2005-05-24 18:21:07 -0400 (Tue, 24 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFieldWikitext
-
- r17682@hualien: jesse | 2005-05-24 12:27:55 -0400
- * Wikitext fields weren't properly escaping HTML
-
-------------------------------------------------------------------------
-r2945 | kevinr | 2005-05-24 13:53:43 -0400 (Tue, 24 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2945@sad-girl-in-snow: kevinr | 2005-05-24 13:51:57 -0400
- * Updated README to note that RT works with Oracle versions >=9.2
-
-------------------------------------------------------------------------
-r2936 | jesse | 2005-05-23 15:30:36 -0400 (Mon, 23 May 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r17673@hualien: jesse | 2005-05-23 15:27:11 -0400
- RT-Ticket: 6459
- RT-Status: resolved
-
- * Updates to the _AddLink return values from Todd Chapman.
-
-
-------------------------------------------------------------------------
-r2935 | jesse | 2005-05-23 15:30:26 -0400 (Mon, 23 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
-
- r17672@hualien: jesse | 2005-05-23 15:22:51 -0400
- * Switch the default WebURL to "localhost" to make the regression suite pass
- more cleanly
-
-------------------------------------------------------------------------
-r2934 | jesse | 2005-05-23 15:30:16 -0400 (Mon, 23 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
-
- r17671@hualien: jesse | 2005-05-23 14:21:54 -0400
- * Since EmailParser _might_ be used out of Interface::Email context, require Interface::Email.
-
-------------------------------------------------------------------------
-r2933 | jesse | 2005-05-23 15:30:02 -0400 (Mon, 23 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
-
- r17670@hualien: jesse | 2005-05-23 13:48:34 -0400
- * RT::EmailParser->ParseTicketId was deprecated but that was not clear. Also, the code was out of date
-
-------------------------------------------------------------------------
-r2932 | glasser | 2005-05-23 13:04:38 -0400 (Mon, 23 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI/t.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/02basic_web.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/03web_compiliation_errors.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/06mailgateway.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/07acl.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/08web_cf_access.t
-
-Allow for base URL to be changed when doing regressions.
-(And kind of allow for Organization to be changed, except the mailgate
-test will still bite it if you do.)
-------------------------------------------------------------------------
-r2909 | glasser | 2005-05-22 17:03:29 -0400 (Sun, 22 May 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE/etc/RT_SiteConfig.pm
-
-Put an obviously fake instead of possibly wrong path in an example command.`
-------------------------------------------------------------------------
-r2887 | jesse | 2005-05-16 22:09:21 -0400 (Mon, 16 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r16893@hualien: jesse | 2005-05-16 18:04:08 -0400
- * Better creation of in-reply-to/references headers on web-ased reply
-
-------------------------------------------------------------------------
-r2886 | jesse | 2005-05-16 17:49:47 -0400 (Mon, 16 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/PageLayout
-
- r16891@hualien: jesse | 2005-05-16 22:48:02 +0100
- * Adding a new "top of page" callback
-
-
-------------------------------------------------------------------------
-r2880 | jesse | 2005-05-13 10:25:08 -0400 (Fri, 13 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValues_Overlay.pm
-
- r16761@hualien: jesse | 2005-05-13 15:22:22 +0100
- * Ruslan found a debugging statement we had accidentally committed
-
-------------------------------------------------------------------------
-r2879 | jesse | 2005-05-12 20:04:44 -0400 (Thu, 12 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValues_Overlay.pm
-
- r16510@hualien: jesse | 2005-05-12 17:44:00 +0100
- * Fix on the plane was wrong. sigh
-
-------------------------------------------------------------------------
-r2864 | jesse | 2005-05-11 20:06:23 -0400 (Wed, 11 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValue_Overlay.pm
-
- r16468@hualien: jesse | 2005-05-11 15:34:43 +0100
- * CustomFieldValues fix had a typo
-
-------------------------------------------------------------------------
-r2863 | jesse | 2005-05-11 20:06:12 -0400 (Wed, 11 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
-
- r16462@hualien: jesse | 2005-05-11 15:30:30 +0100
- * Try harder to set a proper In-reply-to: header
-
-------------------------------------------------------------------------
-r2862 | jesse | 2005-05-11 20:06:01 -0400 (Wed, 11 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValue_Overlay.pm
-
- r16461@hualien: jesse | 2005-05-11 15:23:33 +0100
- * Custom field values can now be integers
-
-------------------------------------------------------------------------
-r2861 | robert | 2005-05-10 01:54:35 -0400 (Tue, 10 May 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/CreateTickets.pm
-
- r2875@bear: rspier | 2005-05-10T05:54:13.875334Z
- quick and dirty fix (ok, not so quick, and not really so dirty)
- for the recursive CreateTickets dataloss issue.
-
-
-------------------------------------------------------------------------
-r2856 | jesse | 2005-05-09 21:52:39 -0400 (Mon, 09 May 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
-
- r16376@hualien: jesse | 2005-05-09 21:51:14 -0400
- r16373@hualien: jesse | 2005-05-09 21:43:59 -0400
- * Queue name case changes were accidentally generating a "Name Conflict" error
-
-
-
-------------------------------------------------------------------------
-r2855 | jesse | 2005-05-09 21:52:31 -0400 (Mon, 09 May 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r2854 | jesse | 2005-05-09 21:52:24 -0400 (Mon, 09 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFields_Overlay.pm
-
- r15829@hualien: jesse | 2005-05-06 16:06:12 -0400
- * Make sure that disabled custom fields aren't listed in Queue CF listings.
-
-
-------------------------------------------------------------------------
-r2833 | glasser | 2005-05-05 22:44:56 -0400 (Thu, 05 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
-Require modern version of XML::RSS (versions prior to 1.02 do not
-encode their output properly; 1.02 and 1.05 have the same prereqs
-but 1.05 fixes some other bugs)
-------------------------------------------------------------------------
-r2831 | jesse | 2005-05-04 13:16:54 -0400 (Wed, 04 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r15792@hualien: jesse | 2005-05-04 13:14:49 -0400
- * This is 3.4.2
-
-------------------------------------------------------------------------
-r2829 | robert | 2005-05-03 23:52:32 -0400 (Tue, 03 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/initialdata
-
- r2835@bear: rspier | 2005-05-04T03:51:48.597852Z
- fix typo in initialdata related to approval rejection
-
-
-------------------------------------------------------------------------
-r2820 | jesse | 2005-05-02 13:40:54 -0400 (Mon, 02 May 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r14639@hualien: jesse | 2005-05-02 13:30:18 -0400
- * This be 3.4.2rc2
-
-------------------------------------------------------------------------
-r2819 | jesse | 2005-05-02 13:25:35 -0400 (Mon, 02 May 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/SelfService/Elements/Tabs
-
- r14637@hualien: jesse | 2005-05-02 13:24:05 -0400
- * Patch to SelfService UI to not display a preferences page unless the current user (ie all unprivileged users) has the right to do so.
-
-
-------------------------------------------------------------------------
-r2817 | jesse | 2005-04-29 13:11:27 -0400 (Fri, 29 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Update.html
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r14626@hualien: jesse | 2005-04-29 13:06:57 -0400
- * Message threading improvements suggested by Florian Weimer
-
-------------------------------------------------------------------------
-r2815 | jesse | 2005-04-29 00:12:18 -0400 (Fri, 29 Apr 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Update.html
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r14617@hualien: jesse | 2005-04-28 22:56:56 -0400
- * Enabled proper message threading with RT
-
-
-------------------------------------------------------------------------
-r2814 | jesse | 2005-04-29 00:12:11 -0400 (Fri, 29 Apr 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r14616@hualien: jesse | 2005-04-28 22:56:19 -0400
- * Added a todo notice
-
-
-------------------------------------------------------------------------
-r2813 | jesse | 2005-04-29 00:12:04 -0400 (Fri, 29 Apr 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r2812 | jesse | 2005-04-29 00:11:00 -0400 (Fri, 29 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Footer
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/en.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
-
- r14017@hualien: jesse | 2005-04-21 21:07:47 -0400
- Loc updates
-
-------------------------------------------------------------------------
-r2807 | jesse | 2005-04-25 22:33:14 -0400 (Mon, 25 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
-
-* Correct comments in config file. "RTLogoURL" is actually LogoURL. --Allison Randal
-
-------------------------------------------------------------------------
-r2792 | jesse | 2005-04-20 11:32:54 -0400 (Wed, 20 Apr 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
-
- r13994@hualien: jesse | 2005-04-20 11:31:44 -0400
- RT-Ticket: 6620
- RT-Status: resolved
- RT-Update: correspond
-
- * Hungarian translation had an incorrect Content-Type. Reported upstream from
- Debian.
-
-
-------------------------------------------------------------------------
-r2791 | jesse | 2005-04-19 22:00:57 -0400 (Tue, 19 Apr 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
- M /rt/branches/3.4-RELEASE/etc/RT_SiteConfig.pm
-
- r13990@hualien: jesse | 2005-04-19 22:00:14 -0400
- * Canonicalized => to , in the configuration file
- They mean the same thing, but consistency is good.
-
-------------------------------------------------------------------------
-r2783 | jesse | 2005-04-19 17:05:21 -0400 (Tue, 19 Apr 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/01ticket_link_searching.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/19-rtname.t
-
- r13834@hualien: jesse | 2005-04-19 17:03:40 -0400
- RT-Ticket: 6617
- RT-Status: resolve
- RT-Update: correspond
-
- Removed some spurious use lib lines from the test suite. Thanks to Dave Rolsky.
-
-
-
-------------------------------------------------------------------------
-r2782 | jesse | 2005-04-19 14:19:29 -0400 (Tue, 19 Apr 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r13264@hualien: jesse | 2005-04-19 14:15:54 -0400
- RT-Ticket: 6616
- RT-Status: resolved
- RT-Update: correspond
-
- * Added a new HasPassword method to the RT user object
-
-
-------------------------------------------------------------------------
-r2779 | tla | 2005-04-19 00:45:48 -0400 (Tue, 19 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
-
-fix the perldoc
-
-------------------------------------------------------------------------
-r2771 | jesse | 2005-04-18 01:10:20 -0400 (Mon, 18 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldWikitext
- A /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFieldWikitext
- M /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFields
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r13240@hualien: jesse | 2005-04-18 01:07:43 -0400
- * Added Wikitext custom field type
-
-------------------------------------------------------------------------
-r2768 | jesse | 2005-04-18 00:16:42 -0400 (Mon, 18 Apr 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE/releng.cnf
-
-3.4.2rc1
-------------------------------------------------------------------------
-r2749 | jesse | 2005-04-17 21:58:26 -0400 (Sun, 17 Apr 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
-
- r13207@hualien: jesse | 2005-04-17 21:57:31 -0400
- RT-Ticket: 6597
- RT-Status: resolved
- RT-Update correspond
-
- * CanonicalizeUserInfo didn't work right from RT's WebUI.
- Fixed by Dave Rolsky.
-
-
-------------------------------------------------------------------------
-r2748 | jesse | 2005-04-17 21:58:19 -0400 (Sun, 17 Apr 2005) | 11 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/TicketList
-
- r13206@hualien: jesse | 2005-04-17 21:54:10 -0400
- r13204@hualien: jesse | 2005-04-17 21:52:15 -0400
- RT-Ticket: 6603
- RT-Status: resolved
- RT-Update: correspond
-
- * RT used to report an improper total number of pages if the number of
- results found was evenly divisible by the number of rows per page
-
-
-
-------------------------------------------------------------------------
-r2746 | jesse | 2005-04-17 21:45:07 -0400 (Sun, 17 Apr 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r13195@hualien: jesse | 2005-04-17 21:36:13 -0400
- RT-Ticket: 6491
- RT-Status: resolved
- RT-Updated: correspond
-
- * Bumped the Postgres dependency to 1.41 to get around the
- broken 1.40 release
-
-
-------------------------------------------------------------------------
-r2745 | jesse | 2005-04-17 21:45:00 -0400 (Sun, 17 Apr 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Row
-
- r13194@hualien: jesse | 2005-04-17 21:31:40 -0400
- RT-Ticket: 6522
- RT-Status: resolved
- RT-Update: correspond
-
- * Newlines in CustomFields are now displayed in TicketList results
-
-
-
-------------------------------------------------------------------------
-r2744 | jesse | 2005-04-17 21:44:50 -0400 (Sun, 17 Apr 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/SetupSessionCookie
-
- r13193@hualien: jesse | 2005-04-17 21:26:35 -0400
- RT-Ticket: 6657
- RT-Status: resolved
-
- * Better error message when the sessions table or sessions dir isn't writable
-
-
-------------------------------------------------------------------------
-r2743 | jesse | 2005-04-17 21:44:37 -0400 (Sun, 17 Apr 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
-
- r13192@hualien: jesse | 2005-04-17 21:23:22 -0400
- RT-Ticket: 6517
- RT-Update: correspond
-
- * New Russian translation from Andrew Kornilov
-
-------------------------------------------------------------------------
-r2742 | jesse | 2005-04-17 21:44:23 -0400 (Sun, 17 Apr 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Modify.html
-
- r13191@hualien: jesse | 2005-04-17 21:10:17 -0400
- RT-Ticket: 6589
- RT-Status: resolved
- RT-Update: correspond
-
- * Quieted a deprecation warning -- Dmitry Sivachenko <mitya@cavia.pp.ru>
-
-
-------------------------------------------------------------------------
-r2741 | jesse | 2005-04-17 21:44:10 -0400 (Sun, 17 Apr 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
-
- r13190@hualien: jesse | 2005-04-17 21:08:55 -0400
- RT-Ticket: 6585
- RT-Status: resolved
- RT-Update: correspond
-
- * Updated Danish translation from Jonas Nielsen
-
-
-------------------------------------------------------------------------
-r2740 | jesse | 2005-04-17 21:43:53 -0400 (Sun, 17 Apr 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
-
- r13189@hualien: jesse | 2005-04-17 21:05:49 -0400
- RT-Ticket: 6583
- RT-Status: resolved
- RT-Update: correspond
-
- * Fixed typos in Spanish translation
-
-
-------------------------------------------------------------------------
-r2739 | jesse | 2005-04-17 21:43:44 -0400 (Sun, 17 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditScrips
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditTemplates
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickObjects
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/Members.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/index.html
- M /rt/branches/3.4-RELEASE/html/Elements/Checkbox
- M /rt/branches/3.4-RELEASE/html/Elements/EditLinks
- M /rt/branches/3.4-RELEASE/html/Search/Bulk.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Update.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Create.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditWatchers
- M /rt/branches/3.4-RELEASE/html/Ticket/Update.html
- M /rt/branches/3.4-RELEASE/html/User/Elements/DelegateRights
- M /rt/branches/3.4-RELEASE/html/User/Groups/Members.html
-
- r13188@hualien: jesse | 2005-04-17 20:58:19 -0400
- * Checkbox fields need a "value" or they are ignored
-
-------------------------------------------------------------------------
-r2738 | jesse | 2005-04-17 20:26:15 -0400 (Sun, 17 Apr 2005) | 11 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/12-search.t
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r13186@hualien: jesse | 2005-04-17 20:24:41 -0400
- RT-Ticket: 6562
- RT-Status: resolved
- RT-Update: correspond
-
- * Patch from Tom Yu to allow negative CF searching and better
- multi-CF search.
-
- * Bumped SearchBuilder dependency to new version
-
-
-------------------------------------------------------------------------
-r2634 | tla | 2005-04-15 17:21:25 -0400 (Fri, 15 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
-
-Added ability to update name as well as search parameters.
-
-------------------------------------------------------------------------
-r2631 | jesse | 2005-04-15 16:52:22 -0400 (Fri, 15 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/12-search.t
-
- r12950@hualien: jesse | 2005-04-15 16:47:32 -0400
- * Cleaned up search tests
-
-------------------------------------------------------------------------
-r2629 | jesse | 2005-04-15 15:29:18 -0400 (Fri, 15 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
-
- r12944@hualien: jesse | 2005-04-15 15:28:01 -0400
- * Fixed Module::Refresh handling for standalone_httpd
-
-------------------------------------------------------------------------
-r2626 | jesse | 2005-04-14 16:36:14 -0400 (Thu, 14 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/SelfService/Display.html
-
- r12790@hualien: jesse | 2005-04-14 15:07:03 -0400
- * Fix support for uploading attachmends in selfservice. -- HC Chien
-
-------------------------------------------------------------------------
-r2624 | tla | 2005-04-13 13:42:51 -0400 (Wed, 13 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectSearchesForObjects
-
-Change to exclude saved searches meant for things other than tickets.
-
-------------------------------------------------------------------------
-r2623 | tla | 2005-04-13 13:32:41 -0400 (Wed, 13 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
-
-Skeletal inline tests, to make autogen happy.
-
-------------------------------------------------------------------------
-r2622 | tla | 2005-04-13 12:27:38 -0400 (Wed, 13 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
-
-Lost a curly brace somewhere. Also noted location of tests for both files.
-
-------------------------------------------------------------------------
-r2620 | autrijus | 2005-04-13 11:19:54 -0400 (Wed, 13 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
-
-* Never mind my last change -- I saw "VALUE = 1" and trigger-happily
- inferred that it should default to CHECKED. Which is, of course,
- not the case. Reverted.
-------------------------------------------------------------------------
-r2619 | autrijus | 2005-04-13 08:13:01 -0400 (Wed, 13 Apr 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
-
-* VALUE="1" does not work on checkboxes; this renders the
- default True setting on the "Set to Privliged" checkbox
- in the "New User" screen useless, so new users are defaulted
- to unprivileged even though the code shows that they are
- intended to be so.
-------------------------------------------------------------------------
-r2617 | tla | 2005-04-12 21:52:54 -0400 (Tue, 12 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
-
-Added delete method & localized strings in SavedSearch
-Made SavedSearches::LimitByPrivacy safe to call multiple times
-
-------------------------------------------------------------------------
-r2609 | tla | 2005-04-12 15:59:07 -0400 (Tue, 12 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
-
-Made SavedSearches work, added error messages to SavedSearch, updated tests
-
-------------------------------------------------------------------------
-r2608 | tla | 2005-04-12 15:29:25 -0400 (Tue, 12 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/20savedsearch.t
-
-SavedSearch now shinily tested. API also changed somewhat.
-
-------------------------------------------------------------------------
-r2607 | tla | 2005-04-11 14:47:03 -0400 (Mon, 11 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
- A /rt/branches/3.4-RELEASE/lib/RT/SavedSearches.pm
-
-Semi-tested, semi-working checkpoint. Formal tests to follow shortly.
-
-------------------------------------------------------------------------
-r2603 | tla | 2005-04-10 19:51:56 -0400 (Sun, 10 Apr 2005) | 2 lines
-Changed paths:
- A /rt/branches/3.4-RELEASE/lib/RT/SavedSearch.pm
-
-UNTESTED first cut at a saved search lib wrapper.
-
-------------------------------------------------------------------------
-r2602 | tla | 2005-04-10 19:51:16 -0400 (Sun, 10 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
-Upped version dependency of DBIx::SearchBuilder to 1.24 for unique records
-feature in CustomFields.
-
-------------------------------------------------------------------------
-r2601 | tla | 2005-04-10 19:49:31 -0400 (Sun, 10 Apr 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
-User_Overlay: added OwnGroups method to get a collection of groups of which
-the user is a member.
-Record: revamped ObjectTypeStr according to suggestions.
-
-
-------------------------------------------------------------------------
-r2592 | jesse | 2005-04-06 15:27:58 -0400 (Wed, 06 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Elements/DisplayOptions
-
- r11940@hualien: jesse | 2005-04-07 03:23:40 +0800
- * Search "Order By" needed a more greedy matching operation; too many values were selected
-
-------------------------------------------------------------------------
-r2589 | jesse | 2005-04-06 14:58:41 -0400 (Wed, 06 Apr 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.4-RELEASE/html/Elements/TicketList
-
- r11936@hualien: jesse | 2005-04-07 02:54:28 +0800
- RT-Ticket: 6590
- RT-Status: resolved
- RT-Update: correspond
-
- resorting the search by clicking on a header no longer resets the format string
-
-
-------------------------------------------------------------------------
-r2588 | jesse | 2005-04-06 13:50:56 -0400 (Wed, 06 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/12-search.t
-
- r11933@hualien: jesse | 2005-04-07 01:49:50 +0800
- Half way through custom field search fixes
-
-------------------------------------------------------------------------
-r2586 | tla | 2005-04-04 04:28:02 -0400 (Mon, 04 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Elements/EditLinks
-
-Add a callback for the use of RTFM
-
-------------------------------------------------------------------------
-r2584 | tla | 2005-04-04 04:18:22 -0400 (Mon, 04 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
-Add a simple sub to return the object class with the RT::Lib:: prefix
-stripped off. Useful for displaying, e.g., "Ticket #35" or "Article #3".
-
-------------------------------------------------------------------------
-r2582 | tla | 2005-04-03 15:35:23 -0400 (Sun, 03 Apr 2005) | 2 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/URI/t.pm
-
-Get rid of LocalURIPrefix test. Would make this DTRT if I knew what TRT was.
-
-------------------------------------------------------------------------
-r2557 | tla | 2005-04-01 23:16:13 -0500 (Fri, 01 Apr 2005) | 2 lines
-Changed paths:
- A /rt/branches/3.4-RELEASE/lib/RT/URI/t.pm
-
-A scheme which allows "t:123" URIs, for ticket specification.
-
-------------------------------------------------------------------------
-r2552 | jesse | 2005-04-01 04:18:10 -0500 (Fri, 01 Apr 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/Makefile.in
-
- r10907@hualien: jesse | 2005-04-01 17:15:55 +0800
- * Added "make depends" as an alias for "make fixdeps" for Autrijus
-
-------------------------------------------------------------------------
-r2543 | jesse | 2005-03-31 03:50:11 -0500 (Thu, 31 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
-
- r10781@hualien: jesse | 2005-03-31 16:49:00 +0800
- * Fixes to seph's rtname regex
-
-------------------------------------------------------------------------
-r2542 | robert | 2005-03-30 23:03:13 -0500 (Wed, 30 Mar 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/config.layout
-
- r2579@dog: rspier | 2005-03-30 19:58:06 -0800
- RT-Ticket: 6572
- RT-Status: resolved
- RT-Update: correspond
-
- Remove second FHS layout
-
-
-------------------------------------------------------------------------
-r2541 | tla | 2005-03-30 19:20:44 -0500 (Wed, 30 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomField
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldText
-
-Fixes so that custom fields will pay attention to defaults, when the defaults
-are specified.
-
-------------------------------------------------------------------------
-r2537 | jesse | 2005-03-30 09:44:40 -0500 (Wed, 30 Mar 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/19-rtname.t
-
- r10696@hualien: jesse | 2005-03-30 18:19:21 +0800
- RT-Ticket: 6544
- RT-Status: resolved
- RT-Update: correspond
-
- * More graceful handling for historical $rtname tags
- -- From seph
-
-
-------------------------------------------------------------------------
-r2526 | jesse | 2005-03-28 05:25:03 -0500 (Mon, 28 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/SelectOwner
- M /rt/branches/3.4-RELEASE/html/Search/Elements/BuildFormatString
- M /rt/branches/3.4-RELEASE/html/Search/Elements/DisplayOptions
- M /rt/branches/3.4-RELEASE/html/Search/Elements/EditFormat
- M /rt/branches/3.4-RELEASE/html/Search/Elements/PickBasics
-
- r10271@hualien: jesse | 2005-03-28 15:49:42 +0800
- * A bunch of minor search query builder cleanup and loc improvements
-
-------------------------------------------------------------------------
-r2523 | jesse | 2005-03-27 12:08:05 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
-
- r10258@hualien: jesse | 2005-03-27 12:05:27 -0500
- * Record Message-Id when creating attachment records
-
-------------------------------------------------------------------------
-r2522 | jesse | 2005-03-27 04:14:15 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CurrentUser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r10231@hualien: jesse | 2005-03-27 17:12:44 +0800
- * More fixes for status messages broken in this morning's commit
-
-------------------------------------------------------------------------
-r2521 | jesse | 2005-03-27 02:40:16 -0500 (Sun, 27 Mar 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Header
-
- r10229@hualien: jesse | 2005-03-27 15:39:30 +0800
- * Added ALT text for BPS corporate logo -- Suggested by Jedi during YAPC.TW 2005
-
-
-------------------------------------------------------------------------
-r2520 | jesse | 2005-03-27 02:01:20 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Login
-
- r10227@hualien: jesse | 2005-03-27 15:00:51 +0800
- * Explicitly give the login box an id/name so passwords are not saved on user edit pages
-
-------------------------------------------------------------------------
-r2519 | jesse | 2005-03-27 01:43:55 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_SiteConfig.pm
-
- r10225@hualien: jesse | 2005-03-27 14:43:25 +0800
- * SiteConfig typofix
-
-------------------------------------------------------------------------
-r2518 | jesse | 2005-03-27 01:33:43 -0500 (Sun, 27 Mar 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/RT_SiteConfig.pm
-
- r10223@hualien: jesse | 2005-03-27 14:33:12 +0800
- RT-Ticket: 6566
- RT-Status: resolved
- RT-Update: correspond
-
- * Added a bit of documentation to RT_SiteConfig.pm -- Thanks to David Glasser
-
-
-------------------------------------------------------------------------
-r2517 | jesse | 2005-03-27 01:16:07 -0500 (Sun, 27 Mar 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r10221@hualien: jesse | 2005-03-27 14:15:36 +0800
- RT-Ticket: 6565
- RT-Status: resolved
- RT-Update: correspond
-
- * Overhauled README to be more correct, friendly and a bit cleaner
-
-------------------------------------------------------------------------
-r2516 | jesse | 2005-03-27 00:21:35 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r10211@hualien: jesse | 2005-03-27 13:18:07 +0800
- * Updated RT::Transaction to return better Foo changed from "bar" to "baz" messages
-
-------------------------------------------------------------------------
-r2515 | jesse | 2005-03-27 00:21:16 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r10210@hualien: jesse | 2005-03-27 13:17:02 +0800
- * Updated RT::Ticket->_Set to return more appropriate status messages
-
-------------------------------------------------------------------------
-r2514 | jesse | 2005-03-27 00:20:57 -0500 (Sun, 27 Mar 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r10209@hualien: jesse | 2005-03-27 13:16:31 +0800
- * Updated RT::User regression tests to not expect a pristine database
- * Updated RT::User->_Set to return more apropriate results messages (no more listing the actor)
-
-------------------------------------------------------------------------
-r2513 | jesse | 2005-03-27 00:20:37 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
-
- r10208@hualien: jesse | 2005-03-27 13:14:57 +0800
- * Fixing tests to not depend on a deprecated API
-
-------------------------------------------------------------------------
-r2512 | jesse | 2005-03-27 00:20:19 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMember_Overlay.pm
-
- r10207@hualien: jesse | 2005-03-27 13:13:26 +0800
- * Bugfixes to CachedGroupMember->SetDisabled unmasked by the RT::Record fixes
-
-------------------------------------------------------------------------
-r2511 | jesse | 2005-03-27 00:20:00 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
- M /rt/branches/3.4-RELEASE/html/Elements/MessageBox
- M /rt/branches/3.4-RELEASE/html/NoAuth/webrt.css
- M /rt/branches/3.4-RELEASE/html/User/Prefs.html
-
- r10206@hualien: jesse | 2005-03-27 13:11:53 +0800
- Improvements to big textareas to make sure they don't force browser windows to scroll.
-
-------------------------------------------------------------------------
-r2510 | jesse | 2005-03-27 00:19:40 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/index.html
-
- r10205@hualien: jesse | 2005-03-27 13:10:21 +0800
- * Slightly better introductory text on user and queue listings
-
-------------------------------------------------------------------------
-r2509 | jesse | 2005-03-27 00:19:20 -0500 (Sun, 27 Mar 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r10204@hualien: jesse | 2005-03-27 13:08:01 +0800
- * Improved generic messages returned by RT::Record->_Set()
- * Corrected RT::Record->_Set to return a Class::ReturnValue, rather than butchering it
- into an array. (This means that RT::Ticket->SetPriority can now be evaluated in boolean
- or list context, like it was supposed to be)
-
-------------------------------------------------------------------------
-r2508 | jesse | 2005-03-27 00:19:01 -0500 (Sun, 27 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r10203@hualien: jesse | 2005-03-27 13:01:43 +0800
- * Corrected HTTP::Server::Simple dependencies
-
-------------------------------------------------------------------------
-r2501 | jesse | 2005-03-23 21:29:28 -0500 (Wed, 23 Mar 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Update.html
-
- r9584@hualien: jesse | 2005-03-24 10:28:28 +0800
- RT-Ticket: 6558
- RT-Status: resolved
- RT-Update: correspond
-
- * Removed an extra </td> tag. Thanks to Steve Turner
-
-
-------------------------------------------------------------------------
-r2488 | jesse | 2005-03-22 10:16:55 -0500 (Tue, 22 Mar 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
-
- r9555@hualien: jesse | 2005-03-22 22:15:24 +0800
- * Properly set binmode for the standalone_httpd server. This makes
- UTF8 text that could be misinterpreted as Latin1 behave correctly.
-
-
-------------------------------------------------------------------------
-r2487 | jesse | 2005-03-21 12:10:03 -0500 (Mon, 21 Mar 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/standalone_httpd.in
- M /rt/branches/3.4-RELEASE/bin/webmux.pl.in
- M /rt/branches/3.4-RELEASE/html/NoAuth/images/autohandler
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Handler.pm
- A /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Standalone.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/02basic_web.t
- D /rt/branches/3.4-RELEASE/lib/t/regression/03basic_web.t
- A /rt/branches/3.4-RELEASE/lib/t/regression/03web_compiliation_errors.t
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r9502@hualien: jesse | 2005-03-22 01:07:59 +0800
- * Refactored standalone_httpd to use HTTP::Server::Simple::Mason
- * Moved some configuration from webmux.pl to RT::Interface::Web::Handler
- * Split apart some of the web tests for better isolation
-
-------------------------------------------------------------------------
-r2477 | jesse | 2005-03-16 03:09:00 -0500 (Wed, 16 Mar 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r8808@hualien: jesse | 2005-03-16 03:07:57 -0500
- RT-Ticket: 6537
- RT-Status: resolved
-
- Explicit transaction description for changed passwords
-
-
-------------------------------------------------------------------------
-r2476 | jesse | 2005-03-16 03:08:55 -0500 (Wed, 16 Mar 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r2475 | jesse | 2005-03-16 03:08:32 -0500 (Wed, 16 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/index.html
-
- r8746@hualien: jesse | 2005-03-15 01:07:30 -0500
- Refactored the top-level admin menu to make it easier to add and remove options
-
-------------------------------------------------------------------------
-r2474 | alexmv | 2005-03-16 02:53:59 -0500 (Wed, 16 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- * Users and groups can have transactions; ShowTicket isn't needed to
- see these
-
-------------------------------------------------------------------------
-r2354 | jesse | 2005-03-14 02:22:36 -0500 (Mon, 14 Mar 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Groups.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Tickets.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Transactions.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Users.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/CustomFields.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/CustomFields.html
-
- r8456@hualien: jesse | 2005-03-14 02:20:50 -0500
- Overhaul of custom field editing code to make it easier to add custom fields
- for new object types
-
-------------------------------------------------------------------------
-r2353 | jesse | 2005-03-14 01:38:58 -0500 (Mon, 14 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/NoAuth/webrt.css
-
- r8453@hualien: jesse | 2005-03-14 01:37:00 -0500
- Hilighted menu options are now the right size
-
-------------------------------------------------------------------------
-r2350 | jesse | 2005-03-14 01:31:33 -0500 (Mon, 14 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/NoAuth/webrt.css
-
- r8450@hualien: jesse | 2005-03-14 01:30:59 -0500
- Slight style cleanup to page actions.
-
-------------------------------------------------------------------------
-r2343 | jesse | 2005-03-11 20:17:02 -0500 (Fri, 11 Mar 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Scrips_Overlay.pm
-
- r6769@hualien: jesse | 2005-03-11 20:16:42 -0500
- Now when running scrips on a disabled queue, run global scrips as well as per-queue scrips.
-
-
-
-------------------------------------------------------------------------
-r2332 | jesse | 2005-03-09 17:25:25 -0500 (Wed, 09 Mar 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r6651@hualien: jesse | 2005-03-09 17:23:54 -0500
- RT-Ticket: 6459
- RT-Status: resolved
- RT-Update: correspond
-
- Sanity fixes for _AddLink's API from Todd Chapman
-
-
-------------------------------------------------------------------------
-r2313 | jesse | 2005-03-07 16:03:05 -0500 (Mon, 07 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/Objects.html
-
- r6568@hualien: jesse | 2005-03-07 16:01:44 -0500
- Adding support for selecting custom fields for RTFM objects
-
-------------------------------------------------------------------------
-r2306 | jesse | 2005-03-06 17:33:52 -0500 (Sun, 06 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Row
-
- r6473@hualien: jesse | 2005-03-06 16:04:46 -0500
- Small cleanups to print out less hardcoded style information (introduced by the pull-up from 3.2)
-
-------------------------------------------------------------------------
-r2305 | jesse | 2005-03-06 17:33:46 -0500 (Sun, 06 Mar 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
-
- r6465@hualien: jesse | 2005-03-06 15:00:29 -0500
- r6450@hualien: jesse | 2005-03-06 12:44:27 -0500
- RT-Ticket: 6496
- RT-Status: resolved
- RT-Update: correspond
-
- Content-Transfer-Encoding should have been '8bit' not '8-bit'
-
-
-------------------------------------------------------------------------
-r2304 | jesse | 2005-03-06 17:33:37 -0500 (Sun, 06 Mar 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/aclocal.m4
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
-
- r6464@hualien: jesse | 2005-03-06 15:00:23 -0500
- r6371@hualien: jesse | 2005-03-05 19:29:35 -0500
- r3963@hualien (orig r2142): jesse | 2005-01-30 12:45:15 -0500
- When we can't load a user by email address, make sure we can't load that user by name before returning an error
-
-
-
-------------------------------------------------------------------------
-r2303 | jesse | 2005-03-06 17:33:17 -0500 (Sun, 06 Mar 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r6462@hualien: jesse | 2005-03-06 14:57:07 -0500
- r4715@hualien: jesse | 2005-02-15 12:34:54 -0500
- RT-Ticket: 6443
- RT-Status: resolved
- RT-Update: correspond
-
- Ticket Searches on AdminCc would fail on non-mysql databases due to a case error
-
-
-
-------------------------------------------------------------------------
-r2302 | jesse | 2005-03-06 17:33:10 -0500 (Sun, 06 Mar 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/RT/I18N/pl.po
-
- r6461@hualien: jesse | 2005-03-06 14:57:03 -0500
- r4070@hualien: jesse | 2005-02-03 11:22:59 -0500
- Polish Translation from Piotr Sliwa
-
-
-
-
-------------------------------------------------------------------------
-r2301 | jesse | 2005-03-06 17:33:00 -0500 (Sun, 06 Mar 2005) | 13 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay_SQL.pm
-
- r6459@hualien: jesse | 2005-03-06 14:55:49 -0500
- r3935@hualien: jesse | 2005-01-26 12:15:42 -0500
- RT-Ticket: 6378
- RT-Status: resolved
- RT-Update: correspond
-
- Added a flag to allow tools to use the RT API to search for deleted tickets.
- (Ruslan)
-
-
-
-
-
-------------------------------------------------------------------------
-r2300 | jesse | 2005-03-06 17:32:39 -0500 (Sun, 06 Mar 2005) | 17 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r6457@hualien: jesse | 2005-03-06 14:55:20 -0500
- r2575@hualien: jesse | 2005-01-06 17:15:39 -0500
- RT-Ticket: 6327
- RT-Status: resolved
- RT-Update: correspond
-
- Users who had "DeleteTicket" but not "ModifyTicket" could not delete tickets.
-
- This is introduced because "Ticket::SetStatus" checks the ACL but
- forgets to tell "Ticket::_Set" NOT to check (which does check again, but
- only against the 'ModifyTicket' right, and thus denies the change).
-
- Thanks to Ruediger Riediger
-
-
-
-
-------------------------------------------------------------------------
-r2299 | jesse | 2005-03-06 17:32:31 -0500 (Sun, 06 Mar 2005) | 11 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
-
- r6456@hualien: jesse | 2005-03-06 14:55:05 -0500
- r2573@hualien: jesse | 2005-01-06 17:10:02 -0500
- RT-Ticket: 6322
- RT-Status: resolved
- RT-Update: correspond
-
- New French translation from robitail@iro.umontreal.ca
-
-
-
-
-------------------------------------------------------------------------
-r2298 | jesse | 2005-03-06 17:32:18 -0500 (Sun, 06 Mar 2005) | 19 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/ParseFormat
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.4-RELEASE/html/Elements/RT__Ticket/ColumnMap
-
- r6454@hualien: jesse | 2005-03-06 14:53:48 -0500
- r2568@hualien: jesse | 2005-01-06 16:57:40 -0500
- RT-Ticket: 6336
- RT-Status: resolved
- RT-Update: correspond
-
-
- The attribute "align" in COLUMN_MAP wasn't usable, because it could not be
- used for a complete column, so I added a /ALIGN:.. section in
- CollectionAsTable/ParseFormat and use it in Row.
-
- There also was a minor error to be corrected, since the old variant of
- ParseFormat did not allow more than one /ANYTHING:... to be use (in my
- example /TITLE:.../ALIGN:...) --Dirk Pape
-
-
-
-
-
-------------------------------------------------------------------------
-r2297 | jesse | 2005-03-06 17:32:12 -0500 (Sun, 06 Mar 2005) | 11 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.4-RELEASE/html/REST/1.0/autohandler
-
- r6453@hualien: jesse | 2005-03-06 14:53:44 -0500
- r2567@hualien: jesse | 2005-01-06 16:37:01 -0500
- RT-Ticket: 6338
- RT-Status: resolved
- RT-Update: correspond
-
- Force UTF8 content type on replies from RT's REST interface (Thanks to Dirk Pape)
-
-
-
-
-------------------------------------------------------------------------
-r2296 | jesse | 2005-03-06 17:32:05 -0500 (Sun, 06 Mar 2005) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
-
- r6452@hualien: jesse | 2005-03-06 14:53:41 -0500
- r2514@hualien: jesse | 2004-12-29 14:43:06 -0500
- Updated Attachment import code to take database-specific lob encoding into account
-
-
-
-
-------------------------------------------------------------------------
-r2286 | jesse | 2005-03-05 20:11:59 -0500 (Sat, 05 Mar 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE
-
-
-------------------------------------------------------------------------
-r2285 | jesse | 2005-03-05 20:11:52 -0500 (Sat, 05 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/docs/design_docs/realflow.txt
- A /rt/branches/3.4-RELEASE/docs/design_docs/rt-mvc
-
- r6290@hualien: jesse | 2005-03-05 19:06:54 -0500
- random design docs
-
-------------------------------------------------------------------------
-r2281 | jesse | 2005-03-05 17:06:33 -0500 (Sat, 05 Mar 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Group_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/18stale_delegations_cleanup.t
-
- r6277@hualien: jesse | 2005-03-05 17:06:08 -0500
- RT-Ticket: 6184
- RT-Status: resolved
- RT-Update: correspond
-
- Much better coverage of delegation revocation when users' group memberships are changed - Mike Whitson (BPS)
-
-
-------------------------------------------------------------------------
-r2280 | jesse | 2005-03-05 16:10:34 -0500 (Sat, 05 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r6272@hualien: jesse | 2005-03-05 16:08:36 -0500
- Better support for loading custom fields by name
-
-------------------------------------------------------------------------
-r2275 | mwhitson | 2005-03-03 13:55:06 -0500 (Thu, 03 Mar 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/17multiple_deleg_revocation.t
-
-RT-Ticket: 6482
-RT-Status: resolved
-RT-Update: correspond
-Fix incorrect loop exit test in RT::ACE::_Delete such that multiply delegated ACEs are all
-cleaned up when the parent ACE is revoked.
-
-------------------------------------------------------------------------
-r2274 | mwhitson | 2005-03-03 12:34:13 -0500 (Thu, 03 Mar 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/lib/RT/Group_Overlay.pm
-
-rt-ticket: 6450
-rt-status: resolved
-rt-update: correspond
-Correct inaccurate POD for RT::Group::MembersObj and DeepMembersObj.
-
-------------------------------------------------------------------------
-r2271 | jesse | 2005-03-01 15:24:42 -0500 (Tue, 01 Mar 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r6108@hualien: jesse | 2005-03-01 15:20:28 -0500
- * 'LimitLinkedFrom' in RT::Tickets didn't work due to a typo. Fixed.
-
-------------------------------------------------------------------------
-r2266 | jesse | 2005-02-27 19:02:44 -0500 (Sun, 27 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
-
- r6061@hualien: jesse | 2005-02-27 18:58:48 -0500
- RT::Transaction->Delete implemented. (for RTFM)
-
-------------------------------------------------------------------------
-r2263 | jesse | 2005-02-24 17:52:18 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
-
- r5948@hualien: jesse | 2005-02-24 16:47:52 -0500
- Custom Field API extension and cleanup to allow new objects to use custom fields. (No backwards-incompat changes)
-
-------------------------------------------------------------------------
-r2262 | jesse | 2005-02-24 17:51:53 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/index.html
-
- r5947@hualien: jesse | 2005-02-24 16:46:11 -0500
- Refactoring Custom Field admin UI for extensibility
-
-------------------------------------------------------------------------
-r2261 | jesse | 2005-02-24 17:51:28 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ObjectCustomFields
-
- r5946@hualien: jesse | 2005-02-24 16:44:28 -0500
- Refactoring Custom Field admin UI for extensibility
-
-------------------------------------------------------------------------
-r2260 | jesse | 2005-02-24 17:51:01 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditCustomFields
-
- r5945@hualien: jesse | 2005-02-24 16:43:36 -0500
- Minor stylistic cleanups for web components
-
-------------------------------------------------------------------------
-r2259 | jesse | 2005-02-24 17:01:23 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickCustomFields
-
- r5944@hualien: jesse | 2005-02-24 16:43:05 -0500
- Minor stylistic cleanups for web components
-
-------------------------------------------------------------------------
-r2258 | jesse | 2005-02-24 17:00:58 -0500 (Thu, 24 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/16-transaction_cf_tests.t
-
- r5943@hualien: jesse | 2005-02-24 16:42:01 -0500
- Upgraded a private _LookupTypes method to a public CustomFieldUpdateTypes method to make it easier to ad custom fields to other objects
-
-
-------------------------------------------------------------------------
-r2257 | jesse | 2005-02-24 16:50:52 -0500 (Thu, 24 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r5942@hualien: jesse | 2005-02-24 16:31:48 -0500
- * Have the configure script default to the web group for the RT group if no rt group exists or is specified
-
-------------------------------------------------------------------------
-r2254 | jesse | 2005-02-24 15:13:10 -0500 (Thu, 24 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r5932@hualien: jesse | 2005-02-24 15:09:27 -0500
- Robert added new functionality to support autodetection of RT and Web users in ./configure
-
-
-------------------------------------------------------------------------
-r2249 | jesse | 2005-02-22 16:39:49 -0500 (Tue, 22 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/16-transaction_cf_tests.t
-
- r5747@hualien: jesse | 2005-02-22T21:33:09.438624Z
- Better transaction UpdateCustomFields API
-
-
-------------------------------------------------------------------------
-r2238 | jesse | 2005-02-15 12:36:54 -0500 (Tue, 15 Feb 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r4714@hualien: jesse | 2005-02-15T17:34:26.880496Z
- RT-Ticket: 6443
- RT-Status: resolved
- RT-Update: correspond
-
- Ticket Searches on AdminCc would fail on non-mysql databases due to a case error
-
-
-------------------------------------------------------------------------
-r2235 | jesse | 2005-02-15 11:57:54 -0500 (Tue, 15 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r4711@hualien: jesse | 2005-02-15T16:19:52.970993Z
- Bumping to 3.4.1
-
-
-------------------------------------------------------------------------
-r2234 | jesse | 2005-02-15 11:57:44 -0500 (Tue, 15 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r4710@hualien: jesse | 2005-02-15T16:18:22.880530Z
- Updated 2.0 upgrade instructions
-
-------------------------------------------------------------------------
-r2233 | jesse | 2005-02-14 11:17:52 -0500 (Mon, 14 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- D /rt/branches/3.4-RELEASE/lib/RT/I18N/en_malkovich.po
-
- r4703@hualien: jesse | 2005-02-14T15:56:23.506986Z
- Removed broken Malkovich translation
-
-
-------------------------------------------------------------------------
-r2232 | jesse | 2005-02-14 11:17:43 -0500 (Mon, 14 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
-
- r4702@hualien: jesse | 2005-02-14T15:56:02.798500Z
- Updated German translation from Torsten Brumm
-
-
-
-------------------------------------------------------------------------
-r2231 | jesse | 2005-02-13 23:43:57 -0500 (Sun, 13 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/standalone_httpd.in
-
- r4697@hualien: jesse | 2005-02-14T04:42:05.489259Z
- * Standalone HTTP Daemon now deals properly with unicode input/output
-
-
-
-------------------------------------------------------------------------
-r2230 | jesse | 2005-02-13 23:43:44 -0500 (Sun, 13 Feb 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
-
- r4696@hualien: jesse | 2005-02-14T04:06:07.158818Z
- RT-Ticket: 6429
- RT-Update: correspond
- RT-Status: resolved
-
- Updated Italian translation from Angelo Turetta. Thanks!
-
-
-
-------------------------------------------------------------------------
-r2229 | jesse | 2005-02-13 23:43:33 -0500 (Sun, 13 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Row
-
- r4695@hualien: jesse | 2005-02-14T04:04:07.657861Z
- Fix for issues with words with Umlauts in search result listings
-
-
-
-------------------------------------------------------------------------
-r2228 | jesse | 2005-02-13 22:39:44 -0500 (Sun, 13 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/webmux.pl.in
-
- r4692@hualien: jesse | 2005-02-14T03:38:09.047131Z
- Disabled automatic clearing of mason component cache on start with FastCGI. It doesn't work properly in the multiprocess
- environment.
-
-
-------------------------------------------------------------------------
-r2227 | jesse | 2005-02-13 22:39:37 -0500 (Sun, 13 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/rt-crontool.in
-
- r4691@hualien: jesse | 2005-02-14T03:37:15.362723Z
- The crontool was using local and system libs in the wrong order
-
-
-------------------------------------------------------------------------
-r2226 | jesse | 2005-02-13 22:32:27 -0500 (Sun, 13 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/UserRights.html
-
- r4689@hualien: jesse | 2005-02-14T03:30:20.309679Z
- A typo prevented users from being able to revoke other users' rights on custom fields
-
-
-------------------------------------------------------------------------
-r2224 | jesse | 2005-02-11 16:52:07 -0500 (Fri, 11 Feb 2005) | 1 line
-Changed paths:
- M /rt/branches/3.4-RELEASE/README
-
-README typo fix
-------------------------------------------------------------------------
-r2223 | jesse | 2005-02-10 22:04:55 -0500 (Thu, 10 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/attachments
-
- r4683@hualien: jesse | 2005-02-11T03:00:33.383809Z
- Use the "OriginalContent" rather than our encoded one. this might make cli attachment downloads work better
-
-
-
-------------------------------------------------------------------------
-r2221 | jesse | 2005-02-10 17:11:33 -0500 (Thu, 10 Feb 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
-
- r4678@hualien: jesse | 2005-02-10T22:10:29.492739Z
- RT-Ticket: 6406
- RT-Status: resolved
- RT-Update: correspond
-
- Query builder fixes for sites with multiple identically named custom fields
-
-
-
-
-------------------------------------------------------------------------
-r2220 | jesse | 2005-02-10 16:34:23 -0500 (Thu, 10 Feb 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
-
- r4676@hualien: jesse | 2005-02-10T21:33:19.355354Z
- RT-Ticket: 6364
- RT-Status: resolved
- RT-Update: corerspond
-
- Updated Czech translation
-
-
-
-------------------------------------------------------------------------
-r2219 | jesse | 2005-02-10 16:25:22 -0500 (Thu, 10 Feb 2005) | 11 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/Makefile.in
- M /rt/branches/3.4-RELEASE/docs/design_docs/cvs_integration
- M /rt/branches/3.4-RELEASE/docs/design_docs/link-definitions.txt
- M /rt/branches/3.4-RELEASE/html/Search/Bulk.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/Tabs
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/en_malkovich.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
- M /rt/branches/3.4-RELEASE/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT.pm.in
-
- r4673@hualien: jesse | 2005-02-10T21:24:02.076922Z
- RT-Ticket: 6379
- RT-Status: resolved
- RT-Update: correspond
-
- Correct a common spelling error:
- perl -pi.bak -e's/seperat/separat/g; s/Seperat/Separat/g;' $(find .)
-
-
-
-
-------------------------------------------------------------------------
-r2218 | jesse | 2005-02-10 16:25:10 -0500 (Thu, 10 Feb 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValue_Overlay.pm
-
- r4672@hualien: jesse | 2005-02-10T21:19:40.639192Z
- Fixes to handle large text custom fields gracefully
-
-
-
-------------------------------------------------------------------------
-r2217 | jesse | 2005-02-10 16:15:16 -0500 (Thu, 10 Feb 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
-
- r4669@hualien: jesse | 2005-02-10T21:11:24.084088Z
- RT-Ticket: 6418
- RT-Status: resolved
- RT-Update: correspond
-
- Applied new hungarian translation
-
-
-
-------------------------------------------------------------------------
-r2216 | jesse | 2005-02-10 16:15:06 -0500 (Thu, 10 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/history
-
- r4668@hualien: jesse | 2005-02-10T20:54:30.684091Z
- removed effective ticket from history listing
-
-------------------------------------------------------------------------
-r2198 | jesse | 2005-02-08 12:27:46 -0500 (Tue, 08 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/RT__Ticket/ColumnMap
-
- r4644@hualien: jesse | 2005-02-08T17:26:39.133201Z
- "Status" in ticket listings is now localized
-
-
-------------------------------------------------------------------------
-r2196 | jesse | 2005-02-07 12:22:50 -0500 (Mon, 07 Feb 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectStage
-
- r4103@hualien: jesse | 2005-02-07T17:21:04.911429Z
- RT-Ticket: 6417
- RT-Status: resolved
- RT-Update: correspond
-
- Only show the TransactionBatch scrip stage if TransactionBatch
- scrips are enabled. --Dave Rolsky
-
-
-------------------------------------------------------------------------
-r2195 | jesse | 2005-02-07 12:22:15 -0500 (Mon, 07 Feb 2005) | 10 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectScripAction
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectScripCondition
- M /rt/branches/3.4-RELEASE/html/Elements/Submit
- M /rt/branches/3.4-RELEASE/html/Ticket/Display.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowTransaction
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/Tabs
- M /rt/branches/3.4-RELEASE/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
-
- r4102@hualien: jesse | 2005-02-07T17:20:01.069833Z
- RT-Ticket: 6415
- RT-Status: resolved
- RT-Update: correspond
-
- A bunch of small fixes to avoid minor warnings in the RT code. --Dave Rolsky
-
-
-
-
-------------------------------------------------------------------------
-r2194 | jesse | 2005-02-04 11:03:39 -0500 (Fri, 04 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/index.html
- M /rt/branches/3.4-RELEASE/html/Elements/ShowMemberships
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMemberOf
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowReferences
-
- r4082@hualien: jesse | 2005-02-04T16:03:07.513522Z
- Fixing some links that broke when RT was not installed at the server root
-
-------------------------------------------------------------------------
-r2193 | jesse | 2005-02-03 12:27:23 -0500 (Thu, 03 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/SelectOwner
-
- r4075@hualien: jesse | 2005-02-03T17:27:08.548583Z
- SelectOwner was displaying "Nobody" twice due to smarter backend code that broke the not-so-smart frontend. Fixed the frontend.
-
-
-------------------------------------------------------------------------
-r2150 | jesse | 2005-02-01 09:42:31 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r3972@hualien: jesse | 2005-02-01T14:36:00.190124Z
- 3.4.0
-
-------------------------------------------------------------------------
-r2149 | jesse | 2005-02-01 09:42:14 -0500 (Tue, 01 Feb 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r3971@hualien: jesse | 2005-02-01T14:35:45.436824Z
- Bumping SearchBuilder dependency to 1.21
-
-
-------------------------------------------------------------------------
-r2148 | jesse | 2005-02-01 09:41:54 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r3970@hualien: jesse | 2005-02-01T14:21:00.328018Z
- Merge reverted a date in the README
-
-------------------------------------------------------------------------
-r2147 | jesse | 2005-02-01 09:20:40 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/Makefile.in
- M /rt/branches/3.4-RELEASE/README
- M /rt/branches/3.4-RELEASE/bin/mason_handler.fcgi.in
- M /rt/branches/3.4-RELEASE/bin/mason_handler.scgi.in
- M /rt/branches/3.4-RELEASE/bin/mason_handler.svc.in
- M /rt/branches/3.4-RELEASE/bin/rt-crontool.in
- M /rt/branches/3.4-RELEASE/bin/rt-mailgate.in
- M /rt/branches/3.4-RELEASE/bin/rt.in
- M /rt/branches/3.4-RELEASE/bin/standalone_httpd.in
- M /rt/branches/3.4-RELEASE/bin/webmux.pl.in
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/GroupRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/Modify.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/Objects.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/UserRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/AddCustomFieldValue
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/CreateUserCalled
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/CustomFieldTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditCustomField
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditCustomFieldValues
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditScrip
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditScrips
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditTemplates
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/EditUserComments
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/GlobalCustomFieldTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/GroupTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/Header
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ListGlobalScrips
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ModifyTemplate
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ObjectCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickCustomFields
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/PickObjects
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/QueueTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectCustomFieldLookupType
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectCustomFieldType
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectGroups
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectModifyGroup
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectModifyQueue
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectModifyUser
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectNewGroupMembers
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectRights
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectScrip
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectScripAction
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectScripCondition
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectSingleOrMultiple
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectStage
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectTemplate
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SelectUsers
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/SystemTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/ToolTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/UserTabs
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Groups.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Tickets.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Queue-Transactions.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/Users.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/CustomFields/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/GroupRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/Scrip.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/Scrips.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/Template.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/Templates.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/UserRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Global/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/CustomFields.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/GroupRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/History.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/Members.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/Modify.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/UserRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Groups/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/CustomField.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/CustomFields.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/GroupRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Modify.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/People.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Scrip.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Scrips.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Template.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/Templates.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/UserRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/Queues/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Tools/Configuration.html
- M /rt/branches/3.4-RELEASE/html/Admin/Tools/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/CustomFields.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/History.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Memberships.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/Modify.html
- M /rt/branches/3.4-RELEASE/html/Admin/Users/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/autohandler
- M /rt/branches/3.4-RELEASE/html/Admin/index.html
- M /rt/branches/3.4-RELEASE/html/Approvals/Display.html
- M /rt/branches/3.4-RELEASE/html/Approvals/Elements/Approve
- M /rt/branches/3.4-RELEASE/html/Approvals/Elements/PendingMyApproval
- M /rt/branches/3.4-RELEASE/html/Approvals/Elements/ShowDependency
- M /rt/branches/3.4-RELEASE/html/Approvals/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/Approvals/index.html
- M /rt/branches/3.4-RELEASE/html/Download/CustomFieldValue/dhandler
- M /rt/branches/3.4-RELEASE/html/Download/Tabular/dhandler
- M /rt/branches/3.4-RELEASE/html/Elements/BevelBoxRaisedEnd
- M /rt/branches/3.4-RELEASE/html/Elements/BevelBoxRaisedStart
- M /rt/branches/3.4-RELEASE/html/Elements/Callback
- M /rt/branches/3.4-RELEASE/html/Elements/Checkbox
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/ParseFormat
- M /rt/branches/3.4-RELEASE/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.4-RELEASE/html/Elements/CreateTicket
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomField
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldBinary
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldFreeform
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldImage
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldSelect
- M /rt/branches/3.4-RELEASE/html/Elements/EditCustomFieldText
- M /rt/branches/3.4-RELEASE/html/Elements/EditLinks
- M /rt/branches/3.4-RELEASE/html/Elements/Error
- M /rt/branches/3.4-RELEASE/html/Elements/Footer
- M /rt/branches/3.4-RELEASE/html/Elements/GotoTicket
- M /rt/branches/3.4-RELEASE/html/Elements/Header
- M /rt/branches/3.4-RELEASE/html/Elements/ListActions
- M /rt/branches/3.4-RELEASE/html/Elements/Login
- M /rt/branches/3.4-RELEASE/html/Elements/Menu
- M /rt/branches/3.4-RELEASE/html/Elements/MessageBox
- M /rt/branches/3.4-RELEASE/html/Elements/MyRequests
- M /rt/branches/3.4-RELEASE/html/Elements/MyTickets
- M /rt/branches/3.4-RELEASE/html/Elements/PageLayout
- M /rt/branches/3.4-RELEASE/html/Elements/QueryString
- M /rt/branches/3.4-RELEASE/html/Elements/QuickCreate
- M /rt/branches/3.4-RELEASE/html/Elements/Quicksearch
- M /rt/branches/3.4-RELEASE/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.4-RELEASE/html/Elements/Refresh
- M /rt/branches/3.4-RELEASE/html/Elements/ScrubHTML
- M /rt/branches/3.4-RELEASE/html/Elements/Section
- M /rt/branches/3.4-RELEASE/html/Elements/SelectAttachmentField
- M /rt/branches/3.4-RELEASE/html/Elements/SelectBoolean
- M /rt/branches/3.4-RELEASE/html/Elements/SelectCustomFieldOperator
- M /rt/branches/3.4-RELEASE/html/Elements/SelectCustomFieldValue
- M /rt/branches/3.4-RELEASE/html/Elements/SelectDate
- M /rt/branches/3.4-RELEASE/html/Elements/SelectDateRelation
- M /rt/branches/3.4-RELEASE/html/Elements/SelectDateType
- M /rt/branches/3.4-RELEASE/html/Elements/SelectEqualityOperator
- M /rt/branches/3.4-RELEASE/html/Elements/SelectGroups
- M /rt/branches/3.4-RELEASE/html/Elements/SelectLang
- M /rt/branches/3.4-RELEASE/html/Elements/SelectLinkType
- M /rt/branches/3.4-RELEASE/html/Elements/SelectMatch
- M /rt/branches/3.4-RELEASE/html/Elements/SelectNewTicketQueue
- M /rt/branches/3.4-RELEASE/html/Elements/SelectOwner
- M /rt/branches/3.4-RELEASE/html/Elements/SelectQueue
- M /rt/branches/3.4-RELEASE/html/Elements/SelectResultsPerPage
- M /rt/branches/3.4-RELEASE/html/Elements/SelectSortOrder
- M /rt/branches/3.4-RELEASE/html/Elements/SelectStatus
- M /rt/branches/3.4-RELEASE/html/Elements/SelectTicketSortBy
- M /rt/branches/3.4-RELEASE/html/Elements/SelectTicketTypes
- M /rt/branches/3.4-RELEASE/html/Elements/SelectUsers
- M /rt/branches/3.4-RELEASE/html/Elements/SelectWatcherType
- M /rt/branches/3.4-RELEASE/html/Elements/SetupSessionCookie
- M /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFieldImage
- M /rt/branches/3.4-RELEASE/html/Elements/ShowCustomFields
- M /rt/branches/3.4-RELEASE/html/Elements/ShowLink
- M /rt/branches/3.4-RELEASE/html/Elements/ShowLinks
- M /rt/branches/3.4-RELEASE/html/Elements/ShowMemberships
- M /rt/branches/3.4-RELEASE/html/Elements/SimpleSearch
- M /rt/branches/3.4-RELEASE/html/Elements/Submit
- M /rt/branches/3.4-RELEASE/html/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/Elements/TicketList
- M /rt/branches/3.4-RELEASE/html/Elements/TitleBox
- M /rt/branches/3.4-RELEASE/html/Elements/TitleBoxEnd
- M /rt/branches/3.4-RELEASE/html/Elements/TitleBoxStart
- M /rt/branches/3.4-RELEASE/html/NoAuth/Logout.html
- M /rt/branches/3.4-RELEASE/html/NoAuth/Reminder.html
- M /rt/branches/3.4-RELEASE/html/NoAuth/webrt.css
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/queue/default
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/queue/ns
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/default
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/history
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/ticket/links
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/user/default
- M /rt/branches/3.4-RELEASE/html/REST/1.0/Forms/user/ns
- M /rt/branches/3.4-RELEASE/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.4-RELEASE/html/REST/1.0/autohandler
- M /rt/branches/3.4-RELEASE/html/REST/1.0/dhandler
- M /rt/branches/3.4-RELEASE/html/REST/1.0/logout
- M /rt/branches/3.4-RELEASE/html/REST/1.0/search/dhandler
- M /rt/branches/3.4-RELEASE/html/REST/1.0/search/ticket
- M /rt/branches/3.4-RELEASE/html/REST/1.0/ticket/comment
- M /rt/branches/3.4-RELEASE/html/REST/1.0/ticket/link
- M /rt/branches/3.4-RELEASE/html/REST/1.0/ticket/merge
- M /rt/branches/3.4-RELEASE/html/Search/Build.html
- M /rt/branches/3.4-RELEASE/html/Search/Bulk.html
- M /rt/branches/3.4-RELEASE/html/Search/Edit.html
- M /rt/branches/3.4-RELEASE/html/Search/Elements/BuildFormatString
- M /rt/branches/3.4-RELEASE/html/Search/Elements/DisplayOptions
- M /rt/branches/3.4-RELEASE/html/Search/Elements/EditFormat
- M /rt/branches/3.4-RELEASE/html/Search/Elements/EditQuery
- M /rt/branches/3.4-RELEASE/html/Search/Elements/EditSearches
- M /rt/branches/3.4-RELEASE/html/Search/Elements/NewListActions
- M /rt/branches/3.4-RELEASE/html/Search/Elements/PickBasics
- M /rt/branches/3.4-RELEASE/html/Search/Elements/PickCFs
- M /rt/branches/3.4-RELEASE/html/Search/Elements/PickCriteria
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SearchPrivacy
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectAndOr
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectGroup
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectLinks
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectPersonType
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectSearchObject
- M /rt/branches/3.4-RELEASE/html/Search/Elements/SelectSearchesForObjects
- M /rt/branches/3.4-RELEASE/html/Search/Results.html
- M /rt/branches/3.4-RELEASE/html/Search/Results.rdf
- M /rt/branches/3.4-RELEASE/html/Search/Results.tsv
- M /rt/branches/3.4-RELEASE/html/SelfService/Attachment/dhandler
- M /rt/branches/3.4-RELEASE/html/SelfService/Closed.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Create.html
- M /rt/branches/3.4-RELEASE/html/SelfService/CreateTicketInQueue.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Display.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Elements/GotoTicket
- M /rt/branches/3.4-RELEASE/html/SelfService/Elements/Header
- M /rt/branches/3.4-RELEASE/html/SelfService/Elements/MyRequests
- M /rt/branches/3.4-RELEASE/html/SelfService/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/SelfService/Error.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Prefs.html
- M /rt/branches/3.4-RELEASE/html/SelfService/Update.html
- M /rt/branches/3.4-RELEASE/html/SelfService/index.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Attachment/dhandler
- M /rt/branches/3.4-RELEASE/html/Ticket/Create.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Display.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/AddWatchers
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/BulkLinks
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditBasics
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditCustomFields
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditDates
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditPeople
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/EditWatchers
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/FindAttachments
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/PreviewScrips
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowAttachments
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowBasics
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowCustomFields
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowDates
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowDependencies
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowGroupMembers
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMemberOf
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMembers
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMessageHeaders
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowPeople
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowReferences
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowRequestor
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowSummary
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowTransaction
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowUserEntry
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/Ticket/History.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Modify.html
- M /rt/branches/3.4-RELEASE/html/Ticket/ModifyAll.html
- M /rt/branches/3.4-RELEASE/html/Ticket/ModifyDates.html
- M /rt/branches/3.4-RELEASE/html/Ticket/ModifyLinks.html
- M /rt/branches/3.4-RELEASE/html/Ticket/ModifyPeople.html
- M /rt/branches/3.4-RELEASE/html/Ticket/ShowEmailRecord.html
- M /rt/branches/3.4-RELEASE/html/Ticket/Update.html
- M /rt/branches/3.4-RELEASE/html/Tools/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/Tools/MyDay.html
- M /rt/branches/3.4-RELEASE/html/Tools/Offline.html
- M /rt/branches/3.4-RELEASE/html/User/Delegation.html
- M /rt/branches/3.4-RELEASE/html/User/Elements/DelegateRights
- M /rt/branches/3.4-RELEASE/html/User/Elements/GroupTabs
- M /rt/branches/3.4-RELEASE/html/User/Elements/Tabs
- M /rt/branches/3.4-RELEASE/html/User/Groups/Members.html
- M /rt/branches/3.4-RELEASE/html/User/Groups/Modify.html
- M /rt/branches/3.4-RELEASE/html/User/Groups/index.html
- M /rt/branches/3.4-RELEASE/html/User/Prefs.html
- M /rt/branches/3.4-RELEASE/html/autohandler
- M /rt/branches/3.4-RELEASE/html/index.html
- M /rt/branches/3.4-RELEASE/html/l
- M /rt/branches/3.4-RELEASE/lib/RT/ACE.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ACL.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/AutoOpen.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Autoreply.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/Notify.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/NotifyAsComment.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/RecordComment.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/RecordCorrespondence.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/ResolveMembers.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/SetPriority.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Action/UserDefined.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachments.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attribute.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attributes.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Base.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMember.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMembers.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/AnyTransaction.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/BeforeDue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/Overdue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/PriorityChange.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/PriorityExceeds.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/QueueChange.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/StatusChange.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Condition/UserDefined.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CurrentUser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFields.pm
- M /rt/branches/3.4-RELEASE/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Date.pm
- M /rt/branches/3.4-RELEASE/lib/RT/EmailParser.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Group.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMember.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMembers.pm
- M /rt/branches/3.4-RELEASE/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Group_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Groups.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Handle.pm
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.pm
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/i_default.pm
- M /rt/branches/3.4-RELEASE/lib/RT/I18N.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/CLI.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email/Auth/GnuPG.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Email.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/REST.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Link.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Link_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Links.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Links_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomField.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValues.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFields.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ObjectCustomFields_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principal.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principals.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queues.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrip.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripActions.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripCondition.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripConditions.pm
- M /rt/branches/3.4-RELEASE/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrips.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/ActiveTicketsInQueue.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/FromSQL.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Search/Generic.pm
- M /rt/branches/3.4-RELEASE/lib/RT/SearchBuilder.pm
- M /rt/branches/3.4-RELEASE/lib/RT/System.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Template.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Template_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Templates.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transactions.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI/base.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/3.4-RELEASE/lib/RT/URI.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User.pm
- M /rt/branches/3.4-RELEASE/lib/RT/User_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Users.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Users_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT.pm.in
- M /rt/branches/3.4-RELEASE/sbin/extract-message-catalog
- M /rt/branches/3.4-RELEASE/sbin/extract_pod_tests
- M /rt/branches/3.4-RELEASE/sbin/factory
- M /rt/branches/3.4-RELEASE/sbin/regression_harness
- M /rt/branches/3.4-RELEASE/sbin/rt-dump-database.in
- M /rt/branches/3.4-RELEASE/sbin/rt-setup-database.in
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r3962@hualien: jesse | 2005-02-01T14:05:26.980011Z
- reran license tagger
-
-------------------------------------------------------------------------
-r2146 | jesse | 2005-02-01 09:13:05 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/cs.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/da.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/de.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/en_malkovich.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/es.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fi.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/fr.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/he.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/hu.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/it.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ja.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/nl.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/no.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/pt_br.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/ru.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.4-RELEASE/lib/RT/I18N/zh_tw.po
- M /rt/branches/3.4-RELEASE/sbin/license_tag
-
- r3961@hualien: jesse | 2005-02-01T14:03:42.493372Z
- Message catalogs updated
-
-------------------------------------------------------------------------
-r2145 | jesse | 2005-02-01 09:12:39 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r3960@hualien: jesse | 2005-02-01T13:59:42.556416Z
- Tiny readme style fixes
-
-------------------------------------------------------------------------
-r2144 | jesse | 2005-02-01 09:11:23 -0500 (Tue, 01 Feb 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/schema.Oracle
- M /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/schema.Pg
-
- r3959@hualien: jesse | 2005-02-01T13:55:00.555573Z
- Removing index changes from upgrade process that could break upgrades for some users
-
-------------------------------------------------------------------------
-r2131 | jesse | 2005-01-22 14:43:46 -0500 (Sat, 22 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r3924@hualien: jesse | 2005-01-22T19:34:52.453359Z
- Bumped to 3.4.0rc6
-
-------------------------------------------------------------------------
-r2123 | jesse | 2005-01-22 11:57:23 -0500 (Sat, 22 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r3910@hualien: jesse | 2005-01-22T16:06:58.731752Z
- Custom field searches should only search on values that haven't been deleted
-
-
-------------------------------------------------------------------------
-r2122 | jesse | 2005-01-22 11:57:11 -0500 (Sat, 22 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/15cf_single_values_are_single.t
-
- r3909@hualien: jesse | 2005-01-22T15:42:46.936767Z
- Bullet-proofing for custom fields with a set but limited number of values
-
-------------------------------------------------------------------------
-r2121 | jesse | 2005-01-22 11:57:01 -0500 (Sat, 22 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r3907@hualien: jesse | 2005-01-22T14:48:14.100308Z
- TicketSQL search fixes, especially to Custom field operations
-
-
-------------------------------------------------------------------------
-r2120 | jesse | 2005-01-22 11:53:50 -0500 (Sat, 22 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/RT__Ticket/ColumnMap
-
- r3904@hualien: jesse | 2005-01-22T13:00:19.775653Z
- The column map callback was broken by performance work
-
-
-------------------------------------------------------------------------
-r2119 | jesse | 2005-01-22 06:26:14 -0500 (Sat, 22 Jan 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/content
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/acl.Oracle
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/acl.Pg
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/acl.SQLite
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/acl.mysql
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/content
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/schema.Oracle
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.11/schema.SQLite
- M /rt/branches/3.4-RELEASE/sbin/rt-setup-database.in
-
- r3902@hualien: jesse | 2005-01-22T11:21:43.212477Z
- RT-Ticket: 6366
- RT-Update: correspond
-
- Cleaned up the upgrade procedure to give better messages on success. Added content so it won't bomb out on errors for the 3.4 upgrades.
- (We could have altered the script to not error out on missing content, but that would obscure errors where the user flubbed the path.
-
-
-
-------------------------------------------------------------------------
-r2116 | jesse | 2005-01-19 17:20:57 -0500 (Wed, 19 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r3893@hualien: jesse | 2005-01-19T18:39:39.850646Z
- Updated version number used by development builds to note that this is the 3.4 series
-
-
-------------------------------------------------------------------------
-r2115 | jesse | 2005-01-19 17:20:48 -0500 (Wed, 19 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Attachment_Overlay.pm
-
- r3892@hualien: jesse | 2005-01-19T18:38:38.233900Z
- Added better error checking for attachment insertion failure. (This unmasked more instances of oracle brokenness)
-
-
-------------------------------------------------------------------------
-r2114 | jesse | 2005-01-19 17:20:39 -0500 (Wed, 19 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/03basic_web.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/06mailgateway.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/09record_cf_api.t
-
- r3891@hualien: jesse | 2005-01-19T18:31:15.604733Z
- Minor formatting cleanups to tests
-
-
-------------------------------------------------------------------------
-r2113 | jesse | 2005-01-18 10:46:48 -0500 (Tue, 18 Jan 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/SelectOwner
- M /rt/branches/3.4-RELEASE/lib/RT/Users_Overlay.pm
-
- r3885@hualien: jesse | 2005-01-18T15:02:02.574134Z
- Reimplemented RT::Users->WhoHaveRights to remove O(n^2) SQL calls. (That means it's faster now)
- Reimplemented SelectOwner widget to take advantage of the new WhoHaveRights
-
-
-
-------------------------------------------------------------------------
-r2112 | jesse | 2005-01-18 10:46:21 -0500 (Tue, 18 Jan 2005) | 8 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/CustomField_Overlay.pm
-
- r3884@hualien: jesse | 2005-01-18T14:59:19.630164Z
- RT-Ticket: 6352
- RT-Status: resolved
- RT-Update: correspond
-
- Fix an invalid custom field acl check
-
-
-------------------------------------------------------------------------
-r2109 | tla | 2005-01-17 20:53:10 -0500 (Mon, 17 Jan 2005) | 4 lines
-Changed paths:
- A /rt/branches/3.4-RELEASE/lib/t/create_data.pl
-
-A script to automate testing data creation. Requires a new CPAN module,
-Text::Lorem. Work in progress.
-
-
-------------------------------------------------------------------------
-r2072 | jesse | 2005-01-13 02:02:25 -0500 (Thu, 13 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/README
-
-Removed a reference to NIS
-
-
-------------------------------------------------------------------------
-r2071 | jesse | 2005-01-12 18:39:03 -0500 (Wed, 12 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/docs/rt3-schema-relationships.dot
-
-RT3.4 schema diagram corrected and updated.
-
-
-------------------------------------------------------------------------
-r2070 | jesse | 2005-01-11 18:58:03 -0500 (Tue, 11 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/README
-
-Readme update to note that manual installation of Apache::DBI may be required.
-
-
-------------------------------------------------------------------------
-r2069 | zev | 2005-01-11 18:49:19 -0500 (Tue, 11 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE/Makefile.in
- M /rt/branches/3.4-RELEASE/etc/RT_Config.pm.in
-
-Fixed spelling and grammar mistakes in etc/RT_Config.pm.in
-Added some documentation and fixed whitespace in Makefile.in
-
-------------------------------------------------------------------------
-r2065 | jesse | 2005-01-11 00:02:58 -0500 (Tue, 11 Jan 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r2678@hualien: jesse | 2005-01-11T06:37:57.777661Z
- Bumped to rc5
-
-
-
-------------------------------------------------------------------------
-r2064 | jesse | 2005-01-10 23:54:09 -0500 (Mon, 10 Jan 2005) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/14merge.t
-
- r2669@hualien: jesse | 2005-01-11T06:23:33.161490Z
- Merging tickets with the same link could cause postgres to complain. Fixed. merged.
-
-
-
-
-------------------------------------------------------------------------
-r2060 | jesse | 2005-01-08 18:46:21 -0500 (Sat, 08 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r2642@hualien: jesse | 2005-01-08T23:42:31.639282Z
- 3.4.0rc4
-
-------------------------------------------------------------------------
-r2059 | jesse | 2005-01-08 18:44:03 -0500 (Sat, 08 Jan 2005) | 9 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
- M /rt/branches/3.4-RELEASE/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/13-attribute-tests.t
- M /rt/branches/3.4-RELEASE/sbin/rt-test-dependencies.in
-
- r2640@hualien: jesse | 2005-01-08T23:32:05.453370Z
- Kevin Chen reported issues with Attributes not being properly deleted from the
- ticket update screen. Alex Vandiver wrote new tests to illustrate the behaviour.
-
- This unearthed bugs in RT's attribute handling as well as DBIx::SearchBuilder.
-
-
-
-
-------------------------------------------------------------------------
-r2055 | jesse | 2005-01-07 22:40:01 -0500 (Fri, 07 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r2633@hualien: jesse | 2005-01-08T03:37:18.260832Z
- Bumping to 3.4.0rc3
-
-
-------------------------------------------------------------------------
-r2054 | jesse | 2005-01-07 22:39:55 -0500 (Fri, 07 Jan 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
- A /rt/branches/3.4-RELEASE/lib/t/regression/12-search.t
-
- r2632@hualien: jesse | 2005-01-08T03:36:49.431347Z
- Revision 1977 was a bogus merge. Revert that. Add new tests to catch the failing behaviour
-
-
-
-------------------------------------------------------------------------
-r2045 | jesse | 2005-01-06 16:01:06 -0500 (Thu, 06 Jan 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r2555@hualien: jesse | 2005-01-06T20:56:22.389566Z
- Bumping to rc2
-
-
-
-------------------------------------------------------------------------
-r2044 | jesse | 2005-01-06 16:00:57 -0500 (Thu, 06 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/04send_email.t
- M /rt/branches/3.4-RELEASE/lib/t/regression/06mailgateway.t
-
- r2543@hualien: jesse | 2005-01-06T07:08:12.346569Z
- no longer hardcode paths in tests
-
-------------------------------------------------------------------------
-r2041 | jesse | 2005-01-05 00:34:02 -0500 (Wed, 05 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Record.pm
- M /rt/branches/3.4-RELEASE/lib/t/regression/03basic_web.t
-
- r2539@hualien: jesse | 2005-01-05T05:31:36.967112Z
- Better handling of Content that comes out of the database as utf8 (Such as with DBD::Oracle 1.16)
-
-------------------------------------------------------------------------
-r2040 | jesse | 2005-01-04 00:18:06 -0500 (Tue, 04 Jan 2005) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
-
- r2530@hualien: jesse | 2005-01-04T05:15:35.757280Z
- a couple fixes for better handling ticket links on merge
-
-------------------------------------------------------------------------
-r2039 | jesse | 2005-01-04 00:17:52 -0500 (Tue, 04 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/t/regression/11-template-insert.t
-
- r2528@hualien: jesse | 2005-01-03T19:54:59.819442Z
- Added a test for a regression tickled by DBD::Oracle 1.16
-
-
-------------------------------------------------------------------------
-r2038 | jesse | 2005-01-04 00:17:42 -0500 (Tue, 04 Jan 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/schema.mysql
-
- r2527@hualien: jesse | 2005-01-03T19:52:28.164258Z
- Updated mysql schema upgrades to cope with ancient RT 3 instances which didn't have indexes we expect
-
-
-
-------------------------------------------------------------------------
-r2037 | jesse | 2005-01-04 00:17:29 -0500 (Tue, 04 Jan 2005) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/schema.mysql
-
- r2526@hualien: jesse | 2005-01-03T19:21:48.180206Z
- Workaround for missing mysql indexes
-
-
-------------------------------------------------------------------------
-r2036 | jesse | 2005-01-03 14:14:54 -0500 (Mon, 03 Jan 2005) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/etc/upgrade/3.3.0/schema.Oracle
-
- r2524@hualien: jesse | 2005-01-03T19:12:32.074066Z
- Oracle schema upgrades
-
-
-
-------------------------------------------------------------------------
-r2034 | jesse | 2004-12-29 15:41:21 -0500 (Wed, 29 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/GroupRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/Modify.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/Objects.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/UserRights.html
- M /rt/branches/3.4-RELEASE/html/Admin/CustomFields/index.html
- M /rt/branches/3.4-RELEASE/html/Admin/Elements/CustomFieldTabs
-
- r2520@hualien: jesse | 2004-12-29T20:39:43.707258Z
- Custom field tab hilighting fixes.
-
-
-
-------------------------------------------------------------------------
-r2033 | jesse | 2004-12-29 14:45:54 -0500 (Wed, 29 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Handle.pm
-
- r2516@hualien: jesse | 2004-12-29T19:44:09.437463Z
- Slightly updated encoding support for oracle
-
-
-
-------------------------------------------------------------------------
-r2032 | jesse | 2004-12-29 14:45:43 -0500 (Wed, 29 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/UPGRADING
-
- r2507@hualien: jesse | 2004-12-23T22:31:20.362197Z
- Note about "OwnTickets" for Superusers
-
-
-------------------------------------------------------------------------
-r2030 | robert | 2004-12-28 01:37:51 -0500 (Tue, 28 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r2033@dog: rspier | 2004-12-27 22:36:08 -0800
- RT 6331: configure spitting chmod errors
-
-------------------------------------------------------------------------
-r2029 | robert | 2004-12-28 01:37:47 -0500 (Tue, 28 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/NoAuth/webrt.css
-
- r2032@dog: rspier | 2004-12-27 22:24:34 -0800
- fix css errors
-
-------------------------------------------------------------------------
-r2028 | robert | 2004-12-28 01:37:37 -0500 (Tue, 28 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Elements/Header
-
- r2031@dog: rspier | 2004-12-27 21:46:34 -0800
- Only show the refresh tag if the refresh time is > 0.
- (Mozilla will perform a refresh=1 for refresh=-1)
-
-------------------------------------------------------------------------
-r2027 | robert | 2004-12-28 01:37:32 -0500 (Tue, 28 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/configure.ac
-
- r2030@dog: rspier | 2004-12-27 21:05:44 -0800
- Whitespace tweak: use tabs consistently
-
-------------------------------------------------------------------------
-r2025 | jesse | 2004-12-22 02:06:35 -0500 (Wed, 22 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/etc/schema.Oracle
-
- r2504@hualien: jesse | 2004-12-22T07:05:58.453205Z
- Oracle schema updates
-
-
-
-------------------------------------------------------------------------
-r2024 | jesse | 2004-12-21 17:11:39 -0500 (Tue, 21 Dec 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.4-RELEASE/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.4-RELEASE/lib/RT/Transactions_Overlay.pm
-
- r2500@hualien: jesse | 2004-12-21T22:06:43.378557Z
- Refactored RT's logic that limits sets of transactions to tickets to make it easier to reuse.
- Fixed bugs in searches for transactions related to multiple tickets.
-
-
-
-
-------------------------------------------------------------------------
-r2021 | jesse | 2004-12-21 00:32:15 -0500 (Tue, 21 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- A /rt/branches/3.4-RELEASE/lib/t/regression/10merge.t
-
- r2498@hualien: jesse | 2004-12-21T05:27:21.459146Z
- Added a new regression test to validate some possibly bogus behaviour about merging tickets
-
-
-
-------------------------------------------------------------------------
-r2019 | jesse | 2004-12-20 21:44:53 -0500 (Mon, 20 Dec 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Tickets_Overlay.pm
-
- r2494@hualien: jesse | 2004-12-21T02:40:37.522278Z
- Added back a 'package' declaration to Tickets_Overlay to enable automatic reload.
-
-
-
-
-------------------------------------------------------------------------
-r2018 | jesse | 2004-12-20 18:53:18 -0500 (Mon, 20 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/bin/mason_handler.fcgi.in
-
- r2492@hualien: jesse | 2004-12-20T23:49:03.808597Z
- The FastCGI handler was missing a small bit of code to enable the devel mode "Module::Reload" feature.
-
-
-------------------------------------------------------------------------
-r2017 | jesse | 2004-12-20 18:33:50 -0500 (Mon, 20 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/t/regression/08web_cf_access.t
-
- r2489@hualien: jesse | 2004-12-20T23:27:06.068915Z
- Inhibit a warning in 08_web_Cf_access.t
-
-
-
-------------------------------------------------------------------------
-r2015 | jesse | 2004-12-20 13:43:27 -0500 (Mon, 20 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- D /rt/branches/3.4-RELEASE/HOWTO
-
- r2485@hualien: jesse | 2004-12-20T18:38:03.341344Z
- Blew away outdated releng documentation
-
-------------------------------------------------------------------------
-r2014 | jesse | 2004-12-20 13:42:57 -0500 (Mon, 20 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/README
-
- r2484@hualien: jesse | 2004-12-20T18:37:10.098322Z
- minor readme updates
-
-------------------------------------------------------------------------
-r2013 | jesse | 2004-12-20 13:42:45 -0500 (Mon, 20 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/releng.cnf
-
- r2483@hualien: jesse | 2004-12-20T18:35:10.597227Z
- updated releng.cnf to point to the new branch
-
-------------------------------------------------------------------------
-r2012 | jesse | 2004-12-20 13:25:47 -0500 (Mon, 20 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.4-RELEASE
- M /rt/branches/3.4-RELEASE/lib/RT/Interface/Web.pm
-
- r2478@hualien: jesse | 2004-12-20T18:18:05.386331Z
- The last merge had a missing brace
-
-------------------------------------------------------------------------
-r2010 | jesse | 2004-12-20 13:07:34 -0500 (Mon, 20 Dec 2004) | 2 lines
-Changed paths:
- A /rt/branches/3.4-RELEASE (from /rt/branches/3.3-TESTING:2009)
-
-Moving the 3.3 testing branch to the 3.4 release branch in anticipation of a release candidate later today
-
-------------------------------------------------------------------------
-r2009 | jesse | 2004-12-20 12:30:49 -0500 (Mon, 20 Dec 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/autohandler
-
- r2472@hualien: jesse | 2004-12-20T17:04:02.657029Z
- r2464@hualien: jesse | 2004-12-17T23:04:58.188494Z
- Security:
- * Fixed a case where catastrophic failure of the logging infrastructure
- on initial login could result in a failing login attempt could
- result in a valid remote session. -- Reported by Tom Yu
-
-
-
-
-
-------------------------------------------------------------------------
-r2008 | jesse | 2004-12-20 12:30:35 -0500 (Mon, 20 Dec 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/ticket
-
- r2471@hualien: jesse | 2004-12-20T17:04:02.035738Z
- r2460@hualien: jesse | 2004-12-17T20:24:25.107579Z
- REST UI for listing tickets was missing a newline, resulting in a malformed
- response
-
-
-
-
-------------------------------------------------------------------------
-r2007 | jesse | 2004-12-20 12:30:22 -0500 (Mon, 20 Dec 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Users_Overlay.pm
-
- r2470@hualien: jesse | 2004-12-20T17:04:01.318822Z
- r1984@hualien: jesse | 2004-12-09T07:16:39.436509Z
- RT-Ticket: 6296
- RT-Status: resolved
- RT-Update: correspond
-
- Removed a spurious =>, Thanks to Todd Chapman
-
-
-
-
-------------------------------------------------------------------------
-r2006 | jesse | 2004-12-20 12:30:06 -0500 (Mon, 20 Dec 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r2469@hualien: jesse | 2004-12-20T16:35:42.953265Z
- r1983@hualien: jesse | 2004-12-09T07:15:23.115403Z
-
-
-
-
-------------------------------------------------------------------------
-r2002 | jesse | 2004-12-16 16:01:40 -0500 (Thu, 16 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- D /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue_Overlay.pm
- D /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues_Overlay.pm
-
- r2447@hualien: jesse | 2004-12-16T20:55:51.733392Z
- Removed two more unused files. Thanks to Ruslan for spotting this.
-
-
-------------------------------------------------------------------------
-r2000 | jesse | 2004-12-15 18:00:06 -0500 (Wed, 15 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/t/regression/01ticket_link_searching.t
-
- r2442@hualien: jesse | 2004-12-15T22:55:54.557052Z
- Clkao found a logic bug in the negative link searching
-
-------------------------------------------------------------------------
-r1998 | jesse | 2004-12-14 18:45:10 -0500 (Tue, 14 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r2440@hualien: jesse | 2004-12-14T23:39:15.304049Z
- bumping to 3.3.16
-
-------------------------------------------------------------------------
-r1997 | jesse | 2004-12-14 14:40:49 -0500 (Tue, 14 Dec 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/schema.Oracle
-
- r2437@hualien: jesse | 2004-12-14T19:37:11.516896Z
- RT-Ticket: 6316
- RT-Status: resolved
- RT-Update: correspond
-
- Added a patch to enable ObjectCustomFields for Oracle from Steve Turner at MIT. We're still short an oracle upgrade path.
-
-
-
-------------------------------------------------------------------------
-r1996 | autrijus | 2004-12-14 10:36:27 -0500 (Tue, 14 Dec 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r6687@not: autrijus | 2004-12-14T15:31:58.474155Z
- * In HTML::Mason 1.18 or above, Apache2 support is native if
- Apache::Request (libapreq2) is installed.
-
-
-
-------------------------------------------------------------------------
-r1995 | jesse | 2004-12-14 04:54:20 -0500 (Tue, 14 Dec 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/configure.ac
- A /rt/branches/3.3-TESTING/lib/t/00smoke.t
- D /rt/branches/3.3-TESTING/lib/t/00smoke.t.in
- D /rt/branches/3.3-TESTING/lib/t/01harness.t.in
- D /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- D /rt/branches/3.3-TESTING/lib/t/03web.pl.in
- D /rt/branches/3.3-TESTING/lib/t/04_send_email.pl.in
- D /rt/branches/3.3-TESTING/lib/t/05cronsupport.pl.in
- D /rt/branches/3.3-TESTING/lib/t/06mailgateway.pl.in
- D /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
- D /rt/branches/3.3-TESTING/lib/t/08web_cf.pl.in
- D /rt/branches/3.3-TESTING/lib/t/regression/00placeholder
- A /rt/branches/3.3-TESTING/lib/t/regression/03basic_web.t
- A /rt/branches/3.3-TESTING/lib/t/regression/04send_email.t
- A /rt/branches/3.3-TESTING/lib/t/regression/05cronsupport.t
- A /rt/branches/3.3-TESTING/lib/t/regression/06mailgateway.t
- A /rt/branches/3.3-TESTING/lib/t/regression/07acl.t
- A /rt/branches/3.3-TESTING/lib/t/regression/08web_cf_access.t
- A /rt/branches/3.3-TESTING/lib/t/regression/09record_cf_api.t
- A /rt/branches/3.3-TESTING/lib/t/setup_regression.t
-
- r2434@hualien: jesse | 2004-12-14T09:50:12.895761Z
- Test suite refactored to use 'prove' rather than one big ball of tests.
- This makes it much easier to run individual test scripts and gets us a nice pretty output.
-
- Ruslan pushed me into this.
-
-
-
-------------------------------------------------------------------------
-r1994 | jesse | 2004-12-14 04:54:04 -0500 (Tue, 14 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
- D /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue.pm
- D /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
- M /rt/branches/3.3-TESTING/lib/t/regression/01ticket_link_searching.t
- M /rt/branches/3.3-TESTING/sbin/extract_pod_tests
-
- r2433@hualien: jesse | 2004-12-14T09:25:34.132509Z
- Removing TicketCustomFieldValue files leftover from 3.2
-
-------------------------------------------------------------------------
-r1993 | jesse | 2004-12-14 02:36:04 -0500 (Tue, 14 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- A /rt/branches/3.3-TESTING/lib/t/regression/01ticket_link_searching.t
-
- r2431@hualien: jesse | 2004-12-14T07:32:22.983998Z
- And now we have _tests_ for the link searching.
-
-
-
-------------------------------------------------------------------------
-r1992 | jesse | 2004-12-14 02:25:03 -0500 (Tue, 14 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
-
- r2428@hualien: jesse | 2004-12-14T07:21:15.616305Z
- Adding support for searching on tickets which have no relationships of a given type (Such as "HasMember IS NULL") for clkao
-
-------------------------------------------------------------------------
-r1990 | jesse | 2004-12-13 23:50:29 -0500 (Mon, 13 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r2423@hualien: jesse | 2004-12-14T04:46:07.648245Z
- 3.3.15
-
-------------------------------------------------------------------------
-r1989 | jesse | 2004-12-13 23:48:14 -0500 (Mon, 13 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
-
- r2419@hualien: jesse | 2004-12-14T04:42:37.099863Z
- More fixes for working with Transaction Custom Fields
-
-------------------------------------------------------------------------
-r1988 | jesse | 2004-12-13 21:42:15 -0500 (Mon, 13 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
-
- r2413@hualien: jesse | 2004-12-14T02:38:06.428282Z
- RT::Transaction->CustomFieldValues can now accept named arguments
-
-------------------------------------------------------------------------
-r1987 | mwhitson | 2004-12-13 18:15:35 -0500 (Mon, 13 Dec 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/User/Groups/Modify.html
-
-rt-ticket: 6315
-rt-status: resolved
-rt-update: correspond
-
-Relabeled 'Create' submit buttons to 'Save Changes' in group modification pages.
-
-------------------------------------------------------------------------
-r1986 | jesse | 2004-12-12 23:13:42 -0500 (Sun, 12 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/SelfService/Display.html
- M /rt/branches/3.3-TESTING/html/SelfService/Update.html
-
- r2411@hualien: jesse | 2004-12-13T04:10:03.842079Z
- self service ui html beautification, selfservice customfield editing
-
-------------------------------------------------------------------------
-r1983 | jesse | 2004-12-10 13:55:22 -0500 (Fri, 10 Dec 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/UPGRADING
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
-
- r2000@hualien: jesse | 2004-12-10T18:55:08.662227Z
- RT-Ticket: 6304
- RT-Status: resolved
- RT-Update: correspond
-
- ModifyObjectCustomFieldValues was too long. It's been changed to "ModifyCustomField"
-
-
-------------------------------------------------------------------------
-r1982 | jesse | 2004-12-10 00:19:36 -0500 (Fri, 10 Dec 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r1998@hualien: jesse | 2004-12-10T05:18:47.952532Z
- Ruslan handed us a suite of tests. Some of those tests failed, demonstrating a couple of API issues with CustomFields.
-
- This led to more API bulletproofing and a SearchBuilder bump
-
-
-
-
-------------------------------------------------------------------------
-r1980 | jesse | 2004-12-09 02:33:58 -0500 (Thu, 09 Dec 2004) | 29 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldFreeform
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r1990@hualien: jesse | 2004-12-09T07:32:26.670652Z
- This actually covers several bugs in the custom field processing in 3.3.
- 12. Each time I fixed a bug, another one was uncovered. I think I've
- finished now.
-
- You can see the problems if you create a ticket with "Enter multiple
- values", "Fill in one text area" and "upload a file" CFs. The go to the
- Basics page, don't change anything and hit submit. All hell breaks loose
- -
-
- 1) the multi-value & text area fields get screwed up.
- 2) a message appears telling you the file upload CF has been deleted,
- although it apparently hasn't.
-
- Here's the idea behind what I did:
-
- - Multi-value CFs should be stored with no \n or \r characters.
- - Fill-in-a-text-area CFs should have \r removed before storing in
- the database (but \n should remain).
-
- There are a couple of other related changes - free form multi value CFs
- are no longer identified by type "FreeformMultiple". Also there's a
- "next if" statement in the wrong place which was causing the file upload
- bug.
-
- --Steve Turner
-
-
-
-------------------------------------------------------------------------
-r1979 | jesse | 2004-12-09 02:32:46 -0500 (Thu, 09 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r1989@hualien: jesse | 2004-12-09T07:31:07.292798Z
- Typo fix
-
-
-------------------------------------------------------------------------
-r1978 | jesse | 2004-12-09 02:21:52 -0500 (Thu, 09 Dec 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r1986@hualien: jesse | 2004-12-09T07:20:03.552482Z
- RT-Ticket: 6295
- RT-Status: resolved
- RT-Update: correspond
-
- Removed a "die" from a code path that should never be hit but doesn't need to die. Thanks to Todd Chapman
-
-
-
-------------------------------------------------------------------------
-r1977 | jesse | 2004-12-09 02:20:17 -0500 (Thu, 09 Dec 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r1982@hualien: jesse | 2004-12-09T07:09:56.419805Z
- Slightly more refactoring of Record->CustomFieldValues designed to restore older
- behaviour.
-
-
-
-
-------------------------------------------------------------------------
-r1975 | jesse | 2004-12-09 02:05:51 -0500 (Thu, 09 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/mason_handler.fcgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.scgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.svc.in
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r1980@hualien: jesse | 2004-12-09T07:05:41.787599Z
- Refactored post-http handling code into lib/RT/Interface/Web/Handler.pm
-
-
-
-------------------------------------------------------------------------
-r1974 | jesse | 2004-12-08 20:05:42 -0500 (Wed, 08 Dec 2004) | 19 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/t/06mailgateway.pl.in
- M /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
-
- r1978@hualien: jesse | 2004-12-09T01:05:21.233709Z
- Core:
-
- * Promoted ACL cache invalidation to a public method.
-
- Web:
-
- * Web UI now invalidates ACL cache after each HTTP hit. This means
- more consistent ACL checks at the expense marginally more database lookups
-
- Test Suite:
-
- * Removed delays from the test suite which were there to deal with the ACL
- cache. The test suite now completes in approximately one minute on my
- laptop.
-
-
-
-
-------------------------------------------------------------------------
-r1972 | jesse | 2004-12-07 21:40:10 -0500 (Tue, 07 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r9533@tinbook: jesse | 2004-12-08T02:40:01.308641Z
- Bumping to 3.3.14
-
-------------------------------------------------------------------------
-r1971 | jesse | 2004-12-07 21:38:14 -0500 (Tue, 07 Dec 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r9530@tinbook: jesse | 2004-12-08T02:38:06.660707Z
- Refactored RT::Record->CustomFieldValues to be more careful to not
- accidentally load all ticket custom field values when asked for a
- bogus custom field. Thanks to Ruslan for a pointer to the bug.
-
-
-
-------------------------------------------------------------------------
-r1968 | jesse | 2004-12-07 20:35:22 -0500 (Tue, 07 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- r9525@tinbook: jesse | 2004-12-08T01:29:33.251334Z
- Pulling forward query optimization from 3.2
-
-
-------------------------------------------------------------------------
-r1967 | jesse | 2004-12-07 20:33:35 -0500 (Tue, 07 Dec 2004) | 36 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- r9524@tinbook: jesse | 2004-12-07T22:51:16.647524Z
- r9522@tinbook: jesse | 2004-12-07T22:47:20.573617Z
- RT-Ticket: 6286
- RT-Status: resolved
- RT-Update: correspond
-
- Searching on Ticket data and Transaction content caused horribly pessimal searches.
-
- OLD
-
- mysql> explain SELECT DISTINCT main.* FROM Tickets main , Transactions Transactions_1, Attachments Attachments_2 WHERE ((main.EffectiveId = main.id)) AND ((main.Status != 'deleted')) AND ((main.Type = 'ticket')) AND ((main.Subject LIKE '%subject/content SQL test%')OR ( (Attachments_2.Content LIKE '%subject/content SQL test%')AND(Attachments_2.TransactionId = Transactions_1.id)AND(main.id = Transactions_1.Ticket) ) );
- +----------------+-------+-----------------------+---------------+---------+------+------+------------------------------------+
- | table | type | possible_keys | key | key_len | ref | rows | Extra |
- +----------------+-------+-----------------------+---------------+---------+------+------+------------------------------------+
- | main | ALL | PRIMARY | NULL | NULL | NULL | 30 | Using where; Using temporary |
- | Attachments_2 | ALL | Attachments2 | NULL | NULL | NULL | 22 | Using where; Distinct |
- | Transactions_1 | index | PRIMARY,Transactions1 | Transactions1 | 4 | NULL | 73 | Using where; Using index; Distinct |
- +----------------+-------+-----------------------+---------------+---------+------+------+------------------------------------+
- 3 rows in set (0.00 sec)
-
- NEW
-
- mysql> explain SELECT DISTINCT main.* FROM ((Tickets main LEFT JOIN Transactions Transactions_1 ON ( main.id = Transactions_1.Ticket)) LEFT JOIN Attachments Attachments_2 ON ( Transactions_1.id = Attachments_2.TransactionId)) WHERE ((main.EffectiveId = main.id)) AND ((main.Status != 'deleted')) AND ((main.Type = 'ticket')) AND ((main.Subject LIKE '%subject/content SQL test%')OR ( (Attachments_2.Content LIKE '%subject/content SQL test%') ) );
- +----------------+------+---------------+---------------+---------+-------------------+------+------------------------------+
- | table | type | possible_keys | key | key_len | ref | rows | Extra |
- +----------------+------+---------------+---------------+---------+-------------------+------+------------------------------+
- | main | ALL | NULL | NULL | NULL | NULL | 30 | Using where; Using temporary |
- | Transactions_1 | ref | Transactions1 | Transactions1 | 4 | main.id | 1 | Using index; Distinct |
- | Attachments_2 | ref | Attachments2 | Attachments2 | 4 | Transactions_1.id | 1 | Using where; Distinct |
- +----------------+------+---------------+---------------+---------+-------------------+------+------------------------------+
- 3 rows in set (0.03 sec)
-
-
-
-
-
-------------------------------------------------------------------------
-r1965 | jesse | 2004-12-07 15:16:58 -0500 (Tue, 07 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Build.html
-
- r9519@tinbook: jesse | 2004-12-07T20:14:22.950883Z
- The "toggle AND/OR" button in the query builder broke in 3.3.10 or so. Reported by Wilson Chow
-
-
-------------------------------------------------------------------------
-r1963 | jesse | 2004-12-06 15:13:15 -0500 (Mon, 06 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r9514@tinbook: jesse | 2004-12-06T20:08:56.717991Z
- Bumping to 3.3.13
-
-------------------------------------------------------------------------
-r1962 | autrijus | 2004-12-06 12:49:23 -0500 (Mon, 06 Dec 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1961 | autrijus | 2004-12-06 12:48:46 -0500 (Mon, 06 Dec 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/docs/design_docs/3.3-schema-redesign.txt
-
- r6348@not: autrijus | 2004-12-06T17:45:43.194394Z
- * Fix an incorrect description of OCFs
-
-------------------------------------------------------------------------
-r1960 | jesse | 2004-12-06 02:11:55 -0500 (Mon, 06 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/SelfService/Create.html
- A /rt/branches/3.3-TESTING/html/SelfService/CreateTicketInQueue.html
- M /rt/branches/3.3-TESTING/html/SelfService/Display.html
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Tabs
-
- r9505@tinbook: jesse | 2004-12-06T07:11:01.358418Z
- SelfService: Added support for setting custom fields on creation and viewing custom fields the user has the right to see.
-
-
-------------------------------------------------------------------------
-r1959 | jesse | 2004-12-06 02:11:21 -0500 (Mon, 06 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldFreeform
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldSelect
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldText
-
- r9504@tinbook: jesse | 2004-12-06T07:10:00.587141Z
- Removing duplicated code.
-
-
-
-------------------------------------------------------------------------
-r1958 | jesse | 2004-12-06 00:50:07 -0500 (Mon, 06 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
-
- r9498@tinbook: jesse | 2004-12-06T05:49:22.962399Z
- Fixing CustomField->LoadByName for the case where no such custom field exists.
-
-
-------------------------------------------------------------------------
-r1957 | jesse | 2004-12-05 16:58:31 -0500 (Sun, 05 Dec 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r9495@tinbook: jesse | 2004-12-05T21:57:36.434513Z
- Refactored RT::Record->CustomFieldValues to accept cf names and convert them to ids. (Based on a patch by Tara Andrews)
-
-
-------------------------------------------------------------------------
-r1956 | jesse | 2004-12-05 16:58:06 -0500 (Sun, 05 Dec 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r9451@tinbook: jesse | 2004-12-03T22:42:17.243639Z
- r9450@tinbook: jesse | 2004-12-03T22:39:34.093758Z
- Refactoring to use the API to determine if a ticket is being closed, rather than looking at a hardcoded status. -- Stephen Quinney
-
-
-
-------------------------------------------------------------------------
-r1953 | jesse | 2004-12-03 17:25:07 -0500 (Fri, 03 Dec 2004) | 13 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
-
- r9447@tinbook: jesse | 2004-12-03T22:23:11.115990Z
- RT-Ticket: 6291
- RT-Status: resolved
- RT-Update: correspond
-
-
- Altered Transaction->Value to only show data about custom field transactions if the user
- has the right to see that custom field. This automatically limits the Transaction list
- to exclude custom field transactions the user shouldn't see.
-
-
-
-
-------------------------------------------------------------------------
-r1952 | tla | 2004-12-02 18:16:17 -0500 (Thu, 02 Dec 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
-
-If First is undef on account of there not being a custom field of that
-name, the Content() method cannot be called on it, so check for mere
-existence before we try.
-
-
-------------------------------------------------------------------------
-r1949 | jesse | 2004-11-29 13:32:05 -0500 (Mon, 29 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/SelfService/Update.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/html/Tools/MyDay.html
-
- r9437@tinbook: jesse | 2004-11-29T18:33:10.692247Z
- Small localization fixes for "Status" (Unchanged) messages
-
-
-
-------------------------------------------------------------------------
-r1948 | jesse | 2004-11-29 01:24:52 -0500 (Mon, 29 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/upgrade/3.3.11/schema.Pg
- M /rt/branches/3.3-TESTING/etc/upgrade/3.3.11/schema.mysql
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
-
- r9435@tinbook: jesse | 2004-11-29T06:26:08.317066Z
- More postgres upgrade fixes
-
-------------------------------------------------------------------------
-r1946 | jesse | 2004-11-28 22:25:19 -0500 (Sun, 28 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
-
- r9432@tinbook: jesse | 2004-11-29T03:26:44.094679Z
- Custom field API backward-compatibility improvements
-
-------------------------------------------------------------------------
-r1943 | jesse | 2004-11-27 02:34:16 -0500 (Sat, 27 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1942 | jesse | 2004-11-27 02:34:09 -0500 (Sat, 27 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r9422@tinbook: jesse | 2004-11-27T07:33:36.170661Z
- r9420@tinbook: jesse | 2004-11-27T07:31:22.860069Z
- Refactored ColumnMap to remove use of a deprecated API
-
-
-------------------------------------------------------------------------
-r1941 | jesse | 2004-11-27 01:38:00 -0500 (Sat, 27 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r9414@tinbook: jesse | 2004-11-27T06:29:04.667691Z
- Multiple fixes to search result display
-
-------------------------------------------------------------------------
-r1937 | jesse | 2004-11-26 22:49:33 -0500 (Fri, 26 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r9411@tinbook: jesse | 2004-11-27T03:48:14.141183Z
- Bumping to 3.3.12
-
-------------------------------------------------------------------------
-r1934 | jesse | 2004-11-24 11:15:39 -0500 (Wed, 24 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/upgrade/3.3.11/schema.Pg
-
- r9348@tinbook: jesse | 2004-11-24T16:15:50.210159Z
- 3.3.11 upgrade schema for postgres depended on features not supported by postgres. fixed. -- Mathieu Sauve-Frankel
-
-------------------------------------------------------------------------
-r1933 | jesse | 2004-11-22 14:44:43 -0500 (Mon, 22 Nov 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
-
- r9335@tinbook: jesse | 2004-11-22T19:44:48.685300Z
- r9328@tinbook: jesse | 2004-11-22T19:23:06.663299Z
- RT-Ticket: 6187
- RT-Status: resolved
- RT-Update: correspond
-
- Refactored RT's core attachment processing logic to be a bit less baroque and to use new convenience methods. ths should prevent some mail header display strangeness folks were seeing.
-
-
-
-
-------------------------------------------------------------------------
-r1932 | jesse | 2004-11-22 14:44:28 -0500 (Mon, 22 Nov 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Users/Modify.html
-
- r9334@tinbook: jesse | 2004-11-22T19:44:47.878500Z
- r9324@tinbook: jesse | 2004-11-22T18:44:30.383331Z
- RT-Ticket: 6272
- RT-Status: resolved
- RT-Update: correspond
-
- When updating comments and signature in the Administrative UI, RT won't introduce
- extra newlines anymore. (Todd Chapman)
-
-
-
-
-------------------------------------------------------------------------
-r1931 | jesse | 2004-11-22 14:44:10 -0500 (Mon, 22 Nov 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransactionAttachments
-
- r9333@tinbook: jesse | 2004-11-22T19:44:47.283026Z
- r9322@tinbook: jesse | 2004-11-22T18:41:02.001214Z
- RT-Ticket: 6276
- RT-Status: resolved
- RT-Update: correspond
-
- Now honor the RT::MaxInlineBody configuration variable. Also, the Content-Disposition header.
- We no longer display long attachments inline if they were marked as attachments.
-
-
-
-
-------------------------------------------------------------------------
-r1930 | jesse | 2004-11-22 14:43:53 -0500 (Mon, 22 Nov 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowAttachments
-
- r9332@tinbook: jesse | 2004-11-22T19:44:46.719948Z
- r9320@tinbook: jesse | 2004-11-22T18:13:24.717525Z
- RT-Ticket: 6264
- RT-Status: resolved
- RT-Update: correspond
-
- Fix the "ShowAttachments" component to deal gracefully, even if called without a
- precached set of attachments. From Rolf Grossmann.
-
-
-
-
-------------------------------------------------------------------------
-r1929 | jesse | 2004-11-22 14:43:42 -0500 (Mon, 22 Nov 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/MyRequests
-
- r9331@tinbook: jesse | 2004-11-22T19:44:46.166158Z
- r9316@tinbook: jesse | 2004-11-22T17:59:32.163278Z
- RT-Ticket: 6270
- RT-Status: resolved
- RT-Update: correspond
-
- Localized the "Status" field in the selfservice UI
-
-
-
-
-------------------------------------------------------------------------
-r1928 | jesse | 2004-11-22 14:43:35 -0500 (Mon, 22 Nov 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
-
- r9330@tinbook: jesse | 2004-11-22T19:44:45.488990Z
- r9272@tinbook: jesse | 2004-11-16T16:29:54.673250Z
- RT-Ticket: 6239
- RT-Status: resolved
- RT-Update: correspond
-
- Applied patch from Rudolph Pereira to allow email plugins to change ticket ID
-
-
-
-
-------------------------------------------------------------------------
-r1926 | jesse | 2004-11-22 13:52:27 -0500 (Mon, 22 Nov 2004) | 18 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Filter/SpamAssassin.pm
-
- r9326@tinbook: jesse | 2004-11-22T18:53:57.082454Z
- RT-Ticket: 6125
- RT-Status: resolved
- RT-Update: correspond
-
- SpamAssasin mail plugin overhauled (Petter Reinholdtsen)
-
- The current code wipe out the CurrentUser variable, and must be called
- first in the chain of plugins. There is no good reason why it need to
- do this, so I propose to change it to keep the CurrentUser value.
-
- Here is a patch to change the argument handling, to pass
- $args{'Message'} to spamassasin, instead of the strange $item value.
- The patch also make sure CurrentUser and AuthLevel is passed through
- when no change is wanted.
-
-
-
-------------------------------------------------------------------------
-r1922 | jesse | 2004-11-22 13:05:08 -0500 (Mon, 22 Nov 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/docs/rt3-schema-relationships.dot
-
- r9318@tinbook: jesse | 2004-11-22T18:06:38.935955Z
- RT-Ticket: 6269
- RT-Status: resolved
- RT-Update: correspond
-
- RT3 schema diagram updated. (Todd Chapman)
-
-
-
-------------------------------------------------------------------------
-r1920 | autrijus | 2004-11-22 08:19:30 -0500 (Mon, 22 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r5939@not: autrijus | 2004-11-22T13:20:38.205298Z
- * the "Magic" on modify broke Image/Binary custom fields.
-
-
-------------------------------------------------------------------------
-r1919 | jesse | 2004-11-22 02:25:42 -0500 (Mon, 22 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
-
- r9313@tinbook: jesse | 2004-11-22T07:26:55.423227Z
- Comments about redundant code
-
-------------------------------------------------------------------------
-r1918 | jesse | 2004-11-21 20:26:56 -0500 (Sun, 21 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r9310@tinbook: jesse | 2004-11-22T01:26:40.004042Z
- fixes for the perl module downloading bit
-
-------------------------------------------------------------------------
-r1916 | jesse | 2004-11-18 11:00:17 -0500 (Thu, 18 Nov 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
-
- r9296@tinbook: jesse | 2004-11-18T15:59:55.061638Z
-
-
- Ported Custom Field editing fixes from 3.2. Added a deprecated warning to a deprecated API.
- Cleaned up a tiny bit of formatting
-
-
-
-------------------------------------------------------------------------
-r1915 | jesse | 2004-11-18 11:00:04 -0500 (Thu, 18 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1914 | jesse | 2004-11-18 10:59:05 -0500 (Thu, 18 Nov 2004) | 14 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/UPGRADING
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r9280@tinbook: jesse | 2004-11-17T18:34:51.857756Z
- A bunch of CustomField related improvements. Autrijus is working on the new test suite. Coming "tomorrow"
-
-
- UPGRADING FROM 3.3.11 and earlier - Changes:
-
- = Rights Changes =
-
- Custom Fields now have an additional right "ModifyObjectCustomFieldValues".
- This right governs whether a user can modify an object's custom field values
- for a particular custom field. This includes adding, deleting and changing values.
-
-
-
-------------------------------------------------------------------------
-r1913 | autrijus | 2004-11-17 23:39:01 -0500 (Wed, 17 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
-
- r5691@not: autrijus | 2004-11-18T04:40:20.966758Z
- * Remove the unused and misleading chunks in EditCustomField.
-
-
-------------------------------------------------------------------------
-r1912 | autrijus | 2004-11-17 06:29:10 -0500 (Wed, 17 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1911 | autrijus | 2004-11-17 06:28:47 -0500 (Wed, 17 Nov 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/autohandler
-
- r4462@not: autrijus | 2004-11-17T11:21:48.719799Z
- * under MasonX::Apache2Handler, empty arguments sometimes got
- passed in as unicode strings, so Encode::decode('utf8')
- fails miserably. We now explicitly check is_utf8() before
- applying a decode; this is a better style anyway.
-
-
-------------------------------------------------------------------------
-r1908 | jesse | 2004-11-16 07:32:40 -0500 (Tue, 16 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
-Time::HiRes was improperly capitalized
-
-
-------------------------------------------------------------------------
-r1907 | jesse | 2004-11-15 16:19:49 -0500 (Mon, 15 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/html/Elements/Footer
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/autohandler
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r9270@tinbook: jesse | 2004-11-15T21:17:01.591994Z
- Moved render time display out of an "if developer" block into a main-page div. Set up css to display it small and very de-emphasized
-
-------------------------------------------------------------------------
-r1906 | jesse | 2004-11-15 15:55:48 -0500 (Mon, 15 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
-
- r9268@tinbook: jesse | 2004-11-15T20:51:06.505734Z
- Disabled replaced Current a bit back
-
-
-
-------------------------------------------------------------------------
-r1905 | jesse | 2004-11-15 15:45:02 -0500 (Mon, 15 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r9266@tinbook: jesse | 2004-11-15T20:24:28.381430Z
- Previous merge forward clobbered 3.3 branch changes.
-
-
-
-------------------------------------------------------------------------
-r1903 | jesse | 2004-11-15 13:58:26 -0500 (Mon, 15 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/da.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/de.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/en.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/en_malkovich.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/es.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fi.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fr.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/he.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/hu.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/it.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ja.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/nl.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/no.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/pt_br.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ru.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_tw.po
-
- r9260@tinbook: jesse | 2004-11-15T18:58:48.392208Z
- Reran string extraction for loc
-
-------------------------------------------------------------------------
-r1902 | jesse | 2004-11-15 13:57:52 -0500 (Mon, 15 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
-
- r9259@tinbook: jesse | 2004-11-15T17:21:40.789848Z
- Added the database dump tool to the list of executable things
-
-------------------------------------------------------------------------
-r1901 | jesse | 2004-11-15 12:13:51 -0500 (Mon, 15 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/lib/RT/I18N.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r9257@tinbook: jesse | 2004-11-15T17:13:44.237481Z
- Merging forward from RT 3.2 bugfixes
-
-------------------------------------------------------------------------
-r1898 | autrijus | 2004-11-15 04:43:23 -0500 (Mon, 15 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
-
- r4175@not: autrijus | 2004-11-15T09:44:43.225379Z
- * The XML-based dump format now finally round trips.
-
-
-------------------------------------------------------------------------
-r1897 | autrijus | 2004-11-15 02:24:35 -0500 (Mon, 15 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
-
- r4166@not: autrijus | 2004-11-15T07:25:55.961743Z
- * make "sbin/rt-dump-database 0" actually work.
-
-
-------------------------------------------------------------------------
-r1896 | autrijus | 2004-11-15 01:30:04 -0500 (Mon, 15 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r4158@not: autrijus | 2004-11-15T06:31:13.491985Z
- * Switch the rt-dump-database format from YAML to XML::Simple.
-
-
-------------------------------------------------------------------------
-r1894 | autrijus | 2004-11-14 12:11:20 -0500 (Sun, 14 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/factory
-
- r4106@not: autrijus | 2004-11-14T17:12:19.553522Z
- * Make sbin/factory safe from strict and warnings.
-
-
-------------------------------------------------------------------------
-r1893 | autrijus | 2004-11-14 09:23:53 -0500 (Sun, 14 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r4099@not: autrijus | 2004-11-14T14:25:10.934431Z
- * It turns out that Apache::Log needs to be explicitly loaded
- for MasonX::Apache2Handler to run.
-
-
-------------------------------------------------------------------------
-r1892 | autrijus | 2004-11-14 01:02:18 -0500 (Sun, 14 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1891 | autrijus | 2004-11-14 01:01:46 -0500 (Sun, 14 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r4056@not: autrijus | 2004-11-14T05:55:16.343169Z
- * The chown() syntax in Handler.pm was broken.
- * Also removed an unneccessary capturing parenthesis.
-
-
-------------------------------------------------------------------------
-r1890 | autrijus | 2004-11-14 01:01:21 -0500 (Sun, 14 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r4055@not: autrijus | 2004-11-14T05:54:37.364789Z
- * Under static_source, we need to purge the component cache
- each time we restart, so newer components may be reloaded.
-
-
-------------------------------------------------------------------------
-r1889 | autrijus | 2004-11-14 01:00:58 -0500 (Sun, 14 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
-
- r3828@not: autrijus | 2004-11-11T04:38:07.819422Z
- * Do not waste stat() calls on Callback elements.
- * If $RT::DevelMode is not set, do not refresh Callbacks cache at all.
-
-
-------------------------------------------------------------------------
-r1888 | autrijus | 2004-11-14 01:00:32 -0500 (Sun, 14 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
-
- r3827@not: autrijus | 2004-11-11T02:06:28.593023Z
- * only exclude normal files, not directories.
-
-
-------------------------------------------------------------------------
-r1887 | autrijus | 2004-11-14 01:00:09 -0500 (Sun, 14 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin
- M /rt/branches/3.3-TESTING/etc
- M /rt/branches/3.3-TESTING/lib
- M /rt/branches/3.3-TESTING/lib/t
- M /rt/branches/3.3-TESTING/sbin
-
- r3826@not: autrijus | 2004-11-11T02:05:00.289897Z
- * set svn:ignore on directories to exclude generated files from
- version control.
-
-
-------------------------------------------------------------------------
-r1884 | jesse | 2004-11-13 18:01:01 -0500 (Sat, 13 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING/releng.cnf
-
-Bumping to 3.3.11
-------------------------------------------------------------------------
-r1882 | jesse | 2004-11-13 00:12:51 -0500 (Sat, 13 Nov 2004) | 10 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- D /rt/branches/3.3-TESTING/html/NoAuth/images/back_home.gif
- D /rt/branches/3.3-TESTING/html/NoAuth/images/head_requestracker.gif
- D /rt/branches/3.3-TESTING/html/NoAuth/images/rt.jpg
- D /rt/branches/3.3-TESTING/html/NoAuth/images/spacer.gif
- D /rt/branches/3.3-TESTING/html/NoAuth/images/squares_blue.gif
- M /rt/branches/3.3-TESTING/lib/t/06mailgateway.pl.in
-
- r9222@tinbook: jesse | 2004-11-13T03:09:38.303870Z
- Core:
-
- * Removed images that weren't used anymore
-
- Configuration:
-
- * Fixed RTLogo configuration variable to actually display RT's logo.
-
-
-------------------------------------------------------------------------
-r1881 | jesse | 2004-11-13 00:12:26 -0500 (Sat, 13 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CustomFieldTabs
-
- r9221@tinbook: jesse | 2004-11-13T02:43:58.587708Z
- No longer show the "Applies To" tab for user and group Custom Fields.
-
-
-------------------------------------------------------------------------
-r1880 | jesse | 2004-11-13 00:11:58 -0500 (Sat, 13 Nov 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r9220@tinbook: jesse | 2004-11-13T02:42:34.101313Z
- Those variables need to have the RT namespace.
-
-
-
-
-------------------------------------------------------------------------
-r1879 | jesse | 2004-11-13 00:11:31 -0500 (Sat, 13 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
-
- r9219@tinbook: jesse | 2004-11-13T00:28:50.936425Z
- Made the automatic cache flushing configurable.
-
-
-------------------------------------------------------------------------
-r1878 | jesse | 2004-11-13 00:11:00 -0500 (Sat, 13 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r9218@tinbook: jesse | 2004-11-12T03:08:16.964082Z
- Refactored the column map to only initialize itself once, rather than every time it's called
-
-
-------------------------------------------------------------------------
-r1877 | autrijus | 2004-11-11 23:51:18 -0500 (Thu, 11 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Callback
-
- r3828@not: autrijus | 2004-11-11T04:38:07.819422Z
- * Do not waste stat() calls on Callback elements.
- * If $RT::DevelMode is not set, do not refresh Callbacks cache at all.
-
-
-------------------------------------------------------------------------
-r1876 | autrijus | 2004-11-11 23:51:01 -0500 (Thu, 11 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
-
- r3827@not: autrijus | 2004-11-11T02:06:28.593023Z
- * only exclude normal files, not directories.
-
-
-------------------------------------------------------------------------
-r1875 | autrijus | 2004-11-11 23:47:44 -0500 (Thu, 11 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin
- M /rt/branches/3.3-TESTING/etc
- M /rt/branches/3.3-TESTING/lib
- M /rt/branches/3.3-TESTING/lib/t
- M /rt/branches/3.3-TESTING/sbin
-
- r3826@not: autrijus | 2004-11-11T02:05:00.289897Z
- * set svn:ignore on directories to exclude generated files from
- version control.
-
-
-------------------------------------------------------------------------
-r1800 | autrijus | 2004-11-10 08:50:55 -0500 (Wed, 10 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
-
- r3590@not: autrijus | 2004-11-10T13:52:05.548584Z
- * Flush cache at end of each request.
- * Defeat perlbug that mangles (caller(0))[1] wheneter $^P is set by Module::Refresh.
-
-
-------------------------------------------------------------------------
-r1796 | autrijus | 2004-11-10 08:15:51 -0500 (Wed, 10 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users_Overlay.pm
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r3588@not: autrijus | 2004-11-10T13:16:02.416034Z
- * Module::Refresh is now enabled by default for all HTTPD handlers
- when $RT::DevelMode is set to true.
-
-
-------------------------------------------------------------------------
-r1789 | jesse | 2004-11-10 07:58:47 -0500 (Wed, 10 Nov 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
-
- r9043@tinbook: jesse | 2004-11-10T12:55:28.022711Z
- r9040@tinbook: jesse | 2004-11-10T12:52:28.271911Z
- RT-Ticket: 4624
- RT-Status: resolved
- RT-Update: correspond
-
- Provide more control over how autogenerated mail gets sent out via RT.
-
-
-
-
-
-------------------------------------------------------------------------
-r1788 | jesse | 2004-11-10 07:58:22 -0500 (Wed, 10 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
-
- r9042@tinbook: jesse | 2004-11-10T12:55:27.433932Z
- r8971@tinbook: jesse | 2004-11-10T02:24:26.255370Z
- Fixed the MaxAttachmentSize variable name in comments. Thanks to Graham Dunn
-
-
-------------------------------------------------------------------------
-r1786 | jesse | 2004-11-10 07:38:04 -0500 (Wed, 10 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
-
- r9037@tinbook: jesse | 2004-11-10T12:38:52.925002Z
- * $ was missing on the DevelMode option
-
-------------------------------------------------------------------------
-r1779 | autrijus | 2004-11-10 05:09:04 -0500 (Wed, 10 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r3567@not: autrijus | 2004-11-10T10:09:08.775089Z
- * Add Module::Refresh as a dependency.
-
-
-------------------------------------------------------------------------
-r1778 | autrijus | 2004-11-10 05:08:41 -0500 (Wed, 10 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r3566@not: autrijus | 2004-11-10T10:08:56.876914Z
- * Under developer mode, do not let Mason cache object files on var/.
-
-
-------------------------------------------------------------------------
-r1777 | autrijus | 2004-11-10 05:08:17 -0500 (Wed, 10 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/html/Elements/Callback
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/ParseFormat
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxStart
- M /rt/branches/3.3-TESTING/lib/RT/CurrentUser.pm
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
-
- r3565@not: autrijus | 2004-11-10T10:08:34.482570Z
- * Various warning avoidance patches.
-
-
-------------------------------------------------------------------------
-r1767 | jesse | 2004-11-09 21:01:21 -0500 (Tue, 09 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
-
- r8969@tinbook: jesse | 2004-11-10T02:01:53.054185Z
- Fixing DeveloperlMode -> DevelMode. Thanks to Reed Lowden for the catch.
-
-
-------------------------------------------------------------------------
-r1766 | jesse | 2004-11-09 03:28:53 -0500 (Tue, 09 Nov 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/README
- M /rt/branches/3.3-TESTING/bin/mason_handler.fcgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.scgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.svc.in
- M /rt/branches/3.3-TESTING/bin/rt-crontool.in
- M /rt/branches/3.3-TESTING/bin/rt-mailgate.in
- M /rt/branches/3.3-TESTING/bin/rt.in
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/Objects.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Elements/AddCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CreateUserCalled
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CustomFieldTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFieldValues
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditTemplates
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditUserComments
- M /rt/branches/3.3-TESTING/html/Admin/Elements/GlobalCustomFieldTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Header
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ModifyTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ObjectCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickObjects
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectCustomFieldLookupType
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectCustomFieldType
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyGroup
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyQueue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectNewGroupMembers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectRights
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripAction
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripCondition
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectSingleOrMultiple
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectStage
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SystemTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ToolTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/UserTabs
- M /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Groups.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Queue-Tickets.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Queue-Transactions.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Users.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/History.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomField.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/People.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/Configuration.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/History.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/Memberships.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/index.html
- M /rt/branches/3.3-TESTING/html/Admin/autohandler
- M /rt/branches/3.3-TESTING/html/Admin/index.html
- M /rt/branches/3.3-TESTING/html/Approvals/Display.html
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Approve
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/PendingMyApproval
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/ShowDependency
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Approvals/index.html
- M /rt/branches/3.3-TESTING/html/Download/CustomFieldValue/dhandler
- M /rt/branches/3.3-TESTING/html/Download/Tabular/dhandler
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedEnd
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedStart
- M /rt/branches/3.3-TESTING/html/Elements/Callback
- M /rt/branches/3.3-TESTING/html/Elements/Checkbox
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/ParseFormat
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/Elements/CreateTicket
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldBinary
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldFreeform
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldImage
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldSelect
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldText
- M /rt/branches/3.3-TESTING/html/Elements/EditLinks
- M /rt/branches/3.3-TESTING/html/Elements/Error
- M /rt/branches/3.3-TESTING/html/Elements/Footer
- M /rt/branches/3.3-TESTING/html/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/ListActions
- M /rt/branches/3.3-TESTING/html/Elements/Login
- M /rt/branches/3.3-TESTING/html/Elements/Menu
- M /rt/branches/3.3-TESTING/html/Elements/MessageBox
- M /rt/branches/3.3-TESTING/html/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/Elements/MyTickets
- M /rt/branches/3.3-TESTING/html/Elements/PageLayout
- M /rt/branches/3.3-TESTING/html/Elements/QueryString
- M /rt/branches/3.3-TESTING/html/Elements/QuickCreate
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.3-TESTING/html/Elements/Refresh
- M /rt/branches/3.3-TESTING/html/Elements/ScrubHTML
- M /rt/branches/3.3-TESTING/html/Elements/Section
- M /rt/branches/3.3-TESTING/html/Elements/SelectAttachmentField
- M /rt/branches/3.3-TESTING/html/Elements/SelectBoolean
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Elements/SelectDate
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateRelation
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateType
- M /rt/branches/3.3-TESTING/html/Elements/SelectEqualityOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Elements/SelectLang
- M /rt/branches/3.3-TESTING/html/Elements/SelectLinkType
- M /rt/branches/3.3-TESTING/html/Elements/SelectMatch
- M /rt/branches/3.3-TESTING/html/Elements/SelectNewTicketQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
- M /rt/branches/3.3-TESTING/html/Elements/SelectQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectResultsPerPage
- M /rt/branches/3.3-TESTING/html/Elements/SelectSortOrder
- M /rt/branches/3.3-TESTING/html/Elements/SelectStatus
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketSortBy
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketTypes
- M /rt/branches/3.3-TESTING/html/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Elements/SelectWatcherType
- M /rt/branches/3.3-TESTING/html/Elements/SetupSessionCookie
- M /rt/branches/3.3-TESTING/html/Elements/ShowCustomFieldImage
- M /rt/branches/3.3-TESTING/html/Elements/ShowCustomFields
- M /rt/branches/3.3-TESTING/html/Elements/ShowLink
- M /rt/branches/3.3-TESTING/html/Elements/ShowLinks
- M /rt/branches/3.3-TESTING/html/Elements/ShowMemberships
- M /rt/branches/3.3-TESTING/html/Elements/SimpleSearch
- M /rt/branches/3.3-TESTING/html/Elements/Submit
- M /rt/branches/3.3-TESTING/html/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Elements/TitleBox
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxEnd
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxStart
- M /rt/branches/3.3-TESTING/html/NoAuth/Logout.html
- M /rt/branches/3.3-TESTING/html/NoAuth/Reminder.html
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/history
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/links
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.3-TESTING/html/REST/1.0/autohandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/logout
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/ticket
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/comment
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/link
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/merge
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/html/Search/Edit.html
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
- M /rt/branches/3.3-TESTING/html/Search/Elements/DisplayOptions
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditFormat
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditQuery
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
- M /rt/branches/3.3-TESTING/html/Search/Elements/NewListActions
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCriteria
- M /rt/branches/3.3-TESTING/html/Search/Elements/SearchPrivacy
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectAndOr
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectGroup
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectLinks
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectPersonType
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchObject
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchesForObjects
- M /rt/branches/3.3-TESTING/html/Search/Results.html
- M /rt/branches/3.3-TESTING/html/Search/Results.rdf
- M /rt/branches/3.3-TESTING/html/Search/Results.tsv
- M /rt/branches/3.3-TESTING/html/SelfService/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/SelfService/Closed.html
- M /rt/branches/3.3-TESTING/html/SelfService/Create.html
- M /rt/branches/3.3-TESTING/html/SelfService/Display.html
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Header
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/SelfService/Error.html
- M /rt/branches/3.3-TESTING/html/SelfService/Prefs.html
- M /rt/branches/3.3-TESTING/html/SelfService/Update.html
- M /rt/branches/3.3-TESTING/html/SelfService/index.html
- M /rt/branches/3.3-TESTING/html/Ticket/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/Ticket/Create.html
- M /rt/branches/3.3-TESTING/html/Ticket/Display.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/AddWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/BulkLinks
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/FindAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/PreviewScrips
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDependencies
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowGroupMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMemberOf
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageHeaders
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowReferences
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowRequestor
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowSummary
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransaction
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowUserEntry
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Ticket/History.html
- M /rt/branches/3.3-TESTING/html/Ticket/Modify.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyDates.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyLinks.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyPeople.html
- M /rt/branches/3.3-TESTING/html/Ticket/ShowEmailRecord.html
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/html/Tools/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Tools/MyDay.html
- M /rt/branches/3.3-TESTING/html/Tools/Offline.html
- M /rt/branches/3.3-TESTING/html/User/Delegation.html
- M /rt/branches/3.3-TESTING/html/User/Elements/DelegateRights
- M /rt/branches/3.3-TESTING/html/User/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/User/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/User/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/User/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/User/Groups/index.html
- M /rt/branches/3.3-TESTING/html/User/Prefs.html
- M /rt/branches/3.3-TESTING/html/autohandler
- M /rt/branches/3.3-TESTING/html/index.html
- M /rt/branches/3.3-TESTING/html/l
- M /rt/branches/3.3-TESTING/lib/RT/ACE.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/AutoOpen.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Autoreply.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Notify.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/NotifyAsComment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/RecordComment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/RecordCorrespondence.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/ResolveMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SetPriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Base.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/AnyTransaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/BeforeDue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Overdue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityExceeds.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/QueueChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/StatusChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/CurrentUser.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Date.pm
- M /rt/branches/3.3-TESTING/lib/RT/EmailParser.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Handle.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/i_default.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/CLI.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/GnuPG.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/REST.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/ActiveTicketsInQueue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/FromSQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/SearchBuilder.pm
- M /rt/branches/3.3-TESTING/lib/RT/System.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/base.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI.pm
- M /rt/branches/3.3-TESTING/lib/RT/User.pm
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
- M /rt/branches/3.3-TESTING/lib/t/06mailgateway.pl.in
- M /rt/branches/3.3-TESTING/sbin/extract-message-catalog
- M /rt/branches/3.3-TESTING/sbin/extract_pod_tests
- M /rt/branches/3.3-TESTING/sbin/factory
- M /rt/branches/3.3-TESTING/sbin/license_tag
- M /rt/branches/3.3-TESTING/sbin/regression_harness
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r8965@tinbook: jesse | 2004-11-09T08:25:30.422838Z
- Updated license tagging and folding for license tagging
-
- * No functionality changes
-
-
-
-
-------------------------------------------------------------------------
-r1765 | jesse | 2004-11-09 02:55:47 -0500 (Tue, 09 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
-
- r8963@tinbook: jesse | 2004-11-09T07:55:26.294077Z
- Just formatting changes. ran perltidy on HasRight.
-
-
-
-------------------------------------------------------------------------
-r1763 | jesse | 2004-11-09 00:46:40 -0500 (Tue, 09 Nov 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r8959@tinbook: jesse | 2004-11-09T05:47:13.371897Z
- Switched to using Cache::Simple::TimedExpiry for our ACL cache, rather
- than our overly convoluted (and slower) ACL cache code in Prinicpal_Overlay.pm
-
- SearchBuilder already depends on C::S::TE, so this isn't a new dep
-
-
-------------------------------------------------------------------------
-r1759 | jesse | 2004-11-08 23:58:09 -0500 (Mon, 08 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r8951@tinbook: jesse | 2004-11-09T04:59:07.816904Z
- Fixed a comment about the static_source directive for mason. Thanks to matthewd
-
-
-------------------------------------------------------------------------
-r1758 | jesse | 2004-11-08 22:47:40 -0500 (Mon, 08 Nov 2004) | 16 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/html/Elements/PageLayout
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxEnd
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r8942@tinbook: jesse | 2004-11-08T17:22:08.032229Z
- Web:
- * Switched back to manual buffer flushing, as this will
- improve performance and help future-proof RT against a mason update
- * Added several manual buffer flushing points to help with the user
- experience during page display
- * Switched to using mason's "static_source" directive, which stops mason
- from trying to guess about which pages need to be reload from disk.
- (Now you need to restart the webserver to see changes)
- Core:
- * New --with-developer-mode configuration flag. Right now, it just
- turns mason static_source off, but in the future, it will enable other
- developer-only features.
-
-
-
-------------------------------------------------------------------------
-r1757 | jesse | 2004-11-08 22:47:13 -0500 (Mon, 08 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Base.pm
-
- r8941@tinbook: jesse | 2004-11-08T17:18:03.357715Z
- Added a bit of documentation to RT::Base; removed an unused line of code
-
-
-------------------------------------------------------------------------
-r1753 | jesse | 2004-11-08 08:25:36 -0500 (Mon, 08 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
-
- r8935@tinbook: jesse | 2004-11-08T13:18:04.774918Z
- * Turning off the forking in standalone_httpd. It was never a win
-
-------------------------------------------------------------------------
-r1752 | autrijus | 2004-11-08 07:53:51 -0500 (Mon, 08 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
-
- r3280@not: autrijus | 2004-11-08T12:13:28.529608Z
- * make kill -HUP work sanely.
-
-
-------------------------------------------------------------------------
-r1751 | autrijus | 2004-11-08 07:53:30 -0500 (Mon, 08 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
-
-
-------------------------------------------------------------------------
-r1750 | autrijus | 2004-11-08 07:53:00 -0500 (Mon, 08 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- D /rt/branches/3.3-TESTING/spec
-
- r1748@not: autrijus | 2004-11-08T08:29:17.162697Z
- * remove the now-empty spec/ directory.
-
-
-------------------------------------------------------------------------
-r1749 | autrijus | 2004-11-08 07:52:36 -0500 (Mon, 08 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- A /rt/branches/3.3-TESTING/docs/design_docs/3.3-schema-redesign.txt
- D /rt/branches/3.3-TESTING/spec/schema.txt
-
- r1747@not: autrijus | 2004-11-08T08:28:53.206839Z
- * move the design spec from spec/ under the docs/design_docs/ space where it belongs.
-
-
-------------------------------------------------------------------------
-r1748 | autrijus | 2004-11-08 07:52:03 -0500 (Mon, 08 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/spec/schema.txt
-
- r1746@not: autrijus | 2004-11-08T08:27:45.676219Z
- * V7 of redesign schema, incoporating many more comments and
- the new, clkao-inspired fields.
-
-
-------------------------------------------------------------------------
-r1744 | jesse | 2004-11-07 11:26:35 -0500 (Sun, 07 Nov 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- A /rt/branches/3.3-TESTING/lib/t/08web_cf.pl.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r6237@tinbook: jesse | 2004-11-07T16:27:42.200967Z
- New web-based testing for image custom field creation
- (upload on create, display in search result listings)
-
- -Autrijus Tang
-
-
-
-------------------------------------------------------------------------
-r1743 | jesse | 2004-11-07 10:10:03 -0500 (Sun, 07 Nov 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
-
-------------------------------------------------------------------------
-r1742 | jesse | 2004-11-07 10:09:36 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
-
- r6225@tinbook: jesse | 2004-11-07T14:44:15.591492Z
- Web
- * Refactore BuildFormatString to simplify logic and improve reliability
-
-
-------------------------------------------------------------------------
-r1741 | jesse | 2004-11-07 10:09:14 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
-
- r6201@tinbook: jesse | 2004-11-07T05:35:22.316024Z
- Refactoring and restyling the Ticket List to present prettier tables with more human-readable names
-
-
-------------------------------------------------------------------------
-r1740 | jesse | 2004-11-07 10:08:50 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectLinks
-
- r6200@tinbook: jesse | 2004-11-07T05:32:56.068727Z
- Web: Fixed SelectLinks component to contain the right options and present the right human-readable names
-
-
-
-------------------------------------------------------------------------
-r1739 | jesse | 2004-11-07 10:08:29 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditFormat
-
- r6199@tinbook: jesse | 2004-11-07T05:30:58.330526Z
- Web UI: Refactored the logic which builds format strings to simplify code and present better human-readable names
-
-
-------------------------------------------------------------------------
-r1738 | jesse | 2004-11-07 10:08:08 -0500 (Sun, 07 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/Search/Results.html
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
-
- r6198@tinbook: jesse | 2004-11-07T04:18:22.934311Z
- Devel: Changed severity of calling Principal->HasRight without a Right
-
-------------------------------------------------------------------------
-r1737 | jesse | 2004-11-07 10:05:16 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
-
- r6197@tinbook: jesse | 2004-11-07T03:38:25.380100Z
- Switching Quicksearch to use most standard CSS styles
-
-
-------------------------------------------------------------------------
-r1736 | jesse | 2004-11-07 10:04:54 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
-
- r6196@tinbook: jesse | 2004-11-07T03:37:32.303504Z
- Squash warnings when trying to check acls on nonexisten custom fields
-
-
-------------------------------------------------------------------------
-r1735 | jesse | 2004-11-07 10:04:23 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6195@tinbook: jesse | 2004-11-06T15:14:59.241373Z
- Better handling of Record deletion confirmation messages. (To go with new searchbuilder fixes)
-
-
-------------------------------------------------------------------------
-r1734 | autrijus | 2004-11-07 09:38:43 -0500 (Sun, 07 Nov 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
-* In query builder, parse custom fields by name.
-* Generate all Link-type result cell callbacks from %LINKTYPEMAP.
-* Display custom field contents, separated by newlines.
-* For Image custom fields we also show a thumbnail.
-
-
-------------------------------------------------------------------------
-r1731 | autrijus | 2004-11-07 09:32:12 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/html/Search/Build.html
-
- r10263@not: autrijus | 2004-11-07T14:15:05.153388Z
- * one loc fix.
-
-
-------------------------------------------------------------------------
-r1730 | autrijus | 2004-11-07 09:30:22 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt
- A /rt/branches/3.3-TESTING/html/Search/Elements/EditQuery
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCriteria
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectAndOr
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectPersonType
-
- r10261@not: autrijus | 2004-11-07T08:55:02.919657Z
- * loc and layout fixed.
-
-
-------------------------------------------------------------------------
-r1729 | autrijus | 2004-11-07 09:30:06 -0500 (Sun, 07 Nov 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/html/Search/Build.html
-
- r10260@not: autrijus | 2004-11-07T08:54:20.330259Z
- * Query builder now acts on multiple clauses.
- * Close a potential XSS bug by escaping the clause naems.
- * Refactor the clause display component.
-
-
-------------------------------------------------------------------------
-r1728 | autrijus | 2004-11-07 09:29:51 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r10256@not: autrijus | 2004-11-06T10:35:22.448152Z
- * Escape ColumnMap return values properly to prevent cross-site scripting
- attack. All HTML snippets are now returned as scalar references.
-
-
-------------------------------------------------------------------------
-r1727 | autrijus | 2004-11-07 09:28:27 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/Makefile.in
-
- r10253@not: autrijus | 2004-11-06T10:17:49.792085Z
- * "make initdb" now an alias of "make initialize-database".
-
-
-
-------------------------------------------------------------------------
-r1726 | autrijus | 2004-11-07 09:26:14 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
-
- r10252@not: autrijus | 2004-11-06T10:17:41.433720Z
- * "make dropdb" on SQLite now works.
-
-
-
-------------------------------------------------------------------------
-r1725 | autrijus | 2004-11-07 09:22:06 -0500 (Sun, 07 Nov 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields.pm
- M /rt/branches/3.3-TESTING/sbin/factory
-
- r10251@not: autrijus | 2004-11-06T10:17:29.202899Z
- * fallouts from the OCFV schema change.
-
-
-
-------------------------------------------------------------------------
-r1724 | autrijus | 2004-11-07 09:17:03 -0500 (Sun, 07 Nov 2004) | 7 lines
-Changed paths:
- M /rt
- A /rt/branches/3.3-TESTING/etc/upgrade/3.3.11
- A /rt/branches/3.3-TESTING/etc/upgrade/3.3.11/schema.Pg
- A /rt/branches/3.3-TESTING/etc/upgrade/3.3.11/schema.mysql
-
- r10242@not: autrijus | 2004-11-06T06:59:58.274625Z
- * Schema changes for Pg, SQLite, mysql and Oracle.
-
- r10243@not: autrijus | 2004-11-06T07:00:15.865682Z
- * schema updater for Pg and mysql; Oracle comes later and SQLite is nontrivial.
-
-
-------------------------------------------------------------------------
-r1723 | autrijus | 2004-11-07 09:16:15 -0500 (Sun, 07 Nov 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/etc/schema.Oracle
- M /rt/branches/3.3-TESTING/etc/schema.Pg
- M /rt/branches/3.3-TESTING/etc/schema.SQLite
- M /rt/branches/3.3-TESTING/etc/schema.mysql
-
- r10242@not: autrijus | 2004-11-06T06:59:58.274625Z
- * Schema changes for Pg, SQLite, mysql and Oracle.
-
-
-------------------------------------------------------------------------
-r1721 | autrijus | 2004-11-05 06:43:18 -0500 (Fri, 05 Nov 2004) | 18 lines
-Changed paths:
- M /rt
- M /rt/branches
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r10186@not (orig r1718): autrijus | 2004-11-05T08:56:10.440277Z
- * Log::Dispatch wants ->warning, not ->warn.
-
- r10196@not: autrijus | 2004-11-05T11:41:58.476189Z
- * Fixes to standalone_httpd: 'protocol' was not defined, and query_string
- may be undefined too. (Supposedly fixed in HTTP::Server::Simple.)
-
- r10197@not: autrijus | 2004-11-05T11:42:20.621065Z
- * Remove outdated comment.
-
- r10198@not: autrijus | 2004-11-05T11:43:55.045510Z
- * Refactor getting-an-uploaded-file-into-cf into _UploadFile call
- in Interface::Web; this unbreaks uploading a file cf on ticket creation.
- * The "CustomField-x" keys in $Ticket->Create now take hash references
- that contain CFV fields, eg. LargeContent, ContentType, Value.
-
-
-
-------------------------------------------------------------------------
-r1718 | autrijus | 2004-11-05 03:56:10 -0500 (Fri, 05 Nov 2004) | 3 lines
-Changed paths:
- M /rt
- M /rt/branches
- M /rt/branches/3.2-RELEASE
- M /rt/branches/3.2-SYBASE-TESTING
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/PLATANO-EXPERIMENTAL-CSS
- M /rt/branches/PLATANO-EXPERIMENTAL-CSS/etc/upgrade
-
-* Log::Dispatch wants ->warning, not ->warn.
-
-
-------------------------------------------------------------------------
-r1716 | jesse | 2004-11-04 23:02:48 -0500 (Thu, 04 Nov 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6175@tinbook: jesse | 2004-11-05T02:17:24.427390Z
- Improved comments and folds in RT::Record
-
-
-
-------------------------------------------------------------------------
-r1715 | jesse | 2004-11-04 23:02:27 -0500 (Thu, 04 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r6174@tinbook: jesse | 2004-11-05T02:17:10.144816Z
- When uploading image custom fields, they're handled as file descriptors, rather than scalars. Our old logic assumed that any ref was an array. Now we check for array refs explicitly.
-
-
-------------------------------------------------------------------------
-r1714 | jesse | 2004-11-04 23:02:06 -0500 (Thu, 04 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
-
- r6173@tinbook: jesse | 2004-11-05T02:14:56.442006Z
- Added a HUP handler for the standalone httpd (so you can kill -HUP it to reload)
-
-
-------------------------------------------------------------------------
-r1713 | jesse | 2004-11-04 23:01:23 -0500 (Thu, 04 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/ShowCustomFields
-
- r6172@tinbook: jesse | 2004-11-05T02:14:19.720658Z
- Improved list format for multiple custom field values
-
-
-------------------------------------------------------------------------
-r1712 | jesse | 2004-11-04 23:00:28 -0500 (Thu, 04 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/CreateTicket
- M /rt/branches/3.3-TESTING/html/Ticket/Create.html
-
- r6171@tinbook: jesse | 2004-11-05T02:14:02.424154Z
- More form Names to make testing easier
-
-
-------------------------------------------------------------------------
-r1711 | jesse | 2004-11-04 22:59:53 -0500 (Thu, 04 Nov 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
-
- r6170@tinbook: jesse | 2004-11-04T08:33:12.626307Z
- Added a couple of form NAME elements, to ease testing
-
-
-------------------------------------------------------------------------
-r1710 | jesse | 2004-11-04 22:59:24 -0500 (Thu, 04 Nov 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6169@tinbook: jesse | 2004-11-04T08:32:13.034112Z
- Added a Delete method to RT::Record so we get proper messages on object deletion
- --Autrijus
-
-
-
-------------------------------------------------------------------------
-r1709 | jesse | 2004-11-01 00:55:09 -0500 (Mon, 01 Nov 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r6157@tinbook: jesse | 2004-11-01T04:52:49.078521Z
- A patch from 3.2 accidentally cascaded forward
-
-------------------------------------------------------------------------
-r1708 | jesse | 2004-11-01 00:54:59 -0500 (Mon, 01 Nov 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
-
- r6156@tinbook: jesse | 2004-11-01T04:47:06.225531Z
- r6152@tinbook: jesse | 2004-11-01T04:43:38.864654Z
- RT-Ticket: 6230
- RT-Status: resolved
- RT-Update: correspond
-
- New "batch transactions" core from Ruslan. This update makes it much easier to use stock conditions for bulk updates
-
-
-
-
-------------------------------------------------------------------------
-r1707 | jesse | 2004-11-01 00:54:47 -0500 (Mon, 01 Nov 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r6155@tinbook: jesse | 2004-11-01T04:47:05.144200Z
- r6151@tinbook: jesse | 2004-11-01T04:42:20.034865Z
- RT-Ticket: 6242
- RT-Status: resolved
- RT-Update: correspond
-
- There were a couple of bugs in the bulk update page that broke ticket linking.
- (Among other things, the custom fields update functionality was completely broken. It's been disabled pending a new implementation)
-
-
-
-
-------------------------------------------------------------------------
-r1704 | jesse | 2004-10-31 22:49:50 -0500 (Sun, 31 Oct 2004) | 10 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickCustomFields
-
- r6149@tinbook: jesse | 2004-11-01T03:50:49.511535Z
- RT-Ticket: 6245
- RT-Status: resolved
- RT-Update: correspond
-
- Global custom field editing in 3.3 had the wrong (hardcoded) URL target.
-
-
-
-
-------------------------------------------------------------------------
-r1699 | jesse | 2004-10-27 18:01:49 -0400 (Wed, 27 Oct 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r6127@tinbook: jesse | 2004-10-27T22:02:28.387934Z
- Bumping to 3.3.10
-
-
-
-------------------------------------------------------------------------
-r1698 | jesse | 2004-10-27 04:06:56 -0400 (Wed, 27 Oct 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- r6121@tinbook: jesse | 2004-10-27T07:55:33.542549Z
- r6115@tinbook: jesse | 2004-10-27T07:51:39.957035Z
- RT-Ticket: 6219
- RT-Status: resolved
- RT-Update: correspond
-
- Rebuilt RT::Tickets' watcher search logic to only use _one_ join to the users/groups table so as to create joins that can be computed in finite time. Theoretically, this makes watcher searching less powerful. In practice, it makes watcher searching a lot more possible.
-
-
-
-
-
-------------------------------------------------------------------------
-r1697 | jesse | 2004-10-27 04:06:29 -0400 (Wed, 27 Oct 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
-
- r6120@tinbook: jesse | 2004-10-27T07:55:32.882088Z
- r6109@tinbook: jesse | 2004-10-26T20:02:02.857695Z
- Additional fixes for display of unlimited search results
-
-
-------------------------------------------------------------------------
-r1696 | jesse | 2004-10-27 04:05:52 -0400 (Wed, 27 Oct 2004) | 10 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
-
- r6119@tinbook: jesse | 2004-10-27T07:55:32.408440Z
- r6046@tinbook: jesse | 2004-10-19T05:21:18.567580Z
- RT-Ticket: 6121
- RT-Status: resolved
- RT-Update: correspond
-
- Fixed the name of the template used to notify non-privilged users when their password is changed
-
-
-
-------------------------------------------------------------------------
-r1695 | jesse | 2004-10-27 04:05:26 -0400 (Wed, 27 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/schema.Pg
- M /rt/branches/3.3-TESTING/etc/upgrade/3.1.0/schema.Pg
-
- r6118@tinbook: jesse | 2004-10-27T07:55:31.895658Z
- r6007@tinbook: jesse | 2004-10-14T21:47:50.297291Z
- RT-Ticket: 6197
- RT-Status: resolved
-
- Removed a comment from the PostgreSQL schema files, as some versions of postgres fail to parse it well.
-
-
-
-------------------------------------------------------------------------
-r1694 | jesse | 2004-10-27 04:05:10 -0400 (Wed, 27 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Results.html
-
- r6117@tinbook: jesse | 2004-10-27T07:55:31.185793Z
- r1994@tinbook: jesse | 2004-10-12T23:37:37.775608Z
- Improved "stickiness" of queries.
- Next/Prev navigation should be more consistently available now.
- Most recent query should be available more consistently.
-
-
-
-------------------------------------------------------------------------
-r1692 | jesse | 2004-10-27 00:31:12 -0400 (Wed, 27 Oct 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/html/Ticket/Create.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowSummary
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
-
- r6113@tinbook: jesse | 2004-10-27T04:31:13.448231Z
- Added support for recording transaction custom fields on ticket creation.
-
-
-------------------------------------------------------------------------
-r1688 | jesse | 2004-10-23 18:05:14 -0400 (Sat, 23 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r6101@tinbook: jesse | 2004-10-23T22:05:06.396023Z
- Bumping to 3.3.9
-
-------------------------------------------------------------------------
-r1686 | jesse | 2004-10-23 17:50:32 -0400 (Sat, 23 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/PageLayout
- M /rt/branches/3.3-TESTING/html/Elements/SelectEqualityOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectNewTicketQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
- M /rt/branches/3.3-TESTING/html/Elements/SelectStatus
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectGroup
-
- r6093@tinbook: jesse | 2004-10-23T21:47:53.224532Z
- A bunch of tiny fixes to the web ui to avoid warnings about uninitialized variables.
-
-------------------------------------------------------------------------
-r1685 | jesse | 2004-10-23 17:50:14 -0400 (Sat, 23 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/schema.SQLite
-
- r6092@tinbook: jesse | 2004-10-23T21:46:47.129210Z
- Updated SQLite schema to current RT 3.3 versions
-
-------------------------------------------------------------------------
-r1684 | jesse | 2004-10-23 17:49:50 -0400 (Sat, 23 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/ACL_Overlay.pm
-
- r6091@tinbook: jesse | 2004-10-23T21:46:04.315427Z
- Better checking for ACL queries on undefined objects (to avoid a warning).
-
-------------------------------------------------------------------------
-r1683 | jesse | 2004-10-23 17:49:38 -0400 (Sat, 23 Oct 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6090@tinbook: jesse | 2004-10-23T21:44:41.851286Z
- Fixed a warning when objects were created with no names
-
-
-------------------------------------------------------------------------
-r1682 | jesse | 2004-10-23 17:49:25 -0400 (Sat, 23 Oct 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
-
- r6089@tinbook: jesse | 2004-10-23T21:43:19.939096Z
- Fixed message returned on password change to not include md5 hash of password
-
-
-------------------------------------------------------------------------
-r1681 | jesse | 2004-10-23 17:48:13 -0400 (Sat, 23 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r6088@tinbook: jesse | 2004-10-23T21:42:23.542584Z
- Bumped DBIx::SearchBuilder required version, for new SQLite support
-
-------------------------------------------------------------------------
-r1680 | jesse | 2004-10-21 13:20:05 -0400 (Thu, 21 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/ACE.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions.pm
- M /rt/branches/3.3-TESTING/lib/RT/User.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users.pm
- M /rt/branches/3.3-TESTING/sbin/factory
-
- r6077@tinbook: jesse | 2004-10-21T17:20:26.237576Z
- Core: integrated new factory code to allow more datamodel metadata to be collected
-
-------------------------------------------------------------------------
-r1679 | jesse | 2004-10-21 13:19:45 -0400 (Thu, 21 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
-
- r6076@tinbook: jesse | 2004-10-21T16:46:20.466296Z
- ACL: Fixed logic in an ACL query so that it returns failure when handed an invalid object, rather than trying a bogus SQL query and failing.
-
-------------------------------------------------------------------------
-r1678 | jesse | 2004-10-20 19:27:13 -0400 (Wed, 20 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6074@tinbook: jesse | 2004-10-20T23:26:48.112240Z
- RT-Ticket: 5701
- RT-Status: resolved
- RT-Update: correspond
-
- RT now prevents users from creating objects with 'Name' attributes that are numreric.
-
-
-------------------------------------------------------------------------
-r1677 | jesse | 2004-10-20 18:56:16 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
-
- r6071@tinbook: jesse | 2004-10-20T22:56:43.545883Z
- RT-Ticket: 6192
- RT-Status: update
-
-
- Updated RT::Attachement::OriginalContent to use a better regexp for determining what's encoded and what's not.
-
-
-
-------------------------------------------------------------------------
-r1676 | jesse | 2004-10-20 18:55:57 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/I18N/nl.po
-
- r6070@tinbook: jesse | 2004-10-20T22:51:44.854897Z
- RT-Ticket: 6123
- RT-Status: resolved
- RT-Update: correspond
-
-
- Updated the dutch translation. (As the translation hadn't been applied for a bit, some translations didn't apply cleanly.)
-
-
-------------------------------------------------------------------------
-r1675 | jesse | 2004-10-20 18:34:32 -0400 (Wed, 20 Oct 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Tools/Configuration.html
-
- r6064@tinbook: jesse | 2004-10-20T22:08:13.953728Z
- Fixed a typo
-
-
-------------------------------------------------------------------------
-r1674 | jesse | 2004-10-20 18:33:19 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
-
- r6063@tinbook: jesse | 2004-10-20T19:54:02.885732Z
- RT-Ticket: 6180
- RT-Status: resolved
- RT-Update: correspond
-
- If you have changed $MinimumPasswordLength to be greater than 6, RT's "GenerateRandomPassword" method now takes that into account
-
-
-
-------------------------------------------------------------------------
-r1673 | jesse | 2004-10-20 18:33:03 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Tools/Configuration.html
-
- r6062@tinbook: jesse | 2004-10-20T19:46:00.816618Z
- RT-Ticket: 6188
- RT-Status: resolved
- RT-Update: correspond
-
- RT squelches passwords in the configuration summary page. It no longer
- squleches "RT::MinimumPasswordLength"
-
-
-------------------------------------------------------------------------
-r1672 | jesse | 2004-10-20 18:32:48 -0400 (Wed, 20 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r6061@tinbook: jesse | 2004-10-20T19:27:22.698792Z
- Minor cleanups to record.pm
-
-------------------------------------------------------------------------
-r1671 | alexmv | 2004-10-20 15:51:36 -0400 (Wed, 20 Oct 2004) | 2 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
-
-Remove wayward '+'
-
-------------------------------------------------------------------------
-r1670 | jesse | 2004-10-20 15:20:19 -0400 (Wed, 20 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/EmailParser.pm
-
- r6056@tinbook: jesse | 2004-10-20T19:20:39.940786Z
- RT-Ticket: 5594
- RT-Status: resolved
- RT-UpdateType: correspond
-
- EmailParser updates applied to RT 3.3 to fix subject lines that are encoded and multi-line
-
-
-------------------------------------------------------------------------
-r1669 | jesse | 2004-10-20 15:19:59 -0400 (Wed, 20 Oct 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
-
- r6055@tinbook: jesse | 2004-10-20T18:56:31.219026Z
- RT-Ticket: 5569
- RT-Status: resolved
-
- Status is nowdefinablein the RT_Config file.
-
-
-------------------------------------------------------------------------
-r1666 | jesse | 2004-10-20 01:47:04 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Header
- M /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
-
- r6051@tinbook: jesse | 2004-10-20T05:39:54.597284Z
- RT-Ticket: 5837
- RT-Status: resolved
- RT-Update: correspond
-
- Moved more ticket listing style to the CSS and out of the html, per the suggestion of Dirk Pape
-
-
-
-------------------------------------------------------------------------
-r1665 | jesse | 2004-10-20 01:46:54 -0400 (Wed, 20 Oct 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
-
- r6050@tinbook: jesse | 2004-10-20T05:33:26.027966Z
- RT-Ticket: 5729
- RT-Status: resolved
- RT-Action: correspond
-
- Patch fixes issue with multibyte characters escaping in URLs. --Ruslan
-
-
-
-------------------------------------------------------------------------
-r1663 | jesse | 2004-10-19 01:23:26 -0400 (Tue, 19 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/config.layout
- M /rt/branches/3.3-TESTING/m4/rt_layout.m4
-
- r6048@tinbook: jesse | 2004-10-19T05:24:15.256721Z
- RT-Ticket: 6198
- RT-Status: resolved
- RT-Update: correspond
-
- Applied a patch to add an fhs-compliant RT layout and fix some of the layout parsing.
-
-
-------------------------------------------------------------------------
-r1661 | jesse | 2004-10-19 01:17:39 -0400 (Tue, 19 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
-
- r6044@tinbook: jesse | 2004-10-19T05:18:31.025176Z
- RT-Ticket: 6154
- RT-Status: resolved
- RT-Update: reply
-
- Owner listings now sort alphabetically
-
-
-------------------------------------------------------------------------
-r1660 | jesse | 2004-10-19 01:10:02 -0400 (Tue, 19 Oct 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
-
- r6042@tinbook: jesse | 2004-10-19T05:10:45.782060Z
- RT-Ticket: 6199
- RT-Status: resolved
- RT-Update: correspond
-
- Formatting fixes to RT.pm
-
-
-------------------------------------------------------------------------
-r1659 | jesse | 2004-10-18 13:47:29 -0400 (Mon, 18 Oct 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/etc/initialdata
-
- r6039@tinbook: jesse | 2004-10-18T17:48:14.238206Z
- RT-Ticket: 5336
- RT-Status: resolved
-
- Approval template corrected
-
-
-------------------------------------------------------------------------
-r1657 | jesse | 2004-10-15 14:25:31 -0400 (Fri, 15 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r6014@tinbook: jesse | 2004-10-15T18:26:19.439204Z
- Bumping to 3.3.8
-
-------------------------------------------------------------------------
-r1656 | jesse | 2004-10-15 13:56:50 -0400 (Fri, 15 Oct 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- A /rt/branches/3.3-TESTING/html/Admin/Elements/GlobalCustomFieldTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ObjectCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SystemTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/UserTabs
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Groups.html
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Queue-Tickets.html
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Queue-Transactions.html
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/Users.html
- A /rt/branches/3.3-TESTING/html/Admin/Global/CustomFields/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/index.html
-
- r6009@tinbook: jesse | 2004-10-15T17:57:36.162346Z
- Administrative menu overhaul to sanitize custom field configuration.
-
-
-------------------------------------------------------------------------
-r1650 | jesse | 2004-10-12 17:01:07 -0400 (Tue, 12 Oct 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r1992@tinbook: jesse | 2004-10-12T21:00:33.006657Z
- RT-Ticket: 6182
- RT-Status: resolved
-
-
-------------------------------------------------------------------------
-r1649 | jesse | 2004-10-11 17:10:40 -0400 (Mon, 11 Oct 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
-
- r1985@tinbook: jesse | 2004-10-11T20:26:31.046336Z
- Fixed a bug in the merge from 3.2 that broke ticket transaction searching; added support for Ticket "Updated" as a synonym for TransactionDate as a search criterion
-
-------------------------------------------------------------------------
-r1648 | jesse | 2004-10-10 00:30:21 -0400 (Sun, 10 Oct 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/html/Search/Results.tsv
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
-
- r1651@tinbook: jesse | 2004-10-10T04:24:17.077128Z
-
- r1652@tinbook: jesse | 2004-10-10T04:30:49.336195Z
- r1650@tinbook: jesse | 2004-10-10T04:23:58.456281Z
-
-
-
-------------------------------------------------------------------------
-r1603 | jesse | 2004-09-30 22:45:46 -0400 (Thu, 30 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Menu
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
-
- ----------------------------------------------------------------------
- r10434@tinbook: jesse | 2004-10-01T02:43:47.012515Z
- Better cssification of the menus
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1566 | jesse | 2004-09-27 17:20:14 -0400 (Mon, 27 Sep 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Menu
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
-
- r10391@tinbook: jesse | 2004-09-27T21:17:31.817589Z
- RT-Ticket: 6139
- RT-Status: resolved
- RT-Update-Type: correspond
-
- Applied patch from Oliver Thomas to move more menu styling to the external CSS file and out of the html.
-
-
-------------------------------------------------------------------------
-r1556 | jesse | 2004-09-23 15:14:29 -0400 (Thu, 23 Sep 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowPeople
-
- r10336@Jesse-Vincents-Computer: jesse | 2004-09-23T06:45:36.828724Z
-
- r10350@Jesse-Vincents-Computer: jesse | 2004-09-23T19:13:34.578717Z
- Use ShowUserEntry for ShowPeople
-
-
-------------------------------------------------------------------------
-r1554 | jesse | 2004-09-23 00:30:24 -0400 (Thu, 23 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r1867@bitsy: jesse | 2004-09-23T02:39:51.040258Z
- Bumping to 3.3.7
-
-------------------------------------------------------------------------
-r1553 | jesse | 2004-09-23 00:30:04 -0400 (Thu, 23 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r1865@bitsy: jesse | 2004-09-23T02:28:19.315048Z
-
- r1866@bitsy: jesse | 2004-09-23T02:38:19.257248Z
- DBIx::SearchBuilder dependency incremented
-
-------------------------------------------------------------------------
-r1552 | tla | 2004-09-22 23:54:00 -0400 (Wed, 22 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
-
-This now actually tests the SelectOwner functionality change.
-
-
-------------------------------------------------------------------------
-r1551 | tla | 2004-09-22 18:44:28 -0400 (Wed, 22 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
- M /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
-
-SelectOwner can now be passed a list of queues which the user may see.
-
-
-------------------------------------------------------------------------
-r1550 | tla | 2004-09-22 17:32:53 -0400 (Wed, 22 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
-
-Add sleeps for the right granting; try a pattern-match that works this time.
-
-
-------------------------------------------------------------------------
-r1546 | autrijus | 2004-09-22 13:16:22 -0400 (Wed, 22 Sep 2004) | 8 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r7965@not: autrijus | 2004-09-21T13:18:07.917938Z
-
-
-
- r8021@not: autrijus | 2004-09-22T17:15:50.576469Z
- * On mod_perl1 with root directory, ->filename is empty, not '/',
- hence breaking index.html handling. Entirely my fault.
-
-------------------------------------------------------------------------
-r1544 | tla | 2004-09-22 12:21:24 -0400 (Wed, 22 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Elements/Header
-
-If a user does not have the ModifySelf right, he/she should also not
-be able to see the Prefs link in the header.
-
-
-------------------------------------------------------------------------
-r1543 | tla | 2004-09-22 04:08:50 -0400 (Wed, 22 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
-
-If we unlimit the queues, then queues will show up, and then users will
-show up, and then customers will be happy.
-
-
-------------------------------------------------------------------------
-r1542 | tla | 2004-09-22 03:41:22 -0400 (Wed, 22 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/UPGRADING
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/html/Elements/Tabs
- M /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- A /rt/branches/3.3-TESTING/lib/t/07acl.pl.in
-
-Moved the functionality whereby Config and Prefs tabs disappear to core.
-Wrote tests for the new core behavior.
-
-
-------------------------------------------------------------------------
-r1541 | tla | 2004-09-22 03:14:33 -0400 (Wed, 22 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/t/05cronsupport.pl.in
-
-The regression test would die if the last test in here failed.
-That wasn't very nice of me.
-
-------------------------------------------------------------------------
-r1538 | tla | 2004-09-22 01:57:34 -0400 (Wed, 22 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/configure.ac
-
-The cronsupport tests somehow fell out of here. Replacing.
-
-
-------------------------------------------------------------------------
-r1535 | jesse | 2004-09-21 02:03:26 -0400 (Tue, 21 Sep 2004) | 10 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- r10334@tinbook: jesse | 2004-09-21T06:03:40.050504Z
- RT-Ticket: 6105
- RT-Status: resolved
- RT-UpdateType: correspond
-
- Refactored some TicketSQL stuff to bound the right thing in our ticketsql subclause
-
-
-
-
-------------------------------------------------------------------------
-r1534 | jesse | 2004-09-21 01:16:18 -0400 (Tue, 21 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- r10332@tinbook: jesse | 2004-09-21T05:16:35.439550Z
- Next test version of less broken cf search code
-
-------------------------------------------------------------------------
-r1533 | jesse | 2004-09-21 00:48:54 -0400 (Tue, 21 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
-
- r10326@tinbook: jesse | 2004-09-21T04:48:46.583575Z
- First test version of less broken cf search code
-
-------------------------------------------------------------------------
-r1528 | jesse | 2004-09-20 23:18:19 -0400 (Mon, 20 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
-
- r10324@tinbook: jesse | 2004-09-21T03:18:34.501590Z
- removing some debugging output
-
-------------------------------------------------------------------------
-r1527 | jesse | 2004-09-20 23:12:11 -0400 (Mon, 20 Sep 2004) | 142 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
-
- r10311@tinbook: jesse | 2004-09-20T21:22:51.344787Z
- ----------------------------------------------------------------------
- r10213@tinbook (orig r1454): autrijus | 2004-09-08T19:54:32.241114Z
- r5740@xor: autrijus | 2004-09-08T19:54:01.384500Z
- * Let "make install" for inplace layout work without hassle.
-
-
- ----------------------------------------------------------------------
- r10214@tinbook (orig r1455): autrijus | 2004-09-08T19:54:55.301056Z
- r5741@xor: autrijus | 2004-09-08T19:54:33.611316Z
- * With SQLite, put database in $VarPath if $DatabaseName is relative.
-
- ----------------------------------------------------------------------
- r10215@tinbook (orig r1456): autrijus | 2004-09-08T19:59:38.530949Z
- r5749@xor: autrijus | 2004-09-08T19:59:51.949128Z
- * Add mason_handler.scgi and standalone_httpd into list of files
- to be made executable on "make fixperms".
-
- ----------------------------------------------------------------------
- r10216@tinbook (orig r1457): jesse | 2004-09-08T20:31:26.131286Z
-
- ----------------------------------------------------------------------
- r10212@tinbook: jesse | 2004-09-08T20:30:48.849107Z
- merging 3.2's Offline.html page forward to 3.3
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r10222@tinbook (orig r1461): autrijus | 2004-09-08T21:30:59.960856Z
- r5770@xor: autrijus | 2004-09-08T20:42:48.599276Z
-
-
-
- r5809@xor: autrijus | 2004-09-08T21:30:29.869203Z
- * add sbin/rt-dump-database into sbin files.
-
- ----------------------------------------------------------------------
- r10257@tinbook (orig r1480): jesse | 2004-09-14T03:28:52.701395Z
- Bumped to 3.3.6
- ----------------------------------------------------------------------
- r10275@tinbook (orig r1493): autrijus | 2004-09-15T15:40:44.820762Z
- r7404@not: | 2004-09-15T00:04:07.008049Z
-
-
-
- r7442@not: | 2004-09-15T15:39:23.096249Z
- ----------------------------------------------------------------------
- r7441@not: autrijus | 2004-09-15T15:20:23.097011Z
- * Luis Arnauth pointed out that we did not serve mail-gateway.
- ----------------------------------------------------------------------
-
-
- ----------------------------------------------------------------------
- r10298@tinbook (orig r1506): jesse | 2004-09-19T20:20:43.620895Z
- Fixing case of mysql tablenames, since all the world is not case insensitive like Mac OS X. This is a good thing
- ----------------------------------------------------------------------
- r10299@tinbook (orig r1507): jesse | 2004-09-20T00:58:19.610978Z
- r10219@tinbook (orig r1458): leira | 2004-09-08T21:19:51.021183Z
- If something is overdue, set DueRelative to class "overdue".
-
- Note: core RT doesn't have an "overdue" class at this time.
-
-
- ----------------------------------------------------------------------
- r10300@tinbook (orig r1508): jesse | 2004-09-20T00:58:46.601286Z
- r10221@tinbook (orig r1460): leira | 2004-09-08T21:29:25.111044Z
- Use time() instead of making an RT::Date.
-
-
- ----------------------------------------------------------------------
- r10301@tinbook (orig r1509): jesse | 2004-09-20T00:59:15.051043Z
- r10223@tinbook (orig r1462): leira | 2004-09-08T21:31:51.811014Z
- Overdue things are now read.
-
-
- ----------------------------------------------------------------------
- r10302@tinbook (orig r1510): jesse | 2004-09-20T00:59:45.271374Z
- r10225@tinbook (orig r1464): leira | 2004-09-08T21:41:43.110851Z
- Don't put a span around things if it won't do anything.
-
-
- ----------------------------------------------------------------------
- r10303@tinbook (orig r1511): jesse | 2004-09-20T01:00:10.600204Z
- r10238@tinbook (orig r1474): jesse | 2004-09-10T19:40:40.885981Z
- -l
-
-
-
- ----------------------------------------------------------------------
- r10304@tinbook (orig r1512): jesse | 2004-09-20T01:01:13.381046Z
- r10253@tinbook (orig r1477): jesse | 2004-09-13T20:01:18.620833Z
- r10249@tinbook: jesse | 2004-09-13T19:56:43.541086Z
- ----------------------------------------------------------------------
- r10238@tinbook (orig r1474): jesse | 2004-09-10T19:40:40.885981Z
-
-
- ----------------------------------------------------------------------
-
- r10250@tinbook: jesse | 2004-09-13T19:58:31.660069Z
- Bumped to 3.2.2rc1
-
-
- ----------------------------------------------------------------------
- r10305@tinbook (orig r1513): jesse | 2004-09-20T01:01:37.103494Z
- r10265@tinbook (orig r1486): jesse | 2004-09-14T06:12:08.920979Z
- r10262@tinbook: jesse | 2004-09-14T06:12:21.353389Z
- Never try to fetch attributes when we don't have an object to fetch attributes on
-
-
- ----------------------------------------------------------------------
- r10306@tinbook (orig r1514): jesse | 2004-09-20T01:02:01.021112Z
- r10267@tinbook (orig r1487): jesse | 2004-09-14T16:14:00.320887Z
- r10266@tinbook: jesse | 2004-09-14T16:14:14.588686Z
- RT-Ticket: 5836
- RT-Status: resolved
- RT-ACtion: reply
-
-
- Added back a "ticket refresh" dropdown on the search results page.
- Thanks to Dirk Pape.
-
-
-
-
- ----------------------------------------------------------------------
- r10307@tinbook (orig r1515): jesse | 2004-09-20T01:02:23.020890Z
- r10277@tinbook (orig r1495): leira | 2004-09-15T19:22:35.471086Z
- Removed <pre> block around the header keys, and removed an extraneous </td>.
-
-
- ----------------------------------------------------------------------
- r10308@tinbook (orig r1516): jesse | 2004-09-20T01:02:45.710756Z
- r10284@tinbook (orig r1498): leira | 2004-09-16T22:28:20.860968Z
- Add another callback that passes parsed headers.
-
- Useful for MakeClicky, among other things.
-
-
- ----------------------------------------------------------------------
-
- r10312@tinbook: jesse | 2004-09-21T03:10:37.466198Z
- Custom field joins were being incorrectly constructed
-
-------------------------------------------------------------------------
-r1526 | tla | 2004-09-20 18:06:08 -0400 (Mon, 20 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
-
-The SelectOwner widget should not reveal the names system superusers
-to users who are not otherwise privileged to see them. Made this
-variable change in the UsersWhoHaveRight() call.
-
-
-------------------------------------------------------------------------
-r1525 | autrijus | 2004-09-20 14:25:28 -0400 (Mon, 20 Sep 2004) | 3 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
-
- r7812@not: autrijus | 2004-09-20T18:00:42.848849Z
- * dump data has to return 'true'. oops.
-
-------------------------------------------------------------------------
-r1522 | autrijus | 2004-09-20 13:22:04 -0400 (Mon, 20 Sep 2004) | 3 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- r7810@not: autrijus | 2004-09-20T17:22:27.534622Z
- * add YAML as a core dep for rt-dump-database.
-
-------------------------------------------------------------------------
-r1519 | autrijus | 2004-09-20 13:09:36 -0400 (Mon, 20 Sep 2004) | 2 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
-
-* rt-dump-database now uses YAML for easy hand modification.
-
-------------------------------------------------------------------------
-r1516 | jesse | 2004-09-19 21:02:45 -0400 (Sun, 19 Sep 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageHeaders
-
- r10284@tinbook (orig r1498): leira | 2004-09-16T22:28:20.860968Z
- Add another callback that passes parsed headers.
-
- Useful for MakeClicky, among other things.
-
-
-------------------------------------------------------------------------
-r1515 | jesse | 2004-09-19 21:02:23 -0400 (Sun, 19 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageHeaders
-
- r10277@tinbook (orig r1495): leira | 2004-09-15T19:22:35.471086Z
- Removed <pre> block around the header keys, and removed an extraneous </td>.
-
-
-------------------------------------------------------------------------
-r1514 | jesse | 2004-09-19 21:02:01 -0400 (Sun, 19 Sep 2004) | 13 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Results.html
-
- r10267@tinbook (orig r1487): jesse | 2004-09-14T16:14:00.320887Z
- r10266@tinbook: jesse | 2004-09-14T16:14:14.588686Z
- RT-Ticket: 5836
- RT-Status: resolved
- RT-ACtion: reply
-
-
- Added back a "ticket refresh" dropdown on the search results page.
- Thanks to Dirk Pape.
-
-
-
-
-------------------------------------------------------------------------
-r1513 | jesse | 2004-09-19 21:01:37 -0400 (Sun, 19 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Attributes_Overlay.pm
-
- r10265@tinbook (orig r1486): jesse | 2004-09-14T06:12:08.920979Z
- r10262@tinbook: jesse | 2004-09-14T06:12:21.353389Z
- Never try to fetch attributes when we don't have an object to fetch attributes on
-
-
-------------------------------------------------------------------------
-r1512 | jesse | 2004-09-19 21:01:13 -0400 (Sun, 19 Sep 2004) | 12 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/releng.cnf
-
- r10253@tinbook (orig r1477): jesse | 2004-09-13T20:01:18.620833Z
- r10249@tinbook: jesse | 2004-09-13T19:56:43.541086Z
- ----------------------------------------------------------------------
- r10238@tinbook (orig r1474): jesse | 2004-09-10T19:40:40.885981Z
-
-
- ----------------------------------------------------------------------
-
- r10250@tinbook: jesse | 2004-09-13T19:58:31.660069Z
- Bumped to 3.2.2rc1
-
-
-------------------------------------------------------------------------
-r1511 | jesse | 2004-09-19 21:00:10 -0400 (Sun, 19 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
-
- r10238@tinbook (orig r1474): jesse | 2004-09-10T19:40:40.885981Z
- -l
-
-
-
-------------------------------------------------------------------------
-r1510 | jesse | 2004-09-19 20:59:45 -0400 (Sun, 19 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r10225@tinbook (orig r1464): leira | 2004-09-08T21:41:43.110851Z
- Don't put a span around things if it won't do anything.
-
-
-------------------------------------------------------------------------
-r1509 | jesse | 2004-09-19 20:59:15 -0400 (Sun, 19 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
-
- r10223@tinbook (orig r1462): leira | 2004-09-08T21:31:51.811014Z
- Overdue things are now read.
-
-
-------------------------------------------------------------------------
-r1508 | jesse | 2004-09-19 20:58:46 -0400 (Sun, 19 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r10221@tinbook (orig r1460): leira | 2004-09-08T21:29:25.111044Z
- Use time() instead of making an RT::Date.
-
-
-------------------------------------------------------------------------
-r1507 | jesse | 2004-09-19 20:58:19 -0400 (Sun, 19 Sep 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
-
- r10219@tinbook (orig r1458): leira | 2004-09-08T21:19:51.021183Z
- If something is overdue, set DueRelative to class "overdue".
-
- Note: core RT doesn't have an "overdue" class at this time.
-
-
-------------------------------------------------------------------------
-r1506 | jesse | 2004-09-19 16:20:43 -0400 (Sun, 19 Sep 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING/etc/upgrade/3.3.0/schema.mysql
-
-Fixing case of mysql tablenames, since all the world is not case insensitive like Mac OS X. This is a good thing
-------------------------------------------------------------------------
-r1493 | autrijus | 2004-09-15 11:40:44 -0400 (Wed, 15 Sep 2004) | 11 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r7404@not: | 2004-09-15T00:04:07.008049Z
-
-
-
- r7442@not: | 2004-09-15T15:39:23.096249Z
- ----------------------------------------------------------------------
- r7441@not: autrijus | 2004-09-15T15:20:23.097011Z
- * Luis Arnauth pointed out that we did not serve mail-gateway.
- ----------------------------------------------------------------------
-
-
-------------------------------------------------------------------------
-r1480 | jesse | 2004-09-13 23:28:52 -0400 (Mon, 13 Sep 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING/releng.cnf
-
-Bumped to 3.3.6
-------------------------------------------------------------------------
-r1461 | autrijus | 2004-09-08 17:30:59 -0400 (Wed, 08 Sep 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/configure.ac
-
- r5770@xor: autrijus | 2004-09-08T20:42:48.599276Z
-
-
-
- r5809@xor: autrijus | 2004-09-08T21:30:29.869203Z
- * add sbin/rt-dump-database into sbin files.
-
-------------------------------------------------------------------------
-r1457 | jesse | 2004-09-08 16:31:26 -0400 (Wed, 08 Sep 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Tools/Offline.html
-
-
- ----------------------------------------------------------------------
- r10212@tinbook: jesse | 2004-09-08T20:30:48.849107Z
- merging 3.2's Offline.html page forward to 3.3
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1456 | autrijus | 2004-09-08 15:59:38 -0400 (Wed, 08 Sep 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/Makefile.in
-
- r5749@xor: autrijus | 2004-09-08T19:59:51.949128Z
- * Add mason_handler.scgi and standalone_httpd into list of files
- to be made executable on "make fixperms".
-
-------------------------------------------------------------------------
-r1455 | autrijus | 2004-09-08 15:54:55 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/lib/RT/Handle.pm
-
- r5741@xor: autrijus | 2004-09-08T19:54:33.611316Z
- * With SQLite, put database in $VarPath if $DatabaseName is relative.
-
-------------------------------------------------------------------------
-r1454 | autrijus | 2004-09-08 15:54:32 -0400 (Wed, 08 Sep 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/Makefile.in
-
- r5740@xor: autrijus | 2004-09-08T19:54:01.384500Z
- * Let "make install" for inplace layout work without hassle.
-
-
-------------------------------------------------------------------------
-r1453 | jesse | 2004-09-08 15:00:44 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- A /rt/branches/3.3-TESTING/html/Admin/autohandler
-
- r10209@tinbook: jesse | 2004-09-08T17:44:02.958487Z
- New autohandler to keep prying eyes out of the adminui
-
-------------------------------------------------------------------------
-r1452 | jesse | 2004-09-08 12:49:35 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
-
- r10201@tinbook: jesse | 2004-09-08T16:46:05.221674Z
- Ticket listings modified to show which N results they're showing
-
-------------------------------------------------------------------------
-r1451 | jesse | 2004-09-08 12:49:19 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
-
- r10200@tinbook: jesse | 2004-09-08T16:44:11.407371Z
- Modified search UI to only show potential owners for tickets in queues the user can see.
-
-------------------------------------------------------------------------
-r1450 | jesse | 2004-09-08 12:49:07 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
-
- r10199@tinbook: jesse | 2004-09-08T16:42:14.323284Z
- Edited the Saved Search UI to not display things the user can not do
-
-------------------------------------------------------------------------
-r1449 | jesse | 2004-09-08 12:48:48 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/System.pm
-
- r10198@tinbook: jesse | 2004-09-08T16:40:40.817855Z
- Added new rights: ShowConfigTab, LoadSavedSearch, CreateSavedSearch
-
-------------------------------------------------------------------------
-r1448 | autrijus | 2004-09-08 05:02:12 -0400 (Wed, 08 Sep 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/README
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
-
- r4031@not: autrijus | 2004-09-07T20:56:58.734255Z
-
-
-
- r4032@not: autrijus | 2004-09-07T21:02:14.437187Z
- * Unify httpd.conf settings for mod_perl1 and mod_perl2.
-
-------------------------------------------------------------------------
-r1447 | jesse | 2004-09-08 01:24:48 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r10181@tinbook: jesse | 2004-09-08T05:21:47.107322Z
- ACL checks to make sure a user can modify both tickets when creating a link
-
-------------------------------------------------------------------------
-r1446 | jesse | 2004-09-08 01:24:34 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
-
- r10180@tinbook: jesse | 2004-09-08T05:18:46.031232Z
- Fixed a debug message
-
-------------------------------------------------------------------------
-r1445 | jesse | 2004-09-08 01:24:22 -0400 (Wed, 08 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
-
- r10179@tinbook: jesse | 2004-09-08T05:17:10.044025Z
- Fixed a bug in the web handler that would throw an error when not running in a modperl environemnt
-
-------------------------------------------------------------------------
-r1444 | jesse | 2004-09-08 01:24:02 -0400 (Wed, 08 Sep 2004) | 4 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/SelectQueue
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
-
- r10178@tinbook: jesse | 2004-09-08T05:16:16.426259Z
- When searching for tickets, now the user will only see tickets they have the right to ShowTicket in...
-
-
-------------------------------------------------------------------------
-r1443 | jesse | 2004-09-08 01:23:31 -0400 (Wed, 08 Sep 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
-
- r10177@tinbook: jesse | 2004-09-07T23:05:53.208347Z
- Updated the Quicksearch element to use slightly cleaner code.
-
- BEHAVIOR CHANGE: Only queues for which the current user has "ShowTicket" are listed in the queue list.
-
-
-------------------------------------------------------------------------
-r1436 | jesse | 2004-09-07 18:50:53 -0400 (Tue, 07 Sep 2004) | 7 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r10175@tinbook: jesse | 2004-09-07T22:49:31.744508Z
- iRefactoring of the MergeInto method to use less code, be more correct and be clearer.
-
- Updated tests to test merge.
-
-
-
-------------------------------------------------------------------------
-r1421 | autrijus | 2004-09-06 10:50:19 -0400 (Mon, 06 Sep 2004) | 2 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_tw.po
-
-* Updated Chinese translations.
-
-------------------------------------------------------------------------
-r1417 | jesse | 2004-09-03 19:24:32 -0400 (Fri, 03 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
-
- r10151@tinbook: jesse | 2004-09-03T23:24:09.414496Z
- minor library cleanups
-
-------------------------------------------------------------------------
-r1416 | jesse | 2004-09-03 19:24:24 -0400 (Fri, 03 Sep 2004) | 3 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/rt-mailgate.in
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- A /rt/branches/3.3-TESTING/lib/t/06mailgateway.pl.in
-
- r10150@tinbook: jesse | 2004-09-03T23:22:35.061493Z
- Moving mailgateway tests into their own file
-
-------------------------------------------------------------------------
-r1415 | jesse | 2004-09-03 16:35:38 -0400 (Fri, 03 Sep 2004) | 9 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
-
- ----------------------------------------------------------------------
- r10116@tinbook: jesse | 2004-09-02T21:14:26.642415Z
-
- ----------------------------------------------------------------------
- r10144@tinbook: jesse | 2004-09-03T20:32:06.311337Z
- Query builder fixes (merge bug)
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1388 | jesse | 2004-09-01 00:43:19 -0400 (Wed, 01 Sep 2004) | 5 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectRights
-
- ----------------------------------------------------------------------
- r10114@tinbook: jesse | 2004-09-01T04:43:10.448516Z
- Don't show rights that a principal has in the list of rights that can be granted to them
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1387 | jesse | 2004-09-01 00:10:48 -0400 (Wed, 01 Sep 2004) | 11 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Elements/DisplayOptions
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCriteria
-
- ----------------------------------------------------------------------
- r8302@tinbook: jesse | 2004-07-28T20:59:42.277484Z
-
- ----------------------------------------------------------------------
- r10109@tinbook: jesse | 2004-09-01T04:08:25.198125Z
- rewrote mail gateway shim to be a bit more robust
- ----------------------------------------------------------------------
- r10110@tinbook: jesse | 2004-09-01T04:09:17.429478Z
- Started to refactor the query builder ui code to yank out the bogus logic.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1383 | jesse | 2004-08-31 22:37:44 -0400 (Tue, 31 Aug 2004) | 407 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/README
- M /rt/branches/3.3-TESTING/bin/mason_handler.fcgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.scgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.svc.in
- M /rt/branches/3.3-TESTING/bin/rt-crontool.in
- M /rt/branches/3.3-TESTING/bin/rt-mailgate.in
- M /rt/branches/3.3-TESTING/bin/rt.in
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/etc/drop.Oracle
- M /rt/branches/3.3-TESTING/etc/upgrade/3.1.0/schema.Pg
- M /rt/branches/3.3-TESTING/html/Admin/Elements/AddCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CreateUserCalled
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFieldValues
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditTemplates
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditUserComments
- M /rt/branches/3.3-TESTING/html/Admin/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Header
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ModifyTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectCustomFieldType
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyGroup
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyQueue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectNewGroupMembers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectRights
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripAction
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripCondition
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectSingleOrMultiple
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectStage
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SystemTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ToolTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/UserTabs
- M /rt/branches/3.3-TESTING/html/Admin/Global/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomField.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/People.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/Configuration.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/index.html
- M /rt/branches/3.3-TESTING/html/Admin/index.html
- M /rt/branches/3.3-TESTING/html/Approvals/Display.html
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Approve
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/PendingMyApproval
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/ShowDependency
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Approvals/index.html
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedEnd
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedStart
- M /rt/branches/3.3-TESTING/html/Elements/Callback
- M /rt/branches/3.3-TESTING/html/Elements/Checkbox
- A /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable
- A /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Header
- A /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/ParseFormat
- A /rt/branches/3.3-TESTING/html/Elements/CollectionAsTable/Row
- M /rt/branches/3.3-TESTING/html/Elements/CreateTicket
- M /rt/branches/3.3-TESTING/html/Elements/EditLinks
- M /rt/branches/3.3-TESTING/html/Elements/Error
- M /rt/branches/3.3-TESTING/html/Elements/Footer
- M /rt/branches/3.3-TESTING/html/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/ListActions
- M /rt/branches/3.3-TESTING/html/Elements/Login
- M /rt/branches/3.3-TESTING/html/Elements/Menu
- M /rt/branches/3.3-TESTING/html/Elements/MessageBox
- M /rt/branches/3.3-TESTING/html/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/Elements/MyTickets
- M /rt/branches/3.3-TESTING/html/Elements/PageLayout
- M /rt/branches/3.3-TESTING/html/Elements/QueryString
- M /rt/branches/3.3-TESTING/html/Elements/QuickCreate
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
- A /rt/branches/3.3-TESTING/html/Elements/RT__Ticket
- A /rt/branches/3.3-TESTING/html/Elements/RT__Ticket/ColumnMap
- M /rt/branches/3.3-TESTING/html/Elements/Refresh
- M /rt/branches/3.3-TESTING/html/Elements/ScrubHTML
- M /rt/branches/3.3-TESTING/html/Elements/Section
- M /rt/branches/3.3-TESTING/html/Elements/SelectAttachmentField
- M /rt/branches/3.3-TESTING/html/Elements/SelectBoolean
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Elements/SelectDate
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateRelation
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateType
- M /rt/branches/3.3-TESTING/html/Elements/SelectEqualityOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Elements/SelectLang
- M /rt/branches/3.3-TESTING/html/Elements/SelectLinkType
- M /rt/branches/3.3-TESTING/html/Elements/SelectMatch
- M /rt/branches/3.3-TESTING/html/Elements/SelectNewTicketQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
- M /rt/branches/3.3-TESTING/html/Elements/SelectQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectResultsPerPage
- M /rt/branches/3.3-TESTING/html/Elements/SelectSortOrder
- M /rt/branches/3.3-TESTING/html/Elements/SelectStatus
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketSortBy
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketTypes
- M /rt/branches/3.3-TESTING/html/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Elements/SelectWatcherType
- M /rt/branches/3.3-TESTING/html/Elements/SetupSessionCookie
- M /rt/branches/3.3-TESTING/html/Elements/ShowLink
- M /rt/branches/3.3-TESTING/html/Elements/ShowLinks
- M /rt/branches/3.3-TESTING/html/Elements/SimpleSearch
- M /rt/branches/3.3-TESTING/html/Elements/Submit
- M /rt/branches/3.3-TESTING/html/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Elements/TitleBox
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxEnd
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxStart
- M /rt/branches/3.3-TESTING/html/NoAuth/Logout.html
- M /rt/branches/3.3-TESTING/html/NoAuth/Reminder.html
- A /rt/branches/3.3-TESTING/html/NoAuth/images/autohandler
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/history
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/links
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.3-TESTING/html/REST/1.0/autohandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/logout
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/ticket
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/comment
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/link
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/merge
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/html/Search/Edit.html
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
- M /rt/branches/3.3-TESTING/html/Search/Elements/DisplayOptions
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditFormat
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
- M /rt/branches/3.3-TESTING/html/Search/Elements/NewListActions
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCriteria
- M /rt/branches/3.3-TESTING/html/Search/Elements/SearchPrivacy
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectAndOr
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectLinks
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectPersonType
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchObject
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchesForObjects
- M /rt/branches/3.3-TESTING/html/Search/Results.html
- M /rt/branches/3.3-TESTING/html/Search/Results.rdf
- M /rt/branches/3.3-TESTING/html/Search/Results.tsv
- M /rt/branches/3.3-TESTING/html/SelfService/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/SelfService/Closed.html
- M /rt/branches/3.3-TESTING/html/SelfService/Create.html
- M /rt/branches/3.3-TESTING/html/SelfService/Display.html
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Header
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/SelfService/Error.html
- M /rt/branches/3.3-TESTING/html/SelfService/Prefs.html
- M /rt/branches/3.3-TESTING/html/SelfService/Update.html
- M /rt/branches/3.3-TESTING/html/SelfService/index.html
- M /rt/branches/3.3-TESTING/html/Ticket/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/Ticket/Create.html
- M /rt/branches/3.3-TESTING/html/Ticket/Display.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/AddWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/BulkLinks
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/FindAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/PreviewScrips
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDependencies
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowGroupMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMemberOf
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageHeaders
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowReferences
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowRequestor
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowSummary
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransaction
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowUserEntry
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Ticket/History.html
- M /rt/branches/3.3-TESTING/html/Ticket/Modify.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyDates.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyLinks.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyPeople.html
- M /rt/branches/3.3-TESTING/html/Ticket/ShowEmailRecord.html
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/html/Tools/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Tools/MyDay.html
- M /rt/branches/3.3-TESTING/html/Tools/Offline.html
- M /rt/branches/3.3-TESTING/html/User/Delegation.html
- M /rt/branches/3.3-TESTING/html/User/Elements/DelegateRights
- M /rt/branches/3.3-TESTING/html/User/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/User/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/User/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/User/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/User/Groups/index.html
- M /rt/branches/3.3-TESTING/html/User/Prefs.html
- M /rt/branches/3.3-TESTING/html/autohandler
- M /rt/branches/3.3-TESTING/html/index.html
- M /rt/branches/3.3-TESTING/html/l
- M /rt/branches/3.3-TESTING/lib/RT/ACE.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/AutoOpen.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Autoreply.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Notify.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/NotifyAsComment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/RecordComment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/RecordCorrespondence.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/ResolveMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SetPriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Base.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/AnyTransaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/BeforeDue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Overdue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityExceeds.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/QueueChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/StatusChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/CurrentUser.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Date.pm
- M /rt/branches/3.3-TESTING/lib/RT/EmailParser.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Handle.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/da.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/de.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/es.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fi.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fr.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/he.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/hu.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/i_default.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/it.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ja.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/nl.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/no.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/pt_br.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ru.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_tw.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/CLI.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/GnuPG.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/REST.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/ActiveTicketsInQueue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/FromSQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/SearchBuilder.pm
- M /rt/branches/3.3-TESTING/lib/RT/System.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/base.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI.pm
- M /rt/branches/3.3-TESTING/lib/RT/User.pm
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
- M /rt/branches/3.3-TESTING/sbin/extract-message-catalog
- M /rt/branches/3.3-TESTING/sbin/extract_pod_tests
- M /rt/branches/3.3-TESTING/sbin/factory
- M /rt/branches/3.3-TESTING/sbin/license_tag
- M /rt/branches/3.3-TESTING/sbin/regression_harness
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- ----------------------------------------------------------------------
- r8270@tinbook (orig r1270): autrijus | 2004-07-22T00:39:33.156202Z
- ----------------------------------------------------------------------
- r6200@not: autrijus | 2004-07-22T00:37:31.494556Z
-
- * $Ticket->AddCustomFieldValue now takes FIELD as Name.
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8271@tinbook (orig r1271): autrijus | 2004-07-22T00:52:53.468442Z
- ----------------------------------------------------------------------
- r6204@not: autrijus | 2004-07-22T00:52:38.207887Z
-
- * Switch $Ticket->AddCustomFieldValue to use $cf->LoadByNameAndQueue for
- forward compatibility.
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8272@tinbook (orig r1272): jesse | 2004-07-22T01:04:55.279276Z
- ----------------------------------------------------------------------
- r8267@tinbook: jesse | 2004-07-22T01:01:02.633960Z
-
- Making license blocks fold away
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8282@tinbook (orig r1276): jesse | 2004-07-22T19:08:32.352834Z
- ----------------------------------------------------------------------
- r8281@tinbook: jesse | 2004-07-22T19:08:48.451578Z
-
- * The "/l" component now does all its work in the init block
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8286@tinbook (orig r1277): leira | 2004-07-23T02:30:36.111345Z
- If a template file is uploaded, clear out the old template first (as before).
-
- ----------------------------------------------------------------------
- r8287@tinbook (orig r1278): leira | 2004-07-23T02:32:27.864998Z
- Fill in the default queue if one was specified.
-
- ----------------------------------------------------------------------
- r8288@tinbook (orig r1279): leira | 2004-07-23T03:02:15.525380Z
- RT-Ticket: 5880
- RT-Status: resolved
- RT-Action: correspond
- NULL values can now be chosen, and the TicketSQL query is constructed properly.
-
- ----------------------------------------------------------------------
- r8289@tinbook (orig r1280): leira | 2004-07-23T03:04:27.962400Z
- No value is NULL, not null.
-
- ----------------------------------------------------------------------
- r8290@tinbook (orig r1281): autrijus | 2004-07-23T17:15:16.923948Z
- RT-Ticket: 5274
- RT-Status: resolved
- RT-Update: correspond
-
- Apply Bart Duchesne's patch for correctly deleting old TCFV '0'
- when editing SingleValue TCFs.
-
- ----------------------------------------------------------------------
- r8291@tinbook (orig r1282): jesse | 2004-07-23T17:34:23.556934Z
-
- ----------------------------------------------------------------------
- r8285@tinbook: jesse | 2004-07-23T17:33:04.648260Z
-
- Using single quotes makes the email address in the copyright not get mangled
- ----------------------------------------------------------------------
-
-
- ----------------------------------------------------------------------
- r8293@tinbook (orig r1283): jesse | 2004-07-23T21:23:10.580796Z
- ----------------------------------------------------------------------
- r8292@tinbook: jesse | 2004-07-23T21:23:16.884303Z
-
- RT now goes out of its way to display images, like the logo... even when users fail to configure their webserver correctly
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8294@tinbook (orig r1284): leira | 2004-07-23T21:43:20.116290Z
- Reset string properly when uploading a template file.
-
- ----------------------------------------------------------------------
- r8304@tinbook (orig r1285): robert | 2004-07-26T19:07:58.942428Z
- ----------------------------------------------------------------------
- r1287@dog: rspier | 2004-07-26T18:56:48.690023Z
-
- [fsck.com #5879] - DBIx::SearchBuilder should treat 'IS' as case insensitive, since most databases do too.
- ----------------------------------------------------------------------
- r1288@dog: rspier | 2004-07-26T19:00:50.217330Z
-
- MicroOptimizations:
- - if we're doing an IS NULL search already, there's no reason to do a $null_columns_ok
- - use || instead of 'or' so we can short-circuit
- ----------------------------------------------------------------------
- r1289@dog: rspier | 2004-07-26T19:06:54.604573Z
-
- MicroOptimization/Cleanup:
- - get rid of $null_columns_ok flag
- - clean up logic, and use string compare instead of regexp
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8305@tinbook (orig r1286): robert | 2004-07-26T19:15:12.786172Z
- ----------------------------------------------------------------------
- r1291@dog: rspier | 2004-07-26T19:14:41.133769Z
-
- Revert the last microoptimization. It smells funny and will create problems with merging to 3.3
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8307@tinbook (orig r1288): leira | 2004-07-28T04:04:12.240846Z
- Handle 0 values properly.
-
- ----------------------------------------------------------------------
- r8308@tinbook (orig r1289): huberth | 2004-07-28T18:35:38.638941Z
- RT-Ticket: 5908
- RT-Status: resolved
-
- * drop.Oracle now drops the attributes table.
-
- ----------------------------------------------------------------------
- r8309@tinbook (orig r1290): huberth | 2004-07-28T18:39:36.764074Z
- RT-Ticket: 5899
- RT-Status: resolved
-
- * html/Search/Results.tsv now works with custom fields that have line breaks
- within them.
-
-
- ----------------------------------------------------------------------
- r8311@tinbook (orig r1292): jesse | 2004-07-29T00:08:11.298269Z
- ----------------------------------------------------------------------
- r8303@tinbook: jesse | 2004-07-28T23:59:45.883318Z
-
- Removed the extra newlines we inserted after the copyright block, since it adds extra newlines to the mason pages, which can break some parsing.
-
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8316@tinbook (orig r1293): leira | 2004-07-29T05:41:51.040092Z
- Make the TitleBox title a link to the same search, only not limited to 10.
-
- ----------------------------------------------------------------------
- r8319@tinbook (orig r1296): alexmv | 2004-07-30T19:59:24.588580Z
- * Fix "Unrecognised line: foo@bar" caused by 5.8.0 not matching utf8
- against regexps
-
- ----------------------------------------------------------------------
- r8320@tinbook (orig r1297): huberth | 2004-07-30T21:46:43.639926Z
- RT-Ticket: 5699
- RT-Status: resolved
-
- * Bulk editing of custom fields (finally!) added. Not quite as fast as
- would be preferred, probably, but it (should) work.
-
-
-
- ----------------------------------------------------------------------
- r8329@tinbook (orig r1298): huberth | 2004-08-03T14:02:14.558593Z
- RT-Ticket: 5927
- RT-Status: resolved
-
- * Due dates in the past no longer look like they're in the future,
- i.e. "6 days ago".
-
- ----------------------------------------------------------------------
- r8333@tinbook (orig r1302): huberth | 2004-08-03T22:06:00.556754Z
- RT-Ticket: 4473
- RT-Status: resolved
-
- * In Ticket/Elements/ShowAttachments, the font code that is generated
- no longer tries to escape the quotes (to give something like
- <font size=&#34;-1&#34;>). Now the quotes appear. Also, the default
- font size for the date and size has been changed to -2, because -1
- looks huge and out of place.
-
- ----------------------------------------------------------------------
- r8338@tinbook (orig r1307): alexmv | 2004-08-04T14:33:55.363891Z
- RT-Ticket: 5916
- RT-Status: resolved
- * Postgres doesn't use '#' as a comment character
-
- ----------------------------------------------------------------------
- r8339@tinbook (orig r1308): alexmv | 2004-08-04T15:54:14.363856Z
- RT-Ticket: 4036
- RT-Status: resolved
- * 'Create' is uppercase
- * TemplateObj->QueueObj is null if the template is just being created
-
- ----------------------------------------------------------------------
- r8340@tinbook (orig r1309): alexmv | 2004-08-04T17:42:42.591907Z
- * Warn if running MySQL < 4.0.x
-
- * Suggest something slightly more useful if we don't have InnoDB and
- we're running MySQL 3.23
-
- ----------------------------------------------------------------------
- r8341@tinbook (orig r1310): alexmv | 2004-08-04T19:03:51.226982Z
- RT-Ticket: 5942
- RT-Status: resolved
- * Use a:after {content: "..."} to put dots after titlebox links; this
- involves one loc string change
-
- * Also force titlebox hrefs to be white, not black
-
- ----------------------------------------------------------------------
- r8342@tinbook (orig r1311): huberth | 2004-08-05T00:44:40.527084Z
- RT-Ticket: 4234
- RT-Status: resolved
-
- * Doubled headers and navbars no longer appear when an unprivileged user
- creates a Custom Field. (This happened because Abort was called within
- a subcomponent.)
-
- ----------------------------------------------------------------------
- r8343@tinbook (orig r1312): alexmv | 2004-08-05T00:50:16.625070Z
- * Removing accidental paste
-
- ----------------------------------------------------------------------
- r8344@tinbook (orig r1313): huberth | 2004-08-05T18:47:43.340906Z
- * Fixed a couple of other stupid errors resulting from r1311 relating to
- quoting of pathnames.
-
- ----------------------------------------------------------------------
- r8383@tinbook (orig r1326): alexmv | 2004-08-10T19:38:59.860454Z
- * Add callback in header proper, to allow injection of style and script tags
-
- ----------------------------------------------------------------------
- r8394@tinbook (orig r1335): leira | 2004-08-17T16:03:08.253892Z
- Added a new callback at the very beginning of the <%INIT> block.
-
- RTIR uses this callback to look at the queue and hijack the display
- page, however, the callback itself is more generic than that: it
- happens at the very beginning, and receives all arguments.
-
-
- ----------------------------------------------------------------------
- r8396@tinbook (orig r1337): alexmv | 2004-08-17T19:03:04.023840Z
- RT-Ticket: 5820
- RT-Update: correspond
- RT-Status: resolved
-
- * Use "local $_" to prevent "modification of read-only value..."
- caused by aliasing $_ to a constant
-
- ----------------------------------------------------------------------
- r8397@tinbook (orig r1338): alexmv | 2004-08-17T21:05:10.004165Z
- RT-Ticket: 5716
- RT-Update: correspond
- RT-Status: resolved
-
- * Move code which is not specific to parsing mime messages into
- RT::Email::Interface; this removes a large base of duplicated code,
- and some sketchy "methods" that were getting called with "" as self
- often
-
-
- ----------------------------------------------------------------------
- r8398@tinbook (orig r1339): alexmv | 2004-08-17T22:16:11.573879Z
- RT-Ticket: 5963
- RT-Update: correspond
- RT-Status: resolved
-
- * Applied patch provided by bobg at the domain of uic.edu to exit if
- there is no content on standard input
-
-
- ----------------------------------------------------------------------
- r8399@tinbook (orig r1340): alexmv | 2004-08-17T22:18:15.933790Z
- RT-Ticket: 5939
- RT-Status: resolved
- RT-Update: correspond
-
- * Take out un-needed $fontsize variable; removing <font> tags will
- have to wait
-
- ----------------------------------------------------------------------
- r8400@tinbook (orig r1341): alexmv | 2004-08-17T23:57:59.583821Z
- RT-Ticket: 5897
- RT-Update: correspond
- RT-Status: resolved
-
- * ModifyTicket includes CommentOnTicket and ReplyToTicket rights;
- this effects display of "[Reply] [Comment]" links per transaction
-
- ----------------------------------------------------------------------
- r8401@tinbook (orig r1342): alexmv | 2004-08-18T00:05:11.483081Z
- RT-Ticket: 5823
- RT-Update: correspond
- RT-Status: resolved
-
- * Applied patch from bobg at the domain of uic.edu, prefixing refresh
- form's url with $RT::WebPath
-
- ----------------------------------------------------------------------
- r8402@tinbook (orig r1343): huberth | 2004-08-18T02:23:42.094984Z
- * Made bulk editing of custom fields slightly more efficient and
- simultaneously cleaned up some of its code.
- * Also added a little bit of docs for RT::Ticket::Create() - Priority
- is a valid arg also.
-
- ----------------------------------------------------------------------
- r8403@tinbook (orig r1344): alexmv | 2004-08-18T02:27:04.024544Z
- RT-Ticket: 5988
- RT-Update: correspond
- RT-Status: resolved
-
- * Back out change r1338, as it breaks API compatibility in a stable
- release
-
- ----------------------------------------------------------------------
- r8416@tinbook (orig r1347): alexmv | 2004-08-18T19:31:10.580958Z
- RT-Ticket: 5826
- RT-Update: correspond
- RT-Status: resolved
-
- * Fix logic; bounce message as a loop if $IsALoop and not $RT::StoreLoops;
- was "if $IsALoop and ($RT::LoopsToOwner and not $RT::StoreLoops)"
-
- ----------------------------------------------------------------------
- r8417@tinbook (orig r1348): alexmv | 2004-08-18T20:22:42.711734Z
- RT-Ticket: 5215
- RT-Update: correspond
- RT-Status: resolved
-
- * When merging tickets, the resulting ticket's
- Time{Estimated,Worked,Left} should be the sum of the fields from
- both tickets
-
- ----------------------------------------------------------------------
- r8418@tinbook (orig r1349): alexmv | 2004-08-18T20:38:09.170879Z
- RT-Ticket: 5963
- RT-Update: correspond
- RT-Status: resolved
-
- * Some mailers care about the return value rt-mailgate; 'return 0'
- instead of 'die' to ensure that we fake success
-
- ----------------------------------------------------------------------
- r8420@tinbook (orig r1351): alexmv | 2004-08-18T21:53:17.081053Z
- RT-Ticket: 5792
- RT-Update: correspond
- RT-Status: resolved
-
- * Move the lasttrans anchor into a table cell
-
- ----------------------------------------------------------------------
- r8421@tinbook (orig r1352): alexmv | 2004-08-18T22:04:57.879119Z
- RT-Ticket: 5809
- RT-Status: resolved
-
- * Derivative of the doc. patch in [fsck.com #5809] applied
-
- ----------------------------------------------------------------------
- r8456@tinbook (orig r1372): jesse | 2004-08-28T23:47:32.411217Z
- ----------------------------------------------------------------------
- r8454@tinbook: jesse | 2004-08-28T23:42:12.276700Z
-
- ----------------------------------------------------------------------
- r8455@tinbook: jesse | 2004-08-28T23:46:06.962020Z
- Adding a "SearchActions" callback to Search/Results.html
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8473@tinbook (orig r1376): jesse | 2004-08-31T04:22:49.340942Z
- ----------------------------------------------------------------------
- r8457@tinbook: jesse | 2004-08-29T01:52:08.449173Z
- Refactored the TicketList compnent to be more reusable
- ----------------------------------------------------------------------
- r8458@tinbook: jesse | 2004-08-29T02:41:50.808026Z
- Adding a callback for a customer
- ----------------------------------------------------------------------
- r8471@tinbook: jesse | 2004-08-31T04:20:29.035587Z
- Fixed the callback in Results.html to not flake out when we've got interesting %ARGS coming into it.
-
- ----------------------------------------------------------------------
- r8472@tinbook: jesse | 2004-08-31T04:21:47.346418Z
- Added "DependedOnBy" to TicketSQL to mean what it means elsewhere.
-
- Made TicketSQL let you search by ticket type
-
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8479@tinbook (orig r1379): jesse | 2004-08-31T08:14:54.830848Z
- ----------------------------------------------------------------------
- r8478@tinbook: jesse | 2004-08-31T08:14:29.467020Z
- Inlined Tickets_Overlay_SQL's "match"
-
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8482@tinbook (orig r1380): jesse | 2004-08-31T18:49:23.384189Z
-
- ----------------------------------------------------------------------
- r8480@tinbook: jesse | 2004-08-31T18:48:19.505579Z
- Added callbacks to let users add entries to show and edit basics boxes
-
- Made "type" an editable field on tickets (at the web api level, not in the UI)
-
- ----------------------------------------------------------------------
-
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1345 | alexmv | 2004-08-17 22:42:49 -0400 (Tue, 17 Aug 2004) | 6 lines
-Changed paths:
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/EmailParser.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
-
-RT-Ticket: 5716
-RT-Status: resolved
-RT-Update: correspond
-
- * Duplicate code change backed out of 3.2 and checked into 3.3
-
-------------------------------------------------------------------------
-r1275 | jesse | 2004-07-22 14:36:03 -0400 (Thu, 22 Jul 2004) | 8 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickCustomFields
-
-
- ----------------------------------------------------------------------
- r8279@tinbook: jesse | 2004-07-22T18:33:54.229892Z
-
- * Allow the move up/move down links to work for custom field ordering
- ----------------------------------------------------------------------
-
-
-------------------------------------------------------------------------
-r1268 | jesse | 2004-07-21 15:36:07 -0400 (Wed, 21 Jul 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING/releng.cnf
-
-Bumped to 3.3.5
-------------------------------------------------------------------------
-r1267 | jesse | 2004-07-21 15:12:31 -0400 (Wed, 21 Jul 2004) | 67 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/README
- M /rt/branches/3.3-TESTING/bin/mason_handler.fcgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.scgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.svc.in
- M /rt/branches/3.3-TESTING/bin/rt-crontool.in
- M /rt/branches/3.3-TESTING/bin/rt-mailgate.in
- M /rt/branches/3.3-TESTING/bin/rt.in
- M /rt/branches/3.3-TESTING/bin/standalone_httpd.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/configure.ac
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/Objects.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/CustomFields/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Elements/AddCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CreateUserCalled
- M /rt/branches/3.3-TESTING/html/Admin/Elements/CustomFieldTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFieldValues
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditTemplates
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditUserComments
- M /rt/branches/3.3-TESTING/html/Admin/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Header
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ListGlobalScrips
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ModifyTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ObjectCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickCustomFields
- M /rt/branches/3.3-TESTING/html/Admin/Elements/PickObjects
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/QueueTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectCustomFieldLookupType
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectCustomFieldType
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyGroup
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyQueue
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectModifyUser
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectNewGroupMembers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectRights
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScrip
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripAction
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectScripCondition
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectSingleOrMultiple
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectStage
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectTemplate
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Admin/Elements/SystemTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/ToolTabs
- M /rt/branches/3.3-TESTING/html/Admin/Elements/UserTabs
- M /rt/branches/3.3-TESTING/html/Admin/Global/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Global/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/History.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Groups/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomField.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/GroupRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/People.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrip.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Scrips.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Template.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/Templates.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/UserRights.html
- M /rt/branches/3.3-TESTING/html/Admin/Queues/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/Configuration.html
- M /rt/branches/3.3-TESTING/html/Admin/Tools/index.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/CustomFields.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/History.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/Memberships.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/Modify.html
- M /rt/branches/3.3-TESTING/html/Admin/Users/index.html
- M /rt/branches/3.3-TESTING/html/Admin/index.html
- M /rt/branches/3.3-TESTING/html/Approvals/Display.html
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Approve
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/PendingMyApproval
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/ShowDependency
- M /rt/branches/3.3-TESTING/html/Approvals/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Approvals/index.html
- M /rt/branches/3.3-TESTING/html/Download/CustomFieldValue/dhandler
- M /rt/branches/3.3-TESTING/html/Download/Tabular/dhandler
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedEnd
- M /rt/branches/3.3-TESTING/html/Elements/BevelBoxRaisedStart
- M /rt/branches/3.3-TESTING/html/Elements/Callback
- M /rt/branches/3.3-TESTING/html/Elements/Checkbox
- M /rt/branches/3.3-TESTING/html/Elements/CreateTicket
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldBinary
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldFreeform
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldImage
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldSelect
- M /rt/branches/3.3-TESTING/html/Elements/EditCustomFieldText
- M /rt/branches/3.3-TESTING/html/Elements/EditLinks
- M /rt/branches/3.3-TESTING/html/Elements/Error
- M /rt/branches/3.3-TESTING/html/Elements/Footer
- M /rt/branches/3.3-TESTING/html/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/ListActions
- M /rt/branches/3.3-TESTING/html/Elements/Login
- M /rt/branches/3.3-TESTING/html/Elements/Menu
- M /rt/branches/3.3-TESTING/html/Elements/MessageBox
- M /rt/branches/3.3-TESTING/html/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/Elements/MyTickets
- M /rt/branches/3.3-TESTING/html/Elements/PageLayout
- M /rt/branches/3.3-TESTING/html/Elements/QueryString
- M /rt/branches/3.3-TESTING/html/Elements/QuickCreate
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
- M /rt/branches/3.3-TESTING/html/Elements/Refresh
- M /rt/branches/3.3-TESTING/html/Elements/ScrubHTML
- M /rt/branches/3.3-TESTING/html/Elements/Section
- M /rt/branches/3.3-TESTING/html/Elements/SelectAttachmentField
- M /rt/branches/3.3-TESTING/html/Elements/SelectBoolean
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectCustomFieldValue
- M /rt/branches/3.3-TESTING/html/Elements/SelectDate
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateRelation
- M /rt/branches/3.3-TESTING/html/Elements/SelectDateType
- M /rt/branches/3.3-TESTING/html/Elements/SelectEqualityOperator
- M /rt/branches/3.3-TESTING/html/Elements/SelectGroups
- M /rt/branches/3.3-TESTING/html/Elements/SelectLang
- M /rt/branches/3.3-TESTING/html/Elements/SelectLinkType
- M /rt/branches/3.3-TESTING/html/Elements/SelectMatch
- M /rt/branches/3.3-TESTING/html/Elements/SelectNewTicketQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectOwner
- M /rt/branches/3.3-TESTING/html/Elements/SelectQueue
- M /rt/branches/3.3-TESTING/html/Elements/SelectResultsPerPage
- M /rt/branches/3.3-TESTING/html/Elements/SelectSortOrder
- M /rt/branches/3.3-TESTING/html/Elements/SelectStatus
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketSortBy
- M /rt/branches/3.3-TESTING/html/Elements/SelectTicketTypes
- M /rt/branches/3.3-TESTING/html/Elements/SelectUsers
- M /rt/branches/3.3-TESTING/html/Elements/SelectWatcherType
- M /rt/branches/3.3-TESTING/html/Elements/SetupSessionCookie
- M /rt/branches/3.3-TESTING/html/Elements/ShowCustomFieldImage
- M /rt/branches/3.3-TESTING/html/Elements/ShowCustomFields
- M /rt/branches/3.3-TESTING/html/Elements/ShowLink
- M /rt/branches/3.3-TESTING/html/Elements/ShowLinks
- M /rt/branches/3.3-TESTING/html/Elements/ShowMemberships
- M /rt/branches/3.3-TESTING/html/Elements/SimpleSearch
- M /rt/branches/3.3-TESTING/html/Elements/Submit
- M /rt/branches/3.3-TESTING/html/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Elements/TitleBox
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxEnd
- M /rt/branches/3.3-TESTING/html/Elements/TitleBoxStart
- M /rt/branches/3.3-TESTING/html/NoAuth/Logout.html
- M /rt/branches/3.3-TESTING/html/NoAuth/Reminder.html
- M /rt/branches/3.3-TESTING/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/queue/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/history
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/ticket/links
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/default
- M /rt/branches/3.3-TESTING/html/REST/1.0/Forms/user/ns
- M /rt/branches/3.3-TESTING/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/3.3-TESTING/html/REST/1.0/autohandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/logout
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/dhandler
- M /rt/branches/3.3-TESTING/html/REST/1.0/search/ticket
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/comment
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/link
- M /rt/branches/3.3-TESTING/html/REST/1.0/ticket/merge
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/html/Search/Edit.html
- M /rt/branches/3.3-TESTING/html/Search/Elements/BuildFormatString
- M /rt/branches/3.3-TESTING/html/Search/Elements/DisplayOptions
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditFormat
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
- M /rt/branches/3.3-TESTING/html/Search/Elements/NewListActions
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickBasics
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCriteria
- M /rt/branches/3.3-TESTING/html/Search/Elements/SearchPrivacy
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectAndOr
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectGroup
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectLinks
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectPersonType
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchObject
- M /rt/branches/3.3-TESTING/html/Search/Elements/SelectSearchesForObjects
- D /rt/branches/3.3-TESTING/html/Search/Elements/TicketRow
- M /rt/branches/3.3-TESTING/html/Search/Results.html
- M /rt/branches/3.3-TESTING/html/Search/Results.rdf
- M /rt/branches/3.3-TESTING/html/Search/Results.tsv
- M /rt/branches/3.3-TESTING/html/SelfService/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/SelfService/Closed.html
- M /rt/branches/3.3-TESTING/html/SelfService/Create.html
- M /rt/branches/3.3-TESTING/html/SelfService/Display.html
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/GotoTicket
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Header
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/MyRequests
- M /rt/branches/3.3-TESTING/html/SelfService/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/SelfService/Error.html
- M /rt/branches/3.3-TESTING/html/SelfService/Prefs.html
- M /rt/branches/3.3-TESTING/html/SelfService/Update.html
- M /rt/branches/3.3-TESTING/html/SelfService/index.html
- M /rt/branches/3.3-TESTING/html/Ticket/Attachment/dhandler
- M /rt/branches/3.3-TESTING/html/Ticket/Create.html
- M /rt/branches/3.3-TESTING/html/Ticket/Display.html
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/AddWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/BulkLinks
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomField
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/EditWatchers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/FindAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/PreviewScrips
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowBasics
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowCustomFields
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDates
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowDependencies
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowGroupMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowHistory
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMemberOf
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMembers
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageHeaders
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowPeople
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowReferences
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowRequestor
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowSummary
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransaction
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/ShowUserEntry
- M /rt/branches/3.3-TESTING/html/Ticket/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Ticket/History.html
- M /rt/branches/3.3-TESTING/html/Ticket/Modify.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyAll.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyDates.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyLinks.html
- M /rt/branches/3.3-TESTING/html/Ticket/ModifyPeople.html
- M /rt/branches/3.3-TESTING/html/Ticket/ShowEmailRecord.html
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/html/Tools/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/Tools/MyDay.html
- M /rt/branches/3.3-TESTING/html/Tools/Offline.html
- M /rt/branches/3.3-TESTING/html/User/Delegation.html
- M /rt/branches/3.3-TESTING/html/User/Elements/DelegateRights
- M /rt/branches/3.3-TESTING/html/User/Elements/GroupTabs
- M /rt/branches/3.3-TESTING/html/User/Elements/Tabs
- M /rt/branches/3.3-TESTING/html/User/Groups/Members.html
- M /rt/branches/3.3-TESTING/html/User/Groups/Modify.html
- M /rt/branches/3.3-TESTING/html/User/Groups/index.html
- M /rt/branches/3.3-TESTING/html/User/Prefs.html
- M /rt/branches/3.3-TESTING/html/autohandler
- M /rt/branches/3.3-TESTING/html/index.html
- M /rt/branches/3.3-TESTING/html/l
- M /rt/branches/3.3-TESTING/lib/RT/ACE.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACE_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL.pm
- M /rt/branches/3.3-TESTING/lib/RT/ACL_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/AutoOpen.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Autoreply.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Notify.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/NotifyAsComment.pm
- A /rt/branches/3.3-TESTING/lib/RT/Action/RecordComment.pm
- A /rt/branches/3.3-TESTING/lib/RT/Action/RecordCorrespondence.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/ResolveMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SetPriority.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachment_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attachments_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attributes_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Base.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/AnyTransaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/BeforeDue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Overdue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/PriorityExceeds.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/QueueChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/StatusChange.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/UserDefined.pm
- M /rt/branches/3.3-TESTING/lib/RT/CurrentUser.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Date.pm
- M /rt/branches/3.3-TESTING/lib/RT/EmailParser.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers.pm
- M /rt/branches/3.3-TESTING/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Group_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups.pm
- M /rt/branches/3.3-TESTING/lib/RT/Groups_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Handle.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/de.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/i_default.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/CLI.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/GnuPG.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Email.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/REST.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link.pm
- M /rt/branches/3.3-TESTING/lib/RT/Link_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links.pm
- M /rt/branches/3.3-TESTING/lib/RT/Links_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomField_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields.pm
- M /rt/branches/3.3-TESTING/lib/RT/ObjectCustomFields_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principal_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals.pm
- M /rt/branches/3.3-TESTING/lib/RT/Principals_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues.pm
- M /rt/branches/3.3-TESTING/lib/RT/Queues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Record.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrip_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips.pm
- M /rt/branches/3.3-TESTING/lib/RT/Scrips_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/ActiveTicketsInQueue.pm
- A /rt/branches/3.3-TESTING/lib/RT/Search/FromSQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Search/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/SearchBuilder.pm
- M /rt/branches/3.3-TESTING/lib/RT/System.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template.pm
- M /rt/branches/3.3-TESTING/lib/RT/Template_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates.pm
- M /rt/branches/3.3-TESTING/lib/RT/Templates_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValue_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/3.3-TESTING/lib/RT/TicketCustomFieldValues_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transaction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions.pm
- M /rt/branches/3.3-TESTING/lib/RT/Transactions_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/base.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/3.3-TESTING/lib/RT/URI.pm
- M /rt/branches/3.3-TESTING/lib/RT/User.pm
- M /rt/branches/3.3-TESTING/lib/RT/User_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users.pm
- M /rt/branches/3.3-TESTING/lib/RT/Users_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT.pm.in
- M /rt/branches/3.3-TESTING/lib/t/02regression.t.in
- A /rt/branches/3.3-TESTING/lib/t/05cronsupport.pl.in
- M /rt/branches/3.3-TESTING/sbin/extract-message-catalog
- M /rt/branches/3.3-TESTING/sbin/extract_pod_tests
- M /rt/branches/3.3-TESTING/sbin/factory
- M /rt/branches/3.3-TESTING/sbin/license_tag
- M /rt/branches/3.3-TESTING/sbin/regression_harness
- M /rt/branches/3.3-TESTING/sbin/rt-dump-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
- ----------------------------------------------------------------------
- r8262@tinbook: jesse | 2004-07-21T18:06:24.396460Z
-
- Merged forward from 3.2
-
- ----------------------------------------------------------------------
- r3390@tinbook: jesse | 2004-07-14T19:30:37.426202Z
-
- RT-Ticket: 5886
- RT-Action: correspond
- RT-Status: resolved
-
- Updated rt-crontool to pass in CurrentUser when creating new actions and searches..
-
- ----------------------------------------------------------------------
- r3397@tinbook: jesse | 2004-07-14T19:44:51.378312Z
-
-
- ----------------------------------------------------------------------
- r3398@tinbook: jesse | 2004-07-14T19:59:24.627023Z
-
-
- ----------------------------------------------------------------------
- r3399@tinbook: jesse | 2004-07-14T20:23:59.757938Z
-
- Bumping to 3.2.1rc4
- ----------------------------------------------------------------------
- r8220@tinbook: jesse | 2004-07-15T19:02:55.020727Z
-
- RT-Ticket: 5891
- RT-Status: open
- RT-Action: correspond
-
- Interim measure to only list sortable fields in the "Sort display by"
- options.
-
-
- ----------------------------------------------------------------------
- r8222@tinbook: jesse | 2004-07-16T17:09:30.264982Z
-
- Web UI: Fixed bug which prevented unlimited searches
- ----------------------------------------------------------------------
- r8239@tinbook: jesse | 2004-07-19T16:54:11.660605Z
-
-
- ----------------------------------------------------------------------
- r8240@tinbook: jesse | 2004-07-19T17:01:43.322617Z
-
- Retagging the source code with the updated submission policy
- ----------------------------------------------------------------------
- r8258@tinbook: jesse | 2004-07-20T21:24:03.019565Z
-
- Crontool additions to support scripted notifications
- ----------------------------------------------------------------------
- r8261@tinbook: jesse | 2004-07-21T18:05:55.579150Z
-
-
-
-
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r8264@tinbook: jesse | 2004-07-21T19:10:28.393515Z
-
- Bumpped the copyright/license/notice
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1264 | autrijus | 2004-07-19 22:56:01 -0400 (Mon, 19 Jul 2004) | 8 lines
-Changed paths:
- M /rt
- M /rt/branches/3.2-RELEASE/html/Elements/Header
- M /rt/branches/3.2-RELEASE/html/Elements/SetupSessionCookie
- M /rt/branches/3.2-RELEASE/html/NoAuth/webrt.css
- M /rt/branches/3.3-TESTING/html/Download/Tabular/dhandler
- M /rt/branches/PLATANO-EXPERIMENTAL/docs/design_docs/ruleset-workflow.txt
-
-
- r6188@not: autrijus | 2004-07-20T02:52:39.146361Z
-
-
-
-
-
-
-------------------------------------------------------------------------
-r1247 | autrijus | 2004-07-14 15:24:23 -0400 (Wed, 14 Jul 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/3.3-TESTING/lib/RT/StyleGuide.pod
-
- ----------------------------------------------------------------------
- r6050@not: autrijus | 2004-07-14T19:21:34.616159Z
-
- * Add style guide information about parameter passing style.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1233 | jesse | 2004-07-14 00:37:55 -0400 (Wed, 14 Jul 2004) | 10 lines
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/bin/mason_handler.fcgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.scgi.in
- M /rt/branches/3.3-TESTING/bin/mason_handler.svc.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/etc/schema.Sybase
- M /rt/branches/3.3-TESTING/html/Admin/Elements/EditScrip
- M /rt/branches/3.3-TESTING/html/Elements/Header
- M /rt/branches/3.3-TESTING/html/Elements/TicketList
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Bulk.html
- M /rt/branches/3.3-TESTING/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/Condition/Generic.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/it.po
- A /rt/branches/3.3-TESTING/lib/RT/Interface/Web
- A /rt/branches/3.3-TESTING/lib/RT/Interface/Web/Handler.pm
- M /rt/branches/3.3-TESTING/lib/RT/Interface/Web.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Ticket_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
-
- ----------------------------------------------------------------------
- r3374@tinbook: jesse | 2004-07-13T23:31:39.996661Z
-
- Merge forward from RT 3.2
- ----------------------------------------------------------------------
- r3375@tinbook: jesse | 2004-07-14T04:33:29.296451Z
-
- Minor fixes for a merge problem from 3.2
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1232 | jesse | 2004-07-13 19:15:10 -0400 (Tue, 13 Jul 2004) | 1 line
-Changed paths:
- M /rt/branches/3.3-TESTING
- M /rt/branches/3.3-TESTING/Makefile.in
- M /rt/branches/3.3-TESTING/README
- M /rt/branches/3.3-TESTING/UPGRADING
- M /rt/branches/3.3-TESTING/bin/rt-crontool.in
- M /rt/branches/3.3-TESTING/bin/webmux.pl.in
- M /rt/branches/3.3-TESTING/etc/RT_Config.pm.in
- M /rt/branches/3.3-TESTING/html/Elements/QuickCreate
- M /rt/branches/3.3-TESTING/html/Elements/Quicksearch
- D /rt/branches/3.3-TESTING/html/Elements/ViewUser
- M /rt/branches/3.3-TESTING/html/Search/Build.html
- M /rt/branches/3.3-TESTING/html/Search/Elements/DisplayOptions
- M /rt/branches/3.3-TESTING/html/Search/Elements/EditSearches
- M /rt/branches/3.3-TESTING/html/Search/Elements/PickCFs
- M /rt/branches/3.3-TESTING/html/Search/Results.html
- M /rt/branches/3.3-TESTING/html/Search/Results.rdf
- M /rt/branches/3.3-TESTING/html/Ticket/Update.html
- M /rt/branches/3.3-TESTING/html/Tools/Offline.html
- M /rt/branches/3.3-TESTING/lib/RT/Action/CreateTickets.pm
- M /rt/branches/3.3-TESTING/lib/RT/Action/SendEmail.pm
- M /rt/branches/3.3-TESTING/lib/RT/Attribute_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/RT/I18N/cs.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/da.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/de.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/en_malkovich.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/es.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fi.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/fr.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/he.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/hu.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/it.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ja.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/nl.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/no.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/pt_br.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/ru.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_cn.po
- M /rt/branches/3.3-TESTING/lib/RT/I18N/zh_tw.po
- M /rt/branches/3.3-TESTING/lib/RT/Tickets_Overlay.pm
- M /rt/branches/3.3-TESTING/lib/t/03web.pl.in
- M /rt/branches/3.3-TESTING/sbin/rt-setup-database.in
- M /rt/branches/3.3-TESTING/sbin/rt-test-dependencies.in
-
-
-------------------------------------------------------------------------
-r1224 | jesse | 2004-07-13 14:41:42 -0400 (Tue, 13 Jul 2004) | 1 line
-Changed paths:
- A /rt/branches/3.3-TESTING (from /rt/branches/rt-3.3:1223)
- D /rt/branches/rt-3.3
-
-Moving RT 3.0 from "head" to a 3.0-MAINT branch
-------------------------------------------------------------------------
-r1209 | autrijus | 2004-07-12 16:22:48 -0400 (Mon, 12 Jul 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.1/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.SQLite
-
- ----------------------------------------------------------------------
- r5990@not: autrijus | 2004-07-12T20:22:03.588615Z
-
- * Let the cf param in Ticket->CustomFieldValues be optional,
- so we can get Atom tests to work.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1205 | autrijus | 2004-07-12 13:30:03 -0400 (Mon, 12 Jul 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/sbin/rt-setup-database.in
-
- ----------------------------------------------------------------------
- r5976@not: autrijus | 2004-07-12T17:29:13.392510Z
-
- * The warning on missing ACL files used $RT::EtcPath even if it's
- reading it fro other paths. Fixed.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1180 | autrijus | 2004-07-05 15:43:17 -0400 (Mon, 05 Jul 2004) | 6 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/sbin/rt-dump-database.in
-
- ----------------------------------------------------------------------
- r5913@not: autrijus | 2004-07-05T19:41:37.720057Z
-
- * add rt-dump-database, a tool to dump config data to initialdata format.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1179 | autrijus | 2004-07-05 12:56:22 -0400 (Mon, 05 Jul 2004) | 8 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
-
- ----------------------------------------------------------------------
- r5899@not: autrijus | 2004-07-05T15:13:55.850880Z
-
- * correct the documentation for CreateTickets; it was still referring
- to the archaic "Approvals" queue and "Approval" type, whereas now we're
- using "___Approvals" and "approval" now.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1160 | jesse | 2004-06-27 23:10:54 -0400 (Sun, 27 Jun 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/releng.cnf
-
- ----------------------------------------------------------------------
- r1997@tinbook: jesse | 2004-06-28T03:10:36.434329Z
-
- Bumping to 3.3.4
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1159 | jesse | 2004-06-27 23:08:01 -0400 (Sun, 27 Jun 2004) | 24 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/UPGRADING
- M /rt/branches/rt-3.3/bin/mason_handler.fcgi.in
- M /rt/branches/rt-3.3/bin/mason_handler.scgi.in
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
- M /rt/branches/rt-3.3/html/Admin/Elements/EditCustomField
- M /rt/branches/rt-3.3/html/Admin/Elements/EditScrip
- M /rt/branches/rt-3.3/html/Admin/Elements/EditTemplates
- M /rt/branches/rt-3.3/html/Admin/Elements/UserTabs
- M /rt/branches/rt-3.3/html/Admin/Global/GroupRights.html
- M /rt/branches/rt-3.3/html/Admin/Global/Template.html
- M /rt/branches/rt-3.3/html/Admin/Global/UserRights.html
- M /rt/branches/rt-3.3/html/Admin/Groups/GroupRights.html
- M /rt/branches/rt-3.3/html/Admin/Groups/Members.html
- M /rt/branches/rt-3.3/html/Admin/Groups/Modify.html
- M /rt/branches/rt-3.3/html/Admin/Groups/UserRights.html
- M /rt/branches/rt-3.3/html/Admin/Queues/GroupRights.html
- M /rt/branches/rt-3.3/html/Admin/Queues/Modify.html
- M /rt/branches/rt-3.3/html/Admin/Queues/Template.html
- M /rt/branches/rt-3.3/html/Admin/Queues/UserRights.html
- M /rt/branches/rt-3.3/html/Admin/Users/Modify.html
- M /rt/branches/rt-3.3/html/Approvals/index.html
- M /rt/branches/rt-3.3/html/Search/Bulk.html
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- M /rt/branches/rt-3.3/html/SelfService/Prefs.html
- M /rt/branches/rt-3.3/html/Ticket/Display.html
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowAttachments
- M /rt/branches/rt-3.3/html/Ticket/ModifyAll.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyDates.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyLinks.html
- M /rt/branches/rt-3.3/html/Ticket/Update.html
- M /rt/branches/rt-3.3/html/User/Delegation.html
- M /rt/branches/rt-3.3/html/User/Groups/Members.html
- M /rt/branches/rt-3.3/html/User/Groups/Modify.html
- M /rt/branches/rt-3.3/html/User/Prefs.html
- M /rt/branches/rt-3.3/html/autohandler
- M /rt/branches/rt-3.3/lib/RT/I18N/da.po
- M /rt/branches/rt-3.3/lib/RT/I18N/de.po
- M /rt/branches/rt-3.3/lib/RT/I18N/en_malkovich.po
- M /rt/branches/rt-3.3/lib/RT/I18N/es.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fi.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- M /rt/branches/rt-3.3/lib/RT/I18N/he.po
- M /rt/branches/rt-3.3/lib/RT/I18N/it.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ja.po
- M /rt/branches/rt-3.3/lib/RT/I18N/nl.po
- M /rt/branches/rt-3.3/lib/RT/I18N/no.po
- M /rt/branches/rt-3.3/lib/RT/I18N/pt_br.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ru.po
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/SearchBuilder.pm
- M /rt/branches/rt-3.3/lib/RT/Templates_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
-
- ----------------------------------------------------------------------
- r1769@tinbook: jesse | 2004-06-01T20:22:38.640731Z
-
-
- ----------------------------------------------------------------------
- r1902@tinbook: jesse | 2004-06-17T01:08:53.996154Z
-
-
- ----------------------------------------------------------------------
- r1991@tinbook: jesse | 2004-06-28T02:03:57.669851Z
-
-
- ----------------------------------------------------------------------
- r1992@tinbook: jesse | 2004-06-28T02:19:36.386707Z
-
- Pulling forward from RT 3.1
-
-
- ----------------------------------------------------------------------
- r1993@tinbook: jesse | 2004-06-28T03:06:56.930396Z
-
- Merging forward from 3.1
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1153 | autrijus | 2004-06-27 00:02:47 -0400 (Sun, 27 Jun 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Tools/Offline.html
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
-
- ----------------------------------------------------------------------
- r5788@not: autrijus | 2004-06-27T04:02:12.644291Z
-
- * import 3.1 again due to glitches in Offline.html
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1150 | autrijus | 2004-06-26 16:31:56 -0400 (Sat, 26 Jun 2004) | 14 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/README
- M /rt/branches/rt-3.3/UPGRADING
- M /rt/branches/rt-3.3/bin/mason_handler.fcgi.in
- D /rt/branches/rt-3.3/bin/rt-commit-handler.in
- M /rt/branches/rt-3.3/bin/rt-crontool.in
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
- M /rt/branches/rt-3.3/etc/acl.mysql
- M /rt/branches/rt-3.3/etc/initialdata
- A /rt/branches/rt-3.3/etc/upgrade/3.1.17
- A /rt/branches/rt-3.3/etc/upgrade/3.1.17/content
- M /rt/branches/rt-3.3/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/rt-3.3/html/Admin/Elements/EditScrip
- D /rt/branches/rt-3.3/html/Admin/Elements/ModifyQueue
- D /rt/branches/rt-3.3/html/Admin/Elements/ModifyUser
- M /rt/branches/rt-3.3/html/Admin/Queues/People.html
- M /rt/branches/rt-3.3/html/Admin/Users/Modify.html
- D /rt/branches/rt-3.3/html/Admin/Users/Prefs.html
- D /rt/branches/rt-3.3/html/Developer
- M /rt/branches/rt-3.3/html/Elements/EditLinks
- M /rt/branches/rt-3.3/html/Elements/Header
- M /rt/branches/rt-3.3/html/Elements/ScrubHTML
- M /rt/branches/rt-3.3/html/Elements/SelectOwner
- M /rt/branches/rt-3.3/html/Elements/SelectStatus
- M /rt/branches/rt-3.3/html/Elements/TicketList
- M /rt/branches/rt-3.3/html/Elements/TitleBoxStart
- M /rt/branches/rt-3.3/html/NoAuth/webrt.css
- M /rt/branches/rt-3.3/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/rt-3.3/html/REST/1.0/ticket/link
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Bulk.html
- M /rt/branches/rt-3.3/html/Search/Edit.html
- M /rt/branches/rt-3.3/html/Search/Elements/BuildFormatString
- M /rt/branches/rt-3.3/html/Search/Elements/EditFormat
- M /rt/branches/rt-3.3/html/Search/Elements/EditSearches
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- M /rt/branches/rt-3.3/html/Search/Results.html
- M /rt/branches/rt-3.3/html/SelfService/Display.html
- M /rt/branches/rt-3.3/html/SelfService/Update.html
- M /rt/branches/rt-3.3/html/Ticket/Create.html
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditBasics
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditPeople
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditWatchers
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowDates
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowGroupMembers
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowPeople
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowSummary
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowUserEntry
- M /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- M /rt/branches/rt-3.3/html/Ticket/ModifyAll.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyLinks.html
- M /rt/branches/rt-3.3/html/Ticket/Update.html
- M /rt/branches/rt-3.3/html/Tools/MyDay.html
- M /rt/branches/rt-3.3/html/Tools/Offline.html
- M /rt/branches/rt-3.3/html/User/Prefs.html
- M /rt/branches/rt-3.3/html/index.html
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Action/EscalatePriority.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/PriorityChange.pm
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- M /rt/branches/rt-3.3/lib/RT/I18N/cs.po
- M /rt/branches/rt-3.3/lib/RT/I18N/da.po
- M /rt/branches/rt-3.3/lib/RT/I18N/de.po
- M /rt/branches/rt-3.3/lib/RT/I18N/en_malkovich.po
- M /rt/branches/rt-3.3/lib/RT/I18N/es.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fi.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- M /rt/branches/rt-3.3/lib/RT/I18N/he.po
- M /rt/branches/rt-3.3/lib/RT/I18N/it.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ja.po
- M /rt/branches/rt-3.3/lib/RT/I18N/nl.po
- M /rt/branches/rt-3.3/lib/RT/I18N/no.po
- M /rt/branches/rt-3.3/lib/RT/I18N/pt_br.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ru.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
- M /rt/branches/rt-3.3/lib/RT/Interface/Email.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Transactions_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT.pm.in
- M /rt/branches/rt-3.3/lib/t/00smoke.t.in
- M /rt/branches/rt-3.3/lib/t/02regression.t.in
- M /rt/branches/rt-3.3/lib/t/03web.pl.in
- M /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
-
- ----------------------------------------------------------------------
- r5774@not: autrijus | 2004-06-26T10:40:48.767820Z
-
- * incremental merge from 3.1 to 3.3
- ----------------------------------------------------------------------
- r5778@not: autrijus | 2004-06-26T11:28:26.143291Z
-
- * solve utf8 quoting problem on "Take".
- ----------------------------------------------------------------------
- r5781@not: autrijus | 2004-06-26T20:27:29.184033Z
-
- * restore hu.po
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1121 | autrijus | 2004-06-20 13:59:07 -0400 (Sun, 20 Jun 2004) | 10 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/html/Elements/Header
- M /rt/branches/rt-3.3/html/Elements/SetupSessionCookie
- M /rt/branches/rt-3.3/html/NoAuth/webrt.css
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
-
- ----------------------------------------------------------------------
- r5682@not: autrijus | 2004-06-20T17:57:48.360088Z
-
- * Supports native MasonX::Apache2Handler.
- * Changed header_out to use headers_out instead (which should be
- used in 1.0 as well). Cf.:
- http://perl.apache.planetmirror.com/docs/2.0/user/porting/compat.html
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1082 | alexmv | 2004-06-16 10:53:17 -0400 (Wed, 16 Jun 2004) | 11 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
-
-RT-Ticket: 5732
-RT-Status: stalled
-RT-Update: correspond
-
- * POD spacing mistake in Ticket_Overlay
-
- * Ticket_Overlay now overrides RT::Record's CustomFieldValues method,
- to intercept calls where the field is passed by name. I don't have
- a way of testing this patch, so this bug is getting marked stalled
- until this patch is verified.
-
-------------------------------------------------------------------------
-r1033 | leira | 2004-06-08 14:26:18 -0400 (Tue, 08 Jun 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
-
-Pass along 'Type' argument in CreateTickets (replicates a patch that was applied to 3.1, but needed for a customer in this branch now).
-
-------------------------------------------------------------------------
-r1031 | jesse | 2004-06-08 01:05:46 -0400 (Tue, 08 Jun 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/standalone_httpd.in
-
- ----------------------------------------------------------------------
- r1752@debian: jesse | 2004-06-08T13:50:52.709840Z
-
- standalone httpd is now forking rather than singleprocess
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r1023 | alexmv | 2004-06-07 16:03:46 -0400 (Mon, 07 Jun 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/I18N/he.po
-
-RT-Ticket: 5674
-RT-Action: comment
-RT-Status: resolved
-
- * Apply Ilan Rabinovitch's changes
-
-------------------------------------------------------------------------
-r1022 | alexmv | 2004-06-07 14:47:18 -0400 (Mon, 07 Jun 2004) | 7 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/schema.mysql
-
-RT-Ticket: 5648
-RT-Action: comment
-RT-Status: resolved
-
- * The last hunk of the ticket no longer applies, as those indexes
- were reshuffled because they were too long.
-
-------------------------------------------------------------------------
-r986 | jesse | 2004-05-31 21:54:38 -0400 (Mon, 31 May 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/configure.ac
- A /rt/branches/rt-3.3/etc/acl.Sybase
- A /rt/branches/rt-3.3/etc/schema.Sybase
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Bulk.html
- M /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- M /rt/branches/rt-3.3/lib/RT/Handle.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/rt-3.3/lib/RT.pm.in
- M /rt/branches/rt-3.3/sbin/rt-setup-database.in
- M /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
-
-Merging forward from RT 3.1
-------------------------------------------------------------------------
-r981 | jesse | 2004-05-30 03:01:04 -0400 (Sun, 30 May 2004) | 7 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/etc/schema.mysql
- M /rt/branches/rt-3.3/etc/upgrade/3.3.0/schema.mysql
-
-
- ----------------------------------------------------------------------
- r1721@debian: jesse | 2004-05-30T16:04:25.431679Z
-
- Mysql on some platforms (built with unicode?) has a shorter max index length. adjusted indexes
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r966 | jesse | 2004-05-27 23:30:59 -0400 (Thu, 27 May 2004) | 35 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/etc/acl.Pg
- D /rt/branches/rt-3.3/etc/upgrade/2.1.71
- M /rt/branches/rt-3.3/html/Admin/Elements/ToolTabs
- D /rt/branches/rt-3.3/html/Developer/Perldoc.html
- M /rt/branches/rt-3.3/html/Elements/EditLinks
- M /rt/branches/rt-3.3/html/Elements/Footer
- D /rt/branches/rt-3.3/html/Elements/ShadedBox
- D /rt/branches/rt-3.3/html/Elements/ShadedInputRow
- D /rt/branches/rt-3.3/html/Elements/ShadedRow
- M /rt/branches/rt-3.3/html/Elements/ShowLinks
- M /rt/branches/rt-3.3/html/Elements/TicketList
- D /rt/branches/rt-3.3/html/Projects
- D /rt/branches/rt-3.3/html/Scope
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- D /rt/branches/rt-3.3/html/Search/Elements/PickRestriction
- D /rt/branches/rt-3.3/html/Search/Elements/TicketHeader
- D /rt/branches/rt-3.3/html/Search/Elements/TicketHeaderCell
- D /rt/branches/rt-3.3/html/Search/Listing.html
- D /rt/branches/rt-3.3/html/Ticket/Elements/EditLinks
- D /rt/branches/rt-3.3/html/Ticket/Elements/ShowLink
- D /rt/branches/rt-3.3/html/Ticket/Elements/ShowLinks
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
-
- ----------------------------------------------------------------------
- r1710@tinbook: jesse | 2004-05-28T02:46:23.907073Z
-
-
- ----------------------------------------------------------------------
- r1712@tinbook: jesse | 2004-05-28T03:15:12.330227Z
-
- ----------------------------------------------------------------------
- r1669@tinbook: jesse | 2004-05-24T02:17:41.959105Z
-
-
- ----------------------------------------------------------------------
- r1672@tinbook: jesse | 2004-05-24T03:09:05.156817Z
-
-
- ----------------------------------------------------------------------
- r1673@tinbook: jesse | 2004-05-24T03:59:43.181766Z
-
- Bumping to 3.1.16
- ----------------------------------------------------------------------
- r1706@tinbook: jesse | 2004-05-28T02:10:56.309297Z
-
-
- ----------------------------------------------------------------------
- r1711@tinbook: jesse | 2004-05-28T02:47:49.277131Z
-
-
- ----------------------------------------------------------------------
-
- ----------------------------------------------------------------------
- r1713@tinbook: jesse | 2004-05-28T03:27:19.127190Z
-
- Cleaning out things split out into other products
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r965 | jesse | 2004-05-27 22:44:48 -0400 (Thu, 27 May 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/standalone_httpd.in
- M /rt/branches/rt-3.3/html/Search/Edit.html
- M /rt/branches/rt-3.3/html/Search/Results.html
- M /rt/branches/rt-3.3/html/Ticket/Elements/PreviewScrips
- M /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth/GnuPG.pm
-
-
-------------------------------------------------------------------------
-r954 | autrijus | 2004-05-26 06:12:38 -0400 (Wed, 26 May 2004) | 20 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.1/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.1/lib/RT/I18N/zh_tw.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
-
- ----------------------------------------------------------------------
- r4757@not: autrijus | 2004-05-11T06:13:28.139589Z
-
- * Chinese translation for 3.2 final.
- ----------------------------------------------------------------------
- r5211@not: autrijus | 2004-05-26T10:07:40.959072Z
-
- * FreezeThaw fails badly when encoding structures with mixed unicode
- and byte string contents. Switch to Storable+Base64 which deals
- with this gracefully.
-
- ----------------------------------------------------------------------
- r5212@not: autrijus | 2004-05-26T10:09:36.398305Z
-
- * EscapeUTF8 should preserve the byte/unicode flag of the original
- string. Otherwise, silent promotion on AutoFlush=>0 can corrupt
- pages with both byte and unicode string contents.
- (Reported by: LCamel and jihuang from foundry)
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r941 | jesse | 2004-05-23 22:29:51 -0400 (Sun, 23 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- M /rt/branches/rt-3.3/html/Ticket/Create.html
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Groups_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- A /rt/branches/rt-3.3/lib/t/data/rt-send-cc
-
-Merge forward from 3.1
-
-------------------------------------------------------------------------
-r934 | leira | 2004-05-19 12:23:49 -0400 (Wed, 19 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
-
-Move file from 3.1 so that CF searching will work.
-
-------------------------------------------------------------------------
-r933 | leira | 2004-05-19 02:34:22 -0400 (Wed, 19 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Link_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
-
-Actually pass along link error messages. Resolves bps #2210.
-
-------------------------------------------------------------------------
-r930 | leira | 2004-05-19 00:48:20 -0400 (Wed, 19 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Ticket/Create.html
-
-Remove Debug field.
-
-------------------------------------------------------------------------
-r920 | jesse | 2004-05-17 22:18:53 -0400 (Mon, 17 May 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3
-
-
-------------------------------------------------------------------------
-r918 | jesse | 2004-05-17 22:02:24 -0400 (Mon, 17 May 2004) | 10 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/html/Admin/Groups/index.html
- M /rt/branches/rt-3.3/html/Elements/MyTickets
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- M /rt/branches/rt-3.3/html/Tools/Offline.html
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/rt-3.3/lib/t/04_send_email.pl.in
-
- ----------------------------------------------------------------------
- r1191@Jesse-Vincents-Computer: jesse | 2004-05-18T00:35:23.362237Z
-
-
- ----------------------------------------------------------------------
- r1192@Jesse-Vincents-Computer: jesse | 2004-05-18T02:01:52.198022Z
-
- Merged forward from rt 3.1
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r901 | leira | 2004-05-14 17:35:35 -0400 (Fri, 14 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Elements/MyTickets
-
-MyTickets doesn't require a Priority to be set.
-
-------------------------------------------------------------------------
-r890 | leira | 2004-05-14 00:28:27 -0400 (Fri, 14 May 2004) | 4 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/Groups/index.html
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
-
-If there isn't a QueueObj to begin with, it can't have a Name.
-
-Replaced a newline that had gone astray.
-
-------------------------------------------------------------------------
-r864 | jesse | 2004-05-11 01:25:36 -0400 (Tue, 11 May 2004) | 8 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/html/Admin/Elements/CustomFieldTabs
- M /rt/branches/rt-3.3/html/SelfService/Closed.html
- M /rt/branches/rt-3.3/html/autohandler
- M /rt/branches/rt-3.3/lib/RT/I18N/cs.po
- M /rt/branches/rt-3.3/lib/RT/I18N/da.po
- M /rt/branches/rt-3.3/lib/RT/I18N/de.po
- M /rt/branches/rt-3.3/lib/RT/I18N/en.po
- M /rt/branches/rt-3.3/lib/RT/I18N/en_malkovich.po
- M /rt/branches/rt-3.3/lib/RT/I18N/es.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fi.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- M /rt/branches/rt-3.3/lib/RT/I18N/he.po
- M /rt/branches/rt-3.3/lib/RT/I18N/hu.po
- M /rt/branches/rt-3.3/lib/RT/I18N/it.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ja.po
- M /rt/branches/rt-3.3/lib/RT/I18N/nl.po
- M /rt/branches/rt-3.3/lib/RT/I18N/no.po
- M /rt/branches/rt-3.3/lib/RT/I18N/pt_br.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ru.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
- M /rt/branches/rt-3.3/sbin/extract-message-catalog
-
-
-
- ----------------------------------------------------------------------
- r1528@tinbook: jesse | 2004-05-11T04:57:31.357768Z
-
- Updated translations, linted them, updated translation extraction software
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r859 | jesse | 2004-05-09 21:29:48 -0400 (Sun, 09 May 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/releng.cnf
-
- ----------------------------------------------------------------------
- r1517@tinbook: jesse | 2004-05-10T01:29:37.932237Z
-
- Bumping to 3.3.3
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r858 | jesse | 2004-05-09 21:27:33 -0400 (Sun, 09 May 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/etc/upgrade/3.3.0/schema.Pg
- M /rt/branches/rt-3.3/etc/upgrade/3.3.0/schema.mysql
-
- ----------------------------------------------------------------------
- r1515@tinbook: jesse | 2004-05-10T01:26:38.232023Z
-
- Improved 3.1->3.3 migration support
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r851 | jesse | 2004-05-06 21:03:05 -0400 (Thu, 06 May 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/html/Admin/Queues/Scrip.html
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT.pm.in
-
-Merging forward from rt-3.1
-------------------------------------------------------------------------
-r848 | jesse | 2004-05-06 20:33:00 -0400 (Thu, 06 May 2004) | 5 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/HOWTO/README
- M /rt/branches/rt-3.3/HOWTO/change.txt
- M /rt/branches/rt-3.3/HOWTO/release.txt
- M /rt/branches/rt-3.3/HOWTO/version-control.txt
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/UPGRADING
- M /rt/branches/rt-3.3/aclocal.m4
- M /rt/branches/rt-3.3/bin/mason_handler.fcgi.in
- M /rt/branches/rt-3.3/bin/mason_handler.scgi.in
- M /rt/branches/rt-3.3/bin/mason_handler.svc.in
- M /rt/branches/rt-3.3/bin/rt-commit-handler.in
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/docs/Security
- M /rt/branches/rt-3.3/docs/design_docs/acls
- M /rt/branches/rt-3.3/docs/design_docs/approval_notices
- M /rt/branches/rt-3.3/docs/design_docs/approval_template
- M /rt/branches/rt-3.3/docs/design_docs/cf_search
- M /rt/branches/rt-3.3/docs/design_docs/cli_spec
- M /rt/branches/rt-3.3/docs/design_docs/cvs_integration
- M /rt/branches/rt-3.3/docs/design_docs/delegation
- M /rt/branches/rt-3.3/docs/design_docs/evil_plans
- M /rt/branches/rt-3.3/docs/design_docs/groups_notes
- M /rt/branches/rt-3.3/docs/design_docs/link-definitions.txt
- M /rt/branches/rt-3.3/docs/design_docs/recursive_group_membership_algorithm
- M /rt/branches/rt-3.3/docs/design_docs/rql_parser_machine.graphviz
- M /rt/branches/rt-3.3/docs/design_docs/string-extraction-guide.txt
- M /rt/branches/rt-3.3/docs/design_docs/ticket_templates
- M /rt/branches/rt-3.3/docs/design_docs/users
- M /rt/branches/rt-3.3/docs/rt3-schema-relationships.dot
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
- M /rt/branches/rt-3.3/etc/RT_SiteConfig.pm
- M /rt/branches/rt-3.3/etc/acl.Informix
- M /rt/branches/rt-3.3/etc/acl.Oracle
- M /rt/branches/rt-3.3/etc/constraints.mysql
- M /rt/branches/rt-3.3/etc/drop.Informix
- M /rt/branches/rt-3.3/etc/drop.Oracle
- M /rt/branches/rt-3.3/etc/initialdata
- M /rt/branches/rt-3.3/etc/rt.spec
- M /rt/branches/rt-3.3/etc/schema.SQLite
- M /rt/branches/rt-3.3/html/Admin/Elements/AddCustomFieldValue
- M /rt/branches/rt-3.3/html/Admin/Elements/EditCustomField
- M /rt/branches/rt-3.3/html/Admin/Elements/EditCustomFieldValues
- M /rt/branches/rt-3.3/html/Admin/Elements/EditCustomFields
- M /rt/branches/rt-3.3/html/Admin/Elements/EditQueueWatchers
- M /rt/branches/rt-3.3/html/Admin/Elements/EditScrips
- M /rt/branches/rt-3.3/html/Admin/Elements/EditTemplates
- M /rt/branches/rt-3.3/html/Admin/Elements/ListGlobalCustomFields
- M /rt/branches/rt-3.3/html/Admin/Elements/QueueRightsForUser
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectCustomFieldType
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectGroups
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectModifyGroup
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectNewGroupMembers
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectRights
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectScripAction
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectScripCondition
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectSingleOrMultiple
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectUsers
- M /rt/branches/rt-3.3/html/Admin/Global/Scrip.html
- M /rt/branches/rt-3.3/html/Admin/Groups/GroupRights.html
- M /rt/branches/rt-3.3/html/Admin/Groups/Members.html
- M /rt/branches/rt-3.3/html/Admin/Groups/Modify.html
- M /rt/branches/rt-3.3/html/Admin/Groups/UserRights.html
- M /rt/branches/rt-3.3/html/Admin/Groups/index.html
- M /rt/branches/rt-3.3/html/Admin/Queues/CustomField.html
- M /rt/branches/rt-3.3/html/Admin/Queues/CustomFields.html
- M /rt/branches/rt-3.3/html/Admin/Queues/Scrip.html
- M /rt/branches/rt-3.3/html/Approvals/Display.html
- M /rt/branches/rt-3.3/html/Approvals/Elements/Approve
- M /rt/branches/rt-3.3/html/Approvals/Elements/PendingMyApproval
- M /rt/branches/rt-3.3/html/Approvals/Elements/ShowDependency
- M /rt/branches/rt-3.3/html/Approvals/Elements/Tabs
- M /rt/branches/rt-3.3/html/Approvals/index.html
- M /rt/branches/rt-3.3/html/Elements/BevelBoxRaisedEnd
- M /rt/branches/rt-3.3/html/Elements/BevelBoxRaisedStart
- M /rt/branches/rt-3.3/html/Elements/CreateTicket
- M /rt/branches/rt-3.3/html/Elements/GotoTicket
- M /rt/branches/rt-3.3/html/Elements/Menu
- M /rt/branches/rt-3.3/html/Elements/MyRequests
- M /rt/branches/rt-3.3/html/Elements/MyTickets
- M /rt/branches/rt-3.3/html/Elements/PageLayout
- M /rt/branches/rt-3.3/html/Elements/Quicksearch
- M /rt/branches/rt-3.3/html/Elements/Refresh
- M /rt/branches/rt-3.3/html/Elements/SelectAttachmentField
- M /rt/branches/rt-3.3/html/Elements/SelectCustomFieldOperator
- M /rt/branches/rt-3.3/html/Elements/SelectCustomFieldValue
- M /rt/branches/rt-3.3/html/Elements/SelectGroups
- M /rt/branches/rt-3.3/html/Elements/SelectLinkType
- M /rt/branches/rt-3.3/html/Elements/SelectMatch
- M /rt/branches/rt-3.3/html/Elements/SelectNewTicketQueue
- M /rt/branches/rt-3.3/html/Elements/SelectQueue
- M /rt/branches/rt-3.3/html/Elements/SelectResultsPerPage
- M /rt/branches/rt-3.3/html/Elements/SelectSortOrder
- M /rt/branches/rt-3.3/html/Elements/SelectTicketSortBy
- M /rt/branches/rt-3.3/html/Elements/SelectTicketTypes
- M /rt/branches/rt-3.3/html/Elements/ViewUser
- M /rt/branches/rt-3.3/html/NoAuth/images/back_home.gif
- M /rt/branches/rt-3.3/html/NoAuth/images/bplogo.gif
- M /rt/branches/rt-3.3/html/NoAuth/images/favicon.png
- M /rt/branches/rt-3.3/html/NoAuth/images/head_requestracker.gif
- M /rt/branches/rt-3.3/html/NoAuth/images/rt.jpg
- M /rt/branches/rt-3.3/html/NoAuth/images/space.gif
- M /rt/branches/rt-3.3/html/NoAuth/images/spacer.gif
- M /rt/branches/rt-3.3/html/NoAuth/images/squares_blue.gif
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/queue/default
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/queue/ns
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/links
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/user/default
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/user/ns
- M /rt/branches/rt-3.3/html/REST/1.0/NoAuth/mail-gateway
- M /rt/branches/rt-3.3/html/REST/1.0/logout
- M /rt/branches/rt-3.3/html/REST/1.0/search/dhandler
- M /rt/branches/rt-3.3/html/REST/1.0/ticket/comment
- M /rt/branches/rt-3.3/html/REST/1.0/ticket/link
- M /rt/branches/rt-3.3/html/REST/1.0/ticket/merge
- M /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- M /rt/branches/rt-3.3/html/Search/Elements/TicketRow
- M /rt/branches/rt-3.3/html/SelfService/Attachment/dhandler
- M /rt/branches/rt-3.3/html/SelfService/Closed.html
- M /rt/branches/rt-3.3/html/SelfService/Elements/Tabs
- M /rt/branches/rt-3.3/html/SelfService/index.html
- M /rt/branches/rt-3.3/html/Ticket/Create.html
- M /rt/branches/rt-3.3/html/Ticket/Display.html
- M /rt/branches/rt-3.3/html/Ticket/Elements/BulkLinks
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditCustomField
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditCustomFields
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowCustomFields
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowMessageHeaders
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowRequestor
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- M /rt/branches/rt-3.3/html/Ticket/ShowEmailRecord.html
- M /rt/branches/rt-3.3/html/Tools/Offline.html
- M /rt/branches/rt-3.3/html/User/Delegation.html
- M /rt/branches/rt-3.3/html/User/Elements/DelegateRights
- M /rt/branches/rt-3.3/html/User/Elements/GroupTabs
- M /rt/branches/rt-3.3/html/User/Elements/Tabs
- M /rt/branches/rt-3.3/html/User/Groups/Members.html
- M /rt/branches/rt-3.3/html/User/Groups/Modify.html
- M /rt/branches/rt-3.3/html/User/Groups/index.html
- M /rt/branches/rt-3.3/html/index.html
- M /rt/branches/rt-3.3/html/l
- M /rt/branches/rt-3.3/install-sh
- M /rt/branches/rt-3.3/lib/RT/ACE_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ACL_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Action/EscalatePriority.pm
- M /rt/branches/rt-3.3/lib/RT/Action/ResolveMembers.pm
- M /rt/branches/rt-3.3/lib/RT/Action/SendEmail.pm
- M /rt/branches/rt-3.3/lib/RT/Action/SetPriority.pm
- M /rt/branches/rt-3.3/lib/RT/Action/UserDefined.pm
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Attachments_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CachedGroupMember.pm
- M /rt/branches/rt-3.3/lib/RT/CachedGroupMember_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CachedGroupMembers.pm
- M /rt/branches/rt-3.3/lib/RT/CachedGroupMembers_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/AnyTransaction.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/BeforeDue.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/Overdue.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/PriorityExceeds.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/QueueChange.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/StatusChange.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/UserDefined.pm
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/CustomField.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFieldValue.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFieldValues.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFieldValues_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFields.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Date.pm
- M /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- M /rt/branches/rt-3.3/lib/RT/GroupMember_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/GroupMembers_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Group_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Groups_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Handle.pm
- M /rt/branches/rt-3.3/lib/RT/I18N/cs.pm
- M /rt/branches/rt-3.3/lib/RT/I18N/cs.po
- M /rt/branches/rt-3.3/lib/RT/I18N/de.po
- M /rt/branches/rt-3.3/lib/RT/I18N/en.po
- M /rt/branches/rt-3.3/lib/RT/I18N/es.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- M /rt/branches/rt-3.3/lib/RT/I18N/he.po
- M /rt/branches/rt-3.3/lib/RT/I18N/i_default.pm
- M /rt/branches/rt-3.3/lib/RT/I18N/it.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ja.po
- M /rt/branches/rt-3.3/lib/RT/I18N/nl.po
- M /rt/branches/rt-3.3/lib/RT/I18N/no.po
- M /rt/branches/rt-3.3/lib/RT/I18N/pt_br.po
- M /rt/branches/rt-3.3/lib/RT/I18N/ru.po
- M /rt/branches/rt-3.3/lib/RT/Interface/CLI.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Email.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/REST.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Link.pm
- M /rt/branches/rt-3.3/lib/RT/Link_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Links.pm
- M /rt/branches/rt-3.3/lib/RT/Links_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Principal.pm
- M /rt/branches/rt-3.3/lib/RT/Principal_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Principals.pm
- M /rt/branches/rt-3.3/lib/RT/Principals_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Queues_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ScripAction_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ScripActions_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ScripCondition_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ScripConditions_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Scrip_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Search/ActiveTicketsInQueue.pm
- M /rt/branches/rt-3.3/lib/RT/Search/Generic.pm
- M /rt/branches/rt-3.3/lib/RT/System.pm
- M /rt/branches/rt-3.3/lib/RT/Template_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Templates_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValue.pm
- M /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValues.pm
- M /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValues_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/rt-3.3/lib/RT/Transactions_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/URI/base.pm
- M /rt/branches/rt-3.3/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT.pm.in
- M /rt/branches/rt-3.3/lib/t/00smoke.t.in
- M /rt/branches/rt-3.3/lib/t/01harness.t.in
- M /rt/branches/rt-3.3/lib/t/02regression.t.in
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/dir
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg1
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg2
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg3
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg4
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg5
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg6
- M /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg7
- M /rt/branches/rt-3.3/lib/t/data/multipart-alternative-with-umlaut
- M /rt/branches/rt-3.3/lib/t/data/multipart-report
- M /rt/branches/rt-3.3/lib/t/data/nested-mime-sample
- M /rt/branches/rt-3.3/lib/t/data/nested-rfc-822
- M /rt/branches/rt-3.3/lib/t/data/new-ticket-from-iso-8859-1
- M /rt/branches/rt-3.3/lib/t/data/new-ticket-from-iso-8859-1-full
- M /rt/branches/rt-3.3/lib/t/data/russian-subject-no-content-type
- M /rt/branches/rt-3.3/lib/t/data/text-html-in-russian
- M /rt/branches/rt-3.3/lib/t/data/text-html-with-umlaut
- M /rt/branches/rt-3.3/lib/t/regression/00placeholder
- M /rt/branches/rt-3.3/lib/t/regression/mime_tests
- M /rt/branches/rt-3.3/m4/rt_enable_layout.m4
- M /rt/branches/rt-3.3/m4/rt_expand_var.m4
- M /rt/branches/rt-3.3/m4/rt_layout.m4
- M /rt/branches/rt-3.3/m4/rt_subst_expanded_arg.m4
- M /rt/branches/rt-3.3/sbin/extract-message-catalog
- M /rt/branches/rt-3.3/sbin/extract_pod_tests
- M /rt/branches/rt-3.3/sbin/factory
- M /rt/branches/rt-3.3/sbin/regression_harness
- M /rt/branches/rt-3.3/sbin/rt-setup-database.in
- M /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
-
- r1484@tinbook: jesse | 2004-05-07T00:31:24.624807Z
-
- Merging forward from 3.1
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r843 | autrijus | 2004-05-06 04:13:18 -0400 (Thu, 06 May 2004) | 10 lines
-Changed paths:
- M /rt
- D /rt/branches/rt-3.3/docs/design_docs/atom-api.txt
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
-
- ----------------------------------------------------------------------
- r4415@not: autrijus | 2004-05-03T06:42:06.584504Z
-
- * move atom-api.txt to RTx::Atom space.
- ----------------------------------------------------------------------
- r4510@not: autrijus | 2004-05-06T07:44:35.710915Z
-
- * stub undef CustomField->QueueObj to make BuildFormatString happy.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r833 | jesse | 2004-05-05 14:18:03 -0400 (Wed, 05 May 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3
-
-A new merge ticket
-
-------------------------------------------------------------------------
-r810 | autrijus | 2004-05-02 21:00:48 -0400 (Sun, 02 May 2004) | 8 lines
-Changed paths:
- M /rt
- D /rt/branches/rt-3.3/html/REST/2.0
-
- ----------------------------------------------------------------------
- r4394@not: autrijus | 2004-05-03T01:00:51.890023Z
-
- * 301 Moved Permanently
- * Location: /RTx-Atom/html/Atom/0.3
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r808 | autrijus | 2004-05-02 20:21:29 -0400 (Sun, 02 May 2004) | 15 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/docs/design_docs/atom-api.txt
- A /rt/branches/rt-3.3/html/REST/2.0/Add
- A /rt/branches/rt-3.3/html/REST/2.0/Add/index
- D /rt/branches/rt-3.3/html/REST/2.0/Create
- D /rt/branches/rt-3.3/html/REST/2.0/Delete
- A /rt/branches/rt-3.3/html/REST/2.0/Remove
- A /rt/branches/rt-3.3/html/REST/2.0/Remove/index
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/Date.pm
-
- ----------------------------------------------------------------------
- r4385@not: autrijus | 2004-05-02T21:16:04.349680Z
-
- * Correct POD for W3CDTF
- ----------------------------------------------------------------------
- r4388@not: autrijus | 2004-05-03T00:17:22.934822Z
-
- * massive redesign based on discussion with obra.
- ----------------------------------------------------------------------
- r4389@not: autrijus | 2004-05-03T00:21:25.960300Z
-
- * Rename "Create" to "Add"; "Delete" to "Remove".
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r805 | autrijus | 2004-05-02 14:03:32 -0400 (Sun, 02 May 2004) | 10 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/docs/design_docs/atom-api.txt
- A /rt/branches/rt-3.3/html/REST/2.0/Create/index
- A /rt/branches/rt-3.3/html/REST/2.0/Delete/index
- A /rt/branches/rt-3.3/html/REST/2.0/Describe
- A /rt/branches/rt-3.3/html/REST/2.0/Describe/index
- M /rt/branches/rt-3.3/html/REST/2.0/Elements/Link
- A /rt/branches/rt-3.3/html/REST/2.0/Get/index
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
- A /rt/branches/rt-3.3/html/REST/2.0/Put
- A /rt/branches/rt-3.3/html/REST/2.0/Put/index
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
- A /rt/branches/rt-3.3/html/REST/2.0/Update/index
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/html/REST/2.0/index
-
- ----------------------------------------------------------------------
- r4382@not: autrijus | 2004-05-02T18:02:39.870947Z
-
- * Describes RT/REST 2.0, Atom-compatible API.
- ----------------------------------------------------------------------
- r4383@not: autrijus | 2004-05-02T18:03:08.473736Z
-
- * Put stubs to all the unimplemented verbs.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r804 | autrijus | 2004-05-02 11:58:17 -0400 (Sun, 02 May 2004) | 14 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/html/REST/2.0/Elements/Error
- A /rt/branches/rt-3.3/html/REST/2.0/Elements/Introspect
- D /rt/branches/rt-3.3/html/REST/2.0/Error
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/html/REST/2.0/index
-
- ----------------------------------------------------------------------
- r4379@not: autrijus | 2004-05-02T15:26:00.873038Z
-
- * Do content negotiation with the browser and fallback on text/xml.
- * Clean up namespaces a little.
- ----------------------------------------------------------------------
- r4380@not: autrijus | 2004-05-02T15:58:03.262688Z
-
- * Move Error/index to Elements/Error since Error is not a verb.
- * Refactor the Introspect part away to Elements/.
- * Correctly redirects /Templates/ and /template/ to /templates/.
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r802 | autrijus | 2004-05-02 09:14:02 -0400 (Sun, 02 May 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Elements/Link
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/index.css
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
-
- ----------------------------------------------------------------------
- r4375@not: autrijus | 2004-05-02T13:13:38.884936Z
-
- * use ->URI correctly.
- * use <a xmlns="...html..."> so things can correct render in nongecko browsers.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r801 | autrijus | 2004-05-01 19:14:04 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/index
-
- ----------------------------------------------------------------------
- r4365@not: autrijus | 2004-05-01T23:14:05.342098Z
-
- * Cross-introspection logic to eliminate subordinate classes from main index.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r800 | autrijus | 2004-05-01 17:39:50 -0400 (Sat, 01 May 2004) | 8 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Elements/Link
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
- A /rt/branches/rt-3.3/html/REST/2.0/NoAuth/index.css
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
- M /rt/branches/rt-3.3/html/REST/2.0/autohandler
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/html/REST/2.0/index
-
- ----------------------------------------------------------------------
- r4363@not: autrijus | 2004-05-01T21:39:51.608519Z
-
- * Index page implemented using multiple "Feed" services.
- * Lots of cute, little icons placed with CSS.
- * Much better preparation for autodiscovery; PostURI is now handled with "/type.new".
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r799 | autrijus | 2004-05-01 14:54:56 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
-
- ----------------------------------------------------------------------
- r4361@not: autrijus | 2004-05-01T18:55:05.234036Z
-
- * Even more CSS tricks.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r798 | autrijus | 2004-05-01 14:49:18 -0400 (Sat, 01 May 2004) | 14 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Admin/Elements/Header
- M /rt/branches/rt-3.3/html/Admin/Global/Templates.html
- M /rt/branches/rt-3.3/html/Elements/Header
- M /rt/branches/rt-3.3/html/Elements/TicketList
- A /rt/branches/rt-3.3/html/REST/2.0/Elements
- A /rt/branches/rt-3.3/html/REST/2.0/Elements/Link
- M /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
- M /rt/branches/rt-3.3/html/REST/2.0/autohandler
-
- ----------------------------------------------------------------------
- r4357@not: autrijus | 2004-05-01T18:47:10.055533Z
-
- * Various CSS tricks.
- ----------------------------------------------------------------------
- r4358@not: autrijus | 2004-05-01T18:47:49.553353Z
-
- * Fixed an off-by-one error in ticket listing.
- ----------------------------------------------------------------------
- r4359@not: autrijus | 2004-05-01T18:48:06.789268Z
-
- * support for Atom autodiscovery.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r797 | autrijus | 2004-05-01 12:11:01 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Error/index
-
- ----------------------------------------------------------------------
- r4353@not: autrijus | 2004-05-01T16:11:10.795277Z
-
- * finally Error works for all three supported carriers.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r796 | autrijus | 2004-05-01 12:07:33 -0400 (Sat, 01 May 2004) | 17 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/bin/standalone_httpd.in
- M /rt/branches/rt-3.3/html/REST/2.0/Error/index
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
-
- ----------------------------------------------------------------------
- r4349@not: autrijus | 2004-05-01T15:36:00.221832Z
-
- * Properly clean up leftover HTTP_* environment variables.
- * Pass authorization header to Mason.
- * Send out correct HTTP status code instead of blindly assuming 200.
- ----------------------------------------------------------------------
- r4350@not: autrijus | 2004-05-01T15:59:39.046584Z
-
- * RT::Date->new also takes currentuser.
- ----------------------------------------------------------------------
- r4351@not: autrijus | 2004-05-01T16:00:38.530367Z
-
- * Correctly handle nonce disposal.
- * $m->abort is needed for mod_perl2.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r795 | autrijus | 2004-05-01 09:58:07 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
-
- ----------------------------------------------------------------------
- r4347@not: autrijus | 2004-05-01T13:58:14.427055Z
-
- * it's Queues, not Queue
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r794 | autrijus | 2004-05-01 09:55:57 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
-
- ----------------------------------------------------------------------
- r4345@not: autrijus | 2004-05-01T13:56:03.778530Z
-
- * use absolute URIs, not relative ones, per the Atom spec
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r793 | autrijus | 2004-05-01 09:51:25 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
-
- ----------------------------------------------------------------------
- r4343@not: autrijus | 2004-05-01T13:51:31.406464Z
-
- * link semantics now agrees with AtomAPI.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r792 | autrijus | 2004-05-01 09:35:28 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Search/index
-
- ----------------------------------------------------------------------
- r4341@not: autrijus | 2004-05-01T13:35:35.544895Z
-
- * Make <id> slightly more unique
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r791 | autrijus | 2004-05-01 09:33:03 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/Error/index
- M /rt/branches/rt-3.3/html/REST/2.0/autohandler
-
- ----------------------------------------------------------------------
- r4339@not: autrijus | 2004-05-01T13:32:59.502832Z
-
- * adapt for FastCGI's needs
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r790 | autrijus | 2004-05-01 09:22:21 -0400 (Sat, 01 May 2004) | 9 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/html/REST/2.0/Auth
- A /rt/branches/rt-3.3/html/REST/2.0/Create
- A /rt/branches/rt-3.3/html/REST/2.0/Delete
- A /rt/branches/rt-3.3/html/REST/2.0/Error
- A /rt/branches/rt-3.3/html/REST/2.0/Error/index
- A /rt/branches/rt-3.3/html/REST/2.0/Get
- A /rt/branches/rt-3.3/html/REST/2.0/Search
- A /rt/branches/rt-3.3/html/REST/2.0/Search/index
- A /rt/branches/rt-3.3/html/REST/2.0/Update
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- A /rt/branches/rt-3.3/html/REST/2.0/index
-
- ----------------------------------------------------------------------
- r4335@not: autrijus | 2004-05-01T13:20:56.570615Z
-
- * Establish directory layout.
- * Error handling.
- * Refactor out the 'Search' verb.
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r788 | autrijus | 2004-05-01 07:44:58 -0400 (Sat, 01 May 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
-
- ----------------------------------------------------------------------
- r4331@not: autrijus | 2004-05-01T11:44:31.355329Z
-
- * do not offer WSSE auth to non-atom clients, and vice versa,
- to avoid spurious auth warnings.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r785 | autrijus | 2004-05-01 07:16:25 -0400 (Sat, 01 May 2004) | 10 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/lib/RT/Date.pm
-
- ----------------------------------------------------------------------
- r4323@not: autrijus | 2004-05-01T11:14:28.377660Z
-
- * implement ->W3CDTF.
- ----------------------------------------------------------------------
- r4324@not: autrijus | 2004-05-01T11:16:31.456041Z
-
- * we are now a valid Atom feed.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r784 | autrijus | 2004-05-01 06:52:15 -0400 (Sat, 01 May 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
-
- ----------------------------------------------------------------------
- r4321@not: autrijus | 2004-05-01T10:52:23.225100Z
-
- * add fastcgi support.
- * make proper use of X-WSSE header instead of demanding Authorization
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r783 | autrijus | 2004-05-01 06:50:30 -0400 (Sat, 01 May 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/I18N.pm
-
- ----------------------------------------------------------------------
- r4319@not: autrijus | 2004-05-01T10:50:15.580296Z
-
- * glob local/*.po too for consistency and intuitiveness.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r782 | autrijus | 2004-05-01 06:35:23 -0400 (Sat, 01 May 2004) | 8 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/html/REST/2.0/NoAuth
- A /rt/branches/rt-3.3/html/REST/2.0/NoAuth/feed.css
- M /rt/branches/rt-3.3/html/REST/2.0/autohandler
- M /rt/branches/rt-3.3/html/REST/2.0/dhandler
-
- ----------------------------------------------------------------------
- r4317@not: autrijus | 2004-05-01T10:35:00.584748Z
-
- * now does Basic and Digest authentication, too.
- * CSSify the example feed
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r781 | autrijus | 2004-04-30 23:24:12 -0400 (Fri, 30 Apr 2004) | 7 lines
-Changed paths:
- M /rt
- A /rt/branches/rt-3.3/html/REST/2.0
- A /rt/branches/rt-3.3/html/REST/2.0/autohandler
- A /rt/branches/rt-3.3/html/REST/2.0/dhandler
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
-
- ----------------------------------------------------------------------
- r4309@not: autrijus | 2004-05-01T03:22:53.730384Z
-
- * initial commit of RT/REST 2.0 API and WSSE authentication.
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r766 | jesse | 2004-04-28 14:26:02 -0400 (Wed, 28 Apr 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/upgrade
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/acl.Informix
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/acl.Oracle
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/acl.Pg
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/acl.SQLite
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/acl.mysql
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/schema.Pg
- A /rt/branches/rt-3.3/etc/upgrade/3.3.0/schema.mysql
-
- ----------------------------------------------------------------------
- r2206@tinbook: jesse | 2004-04-28T18:24:56.988760Z
-
- Added the beginnings of upgrade 3.1->3.3 functionality. has not yet been tested
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r763 | autrijus | 2004-04-28 02:05:14 -0400 (Wed, 28 Apr 2004) | 8 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/Base.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
-
- ----------------------------------------------------------------------
- r4223@not: autrijus | 2004-04-28T06:00:27.794797Z
-
- * correctly put loc_fuzzy in Base.
- * do not double-encode EscapeUTF8 for Mason. this resolves the weird
- standalong-httpd bug.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r761 | jesse | 2004-04-27 23:16:35 -0400 (Tue, 27 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/schema.Pg
-
-Updating schema for 3.3 to use 'integer' on postgres rather than int2 on Andrew Sullivan's recommendation
-
-------------------------------------------------------------------------
-r758 | autrijus | 2004-04-27 16:12:38 -0400 (Tue, 27 Apr 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Elements/Footer
-
- ----------------------------------------------------------------------
- r4214@not: autrijus | 2004-04-27T20:12:39.658238Z
-
- * rework Footer l10n into one line so not to confuse the old string extractor
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r757 | autrijus | 2004-04-27 16:09:45 -0400 (Tue, 27 Apr 2004) | 6 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
-
- ----------------------------------------------------------------------
- r4211@not: autrijus | 2004-04-27T19:55:32.087502Z
-
- * Chinese translations.
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r756 | autrijus | 2004-04-27 04:46:57 -0400 (Tue, 27 Apr 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/README
-
- ----------------------------------------------------------------------
- r4195@not: autrijus | 2004-04-27T08:46:36.958817Z
-
- * now mod_perl2 only needs one line of extra setup.
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r746 | autrijus | 2004-04-26 15:11:33 -0400 (Mon, 26 Apr 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.1/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
-
- ----------------------------------------------------------------------
- r4176@not: autrijus | 2004-04-26T19:09:53.594445Z
-
- * switch password format from base64 to hex; maintaining legacy
- compatibility by upgrading passwords in-place upon successful auth
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r745 | autrijus | 2004-04-26 15:02:48 -0400 (Mon, 26 Apr 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/SearchBuilder.pm
-
- ----------------------------------------------------------------------
- r4171@not: autrijus | 2004-04-26T18:59:54.608186Z
-
- * correct EMPTY and NULL support for $Tickets->LimitAttribute().
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r744 | autrijus | 2004-04-26 15:01:49 -0400 (Mon, 26 Apr 2004) | 8 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Template_Overlay.pm
-
- ----------------------------------------------------------------------
- r4170@not: autrijus | 2004-04-26T18:56:10.826541Z
-
- * Do not crash the application when Template parsing failed; instead
- capture the error and handle it with $RT::Logger->error().
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r743 | autrijus | 2004-04-26 15:01:05 -0400 (Mon, 26 Apr 2004) | 8 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
-
- ----------------------------------------------------------------------
- r4169@not: autrijus | 2004-04-26T18:52:39.442581Z
-
- * allow subkeys limit like $Tickets->Limit( FIELD => 'Requestor.Id' );
- previously it was only available from "CF.*" keys.
-
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r741 | autrijus | 2004-04-26 14:48:52 -0400 (Mon, 26 Apr 2004) | 3 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
-
-* freeze() forgot to take account of the look_at_* indices, resulting
- in incorrect object after thaw()ing
-
-------------------------------------------------------------------------
-r733 | autrijus | 2004-04-23 15:09:40 -0400 (Fri, 23 Apr 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/Groups_Overlay.pm
-
- r4083@not: autrijus | 2004-04-23T19:08:59.061919Z
-
- * ENTRY_AGGREGATOR is a misspelling (for ENTRYAGGREGATOR), and it
- defaults to OR anyway, so simply eliminate this bogus parameter.
-
-------------------------------------------------------------------------
-r722 | autrijus | 2004-04-21 18:32:19 -0400 (Wed, 21 Apr 2004) | 10 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.1/lib/RT/SearchBuilder.pm
- M /rt/branches/rt-3.3/lib/RT/SearchBuilder.pm
-
- r4037@not: autrijus | 2004-04-21T22:30:37.269510Z
-
- * It turns out that for EMPTY => 1 to work, IS NULL needs to be OR'ed
- to the other columns as well...
-
- ----------------------------------------------------------------------
- r4038@not: autrijus | 2004-04-21T22:31:56.271421Z
-
- * merge previous commit from 3.3 to 3.1.
-
-------------------------------------------------------------------------
-r719 | autrijus | 2004-04-21 14:59:55 -0400 (Wed, 21 Apr 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/SearchBuilder.pm
-
- r4027@not: autrijus | 2004-04-21T18:59:19.548165Z
-
- * LimitAttribute( EMPTY => 1 ) is much more correctly handled with a IS NULL.
-
-------------------------------------------------------------------------
-r717 | jesse | 2004-04-21 01:25:01 -0400 (Wed, 21 Apr 2004) | 6 lines
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
- M /rt/branches/rt-3.3/etc/schema.mysql
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/acl.Informix
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/acl.Oracle
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/acl.Pg
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/acl.SQLite
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/acl.mysql
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/content
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.Informix
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.Oracle
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.Pg
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.SQLite
- A /rt/branches/rt-3.3/etc/upgrade/3.1.0/schema.mysql
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectNewGroupMembers
- A /rt/branches/rt-3.3/html/Admin/Elements/ToolTabs
- A /rt/branches/rt-3.3/html/Admin/Tools
- A /rt/branches/rt-3.3/html/Admin/Tools/Configuration.html
- A /rt/branches/rt-3.3/html/Admin/Tools/index.html
- A /rt/branches/rt-3.3/html/Elements/QueryString
- A /rt/branches/rt-3.3/html/Elements/ScrubHTML
- M /rt/branches/rt-3.3/html/Elements/Tabs
- M /rt/branches/rt-3.3/html/Elements/TicketList
- M /rt/branches/rt-3.3/html/NoAuth/webrt.css
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/default
- M /rt/branches/rt-3.3/html/Scope/Search.html
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Edit.html
- M /rt/branches/rt-3.3/html/Search/Elements/BuildFormatString
- M /rt/branches/rt-3.3/html/Search/Elements/DisplayOptions
- M /rt/branches/rt-3.3/html/Search/Elements/EditFormat
- M /rt/branches/rt-3.3/html/Search/Elements/EditSearches
- M /rt/branches/rt-3.3/html/Search/Results.html
- M /rt/branches/rt-3.3/html/Search/Results.rdf
- M /rt/branches/rt-3.3/html/Search/Results.tsv
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowRequestor
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransactionAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- A /rt/branches/rt-3.3/html/Ticket/ShowEmailRecord.html
- M /rt/branches/rt-3.3/html/Ticket/Update.html
- A /rt/branches/rt-3.3/html/Tools/Elements
- A /rt/branches/rt-3.3/html/Tools/Elements/Tabs
- A /rt/branches/rt-3.3/html/Tools/Offline.html
- M /rt/branches/rt-3.3/html/autohandler
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Group_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/I18N.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Users_Overlay.pm
- M /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
-
- ----------------------------------------------------------------------
- r2113@tinbook: jesse | 2004-04-21T05:24:17.573962Z
-
- Remerging from RT 3.1.x
- ----------------------------------------------------------------------
-
-------------------------------------------------------------------------
-r714 | autrijus | 2004-04-20 23:49:45 -0400 (Tue, 20 Apr 2004) | 7 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldImage
- A /rt/branches/rt-3.3/html/Elements/ShowCustomFieldImage
- M /rt/branches/rt-3.3/html/Elements/ShowCustomFields
-
-r4005@not: autrijus | 2004-04-21T03:49:17.533641Z
-
-RT-Ticket: 5365
-RT-Status: resolved
-
-Make image display inline on ticket info screen.
-
-------------------------------------------------------------------------
-r712 | leira | 2004-04-20 22:49:09 -0400 (Tue, 20 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/Groups/index.html
- M /rt/branches/rt-3.3/html/Admin/Users/index.html
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldImage
-
-fix WebPath urls
-
-------------------------------------------------------------------------
-r711 | leira | 2004-04-20 22:43:57 -0400 (Tue, 20 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/Groups/index.html
- M /rt/branches/rt-3.3/html/Admin/Users/index.html
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldBinary
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldImage
-
-Dowload links need the WebPath.
-
-------------------------------------------------------------------------
-r710 | leira | 2004-04-20 22:37:34 -0400 (Tue, 20 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValue_Overlay.pm
-
-decode_utf8, not decode_utf_8
-
-------------------------------------------------------------------------
-r709 | leira | 2004-04-20 22:16:04 -0400 (Tue, 20 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValue_Overlay.pm
-
-"decode_utf_8", not "decode_utf 8"
-
-------------------------------------------------------------------------
-r708 | leira | 2004-04-20 22:15:39 -0400 (Tue, 20 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
-
-CFs are no longer attached to queues.
-
-------------------------------------------------------------------------
-r707 | jesse | 2004-04-20 21:21:11 -0400 (Tue, 20 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
-
-Adding support for encoding LOBs for the new custom field behaviour
-------------------------------------------------------------------------
-r703 | jesse | 2004-04-19 22:26:50 -0400 (Mon, 19 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/etc/schema.Pg
- M /rt/branches/rt-3.3/html/Ticket/Elements/FindAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
-
-"Another pass at trying to fix the schema"
-------------------------------------------------------------------------
-r702 | jesse | 2004-04-19 22:12:32 -0400 (Mon, 19 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/acl.Pg
- M /rt/branches/rt-3.3/etc/schema.Pg
-
-Fixing conflicts from fixing the same bugs as linda.
-
-------------------------------------------------------------------------
-r701 | leira | 2004-04-19 14:35:01 -0400 (Mon, 19 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/acl.Pg
-
-One more acl fix.
-
-------------------------------------------------------------------------
-r700 | leira | 2004-04-19 14:16:08 -0400 (Mon, 19 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/etc/acl.Pg
- M /rt/branches/rt-3.3/etc/schema.Pg
-
-Schema & acl fixes for Postgres.
-
-------------------------------------------------------------------------
-r695 | autrijus | 2004-04-16 15:33:06 -0400 (Fri, 16 Apr 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldSelect
-
-r3928@not: autrijus | 2004-04-16T19:32:35.970968Z
-
-Fix select CF display bug as reported by leira
-
-------------------------------------------------------------------------
-r685 | autrijus | 2004-04-14 05:29:23 -0400 (Wed, 14 Apr 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldBinary
-
-r3851@not: autrijus | 2004-04-14T09:27:57.550568Z
-
-* make EditCustomFieldBinary's condition style agree with other
- elements -- also avoids comparing an uninitialized value.
-
-------------------------------------------------------------------------
-r682 | leira | 2004-04-12 02:07:01 -0400 (Mon, 12 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/Groups/Modify.html
- M /rt/branches/rt-3.3/html/Admin/Users/Modify.html
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldBinary
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldImage
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldSelect
- M /rt/branches/rt-3.3/html/Elements/EditCustomFieldText
- M /rt/branches/rt-3.3/html/Search/Elements/SelectPersonType
- M /rt/branches/rt-3.3/html/Ticket/Elements/EditCustomFields
- M /rt/branches/rt-3.3/html/Ticket/Modify.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyAll.html
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CustomFields_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValues_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
-
-Fixes from autrijus.
-
-------------------------------------------------------------------------
-r665 | jesse | 2004-04-02 16:54:23 -0500 (Fri, 02 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/Elements/PickObjects
-
-Allowing the custom field admin screens to add custom fields to all users
-------------------------------------------------------------------------
-r664 | jesse | 2004-04-02 16:39:27 -0500 (Fri, 02 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
-
-Pulling forward relationships fixes from 3.1; updating a transaction-related assertion for 3.3
-------------------------------------------------------------------------
-r662 | jesse | 2004-04-02 10:54:22 -0500 (Fri, 02 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/etc/acl.Pg
- M /rt/branches/rt-3.3/html/Admin/Elements/ModifyQueue
- M /rt/branches/rt-3.3/html/Admin/Queues/Modify.html
- A /rt/branches/rt-3.3/html/Elements/EditLinks
- M /rt/branches/rt-3.3/html/Elements/MessageBox
- M /rt/branches/rt-3.3/html/Elements/SelectMatch
- A /rt/branches/rt-3.3/html/Elements/ShowLink
- A /rt/branches/rt-3.3/html/Elements/ShowLinks
- M /rt/branches/rt-3.3/html/Scope/Elements/ShowSummary
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Bulk.html
- M /rt/branches/rt-3.3/html/Search/Elements/SelectPersonType
- M /rt/branches/rt-3.3/html/SelfService/Display.html
- M /rt/branches/rt-3.3/html/Ticket/Create.html
- M /rt/branches/rt-3.3/html/Ticket/Display.html
- A /rt/branches/rt-3.3/html/Ticket/Elements/LoadTextAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowSummary
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- M /rt/branches/rt-3.3/html/Ticket/History.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyAll.html
- M /rt/branches/rt-3.3/html/Ticket/ModifyLinks.html
- M /rt/branches/rt-3.3/html/Ticket/Update.html
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Action/SendEmail.pm
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Attribute_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- A /rt/branches/rt-3.3/lib/RT/I18N/da.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- A /rt/branches/rt-3.3/lib/RT/I18N/hu.po
- M /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
-
-Took a hand-merging pass at 3.1->3.3 after autrijus manual baseless merge.
-------------------------------------------------------------------------
-r661 | autrijus | 2004-04-02 08:57:08 -0500 (Fri, 02 Apr 2004) | 3 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
-
-* put Ticket_Overlay back to where it was.
-
-
-------------------------------------------------------------------------
-r660 | autrijus | 2004-04-02 08:43:44 -0500 (Fri, 02 Apr 2004) | 1 line
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3
- M /rt/branches/rt-3.3/Makefile.in
- A /rt/branches/rt-3.3/README.Oracle
- M /rt/branches/rt-3.3/UPGRADING
- M /rt/branches/rt-3.3/bin/mason_handler.fcgi.in
- M /rt/branches/rt-3.3/bin/mason_handler.scgi.in
- M /rt/branches/rt-3.3/bin/rt-crontool.in
- M /rt/branches/rt-3.3/bin/rt-mailgate.in
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/config.layout
- M /rt/branches/rt-3.3/configure.ac
- M /rt/branches/rt-3.3/etc/initialdata
- M /rt/branches/rt-3.3/etc/schema.Informix
- M /rt/branches/rt-3.3/etc/schema.Oracle
- M /rt/branches/rt-3.3/etc/schema.SQLite
- A /rt/branches/rt-3.3/etc/upgrade/3.1.15
- A /rt/branches/rt-3.3/etc/upgrade/3.1.15/content
- M /rt/branches/rt-3.3/html/Admin/Elements/EditScrip
- M /rt/branches/rt-3.3/html/Admin/Elements/SelectStage
- M /rt/branches/rt-3.3/html/Elements/Callback
- M /rt/branches/rt-3.3/html/Elements/MessageBox
- M /rt/branches/rt-3.3/html/Elements/SelectLang
- M /rt/branches/rt-3.3/html/Elements/SelectMatch
- M /rt/branches/rt-3.3/html/Elements/SelectWatcherType
- M /rt/branches/rt-3.3/html/Elements/SetupSessionCookie
- M /rt/branches/rt-3.3/html/Elements/SimpleSearch
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/default
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/history
- M /rt/branches/rt-3.3/html/REST/1.0/autohandler
- M /rt/branches/rt-3.3/html/REST/1.0/dhandler
- M /rt/branches/rt-3.3/html/REST/1.0/search/ticket
- M /rt/branches/rt-3.3/html/Scope/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Scope/Elements/ShowTransaction
- M /rt/branches/rt-3.3/html/Search/Elements/PickRestriction
- M /rt/branches/rt-3.3/html/SelfService/Elements/MyRequests
- M /rt/branches/rt-3.3/html/Ticket/Attachment/dhandler
- M /rt/branches/rt-3.3/html/Ticket/Display.html
- M /rt/branches/rt-3.3/html/Ticket/Elements/FindAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowMessageStanza
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowRequestor
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- M /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- M /rt/branches/rt-3.3/html/index.html
- M /rt/branches/rt-3.3/lib/RT/Action/AutoOpen.pm
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Attachments_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Base.pm
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- M /rt/branches/rt-3.3/lib/RT/Group_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Handle.pm
- M /rt/branches/rt-3.3/lib/RT/I18N/fi.po
- M /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- M /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
- M /rt/branches/rt-3.3/lib/RT/I18N.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth/MailFrom.pm
- M /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- M /rt/branches/rt-3.3/lib/RT/Principal_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/StyleGuide.pod
- M /rt/branches/rt-3.3/lib/RT/Template_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Tickets_Overlay_SQL.pm
- M /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Transactions_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/URI.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Users_Overlay.pm
- M /rt/branches/rt-3.3/lib/t/03web.pl.in
- M /rt/branches/rt-3.3/lib/t/04_send_email.pl.in
- M /rt/branches/rt-3.3/sbin/license_tag
- M /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
-
-MERGE: 3.1 to 3.3
-------------------------------------------------------------------------
-r659 | jesse | 2004-04-01 21:23:57 -0500 (Thu, 01 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/releng.cnf
-
-Updated releng.cnf
-------------------------------------------------------------------------
-r656 | jesse | 2004-04-01 16:54:22 -0500 (Thu, 01 Apr 2004) | 2 lines
-Changed paths:
- M /rt/branches/rt-3.3/html/Admin/CustomFields/Objects.html
- M /rt/branches/rt-3.3/html/Admin/CustomFields/index.html
- M /rt/branches/rt-3.3/html/Admin/Elements/EditCustomFields
- M /rt/branches/rt-3.3/html/Admin/Elements/PickCustomFields
- M /rt/branches/rt-3.3/html/Admin/Elements/PickObjects
- M /rt/branches/rt-3.3/html/Admin/Elements/QueueTabs
-
-UI updates to remove unneeded options and clarify some language
-
-------------------------------------------------------------------------
-r655 | jesse | 2004-04-01 16:53:29 -0500 (Thu, 01 Apr 2004) | 3 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
-
-Updated how RT generates friendly name for which object a Custom Field applies to
-
-
-------------------------------------------------------------------------
-r654 | jesse | 2004-04-01 16:52:31 -0500 (Thu, 01 Apr 2004) | 1 line
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/Transactions_Overlay.pm
-
-Added support for RT 3.0 compatible Transactions->Limit
-------------------------------------------------------------------------
-r653 | autrijus | 2004-04-01 11:37:33 -0500 (Thu, 01 Apr 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/html/Admin/Elements/QueueTabs
-
-r3597@not: autrijus | 2004-04-01T16:36:37.019460Z
-
-* put global Cf editing back.
-
-------------------------------------------------------------------------
-r648 | autrijus | 2004-03-31 11:12:04 -0500 (Wed, 31 Mar 2004) | 4 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/I18N.pm
-
-r3556@not: autrijus | 2004-03-31T16:11:11.225511Z
-
-* lexicon path may contain spaces, esp. on win32.
-
-------------------------------------------------------------------------
-r645 | autrijus | 2004-03-31 01:20:10 -0500 (Wed, 31 Mar 2004) | 5 lines
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/etc/schema.Informix
- M /rt/branches/rt-3.3/etc/schema.Oracle
- M /rt/branches/rt-3.3/etc/schema.Pg
- M /rt/branches/rt-3.3/etc/schema.SQLite
- M /rt/branches/rt-3.3/etc/schema.mysql
-
-r3541@not: autrijus | 2004-03-31T06:19:36.740253Z
-
-* port mysql schema to Pg.
-* other database are partially ported -- OCF and OCFV currently not there
-
-------------------------------------------------------------------------
-r643 | autrijus | 2004-03-31 00:16:07 -0500 (Wed, 31 Mar 2004) | 1 line
-Changed paths:
- M /rt
- M /rt/branches/rt-3.3/lib/RT/CustomFields_Overlay.pm
-
-hint to self: don't refactor when you're tired.
-------------------------------------------------------------------------
-r612 | autrijus | 2004-03-22 13:46:04 -0500 (Mon, 22 Mar 2004) | 2 lines
-Changed paths:
- D /rt/branches/rt-3.3/html/Admin/Global/CustomField.html
- D /rt/branches/rt-3.3/html/Admin/Global/CustomFields.html
-
-* remove unused "Global" CF admin pages.
-
-------------------------------------------------------------------------
-r611 | autrijus | 2004-03-20 10:40:58 -0500 (Sat, 20 Mar 2004) | 7 lines
-Changed paths:
- M /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- M /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
-
-* merge Jesse's $RT::SystemUser->LanguageHandle fix; corrected a
- bug caused by it in setup database stage where there's no SystemUser.
-* fixed two tests in RT::CustomField that incorrectly expected old-style
- ->Type return values; they now test ->Type and ->MaxValues separately.
-* change some ok() tests into is() and like() tests.
-
-
-------------------------------------------------------------------------
-r597 | autrijus | 2004-03-17 13:12:25 -0500 (Wed, 17 Mar 2004) | 2 lines
-Changed paths:
- M /rt/branches
- A /rt/branches/rt-3.3/html/Developer
- A /rt/branches/rt-3.3/html/Developer/Log.html
- A /rt/branches/rt-3.3/html/Developer/Perldoc.html
- A /rt/branches/rt-3.3/html/Developer/autohandler
-
-* Developer tools.
-
-------------------------------------------------------------------------
-r585 | autrijus | 2004-03-16 14:22:32 -0500 (Tue, 16 Mar 2004) | 3 lines
-Changed paths:
- M /rt/branches
- M /rt/branches/rt-3.3/bin/webmux.pl.in
- M /rt/branches/rt-3.3/etc/acl.mysql
- M /rt/branches/rt-3.3/lib/RT.pm.in
-
-* move class loading to RT::InitClasses.
-* do not do acl if mysql is in skip-grant-tables mode.
-
-------------------------------------------------------------------------
-r584 | autrijus | 2004-03-16 14:07:50 -0500 (Tue, 16 Mar 2004) | 3 lines
-Changed paths:
- M /rt/branches
- M /rt/branches/rt-3.3/Makefile.in
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
-
-* it is possible that the DESTDIR is the current directory.
-* also, hint on how to use MasonX::Profiler more concisely.
-
-------------------------------------------------------------------------
-r571 | autrijus | 2004-03-15 10:22:17 -0500 (Mon, 15 Mar 2004) | 2 lines
-Changed paths:
- M /rt/branches
- M /rt/branches/rt-3.3/html/User/Prefs.html
-
-* backport lang handle setting from -elixus
-
-------------------------------------------------------------------------
-r560 | autrijus | 2004-03-12 21:44:05 -0500 (Fri, 12 Mar 2004) | 2 lines
-Changed paths:
- M /rt/branches
- M /rt/branches/rt-3.3/README
- M /rt/branches/rt-3.3/bin/rt-mailgate.in
- M /rt/branches/rt-3.3/bin/rt.in
- M /rt/branches/rt-3.3/etc/RT_Config.pm.in
- M /rt/branches/rt-3.3/etc/schema.Oracle
- M /rt/branches/rt-3.3/html/Admin/Users/Modify.html
- M /rt/branches/rt-3.3/html/Elements/Footer
- M /rt/branches/rt-3.3/html/Elements/Header
- M /rt/branches/rt-3.3/html/Elements/Login
- M /rt/branches/rt-3.3/html/Elements/SelectQueue
- M /rt/branches/rt-3.3/html/Elements/TicketList
- M /rt/branches/rt-3.3/html/NoAuth/webrt.css
- M /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/attachments
- M /rt/branches/rt-3.3/html/REST/1.0/ticket/comment
- M /rt/branches/rt-3.3/html/Search/Build.html
- M /rt/branches/rt-3.3/html/Search/Elements/BuildFormatString
- M /rt/branches/rt-3.3/html/Search/Elements/PickBasics
- M /rt/branches/rt-3.3/html/Search/Elements/PickRestriction
- M /rt/branches/rt-3.3/html/Search/Results.html
- M /rt/branches/rt-3.3/html/Search/Results.rdf
- M /rt/branches/rt-3.3/html/Ticket/Display.html
- A /rt/branches/rt-3.3/html/Ticket/Elements/FindAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/PreviewScrips
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowAttachments
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowSummary
- M /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- M /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- M /rt/branches/rt-3.3/html/Ticket/History.html
- M /rt/branches/rt-3.3/html/autohandler
- M /rt/branches/rt-3.3/lib/RT/Action/Autoreply.pm
- M /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- M /rt/branches/rt-3.3/lib/RT/Condition/OwnerChange.pm
- M /rt/branches/rt-3.3/lib/RT/Handle.pm
- M /rt/branches/rt-3.3/lib/RT/Link_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/Record.pm
- M /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- M /rt/branches/rt-3.3/lib/RT/URI/fsck_com_rt.pm
- M /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
- M /rt/branches/rt-3.3/releng.cnf
-
-* smerge rt-3.1 to rt-3.3.
-
-------------------------------------------------------------------------
-r559 | autrijus | 2004-03-12 21:22:26 -0500 (Fri, 12 Mar 2004) | 2 lines
-Changed paths:
- M /rt/branches
- D /rt/branches/autrijus-3.1
- A /rt/branches/rt-3.3
- A /rt/branches/rt-3.3/COPYING
- A /rt/branches/rt-3.3/HOWTO
- A /rt/branches/rt-3.3/HOWTO/README
- A /rt/branches/rt-3.3/HOWTO/change.txt
- A /rt/branches/rt-3.3/HOWTO/release.txt
- A /rt/branches/rt-3.3/HOWTO/version-control.txt
- A /rt/branches/rt-3.3/Makefile.in
- A /rt/branches/rt-3.3/README
- A /rt/branches/rt-3.3/UPGRADING
- A /rt/branches/rt-3.3/aclocal.m4
- A /rt/branches/rt-3.3/bin
- A /rt/branches/rt-3.3/bin/mason_handler.fcgi.in
- A /rt/branches/rt-3.3/bin/mason_handler.scgi.in
- A /rt/branches/rt-3.3/bin/mason_handler.svc.in
- A /rt/branches/rt-3.3/bin/rt-commit-handler.in
- A /rt/branches/rt-3.3/bin/rt-crontool.in
- A /rt/branches/rt-3.3/bin/rt-mailgate.in
- A /rt/branches/rt-3.3/bin/rt.in
- A /rt/branches/rt-3.3/bin/standalone_httpd.in
- A /rt/branches/rt-3.3/bin/webmux.pl.in
- A /rt/branches/rt-3.3/config.layout
- A /rt/branches/rt-3.3/configure.ac
- A /rt/branches/rt-3.3/docs
- A /rt/branches/rt-3.3/docs/README.docs
- A /rt/branches/rt-3.3/docs/Security
- A /rt/branches/rt-3.3/docs/design_docs
- A /rt/branches/rt-3.3/docs/design_docs/CARS
- A /rt/branches/rt-3.3/docs/design_docs/TransactionTypes.txt
- A /rt/branches/rt-3.3/docs/design_docs/acls
- A /rt/branches/rt-3.3/docs/design_docs/approval_notices
- A /rt/branches/rt-3.3/docs/design_docs/approval_template
- A /rt/branches/rt-3.3/docs/design_docs/cf_search
- A /rt/branches/rt-3.3/docs/design_docs/cli_spec
- A /rt/branches/rt-3.3/docs/design_docs/cvs_integration
- A /rt/branches/rt-3.3/docs/design_docs/delegation
- A /rt/branches/rt-3.3/docs/design_docs/evil_plans
- A /rt/branches/rt-3.3/docs/design_docs/groups_notes
- A /rt/branches/rt-3.3/docs/design_docs/link-definitions.txt
- A /rt/branches/rt-3.3/docs/design_docs/recursive_group_membership_algorithm
- A /rt/branches/rt-3.3/docs/design_docs/rql_parser_machine.graphviz
- A /rt/branches/rt-3.3/docs/design_docs/string-extraction-guide.txt
- A /rt/branches/rt-3.3/docs/design_docs/subscription-definitions.txt
- A /rt/branches/rt-3.3/docs/design_docs/ticket_templates
- A /rt/branches/rt-3.3/docs/design_docs/users
- A /rt/branches/rt-3.3/docs/rt3-schema-relationships.dot
- A /rt/branches/rt-3.3/etc
- A /rt/branches/rt-3.3/etc/RT_Config.pm.in
- A /rt/branches/rt-3.3/etc/RT_SiteConfig.pm
- A /rt/branches/rt-3.3/etc/acl.Informix
- A /rt/branches/rt-3.3/etc/acl.Oracle
- A /rt/branches/rt-3.3/etc/acl.Pg
- A /rt/branches/rt-3.3/etc/acl.mysql
- A /rt/branches/rt-3.3/etc/constraints.mysql
- A /rt/branches/rt-3.3/etc/drop.Informix
- A /rt/branches/rt-3.3/etc/drop.Oracle
- A /rt/branches/rt-3.3/etc/initialdata
- A /rt/branches/rt-3.3/etc/rt.spec
- A /rt/branches/rt-3.3/etc/schema.Informix
- A /rt/branches/rt-3.3/etc/schema.Oracle
- A /rt/branches/rt-3.3/etc/schema.Pg
- A /rt/branches/rt-3.3/etc/schema.SQLite
- A /rt/branches/rt-3.3/etc/schema.mysql
- A /rt/branches/rt-3.3/etc/upgrade
- A /rt/branches/rt-3.3/etc/upgrade/2.1.71
- A /rt/branches/rt-3.3/html
- A /rt/branches/rt-3.3/html/Admin
- A /rt/branches/rt-3.3/html/Admin/CustomFields
- A /rt/branches/rt-3.3/html/Admin/CustomFields/GroupRights.html
- A /rt/branches/rt-3.3/html/Admin/CustomFields/Modify.html
- A /rt/branches/rt-3.3/html/Admin/CustomFields/Objects.html
- A /rt/branches/rt-3.3/html/Admin/CustomFields/UserRights.html
- A /rt/branches/rt-3.3/html/Admin/CustomFields/index.html
- A /rt/branches/rt-3.3/html/Admin/Elements
- A /rt/branches/rt-3.3/html/Admin/Elements/AddCustomFieldValue
- A /rt/branches/rt-3.3/html/Admin/Elements/CreateUserCalled
- A /rt/branches/rt-3.3/html/Admin/Elements/CustomFieldTabs
- A /rt/branches/rt-3.3/html/Admin/Elements/EditCustomField
- A /rt/branches/rt-3.3/html/Admin/Elements/EditCustomFieldValues
- A /rt/branches/rt-3.3/html/Admin/Elements/EditCustomFields
- A /rt/branches/rt-3.3/html/Admin/Elements/EditQueueWatchers
- A /rt/branches/rt-3.3/html/Admin/Elements/EditScrip
- A /rt/branches/rt-3.3/html/Admin/Elements/EditScrips
- A /rt/branches/rt-3.3/html/Admin/Elements/EditTemplates
- A /rt/branches/rt-3.3/html/Admin/Elements/EditUserComments
- A /rt/branches/rt-3.3/html/Admin/Elements/GroupTabs
- A /rt/branches/rt-3.3/html/Admin/Elements/Header
- A /rt/branches/rt-3.3/html/Admin/Elements/ListGlobalCustomFields
- A /rt/branches/rt-3.3/html/Admin/Elements/ListGlobalScrips
- A /rt/branches/rt-3.3/html/Admin/Elements/ModifyQueue
- A /rt/branches/rt-3.3/html/Admin/Elements/ModifyTemplate
- A /rt/branches/rt-3.3/html/Admin/Elements/ModifyUser
- A /rt/branches/rt-3.3/html/Admin/Elements/ObjectCustomFields
- A /rt/branches/rt-3.3/html/Admin/Elements/PickCustomFields
- A /rt/branches/rt-3.3/html/Admin/Elements/PickObjects
- A /rt/branches/rt-3.3/html/Admin/Elements/QueueRightsForUser
- A /rt/branches/rt-3.3/html/Admin/Elements/QueueTabs
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectCustomFieldLookupType
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectCustomFieldType
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectGroups
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectModifyGroup
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectModifyQueue
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectModifyUser
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectNewGroupMembers
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectRights
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectScrip
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectScripAction
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectScripCondition
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectSingleOrMultiple
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectStage
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectTemplate
- A /rt/branches/rt-3.3/html/Admin/Elements/SelectUsers
- A /rt/branches/rt-3.3/html/Admin/Elements/SystemTabs
- A /rt/branches/rt-3.3/html/Admin/Elements/Tabs
- A /rt/branches/rt-3.3/html/Admin/Elements/UserTabs
- A /rt/branches/rt-3.3/html/Admin/Global
- A /rt/branches/rt-3.3/html/Admin/Global/CustomField.html
- A /rt/branches/rt-3.3/html/Admin/Global/CustomFields.html
- A /rt/branches/rt-3.3/html/Admin/Global/GroupRights.html
- A /rt/branches/rt-3.3/html/Admin/Global/Scrip.html
- A /rt/branches/rt-3.3/html/Admin/Global/Scrips.html
- A /rt/branches/rt-3.3/html/Admin/Global/Template.html
- A /rt/branches/rt-3.3/html/Admin/Global/Templates.html
- A /rt/branches/rt-3.3/html/Admin/Global/UserRights.html
- A /rt/branches/rt-3.3/html/Admin/Global/index.html
- A /rt/branches/rt-3.3/html/Admin/Groups
- A /rt/branches/rt-3.3/html/Admin/Groups/CustomFields.html
- A /rt/branches/rt-3.3/html/Admin/Groups/GroupRights.html
- A /rt/branches/rt-3.3/html/Admin/Groups/History.html
- A /rt/branches/rt-3.3/html/Admin/Groups/Members.html
- A /rt/branches/rt-3.3/html/Admin/Groups/Modify.html
- A /rt/branches/rt-3.3/html/Admin/Groups/UserRights.html
- A /rt/branches/rt-3.3/html/Admin/Groups/index.html
- A /rt/branches/rt-3.3/html/Admin/Queues
- A /rt/branches/rt-3.3/html/Admin/Queues/CustomField.html
- A /rt/branches/rt-3.3/html/Admin/Queues/CustomFields.html
- A /rt/branches/rt-3.3/html/Admin/Queues/GroupRights.html
- A /rt/branches/rt-3.3/html/Admin/Queues/Modify.html
- A /rt/branches/rt-3.3/html/Admin/Queues/People.html
- A /rt/branches/rt-3.3/html/Admin/Queues/Scrip.html
- A /rt/branches/rt-3.3/html/Admin/Queues/Scrips.html
- A /rt/branches/rt-3.3/html/Admin/Queues/Template.html
- A /rt/branches/rt-3.3/html/Admin/Queues/Templates.html
- A /rt/branches/rt-3.3/html/Admin/Queues/UserRights.html
- A /rt/branches/rt-3.3/html/Admin/Queues/index.html
- A /rt/branches/rt-3.3/html/Admin/Users
- A /rt/branches/rt-3.3/html/Admin/Users/CustomFields.html
- A /rt/branches/rt-3.3/html/Admin/Users/History.html
- A /rt/branches/rt-3.3/html/Admin/Users/Memberships.html
- A /rt/branches/rt-3.3/html/Admin/Users/Modify.html
- A /rt/branches/rt-3.3/html/Admin/Users/Prefs.html
- A /rt/branches/rt-3.3/html/Admin/Users/index.html
- A /rt/branches/rt-3.3/html/Admin/index.html
- A /rt/branches/rt-3.3/html/Approvals
- A /rt/branches/rt-3.3/html/Approvals/Display.html
- A /rt/branches/rt-3.3/html/Approvals/Elements
- A /rt/branches/rt-3.3/html/Approvals/Elements/Approve
- A /rt/branches/rt-3.3/html/Approvals/Elements/PendingMyApproval
- A /rt/branches/rt-3.3/html/Approvals/Elements/ShowDependency
- A /rt/branches/rt-3.3/html/Approvals/Elements/Tabs
- A /rt/branches/rt-3.3/html/Approvals/index.html
- A /rt/branches/rt-3.3/html/Download
- A /rt/branches/rt-3.3/html/Download/CustomFieldValue
- A /rt/branches/rt-3.3/html/Download/CustomFieldValue/dhandler
- A /rt/branches/rt-3.3/html/Download/Tabular
- A /rt/branches/rt-3.3/html/Download/Tabular/dhandler
- A /rt/branches/rt-3.3/html/Elements
- A /rt/branches/rt-3.3/html/Elements/BevelBoxRaisedEnd
- A /rt/branches/rt-3.3/html/Elements/BevelBoxRaisedStart
- A /rt/branches/rt-3.3/html/Elements/Callback
- A /rt/branches/rt-3.3/html/Elements/Checkbox
- A /rt/branches/rt-3.3/html/Elements/CreateTicket
- A /rt/branches/rt-3.3/html/Elements/EditCustomField
- A /rt/branches/rt-3.3/html/Elements/EditCustomFieldBinary
- A /rt/branches/rt-3.3/html/Elements/EditCustomFieldFreeform
- A /rt/branches/rt-3.3/html/Elements/EditCustomFieldImage
- A /rt/branches/rt-3.3/html/Elements/EditCustomFieldSelect
- A /rt/branches/rt-3.3/html/Elements/EditCustomFieldText
- A /rt/branches/rt-3.3/html/Elements/Error
- A /rt/branches/rt-3.3/html/Elements/Footer
- A /rt/branches/rt-3.3/html/Elements/GotoTicket
- A /rt/branches/rt-3.3/html/Elements/Header
- A /rt/branches/rt-3.3/html/Elements/ListActions
- A /rt/branches/rt-3.3/html/Elements/Login
- A /rt/branches/rt-3.3/html/Elements/Menu
- A /rt/branches/rt-3.3/html/Elements/MessageBox
- A /rt/branches/rt-3.3/html/Elements/MyRequests
- A /rt/branches/rt-3.3/html/Elements/MyTickets
- A /rt/branches/rt-3.3/html/Elements/PageLayout
- A /rt/branches/rt-3.3/html/Elements/QuickCreate
- A /rt/branches/rt-3.3/html/Elements/Quicksearch
- A /rt/branches/rt-3.3/html/Elements/Refresh
- A /rt/branches/rt-3.3/html/Elements/Section
- A /rt/branches/rt-3.3/html/Elements/SelectAttachmentField
- A /rt/branches/rt-3.3/html/Elements/SelectBoolean
- A /rt/branches/rt-3.3/html/Elements/SelectCustomFieldOperator
- A /rt/branches/rt-3.3/html/Elements/SelectCustomFieldValue
- A /rt/branches/rt-3.3/html/Elements/SelectDate
- A /rt/branches/rt-3.3/html/Elements/SelectDateRelation
- A /rt/branches/rt-3.3/html/Elements/SelectDateType
- A /rt/branches/rt-3.3/html/Elements/SelectEqualityOperator
- A /rt/branches/rt-3.3/html/Elements/SelectGroups
- A /rt/branches/rt-3.3/html/Elements/SelectLang
- A /rt/branches/rt-3.3/html/Elements/SelectLinkType
- A /rt/branches/rt-3.3/html/Elements/SelectMatch
- A /rt/branches/rt-3.3/html/Elements/SelectNewTicketQueue
- A /rt/branches/rt-3.3/html/Elements/SelectOwner
- A /rt/branches/rt-3.3/html/Elements/SelectQueue
- A /rt/branches/rt-3.3/html/Elements/SelectResultsPerPage
- A /rt/branches/rt-3.3/html/Elements/SelectSortOrder
- A /rt/branches/rt-3.3/html/Elements/SelectStatus
- A /rt/branches/rt-3.3/html/Elements/SelectTicketSortBy
- A /rt/branches/rt-3.3/html/Elements/SelectTicketTypes
- A /rt/branches/rt-3.3/html/Elements/SelectUsers
- A /rt/branches/rt-3.3/html/Elements/SelectWatcherType
- A /rt/branches/rt-3.3/html/Elements/SetupSessionCookie
- A /rt/branches/rt-3.3/html/Elements/ShadedBox
- A /rt/branches/rt-3.3/html/Elements/ShadedInputRow
- A /rt/branches/rt-3.3/html/Elements/ShadedRow
- A /rt/branches/rt-3.3/html/Elements/ShowCustomFields
- A /rt/branches/rt-3.3/html/Elements/ShowMemberships
- A /rt/branches/rt-3.3/html/Elements/SimpleSearch
- A /rt/branches/rt-3.3/html/Elements/Submit
- A /rt/branches/rt-3.3/html/Elements/Tabs
- A /rt/branches/rt-3.3/html/Elements/TicketList
- A /rt/branches/rt-3.3/html/Elements/TitleBox
- A /rt/branches/rt-3.3/html/Elements/TitleBoxEnd
- A /rt/branches/rt-3.3/html/Elements/TitleBoxStart
- A /rt/branches/rt-3.3/html/Elements/ViewUser
- A /rt/branches/rt-3.3/html/NoAuth
- A /rt/branches/rt-3.3/html/NoAuth/Logout.html
- A /rt/branches/rt-3.3/html/NoAuth/Reminder.html
- A /rt/branches/rt-3.3/html/NoAuth/images
- A /rt/branches/rt-3.3/html/NoAuth/images/back_home.gif
- A /rt/branches/rt-3.3/html/NoAuth/images/bplogo.gif
- A /rt/branches/rt-3.3/html/NoAuth/images/favicon.png
- A /rt/branches/rt-3.3/html/NoAuth/images/head_requestracker.gif
- A /rt/branches/rt-3.3/html/NoAuth/images/rt.jpg
- A /rt/branches/rt-3.3/html/NoAuth/images/space.gif
- A /rt/branches/rt-3.3/html/NoAuth/images/spacer.gif
- A /rt/branches/rt-3.3/html/NoAuth/images/squares_blue.gif
- A /rt/branches/rt-3.3/html/NoAuth/webrt.css
- A /rt/branches/rt-3.3/html/Projects
- A /rt/branches/rt-3.3/html/Projects/Create.html
- A /rt/branches/rt-3.3/html/Projects/Edit.html
- A /rt/branches/rt-3.3/html/Projects/Elements
- A /rt/branches/rt-3.3/html/Projects/Elements/CreateTask
- A /rt/branches/rt-3.3/html/Projects/Elements/EditTask
- A /rt/branches/rt-3.3/html/Projects/Elements/OverviewEntry
- A /rt/branches/rt-3.3/html/Projects/Elements/SelectProjectTask
- A /rt/branches/rt-3.3/html/Projects/Elements/SelectProjectTaskEntry
- A /rt/branches/rt-3.3/html/Projects/Elements/Tabs
- A /rt/branches/rt-3.3/html/Projects/Elements/TicketTabs
- A /rt/branches/rt-3.3/html/Projects/Gantt.html
- A /rt/branches/rt-3.3/html/Projects/History.html
- A /rt/branches/rt-3.3/html/Projects/Overview.html
- A /rt/branches/rt-3.3/html/Projects/Schedule.html
- A /rt/branches/rt-3.3/html/Projects/ScheduleByActor.html
- A /rt/branches/rt-3.3/html/Projects/index.html
- A /rt/branches/rt-3.3/html/REST
- A /rt/branches/rt-3.3/html/REST/1.0
- A /rt/branches/rt-3.3/html/REST/1.0/Forms
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/queue
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/queue/default
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/queue/ns
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/attachments
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/default
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/history
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/ticket/links
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/user
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/user/default
- A /rt/branches/rt-3.3/html/REST/1.0/Forms/user/ns
- A /rt/branches/rt-3.3/html/REST/1.0/NoAuth
- A /rt/branches/rt-3.3/html/REST/1.0/NoAuth/mail-gateway
- A /rt/branches/rt-3.3/html/REST/1.0/autohandler
- A /rt/branches/rt-3.3/html/REST/1.0/dhandler
- A /rt/branches/rt-3.3/html/REST/1.0/logout
- A /rt/branches/rt-3.3/html/REST/1.0/search
- A /rt/branches/rt-3.3/html/REST/1.0/search/dhandler
- A /rt/branches/rt-3.3/html/REST/1.0/search/ticket
- A /rt/branches/rt-3.3/html/REST/1.0/ticket
- A /rt/branches/rt-3.3/html/REST/1.0/ticket/comment
- A /rt/branches/rt-3.3/html/REST/1.0/ticket/link
- A /rt/branches/rt-3.3/html/REST/1.0/ticket/merge
- A /rt/branches/rt-3.3/html/Scope
- A /rt/branches/rt-3.3/html/Scope/Action.html
- A /rt/branches/rt-3.3/html/Scope/Elements
- A /rt/branches/rt-3.3/html/Scope/Elements/Header
- A /rt/branches/rt-3.3/html/Scope/Elements/MessageBox
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowHistory
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowHistoryView
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowMessageHeaders
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowMessageStanza
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowSummary
- A /rt/branches/rt-3.3/html/Scope/Elements/ShowTransaction
- A /rt/branches/rt-3.3/html/Scope/History.html
- A /rt/branches/rt-3.3/html/Scope/Search.html
- A /rt/branches/rt-3.3/html/Scope/Update.html
- A /rt/branches/rt-3.3/html/Scope/View.html
- A /rt/branches/rt-3.3/html/Scope/Work.html
- A /rt/branches/rt-3.3/html/Scope/index.html
- A /rt/branches/rt-3.3/html/Search
- A /rt/branches/rt-3.3/html/Search/Build.html
- A /rt/branches/rt-3.3/html/Search/Bulk.html
- A /rt/branches/rt-3.3/html/Search/Edit.html
- A /rt/branches/rt-3.3/html/Search/Elements
- A /rt/branches/rt-3.3/html/Search/Elements/BuildFormatString
- A /rt/branches/rt-3.3/html/Search/Elements/DisplayOptions
- A /rt/branches/rt-3.3/html/Search/Elements/EditFormat
- A /rt/branches/rt-3.3/html/Search/Elements/EditSearches
- A /rt/branches/rt-3.3/html/Search/Elements/NewListActions
- A /rt/branches/rt-3.3/html/Search/Elements/PickBasics
- A /rt/branches/rt-3.3/html/Search/Elements/PickCFs
- A /rt/branches/rt-3.3/html/Search/Elements/PickCriteria
- A /rt/branches/rt-3.3/html/Search/Elements/PickRestriction
- A /rt/branches/rt-3.3/html/Search/Elements/SearchPrivacy
- A /rt/branches/rt-3.3/html/Search/Elements/SelectAndOr
- A /rt/branches/rt-3.3/html/Search/Elements/SelectGroup
- A /rt/branches/rt-3.3/html/Search/Elements/SelectLinks
- A /rt/branches/rt-3.3/html/Search/Elements/SelectPersonType
- A /rt/branches/rt-3.3/html/Search/Elements/SelectSearchObject
- A /rt/branches/rt-3.3/html/Search/Elements/SelectSearchesForObjects
- A /rt/branches/rt-3.3/html/Search/Elements/TicketHeader
- A /rt/branches/rt-3.3/html/Search/Elements/TicketHeaderCell
- A /rt/branches/rt-3.3/html/Search/Elements/TicketRow
- A /rt/branches/rt-3.3/html/Search/Listing.html
- A /rt/branches/rt-3.3/html/Search/Results.html
- A /rt/branches/rt-3.3/html/Search/Results.rdf
- A /rt/branches/rt-3.3/html/Search/Results.tsv
- A /rt/branches/rt-3.3/html/SelfService
- A /rt/branches/rt-3.3/html/SelfService/Attachment
- A /rt/branches/rt-3.3/html/SelfService/Attachment/dhandler
- A /rt/branches/rt-3.3/html/SelfService/Closed.html
- A /rt/branches/rt-3.3/html/SelfService/Create.html
- A /rt/branches/rt-3.3/html/SelfService/Display.html
- A /rt/branches/rt-3.3/html/SelfService/Elements
- A /rt/branches/rt-3.3/html/SelfService/Elements/GotoTicket
- A /rt/branches/rt-3.3/html/SelfService/Elements/Header
- A /rt/branches/rt-3.3/html/SelfService/Elements/MyRequests
- A /rt/branches/rt-3.3/html/SelfService/Elements/Tabs
- A /rt/branches/rt-3.3/html/SelfService/Error.html
- A /rt/branches/rt-3.3/html/SelfService/Prefs.html
- A /rt/branches/rt-3.3/html/SelfService/Update.html
- A /rt/branches/rt-3.3/html/SelfService/index.html
- A /rt/branches/rt-3.3/html/Ticket
- A /rt/branches/rt-3.3/html/Ticket/Attachment
- A /rt/branches/rt-3.3/html/Ticket/Attachment/dhandler
- A /rt/branches/rt-3.3/html/Ticket/Create.html
- A /rt/branches/rt-3.3/html/Ticket/Display.html
- A /rt/branches/rt-3.3/html/Ticket/Elements
- A /rt/branches/rt-3.3/html/Ticket/Elements/AddWatchers
- A /rt/branches/rt-3.3/html/Ticket/Elements/BulkLinks
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditBasics
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditCustomField
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditCustomFields
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditDates
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditLinks
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditPeople
- A /rt/branches/rt-3.3/html/Ticket/Elements/EditWatchers
- A /rt/branches/rt-3.3/html/Ticket/Elements/PreviewScrips
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowAttachments
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowBasics
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowCustomFields
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowDates
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowDependencies
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowHistory
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowLink
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowLinks
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowMemberOf
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowMembers
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowMessageHeaders
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowMessageStanza
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowPeople
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowReferences
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowRequestor
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowSummary
- A /rt/branches/rt-3.3/html/Ticket/Elements/ShowTransaction
- A /rt/branches/rt-3.3/html/Ticket/Elements/Tabs
- A /rt/branches/rt-3.3/html/Ticket/History.html
- A /rt/branches/rt-3.3/html/Ticket/Modify.html
- A /rt/branches/rt-3.3/html/Ticket/ModifyAll.html
- A /rt/branches/rt-3.3/html/Ticket/ModifyDates.html
- A /rt/branches/rt-3.3/html/Ticket/ModifyLinks.html
- A /rt/branches/rt-3.3/html/Ticket/ModifyPeople.html
- A /rt/branches/rt-3.3/html/Ticket/Update.html
- A /rt/branches/rt-3.3/html/Tools
- A /rt/branches/rt-3.3/html/Tools/MyDay.html
- A /rt/branches/rt-3.3/html/User
- A /rt/branches/rt-3.3/html/User/Delegation.html
- A /rt/branches/rt-3.3/html/User/Elements
- A /rt/branches/rt-3.3/html/User/Elements/DelegateRights
- A /rt/branches/rt-3.3/html/User/Elements/GroupTabs
- A /rt/branches/rt-3.3/html/User/Elements/Tabs
- A /rt/branches/rt-3.3/html/User/Groups
- A /rt/branches/rt-3.3/html/User/Groups/Members.html
- A /rt/branches/rt-3.3/html/User/Groups/Modify.html
- A /rt/branches/rt-3.3/html/User/Groups/index.html
- A /rt/branches/rt-3.3/html/User/Prefs.html
- A /rt/branches/rt-3.3/html/autohandler
- A /rt/branches/rt-3.3/html/index.html
- A /rt/branches/rt-3.3/html/l
- A /rt/branches/rt-3.3/install-sh
- A /rt/branches/rt-3.3/lib
- A /rt/branches/rt-3.3/lib/RT
- A /rt/branches/rt-3.3/lib/RT/ACE.pm
- A /rt/branches/rt-3.3/lib/RT/ACE_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ACL.pm
- A /rt/branches/rt-3.3/lib/RT/ACL_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Action
- A /rt/branches/rt-3.3/lib/RT/Action/AutoOpen.pm
- A /rt/branches/rt-3.3/lib/RT/Action/Autoreply.pm
- A /rt/branches/rt-3.3/lib/RT/Action/CreateTickets.pm
- A /rt/branches/rt-3.3/lib/RT/Action/EscalatePriority.pm
- A /rt/branches/rt-3.3/lib/RT/Action/Generic.pm
- A /rt/branches/rt-3.3/lib/RT/Action/Notify.pm
- A /rt/branches/rt-3.3/lib/RT/Action/NotifyAsComment.pm
- A /rt/branches/rt-3.3/lib/RT/Action/ResolveMembers.pm
- A /rt/branches/rt-3.3/lib/RT/Action/SendEmail.pm
- A /rt/branches/rt-3.3/lib/RT/Action/SetPriority.pm
- A /rt/branches/rt-3.3/lib/RT/Action/UserDefined.pm
- A /rt/branches/rt-3.3/lib/RT/Attachment.pm
- A /rt/branches/rt-3.3/lib/RT/Attachment_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Attachments.pm
- A /rt/branches/rt-3.3/lib/RT/Attachments_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Attribute.pm
- A /rt/branches/rt-3.3/lib/RT/Attribute_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Attributes.pm
- A /rt/branches/rt-3.3/lib/RT/Attributes_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Base.pm
- A /rt/branches/rt-3.3/lib/RT/CachedGroupMember.pm
- A /rt/branches/rt-3.3/lib/RT/CachedGroupMember_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/CachedGroupMembers.pm
- A /rt/branches/rt-3.3/lib/RT/CachedGroupMembers_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Condition
- A /rt/branches/rt-3.3/lib/RT/Condition/AnyTransaction.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/BeforeDue.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/Generic.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/Overdue.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/OwnerChange.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/PriorityExceeds.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/QueueChange.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/StatusChange.pm
- A /rt/branches/rt-3.3/lib/RT/Condition/UserDefined.pm
- A /rt/branches/rt-3.3/lib/RT/CurrentUser.pm
- A /rt/branches/rt-3.3/lib/RT/CustomField.pm
- A /rt/branches/rt-3.3/lib/RT/CustomFieldValue.pm
- A /rt/branches/rt-3.3/lib/RT/CustomFieldValues.pm
- A /rt/branches/rt-3.3/lib/RT/CustomFieldValues_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/CustomField_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/CustomFields.pm
- A /rt/branches/rt-3.3/lib/RT/CustomFields_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Date.pm
- A /rt/branches/rt-3.3/lib/RT/EmailParser.pm
- A /rt/branches/rt-3.3/lib/RT/Group.pm
- A /rt/branches/rt-3.3/lib/RT/GroupMember.pm
- A /rt/branches/rt-3.3/lib/RT/GroupMember_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/GroupMembers.pm
- A /rt/branches/rt-3.3/lib/RT/GroupMembers_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Group_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Groups.pm
- A /rt/branches/rt-3.3/lib/RT/Groups_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Handle.pm
- A /rt/branches/rt-3.3/lib/RT/I18N
- A /rt/branches/rt-3.3/lib/RT/I18N/cs.pm
- A /rt/branches/rt-3.3/lib/RT/I18N/cs.po
- A /rt/branches/rt-3.3/lib/RT/I18N/de.po
- A /rt/branches/rt-3.3/lib/RT/I18N/en.po
- A /rt/branches/rt-3.3/lib/RT/I18N/en_malkovich.po
- A /rt/branches/rt-3.3/lib/RT/I18N/es.po
- A /rt/branches/rt-3.3/lib/RT/I18N/fi.po
- A /rt/branches/rt-3.3/lib/RT/I18N/fr.po
- A /rt/branches/rt-3.3/lib/RT/I18N/he.po
- A /rt/branches/rt-3.3/lib/RT/I18N/i_default.pm
- A /rt/branches/rt-3.3/lib/RT/I18N/it.po
- A /rt/branches/rt-3.3/lib/RT/I18N/ja.po
- A /rt/branches/rt-3.3/lib/RT/I18N/nl.po
- A /rt/branches/rt-3.3/lib/RT/I18N/no.po
- A /rt/branches/rt-3.3/lib/RT/I18N/pt_br.po
- A /rt/branches/rt-3.3/lib/RT/I18N/ru.po
- A /rt/branches/rt-3.3/lib/RT/I18N/zh_cn.po
- A /rt/branches/rt-3.3/lib/RT/I18N/zh_tw.po
- A /rt/branches/rt-3.3/lib/RT/I18N.pm
- A /rt/branches/rt-3.3/lib/RT/Interface
- A /rt/branches/rt-3.3/lib/RT/Interface/CLI.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/Email
- A /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth
- A /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth/GnuPG.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/Email/Auth/MailFrom.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/Email/Filter
- A /rt/branches/rt-3.3/lib/RT/Interface/Email/Filter/SpamAssassin.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/Email.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/REST.pm
- A /rt/branches/rt-3.3/lib/RT/Interface/Web.pm
- A /rt/branches/rt-3.3/lib/RT/Link.pm
- A /rt/branches/rt-3.3/lib/RT/Link_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Links.pm
- A /rt/branches/rt-3.3/lib/RT/Links_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomField.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValue.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValue_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValues.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFieldValues_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomField_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFields.pm
- A /rt/branches/rt-3.3/lib/RT/ObjectCustomFields_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Principal.pm
- A /rt/branches/rt-3.3/lib/RT/Principal_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Principals.pm
- A /rt/branches/rt-3.3/lib/RT/Principals_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Queue.pm
- A /rt/branches/rt-3.3/lib/RT/Queue_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Queues.pm
- A /rt/branches/rt-3.3/lib/RT/Queues_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Record.pm
- A /rt/branches/rt-3.3/lib/RT/Scrip.pm
- A /rt/branches/rt-3.3/lib/RT/ScripAction.pm
- A /rt/branches/rt-3.3/lib/RT/ScripAction_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ScripActions.pm
- A /rt/branches/rt-3.3/lib/RT/ScripActions_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ScripCondition.pm
- A /rt/branches/rt-3.3/lib/RT/ScripCondition_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/ScripConditions.pm
- A /rt/branches/rt-3.3/lib/RT/ScripConditions_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Scrip_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Scrips.pm
- A /rt/branches/rt-3.3/lib/RT/Scrips_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Search
- A /rt/branches/rt-3.3/lib/RT/Search/ActiveTicketsInQueue.pm
- A /rt/branches/rt-3.3/lib/RT/Search/Generic.pm
- A /rt/branches/rt-3.3/lib/RT/SearchBuilder.pm
- A /rt/branches/rt-3.3/lib/RT/StyleGuide.pod
- A /rt/branches/rt-3.3/lib/RT/System.pm
- A /rt/branches/rt-3.3/lib/RT/Template.pm
- A /rt/branches/rt-3.3/lib/RT/Template_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Templates.pm
- A /rt/branches/rt-3.3/lib/RT/Templates_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Ticket.pm
- A /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValue.pm
- A /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValue_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValues.pm
- A /rt/branches/rt-3.3/lib/RT/TicketCustomFieldValues_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Ticket_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Tickets.pm
- A /rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Tickets_Overlay_SQL.pm
- A /rt/branches/rt-3.3/lib/RT/Transaction.pm
- A /rt/branches/rt-3.3/lib/RT/Transaction_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Transactions.pm
- A /rt/branches/rt-3.3/lib/RT/Transactions_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/URI
- A /rt/branches/rt-3.3/lib/RT/URI/base.pm
- A /rt/branches/rt-3.3/lib/RT/URI/fsck_com_rt.pm
- A /rt/branches/rt-3.3/lib/RT/URI.pm
- A /rt/branches/rt-3.3/lib/RT/User.pm
- A /rt/branches/rt-3.3/lib/RT/User_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT/Users.pm
- A /rt/branches/rt-3.3/lib/RT/Users_Overlay.pm
- A /rt/branches/rt-3.3/lib/RT.pm.in
- A /rt/branches/rt-3.3/lib/t
- A /rt/branches/rt-3.3/lib/t/00smoke.t.in
- A /rt/branches/rt-3.3/lib/t/01harness.t.in
- A /rt/branches/rt-3.3/lib/t/02regression.t.in
- A /rt/branches/rt-3.3/lib/t/03web.pl.in
- A /rt/branches/rt-3.3/lib/t/04_send_email.pl.in
- A /rt/branches/rt-3.3/lib/t/data
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/dir
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg1
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg2
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg3
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg4
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg5
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg6
- A /rt/branches/rt-3.3/lib/t/data/8859-15-message-series/msg7
- A /rt/branches/rt-3.3/lib/t/data/crashes-file-based-parser
- A /rt/branches/rt-3.3/lib/t/data/multipart-alternative-with-umlaut
- A /rt/branches/rt-3.3/lib/t/data/multipart-report
- A /rt/branches/rt-3.3/lib/t/data/nested-mime-sample
- A /rt/branches/rt-3.3/lib/t/data/nested-rfc-822
- A /rt/branches/rt-3.3/lib/t/data/new-ticket-from-iso-8859-1
- A /rt/branches/rt-3.3/lib/t/data/new-ticket-from-iso-8859-1-full
- A /rt/branches/rt-3.3/lib/t/data/notes-uuencoded
- A /rt/branches/rt-3.3/lib/t/data/russian-subject-no-content-type
- A /rt/branches/rt-3.3/lib/t/data/text-html-in-russian
- A /rt/branches/rt-3.3/lib/t/data/text-html-with-umlaut
- A /rt/branches/rt-3.3/lib/t/regression
- A /rt/branches/rt-3.3/lib/t/regression/00placeholder
- A /rt/branches/rt-3.3/lib/t/regression/mime_tests
- A /rt/branches/rt-3.3/m4
- A /rt/branches/rt-3.3/m4/rt_enable_layout.m4
- A /rt/branches/rt-3.3/m4/rt_expand_var.m4
- A /rt/branches/rt-3.3/m4/rt_layout.m4
- A /rt/branches/rt-3.3/m4/rt_subst_expanded_arg.m4
- A /rt/branches/rt-3.3/releng.cnf
- A /rt/branches/rt-3.3/sbin
- A /rt/branches/rt-3.3/sbin/extract-message-catalog
- A /rt/branches/rt-3.3/sbin/extract_pod_tests
- A /rt/branches/rt-3.3/sbin/factory
- A /rt/branches/rt-3.3/sbin/license_tag
- A /rt/branches/rt-3.3/sbin/regression_harness
- A /rt/branches/rt-3.3/sbin/rt-setup-database.in
- A /rt/branches/rt-3.3/sbin/rt-test-dependencies.in
- A /rt/branches/rt-3.3/spec
- A /rt/branches/rt-3.3/spec/schema.txt
-
-* mv autrijus-3.1 to rt-3.3
-
-------------------------------------------------------------------------
diff --git a/rt/FREESIDE_MODIFIED b/rt/FREESIDE_MODIFIED
deleted file mode 100644
index 1b0c47c..0000000
--- a/rt/FREESIDE_MODIFIED
+++ /dev/null
@@ -1,31 +0,0 @@
- sbin/rt-setup-database.in
-config.layout
-config.layout.in
- etc/RT_SiteConfig.pm
-lib/RT/Interface/Web_Vendor.pm
-lib/RT/URI/freeside.pm
-lib/RT/URI/freeside/Internal.pm
-lib/RT/URI/freeside/XMLRPC.pm
- html/Elements/Header
- html/Elements/Menu
- html/Elements/PageLayout
- html/Elements/SimpleSearch
- html/Elements/Tabs
- html/Elements/Footer
- html/Elements/CollectionAsTable/Row #backport from 3.3-TESTING
-html/Ticket/Elements/AddCustomers
-html/Ticket/Elements/EditCustomers
-html/Ticket/Elements/ShowCustomers
- html/Ticket/Elements/ShowSummary
- html/Ticket/Elements/Tabs
-html/Ticket/ModifyCustomers.html
-html/NoAuth/images/small-logo.png
- html/NoAuth/webrt.css
-
-html/Elements/TitleBoxStart
-html/Search/Bulk.html
-
-html/Elements/FreesideNewCust
-html/Elements/FreesideSearch
-html/Elements/FreesideSvcSearch
-
diff --git a/rt/Makefile b/rt/Makefile
deleted file mode 100644
index 6447221..0000000
--- a/rt/Makefile
+++ /dev/null
@@ -1,485 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2002 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-
-#
-# DO NOT HAND-EDIT the file named 'Makefile'. This file is autogenerated.
-# Have a look at "configure" and "Makefile.in" instead
-#
-
-
-PERL = /usr/bin/perl
-
-CONFIG_FILE_PATH = /opt/rt3/etc
-CONFIG_FILE = $(CONFIG_FILE_PATH)/RT_Config.pm
-SITE_CONFIG_FILE = $(CONFIG_FILE_PATH)/RT_SiteConfig.pm
-
-
-RT_VERSION_MAJOR = 3
-RT_VERSION_MINOR = 0
-RT_VERSION_PATCH = 4
-
-RT_VERSION = $(RT_VERSION_MAJOR).$(RT_VERSION_MINOR).$(RT_VERSION_PATCH)
-TAG = rt-$(RT_VERSION_MAJOR)-$(RT_VERSION_MINOR)-$(RT_VERSION_PATCH)
-
-
-# This is the group that all of the installed files will be chgrp'ed to.
-RTGROUP = rt
-
-
-# User which should own rt binaries.
-BIN_OWNER = root
-
-# User that should own all of RT's libraries, generally root.
-LIBS_OWNER = root
-
-# Group that should own all of RT's libraries, generally root.
-LIBS_GROUP = bin
-
-WEB_USER = www
-WEB_GROUP = www
-
-# {{{ Files and directories
-
-# DESTDIR allows you to specify that RT be installed somewhere other than
-# where it will eventually reside
-
-DESTDIR =
-
-
-RT_PATH = /opt/rt3
-RT_ETC_PATH = /opt/rt3/etc
-RT_BIN_PATH = /opt/rt3/bin
-RT_SBIN_PATH = /opt/rt3/sbin
-RT_LIB_PATH = /opt/rt3/lib
-RT_MAN_PATH = /opt/rt3/man
-RT_VAR_PATH = /opt/rt3/var
-RT_DOC_PATH = /opt/rt3/share/doc
-RT_LOCAL_PATH = /opt/rt3/local
-LOCAL_ETC_PATH = /opt/rt3/local/etc
-LOCAL_LEXICON_PATH = /opt/rt3/local/po
-MASON_HTML_PATH = /opt/rt3/share/html
-MASON_LOCAL_HTML_PATH = /opt/rt3/local/html
-MASON_DATA_PATH = /opt/rt3/var/mason_data
-MASON_SESSION_PATH = /opt/rt3/var/session_data
-RT_LOG_PATH = /opt/rt3/var/log
-
-# RT_READABLE_DIR_MODE is the mode of directories that are generally meant
-# to be accessable
-RT_READABLE_DIR_MODE = 0755
-
-
-
-
-# {{{ all these define the places that RT's binaries should get installed
-
-# RT_MODPERL_HANDLER is the mason handler script for mod_perl
-RT_MODPERL_HANDLER = $(RT_BIN_PATH)/webmux.pl
-# RT_FASTCGI_HANDLER is the mason handler script for FastCGI
-RT_FASTCGI_HANDLER = $(RT_BIN_PATH)/mason_handler.fcgi
-# RT_WIN32_FASTCGI_HANDLER is the mason handler script for FastCGI
-RT_WIN32_FASTCGI_HANDLER = $(RT_BIN_PATH)/mason_handler.svc
-# RT's admin CLI
-RT_CLI_ADMIN_BIN = $(RT_BIN_PATH)/rtadmin
-# RT's mail gateway
-RT_MAILGATE_BIN = $(RT_BIN_PATH)/rt-mailgate
-# RT's cron tool
-RT_CRON_BIN = $(RT_BIN_PATH)/rt-crontool
-
-# }}}
-
-SETGID_BINARIES = $(DESTDIR)/$(RT_FASTCGI_HANDLER) \
- $(DESTDIR)/$(RT_WIN32_FASTCGI_HANDLER)
-
-BINARIES = $(DESTDIR)/$(RT_MODPERL_HANDLER) \
- $(DESTDIR)/$(RT_MAILGATE_BIN) \
- $(DESTDIR)/$(RT_CRON_BIN) \
- $(SETGID_BINARIES)
-SYSTEM_BINARIES = $(DESTDIR)/$(RT_SBIN_PATH)/
-
-
-# }}}
-
-# {{{ Database setup
-
-#
-# DB_TYPE defines what sort of database RT trys to talk to
-# "mysql" is known to work.
-# "Pg" is known to work
-
-DB_TYPE = mysql
-
-# Set DBA to the name of a unix account with the proper permissions and
-# environment to run your commandline SQL sbin
-
-# Set DB_DBA to the name of a DB user with permission to create new databases
-
-# For mysql, you probably want 'root'
-# For Pg, you probably want 'postgres'
-# For oracle, you want 'system'
-
-DB_DBA = root
-
-DB_HOST = localhost
-
-# If you're not running your database server on its default port,
-# specifiy the port the database server is running on below.
-# It's generally safe to leave this blank
-
-DB_PORT =
-
-
-
-
-#
-# Set this to the canonical name of the interface RT will be talking to the
-# database on. If you said that the RT_DB_HOST above was "localhost," this
-# should be too. This value will be used to grant rt access to the database.
-# If you want to access the RT database from multiple hosts, you'll need
-# to grant those database rights by hand.
-#
-
-DB_RT_HOST = localhost
-
-# set this to the name you want to give to the RT database in
-# your database server. For Oracle, this should be the name of your sid
-
-DB_DATABASE = rt3
-DB_RT_USER = rt_user
-DB_RT_PASS = rt_pass
-
-# }}}
-
-
-####################################################################
-
-all: default
-
-default:
- @echo "Please read RT's readme before installing. Not doing so could"
- @echo "be dangerous."
-
-
-
-instruct:
- @echo "Congratulations. RT has been installed. "
- @echo ""
- @echo ""
- @echo "You must now configure RT by editing $(SITE_CONFIG_FILE)."
- @echo ""
- @echo "(You will definitely need to set RT's database password before continuing."
- @echo " Not doing so could be very dangerous)"
- @echo ""
- @echo "After that, you need to initialize RT's database by running"
- @echo " 'make initialize-database'"
-
-# @echo " or by executing "
-# @echo " '$(RT_SBIN_PATH)/rt-setup-database --action init \ "
-# @echo " --dba $(DB_DBA) --prompt-for-dba-password'"
-
-
-
-upgrade-instruct:
- @echo "Congratulations. RT has been upgraded. You should now check-over"
- @echo "$(CONFIG_FILE) for any necessary site customization. Additionally,"
- @echo "you should update RT's system database objects by running "
- @echo " ls etc/upgrade"
- @echo "For each file in that directory whose name is greater than"
- @echo "your previously installed RT version, run:"
- @echo " $(RT_SBIN_PATH)/rt-setup-database --action insert --datafile etc/upgrade/<version>"
-
-
-upgrade: dirs upgrade-noclobber upgrade-instruct
-
-upgrade-noclobber: config-install libs-install html-install bin-install local-install doc-install fixperms
-
-
-# {{{ dependencies
-testdeps:
- $(PERL) ./sbin/rt-test-dependencies --with-$(DB_TYPE)
-
-fixdeps:
- $(PERL) ./sbin/rt-test-dependencies --install --with-$(DB_TYPE)
-
-#}}}
-
-# {{{ fixperms
-fixperms:
- # Make the libraries readable
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(RT_LIB_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(RT_LIB_PATH)
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(RT_LIB_PATH)
-
-
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
-
- chmod 0755 $(DESTDIR)/$(RT_ETC_PATH)
- chmod 0500 $(DESTDIR)/$(RT_ETC_PATH)/*
-
- #TODO: the config file should probably be able to have its
- # owner set seperately from the binaries.
- chown -R $(BIN_OWNER) $(DESTDIR)/$(RT_ETC_PATH)
- chgrp -R $(RTGROUP) $(DESTDIR)/$(RT_ETC_PATH)
-
- chmod 0550 $(DESTDIR)/$(CONFIG_FILE)
- chmod 0550 $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- # Make the interfaces executable and setgid rt
- chown $(BIN_OWNER) $(BINARIES)
- chgrp $(RTGROUP) $(BINARIES)
- chmod 0755 $(BINARIES)
- chmod g+s $(SETGID_BINARIES)
-
- # Make the web ui readable by all.
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH) \
- $(DESTDIR)/$(LOCAL_LEXICON_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
-
- # Make the web ui's data dir writable
- chmod 0770 $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chown -R $(WEB_USER) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chgrp -R $(WEB_GROUP) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
-# }}}
-
-fixperms-nosetgid: fixperms
- @echo "You should never be running RT this way. it's unsafe"
- chmod 0555 $(SETGID_BINARIES)
- chmod 0555 $(DESTDIR)/$(CONFIG_FILE)
- chmod 0555 $(DESTDIR)/$(SITE_CONFIG_FILE)
-
-# {{{ dirs
-dirs:
- mkdir -p $(DESTDIR)/$(RT_LOG_PATH)
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/cache
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/etc
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/obj
- mkdir -p $(DESTDIR)/$(MASON_SESSION_PATH)
- mkdir -p $(DESTDIR)/$(MASON_HTML_PATH)
- mkdir -p $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- mkdir -p $(DESTDIR)/$(LOCAL_ETC_PATH)
- mkdir -p $(DESTDIR)/$(LOCAL_LEXICON_PATH)
-# }}}
-
-install: config-install dirs files-install fixperms instruct
-
-files-install: libs-install etc-install bin-install sbin-install html-install local-install doc-install
-
-config-install:
- mkdir -p $(DESTDIR)/$(CONFIG_FILE_PATH)
- cp etc/RT_Config.pm $(DESTDIR)/$(CONFIG_FILE)
- [ -f $(DESTDIR)/$(SITE_CONFIG_FILE) ] || cp etc/RT_SiteConfig.pm $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- chgrp $(RTGROUP) $(DESTDIR)/$(CONFIG_FILE)
- chown $(BIN_OWNER) $(DESTDIR)/$(CONFIG_FILE)
-
- chgrp $(RTGROUP) $(DESTDIR)/$(SITE_CONFIG_FILE)
- chown $(BIN_OWNER) $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- @echo "Installed configuration. about to install rt in $(RT_PATH)"
-
-test:
- $(PERL) -Ilib lib/t/00smoke.t
-
-regression-nosetgid-quiet: config-install dirs files-install libs-install sbin-install bin-install regression-instruct regression-reset-db testify-pods fixperms-nosetgid apachectl
- $(PERL) sbin/regression_harness
-
-regression-nosetgid: config-install dirs files-install libs-install sbin-install bin-install regression-instruct regression-reset-db testify-pods fixperms-nosetgid apachectl
- $(PERL) lib/t/02regression.t
-
-regression: config-install dirs files-install libs-install sbin-install bin-install regression-instruct regression-reset-db testify-pods apachectl
- $(PERL) lib/t/02regression.t
-
-regression-quiet:
- $(PERL) sbin/regression_harness
-
-regression-instruct:
- @echo "About to wipe your database for a regression test. ABORT NOW with Control-C"
-
-
-# {{{ database-installation
-
-regression-reset-db:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action drop --dba $(DB_DBA) --dba-password ''
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action init --dba $(DB_DBA) --dba-password ''
-
-initialize-database:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action init --dba $(DB_DBA) --prompt-for-dba-password
-
-dropdb:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action drop --dba $(DB_DBA) --prompt-for-dba-password
-
-insert-approval-data:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/insert_approval_scrips
-# }}}
-
-# {{{ libs-install
-libs-install:
- [ -d $(DESTDIR)/$(RT_LIB_PATH) ] || mkdir $(DESTDIR)/$(RT_LIB_PATH)
- -cp -rp lib/* $(DESTDIR)/$(RT_LIB_PATH)
-# }}}
-
-# {{{ html-install
-html-install:
- [ -d $(DESTDIR)/$(MASON_HTML_PATH) ] || mkdir $(DESTDIR)/$(MASON_HTML_PATH)
- -cp -rp ./html/* $(DESTDIR)/$(MASON_HTML_PATH)
-# }}}
-
-# {{{ doc-install
-doc-install:
- # RT 3.0.0 - RT 3.0.2 would accidentally create a file instead of a dir
- -[ -f $(DESTDIR)/$(RT_DOC_PATH) ] && rm $(DESTDIR)/$(RT_DOC_PATH)
- [ -d $(DESTDIR)/$(RT_DOC_PATH) ] || mkdir $(DESTDIR)/$(RT_DOC_PATH)
- -cp -rp ./README $(DESTDIR)/$(RT_DOC_PATH)
-# }}}
-
-# {{{ etc-install
-
-etc-install:
- mkdir -p $(DESTDIR)/$(RT_ETC_PATH)
- -cp -rp \
- etc/acl.* \
- etc/initialdata \
- etc/schema.* \
- $(DESTDIR)/$(RT_ETC_PATH)
-# }}}
-
-# {{{ sbin-install
-
-sbin-install:
- mkdir -p $(DESTDIR)/$(RT_SBIN_PATH)
- chmod +x sbin/rt-setup-database \
- sbin/rt-test-dependencies
- -cp -rp \
- sbin/rt-setup-database \
- sbin/rt-test-dependencies \
- $(DESTDIR)/$(RT_SBIN_PATH)
-
-# }}}
-
-# {{{ bin-install
-
-bin-install:
- mkdir -p $(DESTDIR)/$(RT_BIN_PATH)
- chmod +x bin/rt-mailgate \
- bin/rt-crontool
- -cp -rp \
- bin/rt-mailgate \
- bin/mason_handler.fcgi \
- bin/mason_handler.svc \
- bin/webmux.pl \
- bin/rt-crontool \
- $(DESTDIR)/$(RT_BIN_PATH)
-# }}}
-
-# {{{ local-install
-local-install:
- -cp -rp ./local/html/* $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- -cp -rp ./local/po/* $(DESTDIR)/$(LOCAL_LEXICON_PATH)
- -cp -rp ./local/etc/* $(DESTDIR)/$(LOCAL_ETC_PATH)
-# }}}
-
-# {{{ Best Practical Build targets -- no user servicable parts inside
-
-
-POD2TEST_EXE = sbin/extract_pod_tests
-
-testify-pods:
- [ -d lib/t/autogen ] || mkdir lib/t/autogen
- find lib -name \*pm |grep -v \*.in |xargs -n 1 $(PERL) $(POD2TEST_EXE)
- find bin -type f |grep -v \~ | grep -v "\.in" | xargs -n 1 $(PERL) $(POD2TEST_EXE)
-
-
-
-regenerate-catalogs:
- $(PERL) sbin/extract-message-catalog
-
-license-tag:
- $(PERL) sbin/license_tag
-
-factory: initialize-database
- cd lib; $(PERL) ../sbin/factory $(DB_DATABASE) RT
-
-commit:
- aegis -build ; aegis -diff ; aegis -test; aegis -develop_end
-
-integrate:
- aegis -integrate_begin; aegis -build; aegis -diff; aegis -test ; aegis -integrate_pass
-
-predist: commit tag-and-tar
-
-tag-and-release-baseline:
- aegis -cp -ind Makefile -output /tmp/Makefile.tagandrelease; \
- $(MAKE) -f /tmp/Makefile.tagandrelease tag-and-release-never-by-hand
-
-
-# Running this target in a working directory is
-# WRONG WRONG WRONG.
-# it will tag the current baseline with the version of RT defined
-# in the currently-being-worked-on makefile. which is wrong.
-# you want tag-and-release-baseline
-
-tag-and-release-never-by-hand:
- aegis --delta-name $(TAG)
- rm -rf /tmp/$(TAG)
- mkdir /tmp/$(TAG)
- cd /tmp/$(TAG); \
- aegis -cp -ind -delta $(TAG) . ;\
- make reconfigure;\
- chmod 600 Makefile;\
- aegis --report --project rt.$(RT_VERSION_MAJOR) \
- --page_width 80 \
- --page_length 9999 \
- --change $(RT_VERSION_MINOR) --output Changelog Change_Log
-
- cd /tmp; tar czvf /home/ftp/pub/rt/devel/$(TAG).tar.gz $(TAG)/
- chmod 644 /home/ftp/pub/rt/devel/$(TAG).tar.gz
-
-
-reconfigure:
- aclocal -I m4
- autoconf
- chmod 755 ./configure
- ./configure
-
-rpm:
- (cd ..; tar czvf /usr/src/redhat/SOURCES/rt.tar.gz rt)
- rpm -ba etc/rt.spec
-
-
-apachectl:
- apachectl stop
- sleep 3
- apachectl start
-# }}}
diff --git a/rt/Makefile.in b/rt/Makefile.in
deleted file mode 100644
index 43dcee1..0000000
--- a/rt/Makefile.in
+++ /dev/null
@@ -1,492 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-#
-# DO NOT HAND-EDIT the file named 'Makefile'. This file is autogenerated.
-# Have a look at "configure" and "Makefile.in" instead
-#
-
-
-PERL = @PERL@
-
-CONFIG_FILE_PATH = @CONFIG_FILE_PATH@
-CONFIG_FILE = $(CONFIG_FILE_PATH)/RT_Config.pm
-SITE_CONFIG_FILE = $(CONFIG_FILE_PATH)/RT_SiteConfig.pm
-
-
-RT_VERSION_MAJOR = @RT_VERSION_MAJOR@
-RT_VERSION_MINOR = @RT_VERSION_MINOR@
-RT_VERSION_PATCH = @RT_VERSION_PATCH@
-
-RT_VERSION = $(RT_VERSION_MAJOR).$(RT_VERSION_MINOR).$(RT_VERSION_PATCH)
-TAG = rt-$(RT_VERSION_MAJOR)-$(RT_VERSION_MINOR)-$(RT_VERSION_PATCH)
-
-
-# This is the group that all of the installed files will be chgrp'ed to.
-RTGROUP = @RTGROUP@
-
-
-# User which should own rt binaries.
-BIN_OWNER = @BIN_OWNER@
-
-# User that should own all of RT's libraries, generally root.
-LIBS_OWNER = @LIBS_OWNER@
-
-# Group that should own all of RT's libraries, generally root.
-LIBS_GROUP = @LIBS_GROUP@
-
-WEB_USER = @WEB_USER@
-WEB_GROUP = @WEB_GROUP@
-
-
-APACHECTL = @APACHECTL@
-
-# {{{ Files and directories
-
-# DESTDIR allows you to specify that RT be installed somewhere other than
-# where it will eventually reside
-
-DESTDIR =
-
-
-RT_PATH = @RT_PATH@
-RT_ETC_PATH = @RT_ETC_PATH@
-RT_BIN_PATH = @RT_BIN_PATH@
-RT_SBIN_PATH = @RT_SBIN_PATH@
-RT_LIB_PATH = @RT_LIB_PATH@
-RT_MAN_PATH = @RT_MAN_PATH@
-RT_VAR_PATH = @RT_VAR_PATH@
-RT_DOC_PATH = @RT_DOC_PATH@
-RT_LOCAL_PATH = @RT_LOCAL_PATH@
-LOCAL_ETC_PATH = @LOCAL_ETC_PATH@
-LOCAL_LIB_PATH = @LOCAL_LIB_PATH@
-LOCAL_LEXICON_PATH = @LOCAL_LEXICON_PATH@
-MASON_HTML_PATH = @MASON_HTML_PATH@
-MASON_LOCAL_HTML_PATH = @MASON_LOCAL_HTML_PATH@
-MASON_DATA_PATH = @MASON_DATA_PATH@
-MASON_SESSION_PATH = @MASON_SESSION_PATH@
-RT_LOG_PATH = @RT_LOG_PATH@
-
-# RT_READABLE_DIR_MODE is the mode of directories that are generally meant
-# to be accessable
-RT_READABLE_DIR_MODE = 0755
-
-
-
-
-# {{{ all these define the places that RT's binaries should get installed
-
-# RT_MODPERL_HANDLER is the mason handler script for mod_perl
-RT_MODPERL_HANDLER = $(RT_BIN_PATH)/webmux.pl
-# RT_STANDALONE_SERVER is a stand-alone HTTP server
-RT_STANDALONE_SERVER = $(RT_BIN_PATH)/standalone_httpd
-# RT_SPEEDYCGI_HANDLER is the mason handler script for SpeedyCGI
-RT_SPEEDYCGI_HANDLER = $(RT_BIN_PATH)/mason_handler.scgi
-# RT_FASTCGI_HANDLER is the mason handler script for FastCGI
-RT_FASTCGI_HANDLER = $(RT_BIN_PATH)/mason_handler.fcgi
-# RT_WIN32_FASTCGI_HANDLER is the mason handler script for FastCGI
-RT_WIN32_FASTCGI_HANDLER = $(RT_BIN_PATH)/mason_handler.svc
-# RT's CLI
-RT_CLI_BIN = $(RT_BIN_PATH)/rt
-# RT's mail gateway
-RT_MAILGATE_BIN = $(RT_BIN_PATH)/rt-mailgate
-# RT's cron tool
-RT_CRON_BIN = $(RT_BIN_PATH)/rt-crontool
-
-# }}}
-
-
-BINARIES = $(DESTDIR)/$(RT_MODPERL_HANDLER) \
- $(DESTDIR)/$(RT_MAILGATE_BIN) \
- $(DESTDIR)/$(RT_CLI_BIN) \
- $(DESTDIR)/$(RT_CRON_BIN) \
- $(DESTDIR)/$(RT_STANDALONE_SERVER) \
- $(DESTDIR)/$(RT_SPEEDYCGI_HANDLER) \
- $(DESTDIR)/$(RT_FASTCGI_HANDLER) \
- $(DESTDIR)/$(RT_WIN32_FASTCGI_HANDLER)
-SYSTEM_BINARIES = $(DESTDIR)/$(RT_SBIN_PATH)/
-
-# }}}
-
-# {{{ Database setup
-
-#
-# DB_TYPE defines what sort of database RT trys to talk to
-# "mysql" is known to work.
-# "Pg" is known to work
-# "Informix" is known to work
-
-DB_TYPE = @DB_TYPE@
-
-# Set DBA to the name of a unix account with the proper permissions and
-# environment to run your commandline SQL sbin
-
-# Set DB_DBA to the name of a DB user with permission to create new databases
-
-# For mysql, you probably want 'root'
-# For Pg, you probably want 'postgres'
-# For Oracle, you want 'system'
-# For Informix, you want 'informix'
-
-DB_DBA = @DB_DBA@
-
-DB_HOST = @DB_HOST@
-
-# If you're not running your database server on its default port,
-# specifiy the port the database server is running on below.
-# It's generally safe to leave this blank
-
-DB_PORT = @DB_PORT@
-
-
-
-
-#
-# Set this to the canonical name of the interface RT will be talking to the
-# database on. If you said that the RT_DB_HOST above was "localhost," this
-# should be too. This value will be used to grant rt access to the database.
-# If you want to access the RT database from multiple hosts, you'll need
-# to grant those database rights by hand.
-#
-
-DB_RT_HOST = @DB_RT_HOST@
-
-# set this to the name you want to give to the RT database in
-# your database server. For Oracle, this should be the name of your sid
-
-DB_DATABASE = @DB_DATABASE@
-DB_RT_USER = @DB_RT_USER@
-DB_RT_PASS = @DB_RT_PASS@
-
-# }}}
-
-
-####################################################################
-
-all: default
-
-default:
- @echo "Please read RT's readme before installing. Not doing so could"
- @echo "be dangerous."
-
-
-
-instruct:
- @echo "Congratulations. RT has been installed. "
- @echo ""
- @echo ""
- @echo "You must now configure RT by editing $(SITE_CONFIG_FILE)."
- @echo ""
- @echo "(You will definitely need to set RT's database password in "
- @echo "$(SITE_CONFIG_FILE) before continuing. Not doing so could be "
- @echo "very dangerous. Note that you do not have to manually add a "
- @echo "database user or set up a database for RT. These actions will be "
- @echo "taken care of in the next step.)"
- @echo ""
- @echo "After that, you need to initialize RT's database by running"
- @echo " 'make initialize-database'"
-
-# @echo " or by executing "
-# @echo " '$(RT_SBIN_PATH)/rt-setup-database --action init \ "
-# @echo " --dba $(DB_DBA) --prompt-for-dba-password'"
-
-
-
-upgrade-instruct:
- @echo "Congratulations. RT has been upgraded. You should now check-over"
- @echo "$(CONFIG_FILE) for any necessary site customization. Additionally,"
- @echo "you should update RT's system database objects by running "
- @echo " ls etc/upgrade"
- @echo ""
- @echo "For each item in that directory whose name is greater than"
- @echo "your previously installed RT version, run:"
- @echo " $(RT_SBIN_PATH)/rt-setup-database --dba $(DB_DBA) --prompt-for-dba-password --action schema --datadir etc/upgrade/<version>"
- @echo " $(RT_SBIN_PATH)/rt-setup-database --dba $(DB_DBA) --prompt-for-dba-password --action acl --datadir etc/upgrade/<version>"
- @echo " $(RT_SBIN_PATH)/rt-setup-database --dba $(DB_DBA) --prompt-for-dba-password --action insert --datadir etc/upgrade/<version>"
-
-
-upgrade: config-install dirs files-install fixperms upgrade-instruct
-
-upgrade-noclobber: config-install libs-install html-install bin-install local-install doc-install fixperms
-
-
-# {{{ dependencies
-testdeps:
- $(PERL) ./sbin/rt-test-dependencies --verbose --with-$(DB_TYPE)
-
-depends: fixdeps
-
-fixdeps:
- $(PERL) ./sbin/rt-test-dependencies --verbose --install --with-$(DB_TYPE)
-
-#}}}
-
-# {{{ fixperms
-fixperms:
- # Make the libraries readable
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(RT_LIB_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(RT_LIB_PATH)
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(RT_LIB_PATH)
-
-
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
- chmod $(RT_READABLE_DIR_MODE) $(DESTDIR)/$(RT_BIN_PATH)
-
- chmod 0755 $(DESTDIR)/$(RT_ETC_PATH)
- chmod 0500 $(DESTDIR)/$(RT_ETC_PATH)/*
-
- #TODO: the config file should probably be able to have its
- # owner set separately from the binaries.
- chown -R $(BIN_OWNER) $(DESTDIR)/$(RT_ETC_PATH)
- chgrp -R $(RTGROUP) $(DESTDIR)/$(RT_ETC_PATH)
-
- chmod 0550 $(DESTDIR)/$(CONFIG_FILE)
- chmod 0550 $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- # Make the interfaces executable
- chown $(BIN_OWNER) $(BINARIES)
- chgrp $(RTGROUP) $(BINARIES)
- chmod 0755 $(BINARIES)
-
- # Make the web ui readable by all.
- chmod -R u+rwX,go-w,go+rX $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH) \
- $(DESTDIR)/$(LOCAL_LEXICON_PATH)
- chown -R $(LIBS_OWNER) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- chgrp -R $(LIBS_GROUP) $(DESTDIR)/$(MASON_HTML_PATH) \
- $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
-
- # Make the web ui's data dir writable
- chmod 0770 $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chown -R $(WEB_USER) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
- chgrp -R $(WEB_GROUP) $(DESTDIR)/$(MASON_DATA_PATH) \
- $(DESTDIR)/$(MASON_SESSION_PATH)
-# }}}
-
-# {{{ dirs
-dirs:
- mkdir -p $(DESTDIR)/$(RT_LOG_PATH)
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/cache
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/etc
- mkdir -p $(DESTDIR)/$(MASON_DATA_PATH)/obj
- mkdir -p $(DESTDIR)/$(MASON_SESSION_PATH)
- mkdir -p $(DESTDIR)/$(MASON_HTML_PATH)
- mkdir -p $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- mkdir -p $(DESTDIR)/$(LOCAL_ETC_PATH)
- mkdir -p $(DESTDIR)/$(LOCAL_LIB_PATH)
- mkdir -p $(DESTDIR)/$(LOCAL_LEXICON_PATH)
-# }}}
-
-install: config-install dirs files-install fixperms instruct
-
-files-install: libs-install etc-install bin-install sbin-install html-install local-install doc-install
-
-config-install:
- mkdir -p $(DESTDIR)/$(CONFIG_FILE_PATH)
- -cp etc/RT_Config.pm $(DESTDIR)/$(CONFIG_FILE)
- [ -f $(DESTDIR)/$(SITE_CONFIG_FILE) ] || cp etc/RT_SiteConfig.pm $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- chgrp $(RTGROUP) $(DESTDIR)/$(CONFIG_FILE)
- chown $(BIN_OWNER) $(DESTDIR)/$(CONFIG_FILE)
-
- chgrp $(RTGROUP) $(DESTDIR)/$(SITE_CONFIG_FILE)
- chown $(BIN_OWNER) $(DESTDIR)/$(SITE_CONFIG_FILE)
-
- @echo "Installed configuration. about to install rt in $(RT_PATH)"
-
-test:
- $(PERL) -Ilib lib/t/00smoke.t
-
-regression-install: config-install
- $(PERL) -pi -e 's/Set\(\$$DatabaseName.*\);/Set\(\$$DatabaseName, "rt3regression"\);/' $(DESTDIR)/$(CONFIG_FILE)
-
-regression: regression-install dirs files-install libs-install sbin-install bin-install regression-instruct regression-reset-db testify-pods fixperms apachectl run-regression
-
-run-regression:
- prove -Ilib lib/t/setup_regression.t lib/t/autogen/ lib/t/regression/
-
-
-regression-noapache: regression-install dirs files-install libs-install sbin-install bin-install regression-instruct regression-reset-db testify-pods fixperms start-httpd run-regression
-
-regression-quiet:
- $(PERL) sbin/regression_harness
-
-regression-instruct:
- @echo "About to wipe your database for a regression test. ABORT NOW with Control-C"
-
-
-# {{{ database-installation
-
-regression-reset-db:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action drop --dba $(DB_DBA) --dba-password '' --force
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action init --dba $(DB_DBA) --dba-password ''
-
-initdb :: initialize-database
-
-initialize-database:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action init --dba $(DB_DBA) --prompt-for-dba-password
-
-dropdb:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/rt-setup-database --action drop --dba $(DB_DBA) --prompt-for-dba-password
-
-insert-approval-data:
- $(PERL) $(DESTDIR)/$(RT_SBIN_PATH)/insert_approval_scrips
-# }}}
-
-# {{{ libs-install
-libs-install:
- [ -d $(DESTDIR)/$(RT_LIB_PATH) ] || mkdir -p $(DESTDIR)/$(RT_LIB_PATH)
- -cp -rp lib/* $(DESTDIR)/$(RT_LIB_PATH)
-# }}}
-
-# {{{ html-install
-html-install:
- [ -d $(DESTDIR)/$(MASON_HTML_PATH) ] || mkdir -p $(DESTDIR)/$(MASON_HTML_PATH)
- -cp -rp ./html/* $(DESTDIR)/$(MASON_HTML_PATH)
-# }}}
-
-# {{{ doc-install
-doc-install:
- # RT 3.0.0 - RT 3.0.2 would accidentally create a file instead of a dir
- -[ -f $(DESTDIR)/$(RT_DOC_PATH) ] && rm $(DESTDIR)/$(RT_DOC_PATH)
- [ -d $(DESTDIR)/$(RT_DOC_PATH) ] || mkdir -p $(DESTDIR)/$(RT_DOC_PATH)
- -cp -rp ./README $(DESTDIR)/$(RT_DOC_PATH)
-# }}}
-
-# {{{ etc-install
-
-etc-install:
- mkdir -p $(DESTDIR)/$(RT_ETC_PATH)
- -cp -rp \
- etc/acl.* \
- etc/initialdata \
- etc/schema.* \
- $(DESTDIR)/$(RT_ETC_PATH)
-# }}}
-
-# {{{ sbin-install
-
-sbin-install:
- mkdir -p $(DESTDIR)/$(RT_SBIN_PATH)
- chmod +x \
- sbin/rt-dump-database \
- sbin/rt-setup-database \
- sbin/rt-test-dependencies
- -cp -rp \
- sbin/rt-dump-database \
- sbin/rt-setup-database \
- sbin/rt-test-dependencies \
- $(DESTDIR)/$(RT_SBIN_PATH)
-
-# }}}
-
-# {{{ bin-install
-
-bin-install:
- mkdir -p $(DESTDIR)/$(RT_BIN_PATH)
- chmod +x bin/rt-mailgate \
- bin/rt-crontool
- -cp -rp \
- bin/rt-mailgate \
- bin/mason_handler.fcgi \
- bin/mason_handler.scgi \
- bin/standalone_httpd \
- bin/mason_handler.svc \
- bin/rt \
- bin/webmux.pl \
- bin/rt-crontool \
- $(DESTDIR)/$(RT_BIN_PATH)
-# }}}
-
-# {{{ local-install
-local-install:
- -cp -rp ./local/html/* $(DESTDIR)/$(MASON_LOCAL_HTML_PATH)
- -cp -rp ./local/po/* $(DESTDIR)/$(LOCAL_LEXICON_PATH)
- -cp -rp ./local/etc/* $(DESTDIR)/$(LOCAL_ETC_PATH)
-# }}}
-
-# {{{ Best Practical Build targets -- no user servicable parts inside
-
-
-POD2TEST_EXE = sbin/extract_pod_tests
-
-testify-pods:
- [ -d lib/t/autogen ] || mkdir lib/t/autogen
- find lib -name \*pm |grep -v .svn | grep -v \*.in |xargs -n 1 $(PERL) $(POD2TEST_EXE)
- find bin -type f |grep -v .svn | grep -v \~ | grep -v "\.in" | xargs -n 1 $(PERL) $(POD2TEST_EXE)
- find lib -name \*pm |grep -v .svn | grep -v \*.in |xargs -n 1 $(PERL) $(POD2TEST_EXE)
- find bin -type f |grep -v .svn | grep -v \~ | grep -v "\.in" | xargs -n 1 $(PERL) $(POD2TEST_EXE)
-
-
-
-regenerate-catalogs:
- $(PERL) sbin/extract-message-catalog
-
-license-tag:
- $(PERL) sbin/license_tag
-
-factory: initialize-database
- cd lib; $(PERL) ../sbin/factory $(DB_DATABASE) RT
-
-reconfigure:
- aclocal -I m4
- autoconf
- chmod 755 ./configure
- ./configure
-
-start-httpd:
- $(PERL) bin/standalone_httpd 80 &
-
-apachectl:
- $(APACHECTL) stop
- sleep 10
- $(APACHECTL) start
- sleep 5
-# }}}
diff --git a/rt/README b/rt/README
deleted file mode 100755
index 7c5e4d4..0000000
--- a/rt/README
+++ /dev/null
@@ -1,300 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-RT is an enterprise-grade issue tracking system. It allows
-organizations to keep track of their to-do lists, who is working
-on which tasks, what's already been done, and when tasks were
-completed. It is available under the terms of version 2 of the GNU
-General Public License (GPL), so it doesn't cost anything to set
-up and use.
-
-
- Jesse Vincent
- Best Practical Solutions, LLC
- March 2003
-
-REQUIRED PACKAGES:
-------------------
-
-o Perl 5.8.0 or later (http://www.perl.com).
-
- (If you intend to use the FastCGI or SpeedyCGI support, you
- need to make sure that perl has been built with support for
- setgid perl scripts.)`
-
- Perl 5.6.1 is currently deprecated and will be officially desupported
- in a future release
-
-o A DB backend; MySQL is recommended ( http://www.mysql.com )
- Currently supported: Mysql 4.0.13 or later.
- Postgres 7.2 or later.
-
- Mysql 3.23.46 or newer with support for InnoDB
- is currently deprecated and will be officially
- desupported in a future release.
-
-o Apache version 1.3.x or 2.x (http://httpd.apache.org)
- with mod_perl -- (http://perl.apache.org )
- or a webserver with FastCGI support (www.fastcgi.com)
-
- mod_perl 2.0 isn't quite ready for prime_time just yet;
- Best Practical Solutions strongly recommends that sites use
- Apache 1.3 or FastCGI.
-
- Compiling mod_perl on Apache 1.3.x as a DSO has been known
- to have massive stability problems and is not recommended.
-
- mod_perl 1.x must be build with EVERYTHING=1
-
- RT's FastCGI handler runs setgid to the 'rt' group to
- protect RT's database password. You may need to install
- a special "suidperl" package or reconfigure your perl
- setup to support "setuid scripts" if you intend to use RT
- with FastCGI.
-
- Debian GNU/* 3.0+: the package which installs suidperl is
- called perl-suid, and should work without any tweaking.
-
- FreeBSD 4.2+: the package is called sperl, and should
- install a suidperl that just works
-
- Conectiva Linux 6.0+: suidperl is installed by default when
- perl is installed, but the program /bin/suidperl is not setuid.
- You must use chmod to make it setuid.
-
-
-
-o Various and sundry perl modules
- A tool included with RT takes care of the installation of
- most of these automatically during the install process.
-
- The tool supplied with RT uses Perl's CPAN system
- (http://www.cpan.org) to install modules. Some operating
- systems package all or some of the modules required and
- you may be better off installing the modules that way.
-
-
-GENERAL INSTALLATION
---------------------
-
-This is a rough guide to installing RT. For more detail, you'll want
-to read 'Chapter 2: Installing' in RT's manual, available at
-http://www.bestpractical.com/rt
-
-1 Unpack this distribution SOMWHERE OTHER THAN where you want to install RT
-
- Granted, you've already got it open. To do this cleanly:
-
- tar xzvf rt.tar.gz -C /tmp
-
-2 Run the "configure" script.
-
- ./configure --help to see the list of options
- ./configure (with the flags you want)
-
-3 Satisfy RT's myriad dependencies.
-
-3.1 Check for compliance:
-
- perl sbin/rt-test-dependencies \
- --with-<databasename> --with-<web-environment>
-
- databasename is one of: mysql, postgres
- web-environment is one of: fastcgi, modperl1, modperl2
-
-3.2 If there are unsatisfied dependencies, install them by hand or run:
-
- perl sbin/rt-test-dependencies \
- --with-<databasename> --with-<web-environment> --install
-
-
-3.3 Check to make sure everything was installed properly:
-
- perl sbin/rt-test-dependencies \
- --with-<databasename> --with-<web-environment>
-
-4 Create a group called 'rt'
-
-5a FOR A NEW INSTALLATION:
-
- As root, type:
- make install (replace "make" with the local name for
- Make, if you need to)
-
-
- make initialize-database
-
-
- If the make fails, type:
- make dropdb
- and start over from step 5a
-
-5b FOR UPGRADING: (Within the RT 3.0.x series)
-
- As root, type:
- make upgrade (replace "make" with the local name for
- Make, if you need to)
-
- This will build new binaries, config files and libraries without
- overwriting your RT database.
-
- It may then instruct you to update your RT system database objects
-
-6 Edit etc/RT_SiteConfig.pm in your RT installation directory, by specifying
- any values you need to change from the defaults in etc/RT_Config.pm
-
-7 Configure the email and web gateways, as described below.
-
-8 Stop and start your webserver, so it picks up your configuration changes.
-
- NOTE: root's password for the web interface is "password"
- (without the quotes.) Not changing this is a SECURITY risk
-
-9 Configure RT per the instructions in RT's manual.
-
- Until you do this, RT will not be able to send or receive email,
- nor will it be more than marginally functional. This is not an
- optional step.
-
-
-THE WEB INTERFACE
------------------
-
-RT's web interface is based around HTML::Mason, which works best with the mod_perl
-perl interpreter within Apache httpd. Alternatively, support for the FastCGI
-(and plain CGI) interface is also provided as 'bin/mason_handler.fcgi'.
-
-Apache
- You'll need to add a few lines to your httpd.conf telling it about RT:
-
-<VirtualHost your.ip.address>
- ServerName your.rt.server.hostname
- DocumentRoot /opt/rt3/share/html
- AddDefaultCharset UTF-8
-
- # this line applies to Apache2+mod_perl2 only
- PerlModule Apache2 Apache::compat
-
- PerlModule Apache::DBI
- PerlRequire /opt/rt3/bin/webmux.pl
-
- # this section applies to Apache 1 only
- <Location />
- SetHandler perl-script
- PerlHandler RT::Mason
- </Location>
-
- # this section applies to Apache2+mod_perl2 only
- <FilesMatch "\.html$">
- SetHandler perl-script
- PerlHandler RT::Mason
- </FilesMatch>
- <LocationMatch "/Attachment/">
- SetHandler perl-script
- PerlHandler RT::Mason
- </LocationMatch>
- <LocationMatch "/REST/">
- SetHandler perl-script
- PerlHandler RT::Mason
- </LocationMatch>
-</VirtualHost>
-
-
-
-SETTING UP THE MAIL GATEWAY
----------------------------
-
-An alias for the initial queue will need to be made in either your
-global mail aliases file (if you are using NIS) or locally on your
-machine.
-
-Add the following lines to /etc/aliases (or your local equivalent) :
-
-rt: "|/opt/rt3/bin/rt-mailgate --queue general --action correspond --url http://localhost/"
-rt-comment: "|/opt/rt3/bin/rt-mailgate --queue general --action comment --url http://localhost/"
- | | |
- <queue-name>----/ | |
- | |
- <correspond or comment depending on whether | |
- the mail should be resent to the requestor>---/ |
- |
- <URL for RT's web interface>---/
-
-
-BUGS
-----
-
-To report a bug, send email to rt-3.0-bugs@fsck.com.
-
-GETTING HELP
-------------
-
-If RT is mission-critical for you or if you use it heavily, we recommend that
-you purchase a commercial support contract. Details on support contracts
-are available at http://www.bestpractical.com.
-
-If you're interested in having RT extended or customized or would like more
-information about commercial support options, please send email to
-<sales@bestpractical.com> to discuss rates and availability.
-
-
-RT-USERS MAILINGLIST
---------------------
-
-To keep up to date on the latest RT tips, techniques and extensions,
-you probably want to join the rt-users mailing list. Send a message to:
-
- rt-users-request@lists.fsck.com
-
-With the body of the message consisting of only the word:
-
- subscribe
-
-If you're interested in hacking on RT, you'll want to subscribe to
-rt-devel@lists.fsck.com. Subscribe to it with instructions similar to
-those above.
-
-Address questions about the stable release to the rt-users list, and
-questions about the development version to the rt-devel list. If you feel
-your questions are best not asked publicly, send them personally to
-<jesse@bestpractical.com>.
-
-
-RT WEBSITE
-----------
-
-For current information about RT, check out the RT website at
- http://www.bestpractical.com/
-
-You'll find screenshots, a pointer to the current version of RT, contributed
-patches, and lots of other great stuff.
-
-
-TROUBLESHOOTING
----------------
-
-If the solution to the problem you're running into isn't obvious and you've
-checked the FAQ, feel free to send mail to rt-users@fsck.com (for released
-versions of RT) or rt-devel@fsck.com (for development versions).
-
-Thanks!
diff --git a/rt/README.Oracle b/rt/README.Oracle
deleted file mode 100644
index 41bec82..0000000
--- a/rt/README.Oracle
+++ /dev/null
@@ -1,37 +0,0 @@
-In order to install RT with Oracle, the database must first be
-prepared. Ports of RT to other databases will automatically create
-the RT schema. This is not done for Oracle because most sites wishing
-to deploy RT on Oracle will have choose to make specific configuration
-of the RT user, for example to select the appropriate tablespace or to
-set up a resource profile. The RT user must have appropriate
-privileges similar to the resource and connect roles and must have the
-"query rewrite" system privilege.
- Here is an example of commands to create an RT user called "RT" with
-a password of "rt".
-
- create user rt identified by rt default tablespace users temporary
- tablespace temp;
- grant resource, connect, query rewrite to rt;
-
-
-RT should not run its schema creation as the Oracle DBA; instead the
-schema creation should be run as the RT user. To accomplish this set
-the --with-rt-dba configuration parameter to the RT user, not to the
-Oracle DBA. As an example, the following might be appropriate to
-configure RT for the example.com Oracle database.
-
- ./configure --prefix /usr/local/rt --with-db-type=Oracle \
- --with-db-dba=rt --with-db-database=example.com \
- --with-db-rt-user=rt \
- --with-db-rt-pass=rt
-
-
-As with all databases it is important to analyze the Schema and get
-current statistics after any significant dataset change. Oracle's
-cost-based optimizer can provide particularly bad performance when the
-schema statistics are significantly inaccurate. To analyze the schema
-of a user called rt, execute the following from withing Sqlplus.
-
- execute dbms_utility.analyze_schema( 'RT', 'estimate');
-
-
diff --git a/rt/UPGRADING b/rt/UPGRADING
deleted file mode 100644
index 11a26e8..0000000
--- a/rt/UPGRADING
+++ /dev/null
@@ -1,205 +0,0 @@
-UPGRADING
-
-Detailed information about upgrading can be found in the README file.
-This document is intended to supplement the instructions in that file.
-
-Additional information about upgrading from specific versions of RT is
-contained below.
-
-*******
-WARNING
-*******
-
-Before making any changes to your database, always ensure that you have a
-complete current backup. If you don't have a current backup, you could
-accidentally damage your database and lose data or worse.
-
-*******
-
-UPGRADING FROM 3.3.14 and earlier - Changes:
-
-The "ModifyObjectCustomFieldValues" right name was too long. It's been changed to
-"ModifyCustomField"
-
-
-UPGRADING FROM 3.3.11 and earlier - Changes:
-
-= Rights Changes =
-
-Custom Fields now have an additional right "ModifyCustomField".
-This right governs whether a user can modify an object's custom field values
-for a particular custom field. This includes adding, deleting and changing values.
-
-
-UPGRADING FROM 3.2 and earlier - Changes:
-
-= Rights changes =
-
-Now, if you want any user to be able to access the Admin tools (a.k.a.
-the Configuration tab), you must grant that user the "ShowConfigTab"
-right. Making the user a privileged user is no longer sufficient.
-
-"SuperUser" users are no longer automatically added to the list of users who can own tickets in a queue. You now need to explicitly give them the "own tickets" right.
-
-
-
-UPGRADING FROM 3.0.x - Changes:
-
-= Installation =
-
-We recommend you move your existing /opt/rt3 tree completely out
-of the way before installating the newversion of RT, to make sure
-that you don't inadvertently leave old files hanging around.
-
-= Rights changes =
-
-Now, if you want RT to automatically create new users upon ticket
-submission, you MUST grant 'Everyone' the right to create tickets.
-Granting this right only to "Unprivileged Users" is now insufficient.
-
-
-= FastCGI configuration =
-
-This section is a snapshot of the documentation available at:
-
-http://wiki.bestpractical.com/index.cgi?FastCGIConfiguration
-
-It's worth checking out that resource if these instructions don't
-work right for you
-
-
-RT 3.2 includes a signficant change to the FastCGI handler. It is
-no longer "setgid" to the RT group. Perl's setid support has been
-deprecated for the last several releases and a number of platforms
-don't bundle the "sperl" or "suidperl" executable by default.
-Additionally, when perl is run SetUID or SetGID, the interpreter
-is automatically switched into /taint mode/, in which all incoming
-data, no matter the source is considered suspect. At first, this
-seems like a great idea. But perl's taint mode is a big sledgehammer
-used to hit small nails. Many perl libraries aren't tested in taint
-mode and will fail when least expected. Moving away from a SetGID
-FastCGI handler will enable more users to have a smoother RT
-experience. It does require some changes in how you set up and
-configure RT.
-
-Beginning with RT 3.2, you have several choices about how to configure
-RT to run as a FastCGI:
-
-
-== Install RT as the user your webserver runs as ==
-
-Pros: Very easy to configure
-
-Cons: Your webserver has access to RT's private database password
-
-
-=== How To
-
-When installing RT, run:
-
- ./configure --with-web-user="webuser" --with-web-group="webgroup" \
- --with-rt-user="webuser" --with-rt-group="webgroup"
-
-(Don't forget to include other configuration options that matter to you)
-
-If you're using apache, you'll want to add something like the following
-to your httpd.conf:
-
- <VirtualHost rt.example.com>
-
- # Pass through requests to display images
- Alias /NoAuth/images/ /opt/rt3/share/html/NoAuth/images/
-
- # Tell FastCGI to put its temporary files somewhere sane.
- FastCgiIpcDir /tmp
-
- FastCgiServer /opt/rt3/bin/mason_handler.fcgi -idle-timeout 120
-
- AddHandler fastcgi-script fcgi
- ScriptAlias / /opt/rt3/bin/mason_handler.fcgi/
-
- </VirtualHost>
-
-
-== Make your webserver user a member of the "rt" group ==
-
-Pros: Easy to configure
-
-Cons: Your webserver has access to RT's private database password
-
-
-=== How To
-
-Install RT normally. Add whichever user your webserver runs as
-(whatever you set --with-web-user to) to the "rt" group (whatever
-you set --with-rt-group to) in /etc/groups.
-
-To find out what user your webserver runs as, look for the line
-
- User some-user-name
-
-in your apache httpd.conf. Common values are www, www-data, web and nobody.
-
-
-
-== Run RT using _suexec_ or a similar mechanism
-
-
-Pros: More secure
-
-Cons: Sometimes very difficult to configure
-
-Apache's _suexec_ utility allows you run CGI programs as specific
-users. Because that's a relatively heavy responsibility, it's very,
-very conservative about what it's willing to do for you. On top of
-that, Apache's mod_fastcgi plugin doesn't respect all of suexec's
-features. While suexec is designed to execute CGI scripts in a
-given virtual host's !DocumentRoot, It can only execute FastCGI
-scripts in the system's *main* !DocumentRoot.
-
-This means you have to copy the RT FastCGI handler into your main
-!DocumentRoot
-
-The following example !VirtualHost will run RT as a FastCGI on
-Apache 1.3 on a Debian Linux server.
-
-
- <VirtualHost rt.example.com>
-
- DocumentRoot /opt/rt3/share/html
-
- # Set the rt user and group as the executing user for this virtual host
- User rt
- Group rt
-
-
- # Pass through requests to display images
- Alias /NoAuth/images/ /opt/rt3/share/html/NoAuth/images/
-
- # Tell FastCGI to put its temporary files somewhere sane.
- FastCgiIpcDir /tmp
-
- # Tell FastCGI that it should use apache's "suexec" binary to call any
- # FastCGI script.
- # This is a GLOBAL setting
- FastCgiWrapper /usr/lib/apache/suexec
-
- # You need to copy the rt mason_handler.fcgi into a directory inside
- # the main server DocumentRoot
- # That directory must be owned by the user and group that will execute
- # the FastCGI script
- # In this case, that directory is /var/www/rt
-
- # To find the local DocumentRoot, run "suexec -V" as root and look for the
- # -D DOC_ROOT parameter.
-
- # Apache 1.3 discards the user and group parameters on the FastCgiServer
- # line. Apache 2.0 requires them.
-
- FastCgiServer /var/www/rt/mason_handler.fcgi -idle-timeout 120 -user rt -group rt
-
- AddHandler fastcgi-script fcgi
- ScriptAlias / /var/www/rt/mason_handler.fcgi/
-
- </VirtualHost>
-
diff --git a/rt/aclocal.m4 b/rt/aclocal.m4
deleted file mode 100644
index 67ff30d..0000000
--- a/rt/aclocal.m4
+++ /dev/null
@@ -1,158 +0,0 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p6
-
-dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
-
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
-
-dnl
-dnl @synopsis RT_ENABLE_LAYOUT()
-dnl
-dnl Enable a specific directory layout for the installation to use.
-dnl This configures a command-line parameter that can be specified
-dnl at ./configure invocation.
-dnl
-dnl The use of this feature in this way is a little hackish, but
-dnl better than a heap of options for every directory.
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 code.
-dnl
-
-AC_DEFUN([RT_ENABLE_LAYOUT],[
-AC_ARG_ENABLE(layout,
- AC_HELP_STRING([--enable-layout=LAYOUT],
- [Use a specific directory layout (Default: RT3)]),
- LAYOUT=$enableval)
-
-if test "x$LAYOUT" = "x"; then
- LAYOUT="RT3"
-fi
-RT_LAYOUT($srcdir/config.layout, $LAYOUT)
-AC_MSG_CHECKING(for chosen layout)
-if test "x$rt_layout_name" = "xno"; then
- if test "x$LAYOUT" = "xno"; then
- AC_MSG_RESULT(none)
- else
- AC_MSG_RESULT($LAYOUT)
- fi
- AC_MSG_ERROR([a valid layout must be specified (or the default used)])
-else
- AC_SUBST(rt_layout_name)
- AC_MSG_RESULT($rt_layout_name)
-fi
-])
-
-dnl
-dnl @synopsis RT_LAYOUT(configlayout, layoutname)
-dnl
-dnl This macro reads an Apache-style layout file (specified as the
-dnl configlayout parameter), and searches for a specific layout
-dnl (named using the layoutname parameter).
-dnl
-dnl The entries for a given layout are then inserted into the
-dnl environment such that they become available as substitution
-dnl variables. In addition, the rt_layout_name variable is set
-dnl (but not exported) if the layout is valid.
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 codebase.
-dnl
-
-AC_DEFUN([RT_LAYOUT],[
- if test ! -f $srcdir/config.layout; then
- AC_MSG_WARN([Layout file $srcdir/config.layout not found])
- rt_layout_name=no
- else
- pldconf=./config.pld
- $PERL -0777 -p -e "\$layout = '$2';" -e '
- s/.*<Layout\s+$layout>//gims;
- s/\<\/Layout\>.*//s;
- s/^#.*$//m;
- s/^\s+//gim;
- s/\s+$/\n/gim;
- s/\+$/\/rt3/gim;
- # m4 will not let us just use $1, we need @S|@1
- s/^\s*((?:bin|sbin|libexec|data|sysconf|sharedstate|localstate|lib|include|oldinclude|info|man)dir)\s*:\s*(.*)$/@S|@1=@S|@2/gim;
- s/^\s*(.*?)\s*:\s*(.*)$/\(test "x\@S|@@S|@1" = "xNONE" || test "x\@S|@@S|@1" = "x") && @S|@1=@S|@2/gim;
- ' < $1 > $pldconf
-
- if test -s $pldconf; then
- rt_layout_name=$2
- . $pldconf
- changequote({,})
- for var in prefix exec_prefix bindir sbindir \
- sysconfdir mandir libdir datadir htmldir \
- localstatedir logfiledir masonstatedir \
- sessionstatedir customdir custometcdir customhtmldir \
- customlexdir customlibdir manualdir; do
- eval "val=\"\$$var\""
- val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
- val=`echo $val |
- sed -e 's:[\$]\([a-z_]*\):${\1}:g'`
- eval "$var='$val'"
- done
- changequote([,])
- else
- rt_layout_name=no
- fi
- #rm $pldconf
- fi
- RT_SUBST_EXPANDED_ARG(prefix)
- RT_SUBST_EXPANDED_ARG(exec_prefix)
- RT_SUBST_EXPANDED_ARG(bindir)
- RT_SUBST_EXPANDED_ARG(sbindir)
- RT_SUBST_EXPANDED_ARG(sysconfdir)
- RT_SUBST_EXPANDED_ARG(mandir)
- RT_SUBST_EXPANDED_ARG(libdir)
- RT_SUBST_EXPANDED_ARG(datadir)
- RT_SUBST_EXPANDED_ARG(htmldir)
- RT_SUBST_EXPANDED_ARG(manualdir)
- RT_SUBST_EXPANDED_ARG(localstatedir)
- RT_SUBST_EXPANDED_ARG(logfiledir)
- RT_SUBST_EXPANDED_ARG(masonstatedir)
- RT_SUBST_EXPANDED_ARG(sessionstatedir)
- RT_SUBST_EXPANDED_ARG(customdir)
- RT_SUBST_EXPANDED_ARG(custometcdir)
- RT_SUBST_EXPANDED_ARG(customhtmldir)
- RT_SUBST_EXPANDED_ARG(customlexdir)
- RT_SUBST_EXPANDED_ARG(customlibdir)
-])dnl
-
-dnl
-dnl @synopsis RT_SUBST_EXPANDED_ARG(var)
-dnl
-dnl Export (via AC_SUBST) a given variable, along with an expanded
-dnl version of the variable (same name, but with exp_ prefix).
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 source.
-dnl
-
-AC_DEFUN([RT_SUBST_EXPANDED_ARG],[
- RT_EXPAND_VAR(exp_$1, [$]$1)
- AC_SUBST($1)
- AC_SUBST(exp_$1)
-])
-
-dnl
-dnl @synopsis RT_EXPAND_VAR(baz, $fraz)
-dnl
-dnl Iteratively expands the second parameter, until successive iterations
-dnl yield no change. The result is then assigned to the first parameter.
-dnl
-dnl This code is heavily borrowed from the Apache 2 codebase.
-dnl
-
-AC_DEFUN([RT_EXPAND_VAR],[
- ap_last=''
- ap_cur='$2'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- $1="${ap_cur}"
-])
-
diff --git a/rt/autom4te.cache/output.0 b/rt/autom4te.cache/output.0
deleted file mode 100644
index 3d27db9..0000000
--- a/rt/autom4te.cache/output.0
+++ /dev/null
@@ -1,2771 +0,0 @@
-@%:@! /bin/sh
-@%:@ From configure.ac Revision: 1.1 .
-@%:@ Guess values for system-dependent variables and create Makefiles.
-@%:@ Generated by GNU Autoconf 2.53 for RT 3.0.9.
-@%:@
-@%:@ Report bugs to <rt-3.0-bugs@fsck.com>.
-@%:@
-@%:@ Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
-@%:@ Free Software Foundation, Inc.
-@%:@ This configure script is free software; the Free Software Foundation
-@%:@ gives unlimited permission to copy, distribute and modify it.
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-
-# NLS nuisances.
-# Support unset when possible.
-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-(set +x; test -n "`(LANG=C; export LANG) 2>&1`") &&
- { $as_unset LANG || test "${LANG+set}" != set; } ||
- { LANG=C; export LANG; }
-(set +x; test -n "`(LC_ALL=C; export LC_ALL) 2>&1`") &&
- { $as_unset LC_ALL || test "${LC_ALL+set}" != set; } ||
- { LC_ALL=C; export LC_ALL; }
-(set +x; test -n "`(LC_TIME=C; export LC_TIME) 2>&1`") &&
- { $as_unset LC_TIME || test "${LC_TIME+set}" != set; } ||
- { LC_TIME=C; export LC_TIME; }
-(set +x; test -n "`(LC_CTYPE=C; export LC_CTYPE) 2>&1`") &&
- { $as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set; } ||
- { LC_CTYPE=C; export LC_CTYPE; }
-(set +x; test -n "`(LANGUAGE=C; export LANGUAGE) 2>&1`") &&
- { $as_unset LANGUAGE || test "${LANGUAGE+set}" != set; } ||
- { LANGUAGE=C; export LANGUAGE; }
-(set +x; test -n "`(LC_COLLATE=C; export LC_COLLATE) 2>&1`") &&
- { $as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set; } ||
- { LC_COLLATE=C; export LC_COLLATE; }
-(set +x; test -n "`(LC_NUMERIC=C; export LC_NUMERIC) 2>&1`") &&
- { $as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set; } ||
- { LC_NUMERIC=C; export LC_NUMERIC; }
-(set +x; test -n "`(LC_MESSAGES=C; export LC_MESSAGES) 2>&1`") &&
- { $as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set; } ||
- { LC_MESSAGES=C; export LC_MESSAGES; }
-
-
-# Name of the executable.
-as_me=`(basename "$0") 2>/dev/null ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
- if (PATH=".;."; conftest.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conftest.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=$PATH_SEPARATOR; export CDPATH; }
-
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-exec 6>&1
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Maximum number of lines to put in a shell here document.
-# This variable seems obsolete. It should probably be removed, and
-# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
-
-# Identity of this package.
-PACKAGE_NAME='RT'
-PACKAGE_TARNAME='rt'
-PACKAGE_VERSION='3.0.9'
-PACKAGE_STRING='RT 3.0.9'
-PACKAGE_BUGREPORT='rt-3.0-bugs@fsck.com'
-
-ac_unique_file="lib/RT.pm.in"
-ac_default_prefix=/opt/rt3
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-ac_prev=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_option in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- eval "enable_$ac_feature=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_$ac_feature='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "with_$ac_package='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
- eval "with_$ac_package=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
- eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# Be sure to have absolute paths.
-for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used." >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$0" : 'X\(//\)[^/]' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
- { (exit 1); exit 1; }; }
- else
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
- fi
-fi
-srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-ac_env_build_alias_set=${build_alias+set}
-ac_env_build_alias_value=$build_alias
-ac_cv_env_build_alias_set=${build_alias+set}
-ac_cv_env_build_alias_value=$build_alias
-ac_env_host_alias_set=${host_alias+set}
-ac_env_host_alias_value=$host_alias
-ac_cv_env_host_alias_set=${host_alias+set}
-ac_cv_env_host_alias_value=$host_alias
-ac_env_target_alias_set=${target_alias+set}
-ac_env_target_alias_value=$target_alias
-ac_cv_env_target_alias_set=${target_alias+set}
-ac_cv_env_target_alias_value=$target_alias
-ac_env_PERL_set=${PERL+set}
-ac_env_PERL_value=$PERL
-ac_cv_env_PERL_set=${PERL+set}
-ac_cv_env_PERL_value=$PERL
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures RT 3.0.9 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-_ACEOF
-
- cat <<_ACEOF
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --infodir=DIR info documentation [PREFIX/info]
- --mandir=DIR man documentation [PREFIX/man]
-_ACEOF
-
- cat <<\_ACEOF
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of RT 3.0.9:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --enable-layout=LAYOUT Use a specific directory layout (Default: RT3)
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-speedycgi=/path/to/speedy
- path to your speedycgi binary, if it exists
- --with-rt-group=GROUP group to own all files (default: rt)
- --with-bin-owner=OWNER user that will own rt binaries (default root)
- --with-libs-owner=OWNER user that will own RT libraries (default root)
- --with-libs-group=GROUP group that will own rt binaries (default bin)
- --with-db-type=TYPE sort of database RT will use (default: mysql)
- (mysql, Pg, Oracle and Informix are valid)
- --with-db-host=HOSTNAME FQDN of database server (default: localhost)
- --with-db-port=PORT port on which the database listens on
- --with-db-rt-host=HOSTNAME
- FQDN of RT server which talks to the database server
- (default: localhost)
- --with-db-dba=DBA name of database administrator (default: root)
- --with-db-database=DBNAME
- name of the database to use (default: rt3)
- --with-db-rt-user=DBUSER
- name of database user (default: rt_user)
- --with-db-rt-pass=PASSWORD
- password for database user (default: rt_pass)
- --with-web-user=USER user the web server runs as (default: www)
- --with-web-group=GROUP group the web server runs as (default: www)
- --with-my-user-group set all users and groups to current user/group
-
-Some influential environment variables:
- PERL Perl interpreter command
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <rt-3.0-bugs@fsck.com>.
-_ACEOF
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- ac_popdir=`pwd`
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d $ac_dir || continue
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
-# absolute.
-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
-ac_abs_top_builddir=`cd "$ac_dir" && cd $ac_top_builddir && pwd`
-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_srcdir/configure.gnu; then
- echo
- $SHELL $ac_srcdir/configure.gnu --help=recursive
- elif test -f $ac_srcdir/configure; then
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
- test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
- else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi
- cd $ac_popdir
- done
-fi
-
-test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
- cat <<\_ACEOF
-RT configure 3.0.9
-generated by GNU Autoconf 2.53
-
-Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002
-Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit 0
-fi
-exec 5>config.log
-cat >&5 <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by RT $as_me 3.0.9, which was
-generated by GNU Autoconf 2.53. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-{
-cat <<_ASUNAME
-@%:@@%:@ --------- @%:@@%:@
-@%:@@%:@ Platform. @%:@@%:@
-@%:@@%:@ --------- @%:@@%:@
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- echo "PATH: $as_dir"
-done
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-@%:@@%:@ ----------- @%:@@%:@
-@%:@@%:@ Core tests. @%:@@%:@
-@%:@@%:@ ----------- @%:@@%:@
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell meta-characters.
-ac_configure_args=
-ac_sep=
-for ac_arg
-do
- case $ac_arg in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n ) continue ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- continue ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
- ac_sep=" " ;;
- esac
- # Get rid of the leading space.
-done
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Be sure not to use single quotes in there, as some shells,
-# such as our DU 5.0 friend, will then `close' the trap.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
- cat <<\_ASBOX
-@%:@@%:@ ---------------- @%:@@%:@
-@%:@@%:@ Cache variables. @%:@@%:@
-@%:@@%:@ ---------------- @%:@@%:@
-_ASBOX
- echo
- # The following way of writing the cache mishandles newlines in values,
-{
- (set) 2>&1 |
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- sed -n \
- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
- *)
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-}
- echo
- if test -s confdefs.h; then
- cat <<\_ASBOX
-@%:@@%:@ ----------- @%:@@%:@
-@%:@@%:@ confdefs.h. @%:@@%:@
-@%:@@%:@ ----------- @%:@@%:@
-_ASBOX
- echo
- sed "/^$/d" confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
- } >&5
- rm -f core core.* *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
- ' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo >confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-@%:@define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special
- # files actually), so we avoid doing that.
- if test -f "$cache_file"; then
- { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
- *) . ./$cache_file;;
- esac
- fi
-else
- { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rt_version_major=3
-
-rt_version_minor=0
-
-rt_version_patch=9
-
-test "x$rt_version_major" = 'x' && rt_version_major=0
-test "x$rt_version_minor" = 'x' && rt_version_minor=0
-test "x$rt_version_patch" = 'x' && rt_version_patch=0
-
-ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f $ac_dir/shtool; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
- { (exit 1); exit 1; }; }
-fi
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"
-ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- done
- done
- ;;
-esac
-done
-
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL=$ac_install_sh
- fi
-fi
-echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Extract the first word of "perl", so it can be a program name with args.
-set dummy perl; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_PERL+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- case $PERL in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="not found"
- ;;
-esac
-fi
-PERL=$ac_cv_path_PERL
-
-if test -n "$PERL"; then
- echo "$as_me:$LINENO: result: $PERL" >&5
-echo "${ECHO_T}$PERL" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-if test "$PERL" = 'not found'; then
- { { echo "$as_me:$LINENO: error: cannot use $PACKAGE_NAME without perl" >&5
-echo "$as_me: error: cannot use $PACKAGE_NAME without perl" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-# Check whether --with-speedycgi or --without-speedycgi was given.
-if test "${with_speedycgi+set}" = set; then
- withval="$with_speedycgi"
- SPEEDY_BIN=$withval
-else
- SPEEDY_BIN=/usr/local/bin/speedy
-fi;
-
-
-
-
-
-# Check whether --enable-layout or --disable-layout was given.
-if test "${enable_layout+set}" = set; then
- enableval="$enable_layout"
- LAYOUT=$enableval
-fi;
-
-if test "x$LAYOUT" = "x"; then
- LAYOUT="RT3"
-fi
-
- if test ! -f $srcdir/config.layout; then
- { echo "$as_me:$LINENO: WARNING: Layout file $srcdir/config.layout not found" >&5
-echo "$as_me: WARNING: Layout file $srcdir/config.layout not found" >&2;}
- rt_layout_name=no
- else
- pldconf=./config.pld
- $PERL -0777 -p -e "\$layout = '$LAYOUT';" -e '
- s/.*<Layout\s+$layout>//gims;
- s/\<\/Layout\>.*//s;
- s/^#.*$//m;
- s/^\s+//gim;
- s/\s+$/\n/gim;
- s/\+$/\/rt3/gim;
- # m4 will not let us just use $srcdir/config.layout, we need @S|@1
- s/^\s*((?:bin|sbin|libexec|data|sysconf|sharedstate|localstate|lib|include|oldinclude|info|man)dir)\s*:\s*(.*)$/@S|@1=@S|@2/gim;
- s/^\s*(.*?)\s*:\s*(.*)$/\(test "x\@S|@@S|@1" = "xNONE" || test "x\@S|@@S|@1" = "x") && @S|@1=@S|@2/gim;
- ' < $srcdir/config.layout > $pldconf
-
- if test -s $pldconf; then
- rt_layout_name=$LAYOUT
- . $pldconf
-
- for var in prefix exec_prefix bindir sbindir \
- sysconfdir mandir libdir datadir htmldir \
- localstatedir logfiledir masonstatedir \
- sessionstatedir customdir custometcdir customhtmldir \
- customlexdir customlibdir manualdir; do
- eval "val=\"\$$var\""
- val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
- val=`echo $val |
- sed -e 's:[\$]\([a-z_]*\):$\1:g'`
- eval "$var='$val'"
- done
-
- else
- rt_layout_name=no
- fi
- #rm $pldconf
- fi
-
-
- ap_last=''
- ap_cur='$prefix'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_prefix="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$exec_prefix'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_exec_prefix="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$bindir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_bindir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sbindir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sbindir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sysconfdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sysconfdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$mandir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_mandir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$libdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_libdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$datadir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_datadir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$htmldir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_htmldir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$manualdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_manualdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$localstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_localstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$logfiledir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_logfiledir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$masonstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_masonstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sessionstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sessionstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$custometcdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_custometcdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customhtmldir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customhtmldir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customlexdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customlexdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customlibdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customlibdir="${ap_cur}"
-
-
-
-
-
-echo "$as_me:$LINENO: checking for chosen layout" >&5
-echo $ECHO_N "checking for chosen layout... $ECHO_C" >&6
-if test "x$rt_layout_name" = "xno"; then
- if test "x$LAYOUT" = "xno"; then
- echo "$as_me:$LINENO: result: none" >&5
-echo "${ECHO_T}none" >&6
- else
- echo "$as_me:$LINENO: result: $LAYOUT" >&5
-echo "${ECHO_T}$LAYOUT" >&6
- fi
- { { echo "$as_me:$LINENO: error: a valid layout must be specified (or the default used)" >&5
-echo "$as_me: error: a valid layout must be specified (or the default used)" >&2;}
- { (exit 1); exit 1; }; }
-else
-
- echo "$as_me:$LINENO: result: $rt_layout_name" >&5
-echo "${ECHO_T}$rt_layout_name" >&6
-fi
-
-
-
-# Check whether --with-rt-group or --without-rt-group was given.
-if test "${with_rt_group+set}" = set; then
- withval="$with_rt_group"
- RTGROUP=$withval
-else
- RTGROUP=rt
-fi;
-
-
-
-# Check whether --with-bin-owner or --without-bin-owner was given.
-if test "${with_bin_owner+set}" = set; then
- withval="$with_bin_owner"
- BIN_OWNER=$withval
-else
- BIN_OWNER=root
-fi;
-
-
-
-# Check whether --with-libs-owner or --without-libs-owner was given.
-if test "${with_libs_owner+set}" = set; then
- withval="$with_libs_owner"
- LIBS_OWNER=$withval
-else
- LIBS_OWNER=root
-fi;
-
-
-
-# Check whether --with-libs-group or --without-libs-group was given.
-if test "${with_libs_group+set}" = set; then
- withval="$with_libs_group"
- LIBS_GROUP=$withval
-else
- LIBS_GROUP=bin
-fi;
-
-
-
-# Check whether --with-db-type or --without-db-type was given.
-if test "${with_db_type+set}" = set; then
- withval="$with_db_type"
- DB_TYPE=$withval
-else
- DB_TYPE=mysql
-fi;
-if test "$DB_TYPE" != 'mysql' -a "$DB_TYPE" != 'Pg' -a "$DB_TYPE" != 'SQLite' -a "$DB_TYPE" != 'Oracle' -a "$DB_TYPE" != 'Informix' ; then
- { { echo "$as_me:$LINENO: error: Only Oracle, Informix, Pg and mysql are valid db types" >&5
-echo "$as_me: error: Only Oracle, Informix, Pg and mysql are valid db types" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-
-if test "$DB_TYPE" = 'Oracle'; then
- test "x$ORACLE_HOME" = 'x' && { { echo "$as_me:$LINENO: error: Please declare the ORACLE_HOME environment variable" >&5
-echo "$as_me: error: Please declare the ORACLE_HOME environment variable" >&2;}
- { (exit 1); exit 1; }; }
- ORACLE_ENV_PREF="\$ENV{'ORACLE_HOME'} = '$ORACLE_HOME';"
-fi
-
-
-
-# Check whether --with-db-host or --without-db-host was given.
-if test "${with_db_host+set}" = set; then
- withval="$with_db_host"
- DB_HOST=$withval
-else
- DB_HOST=localhost
-fi;
-
-
-
-# Check whether --with-db-port or --without-db-port was given.
-if test "${with_db_port+set}" = set; then
- withval="$with_db_port"
- DB_PORT=$withval
-else
- DB_PORT=
-fi;
-
-
-
-# Check whether --with-db-rt-host or --without-db-rt-host was given.
-if test "${with_db_rt_host+set}" = set; then
- withval="$with_db_rt_host"
- DB_RT_HOST=$withval
-else
- DB_RT_HOST=localhost
-fi;
-
-
-
-# Check whether --with-db-dba or --without-db-dba was given.
-if test "${with_db_dba+set}" = set; then
- withval="$with_db_dba"
- DB_DBA=$withval
-else
- DB_DBA=root
-fi;
-
-
-
-# Check whether --with-db-database or --without-db-database was given.
-if test "${with_db_database+set}" = set; then
- withval="$with_db_database"
- DB_DATABASE=$withval
-else
- DB_DATABASE=rt3
-fi;
-
-
-
-# Check whether --with-db-rt-user or --without-db-rt-user was given.
-if test "${with_db_rt_user+set}" = set; then
- withval="$with_db_rt_user"
- DB_RT_USER=$withval
-else
- DB_RT_USER=rt_user
-fi;
-
-
-
-# Check whether --with-db-rt-pass or --without-db-rt-pass was given.
-if test "${with_db_rt_pass+set}" = set; then
- withval="$with_db_rt_pass"
- DB_RT_PASS=$withval
-else
- DB_RT_PASS=rt_pass
-fi;
-
-
-
-# Check whether --with-web-user or --without-web-user was given.
-if test "${with_web_user+set}" = set; then
- withval="$with_web_user"
- WEB_USER=$withval
-else
- WEB_USER=www
-fi;
-
-
-
-# Check whether --with-web-group or --without-web-group was given.
-if test "${with_web_group+set}" = set; then
- withval="$with_web_group"
- WEB_GROUP=$withval
-else
- WEB_GROUP=www
-fi;
-
-
-my_group=$(groups|cut -f1 -d' ')
-
-# Check whether --with-my-user-group or --without-my-user-group was given.
-if test "${with_my_user_group+set}" = set; then
- withval="$with_my_user_group"
- RTGROUP=$my_group
- BIN_OWNER=$USER
- LIBS_OWNER=$USER
- LIBS_GROUP=$my_group
- WEB_USER=$USER
- WEB_GROUP=$my_group
-fi;
-
-
-RT_VERSION_MAJOR=${rt_version_major}
-
-RT_VERSION_MINOR=${rt_version_minor}
-
-RT_VERSION_PATCH=${rt_version_patch}
-
-
-RT_PATH=${exp_prefix}
-
-RT_DOC_PATH=${exp_manualdir}
-
-RT_LOCAL_PATH=${exp_customdir}
-
-RT_LIB_PATH=${exp_libdir}
-
-RT_ETC_PATH=${exp_sysconfdir}
-
-CONFIG_FILE_PATH=${exp_sysconfdir}
-
-RT_BIN_PATH=${exp_bindir}
-
-RT_SBIN_PATH=${exp_sbindir}
-
-RT_VAR_PATH=${exp_localstatedir}
-
-RT_MAN_PATH=${exp_mandir}
-
-MASON_DATA_PATH=${exp_masonstatedir}
-
-MASON_SESSION_PATH=${exp_sessionstatedir}
-
-MASON_HTML_PATH=${exp_htmldir}
-
-LOCAL_ETC_PATH=${exp_custometcdir}
-
-MASON_LOCAL_HTML_PATH=${exp_customhtmldir}
-
-LOCAL_LEXICON_PATH=${exp_customlexdir}
-
-LOCAL_LIB_PATH=${exp_customlibdir}
-
-DESTDIR=${exp_prefix}
-
-RT_LOG_PATH=${exp_logfiledir}
-
-
-
-ac_config_files="$ac_config_files sbin/rt-setup-database sbin/rt-test-dependencies Makefile etc/RT_Config.pm lib/RT.pm lib/t/00smoke.t lib/t/01harness.t lib/t/02regression.t lib/t/03web.pl lib/t/04_send_email.pl bin/mason_handler.fcgi bin/mason_handler.scgi bin/mason_handler.svc bin/rt-commit-handler bin/rt-crontool bin/rt-mailgate bin/rt bin/webmux.pl"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overriden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-{
- (set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-} |
- sed '
- t clear
- : clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- : end' >>confcache
-if cmp -s $cache_file confcache; then :; else
- if test -w $cache_file; then
- test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
- cat confcache >$cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}'
-fi
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then we branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-cat >confdef2opt.sed <<\_ACEOF
-t clear
-: clear
-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
-t quote
-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
-t quote
-d
-: quote
-s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
-s,\[,\\&,g
-s,\],\\&,g
-s,\$,$$,g
-p
-_ACEOF
-# We use echo to avoid assuming a particular line-breaking character.
-# The extra dot is to prevent the shell from consuming trailing
-# line-breaks from the sub-command output. A line-break within
-# single-quotes doesn't work because, if this script is created in a
-# platform that uses two characters for line-breaks (e.g., DOS), tr
-# would break.
-ac_LF_and_DOT=`echo; echo .`
-DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
-rm -f confdef2opt.sed
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-
-# NLS nuisances.
-# Support unset when possible.
-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-(set +x; test -n "`(LANG=C; export LANG) 2>&1`") &&
- { $as_unset LANG || test "${LANG+set}" != set; } ||
- { LANG=C; export LANG; }
-(set +x; test -n "`(LC_ALL=C; export LC_ALL) 2>&1`") &&
- { $as_unset LC_ALL || test "${LC_ALL+set}" != set; } ||
- { LC_ALL=C; export LC_ALL; }
-(set +x; test -n "`(LC_TIME=C; export LC_TIME) 2>&1`") &&
- { $as_unset LC_TIME || test "${LC_TIME+set}" != set; } ||
- { LC_TIME=C; export LC_TIME; }
-(set +x; test -n "`(LC_CTYPE=C; export LC_CTYPE) 2>&1`") &&
- { $as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set; } ||
- { LC_CTYPE=C; export LC_CTYPE; }
-(set +x; test -n "`(LANGUAGE=C; export LANGUAGE) 2>&1`") &&
- { $as_unset LANGUAGE || test "${LANGUAGE+set}" != set; } ||
- { LANGUAGE=C; export LANGUAGE; }
-(set +x; test -n "`(LC_COLLATE=C; export LC_COLLATE) 2>&1`") &&
- { $as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set; } ||
- { LC_COLLATE=C; export LC_COLLATE; }
-(set +x; test -n "`(LC_NUMERIC=C; export LC_NUMERIC) 2>&1`") &&
- { $as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set; } ||
- { LC_NUMERIC=C; export LC_NUMERIC; }
-(set +x; test -n "`(LC_MESSAGES=C; export LC_MESSAGES) 2>&1`") &&
- { $as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set; } ||
- { LC_MESSAGES=C; export LC_MESSAGES; }
-
-
-# Name of the executable.
-as_me=`(basename "$0") 2>/dev/null ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
- if (PATH=".;."; conftest.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conftest.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=$PATH_SEPARATOR; export CDPATH; }
-
-exec 6>&1
-
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling. Logging --version etc. is OK.
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../@%:@@%:@ /;s/...$/ @%:@@%:@/;p;x;p;x' <<_ASBOX
-@%:@@%:@ Running $as_me. @%:@@%:@
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by RT $as_me 3.0.9, which was
-generated by GNU Autoconf 2.53. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
-_ACEOF
-
-# Files that config.status was made for.
-if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Report bugs to <bug-autoconf@gnu.org>."
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-RT config.status 3.0.9
-configured by $0, generated by GNU Autoconf 2.53,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
-INSTALL="$INSTALL"
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=*)
- ac_option=`expr "x$1" : 'x\([^=]*\)='`
- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
- shift
- set dummy "$ac_option" "$ac_optarg" ${1+"$@"}
- shift
- ;;
- -*);;
- *) # This is not an option, so the user has probably given explicit
- # arguments.
- ac_need_defaults=false;;
- esac
-
- case $1 in
- # Handling of the options.
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
- exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
- --version | --vers* | -V )
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
- { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; };;
- --help | --hel | -h )
- echo "$ac_cs_usage"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- shift
- CONFIG_FILES="$CONFIG_FILES $1"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- shift
- CONFIG_HEADERS="$CONFIG_HEADERS $1"
- ac_need_defaults=false;;
-
- # This is an error.
- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; } ;;
-
- *) ac_config_targets="$ac_config_targets $1" ;;
-
- esac
- shift
-done
-
-_ACEOF
-
-
-
-
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_config_target in $ac_config_targets
-do
- case "$ac_config_target" in
- # Handling of arguments.
- "sbin/rt-setup-database" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-setup-database" ;;
- "sbin/rt-test-dependencies" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-test-dependencies" ;;
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "etc/RT_Config.pm" ) CONFIG_FILES="$CONFIG_FILES etc/RT_Config.pm" ;;
- "lib/RT.pm" ) CONFIG_FILES="$CONFIG_FILES lib/RT.pm" ;;
- "lib/t/00smoke.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/00smoke.t" ;;
- "lib/t/01harness.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/01harness.t" ;;
- "lib/t/02regression.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/02regression.t" ;;
- "lib/t/03web.pl" ) CONFIG_FILES="$CONFIG_FILES lib/t/03web.pl" ;;
- "lib/t/04_send_email.pl" ) CONFIG_FILES="$CONFIG_FILES lib/t/04_send_email.pl" ;;
- "bin/mason_handler.fcgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.fcgi" ;;
- "bin/mason_handler.scgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.scgi" ;;
- "bin/mason_handler.svc" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.svc" ;;
- "bin/rt-commit-handler" ) CONFIG_FILES="$CONFIG_FILES bin/rt-commit-handler" ;;
- "bin/rt-crontool" ) CONFIG_FILES="$CONFIG_FILES bin/rt-crontool" ;;
- "bin/rt-mailgate" ) CONFIG_FILES="$CONFIG_FILES bin/rt-mailgate" ;;
- "bin/rt" ) CONFIG_FILES="$CONFIG_FILES bin/rt" ;;
- "bin/webmux.pl" ) CONFIG_FILES="$CONFIG_FILES bin/webmux.pl" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-fi
-
-# Create a temporary directory, and hook for its removal unless debugging.
-$debug ||
-{
- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-
-# Create a (secure) tmp directory for tmp files.
-: ${TMPDIR=/tmp}
-{
- tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=$TMPDIR/cs$$-$RANDOM
- (umask 077 && mkdir $tmp)
-} ||
-{
- echo "$me: cannot create a temporary directory in $TMPDIR" >&2
- { (exit 1); exit 1; }
-}
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-
-#
-# CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "\$CONFIG_FILES"; then
- # Protect against being on the right side of a sed subst in config.status.
- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-s,@SHELL@,$SHELL,;t t
-s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
-s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
-s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-s,@exec_prefix@,$exec_prefix,;t t
-s,@prefix@,$prefix,;t t
-s,@program_transform_name@,$program_transform_name,;t t
-s,@bindir@,$bindir,;t t
-s,@sbindir@,$sbindir,;t t
-s,@libexecdir@,$libexecdir,;t t
-s,@datadir@,$datadir,;t t
-s,@sysconfdir@,$sysconfdir,;t t
-s,@sharedstatedir@,$sharedstatedir,;t t
-s,@localstatedir@,$localstatedir,;t t
-s,@libdir@,$libdir,;t t
-s,@includedir@,$includedir,;t t
-s,@oldincludedir@,$oldincludedir,;t t
-s,@infodir@,$infodir,;t t
-s,@mandir@,$mandir,;t t
-s,@build_alias@,$build_alias,;t t
-s,@host_alias@,$host_alias,;t t
-s,@target_alias@,$target_alias,;t t
-s,@DEFS@,$DEFS,;t t
-s,@ECHO_C@,$ECHO_C,;t t
-s,@ECHO_N@,$ECHO_N,;t t
-s,@ECHO_T@,$ECHO_T,;t t
-s,@LIBS@,$LIBS,;t t
-s,@rt_version_major@,$rt_version_major,;t t
-s,@rt_version_minor@,$rt_version_minor,;t t
-s,@rt_version_patch@,$rt_version_patch,;t t
-s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
-s,@INSTALL_DATA@,$INSTALL_DATA,;t t
-s,@PERL@,$PERL,;t t
-s,@SPEEDY_BIN@,$SPEEDY_BIN,;t t
-s,@exp_prefix@,$exp_prefix,;t t
-s,@exp_exec_prefix@,$exp_exec_prefix,;t t
-s,@exp_bindir@,$exp_bindir,;t t
-s,@exp_sbindir@,$exp_sbindir,;t t
-s,@exp_sysconfdir@,$exp_sysconfdir,;t t
-s,@exp_mandir@,$exp_mandir,;t t
-s,@exp_libdir@,$exp_libdir,;t t
-s,@exp_datadir@,$exp_datadir,;t t
-s,@htmldir@,$htmldir,;t t
-s,@exp_htmldir@,$exp_htmldir,;t t
-s,@manualdir@,$manualdir,;t t
-s,@exp_manualdir@,$exp_manualdir,;t t
-s,@exp_localstatedir@,$exp_localstatedir,;t t
-s,@logfiledir@,$logfiledir,;t t
-s,@exp_logfiledir@,$exp_logfiledir,;t t
-s,@masonstatedir@,$masonstatedir,;t t
-s,@exp_masonstatedir@,$exp_masonstatedir,;t t
-s,@sessionstatedir@,$sessionstatedir,;t t
-s,@exp_sessionstatedir@,$exp_sessionstatedir,;t t
-s,@customdir@,$customdir,;t t
-s,@exp_customdir@,$exp_customdir,;t t
-s,@custometcdir@,$custometcdir,;t t
-s,@exp_custometcdir@,$exp_custometcdir,;t t
-s,@customhtmldir@,$customhtmldir,;t t
-s,@exp_customhtmldir@,$exp_customhtmldir,;t t
-s,@customlexdir@,$customlexdir,;t t
-s,@exp_customlexdir@,$exp_customlexdir,;t t
-s,@customlibdir@,$customlibdir,;t t
-s,@exp_customlibdir@,$exp_customlibdir,;t t
-s,@rt_layout_name@,$rt_layout_name,;t t
-s,@RTGROUP@,$RTGROUP,;t t
-s,@BIN_OWNER@,$BIN_OWNER,;t t
-s,@LIBS_OWNER@,$LIBS_OWNER,;t t
-s,@LIBS_GROUP@,$LIBS_GROUP,;t t
-s,@DB_TYPE@,$DB_TYPE,;t t
-s,@ORACLE_ENV_PREF@,$ORACLE_ENV_PREF,;t t
-s,@DB_HOST@,$DB_HOST,;t t
-s,@DB_PORT@,$DB_PORT,;t t
-s,@DB_RT_HOST@,$DB_RT_HOST,;t t
-s,@DB_DBA@,$DB_DBA,;t t
-s,@DB_DATABASE@,$DB_DATABASE,;t t
-s,@DB_RT_USER@,$DB_RT_USER,;t t
-s,@DB_RT_PASS@,$DB_RT_PASS,;t t
-s,@WEB_USER@,$WEB_USER,;t t
-s,@WEB_GROUP@,$WEB_GROUP,;t t
-s,@RT_VERSION_MAJOR@,$RT_VERSION_MAJOR,;t t
-s,@RT_VERSION_MINOR@,$RT_VERSION_MINOR,;t t
-s,@RT_VERSION_PATCH@,$RT_VERSION_PATCH,;t t
-s,@RT_PATH@,$RT_PATH,;t t
-s,@RT_DOC_PATH@,$RT_DOC_PATH,;t t
-s,@RT_LOCAL_PATH@,$RT_LOCAL_PATH,;t t
-s,@RT_LIB_PATH@,$RT_LIB_PATH,;t t
-s,@RT_ETC_PATH@,$RT_ETC_PATH,;t t
-s,@CONFIG_FILE_PATH@,$CONFIG_FILE_PATH,;t t
-s,@RT_BIN_PATH@,$RT_BIN_PATH,;t t
-s,@RT_SBIN_PATH@,$RT_SBIN_PATH,;t t
-s,@RT_VAR_PATH@,$RT_VAR_PATH,;t t
-s,@RT_MAN_PATH@,$RT_MAN_PATH,;t t
-s,@MASON_DATA_PATH@,$MASON_DATA_PATH,;t t
-s,@MASON_SESSION_PATH@,$MASON_SESSION_PATH,;t t
-s,@MASON_HTML_PATH@,$MASON_HTML_PATH,;t t
-s,@LOCAL_ETC_PATH@,$LOCAL_ETC_PATH,;t t
-s,@MASON_LOCAL_HTML_PATH@,$MASON_LOCAL_HTML_PATH,;t t
-s,@LOCAL_LEXICON_PATH@,$LOCAL_LEXICON_PATH,;t t
-s,@LOCAL_LIB_PATH@,$LOCAL_LIB_PATH,;t t
-s,@DESTDIR@,$DESTDIR,;t t
-s,@RT_LOG_PATH@,$RT_LOG_PATH,;t t
-CEOF
-
-_ACEOF
-
- cat >>$CONFIG_STATUS <<\_ACEOF
- # Split the substitutions into bite-sized pieces for seds with
- # small command number limits, like on Digital OSF/1 and HP-UX.
- ac_max_sed_lines=48
- ac_sed_frag=1 # Number of current file.
- ac_beg=1 # First line for current file.
- ac_end=$ac_max_sed_lines # Line after last line for current file.
- ac_more_lines=:
- ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- else
- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- fi
- if test ! -s $tmp/subs.frag; then
- ac_more_lines=false
- else
- # The purpose of the label and of the branching condition is to
- # speed up the sed processing (if there are no `@' at all, there
- # is no need to browse any of the substitutions).
- # These are the two extra sed commands mentioned above.
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
- fi
- done
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
- fi
-fi # test -n "$CONFIG_FILES"
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { case "$ac_dir" in
- [\\/]* | ?:[\\/]* ) as_incr_dir=;;
- *) as_incr_dir=.;;
-esac
-as_dummy="$ac_dir"
-for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
- case $as_mkdir_dir in
- # Skip DOS drivespec
- ?:) as_incr_dir=$as_mkdir_dir ;;
- *)
- as_incr_dir=$as_incr_dir/$as_mkdir_dir
- test -d "$as_incr_dir" ||
- mkdir "$as_incr_dir" ||
- { { echo "$as_me:$LINENO: error: cannot create \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-done; }
-
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
-# absolute.
-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
-ac_abs_top_builddir=`cd "$ac_dir" && cd $ac_top_builddir && pwd`
-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
- esac
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- configure_input=
- else
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
- sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo $f
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo $srcdir/$f
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s,@configure_input@,$configure_input,;t t
-s,@srcdir@,$ac_srcdir,;t t
-s,@abs_srcdir@,$ac_abs_srcdir,;t t
-s,@top_srcdir@,$ac_top_srcdir,;t t
-s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s,@builddir@,$ac_builddir,;t t
-s,@abs_builddir@,$ac_abs_builddir,;t t
-s,@top_builddir@,$ac_top_builddir,;t t
-s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
-s,@INSTALL@,$ac_INSTALL,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
- mv $tmp/out $ac_file
- else
- cat $tmp/out
- rm -f $tmp/out
- fi
-
-done
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-{ (exit 0); exit 0; }
-_ACEOF
-chmod +x $CONFIG_STATUS
-ac_clean_files=$ac_clean_files_save
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
-fi
-
diff --git a/rt/autom4te.cache/requests b/rt/autom4te.cache/requests
deleted file mode 100644
index fad7b54..0000000
--- a/rt/autom4te.cache/requests
+++ /dev/null
@@ -1,94 +0,0 @@
-# This file was created by autom4te.
-# It contains the lists of macros which have been traced.
-# It can be safely removed.
-
-@request = (
- bless( [
- '0',
- 1,
- [
- '/usr/share/autoconf'
- ],
- [
- '--reload-state=/usr/share/autoconf/autoconf/autoconf.m4f',
- 'aclocal.m4',
- 'configure.ac'
- ],
- {
- 'AC_HEADER_STAT' => 1,
- 'AC_FUNC_STRFTIME' => 1,
- 'AC_PROG_RANLIB' => 1,
- 'AC_FUNC_WAIT3' => 1,
- 'AC_FUNC_SETPGRP' => 1,
- 'AC_HEADER_TIME' => 1,
- 'AC_FUNC_SETVBUF_REVERSED' => 1,
- 'AC_HEADER_SYS_WAIT' => 1,
- 'AC_TYPE_UID_T' => 1,
- 'AM_CONDITIONAL' => 1,
- 'AC_CHECK_LIB' => 1,
- 'AC_PROG_LN_S' => 1,
- 'AC_FUNC_MEMCMP' => 1,
- 'AC_FUNC_FORK' => 1,
- 'AC_FUNC_GETGROUPS' => 1,
- 'AC_HEADER_MAJOR' => 1,
- 'AC_FUNC_STRTOD' => 1,
- 'AC_HEADER_DIRENT' => 1,
- 'AC_FUNC_UTIME_NULL' => 1,
- 'AC_CONFIG_FILES' => 1,
- 'AC_FUNC_ALLOCA' => 1,
- 'AC_C_CONST' => 1,
- 'include' => 1,
- 'AC_FUNC_OBSTACK' => 1,
- 'AC_FUNC_LSTAT' => 1,
- 'AC_STRUCT_TIMEZONE' => 1,
- 'AC_FUNC_GETPGRP' => 1,
- 'AC_DEFINE_TRACE_LITERAL' => 1,
- 'AC_CHECK_HEADERS' => 1,
- 'AC_TYPE_MODE_T' => 1,
- 'AC_CHECK_TYPES' => 1,
- 'AC_PROG_YACC' => 1,
- 'AC_TYPE_PID_T' => 1,
- 'AC_FUNC_STRERROR_R' => 1,
- 'AC_STRUCT_ST_BLOCKS' => 1,
- 'AC_PROG_GCC_TRADITIONAL' => 1,
- 'AC_TYPE_SIGNAL' => 1,
- 'AC_FUNC_FNMATCH' => 1,
- 'AC_PROG_CPP' => 1,
- 'AM_PROG_LIBTOOL' => 1,
- 'AC_FUNC_STAT' => 1,
- 'AC_PROG_INSTALL' => 1,
- 'AM_GNU_GETTEXT' => 1,
- 'AC_FUNC_STRCOLL' => 1,
- 'AC_LIBSOURCE' => 1,
- 'AC_C_INLINE' => 1,
- 'AC_FUNC_CHOWN' => 1,
- 'AC_PROG_LEX' => 1,
- 'AH_OUTPUT' => 1,
- 'AC_HEADER_STDC' => 1,
- 'AC_FUNC_GETLOADAVG' => 1,
- 'AC_CHECK_FUNCS' => 1,
- 'AC_TYPE_SIZE_T' => 1,
- 'AC_DECL_SYS_SIGLIST' => 1,
- 'AC_FUNC_MKTIME' => 1,
- 'AC_PROG_MAKE_SET' => 1,
- 'AC_PROG_CXX' => 1,
- 'm4_pattern_allow' => 1,
- 'm4_include' => 1,
- 'm4_pattern_forbid' => 1,
- 'AC_PROG_AWK' => 1,
- 'AC_FUNC_VPRINTF' => 1,
- 'AC_CONFIG_HEADERS' => 1,
- 'AC_PATH_X' => 1,
- 'AC_TYPE_OFF_T' => 1,
- 'AC_FUNC_MALLOC' => 1,
- 'AC_FUNC_ERROR_AT_LINE' => 1,
- 'AC_FUNC_FSEEKO' => 1,
- 'AC_FUNC_MMAP' => 1,
- 'AC_STRUCT_TM' => 1,
- 'AC_SUBST' => 1,
- 'AC_PROG_CC' => 1,
- 'AC_PROG_LIBTOOL' => 1
- }
- ], 'Request' )
- );
-
diff --git a/rt/autom4te.cache/traces.0 b/rt/autom4te.cache/traces.0
deleted file mode 100644
index f132762..0000000
--- a/rt/autom4te.cache/traces.0
+++ /dev/null
@@ -1,158 +0,0 @@
-m4trace:configure.ac:9: -1- m4_pattern_forbid([^_?A[CHUM]_])
-m4trace:configure.ac:9: -1- m4_pattern_forbid([_AC_])
-m4trace:configure.ac:9: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs. LIBOBJS'])
-m4trace:configure.ac:9: -1- m4_pattern_allow([^AS_FLAGS$])
-m4trace:configure.ac:9: -1- m4_pattern_forbid([^_?m4_])
-m4trace:configure.ac:9: -1- m4_pattern_forbid([^dnl$])
-m4trace:configure.ac:9: -1- m4_pattern_forbid([^_?AS_])
-m4trace:configure.ac:9: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}])
-m4trace:configure.ac:9: -1- AC_SUBST([PATH_SEPARATOR])
-m4trace:configure.ac:9: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
-m4trace:configure.ac:9: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
-m4trace:configure.ac:9: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
-m4trace:configure.ac:9: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
-m4trace:configure.ac:9: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
-m4trace:configure.ac:9: -1- AC_SUBST([exec_prefix], [NONE])
-m4trace:configure.ac:9: -1- AC_SUBST([prefix], [NONE])
-m4trace:configure.ac:9: -1- AC_SUBST([program_transform_name], [s,x,x,])
-m4trace:configure.ac:9: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
-m4trace:configure.ac:9: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
-m4trace:configure.ac:9: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
-m4trace:configure.ac:9: -1- AC_SUBST([datadir], ['${prefix}/share'])
-m4trace:configure.ac:9: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
-m4trace:configure.ac:9: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
-m4trace:configure.ac:9: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
-m4trace:configure.ac:9: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
-m4trace:configure.ac:9: -1- AC_SUBST([includedir], ['${prefix}/include'])
-m4trace:configure.ac:9: -1- AC_SUBST([oldincludedir], ['/usr/include'])
-m4trace:configure.ac:9: -1- AC_SUBST([infodir], ['${prefix}/info'])
-m4trace:configure.ac:9: -1- AC_SUBST([mandir], ['${prefix}/man'])
-m4trace:configure.ac:9: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
-m4trace:configure.ac:9: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
-#undef PACKAGE_NAME])
-m4trace:configure.ac:9: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
-m4trace:configure.ac:9: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME])
-m4trace:configure.ac:9: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
-m4trace:configure.ac:9: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
-#undef PACKAGE_VERSION])
-m4trace:configure.ac:9: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
-m4trace:configure.ac:9: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING])
-m4trace:configure.ac:9: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
-m4trace:configure.ac:9: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT])
-m4trace:configure.ac:9: -1- AC_SUBST([build_alias])
-m4trace:configure.ac:9: -1- AC_SUBST([host_alias])
-m4trace:configure.ac:9: -1- AC_SUBST([target_alias])
-m4trace:configure.ac:9: -1- AC_SUBST([DEFS])
-m4trace:configure.ac:9: -1- AC_SUBST([ECHO_C])
-m4trace:configure.ac:9: -1- AC_SUBST([ECHO_N])
-m4trace:configure.ac:9: -1- AC_SUBST([ECHO_T])
-m4trace:configure.ac:9: -1- AC_SUBST([LIBS])
-m4trace:configure.ac:14: -1- AC_SUBST([rt_version_major], [3])
-m4trace:configure.ac:16: -1- AC_SUBST([rt_version_minor], [0])
-m4trace:configure.ac:18: -1- AC_SUBST([rt_version_patch], [9])
-m4trace:configure.ac:24: -1- AC_PROG_INSTALL
-m4trace:configure.ac:24: -1- AC_SUBST([INSTALL_PROGRAM])
-m4trace:configure.ac:24: -1- AC_SUBST([INSTALL_SCRIPT])
-m4trace:configure.ac:24: -1- AC_SUBST([INSTALL_DATA])
-m4trace:configure.ac:25: -1- AC_SUBST([PERL])
-m4trace:configure.ac:26: -1- AC_SUBST([PERL], [$ac_cv_path_PERL])
-m4trace:configure.ac:36: -1- AC_SUBST([SPEEDY_BIN])
-m4trace:configure.ac:41: -1- AC_SUBST([prefix])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_prefix])
-m4trace:configure.ac:41: -1- AC_SUBST([exec_prefix])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_exec_prefix])
-m4trace:configure.ac:41: -1- AC_SUBST([bindir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_bindir])
-m4trace:configure.ac:41: -1- AC_SUBST([sbindir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_sbindir])
-m4trace:configure.ac:41: -1- AC_SUBST([sysconfdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_sysconfdir])
-m4trace:configure.ac:41: -1- AC_SUBST([mandir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_mandir])
-m4trace:configure.ac:41: -1- AC_SUBST([libdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_libdir])
-m4trace:configure.ac:41: -1- AC_SUBST([datadir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_datadir])
-m4trace:configure.ac:41: -1- AC_SUBST([htmldir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_htmldir])
-m4trace:configure.ac:41: -1- AC_SUBST([manualdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_manualdir])
-m4trace:configure.ac:41: -1- AC_SUBST([localstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_localstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([logfiledir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_logfiledir])
-m4trace:configure.ac:41: -1- AC_SUBST([masonstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_masonstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([sessionstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_sessionstatedir])
-m4trace:configure.ac:41: -1- AC_SUBST([customdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_customdir])
-m4trace:configure.ac:41: -1- AC_SUBST([custometcdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_custometcdir])
-m4trace:configure.ac:41: -1- AC_SUBST([customhtmldir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_customhtmldir])
-m4trace:configure.ac:41: -1- AC_SUBST([customlexdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_customlexdir])
-m4trace:configure.ac:41: -1- AC_SUBST([customlibdir])
-m4trace:configure.ac:41: -1- AC_SUBST([exp_customlibdir])
-m4trace:configure.ac:41: -1- AC_SUBST([rt_layout_name])
-m4trace:configure.ac:49: -1- AC_SUBST([RTGROUP])
-m4trace:configure.ac:57: -1- AC_SUBST([BIN_OWNER])
-m4trace:configure.ac:65: -1- AC_SUBST([LIBS_OWNER])
-m4trace:configure.ac:73: -1- AC_SUBST([LIBS_GROUP])
-m4trace:configure.ac:84: -1- AC_SUBST([DB_TYPE])
-m4trace:configure.ac:91: -1- AC_SUBST([ORACLE_ENV_PREF])
-m4trace:configure.ac:99: -1- AC_SUBST([DB_HOST])
-m4trace:configure.ac:107: -1- AC_SUBST([DB_PORT])
-m4trace:configure.ac:115: -1- AC_SUBST([DB_RT_HOST])
-m4trace:configure.ac:123: -1- AC_SUBST([DB_DBA])
-m4trace:configure.ac:131: -1- AC_SUBST([DB_DATABASE])
-m4trace:configure.ac:139: -1- AC_SUBST([DB_RT_USER])
-m4trace:configure.ac:147: -1- AC_SUBST([DB_RT_PASS])
-m4trace:configure.ac:155: -1- AC_SUBST([WEB_USER])
-m4trace:configure.ac:163: -1- AC_SUBST([WEB_GROUP])
-m4trace:configure.ac:182: -1- AC_SUBST([RT_VERSION_MAJOR], [${rt_version_major}])
-m4trace:configure.ac:183: -1- AC_SUBST([RT_VERSION_MINOR], [${rt_version_minor}])
-m4trace:configure.ac:184: -1- AC_SUBST([RT_VERSION_PATCH], [${rt_version_patch}])
-m4trace:configure.ac:187: -1- AC_SUBST([RT_PATH], [${exp_prefix}])
-m4trace:configure.ac:188: -1- AC_SUBST([RT_DOC_PATH], [${exp_manualdir}])
-m4trace:configure.ac:189: -1- AC_SUBST([RT_LOCAL_PATH], [${exp_customdir}])
-m4trace:configure.ac:190: -1- AC_SUBST([RT_LIB_PATH], [${exp_libdir}])
-m4trace:configure.ac:191: -1- AC_SUBST([RT_ETC_PATH], [${exp_sysconfdir}])
-m4trace:configure.ac:192: -1- AC_SUBST([CONFIG_FILE_PATH], [${exp_sysconfdir}])
-m4trace:configure.ac:193: -1- AC_SUBST([RT_BIN_PATH], [${exp_bindir}])
-m4trace:configure.ac:194: -1- AC_SUBST([RT_SBIN_PATH], [${exp_sbindir}])
-m4trace:configure.ac:195: -1- AC_SUBST([RT_VAR_PATH], [${exp_localstatedir}])
-m4trace:configure.ac:196: -1- AC_SUBST([RT_MAN_PATH], [${exp_mandir}])
-m4trace:configure.ac:197: -1- AC_SUBST([MASON_DATA_PATH], [${exp_masonstatedir}])
-m4trace:configure.ac:198: -1- AC_SUBST([MASON_SESSION_PATH], [${exp_sessionstatedir}])
-m4trace:configure.ac:199: -1- AC_SUBST([MASON_HTML_PATH], [${exp_htmldir}])
-m4trace:configure.ac:200: -1- AC_SUBST([LOCAL_ETC_PATH], [${exp_custometcdir}])
-m4trace:configure.ac:201: -1- AC_SUBST([MASON_LOCAL_HTML_PATH], [${exp_customhtmldir}])
-m4trace:configure.ac:202: -1- AC_SUBST([LOCAL_LEXICON_PATH], [${exp_customlexdir}])
-m4trace:configure.ac:203: -1- AC_SUBST([LOCAL_LIB_PATH], [${exp_customlibdir}])
-m4trace:configure.ac:204: -1- AC_SUBST([DESTDIR], [${exp_prefix}])
-m4trace:configure.ac:205: -1- AC_SUBST([RT_LOG_PATH], [${exp_logfiledir}])
-m4trace:configure.ac:228: -1- AC_CONFIG_FILES([
- sbin/rt-setup-database
- sbin/rt-test-dependencies
- Makefile
- etc/RT_Config.pm
- lib/RT.pm
- lib/t/00smoke.t
- lib/t/01harness.t
- lib/t/02regression.t
- lib/t/03web.pl
- lib/t/04_send_email.pl
- bin/mason_handler.fcgi
- bin/mason_handler.scgi
- bin/mason_handler.svc
- bin/rt-commit-handler
- bin/rt-crontool
- bin/rt-mailgate
- bin/rt
- bin/webmux.pl
- ])
diff --git a/rt/bin/mason_handler.fcgi b/rt/bin/mason_handler.fcgi
deleted file mode 100755
index 431eccb..0000000
--- a/rt/bin/mason_handler.fcgi
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/perl
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-use strict;
-use File::Basename;
-require ('/opt/rt3/bin/webmux.pl');
-
-my $h = &RT::Interface::Web::NewCGIHandler();
-
-# Enter CGI::Fast mode, which should also work as a vanilla CGI script.
-require CGI::Fast;
-
-RT::Init();
-
-# Response loop
-while ( my $cgi = CGI::Fast->new ) {
- # the whole point of fastcgi requires the env to get reset here..
- # So we must squash it again
- $ENV{'PATH'} = '/bin:/usr/bin';
- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'};
- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'};
- $ENV{'ENV'} = '' if defined $ENV{'ENV'};
- $ENV{'IFS'} = '' if defined $ENV{'IFS'};
-
- unless ($h->interp->comp_exists($cgi->path_info)) {
- $cgi->path_info($cgi->path_info . "/index.html");
- }
- $h->handle_cgi_object($cgi);
- # _should_ always be tied
-}
-
-1;
diff --git a/rt/bin/mason_handler.fcgi.in b/rt/bin/mason_handler.fcgi.in
deleted file mode 100644
index 193eaae..0000000
--- a/rt/bin/mason_handler.fcgi.in
+++ /dev/null
@@ -1,84 +0,0 @@
-#!@PERL@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Mason;
-
-use strict;
-use vars '$Handler';
-use File::Basename;
-require ('@RT_BIN_PATH@/webmux.pl');
-
-# Enter CGI::Fast mode, which should also work as a vanilla CGI script.
-require CGI::Fast;
-
-RT::Init();
-
-while ( my $cgi = CGI::Fast->new ) {
- # the whole point of fastcgi requires the env to get reset here..
- # So we must squash it again
- $ENV{'PATH'} = '/bin:/usr/bin';
- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'};
- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'};
- $ENV{'ENV'} = '' if defined $ENV{'ENV'};
- $ENV{'IFS'} = '' if defined $ENV{'IFS'};
-
- Module::Refresh->refresh if $RT::DevelMode;
- RT::ConnectToDatabase();
-
- if ( ( !$Handler->interp->comp_exists( $cgi->path_info ) )
- && ( $Handler->interp->comp_exists( $cgi->path_info . "/index.html" ) ) ) {
- $cgi->path_info( $cgi->path_info . "/index.html" );
- }
-
- eval { $Handler->handle_cgi_object($cgi); };
- if ($@) {
- $RT::Logger->crit($@);
- }
- RT::Interface::Web::Handler->CleanupRequest();
-
-}
-
-1;
diff --git a/rt/bin/mason_handler.scgi b/rt/bin/mason_handler.scgi
deleted file mode 100755
index 8e1135c..0000000
--- a/rt/bin/mason_handler.scgi
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/local/bin/speedy
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-use strict;
-require ('/opt/rt3/bin/webmux.pl');
-
-my $h = &RT::Interface::Web::NewCGIHandler();
-
-require CGI;
-
-RT::Init();
-
-my $cgi = CGI->new;
-unless ($h->interp->comp_exists($cgi->path_info)) {
- $cgi->path_info($cgi->path_info . "/index.html");
-}
-$h->handle_cgi_object($cgi);
-
-1;
diff --git a/rt/bin/mason_handler.scgi.in b/rt/bin/mason_handler.scgi.in
deleted file mode 100644
index 2b38c93..0000000
--- a/rt/bin/mason_handler.scgi.in
+++ /dev/null
@@ -1,65 +0,0 @@
-#!@SPEEDY_BIN@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Mason;
-
-use strict;
-use vars '$Handler';
-require ('@RT_BIN_PATH@/webmux.pl');
-
-require CGI;
-
-RT::Init();
-
-my $cgi = CGI->new;
-if ( ( !$Handler->interp->comp_exists( $cgi->path_info ) )
- && ( $Handler->interp->comp_exists( $cgi->path_info . "/index.html" ) ) ) {
- $cgi->path_info( $cgi->path_info . "/index.html" );
-}
-
-$Handler->handle_cgi_object($cgi);
-RT::Interface::Web::Handler->CleanupRequest();
-1;
diff --git a/rt/bin/mason_handler.svc b/rt/bin/mason_handler.svc
deleted file mode 100644
index c05d21e..0000000
--- a/rt/bin/mason_handler.svc
+++ /dev/null
@@ -1,234 +0,0 @@
-#!/usr/bin/perl
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-=head1 NAME
-
-mason_handler.svc - Win32 IIS Service handler for RT
-
-=head1 SYNOPSIS
-
- perl mason_handler.svc --install # install as service
- perl mason_handler.svc --deinstall # deinstall this service
- perl mason_handler.svc --help # show this help
- perl mason_handler.svc # launch handler from command line
-
-=head1 DESCRIPTION
-
-This script manages a stand-alone FastCGI server, and populates the necessary
-registry settings to run it with Microsoft IIS Server 4.0 or above.
-
-Before running it, you need to install the B<FCGI> module from CPAN, as well as
-B<Win32::Daemon> from L<http://www.roth.net/perl/Daemon/> if you want to install
-itself as a service.
-
-This script will automatically create a virtual directory under the IIS root;
-its name is taken from C<$WebPath> in the F<RT_Config.pm> file. Additionally,
-please install the ISAPI binary from L<http://www.caraveo.com/fastcgi/> and set
-up an ISAPI Script Map that maps F<.html> files to F<isapi_fcgi.dll>.
-
-Once the service is launched (either via C<net start RTFastCGI> or by running
-C<perl mason_handler.svc>), a FCGI server will start and bind to port C<8284>
-(mnemonics: the ASCII value of C<R> and C<T>); the ISAPI handler's C<BindPath>
-registry setting will also be automatically populated.
-
-=cut
-
-use strict;
-use File::Basename;
-require (dirname(__FILE__) . '/webmux.pl');
-
-use Cwd;
-use File::Spec;
-
-use Win32;
-use Win32::Process;
-use Win32::Service;
-use Win32::TieRegistry;
-
-my $ProcessObj;
-
-BEGIN {
- my $runsvc = sub {
- Win32::Process::Create(
- $ProcessObj, $^X, "$^X $0 --run", 0, NORMAL_PRIORITY_CLASS, "."
- ) or do {
- die Win32::FormatMessage( Win32::GetLastError() );
- };
-
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
- $path =~ s|bin$|share\\html|;
-
- $Win32::TieRegistry::Registry->{
- 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\\'.
- 'W3SVC\Parameters\Virtual Roots\\'
- }->{$RT::WebPath || '/'} = "$path,,205";
-
- $Win32::TieRegistry::Registry->{
- 'HKEY_LOCAL_MACHINE\Software\FASTCGI\.html\\'
- }->{'BindPath'} = $ENV{'FCGI_SOCKET_PATH'};
-
- Win32::Service::StartService(Win32::NodeName, 'W3SVC');
- };
-
- if ($ARGV[0] eq '--deinstall') {
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
-
- require Win32::Daemon;
- Win32::Daemon::DeleteService('RTFastCGI');
- warn "Service 'RTFastCGI' successfully deleted.\n";
- exit;
- }
- elsif ($ARGV[0] eq '--install') {
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
-
- require Win32::Daemon;
- Win32::Daemon::DeleteService('RTFastCGI');
-
- my $rv = Win32::Daemon::CreateService( {
- machine => '',
- name => 'RTFastCGI',
- display => 'RT FastCGI Handler',
- path => $^X,
- user => '',
- pwd => $path,
- description => 'Enables port 8284 as the RT FastCGI handler.',
- parameters => File::Spec->catfile(
- $path, File::Basename::basename($0)
- ) . ' --service',
- } );
-
- if ($rv) {
- warn "Service 'RTFastCGI' successfully created.\n";
- }
- else {
- warn "Failed to add service: " . Win32::FormatMessage(
- Win32::Daemon::GetLastError()
- ) . "\n";
- }
- exit;
- }
- elsif ($ARGV[0] eq '--service') {
- require Win32::Daemon;
-
- my $PrevState = Win32::Daemon::SERVICE_START_PENDING();
- Win32::Daemon::StartService() or die $^E;
-
- while ( 1 ) {
- my $State = Win32::Daemon::State();
- last if $State == Win32::Daemon::SERVICE_STOPPED();
-
- if ( $State == Win32::Daemon::SERVICE_START_PENDING() ) {
- $runsvc->();
- Win32::Daemon::State( Win32::Daemon::SERVICE_RUNNING() );
- $PrevState = Win32::Daemon::SERVICE_RUNNING();
- }
- elsif ( $State == Win32::Daemon::SERVICE_CONTINUE_PENDING() ) {
- $ProcessObj->Resume;
- Win32::Daemon::State( Win32::Daemon::SERVICE_RUNNING() );
- $PrevState = Win32::Daemon::SERVICE_RUNNING();
- }
- elsif ( $State == Win32::Daemon::SERVICE_STOP_PENDING() ) {
- $ProcessObj->Kill(0);
- Win32::Daemon::State( Win32::Daemon::SERVICE_STOPPED() );
- $PrevState = Win32::Daemon::SERVICE_STOPPED();
- }
- elsif ( $State == Win32::Daemon::SERVICE_RUNNING() ) {
- my $Message = Win32::Daemon::QueryLastMessage(1);
- if ( $Message == Win32::Daemon::SERVICE_CONTROL_INTERROGATE() ) {
- Win32::Daemon::State( $PrevState );
- }
- elsif ( $Message == Win32::Daemon::SERVICE_CONTROL_SHUTDOWN() ) {
- Win32::Daemon::State( Win32::Daemon::SERVICE_STOP_PENDING(), 15000 );
- }
- elsif ( $Message != Win32::Daemon::SERVICE_CONTROL_NONE() ) {
- Win32::Daemon::State( $PrevState );
- }
- }
-
- Win32::Sleep( 1000 );
- }
-
- Win32::Daemon::StopService();
- exit;
- }
- elsif ($ARGV[0] eq '--help') {
- system("perldoc $0");
- exit;
- }
- elsif ($ARGV[0] ne '--run') {
- $SIG{__DIE__} = sub { $ProcessObj->Kill(0) if $ProcessObj };
- $runsvc->();
- warn "RT FastCGI Handler launched. Press [Enter] to terminate...\n";
- <STDIN>;
- exit;
- }
-}
-
-###############################################################################
-
-warn "Begin listening on $ENV{'FCGI_SOCKET_PATH'}\n";
-
-require CGI::Fast;
-my $h = &RT::Interface::Web::NewCGIHandler(@RT::MasonParameters);
-
-RT::Init();
-
-# Response loop
-while( my $cgi = CGI::Fast->new ) {
- my $comp = $ENV{'PATH_INFO'};
-
- $comp = $1 if ($comp =~ /^(.*)$/);
- $comp =~ s|^$RT::WebPath\b||i;
- $comp .= "index.html" if ($comp =~ /\/$/);
- $comp =~ s/.pl$/.html/g;
-
- warn "Serving $comp\n";
-
- $h->handle_cgi($comp);
- # _should_ always be tied
-}
-
-1;
-
-=head1 AUTHORS
-
-Autrijus Tang E<lt>autrijus@autrijus.orgE<gt>
-
-=head1 COPYRIGHT
-
-Copyright 2002 by Autrijus Tang E<lt>autrijus@autrijus.orgE<gt>.
-
-This program is free software; you can redistribute it and/or
-modify it under the same terms as Perl itself.
-
-See L<http://www.perl.com/perl/misc/Artistic.html>
-
-=cut
diff --git a/rt/bin/mason_handler.svc.in b/rt/bin/mason_handler.svc.in
deleted file mode 100644
index 7be566d..0000000
--- a/rt/bin/mason_handler.svc.in
+++ /dev/null
@@ -1,259 +0,0 @@
-#!@PERL@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
-mason_handler.svc - Win32 IIS Service handler for RT
-
-=head1 SYNOPSIS
-
- perl mason_handler.svc --install # install as service
- perl mason_handler.svc --deinstall # deinstall this service
- perl mason_handler.svc --help # show this help
- perl mason_handler.svc # launch handler from command line
-
-=head1 DESCRIPTION
-
-This script manages a stand-alone FastCGI server, and populates the necessary
-registry settings to run it with Microsoft IIS Server 4.0 or above.
-
-Before running it, you need to install the B<FCGI> module from CPAN, as well as
-B<Win32::Daemon> from L<http://www.roth.net/perl/Daemon/> if you want to install
-itself as a service.
-
-This script will automatically create a virtual directory under the IIS root;
-its name is taken from C<$WebPath> in the F<RT_Config.pm> file. Additionally,
-please install the ISAPI binary from L<http://www.caraveo.com/fastcgi/> and set
-up an ISAPI Script Map that maps F<.html> files to F<isapi_fcgi.dll>.
-
-Once the service is launched (either via C<net start RTFastCGI> or by running
-C<perl mason_handler.svc>), a FCGI server will start and bind to port C<8284>
-(mnemonics: the ASCII value of C<R> and C<T>); the ISAPI handler's C<BindPath>
-registry setting will also be automatically populated.
-
-=cut
-
-package RT::Mason;
-
-use strict;
-use File::Basename;
-use vars '$Handler';
-require (dirname(__FILE__) . '/webmux.pl');
-
-use Cwd;
-use File::Spec;
-
-use Win32;
-use Win32::Process;
-use Win32::Service;
-use Win32::TieRegistry;
-
-my $ProcessObj;
-
-BEGIN {
- my $runsvc = sub {
- Win32::Process::Create(
- $ProcessObj, $^X, "$^X $0 --run", 0, NORMAL_PRIORITY_CLASS, "."
- ) or do {
- die Win32::FormatMessage( Win32::GetLastError() );
- };
-
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
- $path =~ s|bin$|share\\html|;
-
- $Win32::TieRegistry::Registry->{
- 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\\'.
- 'W3SVC\Parameters\Virtual Roots\\'
- }->{$RT::WebPath || '/'} = "$path,,205";
-
- $Win32::TieRegistry::Registry->{
- 'HKEY_LOCAL_MACHINE\Software\FASTCGI\.html\\'
- }->{'BindPath'} = $ENV{'FCGI_SOCKET_PATH'};
-
- Win32::Service::StartService(Win32::NodeName, 'W3SVC');
- };
-
- if ($ARGV[0] eq '--deinstall') {
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
-
- require Win32::Daemon;
- Win32::Daemon::DeleteService('RTFastCGI');
- warn "Service 'RTFastCGI' successfully deleted.\n";
- exit;
- }
- elsif ($ARGV[0] eq '--install') {
- chdir File::Basename::dirname($0);
- my $path = Cwd::cwd();
- $path =~ s|/|\\|g;
-
- require Win32::Daemon;
- Win32::Daemon::DeleteService('RTFastCGI');
-
- my $rv = Win32::Daemon::CreateService( {
- machine => '',
- name => 'RTFastCGI',
- display => 'RT FastCGI Handler',
- path => $^X,
- user => '',
- pwd => $path,
- description => 'Enables port 8284 as the RT FastCGI handler.',
- parameters => File::Spec->catfile(
- $path, File::Basename::basename($0)
- ) . ' --service',
- } );
-
- if ($rv) {
- warn "Service 'RTFastCGI' successfully created.\n";
- }
- else {
- warn "Failed to add service: " . Win32::FormatMessage(
- Win32::Daemon::GetLastError()
- ) . "\n";
- }
- exit;
- }
- elsif ($ARGV[0] eq '--service') {
- require Win32::Daemon;
-
- my $PrevState = Win32::Daemon::SERVICE_START_PENDING();
- Win32::Daemon::StartService() or die $^E;
-
- while ( 1 ) {
- my $State = Win32::Daemon::State();
- last if $State == Win32::Daemon::SERVICE_STOPPED();
-
- if ( $State == Win32::Daemon::SERVICE_START_PENDING() ) {
- $runsvc->();
- Win32::Daemon::State( Win32::Daemon::SERVICE_RUNNING() );
- $PrevState = Win32::Daemon::SERVICE_RUNNING();
- }
- elsif ( $State == Win32::Daemon::SERVICE_CONTINUE_PENDING() ) {
- $ProcessObj->Resume;
- Win32::Daemon::State( Win32::Daemon::SERVICE_RUNNING() );
- $PrevState = Win32::Daemon::SERVICE_RUNNING();
- }
- elsif ( $State == Win32::Daemon::SERVICE_STOP_PENDING() ) {
- $ProcessObj->Kill(0);
- Win32::Daemon::State( Win32::Daemon::SERVICE_STOPPED() );
- $PrevState = Win32::Daemon::SERVICE_STOPPED();
- }
- elsif ( $State == Win32::Daemon::SERVICE_RUNNING() ) {
- my $Message = Win32::Daemon::QueryLastMessage(1);
- if ( $Message == Win32::Daemon::SERVICE_CONTROL_INTERROGATE() ) {
- Win32::Daemon::State( $PrevState );
- }
- elsif ( $Message == Win32::Daemon::SERVICE_CONTROL_SHUTDOWN() ) {
- Win32::Daemon::State( Win32::Daemon::SERVICE_STOP_PENDING(), 15000 );
- }
- elsif ( $Message != Win32::Daemon::SERVICE_CONTROL_NONE() ) {
- Win32::Daemon::State( $PrevState );
- }
- }
-
- Win32::Sleep( 1000 );
- }
-
- Win32::Daemon::StopService();
- exit;
- }
- elsif ($ARGV[0] eq '--help') {
- system("perldoc $0");
- exit;
- }
- elsif ($ARGV[0] ne '--run') {
- $SIG{__DIE__} = sub { $ProcessObj->Kill(0) if $ProcessObj };
- $runsvc->();
- warn "RT FastCGI Handler launched. Press [Enter] to terminate...\n";
- <STDIN>;
- exit;
- }
-}
-
-###############################################################################
-
-warn "Begin listening on $ENV{'FCGI_SOCKET_PATH'}\n";
-
-require CGI::Fast;
-
-RT::Init();
-
-# Response loop
-while( my $cgi = CGI::Fast->new ) {
- my $comp = $ENV{'PATH_INFO'};
-
- $comp = $1 if ($comp =~ /^(.*)$/);
- $comp =~ s|^$RT::WebPath\b||i;
- $comp .= "index.html" if ($comp =~ /\/$/);
- $comp =~ s/.pl$/.html/g;
-
- warn "Serving $comp\n";
-
- $Handler->handle_cgi($comp);
- RT::Interface::Web::Handler->CleanupRequest();
- # _should_ always be tied
-}
-
-1;
-
-=head1 AUTHORS
-
-Autrijus Tang E<lt>autrijus@autrijus.orgE<gt>
-
-=head1 COPYRIGHT
-
-Copyright 2002 by Autrijus Tang E<lt>autrijus@autrijus.orgE<gt>.
-
-This program is free software; you can redistribute it and/or
-modify it under the same terms as Perl itself.
-
-See L<http://www.perl.com/perl/misc/Artistic.html>
-
-=cut
diff --git a/rt/bin/rt-commit-handler b/rt/bin/rt-commit-handler
deleted file mode 100644
index 29e443e..0000000
--- a/rt/bin/rt-commit-handler
+++ /dev/null
@@ -1,846 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-# {{{ Docs
-# -*-Perl-*-
-#
-#ident "@(#)ccvs/contrib:$Name: $:$Id: rt-commit-handler,v 1.1 2003-07-15 13:16:15 ivan Exp $"
-#
-# Perl filter to handle the log messages from the checkin of files in multiple
-# directories. This script will group the lists of files by log message, and
-# send one piece of mail per unique message, no matter how many files are
-# committed.
-
-=head1 NAME rt-commit-handler
-
-=head1 USAGE
-
-
-
-=head2 Regular use
-
-Stick the following in in CVSROOT/commitinfo
-
- ALL /opt/rt3/bin/rt-commit-handler --record-last-dir
-
-Stick the following in CVSROOT/loginfo
-
- ALL /opt/rt3/bin/rt-commit-handler --cvs-root /pathtocvs/root --rt %{Vvts}
-
-=head2 Invocation (advanced use)
-
-rt-commit-handler --cvs-root /path/to/cvs/root [-d] [-D] [-r] [-M module] \
- [[-m mailto] ...] [[-R replyto] ...] [-f logfile]
-
-
- -d - turn on debugging
- -m mailto - send mail to "mailto" (multiple)
- -R replyto - set the "Reply-To:" to "replyto" (multiple)
- -M modulename - set module name to "modulename"
- -f logfile - write commit messages to logfile too
- -D - generate diff commands
- --rt - invoke RT commit handler
- --cvs-root - specify your CVS root
-
- --record-last-dir - Record the last directory with changes in
- pre-commit (commitinfo) mode
-
-
-=cut
-
-# }}}
-
-use strict;
-use Carp;
-use Getopt::Long;
-use Text::Wrap;
-use Digest::MD5;
-use MIME::Entity;
-
-use lib ("/opt/rt3/lib", "/opt/rt3/local/lib");
-
-use RT::Interface::CLI qw(CleanEnv GetCurrentUser GetMessageContent loc);
-
-use vars
- qw(@MAILER $TMPDIR $FILE_PREFIX $LASTDIR_FILE $HASH_FILE $VERSION_FILE $MESSAGE_FILE $MAIL_FILE $DEBUG $MAILTO $REPLYTO $id $MODULE_NAME
- $LOGIN $COMMITLOG $CVS_ROOT $RT_HANDLER);
-
-#Clean out all the nasties from the environment
-CleanEnv();
-
-#Load etc/config.pm and drop privs
-RT::LoadConfig();
-
-#Drop setgid permissions
-RT::DropSetGIDPermissions();
-
-# {{{ Variable setup
-$TMPDIR = '/tmp';
-$FILE_PREFIX = $TMPDIR . '/#cvs.';
-
-# The root of your CVS install. we should get this from some smarter place.
-# It needs a trailing /
-
-$LASTDIR_FILE = $FILE_PREFIX . "lastdir";
-$HASH_FILE = $FILE_PREFIX . "hash";
-$VERSION_FILE = $FILE_PREFIX . "version";
-$MESSAGE_FILE = $FILE_PREFIX . "message";
-$MAIL_FILE = $FILE_PREFIX . "mail";
-
-$DEBUG = 0;
-$RT_HANDLER = 1;
-
-$MAILTO = '';
-
-my @files = ();
-my (@log_lines);
-my $do_diff = 0;
-my $id = getpgrp(); # note, you *must* use a shell which does setpgrp()
-$LOGIN = getpwuid($<);
-
-# }}}
-
-die "User could not be found" unless ($LOGIN);
-
-# {{{ parse command line arguments (file list is seen as one arg)
-#
-while ( my $arg = shift @ARGV ) {
-
- if ( $arg eq '-d' ) {
- $DEBUG = 1;
- warn "Debug turned on...\n";
- }
- elsif ( $arg =~ /^--record-last-dir$/i ) {
- record_last_dir( $id, $ARGV[0] );
- exit(0);
- }
- elsif ( $arg eq '-m' ) {
- $MAILTO .= ", " if $MAILTO;
- $MAILTO .= shift @ARGV;
- }
- elsif ( $arg eq '--rt' ) {
- $RT_HANDLER = 1;
- }
- elsif ( $arg eq '-R' ) {
- $REPLYTO .= ", " if $REPLYTO;
- $REPLYTO .= shift @ARGV;
- }
- elsif ( $arg eq '-M' ) {
- die ("too many '-M' args\n") if $MODULE_NAME;
- $MODULE_NAME = shift @ARGV;
- }
- elsif ( $arg eq '--cvs-root' ) {
- $CVS_ROOT = shift @ARGV;
- $CVS_ROOT .= "/" unless ( $CVS_ROOT =~ /\/$/ );
- }
- elsif ( $arg eq '-f' ) {
- die ("too many '-f' args\n") if $COMMITLOG;
- $COMMITLOG = shift @ARGV;
-
- # This is a disgusting hack to untaint $COMMITLOG if we're running from
- # setgid cvs.
- $COMMITLOG = untaint($COMMITLOG);
- }
- elsif ( $arg eq '-D' ) {
- $do_diff = 1;
- }
- else {
- @files = split ( ' ', $arg );
- last;
- }
-}
-
-# }}}
-
-$REPLYTO = $LOGIN unless ($REPLYTO);
-
-# for now, the first "file" is the repository directory being committed,
-# relative to the $CVSROOT location
-#
-my $dir = shift @files;
-
-# XXX there are some ugly assumptions in here about module names and
-# XXX directories relative to the $CVSROOT location -- really should
-# XXX read $CVSROOT/CVSROOT/modules, but that's not so easy to do, since
-# XXX we have to parse it backwards.
-#
-# XXX For now we set the `module' name to the top-level directory name.
-#
-unless ($MODULE_NAME) {
- ($MODULE_NAME) = split ( '/', $dir, 2 );
-}
-
-if ($DEBUG) {
- warn "module - ", $MODULE_NAME, "\n";
- warn "dir - ", $dir, "\n";
- warn "files - ", join ( " ", @files ), "\n";
- warn "id - ", $id, "\n";
-}
-
-# {{{ Check for a new directory or an import command.
-
-#
-# files[0] - "-"
-# files[1] - "New"
-# files[2] - "directory"
-#
-# files[0] - "-"
-# files[1] - "Imported"
-# files[2] - "sources"
-#
-if ( $files[0] eq "-" ) {
-
- #we just don't care about New Directory notes
- unless ( $files[1] eq "New" && $files[2] eq "directory" ) {
-
- my @text = ();
-
- push @text, build_header();
- push @text, "";
-
- while ( my $line = <STDIN> ) {
- chop $line; # Drop the newline
- push @text, $line;
- }
-
- append_logfile( $COMMITLOG, @text ) if ($COMMITLOG);
-
- mail_notification( $id, @text );
- }
-
- exit 0;
-}
-
-# }}}
-
-# {{{ Collect just the log message from stdin.
-#
-
-while ( my $line = <STDIN> ) {
- chop $line; # strip the newline
- last if ( $line =~ /^Log Message:$/ );
-}
-while ( my $line = <STDIN> ) {
- chop $line; # strip the newline
- $line =~ s/\s+$//; # strip trailing white space
- push @log_lines, $line;
-}
-
-my $md5 = Digest::MD5->new();
-foreach my $line (@log_lines) {
- $md5->add( $line . "\n" );
-}
-my $hash = $md5->hexdigest();
-
-warn "hash = $hash\n" if ($DEBUG);
-
-if ( !-e "$MESSAGE_FILE.$id.$hash" ) {
- append_logfile( "$HASH_FILE.$id", $hash );
- write_file( "$MESSAGE_FILE.$id.$hash", @log_lines );
-}
-
-# }}}
-
-# Spit out the information gathered in this pass.
-
-append_logfile( "$VERSION_FILE.$id.$hash", $dir . '/', @files );
-
-# {{{ Check whether this is the last directory. If not, quit.
-
-warn "Checking current dir against last dir $LASTDIR_FILE.$id\n" if ($DEBUG);
-
-my @last_dir = read_file("$LASTDIR_FILE.$id");
-
-unless ($CVS_ROOT) {
- die "No cvs root specified with --cvs-root. Can't continue.";
-}
-
-if ( $last_dir[0] ne $CVS_ROOT . $dir ) {
- warn "Current directory $CVS_ROOT$dir is not last directory $last_dir[0].\n"
- if ($DEBUG);
- exit 0;
-}
-
-# }}}
-
-# {{{ End Of Commits!
-#
-
-# This is it. The commits are all finished. Lump everything together
-# into a single message, fire a copy off to the mailing list, and drop
-# it on the end of the Changes file.
-#
-
-#
-# Produce the final compilation of the log messages
-#
-
-my @hashes = read_file("$HASH_FILE.$id");
-my (@text);
-
-push @text, build_header();
-push @text, "";
-
-my ( @added_files, @modified_files, @removed_files );
-
-foreach my $hash (@hashes) {
-
- # In case we're running setgid, make sure the hash file hasn't been hacked.
- $hash =~ m/([a-z0-9]*)/ || die "*** Hacking attempt detected\n";
- $hash = $1;
-
- my @files = read_file("$VERSION_FILE.$id.$hash");
- my @log_lines = read_file("$MESSAGE_FILE.$id.$hash");
-
- my $working_on_dir; # gets set as we iterate through the files.
- foreach my $file (@files) {
-
- #If we've entered a new directory, make a note of that and remove the trailing /
-
- if ( $file =~ s'\/$'' ) {
- $working_on_dir = $file;
- next;
- }
-
- my @file_entry = ( split ( ',', $file, 4 ), $working_on_dir );
-
- # file_entry looks like ths:
-
- # 0 1 2 3 4
- # Old rev : new rev : tag: file :directory
- my $entry = {};
- $entry->{'old'} = $file_entry[0];
- $entry->{'new'} = $file_entry[1];
- $entry->{'tag'} = $file_entry[2];
- $entry->{'file'} = $file_entry[3];
- $entry->{'dir'} = $file_entry[4];
-
- if ( $file_entry[0] eq 'NONE' ) {
- $entry->{'old'} = '0';
- push @added_files, $entry;
- }
- elsif ( $file_entry[1] eq 'NONE' ) {
- $entry->{'new'} = '0';
- push @removed_files, $entry;
- }
- else {
- push @modified_files, $entry;
- }
- }
-}
-
-# }}}
-
-# {{{ start building up the body
-
-# Strip leading and trailing blank lines from the log message. Also
-# compress multiple blank lines in the body of the message down to a
-# single blank line.
-#
-
-my $blank = 1;
-@log_lines = map {
- my $wasblank = $blank;
- $blank = $_ eq '';
- $blank && $wasblank ? () : $_;
-} @log_lines;
-
-pop @log_lines if $blank;
-
-@modified_files = order_and_summarize_diffs(@modified_files);
-@added_files = order_and_summarize_diffs(@added_files);
-@removed_files = order_and_summarize_diffs(@removed_files);
-
-push @text, "Modified Files:", format_lists(@modified_files)
- if (@modified_files);
-
-push @text, "Added Files:", format_lists(@added_files) if (@added_files);
-
-push @text, "Removed Files:", format_lists(@removed_files) if (@removed_files);
-
-push @text, "", "Log Message", @log_lines if (@log_lines);
-
-push @text, "";
-
-if ($RT_HANDLER) {
- rt_handler(
- @log_lines, "\n",
- loc("To generate a diff of this commit:\n"), "\n",
- format_diffs( @modified_files, @added_files, @removed_files )
- );
-}
-
-if ($COMMITLOG) {
- append_logfile( $COMMITLOG, @text );
-}
-
-if ($do_diff) {
- push @text, "";
- push @text, loc("To generate a diff of this commit:");
- push @text, format_diffs( @modified_files, @added_files, @removed_files );
- push @text, "";
-}
-
-# }}}
-
-# {{{ Mail out the notification.
-
-mail_notification( $id, @text );
-
-# }}}
-
-# {{{ clean up
-
-unless ($DEBUG) {
- $hash = untaint($hash);
- $id = untaint($id);
- unlink "$VERSION_FILE.$id.$hash";
- unlink "$MESSAGE_FILE.$id.$hash";
- unlink "$MAIL_FILE.$id";
- unlink "$LASTDIR_FILE.$id";
- unlink "$HASH_FILE.$id";
-}
-
-# }}}
-
-exit 0;
-
-# {{{ Subroutines
-#
-
-# {{{ append_logfile
-sub append_logfile {
- my $filename = shift;
- my (@lines) = @_;
-
- $filename = untaint($filename);
-
- open( FILE, ">>$filename" )
- || die ("Cannot open file $filename for append.\n");
- foreach my $line (@lines) {
- print FILE $line . "\n";
- }
- close(FILE);
-}
-
-# }}}
-
-# {{{ write_file
-sub write_file {
- my $filename = shift;
- my (@lines) = @_;
-
- $filename = untaint($filename);
-
- open( FILE, ">$filename" )
- || die ("Cannot open file $filename for write.\n");
- foreach my $line (@lines) {
- print FILE $line . "\n";
- }
- close(FILE);
-}
-
-# }}}
-
-# {{{ read_file
-sub read_file {
- my $filename = shift;
- my (@lines);
-
- open( FILE, "<$filename" )
- || die ("Cannot open file $filename for read.\n");
- while ( my $line = <FILE> ) {
- chop $line;
- push @lines, $line;
- }
- close(FILE);
-
- return (@lines);
-}
-
-# }}}
-
-# {{{ sub format_lists
-
-sub format_lists {
- my @items = (@_);
-
- my $files = "";
- map {
- $_->{'files'} && ( $files .= ' ' . join ( ' ', @{ $_->{'files'} } ) );
- } @items;
-
- my @lines = wrap( "\t", "\t\t", $files );
- return (@lines);
-
-}
-
-# }}}
-
-# {{{ sub format_diffs
-
-sub format_diffs {
- my @items = (@_);
-
- my @lines;
- foreach my $item (@items) {
- next unless ( $item->{'files'} );
- push ( @lines,
- "cvs diff -r"
- . $item->{'old'} . " -r"
- . $item->{'new'} . " "
- . join ( " ", @{ $item->{'files'} } ) . "\n" );
-
- }
-
- @lines = fill( "\t", "\t\t", @lines );
-
- return (@lines);
-}
-
-# }}}
-
-# {{{ sub order_and_summarize_diffs {
-
-# takes an array of file items
-# returns a sorted array of fileset items, which are like file items, except they can have an array of files, rather than
-# a singleton file.
-
-sub order_and_summarize_diffs {
-
- my @files = (@_);
-
- # Sort by tag, dir, file.
- @files = sort {
- $a->{'tag'} cmp $b->{'tag'}
- || $a->{'dir'} cmp $b->{'dir'}
- || $a->{'file'} cmp $b->{'file'};
- } @files;
-
- # Combine adjacent rows that are the same modulo the file name.
-
- my @items = (undef);
-
- foreach my $file (@files) {
- if ( $#items == -1 #if it's empty
- || ( !defined $items[-1]->{'old'}
- || $items[-1]->{'old'} ne $file->{'old'} )
- || ( !defined $items[-1]->{'new'}
- || $items[-1]->{'new'} ne $file->{'new'} )
- || ( !defined $items[-1]->{'tag'}
- || $items[-1]->{'tag'} ne $file->{'tag'} ) )
- {
-
- push ( @items, $file );
- }
- push ( @{ $items[-1]->{'files'} },
- $file->{'dir'} . "/" . $file->{'file'} );
- }
-
- return (@items);
-}
-
-# }}}
-
-# {{{ build_header
-
-sub build_header {
- my $now = gmtime;
- my $header =
- sprintf( "Module Name:\t%s\nCommitted By:\t%s\nDate:\t\t%s %s %s",
- $MODULE_NAME, $LOGIN, substr( $now, 0, 19 ), "UTC",
- substr( $now, 20, 4 ) );
- return ($header);
-}
-
-# }}}
-
-# {{{ mail_notification
-sub mail_notification {
- my $id = shift;
- my (@text) = @_;
- write_file( "$MAIL_FILE.$id", "From: " . $LOGIN,
- "Subject: CVS commit: " . $MODULE_NAME, "To: " . $MAILTO,
- "Reply-To: " . $REPLYTO, "", "", @text );
-
- my $entity = MIME::Entity->build(
- From => $LOGIN,
- To => $MAILTO,
- Subject => "CVS commit: " . $MODULE_NAME,
- 'Reply-To' => $REPLYTO,
- Data => join ( "\n", @text )
- );
- if ( $RT::MailCommand eq 'sendmailpipe' ) {
- open( MAIL, "|$RT::SendmailPath $RT::SendmailArguments" )
- || die "Couldn't send mail: " . $@ . "\n";
- print MAIL $entity->as_string;
- close(MAIL);
- }
- else {
- $entity->send( $RT::MailCommand, $RT::MailParams );
- }
-
-}
-
-# }}}
-
-# {{{ sub record_last_dir
-
-sub record_last_dir {
- my $id = shift;
- my $dir = shift;
-
- # make a note of this directory. later, we'll use this to
- # figure out if we've gone through the whole commit,
- # for something that is a bad mockery of attomic commits.
-
- warn "about to write $dir to $LASTDIR_FILE.$id" if ($DEBUG);
-
- write_file( "$LASTDIR_FILE.$id", $dir );
-}
-
-# }}}
-
-# {{{ Get the RT stuff set up
-
-# {{{ sub rt_handler
-
-sub rt_handler {
- my (@LogMessage) = (@_);
-
- #Connect to the database and get RT::SystemUser and RT::Nobody loaded
- RT::Init;
-
- require RT::Ticket;
-
- #Get the current user all loaded
- my $CurrentUser = GetCurrentUser();
-
- if ( !$CurrentUser->Id ) {
- print
-loc("No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\n");
- return;
- }
-
- my (@commands) = find_commands( \@LogMessage );
-
- my ( @tickets, @errors );
-
- # Get the list of tickets we're working with out of commands
- grep { $_ =~ /^RT-Ticket:\s*(.*?)$/i && push ( @tickets, $1 ) } @commands;
-
- my $message = new MIME::Entity;
- $message->build(
- From => $CurrentUser->EmailAddress,
- Subject => 'CVS Commit',
- Data => \@LogMessage
- );
-
- # {{{ comment or correspond, as needed
-
- foreach my $ticket (@tickets) {
- my $TicketObj = RT::Ticket->new($CurrentUser);
- $TicketObj->Load($ticket);
- my ( $id, $msg );
- unless ( $TicketObj->Id ) {
- push ( @errors,
-"Couldn't load ticket #$ticket. Not adding commit log to ticket history.\n"
- );
- }
-
- if ( $LogMessage[0] =~ /^(comment|private)$/ ) {
- ( $id, $msg ) = $TicketObj->Comment( MIMEObj => $message );
-
- }
- else {
- ( $id, $msg ) = $TicketObj->Correspond( MIMEObj => $message );
- }
-
- push ( @errors, ">> Log message",
- "Ticket #" . $TicketObj->Id . ": " . $msg );
-
- }
-
- # }}}
-
- my ($reply) = ActOnPseudoHeaders( $CurrentUser, @commands );
- print "$reply\n" if ($reply);
- print join ( "\n", @errors );
- print "\n";
-
-}
-
-# }}}
-
-# {{{ sub find_commands
-
-sub find_commands {
- my $lines = shift;
- my (@pseudoheaders);
-
- while ( my $line = shift @{$lines} ) {
- next if $line =~ /^\s*?$/;
- if ( $line =~ /^RT-/i ) {
-
- push ( @pseudoheaders, $line );
- }
-
- #If we find a line that's not a command, get out.
- else {
- unshift ( @{$lines}, $line );
- last;
- }
- }
-
- return (@pseudoheaders);
-
-}
-
-# }}}
-
-# {{{ sub ActOnPseudoHeaders
-
-=item ActOnPseudoHeaders $PseudoHeaders
-
-Takes a string of pseudo-headers, iterates through them and does what they tell it to.
-
-=cut
-
-sub ActOnPseudoHeaders {
- my $CurrentUser = shift;
- my (@actions) = (@_);
-
- my $ResultsMessage = '';
- my $Ticket = RT::Ticket->new($CurrentUser);
-
- foreach my $action (@actions) {
- my ($val);
- my $msg = '';
-
- $ResultsMessage .= ">>> $action\n";
-
- if ( $action =~ /^RT-(.*?):\s*(.*)$/i ) {
- my $command = $1;
- my $args = $2;
-
- if ( $command =~ /^ticket$/i ) {
-
- $val = $Ticket->Load($args);
- unless ($val) {
- $ResultsMessage .=
- loc("ERROR: Couldn't load ticket '[_1]': [_2].\n", $1, $msg);
- . loc("Aborting to avoid unintended ticket modifications.\n")
- . loc("The following commands were not proccessed:\n\n")
- . join ( "\n", @actions );
- return ($ResultsMessage);
- }
- $ResultsMessage .= loc("Ticket [_1] loaded\n", $Ticket->Id);
- }
- else {
- unless ( $Ticket->Id ) {
- $ResultsMessage .= loc("No Ticket specified. Aborting ticket ")
- . loc("modifications\n\n")
- . loc("The following commands were not proccessed:\n\n")
- . join ( "\n", @actions );
- return ($ResultsMessage);
- }
-
- # Deal with the basics
- if ( $command =~ /^(Subject|Owner|Status|Queue)$/i ) {
- my $method = 'Set' . ucfirst( lc($1) );
- ( $val, $msg ) = $Ticket->$method($args);
- }
-
- # Deal with the dates
- elsif ( $command =~ /^(due|starts|started|resolved)$/i ) {
- my $method = 'Set' . ucfirst( lc($1) );
- my $date = new RT::Date($CurrentUser);
- $date->Set( Format => 'unknown', Value => $args );
- ( $val, $msg ) = $Ticket->$method( $date->ISO );
- }
-
- # Deal with the watchers
- elsif ( $command =~ /^(requestor|requestors|cc|admincc)$/i ) {
- my $operator = "+";
- my ($type);
- if ( $args =~ /^(\+|\-)(.*)$/ ) {
- $operator = $1;
- $args = $2;
- }
- $type = 'Requestor' if ( $command =~ /^requestor/i );
- $type = 'Cc' if ( $command =~ /^cc/i );
- $type = 'AdminCc' if ( $command =~ /^admincc/i );
-
- my $user = RT::User->new($CurrentUser);
- $user->Load($args);
-
- if ($operator eq '+') {
- ($val, $msg) = $Ticket->AddWatcher( Type => $type,
- PrincipalId => $user->PrincipalId);
- } elsif ($operator eq '-') {
- ($val, $msg) = $Ticket->DeleteWatcher( Type => $type,
- PrincipalId => $user->PrincipalId);
- }
-
- }
- $ResultsMessage .= $msg . "\n";
- }
-
- }
- return ($ResultsMessage);
-
-}
-
-# }}}
-
-# {{{ sub untaint
-sub untaint {
- my $val = shift;
-
- if ( $val =~ /^([-\#\/\w.]+)$/ ) {
- $val = $1; # $data now untainted
- }
- else {
- die loc("Bad data in [_1]", $val); # log this somewhere
- }
- return ($val);
-}
-
-# }}}
-
-=head1 AUTHOR
-
-
-
- rt-commit-handler is a rewritten version of the NetBSD commit handler,
- which was placed in the public domain by Charles Hannum. It bore the following
- authors statement:
-
- Contributed by David Hampton <hampton@cisco.com>
- Hacked greatly by Greg A. Woods <woods@planix.com>
- Rewritten by Charles M. Hannum <mycroft@netbsd.org>
-
-=cut
-
diff --git a/rt/bin/rt-crontool b/rt/bin/rt-crontool
deleted file mode 100644
index cdbc3cb..0000000
--- a/rt/bin/rt-crontool
+++ /dev/null
@@ -1,220 +0,0 @@
-#!/usr/bin/perl
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-use strict;
-use Carp;
-
-use lib ("/opt/rt3/lib", "/opt/rt3/local/lib");
-
-package RT;
-
-use Getopt::Long;
-
-use RT::Interface::CLI qw(CleanEnv GetCurrentUser GetMessageContent loc);
-use RT::Tickets;
-use RT::Template;
-
-#Clean out all the nasties from the environment
-CleanEnv();
-
-# Load the config file
-RT::LoadConfig();
-
-#Connect to the database and get RT::SystemUser and RT::Nobody loaded
-RT::Init();
-
-#Drop setgid permissions
-RT::DropSetGIDPermissions();
-
-#Get the current user all loaded
-my $CurrentUser = GetCurrentUser();
-
-unless ( $CurrentUser->Id ) {
- print loc("No RT user found. Please consult your RT administrator.\n");
- exit(1);
-}
-
-my ( $search, $condition, $action, $search_arg, $condition_arg, $action_arg,
- $template_id, $help, $verbose );
-GetOptions( "search=s" => \$search,
- "search-arg=s" => \$search_arg,
- "condition=s" => \$condition,
- "condition-arg=s" => \$condition_arg,
- "action-arg=s" => \$action_arg,
- "action=s" => \$action,
- "template-id=s" => \$template_id,
- "help" => \$help,
- "verbose|v" => \$verbose );
-
-help() if $help;
-
-# We _must_ have a search object
-load_module($search);
-load_module($action) if ($action);
-load_module($condition) if ($condition);
-
-# load template if specified
-my $template_obj;
-if ($template_id) {
- $template_obj = RT::Template->new($RT::Nobody);
- $template_obj->LoadById($template_id);
-}
-
-#At the appointed time:
-
-#find a bunch of tickets
-my $tickets = RT::Tickets->new($CurrentUser);
-my $search = $search->new( TicketsObj => $tickets, Argument => $search_arg );
-
-$search->Prepare();
-
-# TicketsFound is an RT::Tickets object
-my $tickets = $search->TicketsObj;
-
-#for each ticket we've found
-while ( my $ticket = $tickets->Next() ) {
- print "\n" . $ticket->Id() . ": " if ($verbose);
-
- # perform some more advanced check
- if ($condition) {
- my $condition_obj = $condition->new( TicketObj => $ticket,
- Argument => $condition_arg );
-
- # if the condition doesn't apply, get out of here
-
- next unless ( $condition_obj->IsApplicable );
- print loc("Condition matches...") if ($verbose);
- }
-
- #prepare our action
- my $action_obj = $action->new( TicketObj => $ticket,
- TemplateObj => $template_obj,
- Argument => $action_arg );
-
- #if our preparation, move onto the next ticket
- next unless ( $action_obj->Prepare );
- print loc("Action prepared...") if ($verbose);
-
- #commit our action.
- next unless ( $action_obj->Commit );
- print loc("Action committed.") if ($verbose);
-}
-
-# {{{ load_module
-
-=head2 load_module
-
-Loads a perl module, dying nicely if it can't find it.
-
-=cut
-
-sub load_module {
- my $modname = shift;
- eval "require $modname";
- if ($@) {
- die loc( "Failed to load module [_1]. ([_2])", $modname, $@ );
- }
-
-}
-
-# }}}
-
-# {{{ loc
-
-=head2 loc LIST
-
-Localize this string, with the current user's currentuser object
-
-=cut
-
-sub loc {
- $CurrentUser->loc(@_);
-}
-
-# }}}
-
-sub help {
-
- print loc( "[_1] is a tool to act on tickets from an external scheduling tool, such as cron.", $0 )
- . "\n";
- print loc("It takes several arguments:") . "\n\n";
-
- print " "
- . loc( "[_1] - Specify the search module you want to use", "--search" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--search-argument", "--search" )
- . "\n";
-
- print " "
- . loc( "[_1] - Specify the condition module you want to use", "--condition" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--condition-argument", "--condition" )
- . "\n";
- print " "
- . loc( "[_1] - Specify the action module you want to use", "--action" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--action-argument", "--action" )
- . "\n";
- print " "
- . loc( "[_1] - Output status updates to STDOUT", "--verbose" ) . "\n";
- print "\n";
- print "\n";
- print loc("Security:")."\n";
- print loc("This tool allows the user to run arbitrary perl modules from within RT.")." ".
- loc("If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT.")." ".
- loc("It is incredibly important that nonprivileged users not be allowed to run this tool."). " " .
- loc("It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool.")."\n";
- print "\n";
- print loc("Example:");
- print "\n";
- print " "
- . loc( "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
- )
- . "\n\n";
-
- print " bin/rt-cron-tool \\\n";
- print
- " --search RT::Search::ActiveTicketsInQueue --search-arg general \\\n";
- print
- " --condition RT::Condition::UntouchedInHours --condition-arg 4 \\\n";
- print " --action RT::Action::SetPriority --action-arg 99 \\\n";
- print " --verbose\n";
-
- print "\n";
- print loc("Escalate tickets");
- print "rt-crontool \\\n";
- print " --search RT::Search::ActiveTicketsInQueue --search-arg thequeuename \\\n";
- print " --action RT::Action::EscalatePriority \\\n";
-
-
-
-
-
-
- exit(0);
-}
diff --git a/rt/bin/rt-crontool.in b/rt/bin/rt-crontool.in
deleted file mode 100644
index 76b08c3..0000000
--- a/rt/bin/rt-crontool.in
+++ /dev/null
@@ -1,244 +0,0 @@
-#!@PERL@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-use Carp;
-
-use lib ("@LOCAL_LIB_PATH@", "@RT_LIB_PATH@");
-
-package RT;
-
-use Getopt::Long;
-
-use RT::Interface::CLI qw(CleanEnv GetCurrentUser GetMessageContent loc);
-use RT::Tickets;
-use RT::Template;
-
-#Clean out all the nasties from the environment
-CleanEnv();
-
-# Load the config file
-RT::LoadConfig();
-
-#Connect to the database and get RT::SystemUser and RT::Nobody loaded
-RT::Init();
-
-#Get the current user all loaded
-my $CurrentUser = GetCurrentUser();
-
-unless ( $CurrentUser->Id ) {
- print loc("No RT user found. Please consult your RT administrator.\n");
- exit(1);
-}
-
-my ( $search, $condition, $action, $search_arg, $condition_arg, $action_arg,
- $template_id, $help, $verbose );
-GetOptions( "search=s" => \$search,
- "search-arg=s" => \$search_arg,
- "condition=s" => \$condition,
- "condition-arg=s" => \$condition_arg,
- "action-arg=s" => \$action_arg,
- "action=s" => \$action,
- "template-id=s" => \$template_id,
- "help" => \$help,
- "verbose|v" => \$verbose );
-
-help() if $help or not $search or not $action;
-
-# We _must_ have a search object
-load_module($search);
-load_module($action) if ($action);
-load_module($condition) if ($condition);
-
-# load template if specified
-my $template_obj;
-if ($template_id) {
- $template_obj = RT::Template->new($CurrentUser);
- $template_obj->Load($template_id);
-}
-
-#At the appointed time:
-
-#find a bunch of tickets
-my $tickets = RT::Tickets->new($CurrentUser);
-my $search = $search->new(
- TicketsObj => $tickets,
- Argument => $search_arg,
- CurrentUser => $CurrentUser
-);
-
-$search->Prepare();
-
-# TicketsFound is an RT::Tickets object
-my $tickets = $search->TicketsObj;
-
-#for each ticket we've found
-while ( my $ticket = $tickets->Next() ) {
- print $ticket->Id() . ": " if ($verbose);
-
- # perform some more advanced check
- if ($condition) {
- my $condition_obj = $condition->new( TicketObj => $ticket,
- Argument => $condition_arg,
- CurrentUser => $CurrentUser );
-
- # if the condition doesn't apply, get out of here
-
- next unless ( $condition_obj->IsApplicable );
- print loc("Condition matches...") if ($verbose);
- }
-
- #prepare our action
- my $action_obj = $action->new(
- TicketObj => $ticket,
- TemplateObj => $template_obj,
- Argument => $action_arg,
- CurrentUser => $CurrentUser
- );
-
- #if our preparation, move onto the next ticket
- next unless ( $action_obj->Prepare );
- print loc("Action prepared...") if ($verbose);
-
- #commit our action.
- next unless ( $action_obj->Commit );
- print loc("Action committed.\n") if ($verbose);
-}
-
-# {{{ load_module
-
-=head2 load_module
-
-Loads a perl module, dying nicely if it can't find it.
-
-=cut
-
-sub load_module {
- my $modname = shift;
- eval "require $modname";
- if ($@) {
- die loc( "Failed to load module [_1]. ([_2])", $modname, $@ );
- }
-
-}
-
-# }}}
-
-# {{{ loc
-
-=head2 loc LIST
-
-Localize this string, with the current user's currentuser object
-
-=cut
-
-sub loc {
- $CurrentUser->loc(@_);
-}
-
-# }}}
-
-sub help {
-
- print loc( "[_1] is a tool to act on tickets from an external scheduling tool, such as cron.", $0 )
- . "\n";
- print loc("It takes several arguments:") . "\n\n";
-
- print " "
- . loc( "[_1] - Specify the search module you want to use", "--search" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--search-argument", "--search" )
- . "\n";
-
- print " "
- . loc( "[_1] - Specify the condition module you want to use", "--condition" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--condition-argument", "--condition" )
- . "\n";
- print " "
- . loc( "[_1] - Specify the action module you want to use", "--action" )
- . "\n";
- print " "
- . loc( "[_1] - An argument to pass to [_2]", "--action-argument", "--action" )
- . "\n";
- print " "
- . loc( "[_1] - Output status updates to STDOUT", "--verbose" ) . "\n";
- print "\n";
- print "\n";
- print loc("Security:")."\n";
- print loc("This tool allows the user to run arbitrary perl modules from within RT.")." ".
- loc("If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT.")." ".
- loc("It is incredibly important that nonprivileged users not be allowed to run this tool."). " " .
- loc("It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool.")."\n";
- print "\n";
- print loc("Example:");
- print "\n";
- print " "
- . loc( "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
- )
- . "\n\n";
-
- print " bin/rt-crontool \\\n";
- print " --search RT::Search::ActiveTicketsInQueue --search-arg general \\\n";
- print " --condition RT::Condition::UntouchedInHours --condition-arg 4 \\\n";
- print " --action RT::Action::SetPriority --action-arg 99 \\\n";
- print " --verbose\n";
-
- print "\n";
- print loc("Escalate tickets"). "\n";
- print " bin/rt-crontool \\\n";
- print " --search RT::Search::ActiveTicketsInQueue --search-arg general \\\n";
- print " --action RT::Action::EscalatePriority\n";
-
-
-
-
-
-
- exit(0);
-}
diff --git a/rt/bin/rt-mailgate b/rt/bin/rt-mailgate
deleted file mode 100755
index b304436..0000000
--- a/rt/bin/rt-mailgate
+++ /dev/null
@@ -1,587 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-=head1 NAME
-
-rt-mailgate - Mail interface to RT3.
-
-=begin testing
-
-use RT::I18N;
-
-
-# {{{ Test new ticket creation by root who is privileged and superuser
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: root\@localhost
-To: rt\@example.com
-Subject: This is a test of new ticket creation
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-use RT::Tickets;
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok (UNIVERSAL::isa($tick,'RT::Ticket'));
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'This is a test of new ticket creation', "Created the ticket");
-
-# }}}
-
-
-# {{{This is a test of new ticket creation as an unknown user
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist\@example.com
-To: rt\@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject ne 'This is a test of new ticket creation as an unknown user', "failed to create the new ticket from an unprivileged account");
-my $u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by failed ticket submission");
-
-
-# }}}
-
-# {{{ now everybody can create tickets. can a random unkown user create tickets?
-
-my $g = RT::Group->new($RT::SystemUser);
-$g->LoadSystemInternalGroup('Everyone');
-ok( $g->Id, "Found 'everybody'");
-
-my ($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-ok ($val, "Granted everybody the right to create tickets - $msg");
-
-sleep(60); # gotta sleep so the remote process' ACL cache times out
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist\@example.com
-To: rt\@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'This is a test of new ticket creation as an unknown user', "failed to create the new ticket from an unprivileged account");
-my $u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist@example.com');
-ok( $u->Id != 0, " user does not exist and was created by ticket submission");
-
-# }}}
-
-
-# {{{ can another random reply to a ticket without being granted privs? answer should be no.
-
-
-#($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-#ok ($val, "Granted everybody the right to create tickets - $msg");
-#sleep(60); # gotta sleep so the remote process' ACL cache times out
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-2\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a reply as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-2@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by ticket correspondence submission");
-# }}}
-# {{{ can another random reply to a ticket after being granted privs? answer should be yes
-
-
-($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'ReplyToTicket');
-ok ($val, "Granted everybody the right to reply to tickets - $msg");
-sleep(60); # gotta sleep so the remote process' ACL cache times out
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-2\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a reply as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-2@example.com');
-ok( $u->Id != 0, " user exists and was created by ticket correspondence submission");
-
-# }}}
-
-# {{{ can another random comment on a ticket without being granted privs? answer should be no.
-
-
-#($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-#ok ($val, "Granted everybody the right to create tickets - $msg");
-#sleep(60); # gotta sleep so the remote process' ACL cache times out
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action comment"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-3\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a comment as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-3@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by ticket comment submission");
-
-# }}}
-# {{{ can another random reply to a ticket after being granted privs? answer should be yes
-
-
-($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CommentOnTicket');
-ok ($val, "Granted everybody the right to reply to tickets - $msg");
-sleep(60); # gotta sleep so the remote process' ACL cache times out
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action comment"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-3\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a comment as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-3@example.com');
-ok( $u->Id != 0, " user exists and was created by ticket comment submission");
-
-# }}}
-
-# {{{ Testing preservation of binary attachments
-
-# Get a binary blob (Best Practical logo)
-
-# Create a mime entity with an attachment
-
-use MIME::Entity;
-my $entity = MIME::Entity->build( From => 'root@localhost',
- To => 'rt@localhost',
- Subject => 'binary attachment test',
- Data => ['This is a test of a binary attachment']);
-
-# currently in lib/t/autogen
-$entity->attach(Path => '../../../html/NoAuth/images/spacer.gif',
- Type => 'image/gif',
- Encoding => 'base64');
-
-# Create a ticket with a binary attachment
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-
-$entity->print(\*MAIL);
-
-close (MAIL);
-
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok (UNIVERSAL::isa($tick,'RT::Ticket'));
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'binary attachment test', "Created the ticket - ".$tick->Id);
-
-my $file = `cat ../../../html/NoAuth/images/spacer.gif`;
-ok ($file, "Read in the logo image");
-
-
- use Digest::MD5;
-warn "for the raw file the content is ".Digest::MD5::md5_base64($file);
-
-
-
-# Verify that the binary attachment is valid in the database
-my $attachments = RT::Attachments->new($RT::SystemUser);
-$attachments->Limit(FIELD => 'ContentType', VALUE => 'image/gif');
-ok ($attachments->Count == 1, 'Found only one gif in the database');
-my $attachment = $attachments->First;
-my $acontent = $attachment->Content;
-
- warn "coming from the database, the content is ".Digest::MD5::md5_base64($acontent);
-
-is( $acontent, $file, 'The attachment isn\'t screwed up in the database.');
-# Log in as root
-use Getopt::Long;
-use LWP::UserAgent;
-
-
-# Grab the binary attachment via the web ui
-my $ua = LWP::UserAgent->new();
-
-my $full_url = "http://localhost/Ticket/Attachment/".$attachment->TransactionId."/".$attachment->id."/spacer.gif?&user=root&pass=password";
-my $r = $ua->get( $full_url);
-
-
-# Verify that the downloaded attachment is the same as what we uploaded.
-is($file, $r->content, 'The attachment isn\'t screwed up in download');
-
-
-
-# }}}
-
-# {{{ Simple I18N testing
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-
-print MAIL <<EOF;
-From: root\@localhost
-To: rtemail\@example.com
-Subject: This is a test of I18N ticket creation
-Content-Type: text/plain; charset="utf-8"
-
-2 accented lines
-\303\242\303\252\303\256\303\264\303\273
-\303\241\303\251\303\255\303\263\303\272
-bye
-EOF
-close (MAIL);
-
-my $unitickets = RT::Tickets->new($RT::SystemUser);
-$unitickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$unitickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $unitick = $unitickets->First();
-ok (UNIVERSAL::isa($unitick,'RT::Ticket'));
-ok ($unitick->Id, "found ticket ".$unitick->Id);
-ok ($unitick->Subject eq 'This is a test of I18N ticket creation', "Created the ticket - ". $unitick->Subject);
-
-
-
-my $unistring = "\303\241\303\251\303\255\303\263\303\272";
-Encode::_utf8_on($unistring);
-is ($unitick->Transactions->First->Content, $unitick->Transactions->First->Attachments->First->Content, "Content is ". $unitick->Transactions->First->Attachments->First->Content);
-ok($unitick->Transactions->First->Attachments->First->Content =~ /$unistring/i, $unitick->Id." appears to be unicode ". $unitick->Transactions->First->Attachments->First->Id);
-# supposedly I18N fails on the second message sent in.
-
-ok(open(MAIL, "|/opt/rt3/bin/rt-mailgate --url http://localhost/ --queue general --action correspond"), "Opened the mailgate - $@");
-
-print MAIL <<EOF;
-From: root\@localhost
-To: rtemail\@example.com
-Subject: This is a test of I18N ticket creation
-Content-Type: text/plain; charset="utf-8"
-
-2 accented lines
-\303\242\303\252\303\256\303\264\303\273
-\303\241\303\251\303\255\303\263\303\272
-bye
-EOF
-close (MAIL);
-
-my $tickets2 = RT::Tickets->new($RT::SystemUser);
-$tickets2->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets2->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $tick2 = $tickets2->First();
-ok (UNIVERSAL::isa($tick2,'RT::Ticket'));
-ok ($tick2->Id, "found ticket ".$tick2->Id);
-ok ($tick2->Subject eq 'This is a test of I18N ticket creation', "Created the ticket");
-
-
-
-my $unistring = "\303\241\303\251\303\255\303\263\303\272";
-Encode::_utf8_on($unistring);
-
-ok ($tick2->Transactions->First->Content =~ $unistring, "It appears to be unicode - ".$tick2->Transactions->First->Content);
-
-# }}}
-
-
-($val,$msg) = $g->PrincipalObj->RevokeRight(Right => 'CreateTicket');
-ok ($val, $msg);
-
-
-
-=end testing
-
-=cut
-
-
-use strict;
-use Getopt::Long;
-use LWP::UserAgent;
-
-use constant EX_TEMPFAIL => 75;
-
-my %opts;
-GetOptions( \%opts, "queue=s", "action=s", "url=s", "jar=s", "help", "debug", "extension=s" );
-
-if ( $opts{help} ) {
- require Pod::Usage;
- import Pod::Usage;
- pod2usage("RT Mail Gateway\n");
- exit 1; # Don't want to succeed if this is really an email!
-}
-
-for (qw(url)) {
- die "$0 invoked improperly\n\nNo $_ provided to mail gateway!\n" unless $opts{$_};
-}
-
-undef $/;
-my $message = <>;
-my $ua = LWP::UserAgent->new();
-$ua->cookie_jar( { file => $opts{jar} } );
-
-my %args = (
- queue => $opts{queue},
- action => $opts{action},
- message => $message,
- SessionType => 'REST', # Surpress login box
-);
-
-
-if ($opts{'extension'}) {
- $args{$opts{'extension'}} = $ENV{'EXTENSION'};
-}
-
-# Set up cookie here.
-
-my $full_url = $opts{'url'}. "/REST/1.0/NoAuth/mail-gateway";
-warn "Connecting to $full_url" if $opts{'debug'};
-
-
-
-my $r = $ua->post( $full_url, {%args} );
-check_failure($r);
-
-my $content = $r->content;
-warn $content if ($opts{debug});
-
-if ( $content !~ /^(ok|not ok)/ ) {
-
- # It's not the server's fault if the mail is bogus. We just want to know that
- # *something* came out of the server.
- die <<EOF
-RT server error.
-
-The RT server which handled your email did not behave as expected. It
-said:
-
-$content
-EOF
-
-}
-
-sub check_failure {
- my $r = shift;
- return if $r->is_success();
-
- # This ordinarily oughtn't to be able to happen, suggests a bug in RT.
- # So only load these heavy modules when they're needed.
- require HTML::TreeBuilder;
- require HTML::FormatText;
-
- my $error = $r->error_as_HTML;
- my $tree = HTML::TreeBuilder->new->parse($error);
- $tree->eof;
-
- # It'll be a cold day in hell before RT sends out bounces in HTML
- my $formatter = HTML::FormatText->new( leftmargin => 0,
- rightmargin => 50 );
- warn $formatter->format($tree);
- warn "This is $0 exiting because of an undefined server error" if ($opts{debug});
- exit EX_TEMPFAIL;
-}
-
-
-=head1 SYNOPSIS
-
- rt-mailgate --help : this text
-
-Usual invocation (from MTA):
-
- rt-mailgate --action (correspond|comment) --queue queuename
- --url http://your.rt.server/
- [ --extension (queue|action|ticket)
-
-See C<man rt-mailgate> for more.
-
-=head1 OPTIONS
-
-=over 3
-
-=item C<--action>
-
-Specifies whether this is a correspondence or comment address.
-
-=item C<--queue>
-
-Reflects which queue this address handles.
-
-=item C<--url>
-
-The location of the web server for your RT instance.
-
-
-=item C<--extension> OPTIONAL
-
-Some MTAs will route mail sent to user-foo@host or user+foo@host to user@host
-and present "foo" in the environment variable $EXTENSION. By specifying
-the value "queue" for this parameter, the queue this message should be
-submitted to will be set to the value of $EXTENSION. By specifying
-"ticket", $EXTENSION will be interpreted as the id of the ticket this message
-is related to. "action" will allow the user to specify either "comment" or
-"correspond" in the address extension.
-
-
-=head1 DESCRIPTION
-
-The RT mail gateway is the primary mechanism for communicating with RT
-via email. This program simply directs the email to the RT web server,
-which handles filing correspondence and sending out any required mail.
-It is designed to be run as part of the mail delivery process, either
-called directly by the MTA or C<procmail>, or in a F<.forward> or
-equivalent.
-
-=head1 SETUP
-
-Much of the set up of the mail gateway depends on your MTA and mail
-routing configuration. However, you will need first of all to create an
-RT user for the mail gateway and assign it a password; this helps to
-ensure that mail coming into the web server did originate from the
-gateway.
-
-Next, you need to route mail to C<rt-mailgate> for the queues you're
-monitoring. For instance, if you're using F</etc/aliases> and you have a
-"bugs" queue, you will want something like this:
-
- bugs: "|/opt/rt3/bin/rt-mailgate --queue bugs --action correspond
- --url http://rt.mycorp.com/"
-
- bugs-comment: "|/opt/rt3/bin/rt-mailgate --queue bugs --action comment
- --url http://rt.mycorp.com/"
-
-Note that you don't have to run your RT server on your mail server, as
-the mail gateway will happily relay to a different machine.
-
-=head1 CUSTOMIZATION
-
-By default, the mail gateway will accept mail from anyone. However,
-there are situations in which you will want to authenticate users
-before allowing them to communicate with the system. You can do this
-via a plug-in mechanism in the RT configuration.
-
-You can set the array C<@RT::MailPlugins> to be a list of plugins. The
-default plugin, if this is not given, is C<Auth::MailFrom> - that is,
-authentication of the person is done based on the C<From> header of the
-email. If you have additional filters or authentication mechanisms, you
-can list them here and they will be called in order:
-
- @RT::MailPlugins = (
- "Filter::SpamAssassin",
- "Auth::LDAP",
- # ...
- );
-
-See the documentation for any additional plugins you have.
-
-You may also put Perl subroutines into the C<@RT::MailPlugins> array, if
-they behave as described below.
-
-=head1 WRITING PLUGINS
-
-What's actually going on in the above is that C<@RT::MailPlugins> is a
-list of Perl modules; RT prepends C<RT::Interface::Email::> to the name,
-to form a package name, and then C<use>'s this module. The module is
-expected to provide a C<GetCurrentUser> subroutine, which takes a hash of
-several parameters:
-
-=over 4
-
-=item Message
-
-A C<MIME::Entity> object representing the email
-=item CurrentUser
-
-An C<RT::CurrentUser> object
-
-=item AuthStat
-
-The authentication level returned from the previous plugin.
-
-=item Ticket [OPTIONAL]
-
-The ticket under discussion
-
-=item Queue [OPTIONAL]
-
-If we don't already have a ticket id, we need to know which queue we're talking about
-
-=item Action
-
-The action being performed. At the moment, it's one of "comment" or "correspond"
-
-=back 4
-
-It returns two values, the new C<RT::CurrentUser> object, and the new
-authentication level. The authentication level can be zero, not allowed
-to communicate with RT at all, (a "permission denied" error is mailed to
-the correspondent) or one, which is the normal mode of operation.
-Additionally, if C<-1> is returned, then the processing of the plug-ins
-stops immediately and the message is ignored.
-
-=cut
-
diff --git a/rt/bin/rt-mailgate.in b/rt/bin/rt-mailgate.in
deleted file mode 100644
index 5ac9469..0000000
--- a/rt/bin/rt-mailgate.in
+++ /dev/null
@@ -1,320 +0,0 @@
-#!@PERL@ -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
-rt-mailgate - Mail interface to RT3.
-
-=cut
-
-
-use strict;
-use Getopt::Long;
-use LWP::UserAgent;
-
-use constant EX_TEMPFAIL => 75;
-
-my %opts;
-GetOptions( \%opts, "queue=s", "action=s", "url=s", "jar=s", "help", "debug", "extension=s", "timeout=i" );
-
-if ( $opts{help} ) {
- require Pod::Usage;
- import Pod::Usage;
- pod2usage("RT Mail Gateway\n");
- exit 1; # Don't want to succeed if this is really an email!
-}
-
-for (qw(url)) {
- die "$0 invoked improperly\n\nNo $_ provided to mail gateway!\n" unless $opts{$_};
-}
-
-my $ua = LWP::UserAgent->new();
-$ua->cookie_jar( { file => $opts{jar} } );
-
-my %args = (
- queue => $opts{queue},
- action => $opts{action},
- SessionType => 'REST', # Surpress login box
-);
-
-# Read the message in from STDIN
-$args{'message'} = do { local (@ARGV, $/); <> };
-
-unless ( $args{message} =~ /\S/ ) {
- print STDERR "$0: no message passed on STDIN!\n";
- exit 0;
-}
-
-if ($opts{'extension'}) {
- $args{$opts{'extension'}} = $ENV{'EXTENSION'};
-}
-
-# Set up cookie here.
-
-my $full_url = $opts{'url'}. "/REST/1.0/NoAuth/mail-gateway";
-warn "Connecting to $full_url" if $opts{'debug'};
-
-
-
-$ua->timeout(exists($opts{'timeout'}) ? $opts{'timeout'} : 180);
-my $r = $ua->post( $full_url, {%args} );
-check_failure($r);
-
-my $content = $r->content;
-warn $content if ($opts{debug});
-
-if ( $content !~ /^(ok|not ok)/ ) {
-
- # It's not the server's fault if the mail is bogus. We just want to know that
- # *something* came out of the server.
- warn <<EOF;
-RT server error.
-
-The RT server which handled your email did not behave as expected. It
-said:
-
-$content
-EOF
-
-exit EX_TEMPFAIL;
-
-}
-
-exit;
-
-
-sub check_failure {
- my $r = shift;
- return if $r->is_success();
-
- # This ordinarily oughtn't to be able to happen, suggests a bug in RT.
- # So only load these heavy modules when they're needed.
- require HTML::TreeBuilder;
- require HTML::FormatText;
-
- my $error = $r->error_as_HTML;
- my $tree = HTML::TreeBuilder->new->parse($error);
- $tree->eof;
-
- # It'll be a cold day in hell before RT sends out bounces in HTML
- my $formatter = HTML::FormatText->new( leftmargin => 0,
- rightmargin => 50 );
- warn $formatter->format($tree);
- warn "This is $0 exiting because of an undefined server error" if ($opts{debug});
- exit EX_TEMPFAIL;
-}
-
-
-=head1 SYNOPSIS
-
- rt-mailgate --help : this text
-
-Usual invocation (from MTA):
-
- rt-mailgate --action (correspond|comment|...) --queue queuename
- --url http://your.rt.server/
- [ --debug ]
- [ --extension (queue|action|ticket) ]
- [ --timeout seconds ]
-
-
-
-See C<man rt-mailgate> for more.
-
-=head1 OPTIONS
-
-=over 3
-
-=item C<--action>
-
-Specifies what happens to email sent to this alias. The avaliable
-basic actions are: C<correspond>, C<comment>.
-
-
-If you've set the RT configuration variable B<$RT::UnsafeEmailCommands>,
-C<take> and C<resolve> are also available. You can execute two or more
-actions on a single message using a C<-> separated list. RT will execute
-the actions in the listed order. For example you can use C<take-comment>,
-C<correspond-resolve> or C<take-comment-resolve> as actions.
-
-Note that C<take> and C<resolve> actions ignore message text if used
-alone. Include a C<comment> or C<correspond> action if you want RT
-to record the incoming message.
-
-The default action is C<correspond>.
-
-=item C<--queue>
-
-This flag determines which queue this alias should create a ticket in if no ticket identifier
-is found.
-
-=item C<--url>
-
-This flag tells the mail gateway where it can find your RT server. You should
-probably use the same URL that users use to log into RT.
-
-
-=item C<--extension> OPTIONAL
-
-Some MTAs will route mail sent to user-foo@host or user+foo@host to user@host
-and present "foo" in the environment variable $EXTENSION. By specifying
-the value "queue" for this parameter, the queue this message should be
-submitted to will be set to the value of $EXTENSION. By specifying
-"ticket", $EXTENSION will be interpreted as the id of the ticket this message
-is related to. "action" will allow the user to specify either "comment" or
-"correspond" in the address extension.
-
-=item C<--debug> OPTIONAL
-
-Print debugging output to standard error
-
-
-=item C<--timeout> OPTIONAL
-
-Configure the timeout for posting the message to the web server. The
-default timeout is 3 minutes (180 seconds).
-
-
-=head1 DESCRIPTION
-
-The RT mail gateway is the primary mechanism for communicating with RT
-via email. This program simply directs the email to the RT web server,
-which handles filing correspondence and sending out any required mail.
-It is designed to be run as part of the mail delivery process, either
-called directly by the MTA or C<procmail>, or in a F<.forward> or
-equivalent.
-
-=head1 SETUP
-
-Much of the set up of the mail gateway depends on your MTA and mail
-routing configuration. However, you will need first of all to create an
-RT user for the mail gateway and assign it a password; this helps to
-ensure that mail coming into the web server did originate from the
-gateway.
-
-Next, you need to route mail to C<rt-mailgate> for the queues you're
-monitoring. For instance, if you're using F</etc/aliases> and you have a
-"bugs" queue, you will want something like this:
-
- bugs: "|/opt/rt3/bin/rt-mailgate --queue bugs --action correspond
- --url http://rt.mycorp.com/"
-
- bugs-comment: "|/opt/rt3/bin/rt-mailgate --queue bugs --action comment
- --url http://rt.mycorp.com/"
-
-Note that you don't have to run your RT server on your mail server, as
-the mail gateway will happily relay to a different machine.
-
-=head1 CUSTOMIZATION
-
-By default, the mail gateway will accept mail from anyone. However,
-there are situations in which you will want to authenticate users
-before allowing them to communicate with the system. You can do this
-via a plug-in mechanism in the RT configuration.
-
-You can set the array C<@RT::MailPlugins> to be a list of plugins. The
-default plugin, if this is not given, is C<Auth::MailFrom> - that is,
-authentication of the person is done based on the C<From> header of the
-email. If you have additional filters or authentication mechanisms, you
-can list them here and they will be called in order:
-
- @RT::MailPlugins = (
- "Filter::SpamAssassin",
- "Auth::LDAP",
- # ...
- );
-
-See the documentation for any additional plugins you have.
-
-You may also put Perl subroutines into the C<@RT::MailPlugins> array, if
-they behave as described below.
-
-=head1 WRITING PLUGINS
-
-What's actually going on in the above is that C<@RT::MailPlugins> is a
-list of Perl modules; RT prepends C<RT::Interface::Email::> to the name,
-to form a package name, and then C<use>'s this module. The module is
-expected to provide a C<GetCurrentUser> subroutine, which takes a hash of
-several parameters:
-
-=over 4
-
-=item Message
-
-A C<MIME::Entity> object representing the email
-
-=item CurrentUser
-
-An C<RT::CurrentUser> object
-
-=item AuthStat
-
-The authentication level returned from the previous plugin.
-
-=item Ticket [OPTIONAL]
-
-The ticket under discussion
-
-=item Queue [OPTIONAL]
-
-If we don't already have a ticket id, we need to know which queue we're talking about
-
-=item Action
-
-The action being performed. At the moment, it's one of "comment" or "correspond"
-
-=back 4
-
-It returns two values, the new C<RT::CurrentUser> object, and the new
-authentication level. The authentication level can be zero, not allowed
-to communicate with RT at all, (a "permission denied" error is mailed to
-the correspondent) or one, which is the normal mode of operation.
-Additionally, if C<-1> is returned, then the processing of the plug-ins
-stops immediately and the message is ignored.
-
-=cut
-
diff --git a/rt/bin/rt.in b/rt/bin/rt.in
deleted file mode 100644
index d12460b..0000000
--- a/rt/bin/rt.in
+++ /dev/null
@@ -1,1890 +0,0 @@
-#!@PERL@ -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-# Designed and implemented for Best Practical Solutions, LLC by
-# Abhijit Menon-Sen <ams@wiw.org>
-
-use strict;
-
-# This program is intentionally written to have as few non-core module
-# dependencies as possible. It should stay that way.
-
-use Cwd;
-use LWP;
-use Text::ParseWords;
-use HTTP::Request::Common;
-
-# We derive configuration information from hardwired defaults, dotfiles,
-# and the RT* environment variables (in increasing order of precedence).
-# Session information is stored in ~/.rt_sessions.
-
-my $VERSION = 0.02;
-my $HOME = eval{(getpwuid($<))[7]}
- || $ENV{HOME} || $ENV{LOGDIR} || $ENV{HOMEPATH}
- || ".";
-my %config = (
- (
- debug => 0,
- user => eval{(getpwuid($<))[0]} || $ENV{USER} || $ENV{USERNAME},
- passwd => undef,
- server => 'http://localhost/rt/',
- query => undef,
- orderby => undef,
- ),
- config_from_file($ENV{RTCONFIG} || ".rtrc"),
- config_from_env()
-);
-my $session = new Session("$HOME/.rt_sessions");
-my $REST = "$config{server}/REST/1.0";
-
-sub whine;
-sub DEBUG { warn @_ if $config{debug} >= shift }
-
-# These regexes are used by command handlers to parse arguments.
-# (XXX: Ask Autrijus how i18n changes these definitions.)
-
-my $name = '[\w.-]+';
-my $field = '[a-zA-Z][a-zA-Z0-9_-]*';
-my $label = '[a-zA-Z0-9@_.+-]+';
-my $labels = "(?:$label,)*$label";
-my $idlist = '(?:(?:\d+-)?\d+,)*(?:\d+-)?\d+';
-
-# Our command line looks like this:
-#
-# rt <action> [options] [arguments]
-#
-# We'll parse just enough of it to decide upon an action to perform, and
-# leave the rest to per-action handlers to interpret appropriately.
-
-my %handlers = (
-# handler => [ ...aliases... ],
- version => ["version", "ver"],
- shell => ["shell"],
- logout => ["logout"],
- help => ["help", "man"],
- show => ["show", "cat"],
- edit => ["create", "edit", "new", "ed"],
- list => ["search", "list", "ls"],
- comment => ["comment", "correspond"],
- link => ["link", "ln"],
- merge => ["merge"],
- grant => ["grant", "revoke"],
-);
-
-my %actions;
-foreach my $fn (keys %handlers) {
- foreach my $alias (@{ $handlers{$fn} }) {
- $actions{$alias} = \&{"$fn"};
- }
-}
-
-# Once we find and call an appropriate handler, we're done.
-
-sub handler {
- my $action;
-
- if (@ARGV && exists $actions{$ARGV[0]}) {
- $action = shift @ARGV;
- }
- $actions{$action || "help"}->($action || ());
-}
-
-handler();
-exit;
-
-# Handler functions.
-# ------------------
-#
-# The following subs are handlers for each entry in %actions.
-
-sub shell {
- $|=1;
- print "rt> ";
- while (<>) {
- chomp;
- next if /^#/ || /^\s*$/;
-
- @ARGV = shellwords($_);
- handler();
- print "rt> ";
- }
- print "\n";
-}
-
-sub version {
- print "rt $VERSION\n";
-}
-
-sub logout {
- submit("$REST/logout") if defined $session->cookie;
-}
-
-my %help;
-sub help {
- my ($action, $type) = @_;
- my $key;
-
- # What help topics do we know about?
- if (!%help) {
- local $/ = undef;
- foreach my $item (@{ Form::parse(<DATA>) }) {
- my $title = $item->[2]{Title};
- my @titles = ref $title eq 'ARRAY' ? @$title : $title;
-
- foreach $title (grep $_, @titles) {
- $help{$title} = $item->[2]{Text};
- }
- }
- }
-
- # What does the user want help with?
- undef $action if ($action && $actions{$action} eq \&help);
- unless ($action || $type) {
- # If we don't know, we'll look for clues in @ARGV.
- foreach (@ARGV) {
- if (exists $help{$_}) { $key = $_; last; }
- }
- unless ($key) {
- # Tolerate possibly plural words.
- foreach (@ARGV) {
- if ($_ =~ s/s$// && exists $help{$_}) { $key = $_; last; }
- }
- }
- }
-
- if ($type && $action) {
- $key = "$type.$action";
- }
- $key ||= $type || $action || "introduction";
-
- # Find a suitable topic to display.
- while (!exists $help{$key}) {
- if ($type && $action) {
- if ($key eq "$type.$action") { $key = $action; }
- elsif ($key eq $action) { $key = $type; }
- else { $key = "introduction"; }
- }
- else {
- $key = "introduction";
- }
- }
-
- print STDERR $help{$key}, "\n\n";
-}
-
-# Displays a list of objects that match some specified condition.
-
-sub list {
- my ($q, $type, %data);
- my $orderby = $config{orderby};
-
- if ($config{orderby}) {
- $data{orderby} = $config{orderby};
- }
- my $bad = 0;
-
- while (@ARGV) {
- $_ = shift @ARGV;
-
- if (/^-t$/) {
- $bad = 1, last unless defined($type = get_type_argument());
- }
- elsif (/^-S$/) {
- $bad = 1, last unless get_var_argument(\%data);
- }
- elsif (/^-o$/) {
- $data{'orderby'} = shift @ARGV;
- }
- elsif (/^-([isl])$/) {
- $data{format} = $1;
- }
- elsif (/^-f$/) {
- if ($ARGV[0] !~ /^(?:(?:$field,)*$field)$/) {
- whine "No valid field list in '-f $ARGV[0]'.";
- $bad = 1; last;
- }
- $data{fields} = shift @ARGV;
- }
- elsif (!defined $q && !/^-/) {
- $q = $_;
- }
- else {
- my $datum = /^-/ ? "option" : "argument";
- whine "Unrecognised $datum '$_'.";
- $bad = 1; last;
- }
- }
- if (!defined $q) {
- $q = $config{query};
- }
-
- $type ||= "ticket";
- unless ($type && defined $q) {
- my $item = $type ? "query string" : "object type";
- whine "No $item specified.";
- $bad = 1;
- }
- return help("list", $type) if $bad;
-
- my $r = submit("$REST/search/$type", { query => $q, %data });
- print $r->content;
-}
-
-# Displays selected information about a single object.
-
-sub show {
- my ($type, @objects, %data);
- my $slurped = 0;
- my $bad = 0;
-
- while (@ARGV) {
- $_ = shift @ARGV;
-
- if (/^-t$/) {
- $bad = 1, last unless defined($type = get_type_argument());
- }
- elsif (/^-S$/) {
- $bad = 1, last unless get_var_argument(\%data);
- }
- elsif (/^-([isl])$/) {
- $data{format} = $1;
- }
- elsif (/^-$/ && !$slurped) {
- chomp(my @lines = <STDIN>);
- foreach (@lines) {
- unless (is_object_spec($_, $type)) {
- whine "Invalid object on STDIN: '$_'.";
- $bad = 1; last;
- }
- push @objects, $_;
- }
- $slurped = 1;
- }
- elsif (/^-f$/) {
- if ($ARGV[0] !~ /^(?:(?:$field,)*$field)$/) {
- whine "No valid field list in '-f $ARGV[0]'.";
- $bad = 1; last;
- }
- $data{fields} = shift @ARGV;
- }
- elsif (my $spec = is_object_spec($_, $type)) {
- push @objects, $spec;
- }
- else {
- my $datum = /^-/ ? "option" : "argument";
- whine "Unrecognised $datum '$_'.";
- $bad = 1; last;
- }
- }
-
- unless (@objects) {
- whine "No objects specified.";
- $bad = 1;
- }
- return help("show", $type) if $bad;
-
- my $r = submit("$REST/show", { id => \@objects, %data });
- print $r->content;
-}
-
-# To create a new object, we ask the server for a form with the defaults
-# filled in, allow the user to edit it, and send the form back.
-#
-# To edit an object, we must ask the server for a form representing that
-# object, make changes requested by the user (either on the command line
-# or interactively via $EDITOR), and send the form back.
-
-sub edit {
- my ($action) = @_;
- my (%data, $type, @objects);
- my ($cl, $text, $edit, $input, $output);
-
- use vars qw(%set %add %del);
- %set = %add = %del = ();
- my $slurped = 0;
- my $bad = 0;
-
- while (@ARGV) {
- $_ = shift @ARGV;
-
- if (/^-e$/) { $edit = 1 }
- elsif (/^-i$/) { $input = 1 }
- elsif (/^-o$/) { $output = 1 }
- elsif (/^-t$/) {
- $bad = 1, last unless defined($type = get_type_argument());
- }
- elsif (/^-S$/) {
- $bad = 1, last unless get_var_argument(\%data);
- }
- elsif (/^-$/ && !($slurped || $input)) {
- chomp(my @lines = <STDIN>);
- foreach (@lines) {
- unless (is_object_spec($_, $type)) {
- whine "Invalid object on STDIN: '$_'.";
- $bad = 1; last;
- }
- push @objects, $_;
- }
- $slurped = 1;
- }
- elsif (/^set$/i) {
- my $vars = 0;
-
- while (@ARGV && $ARGV[0] =~ /^($field)([+-]?=)(.*)$/) {
- my ($key, $op, $val) = ($1, $2, $3);
- my $hash = ($op eq '=') ? \%set : ($op =~ /^\+/) ? \%add : \%del;
-
- vpush($hash, lc $key, $val);
- shift @ARGV;
- $vars++;
- }
- unless ($vars) {
- whine "No variables to set.";
- $bad = 1; last;
- }
- $cl = $vars;
- }
- elsif (/^(?:add|del)$/i) {
- my $vars = 0;
- my $hash = ($_ eq "add") ? \%add : \%del;
-
- while (@ARGV && $ARGV[0] =~ /^($field)=(.*)$/) {
- my ($key, $val) = ($1, $2);
-
- vpush($hash, lc $key, $val);
- shift @ARGV;
- $vars++;
- }
- unless ($vars) {
- whine "No variables to set.";
- $bad = 1; last;
- }
- $cl = $vars;
- }
- elsif (my $spec = is_object_spec($_, $type)) {
- push @objects, $spec;
- }
- else {
- my $datum = /^-/ ? "option" : "argument";
- whine "Unrecognised $datum '$_'.";
- $bad = 1; last;
- }
- }
-
- if ($action =~ /^ed(?:it)?$/) {
- unless (@objects) {
- whine "No objects specified.";
- $bad = 1;
- }
- }
- else {
- if (@objects) {
- whine "You shouldn't specify objects as arguments to $action.";
- $bad = 1;
- }
- unless ($type) {
- whine "What type of object do you want to create?";
- $bad = 1;
- }
- @objects = ("$type/new");
- }
- return help($action, $type) if $bad;
-
- # We need a form to make changes to. We usually ask the server for
- # one, but we can avoid that if we are fed one on STDIN, or if the
- # user doesn't want to edit the form by hand, and the command line
- # specifies only simple variable assignments.
-
- if ($input) {
- local $/ = undef;
- $text = <STDIN>;
- }
- elsif ($edit || %add || %del || !$cl) {
- my $r = submit("$REST/show", { id => \@objects, format => 'l' });
- $text = $r->content;
- }
-
- # If any changes were specified on the command line, apply them.
- if ($cl) {
- if ($text) {
- # We're updating forms from the server.
- my $forms = Form::parse($text);
-
- foreach my $form (@$forms) {
- my ($c, $o, $k, $e) = @$form;
- my ($key, $val);
-
- next if ($e || !@$o);
-
- local %add = %add;
- local %del = %del;
- local %set = %set;
-
- # Make changes to existing fields.
- foreach $key (@$o) {
- if (exists $add{lc $key}) {
- $val = delete $add{lc $key};
- vpush($k, $key, $val);
- $k->{$key} = vsplit($k->{$key}) if $val =~ /[,\n]/;
- }
- if (exists $del{lc $key}) {
- $val = delete $del{lc $key};
- my %val = map {$_=>1} @{ vsplit($val) };
- $k->{$key} = vsplit($k->{$key});
- @{$k->{$key}} = grep {!exists $val{$_}} @{$k->{$key}};
- }
- if (exists $set{lc $key}) {
- $k->{$key} = delete $set{lc $key};
- }
- }
-
- # Then update the others.
- foreach $key (keys %set) { vpush($k, $key, $set{$key}) }
- foreach $key (keys %add) {
- vpush($k, $key, $add{$key});
- $k->{$key} = vsplit($k->{$key});
- }
- push @$o, (keys %add, keys %set);
- }
-
- $text = Form::compose($forms);
- }
- else {
- # We're rolling our own set of forms.
- my @forms;
- foreach (@objects) {
- my ($type, $ids, $args) =
- m{^($name)/($idlist|$labels)(?:(/.*))?$}o;
-
- $args ||= "";
- foreach my $obj (expand_list($ids)) {
- my %set = (%set, id => "$type/$obj$args");
- push @forms, ["", [keys %set], \%set];
- }
- }
- $text = Form::compose(\@forms);
- }
- }
-
- if ($output) {
- print $text;
- return;
- }
-
- my $synerr = 0;
-
-EDIT:
- # We'll let the user edit the form before sending it to the server,
- # unless we have enough information to submit it non-interactively.
- if ($edit || (!$input && !$cl)) {
- my $newtext = vi($text);
- # We won't resubmit a bad form unless it was changed.
- $text = ($synerr && $newtext eq $text) ? undef : $newtext;
- }
-
- if ($text) {
- my $r = submit("$REST/edit", {content => $text, %data});
- if ($r->code == 409) {
- # If we submitted a bad form, we'll give the user a chance
- # to correct it and resubmit.
- if ($edit || (!$input && !$cl)) {
- $text = $r->content;
- $synerr = 1;
- goto EDIT;
- }
- else {
- print $r->content;
- return;
- }
- }
- print $r->content;
- }
-}
-
-# We roll "comment" and "correspond" into the same handler.
-
-sub comment {
- my ($action) = @_;
- my (%data, $id, @files, @bcc, @cc, $msg, $wtime, $edit);
- my $bad = 0;
-
- while (@ARGV) {
- $_ = shift @ARGV;
-
- if (/^-e$/) {
- $edit = 1;
- }
- elsif (/^-[abcmw]$/) {
- unless (@ARGV) {
- whine "No argument specified with $_.";
- $bad = 1; last;
- }
-
- if (/-a/) {
- unless (-f $ARGV[0] && -r $ARGV[0]) {
- whine "Cannot read attachment: '$ARGV[0]'.";
- return;
- }
- push @files, shift @ARGV;
- }
- elsif (/-([bc])/) {
- my $a = $_ eq "-b" ? \@bcc : \@cc;
- @$a = split /\s*,\s*/, shift @ARGV;
- }
- elsif (/-m/) {
- $msg = shift @ARGV;
- if ( $msg =~ /^-$/ ) {
- undef $msg;
- while (<STDIN>) { $msg .= $_ }
- }
- }
-
- elsif (/-w/) { $wtime = shift @ARGV }
- }
- elsif (!$id && m|^(?:ticket/)?($idlist)$|) {
- $id = $1;
- }
- else {
- my $datum = /^-/ ? "option" : "argument";
- whine "Unrecognised $datum '$_'.";
- $bad = 1; last;
- }
- }
-
- unless ($id) {
- whine "No object specified.";
- $bad = 1;
- }
- return help($action, "ticket") if $bad;
-
- my $form = [
- "",
- [ "Ticket", "Action", "Cc", "Bcc", "Attachment", "TimeWorked", "Text" ],
- {
- Ticket => $id,
- Action => $action,
- Cc => [ @cc ],
- Bcc => [ @bcc ],
- Attachment => [ @files ],
- TimeWorked => $wtime || '',
- Text => $msg || '',
- Status => ''
- }
- ];
-
- my $text = Form::compose([ $form ]);
-
- if ($edit || !$msg) {
- my $error = 0;
- my ($c, $o, $k, $e);
-
- do {
- my $ntext = vi($text);
- return if ($error && $ntext eq $text);
- $text = $ntext;
- $form = Form::parse($text);
- $error = 0;
-
- ($c, $o, $k, $e) = @{ $form->[0] };
- if ($e) {
- $error = 1;
- $c = "# Syntax error.";
- goto NEXT;
- }
- elsif (!@$o) {
- return;
- }
- @files = @{ vsplit($k->{Attachment}) };
-
- NEXT:
- $text = Form::compose([[$c, $o, $k, $e]]);
- } while ($error);
- }
-
- my $i = 1;
- foreach my $file (@files) {
- $data{"attachment_$i"} = bless([ $file ], "Attachment");
- $i++;
- }
- $data{content} = $text;
-
- my $r = submit("$REST/ticket/comment/$id", \%data);
- print $r->content;
-}
-
-# Merge one ticket into another.
-
-sub merge {
- my @id;
- my $bad = 0;
-
- while (@ARGV) {
- $_ = shift @ARGV;
-
- if (/^\d+$/) {
- push @id, $_;
- }
- else {
- whine "Unrecognised argument: '$_'.";
- $bad = 1; last;
- }
- }
-
- unless (@id == 2) {
- my $evil = @id > 2 ? "many" : "few";
- whine "Too $evil arguments specified.";
- $bad = 1;
- }
- return help("merge", "ticket") if $bad;
-
- my $r = submit("$REST/ticket/merge/$id[0]", {into => $id[1]});
- print $r->content;
-}
-
-# Link one ticket to another.
-
-sub link {
- my ($bad, $del, %data) = (0, 0, ());
- my %ltypes = map { lc $_ => $_ } qw(DependsOn DependedOnBy RefersTo
- ReferredToBy HasMember MemberOf);
-
- while (@ARGV && $ARGV[0] =~ /^-/) {
- $_ = shift @ARGV;
-
- if (/^-d$/) {
- $del = 1;
- }
- else {
- whine "Unrecognised option: '$_'.";
- $bad = 1; last;
- }
- }
-
- if (@ARGV == 3) {
- my ($from, $rel, $to) = @ARGV;
- if ($from !~ /^\d+$/ || $to !~ /^\d+$/) {
- my $bad = $from =~ /^\d+$/ ? $to : $from;
- whine "Invalid ticket ID '$bad' specified.";
- $bad = 1;
- }
- unless (exists $ltypes{lc $rel}) {
- whine "Invalid link '$rel' specified.";
- $bad = 1;
- }
- %data = (id => $from, rel => $rel, to => $to, del => $del);
- }
- else {
- my $bad = @ARGV < 3 ? "few" : "many";
- whine "Too $bad arguments specified.";
- $bad = 1;
- }
- return help("link", "ticket") if $bad;
-
- my $r = submit("$REST/ticket/link", \%data);
- print $r->content;
-}
-
-# Grant/revoke a user's rights.
-
-sub grant {
- my ($cmd) = @_;
-
- my $revoke = 0;
- while (@ARGV) {
- }
-
- $revoke = 1 if $cmd->{action} eq 'revoke';
-}
-
-# Client <-> Server communication.
-# --------------------------------
-#
-# This function composes and sends an HTTP request to the RT server, and
-# interprets the response. It takes a request URI, and optional request
-# data (a string, or a reference to a set of key-value pairs).
-
-sub submit {
- my ($uri, $content) = @_;
- my ($req, $data);
- my $ua = new LWP::UserAgent(agent => "RT/3.0b", env_proxy => 1);
-
- # Did the caller specify any data to send with the request?
- $data = [];
- if (defined $content) {
- unless (ref $content) {
- # If it's just a string, make sure LWP handles it properly.
- # (By pretending that it's a file!)
- $content = [ content => [undef, "", Content => $content] ];
- }
- elsif (ref $content eq 'HASH') {
- my @data;
- foreach my $k (keys %$content) {
- if (ref $content->{$k} eq 'ARRAY') {
- foreach my $v (@{ $content->{$k} }) {
- push @data, $k, $v;
- }
- }
- else { push @data, $k, $content->{$k} }
- }
- $content = \@data;
- }
- $data = $content;
- }
-
- # Should we send authentication information to start a new session?
- if (!defined $session->cookie) {
- push @$data, ( user => $config{user} );
- push @$data, ( pass => $config{passwd} || read_passwd() );
- }
-
- # Now, we construct the request.
- if (@$data) {
- $req = POST($uri, $data, Content_Type => 'form-data');
- }
- else {
- $req = GET($uri);
- }
- $session->add_cookie_header($req);
-
- # Then we send the request and parse the response.
- DEBUG(3, $req->as_string);
- my $res = $ua->request($req);
- DEBUG(3, $res->as_string);
-
- if ($res->is_success) {
- # The content of the response we get from the RT server consists
- # of an HTTP-like status line followed by optional header lines,
- # a blank line, and arbitrary text.
-
- my ($head, $text) = split /\n\n/, $res->content, 2;
- my ($status, @headers) = split /\n/, $head;
- $text =~ s/\n*$/\n/ if ($text);
-
- # "RT/3.0.1 401 Credentials required"
- if ($status !~ m#^RT/\d+(?:\S+) (\d+) ([\w\s]+)$#) {
- warn "rt: Malformed RT response from $config{server}.\n";
- warn "(Rerun with RTDEBUG=3 for details.)\n" if $config{debug} < 3;
- exit -1;
- }
-
- # Our caller can pretend that the server returned a custom HTTP
- # response code and message. (Doing that directly is apparently
- # not sufficiently portable and uncomplicated.)
- $res->code($1);
- $res->message($2);
- $res->content($text);
- $session->update($res) if ($res->is_success || $res->code != 401);
-
- if (!$res->is_success) {
- # We can deal with authentication failures ourselves. Either
- # we sent invalid credentials, or our session has expired.
- if ($res->code == 401) {
- my %d = @$data;
- if (exists $d{user}) {
- warn "rt: Incorrect username or password.\n";
- exit -1;
- }
- elsif ($req->header("Cookie")) {
- # We'll retry the request with credentials, unless
- # we only wanted to logout in the first place.
- $session->delete;
- return submit(@_) unless $uri eq "$REST/logout";
- }
- }
- # Conflicts should be dealt with by the handler and user.
- # For anything else, we just die.
- elsif ($res->code != 409) {
- warn "rt: ", $res->content;
- exit;
- }
- }
- }
- else {
- warn "rt: Server error: ", $res->message, " (", $res->code, ")\n";
- exit -1;
- }
-
- return $res;
-}
-
-# Session management.
-# -------------------
-#
-# Maintains a list of active sessions in the ~/.rt_sessions file.
-{
- package Session;
- my ($s, $u);
-
- # Initialises the session cache.
- sub new {
- my ($class, $file) = @_;
- my $self = {
- file => $file || "$HOME/.rt_sessions",
- sids => { }
- };
-
- # The current session is identified by the currently configured
- # server and user.
- ($s, $u) = @config{"server", "user"};
-
- bless $self, $class;
- $self->load();
-
- return $self;
- }
-
- # Returns the current session cookie.
- sub cookie {
- my ($self) = @_;
- my $cookie = $self->{sids}{$s}{$u};
- return defined $cookie ? "RT_SID_$cookie" : undef;
- }
-
- # Deletes the current session cookie.
- sub delete {
- my ($self) = @_;
- delete $self->{sids}{$s}{$u};
- }
-
- # Adds a Cookie header to an outgoing HTTP request.
- sub add_cookie_header {
- my ($self, $request) = @_;
- my $cookie = $self->cookie();
-
- $request->header(Cookie => $cookie) if defined $cookie;
- }
-
- # Extracts the Set-Cookie header from an HTTP response, and updates
- # session information accordingly.
- sub update {
- my ($self, $response) = @_;
- my $cookie = $response->header("Set-Cookie");
-
- if (defined $cookie && $cookie =~ /^RT_SID_(.[^;,\s]+=[0-9A-Fa-f]+);/) {
- $self->{sids}{$s}{$u} = $1;
- }
- }
-
- # Loads the session cache from the specified file.
- sub load {
- my ($self, $file) = @_;
- $file ||= $self->{file};
- local *F;
-
- open(F, $file) && do {
- $self->{file} = $file;
- my $sids = $self->{sids} = {};
- while (<F>) {
- chomp;
- next if /^$/ || /^#/;
- next unless m#^https?://[^ ]+ \w+ [^;,\s]+=[0-9A-Fa-f]+$#;
- my ($server, $user, $cookie) = split / /, $_;
- $sids->{$server}{$user} = $cookie;
- }
- return 1;
- };
- return 0;
- }
-
- # Writes the current session cache to the specified file.
- sub save {
- my ($self, $file) = shift;
- $file ||= $self->{file};
- local *F;
-
- open(F, ">$file") && do {
- my $sids = $self->{sids};
- foreach my $server (keys %$sids) {
- foreach my $user (keys %{ $sids->{$server} }) {
- my $sid = $sids->{$server}{$user};
- if (defined $sid) {
- print F "$server $user $sid\n";
- }
- }
- }
- close(F);
- chmod 0600, $file;
- return 1;
- };
- return 0;
- }
-
- sub DESTROY {
- my $self = shift;
- $self->save;
- }
-}
-
-# Form handling.
-# --------------
-#
-# Forms are RFC822-style sets of (field, value) specifications with some
-# initial comments and interspersed blank lines allowed for convenience.
-# Sets of forms are separated by --\n (in a cheap parody of MIME).
-#
-# Each form is parsed into an array with four elements: commented text
-# at the start of the form, an array with the order of keys, a hash with
-# key/value pairs, and optional error text if the form syntax was wrong.
-
-# Returns a reference to an array of parsed forms.
-sub Form::parse {
- my $state = 0;
- my @forms = ();
- my @lines = split /\n/, $_[0];
- my ($c, $o, $k, $e) = ("", [], {}, "");
-
- LINE:
- while (@lines) {
- my $line = shift @lines;
-
- next LINE if $line eq '';
-
- if ($line eq '--') {
- # We reached the end of one form. We'll ignore it if it was
- # empty, and store it otherwise, errors and all.
- if ($e || $c || @$o) {
- push @forms, [ $c, $o, $k, $e ];
- $c = ""; $o = []; $k = {}; $e = "";
- }
- $state = 0;
- }
- elsif ($state != -1) {
- if ($state == 0 && $line =~ /^#/) {
- # Read an optional block of comments (only) at the start
- # of the form.
- $state = 1;
- $c = $line;
- while (@lines && $lines[0] =~ /^#/) {
- $c .= "\n".shift @lines;
- }
- $c .= "\n";
- }
- elsif ($state <= 1 && $line =~ /^($field):(?:\s+(.*))?$/) {
- # Read a field: value specification.
- my $f = $1;
- my @v = ($2 || ());
-
- # Read continuation lines, if any.
- while (@lines && ($lines[0] eq '' || $lines[0] =~ /^\s+/)) {
- push @v, shift @lines;
- }
- pop @v while (@v && $v[-1] eq '');
-
- # Strip longest common leading indent from text.
- my $ws = "";
- foreach my $ls (map {/^(\s+)/} @v[1..$#v]) {
- $ws = $ls if (!$ws || length($ls) < length($ws));
- }
- s/^$ws// foreach @v;
-
- push(@$o, $f) unless exists $k->{$f};
- vpush($k, $f, join("\n", @v));
-
- $state = 1;
- }
- elsif ($line !~ /^#/) {
- # We've found a syntax error, so we'll reconstruct the
- # form parsed thus far, and add an error marker. (>>)
- $state = -1;
- $e = Form::compose([[ "", $o, $k, "" ]]);
- $e.= $line =~ /^>>/ ? "$line\n" : ">> $line\n";
- }
- }
- else {
- # We saw a syntax error earlier, so we'll accumulate the
- # contents of this form until the end.
- $e .= "$line\n";
- }
- }
- push(@forms, [ $c, $o, $k, $e ]) if ($e || $c || @$o);
-
- foreach my $l (keys %$k) {
- $k->{$l} = vsplit($k->{$l}) if (ref $k->{$l} eq 'ARRAY');
- }
-
- return \@forms;
-}
-
-# Returns text representing a set of forms.
-sub Form::compose {
- my ($forms) = @_;
- my @text;
-
- foreach my $form (@$forms) {
- my ($c, $o, $k, $e) = @$form;
- my $text = "";
-
- if ($c) {
- $c =~ s/\n*$/\n/;
- $text = "$c\n";
- }
- if ($e) {
- $text .= $e;
- }
- elsif ($o) {
- my @lines;
-
- foreach my $key (@$o) {
- my ($line, $sp);
- my $v = $k->{$key};
- my @values = ref $v eq 'ARRAY' ? @$v : $v;
-
- $sp = " "x(length("$key: "));
- $sp = " "x4 if length($sp) > 16;
-
- foreach $v (@values) {
- if ($v =~ /\n/) {
- $v =~ s/^/$sp/gm;
- $v =~ s/^$sp//;
-
- if ($line) {
- push @lines, "$line\n\n";
- $line = "";
- }
- elsif (@lines && $lines[-1] !~ /\n\n$/) {
- $lines[-1] .= "\n";
- }
- push @lines, "$key: $v\n\n";
- }
- elsif ($line &&
- length($line)+length($v)-rindex($line, "\n") >= 70)
- {
- $line .= ",\n$sp$v";
- }
- else {
- $line = $line ? "$line, $v" : "$key: $v";
- }
- }
-
- $line = "$key:" unless @values;
- if ($line) {
- if ($line =~ /\n/) {
- if (@lines && $lines[-1] !~ /\n\n$/) {
- $lines[-1] .= "\n";
- }
- $line .= "\n";
- }
- push @lines, "$line\n";
- }
- }
-
- $text .= join "", @lines;
- }
- else {
- chomp $text;
- }
- push @text, $text;
- }
-
- return join "\n--\n\n", @text;
-}
-
-# Configuration.
-# --------------
-
-# Returns configuration information from the environment.
-sub config_from_env {
- my %env;
-
- foreach my $k ("DEBUG", "USER", "PASSWD", "SERVER", "QUERY", "ORDERBY") {
- if (exists $ENV{"RT$k"}) {
- $env{lc $k} = $ENV{"RT$k"};
- }
- }
-
- return %env;
-}
-
-# Finds a suitable configuration file and returns information from it.
-sub config_from_file {
- my ($rc) = @_;
-
- if ($rc =~ m#^/#) {
- # We'll use an absolute path if we were given one.
- return parse_config_file($rc);
- }
- else {
- # Otherwise we'll use the first file we can find in the current
- # directory, or in one of its (increasingly distant) ancestors.
-
- my @dirs = split /\//, cwd;
- while (@dirs) {
- my $file = join('/', @dirs, $rc);
- if (-r $file) {
- return parse_config_file($file);
- }
-
- # Remove the last directory component each time.
- pop @dirs;
- }
-
- # Still nothing? We'll fall back to some likely defaults.
- for ("$HOME/$rc", "/etc/rt.conf") {
- return parse_config_file($_) if (-r $_);
- }
- }
-
- return ();
-}
-
-# Makes a hash of the specified configuration file.
-sub parse_config_file {
- my %cfg;
- my ($file) = @_;
- local $_; # $_ may be aliased to a constant, from line 1163
-
- open(CFG, $file) && do {
- while (<CFG>) {
- chomp;
- next if (/^#/ || /^\s*$/);
-
- if (/^(user|passwd|server|query|orderby)\s+(.*)\s?$/) {
- $cfg{$1} = $2;
- }
- else {
- die "rt: $file:$.: unknown configuration directive.\n";
- }
- }
- };
-
- return %cfg;
-}
-
-# Helper functions.
-# -----------------
-
-sub whine {
- my $sub = (caller(1))[3];
- $sub =~ s/^main:://;
- warn "rt: $sub: @_\n";
- return;
-}
-
-sub read_passwd {
- eval 'require Term::ReadKey';
- if ($@) {
- die "No password specified (and Term::ReadKey not installed).\n";
- }
-
- print "Password: ";
- Term::ReadKey::ReadMode('noecho');
- chomp(my $passwd = Term::ReadKey::ReadLine(0));
- Term::ReadKey::ReadMode('restore');
- print "\n";
-
- return $passwd;
-}
-
-sub vi {
- my ($text) = @_;
- my $file = "/tmp/rt.form.$$";
- my $editor = $ENV{EDITOR} || $ENV{VISUAL} || "vi";
-
- local *F;
- local $/ = undef;
-
- open(F, ">$file") || die "$file: $!\n"; print F $text; close(F);
- system($editor, $file) && die "Couldn't run $editor.\n";
- open(F, $file) || die "$file: $!\n"; $text = <F>; close(F);
- unlink($file);
-
- return $text;
-}
-
-# Add a value to a (possibly multi-valued) hash key.
-sub vpush {
- my ($hash, $key, $val) = @_;
- my @val = ref $val eq 'ARRAY' ? @$val : $val;
-
- if (exists $hash->{$key}) {
- unless (ref $hash->{$key} eq 'ARRAY') {
- my @v = $hash->{$key} ne '' ? $hash->{$key} : ();
- $hash->{$key} = \@v;
- }
- push @{ $hash->{$key} }, @val;
- }
- else {
- $hash->{$key} = $val;
- }
-}
-
-# "Normalise" a hash key that's known to be multi-valued.
-sub vsplit {
- my ($val) = @_;
- my ($word, @words);
- my @values = ref $val eq 'ARRAY' ? @$val : $val;
-
- foreach my $line (map {split /\n/} @values) {
- # XXX: This should become a real parser, à la Text::ParseWords.
- $line =~ s/^\s+//;
- $line =~ s/\s+$//;
- push @words, split /\s*,\s*/, $line;
- }
-
- return \@words;
-}
-
-sub expand_list {
- my ($list) = @_;
- my ($elt, @elts, %elts);
-
- foreach $elt (split /,/, $list) {
- if ($elt =~ /^(\d+)-(\d+)$/) { push @elts, ($1..$2) }
- else { push @elts, $elt }
- }
-
- @elts{@elts}=();
- return sort {$a<=>$b} keys %elts;
-}
-
-sub get_type_argument {
- my $type;
-
- if (@ARGV) {
- $type = shift @ARGV;
- unless ($type =~ /^[A-Za-z0-9_.-]+$/) {
- # We want whine to mention our caller, not us.
- @_ = ("Invalid type '$type' specified.");
- goto &whine;
- }
- }
- else {
- @_ = ("No type argument specified with -t.");
- goto &whine;
- }
-
- $type =~ s/s$//; # "Plural". Ugh.
- return $type;
-}
-
-sub get_var_argument {
- my ($data) = @_;
-
- if (@ARGV) {
- my $kv = shift @ARGV;
- if (my ($k, $v) = $kv =~ /^($field)=(.*)$/) {
- push @{ $data->{$k} }, $v;
- }
- else {
- @_ = ("Invalid variable specification: '$kv'.");
- goto &whine;
- }
- }
- else {
- @_ = ("No variable argument specified with -S.");
- goto &whine;
- }
-}
-
-sub is_object_spec {
- my ($spec, $type) = @_;
-
- $spec =~ s|^(?:$type/)?|$type/| if defined $type;
- return $spec if ($spec =~ m{^$name/(?:$idlist|$labels)(?:/.*)?$}o);
- return;
-}
-
-__DATA__
-
-Title: intro
-Title: introduction
-Text:
-
- ** THIS IS AN UNSUPPORTED PREVIEW RELEASE **
- ** PLEASE REPORT BUGS TO rt-bugs@fsck.com **
-
- This is a command-line interface to RT 3.
-
- It allows you to interact with an RT server over HTTP, and offers an
- interface to RT's functionality that is better-suited to automation
- and integration with other tools.
-
- In general, each invocation of this program should specify an action
- to perform on one or more objects, and any other arguments required
- to complete the desired action.
-
- For more information:
-
- - rt help actions (a list of possible actions)
- - rt help objects (how to specify objects)
- - rt help usage (syntax information)
-
- - rt help config (configuration details)
- - rt help examples (a few useful examples)
- - rt help topics (a list of help topics)
-
---
-
-Title: usage
-Title: syntax
-Text:
-
- Syntax:
-
- rt <action> [options] [arguments]
-
- Each invocation of this program must specify an action (e.g. "edit",
- "create"), options to modify behaviour, and other arguments required
- by the specified action. (For example, most actions expect a list of
- numeric object IDs to act upon.)
-
- The details of the syntax and arguments for each action are given by
- "rt help <action>". Some actions may be referred to by more than one
- name ("create" is the same as "new", for example).
-
- Objects are identified by a type and an ID (which can be a name or a
- number, depending on the type). For some actions, the object type is
- implied (you can only comment on tickets); for others, the user must
- specify it explicitly. See "rt help objects" for details.
-
- In syntax descriptions, mandatory arguments that must be replaced by
- appropriate value are enclosed in <>, and optional arguments are
- indicated by [] (for example, <action> and [options] above).
-
- For more information:
-
- - rt help objects (how to specify objects)
- - rt help actions (a list of actions)
- - rt help types (a list of object types)
-
---
-
-Title: conf
-Title: config
-Title: configuration
-Text:
-
- This program has two major sources of configuration information: its
- configuration files, and the environment.
-
- The program looks for configuration directives in a file named .rtrc
- (or $RTCONFIG; see below) in the current directory, and then in more
- distant ancestors, until it reaches /. If no suitable configuration
- files are found, it will also check for ~/.rtrc and /etc/rt.conf.
-
- Configuration directives:
-
- The following directives may occur, one per line:
-
- - server <URL> URL to RT server.
- - user <username> RT username.
- - passwd <passwd> RT user's password.
- - query <RT Query> Default RT Query for list action
- - orderby <order> Default RT order for list action
-
- Blank and #-commented lines are ignored.
-
- Environment variables:
-
- The following environment variables override any corresponding
- values defined in configuration files:
-
- - RTUSER
- - RTPASSWD
- - RTSERVER
- - RTDEBUG Numeric debug level. (Set to 3 for full logs.)
- - RTCONFIG Specifies a name other than ".rtrc" for the
- configuration file.
- - RTQUERY Default RT Query for rt list
- - RTORDERBY Default order for rt list
-
---
-
-Title: objects
-Text:
-
- Syntax:
-
- <type>/<id>[/<attributes>]
-
- Every object in RT has a type (e.g. "ticket", "queue") and a numeric
- ID. Some types of objects can also be identified by name (like users
- and queues). Furthermore, objects may have named attributes (such as
- "ticket/1/history").
-
- An object specification is like a path in a virtual filesystem, with
- object types as top-level directories, object IDs as subdirectories,
- and named attributes as further subdirectories.
-
- A comma-separated list of names, numeric IDs, or numeric ranges can
- be used to specify more than one object of the same type. Note that
- the list must be a single argument (i.e., no spaces). For example,
- "user/root,1-3,5,7-10,ams" is a list of ten users; the same list
- can also be written as "user/ams,root,1,2,3,5,7,8-10".
-
- Examples:
-
- ticket/1
- ticket/1/attachments
- ticket/1/attachments/3
- ticket/1/attachments/3/content
- ticket/1-3/links
- ticket/1-3,5-7/history
-
- user/ams
- user/ams/rights
- user/ams,rai,1/rights
-
- For more information:
-
- - rt help <action> (action-specific details)
- - rt help <type> (type-specific details)
-
---
-
-Title: actions
-Title: commands
-Text:
-
- You can currently perform the following actions on all objects:
-
- - list (list objects matching some condition)
- - show (display object details)
- - edit (edit object details)
- - create (create a new object)
-
- Each type may define actions specific to itself; these are listed in
- the help item about that type.
-
- For more information:
-
- - rt help <action> (action-specific details)
- - rt help types (a list of possible types)
-
---
-
-Title: types
-Text:
-
- You can currently operate on the following types of objects:
-
- - tickets
- - users
- - groups
- - queues
-
- For more information:
-
- - rt help <type> (type-specific details)
- - rt help objects (how to specify objects)
- - rt help actions (a list of possible actions)
-
---
-
-Title: ticket
-Text:
-
- Tickets are identified by a numeric ID.
-
- The following generic operations may be performed upon tickets:
-
- - list
- - show
- - edit
- - create
-
- In addition, the following ticket-specific actions exist:
-
- - link
- - merge
- - comment
- - correspond
-
- Attributes:
-
- The following attributes can be used with "rt show" or "rt edit"
- to retrieve or edit other information associated with tickets:
-
- links A ticket's relationships with others.
- history All of a ticket's transactions.
- history/type/<type> Only a particular type of transaction.
- history/id/<id> Only the transaction of the specified id.
- attachments A list of attachments.
- attachments/<id> The metadata for an individual attachment.
- attachments/<id>/content The content of an individual attachment.
-
---
-
-Title: user
-Title: group
-Text:
-
- Users and groups are identified by name or numeric ID.
-
- The following generic operations may be performed upon them:
-
- - list
- - show
- - edit
- - create
-
- In addition, the following type-specific actions exist:
-
- - grant
- - revoke
-
- Attributes:
-
- The following attributes can be used with "rt show" or "rt edit"
- to retrieve or edit other information associated with users and
- groups:
-
- rights Global rights granted to this user.
- rights/<queue> Queue rights for this user.
-
---
-
-Title: queue
-Text:
-
- Queues are identified by name or numeric ID.
-
- Currently, they can be subjected to the following actions:
-
- - show
- - edit
- - create
-
---
-
-Title: logout
-Text:
-
- Syntax:
-
- rt logout
-
- Terminates the currently established login session. You will need to
- provide authentication credentials before you can continue using the
- server. (See "rt help config" for details about authentication.)
-
---
-
-Title: ls
-Title: list
-Title: search
-Text:
-
- Syntax:
-
- rt <ls|list|search> [options] "query string"
-
- Displays a list of objects matching the specified conditions.
- ("ls", "list", and "search" are synonyms.)
-
- Conditions are expressed in the SQL-like syntax used internally by
- RT3. (For more information, see "rt help query".) The query string
- must be supplied as one argument.
-
- (Right now, the server doesn't support listing anything but tickets.
- Other types will be supported in future; this client will be able to
- take advantage of that support without any changes.)
-
- Options:
-
- The following options control how much information is displayed
- about each matching object:
-
- -i Numeric IDs only. (Useful for |rt edit -; see examples.)
- -s Short description.
- -l Longer description.
-
- In addition,
-
- -o +/-<field> Orders the returned list by the specified field.
- -S var=val Submits the specified variable with the request.
- -t type Specifies the type of object to look for. (The
- default is "ticket".)
-
- Examples:
-
- rt ls "Priority > 5 and Status='new'"
- rt ls -o +Subject "Priority > 5 and Status='new'"
- rt ls -o -Created "Priority > 5 and Status='new'"
- rt ls -i "Priority > 5"|rt edit - set status=resolved
- rt ls -t ticket "Subject like '[PATCH]%'"
-
---
-
-Title: show
-Text:
-
- Syntax:
-
- rt show [options] <object-ids>
-
- Displays details of the specified objects.
-
- For some types, object information is further classified into named
- attributes (for example, "1-3/links" is a valid ticket specification
- that refers to the links for tickets 1-3). Consult "rt help <type>"
- and "rt help objects" for further details.
-
- This command writes a set of forms representing the requested object
- data to STDOUT.
-
- Options:
-
- - Read IDs from STDIN instead of the command-line.
- -t type Specifies object type.
- -f a,b,c Restrict the display to the specified fields.
- -S var=val Submits the specified variable with the request.
-
- Examples:
-
- rt show -t ticket -f id,subject,status 1-3
- rt show ticket/3/attachments/29
- rt show ticket/3/attachments/29/content
- rt show ticket/1-3/links
- rt show -t user 2
-
---
-
-Title: new
-Title: edit
-Title: create
-Text:
-
- Syntax:
-
- rt edit [options] <object-ids> set field=value [field=value] ...
- add field=value [field=value] ...
- del field=value [field=value] ...
-
- Edits information corresponding to the specified objects.
-
- If, instead of "edit", an action of "new" or "create" is specified,
- then a new object is created. In this case, no numeric object IDs
- may be specified, but the syntax and behaviour remain otherwise
- unchanged.
-
- This command typically starts an editor to allow you to edit object
- data in a form for submission. If you specified enough information
- on the command-line, however, it will make the submission directly.
-
- The command line may specify field-values in three different ways.
- "set" sets the named field to the given value, "add" adds a value
- to a multi-valued field, and "del" deletes the corresponding value.
- Each "field=value" specification must be given as a single argument.
-
- For some types, object information is further classified into named
- attributes (for example, "1-3/links" is a valid ticket specification
- that refers to the links for tickets 1-3). These attributes may also
- be edited. Consult "rt help <type>" and "rt help object" for further
- details.
-
- Options:
-
- - Read numeric IDs from STDIN instead of the command-line.
- (Useful with rt ls ... | rt edit -; see examples below.)
- -i Read a completed form from STDIN before submitting.
- -o Dump the completed form to STDOUT instead of submitting.
- -e Allows you to edit the form even if the command-line has
- enough information to make a submission directly.
- -S var=val
- Submits the specified variable with the request.
- -t type Specifies object type.
-
- Examples:
-
- # Interactive (starts $EDITOR with a form).
- rt edit ticket/3
- rt create -t ticket
-
- # Non-interactive.
- rt edit ticket/1-3 add cc=foo@example.com set priority=3
- rt ls -t tickets -i 'Priority > 5' | rt edit - set status=resolved
- rt edit ticket/4 set priority=3 owner=bar@example.com \
- add cc=foo@example.com bcc=quux@example.net
- rt create -t ticket subject='new ticket' priority=10 \
- add cc=foo@example.com
-
---
-
-Title: comment
-Title: correspond
-Text:
-
- Syntax:
-
- rt <comment|correspond> [options] <ticket-id>
-
- Adds a comment (or correspondence) to the specified ticket (the only
- difference being that comments aren't sent to the requestors.)
-
- This command will typically start an editor and allow you to type a
- comment into a form. If, however, you specified all the necessary
- information on the command line, it submits the comment directly.
-
- (See "rt help forms" for more information about forms.)
-
- Options:
-
- -m <text> Specify comment text.
- -a <file> Attach a file to the comment. (May be used more
- than once to attach multiple files.)
- -c <addrs> A comma-separated list of Cc addresses.
- -b <addrs> A comma-separated list of Bcc addresses.
- -w <time> Specify the time spent working on this ticket.
- -e Starts an editor before the submission, even if
- arguments from the command line were sufficient.
-
- Examples:
-
- rt comment -m 'Not worth fixing.' -a stddisclaimer.h 23
-
---
-
-Title: merge
-Text:
-
- Syntax:
-
- rt merge <from-id> <to-id>
-
- Merges the two specified tickets.
-
---
-
-Title: link
-Text:
-
- Syntax:
-
- rt link [-d] <id-A> <link> <id-B>
-
- Creates (or, with -d, deletes) a link between the specified tickets.
- The link can (irrespective of case) be any of:
-
- DependsOn/DependedOnBy: A depends upon B (or vice versa).
- RefersTo/ReferredToBy: A refers to B (or vice versa).
- MemberOf/HasMember: A is a member of B (or vice versa).
-
- To view a ticket's links, use "rt show ticket/3/links". (See
- "rt help ticket" and "rt help show".)
-
- Options:
-
- -d Deletes the specified link.
-
- Examples:
-
- rt link 2 dependson 3
- rt link -d 4 referredtoby 6 # 6 no longer refers to 4
-
---
-
-Title: grant
-Title: revoke
-Text:
-
---
-
-Title: query
-Text:
-
- RT3 uses an SQL-like syntax to specify object selection constraints.
- See the <RT:...> documentation for details.
-
- (XXX: I'm going to have to write it, aren't I?)
-
---
-
-Title: form
-Title: forms
-Text:
-
- This program uses RFC822 header-style forms to represent object data
- in a form that's suitable for processing both by humans and scripts.
-
- A form is a set of (field, value) specifications, with some initial
- commented text and interspersed blank lines allowed for convenience.
- Field names may appear more than once in a form; a comma-separated
- list of multiple field values may also be specified directly.
-
- Field values can be wrapped as in RFC822, with leading whitespace.
- The longest sequence of leading whitespace common to all the lines
- is removed (preserving further indentation). There is no limit on
- the length of a value.
-
- Multiple forms are separated by a line containing only "--\n".
-
- (XXX: A more detailed specification will be provided soon. For now,
- the server-side syntax checking will suffice.)
-
---
-
-Title: topics
-Text:
-
- Use "rt help <topic>" for help on any of the following subjects:
-
- - tickets, users, groups, queues.
- - show, edit, ls/list/search, new/create.
-
- - query (search query syntax)
- - forms (form specification)
-
- - objects (how to specify objects)
- - types (a list of object types)
- - actions/commands (a list of actions)
- - usage/syntax (syntax details)
- - conf/config/configuration (configuration details)
- - examples (a few useful examples)
-
---
-
-Title: example
-Title: examples
-Text:
-
- This section will be filled in with useful examples, once it becomes
- more clear what examples may be useful.
-
- For the moment, please consult examples provided with each action.
-
---
diff --git a/rt/bin/standalone_httpd.in b/rt/bin/standalone_httpd.in
deleted file mode 100755
index 6ba7998..0000000
--- a/rt/bin/standalone_httpd.in
+++ /dev/null
@@ -1,66 +0,0 @@
-#!@PERL@ -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-use warnings;
-use strict;
-
-BEGIN {
- use lib( "@LOCAL_LIB_PATH@", "@RT_LIB_PATH@");
- use RT;
- RT::LoadConfig();
- if ($RT::DevelMode) { require Module::Refresh; }
-}
-
-RT::Init();
-
-use RT::Interface::Web::Standalone;
-
-my $server = RT::Interface::Web::Standalone->new;
-$server->port(shift @ARGV) if ($ARGV[0]);
-$server->run();
-
-
diff --git a/rt/bin/webmux.pl b/rt/bin/webmux.pl
deleted file mode 100755
index 21cb83f..0000000
--- a/rt/bin/webmux.pl
+++ /dev/null
@@ -1,125 +0,0 @@
-#!/usr/bin/perl
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-use strict;
-
-BEGIN {
- $ENV{'PATH'} = '/bin:/usr/bin'; # or whatever you need
- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'};
- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'};
- $ENV{'ENV'} = '' if defined $ENV{'ENV'};
- $ENV{'IFS'} = '' if defined $ENV{'IFS'};
-}
-
-use lib ("/opt/rt3/local/lib", "/opt/rt3/lib");
-use RT;
-
-package RT::Mason;
-
-use CGI qw(-private_tempfiles); #bring this in before mason, to make sure we
- #set private_tempfiles
-
-BEGIN {
- if ($CGI::MOD_PERL) {
- require HTML::Mason::ApacheHandler;
- }
- else {
- require HTML::Mason::CGIHandler;
- }
-}
-
-use HTML::Mason; # brings in subpackages: Parser, Interp, etc.
-
-use vars qw($Nobody $SystemUser $r);
-
-#This drags in RT's config.pm
-RT::LoadConfig();
-
-use Carp;
-
-{
- package HTML::Mason::Commands;
- use vars qw(%session);
-
- use RT::Tickets;
- use RT::Transactions;
- use RT::Users;
- use RT::CurrentUser;
- use RT::Templates;
- use RT::Queues;
- use RT::ScripActions;
- use RT::ScripConditions;
- use RT::Scrips;
- use RT::Groups;
- use RT::GroupMembers;
- use RT::CustomFields;
- use RT::CustomFieldValues;
- use RT::TicketCustomFieldValues;
-
- use RT::Interface::Web;
- use MIME::Entity;
- use Text::Wrapper;
- use CGI::Cookie;
- use Time::ParseDate;
- use HTML::Entities;
-}
-
-
-# Activate the following if running httpd as root (the normal case).
-# Resets ownership of all files created by Mason at startup.
-# Note that mysql uses DB for sessions, so there's no need to do this.
-unless ($RT::DatabaseType =~ /(mysql|Pg)/) {
- # Clean up our umask to protect session files
- umask(0077);
-
-if ( $CGI::MOD_PERL) {
- chown( Apache->server->uid, Apache->server->gid, [$RT::MasonSessionDir] )
- if Apache->server->can('uid');
- }
- # Die if WebSessionDir doesn't exist or we can't write to it
- stat($RT::MasonSessionDir);
- die "Can't read and write $RT::MasonSessionDir"
- unless ( ( -d _ ) and ( -r _ ) and ( -w _ ) );
-}
-
-my $ah = &RT::Interface::Web::NewApacheHandler() if $CGI::MOD_PERL;
-
-sub handler {
- ($r) = @_;
-
- RT::Init();
-
- # We don't need to handle non-text items
- return -1 if defined( $r->content_type ) && $r->content_type !~ m|^text/|io;
-
- my %session;
- my $status = $ah->handle_request($r);
- undef (%session);
-
- $RT::Logger->crit("Transaction not committed. Usually indicates a software fault. Data loss may have occurred") if $RT::Handle->TransactionDepth;
- return $status;
-}
-
-1;
diff --git a/rt/bin/webmux.pl.in b/rt/bin/webmux.pl.in
deleted file mode 100644
index 73b1014..0000000
--- a/rt/bin/webmux.pl.in
+++ /dev/null
@@ -1,135 +0,0 @@
-#!@PERL@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-
-BEGIN {
- $ENV{'PATH'} = '/bin:/usr/bin'; # or whatever you need
- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'};
- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'};
- $ENV{'ENV'} = '' if defined $ENV{'ENV'};
- $ENV{'IFS'} = '' if defined $ENV{'IFS'};
-
- use CGI qw(-private_tempfiles); #bring this in before mason, to make sure we
- #set private_tempfiles
-
- die "RT does not support mod_perl 1.99. Please upgrade to mod_perl 2.0"
- if $ENV{'MOD_PERL'}
- and $ENV{'MOD_PERL'} =~ m{mod_perl/(?:1\.9)};
-
-}
-
-use lib ( "@LOCAL_LIB_PATH@", "@RT_LIB_PATH@" );
-use RT;
-
-package RT::Mason;
-
-use vars qw($Nobody $SystemUser $Handler $r);
-
-#This drags in RT's config.pm
-BEGIN {
- RT::LoadConfig();
- if ($RT::DevelMode) { require Module::Refresh; }
-}
-
-
-{
-
- package HTML::Mason::Commands;
- use vars qw(%session);
-}
-
-use RT::Interface::Web;
-use RT::Interface::Web::Handler;
-$Handler = RT::Interface::Web::Handler->new(@RT::MasonParameters);
-
-if ($ENV{'MOD_PERL'} && !$RT::DevelMode) {
- # Under static_source, we need to purge the component cache
- # each time we restart, so newer components may be reloaded.
- #
- # We can't do this in FastCGI or we'll blow away the component root _every_ time a new server starts
- # which happens every few hits.
-
- use File::Path qw( rmtree );
- use File::Glob qw( bsd_glob );
- rmtree([ bsd_glob("$RT::MasonDataDir/obj/*") ], 0, 1);
-}
-
-sub handler {
- ($r) = @_;
-
- local $SIG{__WARN__};
- local $SIG{__DIE__};
-
- # We don't need to handle non-text, non-xml items
- if ($r->content_type =~ m/^httpd\b.*\bdirectory/i) {
- use File::Spec::Unix;
- # Our DirectoryIndex is always index.html, regardless of httpd settings
- $r->filename( File::Spec::Unix->catfile( $r->filename, 'index.html' ) );
- }
- elsif (defined( $r->content_type )) {
- $r->content_type =~ m!(^text/|\bxml\b)!i or return -1;
- }
-
- Module::Refresh->refresh if $RT::DevelMode;
-
- RT::Init();
-
- my %session;
- my $status;
- eval { $status = $Handler->handle_request($r) };
- if ($@) {
- $RT::Logger->crit($@);
- }
-
- undef(%session);
-
- RT::Interface::Web::Handler->CleanupRequest();
-
- return $status;
-}
-
-1;
diff --git a/rt/config.layout.in b/rt/config.layout.in
deleted file mode 100644
index a08f489..0000000
--- a/rt/config.layout.in
+++ /dev/null
@@ -1,127 +0,0 @@
-##
-## config.layout -- Pre-defined Installation Path Layouts
-##
-## Hints:
-## - layouts can be loaded with configure's --enable-layout=ID option
-## - when no --enable-layout option is given, the default layout is `RT'
-## - a trailing plus character (`+') on paths is replaced with a
-## `/<target>' suffix where <target> is currently hardcoded to 'rt3'.
-## (This may become a configurable parameter at some point.)
-##
-## The following variables must _all_ be set:
-## prefix exec_prefix bindir sbindir sysconfdir mandir libdir
-## datadir htmldir localstatedir logfiledir masonstatedir
-## sessionstatedir customdir customhtmldir customlexdir
-## (This can be seen in m4/rt_layout.m4.)
-##
-
-# Default RT3 path layout.
-<Layout RT3>
- prefix: /opt/rt3
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- sysconfdir: ${prefix}/etc
- mandir: ${prefix}/man
- libdir: ${prefix}/lib
- datadir: ${prefix}/share
- htmldir: ${datadir}/html
- manualdir: ${datadir}/doc
- localstatedir: ${prefix}/var
- logfiledir: ${localstatedir}/log
- masonstatedir: ${localstatedir}/mason_data
- sessionstatedir: ${localstatedir}/session_data
- customdir: ${prefix}/local
- custometcdir: ${customdir}/etc
- customhtmldir: ${customdir}/html
- customlexdir: ${customdir}/po
- customlibdir: ${customdir}/lib
-</Layout>
-<Layout inplace>
- prefix: `pwd`
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- sysconfdir: ${prefix}/etc
- mandir: ${prefix}/man
- libdir: ${prefix}/lib
- datadir: ${prefix}/share
- htmldir: ${prefix}/html
- manualdir: ${datadir}/doc
- localstatedir: ${prefix}/var
- logfiledir: ${localstatedir}/log
- masonstatedir: ${localstatedir}/mason_data
- sessionstatedir: ${localstatedir}/session_data
- customdir: ${prefix}/local
- custometcdir: ${customdir}/etc
- customhtmldir: ${customdir}/html
- customlexdir: ${customdir}/po
- customlibdir: ${customdir}/lib
-</Layout>
-
-<Layout FreeBSD>
- prefix: /usr/local
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- sysconfdir: ${prefix}/etc+
- mandir: ${prefix}/man
- libdir: ${prefix}/lib+
- datadir: ${prefix}/share+
- htmldir: ${datadir}/html
- manualdir: ${prefix}/share/doc+
- logfiledir: /var/log
- localstatedir: /var/run+
- masonstatedir: ${localstatedir}/mason_data
- sessionstatedir: ${localstatedir}/session_data
- customdir: ${prefix}/share+
- custometcdir: ${customdir}/local/etc
- customhtmldir: ${customdir}/local/html
- customlexdir: ${customdir}/local/po
- customlibdir: ${customdir}/local/lib
-</Layout>
-
-<Layout Win32>
- prefix: C:/Program Files/Request Tracker
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- sysconfdir: ${prefix}/etc
- mandir: ${prefix}/man
- libdir: ${prefix}/lib
- datadir: ${prefix}
- htmldir: ${datadir}/html
- manualdir: ${datadir}/doc
- localstatedir: ${prefix}/var
- logfiledir: ${localstatedir}/log
- masonstatedir: ${localstatedir}/mason_data
- sessionstatedir: ${localstatedir}/session_data
- customdir: ${prefix}/local
- custometcdir: ${customdir}/etc
- customhtmldir: ${customdir}/html
- customlexdir: ${customdir}/po
- customlibdir: ${customdir}/lib
-</Layout>
-
-<Layout Freeside>
- prefix: /opt/rt3
- exec_prefix: ${prefix}
- bindir: ${exec_prefix}/bin
- sbindir: ${exec_prefix}/sbin
- sysconfdir: ${prefix}/etc
- mandir: ${prefix}/man
- libdir: ${prefix}/lib
- datadir: ${prefix}/share
- htmldir: %%%FREESIDE_DOCUMENT_ROOT%%%/rt
- manualdir: ${datadir}/doc
- localstatedir: ${prefix}/var
- logfiledir: ${localstatedir}/log
- masonstatedir: %%%MASONDATA%%%
- sessionstatedir: ${localstatedir}/session_data
- customdir: ${prefix}/local
- custometcdir: ${customdir}/etc
- customhtmldir: ${customdir}/html
- customlexdir: ${customdir}/po
- customlibdir: ${customdir}/lib
-</Layout>
-
diff --git a/rt/config.log b/rt/config.log
deleted file mode 100644
index 24e15e3..0000000
--- a/rt/config.log
+++ /dev/null
@@ -1,118 +0,0 @@
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by RT configure 3.0.9, which was
-generated by GNU Autoconf 2.53. Invocation command line was
-
- $ ./configure
-
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = pallas
-uname -m = i686
-uname -r = 2.4.18-686
-uname -s = Linux
-uname -v = #1 Sun Apr 14 11:32:47 EST 2002
-
-/usr/bin/uname -p = unknown
-/bin/uname -X = unknown
-
-/bin/arch = i686
-/usr/bin/arch -k = unknown
-/usr/convex/getsysinfo = unknown
-hostinfo = unknown
-/bin/machine = unknown
-/usr/bin/oslevel = unknown
-/bin/universe = unknown
-
-PATH: /usr/X11R6/bin/
-PATH: /opt/rt/bin
-PATH: /usr/athena/bin
-PATH: /usr/local/bin
-PATH: /bin
-PATH: /usr/bin
-PATH: /usr/sbin
-PATH: /usr/bin
-PATH: /usr/games
-PATH: $HOME/bin
-PATH: /opt/kerberos/bin
-PATH: /opt/StarOffice-4.0/bin
-PATH: /opt/mysql/bin/
-PATH: .
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-configure:1218: checking for a BSD-compatible install
-configure:1272: result: /usr/bin/install -c
-configure:1286: checking for perl
-configure:1304: found /usr/bin/perl
-configure:1317: result: /usr/bin/perl
-configure:1639: checking for chosen layout
-configure:1654: result: RT3
-configure:1986: creating ./config.status
-
-## ---------------------- ##
-## Running config.status. ##
-## ---------------------- ##
-
-This file was extended by RT config.status 3.0.9, which was
-generated by GNU Autoconf 2.53. Invocation command line was
-
- CONFIG_FILES =
- CONFIG_HEADERS =
- CONFIG_LINKS =
- CONFIG_COMMANDS =
- $ ./config.status
-
-on pallas
-
-config.status:639: creating sbin/rt-setup-database
-config.status:639: creating sbin/rt-test-dependencies
-config.status:639: creating Makefile
-config.status:639: creating etc/RT_Config.pm
-config.status:639: creating lib/RT.pm
-config.status:639: creating lib/t/00smoke.t
-config.status:639: creating lib/t/01harness.t
-config.status:639: creating lib/t/02regression.t
-config.status:639: creating lib/t/03web.pl
-config.status:639: creating lib/t/04_send_email.pl
-config.status:639: creating bin/mason_handler.fcgi
-config.status:639: creating bin/mason_handler.scgi
-config.status:639: creating bin/mason_handler.svc
-config.status:639: creating bin/rt-commit-handler
-config.status:639: creating bin/rt-crontool
-config.status:639: creating bin/rt-mailgate
-config.status:639: creating bin/rt
-config.status:639: creating bin/webmux.pl
-
-## ---------------- ##
-## Cache variables. ##
-## ---------------- ##
-
-ac_cv_env_PERL_set=
-ac_cv_env_PERL_value=
-ac_cv_env_build_alias_set=
-ac_cv_env_build_alias_value=
-ac_cv_env_host_alias_set=
-ac_cv_env_host_alias_value=
-ac_cv_env_target_alias_set=
-ac_cv_env_target_alias_value=
-ac_cv_path_PERL=/usr/bin/perl
-ac_cv_path_install='/usr/bin/install -c'
-
-## ----------- ##
-## confdefs.h. ##
-## ----------- ##
-
-#define PACKAGE_NAME "RT"
-#define PACKAGE_TARNAME "rt"
-#define PACKAGE_VERSION "3.0.9"
-#define PACKAGE_STRING "RT 3.0.9"
-#define PACKAGE_BUGREPORT "rt-3.0-bugs@fsck.com"
-
-configure: exit 0
diff --git a/rt/config.status b/rt/config.status
deleted file mode 100755
index e7d81b3..0000000
--- a/rt/config.status
+++ /dev/null
@@ -1,713 +0,0 @@
-#! /bin/sh
-# Generated by configure.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-
-# NLS nuisances.
-# Support unset when possible.
-if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-(set +x; test -n "`(LANG=C; export LANG) 2>&1`") &&
- { $as_unset LANG || test "${LANG+set}" != set; } ||
- { LANG=C; export LANG; }
-(set +x; test -n "`(LC_ALL=C; export LC_ALL) 2>&1`") &&
- { $as_unset LC_ALL || test "${LC_ALL+set}" != set; } ||
- { LC_ALL=C; export LC_ALL; }
-(set +x; test -n "`(LC_TIME=C; export LC_TIME) 2>&1`") &&
- { $as_unset LC_TIME || test "${LC_TIME+set}" != set; } ||
- { LC_TIME=C; export LC_TIME; }
-(set +x; test -n "`(LC_CTYPE=C; export LC_CTYPE) 2>&1`") &&
- { $as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set; } ||
- { LC_CTYPE=C; export LC_CTYPE; }
-(set +x; test -n "`(LANGUAGE=C; export LANGUAGE) 2>&1`") &&
- { $as_unset LANGUAGE || test "${LANGUAGE+set}" != set; } ||
- { LANGUAGE=C; export LANGUAGE; }
-(set +x; test -n "`(LC_COLLATE=C; export LC_COLLATE) 2>&1`") &&
- { $as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set; } ||
- { LC_COLLATE=C; export LC_COLLATE; }
-(set +x; test -n "`(LC_NUMERIC=C; export LC_NUMERIC) 2>&1`") &&
- { $as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set; } ||
- { LC_NUMERIC=C; export LC_NUMERIC; }
-(set +x; test -n "`(LC_MESSAGES=C; export LC_MESSAGES) 2>&1`") &&
- { $as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set; } ||
- { LC_MESSAGES=C; export LC_MESSAGES; }
-
-
-# Name of the executable.
-as_me=`(basename "$0") 2>/dev/null ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conftest.sh
- echo "exit 0" >>conftest.sh
- chmod +x conftest.sh
- if (PATH=".;."; conftest.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conftest.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=$PATH_SEPARATOR; export CDPATH; }
-
-exec 6>&1
-
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling. Logging --version etc. is OK.
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by RT $as_me 3.0.9, which was
-generated by GNU Autoconf 2.53. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
-config_files=" sbin/rt-setup-database sbin/rt-test-dependencies Makefile etc/RT_Config.pm lib/RT.pm lib/t/00smoke.t lib/t/01harness.t lib/t/02regression.t lib/t/03web.pl lib/t/04_send_email.pl bin/mason_handler.fcgi bin/mason_handler.scgi bin/mason_handler.svc bin/rt-commit-handler bin/rt-crontool bin/rt-mailgate bin/rt bin/webmux.pl"
-
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Report bugs to <bug-autoconf@gnu.org>."
-ac_cs_version="\
-RT config.status 3.0.9
-configured by ./configure, generated by GNU Autoconf 2.53,
- with options \"\"
-
-Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
-Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-srcdir=.
-INSTALL="/usr/bin/install -c"
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=*)
- ac_option=`expr "x$1" : 'x\([^=]*\)='`
- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
- shift
- set dummy "$ac_option" "$ac_optarg" ${1+"$@"}
- shift
- ;;
- -*);;
- *) # This is not an option, so the user has probably given explicit
- # arguments.
- ac_need_defaults=false;;
- esac
-
- case $1 in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- echo "running /bin/sh ./configure " " --no-create --no-recursion"
- exec /bin/sh ./configure --no-create --no-recursion ;;
- --version | --vers* | -V )
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
- { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; };;
- --help | --hel | -h )
- echo "$ac_cs_usage"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- shift
- CONFIG_FILES="$CONFIG_FILES $1"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- shift
- CONFIG_HEADERS="$CONFIG_HEADERS $1"
- ac_need_defaults=false;;
-
- # This is an error.
- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; } ;;
-
- *) ac_config_targets="$ac_config_targets $1" ;;
-
- esac
- shift
-done
-
-for ac_config_target in $ac_config_targets
-do
- case "$ac_config_target" in
- # Handling of arguments.
- "sbin/rt-setup-database" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-setup-database" ;;
- "sbin/rt-test-dependencies" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-test-dependencies" ;;
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "etc/RT_Config.pm" ) CONFIG_FILES="$CONFIG_FILES etc/RT_Config.pm" ;;
- "lib/RT.pm" ) CONFIG_FILES="$CONFIG_FILES lib/RT.pm" ;;
- "lib/t/00smoke.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/00smoke.t" ;;
- "lib/t/01harness.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/01harness.t" ;;
- "lib/t/02regression.t" ) CONFIG_FILES="$CONFIG_FILES lib/t/02regression.t" ;;
- "lib/t/03web.pl" ) CONFIG_FILES="$CONFIG_FILES lib/t/03web.pl" ;;
- "lib/t/04_send_email.pl" ) CONFIG_FILES="$CONFIG_FILES lib/t/04_send_email.pl" ;;
- "bin/mason_handler.fcgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.fcgi" ;;
- "bin/mason_handler.scgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.scgi" ;;
- "bin/mason_handler.svc" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.svc" ;;
- "bin/rt-commit-handler" ) CONFIG_FILES="$CONFIG_FILES bin/rt-commit-handler" ;;
- "bin/rt-crontool" ) CONFIG_FILES="$CONFIG_FILES bin/rt-crontool" ;;
- "bin/rt-mailgate" ) CONFIG_FILES="$CONFIG_FILES bin/rt-mailgate" ;;
- "bin/rt" ) CONFIG_FILES="$CONFIG_FILES bin/rt" ;;
- "bin/webmux.pl" ) CONFIG_FILES="$CONFIG_FILES bin/webmux.pl" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-fi
-
-# Create a temporary directory, and hook for its removal unless debugging.
-$debug ||
-{
- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-
-# Create a (secure) tmp directory for tmp files.
-: ${TMPDIR=/tmp}
-{
- tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=$TMPDIR/cs$$-$RANDOM
- (umask 077 && mkdir $tmp)
-} ||
-{
- echo "$me: cannot create a temporary directory in $TMPDIR" >&2
- { (exit 1); exit 1; }
-}
-
-
-#
-# CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "$CONFIG_FILES"; then
- # Protect against being on the right side of a sed subst in config.status.
- sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g;
- s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF
-s,@SHELL@,/bin/sh,;t t
-s,@PATH_SEPARATOR@,:,;t t
-s,@PACKAGE_NAME@,RT,;t t
-s,@PACKAGE_TARNAME@,rt,;t t
-s,@PACKAGE_VERSION@,3.0.9,;t t
-s,@PACKAGE_STRING@,RT 3.0.9,;t t
-s,@PACKAGE_BUGREPORT@,rt-3.0-bugs@fsck.com,;t t
-s,@exec_prefix@,/opt/rt3,;t t
-s,@prefix@,/opt/rt3,;t t
-s,@program_transform_name@,s,x,x,,;t t
-s,@bindir@,/opt/rt3/bin,;t t
-s,@sbindir@,/opt/rt3/sbin,;t t
-s,@libexecdir@,${exec_prefix}/libexec,;t t
-s,@datadir@,/opt/rt3/share,;t t
-s,@sysconfdir@,/opt/rt3/etc,;t t
-s,@sharedstatedir@,${prefix}/com,;t t
-s,@localstatedir@,/opt/rt3/var,;t t
-s,@libdir@,/opt/rt3/lib,;t t
-s,@includedir@,${prefix}/include,;t t
-s,@oldincludedir@,/usr/include,;t t
-s,@infodir@,${prefix}/info,;t t
-s,@mandir@,/opt/rt3/man,;t t
-s,@build_alias@,,;t t
-s,@host_alias@,,;t t
-s,@target_alias@,,;t t
-s,@DEFS@,-DPACKAGE_NAME=\"RT\" -DPACKAGE_TARNAME=\"rt\" -DPACKAGE_VERSION=\"3.0.9\" -DPACKAGE_STRING=\"RT\ 3.0.9\" -DPACKAGE_BUGREPORT=\"rt-3.0-bugs@fsck.com\" ,;t t
-s,@ECHO_C@,,;t t
-s,@ECHO_N@,-n,;t t
-s,@ECHO_T@,,;t t
-s,@LIBS@,,;t t
-s,@rt_version_major@,3,;t t
-s,@rt_version_minor@,0,;t t
-s,@rt_version_patch@,9,;t t
-s,@INSTALL_PROGRAM@,${INSTALL},;t t
-s,@INSTALL_SCRIPT@,${INSTALL},;t t
-s,@INSTALL_DATA@,${INSTALL} -m 644,;t t
-s,@PERL@,/usr/bin/perl,;t t
-s,@SPEEDY_BIN@,/usr/local/bin/speedy,;t t
-s,@exp_prefix@,/opt/rt3,;t t
-s,@exp_exec_prefix@,/opt/rt3,;t t
-s,@exp_bindir@,/opt/rt3/bin,;t t
-s,@exp_sbindir@,/opt/rt3/sbin,;t t
-s,@exp_sysconfdir@,/opt/rt3/etc,;t t
-s,@exp_mandir@,/opt/rt3/man,;t t
-s,@exp_libdir@,/opt/rt3/lib,;t t
-s,@exp_datadir@,/opt/rt3/share,;t t
-s,@htmldir@,/opt/rt3/share/html,;t t
-s,@exp_htmldir@,/opt/rt3/share/html,;t t
-s,@manualdir@,/opt/rt3/share/doc,;t t
-s,@exp_manualdir@,/opt/rt3/share/doc,;t t
-s,@exp_localstatedir@,/opt/rt3/var,;t t
-s,@logfiledir@,/opt/rt3/var/log,;t t
-s,@exp_logfiledir@,/opt/rt3/var/log,;t t
-s,@masonstatedir@,/opt/rt3/var/mason_data,;t t
-s,@exp_masonstatedir@,/opt/rt3/var/mason_data,;t t
-s,@sessionstatedir@,/opt/rt3/var/session_data,;t t
-s,@exp_sessionstatedir@,/opt/rt3/var/session_data,;t t
-s,@customdir@,/opt/rt3/local,;t t
-s,@exp_customdir@,/opt/rt3/local,;t t
-s,@custometcdir@,/opt/rt3/local/etc,;t t
-s,@exp_custometcdir@,/opt/rt3/local/etc,;t t
-s,@customhtmldir@,/opt/rt3/local/html,;t t
-s,@exp_customhtmldir@,/opt/rt3/local/html,;t t
-s,@customlexdir@,/opt/rt3/local/po,;t t
-s,@exp_customlexdir@,/opt/rt3/local/po,;t t
-s,@customlibdir@,/opt/rt3/local/lib,;t t
-s,@exp_customlibdir@,/opt/rt3/local/lib,;t t
-s,@rt_layout_name@,RT3,;t t
-s,@RTGROUP@,rt,;t t
-s,@BIN_OWNER@,root,;t t
-s,@LIBS_OWNER@,root,;t t
-s,@LIBS_GROUP@,bin,;t t
-s,@DB_TYPE@,mysql,;t t
-s,@ORACLE_ENV_PREF@,,;t t
-s,@DB_HOST@,localhost,;t t
-s,@DB_PORT@,,;t t
-s,@DB_RT_HOST@,localhost,;t t
-s,@DB_DBA@,root,;t t
-s,@DB_DATABASE@,rt3,;t t
-s,@DB_RT_USER@,rt_user,;t t
-s,@DB_RT_PASS@,rt_pass,;t t
-s,@WEB_USER@,www,;t t
-s,@WEB_GROUP@,www,;t t
-s,@RT_VERSION_MAJOR@,3,;t t
-s,@RT_VERSION_MINOR@,0,;t t
-s,@RT_VERSION_PATCH@,9,;t t
-s,@RT_PATH@,/opt/rt3,;t t
-s,@RT_DOC_PATH@,/opt/rt3/share/doc,;t t
-s,@RT_LOCAL_PATH@,/opt/rt3/local,;t t
-s,@RT_LIB_PATH@,/opt/rt3/lib,;t t
-s,@RT_ETC_PATH@,/opt/rt3/etc,;t t
-s,@CONFIG_FILE_PATH@,/opt/rt3/etc,;t t
-s,@RT_BIN_PATH@,/opt/rt3/bin,;t t
-s,@RT_SBIN_PATH@,/opt/rt3/sbin,;t t
-s,@RT_VAR_PATH@,/opt/rt3/var,;t t
-s,@RT_MAN_PATH@,/opt/rt3/man,;t t
-s,@MASON_DATA_PATH@,/opt/rt3/var/mason_data,;t t
-s,@MASON_SESSION_PATH@,/opt/rt3/var/session_data,;t t
-s,@MASON_HTML_PATH@,/opt/rt3/share/html,;t t
-s,@LOCAL_ETC_PATH@,/opt/rt3/local/etc,;t t
-s,@MASON_LOCAL_HTML_PATH@,/opt/rt3/local/html,;t t
-s,@LOCAL_LEXICON_PATH@,/opt/rt3/local/po,;t t
-s,@LOCAL_LIB_PATH@,/opt/rt3/local/lib,;t t
-s,@DESTDIR@,/opt/rt3,;t t
-s,@RT_LOG_PATH@,/opt/rt3/var/log,;t t
-CEOF
-
- # Split the substitutions into bite-sized pieces for seds with
- # small command number limits, like on Digital OSF/1 and HP-UX.
- ac_max_sed_lines=48
- ac_sed_frag=1 # Number of current file.
- ac_beg=1 # First line for current file.
- ac_end=$ac_max_sed_lines # Line after last line for current file.
- ac_more_lines=:
- ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- else
- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- fi
- if test ! -s $tmp/subs.frag; then
- ac_more_lines=false
- else
- # The purpose of the label and of the branching condition is to
- # speed up the sed processing (if there are no `@' at all, there
- # is no need to browse any of the substitutions).
- # These are the two extra sed commands mentioned above.
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
- fi
- done
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
- fi
-fi # test -n "$CONFIG_FILES"
-
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { case "$ac_dir" in
- [\\/]* | ?:[\\/]* ) as_incr_dir=;;
- *) as_incr_dir=.;;
-esac
-as_dummy="$ac_dir"
-for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
- case $as_mkdir_dir in
- # Skip DOS drivespec
- ?:) as_incr_dir=$as_mkdir_dir ;;
- *)
- as_incr_dir=$as_incr_dir/$as_mkdir_dir
- test -d "$as_incr_dir" ||
- mkdir "$as_incr_dir" ||
- { { echo "$as_me:$LINENO: error: cannot create \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }
- ;;
- esac
-done; }
-
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be
-# absolute.
-ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd`
-ac_abs_top_builddir=`cd "$ac_dir" && cd $ac_top_builddir && pwd`
-ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd`
-ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd`
-
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
- esac
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- configure_input=
- else
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
- sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo $f;;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo $f
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo $srcdir/$f
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
- sed "/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}
-
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s,@configure_input@,$configure_input,;t t
-s,@srcdir@,$ac_srcdir,;t t
-s,@abs_srcdir@,$ac_abs_srcdir,;t t
-s,@top_srcdir@,$ac_top_srcdir,;t t
-s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s,@builddir@,$ac_builddir,;t t
-s,@abs_builddir@,$ac_abs_builddir,;t t
-s,@top_builddir@,$ac_top_builddir,;t t
-s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
-s,@INSTALL@,$ac_INSTALL,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
- mv $tmp/out $ac_file
- else
- cat $tmp/out
- rm -f $tmp/out
- fi
-
-done
-
-{ (exit 0); exit 0; }
diff --git a/rt/configure b/rt/configure
deleted file mode 100755
index 395fc0b..0000000
--- a/rt/configure
+++ /dev/null
@@ -1,3091 +0,0 @@
-#! /bin/sh
-# From configure.ac Revision: 3070 .
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for RT 3.4.4.
-#
-# Report bugs to <rt-bugs@fsck.com>.
-#
-# Copyright (C) 2003 Free Software Foundation, Inc.
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
- fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-
-# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-exec 6>&1
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_config_libobj_dir=.
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Maximum number of lines to put in a shell here document.
-# This variable seems obsolete. It should probably be removed, and
-# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
-
-# Identity of this package.
-PACKAGE_NAME='RT'
-PACKAGE_TARNAME='rt'
-PACKAGE_VERSION='3.4.4'
-PACKAGE_STRING='RT 3.4.4'
-PACKAGE_BUGREPORT='rt-bugs@fsck.com'
-
-ac_unique_file="lib/RT.pm.in"
-ac_default_prefix=/opt/rt3
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS rt_version_major rt_version_minor rt_version_patch INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA PERL SPEEDY_BIN exp_prefix exp_exec_prefix exp_bindir exp_sbindir exp_sysconfdir exp_mandir exp_libdir exp_datadir htmldir exp_htmldir manualdir exp_manualdir exp_localstatedir logfiledir exp_logfiledir masonstatedir exp_masonstatedir sessionstatedir exp_sessionstatedir customdir exp_customdir custometcdir exp_custometcdir customhtmldir exp_customhtmldir customlexdir exp_customlexdir customlibdir exp_customlibdir rt_layout_name BIN_OWNER LIBS_OWNER LIBS_GROUP DB_TYPE DATABASE_ENV_PREF DB_HOST DB_PORT DB_RT_HOST DB_DBA DB_DATABASE DB_RT_USER DB_RT_PASS WEB_USER WEB_GROUP RTGROUP APACHECTL RT_DEVEL_MODE RT_VERSION_MAJOR RT_VERSION_MINOR RT_VERSION_PATCH RT_PATH RT_DOC_PATH RT_LOCAL_PATH RT_LIB_PATH RT_ETC_PATH CONFIG_FILE_PATH RT_BIN_PATH RT_SBIN_PATH RT_VAR_PATH RT_MAN_PATH MASON_DATA_PATH MASON_SESSION_PATH MASON_HTML_PATH LOCAL_ETC_PATH MASON_LOCAL_HTML_PATH LOCAL_LEXICON_PATH LOCAL_LIB_PATH DESTDIR RT_LOG_PATH LIBOBJS LTLIBOBJS'
-ac_subst_files=''
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
-
-ac_prev=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
- ac_prev=
- continue
- fi
-
- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_option in
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- eval "enable_$ac_feature=no" ;;
-
- -enable-* | --enable-*)
- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_$ac_feature='$ac_optarg'" ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
- esac
- eval "with_$ac_package='$ac_optarg'" ;;
-
- -without-* | --without-*)
- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
- eval "with_$ac_package=no" ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
- eval "$ac_envvar='$ac_optarg'"
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
-fi
-
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# Be sure to have absolute paths.
-for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used." >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$0" : 'X\(//\)[^/]' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
- { (exit 1); exit 1; }; }
- else
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
- fi
-fi
-(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
- { (exit 1); exit 1; }; }
-srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-ac_env_build_alias_set=${build_alias+set}
-ac_env_build_alias_value=$build_alias
-ac_cv_env_build_alias_set=${build_alias+set}
-ac_cv_env_build_alias_value=$build_alias
-ac_env_host_alias_set=${host_alias+set}
-ac_env_host_alias_value=$host_alias
-ac_cv_env_host_alias_set=${host_alias+set}
-ac_cv_env_host_alias_value=$host_alias
-ac_env_target_alias_set=${target_alias+set}
-ac_env_target_alias_value=$target_alias
-ac_cv_env_target_alias_set=${target_alias+set}
-ac_cv_env_target_alias_value=$target_alias
-ac_env_PERL_set=${PERL+set}
-ac_env_PERL_value=$PERL
-ac_cv_env_PERL_set=${PERL+set}
-ac_cv_env_PERL_value=$PERL
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures RT 3.4.4 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-_ACEOF
-
- cat <<_ACEOF
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --infodir=DIR info documentation [PREFIX/info]
- --mandir=DIR man documentation [PREFIX/man]
-_ACEOF
-
- cat <<\_ACEOF
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of RT 3.4.4:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --enable-layout=LAYOUT Use a specific directory layout (Default: RT3)
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-speedycgi=/path/to/speedy
- path to your speedycgi binary, if it exists
- --with-bin-owner=OWNER user that will own RT binaries (default root)
- --with-libs-owner=OWNER user that will own RT libraries (default root)
- --with-libs-group=GROUP group that will own RT binaries (default bin)
- --with-db-type=TYPE sort of database RT will use (default: mysql)
- (mysql, Pg, Oracle, Informix and SQLite are valid)
- --with-db-host=HOSTNAME FQDN of database server (default: localhost)
- --with-db-port=PORT port on which the database listens on
- --with-db-rt-host=HOSTNAME
- FQDN of RT server which talks to the database server
- (default: localhost)
- --with-db-dba=DBA name of database administrator (default: root)
- --with-db-database=DBNAME
- name of the database to use (default: rt3)
- --with-db-rt-user=DBUSER
- name of database user (default: rt_user)
- --with-db-rt-pass=PASSWORD
- password for database user (default: rt_pass)
- --with-web-user=USER user the web server runs as (default: www)
- --with-web-group=GROUP group the web server runs as (default: www)
- --with-rt-group=GROUP group to own all files (default: rt)
- --with-my-user-group set all users and groups to current user/group
- --with-apachectl instruct RT where to find your apachectl
- --with-devel-mode Turn on development aids that might hurt you in
- production
-
-Some influential environment variables:
- PERL Perl interpreter command
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to <rt-bugs@fsck.com>.
-_ACEOF
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- ac_popdir=`pwd`
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d $ac_dir || continue
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_srcdir/configure.gnu; then
- echo
- $SHELL $ac_srcdir/configure.gnu --help=recursive
- elif test -f $ac_srcdir/configure; then
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
- test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
- else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi
- cd "$ac_popdir"
- done
-fi
-
-test -n "$ac_init_help" && exit 0
-if $ac_init_version; then
- cat <<\_ACEOF
-RT configure 3.4.4
-generated by GNU Autoconf 2.59
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit 0
-fi
-exec 5>config.log
-cat >&5 <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by RT $as_me 3.4.4, which was
-generated by GNU Autoconf 2.59. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- echo "PATH: $as_dir"
-done
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_sep=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
- 2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
- # Get rid of the leading space.
- ac_sep=" "
- ;;
- esac
- done
-done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Be sure not to use single quotes in there, as some shells,
-# such as our DU 5.0 friend, will then `close' the trap.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- cat <<\_ASBOX
-## ---------------- ##
-## Cache variables. ##
-## ---------------- ##
-_ASBOX
- echo
- # The following way of writing the cache mishandles newlines in values,
-{
- (set) 2>&1 |
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- sed -n \
- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
- *)
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-}
- echo
-
- cat <<\_ASBOX
-## ----------------- ##
-## Output variables. ##
-## ----------------- ##
-_ASBOX
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- cat <<\_ASBOX
-## ------------- ##
-## Output files. ##
-## ------------- ##
-_ASBOX
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- cat <<\_ASBOX
-## ----------- ##
-## confdefs.h. ##
-## ----------- ##
-_ASBOX
- echo
- sed "/^$/d" confdefs.h | sort
- echo
- fi
- test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
- ' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo >confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file"
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special
- # files actually), so we avoid doing that.
- if test -f "$cache_file"; then
- { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
- *) . ./$cache_file;;
- esac
- fi
-else
- { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
- eval ac_new_val="\$ac_env_${ac_var}_value"
- case $ac_old_set,$ac_new_set in
- set,)
- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rt_version_major=3
-
-rt_version_minor=4
-
-rt_version_patch=4
-
-test "x$rt_version_major" = 'x' && rt_version_major=0
-test "x$rt_version_minor" = 'x' && rt_version_minor=0
-test "x$rt_version_patch" = 'x' && rt_version_patch=0
-
-ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f $ac_dir/shtool; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
- { (exit 1); exit 1; }; }
-fi
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"
-ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- done
- done
- ;;
-esac
-done
-
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL=$ac_install_sh
- fi
-fi
-echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-
-# Extract the first word of "perl", so it can be a program name with args.
-set dummy perl; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_PERL+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- case $PERL in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="not found"
- ;;
-esac
-fi
-PERL=$ac_cv_path_PERL
-
-if test -n "$PERL"; then
- echo "$as_me:$LINENO: result: $PERL" >&5
-echo "${ECHO_T}$PERL" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-if test "$PERL" = 'not found'; then
- { { echo "$as_me:$LINENO: error: cannot use $PACKAGE_NAME without perl" >&5
-echo "$as_me: error: cannot use $PACKAGE_NAME without perl" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-
-
-# Check whether --with-speedycgi or --without-speedycgi was given.
-if test "${with_speedycgi+set}" = set; then
- withval="$with_speedycgi"
- SPEEDY_BIN=$withval
-else
- SPEEDY_BIN=/usr/local/bin/speedy
-fi;
-
-
-
-
-
-# Check whether --enable-layout or --disable-layout was given.
-if test "${enable_layout+set}" = set; then
- enableval="$enable_layout"
- LAYOUT=$enableval
-fi;
-
-if test "x$LAYOUT" = "x"; then
- LAYOUT="RT3"
-fi
-
- if test ! -f $srcdir/config.layout; then
- { echo "$as_me:$LINENO: WARNING: Layout file $srcdir/config.layout not found" >&5
-echo "$as_me: WARNING: Layout file $srcdir/config.layout not found" >&2;}
- rt_layout_name=no
- else
- pldconf=./config.pld
- $PERL -0777 -p -e "\$layout = '$LAYOUT';" -e '
- s/.*<Layout\s+$layout>//gims;
- s/\<\/Layout\>.*//s;
- s/^#.*$//m;
- s/^\s+//gim;
- s/\s+$/\n/gim;
- s/\+$/\/rt3/gim;
- # m4 will not let us just use $srcdir/config.layout, we need $1
- s/^\s*((?:bin|sbin|libexec|data|sysconf|sharedstate|localstate|lib|include|oldinclude|info|man)dir)\s*:\s*(.*)$/$1=$2/gim;
- s/^\s*(.*?)\s*:\s*(.*)$/\(test "x\$$1" = "xNONE" || test "x\$$1" = "x") && $1=$2/gim;
- ' < $srcdir/config.layout > $pldconf
-
- if test -s $pldconf; then
- rt_layout_name=$LAYOUT
- . $pldconf
-
- for var in prefix exec_prefix bindir sbindir \
- sysconfdir mandir libdir datadir htmldir \
- localstatedir logfiledir masonstatedir \
- sessionstatedir customdir custometcdir customhtmldir \
- customlexdir customlibdir manualdir; do
- eval "val=\"\$$var\""
- val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
- val=`echo $val |
- sed -e 's:[\$]\([a-z_]*\):$\1:g'`
- eval "$var='$val'"
- done
-
- else
- rt_layout_name=no
- fi
- #rm $pldconf
- fi
-
-
- ap_last=''
- ap_cur='$prefix'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_prefix="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$exec_prefix'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_exec_prefix="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$bindir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_bindir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sbindir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sbindir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sysconfdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sysconfdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$mandir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_mandir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$libdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_libdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$datadir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_datadir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$htmldir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_htmldir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$manualdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_manualdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$localstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_localstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$logfiledir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_logfiledir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$masonstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_masonstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$sessionstatedir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_sessionstatedir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$custometcdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_custometcdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customhtmldir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customhtmldir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customlexdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customlexdir="${ap_cur}"
-
-
-
-
-
-
- ap_last=''
- ap_cur='$customlibdir'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- exp_customlibdir="${ap_cur}"
-
-
-
-
-
-echo "$as_me:$LINENO: checking for chosen layout" >&5
-echo $ECHO_N "checking for chosen layout... $ECHO_C" >&6
-if test "x$rt_layout_name" = "xno"; then
- if test "x$LAYOUT" = "xno"; then
- echo "$as_me:$LINENO: result: none" >&5
-echo "${ECHO_T}none" >&6
- else
- echo "$as_me:$LINENO: result: $LAYOUT" >&5
-echo "${ECHO_T}$LAYOUT" >&6
- fi
- { { echo "$as_me:$LINENO: error: a valid layout must be specified (or the default used)" >&5
-echo "$as_me: error: a valid layout must be specified (or the default used)" >&2;}
- { (exit 1); exit 1; }; }
-else
-
- echo "$as_me:$LINENO: result: $rt_layout_name" >&5
-echo "${ECHO_T}$rt_layout_name" >&6
-fi
-
-
-
-# ACRT_USER_EXISTS( users, variable, default )
-# - users is a list of users [www apache www-docs]
-# from highest to lowest priority to high priority (i.e. first match)
-# - variable is what you set with the result
-#
-
-
-
-
-
-# Check whether --with-bin-owner or --without-bin-owner was given.
-if test "${with_bin_owner+set}" = set; then
- withval="$with_bin_owner"
- BIN_OWNER=$withval
-else
- BIN_OWNER=root
-fi;
-
-
-
-# Check whether --with-libs-owner or --without-libs-owner was given.
-if test "${with_libs_owner+set}" = set; then
- withval="$with_libs_owner"
- LIBS_OWNER=$withval
-else
- LIBS_OWNER=root
-fi;
-
-
-
-# Check whether --with-libs-group or --without-libs-group was given.
-if test "${with_libs_group+set}" = set; then
- withval="$with_libs_group"
- LIBS_GROUP=$withval
-else
- LIBS_GROUP=bin
-fi;
-
-
-
-# Check whether --with-db-type or --without-db-type was given.
-if test "${with_db_type+set}" = set; then
- withval="$with_db_type"
- DB_TYPE=$withval
-else
- DB_TYPE=mysql
-fi;
-if test "$DB_TYPE" != 'mysql' -a "$DB_TYPE" != 'Pg' -a "$DB_TYPE" != 'SQLite' -a "$DB_TYPE" != 'Oracle' -a "$DB_TYPE" != 'Informix' -a "$DB_TYPE" != 'Sybase' ; then
- { { echo "$as_me:$LINENO: error: Only Oracle, Informix, Pg, mysql and SQLite are valid db types" >&5
-echo "$as_me: error: Only Oracle, Informix, Pg, mysql and SQLite are valid db types" >&2;}
- { (exit 1); exit 1; }; }
-fi
-
-
-if test "$DB_TYPE" = 'Oracle'; then
- test "x$ORACLE_HOME" = 'x' && { { echo "$as_me:$LINENO: error: Please declare the ORACLE_HOME environment variable" >&5
-echo "$as_me: error: Please declare the ORACLE_HOME environment variable" >&2;}
- { (exit 1); exit 1; }; }
- DATABASE_ENV_PREF="\$ENV{'ORACLE_HOME'} = '$ORACLE_HOME';"
-fi
-
-if test "$DB_TYPE" = 'Sybase'; then
- test "x$SYBASE" = 'x' && { { echo "$as_me:$LINENO: error: Please declare the SYBASE_HOME environment variable" >&5
-echo "$as_me: error: Please declare the SYBASE_HOME environment variable" >&2;}
- { (exit 1); exit 1; }; }
- DATABASE_ENV_PREF="\$ENV{'SYBASE'} = '$SYBASE';"
-fi
-
-
-
-# Check whether --with-db-host or --without-db-host was given.
-if test "${with_db_host+set}" = set; then
- withval="$with_db_host"
- DB_HOST=$withval
-else
- DB_HOST=localhost
-fi;
-
-
-
-# Check whether --with-db-port or --without-db-port was given.
-if test "${with_db_port+set}" = set; then
- withval="$with_db_port"
- DB_PORT=$withval
-else
- DB_PORT=
-fi;
-
-
-
-# Check whether --with-db-rt-host or --without-db-rt-host was given.
-if test "${with_db_rt_host+set}" = set; then
- withval="$with_db_rt_host"
- DB_RT_HOST=$withval
-else
- DB_RT_HOST=localhost
-fi;
-
-
-
-# Check whether --with-db-dba or --without-db-dba was given.
-if test "${with_db_dba+set}" = set; then
- withval="$with_db_dba"
- DB_DBA=$withval
-else
- DB_DBA=root
-fi;
-
-
-
-# Check whether --with-db-database or --without-db-database was given.
-if test "${with_db_database+set}" = set; then
- withval="$with_db_database"
- DB_DATABASE=$withval
-else
- DB_DATABASE=rt3
-fi;
-
-
-
-# Check whether --with-db-rt-user or --without-db-rt-user was given.
-if test "${with_db_rt_user+set}" = set; then
- withval="$with_db_rt_user"
- DB_RT_USER=$withval
-else
- DB_RT_USER=rt_user
-fi;
-
-
-
-# Check whether --with-db-rt-pass or --without-db-rt-pass was given.
-if test "${with_db_rt_pass+set}" = set; then
- withval="$with_db_rt_pass"
- DB_RT_PASS=$withval
-else
- DB_RT_PASS=rt_pass
-fi;
-
-
-
-# Check whether --with-web-user or --without-web-user was given.
-if test "${with_web_user+set}" = set; then
- withval="$with_web_user"
- WEB_USER=$withval
-else
-
- WEB_USER=www
- for x in www www-data apache httpd nobody; do
- echo "$as_me:$LINENO: checking if user $x exists" >&5
-echo $ECHO_N "checking if user $x exists... $ECHO_C" >&6
- if $PERL -e"exit( defined getpwnam('$x') ? 0 : 1)" ; then
- echo "$as_me:$LINENO: result: found" >&5
-echo "${ECHO_T}found" >&6; WEB_USER=$x ; break
-else
- echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6
-fi
-
- done
-
-
-fi;
-
-
-
-# Check whether --with-web-group or --without-web-group was given.
-if test "${with_web_group+set}" = set; then
- withval="$with_web_group"
- WEB_GROUP=$withval
-else
-
- WEB_GROUP=www
- for x in www www-data apache httpd nogroup nobody; do
- echo "$as_me:$LINENO: checking if group $x exists" >&5
-echo $ECHO_N "checking if group $x exists... $ECHO_C" >&6
- if $PERL -e"exit( defined getgrnam('$x') ? 0 : 1)" ; then
- echo "$as_me:$LINENO: result: found" >&5
-echo "${ECHO_T}found" >&6; WEB_GROUP=$x ; break
-else
- echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6
-fi
-
- done
-
-fi;
-
-
-
-# Check whether --with-rt-group or --without-rt-group was given.
-if test "${with_rt_group+set}" = set; then
- withval="$with_rt_group"
- RTGROUP=$withval
-else
-
- RTGROUP=rt
- for x in rt3 rt $WEB_GROUP; do
- echo "$as_me:$LINENO: checking if group $x exists" >&5
-echo $ECHO_N "checking if group $x exists... $ECHO_C" >&6
- if $PERL -e"exit( defined getgrnam('$x') ? 0 : 1)" ; then
- echo "$as_me:$LINENO: result: found" >&5
-echo "${ECHO_T}found" >&6; RTGROUP=$x ; break
-else
- echo "$as_me:$LINENO: result: not found" >&5
-echo "${ECHO_T}not found" >&6
-fi
-
- done
-
-fi;
-
-
-my_group=$(groups|cut -f1 -d' ')
-my_user=${USER:-$LOGNAME}
-
-# Check whether --with-my-user-group or --without-my-user-group was given.
-if test "${with_my_user_group+set}" = set; then
- withval="$with_my_user_group"
- RTGROUP=$my_group
- BIN_OWNER=$my_user
- LIBS_OWNER=$my_user
- LIBS_GROUP=$my_group
- WEB_USER=$my_user
- WEB_GROUP=$my_group
-fi;
-
-
-
-
-# Check whether --with-apachectl or --without-apachectl was given.
-if test "${with_apachectl+set}" = set; then
- withval="$with_apachectl"
- APACHECTL=$withval
-else
- APACHECTL=`which apachectl`
-fi;
-
-
-
-# Check whether --with-devel-mode or --without-devel-mode was given.
-if test "${with_devel_mode+set}" = set; then
- withval="$with_devel_mode"
- RT_DEVEL_MODE="1"
-else
- RT_DEVEL_MODE="0"
-fi;
-
-
-RT_VERSION_MAJOR=${rt_version_major}
-
-RT_VERSION_MINOR=${rt_version_minor}
-
-RT_VERSION_PATCH=${rt_version_patch}
-
-
-RT_PATH=${exp_prefix}
-
-RT_DOC_PATH=${exp_manualdir}
-
-RT_LOCAL_PATH=${exp_customdir}
-
-RT_LIB_PATH=${exp_libdir}
-
-RT_ETC_PATH=${exp_sysconfdir}
-
-CONFIG_FILE_PATH=${exp_sysconfdir}
-
-RT_BIN_PATH=${exp_bindir}
-
-RT_SBIN_PATH=${exp_sbindir}
-
-RT_VAR_PATH=${exp_localstatedir}
-
-RT_MAN_PATH=${exp_mandir}
-
-MASON_DATA_PATH=${exp_masonstatedir}
-
-MASON_SESSION_PATH=${exp_sessionstatedir}
-
-MASON_HTML_PATH=${exp_htmldir}
-
-LOCAL_ETC_PATH=${exp_custometcdir}
-
-MASON_LOCAL_HTML_PATH=${exp_customhtmldir}
-
-LOCAL_LEXICON_PATH=${exp_customlexdir}
-
-LOCAL_LIB_PATH=${exp_customlibdir}
-
-DESTDIR=${exp_prefix}
-
-RT_LOG_PATH=${exp_logfiledir}
-
-
-
- ac_config_files="$ac_config_files sbin/rt-dump-database sbin/rt-setup-database sbin/rt-test-dependencies bin/mason_handler.fcgi bin/mason_handler.scgi bin/standalone_httpd bin/rt-crontool bin/rt-mailgate bin/rt"
-
-
- ac_config_files="$ac_config_files Makefile etc/RT_Config.pm lib/RT.pm bin/mason_handler.svc bin/webmux.pl"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-{
- (set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-} |
- sed '
- t clear
- : clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- : end' >>confcache
-if diff $cache_file confcache >/dev/null 2>&1; then :; else
- if test -w $cache_file; then
- test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
- cat confcache >$cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}'
-fi
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then we branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-cat >confdef2opt.sed <<\_ACEOF
-t clear
-: clear
-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
-t quote
-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
-t quote
-d
-: quote
-s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
-s,\[,\\&,g
-s,\],\\&,g
-s,\$,$$,g
-p
-_ACEOF
-# We use echo to avoid assuming a particular line-breaking character.
-# The extra dot is to prevent the shell from consuming trailing
-# line-breaks from the sub-command output. A line-break within
-# single-quotes doesn't work because, if this script is created in a
-# platform that uses two characters for line-breaks (e.g., DOS), tr
-# would break.
-ac_LF_and_DOT=`echo; echo .`
-DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
-rm -f confdef2opt.sed
-
-
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_i=`echo "$ac_i" |
- sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
- # 2. Add them.
- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-
-: ${CONFIG_STATUS=./config.status}
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
-fi
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
-
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
- fi
-done
-
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
-
-# PATH needs CR, and LINENO needs CR and PATH.
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
-esac
-
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
- as_ln_s='ln -s'
- fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
-else
- as_ln_s='cp -p'
-fi
-rm -f conf$$ conf$$.exe conf$$.file
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_executable_p="test -f"
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
-exec 6>&1
-
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling. Logging --version etc. is OK.
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by RT $as_me 3.4.4, which was
-generated by GNU Autoconf 2.59. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
-_ACEOF
-
-# Files that config.status was made for.
-if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-fi
-
-if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
-
-Usage: $0 [OPTIONS] [FILE]...
-
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Report bugs to <bug-autoconf@gnu.org>."
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-ac_cs_version="\\
-RT config.status 3.4.4
-configured by $0, generated by GNU Autoconf 2.59,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-
-Copyright (C) 2003 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
-INSTALL="$INSTALL"
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=*)
- ac_option=`expr "x$1" : 'x\([^=]*\)='`
- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- -*)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- *) # This is not an option, so the user has probably given explicit
- # arguments.
- ac_option=$1
- ac_need_defaults=false;;
- esac
-
- case $ac_option in
- # Handling of the options.
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --vers* | -V )
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
- { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; };;
- --help | --hel | -h )
- echo "$ac_cs_usage"; exit 0 ;;
- --debug | --d* | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- CONFIG_FILES="$CONFIG_FILES $ac_optarg"
- ac_need_defaults=false;;
- --header | --heade | --head | --hea )
- $ac_shift
- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
- ac_need_defaults=false;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; } ;;
-
- *) ac_config_targets="$ac_config_targets $1" ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
-if \$ac_cs_recheck; then
- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-fi
-
-_ACEOF
-
-
-
-
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_config_target in $ac_config_targets
-do
- case "$ac_config_target" in
- # Handling of arguments.
- "sbin/rt-dump-database" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-dump-database" ;;
- "sbin/rt-setup-database" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-setup-database" ;;
- "sbin/rt-test-dependencies" ) CONFIG_FILES="$CONFIG_FILES sbin/rt-test-dependencies" ;;
- "bin/mason_handler.fcgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.fcgi" ;;
- "bin/mason_handler.scgi" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.scgi" ;;
- "bin/standalone_httpd" ) CONFIG_FILES="$CONFIG_FILES bin/standalone_httpd" ;;
- "bin/rt-crontool" ) CONFIG_FILES="$CONFIG_FILES bin/rt-crontool" ;;
- "bin/rt-mailgate" ) CONFIG_FILES="$CONFIG_FILES bin/rt-mailgate" ;;
- "bin/rt" ) CONFIG_FILES="$CONFIG_FILES bin/rt" ;;
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "etc/RT_Config.pm" ) CONFIG_FILES="$CONFIG_FILES etc/RT_Config.pm" ;;
- "lib/RT.pm" ) CONFIG_FILES="$CONFIG_FILES lib/RT.pm" ;;
- "bin/mason_handler.svc" ) CONFIG_FILES="$CONFIG_FILES bin/mason_handler.svc" ;;
- "bin/webmux.pl" ) CONFIG_FILES="$CONFIG_FILES bin/webmux.pl" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
- esac
-done
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason to put it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Create a temporary directory, and hook for its removal unless debugging.
-$debug ||
-{
- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
-}
-
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
-} ||
-{
- tmp=./confstat$$-$RANDOM
- (umask 077 && mkdir $tmp)
-} ||
-{
- echo "$me: cannot create a temporary directory in ." >&2
- { (exit 1); exit 1; }
-}
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<_ACEOF
-
-#
-# CONFIG_FILES section.
-#
-
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "\$CONFIG_FILES"; then
- # Protect against being on the right side of a sed subst in config.status.
- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-s,@SHELL@,$SHELL,;t t
-s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
-s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
-s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-s,@exec_prefix@,$exec_prefix,;t t
-s,@prefix@,$prefix,;t t
-s,@program_transform_name@,$program_transform_name,;t t
-s,@bindir@,$bindir,;t t
-s,@sbindir@,$sbindir,;t t
-s,@libexecdir@,$libexecdir,;t t
-s,@datadir@,$datadir,;t t
-s,@sysconfdir@,$sysconfdir,;t t
-s,@sharedstatedir@,$sharedstatedir,;t t
-s,@localstatedir@,$localstatedir,;t t
-s,@libdir@,$libdir,;t t
-s,@includedir@,$includedir,;t t
-s,@oldincludedir@,$oldincludedir,;t t
-s,@infodir@,$infodir,;t t
-s,@mandir@,$mandir,;t t
-s,@build_alias@,$build_alias,;t t
-s,@host_alias@,$host_alias,;t t
-s,@target_alias@,$target_alias,;t t
-s,@DEFS@,$DEFS,;t t
-s,@ECHO_C@,$ECHO_C,;t t
-s,@ECHO_N@,$ECHO_N,;t t
-s,@ECHO_T@,$ECHO_T,;t t
-s,@LIBS@,$LIBS,;t t
-s,@rt_version_major@,$rt_version_major,;t t
-s,@rt_version_minor@,$rt_version_minor,;t t
-s,@rt_version_patch@,$rt_version_patch,;t t
-s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
-s,@INSTALL_DATA@,$INSTALL_DATA,;t t
-s,@PERL@,$PERL,;t t
-s,@SPEEDY_BIN@,$SPEEDY_BIN,;t t
-s,@exp_prefix@,$exp_prefix,;t t
-s,@exp_exec_prefix@,$exp_exec_prefix,;t t
-s,@exp_bindir@,$exp_bindir,;t t
-s,@exp_sbindir@,$exp_sbindir,;t t
-s,@exp_sysconfdir@,$exp_sysconfdir,;t t
-s,@exp_mandir@,$exp_mandir,;t t
-s,@exp_libdir@,$exp_libdir,;t t
-s,@exp_datadir@,$exp_datadir,;t t
-s,@htmldir@,$htmldir,;t t
-s,@exp_htmldir@,$exp_htmldir,;t t
-s,@manualdir@,$manualdir,;t t
-s,@exp_manualdir@,$exp_manualdir,;t t
-s,@exp_localstatedir@,$exp_localstatedir,;t t
-s,@logfiledir@,$logfiledir,;t t
-s,@exp_logfiledir@,$exp_logfiledir,;t t
-s,@masonstatedir@,$masonstatedir,;t t
-s,@exp_masonstatedir@,$exp_masonstatedir,;t t
-s,@sessionstatedir@,$sessionstatedir,;t t
-s,@exp_sessionstatedir@,$exp_sessionstatedir,;t t
-s,@customdir@,$customdir,;t t
-s,@exp_customdir@,$exp_customdir,;t t
-s,@custometcdir@,$custometcdir,;t t
-s,@exp_custometcdir@,$exp_custometcdir,;t t
-s,@customhtmldir@,$customhtmldir,;t t
-s,@exp_customhtmldir@,$exp_customhtmldir,;t t
-s,@customlexdir@,$customlexdir,;t t
-s,@exp_customlexdir@,$exp_customlexdir,;t t
-s,@customlibdir@,$customlibdir,;t t
-s,@exp_customlibdir@,$exp_customlibdir,;t t
-s,@rt_layout_name@,$rt_layout_name,;t t
-s,@BIN_OWNER@,$BIN_OWNER,;t t
-s,@LIBS_OWNER@,$LIBS_OWNER,;t t
-s,@LIBS_GROUP@,$LIBS_GROUP,;t t
-s,@DB_TYPE@,$DB_TYPE,;t t
-s,@DATABASE_ENV_PREF@,$DATABASE_ENV_PREF,;t t
-s,@DB_HOST@,$DB_HOST,;t t
-s,@DB_PORT@,$DB_PORT,;t t
-s,@DB_RT_HOST@,$DB_RT_HOST,;t t
-s,@DB_DBA@,$DB_DBA,;t t
-s,@DB_DATABASE@,$DB_DATABASE,;t t
-s,@DB_RT_USER@,$DB_RT_USER,;t t
-s,@DB_RT_PASS@,$DB_RT_PASS,;t t
-s,@WEB_USER@,$WEB_USER,;t t
-s,@WEB_GROUP@,$WEB_GROUP,;t t
-s,@RTGROUP@,$RTGROUP,;t t
-s,@APACHECTL@,$APACHECTL,;t t
-s,@RT_DEVEL_MODE@,$RT_DEVEL_MODE,;t t
-s,@RT_VERSION_MAJOR@,$RT_VERSION_MAJOR,;t t
-s,@RT_VERSION_MINOR@,$RT_VERSION_MINOR,;t t
-s,@RT_VERSION_PATCH@,$RT_VERSION_PATCH,;t t
-s,@RT_PATH@,$RT_PATH,;t t
-s,@RT_DOC_PATH@,$RT_DOC_PATH,;t t
-s,@RT_LOCAL_PATH@,$RT_LOCAL_PATH,;t t
-s,@RT_LIB_PATH@,$RT_LIB_PATH,;t t
-s,@RT_ETC_PATH@,$RT_ETC_PATH,;t t
-s,@CONFIG_FILE_PATH@,$CONFIG_FILE_PATH,;t t
-s,@RT_BIN_PATH@,$RT_BIN_PATH,;t t
-s,@RT_SBIN_PATH@,$RT_SBIN_PATH,;t t
-s,@RT_VAR_PATH@,$RT_VAR_PATH,;t t
-s,@RT_MAN_PATH@,$RT_MAN_PATH,;t t
-s,@MASON_DATA_PATH@,$MASON_DATA_PATH,;t t
-s,@MASON_SESSION_PATH@,$MASON_SESSION_PATH,;t t
-s,@MASON_HTML_PATH@,$MASON_HTML_PATH,;t t
-s,@LOCAL_ETC_PATH@,$LOCAL_ETC_PATH,;t t
-s,@MASON_LOCAL_HTML_PATH@,$MASON_LOCAL_HTML_PATH,;t t
-s,@LOCAL_LEXICON_PATH@,$LOCAL_LEXICON_PATH,;t t
-s,@LOCAL_LIB_PATH@,$LOCAL_LIB_PATH,;t t
-s,@DESTDIR@,$DESTDIR,;t t
-s,@RT_LOG_PATH@,$RT_LOG_PATH,;t t
-s,@LIBOBJS@,$LIBOBJS,;t t
-s,@LTLIBOBJS@,$LTLIBOBJS,;t t
-CEOF
-
-_ACEOF
-
- cat >>$CONFIG_STATUS <<\_ACEOF
- # Split the substitutions into bite-sized pieces for seds with
- # small command number limits, like on Digital OSF/1 and HP-UX.
- ac_max_sed_lines=48
- ac_sed_frag=1 # Number of current file.
- ac_beg=1 # First line for current file.
- ac_end=$ac_max_sed_lines # Line after last line for current file.
- ac_more_lines=:
- ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- else
- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- fi
- if test ! -s $tmp/subs.frag; then
- ac_more_lines=false
- else
- # The purpose of the label and of the branching condition is to
- # speed up the sed processing (if there are no `@' at all, there
- # is no need to browse any of the substitutions).
- # These are the two extra sed commands mentioned above.
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
- fi
- done
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
- fi
-fi # test -n "$CONFIG_FILES"
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p "$ac_dir"
- else
- as_dir="$ac_dir"
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }; }
-
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
-
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
- esac
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- configure_input=
- else
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
- sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo "$f";;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo "$f"
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo "$srcdir/$f"
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s,@configure_input@,$configure_input,;t t
-s,@srcdir@,$ac_srcdir,;t t
-s,@abs_srcdir@,$ac_abs_srcdir,;t t
-s,@top_srcdir@,$ac_top_srcdir,;t t
-s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s,@builddir@,$ac_builddir,;t t
-s,@abs_builddir@,$ac_abs_builddir,;t t
-s,@top_builddir@,$ac_top_builddir,;t t
-s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
-s,@INSTALL@,$ac_INSTALL,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
- mv $tmp/out $ac_file
- else
- cat $tmp/out
- rm -f $tmp/out
- fi
-
- # Run the commands associated with the file.
- case $ac_file in
- sbin/rt-dump-database ) chmod ug+x $ac_file
- ;;
- sbin/rt-setup-database ) chmod ug+x $ac_file
- ;;
- sbin/rt-test-dependencies ) chmod ug+x $ac_file
- ;;
- bin/mason_handler.fcgi ) chmod ug+x $ac_file
- ;;
- bin/mason_handler.scgi ) chmod ug+x $ac_file
- ;;
- bin/standalone_httpd ) chmod ug+x $ac_file
- ;;
- bin/rt-crontool ) chmod ug+x $ac_file
- ;;
- bin/rt-mailgate ) chmod ug+x $ac_file
- ;;
- bin/rt ) chmod ug+x $ac_file
- ;;
- esac
-done
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-{ (exit 0); exit 0; }
-_ACEOF
-chmod +x $CONFIG_STATUS
-ac_clean_files=$ac_clean_files_save
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
-fi
-
diff --git a/rt/configure.ac b/rt/configure.ac
deleted file mode 100644
index 1d0b95f..0000000
--- a/rt/configure.ac
+++ /dev/null
@@ -1,289 +0,0 @@
-autoconf; exec ./configure $@
-dnl
-dnl Process this file with autoconf to produce a configure script
-dnl
-dnl Embed in generated ./configure script the following CVS info:
-AC_REVISION($Revision: 1.1.1.5 $)dnl
-
-dnl Setup autoconf
-AC_PREREQ(2.53)
-AC_INIT(RT, [3.4.4], [rt-bugs@fsck.com])
-AC_CONFIG_SRCDIR([lib/RT.pm.in])
-
-dnl Extract RT version number components
-AC_SUBST([rt_version_major],
- m4_bregexp(AC_PACKAGE_VERSION,[^\(\w+\)\.\(\w+\)\(\.\(\w+\)\)?],[\1]))
-AC_SUBST([rt_version_minor],
- m4_bregexp(AC_PACKAGE_VERSION,[^\(\w+\)\.\(\w+\)\(\.\(\w+\)\)?],[\2]))
-AC_SUBST([rt_version_patch],
- m4_bregexp(AC_PACKAGE_VERSION,[^\(\w+\)\.\(\w+\)\(\.\(\w+\)\)?],[\4]))
-test "x$rt_version_major" = 'x' && rt_version_major=0
-test "x$rt_version_minor" = 'x' && rt_version_minor=0
-test "x$rt_version_patch" = 'x' && rt_version_patch=0
-
-dnl Check for programs
-AC_PROG_INSTALL
-AC_ARG_VAR([PERL],[Perl interpreter command])
-AC_PATH_PROG([PERL], [perl], [not found])
-if test "$PERL" = 'not found'; then
- AC_MSG_ERROR([cannot use $PACKAGE_NAME without perl])
-fi
-
-
-dnl SPEED_BIN
-AC_ARG_WITH(speedycgi,
- AC_HELP_STRING([--with-speedycgi=/path/to/speedy],
- [path to your speedycgi binary, if it exists]),
- SPEEDY_BIN=$withval,
- SPEEDY_BIN=/usr/local/bin/speedy)
-AC_SUBST(SPEEDY_BIN)
-
-
-dnl Defaults paths for installation
-AC_PREFIX_DEFAULT([/opt/rt3])
-RT_ENABLE_LAYOUT
-
-
-# ACRT_USER_EXISTS( users, variable, default )
-# - users is a list of users [www apache www-docs]
-# from highest to lowest priority to high priority (i.e. first match)
-# - variable is what you set with the result
-#
-
-AC_DEFUN([ACRT_USER_GUESS],
- [
- $2=$3
- for x in $1; do
- AC_MSG_CHECKING([if user $x exists])
- AS_IF([ $PERL -e"exit( defined getpwnam('$x') ? 0 : 1)" ],
- [ AC_MSG_RESULT([found]); $2=$x ; break],
- [ AC_MSG_RESULT([not found]) ])
- done
- ])
-AC_DEFUN([ACRT_GROUP_GUESS],
- [
- $2=$3
- for x in $1; do
- AC_MSG_CHECKING([if group $x exists])
- AS_IF([ $PERL -e"exit( defined getgrnam('$x') ? 0 : 1)" ],
- [ AC_MSG_RESULT([found]); $2=$x ; break],
- [ AC_MSG_RESULT([not found]) ])
- done
- ])
-
-dnl BIN_OWNER
-AC_ARG_WITH(bin-owner,
- AC_HELP_STRING([--with-bin-owner=OWNER],
- [user that will own RT binaries (default root)]),
- BIN_OWNER=$withval,
- BIN_OWNER=root)
-AC_SUBST(BIN_OWNER)
-
-dnl LIBS_OWNER
-AC_ARG_WITH(libs-owner,
- AC_HELP_STRING([--with-libs-owner=OWNER],
- [user that will own RT libraries (default root)]),
- LIBS_OWNER=$withval,
- LIBS_OWNER=root)
-AC_SUBST(LIBS_OWNER)
-
-dnl LIBS_GROUP
-AC_ARG_WITH(libs-group,
- AC_HELP_STRING([--with-libs-group=GROUP],
- [group that will own RT binaries (default bin)]),
- LIBS_GROUP=$withval,
- LIBS_GROUP=bin)
-AC_SUBST(LIBS_GROUP)
-
-dnl DB_TYPE
-AC_ARG_WITH(db-type,
- AC_HELP_STRING([--with-db-type=TYPE],
- [sort of database RT will use (default: mysql) (mysql, Pg, Oracle, Informix and SQLite are valid)]),
- DB_TYPE=$withval,
- DB_TYPE=mysql)
-if test "$DB_TYPE" != 'mysql' -a "$DB_TYPE" != 'Pg' -a "$DB_TYPE" != 'SQLite' -a "$DB_TYPE" != 'Oracle' -a "$DB_TYPE" != 'Informix' -a "$DB_TYPE" != 'Sybase' ; then
- AC_MSG_ERROR([Only Oracle, Informix, Pg, mysql and SQLite are valid db types])
-fi
-AC_SUBST(DB_TYPE)
-
-dnl DATABASE_ENV_PREF
-if test "$DB_TYPE" = 'Oracle'; then
- test "x$ORACLE_HOME" = 'x' && AC_MSG_ERROR([Please declare the ORACLE_HOME environment variable])
- DATABASE_ENV_PREF="\$ENV{'ORACLE_HOME'} = '$ORACLE_HOME';"
-fi
-
-dnl DATABASE_ENV_PREF
-if test "$DB_TYPE" = 'Sybase'; then
- test "x$SYBASE" = 'x' && AC_MSG_ERROR([Please declare the SYBASE_HOME environment variable])
- DATABASE_ENV_PREF="\$ENV{'SYBASE'} = '$SYBASE';"
-fi
-AC_SUBST(DATABASE_ENV_PREF)
-
-dnl DB_HOST
-AC_ARG_WITH(db-host,
- AC_HELP_STRING([--with-db-host=HOSTNAME],
- [FQDN of database server (default: localhost)]),
- DB_HOST=$withval,
- DB_HOST=localhost)
-AC_SUBST(DB_HOST)
-
-dnl DB_PORT
-AC_ARG_WITH(db-port,
- AC_HELP_STRING([--with-db-port=PORT],
- [port on which the database listens on]),
- DB_PORT=$withval,
- DB_PORT=)
-AC_SUBST(DB_PORT)
-
-dnl DB_RT_HOST
-AC_ARG_WITH(db-rt-host,
- AC_HELP_STRING([--with-db-rt-host=HOSTNAME],
- [FQDN of RT server which talks to the database server (default: localhost)]),
- DB_RT_HOST=$withval,
- DB_RT_HOST=localhost)
-AC_SUBST(DB_RT_HOST)
-
-dnl DB_DATABASE_ADMIN
-AC_ARG_WITH(db-dba,
- AC_HELP_STRING([--with-db-dba=DBA],
- [name of database administrator (default: root)]),
- DB_DBA=$withval,
- DB_DBA=root)
-AC_SUBST(DB_DBA)
-
-dnl DB_DATABASE
-AC_ARG_WITH(db-database,
- AC_HELP_STRING([--with-db-database=DBNAME],
- [name of the database to use (default: rt3)]),
- DB_DATABASE=$withval,
- DB_DATABASE=rt3)
-AC_SUBST(DB_DATABASE)
-
-dnl DB_RT_USER
-AC_ARG_WITH(db-rt-user,
- AC_HELP_STRING([--with-db-rt-user=DBUSER],
- [name of database user (default: rt_user)]),
- DB_RT_USER=$withval,
- DB_RT_USER=rt_user)
-AC_SUBST(DB_RT_USER)
-
-dnl DB_RT_PASS
-AC_ARG_WITH(db-rt-pass,
- AC_HELP_STRING([--with-db-rt-pass=PASSWORD],
- [password for database user (default: rt_pass)]),
- DB_RT_PASS=$withval,
- DB_RT_PASS=rt_pass)
-AC_SUBST(DB_RT_PASS)
-
-dnl WEB_USER
-AC_ARG_WITH(web-user,
- AC_HELP_STRING([--with-web-user=USER],
- [user the web server runs as (default: www)]),
- WEB_USER=$withval,
- ACRT_USER_GUESS([www www-data apache httpd nobody],[WEB_USER],[www])
-)
-AC_SUBST(WEB_USER)
-
-dnl WEB_GROUP
-AC_ARG_WITH(web-group,
- AC_HELP_STRING([--with-web-group=GROUP],
- [group the web server runs as (default: www)]),
- WEB_GROUP=$withval,
- ACRT_GROUP_GUESS([www www-data apache httpd nogroup nobody],[WEB_GROUP], [www]))
-AC_SUBST(WEB_GROUP)
-
-dnl RTGROUP
-AC_ARG_WITH(rt-group,
- AC_HELP_STRING([--with-rt-group=GROUP],
- [group to own all files (default: rt)]),
- RTGROUP=$withval,
- ACRT_GROUP_GUESS([rt3 rt $WEB_GROUP],[RTGROUP], [rt]))
-AC_SUBST(RTGROUP)
-
-dnl INSTALL AS ME
-my_group=$(groups|cut -f1 -d' ')
-my_user=${USER:-$LOGNAME}
-AC_ARG_WITH(my-user-group,
- AC_HELP_STRING([--with-my-user-group],
- [set all users and groups to current user/group]),
- RTGROUP=$my_group
- BIN_OWNER=$my_user
- LIBS_OWNER=$my_user
- LIBS_GROUP=$my_group
- WEB_USER=$my_user
- WEB_GROUP=$my_group)
-
-
-
-dnl Set the value of apachectl
-AC_ARG_WITH(apachectl,
- AC_HELP_STRING([--with-apachectl],
- [instruct RT where to find your apachectl]),
-
- APACHECTL=$withval,
- APACHECTL=`which apachectl`)
-AC_SUBST(APACHECTL)
-
-dnl RT's "maintainer mode"
-AC_ARG_WITH(devel-mode,
- AC_HELP_STRING([--with-devel-mode],
- [Turn on development aids that might hurt you in production]),
-
- RT_DEVEL_MODE="1",
- RT_DEVEL_MODE="0")
-AC_SUBST(RT_DEVEL_MODE)
-dnl This section maps the variable names this script 'natively' generates
-dnl to their existing names. They should be removed from here as the .in
-dnl files are changed to use the new names.
-
-dnl version numbers
-AC_SUBST(RT_VERSION_MAJOR, ${rt_version_major})
-AC_SUBST(RT_VERSION_MINOR, ${rt_version_minor})
-AC_SUBST(RT_VERSION_PATCH, ${rt_version_patch})
-
-dnl layout paths
-AC_SUBST([RT_PATH], ${exp_prefix})
-AC_SUBST([RT_DOC_PATH], ${exp_manualdir})
-AC_SUBST([RT_LOCAL_PATH], ${exp_customdir})
-AC_SUBST([RT_LIB_PATH], ${exp_libdir})
-AC_SUBST([RT_ETC_PATH], ${exp_sysconfdir})
-AC_SUBST([CONFIG_FILE_PATH], ${exp_sysconfdir})
-AC_SUBST([RT_BIN_PATH], ${exp_bindir})
-AC_SUBST([RT_SBIN_PATH], ${exp_sbindir})
-AC_SUBST([RT_VAR_PATH], ${exp_localstatedir})
-AC_SUBST([RT_MAN_PATH], ${exp_mandir})
-AC_SUBST([MASON_DATA_PATH], ${exp_masonstatedir})
-AC_SUBST([MASON_SESSION_PATH], ${exp_sessionstatedir})
-AC_SUBST([MASON_HTML_PATH], ${exp_htmldir})
-AC_SUBST([LOCAL_ETC_PATH], ${exp_custometcdir})
-AC_SUBST([MASON_LOCAL_HTML_PATH], ${exp_customhtmldir})
-AC_SUBST([LOCAL_LEXICON_PATH], ${exp_customlexdir})
-AC_SUBST([LOCAL_LIB_PATH], ${exp_customlibdir})
-AC_SUBST([DESTDIR], ${exp_prefix})
-AC_SUBST([RT_LOG_PATH], ${exp_logfiledir})
-
-dnl Configure the output files, and generate them.
-
-dnl Binaries that should be +x
-AC_CONFIG_FILES([
- sbin/rt-dump-database
- sbin/rt-setup-database
- sbin/rt-test-dependencies
- bin/mason_handler.fcgi
- bin/mason_handler.scgi
- bin/standalone_httpd
- bin/rt-crontool
- bin/rt-mailgate
- bin/rt],
- [chmod ug+x $ac_file]
- )
-
-dnl All other generated files
-AC_CONFIG_FILES([
- Makefile
- etc/RT_Config.pm
- lib/RT.pm
- bin/mason_handler.svc
- bin/webmux.pl],
- )
-AC_OUTPUT
diff --git a/rt/docs/README.docs b/rt/docs/README.docs
deleted file mode 100755
index 38866b3..0000000
--- a/rt/docs/README.docs
+++ /dev/null
@@ -1,2 +0,0 @@
-Questions about docs should be sent to the RT Documentation Team (rt-docs@fsck.com)
-which is led by Meri.
diff --git a/rt/docs/Security b/rt/docs/Security
deleted file mode 100644
index c9787ac..0000000
--- a/rt/docs/Security
+++ /dev/null
@@ -1,25 +0,0 @@
-RT2 runs setgid to some group (it defaults to 'rt').
-
-rt's configuration file, 'config.pm', is not world readable because it
-contains rt's database password. If a user gets access to this file, he
-can arbitrarily manipulate the RT database. This is bad. You don't want
-this to happen. config.pm is mode 550. No users should be members of
-the 'rt' group unless you want them to be able to obtain your rt password.
-
-If you're running the web interface, you'll need to make sure your webserver
-has access to config.pm. You could do this by letting your webserver's user
-be a member of the 'rt' group. This has the disadvantage of letting
-any mod_perl code on your web server have access to your RT password.
-
-Alternatively, you can run RT2 on its own apache instance bound to a high
-port on 127.0.0.1
-which runs as a non-priviledged user which is a member of the group 'rt'.
-
-Configure your webserver to proxy requests to RT's
-virtual directory to the apache instance you just set up.
-
-TODO: doc the apache configs needed to do this.
-
-The same technique can be used to run multiple RT2 instances on the same host.
-
-
diff --git a/rt/docs/design_docs/3.3-schema-redesign.txt b/rt/docs/design_docs/3.3-schema-redesign.txt
deleted file mode 100644
index 518eccd..0000000
--- a/rt/docs/design_docs/3.3-schema-redesign.txt
+++ /dev/null
@@ -1,57 +0,0 @@
--- --------------------------------------- --
--- RT 3.3 Schema redesign v7: 2004-11-08 --
--- --------------------------------------- --
-
-TABLE CustomFields (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NULL ,
- Type varchar(200) NULL , -- Changed: see MaxValues below
- MaxValues integer, -- New: 1 = Single, 0 = Multiple
- Pattern varchar(255) NULL , -- New: regex to validate against
- Repeated int2 NOT NULL DEFAULT 0 , -- New: repeated table entry
- LookupType varchar(255) NOT NULL, -- New: "RT::Queue-RT::Ticket"
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 , -- only used on "pick CF" screen
-)
-
--- This table replaces the "Queue" field in CustomFields
-TABLE ObjectCustomFields (
- id INTEGER NOT NULL AUTO_INCREMENT,
- CustomField int NOT NULL , -- CustomField ID
- ObjectId integer NOT NULL, -- Final id of toplevel parent, or
- -- the object itself if ParentType
- -- is empty; 0 means global as usual
- SortOrder integer NOT NULL DEFAULT 0 , -- this is used to sort the CFs
-);
-
--- This table replaces TicketCustomFieldValues
-TABLE ObjectCustomFieldValues (
- id INTEGER NOT NULL AUTO_INCREMENT,
- CustomField int NOT NULL ,
- ObjectType varchar(255) NOT NULL, -- Final target of the Object
- ObjectId int NOT NULL , -- New: replaces the "Ticket" field
- SortOrder integer NOT NULL DEFAULT 0 , -- New: for Repeated fields
-
- Content varchar(255) NULL ,
- LargeContent LONGTEXT NULL, -- New: data longer than 255 bytes
- ContentType varchar(80) NULL, -- New: MIME type of LargeContent
- ContentEncoding varchar(80) NULL , -- New: for binary LargeContent
- Disabled int2 NOT NULL DEFAULT 0 , -- New: whether this is deleted
-)
-
-TABLE Transactions (
- id INTEGER NOT NULL AUTO_INCREMENT,
- ObjectType varchar(255) NULL, -- Final target of the Object
- ObjectId integer NOT NULL DEFAULT 0 , -- New: replaces the "Ticket" field
- TimeTaken integer NOT NULL DEFAULT 0 ,
- Type varchar(20) NULL ,
- Field varchar(40) NULL ,
- OldValue varchar(255) NULL ,
- NewValue varchar(255) NULL ,
- ReferenceType varchar(255) NULL, -- NeW: Currently "RT::OCFV" only
- OldReference integer NULL , -- New: Id of ReferenceType
- NewReference integer NULL , -- New: Id of ReferenceType
- Data varchar(255) NULL ,
-)
-
--- vim: filetype=mysql shiftwidth=4 expandtab
diff --git a/rt/docs/design_docs/CARS b/rt/docs/design_docs/CARS
deleted file mode 100755
index a4d2a78..0000000
--- a/rt/docs/design_docs/CARS
+++ /dev/null
@@ -1,66 +0,0 @@
-Conditional Automated Request Shuffler
-Initial Design. <jesse@fsck.com> 9 Nov 99
-
-#Try to find out what queue the incoming ticket is in
-#Try to find out the default action for this invocation
-#Read the ticket from STDIN
-#Obtain the actor
-#Obtain the serial # if we have one
-#If the ticket has a ticket-id
- #if this is a 'comment'
- #add the current mime objects as a 'comment'
-
- #if this is 'correspondence'
- #add the current mime object as 'correspondence'
-
-
-#if this ticket does not yet have a ticket id
-
- #For now:
- #Create a new ticket
-
- #In the distant future
-
- #load the regexp table matching this queue
- #check the message agains the regexp table, ordered by precedence
- #when we get a match
- #get the ruleset for that regexp from the actions table
- #evaluate the ruleset in order of precedence.
- #if we get an 'exit' stop proccesing ALL rulesets
-wpw #if we get a 'forward,' forward it to 'value'.
-
- #if we get a 'create,' create a request in 'value'
- #elseif we get a 'map', add this as additional correspondence on ticket 'value'
-
-
- #if we get an 'associate', associate the ticket number returned from the
- 'create' or 'map' with the master ticket from 'value'
-
- #if we get a 'reply',
- #load the reply template with id 'value'
- #replace strings in the template
- #send the template
-
-
-
-
-CREATE TABLE Rules {
-ID int AUTO_INCREMENT,
-Desc varchar(120),
-Regexp varchar(80),
-Precedence int,
-MatchField varchar(20), #Can be a headername or 'any' all header names
- #end in :
-
-
-CREATE TABLE Actions {
-Rule int,
-Action varchar(20), # Create, Forward, Squelch, Owner, Area, Associate
-Value varchar(20), #queue or email address
-Desc varchar(120)
-}
-
-CREATE TABLE Autoreplies {
-ID int AUTO_INCREMENT,
-Content text
-); \ No newline at end of file
diff --git a/rt/docs/design_docs/TransactionTypes.txt b/rt/docs/design_docs/TransactionTypes.txt
deleted file mode 100755
index 942b723..0000000
--- a/rt/docs/design_docs/TransactionTypes.txt
+++ /dev/null
@@ -1,48 +0,0 @@
-This is some loose scrabbling made by TobiX, they might eventually be relevant
-for 2.1.
-
-INTERFACES, in general
-
-should:
-
-- provide the user (client?) with a list of possible actions (methods).
-- let the user execute those actions (methods).
-- Return information to the user/client.
-
-There are two kind of actions/methods:
-
-- Information retrieval
-- Transactions
-
-For the first, I think the best thing is to just provide a lot of
-methods for it in the libraries, and let it be an Interface Design
-Issue what to show and how to show it.
-
-For the second, I think we can win in the long run on having a
-generalized methods for
-
-- listing transaction types.
-- creating & committing transactions.
-
-..with the possibility of just deploying new custom-developed modules
-when new transaction types are needed.
-
-
-$RT::TransactionTypes ...and...
-%RT::TransactionTypes
- - global object which contains all TransactionTypes
- - used by all UIs to create menues of possible (user) actions (one TransactionType is a user action)
-
-The UIs should call sth like
-$Ticket->AddTransaction($TransactionName), which should be equivalent
-with i.e. $Ticket->Correspond when $TransactionName is 'Correspond'
-(AUTOLOAD should call the do-sub if exists
-$RT::TransactionTypes{$TransactionName})
-
-The RT::Ticket::AddTransaction will create a new transaction of the
-right TransactionClass (maybe via a sub
-RT::TransactionTypes::NewTransaction). Then $Transaction->do is
-called.
-
-TransactionType->do initializes a new object of the right TransactionClass, and
-
diff --git a/rt/docs/design_docs/acls b/rt/docs/design_docs/acls
deleted file mode 100644
index bb093ad..0000000
--- a/rt/docs/design_docs/acls
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-Does principal baz have right foo for object bar
-
-What rights does user baz have for object bar
-
-# {{{ Which principals have right foo for object bar
-
-
-if ($args{'ObjectType'} eq 'Ticket') {
- $or_check_ticket_roles = " OR ( Groups.Domain = 'TicketRole' AND Groups.Instance = '".$args{'ObjectId'}."') ";
- # If we're looking at ticket rights, we also want to look at the associated queue rights.
- # this is a little bit hacky, but basically, now that we've done the ticket roles magic, we load the queue object
- # and ask all the rest of our questions about the queue.
- my $tick = RT::Ticket->new($RT::SystemUser);
- $tick->Load($args{'ObjectId'});
- $args{'ObjectType'} = 'Queue';
- $args{'ObjectId'} = $tick->QueueObj->Id();
-
-}
-if ($args{'ObjectType'} eq 'Queue') {
- $or_check_roles = " OR ( ( (Groups.Domain = 'QueueRole' AND Groups.Instance = '".$args{'ObjectId'}."') $or_check_ticket_roles )
- AND Groups.Type = ACL.PrincipalType AND Groups.Id = Principals.ObjectId AND Principals.PrincipalType = 'Group') ";
-}
-
-if (defined $args{'ObjectType'} ) {
- $or_look_at_object_rights = " OR (ACL.ObjectType = '".$args{'ObjectType'}."' AND ACL.ObjectId = '".$args{'ObjectId'}."') ";
-
-}
-
-my $query = "SELECT Users.* from ACL, Groups, Users, Principals, Principals UserPrinc, CachedGroupMembers WHERE
- Users.id = UserPrinc.ObjectId AND UserPrinc.PrincipalType = 'User' AND
- Principals.Id = CachedGroupMembers.GroupId AND
- CachedGroupMembers.MemberId = UserPrinc.ObjectId AND
- UserPrinc.PrincipalType = 'User' AND
- (ACL.RightName = 'SuperUser' OR ACL.RightName = '$right') AND
- (ACL.ObjectType = 'System' $or_look_at_object_rights) AND
- (
- (ACL.PrincipalId = Principals.Id AND
- Principals.ObjectId = Groups.Id AND
- ACL.PrincipalType = 'Group' AND
- (Groups.Domain = 'SystemInternal' OR Groups.Domain = 'UserDefined' OR Groups.Domain = 'ACLEquivalence')
- )
- $or_check_roles
- )";
-
-# }}}
-
-What objects does principal baz have right foo for
-;
diff --git a/rt/docs/design_docs/approval_notices b/rt/docs/design_docs/approval_notices
deleted file mode 100644
index 5e76119..0000000
--- a/rt/docs/design_docs/approval_notices
+++ /dev/null
@@ -1,8 +0,0 @@
-Notification on "your request approved by"
-Notification on "your request approved by all approvers"
-Notification on "your request denied by"
-Reject ticket on rejection of any approval
-
-"Ticket N is pending your approval"
-
-
diff --git a/rt/docs/design_docs/approval_template b/rt/docs/design_docs/approval_template
deleted file mode 100644
index 16a988c..0000000
--- a/rt/docs/design_docs/approval_template
+++ /dev/null
@@ -1,25 +0,0 @@
-===Create-Ticket: approval
- { my $name = "HR";
- my $groups = RT::Groups->new($RT::SystemUser);
- $groups->LimitToUserDefinedGroups();
- $groups->Limit(FIELD => 'Name', OPERATOR => '=', VALUE => "$name");
- $groups->WithMember($TransactionObj->CreatorObj->Id);
-
- my $groupid = $groups->First->Id;
-
- my $adminccs = RT::Users->new($RT::SystemUser);
- $adminccs->WhoHaveRight(Right => 'AdminGroup', IncludeSystemRights => undef, IncludeSuperusers => 0, IncludeSubgroupMembers => 0, Object => $groups->First);
-
- my @admins;
- while (my $admin = $adminccs->Next) {
- push (@admins, $admin->Name);
- }
- }
- Queue: Approvals
- Type: Approval
- AdminCcs: {join (", ",@admins) }
- Depended-On-By: {$tickets{'TOP'}->Id}
- Refers-To: {$tickets{'TOP'}->Id}
- Due: {time + 86400}
- Content-Type: text/plain
- Content: Your approval is requested for the ticket {%$tickets{'TOP'}->Id}: {$tickets{'TOP'}->Subject}
diff --git a/rt/docs/design_docs/cf_search b/rt/docs/design_docs/cf_search
deleted file mode 100644
index 456a9fe..0000000
--- a/rt/docs/design_docs/cf_search
+++ /dev/null
@@ -1,72 +0,0 @@
-find all tickets where:
-
-
- CF Foo
- Has values (talk or read) AND
- Has values (bar and baz) AND
- doesn't have values (bing or bong)
-
-
-LimitCustomFieldValues {
- my %args = ( CustomField => undef,
- ClauseId => 'CustomFields',
- OPERATOR => undef,
- ENTRYAGGREGATOR => undef,
- VALUES => undef,
- @_) ;
-
- unless ( $self->{'TicketAliases'}{$args{'ClauseId'}}{'CustomField'} ) {
- $self->{'TicketAliases'}{$args{'ClauseId'}}{'CustomField'} = $self->NewAlias('CustomFields');
- $self->Join(TABLE1 =>$self->{'TicketAliases'}{$args{'ClauseId'}}{'CustomField' },
- FIELD1 => 'QueueId',
- TABLE2 => 'main', FIELD2 => 'QueueId');
-
- if ($args{'OPERATOR'} =~ /!=|IS/i) {
- }
- else {
- }
-
-}
- # {{{ if it's a keyword
- elsif ( $TYPES{ $restriction->{'FIELD'} } eq 'CUSTOMFIELD' ) {
-
- my $null_columns_ok;
- my $TicketCFs = $self->Join( TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'TicketCustomFieldValues',
- FIELD2 => 'Ticket' );
-
- foreach my $value ( @{ $restriction->{'VALUES'} } ) {
- $self->SUPER::Limit( ALIAS => $TicketCFs,
- FIELD => 'Content',
- OPERATOR => $restriction->{'OPERATOR'},
- VALUE => $value,
- QUOTEVALUE => $restriction->{'QUOTEVALUE'},
- ENTRYAGGREGATOR => 'AND', );
- }
- if ( ( $restriction->{'OPERATOR'} =~ /^IS$/i ) or ( $restriction->{'OPERATOR'} eq '!=' ) ) {
- $null_columns_ok = 1;
- }
-
- #If we're trying to find tickets where the keyword isn't somethng, also check ones where it _IS_ null
- if ( $restriction->{'OPERATOR'} eq '!=' ) {
- $self->SUPER::Limit( ALIAS => $TicketCFs,
- FIELD => 'Content',
- OPERATOR => 'IS',
- VALUE => 'NULL',
- QUOTEVALUE => 0,
- ENTRYAGGREGATOR => 'OR', );
- }
-
- $self->SUPER::Limit( LEFTJOIN => $TicketCFs,
- FIELD => 'CustomField',
- VALUE => $restriction->{'CUSTOMFIELD'},
- ENTRYAGGREGATOR => 'OR' );
-
- }
-
- # }}}
-
- }
-
diff --git a/rt/docs/design_docs/cli_spec b/rt/docs/design_docs/cli_spec
deleted file mode 100644
index ae5f29f..0000000
--- a/rt/docs/design_docs/cli_spec
+++ /dev/null
@@ -1,31 +0,0 @@
-
-Things the cli must do
- create ticket
- comment
- reply
- update ticket metadata
- search for tickets
- update a bunch of tickets.
- list tickets
- login/logout
-
-
-should support multiple rt servers
-
-create/edit/update should use EDITOR or take from a file or stdin
-
-should be able to update ticket sttributes from a commandline without invoking an editor or needing to use stdin.
-
-login/logout should store RT session cookies rather than constantly transmitting the username/password combo.
-
-rtserver and rt username should come from env variables. but should be able to be overridden by commandline options.
-
-rt password should be able to be specified on the commandline (say from a script) or, failing that be prompted for within the application (as rt's sbin/initdb script does) ...or maybe able to be read from a stash file on disk.
-
-must be able to dowaload attachments from cli.
-
- it might also be cool to be able to generate session-length urls for attavhments so you can use a browser. but that's not necessary.
-
-
-I'm envisioning this as similar to the subversion cli, actually.
-
diff --git a/rt/docs/design_docs/cvs_integration b/rt/docs/design_docs/cvs_integration
deleted file mode 100644
index 45a758f..0000000
--- a/rt/docs/design_docs/cvs_integration
+++ /dev/null
@@ -1,164 +0,0 @@
-jesse@FSCK.COM: ok. anyone here
- interested in having RT as a bug tracker integrated with CVS? ()
-
-marc: in principle, sure. ()
-
-jesse@FSCK.COM: want to write up your
- ideal of how such a beast would work? ()
-
-alex_c: what sort of integration are you thinking of, Jesse? ()
-
-jesse@FSCK.COM: well, that's what I want
- to know, alex. lots of people want their bug trackers tied to their
- version control. I want to know what people want it to _do_ ;) ()
-
-alex_c: weird. :) ()
-
-marc: similarly to what the debian bts does.
- you put a magic string ("rt-closes#123") and it causes the bug in rt to
- be closed (or appended with a different magic string) with the commit
- message. also nice would be if rt would then generate links to a
- webcvs server. ()
-
-jhawk: Hrmm. cvs front-end that strips 'em out?
- Perhaps with RT: lines instead of CVS: lines in the commit
- interaction? ()
-
-marc: the magic string goes in the commit
- message, that is. no, use one of the magic post-commit scripts. ()
-
-
-jesse@FSCK.COM: well, there's also the
- pre-commit script to lock out commits wihtout a ticket id ()
-
-jhawk: Personally, I don't want to force special
- magic strings to the bug-tracking system, some of which may be
- confidential, to appear in the cvs logs. ()
-
-marc: I could see wanting that on a release
- branch. ()
-
-jhawk: I also think it would be cool to supply
- template stuff for you to edit. ()
-
-jesse@FSCK.COM: I'm not sure cvs can be
- made to do that. can it? (generate templates) ()
-
-jhawk: It would be reasonable, in my model, to
- turn some kinds of RT: lines into things that fell in the commit
- message, but not all kinds. ()
-
-marc: I don't quite see jhawk's objection. ()
-
-ghudson: In my observation, locking out commits
- without a ticket ID is usually an impediment to development, and leads
- to developers having the one bug which all commits cite. ()
-
-jhawk: If you had a CVS frontend, it could geneate
- the template and feed it to 'cvs commit -m' ()
-
-ghudson: CVS can generate templates and verify
- that they have been filled in. ()
-
-jhawk: What Greg says sounds cool; greg, what do
- you mean? marc: one sec. ()
-
-marc: I think assuming a frontend is a terrible
- idea. ()
-
-jesse@FSCK.COM: greg: agreed. but people
- seem to want it. the idea would be only for a locked down release
- branch. ()
-
-jhawk: marc: So, I might want to close an open
- ticket as part of a commit message without that showing up in the
- coommit message. Or to insert a splufty long comment into a ticket
- while I do the commit but not close or really change the state, and
- that comment might want to ramble a lot but not include that ramble in
- the commit message. ()
-
-jesse@FSCK.COM: well, then arguably, you
- might want to not use the commit message for that update, but instead
- just go straight to the bts ()
-
-marc: I think the idea is to force you to
- mention the ticket closing in the commit message. ()
-
-jesse@FSCK.COM: but yeah, state changing
- and 'update messages' are separate concepts that should both be
- supported. ()
-
-jesse@FSCK.COM: part of the idea is to
- drag the commit message into the BTS ()
-
-jhawk: Err, I think it quite frequent that I want
- to put separate info in both the commit message and the ticket system,
- and entering them at the same time seems cool. ()
-
-jesse@FSCK.COM: ok. noted. I'll see if
- that's doable, when i get around to this. ()
-
-marc: so I think you want a custom front-end,
- but I don't think what you want is what jesse is talking about. ()
-
-jesse@FSCK.COM: the thing that would be
- really cool that scare the pants off me is tracking which branches bugs
- exist in / are fixed in ()
-
-jesse@FSCK.COM: what jhawk wants should
- be doable, now that I understand his reqts. ()
-
-marc: that would require the bts to understand
- branches in some fundamental way. ()
-
-jesse@FSCK.COM: yes. see above, about
- the pants. ()
-
-sly: uh oh, not more people losing their pants... ..
-
-
-ghudson: RT needs to know the names of branches
- and their structure (so that you can tell it "fixed in foo" and it
- knows that the bug is still fixed in anything that branches off of foo,
- but not necessarily in other new branches), but nothing more than that.
-
-jhawk: So, note that what I'm describing is how
- I'd like the UI to be, from a generic architectural level, and not
- really thinking terribly specific. Greg, can you explain the CVS
- template thing? ()
-
-jesse@FSCK.COM: and it needs to know
- exactly "when" a branch happens. because "fixed in foo" won't fix
- something that branched off foo yesterday ()
-
-marc: jesse was talking about integrating rt
- with cvs. building a new developent+repository+bts from scratch would
- be a problem with larger scope :-) ()
-
-jesse@FSCK.COM: marc: was that in
- response to jhawk? ()
-
-ghudson: CVS and templates: "rcsinfo" lets you
- specify a template for log messages, and "commitinfo" lets you check
- them. ()
-
-ghudson: Er, sorry, my bad.
- s/commitinfo/verifymsg/ ()
-
-marc: with cvs, if you have the revision number
- of the fix (which you should). you can use the branch version number to
- get a date and see when the branch happened relative to the fix. ()
-
-marc: jesse: yes. ()
-
-jesse@FSCK.COM: Ok. would people
- consider "integration with CVS" to be subpar or incomplete if it didn't
- deal with tracking branches? ()
-
-marc: incomplete relative to an ideal, but not
- subpar, as it would still be useful. ()
-
-allbery@CS.CMU.EDU: CVS's branch
- support sucks so much that failure to work with it is hardly a bug ()
-
-
diff --git a/rt/docs/design_docs/delegation b/rt/docs/design_docs/delegation
deleted file mode 100644
index 0e57059..0000000
--- a/rt/docs/design_docs/delegation
+++ /dev/null
@@ -1,115 +0,0 @@
-Group ACLs
-
- the rights:
-
-
- CreatePersonalGroup
- CreateGroup
-
- AdminGroup
- * Update group metadata and access control list
- AdminGroupMembers
- * Add ad delete members of this group
- ModifyOwnMembership
- * Join and quit this group
-
-
- the primitives:
-
-In user.pm
-
-=item HasRight { Right => 'somerightname', ObjectType => 'Group', ObjectId => 'GroupId'
-
- Returns true if this user has the right 'somerightname' for
-the group with id 'Id'
-
-=cut
-
-
-=item RightsForObject { ObjectType => 'Group', ObjectId =>'GroupId' }
-
-in users.pm
-
-=item WhoHaveRight { Right =>'somerightname', ObjectType => 'Group', ObjectId => 'GroupId' }
-
-
- Finds all users who have the right 'somerightname' for the group
-in question.
-
- If a user has "AdminGroupMembers" globally and we ask about
- group 23, that user should be found.
-
-=cut
-
-Users must be able to delegate individual rights
-
- * Is it that users can delegate any and all rights but it's
- only rights they _have_ which actually grant rights.
-
-rights must not be redelegated
-
-users must be able to create groups to which rights can be delegated.
-
-Only users who have the "delegate rights" right can delegate rights.
-
-
-When a user's right to do something is revoked, the delegation must
-be revoked
-
- * For any delegated ACL check, the delegator's right must be
- checked immediately after the delegatee's right.
- If a user has had a right delegated by multiple parties,
- this may mean that we need to actually loop through and check
- a bunch of possible delegations. Or can we craft a "has delegated
- right" ACL check.
-
-
-
-
-
-
-
-ACL 1 Group Q has the right to Frob ObjectI.
-ACL 2 User A has the right "DelegateRights"
-
-Group Q has the member Group S
-Group S has the member Group R
-Group S has the member Group T
-Group R has the member user A
-Group T has the member user A
-
-User A delegates to Group P the right to Frob ObjectI
-
- New ACL rule:
-
- ACL 3: Group P has the right to Frob ObjectI
- as delegated from ACL1 by User A
-
-
-In the case where ACL1 is revoked:
-
- find all acls which are delegated from ACL1.
- Delete them
-
-In the case where User A is removed from group R
-
- Get the list of all groups that A was in by way of group R before the removal
- Get the list of all groups that A is in _after_ the removal.
-
- Find all the ACEs granted to each group that A is no longer in.
- For each ACE in that list, find all the rights that A has delegated.
- Whack them.
-
-In the case where Group S is removed from group Q
-
-
- Get a list of all groups that S was in by way of Q before the removal
- Call this list O.
-
- For each user X who's a member of S (directly or indirectly):
- Get a list of all groups that X is in after removal.
- For each group in O that X is no longer a member of:
- Find all ACEs granted to O
- For each ACE, look up all the delegations that X has made.
- For each delegation
- WHACK IT
diff --git a/rt/docs/design_docs/evil_plans b/rt/docs/design_docs/evil_plans
deleted file mode 100644
index 5b5cc58..0000000
--- a/rt/docs/design_docs/evil_plans
+++ /dev/null
@@ -1,162 +0,0 @@
-Current planned 2.2 feature list. subject to change.
-
-
-Core
-
-
-
-Web UI
-
-Should New "Tools" top level menu
-Should "This week in RT" at a glance.
-Nice "RT Stats" overview.
-Nice recent and favorite items
-
-
-per-user configuration
-
-Must Saveable user preferences.
-
- The ideal implementation would be "saveable user metadata",
- including things like "Alternate Email Addresses". To
- do this right, not all user metadata would be directly
- editable by the user who has "ModifySelf" it may be that
- this is a "system" datastore that gets accessed by various
- functions, some of which the user has access to modify and
- some of which only the system does.
-
- API: Set field "FOO" to value "BAR" for user BAZ
- What values does field "FOO" have for user BAZ?
- Clear all values of "FOO" for user BAZ
- What users have value "BAR" for field "FOO"
-
- Example usages:
-
- What users have the alternative email address matching
- "boo@fsck.com"
- What custom searches does user BAZ have defined?
- What is baz's default queue?
-
- Actually, I feel a little sketchy about Alternative Email
- Addresses in there. I'm not quite sure why yet.
-
- The same would really be useful for queues. Damn it. I think
- I want a registry.
-
-
-
-Searching
-
-Must Ability to define search result format.
-should Saveable user searches.
-nice Sharable searches.
-
-
-Scrips
-
-must Include more Conditions; at least those contributed so far
- that make sense in my grand scheme of things
-
-should The name should change to something that people don't think is
- spelled wrong. ("I will not invent words\n" x 1000)
-
-nice Scrips could apply to a list of queues, rather than just one queue or
- all of them.
-
-
-Custom fields
-
-Nice Date custom fields
-Nice Some way to order and group custom fields.
-Nice Default values
-Nice Required values
-Nice Make custom fields apply to an enumerated list of queues,
- rather than just one.
-
-
-Web infrastructure
-
-
-Installation
-
-Should Better FSSTD conformance:
- bins in /bin
- admin tools in /sbin (does this include rtadmin?)
- ephemeral data in /var
- rename config file
- force local RT search path?
-
-Mail gateway
-
-must Integrate gpg-authenticated command-by-mail mode
-
-
-
-Core
-
-should Use apache logging, if available
-should Use syslog, if available.
-should Mail user new password, as an Action, so it can be invoked either
- as a scripaction or from the web ui.
-
-
-
-Web Services Framework
-
-Should Expose an API to create a ticket by HTTP posting an XML document.
-Should Provide an RSS feed to display tickets matching certain criteria
-Nice Allow ticket updates via the web ui
-Nice Export full ticket metadata and history as XML
-
-Note: I currently favor the REST philosophy that GET and POST to specific,
- defined URLs provides everything one needs to build comprehensive
- web services without the massive added complexity of a SOAP or XML-RPC
- framework. Sadly, the world doesn't agree with me
-
-
-ACLs:
-
-Wish New ACL primitives for:
-
- List all users who have right "FOO" on object "BAR"
- List all rights user "BAZ" has for object "BAR"
- List all objects for which user "BAR" has right "FOO"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-For the near future:
-
- Use case:
- Jesse wants to get notified of all tickets in queue 'RT Bugs'
- with a severity of 'critical' and also have a requestor whcih matches 'fsck.com'.
- I'm not sure this is the best idea.
-
-
- Site admins define a number of subscriptions and can sign up individual
- users, groups or metagroups to get mail on that subscription.
-
- Basically, an admin would define "On Condition, notify as comment with
- template _template_"
-
- There would be a new table called "subscriptions"(?) that would have
- the structure:
-
- id
- ScripId
- PrincipalType ENUM: User, Group, Owner, Requestors, AdminCcs, Ccs
- PrincipalId -- UserId or GroupId. For Owner, Requestors, AdminCcs, Ccs, it doesn't really make a lick of difference.
diff --git a/rt/docs/design_docs/groups_notes b/rt/docs/design_docs/groups_notes
deleted file mode 100644
index 234fd37..0000000
--- a/rt/docs/design_docs/groups_notes
+++ /dev/null
@@ -1,88 +0,0 @@
-CREATE TABLE Prinicpals (
- id int auto_increment
- PrincipalType VARCHAR(16) not_null,
- PrincipalId int # foreign key to Users or Groups, depending
-)
-
-CREATE TABLE Groups (
- id int auto_increment,
- Domain varchar(255),
- Instance varchar(16),
- Name varchar(255),
- Description varchar(255),
-);
-CREATE TABLE ACL (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Principal integer NULL , #Foreign key to principals
- RightName varchar(25) NULL ,
- RightDomain varchar(25) NULL ,
- RightInstance integer NULL ,
- PRIMARY KEY (id)
-);
-
-CREATE TABLE GroupMembers (
- id int auto_increment,
- Group int, # foreign key to Principals
- Member int # foreign key to Principals
-)
-
-create table GroupMembersCache (
- id int auto_increment,
- Group int, # foreign key to Principals
- Member int, # foreign key to Principals
- Via int, #foreign key to g_m_u
-)
-
-insert into principals values ('bubbles);
-insert into principals values ('fubar');
-insert into principals values ('sheeri');
-insert into principals values ('sgw');
-
-insert into principals values ('staff');
-insert into principals values ('sysadmin');
-insert into principals values ('senior admin');
-
-
-insert into group_members values(1, 'staff', 'bubbles');
-insert into group_members values(2, 'sysadmin', 'sheeri');
-insert into group_members values(3,'senior admin', 'sgw');
-insert into group_members values(4,'senior admin', 'fubar');
-insert into group_members values(5, 'sysadmin', 'senior admin')
-
-Groups
-
-
-
-Domain Queues
-Instance <queueid#>
-Name AdminCc, Cc
-
-/Queues/1/AdminCc
-/Queues/3/Cc
-
-Domain Tickets
-Instance <#n>
-Name Owner, Requestor, Cc, AdminCc
-
-/Tickets/1/Owner
-/Tickets/1/Requestor
-/Tickets/1/Cc
- Has members: /Queues/whatever queue the ticket has/Cc
-/Tickets/1/AdminCc
- Has members: /Queues/whatever queue the ticket has/AdminCc
-
-
-Domain Users
-Instance <userid>
-
-/Users/1/MyDelegates
-/Users/1/MyOtherDelegates
-
-
-Domain System
-Name Admins, AdminManagers
-
-/System/Administrators
-/System/Blah
-
-
diff --git a/rt/docs/design_docs/link-definitions.txt b/rt/docs/design_docs/link-definitions.txt
deleted file mode 100644
index e109744..0000000
--- a/rt/docs/design_docs/link-definitions.txt
+++ /dev/null
@@ -1,143 +0,0 @@
-For 2.0, those Linking actions should be supported:
-
-1. DependentOn; TobiX-style.
-
- BASE is dependent on TARGET.
-
- ...meaning that TARGET has to be resolved before BASE (really) is
- resolved.
-
- According to TobiX, those "weird action" makes sense:
- ...when the link and/or TARGET is created, the BASE might be stalled.
- Alternatively, this should be very trivial to request through the UIs.
- ...when the TARGET is resolved, BASE will be reopened if it's stalled.
-
- An alternative to those "weird actions" is to have some run-time logic that
- takes care of this; i.e. letting the search interface handle "please hide
- all requests with unresolved dependencies"
-
- TobiX will need to make dependency links into Bugzilla.
-
- Dependency links should be made when more work to BASE should be done
- after the TARGET is resolved and/or BASE can't be resolved before TARGET is
- resolved.
-
- Dependency links are often 1:1, but n:n links makes sense; one ticket can
- depend on several others, several tickets can depend on one ticket, etc.
-
- Loops don't make sense at all, but the system above won't break if it
- encounter loops.
-
- Dependency links is more for workflow than anything else. When a new
- TARGET is created, some of the work might be passed over to another
- department/person ... but _not_ the responsibility for the communication
- with the external requestor.
-
-2. MemberOf link (grouping)
-
- BASE is a member of TARGET.
-
- TobiX-style "weird actions":
- ...when TARGET is beeing replied to, all BASE requestors should get the
- reply.
-
- ...when TARGET is resolved, all BASE tickets should be resolved (unless
- they have other unresolved Dependencies/MemberOf links).
-
- ...when all BASEs to one TARGET are resolved, TARGET should be resolved.
-
- The alternative is to let the user choose "reply to all" and "resolve all"
- through the user interfaces.
-
- MemberOf should be used when BASE ticket states more or less the same as
- the TARGET ticket, and we do want to give a reply to all requestors, but we
- don't want to merge them (Individual tickets from individual external
- requestors should be respected as separate entities). If BASE tickets from
- more than one external requestor is linked to a TARGET ticket, we denote
- the TARGET ticket as a "Group ticket". This is only a documentation
- definition, you won't find any references to "Group tickets" in the source.
-
- I think the proper etiquette should be to clearly state in a reply to a
- group ticket that the mail is going to several persons, and that the
- requestor should reply back if they feel their Ticket hasn't got the
- attention it deserves. The user documentation should reflect this.
-
- MemberOf links can also be used to hand away the work flow. The person in
- charge of the TARGET ticket will also be in charge of the BASE tickets and
- the communication with the end user.
-
- If a work task needs to be splitted into two subtasks, MemberOf might also be
- used.
-
- 1:n links makes more sense, but n:n can also work in some cases.
- The reply stuff might break seriously upon loops. Recursement might be
- handy for splitting a work task into subtasks (making a hierarchical tree
- of the worktasks).
-
-
-3. Merge (connecting)
-
- BASE is the same as TARGET.
-
- ...the system should somehow merge together transactions for both tickets.
- ...BASE should be more or less deleted, only the TARGET should apply.
- ...actions done toward BASE should be redirected to TARGET.
-
- I think MergeLinks should be used when two tickets accidentally has
- appeared twice in the system, and/or there is no reason to keep the two
- tickets separately. It might be that it's the same requestor (i.e.
- clicking the "send" button twice in a web environment) or that we don't
- care much about giving the requestor individual follow-up (typically
- "internal" requestors, etc.)
-
- Based on user feedback, merged tickets will be displayed as the same ticket
-within RT's user interfaces. but the original tickets' transactions will be
-kept separated in the database. this may require some magic.
-
-4. RefersTo / No Action link (linking)
-
- BASE is somewhat related to TARGET
-
- No special actions will be taken.
-
- Loops might maybe make sense
-
-BASE and TARGET are usually Tickets within one RT instance, but it
-might also point to external RT instances, other DB systems, etc.
-
-
-
-
-In future revisions, it should be very easy to set up site-specific link action types.
-We should also consider to include more linking actions in the box.
-
-An example stolen from John Rouillard. Eventually the [comments] should be
-removed, and the text modified to fit the planned 2.0 link actions:
-
- ticket problem
- 1 can't connect to hosts with netscape
- 2 ping is broken
- 3 Can't send email: error no space on spool/mqueue
-
- You have the above in the queue. You realize that DNS is down. Spawn
- a ticket
-
- 4 DNS is down
-
- mergelink 1 and 2 to it [I would rather say "make a MemberOf link _or_ a
- dependency link from 1 and 2 to 4" --TobiX] (if you choose to stall 1 and
- 2 automatically feel free, its just a shell script change) [well, you
- might choose dependency instead of MemberOf --TobiX]. The person working
- on 3 has come to the conclusion that outgoing mail is backing up because
- of the DNS failure. She has cleared space by copying the mail queue to
- another disk, but can't really get email working till DNS is up. So she
- creates a Dependency linkon ticket 4 stalling ticket 3.
-
- We finally get DNS working and resolve ticket 3. What happens? Tickets 1
- and 2 are resolved and email is sent to requestors notifying them of the
- resolution [This is the default behaviour for 2.0 MemberOf-linked tickets.
- Remember that if we send Replies to "Group Tickets" (that is, the target
- of several "MemberOf" links) --TobiX]. Ticket 4 [should be 3? --TobiX] is
- reopened and the person working on it starts flushing the mail queue and
- the moved mailq by hand.
-
diff --git a/rt/docs/design_docs/realflow.txt b/rt/docs/design_docs/realflow.txt
deleted file mode 100644
index 3717e27..0000000
--- a/rt/docs/design_docs/realflow.txt
+++ /dev/null
@@ -1,191 +0,0 @@
-- I have a MonitoredQueue that sets tickets to "Monitored"
- if its subject matches /monitored/.
-
-- I want to have a kind of Ticket that are 'Monitored'.
-- I want all monitored tickets, when they are overdue for
- 14 days, to:
- - send notification to manager
- - mark as stalled
-- I want all monitored tickets, when they are overdue for
- 28 days, to:
- - mark as rejected
-- I want to query all tickets that are monitored as such
-- I want to modify 14 => 15 and have it affect all existing
- tickets that are monitored
-
-{
-- I want to add a new "overdue for 27 days, add a 'ultimatum'
- correspondence to it" rule for all monitored tickets.
-- I want to add a new "overdue for 27 days, add a 'ultimatum'
- correspondence to it" rule for all _new_ monitored tickets
- without affecting existing ones.
-}
-
-- The user of OrderRequest queue needs to fill a numeric "CF",
- called "Price".
-- On creation, it needs to create following approvals:
- - "Manager" approval if CF.Price is > 1000
- - "President" approval if CF.Price is > 2000
-- When all of "M", "P" are resolved (if any, or if there were none
- to begin with), Create a new approval, "Finance".
-- If any approvals above is rejected, reject the original ticket.
-- If "Finance" is resolved, resolve original ticket.
-- If "Finance" is rejected, create an approval for "CEO".
-- If "CEO" is resolved, resolve the original ticket.
-- If "CEO" is rejected, reject the original ticket.
-
-[RuleAction CreateTicketWithRuleset]
- -> ReleaseMyLockOnRuleset $ruleset
- -> UnlessLockOnRuleset $ruleset
- # i.e. if no active tickets still have a lock on it
- -> ForceCreateTicketWithRuleset $ruleset
-
-[Queue OrderRequest]
- -> Condition: OnCreate
- Action: AddTicketRuleSet "PurchaseApproval"
- # Triggers immediately
-
-[RuleSet: PurchaseApproval]
- -> Condition: OnCreate
- Condition: CF.Price > 1000
- Action: CreateTicketWithRuleset "ManagerApproval"
- -> Condition: OnCreate
- Condition: CF.Price > 2000
- Action: CreateTicketWithRuleset "PresidentApproval"
- -> Condition: OnCreate
- Action: CreateTicketWithRuleset "FinanceApproval"
- -> Condition: OnReject
- Action: DeleteTree
-
-[RuleSet: ManagerApproval]
- -> Condition: OnCreate
- Action: Prohibit Ruleset "FinanceApproval"
- -> Condition: OnResolve
- Action: CreateTicketWithRuleset "FinanceApproval"
- -> Condition: OnReject
- Action: RejectTicket TOP
-
-[RuleSet: PresidentApproval]
- -> Condition: OnCreate
- Action: Prohibit CreateTicketWithRuleset "FinanceApproval"
- -> Condition: OnResolve
- Action: CreateTicketWithRuleset "FinanceApproval"
- -> Condition: OnReject
- Action: RejectTicket TOP
-
-[RuleSet: FinanceApproval]
- -> Condition: OnCreate
- Action: Prohibit RuleSet "CEOApproval"
- -> Condition: OnResolve
- Action: ResolveTicket TOP
- -> Condition: OnReject
- Action: CreateTicketWithRuleset "CEOApproval"
-
-[RuleSet: CEOApproval]
- -> Condition: OnResolve
- Action: ResolveTicket TOP
- -> Condition: OnReject
- Action: RejectTicket TOP
-
-
-
-Prohibit Ticket Operation:
- Ruleset CEOApproval
-
-
-
-
-
-
-
- ,--------.
-[TOP] --> [M] --> [F]
- ` `-> [P] -'
- `
- `-> [X] --> [Y]
-
-
-[TOP] => [Approval]
- -> Queue: B
- -> Rule: yyy
- -> Workflow: W
- -> Stage: Approval
- -> Rule: xxx
-
-isa_ok( $Approval->Type, 'RT::Ticket' );
-is( $Approval->Workflow->Name, 'W' );
-is( $Approval->Stage->Name, 'Approval' );
-
-[Queue: A]
- -> Workflow: W
-
-[Workflow: W]
- -> Stage: TOP
- -> Stage: Approval
- -> Stage: SUCCESS
- -> Stage: FAIL
-
-"RuleCollections"
-
-[Stage: TOP]
- -> Rule: OnCreate RunStage Approval
-
-ok( TicketA->Rules->HasEntry($ApprovalRule) )
-ok( TicketB->Rules->HasEntry($ApprovalRule) )
-
-[Rule: Approval]
- -> Rule: OnResolve RunStage SUCCESS
- -> Rule: OnReject RunStage FAIL
-
-[Stage: SUCCESS]
- -> Rule: OnCreate SetStatus('resolved') TOP
-
-[Stage: FAIL]
- -> Rule: OnCreate SetStatus('rejected') TOP
-
-[Unassociated]
- - Rule FOO: OnAnything {
- CreateTicketIfNotBlocked StageFOO
- AddLink DependedOnBy TOP to Stage1
- AssignRule DoStage2 to Stage1
- AssignRule DoStage3 to Stage1
- }
- - Rule BAR: OnAnything {
- CreateTicketIfNotBlocked StageBAR
- DoSomethingBizzare
- }
-
- ,==> [Stage0] ==>.
- , .
-[TOP] ==> [Stage1] ==> [Stage3]
- ` '
- `==> [Stage2] ==>'
-
-OnTransaction:
- $self->Ticket->Queues->Scrips->Apply
-
-OnTransaction:
- $self->Ticket->Queues->Scrips->Apply
- ->Scrips->Apply
-
-OnTransaction:
- $self->Ticket->Queues->Scrips->Apply
- ->Stages->Scrips->Apply
-
-[QueueX]
- - Rule:
- OnCreate:
- RunRule FOO
-
-[QueueY]
- - Rule:
- OnWhatever:
- RunRule FOO
-
-
-[TOP] => [Stage1] => [Stage2] => [END]
- `- => [Stage3] => [END]
- ` -> [Stage4]
-
-[Stages]
- ->
diff --git a/rt/docs/design_docs/recursive_group_membership_algorithm b/rt/docs/design_docs/recursive_group_membership_algorithm
deleted file mode 100644
index 250b9ad..0000000
--- a/rt/docs/design_docs/recursive_group_membership_algorithm
+++ /dev/null
@@ -1,109 +0,0 @@
-Group A has members 1, 2, 3
-
- Cached members 1 is a member of A via ""
- 2 is a member of A via ""
- 3 is a member of A via ""
-
-
-Group B has members A, 4, 5
-
- Cached members: 4 is a member of B via "" $1
- 5 is a member of B via "" $2
- A is a member of B via "" $3
- 1 is a member of B via "$3" $4
- 2 is a member of B via "$3" $5
- 3 is a member of B via "$3" $6
-
-Group C has members A, B, 6
- 6 is a member of C via "" $7
- A is a member of C via "" $8
- 1 is a member of C via $8 $9
- 2 is a member of C via $8 $10
- 3 is a member of C via $8 $11
- B is a member of C via "" $12
- 4 is a member of C via $12 $13
- 5 is a member of C via $12 $14
- A is a member of C via $12 $15
- 1 is a member of C via $15 $16
- 2 is a member of C via $15 $17
- 3 is a member of C via $15 $18
-
-
-
-Group D has members A, C
-
- A is a member of D via "" $19
- 1 is a member of D via $19 $20
- 2 is a member of D via $19 $21
- 3 is a member of D via $19 $22
- C is a member of D via "" $23
- 6 is a member of D via $23 $24
- A is a member of D via $23 $25
- 1 is a member of D via $25 $26
- 2 is a member of D via $25 $27
- 3 is a member of D via $25 $28
- B is a member of D via $23 $29
- 4 is a member of D via $29 $30
- 5 is a member of D via $29 $31
- A is a member of D via $29 $32
- 1 is a member of D via $32 $33
- 2 is a member of D via $32 $34
- 3 is a member of D via $32 $35
-
-
-
-Adding a new user, 7, to group A.
-
-
- Add the user to group A in the groups table.
-
- Find all entries for group A in the cache table.
-
- For each entry in that list:
- Add "7 is a member of $entry->top via $entry->id"
-
-Deleting a user, 7, from group A:
-
- Remove the user from group A in the groups table.
- find all entries in the cache table where the principal id is user 7 and
- the parent id is A. (requires a self join)
- nuke them
-
- Alternatively:
- find all entries for A in the cache table.
- For each one, find the child whose id is 7.
- Nuke it
-
-
-Adding a group, B to group D.
-
- Add group B as a member of D in the groups table.
- In the cache table:
- $id = Add group B as a member of D via ""
-
- For each member of group B (4, 5, A):
-
- $sid= 4 is a member of D via $id
- $sid= 5 is a member of D via $id
- $sid= A is a member of D via $id
-
- if the member is a group itself, recurse down:
-
- 1 is a member of D via $sid
- 2 is a member of D via $sid
- 3 is a member of D via $sid
-
- Find all places where D is a member of $foo.
- Repeat the above procedure, substituting $foo for D
- and making $id D's id.
-
-Removing B as a member of D:
-
- Remove B as a member of D in the groups table.
- Find all references to D in the pseudogroups table.
- Find all children of D which are B:
- Recurse down with the following algorithm:
- If it's a user, delete it.
- If it's a group, recurse through each member,
- deleting its children and then deleting the
- group itself.
diff --git a/rt/docs/design_docs/rql_parser_machine.graphviz b/rt/docs/design_docs/rql_parser_machine.graphviz
deleted file mode 100644
index 36463ec..0000000
--- a/rt/docs/design_docs/rql_parser_machine.graphviz
+++ /dev/null
@@ -1,32 +0,0 @@
-
-/* GraphViz graph representing the state diagram of the RQL parser.
-*/
-
-digraph G {
-
- PAREN -> PAREN;
- PAREN -> KEYWORD;
- PAREN -> AGGREG;
-
- AGGREG -> KEYWORD;
- AGGREG -> PAREN;
-
- KEYWORD -> OP;
-
- OP -> VALUE;
-
- VALUE -> PAREN;
- VALUE -> AGGREG;
-
-/*
- Blue lines represent added complexity of q[IN (x,y,z)] support.
- The only place that the "blue tree" can be entered is at IN, and
- exited at PAREN.
-*/
- KEYWORD -> IN [color=blue];
- IN -> PAREN [color=blue];
- PAREN -> VALUE [color=blue];
- VALUE -> COMMA [color=blue];
- COMMA -> VALUE [color=blue];
- VALUE -> PAREN [color=blue];
-}
diff --git a/rt/docs/design_docs/rt-mvc b/rt/docs/design_docs/rt-mvc
deleted file mode 100644
index 3518b7d..0000000
--- a/rt/docs/design_docs/rt-mvc
+++ /dev/null
@@ -1,32 +0,0 @@
-Goals:
-
-
- Never write an init block for a page that just views/edits pages
- No style embedded in view/edit pages
-
- Validation / Error display and re-editing.
-
-
-Implementation.
-
-
- For a given object's fields:
-
- print a label for the field
- print the current values for the field
- print an edit widget for create
- print an edit widget for update
-
-
-
- for a given form buttons for "perform the action" "don't perform the main action"
-
-
-Edit widgets
-
-
- text input
- hidden
- fixed enum as { dropdown, select multiple, sleect single, radio}
- checkbox fixed enum
-
diff --git a/rt/docs/design_docs/string-extraction-guide.txt b/rt/docs/design_docs/string-extraction-guide.txt
deleted file mode 100644
index bd60a43..0000000
--- a/rt/docs/design_docs/string-extraction-guide.txt
+++ /dev/null
@@ -1,100 +0,0 @@
-# $File: //depot/RT/rt-devel/docs/design_docs/string-extraction-guide.txt $ $Author: ivan $
-# $Revision: 1.1 $ $Change: 1431 $ $DateTime: 2002/10/15 17:24:45 $
-
-Run 'p4 edit lib/RT/I18N/zh_tw.pm' and 'perl l10n.pl' to add new
-extractions to the zh_tw.pm.
-
-Edit lib/RT/I18N/zh_tw.pm for chinese counterparts.
-
-Attached is a copy of the freshly rewritten string extraction style guide.
-Please point out anything that's unclear or underspecified. I
-localized a number of the core modules in RT 2.1.3 (Starting with
-Queue_Overlay.pm). I only touched a couple of the web templates in the
-Elements/ directory of the web ui.
-
-RT String extraction styleguide:
-
-Web templates:
-
-Templates should use the /l filtering component to call the localisation
-framework
-
-The string Foo!
-
-Should become <&|/l&>Foo!</&>
-
-All newlines should be removed from localized strings, to make it easy to
-grep the codebase for strings to be localized
-
-The string Foo
- Bar
- Baz
-
-Should become <&|/l&>Foo Bar Baz</&>
-
-
-Variable subsititutions should be moved to Locale::MakeText format
-
-The string Hello, <%$name %>
-
-should become <&|/l, $name &>Hello, [_1]</&>
-
-
-Multiple variables work just like single variables
-
-The string You found <%$num%> tickets in queue <%$queue%>
-
-should become <&|/l, $num, $queue &>You found [_1] tickets in queue [_2]</&>
-
-When subcomponents are called in the middle of a phrase, they need to be escaped
-too:
-
-The string <input type="submit" value="New ticket in">&nbsp<& /Elements/SelectNewTicketQueue&>
-
-should become <&|/l, $m->scomp('/Elements/SelectNewTicketQueue')&><input type="submit" value="New ticket in">&nbsp;[_1]</&>
-
-
-
-There are places inside the web ui where strings are defined, which need to be
-localised. it is important to note here that each localized string is split out
-onto its own line, but never split across two lines and two localized strings
-are never included on the same line. It is also important to note
-that this will genereate code which will not work in RT 2.1.3. I need
-to add a bit of framework to make it work in 2.1.4
-
-
-The string <& /Elements/TitleBoxStart, width=> "40%", titleright => "RT $RT::VERSION for $RT::rtname", title => 'Login' &>
-
-should become <& /Elements/TitleBoxStart,
- width=> "40%",
- titleright => loc("RT [_1] for [_2]",$RT::VERSION, $RT::rtname),
- title => loc('Login'),
- &>
-
-
-
-
-
-
-Within RT's core code, every module has a localization handle available through the 'loc' method:
-
-The code return ( $id, "Queue created" );
-
-should become return ( $id, $self->loc("Queue created") );
-
-When returning or localizing a single string, the "extra" set of parenthesis () should be omitted.
-
-The code return ("Subject changed to ". $self->Data );
-
-should become return $self->loc( "Subject changed to [_1]", $self->Data );
-
-
-It is important not to localize the names of rights or statuses within RT's core, as there is logic that depends on them as string identifiers. The proper place to localize these values is when they're presented for display in the web or commandline interfaces.
-
-
-
-
-
---
-http://www.bestpractical.com/products/rt -- Trouble Ticketing. Free.
-
diff --git a/rt/docs/design_docs/subscription-definitions.txt b/rt/docs/design_docs/subscription-definitions.txt
deleted file mode 100755
index deda35c..0000000
--- a/rt/docs/design_docs/subscription-definitions.txt
+++ /dev/null
@@ -1,113 +0,0 @@
-NEW SCRIP NOTES
-
-
-RT Actions:
-
-
- EmailOwnerAsComment
- Send mail to the ticket owner from the queue's comment address
-
- EmailOwnerOrAdminWatchersAsComment
- Send mail to the ticket owner, or if there is no owner, the ticket's admin watchers
- from the queue's comment addresses
-
- EmailAdminWatchersAsComment
- Send mail to the ticket's adminstrative watchers from the queue's comment address
-
-
-
- EmailOwner
- Send mail to the ticket owner from the queue's correspond address
-
- EmailOwnerOrAdminWatchers
- Send mail to the ticket owner, or if there is no owner, the ticket's admin watchers
- from the queue's correspond addresses
-
- EmailAdminWatchers
- Send mail to the ticket's adminstrative watchers from the queue's correspond address
-
- EmailWatchers
- Send mail to the ticket watchers from the queue's correspond address
-
- AutoReply
- Sendmail to the requestor from the queue's correspond address.
-
-
-
-RT Conditions:
- OnCreate
- OnEachTransaction
- OnComment
- OnCorrespond
-
-
-
-
-
-What is an Action?
-
-...some piece of code that can do something whenever a transaction is done.
-The actions shipped with RT sends email and can handle some logic that makes
-sense for some instances. site-specific modules can be dropped in to
-perform special actions.
-
-
-What can an Action do?
-
-- decide whether it's applicable or not
-- prepare
-- commit
-- describe itself
-
-...and if it's a subclass of SendEmail, you can also override a lot.
-
-Currently the schema.mysql contains a list of the basic subscription-related
-actions that will be bundled with RT.
-
-
-What is a Scrip?
-
-...it's an entry in the database that tells that an action is to be
-performed with a certain template and argument. Template and argument
-doesn't make sense in all contexts. A scrip can be limited to transaction
-types; the current implementation allows a comma-separated list (though for
-a "cleaner" schema design, it should be a separate table for this?). It has
-a name and a description.
-
-
-What is a ScripScope?
-
-...an indication of what queues the different Scrips applies to. It should
-be easy to remove/insert ScripScope objects by the admin tools.
-
-
-What is a Watcher?
-
-...it's a request for beeing kept updated on a ticket and/or a queue
-and/or whatever. It is to be used by the Actions. Watcher items can
-easily be enabled/disabled through the `Quiet' attribute. `Type' might
-indicate what emails the watcher wants to get and how to get them.
-
-The Bcc/Cc watchers should be handled by the NotifyWatchers action which is
-run regardless of the Scrips.
-
-
-What is a Template?
-
-...A template is a text template that is to be used for outgoing email -
-or for different use for different actions. One template can be used by
-several Scrips.
-
-
-How does the system determinate whom to send mail to?
-
-The ScripScope table in the DB should indicate whether a Scrip is relevant
-for a queue or not /* TobiX thinks that this might eventually be extended to
-keywords, tickets, etc, and not only Queues */ ... the Scope table should
-indicate whether the Scrip is relevant for a given transaction type ... then
-the given Action should determinate whether it applies or not, and finally
-the Action has to find out (via the Watchers table) whom it applies to, and
-how to contact them ... and the Template tells how the mails that are sent
-out should look like.
-
-
diff --git a/rt/docs/design_docs/ticket_templates b/rt/docs/design_docs/ticket_templates
deleted file mode 100644
index 7850edf..0000000
--- a/rt/docs/design_docs/ticket_templates
+++ /dev/null
@@ -1,16 +0,0 @@
-===Create-Ticket: foo
- Subject: APPROVE <%TOP-Subject%>
- Status: status
- Queue: <%TOP-Queue%>
- Owner: <%TOP-Owner%>
- Depends-on: <%TOP-Id%>
- Child-of: <%TOP-Id%>
- Refers-to: <%TOP-Id%>
- Content-Type: text/plain
- Content: This is content
-blah
-blah
-blah
-===Create-Ticket: bar
-Subject: <%foo-Subject%>
-
diff --git a/rt/docs/design_docs/users b/rt/docs/design_docs/users
deleted file mode 100644
index 71c4476..0000000
--- a/rt/docs/design_docs/users
+++ /dev/null
@@ -1,14 +0,0 @@
-RT2 makes everybody a user. some sites won't like this. there
-should be away to make an "anonymous" user who the mailgate makes
-the requestor for all mailed in tickets. it would then set the
-ticket 'requestor' watcher's alternate email address to the real
-requestor's email.
-
-additionally, eventually, users will need to be deleted. RT doesn't
-want any user deleted. Instead, there will be a flag in the user's
-entry in the users table called 'Disabled.' Disabled users will
-not be able to be granted rights.
-
- The process of disabling a user should remove their acls and
-should force the giving away of their tickets or reject the disabling.
-
diff --git a/rt/docs/rt3-schema-relationships.dot b/rt/docs/rt3-schema-relationships.dot
deleted file mode 100644
index e290f8b..0000000
--- a/rt/docs/rt3-schema-relationships.dot
+++ /dev/null
@@ -1,89 +0,0 @@
-digraph g {
-graph [
-rankdir = "RL",
- concentrate = true,
-ratio = auto
-];
-node [
-fontsize = "18",
-shape = record, fontsize = 18
-];
-edge [
-];
-
-"Records" [shape = record, fontsize = 18, label = "(Any RT::Record)" ];
-"Records" -> "Principals" [label = "Creator -> id"];
-"ACL" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"ACL" -> "Principals" [label="PrincipalId -> id"];
-"ACL" -> "Principals" [label="DelegatedBy -> id"];
-"ACL" -> "ACL" [label="DelegatedFrom -> id"];
-
-"Attachments" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Attachments" -> "Transactions" [label="TransactionId -> id"];
-"Attachments" -> "Attachments" [label="Parent -> id"];
-
-"CachedGroupMemers" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"CachedGroupMemers" -> "Groups" [label="GroupId -> id", weight=2];
-"CachedGroupMemers" -> "Principals" [label="MemberId -> id"];
-"CachedGroupMemers" -> "CachedGroupMemers" [label="Via -> id"];
-"CachedGroupMemers" -> "Groups" [label="ImmediateParentId -> id"];
-
-"CustomFields" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"CustomFieldValues" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"CustomFieldValues" -> "CustomFields" [label="CustomField -> id"];
-
-"GroupMembers" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"GroupMembers" -> "Groups" [label="GroupId -> id", weight=2];
-"GroupMembers" -> "Principals" [label="MemberId -> id", weight = 2];
-
-"Groups" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Groups" -> "Principals" [label="Groups.id -> id"];
-
-"Links" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Links" -> "Tickets" [label="LocalBase => id (usually)", style="dotted"];
-"Links" -> "Tickets" [label="LocalTarget => id (usually)", style="dotted"];
-
-"Principals" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"Attributes" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Attributes" -> "Records" [label="ObjectId -> id"];
-
-"Queues" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"ScripActions" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"ScripConditions" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"Scrips" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Scrips" -> "ScripConditions" [label="ScripCondition -> id"];
-"Scrips" -> "ScripActions" [label="ScripAction -> id"];
-"Scrips" -> "Templates" [label="Template -> id"];
-"Scrips" -> "Queues" [label="Queue -> id"];
-
-"Templates" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Templates" -> "Queues" [label ="Queue -> id" ];
-
-"ObjectCustomFields" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"ObjectCustomFields" -> "CustomFields" [label="CustomField -> id"];
-"ObjectCustomFields" -> "Records" [label="ObjectId -> id"];
-
-"ObjectCustomFieldValues" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"ObjectCustomFieldValues" -> "CustomFields" [label="CustomField -> id"];
-"ObjectCustomFieldValues" -> "Records" [label="ObjectId -> id"];
-
-"Tickets" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Tickets" -> "Tickets" [label="EffectiveId -> id"];
-"Tickets" -> "Principals" [label="Owner -> id"];
-"Queues" -> "Tickets" [style="invis"];
-"Tickets" -> "Queues" [label="Queue -> id"];
-
-"Transactions" [shape = record, fontsize = 18, label = "<col0> \N " ];
-"Transactions" -> "Records" [label="ObjectId -> id"];
-
-"Users" [shape = record, fontsize = 18, label = "<col0> \N " ];
-
-"Users" -> "Principals" [label="id -> id"];
-
-
-}
diff --git a/rt/etc/RT_Config.pm b/rt/etc/RT_Config.pm
deleted file mode 100644
index 5386a8e..0000000
--- a/rt/etc/RT_Config.pm
+++ /dev/null
@@ -1,374 +0,0 @@
-#
-# WARNING: NEVER EDIT RT_Config.pm. Instead, copy any sections you want to change to RT_SiteConfig.pm
-# and edit them there.
-#
-
-package RT;
-
-=head1 NAME
-
-RT::Config
-
-=for testing
-
-use RT::Config;
-
-=cut
-
-# {{{ Base Configuration
-
-# $rtname the string that RT will look for in mail messages to
-# figure out what ticket a new piece of mail belongs to
-
-# Your domain name is recommended, so as not to pollute the namespace.
-# once you start using a given tag, you should probably never change it.
-# (otherwise, mail for existing tickets won't get put in the right place
-
-Set($rtname , "example.com");
-
-# You should set this to your organization's DNS domain. For example,
-# fsck.com or asylum.arkham.ma.us. It's used by the linking interface to
-# guarantee that ticket URIs are unique and easy to construct.
-
-Set($Organization , "example.com");
-
-# $user_passwd_min defines the minimum length for user passwords. Setting
-# it to 0 disables this check
-Set($MinimumPasswordLength , "5");
-
-# $Timezone is used to convert times entered by users into GMT and back again
-# It should be set to a timezone recognized by your local unix box.
-Set($Timezone , 'US/Eastern');
-
-# }}}
-
-# }}}
-
-# {{{ Database Configuration
-
-# Database driver beeing used. Case matters
-# Valid types are "mysql", "Oracle" and "Pg"
-
-Set($DatabaseType , 'mysql');
-
-# The domain name of your database server
-# If you're running mysql and it's on localhost,
-# leave it blank for enhanced performance
-Set($DatabaseHost , 'localhost');
-Set($DatabaseRTHost , 'localhost');
-
-# The port that your database server is running on. Ignored unless it's
-# a positive integer. It's usually safe to leave this blank
-Set($DatabasePort , '');
-
-#The name of the database user (inside the database)
-Set($DatabaseUser , 'rt_user');
-
-# Password the DatabaseUser should use to access the database
-Set($DatabasePassword , 'rt_pass');
-
-# The name of the RT's database on your database server
-Set($DatabaseName , 'rt3');
-
-# If you're using Postgres and have compiled in SSL support,
-# set DatabaseRequireSSL to 1 to turn on SSL communication
-Set($DatabaseRequireSSL , undef);
-
-# }}}
-
-# {{{ Incoming mail gateway configuration
-
-# OwnerEmail is the address of a human who manages RT. RT will send
-# errors generated by the mail gateway to this address. This address
-# should _not_ be an address that's managed by your RT instance.
-
-Set($OwnerEmail , 'root');
-
-# If $LoopsToRTOwner is defined, RT will send mail that it believes
-# might be a loop to $RT::OwnerEmail
-
-Set($LoopsToRTOwner , 1);
-
-# If $StoreLoopss is defined, RT will record messages that it believes
-# to be part of mail loops.
-# As it does this, it will try to be careful not to send mail to the
-# sender of these messages
-
-Set($StoreLoops , undef);
-
-# $MaxAttachmentSize sets the maximum size (in bytes) of attachments stored
-# in the database.
-
-# For mysql and oracle, we set this size at 10 megabytes.
-# If you're running a postgres version earlier than 7.1, you will need
-# to drop this to 8192. (8k)
-
-Set($MaxAttachmentSize , 10000000);
-
-# $TruncateLongAttachments: if this is set to a non-undef value,
-# RT will truncate attachments longer than MaxAttachmentLength.
-
-Set($TruncateLongAttachments , undef);
-
-# $DropLongAttachments: if this is set to a non-undef value,
-# RT will silently drop attachments longer than MaxAttachmentLength.
-
-Set($DropLongAttachments , undef);
-
-# If $ParseNewMessageForTicketCcs is true, RT will attempt to divine
-# Ticket 'Cc' watchers from the To and Cc lines of incoming messages
-# Be forewarned that if you have _any_ addresses which forward mail to
-# RT automatically and you enable this option without modifying
-# "RTAddressRegexp" below, you will get yourself into a heap of trouble.
-
-Set($ParseNewMessageForTicketCcs , undef);
-
-# RTAddressRegexp is used to make sure RT doesn't add itself as a ticket CC if
-# the setting above is enabled.
-
-Set($RTAddressRegexp , '^rt\@example.com$');
-
-# RT provides functionality which allows the system to rewrite
-# incoming email addresses. In its simplest form,
-# you can substitute the value in CanonicalizeEmailAddressReplace
-# for the value in CanonicalizeEmailAddressMatch
-# (These values are passed to the CanonicalizeEmailAddress subroutine in RT/User.pm)
-# By default, that routine performs a s/$Match/$Replace/gi on any address passed to it
-
-Set($CanonicalizeEmailAddressMatch , 'subdomain.example.com$');
-Set($CanonicalizeEmailAddressReplace , 'example.com');
-
-# If $SenderMustExistInExternalDatabase is true, RT will refuse to
-# create non-privileged accounts for unknown users if you are using
-# the "LookupSenderInExternalDatabase" option.
-# Instead, an error message will be mailed and RT will forward the
-# message to $RTOwner.
-#
-# If you are not using $LookupSenderInExternalDatabase, this option
-# has no effect.
-#
-# If you define an AutoRejectRequest template, RT will use this
-# template for the rejection message.
-
-Set($SenderMustExistInExternalDatabase , undef);
-
-# }}}
-
-# {{{ Outgoing mail configuration
-
-# RT is designed such that any mail which already has a ticket-id associated
-# with it will get to the right place automatically.
-
-# $CorrespondAddress and $CommentAddress are the default addresses
-# that will be listed in From: and Reply-To: headers of correspondence
-# and comment mail tracked by RT, unless overridden by a queue-specific
-# address.
-
-Set($CorrespondAddress , 'RT_CorrespondAddressNotSet');
-
-Set($CommentAddress , 'RT_CommentAddressNotSet');
-
-#Sendmail Configuration
-
-# $MailCommand defines which method RT will use to try to send mail
-# We know that 'sendmailpipe' works fairly well.
-# If 'sendmailpipe' doesn't work well for you, try 'sendmail'
-#
-# Note that you should remove the '-t' from $SendmailArguments
-# if you use 'sendmail rather than 'sendmailpipe'
-
-Set($MailCommand , 'sendmailpipe');
-
-# $SendmailArguments defines what flags to pass to $Sendmail
-# assuming you picked 'sendmail' or 'sendmailpipe' as the $MailCommand above.
-# If you picked 'sendmailpipe', you MUST add a -t flag to $SendmailArguments
-
-# These options are good for most sendmail wrappers and workalikes
-Set($SendmailArguments , "-oi -t");
-
-# These arguments are good for sendmail brand sendmail 8 and newer
-#Set($SendmailArguments,"-oi -t -ODeliveryMode=b -OErrorMode=m");
-
-# If you selected 'sendmailpipe' above, you MUST specify the path
-# to your sendmail binary in $SendmailPath.
-# !! If you did not # select 'sendmailpipe' above, this has no effect!!
-Set($SendmailPath , "/usr/sbin/sendmail");
-
-# By default, RT sets the outgoing mail's "From:" header to
-# "SenderName via RT". Setting this option to 0 disables it.
-
-Set($UseFriendlyFromLine , 1);
-
-# sprintf() format of the friendly 'From:' header; its arguments
-# are SenderName and SenderEmailAddress.
-Set($FriendlyFromLineFormat , "\"%s via RT\" <%s>");
-
-# RT can optionally set a "Friendly" 'To:' header when sending messages to
-# Ccs or AdminCcs (rather than having a blank 'To:' header.
-
-# This feature DOES NOT WORK WITH SENDMAIL[tm] BRAND SENDMAIL
-# If you are using sendmail, rather than postfix, qmail, exim or some other MTA,
-# you _must_ disable this option.
-
-Set($UseFriendlyToLine , 0);
-
-# sprintf() format of the friendly 'From:' header; its arguments
-# are WatcherType and TicketId.
-Set($FriendlyToLineFormat, "\"%s of $RT::rtname Ticket #%s\":;");
-
-# By default RT doesn't notify the person who performs an update, as they
-# already know what they've done. If you'd like to change this behaviour,
-# Set $NotifyActor to 1
-
-Set($NotifyActor, 0);
-
-
-# }}}
-
-# {{{ Logging
-
-# Logging. The default is to log anything except debugging
-# information to syslog. Check the Log::Dispatch POD for
-# information about how to get things by syslog, mail or anything
-# else, get debugging info in the log, etc.
-
-# It might generally make
-# sense to send error and higher by email to some administrator.
-# If you do this, be careful that this email isn't sent to this RT instance.
-
-# the minimum level error that will be logged to the specific device.
-# levels from lowest to highest:
-# debug info notice warning error critical alert emergency
-
-# Mail loops will generate a critical log message.
-Set($LogToSyslog , 'debug');
-Set($LogToScreen , 'error');
-Set($LogToFile , undef);
-Set($LogDir, '/opt/rt3/var/log');
-Set($LogToFileNamed , "rt.log"); #log to rt.log
-
-# }}}
-
-# {{{ Web interface configuration
-
-# Define the directory name to be used for images in rt web
-# documents.
-
-# If you're putting the web ui somewhere other than at the root of
-# your server
-# $WebPath requires a leading / but no trailing /
-
-Set($WebPath , "");
-
-# This is the Scheme, server and port for constructing urls to webrt
-# $WebBaseURL doesn't need a trailing /
-
-Set($WebBaseURL , "http://RT::WebBaseURL.not.configured:80");
-
-Set($WebURL , $WebBaseURL . $WebPath . "/");
-
-# $WebImagesURL points to the base URL where RT can find its images.
-
-Set($WebImagesURL , $WebURL . "NoAuth/images/");
-
-# $RTLogoURL points to the URL of the RT logo displayed in the web UI
-
-Set($LogoURL , $WebImagesURL . "rt.jpg");
-
-# For message boxes, set the entry box width and what type of wrapping
-# to use.
-#
-# Default width: 72
-Set($MessageBoxWidth , 72);
-
-# Default wrapping: "HARD" (choices "SOFT", "HARD")
-Set($MessageBoxWrap, "HARD");
-
-# if TrustHTMLAttachments is not defined, we will display them
-# as text. This prevents malicious HTML and javascript from being
-# sent in a request (although there is probably more to it than that)
-Set($TrustHTMLAttachments , undef);
-
-# If $WebExternalAuth is defined, RT will defer to the environment's
-# REMOTE_USER variable.
-
-Set($WebExternalAuth , undef);
-
-# If $WebFallbackToInternalAuth is undefined, the user is allowed a chance
-# of fallback to the login screen, even if REMOTE_USER failed.
-
-Set($WebFallbackToInternalAuth , undef);
-
-# $WebExternalGecos means to match 'gecos' field as the user identity);
-# useful with mod_auth_pwcheck and IIS Integrated Windows logon.
-
-Set($WebExternalGecos , undef);
-
-# $WebExternalAuto will create users under the same name as REMOTE_USER
-# upon login, if it's missing in the Users table.
-
-Set($WebExternalAuto , undef);
-
-# $WebSessionClass is the class you wish to use for managing Sessions.
-# It defaults to use your SQL database, but if you are using MySQL 3.x and
-# plans to use non-ascii Queue names, uncomment and add this line to
-# RT_SiteConfig.pm will prevent session corruption.
-
-# Set($WebSessionClass , 'Apache::Session::File');
-
-# $MaxInlineBody is the maximum attachment size that we want to see
-# inline when viewing a transaction. 13456 is a random sane-sounding
-# default.
-
-Set($MaxInlineBody, 13456);
-
-# $MyTicketsLength is the length of the table on the front page.
-# For some people, the default of 10 isn't big enough to get a feel for
-# how much work needs to be done before you get some time off.
-
-Set($MyTicketsLength, 10);
-
-# @MasonParameters is the list of parameters for the constructor of
-# HTML::Mason's Apache or CGI Handler. This is normally only useful
-# for debugging, eg. profiling individual components with
-# (preamble => 'my $p = MasonX::Profiler->new($m, $r);');
-
-@MasonParameters = () unless (@MasonParameters);
-
-# }}}
-
-# {{{ RT UTF-8 Settings
-
-# An array that contains languages supported by RT's internationalization
-# interface. Defaults to all *.po lexicons; set it to qw(en ja) will make
-# RT bilingual instead of multilingual, but will save same memory.
-
-@LexiconLanguages = qw(*) unless (@LexiconLanguages);
-
-# An array that contains default encodings used to guess which charset
-# an attachment uses if not specified. Must be recognized by
-# Encode::Guess.
-
-@EmailInputEncodings = qw(utf-8 iso-8859-1 us-ascii) unless (@EmailInputEncodings);
-
-# The charset for localized email. Must be recognized by Encode.
-
-Set($EmailOutputEncoding , 'utf-8');
-
-# }}}
-
-# {{{ RT Date Handling Options (for Time::ParseDate)
-
-# Set this to 1 if your local date convention looks like "dd/mm/yy"
-# instead of "mm/dd/yy".
-
-Set($DateDayBeforeMonth , 1);
-
-# Should "Tuesday" default to meaning "Next Tuesday" or "Last Tuesday"?
-# Set to 0 for "Next" or 1 for "Last".
-
-Set($AmbiguousDayInPast , 1);
-
-# }}}
-
-1;
diff --git a/rt/etc/RT_Config.pm.in b/rt/etc/RT_Config.pm.in
deleted file mode 100644
index 773e3e2..0000000
--- a/rt/etc/RT_Config.pm.in
+++ /dev/null
@@ -1,493 +0,0 @@
-#
-# WARNING: NEVER EDIT RT_Config.pm. Instead, copy any sections you want to change to RT_SiteConfig.pm
-# and edit them there.
-#
-
-package RT;
-
-=head1 NAME
-
-RT::Config
-
-=for testing
-
-use RT::Config;
-
-=cut
-
-# {{{ Base Configuration
-
-# $rtname is the string that RT will look for in mail messages to
-# figure out what ticket a new piece of mail belongs to
-
-# Your domain name is recommended, so as not to pollute the namespace.
-# once you start using a given tag, you should probably never change it.
-# (otherwise, mail for existing tickets won't get put in the right place
-
-Set($rtname , "example.com");
-
-
-# This regexp controls what subject tags RT recognizes as its own.
-# If you're not dealing with historical $rtname values, you'll likely
-# never have to enable this feature.
-#
-# Be VERY CAREFUL with it. Note that it overrides $rtname for subject
-# token matching and that you should use only "non-capturing" parenthesis
-# grouping. For example:
-#
-# Set($EmailSubjectTagRegex, qr/(?:example.com|example.org)/ );
-#
-# and NOT
-#
-# Set($EmailSubjectTagRegex, qr/(example.com|example.org)/ );
-#
-# This setting would make RT behave exactly as it does without the
-# setting enabled.
-#
-# Set($EmailSubjectTagRegex, qr/\Q$rtname\E/ );
-
-
-
-# You should set this to your organization's DNS domain. For example,
-# fsck.com or asylum.arkham.ma.us. It's used by the linking interface to
-# guarantee that ticket URIs are unique and easy to construct.
-
-Set($Organization , "example.com");
-
-# $user_passwd_min defines the minimum length for user passwords. Setting
-# it to 0 disables this check
-Set($MinimumPasswordLength , "5");
-
-# $Timezone is used to convert times entered by users into GMT and back again
-# It should be set to a timezone recognized by your local unix box.
-Set($Timezone , 'US/Eastern');
-
-# }}}
-
-# {{{ Database Configuration
-
-# Database driver beeing used. Case matters
-# Valid types are "mysql", "Oracle" and "Pg"
-
-Set($DatabaseType , '@DB_TYPE@');
-
-# The domain name of your database server
-# If you're running mysql and it's on localhost,
-# leave it blank for enhanced performance
-Set($DatabaseHost , '@DB_HOST@');
-Set($DatabaseRTHost , '@DB_RT_HOST@');
-
-# The port that your database server is running on. Ignored unless it's
-# a positive integer. It's usually safe to leave this blank
-Set($DatabasePort , '@DB_PORT@');
-
-#The name of the database user (inside the database)
-Set($DatabaseUser , '@DB_RT_USER@');
-
-# Password the DatabaseUser should use to access the database
-Set($DatabasePassword , '@DB_RT_PASS@');
-
-# The name of the RT's database on your database server
-Set($DatabaseName , '@DB_DATABASE@');
-
-# If you're using Postgres and have compiled in SSL support,
-# set DatabaseRequireSSL to 1 to turn on SSL communication
-Set($DatabaseRequireSSL , undef);
-
-# }}}
-
-# {{{ Incoming mail gateway configuration
-
-# OwnerEmail is the address of a human who manages RT. RT will send
-# errors generated by the mail gateway to this address. This address
-# should _not_ be an address that's managed by your RT instance.
-
-Set($OwnerEmail , 'root');
-
-# If $LoopsToRTOwner is defined, RT will send mail that it believes
-# might be a loop to $RT::OwnerEmail
-
-Set($LoopsToRTOwner , 1);
-
-# If $StoreLoops is defined, RT will record messages that it believes
-# to be part of mail loops.
-# As it does this, it will try to be careful not to send mail to the
-# sender of these messages
-
-Set($StoreLoops , undef);
-
-# $MaxAttachmentSize sets the maximum size (in bytes) of attachments stored
-# in the database.
-
-# For mysql and oracle, we set this size at 10 megabytes.
-# If you're running a postgres version earlier than 7.1, you will need
-# to drop this to 8192. (8k)
-
-Set($MaxAttachmentSize , 10000000);
-
-# $TruncateLongAttachments: if this is set to a non-undef value,
-# RT will truncate attachments longer than MaxAttachmentSize.
-
-Set($TruncateLongAttachments , undef);
-
-# $DropLongAttachments: if this is set to a non-undef value,
-# RT will silently drop attachments longer than MaxAttachmentSize.
-
-Set($DropLongAttachments , undef);
-
-# If $ParseNewMessageForTicketCcs is true, RT will attempt to divine
-# Ticket 'Cc' watchers from the To and Cc lines of incoming messages
-# Be forewarned that if you have _any_ addresses which forward mail to
-# RT automatically and you enable this option without modifying
-# "RTAddressRegexp" below, you will get yourself into a heap of trouble.
-
-Set($ParseNewMessageForTicketCcs , undef);
-
-# RTAddressRegexp is used to make sure RT doesn't add itself as a ticket CC if
-# the setting above is enabled.
-
-Set($RTAddressRegexp , '^rt\@example.com$');
-
-# RT provides functionality which allows the system to rewrite
-# incoming email addresses. In its simplest form,
-# you can substitute the value in CanonicalizeEmailAddressReplace
-# for the value in CanonicalizeEmailAddressMatch
-# (These values are passed to the CanonicalizeEmailAddress subroutine in RT/User.pm)
-# By default, that routine performs a s/$Match/$Replace/gi on any address passed to it
-
-#Set($CanonicalizeEmailAddressMatch , '@subdomain\.example\.com$');
-#Set($CanonicalizeEmailAddressReplace , '@example.com');
-
-# set this to true and the create new user page will use the values that you
-# enter in the form but use the function CanonicalizeUserInfo in User_Local.pm
-Set($CanonicalizeOnCreate , 0);
-
-# If $SenderMustExistInExternalDatabase is true, RT will refuse to
-# create non-privileged accounts for unknown users if you are using
-# the "LookupSenderInExternalDatabase" option.
-# Instead, an error message will be mailed and RT will forward the
-# message to $RTOwner.
-#
-# If you are not using $LookupSenderInExternalDatabase, this option
-# has no effect.
-#
-# If you define an AutoRejectRequest template, RT will use this
-# template for the rejection message.
-
-Set($SenderMustExistInExternalDatabase , undef);
-
-# }}}
-
-# {{{ Outgoing mail configuration
-
-# RT is designed such that any mail which already has a ticket-id associated
-# with it will get to the right place automatically.
-
-# $CorrespondAddress and $CommentAddress are the default addresses
-# that will be listed in From: and Reply-To: headers of correspondence
-# and comment mail tracked by RT, unless overridden by a queue-specific
-# address.
-
-Set($CorrespondAddress , 'RT_CorrespondAddressNotSet');
-
-Set($CommentAddress , 'RT_CommentAddressNotSet');
-
-#Sendmail Configuration
-
-# $MailCommand defines which method RT will use to try to send mail
-# We know that 'sendmailpipe' works fairly well.
-# If 'sendmailpipe' doesn't work well for you, try 'sendmail'
-#
-# Note that you should remove the '-t' from $SendmailArguments
-# if you use 'sendmail' rather than 'sendmailpipe'
-
-Set($MailCommand , 'sendmailpipe');
-
-# $SendmailArguments defines what flags to pass to $Sendmail
-# assuming you picked 'sendmail' or 'sendmailpipe' as the $MailCommand above.
-# If you picked 'sendmailpipe', you MUST add a -t flag to $SendmailArguments
-
-# These options are good for most sendmail wrappers and workalikes
-Set($SendmailArguments , "-oi -t");
-
-# These arguments are good for sendmail brand sendmail 8 and newer
-#Set($SendmailArguments,"-oi -t -ODeliveryMode=b -OErrorMode=m");
-
-# If you selected 'sendmailpipe' above, you MUST specify the path
-# to your sendmail binary in $SendmailPath.
-# !! If you did not # select 'sendmailpipe' above, this has no effect!!
-Set($SendmailPath , "/usr/sbin/sendmail");
-
-# By default, RT sets the outgoing mail's "From:" header to
-# "SenderName via RT". Setting this option to 0 disables it.
-
-Set($UseFriendlyFromLine , 1);
-
-# sprintf() format of the friendly 'From:' header; its arguments
-# are SenderName and SenderEmailAddress.
-Set($FriendlyFromLineFormat , "\"%s via RT\" <%s>");
-
-# RT can optionally set a "Friendly" 'To:' header when sending messages to
-# Ccs or AdminCcs (rather than having a blank 'To:' header.
-
-# This feature DOES NOT WORK WITH SENDMAIL[tm] BRAND SENDMAIL
-# If you are using sendmail, rather than postfix, qmail, exim or some other MTA,
-# you _must_ disable this option.
-
-Set($UseFriendlyToLine , 0);
-
-# sprintf() format of the friendly 'From:' header; its arguments
-# are WatcherType and TicketId.
-Set($FriendlyToLineFormat, "\"%s of $RT::rtname Ticket #%s\":;");
-
-# By default, RT doesn't notify the person who performs an update, as they
-# already know what they've done. If you'd like to change this behaviour,
-# Set $NotifyActor to 1
-
-Set($NotifyActor, 0);
-
-# By default, RT records each message it sends out to its own internal database.# To change this behaviour, set $RecordOutgoingEmail to 0
-
-Set($RecordOutgoingEmail, 1);
-
-# }}}
-
-# {{{ Logging
-
-# Logging. The default is to log anything except debugging
-# information to syslog. Check the Log::Dispatch POD for
-# information about how to get things by syslog, mail or anything
-# else, get debugging info in the log, etc.
-
-# It might generally make
-# sense to send error and higher by email to some administrator.
-# If you do this, be careful that this email isn't sent to this RT instance.
-
-# the minimum level error that will be logged to the specific device.
-# levels from lowest to highest:
-# debug info notice warning error critical alert emergency
-
-# Mail loops will generate a critical log message.
-Set($LogToSyslog , 'debug');
-Set($LogToScreen , 'error');
-Set($LogToFile , undef);
-Set($LogDir, '@RT_LOG_PATH@');
-Set($LogToFileNamed , "rt.log"); #log to rt.log
-
-# On Solaris or UnixWare, set to ( socket => 'inet' ). Options here
-# override any other options RT passes to Log::Dispatch::Syslog.
-# Other interesting flags include facility and logopt. (See the
-# Log::Dispatch::Syslog documentation for more information.) (Maybe
-# ident too, if you have multiple RT installations.)
-
-@LogToSyslogConf = () unless (@LogToSyslogConf);
-
-# }}}
-
-# {{{ Web interface configuration
-
-# Define the directory name to be used for images in rt web
-# documents.
-
-# If you're putting the web ui somewhere other than at the root of
-# your server
-# $WebPath requires a leading / but no trailing /
-
-Set($WebPath , "");
-
-# This is the Scheme, server and port for constructing urls to webrt
-# $WebBaseURL doesn't need a trailing /
-
-Set($WebBaseURL , "http://localhost");
-
-Set($WebURL , $WebBaseURL . $WebPath . "/");
-
-# $WebImagesURL points to the base URL where RT can find its images.
-
-Set($WebImagesURL , $WebPath . "/NoAuth/images/");
-
-# $LogoURL points to the URL of the RT logo displayed in the web UI
-
-Set($LogoURL , $WebImagesURL . "bplogo.gif");
-
-# WebNoAuthRegex - What portion of RT's URLspace should not require
-# authentication.
-Set($WebNoAuthRegex, qr!^(?:/+NoAuth/|
- /+REST/\d+\.\d+/NoAuth/)!x );
-
-# For message boxes, set the entry box width and what type of wrapping
-# to use.
-#
-# Default width: 72
-Set($MessageBoxWidth , 72);
-
-# Default wrapping: "HARD" (choices "SOFT", "HARD")
-Set($MessageBoxWrap, "HARD");
-
-# if TrustHTMLAttachments is not defined, we will display them
-# as text. This prevents malicious HTML and javascript from being
-# sent in a request (although there is probably more to it than that)
-Set($TrustHTMLAttachments , undef);
-
-# Should RT redistribute correspondence that it identifies as
-# machine generated? A true value (the default) will do so, setting
-# this to '0' will cause no such messages to be redistributed.
-# You can also use 'privileged', which will redistribute only to
-# privileged users. This is seful if you get malformed bounces caused by
-# autocreated requestors with bogus addresses.
-Set($RedistributeAutoGeneratedMessages, 1);
-
-# If PreferRichText is set to a true value, RT will show HTML/Rich text
-# messages in preference to their plaintext alternatives. RT "scrubs" the
-# html to show only a minimal subset of HTML to avoid possible contamination
-# by cross-site-scripting attacks.
-Set($PreferRichText, undef);
-
-# If $WebExternalAuth is defined, RT will defer to the environment's
-# REMOTE_USER variable.
-
-Set($WebExternalAuth , undef);
-
-# If $WebFallbackToInternalAuth is undefined, the user is allowed a chance
-# of fallback to the login screen, even if REMOTE_USER failed.
-
-Set($WebFallbackToInternalAuth , undef);
-
-# $WebExternalGecos means to match 'gecos' field as the user identity);
-# useful with mod_auth_pwcheck and IIS Integrated Windows logon.
-
-Set($WebExternalGecos , undef);
-
-# $WebExternalAuto will create users under the same name as REMOTE_USER
-# upon login, if it's missing in the Users table.
-
-Set($WebExternalAuto , undef);
-
-# $WebSessionClass is the class you wish to use for managing Sessions.
-# It defaults to use your SQL database, but if you are using MySQL 3.x and
-# plans to use non-ascii Queue names, uncomment and add this line to
-# RT_SiteConfig.pm will prevent session corruption.
-
-# Set($WebSessionClass , 'Apache::Session::File');
-
-# By default, RT clears its database cache after every page view.
-# This ensures that you've always got the most current information
-# when working in a multi-process (mod_perl or FastCGI) Environment
-# Setting $WebFlushDbCacheEveryRequest to '0' will turn this off,
-# which will speed RT up a bit, at the expense of a tiny bit of data
-# accuracy
-
-Set($WebFlushDbCacheEveryRequest, '1');
-
-
-# $MaxInlineBody is the maximum attachment size that we want to see
-# inline when viewing a transaction. 13456 is a random sane-sounding
-# default.
-
-Set($MaxInlineBody, 13456);
-
-# $MyTicketsLength is the length of the owned tickets table on the
-# front page. For some people, the default of 10 isn't big enough
-# to get a feel for how much work needs to be done before you get
-# some time off.
-
-Set($MyTicketsLength, 10);
-
-# $MyRequestsLength is the length of the requested tickets table
-# on the front page.
-
-Set($MyRequestsLength, 10);
-
-# @MasonParameters is the list of parameters for the constructor of
-# HTML::Mason's Apache or CGI Handler. This is normally only useful
-# for debugging, eg. profiling individual components with:
-# use MasonX::Profiler; # available on CPAN
-# @MasonParameters = (preamble => 'my $p = MasonX::Profiler->new($m, $r);');
-
-@MasonParameters = () unless (@MasonParameters);
-
-# $DefaultSearchResultFormat is the default format for RT search results
-Set ($DefaultSearchResultFormat, qq{
- '<B><A HREF="$RT::WebPath/Ticket/Display.html?id=__id__">__id__</a></B>/TITLE:#',
- '<B><A HREF="$RT::WebPath/Ticket/Display.html?id=__id__">__Subject__</a></B>/TITLE:Subject',
- Status,
- QueueName,
- OwnerName,
- Priority,
- '__NEWLINE__',
- '',
- '<small>__Requestors__</small>',
- '<small>__CreatedRelative__</small>',
- '<small>__ToldRelative__</small>',
- '<small>__LastUpdatedRelative__</small>',
- '<small>__TimeLeft__</small>'});
-
-
-# }}}
-
-# {{{ RT UTF-8 Settings
-
-# An array that contains languages supported by RT's internationalization
-# interface. Defaults to all *.po lexicons; setting it to qw(en ja) will make
-# RT bilingual instead of multilingual, but will save some memory.
-
-@LexiconLanguages = qw(*) unless (@LexiconLanguages);
-
-# An array that contains default encodings used to guess which charset
-# an attachment uses if not specified. Must be recognized by
-# Encode::Guess.
-
-@EmailInputEncodings = qw(utf-8 iso-8859-1 us-ascii) unless (@EmailInputEncodings);
-
-# The charset for localized email. Must be recognized by Encode.
-
-Set($EmailOutputEncoding , 'utf-8');
-
-# }}}
-
-# {{{ RT Date Handling Options (for Time::ParseDate)
-
-# Set this to 1 if your local date convention looks like "dd/mm/yy"
-# instead of "mm/dd/yy".
-
-Set($DateDayBeforeMonth , 1);
-
-# Should "Tuesday" default to meaning "Next Tuesday" or "Last Tuesday"?
-# Set to 0 for "Next" or 1 for "Last".
-
-Set($AmbiguousDayInPast , 1);
-
-# }}}
-
-# {{{ Miscellaneous RT Settings
-
-# You can define new statuses and even reorder existing statuses here.
-# WARNING. DO NOT DELETE ANY OF THE DEFAULT STATUSES. If you do, RT
-# will break horribly.
-
-@ActiveStatus = qw(new open stalled) unless @ActiveStatus;
-@InactiveStatus = qw(resolved rejected deleted) unless @InactiveStatus;
-
-# }}}
-
-
-# {{{ Development Mode
-#
-# RT comes with a "Development mode" setting.
-# This setting, as a convenience for developers, turns on
-# all sorts of development options that you most likely don't want in
-# production:
-#
-# * Turns off Mason's 'static_source' directive. By default, you can't
-# edit RT's web ui components on the fly and have RT magically pick up
-# your changes. (It's a big performance hit)
-#
-# * More to come
-#
-
-Set($DevelMode, '@RT_DEVEL_MODE@');
-
-# }}}
-
-
-1;
diff --git a/rt/etc/RT_SiteConfig.pm b/rt/etc/RT_SiteConfig.pm
deleted file mode 100644
index affd36b..0000000
--- a/rt/etc/RT_SiteConfig.pm
+++ /dev/null
@@ -1,40 +0,0 @@
-# Any configuration directives you include here will override
-# RT's default configuration file, RT_Config.pm
-#
-# To include a directive here, just copy the equivalent statement
-# from RT_Config.pm and change the value. We've included a single
-# sample value below.
-#
-# This file is actually a perl module, so you can include valid
-# perl code, as well.
-#
-# The converse is also true, if this file isn't valid perl, you're
-# going to run into trouble. To check your SiteConfig file, use
-# this comamnd:
-#
-# perl -c /path/to/your/etc/RT_SiteConfig.pm
-
-#Set( $rtname, 'example.com');
-
-$RT::rtname = '%%%RT_DOMAIN%%%';
-$RT::Organization = '%%%RT_DOMAIN%%%';
-
-$RT::Timezone = '%%%RT_TIMEZONE%%%';
-
-$RT::WebBaseURL = '';
-$RT::WebPath = '/freeside/rt';
-
-$RT::WebExternalAuth = 1;
-$RT::WebFallbackToInternal = 1; #no
-$RT::WebExternalAuto = 1;
-
-$RT::URI::freeside::IntegrationType = 'Internal';
-$RT::URI::freeside::URL = '%%%FREESIDE_URL%%%';
-
-Set($DatabaseHost , '');
-
-#perl 5.8.0 - 5.8.2 experiment
-#@EmailInputEncodings = qw(iso-8859-1 us-ascii utf-8); # unless (@EmailInputEncodings);
-#Set($EmailOutputEncoding , 'iso-8859-1');
-
-1;
diff --git a/rt/etc/acl.Informix b/rt/etc/acl.Informix
deleted file mode 100644
index bca0408..0000000
--- a/rt/etc/acl.Informix
+++ /dev/null
@@ -1,5 +0,0 @@
-sub acl {
-return (
-"GRANT RESOURCE TO ${RT::DatabaseUser};");
-}
-1;
diff --git a/rt/etc/acl.Oracle b/rt/etc/acl.Oracle
deleted file mode 100644
index c8667c0..0000000
--- a/rt/etc/acl.Oracle
+++ /dev/null
@@ -1,10 +0,0 @@
-sub acl {
-return (
-"CREATE USER ${RT::DatabaseUser} identified by ${RT::DatabasePassword}".
-"temporary tablespace TEMP" .
-"default tablespace USERS" .
-"quota unlimited on USERS;" ,
-"grant connect, resource to ${RT::DatabaseUser};",
-"exit;");
-}
-1;
diff --git a/rt/etc/acl.Pg b/rt/etc/acl.Pg
deleted file mode 100755
index 16ea71b..0000000
--- a/rt/etc/acl.Pg
+++ /dev/null
@@ -1,63 +0,0 @@
-sub acl {
- my $dbh = shift;
-
- my @acls;
-
- my @tables = qw (
-
- attachments_id_seq
- Attachments
- queues_id_seq
- Queues
- links_id_seq
- Links
- principals_id_seq
- Principals
- groups_id_seq
- Groups
- scripconditions_id_seq
- ScripConditions
- transactions_id_seq
- Transactions
- scrips_id_seq
- Scrips
- acl_id_seq
- ACL
- groupmembers_id_seq
- GroupMembers
- cachedgroupmembers_id_seq
- CachedGroupMembers
- users_id_seq
- Users
- tickets_id_seq
- Tickets
- scripactions_id_seq
- ScripActions
- templates_id_seq
- Templates
- ticketcustomfieldvalues_id_s
- TicketCustomFieldValues
- customfields_id_seq
- CustomFields
- customfieldvalues_id_seq
- CustomFieldValues
- sessions
- );
-
- # if there's already an rt_user, drop it.
- my @row =
- $dbh->selectrow_array( "select usename from pg_user where usename = '" . $RT::DatabaseUser."'" );
- if ( $row[0] ) {
- push @acls, "drop user ${RT::DatabaseUser};",;
- }
-
- push @acls, "create user ${RT::DatabaseUser} with password '${RT::DatabasePassword}' NOCREATEDB NOCREATEUSER;";
- foreach my $table (@tables) {
- push @acls,
- "GRANT SELECT, INSERT, UPDATE, DELETE ON $table to "
- . $RT::DatabaseUser . ";";
-
- }
- return (@acls);
-}
-1;
diff --git a/rt/etc/acl.Sybase b/rt/etc/acl.Sybase
deleted file mode 100644
index 6192b4e..0000000
--- a/rt/etc/acl.Sybase
+++ /dev/null
@@ -1,6 +0,0 @@
-sub acl {
-return (
-"SP_ADDLOGIN ${RT::DatabaseUser}, ${RT::DatabasePassword}, ${RT::DatabaseName} ",
-);
-}
-1;
diff --git a/rt/etc/acl.mysql b/rt/etc/acl.mysql
deleted file mode 100755
index 0ecaa3b..0000000
--- a/rt/etc/acl.mysql
+++ /dev/null
@@ -1,8 +0,0 @@
-sub acl {
-return (
-"USE mysql;",
-"DELETE FROM user WHERE user = '${RT::DatabaseUser}';",
-"DELETE FROM db where db = '${RT::DatabaseName}';",
-"GRANT SELECT,INSERT,CREATE,INDEX,UPDATE,DELETE ON ${RT::DatabaseName}.* TO ${RT::DatabaseUser}\@${RT::DatabaseRTHost} IDENTIFIED BY '${RT::DatabasePassword}';");
-}
-1;
diff --git a/rt/etc/constraints.mysql b/rt/etc/constraints.mysql
deleted file mode 100644
index 355d2c5..0000000
--- a/rt/etc/constraints.mysql
+++ /dev/null
@@ -1,85 +0,0 @@
-
- ALTER TABLE Links ADD INDEX(LocalBase);
- ALTER TABLE Links ADD FOREIGN KEY (LocalBase) REFERENCES Tickets(id);
- ALTER TABLE Links ADD INDEX(LocalTarget);
- ALTER TABLE Links ADD FOREIGN KEY (LocalTarget) REFERENCES Tickets(id);
- ALTER TABLE Tickets ADD INDEX(Queue);
- ALTER TABLE Tickets ADD FOREIGN KEY (Queue) REFERENCES Queues(id);
- ALTER TABLE Tickets ADD INDEX(EffectiveId);
- ALTER TABLE Tickets ADD FOREIGN KEY (EffectiveId) REFERENCES Tickets(id);
- ALTER TABLE Tickets ADD INDEX(Owner);
- ALTER TABLE Tickets ADD FOREIGN KEY (Owner) REFERENCES Principals(id);
- ALTER TABLE Tickets ADD INDEX(Creator);
- ALTER TABLE Tickets ADD INDEX(LastUpdatedBy);
- ALTER TABLE Tickets ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE Tickets ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE Transactions ADD INDEX(Creator);
- ALTER TABLE Transactions ADD INDEX (Ticket) ;
- ALTER TABLE Transactions ADD INDEX (EffectiveTicket) ;
- ALTER TABLE Transactions ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE Transactions ADD FOREIGN KEY (Ticket) REFERENCES Tickets(id);
- ALTER TABLE Transactions ADD FOREIGN KEY (EffectiveTicket) REFERENCES Tickets(id);
- ALTER TABLE Attachments ADD INDEX (TransactionId) ;
- ALTER TABLE Attachments ADD INDEX (Parent) ;
- ALTER TABLE Attachments ADD FOREIGN KEY (TransactionId) REFERENCES Transactions(id);
- ALTER TABLE Attachments ADD FOREIGN KEY (Parent) REFERENCES Attachments(id);
- ALTER TABLE Scrips ADD INDEX (ScripCondition) ;
- ALTER TABLE Scrips ADD INDEX (ScripAction) ;
- ALTER TABLE Scrips ADD INDEX (Template) ;
- ALTER TABLE Scrips ADD INDEX (Queue) ;
- ALTER TABLE Scrips ADD INDEX (Creator) ;
- ALTER TABLE Scrips ADD INDEX (LastUpdatedBy) ;
- ALTER TABLE Scrips ADD FOREIGN KEY (ScripCondition) REFERENCES ScripConditions(id);
- ALTER TABLE Scrips ADD FOREIGN KEY (ScripAction) REFERENCES ScripActions(id);
- ALTER TABLE Scrips ADD FOREIGN KEY (Template) REFERENCES Templates(id);
- ALTER TABLE Scrips ADD FOREIGN KEY (Queue) REFERENCES Queues(id);
- ALTER TABLE Scrips ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE Scrips ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE ACL ADD INDEX (PrincipalId) ;
- ALTER TABLE ACL ADD INDEX (DelegatedBy) ;
- ALTER TABLE ACL ADD INDEX (DelegatedFrom) ;
- ALTER TABLE ACL ADD FOREIGN KEY (PrincipalId) REFERENCES Principals(id);
- ALTER TABLE ACL ADD FOREIGN KEY (DelegatedBy) REFERENCES Principals(id);
- ALTER TABLE ACL ADD FOREIGN KEY (DelegatedFrom) REFERENCES ACL(id);
- ALTER TABLE GroupMembers ADD INDEX (MemberId);
- ALTER TABLE GroupMembers ADD INDEX (GroupId);
- ALTER TABLE GroupMembers ADD FOREIGN KEY (GroupId) REFERENCES Groups(id);
- ALTER TABLE GroupMembers ADD FOREIGN KEY (MemberId) REFERENCES Principals(id);
- ALTER TABLE CachedGroupMembers ADD INDEX (ImmediateParentId) ;
- ALTER TABLE CachedGroupMembers ADD INDEX (GroupId) ;
- ALTER TABLE CachedGroupMembers ADD INDEX (MemberId) ;
- ALTER TABLE CachedGroupMembers ADD INDEX (Via) ;
- ALTER TABLE CachedGroupMembers ADD FOREIGN KEY (ImmediateParentId) REFERENCES Principals(id);
- ALTER TABLE CachedGroupMembers ADD FOREIGN KEY (GroupId) REFERENCES Principals(id);
- ALTER TABLE CachedGroupMembers ADD FOREIGN KEY (MemberId) REFERENCES Principals(id);
- ALTER TABLE CachedGroupMembers ADD FOREIGN KEY (Via) REFERENCES CachedGroupMembers(id);
- ALTER TABLE ScripActions ADD INDEX(Creator);
- ALTER TABLE ScripActions ADD INDEX(LastUpdatedBy);
- ALTER TABLE ScripActions ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE ScripActions ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE Templates ADD INDEX(Queue);
- ALTER TABLE Templates ADD INDEX(Creator);
- ALTER TABLE Templates ADD INDEX(LastUpdatedBy);
- ALTER TABLE Templates ADD FOREIGN KEY (Queue) REFERENCES Queues(id);
- ALTER TABLE Templates ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE Templates ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE CustomFields ADD INDEX(Queue);
- ALTER TABLE CustomFields ADD INDEX(Creator);
- ALTER TABLE CustomFields ADD INDEX(LastUpdatedBy);
- ALTER TABLE CustomFields ADD FOREIGN KEY (Queue) REFERENCES Queues(id);
- ALTER TABLE CustomFields ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE CustomFields ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE TicketCustomFieldValues ADD INDEX(Ticket);
- ALTER TABLE TicketCustomFieldValues ADD INDEX(CustomField);
- ALTER TABLE TicketCustomFieldValues ADD INDEX(Creator);
- ALTER TABLE TicketCustomFieldValues ADD INDEX(LastUpdatedBy);
- ALTER TABLE TicketCustomFieldValues ADD FOREIGN KEY (Ticket) REFERENCES Tickets(id);
- ALTER TABLE TicketCustomFieldValues ADD FOREIGN KEY (CustomField) REFERENCES CustomFields(id);
- ALTER TABLE TicketCustomFieldValues ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE TicketCustomFieldValues ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
- ALTER TABLE CustomFieldValues ADD INDEX(CustomField);
- ALTER TABLE CustomFieldValues ADD INDEX(Creator);
- ALTER TABLE CustomFieldValues ADD INDEX(LastUpdatedBy);
- ALTER TABLE CustomFieldValues ADD FOREIGN KEY (CustomField) REFERENCES CustomFields(id);
- ALTER TABLE CustomFieldValues ADD FOREIGN KEY (Creator) REFERENCES Users(id);
- ALTER TABLE CustomFieldValues ADD FOREIGN KEY (LastUpdatedBy) REFERENCES Users(id);
diff --git a/rt/etc/drop.Informix b/rt/etc/drop.Informix
deleted file mode 100644
index ce7cc01..0000000
--- a/rt/etc/drop.Informix
+++ /dev/null
@@ -1,19 +0,0 @@
-DROP TABLE ACL;
-DROP TABLE ATTACHMENTS;
-DROP TABLE CACHEDGROUPMEMBERS;
-DROP TABLE CUSTOMFIELDS;
-DROP TABLE CUSTOMFIELDVALUES;
-DROP TABLE GROUPMEMBERS;
-DROP TABLE GROUPS;
-DROP TABLE LINKS;
-DROP TABLE PRINCIPALS;
-DROP TABLE QUEUES;
-DROP TABLE SCRIPACTIONS;
-DROP TABLE SCRIPCONDITIONS;
-DROP TABLE SCRIPS;
-DROP TABLE SESSIONS;
-DROP TABLE TEMPLATES;
-DROP TABLE TICKETCUSTOMFIELDVALUES;
-DROP TABLE TICKETS;
-DROP TABLE TRANSACTIONS;
-DROP TABLE USERS;
diff --git a/rt/etc/drop.Oracle b/rt/etc/drop.Oracle
deleted file mode 100644
index 4ce5de4..0000000
--- a/rt/etc/drop.Oracle
+++ /dev/null
@@ -1,39 +0,0 @@
-DROP TABLE ACL;
-DROP TABLE ATTACHMENTS;
-DROP TABLE ATTRIBUTES;
-DROP TABLE CACHEDGROUPMEMBERS;
-DROP TABLE CUSTOMFIELDS;
-DROP TABLE CUSTOMFIELDVALUES;
-DROP TABLE GROUPMEMBERS;
-DROP TABLE GROUPS;
-DROP TABLE LINKS;
-DROP TABLE PRINCIPALS;
-DROP TABLE QUEUES;
-DROP TABLE SCRIPACTIONS;
-DROP TABLE SCRIPCONDITIONS;
-DROP TABLE SCRIPS;
-DROP TABLE SESSIONS;
-DROP TABLE TEMPLATES;
-DROP TABLE TICKETCUSTOMFIELDVALUES;
-DROP TABLE TICKETS;
-DROP TABLE TRANSACTIONS;
-DROP TABLE USERS;
-DROP SEQUENCE ACL_seq;
-DROP SEQUENCE ATTACHMENTS_seq;
-DROP SEQUENCE ATTRIBUTES_seq;
-DROP SEQUENCE CACHEDGROUPMEMBERS_seq;
-DROP SEQUENCE CUSTOMFIELDS_seq;
-DROP SEQUENCE CUSTOMFIELDVALUES_seq;
-DROP SEQUENCE GROUPMEMBERS_seq;
-DROP SEQUENCE GROUPS_seq;
-DROP SEQUENCE LINKS_seq;
-DROP SEQUENCE PRINCIPALS_seq;
-DROP SEQUENCE QUEUES_seq;
-DROP SEQUENCE SCRIPACTIONS_seq;
-DROP SEQUENCE SCRIPCONDITIONS_seq;
-DROP SEQUENCE SCRIPS_seq;
-DROP SEQUENCE TEMPLATES_seq;
-DROP SEQUENCE TICKETCUSTOMFIELDVALUES_seq;
-DROP SEQUENCE TICKETS_seq;
-DROP SEQUENCE TRANSACTIONS_seq;
-DROP SEQUENCE USERS_seq;
diff --git a/rt/etc/initialdata b/rt/etc/initialdata
deleted file mode 100644
index 3a21ce1..0000000
--- a/rt/etc/initialdata
+++ /dev/null
@@ -1,587 +0,0 @@
-# Initial data for a fresh RT3 Installation.
-
-@Users = (
- { Name => 'Nobody',
- RealName => 'Nobody in particular',
- Comments => 'Do not delete or modify this user. It is integral '
- . 'to RT\'s internal data structures',
- Privileged => '0', },
-
- { Name => 'root',
- Gecos => 'root',
- RealName => 'Enoch Root',
- Password => 'password',
- EmailAddress => "root\@localhost",
- Comments => 'SuperUser',
- Privileged => '1', } );
-
-@Groups = (
- { Name => '',
- Type => 'Everyone', # loc
- Domain => 'SystemInternal',
- Instance => '',
- Description => 'Pseudogroup for internal use', # loc
- },
- { Type => 'Privileged', # loc
- Domain => 'SystemInternal',
- Instance => '',
- Name => '',
- Description => 'Pseudogroup for internal use', # loc
- },
- { Name => '',
- Type => 'Unprivileged', # loc
- Domain => 'SystemInternal',
- Instance => '',
- Description => 'Pseudogroup for internal use', # loc
- },
- { Name => '',
- Type => 'Owner', # loc
- Domain => 'RT::System-Role',
- Instance => '',
- Description => 'SystemRolegroup for internal use', # loc
- },
- { Name => '',
- Type => 'Requestor', # loc
- Domain => 'RT::System-Role',
- Instance => '',
- Description => 'SystemRolegroup for internal use', # loc
- },
- { Name => '',
- Type => 'Cc', # loc
- Domain => 'RT::System-Role',
- Instance => '',
- Description => 'SystemRolegroup for internal use', # loc
- },
- { Name => '',
- Type => 'AdminCc', # loc
- Domain => 'RT::System-Role',
- Instance => '',
- Description => 'Pseudogroup for internal use', # loc
- }, );
-
-@Queues = ({ Name => 'General',
- Description => 'The default queue',
- CorrespondAddress => "",
- CommentAddress => "", },
- { Name => '___Approvals',
- Description => 'A system-internal queue for the approvals system',
- Disabled => 2, } );
-
-@ScripActions = (
-
- { Name => 'Autoreply To Requestors', # loc
- Description =>
-'Always sends a message to the requestors independent of message sender' , # loc
- ExecModule => 'Autoreply',
- Argument => 'Requestor' },
- { Name => 'Notify Requestors', # loc
- Description => 'Sends a message to the requestors', # loc
- ExecModule => 'Notify',
- Argument => 'Requestor' },
- { Name => 'Notify Owner as Comment', # loc
- Description => 'Sends mail to the owner', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'Owner' },
- { Name => 'Notify Owner', # loc
- Description => 'Sends mail to the owner', # loc
- ExecModule => 'Notify',
- Argument => 'Owner' },
- { Name => 'Notify Ccs as Comment', # loc
- Description => 'Sends mail to the Ccs as a comment', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'Cc' },
- { Name => 'Notify Ccs', # loc
- Description => 'Sends mail to the Ccs', # loc
- ExecModule => 'Notify',
- Argument => 'Cc' },
- { Name => 'Notify AdminCcs as Comment', # loc
- Description => 'Sends mail to the administrative Ccs as a comment', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'AdminCc' },
- { Name => 'Notify AdminCcs', # loc
- Description => 'Sends mail to the administrative Ccs', # loc
- ExecModule => 'Notify',
- Argument => 'AdminCc' },
-
- { Name => 'Notify Requestors and Ccs as Comment', # loc
- Description => 'Send mail to requestors and Ccs as a comment', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'Requestor,Cc' },
-
- { Name => 'Notify Requestors and Ccs', # loc
- Description => 'Send mail to requestors and Ccs', # loc
- ExecModule => 'Notify',
- Argument => 'Requestor,Cc' },
-
- { Name => 'Notify Requestors, Ccs and AdminCcs as Comment', # loc
- Description => 'Send mail to all watchers as a "comment"', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'All' },
- { Name => 'Notify Requestors, Ccs and AdminCcs', # loc
- Description => 'Send mail to all watchers', # loc
- ExecModule => 'Notify',
- Argument => 'All' },
- { Name => 'Notify Other Recipients as Comment', # loc
- Description => 'Sends mail to explicitly listed Ccs and Bccs', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'OtherRecipients' },
- { Name => 'Notify Other Recipients', # loc
- Description => 'Sends mail to explicitly listed Ccs and Bccs', # loc
- ExecModule => 'Notify',
- Argument => 'OtherRecipients' },
- { Name => 'User Defined', # loc
- Description => 'Perform a user-defined action', # loc
- ExecModule => 'UserDefined', },
- { Name => 'Create Tickets', # loc
- Description =>
- 'Create new tickets based on this scrip\'s template', # loc
- ExecModule => 'CreateTickets', },
- { Name => 'Open Tickets',
- Description => 'Open tickets on correspondence', # loc
- ExecModule => 'AutoOpen' },
-);
-
-@ScripConditions = (
- { Name => 'On Create', # loc
- Description => 'When a ticket is created', # loc
- ApplicableTransTypes => 'Create',
- ExecModule => 'AnyTransaction', },
-
- { Name => 'On Transaction', # loc
- Description => 'When anything happens', # loc
- ApplicableTransTypes => 'Any',
- ExecModule => 'AnyTransaction', },
- {
-
- Name => 'On Correspond', # loc
- Description => 'Whenever correspondence comes in', # loc
- ApplicableTransTypes => 'Correspond',
- ExecModule => 'AnyTransaction', },
-
- {
-
- Name => 'On Comment', # loc
- Description => 'Whenever comments come in', # loc
- ApplicableTransTypes => 'Comment',
- ExecModule => 'AnyTransaction' },
- {
-
- Name => 'On Status Change', # loc
- Description => 'Whenever a ticket\'s status changes', # loc
- ApplicableTransTypes => 'Status',
- ExecModule => 'AnyTransaction',
-
- },
- {
-
- Name => 'On Priority Change', # loc
- Description => 'Whenever a ticket\'s priority changes', # loc
- ApplicableTransTypes => 'Set',
- ExecModule => 'PriorityChange',
- },
- {
-
- Name => 'On Owner Change', # loc
- Description => 'Whenever a ticket\'s owner changes', # loc
- ApplicableTransTypes => 'Any',
- ExecModule => 'OwnerChange',
-
- },
- {
-
- Name => 'On Queue Change', # loc
- Description => 'Whenever a ticket\'s queue changes', # loc
- ApplicableTransTypes => 'Set',
- ExecModule => 'QueueChange',
-
- },
- { Name => 'On Resolve', # loc
- Description => 'Whenever a ticket is resolved', # loc
- ApplicableTransTypes => 'Status',
- ExecModule => 'StatusChange',
- Argument => 'resolved'
-
- },
-
- { Name => 'User Defined', # loc
- Description => 'Whenever a user-defined condition occurs', # loc
- ApplicableTransTypes => 'Any',
- ExecModule => 'UserDefined'
-
- },
-
-);
-
-@Templates = (
- { Queue => '0',
- Name => 'Blank', # loc
- Description => 'A blank template', # loc
- Content => '', },
- { Queue => '0',
- Name => 'Autoreply', # loc
- Description => 'Default Autoresponse template', # loc
- Content => 'Subject: AutoReply: {$Ticket->Subject}
-
-
-Greetings,
-
-This message has been automatically generated in response to the
-creation of a trouble ticket regarding:
- "{$Ticket->Subject()}",
-a summary of which appears below.
-
-There is no need to reply to this message right now. Your ticket has been
-assigned an ID of [{$rtname} #{$Ticket->id()}].
-
-Please include the string:
-
- [{$rtname} #{$Ticket->id}]
-
-in the subject line of all future correspondence about this issue. To do so,
-you may reply to this message.
-
- Thank you,
- {$Ticket->QueueObj->CorrespondAddress()}
-
--------------------------------------------------------------------------
-{$Transaction->Content()}
-'
- },
-
- { Queue => '0',
- Name => 'Transaction', # loc
- Description => 'Default transaction template', # loc
- Content => 'RT-Attach-Message: yes
-
-
-{$Transaction->CreatedAsString}: Request {$Ticket->id} was acted upon.
-Transaction: {$Transaction->Description}
- Queue: {$Ticket->QueueObj->Name}
- Subject: {$Transaction->Subject || $Ticket->Subject || "(No subject given)"}
- Owner: {$Ticket->OwnerObj->Name}
- Requestors: {$Ticket->RequestorAddresses}
- Status: {$Ticket->Status}
- Ticket <URL: {$RT::WebURL}Ticket/Display.html?id={$Ticket->id} >
-
-
-{$Transaction->Content()}
-'
- },
-
- {
-
- Queue => '0',
- Name => 'Admin Correspondence', # loc
- Description => 'Default admin correspondence template', # loc
- Content => 'RT-Attach-Message: yes
-
-
-<URL: {$RT::WebURL}Ticket/Display.html?id={$Ticket->id} >
-
-{$Transaction->Content()}
-'
- },
-
- { Queue => '0',
- Name => 'Correspondence', # loc
- Description => 'Default correspondence template', # loc
- Content => 'RT-Attach-Message: yes
-
-{$Transaction->Content()}
-'
- },
-
- { Queue => '0',
- Name => 'Admin Comment', # loc
- Description => 'Default admin comment template', # loc
- Content =>
-'Subject: [Comment] {my $s=($Transaction->Subject||$Ticket->Subject); $s =~ s/\\[Comment\\]//g; $comment =~ s/^Re//i; $s;}
-
-
-{$RT::WebURL}Ticket/Display.html?id={$Ticket->id}
-This is a comment. It is not sent to the Requestor(s):
-
-{$Transaction->Content()}
-'
- },
-
- { Queue => '0',
- Name => 'Status Change', # loc
- Description => 'Ticket status changed', # loc
- Content => 'Subject: Status Changed to: {$Transaction->NewValue}
-
-
-{$RT::WebURL}Ticket/Display.html?id={$Ticket->id}
-
-{$Transaction->Content()}
-'
- },
-
- {
-
- Queue => '0',
- Name => 'Resolved', # loc
- Description => 'Ticket Resolved', # loc
- Content => 'Subject: Resolved: {$Ticket->Subject}
-
-According to our records, your request has been resolved. If you have any
-further questions or concerns, please respond to this message.
-'
- },
- { Queue => '___Approvals',
- Name => "New Pending Approval", # loc
- Description =>
- "Notify Owners and AdminCcs of new items pending their approval", # loc
- Content => 'Subject: New Pending Approval: {$Ticket->Subject}
-
-Greetings,
-
-There is a new item pending your approval: "{$Ticket->Subject()}",
-a summary of which appears below.
-
-Please visit {$RT::WebURL}Approvals/Display.html?id={$Ticket->id}
-to approve or reject this ticket, or {$RT::WebURL}Approvals/ to
-batch-process all your pending approvals.
-
--------------------------------------------------------------------------
-{$Transaction->Content()}
-'
- },
- { Queue => '___Approvals',
- Name => "Approval Passed", # loc
- Description =>
- "Notify Owner of their ticket has been approved by some approver", # loc
- Content => 'Subject: Ticket Approved: {$Ticket->Subject}
-
-Greetings,
-
-Your ticket has been approved by { eval { $Approval->OwnerObj->Name } }.
-Other approvals may be pending.
-'
- },
- { Queue => '___Approvals',
- Name => "All Approvals Passed", # loc
- Description =>
- "Notify Owner of their ticket has been approved by all approvers", # loc
- Content => 'Subject: Ticket Approved: {$Ticket->Subject}
-
-Greetings,
-
-Your ticket has been approved. Its Owner may now start to act on it.
-'
- },
- { Queue => '___Approvals',
- Name => "Approval Rejected", # loc
- Description =>
- "Notify Owner of their rejected ticket", # loc
- Content => 'Subject: Ticket Rejected: {$Ticket->Subject}
-
-Greetings,
-
-Your ticket has been rejected by { eval { $Approval->OwnerObj->Name } }.
-'
- },
-);
-# }}}
-
-@Scrips = (
- { ScripCondition => 'On Correspond',
- ScripAction => 'Open Tickets',
- Template => 'Blank' },
- { ScripCondition => 'On Owner Change',
- ScripAction => 'Notify Owner',
- Template => 'Transaction' },
- { ScripCondition => 'On Create',
- ScripAction => 'AutoReply To Requestors',
- Template => 'AutoReply' },
- { ScripCondition => 'On Create',
- ScripAction => 'Notify AdminCcs',
- Template => 'Transaction' },
- { ScripCondition => 'On Correspond',
- ScripAction => 'Notify AdminCcs',
- Template => 'Admin Correspondence' },
- { ScripCondition => 'On Correspond',
- ScripAction => 'Notify Requestors And Ccs',
- Template => 'Correspondence' },
- { ScripCondition => 'On Correspond',
- ScripAction => 'Notify Other Recipients',
- Template => 'Correspondence' },
- { ScripCondition => 'On Comment',
- ScripAction => 'Notify AdminCcs As Comment',
- Template => 'Admin Comment' },
- { ScripCondition => 'On Comment',
- ScripAction => 'Notify Other Recipients As Comment',
- Template => 'Correspondence' },
- { ScripCondition => 'On Resolve',
- ScripAction => 'Notify Requestors',
- Template => 'Resolved' },
- { Description => "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval", # loc
- Queue => '___Approvals',
- ScripCondition => 'User Defined',
- CustomIsApplicableCode => q[
- $self->TicketObj->Type eq 'approval' and
- $self->TransactionObj->Field eq 'Status' and
- $self->TransactionObj->NewValue eq 'open' and
- eval { $T::Approving = ($self->TicketObj->AllDependedOnBy( Type => 'ticket' ))[0] }
- ],
- ScripAction => 'Notify Owner',
- Template => 'New Pending Approval' },
- { Description => "If an approval is rejected, reject the original and delete pending approvals", # loc
- Queue => '___Approvals',
- ScripCondition => 'On Status Change',
- ScripAction => 'User Defined',
- CustomPrepareCode => q[
-# ------------------------------------------------------------------- #
-return(0) unless ( lc($self->TransactionObj->NewValue) eq "rejected" or
- lc($self->TransactionObj->NewValue) eq "deleted" );
-
-my $rejected = 0;
-my $links = $self->TicketObj->DependedOnBy;
-foreach my $link (@{ $links->ItemsArrayRef }) {
- my $obj = $link->BaseObj;
- if ($obj->QueueObj->IsActiveStatus($obj->Status)) {
- if ($obj->Type eq 'ticket') {
- $obj->Comment(
- Content => $self->loc("Your request was rejected."),
- );
- $obj->SetStatus(
- Status => 'rejected',
- Force => 1,
- );
-
- $T::Approval = $self->TicketObj; # so we can access it inside templates
- $self->{TicketObj} = $obj; # we want the original id in the token line
- $rejected = 1;
- }
- else {
- $obj->SetStatus(
- Status => 'deleted',
- Force => 1,
- );
- }
- }
-}
-
-$links = $self->TicketObj->DependsOn;
-foreach my $link (@{ $links->ItemsArrayRef }) {
- my $obj = $link->TargetObj;
- if ($obj->QueueObj->IsActiveStatus($obj->Status)) {
- $obj->SetStatus(
- Status => 'deleted',
- Force => 1,
- );
- }
-}
-
-# Now magically turn myself into a Requestor Notify object...
-require RT::Action::Notify; bless($self, 'RT::Action::Notify');
-$self->{Argument} = 'Requestor'; $self->Prepare;
-
-return $rejected;
-# ------------------------------------------------------------------- #
- ],
- CustomCommitCode => '"never needed"',
- Template => 'Approval Rejected', },
- { Description => "When a ticket has been approved by any approver, add correspondence to the original ticket", # loc
- Queue => '___Approvals',
- ScripCondition => 'On Resolve',
- ScripAction => 'User Defined',
- CustomPrepareCode => q[
-# ------------------------------------------------------------------- #
-return(0) unless ($self->TicketObj->Type eq 'approval');
-
-my $note;
-my $t = $self->TicketObj->Transactions;
-while (my $o = $t->Next) {
- $note .= $o->Content . "\n" if $o->ContentObj
- and $o->Content !~ /Default Approval/;
-}
-
-foreach my $obj ($self->TicketObj->AllDependedOnBy( Type => 'ticket' )) {
- $obj->Comment(
- Content => $self->loc( "Your request has been approved by [_1]. Other approvals may still be pending.", # loc
- $self->TransactionObj->CreatorObj->Name,
- ) . "\n" . $self->loc( "Approver's notes: [_1]", # loc
- $note
- ),
- );
- $T::Approval = $self->TicketObj; # so we can access it inside templates
- $self->{TicketObj} = $obj; # we want the original id in the token line
-}
-
-# Now magically turn myself into a Requestor Notify object...
-require RT::Action::Notify; bless($self, 'RT::Action::Notify');
-$self->{Argument} = 'Requestor'; $self->Prepare;
-
-return 1;
-# ------------------------------------------------------------------- #
- ],
- CustomCommitCode => '"never needed"',
- Template => 'Approval Passed' },
- { Description => "When a ticket has been approved by all approvers, add correspondence to the original ticket", # loc
- Queue => '___Approvals',
- ScripCondition => 'On Resolve',
- ScripAction => 'User Defined',
- CustomPrepareCode => q[
-# ------------------------------------------------------------------- #
-# Find all the tickets that depend on this (that this is approving)
-
-my $Ticket = $self->TicketObj;
-my @TOP = $Ticket->AllDependedOnBy( Type => 'ticket' );
-my $links = $Ticket->DependedOnBy;
-my $passed = 0;
-
-while (my $link = $links->Next) {
- my $obj = $link->BaseObj;
- next if ($obj->HasUnresolvedDependencies( Type => 'approval' ));
-
- if ($obj->Type eq 'ticket') {
- $obj->Comment(
- Content => $self->loc("Your request has been approved."),
- );
- $T::Approval = $Ticket; # so we can access it inside templates
- $self->{TicketObj} = $obj; # we want the original id in the token line
- $passed = 1;
- }
- elsif ($obj->Type eq 'approval') {
- $obj->SetStatus( Status => 'open', Force => 1 );
- }
- elsif ($RT::UseCodeTickets and $obj->Type eq 'code') {
- my $code = $obj->Transactions->First->Content;
- my $rv;
-
- foreach my $TOP (@TOP) {
- local $@;
- $rv++ if eval $code;
- $RT::Logger->error("Cannot eval code: $@") if $@;
- }
-
- if ($rv or !@TOP) {
- $obj->SetStatus( Status => 'resolved', Force => 1,);
- }
- else {
- $obj->SetStatus( Status => 'rejected', Force => 1,);
- }
- }
-}
-
-# Now magically turn myself into a Requestor Notify object...
-require RT::Action::Notify; bless($self, 'RT::Action::Notify');
-$self->{Argument} = 'Requestor'; $self->Prepare;
-
-return 0; # ignore $passed;
-# ------------------------------------------------------------------- #
- ],
- CustomCommitCode => '"never needed"',
- Template => 'All Approvals Passed', },
-
-);
-
-@ACL = (
- { UserId => 'Nobody', # - principalId
- Right => 'OwnTicket', },
-
- { UserId => 'root', # - principalid
- Right => 'SuperUser', },
-
-);
diff --git a/rt/etc/rt.spec b/rt/etc/rt.spec
deleted file mode 100644
index 14200c1..0000000
--- a/rt/etc/rt.spec
+++ /dev/null
@@ -1,137 +0,0 @@
-Summary: rt Request Tracker
-
-Name: rt
-Version: 2.0.9pre5
-Release: 1
-Group: Applications/Web
-Packager: Jesse Vincent <jesse@bestpractical.com>
-Vendor: http://www.fsck.com/projects/rt
-Requires: perl
-Requires: mod_perl > 1.22
-Requires: perl-DBI >= 1.18
-Requires: perl-DBIx-DataSource >= 0.02
-Requires: perl-DBIx-SearchBuilder >= 0.47
-Requires: perl-HTML-Parser
-Requires: perl-MLDBM
-Requires: perl-libnet
-Requires: perl-CGI.pm >= 2.78
-Requires: perl-Params-Validate >= 0.02
-Requires: perl-HTML-Mason >= 0.896
-Requires: perl-libapreq
-Requires: perl-Apache-Session >= 1.53
-Requires: perl-MIME-tools >= 5.411
-Requires: perl-MailTools >= 1.20
-Requires: perl-Getopt-Long >= 2.24
-Requires: perl-Tie-IxHash
-Requires: perl-TimeDate
-Requires: perl-Time-HiRes
-Requires: perl-Text-Wrapper
-Requires: perl-Text-Template
-Requires: perl-File-Spec >= 0.8
-Requires: perl-FreezeThaw
-Requires: perl-Storable
-Requires: perl-File-Temp
-Requires: perl-Log-Dispatch >= 1.6
-
-Source: http://www.fsck.com/pub/rt/release/%{name}.tar.gz
-
-Copyright: GPL
-BuildRoot: /var/tmp/rt-root
-
-%description
-RT is an industrial-grade ticketing system. It lets a group
-of people intelligently and efficiently manage requests
-submitted by a community of users. RT is used by systems
-administrators, customer support staffs, NOCs, developers
-and even marketing departments at over a thousand sites
-around the world.
-
-%prep
-groupadd rt || true
-%setup -q -n %{name}
-
-%build
-
-%install
-
-if [ x$RPM_BUILD_ROOT != x ]; then
-rm -rf $RPM_BUILD_ROOT
-fi
-
-#
-# Perform all the non-site specfic steps whilst building the package
-#
-make dirs libs-install html-install bin-install DESTDIR=$RPM_BUILD_ROOT
-#
-# fixperms needs these, so make fake empty files
-touch $RPM_BUILD_ROOT/opt/rt2/etc/insertdata $RPM_BUILD_ROOT/opt/rt2/etc/config.pm
-make fixperms insert-install WEB_USER=www DESTDIR=$RPM_BUILD_ROOT
-
-#
-# Copy in the files needed again after install
-#
-mkdir -p $RPM_BUILD_ROOT/opt/rt2/postinstall/bin
-cp -rp Makefile etc tools $RPM_BUILD_ROOT/opt/rt2/postinstall
-cp -rp bin/initacls.* $RPM_BUILD_ROOT/opt/rt2/postinstall/bin
-
-# logging in /var/log/rt2
-mkdir -p $RPM_BUILD_ROOT/var/log/rt2
-chown www $RPM_BUILD_ROOT/var/log/rt2
-chgrp rt $RPM_BUILD_ROOT/var/log/rt2
-chmod ug=rwx,o= $RPM_BUILD_ROOT/var/log/rt2
-
-%clean
-if [ x$RPM_BUILD_ROOT != x ]; then
-rm -rf $RPM_BUILD_ROOT
-fi
-
-#
-# A new rt groups is required
-#
-%pre
-groupadd rt || true
-
-#
-# Show the user the site specific steps required after install
-#
-%post
-cat <<EOF
------------------------------------------------------------------------
-rt2 installation is complete. Now create the rt2 database by running:
------------------------------------------------------------------------
-
-# cd /opt/rt2/postinstall
-# make config-replace initialize.mysql insert RT_LOG_PATH=/var/log/rt2 DB_RT_PASS=new_rt_user_password
-
-Choose your own new_rt_user_password. You will need the mysql root password.
-You can try Pg or Oracle instead of mysql - untested.
-
-Review and configure your site specific details in /opt/rt2/etc/config.pm
-EOF
-
-%preun
-
-%files
-%dir /opt/rt2
-/opt/rt2/bin
-/opt/rt2/WebRT
-/opt/rt2/lib
-/opt/rt2/local
-/opt/rt2/man
-/opt/rt2/postinstall
-%dir /opt/rt2/etc
-/opt/rt2/etc/insertdata
-%config /opt/rt2/etc/config.pm
-%dir /var/log/rt2
-
-%changelog
-* Mon Sep 24 2001 Jesse Vincent <jesse@bestpractical.com>
- Switch to rt DESTDIR support
-* Fri Sep 14 2001 Cris Bailiff <c.bailiff@devsecure.com>
- Fix permissions on created /var/log/rt2 and roll in 2.0.7
-* Tue Sep 4 2001 Cris Bailiff <c.bailiff@devsecure.com>
-- created initial spec file
-* Tue Sep 4 2001 Cris Bailiff <c.bailiff@devsecure.com>
-- created initial spec file
-* Tue Sep 4 2001 Cris Bailiff <c.bailiff@devsecure.com>
-- created initial spec file
diff --git a/rt/etc/schema.Informix b/rt/etc/schema.Informix
deleted file mode 100644
index 6a4e533..0000000
--- a/rt/etc/schema.Informix
+++ /dev/null
@@ -1,364 +0,0 @@
--- This schema was adopted from the oracle schema by
--- Andre Koppel.
--- Version 0.2 Date 2003.10.21
--- The work is still in progress
-
-CREATE TABLE Attachments (
- id SERIAL,
- TransactionId INTEGER NOT NULL,
- Parent INTEGER DEFAULT 0 NOT NULL,
- MessageId VARCHAR(160),
- Subject VARCHAR(255),
- Filename VARCHAR(255),
- ContentType VARCHAR(80),
- ContentEncoding VARCHAR(80),
- Content BYTE,
- Headers BYTE,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-CREATE INDEX Attachments1 ON Attachments (Parent);
-CREATE INDEX Attachments2 ON Attachments (TransactionId);
-CREATE INDEX Attachments3 ON Attachments (Parent, TransactionId);
-
-
-CREATE TABLE Queues (
- id SERIAL,
- Name VARCHAR(200) DEFAULT '' NOT NULL,
- Description VARCHAR(255) DEFAULT NULL,
- CorrespondAddress VARCHAR(120) DEFAULT NULL,
- CommentAddress VARCHAR(120) DEFAULT NULL,
- InitialPriority INTEGER DEFAULT 0 NOT NULL,
- FinalPriority INTEGER DEFAULT 0 NOT NULL,
- DefaultDueIn INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- Disabled INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE UNIQUE INDEX Queues1 ON Queues (Name);
-CREATE INDEX Queues2 ON Queues (Disabled);
-
-
-CREATE TABLE Links (
- id SERIAL,
- Base VARCHAR(240) DEFAULT NULL,
- Target VARCHAR(240) DEFAULT NULL,
- Type VARCHAR(20) DEFAULT '' NOT NULL,
- LocalTarget INTEGER DEFAULT 0 NOT NULL,
- LocalBase INTEGER DEFAULT 0 NOT NULL,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
--- CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type);
-CREATE INDEX Links2 ON Links (Base, Type);
-CREATE INDEX Links3 ON Links (Target, Type);
-CREATE INDEX Links4 ON Links(Type,LocalBase);
-
-
-CREATE TABLE Principals (
- id SERIAL,
- PrincipalType VARCHAR(16) DEFAULT '' NOT NULL,
- ObjectId INTEGER DEFAULT 0,
- Disabled INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE INDEX Principals2 ON Principals (ObjectId);
-
-
-CREATE TABLE Groups (
- id SERIAL,
- Name VARCHAR(200) DEFAULT NULL,
- Description VARCHAR(255) DEFAULT NULL,
- Domain VARCHAR(64) DEFAULT '',
- Type VARCHAR(64) DEFAULT '',
- Instance INTEGER DEFAULT 0 NOT NULL,
--- Instance VARCHAR(64) DEFAULT '' NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE INDEX Groups1 ON Groups (Domain, Instance, Type, id);
-CREATE INDEX Groups2 ON Groups (Type, Instance, Domain);
-
-
-CREATE TABLE ScripConditions (
- id SERIAL,
- Name VARCHAR(200),
- Description VARCHAR(255),
- ExecModule VARCHAR(60),
- Argument VARCHAR(255),
- ApplicableTransTypes VARCHAR(60),
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-
-CREATE TABLE Transactions (
- id SERIAL,
- ObjectType VARCHAR(255),
- ObjectId INTEGER DEFAULT 0 NOT NULL,
- TimeTaken INTEGER DEFAULT 0 NOT NULL,
- Type VARCHAR(20),
- Field VARCHAR(40),
- OldValue VARCHAR(255),
- NewValue VARCHAR(255),
- ReferenceType VARCHAR(255),
- OldReference INTEGER DEFAULT 0,
- NewReference INTEGER DEFAULT 0,
- Data VARCHAR(255),
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
-
-
-CREATE TABLE Scrips (
- id SERIAL,
- Description VARCHAR(255) DEFAULT '',
- ScripCondition INTEGER DEFAULT 0 NOT NULL,
- ScripAction INTEGER DEFAULT 0 NOT NULL,
- ConditionRules BYTE,
- ActionRules BYTE,
- CustomIsApplicableCode BYTE,
- CustomPrepareCode BYTE,
- CustomCommitCode BYTE,
- Stage VARCHAR(32),
- Queue INTEGER DEFAULT 0 NOT NULL,
- Template INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-
-CREATE TABLE ACL (
- id SERIAL,
- PrincipalType VARCHAR(25) NOT NULL,
- PrincipalId INTEGER NOT NULL,
- RightName VARCHAR(25) NOT NULL,
- ObjectType VARCHAR(25) NOT NULL,
- ObjectId INTEGER DEFAULT 0 NOT NULL,
- DelegatedBy INTEGER DEFAULT 0 NOT NULL,
- DelegatedFrom INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE INDEX ACL1 ON ACL(RightName, ObjectType, ObjectId, PrincipalType, PrincipalId);
-
-
-CREATE TABLE GroupMembers (
- id SERIAL,
- GroupId INTEGER DEFAULT 0 NOT NULL,
- MemberId INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE UNIQUE INDEX GroupMembers1 ON GroupMembers (GroupId, MemberId);
-
-
-CREATE TABLE CachedGroupMembers (
- id SERIAL,
- GroupId INTEGER DEFAULT 0,
- MemberId INTEGER DEFAULT 0,
- Via INTEGER DEFAULT 0,
- ImmediateParentId INTEGER DEFAULT 0,
- Disabled INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE INDEX DisGrouMem ON CachedGroupMembers (GroupId, MemberId, Disabled);
-CREATE INDEX GrouMem ON CachedGroupMembers (GroupId, MemberId);
-
-
-CREATE TABLE Users (
- id SERIAL,
- Name VARCHAR(200) NOT NULL,
- Password VARCHAR(40),
- Comments BYTE,
- Signature BYTE,
- EmailAddress VARCHAR(120),
- FreeFormContactInfo BYTE,
- Organization VARCHAR(200),
- RealName VARCHAR(120),
- NickName VARCHAR(16),
- Lang VARCHAR(16),
- EmailEncoding VARCHAR(16),
- WebEncoding VARCHAR(16),
- ExternalContactInfoId VARCHAR(100),
- ContactInfoSystem VARCHAR(30),
- ExternalAuthId VARCHAR(100),
- AuthSystem VARCHAR(30),
- Gecos VARCHAR(16),
- HomePhone VARCHAR(30),
- WorkPhone VARCHAR(30),
- MobilePhone VARCHAR(30),
- PagerPhone VARCHAR(30),
- Address1 VARCHAR(200),
- Address2 VARCHAR(200),
- City VARCHAR(100),
- State VARCHAR(100),
- Zip VARCHAR(16),
- Country VARCHAR(50),
- Timezone VARCHAR(50),
- PGPKey BYTE,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
--- CREATE UNIQUE INDEX Users1 ON Users (Name);
-CREATE INDEX Users2 ON Users (Name);
-CREATE INDEX Users3 ON Users (id, EmailAddress);
-CREATE INDEX Users4 ON Users (EmailAddress);
-
-
-CREATE TABLE Tickets (
- id SERIAL,
- EffectiveId INTEGER DEFAULT 0 NOT NULL,
- Queue INTEGER DEFAULT 0 NOT NULL,
- Type VARCHAR(16),
- IssueStatement INTEGER DEFAULT 0 NOT NULL,
- Resolution INTEGER DEFAULT 0 NOT NULL,
- Owner INTEGER DEFAULT 0 NOT NULL,
- Subject VARCHAR(200) DEFAULT '[no subject]',
- InitialPriority INTEGER DEFAULT 0 NOT NULL,
- FinalPriority INTEGER DEFAULT 0 NOT NULL,
- Priority INTEGER DEFAULT 0 NOT NULL,
- TimeEstimated INTEGER DEFAULT 0 NOT NULL,
- TimeWorked INTEGER DEFAULT 0 NOT NULL,
- Status VARCHAR(10),
- TimeLeft INTEGER DEFAULT 0 NOT NULL,
- Told DATETIME YEAR TO SECOND,
- Starts DATETIME YEAR TO SECOND,
- Started DATETIME YEAR TO SECOND,
- Due DATETIME YEAR TO SECOND,
- Resolved DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- Disabled INTEGER DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-CREATE INDEX Tickets1 ON Tickets (Queue, Status);
-CREATE INDEX Tickets2 ON Tickets (Owner);
-CREATE INDEX Tickets3 ON Tickets (EffectiveId);
-CREATE INDEX Tickets4 ON Tickets (id, Status);
-CREATE INDEX Tickets5 ON Tickets (id, EffectiveId);
-CREATE INDEX Tickets6 ON Tickets (EffectiveId, Type);
-
-
-CREATE TABLE ScripActions (
- id SERIAL,
- Name VARCHAR(200),
- Description VARCHAR(255),
- ExecModule VARCHAR(60),
- Argument VARCHAR(255),
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-
-CREATE TABLE Templates (
- id SERIAL,
- Queue INTEGER DEFAULT 0 NOT NULL,
- Name VARCHAR(200) NOT NULL,
- Description VARCHAR(255),
- Type VARCHAR(16),
- Language VARCHAR(16),
- TranslationOf INTEGER DEFAULT 0 NOT NULL,
- Content BYTE,
- LastUpdated DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-
-CREATE TABLE TicketCustomFieldValues (
- id SERIAL,
- Ticket INTEGER NOT NULL,
- CustomField INTEGER NOT NULL,
- Content VARCHAR(255),
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-CREATE INDEX TicketCustomFieldValues1 ON TicketCustomFieldValues (CustomField,Ticket,Content);
-CREATE INDEX TicketCustomFieldValues2 ON TicketCustomFieldValues (CustomField,Ticket);
-
-CREATE TABLE CustomFields (
- id SERIAL,
- Name VARCHAR(200),
- Type VARCHAR(200),
- MaxValues INTEGER DEFAULT 0 NOT NULL,
- Pattern VARCHAR(255),
- LookupType VARCHAR(255),
- Description VARCHAR(255),
- SortOrder INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- Disabled SMALLINT DEFAULT 0 NOT NULL,
- PRIMARY KEY (id)
-);
-
-
-CREATE TABLE CustomFieldValues (
- id SERIAL,
- CustomField INTEGER NOT NULL,
- Name VARCHAR(200),
- Description VARCHAR(255),
- SortOrder INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-CREATE INDEX CustomFieldValues1 ON CustomFieldValues (CustomField);
-
-CREATE TABLE Attributes (
- id SERIAL,
- Name VARCHAR(255) DEFAULT '' NOT NULL,
- Description VARCHAR(255) DEFAULT NULL,
- Content BYTE,
- ContentType VARCHAR(16),
- ObjectType VARCHAR(25) NOT NULL,
- ObjectId INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
-
-CREATE TABLE sessions (
- id VARCHAR(32) NOT NULL,
- a_session BYTE,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
diff --git a/rt/etc/schema.Pg b/rt/etc/schema.Pg
deleted file mode 100755
index ba0d6fc..0000000
--- a/rt/etc/schema.Pg
+++ /dev/null
@@ -1,578 +0,0 @@
-------------------------------------------------------------------
--- My2Pg 1.23 translated dump
---
-------------------------------------------------------------------
-
-BEGIN;
-
-
-
-
---
--- Sequences for table ATTACHMENTS
---
-
-CREATE SEQUENCE attachments_id_seq;
-
--- {{{ Attachments
-
-CREATE TABLE Attachments (
- id INTEGER DEFAULT nextval('attachments_id_seq'),
- TransactionId integer NOT NULL ,
- Parent integer NOT NULL DEFAULT 0 ,
- MessageId varchar(160) NULL ,
- Subject varchar(255) NULL ,
- Filename varchar(255) NULL ,
- ContentType varchar(80) NULL ,
- ContentEncoding varchar(80) NULL ,
- Content text NULL ,
- Headers text NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX Attachments1 ON Attachments (Parent) ;
-CREATE INDEX Attachments2 ON Attachments (TransactionId) ;
-CREATE INDEX Attachments3 ON Attachments (Parent, TransactionId) ;
--- }}}
-
--- {{{ Queues
-
-
---
--- Sequences for table QUEUES
---
-
-CREATE SEQUENCE queues_id_seq;
-
-CREATE TABLE Queues (
- id INTEGER DEFAULT nextval('queues_id_seq'),
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- CorrespondAddress varchar(120) NULL ,
- CommentAddress varchar(120) NULL ,
- InitialPriority integer NOT NULL DEFAULT 0 ,
- FinalPriority integer NOT NULL DEFAULT 0 ,
- DefaultDueIn integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-
-);
-CREATE UNIQUE INDEX Queues1 ON Queues (Name) ;
-
--- }}}
-
--- {{{ Links
-
-
-
---
--- Sequences for table LINKS
---
-
-CREATE SEQUENCE links_id_seq;
-
-CREATE TABLE Links (
- id INTEGER DEFAULT nextval('links_id_seq'),
- Base varchar(240) NULL ,
- Target varchar(240) NULL ,
- Type varchar(20) NOT NULL ,
- LocalTarget integer NOT NULL DEFAULT 0 ,
- LocalBase integer NOT NULL DEFAULT 0 ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ;
-
--- }}}
-
--- {{{ Principals
-
-
-
---
--- Sequences for table PRINCIPALS
---
-
-CREATE SEQUENCE principals_id_seq;
-
-CREATE TABLE Principals (
- id INTEGER DEFAULT nextval('principals_id_seq') not null,
- PrincipalType VARCHAR(16) not null,
- ObjectId integer,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX Principals2 ON Principals (ObjectId);
-
-
--- }}}
-
--- {{{ Groups
-
-
-
---
--- Sequences for table GROUPS
---
-
-CREATE SEQUENCE groups_id_seq;
-
-CREATE TABLE Groups (
- id INTEGER DEFAULT nextval('groups_id_seq'),
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- Domain varchar(64),
- Type varchar(64),
- Instance varchar(64),
- PRIMARY KEY (id)
-
-);
-CREATE UNIQUE INDEX Groups1 ON Groups (Domain,Instance,Type,id, Name);
-CREATE INDEX Groups2 On Groups (Type, Instance, Domain);
-
-
--- }}}
-
--- {{{ ScripConditions
-
-
-
---
--- Sequences for table SCRIPCONDITIONS
---
-
-CREATE SEQUENCE scripconditions_id_seq;
-
-CREATE TABLE ScripConditions (
- id INTEGER DEFAULT nextval('scripconditions_id_seq'),
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- ApplicableTransTypes varchar(60) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ Transactions
-
-
---
--- Sequences for table TRANSACTIONS
---
-
-CREATE SEQUENCE transactions_id_seq;
-
-CREATE TABLE Transactions (
- id INTEGER DEFAULT nextval('transactions_id_seq'),
- EffectiveTicket integer NOT NULL DEFAULT 0 ,
- Ticket integer NOT NULL DEFAULT 0 ,
- TimeTaken integer NOT NULL DEFAULT 0 ,
- Type varchar(20) NULL ,
- Field varchar(40) NULL ,
- OldValue varchar(255) NULL ,
- NewValue varchar(255) NULL ,
- Data varchar(100) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-CREATE INDEX Transactions1 ON Transactions (Ticket);
-CREATE INDEX Transactions2 ON Transactions (EffectiveTicket);
-
--- }}}
-
--- {{{ Scrips
-
-
-
---
--- Sequences for table SCRIPS
---
-
-CREATE SEQUENCE scrips_id_seq;
-
-CREATE TABLE Scrips (
- id INTEGER DEFAULT nextval('scrips_id_seq'),
- Description varchar(255),
- ScripCondition integer NOT NULL DEFAULT 0 ,
- ScripAction integer NOT NULL DEFAULT 0 ,
- ConditionRules text NULL ,
- ActionRules text NULL ,
- CustomIsApplicableCode text NULL ,
- CustomPrepareCode text NULL ,
- CustomCommitCode text NULL ,
- Stage varchar(32) NULL ,
- Queue integer NOT NULL DEFAULT 0 ,
- Template integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ ACL
-
-
---
--- Sequences for table ACL
---
-
-CREATE SEQUENCE acl_id_seq;
-
-CREATE TABLE ACL (
- id INTEGER DEFAULT nextval('acl_id_seq'),
- PrincipalType varchar(25) NOT NULL,
-
- PrincipalId integer NOT NULL ,
- RightName varchar(25) NOT NULL ,
- ObjectType varchar(25) NOT NULL ,
- ObjectId integer NOT NULL DEFAULT 0,
- DelegatedBy integer NOT NULL DEFAULT 0,
- DelegatedFrom integer NOT NULL DEFAULT 0,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX ACL1 on ACL(RightName, ObjectType, ObjectId,PrincipalType,PrincipalId);
-
-
--- }}}
-
--- {{{ GroupMembers
-
-
-
---
--- Sequences for table GROUPMEMBERS
---
-
-CREATE SEQUENCE groupmembers_id_seq;
-
-CREATE TABLE GroupMembers (
- id INTEGER DEFAULT nextval('groupmembers_id_seq'),
- GroupId integer NOT NULL DEFAULT 0,
- MemberId integer NOT NULL DEFAULT 0,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ GroupMembersCache
-
-
-
---
--- Sequences for table CACHEDGROUPMEMBERS
---
-
-CREATE SEQUENCE cachedgroupmembers_id_seq;
-
-CREATE TABLE CachedGroupMembers (
- id int DEFAULT nextval('cachedgroupmembers_id_seq'),
- GroupId int,
- MemberId int,
- Via int,
- ImmediateParentId int,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX CachedGroupMembers2 on CachedGroupMembers (MemberId);
-CREATE INDEX CachedGroupMembers3 on CachedGroupMembers (GroupId);
-CREATE INDEX DisGrouMem on CachedGroupMembers (GroupId,MemberId,Disabled);
-
--- }}}
-
--- {{{ Users
-
-
-
---
--- Sequences for table USERS
---
-
-CREATE SEQUENCE users_id_seq;
-
-CREATE TABLE Users (
- id INTEGER DEFAULT nextval('users_id_seq'),
- Name varchar(200) NOT NULL ,
- Password varchar(40) NULL ,
- Comments text NULL ,
- Signature text NULL ,
- EmailAddress varchar(120) NULL ,
- FreeformContactInfo text NULL ,
- Organization varchar(200) NULL ,
- RealName varchar(120) NULL ,
- NickName varchar(16) NULL ,
- Lang varchar(16) NULL ,
- EmailEncoding varchar(16) NULL ,
- WebEncoding varchar(16) NULL ,
- ExternalContactInfoId varchar(100) NULL ,
- ContactInfoSystem varchar(30) NULL ,
- ExternalAuthId varchar(100) NULL ,
- AuthSystem varchar(30) NULL ,
- Gecos varchar(16) NULL ,
- HomePhone varchar(30) NULL ,
- WorkPhone varchar(30) NULL ,
- MobilePhone varchar(30) NULL ,
- PagerPhone varchar(30) NULL ,
- Address1 varchar(200) NULL ,
- Address2 varchar(200) NULL ,
- City varchar(100) NULL ,
- State varchar(100) NULL ,
- Zip varchar(16) NULL ,
- Country varchar(50) NULL ,
- Timezone varchar(50) NULL ,
- PGPKey text NULL,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
-
-CREATE UNIQUE INDEX Users1 ON Users (Name) ;
-CREATE INDEX Users2 ON Users (Name);
-CREATE INDEX Users3 ON Users (id, EmailAddress);
-CREATE INDEX Users4 ON Users (EmailAddress);
-
-
--- }}}
-
--- {{{ Tickets
-
-
-
---
--- Sequences for table TICKETS
---
-
-CREATE SEQUENCE tickets_id_seq;
-
-CREATE TABLE Tickets (
- id INTEGER DEFAULT nextval('tickets_id_seq'),
- EffectiveId integer NOT NULL DEFAULT 0 ,
- Queue integer NOT NULL DEFAULT 0 ,
- Type varchar(16) NULL ,
- IssueStatement integer NOT NULL DEFAULT 0 ,
- Resolution integer NOT NULL DEFAULT 0 ,
- Owner integer NOT NULL DEFAULT 0 ,
- Subject varchar(200) NULL DEFAULT '[no subject]' ,
- InitialPriority integer NOT NULL DEFAULT 0 ,
- FinalPriority integer NOT NULL DEFAULT 0 ,
- Priority integer NOT NULL DEFAULT 0 ,
- TimeEstimated integer NOT NULL DEFAULT 0 ,
- TimeWorked integer NOT NULL DEFAULT 0 ,
- Status varchar(10) NULL ,
- TimeLeft integer NOT NULL DEFAULT 0 ,
- Told TIMESTAMP NULL ,
- Starts TIMESTAMP NULL ,
- Started TIMESTAMP NULL ,
- Due TIMESTAMP NULL ,
- Resolved TIMESTAMP NULL ,
-
-
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX Tickets1 ON Tickets (Queue, Status) ;
-CREATE INDEX Tickets2 ON Tickets (Owner) ;
-CREATE INDEX Tickets3 ON Tickets (EffectiveId) ;
-CREATE INDEX Tickets4 ON Tickets (id, Status) ;
-CREATE INDEX Tickets5 ON Tickets (id, EffectiveId) ;
-
--- }}}
-
--- {{{ ScripActions
-
-
-
---
--- Sequences for table SCRIPACTIONS
---
-
-CREATE SEQUENCE scripactions_id_seq;
-
-CREATE TABLE ScripActions (
- id INTEGER DEFAULT nextval('scripactions_id_seq'),
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ Templates
-
-
-
---
--- Sequences for table TEMPLATES
---
-
-CREATE SEQUENCE templates_id_seq;
-
-CREATE TABLE Templates (
- id INTEGER DEFAULT nextval('templates_id_seq'),
- Queue integer NOT NULL DEFAULT 0 ,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- Type varchar(16) NULL ,
- Language varchar(16) NULL ,
- TranslationOf integer NOT NULL DEFAULT 0 ,
- Content text NULL ,
- LastUpdated TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ TicketCustomFieldValues
-
-
-
---
--- Sequences for table TICKETCUSTOMFIELDVALUES
---
-
-CREATE SEQUENCE ticketcustomfieldvalues_id_s;
-
-CREATE TABLE TicketCustomFieldValues (
- id INTEGER DEFAULT nextval('ticketcustomfieldvalues_id_s'),
- Ticket int NOT NULL ,
- CustomField int NOT NULL ,
- Content varchar(255) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ CustomFields
-
-
-
---
--- Sequences for table CUSTOMFIELDS
---
-
-CREATE SEQUENCE customfields_id_seq;
-
-CREATE TABLE CustomFields (
- id INTEGER DEFAULT nextval('customfields_id_seq'),
- Name varchar(200) NULL ,
- Type varchar(200) NULL ,
- Queue integer NOT NULL DEFAULT 0 ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ CustomFieldValues
-
-
-
---
--- Sequences for table CUSTOMFIELDVALUES
---
-
-CREATE SEQUENCE customfieldvalues_id_seq;
-
-CREATE TABLE CustomFieldValues (
- id INTEGER DEFAULT nextval('customfieldvalues_id_seq'),
- CustomField int NOT NULL ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
--- {{{ Sessions
-
--- sessions is used by Apache::Session to keep sessions in the database.
--- We should have a reaper script somewhere.
-
-CREATE TABLE sessions (
- id char(32) NOT NULL,
- a_session bytea,
- LastUpdated TIMESTAMP not null default current_timestamp,
- PRIMARY KEY (id)
-
-);
-
--- }}}
-
-
-
-COMMIT;
diff --git a/rt/etc/schema.SQLite b/rt/etc/schema.SQLite
deleted file mode 100644
index 8791bb4..0000000
--- a/rt/etc/schema.SQLite
+++ /dev/null
@@ -1,442 +0,0 @@
---- {{{ Attachments
-
-CREATE TABLE Attachments (
- id INTEGER PRIMARY KEY ,
- TransactionId INTEGER ,
- Parent integer NULL ,
- MessageId varchar(160) NULL ,
- Subject varchar(255) NULL ,
- Filename varchar(255) NULL ,
- ContentType varchar(80) NULL ,
- ContentEncoding varchar(80) NULL ,
- Content LONGTEXT NULL ,
- Headers LONGTEXT NULL ,
- Creator integer NULL ,
- Created DATETIME NULL
-
-) ;
-
-CREATE INDEX Attachments1 ON Attachments (Parent) ;
-CREATE INDEX Attachments2 ON Attachments (TransactionId) ;
-CREATE INDEX Attachments3 ON Attachments (Parent, TransactionId) ;
---- }}}
-
---- {{{ Queues
-CREATE TABLE Queues (
- id INTEGER PRIMARY KEY ,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- CorrespondAddress varchar(120) NULL ,
- CommentAddress varchar(120) NULL ,
- InitialPriority integer NULL ,
- FinalPriority integer NULL ,
- DefaultDueIn integer NULL ,
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0
-
-) ;
-CREATE UNIQUE INDEX Queues1 ON Queues (Name) ;
-
---- }}}
-
---- {{{ Links
-
-CREATE TABLE Links (
- id INTEGER PRIMARY KEY ,
- Base varchar(240) NULL ,
- Target varchar(240) NULL ,
- Type varchar(20) NOT NULL ,
- LocalTarget integer NULL ,
- LocalBase integer NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL ,
- Creator integer NULL ,
- Created DATETIME NULL
-
-) ;
-CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ;
-CREATE INDEX Links4 ON Links(Type,LocalBase);
-
---- }}}
-
---- {{{ Principals
-
-CREATE TABLE Principals (
- id INTEGER PRIMARY KEY,
- PrincipalType VARCHAR(16) not null,
- ObjectId integer,
- Disabled int2 NOT NULL DEFAULT 0
-
-) ;
-
---- }}}
-
---- {{{ Groups
-
-CREATE TABLE Groups (
- id INTEGER ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- Domain varchar(64),
- Type varchar(64),
- Instance integer
-
-) ;
-
-CREATE UNIQUE INDEX Groups1 ON Groups (Name,Domain,Type,Instance) ;
-
---- }}}
-
---- {{{ ScripConditions
-
-CREATE TABLE ScripConditions (
- id INTEGER PRIMARY KEY ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- ApplicableTransTypes varchar(60) NULL ,
-
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-
---- }}}
-
---- {{{ Transactions
-CREATE TABLE Transactions (
- id INTEGER PRIMARY KEY ,
- ObjectType varchar(255) NULL ,
- ObjectId integer NULL ,
- TimeTaken integer NULL ,
- Type varchar(20) NULL ,
- Field varchar(40) NULL ,
- OldValue varchar(255) NULL ,
- NewValue varchar(255) NULL ,
- ReferenceType varchar(255) NULL ,
- OldReference integer NULL ,
- NewReference integer NULL ,
- Data varchar(255) NULL ,
-
- Creator integer NULL ,
- Created DATETIME NULL
-
-) ;
-CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
-
---- }}}
-
---- {{{ Scrips
-
-CREATE TABLE Scrips (
- id INTEGER PRIMARY KEY ,
- Description varchar(255),
- ScripCondition integer NULL ,
- ScripAction integer NULL ,
- ConditionRules text NULL ,
- ActionRules text NULL ,
- CustomIsApplicableCode text NULL ,
- CustomPrepareCode text NULL ,
- CustomCommitCode text NULL ,
- Stage varchar(32) NULL ,
- Queue integer NULL ,
- Template integer NULL ,
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-
---- }}}
-
---- {{{ ACL
-CREATE TABLE ACL (
- id INTEGER PRIMARY KEY ,
- PrincipalType varchar(25) NOT NULL,
-
- PrincipalId INTEGER,
- RightName varchar(25) NOT NULL ,
- ObjectType varchar(25) NOT NULL ,
- ObjectId INTEGER default 0,
- DelegatedBy integer NOT NULL default 0,
- DelegatedFrom integer NOT NULL default 0
-
-) ;
-
-
---- }}}
-
---- {{{ GroupMembers
-
-CREATE TABLE GroupMembers (
- id INTEGER PRIMARY KEY ,
- GroupId integer NULL,
- MemberId integer NULL
-
-) ;
-
---- }}}
-
---- {{{ CachedGroupMembers
-
-create table CachedGroupMembers (
- id integer primary key ,
- GroupId int,
- MemberId int,
- Via int,
- ImmediateParentId int,
- Disabled int2 NOT NULL DEFAULT 0 # if this cached group member is a member of this group by way of a disabled
- # group or this group is disabled, this will be set to 1
- # this allows us to not find members of disabled subgroups when listing off
- # group members recursively.
- # Also, this allows us to have the ACL system elide members of disabled groups
-
-
-) ;
-
---- }}}
-
---- {{{ Users
-
-CREATE TABLE Users (
- id INTEGER ,
- Name varchar(200) NOT NULL ,
- Password varchar(40) NULL ,
- Comments blob NULL ,
- Signature blob NULL ,
- EmailAddress varchar(120) NULL ,
- FreeformContactInfo blob NULL ,
- Organization varchar(200) NULL ,
- RealName varchar(120) NULL ,
- NickName varchar(16) NULL ,
- Lang varchar(16) NULL ,
- EmailEncoding varchar(16) NULL ,
- WebEncoding varchar(16) NULL ,
- ExternalContactInfoId varchar(100) NULL ,
- ContactInfoSystem varchar(30) NULL ,
- ExternalAuthId varchar(100) NULL ,
- AuthSystem varchar(30) NULL ,
- Gecos varchar(16) NULL ,
- HomePhone varchar(30) NULL ,
- WorkPhone varchar(30) NULL ,
- MobilePhone varchar(30) NULL ,
- PagerPhone varchar(30) NULL ,
- Address1 varchar(200) NULL ,
- Address2 varchar(200) NULL ,
- City varchar(100) NULL ,
- State varchar(100) NULL ,
- Zip varchar(16) NULL ,
- Country varchar(50) NULL ,
- Timezone char(50) NULL ,
- PGPKey text NULL,
-
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-
-
-CREATE UNIQUE INDEX Users1 ON Users (Name) ;
-CREATE INDEX Users2 ON Users (Name);
-CREATE INDEX Users3 ON Users (id, EmailAddress);
-CREATE INDEX Users4 ON Users (EmailAddress);
-
-
---- }}}
-
---- {{{ Tickets
-
-CREATE TABLE Tickets (
- id INTEGER PRIMARY KEY ,
- EffectiveId integer NULL ,
- Queue integer NULL ,
- Type varchar(16) NULL ,
- IssueStatement integer NULL ,
- Resolution integer NULL ,
- Owner integer NULL ,
- Subject varchar(200) NULL DEFAULT '[no subject]' ,
- InitialPriority integer NULL ,
- FinalPriority integer NULL ,
- Priority integer NULL ,
- TimeEstimated integer NULL ,
- TimeWorked integer NULL ,
- Status varchar(10) NULL ,
- TimeLeft integer NULL ,
- Told DATETIME NULL ,
- Starts DATETIME NULL ,
- Started DATETIME NULL ,
- Due DATETIME NULL ,
- Resolved DATETIME NULL ,
-
-
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL ,
- Creator integer NULL ,
- Created DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0
-
-) ;
-
-CREATE INDEX Tickets1 ON Tickets (Queue, Status) ;
-CREATE INDEX Tickets2 ON Tickets (Owner) ;
-CREATE INDEX Tickets3 ON Tickets (EffectiveId) ;
-CREATE INDEX Tickets4 ON Tickets (id, Status) ;
-CREATE INDEX Tickets5 ON Tickets (id, EffectiveId) ;
-
---- }}}
-
---- {{{ ScripActions
-
-CREATE TABLE ScripActions (
- id INTEGER PRIMARY KEY ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-
---- }}}
-
---- {{{ Templates
-
-CREATE TABLE Templates (
- id INTEGER PRIMARY KEY ,
- Queue integer NOT NULL DEFAULT 0 ,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- Type varchar(16) NULL ,
- Language varchar(16) NULL ,
- TranslationOf integer NULL ,
- Content blob NULL ,
- LastUpdated DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- Creator integer NULL ,
- Created DATETIME NULL
-
-) ;
-
---- }}}
-
-
-
-# {{{ ObjectCustomFieldValues
-
-CREATE TABLE ObjectCustomFieldValues (
- id INTEGER NOT NULL ,
- CustomField int NOT NULL ,
- ObjectType varchar(255) NOT NULL, # Final target of the Object
- ObjectId int NOT NULL , # New -- Replaces Ticket
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Content varchar(255) NULL ,
- LargeContent LONGTEXT NULL, # New -- to hold 255+ strings
- ContentType varchar(80) NULL, # New -- only text/* gets searched
- ContentEncoding varchar(80) NULL , # New -- for binary Content
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX ObjectCustomFieldValues1 ON ObjectCustomFieldValues (Content);
-CREATE INDEX ObjectCustomFieldValues2 ON ObjectCustomFieldValues (CustomField,ObjectType,ObjectId);
-
-# }}}
-
-# {{{ CustomFields
-
-CREATE TABLE CustomFields (
- id INTEGER NOT NULL ,
- Name varchar(200) NULL ,
- Type varchar(200) NULL , # Changed -- 'Single' and 'Multiple' is moved out
- MaxValues integer, # New -- was 'Single'(1) and 'Multiple'(0)
- Pattern varchar(255) NULL , # New -- Must validate against this
- Repeated int2 NOT NULL DEFAULT 0 , # New -- repeated table entry
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
- LookupType varchar(255) NOT NULL,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ ObjectCustomFields
-
-CREATE TABLE ObjectCustomFields (
- id INTEGER NOT NULL ,
- CustomField int NOT NULL ,
- ObjectId integer NOT NULL,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ CustomFieldValues
-
-CREATE TABLE CustomFieldValues (
- id INTEGER NOT NULL ,
- CustomField int NOT NULL ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX CustomFieldValues1 ON CustomFieldValues (CustomField);
-
-# }}}
-
---- {{{ Attributes
-CREATE TABLE Attributes (
- id INTEGER PRIMARY KEY ,
- Name varchar(255) NOT NULL ,
- Description varchar(255) NULL ,
- Content LONGTEXT NULL ,
- ContentType varchar(16),
- ObjectType varchar(25) NOT NULL ,
- ObjectId INTEGER default 0,
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
---- }}}
-
diff --git a/rt/etc/schema.Sybase b/rt/etc/schema.Sybase
deleted file mode 100644
index 67a411d..0000000
--- a/rt/etc/schema.Sybase
+++ /dev/null
@@ -1,444 +0,0 @@
-# {{{ Attachments
-
-CREATE TABLE rt3.Attachments (
- id numeric(38,0) identity,
- TransactionId integer NOT NULL ,
- Parent integer NOT NULL ,
- MessageId varchar(160) NULL ,
- Subject varchar(255) NULL ,
- Filename varchar(255) NULL ,
- ContentType varchar(80) NULL ,
- ContentEncoding varchar(80) NULL ,
- Content TEXT NULL ,
- Headers TEXT NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX Attachments1 ON Attachments (Parent) ;
-CREATE INDEX Attachments2 ON Attachments (TransactionId) ;
-CREATE INDEX Attachments3 ON Attachments (Parent, TransactionId) ;
-# }}}
-
-# {{{ Queues
-CREATE TABLE rt3.Queues (
- id numeric(38,0) identity,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- CorrespondAddress varchar(120) NULL ,
- CommentAddress varchar(120) NULL ,
- InitialPriority integer NOT NULL ,
- FinalPriority integer NOT NULL ,
- DefaultDueIn integer NOT NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- Disabled numeric(1) NOT NULL ,
- PRIMARY KEY (id)
-) ;
-CREATE UNIQUE INDEX Queues1 ON Queues (Name) ;
-CREATE INDEX Queues2 ON Queues (Disabled) ;
-
-# }}}
-
-# {{{ Links
-
-CREATE TABLE rt3.Links (
- id numeric(38,0) identity,
- Base varchar(240) NULL ,
- Target varchar(240) NULL ,
- Type varchar(20) NOT NULL ,
- LocalTarget integer NOT NULL ,
- LocalBase integer NOT NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ;
-CREATE INDEX Links2 ON Links (Base, Type) ;
-CREATE INDEX Links3 ON Links (Target, Type) ;
-CREATE INDEX Links4 ON Links(Type,LocalBase);
-
-# }}}
-
-# {{{ Principals
-
-CREATE TABLE rt3.Principals (
- id numeric(38,0) identity,
- PrincipalType VARCHAR(16) not null,
- ObjectId integer, Disabled numeric(1) NOT NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX Principals2 ON Principals (ObjectId);
-
-# }}}
-
-# {{{ Groups
-
-CREATE TABLE rt3.Groups (
- id numeric(38,0) identity,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- Domain varchar(64),
- Type varchar(64),
- Instance integer,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX Groups1 ON Groups (Domain,Instance,Type,id);
-CREATE INDEX Groups2 On Groups (Type, Instance, Domain);
-
-# }}}
-
-# {{{ ScripConditions
-
-CREATE TABLE rt3.ScripConditions (
- id numeric(38,0) identity,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- ApplicableTransTypes varchar(60) NULL ,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ Transactions
-CREATE TABLE rt3.Transactions (
- id numeric(38,0) identity,
- EffectiveTicket integer NOT NULL ,
- Ticket integer NOT NULL ,
- TimeTaken integer NOT NULL ,
- Type varchar(20) NULL ,
- Field varchar(40) NULL ,
- OldValue varchar(255) NULL ,
- NewValue varchar(255) NULL ,
- Data varchar(255) NULL ,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-CREATE INDEX Transactions1 ON Transactions (Ticket);
-CREATE INDEX Transactions2 ON Transactions (EffectiveTicket);
-
-# }}}
-
-# {{{ Scrips
-
-CREATE TABLE rt3.Scrips (
- id numeric(38,0) identity,
- Description varchar(255),
- ScripCondition integer NOT NULL ,
- ScripAction integer NOT NULL ,
- ConditionRules text NULL ,
- ActionRules text NULL ,
- CustomIsApplicableCode text NULL ,
- CustomPrepareCode text NULL ,
- CustomCommitCode text NULL ,
- Stage varchar(32) NULL ,
- Queue integer NOT NULL ,
- Template integer NOT NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ ACL
-CREATE TABLE rt3.ACL (
- id numeric(38,0) identity,
- PrincipalType varchar(25) NOT NULL, #"User" "Group", "Owner", "Cc" "AdminCc", "Requestor", "Requestor"
-
- PrincipalId integer NOT NULL , #Foreign key to principals
- RightName varchar(25) NOT NULL ,
- ObjectType varchar(25) NOT NULL ,
- ObjectId integer NOT NULL ,
- DelegatedBy integer NOT NULL , #foreign key to principals with a userid
- DelegatedFrom integer NOT NULL , #foreign key to ACL
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX ACL1 on ACL(RightName, ObjectType, ObjectId,PrincipalType,PrincipalId);
-
-# }}}
-
-# {{{ GroupMembers
-
-CREATE TABLE rt3.GroupMembers (
- id numeric(38,0) identity,
- GroupId integer NOT NULL ,
- MemberId integer NOT NULL , #Foreign key to Principals
- PRIMARY KEY (id)
-) ;
-CREATE UNIQUE INDEX GroupMembers1 on GroupMembers (GroupId, MemberId);
-
-
-# }}}
-
-# {{{ GroupMembersCache
-
-CREATE TABLE rt3.CachedGroupMembers (
- id numeric(38,0) identity,
- GroupId int, # foreign key to Principals
- MemberId int, # foreign key to Principals
- Via int, #foreign key to CachedGroupMembers. (may point to $self->id)
- ImmediateParentId int, #foreign key to prinicpals.
- # this points to the group that the member is
- # a member of, for ease of deletes.
- Disabled numeric(1) NOT NULL , # if this cached group member is a member of this group by way of a disabled
- # group or this group is disabled, this will be set to 1
- # this allows us to not find members of disabled subgroups when listing off
- # group members recursively.
- # Also, this allows us to have the ACL system elide members of disabled groups
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX DisGrouMem on CachedGroupMembers (GroupId,MemberId,Disabled);
-CREATE INDEX GrouMem on CachedGroupMembers (GroupId,MemberId);
-
-# }}}
-
-# {{{ Users
-
-CREATE TABLE rt3.Users (
- id numeric(38,0) identity,
- Name varchar(200) NOT NULL ,
- Password varchar(40) NULL ,
- Comments text NULL ,
- Signature text NULL ,
- EmailAddress varchar(120) NULL ,
- FreeformContactInfo text NULL ,
- Organization varchar(200) NULL ,
- RealName varchar(120) NULL ,
- NickName varchar(16) NULL ,
- Lang varchar(16) NULL ,
- EmailEncoding varchar(16) NULL ,
- WebEncoding varchar(16) NULL ,
- ExternalContactInfoId varchar(100) NULL ,
- ContactInfoSystem varchar(30) NULL ,
- ExternalAuthId varchar(100) NULL ,
- AuthSystem varchar(30) NULL ,
- Gecos varchar(16) NULL ,
- HomePhone varchar(30) NULL ,
- WorkPhone varchar(30) NULL ,
- MobilePhone varchar(30) NULL ,
- PagerPhone varchar(30) NULL ,
- Address1 varchar(200) NULL ,
- Address2 varchar(200) NULL ,
- City varchar(100) NULL ,
- State varchar(100) NULL ,
- Zip varchar(16) NULL ,
- Country varchar(50) NULL ,
- Timezone varchar(50) NULL ,
- PGPKey text NULL,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-
-CREATE UNIQUE INDEX Users1 ON Users (Name) ;
-CREATE INDEX Users2 ON Users (Name);
-CREATE INDEX Users3 ON Users (id, EmailAddress);
-CREATE INDEX Users4 ON Users (EmailAddress);
-
-
-# }}}
-
-# {{{ Tickets
-
-CREATE TABLE rt3.Tickets (
- id numeric(38,0) identity,
- EffectiveId integer NOT NULL ,
- Queue integer NOT NULL ,
- Type varchar(16) NULL ,
- IssueStatement integer NOT NULL ,
- Resolution integer NOT NULL ,
- Owner integer NOT NULL ,
- Subject varchar(200) NULL,
- InitialPriority integer NOT NULL ,
- FinalPriority integer NOT NULL ,
- Priority integer NOT NULL ,
- TimeEstimated integer NOT NULL ,
- TimeWorked integer NOT NULL ,
- Status varchar(10) NULL ,
- TimeLeft integer NOT NULL ,
- Told DATETIME NULL ,
- Starts DATETIME NULL ,
- Started DATETIME NULL ,
- Due DATETIME NULL ,
- Resolved DATETIME NULL ,
-
-
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- Disabled numeric(1) NOT NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX Tickets1 ON Tickets (Queue, Status) ;
-CREATE INDEX Tickets2 ON Tickets (Owner) ;
-CREATE INDEX Tickets3 ON Tickets (EffectiveId) ;
-CREATE INDEX Tickets4 ON Tickets (id, Status) ;
-CREATE INDEX Tickets5 ON Tickets (id, EffectiveId) ;
-CREATE INDEX Tickets6 ON Tickets (EffectiveId, Type) ;
-
-# }}}
-
-# {{{ ScripActions
-
-CREATE TABLE rt3.ScripActions (
- id numeric(38,0) identity,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ Templates
-
-CREATE TABLE rt3.Templates (
- id numeric(38,0) identity,
- Queue integer NOT NULL ,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- Type varchar(16) NULL ,
- Language varchar(16) NULL ,
- TranslationOf integer NOT NULL ,
- Content text NULL ,
- LastUpdated DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-# }}}
-
-# {{{ TicketCustomFieldValues
-
-CREATE TABLE rt3.TicketCustomFieldValues (
- id numeric(38,0) identity,
- Ticket int NOT NULL ,
- CustomField int NOT NULL ,
- Content varchar(255) NULL ,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX TicketCustomFieldValues1 ON TicketCustomFieldValues (CustomField,Ticket,Content);
-CREATE INDEX TicketCustomFieldValues2 ON TicketCustomFieldValues (CustomField,Ticket);
-
-# }}}
-
-# {{{ CustomFields
-
-CREATE TABLE rt3.CustomFields (
- id numeric(38,0) identity,
- Name varchar(200) NULL ,
- Type varchar(200) NULL ,
- Queue integer NOT NULL ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL ,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- Disabled numeric(1) NOT NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX CustomFields1 on CustomFields (Disabled, Queue);
-
-
-# }}}
-
-# {{{ CustomFieldValues
-
-CREATE TABLE rt3.CustomFieldValues (
- id numeric(38,0) identity,
- CustomField int NOT NULL ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL ,
-
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX CustomFieldValues1 ON CustomFieldValues (CustomField);
-
-# }}}
-
-
-# {{{ Attributes
-
-CREATE TABLE rt3.Attributes (
- id numeric(38,0) identity,
- Name varchar(255) NULL ,
- Description varchar(255) NULL ,
- Content text,
- ContentType varchar(16),
- ObjectType varchar(64),
- ObjectId integer, # foreign key to anything
- Creator integer NOT NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) ;
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
-# }}}
-
-# {{{ Sessions
-
-# sessions is used by Apache::Session to keep sessions in the database.
-# We should have a reaper script somewhere.
-
-CREATE TABLE rt3.sessions (
- id char(32) NOT NULL,
- a_session TEXT,
- LastUpdated DATETIME,
- PRIMARY KEY (id)
-);
-
-# }}}
diff --git a/rt/etc/schema.mysql b/rt/etc/schema.mysql
deleted file mode 100755
index 46f8ec5..0000000
--- a/rt/etc/schema.mysql
+++ /dev/null
@@ -1,416 +0,0 @@
-# {{{ Attachments
-
-CREATE TABLE Attachments (
- id INTEGER NOT NULL AUTO_INCREMENT,
- TransactionId integer NOT NULL ,
- Parent integer NOT NULL DEFAULT 0 ,
- MessageId varchar(160) NULL ,
- Subject varchar(255) NULL ,
- Filename varchar(255) NULL ,
- ContentType varchar(80) NULL ,
- ContentEncoding varchar(80) NULL ,
- Content LONGTEXT NULL ,
- Headers LONGTEXT NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX Attachments1 ON Attachments (Parent) ;
-CREATE INDEX Attachments2 ON Attachments (TransactionId) ;
-CREATE INDEX Attachments3 ON Attachments (Parent, TransactionId) ;
-# }}}
-
-# {{{ Queues
-CREATE TABLE Queues (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- CorrespondAddress varchar(120) NULL ,
- CommentAddress varchar(120) NULL ,
- InitialPriority integer NOT NULL DEFAULT 0 ,
- FinalPriority integer NOT NULL DEFAULT 0 ,
- DefaultDueIn integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-CREATE UNIQUE INDEX Queues1 ON Queues (Name) ;
-CREATE INDEX Queues2 ON Queues (Disabled) ;
-
-# }}}
-
-# {{{ Links
-
-CREATE TABLE Links (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Base varchar(240) NULL ,
- Target varchar(240) NULL ,
- Type varchar(20) NOT NULL ,
- LocalTarget integer NOT NULL DEFAULT 0 ,
- LocalBase integer NOT NULL DEFAULT 0 ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ;
-CREATE INDEX Links2 ON Links (Base, Type) ;
-CREATE INDEX Links3 ON Links (Target, Type) ;
-
-# }}}
-
-# {{{ Principals
-
-CREATE TABLE Principals (
- id INTEGER AUTO_INCREMENT not null,
- PrincipalType VARCHAR(16) not null,
- ObjectId integer, # foreign key to Users or Groups, depending
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX Principals2 ON Principals (ObjectId);
-
-# }}}
-
-# {{{ Groups
-
-CREATE TABLE Groups (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- Domain varchar(64),
- Type varchar(64),
- Instance varchar(64),
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX Groups1 ON Groups (Domain,Instance,Type,id);
-CREATE INDEX Groups2 On Groups (Type, Instance, Domain);
-
-# }}}
-
-# {{{ ScripConditions
-
-CREATE TABLE ScripConditions (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- ApplicableTransTypes varchar(60) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ Transactions
-CREATE TABLE Transactions (
- id INTEGER NOT NULL AUTO_INCREMENT,
- EffectiveTicket integer NOT NULL DEFAULT 0 ,
- Ticket integer NOT NULL DEFAULT 0 ,
- TimeTaken integer NOT NULL DEFAULT 0 ,
- Type varchar(20) NULL ,
- Field varchar(40) NULL ,
- OldValue varchar(255) NULL ,
- NewValue varchar(255) NULL ,
- Data varchar(100) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-CREATE INDEX Transactions1 ON Transactions (Ticket);
-CREATE INDEX Transactions2 ON Transactions (EffectiveTicket);
-
-# }}}
-
-# {{{ Scrips
-
-CREATE TABLE Scrips (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Description varchar(255),
- ScripCondition integer NOT NULL DEFAULT 0 ,
- ScripAction integer NOT NULL DEFAULT 0 ,
- ConditionRules text NULL ,
- ActionRules text NULL ,
- CustomIsApplicableCode text NULL ,
- CustomPrepareCode text NULL ,
- CustomCommitCode text NULL ,
- Stage varchar(32) NULL ,
- Queue integer NOT NULL DEFAULT 0 ,
- Template integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ ACL
-CREATE TABLE ACL (
- id INTEGER NOT NULL AUTO_INCREMENT,
- PrincipalType varchar(25) NOT NULL, #"User" "Group", "Owner", "Cc" "AdminCc", "Requestor", "Requestor"
-
- PrincipalId integer NOT NULL , #Foreign key to principals
- RightName varchar(25) NOT NULL ,
- ObjectType varchar(25) NOT NULL ,
- ObjectId integer NOT NULL default 0,
- DelegatedBy integer NOT NULL default 0, #foreign key to principals with a userid
- DelegatedFrom integer NOT NULL default 0, #foreign key to ACL
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX ACL1 on ACL(RightName, ObjectType, ObjectId,PrincipalType,PrincipalId);
-
-# }}}
-
-# {{{ GroupMembers
-
-CREATE TABLE GroupMembers (
- id INTEGER NOT NULL AUTO_INCREMENT,
- GroupId integer NOT NULL DEFAULT 0,
- MemberId integer NOT NULL DEFAULT 0, #Foreign key to Principals
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-CREATE UNIQUE INDEX GroupMembers1 on GroupMembers (GroupId, MemberId);
-
-
-# }}}
-
-# {{{ GroupMembersCache
-
-create table CachedGroupMembers (
- id int auto_increment,
- GroupId int, # foreign key to Principals
- MemberId int, # foreign key to Principals
- Via int, #foreign key to CachedGroupMembers. (may point to $self->id)
- ImmediateParentId int, #foreign key to prinicpals.
- # this points to the group that the member is
- # a member of, for ease of deletes.
- Disabled int2 NOT NULL DEFAULT 0 , # if this cached group member is a member of this group by way of a disabled
- # group or this group is disabled, this will be set to 1
- # this allows us to not find members of disabled subgroups when listing off
- # group members recursively.
- # Also, this allows us to have the ACL system elide members of disabled groups
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX DisGrouMem on CachedGroupMembers (GroupId,MemberId,Disabled);
-CREATE INDEX GrouMem on CachedGroupMembers (GroupId,MemberId);
-
-# }}}
-
-# {{{ Users
-
-CREATE TABLE Users (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NOT NULL ,
- Password varchar(40) NULL ,
- Comments blob NULL ,
- Signature blob NULL ,
- EmailAddress varchar(120) NULL ,
- FreeformContactInfo blob NULL ,
- Organization varchar(200) NULL ,
- RealName varchar(120) NULL ,
- NickName varchar(16) NULL ,
- Lang varchar(16) NULL ,
- EmailEncoding varchar(16) NULL ,
- WebEncoding varchar(16) NULL ,
- ExternalContactInfoId varchar(100) NULL ,
- ContactInfoSystem varchar(30) NULL ,
- ExternalAuthId varchar(100) NULL ,
- AuthSystem varchar(30) NULL ,
- Gecos varchar(16) NULL ,
- HomePhone varchar(30) NULL ,
- WorkPhone varchar(30) NULL ,
- MobilePhone varchar(30) NULL ,
- PagerPhone varchar(30) NULL ,
- Address1 varchar(200) NULL ,
- Address2 varchar(200) NULL ,
- City varchar(100) NULL ,
- State varchar(100) NULL ,
- Zip varchar(16) NULL ,
- Country varchar(50) NULL ,
- Timezone varchar(50) NULL ,
- PGPKey text NULL,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-
-CREATE UNIQUE INDEX Users1 ON Users (Name) ;
-CREATE INDEX Users2 ON Users (Name);
-CREATE INDEX Users3 ON Users (id, EmailAddress);
-CREATE INDEX Users4 ON Users (EmailAddress);
-
-
-# }}}
-
-# {{{ Tickets
-
-CREATE TABLE Tickets (
- id INTEGER NOT NULL AUTO_INCREMENT,
- EffectiveId integer NOT NULL DEFAULT 0 ,
- Queue integer NOT NULL DEFAULT 0 ,
- Type varchar(16) NULL ,
- IssueStatement integer NOT NULL DEFAULT 0 ,
- Resolution integer NOT NULL DEFAULT 0 ,
- Owner integer NOT NULL DEFAULT 0 ,
- Subject varchar(200) NULL DEFAULT '[no subject]' ,
- InitialPriority integer NOT NULL DEFAULT 0 ,
- FinalPriority integer NOT NULL DEFAULT 0 ,
- Priority integer NOT NULL DEFAULT 0 ,
- TimeEstimated integer NOT NULL DEFAULT 0 ,
- TimeWorked integer NOT NULL DEFAULT 0 ,
- Status varchar(10) NULL ,
- TimeLeft integer NOT NULL DEFAULT 0 ,
- Told DATETIME NULL ,
- Starts DATETIME NULL ,
- Started DATETIME NULL ,
- Due DATETIME NULL ,
- Resolved DATETIME NULL ,
-
-
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX Tickets1 ON Tickets (Queue, Status) ;
-CREATE INDEX Tickets2 ON Tickets (Owner) ;
-CREATE INDEX Tickets3 ON Tickets (EffectiveId) ;
-CREATE INDEX Tickets4 ON Tickets (id, Status) ;
-CREATE INDEX Tickets5 ON Tickets (id, EffectiveId) ;
-CREATE INDEX Tickets6 ON Tickets (EffectiveId, Type) ;
-
-# }}}
-
-# {{{ ScripActions
-
-CREATE TABLE ScripActions (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- ExecModule varchar(60) NULL ,
- Argument varchar(255) NULL ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ Templates
-
-CREATE TABLE Templates (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Queue integer NOT NULL DEFAULT 0 ,
- Name varchar(200) NOT NULL ,
- Description varchar(255) NULL ,
- Type varchar(16) NULL ,
- Language varchar(16) NULL ,
- TranslationOf integer NOT NULL DEFAULT 0 ,
- Content blob NULL ,
- LastUpdated DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ TicketCustomFieldValues
-
-CREATE TABLE TicketCustomFieldValues (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Ticket int NOT NULL ,
- CustomField int NOT NULL ,
- Content varchar(255) NULL ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ CustomFields
-
-CREATE TABLE CustomFields (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(200) NULL ,
- Type varchar(200) NULL ,
- Queue integer NOT NULL DEFAULT 0 ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- Disabled int2 NOT NULL DEFAULT 0 ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX CustomFields1 on CustomFields (Disabled, Queue);
-
-
-# }}}
-
-# {{{ CustomFieldValues
-
-CREATE TABLE CustomFieldValues (
- id INTEGER NOT NULL AUTO_INCREMENT,
- CustomField int NOT NULL ,
- Name varchar(200) NULL ,
- Description varchar(255) NULL ,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-# }}}
-
-# {{{ Sessions
-
-# sessions is used by Apache::Session to keep sessions in the database.
-# We should have a reaper script somewhere.
-
-CREATE TABLE sessions (
- id char(32) NOT NULL,
- a_session LONGTEXT,
- LastUpdated TIMESTAMP,
- PRIMARY KEY (id)
-);
-
-# }}}
diff --git a/rt/etc/upgrade/3.1.0/acl.Informix b/rt/etc/upgrade/3.1.0/acl.Informix
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.1.0/acl.Informix
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.1.0/acl.Oracle b/rt/etc/upgrade/3.1.0/acl.Oracle
deleted file mode 100755
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.1.0/acl.Oracle
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.1.0/acl.Pg b/rt/etc/upgrade/3.1.0/acl.Pg
deleted file mode 100755
index 809e99a..0000000
--- a/rt/etc/upgrade/3.1.0/acl.Pg
+++ /dev/null
@@ -1,19 +0,0 @@
-sub acl {
- my $dbh = shift;
-
- my @acls;
-
- my @tables = qw (
- attributes_id_seq
- attributes
- );
-
- foreach my $table (@tables) {
- push @acls,
- "GRANT SELECT, INSERT, UPDATE, DELETE ON $table to "
- . $RT::DatabaseUser . ";";
-
- }
- return (@acls);
-}
-1;
diff --git a/rt/etc/upgrade/3.1.0/acl.SQLite b/rt/etc/upgrade/3.1.0/acl.SQLite
deleted file mode 100755
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.1.0/acl.SQLite
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.1.0/acl.mysql b/rt/etc/upgrade/3.1.0/acl.mysql
deleted file mode 100755
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.1.0/acl.mysql
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.1.0/content b/rt/etc/upgrade/3.1.0/content
deleted file mode 100644
index 3117daf..0000000
--- a/rt/etc/upgrade/3.1.0/content
+++ /dev/null
@@ -1,2 +0,0 @@
-# nothing to do
-1;
diff --git a/rt/etc/upgrade/3.1.0/schema.Informix b/rt/etc/upgrade/3.1.0/schema.Informix
deleted file mode 100644
index 722eb70..0000000
--- a/rt/etc/upgrade/3.1.0/schema.Informix
+++ /dev/null
@@ -1,17 +0,0 @@
-CREATE TABLE Attributes (
- id SERIAL,
- Name VARCHAR(255) DEFAULT '' NOT NULL,
- Description VARCHAR(255) DEFAULT NULL,
- Content BYTE,
- ContentType VARCHAR(16),
- ObjectType VARCHAR(25) NOT NULL,
- ObjectId INTEGER DEFAULT 0 NOT NULL,
- Creator INTEGER DEFAULT 0 NOT NULL,
- Created DATETIME YEAR TO SECOND,
- LastUpdatedBy INTEGER DEFAULT 0 NOT NULL,
- LastUpdated DATETIME YEAR TO SECOND,
- PRIMARY KEY (id)
-);
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
diff --git a/rt/etc/upgrade/3.1.0/schema.Oracle b/rt/etc/upgrade/3.1.0/schema.Oracle
deleted file mode 100644
index a8aae18..0000000
--- a/rt/etc/upgrade/3.1.0/schema.Oracle
+++ /dev/null
@@ -1,17 +0,0 @@
-CREATE SEQUENCE ATTRIBUTES_seq;
-CREATE TABLE Attributes (
- id NUMBER(11,0) PRIMARY KEY,
- Name VARCHAR2(255) NOT NULL,
- Description VARCHAR2(255),
- Content CLOB,
- ContentType VARCHAR(16),
- ObjectType VARCHAR2(25) NOT NULL,
- ObjectId NUMBER(11,0) DEFAULT 0 NOT NULL,
- Creator NUMBER(11,0) DEFAULT 0 NOT NULL,
- Created DATE,
- LastUpdatedBy NUMBER(11,0) DEFAULT 0 NOT NULL,
- LastUpdated DATE
-);
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
diff --git a/rt/etc/upgrade/3.1.0/schema.Pg b/rt/etc/upgrade/3.1.0/schema.Pg
deleted file mode 100755
index 94c3fe7..0000000
--- a/rt/etc/upgrade/3.1.0/schema.Pg
+++ /dev/null
@@ -1,25 +0,0 @@
--- {{{ Attributes
-
-CREATE SEQUENCE attributes_id_seq;
-
-CREATE TABLE Attributes (
- id INTEGER DEFAULT nextval('attributes_id_seq'),
- Name varchar(255) NOT NULL ,
- Description varchar(255) NULL ,
- Content text,
- ContentType varchar(16),
- ObjectType varchar(64),
- ObjectId integer,
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
--- }}}
-
diff --git a/rt/etc/upgrade/3.1.0/schema.SQLite b/rt/etc/upgrade/3.1.0/schema.SQLite
deleted file mode 100644
index 1dd466f..0000000
--- a/rt/etc/upgrade/3.1.0/schema.SQLite
+++ /dev/null
@@ -1,21 +0,0 @@
---- {{{ Attributes
-CREATE TABLE Attributes (
- id INTEGER PRIMARY KEY ,
- Name varchar(255) NOT NULL ,
- Description varchar(255) NULL ,
- Content LONGTEXT NULL ,
- ContentType varchar(16),
- ObjectType varchar(25) NOT NULL ,
- ObjectId INTEGER default 0,
- Creator integer NULL ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NULL ,
- LastUpdated DATETIME NULL
-
-) ;
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
---- }}}
-
diff --git a/rt/etc/upgrade/3.1.0/schema.mysql b/rt/etc/upgrade/3.1.0/schema.mysql
deleted file mode 100755
index c4a345d..0000000
--- a/rt/etc/upgrade/3.1.0/schema.mysql
+++ /dev/null
@@ -1,21 +0,0 @@
-# {{{ Attributes
-
-CREATE TABLE Attributes (
- id INTEGER NOT NULL AUTO_INCREMENT,
- Name varchar(255) NULL ,
- Description varchar(255) NULL ,
- Content text,
- ContentType varchar(16),
- ObjectType varchar(64),
- ObjectId integer, # foreign key to anything
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-CREATE INDEX Attributes1 on Attributes(Name);
-CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId);
-
-# }}}
diff --git a/rt/etc/upgrade/3.1.15/content b/rt/etc/upgrade/3.1.15/content
deleted file mode 100644
index d23125a..0000000
--- a/rt/etc/upgrade/3.1.15/content
+++ /dev/null
@@ -1,7 +0,0 @@
-@Scrips = (
- { ScripCondition => 'On Owner Change',
- ScripAction => 'Notify Owner',
- Template => 'Transaction' },
-);
-
-1;
diff --git a/rt/etc/upgrade/3.1.17/content b/rt/etc/upgrade/3.1.17/content
deleted file mode 100644
index 1d648d8..0000000
--- a/rt/etc/upgrade/3.1.17/content
+++ /dev/null
@@ -1,22 +0,0 @@
-@ScripActions = (
- { Name => 'Notify Ccs as Comment', # loc
- Description => 'Sends mail to the Ccs as a comment', # loc
- ExecModule => 'NotifyAsComment',
- Argument => 'Cc' },
- { Name => 'Notify Ccs', # loc
- Description => 'Sends mail to the Ccs', # loc
- ExecModule => 'Notify',
- Argument => 'Cc' },
-);
-
-
-@ScripConditions = (
- {
- Name => 'On Priority Change', # loc
- Description => 'Whenever a ticket\'s priority changes', # loc
- ApplicableTransTypes => 'Set',
- ExecModule => 'PriorityChange',
- },
-);
-
-1;
diff --git a/rt/etc/upgrade/3.3.0/acl.Informix b/rt/etc/upgrade/3.3.0/acl.Informix
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.0/acl.Informix
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.0/acl.Oracle b/rt/etc/upgrade/3.3.0/acl.Oracle
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.0/acl.Oracle
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.0/acl.Pg b/rt/etc/upgrade/3.3.0/acl.Pg
deleted file mode 100644
index 2069a19..0000000
--- a/rt/etc/upgrade/3.3.0/acl.Pg
+++ /dev/null
@@ -1,20 +0,0 @@
-sub acl {
- my $dbh = shift;
-
- my @acls;
-
- my @tables = qw (
- objectcustomfieldvalues
- objectcustomfields_id_s
- objectcustomfields
- );
-
- foreach my $table (@tables) {
- push @acls,
- "GRANT SELECT, INSERT, UPDATE, DELETE ON $table to "
- . $RT::DatabaseUser . ";";
-
- }
- return (@acls);
-}
-1;
diff --git a/rt/etc/upgrade/3.3.0/acl.SQLite b/rt/etc/upgrade/3.3.0/acl.SQLite
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.0/acl.SQLite
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.0/acl.mysql b/rt/etc/upgrade/3.3.0/acl.mysql
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.0/acl.mysql
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.0/content b/rt/etc/upgrade/3.3.0/content
deleted file mode 100644
index 0afc604..0000000
--- a/rt/etc/upgrade/3.3.0/content
+++ /dev/null
@@ -1 +0,0 @@
-1;
diff --git a/rt/etc/upgrade/3.3.0/schema.Oracle b/rt/etc/upgrade/3.3.0/schema.Oracle
deleted file mode 100644
index f81feeb..0000000
--- a/rt/etc/upgrade/3.3.0/schema.Oracle
+++ /dev/null
@@ -1,65 +0,0 @@
-alter Table Transactions ADD ObjectType VARCHAR2(64);
-UPDATE Transactions set ObjectType = 'RT::Ticket';
-ALTER TABLE Transactions modify ObjectType NOT NULL;
-ALTER TABLE Transactions drop column EffectiveTicket;
-ALTER TABLE Transactions ADD ReferenceType VARCHAR2(255) NULL;
-ALTER TABLE Transactions ADD OldReference NUMBER(11,0) NULL;
-ALTER TABLE Transactions ADD NewReference NUMBER(11,0) NULL;
-DROP INDEX transactions1;
-ALTER TABLE Transactions rename column Ticket to ObjectId;
-CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
-
-ALTER TABLE TicketCustomFieldValues rename to ObjectCustomFieldValues;
-ALTER TABLE ObjectCustomFieldValues rename column Ticket to ObjectId;
-ALTER TABLE ObjectCustomFieldValues ADD ObjectType VARCHAR2(255);
-UPDATE ObjectCustomFieldValues set ObjectType = 'RT::Ticket';
-ALTER TABLE ObjectCustomFieldValues MODIFY ObjectType NOT NULL;
-ALTER TABLE ObjectCustomFieldValues ADD Disabled NUMBER(11,0);
-ALTER TABLE ObjectCustomFieldValues MODIFY Disabled default 0;
-UPDATE ObjectCustomFieldValues SET Disabled = 0;
-ALTER TABLE ObjectCustomFieldValues MODIFY Disabled NOT NULL;
-ALTER TABLE ObjectCustomFieldValues ADD LargeContent CLOB NULL;
-ALTER TABLE ObjectCustomFieldValues ADD ContentType VARCHAR2(80) NULL;
-ALTER TABLE ObjectCustomFieldValues ADD ContentEncoding VARCHAR2(80) NULL;
-ALTER TABLE ObjectCustomFieldValues ADD SortOrder NUMBER(11,0) DEFAULT 0 NOT NULL;
-
-
-
-CREATE INDEX ObjectCustomFieldValues1 on ObjectCustomFieldValues (CustomField,ObjectType,ObjectId,Content);
-CREATE INDEX ObjectCustomFieldValues2 on ObjectCustomFieldValues (CustomField,ObjectType,ObjectId);
-
-
-
-CREATE SEQUENCE OBJECTCUSTOMFIELDS_seq;
-CREATE TABLE ObjectCustomFields (
- id NUMBER(11,0)
- CONSTRAINT ObjectCustomFields_Key PRIMARY KEY,
- CustomField NUMBER(11,0) NOT NULL,
- ObjectId NUMBER(11,0) NOT NULL,
- SortOrder NUMBER(11,0) DEFAULT 0 NOT NULL,
- Creator NUMBER(11,0) DEFAULT 0 NOT NULL,
- Created DATE,
- LastUpdatedBy NUMBER(11,0) DEFAULT 0 NOT NULL,
- LastUpdated DATE
-);
-
-
-INSERT into ObjectCustomFields (id, CustomField, ObjectId, SortOrder, Creator, LastUpdatedBy) SELECT objectcustomfields_seq.nextval, id, Queue, SortOrder, Creator, LastUpdatedBy from CustomFields;
-
-ALTER TABLE CustomFields ADD LookupType VARCHAR2(255);
-ALTER TABLE CustomFields ADD Repeated NUMBER(11,0);
-ALTER TABLE CustomFields ADD Pattern VARCHAR2(255) NULL;
-ALTER TABLE CustomFields ADD MaxValues NUMBER(11,0);
-
-UPDATE CustomFields SET MaxValues = 0 WHERE Type LIKE '%Multiple';
-UPDATE CustomFields SET MaxValues = 1 WHERE Type LIKE '%Single';
-UPDATE CustomFields SET Type = 'Select' WHERE Type LIKE 'Select%';
-UPDATE CustomFields SET Type = 'Freeform' WHERE Type LIKE 'Freeform%';
-UPDATE CustomFields Set LookupType = 'RT::Queue-RT::Ticket';
-ALTER TABLE CustomFields MODIFY LookupType NOT NULL;
-UPDATE CustomFields Set Repeated = 0;
-ALTER TABLE CustomFields MODIFY Repeated DEFAULT 0;
-ALTER TABLE CustomFields MODIFY Repeated NOT NULL;
-ALTER TABLE CustomFields drop column Queue;
-
-
diff --git a/rt/etc/upgrade/3.3.0/schema.Pg b/rt/etc/upgrade/3.3.0/schema.Pg
deleted file mode 100644
index 427eae7..0000000
--- a/rt/etc/upgrade/3.3.0/schema.Pg
+++ /dev/null
@@ -1,74 +0,0 @@
-alter Table Transactions ADD Column ObjectType varchar(64);
-update Transactions set ObjectType = 'RT::Ticket';
-ALTER TABLE Transactions ALTER COLUMN ObjectType SET NOT NULL;
-alter table Transactions drop column EffectiveTicket;
-alter table Transactions add column ReferenceType varchar(255) NULL;
-alter table Transactions add column OldReference integer NULL;
-alter table Transactions add column NewReference integer NULL;
-drop index transactions1;
-alter table Transactions rename column Ticket to ObjectId;
-
-
-CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
-
-alter table TicketCustomFieldValues rename to ObjectCustomFieldValues;
-
-alter table ObjectCustomFieldValues rename column Ticket to ObjectId;
-
-alter table objectcustomfieldvalues add column ObjectType varchar(255);
-
-update objectcustomfieldvalues set ObjectType = 'RT::Ticket';
-
-ALTER TABLE objectcustomfieldvalues ALTER COLUMN ObjectType SET NOT NULL;
-
-alter table objectcustomfieldvalues add column Current int;
-
-alter table objectcustomfieldvalues alter column Current SET default 1;
-
-UPDATE objectcustomfieldvalues SET Current = 1;
-
-alter table objectcustomfieldvalues add column LargeContent TEXT NULL;
-
-alter table objectcustomfieldvalues add column ContentType varchar(80) NULL;
-
-alter table objectcustomfieldvalues add column ContentEncoding varchar(80) NULL;
-
-create index ObjectCustomFieldValues1 on objectcustomfieldvalues (CustomField,ObjectType,ObjectId,Content);
-
-create index ObjectCustomFieldValues2 on objectcustomfieldvalues (CustomField,ObjectType,ObjectId);
-
-
-CREATE SEQUENCE objectcustomfields_id_s;
-
-CREATE TABLE ObjectCustomFields (
- id INTEGER DEFAULT nextval('objectcustomfields_id_s'),
- CustomField integer NOT NULL,
- ObjectId integer NOT NULL,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created TIMESTAMP NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated TIMESTAMP NULL ,
- PRIMARY KEY (id)
-
-);
-
-
-INSERT into ObjectCustomFields (CustomField, ObjectId, SortOrder, Creator, LastUpdatedBy) SELECT id, Queue, SortOrder, Creator, LastUpdatedBy from CustomFields;
-
-alter table CustomFields add column LookupType varchar(255);
-alter table CustomFields add column Repeated int2;
-alter table CustomFields add column Pattern varchar(255) NULL;
-alter table CustomFields add column MaxValues integer;
-
-UPDATE CustomFields SET MaxValues = 0 WHERE Type LIKE '%Multiple';
-UPDATE CustomFields SET MaxValues = 1 WHERE Type LIKE '%Single';
-UPDATE CustomFields SET Type = 'Select' WHERE Type LIKE 'Select%';
-UPDATE CustomFields SET Type = 'Freeform' WHERE Type LIKE 'Freeform%';
-UPDATE CustomFields Set LookupType = 'RT::Queue-RT::Ticket';
-ALTER TABLE CustomFields ALTER COLUMN LookupType SET NOT NULL;
-UPDATE CustomFields Set Repeated = 0;
-ALTER TABLE CustomFields ALTER COLUMN Repeated SET DEFAULT 0;
-ALTER TABLE CustomFields ALTER COLUMN Repeated SET NOT NULL;
-alter table CustomFields drop column Queue;
diff --git a/rt/etc/upgrade/3.3.0/schema.mysql b/rt/etc/upgrade/3.3.0/schema.mysql
deleted file mode 100644
index 0e33a28..0000000
--- a/rt/etc/upgrade/3.3.0/schema.mysql
+++ /dev/null
@@ -1,65 +0,0 @@
-alter Table Transactions ADD Column (ObjectType varchar(64) not null);
-update Transactions set ObjectType = 'RT::Ticket';
-alter table Transactions drop column EffectiveTicket;
-alter table Transactions add column ReferenceType varchar(255) NULL;
-alter table Transactions add column OldReference integer NULL;
-alter table Transactions add column NewReference integer NULL;
-alter table Transactions drop index transactions1;
-alter table Transactions change Ticket ObjectId integer NOT NULL DEFAULT 0 ;
-
-CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId);
-
-alter table TicketCustomFieldValues rename ObjectCustomFieldValues;
-
-alter table ObjectCustomFieldValues change Ticket ObjectId integer NOT NULL DEFAULT 0 ;
-
-alter table ObjectCustomFieldValues add column ObjectType varchar(255) not null;
-
-update ObjectCustomFieldValues set ObjectType = 'RT::Ticket';
-
-alter table ObjectCustomFieldValues add column Current bool default 1;
-
-alter table ObjectCustomFieldValues add column LargeContent LONGTEXT NULL;
-
-alter table ObjectCustomFieldValues add column ContentType varchar(80) NULL;
-
-alter table ObjectCustomFieldValues add column ContentEncoding varchar(80) NULL;
-
-# These could fail if there's no such index and there's no "drop index if exists" syntax
-#alter table ObjectCustomFieldValues drop index ticketcustomfieldvalues1;
-#alter table ObjectCustomFieldValues drop index ticketcustomfieldvalues2;
-
-alter table ObjectCustomFieldValues add index ObjectCustomFieldValues1 (Content);
-
-alter table ObjectCustomFieldValues add index ObjectCustomFieldValues2 (CustomField,ObjectType,ObjectId);
-
-
-CREATE TABLE ObjectCustomFields (
- id INTEGER NOT NULL AUTO_INCREMENT,
- CustomField int NOT NULL ,
- ObjectId integer NOT NULL,
- SortOrder integer NOT NULL DEFAULT 0 ,
-
- Creator integer NOT NULL DEFAULT 0 ,
- Created DATETIME NULL ,
- LastUpdatedBy integer NOT NULL DEFAULT 0 ,
- LastUpdated DATETIME NULL ,
- PRIMARY KEY (id)
-) TYPE=InnoDB;
-
-
-INSERT into ObjectCustomFields (id, CustomField, ObjectId, SortOrder, Creator, LastUpdatedBy) SELECT null, id, Queue, SortOrder, Creator, LastUpdatedBy from CustomFields;
-
-alter table CustomFields add column LookupType varchar(255) NOT NULL;
-alter table CustomFields add column Repeated int2 NOT NULL DEFAULT 0 ;
-alter table CustomFields add column Pattern varchar(255) NULL;
-alter table CustomFields add column MaxValues integer;
-# See above
-# alter table CustomFields drop index CustomFields1;
-
-UPDATE CustomFields SET MaxValues = 0 WHERE Type LIKE '%Multiple';
-UPDATE CustomFields SET MaxValues = 1 WHERE Type LIKE '%Single';
-UPDATE CustomFields SET Type = 'Select' WHERE Type LIKE 'Select%';
-UPDATE CustomFields SET Type = 'Freeform' WHERE Type LIKE 'Freeform%';
-UPDATE CustomFields Set LookupType = 'RT::Queue-RT::Ticket';
-alter table CustomFields drop column Queue;
diff --git a/rt/etc/upgrade/3.3.11/acl.Oracle b/rt/etc/upgrade/3.3.11/acl.Oracle
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.11/acl.Oracle
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.11/acl.Pg b/rt/etc/upgrade/3.3.11/acl.Pg
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.11/acl.Pg
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.11/acl.SQLite b/rt/etc/upgrade/3.3.11/acl.SQLite
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.11/acl.SQLite
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.11/acl.mysql b/rt/etc/upgrade/3.3.11/acl.mysql
deleted file mode 100644
index 73c16ae..0000000
--- a/rt/etc/upgrade/3.3.11/acl.mysql
+++ /dev/null
@@ -1,4 +0,0 @@
-sub acl {
- return ();
-}
-1;
diff --git a/rt/etc/upgrade/3.3.11/content b/rt/etc/upgrade/3.3.11/content
deleted file mode 100644
index 0afc604..0000000
--- a/rt/etc/upgrade/3.3.11/content
+++ /dev/null
@@ -1 +0,0 @@
-1;
diff --git a/rt/etc/upgrade/3.3.11/schema.Oracle b/rt/etc/upgrade/3.3.11/schema.Oracle
deleted file mode 100644
index e69de29..0000000
--- a/rt/etc/upgrade/3.3.11/schema.Oracle
+++ /dev/null
diff --git a/rt/etc/upgrade/3.3.11/schema.Pg b/rt/etc/upgrade/3.3.11/schema.Pg
deleted file mode 100644
index 6ab5d65..0000000
--- a/rt/etc/upgrade/3.3.11/schema.Pg
+++ /dev/null
@@ -1,11 +0,0 @@
-ALTER TABLE ObjectCustomFieldValues ADD COLUMN SortOrder INTEGER;
-UPDATE ObjectCustomFieldValues SET SortOrder = 0;
-ALTER TABLE ObjectCustomFieldValues ALTER COLUMN SortOrder SET DEFAULT 0;
-ALTER TABLE ObjectCustomFieldValues ALTER COLUMN SortOrder SET NOT NULL;
-ALTER TABLE ObjectCustomFieldValues ADD COLUMN Disabled INTEGER;
-UPDATE ObjectCustomFieldValues SET Disabled = 1 WHERE Current = 0;
-UPDATE ObjectCustomFieldValues SET Disabled = 0 WHERE Current != 0;
-ALTER TABLE ObjectCustomFieldValues ALTER COLUMN Disabled SET DEFAULT 0;
-ALTER TABLE ObjectCustomFieldValues ALTER COLUMN Disabled SET NOT NULL;
-
-ALTER TABLE ObjectCustomFieldValues DROP COLUMN Current;
diff --git a/rt/etc/upgrade/3.3.11/schema.SQLite b/rt/etc/upgrade/3.3.11/schema.SQLite
deleted file mode 100644
index e69de29..0000000
--- a/rt/etc/upgrade/3.3.11/schema.SQLite
+++ /dev/null
diff --git a/rt/etc/upgrade/3.3.11/schema.mysql b/rt/etc/upgrade/3.3.11/schema.mysql
deleted file mode 100644
index cc35d40..0000000
--- a/rt/etc/upgrade/3.3.11/schema.mysql
+++ /dev/null
@@ -1,5 +0,0 @@
-ALTER TABLE ObjectCustomFieldValues ADD COLUMN SortOrder INTEGER NOT NULL DEFAULT 0;
-ALTER TABLE ObjectCustomFieldValues ADD COLUMN Disabled int2 NOT NULL DEFAULT 0;
-
-UPDATE ObjectCustomFieldValues SET Disabled = 1 WHERE Current = 0;
-ALTER TABLE ObjectCustomFieldValues DROP COLUMN Current;
diff --git a/rt/html/Admin/CustomFields/GroupRights.html b/rt/html/Admin/CustomFields/GroupRights.html
deleted file mode 100644
index 380fee4..0000000
--- a/rt/html/Admin/CustomFields/GroupRights.html
+++ /dev/null
@@ -1,170 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/CustomFieldTabs,
- id => $id,
- current_tab => "Admin/CustomFields/GroupRights.html?id=".$id,
- Title => $title
-&>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="GroupRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $CustomFieldObj->id %>">
-
-
-<h1><&|/l&>System groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToSystemInternalGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $CustomFieldObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>User defined groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToUserDefinedGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $Group->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $CustomFieldObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-
- <& /Elements/Submit, Caption => loc("Be sure to save your changes"), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
-
-
-
-
-
-if (!defined $id) {
- $m->comp("/Elements/Error", Why => loc("No CustomField defined"));
-}
-
-my $CustomFieldObj = RT::CustomField->new($session{'CurrentUser'});
-$CustomFieldObj->Load($id) || $m->comp("/Elements/Error", Why => loc("Couldn't load CustomField [_1]",$id));
-
-my $Groups;
-
- my ( $ACL, @results );
-
- foreach my $arg (keys %ARGS) {
- if ($arg =~ /GrantRight-(\d+)-(.*?)-(\d+)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $rights = $ARGS{$arg};
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
- my $obj;
-
- if ($object_type eq 'RT::CustomField') {
- $obj = RT::CustomField->new($session{'CurrentUser'});
- $obj->Load($object_id);
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be granted for [_1]", $object_type));
- next;
- }
-
- my @rights = ref($ARGS{$arg}) eq 'ARRAY' ? @{$ARGS{$arg}} : ($ARGS{$arg});
- foreach my $right (@rights) {
- next unless ($right);
- my ($val, $msg) = $principal->GrantRight(Object => $obj, Right => $right);
- push (@results, $msg);
- }
- }
- elsif ($arg =~ /RevokeRight-(\d+)-(.*?)-(\d+)-(.*?)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $right = $4;
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
- next unless ($right);
- my $obj;
-
- if ($object_type eq 'RT::CustomField') {
- $obj = RT::CustomField->new($session{'CurrentUser'});
- $obj->Load($object_id);
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be revoked for [_1]", $object_type));
- next;
- }
- my ($val, $msg) = $principal->RevokeRight(Object => $obj, Right => $right);
- push (@results, $msg);
- }
-}
-
-my $title = loc('Modify group rights for custom field [_1]', $CustomFieldObj->Name);
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/CustomFields/Modify.html b/rt/html/Admin/CustomFields/Modify.html
deleted file mode 100644
index 4c3c921..0000000
--- a/rt/html/Admin/CustomFields/Modify.html
+++ /dev/null
@@ -1,212 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/CustomFieldTabs,
- id => $CustomFieldObj->Id ,
- current_tab => $current_tab,
- Title => $title &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-<FORM METHOD="POST" ACTION="Modify.html" NAME="ModifyCustomField">
-<INPUT TYPE=HIDDEN NAME="id" VALUE="<%$id %>">
-<table>
-<tr>
-<td class="label"><&|/l&>Name</&></td>
-<td><input name="Name" VALUE="<%$CustomFieldObj->Name%>" SIZE=20></td></tr>
-<tr>
-<td class="label"><&|/l&>Description</&></td>
-<td><input name="Description" VALUE="<%$CustomFieldObj->Description%>" SIZE=80></td>
-</tr>
-
-<tr>
-<td class="label"><&|/l&>Type</&></td>
-<td><& /Admin/Elements/SelectCustomFieldType,
- Name => "TypeComposite",
- Default => $CustomFieldObj->TypeComposite, &>
-</td>
-</tr>
-<tr>
-<td class="label"><&|/l&>Applies to</&></td>
-<td><& /Admin/Elements/SelectCustomFieldLookupType,
- Name => "LookupType",
- Default => $CustomFieldObj->LookupType, &>
-</td>
-</tr>
-<tr>
-<td class="label">&nbsp;</td>
-<td>
-<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this custom field)</&>
-</td>
-</tr>
-</table>
-<BR>
-% if ($CustomFieldObj->Id && $CustomFieldObj->Type =~ /^Select/i) {
-<H2><&|/l&>Values</&></H2>
-<div>
-<& /Admin/Elements/EditCustomFieldValues, CustomField => $CustomFieldObj &>
-<& /Admin/Elements/AddCustomFieldValue, CustomField => $CustomFieldObj &>
-</div>
-% }
-<&/Elements/Submit&>
-</FORM>
-
-
-
-<%INIT>
-
-
-
-my $CustomFieldObj = RT::CustomField->new( $session{'CurrentUser'} );
-my ( $title, @results, $EnabledChecked, $Disabled);
-$EnabledChecked = "CHECKED";
-
-if ( !$id ) {
- $title = loc("Create a CustomField");
- $id = 'new';
-}
-else {
-
- if ( $id eq 'new' ) {
- my ( $val, $msg ) = $CustomFieldObj->Create(Name => $Name,
- TypeComposite => $TypeComposite,
- LookupType => $LookupType,
- Description => $Description,);
- $m->comp("/Elements/Error", Why => loc( "Could not create CustomField", $msg ) ) unless ($val);
- push @results, $msg;
- $title = loc( 'Created CustomField [_1]', $CustomFieldObj->Name() );
- }
- else {
- $CustomFieldObj->Load($id) || $m->comp("/Elements/Error", Why => loc('No CustomField') );
- $title = loc( 'Editing CustomField [_1]', $CustomFieldObj->Name() );
-
- my @attribs = qw( Name TypeComposite LookupType Description);
- my @aresults = UpdateRecordObject( AttributesRef => \@attribs,
- Object => $CustomFieldObj,
- ARGSRef => \%ARGS );
-
- push @results, @aresults;
-
- #we're asking about enabled on the web page but really care about disabled.
- if ($Enabled == 1) {
- $Disabled = 0;
- }
- else {
- $Disabled = 1;
- }
- if ( ($SetEnabled) and ( $Disabled != $CustomFieldObj->Disabled) ) {
- my ($code, $msg) = $CustomFieldObj->SetDisabled($Disabled);
- push @results, loc('Enabled status: [_1]', loc_fuzzy($msg));
- }
-
- if ($CustomFieldObj->Disabled()) {
- $EnabledChecked ="";
- }
- }
-
- $id = $CustomFieldObj->id;
-}
-
-
-
-
-my $paramtag = "CustomField-".$CustomFieldObj->Id."-Value-";
-# Delete any fields that want to be deleted
-foreach my $key (keys %ARGS) {
-
- next unless ($key =~ /^Delete-$paramtag(\d+)$/);
- my ($val, $msg) = $CustomFieldObj->DeleteValue($1);
- push (@results, $msg);
-
-
-}
-# Update any existing values
-my $values = $CustomFieldObj->ValuesObj;
-while (my $value = $values->Next) {
- foreach my $attr qw(Name Description SortOrder) {
- my $param = $paramtag.$value->Id."-".$attr;
-
- if ( $ARGS{$param} && ($value->$attr() ne $ARGS{$param})) {
- my $mutator = "Set$attr";
- my ($id, $msg) = $value->$mutator($ARGS{$param});
- push (@results, $msg);
- }
- }
-
-
-}
-
-
-
-# Add any new values
-if ($ARGS{$paramtag."new-Name"}) {
- my ($id, $msg) = $CustomFieldObj->AddValue ( Name => $ARGS{$paramtag."new-Name"},
- Description => $ARGS{$paramtag."new-Description"},
- SortOrder => $ARGS{$paramtag."new-SortOrder"});
- push (@results, $msg);
-}
-
-my $current_tab;
-if ($ARGS{'Create'}){
- $current_tab = "Admin/CustomFields/Modify.html?Create=1";
-} else {
- $current_tab = "Admin/CustomFields/Modify.html?id=".$id;
- }
-
-
-</%INIT>
-<%ARGS>
-$id => undef
-$TypeComposite => undef
-$LookupType => undef
-$MaxValues => undef
-$SortOrder => undef
-$Description => undef
-$Name => undef
-$SetEnabled => undef
-$Enabled => undef
-</%ARGS>
diff --git a/rt/html/Admin/CustomFields/Objects.html b/rt/html/Admin/CustomFields/Objects.html
deleted file mode 100644
index 8f9e365..0000000
--- a/rt/html/Admin/CustomFields/Objects.html
+++ /dev/null
@@ -1,145 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/CustomFieldTabs,
- id => $id,
- current_tab => "Admin/CustomFields/Objects.html?id=".$id,
- Title => $title
- &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM ACTION="Objects.html" METHOD=POST>
-<INPUT TYPE=HIDDEN NAME="id" VALUE="<% $id %>">
-<INPUT TYPE=HIDDEN NAME="UpdateObjs" VALUE="1">
-
-<h2><&|/l&>Selected objects</&></h2>
-<& /Admin/Elements/PickObjects, Objects => \@AssignedObjs, id => $id, Checked => 1 &>
-<h2><&|/l&>Unselected objects</&></h2>
-<& /Admin/Elements/PickObjects, Objects => \@UnassignedObjs, id => $id &>
-
-<& /Elements/Submit, CheckAll => 1, ClearAll => 1 &>
-</FORM>
-
-<%INIT>
-my $CF = RT::CustomField->new($session{'CurrentUser'});
-$CF->Load($id) or Abort(loc("Could not load CustomField [_1]"), $id);
-my $LookupType = $CF->LookupType;
-$LookupType =~ /^(.*?)-/ ||
- Abort(loc("Object of type [_1] cannot take custom fields", $LookupType));
-
-my $Class = $1;
-my $CollectionClass;
-if (UNIVERSAL::can($Class.'Collection', 'new') ) {
-$CollectionClass = $Class.'Collection';
-
-} elsif (UNIVERSAL::can($Class.'es', 'new') ) {
- $CollectionClass = $Class.'es';
-
-} elsif (UNIVERSAL::can($Class.'s', 'new') ) {
- $CollectionClass = $Class.'s';
-
-} else {
- Abort(loc("Can't find a collection class for '[_1]'", $Class));
-}
-
-
-my $title = loc('Modify associated objects for [_1]', $CF->Name);
-
-my $Objects = $CollectionClass->new($session{'CurrentUser'});
-my (@results);
-my (@AssignedObjs, @UnassignedObjs);
-
-$Objects->UnLimit;
-$Objects->OrderBy( FIELD => 'Name' );
-
-
-my $ObjectCFs;
-$ObjectCFs = RT::ObjectCustomFields->new($session{'CurrentUser'});
-$ObjectCFs->UnLimit;
-$ObjectCFs->LimitToCustomField($id);
-
-my %seen;
-while (my $OCF = $ObjectCFs->Next) {
- $seen{$OCF->ObjectId}++;
-}
-
-while (my $obj = $Objects->Next) {
- my $obj_id = $obj->Id;
-
- if ($UpdateObjs) {
- # Go through and delete all the custom field relationships that this object
- # no longer has
- my $key = "Object-$obj_id-CF-$id";
- if ($ARGS{$key}) {
- if (!$seen{$obj_id}) {
- my ($val, $msg) = $CF->AddToObject($obj);
- push (@results, $msg);
- push @UnassignedObjs, $obj if !$val;
- }
- }
- else {
- push @UnassignedObjs, $obj;
- if ($seen{$obj_id}) {
- my ($val, $msg) = $CF->RemoveFromObject($obj);
- push (@results, $msg);
- pop @UnassignedObjs if !$val;
- }
- }
- }
- elsif (!$seen{$obj_id}) {
- push @UnassignedObjs, $obj;
- }
- next if @UnassignedObjs and $UnassignedObjs[-1] == $obj;
- push @AssignedObjs, $obj;
-}
-
-</%INIT>
-<%ARGS>
-$id => undef
-$FindDisabledObjects => 0
-$UpdateObjs => 0
-</%ARGS>
diff --git a/rt/html/Admin/CustomFields/UserRights.html b/rt/html/Admin/CustomFields/UserRights.html
deleted file mode 100644
index e2df3a0..0000000
--- a/rt/html/Admin/CustomFields/UserRights.html
+++ /dev/null
@@ -1,168 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/CustomFieldTabs, id => $id,
-current_tab => "Admin/CustomFields/UserRights.html?id=".$id,
-Title => $title, &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="UserRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $CustomFieldObj->id %>">
-
-
-<TABLE>
-
-% while (my $Member = $Users->Next()) {
-% my $UserObj = $Member->MemberObj->Object();
-% my $group = RT::Group->new($session{'CurrentUser'});
-% $group->LoadACLEquivalenceGroup($Member->MemberObj);
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $UserObj->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId=> $group->PrincipalId,
- Object => $CustomFieldObj &>
- </TD>
- </TR>
-% }
- </TABLE>
-
- <& /Elements/Submit, Caption => loc("Be sure to save your changes"), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results;
-foreach my $arg (keys %ARGS) {
- if ($arg =~ /GrantRight-(\d+)-(.*?)-(\d+)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $rights = $ARGS{$arg};
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
- my $obj;
-
- if ($object_type eq 'RT::CustomField') {
- $obj = RT::CustomField->new($session{'CurrentUser'});
- $obj->Load($object_id);
-
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be granted for [_1]",
-$object_type));
- next;
- }
-
- my @rights = ref($ARGS{$arg}) eq 'ARRAY' ? @{$ARGS{$arg}} :
-($ARGS{$arg});
- foreach my $right (@rights) {
- next unless ($right);
- my ($val, $msg) = $principal->GrantRight(Object => $obj, Right
-=> $right);
- push (@results, $msg);
- }
- }
- elsif ($arg =~ /RevokeRight-(\d+)-(.*?)-(\d+)-(.*?)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $right = $4;
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
- next unless ($right);
- my $obj;
-
- if ($object_type eq 'RT::CustomField') {
- $obj = RT::CustomField->new($session{'CurrentUser'});
- $obj->Load($object_id);
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be revoked for [_1]",
-$object_type));
- next;
- }
- my ($val, $msg) = $principal->RevokeRight(Object => $obj, Right =>
-$right);
- push (@results, $msg);
- }
-}
-
-
-# {{{ Deal with setting up the display of current rights.
-
-
-
-if (!defined $id) {
- $m->comp("/Elements/Error", Why => loc("No Class defined"));
-}
-
-my $CustomFieldObj = RT::CustomField->new($session{'CurrentUser'});
-$CustomFieldObj->Load($id) || $m->comp("/Elements/Error", Why => loc("Couldn't load Class [_1]",$id));
-
-# Find out which users we want to display ACL selects for
-my $Privileged = RT::Group->new($session{'CurrentUser'});
-$Privileged->LoadSystemInternalGroup('Privileged');
-my $Users = $Privileged->MembersObj();
-
-
-my $title = loc('Modify user rights for custom field [_1]', $CustomFieldObj->Name);
-
-# }}}
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-$UserString => undef
-$UserOp => undef
-$UserField => undef
-</%ARGS>
diff --git a/rt/html/Admin/CustomFields/index.html b/rt/html/Admin/CustomFields/index.html
deleted file mode 100644
index 9854fb0..0000000
--- a/rt/html/Admin/CustomFields/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Select a Custom Field') &>
-<& /Admin/Elements/CustomFieldTabs,
- current_tab => 'Admin/CustomFields/',
- Title => loc('Select a Custom Field') &>
-
-% my $prev_lookup = '';
-% while (my $CustomFieldObj = $CustomFields->Next) {
-% $CustomFieldObj->CurrentUserHasRight('AdminCustomField') or next;
-% my $lookup = $CustomFieldObj->FriendlyLookupType;
-% if ($lookup ne $prev_lookup) {
-% if ($prev_lookup) {
-</UL>
-% }
-<H2><% loc("Custom Fields for [_1]", $lookup) %></H2>
-<UL>
-% $prev_lookup = $lookup;
-% }
-%
-<LI>
-<A HREF="Modify.html?id=<%$CustomFieldObj->id()%>"><%$CustomFieldObj->Name%>: <%$CustomFieldObj->Description%></a>
-</LI>
-% }
-% if ($prev_lookup) {
-</UL>
-% }
-
-<%INIT>
-my $CustomFields = RT::CustomFields->new($session{'CurrentUser'});
-$CustomFields->UnLimit();
-$CustomFields->OrderByCols( { FIELD => 'LookupType' }, { FIELD => 'Name' } );
-</%INIT>
diff --git a/rt/html/Admin/Elements/AddCustomFieldValue b/rt/html/Admin/Elements/AddCustomFieldValue
deleted file mode 100644
index 3e3f414..0000000
--- a/rt/html/Admin/Elements/AddCustomFieldValue
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<b><&|/l&>Add Value</&></b></b></b></b>
-<TABLE BORDER="0">
-<TR><TD><small>
-<&|/l&>Sort</&>:<br>
-<input size=3 name="CustomField-<%$CustomField->Id%>-Value-new-SortOrder" >
-</TD>
-<TD><small>
-<&|/l&>Name</&>:<br>
-<input type="text" size=30 name="CustomField-<%$CustomField->Id%>-Value-new-Name" >
-</TD>
-<TD><small>
-<&|/l&>Description</&>:<br>
-<input type="text" size=50 name="CustomField-<%$CustomField->Id%>-Value-new-Description">
-</TD></TR>
-</TABLE>
-
-<%init>
-</%init>
-<%args>
-$CustomField => undef
-</%args>
diff --git a/rt/html/Admin/Elements/CreateUserCalled b/rt/html/Admin/Elements/CreateUserCalled
deleted file mode 100644
index 0dc6ac7..0000000
--- a/rt/html/Admin/Elements/CreateUserCalled
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<FORM METHOD=get ACTION="<% $RT::WebPath %>/Admin/Users/Create.html">
-<&|/l&>New user called</&> <INPUT NAME="Name" size=10><input type=submit value="<&|/l&>Create</&>">
-</form>
diff --git a/rt/html/Admin/Elements/CustomFieldTabs b/rt/html/Admin/Elements/CustomFieldTabs
deleted file mode 100644
index d7acf33..0000000
--- a/rt/html/Admin/Elements/CustomFieldTabs
+++ /dev/null
@@ -1,116 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs,
- current_tab => 'Admin/CustomFields/',
- subtabs => $tabs,
- current_subtab => $current_tab,
- Title => $Title &>
-<%INIT>
-my $tabs;
-
-if ($id) {
- my $cf = RT::CustomField->new( $session{'CurrentUser'} );
- $cf->Load($id);
- $tabs = {
- this => {
- title => $cf->Name,
- path => "Admin/CustomFields/Modify.html?id=" . $id,
- current_subtab => $current_tab,
-
- subtabs => {
-
- C => { title => loc('Basics'),
- path => "Admin/CustomFields/Modify.html?id=" . $id,
- },
- F => { title => loc('Group Rights'),
- path => "Admin/CustomFields/GroupRights.html?id="
- . $id, },
- G => {
- title => loc('User Rights'),
- path => "Admin/CustomFields/UserRights.html?id=" . $id,
- },
-
- } }
-
- };
-
-
- if ($cf->LookupType =~ /^RT::Queue/io) {
- $tabs->{'this'}->{subtabs}->{D} = {
- title => loc('Applies to'),
- path => "Admin/CustomFields/Objects.html?id=" . $id,
- };
- }
-}
-
-if ($session{'CurrentUser'}->HasRight( Object => $RT::System, Right => 'AdminCustomField')) {
- $tabs->{"A"} = { title => loc('Select custom field'),
- path => "Admin/CustomFields/",
- };
- $tabs->{"B"} = { title => loc('New custom field'),
- path => "Admin/CustomFields/Modify.html?Create=1",
- separator => 1,
- };
-}
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
-foreach my $tab (sort keys %{$tabs->{'this'}->{'subtabs'}}) {
- if ($tabs->{'this'}->{'subtabs'}->{$tab}->{'path'} eq $current_tab) {
- $tabs->{'this'}->{'subtabs'}->{$tab}->{'subtabs'} = $subtabs;
- $tabs->{'this'}->{'subtabs'}->{$tab}->{'current_subtab'} = $current_subtab;
- }
-}
-if( $id ) { $current_tab = "Admin/CustomFields/Modify.html?id=" . $id }
-</%INIT>
-<%ARGS>
-$Title => undef
-$id => undef
-$current_tab => undef
-$subtabs => undef
-$current_subtab => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditCustomField b/rt/html/Admin/Elements/EditCustomField
deleted file mode 100644
index d8c5b29..0000000
--- a/rt/html/Admin/Elements/EditCustomField
+++ /dev/null
@@ -1,157 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ListActions, actions => \@results &>
-
-
-<FORM METHOD=POST ACTION="CustomField.html">
-<INPUT TYPE=HIDDEN NAME="CustomField" VALUE="<%$id %>">
-<INPUT TYPE=HIDDEN name="Queue" value="<%$Queue%>">
-
-<TABLE WIDTH="100%" BORDER="0">
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Name</&>:
-</TD><TD>
-<input name="Name" VALUE="<%$CustomFieldObj->Name%>" SIZE=20>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Description</&>:
-</TD><TD>
-<input name="Description" VALUE="<%$CustomFieldObj->Description%>" SIZE=80>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Type</&>:
-</TD><TD>
-<& /Admin/Elements/SelectCustomFieldType, Name => "Type", Default => $CustomFieldObj->Type &>
-</TD></TR>
-<TR><TD>
-</TD><TD>
-<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this custom field)</&>
-</TD></TR>
-</TABLE>
-
-<P>
-% if ($CustomFieldObj->Id and $CustomFieldObj->Type =~ /Select/) {
-<h2><&|/l&>Values</&></h2>
-<font size=-1>
-<& /Admin/Elements/EditCustomFieldValues, CustomField => $CustomFieldObj &>
-<& /Admin/Elements/AddCustomFieldValue, CustomField => $CustomFieldObj &>
-</font>
-% }
-<&/Elements/Submit, Label => loc('Create') &>
-</FORM>
-
-
-
-<%INIT>
-
-my $CustomFieldObj = RT::CustomField->new($session{'CurrentUser'});
-my $EnabledChecked = "CHECKED";
-my (@results);
-
-if (! $CustomField ) {
- $title = loc("Create a CustomField");
- $id = 'new';
-} else {
-
- if ($CustomField eq 'new') {
- my ($val, $msg) = $CustomFieldObj->Create(Queue => $Queue,
- Name => $Name,
- Type => $Type,
- Description => $Description,
- );
-
- # if there is an error, then abort. But since at this point there's
- # stuff already printed, clear it out.
- # (This only works in conjunction with temporarily turning autoflush
- # off in the files that use this component.)
- unless ($val) {
- $m->clear_buffer;
- Abort(loc("Could not create CustomField: [_1]", $msg));
- }
- push @results, $msg;
- $CustomFieldObj->SetSortOrder($CustomFieldObj->id);
- $title = loc('Created CustomField [_1]', $CustomFieldObj->Name());
- } else {
- $CustomFieldObj->Load($CustomField) || Abort(loc('No CustomField'));
- $title = loc('Editing CustomField [_1]', $CustomFieldObj->Name());
-
- my @aresults = ProcessCustomFieldUpdates (
- CustomFieldObj => $CustomFieldObj,
- ARGSRef => \%ARGS );
- push @results, @aresults;
- }
-
-
-$id = $CustomFieldObj->id;
-
- #we're asking about enabled on the web page but really care about disabled.
- my $Disabled = ($Enabled ? 0 : 1);
-
- if ( ($SetEnabled) and ( $Disabled != $CustomFieldObj->Disabled) ) {
- my ($code, $msg) = $CustomFieldObj->SetDisabled($Disabled);
- push @results, loc('Enabled status [_1]', loc_fuzzy($msg));
- }
-
- if ($CustomFieldObj->Disabled()) {
- $EnabledChecked ="";
- }
-
-}
-
-
-</%INIT>
-<%ARGS>
-$id => undef
-$title => undef
-$Queue => undef
-$CustomField => undef
-$Type => undef
-$Description => undef
-$Name => undef
-$SetEnabled => undef
-$Enabled => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditCustomFieldValues b/rt/html/Admin/Elements/EditCustomFieldValues
deleted file mode 100644
index 9cc3858..0000000
--- a/rt/html/Admin/Elements/EditCustomFieldValues
+++ /dev/null
@@ -1,84 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if (!$values->Count) {
-<p><em><&|/l&>(no values)</&></em></p>
-% return;
-% }
-<i><&|/l&>(Check box to delete)</&></i>
-<table>
-<tr>
-<td>&nbsp;</td>
-<td><&|/l&>Sort</&></td>
-<td><&|/l&>Name</&></td>
-<td><&|/l&>Description</&></td>
-</tr>
-% while (my $value = $values->Next) {
-<tr>
-<td>
-<input type="checkbox" name="Delete-CustomField-<%$CustomField->Id%>-Value-<%$value->Id%>">
-</td>
-<td>
-<input size=3 name="CustomField-<%$CustomField->Id%>-Value-<%$value->Id%>-SortOrder" value="<%$value->SortOrder%>">
-</td>
-<td>
-<input type="text" size=30 name="CustomField-<%$CustomField->Id%>-Value-<%$value->Id%>-Name" value="<%$value->Name%>">
-</td>
-<td>
-<font size="-1">
-<input type="text" size=50 name="CustomField-<%$CustomField->Id%>-Value-<%$value->Id%>-Description" value="<%$value->Description%>">
-</font>
-</td>
-</tr>
-% }
-</table>
-<%init>
-
-my $values = $CustomField->ValuesObj();
-
-</%init>
-<%args>
-$CustomField => undef
-</%args>
diff --git a/rt/html/Admin/Elements/EditCustomFields b/rt/html/Admin/Elements/EditCustomFields
deleted file mode 100644
index 1cd3df5..0000000
--- a/rt/html/Admin/Elements/EditCustomFields
+++ /dev/null
@@ -1,189 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM ACTION="<%$RT::WebPath%><% $m->request_comp->path |n %>" METHOD="POST" NAME="EditCustomFields">
-<INPUT TYPE=HIDDEN NAME="id" VALUE="<% $Object->Id %>"/>
-<INPUT TYPE=HIDDEN NAME="ObjectType" VALUE="<% $ObjectType %>"/>
-<INPUT TYPE=HIDDEN NAME="SubType" VALUE="<% $SubType %>"/>
-<INPUT TYPE=HIDDEN NAME="UpdateCFs" VALUE="1"/>
-
-% if ($Object->Id) {
-<h2><&|/l&>Global Custom Fields</&></h2>
-<& PickCustomFields, CustomFields => \@GlobalCFs, ReadOnly => 1, id => $id, SubType => $SubType &>
-% }
-<h2><&|/l&>Selected Custom Fields</&></h2>
-<& PickCustomFields, CustomFields => [$ObjectCFs->CustomFields], id => $id, Checked => 1, SubType => $SubType &>
-<h2><&|/l&>Unselected Custom Fields</&></h2>
-<& PickCustomFields, CustomFields => \@UnassignedCFs, id => $id, SubType => $SubType &>
-
-<& /Elements/Submit, CheckAll => 1, ClearAll => 1 &>
-</FORM>
-
-
-<%INIT>
-my $CustomFields = RT::CustomFields->new($session{'CurrentUser'});
-my @results;
-my (@GlobalCFs, @UnassignedCFs);
-
-my $id = $Object->Id;
-if ($id and !$Object->CurrentUserHasRight('AssignCustomFields')) {
- $m->out('<P><i>', loc('(No custom fields)'), '</i></P>');
- return;
-}
-
-my $lookup = $ObjectType;
-$lookup .= "-$SubType" if $SubType;
-
-$CustomFields->LimitToLookupType($lookup);
-$CustomFields->OrderBy( FIELD => 'Name' );
-
-
-my ($GlobalCFs, $ObjectCFs);
-$ObjectCFs = RT::ObjectCustomFields->new($session{'CurrentUser'});
-$ObjectCFs->UnLimit;
-$ObjectCFs->LimitToObjectId($id);
-$ObjectCFs->LimitToLookupType($lookup);
-
-# {{{ deal with moving sortorder of custom fields
-if ($CustomField and $Move) {
- my $SourceObj = RT::ObjectCustomField->new($session{'CurrentUser'});
- $SourceObj->LoadByCols( ObjectId => $id, CustomField => $CustomField );
-
- my $TargetObj;
- my $target_order = $SourceObj->SortOrder + $Move;
- while (my $ObjectCF = $ObjectCFs->Next) {
- my $this_order = $ObjectCF->SortOrder;
-
- # if we have an exact match, finish the loop now
- ($TargetObj = $ObjectCF, last) if $this_order == $target_order;
-
- # otherwise, we need to apropos toward the general direction
- # ... first, check the sign is correct
- next unless ($this_order - $SourceObj->SortOrder) * $Move > 0;
-
- # ... next, see if we already have a candidate
- if ($TargetObj) {
- # ... if yes, compare the delta and choose the smaller one
- my $orig_delta = abs($TargetObj->SortOrder - $target_order);
- my $this_delta = abs($this_order - $target_order);
- next if $orig_delta < $this_delta;
- }
-
- $TargetObj = $ObjectCF;
- }
-
- if ($TargetObj) {
- # swap their sort order
- my ($s, $t) = ($SourceObj->SortOrder, $TargetObj->SortOrder);
- $TargetObj->SetSortOrder($s);
- $SourceObj->SetSortOrder($t);
- # because order changed, we must redo search for subsequent uses
- }
-
- $ObjectCFs->GotoFirstItem;
-}
-# }}}
-
-if ($id) {
- $GlobalCFs = RT::ObjectCustomFields->new($session{'CurrentUser'});
- $GlobalCFs->LimitToObjectId(0);
- $GlobalCFs->LimitToLookupType($lookup);
-}
-
-while (my $cf = $CustomFields->Next) {
- my $cf_id = $cf->Id;
-
- if ($GlobalCFs and $GlobalCFs->HasEntryForCustomField($cf_id)) {
- push @GlobalCFs, $cf;
- next;
- }
-
- if ($UpdateCFs) {
- # Go through and delete all the custom field relationships that this object
- # no longer has
- my $key = "Object-$id-CF-$cf_id";
- if ($ARGS{$key}) {
- if (!$ObjectCFs->HasEntryForCustomField($cf_id)) {
- my ($val, $msg) = $cf->AddToObject($Object);
- push (@results, $msg);
- push @UnassignedCFs, $cf if !$val;
- }
- }
- else {
- push @UnassignedCFs, $cf;
- if ($ObjectCFs->HasEntryForCustomField($cf_id)) {
- my ($val, $msg) = $cf->RemoveFromObject($Object);
- push (@results, $msg);
- pop @UnassignedCFs if !$val;
- }
- }
- }
- elsif (!$ObjectCFs->HasEntryForCustomField($cf_id)) {
- push @UnassignedCFs, $cf;
- }
- else {
- }
-}
-
-# redo search...
-$ObjectCFs = RT::ObjectCustomFields->new($session{'CurrentUser'});
-$ObjectCFs->UnLimit;
-$ObjectCFs->LimitToObjectId($id);
-$ObjectCFs->LimitToLookupType($lookup);
-
-</%INIT>
-<%ARGS>
-$title => undef
-$Move => undef
-$Source => undef
-$CustomField => undef
-$FindDisabledCustomFields => undef
-$UpdateCFs => 0
-$Object
-$ObjectType
-$SubType => ''
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditQueueWatchers b/rt/html/Admin/Elements/EditQueueWatchers
deleted file mode 100644
index c93bf81..0000000
--- a/rt/html/Admin/Elements/EditQueueWatchers
+++ /dev/null
@@ -1,76 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%if ($Members->Count == 0 ) {
-<ul>
-<li><i><&|/l&>none</&></i>
-% } else {
-<i><&|/l&>(Check box to delete)</&></i><br><BR>
-<ul>
-% while (my $watcher=$Members->Next) {
-<li>
-<INPUT TYPE=CHECKBOX NAME="Queue-<%$QueueObj->Id%>-DeleteWatcher-Type-<%$Watchers->Type%>-Principal-<%$watcher->MemberId%>" value="1"
- UNCHECKED>
-% if ($watcher->MemberObj->IsUser) {
-<a href="<%$RT::WebPath%>/Admin/Users/Modify.html?id=<%$watcher->MemberObj->ObjectId%>">
-% } else {
-<a href="<%$RT::WebPath%>/Admin/Groups/Modify.html?id=<%$watcher->MemberObj->ObjectId%>">
-% }
-<%$watcher->MemberObj->Object->Name%></a>
-% }
-% }
-</ul>
-
-<%INIT>
-my $Members = $Watchers->MembersObj;
-</%INIT>
-
-<%ARGS>
-$QueueObj => undef
-$Watchers => undef
-</%ARGS>
-
-
-
diff --git a/rt/html/Admin/Elements/EditScrip b/rt/html/Admin/Elements/EditScrip
deleted file mode 100644
index 907ae9a..0000000
--- a/rt/html/Admin/Elements/EditScrip
+++ /dev/null
@@ -1,197 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ListActions, actions => \@actions &>
-
-
-<FORM METHOD=POST ACTION="Scrip.html">
-<input type="hidden" name="id" value="<%$id%>">
-<input type="hidden" name="Queue" value="<%$Queue%>">
-<& /Elements/TitleBoxStart, title => loc('Scrip Fields') &>
-<TABLE>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Description</&>:
-</TD>
-<TD>
-<input Name="Scrip-<%$id%>-Description" value="<%$scrip->Description%>">
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Condition</&>:
-</TD>
-<TD>
-<& /Admin/Elements/SelectScripCondition, Name => "Scrip-$id-ScripCondition", Default => $scrip->ConditionObj->Id &><BR>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Action</&>:
-</TD>
-<TD>
-<& /Admin/Elements/SelectScripAction, Name => "Scrip-$id-ScripAction", Default => $scrip->ActionObj->Id &>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Template</&>:
-</TD>
-<TD>
-<& /Admin/Elements/SelectTemplate, Name => "Scrip-$id-Template", Default => $scrip->TemplateObj->Id, Queue => $Queue &>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Stage</&>:
-</TD>
-<TD>
-<& /Admin/Elements/SelectStage, Name => "Scrip-$id-Stage", Default => $scrip->Stage &>
-</TD>
-</TR>
-</table>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, Caption => loc("Be sure to save your changes"), Reset => 1 &>
-
-<br>
-<& /Elements/TitleBoxStart, title => loc('User Defined conditions and actions') &>
-<table>
-<TR>
-<TD colspan=2>
-<i><&|/l&>(Use these fields when you choose 'User Defined' for a condition or action)</&></i>
-</TD>
-</TR>
-<TR>
-<TD class=labeltop>
-<&|/l&>Custom condition</&>:
-</TD>
-<TD>
-<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomIsApplicableCode"><%$scrip->CustomIsApplicableCode%></TEXTAREA>
-</TD>
-</TR>
-<TR>
-<TD class=labeltop>
-<&|/l&>Custom action preparation code</&>:
-</TD>
-<TD>
-<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomPrepareCode"><%$scrip->CustomPrepareCode%></TEXTAREA>
-</TD>
-</TR>
-<TR>
-<TD class=labeltop>
-<&|/l&>Custom action cleanup code</&>:
-</TD>
-<TD>
-<TEXTAREA COLS=80 ROWS=5 NAME="Scrip-<%$id%>-CustomCommitCode"><%$scrip->CustomCommitCode%></TEXTAREA>
-</TD>
-</TR>
-</table>
-<& /Elements/TitleBoxEnd &>
-
-<& /Elements/Submit, Label => loc('Create'), Reset => 1 &>
-
-</FORM>
-<%init>
-my (@actions);
-
-
-my $scrip = new RT::Scrip($session{'CurrentUser'});
-
-if ( $id eq 'new' ) {
-
- my ( $retval, $msg ) = $scrip->Create(
- Queue => $Queue,
- ScripAction => $ARGS{"Scrip-new-ScripAction"},
- ScripCondition => $ARGS{"Scrip-new-ScripCondition"},
- Template => $ARGS{"Scrip-new-Template"},
- Description => $ARGS{"Scrip-new-Description"},
- CustomPrepareCode => $ARGS{"Scrip-new-CustomPrepareCode"},
- CustomCommitCode => $ARGS{"Scrip-new-CustomCommitCode"},
- CustomIsApplicableCode => $ARGS{"Scrip-new-CustomIsApplicableCode"},
- );
- if ( defined $retval ) {
- push @actions, $msg;
- $id = $scrip->id;
- }
- else {
- Abort( $msg);
- }
-}
-elsif ($id) {
- my ($val,$msg) =$scrip->Load($id);
- if ($val) {
- $id = $scrip->id;
- } else {
- Abort ($msg);
- }
- my @attribs = qw (
- Queue
- ScripAction
- ScripCondition
- Template
- Stage
- Description
- CustomPrepareCode
- CustomCommitCode
- CustomIsApplicableCode
- );
- my @results = UpdateRecordObject( AttributesRef => \@attribs,
- AttributePrefix => 'Scrip-'.$scrip->Id,
- Object => $scrip,
- ARGSRef => \%ARGS );
- push (@actions, @results);
-}
-
-elsif ($ARGS{'create'}) {
- $id = 'new';
-}
-
-# }}}
-</%init>
-
-<%ARGS>
-$id => undef
-$title => undef
-$Queue => 0
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditScrips b/rt/html/Admin/Elements/EditScrips
deleted file mode 100644
index 9526118..0000000
--- a/rt/html/Admin/Elements/EditScrips
+++ /dev/null
@@ -1,121 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ListActions, actions => \@actions &>
-
-<form action="Scrips.html" method="post">
-<input type="hidden" name="id" value="<%$id%>">
-
-<h2><&|/l&>Current Scrips</&></h2>
-% if ($Scrips->Count == 0 ) {
-<P><i><&|/l&>(No scrips)</&></i></P>
-% } else {
-<TABLE>
-<P><i><&|/l&>(Check box to delete)</&></i></P>
-
-% while (my $scrip = $Scrips->Next ) {
-<TR>
-<TD>
-<input type="checkbox" name="DeleteScrip-<%$scrip->Id%>" value="1">
-</TD>
-<TD>
-<a href="Scrip.html?id=<%$scrip->Id%>&Queue=<%$id%>"><% $scrip->Description || "<i>(".loc('no value').")</i>" |n %></a><br>
-<small><&|/l, loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name) &>[_1] [_2] with template [_3]</&></small>
-</TD>
-</TR>
-% }
-
-</TABLE>
-
-% }
-<& /Elements/Submit,
- Caption => loc("Delete selected scrips"),
- Label => loc("Delete") &>
-</form>
-<%init>
-my (@actions);
-
-my $Scrips = RT::Scrips->new($session{'CurrentUser'});
-
-
-my $QueueObj = RT::Queue->new($session{'CurrentUser'});
-if ($id) {
- $QueueObj->Load($id);
-}
-
-if ($QueueObj->id) {
- $Scrips->LimitToQueue($id);
-}
-else {
- $Scrips->LimitToGlobal();
-}
-
-
-
-
-# {{{ deal with modifying and deleting existing scrips
-foreach my $key (keys %ARGS) {
- # {{{ if we're trying to delete the scrip
- if ($key =~ /^DeleteScrip-(\d+)/) {
- my $id = $1;
- my $scrip = new RT::Scrip($session{'CurrentUser'});
- $scrip->Load($id);
- my ($retval, $msg) = $scrip->Delete;
- if ($retval) {
- push @actions, loc("Scrip deleted");
- }
- else {
- push @actions, $msg;
- }
- }
- # }}}
-}
-# }}}
-</%init>
-
-<%ARGS>
-$id => undef
-$title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditTemplates b/rt/html/Admin/Elements/EditTemplates
deleted file mode 100644
index 207ffd0..0000000
--- a/rt/html/Admin/Elements/EditTemplates
+++ /dev/null
@@ -1,126 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ListActions, actions => \@actions &>
-
-<FORM METHOD=GET ACTION="Templates.html">
-<INPUT TYPE="Hidden" NAME="id" VALUE="<%$id%>">
-
-% if ($Templates->Count == 0 ) {
-<P><i><&|/l&>(No templates)</&></i></P>
-% } else {
-<TABLE>
-<TR>
-<TH>
-<i><&|/l&>(Check box to delete)</&></i>
-</TH>
-<TH>
-</TH>
-</TR>
-% my $count;
-% while (my $TemplateObj = $Templates->Next) {
-<TR>
-<TD>
-<input type="checkbox" name="DeleteTemplate-<%$TemplateObj->Id%>" value="1">
-</TD>
-<TD>
-<A HREF="Template.html?Queue=<%$id%>&Template=<%$TemplateObj->id()%>">
-<B><% loc($TemplateObj->Name) %></B></A>
-<br><% loc($TemplateObj->Description) %>
-</TD>
-</TR>
-
-% }
-</TABLE>
-% }
-
-<& /Elements/Submit, Label => loc('Delete Template') &>
-</FORM>
-
-<%INIT>
-my $Templates = RT::Templates->new($session{'CurrentUser'});
-my $QueueObj = RT::Queue->new($session{'CurrentUser'});
-my @actions;
-
-if ($id) {
- $QueueObj->Load($id);
-}
-
-if ($QueueObj->id) {
- $Templates->LimitToQueue($id);
-}
-else {
- $Templates->LimitToGlobal();
-}
-
-# Now let callbacks add their extra limits
-$m->comp('/Elements/Callback', Templates => $Templates, %ARGS);
-
-# {{{ deal with deleting existing templates
-foreach my $key (keys %ARGS) {
- # {{{ if we're trying to delete the template
- if ($key =~ /^DeleteTemplate-(\d+)/) {
- my $id = $1;
- my $TemplateObj = RT::Template->new($session{'CurrentUser'});
- $TemplateObj->Load($id);
- my ($retval, $msg) = $TemplateObj->Delete;
- if ($retval) {
- push @actions, loc("Template deleted");
- }
- else {
- push @actions, $msg;
- }
- }
- # }}}
-}
-# }}}
-</%INIT>
-<%ARGS>
-$id => 0
-$title => undef
-$Move => undef
-$Source => undef
-$Template => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/EditUserComments b/rt/html/Admin/Elements/EditUserComments
deleted file mode 100644
index fb96dc0..0000000
--- a/rt/html/Admin/Elements/EditUserComments
+++ /dev/null
@@ -1,54 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => "Comments about $name" &>
-<&|/l&>These comments aren't generally visible to the user</&>:<br>
-<input type="hidden" name="id" value="<%$id%>">
-<TEXTAREA COLS=60 ROWS=15 WRAP=SOFT NAME="Comments"><% $UserObj->Comments %></TEXTAREA>
-</FORM>
-
-<%ARGS>
-$UserObj => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/GlobalCustomFieldTabs b/rt/html/Admin/Elements/GlobalCustomFieldTabs
deleted file mode 100755
index 8d4eaca..0000000
--- a/rt/html/Admin/Elements/GlobalCustomFieldTabs
+++ /dev/null
@@ -1,93 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/SystemTabs, subtabs => $tabs,
- current_tab => 'Admin/Global/CustomFields/index.html',
- current_subtab => $current_tab,
- Title => $Title &>
-<%INIT>
-
-
- my $tabs = {
-
- A => { title => loc('Users'),
- text => loc('Modify scrips which apply to all queues'),
- path => 'Admin/Global/CustomFields/Users.html',
- },
- B => { title => loc('Groups'),
- text => loc('Edit system templates'),
- path => 'Admin/Global/CustomFields/Groups.html',
- },
-
- F => { title => loc('Tickets'),
- text => loc('Modify global custom fields'),
- path => 'Admin/Global/CustomFields/Queue-Tickets.html',
- },
-
- G => { title => loc('Ticket Transactions'),
- text => loc('Modify global group rights'),
- path => 'Admin/Global/CustomFields/Queue-Transactions.html',
- },
-
-};
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-$current_tab => undef
-$subtabs => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/GroupTabs b/rt/html/Admin/Elements/GroupTabs
deleted file mode 100644
index 60edda4..0000000
--- a/rt/html/Admin/Elements/GroupTabs
+++ /dev/null
@@ -1,100 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs,
- subtabs => $tabs,
- current_tab => 'Admin/Groups/',
- current_subtab => $current_tab,
- Title => $Title &>
-<%INIT>
-my $tabs;
-
-if ( $GroupObj and $GroupObj->id ) {
-$tabs->{"this"} = { class => "currentnav",
- path => "Admin/Groups/Modify.html?id=" . $GroupObj->id,
- title => $GroupObj->Name,
- current_subtab => $current_subtab,
- subtabs => {
- C => { title => loc('Basics'),
- path => "Admin/Groups/Modify.html?id=" . $GroupObj->id },
-
- D => { title => loc('Members'),
- path => "Admin/Groups/Members.html?id=" . $GroupObj->id },
-
- F => { title => loc('Group Rights'),
- path => "Admin/Groups/GroupRights.html?id=" . $GroupObj->id, },
- G => { title => loc('User Rights'),
- path => "Admin/Groups/UserRights.html?id=" . $GroupObj->id, },
- H => { title => loc('History'),
- path => "Admin/Groups/History.html?id=" . $GroupObj->id },
- }
-}
-}
-$tabs->{"A"} = { title => loc('Select group'),
- path => "Admin/Groups/", };
-$tabs->{"B"} = { title => loc('New group'),
- path => "Admin/Groups/Modify.html?Create=1",
- separator => 1, };
-
-# Now let callbacks add their extra tabs
-$m->comp( '/Elements/Callback', tabs => $tabs, %ARGS );
-foreach my $tab ( sort keys %{$tabs->{'this'}->{'subtabs'}} ) {
- if ( $tabs->{'this'}->{'subtabs'}->{$tab}->{'path'} eq $current_tab ) {
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"current_subtab"} = $current_subtab;
- }
-}
- $tabs->{'this'}->{"current_subtab"} = $current_tab;
- $current_tab = "Admin/Groups/Modify.html?id=".$GroupObj->id if $GroupObj;
-
-</%INIT>
-<%ARGS>
-$GroupObj => undef
-$subtabs => undef
-$current_subtab => undef
-$current_tab => undef
-$Title => undef
-</%ARGS>
-
diff --git a/rt/html/Admin/Elements/Header b/rt/html/Admin/Elements/Header
deleted file mode 100644
index b809080..0000000
--- a/rt/html/Admin/Elements/Header
+++ /dev/null
@@ -1,50 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, %ARGS &>
-
-<%ARGS>
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/ListGlobalCustomFields b/rt/html/Admin/Elements/ListGlobalCustomFields
deleted file mode 100644
index 3df9d62..0000000
--- a/rt/html/Admin/Elements/ListGlobalCustomFields
+++ /dev/null
@@ -1,59 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% my $count = 0;
-% while (my $CustomFieldObj = $CustomFields->Next) {
-% $count++;
-<font size="-1"><%$CustomFieldObj->id%>/<% loc($CustomFieldObj->Type) %>/<%$CustomFieldObj->Name%>: <%$CustomFieldObj->Description%></font>
-<BR>
-% }
-% if (!$count) {
-<font size="-1"><&|/l&>(No custom fields)</&></font>
-% }
-
-<%init>
-my $CustomFields = new RT::CustomFields ($session{'CurrentUser'});
-$CustomFields->LimitToGlobal();
-</%INIT>
diff --git a/rt/html/Admin/Elements/ListGlobalScrips b/rt/html/Admin/Elements/ListGlobalScrips
deleted file mode 100644
index 2e37912..0000000
--- a/rt/html/Admin/Elements/ListGlobalScrips
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-
-% if ($Scrips->Count == 0) {
-
-<P><i><&|/l&>(No scrips)</&></i></P>
-
-% } else {
-
-<UL>
-
-% while (my $scrip = $Scrips->Next ) {
-<LI>
-<a href="<%$RT::WebPath%>/Admin/Global/Scrip.html?id=<%$scrip->Id%>&Queue=<%0%>">
-% if ($scrip->Description) {
-<% $scrip->Description %>
-% } else {
-<i>(<&|/l, $scrip->Id&>Scrip #[_1]</&>)</i>
-% }
-</a><br>
-<small><&|/l, loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name) &>[_1] [_2] with template [_3]</&></small>
-</LI>
-% }
-
-</UL>
-
-% }
-
-<%init>
-my $Scrips = new RT::Scrips ($session{'CurrentUser'});
-$Scrips->LimitToGlobal();
-</%INIT>
diff --git a/rt/html/Admin/Elements/ModifyTemplate b/rt/html/Admin/Elements/ModifyTemplate
deleted file mode 100644
index 6749f3e..0000000
--- a/rt/html/Admin/Elements/ModifyTemplate
+++ /dev/null
@@ -1,82 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Name</&>:
-</TD>
-<TD>
-<input name="Name" VALUE="<%$Name%>" SIZE=20><BR>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Description</&>:
-</TD>
-<TD>
-<input name="Description" VALUE="<%$Description%>" SIZE=80><BR>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT VALIGN=TOP>
-<&|/l&>Content</&>:<BR>
-</TD>
-<TD>
-<TEXTAREA NAME=Content ROWS=25 COLS=80 WRAP=SOFT>
-<%$Content%></TEXTAREA>
-</TD>
-</TR>
-</TABLE>
-
-<%INIT>
-
-</%INIT>
-
-<%ARGS>
-$Name => undef
-$Description => undef
-$Content => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/ObjectCustomFields b/rt/html/Admin/Elements/ObjectCustomFields
deleted file mode 100644
index a87e157..0000000
--- a/rt/html/Admin/Elements/ObjectCustomFields
+++ /dev/null
@@ -1,109 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& $ObjectTabs,
-$id ? (
- id => $Object->id,
- current_tab => "Admin/$Types/CustomFields.html?$sub_type_url&id=".$id,
- current_subtab => "Admin/$Types/CustomFields.html?$sub_type_url&id=".$id,
- "${Type}Obj" => $Object,
-) : (
- current_tab => "Admin/Global/CustomFields/${QualifiedType}s.html",
-),
- Title => $title
- &>
-
-<& /Admin/Elements/EditCustomFields, %ARGS, title => $title, Object => $Object &>
-<%INIT>
-# XXX TODO: Validate here?
-#$ObjectType =~ /^RT::(Queue|User|Group)$/
-# or Abort(loc("Object of type [_1] cannot take custom fields", $ObjectType));
-
-
-
-my $Type = $1;
-my $Types = $Type.'s';
-my $ObjectTabs;
-my $Object = $ObjectType->new($session{'CurrentUser'});
-
-
-my $QualifiedType;
-my $FriendlySubTypes;
-if ($SubType =~/^RT::(.*)$/) {
- $FriendlySubTypes = RT::CustomField->new($session{'CurrentUser'})->FriendlyLookupType($Object->CustomFieldLookupType);
- $QualifiedType = "$Type-$1";
-} else {
- $QualifiedType = $Type;
-}
-
-if ($id) {
- $Object->Load($id) || Abort(loc("Couldn't load object [_1]", $id));
- $ObjectTabs = "/Admin/Elements/${Type}Tabs";
-} else {
- $ObjectTabs = "/Admin/Elements/GlobalCustomFieldTabs";
-
-}
-
-my $title;
-if ($id) {
-$title = loc('Edit Custom Fields for [_1]', $Object->Name);
-}
-elsif ($SubType) {
-
- $title= loc("Modify Custom Fields which apply to [_1] for all [_2]", loc(lc($FriendlySubTypes)), loc(lc($Types)));
-} else {
- $title =loc("Modify Custom Fields which apply to all [_1]", loc(lc($Types)));
-
-}
-my $sub_type_url;
-$sub_type_url = "SubType=$SubType" if $SubType;
-
-</%INIT>
-<%ARGS>
-$id => undef
-$ObjectType
-$SubType => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/PickCustomFields b/rt/html/Admin/Elements/PickCustomFields
deleted file mode 100644
index c2a30f9..0000000
--- a/rt/html/Admin/Elements/PickCustomFields
+++ /dev/null
@@ -1,96 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if (@CustomFields == 0) {
-<p><i><&|/l&>(None)</&></i></p>
-% } else {
-<TABLE cellspacing=0 cellpadding=2>
-% my $count;
-% foreach my $CustomFieldObj (@CustomFields) {
-<TR>
-% if (!$ReadOnly) {
- <TD valign="TOP">
-<input type="checkbox" name="Object-<%$id%>-CF-<%$CustomFieldObj->Id%>" value="1" <% $Checked ? 'CHECKED' : '' %>
->
- </TD>
-% }
- <TD valign="TOP">
- <A HREF="<%$RT::WebPath%>/Admin/CustomFields/Modify.html?id=<%$CustomFieldObj->id()%>">
-% if ($CustomFieldObj->Name) {
-<b><%$CustomFieldObj->Name%></b>
-% } else {
-<i>(<&|/l&>no name</&>)</i>
-% }
-</a><br>
- <%$CustomFieldObj->Description%>
- </TD>
- <TD valign="TOP">
- <i><% $CustomFieldObj->FriendlyTypeComposite %></i>
- </TD>
-% # show 'move up' unless it's the first item
-% if ($count++ and $Checked) {
- <TD valign="TOP">
- [<a href="<%$RT::WebPath%><% $m->request_comp->path |n %>?id=<%$id%>&SubType=<%$SubType%>&CustomField=<%$CustomFieldObj->id%>&Move=-1"><&|/l&>Move up</&></a>]
-% } else {
- <TD valign="TOP" ALIGN=RIGHT>
-% }
-
-% # show 'move down' unless it's the last item
-% if ($count != @CustomFields and $Checked) {
-% $m->print(' | ') if $count > 1;
- [<a href="<%$RT::WebPath%><% $m->request_comp->path |n %>?id=<%$id%>&SubType=<%$SubType%>&CustomField=<%$CustomFieldObj->id%>&Move=1"><&|/l&>Move down</&></a>]
-% }
- </TD>
-</TR>
-% }
-</TABLE>
-% }
-<%ARGS>
-@CustomFields
-$id
-$ReadOnly => 0
-$Checked => 0
-$SubType
-</%ARGS>
diff --git a/rt/html/Admin/Elements/PickObjects b/rt/html/Admin/Elements/PickObjects
deleted file mode 100644
index b07a882..0000000
--- a/rt/html/Admin/Elements/PickObjects
+++ /dev/null
@@ -1,80 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if (@Objects == 0) {
-<P><i><&|/l&>(None)</&></i></P>
-% } else {
-<TABLE cellspacing=0 cellpadding=2>
-% my $count;
-% foreach my $Object (@Objects) {
-<TR>
-% if (!$ReadOnly) {
- <TD valign="TOP">
-<input type="checkbox" name="Object-<%$Object->id%>-CF-<%$id%>" value="1" <% $Checked ? 'CHECKED' : ''%>
->
- </TD>
-% }
- <TD valign="TOP">
-% if ($Object->Name) {
- <b><%$Object->Name%></b><br>
-% } else {
- <i>(<%loc("no name")%>)</i><br>
-% }
- <%$Object->can('Description') && $Object->Description%>
- </TD>
-%# <TD valign="TOP">
-%# <i><% $CustomFieldObj->FriendlyTypeComposite %></i>
-%# </TD>
- </TD>
-</TR>
-% }
-</TABLE>
-% }
-<%ARGS>
-@Objects
-$id
-$ReadOnly => 0
-$Checked => 0
-</%ARGS>
diff --git a/rt/html/Admin/Elements/QueueRightsForUser b/rt/html/Admin/Elements/QueueRightsForUser
deleted file mode 100644
index 01f294a..0000000
--- a/rt/html/Admin/Elements/QueueRightsForUser
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<UL>
-%while(my $ACE = $ACL->Next) {
-
-<LI><checkbox name="delete_ace_<%$ACE->id%>" value="1"> <% loc($ACE->RightName) %> (<%$ACE->UserObj->RealName%>)
-
-%}
-</UL>
-
-<%INIT>
-my $ACL = new RT::ACL($session{'CurrentUser'});
-$ACL->LimitToQueue($QueueObj->id);
-$ACL->LimitPrincipalToUser($PrincipalId);
-</%INIT>
-<%ARGS>
-$PrincipalId => undef
-$QueueObj => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/QueueTabs b/rt/html/Admin/Elements/QueueTabs
deleted file mode 100644
index 93522d0..0000000
--- a/rt/html/Admin/Elements/QueueTabs
+++ /dev/null
@@ -1,118 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs,
- subtabs => $tabs,
- current_tab => 'Admin/Queues/',
- current_subtab => $current_tab,
- Title => $Title &>
-
-<%INIT>
-my $tabs;
-if ($id) {
- $tabs->{'this'} = {
- title => $QueueObj->Name,
- path => "Admin/Queues/Modify.html?id=".$id,
- current_subtab => $current_tab,
- subtabs => {
- C => { title => loc('Basics'),
- path => "Admin/Queues/Modify.html?id=".$id,
- },
- D => { title => loc('Watchers'),
- path => "Admin/Queues/People.html?id=".$id,
- },
-
- E => { title => loc('Scrips'),
- path => "Admin/Queues/Scrips.html?id=".$id,
- },
- F => { title => loc('Templates'),
- path => "Admin/Queues/Templates.html?id=".$id,
- },
-
- G1 => { title => loc('Ticket Custom Fields'),
- path => 'Admin/Queues/CustomFields.html?SubType=RT::Ticket&id='.$id,
- },
-
- G2 => { title => loc('Transaction Custom Fields'),
- path => 'Admin/Queues/CustomFields.html?SubType=RT::Ticket-RT::Transaction&id='.$id,
- },
-
- H => { title => loc('Group Rights'),
- path => "Admin/Queues/GroupRights.html?id=".$id,
- },
- I => { title => loc('User Rights'),
- path => "Admin/Queues/UserRights.html?id=".$id,
- }
- }
- };
-}
-if ($session{'CurrentUser'}->HasRight( Object => $RT::System, Right => 'AdminQueue')) {
- $tabs->{"A"} = { title => loc('Select queue'),
- path => "Admin/Queues/",
- };
- $tabs->{"B"} = { title => loc('New queue'),
- path => "Admin/Queues/Modify.html?Create=1",
- separator => 1, };
-}
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-foreach my $tab ( sort keys %{$tabs->{'this'}->{'subtabs'}} ) {
- if ( $tabs->{'this'}->{'subtabs'}->{$tab}->{'path'} eq $current_tab ) {
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"current_subtab"} = $current_subtab;
- }
-}
- $current_tab = "Admin/Queues/Modify.html?id=".$id if $id;
-</%INIT>
-
-<%ARGS>
-$QueueObj => undef
-$id => undef
-$subtabs => undef
-$current_subtab => undef
-$current_tab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectCustomFieldLookupType b/rt/html/Admin/Elements/SelectCustomFieldLookupType
deleted file mode 100644
index ec9f740..0000000
--- a/rt/html/Admin/Elements/SelectCustomFieldLookupType
+++ /dev/null
@@ -1,58 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-%for my $option ($cf->LookupTypes) {
-<OPTION VALUE="<%$option%>" <%$option eq $Default && "SELECTED"%>><% $cf->FriendlyLookupType($option) %></OPTION>
-%}
-</SELECT>
-<%INIT>
-my $cf = RT::CustomField->new($session{'CurrentUser'});
-
-</%INIT>
-<%ARGS>
-$Default=>undef
-$Name => 'LookupType'
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectCustomFieldType b/rt/html/Admin/Elements/SelectCustomFieldType
deleted file mode 100644
index 3f25b8e..0000000
--- a/rt/html/Admin/Elements/SelectCustomFieldType
+++ /dev/null
@@ -1,58 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-%for my $option ($cf->TypeComposites) {
-<OPTION VALUE="<%$option%>" <%$option eq $Default && "SELECTED"%>><% $cf->FriendlyTypeComposite($option) %></OPTION>
-%}
-</SELECT>
-<%INIT>
-my $cf = RT::CustomField->new($session{'CurrentUser'});
-
-</%INIT>
-<%ARGS>
-$Default=>undef
-$Name => 'TypeComposite'
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectGroups b/rt/html/Admin/Elements/SelectGroups
deleted file mode 100644
index 92bd475..0000000
--- a/rt/html/Admin/Elements/SelectGroups
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT MULTIPLE NAME="<%$Name%>" SIZE=10>
-%while (my $group = $groups->Next) {
-<OPTION VALUE="<%$group->id%>"><%$group->Name%>
-%}
-</SELECT>
-
-<%INIT>
-my $groups = new RT::Groups($session{'CurrentUser'});
-$groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => $Domain);
-
-</%INIT>
-<%ARGS>
-$Name => 'groups'
-$Domain => 'UserDefined';
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectModifyGroup b/rt/html/Admin/Elements/SelectModifyGroup
deleted file mode 100644
index 272e1f0..0000000
--- a/rt/html/Admin/Elements/SelectModifyGroup
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%while ( $Group = $Groups->Next) {
-<A HREF="Modify.html?id=<%$Group->id%>"><%$Group->id%>: <%$Group->Name%></a><BR>
-%}
-<%INIT>
-my ($Group);
-my $Groups = new RT::Groups($session{'CurrentUser'});
-$Groups->UnLimit;
-</%INIT>
-<%ARGS>
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectModifyQueue b/rt/html/Admin/Elements/SelectModifyQueue
deleted file mode 100644
index 3a30d09..0000000
--- a/rt/html/Admin/Elements/SelectModifyQueue
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%while ( $queue = $queues->Next) {
-<A HREF="Modify.html?id=<%$queue->id%>"><%$queue->id%>: <%$queue->Name%></a><BR>
-%}
-<%INIT>
-my ($queue);
-my $queues = new RT::Queues($session{'CurrentUser'});
-$queues->UnLimit;
-</%INIT>
-<%ARGS>
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectModifyUser b/rt/html/Admin/Elements/SelectModifyUser
deleted file mode 100644
index fc6c012..0000000
--- a/rt/html/Admin/Elements/SelectModifyUser
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%while ( $user = $users->Next) {
-<A HREF="Modify.html?id=<%$user->id%>"><%$user->id%>: <%$user->Name%></a><BR>
-%}
-<%INIT>
-my ($user);
-my $users = new RT::Users($session{'CurrentUser'});
-$users->Limit(FIELD => 'id',
- VALUE => $RT::SystemUser->id,
- OPERATOR => '!=' );
-
-if (defined $IdLike) {
-$users->Limit(FIELD => 'Name',
- VALUE => $IdLike,
- OPERATOR => 'LIKE' );
-}
-if (defined $EmailLike) {
-$users->Limit(FIELD => 'EmailAddress',
- VALUE => $EmailLike,
- OPERATOR => 'LIKE');
-
-}
-</%INIT>
-<%ARGS>
-$IdLike => undef
-$EmailLike => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectNewGroupMembers b/rt/html/Admin/Elements/SelectNewGroupMembers
deleted file mode 100644
index 95056ae..0000000
--- a/rt/html/Admin/Elements/SelectNewGroupMembers
+++ /dev/null
@@ -1,93 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($Show ne 'Groups') {
-<b><&|/l&>Users</&></b>
-<SELECT MULTIPLE NAME="<%$Name%>Users" SIZE=10>
-%while (my $user = $users->Next) {
-<OPTION VALUE="User-<%$user->id%>"><%$user->Name%></OPTION>
-%}
-</SELECT>
-<br>
-% }
-% if ($Show ne 'Users') {
-<b><&|/l&>Groups</&></b>
-<SELECT MULTIPLE NAME="<%$Name%>Groups" SIZE=10>
-%while (my $group = $groups->Next) {
-<OPTION VALUE="Group-<%$group->id%>"><%$group->Name%></OPTION>
-%}
-</SELECT>
-% }
-
-<%INIT>
-my $users = new RT::Users($session{'CurrentUser'});
-
-$users->Limit(
- FIELD => 'id',
- VALUE => $RT::SystemUser->id,
- OPERATOR => '!=',
- ENTRYAGGREGATOR => 'AND'
-);
-$users->Limit(
- FIELD => 'id',
- VALUE => $RT::Nobody->id,
- OPERATOR => '!=',
- ENTRYAGGREGATOR => 'AND'
-);
-$users->LimitToPrivileged();
-
-my $groups = new RT::Groups($session{'CurrentUser'});
-
-# self-recursive group membership considered harmful!
-$groups->Limit(FIELD => 'id', VALUE => $Group->id, OPERATOR => '!=' );
-$groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined');
-
-
-</%INIT>
-<%ARGS>
-$Name => 'Users'
-$Show => 'All'
-$Group
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectRights b/rt/html/Admin/Elements/SelectRights
deleted file mode 100644
index 3e61d50..0000000
--- a/rt/html/Admin/Elements/SelectRights
+++ /dev/null
@@ -1,116 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<INPUT TYPE=HIDDEN NAME="CheckACL" VALUE="<%$ACLDesc%>">
- <TABLE BORDER=0>
-<TR>
-<TD valign=top width="180" align="left">
-% my %current_rights;
-<h3><&|/l&>Current rights</&></h3>
-% if ($ACLObj->Count() == 0) {
-<i><&|/l&>No rights granted.</&></i> <BR>
-% } else {
-<i>(<&|/l&>Check box to revoke right</&>)</i> <BR>
-% while (my $right = $ACLObj->Next()) {
-% if ($right->RightName) {
-% $current_rights{$right->RightName} = 1;
-<input type=checkbox value="<%$right->Id%>" name="RevokeRight-<%$ACLDesc%>-<%$right->RightName%>"> <% loc($right->RightName) %><br>
-% }
-% }
-% }
-</TD>
-<TD valign=top>
-<h3><&|/l&>New rights</&></h3>
-<SELECT SIZE=5 MULTIPLE NAME="GrantRight-<%$ACLDesc%>">
-% foreach $right (sort keys %Rights) {
-% next if $current_rights{$right};
- <OPTION VALUE="<%$right%>"
- ><% loc($right) %></OPTION>
-% }
-<OPTION VALUE="" SELECTED><&|/l&>(no value)</&></OPTION>
-</SELECT>
-</TD>
-</TR>
-</TABLE>
-<%INIT>
- my ($right, $ACLDesc, $AppliesTo, %Rights);
-
- # if the principal id points to a user, we really want to point
- # to their ACL equivalence group. The machinations we're going through
- # lead me to start to suspect that we really want users and groups
- # to just be the same table. or _maybe_ that we want an object db.
- my $princ = RT::Principal->new($RT::SystemUser);
- $princ->Load($PrincipalId);
- if ($princ->PrincipalType eq 'User') {
- my $group = RT::Group->new($RT::SystemUser);
- $group->LoadACLEquivalenceGroup($princ);
- $PrincipalId = $group->PrincipalId;
- }
-
-
- my $ACLObj = new RT::ACL($session{'CurrentUser'});
- my $ACE = new RT::ACE($session{'CurrentUser'});
-
-
- $ACLObj->LimitToObject( $Object);
- $ACLObj->LimitToPrincipal( Id => $PrincipalId);
- $ACLObj->OrderBy(FIELD=>'RightName');
-
- if (ref($Object) && UNIVERSAL::can($Object, 'AvailableRights')) {
- %Rights = %{$Object->AvailableRights};
- }
-
- else {
- %Rights = ( loc('System Error') => loc("No rights found") );
- }
-
- $ACLDesc = "$PrincipalId-".ref($Object)."-".$Object->Id;
-</%INIT>
-
-<%ARGS>
-$PrincipalType => undef
-$PrincipalId => undef
-$Object =>undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectScrip b/rt/html/Admin/Elements/SelectScrip
deleted file mode 100644
index a9e9796..0000000
--- a/rt/html/Admin/Elements/SelectScrip
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME=<%$Name%>>
-<OPTION VALUE=""
-<% $Default eq undef && 'SELECTED' %>
->-</OPTION>
-%while (my $Scrip = $Scrips->Next) {
-<OPTION VALUE=<% $Scrip->Id %>
-<% $Scrip->Id == $Default && 'SELECTED' %>
-><% loc($Scrip->Name) %>
-</OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my $Scrips = RT::Scrips->new($session{'CurrentUser'});
-$Scrips->UnLimit;
-
-
-
-</%INIT>
-<%ARGS>
-
-$Default => undef
-$Name => 'Scrip'
-
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectScripAction b/rt/html/Admin/Elements/SelectScripAction
deleted file mode 100644
index 8d88d64..0000000
--- a/rt/html/Admin/Elements/SelectScripAction
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME=<%$Name%>>
-<OPTION VALUE=""
-<% ! defined $Default && 'SELECTED' %>
->-</OPTION>
-%while (my $ScripAction = $ScripActions->Next) {
-<OPTION VALUE=<%$ScripAction->Id%>
-<% defined $Default && $ScripAction->Id == $Default && 'SELECTED' %>
-><% loc($ScripAction->Name) %>
-</OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my $ScripActions = RT::ScripActions->new($session{'CurrentUser'});
-$ScripActions->UnLimit;
-
-
-
-</%INIT>
-<%ARGS>
-
-$Default => undef
-$Name => 'ScripAction'
-
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectScripCondition b/rt/html/Admin/Elements/SelectScripCondition
deleted file mode 100644
index faa99fd..0000000
--- a/rt/html/Admin/Elements/SelectScripCondition
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME=<%$Name%>>
-<OPTION VALUE=""
-<% ! defined $Default && 'SELECTED' %>
->-</OPTION>
-%while (my $ScripCondition = $ScripConditions->Next) {
-<OPTION VALUE=<%$ScripCondition->Id%>
-<% defined $Default && $ScripCondition->Id == $Default && 'SELECTED' %>
-><% loc($ScripCondition->Name) %>
-</OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my $ScripConditions = RT::ScripConditions->new($session{'CurrentUser'});
-$ScripConditions->UnLimit;
-
-
-
-</%INIT>
-<%ARGS>
-
-$Default => undef
-$Name => 'ScripCondition'
-
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectSingleOrMultiple b/rt/html/Admin/Elements/SelectSingleOrMultiple
deleted file mode 100644
index 5716950..0000000
--- a/rt/html/Admin/Elements/SelectSingleOrMultiple
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
- <select name="<%$Name%>">
- <option value="1" <%$SingleDefault%>><&|/l&>Single</&></option>
- <option value="0" <%$MultipleDefault%>><&|/l&>Multiple</&></option>
- </select>
-
-
-<%INIT>
-my ($SingleDefault, $MultipleDefault);
-if ($Default == 1) {
- $SingleDefault = "SELECTED";
-}
-elsif ($Default == 0 ) {
- $MultipleDefault = "SELECTED";
-}
-
-</%INIT>
-<%ARGS>
-$Name => 'Single'
-$Default => 1
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectStage b/rt/html/Admin/Elements/SelectStage
deleted file mode 100644
index 0fbf5c6..0000000
--- a/rt/html/Admin/Elements/SelectStage
+++ /dev/null
@@ -1,64 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME=<%$Name%>>
-% foreach my $stage (@stages) {
-<OPTION VALUE=<%$stage%>
-<% ($stage eq $Default) && 'SELECTED' %>
-><% loc($stage) %>
-</OPTION>
-% }
-<%INIT>
-if ($Default eq '') {
- $Default = 'TransactionCreate';
-}
-my @stages = 'TransactionCreate';
-push @stages, 'TransactionBatch' if $RT::UseTransactionBatch;
-push @stages, 'Disabled';
-</%INIT>
-<%ARGS>
-$Default => 'TransactionCreate'
-$Name => 'Stage'
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectTemplate b/rt/html/Admin/Elements/SelectTemplate
deleted file mode 100644
index 7d83b67..0000000
--- a/rt/html/Admin/Elements/SelectTemplate
+++ /dev/null
@@ -1,83 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME=<%$Name%>>
-<OPTION VALUE=""
-<% $Default eq 'none' && 'SELECTED' %>
->-</OPTION>
-%while (my $Template = $PrimaryTemplates->Next) {
-<OPTION VALUE=<%$Template->Id%>
-<% ($Template->Id == $Default) && 'SELECTED' %>
-><% loc($Template->Name) %>
-</OPTION>
-%}
-%while (my $Template = $OtherTemplates->Next) {
-<OPTION VALUE=<%$Template->Id%>
-<% ($Template->Id == $Default) && 'SELECTED'%>
-><&|/l, loc($Template->Name) &>Global template: [_1]</&>
-</OPTION>
-%}
-</SELECT>
-
-<%INIT>
-
-
-my $PrimaryTemplates = RT::Templates->new($session{'CurrentUser'});
-if ($Queue != 0) {
-$PrimaryTemplates->LimitToQueue($Queue);
-}
-
-my $OtherTemplates = RT::Templates->new($session{'CurrentUser'});
-$OtherTemplates->LimitToGlobal($DefaultQueue);
-
-</%INIT>
-<%ARGS>
-
-$Queue => undef
-$Default => 'none'
-$DefaultQueue => undef
-$Name => 'Template'
-
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SelectUsers b/rt/html/Admin/Elements/SelectUsers
deleted file mode 100644
index a88aa8f..0000000
--- a/rt/html/Admin/Elements/SelectUsers
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT MULTIPLE NAME="<%$Name%>" SIZE=10>
-%while (my $user = $users->Next) {
-<OPTION VALUE="<%$user->id%>"><%$user->Name%>
-%}
-</SELECT>
-
-<%INIT>
-my $users = new RT::Users($session{'CurrentUser'});
-
-$users->Limit(FIELD => 'id', VALUE => $RT::SystemUser->id, OPERATOR => '!=' );
-$users->Limit(FIELD => 'id', VALUE => $RT::Nobody->id, OPERATOR => '!=' );
-$users->LimitToPrivileged();
-
-</%INIT>
-<%ARGS>
-$Name => 'Users'
-</%ARGS>
diff --git a/rt/html/Admin/Elements/SystemTabs b/rt/html/Admin/Elements/SystemTabs
deleted file mode 100644
index 646f552..0000000
--- a/rt/html/Admin/Elements/SystemTabs
+++ /dev/null
@@ -1,92 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs, subtabs => $tabs,
- current_tab => 'Admin/Global/',
- current_subtab => $current_tab,
- Title => $Title &>
-
-<%INIT>
- my $tabs = {
-
- A => { title => loc('Scrips'),
- path => 'Admin/Global/Scrips.html',
- },
- B => { title => loc('Templates'),
- path => 'Admin/Global/Templates.html',
- },
-
- F => { title => loc('Custom Fields'),
- path => 'Admin/Global/CustomFields/index.html',
- },
-
- G => { title => loc('Group Rights'),
- path => 'Admin/Global/GroupRights.html',
- },
- H => { title => loc('User Rights'),
- path => 'Admin/Global/UserRights.html',
- }
-
-};
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-$current_tab => undef
-$subtabs => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/Tabs b/rt/html/Admin/Elements/Tabs
deleted file mode 100644
index f90a629..0000000
--- a/rt/html/Admin/Elements/Tabs
+++ /dev/null
@@ -1,91 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Tabs,
- tabs => $tabs,
- current_toptab => 'Admin/',
- current_tab => $current_tab,
- Title => $Title &>
-
-<%INIT>
- my $tabs = { A => { title => loc('Users'),
- path => 'Admin/Users/',
- },
- B => { title => loc('Groups'),
- path => 'Admin/Groups/',
- },
- C => { title => loc('Queues'),
- path => 'Admin/Queues/',
- },
- D => { 'title' => loc('Custom Fields'),
- path => 'Admin/CustomFields/',
- },
- E => { 'title' => loc('Global'),
- path => 'Admin/Global/',
- },
- F => { 'title' => loc('Tools'),
- path => 'Admin/Tools/',
- },
- };
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-
-</%INIT>
-
-
-<%ARGS>
-$subtabs => undef
-$current_tab => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/ToolTabs b/rt/html/Admin/Elements/ToolTabs
deleted file mode 100755
index 773b810..0000000
--- a/rt/html/Admin/Elements/ToolTabs
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs, subtabs => $tabs,
- current_tab => 'Admin/Tools/',
- current_subtab => $current_tab,
- Title => $Title &>
-
-<%INIT>
- my $tabs = {
-
- A => { title => loc('System Configuration'),
- path => 'Admin/Tools/Configuration.html',
- }
-
-};
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-$current_tab => undef
-$subtabs => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Elements/UserTabs b/rt/html/Admin/Elements/UserTabs
deleted file mode 100644
index 0ffd29b..0000000
--- a/rt/html/Admin/Elements/UserTabs
+++ /dev/null
@@ -1,108 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Tabs,
- subtabs => $tabs,
- current_tab => 'Admin/Users/',
- current_subtab => $current_tab,
- Title => $Title &>
-<%INIT>
-my $tabs;
-if ($id) {
-$tabs->{'this'} = { title => eval { $UserObj->Name },
-
- path => "Admin/Users/Modify.html?id=".$id,
-subtabs => {
- Basics => { title => loc('Basics'),
- path => "Admin/Users/Modify.html?id=".$id
- },
- Memberships => { title => loc('Memberships'),
- path => "Admin/Users/Memberships.html?id=".$id
- },
- History => { title => loc('History'),
- path => "Admin/Users/History.html?id=".$id
- },
-# Scrips => { title => loc('Rights'),
-# path => "Admin/Users/Rights.html?id=".$id
-# }
-
- }
-}
-}
-if ($session{'CurrentUser'}->HasRight( Object => $RT::System, Right => 'AdminUsers')) {
- $tabs->{"A"} = { title => loc('Select user'),
- path => "Admin/Users/",
- };
- $tabs->{"B"} = { title => loc('New user'),
- path => "Admin/Users/Modify.html?Create=1",
- separator => 1,
- };
-}
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
-#foreach my $tab ( sort keys %{$tabs} ) {
-# if ( $tabs->{$tab}->{'path'} eq $current_subtab ) {
-# $tabs->{$tab}->{"current_subtab"} = $current_subtab;
-# }
-#}
-foreach my $tab ( sort keys %{$tabs->{'this'}->{'subtabs'}} ) {
- if ( $tabs->{'this'}->{'subtabs'}->{$tab}->{'path'} eq $current_tab ) {
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{'this'}->{'subtabs'}->{$tab}->{"current_subtab"} = $current_subtab;
- }
-}
-$tabs->{'this'}->{"current_subtab"} = $current_tab;
-$current_tab = "Admin/Users/Modify.html?id=".$id if $id;
-</%INIT>
-<%ARGS>
-$UserObj => undef
-$id => undef
-$current_tab => undef
-$subtabs => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Admin/Global/CustomFields/Groups.html b/rt/html/Admin/Global/CustomFields/Groups.html
deleted file mode 100644
index bffde01..0000000
--- a/rt/html/Admin/Global/CustomFields/Groups.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GlobalCustomFieldTabs,
- current_tab => "Admin/Global/CustomFields/Groups.html",
- current_subtab => "Admin/Global/CustomFields/Groups.html",
- Title => $title
- &>
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, ObjectType => 'RT::Group', Object=> $object &>
-<%INIT>
- my $title = loc( 'Edit Custom Fields for all groups');
- my $object = RT::Group->new($session{'CurrentUser'});
-</%INIT>
diff --git a/rt/html/Admin/Global/CustomFields/Queue-Tickets.html b/rt/html/Admin/Global/CustomFields/Queue-Tickets.html
deleted file mode 100755
index 396559a..0000000
--- a/rt/html/Admin/Global/CustomFields/Queue-Tickets.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GlobalCustomFieldTabs,
- current_tab => "Admin/Global/CustomFields/Queue-Tickets.html",
- current_subtab => "Admin/Global/CustomFields/Queue-Tickets.html",
- Title => $title
- &>
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, ObjectType => 'RT::Queue', Object=> $object, SubType => 'RT::Ticket' &>
-<%INIT>
- my $title = loc( 'Edit Custom Fields for tickets in all queues');
- my $object = RT::Queue->new($session{'CurrentUser'});
-</%INIT>
diff --git a/rt/html/Admin/Global/CustomFields/Queue-Transactions.html b/rt/html/Admin/Global/CustomFields/Queue-Transactions.html
deleted file mode 100755
index 63b4cfe..0000000
--- a/rt/html/Admin/Global/CustomFields/Queue-Transactions.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GlobalCustomFieldTabs,
- current_tab => "Admin/Global/CustomFields/Queue-Transactions.html",
- current_subtab => "Admin/Global/CustomFields/Queue-Transactions.html",
- Title => $title
- &>
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, ObjectType => 'RT::Queue', Object=> $object, SubType => 'RT::Ticket-RT::Transaction' &>
-<%INIT>
- my $title = loc( 'Edit Custom Fields for tickets in all queues');
- my $object = RT::Queue->new($session{'CurrentUser'});
-</%INIT>
diff --git a/rt/html/Admin/Global/CustomFields/Users.html b/rt/html/Admin/Global/CustomFields/Users.html
deleted file mode 100644
index 6b79743..0000000
--- a/rt/html/Admin/Global/CustomFields/Users.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GlobalCustomFieldTabs,
- current_tab => "Admin/Global/CustomFields/Users.html",
- current_subtab => "Admin/Global/CustomFields/Users.html",
- Title => $title
- &>
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, ObjectType => 'RT::User', Object=> $object &>
-<%INIT>
- my $title = loc( 'Edit Custom Fields for all users');
- my $object = RT::User->new($session{'CurrentUser'});
-</%INIT>
diff --git a/rt/html/Admin/Global/CustomFields/index.html b/rt/html/Admin/Global/CustomFields/index.html
deleted file mode 100644
index 9cdcfd5..0000000
--- a/rt/html/Admin/Global/CustomFields/index.html
+++ /dev/null
@@ -1,91 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Callback, tabs => $tabs, %ARGS &>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GlobalCustomFieldTabs, Title => $title &>
-
-<ul>
-% foreach my $key (sort keys %$tabs) {
-<li><font size="+2"><a href="<% $tabs->{$key}{path} %>"><% $tabs->{$key}{title} %></a></font><br>
-<% $tabs->{$key}{text} %>
-</li>
-% }
-</ul>
-
-<%INIT>
-my $title = loc("Global custom field configuration");
-
-my $tabs = {
-
- A => {
- title => loc('Users'),
- text => loc('Select custom fields for all users'),
- path => 'Users.html',
- },
- B => {
- title => loc('Groups'),
- text => loc('Select custom fields for all user groups'),
- path => 'Groups.html',
- },
-
- F => {
- title => loc('Tickets'),
- text => loc('Select custom fields for tickets in all queues'),
- path => 'Queue-Tickets.html',
- },
-
- G => {
- title => loc('Ticket Transactions'),
- text =>
- loc('Select custom fields for transactions on tickets in all queues'),
- path => 'Queue-Transactions.html',
- },
-
-};
-
-
-$m->comp('/Elements/Callback', tabs => $tabs);
-</%INIT>
diff --git a/rt/html/Admin/Global/GroupRights.html b/rt/html/Admin/Global/GroupRights.html
deleted file mode 100644
index 8d71432..0000000
--- a/rt/html/Admin/Global/GroupRights.html
+++ /dev/null
@@ -1,121 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify global group rights') &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/GroupRights.html',
- Title => loc('Modify global group rights') &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="GroupRights.html">
-
-<& /Elements/TitleBoxStart, title => loc('Modify global group rights.')&>
-
-<h1><&|/l&>System groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToSystemInternalGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object =>$RT::System &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>Roles</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToRolesForSystem();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $RT::System &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>User defined groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToUserDefinedGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $Group->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $RT::System &>
- </TD>
- </TR>
-% }
-</TABLE>
-
- <& /Elements/TitleBoxEnd &>
- <& /Elements/Submit, Label => loc('Modify Group Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-
-my $Groups;
-
-</%INIT>
-
-<%ARGS>
-</%ARGS>
diff --git a/rt/html/Admin/Global/Scrip.html b/rt/html/Admin/Global/Scrip.html
deleted file mode 100644
index 4e0c1f4..0000000
--- a/rt/html/Admin/Global/Scrip.html
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/Scrips.html',
- current_subtab => $current_subtab,
- subtabs => $subtabs,
- Title => $title &>
-
-<& /Admin/Elements/EditScrip, title => $title, %ARGS &>
-
-<%init>
-my ($title, $current_subtab);
-my $subtabs = {
- A => { title => loc('Select scrip'),
- path => "Admin/Global/Scrips.html",
- },
- B => { title => loc('New scrip'),
- path => "Admin/Global/Scrip.html?create=1&Queue=0",
- separator => 1,
- }
- };
-
-if ($ARGS{'id'}) {
- $current_subtab = "Admin/Global/Scrip.html?id=".$ARGS{'id'}."&Queue=0";
- $title = loc("Modify a scrip which applies to all queues");
- $subtabs->{"C"} = { title => loc('Scrip #[_1]', $ARGS{'id'}),
- path => "Admin/Global/Scrip.html?id=".$ARGS{'id'}."&Queue=0"
- }
-}
-else {
- $current_subtab = "Admin/Global/Scrip.html?create=1&Queue=0";
- $title = loc("Add a scrip which will apply to all queues");
-}
-</%init>
diff --git a/rt/html/Admin/Global/Scrips.html b/rt/html/Admin/Global/Scrips.html
deleted file mode 100644
index dcfa6ff..0000000
--- a/rt/html/Admin/Global/Scrips.html
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/Scrips.html',
- current_subtab => 'Admin/Global/Scrips.html',
- subtabs => $subtabs,
- Title => $title &>
-<& /Admin/Elements/EditScrips, title => $title, id => $id, %ARGS &>
-</form>
-<%init>
-
-my $subtabs = {
- A => { title => loc('Select scrip'),
- path => "Admin/Global/Scrips.html",
- },
- B => { title => loc('New scrip'),
- path => "Admin/Global/Scrip.html?create=1&Queue=0",
- separator => 1,
- }
- };
-my $title = loc("Modify scrips which apply to all queues");
-
-my (@actions);
-
-</%init>
-
-
-
-<%ARGS>
-$id => 0
-</%ARGS>
diff --git a/rt/html/Admin/Global/Template.html b/rt/html/Admin/Global/Template.html
deleted file mode 100644
index 17da59b..0000000
--- a/rt/html/Admin/Global/Template.html
+++ /dev/null
@@ -1,123 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc("Modify template [_1]", $TemplateObj->id) &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/Templates.html',
- current_subtab => $current_subtab,
- subtabs => $subtabs,
- Title => loc("Modify template [_1]", $TemplateObj->id) &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-<FORM METHOD=POST ACTION="Template.html">
-%if ($Create ) {
-<INPUT TYPE=HIDDEN NAME="Template" VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME="Template" VALUE="<%$TemplateObj->Id%>">
-% }
-
-%# hang onto the queue id
-<INPUT TYPE=HIDDEN name="Queue" value="<%$Queue%>">
-
-<& /Admin/Elements/ModifyTemplate, Name => $TemplateObj->Name, Description => $TemplateObj->Description, Content => $TemplateObj->Content &>
-
-<& /Elements/Submit, Label => loc('Save Changes'), Reset => 1 &>
-</FORM>
-
-
-
-<%INIT>
-
-my $TemplateObj = new RT::Template($session{'CurrentUser'});
-my ($title, @results, $current_subtab);
-
-my $subtabs = {
- A => { title => loc('Select template'),
- path => "Admin/Global/Templates.html"
- },
- B => { title => loc('New template'),
- path => "Admin/Global/Template.html?Create=1&Queue=0",
- separator => 1,
- }
- };
-
-
-if ($Create) {
- $current_subtab = "Admin/Global/Template.html?Create=1&Queue=0";
- $title = loc("Create a template");
-}
-
-else {
- if ($Template eq 'new') {
- my ($val, $msg) = $TemplateObj->Create(Queue => $Queue, Name => $Name);
- Abort(loc("Could not create template: [_1]", $msg)) unless ($val);
- push @results, $msg;
- }
- else {
- $TemplateObj->Load($Template) || Abort(loc('No Template'));
- }
- $title = loc('Modify template [_1]', loc($TemplateObj->Name()));
-
-
-}
-if ($TemplateObj->Id()) {
- my @attribs = qw( Description Content Queue Name);
- my @aresults = UpdateRecordObject( AttributesRef => \@attribs,
- Object => $TemplateObj,
- ARGSRef => \%ARGS);
- $current_subtab = "Admin/Global/Template.html?Queue=0&Template=".$TemplateObj->Id();
- $subtabs->{"C"} = { title => loc('Template #[_1]', $TemplateObj->Id()),
- path => "Admin/Global/Template.html?Queue=0&Template=".$TemplateObj->Id(),
- };
- push @results, @aresults;
-}
-</%INIT>
-<%ARGS>
-$Queue => undef
-$Template => undef
-$Create => undef
-$Name => undef
-</%ARGS>
diff --git a/rt/html/Admin/Global/Templates.html b/rt/html/Admin/Global/Templates.html
deleted file mode 100644
index 387326c..0000000
--- a/rt/html/Admin/Global/Templates.html
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title, FeedURI => 'templates' &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/Templates.html',
- current_subtab => 'Admin/Global/Templates.html',
- subtabs => $subtabs,
- Title => $title &>
-<& /Admin/Elements/EditTemplates, title => $title, %ARGS &>
-</form>
-<%init>
-
-my $subtabs = {
- A => { title => loc('Select template'),
- path => "Admin/Global/Templates.html"
- },
- B => { title => loc('New template'),
- path => "Admin/Global/Template.html?Create=1&Queue=0",
- separator => 1,
- }
- };
-my $title = loc("Modify templates which apply to all queues");
-
-my (@actions);
-
-</%init>
-
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Global/UserRights.html b/rt/html/Admin/Global/UserRights.html
deleted file mode 100644
index 14a4de3..0000000
--- a/rt/html/Admin/Global/UserRights.html
+++ /dev/null
@@ -1,99 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify global user rights') &>
-<& /Admin/Elements/SystemTabs,
- current_tab => 'Admin/Global/UserRights.html',
- Title => loc('Modify global user rights') &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="UserRights.html">
-
-<& /Elements/TitleBoxStart, title => loc('Modify global user rights.') &>
-
-<TABLE>
-
-% while (my $Member = $Users->Next()) {
-% my $UserObj = $Member->MemberObj->Object();
-% my $group = RT::Group->new($session{'CurrentUser'});
-% $group->LoadACLEquivalenceGroup($Member->MemberObj);
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $UserObj->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $group->PrincipalId,
- Object => $RT::System &>
- </TD>
- </TR>
-% }
-</TABLE>
-
- <& /Elements/TitleBoxEnd &>
- <& /Elements/Submit, Label => loc('Modify User Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-# {{{ Deal with setting up the display of current rights.
-
-
-# Find out which users we want to display ACL selects for
-my $Privileged = RT::Group->new($session{'CurrentUser'});
-$Privileged->LoadSystemInternalGroup('Privileged');
-my $Users = $Privileged->MembersObj();
-
-
-
-# }}}
-
-</%INIT>
-
-<%ARGS>
-</%ARGS>
diff --git a/rt/html/Admin/Global/index.html b/rt/html/Admin/Global/index.html
deleted file mode 100644
index af7a9dd..0000000
--- a/rt/html/Admin/Global/index.html
+++ /dev/null
@@ -1,86 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Callback, tabs => $tabs, %ARGS &>
-<& /Admin/Elements/Header, Title => loc('Admin/Global configuration') &>
-<& /Admin/Elements/SystemTabs,
- Title => loc('Admin/Global configuration') &>
-
-<ul>
-% foreach my $key (sort keys %$tabs) {
-<li><font size="+2"><a href="<% $tabs->{$key}{path} %>"><% $tabs->{$key}{title} %></a></font><br>
-<% $tabs->{$key}{text} %>
-</li>
-% }
-</ul>
-
-<%INIT>
- my $tabs = {
-
- A => { title => loc('Scrips'),
- text => loc('Modify scrips which apply to all queues'),
- path => 'Scrips.html',
- },
- B => { title => loc('Templates'),
- text => loc('Edit system templates'),
- path => 'Templates.html',
- },
-
- F => { title => loc('Custom Fields'),
- text => loc('Modify global custom fields'),
- path => 'CustomFields/index.html',
- },
-
- G => { title => loc('Group Rights'),
- text => loc('Modify global group rights'),
- path => 'GroupRights.html',
- },
- H => { title => loc('User Rights'),
- text => loc('Modify global user rights'),
- path => 'UserRights.html',
- }
-
-};
-</%INIT>
diff --git a/rt/html/Admin/Groups/CustomFields.html b/rt/html/Admin/Groups/CustomFields.html
deleted file mode 100644
index c2336b0..0000000
--- a/rt/html/Admin/Groups/CustomFields.html
+++ /dev/null
@@ -1,46 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/ObjectCustomFields, %ARGS, ObjectType => 'RT::Group' &>
diff --git a/rt/html/Admin/Groups/GroupRights.html b/rt/html/Admin/Groups/GroupRights.html
deleted file mode 100644
index d95bdae..0000000
--- a/rt/html/Admin/Groups/GroupRights.html
+++ /dev/null
@@ -1,117 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify group rights for group [_1]', $GroupObj->Name) &>
-<& /Admin/Elements/GroupTabs,
- GroupObj => $GroupObj,
- current_tab => 'Admin/Groups/GroupRights.html?id='.$id,
- Title => loc('Modify group rights for group [_1]', $GroupObj->Name) &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="GroupRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $GroupObj->id %>">
-
-<& /Elements/TitleBoxStart, title => loc('Modify group rights for group [_1]', $GroupObj->Name) &>
-
-<h1><&|/l&>System groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToSystemInternalGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- PrincipalType => 'Group',
- Object => $GroupObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>User defined groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToUserDefinedGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $Group->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- PrincipalType => 'Group',
- Object => $GroupObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-
- <& /Elements/TitleBoxEnd &>
- <& /Elements/Submit, Label => loc('Modify Group Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-
-if (!defined $id) {
- Abort(loc("No Group defined"));
-}
-
-my $GroupObj = RT::Group->new($session{'CurrentUser'});
-$GroupObj->Load($id) || Abort(loc("Couldn't load group [_1]",$id));
-
-my $Groups;
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Groups/History.html b/rt/html/Admin/Groups/History.html
deleted file mode 100644
index 40dab46..0000000
--- a/rt/html/Admin/Groups/History.html
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GroupTabs,
- id => $id,
- GroupObj => $GroupObj,
- current_subtab => $current_tab,
- Title => $title &>
-
-<& /Ticket/Elements/ShowHistory,
- Ticket => $GroupObj,
- ShowHeaderModes => 0,
-&>
-
-<%INIT>
-my $current_tab = 'Admin/Groups/History.html?id='.$id;
-my $GroupObj = new RT::Group($session{'CurrentUser'});
-$GroupObj->Load($id) || Abort("Couldn't load group '$id'");
-my $title = loc("History of the group [_1]", $GroupObj->Name);
-</%INIT>
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Groups/Members.html b/rt/html/Admin/Groups/Members.html
deleted file mode 100644
index fd25b2d..0000000
--- a/rt/html/Admin/Groups/Members.html
+++ /dev/null
@@ -1,156 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => "RT/Admin/Edit the group ". $Group->Name &>
-<& /Admin/Elements/GroupTabs, GroupObj => $Group,
- current_tab => 'Admin/Groups/Members.html?id='.$id,
- Title => "RT/Admin/Edit the group ". $Group->Name &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-<& /Elements/TitleBoxStart, title => loc('Editing membership for group [_1]', $Group->Name) &>
-
-<FORM ACTION="<%$RT::WebPath%>/Admin/Groups/Members.html" METHOD=POST>
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Group->Id%>">
-<TABLE WIDTH="100%">
-<TR>
-<TD>
-<h3><&|/l&>Current members</&></h3>
-</TD>
-<TD>
-<h3><&|/l&>Add members</&></h3>
-</TD>
-</TR>
-
-<TR>
-<TD VALIGN=TOP>
-
-% if ($Group->MembersObj->Count == 0 ) {
-<i><&|/l&>(No members)</&></i>
-% } else {
-<i><&|/l&>(Check box to delete)</&></i>
-<br>
-<br>
-<&|/l&>Users</&>
-% my $UserMembers = $Group->MembersObj;
-% $UserMembers->LimitToUsers();
-<UL>
-% while (my $member = $UserMembers->Next()) {
-<LI><INPUT TYPE=CHECKBOX Name="DeleteMember-<%$member->MemberId%>" value="1">
-<%$member->MemberObj->Object->Name%> (<%$member->MemberObj->Object->RealName%>)
-% }
-</ul>
-<&|/l&>Groups</&>
-<ul>
-% my $GroupMembers = $Group->MembersObj;
-% $GroupMembers->LimitToGroups();
-% while (my $member = $GroupMembers->Next()) {
-<LI><INPUT TYPE=CHECKBOX Name="DeleteMember-<%$member->MemberId%>" value="1">
-<%$member->MemberObj->Object->Name%>
-% }
-% }
-</UL>
-</TD>
-<TD VALIGN=TOP>
-<& /Admin/Elements/SelectNewGroupMembers, Name => "AddMembers", Group => $Group &>
-</TD>
-</TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, Label => loc('Modify Members'), Reset => 1 &>
-</form>
-
-
-<%INIT>
-
-my $Group = new RT::Group($session{'CurrentUser'});
-$Group->Load($id) || Abort(loc('Could not load group'));
-
-my (@results);
-
-my $key;
-foreach $key (keys %ARGS) {
-
-if ($key =~ /^DeleteMember-(\d+)$/) {
- my $id = $1;
- my ($val,$msg) = $Group->DeleteMember($id);
- push (@results, $msg);
-}
-}
-
-# Make sure AddMembers is always an array
-my @AddMembers = (
- ((ref $AddMembersUsers eq 'ARRAY') ? @{$AddMembersUsers} : ($AddMembersUsers)),
- ((ref $AddMembersGroups eq 'ARRAY') ? @{$AddMembersGroups} : ($AddMembersGroups)),
-);
-
-foreach my $member (@AddMembers) {
- next unless ($member);
-
- my $principal;
-
- if ($member =~ /^Group-(\d+)$/) {
- $principal = RT::Group->new($session{'CurrentUser'});
- $principal->Load($1);
- } elsif ($member =~ /^User-(\d+)$/) {
- $principal = RT::User->new($session{'CurrentUser'});
- $principal->Load($1);
- } else {
- next;
- }
-
-
- my ($val, $msg) = $Group->AddMember($principal->PrincipalId);
- push (@results, $msg);
-}
-
-
-</%INIT>
-
-<%ARGS>
-$AddMembersUsers => undef
-$AddMembersGroups => undef
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Groups/Modify.html b/rt/html/Admin/Groups/Modify.html
deleted file mode 100644
index 94c0203..0000000
--- a/rt/html/Admin/Groups/Modify.html
+++ /dev/null
@@ -1,168 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-
-<& /Admin/Elements/GroupTabs,
- GroupObj => $Group,
- current_tab => $current_tab,
- Title => $title &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-
-<FORM ACTION="<%$RT::WebPath%>/Admin/Groups/Modify.html" METHOD=POST ENCTYPE="multipart/form-data">
-
-%unless ($Group->Id) {
-<INPUT TYPE=HIDDEN NAME=id VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Group->Id%>">
-% }
-<TABLE>
-<TR><TD ALIGN=RIGHT>
-<&|/l&>Name</&>:
-</TD>
-<TD><INPUT name="Name" value="<%$Group->Name%>"></TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Description</&>:</TD><TD COLSPAN=3><INPUT name="Description" value="<%$Group->Description%>" size=60></TD>
-</TR>
-% my $CFs = $Group->CustomFields;
-% while (my $CF = $CFs->Next) {
-<TR VALIGN="TOP"><TD ALIGN="RIGHT">
-<% $CF->Name %>:
-</TD><TD>
-<& /Elements/EditCustomField, CustomField => $CF, Object => $Group &>
-</TD></TR>
-% }
-<TR>
-<TD COLSPAN=2>
-<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this group)</&><BR>
-</TR>
-<& /Elements/Callback, GroupObj => $Group, results => \@results, %ARGS &>
-</TABLE>
-<& /Elements/Submit, Label => loc('Save Changes'), Reset => 1 &>
-</form>
-<%INIT>
-
-my $current_tab;
-my ($title, @results, $Disabled, $EnabledChecked);
-
-my $Group = RT::Group->new($session{'CurrentUser'});
-
-if ($Create) {
- $current_tab = 'Admin/Groups/Modify.html?Create=1';
- $title = loc("Create a new group");
-}
-
-else {
- $current_tab = 'Admin/Groups/Modify.html?id='.$id;
- if ($id eq 'new' ) {
-
- my ($create_id, $create_msg) = $Group->CreateUserDefinedGroup(Name =>
- "$Name");
- unless ($create_id) {
- Abort (loc("Group could not be created: [_1]", $create_msg));
- }
- $id = $Group->Id;
- }
- else {
- $Group->Load($id) || Abort('Could not load group');
- }
-
-
- if ($id) {
- $title = loc("Modify the group [_1]", $Group->Name);
-
- }
-
- # If the create failed
- else {
- $title = loc("Create a new group");
- $Create = 1;
- }
-
-}
-
-if ($id) {
-
- my @fields = qw(Description Name );
- my @fieldresults = UpdateRecordObject ( AttributesRef => \@fields,
- Object => $Group,
- ARGSRef => \%ARGS );
- push (@results,@fieldresults);
- push @results, ProcessObjectCustomFieldUpdates( ARGSRef => \%ARGS, Object => $Group );
-}
-
-#we're asking about enabled on the web page but really care about disabled.
-if ($Enabled == 1) {
- $Disabled = 0;
-}
-else {
- $Disabled = 1;
-}
-if ( ($SetEnabled) and ( $Disabled != $Group->Disabled) ) {
- my ($code, $msg) = $Group->SetDisabled($Disabled);
- push @results, loc('Enabled status [_1]', loc_fuzzy($msg));
-}
-
-unless ($Group->Disabled()) {
- $EnabledChecked ="CHECKED";
-}
-
-
-</%INIT>
-
-
-<%ARGS>
-$Create => undef
-$Name => undef
-$Description => undef
-$SetEnabled => undef
-$Enabled => undef
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Groups/UserRights.html b/rt/html/Admin/Groups/UserRights.html
deleted file mode 100644
index 5237b15..0000000
--- a/rt/html/Admin/Groups/UserRights.html
+++ /dev/null
@@ -1,114 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify user rights for group [_1]', $GroupObj->Name) &>
-<& /Admin/Elements/GroupTabs,
- GroupObj => $GroupObj,
- current_tab => 'Admin/Groups/UserRights.html?id='.$id,
- Title => loc('Modify user rights for group [_1]', $GroupObj->Name) &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="UserRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $GroupObj->id %>">
-
-<& /Elements/TitleBoxStart, title => loc('Modify user rights for group [_1]', $GroupObj->Name) &>
-
-<TABLE>
-
-% while (my $Member = $Users->Next()) {
-% my $UserObj = $Member->MemberObj->Object();
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $UserObj->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Member->MemberObj->Id,
- PrincipalType => 'User',
- Object => $GroupObj &>
- </TD>
- </TR>
-% }
- </TABLE>
-
- <& /Elements/TitleBoxEnd &>
- <& /Elements/Submit, Label => loc('Modify User Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-# {{{ Deal with setting up the display of current rights.
-
-
-#Define vars used in html above
-
-
-if (!defined $id) {
- Abort(loc("No Group defined"));
-}
-
-my $GroupObj = RT::Group->new($session{'CurrentUser'});
-$GroupObj->Load($id) || Abort(loc("Couldn't load group [_1]",$id));
-
-# Find out which users we want to display ACL selects for
-my $Privileged = RT::Group->new($session{'CurrentUser'});
-$Privileged->LoadSystemInternalGroup('Privileged');
-my $Users = $Privileged->MembersObj();
-
-
-
-# }}}
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-$UserString => undef
-$UserOp => undef
-$UserField => undef
-</%ARGS>
diff --git a/rt/html/Admin/Groups/index.html b/rt/html/Admin/Groups/index.html
deleted file mode 100644
index 0734406..0000000
--- a/rt/html/Admin/Groups/index.html
+++ /dev/null
@@ -1,107 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/GroupTabs, current_tab => 'Admin/Groups/',
- current_subtab => 'Admin/Groups/',
- Title => $title &>
-<%$caption%>:<BR> <UL>
-%if ($Groups->Count == 0) {
-<LI> <i><&|/l&>No groups matching search criteria found.</&></i>
-% }
-%my @ids;
-%while ( my $Group = $Groups->Next) {
-% push @ids, $Group->Id;
-<LI><A HREF="Modify.html?id=<%$Group->id%>"><%$Group->Name || loc('(empty)')%></a><BR>
-%}
-</UL>
-%if (my $ids = join(',', @ids)) {
-<em>(<a href="<%$RT::WebPath%>/Download/Tabular/Group/<% $ids %>/Groups.tsv"><&|/l&>Download as a tab-delimited file</&></a>)</em><br>
-%}
-<br><br>
-<FORM METHOD=POST ACTION="<% $RT::WebPath %>/Admin/Groups/index.html">
-<input type="checkbox" name="FindDisabledGroups" value="1"> <&|/l&>Include disabled groups in listing.</&>
-<BR>
-<div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
-</FORM>
-
-<br><br>
-<FORM METHOD=POST ACTION="<% $RT::WebPath %>/Admin/Groups/index.html">
-<&|/l&>Find groups whose</&> <& /Elements/SelectGroups &><BR>
-<div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
-</FORM>
-<%INIT>
-my $Groups = RT::Groups->new($session{'CurrentUser'});
-$Groups->LimitToUserDefinedGroups();
-my $title = loc('Select a group');
-my $caption;
-
-if (length $GroupString) {
- $caption = loc("Groups matching search criteria");
- if ($GroupField =~ /^CustomField-(\d+)/) {
- $Groups->LimitCustomField(
- CUSTOMFIELD => $1,
- OPERATOR => $GroupOp,
- VALUE => $GroupString,
- );
- }
- else {
- $Groups->Limit(
- FIELD => $GroupField,
- OPERATOR => $GroupOp,
- VALUE => $GroupString,
- );
- }
-}
-else {
- $caption = loc("User-defined groups");
-}
-</%INIT>
-<%ARGS>
-$GroupString => undef
-$GroupOp => '='
-$GroupField => 'Name'
-$FindDisabledGroups => 0
-</%ARGS>
diff --git a/rt/html/Admin/Queues/CustomField.html b/rt/html/Admin/Queues/CustomField.html
deleted file mode 100644
index 5beba58..0000000
--- a/rt/html/Admin/Queues/CustomField.html
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $QueueObj->Id,
- QueueObj => $QueueObj,
- current_tab => 'Admin/Queues/CustomFields.html?id='.$QueueObj->id,
- current_subtab => $current_subtab,
- subtabs => $subtabs,
- Title => $title &>
-
-<& /Admin/Elements/EditCustomField, title => $title, %ARGS &>
-
-<%INIT>
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($Queue);
-
-my ($title, $current_subtab);
-
-unless($QueueObj->id) {
- Abort(loc("Queue [_1] not found", $Queue));
-}
-if ($CustomField) {
- $title = loc('Modify a CustomField for queue [_1]', $QueueObj->Name());
-}else {
- $current_subtab = "Admin/Queues/CustomField.html?create=1&Queue=".$QueueObj->id;
- $title = loc('Create a CustomField for queue [_1]', $QueueObj->Name());
-}
-
-my $subtabs = {
- A => { title => loc('New custom field'),
- path => "Admin/Queues/CustomField.html?create=1&Queue=".$QueueObj->id
- }
- };
-
-</%INIT>
-<%ARGS>
-$CustomField => undef
-$Queue => 0
-</%ARGS>
-<%ATTR>
-AutoFlush => 0
-</%ATTR>
diff --git a/rt/html/Admin/Queues/CustomFields.html b/rt/html/Admin/Queues/CustomFields.html
deleted file mode 100644
index 4d7e088..0000000
--- a/rt/html/Admin/Queues/CustomFields.html
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs,
- id => $Object->id,
- current_tab => "Admin/Queues/CustomFields.html?SubType=$SubType&id=$id",
- current_subtab => "Admin/Queues/CustomFields.html?SubType=$SubType&id=$id",
- QueueObj => $Object,
- Title => $title
- &>
-
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, Object => $Object, ObjectType => 'RT::Queue' &>
-<%INIT>
-my $Object = RT::Queue->new( $session{'CurrentUser'} );
-
-$Object->Load($id) || Abort( loc( "Couldn't load object [_1]", $id ) );
-my $FriendlySubTypes =
- RT::CustomField->new( $session{'CurrentUser'} )
- ->FriendlyLookupType( $Object->CustomFieldLookupType );
-
-my $title = loc( 'Edit Custom Fields for [_1]', $Object->Name );
-
-</%INIT>
-<%ARGS>
-$id => undef
-$SubType => 'RT::Queue-RT::Ticket'
-</%ARGS>
diff --git a/rt/html/Admin/Queues/GroupRights.html b/rt/html/Admin/Queues/GroupRights.html
deleted file mode 100644
index c5a12bf..0000000
--- a/rt/html/Admin/Queues/GroupRights.html
+++ /dev/null
@@ -1,132 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify group rights for queue [_1]', $QueueObj->Name) &>
-<& /Admin/Elements/QueueTabs, id => $id,
- QueueObj => $QueueObj,
- current_tab => $current_tab,
- Title => loc('Modify group rights for queue [_1]', $QueueObj->Name) &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="GroupRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $QueueObj->id %>">
-
-
-<h1><&|/l&>System groups</&></h1>
-<TABLE>
-<& /Elements/Callback, QueueObj => $QueueObj, results => \@results, %ARGS &>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToSystemInternalGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $QueueObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>Roles</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToRolesForQueue($QueueObj->Id);
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% loc($Group->Type) %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $QueueObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-<h1><&|/l&>User defined groups</&></h1>
-<TABLE>
-% $Groups = RT::Groups->new($session{'CurrentUser'});
-% $Groups->LimitToUserDefinedGroups();
-% while (my $Group = $Groups->Next()) {
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $Group->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId => $Group->PrincipalId,
- Object => $QueueObj &>
- </TD>
- </TR>
-% }
-</TABLE>
-
- <& /Elements/Submit, Label => loc('Modify Group Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-
-if (!defined $id) {
- Abort(loc("No Queue defined"));
-}
-
-my $QueueObj = RT::Queue->new($session{'CurrentUser'});
-$QueueObj->Load($id) || Abort(loc("Couldn't load queue [_1]",$id));
-
-my $Groups;
-my $current_tab;
-$current_tab = 'Admin/Queues/GroupRights.html?id='.$QueueObj->id;
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Queues/Modify.html b/rt/html/Admin/Queues/Modify.html
deleted file mode 100644
index 5517a80..0000000
--- a/rt/html/Admin/Queues/Modify.html
+++ /dev/null
@@ -1,191 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $QueueObj->id,
- QueueObj => $QueueObj,
- current_tab => $current_tab,
- Title => $title &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-
-<FORM ACTION="<%$RT::WebPath%>/Admin/Queues/Modify.html" METHOD=POST>
-%if ($Create ) {
-<INPUT TYPE=HIDDEN NAME=id VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$QueueObj->Id%>">
-% }
-
-<TABLE>
-<TR><TD ALIGN=RIGHT>
-<&|/l&>Queue Name</&>:
-</TD>
-<TD><INPUT name="Name" value="<% ($Create) ? "" : $QueueObj->Name %>"></TD>
-</TR><TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Description</&>:</TD><TD COLSPAN=3><INPUT name="Description" value="<% ($Create) ? "" : $QueueObj->Description %>" size=60></TD></TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Reply Address</&>:
-</TD><TD>
-<INPUT name="CorrespondAddress" value="<% ($Create) ? "" : $QueueObj->CorrespondAddress %>">
-<BR><font size="-1"><i><&|/l , $RT::CorrespondAddress&>(If left blank, will default to [_1])</&></i></font>
-</TD>
-<TD ALIGN=RIGHT>
-
-<&|/l&>Comment Address</&>: </TD><TD>
-<INPUT NAME="CommentAddress" value="<% ($Create) ? "" : $QueueObj->CommentAddress %>">
-<BR><font size="-1"><i><&|/l , $RT::CommentAddress&>(If left blank, will default to [_1])</&></i></font>
-</TD>
-</TR><TR>
-
-<TD ALIGN=RIGHT>
-<&|/l&>Priority starts at</&>:
-</TD><TD><INPUT NAME="InitialPriority" value="<% ($Create) ? "" : $QueueObj->InitialPriority %>">
-</TD>
-<TD ALIGN=RIGHT>
-<&|/l&>Over time, priority moves toward</&>:
-</TD><TD><INPUT NAME="FinalPriority" value="<% ($Create) ? "" : $QueueObj->FinalPriority %>">
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Requests should be due in</&>:
-</TD><TD>
-<INPUT NAME="DefaultDueIn" VALUE="<% ($Create) ? "" : $QueueObj->DefaultDueIn%>"> <&|/l&>days</&>.
-</TD>
-</TR>
-<TR>
-<TD>
-</TD>
-<TD COLSPAN=4><INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this queue)</&><BR>
-<& /Elements/Callback, QueueObj => $QueueObj, results => \@results, %ARGS &>
-</TD>
-</TR>
-
-</TABLE>
-<& /Elements/Submit, Label => loc('Save Changes') &>
-</form>
-
-
-
-<%INIT>
-my $current_tab;
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($id);
-my ($title, @results, $Disabled, $EnabledChecked);
-$EnabledChecked = "CHECKED";
-
-if ($Create) {
- $current_tab = 'Admin/Queues/Modify.html?Create=1';
- $title = loc("Create a queue");
-} else {
- if ($id eq 'new') {
- my ($val, $msg) = $QueueObj->Create(Name => $Name);
- delete $session{'create_in_queues'};
- if ($val == 0 ) {
- Abort("$msg");
- }
- else {
- push @results, $msg;
- }
- }
- else {
- $QueueObj->Load($id) || $QueueObj->Load($Name) || Abort("Couldn't load queue '$Name'");
- }
- $title = loc('Editing Configuration for queue [_1]', $QueueObj->Name);
-
- $current_tab = 'Admin/Queues/Modify.html?id='.$QueueObj->id;
-}
-if ($QueueObj->Id()) {
- delete $session{'create_in_queues'};
-my @attribs= qw(Description CorrespondAddress CommentAddress Name
- InitialPriority FinalPriority DefaultDueIn);
-
- @results = UpdateRecordObject( AttributesRef => \@attribs,
- Object => $QueueObj,
- ARGSRef => \%ARGS);
-
- #we're asking about enabled on the web page but really care about disabled.
- if ($Enabled == 1) {
- $Disabled = 0;
- }
- else {
- $Disabled = 1;
- }
- if ( ($SetEnabled) and ( $Disabled != $QueueObj->Disabled) ) {
- my ($code, $msg) = $QueueObj->SetDisabled($Disabled);
- push @results, loc('Enabled status: [_1]', loc_fuzzy($msg));
- }
-
- if ($QueueObj->Disabled()) {
- $EnabledChecked ="";
- }
-
- my @linkresults;
- $m->comp('/Elements/Callback', results => \@linkresults,
- RecordObj => $QueueObj, ARGSRef => \%ARGS,
- _CallbackName => 'ProcessLinks');
- push @results, @linkresults;
-}
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-$result => undef
-$Name => undef
-$Create => undef
-$Description => undef
-$CorrespondAddress => undef
-$CommentAddress => undef
-$InitialPriority => undef
-$FinalPriority => undef
-$DefaultDueIn => undef
-$SetEnabled => undef
-$Enabled => undef
-</%ARGS>
diff --git a/rt/html/Admin/Queues/People.html b/rt/html/Admin/Queues/People.html
deleted file mode 100644
index e29b9d3..0000000
--- a/rt/html/Admin/Queues/People.html
+++ /dev/null
@@ -1,208 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc('Modify people related to queue [_1]', $QueueObj->Name) &>
-<& /Admin/Elements/QueueTabs, id => $id,
- QueueObj => $QueueObj,
- current_tab => $current_tab,
- Title => loc('Modify people related to queue [_1]', $QueueObj->Name) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-
-<FORM METHOD=POST ACTION="People.html">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$QueueObj->Id%>">
-
-<TABLE WIDTH=100%>
-<TR>
-<TD VALIGN=TOP >
-
-<h3><&|/l&>Current watchers</&></h3>
-
-
-<&|/l&>Cc</&>:
-
-<& /Admin/Elements/EditQueueWatchers, QueueObj => $QueueObj, Watchers => $QueueObj->Cc &>
-
-<&|/l&>Administrative Cc</&>:
-
-<& /Admin/Elements/EditQueueWatchers, QueueObj => $QueueObj, Watchers => $QueueObj->AdminCc &>
-
-
-</TD>
-<TD VALIGN=TOP>
-<h3><&|/l&>New watchers</&></h3>
-
-<&|/l&>Find people whose</&><BR>
-<& /Elements/SelectUsers &>
-<input type=submit name="OnlySearchForPeople" value="<&|/l&>Go!</&>">
-<BR>
-<&|/l&>Find groups whose</&><BR>
-<& /Elements/SelectGroups &>
-<input type=submit name="OnlySearchForGroup" value="<&|/l&>Go!</&>">
-
-<p>
-<&|/l&>Add new watchers</&>:<br>
-<p>
-<b><&|/l&>Users</&></b>
-% if ($user_msg) {
-<br>
-<i><%$user_msg%></i>
-% } elsif ($Users) {
-<ul>
-% while (my $u = $Users->Next ) {
-<li><&/Elements/SelectWatcherType, Scope=>'queue', Name =>
-"Queue-AddWatcher-Principal-".$u->PrincipalId &> <%$u->Name%>
-(<%$u->RealName%>)
-% }
-</ul>
-% }
-
-<p>
-<b><&|/l&>Groups</&></b>
-
-% if ($group_msg) {
-<br>
-<i><%$group_msg%></i>
-% } elsif ($Groups) {
-<ul>
-% while (my $g = $Groups->Next ) {
-<li><&/Elements/SelectWatcherType, Scope=>'queue', Name =>
-"Queue-AddWatcher-Principal-".$g->PrincipalId &> <%$g->Name%>
-(<%$g->Description%>)
-% }
-</ul>
-% }
-
-</TD>
-</TR>
-</TABLE>
-
-
-
-
-<& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), Reset => 1 &>
-</form>
-
-<%INIT>
-
-my $current_tab;
-my ($field, @results, $User, $Users, $Groups, $watcher, $user_msg, $group_msg);
-
-# {{{ Load the queue
-#If we get handed two ids, mason will make them an array. bleck.
-# We want teh first one. Just because there's no other sensible way
-# to deal
-
-
-
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($id) || Abort(loc("Couldn't load queue", $id));
-# }}}
-
-# {{{ Delete deletable watchers
-
-foreach my $key (keys %ARGS) {
- my $id = $QueueObj->Id;
-
- if (($key =~ /^Queue-$id-DeleteWatcher-Type-(.*?)-Principal-(\d*)$/)) {;
- my ($code, $msg) = $QueueObj->DeleteWatcher(Type => $1,
- PrincipalId => $2);
- push @results, $msg;
- }
-}
-# }}}
-
-# {{{ Add new watchers
-foreach my $key (keys %ARGS) {
- #They're in this order because otherwise $1 gets clobbered :/
- if ( ($ARGS{$key} =~ /^(AdminCc|Cc)$/) and
- ($key =~ /^Queue-AddWatcher-Principal-(\d*)$/) ) {
- $RT::Logger->debug("Adding a watcher $1 to ".$ARGS{$key}."\n");
- my ($code, $msg) = $QueueObj->AddWatcher(Type => $ARGS{$key},
- PrincipalId => $1);
- push @results, $msg;
- }
-}
-
-# }}}
-
-
-
-if (!length $ARGS{'UserString'}) {
-$user_msg = loc("No principals selected.");
- }
-else {
- $Users = new RT::Users($session{'CurrentUser'});
- $Users->Limit(FIELD => $ARGS{'UserField'},
- VALUE => $ARGS{'UserString'},
- OPERATOR => $ARGS{'UserOp'});
- }
-
-if (!length $ARGS{'GroupString'}) {
-$group_msg = loc("No principals selected.");
- }
-else {
-$Groups = new RT::Groups($session{'CurrentUser'});
-$Groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined');
-$Groups->Limit(FIELD => $ARGS{'GroupField'},
- VALUE => $ARGS{'GroupString'},
- OPERATOR => $ARGS{'GroupOp'});
- }
-
-$current_tab = 'Admin/Queues/People.html?id='.$QueueObj->id;
-</%INIT>
-
-<%ARGS>
-$UserField => 'Name'
-$UserOp => '='
-$UserString => undef
-$GroupField => 'Name'
-$GroupOp => '='
-$GroupString => undef
-$Type => undef
-$id => undef
-</%ARGS>
-
diff --git a/rt/html/Admin/Queues/Scrip.html b/rt/html/Admin/Queues/Scrip.html
deleted file mode 100644
index 1223fbf..0000000
--- a/rt/html/Admin/Queues/Scrip.html
+++ /dev/null
@@ -1,89 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $QueueObj->Id,
- QueueObj => $QueueObj,
- current_tab => 'Admin/Queues/Scrips.html?id='.$QueueObj->id,
- current_subtab => $current_subtab,
- subtabs => $subtabs,
- Title => $title &>
-
-<& /Admin/Elements/EditScrip, title => $title, %ARGS &>
-<%init>
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($Queue);
-
-my ($title, $current_subtab);
-my $subtabs = {
- A => { title => loc('Select scrip'),
- path => "Admin/Queues/Scrips.html?id=".$QueueObj->id,
- },
- B => { title => loc('New scrip'),
- path => "Admin/Queues/Scrip.html?create=1&Queue=".$QueueObj->id,
- separator => 1,
- },
- };
-
-unless($QueueObj->id) {
- Abort(loc("Queue [_1] not found",$id));
-}
-if ($id) {
- $current_subtab = "Admin/Queues/Scrip.html?id=".$id."&Queue=".$QueueObj->id;
- $title = loc("Modify a scrip for queue [_1]", $QueueObj->Name);
- $subtabs->{"C"} = { title => loc("Scrip #[_1]",$id),
- path => "Admin/Queues/Scrip.html?id=$id&Queue=".$QueueObj->id };
-} else {
- $current_subtab = "Admin/Queues/Scrip.html?create=1&Queue=".$QueueObj->id;
- $title = loc("Create a scrip for queue [_1]", $QueueObj->Name);
-}
-
-
-</%init>
-
-<%ARGS>
-$id => undef
-$Queue => undef
-</%ARGS>
diff --git a/rt/html/Admin/Queues/Scrips.html b/rt/html/Admin/Queues/Scrips.html
deleted file mode 100644
index e7092fb..0000000
--- a/rt/html/Admin/Queues/Scrips.html
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $QueueObj->id,
- QueueObj => $QueueObj,
- current_tab => 'Admin/Queues/Scrips.html?id='.$id,
- current_subtab => 'Admin/Queues/Scrips.html?id='.$id,
- subtabs => $subtabs,
- Title => $title &>
-
-% if (!$QueueObj->Disabled) { # Global scrips does not apply to disabled queues
-<h2><&|/l&>Scrips which apply to all queues</&></h2>
-<& /Admin/Elements/ListGlobalScrips &>
-<BR>
-% }
-<& /Admin/Elements/EditScrips, title => $title, %ARGS &>
-<%init>
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($id);
-
-my $title;
-
-if ($QueueObj->id) {
- $title = loc("Modify scrips for queue [_1]", $QueueObj->Name);
-} else {
- Abort(loc("Queue [_1] not found",$id));
-}
-
-my $subtabs = {
- A => { title => loc('Select scrip'),
- path => "Admin/Queues/Scrips.html?id=".$id,
- },
- B => { title => loc('New scrip'),
- path => "Admin/Queues/Scrip.html?create=1&Queue=".$id,
- separator => 1,
- }
- };
-</%init>
-
-<%ARGS>
-$id => undef #some identifier that a Queue could
-</%ARGS>
diff --git a/rt/html/Admin/Queues/Template.html b/rt/html/Admin/Queues/Template.html
deleted file mode 100644
index c60a909..0000000
--- a/rt/html/Admin/Queues/Template.html
+++ /dev/null
@@ -1,128 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $Queue,
- QueueObj => $QueueObj,
- current_tab => 'Admin/Queues/Templates.html?id='.$Queue,
- current_subtab => $current_subtab,
- subtabs => $subtabs,
- Title => $title &>
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM METHOD=POST ACTION="Template.html">
-%if ($Create ) {
-<INPUT TYPE=HIDDEN NAME="Template" VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME="Template" VALUE="<%$TemplateObj->Id%>">
-% }
-
-%# hang onto the queue id
-<INPUT TYPE=HIDDEN name="Queue" value="<%$Queue%>">
-<& /Admin/Elements/ModifyTemplate, Name => $TemplateObj->Name, Description =>
-$TemplateObj->Description, Content => $TemplateObj->Content &>
-<& /Elements/Submit, Label => loc('Create'), Reset => 1 &>
-</FORM>
-
-
-<%INIT>
-
-my $TemplateObj = new RT::Template($session{'CurrentUser'});
-my ($title, @results, $current_subtab);
-
-my $subtabs = {
- A => { title => loc('Select template'),
- path => "Admin/Queues/Templates.html?id=$Queue"
- },
- B => { title => loc('New template'),
- path => "Admin/Queues/Template.html?Create=1&Queue=$Queue",
- separator => 1,
- }
- };
-
-if ($Create) {
- $title = loc("Create a template");
- $current_subtab = "Admin/Queues/Template.html?Create=1&Queue=".$Queue;
-}
-
-else {
- if ($Template eq 'new') {
- my ($val, $msg) = $TemplateObj->Create(Queue => $Queue, Name => $Name);
- Abort(loc("Could not create template: [_1]", $msg)) unless ($val);
- push @results, $msg;
- }
- else {
- $TemplateObj->Load($Template) || Abort(loc('No Template'));
- }
- $title = loc('Modify template [_1]', loc($TemplateObj->Name()));
-
-
-}
-my $QueueObj;
-if ($TemplateObj->Id()) {
- $Queue = $TemplateObj->Queue;
- $QueueObj = $TemplateObj->QueueObj;
-
- my @attribs = qw( Description Content Queue Name);
- my @aresults = UpdateRecordObject( AttributesRef => \@attribs,
- Object => $TemplateObj,
- ARGSRef => \%ARGS);
- $current_subtab = "Admin/Queues/Template.html?Queue=$Queue&Template=".$TemplateObj->Id();
- $subtabs->{"C"} = { title => loc('Template #[_1]', $TemplateObj->Id()),
- path => "Admin/Queues/Template.html?Queue=$Queue&Template=".$TemplateObj->Id(),
- };
- push @results, @aresults;
-} else {
- $QueueObj = RT::Queue->new($session{'CurrentUser'});
- $QueueObj->Load($Queue);
-}
-
-</%INIT>
-<%ARGS>
-$Queue => undef
-$Template => undef
-$Create => undef
-$Name => undef
-</%ARGS>
diff --git a/rt/html/Admin/Queues/Templates.html b/rt/html/Admin/Queues/Templates.html
deleted file mode 100644
index 888fdbc..0000000
--- a/rt/html/Admin/Queues/Templates.html
+++ /dev/null
@@ -1,79 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/QueueTabs, id => $QueueObj->id,
- current_tab => 'Admin/Queues/Templates.html?id='.$id,
- current_subtab => 'Admin/Queues/Templates.html?id='.$id,
- QueueObj => $QueueObj,
- subtabs => $subtabs,
- Title => $title &>
-
-<& /Admin/Elements/EditTemplates, title => $title, %ARGS &>
-
-<%INIT>
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($id);
-
-my ($title, $current_subtab);
-
-if ($QueueObj->id) {
- $title = loc("Edit Templates for queue [_1]", $QueueObj->Name);
-} else {
- Abort(loc("Queue [_1] not found",$id));
-}
-my $subtabs = {
- A => { title => loc('Select template'),
- path => "Admin/Queues/Templates.html?id=".$id,
- },
- B => { title => loc('New template'),
- path => "Admin/Queues/Template.html?Create=1&Queue=".$id,
- }
- };
-
-</%INIT>
-<%ARGS>
-$id => undef #some identifier that a Queue could
-</%ARGS>
diff --git a/rt/html/Admin/Queues/UserRights.html b/rt/html/Admin/Queues/UserRights.html
deleted file mode 100644
index 399992a..0000000
--- a/rt/html/Admin/Queues/UserRights.html
+++ /dev/null
@@ -1,112 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Modify user rights for queue [_1]', $QueueObj->Name) &>
-<& /Admin/Elements/QueueTabs, id => $id,
- QueueObj => $QueueObj,
- current_tab => $current_tab,
- Title => loc('Modify user rights for queue [_1]', $QueueObj->Name) &>
-<& /Elements/ListActions, actions => \@results &>
-
- <FORM METHOD=POST ACTION="UserRights.html">
- <INPUT TYPE=HIDDEN NAME=id VALUE="<% $QueueObj->id %>">
-
-
-<TABLE>
-<& /Elements/Callback, QueueObj => $QueueObj, results => \@results, %ARGS &>
-% while (my $Member = $Users->Next()) {
-% my $UserObj = $Member->MemberObj->Object();
-% my $group = RT::Group->new($session{'CurrentUser'});
-% $group->LoadACLEquivalenceGroup($Member->MemberObj);
- <TR ALIGN=RIGHT>
- <TD VALIGN=TOP>
- <% $UserObj->Name %>
- </TD>
- <TD>
- <& /Admin/Elements/SelectRights, PrincipalId=> $group->PrincipalId,
- Object => $QueueObj &>
- </TD>
- </TR>
-% }
- </TABLE>
-
- <& /Elements/Submit, Label => loc('Modify User Rights'), Reset => 1 &>
-
- </FORM>
-
-<%INIT>
-
- #Update the acls.
- my @results = ProcessACLChanges(\%ARGS);
-
-# {{{ Deal with setting up the display of current rights.
-
-
-
-if (!defined $id) {
- Abort(loc("No Queue defined"));
-}
-
-my $QueueObj = RT::Queue->new($session{'CurrentUser'});
-$QueueObj->Load($id) || Abort(loc("Couldn't load queue [_1]",$id));
-
-# Find out which users we want to display ACL selects for
-my $Privileged = RT::Group->new($session{'CurrentUser'});
-$Privileged->LoadSystemInternalGroup('Privileged');
-my $Users = $Privileged->MembersObj();
-
-
-
-# }}}
-my $current_tab;
-$current_tab = 'Admin/Queues/UserRights.html?id='.$QueueObj->id;
-</%INIT>
-
-<%ARGS>
-$id => undef
-$UserString => undef
-$UserOp => undef
-$UserField => undef
-</%ARGS>
diff --git a/rt/html/Admin/Queues/index.html b/rt/html/Admin/Queues/index.html
deleted file mode 100644
index 28adf53..0000000
--- a/rt/html/Admin/Queues/index.html
+++ /dev/null
@@ -1,84 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc("Admin queues") &>
-<& /Admin/Elements/QueueTabs, current_tab => 'Admin/Queues/',
- current_subtab => 'Admin/Queues/',
- Title => loc("Admin queues") &>
-
-
-
-<h1><%$caption%></h1>
-<p><&|/l&>Select a queue</&>:</p>
-<UL>
-%if ($queues->Count == 0) {
-<li><i><&|/l&>No queues matching search criteria found.</&></i></li>
-% }
-%while ( $queue = $queues->Next) {
-<li><A HREF="Modify.html?id=<%$queue->id%>"><%$queue->Name%></a></li>
-%}
-</UL>
-<BR>
-<FORM METHOD=POST ACTION="<% $RT::WebPath %>/Admin/Queues/index.html">
-<input type="checkbox" name="FindDisabledQueues" value="1"> <&|/l&>Include disabled queues in listing.</&>
-<div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
-</FORM>
-
-<%INIT>
-my ($queue, $caption);
-my $queues = new RT::Queues($session{'CurrentUser'});
-$queues->UnLimit();
-
-if ($FindDisabledQueues) {
- $caption = loc("All Queues");
- $queues->{'find_disabled_rows'} = 1;
-} else {
- $caption = loc("Enabled Queues");
-}
-
-</%INIT>
-<%ARGS>
-$FindDisabledQueues => 0
-</%ARGS>
diff --git a/rt/html/Admin/Tools/Configuration.html b/rt/html/Admin/Tools/Configuration.html
deleted file mode 100644
index bc5ca69..0000000
--- a/rt/html/Admin/Tools/Configuration.html
+++ /dev/null
@@ -1,98 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-require Module::Versions::Report;
-my $title = loc('System Configuration');
-unless ($session{'CurrentUser'}->HasRight( Object=> $RT::System, Right => 'SuperUser')) {
- Abort(loc('This feature is only available to system administrators'));
-}
-
-
-</%init>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/Configuration.html',
- current_subtab => 'Admin/Tools/Configuration.html',
- Title => $title &>
-
-
-
-
-<h2><&|/l&>Loaded perl modules</&></h2>
-<pre>
-% my $report = Module::Versions::Report::report();
-% my @report = grep { /v\d/ } split("\n",$report);
-<%join('<br>', @report)|n%>
-
-
-</pre>
-
-<h2><&|/l&>RT Variables</&></h2>
-<table>
-%{
-%no strict qw/refs/;
-
-%foreach my $key (sort keys %{*RT::}) {
-% next unless (${'RT::'.$key} );
-% next if (ref ${'RT::'.$key} );
-<tr><td>RT::<%$key%></td>
-<td>
-% if ($key =~ /Password(?!Length)/i) {
-<i>Password not printed</i>
-% } else {
-<%${'RT::'.$key} %>
-% }
-</td>
-</tr>
-% }
-%}
-</table>
-
-<h2><&|/l&>Perl configuration</&></h2>
-% require Config;
-<pre>
-<%Config::myconfig()%>
-</pre>
diff --git a/rt/html/Admin/Tools/index.html b/rt/html/Admin/Tools/index.html
deleted file mode 100644
index 49cfac3..0000000
--- a/rt/html/Admin/Tools/index.html
+++ /dev/null
@@ -1,53 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-my $title = loc('System Tools');
-</%init>
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/ToolTabs,
- current_tab => 'Admin/Tools/index.html',
- current_subtab => 'Admin/Tools/Configuration.html',
- Title => $title &>
diff --git a/rt/html/Admin/Users/CustomFields.html b/rt/html/Admin/Users/CustomFields.html
deleted file mode 100644
index 5662c6c..0000000
--- a/rt/html/Admin/Users/CustomFields.html
+++ /dev/null
@@ -1,69 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/UserTabs,
- id => $Object->id,
- current_tab => "Admin/Users/CustomFields.html?$id=".$id,
- current_subtab => "Admin/Users/CustomFields.html?id=".$id,
- UserObj => $Object,
- Title => $title
- &>
-
- <& /Admin/Elements/EditCustomFields, %ARGS, title => $title, Object => $Object, ObjectType => 'RT::User' &>
-<%INIT>
-my $Object = RT::User->new( $session{'CurrentUser'} );
-
-$Object->Load($id) || Abort( loc( "Couldn't load object [_1]", $id ) );
-my $FriendlySubTypes =
- RT::CustomField->new( $session{'CurrentUser'} )
- ->FriendlyLookupType( $Object->CustomFieldLookupType );
-
-my $title = loc( 'Edit Custom Fields for [_1]', $Object->Name );
-
-</%INIT>
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Users/History.html b/rt/html/Admin/Users/History.html
deleted file mode 100644
index 024a90b..0000000
--- a/rt/html/Admin/Users/History.html
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/UserTabs,
- id => $id,
- UserObj => $UserObj,
- current_tab => $current_tab,
- Title => $title &>
-
-<& /Ticket/Elements/ShowHistory,
- Ticket => $UserObj,
- ShowHeaderModes => 0,
-&>
-
-<%INIT>
-my $current_tab = 'Admin/Users/History.html?id='.$id;
-my $UserObj = new RT::User($session{'CurrentUser'});
-$UserObj->Load($id) || Abort("Couldn't load user '$id'");
-my $title = loc("History of the user [_1]", $UserObj->Name);
-</%INIT>
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Users/Memberships.html b/rt/html/Admin/Users/Memberships.html
deleted file mode 100644
index 3e63239..0000000
--- a/rt/html/Admin/Users/Memberships.html
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/UserTabs,
- id => $id,
- UserObj => $UserObj,
- current_tab => $current_tab,
- Title => $title &>
-
-<h2><&|/l&>Groups</&></h2>
-
-<& /Elements/ShowMemberships, UserObj => $UserObj &>
-
-<%INIT>
-my $UserObj = RT::User->new($session{'CurrentUser'});
-$UserObj->Load($id) || Abort("Couldn't load user '$id'");
-my $title = loc("Memberships of the user [_1]", $UserObj->Name);
-my $current_tab = 'Admin/Users/Memberships.html?id='.$id;
-</%INIT>
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Admin/Users/Modify.html b/rt/html/Admin/Users/Modify.html
deleted file mode 100644
index 8a24f9c..0000000
--- a/rt/html/Admin/Users/Modify.html
+++ /dev/null
@@ -1,421 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => $title &>
-<& /Admin/Elements/UserTabs,
- id => $id,
- UserObj => $UserObj,
- current_tab => $current_tab,
- Title => $title &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM ACTION="<%$RT::WebPath%>/Admin/Users/Modify.html" METHOD=POST ENCTYPE="multipart/form-data">
-%if ($Create) {
-<INPUT TYPE=HIDDEN NAME=id VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$UserObj->Id%>">
-% }
-<TABLE WIDTH=100% BORDER=0>
-<TR>
-
-<TD VALIGN=TOP class="boxcontainer">
-<& /Elements/TitleBoxStart, title => loc('Identity') &>
-
-<TABLE>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Username</&>:
-</TD><TD>
-<input name="Name" value="<%$UserObj->Name%>"> <b><&|/l&>(required)</&></b>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Email</&>:
-</TD><TD>
-<input name="EmailAddress" value="<%$UserObj->EmailAddress%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Real Name</&>:
-</TD><TD>
-<input name="RealName" value="<%$UserObj->RealName%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Nickname</&>:
-</TD><TD>
-<input name="NickName" value="<%$UserObj->NickName%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Unix login</&>:
-</TD><TD>
-<input name="Gecos" value="<%$UserObj->Gecos%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Language</&>:
-</TD><TD>
-<& /Elements/SelectLang, Name => 'Lang', Default => $UserObj->Lang &>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Extra info</&>:
-</TD><TD>
-<textarea name="FreeformContactInfo" cols=20 rows=5><%$UserObj->FreeformContactInfo%></TEXTAREA>
-</TD></TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<br>
-<& /Elements/TitleBoxStart, title => loc('Access control') &>
-<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>>
-<&|/l&>Let this user access RT</&><BR>
-
-
-<INPUT TYPE=HIDDEN NAME="SetPrivileged" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Privileged" VALUE="1" <%$PrivilegedChecked%>> <&|/l&>Let this user be granted rights</&><BR>
-
-% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
-<TABLE>
-<TR>
-<TD ALIGN=RIGHT>
-<&|/l&>New Password</&>:
-</TD>
-<TD ALIGN=LEFT>
-<input type=password name="Pass1">
-</TD>
-</TR>
-<TR><TD ALIGN=RIGHT>
-<&|/l&>Retype Password</&>:
-</TD>
-<TD>
-<input type=password name="Pass2">
-</TD>
-</TR>
-</TABLE>
-% }
-<& /Elements/TitleBoxEnd &>
-</TD>
-
-<TD VALIGN=TOP class="boxcontainer">
-<& /Elements/TitleBoxStart, title => loc('Location') &>
-<TABLE>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Organization</&>:
-</TD><TD>
-<input name="Organization" value="<%$UserObj->Organization%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Address1</&>:
-</TD><TD>
-<input name="Address1" value="<%$UserObj->Address1%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Address2</&>:
-</TD><TD>
-<input name="Address2" value="<%$UserObj->Address2%>">
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>City</&>:
-</TD><TD>
-<input name="City" value="<%$UserObj->City%>" size=14>
-
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>State</&>:
-</TD><TD>
-<input name="State" value="<%$UserObj->State%>" size=3>
-
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Zip</&>:
-</TD><TD>
-<input name="Zip" value="<%$UserObj->Zip%>" size=9>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Country</&>:
-</TD><TD>
-<input name="Country" value="<%$UserObj->Country%>">
-</TD></TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<br>
-<& /Elements/TitleBoxStart, title => loc('Phone numbers') &>
-<TABLE>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Residence</&>:
-</TD><TD>
-<input name="HomePhone" value="<%$UserObj->HomePhone%>" size=13><br>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Work</&>:
-</TD><TD>
-<input name="WorkPhone" value="<%$UserObj->WorkPhone%>" size=13><br>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Mobile</&>:
-</TD><TD>
-<input name="MobilePhone" value="<%$UserObj->MobilePhone%>" size=13><br>
-</TD></TR>
-<TR><TD ALIGN="RIGHT">
-<&|/l&>Pager</&>:
-</TD><TD>
-<input name="PagerPhone" value="<%$UserObj->PagerPhone%>" size=13><br>
-<& /Elements/TitleBoxEnd &>
-</TD>
-
-<TR>
-</TR>
-</TABLE>
-<BR>
-<& /Elements/TitleBoxStart, title => loc('Custom Fields') &>
-<TABLE>
-% my $CFs = $UserObj->CustomFields;
-% while (my $CF = $CFs->Next) {
-<TR VALIGN="TOP"><TD ALIGN="RIGHT">
-<% $CF->Name %>:
-</TD><TD>
-<& /Elements/EditCustomField, %ARGS, Object => $UserObj, CustomField => $CF &>
-</TD></TR>
-% }
-<TR>
-</TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<TR>
-<TD colspan="2">
-<& /Elements/TitleBoxStart, title => loc('Comments about this user') &>
-<TEXTAREA class="comments" name="Comments" COLS=80 ROWS=5 WRAP=VIRTUAL><%$UserObj->Comments%></TEXTAREA>
-<& /Elements/TitleBoxEnd &>
-%if ($UserObj->Privileged) {
-<BR>
-<& /Elements/TitleBoxStart, title => loc('Signature') &>
-<TEXTAREA class="signature" COLS=80 ROWS=5 name="Signature" WRAP=HARD><%$UserObj->Signature%></TEXTAREA>
-<& /Elements/TitleBoxEnd &>
-% }
-
-</TD>
-</TR>
-</TABLE>
-
-<& /Elements/Submit, Label => loc('Save Changes') &>
-</form>
-
-<%INIT>
-
-my $current_tab;
-my $UserObj = new RT::User($session{'CurrentUser'});
-my ($title, $PrivilegedChecked, $EnabledChecked, $Disabled, $result, @results);
-
-my ($val, $msg);
-
-if ($Create) {
- $current_tab = 'Admin/Users/Modify.html?Create=1';
- $title = loc("Create a new user");
-}
-else {
-
- $current_tab = 'Admin/Users/Modify.html?id='.$id;
- if ($id eq 'new') {
- ( $val, $msg ) = $UserObj->Create(
- Name => $Name,
- EmailAddress => $ARGS{'EmailAddress'},
- Name => $ARGS{'Name'},
- Comments => $ARGS{'Comments'},
- Signature => $ARGS{'Signature'},
- EmailAddress => $ARGS{'EmailAddress'},
- FreeformContactInfo => $ARGS{'FreeformContactInfo'},
- Organization => $ARGS{'Organization'},
- RealName => $ARGS{'RealName'},
- NickName => $ARGS{'NickName'},
- Lang => $ARGS{'Lang'},
- EmailEncoding => $ARGS{'EmailEncoding'},
- WebEncoding => $ARGS{'WebEncoding'},
- ExternalContactInfoId => $ARGS{'ExternalContactInfoId'},
- ContactInfoSystem => $ARGS{'ContactInfoSystem'},
- Gecos => $ARGS{'Gecos'},
- ExternalAuthId => $ARGS{'ExternalAuthId'},
- AuthSystem => $ARGS{'AuthSystem'},
- HomePhone => $ARGS{'HomePhone'},
- WorkPhone => $ARGS{'WorkPhone'},
- MobilePhone => $ARGS{'MobilePhone'},
- PagerPhone => $ARGS{'PagerPhone'},
- Address1 => $ARGS{'Address1'},
- Address2 => $ARGS{'Address2'},
- City => $ARGS{'City'},
- State => $ARGS{'State'},
- Zip => $ARGS{'Zip'},
- Country => $ARGS{'Country'},
- Privileged => $ARGS{'Privileged'},
- Disabled => ($ARGS{'Enabled'} ? 0 : 1)
- );
-
- if ($val) {
- push @results, $msg;
- } else {
- push @results, loc('User could not be created: [_1]', $msg);
- }
- } else {
- $UserObj->Load($id) || $UserObj->Load($Name) || Abort("Couldn't load user '$Name'");
- $val = $UserObj->Id();
- }
-
- if ($val) {
- $title = loc("Modify the user [_1]", $UserObj->Name);
- }
-
- # If the create failed
- else {
- $title = loc("Create a new user");
- $Create = 1;
- }
-}
-
-
-
-
-# If we have a user to modify, lets try.
-if ($UserObj->Id && $id ne 'new') {
-
- my @fields = qw(Name Comments Signature EmailAddress FreeformContactInfo
- Organization RealName NickName Lang EmailEncoding WebEncoding
- ExternalContactInfoId ContactInfoSystem Gecos ExternalAuthId
- AuthSystem HomePhone WorkPhone MobilePhone PagerPhone Address1
- Address2 City State Zip Country
- );
-
- my @fieldresults = UpdateRecordObject ( AttributesRef => \@fields,
- Object => $UserObj,
- ARGSRef => \%ARGS );
- push (@results,@fieldresults);
- push @results, ProcessObjectCustomFieldUpdates( ARGSRef => \%ARGS, Object => $UserObj );
-
-
- # {{{ Deal with special fields: Privileged, Enabled
- if ( $SetPrivileged and $Privileged != $UserObj->Privileged ) {
- my ($code, $msg) = $UserObj->SetPrivileged($Privileged);
- push @results, loc('Privileged status: [_1]', loc_fuzzy($msg));
- }
-
- #we're asking about enabled on the web page but really care about disabled.
- $Disabled = $Enabled ? 0 : 1;
-
- if ( ($SetEnabled) and ( $Disabled != $UserObj->Disabled) ) {
- my ($code, $msg) = $UserObj->SetDisabled($Disabled);
- push @results, loc('Enabled status [_1]', loc_fuzzy($msg));
- }
-
-
- # }}}
-}
-
-if ( $UserObj->Id ) {
- my $password_not_set;
- # Deal with Password field
- if ( !$Pass1 and !$Pass2 ) {
- $password_not_set = 1;
- } elsif ( $Pass1 ne $Pass2 ) {
- $password_not_set = 1;
- push @results, loc("Passwords do not match.");
- } elsif ( $Pass1 eq $Pass2 and !$UserObj->IsPassword($Pass1) ) {
- my ($code, $msg) = $UserObj->SetPassword($Pass1);
- push @results, loc_fuzzy($msg);
- $password_not_set = 1 unless $code;
- }
- if ($id eq 'new' and $password_not_set) {
- push @results, loc("A password was not set, so user won't be able to login.");
- }
-}
-
-
-# {{{ Do some setup for the ui
-unless ($UserObj->Disabled()) {
- $EnabledChecked ="CHECKED";
-}
-
-if ($UserObj->Privileged()) {
- $PrivilegedChecked = "CHECKED";
-}
-
-# }}}
-
-# set the id, so the the menu will have the right info, this needs to
-# be done here to avoid creating and then modifying a user
-$id = $UserObj->Id;
-
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-$Name => undef
-$Comments => undef
-$Signature => undef
-$EmailAddress => undef
-$FreeformContactInfo => undef
-$Organization => undef
-$RealName => undef
-$NickName => undef
-$Privileged => undef
-$SetPrivileged => undef
-$Enabled => undef
-$SetEnabled => undef
-$Lang => undef
-$EmailEncoding => undef
-$WebEncoding => undef
-$ExternalContactInfoId => undef
-$ContactInfoSystem => undef
-$Gecos => undef
-$ExternalAuthId => undef
-$AuthSystem => undef
-$HomePhone => undef
-$WorkPhone => undef
-$MobilePhone => undef
-$PagerPhone => undef
-$Address1 => undef
-$Address2 => undef
-$City => undef
-$State => undef
-$Zip => undef
-$Country => undef
-$Pass1 => undef
-$Pass2=> undef
-$Create=> undef
-</%ARGS>
diff --git a/rt/html/Admin/Users/index.html b/rt/html/Admin/Users/index.html
deleted file mode 100644
index 1bbe867..0000000
--- a/rt/html/Admin/Users/index.html
+++ /dev/null
@@ -1,113 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('Select a user') &>
-<& /Admin/Elements/UserTabs, current_tab => 'Admin/Users/',
- current_subtab => 'Admin/Users/',
- Title => loc('Select a user') &>
-
-<h1><%$caption%></h1>
-<p><&|/l&>Select a user</&>:</p>
-<ul>
-%if ($users->Count == 0) {
-<li><i><&|/l&>No users matching search criteria found.</&></i></li>
-% }
-%my @ids;
-%while ( $user = $users->Next) {
-% push @ids, $user->Id;
-<LI><A HREF="Modify.html?id=<%$user->id%>"><%$user->Name || loc('(no name listed)')%></a></LI>
-%}
-</UL>
-%if (my $ids = join(',', @ids)) {
-<em>(<a href="<%$RT::WebPath%>/Download/Tabular/User/<% $ids %>/Users.tsv"><&|/l&>Download as a tab-delimited file</&></a>)</em><br>
-%}
-
-<br><br>
-<FORM METHOD=POST ACTION="<% $RT::WebPath %>/Admin/Users/index.html">
-
-<&|/l&>Find people whose</&> <& /Elements/SelectUsers &><BR>
-<input type="checkbox" name="FindDisabledUsers" value="1"> <&|/l&>Include disabled users in search.</&>
-<BR>
-<div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
-</FORM>
-
-<%INIT>
-my ($user, $caption);
-my $users = new RT::Users($session{'CurrentUser'});
-
-if ($FindDisabledUsers) {
- $users->{'find_disabled_rows'} = 1;
-}
-
-if (length $UserString) {
- $caption = loc("Users matching search criteria");
- if ($UserField =~ /^CustomField-(\d+)/) {
- $users->LimitCustomField(
- CUSTOMFIELD => $1,
- OPERATOR => $UserOp,
- VALUE => $UserString,
- );
- }
- else {
- $users->Limit(
- FIELD => $UserField,
- OPERATOR => $UserOp,
- VALUE => $UserString,
- );
- }
-}
-else {
- $caption = loc("Privileged users");
- $users->LimitToPrivileged;
-}
-</%INIT>
-<%ARGS>
-$UserString => undef
-$UserOp => '='
-$UserField => 'Name'
-$IdLike => undef
-$EmailLike => undef
-$FindDisabledUsers => 0
-</%ARGS>
diff --git a/rt/html/Admin/autohandler b/rt/html/Admin/autohandler
deleted file mode 100644
index def6101..0000000
--- a/rt/html/Admin/autohandler
+++ /dev/null
@@ -1,51 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-$m->call_next(%ARGS) if $session{'CurrentUser'}->UserObj->HasRight(
- Right => 'ShowConfigTab',
- Object => $RT::System,
-);
-</%init> \ No newline at end of file
diff --git a/rt/html/Admin/index.html b/rt/html/Admin/index.html
deleted file mode 100644
index 01ba24d..0000000
--- a/rt/html/Admin/index.html
+++ /dev/null
@@ -1,99 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices),
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.),
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Admin/Elements/Header, Title => loc('RT Administration') &>
-<& /Admin/Elements/Tabs, Title => loc('RT Administration') &>
-
-<ul>
-% foreach my $key (sort keys %$tabs) {
-<li><font size="+2"><a href="<%$RT::WebPath%>/<%$tabs->{$key}->{'path'}|n %>"><%$tabs->{$key} ->{'title'}%></a></font><br>
-<%$tabs->{$key}->{description}%>
-</li>
-%}
-</ul>
-<%init>
-
-
-
-my $tabs = {
- A => {
- title => loc('Users'),
- path => 'Admin/Users/index.html',
- description => loc('Manage users and passwords'),
- },
- B => {
- title => loc('Groups'),
- path => 'Admin/Groups/index.html',
- description => loc('Manage groups and group membership'),
- },
- C => {
- title => loc('Queues'),
- path => 'Admin/Queues/index.html',
- description => loc('Manage queues and queue-specific properties'),
- },
- D => {
- 'title' => loc('Custom Fields'),
- description => loc('Manage custom fields and custom field values'),
- path => 'Admin/CustomFields/index.html',
- },
- E => {
- 'title' => loc('Global'),
- path => 'Admin/Global/index.html',
- description =>
- loc('Manage properties and configuration which apply to all queues'),
- },
- F => {
- 'title' => loc('Tools'),
- path => 'Admin/Tools/index.html',
- description => loc('Use other RT administrative tools')
- },
-};
-
- $m->comp('/Elements/Callback', tabs => $tabs, %ARGS);
-
-
-
-
-</%init>
diff --git a/rt/html/Approvals/Display.html b/rt/html/Approvals/Display.html
deleted file mode 100644
index d9d6df5..0000000
--- a/rt/html/Approvals/Display.html
+++ /dev/null
@@ -1,72 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title &>
-
-<& Elements/Tabs,
- current_tab => "Approvals/Display.html",
- Title => $title &>
-<form method=post action="<%$RT::WebPath%>/Approvals/index.html">
-
-<& /Elements/TitleBoxStart, title => $title &>
-<& /Ticket/Elements/ShowHistory , Ticket => $Ticket, Collapsed => 0, ShowTitle => 0, ShowHeaders => 0, ShowDisplayModes => 0, ShowTitleBarCommands => 0 &>
-<hr>
-<table width=100%>
-<& Elements/Approve, ticket => $Ticket, ShowApproving => 0 &>
-</table>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit&>
-</form>
-<& Elements/ShowDependency, Ticket => $Ticket &>
-
-<%init>
-my $Ticket = LoadTicket($id);
-
-my $title = loc("Approval #[_1]: [_2]", $Ticket->Id, $Ticket->Subject);
-
-</%init>
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Approvals/Elements/Approve b/rt/html/Approvals/Elements/Approve
deleted file mode 100644
index bf786fb..0000000
--- a/rt/html/Approvals/Elements/Approve
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<tr bgcolor="#b9b9ff">
-<td colspan=2><font size="3">
-<a href="<%$RT::WebPath%>/Approvals/Display.html?id=<%$ticket->Id%>"><% loc("#[_1]: [_2]", $ticket->Id, $ticket->Subject) %></a> (<%loc($ticket->Status)%>)</font></td>
-</tr>
-% if ($ShowApproving) {
-% foreach my $approving ( $ticket->AllDependedOnBy( Type => 'ticket' ) ) {
-<tr bgcolor="#e9e9e9">
-<td colspan=2>
-<a href="<%$RT::WebPath%>/Ticket/Display.html?id=<% $approving->Id %>"><&|/l, $approving->Id, $approving->Subject &>Originating ticket: #[_1]</&></a>
-</td>
-</tr>
-<tr><td colspan=2>
-<& /Ticket/Elements/ShowCustomFields, Ticket => $approving &>
-<& /Ticket/Elements/ShowHistory, Ticket => $approving, Collapsed => 0, ShowTitle => 0, ShowHeaders => 0, ShowDisplayModes => 0, ShowTitleBarCommands => 0 &>
-</td></tr>
-% }
-% }
-<tr <%$class && "class=\"$class\""%>>
-<td valign=top>
-<input type="radio" name="Approval-<%$ticket->Id%>-Action" value="approve"><&|/l&>Approve</&><br>
-<input type="radio" name="Approval-<%$ticket->Id%>-Action" value="deny"><&|/l&>Deny</&><br>
-<input type="radio" name="Approval-<%$ticket->Id%>-Action" value="none" checked><&|/l&>No action</&>
-</td>
-<td>
-<&|/l&>Notes</&><br>
-<textarea name="Approval-<%$ticket->Id%>-Notes" rows=2 cols=70></textarea>
-</td>
-</tr>
-<%ARGS>
-$ShowApproving => 1
-$ticket => undef
-$class => undef
-</%ARGS>
diff --git a/rt/html/Approvals/Elements/PendingMyApproval b/rt/html/Approvals/Elements/PendingMyApproval
deleted file mode 100644
index f13ddf0..0000000
--- a/rt/html/Approvals/Elements/PendingMyApproval
+++ /dev/null
@@ -1,109 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table width="100%">
-% my ($i, $class);
-% my %done;
-% foreach ($tickets, $group_tickets) {
-% while (my $ticket = $_->Next() ) {
-% next if !$ARGS{'ShowDependent'} and $ticket->HasUnresolvedDependencies( Type => 'approval' );
-% next if $done{$ticket->Id}++; # don't show duplicate tickets
-% $i++;
-% $class = ($i%2) ? "oddline" : "evenline";
-<& Approve, ticket => $ticket, class => $class &>
-% }
-% }
-</table>
-
-<& /Elements/TitleBoxStart, title => loc("Search for approvals") &>
-<input type=checkbox value="1" name="ShowPending"
- <%((!$ARGS{'ShowRejected'} && !$ARGS{'ShowResolved'}) ||
- $ARGS{'ShowPending'})
- && "checked"%>> <&|/l&>Show pending requests</&><br>
-<input type=checkbox value="1" name="ShowResolved" <%$ARGS{'ShowResolved'} && "checked"%>> <&|/l&>Show approved requests</&><br>
-<input type=checkbox value="1" name="ShowRejected" <%$ARGS{'ShowRejected'} && "checked"%>> <&|/l&>Show denied requests</&><br>
-<input type=checkbox value="1" name="ShowDependent" <%$ARGS{'ShowDependent'} && "checked"%>> <&|/l&>Show requests awaiting other approvals</&><br>
-
-<&|/l,"<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>"&>Only show approvals for requests created before [_1]</&><br>
-
-<&|/l, "<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>"&>Only show approvals for requests created after [_1]</&>
-<& /Elements/TitleBoxEnd &>
-
-<%init>
-my $tickets = RT::Tickets->new( $session{'CurrentUser'} );
-$tickets->LimitOwner( VALUE => $session{'CurrentUser'}->Id );
-
-# also consider AdminCcs as potential approvers.
-my $group_tickets = RT::Tickets->new( $session{'CurrentUser'} );
-
-my $created_before = RT::Date->new( $session{'CurrentUser'} );
-my $created_after = RT::Date->new( $session{'CurrentUser'} );
-
-foreach ($tickets, $group_tickets) {
- $_->Limit( FIELD => 'Type', VALUE => 'approval' );
-
- if ( $ARGS{'ShowResolved'} ) {
- $_->LimitStatus( VALUE => 'resolved' );
- }
- if ( $ARGS{'ShowRejected'} ) {
- $_->LimitStatus( VALUE => 'rejected' );
- }
- if ( $ARGS{'ShowPending'} || ( !$ARGS{'ShowRejected'} && !$ARGS{'Resolved'} ) ) {
- $_->LimitStatus( VALUE => 'open' );
- $_->LimitStatus( VALUE => 'new' );
- $_->LimitStatus( VALUE => 'stalled' );
- }
-
- if ( $ARGS{'CreatedBefore'} ) {
- $created_before->Set( Format => 'unknown', Value => $ARGS{'CreatedBefore'} );
- $_->LimitCreated( OPERATOR => "<=", VALUE => $created_before->ISO );
- }
- if ( $ARGS{'CreatedAfter'} ) {
- $created_after->Set( Format => 'unknown', Value => $ARGS{'CreatedAfter'} );
- $_->LimitCreated( OPERATOR => ">=", VALUE => $created_after->ISO );
- }
-}
-
-</%init>
diff --git a/rt/html/Approvals/Elements/ShowDependency b/rt/html/Approvals/Elements/ShowDependency
deleted file mode 100644
index e8d0b00..0000000
--- a/rt/html/Approvals/Elements/ShowDependency
+++ /dev/null
@@ -1,107 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% my $approving = $Ticket->DependedOnBy();
-% if ($approving->Count) {
-<h3><&|/l&>Tickets which depend on this approval:</&></h3>
-
-<table width=100%>
-<TR>
-<TD WIDTH="25" bgcolor="#999999">&nbsp;</TD><TD>
-<%PERL>
-my %show;
-while (my $link = $approving->Next()) {
- next unless ($link->BaseURI->IsLocal());
- my $text = '<a name="' . $link->BaseObj->Id . '">';
- my $head = '';
- my $type = $link->BaseObj->Type;
- my $dep = $m->scomp('ShowDependency', Ticket => $link->BaseObj, _seen => $_seen);
-
- if ($type eq 'approval') {
- $head .= $m->scomp('/Elements/TitleBoxStart', title => loc("Approval #[_1]: [_2]", $link->BaseObj->Id, $link->BaseObj->Subject));
- $text .= $head;
- $text .= $m->scomp('/Ticket/Elements/ShowCustomFields', Ticket => $link->BaseObj);
- } elsif ($type eq 'ticket') {
- $head .= $m->scomp('/Elements/TitleBoxStart', title => loc("Ticket #[_1]: [_2]", $link->BaseObj->Id, $link->BaseObj->Subject));
- $text .= $head;
- $text .= $m->scomp('/Ticket/Elements/ShowSummary', Ticket => $link->BaseObj);
- } else {
- $head .= $m->scomp('/Elements/TitleBoxStart', title => loc("#[_1]: [_2]", $link->BaseObj->Id, $link->BaseObj->Subject));
- $text .= $head;
- }
-
- $text .= $m->scomp('/Ticket/Elements/ShowHistory' , Ticket => $link->BaseObj, Collapsed => ($type ne 'ticket'), ShowTitle => 0, ShowHeaders => 0, ShowDisplayModes => 0, ShowTitleBarCommands => 0);
-
- $head .= $m->scomp('/Elements/TitleBoxEnd');
- $text .= $m->scomp('/Elements/TitleBoxEnd');
- $text .= $dep;
- $text .= '</a>';
- $show{$link->BaseObj->Id} = {
- text => $text,
- head => $head,
- };
-}
-
-my $refer;
-foreach my $id (sort keys %show) {
- if ($_seen->{$id}++) {
- $refer .= "<a href='#txn-$id'>" . $show{$id}{head} . "</a>";
- next;
- }
-
- $m->print($show{$id}{text});
-}
-$m->print($refer);
-
-</%PERL>
-</TD>
-</TR>
-</TABLE>
-
-% }
-<%ARGS>
-$Ticket
-$_seen => {}
-</%ARGS>
diff --git a/rt/html/Approvals/Elements/Tabs b/rt/html/Approvals/Elements/Tabs
deleted file mode 100644
index 03bdc26..0000000
--- a/rt/html/Approvals/Elements/Tabs
+++ /dev/null
@@ -1,56 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Tabs,
- tabs => $tabs,
- current_toptab => 'Approvals/',
- current_tab => $current_tab,
- Title => $Title &>
-
-<%ARGS>
-$tabs => undef
-$current_tab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Approvals/index.html b/rt/html/Approvals/index.html
deleted file mode 100644
index 88c277c..0000000
--- a/rt/html/Approvals/index.html
+++ /dev/null
@@ -1,88 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("My approvals") &>
-<& /Approvals/Elements/Tabs, Title => loc("My approvals") &>
-
-<& /Elements/ListActions, actions => \@actions &>
-<form method="post">
-<& Elements/PendingMyApproval, %ARGS &>
-<& /Elements/Submit, Label => loc('Show Approvals') &>
-</form>
-<%init>
-
-my (@actions);
-foreach my $arg ( keys %ARGS ) {
-
- next unless ( $arg =~ /Approval-(\d+)-Action/ );
-
- my ( $notesval, $notesmsg );
-
- my $ticket = LoadTicket($1);
-
- if ( $ARGS{ "Approval-" . $ticket->Id . "-Notes" } ) {
- my $notes = MIME::Entity->build(
- Data => [ $ARGS{ "Approval-" . $ticket->Id . "-Notes" } ]
- );
- RT::I18N::SetMIMEEntityToUTF8($notes); # convert text parts into utf-8
-
- my ( $notesval, $notesmsg ) = $ticket->Correspond( MIMEObj => $notes );
- if ($notesval) {
- push ( @actions, loc("Approval #[_1]: Notes recorded",$ticket->Id ));
- } else {
- push ( @actions, loc("Approval #[_1]: Notes not recorded due to a system error",$ticket->Id ));
- }
- }
-
- my ($val, $msg);
- if ( $ARGS{$arg} eq 'deny' ) {
- ( $val, $msg ) = $ticket->SetStatus('rejected');
- }
- elsif ( $ARGS{$arg} eq 'approve' ) {
- ( $val, $msg ) = $ticket->SetStatus('resolved');
- }
- push ( @actions, loc("Approval #[_1]: [_2]",$ticket->id, $msg )) if ($msg);
-}
-</%init>
diff --git a/rt/html/Download/CustomFieldValue/dhandler b/rt/html/Download/CustomFieldValue/dhandler
deleted file mode 100644
index 5219680..0000000
--- a/rt/html/Download/CustomFieldValue/dhandler
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%perl>
-my $id;
-my $arg = $m->dhandler_arg; # get rest of path
-if ($arg =~ /^(\d+)\//) {
- $id = $1;
-}
-else {
- Abort("Corrupted customfieldvalue URL.");
-}
-my $OCFV = RT::ObjectCustomFieldValue->new($session{'CurrentUser'});
-$OCFV->Load($id) || Abort("OCFV '$id' could not be loaded");
-
-unless ($OCFV->id) {
- Abort("Bad OCFV id. Couldn't find OCFV '$id'\n");
-}
-
-my $content_type = $OCFV->ContentType || 'text/plain';
-
-unless ($RT::TrustHTMLAttachments) {
- $content_type = 'text/plain' if ($content_type =~ /^text\/html/i);
-}
-
-$r->content_type( $content_type );
-$m->clear_buffer();
-$m->out($OCFV->LargeContent);
-$m->abort;
-</%perl>
-<%attr>
-AutoFlush => 0
-</%attr>
diff --git a/rt/html/Download/Tabular/dhandler b/rt/html/Download/Tabular/dhandler
deleted file mode 100644
index 3965a99..0000000
--- a/rt/html/Download/Tabular/dhandler
+++ /dev/null
@@ -1,74 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%perl>
-my ($class, $filename, @ids);
-my $arg = $m->dhandler_arg; # get rest of path
-if ($arg =~ /^(\w+)\/([,\d]+)(?:\/([^\/]+))?/) {
- $class = "RT::$1";
- $filename = $3 || "$1s.tsv";
- @ids = sort split(/,+/, $2);
-}
-else {
- Abort("Corrupted tabular URL.");
-}
-
-my @cols = $class->BasicColumns or return;
-
-#$r->content_type( 'application/octet-stream' );
-$r->content_type( 'text/plain' );
-$r->headers_out->{'Content-Disposition'} = "attachment; filename=$filename";
-$m->clear_buffer();
-$m->out(join("\t", "Id", map $_->[1], @cols), "\n");
-foreach my $id (@ids) {
- my $obj = $class->new;
- $obj->Load($id) or next;
- $m->out(join("\t", map $obj->$_, "Id", map $_->[0], @cols), "\n");
-}
-$m->abort;
-</%perl>
-<%attr>
-AutoFlush => 0
-</%attr>
diff --git a/rt/html/Elements/BevelBoxRaisedEnd b/rt/html/Elements/BevelBoxRaisedEnd
deleted file mode 100644
index e1d1edb..0000000
--- a/rt/html/Elements/BevelBoxRaisedEnd
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
- </TD>
-</TR>
-</table>
diff --git a/rt/html/Elements/BevelBoxRaisedStart b/rt/html/Elements/BevelBoxRaisedStart
deleted file mode 100644
index 6c5a613..0000000
--- a/rt/html/Elements/BevelBoxRaisedStart
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table cellspacing=0 cellpadding=0 width=100% height=100%>
- <TR>
- <TD width=100% height=100%>
diff --git a/rt/html/Elements/Callback b/rt/html/Elements/Callback
deleted file mode 100644
index 937e923..0000000
--- a/rt/html/Elements/Callback
+++ /dev/null
@@ -1,90 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%once>
-my %cache;
-</%once>
-<%init>
-$Page = $m->callers(1)->path unless ($Page);
-
-my $CacheKey = "Callback--$Page--$_CallbackName";
-my $callbacks = $cache{$CacheKey} || $m->notes($CacheKey);
-
-if (!$callbacks) {
- my $path = "/Callbacks/*$Page/$_CallbackName";
-
- # Due to API changes after Mason 1.28, we have to check for which
- # version we're running when getting the component roots
- my @roots = map { $_->[1] }
- $HTML::Mason::VERSION <= 1.28
- ? $m->interp->resolver->comp_root_array
- : $m->interp->comp_root_array;
-
- my %seen;
-
- for my $root (@roots) {
- push @$callbacks,
- # Skip backup files, files without a leading package name,
- # and files we've already seen
- grep { !/^\.|~$/
- and $_ ne "/Callbacks/$Page/$_CallbackName"
- and not $seen{$_}++ }
- $m->interp->resolver->glob_path($path, $root);
- }
-
- $m->notes($CacheKey => $callbacks);
- $cache{$Page,$_CallbackName} = $callbacks if !$RT::DevelMode;
-}
-
-my @rv;
-foreach my $comp (sort @$callbacks) {
- push @rv, $m->comp($comp, %ARGS);
-}
-return @rv;
-</%init>
-<%args>
-$_CallbackName => 'Default'
-$Page => undef
-</%args>
diff --git a/rt/html/Elements/Checkbox b/rt/html/Elements/Checkbox
deleted file mode 100644
index f2256fb..0000000
--- a/rt/html/Elements/Checkbox
+++ /dev/null
@@ -1,61 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<INPUT TYPE="Checkbox" NAME="<%$Name%>" value="1" <%$IsChecked%>>
-
-<%ARGS>
-$Name => undef
-$Default => undef
-$True => undef
-$False => undef
-$IsChecked => undef
-</%ARGS>
-
-<%INIT>
-$IsChecked =
- ($Default && $Default =~ /checked/i)
- ? " CHECKED " : "";
-1;
-</%INIT>
diff --git a/rt/html/Elements/CollectionAsTable/Header b/rt/html/Elements/CollectionAsTable/Header
deleted file mode 100644
index 9ed4be8..0000000
--- a/rt/html/Elements/CollectionAsTable/Header
+++ /dev/null
@@ -1,123 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-@Format => undef
-$FormatString => undef
-$AllowSorting => undef
-$Order=>undef
-$BaseURL => undef
-$Query => undef
-$Rows => undef
-$Page => undef
-$maxitems => undef
-</%ARGS>
-<TR class="collection-as-table">
-<%perl>
-
-my %generic_query_args = ( Query => $Query, Rows => $Rows, Page => $Page, Format => $FormatString );
-
-my $item = 0;
-foreach my $col (@Format) {
- $item++;
- if ( $col->{title} eq 'NEWLINE' ) {
- while ( $item < $maxitems ) {
- $m->out(qq{<th class="collection-as-table">&nbsp;</th>\n});
- $item++;
- }
-
- $item = 0;
- $m->out(qq{</TR>\n<TR class="collection-as-table">});
- }
- else {
- $m->out('<TH class="collection-as-table">');
- my $title = $col->{title};
- $title =~ s/^__(.*)__$/$1/o;
- $title = (
- $m->comp(
- '/Elements/RT__Ticket/ColumnMap',
- Name => $title,
- Attr => 'title'
- )
- || $title
- );
- if (
- $AllowSorting
- && $col->{'attribute'}
- && $m->comp(
- '/Elements/RT__Ticket/ColumnMap',
- Name => $col->{'attribute'},
- Attr => 'attribute'
- )
- )
- {
-
- $m->out(
- '<a href="' . $BaseURL
- . $m->comp(
- '/Elements/QueryString',
- %generic_query_args,
- OrderBy => (
- $m->comp(
- '/Elements/RT__Ticket/ColumnMap',
- Name => $col->{'attribute'},
- Attr => 'attribute'
- )
- || $col->{'attribute'}
- ),
- Order => ( $ARGS{'Order'} eq 'ASC' ? 'DESC' : 'ASC' )
- )
- . '">'
- . loc($title) . '</a>'
- );
- }
- else {
- $m->out( loc($title) );
- }
- $m->out('</TH>');
- }
-}
-</%perl>
-</TR>
diff --git a/rt/html/Elements/CollectionAsTable/ParseFormat b/rt/html/Elements/CollectionAsTable/ParseFormat
deleted file mode 100644
index 57434ef..0000000
--- a/rt/html/Elements/CollectionAsTable/ParseFormat
+++ /dev/null
@@ -1,102 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Format
-</%ARGS>
-
-<%init>
-use Regexp::Common;
-my @Columns;
-
-while ($Format =~ /($RE{delimited}{-delim=>qq{\'"}}|[{}\w.]+)/go) {
- my $col = $1;
-
- if ($col =~ /^$RE{quoted}$/o) {
- substr($col,0,1) = "";
- substr($col,-1,1) = "";
- }
-
- my $colref;
-
- if ( $col =~ s!/STYLE:([^/]+)!!io ) {
- $colref->{'style'} = $1;
- }
- if ( $col =~ s!/CLASS:([^/]+)!!io ) {
- $colref->{'class'} = $1;
- }
- if ( $col =~ s!/TITLE:([^/]+)!!io ) {
- $colref->{'title'} = $1;
- }
- if ( $col =~ s!/ALIGN:([^\/]+)!!io ) {
- $colref->{'align'} = $1;
- }
- if ( $col =~ /__(.*?)__/gio ) {
- my @subcols;
- while ( $col =~ s/^(.*?)__(.*?)__//o ) {
- push ( @subcols, $1 ) if ($1);
- push ( @subcols, "__$2__" );
- $colref->{'attribute'} = $2;
- }
- push ( @subcols, $col );
- @{ $colref->{'output'} } = @subcols;
- }
- else {
- @{ $colref->{'output'} } = ( "__" . $col . "__" );
- $colref->{'attribute'} = $col;
- }
-
- if ( !$colref->{'title'} && grep { /^__(.*?)__$/io }
- @{ $colref->{'output'} } )
- {
- $colref->{'title'} = $1;
- $colref->{'attribute'} = $1;
- }
-
-
- push @Columns, $colref;
-}
- return(@Columns);
-</%init>
diff --git a/rt/html/Elements/CollectionAsTable/Row b/rt/html/Elements/CollectionAsTable/Row
deleted file mode 100644
index 3316bc0..0000000
--- a/rt/html/Elements/CollectionAsTable/Row
+++ /dev/null
@@ -1,111 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$i => undef
-@Format => undef
-$record => undef
-$maxitems => undef
-$Depth => undef
-$Warning => undef
-</%ARGS>
-
-<%PERL>
-$m->out('<TR class="' . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' ) . '" >' );
-my $item;
-foreach my $column (@Format) {
- if ( $column->{title} eq 'NEWLINE' ) {
- while ( $item < $maxitems ) {
- $m->out(qq{<td class="collection-as-table">&nbsp;</td>\n});
- $item++;
- }
- $item = 0;
- $m->out('</TR>');
- $m->out('<TR class="'
- . ( $Warning ? 'warnline' : $i % 2 ? 'oddline' : 'evenline' )
- . '" >' );
- next;
- }
- $item++;
- $m->out('<td class="collection-as-table" ');
- $m->out( 'align="' . $column->{align} . '"' ) if ( $column->{align} );
- $m->out('>');
- foreach my $subcol ( @{ $column->{output} } ) {
- if ( $subcol =~ /^__(.*?)__$/o ) {
- my $col = $1;
- my $value = $m->comp(
- '/Elements/RT__Ticket/ColumnMap',
- Name => $col,
- Attr => 'value'
- );
- my @out;
-
- if ( $value && ref($value) ) {
-
- # All HTML snippets are returned by the callback function
- # as scalar references. Data fetched from the objects are
- # plain scalars, and needs to be escaped properly.
- @out =
- map {
- ref($_) ? $$_ : $m->interp->apply_escapes( $_ => 'h' )
- } &{$value}( $record, $i )
- ;
- }
- else {
-
- # Simple value; just escape it.
- @out = $m->interp->apply_escapes( $value => 'h' );
- }
- s/\n/<br>/gs for @out;
- $m->out( @out );
- }
- else {
- $m->out($subcol);
- }
- }
- $m->out('</td>');
-}
-$m->out('</TR>');
-</%PERL>
diff --git a/rt/html/Elements/CreateTicket b/rt/html/Elements/CreateTicket
deleted file mode 100644
index bd60bbd..0000000
--- a/rt/html/Elements/CreateTicket
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<FORM ACTION="<% $RT::WebPath %>/Ticket/Create.html" NAME="CreateTicketInQueue">
-<&|/l, $m->scomp('/Elements/SelectNewTicketQueue')&><input type="submit" value="New ticket in">&nbsp;[_1]</&>
-</FORM>
diff --git a/rt/html/Elements/EditCustomField b/rt/html/Elements/EditCustomField
deleted file mode 100644
index d2398c9..0000000
--- a/rt/html/Elements/EditCustomField
+++ /dev/null
@@ -1,89 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-my $Values;
-if ($Object) {
- $Values = $Object->CustomFieldValues($CustomField->id);
- $Values->Columns( qw( id CustomField ObjectType ObjectId Disabled Content ContentType ContentEncoding ) );
- $NamePrefix ||= join('-', 'Object', ref($Object), $Object->Id, 'CustomField', '');
-}
-my $Type = $CustomField->Type;
-
-return unless ($Type); # if we can't see the type, all hell will break loose.
-
-my $MaxValues = $CustomField->MaxValues;
-if ($MaxValues == 1 and $Object and $Values) {
- # what exactly is this doing? Without the "unless" it breaks RTFM
- # transaction extraction into articles.
- $Default = ($Values->First ? $Values->First->Content : '') unless $Default;
- $Values->GotoFirstItem;
-}
-# The "Magic" hidden input causes RT to know that we were trying to edit the field, even if
-# we don't see a value later, since browsers aren't compelled to submit empty form fields
-$m->out("\n".'<input type="hidden" name="'.$NamePrefix.$CustomField->Id.'-Values-Magic" value="1">'."\n");
-
-return $m->comp(
- "EditCustomField$Type",
- %ARGS,
- Rows => $Rows,
- Cols => $Cols,
- Default => $Default,
- Object => $Object,
- Values => $Values,
- MaxValues => $MaxValues,
- Multiple => ($MaxValues != 1),
- NamePrefix => $NamePrefix,
- CustomField => $CustomField,
-);
-</%INIT>
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Rows => 5
-$Cols => 15
-$Default => undef
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldBinary b/rt/html/Elements/EditCustomFieldBinary
deleted file mode 100644
index 0028256..0000000
--- a/rt/html/Elements/EditCustomFieldBinary
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% while ($Values and my $value = $Values->Next ) {
-%# XXX - let user download the file(s) here?
-<input type="checkbox" name="<%$NamePrefix%><%$CustomField->Id%>-DeleteValueIds" value="<% $value->Id %>"><a href="<%$RT::WebPath%>/Download/CustomFieldValue/<% $value->Id %>/<% $value->Content %>"><% $value->Content %></a><br>
-% }
-% if (!$MaxValues or !$Values or $Values->Count < $MaxValues) {
-<input type="file" name="<%$NamePrefix%><%$CustomField->Id%>-Upload">
-% }
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$MaxValues => undef
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldFreeform b/rt/html/Elements/EditCustomFieldFreeform
deleted file mode 100644
index c097ee0..0000000
--- a/rt/html/Elements/EditCustomFieldFreeform
+++ /dev/null
@@ -1,68 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($Multiple) {
-<textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><%$Default%></textarea>
-% } else {
-<input name="<%$NamePrefix%><%$CustomField->Id%>-Value" size="<%$Cols%>" value="<%$Default ? $Default : ''%>">
-% }
-<%INIT>
-if ($Multiple and $Values) {
- $Default = '';
- while (my $value = $Values->Next ) {
- $Default .= $value->Content."\n";
- }
-}
-</%INIT>
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$Multiple => undef
-$Cols
-$Rows
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldImage b/rt/html/Elements/EditCustomFieldImage
deleted file mode 100644
index b378cea..0000000
--- a/rt/html/Elements/EditCustomFieldImage
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% while ($Values and my $value = $Values->Next ) {
-<input type="checkbox" name="<%$NamePrefix%><%$CustomField->Id%>-DeleteValueIds" value="<% $value->Id %>"><& ShowCustomFieldImage, Object => $value &>
-<br>
-% }
-% if (!$MaxValues or !$Values or $Values->Count < $MaxValues) {
-<input type="file" name="<%$NamePrefix%><%$CustomField->Id%>-Upload">
-% }
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$MaxValues => undef
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldSelect b/rt/html/Elements/EditCustomFieldSelect
deleted file mode 100644
index db33a68..0000000
--- a/rt/html/Elements/EditCustomFieldSelect
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
- <select name="<%$NamePrefix%><%$CustomField->Id%>-Values"
- size="<%$Rows%>"
- <% $Multiple && 'MULTIPLE' %>>
-% my $selected;
-% my $CFVs = $CustomField->Values;
-% while ($CFVs and my $value = $CFVs->Next ) {
- <option value="<%$value->Name%>"
-% if ($Values) {
- <% $Values->HasEntry($value->Name) && ($selected = 1) && 'SELECTED' %>
-% } elsif ($Default) {
- <% ($Default eq $value->Name) && ($selected = 1) && 'SELECTED' %>
-% }
- ><% $value->Name%></option>
-% }
- <option value="" <% !$selected && 'SELECTED' %>><&|/l&>(no value)</&></option>
- </select>
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$Multiple => 0
-$Cols
-$Rows
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldText b/rt/html/Elements/EditCustomFieldText
deleted file mode 100644
index 1aac328..0000000
--- a/rt/html/Elements/EditCustomFieldText
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% while ($Values and my $value = $Values->Next ) {
-<textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><% $value->Content %></textarea><br>
-% }
-% if (!$MaxValues or !$Values or $Values->Count < $MaxValues) {
-<textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><% $Default %></textarea>
-% }
-<%INIT>
-# XXX - MultiValue textarea is for now outlawed.
-$MaxValues = 1;
-</%INIT>
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$MaxValues => undef
-$Cols
-$Rows
-</%ARGS>
diff --git a/rt/html/Elements/EditCustomFieldWikitext b/rt/html/Elements/EditCustomFieldWikitext
deleted file mode 100644
index 1aac328..0000000
--- a/rt/html/Elements/EditCustomFieldWikitext
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% while ($Values and my $value = $Values->Next ) {
-<textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><% $value->Content %></textarea><br>
-% }
-% if (!$MaxValues or !$Values or $Values->Count < $MaxValues) {
-<textarea cols=<%$Cols%> rows=<%$Rows%> name="<%$NamePrefix%><%$CustomField->Id%>-Values"><% $Default %></textarea>
-% }
-<%INIT>
-# XXX - MultiValue textarea is for now outlawed.
-$MaxValues = 1;
-</%INIT>
-<%ARGS>
-$Object => undef
-$CustomField => undef
-$NamePrefix => undef
-$Default => undef
-$Values => undef
-$MaxValues => undef
-$Cols
-$Rows
-</%ARGS>
diff --git a/rt/html/Elements/EditLinks b/rt/html/Elements/EditLinks
deleted file mode 100755
index 68c08dd..0000000
--- a/rt/html/Elements/EditLinks
+++ /dev/null
@@ -1,174 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE width=100%>
- <TR>
- <TD VALIGN=TOP WIDTH=50%>
- <h3><&|/l&>Current Links</&></h3>
-
-<table>
- <tr>
- <td></td>
- <td><i><&|/l&>(Check box to delete)</&></i></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Depends on</&>:</td>
- <td class="value">
-% while (my $link = $Object->DependsOn->Next) {
- <INPUT TYPE=CHECKBOX NAME="DeleteLink--<%$link->Type%>-<%$link->Target%>" value="1">
- <& ShowLink, URI => $link->TargetURI &><br>
-% }
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Depended on by</&>:</td>
- <td class="value">
-% while (my $link = $Object->DependedOnBy->Next) {
-% my $member = $link->BaseObj;
- <INPUT TYPE=CHECKBOX NAME="DeleteLink-<%$link->Base%>-<%$link->Type%>-" value="1">
- <& ShowLink, URI => $link->BaseURI &><br>
-% }
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Parents</&>:</td>
- <td class="value">
-% while (my $link = $Object->MemberOf->Next) {
- <INPUT TYPE=CHECKBOX NAME="DeleteLink--<%$link->Type%>-<%$link->Target%>" value="1">
- <& ShowLink, URI => $link->TargetURI &><br>
-% }
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Children</&>:</td>
- <td class="value">
-% while (my $link = $Object->Members->Next) {
- <INPUT TYPE=CHECKBOX NAME="DeleteLink-<%$link->Base%>-<%$link->Type%>-" value="1">
- <& ShowLink, URI => $link->BaseURI &><br>
-% }
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Refers to</&>:</td>
- <td class="value">
-% while (my $link = $Object->RefersTo->Next) {
- <INPUT TYPE=CHECKBOX NAME="DeleteLink--<%$link->Type%>-<%$link->Target%>" value="1">
- <& ShowLink, URI => $link->TargetURI &><br>
-%}
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Referred to by</&>:</td>
- <td class="value">
-% while (my $link = $Object->ReferredToBy->Next) {
- <INPUT TYPE=CHECKBOX NAME="DeleteLink-<%$link->Base%>-<%$link->Type%>-" value="1">
- <& ShowLink, URI => $link->BaseURI &><br>
-% }
- </td>
- </tr>
-</table>
-
-</TD>
-<TD VALIGN=TOP>
-<h3><&|/l&>New Links</&></h3>
-% if (ref($Object) eq 'RT::Ticket') {
-<i><&|/l&>Enter tickets or URIs to link tickets to. Separate multiple entries with spaces.</&>
-<& /Elements/Callback, _CallbackName => 'ExtraLinkInstructions' &>
-</i><br>
-% } elsif (ref($Object) eq 'RT::Queue') {
-<i><&|/l&>Enter queues or URIs to link queues to. Separate multiple entries with spaces.</&>
-</i><br>
-% } else {
-<i><&|/l&>Enter objects or URIs to link objects to. Separate multiple entries with spaces.</&></i><br>
-% }
-<TABLE>
-% if ($Merge) {
- <TR>
- <TD class="label"><&|/l&>Merge into</&>:</TD>
- <TD class="entry"><input name="<%$id%>-MergeInto"> <i><&|/l&>(only one ticket)</&></i></TD>
- </TR>
-% }
- <TR>
- <TD class="label"><&|/l&>Depends on</&>:</TD>
- <TD class="entry"><input name="<%$id%>-DependsOn"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Depended on by</&>:</TD>
- <TD class="entry"><input name="DependsOn-<%$id%>"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Parents</&>:</TD>
- <TD class="entry"><input name="<%$id%>-MemberOf"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Children</&>:</TD>
- <TD class="entry"> <input name="MemberOf-<%$id%>"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Refers to</&>:</TD>
- <TD class="entry"><input name="<%$id%>-RefersTo"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Referred to by</&>:</TD>
- <TD class="entry"> <input name="RefersTo-<%$id%>"></TD>
- </TR>
-</TABLE>
-</TD>
-</TR>
-</TABLE>
-
-<%INIT>
-my $id;
-if ($Object && $Object->Id) {
- $id = $Object->Id;
-} else {
- $id = 'new';
-}
-</%INIT>
-
-<%ARGS>
-$Object => undef
-$Merge => 0
-</%ARGS>
diff --git a/rt/html/Elements/Error b/rt/html/Elements/Error
deleted file mode 100644
index bc5a188..0000000
--- a/rt/html/Elements/Error
+++ /dev/null
@@ -1,86 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Callback, %ARGS, error => $error &>
-<& /Elements/Header, Code => $Code, Why => $Why &>
-<& /Elements/Tabs &>
-<& /Elements/TitleBoxStart, class=> "error", title => $Title &>
-<%$Why%>
-<br>
-<font size=-1>
-<%$Details%>
-</font>
-<& /Elements/TitleBoxEnd &>
-
-<%cleanup>
-$m->comp('/Elements/Footer');
-$m->abort();
-</%cleanup>
-
-<%args>
-$Code => undef
-$Details => undef
-$Title => loc("RT Error")
-$Why => loc("the calling component did not specify why")
-</%args>
-
-<%INIT>
-my $error = "WebRT: $Why ($Details)";
-
-# TODO: Log::Dispatch isn't UTF-8 safe. Autrijus needs to talk to dave rolsky about getting this fixed
-if ($] >= 5.007001) {
- require Encode;
- Encode::_utf8_off($error);
-}
-
-$RT::Logger->error($error);
-
-if ( $session{'SessionType'} eq 'REST' ) {
- $r->content_type('text/plain');
- $m->out( "Error: " . $Why . "\n" );
- $m->out( $Details . "\n" );
- $m->abort();
-}
-</%INIT>
diff --git a/rt/html/Elements/Footer b/rt/html/Elements/Footer
deleted file mode 100644
index 78a116f..0000000
--- a/rt/html/Elements/Footer
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($Menu) {
-</td>
-</tr>
-<tr>
-<td>
-% }
-<& /Elements/Callback, %ARGS &>
-<!--
-<div class="bpscredits">
-<&|/l, '&#187;&#124;&#171;', $RT::VERSION, '2005', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>', &>[_1] RT [_2] Copyright 1996-[_3] [_4].</&><br>
-% if (!$Menu) {
-<&|/l&>Distributed under version 2 <a href="http://www.gnu.org/copyleft/gpl.html"> of the GNU GPL.</a></&><br>
-<&|/l, '<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>' &>To inquire about support, training, custom development or licensing, please contact [_1].</&><br>
-% }
-</div>
--->
-% if ($Debug >= 2 ) {
-% require Data::Dumper;
-% my $d = Data::Dumper->new([\%ARGS], [qw(%ARGS)]);
-<pre>
-<%$d->Dump() %>
-</pre>
-% }
-<div class="page-stats"><&|/l&>Time to display</&>: <%Time::HiRes::tv_interval( $m->{'rt_base_time'} )%></div>
-% if ($Menu) {
-</TD>
-</TR>
-</TABLE>
-</TD>
-</TR>
-</TABLE>
-% }
-</BODY>
-</HTML>
-% $m->abort();
-
-<%ARGS>
-$Debug => 0
-$Menu => 1
-</%ARGS>
diff --git a/rt/html/Elements/FreesideInvoiceSearch b/rt/html/Elements/FreesideInvoiceSearch
deleted file mode 100644
index 3842b2f..0000000
--- a/rt/html/Elements/FreesideInvoiceSearch
+++ /dev/null
@@ -1,20 +0,0 @@
-% if ( $FS::CurrentUser::CurrentUser->access_right('View invoices') ) {
-
- <form action="<% $RT::URI::freeside::URL %>/search/cust_bill.html" STYLE="margin:0">
- <SCRIPT TYPE="text/javascript">
- function clearhint_search_invoice (what) {
- if ( what.value == '(inv #)' )
- what.value = '';
- }
- </SCRIPT>
- <input name="invnum" accesskey="0" VALUE="(inv #)" SIZE="4" onFocus="clearhint_search_invoice(this);" onClick="clearhint_search_invoice(this);" STYLE="text-align:right; margin-bottom:1px; font-family: Arial, Verdana, Helvetica, sans-serif;">
-
-% if ( $FS::CurrentUser::CurrentUser->access_right('List invoices') ) {
- <A HREF="<% $RT::URI::freeside::URL %>search/report_cust_bill.html" STYLE="color: #ffffff; font-size: 70%; font-weight:normal">Advanced</A>
-% }
- <BR>
-
- <input type="submit" value="<&|/l&>Search invoices</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%">
- </form>
-
-% }
diff --git a/rt/html/Elements/FreesideNewCust b/rt/html/Elements/FreesideNewCust
deleted file mode 100644
index c752437..0000000
--- a/rt/html/Elements/FreesideNewCust
+++ /dev/null
@@ -1,3 +0,0 @@
-<form action="<% $RT::URI::freeside::URL %>/edit/cust_main.cgi" STYLE="margin:0">
-<INPUT TYPE="submit" VALUE="<&|/l&>New customer</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;">&nbsp;
-</FORM>
diff --git a/rt/html/Elements/FreesideSearch b/rt/html/Elements/FreesideSearch
deleted file mode 100644
index 99b8da0..0000000
--- a/rt/html/Elements/FreesideSearch
+++ /dev/null
@@ -1,11 +0,0 @@
-<form action="<% $RT::URI::freeside::URL %>/search/cust_main.cgi" STYLE="margin:0">
- <SCRIPT TYPE="text/javascript">
- function clearhint_search_cust (what) {
- if ( what.value == '(cust #, name, company or phone)' )
- what.value = '';
- }
- </SCRIPT>
-<input name="search_cust" accesskey="0" VALUE="(cust #, name, company or phone)" SIZE="28" onFocus="clearhint_search_cust(this);" onClick="clearhint_search_cust(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR>
-<A HREF="<% $RT::URI::freeside::URL %>/search/cust_main.html" STYLE="color: #000000; font-size: 70%; font-weight:normal">Advanced</A>
-<input type="submit" value="<&|/l&>Search customers</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%">
-</form>
diff --git a/rt/html/Elements/FreesideSvcSearch b/rt/html/Elements/FreesideSvcSearch
deleted file mode 100644
index e9ad564..0000000
--- a/rt/html/Elements/FreesideSvcSearch
+++ /dev/null
@@ -1,11 +0,0 @@
-<form action="<% $RT::URI::freeside::URL %>/search/svc_Smart.html" STYLE="margin:0">
- <SCRIPT TYPE="text/javascript">
- function clearhint_search_svc (what) {
- if ( what.value == '(user, user@domain or domain)' )
- what.value = '';
- }
- </SCRIPT>
-<input name="search_svc" accesskey="0" VALUE="(user, user@domain or domain)" SIZE="26" onFocus="clearhint_search_svc(this);" onClick="clearhint_search_svc(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR>
- <A HREF="<% $RT::URI::freeside::URL %>search/svc_Smarter.html" STYLE="color: #000000; font-size: 70%; font-weight:normal">Advanced</A>
-<input type="submit" value="<&|/l&>Search services</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%">
-</form>
diff --git a/rt/html/Elements/GotoTicket b/rt/html/Elements/GotoTicket
deleted file mode 100644
index 869d57e..0000000
--- a/rt/html/Elements/GotoTicket
+++ /dev/null
@@ -1,46 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<FORM ACTION="<%$RT::WebPath%>/Ticket/Display.html"><input type=submit value="<&|/l&>Goto ticket</&>">&nbsp;<input size=5 name=id accesskey="0"></FORM>
diff --git a/rt/html/Elements/Header b/rt/html/Elements/Header
deleted file mode 100644
index c1bc92a..0000000
--- a/rt/html/Elements/Header
+++ /dev/null
@@ -1,143 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%#<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<HEAD>
-<TITLE><%$Title%></TITLE>
-% if ($Refresh > 0) {
-<META HTTP-EQUIV="REFRESH" CONTENT="<%$Refresh%>">
-% }
-
-<link rel="shortcut icon" href="<%$RT::WebImagesURL%>/favicon.png" type="image/png">
-<link rel="stylesheet" href="<%$RT::WebPath%>/NoAuth/webrt.css" type="text/css">
-<script>
-function hideshow(num) {
- idstring = "element-" + num;
- chunk = document.getElementById(idstring);
- if ( chunk.style.display == "none") {
- chunk.style.display = chunk.style.tag;
- } else {
- chunk.style.tag = chunk.style.display;
- chunk.style.display = "none";
- }
-}
-</script>
-<& /Elements/Callback, _CallbackName => 'Head', %ARGS &>
-</HEAD>
-<BODY BACKGROUND="<% $RT::URI::freeside::URL %>/images/background-cheat.png" STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0"
-% if ($Focus) {
-ONLOAD="
- var tmp = (document.getElementsByName('<% $Focus %>'));
- if (tmp.length > 0) tmp[tmp.length-1].focus();
-"
-% }
->
-<table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF" STYLE="padding-left:0; padding-right:4">
- <tr>
- <td colspan=2 rowspan=2><img border=0 alt="freeside" src="<%$RT::WebImagesURL%>/small-logo.png" width="92" height="62"></td>
- <td align="left" rowspan=2><font size=6><% &RT::URI::freeside::FreesideGetConfig('company_name') || 'ExampleCo' %></font></td>
- <td align="right" valign="top">
-% if ($session{'CurrentUser'} && $session{'CurrentUser'}->Id && $LoggedIn) {
-<SPAN STYLE="display: none"><A HREF="#skipnav"><&|/l&>Skip Menu</&></A> |</SPAN>
-<&|/l, "<b>".$session{'CurrentUser'}->Name."</b>" &>Logged in as [_1]</&>
-<BR>
-%if ($session{'CurrentUser'}->HasRight( Right => 'ModifySelf', Object => $RT::System )) {
-<A HREF="<%$RT::WebPath%><% $Prefs %>" ><&|/l&>Preferences</&></A>
-% }
-<& /Elements/Callback, %ARGS &>
-% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
-| <A HREF="<%$RT::WebPath%>/NoAuth/Logout.html<%$URL ? "?URL=".$URL : ''%>"><&|/l&>Logout</&></a>
-% }
-% } else {
-<&|/l&>Not logged in.</&>
-% }
- </td>
-
- </tr>
- <tr>
-
- <td align=right valign=bottom>
- <table>
- <tr>
- <td align=right>
- <FONT SIZE="-3">
- <A HREF="http://www.sisd.com/freeside">Freeside</A>&nbsp;v<% &RT::URI::freeside::FreesideVersion() %><BR>
- <A HREF="../docs/">Documentation</A><BR>
- </FONT>
- </td>
- <td bgcolor=#000000></td>
- <td align=left>
- <FONT SIZE="-3">
- <A HREF="http://www.bestpractical.com/rt">RT</A>&nbsp;v<% $RT::VERSION %><BR>
- <A HREF="http://wiki.bestpractical.com/">Documentation</A><BR>
- </FONT>
- </td>
-
- </tr>
- </table>
- </td>
-
- </tr>
-</table>
-<%INIT>
-
-$r->headers_out->{'Pragma'} = 'no-cache';
-$r->headers_out->{'Cache-control'} = 'no-cache';
-require RT::URI::freeside;
-</%INIT>
-
-<%ARGS>
-$Prefs => '/User/Prefs.html'
-$Focus => 'focus'
-$Title => 'RT'
-$Code => undef
-$Refresh => 0
-$Why => undef
-$BgColor => '#ffffff'
-$ShowBar => 1
-$LoggedIn => 1
-$URL => undef
-</%ARGS>
diff --git a/rt/html/Elements/ListActions b/rt/html/Elements/ListActions
deleted file mode 100644
index 8433d17..0000000
--- a/rt/html/Elements/ListActions
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($actions[0] ) {
-<& /Elements/TitleBoxStart, title => loc('Results') &>
-<UL>
-% foreach my $action (@actions) {
-% next unless ($action);
-% my $skip = 0;
-% $m->comp('/Elements/Callback', _CallbackName => 'ModifyRow', row => \$action, skip => \$skip, %ARGS);
-% next if $skip;
-<LI><%$action%></LI>
-% }
-</UL>
-<& /Elements/TitleBoxEnd &>
-<BR>
-% }
-<%init>
-@actions = grep (/./,@actions);
-</%init>
-<%ARGS>
-@actions => undef
-</%ARGS>
diff --git a/rt/html/Elements/Login b/rt/html/Elements/Login
deleted file mode 100644
index 1d4bfd5..0000000
--- a/rt/html/Elements/Login
+++ /dev/null
@@ -1,122 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-if ($m->request_comp->path =~ '^/REST/\d+\.\d+/') {
- $r->content_type("text/plain");
- $m->error_format("text");
- $m->out("RT/$RT::VERSION 401 Credentials required\n");
- $m->out("\n$Error\n") if $Error;
- $m->abort;
-}
-</%INIT>
-
-<& /Elements/Callback, %ARGS, _CallbackName => 'Header' &>
-<& /Elements/Header, Title => loc('Login'), Focus => 'user' &>
-
-<DIV ALIGN=CENTER>
-% if ($Error) {
-<& /Elements/TitleBoxStart, title => loc('Error') &>
-<% $Error %>
-<& /Elements/TitleBoxEnd &>
-% }
-<BR>
-<& /Elements/TitleBoxStart, width=> "40%", titleright => loc("RT [_1]", $RT::VERSION), title => loc('Login') ,
-contentbg=>"#cccccc" &>
-
-% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
-<FORM id="login" name="login" METHOD=POST ACTION="<% (UNIVERSAL::can($r, 'uri') && ($r->uri) =~ m!.*/(.*)!) %>" >
-<TABLE BORDER=0 WIDTH=100%>
-<TR ALIGN=RIGHT>
-<TD ALIGN=RIGHT><&|/l&>Username</&>:</TD><TD ALIGN=LEFT><input name=user value="<%$user%>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Password</&>:</TD><TD ALIGN=LEFT><input type=password name=pass></TD></TR>
-<TR><TD colspan=2 align=right>
-<input type=submit Value="<&|/l&>Login</&>">
-</TD></TR>
-</TABLE>
-
-%# Give callbacks a chance to add more control elements
-<& /Elements/Callback, %ARGS &>
-
-<&/Elements/TitleBoxEnd&>
-% # From mason 1.0.1 forward, this doesn't work. in fact, it breaks things.
-% # But on Mason 1.15 it's fixed again, so we still use it.
-% # The code below iterates through everything in the passed in arguments
-% # Preserving all the old parameters
-% # This would be easier, except mason is 'smart' and calls multiple values
-% # arrays rather than multiple hash keys
-% my $key; my $val;
-% foreach $key (keys %ARGS) {
-% if (($key ne 'user') and ($key ne 'pass')) {
-% if (ref($ARGS{$key}) =~ /ARRAY/) {
-% foreach $val (@{$ARGS{$key}}) {
-<input type=hidden name="<%$key %>" value="<% $val %>">
-% }
-% }
-% else {
-<input type="hidden" name="<% $key %>" value="<% $ARGS{$key} %>">
-% }
-% }
-% }
-</FORM>
-% }
-</DIV>
-
-<BR>
-<!-- TODO: not yet implemented
-If you've forgotten your username or password, RT can <A
-href="/NoAuth/Reminder.html">send you a reminder</a>.
--->
-<BR>
-<BR>
-<BR>
-<HR>
-<& /Elements/Footer, Menu => 0 &>
-<%ARGS>
-$user => ""
-$pass => undef
-$goto => undef
-$Error => undef
-</%ARGS>
diff --git a/rt/html/Elements/Menu b/rt/html/Elements/Menu
deleted file mode 100644
index 398e3ab..0000000
--- a/rt/html/Elements/Menu
+++ /dev/null
@@ -1,108 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# font size depends on level
-% if ($level ge 3) {
-% $size = $basesize-(6);
-% } elsif ($level gt 0) {
-% $size = $basesize-($level * 2);
-% $padding = 2;
-% }
-% else {
-% $size = $basesize;
-% $padding = 5;
-% }
-<ul class="topnav" >
-% my $sep=0;
-% my $accesskey="1";
-% foreach $tab (sort keys %{$toptabs}) {
-% my $current = $current_toptab || "";
-% my $path = $toptabs->{$tab}->{'path'} || "";
-% $path =~ s#/index.html$##gi;
-% $current =~ s#/index.html$##gi;
-% if ( $path eq $current) {
-% $class="currenttopnav"
-% } else {
-% $class="topnav"
-% }
-% my $style="";
-% if ($sep) {
-% $style="minor";
-% } elsif ($level == 0 ) {
-% $style="major";
-% }
-% if ($toptabs->{$tab}->{'separator'}) {
-% $sep=1;
-% } else {
-% $sep=0;
-% }
-% my $url = $toptabs->{$tab}->{'path'} =~ /^https?:/i ? $toptabs->{$tab}->{'path'} : $RT::WebPath . "/" . $toptabs->{$tab}->{'path'};
-<li class="<%$class%>-<%$level%>-<%$style%>"><A HREF="<% $url %>" class="<%$class%>-<%$level%>"
-<%($class eq 'currenttopnav') ? "name='focus'" : ""|n %>
-<% !$level && "accesskey='".$accesskey++."'" |n%>><% $toptabs->{$tab}->{'title'}%></A>
-%# Second-level items
-%# if ($current_toptab eq $toptabs->{$tab}->{'path'}) {
-%# commented out by jesse on 4 jan 2003 so that tickets/search and ticket/# can
-%# both have menu items
-% if ($toptabs->{$tab}->{'subtabs'}) {
- <& /Elements/Menu, level => $level+1,
- current_toptab => $toptabs->{$tab}->{'current_subtab'},
- toptabs => $toptabs->{$tab}->{'subtabs'} &></li>
-% }
-%# }
-% }
-</ul>
-
-<%INIT>
-my ($tab, $subtab, $class, $size, $padding);
-my $basesize=16;
-
-</%INIT>
-
-<%ARGS>
-$current_toptab => ""
-$toptabs => undef
-$level => 0
-</%ARGS>
diff --git a/rt/html/Elements/MessageBox b/rt/html/Elements/MessageBox
deleted file mode 100644
index dd48bec..0000000
--- a/rt/html/Elements/MessageBox
+++ /dev/null
@@ -1,72 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<textarea class="messagebox" COLS=<%$Width%> ROWS=<%$Height%> WRAP=<%$Wrap%> NAME="<%$Name%>"><& /Elements/Callback, %ARGS &><% $Default %><%$message%><%$IncludeSignature ? $signature : ''%></textarea>
-<%INIT>
-
-my ($message);
-
-if ($QuoteTransaction) {
- my $transaction=RT::Transaction->new($session{'CurrentUser'});
- $transaction->Load($QuoteTransaction);
- $message=$transaction->Content(Quote => 1);
-}
-
-my $signature = '';
-if ($IncludeSignature && $session{'CurrentUser'}->UserObj->Signature) {
- $signature = "-- \n".$session{'CurrentUser'}->UserObj->Signature;
-}
-
-</%INIT>
-<%ARGS>
-$QuoteTransaction => undef
-$Name => 'Content'
-$Default => ''
-$Width => $RT::MessageBoxWidth || 72
-$Height => $RT::MessageBoxHeight || 15
-$Wrap => $RT::MessageBoxWrap || 'HARD'
-$IncludeSignature => 1
-</%ARGS>
-
diff --git a/rt/html/Elements/MyRequests b/rt/html/Elements/MyRequests
deleted file mode 100644
index 172b4a4..0000000
--- a/rt/html/Elements/MyRequests
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<&|/Elements/TitleBox,
- title => loc("[_1] newest unowned tickets", $rows),
- title_href => "Search/Results.html".$QueryString &>
-<& /Elements/TicketList,
- Format => "'<a href=\"$RT::WebPath/Ticket/Display.html?id=__id__\">__id__</a>/TITLE:#', '<a href=\"$RT::WebPath/Ticket/Display.html?id=__id__\">__Subject__</a>/TITLE:Subject', QueueName, ExtendedStatus, CreatedRelative, '<A HREF=\"$RT::WebPath/Ticket/Display.html?Action=Take&id=__id__\">".loc('Take')."</a>/TITLE:&nbsp;' ",
- Query => $Query,
- OrderBy => 'Created',
- Order => 'DESC',
- ShowNavigation => 0,
- Rows => $rows
-
- &>
-</&>
-<%init>
-my $rows = $RT::MyRequestsLength;
-
-my $Query = "Owner = 'Nobody' AND ( Status = 'new' OR Status = 'open')";
-
-my $QueryString = "";
-$QueryString = '?' . $m->comp('/Elements/QueryString',
- Query => $Query,
- Order => 'DESC',
- OrderBy => 'Priority') if ($Query);
-
-</%init>
diff --git a/rt/html/Elements/MyTickets b/rt/html/Elements/MyTickets
deleted file mode 100644
index cf5225a..0000000
--- a/rt/html/Elements/MyTickets
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<&|/Elements/TitleBox,
- title => loc('[_1] highest priority tickets I own', $rows),
- title_href => "Search/Results.html".$QueryString &>
-<& /Elements/TicketList,
- Format => "'<a href=\"$RT::WebPath/Ticket/Display.html?id=__id__\">__id__</a>/TITLE:#', '<a href=\"$RT::WebPath/Ticket/Display.html?id=__id__\">__Subject__</a>/TITLE:Subject', Priority, QueueName, ExtendedStatus",
-
- Query => $Query,
- OrderBy => 'Priority',
- Order => 'DESC',
- Rows => $rows,
- ShowNavigation => 0
- &>
-</&>
-<%init>
-my $rows = $RT::MyTicketsLength;
-
-my $Query = " Owner = '".$session{'CurrentUser'}->Id."' AND ( Status = 'new' OR Status = 'open')";
-
-my $QueryString = "";
-$QueryString = '?' . $m->comp('/Elements/QueryString',
- Query => $Query,
- Order => 'DESC',
- OrderBy => 'Priority') if ($Query);
-
-</%init>
-
diff --git a/rt/html/Elements/PageLayout b/rt/html/Elements/PageLayout
deleted file mode 100644
index f13ee0d..0000000
--- a/rt/html/Elements/PageLayout
+++ /dev/null
@@ -1,134 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table class="black" border=0 cellspacing=0 cellpadding=0 width="100%">
-<tr>
- <TD colspan=5 WIDTH="100%" STYLE="padding:0"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gradient.png" HEIGHT="13" WIDTH="100%"></TD>
-</tr>
-<tr>
-%# <th class="black" align="left" width=15%><span class="rtname"><%$AppName%></span>
-%# </th>
- <span class="topactions">
-% my $notfirst = 0; foreach my $action (sort keys %{$topactions}) {
- <td class="blackright" ALIGN="right" VALIGN="center">
- <%$topactions->{"$action"}->{'html'} |n %>
- </td>
-% }
- </span>
-</tr>
-</table>
-<table border=0 cellspacing=0 cellpadding=0 width="100%" height="100%">
-<TR>
- <TD BGCOLOR="#000000" STYLE="padding:0" WIDTH="154"></TD>
- <TD STYLE="padding:0" WIDTH="13"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-corner.png"></TD>
- <TD STYLE="padding:0"><IMG BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-top.png" HEIGHT="13" WIDTH="100%"></TD>
-</TR>
-%# Vertical menu
-<TR height="100%">
-<TD valign="top" width="140" class="black">
- <& /Elements/Menu, toptabs => $toptabs, current_toptab => $current_toptab &>
-</TD>
-<TD STYLE="padding:0" HEIGHT="100%" WIDTH=13 VALIGN="top"><IMG WIDTH="13" HEIGHT="100%" BORDER=0 ALT="" SRC="<% $RT::URI::freeside::URL %>/images/black-gray-side.png"></TD>
-<td valign="top">
-<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
-<tr>
- <td class="<% $actions ? 'darkmediumgray' : 'bggray' %>" valign="top">
- <span class="title"><%$title%></span>
-</td>
-</tr>
-<tr>
-<td class="<% $actions ? 'darkmediumgrayright' : 'bggrayright' %>" valign="top">
- <span class="nav">
-% if ($actions) {
-% my @actions;
-% foreach my $action (sort keys %{$actions}) {
-% if ($actions->{"$action"}->{'html'}) {
-% push @actions, $actions->{"$action"}->{'html'};
-% } else {
-% push @actions, qq|<a class="nav" href="|.$RT::WebPath."/".$actions->{$action}->{'path'}.qq|">|.$actions->{$action}->{'title'}."</a>";
-% }
-% }
-%#<% join(" | ", @actions) | n %>
-<% '['. join("] [", @actions). ']&nbsp;' | n %>
-% if ($subactions) {
-% my @actions;
-% foreach my $action (sort keys %{$subactions}) {
-% push @actions, $subactions->{"$action"}->{'html'};
-% }
-<% join(" | ", @actions) | n %>
-% }
-% }
- </span>
- </td>
-</tr>
-<TR valign="top">
-<TD valign="top" width="100%" height="100%" class="mainbody" >
-<& /Elements/Callback, _CallbackName => 'BeforeBody', %ARGS &>
-%$m->flush_buffer(); # we've got the page laid out, let's flush the buffer;
-<%INIT>
-
- foreach my $tab (sort keys %{$toptabs}) {
- if ($current_toptab && $toptabs->{$tab}->{'path'} eq $current_toptab) {
- $toptabs->{$tab}->{"subtabs"} = $tabs;
- $toptabs->{$tab}->{"current_subtab"} = $current_tab;
- }
- }
-
-if (! defined($AppName)) {
- $AppName = loc("RT for [_1]", $RT::rtname);
-}
-
-</%INIT>
-<%ARGS>
-$current_toptab => undef
-$current_tab => undef
-$toptabs => undef
-$topactions => undef
-$tabs => undef
-$actions => undef
-$subactions => undef
-$title => $m->callers(-1)->path
-$AppName => ''
-</%ARGS>
diff --git a/rt/html/Elements/QueryString b/rt/html/Elements/QueryString
deleted file mode 100644
index 7d41f15..0000000
--- a/rt/html/Elements/QueryString
+++ /dev/null
@@ -1,52 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-my @params;
-while ( (my $key, my $value) = each %ARGS ){
- push @params, $key."=".$m->interp->apply_escapes($value,'u');
-}
-return(join('&',@params));
-</%init>
diff --git a/rt/html/Elements/QuickCreate b/rt/html/Elements/QuickCreate
deleted file mode 100644
index 0d2489c..0000000
--- a/rt/html/Elements/QuickCreate
+++ /dev/null
@@ -1,70 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => loc('Quick ticket creation') &>
-<form method="post" action="<%$RT::WebPath%>/index.html">
-<input type="hidden" name="QuickCreate" value="1">
-<table>
-<tr>
-<td>
-<font size="-2"><&|/l&>Subject</&>:<br><input size="15" name="Subject"></font>
-</td>
-<td>
-<font size="-2"><&|/l&>Queue</&>:<br><& /Elements/SelectQueue, Name => 'Queue', ShowNullOption => 0 &></font>
-</td>
-<td>
-<font size="-2"><&|/l&>Owner</&>:<br>
-<select type="select" name="Owner">
-<option value="<%$session{'CurrentUser'}->id%>" SELECTED><%$session{'CurrentUser'}->Name %></option>
-<option value="<%$RT::Nobody->id%>"><%loc('Nobody')%></option>
-</select>
-</font>
-</td>
-</tr>
-%#<tr><td colspan="3"><font size="-2"><textarea cols="50" rows="3"></textarea></font></td></tr>
-</table>
-<div align="right"><input type="submit" value="<%loc('Create')%>"></div>
-</form>
-<& /Elements/TitleBoxEnd &>
diff --git a/rt/html/Elements/Quicksearch b/rt/html/Elements/Quicksearch
deleted file mode 100644
index d54f72e..0000000
--- a/rt/html/Elements/Quicksearch
+++ /dev/null
@@ -1,88 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => loc("Quick search"), bodyclass => "" &>
-
-<TABLE BORDER=0 cellspacing=0 cellpadding=1 WIDTH=100%>
-<tr>
- <th class="collection-as-table" align=left><&|/l&>Queue</&></th>
- <th class="collection-as-table" align=right><&|/l&>New</&></th>
- <th class="collection-as-table" align=right><&|/l&>Open</&></th>
-</tr>
-
-<%PERL>
-my $i;
-while (my $queue = $Queues->Next) {
- next unless ($queue->CurrentUserHasRight('ShowTicket'));
-
- my $name = $queue->Name;
- $name =~ s|(['\\])|\\$1|g;
-
- my $new_q = "Queue = '$name' AND Status = 'new'";
- my $open_q = "Queue = '$name' AND Status = 'open'";
- my $all_q = "Queue = '$name' AND (Status = 'open' OR Status = 'new')";
-
- $Tickets->FromSQL($open_q);
- my $open = $Tickets->Count();
-
- $Tickets->FromSQL($new_q);
- my $new = $Tickets->Count();
-
- $i++;
-</%PERL>
-<TR class="<% $i%2 ? 'oddline' : 'evenline'%>" >
-<td><A HREF="<% $RT::WebPath%>/Search/Results.html?Query=<%$all_q |nu%>&Rows=50" TITLE="<% $queue->Description %>"><%$queue->Name%></a></TD>
-<td align="right"><A HREF="<% $RT::WebPath%>/Search/Results.html?Query=<%$new_q |nu%>&Rows=50"><%$new%></a></TD>
-<td align="right"><A HREF="<% $RT::WebPath%>/Search/Results.html?Query=<%$open_q |nu%>&Rows=50"><%$open%></a></TD>
-</TR>
-% }
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-
-<%INIT>
-my $Queues = RT::Queues->new($session{'CurrentUser'});
-$Queues->UnLimit();
-my $Tickets = RT::Tickets->new($session{'CurrentUser'});
-</%INIT>
diff --git a/rt/html/Elements/RT__Ticket/ColumnMap b/rt/html/Elements/RT__Ticket/ColumnMap
deleted file mode 100644
index dade914..0000000
--- a/rt/html/Elements/RT__Ticket/ColumnMap
+++ /dev/null
@@ -1,300 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%ARGS>
-$Name => undef
-$Attr => undef
-</%ARGS>
-
-
-<%ONCE>
-our ( $COLUMN_MAP );
-
-sub ColumnMap {
- my $name = shift;
- my $attr = shift;
-
- # First deal with the simple things from the map
- if ( $COLUMN_MAP->{$name} ) {
- return ( $COLUMN_MAP->{$name}->{$attr} );
- }
-
- # now, let's deal with harder things, like Custom Fields
-
- elsif ( $name =~ /^(?:CF|CustomField)\.\{(.+)\}$/ ) {
- my $field = $1;
-
- if ( $attr eq 'attribute' ) {
- return (undef);
- }
- elsif ( $attr eq 'title' ) {
- return ( $field );
- }
- elsif ( $attr eq 'value' ) {
- # Display custom field contents, separated by newlines.
- # For Image custom fields we also show a thumbnail here.
- return sub {
- my $values = $_[0]->CustomFieldValues($field);
- return map {
- (
- ($_->CustomFieldObj->Type eq 'Image')
- ? \($m->scomp( '/Elements/ShowCustomFieldImage', Object => $_ ))
- : $_->Content
- ),
- \'<br>',
- } @{ $values->ItemsArrayRef }
- };
- }
- }
-}
-
-sub LinkCallback {
- my $method = shift;
-
- my $mode = $RT::Ticket::LINKTYPEMAP{$method}{Mode};
- my $type = $RT::Ticket::LINKTYPEMAP{$method}{Type};
- my $mode_uri = $mode.'URI';
- my $local_type = 'Local'.$mode;
-
- return sub {
- map {
- \'<A HREF="',
- $_->$mode_uri->Resolver->HREF,
- \'">',
- ( $_->$mode_uri->IsLocal ? $_->$local_type : $_->$mode ),
- \'</A><BR>',
- } @{ $_[0]->Links($mode,$type)->ItemsArrayRef }
- }
-}
-
-$COLUMN_MAP = {
- QueueName => {
- attribute => 'Queue',
- title => 'Queue',
- value => sub { return $_[0]->QueueObj->Name }
- },
- OwnerName => {
- title => 'Owner',
- attribute => 'Owner',
- value => sub { return $_[0]->OwnerObj->Name }
- },
- id => {
- attribute => 'id',
- align => 'right',
- value => sub { return $_[0]->id }
- },
- Status => {
- attribute => 'Status',
- value => sub { return loc($_[0]->Status) }
- },
- Subject => {
- attribute => 'Subject',
- value => sub { return $_[0]->Subject || "(" . loc('No subject') . ")" }
- },
- ExtendedStatus => {
- title => 'Status',
- attribute => 'Status',
- value => sub {
- my $Ticket = shift;
-
- if ( $Ticket->HasUnresolvedDependencies ) {
- if ( $Ticket->HasUnresolvedDependencies( Type => 'approval' )
- or $Ticket->HasUnresolvedDependencies( Type => 'code' ) )
- {
- return \'<em>', loc('(pending approval)'), \'</em>';
- }
- else {
- return \'<em>', loc('(pending other Collection)'), \'</em>';
- }
- }
- else {
- return loc( $Ticket->Status );
- }
-
- }
- },
- Priority => {
- attribute => 'Priority',
- value => sub { return $_[0]->Priority }
- },
- InitialPriority => {
- attribute => 'InitialPriority',
- name => 'Initial Priority',
- value => sub { return $_[0]->InitialPriority }
- },
- FinalPriority => {
- attribute => 'FinalPriority',
- name => 'Final Priority',
- value => sub { return $_[0]->FinalPriority }
- },
- EffectiveId => {
- attribute => 'EffectiveId',
- value => sub { return $_[0]->EffectiveId }
- },
- Type => {
- attribute => 'Type',
- value => sub { return $_[0]->Type }
- },
- TimeWorked => {
- attribute => 'TimeWorked',
- title => 'Time Worked',
- value => sub { return $_[0]->TimeWorked }
- },
- TimeLeft => {
- attribute => 'TimeLeft',
- title => 'Time Left',
- value => sub { return $_[0]->TimeLeft }
- },
- TimeEstimated => {
- attribute => 'TimeEstimated',
- title => 'Time Estimated',
- value => sub { return $_[0]->TimeEstimated }
- },
- Requestors => {
- value => sub { return $_[0]->Requestors->MemberEmailAddressesAsString }
- },
- Cc => {
- value => sub { return $_[0]->Cc->MemberEmailAddressesAsString }
- },
- AdminCc => {
- value => sub { return $_[0]->AdminCc->MemberEmailAddressesAsString }
- },
- StartsRelative => {
- title => 'Starts',
- attribute => 'Starts',
- value => sub { return $_[0]->StartsObj->AgeAsString }
- },
- StartedRelative => {
- title => 'Started',
- attribute => 'Started',
- value => sub { return $_[0]->StartedObj->AgeAsString }
- },
- CreatedRelative => {
- title => 'Created',
- attribute => 'Created',
- value => sub { return $_[0]->CreatedObj->AgeAsString }
- },
- LastUpdatedRelative => {
- title => 'Last Updated',
- attribute => 'LastUpdated',
- value => sub { return $_[0]->LastUpdatedObj->AgeAsString }
- },
- ToldRelative => {
- title => 'Told',
- attribute => 'Told',
- value => sub { return $_[0]->ToldObj->AgeAsString }
- },
- DueRelative => {
- title => 'Due',
- attribute => 'Due',
- value => sub {
- my $date = $_[0]->DueObj;
- if ($date && $date->Unix > 0 && $date->Unix < time()) {
- return (\'<span class="overdue">' , $date->AgeAsString , \'</span>');
- } else {
- return $date->AgeAsString;
- }
- }
- },
- ResolvedRelative => {
- title => 'Resolved',
- attribute => 'Resolved',
- value => sub { return $_[0]->ResolvedObj->AgeAsString }
- },
- Starts => {
- attribute => 'Starts',
- value => sub { return $_[0]->StartsObj->AsString }
- },
- Started => {
- attribute => 'Started',
- value => sub { return $_[0]->StartedObj->AsString }
- },
- Created => {
- attribute => 'Created',
- value => sub { return $_[0]->CreatedObj->AsString }
- },
- CreatedBy => {
- attribute => 'CreatedBy',
- title => 'Created By',
- value => sub { return $_[0]->CreatorObj->Name }
- },
- LastUpdated => {
- attribute => 'LastUpdated',
- title => 'Last Updated',
- value => sub { return $_[0]->LastUpdatedObj->AsString }
- },
- LastUpdatedBy => {
- attribute => 'LastUpdatedBy',
- title => 'Last Updated By',
- value => sub { return $_[0]->LastUpdatedByObj->Name }
- },
- Told => {
- attribute => 'Told',
- value => sub { return $_[0]->ToldObj->AsString }
- },
- Due => {
- attribute => 'Due',
- value => sub { return $_[0]->DueObj->AsString }
- },
- Resolved => {
- attribute => 'Resolved',
- value => sub { return $_[0]->ResolvedObj->AsString }
- },
-
- # Everything from LINKTYPEMAP
- (map {
- $_ => { value => LinkCallback( $_ ) }
- } keys %RT::Ticket::LINKTYPEMAP),
-
- '_CLASS' => {
- value => sub { return $_[1] % 2 ? 'oddline' : 'evenline' }
- },
-
-};
-</%ONCE>
-<%init>
-$m->comp( '/Elements/Callback', COLUMN_MAP => $COLUMN_MAP, _CallbackName => 'ColumnMap');
-return ColumnMap($Name, $Attr);
-</%init>
diff --git a/rt/html/Elements/Refresh b/rt/html/Elements/Refresh
deleted file mode 100644
index 9f241d2..0000000
--- a/rt/html/Elements/Refresh
+++ /dev/null
@@ -1,67 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-<OPTION VALUE="-1"
-%unless ($Default) {
- SELECTED
-%}
-><&|/l&>Don't refresh this page.</&></OPTION>
-%foreach my $value (@refreshevery) {
-<OPTION VALUE="<%$value%>"
-% if ( $Default && ($value == $Default)) {
-SELECTED
-% }
-><&|/l, $value/60 &>Refresh this page every [_1] minutes.</&></OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my @refreshevery = qw(120 300 600 1200 3600 7200);
-</%INIT>
-<%ARGS>
-$Name => undef
-$Default => 0
-</%ARGS>
diff --git a/rt/html/Elements/ScrubHTML b/rt/html/Elements/ScrubHTML
deleted file mode 100644
index 94a7299..0000000
--- a/rt/html/Elements/ScrubHTML
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-my $scrubber = HTML::Scrubber->new();
-
-$scrubber->default(
- 0,
- {
- '*' => 0,
- id => 1,
- class => 1,
- href => qr{^(?:http:|ftp:|https:|/)}i,
- # Match http, ftp and relative urls
- face => 1,
- size => 1,
- target => 1
- }
-);
-
-$scrubber->deny(qw[*]);
-$scrubber->allow(
- qw[A B U P BR I HR BR SMALL EM FONT SPAN DIV UL OL LI DL DT DD]);
-$scrubber->comment(0);
-return ( $scrubber->scrub($Content) );
-</%init>
-<%args>
-$Content => undef
-</%args>
diff --git a/rt/html/Elements/Section b/rt/html/Elements/Section
deleted file mode 100644
index afbb9cf..0000000
--- a/rt/html/Elements/Section
+++ /dev/null
@@ -1,56 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE WIDTH=100%>
-<TR>
-<TD>
-<font size=+4><%$title%></font>
-</TD>
-</TR>
-</TABLE>
-
-<%ARGS>
-$title => undef
-</%ARGS>
diff --git a/rt/html/Elements/SelectAttachmentField b/rt/html/Elements/SelectAttachmentField
deleted file mode 100644
index ea1528c..0000000
--- a/rt/html/Elements/SelectAttachmentField
+++ /dev/null
@@ -1,54 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-<OPTION VALUE="Subject"><&|/l&>Subject</&></OPTION>
-<OPTION VALUE="Content"><&|/l&>Content</&></OPTION>
-<OPTION VALUE="ContentType"><&|/l&>Content-Type</&></OPTION>
-<OPTION VALUE="Filename"><&|/l&>Filename</&></OPTION>
-</SELECT>
-<%ARGS>
-$Name => 'AttachmentField'
-</%ARGS>
diff --git a/rt/html/Elements/SelectBoolean b/rt/html/Elements/SelectBoolean
deleted file mode 100644
index a3f08fd..0000000
--- a/rt/html/Elements/SelectBoolean
+++ /dev/null
@@ -1,68 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-<OPTION VALUE="<%$TrueVal%>" <%$TrueDefault%>><%$True%></OPTION>
-<OPTION VALUE="<%$FalseVal%>" <%$FalseDefault%>><%$False%></OPTION>
-</SELECT>
-
-<%ARGS>
-$Name => undef
-$True => loc("is")
-$Default => 'true'
-$TrueVal => 1
-$FalseVal => 0
-$False => loc("isn't")
-</%ARGS>
-
-<%INIT>
-my ($TrueDefault, $FalseDefault);
-if ($Default && $Default !~ /true/i) {
- $FalseDefault = "SELECTED";
-}
-else {
- $TrueDefault = "SELECTED";
-}
-</%INIT>
diff --git a/rt/html/Elements/SelectCustomFieldOperator b/rt/html/Elements/SelectCustomFieldOperator
deleted file mode 100644
index 8f7ea61..0000000
--- a/rt/html/Elements/SelectCustomFieldOperator
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-% while (my $option = shift @Options) {
-% my $value = shift @Values;
-<OPTION VALUE="<%$value%>"
-% if ($Default eq $value) {
-SELECTED
-% }
-><%$option%></OPTION>
-% }
-</SELECT>
-
-<%ARGS>
-$Name => undef
-@Options => ( loc('contains'), loc("doesn't contain"), loc('is'), loc("isn't"), loc('less than'), loc('greater than'))
-@Values => ('LIKE', 'NOT LIKE', '=', '!=', '<', '>')
-$Default => undef
-</%ARGS>
diff --git a/rt/html/Elements/SelectCustomFieldValue b/rt/html/Elements/SelectCustomFieldValue
deleted file mode 100644
index 27d6c49..0000000
--- a/rt/html/Elements/SelectCustomFieldValue
+++ /dev/null
@@ -1,63 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Callback, %ARGS &>
-% if ($CustomField->Type =~ /Select/i) {
-% my $values = $CustomField->Values;
-<select name="<%$Name%>">
-<option value="" SELECTED>-</option>
-<option value="NULL"><&|/l&>(no value)</&></option>
-% while (my $value = $values->Next) {
-<option value="<%$value->Name%>"><%$value->Name%></option>
-% }
-</select>
-% }
-% else {
-<input name="<%$Name%>" size="20">
-% }
-<%args>
-$Name => undef
-$CustomField =>undef
-</%args>
diff --git a/rt/html/Elements/SelectDate b/rt/html/Elements/SelectDate
deleted file mode 100644
index d381579..0000000
--- a/rt/html/Elements/SelectDate
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<INPUT NAME="<%$Name%>" VALUE="<%$Default%>" size=<%$Size%>>
-
-<%init>
-unless ((defined $Default) or
- ($current <= 0)) {
- my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
- localtime($current);
- $Default = sprintf("%04d-%02d-%02d %02d:%02d",
- $year+1900,$mon+1,$mday,
- $hour,$min);
-}
-
-unless ($Name) {
- $Name = $menu_prefix. "_Date";
-}
-</%init>
-
-<%args>
-
-$ShowTime => undef
-$menu_prefix=>''
-$current=>time
-$Default => undef
-$Name => undef
-$Size => 16
-</%args>
diff --git a/rt/html/Elements/SelectDateRelation b/rt/html/Elements/SelectDateRelation
deleted file mode 100644
index ccf0c11..0000000
--- a/rt/html/Elements/SelectDateRelation
+++ /dev/null
@@ -1,58 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-<OPTION VALUE="&lt;"><%$Before%></OPTION>
-<OPTION VALUE="="><%$On%></OPTION>
-<OPTION VALUE="&gt;"><%$After%></OPTION>
-</SELECT>
-
-<%ARGS>
-$Name => undef
-$Default => undef
-$Before => loc('Before')
-$On => loc('On')
-$After => loc('After')
-</%ARGS>
diff --git a/rt/html/Elements/SelectDateType b/rt/html/Elements/SelectDateType
deleted file mode 100644
index 7b3f099..0000000
--- a/rt/html/Elements/SelectDateType
+++ /dev/null
@@ -1,58 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-<OPTION VALUE="Created"><&|/l&>Created</&></OPTION>
-<OPTION VALUE="Started"><&|/l&>Started</&></OPTION>
-<OPTION VALUE="Resolved"><&|/l&>Resolved</&></OPTION>
-<OPTION VALUE="Told"><&|/l&>Last Contacted</&></OPTION>
-<OPTION VALUE="LastUpdated"><&|/l&>Last Updated</&></OPTION>
-<OPTION VALUE="Starts"><&|/l&>Starts</&></OPTION>
-<OPTION VALUE="Due"><&|/l&>Due</&></OPTION>
-<OPTION VALUE="Updated"><&|/l&>Updated</&></OPTION>
-</SELECT>
-<%ARGS>
-$Name => 'DateType'
-</%ARGS>
diff --git a/rt/html/Elements/SelectEqualityOperator b/rt/html/Elements/SelectEqualityOperator
deleted file mode 100644
index 0f8deea..0000000
--- a/rt/html/Elements/SelectEqualityOperator
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-% while (my $option = shift @Options) {
-% my $value = shift @Values;
-<OPTION VALUE="<%$value%>"
-% if ($Default eq $value) {
-SELECTED
-% }
-><%$option%></OPTION>
-% }
-</SELECT>
-
-<%ARGS>
-$Name => undef
-@Options => (loc('less than'), loc('equal to'), loc('greater than'), loc('not equal to'))
-@Values => qw(< = > !=)
-$Default =>''
-</%ARGS>
diff --git a/rt/html/Elements/SelectGroups b/rt/html/Elements/SelectGroups
deleted file mode 100644
index bc37fd6..0000000
--- a/rt/html/Elements/SelectGroups
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<select name="GroupField">
-% foreach my $col (RT::Group->BasicColumns) {
-<option value="<% $col->[0] %>"><% loc($col->[1]) %>
-% }
-% while (my $CF = $CFs->Next) {
-<option value="CustomField-<% $CF->Id %>"><&|/l&>CustomField</&>: <% $CF->Name %>
-% }
-</select>
-<& /Elements/SelectMatch, Name=> 'GroupOp' &>
-<input size=8 name="GroupString">
-<%INIT>
-my $CFs = RT::CustomFields->new($session{'CurrentUser'});
-$CFs->LimitToChildType('RT::Group');
-$CFs->OrderBy( FIELD => 'Name' );
-</%INIT>
diff --git a/rt/html/Elements/SelectLang b/rt/html/Elements/SelectLang
deleted file mode 100644
index a439ea3..0000000
--- a/rt/html/Elements/SelectLang
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-% if ($ShowNullOption) {
-<OPTION VALUE="">-</OPTION>
-% }
-% foreach my $lang (@lang) {
-<OPTION VALUE="<%$lang%>" <%($Default && ($lang eq $Default)) && 'SELECTED'%>><% $lang_to_desc{$lang} %>
-% if (($Verbose) and (my $description = I18N::LangTags::List::native_name($lang)) ){
-(<%$description%>)
-% }
-</OPTION>
-% }
-</SELECT>
-<%ARGS>
-$ShowNullOption => 1
-$ShowAllQueues => 1
-$Name => undef
-$Verbose => undef
-$Default => 0
-$Lite => 0
-</%ARGS>
-
-<%ONCE>
-use I18N::LangTags::List;
-my (@lang, %lang_to_desc);
-foreach my $lang (map { s/:://; s/_/-/g; $_ } grep { /^\w+::$/ } keys %RT::I18N::) {
- next if $lang =~ /i-default|en-us/;
- my $desc = I18N::LangTags::List::name($lang);
- next unless ($desc);
- $desc =~ s/(.*) (.*)/$2 ($1)/;
- $lang_to_desc{$lang} = $desc;
-}
-@lang = sort { $lang_to_desc{$a} cmp $lang_to_desc{$b} } keys %lang_to_desc;
-</%ONCE>
diff --git a/rt/html/Elements/SelectLinkType b/rt/html/Elements/SelectLinkType
deleted file mode 100644
index 28cb441..0000000
--- a/rt/html/Elements/SelectLinkType
+++ /dev/null
@@ -1,59 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-<OPTION VALUE="MemberOf"><&|/l&>Member of</&></OPTION>
-<OPTION VALUE="DependsOn"><&|/l&>Depends on</&></OPTION>
-<OPTION VALUE="RefersTo"><&|/l&>Refers to</&></OPTION>
-</SELECT>
-
-<%ARGS>
-$Name => "LinkType"
-$Default => undef
-</%ARGS>
-
-<%INIT>
-# TODO handle Default
-</%INIT>
diff --git a/rt/html/Elements/SelectMatch b/rt/html/Elements/SelectMatch
deleted file mode 100644
index 60949d9..0000000
--- a/rt/html/Elements/SelectMatch
+++ /dev/null
@@ -1,80 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-<OPTION VALUE="LIKE" <%$LikeDefault%>><%$Like%></OPTION>
-<OPTION VALUE="NOT LIKE" <%$NotLikeDefault%>><%$NotLike%></OPTION>
-<OPTION VALUE="=" <%$TrueDefault%>><%$True%></OPTION>
-<OPTION VALUE="!=" <%$FalseDefault%>><%$False%></OPTION>
-</SELECT>
-
-<%ARGS>
-$Name => undef
-$Like => loc('contains')
-$NotLike => loc("doesn't contain")
-$True => loc('is')
-$False => loc("isn't")
-$Default => undef
-</%ARGS>
-<%INIT>
-
-my $TrueDefault = '';
-my $FalseDefault='';
-my $LikeDefault='';
-my $NotLikeDefault ='';
-
-if ($Default && $Default =~ /false/i) {
- $FalseDefault = "SELECTED";
-}
-elsif ($Default && $Default =~ /true/i) {
- $TrueDefault = "SELECTED";
-}
-elsif ($Default && $Default =~ /notlike/i) {
- $NotLikeDefault = "SELECTED";
-}
-else {
- $LikeDefault = "SELECTED";
-}
-</%INIT>
diff --git a/rt/html/Elements/SelectNewTicketQueue b/rt/html/Elements/SelectNewTicketQueue
deleted file mode 100644
index d47b58a..0000000
--- a/rt/html/Elements/SelectNewTicketQueue
+++ /dev/null
@@ -1,81 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<LABEL ACCESSKEY="9">
-<SELECT NAME ="<%$Name%>">
-% foreach my $queue (@{$session{'create_in_queues'}}) {
-<OPTION
- VALUE="<%$queue->{'id'}%>"
- <%$Default && ($queue->{'id'} == $Default) && 'SELECTED'%>>
-<%$queue->{'Name'}%>
-% if (($Verbose) and ($queue->{'Description'}) ){
-(<%$queue->{'Description'}%>)
-% }
-</OPTION>
-% }
-</SELECT>
-</LABEL>
-
-<%INIT>
-unless ($session{'create_in_queues'}) {
-
-@{$session{'create_in_queues'}} = ();
-my $q=new RT::Queues($session{'CurrentUser'});
-$q->UnLimit;
-while (my $queue=$q->Next) {
- if ($queue->CurrentUserHasRight('CreateTicket')) {
- my $ds = { Name => $queue->Name, Description => $queue->Description, id => $queue->id };
- push (@{$session{'create_in_queues'}}, $ds);
- }
-}
-}
-</%INIT>
-
-
-<%ARGS>
-$Name => 'Queue'
-$Verbose => 0
-$Default => 0
-</%ARGS>
diff --git a/rt/html/Elements/SelectOwner b/rt/html/Elements/SelectOwner
deleted file mode 100644
index 85843e5..0000000
--- a/rt/html/Elements/SelectOwner
+++ /dev/null
@@ -1,108 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-%if ($DefaultValue) {
-<OPTION <% !$Default ? "SELECTED" : '' %> VALUE=""><%$DefaultLabel%></OPTION>
-%}
-%foreach my $User ( @users) {
-<OPTION <% ($User->Id == $Default) ? "SELECTED" : ''%>
-%if ($ValueAttribute eq 'id') {
- value="<%$User->id%>"
-%} elsif ($ValueAttribute eq 'Name') {
- value="<%$User->Name%>"
-%}
-><%$User->Name()%></OPTION>
-%}
-</SELECT>
-<%INIT>
-my @objects;
-my @users;
-
-if ($TicketObj) {
- @objects = ($TicketObj);
-}
-elsif ($QueueObj) {
- @objects = ($QueueObj);
-}
-elsif ($cfqueues) {
- @objects = keys %{$cfqueues};
-}
-else {
- # Let's check rights on an empty queue object. that will do a search for any queue.
- my $queue = RT::Queue->new($session{'CurrentUser'});
- push( @objects, $queue );
-}
-
-my %user_uniq_hash;
-
-
-foreach my $object (@objects) {
- my $Users = RT::Users->new($session{CurrentUser});
- $Users->WhoHaveRight(Right => 'OwnTicket', Object => $object, IncludeSystemRights => 1, IncludeSuperusers => 0);
- while (my $User = $Users->Next()) {
- next if ($User->id == $RT::Nobody->id); # skip nobody here, so we can make them first later
- $user_uniq_hash{$User->Id()} = $User;
- }
-}
-
-@users = sort { uc($a->Name) cmp uc($b->Name) } values %user_uniq_hash;
-unshift(@users, $RT::Nobody);
-
-
-
-</%INIT>
-
-<%ARGS>
-$QueueObj => undef
-$Name => undef
-$Default => 0
-$User => undef
-$TicketObj => undef
-$DefaultValue => 1
-$DefaultLabel => "-"
-$ValueAttribute => 'id'
-$cfqueues => undef
-</%ARGS>
diff --git a/rt/html/Elements/SelectQueue b/rt/html/Elements/SelectQueue
deleted file mode 100644
index 56aede8..0000000
--- a/rt/html/Elements/SelectQueue
+++ /dev/null
@@ -1,82 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($Lite) {
-% my $d = new RT::Queue($session{'CurrentUser'});
-% $d->Load($Default);
-<INPUT NAME="<%$Name%>" size=25 DEFAULT="<%$d->Name%>">
-% } else {
-<SELECT NAME ="<%$Name%>">
-% if ($ShowNullOption) {
-<OPTION VALUE="">-</OPTION>
-% }
-% while (my $queue=$q->Next) {
-% if ($ShowAllQueues || $queue->CurrentUserHasRight($CheckQueueRight)) {
-<OPTION VALUE="<%($NamedValues ? $queue->Name : $queue->Id) %>" <%( $queue->Id eq $Default ? 'SELECTED' : '')%>><%$queue->Name%>
-% if (($Verbose) and ($queue->Description) ){
-(<%$queue->Description%>)
-% }
-</OPTION>
-% }
-% }
-</SELECT>
-% }
-<%ARGS>
-$CheckQueueRight => 'CreateTicket'
-$ShowNullOption => 1
-$ShowAllQueues => 1
-$Name => undef
-$Verbose => undef
-$NamedValues => 0
-$Default => 0
-$Lite => 0
-</%ARGS>
-
-<%INIT>
-
-my $q=new RT::Queues($session{'CurrentUser'});
-$q->UnLimit;
-
-</%INIT>
diff --git a/rt/html/Elements/SelectResultsPerPage b/rt/html/Elements/SelectResultsPerPage
deleted file mode 100644
index 65ed536..0000000
--- a/rt/html/Elements/SelectResultsPerPage
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# TODO: Better default handling
-
-<SELECT NAME ="<%$Name%>">
-% foreach my $value (@values) {
-<OPTION VALUE="<%$value%>" <% $value == $Default && 'SELECTED' %>>
-<% shift @labels %>
-</OPTION>
-% }
-</SELECT>
-
-<%INIT>
-my @values = qw(0 10 25 50 100);
-my @labels = (loc('Unlimited'), qw(10 25 50 100));
-</%INIT>
-<%ARGS>
-
-$Name => undef
-$Default => 50
-
-</%ARGS>
diff --git a/rt/html/Elements/SelectSortOrder b/rt/html/Elements/SelectSortOrder
deleted file mode 100644
index f6dd70d..0000000
--- a/rt/html/Elements/SelectSortOrder
+++ /dev/null
@@ -1,63 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-%foreach my $order (@orders) {
-<OPTION VALUE="<%$order%>" <%$order eq $Default && 'SELECTED' %>>
-<% shift @order_names %>
-</OPTION>
-% }
-</SELECT>
-
-<%INIT>
-my @orders = qw (ASC DESC);
-my @order_names = (loc('Ascending'), loc('Descending'));
-
-</%INIT>
-
-<%ARGS>
-$Name => 'SortOrder'
-$Default => 'ASC'
-</%ARGS>
diff --git a/rt/html/Elements/SelectStatus b/rt/html/Elements/SelectStatus
deleted file mode 100644
index fa76a3e..0000000
--- a/rt/html/Elements/SelectStatus
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-%if ($DefaultValue) {
-<OPTION <% !$Default && "SELECTED" %> VALUE=""><%$DefaultLabel%></OPTION>
-%}
-%foreach my $status (@status) {
-%next if ($SkipDeleted && $status eq 'deleted');
-<OPTION <% ($status eq $Default) && "SELECTED" %> VALUE="<%$status%>"><%loc($status)%></OPTION>
-% }
-</SELECT>
-<%ONCE>
-my $queue = new RT::Queue($session{'CurrentUser'});
-my @status = $queue->StatusArray();
-</%ONCE>
-<%ARGS>
-$Name => undef
-$Default => ''
-$SkipDeleted => 0
-$DefaultValue => 1
-$DefaultLabel => "-"
-</%ARGS>
diff --git a/rt/html/Elements/SelectTicketSortBy b/rt/html/Elements/SelectTicketSortBy
deleted file mode 100644
index 3e05dcc..0000000
--- a/rt/html/Elements/SelectTicketSortBy
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-% foreach my $field (@sortfields) {
-<OPTION VALUE="<%$field%>" <% $field eq $Default && 'SELECTED'%>><% loc($field) %></OPTION>
-% }
-</SELECT>
-
-<%INIT>
-my $tickets = new RT::Tickets($session{'CurrentUser'});
-my @sortfields = $tickets->SortFields();
-
-</%INIT>
-<%ARGS>
-$Name => 'SortTicketsBy'
-$Default => 'id'
-</%ARGS>
diff --git a/rt/html/Elements/SelectTicketTypes b/rt/html/Elements/SelectTicketTypes
deleted file mode 100644
index a905f60..0000000
--- a/rt/html/Elements/SelectTicketTypes
+++ /dev/null
@@ -1,56 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-%foreach (@Types) {
-<OPTION VALUE="<% $_ %>" <% ($_ eq $Default) && "SELECTED" %>><&|/l&><% $_ %></&>
-%}
-</SELECT>
-
-<%ARGS>
-$Name => 'TickType'
-$Default => undef
-@Types => qw(Approval Ticket)
-</%ARGS>
diff --git a/rt/html/Elements/SelectUsers b/rt/html/Elements/SelectUsers
deleted file mode 100644
index dfe816e..0000000
--- a/rt/html/Elements/SelectUsers
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<select name="UserField">
-% foreach my $col (RT::User->BasicColumns) {
-<option value="<% $col->[0] %>"><% loc($col->[1]) %>
-% }
-% while (my $CF = $CFs->Next) {
-<option value="CustomField-<% $CF->Id %>"><&|/l&>CustomField</&>: <% $CF->Name %>
-% }
-</select>
-<& /Elements/SelectMatch, Name=> 'UserOp' &>
-<input size=8 name="UserString">
-<%INIT>
-my $CFs = RT::CustomFields->new($session{'CurrentUser'});
-$CFs->LimitToChildType('RT::User');
-$CFs->OrderBy( FIELD => 'Name' );
-</%INIT>
diff --git a/rt/html/Elements/SelectWatcherType b/rt/html/Elements/SelectWatcherType
deleted file mode 100644
index 6ba9c7a..0000000
--- a/rt/html/Elements/SelectWatcherType
+++ /dev/null
@@ -1,69 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-% if ($AllowNull) {
-<OPTION VALUE="">-</OPTION>
-% }
-%for my $option (@types) {
-<OPTION VALUE="<%$option%>" <%$option eq $Default && "SELECTED"%>><%loc($option)%></OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my @types;
-if ($Scope =~ 'queue') {
- @types = qw(Cc AdminCc);
-}
-else {
- @types = qw(Requestor Cc AdminCc);
-}
-</%INIT>
-<%ARGS>
-$AllowNull => 1
-$Default=>undef
-$Scope => 'ticket'
-$Name => 'WatcherType'
-</%ARGS>
diff --git a/rt/html/Elements/SetupSessionCookie b/rt/html/Elements/SetupSessionCookie
deleted file mode 100644
index bd78613..0000000
--- a/rt/html/Elements/SetupSessionCookie
+++ /dev/null
@@ -1,114 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-return if $m->is_subrequest; # avoid reentrancy, as suggested by masonbook
-
-my %cookies = CGI::Cookie->fetch();
-my $cookiename = "RT_SID_".$RT::rtname.".".$ENV{'SERVER_PORT'};
-my %backends = (
- mysql => 'Apache::Session::MySQL',
- Pg => 'Apache::Session::Postgres',
-# Oracle => 'Apache::Session::Oracle',
-) unless $RT::WebSessionClass;
-my $session_class = $RT::WebSessionClass || $backends{$RT::DatabaseType} || 'Apache::Session::File';
-my $pm = "$session_class.pm"; $pm =~ s|::|/|g; require $pm;
-
- # morning bug avoidance attempt -- pdh 20030815
- unless ($RT::Handle->dbh && $RT::Handle->dbh->ping) {
- $RT::Handle->Connect();
- }
- eval {
- tie %session, $session_class,
- $SessionCookie || ( $cookies{$cookiename} ? $cookies{$cookiename}->value() : undef ),
- $backends{$RT::DatabaseType} ? {
- Handle => $RT::Handle->dbh,
- LockHandle => $RT::Handle->dbh,
- } : {
- Directory => $RT::MasonSessionDir,
- LockDirectory => $RT::MasonSessionDir,
- };
- };
- if ($@) {
-
- # If the session is invalid, create a new session.
- if ( $@ =~ /Object does not/i ) {
- tie %session, $session_class, undef, $backends{$RT::DatabaseType}
- ? {
- Handle => $RT::Handle->dbh,
- LockHandle => $RT::Handle->dbh,
- }
- : {
- Directory => $RT::MasonSessionDir,
- LockDirectory => $RT::MasonSessionDir,
- };
- undef $cookies{$cookiename};
- }
- else {
- die loc("RT couldn't store your session.") . "\n"
- . loc(
-"This may mean that that the directory '[_1]' isn't writable or a database table is missing or corrupt.",
- $RT::MasonSessionDir
- )
- . "\n\n"
- . $@;
- }
- }
-
- if ( !$cookies{$cookiename} ) {
- my $cookie = new CGI::Cookie(
- -name => $cookiename,
- -value => $session{_session_id},
- -path => '/',
- );
- $r->headers_out->{'Set-Cookie'} = $cookie->as_string;
-
- }
-
- return();
-</%init>
-<%args>
-$SessionCookie => ''
-</%args>
diff --git a/rt/html/Elements/ShowCustomFieldBinary b/rt/html/Elements/ShowCustomFieldBinary
deleted file mode 100644
index ea9e5ae..0000000
--- a/rt/html/Elements/ShowCustomFieldBinary
+++ /dev/null
@@ -1,49 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<a href="<%$RT::WebPath%>/Download/CustomFieldValue/<% $Object->Id %>/<% $Object->Content %>"><% $Object->Content %></a>
-<%ARGS>
-$Object => undef
-</%ARGS>
diff --git a/rt/html/Elements/ShowCustomFieldImage b/rt/html/Elements/ShowCustomFieldImage
deleted file mode 100644
index 7fa5e46..0000000
--- a/rt/html/Elements/ShowCustomFieldImage
+++ /dev/null
@@ -1,51 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% my $url = $RT::WebPath . "/Download/CustomFieldValue/".$Object->Id.'/'.$Object->Content;
-<a href="<% $url %>"><% $Object->Content %></a>
-<img type="<% $Object->ContentType %>" height=64 src="<% $url %>" align="middle">
-<%ARGS>
-$Object
-</%ARGS>
diff --git a/rt/html/Elements/ShowCustomFieldWikitext b/rt/html/Elements/ShowCustomFieldWikitext
deleted file mode 100644
index ab7c27b..0000000
--- a/rt/html/Elements/ShowCustomFieldWikitext
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% my $content = $Object->LargeContent || $Object->Content;
-% $content = $m->comp('/Elements/ScrubHTML', Content => $content);
-% my $wiki_content = Text::WikiFormat::format( $content."\n" , {}, { extended => 1, absolute_links => 1 });
-<%$wiki_content|n%>
-<%init>
-use Text::WikiFormat;
-</%init>
-<%ARGS>
-$Object
-</%ARGS>
diff --git a/rt/html/Elements/ShowCustomFields b/rt/html/Elements/ShowCustomFields
deleted file mode 100644
index 7591fa3..0000000
--- a/rt/html/Elements/ShowCustomFields
+++ /dev/null
@@ -1,77 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
-% my @entry_fields;
-% while (my $CustomField = $CustomFields->Next()) {
-% my $Values = $Object->CustomFieldValues($CustomField->Id);
- <tr>
- <td class="label"><%$CustomField->Name%>:</td>
- <td class="value">
-<ul>
-% while (my $Value = $Values->Next()) {
-<li>
-% my $comp = "ShowCustomField".$CustomField->Type;
-% if ($m->comp_exists($comp)) {
-<& $comp, Object => $Value &>
-% } else {
-<%$Value->Content%>
-% }
-</li>
-% }
-% unless ($Values->Count()) {
-<li><i><&|/l&>(no value)</&></i></li>
-% }
-</ul>
- </td>
- </tr>
-% }
-</table>
-<%INIT>
-my $CustomFields = $Object->CustomFields;
-</%INIT>
-<%ARGS>
-$Object => undef
-</%ARGS>
diff --git a/rt/html/Elements/ShowLink b/rt/html/Elements/ShowLink
deleted file mode 100644
index 5929a96..0000000
--- a/rt/html/Elements/ShowLink
+++ /dev/null
@@ -1,62 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<A href="<%$URI->Resolver->HREF%>">
-% if ($URI->IsLocal) {
-% my $member = $URI->Object;
-% if (UNIVERSAL::isa($member, "RT::Ticket")) {
-<%$member->Id%>: (<%$member->OwnerObj->Name%>) <%$member->Subject%> [<% loc($member->Status) %>]
-% } elsif ( UNIVERSAL::can($member, 'Name')) {
-<%$URI->Resolver->AsString%>: <%$member->Name%>
-% } else {
-<%$URI->Resolver->AsString%>
-% }
-% } else {
-<%$URI->Resolver->AsString%>
-% }
-</a>
-<%ARGS>
-$URI => undef
-</%ARGS>
diff --git a/rt/html/Elements/ShowLinks b/rt/html/Elements/ShowLinks
deleted file mode 100755
index c9279a5..0000000
--- a/rt/html/Elements/ShowLinks
+++ /dev/null
@@ -1,109 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
- <tr>
- <td class="labeltop"><&|/l&>Depends on</&>:</td>
- <td class="value">
-<ul>
-% while (my $Link = $Ticket->DependsOn->Next) {
-<li><& ShowLink, URI => $Link->TargetURI &>
-% }
-</ul>
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Depended on by</&>:</td>
- <td class="value">
-<ul>
-% while (my $Link = $Ticket->DependedOnBy->Next) {
-<li><& ShowLink, URI => $Link->BaseURI &>
-% }
-</ul>
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Parents</&>:</td>
- <td class="value">
-<ul>
-% while (my $Link = $Ticket->MemberOf->Next) {
-<li><& ShowLink, URI => $Link->TargetURI &>
-% }
-</ul>
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Children</&>:</td>
- <td class="value"><& /Ticket/Elements/ShowMembers, Ticket => $Ticket &></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Refers to</&>:</td>
- <td class="value">
-<ul>
-% while (my $Link = $Ticket->RefersTo->Next) {
-<li><& ShowLink, URI => $Link->TargetURI &>
-% }
-</ul>
- </td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Referred to by</&>:</td>
- <td class="value">
- <ul>
-% while (my $Link = $Ticket->ReferredToBy->Next) {
-<li><& ShowLink, URI => $Link->BaseURI &>
-% }
-</ul>
- </td>
- </tr>
-
-% # Allow people to add more rows to the table
-% $m->comp('/Elements/Callback', %ARGS );
-
-</table>
-
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Elements/ShowMemberships b/rt/html/Elements/ShowMemberships
deleted file mode 100644
index 3936d50..0000000
--- a/rt/html/Elements/ShowMemberships
+++ /dev/null
@@ -1,86 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<ul>
-% while ( my $GroupMember = $GroupMembers->Next ) {
-% my $Group = RT::Group->new($session{'CurrentUser'});
-% $Group->Load($GroupMember->GroupId) or next;
-% if ($Group->Domain eq 'UserDefined') {
-<li><a href="<%$RT::WebPath%>/Admin/Groups/Modify.html?id=<% $Group->Id %>"><% $Group->Name %></a></li>
-% } elsif ($Group->Domain eq 'SystemInternal') {
-<li><em><% loc($Group->Type) %></em></li>
-% }
-% }
-</ul>
-<%INIT>
-my $GroupMembers = RT::GroupMembers->new($session{'CurrentUser'});
-$GroupMembers->Limit( FIELD => 'MemberId', VALUE => $UserObj->Id );
-my $alias = $GroupMembers->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'GroupId',
- TABLE2 => 'Groups',
- FIELD2 => 'id'
-);
-$GroupMembers->Limit(
- ALIAS => $alias,
- FIELD => 'Domain',
- OPERATOR => '=',
- VALUE => 'SystemInternal',
-);
-$GroupMembers->Limit(
- ALIAS => $alias,
- FIELD => 'Domain',
- OPERATOR => '=',
- VALUE => 'UserDefined',
-);
-$GroupMembers->OrderByCols(
- { ALIAS => $alias, FIELD => 'Domain' },
- { ALIAS => $alias, FIELD => 'Name' },
-);
-</%INIT>
-<%ARGS>
-$UserObj
-</%ARGS>
diff --git a/rt/html/Elements/SimpleSearch b/rt/html/Elements/SimpleSearch
deleted file mode 100644
index e9fc5c6..0000000
--- a/rt/html/Elements/SimpleSearch
+++ /dev/null
@@ -1,56 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<form action="<% $RT::WebPath %>/index.html" STYLE="margin:0">
-<SCRIPT TYPE="text/javascript">
- function clearhint_search_ticket (what) {
- if ( what.value == '(ticket # or subject string)' )
- what.value = '';
- }
-</SCRIPT>
-<input name="q" accesskey="0" VALUE="(ticket # or subject string)" onFocus="clearhint_search_ticket(this);" onClick="clearhint_search_ticket(this);" STYLE="text-align:right; font-family: Arial, Verdana, Helvetica, sans-serif;"><BR>
-<A HREF="<% $RT::WebPath %>/Search/Build.html" STYLE="color: #ffffff; font-size: 70%; font-weight:normal">Advanced</A>
-<input type="submit" value="<&|/l&>Search tickets</&>" CLASS="fsblackbutton" onMouseOver="this.className='fsblackbuttonselected'; return true;" onMouseOut="this.className='fsblackbutton'; return true;" STYLE="font-size:70%;padding-left:2px;padding-right:2px">
-</form>
diff --git a/rt/html/Elements/Submit b/rt/html/Elements/Submit
deleted file mode 100644
index 9d8dca2..0000000
--- a/rt/html/Elements/Submit
+++ /dev/null
@@ -1,105 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($CheckAll or $ClearAll) {
-<script><!--
-function set_checkbox (obj, val) {
- var i;
- var myfield = obj.form.getElementsByTagName('input');
- for (i = 0; i < myfield.length; i++) {
- if (myfield[i].type == 'checkbox') {
- myfield[i].checked = val;
- }
- }
-}
---></script>
-% }
-<TABLE WIDTH=100% BGCOLOR="<%$color%>" CELLSPACING=0 BORDER=0 CELLPADDING=0 >
-<TR>
-<TD>
-% if ($CheckAll) {
-<INPUT TYPE=BUTTON VALUE="<%$CheckAllLabel%>" ONCLICK="set_checkbox(this, true)">
-% }
-% if ($ClearAll) {
-<INPUT TYPE=BUTTON VALUE="<%$ClearAllLabel%>" ONCLICK="set_checkbox(this, false)">
-% }
-% if ($Reset) {
-<INPUT TYPE=RESET VALUE="<%$ResetLabel%>">
-%}
-</TD>
-<TD>
-&nbsp;
-</TD>
-<TD ALIGN=RIGHT VALIGN=CENTER><FONT COLOR=#ffd800>
-% if ($AlternateLabel) {
-<B><%$AlternateCaption%>
-<INPUT TYPE=SUBMIT
-%if ($Name) {
-NAME="<%$Name%>"
-%}
-VALUE='<%$AlternateLabel%>'></B>
-% }
-<B><%$Caption%> <INPUT TYPE=SUBMIT
-%if ($Name) {
-NAME="<%$Name%>"
-% }
- VALUE='<%$Label%>'></B></FONT>
-</TD>
-</TR>
-</TABLE>
-<%ARGS>
-$color => "#336699"
-$Caption => ''
-$AlternateCaption => undef
-$AlternateLabel => undef
-$Label => loc('Submit')
-$Name => undef
-$CheckAll => undef
-$CheckAllLabel => loc('Check All')
-$ClearAll => undef
-$ClearAllLabel => loc('Clear All')
-$Reset => undef
-$ResetLabel => loc('Reset')
-</%ARGS>
diff --git a/rt/html/Elements/Tabs b/rt/html/Elements/Tabs
deleted file mode 100644
index 721f920..0000000
--- a/rt/html/Elements/Tabs
+++ /dev/null
@@ -1,130 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/PageLayout,
- current_toptab => $current_toptab,
- current_tab => $current_tab,
- toptabs => $toptabs,
- topactions => $topactions,
- tabs => $tabs,
- actions => $actions,
- subactions => $subactions,
- title => $Title
-&>
-<a name="skipnav" id="skipnav" accesskey="8"></a>
-<%INIT>
-my $action;
-my $basetopactions = {
-# A => { html => $m->scomp('/Elements/CreateTicket')
-# },
- A => { html => $m->scomp('/Elements/FreesideNewCust')
- },
- B => { html => $m->scomp('/Elements/FreesideSearch')
- },
- C => { html => $m->scomp('/Elements/FreesideInvoiceSearch')
- },
- D => { html => $m->scomp('/Elements/FreesideSvcSearch')
- },
- E => { html => $m->scomp('/Elements/SimpleSearch')
- }
- };
-my $basetabs = {
- ' A'=> { title => 'Billing Main',
- path => &RT::URI::freeside::FreesideURL(),
- },
- A => { #title => loc('Homepage'),
- title => 'Ticketing Main',
- path => '',
- },
- B => { title => loc('Tickets'),
- path => 'Search/Build.html'
- },
- C => { title => loc('Tools'),
- path => 'Tools/Offline.html'
- },
- P => { title => loc('Approval'),
- path => 'Approvals/'
- },
- };
-
-if ($session{'CurrentUser'}->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )) {
- $basetabs->{E} = { title => loc('Configuration'),
- path => 'Admin/',
- };
-}
-
-if ($session{'CurrentUser'}->HasRight( Right => 'ModifySelf',
- Object => $RT::System )) {
- $basetabs->{K} = { title => loc('Preferences'),
- path => 'User/Prefs.html'
- };
-}
-
-if (!defined $toptabs) {
- $toptabs = $basetabs;
-}
-if (!defined $topactions) {
- $topactions = $basetopactions;
-}
-
- require RT::URI::freeside;
-
- # Now let callbacks add their extra tabs
- $m->comp('/Elements/Callback',
- topactions => $topactions,
- toptabs => $toptabs, %ARGS);
-
-</%INIT>
-<%ARGS>
-$current_toptab => undef
-$current_tab => undef
-$toptabs => undef
-$topactions => undef
-$tabs => undef
-$actions => undef
-$subactions => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Elements/TicketList b/rt/html/Elements/TicketList
deleted file mode 100644
index 1a53127..0000000
--- a/rt/html/Elements/TicketList
+++ /dev/null
@@ -1,154 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE BORDER=0 cellspacing=0 cellpadding=1 WIDTH=100%>
-
-% if ($ShowHeader) {
-<& /Elements/CollectionAsTable/Header,
- Format => \@Format,
- FormatString => $Format,
- AllowSorting => $AllowSorting,
- Order => $Order,
- Query => $Query,
- Rows => $Rows,
- Page => $Page,
- OrderBy => $OrderBy ,
- BaseURL => $BaseURL,
- maxitems => $maxitems &>
-% }
-
-% my $i;
-% while (my $record = $Collection->Next) {
-% $i++;
-% # Every ten rows, flush the buffer and put something on the page.
-% $m->flush_buffer() unless ($i % 10);
-<& /Elements/CollectionAsTable/Row, Format => \@Format, i => $i, record => $record, maxitems => $maxitems &>
-% }
-
-</TABLE>
-
-% if ($Rows && $ShowNavigation) {
-<hr>
-% my $oddRows;
-% if (($TotalFound % $Rows) == 0) {
-% $oddRows = 0;
-% } else { $oddRows = 1; }
-<&|/l, $Page, int($TotalFound/$Rows)+$oddRows&>Page [_1] of [_2]</&>
-
-<%perl>
-my $prev = $m->comp(
- '/Elements/QueryString',
- Query => $Query,
- Format => $Format,
- Rows => $Rows,
- OrderBy => $OrderBy,
- Order => $Order,
- Page => ( $Page - 1 )
-);
-my $next = $m->comp(
- '/Elements/QueryString',
- Query => $Query,
- Format => $Format,
- Rows => $Rows,
- OrderBy => $OrderBy,
- Order => $Order,
- Page => ( $Page + 1 )
-);
-</%perl>
-% if ($Page > 1) {
-<A href="<%$BaseURL%><%$prev%>"><&|/l&>Previous Page</&></a>
-% }
-% if (($Page * $Rows) < $TotalFound) {
-<A href="<%$BaseURL%><%$next%>"><&|/l&>Next Page</&></a>
-% }
-% }
-<%INIT>
-my $maxitems = 0;
-
-$Format ||= $RT::DefaultSearchResultFormat;
-# Scrub the html of the format string to remove any potential nasties.
-$Format = $m->comp('/Elements/ScrubHTML', Content => $Format);
-
-
-unless ($Collection) {
- $Collection = RT::Tickets->new($session{'CurrentUser'});
- $Collection->FromSQL($Query);
-}
-
-my (@Format) = $m->comp('/Elements/CollectionAsTable/ParseFormat', Format => $Format);
-
-# Find the maximum number of items in any row, so we can pad the table.
-my $item = 0;
-foreach my $col (@Format) {
- $item++;
- if ( $col->{title} eq 'NEWLINE' ) {
- $item = 0;
- }
- else {
- $maxitems = $item if $item > $maxitems;
- }
-}
-
-
-$Collection->OrderBy(FIELD => $OrderBy, ORDER => $Order);
-$Collection->RowsPerPage($Rows) if ($Rows);
-$Collection->GotoPage($Page-1); # SB uses page 0 as the first page
-my $TotalFound = $Collection->CountAll();
-
-</%INIT>
-<%ARGS>
-$Query => undef
-$Rows => 50
-$Page => 1
-$Title => 'Ticket Search'
-$Collection => undef
-$AllowSorting => undef
-$Order => undef
-$OrderBy => undef
-$BaseURL => undef
-$Format => $RT::DefaultSearchResultFormat
-$ShowNavigation => 1
-$ShowHeader => 1
-</%ARGS>
diff --git a/rt/html/Elements/TitleBox b/rt/html/Elements/TitleBox
deleted file mode 100644
index 3c638e2..0000000
--- a/rt/html/Elements/TitleBox
+++ /dev/null
@@ -1,46 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& TitleBoxStart, %ARGS&><%$m->content|n%><& TitleBoxEnd&>
diff --git a/rt/html/Elements/TitleBoxEnd b/rt/html/Elements/TitleBoxEnd
deleted file mode 100644
index d791e3a..0000000
--- a/rt/html/Elements/TitleBoxEnd
+++ /dev/null
@@ -1,56 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
- </TD>
- </TR>
-</TABLE>
-% #Manually flush the content buffer after each titlebox is displayed
-% $m->flush_buffer();
-
-<%ARGS>
-$title => undef
-$content => undef
-</%ARGS>
-
diff --git a/rt/html/Elements/TitleBoxStart b/rt/html/Elements/TitleBoxStart
deleted file mode 100644
index d98fe27..0000000
--- a/rt/html/Elements/TitleBoxStart
+++ /dev/null
@@ -1,88 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE CLASS="box <%$class|n%>"
- BGCOLOR="<%$color%>"
- CELLSPACING=0
- BORDER=0
- WIDTH="<%$width%>"
- CELLPADDING="0">
-
- <TR>
- <TH
- <%$color && "style=\"color: $color;\""|n%>
- <%$class ? "class=\"$class\"" : "class=\"titlebox\""|n%>>
- <span class="titleboxclose">
- <a href="#" onClick="hideshow('<%$id%>')">X</A></span>&nbsp;
- <span class="titleboxtitle">
- <b><% $title_href && "<A $title_class HREF=\"$title_href\">"|n%><%$title |n %><% $title_href && "</A>" |n%></b>
- </span>
- </TH>
- <TH
- <%$color && "style=\"color: $color;\""|n%>
- <%$class ? "class=\"$class\"": "class=\"titleboxright\""|n%>>
- <span class="titleboxright"><%$titleright ? $titleright : '&nbsp;' |n %></span>
- </TH>
- </TR>
- <tr id="element-<%$id%>">
- <td bgcolor="<%$contentbg%>" colspan="3" class="<%defined($bodyclass) ? $bodyclass : $class|n%>">
-<%ARGS>
-$width => "100%"
-$class => undef
-$bodyclass => undef
-$title_href => undef
-$title => undef
-$title_class => ''
-
-$titleright_href => undef
-$titleright => undef
-$contentbg => "#d4d4d4"
-$color => "#336699"
-</%ARGS>
-<%init>
-my $id = rand(2000);
-
-$title_class = "CLASS=\"$title_class\"" if $title_class;
-</%init>
diff --git a/rt/html/NoAuth/Logout.html b/rt/html/NoAuth/Logout.html
deleted file mode 100644
index b6a238b..0000000
--- a/rt/html/NoAuth/Logout.html
+++ /dev/null
@@ -1,68 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<HTML>
-<HEAD>
-<TITLE>RT: Logout</TITLE>
- <META HTTP-EQUIV="Refresh" CONTENT="0;URL=<%$URL%>">
-</HEAD>
-<BODY>
-<p><&|/l&>You have been logged out of RT.</&>
-
-<br>
-<br>
-<A HREF="<%$URL%>"><&|/l&>You're welcome to login again</&></a>
-
-
-<%PERL>
-if (defined %session) {
- tied(%session)->delete;
-}
-$m->abort();
-</%PERL>
-
-<%ARGS>
-$URL => $RT::WebPath."/"
-</%ARGS>
diff --git a/rt/html/NoAuth/Reminder.html b/rt/html/NoAuth/Reminder.html
deleted file mode 100644
index 0793f6c..0000000
--- a/rt/html/NoAuth/Reminder.html
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => loc('Password Reminder') &>
-
-<&|/l&>Not yet implemented.</&>
diff --git a/rt/html/NoAuth/images/autohandler b/rt/html/NoAuth/images/autohandler
deleted file mode 100644
index 2e428c1..0000000
--- a/rt/html/NoAuth/images/autohandler
+++ /dev/null
@@ -1,24 +0,0 @@
-<%init>
-
-# This autohandler will spit out RT's images if the user hasn't
-# properly configured their webserver to stop RT from passing
-# images through the mason handler.
-
-my $file = $m->base_comp->source_file;
-my $type = "application/octet-stream";
-
-if ($file =~ /\.(gif|png|jpe?g)$/i) {
- $type = "image/$1";
- $type =~ s/jpg/jpeg/gi;
-}
-
-die unless (-f $file && -r $file);
-$r->content_type($type);
-open (FILE, "<$file") || die;
-{
- local $/ = \16384;
- $m->out($_) while (<FILE>);
- close(FILE);
-}
-$m->abort;
-</%init>
diff --git a/rt/html/NoAuth/images/bplogo.gif b/rt/html/NoAuth/images/bplogo.gif
deleted file mode 100644
index e2cf49c..0000000
--- a/rt/html/NoAuth/images/bplogo.gif
+++ /dev/null
Binary files differ
diff --git a/rt/html/NoAuth/images/favicon.png b/rt/html/NoAuth/images/favicon.png
deleted file mode 100644
index ed1ee37..0000000
--- a/rt/html/NoAuth/images/favicon.png
+++ /dev/null
Binary files differ
diff --git a/rt/html/NoAuth/images/small-logo.png b/rt/html/NoAuth/images/small-logo.png
deleted file mode 100644
index 1e415e6..0000000
--- a/rt/html/NoAuth/images/small-logo.png
+++ /dev/null
Binary files differ
diff --git a/rt/html/NoAuth/images/space.gif b/rt/html/NoAuth/images/space.gif
deleted file mode 100644
index 1d11fa9..0000000
--- a/rt/html/NoAuth/images/space.gif
+++ /dev/null
Binary files differ
diff --git a/rt/html/NoAuth/webrt.css b/rt/html/NoAuth/webrt.css
deleted file mode 100644
index 5c241f9..0000000
--- a/rt/html/NoAuth/webrt.css
+++ /dev/null
@@ -1,759 +0,0 @@
-/*
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-*/
-
-/* * {
- font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 1.2em;
-} */
-
-SPAN.nav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 12px;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-.nav2 { font-size: 10px;
- white-space: nowrap}
-.nav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 13px;
- font-weight: bold;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-.currentnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 13px;
- font-weight: bold;
- color: #FFFF66;
- text-decoration: none;
- white-space: nowrap}
-.topnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 16px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-
-/*
-%# .topnav is the original RT class for the sidebar navigation tabs.
-%# Font-sizing by level depth was originally hard-coded into Elements/Menu.
-%# This modification sets a different class name for each level, allowing
-%# style sheet control over the formats.
-*/
-
-a.topnav-0 { font-family: Verdana, sans-serif;
- font-size: 16px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-a.topnav-1 { font-family: Verdana, sans-serif;
- font-size: 14px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-a.topnav-2 { font-family: Verdana, sans-serif;
- font-size: 12px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-a.topnav-3 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-a.topnav-4 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-a.topnav-5 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-li.topnav-0-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-1-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-2-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-3-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-4-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-5-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.topnav-0-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.topnav-1-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.topnav-2-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.topnav-3-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.topnav-4-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.topnav-5-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-
-.currenttopnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 16px;
- font-weight: bold;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-
-/*
-%# .currenttopnav is the original RT class for the sidebar navigation tabs.
-%# Font-sizing by level depth was originally hard-coded into Elements/Menu.
-%# This modification sets a different class name for each level, allowing
-%# style sheet control over the formats
-*/
-
-a.currenttopnav-0 { font-family: Verdana, sans-serif;
- font-size: 16px;
- font-weight: bold;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-a.currenttopnav-1 { font-family: Verdana, sans-serif;
- font-size: 14px;
- font-weight: bold;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-a.currenttopnav-2 { font-family: Verdana, sans-serif;
- font-size: 12px;
- font-weight: normal;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-a.currenttopnav-3 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-a.currenttopnav-4 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-a.currenttopnav-5 { font-family: Verdana, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #ffffff; background-color: #7e0079;
- text-decoration: none;
- white-space: nowrap}
-li.currenttopnav-0-minor {
- border-top: solid #999999 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-1-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-2-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-3-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-4-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-5-minor {
- border-top: solid #777777 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-li.currenttopnav-0-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.currenttopnav-1-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.currenttopnav-2-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.currenttopnav-3-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.currenttopnav-4-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-li.currenttopnav-5-major {
- border-bottom: solid black 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-
-.topactions { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 10px;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-.subnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 11px;
- font-weight: normal;
- color: #FFFFFF;
- text-decoration: none;
- white-space: nowrap}
-.currentsubnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 11px;
- font-weight: bold;
- color: #FFFF66;
- text-decoration: none;
- white-space: nowrap}
-.error { background-color: #ff0000;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.oldblue { background-color: #0066CC;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.blue {
- background-color: #4682B4;
-/* %# background-color: #eeeeee; */
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-/* %# Actually the "topactions" section */
-.blueright { background-color: #4682B4;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- padding-right: 1em;
- }
-.olddarkblue { background-color: #003399;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.darkblue {
- background-color: #000080;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.darkblueright {
- background-color: #000080;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.lightgray {
- background-color: #eeeeee;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.lightgrayright {
- background-color: #eeeeee;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.black {
- background-color: #000000;
- color: #ffffff;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.blackright {
- background-color: #000000;
- color: #ffffff;
- background-position: left top;
- vertical-align: center;
- text-align: right;
- font-size:16px;
- padding-right:4px
- }
-
-input.fsblackbutton {
- background-color:#333333;
- color: #ffffff;
- border:1px solid;
- border-top-color:#cccccc;
- border-left-color:#cccccc;
- border-right-color:#aaaaaa;
- border-bottom-color:#aaaaaa;
- font-family: Arial, Verdana, Helvetica, sans-serif;
- font-weight:bold;
- padding-left:12px;
- padding-right:12px;
- overflow:visible;
- filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff333333',EndColorStr='#ff666666')
-}
-
-input.fsblackbuttonselected {
- background-color:#7e0079;
- color: #ffffff;
- border:1px solid;
- border-top-color:#cccccc;
- border-left-color:#cccccc;
- border-right-color:#aaaaaa;
- border-bottom-color:#aaaaaa;
- font-family: Arial, Verdana, Helvetica, sans-serif;
- font-weight:bold;
- padding-left:12px;
- padding-right:12px;
- overflow:visible;
- filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#ff330033',EndColorStr='#ff7e0079')
-}
-
-.mediumgray {
- background-color: #cccccc;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.mediumgrayright {
- background-color: #cccccc;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.darkmediumgray {
- background-color: #aaaaaa;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.darkmediumgrayright {
- background-color: #aaaaaa;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.bggray {
- background-color: #e8e8e8;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.bggrayright {
- background-color: #e8e8e8;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.white {
- background-color: #ffffff;
- background-position: left top;
- vertical-align: top;
- text-align: left;
- }
-.whiteright {
- background-color: #ffffff;
- background-position: left top;
- vertical-align: top;
- text-align: right;
- }
-.overdue {
- color: red;
-}
-
-div.messagebody {
- padding: 2em;
-
-}
-
-
-div.downloadattachment {
- font-size: 10px;
- text-align: right;
-
-}
-
-
-td { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 12px;
- background-position: left top;
- }
-.black { background-color: #000000;
- background-position: left top;
- }
-span.rtname { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 18px;
- font-weight: normal;
- color: #ffffff}
-span.title { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 20px;
- font-weight: bold;
- color: #ffffff}
-.header { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 12px;
- font-weight: bold;
- color: #0066CC}
-.subheader { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 11px;
- font-weight: bold;
- color: #0066CC }
-.value { font-weight: bold; }
-.entry { font-weight: normal; }
-.label { font-weight: normal;
- text-align: right; }
-.labeltop { font-weight: normal;
- text-align: right;
- vertical-align: top }
-.productnav { font-family: Arial, Verdana, Helvetica, sans-serif;
- font-size: 11px;
- color: #FFFFFF;
- text-align: center;
- vertical-align: middle;
- text-decoration: none}
-.rtblue { background-color: #3399FF;
- margin-top: 0.2em;
- background-position: left top;
- vertical-align: top }
-
-
-.currenttab { margin: 0.2em; background: #336699; }
-.othertab { margin: 0.2em; background: #efefef; }
-.oddline { background-color : #ccccee; }
-
-UL.topnav LI :focus { text-decoration: underline; }
-
-TD.mainbody {
- padding-top: 0.5em;
- padding-left: 1em;
- padding-right: 1em;
- margin-left: 1em;
- margin-right: 1em;
- background-color: #e8e8e8;
-}
-
-td.boxcontainer + td.boxcontainer {
- margin-left: 1em;
- padding-left: 1em;
- border-collapse: collapse;
-}
-
-th.ticketheader { font-size: 80%;
- font-weight: bold;
- color: #336699;
- background: #cccccc;
-}
-
-th.titlebox {
- text-align: left;
- padding-left: 0.5em;
- padding-right: 0.5em;
- margin-left: 0.5em;
- margin-right: 0.5em;
- border-top: solid black 1px;
- border-bottom: solid black 1px;
-}
-th.titleboxright {
- text-align: right;
- padding-left: 0.5em;
- padding-right: 0.5em;
- margin-left: 0.5em;
- margin-right: 0.5em;
- border-top: solid black 1px;
- border-bottom: solid black 1px;
-}
-
-TD.titlebox {
- padding-left: 1em;
- padding-right: 1em;
- padding-top: 1em;
- padding-bottom: 1em;
-}
-
-SPAN.message {
- font-size: 100%;
- font-family: Arial, Verdana, Helvetica, sans-serif;
-}
-
-
-BODY {
- color: #000;
- background: #FFFFFF;
- font-family: "Helvetica", sans-serif;
- margin-top: 0px;
- margin-bottom: 0px;
- margin-left: 0px;
- margin-right: 0px;
- border-top: 0px;
- border-bottom: 0px;
- border-left: 0px;
- border-right: 0px;
-}
-
-
-TR.oddline {
- background-color : #ffffff;
-}
-
-TR.evenline {
- background-color : #ccccee;
-}
-
-H1, H2, H3 {
- margin-top: 0.2em;
- color: #336699;
- font-family: "Helvetica", sans-serif;
-
- clear: both;
-}
-
-
-DIV.endmatter { margin-left: -7% }
-.bpscredits {margin-top: 1em;
- text-align: right;
- color: #666666;
- }
-
-
-A { font-weight: bold; color: #000000
- }
-
-.currenttab { color: #ffffff;}
-.othertab { color: #336699; }
-
-.inverse { color: #ffffff; }
-
-
-
-A:link IMG, A:visited IMG { border-style: none }
-a:focus {text-decoration: underline }
-A IMG { color: white } /* The only way to hide the border in NS 4.x */
-
-/* a:link { text-decoration: none} */
-/* a:visited { text-decoration: none} */
-
-a:hover { text-decoration: underline}
-/* a:focus { background-color: #ccccee } */
-
-.hide {
- display: none;
- color: white;
-}
-
-SPAN.date { font-size: 0.8em }
-
-span.title { font-size: 1.6em;
- vertical-align: middle;
-/* %# color: #ffffff; */
- color: #000000;
- }
-span.productname { font-size: 2em;
- color: #0066cc;}
-SPAN.titleboxtitle, SPAN.titleboxclose {
- font-size: 80%;
- color: #ffffff;
- vertical-align: middle;
- text-align: left;
- }
-SPAN.titleboxtitle a {
- color: #ffffff;
-}
-SPAN.titleboxtitle a:after {
- content: "...";
-}
-
-SPAN.titleboxright {
- font-size: 0.8em;
- color: #ffffff;
- vertical-align: middle;
- text-align: right;
- }
-
-SPAN.attribution {
- font-weight: bold;
-}
-
-SPAN.label { font-size: 0.8em;
-}
-
-DIV.page-stats { font-size: 0.8em;
- color: #cccccc;
- text-align: right;
- }
-
-
-BLOCKQUOTE {
- font-style: italic;
-}
-
-.emphasized {
- font-weight: bold
-}
-
-
-.oddline {
- background-color : #ccccee;
-}
-
-ul.topnav {
- list-style: none;
- margin-left: 0;
- margin-right: 0.25em;
- padding-left: 0.25em;
- padding-bottom: 0;
- padding-top:0;
- margin-top: 0;
- margin-bottom:0;
-}
-
-.menu-major-separator {
- border-bottom: solid white 1px;
- padding-top: .25em;
- padding-bottom: .5em;
-}
-
-.menu-minor-separator {
- border-top: solid #999999 1px;
- padding-top: .1em;
- margin-top: .5em;
-}
-
-TH.collection-as-table { text-align: center;
- font-size: 0.8em;
- padding-left: .5em;
- padding-right: .5em;
- color: #333333;
- background-color: #cccccc;
- white-space: nowrap;
- }
-
-TD.collection-as-table { text-align: left;
- padding-left: .5em;
- padding-right: .5em;
- }
-
-textarea.signature {
- width: 100%;
-}
-textarea.comments {
- width: 100%;
-}
-
-textarea.messagebox {
- width: 100%;
-}
-
-/*
-%# Provide a callback for adding/modifying the style sheet.
-%# http://www.w3.org/TR/REC-CSS1 - section 3.2, says:
-%# "latter specified rule wins"
-<& /Elements/Callback &>
-<%flags>
-inherit => undef
-</%flags>
-<%init>
-$r->content_type('text/css');
-#$r->headers_out->{'Expires'} = '+30m';
-</%init>
-*/
diff --git a/rt/html/REST/1.0/Forms/queue/default b/rt/html/REST/1.0/Forms/queue/default
deleted file mode 100644
index c87c33c..0000000
--- a/rt/html/REST/1.0/Forms/queue/default
+++ /dev/null
@@ -1,168 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/queue/default
-%#
-<%ARGS>
-$id
-$format => 's'
-$changes => {}
-</%ARGS>
-<%perl>
-my @comments;
-my ($c, $o, $k, $e) = ("", [], {}, 0);
-my %data = %$changes;
-my $queue = new RT::Queue $session{CurrentUser};
-my @fields = qw(Name Description CorrespondAddress CommentAddress
- InitialPriority FinalPriority DefaultDueIn);
-my %fields = map { lc $_ => $_ } @fields;
-
-if ($id ne 'new') {
- $queue->Load($id);
- if (!$queue->Id) {
- return [ "# Queue $id does not exist.", [], {}, 1 ];
- }
-}
-else {
- if (%data == 0) {
- return [
- "# Required: Name",
- [ "id", @fields ],
- {
- id => 'queue/new',
- Name => '<queue name>',
- Description => "",
- CommentAddress => "",
- CorrespondAddress => "",
- InitialPriority => "",
- FinalPriority => "",
- DefaultDueIn => "",
- },
- 0
- ];
- }
- else {
- my %v;
- my %create = %fields;
-
- foreach my $k (keys %data) {
- if (exists $create{lc $k}) {
- $v{$create{lc $k}} = delete $data{$k};
- }
- }
-
- if ($v{Name} eq '<queue name>') {
- my %o = keys %$changes;
- delete @o{"id", @fields};
- return [
- "# Please set the queue name.",
- [ "id", @fields, keys %o ], $changes, 1
- ];
- }
-
- $queue->Create(%v);
- unless ($queue->Id) {
- return [ "# Could not create queue.", [], {}, 1 ];
- }
-
- delete $data{id};
- $id = $queue->Id;
- push(@comments, "# Queue $id created.");
- goto DONE if %data == 0;
- }
-}
-
-if (%data == 0) {
- my @data;
-
- push @data, [ id => "queue/".$queue->Id ];
- foreach my $key (@fields) {
- push @data, [ $key => $queue->$key ];
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-}
-else {
- my ($get, $set, $key, $val, $n, $s);
-
- foreach $key (keys %data) {
- $val = $data{$key};
- $key = lc $key;
- $n = 1;
-
- if (exists $fields{$key}) {
- $key = $fields{$key};
- $set = "Set$key";
-
- next if $val eq $queue->$key;
- ($n, $s) = $queue->$set($val);
- }
- elsif ($key ne 'id') {
- $n = 0;
- $s = "Unknown field.";
- }
-
- SET:
- if ($n == 0) {
- $e = 1;
- push @comments, "# $key: $s";
- unless (@$o) {
- my %o = keys %$changes;
- delete @o{"id", @fields};
- @$o = ("id", @fields, keys %o);
- $k = $changes;
- }
- }
- }
-
- push(@comments, "# Queue $id updated.") unless $n == 0;
-}
-
-DONE:
-$c ||= join("\n", @comments) if @comments;
-return [ $c, $o, $k, $e ];
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/queue/ns b/rt/html/REST/1.0/Forms/queue/ns
deleted file mode 100644
index b0ba003..0000000
--- a/rt/html/REST/1.0/Forms/queue/ns
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/queue/ns
-%#
-<%ARGS>
-$id
-</%ARGS>
-<%perl>
-use RT::Queues;
-
-my $queues = new RT::Queues $session{CurrentUser};
-$queues->Limit(FIELD => 'Name', OPERATOR => '=', VALUE => $id);
-if ($queues->Count == 0) {
- return (0, "No queue named $id exists.");
-}
-return $queues->Next->Id;
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/ticket/attachments b/rt/html/REST/1.0/Forms/ticket/attachments
deleted file mode 100644
index ca75ce0..0000000
--- a/rt/html/REST/1.0/Forms/ticket/attachments
+++ /dev/null
@@ -1,128 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/ticket/attachments
-%#
-<%ARGS>
-$id
-$args => undef
-</%ARGS>
-<%perl>
-my @data;
-my ($c, $o, $k, $e) = ("", [], {}, "");
-my $ticket = new RT::Ticket $session{CurrentUser};
-
-$ticket->Load($id);
-unless ($ticket->Id) {
- return [ "# Ticket $id does not exist.", [], {}, 1 ];
-}
-
-my @arglist = split('/', $args);
-my ($aid, $content);
-
-if ($arglist[1] eq 'content') {
- $aid = $arglist[0];
- $content = 1;
-} else {
- $aid = $args;
- $content = 0;
-}
-
-if ($aid) {
- unless ($aid =~ /^\d+$/) {
- return [ "# Invalid attachment id: $aid", [], {}, 1 ];
- }
- my $attachment = new RT::Attachment $session{CurrentUser};
- $attachment->Load($aid);
- unless ($attachment->Id eq $aid) {
- return [ "# Invalid attachment id: $aid", [], {}, 1 ];
- }
- if ($content) {
- $c = $attachment->OriginalContent;
- } else {
- my @data;
- push @data, [ id => $attachment->Id ];
- push @data, [ Subject => $attachment->Subject ];
- push @data, [ Creator => $attachment->Creator ];
- push @data, [ Created => $attachment->Created ];
- push @data, [ Transaction => $attachment->TransactionId ];
- push @data, [ Parent => $attachment->Parent ];
- push @data, [ MessageId => $attachment->MessageId ];
- push @data, [ Filename => $attachment->Filename ];
- push @data, [ ContentType => $attachment->ContentType ];
- push @data, [ ContentEncoding => $attachment->ContentEncoding ];
- push @data, [ Headers => $attachment->Headers ];
- push @data, [ Content => $attachment->Content ];
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
- }
-
-}
-else {
- my @attachments;
- my $transactions = $ticket->Transactions;
- while (my $t = $transactions->Next) {
- my $attachments = $t->Attachments;
- while (my $a = $attachments->Next) {
- my $size = length($a->Content);
- if ($size > 1024) { $size = int($size/102.4)/10 . "k" }
- else { $size .= "b" }
- push @attachments, $a->Id.": ".$a->Filename." (".$a->ContentType . " / ".$size.")";
- }
- }
-
- if (@attachments) {
- $o = [ "id", "Attachments" ];
- $k = {
- id => "ticket/".$ticket->Id."/attachments",
- Attachments => \@attachments
- };
- }
-}
-
-return [ $c, $o, $k, $e ];
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/ticket/default b/rt/html/REST/1.0/Forms/ticket/default
deleted file mode 100644
index 78f6c95..0000000
--- a/rt/html/REST/1.0/Forms/ticket/default
+++ /dev/null
@@ -1,298 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/ticket/default
-%#
-<%ARGS>
-$id
-$changes => {}
-$fields => undef
-</%ARGS>
-<%perl>
-use MIME::Entity;
-
-my @comments;
-my ($c, $o, $k, $e) = ("", [], {}, 0);
-my %data = %$changes;
-my $ticket = new RT::Ticket $session{CurrentUser};
-my @dates = qw(Created Starts Started Due Resolved Told);
-my @people = qw(Requestors Cc AdminCc);
-my @create = qw(Queue Requestor Subject Cc AdminCc Owner Status Priority
- InitialPriority FinalPriority TimeEstimated TimeWorked
- TimeLeft Starts Started Due Resolved);
-my @simple = qw(Subject Status Priority Disabled TimeEstimated TimeWorked
- TimeLeft InitialPriority FinalPriority);
-my %dates = map {lc $_ => $_} @dates;
-my %people = map {lc $_ => $_} @people;
-my %create = map {lc $_ => $_} @create;
-my %simple = map {lc $_ => $_} @simple;
-
-# Are we dealing with an existing ticket?
-if ($id ne 'new') {
- $ticket->Load($id);
- if (!$ticket->Id) {
- return [ "# Ticket $id does not exist.", [], {}, 1 ];
- }
- elsif (!$ticket->CurrentUserHasRight('ShowTicket') ||
- (%data && !$ticket->CurrentUserHasRight('ModifyTicket')))
- {
- my $act = %data ? "modify" : "display";
- return [ "# You are not allowed to $act ticket $id.", [], {}, 1 ];
- }
-}
-else {
- if (%data == 0) {
- # GET ticket/new: Return a suitable default form.
- # We get defaults from queue/1 (XXX: What if it isn't there?).
- my $due = new RT::Date $session{CurrentUser};
- my $queue = new RT::Queue $session{CurrentUser};
- my $starts = new RT::Date $session{CurrentUser};
- $queue->Load(1);
- $due->SetToNow;
- $due->AddDays($queue->DefaultDueIn) if $queue->DefaultDueIn;
- $starts->SetToNow;
-
- return [
- "# Required: Queue, Requestor, Subject",
- [ qw(id Queue Requestor Subject Cc AdminCc Owner Status Priority
- InitialPriority FinalPriority TimeEstimated Starts Due Text) ],
- {
- id => "ticket/new",
- Queue => $queue->Name,
- Requestor => $session{CurrentUser}->Name,
- Subject => "",
- Cc => [],
- AdminCc => [],
- Owner => "",
- Status => "new",
- Priority => $queue->InitialPriority,
- InitialPriority => $queue->InitialPriority,
- FinalPriority => $queue->FinalPriority,
- TimeEstimated => 0,
- Starts => $starts->ISO,
- Due => $due->ISO,
- Text => "",
- },
- 0
- ];
- }
- else {
- # We'll create a new ticket, and fall through to set fields that
- # can't be set in the call to Create().
- my (%v, $text);
-
- foreach my $k (keys %data) {
- if (exists $create{lc $k}) {
- $v{$create{lc $k}} = delete $data{$k};
- }
- elsif (lc $k eq 'text') {
- $text = delete $data{$k};
- }
- }
-
- if ($text) {
- $v{MIMEObj} =
- MIME::Entity->build(
- From => $session{CurrentUser}->EmailAddress,
- Subject => $v{Subject},
- Data => $text
- );
- }
-
- $ticket->Create(%v);
- unless ($ticket->Id) {
- return [ "# Could not create ticket.", [], {}, 1 ];
- }
-
- delete $data{id};
- $id = $ticket->Id;
- push(@comments, "# Ticket $id created.");
- goto DONE if %data == 0;
- }
-}
-
-# Now we know we're dealing with an existing ticket.
-if (%data == 0) {
- my ($time, $key, $val, @data);
-
- push @data, [ id => "ticket/".$ticket->Id ];
- push @data, [ Queue => $ticket->QueueObj->Name ]
- if (!%$fields || exists $fields->{lc 'Queue'});
- push @data, [ Owner => $ticket->OwnerObj->Name ]
- if (!%$fields || exists $fields->{lc 'Owner'});
- push @data, [ Creator => $ticket->CreatorObj->Name ]
- if (!%$fields || exists $fields->{lc 'Creator'});
-
- foreach (qw(Subject Status Priority InitialPriority FinalPriority)) {
- next unless (!%$fields || (exists $fields->{lc $_}));
- push @data, [$_ => $ticket->$_ ];
- }
-
- foreach $key (@people) {
- next unless (!%$fields || (exists $fields->{lc $key}));
- push @data, [ $key => [ $ticket->$key->MemberEmailAddresses ] ];
- }
-
- $time = new RT::Date ($session{CurrentUser});
- foreach $key (@dates) {
- next unless (!%$fields || (exists $fields->{lc $key}));
- $time->Set(Format => 'sql', Value => $ticket->$key);
- push @data, [ $key => $time->AsString ];
- }
-
- $time = new RT::Date ($session{CurrentUser});
- foreach $key (qw(TimeEstimated TimeWorked TimeLeft)) {
- next unless (!%$fields || (exists $fields->{lc $key}));
- $val = $ticket->$key || 0;
- $val = $time->DurationAsString($val*60) if $val;
- push @data, [ $key => $val ];
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-}
-else {
- my ($get, $set, $key, $val, $n, $s);
-
- foreach $key (keys %data) {
- $val = $data{$key};
- $key = lc $key;
- $n = 1;
-
- if (ref $val eq 'ARRAY') {
- unless ($key =~ /^(?:Requestors|Cc|AdminCc)$/i) {
- $n = 0;
- $s = "$key may have only one value.";
- goto SET;
- }
- }
-
- if ($key =~ /^queue$/i) {
- next if $val eq $ticket->QueueObj->Name;
- ($n, $s) = $ticket->SetQueue($val);
- }
- elsif ($key =~ /^owner$/i) {
- next if $val eq $ticket->OwnerObj->Name;
- ($n, $s) = $ticket->SetOwner($val);
- }
- elsif (exists $simple{$key}) {
- $key = $simple{$key};
- $set = "Set$key";
-
- next if (($val eq $ticket->$key)|| ($ticket->$key =~ /^\d+$/ && $val == $ticket->$key));
- ($n, $s) = $ticket->$set("$val");
- }
- elsif (exists $dates{$key}) {
- $key = $dates{$key};
- $set = "Set$key";
-
- my $time = new RT::Date $session{CurrentUser};
- $time->Set(Format => 'sql', Value => $ticket->$key);
- next if ($val =~ /^not set$/i || $val eq $time->AsString);
- ($n, $s) = $ticket->$set($val);
- }
- elsif (exists $people{$key}) {
- $key = $people{$key};
- my ($p, @msgs);
-
- my %new = map {$_=>1} @{ vsplit($val) };
- my %old = map {$_=>1} $ticket->$key->MemberEmailAddresses;
- my $type = $key eq 'Requestors' ? 'Requestor' : $key;
-
- foreach $p (keys %old) {
- unless (exists $new{$p}) {
- ($s, $n) = $ticket->DeleteWatcher(Type => $type,
- Email => $p);
- push @msgs, [ $s, $n ];
- }
- }
- foreach $p (keys %new) {
- # XXX: This is a stupid test.
- unless ($p =~ /^[\w.+-]+\@([\w.-]+\.)*\w+.?$/) {
- $s = 0;
- $n = "$p is not a valid email address.";
- push @msgs, [ $s, $n ];
- next;
- }
- unless ($ticket->IsWatcher(Type => $type, Email => $p)) {
- ($s, $n) = $ticket->AddWatcher(Type => $type,
- Email => $p);
- push @msgs, [ $s, $n ];
- }
- }
-
- $n = 1;
- if (@msgs = grep {$_->[0] == 0} @msgs) {
- $n = 0;
- $s = join "\n", map {"# ".$_->[1]} @msgs;
- $s =~ s/^# //;
- }
- }
- elsif ($key ne 'id' && $key ne 'type' && $key ne 'creator') {
- $n = 0;
- $s = "Unknown field.";
- }
-
- SET:
- if ($n == 0) {
- $e = 1;
- push @comments, "# $key: $s";
- unless (@$o) {
- my %o = keys %$changes;
- delete $o{id};
- @$o = ("id", keys %o);
- $k = $changes;
- }
- }
- }
- push(@comments, "# Ticket ".$ticket->id." updated.") unless $n == 0;
-}
-
-DONE:
-$c ||= join("\n", @comments) if @comments;
-return [$c, $o, $k, $e];
-
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/ticket/history b/rt/html/REST/1.0/Forms/ticket/history
deleted file mode 100644
index 4663e97..0000000
--- a/rt/html/REST/1.0/Forms/ticket/history
+++ /dev/null
@@ -1,187 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/ticket/history
-%#
-<%ARGS>
-$id
-$args => undef
-$format => undef
-$fields => undef
-</%ARGS>
-<%perl>
-my $ticket = new RT::Ticket $session{CurrentUser};
-my ($c, $o, $k, $e) = ("", [], {}, "");
-
-$ticket->Load($id);
-unless ($ticket->Id) {
- return [ "# Ticket $id does not exist.", [], {}, 1 ];
-}
-
-my $trans = $ticket->Transactions();
-my $total = $trans->Count();
-
-chomp $args;
-my @arglist = split('/', $args);
-my ($type, $tid);
-
-if ($arglist[0] eq 'type') {
- $type = $arglist[1];
-} elsif ($arglist[0] eq 'id') {
- $tid = $arglist[1];
-} else {
- $type = $args;
-}
-
-if ($type) {
- # Create, Set, Status, Correspond, Comment, Give, Steal, Take, Told
- # CustomField, AddLink, DeleteLink, AddWatcher, DelWatcher
- if ($args =~ /^links?$/) {
- $trans->Limit(FIELD => 'Type', OPERATOR => 'LIKE', VALUE => '%Link');
- }
- elsif ($args =~ /^watchers?$/) {
- $trans->Limit(FIELD => 'Type', OPERATOR => 'LIKE', VALUE => '%Watcher');
- }
- else {
- $trans->Limit(FIELD => 'Type', OPERATOR => '=', VALUE => $type);
- }
-} elsif ($tid) {
- $trans->Limit(FIELD => 'Id', OPERATOR => '=', VALUE => $tid);
-}
-
-if ($tid) {
- my @data;
- my $t = new RT::Transaction $session{CurrentUser};
- $t->Load($tid);
-
- push @data, [ id => $t->Id ];
- push @data, [ Ticket => $t->Ticket ]
- if (!%$fields || exists $fields->{lc 'Ticket'});
- push @data, [ TimeTaken => $t->TimeTaken ]
- if (!%$fields || exists $fields->{lc 'TimeTaken'});
- push @data, [ Type => $t->Type ]
- if (!%$fields || exists $fields->{lc 'Type'});
- push @data, [ Field => $t->Field ]
- if (!%$fields || exists $fields->{lc 'Field'});
- push @data, [ OldValue => $t->OldValue ]
- if (!%$fields || exists $fields->{lc 'OldValue'});
- push @data, [ NewValue => $t->NewValue ]
- if (!%$fields || exists $fields->{lc 'NewValue'});
- push @data, [ Data => $t->Data ]
- if (!%$fields || exists $fields->{lc 'Data'});
- push @data, [ Description => $t->Description ]
- if (!%$fields || exists $fields->{lc 'Description'});
- push @data, [ Content => $t->Content ]
- if (!%$fields || exists $fields->{lc 'Content'});
-
-
- if (!%$fields || exists $fields->{lc 'Content'}) {
- my $creator = new RT::User $session{CurrentUser};
- $creator->Load($t->Creator);
- push @data, [ Creator => $creator->Name ];
- }
- push @data, [ Created => $t->Created ]
- if (!%$fields || exists $fields->{lc 'Created'});
-
- if (!%$fields || exists $fields->{lc 'Attachments'}) {
- my $attachlist;
- my $attachments = $t->Attachments;
- while (my $a = $attachments->Next) {
- my $size = length($a->Content);
- if ($size > 1024) { $size = int($size/102.4)/10 . "k" }
- else { $size .= "b" }
- $attachlist .= "\n" . $a->Id.": ".($a->Filename || "untitled")." (".$size.")";
- }
-
- push @data, [Attachments => $attachlist];
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-
-} else {
- my (@data, $tids);
- $format ||= "s";
- $format = "l" if (%$fields);
-
- while (my $t = $trans->Next) {
- my $tid = $t->Id;
-
- if ($format eq "l") {
- $tids .= "," if $tids;
- $tids .= $tid;
- } else {
- push @$o, $tid;
- $k->{$tid} = $t->Description;
- }
- }
-
- if ($format eq "l") {
- my @tid;
- push @tid, "ticket/$id/history/id/$tids";
- my $fieldstring;
- foreach my $key (keys %$fields) {
- $fieldstring .= "," if $fieldstring;
- $fieldstring .= $key;
- }
- my ($content, $forms);
-
- $m->subexec("$RT::WebPath/REST/1.0/show",
- id => \@tid,
- format => $format,
- fields => $fieldstring);
- return [ $c, $o, $k, $e ];
- }
-}
-
-if (!$c) {
- my $sub = $trans->Count();
- $c = "# $sub/$total ($args/total)";
-}
-
-return [ $c, $o, $k, $e ];
-
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/ticket/links b/rt/html/REST/1.0/Forms/ticket/links
deleted file mode 100644
index 9f14da4..0000000
--- a/rt/html/REST/1.0/Forms/ticket/links
+++ /dev/null
@@ -1,170 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/ticket/links
-%#
-<%ARGS>
-$id
-$format => 's'
-$changes => undef
-</%ARGS>
-<%perl>
-my @data;
-my $ticket = new RT::Ticket $session{CurrentUser};
-
-$ticket->Load($id);
-if (!$ticket->Id) {
- return [ "# Ticket $id does not exist.", [], {}, 1 ];
-}
-
-my ($c, $o, $k, $e) = ("", [], {}, 0);
-my @fields = qw(DependsOn DependedOnBy RefersTo ReferredToBy Members MemberOf);
-my %fields = map { lc $_ => $_ } @fields;
-
-my %lfields = (
- Members => { Type => 'MemberOf', Mode => 'Base' },
- ReferredToBy => { Type => 'RefersTo', Mode => 'Base' },
- DependedOnBy => { Type => 'DependsOn', Mode => 'Base' },
- MemberOf => { Type => 'MemberOf', Mode => 'Target' },
- RefersTo => { Type => 'RefersTo', Mode => 'Target' },
- DependsOn => { Type => 'DependsOn', Mode => 'Target' },
-);
-
-if ($changes) {
- my ($get, $set, $key, $val, $n, $s);
- my %data = %$changes;
- my @comments;
-
- foreach $key (keys %data) {
- $val = $data{$key};
- $key = lc $key;
- $n = 1;
-
- if (exists $fields{$key}) {
- $key = $fields{$key};
-
- my %old;
- my $field = $lfields{$key}->{Mode};
- while (my $link = $ticket->$key->Next) {
- $old{$link->$field} = 1;
- }
-
- my %new;
- foreach my $nkey (@{vsplit($val)}) {
- if ($nkey =~ /^\d+$/) {
- my $uri = new RT::URI $session{CurrentUser};
- my $tick = new RT::Ticket $session{CurrentUser};
- $tick->Load($nkey);
- if ($tick->Id) {
- $nkey = $uri->FromObject($tick);
- }
- else {
- $n = 0;
- $s = "Ticket $nkey does not exist.";
- goto SET;
- }
- }
- $new{$nkey} = 1;
- }
-
- foreach my $u (keys %old) {
- if (exists $new{$u}) {
- delete $new{$u};
- }
- else {
- my $type = $lfields{$key}->{Type};
- my $mode = $lfields{$key}->{Mode};
- ($n, $s) = $ticket->DeleteLink(Type => $type, $mode => $u);
- goto SET;
- }
- }
- foreach my $u (keys %new) {
- my $type = $lfields{$key}->{Type};
- my $mode = $lfields{$key}->{Mode};
- ($n, $s) = $ticket->AddLink(Type => $type, $mode => $u);
- goto SET;
- }
- }
- elsif ($key ne 'id' && $key ne 'type') {
- $n = 0;
- $s = "Unknown field: $key";
- }
-
- SET:
- if ($n == 0) {
- $e = 1;
- push @comments, "# $key: $s";
- unless (@$o) {
- @$o = ("id", @fields);
- %$k = %data;
- }
- }
- }
-
- push(@comments, "# Links for ticket $id updated.") unless @comments;
- $c = join("\n", @comments) if @comments;
-}
-else {
- my @data;
-
- push @data, [ id => "ticket/".$ticket->Id."/links" ];
- foreach my $key (@fields) {
- my @val;
-
- my $field = $lfields{$key}->{Mode};
- while (my $link = $ticket->$key->Next) {
- push @val, $link->$field;
- }
- push(@val, "") if (@val == 0 && $format eq 'l');
- push @data, [ $key => [ @val ] ] if @val;
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-}
-
-return [ $c, $o, $k, $e ];
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/user/default b/rt/html/REST/1.0/Forms/user/default
deleted file mode 100644
index ad2ebd5..0000000
--- a/rt/html/REST/1.0/Forms/user/default
+++ /dev/null
@@ -1,186 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/user/default
-%#
-<%ARGS>
-$id
-$format => 's'
-$changes => {}
-</%ARGS>
-<%perl>
-my @comments;
-my ($c, $o, $k, $e) = ("", [], {}, 0);
-my %data = %$changes;
-my $user = new RT::User $session{CurrentUser};
-my @fields = qw(RealName NickName Gecos Organization Address1 Address2 City
- State Zip Country HomePhone WorkPhone MobilePhone PagerPhone
- FreeformContactInfo Comments Signature Lang EmailEncoding
- WebEncoding ExternalContactInfoId ContactInfoSystem
- ExternalAuthId AuthSystem);
-my %fields = map { lc $_ => $_ } @fields;
-
-if ($id ne 'new') {
- $user->Load($id);
- if (!$user->Id) {
- return [ "# User $id does not exist.", [], {}, 1 ];
- }
-}
-else {
- if (%data == 0) {
- return [
- "# Required: Name, EmailAddress",
- [ qw(id Name EmailAddress Organization Password Comments) ],
- {
- id => "user/new",
- Name => "",
- EmailAddress => "",
- Organization => "",
- Password => "",
- Comments => ""
- },
- 0
- ];
- }
- else {
- my %v;
- my %create = %fields;
- $create{name} = "Name";
- $create{password} = "Password";
- $create{emailaddress} = "EmailAddress";
- $create{contactinfo} = "FreeformContactInfo";
- # Do any fields need to be excluded here?
-
- foreach my $k (keys %data) {
- if (exists $create{lc $k}) {
- $v{$create{lc $k}} = delete $data{$k};
- }
- }
-
- $user->Create(%v);
- unless ($user->Id) {
- return [ "# Could not create user.", [], {}, 1 ];
- }
-
- $id = $user->Id;
- delete $data{id};
- push(@comments, "# User $id created.");
- goto DONE if %data == 0;
- }
-}
-
-if (%data == 0) {
- my @data;
-
- push @data, [ id => "user/".$user->Id ];
- push @data, [ Name => $user->Name ];
- push @data, [ Password => '********' ];
- push @data, [ EmailAddress => $user->EmailAddress ];
-
- foreach my $key (@fields) {
- my $val = $user->$key;
-
- if ($format eq 'l' || (defined $val && $val ne '')) {
- $key = "ContactInfo" if $key eq 'FreeformContactInfo';
- push @data, [ $key => $val ];
- }
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-}
-else {
- my ($get, $set, $key, $val, $n, $s);
-
- foreach $key (keys %data) {
- $val = $data{$key};
- $key = lc $key;
- $n = 1;
-
- if ($key eq 'name' || $key eq 'emailaddress' ||
- $key eq 'contactinfo' || exists $fields{$key})
- {
- if (exists $fields{$key}) {
- $key = $fields{$key};
- }
- else {
- $key = "FreeformContactInfo" if $key eq 'contactinfo';
- $key = "EmailAddress" if $key eq 'emailaddress';
- $key = "Name" if $key eq 'name';
- }
- $set = "Set$key";
-
- next if $val eq $user->$key;
- ($n, $s) = $user->$set($val);
- }
- elsif ($key eq 'password') {
- ($n, $s) = $user->SetPassword($val) unless $val =~ /^\**$/;
- }
- elsif ($key ne 'id') {
- $n = 0;
- $s = "Unknown field.";
- }
-
- SET:
- if ($n == 0) {
- $e = 1;
- push @comments, "# $key: $s";
- unless (@$o) {
- my %o = keys %$changes;
- delete @o{"id", @fields};
- @$o = ("id", @fields, keys %o);
- $k = $changes;
- }
- }
- }
-
- push(@comments, "# User $id updated.") unless $n == 0;
-}
-
-DONE:
-$c ||= join("\n", @comments) if @comments;
-return [ $c, $o, $k, $e ];
-</%perl>
diff --git a/rt/html/REST/1.0/Forms/user/ns b/rt/html/REST/1.0/Forms/user/ns
deleted file mode 100644
index 4061563..0000000
--- a/rt/html/REST/1.0/Forms/user/ns
+++ /dev/null
@@ -1,63 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/Forms/user/ns
-%#
-<%ARGS>
-$id
-</%ARGS>
-<%perl>
-use RT::Users;
-
-my $field = "Name";
-$field = "EmailAddress" if $id =~ /\@/;
-
-my $users = new RT::Users $session{CurrentUser};
-$users->Limit(FIELD => $field, OPERATOR => '=', VALUE => $id);
-if ($users->Count == 0) {
- return (0, "No user named $id exists.");
-}
-return $users->Next->Id;
-</%perl>
diff --git a/rt/html/REST/1.0/NoAuth/mail-gateway b/rt/html/REST/1.0/NoAuth/mail-gateway
deleted file mode 100644
index 5252c19..0000000
--- a/rt/html/REST/1.0/NoAuth/mail-gateway
+++ /dev/null
@@ -1,77 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%flags>
-inherit => undef # inhibit UTF8 conversion done in /autohandler
-</%flags>
-<%ARGS>
-$queue => 1
-$action => "correspond"
-$ticket => undef
-</%ARGS>
-<%init>
-use RT::Interface::Email;
-$r->content_type('text/plain; charset=utf-8');
-$m->error_format('text');
-my ( $status, $error, $Ticket ) = RT::Interface::Email::Gateway(\%ARGS);
- if ($status == -75 ) {
-$m->out("temporary failure - ". $error);
- }
- elsif ($status == 1) {
-$m->out('ok');
- if ( $Ticket->Id ) {
-$m->out('Ticket: '. $Ticket->Id);
-$m->out('Queue: '. $Ticket->QueueObj->Name );
-$m->out('Owner: '. $Ticket->OwnerObj->Name);
-$m->out('Status: '. $Ticket->Status );
-$m->out('Subject: '. $Ticket->Subject );
-$m->out('Requestor: '. $Ticket->Requestors->MemberEmailAddressesAsString );
- }
- } else {
-$m->out('not ok - '.$error);
- }
-
-$m->abort();
-</%init>
diff --git a/rt/html/REST/1.0/autohandler b/rt/html/REST/1.0/autohandler
deleted file mode 100644
index 8e3fb16..0000000
--- a/rt/html/REST/1.0/autohandler
+++ /dev/null
@@ -1,54 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/autohandler
-%#
-<%INIT>
-use RT::Interface::REST;
-$r->content_type('text/plain; charset=utf-8');
-$m->error_format('text');
-$m->call_next();
-$m->abort();
-</%INIT>
diff --git a/rt/html/REST/1.0/dhandler b/rt/html/REST/1.0/dhandler
deleted file mode 100644
index 6cf45b0..0000000
--- a/rt/html/REST/1.0/dhandler
+++ /dev/null
@@ -1,309 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/dhandler
-%#
-<%ARGS>
-@id => ()
-$fields => undef
-$format => undef
-$content => undef
-</%ARGS>
-<%INIT>
-use RT::Interface::REST;
-
-my $output = "";
-my $status = "200 Ok";
-my $object = $m->dhandler_arg;
-
-my $name = qr{[\w.-]+};
-my $list = '(?:(?:\d+-)?\d+,)*(?:\d+-)?\d+';
-my $label = '[a-zA-Z0-9@_.+-]+';
-my $field = '[a-zA-Z][a-zA-Z0-9_-]*';
-my $labels = "(?:$label,)*$label";
-
-# We must handle requests such as the following:
-#
-# 1. http://.../REST/1.0/show (with a list of object specifications).
-# 2. http://.../REST/1.0/edit (with a self-contained list of forms).
-# 3. http://.../REST/1.0/ticket/show (implicit type specification).
-# http://.../REST/1.0/ticket/edit
-# 4. http://.../REST/1.0/ticket/nn (all possibly with a single form).
-# http://.../REST/1.0/ticket/nn/history
-# http://.../REST/1.0/ticket/nn/attachment/1
-#
-# Objects are specified by their type, and either a unique numeric ID,
-# or a unique name (e.g. ticket/1, queue/foo). Multiple objects of the
-# same type may be specified by a comma-separated list of identifiers
-# (e.g., user/ams,rai or ticket/1-3,5-7).
-#
-# Ultimately, we want a list of object specifications to operate upon.
-# The URLs in (4) provide enough information to identify an object. We
-# will assemble submitted information into that format in other cases.
-#
-my (@objects, $forms);
-my $utype;
-
-if ($object eq 'show' || # $REST/show
- (($utype) = ($object =~ m{^($name)/show$}))) # $REST/ticket/show
-{
- # We'll convert type/range specifications ("ticket/1-3,7-9/history")
- # into a list of singular object specifications ("ticket/1/history").
- # If the URL specifies a type, we'll accept only that one.
- foreach my $id (@id) {
- $id =~ s|^(?:$utype/)?|$utype/| if $utype;
- if (my ($type, $oids, $extra) =
- ($id =~ m#^($name)/($list|$labels)(?:(/.*))?$#o))
- {
- foreach my $oid (expand_list($oids)) {
- if ($extra =~ m{^(?:/($name)(?:/(.*))?)?$}o) {
- my ($attr, $args) = ($1, $2);
- # expand transaction and attachment range specifications
- # (if applicable)
- my $tids;
- if ($attr eq 'history' && $args =~ m#id/(\d.*)#o) {
- $tids = $1;
- }
- if ($tids) {
- push(@objects, "$type/$oid/$attr/id/$_") for expand_list($tids);
- } else {
- push(@objects, "$type/$oid$extra");
- }
- }
- }
- }
- else {
- $status = "400 Bad Request";
- $output = "Invalid object ID specified: '$id'";
- goto OUTPUT;
- }
- }
-}
-elsif ($object eq 'edit' || # $REST/edit
- (($utype) = ($object =~ m{^($name)/edit$}))) # $REST/ticket/edit
-{
- # We'll make sure each of the submitted forms is syntactically valid
- # and sufficiently identifies an object to operate upon, then add to
- # the object list as above.
- my @output;
-
- $forms = form_parse($content);
- foreach my $form (@$forms) {
- my ($c, $o, $k, $e) = @$form;
-
- if ($e) {
- push @output, [ "# Syntax error.", $o, $k, $e ];
- }
- else {
- my ($type, $id);
-
- # Look for matching types in the ID, form, and URL.
- $type = exists $k->{type} ? $k->{type} : $utype;
- $type =~ s|^(?:$utype)?|$utype/| if $utype;
- $type =~ s|/$||;
-
- if (exists $k->{id}) {
- $id = $k->{id};
- $id =~ s|^(?:$type/)?|$type/| if $type;
-
- if ($id =~ m#^$name/(?:$label|\d+)(?:/.*)?#o) {
- push @objects, $id;
- }
- else {
- push @output, [ "# Invalid object ID: '$id'", $o, $k, $e ];
- }
- }
- else {
- push @output, [ "# No object ID specified.", $o, $k, $e ];
- }
- }
- }
- # If we saw any errors at this stage, we won't process any part of
- # the submitted data.
- if (@output) {
- unshift @output, [ "# Please resubmit with errors corrected." ];
- $status = "409 Syntax Error";
- $output = form_compose(\@output);
- goto OUTPUT;
- }
-}
-else {
- # We'll assume that this is in the correct format already. Otherwise
- # it will be caught by the loop below.
- push @objects, $object;
-
- if ($content) {
- $forms = form_parse($content);
-
- if (@$forms > 1) {
- $status = "400 Bad Request";
- $output = "You may submit only one form to this object.";
- goto OUTPUT;
- }
-
- my ($c, $o, $k, $e) = @{ $forms->[0] };
- if ($e) {
- $status = "409 Syntax Error";
- $output = form_compose([ ["# Syntax error.", $o, $k, $e] ]);
- goto OUTPUT;
- }
- }
-}
-
-# Make sure we have something to do.
-unless (@objects) {
- $status = "400 Bad Request";
- $output = "No objects specified.";
- goto OUTPUT;
-}
-
-# Parse and validate any field specifications.
-my (%fields, @fields);
-if ($fields) {
- unless ($fields =~ /^(?:$field,)*$field$/) {
- $status = "400 Bad Request";
- $output = "Invalid field specification: $fields";
- goto OUTPUT;
- }
- @fields = map lc, split /,/, $fields;
- @fields{@fields} = ();
- unless (exists $fields{id}) {
- unshift @fields, "id";
- $fields{id} = ();
- }
-}
-
-my (@comments, @output);
-
-foreach $object (@objects) {
- my ($handler, $type, $id, $attr, $args);
- my ($c, $o, $k, $e) = ("", ["id"], {id => $object}, 0);
-
- my $i = 0;
- if ($object =~ m{^($name)/(\d+|$label)(?:/($name)(?:/(.*))?)?$}o ||
- $object =~ m{^($name)/(new)$}o)
- {
- ($type, $id, $attr, $args) = ($1, $2, ($3 || 'default'), $4);
- $handler = "Forms/$type/$attr";
-
- unless ($m->comp_exists($handler)) {
- $args = "$attr/$args";
- $handler = "Forms/$type/default";
-
- unless ($m->comp_exists($handler)) {
- $i = 2;
- $c = "# Unknown object type: $type";
- }
- }
- elsif ($id ne 'new' && $id !~ /^\d+$/) {
- my $ns = "Forms/$type/ns";
-
- # Can we resolve named objects?
- unless ($m->comp_exists($ns)) {
- $i = 3;
- $c = "# Objects of type $type must be specified by numeric id.";
- }
- else {
- my ($n, $s) = $m->comp("Forms/$type/ns", id => $id);
- if ($n <= 0) { $i = 4; $c = "# $s"; }
- else { $i = 0; $id = $n; }
- }
- }
- else {
- $i = 0;
- }
- }
- else {
- $i = 1;
- $c = "# Invalid object specification: '$object'";
- }
-
- if ($i != 0) {
- if ($content) {
- (undef, $o, $k, $e) = @{ shift @$forms };
- }
- push @output, [ $c, $o, $k ];
- next;
- }
-
- unless ($content) {
- my $d = $m->comp($handler, id => $id, args => $args, format => $format, fields => \%fields);
- my ($c, $o, $k, $e) = @$d;
-
- if (!$e && @$o && keys %fields) {
- my %lk = map { lc $_ => $_ } keys %$k;
- @$o = map { $lk{$_} } @fields;
- foreach my $key (keys %$k) {
- delete $k->{$key} unless exists $fields{lc $key};
- }
- }
- push(@output, [ $c, $o, $k ]) if ($c || @$o || keys %$k);
- }
- else {
- my ($c, $o, $k, $e) = @{ shift @$forms };
- my $d = $m->comp($handler, id => $id, args => $args, format => $format,
- changes => $k);
- ($c, $o, $k, $e) = @$d;
-
- # We won't pass $e through to compose, trusting instead that the
- # handler added suitable comments for the user.
- if ($e) {
- $status = "409 Syntax Error" if @$o;
- push @output, [ $c, $o, $k ];
- }
- else {
- push @comments, $c;
- }
- }
-}
-
-unshift(@output, [ join "\n", @comments ]) if @comments;
-$output = form_compose(\@output);
-
-OUTPUT:
-</%INIT>
-RT/<% $RT::VERSION %> <% $status %>
-
-<% $output |n %>
diff --git a/rt/html/REST/1.0/logout b/rt/html/REST/1.0/logout
deleted file mode 100644
index 470cb09..0000000
--- a/rt/html/REST/1.0/logout
+++ /dev/null
@@ -1,49 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%PERL>
-tied(%session)->delete if (defined %session);
-</%PERL>
-RT/<% $RT::VERSION %> 200 Ok
diff --git a/rt/html/REST/1.0/search/dhandler b/rt/html/REST/1.0/search/dhandler
deleted file mode 100644
index 1915a46..0000000
--- a/rt/html/REST/1.0/search/dhandler
+++ /dev/null
@@ -1,54 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/search/dhandler
-%#
-<%INIT>
-my $status = "500 Server Error";
-my $output = "Unsupported object type.";
-</%INIT>
-RT/<% $RT::VERSION %> <% $status %>
-
-<% $output |n %>
diff --git a/rt/html/REST/1.0/search/ticket b/rt/html/REST/1.0/search/ticket
deleted file mode 100644
index d0ab59e..0000000
--- a/rt/html/REST/1.0/search/ticket
+++ /dev/null
@@ -1,141 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/search/ticket
-%#
-<%ARGS>
-$query
-$format => undef
-$orderby => undef
-$fields => undef
-</%ARGS>
-<%INIT>
-my $output = "";
-my $status = "200 Ok";
-my $tickets = new RT::Tickets $session{CurrentUser};
-
-# Parse and validate any field specifications.
-my $field = '[a-zA-Z][a-zA-Z0-9_-]*';
-my (%fields, @fields);
-if ($fields) {
- $format = "l";
- unless ($fields =~ /^(?:$field,)*$field$/) {
- $status = "400 Bad Request";
- $output = "Invalid field specification: $fields";
- goto OUTPUT;
- }
- @fields = map lc, split /,/, $fields;
- @fields{@fields} = ();
- unless (exists $fields{id}) {
- unshift @fields, "id";
- $fields{id} = ();
- }
-}
-
-$format ||= "s";
-if ($format !~ /^[isl]$/) {
- $status = "400 Bad request";
- $output = "Unknown listing format: $format. (Use i, s, or l.)\n";
- goto OUTPUT;
-}
-
-my ($n, $s);
-eval {
- ($n, $s) = $tickets->FromSQL($query);
-};
-my $sortstring = "";
-if ($orderby) {
- $sortstring = 'FIELD => ';
- my $order = substr($orderby, 0, 1);
- if ($order eq '+' || $order eq '-') {
- $sortstring .= 'substr($orderby, 1)';
- if ($order eq '+') {
- $sortstring .= ", ORDER => 'ASC'";
- } elsif ($order eq '-') {
- $sortstring .= ", ORDER => 'DESC'";
- }
- } else {
- $sortstring .= '$orderby';
- }
- my $foo = 'FIELD => ';
- $foo .= '$orderby';
- $tickets->OrderBy(eval $sortstring);
-}
-if ($@ || $n == 0) {
- $s ||= $@;
- $status = "400 Bad request";
- $output = "Invalid query: '$s'.\n";
- goto OUTPUT;
-}
-
-$n = 0;
-my @output;
-while (my $ticket = $tickets->Next) {
- $n++;
-
- if ($format eq "i") {
- $output .= "ticket/" . $ticket->Id . "\n";
- }
- elsif ($format eq "s") {
- $output .= $ticket->Id . ": ". $ticket->Subject . "\n";
- }
- else {
- my $id = $ticket->Id;
- my $d = $m->comp("$RT::WebPath/REST/1.0/Forms/ticket/default", id => $id, format => $format, fields => \%fields);
- my ($c, $o, $k, $e) = @$d;
- push @output, [ $c, $o, $k ];
- }
-}
-if ($n == 0 && $format ne "i") {
- $output = "No matching results.\n";
-}
-
-$output = form_compose(\@output) if @output;
-
-OUTPUT:
-$m->out("RT/". $RT::VERSION . " " . $status ."\n\n");
-
-$m->out($output );
-</%INIT>
diff --git a/rt/html/REST/1.0/ticket/comment b/rt/html/REST/1.0/ticket/comment
deleted file mode 100644
index e27bfcc..0000000
--- a/rt/html/REST/1.0/ticket/comment
+++ /dev/null
@@ -1,175 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/ticket/comment
-%#
-<%ARGS>
-$content
-</%ARGS>
-<%INIT>
-use MIME::Entity;
-use LWP::MediaTypes;
-use RT::Interface::REST;
-use File::Temp qw(tempfile);
-
-my $ticket = new RT::Ticket $session{CurrentUser};
-my $object = $r->path_info;
-my $status = "200 Ok";
-my $output;
-my $action;
-
-# http://.../REST/1.0/ticket/comment/1
-my ($c, $o, $k, $e) = @{ form_parse($content)->[0] };
-if ($e || !$o) {
- if (!$o) {
- $output = "Empty form submitted.\n";
- }
- else {
- $c = "# Syntax error.";
- $output = form_compose([[$c, $o, $k, $e]]);
- }
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-
-$object =~ s#^/##;
-$object ||= $k->{Ticket};
-unless ($object =~ /^\d+/) {
- $output = "Invalid ticket id: `$object'.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-if ($k->{Ticket} && $object ne $k->{Ticket}) {
- $output = "The submitted form and URL specify different tickets.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-
-($action = $k->{Action}) =~ s/^(.)(.*)$/\U$1\L$2\E/;
-unless ($action =~ /^(?:Comment|Correspond)$/) {
- $output = "Invalid action: `$action'.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-
-my $text = $k->{Text};
-my @atts = @{ vsplit($k->{Attachment}) };
-
-if (!$k->{Text} && @atts == 0) {
- $status = "400 Bad Request";
- $output = "Empty comment with no attachments submitted.\n";
- goto OUTPUT;
-}
-
-my $cgi = $m->cgi_object;
-my $ent = MIME::Entity->build(Type => "multipart/mixed");
-$ent->attach(Data => $k->{Text}) if $k->{Text};
-
-my $i = 1;
-foreach my $att (@atts) {
- local $/=undef;
- my $file = $att;
- $file =~ s#^.*[\\/]##;
-
- my $fh = $cgi->upload("attachment_$i");
- if ($fh) {
- my $buf;
- my ($w, $tmp) = tempfile();
- my $info = $cgi->uploadInfo();
-
- while (sysread($fh, $buf, 8192)) {
- syswrite($w, $buf);
- }
-
- $ent->attach(
- Path => $tmp,
- Type => $info->{'Content-Type'} || guess_media_type($tmp),
- Filename => $file,
- Disposition => "attachment"
- );
- }
- else {
- $status = "400 Bad Request";
- $output = "No attachment for $att.\n";
- goto OUTPUT;
- }
-
- $i++;
-}
-
-$ticket->Load($object);
-unless ($ticket->Id) {
- $output = "Couldn't load ticket id: `$object'.\n";
- $status = "404 Ticket not found";
- goto OUTPUT;
-}
-unless ($ticket->CurrentUserHasRight('ModifyTicket') ||
- ($action eq "Comment" &&
- $ticket->CurrentUserHasRight("CommentOnTicket")) ||
- ($action eq "Correspond" &&
- $ticket->CurrentUserHasRight("ReplyToTicket")))
-{
- $output = "You are not allowed to $action on ticket $object.\n";
- $status = "403 Permission denied";
- goto OUTPUT;
-}
-
-my $cc = join ", ", @{ vsplit($k->{Cc}) };
-my $bcc = join ", ", @{ vsplit($k->{Bcc}) };
-my ($n, $s) = $ticket->$action(MIMEObj => $ent,
- CcMessageTo => $cc,
- BccMessageTo => $bcc,
- TimeTaken => $k->{TimeWorked} || 0);
-$output = $s;
-if ($k->{Status}) {
- my ($status_n, $status_s) = $ticket->SetStatus($k->{'Status'} );
- $output .= "\n".$status_s;
-}
-
-OUTPUT:
-</%INIT>
-RT/<% $RT::VERSION %> <% $status %>
-
-<% $output |n %>
diff --git a/rt/html/REST/1.0/ticket/link b/rt/html/REST/1.0/ticket/link
deleted file mode 100644
index 6556a5e..0000000
--- a/rt/html/REST/1.0/ticket/link
+++ /dev/null
@@ -1,118 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/ticket/link
-%#
-<%ARGS>
-$id => undef
-$del => 0
-$rel
-$to
-</%ARGS>
-<%INIT>
-use RT::Interface::REST;
-
-my $output;
-my $status = "200 Ok";
-my $ticket = new RT::Ticket $session{CurrentUser};
-my $object = $r->path_info;
-
-my @fields = qw(DependsOn DependedOnBy RefersTo ReferredToBy HasMember MemberOf);
-my %fields = map { lc $_ => $_ } @fields;
-my %lfields = (
- HasMember => { Type => 'MemberOf', Mode => 'Base' },
- ReferredToBy => { Type => 'RefersTo', Mode => 'Base' },
- DependedOnBy => { Type => 'DependsOn', Mode => 'Base' },
- MemberOf => { Type => 'MemberOf', Mode => 'Target' },
- RefersTo => { Type => 'RefersTo', Mode => 'Target' },
- DependsOn => { Type => 'DependsOn', Mode => 'Target' },
-);
-
-# http://.../REST/1.0/ticket/link/1
-
-$object =~ s#^/##;
-if ($id && $object && $id != $object) {
- $output = "Different ids in URL (`$object') and submitted form (`$id').\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-$id ||= $object;
-unless ($id =~ /^\d+$/ && $to =~ /^\d+$/) {
- my $bad = ($id !~ /^\d+$/) ? $id : $to;
- $output = $r->path_info. "\n";
- $output .= "Invalid ticket id: '$bad'.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-unless (exists $fields{lc $rel}) {
- $output = "Invalid link: '$rel'.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-$rel = $fields{lc $rel};
-
-$ticket->Load($id);
-unless ($ticket->Id) {
- $output = "Couldn't load ticket id: '$id'.\n";
- $status = "404 Ticket not found";
- goto OUTPUT;
-}
-
-my $type = $lfields{$rel}->{Type};
-my $mode = $lfields{$rel}->{Mode};
-
-my $n = 1;
-my $op = $del ? "DeleteLink" : "AddLink";
-
-($n, $output) = $ticket->$op(Type => $type, $mode => $to);
-if ($n == 0) {
- $status = "500 Error";
-}
-
-OUTPUT:
-</%INIT>
-RT/<% $RT::VERSION %> <% $status %>
-
-<% $output |n %>
diff --git a/rt/html/REST/1.0/ticket/merge b/rt/html/REST/1.0/ticket/merge
deleted file mode 100644
index 3db5211..0000000
--- a/rt/html/REST/1.0/ticket/merge
+++ /dev/null
@@ -1,100 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# REST/1.0/ticket/merge
-%#
-<%ARGS>
-$id => undef
-$into
-</%ARGS>
-<%INIT>
-use RT::Interface::REST;
-
-my $output;
-my $status = "200 Ok";
-my $ticket = new RT::Ticket $session{CurrentUser};
-my $object = $r->path_info;
-
-# http://.../REST/1.0/ticket/merge/1
-
-$object =~ s#^/##;
-if ($id && $object && $id != $object) {
- $output = "Different ids in URL (`$object') and submitted form (`$id').\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-$id ||= $object;
-unless ($id =~ /^\d+$/ && $into =~ /^\d+$/) {
- my $bad = ($id !~ /^\d+$/) ? $id : $into;
- $output = $r->path_info. "\n";
- $output .= "Invalid ticket id: `$bad'.\n";
- $status = "400 Bad Request";
- goto OUTPUT;
-}
-
-$ticket->Load($id);
-unless ($ticket->Id) {
- $output = "Couldn't load ticket id: `$id'.\n";
- $status = "404 Ticket not found";
- goto OUTPUT;
-}
-unless ($ticket->CurrentUserHasRight('ModifyTicket')) {
- $output = "You are not allowed to modify ticket $id.\n";
- $status = "403 Permission denied";
- goto OUTPUT;
-}
-
-my ($n, $s) = $ticket->MergeInto($into);
-
-if ($n == 0) {
- $status = "500 Error";
-}
-$output = $s;
-
-OUTPUT:
-</%INIT>
-RT/<% $RT::VERSION %> <% $status %>
-
-<% $output |n %>
diff --git a/rt/html/Search/Build.html b/rt/html/Search/Build.html
deleted file mode 100644
index cb64626..0000000
--- a/rt/html/Search/Build.html
+++ /dev/null
@@ -1,849 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%#
-%# Data flow here:
-%# The page receives a Query from the previous page, and maybe arguments
-%# corresponding to actions. (If it doesn't get a Query argument, it pulls
-%# one out of the session hash. Also, it could be getting just a raw query from
-%# Build/Edit.html (Advanced).)
-%#
-%# After doing some stuff with default arguments and saved searches, the ParseQuery
-%# function (which is similar to, but not the same as, _parser in RT/Tickets_Overlay_SQL)
-%# converts the Query into a RT::Interface::Web::QueryBuilder::Tree. This mason file
-%# then adds stuff to or modifies the tree based on the actions that had been requested
-%# by clicking buttons. It then calls GetQueryAndOptionList on the tree to generate
-%# the SQL query (which is saved as a hidden input) and the option list for the Clauses
-%# box in the top right corner.
-%#
-%# Worthwhile refactoring: the tree manipulation code for the actions could use some cleaning
-%# up. The node-adding code is different in the "add" actions from in ParseQuery, which leads
-%# to things like ParseQuery correctly not quoting numbers in numerical fields, while the "add"
-%# action does quote it (this breaks SQLite).
-%#
-<& /Elements/Header, Title => $title &>
-<& /Ticket/Elements/Tabs,
- current_tab => "Search/Build.html".$QueryString,
- Title => $title,
- Format => $Format,
- Query => $Query,
- Order => $Order,
- OrderBy => $OrderBy,
- Rows => $RowsPerPage
-&>
-
-<FORM METHOD="POST" ACTION="Build.html" NAME="BuildQuery">
-<input type=hidden name=SearchId value="<%$SearchId%>">
-<input type=hidden name=Query value="<%$Query%>">
-<input type=hidden name=Format value="<%$Format%>">
-<table width=100% border="0" cellpadding="5">
-<tr valign="top">
-<td class="boxcontainer" rowspan="2" width="65%">
-<& Elements/PickCriteria, query => $Query, cfqueues => $queues &>
-<& /Elements/Submit, Caption => loc('Add additional criteria'), Label => loc('Add'), Name => 'AddClause'&>
-</td>
-
-<td>
-<& Elements/EditQuery,
- %ARGS,
- actions => \@actions,
- optionlist => $optionlist,
- Description => $Description &>
-</td>
-</tr>
-
-<tr valign="top">
-<td>
-<& Elements/EditSearches, CurrentSearch => $search_hash, Dirty => $dirty, SearchId => $SearchId &>
-</td>
-</tr>
-
-<tr>
-<td colspan=2 class="boxcontainer">
-
-<& Elements/DisplayOptions, %ARGS, Format=> $Format,
-AvailableColumns => $AvailableColumns, CurrentFormat => $CurrentFormat, RowsPerPage => $RowsPerPage, OrderBy => $OrderBy, Order => $Order &>
-</td>
-</tr>
-<tr>
-<td colspan=2 class="boxcontainer">
-<& /Elements/Submit, Caption => loc("Do the Search"), Label => loc('Search'), Name => 'DoSearch'&>
-</td>
-</tr>
-</table>
-</FORM>
-
-<%INIT>
-use RT::Interface::Web::QueryBuilder;
-use RT::Interface::Web::QueryBuilder::Tree;
-
-my $search_hash = {};
-my $search;
-my $title = loc("Query Builder");
-
-# {{{ Clear out unwanted data
-if ( $NewQuery or $ARGS{'Delete'} ) {
-
- # Wipe all data-carrying variables clear if we want a new
- # search, or we're deleting an old one..
- $Query = '';
- $Format = '';
- $Description = '';
- $SearchId = '';
- $Order = '';
- $OrderBy = '';
- $RowsPerPage = '';
-
- # ($search hasn't been set yet; no need to clear)
-
- # ..then wipe the session out..
- undef $session{'CurrentSearchHash'};
-
- # ..and the search results.
- $session{'tickets'}->CleanSlate() if defined $session{'tickets'};
-}
-
-# }}}
-
-# {{{ Attempt to load what we can from the session, set defaults
-
-# We don't read or write to the session again until the end
-$search_hash = $session{'CurrentSearchHash'};
-
-# These variables are what define a search_hash; this is also
-# where we give sane defaults.
-$Query ||= $search_hash->{'Query'};
-$Format ||= $search_hash->{'Format'};
-$Description ||= $search_hash->{'Description'};
-$SearchId ||= $search_hash->{'SearchId'} || 'new';
-$Order ||= $search_hash->{'Order'} || 'ASC';
-$OrderBy ||= $search_hash->{'OrderBy'} || 'id';
-$RowsPerPage = ( $search_hash->{'RowsPerPage'} || 50 )
- unless defined($RowsPerPage);
-$search ||= $search_hash->{'Object'};
-
-# }}}
-
-my @actions = ();
-
-# Clean unwanted junk from the format
-$Format = $m->comp( '/Elements/ScrubHTML', Content => $Format ) if ($Format);
-
-# {{{ If we're asked to delete the current search, make it go away and reset the search parameters
-if ( $ARGS{'Delete'} ) {
-
- # We set $SearchId to 'new' above already, so peek into the %ARGS
- if ( $ARGS{'SearchId'} =~ /^(.*?)-(\d+)-SavedSearch-(\d+)$/ ) {
- my $obj_type = $1;
- my $obj_id = $2;
- my $search_id = $3;
-
- my $container_object;
- if ( $obj_type eq 'RT::User' && $obj_id == $session{'CurrentUser'}->Id )
- {
- $container_object = $session{'CurrentUser'}->UserObj;
- }
- elsif ( $obj_type eq 'RT::Group' ) {
- $container_object = RT::Group->new( $session{'CurrentUser'} );
- $container_object->Load($obj_id);
- }
-
- if ( $container_object->id ) {
-
- # We have the object the entry is an attribute on; delete
- # the entry..
- $container_object->Attributes->DeleteEntry(
- Name => 'SavedSearch',
- id => $search_id
- );
- }
-
- }
-}
-
-# }}}
-
-# {{{ If the user wants to copy a search, uncouple from the one that this was based on, but don't erase the $Query or $Format
-if ( $ARGS{'CopySearch'} ) {
- $SearchId = 'new';
- $search = undef;
- $Description = loc( "[_1] copy", $Description );
-}
-
-# }}}
-
-# {{{ if we're asked to revert the current search, we just want to load it
-if ( $ARGS{'Revert'} ) {
- $ARGS{'LoadSavedSearch'} = $SearchId;
-}
-
-# }}}
-
-# {{{ if we're asked to load a search, load it.
-
-if ( $ARGS{'LoadSavedSearch'} =~ /^(.*?)-(\d+)-SavedSearch-(\d+)$/ ) {
- my $obj_type = $1;
- my $obj_id = $2;
- my $search_id = $3;
-
- # We explicitly list out the available types (user and group) and
- # don't trust user input here
- if ( ( $obj_type eq 'RT::User' )
- && ( $obj_id == $session{'CurrentUser'}->id ) )
- {
- $search =
- $session{'CurrentUser'}->UserObj->Attributes->WithId($search_id);
-
- }
- elsif ( $obj_type eq 'RT::Group' ) {
- my $group = RT::Group->new( $session{'CurrentUser'} );
- $group->Load($obj_id);
- $search = $group->Attributes->WithId($search_id);
- }
-
- # We have a $search and now; import the others
- $SearchId = $ARGS{'LoadSavedSearch'};
- $Description = $search->Description;
- $Format = $search->SubValue('Format');
- $Query = $search->SubValue('Query');
- $Order = $search->SubValue('Order');
- $OrderBy = $search->SubValue('OrderBy');
- $RowsPerPage = $search->SubValue('RowsPerPage');
-}
-
-# }}}
-
-# {{{ Parse the query
-my $tree;
-ParseQuery( $Query, \$tree, \@actions );
-
-# if parsing went poorly, send them to the edit page to fix it
-if ( $actions[0] ) {
- $m->comp( "Edit.html", Query => $Query, actions => \@actions );
- $m->abort();
-}
-
-$Query = "";
-
-my @options = $tree->GetDisplayedNodes;
-
-my @current_values = grep { defined } @options[@clauses];
-
-# {{{ Try to find if we're adding a clause
-foreach my $arg ( keys %ARGS ) {
- if (
- $arg =~ m/^ValueOf(.+)/
- && ( ref $ARGS{$arg} eq "ARRAY"
- ? grep { $_ ne "" } @{ $ARGS{$arg} }
- : $ARGS{$arg} ne "" )
- )
- {
-
- # We're adding a $1 clause
- my $field = $1;
- my ( $keyword, $op, $value );
-
- #figure out if it's a grouping
- if ( $ARGS{ $field . "Field" } ) {
- $keyword = $ARGS{ $field . "Field" };
- }
- else {
- $keyword = $field;
- }
-
- my ( @ops, @values );
- if ( ref $ARGS{ 'ValueOf' . $field } eq "ARRAY" ) {
-
- # we have many keys/values to iterate over, because there is
- # more than one CF with the same name.
- @ops = @{ $ARGS{ $field . 'Op' } };
- @values = @{ $ARGS{ 'ValueOf' . $field } };
- }
- else {
- @ops = ( $ARGS{ $field . 'Op' } );
- @values = ( $ARGS{ 'ValueOf' . $field } );
- }
- $RT::Logger->error("Bad Parameters passed into Query Builder")
- unless @ops == @values;
-
- for my $i ( 0 .. @ops - 1 ) {
- my ( $op, $value ) = ( $ops[$i], $values[$i] );
- next if $value eq "";
-
- if ( $value eq 'NULL' && $op =~ /=/ ) {
- if ( $op eq '=' ) {
- $op = "IS";
- }
- elsif ( $op eq '!=' ) {
- $op = "IS NOT";
- }
-
- # This isn't "right", but...
- # It has to be this way until #5182 is fixed
- $value = "'NULL'";
- }
- else {
- $value = "'$value'";
- }
-
- my $clause = {
- Key => $keyword,
- Op => $op,
- Value => $value
- };
-
- my $newnode = RT::Interface::Web::QueryBuilder::Tree->new($clause);
- if (@current_values) {
- foreach my $value (@current_values) {
- my $newindex = $value->getIndex() + 1;
- $value->insertSibling( $newindex, $newnode );
- $value = $newnode;
- }
- }
- else {
- $tree->getChild(0)->addChild($newnode);
- @current_values = $newnode;
- }
- $newnode->getParent()->setNodeValue( $ARGS{'AndOr'} );
- }
- }
-}
-
-# }}}
-
-# {{{ Move things around
-if ( $ARGS{"Up"} ) {
- if (@current_values) {
- foreach my $value (@current_values) {
- my $index = $value->getIndex();
- if ( $value->getIndex() > 0 ) {
- my $parent = $value->getParent();
- $parent->removeChild($index);
- $parent->insertChild( $index - 1, $value );
- $value = $parent->getChild( $index - 1 );
- }
- else {
- push( @actions, [ loc("error: can't move up"), -1 ] );
- }
- }
- }
- else {
- push( @actions, [ loc("error: nothing to move"), -1 ] );
- }
-}
-elsif ( $ARGS{"Down"} ) {
- if (@current_values) {
- foreach my $value (@current_values) {
- my $index = $value->getIndex();
- my $parent = $value->getParent();
- if ( $value->getIndex() < ( $parent->getChildCount - 1 ) ) {
- $parent->removeChild($index);
- $parent->insertChild( $index + 1, $value );
- $value = $parent->getChild( $index + 1 );
- }
- else {
- push( @actions, [ loc("error: can't move down"), -1 ] );
- }
- }
- }
- else {
- push( @actions, [ loc("error: nothing to move"), -1 ] );
- }
-}
-elsif ( $ARGS{"Left"} ) {
- if (@current_values) {
- foreach my $value (@current_values) {
- my $parent = $value->getParent();
- my $grandparent = $parent->getParent();
- if ( !$grandparent->isRoot ) {
- my $index = $parent->getIndex();
- $parent->removeChild($value);
- $grandparent->insertChild( $index, $value );
- if ( $parent->isLeaf() ) {
- $grandparent->removeChild($parent);
- }
- }
- else {
- push( @actions, [ loc("error: can't move left"), -1 ] );
- }
- }
- }
- else {
- push( @actions, [ loc("error: nothing to move"), -1 ] );
- }
-}
-elsif ( $ARGS{"Right"} ) {
- if (@current_values) {
- foreach my $value (@current_values) {
- my $parent = $value->getParent();
- my $index = $value->getIndex();
- my $newparent;
- if ( $index > 0 ) {
- my $sibling = $parent->getChild( $index - 1 );
- if ( ref( $sibling->getNodeValue ) ) {
- $parent->removeChild($value);
- my $newtree = RT::Interface::Web::QueryBuilder::Tree->new( 'AND', $parent );
- $newtree->addChild($value);
- }
- else {
- $parent->removeChild($index);
- $sibling->addChild($value);
- }
- }
- else {
- $parent->removeChild($value);
- $newparent = RT::Interface::Web::QueryBuilder::Tree->new( 'AND', $parent );
- $newparent->addChild($value);
- }
- }
- }
- else {
- push( @actions, [ loc("error: nothing to move"), -1 ] );
- }
-}
-elsif ( $ARGS{"DeleteClause"} ) {
- if (@current_values) {
- $_->getParent()->removeChild($_) for @current_values;
- }
- else {
- push( @actions, [ loc("error: nothing to delete"), -1 ] );
- }
-}
-elsif ( $ARGS{"Toggle"} ) {
- my $ea;
- if (@current_values) {
- foreach my $value (@current_values) {
- my $parent = $value->getParent();
-
- if ( $parent->getNodeValue eq 'AND' ) {
- $parent->setNodeValue('OR');
- }
- else {
- $parent->setNodeValue('AND');
- }
- }
- }
- else {
- push( @actions, [ loc("error: nothing to toggle"), -1 ] );
- }
-}
-
-$tree->PruneChildlessAggregators;
-
-# }}}
-
-# {{{ Rebuild $Query based on the additions / movements
-$Query = "";
-my $optionlist_arrayref;
-
-($Query, $optionlist_arrayref) = $tree->GetQueryAndOptionList(\@current_values);
-
-my $optionlist = join "\n", map { qq(<option value="$_->{INDEX}" $_->{SELECTED}>)
- . ("&nbsp;" x (5 * $_->{DEPTH}))
- . $m->interp->apply_escapes($_->{TEXT}, 'h') . qq(</option>) } @$optionlist_arrayref;
-
-
-
-
-use Regexp::Common qw /delimited/;
-
-# States
-use constant VALUE => 1;
-use constant AGGREG => 2;
-use constant OP => 4;
-use constant PAREN => 8;
-use constant KEYWORD => 16;
-
-sub ParseQuery {
- my $string = shift;
- my $tree = shift;
- my @actions = shift;
- my $want = KEYWORD | PAREN;
- my $last = undef;
-
- my $depth = 1;
-
- # make a tree root
- $$tree = RT::Interface::Web::QueryBuilder::Tree->new;
- my $root = RT::Interface::Web::QueryBuilder::Tree->new( 'AND', $$tree );
- my $lastnode = $root;
- my $parentnode = $root;
-
- # get the FIELDS from Tickets_Overlay
- my $tickets = new RT::Tickets( $session{'CurrentUser'} );
- my %FIELDS = %{ $tickets->FIELDS };
-
- # Lower Case version of FIELDS, for case insensitivity
- my %lcfields = map { ( lc($_) => $_ ) } ( keys %FIELDS );
-
- my @tokens = qw[VALUE AGGREG OP PAREN KEYWORD];
- my $re_aggreg = qr[(?i:AND|OR)];
- my $re_value = qr[$RE{delimited}{-delim=>qq{\'\"}}|\d+];
- my $re_keyword = qr[$RE{delimited}{-delim=>qq{\'\"}}|(?:\{|\}|\w|\.)+];
- my $re_op =
- qr[=|!=|>=|<=|>|<|(?i:IS NOT)|(?i:IS)|(?i:NOT LIKE)|(?i:LIKE)]
- ; # long to short
- my $re_paren = qr'\(|\)';
-
- # assume that $ea is AND if it is not set
- my ( $ea, $key, $op, $value ) = ( "AND", "", "", "" );
-
- # order of matches in the RE is important.. op should come early,
- # because it has spaces in it. otherwise "NOT LIKE" might be parsed
- # as a keyword or value.
-
- while (
- $string =~ /(
- $re_aggreg
- |$re_op
- |$re_keyword
- |$re_value
- |$re_paren
- )/igx
- )
- {
- my $val = $1;
- my $current = 0;
-
- # Highest priority is last
- $current = OP if _match( $re_op, $val );
- $current = VALUE if _match( $re_value, $val );
- $current = KEYWORD
- if _match( $re_keyword, $val ) && ( $want & KEYWORD );
- $current = AGGREG if _match( $re_aggreg, $val );
- $current = PAREN if _match( $re_paren, $val );
-
- unless ( $current && $want & $current ) {
-
- # Error
- # FIXME: I will only print out the highest $want value
- my $token = $tokens[ ( ( log $want ) / ( log 2 ) ) ];
- push @actions,
- [
- loc(
-"current: $current, want $want, Error near ->$val<- expecting a "
- . $token
- . " in '$string'\n"
- ),
- -1
- ];
- }
-
- # State Machine:
- my $parentdepth = $depth;
-
- # Parens are highest priority
- if ( $current & PAREN ) {
- if ( $val eq "(" ) {
- $depth++;
-
- # make a new node that the clauses can be children of
- $parentnode = RT::Interface::Web::QueryBuilder::Tree->new( $ea, $parentnode );
- }
- else {
- $depth--;
- $parentnode = $parentnode->getParent();
- $lastnode = $parentnode;
- }
-
- $want = KEYWORD | PAREN | AGGREG;
- }
- elsif ( $current & AGGREG ) {
- $ea = $val;
- $want = KEYWORD | PAREN;
- }
- elsif ( $current & KEYWORD ) {
- $key = $val;
- $want = OP;
- }
- elsif ( $current & OP ) {
- $op = $val;
- $want = VALUE;
- }
- elsif ( $current & VALUE ) {
- $value = $val;
-
- # Remove surrounding quotes from $key, $val
- # (in future, simplify as for($key,$val) { action on $_ })
- if ( $key =~ /$RE{delimited}{-delim=>qq{\'\"}}/ ) {
- substr( $key, 0, 1 ) = "";
- substr( $key, -1, 1 ) = "";
- }
- if ( $val =~ /$RE{delimited}{-delim=>qq{\'\"}}/ ) {
- substr( $val, 0, 1 ) = "";
- substr( $val, -1, 1 ) = "";
- }
-
- # Unescape escaped characters
- $key =~ s!\\(.)!$1!g;
- $val =~ s!\\(.)!$1!g;
-
- my $class;
- if ( exists $lcfields{ lc $key } ) {
- $key = $lcfields{ lc $key };
- $class = $FIELDS{$key}->[0];
- }
- if ( $class ne 'INT' ) {
- $val = "'$val'";
- }
-
- push @actions, [ loc("Unknown field: $key"), -1 ] unless $class;
-
- $want = PAREN | AGGREG;
- }
- else {
- push @actions, [ loc("I'm lost"), -1 ];
- }
-
- if ( $current & VALUE ) {
- if ( $key =~ /^CF./ ) {
- $key = "'" . $key . "'";
- }
- my $clause = {
- Key => $key,
- Op => $op,
- Value => $val
- };
-
- # explicity add a child to it
- $lastnode = RT::Interface::Web::QueryBuilder::Tree->new( $clause, $parentnode );
- $lastnode->getParent()->setNodeValue($ea);
-
- ( $ea, $key, $op, $value ) = ( "", "", "", "" );
- }
-
- $last = $current;
- } # while
-
- push @actions, [ loc("Incomplete query"), -1 ]
- unless ( ( $want | PAREN ) || ( $want | KEYWORD ) );
-
- push @actions, [ loc("Incomplete Query"), -1 ]
- unless ( $last && ( $last | PAREN ) || ( $last || VALUE ) );
-
- # This will never happen, because the parser will complain
- push @actions, [ loc("Mismatched parentheses"), -1 ]
- unless $depth == 1;
-}
-
-sub _match {
-
- # Case insensitive equality
- my ( $y, $x ) = @_;
- return 1 if $x =~ /^$y$/i;
-
- # return 1 if ((lc $x) eq (lc $y)); # Why isnt this equiv?
- return 0;
-}
-
-sub debug {
- my $message = shift;
- $m->print( $message . "<br>" );
-}
-
-# }}}
-
-# }}}
-
-my $queues = $tree->GetReferencedQueues;
-
-# {{{ Deal with format changes
-my ( $AvailableColumns, $CurrentFormat );
-( $Format, $AvailableColumns, $CurrentFormat ) = $m->comp(
- 'Elements/BuildFormatString',
- cfqueues => $queues,
- %ARGS, Format => $Format
-);
-
-# }}}
-
-# {{{ if we're asked to save the current search, save it
-if ( $ARGS{'Save'} ) {
-
- if ( $search && $search->id ) {
-
- # This search is based on a previously loaded search -- so
- # just update the current search object with new values
- $search->SetSubValues(
- Format => $Format,
- Query => $Query,
- Order => $Order,
- OrderBy => $OrderBy,
- RowsPerPage => $RowsPerPage,
- );
- $search->SetDescription($Description);
-
- }
- elsif ( $SearchId eq 'new' && $ARGS{'Owner'} =~ /^(.*?)-(\d+)$/ ) {
-
- # We're saving a new search
- my $obj_type = $1;
- my $obj_id = $2;
-
- # Find out if we're saving on the user, or a group
- my $container_object;
- if ( $obj_type eq 'RT::User' && $obj_id == $session{'CurrentUser'}->Id )
- {
- $container_object = $session{'CurrentUser'}->UserObj;
- }
- elsif ( $obj_type eq 'RT::Group' ) {
- $container_object = RT::Group->new( $session{'CurrentUser'} );
- $container_object->Load($obj_id);
- }
-
- if ( $container_object->id ) {
-
- # If we got one or the other, add the saerch
- my ( $search_id, $search_msg ) = $container_object->AddAttribute(
- Name => 'SavedSearch',
- Description => $Description,
- Content => {
- Format => $Format,
- Query => $Query,
- Order => $Order,
- OrderBy => $OrderBy,
- RowsPerPage => $RowsPerPage,
- }
- );
- $search =
- $session{'CurrentUser'}->UserObj->Attributes->WithId($search_id);
-
- # Build new SearchId
- $SearchId =
- ref( $session{'CurrentUser'}->UserObj ) . '-'
- . $session{'CurrentUser'}->UserObj->Id
- . '-SavedSearch-'
- . $search->Id;
- }
- unless ( $search->id ) {
- push @actions, [ loc("Can't find a saved search to work with"), 0 ];
- }
-
- }
- else {
- push @actions, [ loc("Can't save this search"), 0 ];
- }
-
-}
-
-# }}}
-
-# {{{ If we're modifying an old query, check if it has changed
-my $dirty = 0;
-$dirty = 1
- if defined $search
- and ($search->SubValue('Format') ne $Format
- or $search->SubValue('Query') ne $Query
- or $search->SubValue('Order') ne $Order
- or $search->SubValue('OrderBy') ne $OrderBy
- or $search->SubValue('RowsPerPage') ne $RowsPerPage );
-
-# }}}
-
-# {{{ Push the updates into the session so we don't loose 'em
-$search_hash->{'SearchId'} = $SearchId;
-$search_hash->{'Format'} = $Format;
-$search_hash->{'Query'} = $Query;
-$search_hash->{'Description'} = $Description;
-$search_hash->{'Object'} = $search;
-$search_hash->{'Order'} = $Order;
-$search_hash->{'OrderBy'} = $OrderBy;
-$search_hash->{'RowsPerPage'} = $RowsPerPage;
-
-$session{'CurrentSearchHash'} = $search_hash;
-
-# }}}
-
-# {{{ Show the results, if we were asked.
-if ( $ARGS{"DoSearch"} ) {
- $m->comp(
- "Results.html",
- Query => $Query,
- Format => $Format,
- Order => $Order,
- OrderBy => $OrderBy,
- Rows => $RowsPerPage
- );
- $m->abort();
-}
-
-# }}}
-
-# {{{ Build a querystring for the tabs
-
-my $QueryString;
-if ($NewQuery) {
- $QueryString = '?NewQuery=1';
-}
-else {
- $QueryString = '?'
- . $m->comp(
- '/Elements/QueryString',
- Query => $Query,
- Format => $Format,
- Order => $Order,
- OrderBy => $OrderBy,
- Rows => $RowsPerPage
- )
- if ($Query);
-}
-
-# }}}
-
-</%INIT>
-
-<%ARGS>
-$NewQuery => 0
-$SearchId => undef
-$Query => undef
-$Format => undef
-$Description => undef
-$Order => undef
-$OrderBy => undef
-$RowsPerPage => undef
-$HideResults => 0
-@clauses => ()
-</%ARGS>
-
diff --git a/rt/html/Search/Bulk.html b/rt/html/Search/Bulk.html
deleted file mode 100644
index b7c64e3..0000000
--- a/rt/html/Search/Bulk.html
+++ /dev/null
@@ -1,278 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Bulk ticket update") &>
-<& /Elements/Tabs, Title => loc("Bulk ticket update") &>
-
-<& /Elements/ListActions, actions => \@results &>
-<FORM METHOD="POST" ACTION="<%$RT::WebPath%>/Search/Bulk.html" >
-<input type="hidden" name="Query" value="<%$ARGS{'Query'}%>">
-<TABLE WIDTH=100% border=0 cellpadding=3 CELLSPACING=0>
-<TR>
-<TH><&|/l&>Update</&></TH>
-%foreach my $col (@cols) {
-% my $colalias = $col;
-% $colalias =~ s/(Obj\-\>|)(Name|AsString)//;
-
-<TH><% loc($colalias) %>&nbsp;</TH>
-%}
-</TR>
-
-<%PERL>
-
-my $i;
-
-$Tickets->RedoSearch();
-while (my $Ticket = $Tickets->Next) {
- $i++;
- if ($i % 2) {
- $bgcolor = "#d4d4d4";
- }
- else {
- $bgcolor = "#ffffff";
- }
- </%PERL>
-<TR bgcolor="<%$bgcolor%>">
-<TD><input type=checkbox name="UpdateTicket<%$Ticket->Id%>" value="1" CHECKED></TD>
-%foreach my $col (@cols) {
-<TD>
-% if ($col eq 'id') {
-<A HREF="<% $RT::WebPath%>/Ticket/Display.html?id=<%$Ticket->Id%>"><%$Ticket->Id()%></A>
-% }
-%else {
-<% eval "\$Ticket->$col()" %>&nbsp;
-%}
-</TD>
-%}
-</TR>
-%}
-
-
-
-</TABLE>
-
-<HR>
-
-
-<& /Elements/TitleBoxStart, title => loc('Update selected tickets') &>
-<TABLE>
-<TR>
-<TD VALIGN=TOP>
-<table>
-<tr><td class=label> <&|/l&>Make Owner</&>: </td>
-<td class=value> <& /Elements/SelectOwner, Name => "Owner" &> (<input type=checkbox name="ForceOwnerChange"> <&|/l&>Force change</&>) </td></tr>
-<tr><td class=label> <&|/l&>Add Requestor</&>: </td>
-<td class=value> <INPUT Name="AddRequestor" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Remove Requestor</&>: </td>
-<td class=value> <INPUT Name="DeleteRequestor" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Add Cc</&>: </td>
-<td class=value> <INPUT Name="AddCc" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Remove Cc</&>: </td>
-<td class=value> <INPUT Name="DeleteCc" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Add AdminCc</&>: </td>
-<td class=value> <INPUT Name="AddAdminCc" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Remove AdminCc</&>: </td>
-<td class=value> <INPUT Name="DeleteAdminCc" SIZE=20> </td></tr>
-</table>
-</TD>
-<TD VALIGN=TOP>
-<table>
-<tr><td class=label> <&|/l&>Make subject</&>: </td>
-<td class=value> <INPUT Name="Subject" SIZE=20> </td></tr>
-<tr><td class=label> <&|/l&>Make priority</&>: </td>
-<td class=value> <INPUT Name="Priority" SIZE=4> </td></tr>
-<tr><td class=label> <&|/l&>Make queue</&>: </td>
-<td class=value> <& /Elements/SelectQueue, Name => "Queue" &> </td></tr>
-<tr><td class=label> <&|/l&>Make Status</&>: </td>
-<td class=value> <& /Elements/SelectStatus, Name => "Status" &> </td></tr>
-<tr><td class=label> <&|/l&>Make date Starts</&>: </td>
-<td class=value> <& /Elements/SelectDate, Name => "Starts_Date", ShowTime => 0, Default => '' &> </td></tr>
-<tr><td class=label> <&|/l&>Make date Started</&>: </td>
-<td class=value> <& /Elements/SelectDate, Name => "Started_Date", ShowTime => 0, Default => '' &> </td></tr>
-<tr><td class=label> <&|/l&>Make date Told</&>: </td>
-<td class=value> <& /Elements/SelectDate, Name => "Told_Date", ShowTime => 0, Default => '' &> </td></tr>
-<tr><td class=label> <&|/l&>Make date Due</&>: </td>
-<td class=value> <& /Elements/SelectDate, Name => "Due_Date", ShowTime => 0, Default => '' &> </td></tr>
-<tr><td class=label> <&|/l&>Make date Resolved</&>: </td>
-<td class=value> <& /Elements/SelectDate, Name => "Resolved_Date", ShowTime => 0, Default => '' &> </td></tr>
-</table>
-
-</TD>
-</TR>
-</table>
-<& /Elements/TitleBoxEnd&>
-<& /Elements/TitleBoxStart, title => loc('Add comments or replies to selected tickets') &>
-<table>
-<tr><td align=right><&|/l&>Update Type</&>:</td>
-<td><select name="UpdateType">
- <option value="private" ><&|/l&>Comments (not sent to requestors)</&></option>
-<option value="response" ><&|/l&>Reply to requestors</&></option>
-</select>
-</td></tr>
-<tr><td align=right><&|/l&>Subject</&>:</td><td> <input name="UpdateSubject" size=60 value=""></td></tr>
-% while (my $CF = $TxnCFs->Next()) {
-<TR>
-<TD ALIGN=RIGHT><% $CF->Name %>:</TD>
-<TD><& /Elements/EditCustomField,
- CustomField => $CF,
- NamePrefix => "Object-RT::Transaction--CustomField-"
- &><em><% $CF->FriendlyType %></em></TD>
-</TD></TR>
-% } # end if while
- <tr><td align=right><&|/l&>Attach</&>:</td><td><input name="UpdateAttachment" type="file"></td></tr>
- <tr><td class=labeltop><&|/l&>Message</&>:</td><td>
- <& /Elements/MessageBox, Name=>"UpdateContent"&>
- </td></tr>
- </table>
-
-<& /Elements/TitleBoxEnd &>
-
-
-<& /Elements/TitleBoxStart, title => loc('Edit Links'), color => "#336633"&>
-<i><&|/l&>Enter tickets or URIs to link tickets to. Separate multiple entries with spaces.</&></i><br>
-<& /Ticket/Elements/BulkLinks &>
-<& /Elements/TitleBoxEnd &>
-
-<& /Elements/Submit, Label => loc('Update All') &>
-
-
-</FORM>
-<%INIT>
-
-# Iterate through the ARGS hash and remove anything with a null value.
-map ($ARGS{$_} =~ /^$/ && (delete $ARGS{$_}), keys %ARGS);
-
-my ($bgcolor, @results);
-my @cols = qw(id Status Priority Subject QueueObj->Name OwnerObj->Name RequestorAddresses DueAsString );
-
-
-my $Tickets = RT::Tickets->new($session{'CurrentUser'});
-$Tickets->FromSQL($ARGS{'Query'});
-
-Abort(loc("No search to operate on.")) unless ($Tickets);
-
-my %allcfs;
-my %cfqnames;
-my %cfqs;
-my $count = 0;
-while (my $Ticket = $Tickets->Next) {
- my $cfq = $Ticket->QueueObj;
- my $cfqid = $cfq->Id;
- my $cfqn = $cfq->Name;
- unless ( exists $cfqs{$cfqid} ) {
- $cfqs{$cfqid} = 1;
- $count++;
- my $cfs = $cfq->TicketCustomFields;
- while (my $cf = $cfs->Next) {
- $allcfs{$cf->Id} = $cf;
- $cfqnames{$cf->Id} = $cfqn;
- }
- }
-}
-
-my $do_comment_reply=0;
-# Prepare for ticket updates
-$ARGS{'UpdateContent'} =~ s/\r\n/\n/g;
-chomp ($ARGS{'UpdateContent'}) ;
-
-if ($ARGS{'UpdateContent'} &&
- $ARGS{'UpdateContent'} ne '' &&
- $ARGS{'UpdateContent'} ne "-- \n" .
- $session{'CurrentUser'}->UserObj->Signature) {
- $do_comment_reply=1;
-}
-
-#Iterate through each ticket we've been handed
-my @linkresults;
-my %queues;
-
-$Tickets->RedoSearch();
-while (my $Ticket = $Tickets->Next) {
- $queues{$Ticket->QueueObj->Id}++;
- $RT::Logger->debug( "Checking Ticket ".$Ticket->Id ."\n");
- next unless ($ARGS{"UpdateTicket".$Ticket->Id});
- $RT::Logger->debug ("Matched\n");
- my @updateresults;
- if ($do_comment_reply) {
- ProcessUpdateMessage(TicketObj => $Ticket, ARGSRef => \%ARGS, Actions => \@updateresults);
- }
-
- #Update the basics.
- my @basicresults = ProcessTicketBasics(TicketObj => $Ticket, ARGSRef => \%ARGS);
- my @dateresults = ProcessTicketDates(TicketObj => $Ticket, ARGSRef => \%ARGS);
- #Update the watchers
- my @watchresults = ProcessTicketWatchers(TicketObj => $Ticket, ARGSRef => \%ARGS);
-
-
- #Update the links
- $ARGS{'id'} = $Ticket;
- $ARGS{$Ticket->Id.'-MergeInto'} = $ARGS{'Ticket-MergeInto'};
- $ARGS{$Ticket->Id.'-DependsOn'} = $ARGS{'Ticket-DependsOn'};
- $ARGS{'DependsOn-'.$Ticket->Id} = $ARGS{'DependsOn-Ticket'};
- $ARGS{$Ticket->Id.'-MemberOf'} = $ARGS{'Ticket-MemberOf'};
- $ARGS{'MemberOf-'.$Ticket->Id} = $ARGS{'MemberOf-Ticket'};
- $ARGS{$Ticket->Id.'-RefersTo'} = $ARGS{'Ticket-RefersTo'};
- $ARGS{'RefersTo-'.$Ticket->Id} = $ARGS{'RefersTo-Ticket'};
- @linkresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS);
- delete $ARGS{'id'};
- delete $ARGS{$Ticket->Id.'-MergeInto'};
- delete $ARGS{$Ticket->Id.'-DependsOn'};
- delete $ARGS{'DependsOn-'.$Ticket->Id};
- delete $ARGS{$Ticket->Id.'-MemberOf'};
- delete $ARGS{'MemberOf-'.$Ticket->Id};
- delete $ARGS{$Ticket->Id.'-RefersTo'};
- delete $ARGS{'RefersTo-'.$Ticket->Id};
- my @tempresults = (@watchresults, @basicresults, @dateresults,
- @updateresults, @linkresults);
- @tempresults = map { loc("Ticket [_1]: [_2]",$Ticket->Id,$_) } @tempresults;
-
- @results = (@results, @tempresults);
-}
-
-my $TxnCFs = RT::CustomFields->new($session{CurrentUser});
-$TxnCFs->LimitToLookupType("RT::Queue-RT::Ticket-RT::Transaction");
-$TxnCFs->LimitToGlobalOrObjectId(sort keys %queues);
-
-</%INIT>
diff --git a/rt/html/Search/Edit.html b/rt/html/Search/Edit.html
deleted file mode 100755
index 16e8a0e..0000000
--- a/rt/html/Search/Edit.html
+++ /dev/null
@@ -1,86 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title&>
-<& /Ticket/Elements/Tabs,
- current_tab => "Search/Edit.html?".$QueryString,
- Title => $title,
- Format => $Format,
- Query => $Query,
- Rows => $ARGS{'Rows'},
- OrderBy => $ARGS{'OrderBy'},
- Order => $ARGS{'Order'} &>
-
-<& Elements/NewListActions, actions => \@actions &>
-
-<form method="post" action="Build.html">
-<input type="hidden" name="SearchId" value="<%$SearchId%>">
-<textarea name="Query" rows="8" cols="72"><%$Query%></textarea>
-<br>
-<textarea name="Format" rows="8" cols="72"><%$Format%></textarea>
-<br>
-<& /Elements/Submit, Label => loc("Apply"), Reset => 1, Caption => loc("Apply your changes")&>
-</form>
-
-<%INIT>
-my $title = loc("Edit Query");
-$Format = $m->comp('/Elements/ScrubHTML', Content => $Format);
-my $QueryString = $m->comp('/Elements/QueryString',
- Query => $Query,
- Format => $Format,
- Rows => $ARGS{'Rows'},
- OrderBy => $ARGS{'OrderBy'},
- Order => $ARGS{'Order'},
- );
-
-</%INIT>
-
-
-<%ARGS>
-$Query => undef
-$Format => undef
-$SearchId => 'new'
-@actions => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/BuildFormatString b/rt/html/Search/Elements/BuildFormatString
deleted file mode 100644
index 639e62c..0000000
--- a/rt/html/Search/Elements/BuildFormatString
+++ /dev/null
@@ -1,243 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-$Format => undef
-%cfqueues => undef
-$Face => undef
-$Size => undef
-$Link => undef
-$Title => undef
-$AddCol => undef
-$RemoveCol => undef
-$ColUp => undef
-$ColDown => undef
-$SelectDisplayColumns => undef
-$CurrentDisplayColumns => undef
-</%args>
-<%init>
-
-unless ($Format) {
- $Format = $RT::DefaultSearchResultFormat;
-}
-
-
-# All the things we can display in the format string by default
-my @fields = qw(
- id
- Status
- ExtendedStatus
- Subject
- QueueName
- OwnerName
- Priority
- InitialPriority
- FinalPriority
- Type
- TimeWorked
- TimeLeft
- TimeEstimated
- CreatedBy
- LastUpdatedBy
- Requestors
- Cc
- AdminCc
- Starts
- StartsRelative
- Started
- StartedRelative
- Created
- CreatedRelative
- LastUpdated
- LastUpdatedRelative
- Told
- ToldRelative
- Due
- DueRelative
- Resolved
- ResolvedRelative
- RefersTo
- ReferredToBy
- DependsOn
- DependedOnBy
- MemberOf
- Members
- Parents
- Children
- NEWLINE
-);
-
-my $CustomFields = RT::CustomFields->new( $session{'CurrentUser'});
-foreach my $id (keys %cfqueues) {
- # What does this _do_? What are the keys to cfqueues
- $id =~ s/^.'*(.*).'*$/$1/;
- # Gotta load up the $queue object, since queues get stored by name now.
- my $queue = RT::Queue->new($session{'CurrentUser'});
- $queue->Load($id);
- $CustomFields->LimitToQueue($queue->Id);
-}
-$CustomFields->LimitToGlobal;
-
-while ( my $CustomField = $CustomFields->Next ) {
- my $queuestr;
- if ($CustomField->QueueObj && $CustomField->QueueObj->Id != 0) {
- $queuestr = $CustomField->QueueObj->Name . ".";
- }
- push @fields, "CustomField." . $queuestr . "{" . $CustomField->Name . "}";
-}
-
-my ( @seen);
-
-my @format = split( /,\s*/, $Format );
-foreach my $field (@format) {
- my %column = ();
- $field =~ s/'(.*)'/$1/;
- my ( $prefix, $suffix );
- if ( $field =~ m/(.*)__(.*)__(.*)/ ) {
- $prefix = $1;
- $suffix = $3;
- $field = $2;
- }
- $field = "<blank>" if !$field;
- $column{Prefix} = $prefix;
- $column{Suffix} = $suffix;
- $field =~ s/\s*(.*)\s*/$1/;
- $column{Column} = $field;
- push @seen, \%column;
-}
-
-if ( $RemoveCol ) {
- my $index = $CurrentDisplayColumns;
- my $column = $seen[$index];
- if ($index) {
- delete $seen[$index];
- my @temp = @seen;
- @seen = ();
- foreach my $element (@temp) {
- next unless $element;
- push @seen, $element;
- }
- }
-}
-elsif ( $AddCol ) {
- if ( defined $SelectDisplayColumns ) {
- my $selected = $SelectDisplayColumns;
- my @columns;
- if (ref($selected) eq 'ARRAY') {
- @columns = @$selected;
- } else {
- push @columns, $selected;
- }
- foreach my $col (@columns) {
- my %column = ();
- $column{Column} = $col;
-
- if ( $Face eq "Bold" ) {
- $column{Prefix} .= "<B>";
- $column{Suffix} .= "</B>";
- }
- if ( $Face eq "Italic" ) {
- $column{Prefix} .= "<I>";
- $column{Suffix} .= "</I>";
- }
- if ($Size) {
- $column{Prefix} .= "<" . $m->interp->apply_escapes( $Size, 'h' ) . ">";
- $column{Suffix} .= "</" . $m->interp->apply_escapes( $Size, 'h' ) . ">";
- }
- if ( $Link eq "Display" ) {
- $column{Prefix} .=
- "<A HREF=\"" . $RT::WebPath . "/Ticket/Display.html?id=__id__\">";
- $column{Suffix} .= "</a>";
- }
- elsif ( $Link eq "Take" ) {
- $column{Prefix} .= "<A HREF=\"" . $RT::WebPath
- . "/Ticket/Display.html?Action=Take&id=__id__\">";
- $column{Suffix} .= "</a>";
- }
-
- if ($Title) {
- $column{Suffix} .= "/TITLE:" . $m->interp->apply_escapes( $Title, 'h' );
- }
- push @seen, \%column;
-}
-}
-}
-elsif ( $ColUp ) {
- my $index = $CurrentDisplayColumns;
- if ( defined $index && ( $index - 1 ) >= 0 ) {
- my $column = $seen[$index];
- $seen[$index] = $seen[ $index - 1 ];
- $seen[ $index - 1 ] = $column;
- $CurrentDisplayColumns = $index - 1;
- }
-}
-elsif ( $ColDown ) {
- my $index = $CurrentDisplayColumns;
- if ( defined $index && ( $index + 1 ) < scalar @seen ) {
- my $column = $seen[$index];
- $seen[$index] = $seen[ $index + 1 ];
- $seen[ $index + 1 ] = $column;
- $CurrentDisplayColumns = $index + 1;
- }
-}
-
-
-my @format_string;
-foreach my $field (@seen) {
- next unless $field;
- my $row = "'" . $field->{Prefix};
- $row .= "__" . $m->interp->apply_escapes( $field->{Column}, 'h' ) . "__"
- unless ( $field->{Column} eq "<blank>" );
- $row .= $field->{Suffix} . "'";
- push( @format_string, $row );
-}
-
-$Format = join(",\n", @format_string);
-
-
-return($Format, \@fields, \@seen);
-
-</%init>
-
diff --git a/rt/html/Search/Elements/DisplayOptions b/rt/html/Search/Elements/DisplayOptions
deleted file mode 100644
index 43a9d99..0000000
--- a/rt/html/Search/Elements/DisplayOptions
+++ /dev/null
@@ -1,110 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => loc("Display Columns") &>
-<table>
-<tr>
-<td>
-<& EditFormat, %ARGS &>
-</td>
-<td valign=top>
-<table valign=top>
-<tr>
-<td class=label>
-<&|/l&>Order by</&>:
-</td><td class=value>
-<select name="OrderBy">
-% foreach my $field (keys %fields) {
-% next unless $field;
-<option value=<%$field%>
-% if ($field =~ /^$OrderBy$/i) {
-SELECTED
-% }
-><&|/l&><%$field%></&></option>
-% }
-</select>
-<select name="Order">
-<option value="ASC"
-% if ($Order eq "ASC") {
-SELECTED
-% }
-><&|/l&>Ascending</&></option>
-<option value="DESC"
-% if ($Order eq "DESC") {
-SELECTED
-% }
-><&|/l&>Descending</&></option>
-</select>
-</td>
-</tr>
-<td class=label>
-<&|/l&>Rows per page</&>:
-</td><td class="value">
-<& /Elements/SelectResultsPerPage,
- Name => "RowsPerPage",
- Default => $RowsPerPage &>
-</td>
-</tr>
-</table>
-</td>
-</tr>
-</table>
-<& /Elements/TitleBoxEnd &>
-
-<%INIT>
-my $tickets = new RT::Tickets($session{'CurrentUser'});
-my %fields = %{$tickets->FIELDS};
-map { $fields{$_}->[0] =~ /^(?:ENUM|INT|DATE|STRING)$/ || delete $fields{$_} } keys %fields;
-delete $fields{'EffectiveId'};
-
-
-</%INIT>
-
-<%ARGS>
-$Order => undef
-$OrderBy => undef
-$RowsPerPage => undef
-$Format => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/EditFormat b/rt/html/Search/Elements/EditFormat
deleted file mode 100644
index dc8720f..0000000
--- a/rt/html/Search/Elements/EditFormat
+++ /dev/null
@@ -1,114 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
-<tr>
-<td>
-<&|/l&>Add Columns</&>:
-</td>
-<td>
-<&|/l&>Format</&>:
-</td>
-<td></td>
-<td>
-<&|/l&>Show Columns</&>:
-</td>
-<tr>
-<td valign=top>
-<select size="6" name="SelectDisplayColumns" multiple>
-% foreach my $field ( @$AvailableColumns) {
-<option value="<%$field%>"><% loc( $field) %></option>
-%# $m->comp( '/Elements/RT__Ticket/ColumnMap', Name => $field, Attr => 'title') ||
-% }
-</select>
-</td>
-<td>
-<&|/l&>Link</&>:
-<select name="Link">
-<option value="None">-</option>
-<option value="Display"><&|/l&>Display</&></option>
-<option value="Take"><&|/l&>Take</&></option>
-</select>
-<br><&|/l&>Title</&>: <input name="Title" size=10>
-<br><&|/l&>Size</&>:
-<select name="Size">
-<option value="">-</option>
-<option value="Small"><&|/l&>Small</&></option>
-<option value="Large"><&|/l&>Large</&></option>
-</select>
-<br><&|/l&>Style</&>:
-<select name="Face">
-<option value="">-</option>
-<option value="Bold"><&|/l&>Bold</&></option>
-<option value="Italic"><&|/l&>Italic</&></option>
-</select>
-</td>
-<td>
-<input type=submit name="AddCol" value="->">
-</td>
-<td valign=top>
-<select size=4 name="CurrentDisplayColumns">
-% my $i=0;
-% foreach my $field (@$CurrentFormat) {
-<option value="<%$i++%>><%$field->{Column}%>">
-<%loc( $field->{Column}) %></option>
-% }
-</select>
-<br>
-<center>
-<input type="submit" name="ColUp" value="^">
-<input type="submit" name="ColDown" value="v">
-<input type="submit" name="RemoveCol" value="<%loc('Delete')%>">
-</center>
-</td>
-<td colspan=3 align=center>
-</td>
-</tr>
-</table>
-
-<%ARGS>
-$CurrentFormat => undef
-$AvailableColumns => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/EditQuery b/rt/html/Search/Elements/EditQuery
deleted file mode 100644
index 783541a..0000000
--- a/rt/html/Search/Elements/EditQuery
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& NewListActions, actions => $actions &>
-<& /Elements/TitleBoxStart, title => join(': ', grep defined, loc("Query"), $Description) &>
-<select size="10" name="clauses" style="width: 100%" multiple>
-% $m->out($optionlist);
-</select>
-<p align="center">
-<input type=submit name="Up" value="^">
-<input type=submit name="Down" value="v">
-<input type=submit name="Left" value="<">
-<input type=submit name="Right" value=">">
-<input type=submit name="Toggle" value="<&|/l&>And/Or</&>">
-<input type=submit name="DeleteClause" value="<&|/l&>Delete</&>">
-%#<input type=submit name="EditQuery" value="Advanced">
-</p>
-<& /Elements/TitleBoxEnd &>
-<%ARGS>
-$Description
-$optionlist
-$actions
-</%ARGS>
diff --git a/rt/html/Search/Elements/EditSearches b/rt/html/Search/Elements/EditSearches
deleted file mode 100644
index bc6b80e..0000000
--- a/rt/html/Search/Elements/EditSearches
+++ /dev/null
@@ -1,104 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => loc('Saved searches') &>
-%# Hide all the save functionality if the user shouldn't see it.
-% if ($session{'CurrentUser'}->HasRight( Right => 'CreateSavedSearch',
-% Object=> $RT::System )) {
-<&|/l&>Privacy:</&>
-% if ($CurrentSearch->{'Object'} && $CurrentSearch->{'Object'}->id) {
-<& SearchPrivacy, Object => $CurrentSearch->{'Object'}->Object &><br>
-% } else {
-<& SelectSearchObject, Name => 'Owner', Objects => \@Objects &><br>
-% }
-<&|/l&>Description</&>:<br>
-<font size="-1"><input size="25" name="Description" value="<%$CurrentSearch->{'Description'}%>"></font>
-<nobr>
-% if ($SearchId ne 'new') {
-% if ($Dirty) {
-<input type="submit" name="Revert" value="<%loc('Revert')%>">
-% }
-<input type="submit" name="Delete" value="<%loc('Delete')%>">
-<input type="submit" name="CopySearch" value="<%loc('Copy')%>">
-</nobr>
-
-% }
-
-% if ($Dirty or $SearchId eq 'new') {
-<input type="submit" name="Save" value="<%loc('Save')%>">
-% }
-<hr>
-% }
-<&|/l&>Load saved search:</&><br>
-<& SelectSearchesForObjects, Name => 'LoadSavedSearch', Objects => \@Objects&>
-<input value="<%loc('Load')%>" type="submit">
-<& /Elements/TitleBoxEnd &>
-
-<%init>
-
-unless ($session{'CurrentUser'}->HasRight( Right => 'LoadSavedSearch',
- Object=> $RT::System )) {
- return;
-}
-my @Objects;
-
-push @Objects, $session{CurrentUser}->UserObj;
-
-my $groups = RT::Groups->new($session{'CurrentUser'});
-
-$groups->LimitToUserDefinedGroups;
-$groups->WithMember(PrincipalId => $session{'CurrentUser'}->Id,
- Recursively => 1);
-
- push (@Objects, @{$groups->ItemsArrayRef()});
-</%INIT>
-
-<%ARGS>
-$SearchId => undef
-$CurrentSearch => undef
-$Description => undef
-$HideResults => 0
-$Dirty => 0
-</%ARGS>
diff --git a/rt/html/Search/Elements/NewListActions b/rt/html/Search/Elements/NewListActions
deleted file mode 100644
index eb82544..0000000
--- a/rt/html/Search/Elements/NewListActions
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($actions[0] ) {
-<b><%loc('Results')%></b><br>
-% foreach my $action (@actions) {
-% next unless ($action);
-% my @item = @$action;
-% if ($item[1] < 0) {
-<font color=red>
-% }
-&nbsp;<%$item[0]%><BR>
-% if ($item[1] < 0) {
-</font>
-% }
-% }
-<BR>
-% }
-<%init>
-@actions = grep (/./,@actions);
-</%init>
-<%ARGS>
-@actions => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/PickBasics b/rt/html/Search/Elements/PickBasics
deleted file mode 100644
index 8a48f6b..0000000
--- a/rt/html/Search/Elements/PickBasics
+++ /dev/null
@@ -1,187 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<tr>
-<td class="label">
-<&|/l&>id</&>
-</td><td>
-<& /Elements/SelectEqualityOperator, Name => "idOp" &>
-</td><td>
-<INPUT Name="ValueOfid" SIZE=5>
-</td>
-</tr>
-
-<tr><td align=right>
-<& /Elements/SelectAttachmentField, Name => 'AttachmentField' &>
-</td><td>
-<& /Elements/SelectBoolean, Name => "AttachmentOp",
- True => loc("matches"),
- False => loc("does not match"),
- TrueVal => 'LIKE',
- FalseVal => 'NOT LIKE'
-&>
-</td><td>
-<Input Name="ValueOfAttachment" Size=20>
-</td>
-</tr>
-<tr>
-<td class="label">
-<&|/l&>Queue</&>
-</td><td>
-<& /Elements/SelectBoolean, Name => "QueueOp" ,
- True => loc("is"),
- False => loc("isn't"),
- TrueVal=> '=',
- FalseVal => '!=' &>
-</td><td>
-<& /Elements/SelectQueue,
- Name => "ValueOfQueue",
- NamedValues => 1,
- CheckQueueRight => 'ShowTicket' &>
-</td>
-</tr>
-<tr>
-<td class="label">
-<&|/l&>Status</&>
-</td><td>
-<& /Elements/SelectBoolean, Name => "StatusOp",
- True => loc("is"),
- False => loc("isn't"),
- TrueVal=> '=',
- FalseVal => '!='
-&>
-</td><td>
-<& /Elements/SelectStatus, Name => "ValueOfStatus", SkipDeleted => 1 &>
-</td>
-</tr>
-<tr><td class="label">
-<SELECT NAME="ActorField">
-<OPTION VALUE="Owner"><&|/l&>Owner</&></OPTION>
-<OPTION VALUE="Creator"><&|/l&>Creator</&></OPTION>
-<OPTION VALUE="LastUpdatedBy"><&|/l&>LastUpdatedBy</&></OPTION>
-</SELECT>
-</td><td>
-<& /Elements/SelectBoolean, Name => "ActorOp",
- TrueVal=> '=',
- FalseVal => '!='
-&>
-</td><td>
-<& /Elements/SelectOwner, Name => "ValueOfActor", ValueAttribute => 'Name' &>
-</td>
-</tr>
-<tr>
-<td class="label">
-<& SelectPersonType, Name => 'WatcherField', Default => 'Requestor' &>
-</td><td>
-<& /Elements/SelectMatch, Name => "WatcherOp" &>
-</td><td>
-<Input Name="ValueOfWatcher" Size=20>
-</tr>
-<tr>
-<td class="label">
-<& SelectPersonType, Name => 'WatcherGroupField', Default => 'RequestorGroup', Suffix => 'Group' &>
-</td><td>
-<& /Elements/SelectBoolean, Name => "WatcherGroupOp",
- True=> loc('belongs to'),
- False=> loc('does not belong to'),
- TrueVal=> '=',
- FalseVal => '!='
-&>
-</td><td>
-<& SelectGroup, Name => 'ValueOfWatcherGroup' &>
-</td>
-</tr>
-<tr>
-<td class="label">
-<& /Elements/SelectDateType, Name=>"DateField" &>
-</td><td>
-<& /Elements/SelectDateRelation, Name=>"DateOp" &>
-</td><td>
-<& /Elements/SelectDate, Name => "ValueOfDate", ShowTime => 0, Default => '' &>
-</td></tr>
-<tr>
-<td class="label">
-<SELECT NAME="TimeField">
-<OPTION VALUE="TimeWorked"><&|/l&>Time Worked</&></OPTION>
-<OPTION VALUE="TimeEstimated"><&|/l&>Time Estimated</&></OPTION>
-<OPTION VALUE="TimeLeft"><&|/l&>Time Left</&></OPTION>
-</SELECT>
-</td><td>
-<& /Elements/SelectEqualityOperator, Name => "TimeOp" &>
-</td><td>
-<INPUT Name="ValueOfTime" SIZE=5>
-</td>
-</tr>
-<tr>
-<td class="label">
-<SELECT NAME="PriorityField">
-<OPTION VALUE="Priority"><&|/l&>Priority</&></OPTION>
-<OPTION VALUE="InitialPriority"><&|/l&>Initial Priority</&></OPTION>
-<OPTION VALUE="FinalPriority"><&|/l&>Final Priority</&></OPTION>
-</SELECT>
-</td><td>
-<& /Elements/SelectEqualityOperator, Name => "PriorityOp" &>
-</td><td>
-<INPUT Name="ValueOfPriority" SIZE=5>
-</td>
-</tr>
-<tr>
-<td class="label">
-<& SelectLinks, Name=>"LinksField" &>
-</td><td>
-<& /Elements/SelectBoolean, Name => "LinksOp",
- True => loc("is"),
- False => loc("isn't"),
- TrueVal=> '=',
- FalseVal => '!=' &>
-</td><td>
-<INPUT Name="ValueOfLinks" value="" SIZE=5>
-</td></tr>
-<%INIT>
-my @people = ('Actor',
- 'Watcher',
- 'WatcherGroup',
- );
-</%INIT>
diff --git a/rt/html/Search/Elements/PickCFs b/rt/html/Search/Elements/PickCFs
deleted file mode 100644
index 435a07a..0000000
--- a/rt/html/Search/Elements/PickCFs
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% while ( my $CustomField = $CustomFields->Next ) {
-% my $name = "'CF.{" . $CustomField->Name . "}'";
-<tr><td class="label">
-<% $CustomField->Name %>
-</td>
-<td>
- <& /Elements/SelectCustomFieldOperator, Name => $name . "Op",
- True => loc("is"),
- False => loc("isn't"),
- TrueVal=> '=', FalseVal => '!=' &>
-</td>
-<td>
-<& /Elements/SelectCustomFieldValue, Name => "ValueOf" . $name,
- CustomField => $CustomField,
- &>
-</td></tr>
-% }
-<%INIT>
-my $CustomFields = RT::CustomFields->new( $session{'CurrentUser'});
-foreach my $id (keys %cfqueues) {
- $id =~ s/^.'*(.*).'*$/$1/;
- # Gotta load up the $queue object, since queues get stored by name now. my $id
- my $queue = RT::Queue->new($session{'CurrentUser'});
- $queue->Load($id);
- $CustomFields->LimitToQueue($queue->Id);
-}
-$CustomFields->LimitToGlobal();
-
-</%INIT>
-
-<%ARGS>
-%cfqueues => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/PickCriteria b/rt/html/Search/Elements/PickCriteria
deleted file mode 100644
index 1293444..0000000
--- a/rt/html/Search/Elements/PickCriteria
+++ /dev/null
@@ -1,80 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => loc('Add Criteria')&>
-<table width=100% cellspacing=0 cellpadding=0 border=0>
- <tr>
- <td>
- <table cellspacing=0 border=0>
- <tr><td class=label>
- <&|/l&>Aggregator</&>:
- </td>
- <td><& SelectAndOr, Name => "AndOr" &>
- </td></tr>
- </table>
- </td></tr>
- <tr>
- <td>
- <hr>
- </td>
- </tr>
- <tr>
- <td valign=top>
- <table cellspacing=0 border=0>
- <& PickBasics &>
- <& PickCFs, cfqueues => \%cfqueues &>
- </table>
- </td>
- </tr>
- <tr><td>&nbsp;</td></tr>
-</table>
-
-<& /Elements/TitleBoxEnd &>
-
-<%ARGS>
-$addquery => 0
-$query => undef
-%cfqueues => undef
-</%ARGS>
diff --git a/rt/html/Search/Elements/SearchPrivacy b/rt/html/Search/Elements/SearchPrivacy
deleted file mode 100644
index 270e1ba..0000000
--- a/rt/html/Search/Elements/SearchPrivacy
+++ /dev/null
@@ -1,53 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-$Object => undef
-</%args>
-% if (ref($Object) eq 'RT::User' && $Object->id == $session{'CurrentUser'}->Id) {
-<&|/l&>My saved searches</&>
-% } else {
-<&|/l, $Object->Name&>[_1]'s saved searches</&>
-% }
diff --git a/rt/html/Search/Elements/SelectAndOr b/rt/html/Search/Elements/SelectAndOr
deleted file mode 100644
index 2f3c704..0000000
--- a/rt/html/Search/Elements/SelectAndOr
+++ /dev/null
@@ -1,51 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<input type=radio NAME="<%$Name%>" CHECKED VALUE="AND"><&|/l&>AND</&></input>
-<input type=radio NAME="<%$Name%>" VALUE="OR"><&|/l&>OR</&></input>
-
-<%ARGS>
-$Name => "Operator"
-</%ARGS>
diff --git a/rt/html/Search/Elements/SelectGroup b/rt/html/Search/Elements/SelectGroup
deleted file mode 100644
index edd5371..0000000
--- a/rt/html/Search/Elements/SelectGroup
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-% if ($AllowNull) {
-<OPTION VALUE="">-</OPTION>
-% }
-%while (my $group = $groups->Next) {
-<OPTION VALUE="<%$group->id%>" <%$group->id eq $Default && "SELECTED"%>><%$group->Name%></OPTION>
-%}
-</SELECT>
-
-<%INIT>
-my $groups = new RT::Groups($session{'CurrentUser'});
-$groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => $Domain);
-
-</%INIT>
-<%ARGS>
-$AllowNull => 1
-$Default=> ''
-$Name => 'Group'
-$Domain => 'UserDefined';
-</%ARGS>
diff --git a/rt/html/Search/Elements/SelectLinks b/rt/html/Search/Elements/SelectLinks
deleted file mode 100644
index 00ec80b..0000000
--- a/rt/html/Search/Elements/SelectLinks
+++ /dev/null
@@ -1,64 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME="<%$Name%>">
-% foreach (@fields) {
-<OPTION VALUE="<%$_%>"><&|/l&><%$_%></&></OPTION>
-% }
-</SELECT>
-<%ARGS>
-$Name => 'LinksField'
-</%ARGS>
-
-<%INIT>
-my @fields = ('HasMember',
- 'MemberOf',
- 'DependsOn',
- 'DependedOnBy',
- 'RefersTo',
- 'ReferredToBy',
- 'LinkedTo',
- );
-</%INIT>
diff --git a/rt/html/Search/Elements/SelectPersonType b/rt/html/Search/Elements/SelectPersonType
deleted file mode 100644
index d4127c9..0000000
--- a/rt/html/Search/Elements/SelectPersonType
+++ /dev/null
@@ -1,82 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<SELECT NAME ="<%$Name%>">
-% if ($AllowNull) {
-<OPTION VALUE="">-</OPTION>
-% }
-% for my $option (@types) {
-% if ($Suffix) {
-<OPTION VALUE="<% $option %><% $Suffix %>" <%$option eq $Default && "SELECTED"%> ><%loc($option)%></OPTION>
-% next;
-% }
-% foreach my $subtype (@subtypes) {
-<OPTION VALUE="<%"$option.$subtype"%>" <%$option eq $Default && $subtype eq 'EmailAddress' && "SELECTED"%> ><% loc($option) %> <% loc($subtype) %></OPTION>
-% }
-% }
-</SELECT>
-
-<%INIT>
-my @types;
-if ($Scope =~ 'queue') {
- @types = qw(Cc AdminCc);
-}
-elsif ($Suffix eq 'Group') {
- @types = qw(Requestor Cc AdminCc Watcher);
-}
-else {
- @types = qw(Requestor Cc AdminCc Watcher Owner);
-}
-
-my @subtypes = qw(EmailAddress Name RealName Nickname Organization Address1 Address2 WorkPhone HomePhone MobilePhone PagerPhone);
-
-</%INIT>
-<%ARGS>
-$AllowNull => 1
-$Suffix => ''
-$Default=>undef
-$Scope => 'ticket'
-$Name => 'WatcherType'
-</%ARGS>
diff --git a/rt/html/Search/Elements/SelectSearchObject b/rt/html/Search/Elements/SelectSearchObject
deleted file mode 100644
index e9df517..0000000
--- a/rt/html/Search/Elements/SelectSearchObject
+++ /dev/null
@@ -1,58 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-@Objects => undef
-$Name => undef
-</%args>
-<select name="<%$Name%>">
-% foreach my $object (@Objects) {
-% if (ref($object) eq 'RT::User' && $object->id == $session{'CurrentUser'}->Id) {
-<option value="<%ref($object)%>-<%$object->id%>"><&|/l&>My saved searches</&></option>
-% } else {
-<option value="<%ref($object)%>-<%$object->id%>"><&|/l, $object->Name&>[_1]'s saved searches</&></option>
-% }
-% }
-</select>
diff --git a/rt/html/Search/Elements/SelectSearchesForObjects b/rt/html/Search/Elements/SelectSearchesForObjects
deleted file mode 100644
index e6be66a..0000000
--- a/rt/html/Search/Elements/SelectSearchesForObjects
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-@Objects => undef
-$Name => undef
-</%args>
-<select name="<%$Name%>">
-% foreach my $object (@Objects) {
-% if (ref($object) eq 'RT::User' && $object->id == $session{'CurrentUser'}->Id) {
-<option value=""><&|/l&>My saved searches</&></option>
-% } else {
-<option value=""></option>
-<option value=""><&|/l, $object->Name&>[_1]'s saved searches</&></option>
-% }
-% my @searches = $object->Attributes->Named('SavedSearch');
-% foreach my $search (@searches) {
-% # Skip it if it is not a ticket search.
-% next if ($search->SubValue('SearchType')
-% && $search->SubValue('SearchType') ne 'Ticket');
-<option value="<%ref($object)%>-<%$object->id%>-SavedSearch-<%$search->Id%>"> -<%$search->Description||loc('Unnamed search')%></option>
-% }
-% }
-</select>
diff --git a/rt/html/Search/Results.html b/rt/html/Search/Results.html
deleted file mode 100755
index 5849378..0000000
--- a/rt/html/Search/Results.html
+++ /dev/null
@@ -1,138 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title, Refresh => $session{'tickets_refresh_interval'} &>
-<& /Ticket/Elements/Tabs,
- current_tab => "Search/Results.html".$QueryString,
- Title => $title,
- Format => $Format,
- Query => $Query,
- Rows => $Rows,
- OrderBy => $OrderBy,
- Order => $Order &>
-<& /Elements/TicketList,
- Query => $Query,
- AllowSorting => 1,
- OrderBy => $OrderBy,
- Order => $Order,
- Rows => $Rows,
- Page => $Page,
- Format => $Format,
- BaseURL => $RT::WebPath."/Search/Results.html?"
-
- &>
-<div align=right>
-<form method=get action="<%$RT::WebPath%>/Search/Results.html">
-<input type="hidden" name="Query" value="<%$Query%>" />
-<input type="hidden" name="Format" value="<%$Format%>" />
-<input type="hidden" name="HideResults" value="<%$HideResults%>" />
-<input type="hidden" name="Rows" value="<%$Rows%>" />
-<input type="hidden" name="Page" value="<%$Page%>" />
-<input type="hidden" name="OrderBy" value="<%$OrderBy%>" />
-<input type="hidden" name="Order" value="<%$Order%>" />
-<& /Elements/Refresh, Name => 'TicketsRefreshInterval', Default => $session {'tickets_refresh_interval'} &>
-<input type=submit value="<&|/l&>Go!</&>">
-</form>
-</div>
-<div align=right>
-<a href="<%$RT::WebPath%>/Search/Bulk.html<%$QueryString%>"><&|/l&>Update multiple tickets</&></a><br>
-<a href="<%$RT::WebPath%>/Search/Results.html<%$QueryString%>"><&|/l&>Bookmarkable link</&></a><br>
-<a href="<%$RT::WebPath%>/Search/Results.tsv<%$QueryString%>"><&|/l&>spreadsheet</&></a> |
-<a href="<%$RT::WebPath%>/Search/Results.rdf<%$ShortQueryString%>"><&|/l&>RSS</&></a> |
-<a href="<%$RT::WebPath%>/Tools/Offline.html<%$ShortQueryString%>"><&|/l&>Work offline</&></a><br>
-<& /Elements/Callback, _CallbackName => 'SearchActions', QueryString => $QueryString&>
-</div>
-<%INIT>
-my ($title, $ticketcount);
-$session{'i'}++;
-$session{'tickets'} = RT::Tickets->new($session{'CurrentUser'}) ;
-$session{'tickets'}->FromSQL($Query) if ($Query);
-$session{'tickets'}->OrderBy(FIELD => $OrderBy, ORDER => $Order);
-
-
-$session{'CurrentSearchHash'} = {
- Format => $Format,
- Query => $Query,
- Order => $Order,
- OrderBy => $OrderBy,
- RowsPerPage => $Rows
- };
-
-
-
-if ( $session{'tickets'}->Query()) {
- $ticketcount = $session{tickets}->CountAll();
- $title = loc('Found [quant,_1,ticket]', $ticketcount);
-} else {
- $title = loc("Find tickets");
-}
-
-my $QueryString = "?".$m->comp('/Elements/QueryString',
- Query => $Query,
- Format => $Format,
- Rows => $Rows,
- OrderBy => $OrderBy,
- Order => $Order,
- Page => $Page);
-
-my $ShortQueryString = "?".$m->comp('/Elements/QueryString', Query => $Query);
-
-if ($ARGS{'TicketsRefreshInterval'}) {
- $session{'tickets_refresh_interval'} = $ARGS{'TicketsRefreshInterval'};
-}
-
-</%INIT>
-<%CLEANUP>
-$session{'tickets'}->PrepForSerialization();
-</%CLEANUP>
-<%ARGS>
-$Query => undef
-$Format => undef
-$HideResults => 0
-$Rows => 50
-$Page => 1
-$OrderBy => 'id'
-$Order => 'ASC'
-</%ARGS>
diff --git a/rt/html/Search/Results.rdf b/rt/html/Search/Results.rdf
deleted file mode 100644
index ee71fea..0000000
--- a/rt/html/Search/Results.rdf
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-
-my $Tickets = RT::Tickets->new($session{'CurrentUser'});
-$Tickets->FromSQL($ARGS{'Query'});
-$r->content_type('application/rdf+xml');
-
-
-
- # create an RSS 1.0 file (http://purl.org/rss/1.0/)
- use XML::RSS;
- my $rss = new XML::RSS (version => '1.0');
- $rss->channel(
- title => "$RT::rtname: Syndicated Search",
- link => $RT::WebURL,
- description => "",
- dc => {
- },
- syn => {
- updatePeriod => "hourly",
- updateFrequency => "1",
- updateBase => "1901-01-01T00:00+00:00",
- },
- );
-
-
- while ( my $Ticket = $Tickets->Next()) {
- my $row;
- $rss->add_item(
- title => $Ticket->Subject,
- link => $RT::WebURL."/Ticket/Display.html?id=".$Ticket->id,
- description => $Ticket->Transactions->First->Content,
- dc => {
- subject => $Ticket->Subject,
- creator => $Ticket->CreatorObj->RealName . "<".$Ticket->CreatorObj->EmailAddress.">",
- },
- );
- }
-$m->out($rss->as_string);
-$m->abort();
-</%INIT>
diff --git a/rt/html/Search/Results.tsv b/rt/html/Search/Results.tsv
deleted file mode 100644
index 17aa88a..0000000
--- a/rt/html/Search/Results.tsv
+++ /dev/null
@@ -1,115 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-
-my $Tickets = RT::Tickets->new($session{'CurrentUser'});
-$Tickets->FromSQL($ARGS{'Query'});
-
-my @rows;
-my %known_cfs;
-
-my @attrs = qw( id QueueObj->Name Subject Status TimeEstimated TimeWorked TimeLeft Priority FinalPriority OwnerObj->Name
- Requestors->MemberEmailAddressesAsString DueObj->ISO ToldObj->ISO
- CreatedObj->ISO ResolvedObj->ISO );
-
- $r->content_type('application/vnd.ms-excel');
- while ( my $Ticket = $Tickets->Next()) {
- my $row;
- foreach my $attr (@attrs) {
- my $method = '$Ticket->'.$attr.'()';
- $row->{$attr} = eval $method;
- if ($@) {die "Failed to find $attr - ". $@};
- }
-
- my $cfs = $Ticket->QueueObj->CustomFields();
- while (my $cf = $cfs->Next) {
- my @content;
- my $values = $Ticket->CustomFieldValues($cf->Id);
- while (my $value = $values->Next) {
- push @content, $value->Content;
- }
- $row->{'CustomField-'.$cf->Id} = join(', ',@content);
- if ($row->{'CustomField-'.$cf->Id}) {
- $known_cfs{$cf->Id} = $cf->Name;
- }
- }
- push @rows, $row;
-
-
- }
-{
-my @header;
- foreach my $attr (@attrs) {
- my $label = $attr;
- $label =~ s'Obj-.(?:AsString|Name|ISO)''g;
- $label =~ s'-\>MemberEmailAddressesAsString''g;
- push @header, $label;
- }
- foreach my $id (sort keys %known_cfs) {
- push @header, $known_cfs{$id};
- }
-
-$m->out(join("\t", @header));
-$m->out("\n");
-}
-foreach my $row (@rows) {
- my @row;
- foreach my $attr(@attrs) {
- push @row, $row->{"$attr"};
- }
- foreach my $id (sort keys %known_cfs) {
- my $val = $row->{'CustomField-'.$id};
- $val =~ s/(\n|\r)//g;
- push @row, $val;
- }
-
- $m->out(join("\t",@row));
- $m->out("\n");
-}
-
-
-$m->abort();
-</%INIT>
diff --git a/rt/html/SelfService/Attachment/dhandler b/rt/html/SelfService/Attachment/dhandler
deleted file mode 100644
index f953c24..0000000
--- a/rt/html/SelfService/Attachment/dhandler
+++ /dev/null
@@ -1,49 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-$m->comp('/Ticket/Attachment/dhandler', %ARGS);
-$m->abort;
-</%init>
diff --git a/rt/html/SelfService/Closed.html b/rt/html/SelfService/Closed.html
deleted file mode 100644
index 2d49a68..0000000
--- a/rt/html/SelfService/Closed.html
+++ /dev/null
@@ -1,49 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header, Title => loc('Closed tickets') &>
-
-<& /SelfService/Elements/MyRequests, status => ['rejected', 'resolved'], friendly_status =>
-loc('closed') &>
diff --git a/rt/html/SelfService/Create.html b/rt/html/SelfService/Create.html
deleted file mode 100644
index d60ae26..0000000
--- a/rt/html/SelfService/Create.html
+++ /dev/null
@@ -1,115 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& Elements/Header, Title => loc("Create a ticket") &>
-
-<FORM ACTION="Display.html" METHOD="POST" ENCTYPE="multipart/form-data">
-<INPUT TYPE=HIDDEN Name="id" VALUE="new">
-
-<TABLE>
-<TR>
-<TD class="label">
-<&|/l&>Queue</&>:
-</td>
-<td class="value">
- <input type="hidden" name="Queue" value="<%$queue_obj->id%>">
- <b><%$queue_obj->Name%></b> (<%$queue_obj->Description%>)
-</TD>
-</TR>
-<TR>
-<TD class="label">
-<&|/l&>Requestors</&>:
-</TD>
-<TD class="value">
-<INPUT Name="Requestors" Value="<%$session{CurrentUser}->EmailAddress%>" SIZE=20>
-</TD>
-</TR>
-<TR>
-<TD class="label">
-<&|/l&>Cc</&>:
-</TD>
-<TD class="value">
- <INPUT NAME="Cc" SIZE=20>
-</TD>
-</TR>
-<TR>
-<TD class="label">
-<&|/l&>Subject</&>:
-</TD>
-<TD class="value">
-<INPUT Name="Subject" SIZE=60 MAXSIZE=100 value="">
-</TD>
-</TR>
-<tr>
- <td colspan="2">
- <& /Ticket/Elements/EditCustomFields, QueueObj => $queue_obj &>
- </td>
-</tr>
-<tr>
-<TD class="label">
-<&|/l&>Attach file</&>:
-</TD>
-<TD class="value">
-<INPUT Name="Attach" type="file">
-</TD>
-</TR>
-<TR>
-<TD COLSPAN=2>
-<&|/l&>Describe the issue below</&>:<br>
-<& /Elements/MessageBox &>
-</TD>
-</TR>
-</TABLE>
-<& /Elements/Submit, Label => loc("Create ticket")&>
-
-
-</FORM>
-<%args>
-$Queue => undef
-</%args>
-<%init>
-my $queue_obj = RT::Queue->new($session{'CurrentUser'});
-$queue_obj->Load($Queue);
-</%init>
diff --git a/rt/html/SelfService/CreateTicketInQueue.html b/rt/html/SelfService/CreateTicketInQueue.html
deleted file mode 100755
index 5e89736..0000000
--- a/rt/html/SelfService/CreateTicketInQueue.html
+++ /dev/null
@@ -1,61 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& Elements/Header, Title => loc("Create a ticket") &>
-
-<h1><&|/l&>Select a queue for your new ticket</&></h1>
-
-<dl>
-% while (my $queue = $queues->Next) {
-% next unless $queue->CurrentUserHasRight('CreateTicket');
-
-<dt><a href="<%$RT::WebPath%>/SelfService/Create.html?Queue=<%$queue->id%>"><%$queue->Name%></a></dt>
-<dd><%$queue->Description%></dd>
-% }
-</dl>
-<%init>
-my $queues = RT::Queues->new($session{'CurrentUser'});
-$queues->UnLimit;
-</%init>
diff --git a/rt/html/SelfService/Display.html b/rt/html/SelfService/Display.html
deleted file mode 100644
index f7140df..0000000
--- a/rt/html/SelfService/Display.html
+++ /dev/null
@@ -1,219 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header, Title => loc('#[_1]: [_2]', $Ticket->id, $Ticket->Subject) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
- <TABLE WIDTH="100%" class="ticketsummary" >
- <TR>
- <TD VALIGN=TOP WIDTH="50%" class="boxcontainer">
- <& /Elements/TitleBoxStart, title => loc('The Basics'),
- title_class=> 'inverse',
- color => "#993333" &>
- <& /Ticket/Elements/ShowBasics, Ticket => $Ticket &>
- <& /Ticket/Elements/ShowCustomFields, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
-</TD>
- <TD VALIGN=TOP WIDTH="50%" class="boxcontainer">
- <& /Elements/TitleBoxStart, title => loc("Dates"),
- title_class=> 'inverse',
- color => "#663366" &>
- <& /Ticket/Elements/ShowDates, Ticket => $Ticket, UpdatedLink => 0 &>
- <& /Elements/TitleBoxEnd &>
-</TD>
-</TR>
-</TABLE>
-
-
-
-%#!!pape: selfservice_find_attachments.patch {{
-<& /Ticket/Elements/ShowHistory,
- Ticket => $Ticket,
- URIFile => "Display.html",
- ShowHeaders => $ARGS{'ShowHeaders'},
- AttachPath => "Attachment",
- Attachments => $attachments,
- UpdatePath => "Update.html"
-&>
-%#!!pape: selfservice_find_attachments.patch }}
-
-
-
-<%INIT>
-
-my ( $field, @results );
-
-# {{{ Load the ticket
-#If we get handed two ids, mason will make them an array. bleck.
-# We want teh first one. Just because there's no other sensible way
-# to deal
-my @id = ( ref $id eq 'ARRAY' ) ? @{$id} : ($id);
-
-my $Ticket = new RT::Ticket( $session{'CurrentUser'} );
-
-# store the uploaded attachment in session
-if ( $ARGS{'Attach'} ) { # attachment?
- $session{'Attachments'} = {} unless defined $session{'Attachments'};
-
- my $subject = "$ARGS{'Attach'}";
-
- # since CGI.pm deutf8izes the magic field, we need to add it back.
- Encode::_utf8_on($subject);
-
- # strip leading directories
- $subject =~ s#^.*[\\/]##;
-
- my $attachment = MakeMIMEEntity(
- Subject => $subject,
- Body => "",
- AttachmentFieldName => 'Attach'
- );
-
- $session{'Attachments'} =
- { %{ $session{'Attachments'} || {} },
- $ARGS{'Attach'} => $attachment };
-}
-
-if ( $id[0] eq 'new' ) {
-
- # {{{ Create a new ticket
-
- my $Queue = new RT::Queue( $session{'CurrentUser'} );
- unless ( $Queue->Load( $ARGS{'Queue'} ) ) {
- $m->comp( 'Error.html', Why => loc('Queue not found') );
- $m->abort;
- }
-
- unless ( $Queue->CurrentUserHasRight('CreateTicket') ) {
- $m->comp( 'Error.html',
- Why =>
- loc('You have no permission to create tickets in that queue.') );
- $m->abort;
- }
-
-
- ( $Ticket, @results ) =
- CreateTicket( Attachments => $session{'Attachments'}, %ARGS, Status => 'new' );
-
- unless ( $Ticket->id ) {
- $m->comp( 'Error.html', Why => join( "\n", @results ));
- $m->abort();
- }
-
- # }}}
-
- # delete temporary storage entry to make WebUI clean
- unless ( keys %{ $session{'Attachments'} } and $ARGS{'UpdateAttach'} ) {
- delete $session{'Attachments'};
- }
-
- # }}}
- }
- else {
- unless ( $Ticket->Load( $id[0] ) ) {
- $m->comp( 'Error.html',
- Why => loc( "Couldn't load ticket '[_1]'", $id ) );
- $m->abort();
- }
- }
-
- # }}}
-
- unless ( $Ticket->CurrentUserHasRight('ShowTicket') ) {
- $m->comp( 'Error.html',
- Why => loc("No permission to display that ticket") );
- $m->abort();
- }
-
- my ( $code, $msg );
-
- #Update the status
- if ( ( defined $ARGS{'Status'} )
- and $ARGS{'Status'}
- and ( $ARGS{'Status'} ne $Ticket->Status ) )
- {
- ( $code, $msg ) = $Ticket->SetStatus( $ARGS{'Status'} );
- push @results, "$msg";
- }
-
- # }}}
-
- if (
- $session{'Attachments'}
- || ( $ARGS{'UpdateContent'} ne ''
- && $ARGS{'UpdateContent'} ne "-- \n"
- . $session{'CurrentUser'}->UserObj->Signature )
- )
- {
- $ARGS{UpdateAttachments} = $session{'Attachments'};
- }
- ProcessUpdateMessage(
- ARGSRef => \%ARGS,
- Actions => \@results,
- TicketObj => $Ticket
- );
-
- # delete temporary storage entry to make WebUI clean
- unless ( keys %{ $session{'Attachments'} } and $ARGS{'UpdateAttach'} ) {
- delete $session{'Attachments'};
- }
-
- my @cfupdates = ProcessObjectCustomFieldUpdates(Object => $Ticket, ARGSRef => \%ARGS);
- push (@results, @cfupdates);
-
- # }}}
-
- my $Transactions = $Ticket->Transactions;
-
- my $attachments =
- $m->comp( '/Ticket/Elements/FindAttachments', Ticket => $Ticket );
-
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/SelfService/Elements/GotoTicket b/rt/html/SelfService/Elements/GotoTicket
deleted file mode 100644
index 50efaa2..0000000
--- a/rt/html/SelfService/Elements/GotoTicket
+++ /dev/null
@@ -1,46 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<FORM ACTION="<%$RT::WebPath%>/SelfService/Display.html"><input type=submit value="<&|/l&>Goto ticket</&>">&nbsp;<input size=4 name=id></FORM>
diff --git a/rt/html/SelfService/Elements/Header b/rt/html/SelfService/Elements/Header
deleted file mode 100644
index c7e6a91..0000000
--- a/rt/html/SelfService/Elements/Header
+++ /dev/null
@@ -1,47 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, %ARGS, Prefs => '/SelfService/Prefs.html' &>
-<& /SelfService/Elements/Tabs, %ARGS &>
diff --git a/rt/html/SelfService/Elements/MyRequests b/rt/html/SelfService/Elements/MyRequests
deleted file mode 100644
index 2df8ce8..0000000
--- a/rt/html/SelfService/Elements/MyRequests
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/TitleBoxStart, title => $title &>
-<TABLE BORDER=0 cellspacing=1 cellpadding=1 BGCOLOR="#eeeeee" WIDTH=100%>
-<TR>
-<TH><&|/l&>Subject</&></TH>
-<TH><&|/l&>Status</&></TH>
-<TH><&|/l&>Owner</&></TH>
-</TR>
-<TR>
-% while (my $Ticket = $MyTickets->Next) {
-<TR>
-<TD>
-<a href="<%$RT::WebPath%>/SelfService/Display.html?id=<%$Ticket->Id%>"><%$Ticket->Id%>: <%$Ticket->Subject%></a>
-</TD>
-<TD>
-<%loc($Ticket->Status)%>
-</TD><TD>
-<%$Ticket->OwnerObj->Name%>
-</TR>
-% }
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-
-
-<%INIT>
-$title ||= loc("My [_1] tickets", $friendly_status);
-my $MyTickets;
-$MyTickets = new RT::Tickets ($session{'CurrentUser'});
-$MyTickets->LimitWatcher(TYPE => 'Requestor', VALUE => $session{'CurrentUser'}->EmailAddress);
-$MyTickets->OrderBy(FIELD => 'id', ORDER => 'ASC');
-
-foreach my $status (@status) {
-
- $MyTickets->LimitStatus(VALUE => $status);
-}
-</%INIT>
-<%ARGS>
-$title => undef
-$friendly_status => loc('open')
-@status => ('open', 'new', 'stalled')
-</%ARGS>
diff --git a/rt/html/SelfService/Elements/Tabs b/rt/html/SelfService/Elements/Tabs
deleted file mode 100644
index 802fd65..0000000
--- a/rt/html/SelfService/Elements/Tabs
+++ /dev/null
@@ -1,90 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/PageLayout,
- current_toptab => $current_toptab,
- current_tab => $current_tab,
- toptabs => $tabs,
- topactions => $actions,
- title => $Title
-&>
-<a name="skipnav" id="skipnav" accesskey="8"></a>
-<%INIT>
-
-if ($Title) {
-$Title = loc ("RT Self Service") . " / " . $Title;
-} else {
-$Title = loc ("RT Self Service");
-
-}
-my ($tab);
-my $tabs = { A => { title => loc('Open tickets'),
- path => 'SelfService/',
- },
- B => { title => loc('Closed tickets'),
- path => 'SelfService/Closed.html',
- },
- C => { title => loc('New ticket'),
- path => 'SelfService/CreateTicketInQueue.html'
- }
- };
-if ($session{'CurrentUser'}->HasRight( Right => 'ModifySelf',
- Object => $RT::System )) {
- $tabs->{Z} = { title => loc('Preferences'),
- path => 'SelfService/Prefs.html'
- };
-}
-
-my $actions = {
- B => { html => $m->scomp('GotoTicket')
- }
- };
-</%INIT>
-<%ARGS>
-$Title => undef
-$current_toptab => undef
-$current_tab => undef
-</%ARGS>
-
diff --git a/rt/html/SelfService/Error.html b/rt/html/SelfService/Error.html
deleted file mode 100644
index 8ac9f81..0000000
--- a/rt/html/SelfService/Error.html
+++ /dev/null
@@ -1,68 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header, Title => loc('Error') &>
-<h2 class="title"><%loc('Error')%></h2>
-<& /Elements/TitleBoxStart, title => $Title &>
-<%$Why%>
-<br>
-<font size=-1>
-<%$Details%>
-</font>
-<& /Elements/TitleBoxEnd &>
-</body>
-</HTML>
-
-
-<%args>
-$Code => undef
-$Details => undef
-$Title => loc("RT Error")
-$Why => loc("the calling component did not specify why")
-</%args>
-
-<%INIT>
-$RT::Logger->error("WebRT: $Why ($Details)");
-</%INIT>
diff --git a/rt/html/SelfService/Prefs.html b/rt/html/SelfService/Prefs.html
deleted file mode 100644
index 3913203..0000000
--- a/rt/html/SelfService/Prefs.html
+++ /dev/null
@@ -1,90 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header, Title => loc('Preferences') &>
-
-<& /Elements/ListActions, actions => \@results &>
-<form method=post>
-
-% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
-<& /Elements/TitleBoxStart, title => loc('Change password') &>
-<&|/l&>New password</&>: <input type=password name="NewPass1" size=16>
-<&|/l&>Confirm</&>: <input type=password name="NewPass2" size=16>
-<& /Elements/TitleBoxEnd &>
-<BR>
-% }
-<& /Elements/Submit, Label => loc('Save Changes') &>
- </form>
-
-
-<%INIT>
-my @results;
-
-if ($NewPass1) {
- if ($NewPass1 ne $NewPass2) {
- push (@results, "Passwords did not match.");
- }
- else {
- my ($val, $msg)=$session{'CurrentUser'}->UserObj->SetPassword($NewPass1);
- push (@results, "Password: ".$msg);
- }
-}
-if ($Signature) {
- $Signature =~ s/(\r\n|\r)/\n/g;
- if ($Signature ne $session{'CurrentUser'}->UserObj->Signature) {
- my ($val, $msg)=$session{'CurrentUser'}->UserObj->SetSignature($Signature);
- push (@results, "Signature: ".$msg);
- }
-}
-#A hack to make sure that session gets rewritten.
-
-$session{'i'}++;
-</%INIT>
-
-<%ARGS>
-$Signature => undef
-$NewPass1 => undef
-$NewPass2 => undef
-</%ARGS>
diff --git a/rt/html/SelfService/Update.html b/rt/html/SelfService/Update.html
deleted file mode 100644
index 816a610..0000000
--- a/rt/html/SelfService/Update.html
+++ /dev/null
@@ -1,127 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header,
- Title =>loc('Update ticket #[_1]', $Ticket->id)
-&>
-
-
-<FORM ACTION="Display.html" METHOD=POST ENCTYPE="multipart/form-data">
-<input type=hidden name="UpdateType" value="response">
-<input TYPE="hidden" NAME="id" VALUE="<%$Ticket->Id%>">
-<table>
- <tr>
- <td class="label">
- <&|/l&>Status</&>
- </td>
- <td class="value">
- <& /Elements/SelectStatus, Name=>"Status", DefaultLabel => loc("[_1] (Unchanged)",loc($DefaultStatus)) &>
- </td>
- </tr>
- <tr>
- <td class="label">
- <&|/l&>Subject</&>
- </td>
- <td class="value">
- <input name="UpdateSubject" size=60 value="<% $Ticket->Subject %>">
- </td>
-
- </tr>
-% if (exists $session{'Attachments'}) {
-<tr>
- <TD class="label">
- <&|/l&>Attached file</&>
- </TD>
- <TD COLSPAN=5 class="value">
- <&|/l&>Check box to delete</&><BR>
-% foreach my $attach_name (keys %{$session{'Attachments'}}) {
- <input type="checkbox" name="DeleteAttach-<%$attach_name%>" value="1"><%$attach_name%><BR>
-% } # end of foreach
- </TD>
-</TR>
-% } # end of if
-<tr>
- <td class"label">
- <&|/l&>Attach</&>
- </td>
- <td class="value">
- <input name="Attach" type="file">
- <input type="hidden" name="UpdateAttach" value="1">
- </td>
- </tr>
-</table>
-<& /Ticket/Elements/EditCustomFields, TicketObj => $Ticket &>
-<& /Elements/MessageBox,
- Name => "UpdateContent",
- QuoteTransaction => $ARGS{QuoteTransaction}
- &>
- <br>
-
-
-<& /Elements/Submit &>
- </FORM>
-
-
-
-<%INIT>
-
-my $Ticket = LoadTicket($id);
-
-my $title = loc( "Update ticket #[_1]", $Ticket->id );
-
-$DefaultStatus = $Ticket->Status() unless ($DefaultStatus);
-
-
-Abort( loc("No permission to view update ticket") )
- unless ( $Ticket->CurrentUserHasRight('ReplyToTicket')
- or $Ticket->CurrentUserHasRight('ModifyTicket') );
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-$Action => undef
-$DefaultStatus => undef
-</%ARGS>
diff --git a/rt/html/SelfService/index.html b/rt/html/SelfService/index.html
deleted file mode 100644
index f3ccb85..0000000
--- a/rt/html/SelfService/index.html
+++ /dev/null
@@ -1,48 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /SelfService/Elements/Header, Title => undef &>
-
-<& /SelfService/Elements/MyRequests &>
diff --git a/rt/html/Ticket/Attachment/dhandler b/rt/html/Ticket/Attachment/dhandler
deleted file mode 100644
index 584fd72..0000000
--- a/rt/html/Ticket/Attachment/dhandler
+++ /dev/null
@@ -1,92 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%perl>
- my ($ticket, $trans,$attach, $filename);
- my $arg = $m->dhandler_arg; # get rest of path
- if ($arg =~ '^(\d+)/(\d+)') {
- $trans = $1;
- $attach = $2;
- }
- else {
- Abort("Corrupted attachment URL.");
- }
- my $AttachmentObj = new RT::Attachment($session{'CurrentUser'});
- $AttachmentObj->Load($attach) || Abort("Attachment '$attach' could not be loaded");
-
-
- unless ($AttachmentObj->id) {
- Abort("Bad attachment id. Couldn't find attachment '$attach'\n");
- }
- unless ($AttachmentObj->TransactionId() == $trans ) {
- Abort("Bad transaction number for attachment. $trans should be".$AttachmentObj->TransactionId() ."\n");
-
- }
-
- my $content_type = $AttachmentObj->ContentType || 'text/plain';
-
- unless ($RT::TrustHTMLAttachments) {
- $content_type = 'text/plain' if ($content_type =~ /^text\/html/i);
- }
-
- if (my $enc = $AttachmentObj->OriginalEncoding) {
- # normalize Encode.pm convention with IANA ones
- $enc = 'big5' if $enc eq 'big5-eten';
- $enc = 'utf-8' if $enc eq 'utf8';
- $content_type .= ";charset=$enc";
- }
-
- # unless ($RT::TrustMIMEAttachments) {
- # $content_type = 'application/octet-stream';
- # }
-
- $r->content_type( $content_type );
- $m->clear_buffer();
- $m->out($AttachmentObj->OriginalContent);
- $m->abort;
-</%perl>
-<%attr>
-AutoFlush => 0
-</%attr>
diff --git a/rt/html/Ticket/Create.html b/rt/html/Ticket/Create.html
deleted file mode 100644
index b547242..0000000
--- a/rt/html/Ticket/Create.html
+++ /dev/null
@@ -1,300 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Create a new ticket") &>
-<& /Elements/Tabs,
- current_toptab => "Ticket/Create.html",
- Title => loc("Create a new ticket") &>
-<FORM ACTION="<%$RT::WebPath%>/Ticket/Create.html" METHOD="POST" ENCTYPE="multipart/form-data" NAME="TicketCreate">
-<INPUT TYPE=HIDDEN Name="id" VALUE="new">
-<A NAME="top">
-
-
-[<a class="currenttab"><&|/l&>Show basics</&></a>] [<A HREF="#detail"><&|/l&>Show details</&></a>]
-<BR>
-<& /Elements/TitleBoxStart, contentbg => "#cccccc", title => loc("Create a new ticket") &>
-<TABLE border=0 cellpadding=0 cellspacing=0>
-<TR><TD class=label><&|/l&>Queue</&>:</TD>
-<TD class=value><% $QueueObj->Name %>
-<INPUT TYPE=HIDDEN NAME=Queue Value="<%$QueueObj->Name%>">
-</TD>
-<TD class=label><&|/l&>Status</&>:
-</TD>
-<TD class=value>
-<& /Elements/SelectStatus, Name => "Status", Default => $ARGS{Status}||'new', DefaultValue => 0 &>
-</TD>
-<TD class=label>
-<&|/l&>Owner</&>:
-</TD>
-<TD class=value>
-<& /Elements/SelectOwner, Name => "Owner", QueueObj => $QueueObj, Default => $ARGS{Owner}||$RT::Nobody->Id, DefaultValue => 0 &>
-</TD>
-</TR>
-<TR>
-<TD class=label>
-<&|/l&>Requestors</&>:
-</TD>
-<TD class=value COLSPAN=5>
-<INPUT Name="Requestors" Value="<% ($ARGS{Requestors}) || $session{CurrentUser}->EmailAddress %>" SIZE=40>
-</TD>
-</TR>
-<TR>
-<TD class=labeltop>
-<&|/l&>Cc</&>:
-</TD>
-<TD class=value COLSPAN=5>
-<INPUT NAME="Cc" SIZE=40 VALUE="<% $ARGS{Cc} %>"><BR>
-<i><font size=-2>
-<&|/l&>(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)</&></font></i>
-</TD>
-</TR>
-<TR>
-<TD class=labeltop>
-<&|/l&>Admin Cc</&>:
-</TD>
-<TD class=value COLSPAN=5>
-<INPUT NAME="AdminCc" SIZE=40 VALUE="<% $ARGS{AdminCc} %>"><BR>
-<i><font size=-2>
-<&|/l&>(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)</&></font></i>
-</TD>
-</TR>
-<TR>
-<TD class=label>
-<&|/l&>Subject</&>:
-</TD>
-<TD class=value COLSPAN=5>
-<INPUT Name="Subject" SIZE=60 MAXSIZE=100 value="<%$ARGS{Subject} || ''%>">
-</TD>
-</TR>
-<TR>
-<TD COLSPAN=6>
-<& /Ticket/Elements/EditCustomFields, QueueObj => $QueueObj &>
-</TD>
-</TR>
-% if ($TxnCFs->Count) {
-% while (my $CF = $TxnCFs->Next()) {
-<TR>
-<TD ALIGN=RIGHT><% $CF->Name %>:</TD>
-<TD><& /Elements/EditCustomField, CustomField => $CF, NamePrefix =>
- "Object-RT::Transaction--CustomField-" &><em><% $CF->FriendlyType %></em></TD>
-</TD></TR>
-% }
-% }
-<TR>
-% if (exists $session{'Attachments'}) {
-<TD class=label>
-<&|/l&>Attached file</&>:
-</TD>
-<TD COLSPAN=5>
-<&|/l&>Check box to delete</&><BR>
-% foreach my $attach_name (keys %{$session{'Attachments'}}) {
-<input type="checkbox" name="DeleteAttach-<%$attach_name%>" value="1"><%$attach_name%><BR>
-% } # end of foreach
-</TD>
-</TR>
-<TR>
-% } # end of if
-<TD>
-<&|/l&>Attach file</&>:
-</TD>
-<TD class=value COLSPAN=5>
-<INPUT TYPE=FILE NAME="Attach">
-<INPUT TYPE=SUBMIT NAME="AddMoreAttach" VALUE="<&|/l&>Add More Files</&>">
-</TD>
-</TR>
-<TR>
-<TD COLSPAN=6>
-<&|/l&>Describe the issue below</&>:<br>
-% if (exists $ARGS{Content}) {
-<& /Elements/MessageBox, Default => $ARGS{Content}, IncludeSignature => 0 &>
-% } else {
-<& /Elements/MessageBox, QuoteTransaction => $QuoteTransaction &>
-%}
-
-<BR>
-</TD>
-</TR>
-<TR>
-<TD ALIGN=RIGHT COLSPAN=2>
-</TD>
-</TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, Label => loc("Create")&>
-
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-
-<A NAME="detail">
- [<A HREF="#top"><&|/l&>Show basics</&></a>] [<a class="currenttab"><&|/l&>Show details</&></a>]
-<BR>
-<TABLE WIDTH="100%" BORDER=0>
-<TR>
-<TD WIDTH="50%" VALIGN=TOP>
-
- <& /Elements/TitleBoxStart, title => loc('The Basics'),
- title_class=> 'inverse',
- color => "#993333" &>
-<TABLE BORDER=0>
-<TR><TD ALIGN=RIGHT><&|/l&>Priority</&>:</TD><TD><input size=3 name="InitialPriority" value="<% $ARGS{InitialPriority} ? $ARGS{InitialPriority} : $QueueObj->InitialPriority %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Final Priority</&>:</TD><TD><input size=3 name="FinalPriority" value="<% $ARGS{FinalPriority} ? $ARGS{FinalPriority} : $QueueObj->FinalPriority %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Time Worked</&>:</TD><TD><&|/l,'<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">'&>[_1] min</&></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Time Left</&>:</TD><TD><&|/l,'<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">'&>[_1] min</&></TD></TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<br>
-<& /Elements/TitleBoxStart, title => loc("Dates"),
- title_class=> 'inverse',
- color => "#663366" &>
-
-<TABLE BORDER=0>
-<TR><TD ALIGN=RIGHT><&|/l&>Starts</&>:</TD><TD><input size=10 name="Starts" value="<% $ARGS{Starts} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Due</&>:</TD><TD><input size=10 name="Due" value="<%
-$ARGS{Due}%>"></TD></TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<BR>
-</TD>
-
-<TD VALIGN="TOP">
-<& /Elements/TitleBoxStart, title => loc('Links'),
- title_class=> 'inverse',
- titleright => '', color=> "#336633" &>
-
-<i><&|/l&>(Enter ticket ids or URLs, separated with spaces)</&></i>
-<TABLE BORDER=0>
-<TR><TD ALIGN=RIGHT><&|/l&>Depends on</&></TD><TD><input size=10 name="new-DependsOn" value="<% $ARGS{'new-DependsOn'} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Depended on by</&></TD><TD><input size=10 name="DependsOn-new" value="<% $ARGS{'DependsOn-new'} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Parents</&></TD><TD><input size=10 name="new-MemberOf" value="<% $ARGS{'new-MemberOf'} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Children</&></TD><TD><input size=10 name="MemberOf-new" value="<% $ARGS{'MemberOf-new'} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Refers to</&></TD><TD><input size=10 name="new-RefersTo" value="<% $ARGS{'new-RefersTo'} %>"></TD></TR>
-<TR><TD ALIGN=RIGHT><&|/l&>Referred to by</&></TD><TD><input size=10 name="RefersTo-new" value="<% $ARGS{'RefersTo-new'} %>"></TD></TR>
-
-
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-<BR>
-
-</TD>
-</TR>
-</TABLE>
-<& /Elements/Submit, Label => loc("Create") &>
-</FORM>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR>
-
-<%INIT>
-
-
-
-my $QueueObj = new RT::Queue($session{'CurrentUser'});
-$QueueObj->Load($Queue) || Abort(loc("Queue could not be loaded."));
-my $CFs = $QueueObj->TicketCustomFields();
-my $TxnCFs = $QueueObj->TicketTransactionCustomFields();
-
-# if no due date has been set explicitly, then use the
-# queue's default if it exists
-if ($QueueObj->DefaultDueIn && !$ARGS{'Due'}) {
- my $default_due = RT::Date->new($session{'CurrentUser'});
- $default_due->SetToNow();
- $default_due->AddDays($QueueObj->DefaultDueIn);
- $ARGS{'Due'} = $default_due->ISO();
-}
-
-# {{{ deal with deleting uploaded attachments
-foreach my $key (keys %ARGS) {
- if ($key =~ m/^DeleteAttach-(.+)$/) {
- delete $session{'Attachments'}{$1};
- }
- $session{'Attachments'} = { %{$session{'Attachments'} || {}} };
-}
-
-# {{{ store the uploaded attachment in session
-if ($ARGS{'Attach'}) { # attachment?
- $session{'Attachments'} = {} unless defined $session{'Attachments'};
-
- my $subject = "$ARGS{'Attach'}";
-
- # strip leading directories
- $subject =~ s#^.*[\\/]##;
-
- my $attachment = MakeMIMEEntity(
- Subject => $subject,
- Body => "",
- AttachmentFieldName => 'Attach'
- );
-
- $session{'Attachments'} = { %{$session{'Attachments'} || {}},
- $ARGS{'Attach'} => $attachment };
-}
-# }}}
-
-# delete temporary storage entry to make WebUI clean
-unless (keys %{$session{'Attachments'}} and $ARGS{'id'} eq 'new') {
- delete $session{'Attachments'};
-}
-
-
-# }}}
-
-if ((!exists $ARGS{'AddMoreAttach'}) && ($ARGS{'id'} eq 'new')) { # new ticket?
- $m->comp('Display.html', %ARGS);
- return();
-}
-</%INIT>
-
-<%ARGS>
-$DependsOn => undef
-$DependedOnBy => undef
-$MemberOf => undef
-$QuoteTransaction => undef
-$Queue => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Display.html b/rt/html/Ticket/Display.html
deleted file mode 100644
index dd4c093..0000000
--- a/rt/html/Ticket/Display.html
+++ /dev/null
@@ -1,159 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header,
- Title => loc("#[_1]: [_2]", $TicketObj->Id, $TicketObj->Subject) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $TicketObj,
- current_tab => 'Ticket/Display.html?id='.$TicketObj->id,
- Title => loc("#[_1]: [_2]", $TicketObj->Id, $TicketObj->Subject) &>
-
-<& /Elements/ListActions, actions => \@Actions &>
-
-<& /Elements/TitleBoxStart, title => loc('Ticket metadata'), contentbg =>
-'#ffffff' &>
-<& /Ticket/Elements/ShowSummary, Ticket => $TicketObj, Attachments => $attachments &>
-<& /Elements/TitleBoxEnd &>
-
-<BR>
-
-<& /Elements/Callback, _CallbackName => 'BeforeShowHistory', Ticket => $TicketObj, %ARGS &>
-
-<& /Ticket/Elements/ShowHistory ,
- Ticket => $TicketObj,
- Tickets => $Tickets,
- Collapsed => $ARGS{'Collapsed'},
- ShowHeaders => $ARGS{'ShowHeaders'},
- Attachments => $attachments,
- AttachmentContent => $attachment_content
-
- &>
-
-
-<%ARGS>
-$id => undef
-$Create => undef
-$ShowHeaders => 0
-$Collapsed => undef
-$TicketObj => undef
-</%ARGS>
-
-<%INIT>
-
-$m->comp('/Elements/Callback', _CallbackName => 'Initial', TicketObj => $TicketObj, ARGSRef => \%ARGS);
-
-my ($linkid, $message, $tid, @Actions, $Tickets);
-
-unless ($id || $TicketObj) {
- Abort('No ticket specified');
-}
-
-if ($ARGS{'id'} eq 'new') {
- # {{{ Create a new ticket
-
- my $Queue = new RT::Queue($session{'CurrentUser'});
- unless ($Queue->Load($ARGS{'Queue'})) {
- Abort('Queue not found');
- }
-
- unless ($Queue->CurrentUserHasRight('CreateTicket')) {
- Abort('You have no permission to create tickets in that queue.');
- }
- ($TicketObj, @Actions) =
- CreateTicket(Attachments => $session{'Attachments'}, %ARGS);
- delete $session{'Attachments'};
- unless ($TicketObj->CurrentUserHasRight('ShowTicket')) {
- Abort("No permission to view newly created ticket #".$TicketObj->id.".");
- }
- # }}}
-} else {
- if (!$TicketObj) {
-
- $TicketObj = RT::Ticket->new($session{'CurrentUser'});
-
- $TicketObj = LoadTicket($ARGS{'id'});
- unless ($TicketObj->CurrentUserHasRight('ShowTicket')) {
- Abort("No permission to view ticket");
- }
- }
-
- if (defined $ARGS{'Action'}) {
- if ($ARGS{'Action'} =~ /^(Steal|Kill|Take|SetTold)$/) {
- my $action = $1;
- my ($res, $msg)=$TicketObj->$action();
- push(@Actions, $msg);
- }
- }
-
- $ARGS{'UpdateContent'} =~ s/\r\n/\n/g if defined $ARGS{'UpdateContent'};
- if ( $ARGS{'UpdateTimeWorked'} ||
- $session{'Attachments'} ||
- ( defined $ARGS{'UpdateContent'}
- && $ARGS{'UpdateContent'} ne ''
- && $ARGS{'UpdateContent'} ne "-- \n"
- . $session{'CurrentUser'}->UserObj->Signature )) {
- $ARGS{UpdateAttachments} = $session{'Attachments'};
- ProcessUpdateMessage( ARGSRef => \%ARGS,
- Actions => \@Actions,
- TicketObj => $TicketObj );
- delete $session{'Attachments'};
- }
- #Process status updates
- my @BasicActions = ProcessTicketBasics(ARGSRef => \%ARGS, TicketObj=>$TicketObj);
- my @results = ProcessTicketLinks( TicketObj => $TicketObj, ARGSRef => \%ARGS);
-
- push (@Actions, @BasicActions, @results);
-}
-
-
-
-$m->comp('/Elements/Callback', _CallbackName => 'BeforeDisplay',
- TicketObj => \$TicketObj, Tickets => \$Tickets, ARGSRef => \%ARGS);
-
-
-my $attachments = $m->comp('Elements/FindAttachments', Ticket => $TicketObj, Tickets => $Tickets);
-my $attachment_content = $m->comp('Elements/LoadTextAttachments', Ticket => $TicketObj);
-
-</%INIT>
diff --git a/rt/html/Ticket/Elements/AddCustomers b/rt/html/Ticket/Elements/AddCustomers
deleted file mode 100644
index 01c7367..0000000
--- a/rt/html/Ticket/Elements/AddCustomers
+++ /dev/null
@@ -1,50 +0,0 @@
-%# Copyright (c) 2004 Ivan Kohler <ivan-rt@420.am>
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-<BR>
-<%$msg%><br>
-
-% if (@Customers) {
-
-<br><i>(Check box to link)<i>
-<table>
-% foreach my $customer (@Customers) {
-<tr>
- <td>
- <input type="checkbox" name="Ticket-AddCustomer-<% $customer->{'custnum'} %>" VALUE="1" <% scalar(@Customers) == 1 ? 'CHECKED' : '' %>>
- <A HREF="<%$freeside_url%>/view/cust_main.cgi?<% $customer->{'custnum'} %>"><% &RT::URI::freeside::small_custview($customer->{'custnum'}, &RT::URI::freeside::FreesideGetConfig('countrydefault'), 1) |n %>
- </td>
-</tr>
-% }
-
-% }
-
-<%INIT>
-my ($msg);
-
-my $freeside_url = &RT::URI::freeside::FreesideURL();
-
-my @Customers = ();
-if ( $CustomerString ) {
- @Customers = &RT::URI::freeside::smart_search( 'search' => $CustomerString );
-}
-
-my @Services = ();
-if ($ServiceString) {
- @Services = (); #service_search();
-}
-
-</%INIT>
-
-<%ARGS>
-$CustomerString => undef
-$ServiceString => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/AddWatchers b/rt/html/Ticket/Elements/AddWatchers
deleted file mode 100644
index 98314b9..0000000
--- a/rt/html/Ticket/Elements/AddWatchers
+++ /dev/null
@@ -1,121 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<BR>
-<%$msg%><br>
-
-<&|/l&>Add new watchers</&>:<br>
-
-<table>
-% if ($Users and $Users->Count) {
-<tr><td>
-<&|/l&>Type</&>
-</td><td>
-<&|/l&>Username</&>
-</td></tr>
-% while (my $u = $Users->Next ) {
-<tr><td><&/Elements/SelectWatcherType, Name => "Ticket-AddWatcher-Principal-".$u->PrincipalId &></td><td><%$u->Name%> (<%$u->RealName%>)</td></tr>
-% }
-% }
-
-% if ($Groups and $Groups->Count) {
-<tr><td>
-<&|/l&>Type</&>
-</td><td>
-<&|/l&>Group</&>
-</td></tr>
-% while (my $g = $Groups->Next ) {
-<tr><td><&/Elements/SelectWatcherType, Name => "Ticket-AddWatcher-Principal-".$g->PrincipalId, Scope => 'queue' &></td><td><%$g->Name%> (<%$g->Description%>)</td></tr>
-% }
-% }
-
-<tr><td>
-<&|/l&>Type</&>
-</td><td>
-<&|/l&>Email</&>
-</td></tr>
-<tr><td>
-<&/Elements/SelectWatcherType, Name => "WatcherTypeEmail1" &>
-</td><td>
-<input name="WatcherAddressEmail1" size=15>
-</td></tr>
-<tr><td>
-<&/Elements/SelectWatcherType, Name => "WatcherTypeEmail2" &>
-</td><td>
-<input name="WatcherAddressEmail2" size=15>
-</td></tr>
-<tr><td>
-<&/Elements/SelectWatcherType, Name => "WatcherTypeEmail3" &>
-</td><td>
-<input name="WatcherAddressEmail3" size=15>
-</td></tr>
-</table>
-
-<%INIT>
-my ($msg, $Users, $Groups);
-
-if ($UserString) {
- $Users = RT::Users->new($session{'CurrentUser'});
- $Users->Limit(FIELD => $UserField, VALUE => $UserString, OPERATOR => $UserOp);
- $Users->LimitToPrivileged if $PrivilegedOnly;
- }
-
-if ($GroupString) {
- $Groups = RT::Groups->new($session{'CurrentUser'});
- $Groups->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined');
- $Groups->Limit(FIELD => $GroupField, VALUE => $GroupString, OPERATOR => $GroupOp);
- }
-
-</%INIT>
-
-<%ARGS>
-$UserField => 'Name'
-$UserOp => '='
-$UserString => undef
-$GroupField => 'Name'
-$GroupOp => '='
-$GroupString => undef
-$PrivilegedOnly => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/BulkLinks b/rt/html/Ticket/Elements/BulkLinks
deleted file mode 100644
index 6a3859a..0000000
--- a/rt/html/Ticket/Elements/BulkLinks
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
- <TR>
- <TD class="label"><&|/l&>Merge into</&>:</TD>
- <TD class="entry"><input name="Ticket-MergeInto"> <i><&|/l&>(only one ticket)</&></i></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Depends on</&>:</TD>
- <TD class="entry"><input name="Ticket-DependsOn"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Depended on by</&>:</TD>
- <TD class="entry"><input name="DependsOn-Ticket"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Parents</&>:</TD>
- <TD class="entry"><input name="Ticket-MemberOf"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Children</&>:</TD>
- <TD class="entry"> <input name="MemberOf-Ticket"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Refers to</&>:</TD>
- <TD class="entry"><input name="Ticket-RefersTo"></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Referred to by</&>:</TD>
- <TD class="entry"> <input name="RefersTo-Ticket"></TD>
- </TR>
-</TABLE>
diff --git a/rt/html/Ticket/Elements/EditBasics b/rt/html/Ticket/Elements/EditBasics
deleted file mode 100644
index 7156851..0000000
--- a/rt/html/Ticket/Elements/EditBasics
+++ /dev/null
@@ -1,94 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
- <TR>
- <td class="label"><&|/l&>Subject</&>:</td>
- <td class="value"><input name=Subject value="<%$TicketObj->Subject|h%>" SIZE=50></td>
- </TR>
-
- <TR>
- <td class="label"><&|/l&>Status</&>:</td>
- <td class="value"><%$SelectStatus|n%></td>
- </TR>
- <TR>
- <td class="label"><&|/l&>Queue</&>:</td>
- <td class="value"><%$SelectQueue|n%></td>
- </TR>
- <TR>
- <td class="label"><&|/l&>Time Estimated</&>:</td>
- <td class="value"><input name=TimeEstimated value="<%$TicketObj->TimeEstimated|h%>" SIZE="5"></td>
- </TR>
- <TR>
- <td class="label"><&|/l&>Time Worked</&>:</td>
- <td class="value"><input name=TimeWorked value="<%$TicketObj->TimeWorked|h%>" SIZE="5"></td>
- </TR>
- <TR>
- <td class="label"><&|/l&>Time Left</&>:</td>
- <td class="value"><input name=TimeLeft value="<%$TicketObj->TimeLeft|h%>" SIZE="5"></td>
- </TR>
-
- <TR>
- <td class="label"><&|/l&>Priority</&>:</td>
- <td class="value"><input name=Priority value="<%$TicketObj->Priority|h%>" SIZE="5"></td>
- </TR>
-
- <TR>
- <td class="label"><&|/l&>Final Priority</&>:</td>
- <td class="value"><input name=FinalPriority value="<%$TicketObj->FinalPriority|h%>" SIZE="5"></td>
- </TR>
-<& /Elements/Callback, _CallbackName => 'EndOfList', TicketObj => $TicketObj, %ARGS &>
-</TABLE>
-
-<%INIT>
-#It's hard to do this inline, so we'll preload the html of the selectstatus in here.
-my $SelectStatus = $m->scomp("/Elements/SelectStatus", Name => 'Status', DefaultLabel => loc("[_1] (Unchanged)",loc($TicketObj->Status)));
-my $SelectQueue = $m->scomp("/Elements/SelectQueue", Name => 'Queue', Default =>$TicketObj->QueueObj->Id);
-
-</%INIT>
-<%ARGS>
-
-$TicketObj => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/EditCustomField b/rt/html/Ticket/Elements/EditCustomField
deleted file mode 100644
index 63687ac..0000000
--- a/rt/html/Ticket/Elements/EditCustomField
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
-
-# RT 3.2 API compatibility glue
-
-$RT::Logger->debug("Ticket/Elements/EditCustomField is deprecated in RT 3.4 and will be removed in 3.6.");
-
-$ARGS{'NamePrefix'} =~ s/^Ticket-/Object-RT::Ticket-/;
-$ARGS{'NamePrefix'} =~ s/^CustomField-/Object-RT::Ticket--CustomField-/;
-$m->comp('/Elements/EditCustomField', %ARGS, Object=> $ARGS{'TicketObj'});
-</%init>
diff --git a/rt/html/Ticket/Elements/EditCustomFields b/rt/html/Ticket/Elements/EditCustomFields
deleted file mode 100644
index d566f4e..0000000
--- a/rt/html/Ticket/Elements/EditCustomFields
+++ /dev/null
@@ -1,100 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
-<tr>
-<td valign="top" width="50%">
-<table>
-
-% my @entry_fields;
-% my $i;
-% my $cfcount = $CustomFields->Count;
-% $cfcount++ if ($cfcount % 2) ; # if we have an odd number of
-% #custom fields, fudge it so we know where to put in the table break
-% while (my $CustomField = $CustomFields->Next()) {
-% if ($cfcount == 2 * $i) {
-</table>
-</td>
-<td valign="top" width="50%">
-<table>
-% }
-% $i++;
- <tr>
- <td class="labeltop">
- <b><%$CustomField->Name%></b><br>
- <i><%$CustomField->FriendlyType%></i>
- </td>
- <td class="entry"><& /Elements/EditCustomField,
- Object => $TicketObj,
- CustomField => $CustomField,
- NamePrefix => $NamePrefix
- &></td>
- </tr>
-% }
-</table>
-</td>
-</tr>
-</table>
-
-<%INIT>
-my $CustomFields;
-my $NamePrefix;
-
-if ($TicketObj) {
- $CustomFields = $TicketObj->CustomFields();
- $NamePrefix = "Object-RT::Ticket-".$TicketObj->Id."-CustomField-";
-
-} else {
- $CustomFields = $QueueObj->TicketCustomFields();
- $NamePrefix = "Object-RT::Ticket--CustomField-";
-}
-
-
-
-</%INIT>
-<%ARGS>
-$TicketObj => undef
-$QueueObj => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/EditCustomers b/rt/html/Ticket/Elements/EditCustomers
deleted file mode 100644
index c5a6f70..0000000
--- a/rt/html/Ticket/Elements/EditCustomers
+++ /dev/null
@@ -1,67 +0,0 @@
-%# Copyright (c) 2004 Ivan Kohler <ivan-rt@420.am>
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-<TABLE width=100%>
- <TR>
- <TD VALIGN=TOP WIDTH=50%>
- <h3><&|/l&>Current Customers</&></h3>
-
-<table>
- <tr>
- <td><i><&|/l&>(Check box to disassociate)</&></i></td>
- </tr>
- <tr>
- <td class="value">
-% #while (my $link = $Ticket->MemberOf->Next) {
-% foreach my $link (
-% grep { $_->TargetURI->Resolver->{'fstable'} eq 'cust_main' }
-% grep { $_->TargetURI->Scheme eq 'freeside' }
-% @{ $Ticket->_Links('Base')->ItemsArrayRef }
-% ) {
-
- <INPUT TYPE=CHECKBOX NAME="DeleteLink--<%$link->Type%>-<%$link->Target%>">
-%# <& ShowLink, URI => $link->TargetURI &><br>
- <A HREF="<% $link->TargetURI->Resolver->HREF %>"><% $link->TargetURI->Resolver->AsStringLong |n %></A>
- <BR>
-% }
- </td>
- </tr>
-</table>
-
-</TD>
-
-<TD VALIGN=TOP>
-<h3><&|/l&>New Customer Links</&></h3>
-<&|/l&>Find customer</&><BR>
-<input name="CustomerString">
-<input type=submit name="OnlySearchForCustomers" value="<&|/l&>Go!</&>">
-<br><i>cust #, name, company or phone</i>
-<BR>
-%#<BR>
-%#<&|/l&>Find service</&><BR>
-%#<input name="ServiceString">
-%#<input type=submit name="OnlySearchForServices" value="<&|/l&>Go!</&>">
-%#<br><i>username, username@domain, domain, or IP address</i>
-%#<BR>
-
-<& AddCustomers, Ticket => $Ticket,
- CustomerString => $CustomerString,
- ServiceString => $ServiceString, &>
-
-</TD>
-</TR>
-</TABLE>
-
-<%ARGS>
-$CustomerString => undef
-$ServiceString => undef
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/EditDates b/rt/html/Ticket/Elements/EditDates
deleted file mode 100644
index a197741..0000000
--- a/rt/html/Ticket/Elements/EditDates
+++ /dev/null
@@ -1,75 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
- <TR>
- <TD class="label"><&|/l&>Starts</&>:</TD>
- <TD class="entry"><& /Elements/SelectDate, menu_prefix => 'Starts', current => 0 &>
- (<% $TicketObj->StartsObj->AsString %>)</TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Started</&>:</TD>
- <TD class="entry"><& /Elements/SelectDate, menu_prefix => 'Started', current => 0 &> (<%$TicketObj->StartedObj->AsString %>)</TD>
- </TR>
-
- <TR>
- <TD class="label">
- <&|/l&>Last Contact</&>:
- </TD>
- <TD class="entry">
- <& /Elements/SelectDate, menu_prefix => 'Told', current => 0 &> (<% $TicketObj->ToldObj->AsString %>)
- </TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Due</&>:</TD>
- <TD class="entry">
- <& /Elements/SelectDate, menu_prefix => 'Due', current => 0 &> (<% $TicketObj->DueObj->AsString %>)
- </TD>
- </TR>
-</TABLE>
-<%ARGS>
-$TicketObj => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/Elements/EditPeople b/rt/html/Ticket/Elements/EditPeople
deleted file mode 100644
index 055d7ba..0000000
--- a/rt/html/Ticket/Elements/EditPeople
+++ /dev/null
@@ -1,91 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
-<TR>
-<TD VALIGN=TOP>
-
-<h3><&|/l&>New watchers</&></h3>
-<&|/l&>Find people whose</&><BR>
-<& /Elements/SelectUsers &>
-<input type=submit name="OnlySearchForPeople" value="<&|/l&>Go!</&>">
-<BR>
-<&|/l&>Find groups whose</&><BR>
-<& /Elements/SelectGroups &>
-<input type=submit name="OnlySearchForGroup" value="<&|/l&>Go!</&>">
-
-<& AddWatchers, Ticket => $Ticket, UserString => $UserString,
- UserOp => $UserOp, UserField => $UserField,
- GroupString => $GroupString, GroupOp => $GroupOp,
- GroupField => $GroupField, PrivilegedOnly => $PrivilegedOnly &>
-</TD><TD VALIGN=TOP>
-<h3><&|/l&>Owner</&></h3>
-<&|/l&>Owner</&>: <& /Elements/SelectOwner, Name => 'Owner', QueueObj => $Ticket->QueueObj, TicketObj => $Ticket, Default => $Ticket->OwnerObj->Id, DefaultValue => 0&>
-<h3><&|/l&>Current watchers</&></h3>
-<&|/l&>(Check box to delete)</&><br>
-
-<&|/l&>Requestors</&>:
-<& EditWatchers, TicketObj => $Ticket, Watchers => $Ticket->Requestors &>
-
-<&|/l&>Cc</&>:
-<& EditWatchers, TicketObj => $Ticket, Watchers => $Ticket->Cc &>
-
-<&|/l&>Administrative Cc</&>:
-<& EditWatchers, TicketObj => $Ticket, Watchers => $Ticket->AdminCc &>
-
-</TD>
-</TR>
-</TABLE>
-
-<%ARGS>
-$UserField => undef
-$UserOp => undef
-$UserString => undef
-$GroupField => undef
-$GroupOp => undef
-$GroupString => undef
-$PrivilegedOnly => undef
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/EditWatchers b/rt/html/Ticket/Elements/EditWatchers
deleted file mode 100644
index 0089932..0000000
--- a/rt/html/Ticket/Elements/EditWatchers
+++ /dev/null
@@ -1,74 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<ul>
-%# Print out a placeholder if there are none.
-%if ($Members->Count == 0 ) {
-<li><i><&|/l&>none</&></i>
-% }
-
-
-%while (my $watcher=$Members->Next) {
-<li>
-<INPUT TYPE=CHECKBOX NAME="Ticket-DeleteWatcher-Type-<%$Watchers->Type%>-Principal-<%$watcher->MemberId%>" value="1" UNCHECKED>
-%if ($watcher->MemberObj->IsUser) {
-<a href="<%$RT::WebPath%>/Admin/Users/Modify.html?id=<%$watcher->MemberObj->Object->id%>">
-<%$watcher->MemberObj->Object->Name%></a>
-%} else {
-<a href="<%$RT::WebPath%>/Admin/Groups/Modify.html?id=<%$watcher->MemberObj->Object->id%>">
-<%$watcher->MemberObj->Object->Name%></a>
-%}
-% }
-</ul>
-<%INIT>
-my $Members = $Watchers->MembersObj;
-</%INIT>
-<%ARGS>
-$TicketObj => undef
-$Watchers => undef
-</%ARGS>
-
-
-
diff --git a/rt/html/Ticket/Elements/FindAttachments b/rt/html/Ticket/Elements/FindAttachments
deleted file mode 100755
index 017c772..0000000
--- a/rt/html/Ticket/Elements/FindAttachments
+++ /dev/null
@@ -1,93 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-my %documents;
-
-#A default implementation here loops through all transactions and pulls out all their attachments.
-# We end up doing an end-run around that to get a bit more performance
-
-# We force the cache of ticket transactions to get populated up front. otherwise, the
-# code that looks at attachments will look at each one in turn.
-my $attachments = RT::Attachments->new( $session{'CurrentUser'} );
-
-$attachments->Columns( qw( Id Filename ContentType Headers Subject Parent ContentEncoding ContentType TransactionId Created));
-
-my $transactions = $attachments->NewAlias('Transactions');
-$attachments->Join( ALIAS1 => 'main',
- FIELD1 => 'TransactionId',
- ALIAS2 => $transactions,
- FIELD2 => 'id' );
-
-my $tickets = $attachments->NewAlias('Tickets');
-
- $attachments->Join( ALIAS1 => $transactions,
- FIELD1 => 'ObjectId',
- ALIAS2 => $tickets,
- FIELD2 => 'id' );
-
- $attachments->Limit( ALIAS => $transactions,
- FIELD => 'ObjectType',
- VALUE => 'RT::Ticket');
-if ($Tickets) {
- while ($Ticket = $Tickets->Next) {
- $attachments->Limit( ALIAS => $tickets,
- FIELD => 'EffectiveId',
- VALUE => $Ticket->id() );
- }
-} else {
- $attachments->Limit( ALIAS => $tickets,
- FIELD => 'EffectiveId',
- VALUE => $Ticket->id() );
-}
-
-
-return ($attachments);
-</%INIT>
-<%ARGS>
-$Ticket => undef
-$Tickets => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/Elements/LoadTextAttachments b/rt/html/Ticket/Elements/LoadTextAttachments
deleted file mode 100755
index 943568f..0000000
--- a/rt/html/Ticket/Elements/LoadTextAttachments
+++ /dev/null
@@ -1,90 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-
-my $attachments = RT::Attachments->new( $session{'CurrentUser'} );
-
-$attachments->Columns( qw(id Content ContentType TransactionId ContentEncoding));
-
-if ( $Ticket->CurrentUserHasRight('ShowTicket') ) {
- my $transactions = $attachments->NewAlias('Transactions');
- $attachments->Join( ALIAS1 => 'main',
- FIELD1 => 'TransactionId',
- ALIAS2 => $transactions,
- FIELD2 => 'id' );
-
- my $tickets = $attachments->NewAlias('Tickets');
-
-
- $attachments->Join( ALIAS1 => $transactions,
- FIELD1 => 'ObjectId',
- ALIAS2 => $tickets,
- FIELD2 => 'id' );
-
- $attachments->Limit( ALIAS => $transactions,
- FIELD => 'ObjectType',
- VALUE => 'RT::Ticket');
-
-
- $attachments->Limit( ALIAS => $tickets,
- FIELD => 'EffectiveId',
- VALUE => $Ticket->id() );
- # if the user may not see comments do not return them
- unless ( $Ticket->CurrentUserHasRight('ShowTicketComments') ) {
- $attachments->Limit( ALIAS => $transactions, FIELD => 'Type', OPERATOR => '!=', VALUE => "Comment" );
- }
-
- $attachments->Limit ( FIELD => 'ContentType', OPERATOR => '=', VALUE => 'text/plain');
- $attachments->Limit ( FIELD => 'ContentType', OPERATOR => 'STARTSWITH', VALUE => 'message/');
- $attachments->Limit ( FIELD => 'ContentType', OPERATOR => '=', VALUE => 'text');
-
-}
-return ($attachments);
-</%INIT>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/Elements/PreviewScrips b/rt/html/Ticket/Elements/PreviewScrips
deleted file mode 100755
index a3492b7..0000000
--- a/rt/html/Ticket/Elements/PreviewScrips
+++ /dev/null
@@ -1,124 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-$TicketObj => undef
-
-</%args>
-<%init>
-
-my $arg = 'Ticket-'.$TicketObj->Id.'-SquelchMailTo';
-my @squelchto = ref($ARGS{$arg}) eq 'ARRAY' ? @{$ARGS{$arg}} : ($ARGS{$arg});
-
-foreach my $address (@squelchto) {
- $TicketObj->SquelchMailTo($address) if ($address);
-}
-
-
-$arg = 'Ticket-'.$TicketObj->Id.'-UnsquelchMailTo';
-my @unsquelchto = ref($ARGS{$arg}) eq 'ARRAY' ? @{$ARGS{$arg}} : ($ARGS{$arg});
-
-foreach my $address (@unsquelchto) {
- $TicketObj->UnsquelchMailTo($address) if ($address);
-}
-
-
-my $action;
-
-if (( $ARGS{'UpdateType'} eq 'response' ) || ($ARGS{'Action'} eq 'Respond' )) {
- $action = 'Correspond';
-}
-else {
- $action = 'Comment';
-}
-
-my $Message = MakeMIMEEntity(
- Subject => $ARGS{'UpdateSubject'},
- Body => $ARGS{'UpdateContent'},
-);
-
-my ( $Transaction, $Description, $Object ) = $TicketObj->$action(
- CcMessageTo => $ARGS{'UpdateCc'},
- BccMessageTo => $ARGS{'UpdateBcc'},
- MIMEObj => $Message,
- TimeTaken => $ARGS{'UpdateTimeWorked'},
- DryRun => 1
-);
-
-
-my @non_recipients = $TicketObj->SquelchMailTo;
-</%init>
-<h2><&|/l&>This message will be sent to...</&></h2>
-<i><&|/l&>(Check boxes to disable notifications to the listed recipients)</&></i><br>
-% foreach my $scrip (@{$Object->Scrips->Prepared}) {
-% next unless $scrip->ActionObj->Action->isa('RT::Action::SendEmail');
-<b><%$scrip->Description%></b><br>
-<&|/l, loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name)&>[_1] [_2] with template [_3]</&>
-<br>
-%foreach my $type qw(To Cc Bcc) {
-%my @addresses = $scrip->ActionObj->Action->$type();
-<ul>
-%foreach my $addr (@addresses) {
-<li> <b><%loc($type)%></b>: <input type="checkbox" name="Ticket-<%$TicketObj->id%>-SquelchMailTo" value="<%$addr->address%>"> <%$addr->address%>
-% }
-</ul>
-% }
-% if ($RT::PreviewScripMessages) {
-<textarea cols=80 rows="5">
-<%$scrip->ActionObj->TemplateObj->MIMEObj->as_string%>
-</textarea>
-% }
-%}
-<br>
-<h2><&|/l&>Messages about this ticket will not be sent to...</&></h2>
-<i><&|/l&>(Check boxes to enable notifications to the listed recipients)</&></i>
-<br>
-<ul>
-% foreach my $recipient (@non_recipients) {
-<li><input type="checkbox" name="Ticket-<%$TicketObj->id%>-UnsquelchMailTo" value="<%$recipient->Content%>">
-<% $recipient->Content %>
-% }
-</ul>
-<& /Elements/Submit, Value => 'UpdatePreview', Label => loc('Save changes')&>
diff --git a/rt/html/Ticket/Elements/ShowAttachments b/rt/html/Ticket/Elements/ShowAttachments
deleted file mode 100644
index 82028dd..0000000
--- a/rt/html/Ticket/Elements/ShowAttachments
+++ /dev/null
@@ -1,101 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if (keys %documents) {
-<& /Elements/TitleBoxStart, title => loc('Attachments'),
- title_class=> 'inverse',
- color => "#336699" &>
-
-% foreach my $key (keys %documents) {
-
-<%$key%><br>
-<ul>
-% foreach my $rev (@{$documents{$key}}) {
-
-<%PERL>
-my $size = $rev->ContentLength;
-
-if ($size) {
- if ($size > 1024) {
- $size = int($size/102.4)/10 . "k";
- }
- else {
- $size = $size ."b";
- }
-
-</%PERL>
-
-<li><font size="-2">
-<A HREF="<%$RT::WebPath%>/Ticket/Attachment/<%$rev->TransactionId%>/<%$rev->Id%>/<%$rev->Filename | u%>">
-<&|/l, $rev->CreatedAsString, $size, $rev->CreatorObj->Name &>[_1] ([_2]) by [_3]</&>
-</a>
-</font></li>
-% }
-% }
-</ul>
-
-% }
-<& /Elements/TitleBoxEnd &>
-<BR>
-% }
-
-<%INIT>
-
-# If we haven't been passed in an Attachments object (through the precaching mechanism)
-# then we need to find one
-$Attachments ||= $m->comp('FindAttachments', Ticket => $Ticket);
-
-my %documents;
-while ( my $attach = $Attachments->Next() ) {
- next unless ($attach->Filename());
- unshift( @{ $documents{ $attach->Filename } }, $attach );
-}
-
-</%INIT>
-<%ARGS>
-$Ticket => undef
-$Attachments => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/Elements/ShowBasics b/rt/html/Ticket/Elements/ShowBasics
deleted file mode 100644
index 00ed3cc..0000000
--- a/rt/html/Ticket/Elements/ShowBasics
+++ /dev/null
@@ -1,83 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
- <tr>
- <td class="label"><&|/l&>Id</&>:</td>
- <td class="value"><%$Ticket->Id %></td>
- </tr>
- <tr>
- <td class="label"><&|/l&>Status</&>:</td>
- <td class="value"><&|/l&><% $Ticket->Status%></&></td>
- </tr>
-% if ($Ticket->TimeEstimated) {
- <tr>
- <td class="label"><&|/l&>Estimated</&>:</td>
- <td class="value"><&|/l, $Ticket->TimeEstimated &>[_1] min</&></td>
- </tr>
-% }
-% if ($Ticket->TimeWorked) {
- <tr>
- <td class="label"><&|/l&>Worked</&>:</td>
- <td class="value"><&|/l, $Ticket->TimeWorked &>[_1] min</&></td>
- </tr>
-% }
- <tr>
- <td class="label"><&|/l&>Left</&>:</td>
- <td class="value"><&|/l, $Ticket->TimeLeft &>[_1] min</&></td>
- </tr>
- <tr>
- <td class="label"><&|/l&>Priority</&>:</td>
- <td class="value"><%$Ticket->Priority%>/<%$Ticket->FinalPriority %></td>
- </tr>
- <tr>
- <td class="label"><&|/l&>Queue</&>:</td>
- <td class="value"><%$Ticket->QueueObj->Name%></td>
- </tr>
-<& /Elements/Callback, _CallbackName => 'EndOfList', TicketObj => $Ticket, %ARGS &>
-</table>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowCustomFields b/rt/html/Ticket/Elements/ShowCustomFields
deleted file mode 100644
index eb49212..0000000
--- a/rt/html/Ticket/Elements/ShowCustomFields
+++ /dev/null
@@ -1,49 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/ShowCustomFields, Object => $Ticket &>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowCustomers b/rt/html/Ticket/Elements/ShowCustomers
deleted file mode 100644
index 612727e..0000000
--- a/rt/html/Ticket/Elements/ShowCustomers
+++ /dev/null
@@ -1,40 +0,0 @@
-%# Copyright (c) 2004 Ivan Kohler <ivan-rt@420.am>
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-<table>
-% my $cust = 0;
-% foreach my $customerURI (
-% grep { $_->Resolver->{'fstable'} eq 'cust_main' }
-% grep { $_->Scheme eq 'freeside' }
-% map { $_->TargetURI }
-% @{ $Ticket->_Links('Base')->ItemsArrayRef }
-% ) {
-% $cust++;
-% my $cust_main = '';
- <tr>
- <td class="value">
- <A HREF="<% $customerURI->Resolver->HREF %>"><% $customerURI->Resolver->AsStringLong |n %></A>
- </td>
- </tr>
-% }
-% unless ( $cust ) {
- <tr>
- <td class="labeltop">
- <i>(none)<i>
- </td>
- </tr>
-
-% }
-</table>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/Elements/ShowDates b/rt/html/Ticket/Elements/ShowDates
deleted file mode 100644
index 2ccbb3f..0000000
--- a/rt/html/Ticket/Elements/ShowDates
+++ /dev/null
@@ -1,84 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TABLE>
- <TR>
- <TD class="label"><&|/l&>Created</&>:</TD>
- <TD class="value"><% $Ticket->CreatedObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Starts</&>:</TD>
- <TD class="value"><% $Ticket->StartsObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Started</&>:</TD>
- <TD class="value"><% $Ticket->StartedObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$Ticket->id%>&Action=SetTold"><&|/l&>Last Contact</&></a>:</TD>
- <TD class="value"><% $Ticket->ToldObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Due</&>:</TD>
- <TD class="value"><% $Ticket->DueObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Closed</&>:</TD>
- <TD class="value"><% $Ticket->ResolvedObj->AsString %></TD>
- </TR>
- <TR>
- <TD class="label"><&|/l&>Updated</&>:</TD>
-% my $UpdatedString = $Ticket->LastUpdated ? (loc("[_1] by [_2]", $Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)) : loc("Never");
-% if ($UpdatedLink) {
- <TD class="value"><A HREF="#lasttrans"><% $UpdatedString | h %></a></TD>
-% } else {
- <TD class="value"><% $UpdatedString | h %></TD>
-% }
- </TR>
-</TABLE>
-<%ARGS>
-$Ticket => undef
-$UpdatedLink => 1
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowDependencies b/rt/html/Ticket/Elements/ShowDependencies
deleted file mode 100644
index f276bc9..0000000
--- a/rt/html/Ticket/Elements/ShowDependencies
+++ /dev/null
@@ -1,63 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<&|/l&>Depends on</&>:<BR>
-% while (my $Link = $Ticket->DependsOn->Next) {
-% my $member = $Link->TargetObj;
-<a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member->Id%>"><%$member->Id%></a>: (<%$member->OwnerObj->Name%>) <%$member->Subject%>
-[<%$member->Status%>]
- <br>
-% }
-<&|/l&>Depended on by</&>:<BR>
-% while (my $Link = $Ticket->DependedOnBy->Next) {
-% my $member = $Link->TargetObj;
-<a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member->Id%>"><%$member->Id%></a>: (<%$member->OwnerObj->Name%>) <%$member->Subject%>
-[<%$member->Status%>]
- <br>
-% }
-
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowGroupMembers b/rt/html/Ticket/Elements/ShowGroupMembers
deleted file mode 100644
index 1fdb79a..0000000
--- a/rt/html/Ticket/Elements/ShowGroupMembers
+++ /dev/null
@@ -1,60 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# Released under the terms of version 2 of the GNU Public License
-
-% my $UserMembers = $Group->UserMembersObj;
-% while (my $member = $UserMembers->Next()) {
-<& ShowUserEntry, User => $member &><br>
-% }
-% my $GroupMembers = $Group->MembersObj;
-% $GroupMembers->LimitToGroups();
-% while (my $member = $GroupMembers->Next()) {
-<&|/l&>Group</&>: <%$member->MemberObj->Object->Name%><br>
-% }
-
-<%ARGS>
-$Group => undef
-</%ARGS> \ No newline at end of file
diff --git a/rt/html/Ticket/Elements/ShowHistory b/rt/html/Ticket/Elements/ShowHistory
deleted file mode 100644
index 75e3477..0000000
--- a/rt/html/Ticket/Elements/ShowHistory
+++ /dev/null
@@ -1,158 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%perl>
- if ($ShowDisplayModes or $ShowTitle) {
-my $title;
-my $titleright;
-if ($ShowTitle) {
- $title = loc('History');
-}
-else {
- $title = '&nbsp;';
-}
-$titleright = loc('Display mode') . ":";
-if ($ShowHeaders) {
- $titleright .= "[<A HREF=\"" . $URIFile . "?id="
- . $Ticket->id . "\">"
- . loc("Brief headers")
- . "</a>] <b>["
- . loc("Full headers") . "]</b>";
-}
-else {
- $titleright .= "<b>["
- . loc("Brief headers")
- . "]</b> [<A HREF=\""
- . $URIFile
- . "?ShowHeaders=1"
- . "&id="
- . $Ticket->id . "\">"
- . loc("Full headers") . "</a>]";
-}
-</%perl>
-<& /Elements/TitleBoxStart, title => $title, titleright => $titleright, bodyclass=> ''&>
-% }
-
-<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=2 BORDER=0>
-<%perl>
-my @attachments = @{$Attachments->ItemsArrayRef()};
-my @attachment_content = @{$AttachmentContent->ItemsArrayRef()};
-
-
-
-
-
-while ( my $Transaction = $Transactions->Next ) {
- my $skip = 0;
- $m->comp( '/Elements/Callback',
- _CallbackName => 'SkipTransaction',
- Transaction => $Transaction,
- skip => \$skip,
- %ARGS );
- next if $skip;
- $i++;
-
- my @trans_attachments = grep { $_->TransactionId == $Transaction->Id } @attachments;
-
- my $trans_content = {};
- grep { ($_->TransactionId == $Transaction->Id ) && ($trans_content->{$_->Id} = $_) } @attachment_content;
-
-
- #Args is first because we're clobbering the "Attachments" parameter
- $m->comp( 'ShowTransaction',
- %ARGS,
-
- AttachPath => $AttachPath,
- UpdatePath => $UpdatePath,
- Ticket => $Ticket,
- Transaction => $Transaction,
- ShowHeaders => $ShowHeaders,
- Collapsed => $Collapsed,
- RowNum => $i,
- ShowTitleBarCommands => $ShowTitleBarCommands,
- Attachments => \@trans_attachments,
- AttachmentContent => $trans_content,
- LastTransaction => $Transactions->IsLast
- );
-
-# manually flush the content buffer after each txn, so the user sees
-# some update
-$m->flush_buffer();
-}
-
-</%perl>
-</TABLE>
-% if ($ShowDisplayModes or $ShowTitle) {
-<& /Elements/TitleBoxEnd &>
-% }
-<%INIT>
-my $Transactions = new RT::Transactions($session{'CurrentUser'});
-if ($Tickets) {
- while (my $t = $Tickets->Next) {
- $Transactions->LimitToTicket($t->id);
- }
-} else {
- $Transactions = $Ticket->Transactions;
-}
-my $i;
-
-$Attachments ||= $m->comp('/Ticket/Elements/FindAttachments', Ticket => $Ticket, Tickets => $Tickets || undef);
-$AttachmentContent ||= $m->comp('/Ticket/Elements/LoadTextAttachments', Ticket => $Ticket);
-
-</%INIT>
-<%ARGS>
-$URIFile => $RT::WebPath."/Ticket/Display.html"
-$Ticket => undef
-$Tickets => undef
-$Attachments => undef
-$AttachmentContent => undef
-$ShowHeaders => undef
-$Collapsed => undef
-$ShowTitle => 1
-$ShowDisplayModes => 1
-$ShowTitleBarCommands => 1
-$AttachPath => $RT::WebPath."/Ticket/Attachment"
-$UpdatePath => $RT::WebPath."/Ticket/Update.html"
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowMemberOf b/rt/html/Ticket/Elements/ShowMemberOf
deleted file mode 100644
index e443132..0000000
--- a/rt/html/Ticket/Elements/ShowMemberOf
+++ /dev/null
@@ -1,57 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<UL>
-% my $memberof = $Ticket->MemberOf;
-% while (my $member_of = $memberof->Next) {
-<LI><a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member_of->Id%>"><%$member_of->Id%></a>: <%$member_of->Subject%> [<%$member_of->Status%>]
-% }
-</UL>
-
-<%INIT>
-</%INIT>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowMembers b/rt/html/Ticket/Elements/ShowMembers
deleted file mode 100644
index f4fec1c..0000000
--- a/rt/html/Ticket/Elements/ShowMembers
+++ /dev/null
@@ -1,67 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if ($members->Count) {
-<UL>
-% while (my $link = $members->Next) {
-% my $member= $link->BaseObj;
-<LI><a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member->Id%>"><%$member->Id%></a>: <%$member->Subject%> [<%loc($member->Status)%>]<br>
-% if ($depth < 8) {
-<&/Ticket/Elements/ShowMembers, Ticket => $member, depth => ($depth+1) &>
-% }
-% }
-</UL>
-% }
-
-<%INIT>
-
-my $members = $Ticket->Members;
-
-</%INIT>
-
-<%ARGS>
-$Ticket => undef
-$depth => 1
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowMessageHeaders b/rt/html/Ticket/Elements/ShowMessageHeaders
deleted file mode 100644
index 8dc76ba..0000000
--- a/rt/html/Ticket/Elements/ShowMessageHeaders
+++ /dev/null
@@ -1,88 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% use Data::Dumper;
-<table>
-% foreach my $header (@headers) {
-% next unless ($display_headers{'_all'} || $display_headers{lc($header->{'Tag'})});
-<tr>
-<td align="right" class="message-header-key"><%$header->{'Tag'}%>:</td>
-<td class="message-header-value"><%$header->{'Value'} | n%></td>
-</tr>
-% }
-</table>
-<%INIT>
-my $content = $Headers;
-$m->comp('/Elements/Callback', content => \$content, %ARGS);
-
-# apply html escaping on the original content
-# we'll display the value without escaping later (for MakeClicky et al.)
-$content = $m->interp->apply_escapes($content, 'h');
-
-my @lines = split (/\n/,$content);
-my $in_header = 0;
-my @headers =();
-foreach (@lines) {
- if (/^(\S+):\s+(.*)$/) {
- push (@headers, { Tag => $1, Value => $2} );
- } elsif ($headers[-1]) {
- $headers[-1]->{'Value'} .= $_;
- } else {
-
- push (@headers, { Tag => $_, Value => ''} );
- }
-}
-
-my %display_headers;
-
-map { $display_headers{lc($_)} = 1 } @$DisplayHeaders;
-
-$m->comp('/Elements/Callback', _CallbackName => 'Headers', content => \$content, headers => \@headers, display_headers => \%display_headers, %ARGS);
-
-</%INIT>
-<%ARGS>
-$Headers => undef
-$DisplayHeaders => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowMessageStanza b/rt/html/Ticket/Elements/ShowMessageStanza
deleted file mode 100644
index eaf551d..0000000
--- a/rt/html/Ticket/Elements/ShowMessageStanza
+++ /dev/null
@@ -1,83 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-% if (ref($Message)) {
-<font color="<%$colors[$Depth]%>">
-<%perl>
-foreach my $stanza (@$Message) {
- if ( ref $stanza eq "ARRAY" ) {
- $m->comp( 'ShowMessageStanza',
- Depth => $Depth + 1,
- Transaction => $Transaction,
- Message => $stanza );
- }
- elsif ( ref $stanza eq "HASH" ) {
- my $content = $stanza->{raw};
- RT::Interface::Web::EscapeUTF8(\$content);
- $m->comp('/Elements/Callback', content => \$content, %ARGS);
- $content =~ s/\n/<br>/gi if defined $content;
-
-</%perl>
-<%$content |n%><br>
-% }
-% } # end foreach
-</font>
-% } else {
-% my $content = $Message;
-% RT::Interface::Web::EscapeUTF8(\$content);
-% $m->comp('/Elements/Callback', content => \$content, %ARGS);
-% $content =~ s/\n/<br>/gi;
-<%$content |n%><br>
-% }
-<%INIT>
-use URI::URL;
-my $server = 'fsck.com';
-my @colors = ('#000000', '#660000', '#006600', '#000066', '#cc0000', '#00cc00', '#0000cc', '#ff0000', '#00ff00', '#0000ff');
-</%INIT>
-<%ARGS>
-$Message => undef
-$Depth => 0
-$Transaction => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowPeople b/rt/html/Ticket/Elements/ShowPeople
deleted file mode 100644
index dbec939..0000000
--- a/rt/html/Ticket/Elements/ShowPeople
+++ /dev/null
@@ -1,66 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<table>
- <tr>
- <td class="label"><&|/l&>Owner</&>:</td>
- <td class="value"><& ShowUserEntry, User => $Ticket->OwnerObj &></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Requestors</&>:</td>
- <td class="value"><& ShowGroupMembers, Group => $Ticket->Requestors &></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Cc</&>:</td>
- <td class="value"><& ShowGroupMembers, Group => $Ticket->Cc &></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>AdminCc</&>:</td>
- <td class="value"><& ShowGroupMembers, Group => $Ticket->AdminCc &></td>
- </tr>
-</table>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowReferences b/rt/html/Ticket/Elements/ShowReferences
deleted file mode 100644
index bb323f6..0000000
--- a/rt/html/Ticket/Elements/ShowReferences
+++ /dev/null
@@ -1,72 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<UL>
-% while (my $Link = $Ticket->RefersTo->Next) {
-<LI>
-% if ($Link->TargetURI->IsLocal) {
-% my $member = $Link->TargetObj;
-
-<a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member->Id%>"><%$member->Id%></a>: (<%$member->OwnerObj->Name%>) <%$member->Subject%> [<%$member->Status%>]<br>
-% } else {
-<A HREF="<%$Link->TargetURI->HREF%>"><%$Link->Target%></A>
-% }
-%}
-
-
-
-% while (my $Link = $Ticket->ReferredToBy->Next) {
-<LI>
-% if ($Link->BaseURI->IsLocal) {
-% my $member = $Link->BaseObj;
-<a href="<%$RT::WebPath%>/Ticket/Display.html?id=<%$member->Id%>"><%$member->Id%></a>: (<%$member->OwnerObj->Name%>) <%$member->Subject%> [<%$member->Status%>]<br>
-% } else {
-<A HREF="<%$Link->BaseURI->HREF%>"><%$Link->Base%></A>
-%}
-% }
-</UL>
-<%ARGS>
-$Ticket => undef
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowRequestor b/rt/html/Ticket/Elements/ShowRequestor
deleted file mode 100644
index 421d38e..0000000
--- a/rt/html/Ticket/Elements/ShowRequestor
+++ /dev/null
@@ -1,88 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%PERL>
-my $rows = 10;
-my $people = $Ticket->Requestors->UserMembersObj;
-while (my $requestor=$people->Next) {
-my $name=$requestor->RealName || $requestor->EmailAddress;
-my $tickets = RT::Tickets->new($session{'CurrentUser'});
-$tickets->LimitWatcher(TYPE => 'Requestor', VALUE => $requestor->EmailAddress );
-$tickets->LimitStatus( VALUE => 'open');
-$tickets->LimitStatus( VALUE => 'new');
-$tickets->RowsPerPage($rows);
-$tickets->OrderBy(FIELD => 'Priority',
- ORDER => 'DESC');
-</%PERL>
-
-% unless ($requestor->Privileged) {
-<& /Elements/TitleBoxStart,
- title => "<a class='inverse' href=\"$RT::WebPath/Admin/Users/Modify.html?id=".$requestor->id."\">".loc("More about [_1]", $name)."</a>" &>
-
-%# Additional information about this user. Empty by default.
-<& /Elements/Callback, _CallbackName => 'AboutThisUser', requestor => $requestor, %ARGS &>
-
-<&|/l&>Comments about this user</&>:<BR>
-<B><% ($requestor->Comments || loc("No comment entered about this user")) %></B><BR>
-
-<&|/l, $rows &>This user's [_1] highest priority tickets</&>:<BR>
-<UL>
-%while (my $w=$tickets->Next) {
-<LI><a href="<%$RT::WebPath%><%$DisplayPath%>?id=<%$w->id%>"><%$w->Id%>: <%$w->Subject%></a> (<%$w->Status%>)
-%}
-</UL>
-
-<&|/l&>Groups this user belongs to</&>:<BR>
-
-<& /Elements/ShowMemberships, UserObj => $requestor &>
-
-<& /Elements/TitleBoxEnd &>
-
-% }
-%}
-<%ARGS>
-$Ticket=>undef
-$DisplayPath => "/Ticket/Display.html"
-</%ARGS>
diff --git a/rt/html/Ticket/Elements/ShowSummary b/rt/html/Ticket/Elements/ShowSummary
deleted file mode 100644
index 5a6e7e0..0000000
--- a/rt/html/Ticket/Elements/ShowSummary
+++ /dev/null
@@ -1,114 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
- <TABLE WIDTH="100%" class="ticketsummary" >
- <TR>
- <TD VALIGN=TOP WIDTH="50%" class="boxcontainer">
- <& /Elements/TitleBoxStart, title => loc('The Basics'),
- title_href =>"$RT::WebPath/Ticket/Modify.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- color => "#993333" &>
- <& /Ticket/Elements/ShowBasics, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
- <br>
-% if ($Ticket->QueueObj->TicketCustomFields->First) {
- <& /Elements/TitleBoxStart, title => loc('Custom Fields'),
- title_href =>"$RT::WebPath/Ticket/Modify.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- color => "#993333" &>
- <& /Ticket/Elements/ShowCustomFields, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
-
-<br>
-% }
- <& /Elements/TitleBoxStart, title => loc('People'),
- title_href =>"$RT::WebPath/Ticket/ModifyPeople.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- color => "#333399" &>
- <& /Ticket/Elements/ShowPeople, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
- <br>
-
- <& /Elements/TitleBoxStart, title => loc('Customers'),
- title_href =>"$RT::WebPath/Ticket/ModifyCustomers.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- color => "#7f007b" &>
- <& /Ticket/Elements/ShowCustomers, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
-
- <BR>
- </TD>
- <TD VALIGN=TOP WIDTH="50%" class="boxcontainer">
-
- <& /Elements/TitleBoxStart, title => loc("Dates"),
- title_href =>"$RT::WebPath/Ticket/ModifyDates.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- color => "#663366" &>
- <& /Ticket/Elements/ShowDates, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
- <BR>
- <& /Elements/TitleBoxStart, title => loc('Links'),
- title_href => "$RT::WebPath/Ticket/ModifyLinks.html?id=".$Ticket->Id,
- title_class=> 'inverse',
- titleright => '', color=> "#336633" &>
- <& /Elements/ShowLinks, Ticket => $Ticket &>
- <& /Elements/TitleBoxEnd &>
- <BR>
- <& /Ticket/Elements/ShowAttachments, Ticket => $Ticket, Attachments => $Attachments &>
-
- <& /Ticket/Elements/ShowRequestor, Ticket => $Ticket &>
-
-
- </TD>
- </TR>
- </TABLE>
-<%ARGS>
-$Ticket => undef
-$Attachments => undef
-</%ARGS>
-
-
-
-
diff --git a/rt/html/Ticket/Elements/ShowTransaction b/rt/html/Ticket/Elements/ShowTransaction
deleted file mode 100644
index 8bf589d..0000000
--- a/rt/html/Ticket/Elements/ShowTransaction
+++ /dev/null
@@ -1,186 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>" >
-<TD rowspan="2" valign="top" bgcolor="<%$bgcolor%>"><A NAME="txn-<%$Transaction->Id%>" href="<% $DisplayPath %>#txn-<%$Transaction->Id%>">#</A><% $LastTransaction ? '<a name="lasttrans">&nbsp;</a>' : '&nbsp;' |n %></TD>
-<TD>&nbsp&nbsp;</TD>
-<TD><font size=-2><% $transdate|n %></font>&nbsp;</TD>
-% my $desc = $Transaction->BriefDescription;
-% $m->comp('/Elements/Callback', _CallbackName => 'ModifyDisplay', text => \$desc, Transaction => $Transaction, %ARGS);
-<TD ALIGN="LEFT"><b><%$Transaction->CreatorObj->Name%> - <%$TicketString%> <%$desc%>
-
-</b></TD>
-<TD><%$TimeTaken%>&nbsp;</TD>
-<TD ALIGN="RIGHT"><font size=-1><%$titlebar_commands|n%></font></TD>
-</TR>
-<TR class="<% $RowNum%2 ? 'oddline' : 'evenline'%>"><TD colspan=5>
-% if ($Transaction->CustomFieldValues->Count) {
-<& /Elements/ShowCustomFields, Object => $Transaction &>
-% }
-% $m->comp('ShowTransactionAttachments', %ARGS, Parent => 0) unless ($Collapsed ||!$ShowBody);
-</TD>
-</TR>
-
-<%ARGS>
-$Ticket => undef
-$Transaction => undef
-$ShowHeaders => 0
-$Collapsed => undef
-$ShowTitleBarCommands => 1
-$RowNum => 1
-$DisplayPath => $RT::WebPath."/Ticket/Display.html?id=".$Ticket->id
-$AttachPath => $RT::WebPath."/Ticket/Attachment"
-$UpdatePath => $RT::WebPath."/Ticket/Update.html"
-$EmailRecordPath => $RT::WebPath."/Ticket/ShowEmailRecord.html"
-$Attachments => undef
-$AttachmentContent => undef
-$ShowBody => 1
-$LastTransaction => 0
-</%ARGS>
-
-<%INIT>
-
-my ( $TimeTaken, $TicketString, $bgcolor );
-
-my $transdate = $Transaction->CreatedAsString();
-$transdate =~ s/\s/&nbsp;/g;
-
-if ( $Transaction->Type =~ /^(Create|Correspond|Comment$)/ ) {
- if ( $Transaction->IsInbound ) {
- $bgcolor = "#336699";
- }
- else {
- $bgcolor = "#339999";
- }
-}
-elsif ( ( $Transaction->Field =~ /^Owner$/ )
- or ( $Transaction->Type =~ /^(AddWatcher|DelWatcher)$/ ) ) {
- $bgcolor = "#333399";
-
-}
-elsif ( $Transaction->Type =~ /^(AddLink|DeleteLink)$/ ) {
- $bgcolor = "#336633";
-}
-elsif ( $Transaction->Type =~ /^(Status|Set|Told)$/ ) {
- if ( $Transaction->Field =~ /^(Told|Starts|Started|Due)$/ ) {
- $bgcolor = "#663366";
- }
- else {
- $bgcolor = "#993333";
- }
-}
-else {
- $bgcolor = "#cccccc";
-}
-
-if ( $Ticket->Id != $Transaction->Ticket ) {
- $TicketString = "Ticket " . $Transaction->Ticket . ": ";
-}
-$TicketString ||= '';
-
-if ( $Transaction->TimeTaken != 0 ) {
- $TimeTaken = $Transaction->TimeTaken . " min";
-} else {
- $TimeTaken = '';
-}
-
-unless ($Attachments) {
- my $attachments = $Transaction->Attachments;
- $attachments->Columns( qw( Id Filename ContentType Headers Subject Parent ContentEncoding ContentType TransactionId) );
- $Attachments = $attachments->ItemsArrayRef();
-}
-my $titlebar_commands = '&nbsp;';
-
-my @DisplayHeaders=qw ( _all);
-
-if ( $Transaction->Type =~ /EmailRecord$/ ) {
- @DisplayHeaders = qw(To Cc Bcc);
-
- $titlebar_commands .=
- "[<a target=\"_blank\" href=\"$EmailRecordPath?id="
- . $Transaction->Ticket
- . "&Transaction="
- . $Transaction->Id
- . "&Attachment="
- . ( $Transaction->Attachments->First
- && $Transaction->Attachments->First->Id )
-
- . '">' . loc('Show') . "</a>]&nbsp;";
- $ShowBody = 0;
-}
-
-
-# If the transaction has anything attached to it at all
-else {
-
- unless ( $ShowHeaders ) {
- @DisplayHeaders = qw(To From RT-Send-Cc Cc Bcc Date Subject);
- }
-
- if ( $Attachments->[0] && $ShowTitleBarCommands ) {
- if ( $Transaction->TicketObj->CurrentUserHasRight('ReplyToTicket')
- or $Transaction->TicketObj->CurrentUserHasRight('ModifyTicket')) {
- $titlebar_commands .=
- "[<a href=\"".$UpdatePath."?id="
- . $Transaction->Ticket
- . "&QuoteTransaction="
- . $Transaction->Id
- . "&Action=Respond\">"
- . loc('Reply')
- . "</a>]&nbsp;";
- }
- if ( $Transaction->TicketObj->CurrentUserHasRight('CommentOnTicket')
- or $Transaction->TicketObj->CurrentUserHasRight('ModifyTicket')) {
- $titlebar_commands .=
- "[<a href=\"".$UpdatePath."?id="
- . $Transaction->Ticket
- . "&QuoteTransaction="
- . $Transaction->Id
- . "&Action=Comment\">"
- . loc('Comment') . "</a>]";
- }
- }
-}
-</%INIT>
diff --git a/rt/html/Ticket/Elements/ShowTransactionAttachments b/rt/html/Ticket/Elements/ShowTransactionAttachments
deleted file mode 100644
index 8dabff4..0000000
--- a/rt/html/Ticket/Elements/ShowTransactionAttachments
+++ /dev/null
@@ -1,201 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%perl>
-# Find all the attachments which have parent $Parent
-# For each of these attachments
-foreach my $message ( grep { $_->Parent == $Parent } @$Attachments ) {
-
- # {{{ show the headers
- my $headers = $message->Headers;
- chomp $headers;
-
- # localize the common headers (like 'Subject:'), too.
- $headers =~ s/^([^:]+)(?=:)/loc($1)/em;
- $m->comp(
- 'ShowMessageHeaders',
- Headers => $headers,
- Transaction => $Transaction,
- DisplayHeaders => \@DisplayHeaders
- );
-
- # }}}
- # {{{ if there's any size at all, show the download link
- my $size = $message->ContentLength;
- if ($size) {
-
-</%perl>
-<div class="downloadattachment">
-<%perl>
-
- # show a download link
- if ( $size > 1024 ) {
- $size = loc( "[_1]k", int( $size / 102.4 ) / 10 );
- }
- else {
- $size = loc( "[_1]b", $size );
- }
-
-</%PERL>
-<A HREF="<%$AttachPath%>/<%$Transaction->Id%>/<%$message->Id%>/<%$message->Filename | u%>"><&|/l&>Download</&> <%$message->Filename || loc('(untitled)') %></a>
-<div class="downloadcontenttype">
-<%$message->ContentType%> <% $size %>
-</div>
-</div>
-% }
-% # }}}
-<div class="messagebody">
-<%perl>
-# {{{ if it has a content-disposition: attachment, don't show inline
-unless ( $message->GetHeader('Content-Disposition') =~ /attachment/i ) {
-
- my $content;
-
- # If it's text
- if ( $message->ContentType =~ m{^(text|message)}i
- && $size <= $RT::MaxInlineBody )
- {
-
- if (
-
- # it's a toplevel object
- !$ParentObj
-
- # or its parent isn't a multipart alternative
- || ( $ParentObj->ContentType !~ m{^multipart/alternative$}i )
-
- # or it's of our prefered alterative type
- || (
- (
- $RT::PreferRichText
- && ( $message->ContentType =~ m{^text/(?:html|enriched)$} )
- )
- || ( !$RT::PreferRichText
- && ( $message->ContentType !~ m{^text/(?:html|enriched)$} )
- )
- )
- )
- {
-
- if ( $AttachmentContent->{ $message->id } ) {
- $content = $AttachmentContent->{ $message->id }->Content;
- }
- else {
- $content = $message->Content;
- }
-
- # if it's a text/html clean the body and show it
- if ( $message->ContentType =~ m{^text/(?:html|enriched)$}i ) {
- $content =
- $m->comp( '/Elements/ScrubHTML', Content => $content );
- $m->out($content);
- }
-
- # if it's a text/plain show the body
- elsif ( $message->ContentType =~ m{^(text|message|text)}i ) {
-
- eval { $content = Text::Quoted::extract($content); };
- if ($@) { 1; }
-
- $m->comp(
- 'ShowMessageStanza',
- Depth => 0,
- Message => $content,
- Transaction => $Transaction
- );
- }
- }
-
- }
-
- # if it's an image, show it as an image
- elsif ( $message->ContentType =~ /^image\//i ) {
- $m->out('<img src="'
- . $AttachPath . '/'
- . $Transaction->Id . '/'
- . $message->Id
- . '/">' );
- }
-}
-
-# }}}
-
-$m->comp(
- 'ShowTransactionAttachments', %ARGS,
- Parent => $message->id,
- ParentObj => $message
-);
-
-}
-</%PERL>
-</div>
-<%ARGS>
-$Ticket => undef
-$Transaction => undef
-$ShowHeaders => 0
-$Collapsed => undef
-$ShowTitleBarCommands => 1
-$RowNum => 1
-$AttachPath => $RT::WebPath."/Ticket/Attachment"
-$UpdatePath => $RT::WebPath."/Ticket/Update.html"
-$EmailRecordPath => $RT::WebPath."/Ticket/ShowEmailRecord.html"
-$Attachments => undef
-$AttachmentContent => undef
-$ShowBody => 1
-$Parent => 0
-$ParentObj => 0
-</%ARGS>
-<%INIT>
-my @DisplayHeaders=qw( _all);
-
-if ( $Transaction->Type =~ /EmailRecord$/ ) {
- @DisplayHeaders = qw(To Cc Bcc);
-}
-
-# If the transaction has anything attached to it at all
-elsif (!$ShowHeaders) {
- @DisplayHeaders = qw(To From RT-Send-Cc Cc Bcc Date Subject);
-}
-</%INIT>
diff --git a/rt/html/Ticket/Elements/ShowUserEntry b/rt/html/Ticket/Elements/ShowUserEntry
deleted file mode 100644
index 163bcbd..0000000
--- a/rt/html/Ticket/Elements/ShowUserEntry
+++ /dev/null
@@ -1,55 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-%# Released under the terms of version 2 of the GNU Public License
-
-<%$User->Name%>
-% if ($User->EmailAddress && $User->EmailAddress ne $User->Name) {
-&lt;<%$User->EmailAddress%>&gt;
-% }
-
-<%ARGS>
-$User => undef
-</%ARGS> \ No newline at end of file
diff --git a/rt/html/Ticket/Elements/Tabs b/rt/html/Ticket/Elements/Tabs
deleted file mode 100644
index 46e1d4a..0000000
--- a/rt/html/Ticket/Elements/Tabs
+++ /dev/null
@@ -1,220 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Callback, Ticket => $Ticket, actions=> $actions, tabs => $tabs, %ARGS &>
-<& /Elements/Tabs,
- tabs => $tabs,
- actions => $actions,
- current_tab => $current_tab,
- current_toptab => $current_toptab,
- Title => $Title &>
-<%INIT>
-
-my $tabs = {};
-my $current_toptab = "Search/Build.html",
-my $searchtabs = {};
-my $actions;
-
-if ( $Ticket) {
-
-my $id = $Ticket->id();
-
-if ( defined $session{'tickets'} ) {
-
- # we have to update session data if we get new ItemMap
- my $updatesession = 1 unless($session{'tickets'}->{'item_map'});
-
- my $item_map = $session{'tickets'}->ItemMap;
-
- if ($updatesession) {
- $session{'i'}++;
- $session{'tickets'}->PrepForSerialization();
- }
-
- # Don't display prev links if we're on the first ticket
- if ($item_map->{$Ticket->Id}->{prev}) {
- $searchtabs->{'_a'} = {
- class => "nav",
- path => "Ticket/Display.html?id=" . $item_map->{first},
- title => '<< ' . loc('First') };
- $searchtabs->{"_b"} = { class => "nav",
- path => "Ticket/Display.html?id=" . $item_map->{$Ticket->Id}->{prev},
- title => '< ' . loc('Prev') };
- }
-
-
- # Don't display next links if we're on the last ticket
- if ($item_map->{$Ticket->Id}->{next}) {
- $searchtabs->{'d'} = { class => "nav",
- path => "Ticket/Display.html?id=" . $item_map->{$Ticket->Id}->{next},
- title => loc('Next') . ' >' };
- $searchtabs->{'e'} = {
- class => "nav",
- path => "Ticket/Display.html?id=" . $item_map->{last},
- title => loc('Last') . ' >>' };
- }
-}
-
-
-
-$tabs->{"this"} = { class => "currentnav",
- path => "Ticket/Display.html?id=" . $Ticket->id,
- title => "#" . $id,
- current_subtab => $current_subtab };
-
-my $ticket_page_tabs = {
- _A => { title => loc('Display'),
- path => "Ticket/Display.html?id=" . $id, },
-
- _Ab => { title => loc('History'),
- path => "Ticket/History.html?id=" . $id, },
- _B => { title => loc('Basics'),
- path => "Ticket/Modify.html?id=" . $id, },
-
- _C => { title => loc('Dates'),
- path => "Ticket/ModifyDates.html?id=" . $id, },
- _D =>
- { title => loc('People'), path => "Ticket/ModifyPeople.html?id=" . $id, },
- _E => { title => loc('Links'),
- path => "Ticket/ModifyLinks.html?id=" . $id, },
- _Eb=> { title => loc('Customers'),
- path => "Ticket/ModifyCustomers.html?id=" . $id, },
- _F => { title => loc('Jumbo'),
- path => "Ticket/ModifyAll.html?id=" . $id,
- separator => 1
- },
-
-};
-
-foreach my $tab ( sort keys %{$ticket_page_tabs} ) {
- if ( $ticket_page_tabs->{$tab}->{'path'} eq $current_tab ) {
- $ticket_page_tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{'this'}->{"current_subtab"} =
- $ticket_page_tabs->{$tab}->{"path"};
- }
-}
-$tabs->{'this'}->{"subtabs"} = $ticket_page_tabs;
-$current_tab = "Ticket/Display.html?id=" . $id;
-
-
-
-
-
-if ( $Ticket->CurrentUserHasRight('ModifyTicket')
- or $Ticket->CurrentUserHasRight('ReplyToTicket') ) {
- $actions->{'A'} = { title => loc('Reply'),
- path => "Ticket/Update.html?Action=Respond&id=" . $id,
- };
-}
-
-if ( $Ticket->CurrentUserHasRight('ModifyTicket') ) {
- if ( $Ticket->Status ne 'resolved' ) {
- $actions->{'B'} = {
-
- path => "Ticket/Update.html?Action=Comment&DefaultStatus=resolved&id=" . $id,
- title => loc('Resolve') };
- }
- if ( $Ticket->Status ne 'open' ) {
- $actions->{'C'} = { path => "Ticket/Display.html?Status=open&id=" . $id,
- title => loc('Open it') };
- }
-}
-
-if ( $Ticket->CurrentUserHasRight('OwnTicket') ) {
- if ( $Ticket->OwnerObj->id == $RT::Nobody->id ) {
- $actions->{'D'} = { path => "Ticket/Display.html?Action=Take&id=" . $id,
- title => loc('Take') };
- }
- elsif ( $Ticket->OwnerObj->id != $session{CurrentUser}->id ) {
- $actions->{'E'} = {path => "Ticket/Display.html?Action=Steal&id=" . $id,
- title => loc('Steal') };
- }
-}
-
-if ( $Ticket->CurrentUserHasRight('ModifyTicket')
- or $Ticket->CurrentUserHasRight('CommentOnTicket') ) {
- $actions->{'F'} = { title => loc('Comment'),
- path => "Ticket/Update.html?Action=Comment&id=" . $id,
- };
-}
-}
-
-my $args = "?" . $m->comp(
- '/Elements/QueryString',
- Query => $ARGS{'Query'} || $session{'CurrentSearchHash'}->{'Query'},
- Format => $ARGS{'Format'} || $session{'CurrentSearchHash'}->{'Format'},
- OrderBy => $ARGS{'OrderBy'} || $session{'CurrentSearchHash'}->{'OrderBy'},
- Order => $ARGS{'Order'} || $session{'CurrentSearchHash'}->{'Order'},
- Rows => $ARGS{'Rows'},
- ) if ($ARGS{'Query'} or $session{'CurrentSearchHash'}->{'Query'});
-$args ||= '';
-
-$tabs->{"f"} = { path => "Search/Build.html?NewQuery=1",
- title => loc('New Query')};
-$tabs->{"g"} = { path => "Search/Build.html$args",
- title => loc('Query Builder')};
-$tabs->{"h"} = { path => "Search/Edit.html$args",
- title => loc('Advanced'),
- separator => 1 };
-if (defined $session{'tickets'} and $session{'tickets'}->Count) {
- $tabs->{"i"} = { path => "Search/Results.html$args",
- title => loc('Show Results'),
- separator => 1,
- subtabs => $searchtabs };
- if ($current_tab =~ "Search/Results.html") {
- $current_tab = "Search/Results.html$args";
- }
-}
-
-</%INIT>
-
-
-<%ARGS>
-$Ticket => undef
-$subtabs => undef
-$current_tab => ''
-$current_subtab => ''
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Ticket/History.html b/rt/html/Ticket/History.html
deleted file mode 100644
index a80cd00..0000000
--- a/rt/html/Ticket/History.html
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Ticket History # [_1] [_2]", $Ticket->Id, $Ticket->Subject) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $Ticket, current_tab => 'Ticket/History.html?id='.$Ticket->id,
- Title => loc("Ticket History # [_1] [_2]", $Ticket->Id, $Ticket->Subject) &>
-
-<BR>
-
-<& /Ticket/Elements/ShowHistory ,
- Ticket => $Ticket,
- ShowHeaders => $ARGS{'ShowHeaders'},
- URIFile => 'History.html',
- Attachments => $attachments,
- AttachmentContent => $attachment_content
- &>
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
-
-<%INIT>
-
-
-
-my $Ticket = LoadTicket ($id);
-
-unless ($Ticket->CurrentUserHasRight('ShowTicket')) {
- Abort("No permission to view ticket");
-}
-
-my $attachments = $m->comp('Elements/FindAttachments', Ticket => $Ticket);
-my $attachment_content = $m->comp('Elements/LoadTextAttachments', Ticket =>
-$Ticket);
-
-
-</%INIT>
-
-
-
-
diff --git a/rt/html/Ticket/Modify.html b/rt/html/Ticket/Modify.html
deleted file mode 100644
index a6c3161..0000000
--- a/rt/html/Ticket/Modify.html
+++ /dev/null
@@ -1,85 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc('Modify ticket #[_1]', $TicketObj->Id) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $TicketObj, current_subtab => "Ticket/Modify.html?id=".$TicketObj->Id,
- Title => loc('Modify ticket #[_1]', $TicketObj->Id) &>
-
-<& /Elements/ListActions, actions => \@results &>
-<FORM METHOD=POST ACTION="Modify.html" ENCTYPE="multipart/form-data">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$TicketObj->Id%>">
-
-<& /Elements/TitleBoxStart, title => loc('Modify ticket #[_1]',$TicketObj->Id), color=> "#993333", width => "100%" &>
-<& Elements/EditBasics, TicketObj => $TicketObj &>
-<& Elements/EditCustomFields, TicketObj => $TicketObj &>
-<& /Elements/TitleBoxEnd &>
-
-<& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), color => "#993333" &>
-</form>
-<%INIT>
-
-my $TicketObj = LoadTicket($id);
-my $CustomFields = $TicketObj->QueueObj->TicketCustomFields();
-
-# Now let callbacks have a chance at editing %ARGS
-$m->comp('/Elements/Callback', TicketObj => $TicketObj, CustomFields => $CustomFields, %ARGS);
-
-my @results = ProcessTicketBasics(TicketObj => $TicketObj, ARGSRef => \%ARGS);
-my @cf_results = ProcessObjectCustomFieldUpdates(Object => $TicketObj, ARGSRef => \%ARGS);
-push (@results, @cf_results);
-
-# TODO: display the results, even if we can't display the ticket
-
-unless ($TicketObj->CurrentUserHasRight('ShowTicket')) {
- Abort("No permission to view ticket");
-}
-
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Ticket/ModifyAll.html b/rt/html/Ticket/ModifyAll.html
deleted file mode 100644
index 23cd935..0000000
--- a/rt/html/Ticket/ModifyAll.html
+++ /dev/null
@@ -1,204 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Ticket #[_1] Jumbo update: [_2]", $Ticket->Id, $Ticket->Subject) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $Ticket,
- current_tab => "Ticket/ModifyAll.html?id=".$Ticket->Id,
- Title => loc("Ticket #[_1] Jumbo update: [_2]", $Ticket->Id, $Ticket->Subject) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM METHOD=POST ACTION="ModifyAll.html" ENCTYPE="multipart/form-data">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Ticket->Id%>">
-
-
-<& /Elements/TitleBoxStart, title => loc('Modify ticket # [_1]', $Ticket->Id), color=> "#993333", width => "100%" &>
-<& Elements/EditBasics, TicketObj => $Ticket &>
-<& Elements/EditCustomFields, TicketObj => $Ticket &>
-<& /Elements/TitleBoxEnd &>
-
-<BR>
-
-<& /Elements/TitleBoxStart, title => loc('Dates'), width => "100%", color => "#663366" &>
-<& Elements/EditDates, TicketObj => $Ticket &>
-<& /Elements/TitleBoxEnd &>
-
-<BR>
-
-
-<& /Elements/TitleBoxStart, title => loc('People'),width => "100%", color=> "#333399" &>
-<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp &>
-<& /Elements/TitleBoxEnd &>
-
-<BR>
-
-<& /Elements/TitleBoxStart, title => loc('Links'), color => "#336633"&>
-<& /Elements/EditLinks, Object => $Ticket, Merge => 1 &>
-<& /Elements/TitleBoxEnd &>
-
-<BR>
-
-<& /Elements/TitleBoxStart, title => loc('Update ticket') &>
-<table>
- <tr>
- <td class="label"><&|/l&>Update Type</&>:</td>
- <td class="entry">
- <select name="UpdateType">
-% if ($CanComment) {
- <option value="private" ><&|/l&>Comments (Not sent to requestors)</&></option>
-% }
-% if ($CanRespond) {
- <option value="response"><&|/l&>Reply to requestors</&></option>
-% }
- </select>
- </td>
- </tr>
- <tr>
- <td class="label"><&|/l&>Subject</&>:</td>
- <td class="entry"><input name="UpdateSubject" size=60 value="<%$Ticket->Subject%>"></td>
- </tr>
-% if (my $TxnCFs = $Ticket->TransactionCustomFields) {
-% while (my $CF = $TxnCFs->Next()) {
-<TR>
-<TD class="label"><% $CF->Name %>:</TD>
-<TD class="entry"><& /Elements/EditCustomField,
- CustomField => $CF,
- NamePrefix => "Object-RT::Transaction--CustomField-"
- &><em><% $CF->FriendlyType %></em></TD>
-</TD></TR>
-% } # end if while
-% } # end of if
- <tr>
- <td class="label"><&|/l&>Attach</&>:</td>
- <td class="entry"><input name="UpdateAttachment" type=file></td>
- </tr>
- <tr>
- <td class="labeltop"><&|/l&>Content</&>:</td>
- <td class="entry"><& /Elements/MessageBox, Name=>"UpdateContent", QuoteTransaction=>$ARGS{QuoteTransaction} &></td>
- </tr>
-</table>
-<& /Elements/TitleBoxEnd &>
-
-
-<& /Elements/Submit,
- Label => loc('Save Changes'),
- Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &>
-</form>
-
-<%INIT>
-
-
-
-my $Ticket = LoadTicket($id);
-
-my $CanRespond = 0;
-my $CanComment = 0;
-
-
-$CanRespond = 1 if ( $Ticket->CurrentUserHasRight('ReplyToTicket') or
- $Ticket->CurrentUserHasRight('ModifyTicket') );
-
-$CanComment = 1 if ( $Ticket->CurrentUserHasRight('CommentOnTicket') or
- $Ticket->CurrentUserHasRight('ModifyTicket') );
-
-
-my (@wresults, @results, @dresults, @lresults, @cf_results);
-
-unless ($OnlySearchForPeople) {
- @wresults = ProcessTicketWatchers( TicketObj => $Ticket, ARGSRef => \%ARGS);
- @cf_results = ProcessObjectCustomFieldUpdates( Object => $Ticket, ARGSRef => \%ARGS);
- @dresults = ProcessTicketDates( TicketObj => $Ticket, ARGSRef => \%ARGS);
- @lresults = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS);
-
- if ($ARGS{'UpdateAttachment'}) {
- my $subject = "$ARGS{'UpdateAttachment'}";
- # since CGI.pm deutf8izes the magic field, we need to add it back.
- Encode::_utf8_on($subject);
- # strip leading directories
- $subject =~ s#^.*[\\/]##;
-
- my $attachment = MakeMIMEEntity(
- Subject => $subject,
- Body => "",
- AttachmentFieldName => 'UpdateAttachment'
- );
- delete $ARGS{'UpdateAttachment'};
- $ARGS{'UpdateAttachments'}->{ $subject } = $attachment;
- }
-
- $ARGS{'UpdateContent'} =~ s/\r+\n/\n/g;
-
- if ($ARGS{'UpdateAttachments'} || ( $ARGS{'UpdateContent'} && $ARGS{'UpdateContent'} ne "-- \n" .
- $session{'CurrentUser'}->UserObj->Signature)) {
- ProcessUpdateMessage(TicketObj => $Ticket, ARGSRef=>\%ARGS, Actions=>\@results);
- }
- @results = ProcessTicketBasics( TicketObj => $Ticket, ARGSRef => \%ARGS);
-}
-push @results, @wresults;
-push @results, @dresults;
-push @results, @lresults;
-push @results, @cf_results;
-
-# If they've gone and moved the ticket to somewhere they can't see, etc...
-# TODO: display the results, even if we can't display the ticket.
-
-unless ($Ticket->CurrentUserHasRight('ShowTicket')) {
- Abort("No permission to view ticket");
-}
-
-
-</%INIT>
-
-
-
-<%ARGS>
-$OnlySearchForPeople => undef
-$UserField => undef
-$UserOp => undef
-$UserString => undef
-$id => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/ModifyCustomers.html b/rt/html/Ticket/ModifyCustomers.html
deleted file mode 100644
index 72d103b..0000000
--- a/rt/html/Ticket/ModifyCustomers.html
+++ /dev/null
@@ -1,49 +0,0 @@
-%# Copyright (c) 2004 Ivan Kohler <ivan-rt@420.am>
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-<& /Elements/Header, Title => loc("Customers for ticket #[_1]", $Ticket->Id) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $Ticket,
- current_tab => "Ticket/ModifyCustomers.html?id=".$Ticket->Id,
- Title => loc("Customers for ticket #[_1]", $Ticket->Id) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<form action="ModifyCustomers.html" method="post">
-<input type="hidden" name="id" value="<%$Ticket->id%>">
-
-<& /Elements/TitleBoxStart, title => loc('Edit Customer Links'), color => "#7f007b"&>
-<& Elements/EditCustomers, Ticket => $Ticket, CustomerString => $CustomerString, ServiceString => $ServiceString &>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, color => "#7f007b", Label => loc('Save Changes') &>
-</form>
-
-
-<%INIT>
-
-my @results = ();
-my $Ticket = LoadTicket($id);
-
-# if we're trying to search for customers/services and nothing else
-unless ( $OnlySearchForCustomers || $OnlySearchForServices) {
- @results = ProcessTicketCustomers( TicketObj => $Ticket, ARGSRef => \%ARGS);
-}
-
-</%INIT>
-
-
-<%ARGS>
-$OnlySearchForCustomers => undef
-$OnlySearchForServices => undef
-$CustomerString => undef
-$ServiceString => undef
-$id => undef
-</%ARGS>
diff --git a/rt/html/Ticket/ModifyDates.html b/rt/html/Ticket/ModifyDates.html
deleted file mode 100644
index a4f68f2..0000000
--- a/rt/html/Ticket/ModifyDates.html
+++ /dev/null
@@ -1,74 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc('Modify dates for #[_1]', $TicketObj->Id) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $TicketObj,
- current_tab => "Ticket/ModifyDates.html?id=".$TicketObj->Id,
- Title => loc('Modify dates for #[_1]', $TicketObj->Id) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM METHOD=POST ACTION="ModifyDates.html">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$TicketObj->Id%>">
-<& /Elements/TitleBoxStart, title => loc('Modify dates for ticket # [_1]', $TicketObj->Id), width => "100%", color => "#663366" &>
-
-<& Elements/EditDates, TicketObj => $TicketObj &>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, Label => loc('Save Changes'), color => "#663366" &>
-</form>
-
-
-<%INIT>
-
-my $TicketObj = LoadTicket($id);
-my @results = ProcessTicketDates( TicketObj => $TicketObj, ARGSRef => \%ARGS);
-
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Ticket/ModifyLinks.html b/rt/html/Ticket/ModifyLinks.html
deleted file mode 100644
index 150597d..0000000
--- a/rt/html/Ticket/ModifyLinks.html
+++ /dev/null
@@ -1,76 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Link ticket #[_1]", $Ticket->Id) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $Ticket,
- current_tab => "Ticket/ModifyLinks.html?id=".$Ticket->Id,
- Title => loc("Link ticket #[_1]", $Ticket->Id) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<form action="ModifyLinks.html" method="post">
-<input type="hidden" name="id" value="<%$Ticket->id%>">
-
-<& /Elements/TitleBoxStart, title => loc('Edit Links'), color => "#336633"&>
-<& /Elements/EditLinks, Object => $Ticket, Merge => 1 &>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, color => "#336633", Label => loc('Save Changes') &>
-</form>
-
-
-
-
-<%INIT>
-
-my $Ticket = LoadTicket($id);
-my @results = ProcessTicketLinks( TicketObj => $Ticket, ARGSRef => \%ARGS);
-
-</%INIT>
-
-
-<%ARGS>
-$id => undef
-</%ARGS>
diff --git a/rt/html/Ticket/ModifyPeople.html b/rt/html/Ticket/ModifyPeople.html
deleted file mode 100644
index 61cbe6c..0000000
--- a/rt/html/Ticket/ModifyPeople.html
+++ /dev/null
@@ -1,90 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc('Modify people related to ticket #[_1]', $Ticket->id) &>
-<& /Ticket/Elements/Tabs,
- Ticket => $Ticket,
- current_tab => "Ticket/ModifyPeople.html?id=".$Ticket->Id,
- Title => loc('Modify people related to ticket #[_1]', $Ticket->id) &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM METHOD=POST ACTION="ModifyPeople.html">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Ticket->Id%>">
-<& /Elements/TitleBoxStart, title => loc('Modify people related to ticket #[_1]', $Ticket->Id), width => "100%", color=> "#333399" &>
-<& Elements/EditPeople, Ticket => $Ticket, UserField => $UserField, UserString => $UserString, UserOp => $UserOp, GroupString => $GroupString, GroupOp => $GroupOp, GroupField => $GroupField &>
-<& /Elements/TitleBoxEnd &>
-<& /Elements/Submit, Label => loc('Save Changes'), Caption => loc("If you've updated anything above, be sure to"), color => "#333399" &>
-</form>
-
-<%INIT>
-
-my (@results, @wresults);
-
-my $Ticket = LoadTicket($id);
-
-# if we're trying to search for watchers and nothing else
-unless ($OnlySearchForPeople or $OnlySearchForGroup) {
- @results = ProcessTicketBasics( TicketObj => $Ticket, ARGSRef => \%ARGS);
- @wresults = ProcessTicketWatchers( TicketObj => $Ticket, ARGSRef => \%ARGS);
-}
-
-push @results, @wresults;
-</%INIT>
-
-
-
-<%ARGS>
-$OnlySearchForPeople => undef
-$OnlySearchForGroup => undef
-$UserField => undef
-$UserOp => undef
-$UserString => undef
-$GroupField => undef
-$GroupOp => undef
-$GroupString => undef
-$id => undef
-</%ARGS>
-
diff --git a/rt/html/Ticket/ShowEmailRecord.html b/rt/html/Ticket/ShowEmailRecord.html
deleted file mode 100644
index 38eddd3..0000000
--- a/rt/html/Ticket/ShowEmailRecord.html
+++ /dev/null
@@ -1,71 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%args>
-$Attachment => undef
-$Transaction => undef
-</%ARGS>
-<%init>
- my $AttachmentObj = new RT::Attachment($session{'CurrentUser'});
- $AttachmentObj->Load($Attachment) || Abort(loc("Attachment '[_1]' could not be loaded", $Attachment));
-
-
- unless ($AttachmentObj->id) {
- Abort(loc("Attachment '[_1]' could not be loaded", $Attachment));
- }
- unless ($AttachmentObj->TransactionId() == $Transaction ) {
- Abort(loc("Attachment '[_1]' could not be loaded", $Attachment));
- }
-
-</%init>
-<& /Elements/Header, ShowBar => 0 &>
-<pre>
-<%$AttachmentObj->Headers%>
-
-<%$AttachmentObj->Content%>
-</pre>
-</body>
-</html>
-%$m->abort;
diff --git a/rt/html/Ticket/Update.html b/rt/html/Ticket/Update.html
deleted file mode 100644
index df739c9..0000000
--- a/rt/html/Ticket/Update.html
+++ /dev/null
@@ -1,224 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title &>
-<& /Ticket/Elements/Tabs,
- Ticket => $TicketObj,
- Title=> $title &>
-
-<FORM ACTION="Update.html" NAME="TicketUpdate"
- METHOD=POST enctype="multipart/form-data">
-<input type="hidden" name="QuoteTransaction" value="<% $ARGS{QuoteTransaction} %>">
-<input type="hidden" name="DefaultStatus" value="<% $DefaultStatus %>">
-<input type="hidden" name="Action" value="<% $ARGS{Action} %>">
-
-<TABLE BORDER=0>
-
-<tr><td align=right><&|/l&>Status</&>:</td>
-<td>
-<& /Elements/SelectStatus, Name=>"Status", DefaultLabel => loc("[_1] (Unchanged)", loc($TicketObj->Status)), Default => $ARGS{'Status'} || ($TicketObj->Status eq $DefaultStatus ? undef : $DefaultStatus)&>
-<&|/l&>Owner</&>:
-<& /Elements/SelectOwner, Name=>"Owner", DefaultLabel => loc("[_1] (Unchanged)", $TicketObj->OwnerObj->Name()), QueueObj => $TicketObj->QueueObj, TicketObj => $TicketObj, Default => $ARGS{'Owner'} &>
-<&|/l&>Worked</&>: <input size=4 name="UpdateTimeWorked" value="<% $ARGS{UpdateTimeWorked}%>"> <&|/l&>minutes</&></td></tr>
-% my $skip;
-<& /Elements/Callback, _CallbackName => 'BeforeUpdateType', skip => \$skip, %ARGS &>
-% if (!$skip) {
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$TicketObj->Id%>"><br>
-% }
-<tr><td align=right><&|/l&>Update Type</&>:</td>
-<td><select name="UpdateType">
-% if ($CanComment) {
- <option value="private" <%$ARGS{'UpdateType'} eq "private" ? "SELECTED" : !$ARGS{'UpdateType'}&&$CommentDefault%>><&|/l&>Comments (Not sent to requestors)</&></option>
-% }
-% if ($CanRespond) {
- <option value="response" <%$ARGS{'UpdateType'} eq "response" ? "SELECTED" : !$ARGS{'UpdateType'}&&$ResponseDefault%>><&|/l&>Reply to requestors</&></option>
-% }
-</select>
-</td></tr>
-<tr><td align=right><&|/l&>Subject</&>:</td><td> <input name="UpdateSubject" size=60 value="<% $ARGS{UpdateSubject} || $TicketObj->Subject()%>"></td></tr>
-<tr><td align=right><&|/l&>Cc</&>:</td><td> <input name="UpdateCc" size=60
-value="<% $ARGS{UpdateCc} %>"><BR>
-<i><font size=-2>
-<&|/l&>(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)</&></font></i>
-</td></tr>
-<tr><td align=right><&|/l&>Bcc</&>:</td><td> <input name="UpdateBcc" size=60 VALUE="<%$ARGS{UpdateBcc}%>"><BR>
-<i><font size=-2>
-<&|/l&>(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)</&></font></i>
-</td></tr>
-% if (exists $session{'Attachments'}) {
-<TD>
-<&|/l&>Attached file</&>:
-</TD>
-<TD COLSPAN=5>
-<&|/l&>Check box to delete</&><BR>
-% foreach my $attach_name (keys %{$session{'Attachments'}}) {
-<input type="checkbox" name="DeleteAttach-<%$attach_name%>" value="1"><%$attach_name%><BR>
-% } # end of foreach
-</TD>
-</TR>
-<TR>
-% } # end of if
-
-% if (my $TxnCFs = $TicketObj->TransactionCustomFields) {
-% while (my $CF = $TxnCFs->Next()) {
-<TR>
-<TD ALIGN=RIGHT><% $CF->Name %>:</TD>
-<TD><& /Elements/EditCustomField, CustomField => $CF, NamePrefix =>
- "Object-RT::Transaction--CustomField-" &><em><% $CF->FriendlyType %></em></TD>
-</TR>
-% } # end if while
-% } # end of if
-
-<tr><td align=right><&|/l&>Attach</&>:</td><td><input name="Attach" type="file"><INPUT TYPE=SUBMIT NAME="AddMoreAttach" VALUE="<&|/l&>Add More Files</&>"><input type="hidden" name="UpdateAttach" value="1">
-</td></tr>
-<tr><td align="right" valign="top"><&|/l&>Message</&>:</td><td>
-<& /Elements/Callback, _CallbackName => 'BeforeMessageBox', %ARGS &>
-% if (exists $ARGS{UpdateContent}) {
-% # preserve QuoteTransaction so we can use it to set up sane references/in/reply to
-% my $temp = $ARGS{'QuoteTransaction'};
-% delete $ARGS{'QuoteTransaction'};
-<& /Elements/MessageBox, Name=>"UpdateContent", Default=>$ARGS{UpdateContent}, IncludeSignature => 0, %ARGS&>
-% $ARGS{'QuoteTransaction'} = $temp;
-% } else {
-<& /Elements/MessageBox, Name=>"UpdateContent", %ARGS &>
-% }
-</td></tr>
-</table>
-
-
-
-
-<& /Elements/Submit, Label => loc('Update Ticket'), Name => 'SubmitTicket' &>
-% if ($TicketObj->CurrentUserHasRight('ShowOutgoingEmail')) {
-<& /Ticket/Elements/PreviewScrips, TicketObj => $TicketObj, %ARGS &>
-% }
-</FORM>
-<%INIT>
-my $CanRespond = 0;
-my $CanComment = 0;
-my $title;
-
-my $TicketObj = LoadTicket($id);
-
-unless($DefaultStatus){
- $DefaultStatus=($ARGS{'Status'} ||$TicketObj->Status());
-}
-
-if ($DefaultStatus =~ '^new$'){
- $DefaultStatus='open';
-}
-
-if ($DefaultStatus eq 'resolved') {
- $title = loc("Resolve ticket #[_1] ([_2])", $TicketObj->id, $TicketObj->Subject);
-} else {
- $title = loc("Update ticket #[_1] ([_2])", $TicketObj->id, $TicketObj->Subject);
-}
-
-# Things needed in the template - we'll do the processing here, just
-# for the convenience:
-
-my ($CommentDefault, $ResponseDefault);
-if ($Action ne 'Respond') {
- $CommentDefault = "SELECTED";
-} else {
- $ResponseDefault = "SELECTED";
-}
-
-
-$CanRespond = 1 if ( $TicketObj->CurrentUserHasRight('ReplyToTicket') or
- $TicketObj->CurrentUserHasRight('ModifyTicket') );
-
-$CanComment = 1 if ( $TicketObj->CurrentUserHasRight('CommentOnTicket') or
- $TicketObj->CurrentUserHasRight('ModifyTicket') );
-
-
-# {{{ deal with deleting uploaded attachments
-foreach my $key (keys %ARGS) {
- if ($key =~ m/^DeleteAttach-(.+)$/) {
- delete $session{'Attachments'}{$1};
- }
- $session{'Attachments'} = { %{$session{'Attachments'} || {}} };
-}
-# }}}
-
-# {{{ store the uploaded attachment in session
-if ($ARGS{'Attach'}) { # attachment?
- $session{'Attachments'} = {} unless defined $session{'Attachments'};
-
- my $subject = "$ARGS{'Attach'}";
- # since CGI.pm deutf8izes the magic field, we need to add it back.
- Encode::_utf8_on($subject);
- # strip leading directories
- $subject =~ s#^.*[\\/]##;
-
- my $attachment = MakeMIMEEntity(
- Filename => $subject,
- Body => "",
- AttachmentFieldName => 'Attach'
- );
-
- $session{'Attachments'} = { %{$session{'Attachments'} || {}},
- $ARGS{'Attach'} => $attachment };
-}
-# }}}
-
-# delete temporary storage entry to make WebUI clean
-unless (keys %{$session{'Attachments'}} and $ARGS{'UpdateAttach'}) {
- delete $session{'Attachments'};
-}
-# }}}
-
-if ( exists $ARGS{SubmitTicket} ) {
- $m->comp('Display.html', TicketObj => $TicketObj, %ARGS);
- return;
-}
-
-</%INIT>
-
-<%ARGS>
-$id => undef
-$Action => undef
-$DefaultStatus => undef
-</%ARGS>
diff --git a/rt/html/Tools/Elements/Tabs b/rt/html/Tools/Elements/Tabs
deleted file mode 100644
index fc4153b..0000000
--- a/rt/html/Tools/Elements/Tabs
+++ /dev/null
@@ -1,72 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Tabs,
- tabs => $tabs,
- current_toptab => 'Tools/Offline.html',
- current_tab => $current_tab,
- Title => $Title &>
-
-<%INIT>
- my $tabs = { a => { title => loc('Offline'),
- path => 'Tools/Offline.html',
- },
- };
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-</%INIT>
-
-
-<%ARGS>
-$subtabs => undef
-$current_tab => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/Tools/MyDay.html b/rt/html/Tools/MyDay.html
deleted file mode 100644
index a20209c..0000000
--- a/rt/html/Tools/MyDay.html
+++ /dev/null
@@ -1,91 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, title => "What I did today" &>
-(displaying new and open tickets for <%$session{'CurrentUser'}->Name%>)
-<FORM METHOD=POST ACTION="MyDay.html">
-<TABLE width=100% cellpadding=0 cellspacing=0>
-% while ( my $Ticket = $Tickets->Next()) {
-% my $class;
-% $i++;
-% if ($i % 2 ) {
-% $class = 'class="oddline"';
-% }
-<TR <%$class|n%>><TD COLSPAN=2><h2><A
-HREF="<%$RT::WebPath%>/Ticket/Display.html?id=<%$Ticket->Id%>"><%$Ticket->Id%>:
-<%$Ticket->Subject%></A></h2></td></tr>
-<TR <%$class|n%>><TD><SPAN CLASS=label>Worked:</SPAN><input size=3 name="UpdateTimeWorked-<%$Ticket->Id%>"> minutes
-</TD>
-<TD ROWSPAN=2><SPAN CLASS=label>Comments:<br></SPAN><textarea name="UpdateContent-<%$Ticket->Id%>" rows=5
-cols=60></textarea></TD></TR>
-<TR <%$class|n%>>
-<TD><SPAN CLASS="label">Status:</SPAN> <& /Elements/SelectStatus, Name=> 'UpdateStatus-'.$Ticket->Id,
- DefaultLabel => loc("[_1] (Unchanged)",loc($Ticket->Status())) &></TD>
- </TR>
-
-% }
-</TABLE>
-<& /Elements/Submit, Label => "Record all updates" , Reset => 'Clear'&>
-</FORM>
-</HTML>
-
-<%INIT>
-
-my $i = 0;
-
-my $Tickets = RT::Tickets->new($session{'CurrentUser'});
-$Tickets->LimitOwner(VALUE => $session{'CurrentUser'}->Id);
-$Tickets->LimitStatus( VALUE => 'open' );
-$Tickets->LimitStatus ( VALUE => 'new');
-$Tickets->OrderBy ( FIELD => 'Priority', ORDER => 'DESC');
-
-while (my $Ticket = $Tickets->Next()) {
- #Process updates
-
-
-}
-
-</%INIT>
-
diff --git a/rt/html/Tools/Offline.html b/rt/html/Tools/Offline.html
deleted file mode 100644
index 8b12784..0000000
--- a/rt/html/Tools/Offline.html
+++ /dev/null
@@ -1,166 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Offline upload") &>
-<& Elements/Tabs,
- current_tab => "Tools/Offline.html",
- Title => loc("Offline edits") &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<& /Elements/Callback, Requestor => \$requestoraddress,
- Queue => \$qname, %ARGS &>
-
-<FORM ACTION="Offline.html" NAME="TicketUpdate"
- METHOD=POST enctype="multipart/form-data">
-<table>
-<tr>
-<td class=label>
-<&|/l&>Default Queue</&>:
-</td>
-<td>
-<& /Elements/SelectQueue, Name => "qname", NamedValues => 1 &>
-<i><&|/l&>If no queue is specified, create tickets in this queue.</&></i>
-</td>
-</tr>
-<tr>
-<td class=label>
-<&|/l&>Default Requestor</&>:
-</td>
-<td>
-<input name=requestoraddress value=<%$requestoraddress%>>
-<i><&|/l&>If no Requestor is specified, create tickets with this requestor.</&></i>
-</td>
-</tr>
-<tr><td class=labeltop>
-<&|/l&>Template</&>:
-</td>
-<td colspan=2>
-<textarea name=string cols=80 rows=30>
-<%$string%>
-</textarea>
-</td>
-</tr>
-<tr><td class=label>
-<&|/l&>Get template from file</&>:
-</td>
-<td>
-<input name="Template" type="file" value="foo">
-<INPUT TYPE=SUBMIT NAME="Parse" VALUE="<&|/l&>Go</&>">
-</td>
-</tr>
-</table>
-<& /Elements/Submit, Name => 'UpdateTickets', Label => loc('Upload'), Caption => loc("Upload your changes"), color => "#993333" &>
-
-</FORM>
-<%args>
-$requestoraddress => undef
-$qname => undef
-$string => undef
-</%args>
-<%INIT>
-
-my @results;
-use RT::Action::CreateTickets;
-my $action = RT::Action::CreateTickets->new(CurrentUser => $session{'CurrentUser'});
-;
-if ($ARGS{'Parse'} && $ARGS{'Template'}) {
- $string = "";
- my $cgi_object = $m->cgi_object;
- my $fh = $cgi_object->upload('Template');
- my $filename = "$fh";
-
- my ($buffer, $template);
- while ( my $bytesread = read( $fh, $buffer, 4096 ) ) {
- $template .= $buffer;
- }
- $template =~ s/\r\n/\n/gs;
- $action->Parse(Content => $template, Queue => $qname, Requestor => $requestoraddress);
- foreach ( @{ $action->{'create_tickets'} } ) {
- my $id = $_;
- $id =~ s/^create\-//;
- $string .= "===Create-Ticket: $id\n";
- $string .= $action->{'templates'}->{$_} . "\n";
- }
- foreach ( @{ $action->{'update_tickets'} } ) {
- my $id = $_;
- $id =~ s/^update\-//;
- $string .= "===Update-Ticket: $id\n";
- $string .= $action->{'templates'}->{$_} . "\n";
- }
-
-
-} elsif ($ARGS{'UpdateTickets'}) {
- $action->Parse(Content => $ARGS{string}, Queue => $qname, Requestor=> $requestoraddress);
- push @results, $action->CreateByTemplate();
- push @results, $action->UpdateByTemplate();
-} else {
- if ($ARGS{'Query'}) {
- my $Tickets = RT::Tickets->new($session{'CurrentUser'});
- $Tickets->FromSQL($ARGS{'Query'});
-
- while (my $t = $Tickets->Next) {
- $string .= "===Update-Ticket: " . $t->Id . "\n";
- $string .= $action->GetUpdateTemplate($t);
- $string .= "" . "\n";
- }
-
- $string .= "" . "\n";
- $string .= "===# DO NOT EDIT BELOW THIS LINE#===\n";
- $string .= "" . "\n";
-
- while (my $t = $Tickets->Next) {
- $string .= "===# DO NOT EDIT #===\n";
- $string .= "===Base-Ticket: " . $t->Id . "\n";
- $string .= $action->GetBaseTemplate($t);
- $string .= "===# DO NOT EDIT #===\n";
- $string .= "" . "\n";
- }
- } else {
- $string .= "===Create-Ticket: ticket1\n";
- $string .= $action->GetCreateTemplate();
- }
-}
-</%INIT>
diff --git a/rt/html/User/Delegation.html b/rt/html/User/Delegation.html
deleted file mode 100644
index 3347fda..0000000
--- a/rt/html/User/Delegation.html
+++ /dev/null
@@ -1,105 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => loc("Delegate rights") &>
-<& /User/Elements/Tabs,
- current_tab => 'User/Delegation.html',
- Title => loc("Delegate rights") &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<form method="post">
-<& Elements/DelegateRights, personalgroups => $personalgroups, objects => $objects, ObjectType => 'RT::System' &>
-<& Elements/DelegateRights, personalgroups => $personalgroups, objects => $objects, ObjectType => 'RT::Queue' &>
-<& Elements/DelegateRights, personalgroups => $personalgroups, objects => $objects, ObjectType => 'RT::Group' &>
-
-<& /Elements/Submit, Label => loc('Modify Rights') &>
-</form>
-<%INIT>
-
-my (@results, $arg);
-foreach $arg (keys %ARGS) {
- next unless ($arg =~ /^Delegate-Existing-ACE-(\d+)-to-(\d+)-as-(\d+)$/);
- my $parent = $1;
- my $principal = $2;
- my $delegation = $3;
- unless ($ARGS{"Delegate-ACE-$1-to-$2"}) {
- my $ace_to_del = RT::ACE->new($session{'CurrentUser'});
- $ace_to_del->Load($delegation);
- my ($delval, $delmsg) = $ace_to_del->Delete();
- push (@results, $delmsg);
- }
-}
-
-foreach $arg (keys %ARGS) {
- next unless ($arg =~ /^Delegate-ACE-(\d+)-to-(\d+)$/);
- my $parent = $1;
- my $principal = $2;
- # if we already delegate it, we just don't care
- next if (grep /^Delegate-Existing-ACE-$parent-to-$principal-/, keys %ARGS);
- my $ace = RT::ACE->new($session{'CurrentUser'});
- $ace->Load($1);
- unless ($ace->Id) {
- push (@results, loc('Right not found'));
- next;
- }
- my ($delid, $delmsg) = $ace->Delegate(PrincipalId => $principal);
- push (@results, $delmsg);
-}
-
-my $personalgroups = RT::Groups->new($session{'CurrentUser'});
-$personalgroups->LimitToPersonalGroupsFor($session{'CurrentUser'}->PrincipalId);
-
-my $objects;
-my $acl = RT::ACL->new ($session{'CurrentUser'});
-$acl->ExcludeDelegatedRights();
-$acl->LimitToPrincipal(Id => $session{'CurrentUser'}->PrincipalId,
- IncludeGroupMembership => 1
- );
-
-while(my $right = $acl->Next) {
- push @{$objects->{$right->ObjectType}{$right->ObjectId}},$right;
-}
-</%INIT>
diff --git a/rt/html/User/Elements/DelegateRights b/rt/html/User/Elements/DelegateRights
deleted file mode 100644
index 79ecb59..0000000
--- a/rt/html/User/Elements/DelegateRights
+++ /dev/null
@@ -1,107 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<h2><%$sectionheading%></h2>
-<%perl>
-
-foreach my $object (keys %{$objects->{$ObjectType}}) {
-unless ($ObjectType eq 'RT::System') {
-my $object_obj = @{$objects->{$ObjectType}{$object}}[0]->Object;
-
-</%perl>
-<h3><% $object_obj->Name %></h3>
-% }
-<table width="100%" border="0" cellspacing="0" cellpadding="3">
-<tr>
- <th width=15%><&|/l&>Personal groups:</&></th>
-% while (my $pg = $personalgroups->Next) {
-<th><%$pg->Name%></th>
-% }
-</tr>
-<%perl>
-my $i;
-foreach my $right (@{$objects->{$ObjectType}{$object}}) {
-my $delegations = RT::ACL->new($session{'CurrentUser'});
-$delegations->DelegatedBy( Id => $session{'CurrentUser'}->PrincipalId);
-$delegations->DelegatedFrom ( Id => $right->Id);
-
-my $del_hash = {};
-while ( my $delegation = $delegations->Next) {
- $del_hash->{$delegation->PrincipalId} = $delegation;
-}
-</%perl>
-% $i++;
-%
-<tr class="<%($i%2) && 'oddline'%>">
-<td>
-<% loc($right->RightName) %><br>
-<div align=right><font size="-2" color="#999999"><&|/l, $right->PrincipalObj->Object->SelfDescription &>as granted to [_1]</&></font></div>
- </td>
-% while (my $pg = $personalgroups->Next) {
-<td align=center>
- <input name="Delegate-ACE-<% $right->Id %>-to-<% $pg->PrincipalId%>" type=checkbox value="1" <%$ del_hash->{$pg->PrincipalId} && 'CHECKED' %>>
-% if ( $del_hash->{$pg->PrincipalId}) {
-<input type=hidden name="Delegate-Existing-ACE-<% $right->Id %>-to-<% $pg->PrincipalId%>-as-<%$del_hash->{$pg->PrincipalId}->Id%>">
-% }
-</td>
-% }
-<td>&nbsp;</td>
-</tr>
-%}
-</table>
-% }
-<%init>
-
-my $sectionheading = loc("[_1] rights", loc($ObjectType =~ /^RT::(.*)$/));
-# 'System' # loc
-# 'Group' # loc
-# 'Queue' # loc
-
-</%init>
-<%args>
-$ObjectType => undef
-$objects => undef
-$personalgroups => undef
-</%args>
diff --git a/rt/html/User/Elements/GroupTabs b/rt/html/User/Elements/GroupTabs
deleted file mode 100644
index 2e79df2..0000000
--- a/rt/html/User/Elements/GroupTabs
+++ /dev/null
@@ -1,82 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /User/Elements/Tabs,
- subtabs => $tabs,
- current_tab => 'User/Groups/',
- current_subtab => $current_subtab,
- Title => $Title &>
-
-<%INIT>
-my $tabs;
-if ( $GroupObj and $GroupObj->id ) {
- $tabs->{"this"} = {
- title => $GroupObj->Name,
- path => "User/Groups/Modify.html?id=" . $GroupObj->id,
- subtabs => {
- Basics => { title => loc('Basics'),
- path => "User/Groups/Modify.html?id=" . $GroupObj->id
- },
-
- Members => { title => loc('Members'),
- path => "User/Groups/Members.html?id=" . $GroupObj->id
- },
-
- } };
- $tabs->{'this'}->{'current_subtab'} = $current_subtab;
- $current_subtab = "User/Groups/Modify.html?id=" . $GroupObj->id,
-}
-$tabs->{"A"} = { title => loc('Select group'),
- path => "User/Groups/index.html" };
-$tabs->{"B"} = { title => loc('New group'),
- path => "User/Groups/Modify.html?Create=1",
- separator => 1 };
-
-</%INIT>
-<%ARGS>
-$GroupObj => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/User/Elements/Tabs b/rt/html/User/Elements/Tabs
deleted file mode 100644
index 1d25fb9..0000000
--- a/rt/html/User/Elements/Tabs
+++ /dev/null
@@ -1,78 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Tabs,
- tabs => $tabs,
- current_toptab => 'User/Prefs.html',
- current_tab => $current_tab,
- Title => $Title &>
-
-<%INIT>
- my $tabs = { a => { title => loc('About me'),
- path => 'User/Prefs.html',
- },
- g => { title => loc('Personal Groups'),
- path => 'User/Groups/',
- },
- h => { title => loc('Delegation'),
- path => 'User/Delegation.html',
- },
- };
-
- foreach my $tab (sort keys %{$tabs}) {
- if ($tabs->{$tab}->{'path'} eq $current_tab) {
- $tabs->{$tab}->{"subtabs"} = $subtabs;
- $tabs->{$tab}->{"current_subtab"} = $current_subtab;
- }
- }
-</%INIT>
-
-
-<%ARGS>
-$subtabs => undef
-$current_tab => undef
-$current_subtab => undef
-$Title => undef
-</%ARGS>
diff --git a/rt/html/User/Groups/Members.html b/rt/html/User/Groups/Members.html
deleted file mode 100644
index 2068e5a..0000000
--- a/rt/html/User/Groups/Members.html
+++ /dev/null
@@ -1,158 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title &>
-<& /User/Elements/GroupTabs,
- GroupObj => $Group,
- current_subtab => "User/Groups/Members.html?id=".$Group->id,
- Title => $title &>
-<& /Elements/ListActions, actions => \@results &>
-
-
-
-<FORM ACTION="<%$RT::WebPath%>/User/Groups/Members.html" METHOD="POST">
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Group->Id%>">
-<TABLE WIDTH="100%">
-<TR>
-<TD>
-<&|/l&>Add members</&>
-</TD>
-<TD>
-<&|/l&>Current members</&>
-</TD>
-</TR>
-
-<TR>
-<TD VALIGN=TOP>
-<& /Admin/Elements/SelectNewGroupMembers, Name => "AddMembers", Group => $Group &>
-</TD>
-<TD VALIGN=TOP>
-
-% if ($Group->MembersObj->Count == 0 ) {
-<i><&|/l&>(No members)</&></i>
-% } else {
-<i><&|/l&>(Check box to delete)</&></i>
-<br>
-<br>
-<&|/l&>Users</&>
-% my $UserMembers = $Group->MembersObj;
-% $UserMembers->LimitToUsers();
-<UL>
-% while (my $member = $UserMembers->Next()) {
-<LI><INPUT TYPE=CHECKBOX Name="DeleteMember-<%$member->MemberId%>" value="1">
-<%$member->MemberObj->Object->Name%> (<%$member->MemberObj->Object->RealName%>)
-% }
-</ul>
-<&|/l&>Groups</&>
-<ul>
-% my $GroupMembers = $Group->MembersObj;
-% $GroupMembers->LimitToGroups();
-% while (my $member = $GroupMembers->Next()) {
-<LI><INPUT TYPE=CHECKBOX Name="DeleteMember-<%$member->MemberId%>" value="1">
-<%$member->MemberObj->Object->Name%>
-% }
-% }
-</UL>
-</TD>
-</TR>
-</TABLE>
-<& /Elements/Submit, Label => loc('Modify Members') &>
-</form>
-
-
-<%INIT>
-
-my $Group = new RT::Group($session{'CurrentUser'});
-$Group->Load($id) ;
-
-unless ($Group->id) {
- Abort(loc('Could not load group'));
-}
-
-my (@results);
-
-foreach my $key (keys %ARGS) {
-
-if ($key =~ /^DeleteMember-(\d+)$/) {
- my $mem_id = $1;
- my ($val,$msg) = $Group->DeleteMember($mem_id);
- push (@results, $msg);
-}
-}
-
-# Make sure AddMembers is always an array
-my @AddMembersUsers = (ref $AddMembersUsers eq 'ARRAY') ? @{$AddMembersUsers} : ($AddMembersUsers);
-my @AddMembersGroups = (ref $AddMembersGroups eq 'ARRAY') ? @{$AddMembersGroups} : ($AddMembersGroups);
-
-foreach my $member (@AddMembersUsers, @AddMembersGroups) {
- next unless ($member);
-
- my $principal;
-
- if ($member =~ /^Group-(\d+)$/) {
- $principal = RT::Group->new($session{'CurrentUser'});
- $principal->Load($1);
- } elsif ($member =~ /^User-(\d+)$/) {
- $principal = RT::User->new($session{'CurrentUser'});
- $principal->Load($1);
- } else {
- next;
- }
-
-
- my ($val, $msg) = $Group->AddMember($principal->PrincipalId);
- push (@results, $msg);
-}
-
-
-my $title = loc('Editing membership for personal group [_1]', $Group->Name);
-
-</%INIT>
-
-<%ARGS>
-$AddMembersUsers => undef
-$AddMembersGroups => undef
-$id => undef
-</%ARGS>
diff --git a/rt/html/User/Groups/Modify.html b/rt/html/User/Groups/Modify.html
deleted file mode 100644
index c0e9ce5..0000000
--- a/rt/html/User/Groups/Modify.html
+++ /dev/null
@@ -1,155 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title &>
-
-<& /User/Elements/GroupTabs,
- GroupObj => $Group,
- current_subtab => $current_tab,
- Title => $title &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-
-<FORM ACTION="<%$RT::WebPath%>/User/Groups/Modify.html" METHOD=POST>
-
-%unless ($Group->Id) {
-<INPUT TYPE=HIDDEN NAME=id VALUE="new">
-% } else {
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$Group->Id%>">
-% }
-<TABLE>
-<TR><TD ALIGN=RIGHT>
-<&|/l&>Name</&>:
-</TD>
-<TD><INPUT name="Name" value="<%$Group->Name%>"></TD>
-</TR><TR>
-<TD ALIGN=RIGHT>
-<&|/l&>Description</&>:</TD><TD COLSPAN=3><INPUT name="Description" value="<%$Group->Description%>" size=60></TD>
-</TR><TR>
-<TD COLSPAN=2>
-<INPUT TYPE=HIDDEN NAME="SetEnabled" VALUE="1">
-<INPUT TYPE=CHECKBOX NAME="Enabled" VALUE="1" <%$EnabledChecked%>> <&|/l&>Enabled (Unchecking this box disables this group)</&><BR>
-</TR>
-</TABLE>
-<& /Elements/Submit, Label => loc('Save Changes'), Reset => 1 &>
-</form>
-<%INIT>
-
-my $current_tab;
-my ($title, @results, $Disabled, $EnabledChecked);
-
-my $Group = RT::Group->new($session{'CurrentUser'});
-
-if ($Create) {
- $current_tab = 'User/Groups/Modify.html?Create=1';
- $title = loc("Create a new personal group");
-}
-else {
- if ( $id eq 'new' ) {
-
- my ( $id, $msg ) = $Group->CreatePersonalGroup(
- Name => "$Name",
- PrincipalId => $session{'CurrentUser'}->PrincipalId
- );
- unless ($id) {
- Abort( loc("Could not create group") );
- }
- $id = $Group->Id;
- }
- else {
- $Group->Load($id) || Abort( loc('Could not load group') );
- }
-
- if ($id) {
- $title = loc( "Modify the group [_1]", $Group->Name );
-
- }
-
- # If the create failed
- else {
- $title = loc("Create a new personal group");
- $Create = 1;
- }
-
- $current_tab = 'User/Groups/Modify.html?id=' . $Group->Id;
-}
-
-if ($id) {
-
- my @fields = qw(Description Name );
- my @fieldresults = UpdateRecordObject ( AttributesRef => \@fields,
- Object => $Group,
- ARGSRef => \%ARGS );
- push (@results,@fieldresults);
-}
-
-#we're asking about enabled on the web page but really care about disabled.
-if ($Enabled == 1) {
- $Disabled = 0;
-}
-else {
- $Disabled = 1;
-}
-if ( ($SetEnabled) and ( $Disabled != $Group->Disabled) ) {
- my ($code, $msg) = $Group->SetDisabled($Disabled);
- push @results, loc('Enabled status [_1]', loc_fuzzy($msg));
-}
-
-unless ($Group->Disabled()) {
- $EnabledChecked ="CHECKED";
-}
-
-</%INIT>
-
-
-<%ARGS>
-$Create => undef
-$Name => undef
-$Description => undef
-$SetEnabled => undef
-$Enabled => undef
-$id => undef
-</%ARGS>
diff --git a/rt/html/User/Groups/index.html b/rt/html/User/Groups/index.html
deleted file mode 100644
index 6d2e15d..0000000
--- a/rt/html/User/Groups/index.html
+++ /dev/null
@@ -1,65 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title => $title &>
-<& /User/Elements/GroupTabs,
- current_subtab => 'User/Groups/index.html',
- Title => $title &>
-
-<&|/l&>Personal groups</&>:<BR>
-<UL>
-%while ( my $Group = $Groups->Next) {
-<LI><A HREF="Modify.html?id=<%$Group->id%>"><%$Group->Name || loc('(empty)')%></a><BR>
-%}
-</UL>
-
-<%INIT>
-my $Groups = RT::Groups->new($session{'CurrentUser'});
-$Groups->LimitToPersonalGroupsFor($session{'CurrentUser'}->PrincipalId());
-my $title = loc('Personal groups');
-
-</%INIT>
-<%ARGS>
-</%ARGS>
diff --git a/rt/html/User/Prefs.html b/rt/html/User/Prefs.html
deleted file mode 100644
index f1c7558..0000000
--- a/rt/html/User/Prefs.html
+++ /dev/null
@@ -1,279 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title=>loc("Preferences") &>
-<& /User/Elements/Tabs,
- current_tab => 'User/Prefs.html',
- Title=>loc("Preferences") &>
-
-<& /Elements/ListActions, actions => \@results &>
-
-<FORM ACTION="<%$RT::WebPath%>/User/Prefs.html" METHOD=POST>
-<INPUT TYPE=HIDDEN NAME=id VALUE="<%$UserObj->Id%>">
-
-<TABLE WIDTH=100% BORDER=0>
-<TR>
-
-<TD VALIGN=TOP class="boxcontainer">
-<& /Elements/TitleBoxStart, title => loc('Identity') &>
-
-<input type=hidden name="Name" value="<%$UserObj->Name%>">
-<table callspacing=0 cellpadding=0>
- <tr>
- <td class=label><&|/l&>Email</&>: </td>
- <td class=value><input name="EmailAddress" value="<%$UserObj->EmailAddress%>"></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Real Name</&>:</td>
- <td class=value><input name="RealName" value="<%$UserObj->RealName%>"></td> </tr>
- <tr>
- <td class=label><&|/l&>Nickname</&>:</td>
- <td class=value><input name="NickName" value="<%$UserObj->NickName%>"></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Language</&>:</td>
- <td class=value><& /Elements/SelectLang, Name => 'Lang', Default => $UserObj->Lang &></td>
- </tr>
-</table>
-<& /Elements/TitleBoxEnd &>
-<br>
-<& /Elements/TitleBoxStart, title => loc('Phone numbers') &>
-<table callspacing=0 cellpadding=0>
- <tr>
- <td class=label><&|/l&>Residence</&>:</td>
- <td class=value><input name="HomePhone" value="<%$UserObj->HomePhone%>" size=13></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Work</&>:</td>
- <td class=value><input name="WorkPhone" value="<%$UserObj->WorkPhone%>" size=13></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Mobile</&>:</td>
- <td class=value><input name="MobilePhone" value="<%$UserObj->MobilePhone%>" size=13></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Pager</&>:</td>
- <td class=value><input name="PagerPhone" value="<%$UserObj->PagerPhone%>" size=13></td>
- </tr>
-</table>
-<& /Elements/TitleBoxEnd &>
-</TD>
-<TD VALIGN=TOP class="boxcontainer">
-% unless ($RT::WebExternalAuth and !$RT::WebFallbackToInternalAuth) {
-<& /Elements/TitleBoxStart, title => loc('Password') &>
-<TABLE>
-<TR>
-<TD class=label>
-<&|/l&>New Password</&>:
-</TD>
-<TD class=value>
-<input type=password name="Pass1">
-</TD>
-</TR>
-<TR><TD class=label>
-<&|/l&>Retype Password</&>:
-</TD>
-<TD class=value>
-<input type=password name="Pass2">
-</TD>
-</TR>
-</TABLE>
-<& /Elements/TitleBoxEnd &>
-% }
-
-<& /Elements/TitleBoxStart, title => loc('Location') &>
-<table callspacing=0 cellpadding=0>
- <tr>
- <td class=label><&|/l&>Organization</&>:</td>
- <td class=value><input name="Organization" value="<%$UserObj->Organization%>"></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Address1</&>:</td>
- <td class=value><input name="Address1" value="<%$UserObj->Address1%>"></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Address2</&>:</td>
- <td class=value><input name="Address2" value="<%$UserObj->Address2%>"></td>
- </tr>
- <tr>
- <td class=label><&|/l&>City</&>:</td>
- <td><input name="City" value="<%$UserObj->City%>" size=14></td>
- </tr>
- <tr>
- <td class=label><&|/l&>State</&>:</td>
- <td class=value><input name="State" value="<%$UserObj->State%>" size=3></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Zip</&>:</td>
- <td class=value><input name="Zip" value="<%$UserObj->Zip%>" size=9></td>
- </tr>
- <tr>
- <td class=label><&|/l&>Country</&>:</td>
- <td class=value><input name="Country" value="<%$UserObj->Country%>"></td>
- </tr>
-</table>
-<& /Elements/TitleBoxEnd &>
-</TD>
-</TR>
-<TR>
-
-
-
-<TD COLSPAN=2 VALIGN=TOP class="boxcontainer">
-%if ($UserObj->Privileged) {
-<BR>
-<& /Elements/TitleBoxStart, title => loc('Signature') &>
-<TEXTAREA COLS=80 ROWS=5 name="Signature" class="signature" WRAP=HARD>
-<%$UserObj->Signature%></TEXTAREA>
-<& /Elements/TitleBoxEnd &>
-% }
-
-</TD>
-
-</TR>
-</TABLE>
-
-
-<& /Elements/Submit, Label => loc('Save Preferences') &>
-</form>
-
-
-<%INIT>
-
-my $UserObj = new RT::User($session{'CurrentUser'});
-my ($title, $PrivilegedChecked, $EnabledChecked, $Disabled, $result, @results);
-
-my ($val, $msg);
-
-
- $UserObj->Load($id) || $UserObj->Load($Name) || Abort("Couldn't load user '$Name'");
- $val = $UserObj->Id();
-
-
-
-
-
-
-# If we have a user to modify, lets try.
-if ($UserObj->Id) {
-
- my @fields = qw(Name Comments Signature EmailAddress FreeformContactInfo
- Organization RealName NickName Lang EmailEncoding WebEncoding
- ExternalContactInfoId ContactInfoSystem Gecos ExternalAuthId
- AuthSystem HomePhone WorkPhone MobilePhone PagerPhone Address1
- Address2 City State Zip Country Lang
- );
-
- my @fieldresults = UpdateRecordObject ( AttributesRef => \@fields,
- Object => $UserObj,
- ARGSRef => \%ARGS );
- if ($Lang) {
- $session{'CurrentUser'}->LanguageHandle($Lang);
- $session{'CurrentUser'} = $session{'CurrentUser'}; # force writeback
- }
-
- push (@results,@fieldresults);
-
-
-# {{{ Deal with special fields: Privileged, Enabled and Password
-if ( ($SetPrivileged) and ( $Privileged != $UserObj->Privileged) ) {
-my ($code, $msg) = $UserObj->SetPrivileged($Privileged);
- push @results, loc('Privileged status: [_1]', loc_fuzzy($msg));
-}
-
-
-
-#TODO: make this report errors properly
-if ((defined $Pass1) and ($Pass1 ne '') and ($Pass1 eq $Pass2) and (!$UserObj->IsPassword($Pass1))) {
- my ($code, $msg);
- ($code, $msg) = $UserObj->SetPassword($Pass1);
- push @results, loc('Password: [_1]', loc_fuzzy($msg));
-} elsif ( $Pass1 && ($Pass1 ne $Pass2)) {
- push @results, loc("Passwords do not match. Your password has not been changed");
-}
-
-# }}}
-}
-
-
-</%INIT>
-
-
-<%ARGS>
-$id => $session{'CurrentUser'}->Id
-$Name => undef
-$Comments => undef
-$Signature => undef
-$EmailAddress => undef
-$FreeformContactInfo => undef
-$Organization => undef
-$RealName => undef
-$NickName => undef
-$Privileged => undef
-$SetPrivileged => undef
-$Enabled => undef
-$SetEnabled => undef
-$Lang => undef
-$EmailEncoding => undef
-$WebEncoding => undef
-$ExternalContactInfoId => undef
-$ContactInfoSystem => undef
-$Gecos => undef
-$ExternalAuthId => undef
-$AuthSystem => undef
-$HomePhone => undef
-$WorkPhone => undef
-$MobilePhone => undef
-$PagerPhone => undef
-$Address1 => undef
-$Address2 => undef
-$City => undef
-$State => undef
-$Zip => undef
-$Country => undef
-$Pass1 => undef
-$Pass2=> undef
-$Create=> undef
-</%ARGS>
diff --git a/rt/html/autohandler b/rt/html/autohandler
deleted file mode 100644
index c854c2b..0000000
--- a/rt/html/autohandler
+++ /dev/null
@@ -1,230 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%INIT>
-
-# Roll back any dangling transactions from a previous failed connection
-$RT::Handle->ForceRollback() if $RT::Handle->TransactionDepth;
-
-
-local *session unless $m->is_subrequest; # avoid reentrancy, as suggested by masonbook
-
-# Disable AutoFlush using an attribute
-if ($m->request_comp->attr_exists('AutoFlush')) {
- $m->autoflush($m->request_comp->attr('AutoFlush'));
-}
-
-%ARGS = map {
- # if they've passed multiple values, they'll be an array. if they've
- # passed just one, a scalar whatever they are, mark them as utf8
- my $type = ref($_);
- (!$type)
- ? Encode::is_utf8($_) ? $_ : Encode::decode(utf8 => $_, Encode::FB_PERLQQ) :
- ($type eq 'ARRAY')
- ? [ map { (ref($_) or Encode::is_utf8($_)) ? $_ : Encode::decode(utf8 => $_, Encode::FB_PERLQQ) } @$_ ] :
- ($type eq 'HASH')
- ? { map { (ref($_) or Encode::is_utf8($_)) ? $_ : Encode::decode(utf8 => $_, Encode::FB_PERLQQ) } %$_ } : $_
- } %ARGS;
-
-$m->{'rt_base_time'} = [Time::HiRes::gettimeofday()];
-
-$m->comp('/Elements/SetupSessionCookie', %ARGS);
-
-unless ($session{'CurrentUser'} && $session{'CurrentUser'}->Id) {
- $session{'CurrentUser'} = RT::CurrentUser->new();
-}
-
-# Set the proper encoding for the current language handle
-$r->content_type("text/html; charset=utf-8");
-
-# If it's a noauth file, don't ask for auth.
-if ($m->base_comp->path =~ $RT::WebNoAuthRegex )
-{
- $m->call_next(%ARGS);
- $m->abort();
-}
-
-# If RT is configured for external auth, let's go through and get REMOTE_USER
-elsif ( $RT::WebExternalAuth ) {
-
- # do we actually have a REMOTE_USER equivlent?
- if ( RT::Interface::Web::WebCanonicalizeInfo() ) {
-
- my $orig_user = $user;
-
- $user = RT::Interface::Web::WebCanonicalizeInfo();
- $session{'CurrentUser'} = RT::CurrentUser->new();
- my $load_method = $RT::WebExternalGecos ? 'LoadByGecos' : 'Load';
-
- if ($^O eq 'MSWin32' and $RT::WebExternalGecos) {
- my $NodeName = Win32::NodeName();
- $user =~ s/^\Q$NodeName\E\\//i;
- }
-
- $session{'CurrentUser'}->$load_method($user);
-
- if ($RT::WebExternalAuto and !$session{'CurrentUser'}->Id() ) {
- # Create users on-the-fly
-
- my $UserObj = RT::User->new(RT::CurrentUser->new('RT_System'));
-
- my ($val, $msg) = $UserObj->Create(
- %{ref($RT::AutoCreate) ? $RT::AutoCreate : {}},
- Name => $user,
- Gecos => $user,
- );
-
- if ($val) {
-
- # now get user specific information, to better create our user.
- my $new_user_info = RT::Interface::Web::WebExternalAutoInfo($user);
-
- # set the attributes that have been defined.
- # FIXME: this is a horrible kludge. I'm sure there's something cleaner
- foreach my $attribute ('Name', 'Comments', 'Signature', 'EmailAddress',
- 'PagerEmailAddress', 'FreeformContactInfo',
- 'Organization', 'Disabled', 'Privileged',
- 'RealName', 'NickName', 'Lang', 'EmailEncoding',
- 'WebEncoding', 'ExternalContactInfoId',
- 'ContactInfoSystem', 'ExternalAuthId', 'Gecos',
- 'HomePhone', 'WorkPhone', 'MobilePhone',
- 'PagerPhone', 'Address1', 'Address2', 'City',
- 'State', 'Zip', 'Country') {
- $m->comp('/Elements/Callback', %ARGS, _CallbackName => 'NewUser');
-
- my $method = "Set$attribute";
- $UserObj->$method($new_user_info->{$attribute})
- if( defined $new_user_info->{$attribute} );
- }
- $session{'CurrentUser'}->Load($user);
- }
- else {
- # we failed to successfully create the user. abort abort abort.
- delete $session{'CurrentUser'};
- $m->abort() unless $RT::WebFallbackToInternalAuth;
- $m->comp('/Elements/Login', %ARGS,
- Error=> loc('Cannot create user: [_1]', $msg));
- }
- }
-
- unless ( $session{'CurrentUser'}->Id() ) {
- delete $session{'CurrentUser'};
- $user = $orig_user;
-
- if ( $RT::WebExternalOnly ) {
- $m->comp('/Elements/Login', %ARGS,
- Error=> loc('You are not an authorized user'));
- $m->abort();
- }
- }
- }
- elsif ($RT::WebFallbackToInternalAuth) {
- unless (defined($session{'CurrentUser'})) {
- $m->comp('/Elements/Login', %ARGS,
- Error=> loc('You are not an authorized user'));
- $m->abort();
- }
- } else {
- # WebExternalAuth is set, but we don't have a REMOTE_USER. abort
- delete $session{'CurrentUser'} if defined $session{'CurrentUser'};
- }
-}
-
-delete $session{'CurrentUser'}
- unless $session{'CurrentUser'} and defined $session{'CurrentUser'}->Id;
-
-
-# Process per-page authentication callbacks
-$m->comp('/Elements/Callback', %ARGS, _CallbackName => 'Auth');
-
-# If the user is logging in, let's authenticate
-if (!$session{'CurrentUser'} && defined ($user) && defined ($pass) ){
- $session{'CurrentUser'} = RT::CurrentUser->new();
- $session{'CurrentUser'}->Load($user);
-
- if (!$session{'CurrentUser'}->id() ||
- !$session{'CurrentUser'}->IsPassword($pass))
- {
- delete $session{'CurrentUser'};
- $RT::Logger->error("FAILED LOGIN for $user from $ENV{'REMOTE_ADDR'}");
- $m->comp('/Elements/Login', %ARGS,
- Error => loc('Your username or password is incorrect'));
- $m->abort();
- }
- else {
- $RT::Logger->info("Successful login for $user from $ENV{'REMOTE_ADDR'}");
- }
-}
-
-# If we've got credentials, let's serve the file up.
-if ( (defined $session{'CurrentUser'}) and
- ( $session{'CurrentUser'}->Id) ) {
-
- # Process per-page global callbacks
- $m->comp('/Elements/Callback', %ARGS);
-
- # If the user isn't privileged, they can only see SelfService
- if ((! $session{'CurrentUser'}->Privileged) and
- ($m->base_comp->path !~ '^(/+)SelfService/') ) {
- $m->comp('/SelfService/index.html');
- $m->abort();
- }
- else {
- $m->call_next(%ARGS);
- }
-}
-
-# If we have no credentials
-else {
- $m->comp('/Elements/Login', %ARGS);
- $m->abort();
-}
-</%INIT>
-<& /Elements/Footer, %ARGS &>
-<%ARGS>
-$user => undef
-$pass => undef
-$menu => undef
-</%ARGS>
diff --git a/rt/html/index.html b/rt/html/index.html
deleted file mode 100644
index 04d48ec..0000000
--- a/rt/html/index.html
+++ /dev/null
@@ -1,156 +0,0 @@
-<!--
-% $m->out('--'.'>');
-% if (0) {
-%# -->
-<html><head>
-<META HTTP-EQUIV=Refresh CONTENT="3; URL=http://bestpractical.com/rt/rt-broken-install.html">
-<title>Almost there!</title></head>
-<body>
-
-<img src="http://www.bestpractical.com/images/unconfigured-rtlogo.jpg">
-<br><br>
-<h1>You're almost there!</h1>
-You haven't yet configured your webserver to run RT.
-
-You appear to have installed RT's web interface correctly, but haven't yet configured your web
-server to "run" the RT server which powers the web interface.
-
-The next step is to edit your webserver's configuration file to instruct it to use
-RT's <b>mod_perl</b>, <b>fastcgi</b> or <b>speedycgi</b> handler.
-
-If you need commercial support, please contact us at sales@bestpractical.com.
-
-
-<!--
-% }
-
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<& /Elements/Header, Title=>loc("RT at a glance"), Refresh => $session{'home_refresh_interval'} &>
-<& /Elements/Tabs,
- current_toptab => '',
- Title=>loc("RT at a glance") &>
-<& /Elements/ListActions, actions => \@results &>
-<TABLE BORDER=0 WIDTH=100%>
-<TR VALIGN=TOP>
-<TD WIDTH=70% class="boxcontainer">
-<& /Elements/MyTickets &>
-<BR>
-<& /Elements/MyRequests &>
-<BR>
-<& /Elements/QuickCreate &>
-</TD>
-<TD class="boxcontainer">
-<& /Elements/Quicksearch &>
-<BR>
-<form method=get action="<%$RT::WebPath%>/index.html">
-<& /Elements/Refresh, Name => 'HomeRefreshInterval', Default => $session {'home_refresh_interval'} &>
-<div align=right><input type=submit value="<&|/l&>Go!</&>"></div>
-</form>
-</TD>
-</TR>
-</TABLE>
-<%init>
-
-my @results;
-
-if ($ARGS{'QuickCreate'} ) {
- my $ticket = RT::Ticket->new($session{'CurrentUser'});
- my ($tid, $trans, $tmsg) = $ticket->Create(Queue => $ARGS{'Queue'},
- Owner => $ARGS{'Owner'},
- Subject => $ARGS{'Subject'});
-
-
- push (@results, $tmsg);
-}
-
-
-if ( $ARGS{'q'} ) {
- my $query = $ARGS{'q'};
-
- if ( $query =~ m/^\s*(\d+)\s*$/ ) {
- $m->comp("/Ticket/Display.html" , id=> $1);
- return();
- }
-
- if ($m->comp('/Elements/Callback', _CallbackName => 'SearchPreFilter',
- query => $query, %ARGS)) {
- return();
- }
-
- $session{'tickets'} = RT::Tickets->new( $session{'CurrentUser'} );
-
- if ( $query =~ m/\@/ ) {
- $m->comp("/Search/Results.html", Query => "Requestor = '$query'");
-
- return();
- }
-
- #
- # Any search on queue name or subject will be for new/open tickets
- # only.
- #
-
- my $status = "Status = 'new' OR Status = 'open'";
-
- my $queue = RT::Queue->new( $session{'CurrentUser'} );
- if ( $queue->Load($query) && $queue->Id ) {
- $m->comp("/Search/Results.html", Query => "Queue = '" . $queue->Id . "' AND ($status)");
- return();
- }
-
- $m->comp("/Search/Results.html", Query => "Subject LIKE '$query' AND ($status)");
- return();
-
-}
-
-if ($ARGS{'HomeRefreshInterval'}) {
- $session{'home_refresh_interval'} = $ARGS{'HomeRefreshInterval'};
-}
-
-</%init>
-
-%# --></body></html>
diff --git a/rt/html/l b/rt/html/l
deleted file mode 100644
index dbd146e..0000000
--- a/rt/html/l
+++ /dev/null
@@ -1,50 +0,0 @@
-%# BEGIN BPS TAGGED BLOCK {{{
-%#
-%# COPYRIGHT:
-%#
-%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-%# <jesse@bestpractical.com>
-%#
-%# (Except where explicitly superseded by other copyright notices)
-%#
-%#
-%# LICENSE:
-%#
-%# This work is made available to you under the terms of Version 2 of
-%# the GNU General Public License. A copy of that license should have
-%# been provided with this software, but in any event can be snarfed
-%# from www.gnu.org.
-%#
-%# This work is distributed in the hope that it will be useful, but
-%# WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-%# General Public License for more details.
-%#
-%# You should have received a copy of the GNU General Public License
-%# along with this program; if not, write to the Free Software
-%# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-%#
-%#
-%# CONTRIBUTION SUBMISSION POLICY:
-%#
-%# (The following paragraph is not intended to limit the rights granted
-%# to you to modify and distribute this software under the terms of
-%# the GNU General Public License and is only of importance to you if
-%# you choose to contribute your changes and enhancements to the
-%# community by submitting them to Best Practical Solutions, LLC.)
-%#
-%# By intentionally submitting any modifications, corrections or
-%# derivatives to this work, or any other work intended for use with
-%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-%# you are the copyright holder for those contributions and you grant
-%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-%# royalty-free, perpetual, license to use, copy, create derivative
-%# works based on those contributions, and sublicense and distribute
-%# those contributions and any derivatives thereof.
-%#
-%# END BPS TAGGED BLOCK }}}
-<%init>
- my $hand = ($session{'CurrentUser'} ||= RT::CurrentUser->new)->LanguageHandle;
- $m->print($hand->maketext($m->content,@_));
- return(1);
-</%init>
diff --git a/rt/install-sh b/rt/install-sh
deleted file mode 100644
index 11870f1..0000000
--- a/rt/install-sh
+++ /dev/null
@@ -1,251 +0,0 @@
-#!/bin/sh
-#
-# install - install a program, script, or datafile
-# This comes from X11R5 (mit/util/scripts/install.sh).
-#
-# Copyright 1991 by the Massachusetts Institute of Technology
-#
-# Permission to use, copy, modify, distribute, and sell this software and its
-# documentation for any purpose is hereby granted without fee, provided that
-# the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation, and that the name of M.I.T. not be used in advertising or
-# publicity pertaining to distribution of the software without specific,
-# written prior permission. M.I.T. makes no representations about the
-# suitability of this software for any purpose. It is provided "as is"
-# without express or implied warranty.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch. It can only install one file at a time, a restriction
-# shared with many OS's install programs.
-
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
-
-
-# put in absolute paths if you don't have them in your path; or use env. vars.
-
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
-
-transformbasename=""
-transform_arg=""
-instcmd="$mvprog"
-chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
-rmcmd="$rmprog -f"
-mvcmd="$mvprog"
-src=""
-dst=""
-dir_arg=""
-
-while [ x"$1" != x ]; do
- case $1 in
- -c) instcmd="$cpprog"
- shift
- continue;;
-
- -d) dir_arg=true
- shift
- continue;;
-
- -m) chmodcmd="$chmodprog $2"
- shift
- shift
- continue;;
-
- -o) chowncmd="$chownprog $2"
- shift
- shift
- continue;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift
- shift
- continue;;
-
- -s) stripcmd="$stripprog"
- shift
- continue;;
-
- -t=*) transformarg=`echo $1 | sed 's/-t=//'`
- shift
- continue;;
-
- -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
- shift
- continue;;
-
- *) if [ x"$src" = x ]
- then
- src=$1
- else
- # this colon is to work around a 386BSD /bin/sh bug
- :
- dst=$1
- fi
- shift
- continue;;
- esac
-done
-
-if [ x"$src" = x ]
-then
- echo "install: no input file specified"
- exit 1
-else
- :
-fi
-
-if [ x"$dir_arg" != x ]; then
- dst=$src
- src=""
-
- if [ -d $dst ]; then
- instcmd=:
- chmodcmd=""
- else
- instcmd=$mkdirprog
- fi
-else
-
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
-
- if [ -f "$src" ] || [ -d "$src" ]
- then
- :
- else
- echo "install: $src does not exist"
- exit 1
- fi
-
- if [ x"$dst" = x ]
- then
- echo "install: no destination specified"
- exit 1
- else
- :
- fi
-
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
- if [ -d $dst ]
- then
- dst="$dst"/`basename $src`
- else
- :
- fi
-fi
-
-## this sed command emulates the dirname command
-dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
-
-# Make sure that the destination directory exists.
-# this part is taken from Noah Friedman's mkinstalldirs script
-
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
- '
-IFS="${IFS-${defaultIFS}}"
-
-oIFS="${IFS}"
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS="${oIFS}"
-
-pathcomp=''
-
-while [ $# -ne 0 ] ; do
- pathcomp="${pathcomp}${1}"
- shift
-
- if [ ! -d "${pathcomp}" ] ;
- then
- $mkdirprog "${pathcomp}"
- else
- :
- fi
-
- pathcomp="${pathcomp}/"
-done
-fi
-
-if [ x"$dir_arg" != x ]
-then
- $doit $instcmd $dst &&
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else : ; fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else : ; fi
-else
-
-# If we're going to rename the final executable, determine the name now.
-
- if [ x"$transformarg" = x ]
- then
- dstfile=`basename $dst`
- else
- dstfile=`basename $dst $transformbasename |
- sed $transformarg`$transformbasename
- fi
-
-# don't allow the sed command to completely eliminate the filename
-
- if [ x"$dstfile" = x ]
- then
- dstfile=`basename $dst`
- else
- :
- fi
-
-# Make a temp file name in the proper directory.
-
- dsttmp=$dstdir/#inst.$$#
-
-# Move or copy the file name to the temp name
-
- $doit $instcmd $src $dsttmp &&
-
- trap "rm -f ${dsttmp}" 0 &&
-
-# and set any options; do chmod last to preserve setuid bits
-
-# If any of these fail, we abort the whole thing. If we want to
-# ignore errors from any of these, just make sure not to ignore
-# errors from the above "$doit $instcmd $src $dsttmp" command.
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else :;fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else :;fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else :;fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else :;fi &&
-
-# Now rename the file to the real destination.
-
- $doit $rmcmd -f $dstdir/$dstfile &&
- $doit $mvcmd $dsttmp $dstdir/$dstfile
-
-fi &&
-
-
-exit 0
diff --git a/rt/lib/RT.pm b/rt/lib/RT.pm
deleted file mode 100644
index 90c332b..0000000
--- a/rt/lib/RT.pm
+++ /dev/null
@@ -1,304 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2002 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-
-package RT;
-use strict;
-use RT::I18N;
-use RT::CurrentUser;
-use RT::System;
-
-use vars qw($VERSION $System $SystemUser $Nobody $Handle $Logger
- $CORE_CONFIG_FILE
- $SITE_CONFIG_FILE
- $VENDOR_CONFIG_FILE
- $BasePath
- $EtcPath
- $VarPath
- $LocalPath
- $LocalEtcPath
- $LocalLexiconPath
- $LogDir
- $MasonComponentRoot
- $MasonLocalComponentRoot
- $MasonDataDir
- $MasonSessionDir
-);
-
-$VERSION = '3.0.4';
-$CORE_CONFIG_FILE = "/opt/rt3/etc/RT_Config.pm";
-$SITE_CONFIG_FILE = "/opt/rt3/etc/RT_SiteConfig.pm";
-
-$BasePath = '/opt/rt3';
-
-$EtcPath = '/opt/rt3/etc';
-$VarPath = '/opt/rt3/var';
-$LocalPath = '/opt/rt3/local';
-$LocalEtcPath = '/opt/rt3/local/etc';
-$LocalLexiconPath = '/opt/rt3/local/po';
-
-# $MasonComponentRoot is where your rt instance keeps its mason html files
-
-$MasonComponentRoot = '/opt/rt3/share/html';
-
-# $MasonLocalComponentRoot is where your rt instance keeps its site-local
-# mason html files.
-
-$MasonLocalComponentRoot = '/opt/rt3/local/html';
-
-# $MasonDataDir Where mason keeps its datafiles
-
-$MasonDataDir = '/opt/rt3/var/mason_data';
-
-# RT needs to put session data (for preserving state between connections
-# via the web interface)
-$MasonSessionDir = '/opt/rt3/var/session_data';
-
-
-
-=head1 NAME
-
- RT - Request Tracker
-
-=head1 SYNOPSIS
-
- A fully featured request tracker package
-
-=head1 DESCRIPTION
-
-
-=cut
-
-=item LoadConfig
-
-Load RT's config file. First, go after the core config file.
-After that, try to load the vendor config.
-After that, go after the site config.
-
-=cut
-
-sub LoadConfig {
- local *Set = sub { $_[0] = $_[1] unless defined $_[0] };
- if ( -f "$SITE_CONFIG_FILE" ) {
- require $SITE_CONFIG_FILE
- || die ("Couldn't load RT config file '$SITE_CONFIG_FILE'\n$@");
- }
- require $CORE_CONFIG_FILE
- || die ("Couldn't load RT config file '$CORE_CONFIG_FILE'\n$@");
- RT::I18N->Init;
-}
-
-=item Init
-
- Conenct to the database, set up logging.
-
-=cut
-
-sub Init {
- require RT::Handle;
- #Get a database connection
- unless ($Handle && $Handle->dbh->ping) {
- $Handle = RT::Handle->new();
- }
- $Handle->Connect();
-
- #RT's system user is a genuine database user. its id lives here
- $SystemUser = new RT::CurrentUser();
- $SystemUser->LoadByName('RT_System');
-
- #RT's "nobody user" is a genuine database user. its ID lives here.
- $Nobody = new RT::CurrentUser();
- $Nobody->LoadByName('Nobody');
-
- $System = RT::System->new();
-
- InitLogging();
-}
-
-=head2 InitLogging
-
-Create the RT::Logger object.
-
-=cut
-sub InitLogging {
-
- # We have to set the record seperator ($, man perlvar)
- # or Log::Dispatch starts getting
- # really pissy, as some other module we use unsets it.
-
- $, = '';
- use Log::Dispatch 1.6;
-
- unless ($RT::Logger) {
-
- $RT::Logger=Log::Dispatch->new();
-
- if ($RT::LogToFile) {
-
- unless (-d $RT::LogDir && -w $RT::LogDir) {
- # localizing here would be hard when we don't have a current user yet
- # die $self->loc("Log directory [_1] not found or couldn't be written.\n RT can't run.", $RT::LogDir);
- die ("Log directory $RT::LogDir not found or couldn't be written.\n RT can't run.");
- }
-
- my $filename;
- if ($RT::LogToFileNamed =~ m![/\\]!) {
- # looks like an absolute path.
- $filename = $RT::LogToFileNamed;
- }
- else {
- $filename = "$RT::LogDir/$RT::LogToFileNamed";
- }
- require Log::Dispatch::File;
-
-
- $RT::Logger->add(Log::Dispatch::File->new
- ( name=>'rtlog',
- min_level=> $RT::LogToFile,
- filename=> $filename,
- mode=>'append',
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
- return "[".gmtime(time)."] [".$p{level}."]: $p{message} ($filename:$line)\n"}
-
-
-
- ));
- }
- if ($RT::LogToScreen) {
- require Log::Dispatch::Screen;
- $RT::Logger->add(Log::Dispatch::Screen->new
- ( name => 'screen',
- min_level => $RT::LogToScreen,
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
- return "[".gmtime(time)."] [".$p{level}."]: $p{message} ($filename:$line)\n"
- },
-
- stderr => 1
- ));
- }
- if ($RT::LogToSyslog) {
- require Log::Dispatch::Syslog;
- $RT::Logger->add(Log::Dispatch::Syslog->new
- ( name => 'syslog',
- ident => 'RT',
- min_level => $RT::LogToSyslog,
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
-
- # syswrite() cannot take utf8; turn it off here.
- Encode::_utf8_off($p{message});
-
- if ($p{level} eq 'debug') {
-
- return "$p{message}\n" }
- else {
- return "$p{message} ($filename:$line)\n"}
- },
-
- stderr => 1
- ));
- }
-
- }
-
-# {{{ Signal handlers
-
-## This is the default handling of warnings and die'ings in the code
-## (including other used modules - maybe except for errors catched by
-## Mason). It will log all problems through the standard logging
-## mechanism (see above).
-
-$SIG{__WARN__} = sub {$RT::Logger->warning($_[0])};
-
-#When we call die, trap it and log->crit with the value of the die.
-
-$SIG{__DIE__} = sub {
- unless ($^S || !defined $^S ) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("$_[0]");
- exit(-1);
- }
- else {
- #Get out of here if we're in an eval
- die $_[0];
- }
-};
-
-# }}}
-
-}
-
-# }}}
-
-
-sub SystemUser {
- return($SystemUser);
-}
-
-sub Nobody {
- return ($Nobody);
-}
-
-
-=head2 DropSetGIDPermissions
-
-Drops setgid permissions.
-
-=cut
-
-sub DropSetGIDPermissions {
- # Now that we got the config read in, we have the database
- # password and don't need to be setgid
- # make the effective group the real group
- $) = $(;
-}
-
-
-=head1 SYNOPSIS
-
-=head1 BUGS
-
-=head1 SEE ALSO
-
-
-=begin testing
-
-
-ok ($RT::Nobody->Name() eq 'Nobody', "Nobody is nobody");
-ok ($RT::Nobody->Name() ne 'root', "Nobody isn't named root");
-ok ($RT::SystemUser->Name() eq 'RT_System', "The system user is RT_System");
-ok ($RT::SystemUser->Name() ne 'noname', "The system user isn't noname");
-
-
-=end testing
-
-=cut
-
-eval "require RT_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT_Local.pm});
-
-1;
diff --git a/rt/lib/RT.pm.in b/rt/lib/RT.pm.in
deleted file mode 100644
index f7c882b..0000000
--- a/rt/lib/RT.pm.in
+++ /dev/null
@@ -1,369 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT;
-use strict;
-use RT::I18N;
-use RT::CurrentUser;
-use RT::System;
-
-use vars qw($VERSION $System $SystemUser $Nobody $Handle $Logger
- $CORE_CONFIG_FILE
- $SITE_CONFIG_FILE
- $BasePath
- $EtcPath
- $VarPath
- $LocalPath
- $LocalEtcPath
- $LocalLexiconPath
- $LogDir
- $BinPath
- $MasonComponentRoot
- $MasonLocalComponentRoot
- $MasonDataDir
- $MasonSessionDir
-);
-
-$VERSION = '@RT_VERSION_MAJOR@.@RT_VERSION_MINOR@.@RT_VERSION_PATCH@';
-$CORE_CONFIG_FILE = "@CONFIG_FILE_PATH@/RT_Config.pm";
-$SITE_CONFIG_FILE = "@CONFIG_FILE_PATH@/RT_SiteConfig.pm";
-
-@DATABASE_ENV_PREF@
-
-$BasePath = '@RT_PATH@';
-
-$EtcPath = '@RT_ETC_PATH@';
-$BinPath = '@RT_BIN_PATH@';
-$VarPath = '@RT_VAR_PATH@';
-$LocalPath = '@RT_LOCAL_PATH@';
-$LocalEtcPath = '@LOCAL_ETC_PATH@';
-$LocalLexiconPath = '@LOCAL_LEXICON_PATH@';
-
-# $MasonComponentRoot is where your rt instance keeps its mason html files
-
-$MasonComponentRoot = '@MASON_HTML_PATH@';
-
-# $MasonLocalComponentRoot is where your rt instance keeps its site-local
-# mason html files.
-
-$MasonLocalComponentRoot = '@MASON_LOCAL_HTML_PATH@';
-
-# $MasonDataDir Where mason keeps its datafiles
-
-$MasonDataDir = '@MASON_DATA_PATH@';
-
-# RT needs to put session data (for preserving state between connections
-# via the web interface)
-$MasonSessionDir = '@MASON_SESSION_PATH@';
-
-
-
-=head1 NAME
-
-RT - Request Tracker
-
-=head1 SYNOPSIS
-
-A fully featured request tracker package
-
-=head1 DESCRIPTION
-
-=head2 LoadConfig
-
-Load RT's config file. First, the site configuration file
-(C<RT_SiteConfig.pm>) is loaded, in order to establish overall site
-settings like hostname and name of RT instance. Then, the core
-configuration file (C<RT_Config.pm>) is loaded to set fallback values
-for all settings; it bases some values on settings from the site
-configuration file.
-
-In order for the core configuration to not override the site's
-settings, the function C<Set> is used; it only sets values if they
-have not been set already.
-
-=cut
-
-sub LoadConfig {
- local *Set = sub { $_[0] = $_[1] unless defined $_[0] };
- if ( -f "$SITE_CONFIG_FILE" ) {
- require $SITE_CONFIG_FILE
- || die ("Couldn't load RT config file '$SITE_CONFIG_FILE'\n$@");
- }
- require $CORE_CONFIG_FILE
- || die ("Couldn't load RT config file '$CORE_CONFIG_FILE'\n$@");
- RT::I18N->Init;
-}
-
-=head2 Init
-
-Conenct to the database, set up logging.
-
-=cut
-
-sub Init {
-
- #Get a database connection
- ConnectToDatabase();
-
- #RT's system user is a genuine database user. its id lives here
- $SystemUser = new RT::CurrentUser();
- $SystemUser->LoadByName('RT_System');
-
- #RT's "nobody user" is a genuine database user. its ID lives here.
- $Nobody = new RT::CurrentUser();
- $Nobody->LoadByName('Nobody');
-
- $System = RT::System->new();
-
- InitClasses();
- InitLogging();
-}
-
-
-=head2 ConnectToDatabase
-
-Get a database connection
-
-=cut
-
-sub ConnectToDatabase {
- require RT::Handle;
- unless ($Handle && $Handle->dbh && $Handle->dbh->ping) {
- $Handle = RT::Handle->new();
- }
- $Handle->Connect();
-}
-
-=head2 InitLogging
-
-Create the RT::Logger object.
-
-=cut
-
-sub InitLogging {
-
- # We have to set the record separator ($, man perlvar)
- # or Log::Dispatch starts getting
- # really pissy, as some other module we use unsets it.
-
- $, = '';
- use Log::Dispatch 1.6;
-
- unless ($RT::Logger) {
-
- $RT::Logger=Log::Dispatch->new();
-
- if ($RT::LogToFile) {
- my ($filename, $logdir);
- if ($RT::LogToFileNamed =~ m![/\\]!) {
- # looks like an absolute path.
- $filename = $RT::LogToFileNamed;
- ($logdir) = $RT::LogToFileNamed =~ m!^(.*[/\\])!;
- }
- else {
- $filename = "$RT::LogDir/$RT::LogToFileNamed";
- $logdir = $RT::LogDir;
- }
-
- unless ( -d $logdir && ( ( -f $filename && -w $filename ) || -w $logdir ) ) {
- # localizing here would be hard when we don't have a current user yet
- # die $self->loc("Log directory [_1] not found or couldn't be written.\n RT can't run.", $RT::LogDir);
- die ("Log file $filename couldn't be written or created.\n RT can't run.");
- }
-
- package Log::Dispatch::File;
- require Log::Dispatch::File;
-
-
- $RT::Logger->add(Log::Dispatch::File->new
- ( name=>'rtlog',
- min_level=> $RT::LogToFile,
- filename=> $filename,
- mode=>'append',
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
- return "[".gmtime(time)."] [".$p{level}."]: $p{message} ($filename:$line)\n"}
-
-
-
- ));
- }
- if ($RT::LogToScreen) {
- package Log::Dispatch::Screen;
- require Log::Dispatch::Screen;
- $RT::Logger->add(Log::Dispatch::Screen->new
- ( name => 'screen',
- min_level => $RT::LogToScreen,
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
- return "[".gmtime(time)."] [".$p{level}."]: $p{message} ($filename:$line)\n"
- },
-
- stderr => 1
- ));
- }
- if ($RT::LogToSyslog) {
- package Log::Dispatch::Syslog;
- require Log::Dispatch::Syslog;
- $RT::Logger->add(Log::Dispatch::Syslog->new
- ( name => 'syslog',
- ident => 'RT',
- min_level => $RT::LogToSyslog,
- callbacks => sub { my %p = @_;
- my ($package, $filename, $line) = caller(5);
-
- # syswrite() cannot take utf8; turn it off here.
- Encode::_utf8_off($p{message});
-
- if ($p{level} eq 'debug') {
-
- return "$p{message}\n" }
- else {
- return "$p{message} ($filename:$line)\n"}
- },
-
- stderr => 1,
- @RT::LogToSyslogConf
- ));
- }
-
- }
-
-# {{{ Signal handlers
-
-## This is the default handling of warnings and die'ings in the code
-## (including other used modules - maybe except for errors catched by
-## Mason). It will log all problems through the standard logging
-## mechanism (see above).
-
-$SIG{__WARN__} = sub {
- my $w = shift;
- $w =~ s/(?:\r*\n)+$//;
- # The 'wide character' warnings has to be silenced for now, at least
- # until HTML::Mason offers a sane way to process both raw output and
- # unicode strings.
- $RT::Logger->warning($w) if index($w, 'Wide character in ') != 0;
-};
-
-#When we call die, trap it and log->crit with the value of the die.
-
-$SIG{__DIE__} = sub {
- unless ($^S || !defined $^S ) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("$_[0]");
- exit(-1);
- }
- else {
- #Get out of here if we're in an eval
- die $_[0];
- }
-};
-
-# }}}
-
-}
-
-=head2 InitClasses
-
-Load all modules that define base classes
-
-=cut
-
-sub InitClasses {
- require RT::Tickets;
- require RT::Transactions;
- require RT::Users;
- require RT::CurrentUser;
- require RT::Templates;
- require RT::Queues;
- require RT::ScripActions;
- require RT::ScripConditions;
- require RT::Scrips;
- require RT::Groups;
- require RT::GroupMembers;
- require RT::CustomFields;
- require RT::CustomFieldValues;
- require RT::ObjectCustomFields;
- require RT::ObjectCustomFieldValues;
-}
-
-# }}}
-
-
-sub SystemUser {
- return($SystemUser);
-}
-
-sub Nobody {
- return ($Nobody);
-}
-
-=head1 BUGS
-
-Please report them to rt-bugs@fsck.com, if you know what's broken and have at least
-some idea of what needs to be fixed.
-
-If you're not sure what's going on, report them rt-devel@lists.bestpractical.com.
-
-=head1 SEE ALSO
-
-L<RT::StyleGuide>
-L<DBIx::SearchBuilder>
-
-=begin testing
-
-ok ($RT::Nobody->Name() eq 'Nobody', "Nobody is nobody");
-ok ($RT::Nobody->Name() ne 'root', "Nobody isn't named root");
-ok ($RT::SystemUser->Name() eq 'RT_System', "The system user is RT_System");
-ok ($RT::SystemUser->Name() ne 'noname', "The system user isn't noname");
-
-=end testing
-
-=cut
-
-eval "require RT_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT_Local.pm});
-
-1;
diff --git a/rt/lib/RT/ACE.pm b/rt/lib/RT/ACE.pm
deleted file mode 100755
index 1501a12..0000000
--- a/rt/lib/RT/ACE.pm
+++ /dev/null
@@ -1,304 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::ACE
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::ACE;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('ACL');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(25) 'PrincipalType'.
- int(11) 'PrincipalId'.
- varchar(25) 'RightName'.
- varchar(25) 'ObjectType'.
- int(11) 'ObjectId'.
- int(11) 'DelegatedBy'.
- int(11) 'DelegatedFrom'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- PrincipalType => '',
- PrincipalId => '0',
- RightName => '',
- ObjectType => '',
- ObjectId => '0',
- DelegatedBy => '0',
- DelegatedFrom => '0',
-
- @_);
- $self->SUPER::Create(
- PrincipalType => $args{'PrincipalType'},
- PrincipalId => $args{'PrincipalId'},
- RightName => $args{'RightName'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
- DelegatedBy => $args{'DelegatedBy'},
- DelegatedFrom => $args{'DelegatedFrom'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item PrincipalType
-
-Returns the current value of PrincipalType.
-(In the database, PrincipalType is stored as varchar(25).)
-
-
-
-=item SetPrincipalType VALUE
-
-
-Set PrincipalType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, PrincipalType will be stored as a varchar(25).)
-
-
-=cut
-
-
-=item PrincipalId
-
-Returns the current value of PrincipalId.
-(In the database, PrincipalId is stored as int(11).)
-
-
-
-=item SetPrincipalId VALUE
-
-
-Set PrincipalId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, PrincipalId will be stored as a int(11).)
-
-
-=cut
-
-
-=item RightName
-
-Returns the current value of RightName.
-(In the database, RightName is stored as varchar(25).)
-
-
-
-=item SetRightName VALUE
-
-
-Set RightName to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, RightName will be stored as a varchar(25).)
-
-
-=cut
-
-
-=item ObjectType
-
-Returns the current value of ObjectType.
-(In the database, ObjectType is stored as varchar(25).)
-
-
-
-=item SetObjectType VALUE
-
-
-Set ObjectType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectType will be stored as a varchar(25).)
-
-
-=cut
-
-
-=item ObjectId
-
-Returns the current value of ObjectId.
-(In the database, ObjectId is stored as int(11).)
-
-
-
-=item SetObjectId VALUE
-
-
-Set ObjectId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectId will be stored as a int(11).)
-
-
-=cut
-
-
-=item DelegatedBy
-
-Returns the current value of DelegatedBy.
-(In the database, DelegatedBy is stored as int(11).)
-
-
-
-=item SetDelegatedBy VALUE
-
-
-Set DelegatedBy to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, DelegatedBy will be stored as a int(11).)
-
-
-=cut
-
-
-=item DelegatedFrom
-
-Returns the current value of DelegatedFrom.
-(In the database, DelegatedFrom is stored as int(11).)
-
-
-
-=item SetDelegatedFrom VALUE
-
-
-Set DelegatedFrom to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, DelegatedFrom will be stored as a int(11).)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- PrincipalType =>
- {read => 1, write => 1, type => 'varchar(25)', default => ''},
- PrincipalId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- RightName =>
- {read => 1, write => 1, type => 'varchar(25)', default => ''},
- ObjectType =>
- {read => 1, write => 1, type => 'varchar(25)', default => ''},
- ObjectId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- DelegatedBy =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- DelegatedFrom =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
-
- }
-};
-
-
- eval "require RT::ACE_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ACE_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ACE_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ACE_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ACE_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ACE_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ACE_Overlay, RT::ACE_Vendor, RT::ACE_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ACE_Overlay.pm b/rt/lib/RT/ACE_Overlay.pm
deleted file mode 100644
index 75e39d0..0000000
--- a/rt/lib/RT/ACE_Overlay.pm
+++ /dev/null
@@ -1,958 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 SYNOPSIS
-
- use RT::ACE;
- my $ace = new RT::ACE($CurrentUser);
-
-
-=head1 DESCRIPTION
-
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::ACE);
-
-=end testing
-
-=cut
-
-
-package RT::ACE;
-
-use strict;
-no warnings qw(redefine);
-use RT::Principals;
-use RT::Queues;
-use RT::Groups;
-
-use vars qw (
- %LOWERCASERIGHTNAMES
- %OBJECT_TYPES
- %TICKET_METAPRINCIPALS
-);
-
-
-# {{{ Descriptions of rights
-
-=head1 Rights
-
-# Queue rights are the sort of queue rights that can only be granted
-# to real people or groups
-
-
-=begin testing
-
-my $Queue = RT::Queue->new($RT::SystemUser);
-
-is ($Queue->AvailableRights->{'DeleteTicket'} , 'Delete tickets', "Found the delete ticket right");
-is ($RT::System->AvailableRights->{'SuperUser'}, 'Do anything and everything', "Found the superuser right");
-
-
-=end testing
-
-=cut
-
-
-
-
-# }}}
-
-# {{{ Descriptions of principals
-
-%TICKET_METAPRINCIPALS = (
- Owner => 'The owner of a ticket', # loc_pair
- Requestor => 'The requestor of a ticket', # loc_pair
- Cc => 'The CC of a ticket', # loc_pair
- AdminCc => 'The administrative CC of a ticket', # loc_pair
-);
-
-# }}}
-
-
-# {{{ sub LoadByValues
-
-=head2 LoadByValues PARAMHASH
-
-Load an ACE by specifying a paramhash with the following fields:
-
- PrincipalId => undef,
- PrincipalType => undef,
- RightName => undef,
-
- And either:
-
- Object => undef,
-
- OR
-
- ObjectType => undef,
- ObjectId => undef
-
-=cut
-
-sub LoadByValues {
- my $self = shift;
- my %args = ( PrincipalId => undef,
- PrincipalType => undef,
- RightName => undef,
- Object => undef,
- ObjectId => undef,
- ObjectType => undef,
- @_ );
-
- my $princ_obj;
- ( $princ_obj, $args{'PrincipalType'} ) =
- $self->_CanonicalizePrincipal( $args{'PrincipalId'},
- $args{'PrincipalType'} );
-
- unless ( $princ_obj->id ) {
- return ( 0,
- $self->loc( 'Principal [_1] not found.', $args{'PrincipalId'} )
- );
- }
-
- my ($object, $object_type, $object_id) = $self->_ParseObjectArg( %args );
- unless( $object ) {
- return ( 0, $self->loc("System error. Right not granted.") );
- }
-
- $self->LoadByCols( PrincipalId => $princ_obj->Id,
- PrincipalType => $args{'PrincipalType'},
- RightName => $args{'RightName'},
- ObjectType => $object_type,
- ObjectId => $object_id);
-
- #If we couldn't load it.
- unless ( $self->Id ) {
- return ( 0, $self->loc("ACE not found") );
- }
-
- # if we could
- return ( $self->Id, $self->loc("Right Loaded") );
-
-}
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create <PARAMS>
-
-PARAMS is a parameter hash with the following elements:
-
- PrincipalId => The id of an RT::Principal object
- PrincipalType => "User" "Group" or any Role type
- RightName => the name of a right. in any case
- DelegatedBy => The Principal->Id of the user delegating the right
- DelegatedFrom => The id of the ACE which this new ACE is delegated from
-
-
- Either:
-
- Object => An object to create rights for. ususally, an RT::Queue or RT::Group
- This should always be a DBIx::SearchBuilder::Record subclass
-
- OR
-
- ObjectType => the type of the object in question (ref ($object))
- ObjectId => the id of the object in question $object->Id
-
-
-
- Returns a tuple of (STATUS, MESSAGE); If the call succeeded, STATUS is true. Otherwise it's false.
-
-
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = ( PrincipalId => undef,
- PrincipalType => undef,
- RightName => undef,
- Object => undef,
- @_ );
- #if we haven't specified any sort of right, we're talking about a global right
- if (!defined $args{'Object'} && !defined $args{'ObjectId'} && !defined $args{'ObjectType'}) {
- $args{'Object'} = $RT::System;
- }
- ($args{'Object'}, $args{'ObjectType'}, $args{'ObjectId'}) = $self->_ParseObjectArg( %args );
- unless( $args{'Object'} ) {
- return ( 0, $self->loc("System error. Right not granted.") );
- }
-
- # {{{ Validate the principal
- my $princ_obj;
- ( $princ_obj, $args{'PrincipalType'} ) =
- $self->_CanonicalizePrincipal( $args{'PrincipalId'},
- $args{'PrincipalType'} );
-
- unless ( $princ_obj->id ) {
- return ( 0,
- $self->loc( 'Principal [_1] not found.', $args{'PrincipalId'} )
- );
- }
-
- # }}}
-
- # {{{ Check the ACL
-
- if (ref( $args{'Object'}) eq 'RT::Group' ) {
- unless ( $self->CurrentUser->HasRight( Object => $args{'Object'},
- Right => 'AdminGroup' )
- ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
-
- else {
- unless ( $self->CurrentUser->HasRight( Object => $args{'Object'}, Right => 'ModifyACL' )) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- # }}}
-
- # {{{ Canonicalize and check the right name
- unless ( $args{'RightName'} ) {
- return ( 0, $self->loc('Invalid right') );
- }
-
- $args{'RightName'} = $self->CanonicalizeRightName( $args{'RightName'} );
-
- #check if it's a valid RightName
- if ( ref ($args{'Object'} eq 'RT::Queue' )) {
- unless ( exists $args{'Object'}->AvailableRights->{ $args{'RightName'} } ) {
- $RT::Logger->warning("Couldn't validate right name". $args{'RightName'});
- return ( 0, $self->loc('Invalid right') );
- }
- }
- elsif ( ref ($args{'Object'} eq 'RT::Group' )) {
- unless ( exists $args{'Object'}->AvailableRights->{ $args{'RightName'} } ) {
- $RT::Logger->warning("Couldn't validate group right name". $args{'RightName'});
- return ( 0, $self->loc('Invalid right') );
- }
- }
- elsif ( ref ($args{'Object'} eq 'RT::System' )) {
- my $q = RT::Queue->new($self->CurrentUser);
- my $g = RT::Group->new($self->CurrentUser);
-
- unless (( exists $g->AvailableRights->{ $args{'RightName'} } )
- || ( exists $g->AvailableRights->{ $args{'RightName'} } )
- || ( exists $RT::System->AvailableRights->{ $args{'RightName'} } ) ) {
- $RT::Logger->warning("Couldn't validate system right name - ". $args{'RightName'});
- return ( 0, $self->loc('Invalid right') );
- }
- }
-
- # }}}
-
- # Make sure the right doesn't already exist.
- $self->LoadByCols( PrincipalId => $princ_obj->id,
- PrincipalType => $args{'PrincipalType'},
- RightName => $args{'RightName'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
- DelegatedBy => 0,
- DelegatedFrom => 0 );
- if ( $self->Id ) {
- return ( 0, $self->loc('That principal already has that right') );
- }
-
- my $id = $self->SUPER::Create( PrincipalId => $princ_obj->id,
- PrincipalType => $args{'PrincipalType'},
- RightName => $args{'RightName'},
- ObjectType => ref( $args{'Object'} ),
- ObjectId => $args{'Object'}->id,
- DelegatedBy => 0,
- DelegatedFrom => 0 );
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- RT::Principal->InvalidateACLCache();
-
- if ( $id > 0 ) {
- return ( $id, $self->loc('Right Granted') );
- }
- else {
- return ( 0, $self->loc('System error. Right not granted.') );
- }
-}
-
-# }}}
-
-# {{{ sub Delegate
-
-=head2 Delegate <PARAMS>
-
-This routine delegates the current ACE to a principal specified by the
-B<PrincipalId> parameter.
-
-Returns an error if the current user doesn't have the right to be delegated
-or doesn't have the right to delegate rights.
-
-Always returns a tuple of (ReturnValue, Message)
-
-=begin testing
-
-use_ok(RT::User);
-my $user_a = RT::User->new($RT::SystemUser);
-$user_a->Create( Name => 'DelegationA', Privileged => 1);
-ok ($user_a->Id, "Created delegation user a");
-
-my $user_b = RT::User->new($RT::SystemUser);
-$user_b->Create( Name => 'DelegationB', Privileged => 1);
-ok ($user_b->Id, "Created delegation user b");
-
-
-use_ok(RT::Queue);
-my $q = RT::Queue->new($RT::SystemUser);
-$q->Create(Name =>'DelegationTest');
-ok ($q->Id, "Created a delegation test queue");
-
-
-#------ First, we test whether a user can delegate a right that's been granted to him personally
-my ($val, $msg) = $user_a->PrincipalObj->GrantRight(Object => $RT::System, Right => 'AdminOwnPersonalGroups');
-ok($val, $msg);
-
-($val, $msg) = $user_a->PrincipalObj->GrantRight(Object =>$q, Right => 'OwnTicket');
-ok($val, $msg);
-
-ok($user_a->HasRight( Object => $RT::System, Right => 'AdminOwnPersonalGroups') ,"user a has the right 'AdminOwnPersonalGroups' directly");
-
-my $a_delegates = RT::Group->new($user_a);
-$a_delegates->CreatePersonalGroup(Name => 'Delegates');
-ok( $a_delegates->Id ,"user a creates a personal group 'Delegates'");
-ok( $a_delegates->AddMember($user_b->PrincipalId) ,"user a adds user b to personal group 'delegates'");
-
-ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to OwnTicket' in queue 'DelegationTest'");
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a has the right to 'OwnTicket' in queue 'DelegationTest'");
-ok(!$user_a->HasRight( Object => $RT::System, Right => 'DelegateRights') ,"user a does not have the right 'delegate rights'");
-
-
-my $own_ticket_ace = RT::ACE->new($user_a);
-my $user_a_equiv_group = RT::Group->new($user_a);
-$user_a_equiv_group->LoadACLEquivalenceGroup($user_a->PrincipalObj);
-ok ($user_a_equiv_group->Id, "Loaded the user A acl equivalence group");
-my $user_b_equiv_group = RT::Group->new($user_b);
-$user_b_equiv_group->LoadACLEquivalenceGroup($user_b->PrincipalObj);
-ok ($user_b_equiv_group->Id, "Loaded the user B acl equivalence group");
-$own_ticket_ace->LoadByValues( PrincipalType => 'Group', PrincipalId => $user_a_equiv_group->PrincipalId, Object=>$q, RightName => 'OwnTicket');
-
-ok ($own_ticket_ace->Id, "Found the ACE we want to test with for now");
-
-
-($val, $msg) = $own_ticket_ace->Delegate(PrincipalId => $a_delegates->PrincipalId) ;
-ok( !$val ,"user a tries and fails to delegate the right 'ownticket' in queue 'DelegationTest' to personal group 'delegates' - $msg");
-
-
-($val, $msg) = $user_a->PrincipalObj->GrantRight( Right => 'DelegateRights');
-ok($val, "user a is granted the right to 'delegate rights' - $msg");
-
-ok($user_a->HasRight( Object => $RT::System, Right => 'DelegateRights') ,"user a has the right 'AdminOwnPersonalGroups' directly");
-
-($val, $msg) = $own_ticket_ace->Delegate(PrincipalId => $a_delegates->PrincipalId) ;
-
-ok( $val ,"user a tries and succeeds to delegate the right 'ownticket' in queue 'DelegationTest' to personal group 'delegates' - $msg");
-ok( $user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-my $delegated_ace = RT::ACE->new($user_a);
-$delegated_ace->LoadByValues ( Object => $q, RightName => 'OwnTicket', PrincipalType => 'Group',
-PrincipalId => $a_delegates->PrincipalId, DelegatedBy => $user_a->PrincipalId, DelegatedFrom => $own_ticket_ace->Id);
-ok ($delegated_ace->Id, "Found the delegated ACE");
-
-ok( $a_delegates->DeleteMember($user_b->PrincipalId) ,"user a removes b from pg 'delegates'");
-ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-ok( $a_delegates->AddMember($user_b->PrincipalId) ,"user a adds user b to personal group 'delegates'");
-ok( $user_b->HasRight(Right => 'OwnTicket', Object=> $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-ok( $delegated_ace->Delete ,"user a revokes pg 'delegates' right to 'OwnTickets' in queue 'DelegationTest'");
-ok( ! $user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-
-($val, $msg) = $own_ticket_ace->Delegate(PrincipalId => $a_delegates->PrincipalId) ;
-ok( $val ,"user a delegates pg 'delegates' right to 'OwnTickets' in queue 'DelegationTest' - $msg");
-
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a does not have the right to own tickets in queue 'DelegationTest'");
-
-($val, $msg) = $user_a->PrincipalObj->RevokeRight(Object=>$q, Right => 'OwnTicket');
-ok($val, "Revoked user a's right to own tickets in queue 'DelegationTest". $msg);
-
-ok( !$user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a does not have the right to own tickets in queue 'DelegationTest'");
-
- ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-
-($val, $msg) = $user_a->PrincipalObj->GrantRight(Object=>$q, Right => 'OwnTicket');
-ok($val, $msg);
-
- ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a has the right to own tickets in queue 'DelegationTest'");
-
- ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-
-# {{{ get back to a known clean state
-($val, $msg) = $user_a->PrincipalObj->RevokeRight( Object => $q, Right => 'OwnTicket');
-ok($val, "Revoked user a's right to own tickets in queue 'DelegationTest -". $msg);
-ok( !$user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"make sure that user a can't own tickets in queue 'DelegationTest'");
-# }}}
-
-
-# {{{ Set up some groups and membership
-my $del1 = RT::Group->new($RT::SystemUser);
-($val, $msg) = $del1->CreateUserDefinedGroup(Name => 'Del1');
-ok( $val ,"create a group del1 - $msg");
-
-my $del2 = RT::Group->new($RT::SystemUser);
-($val, $msg) = $del2->CreateUserDefinedGroup(Name => 'Del2');
-ok( $val ,"create a group del2 - $msg");
-($val, $msg) = $del1->AddMember($del2->PrincipalId);
-ok( $val,"make del2 a member of del1 - $msg");
-
-my $del2a = RT::Group->new($RT::SystemUser);
-($val, $msg) = $del2a->CreateUserDefinedGroup(Name => 'Del2a');
-ok( $val ,"create a group del2a - $msg");
-($val, $msg) = $del2->AddMember($del2a->PrincipalId);
-ok($val ,"make del2a a member of del2 - $msg");
-
-my $del2b = RT::Group->new($RT::SystemUser);
-($val, $msg) = $del2b->CreateUserDefinedGroup(Name => 'Del2b');
-ok( $val ,"create a group del2b - $msg");
-($val, $msg) = $del2->AddMember($del2b->PrincipalId);
-ok($val ,"make del2b a member of del2 - $msg");
-
-($val, $msg) = $del2->AddMember($user_a->PrincipalId) ;
-ok($val,"make 'user a' a member of del2 - $msg");
-
-($val, $msg) = $del2b->AddMember($user_a->PrincipalId) ;
-ok($val,"make 'user a' a member of del2b - $msg");
-
-# }}}
-
-# {{{ Grant a right to a group and make sure that a submember can delegate the right and that it does not get yanked
-# when a user is removed as a submember, when they're a sumember through another path
-($val, $msg) = $del1->PrincipalObj->GrantRight( Object=> $q, Right => 'OwnTicket');
-ok( $val ,"grant del1 the right to 'OwnTicket' in queue 'DelegationTest' - $msg");
-
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"make sure that user a can own tickets in queue 'DelegationTest'");
-
-my $group_ace= RT::ACE->new($user_a);
-$group_ace->LoadByValues( PrincipalType => 'Group', PrincipalId => $del1->PrincipalId, Object => $q, RightName => 'OwnTicket');
-
-ok ($group_ace->Id, "Found the ACE we want to test with for now");
-
-($val, $msg) = $group_ace->Delegate(PrincipalId => $a_delegates->PrincipalId);
-
-ok( $val ,"user a tries and succeeds to delegate the right 'ownticket' in queue 'DelegationTest' to personal group 'delegates' - $msg");
-ok( $user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-
-
-($val, $msg) = $del2b->DeleteMember($user_a->PrincipalId);
-ok( $val ,"remove user a from group del2b - $msg");
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a has the right to own tickets in queue 'DelegationTest'");
-ok( $user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-
-# }}}
-
-# {{{ When a user is removed froom a group by the only path they're in there by, make sure the delegations go away
-($val, $msg) = $del2->DeleteMember($user_a->PrincipalId);
-ok( $val ,"remove user a from group del2 - $msg");
-ok( !$user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a does not have the right to own tickets in queue 'DelegationTest' ");
-ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest' ");
-# }}}
-
-($val, $msg) = $del2->AddMember($user_a->PrincipalId);
-ok( $val ,"make user a a member of group del2 - $msg");
-
-($val, $msg) = $del2->PrincipalObj->GrantRight(Object=>$q, Right => 'OwnTicket');
-ok($val, "grant the right 'own tickets' in queue 'DelegationTest' to group del2 - $msg");
-
-my $del2_right = RT::ACE->new($user_a);
-$del2_right->LoadByValues( PrincipalId => $del2->PrincipalId, PrincipalType => 'Group', Object => $q, RightName => 'OwnTicket');
-ok ($del2_right->Id, "Found the right");
-
-($val, $msg) = $del2_right->Delegate(PrincipalId => $a_delegates->PrincipalId);
-ok( $val ,"user a tries and succeeds to delegate the right 'ownticket' in queue 'DelegationTest' gotten via del2 to personal group 'delegates' - $msg");
-
-# They have it via del1 and del2
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-
-
-($val, $msg) = $del2->PrincipalObj->RevokeRight(Object=>$q, Right => 'OwnTicket');
-ok($val, "revoke the right 'own tickets' in queue 'DelegationTest' to group del2 - $msg");
-ok( $user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a does has the right to own tickets in queue 'DelegationTest' via del1");
-ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-
-($val, $msg) = $del2->PrincipalObj->GrantRight(Object=>$q, Right => 'OwnTicket');
-ok($val, "grant the right 'own tickets' in queue 'DelegationTest' to group del2 - $msg");
-
-
-$group_ace= RT::ACE->new($user_a);
-$group_ace->LoadByValues( PrincipalType => 'Group', PrincipalId => $del1->PrincipalId, Object=>$q, RightName => 'OwnTicket');
-
-ok ($group_ace->Id, "Found the ACE we want to test with for now");
-
-($val, $msg) = $group_ace->Delegate(PrincipalId => $a_delegates->PrincipalId);
-
-ok( $val ,"user a tries and succeeds to delegate the right 'ownticket' in queue 'DelegationTest' to personal group 'delegates' - $msg");
-
-ok( $user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b has the right to own tickets in queue 'DelegationTest'");
-
-($val, $msg) = $del2->DeleteMember($user_a->PrincipalId);
-ok( $val ,"remove user a from group del2 - $msg");
-
-ok( !$user_a->HasRight(Right => 'OwnTicket', Object => $q) ,"user a does not have the right to own tickets in queue 'DelegationTest'");
-
-ok( !$user_b->HasRight(Right => 'OwnTicket', Object => $q) ,"user b does not have the right to own tickets in queue 'DelegationTest'");
-
-
-
-=end testing
-
-=cut
-
-sub Delegate {
- my $self = shift;
- my %args = ( PrincipalId => undef,
- @_ );
-
- unless ( $self->Id ) {
- return ( 0, $self->loc("Right not loaded.") );
- }
- my $princ_obj;
- ( $princ_obj, $args{'PrincipalType'} ) =
- $self->_CanonicalizePrincipal( $args{'PrincipalId'},
- $args{'PrincipalType'} );
-
- unless ( $princ_obj->id ) {
- return ( 0,
- $self->loc( 'Principal [_1] not found.', $args{'PrincipalId'} )
- );
- }
-
- # }}}
-
- # {{{ Check the ACL
-
- # First, we check to se if the user is delegating rights and
- # they have the permission to
- unless ( $self->CurrentUser->HasRight(Right => 'DelegateRights', Object => $self->Object) ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- unless ( $self->PrincipalObj->IsGroup ) {
- return ( 0, $self->loc("System Error") );
- }
- unless ( $self->PrincipalObj->Object->HasMemberRecursively(
- $self->CurrentUser->PrincipalObj
- )
- ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- # }}}
-
- my $concurrency_check = RT::ACE->new($RT::SystemUser);
- $concurrency_check->Load( $self->Id );
- unless ( $concurrency_check->Id ) {
- $RT::Logger->crit(
- "Trying to delegate a right which had already been deleted");
- return ( 0, $self->loc('Permission Denied') );
- }
-
- my $delegated_ace = RT::ACE->new( $self->CurrentUser );
-
- # Make sure the right doesn't already exist.
- $delegated_ace->LoadByCols( PrincipalId => $princ_obj->Id,
- PrincipalType => 'Group',
- RightName => $self->__Value('RightName'),
- ObjectType => $self->__Value('ObjectType'),
- ObjectId => $self->__Value('ObjectId'),
- DelegatedBy => $self->CurrentUser->PrincipalId,
- DelegatedFrom => $self->id );
- if ( $delegated_ace->Id ) {
- return ( 0, $self->loc('That principal already has that right') );
- }
- my $id = $delegated_ace->SUPER::Create(
- PrincipalId => $princ_obj->Id,
- PrincipalType => 'Group', # do we want to hardcode this?
- RightName => $self->__Value('RightName'),
- ObjectType => $self->__Value('ObjectType'),
- ObjectId => $self->__Value('ObjectId'),
- DelegatedBy => $self->CurrentUser->PrincipalId,
- DelegatedFrom => $self->id );
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
-
- if ( $id > 0 ) {
- return ( $id, $self->loc('Right Delegated') );
- }
- else {
- return ( 0, $self->loc('System error. Right not delegated.') );
- }
-}
-
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete { InsideTransaction => undef}
-
-Delete this object. This method should ONLY ever be called from RT::User or RT::Group (or from itself)
-If this is being called from within a transaction, specify a true value for the parameter InsideTransaction.
-Really, DBIx::SearchBuilder should use and/or fake subtransactions
-
-This routine will also recurse and delete any delegations of this right
-
-=cut
-
-sub Delete {
- my $self = shift;
-
- unless ( $self->Id ) {
- return ( 0, $self->loc('Right not loaded.') );
- }
-
- # A user can delete an ACE if the current user has the right to modify it and it's not a delegated ACE
- # or if it's a delegated ACE and it was delegated by the current user
- unless (
- ( $self->CurrentUser->HasRight(Right => 'ModifyACL', Object => $self->Object)
- && $self->__Value('DelegatedBy') == 0 )
- || ( $self->__Value('DelegatedBy') == $self->CurrentUser->PrincipalId )
- ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- $self->_Delete(@_);
-}
-
-# Helper for Delete with no ACL check
-sub _Delete {
- my $self = shift;
- my %args = ( InsideTransaction => undef,
- @_ );
-
- my $InsideTransaction = $args{'InsideTransaction'};
-
- $RT::Handle->BeginTransaction() unless $InsideTransaction;
-
- my $delegated_from_this = RT::ACL->new($RT::SystemUser);
- $delegated_from_this->Limit( FIELD => 'DelegatedFrom',
- OPERATOR => '=',
- VALUE => $self->Id );
-
- my $delete_succeeded = 1;
- my $submsg;
- while ( my $delegated_ace = $delegated_from_this->Next ) {
- ( $delete_succeeded, $submsg ) =
- $delegated_ace->_Delete( InsideTransaction => 1 );
- last unless ($delete_succeeded);
- }
-
- unless ($delete_succeeded) {
- $RT::Handle->Rollback() unless $InsideTransaction;
- return ( 0, $self->loc('Right could not be revoked') );
- }
-
- my ( $val, $msg ) = $self->SUPER::Delete(@_);
-
- # If we're revoking delegation rights (see above), we may need to
- # revoke all rights delegated by the recipient.
- if ($val and ($self->RightName() eq 'DelegateRights' or
- $self->RightName() eq 'SuperUser')) {
- $val = $self->PrincipalObj->_CleanupInvalidDelegations( InsideTransaction => 1 );
- }
-
- if ($val) {
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
- $RT::Handle->Commit() unless $InsideTransaction;
- return ( $val, $self->loc('Right revoked') );
- }
-
- $RT::Handle->Rollback() unless $InsideTransaction;
- return ( 0, $self->loc('Right could not be revoked') );
-}
-
-# }}}
-
-# {{{ sub _BootstrapCreate
-
-=head2 _BootstrapCreate
-
-Grant a right with no error checking and no ACL. this is _only_ for
-installation. If you use this routine without the author's explicit
-written approval, he will hunt you down and make you spend eternity
-translating mozilla's code into FORTRAN or intercal.
-
-If you think you need this routine, you've mistaken.
-
-=cut
-
-sub _BootstrapCreate {
- my $self = shift;
- my %args = (@_);
-
- # When bootstrapping, make sure we get the _right_ users
- if ( $args{'UserId'} ) {
- my $user = RT::User->new( $self->CurrentUser );
- $user->Load( $args{'UserId'} );
- delete $args{'UserId'};
- $args{'PrincipalId'} = $user->PrincipalId;
- $args{'PrincipalType'} = 'User';
- }
-
- my $id = $self->SUPER::Create(%args);
-
- if ( $id > 0 ) {
- return ($id);
- }
- else {
- $RT::Logger->err('System error. right not granted.');
- return (undef);
- }
-
-}
-
-# }}}
-
-# {{{ sub CanonicalizeRightName
-
-=head2 CanonicalizeRightName <RIGHT>
-
-Takes a queue or system right name in any case and returns it in
-the correct case. If it's not found, will return undef.
-
-=cut
-
-sub CanonicalizeRightName {
- my $self = shift;
- my $right = shift;
- $right = lc $right;
- if ( exists $LOWERCASERIGHTNAMES{"$right"} ) {
- return ( $LOWERCASERIGHTNAMES{"$right"} );
- }
- else {
- return (undef);
- }
-}
-
-# }}}
-
-
-# {{{ sub Object
-
-=head2 Object
-
-If the object this ACE applies to is a queue, returns the queue object.
-If the object this ACE applies to is a group, returns the group object.
-If it's the system object, returns undef.
-
-If the user has no rights, returns undef.
-
-=cut
-
-
-
-
-sub Object {
- my $self = shift;
-
- my $appliesto_obj;
-
- if ($self->__Value('ObjectType') && $OBJECT_TYPES{$self->__Value('ObjectType')} ) {
- $appliesto_obj = $self->__Value('ObjectType')->new($self->CurrentUser);
- unless (ref( $appliesto_obj) eq $self->__Value('ObjectType')) {
- return undef;
- }
- $appliesto_obj->Load( $self->__Value('ObjectId') );
- return ($appliesto_obj);
- }
- else {
- $RT::Logger->warning( "$self -> Object called for an object "
- . "of an unknown type:"
- . $self->ObjectType );
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ sub PrincipalObj
-
-=head2 PrincipalObj
-
-Returns the RT::Principal object for this ACE.
-
-=cut
-
-sub PrincipalObj {
- my $self = shift;
-
- my $princ_obj = RT::Principal->new( $self->CurrentUser );
- $princ_obj->Load( $self->__Value('PrincipalId') );
-
- unless ( $princ_obj->Id ) {
- $RT::Logger->err(
- "ACE " . $self->Id . " couldn't load its principal object" );
- }
- return ($princ_obj);
-
-}
-
-# }}}
-
-# {{{ ACL related methods
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
- return ( 0, $self->loc("ACEs can only be created and deleted.") );
-}
-
-# }}}
-
-# {{{ sub _Value
-
-sub _Value {
- my $self = shift;
-
- if ( $self->__Value('DelegatedBy') eq $self->CurrentUser->PrincipalId ) {
- return ( $self->__Value(@_) );
- }
- elsif ( $self->PrincipalObj->IsGroup
- && $self->PrincipalObj->Object->HasMemberRecursively(
- $self->CurrentUser->PrincipalObj
- )
- ) {
- return ( $self->__Value(@_) );
- }
- elsif ( $self->CurrentUser->HasRight(Right => 'ShowACL', Object => $self->Object) ) {
- return ( $self->__Value(@_) );
- }
- else {
- return undef;
- }
-}
-
-# }}}
-
-
-# }}}
-
-# {{{ _CanonicalizePrincipal
-
-=head2 _CanonicalizePrincipal (PrincipalId, PrincipalType)
-
-Takes a principal id and a principal type.
-
-If the principal is a user, resolves it to the proper acl equivalence group.
-Returns a tuple of (RT::Principal, PrincipalType) for the principal we really want to work with
-
-=cut
-
-sub _CanonicalizePrincipal {
- my $self = shift;
- my $princ_id = shift;
- my $princ_type = shift;
-
- my $princ_obj = RT::Principal->new($RT::SystemUser);
- $princ_obj->Load($princ_id);
-
- unless ( $princ_obj->Id ) {
- use Carp;
- $RT::Logger->crit(Carp::cluck);
- $RT::Logger->crit("Can't load a principal for id $princ_id");
- return ( $princ_obj, undef );
- }
-
- # Rights never get granted to users. they get granted to their
- # ACL equivalence groups
- if ( $princ_type eq 'User' ) {
- my $equiv_group = RT::Group->new( $self->CurrentUser );
- $equiv_group->LoadACLEquivalenceGroup($princ_obj);
- unless ( $equiv_group->Id ) {
- $RT::Logger->crit(
- "No ACL equiv group for princ " . $self->__Value('ObjectId') );
- return ( 0, $self->loc('System error. Right not granted.') );
- }
- $princ_obj = $equiv_group->PrincipalObj();
- $princ_type = 'Group';
-
- }
- return ( $princ_obj, $princ_type );
-}
-
-sub _ParseObjectArg {
- my $self = shift;
- my %args = ( Object => undef,
- ObjectId => undef,
- ObjectType => undef,
- @_ );
-
- if( $args{'Object'} && ($args{'ObjectId'} || $args{'ObjectType'}) ) {
- $RT::Logger->crit( "Method called with an ObjectType or an ObjectId and Object args" );
- return ();
- } elsif( $args{'Object'} && !UNIVERSAL::can($args{'Object'},'id') ) {
- $RT::Logger->crit( "Method called called Object that has no id method" );
- return ();
- } elsif( $args{'Object'} ) {
- my $obj = $args{'Object'};
- return ($obj, ref $obj, $obj->id);
- } elsif ( $args{'ObjectType'} ) {
- my $obj = $args{'ObjectType'}->new( $self->CurrentUser );
- $obj->Load( $args{'ObjectId'} );
- return ($obj, ref $obj, $obj->id);
- } else {
- $RT::Logger->crit( "Method called with wrong args" );
- return ();
- }
-}
-
-
-# }}}
-1;
diff --git a/rt/lib/RT/ACL.pm b/rt/lib/RT/ACL.pm
deleted file mode 100755
index 81f59c6..0000000
--- a/rt/lib/RT/ACL.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::ACL -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::ACL
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::ACL;
-
-use RT::SearchBuilder;
-use RT::ACE;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'ACL';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::ACE item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::ACE->new($self->CurrentUser));
-}
-
- eval "require RT::ACL_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ACL_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ACL_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ACL_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ACL_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ACL_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ACL_Overlay, RT::ACL_Vendor, RT::ACL_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ACL_Overlay.pm b/rt/lib/RT/ACL_Overlay.pm
deleted file mode 100644
index c20bfd3..0000000
--- a/rt/lib/RT/ACL_Overlay.pm
+++ /dev/null
@@ -1,372 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::ACL - collection of RT ACE objects
-
-=head1 SYNOPSIS
-
- use RT::ACL;
-my $ACL = new RT::ACL($CurrentUser);
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::ACL);
-
-=end testing
-
-=cut
-
-
-package RT::ACL;
-
-use strict;
-no warnings qw(redefine);
-
-
-=head2 Next
-
-Hand out the next ACE that was found
-
-=cut
-
-
-# {{{ LimitToObject
-
-=head2 LimitToObject $object
-
-Limit the ACL to rights for the object $object. It needs to be an RT::Record class.
-
-=cut
-
-sub LimitToObject {
- my $self = shift;
- my $obj = shift;
- unless ( defined($obj)
- && ref($obj)
- && UNIVERSAL::can( $obj, 'id' )
- && $obj->id )
- {
- return undef;
- }
- $self->Limit(
- FIELD => 'ObjectType',
- OPERATOR => '=',
- VALUE => ref($obj),
- ENTRYAGGREGATOR => 'OR'
- );
- $self->Limit(
- FIELD => 'ObjectId',
- OPERATOR => '=',
- VALUE => $obj->id,
- ENTRYAGGREGATOR => 'OR',
- QUOTEVALUE => 0
- );
-
-}
-
-# }}}
-
-# {{{ LimitNotObject
-
-=head2 LimitNotObject $object
-
-Limit the ACL to rights NOT on the object $object. $object needs to be
-an RT::Record class.
-
-=cut
-
-sub LimitNotObject {
- my $self = shift;
- my $obj = shift;
- unless ( defined($obj)
- && ref($obj)
- && UNIVERSAL::can( $obj, 'id' )
- && $obj->id )
- {
- return undef;
- }
- $self->Limit( FIELD => 'ObjectType',
- OPERATOR => '!=',
- VALUE => ref($obj),
- ENTRYAGGREGATOR => 'OR',
- SUBCLAUSE => $obj->id
- );
- $self->Limit( FIELD => 'ObjectId',
- OPERATOR => '!=',
- VALUE => $obj->id,
- ENTRYAGGREGATOR => 'OR',
- QUOTEVALUE => 0,
- SUBCLAUSE => $obj->id
- );
-}
-
-# }}}
-
-# {{{ LimitToPrincipal
-
-=head2 LimitToPrincipal { Type => undef, Id => undef, IncludeGroupMembership => undef }
-
-Limit the ACL to the principal with PrincipalId Id and PrincipalType Type
-
-Id is not optional.
-Type is.
-
-if IncludeGroupMembership => 1 is specified, ACEs which apply to the principal due to group membership will be included in the resultset.
-
-
-=cut
-
-sub LimitToPrincipal {
- my $self = shift;
- my %args = ( Type => undef,
- Id => undef,
- IncludeGroupMembership => undef,
- @_ );
- if ( $args{'IncludeGroupMembership'} ) {
- my $cgm = $self->NewAlias('CachedGroupMembers');
- $self->Join( ALIAS1 => 'main',
- FIELD1 => 'PrincipalId',
- ALIAS2 => $cgm,
- FIELD2 => 'GroupId' );
- $self->Limit( ALIAS => $cgm,
- FIELD => 'MemberId',
- OPERATOR => '=',
- VALUE => $args{'Id'},
- ENTRYAGGREGATOR => 'OR' );
- }
- else {
- if ( defined $args{'Type'} ) {
- $self->Limit( FIELD => 'PrincipalType',
- OPERATOR => '=',
- VALUE => $args{'Type'},
- ENTRYAGGREGATOR => 'OR' );
- }
- # if the principal id points to a user, we really want to point
- # to their ACL equivalence group. The machinations we're going through
- # lead me to start to suspect that we really want users and groups
- # to just be the same table. or _maybe_ that we want an object db.
- my $princ = RT::Principal->new($RT::SystemUser);
- $princ->Load($args{'Id'});
- if ($princ->PrincipalType eq 'User') {
- my $group = RT::Group->new($RT::SystemUser);
- $group->LoadACLEquivalenceGroup($princ);
- $args{'Id'} = $group->PrincipalId;
- }
- $self->Limit( FIELD => 'PrincipalId',
- OPERATOR => '=',
- VALUE => $args{'Id'},
- ENTRYAGGREGATOR => 'OR' );
- }
-}
-
-# }}}
-
-
-
-# {{{ ExcludeDelegatedRights
-
-=head2 ExcludeDelegatedRights
-
-Don't list rights which have been delegated.
-
-=cut
-
-sub ExcludeDelegatedRights {
- my $self = shift;
- $self->DelegatedBy(Id => 0);
- $self->DelegatedFrom(Id => 0);
-}
-# }}}
-
-# {{{ DelegatedBy
-
-=head2 DelegatedBy { Id => undef }
-
-Limit the ACL to rights delegated by the principal whose Principal Id is
-B<Id>
-
-Id is not optional.
-
-=cut
-
-sub DelegatedBy {
- my $self = shift;
- my %args = (
- Id => undef,
- @_
- );
- $self->Limit(
- FIELD => 'DelegatedBy',
- OPERATOR => '=',
- VALUE => $args{'Id'},
- ENTRYAGGREGATOR => 'OR'
- );
-
-}
-
-# }}}
-
-# {{{ DelegatedFrom
-
-=head2 DelegatedFrom { Id => undef }
-
-Limit the ACL to rights delegate from the ACE which has the Id specified
-by the Id parameter.
-
-Id is not optional.
-
-=cut
-
-sub DelegatedFrom {
- my $self = shift;
- my %args = (
- Id => undef,
- @_);
- $self->Limit(FIELD => 'DelegatedFrom', OPERATOR=> '=', VALUE => $args{'Id'}, ENTRYAGGREGATOR => 'OR');
-
-}
-
-# }}}
-
-
-# {{{ sub Next
-sub Next {
- my $self = shift;
-
- my $ACE = $self->SUPER::Next();
- if ( ( defined($ACE) ) and ( ref($ACE) ) ) {
-
- if ( $self->CurrentUser->HasRight( Right => 'ShowACL',
- Object => $ACE->Object )
- or $self->CurrentUser->HasRight( Right => 'ModifyACL',
- Object => $ACE->Object )
- ) {
- return ($ACE);
- }
-
- #If the user doesn't have the right to show this ACE
- else {
- return ( $self->Next() );
- }
- }
-
- #if there never was any ACE
- else {
- return (undef);
- }
-
-}
-
-# }}}
-
-
-
-#wrap around _DoSearch so that we can build the hash of returned
-#values
-sub _DoSearch {
- my $self = shift;
- # $RT::Logger->debug("Now in ".$self."->_DoSearch");
- my $return = $self->SUPER::_DoSearch(@_);
- # $RT::Logger->debug("In $self ->_DoSearch. return from SUPER::_DoSearch was $return\n");
- $self->_BuildHash();
- return ($return);
-}
-
-
-#Build a hash of this ACL's entries.
-sub _BuildHash {
- my $self = shift;
-
- while (my $entry = $self->Next) {
- my $hashkey = $entry->ObjectType . "-" . $entry->ObjectId . "-" . $entry->RightName . "-" . $entry->PrincipalId . "-" . $entry->PrincipalType;
-
- $self->{'as_hash'}->{"$hashkey"} =1;
-
- }
-}
-
-
-# {{{ HasEntry
-
-=head2 HasEntry
-
-=cut
-
-sub HasEntry {
-
- my $self = shift;
- my %args = ( RightScope => undef,
- RightAppliesTo => undef,
- RightName => undef,
- PrincipalId => undef,
- PrincipalType => undef,
- @_ );
-
- #if we haven't done the search yet, do it now.
- $self->_DoSearch();
-
- if ($self->{'as_hash'}->{ $args{'RightScope'} . "-" .
- $args{'RightAppliesTo'} . "-" .
- $args{'RightName'} . "-" .
- $args{'PrincipalId'} . "-" .
- $args{'PrincipalType'}
- } == 1) {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-# }}}
-1;
diff --git a/rt/lib/RT/Action/AutoOpen.pm b/rt/lib/RT/Action/AutoOpen.pm
deleted file mode 100644
index 3423db9..0000000
--- a/rt/lib/RT/Action/AutoOpen.pm
+++ /dev/null
@@ -1,110 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# This Action will open the BASE if a dependent is resolved.
-
-package RT::Action::AutoOpen;
-require RT::Action::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA=qw(RT::Action::Generic);
-
-#Do what we need to do and send it out.
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return (ref $self );
-}
-# }}}
-
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
-
- # if the ticket is already open or the ticket is new and the message is more mail from the
- # requestor, don't reopen it.
-
- if ( ( $self->TicketObj->Status eq 'open' )
- || ( ( $self->TicketObj->Status eq 'new' )
- && $self->TransactionObj->IsInbound )
- || ( defined $self->TransactionObj->Message->First
- && $self->TransactionObj->Message->First->GetHeader('RT-Control') =~ /\bno-autoopen\b/i )
- ) {
-
- return undef;
- }
- else {
- return (1);
- }
-}
-# }}}
-
-sub Commit {
- my $self = shift;
- my $oldstatus = $self->TicketObj->Status();
- $self->TicketObj->__Set( Field => 'Status', Value => 'open' );
- $self->TicketObj->_NewTransaction(
- Type => 'Status',
- Field => 'Status',
- OldValue => $oldstatus,
- NewValue => 'open',
- Data => 'Ticket auto-opened on incoming correspondence'
- );
-
-
- return(1);
-}
-
-eval "require RT::Action::AutoOpen_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/AutoOpen_Vendor.pm});
-eval "require RT::Action::AutoOpen_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/AutoOpen_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/Autoreply.pm b/rt/lib/RT/Action/Autoreply.pm
deleted file mode 100755
index 81f7bdd..0000000
--- a/rt/lib/RT/Action/Autoreply.pm
+++ /dev/null
@@ -1,96 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::Action::Autoreply;
-require RT::Action::SendEmail;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::SendEmail);
-
-
-# {{{ sub SetRecipients
-
-=head2 SetRecipients
-
-Sets the recipients of this message to this ticket's Requestor.
-
-=cut
-
-
-sub SetRecipients {
- my $self=shift;
-
- push(@{$self->{'To'}}, $self->TicketObj->Requestors->MemberEmailAddresses);
-
- return(1);
-}
-
-# }}}
-
-
-# {{{ sub SetReturnAddress
-
-=head2 SetReturnAddress
-
-Set this message\'s return address to the apropriate queue address
-
-=cut
-
-sub SetReturnAddress {
- my $self = shift;
- my %args = ( is_comment => 0,
- @_
- );
-
- my $replyto;
- if ($args{'is_comment'}) {
- $replyto = $self->TicketObj->QueueObj->CommentAddress ||
- $RT::CommentAddress;
- }
- else {
- $replyto = $self->TicketObj->QueueObj->CorrespondAddress ||
- $RT::CorrespondAddress;
- }
-
- unless ($self->TemplateObj->MIMEObj->head->get('From')) {
- my $friendly_name = $self->TicketObj->QueueObj->Description ||
- $self->TicketObj->QueueObj->Name;
- $friendly_name =~ s/"/\\"/g;
- $self->SetHeader('From', "\"$friendly_name\" <$replyto>");
- }
-
- unless ($self->TemplateObj->MIMEObj->head->get('Reply-To')) {
- $self->SetHeader('Reply-To', "$replyto");
- }
-
-}
-
-# }}}
-
-eval "require RT::Action::Autoreply_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Autoreply_Vendor.pm});
-eval "require RT::Action::Autoreply_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Autoreply_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/CreateTickets.pm b/rt/lib/RT/Action/CreateTickets.pm
deleted file mode 100644
index b708f2e..0000000
--- a/rt/lib/RT/Action/CreateTickets.pm
+++ /dev/null
@@ -1,1341 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Action::CreateTickets;
-require RT::Action::Generic;
-
-use strict;
-use warnings;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Generic);
-
-use MIME::Entity;
-
-=head1 NAME
-
- RT::Action::CreateTickets
-
-Create one or more tickets according to an externally supplied template.
-
-
-=head1 SYNOPSIS
-
- ===Create-Ticket codereview
- Subject: Code review for {$Tickets{'TOP'}->Subject}
- Depended-On-By: TOP
- Content: Someone has created a ticket. you should review and approve it,
- so they can finish their work
- ENDOFCONTENT
-
-=head1 DESCRIPTION
-
-
-Using the "CreateTickets" ScripAction and mandatory dependencies, RT now has
-the ability to model complex workflow. When a ticket is created in a queue
-that has a "CreateTickets" scripaction, that ScripAction parses its "Template"
-
-
-
-=head2 FORMAT
-
-CreateTickets uses the template as a template for an ordered set of tickets
-to create. The basic format is as follows:
-
-
- ===Create-Ticket: identifier
- Param: Value
- Param2: Value
- Param3: Value
- Content: Blah
- blah
- blah
- ENDOFCONTENT
- ===Create-Ticket: id2
- Param: Value
- Content: Blah
- ENDOFCONTENT
-
-
-Each ===Create-Ticket: section is evaluated as its own
-Text::Template object, which means that you can embed snippets
-of perl inside the Text::Template using {} delimiters, but that
-such sections absolutely can not span a ===Create-Ticket boundary.
-
-After each ticket is created, it's stuffed into a hash called %Tickets
-so as to be available during the creation of other tickets during the same
-ScripAction. The hash is prepopulated with the ticket which triggered the
-ScripAction as $Tickets{'TOP'}; you can also access that ticket using the
-shorthand TOP.
-
-A simple example:
-
- ===Create-Ticket: codereview
- Subject: Code review for {$Tickets{'TOP'}->Subject}
- Depended-On-By: TOP
- Content: Someone has created a ticket. you should review and approve it,
- so they can finish their work
- ENDOFCONTENT
-
-
-
-A convoluted example
-
- ===Create-Ticket: approval
- { # Find out who the administrators of the group called "HR"
- # of which the creator of this ticket is a member
- my $name = "HR";
-
- my $groups = RT::Groups->new($RT::SystemUser);
- $groups->LimitToUserDefinedGroups();
- $groups->Limit(FIELD => "Name", OPERATOR => "=", VALUE => "$name");
- $groups->WithMember($TransactionObj->CreatorObj->Id);
-
- my $groupid = $groups->First->Id;
-
- my $adminccs = RT::Users->new($RT::SystemUser);
- $adminccs->WhoHaveRight(
- Right => "AdminGroup",
- Object =>$groups->First,
- IncludeSystemRights => undef,
- IncludeSuperusers => 0,
- IncludeSubgroupMembers => 0,
- );
-
- my @admins;
- while (my $admin = $adminccs->Next) {
- push (@admins, $admin->EmailAddress);
- }
- }
- Queue: ___Approvals
- Type: approval
- AdminCc: {join ("\nAdminCc: ",@admins) }
- Depended-On-By: TOP
- Refers-To: TOP
- Subject: Approval for ticket: {$Tickets{"TOP"}->Id} - {$Tickets{"TOP"}->Subject}
- Due: {time + 86400}
- Content-Type: text/plain
- Content: Your approval is requested for the ticket {$Tickets{"TOP"}->Id}: {$Tickets{"TOP"}->Subject}
- Blah
- Blah
- ENDOFCONTENT
- ===Create-Ticket: two
- Subject: Manager approval
- Depended-On-By: TOP
- Refers-On: {$Tickets{"approval"}->Id}
- Queue: ___Approvals
- Content-Type: text/plain
- Content:
- Your approval is requred for this ticket, too.
- ENDOFCONTENT
-
-=head2 Acceptable fields
-
-A complete list of acceptable fields for this beastie:
-
-
- * Queue => Name or id# of a queue
- Subject => A text string
- ! Status => A valid status. defaults to 'new'
- Due => Dates can be specified in seconds since the epoch
- to be handled literally or in a semi-free textual
- format which RT will attempt to parse.
-
-
-
- Starts =>
- Started =>
- Resolved =>
- Owner => Username or id of an RT user who can and should own
- this ticket
- + Requestor => Email address
- + Cc => Email address
- + AdminCc => Email address
- TimeWorked =>
- TimeEstimated =>
- TimeLeft =>
- InitialPriority =>
- FinalPriority =>
- Type =>
- +! DependsOn =>
- +! DependedOnBy =>
- +! RefersTo =>
- +! ReferredToBy =>
- +! Members =>
- +! MemberOf =>
- Content => content. Can extend to multiple lines. Everything
- within a template after a Content: header is treated
- as content until we hit a line containing only
- ENDOFCONTENT
- ContentType => the content-type of the Content field
- CustomField-<id#> => custom field value
-
-Fields marked with an * are required.
-
-Fields marked with a + may have multiple values, simply
-by repeating the fieldname on a new line with an additional value.
-
-Fields marked with a ! are postponed to be processed after all
-tickets in the same actions are created. Except for 'Status', those
-field can also take a ticket name within the same action (i.e.
-the identifiers after ==Create-Ticket), instead of raw Ticket ID
-numbers.
-
-When parsed, field names are converted to lowercase and have -s stripped.
-Refers-To, RefersTo, refersto, refers-to and r-e-f-er-s-tO will all
-be treated as the same thing.
-
-
-=begin testing
-
-ok (require RT::Action::CreateTickets);
-use_ok(RT::Scrip);
-use_ok(RT::Template);
-use_ok(RT::ScripAction);
-use_ok(RT::ScripCondition);
-use_ok(RT::Ticket);
-
-my $approvalsq = RT::Queue->new($RT::SystemUser);
-$approvalsq->Create(Name => 'Approvals');
-ok ($approvalsq->Id, "Created Approvals test queue");
-
-
-my $approvals =
-'===Create-Ticket: approval
-Queue: ___Approvals
-Type: approval
-AdminCc: {join ("\nAdminCc: ",@admins) }
-Depended-On-By: {$Tickets{"TOP"}->Id}
-Refers-To: TOP
-Subject: Approval for ticket: {$Tickets{"TOP"}->Id} - {$Tickets{"TOP"}->Subject}
-Due: {time + 86400}
-Content-Type: text/plain
-Content: Your approval is requested for the ticket {$Tickets{"TOP"}->Id}: {$Tickets{"TOP"}->Subject}
-Blah
-Blah
-ENDOFCONTENT
-===Create-Ticket: two
-Subject: Manager approval.
-Depended-On-By: approval
-Queue: ___Approvals
-Content-Type: text/plain
-Content:
-Your minion approved ticket {$Tickets{"TOP"}->Id}. you ok with that?
-ENDOFCONTENT
-';
-
-ok ($approvals =~ /Content/, "Read in the approvals template");
-
-my $apptemp = RT::Template->new($RT::SystemUser);
-$apptemp->Create( Content => $approvals, Name => "Approvals", Queue => "0");
-
-ok ($apptemp->Id);
-
-my $q = RT::Queue->new($RT::SystemUser);
-$q->Create(Name => 'WorkflowTest');
-ok ($q->Id, "Created workflow test queue");
-
-my $scrip = RT::Scrip->new($RT::SystemUser);
-my ($sval, $smsg) =$scrip->Create( ScripCondition => 'On Transaction',
- ScripAction => 'Create Tickets',
- Template => 'Approvals',
- Queue => $q->Id);
-ok ($sval, $smsg);
-ok ($scrip->Id, "Created the scrip");
-ok ($scrip->TemplateObj->Id, "Created the scrip template");
-ok ($scrip->ConditionObj->Id, "Created the scrip condition");
-ok ($scrip->ActionObj->Id, "Created the scrip action");
-
-my $t = RT::Ticket->new($RT::SystemUser);
-my($tid, $ttrans, $tmsg) = $t->Create(Subject => "Sample workflow test",
- Owner => "root",
- Queue => $q->Id);
-
-ok ($tid,$tmsg);
-
-my $deps = $t->DependsOn;
-is ($deps->Count, 1, "The ticket we created depends on one other ticket");
-my $dependson= $deps->First->TargetObj;
-ok ($dependson->Id, "It depends on a real ticket");
-unlike ($dependson->Subject, qr/{/, "The subject doesn't have braces in it. that means we're interpreting expressions");
-is ($t->ReferredToBy->Count,1, "It's only referred to by one other ticket");
-is ($t->ReferredToBy->First->BaseObj->Id,$t->DependsOn->First->TargetObj->Id, "The same ticket that depends on it refers to it.");
-use RT::Action::CreateTickets;
-my $action = RT::Action::CreateTickets->new( CurrentUser => $RT::SystemUser);;
-
-# comma-delimited templates
-my $commas = <<"EOF";
-id,Queue,Subject,Owner,Content
-ticket1,General,"foo, bar",root,blah
-ticket2,General,foo bar,root,blah
-ticket3,General,foo' bar,root,blah'boo
-ticket4,General,foo' bar,,blah'boo
-EOF
-
-
-# Comma delimited templates with missing data
-my $sparse_commas = <<"EOF";
-id,Queue,Subject,Owner,Requestor
-ticket14,General,,,bobby
-ticket15,General,,,tommy
-ticket16,General,,suzie,tommy
-ticket17,General,Foo "bar" baz,suzie,tommy
-ticket18,General,'Foo "bar" baz',suzie,tommy
-ticket19,General,'Foo bar' baz,suzie,tommy
-EOF
-
-
-# tab-delimited templates
-my $tabs = <<"EOF";
-id\tQueue\tSubject\tOwner\tContent
-ticket10\tGeneral\t"foo' bar"\troot\tblah'
-ticket11\tGeneral\tfoo, bar\troot\tblah
-ticket12\tGeneral\tfoo' bar\troot\tblah'boo
-ticket13\tGeneral\tfoo' bar\t\tblah'boo
-EOF
-
-my %expected;
-
-$expected{ticket1} = <<EOF;
-Queue: General
-Subject: foo, bar
-Owner: root
-Content: blah
-ENDOFCONTENT
-EOF
-
-$expected{ticket2} = <<EOF;
-Queue: General
-Subject: foo bar
-Owner: root
-Content: blah
-ENDOFCONTENT
-EOF
-
-$expected{ticket3} = <<EOF;
-Queue: General
-Subject: foo' bar
-Owner: root
-Content: blah'boo
-ENDOFCONTENT
-EOF
-
-$expected{ticket4} = <<EOF;
-Queue: General
-Subject: foo' bar
-Owner:
-Content: blah'boo
-ENDOFCONTENT
-EOF
-
-$expected{ticket10} = <<EOF;
-Queue: General
-Subject: foo' bar
-Owner: root
-Content: blah'
-ENDOFCONTENT
-EOF
-
-$expected{ticket11} = <<EOF;
-Queue: General
-Subject: foo, bar
-Owner: root
-Content: blah
-ENDOFCONTENT
-EOF
-
-$expected{ticket12} = <<EOF;
-Queue: General
-Subject: foo' bar
-Owner: root
-Content: blah'boo
-ENDOFCONTENT
-EOF
-
-$expected{ticket13} = <<EOF;
-Queue: General
-Subject: foo' bar
-Owner:
-Content: blah'boo
-ENDOFCONTENT
-EOF
-
-
-$expected{'ticket14'} = <<EOF;
-Queue: General
-Subject:
-Owner:
-Requestor: bobby
-EOF
-$expected{'ticket15'} = <<EOF;
-Queue: General
-Subject:
-Owner:
-Requestor: tommy
-EOF
-$expected{'ticket16'} = <<EOF;
-Queue: General
-Subject:
-Owner: suzie
-Requestor: tommy
-EOF
-$expected{'ticket17'} = <<EOF;
-Queue: General
-Subject: Foo "bar" baz
-Owner: suzie
-Requestor: tommy
-EOF
-$expected{'ticket18'} = <<EOF;
-Queue: General
-Subject: Foo "bar" baz
-Owner: suzie
-Requestor: tommy
-EOF
-$expected{'ticket19'} = <<EOF;
-Queue: General
-Subject: 'Foo bar' baz
-Owner: suzie
-Requestor: tommy
-EOF
-
-
-
-
-$action->Parse(Content =>$commas);
-$action->Parse(Content =>$sparse_commas);
-$action->Parse(Content => $tabs);
-
-my %got;
-foreach (@{ $action->{'create_tickets'} }) {
- $got{$_} = $action->{'templates'}->{$_};
-}
-
-foreach my $id ( sort keys %expected ) {
- ok(exists($got{"create-$id"}), "template exists for $id");
- is($got{"create-$id"}, $expected{$id}, "template is correct for $id");
-}
-
-=end testing
-
-
-=head1 AUTHOR
-
-Jesse Vincent <jesse@bestpractical.com>
-
-=head1 SEE ALSO
-
-perl(1).
-
-=cut
-
-my %LINKTYPEMAP = (
- MemberOf => {
- Type => 'MemberOf',
- Mode => 'Target',
- },
- Parents => {
- Type => 'MemberOf',
- Mode => 'Target',
- },
- Members => {
- Type => 'MemberOf',
- Mode => 'Base',
- },
- Children => {
- Type => 'MemberOf',
- Mode => 'Base',
- },
- HasMember => {
- Type => 'MemberOf',
- Mode => 'Base',
- },
- RefersTo => {
- Type => 'RefersTo',
- Mode => 'Target',
- },
- ReferredToBy => {
- Type => 'RefersTo',
- Mode => 'Base',
- },
- DependsOn => {
- Type => 'DependsOn',
- Mode => 'Target',
- },
- DependedOnBy => {
- Type => 'DependsOn',
- Mode => 'Base',
- },
-
-);
-
-# {{{ Scrip methods (Commit, Prepare)
-
-# {{{ sub Commit
-#Do what we need to do and send it out.
-sub Commit {
- my $self = shift;
-
- # Create all the tickets we care about
- return (1) unless $self->TicketObj->Type eq 'ticket';
-
- $self->CreateByTemplate( $self->TicketObj );
- $self->UpdateByTemplate( $self->TicketObj );
- return (1);
-}
-
-# }}}
-
-# {{{ sub Prepare
-
-sub Prepare {
- my $self = shift;
-
- unless ( $self->TemplateObj ) {
- $RT::Logger->warning("No template object handed to $self\n");
- }
-
- unless ( $self->TransactionObj ) {
- $RT::Logger->warning("No transaction object handed to $self\n");
-
- }
-
- unless ( $self->TicketObj ) {
- $RT::Logger->warning("No ticket object handed to $self\n");
-
- }
-
- $self->Parse( Content => $self->TemplateObj->Content, _ActiveContent => 1);
- return 1;
-
-}
-
-# }}}
-
-# }}}
-
-sub CreateByTemplate {
- my $self = shift;
- my $top = shift;
-
- $RT::Logger->debug("In CreateByTemplate");
-
- my @results;
-
- # XXX: cargo cult programming that works. i'll be back.
- use bytes;
-
- local %T::Tickets = %T::Tickets;
- local $T::TOP = $T::TOP;
- local $T::ID = $T::ID;
- $T::Tickets{'TOP'} = $T::TOP = $top if $top;
-
- my $ticketargs;
- my ( @links, @postponed );
- foreach my $template_id ( @{ $self->{'create_tickets'} } ) {
- $RT::Logger->debug("Workflow: processing $template_id of $T::TOP")
- if $T::TOP;
-
- $T::ID = $template_id;
- @T::AllID = @{ $self->{'create_tickets'} };
-
- ( $T::Tickets{$template_id}, $ticketargs ) =
- $self->ParseLines( $template_id, \@links, \@postponed );
-
- # Now we have a %args to work with.
- # Make sure we have at least the minimum set of
- # reasonable data and do our thang
-
- my ( $id, $transid, $msg ) =
- $T::Tickets{$template_id}->Create(%$ticketargs);
-
- foreach my $res ( split( '\n', $msg ) ) {
- push @results,
- $T::Tickets{$template_id}
- ->loc( "Ticket [_1]", $T::Tickets{$template_id}->Id ) . ': '
- . $res;
- }
- if ( !$id ) {
- if ( $self->TicketObj ) {
- $msg =
- "Couldn't create related ticket $template_id for "
- . $self->TicketObj->Id . " "
- . $msg;
- }
- else {
- $msg = "Couldn't create ticket $template_id " . $msg;
- }
-
- $RT::Logger->error($msg);
- next;
- }
-
- $RT::Logger->debug("Assigned $template_id with $id");
- $T::Tickets{$template_id}->SetOriginObj( $self->TicketObj )
- if $self->TicketObj
- && $T::Tickets{$template_id}->can('SetOriginObj');
-
- }
-
- $self->PostProcess( \@links, \@postponed );
-
- return @results;
-}
-
-sub UpdateByTemplate {
- my $self = shift;
- my $top = shift;
-
- # XXX: cargo cult programming that works. i'll be back.
- use bytes;
-
- my @results;
- local %T::Tickets = %T::Tickets;
- local $T::ID = $T::ID;
-
- my $ticketargs;
- my ( @links, @postponed );
- foreach my $template_id ( @{ $self->{'update_tickets'} } ) {
- $RT::Logger->debug("Update Workflow: processing $template_id");
-
- $T::ID = $template_id;
- @T::AllID = @{ $self->{'update_tickets'} };
-
- ( $T::Tickets{$template_id}, $ticketargs ) =
- $self->ParseLines( $template_id, \@links, \@postponed );
-
- # Now we have a %args to work with.
- # Make sure we have at least the minimum set of
- # reasonable data and do our thang
-
- my @attribs = qw(
- Subject
- FinalPriority
- Priority
- TimeEstimated
- TimeWorked
- TimeLeft
- Status
- Queue
- Due
- Starts
- Started
- Resolved
- );
-
- my $id = $template_id;
- $id =~ s/update-(\d+).*/$1/;
- $T::Tickets{$template_id}->Load($id);
-
- my $msg;
- if ( !$T::Tickets{$template_id}->Id ) {
- $msg = "Couldn't update ticket $template_id " . $msg;
-
- $RT::Logger->error($msg);
- next;
- }
-
- my $current = $self->GetBaseTemplate( $T::Tickets{$template_id} );
-
- $template_id =~ m/^update-(.*)/;
- my $base_id = "base-$1";
- my $base = $self->{'templates'}->{$base_id};
- if ($base) {
- $base =~ s/\r//g;
- $base =~ s/\n+$//;
- $current =~ s/\n+$//;
-
- # If we have no base template, set what we can.
- if ($base ne $current) {
- push @results,
- "Could not update ticket "
- . $T::Tickets{$template_id}->Id
- . ": Ticket has changed";
- next;
- }
- }
- push @results, $T::Tickets{$template_id}->Update(
- AttributesRef => \@attribs,
- ARGSRef => $ticketargs
- );
-
- push @results,
- $self->UpdateWatchers( $T::Tickets{$template_id}, $ticketargs );
-
- next unless exists $ticketargs->{'UpdateType'};
- if ( $ticketargs->{'UpdateType'} =~ /^(private|public)$/ ) {
- my ( $Transaction, $Description, $Object ) =
- $T::Tickets{$template_id}->Comment(
- CcMessageTo => $ticketargs->{'Cc'},
- BccMessageTo => $ticketargs->{'Bcc'},
- MIMEObj => $ticketargs->{'MIMEObj'},
- TimeTaken => $ticketargs->{'TimeWorked'}
- );
- push( @results,
- $T::Tickets{$template_id}
- ->loc( "Ticket [_1]", $T::Tickets{$template_id}->id ) . ': '
- . $Description );
- }
- elsif ( $ticketargs->{'UpdateType'} eq 'response' ) {
- my ( $Transaction, $Description, $Object ) =
- $T::Tickets{$template_id}->Correspond(
- CcMessageTo => $ticketargs->{'Cc'},
- BccMessageTo => $ticketargs->{'Bcc'},
- MIMEObj => $ticketargs->{'MIMEObj'},
- TimeTaken => $ticketargs->{'TimeWorked'}
- );
- push( @results,
- $T::Tickets{$template_id}
- ->loc( "Ticket [_1]", $T::Tickets{$template_id}->id ) . ': '
- . $Description );
- }
- else {
- push( @results,
- $T::Tickets{$template_id}
- ->loc("Update type was neither correspondence nor comment.")
- . " "
- . $T::Tickets{$template_id}->loc("Update not recorded.") );
- }
- }
-
- $self->PostProcess( \@links, \@postponed );
-
- return @results;
-}
-
-=head2 Parse TEMPLATE_CONTENT, DEFAULT_QUEUE, DEFAULT_REQEUESTOR ACTIVE
-
-Parse a template from TEMPLATE_CONTENT
-
-If $active is set to true, then we'll use Text::Template to parse the templates,
-allowing you to embed active perl in your templates.
-
-=cut
-
-sub Parse {
- my $self = shift;
- my %args = ( Content => undef,
- Queue => undef,
- Requestor => undef,
- _ActiveContent => undef,
- @_);
-
- if ($args{'_ActiveContent'}) {
- $self->{'UsePerlTextTemplate'} =1;
- } else {
-
- $self->{'UsePerlTextTemplate'} = 0;
- }
-
- my @template_order;
- my $template_id;
- my ( $queue, $requestor );
- if ( substr( $args{'Content'}, 0, 3 ) eq '===' ) {
- $RT::Logger->debug("Line: ===");
- foreach my $line ( split( /\n/, $args{'Content'} ) ) {
- $line =~ s/\r$//;
- $RT::Logger->debug("Line: $line");
- if ( $line =~ /^===/ ) {
- if ( $template_id && !$queue && $args{'Queue'} ) {
- $self->{'templates'}->{$template_id} .= "Queue: $args{'Queue'}\n";
- }
- if ( $template_id && !$requestor && $args{'Requestor'} ) {
- $self->{'templates'}->{$template_id} .=
- "Requestor: $args{'Requestor'}\n";
- }
- $queue = 0;
- $requestor = 0;
- }
- if ( $line =~ /^===Create-Ticket: (.*)$/ ) {
- $template_id = "create-$1";
- $RT::Logger->debug("**** Create ticket: $template_id");
- push @{ $self->{'create_tickets'} }, $template_id;
- }
- elsif ( $line =~ /^===Update-Ticket: (.*)$/ ) {
- $template_id = "update-$1";
- $RT::Logger->debug("**** Update ticket: $template_id");
- push @{ $self->{'update_tickets'} }, $template_id;
- }
- elsif ( $line =~ /^===Base-Ticket: (.*)$/ ) {
- $template_id = "base-$1";
- $RT::Logger->debug("**** Base ticket: $template_id");
- push @{ $self->{'base_tickets'} }, $template_id;
- }
- elsif ( $line =~ /^===#.*$/ ) { # a comment
- next;
- }
- else {
- if ( $line =~ /^Queue:(.*)/i ) {
- $queue = 1;
- my $value = $1;
- $value =~ s/^\s//;
- $value =~ s/\s$//;
- if ( !$value && $args{'Queue'}) {
- $value = $args{'Queue'};
- $line = "Queue: $value";
- }
- }
- if ( $line =~ /^Requestor:(.*)/i ) {
- $requestor = 1;
- my $value = $1;
- $value =~ s/^\s//;
- $value =~ s/\s$//;
- if ( !$value && $args{'Requestor'}) {
- $value = $args{'Requestor'};
- $line = "Requestor: $value";
- }
- }
- $self->{'templates'}->{$template_id} .= $line . "\n";
- }
- }
- if ( $template_id && !$queue && $args{'Queue'} ) {
- $self->{'templates'}->{$template_id} .= "Queue: $args{'Queue'}\n";
- }
- }
- elsif ( substr( $args{'Content'}, 0, 2 ) =~ /^id$/i ) {
- $RT::Logger->debug("Line: id");
- use Regexp::Common qw(delimited);
- my $first = substr( $args{'Content'}, 0, index( $args{'Content'}, "\n" ) );
- $first =~ s/\r$//;
-
- my $delimiter;
- if ( $first =~ /\t/ ) {
- $delimiter = "\t";
- }
- else {
- $delimiter = ',';
- }
- my @fields = split( /$delimiter/, $first );
-
-
- my $delimiter_re = qr[$delimiter];
-
- my $delimited = qr[[^$delimiter]+];
- my $empty = qr[^[$delimiter](?=[$delimiter])];
- my $justquoted = qr[$RE{quoted}];
-
- $args{'Content'} = substr( $args{'Content'}, index( $args{'Content'}, "\n" ) + 1 );
- $RT::Logger->debug("First: $first");
-
- my $queue;
- foreach my $line ( split( /\n/, $args{'Content'} ) ) {
- next unless $line;
- $RT::Logger->debug("Line: $line");
-
- # first item is $template_id
- my $i = 0;
- my $template_id;
- while ($line && $line =~ s/^($justquoted|.*?)(?:$delimiter_re|$)//ix) {
- if ( $i == 0 ) {
- $queue = 0;
- $requestor = 0;
- my $tid = $1;
- $tid =~ s/^\s//;
- $tid =~ s/\s$//;
- next unless $tid;
-
-
- if ($tid =~ /^\d+$/) {
- $template_id = 'update-' . $tid;
- push @{ $self->{'update_tickets'} }, $template_id;
-
- } elsif ($tid =~ /^#base-(\d+)$/) {
-
- $template_id = 'base-' . $1;
- push @{ $self->{'base_tickets'} }, $template_id;
-
- } else {
- $template_id = 'create-' . $tid;
- push @{ $self->{'create_tickets'} }, $template_id;
- }
- $RT::Logger->debug("template_id: $tid");
- }
- else {
- my $value = $1;
- $value = '' if ( $value =~ /^$delimiter$/ );
- if ($value =~ /^$RE{delimited}{-delim=>qq{\'\"}}$/) {
- substr($value,0,1) = "";
- substr($value,-1,1) = "";
- }
- my $field = $fields[$i];
- next unless $field;
- $field =~ s/^\s//;
- $field =~ s/\s$//;
- if ( $field =~ /Body/i
- || $field =~ /Data/i
- || $field =~ /Message/i )
- {
- $field = 'Content';
- }
- if ( $field =~ /Summary/i ) {
- $field = 'Subject';
- }
- if ( $field =~ /Queue/i ) {
- $queue = 1;
- if ( !$value && $args{'Queue'} ) {
- $value = $args{'Queue'};
- }
- }
- if ( $field =~ /Requestor/i ) {
- $requestor = 1;
- if ( !$value && $args{'Requestor'} ) {
- $value = $args{'Requestor'};
- }
- }
- $self->{'templates'}->{$template_id} .= $field . ": ";
- $self->{'templates'}->{$template_id} .= $value || "";
- $self->{'templates'}->{$template_id} .= "\n";
- $self->{'templates'}->{$template_id} .= "ENDOFCONTENT\n"
- if $field =~ /content/i;
- }
- $i++;
- }
- if ( !$queue && $args{'Queue'} ) {
- $self->{'templates'}->{$template_id} .= "Queue: $args{'Queue'}\n";
- }
- if ( !$requestor && $args{'Requestor'} ) {
- $self->{'templates'}->{$template_id} .=
- "Requestor: $args{'Requestor'}\n";
- }
- }
- }
-}
-
-sub ParseLines {
- my $self = shift;
- my $template_id = shift;
- my $links = shift;
- my $postponed = shift;
-
-
- my $content = $self->{'templates'}->{$template_id};
-
- if ( $self->{'UsePerlTextTemplate'} ) {
-
- $RT::Logger->debug(
- "Workflow: evaluating\n$self->{templates}{$template_id}");
-
- my $template = Text::Template->new(
- TYPE => 'STRING',
- SOURCE => $content
- );
-
- my $err;
- $content = $template->fill_in(
- PACKAGE => 'T',
- BROKEN => sub {
- $err = {@_}->{error};
- }
- );
-
- $RT::Logger->debug("Workflow: yielding\n$content");
-
- if ($err) {
- $RT::Logger->error( "Ticket creation failed: " . $err );
- while ( my ( $k, $v ) = each %T::X ) {
- $RT::Logger->debug(
- "Eliminating $template_id from ${k}'s parents.");
- delete $v->{$template_id};
- }
- next;
- }
- }
-
- my $TicketObj ||= RT::Ticket->new($self->CurrentUser);
-
- my %args;
- my @lines = ( split( /\n/, $content ) );
- while ( defined( my $line = shift @lines ) ) {
- if ( $line =~ /^(.*?):(?:\s+)(.*?)(?:\s*)$/ ) {
- my $value = $2;
- my $tag = lc($1);
- $tag =~ s/-//g;
-
- if ( ref( $args{$tag} ) )
- { #If it's an array, we want to push the value
- push @{ $args{$tag} }, $value;
- }
- elsif ( defined( $args{$tag} ) )
- { #if we're about to get a second value, make it an array
- $args{$tag} = [ $args{$tag}, $value ];
- }
- else { #if there's nothing there, just set the value
- $args{$tag} = $value;
- }
-
- if ( $tag eq 'content' ) { #just build up the content
- # convert it to an array
- $args{$tag} = defined($value) ? [ $value . "\n" ] : [];
- while ( defined( my $l = shift @lines ) ) {
- last if ( $l =~ /^ENDOFCONTENT\s*$/ );
- push @{ $args{'content'} }, $l . "\n";
- }
- }
- else {
-
- # if it's not content, strip leading and trailing spaces
- if ( $args{$tag} ) {
- $args{$tag} =~ s/^\s+//g;
- $args{$tag} =~ s/\s+$//g;
- }
- }
- }
- }
-
- foreach my $date qw(due starts started resolved) {
- my $dateobj = RT::Date->new($self->CurrentUser);
- next unless $args{$date};
- if ( $args{$date} =~ /^\d+$/ ) {
- $dateobj->Set( Format => 'unix', Value => $args{$date} );
- }
- else {
- $dateobj->Set( Format => 'unknown', Value => $args{$date} );
- }
- $args{$date} = $dateobj->ISO;
- }
-
- $args{'requestor'} ||= $self->TicketObj->Requestors->MemberEmailAddresses
- if $self->TicketObj;
-
- $args{'type'} ||= 'ticket';
-
- my %ticketargs = (
- Queue => $args{'queue'},
- Subject => $args{'subject'},
- Status => 'new',
- Due => $args{'due'},
- Starts => $args{'starts'},
- Started => $args{'started'},
- Resolved => $args{'resolved'},
- Owner => $args{'owner'},
- Requestor => $args{'requestor'},
- Cc => $args{'cc'},
- AdminCc => $args{'admincc'},
- TimeWorked => $args{'timeworked'},
- TimeEstimated => $args{'timeestimated'},
- TimeLeft => $args{'timeleft'},
- InitialPriority => $args{'initialpriority'} || 0,
- FinalPriority => $args{'finalpriority'} || 0,
- Type => $args{'type'},
- );
-
- if ($args{content}) {
- my $mimeobj = MIME::Entity->new();
- $mimeobj->build(
- Type => $args{'contenttype'},
- Data => $args{'content'}
- );
- $ticketargs{MIMEObj} = $mimeobj;
- $ticketargs{UpdateType} = $args{'updatetype'} if $args{'updatetype'};
- }
-
- foreach my $key ( keys(%args) ) {
- $key =~ /^customfield(\d+)$/ or next;
- $ticketargs{ "CustomField-" . $1 } = $args{$key};
- }
-
- $self->GetDeferred( \%args, $template_id, $links, $postponed );
-
- return $TicketObj, \%ticketargs;
-}
-
-sub GetDeferred {
- my $self = shift;
- my $args = shift;
- my $id = shift;
- my $links = shift;
- my $postponed = shift;
-
- # Deferred processing
- push @$links,
- (
- $id,
- {
- DependsOn => $args->{'dependson'},
- DependedOnBy => $args->{'dependedonby'},
- RefersTo => $args->{'refersto'},
- ReferredToBy => $args->{'referredtoby'},
- Children => $args->{'children'},
- Parents => $args->{'parents'},
- }
- );
-
- push @$postponed, (
-
- # Status is postponed so we don't violate dependencies
- $id, { Status => $args->{'status'}, }
- );
-}
-
-sub GetUpdateTemplate {
- my $self = shift;
- my $t = shift;
-
- my $string;
- $string .= "Queue: " . $t->QueueObj->Name . "\n";
- $string .= "Subject: " . $t->Subject . "\n";
- $string .= "Status: " . $t->Status . "\n";
- $string .= "UpdateType: response\n";
- $string .= "Content: \n";
- $string .= "ENDOFCONTENT\n";
- $string .= "Due: " . $t->DueObj->AsString . "\n";
- $string .= "Starts: " . $t->StartsObj->AsString . "\n";
- $string .= "Started: " . $t->StartedObj->AsString . "\n";
- $string .= "Resolved: " . $t->ResolvedObj->AsString . "\n";
- $string .= "Owner: " . $t->OwnerObj->Name . "\n";
- $string .= "Requestor: " . $t->RequestorAddresses . "\n";
- $string .= "Cc: " . $t->CcAddresses . "\n";
- $string .= "AdminCc: " . $t->AdminCcAddresses . "\n";
- $string .= "TimeWorked: " . $t->TimeWorked . "\n";
- $string .= "TimeEstimated: " . $t->TimeEstimated . "\n";
- $string .= "TimeLeft: " . $t->TimeLeft . "\n";
- $string .= "InitialPriority: " . $t->Priority . "\n";
- $string .= "FinalPriority: " . $t->FinalPriority . "\n";
-
- foreach my $type ( sort keys %LINKTYPEMAP ) {
-
- # don't display duplicates
- if ( $type eq "HasMember"
- || $type eq "Members"
- || $type eq "MemberOf" )
- {
- next;
- }
- $string .= "$type: ";
-
- my $mode = $LINKTYPEMAP{$type}->{Mode};
- my $method = $LINKTYPEMAP{$type}->{Type};
-
- my $links;
- while ( my $link = $t->$method->Next ) {
- $links .= ", " if $links;
-
- my $object = $mode . "Obj";
- my $member = $link->$object;
- $links .= $member->Id if $member;
- }
- $string .= $links;
- $string .= "\n";
- }
-
- return $string;
-}
-
-sub GetBaseTemplate {
- my $self = shift;
- my $t = shift;
-
- my $string;
- $string .= "Queue: " . $t->Queue . "\n";
- $string .= "Subject: " . $t->Subject . "\n";
- $string .= "Status: " . $t->Status . "\n";
- $string .= "Due: " . $t->DueObj->Unix . "\n";
- $string .= "Starts: " . $t->StartsObj->Unix . "\n";
- $string .= "Started: " . $t->StartedObj->Unix . "\n";
- $string .= "Resolved: " . $t->ResolvedObj->Unix . "\n";
- $string .= "Owner: " . $t->Owner . "\n";
- $string .= "Requestor: " . $t->RequestorAddresses . "\n";
- $string .= "Cc: " . $t->CcAddresses . "\n";
- $string .= "AdminCc: " . $t->AdminCcAddresses . "\n";
- $string .= "TimeWorked: " . $t->TimeWorked . "\n";
- $string .= "TimeEstimated: " . $t->TimeEstimated . "\n";
- $string .= "TimeLeft: " . $t->TimeLeft . "\n";
- $string .= "InitialPriority: " . $t->Priority . "\n";
- $string .= "FinalPriority: " . $t->FinalPriority . "\n";
-
- return $string;
-}
-
-sub GetCreateTemplate {
- my $self = shift;
-
- my $string;
-
- $string .= "Queue: General\n";
- $string .= "Subject: \n";
- $string .= "Status: new\n";
- $string .= "Content: \n";
- $string .= "ENDOFCONTENT\n";
- $string .= "Due: \n";
- $string .= "Starts: \n";
- $string .= "Started: \n";
- $string .= "Resolved: \n";
- $string .= "Owner: \n";
- $string .= "Requestor: \n";
- $string .= "Cc: \n";
- $string .= "AdminCc:\n";
- $string .= "TimeWorked: \n";
- $string .= "TimeEstimated: \n";
- $string .= "TimeLeft: \n";
- $string .= "InitialPriority: \n";
- $string .= "FinalPriority: \n";
-
- foreach my $type ( keys %LINKTYPEMAP ) {
-
- # don't display duplicates
- if ( $type eq "HasMember"
- || $type eq 'Members'
- || $type eq 'MemberOf' )
- {
- next;
- }
- $string .= "$type: \n";
- }
- return $string;
-}
-
-sub UpdateWatchers {
- my $self = shift;
- my $ticket = shift;
- my $args = shift;
-
- my @results;
-
- foreach my $type qw(Requestor Cc AdminCc) {
- my $method = $type . 'Addresses';
- my $oldaddr = $ticket->$method;
-
-
- # Skip unless we have a defined field
- next unless defined $args->{$type};
- my $newaddr = $args->{$type};
-
- my @old = split( ', ', $oldaddr );
- my @new = split( ', ', $newaddr );
- my %oldhash = map { $_ => 1 } @old;
- my %newhash = map { $_ => 1 } @new;
-
- my @add = grep( !defined $oldhash{$_}, @new );
- my @delete = grep( !defined $newhash{$_}, @old );
-
- foreach (@add) {
- my ( $val, $msg ) = $ticket->AddWatcher(
- Type => $type,
- Email => $_
- );
-
- push @results,
- $ticket->loc( "Ticket [_1]", $ticket->Id ) . ': ' . $msg;
- }
-
- foreach (@delete) {
- my ( $val, $msg ) = $ticket->DeleteWatcher(
- Type => $type,
- Email => $_
- );
- push @results,
- $ticket->loc( "Ticket [_1]", $ticket->Id ) . ': ' . $msg;
- }
- }
- return @results;
-}
-
-sub PostProcess {
- my $self = shift;
- my $links = shift;
- my $postponed = shift;
-
- # postprocessing: add links
-
- while ( my $template_id = shift(@$links) ) {
- my $ticket = $T::Tickets{$template_id};
- $RT::Logger->debug( "Handling links for " . $ticket->Id );
- my %args = %{ shift(@$links) };
-
- foreach my $type ( keys %LINKTYPEMAP ) {
- next unless ( defined $args{$type} );
- foreach my $link (
- ref( $args{$type} ) ? @{ $args{$type} } : ( $args{$type} ) )
- {
- next unless $link;
-
- if ($link =~ /^TOP$/i) {
- $RT::Logger->debug( "Building $type link for $link: " . $T::Tickets{TOP}->Id );
- $link = $T::Tickets{TOP}->Id;
-
- }
- elsif ( $link !~ m/^\d+$/ ) {
- my $key = "create-$link";
- if ( !exists $T::Tickets{$key} ) {
- $RT::Logger->debug( "Skipping $type link for $key (non-existent)");
- next;
- }
- $RT::Logger->debug( "Building $type link for $link: " . $T::Tickets{$key}->Id );
- $link = $T::Tickets{$key}->Id;
- }
- else {
- $RT::Logger->debug("Building $type link for $link");
- }
-
- my ( $wval, $wmsg ) = $ticket->AddLink(
- Type => $LINKTYPEMAP{$type}->{'Type'},
- $LINKTYPEMAP{$type}->{'Mode'} => $link,
- Silent => 1
- );
-
- $RT::Logger->warning("AddLink thru $link failed: $wmsg")
- unless $wval;
-
- # push @non_fatal_errors, $wmsg unless ($wval);
- }
-
- }
- }
-
- # postponed actions -- Status only, currently
- while ( my $template_id = shift(@$postponed) ) {
- my $ticket = $T::Tickets{$template_id};
- $RT::Logger->debug("Handling postponed actions for ".$ticket->id);
- my %args = %{ shift(@$postponed) };
- $ticket->SetStatus( $args{Status} ) if defined $args{Status};
- }
-
-}
-
-eval "require RT::Action::CreateTickets_Vendor";
-die $@ if ( $@ && $@ !~ qr{^Can't locate RT/Action/CreateTickets_Vendor.pm} );
-eval "require RT::Action::CreateTickets_Local";
-die $@ if ( $@ && $@ !~ qr{^Can't locate RT/Action/CreateTickets_Local.pm} );
-
-1;
-
diff --git a/rt/lib/RT/Action/EscalatePriority.pm b/rt/lib/RT/Action/EscalatePriority.pm
deleted file mode 100644
index c549921..0000000
--- a/rt/lib/RT/Action/EscalatePriority.pm
+++ /dev/null
@@ -1,166 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Action::EscalatePriority
-
-=head1 DESCRIPTION
-
-EscalatePriority is a ScripAction which is NOT intended to be called
-per transaction. It's intended to be called by an RT escalation tool.
-One such tool is called rt-crontool and is located in $RTHOME/bin (see
-C<rt-crontool -h> for more details)
-
-EsclatePriority uses the following formula to change a ticket's priority:
-
- Priority = Priority + (( FinalPriority - Priority ) / ( DueDate-Today))
-
-Unless the duedate is past, in which case priority gets bumped straight
-to final priority.
-
-In this way, priority is either increased or decreased toward the final priority
-as the ticket heads toward its due date.
-
-
-=cut
-
-
-package RT::Action::EscalatePriority;
-require RT::Action::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA=qw(RT::Action::Generic);
-
-#Do what we need to do and send it out.
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return (ref $self . " will move a ticket's priority toward its final priority.");
-}
-# }}}
-
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
-
- if ($self->TicketObj->Priority() == $self->TicketObj->FinalPriority()) {
- # no update necessary.
- return 0;
- }
-
- #compute the number of days until the ticket is due
- my $due = $self->TicketObj->DueObj();
-
-
- # If we don't have a due date, adjust the priority by one
- # until we hit the final priority
- if ($due->Unix() < 1) {
- if ( $self->TicketObj->Priority > $self->TicketObj->FinalPriority ){
- $self->{'prio'} = ($self->TicketObj->Priority - 1);
- return 1;
- }
- elsif ( $self->TicketObj->Priority < $self->TicketObj->FinalPriority ){
- $self->{'prio'} = ($self->TicketObj->Priority + 1);
- return 1;
- }
- # otherwise the priority is at the final priority. we don't need to
- # Continue
- else {
- return 0;
- }
- }
-
- # we've got a due date. now there are other things we should do
- else {
- my $diff_in_seconds = $due->Diff(time());
- my $diff_in_days = int( $diff_in_seconds / 86400);
-
- #if we haven't hit the due date yet
- if ($diff_in_days > 0 ) {
-
- # compute the difference between the current priority and the
- # final priority
-
- my $prio_delta =
- $self->TicketObj->FinalPriority() - $self->TicketObj->Priority;
-
- my $inc_priority_by = int( $prio_delta / $diff_in_days );
-
- #set the ticket's priority to that amount
- $self->{'prio'} = $self->TicketObj->Priority + $inc_priority_by;
-
- }
- #if $days is less than 1, set priority to final_priority
- else {
- $self->{'prio'} = $self->TicketObj->FinalPriority();
- }
-
- }
- return 1;
-}
-# }}}
-
-sub Commit {
- my $self = shift;
- my ($val, $msg) = $self->TicketObj->SetPriority($self->{'prio'});
-
- unless ($val) {
- $RT::Logger->debug($self . " $msg\n");
- }
-}
-
-eval "require RT::Action::EscalatePriority_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/EscalatePriority_Vendor.pm});
-eval "require RT::Action::EscalatePriority_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/EscalatePriority_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/Generic.pm b/rt/lib/RT/Action/Generic.pm
deleted file mode 100755
index 007d299..0000000
--- a/rt/lib/RT/Action/Generic.pm
+++ /dev/null
@@ -1,195 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::Action::Generic - a generic baseclass for RT Actions
-
-=head1 SYNOPSIS
-
- use RT::Action::Generic;
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=begin testing
-
-ok (require RT::Action::Generic);
-
-=end testing
-
-=cut
-
-package RT::Action::Generic;
-
-use strict;
-
-# {{{ sub new
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->_Init(@_);
- return $self;
-}
-# }}}
-
-# {{{ sub new
-sub loc {
- my $self = shift;
- return $self->{'ScripObj'}->loc(@_);
-}
-# }}}
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- my %args = ( TransactionObj => undef,
- TicketObj => undef,
- ScripObj => undef,
- TemplateObj => undef,
- Argument => undef,
- Type => undef,
- @_ );
-
-
- $self->{'Argument'} = $args{'Argument'};
- $self->{'ScripObj'} = $args{'ScripObj'};
- $self->{'TicketObj'} = $args{'TicketObj'};
- $self->{'TransactionObj'} = $args{'TransactionObj'};
- $self->{'TemplateObj'} = $args{'TemplateObj'};
- $self->{'Type'} = $args{'Type'};
-}
-# }}}
-
-# Access Scripwide data
-
-# {{{ sub Argument
-sub Argument {
- my $self = shift;
- return($self->{'Argument'});
-}
-# }}}
-
-# {{{ sub TicketObj
-sub TicketObj {
- my $self = shift;
- return($self->{'TicketObj'});
-}
-# }}}
-
-# {{{ sub TransactionObj
-sub TransactionObj {
- my $self = shift;
- return($self->{'TransactionObj'});
-}
-# }}}
-
-# {{{ sub TemplateObj
-sub TemplateObj {
- my $self = shift;
- return($self->{'TemplateObj'});
-}
-# }}}
-
-# {{{ sub ScripObj
-sub ScripObj {
- my $self = shift;
- return($self->{'ScripObj'});
-}
-# }}}
-
-# {{{ sub Type
-sub Type {
- my $self = shift;
- return($self->{'Type'});
-}
-# }}}
-
-
-# Scrip methods
-
-#Do what we need to do and send it out.
-
-# {{{ sub Commit
-sub Commit {
- my $self = shift;
- return(0, $self->loc("Commit Stubbed"));
-}
-# }}}
-
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return $self->loc("No description for [_1]", ref $self);
-}
-# }}}
-
-
-#Parse the templates, get things ready to go.
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
- return (0, $self->loc("Prepare Stubbed"));
-}
-# }}}
-
-
-#If this rule applies to this transaction, return true.
-
-# {{{ sub IsApplicable
-sub IsApplicable {
- my $self = shift;
- return(undef);
-}
-# }}}
-
-# {{{ sub DESTROY
-sub DESTROY {
- my $self = shift;
-
- # We need to clean up all the references that might maybe get
- # oddly circular
- $self->{'TemplateObj'} =undef
- $self->{'TicketObj'} = undef;
- $self->{'TransactionObj'} = undef;
- $self->{'ScripObj'} = undef;
-
-
-
-}
-
-# }}}
-
-eval "require RT::Action::Generic_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Generic_Vendor.pm});
-eval "require RT::Action::Generic_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Generic_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/Notify.pm b/rt/lib/RT/Action/Notify.pm
deleted file mode 100755
index 1e4e4c0..0000000
--- a/rt/lib/RT/Action/Notify.pm
+++ /dev/null
@@ -1,132 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::Action::Notify;
-require RT::Action::SendEmail;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::SendEmail);
-
-# {{{ sub SetRecipients
-
-=head2 SetRecipients
-
-Sets the recipients of this meesage to Owner, Requestor, AdminCc, Cc or All.
-Explicitly B<does not> notify the creator of the transaction by default
-
-=cut
-
-sub SetRecipients {
- my $self = shift;
-
- my $arg = $self->Argument;
-
- $arg =~ s/\bAll\b/Owner,Requestor,AdminCc,Cc/;
-
- my ( @To, @PseudoTo, @Cc, @Bcc );
-
-
- if ($arg =~ /\bOtherRecipients\b/) {
- if ($self->TransactionObj->Attachments->First) {
- push (@Cc, $self->TransactionObj->Attachments->First->GetHeader('RT-Send-Cc'));
- push (@Bcc, $self->TransactionObj->Attachments->First->GetHeader('RT-Send-Bcc'));
- }
- }
-
- if ( $arg =~ /\bRequestor\b/ ) {
- push ( @To, $self->TicketObj->Requestors->MemberEmailAddresses );
- }
-
-
-
- if ( $arg =~ /\bCc\b/ ) {
-
- #If we have a To, make the Ccs, Ccs, otherwise, promote them to To
- if (@To) {
- push ( @Cc, $self->TicketObj->Cc->MemberEmailAddresses );
- push ( @Cc, $self->TicketObj->QueueObj->Cc->MemberEmailAddresses );
- }
- else {
- push ( @Cc, $self->TicketObj->Cc->MemberEmailAddresses );
- push ( @To, $self->TicketObj->QueueObj->Cc->MemberEmailAddresses );
- }
- }
-
- if ( ( $arg =~ /\bOwner\b/ )
- && ( $self->TicketObj->OwnerObj->id != $RT::Nobody->id ) )
- {
-
- # If we're not sending to Ccs or requestors,
- # then the Owner can be the To.
- if (@To) {
- push ( @Bcc, $self->TicketObj->OwnerObj->EmailAddress );
- }
- else {
- push ( @To, $self->TicketObj->OwnerObj->EmailAddress );
- }
-
- }
-
- if ( $arg =~ /\bAdminCc\b/ ) {
- push ( @Bcc, $self->TicketObj->AdminCc->MemberEmailAddresses );
- push ( @Bcc, $self->TicketObj->QueueObj->AdminCc->MemberEmailAddresses );
- }
-
- if ($RT::UseFriendlyToLine) {
- unless (@To) {
- push (
- @PseudoTo,
- sprintf($RT::FriendlyToLineFormat, $arg, $self->TicketObj->id),
- );
- }
- }
-
- my $creator = $self->TransactionObj->CreatorObj->EmailAddress();
-
- #Strip the sender out of the To, Cc and AdminCc and set the
- # recipients fields used to build the message by the superclass.
- # unless a flag is set
- if ($RT::NotifyActor) {
- @{ $self->{'To'} } = @To;
- @{ $self->{'Cc'} } = @Cc;
- @{ $self->{'Bcc'} } = @Bcc;
- }
- else {
- @{ $self->{'To'} } = grep ( !/^$creator$/, @To );
- @{ $self->{'Cc'} } = grep ( !/^$creator$/, @Cc );
- @{ $self->{'Bcc'} } = grep ( !/^$creator$/, @Bcc );
- }
- @{ $self->{'PseudoTo'} } = @PseudoTo;
- return (1);
-
-}
-
-# }}}
-
-eval "require RT::Action::Notify_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Notify_Vendor.pm});
-eval "require RT::Action::Notify_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/Notify_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/NotifyAsComment.pm b/rt/lib/RT/Action/NotifyAsComment.pm
deleted file mode 100755
index 210e4ab..0000000
--- a/rt/lib/RT/Action/NotifyAsComment.pm
+++ /dev/null
@@ -1,55 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::Action::NotifyAsComment;
-require RT::Action::Notify;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Notify);
-
-
-=head2 SetReturnAddress
-
-Tell SendEmail that this message should come out as a comment.
-Calls SUPER::SetReturnAddress.
-
-=cut
-
-sub SetReturnAddress {
- my $self = shift;
-
- # Tell RT::Action::SendEmail that this should come
- # from the relevant comment email address.
- $self->{'comment'} = 1;
-
- return($self->SUPER::SetReturnAddress(is_comment => 1));
-}
-
-eval "require RT::Action::NotifyAsComment_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/NotifyAsComment_Vendor.pm});
-eval "require RT::Action::NotifyAsComment_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/NotifyAsComment_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Action/RecordComment.pm b/rt/lib/RT/Action/RecordComment.pm
deleted file mode 100644
index d9740dc..0000000
--- a/rt/lib/RT/Action/RecordComment.pm
+++ /dev/null
@@ -1,118 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Action::RecordComment;
-require RT::Action::Generic;
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Generic);
-
-=head1 NAME
-
-RT::Action::RecordComment - An Action which can be used from an
-external tool, or in any situation where a ticket transaction has not
-been started, to make a comment on the ticket.
-
-=head1 SYNOPSIS
-
-my $action_obj = RT::Action::RecordComment->new('TicketObj' => $ticket_obj,
- 'TemplateObj' => $template_obj,
- );
-my $result = $action_obj->Prepare();
-$action_obj->Commit() if $result;
-
-=head1 METHODS
-
-=head2 Prepare
-
-Check for the existence of a Transaction. If a Transaction already
-exists, and is of type "Comment" or "Correspond", abort because that
-will give us a loop.
-
-=cut
-
-
-sub Prepare {
- my $self = shift;
- if (defined $self->{'TransactionObj'} &&
- $self->{'TransactionObj'}->Type =~ /^(Comment|Correspond)$/) {
- return undef;
- }
- return 1;
-}
-
-=head2 Commit
-
-Create a Transaction by calling the ticket's Comment method on our
-parsed Template, which may have an RT-Send-Cc or RT-Send-Bcc header.
-The Transaction will be of type Comment. This Transaction can then be
-used by the scrips that actually send the email.
-
-=cut
-
-sub Commit {
- my $self = shift;
- $self->CreateTransaction();
-}
-
-sub CreateTransaction {
- my $self = shift;
-
- my ($result, $msg) = $self->{'TemplateObj'}->Parse(
- TicketObj => $self->{'TicketObj'});
- return undef unless $result;
-
- my ($trans, $desc, $transaction) = $self->{'TicketObj'}->Comment(
- MIMEObj => $self->TemplateObj->MIMEObj);
- $self->{'TransactionObj'} = $transaction;
-}
-
-
-eval "require RT::Action::RecordComment_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/RecordComment_Vendor.pm});
-eval "require RT::Action::RecordComment_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/RecordComment_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/RecordCorrespondence.pm b/rt/lib/RT/Action/RecordCorrespondence.pm
deleted file mode 100644
index 62255ec..0000000
--- a/rt/lib/RT/Action/RecordCorrespondence.pm
+++ /dev/null
@@ -1,119 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Action::RecordCorrespondence;
-require RT::Action::Generic;
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Generic);
-
-=head1 NAME
-
-RT::Action::RecordCorrespondence - An Action which can be used from an
-external tool, or in any situation where a ticket transaction has not
-been started, to make a comment on the ticket.
-
-=head1 SYNOPSIS
-
-my $action_obj = RT::Action::RecordCorrespondence->new(
- 'TicketObj' => $ticket_obj,
- 'TemplateObj' => $template_obj,
- );
-my $result = $action_obj->Prepare();
-$action_obj->Commit() if $result;
-
-=head1 METHODS
-
-=head2 Prepare
-
-Check for the existence of a Transaction. If a Transaction already
-exists, and is of type "Comment" or "Correspond", abort because that
-will give us a loop.
-
-=cut
-
-
-sub Prepare {
- my $self = shift;
- if (defined $self->{'TransactionObj'} &&
- $self->{'TransactionObj'}->Type =~ /^(Comment|Correspond)$/) {
- return undef;
- }
- return 1;
-}
-
-=head2 Commit
-
-Create a Transaction by calling the ticket's Correspond method on our
-parsed Template, which may have an RT-Send-Cc or RT-Send-Bcc header.
-The Transaction will be of type Correspond. This Transaction can then
-be used by the scrips that actually send the email.
-
-=cut
-
-sub Commit {
- my $self = shift;
- $self->CreateTransaction();
-}
-
-sub CreateTransaction {
- my $self = shift;
-
- my ($result, $msg) = $self->{'TemplateObj'}->Parse(
- TicketObj => $self->{'TicketObj'});
- return undef unless $result;
-
- my ($trans, $desc, $transaction) = $self->{'TicketObj'}->Correspond(
- MIMEObj => $self->TemplateObj->MIMEObj);
- $self->{'TransactionObj'} = $transaction;
-}
-
-
-eval "require RT::Action::RecordCorrespondence_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/RecordCorrespondence_Vendor.pm});
-eval "require RT::Action::RecordCorrespondence_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/RecordCorrespondence_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/ResolveMembers.pm b/rt/lib/RT/Action/ResolveMembers.pm
deleted file mode 100644
index 02ff3a5..0000000
--- a/rt/lib/RT/Action/ResolveMembers.pm
+++ /dev/null
@@ -1,88 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# This Action will resolve all members of a resolved group ticket
-
-package RT::Action::ResolveMembers;
-require RT::Action::Generic;
-require RT::Links;
-
-use strict;
-use vars qw/@ISA/;
-@ISA=qw(RT::Action::Generic);
-
-#Do what we need to do and send it out.
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return $self->loc("[_1] will resolve all members of a resolved group ticket.", ref $self);
-}
-# }}}
-
-
-# {{{ sub Prepare
-sub Prepare {
- # nothing to prepare
- return 1;
-}
-# }}}
-
-sub Commit {
- my $self = shift;
-
- my $Links=RT::Links->new($RT::SystemUser);
- $Links->Limit(FIELD => 'Type', VALUE => 'MemberOf');
- $Links->Limit(FIELD => 'Target', VALUE => $self->TicketObj->id);
-
- while (my $Link=$Links->Next()) {
- # Todo: Try to deal with remote URIs as well
- next unless $Link->BaseURI->IsLocal;
- my $base=RT::Ticket->new($self->TicketObj->CurrentUser);
- # Todo: Only work if Base is a plain ticket num:
- $base->Load($Link->Base);
- # I'm afraid this might be a major bottleneck if ResolveGroupTicket is on.
- $base->Resolve;
- }
-}
-
-
-# Applicability checked in Commit.
-
-# {{{ sub IsApplicable
-sub IsApplicable {
- my $self = shift;
- 1;
- return 1;
-}
-# }}}
-
-eval "require RT::Action::ResolveMembers_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/ResolveMembers_Vendor.pm});
-eval "require RT::Action::ResolveMembers_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/ResolveMembers_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Action/SendEmail.pm b/rt/lib/RT/Action/SendEmail.pm
deleted file mode 100755
index dac8fc8..0000000
--- a/rt/lib/RT/Action/SendEmail.pm
+++ /dev/null
@@ -1,685 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Portions Copyright 2000 Tobias Brox <tobix@cpan.org>
-
-package RT::Action::SendEmail;
-require RT::Action::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Generic);
-
-use MIME::Words qw(encode_mimeword);
-
-use RT::EmailParser;
-
-=head1 NAME
-
-RT::Action::SendEmail - An Action which users can use to send mail
-or can subclassed for more specialized mail sending behavior.
-RT::Action::AutoReply is a good example subclass.
-
-=head1 SYNOPSIS
-
- require RT::Action::SendEmail;
- @ISA = qw(RT::Action::SendEmail);
-
-
-=head1 DESCRIPTION
-
-Basically, you create another module RT::Action::YourAction which ISA
-RT::Action::SendEmail.
-
-If you want to set the recipients of the mail to something other than
-the addresses mentioned in the To, Cc, Bcc and headers in
-the template, you should subclass RT::Action::SendEmail and override
-either the SetRecipients method or the SetTo, SetCc, etc methods (see
-the comments for the SetRecipients sub).
-
-
-=begin testing
-
-ok (require RT::Action::SendEmail);
-
-=end testing
-
-
-=head1 AUTHOR
-
-Jesse Vincent <jesse@bestpractical.com> and Tobias Brox <tobix@cpan.org>
-
-=head1 SEE ALSO
-
-perl(1).
-
-=cut
-
-# {{{ Scrip methods (_Init, Commit, Prepare, IsApplicable)
-
-# {{{ sub _Init
-# We use _Init from RT::Action
-# }}}
-
-# {{{ sub Commit
-#Do what we need to do and send it out.
-sub Commit {
- my $self = shift;
-
- my $MIMEObj = $self->TemplateObj->MIMEObj;
- my $msgid = $MIMEObj->head->get('Message-Id');
- chomp $msgid;
- $RT::Logger->info($msgid." #".$self->TicketObj->id."/".$self->TransactionObj->id." - Scrip ". $self->ScripObj->id ." ".$self->ScripObj->Description);
- #send the email
-
- # Weed out any RT addresses. We really don't want to talk to ourselves!
- @{$self->{'To'}} = RT::EmailParser::CullRTAddresses("", @{$self->{'To'}});
- @{$self->{'Cc'}} = RT::EmailParser::CullRTAddresses("", @{$self->{'Cc'}});
- @{$self->{'Bcc'}} = RT::EmailParser::CullRTAddresses("", @{$self->{'Bcc'}});
- # If there are no recipients, don't try to send the message.
- # If the transaction has content and has the header RT-Squelch-Replies-To
-
- if ( defined $self->TransactionObj->Attachments->First() ) {
-
- my $squelch = $self->TransactionObj->Attachments->First->GetHeader( 'RT-Squelch-Replies-To');
-
- if ($squelch) {
- my @blacklist = split ( /,/, $squelch );
-
- # Cycle through the people we're sending to and pull out anyone on the
- # system blacklist
-
- foreach my $person_to_yank (@blacklist) {
- $person_to_yank =~ s/\s//g;
- @{ $self->{'To'} } =
- grep ( !/^$person_to_yank$/, @{ $self->{'To'} } );
- @{ $self->{'Cc'} } =
- grep ( !/^$person_to_yank$/, @{ $self->{'Cc'} } );
- @{ $self->{'Bcc'} } =
- grep ( !/^$person_to_yank$/, @{ $self->{'Bcc'} } );
- }
- }
- }
-
- # Go add all the Tos, Ccs and Bccs that we need to to the message to
- # make it happy, but only if we actually have values in those arrays.
-
- $self->SetHeader( 'To', join ( ',', @{ $self->{'To'} } ) )
- if ( $self->{'To'} && @{ $self->{'To'} } );
- $self->SetHeader( 'Cc', join ( ',', @{ $self->{'Cc'} } ) )
- if ( $self->{'Cc'} && @{ $self->{'Cc'} } );
- $self->SetHeader( 'Bcc', join ( ',', @{ $self->{'Bcc'} } ) )
- if ( $self->{'Cc'} && @{ $self->{'Bcc'} } );
-
-
- $self->SetHeader('MIME-Version', '1.0');
-
- # try to convert message body from utf-8 to $RT::EmailOutputEncoding
- $self->SetHeader( 'Content-Type', 'text/plain; charset="utf-8"' );
-
- RT::I18N::SetMIMEEntityToEncoding( $MIMEObj, $RT::EmailOutputEncoding, 'mime_words_ok' );
- $self->SetHeader( 'Content-Type', 'text/plain; charset="' . $RT::EmailOutputEncoding . '"' );
-
-
- # Build up a MIME::Entity that looks like the original message.
-
- my $do_attach = $self->TemplateObj->MIMEObj->head->get('RT-Attach-Message');
-
- if ($do_attach) {
- $self->TemplateObj->MIMEObj->head->delete('RT-Attach-Message');
-
- my $attachments = RT::Attachments->new($RT::SystemUser);
- $attachments->Limit( FIELD => 'TransactionId',
- VALUE => $self->TransactionObj->Id );
- $attachments->OrderBy('id');
-
- my $transaction_content_obj = $self->TransactionObj->ContentObj;
-
- # attach any of this transaction's attachments
- while ( my $attach = $attachments->Next ) {
-
- # Don't attach anything blank
- next unless ( $attach->ContentLength );
-
- # We want to make sure that we don't include the attachment that's being sued as the "Content" of this message"
- next
- if ( $transaction_content_obj
- && $transaction_content_obj->Id == $attach->Id
- && $transaction_content_obj->ContentType =~ qr{text/plain}i
- );
- $MIMEObj->make_multipart('mixed');
- $MIMEObj->attach( Type => $attach->ContentType,
- Charset => $attach->OriginalEncoding,
- Data => $attach->OriginalContent,
- Filename => $self->MIMEEncodeString( $attach->Filename, $RT::EmailOutputEncoding ),
- Encoding => '-SUGGEST');
- }
-
- }
-
-
- my $retval = $self->SendMessage($MIMEObj);
-
-
- return ($retval);
-}
-
-# }}}
-
-# {{{ sub Prepare
-
-sub Prepare {
- my $self = shift;
-
- # This actually populates the MIME::Entity fields in the Template Object
-
- unless ( $self->TemplateObj ) {
- $RT::Logger->warning("No template object handed to $self\n");
- }
-
- unless ( $self->TransactionObj ) {
- $RT::Logger->warning("No transaction object handed to $self\n");
-
- }
-
- unless ( $self->TicketObj ) {
- $RT::Logger->warning("No ticket object handed to $self\n");
-
- }
-
- my ( $result, $message ) = $self->TemplateObj->Parse(
- Argument => $self->Argument,
- TicketObj => $self->TicketObj,
- TransactionObj => $self->TransactionObj
- );
- if ($result) {
-
- # Header
- $self->SetSubject();
- $self->SetSubjectToken();
- $self->SetRecipients();
- $self->SetReturnAddress();
- $self->SetRTSpecialHeaders();
- if ($RT::EmailOutputEncoding) {
-
- # l10n related header
- $self->SetHeaderAsEncoding( 'Subject', $RT::EmailOutputEncoding );
- }
- }
-
- return $result;
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ SendMessage
-=head2 SendMessage MIMEObj
-
-sends the message using RT's preferred API.
-TODO: Break this out to a seperate module
-
-=cut
-
-sub SendMessage {
- my $self = shift;
- my $MIMEObj = shift;
-
- my $msgid = $MIMEObj->head->get('Message-Id');
-
-
- #If we don't have any recipients to send to, don't send a message;
- unless ( $MIMEObj->head->get('To')
- || $MIMEObj->head->get('Cc')
- || $MIMEObj->head->get('Bcc') ) {
- $RT::Logger->info($msgid. " No recipients found. Not sending.\n");
- return (1);
- }
-
- # PseudoTo (fake to headers) shouldn't get matched for message recipients.
- # If we don't have any 'To' header, drop in the pseudo-to header.
-
- $self->SetHeader( 'To', join ( ',', @{ $self->{'PseudoTo'} } ) )
- if ( $self->{'PseudoTo'} && ( @{ $self->{'PseudoTo'} } )
- and ( !$MIMEObj->head->get('To') ) );
- if ( $RT::MailCommand eq 'sendmailpipe' ) {
- eval {
- open( MAIL, "|$RT::SendmailPath $RT::SendmailArguments" );
- print MAIL $MIMEObj->as_string;
- close(MAIL);
- };
- if ($@) {
- $RT::Logger->crit($msgid. "Could not send mail. -".$@ );
- }
- }
- else {
- my @mailer_args = ($RT::MailCommand);
- local $ENV{MAILADDRESS};
-
- if ( $RT::MailCommand eq 'sendmail' ) {
- push @mailer_args, $RT::SendmailArguments;
- }
- elsif ( $RT::MailCommand eq 'smtp' ) {
- $ENV{MAILADDRESS} = $RT::SMTPFrom || $MIMEObj->head->get('From');
- push @mailer_args, (Server => $RT::SMTPServer);
- push @mailer_args, (Debug => $RT::SMTPDebug);
- }
- else {
- push @mailer_args, $RT::MailParams;
- }
-
- unless ( $MIMEObj->send( @mailer_args ) ) {
- $RT::Logger->crit($msgid. "Could not send mail." );
- return (0);
- }
- }
-
-
- my $success = ($msgid. " sent To: ".$MIMEObj->head->get('To') . " Cc: ".$MIMEObj->head->get('Cc') . " Bcc: ".$MIMEObj->head->get('Bcc'));
- $success =~ s/\n//gi;
- $RT::Logger->info($success);
-
- return (1);
-}
-
-# }}}
-
-# {{{ Deal with message headers (Set* subs, designed for easy overriding)
-
-# {{{ sub SetRTSpecialHeaders
-
-=head2 SetRTSpecialHeaders
-
-This routine adds all the random headers that RT wants in a mail message
-that don't matter much to anybody else.
-
-=cut
-
-sub SetRTSpecialHeaders {
- my $self = shift;
-
- $self->SetReferences();
-
- $self->SetMessageID();
-
- $self->SetPrecedence();
-
- $self->SetHeader( 'X-RT-Loop-Prevention', $RT::rtname );
- $self->SetHeader( 'RT-Ticket',
- $RT::rtname . " #" . $self->TicketObj->id() );
- $self->SetHeader( 'Managed-by',
- "RT $RT::VERSION (http://www.bestpractical.com/rt/)" );
-
- $self->SetHeader( 'RT-Originator',
- $self->TransactionObj->CreatorObj->EmailAddress );
- return ();
-
-}
-
-# {{{ sub SetReferences
-
-=head2 SetReferences
-
- # This routine will set the References: and In-Reply-To headers,
-# autopopulating it with all the correspondence on this ticket so
-# far. This should make RT responses threadable.
-
-=cut
-
-sub SetReferences {
- my $self = shift;
-
- # TODO: this one is broken. What is this email really a reply to?
- # If it's a reply to an incoming message, we'll need to use the
- # actual message-id from the appropriate Attachment object. For
- # incoming mails, we would like to preserve the In-Reply-To and/or
- # References.
-
- $self->SetHeader( 'In-Reply-To',
- "<rt-" . $self->TicketObj->id() . "\@" . $RT::rtname . ">" );
-
- # TODO We should always add References headers for all message-ids
- # of previous messages related to this ticket.
-}
-
-# }}}
-
-# {{{ sub SetMessageID
-
-=head2 SetMessageID
-
-Without this one, threading won't work very nice in email agents.
-Anyway, I'm not really sure it's that healthy if we need to send
-several separate/different emails about the same transaction.
-
-=cut
-
-sub SetMessageID {
- my $self = shift;
-
- # TODO this one might be sort of broken. If we have several scrips +++
- # sending several emails to several different persons, we need to
- # pull out different message-ids. I'd suggest message ids like
- # "rt-ticket#-transaction#-scrip#-receipient#"
-
- $self->SetHeader( 'Message-ID',
- "<rt-"
- . $RT::VERSION ."-"
- . $self->TicketObj->id() . "-"
- . $self->TransactionObj->id() . "."
- . rand(20) . "\@"
- . $RT::Organization . ">" )
- unless $self->TemplateObj->MIMEObj->head->get('Message-ID');
-}
-
-# }}}
-
-# }}}
-
-# {{{ sub SetReturnAddress
-
-=head2 SetReturnAddress is_comment => BOOLEAN
-
-Calculate and set From and Reply-To headers based on the is_comment flag.
-
-=cut
-
-sub SetReturnAddress {
-
- my $self = shift;
- my %args = ( is_comment => 0,
- @_ );
-
- # From and Reply-To
- # $args{is_comment} should be set if the comment address is to be used.
- my $replyto;
-
- if ( $args{'is_comment'} ) {
- $replyto = $self->TicketObj->QueueObj->CommentAddress
- || $RT::CommentAddress;
- }
- else {
- $replyto = $self->TicketObj->QueueObj->CorrespondAddress
- || $RT::CorrespondAddress;
- }
-
- unless ( $self->TemplateObj->MIMEObj->head->get('From') ) {
- if ($RT::UseFriendlyFromLine) {
- my $friendly_name = $self->TransactionObj->CreatorObj->RealName;
- if ( $friendly_name =~ /^"(.*)"$/ ) { # a quoted string
- $friendly_name = $1;
- }
-
- $friendly_name =~ s/"/\\"/g;
- $self->SetHeader( 'From',
- sprintf($RT::FriendlyFromLineFormat,
- $self->MIMEEncodeString( $friendly_name, $RT::EmailOutputEncoding ), $replyto),
- );
- }
- else {
- $self->SetHeader( 'From', $replyto );
- }
- }
-
- unless ( $self->TemplateObj->MIMEObj->head->get('Reply-To') ) {
- $self->SetHeader( 'Reply-To', "$replyto" );
- }
-
-}
-
-# }}}
-
-# {{{ sub SetHeader
-
-=head2 SetHeader FIELD, VALUE
-
-Set the FIELD of the current MIME object into VALUE.
-
-=cut
-
-sub SetHeader {
- my $self = shift;
- my $field = shift;
- my $val = shift;
-
- chomp $val;
- chomp $field;
- $self->TemplateObj->MIMEObj->head->fold_length( $field, 10000 );
- $self->TemplateObj->MIMEObj->head->replace( $field, $val );
- return $self->TemplateObj->MIMEObj->head->get($field);
-}
-
-# }}}
-
-# {{{ sub SetRecipients
-
-=head2 SetRecipients
-
-Dummy method to be overriden by subclasses which want to set the recipients.
-
-=cut
-
-sub SetRecipients {
- my $self = shift;
- return ();
-}
-
-# }}}
-
-# {{{ sub SetTo
-
-=head2 SetTo
-
-Takes a string that is the addresses you want to send mail to
-
-=cut
-
-sub SetTo {
- my $self = shift;
- my $addresses = shift;
- return $self->SetHeader( 'To', $addresses );
-}
-
-# }}}
-
-# {{{ sub SetCc
-
-=head2 SetCc
-
-Takes a string that is the addresses you want to Cc
-
-=cut
-
-sub SetCc {
- my $self = shift;
- my $addresses = shift;
-
- return $self->SetHeader( 'Cc', $addresses );
-}
-
-# }}}
-
-# {{{ sub SetBcc
-
-=head2 SetBcc
-
-Takes a string that is the addresses you want to Bcc
-
-=cut
-
-sub SetBcc {
- my $self = shift;
- my $addresses = shift;
-
- return $self->SetHeader( 'Bcc', $addresses );
-}
-
-# }}}
-
-# {{{ sub SetPrecedence
-
-sub SetPrecedence {
- my $self = shift;
-
- unless ( $self->TemplateObj->MIMEObj->head->get("Precedence") ) {
- $self->SetHeader( 'Precedence', "bulk" );
- }
-}
-
-# }}}
-
-# {{{ sub SetSubject
-
-=head2 SetSubject
-
-This routine sets the subject. it does not add the rt tag. that gets done elsewhere
-If $self->{'Subject'} is already defined, it uses that. otherwise, it tries to get
-the transaction's subject.
-
-=cut
-
-sub SetSubject {
- my $self = shift;
- my $subject;
-
- unless ( $self->TemplateObj->MIMEObj->head->get('Subject') ) {
- my $message = $self->TransactionObj->Attachments;
- my $ticket = $self->TicketObj->Id;
-
- if ( $self->{'Subject'} ) {
- $subject = $self->{'Subject'};
- }
- elsif ( ( $message->First() )
- && ( $message->First->Headers ) ) {
- my $header = $message->First->Headers();
- $header =~ s/\n\s+/ /g;
- if ( $header =~ /^Subject: (.*?)$/m ) {
- $subject = $1;
- }
- else {
- $subject = $self->TicketObj->Subject();
- }
-
- }
- else {
- $subject = $self->TicketObj->Subject();
- }
-
- $subject =~ s/(\r\n|\n|\s)/ /gi;
-
- chomp $subject;
- $self->SetHeader( 'Subject', $subject );
-
- }
- return ($subject);
-}
-
-# }}}
-
-# {{{ sub SetSubjectToken
-
-=head2 SetSubjectToken
-
-This routine fixes the RT tag in the subject. It's unlikely that you want to overwrite this.
-
-=cut
-
-sub SetSubjectToken {
- my $self = shift;
- my $tag = "[$RT::rtname #" . $self->TicketObj->id . "]";
- my $sub = $self->TemplateObj->MIMEObj->head->get('Subject');
- unless ( $sub =~ /\Q$tag\E/ ) {
- $sub =~ s/(\r\n|\n|\s)/ /gi;
- chomp $sub;
- $self->TemplateObj->MIMEObj->head->replace( 'Subject', "$tag $sub" );
- }
-}
-
-# }}}
-
-# }}}
-
-# {{{
-
-=head2 SetHeaderAsEncoding($field_name, $charset_encoding)
-
-This routine converts the field into specified charset encoding.
-
-=cut
-
-sub SetHeaderAsEncoding {
- my $self = shift;
- my ( $field, $enc ) = ( shift, shift );
-
- if ($field eq 'From' and $RT::SMTPFrom) {
- $self->TemplateObj->MIMEObj->head->replace( $field, $RT::SMTPFrom );
- return;
- }
-
- my $value = $self->TemplateObj->MIMEObj->head->get($field);
-
- # don't bother if it's us-ascii
-
- # See RT::I18N, 'NOTES: Why Encode::_utf8_off before Encode::from_to'
-
- $value = $self->MIMEEncodeString($value, $enc);
-
- $self->TemplateObj->MIMEObj->head->replace( $field, $value );
-
-
-}
-# }}}
-
-# {{{ MIMENcodeString
-
-=head2 MIMEEncodeString STRING ENCODING
-
-Takes a string and a possible encoding and returns the string wrapped in MIME goo.
-
-=cut
-
-sub MIMEEncodeString {
- my $self = shift;
- my $value = shift;
- my $enc = shift;
-
- chomp $value;
- return ($value) unless $value =~ /[^\x20-\x7e]/;
-
- $value =~ s/\s*$//;
- Encode::_utf8_off($value);
- my $res = Encode::from_to( $value, "utf-8", $enc );
- $value = encode_mimeword( $value, 'B', $enc );
-}
-
-# }}}
-
-eval "require RT::Action::SendEmail_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/SendEmail_Vendor.pm});
-eval "require RT::Action::SendEmail_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/SendEmail_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Action/SetPriority.pm b/rt/lib/RT/Action/SetPriority.pm
deleted file mode 100644
index c129bf0..0000000
--- a/rt/lib/RT/Action/SetPriority.pm
+++ /dev/null
@@ -1,83 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Action::SetPriority;
-require RT::Action::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA=qw(RT::Action::Generic);
-
-#Do what we need to do and send it out.
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return (ref $self . " will set a ticket's priority to the argument provided.");
-}
-# }}}
-
-
-# {{{ sub Prepare
-sub Prepare {
- # nothing to prepare
- return 1;
-}
-# }}}
-
-sub Commit {
- my $self = shift;
- $self->TicketObj->SetPriority($self->Argument);
-
-}
-
-eval "require RT::Action::SetPriority_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/SetPriority_Vendor.pm});
-eval "require RT::Action::SetPriority_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/SetPriority_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Action/UserDefined.pm b/rt/lib/RT/Action/UserDefined.pm
deleted file mode 100644
index 90653f6..0000000
--- a/rt/lib/RT/Action/UserDefined.pm
+++ /dev/null
@@ -1,93 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-package RT::Action::UserDefined;
-use RT::Action::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Action::Generic);
-
-=head2 Prepare
-
-This happens on every transaction. it's always applicable
-
-=cut
-
-sub Prepare {
- my $self = shift;
- my $retval = eval $self->ScripObj->CustomPrepareCode;
- if ($@) {
- $RT::Logger->error("Scrip ".$self->ScripObj->Id. " Prepare failed: ".$@);
- return (undef);
- }
- return ($retval);
-}
-
-=head2 Commit
-
-This happens on every transaction. it's always applicable
-
-=cut
-
-sub Commit {
- my $self = shift;
- my $retval = eval $self->ScripObj->CustomCommitCode;
- if ($@) {
- $RT::Logger->error("Scrip ".$self->ScripObj->Id. " Commit failed: ".$@);
- return (undef);
- }
- return ($retval);
-}
-
-eval "require RT::Action::UserDefined_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/UserDefined_Vendor.pm});
-eval "require RT::Action::UserDefined_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Action/UserDefined_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Attachment.pm b/rt/lib/RT/Attachment.pm
deleted file mode 100755
index 2ed5201..0000000
--- a/rt/lib/RT/Attachment.pm
+++ /dev/null
@@ -1,372 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Attachment
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Attachment;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Attachments');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'TransactionId'.
- int(11) 'Parent'.
- varchar(160) 'MessageId'.
- varchar(255) 'Subject'.
- varchar(255) 'Filename'.
- varchar(80) 'ContentType'.
- varchar(80) 'ContentEncoding'.
- longtext 'Content'.
- longtext 'Headers'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- TransactionId => '0',
- Parent => '0',
- MessageId => '',
- Subject => '',
- Filename => '',
- ContentType => '',
- ContentEncoding => '',
- Content => '',
- Headers => '',
-
- @_);
- $self->SUPER::Create(
- TransactionId => $args{'TransactionId'},
- Parent => $args{'Parent'},
- MessageId => $args{'MessageId'},
- Subject => $args{'Subject'},
- Filename => $args{'Filename'},
- ContentType => $args{'ContentType'},
- ContentEncoding => $args{'ContentEncoding'},
- Content => $args{'Content'},
- Headers => $args{'Headers'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item TransactionId
-
-Returns the current value of TransactionId.
-(In the database, TransactionId is stored as int(11).)
-
-
-
-=item SetTransactionId VALUE
-
-
-Set TransactionId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TransactionId will be stored as a int(11).)
-
-
-=cut
-
-
-=item Parent
-
-Returns the current value of Parent.
-(In the database, Parent is stored as int(11).)
-
-
-
-=item SetParent VALUE
-
-
-Set Parent to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Parent will be stored as a int(11).)
-
-
-=cut
-
-
-=item MessageId
-
-Returns the current value of MessageId.
-(In the database, MessageId is stored as varchar(160).)
-
-
-
-=item SetMessageId VALUE
-
-
-Set MessageId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, MessageId will be stored as a varchar(160).)
-
-
-=cut
-
-
-=item Subject
-
-Returns the current value of Subject.
-(In the database, Subject is stored as varchar(255).)
-
-
-
-=item SetSubject VALUE
-
-
-Set Subject to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Subject will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item Filename
-
-Returns the current value of Filename.
-(In the database, Filename is stored as varchar(255).)
-
-
-
-=item SetFilename VALUE
-
-
-Set Filename to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Filename will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item ContentType
-
-Returns the current value of ContentType.
-(In the database, ContentType is stored as varchar(80).)
-
-
-
-=item SetContentType VALUE
-
-
-Set ContentType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContentType will be stored as a varchar(80).)
-
-
-=cut
-
-
-=item ContentEncoding
-
-Returns the current value of ContentEncoding.
-(In the database, ContentEncoding is stored as varchar(80).)
-
-
-
-=item SetContentEncoding VALUE
-
-
-Set ContentEncoding to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContentEncoding will be stored as a varchar(80).)
-
-
-=cut
-
-
-=item Content
-
-Returns the current value of Content.
-(In the database, Content is stored as longtext.)
-
-
-
-=item SetContent VALUE
-
-
-Set Content to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Content will be stored as a longtext.)
-
-
-=cut
-
-
-=item Headers
-
-Returns the current value of Headers.
-(In the database, Headers is stored as longtext.)
-
-
-
-=item SetHeaders VALUE
-
-
-Set Headers to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Headers will be stored as a longtext.)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- TransactionId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Parent =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- MessageId =>
- {read => 1, write => 1, type => 'varchar(160)', default => ''},
- Subject =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- Filename =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- ContentType =>
- {read => 1, write => 1, type => 'varchar(80)', default => ''},
- ContentEncoding =>
- {read => 1, write => 1, type => 'varchar(80)', default => ''},
- Content =>
- {read => 1, write => 1, type => 'longtext', default => ''},
- Headers =>
- {read => 1, write => 1, type => 'longtext', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Attachment_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachment_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Attachment_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachment_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Attachment_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachment_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Attachment_Overlay, RT::Attachment_Vendor, RT::Attachment_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Attachment_Overlay.pm b/rt/lib/RT/Attachment_Overlay.pm
deleted file mode 100644
index fe189e3..0000000
--- a/rt/lib/RT/Attachment_Overlay.pm
+++ /dev/null
@@ -1,614 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 SYNOPSIS
-
- use RT::Attachment;
-
-
-=head1 DESCRIPTION
-
-This module should never be instantiated directly by client code. it's an internal
-module which should only be instantiated through exported APIs in Ticket, Queue and other
-similar objects.
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Attachment);
-
-=end testing
-
-=cut
-
-
-package RT::Attachment;
-
-use strict;
-no warnings qw(redefine);
-
-use MIME::Base64;
-use MIME::QuotedPrint;
-
-
-# {{{ sub _OverlayAccessible
-sub _OverlayAccessible {
- {
- TransactionId => { 'read'=>1, 'public'=>1, 'write' => 0 },
- MessageId => { 'read'=>1, 'write' => 0 },
- Parent => { 'read'=>1, 'write' => 0 },
- ContentType => { 'read'=>1, 'write' => 0 },
- Subject => { 'read'=>1, 'write' => 0 },
- Content => { 'read'=>1, 'write' => 0 },
- ContentEncoding => { 'read'=>1, 'write' => 0 },
- Headers => { 'read'=>1, 'write' => 0 },
- Filename => { 'read'=>1, 'write' => 0 },
- Creator => { 'read'=>1, 'auto'=>1, },
- Created => { 'read'=>1, 'auto'=>1, },
- };
-}
-# }}}
-
-# {{{ sub TransactionObj
-
-=head2 TransactionObj
-
-Returns the transaction object asscoiated with this attachment.
-
-=cut
-
-sub TransactionObj {
- require RT::Transaction;
- my $self=shift;
- unless (exists $self->{_TransactionObj}) {
- $self->{_TransactionObj}=RT::Transaction->new($self->CurrentUser);
- $self->{_TransactionObj}->Load($self->TransactionId);
- }
- unless ($self->{_TransactionObj}->Id) {
- $RT::Logger->crit("Attachment ".$self->id." can't find transaction ".$self->TransactionId." which it is ostensibly part of. That's bad");
- }
- return $self->{_TransactionObj};
-}
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create
-
-Create a new attachment. Takes a paramhash:
-
- 'Attachment' Should be a single MIME body with optional subparts
- 'Parent' is an optional Parent RT::Attachment object
- 'TransactionId' is the mandatory id of the Transaction this attachment is associated with.;
-
-=cut
-
-sub Create {
- my $self = shift;
- my ($id);
- my %args = ( id => 0,
- TransactionId => 0,
- Parent => 0,
- Attachment => undef,
- @_ );
-
- #For ease of reference
- my $Attachment = $args{'Attachment'};
-
- #if we didn't specify a ticket, we need to bail
- if ( $args{'TransactionId'} == 0 ) {
- $RT::Logger->crit( "RT::Attachment->Create couldn't, as you didn't specify a transaction\n" );
- return (0);
-
- }
-
- #If we possibly can, collapse it to a singlepart
- $Attachment->make_singlepart;
-
- #Get the subject
- my $Subject = $Attachment->head->get( 'subject', 0 );
- defined($Subject) or $Subject = '';
- chomp($Subject);
-
- #Get the Message-ID
- my $MessageId = $Attachment->head->get( 'Message-ID', 0 );
- defined($MessageId) or $MessageId = '';
- chomp ($MessageId);
- $MessageId =~ s/^<(.*)>$/$1/go;
-
-
- #Get the filename
- my $Filename = $Attachment->head->recommended_filename || eval {
- ${ $Attachment->head->{mail_hdr_hash}{'Content-Disposition'}[0] }
- =~ /^.*\bfilename="(.*)"$/ ? $1 : ''
- };
-
- # If a message has no bodyhandle, that means that it has subparts (or appears to)
- # and we should act accordingly.
- unless ( defined $Attachment->bodyhandle ) {
-
- $id = $self->SUPER::Create(
- TransactionId => $args{'TransactionId'},
- Parent => 0,
- ContentType => $Attachment->mime_type,
- Headers => $Attachment->head->as_string,
- MessageId => $MessageId,
- Subject => $Subject);
-
- unless ($id) {
- $RT::Logger->crit("Attachment insert failed - ".$RT::Handle->dbh->errstr);
-
- }
-
- foreach my $part ( $Attachment->parts ) {
- my $SubAttachment = new RT::Attachment( $self->CurrentUser );
- $SubAttachment->Create(
- TransactionId => $args{'TransactionId'},
- Parent => $id,
- Attachment => $part,
- ContentType => $Attachment->mime_type,
-
- );
- }
- return ($id);
- }
-
- #If it's not multipart
- else {
-
- my ($ContentEncoding, $Body) = $self->_EncodeLOB($Attachment->bodyhandle->as_string, $Attachment->mime_type);
- my $id = $self->SUPER::Create( TransactionId => $args{'TransactionId'},
- ContentType => $Attachment->mime_type,
- ContentEncoding => $ContentEncoding,
- Parent => $args{'Parent'},
- Headers => $Attachment->head->as_string,
- Subject => $Subject,
- Content => $Body,
- Filename => $Filename,
- MessageId => $MessageId
- );
- unless ($id) {
- $RT::Logger->crit("Attachment insert failed - ".$RT::Handle->dbh->errstr);
- }
-
- return ($id);
- }
-}
-
-# }}}
-
-
-=head2 Import
-
-Create an attachment exactly as specified in the named parameters.
-
-=cut
-
-
-sub Import {
- my $self = shift;
- my %args = ( ContentEncoding => 'none',
-
- @_ );
-
-
- ($args{'ContentEncoding'}, $args{'Content'}) = $self->_EncodeLOB($args{'Content'}, $args{'MimeType'});
-
- return($self->SUPER::Create(%args));
-}
-
-# {{{ sub Content
-
-=head2 Content
-
-Returns the attachment's content. if it's base64 encoded, decode it
-before returning it.
-
-=cut
-
-sub Content {
- my $self = shift;
- $self->_DecodeLOB($self->ContentType, $self->ContentEncoding, $self->_Value('Content', decode_utf8 => 0));
-}
-
-
-# }}}
-
-
-# {{{ sub OriginalContent
-
-=head2 OriginalContent
-
-Returns the attachment's content as octets before RT's mangling.
-Currently, this just means restoring text content back to its
-original encoding.
-
-=cut
-
-sub OriginalContent {
- my $self = shift;
-
- return $self->Content unless (
- $self->ContentType =~ qr{^(text/plain|message/rfc822)$}i) ;
- my $enc = $self->OriginalEncoding;
-
- my $content;
- if ( $self->ContentEncoding eq 'none' || ! $self->ContentEncoding ) {
- $content = $self->_Value('Content', decode_utf8 => 0);
- } elsif ( $self->ContentEncoding eq 'base64' ) {
- $content = MIME::Base64::decode_base64($self->_Value('Content', decode_utf8 => 0));
- } elsif ( $self->ContentEncoding eq 'quoted-printable' ) {
- return MIME::QuotedPrint::decode($self->_Value('Content', decode_utf8 => 0));
- } else {
- return( $self->loc("Unknown ContentEncoding [_1]", $self->ContentEncoding));
- }
-
- # Encode::_utf8_on($content);
- if (!$enc || $enc eq '' || $enc eq 'utf8' || $enc eq 'utf-8') {
- # If we somehow fail to do the decode, at least push out the raw bits
- eval {return( Encode::decode_utf8($content))} || return ($content);
- }
-
- eval { Encode::from_to($content, 'utf8' => $enc);};
- if ($@) {
- $RT::Logger->error("Could not convert attachment from assumed utf8 to '$enc' :".$@);
- }
- return $content;
-}
-
-# }}}
-
-
-# {{{ sub OriginalEncoding
-
-=head2 OriginalEncoding
-
-Returns the attachment's original encoding.
-
-=cut
-
-sub OriginalEncoding {
- my $self = shift;
- return $self->GetHeader('X-RT-Original-Encoding');
-}
-
-# }}}
-
-# {{{ sub Children
-
-=head2 Children
-
- Returns an RT::Attachments object which is preloaded with all Attachments objects with this Attachment\'s Id as their 'Parent'
-
-=cut
-
-sub Children {
- my $self = shift;
-
- my $kids = new RT::Attachments($self->CurrentUser);
- $kids->ChildrenOf($self->Id);
- return($kids);
-}
-
-# }}}
-
-# {{{ UTILITIES
-
-# {{{ sub Quote
-
-
-
-sub Quote {
- my $self=shift;
- my %args=(Reply=>undef, # Prefilled reply (i.e. from the KB/FAQ system)
- @_);
-
- my ($quoted_content, $body, $headers);
- my $max=0;
-
- # TODO: Handle Multipart/Mixed (eventually fix the link in the
- # ShowHistory web template?)
- if ($self->ContentType =~ m{^(text/plain|message)}i) {
- $body=$self->Content;
-
- # Do we need any preformatting (wrapping, that is) of the message?
-
- # Remove quoted signature.
- $body =~ s/\n-- \n(.*)$//s;
-
- # What's the longest line like?
- foreach (split (/\n/,$body)) {
- $max=length if ( length > $max);
- }
-
- if ($max>76) {
- require Text::Wrapper;
- my $wrapper=new Text::Wrapper
- (
- columns => 70,
- body_start => ($max > 70*3 ? ' ' : ''),
- par_start => ''
- );
- $body=$wrapper->wrap($body);
- }
-
- $body =~ s/^/> /gm;
-
- $body = '[' . $self->TransactionObj->CreatorObj->Name() . ' - ' . $self->TransactionObj->CreatedAsString()
- . "]:\n\n"
- . $body . "\n\n";
-
- } else {
- $body = "[Non-text message not quoted]\n\n";
- }
-
- $max=60 if $max<60;
- $max=70 if $max>78;
- $max+=2;
-
- return (\$body, $max);
-}
-# }}}
-
-# {{{ sub NiceHeaders - pulls out only the most relevant headers
-
-=head2 NiceHeaders
-
-Returns a multi-line string of the To, From, Cc, Date and Subject headers.
-
-=cut
-
-sub NiceHeaders {
- my $self = shift;
- my $hdrs = "";
- my @hdrs = $self->_SplitHeaders;
- while (my $str = shift @hdrs) {
- next unless $str =~ /^(To|From|RT-Send-Cc|Cc|Bcc|Date|Subject):/i;
- $hdrs .= $str . "\n";
- $hdrs .= shift( @hdrs ) . "\n" while ($hdrs[0] =~ /^[ \t]+/);
- }
- return $hdrs;
-}
-# }}}
-
-# {{{ sub Headers
-
-=head2 Headers
-
-Returns this object's headers as a string. This method specifically
-removes the RT-Send-Bcc: header, so as to never reveal to whom RT sent a Bcc.
-We need to record the RT-Send-Cc and RT-Send-Bcc values so that we can actually send
-out mail. (The mailing rules are separated from the ticket update code by
-an abstraction barrier that makes it impossible to pass this data directly
-
-=cut
-
-sub Headers {
- my $self = shift;
- my $hdrs="";
- my @headers = grep { !/^RT-Send-Bcc/i } $self->_SplitHeaders;
- return join("\n",@headers);
-
-}
-
-
-# }}}
-
-# {{{ sub GetHeader
-
-=head2 GetHeader ( 'Tag')
-
-Returns the value of the header Tag as a string. This bypasses the weeding out
-done in Headers() above.
-
-=cut
-
-sub GetHeader {
- my $self = shift;
- my $tag = shift;
- foreach my $line ($self->_SplitHeaders) {
- if ($line =~ /^\Q$tag\E:\s+(.*)$/si) { #if we find the header, return its value
- return ($1);
- }
- }
-
- # we found no header. return an empty string
- return undef;
-}
-# }}}
-
-# {{{ sub SetHeader
-
-=head2 SetHeader ( 'Tag', 'Value' )
-
-Replace or add a Header to the attachment's headers.
-
-=cut
-
-sub SetHeader {
- my $self = shift;
- my $tag = shift;
- my $newheader = '';
-
- foreach my $line ($self->_SplitHeaders) {
- if (defined $tag and $line =~ /^\Q$tag\E:\s+(.*)$/i) {
- $newheader .= "$tag: $_[0]\n";
- undef $tag;
- }
- else {
- $newheader .= "$line\n";
- }
- }
-
- $newheader .= "$tag: $_[0]\n" if defined $tag;
- $self->__Set( Field => 'Headers', Value => $newheader);
-}
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
- #if the field is public, return it.
- if ( $self->_Accessible( $field, 'public' ) ) {
- return ( $self->__Value( $field, @_ ) );
- }
-
- #If it's a comment, we need to be extra special careful
- elsif ( $self->TransactionObj->Type =~ /^Comment/ ) {
- if ( $self->TransactionObj->CurrentUserHasRight('ShowTicketComments') )
- {
- return ( $self->__Value( $field, @_ ) );
- }
- }
- elsif ( $self->TransactionObj->CurrentUserHasRight('ShowTicket') ) {
- return ( $self->__Value( $field, @_ ) );
- }
-
- #if they ain't got rights to see, don't let em
- else {
- return (undef);
- }
-
-}
-
-# }}}
-
-=head2 _SplitHeaders
-
-Returns an array of this attachment object's headers, with one header
-per array entry. multiple lines are folded.
-
-=begin testing
-
-my $test1 = "From: jesse";
-my @headers = RT::Attachment->_SplitHeaders($test1);
-is ($#headers, 0, $test1 );
-
-my $test2 = qq{From: jesse
-To: bobby
-Subject: foo
-};
-
-@headers = RT::Attachment->_SplitHeaders($test2);
-is ($#headers, 2, "testing a bunch of singline multiple headers" );
-
-
-my $test3 = qq{From: jesse
-To: bobby,
- Suzie,
- Sally,
- Joey: bizzy,
-Subject: foo
-};
-
-@headers = RT::Attachment->_SplitHeaders($test3);
-is ($#headers, 2, "testing a bunch of singline multiple headers" );
-
-
-=end testing
-
-=cut
-
-sub _SplitHeaders {
- my $self = shift;
- my $headers = (shift || $self->SUPER::Headers());
- my @headers;
- for (split(/\n(?=\w|\z)/,$headers)) {
- push @headers, $_;
-
- }
- return(@headers);
-}
-
-
-sub ContentLength {
- my $self = shift;
-
- unless ( (($self->TransactionObj->CurrentUserHasRight('ShowTicketComments')) and
- ($self->TransactionObj->Type eq 'Comment') ) or
- ($self->TransactionObj->CurrentUserHasRight('ShowTicket'))) {
- return undef;
- }
-
- if (my $len = $self->GetHeader('Content-Length')) {
- return $len;
- }
-
- {
- use bytes;
- my $len = length($self->Content);
- $self->SetHeader('Content-Length' => $len);
- return $len;
- }
-}
-
-# }}}
-
-# Transactions don't change. by adding this cache congif directiove, we don't lose pathalogically on long tickets.
-sub _CacheConfig {
- {
- 'cache_p' => 1,
- 'fast_update_p' => 1,
- 'cache_for_sec' => 180,
- }
-}
-
-1;
diff --git a/rt/lib/RT/Attachments.pm b/rt/lib/RT/Attachments.pm
deleted file mode 100755
index 177cdd0..0000000
--- a/rt/lib/RT/Attachments.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Attachments -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Attachments
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Attachments;
-
-use RT::SearchBuilder;
-use RT::Attachment;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Attachments';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Attachment item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Attachment->new($self->CurrentUser));
-}
-
- eval "require RT::Attachments_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachments_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Attachments_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachments_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Attachments_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Attachments_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Attachments_Overlay, RT::Attachments_Vendor, RT::Attachments_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Attachments_Overlay.pm b/rt/lib/RT/Attachments_Overlay.pm
deleted file mode 100644
index 1ea56e4..0000000
--- a/rt/lib/RT/Attachments_Overlay.pm
+++ /dev/null
@@ -1,170 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Attachments - a collection of RT::Attachment objects
-
-=head1 SYNOPSIS
-
- use RT::Attachments;
-
-=head1 DESCRIPTION
-
-This module should never be called directly by client code. it's an internal module which
-should only be accessed through exported APIs in Ticket, Queue and other similar objects.
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Attachments);
-
-=end testing
-
-=cut
-
-
-package RT::Attachments;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
-
- $self->{'table'} = "Attachments";
- $self->{'primary_key'} = "id";
- return ( $self->SUPER::_Init(@_));
-}
-# }}}
-
-
-# {{{ sub ContentType
-
-=head2 ContentType (VALUE => 'text/plain', ENTRYAGGREGATOR => 'OR', OPERATOR => '=' )
-
-Limit result set to attachments of ContentType 'TYPE'...
-
-=cut
-
-
-sub ContentType {
- my $self = shift;
- my %args = ( VALUE => 'text/plain',
- OPERATOR => '=',
- ENTRYAGGREGATOR => 'OR',
- @_);
-
- $self->Limit ( FIELD => 'ContentType',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- ENTRYAGGREGATOR => $args{'ENTRYAGGREGATOR'});
-}
-# }}}
-
-# {{{ sub ChildrenOf
-
-=head2 ChildrenOf ID
-
-Limit result set to children of Attachment ID
-
-=cut
-
-
-sub ChildrenOf {
- my $self = shift;
- my $attachment = shift;
- $self->Limit ( FIELD => 'Parent',
- VALUE => $attachment);
-}
-# }}}
-
-# {{{ sub NewItem
-sub NewItem {
- my $self = shift;
-
- use RT::Attachment;
- my $item = new RT::Attachment($self->CurrentUser);
- return($item);
-}
-# }}}
-
-# {{{ sub Next
-sub Next {
- my $self = shift;
-
- my $Attachment = $self->SUPER::Next();
- if ((defined($Attachment)) and (ref($Attachment))) {
- if ($Attachment->TransactionObj->__Value('Type') =~ /^Comment/ &&
- $Attachment->TransactionObj->TicketObj->CurrentUserHasRight('ShowTicketComments')) {
- return($Attachment);
- } elsif ($Attachment->TransactionObj->__Value('Type') !~ /^Comment/ &&
- $Attachment->TransactionObj->TicketObj->CurrentUserHasRight('ShowTicket')) {
- return($Attachment);
- }
-
- #If the user doesn't have the right to show this ticket
- else {
- return($self->Next());
- }
- }
-
- #if there never was any ticket
- else {
- return(undef);
- }
-}
-# }}}
-
- 1;
-
-
-
-
diff --git a/rt/lib/RT/Attribute.pm b/rt/lib/RT/Attribute.pm
deleted file mode 100644
index a46f4d8..0000000
--- a/rt/lib/RT/Attribute.pm
+++ /dev/null
@@ -1,347 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Attribute
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Attribute;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Attributes');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(255) 'Name'.
- varchar(255) 'Description'.
- text 'Content'.
- varchar(16) 'ContentType'.
- varchar(64) 'ObjectType'.
- int(11) 'ObjectId'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- Content => '',
- ContentType => '',
- ObjectType => '',
- ObjectId => '',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Description => $args{'Description'},
- Content => $args{'Content'},
- ContentType => $args{'ContentType'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(255).)
-
-
-
-=head2 SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=head2 SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 Content
-
-Returns the current value of Content.
-(In the database, Content is stored as text.)
-
-
-
-=head2 SetContent VALUE
-
-
-Set Content to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Content will be stored as a text.)
-
-
-=cut
-
-
-=head2 ContentType
-
-Returns the current value of ContentType.
-(In the database, ContentType is stored as varchar(16).)
-
-
-
-=head2 SetContentType VALUE
-
-
-Set ContentType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContentType will be stored as a varchar(16).)
-
-
-=cut
-
-
-=head2 ObjectType
-
-Returns the current value of ObjectType.
-(In the database, ObjectType is stored as varchar(64).)
-
-
-
-=head2 SetObjectType VALUE
-
-
-Set ObjectType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectType will be stored as a varchar(64).)
-
-
-=cut
-
-
-=head2 ObjectId
-
-Returns the current value of ObjectId.
-(In the database, ObjectId is stored as int(11).)
-
-
-
-=head2 SetObjectId VALUE
-
-
-Set ObjectId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=head2 Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=head2 LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=head2 LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- Description =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- Content =>
- {read => 1, write => 1, sql_type => -4, length => 0, is_blob => 1, is_numeric => 0, type => 'text', default => ''},
- ContentType =>
- {read => 1, write => 1, sql_type => 12, length => 16, is_blob => 0, is_numeric => 0, type => 'varchar(16)', default => ''},
- ObjectType =>
- {read => 1, write => 1, sql_type => 12, length => 64, is_blob => 0, is_numeric => 0, type => 'varchar(64)', default => ''},
- ObjectId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Creator =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Attribute_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Attribute_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Attribute_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Attribute_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Attribute_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Attribute_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Attribute_Overlay, RT::Attribute_Vendor, RT::Attribute_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Attribute_Overlay.pm b/rt/lib/RT/Attribute_Overlay.pm
deleted file mode 100644
index ead842e..0000000
--- a/rt/lib/RT/Attribute_Overlay.pm
+++ /dev/null
@@ -1,464 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Attribute;
-
-use strict;
-no warnings qw(redefine);
-use Storable qw/nfreeze thaw/;
-use MIME::Base64;
-
-
-=head1 NAME
-
- RT::Attribute_Overlay
-
-=head1 Content
-
-=cut
-
-# the acl map is a map of "name of attribute" and "what right the user must have on the associated object to see/edit it
-
-our $ACL_MAP = {
- SavedSearch => { create => 'EditSavedSearches',
- update => 'EditSavedSearches',
- delete => 'EditSavedSearches',
- display => 'ShowSavedSearches' },
-
-};
-
-# There are a number of attributes that users should be able to modify for themselves, such as saved searches
-# we could do this with a different set of "modify" rights, but that gets very hacky very fast. this is even faster and even
-# hackier. we're hardcoding that a different set of rights are needed for attributes on oneself
-our $PERSONAL_ACL_MAP = {
- SavedSearch => { create => 'ModifySelf',
- update => 'ModifySelf',
- delete => 'ModifySelf',
- display => 'allow' },
-
-};
-
-=head2 LookupObjectRight { ObjectType => undef, ObjectId => undef, Name => undef, Right => { create, update, delete, display } }
-
-Returns the right that the user needs to have on this attribute's object to perform the related attribute operation. Returns "allow" if the right is otherwise unspecified.
-
-=cut
-
-sub LookupObjectRight {
- my $self = shift;
- my %args = ( ObjectType => undef,
- ObjectId => undef,
- Right => undef,
- Name => undef,
- @_);
-
- # if it's an attribute on oneself, check the personal acl map
- if (($args{'ObjectType'} eq 'RT::User') && ($args{'ObjectId'} eq $self->CurrentUser->Id)) {
- return('allow') unless ($PERSONAL_ACL_MAP->{$args{'Name'}});
- return('allow') unless ($PERSONAL_ACL_MAP->{$args{'Name'}}->{$args{'Right'}});
- return($PERSONAL_ACL_MAP->{$args{'Name'}}->{$args{'Right'}});
-
- }
- # otherwise check the main ACL map
- else {
- return('allow') unless ($ACL_MAP->{$args{'Name'}});
- return('allow') unless ($ACL_MAP->{$args{'Name'}}->{$args{'Right'}});
- return($ACL_MAP->{$args{'Name'}}->{$args{'Right'}});
- }
-}
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(255) 'Content'.
- varchar(16) 'ContentType',
- varchar(64) 'ObjectType'.
- int(11) 'ObjectId'.
-
-You may pass a C<Object> instead of C<ObjectType> and C<ObjectId>.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- Content => '',
- ContentType => '',
- Object => undef,
- @_);
-
- if ($args{Object} and UNIVERSAL::can($args{Object}, 'Id')) {
- $args{ObjectType} = ref($args{Object});
- $args{ObjectId} = $args{Object}->Id;
- } else {
- return(0, $self->loc("Required parameter '[_1]' not specified", 'Object'));
-
- }
-
- # object_right is the right that the user has to have on the object for them to have $right on this attribute
- my $object_right = $self->LookupObjectRight(
- Right => 'create',
- ObjectId => $args{'ObjectId'},
- ObjectType => $args{'ObjectType'},
- Name => $args{'Name'}
- );
- if ($object_right eq 'deny') {
- return (0, $self->loc('Permission Denied'));
- }
- elsif ($object_right eq 'allow') {
- # do nothing, we're ok
- }
- elsif (!$self->CurrentUser->HasRight( Object => $args{Object}, Right => $object_right)) {
- return (0, $self->loc('Permission Denied'));
- }
-
-
- if (ref ($args{'Content'}) ) {
- eval {$args{'Content'} = $self->_SerializeContent($args{'Content'}); };
- if ($@) {
- return(0, $@);
- }
- $args{'ContentType'} = 'storable';
- }
-
-
- $self->SUPER::Create(
- Name => $args{'Name'},
- Content => $args{'Content'},
- ContentType => $args{'ContentType'},
- Description => $args{'Description'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
-);
-
-}
-
-
-# {{{ sub LoadByNameAndObject
-
-=head2 LoadByNameAndObject (Object => OBJECT, Name => NAME)
-
-Loads the Attribute named NAME for Object OBJECT.
-
-=cut
-
-sub LoadByNameAndObject {
- my $self = shift;
- my %args = (
- Object => undef,
- Name => undef,
- @_,
- );
-
- return (
- $self->LoadByCols(
- Name => $args{'Name'},
- ObjectType => ref($args{'Object'}),
- ObjectId => $args{'Object'}->Id,
- )
- );
-
-}
-
-# }}}
-
-
-=head2 _DeserializeContent
-
-DeserializeContent returns this Attribute's "Content" as a hashref.
-
-
-=cut
-
-sub _DeserializeContent {
- my $self = shift;
- my $content = shift;
-
- my $hashref;
- eval {$hashref = thaw(decode_base64($content))} ;
- if ($@) {
- $RT::Logger->error("Deserialization of attribute ".$self->Id. " failed");
- }
-
- return($hashref);
-
-}
-
-
-=head2 Content
-
-Returns this attribute's content. If it's a scalar, returns a scalar
-If it's data structure returns a ref to that data structure.
-
-=cut
-
-sub Content {
- my $self = shift;
- # Here we call _Value to get the ACL check.
- my $content = $self->_Value('Content');
- if ($self->__Value('ContentType') eq 'storable') {
- eval {$content = $self->_DeserializeContent($content); };
- if ($@) {
- $RT::Logger->error("Deserialization of content for attribute ".$self->Id. " failed. Attribute was: ".$content);
- }
- }
-
- return($content);
-
-}
-
-sub _SerializeContent {
- my $self = shift;
- my $content = shift;
- return( encode_base64(nfreeze($content)));
-}
-
-
-sub SetContent {
- my $self = shift;
- my $content = shift;
-
- # Call __Value to avoid ACL check.
- if ($self->__Value('ContentType') eq 'storable') {
- # We eval the serialization because it will lose on a coderef.
- eval {$content = $self->_SerializeContent($content); };
- if ($@) {
- $RT::Logger->error("For some reason, content couldn't be frozen");
- return(0, $@);
- }
- }
- return ($self->SUPER::SetContent($content));
-}
-
-=head2 SubValue KEY
-
-Returns the subvalue for $key.
-
-=begin testing
-
-my $user = $RT::SystemUser;
-my ($id, $msg) = $user->AddAttribute(Name => 'SavedSearch', Content => { Query => 'Foo'} );
-ok ($id, $msg);
-my $attr = RT::Attribute->new($RT::SystemUser);
-$attr->Load($id);
-ok($attr->Name eq 'SavedSearch');
-$attr->SetSubValues( Format => 'baz');
-
-my $format = $attr->SubValue('Format');
-is ($format , 'baz');
-
-$attr->SetSubValues( Format => 'bar');
-$format = $attr->SubValue('Format');
-is ($format , 'bar');
-
-$attr->DeleteAllSubValues();
-$format = $attr->SubValue('Format');
-is ($format, undef);
-
-$attr->SetSubValues(Format => 'This is a format');
-
-my $attr2 = RT::Attribute->new($RT::SystemUser);
-$attr2->Load($id);
-is ($attr2->SubValue('Format'), 'This is a format');
-
-
-=end testing
-
-=cut
-
-sub SubValue {
- my $self = shift;
- my $key = shift;
- my $values = $self->Content();
- return undef unless ref($values);
- return($values->{$key});
-}
-
-=head2 DeleteSubValue NAME
-
-Deletes the subvalue with the key NAME
-
-=cut
-
-sub DeleteSubValue {
- my $self = shift;
- my $key = shift;
- my %values = $self->Content();
- delete $values{$key};
- $self->SetContent(%values);
-
-
-
-}
-
-
-=head2 DeleteAllSubValues
-
-Deletes all subvalues for this attribute
-
-=cut
-
-
-sub DeleteAllSubValues {
- my $self = shift;
- $self->SetContent({});
-}
-
-=head2 SetSubValues { }
-
-Takes a hash of keys and values and stores them in the content of this attribute.
-
-Each key B<replaces> the existing key with the same name
-
-Returns a tuple of (status, message)
-
-=cut
-
-
-sub SetSubValues {
- my $self = shift;
- my %args = (@_);
- my $values = ($self->Content() || {} );
- foreach my $key (keys %args) {
- $values->{$key} = $args{$key};
- }
-
- $self->SetContent($values);
-
-}
-
-
-sub Object {
- my $self = shift;
- my $object_type = $self->__Value('ObjectType');
- my $object;
- eval { $object = $object_type->new($self->CurrentUser) };
- unless(UNIVERSAL::isa($object, $object_type)) {
- $RT::Logger->error("Attribute ".$self->Id." has a bogus object type - $object_type (".$@.")");
- return(undef);
- }
- $object->Load($self->__Value('ObjectId'));
-
- return($object);
-
-}
-
-
-sub Delete {
- my $self = shift;
- unless ($self->CurrentUserHasRight('delete')) {
- return (0,$self->loc('Permission Denied'));
- }
- return($self->SUPER::Delete(@_));
-}
-
-
-sub _Value {
- my $self = shift;
- unless ($self->CurrentUserHasRight('display')) {
- return (0,$self->loc('Permission Denied'));
- }
-
- return($self->SUPER::_Value(@_));
-
-
-}
-
-
-sub _Set {
- my $self = shift;
- unless ($self->CurrentUserHasRight('modify')) {
-
- return (0,$self->loc('Permission Denied'));
- }
- return($self->SUPER::_Set(@_));
-
-}
-
-
-=head2 CurrentUserHasRight
-
-One of "display" "modify" "delete" or "create" and returns 1 if the user has that right for attributes of this name for this object.Returns undef otherwise.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
- # object_right is the right that the user has to have on the object for them to have $right on this attribute
- my $object_right = $self->LookupObjectRight(
- Right => $right,
- ObjectId => $self->__Value('ObjectId'),
- ObjectType => $self->__Value('ObjectType'),
- Name => $self->__Value('Name')
- );
-
- return (1) if ($object_right eq 'allow');
- return (0) if ($object_right eq 'deny');
- return(1) if ($self->CurrentUser->HasRight( Object => $self->Object, Right => $object_right));
- return(0);
-
-}
-
-
-=head1 TODO
-
-We should be deserializing the content on load and then enver again, rather than at every access
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Attributes.pm b/rt/lib/RT/Attributes.pm
deleted file mode 100644
index bb63b81..0000000
--- a/rt/lib/RT/Attributes.pm
+++ /dev/null
@@ -1,137 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Attributes -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Attributes
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Attributes;
-
-use RT::SearchBuilder;
-use RT::Attribute;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Attributes';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::Attribute item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Attribute->new($self->CurrentUser));
-}
-
- eval "require RT::Attributes_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Attributes_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Attributes_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Attributes_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Attributes_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Attributes_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Attributes_Overlay, RT::Attributes_Vendor, RT::Attributes_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Attributes_Overlay.pm b/rt/lib/RT/Attributes_Overlay.pm
deleted file mode 100644
index 0e79df1..0000000
--- a/rt/lib/RT/Attributes_Overlay.pm
+++ /dev/null
@@ -1,197 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Attributes - collection of RT::Attribute objects
-
-=head1 SYNOPSIS
-
- use RT:Attributes;
-my $Attributes = new RT::Attributes($CurrentUser);
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-
-package RT::Attributes;
-
-use strict;
-no warnings qw(redefine);
-
-
-sub _DoSearch {
- my $self = shift;
- $self->SUPER::_DoSearch();
- $self->_BuildAccessTable();
-}
-
-
-sub _BuildAccessTable {
- my $self = shift;
- delete $self->{'attr'};
- while (my $attr = $self->Next) {
- push @{$self->{'attr'}->{$attr->Name}}, $attr;
- }
-}
-
-
-sub _AttrHash {
- my $self = shift;
- $self->_DoSearch if ($self->{'must_redo_search'});
- unless ($self->{'attr'}) {
- $self->{'attr'}->{'__none'} = RT::Attribute->new($self->CurrentUser);
- }
- return ($self->{'attr'});
-}
-
-=head2 Names
-
-Returns a list of the Names of all attributes for this object.
-
-=cut
-
-sub Names {
- my $self = shift;
- my @keys = keys %{$self->_AttrHash};
- return(@keys);
-
-
-}
-
-=head2 Named STRING
-
-Returns an array of all the RT::Attribute objects with the name STRING
-
-=cut
-
-sub Named {
- my $self = shift;
- my $name = shift;
- my @attributes;
- if ($self->_AttrHash) {
- @attributes = @{($self->_AttrHash->{$name}||[])};
- }
- return (@attributes);
-}
-
-=head2 WithId ID
-
-Returns the RT::Attribute objects with the id ID
-
-XXX TODO XXX THIS NEEDS A BETTER ACL CHECK
-
-=cut
-
-sub WithId {
- my $self = shift;
- my $id = shift;
-
- my $attr = RT::Attribute->new($self->CurrentUser);
- $attr->LoadByCols( id => $id );
- return($attr);
-}
-
-=head2 DeleteEntry { Name => Content => , id => }
-
-Deletes attributes with
- the matching name
- and the matching content or id
-
-If Content and id are both undefined, delete all attributes with
-the matching name.
-
-=cut
-
-
-sub DeleteEntry {
- my $self = shift;
- my %args = ( Name => undef,
- Content => undef,
- id => undef,
- @_);
- my $found = 0;
- foreach my $attr ($self->Named($args{'Name'})){
- if ((!defined $args{'id'} and !defined $args{'Content'})
- or (defined $args{'id'} and $attr->id eq $args{'id'})
- or (defined $args{'Content'} and $attr->Content eq $args{'Content'})) {
- my ($id, $msg) = $attr->Delete;
- return ($id, $msg) unless $id;
- $found = 1;
- }
- }
- return (0, "No entry found") unless $found;
- $self->_DoSearch();
- return (1, $self->loc('Attribute Deleted'));
-}
-
-
-# {{{ LimitToObject
-
-=head2 LimitToObject $object
-
-Limit the Attributes to rights for the object $object. It needs to be an RT::Record class.
-
-=cut
-
-sub LimitToObject {
- my $self = shift;
- my $obj = shift;
- unless (defined($obj) && ref($obj) && UNIVERSAL::can($obj, 'id') && $obj->id) {
- return undef;
- }
- $self->Limit(FIELD => 'ObjectType', OPERATOR=> '=', VALUE => ref($obj), ENTRYAGGREGATOR => 'OR');
- $self->Limit(FIELD => 'ObjectId', OPERATOR=> '=', VALUE => $obj->id, ENTRYAGGREGATOR => 'OR', QUOTEVALUE => 0);
-
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/Base.pm b/rt/lib/RT/Base.pm
deleted file mode 100644
index f329221..0000000
--- a/rt/lib/RT/Base.pm
+++ /dev/null
@@ -1,157 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Base;
-use Carp;
-use Scalar::Util;
-
-use strict;
-use vars qw(@EXPORT);
-
-@EXPORT=qw(loc CurrentUser);
-
-=head1 NAME
-
-RT::Base
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 FUNCTIONS
-
-=cut
-
-# {{{ sub CurrentUser
-
-=head2 CurrentUser
-
-If called with an argument, sets the current user to that user object.
-This will affect ACL decisions, etc.
-Returns the current user
-
-=cut
-
-sub CurrentUser {
- my $self = shift;
-
- if (@_) {
- $self->{'original_user'} = $self->{'user'};
- $self->{'user'} = shift;
- # We need to weaken the CurrentUser ($self->{'user'}) reference
- # if the object in question is the currentuser object.
- # This avoids memory leaks.
- Scalar::Util::weaken($self->{'user'}) if (ref($self->{'user'}) &&
- $self->{'user'} == $self );
- }
-
- unless ( ref( $self->{'user'}) ) {
- $RT::Logger->err( "$self was created without a CurrentUser\n" . Carp::cluck() );
- return (0);
- }
- return ( $self->{'user'} );
-}
-
-# }}}
-
-sub OriginalUser {
- my $self = shift;
-
- if (@_) {
- $self->{'original_user'} = shift;
- Scalar::Util::weaken($self->{'original_user'})
- if (ref($self->{'original_user'}) && $self->{'original_user'} == $self );
- }
- return ( $self->{'original_user'} || $self->{'user'} );
-}
-
-
-=head2 loc LOC_STRING
-
-l is a method which takes a loc string
-to this object's CurrentUser->LanguageHandle for localization.
-
-you call it like this:
-
- $self->loc("I have [quant,_1,concrete mixer].", 6);
-
-In english, this would return:
- I have 6 concrete mixers.
-
-
-=cut
-
-sub loc {
- my $self = shift;
- if (my $user = $self->OriginalUser) {
- return $user->loc(@_);
- }
- else {
- use Carp;
- Carp::confess("No currentuser");
- return ("Critical error:$self has no CurrentUser", $self);
- }
-}
-
-sub loc_fuzzy {
- my $self = shift;
- if (my $user = $self->OriginalUser) {
- return $user->loc_fuzzy(@_);
- }
- else {
- use Carp;
- Carp::confess("No currentuser");
- return ("Critical error:$self has no CurrentUser", $self);
- }
-}
-
-eval "require RT::Base_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Base_Vendor.pm});
-eval "require RT::Base_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Base_Local.pm});
-
-
-1;
diff --git a/rt/lib/RT/CachedGroupMember.pm b/rt/lib/RT/CachedGroupMember.pm
deleted file mode 100644
index bc7f62e..0000000
--- a/rt/lib/RT/CachedGroupMember.pm
+++ /dev/null
@@ -1,280 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::CachedGroupMember
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::CachedGroupMember;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('CachedGroupMembers');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'GroupId'.
- int(11) 'MemberId'.
- int(11) 'Via'.
- int(11) 'ImmediateParentId'.
- smallint(6) 'Disabled'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- GroupId => '',
- MemberId => '',
- Via => '',
- ImmediateParentId => '',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- GroupId => $args{'GroupId'},
- MemberId => $args{'MemberId'},
- Via => $args{'Via'},
- ImmediateParentId => $args{'ImmediateParentId'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 GroupId
-
-Returns the current value of GroupId.
-(In the database, GroupId is stored as int(11).)
-
-
-
-=head2 SetGroupId VALUE
-
-
-Set GroupId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, GroupId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 MemberId
-
-Returns the current value of MemberId.
-(In the database, MemberId is stored as int(11).)
-
-
-
-=head2 SetMemberId VALUE
-
-
-Set MemberId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, MemberId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Via
-
-Returns the current value of Via.
-(In the database, Via is stored as int(11).)
-
-
-
-=head2 SetVia VALUE
-
-
-Set Via to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Via will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 ImmediateParentId
-
-Returns the current value of ImmediateParentId.
-(In the database, ImmediateParentId is stored as int(11).)
-
-
-
-=head2 SetImmediateParentId VALUE
-
-
-Set ImmediateParentId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ImmediateParentId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=head2 SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- GroupId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- MemberId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Via =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- ImmediateParentId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Disabled =>
- {read => 1, write => 1, sql_type => 5, length => 6, is_blob => 0, is_numeric => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::CachedGroupMember_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMember_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CachedGroupMember_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMember_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CachedGroupMember_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMember_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CachedGroupMember_Overlay, RT::CachedGroupMember_Vendor, RT::CachedGroupMember_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CachedGroupMember_Overlay.pm b/rt/lib/RT/CachedGroupMember_Overlay.pm
deleted file mode 100644
index 15f6bd7..0000000
--- a/rt/lib/RT/CachedGroupMember_Overlay.pm
+++ /dev/null
@@ -1,364 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::CachedGroupMember;
-
-use strict;
-no warnings qw(redefine);
-
-=head1 NAME
-
- RT::CachedGroupMember
-
-=head1 SYNOPSIS
-
- use RT::CachedGroupMember;
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-# {{ Create
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- 'Group' is the "top level" group we're building the cache for. This
- is an RT::Principal object
-
- 'Member' is the RT::Principal of the user or group we're adding to
- the cache.
-
- 'ImmediateParent' is the RT::Principal of the group that this
- principal belongs to to get here
-
- int(11) 'Via' is an internal reference to CachedGroupMembers->Id of
- the "parent" record of this cached group member. It should be empty if
- this member is a "direct" member of this group. (In that case, it will
- be set to this cached group member's id after creation)
-
- This routine should _only_ be called by GroupMember->Create
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = ( Group => '',
- Member => '',
- ImmediateParent => '',
- Via => '0',
- Disabled => '0',
- @_ );
-
- unless ( $args{'Member'}
- && UNIVERSAL::isa( $args{'Member'}, 'RT::Principal' )
- && $args{'Member'}->Id ) {
- $RT::Logger->debug("$self->Create: bogus Member argument");
- }
-
- unless ( $args{'Group'}
- && UNIVERSAL::isa( $args{'Group'}, 'RT::Principal' )
- && $args{'Group'}->Id ) {
- $RT::Logger->debug("$self->Create: bogus Group argument");
- }
-
- unless ( $args{'ImmediateParent'}
- && UNIVERSAL::isa( $args{'ImmediateParent'}, 'RT::Principal' )
- && $args{'ImmediateParent'}->Id ) {
- $RT::Logger->debug("$self->Create: bogus ImmediateParent argument");
- }
-
- # If the parent group for this group member is disabled, it's disabled too, along with all its children
- if ( $args{'ImmediateParent'}->Disabled ) {
- $args{'Disabled'} = $args{'ImmediateParent'}->Disabled;
- }
-
- my $id = $self->SUPER::Create(
- GroupId => $args{'Group'}->Id,
- MemberId => $args{'Member'}->Id,
- ImmediateParentId => $args{'ImmediateParent'}->Id,
- Disabled => $args{'Disabled'},
- Via => $args{'Via'}, );
-
- unless ($id) {
- $RT::Logger->warning( "Couldn't create "
- . $args{'Member'}
- . " as a cached member of "
- . $args{'Group'}->Id . " via "
- . $args{'Via'} );
- return (undef); #this will percolate up and bail out of the transaction
- }
- if ( $self->__Value('Via') == 0 ) {
- my ( $vid, $vmsg ) = $self->__Set( Field => 'Via', Value => $id );
- unless ($vid) {
- $RT::Logger->warning( "Due to a via error, couldn't create "
- . $args{'Member'}
- . " as a cached member of "
- . $args{'Group'}->Id . " via "
- . $args{'Via'} );
- return (undef)
- ; #this will percolate up and bail out of the transaction
- }
- }
-
- if ( $args{'Member'}->IsGroup() ) {
- my $GroupMembers = $args{'Member'}->Object->MembersObj();
- while ( my $member = $GroupMembers->Next() ) {
- my $cached_member =
- RT::CachedGroupMember->new( $self->CurrentUser );
- my $c_id = $cached_member->Create(
- Group => $args{'Group'},
- Member => $member->MemberObj,
- ImmediateParent => $args{'Member'},
- Disabled => $args{'Disabled'},
- Via => $id );
- unless ($c_id) {
- return (undef); #percolate the error upwards.
- # the caller will log an error and abort the transaction
- }
-
- }
- }
-
- return ($id);
-
-}
-
-# }}}
-
-# {{{ Delete
-
-=head2 Delete
-
-Deletes the current CachedGroupMember from the group it's in and cascades
-the delete to all submembers. This routine could be completely excised if
-mysql supported foreign keys with cascading deletes.
-
-=cut
-
-sub Delete {
- my $self = shift;
-
-
- my $member = $self->MemberObj();
- if ( $member->IsGroup ) {
- my $deletable = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- $deletable->Limit( FIELD => 'id',
- OPERATOR => '!=',
- VALUE => $self->id );
- $deletable->Limit( FIELD => 'Via',
- OPERATOR => '=',
- VALUE => $self->id );
-
- while ( my $kid = $deletable->Next ) {
- my $kid_err = $kid->Delete();
- unless ($kid_err) {
- $RT::Logger->error(
- "Couldn't delete CachedGroupMember " . $kid->Id );
- return (undef);
- }
- }
- }
- my $err = $self->SUPER::Delete();
- unless ($err) {
- $RT::Logger->error( "Couldn't delete CachedGroupMember " . $self->Id );
- return (undef);
- }
-
- # Unless $self->GroupObj still has the member recursively $self->MemberObj
- # (Since we deleted the database row above, $self no longer counts)
- unless ( $self->GroupObj->Object->HasMemberRecursively( $self->MemberObj ) ) {
-
-
- # Find all ACEs granted to $self->GroupId
- my $acl = RT::ACL->new($RT::SystemUser);
- $acl->LimitToPrincipal( Id => $self->GroupId );
-
-
- while ( my $this_ace = $acl->Next() ) {
- # Find all ACEs which $self-MemberObj has delegated from $this_ace
- my $delegations = RT::ACL->new($RT::SystemUser);
- $delegations->DelegatedFrom( Id => $this_ace->Id );
- $delegations->DelegatedBy( Id => $self->MemberId );
-
- # For each delegation
- while ( my $delegation = $delegations->Next ) {
- # WHACK IT
- my $del_ret = $delegation->_Delete(InsideTransaction => 1);
- unless ($del_ret) {
- $RT::Logger->crit("Couldn't delete an ACL delegation that we know exists ". $delegation->Id);
- return(undef);
- }
- }
- }
- }
- return ($err);
-}
-
-# }}}
-
-# {{{ SetDisabled
-
-=head2 SetDisabled
-
-SetDisableds the current CachedGroupMember from the group it's in and cascades
-the SetDisabled to all submembers. This routine could be completely excised if
-mysql supported foreign keys with cascading SetDisableds.
-
-=cut
-
-sub SetDisabled {
- my $self = shift;
- my $val = shift;
-
- # if it's already disabled, we're good.
- return {1} if ($self->__Value('Disabled') == $val);
- my $err = $self->SUPER::SetDisabled($val);
- my ($retval, $msg) = $err->as_array();
- unless ($retval) {
- $RT::Logger->error( "Couldn't SetDisabled CachedGroupMember " . $self->Id .": $msg");
- return ($err);
- }
-
- my $member = $self->MemberObj();
- if ( $member->IsGroup ) {
- my $deletable = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- $deletable->Limit( FIELD => 'Via', OPERATOR => '=', VALUE => $self->id );
- $deletable->Limit( FIELD => 'id', OPERATOR => '!=', VALUE => $self->id );
-
- while ( my $kid = $deletable->Next ) {
- my $kid_err = $kid->SetDisabled($val );
- unless ($kid_err) {
- $RT::Logger->error( "Couldn't SetDisabled CachedGroupMember " . $kid->Id );
- return ($kid_err);
- }
- }
- }
-
- # Unless $self->GroupObj still has the member recursively $self->MemberObj
- # (Since we SetDisabledd the database row above, $self no longer counts)
- unless ( $self->GroupObj->Object->HasMemberRecursively( $self->MemberObj ) ) {
- # Find all ACEs granted to $self->GroupId
- my $acl = RT::ACL->new($RT::SystemUser);
- $acl->LimitToPrincipal( Id => $self->GroupId );
-
- while ( my $this_ace = $acl->Next() ) {
- # Find all ACEs which $self-MemberObj has delegated from $this_ace
- my $delegations = RT::ACL->new($RT::SystemUser);
- $delegations->DelegatedFrom( Id => $this_ace->Id );
- $delegations->DelegatedBy( Id => $self->MemberId );
-
- # For each delegation, blow away the delegation
- while ( my $delegation = $delegations->Next ) {
- # WHACK IT
- my $del_ret = $delegation->_Delete(InsideTransaction => 1);
- unless ($del_ret) {
- $RT::Logger->crit("Couldn't delete an ACL delegation that we know exists ". $delegation->Id);
- return(undef);
- }
- }
- }
- }
- return ($err);
-}
-
-# }}}
-
-# {{{ GroupObj
-
-=head2 GroupObj
-
-Returns the RT::Principal object for this group Group
-
-=cut
-
-sub GroupObj {
- my $self = shift;
- my $principal = RT::Principal->new( $self->CurrentUser );
- $principal->Load( $self->GroupId );
- return ($principal);
-}
-
-# }}}
-
-# {{{ ImmediateParentObj
-
-=head2 ImmediateParentObj
-
-Returns the RT::Principal object for this group ImmediateParent
-
-=cut
-
-sub ImmediateParentObj {
- my $self = shift;
- my $principal = RT::Principal->new( $self->CurrentUser );
- $principal->Load( $self->ImmediateParentId );
- return ($principal);
-}
-
-# }}}
-
-# {{{ MemberObj
-
-=head2 MemberObj
-
-Returns the RT::Principal object for this group member
-
-=cut
-
-sub MemberObj {
- my $self = shift;
- my $principal = RT::Principal->new( $self->CurrentUser );
- $principal->Load( $self->MemberId );
- return ($principal);
-}
-
-# }}}
-1;
diff --git a/rt/lib/RT/CachedGroupMembers.pm b/rt/lib/RT/CachedGroupMembers.pm
deleted file mode 100644
index 5ed35e6..0000000
--- a/rt/lib/RT/CachedGroupMembers.pm
+++ /dev/null
@@ -1,137 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::CachedGroupMembers -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::CachedGroupMembers
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::CachedGroupMembers;
-
-use RT::SearchBuilder;
-use RT::CachedGroupMember;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'CachedGroupMembers';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::CachedGroupMember item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::CachedGroupMember->new($self->CurrentUser));
-}
-
- eval "require RT::CachedGroupMembers_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMembers_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CachedGroupMembers_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMembers_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CachedGroupMembers_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CachedGroupMembers_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CachedGroupMembers_Overlay, RT::CachedGroupMembers_Vendor, RT::CachedGroupMembers_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CachedGroupMembers_Overlay.pm b/rt/lib/RT/CachedGroupMembers_Overlay.pm
deleted file mode 100644
index e83dab4..0000000
--- a/rt/lib/RT/CachedGroupMembers_Overlay.pm
+++ /dev/null
@@ -1,176 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::CachedGroupMembers - a collection of RT::GroupMember objects
-
-=head1 SYNOPSIS
-
- use RT::CachedGroupMembers;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::CachedGroupMembers);
-
-=end testing
-
-=cut
-
-
-package RT::CachedGroupMembers;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ LimitToUsers
-
-=head2 LimitToUsers
-
-Limits this search object to users who are members of this group
-This is really useful when you want to have your UI separate out
-groups from users for display purposes
-
-=cut
-
-sub LimitToUsers {
- my $self = shift;
-
- my $principals = $self->NewAlias('Principals');
- $self->Join( ALIAS1 => 'main', FIELD1 => 'MemberId',
- ALIAS2 => $principals, FIELD2 =>'id');
-
- $self->Limit( ALIAS => $principals,
- FIELD => 'PrincipalType',
- VALUE => 'User',
- ENTRYAGGREGATOR => 'OR',
- );
-}
-
-# }}}
-
-
-# {{{ LimitToGroups
-
-=head2 LimitToGroups
-
-Limits this search object to Groups who are members of this group
-This is really useful when you want to have your UI separate out
-groups from users for display purposes
-
-=cut
-
-sub LimitToGroups {
- my $self = shift;
-
- my $principals = $self->NewAlias('Principals');
- $self->Join( ALIAS1 => 'main', FIELD1 => 'MemberId',
- ALIAS2 => $principals, FIELD2 =>'id');
-
- $self->Limit( ALIAS => $principals,
- FIELD => 'PrincipalType',
- VALUE => 'Group',
- ENTRYAGGREGATOR => 'OR',
- );
-}
-
-# }}}
-
-# {{{ sub LimitToMembersOfGroup
-
-=head2 LimitToMembersOfGroup PRINCIPAL_ID
-
-Takes a Principal Id as its only argument.
-Limits the current search principals which are _directly_ members
-of the group which has PRINCIPAL_ID as its principal id.
-
-=cut
-
-sub LimitToMembersOfGroup {
- my $self = shift;
- my $group = shift;
-
- return ($self->Limit(
- VALUE => $group,
- FIELD => 'GroupId',
- ENTRYAGGREGATOR => 'OR',
- ));
-
-}
-# }}}
-
-# {{{ sub LimitToGroupsWithMember
-
-=head2 LimitToGroupsWithMember PRINCIPAL_ID
-
-Takes a Principal Id as its only argument.
-Limits the current search to groups which contain PRINCIPAL_ID as a member or submember.
-This function gets used by GroupMember->Create to populate subgroups
-
-=cut
-
-sub LimitToGroupsWithMember {
- my $self = shift;
- my $member = shift;
-
-
-
- return ($self->Limit(
- VALUE => $member || '0',
- FIELD => 'MemberId',
- ENTRYAGGREGATOR => 'OR',
- QUOTEVALUE => 0
- ));
-
-}
-# }}}
-1;
diff --git a/rt/lib/RT/Condition/AnyTransaction.pm b/rt/lib/RT/Condition/AnyTransaction.pm
deleted file mode 100644
index 4519fcf..0000000
--- a/rt/lib/RT/Condition/AnyTransaction.pm
+++ /dev/null
@@ -1,51 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-
-package RT::Condition::AnyTransaction;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-This happens on every transaction. it's always applicable
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- return(1);
-}
-
-eval "require RT::Condition::AnyTransaction_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/AnyTransaction_Vendor.pm});
-eval "require RT::Condition::AnyTransaction_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/AnyTransaction_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/BeforeDue.pm b/rt/lib/RT/Condition/BeforeDue.pm
deleted file mode 100644
index d5e371e..0000000
--- a/rt/lib/RT/Condition/BeforeDue.pm
+++ /dev/null
@@ -1,86 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Condition::BeforeDue;
-require RT::Condition::Generic;
-
-use RT::Date;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-sub IsApplicable {
- my $self = shift;
-
- # Parse date string. Format is "1d2h3m4s" for 1 day and 2 hours
- # and 3 minutes and 4 seconds.
- my %e;
- foreach (qw(d h m s)) {
- my @vals = $self->Argument =~ m/(\d+)$_/;
- $e{$_} = pop @vals || 0;
- }
- my $elapse = $e{'d'} * 24*60*60 + $e{'h'} * 60*60 + $e{'m'} * 60 + $e{'s'};
-
- my $cur = new RT::Date( $RT::SystemUser );
- $cur->SetToNow();
- my $due = $self->TicketObj->DueObj;
- return (undef) if $due->Unix <= 0;
-
- my $diff = $due->Diff($cur);
- if ( $diff >= 0 and $diff <= $elapse ) {
- return(1);
- } else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::BeforeDue_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/BeforeDue_Vendor.pm});
-eval "require RT::Condition::BeforeDue_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/BeforeDue_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Condition/Generic.pm b/rt/lib/RT/Condition/Generic.pm
deleted file mode 100755
index bd26931..0000000
--- a/rt/lib/RT/Condition/Generic.pm
+++ /dev/null
@@ -1,211 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::Condition::Generic - ;
-
-=head1 SYNOPSIS
-
- use RT::Condition::Generic;
- my $foo = new RT::Condition::IsApplicable(
- TransactionObj => $tr,
- TicketObj => $ti,
- ScripObj => $scr,
- Argument => $arg,
- Type => $type);
-
- if ($foo->IsApplicable) {
- # do something
- }
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Condition::Generic);
-
-=end testing
-
-
-=cut
-
-package RT::Condition::Generic;
-
-use RT::Base;
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Base);
-
-# {{{ sub new
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->_Init(@_);
- return $self;
-}
-# }}}
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- my %args = ( TransactionObj => undef,
- TicketObj => undef,
- ScripObj => undef,
- TemplateObj => undef,
- Argument => undef,
- ApplicableTransTypes => undef,
- @_ );
-
- $self->{'Argument'} = $args{'Argument'};
- $self->{'ScripObj'} = $args{'ScripObj'};
- $self->{'TicketObj'} = $args{'TicketObj'};
- $self->{'TransactionObj'} = $args{'TransactionObj'};
- $self->{'ApplicableTransTypes'} = $args{'ApplicableTransTypes'};
-}
-# }}}
-
-# Access Scripwide data
-
-# {{{ sub Argument
-
-=head2 Argument
-
-Return the optional argument associated with this ScripCondition
-
-=cut
-
-sub Argument {
- my $self = shift;
- return($self->{'Argument'});
-}
-# }}}
-
-# {{{ sub TicketObj
-
-=head2 TicketObj
-
-Return the ticket object we're talking about
-
-=cut
-
-sub TicketObj {
- my $self = shift;
- return($self->{'TicketObj'});
-}
-# }}}
-
-# {{{ sub ScripObj
-
-=head2 ScripObj
-
-Return the Scrip object we're talking about
-
-=cut
-
-sub ScripObj {
- my $self = shift;
- return($self->{'ScripObj'});
-}
-# }}}
-# {{{ sub TransactionObj
-
-=head2 TransactionObj
-
-Return the transaction object we're talking about
-
-=cut
-
-sub TransactionObj {
- my $self = shift;
- return($self->{'TransactionObj'});
-}
-# }}}
-
-# {{{ sub Type
-
-=head2 Type
-
-
-
-=cut
-
-sub ApplicableTransTypes {
- my $self = shift;
- return($self->{'ApplicableTransTypes'});
-}
-# }}}
-
-
-# Scrip methods
-
-
-#What does this type of Action does
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return ($self->loc("No description for [_1]", ref $self));
-}
-# }}}
-
-
-#Parse the templates, get things ready to go.
-
-#If this rule applies to this transaction, return true.
-
-# {{{ sub IsApplicable
-sub IsApplicable {
- my $self = shift;
- return(undef);
-}
-# }}}
-
-# {{{ sub DESTROY
-sub DESTROY {
- my $self = shift;
-
- # We need to clean up all the references that might maybe get
- # oddly circular
- $self->{'TemplateObj'} =undef
- $self->{'TicketObj'} = undef;
- $self->{'TransactionObj'} = undef;
- $self->{'ScripObj'} = undef;
-
-}
-
-# }}}
-
-eval "require RT::Condition::Generic_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/Generic_Vendor.pm});
-eval "require RT::Condition::Generic_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/Generic_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Condition/Overdue.pm b/rt/lib/RT/Condition/Overdue.pm
deleted file mode 100644
index 877db40..0000000
--- a/rt/lib/RT/Condition/Overdue.pm
+++ /dev/null
@@ -1,90 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-
-=head1 NAME
-
-RT::Condition::Overdue
-
-=head1 DESCRIPTION
-
-Returns true if the ticket we're operating on is overdue
-
-=cut
-
-package RT::Condition::Overdue;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If the due date is before "now" return true
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if ($self->TicketObj->DueObj->Unix > 0 and
- $self->TicketObj->DueObj->Unix < time()) {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::Overdue_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/Overdue_Vendor.pm});
-eval "require RT::Condition::Overdue_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/Overdue_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/OwnerChange.pm b/rt/lib/RT/Condition/OwnerChange.pm
deleted file mode 100644
index 5fbc6b2..0000000
--- a/rt/lib/RT/Condition/OwnerChange.pm
+++ /dev/null
@@ -1,122 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-
-package RT::Condition::OwnerChange;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If we're changing the owner return true, otherwise return false
-
-=begin testing
-
-my $q = RT::Queue->new($RT::SystemUser);
-$q->Create(Name =>'ownerChangeTest');
-
-ok($q->Id, "Created a scriptest queue");
-
-my $s1 = RT::Scrip->new($RT::SystemUser);
-my ($val, $msg) =$s1->Create( Queue => $q->Id,
- ScripAction => 'User Defined',
- ScripCondition => 'On Owner Change',
- CustomIsApplicableCode => '',
- CustomPrepareCode => 'return 1',
- CustomCommitCode => '
- $self->TicketObj->SetPriority($self->TicketObj->Priority+1);
- return(1);
- ',
- Template => 'Blank'
- );
-ok($val,$msg);
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($tv,$ttv,$tm) = $ticket->Create(Queue => $q->Id,
- Subject => "hair on fire",
- InitialPriority => '20'
- );
-ok($tv, $tm);
-ok($ticket->SetOwner('root'));
-is ($ticket->Priority , '21', "Ticket priority is set right");
-ok($ticket->Steal);
-is ($ticket->Priority , '22', "Ticket priority is set right");
-ok($ticket->Untake);
-is ($ticket->Priority , '23', "Ticket priority is set right");
-ok($ticket->Take);
-is ($ticket->Priority , '24', "Ticket priority is set right");
-
-
-
-
-
-=end testing
-
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if ($self->TransactionObj->Field eq 'Owner') {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::OwnerChange_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/OwnerChange_Vendor.pm});
-eval "require RT::Condition::OwnerChange_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/OwnerChange_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/PriorityChange.pm b/rt/lib/RT/Condition/PriorityChange.pm
deleted file mode 100644
index 101c388..0000000
--- a/rt/lib/RT/Condition/PriorityChange.pm
+++ /dev/null
@@ -1,80 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-
-package RT::Condition::PriorityChange;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If the argument passed in is equivalent to the new value of
-the Priority Obj
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if ($self->TransactionObj->Field eq 'Priority') {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::PriorityChange_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/PriorityChange_Vendor.pm});
-eval "require RT::Condition::PriorityChange_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/PriorityChange_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/PriorityExceeds.pm b/rt/lib/RT/Condition/PriorityExceeds.pm
deleted file mode 100644
index b811c72..0000000
--- a/rt/lib/RT/Condition/PriorityExceeds.pm
+++ /dev/null
@@ -1,79 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-
-package RT::Condition::PriorityExceeds;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If the priority exceeds the argument value
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if ($self->TicketObj->Priority > $self->Argument) {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::PriorityExceeds_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/PriorityExceeds_Vendor.pm});
-eval "require RT::Condition::PriorityExceeds_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/PriorityExceeds_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/QueueChange.pm b/rt/lib/RT/Condition/QueueChange.pm
deleted file mode 100644
index 7a3ede9..0000000
--- a/rt/lib/RT/Condition/QueueChange.pm
+++ /dev/null
@@ -1,79 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-
-package RT::Condition::QueueChange;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If the queue has changed.
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if ($self->TransactionObj->Field eq 'Queue') {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::QueueChange_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/QueueChange_Vendor.pm});
-eval "require RT::Condition::QueueChange_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/QueueChange_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/StatusChange.pm b/rt/lib/RT/Condition/StatusChange.pm
deleted file mode 100644
index 8afabcd..0000000
--- a/rt/lib/RT/Condition/StatusChange.pm
+++ /dev/null
@@ -1,59 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-
-
-package RT::Condition::StatusChange;
-require RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-If the argument passed in is equivalent to the new value of
-the Status Obj
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- if (($self->TransactionObj->Field eq 'Status') and
- ($self->Argument eq $self->TransactionObj->NewValue())) {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-eval "require RT::Condition::StatusChange_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/StatusChange_Vendor.pm});
-eval "require RT::Condition::StatusChange_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/StatusChange_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/Condition/UserDefined.pm b/rt/lib/RT/Condition/UserDefined.pm
deleted file mode 100644
index f6d077d..0000000
--- a/rt/lib/RT/Condition/UserDefined.pm
+++ /dev/null
@@ -1,79 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-
-package RT::Condition::UserDefined;
-
-use RT::Condition::Generic;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Condition::Generic);
-
-
-=head2 IsApplicable
-
-This happens on every transaction. it's always applicable
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- my $retval = eval $self->ScripObj->CustomIsApplicableCode;
- if ($@) {
- $RT::Logger->error("Scrip ".$self->ScripObj->Id. " IsApplicable failed: ".$@);
- return (undef);
- }
- return ($retval);
-}
-
-eval "require RT::Condition::UserDefined_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/UserDefined_Vendor.pm});
-eval "require RT::Condition::UserDefined_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Condition/UserDefined_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/CurrentUser.pm b/rt/lib/RT/CurrentUser.pm
deleted file mode 100755
index 4ca2f98..0000000
--- a/rt/lib/RT/CurrentUser.pm
+++ /dev/null
@@ -1,374 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::CurrentUser - an RT object representing the current user
-
-=head1 SYNOPSIS
-
- use RT::CurrentUser
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::CurrentUser);
-
-=end testing
-
-=cut
-
-
-package RT::CurrentUser;
-
-use RT::Record;
-use RT::I18N;
-
-use strict;
-use vars qw/@ISA/;
-@ISA= qw(RT::Record);
-
-# {{{ sub _Init
-
-#The basic idea here is that $self->CurrentUser is always supposed
-# to be a CurrentUser object. but that's hard to do when we're trying to load
-# the CurrentUser object
-
-sub _Init {
- my $self = shift;
- my $Name = shift;
-
- $self->{'table'} = "Users";
-
- if (defined($Name)) {
- $self->Load($Name);
- }
-
- $self->CurrentUser($self);
-
-}
-# }}}
-
-# {{{ sub Create
-
-sub Create {
- my $self = shift;
- return (0, $self->loc('Permission Denied'));
-}
-
-# }}}
-
-# {{{ sub Delete
-
-sub Delete {
- my $self = shift;
- return (0, $self->loc('Permission Denied'));
-}
-
-# }}}
-
-# {{{ sub UserObj
-
-=head2 UserObj
-
- Returns the RT::User object associated with this CurrentUser object.
-
-=cut
-
-sub UserObj {
- my $self = shift;
-
- unless ($self->{'UserObj'}) {
- use RT::User;
- $self->{'UserObj'} = RT::User->new($self);
- unless ($self->{'UserObj'}->Load($self->Id)) {
- $RT::Logger->err($self->loc("Couldn't load [_1] from the users database.\n", $self->Id));
- }
-
- }
- return ($self->{'UserObj'});
-}
-# }}}
-
-# {{{ sub PrincipalObj
-
-=head2 PrincipalObj
-
- Returns this user's principal object. this is just a helper routine for
- $self->UserObj->PrincipalObj
-
-=cut
-
-sub PrincipalObj {
- my $self = shift;
- return($self->UserObj->PrincipalObj);
-}
-
-
-# }}}
-
-
-# {{{ sub PrincipalId
-
-=head2 PrincipalId
-
- Returns this user's principal Id. this is just a helper routine for
- $self->UserObj->PrincipalId
-
-=cut
-
-sub PrincipalId {
- my $self = shift;
- return($self->UserObj->PrincipalId);
-}
-
-
-# }}}
-
-
-# {{{ sub _Accessible
-sub _Accessible {
- my $self = shift;
- my %Cols = (
- Name => 'read',
- Gecos => 'read',
- RealName => 'read',
- Password => 'neither',
- EmailAddress => 'read',
- Privileged => 'read',
- IsAdministrator => 'read'
- );
- return($self->SUPER::_Accessible(@_, %Cols));
-}
-# }}}
-
-# {{{ sub LoadByEmail
-
-=head2 LoadByEmail
-
-Loads a User into this CurrentUser object.
-Takes the email address of the user to load.
-
-=cut
-
-sub LoadByEmail {
- my $self = shift;
- my $identifier = shift;
-
- $identifier = RT::User::CanonicalizeEmailAddress(undef, $identifier);
-
- $self->LoadByCol("EmailAddress",$identifier);
-
-}
-# }}}
-
-# {{{ sub LoadByGecos
-
-=head2 LoadByGecos
-
-Loads a User into this CurrentUser object.
-Takes a unix username as its only argument.
-
-=cut
-
-sub LoadByGecos {
- my $self = shift;
- my $identifier = shift;
-
- $self->LoadByCol("Gecos",$identifier);
-
-}
-# }}}
-
-# {{{ sub LoadByName
-
-=head2 LoadByName
-
-Loads a User into this CurrentUser object.
-Takes a Name.
-=cut
-
-sub LoadByName {
- my $self = shift;
- my $identifier = shift;
- $self->LoadByCol("Name",$identifier);
-
-}
-# }}}
-
-# {{{ sub Load
-
-=head2 Load
-
-Loads a User into this CurrentUser object.
-Takes either an integer (users id column reference) or a Name
-The latter is deprecated. Instead, you should use LoadByName.
-Formerly, this routine also took email addresses.
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift;
-
- #if it's an int, load by id. otherwise, load by name.
- if ($identifier !~ /\D/) {
- $self->SUPER::LoadById($identifier);
- }
- else {
- # This is a bit dangerous, we might get false authen if somebody
- # uses ambigous userids or real names:
- $self->LoadByCol("Name",$identifier);
- }
-}
-
-# }}}
-
-# {{{ sub IsPassword
-
-=head2 IsPassword
-
-Takes a password as a string. Passes it off to IsPassword in this
-user's UserObj. If it is the user's password and the user isn't
-disabled, returns 1.
-
-Otherwise, returns undef.
-
-=cut
-
-sub IsPassword {
- my $self = shift;
- my $value = shift;
-
- return ($self->UserObj->IsPassword($value));
-}
-
-# }}}
-
-# {{{ sub Privileged
-
-=head2 Privileged
-
-Returns true if the current user can be granted rights and be
-a member of groups.
-
-=cut
-
-sub Privileged {
- my $self = shift;
- return ($self->UserObj->Privileged());
-}
-
-# }}}
-
-
-# {{{ sub HasRight
-
-=head2 HasRight
-
-calls $self->UserObj->HasRight with the arguments passed in
-
-=cut
-
-sub HasRight {
- my $self = shift;
- return ($self->UserObj->HasRight(@_));
-}
-
-# }}}
-
-# {{{ Localization
-
-=head2 LanguageHandle
-
-Returns this current user's langauge handle. Should take a language
-specification. but currently doesn't
-
-=begin testing
-
-ok (my $cu = RT::CurrentUser->new('root'));
-ok (my $lh = $cu->LanguageHandle);
-ok ($lh != undef);
-ok ($lh->isa('Locale::Maketext'));
-ok ($cu->loc('TEST_STRING') eq "Concrete Mixer", "Localized TEST_STRING into English");
-ok ($lh = $cu->LanguageHandle('fr'));
-ok ($cu->loc('Before') eq "Avant", "Localized TEST_STRING into Frenc");
-
-=end testing
-
-=cut
-
-sub LanguageHandle {
- my $self = shift;
- if ((!defined $self->{'LangHandle'}) ||
- (!UNIVERSAL::can($self->{'LangHandle'}, 'maketext')) ||
- (@_)) {
- $self->{'LangHandle'} = RT::I18N->get_handle(@_);
- }
- # Fall back to english.
- unless ($self->{'LangHandle'}) {
- die "We couldn't get a dictionary. Nye mogu naidti slovar. No puedo encontrar dictionario.";
- }
- return ($self->{'LangHandle'});
-}
-
-sub loc {
- my $self = shift;
- return '' if $_[0] eq '';
-
- my $handle = $self->LanguageHandle;
-
- if (@_ == 1) {
- # pre-scan the lexicon hashes to return _AUTO keys verbatim,
- # to keep locstrings containing '[' and '~' from tripping over Maketext
- return $_[0] unless grep { exists $_->{$_[0]} } @{ $handle->_lex_refs };
- }
-
- return $handle->maketext(@_);
-}
-
-sub loc_fuzzy {
- my $self = shift;
- return '' if $_[0] eq '';
-
- # XXX: work around perl's deficiency when matching utf8 data
- return $_[0] if Encode::is_utf8($_[0]);
- my $result = $self->LanguageHandle->maketext_fuzzy(@_);
-
- return($result);
-}
-# }}}
-
-eval "require RT::CurrentUser_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/CurrentUser_Vendor.pm});
-eval "require RT::CurrentUser_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/CurrentUser_Local.pm});
-
-1;
-
diff --git a/rt/lib/RT/CustomField.pm b/rt/lib/RT/CustomField.pm
deleted file mode 100644
index 212e594..0000000
--- a/rt/lib/RT/CustomField.pm
+++ /dev/null
@@ -1,419 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::CustomField
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::CustomField;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('CustomFields');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(200) 'Type'.
- int(11) 'MaxValues'.
- varchar(255) 'Pattern'.
- smallint(6) 'Repeated'.
- varchar(255) 'Description'.
- int(11) 'SortOrder'.
- varchar(255) 'LookupType'.
- smallint(6) 'Disabled'.
-
- 'LookupType' is generally the result of either
- RT::Ticket->CustomFieldLookupType or RT::Transaction->CustomFieldLookupType
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Type => '',
- MaxValues => '',
- Pattern => '',
- Repeated => '0',
- Description => '',
- SortOrder => '0',
- LookupType => '',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Type => $args{'Type'},
- MaxValues => $args{'MaxValues'},
- Pattern => $args{'Pattern'},
- Repeated => $args{'Repeated'},
- Description => $args{'Description'},
- SortOrder => $args{'SortOrder'},
- LookupType => $args{'LookupType'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=head2 SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=head2 Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(200).)
-
-
-
-=head2 SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(200).)
-
-
-=cut
-
-
-=head2 MaxValues
-
-Returns the current value of MaxValues.
-(In the database, MaxValues is stored as int(11).)
-
-
-
-=head2 SetMaxValues VALUE
-
-
-Set MaxValues to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, MaxValues will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Pattern
-
-Returns the current value of Pattern.
-(In the database, Pattern is stored as varchar(255).)
-
-
-
-=head2 SetPattern VALUE
-
-
-Set Pattern to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Pattern will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 Repeated
-
-Returns the current value of Repeated.
-(In the database, Repeated is stored as smallint(6).)
-
-
-
-=head2 SetRepeated VALUE
-
-
-Set Repeated to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Repeated will be stored as a smallint(6).)
-
-
-=cut
-
-
-=head2 Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=head2 SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 SortOrder
-
-Returns the current value of SortOrder.
-(In the database, SortOrder is stored as int(11).)
-
-
-
-=head2 SetSortOrder VALUE
-
-
-Set SortOrder to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, SortOrder will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 LookupType
-
-Returns the current value of LookupType.
-(In the database, LookupType is stored as varchar(255).)
-
-
-
-=head2 SetLookupType VALUE
-
-
-Set LookupType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, LookupType will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=head2 Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=head2 LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=head2 LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=head2 Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=head2 SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, sql_type => 12, length => 200, is_blob => 0, is_numeric => 0, type => 'varchar(200)', default => ''},
- Type =>
- {read => 1, write => 1, sql_type => 12, length => 200, is_blob => 0, is_numeric => 0, type => 'varchar(200)', default => ''},
- MaxValues =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Pattern =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- Repeated =>
- {read => 1, write => 1, sql_type => 5, length => 6, is_blob => 0, is_numeric => 1, type => 'smallint(6)', default => '0'},
- Description =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- SortOrder =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LookupType =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- Creator =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- Disabled =>
- {read => 1, write => 1, sql_type => 5, length => 6, is_blob => 0, is_numeric => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::CustomField_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomField_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CustomField_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomField_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CustomField_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomField_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CustomField_Overlay, RT::CustomField_Vendor, RT::CustomField_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CustomFieldValue.pm b/rt/lib/RT/CustomFieldValue.pm
deleted file mode 100644
index 105ac40..0000000
--- a/rt/lib/RT/CustomFieldValue.pm
+++ /dev/null
@@ -1,316 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::CustomFieldValue
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::CustomFieldValue;
-use RT::Record;
-use RT::CustomField;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('CustomFieldValues');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'CustomField'.
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- int(11) 'SortOrder'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- CustomField => '0',
- Name => '',
- Description => '',
- SortOrder => '0',
-
- @_);
- $self->SUPER::Create(
- CustomField => $args{'CustomField'},
- Name => $args{'Name'},
- Description => $args{'Description'},
- SortOrder => $args{'SortOrder'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 CustomField
-
-Returns the current value of CustomField.
-(In the database, CustomField is stored as int(11).)
-
-
-
-=head2 SetCustomField VALUE
-
-
-Set CustomField to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomField will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 CustomFieldObj
-
-Returns the CustomField Object which has the id returned by CustomField
-
-
-=cut
-
-sub CustomFieldObj {
- my $self = shift;
- my $CustomField = RT::CustomField->new($self->CurrentUser);
- $CustomField->Load($self->__Value('CustomField'));
- return($CustomField);
-}
-
-=head2 Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=head2 SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=head2 Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=head2 SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 SortOrder
-
-Returns the current value of SortOrder.
-(In the database, SortOrder is stored as int(11).)
-
-
-
-=head2 SetSortOrder VALUE
-
-
-Set SortOrder to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, SortOrder will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=head2 Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=head2 LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=head2 LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- CustomField =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Name =>
- {read => 1, write => 1, sql_type => 12, length => 200, is_blob => 0, is_numeric => 0, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- SortOrder =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Creator =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::CustomFieldValue_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValue_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFieldValue_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValue_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFieldValue_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValue_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CustomFieldValue_Overlay, RT::CustomFieldValue_Vendor, RT::CustomFieldValue_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CustomFieldValue_Overlay.pm b/rt/lib/RT/CustomFieldValue_Overlay.pm
deleted file mode 100644
index 322e58b..0000000
--- a/rt/lib/RT/CustomFieldValue_Overlay.pm
+++ /dev/null
@@ -1,19 +0,0 @@
-use warnings;
-use strict;
-
-package RT::CustomFieldValue;
-
-no warnings qw/redefine/;
-
-
-=head2 ValidateName
-
-Override the default ValidateName method that stops custom field values
-from being integers.
-
-=cut
-
-
-sub ValidateName { 1 };
-
-1;
diff --git a/rt/lib/RT/CustomFieldValues.pm b/rt/lib/RT/CustomFieldValues.pm
deleted file mode 100644
index 9a55af8..0000000
--- a/rt/lib/RT/CustomFieldValues.pm
+++ /dev/null
@@ -1,148 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::CustomFieldValues -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::CustomFieldValues
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::CustomFieldValues;
-
-use RT::SearchBuilder;
-use RT::CustomFieldValue;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'CustomFieldValues';
- $self->{'primary_key'} = 'id';
-
-
-
- # By default, order by SortOrder
- $self->OrderByCols(
- { ALIAS => 'main',
- FIELD => 'SortOrder',
- ORDER => 'ASC' },
- { ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'ASC' },
- );
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::CustomFieldValue item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::CustomFieldValue->new($self->CurrentUser));
-}
-
- eval "require RT::CustomFieldValues_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValues_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFieldValues_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValues_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFieldValues_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFieldValues_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CustomFieldValues_Overlay, RT::CustomFieldValues_Vendor, RT::CustomFieldValues_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CustomFieldValues_Overlay.pm b/rt/lib/RT/CustomFieldValues_Overlay.pm
deleted file mode 100644
index 3a9f5d5..0000000
--- a/rt/lib/RT/CustomFieldValues_Overlay.pm
+++ /dev/null
@@ -1,71 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::CustomFieldValues;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub LimitToCustomField
-
-=head2 LimitToCustomField FIELD
-
-Limits the returned set to values for the custom field with Id FIELD
-
-=cut
-
-sub LimitToCustomField {
- my $self = shift;
- my $cf = shift;
- return ($self->Limit( FIELD => 'CustomField',
- VALUE => $cf,
- OPERATOR => '='));
-
-}
-
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/CustomField_Overlay.pm b/rt/lib/RT/CustomField_Overlay.pm
deleted file mode 100644
index 9e0ce24..0000000
--- a/rt/lib/RT/CustomField_Overlay.pm
+++ /dev/null
@@ -1,1104 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::CustomField;
-
-use strict;
-no warnings qw(redefine);
-
-use vars qw(%FieldTypes $RIGHTS %FRIENDLY_OBJECT_TYPES);
-
-use RT::CustomFieldValues;
-use RT::ObjectCustomFieldValues;
-
-
-%FieldTypes = (
- Select => [
- 'Select multiple values', # loc
- 'Select one value', # loc
- 'Select up to [_1] values', # loc
- ],
- Freeform => [
- 'Enter multiple values', # loc
- 'Enter one value', # loc
- 'Enter up to [_1] values', # loc
- ],
- Text => [
- 'Fill in multiple text areas', # loc
- 'Fill in one text area', # loc
- 'Fill in up to [_1] text areas',# loc
- ],
- Wikitext => [
- 'Fill in multiple wikitext areas', # loc
- 'Fill in one wikitext area', # loc
- 'Fill in up to [_1] wikitext areas',# loc
- ],
- Image => [
- 'Upload multiple images', # loc
- 'Upload one image', # loc
- 'Upload up to [_1] images', # loc
- ],
- Binary => [
- 'Upload multiple files', # loc
- 'Upload one file', # loc
- 'Upload up to [_1] files', # loc
- ],
-);
-
-
-%FRIENDLY_OBJECT_TYPES = ();
-
-RT::CustomField->_ForObjectType( 'RT::Queue-RT::Ticket' => "Tickets", ); #loc
-RT::CustomField->_ForObjectType(
- 'RT::Queue-RT::Ticket-RT::Transaction' => "Ticket Transactions", ); #loc
-RT::CustomField->_ForObjectType( 'RT::User' => "Users", ); #loc
-RT::CustomField->_ForObjectType( 'RT::Group' => "Groups", ); #loc
-
-$RIGHTS = {
- SeeCustomField => 'See custom fields', # loc_pair
- AdminCustomField => 'Create, delete and modify custom fields', # loc_pair
- ModifyCustomField => 'Add, delete and modify custom field values for objects' #loc_pair
-
-};
-
-# Tell RT::ACE that this sort of object can get acls granted
-$RT::ACE::OBJECT_TYPES{'RT::CustomField'} = 1;
-
-foreach my $right ( keys %{$RIGHTS} ) {
- $RT::ACE::LOWERCASERIGHTNAMES{ lc $right } = $right;
-}
-
-sub AvailableRights {
- my $self = shift;
- return($RIGHTS);
-}
-
-=head1 NAME
-
- RT::CustomField_Overlay
-
-=head1 DESCRIPTION
-
-=head1 'CORE' METHODS
-
-=cut
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(200) 'Type'.
- int(11) 'MaxValues'.
- varchar(255) 'Pattern'.
- smallint(6) 'Repeated'.
- varchar(255) 'Description'.
- int(11) 'SortOrder'.
- varchar(255) 'LookupType'.
- smallint(6) 'Disabled'.
-
- 'LookupType' is generally the result of either
- RT::Ticket->CustomFieldLookupType or RT::Transaction->CustomFieldLookupType
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Type => '',
- MaxValues => '0',
- Pattern => '',
- Description => '',
- Disabled => '0',
- LookupType => '',
- Repeated => '0',
-
- @_);
-
- unless ($self->CurrentUser->HasRight(Object => $RT::System, Right => 'AdminCustomField')) {
- return (0, $self->loc('Permission Denied'));
- }
-
-
- if ($args{TypeComposite}) {
- @args{'Type', 'MaxValues'} = split(/-/, $args{TypeComposite}, 2);
- }
- elsif ($args{Type} =~ s/(?:(Single)|Multiple)$//) {
- # old style Type string
- $args{'MaxValues'} = $1 ? 1 : 0;
- }
-
- if ( !exists $args{'Queue'}) {
- # do nothing -- things below are strictly backward compat
- }
- elsif ( ! $args{'Queue'} ) {
- unless ( $self->CurrentUser->HasRight( Object => $RT::System, Right => 'AssignCustomFields') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- $args{'LookupType'} = 'RT::Queue-RT::Ticket';
- }
- else {
- my $queue = RT::Queue->new($self->CurrentUser);
- $queue->Load($args{'Queue'});
- unless ($queue->Id) {
- return (0, $self->loc("Queue not found"));
- }
- unless ( $queue->CurrentUserHasRight('AssignCustomFields') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- $args{'LookupType'} = 'RT::Queue-RT::Ticket';
- }
- my $rv = $self->SUPER::Create(
- Name => $args{'Name'},
- Type => $args{'Type'},
- MaxValues => $args{'MaxValues'},
- Pattern => $args{'Pattern'},
- Description => $args{'Description'},
- Disabled => $args{'Disabled'},
- LookupType => $args{'LookupType'},
- Repeated => $args{'Repeated'},
-);
-
- return $rv unless exists $args{'Queue'};
-
- # Compat code -- create a new ObjectCustomField mapping
- my $OCF = RT::ObjectCustomField->new($self->CurrentUser);
- $OCF->Create(
- CustomField => $self->Id,
- ObjectId => $args{'Queue'},
- );
-
- return $rv;
-}
-
-=head2 Load ID/NAME
-
-Load a custom field. If the value handed in is an integer, load by custom field ID. Otherwise, Load by name.
-
-=cut
-
-
-sub Load {
- my $self = shift;
- my $id = shift;
-
- if ($id =~ /^\d+$/) {
- return ($self->SUPER::Load($id));
- } else {
- return($self->LoadByName(Name => $id));
- }
-}
-
-
-# {{{ sub LoadByName
-
-=head2 LoadByName (Queue => QUEUEID, Name => NAME)
-
-Loads the Custom field named NAME.
-
-If a Queue parameter is specified, only look for ticket custom fields tied to that Queue.
-
-If the Queue parameter is '0', look for global ticket custom fields.
-
-If no queue parameter is specified, look for any and all custom fields with this name.
-
-BUG/TODO, this won't let you specify that you only want user or group CFs.
-
-=cut
-
-# Compatibility for API change after 3.0 beta 1
-*LoadNameAndQueue = \&LoadByName;
-# Change after 3.4 beta.
-*LoadByNameAndQueue = \&LoadByName;
-
-sub LoadByName {
- my $self = shift;
- my %args = (
- Queue => undef,
- Name => undef,
- @_,
- );
-
- # if we're looking for a queue by name, make it a number
- if (defined $args{'Queue'} && $args{'Queue'} !~ /^\d+$/) {
- my $QueueObj = RT::Queue->new($self->CurrentUser);
- $QueueObj->Load($args{'Queue'});
- $args{'Queue'} = $QueueObj->Id;
- }
-
- # XXX - really naive implementation. Slow. - not really. still just one query
-
- my $CFs = RT::CustomFields->new($self->CurrentUser);
-
- $CFs->Limit( FIELD => 'Name', VALUE => $args{'Name'} );
- # Don't limit to queue if queue is 0. Trying to do so breaks
- # RT::Group type CFs.
- if (defined $args{'Queue'}) {
- $CFs->LimitToQueue( $args{'Queue'} );
- }
-
- # When loading by name, it's ok if they're disabled. That's not a big deal.
- $CFs->{'find_disabled_rows'}=1;
-
- # We only want one entry.
- $CFs->RowsPerPage(1);
- unless ($CFs->First) {
- return(0);
- }
- return($self->Load($CFs->First->id));
-
-}
-
-# }}}
-
-# {{{ Dealing with custom field values
-
-=begin testing
-
-use_ok(RT::CustomField);
-ok(my $cf = RT::CustomField->new($RT::SystemUser));
-ok(my ($id, $msg)= $cf->Create( Name => 'TestingCF',
- Queue => '0',
- SortOrder => '1',
- Description => 'A Testing custom field',
- Type=> 'SelectSingle'), 'Created a global CustomField');
-ok($id != 0, 'Global custom field correctly created');
-ok ($cf->SingleValue);
-is($cf->Type, 'Select');
-is($cf->MaxValues, 1);
-
-my ($val, $msg) = $cf->SetMaxValues('0');
-ok($val, $msg);
-is($cf->Type, 'Select');
-is($cf->MaxValues, 0);
-ok(!$cf->SingleValue );
-ok(my ($bogus_val, $bogus_msg) = $cf->SetType('BogusType') , "Trying to set a custom field's type to a bogus type");
-ok($bogus_val == 0, "Unable to set a custom field's type to a bogus type");
-
-ok(my $bad_cf = RT::CustomField->new($RT::SystemUser));
-ok(my ($bad_id, $bad_msg)= $cf->Create( Name => 'TestingCF-bad',
- Queue => '0',
- SortOrder => '1',
- Description => 'A Testing custom field with a bogus Type',
- Type=> 'SelectSingleton'), 'Created a global CustomField with a bogus type');
-ok($bad_id == 0, 'Global custom field correctly decided to not create a cf with a bogus type ');
-
-=end testing
-
-=cut
-
-# {{{ AddValue
-
-=head2 AddValue HASH
-
-Create a new value for this CustomField. Takes a paramhash containing the elements Name, Description and SortOrder
-
-=begin testing
-
-ok(my $cf = RT::CustomField->new($RT::SystemUser));
-$cf->Load(1);
-ok($cf->Id == 1);
-ok(my ($val,$msg) = $cf->AddValue(Name => 'foo' , Description => 'TestCFValue', SortOrder => '6'));
-ok($val != 0);
-ok (my ($delval, $delmsg) = $cf->DeleteValue($val));
-ok ($delval,"Deleting a cf value: $delmsg");
-
-=end testing
-
-=cut
-
-sub AddValue {
- my $self = shift;
- my %args = ( Name => undef,
- Description => undef,
- SortOrder => undef,
- @_ );
-
- unless ($self->CurrentUserHasRight('AdminCustomField')) {
- return (0, $self->loc('Permission Denied'));
- }
-
- unless ($args{'Name'}) {
- return(0, $self->loc("Can't add a custom field value without a name"));
- }
- my $newval = RT::CustomFieldValue->new($self->CurrentUser);
- return($newval->Create(
- CustomField => $self->Id,
- Name =>$args{'Name'},
- Description => ($args{'Description'} || ''),
- SortOrder => ($args{'SortOrder'} || '0')
- ));
-}
-
-
-# }}}
-
-# {{{ DeleteValue
-
-=head2 DeleteValue ID
-
-Deletes a value from this custom field by id.
-
-Does not remove this value for any article which has had it selected
-
-=cut
-
-sub DeleteValue {
- my $self = shift;
- my $id = shift;
- unless ($self->CurrentUserHasRight('AdminCustomField')) {
- return (0, $self->loc('Permission Denied'));
- }
-
- my $val_to_del = RT::CustomFieldValue->new($self->CurrentUser);
- $val_to_del->Load($id);
- unless ($val_to_del->Id) {
- return (0, $self->loc("Couldn't find that value"));
- }
- unless ($val_to_del->CustomField == $self->Id) {
- return (0, $self->loc("That is not a value for this custom field"));
- }
-
- my $retval = $val_to_del->Delete();
- if ($retval) {
- return ($retval, $self->loc("Custom field value deleted"));
- } else {
- return(0, $self->loc("Custom field value could not be deleted"));
- }
-}
-
-# }}}
-
-# {{{ Values
-
-=head2 Values FIELD
-
-Return a CustomFieldeValues object of all acceptable values for this Custom Field.
-
-
-=cut
-
-*ValuesObj = \&Values;
-
-sub Values {
- my $self = shift;
-
- my $cf_values = RT::CustomFieldValues->new($self->CurrentUser);
- # if the user has no rights, return an empty object
- if ($self->id && $self->CurrentUserHasRight( 'SeeCustomField') ) {
- $cf_values->LimitToCustomField($self->Id);
- }
- return ($cf_values);
-}
-
-# }}}
-
-# }}}
-
-# {{{ Ticket related routines
-
-# {{{ ValuesForTicket
-
-=head2 ValuesForTicket TICKET
-
-Returns a RT::ObjectCustomFieldValues object of this Field's values for TICKET.
-TICKET is a ticket id.
-
-This is deprecated -- use ValuesForObject instead.
-
-
-=cut
-
-sub ValuesForTicket {
- my $self = shift;
- my $ticket_id = shift;
-
- $RT::Logger->debug( ref($self) . " -> ValuesForTicket deprecated in favor of ValuesForObject");
- my $ticket = RT::Ticket->new($self->CurrentUser);
- $ticket->Load($ticket_id);
-
- return $self->ValuesForObject($ticket);
-}
-
-# }}}
-
-# {{{ AddValueForTicket
-
-=head2 AddValueForTicket HASH
-
-Adds a custom field value for a ticket. Takes a param hash of Ticket and Content
-
-This is deprecated -- use AddValueForObject instead.
-
-=cut
-
-sub AddValueForTicket {
- my $self = shift;
- my %args = ( Ticket => undef,
- Content => undef,
- @_ );
- $RT::Logger->debug( ref($self) . " -> AddValueForTicket deprecated in favor of AddValueForObject");
-
-
- my $ticket = RT::Ticket->new($self->CurrentUser);
- $ticket->Load($args{'Ticket'});
- return($self->AddValueForObject(Content => $args{'Content'}, Object => $ticket,@_));
-
-}
-
-
-# }}}
-
-# {{{ DeleteValueForTicket
-
-=head2 DeleteValueForTicket HASH
-
-Adds a custom field value for a ticket. Takes a param hash of Ticket and Content
-
-This is deprecated -- use DeleteValueForObject instead.
-
-=cut
-
-sub DeleteValueForTicket {
- my $self = shift;
- my %args = ( Ticket => undef,
- Content => undef,
- @_ );
-
- $RT::Logger->debug( ref($self) . " -> DeleteValueForTicket deprecated in favor of DeleteValueForObject");
-
-
- my $ticket = RT::Ticket->new($self->CurrentUser);
- $ticket->load($args{'Ticket'});
- return ($self->DeleteValueForObject(Object => $ticket, Content => $args{'Content'}, @_));
-
-}
-
-# }}}
-# }}}
-
-
-=head2 ValidateQueue Queue
-
-Make sure that the queue specified is a valid queue name
-
-=cut
-
-sub ValidateQueue {
- my $self = shift;
- my $id = shift;
-
- if ($id eq '0') { # 0 means "Global" null would _not_ be ok.
- return (1);
- }
-
- my $q = RT::Queue->new($RT::SystemUser);
- $q->Load($id);
- unless ($q->id) {
- return undef;
- }
- return (1);
-
-
-}
-
-
-# {{{ Types
-
-=head2 Types
-
-Retuns an array of the types of CustomField that are supported
-
-=cut
-
-sub Types {
- return (keys %FieldTypes);
-}
-
-# }}}
-
-
-=head2 FriendlyType [TYPE, MAX_VALUES]
-
-Returns a localized human-readable version of the custom field type.
-If a custom field type is specified as the parameter, the friendly type for that type will be returned
-
-=cut
-
-sub FriendlyType {
- my $self = shift;
-
- my $type = @_ ? shift : $self->Type;
- my $max = @_ ? shift : $self->MaxValues;
-
- if (my $friendly_type = $FieldTypes{$type}[$max>2 ? 2 : $max]) {
- return ( $self->loc( $friendly_type, $max ) );
- }
- else {
- return ( $self->loc( $type ) );
- }
-}
-
-sub FriendlyTypeComposite {
- my $self = shift;
- my $composite = shift || $self->TypeComposite;
- return $self->FriendlyType(split(/-/, $composite, 2));
-}
-
-
-=head2 ValidateType TYPE
-
-Takes a single string. returns true if that string is a value
-type of custom field
-
-=begin testing
-
-ok(my $cf = RT::CustomField->new($RT::SystemUser));
-ok($cf->ValidateType('SelectSingle'));
-ok($cf->ValidateType('SelectMultiple'));
-ok(!$cf->ValidateType('SelectFooMultiple'));
-
-=end testing
-
-=cut
-
-sub ValidateType {
- my $self = shift;
- my $type = shift;
-
- if ($type =~ s/(?:Single|Multiple)$//) {
- $RT::Logger->warning( "Prefix 'Single' and 'Multiple' to Type deprecated, use MaxValues instead");
- }
-
- if( $FieldTypes{$type}) {
- return(1);
- }
- else {
- return undef;
- }
-}
-
-
-sub SetType {
- my $self = shift;
- my $type = shift;
- if ($type =~ s/(?:(Single)|Multiple)$//) {
- warn "'Single' and 'Multiple' on SetType deprecated, use SetMaxValues instead";
- $self->SetMaxValues($1 ? 1 : 0);
- }
- $self->SUPER::SetType($type);
-}
-
-# {{{ SingleValue
-
-=head2 SingleValue
-
-Returns true if this CustomField only accepts a single value.
-Returns false if it accepts multiple values
-
-=cut
-
-sub SingleValue {
- my $self = shift;
- if ($self->MaxValues == 1) {
- return 1;
- }
- else {
- return undef;
- }
-}
-
-sub UnlimitedValues {
- my $self = shift;
- if ($self->MaxValues == 0) {
- return 1;
- }
- else {
- return undef;
- }
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight RIGHT
-
-Helper function to call the custom field's queue's CurrentUserHasRight with the passed in args.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
- return $self->CurrentUser->HasRight(
- Object => $self,
- Right => $right,
- );
-}
-
-# }}}
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('AdminCustomField') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- return ( $self->SUPER::_Set(@_) );
-
-}
-
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
- # we need to do the rights check
- unless ( $self->id && $self->CurrentUserHasRight( 'SeeCustomField') ) {
- return (undef);
- }
- return ( $self->__Value($field) );
-
-}
-
-# }}}
-# {{{ sub SetDisabled
-
-=head2 SetDisabled
-
-Takes a boolean.
-1 will cause this custom field to no longer be avaialble for tickets.
-0 will re-enable this queue
-
-=cut
-
-# }}}
-
-sub Queue {
- $RT::Logger->debug( ref($_[0]) . " -> Queue deprecated");
-
- return 0;
-}
-
-sub SetQueue {
- $RT::Logger->debug( ref($_[0]) . " -> SetQueue deprecated");
-
- return 0;
-}
-
-sub QueueObj {
- $RT::Logger->debug( ref($_[0]) . " -> QueueObj deprecated");
-
- return undef;
-}
-
-=head2 SetTypeComposite
-
-Set this custom field's type and maximum values as a composite value
-
-
-=cut
-
-sub SetTypeComposite {
- my $self = shift;
- my $composite = shift;
- my ($type, $max_values) = split(/-/, $composite, 2);
- $self->SetType($type);
- $self->SetMaxValues($max_values);
-}
-
-=head2 SetLookupType
-
-Autrijus: care to doc how LookupTypes work?
-
-=cut
-
-sub SetLookupType {
- my $self = shift;
- my $lookup = shift;
- if ($lookup ne $self->LookupType) {
- # Okay... We need to invalidate our existing relationships
- my $ObjectCustomFields = RT::ObjectCustomFields->new($self->CurrentUser);
- $ObjectCustomFields->LimitToCustomField($self->Id);
- $_->Delete foreach @{$ObjectCustomFields->ItemsArrayRef};
- }
- $self->SUPER::SetLookupType($lookup);
-}
-
-=head2 TypeComposite
-
-Returns a composite value composed of this object's type and maximum values
-
-=cut
-
-
-sub TypeComposite {
- my $self = shift;
- join('-', $self->Type, $self->MaxValues);
-}
-
-=head2 TypeComposites
-
-Returns an array of all possible composite values for custom fields.
-
-=cut
-
-sub TypeComposites {
- my $self = shift;
- return grep !/Text-0/, map { ("$_-1", "$_-0") } $self->Types;
-}
-
-=head2 LookupTypes
-
-Returns an array of LookupTypes available
-
-=cut
-
-
-sub LookupTypes {
- my $self = shift;
- return keys %FRIENDLY_OBJECT_TYPES;
-}
-
-my @FriendlyObjectTypes = (
- "[_1] objects", # loc
- "[_1]'s [_2] objects", # loc
- "[_1]'s [_2]'s [_3] objects", # loc
-);
-
-=head2 FriendlyTypeLookup
-
-=cut
-
-sub FriendlyLookupType {
- my $self = shift;
- my $lookup = shift || $self->LookupType;
-
- return ($self->loc( $FRIENDLY_OBJECT_TYPES{$lookup} ))
- if (defined $FRIENDLY_OBJECT_TYPES{$lookup} );
-
- my @types = map { s/^RT::// ? $self->loc($_) : $_ }
- grep { defined and length }
- split( /-/, $lookup )
- or return;
- return ( $self->loc( $FriendlyObjectTypes[$#types], @types ) );
-}
-
-
-=head2 AddToObject OBJECT
-
-Add this custom field as a custom field for a single object, such as a queue or group.
-
-Takes an object
-
-=cut
-
-
-sub AddToObject {
- my $self = shift;
- my $object = shift;
- my $id = $object->Id || 0;
-
- unless (index($self->LookupType, ref($object)) == 0) {
- return ( 0, $self->loc('Lookup type mismatch') );
- }
-
- unless ( $object->CurrentUserHasRight('AssignCustomFields') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
-
- my $ObjectCF = RT::ObjectCustomField->new( $self->CurrentUser );
-
- $ObjectCF->LoadByCols( ObjectId => $id, CustomField => $self->Id );
- if ( $ObjectCF->Id ) {
- return ( 0, $self->loc("That is already the current value") );
- }
- my ( $id, $msg ) =
- $ObjectCF->Create( ObjectId => $id, CustomField => $self->Id );
-
- return ( $id, $msg );
-}
-
-
-=head2 RemoveFromObject OBJECT
-
-Remove this custom field for a single object, such as a queue or group.
-
-Takes an object
-
-=cut
-
-
-sub RemoveFromObject {
- my $self = shift;
- my $object = shift;
- my $id = $object->Id || 0;
-
- unless (index($self->LookupType, ref($object)) == 0) {
- return ( 0, $self->loc('Object type mismatch') );
- }
-
- unless ( $object->CurrentUserHasRight('AssignCustomFields') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
-
- my $ObjectCF = RT::ObjectCustomField->new( $self->CurrentUser );
-
- $ObjectCF->LoadByCols( ObjectId => $id, CustomField => $self->Id );
- unless ( $ObjectCF->Id ) {
- return ( 0, $self->loc("This custom field does not apply to that object") );
- }
- my ( $id, $msg ) = $ObjectCF->Delete;
-
- return ( $id, $msg );
-}
-
-# {{{ AddValueForObject
-
-=head2 AddValueForObject HASH
-
-Adds a custom field value for a record object of some kind.
-Takes a param hash of
-
-Required:
-
- Object
- Content
-
-Optional:
-
- LargeContent
- ContentType
-
-=cut
-
-sub AddValueForObject {
- my $self = shift;
- my %args = (
- Object => undef,
- Content => undef,
- LargeContent => undef,
- ContentType => undef,
- @_
- );
- my $obj = $args{'Object'} or return;
-
- unless ( $self->CurrentUserHasRight('ModifyCustomField') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
-
- $RT::Handle->BeginTransaction;
-
- my $current_values = $self->ValuesForObject($obj);
-
- if ( $self->MaxValues ) {
- my $extra_values = ( $current_values->Count + 1 ) - $self->MaxValues;
-
- # (The +1 is for the new value we're adding)
-
- # If we have a set of current values and we've gone over the maximum
- # allowed number of values, we'll need to delete some to make room.
- # which former values are blown away is not guaranteed
-
- while ($extra_values) {
- my $extra_item = $current_values->Next;
-
- unless ( $extra_item->id ) {
- $RT::Logger->crit(
-"We were just asked to delete a custom fieldvalue that doesn't exist!"
- );
- $RT::Handle->Rollback();
- return (undef);
- }
- $extra_item->Delete;
- $extra_values--;
-
- }
- }
- my $newval = RT::ObjectCustomFieldValue->new( $self->CurrentUser );
- my $val = $newval->Create(
- ObjectType => ref($obj),
- ObjectId => $obj->Id,
- Content => $args{'Content'},
- LargeContent => $args{'LargeContent'},
- ContentType => $args{'ContentType'},
- CustomField => $self->Id
- );
-
- unless ($val) {
- $RT::Handle->Rollback();
- return ($val);
- }
-
- $RT::Handle->Commit();
- return ($val);
-
-}
-
-# }}}
-
-# {{{ DeleteValueForObject
-
-=head2 DeleteValueForObject HASH
-
-Deletes a custom field value for a ticket. Takes a param hash of Object and Content
-
-Returns a tuple of (STATUS, MESSAGE). If the call succeeded, the STATUS is true. otherwise it's false
-
-=cut
-
-sub DeleteValueForObject {
- my $self = shift;
- my %args = ( Object => undef,
- Content => undef,
- Id => undef,
- @_ );
-
-
- unless ($self->CurrentUserHasRight('ModifyCustomField')) {
- return (0, $self->loc('Permission Denied'));
- }
-
- my $oldval = RT::ObjectCustomFieldValue->new($self->CurrentUser);
-
- if (my $id = $args{'Id'}) {
- $oldval->Load($id);
- }
- unless ($oldval->id) {
- $oldval->LoadByObjectContentAndCustomField(
- Object => $args{'Object'},
- Content => $args{'Content'},
- CustomField => $self->Id,
- );
- }
-
-
- # check ot make sure we found it
- unless ($oldval->Id) {
- return(0, $self->loc("Custom field value [_1] could not be found for custom field [_2]", $args{'Content'}, $self->Name));
- }
- # delete it
-
- my $ret = $oldval->Delete();
- unless ($ret) {
- return(0, $self->loc("Custom field value could not be found"));
- }
- return($oldval->Id, $self->loc("Custom field value deleted"));
-}
-
-
-=head2 ValuesForObject OBJECT
-
-Return an RT::ObjectCustomFieldValues object containing all of this custom field's values for OBJECT
-
-=cut
-
-sub ValuesForObject {
- my $self = shift;
- my $object = shift;
-
- my $values = new RT::ObjectCustomFieldValues($self->CurrentUser);
- unless ($self->CurrentUserHasRight('SeeCustomField')) {
- # Return an empty object if they have no rights to see
- return ($values);
- }
-
-
- $values->LimitToCustomField($self->Id);
- $values->LimitToEnabled();
- $values->LimitToObject($object);
-
- return ($values);
-}
-
-
-=head2 _ForObjectType PATH FRIENDLYNAME
-
-Tell RT that a certain object accepts custom fields
-
-Examples:
-
- 'RT::Queue-RT::Ticket' => "Tickets", # loc
- 'RT::Queue-RT::Ticket-RT::Transaction' => "Ticket Transactions", # loc
- 'RT::User' => "Users", # loc
- 'RT::Group' => "Groups", # loc
-
-This is a class method.
-
-=cut
-
-sub _ForObjectType {
- my $self = shift;
- my $path = shift;
- my $friendly_name = shift;
-
- $FRIENDLY_OBJECT_TYPES{$path} = $friendly_name;
-
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/CustomFields.pm b/rt/lib/RT/CustomFields.pm
deleted file mode 100644
index aac2d4b..0000000
--- a/rt/lib/RT/CustomFields.pm
+++ /dev/null
@@ -1,148 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::CustomFields -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::CustomFields
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::CustomFields;
-
-use RT::SearchBuilder;
-use RT::CustomField;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'CustomFields';
- $self->{'primary_key'} = 'id';
-
-
-
- # By default, order by SortOrder
- $self->OrderByCols(
- { ALIAS => 'main',
- FIELD => 'SortOrder',
- ORDER => 'ASC' },
- { ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'ASC' },
- );
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::CustomField item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::CustomField->new($self->CurrentUser));
-}
-
- eval "require RT::CustomFields_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFields_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFields_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFields_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::CustomFields_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/CustomFields_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::CustomFields_Overlay, RT::CustomFields_Vendor, RT::CustomFields_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/CustomFields_Overlay.pm b/rt/lib/RT/CustomFields_Overlay.pm
deleted file mode 100644
index ca80fa2..0000000
--- a/rt/lib/RT/CustomFields_Overlay.pm
+++ /dev/null
@@ -1,263 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::CustomFields - a collection of RT CustomField objects
-
-=head1 SYNOPSIS
-
- use RT::CustomFields;
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::CustomFields);
-
-=end testing
-
-=cut
-
-
-package RT::CustomFields;
-
-use strict;
-no warnings qw(redefine);
-use DBIx::SearchBuilder::Unique;
-
-
-sub _OCFAlias {
- my $self = shift;
- unless ($self->{_sql_ocfalias}) {
-
- $self->{'_sql_ocfalias'} = $self->NewAlias('ObjectCustomFields');
- $self->Join( ALIAS1 => 'main',
- FIELD1 => 'id',
- ALIAS2 => $self->_OCFAlias,
- FIELD2 => 'CustomField' );
- }
- return($self->{_sql_ocfalias});
-}
-
-
-# {{{ sub LimitToGlobalOrQueue
-
-=head2 LimitToGlobalOrQueue QUEUEID
-
-Limits the set of custom fields found to global custom fields or those tied to the queue with ID QUEUEID
-
-=cut
-
-sub LimitToGlobalOrQueue {
- my $self = shift;
- my $queue = shift;
- $self->LimitToGlobalOrObjectId( $queue );
- $self->LimitToLookupType( 'RT::Queue-RT::Ticket' );
-}
-
-# }}}
-
-# {{{ sub LimitToQueue
-
-=head2 LimitToQueue QUEUEID
-
-Takes a queue id (numerical) as its only argument. Makes sure that
-Scopes it pulls out apply to this queue (or another that you've selected with
-another call to this method
-
-=cut
-
-sub LimitToQueue {
- my $self = shift;
- my $queue = shift;
-
- $self->Limit (ALIAS => $self->_OCFAlias,
- ENTRYAGGREGATOR => 'OR',
- FIELD => 'ObjectId',
- VALUE => "$queue")
- if defined $queue;
- $self->LimitToLookupType( 'RT::Queue-RT::Ticket' );
-}
-# }}}
-
-# {{{ sub LimitToGlobal
-
-=head2 LimitToGlobal
-
-Makes sure that
-Scopes it pulls out apply to all queues (or another that you've selected with
-another call to this method or LimitToQueue
-
-=cut
-
-
-sub LimitToGlobal {
- my $self = shift;
-
- $self->Limit (ALIAS => $self->_OCFAlias,
- ENTRYAGGREGATOR => 'OR',
- FIELD => 'ObjectId',
- VALUE => 0);
- $self->LimitToLookupType( 'RT::Queue-RT::Ticket' );
-}
-# }}}
-
-
-# {{{ sub _DoSearch
-
-=head2 _DoSearch
-
-A subclass of DBIx::SearchBuilder::_DoSearch that makes sure that
- _Disabled rows never get seen unless we're explicitly trying to see
-them.
-
-=cut
-
-sub _DoSearch {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless($self->{'find_disabled_rows'}) {
- $self->LimitToEnabled();
- }
-
- return($self->SUPER::_DoSearch(@_));
-
-}
-
-# }}}
-
-# {{{ sub Next
-
-=head2 Next
-
-Returns the next custom field that this user can see.
-
-=cut
-
-sub Next {
- my $self = shift;
-
-
- my $CF = $self->SUPER::Next();
- if ((defined($CF)) and (ref($CF))) {
-
- if ($CF->CurrentUserHasRight('SeeCustomField')) {
- return($CF);
- }
-
- #If the user doesn't have the right to show this queue
- else {
- return($self->Next());
- }
- }
- #if there never was any queue
- else {
- return(undef);
- }
-
-}
-# }}}
-
-sub LimitToLookupType {
- my $self = shift;
- my $lookup = shift;
-
- $self->Limit( FIELD => 'LookupType', VALUE => "$lookup" );
-}
-
-sub LimitToChildType {
- my $self = shift;
- my $lookup = shift;
-
- $self->Limit( FIELD => 'LookupType', VALUE => "$lookup" );
- $self->Limit( FIELD => 'LookupType', ENDSWITH => "$lookup" );
-}
-
-sub LimitToParentType {
- my $self = shift;
- my $lookup = shift;
-
- $self->Limit( FIELD => 'LookupType', VALUE => "$lookup" );
- $self->Limit( FIELD => 'LookupType', STARTSWITH => "$lookup" );
-}
-
-sub LimitToGlobalOrObjectId {
- my $self = shift;
- my $global_only = 1;
-
-
- foreach my $id (@_) {
- $self->Limit( ALIAS => $self->_OCFAlias,
- FIELD => 'ObjectId',
- OPERATOR => '=',
- VALUE => $id || 0,
- ENTRYAGGREGATOR => 'OR' );
- $global_only = 0 if $id;
- }
-
- $self->Limit( ALIAS => $self->_OCFAlias,
- FIELD => 'ObjectId',
- OPERATOR => '=',
- VALUE => 0,
- ENTRYAGGREGATOR => 'OR' ) unless $global_only;
-
- $self->OrderByCols(
- { ALIAS => $self->_OCFAlias, FIELD => 'ObjectId' },
- { ALIAS => $self->_OCFAlias, FIELD => 'SortOrder' },
- );
-
- # This doesn't work on postgres.
- #$self->OrderBy( ALIAS => $class_cfs , FIELD => "SortOrder", ORDER => 'ASC');
-
-}
-
-1;
-
diff --git a/rt/lib/RT/Date.pm b/rt/lib/RT/Date.pm
deleted file mode 100644
index 355370a..0000000
--- a/rt/lib/RT/Date.pm
+++ /dev/null
@@ -1,557 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::Date - a simple Object Oriented date.
-
-=head1 SYNOPSIS
-
- use RT::Date
-
-=head1 DESCRIPTION
-
-RT Date is a simple Date Object designed to be speedy and easy for RT to use
-
-The fact that it assumes that a time of 0 means "never" is probably a bug.
-
-=begin testing
-
-ok (require RT::Date);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-
-package RT::Date;
-
-use Time::Local;
-
-use RT::Base;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw/RT::Base/;
-
-use vars qw($MINUTE $HOUR $DAY $WEEK $MONTH $YEAR);
-
-$MINUTE = 60;
-$HOUR = 60 * $MINUTE;
-$DAY = 24 * $HOUR;
-$WEEK = 7 * $DAY;
-$MONTH = 4 * $WEEK;
-$YEAR = 365 * $DAY;
-
-# {{{ sub new
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->CurrentUser(@_);
- $self->Unix(0);
- return $self;
-}
-
-# }}}
-
-# {{{ sub Set
-
-=head2 sub Set
-
-takes a param hash with the fields 'Format' and 'Value'
-
-if $args->{'Format'} is 'unix', takes the number of seconds since the epoch
-
-If $args->{'Format'} is ISO, tries to parse an ISO date.
-
-If $args->{'Format'} is 'unknown', require Time::ParseDate and make it figure
-things out. This is a heavyweight operation that should never be called from
-within RT's core. But it's really useful for something like the textbox date
-entry where we let the user do whatever they want.
-
-If $args->{'Value'} is 0, assumes you mean never.
-
-=begin testing
-
-use_ok(RT::Date);
-my $date = RT::Date->new($RT::SystemUser);
-$date->Set(Format => 'unix', Value => '0');
-ok ($date->ISO eq '1970-01-01 00:00:00', "Set a date to midnight 1/1/1970 GMT");
-
-=end testing
-
-=cut
-
-sub Set {
- my $self = shift;
- my %args = ( Format => 'unix',
- Value => time,
- @_ );
- if ( !$args{'Value'}
- || ( ( $args{'Value'} =~ /^\d*$/ ) and ( $args{'Value'} == 0 ) ) ) {
- $self->Unix(-1);
- return ( $self->Unix() );
- }
-
- if ( $args{'Format'} =~ /^unix$/i ) {
- $self->Unix( $args{'Value'} );
- }
-
- elsif ( $args{'Format'} =~ /^(sql|datemanip|iso)$/i ) {
- $args{'Value'} =~ s!/!-!g;
-
- if (( $args{'Value'} =~ /^(\d{4}?)(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)$/ )
- || ( $args{'Value'} =~
- /^(\d{4}?)-(\d\d)-(\d\d) (\d\d):(\d\d):(\d\d)$/ )
- || ( $args{'Value'} =~
- /^(\d{4}?)-(\d\d)-(\d\d) (\d\d):(\d\d):(\d\d)\+00$/ )
- || ($args{'Value'} =~ /^(\d{4}?)(\d\d)(\d\d)(\d\d):(\d\d):(\d\d)$/ )
- ) {
-
- my $year = $1;
- my $mon = $2;
- my $mday = $3;
- my $hours = $4;
- my $min = $5;
- my $sec = $6;
-
- #timegm expects month as 0->11
- $mon--;
-
- #now that we've parsed it, deal with the case where everything
- #was 0
- if ( $mon == -1 ) {
- $self->Unix(-1);
- }
- else {
-
- #Dateamnip strings aren't in GMT.
- if ( $args{'Format'} =~ /^datemanip$/i ) {
- $self->Unix(
- timelocal( $sec, $min, $hours, $mday, $mon, $year ) );
- }
-
- #ISO and SQL dates are in GMT
- else {
- $self->Unix(
- timegm( $sec, $min, $hours, $mday, $mon, $year ) );
- }
-
- $self->Unix(-1) unless $self->Unix;
- }
- }
- else {
- use Carp;
- Carp::cluck;
- $RT::Logger->debug(
- "Couldn't parse date $args{'Value'} as a $args{'Format'}");
-
- }
- }
- elsif ( $args{'Format'} =~ /^unknown$/i ) {
- require Time::ParseDate;
-
- #Convert it to an ISO format string
-
- my $date = Time::ParseDate::parsedate($args{'Value'},
- UK => $RT::DateDayBeforeMonth,
- PREFER_PAST => $RT::AmbiguousDayInPast,
- PREFER_FUTURE => !($RT::AmbiguousDayInPast));
-
- #This date has now been set to a date in the _local_ timezone.
- #since ISO dates are known to be in GMT (for RT's purposes);
-
- $RT::Logger->debug( "RT::Date used date::parse to make "
- . $args{'Value'}
- . " $date\n" );
-
- return ( $self->Set( Format => 'unix', Value => "$date" ) );
- }
- else {
- die "Unknown Date format: " . $args{'Format'} . "\n";
- }
-
- return ( $self->Unix() );
-}
-
-# }}}
-
-# {{{ sub SetToMidnight
-
-=head2 SetToMidnight
-
-Sets the date to midnight (at the beginning of the day) GMT
-Returns the unixtime at midnight.
-
-=cut
-
-sub SetToMidnight {
- my $self = shift;
-
- use Time::Local;
- my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime($self->Unix);
- $self->Unix(timegm (0,0,0,$mday,$mon,$year,$wday,$yday));
-
- return ($self->Unix);
-
-
-}
-
-
-# }}}
-
-# {{{ sub SetToNow
-sub SetToNow {
- my $self = shift;
- return($self->Set(Format => 'unix', Value => time))
-}
-# }}}
-
-# {{{ sub Diff
-
-=head2 Diff
-
-Takes either an RT::Date object or the date in unixtime format as a string
-
-Returns the differnce between $self and that time as a number of seconds
-
-=cut
-
-sub Diff {
- my $self = shift;
- my $other = shift;
-
- if (ref($other) eq 'RT::Date') {
- $other=$other->Unix;
- }
- return ($self->Unix - $other);
-}
-# }}}
-
-# {{{ sub DiffAsString
-
-=head2 sub DiffAsString
-
-Takes either an RT::Date object or the date in unixtime format as a string
-
-Returns the differnce between $self and that time as a number of seconds as
-as string fit for human consumption
-
-=cut
-
-sub DiffAsString {
- my $self = shift;
- my $other = shift;
-
-
- if ($other < 1) {
- return ("");
- }
- if ($self->Unix < 1) {
- return("");
- }
- my $diff = $self->Diff($other);
-
- return ($self->DurationAsString($diff));
-}
-# }}}
-
-# {{{ sub DurationAsString
-
-
-=head2 DurationAsString
-
-Takes a number of seconds. returns a string describing that duration
-
-=cut
-
-sub DurationAsString {
-
- my $self = shift;
- my $duration = shift;
-
- my ( $negative, $s );
-
- $negative = 1 if ( $duration < 0 );
-
- $duration = abs($duration);
-
- my $time_unit;
- if ( $duration < $MINUTE ) {
- $s = $duration;
- $time_unit = $self->loc("sec");
- }
- elsif ( $duration < ( 2 * $HOUR ) ) {
- $s = int( $duration / $MINUTE );
- $time_unit = $self->loc("min");
- }
- elsif ( $duration < ( 2 * $DAY ) ) {
- $s = int( $duration / $HOUR );
- $time_unit = $self->loc("hours");
- }
- elsif ( $duration < ( 2 * $WEEK ) ) {
- $s = int( $duration / $DAY );
- $time_unit = $self->loc("days");
- }
- elsif ( $duration < ( 2 * $MONTH ) ) {
- $s = int( $duration / $WEEK );
- $time_unit = $self->loc("weeks");
- }
- elsif ( $duration < $YEAR ) {
- $s = int( $duration / $MONTH );
- $time_unit = $self->loc("months");
- }
- else {
- $s = int( $duration / $YEAR );
- $time_unit = $self->loc("years");
- }
- if (0) { # For now, never display the "AGO" # $negative) {
- return $self->loc( "[_1] [_2] ago", $s, $time_unit );
- }
- else {
- return $self->loc( "[_1] [_2]", $s, $time_unit );
- }
-}
-
-# }}}
-
-# {{{ sub AgeAsString
-
-=head2 sub AgeAsString
-
-Takes nothing
-
-Returns a string that's the differnce between the time in the object and now
-
-=cut
-
-sub AgeAsString {
- my $self = shift;
- return ($self->DiffAsString(time));
- }
-# }}}
-
-# {{{ sub AsString
-
-=head2 sub AsString
-
-Returns the object\'s time as a string with the current timezone.
-
-=cut
-
-sub AsString {
- my $self = shift;
- return ($self->loc("Not set")) if ($self->Unix <= 0);
-
- my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($self->Unix);
-
- return $self->loc("[_1] [_2] [_3] [_4]:[_5]:[_6] [_7]", $self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900));
-}
-# }}}
-
-# {{{ GetWeekday
-=head2 GetWeekday DAY
-
-Takes an integer day of week and returns a localized string for that day of week
-
-=cut
-
-sub GetWeekday {
- my $self = shift;
- my $dow = shift;
-
- return $self->loc('Mon.') if ($dow == 1);
- return $self->loc('Tue.') if ($dow == 2);
- return $self->loc('Wed.') if ($dow == 3);
- return $self->loc('Thu.') if ($dow == 4);
- return $self->loc('Fri.') if ($dow == 5);
- return $self->loc('Sat.') if ($dow == 6);
- return $self->loc('Sun.') if ($dow == 0);
-}
-
-# }}}
-
-# {{{ GetMonth
-=head2 GetMonth DAY
-
-Takes an integer month and returns a localized string for that month
-
-=cut
-
-sub GetMonth {
- my $self = shift;
- my $mon = shift;
-
- # We do this rather than an array so that we don't call localize 12x what we need to
- return $self->loc('Jan.') if ($mon == 0);
- return $self->loc('Feb.') if ($mon == 1);
- return $self->loc('Mar.') if ($mon == 2);
- return $self->loc('Apr.') if ($mon == 3);
- return $self->loc('May.') if ($mon == 4);
- return $self->loc('Jun.') if ($mon == 5);
- return $self->loc('Jul.') if ($mon == 6);
- return $self->loc('Aug.') if ($mon == 7);
- return $self->loc('Sep.') if ($mon == 8);
- return $self->loc('Oct.') if ($mon == 9);
- return $self->loc('Nov.') if ($mon == 10);
- return $self->loc('Dec.') if ($mon == 11);
-}
-
-# }}}
-
-# {{{ sub AddSeconds
-
-=head2 sub AddSeconds
-
-Takes a number of seconds as a string
-
-Returns the new time
-
-=cut
-
-sub AddSeconds {
- my $self = shift;
- my $delta = shift;
-
- $self->Set(Format => 'unix', Value => ($self->Unix + $delta));
-
- return ($self->Unix);
-
-
-}
-
-# }}}
-
-# {{{ sub AddDays
-
-=head2 AddDays $DAYS
-
-Adds 24 hours * $DAYS to the current time
-
-=cut
-
-sub AddDays {
- my $self = shift;
- my $days = shift;
- $self->AddSeconds($days * $DAY);
-
-}
-
-# }}}
-
-# {{{ sub AddDay
-
-=head2 AddDay
-
-Adds 24 hours to the current time
-
-=cut
-
-sub AddDay {
- my $self = shift;
- $self->AddSeconds($DAY);
-
-}
-
-# }}}
-
-# {{{ sub Unix
-
-=head2 sub Unix [unixtime]
-
-Optionally takes a date in unix seconds since the epoch format.
-Returns the number of seconds since the epoch
-
-=cut
-
-sub Unix {
- my $self = shift;
-
- $self->{'time'} = shift if (@_);
-
- return ($self->{'time'});
-}
-# }}}
-
-# {{{ sub ISO
-
-=head2 ISO
-
-Takes nothing
-
-Returns the object's date in ISO format
-
-=cut
-
-sub ISO {
- my $self=shift;
- my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst, $date) ;
-
- return ('1970-01-01 00:00:00') if ($self->Unix == -1);
-
- # 0 1 2 3 4 5 6 7 8
- ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($self->Unix);
- #make the year YYYY
- $year+=1900;
-
- #the month needs incrementing, as gmtime returns 0-11
- $mon++;
-
- $date = sprintf("%04d-%02d-%02d %02d:%02d:%02d", $year,$mon,$mday, $hour,$min,$sec);
-
- return ($date);
-}
-
-# }}}
-
-
-# {{{ sub LocalTimezone
-=head2 LocalTimezone
-
- Returns the current timezone. For now, draws off a system timezone, RT::Timezone. Eventually, this may
-pull from a 'Timezone' attribute of the CurrentUser
-
-=cut
-
-sub LocalTimezone {
- my $self = shift;
-
- return $self->CurrentUser->Timezone
- if $self->CurrentUser and $self->CurrentUser->can('Timezone');
-
- return ($RT::Timezone);
-}
-
-# }}}
-
-eval "require RT::Date_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Date_Vendor.pm});
-eval "require RT::Date_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Date_Local.pm});
-
-1;
diff --git a/rt/lib/RT/EmailParser.pm b/rt/lib/RT/EmailParser.pm
deleted file mode 100644
index 3a99e5a..0000000
--- a/rt/lib/RT/EmailParser.pm
+++ /dev/null
@@ -1,634 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::EmailParser;
-
-
-use base qw/RT::Base/;
-
-use strict;
-use Mail::Address;
-use MIME::Entity;
-use MIME::Head;
-use MIME::Parser;
-use File::Temp qw/tempdir/;
-
-=head1 NAME
-
- RT::EmailParser - helper functions for parsing parts from incoming
- email messages
-
-=head1 SYNOPSIS
-
-
-=head1 DESCRIPTION
-
-
-=begin testing
-
-ok(require RT::EmailParser);
-
-=end testing
-
-
-=head1 METHODS
-
-=head2 new
-
-Returns a new RT::EmailParser object
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- return $self;
-}
-
-
-# {{{ sub SmartParseMIMEEntityFromScalar
-
-=head2 SmartParseMIMEEntityFromScalar { Message => SCALAR_REF, Decode => BOOL }
-
-Parse a message stored in a scalar from scalar_ref
-
-=cut
-
-sub SmartParseMIMEEntityFromScalar {
- my $self = shift;
- my %args = ( Message => undef, Decode => 1, @_ );
-
- my ( $fh, $temp_file );
- eval {
-
- for ( 1 .. 10 ) {
-
- # on NFS and NTFS, it is possible that tempfile() conflicts
- # with other processes, causing a race condition. we try to
- # accommodate this by pausing and retrying.
- last
- if ( $fh, $temp_file ) =
- eval { File::Temp::tempfile( undef, UNLINK => 0 ) };
- sleep 1;
- }
- if ($fh) {
-
- #thank you, windows
- binmode $fh;
- $fh->autoflush(1);
- print $fh $args{'Message'};
- close($fh);
- if ( -f $temp_file ) {
-
- # We have to trust the temp file's name -- untaint it
- $temp_file =~ /(.*)/;
- $self->ParseMIMEEntityFromFile( $1, $args{'Decode'} );
- unlink($1);
- }
- }
- };
-
- #If for some reason we weren't able to parse the message using a temp file
- # try it with a scalar
- if ( $@ || !$self->Entity ) {
- $self->ParseMIMEEntityFromScalar( $args{'Message'}, $args{'Decode'} );
- }
-
-}
-
-# }}}
-
-# {{{ sub ParseMIMEEntityFromSTDIN
-
-=head2 ParseMIMEEntityFromSTDIN
-
-Parse a message from standard input
-
-=cut
-
-sub ParseMIMEEntityFromSTDIN {
- my $self = shift;
- my $postprocess = (@_ ? shift : 1);
- return $self->ParseMIMEEntityFromFileHandle(\*STDIN, $postprocess);
-}
-
-# }}}
-
-# {{{ ParseMIMEEntityFromScalar
-
-=head2 ParseMIMEEntityFromScalar $message
-
-Takes either a scalar or a reference to a scalr which contains a stringified MIME message.
-Parses it.
-
-Returns true if it wins.
-Returns false if it loses.
-
-=cut
-
-sub ParseMIMEEntityFromScalar {
- my $self = shift;
- my $message = shift;
- my $postprocess = (@_ ? shift : 1);
- $self->_ParseMIMEEntity($message,'parse_data', $postprocess);
-}
-
-# }}}
-
-# {{{ ParseMIMEEntityFromFilehandle *FH
-
-=head2 ParseMIMEEntityFromFilehandle *FH
-
-Parses a mime entity from a filehandle passed in as an argument
-
-=cut
-
-sub ParseMIMEEntityFromFileHandle {
- my $self = shift;
- my $filehandle = shift;
- my $postprocess = (@_ ? shift : 1);
- $self->_ParseMIMEEntity($filehandle,'parse', $postprocess);
-}
-
-# }}}
-
-# {{{ ParseMIMEEntityFromFile
-
-=head2 ParseMIMEEntityFromFile
-
-Parses a mime entity from a filename passed in as an argument
-
-=cut
-
-sub ParseMIMEEntityFromFile {
- my $self = shift;
- my $file = shift;
- my $postprocess = (@_ ? shift : 1);
- $self->_ParseMIMEEntity($file,'parse_open',$postprocess);
-}
-
-# }}}
-
-# {{{ _ParseMIMEEntity
-sub _ParseMIMEEntity {
- my $self = shift;
- my $message = shift;
- my $method = shift;
- my $postprocess = shift;
- # Create a new parser object:
-
- my $parser = MIME::Parser->new();
- $self->_SetupMIMEParser($parser);
-
-
- # TODO: XXX 3.0 we really need to wrap this in an eval { }
- unless ( $self->{'entity'} = $parser->$method($message) ) {
- $RT::Logger->crit("Couldn't parse MIME stream and extract the submessages");
- # Try again, this time without extracting nested messages
- $parser->extract_nested_messages(0);
- unless ( $self->{'entity'} = $parser->$method($message) ) {
- $RT::Logger->crit("couldn't parse MIME stream");
- return ( undef);
- }
- }
- if ($postprocess) {
- $self->_PostProcessNewEntity() ;
- }
-
-}
-
-# }}}
-
-# {{{ _PostProcessNewEntity
-
-=head2 _PostProcessNewEntity
-
-cleans up and postprocesses a newly parsed MIME Entity
-
-=cut
-
-sub _PostProcessNewEntity {
- my $self = shift;
-
- #Now we've got a parsed mime object.
-
- # Unfold headers that are have embedded newlines
- # Better do this before conversion or it will break
- # with multiline encoded Subject (RFC2047) (fsck.com #5594)
-
- $self->Head->unfold;
-
-
- # try to convert text parts into utf-8 charset
- RT::I18N::SetMIMEEntityToEncoding($self->{'entity'}, 'utf-8');
-
-
-
-
-}
-
-# }}}
-
-# {{{ sub ParseTicketId
-
-sub ParseTicketId {
- my $self = shift;
- $RT::Logger->warnings("RT::EmailParser->ParseTicketId deprecated. You should be using RT::Interface::Email");
-
- require RT::Interface::Email;
- RT::Interface::Email::ParseTicketId(@_);
-}
-
-# }}}
-
-
-
-# {{{ ParseCcAddressesFromHead
-
-=head2 ParseCcAddressesFromHead HASHREF
-
-Takes a hashref object containing QueueObj, Head and CurrentUser objects.
-Returns a list of all email addresses in the To and Cc
-headers b<except> the current Queue\'s email addresses, the CurrentUser\'s
-email address and anything that the $RTAddressRegexp matches.
-
-=cut
-
-sub ParseCcAddressesFromHead {
-
- my $self = shift;
-
- my %args = (
- QueueObj => undef,
- CurrentUser => undef,
- @_
- );
-
- my (@Addresses);
-
- my @ToObjs = Mail::Address->parse( $self->Head->get('To') );
- my @CcObjs = Mail::Address->parse( $self->Head->get('Cc') );
-
- foreach my $AddrObj ( @ToObjs, @CcObjs ) {
- my $Address = $AddrObj->address;
- my $user = RT::User->new($RT::SystemUser);
- $Address = $user->CanonicalizeEmailAddress($Address);
- next if ( lc $args{'CurrentUser'}->EmailAddress eq lc $Address );
- next if ( lc $args{'QueueObj'}->CorrespondAddress eq lc $Address );
- next if ( lc $args{'QueueObj'}->CommentAddress eq lc $Address );
- next if ( $self->IsRTAddress($Address) );
-
- push ( @Addresses, $Address );
- }
- return (@Addresses);
-}
-
-# }}}
-
-# {{{ ParseSenderAdddressFromHead
-
-=head2 ParseSenderAddressFromHead
-
-Takes a MIME::Header object. Returns a tuple: (user@host, friendly name)
-of the From (evaluated in order of Reply-To:, From:, Sender)
-
-=cut
-
-sub ParseSenderAddressFromHead {
- my $self = shift;
-
- #Figure out who's sending this message.
- my $From = $self->Head->get('Reply-To')
- || $self->Head->get('From')
- || $self->Head->get('Sender');
- return ( $self->ParseAddressFromHeader($From) );
-}
-
-# }}}
-
-# {{{ ParseErrorsToAdddressFromHead
-
-=head2 ParseErrorsToAddressFromHead
-
-Takes a MIME::Header object. Return a single value : user@host
-of the From (evaluated in order of Errors-To:,Reply-To:, From:, Sender)
-
-=cut
-
-sub ParseErrorsToAddressFromHead {
- my $self = shift;
-
- #Figure out who's sending this message.
-
- foreach my $header ( 'Errors-To', 'Reply-To', 'From', 'Sender' ) {
-
- # If there's a header of that name
- my $headerobj = $self->Head->get($header);
- if ($headerobj) {
- my ( $addr, $name ) = $self->ParseAddressFromHeader($headerobj);
-
- # If it's got actual useful content...
- return ($addr) if ($addr);
- }
- }
-}
-
-# }}}
-
-# {{{ ParseAddressFromHeader
-
-=head2 ParseAddressFromHeader ADDRESS
-
-Takes an address from $self->Head->get('Line') and returns a tuple: user@host, friendly name
-
-=cut
-
-sub ParseAddressFromHeader {
- my $self = shift;
- my $Addr = shift;
-
- # Perl 5.8.0 breaks when doing regex matches on utf8
- Encode::_utf8_off($Addr) if $] == 5.008;
- my @Addresses = Mail::Address->parse($Addr);
-
- my $AddrObj = $Addresses[0];
-
- unless ( ref($AddrObj) ) {
- return ( undef, undef );
- }
-
- my $Name = ( $AddrObj->phrase || $AddrObj->comment || $AddrObj->address );
-
- #Lets take the from and load a user object.
- my $Address = $AddrObj->address;
-
- return ( $Address, $Name );
-}
-
-# }}}
-
-# {{{ IsRTAddress
-
-=head2 IsRTaddress ADDRESS
-
-Takes a single parameter, an email address.
-Returns true if that address matches the $RTAddressRegexp.
-Returns false, otherwise.
-
-=begin testing
-
-is(RT::EmailParser::IsRTAddress("","rt\@example.com"),1, "Regexp matched rt address" );
-is(RT::EmailParser::IsRTAddress("","frt\@example.com"),undef, "Regexp didn't match non-rt address" );
-
-=end testing
-
-=cut
-
-sub IsRTAddress {
- my $self = shift;
- my $address = shift;
-
- # Example: the following rule would tell RT not to Cc
- # "tickets@noc.example.com"
- if ( defined($RT::RTAddressRegexp) &&
- $address =~ /$RT::RTAddressRegexp/ ) {
- return(1);
- } else {
- return (undef);
- }
-}
-
-# }}}
-
-
-# {{{ CullRTAddresses
-
-=head2 CullRTAddresses ARRAY
-
-Takes a single argument, an array of email addresses.
-Returns the same array with any IsRTAddress()es weeded out.
-
-=begin testing
-
-@before = ("rt\@example.com", "frt\@example.com");
-@after = ("frt\@example.com");
-ok(eq_array(RT::EmailParser::CullRTAddresses("",@before),@after), "CullRTAddresses only culls RT addresses");
-
-=end testing
-
-=cut
-
-sub CullRTAddresses {
- my $self = shift;
- my @addresses= (@_);
- my @addrlist;
-
- foreach my $addr( @addresses ) {
- # We use the class instead of the instance
- # because sloppy code calls this method
- # without a $self
- push (@addrlist, $addr) unless RT::EmailParser->IsRTAddress($addr);
- }
- return (@addrlist);
-}
-
-# }}}
-
-
-# {{{ LookupExternalUserInfo
-
-
-# LookupExternalUserInfo is a site-definable method for synchronizing
-# incoming users with an external data source.
-#
-# This routine takes a tuple of EmailAddress and FriendlyName
-# EmailAddress is the user's email address, ususally taken from
-# an email message's From: header.
-# FriendlyName is a freeform string, ususally taken from the "comment"
-# portion of an email message's From: header.
-#
-# If you define an AutoRejectRequest template, RT will use this
-# template for the rejection message.
-
-
-=head2 LookupExternalUserInfo
-
- LookupExternalUserInfo is a site-definable method for synchronizing
- incoming users with an external data source.
-
- This routine takes a tuple of EmailAddress and FriendlyName
- EmailAddress is the user's email address, ususally taken from
- an email message's From: header.
- FriendlyName is a freeform string, ususally taken from the "comment"
- portion of an email message's From: header.
-
- It returns (FoundInExternalDatabase, ParamHash);
-
- FoundInExternalDatabase must be set to 1 before return if the user
- was found in the external database.
-
- ParamHash is a Perl parameter hash which can contain at least the
- following fields. These fields are used to populate RT's users
- database when the user is created.
-
- EmailAddress is the email address that RT should use for this user.
- Name is the 'Name' attribute RT should use for this user.
- 'Name' is used for things like access control and user lookups.
- RealName is what RT should display as the user's name when displaying
- 'friendly' names
-
-=cut
-
-sub LookupExternalUserInfo {
- my $self = shift;
- my $EmailAddress = shift;
- my $RealName = shift;
-
- my $FoundInExternalDatabase = 1;
- my %params;
-
- #Name is the RT username you want to use for this user.
- $params{'Name'} = $EmailAddress;
- $params{'EmailAddress'} = $EmailAddress;
- $params{'RealName'} = $RealName;
-
- # See RT's contributed code for examples.
- # http://www.fsck.com/pub/rt/contrib/
- return ($FoundInExternalDatabase, %params);
-}
-
-# }}}
-
-# {{{ Accessor methods for parsed email messages
-
-=head2 Head
-
-Return the parsed head from this message
-
-=cut
-
-sub Head {
- my $self = shift;
- return $self->Entity->head;
-}
-
-=head2 Entity
-
-Return the parsed Entity from this message
-
-=cut
-
-sub Entity {
- my $self = shift;
- return $self->{'entity'};
-}
-
-# }}}
-
-# {{{ _SetupMIMEParser
-
-=head2 _SetupMIMEParser $parser
-
-A private instance method which sets up a mime parser to do its job
-
-=cut
-
-
- ## TODO: Does it make sense storing to disk at all? After all, we
- ## need to put each msg as an in-core scalar before saving it to
- ## the database, don't we?
-
- ## At the same time, we should make sure that we nuke attachments
- ## Over max size and return them
-
-sub _SetupMIMEParser {
- my $self = shift;
- my $parser = shift;
-
- # Set up output directory for files:
-
- my $tmpdir = File::Temp::tempdir( TMPDIR => 1, CLEANUP => 1 );
- push ( @{ $self->{'AttachmentDirs'} }, $tmpdir );
- $parser->output_dir($tmpdir);
- $parser->filer->ignore_filename(1);
-
- #If someone includes a message, extract it
- $parser->extract_nested_messages(1);
-
- $parser->extract_uuencode(1); ### default is false
-
- # Set up the prefix for files with auto-generated names:
- $parser->output_prefix("part");
-
- # do _not_ store each msg as in-core scalar;
-
- $parser->output_to_core(0);
-
- # From the MIME::Parser docs:
- # "Normally, tmpfiles are created when needed during parsing, and destroyed automatically when they go out of scope"
- # Turns out that the default is to recycle tempfiles
- # Temp files should never be recycled, especially when running under perl taint checking
-
- $parser->tmp_recycling(0);
-
-}
-
-# }}}
-
-sub DESTROY {
- my $self = shift;
- File::Path::rmtree([@{$self->{'AttachmentDirs'}}],0,1);
-}
-
-
-
-eval "require RT::EmailParser_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/EmailParser_Vendor.pm});
-eval "require RT::EmailParser_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/EmailParser_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Group.pm b/rt/lib/RT/Group.pm
deleted file mode 100755
index 4dcef3f..0000000
--- a/rt/lib/RT/Group.pm
+++ /dev/null
@@ -1,258 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Group
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Group;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Groups');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- varchar(64) 'Domain'.
- varchar(64) 'Type'.
- varchar(64) 'Instance'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- Domain => '',
- Type => '',
- Instance => '',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Description => $args{'Description'},
- Domain => $args{'Domain'},
- Type => $args{'Type'},
- Instance => $args{'Instance'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item Domain
-
-Returns the current value of Domain.
-(In the database, Domain is stored as varchar(64).)
-
-
-
-=item SetDomain VALUE
-
-
-Set Domain to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Domain will be stored as a varchar(64).)
-
-
-=cut
-
-
-=item Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(64).)
-
-
-
-=item SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(64).)
-
-
-=cut
-
-
-=item Instance
-
-Returns the current value of Instance.
-(In the database, Instance is stored as varchar(64).)
-
-
-
-=item SetInstance VALUE
-
-
-Set Instance to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Instance will be stored as a varchar(64).)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- Domain =>
- {read => 1, write => 1, type => 'varchar(64)', default => ''},
- Type =>
- {read => 1, write => 1, type => 'varchar(64)', default => ''},
- Instance =>
- {read => 1, write => 1, type => 'varchar(64)', default => ''},
-
- }
-};
-
-
- eval "require RT::Group_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Group_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Group_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Group_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Group_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Group_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Group_Overlay, RT::Group_Vendor, RT::Group_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/GroupMember.pm b/rt/lib/RT/GroupMember.pm
deleted file mode 100755
index 8de1a73..0000000
--- a/rt/lib/RT/GroupMember.pm
+++ /dev/null
@@ -1,189 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::GroupMember
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::GroupMember;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('GroupMembers');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'GroupId'.
- int(11) 'MemberId'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- GroupId => '0',
- MemberId => '0',
-
- @_);
- $self->SUPER::Create(
- GroupId => $args{'GroupId'},
- MemberId => $args{'MemberId'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item GroupId
-
-Returns the current value of GroupId.
-(In the database, GroupId is stored as int(11).)
-
-
-
-=item SetGroupId VALUE
-
-
-Set GroupId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, GroupId will be stored as a int(11).)
-
-
-=cut
-
-
-=item MemberId
-
-Returns the current value of MemberId.
-(In the database, MemberId is stored as int(11).)
-
-
-
-=item SetMemberId VALUE
-
-
-Set MemberId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, MemberId will be stored as a int(11).)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- GroupId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- MemberId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
-
- }
-};
-
-
- eval "require RT::GroupMember_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMember_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::GroupMember_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMember_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::GroupMember_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMember_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::GroupMember_Overlay, RT::GroupMember_Vendor, RT::GroupMember_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/GroupMember_Overlay.pm b/rt/lib/RT/GroupMember_Overlay.pm
deleted file mode 100644
index d824dc4..0000000
--- a/rt/lib/RT/GroupMember_Overlay.pm
+++ /dev/null
@@ -1,389 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::GroupMember - a member of an RT Group
-
-=head1 SYNOPSIS
-
-RT::GroupMember should never be called directly. It should ONLY
-only be accessed through the helper functions in RT::Group;
-
-If you're operating on an RT::GroupMember object yourself, you B<ARE>
-doing something wrong.
-
-=head1 DESCRIPTION
-
-
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::GroupMember);
-
-=end testing
-
-
-=cut
-
-
-package RT::GroupMember;
-
-use strict;
-no warnings qw(redefine);
-use RT::CachedGroupMembers;
-
-# {{{ sub Create
-
-=head2 Create { Group => undef, Member => undef }
-
-Add a Principal to the group Group.
-if the Principal is a group, automatically inserts all
-members of the principal into the cached members table recursively down.
-
-Both Group and Member are expected to be RT::Principal objects
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = (
- Group => undef,
- Member => undef,
- InsideTransaction => undef,
- @_
- );
-
- unless ($args{'Group'} &&
- UNIVERSAL::isa($args{'Group'}, 'RT::Principal') &&
- $args{'Group'}->Id ) {
-
- $RT::Logger->warning("GroupMember::Create called with a bogus Group arg");
- return (undef);
- }
-
- unless($args{'Group'}->IsGroup) {
- $RT::Logger->warning("Someone tried to add a member to a user instead of a group");
- return (undef);
- }
-
- unless ($args{'Member'} &&
- UNIVERSAL::isa($args{'Member'}, 'RT::Principal') &&
- $args{'Member'}->Id) {
- $RT::Logger->warning("GroupMember::Create called with a bogus Principal arg");
- return (undef);
- }
-
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
-
- $RT::Handle->BeginTransaction() unless ($args{'InsideTransaction'});
-
- # We really need to make sure we don't add any members to this group
- # that contain the group itself. that would, um, suck.
- # (and recurse infinitely) Later, we can add code to check this in the
- # cache and bail so we can support cycling directed graphs
-
- if ($args{'Member'}->IsGroup) {
- my $member_object = $args{'Member'}->Object;
- if ($member_object->HasMemberRecursively($args{'Group'})) {
- $RT::Logger->debug("Adding that group would create a loop");
- return(undef);
- }
- elsif ( $args{'Member'}->Id == $args{'Group'}->Id) {
- $RT::Logger->debug("Can't add a group to itself");
- return(undef);
- }
- }
-
-
- my $id = $self->SUPER::Create(
- GroupId => $args{'Group'}->Id,
- MemberId => $args{'Member'}->Id
- );
-
- unless ($id) {
- $RT::Handle->Rollback() unless ($args{'InsideTransaction'});
- return (undef);
- }
-
- my $cached_member = RT::CachedGroupMember->new( $self->CurrentUser );
- my $cached_id = $cached_member->Create(
- Member => $args{'Member'},
- Group => $args{'Group'},
- ImmediateParent => $args{'Group'},
- Via => '0'
- );
-
-
- #When adding a member to a group, we need to go back
- #and popuplate the CachedGroupMembers of all the groups that group is part of .
-
- my $cgm = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- # find things which have the current group as a member.
- # $group is an RT::Principal for the group.
- $cgm->LimitToGroupsWithMember( $args{'Group'}->Id );
-
- while ( my $parent_member = $cgm->Next ) {
- my $parent_id = $parent_member->MemberId;
- my $via = $parent_member->Id;
- my $group_id = $parent_member->GroupId;
-
- my $other_cached_member =
- RT::CachedGroupMember->new( $self->CurrentUser );
- my $other_cached_id = $other_cached_member->Create(
- Member => $args{'Member'},
- Group => $parent_member->GroupObj,
- ImmediateParent => $parent_member->MemberObj,
- Via => $parent_member->Id
- );
- unless ($other_cached_id) {
- $RT::Logger->err( "Couldn't add " . $args{'Member'}
- . " as a submember of a supergroup" );
- $RT::Handle->Rollback() unless ($args{'InsideTransaction'});
- return (undef);
- }
- }
-
- unless ($cached_id) {
- $RT::Handle->Rollback() unless ($args{'InsideTransaction'});
- return (undef);
- }
-
- $RT::Handle->Commit() unless ($args{'InsideTransaction'});
-
- return ($id);
-}
-
-# }}}
-
-# {{{ sub _StashUser
-
-=head2 _StashUser PRINCIPAL
-
-Create { Group => undef, Member => undef }
-
-Creates an entry in the groupmembers table, which lists a user
-as a member of himself. This makes ACL checks a whole bunch easier.
-This happens once on user create and never ever gets yanked out.
-
-PRINCIPAL is expected to be an RT::Principal object for a user
-
-This routine expects to be called inside a transaction by RT::User->Create
-
-=cut
-
-sub _StashUser {
- my $self = shift;
- my %args = (
- Group => undef,
- Member => undef,
- @_
- );
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
-
-
- # We really need to make sure we don't add any members to this group
- # that contain the group itself. that would, um, suck.
- # (and recurse infinitely) Later, we can add code to check this in the
- # cache and bail so we can support cycling directed graphs
-
- my $id = $self->SUPER::Create(
- GroupId => $args{'Group'}->Id,
- MemberId => $args{'Member'}->Id,
- );
-
- unless ($id) {
- return (undef);
- }
-
- my $cached_member = RT::CachedGroupMember->new( $self->CurrentUser );
- my $cached_id = $cached_member->Create(
- Member => $args{'Member'},
- Group => $args{'Group'},
- ImmediateParent => $args{'Group'},
- Via => '0'
- );
-
- unless ($cached_id) {
- return (undef);
- }
-
- return ($id);
-}
-
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete
-
-Takes no arguments. deletes the currently loaded member from the
-group in question.
-
-Expects to be called _outside_ a transaction
-
-=cut
-
-sub Delete {
- my $self = shift;
-
-
- $RT::Handle->BeginTransaction();
-
- # Find all occurrences of this member as a member of this group
- # in the cache and nuke them, recursively.
-
- # The following code will delete all Cached Group members
- # where this member's group is _not_ the primary group
- # (Ie if we're deleting C as a member of B, and B happens to be
- # a member of A, will delete C as a member of A without touching
- # C as a member of B
-
- my $cached_submembers = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- $cached_submembers->Limit(
- FIELD => 'MemberId',
- OPERATOR => '=',
- VALUE => $self->MemberObj->Id
- );
-
- $cached_submembers->Limit(
- FIELD => 'ImmediateParentId',
- OPERATOR => '=',
- VALUE => $self->GroupObj->Id
- );
-
-
-
-
-
- while ( my $item_to_del = $cached_submembers->Next() ) {
- my $del_err = $item_to_del->Delete();
- unless ($del_err) {
- $RT::Handle->Rollback();
- $RT::Logger->warning("Couldn't delete cached group submember ".$item_to_del->Id);
- return (undef);
- }
- }
-
- my ($err, $msg) = $self->SUPER::Delete();
- unless ($err) {
- $RT::Logger->warning("Couldn't delete cached group submember ".$self->Id);
- $RT::Handle->Rollback();
- return (undef);
- }
-
- # Since this deletion may have changed the former member's
- # delegation rights, we need to ensure that no invalid delegations
- # remain.
- $err = $self->MemberObj->_CleanupInvalidDelegations(InsideTransaction => 1);
- unless ($err) {
- $RT::Logger->warning("Unable to revoke delegated rights for principal ".$self->Id);
- $RT::Handle->Rollback();
- return (undef);
- }
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
-
- $RT::Handle->Commit();
- return ($err);
-
-}
-
-# }}}
-
-# {{{ sub MemberObj
-
-=head2 MemberObj
-
-Returns an RT::Principal object for the Principal specified by $self->PrincipalId
-
-=cut
-
-sub MemberObj {
- my $self = shift;
- unless ( defined( $self->{'Member_obj'} ) ) {
- $self->{'Member_obj'} = RT::Principal->new( $self->CurrentUser );
- $self->{'Member_obj'}->Load( $self->MemberId ) if ($self->MemberId);
- }
- return ( $self->{'Member_obj'} );
-}
-
-# }}}
-
-# {{{ sub GroupObj
-
-=head2 GroupObj
-
-Returns an RT::Principal object for the Group specified in $self->GroupId
-
-=cut
-
-sub GroupObj {
- my $self = shift;
- unless ( defined( $self->{'Group_obj'} ) ) {
- $self->{'Group_obj'} = RT::Principal->new( $self->CurrentUser );
- $self->{'Group_obj'}->Load( $self->GroupId );
- }
- return ( $self->{'Group_obj'} );
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/GroupMembers.pm b/rt/lib/RT/GroupMembers.pm
deleted file mode 100755
index 31cb953..0000000
--- a/rt/lib/RT/GroupMembers.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::GroupMembers -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::GroupMembers
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::GroupMembers;
-
-use RT::SearchBuilder;
-use RT::GroupMember;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'GroupMembers';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::GroupMember item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::GroupMember->new($self->CurrentUser));
-}
-
- eval "require RT::GroupMembers_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMembers_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::GroupMembers_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMembers_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::GroupMembers_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/GroupMembers_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::GroupMembers_Overlay, RT::GroupMembers_Vendor, RT::GroupMembers_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/GroupMembers_Overlay.pm b/rt/lib/RT/GroupMembers_Overlay.pm
deleted file mode 100644
index 1b6f931..0000000
--- a/rt/lib/RT/GroupMembers_Overlay.pm
+++ /dev/null
@@ -1,152 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::GroupMembers - a collection of RT::GroupMember objects
-
-=head1 SYNOPSIS
-
- use RT::GroupMembers;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::GroupMembers);
-
-=end testing
-
-=cut
-
-
-package RT::GroupMembers;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ LimitToUsers
-
-=head2 LimitToUsers
-
-Limits this search object to users who are members of this group.
-This is really useful when you want to have your UI separate out
-groups from users for display purposes
-
-=cut
-
-sub LimitToUsers {
- my $self = shift;
-
- my $principals = $self->NewAlias('Principals');
- $self->Join( ALIAS1 => 'main', FIELD1 => 'MemberId',
- ALIAS2 => $principals, FIELD2 =>'id');
-
- $self->Limit( ALIAS => $principals,
- FIELD => 'PrincipalType',
- VALUE => 'User',
- ENTRYAGGREGATOR => 'OR',
- );
-}
-
-# }}}
-
-
-# {{{ LimitToGroups
-
-=head2 LimitToGroups
-
-Limits this search object to Groups who are members of this group.
-This is really useful when you want to have your UI separate out
-groups from users for display purposes
-
-=cut
-
-sub LimitToGroups {
- my $self = shift;
-
- my $principals = $self->NewAlias('Principals');
- $self->Join( ALIAS1 => 'main', FIELD1 => 'MemberId',
- ALIAS2 => $principals, FIELD2 =>'id');
-
- $self->Limit( ALIAS => $principals,
- FIELD => 'PrincipalType',
- VALUE => 'Group',
- ENTRYAGGREGATOR => 'OR',
- );
-}
-
-# }}}
-
-# {{{ sub LimitToMembersOfGroup
-
-=head2 LimitToMembersOfGroup PRINCIPAL_ID
-
-Takes a Principal Id as its only argument.
-Limits the current search principals which are _directly_ members
-of the group which has PRINCIPAL_ID as its principal id.
-
-=cut
-
-sub LimitToMembersOfGroup {
- my $self = shift;
- my $group = shift;
-
- return ($self->Limit(
- VALUE => $group,
- FIELD => 'GroupId',
- ENTRYAGGREGATOR => 'OR',
- QUOTEVALUE => 0
- ));
-
-}
-# }}}
-
-1;
diff --git a/rt/lib/RT/Group_Overlay.pm b/rt/lib/RT/Group_Overlay.pm
deleted file mode 100644
index 41cf497..0000000
--- a/rt/lib/RT/Group_Overlay.pm
+++ /dev/null
@@ -1,1381 +0,0 @@
-
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Released under the terms of version 2 of the GNU Public License
-
-=head1 NAME
-
- RT::Group - RT\'s group object
-
-=head1 SYNOPSIS
-
-use RT::Group;
-my $group = new RT::Group($CurrentUser);
-
-=head1 DESCRIPTION
-
-An RT group object.
-
-=head1 METHODS
-
-
-=begin testing
-
-# {{{ Tests
-ok (require RT::Group);
-
-ok (my $group = RT::Group->new($RT::SystemUser), "instantiated a group object");
-ok (my ($id, $msg) = $group->CreateUserDefinedGroup( Name => 'TestGroup', Description => 'A test group',
- ), 'Created a new group');
-ok ($id != 0, "Group id is $id");
-ok ($group->Name eq 'TestGroup', "The group's name is 'TestGroup'");
-my $ng = RT::Group->new($RT::SystemUser);
-
-ok($ng->LoadUserDefinedGroup('TestGroup'), "Loaded testgroup");
-ok(($ng->id == $group->id), "Loaded the right group");
-
-
-ok (($id,$msg) = $ng->AddMember('1'), "Added a member to the group");
-ok($id, $msg);
-ok (($id,$msg) = $ng->AddMember('2' ), "Added a member to the group");
-ok($id, $msg);
-ok (($id,$msg) = $ng->AddMember('3' ), "Added a member to the group");
-ok($id, $msg);
-
-# Group 1 now has members 1, 2 ,3
-
-my $group_2 = RT::Group->new($RT::SystemUser);
-ok (my ($id_2, $msg_2) = $group_2->CreateUserDefinedGroup( Name => 'TestGroup2', Description => 'A second test group'), , 'Created a new group');
-ok ($id_2 != 0, "Created group 2 ok- $msg_2 ");
-ok (($id,$msg) = $group_2->AddMember($ng->PrincipalId), "Made TestGroup a member of testgroup2");
-ok($id, $msg);
-ok (($id,$msg) = $group_2->AddMember('1' ), "Added member RT_System to the group TestGroup2");
-ok($id, $msg);
-
-# Group 2 how has 1, g1->{1, 2,3}
-
-my $group_3 = RT::Group->new($RT::SystemUser);
-ok (($id_3, $msg) = $group_3->CreateUserDefinedGroup( Name => 'TestGroup3', Description => 'A second test group'), 'Created a new group');
-ok ($id_3 != 0, "Created group 3 ok - $msg");
-ok (($id,$msg) =$group_3->AddMember($group_2->PrincipalId), "Made TestGroup a member of testgroup2");
-ok($id, $msg);
-
-# g3 now has g2->{1, g1->{1,2,3}}
-
-my $principal_1 = RT::Principal->new($RT::SystemUser);
-$principal_1->Load('1');
-
-my $principal_2 = RT::Principal->new($RT::SystemUser);
-$principal_2->Load('2');
-
-ok (($id,$msg) = $group_3->AddMember('1' ), "Added member RT_System to the group TestGroup2");
-ok($id, $msg);
-
-# g3 now has 1, g2->{1, g1->{1,2,3}}
-
-ok($group_3->HasMember($principal_2) == undef, "group 3 doesn't have member 2");
-ok($group_3->HasMemberRecursively($principal_2), "group 3 has member 2 recursively");
-ok($ng->HasMember($principal_2) , "group ".$ng->Id." has member 2");
-my ($delid , $delmsg) =$ng->DeleteMember($principal_2->Id);
-ok ($delid !=0, "Sucessfully deleted it-".$delid."-".$delmsg);
-
-#Gotta reload the group objects, since we've been messing with various internals.
-# we shouldn't need to do this.
-#$ng->LoadUserDefinedGroup('TestGroup');
-#$group_2->LoadUserDefinedGroup('TestGroup2');
-#$group_3->LoadUserDefinedGroup('TestGroup');
-
-# G1 now has 1, 3
-# Group 2 how has 1, g1->{1, 3}
-# g3 now has 1, g2->{1, g1->{1, 3}}
-
-ok(!$ng->HasMember($principal_2) , "group ".$ng->Id." no longer has member 2");
-ok($group_3->HasMemberRecursively($principal_2) == undef, "group 3 doesn't have member 2");
-ok($group_2->HasMemberRecursively($principal_2) == undef, "group 2 doesn't have member 2");
-ok($ng->HasMember($principal_2) == undef, "group 1 doesn't have member 2");;
-ok($group_3->HasMemberRecursively($principal_2) == undef, "group 3 has member 2 recursively");
-
-# }}}
-
-=end testing
-
-
-
-=cut
-
-
-package RT::Group;
-
-use strict;
-no warnings qw(redefine);
-
-use RT::Users;
-use RT::GroupMembers;
-use RT::Principals;
-use RT::ACL;
-
-use vars qw/$RIGHTS/;
-
-$RIGHTS = {
- AdminGroup => 'Modify group metadata or delete group', # loc_pair
- AdminGroupMembership =>
- 'Modify membership roster for this group', # loc_pair
- ModifyOwnMembership => 'Join or leave this group', # loc_pair
- EditSavedSearches => 'Edit saved searches for this group', # loc_pair
- ShowSavedSearches => 'Display saved searches for this group', # loc_pair
- SeeGroup => 'Make this group visible to user', # loc_pair
-};
-
-# Tell RT::ACE that this sort of object can get acls granted
-$RT::ACE::OBJECT_TYPES{'RT::Group'} = 1;
-
-
-#
-
-# TODO: This should be refactored out into an RT::ACLedObject or something
-# stuff the rights into a hash of rights that can exist.
-
-foreach my $right ( keys %{$RIGHTS} ) {
- $RT::ACE::LOWERCASERIGHTNAMES{ lc $right } = $right;
-}
-
-
-=head2 AvailableRights
-
-Returns a hash of available rights for this object. The keys are the right names and the values are a description of what the rights do
-
-=cut
-
-sub AvailableRights {
- my $self = shift;
- return($RIGHTS);
-}
-
-
-# {{{ sub SelfDescription
-
-=head2 SelfDescription
-
-Returns a user-readable description of what this group is for and what it's named.
-
-=cut
-
-sub SelfDescription {
- my $self = shift;
- if ($self->Domain eq 'ACLEquivalence') {
- my $user = RT::Principal->new($self->CurrentUser);
- $user->Load($self->Instance);
- return $self->loc("user [_1]",$user->Object->Name);
- }
- elsif ($self->Domain eq 'UserDefined') {
- return $self->loc("group '[_1]'",$self->Name);
- }
- elsif ($self->Domain eq 'Personal') {
- my $user = RT::User->new($self->CurrentUser);
- $user->Load($self->Instance);
- return $self->loc("personal group '[_1]' for user '[_2]'",$self->Name, $user->Name);
- }
- elsif ($self->Domain eq 'RT::System-Role') {
- return $self->loc("system [_1]",$self->Type);
- }
- elsif ($self->Domain eq 'RT::Queue-Role') {
- my $queue = RT::Queue->new($self->CurrentUser);
- $queue->Load($self->Instance);
- return $self->loc("queue [_1] [_2]",$queue->Name, $self->Type);
- }
- elsif ($self->Domain eq 'RT::Ticket-Role') {
- return $self->loc("ticket #[_1] [_2]",$self->Instance, $self->Type);
- }
- elsif ($self->Domain eq 'SystemInternal') {
- return $self->loc("system group '[_1]'",$self->Type);
- }
- else {
- return $self->loc("undescribed group [_1]",$self->Id);
- }
-}
-
-# }}}
-
-# {{{ sub Load
-
-=head2 Load ID
-
-Load a group object from the database. Takes a single argument.
-If the argument is numerical, load by the column 'id'. Otherwise,
-complain and return.
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift || return undef;
-
- #if it's an int, load by id. otherwise, load by name.
- if ( $identifier !~ /\D/ ) {
- $self->SUPER::LoadById($identifier);
- }
- else {
- $RT::Logger->crit("Group -> Load called with a bogus argument");
- return undef;
- }
-}
-
-# }}}
-
-# {{{ sub LoadUserDefinedGroup
-
-=head2 LoadUserDefinedGroup NAME
-
-Loads a system group from the database. The only argument is
-the group's name.
-
-
-=cut
-
-sub LoadUserDefinedGroup {
- my $self = shift;
- my $identifier = shift;
-
- $self->LoadByCols( "Domain" => 'UserDefined',
- "Name" => $identifier );
-}
-
-# }}}
-
-# {{{ sub LoadACLEquivalenceGroup
-
-=head2 LoadACLEquivalenceGroup PRINCIPAL
-
-Loads a user's acl equivalence group. Takes a principal object.
-ACL equivalnce groups are used to simplify the acl system. Each user
-has one group that only he is a member of. Rights granted to the user
-are actually granted to that group. This greatly simplifies ACL checks.
-While this results in a somewhat more complex setup when creating users
-and granting ACLs, it _greatly_ simplifies acl checks.
-
-
-
-=cut
-
-sub LoadACLEquivalenceGroup {
- my $self = shift;
- my $princ = shift;
-
- $self->LoadByCols( "Domain" => 'ACLEquivalence',
- "Type" => 'UserEquiv',
- "Instance" => $princ->Id);
-}
-
-# }}}
-
-# {{{ sub LoadPersonalGroup
-
-=head2 LoadPersonalGroup {Name => NAME, User => USERID}
-
-Loads a personal group from the database.
-
-=cut
-
-sub LoadPersonalGroup {
- my $self = shift;
- my %args = ( Name => undef,
- User => undef,
- @_);
-
- $self->LoadByCols( "Domain" => 'Personal',
- "Instance" => $args{'User'},
- "Type" => '',
- "Name" => $args{'Name'} );
-}
-
-# }}}
-
-# {{{ sub LoadSystemInternalGroup
-
-=head2 LoadSystemInternalGroup NAME
-
-Loads a Pseudo group from the database. The only argument is
-the group's name.
-
-
-=cut
-
-sub LoadSystemInternalGroup {
- my $self = shift;
- my $identifier = shift;
-
- $self->LoadByCols( "Domain" => 'SystemInternal',
- "Type" => $identifier );
-}
-
-# }}}
-
-# {{{ sub LoadTicketRoleGroup
-
-=head2 LoadTicketRoleGroup { Ticket => TICKET_ID, Type => TYPE }
-
-Loads a ticket group from the database.
-
-Takes a param hash with 2 parameters:
-
- Ticket is the TicketId we're curious about
- Type is the type of Group we're trying to load:
- Requestor, Cc, AdminCc, Owner
-
-=cut
-
-sub LoadTicketRoleGroup {
- my $self = shift;
- my %args = (Ticket => '0',
- Type => undef,
- @_);
- $self->LoadByCols( Domain => 'RT::Ticket-Role',
- Instance =>$args{'Ticket'},
- Type => $args{'Type'}
- );
-}
-
-# }}}
-
-# {{{ sub LoadQueueRoleGroup
-
-=head2 LoadQueueRoleGroup { Queue => Queue_ID, Type => TYPE }
-
-Loads a Queue group from the database.
-
-Takes a param hash with 2 parameters:
-
- Queue is the QueueId we're curious about
- Type is the type of Group we're trying to load:
- Requestor, Cc, AdminCc, Owner
-
-=cut
-
-sub LoadQueueRoleGroup {
- my $self = shift;
- my %args = (Queue => undef,
- Type => undef,
- @_);
- $self->LoadByCols( Domain => 'RT::Queue-Role',
- Instance =>$args{'Queue'},
- Type => $args{'Type'}
- );
-}
-
-# }}}
-
-# {{{ sub LoadSystemRoleGroup
-
-=head2 LoadSystemRoleGroup Type
-
-Loads a System group from the database.
-
-Takes a single param: Type
-
- Type is the type of Group we're trying to load:
- Requestor, Cc, AdminCc, Owner
-
-=cut
-
-sub LoadSystemRoleGroup {
- my $self = shift;
- my $type = shift;
- $self->LoadByCols( Domain => 'RT::System-Role',
- Type => $type
- );
-}
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create
-
-You need to specify what sort of group you're creating by calling one of the other
-Create_____ routines.
-
-=cut
-
-sub Create {
- my $self = shift;
- $RT::Logger->crit("Someone called RT::Group->Create. this method does not exist. someone's being evil");
- return(0,$self->loc('Permission Denied'));
-}
-
-# }}}
-
-# {{{ sub _Create
-
-=head2 _Create
-
-Takes a paramhash with named arguments: Name, Description.
-
-Returns a tuple of (Id, Message). If id is 0, the create failed
-
-=cut
-
-sub _Create {
- my $self = shift;
- my %args = (
- Name => undef,
- Description => undef,
- Domain => undef,
- Type => undef,
- Instance => '0',
- InsideTransaction => undef,
- _RecordTransaction => 1,
- @_
- );
-
- $RT::Handle->BeginTransaction() unless ($args{'InsideTransaction'});
- # Groups deal with principal ids, rather than user ids.
- # When creating this group, set up a principal Id for it.
- my $principal = RT::Principal->new( $self->CurrentUser );
- my $principal_id = $principal->Create(
- PrincipalType => 'Group',
- ObjectId => '0'
- );
- $principal->__Set(Field => 'ObjectId', Value => $principal_id);
-
-
- $self->SUPER::Create(
- id => $principal_id,
- Name => $args{'Name'},
- Description => $args{'Description'},
- Type => $args{'Type'},
- Domain => $args{'Domain'},
- Instance => ($args{'Instance'} || '0')
- );
- my $id = $self->Id;
- unless ($id) {
- return ( 0, $self->loc('Could not create group') );
- }
-
- # If we couldn't create a principal Id, get the fuck out.
- unless ($principal_id) {
- $RT::Handle->Rollback() unless ($args{'InsideTransaction'});
- $self->crit( "Couldn't create a Principal on new user create. Strange things are afoot at the circle K" );
- return ( 0, $self->loc('Could not create group') );
- }
-
- # Now we make the group a member of itself as a cached group member
- # this needs to exist so that group ACL checks don't fall over.
- # you're checking CachedGroupMembers to see if the principal in question
- # is a member of the principal the rights have been granted too
-
- # in the ordinary case, this would fail badly because it would recurse and add all the members of this group as
- # cached members. thankfully, we're creating the group now...so it has no members.
- my $cgm = RT::CachedGroupMember->new($self->CurrentUser);
- $cgm->Create(Group =>$self->PrincipalObj, Member => $self->PrincipalObj, ImmediateParent => $self->PrincipalObj);
-
-
- if ( $args{'_RecordTransaction'} ) {
- $self->_NewTransaction( Type => "Create" );
- }
-
- $RT::Handle->Commit() unless ($args{'InsideTransaction'});
-
- return ( $id, $self->loc("Group created") );
-}
-
-# }}}
-
-# {{{ CreateUserDefinedGroup
-
-=head2 CreateUserDefinedGroup { Name => "name", Description => "Description"}
-
-A helper subroutine which creates a system group
-
-Returns a tuple of (Id, Message). If id is 0, the create failed
-
-=cut
-
-sub CreateUserDefinedGroup {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('AdminGroup') ) {
- $RT::Logger->warning( $self->CurrentUser->Name
- . " Tried to create a group without permission." );
- return ( 0, $self->loc('Permission Denied') );
- }
-
- return($self->_Create( Domain => 'UserDefined', Type => '', Instance => '', @_));
-}
-
-# }}}
-
-# {{{ _CreateACLEquivalenceGroup
-
-=head2 _CreateACLEquivalenceGroup { Principal }
-
-A helper subroutine which creates a group containing only
-an individual user. This gets used by the ACL system to check rights.
-Yes, it denormalizes the data, but that's ok, as we totally win on performance.
-
-Returns a tuple of (Id, Message). If id is 0, the create failed
-
-=cut
-
-sub _CreateACLEquivalenceGroup {
- my $self = shift;
- my $princ = shift;
-
- my $id = $self->_Create( Domain => 'ACLEquivalence',
- Type => 'UserEquiv',
- Name => 'User '. $princ->Object->Id,
- Description => 'ACL equiv. for user '.$princ->Object->Id,
- Instance => $princ->Id,
- InsideTransaction => 1);
- unless ($id) {
- $RT::Logger->crit("Couldn't create ACL equivalence group");
- return undef;
- }
-
- # We use stashuser so we don't get transactions inside transactions
- # and so we bypass all sorts of cruft we don't need
- my $aclstash = RT::GroupMember->new($self->CurrentUser);
- my ($stash_id, $add_msg) = $aclstash->_StashUser(Group => $self->PrincipalObj,
- Member => $princ);
-
- unless ($stash_id) {
- $RT::Logger->crit("Couldn't add the user to his own acl equivalence group:".$add_msg);
- # We call super delete so we don't get acl checked.
- $self->SUPER::Delete();
- return(undef);
- }
- return ($id);
-}
-
-# }}}
-
-# {{{ CreatePersonalGroup
-
-=head2 CreatePersonalGroup { PrincipalId => PRINCIPAL_ID, Name => "name", Description => "Description"}
-
-A helper subroutine which creates a personal group. Generally,
-personal groups are used for ACL delegation and adding to ticket roles
-PrincipalId defaults to the current user's principal id.
-
-Returns a tuple of (Id, Message). If id is 0, the create failed
-
-=cut
-
-sub CreatePersonalGroup {
- my $self = shift;
- my %args = (
- Name => undef,
- Description => undef,
- PrincipalId => $self->CurrentUser->PrincipalId,
- @_
- );
-
- if ( $self->CurrentUser->PrincipalId == $args{'PrincipalId'} ) {
-
- unless ( $self->CurrentUserHasRight('AdminOwnPersonalGroups') ) {
- $RT::Logger->warning( $self->CurrentUser->Name
- . " Tried to create a group without permission." );
- return ( 0, $self->loc('Permission Denied') );
- }
-
- }
- else {
- unless ( $self->CurrentUserHasRight('AdminAllPersonalGroups') ) {
- $RT::Logger->warning( $self->CurrentUser->Name
- . " Tried to create a group without permission." );
- return ( 0, $self->loc('Permission Denied') );
- }
-
- }
-
- return (
- $self->_Create(
- Domain => 'Personal',
- Type => '',
- Instance => $args{'PrincipalId'},
- Name => $args{'Name'},
- Description => $args{'Description'}
- )
- );
-}
-
-# }}}
-
-# {{{ CreateRoleGroup
-
-=head2 CreateRoleGroup { Domain => DOMAIN, Type => TYPE, Instance => ID }
-
-A helper subroutine which creates a ticket group. (What RT 2.0 called Ticket watchers)
-Type is one of ( "Requestor" || "Cc" || "AdminCc" || "Owner")
-Domain is one of (RT::Ticket-Role || RT::Queue-Role || RT::System-Role)
-Instance is the id of the ticket or queue in question
-
-This routine expects to be called from {Ticket||Queue}->CreateTicketGroups _inside of a transaction_
-
-Returns a tuple of (Id, Message). If id is 0, the create failed
-
-=cut
-
-sub CreateRoleGroup {
- my $self = shift;
- my %args = ( Instance => undef,
- Type => undef,
- Domain => undef,
- @_ );
- unless ( $args{'Type'} =~ /^(?:Cc|AdminCc|Requestor|Owner)$/ ) {
- return ( 0, $self->loc("Invalid Group Type") );
- }
-
-
- return ( $self->_Create( Domain => $args{'Domain'},
- Instance => $args{'Instance'},
- Type => $args{'Type'},
- InsideTransaction => 1 ) );
-}
-
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete
-
-Delete this object
-
-=cut
-
-sub Delete {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('AdminGroup') ) {
- return ( 0, 'Permission Denied' );
- }
-
- $RT::Logger->crit("Deleting groups violates referential integrity until we go through and fix this");
- # TODO XXX
-
- # Remove the principal object
- # Remove this group from anything it's a member of.
- # Remove all cached members of this group
- # Remove any rights granted to this group
- # remove any rights delegated by way of this group
-
- return ( $self->SUPER::Delete(@_) );
-}
-
-# }}}
-
-=head2 SetDisabled BOOL
-
-If passed a positive value, this group will be disabled. No rights it commutes or grants will be honored.
-It will not appear in most group listings.
-
-This routine finds all the cached group members that are members of this group (recursively) and disables them.
-
-=cut
-
- # }}}
-
- sub SetDisabled {
- my $self = shift;
- my $val = shift;
- if ($self->Domain eq 'Personal') {
- if ($self->CurrentUser->PrincipalId == $self->Instance) {
- unless ( $self->CurrentUserHasRight('AdminOwnPersonalGroups')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- } else {
- unless ( $self->CurrentUserHasRight('AdminAllPersonalGroups') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- }
- else {
- unless ( $self->CurrentUserHasRight('AdminGroup') ) {
- return (0, $self->loc('Permission Denied'));
- }
- }
- $RT::Handle->BeginTransaction();
- $self->PrincipalObj->SetDisabled($val);
-
-
-
-
- # Find all occurrences of this member as a member of this group
- # in the cache and nuke them, recursively.
-
- # The following code will delete all Cached Group members
- # where this member's group is _not_ the primary group
- # (Ie if we're deleting C as a member of B, and B happens to be
- # a member of A, will delete C as a member of A without touching
- # C as a member of B
-
- my $cached_submembers = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- $cached_submembers->Limit( FIELD => 'ImmediateParentId', OPERATOR => '=', VALUE => $self->Id);
-
- #Clear the key cache. TODO someday we may want to just clear a little bit of the keycache space.
- # TODO what about the groups key cache?
- RT::Principal->InvalidateACLCache();
-
-
-
- while ( my $item = $cached_submembers->Next() ) {
- my $del_err = $item->SetDisabled($val);
- unless ($del_err) {
- $RT::Handle->Rollback();
- $RT::Logger->warning("Couldn't disable cached group submember ".$item->Id);
- return (undef);
- }
- }
-
- $RT::Handle->Commit();
- return (1, $self->loc("Succeeded"));
-
-}
-
-# }}}
-
-
-
-sub Disabled {
- my $self = shift;
- $self->PrincipalObj->Disabled(@_);
-}
-
-
-# {{{ DeepMembersObj
-
-=head2 DeepMembersObj
-
-Returns an RT::CachedGroupMembers object of this group's members,
-including all members of subgroups.
-
-=cut
-
-sub DeepMembersObj {
- my $self = shift;
- my $members_obj = RT::CachedGroupMembers->new( $self->CurrentUser );
-
- #If we don't have rights, don't include any results
- # TODO XXX WHY IS THERE NO ACL CHECK HERE?
- $members_obj->LimitToMembersOfGroup( $self->PrincipalId );
-
- return ( $members_obj );
-
-}
-
-# }}}
-
-# {{{ UserMembersObj
-
-=head2 UserMembersObj
-
-Returns an RT::Users object of this group's members, including
-all members of subgroups
-
-=cut
-
-sub UserMembersObj {
- my $self = shift;
-
- my $users = RT::Users->new($self->CurrentUser);
-
- #If we don't have rights, don't include any results
- # TODO XXX WHY IS THERE NO ACL CHECK HERE?
-
- my $cached_members = $users->NewAlias('CachedGroupMembers');
- $users->Join(ALIAS1 => $cached_members, FIELD1 => 'MemberId',
- ALIAS2 => $users->PrincipalsAlias, FIELD2 => 'id');
- $users->Limit(ALIAS => $cached_members,
- FIELD => 'GroupId',
- OPERATOR => '=',
- VALUE => $self->PrincipalId);
-
- return ( $users);
-
-}
-
-# }}}
-
-# {{{ MembersObj
-
-=head2 MembersObj
-
-Returns an RT::GroupMembers object of this group's direct members.
-
-=cut
-
-sub MembersObj {
- my $self = shift;
- my $members_obj = RT::GroupMembers->new( $self->CurrentUser );
-
- #If we don't have rights, don't include any results
- # TODO XXX WHY IS THERE NO ACL CHECK HERE?
- $members_obj->LimitToMembersOfGroup( $self->PrincipalId );
-
- return ( $members_obj );
-
-}
-
-# }}}
-
-# {{{ MemberEmailAddresses
-
-=head2 MemberEmailAddresses
-
-Returns an array of the email addresses of all of this group's members
-
-
-=cut
-
-sub MemberEmailAddresses {
- my $self = shift;
-
- my %addresses;
- my $members = $self->UserMembersObj();
- while (my $member = $members->Next) {
- $addresses{$member->EmailAddress} = 1;
- }
- return(sort keys %addresses);
-}
-
-# }}}
-
-# {{{ MemberEmailAddressesAsString
-
-=head2 MemberEmailAddressesAsString
-
-Returns a comma delimited string of the email addresses of all users
-who are members of this group.
-
-=cut
-
-
-sub MemberEmailAddressesAsString {
- my $self = shift;
- return (join(', ', $self->MemberEmailAddresses));
-}
-
-# }}}
-
-# {{{ AddMember
-
-=head2 AddMember PRINCIPAL_ID
-
-AddMember adds a principal to this group. It takes a single principal id.
-Returns a two value array. the first value is true on successful
-addition or 0 on failure. The second value is a textual status msg.
-
-=cut
-
-sub AddMember {
- my $self = shift;
- my $new_member = shift;
-
-
-
- if ($self->Domain eq 'Personal') {
- if ($self->CurrentUser->PrincipalId == $self->Instance) {
- unless ( $self->CurrentUserHasRight('AdminOwnPersonalGroups')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- } else {
- unless ( $self->CurrentUserHasRight('AdminAllPersonalGroups') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- }
-
- else {
- # We should only allow membership changes if the user has the right
- # to modify group membership or the user is the principal in question
- # and the user has the right to modify his own membership
- unless ( ($new_member == $self->CurrentUser->PrincipalId &&
- $self->CurrentUserHasRight('ModifyOwnMembership') ) ||
- $self->CurrentUserHasRight('AdminGroupMembership') ) {
- #User has no permission to be doing this
- return ( 0, $self->loc("Permission Denied") );
- }
-
- }
- $self->_AddMember(PrincipalId => $new_member);
-}
-
-# A helper subroutine for AddMember that bypasses the ACL checks
-# this should _ONLY_ ever be called from Ticket/Queue AddWatcher
-# when we want to deal with groups according to queue rights
-# In the dim future, this will all get factored out and life
-# will get better
-
-# takes a paramhash of { PrincipalId => undef, InsideTransaction }
-
-sub _AddMember {
- my $self = shift;
- my %args = ( PrincipalId => undef,
- InsideTransaction => undef,
- @_);
- my $new_member = $args{'PrincipalId'};
-
- unless ($self->Id) {
- $RT::Logger->crit("Attempting to add a member to a group which wasn't loaded. 'oops'");
- return(0, $self->loc("Group not found"));
- }
-
- unless ($new_member =~ /^\d+$/) {
- $RT::Logger->crit("_AddMember called with a parameter that's not an integer.");
- }
-
-
- my $new_member_obj = RT::Principal->new( $self->CurrentUser );
- $new_member_obj->Load($new_member);
-
-
- unless ( $new_member_obj->Id ) {
- $RT::Logger->debug("Couldn't find that principal");
- return ( 0, $self->loc("Couldn't find that principal") );
- }
-
- if ( $self->HasMember( $new_member_obj ) ) {
-
- #User is already a member of this group. no need to add it
- return ( 0, $self->loc("Group already has member") );
- }
- if ( $new_member_obj->IsGroup &&
- $new_member_obj->Object->HasMemberRecursively($self->PrincipalObj) ) {
-
- #This group can't be made to be a member of itself
- return ( 0, $self->loc("Groups can't be members of their members"));
- }
-
-
- my $member_object = RT::GroupMember->new( $self->CurrentUser );
- my $id = $member_object->Create(
- Member => $new_member_obj,
- Group => $self->PrincipalObj,
- InsideTransaction => $args{'InsideTransaction'}
- );
- if ($id) {
- return ( 1, $self->loc("Member added") );
- }
- else {
- return(0, $self->loc("Couldn't add member to group"));
- }
-}
-# }}}
-
-# {{{ HasMember
-
-=head2 HasMember RT::Principal
-
-Takes an RT::Principal object returns a GroupMember Id if that user is a
-member of this group.
-Returns undef if the user isn't a member of the group or if the current
-user doesn't have permission to find out. Arguably, it should differentiate
-between ACL failure and non membership.
-
-=cut
-
-sub HasMember {
- my $self = shift;
- my $principal = shift;
-
-
- unless (UNIVERSAL::isa($principal,'RT::Principal')) {
- $RT::Logger->crit("Group::HasMember was called with an argument that".
- "isn't an RT::Principal. It's $principal");
- return(undef);
- }
-
- unless ($principal->Id) {
- return(undef);
- }
-
- my $member_obj = RT::GroupMember->new( $self->CurrentUser );
- $member_obj->LoadByCols( MemberId => $principal->id,
- GroupId => $self->PrincipalId );
-
- #If we have a member object
- if ( defined $member_obj->id ) {
- return ( $member_obj->id );
- }
-
- #If Load returns no objects, we have an undef id.
- else {
- #$RT::Logger->debug($self." does not contain principal ".$principal->id);
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ HasMemberRecursively
-
-=head2 HasMemberRecursively RT::Principal
-
-Takes an RT::Principal object and returns true if that user is a member of
-this group.
-Returns undef if the user isn't a member of the group or if the current
-user doesn't have permission to find out. Arguably, it should differentiate
-between ACL failure and non membership.
-
-=cut
-
-sub HasMemberRecursively {
- my $self = shift;
- my $principal = shift;
-
- unless (UNIVERSAL::isa($principal,'RT::Principal')) {
- $RT::Logger->crit("Group::HasMemberRecursively was called with an argument that".
- "isn't an RT::Principal. It's $principal");
- return(undef);
- }
- my $member_obj = RT::CachedGroupMember->new( $self->CurrentUser );
- $member_obj->LoadByCols( MemberId => $principal->Id,
- GroupId => $self->PrincipalId ,
- Disabled => 0
- );
-
- #If we have a member object
- if ( defined $member_obj->id ) {
- return ( 1);
- }
-
- #If Load returns no objects, we have an undef id.
- else {
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ DeleteMember
-
-=head2 DeleteMember PRINCIPAL_ID
-
-Takes the principal id of a current user or group.
-If the current user has apropriate rights,
-removes that GroupMember from this group.
-Returns a two value array. the first value is true on successful
-addition or 0 on failure. The second value is a textual status msg.
-
-=cut
-
-sub DeleteMember {
- my $self = shift;
- my $member_id = shift;
-
-
- # We should only allow membership changes if the user has the right
- # to modify group membership or the user is the principal in question
- # and the user has the right to modify his own membership
-
- if ($self->Domain eq 'Personal') {
- if ($self->CurrentUser->PrincipalId == $self->Instance) {
- unless ( $self->CurrentUserHasRight('AdminOwnPersonalGroups')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- } else {
- unless ( $self->CurrentUserHasRight('AdminAllPersonalGroups') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- }
- else {
- unless ( (($member_id == $self->CurrentUser->PrincipalId) &&
- $self->CurrentUserHasRight('ModifyOwnMembership') ) ||
- $self->CurrentUserHasRight('AdminGroupMembership') ) {
- #User has no permission to be doing this
- return ( 0, $self->loc("Permission Denied") );
- }
- }
- $self->_DeleteMember($member_id);
-}
-
-# A helper subroutine for DeleteMember that bypasses the ACL checks
-# this should _ONLY_ ever be called from Ticket/Queue DeleteWatcher
-# when we want to deal with groups according to queue rights
-# In the dim future, this will all get factored out and life
-# will get better
-
-sub _DeleteMember {
- my $self = shift;
- my $member_id = shift;
-
- my $member_obj = RT::GroupMember->new( $self->CurrentUser );
-
- $member_obj->LoadByCols( MemberId => $member_id,
- GroupId => $self->PrincipalId);
-
-
- #If we couldn't load it, return undef.
- unless ( $member_obj->Id() ) {
- $RT::Logger->debug("Group has no member with that id");
- return ( 0,$self->loc( "Group has no such member" ));
- }
-
- #Now that we've checked ACLs and sanity, delete the groupmember
- my $val = $member_obj->Delete();
-
- if ($val) {
- return ( $val, $self->loc("Member deleted") );
- }
- else {
- $RT::Logger->debug("Failed to delete group ".$self->Id." member ". $member_id);
- return ( 0, $self->loc("Member not deleted" ));
- }
-}
-
-# }}}
-
-# {{{ sub _CleanupInvalidDelegations
-
-=head2 _CleanupInvalidDelegations { InsideTransaction => undef }
-
-Revokes all ACE entries delegated by members of this group which are
-inconsistent with their current delegation rights. Does not perform
-permission checks. Should only ever be called from inside the RT
-library.
-
-If called from inside a transaction, specify a true value for the
-InsideTransaction parameter.
-
-Returns a true value if the deletion succeeded; returns a false value
-and logs an internal error if the deletion fails (should not happen).
-
-=cut
-
-# XXX Currently there is a _CleanupInvalidDelegations method in both
-# RT::User and RT::Group. If the recursive cleanup call for groups is
-# ever unrolled and merged, this code will probably want to be
-# factored out into RT::Principal.
-
-sub _CleanupInvalidDelegations {
- my $self = shift;
- my %args = ( InsideTransaction => undef,
- @_ );
-
- unless ( $self->Id ) {
- $RT::Logger->warning("Group not loaded.");
- return (undef);
- }
-
- my $in_trans = $args{InsideTransaction};
-
- # TODO: Can this be unrolled such that the number of DB queries is constant rather than linear in exploded group size?
- my $members = $self->DeepMembersObj();
- $members->LimitToUsers();
- $RT::Handle->BeginTransaction() unless $in_trans;
- while ( my $member = $members->Next()) {
- my $ret = $member->MemberObj->_CleanupInvalidDelegations(InsideTransaction => 1,
- Object => $args{Object});
- unless ($ret) {
- $RT::Handle->Rollback() unless $in_trans;
- return (undef);
- }
- }
- $RT::Handle->Commit() unless $in_trans;
- return(1);
-}
-
-# }}}
-
-# {{{ ACL Related routines
-
-# {{{ sub _Set
-sub _Set {
- my $self = shift;
- my %args = (
- Field => undef,
- Value => undef,
- TransactionType => 'Set',
- RecordTransaction => 1,
- @_
- );
-
- if ($self->Domain eq 'Personal') {
- if ($self->CurrentUser->PrincipalId == $self->Instance) {
- unless ( $self->CurrentUserHasRight('AdminOwnPersonalGroups')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- } else {
- unless ( $self->CurrentUserHasRight('AdminAllPersonalGroups') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- }
- else {
- unless ( $self->CurrentUserHasRight('AdminGroup') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
-
- my $Old = $self->SUPER::_Value("$args{'Field'}");
-
- my ($ret, $msg) = $self->SUPER::_Set( Field => $args{'Field'},
- Value => $args{'Value'} );
-
- #If we can't actually set the field to the value, don't record
- # a transaction. instead, get out of here.
- if ( $ret == 0 ) { return ( 0, $msg ); }
-
- if ( $args{'RecordTransaction'} == 1 ) {
-
- my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction(
- Type => $args{'TransactionType'},
- Field => $args{'Field'},
- NewValue => $args{'Value'},
- OldValue => $Old,
- TimeTaken => $args{'TimeTaken'},
- );
- return ( $Trans, scalar $TransObj->Description );
- }
- else {
- return ( $ret, $msg );
- }
-}
-
-# }}}
-
-
-
-
-=head2 CurrentUserHasRight RIGHTNAME
-
-Returns true if the current user has the specified right for this group.
-
-
- TODO: we don't deal with membership visibility yet
-
-=cut
-
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
-
-
- if ($self->Id &&
- $self->CurrentUser->HasRight( Object => $self,
- Right => $right )) {
- return(1);
- }
- elsif ( $self->CurrentUser->HasRight(Object => $RT::System, Right => $right )) {
- return (1);
- } else {
- return(undef);
- }
-
-}
-
-# }}}
-
-
-
-
-# {{{ Principal related routines
-
-=head2 PrincipalObj
-
-Returns the principal object for this user. returns an empty RT::Principal
-if there's no principal object matching this user.
-The response is cached. PrincipalObj should never ever change.
-
-=begin testing
-
-ok(my $u = RT::Group->new($RT::SystemUser));
-ok($u->Load(4), "Loaded the first user");
-ok($u->PrincipalObj->ObjectId == 4, "user 4 is the fourth principal");
-ok($u->PrincipalObj->PrincipalType eq 'Group' , "Principal 4 is a group");
-
-=end testing
-
-=cut
-
-
-sub PrincipalObj {
- my $self = shift;
- unless ($self->{'PrincipalObj'} &&
- ($self->{'PrincipalObj'}->ObjectId == $self->Id) &&
- ($self->{'PrincipalObj'}->PrincipalType eq 'Group')) {
-
- $self->{'PrincipalObj'} = RT::Principal->new($self->CurrentUser);
- $self->{'PrincipalObj'}->LoadByCols('ObjectId' => $self->Id,
- 'PrincipalType' => 'Group') ;
- }
- return($self->{'PrincipalObj'});
-}
-
-
-=head2 PrincipalId
-
-Returns this user's PrincipalId
-
-=cut
-
-sub PrincipalId {
- my $self = shift;
- return $self->Id;
-}
-
-# }}}
-
-sub BasicColumns {
- (
- [ Name => 'Name' ],
- [ Description => 'Description' ],
- );
-}
-
-1;
-
-=head1 AUTHOR
-
-Jesse Vincent, jesse@bestpractical.com
-
-=head1 SEE ALSO
-
-RT
-
diff --git a/rt/lib/RT/Groups.pm b/rt/lib/RT/Groups.pm
deleted file mode 100755
index 29f12a5..0000000
--- a/rt/lib/RT/Groups.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Groups -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Groups
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Groups;
-
-use RT::SearchBuilder;
-use RT::Group;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Groups';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Group item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Group->new($self->CurrentUser));
-}
-
- eval "require RT::Groups_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Groups_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Groups_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Groups_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Groups_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Groups_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Groups_Overlay, RT::Groups_Vendor, RT::Groups_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Groups_Overlay.pm b/rt/lib/RT/Groups_Overlay.pm
deleted file mode 100644
index cf29114..0000000
--- a/rt/lib/RT/Groups_Overlay.pm
+++ /dev/null
@@ -1,513 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Groups - a collection of RT::Group objects
-
-=head1 SYNOPSIS
-
- use RT::Groups;
- my $groups = $RT::Groups->new($CurrentUser);
- $groups->UnLimit();
- while (my $group = $groups->Next()) {
- print $group->Id ." is a group id\n";
- }
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Groups);
-
-=end testing
-
-=cut
-
-
-package RT::Groups;
-
-use strict;
-no warnings qw(redefine);
-
-
-# {{{ sub _Init
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = "Groups";
- $self->{'primary_key'} = "id";
-
- $self->OrderBy( ALIAS => 'main',
- FIELD => 'Name',
- ORDER => 'ASC');
-
-
- return ( $self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ LimiToSystemInternalGroups
-
-=head2 LimitToSystemInternalGroups
-
-Return only SystemInternal Groups, such as "privileged" "unprivileged" and "everyone"
-
-=cut
-
-
-sub LimitToSystemInternalGroups {
- my $self = shift;
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'SystemInternal');
- # All system internal groups have the same instance. No reason to limit down further
- #$self->Limit(FIELD => 'Instance', OPERATOR => '=', VALUE => '0');
-}
-
-
-# }}}
-
-# {{{ LimiToUserDefinedGroups
-
-=head2 LimitToUserDefined Groups
-
-Return only UserDefined Groups
-
-=cut
-
-
-sub LimitToUserDefinedGroups {
- my $self = shift;
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined');
- # All user-defined groups have the same instance. No reason to limit down further
- #$self->Limit(FIELD => 'Instance', OPERATOR => '=', VALUE => '');
-}
-
-
-# }}}
-
-# {{{ LimiToPersonalGroups
-
-=head2 LimitToPersonalGroupsFor PRINCIPAL_ID
-
-Return only Personal Groups for the user whose principal id
-is PRINCIPAL_ID
-
-=cut
-
-
-sub LimitToPersonalGroupsFor {
- my $self = shift;
- my $princ = shift;
-
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'Personal');
- $self->Limit( FIELD => 'Instance',
- OPERATOR => '=',
- VALUE => $princ);
-}
-
-
-# }}}
-
-# {{{ LimitToRolesForQueue
-
-=head2 LimitToRolesForQueue QUEUE_ID
-
-Limits the set of groups found to role groups for queue QUEUE_ID
-
-=cut
-
-sub LimitToRolesForQueue {
- my $self = shift;
- my $queue = shift;
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'RT::Queue-Role');
- $self->Limit(FIELD => 'Instance', OPERATOR => '=', VALUE => $queue);
-}
-
-# }}}
-
-# {{{ LimitToRolesForTicket
-
-=head2 LimitToRolesForTicket Ticket_ID
-
-Limits the set of groups found to role groups for Ticket Ticket_ID
-
-=cut
-
-sub LimitToRolesForTicket {
- my $self = shift;
- my $Ticket = shift;
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'RT::Ticket-Role');
- $self->Limit(FIELD => 'Instance', OPERATOR => '=', VALUE => '$Ticket');
-}
-
-# }}}
-
-# {{{ LimitToRolesForSystem
-
-=head2 LimitToRolesForSystem System_ID
-
-Limits the set of groups found to role groups for System System_ID
-
-=cut
-
-sub LimitToRolesForSystem {
- my $self = shift;
- $self->Limit(FIELD => 'Domain', OPERATOR => '=', VALUE => 'RT::System-Role');
-}
-
-# }}}
-
-=head2 WithMember {PrincipalId => PRINCIPAL_ID, Recursively => undef}
-
-Limits the set of groups returned to groups which have
-Principal PRINCIPAL_ID as a member
-
-=begin testing
-
-my $u = RT::User->new($RT::SystemUser);
-$u->Create(Name => 'Membertests');
-my $g = RT::Group->new($RT::SystemUser);
-my ($id, $msg) = $g->CreateUserDefinedGroup(Name => 'Membertests');
-ok ($id,$msg);
-
-my ($aid, $amsg) =$g->AddMember($u->id);
-ok ($aid, $amsg);
-ok($g->HasMember($u->PrincipalObj),"G has member u");
-
-my $groups = RT::Groups->new($RT::SystemUser);
-$groups->LimitToUserDefinedGroups();
-$groups->WithMember(PrincipalId => $u->id);
-ok ($groups->Count == 1,"found the 1 group - " . $groups->Count);
-ok ($groups->First->Id == $g->Id, "it's the right one");
-
-
-
-
-=end testing
-
-
-=cut
-
-sub WithMember {
- my $self = shift;
- my %args = ( PrincipalId => undef,
- Recursively => undef,
- @_);
- my $members;
-
- if ($args{'Recursively'}) {
- $members = $self->NewAlias('CachedGroupMembers');
- } else {
- $members = $self->NewAlias('GroupMembers');
- }
- $self->Join(ALIAS1 => 'main', FIELD1 => 'id',
- ALIAS2 => $members, FIELD2 => 'GroupId');
-
- $self->Limit(ALIAS => $members, FIELD => 'MemberId', OPERATOR => '=', VALUE => $args{'PrincipalId'});
-}
-
-
-=head2 WithRight { Right => RIGHTNAME, Object => RT::Record, IncludeSystemRights => 1, IncludeSuperusers => 0, EquivObjects => [ ] }
-
-
-Find all groups which have RIGHTNAME for RT::Record. Optionally include global rights and superusers. By default, include the global rights, but not the superusers.
-
-=begin testing
-
-my $q = RT::Queue->new($RT::SystemUser);
-my ($id, $msg) =$q->Create( Name => 'GlobalACLTest');
-ok ($id, $msg);
-
-my $testuser = RT::User->new($RT::SystemUser);
-($id,$msg) = $testuser->Create(Name => 'JustAnAdminCc');
-ok ($id,$msg);
-
-my $global_admin_cc = RT::Group->new($RT::SystemUser);
-$global_admin_cc->LoadSystemRoleGroup('AdminCc');
-ok($global_admin_cc->id, "Found the global admincc group");
-my $groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'OwnTicket', Object => $q);
-is($groups->Count, 1);
-($id, $msg) = $global_admin_cc->PrincipalObj->GrantRight(Right =>'OwnTicket', Object=> $RT::System);
-ok ($id,$msg);
-ok (!$testuser->HasRight(Object => $q, Right => 'OwnTicket') , "The test user does not have the right to own tickets in the test queue");
-($id, $msg) = $q->AddWatcher(Type => 'AdminCc', PrincipalId => $testuser->id);
-ok($id,$msg);
-ok ($testuser->HasRight(Object => $q, Right => 'OwnTicket') , "The test user does have the right to own tickets now. thank god.");
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'OwnTicket', Object => $q);
-ok ($id,$msg);
-is($groups->Count, 2);
-
-my $RTxGroup = RT::Group->new($RT::SystemUser);
-($id, $msg) = $RTxGroup->CreateUserDefinedGroup( Name => 'RTxGroup', Description => "RTx extension group");
-ok ($id,$msg);
-
-my $RTxSysObj = {};
-bless $RTxSysObj, 'RTx::System';
-*RTx::System::Id = sub { 1; };
-*RTx::System::id = *RTx::System::Id;
-my $ace = RT::Record->new($RT::SystemUser);
-$ace->Table('ACL');
-$ace->_BuildTableAttributes unless ($_TABLE_ATTR->{ref($self)});
-($id, $msg) = $ace->Create( PrincipalId => $RTxGroup->id, PrincipalType => 'Group', RightName => 'RTxGroupRight', ObjectType => 'RTx::System', ObjectId => 1);
-ok ($id, "ACL for RTxSysObj created");
-
-my $RTxObj = {};
-bless $RTxObj, 'RTx::System::Record';
-*RTx::System::Record::Id = sub { 4; };
-*RTx::System::Record::id = *RTx::System::Record::Id;
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'RTxGroupRight', Object => $RTxSysObj);
-is($groups->Count, 1, "RTxGroupRight found for RTxSysObj");
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'RTxGroupRight', Object => $RTxObj);
-is($groups->Count, 0, "RTxGroupRight not found for RTxObj");
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'RTxGroupRight', Object => $RTxObj, EquivObjects => [ $RTxSysObj ]);
-is($groups->Count, 1, "RTxGroupRight found for RTxObj using EquivObjects");
-
-$ace = RT::Record->new($RT::SystemUser);
-$ace->Table('ACL');
-$ace->_BuildTableAttributes unless ($_TABLE_ATTR->{ref($self)});
-($id, $msg) = $ace->Create( PrincipalId => $RTxGroup->id, PrincipalType => 'Group', RightName => 'RTxGroupRight', ObjectType => 'RTx::System::Record', ObjectId => 5 );
-ok ($id, "ACL for RTxObj created");
-
-my $RTxObj2 = {};
-bless $RTxObj2, 'RTx::System::Record';
-*RTx::System::Record::Id = sub { 5; };
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'RTxGroupRight', Object => $RTxObj2);
-is($groups->Count, 1, "RTxGroupRight found for RTxObj2");
-
-$groups = RT::Groups->new($RT::SystemUser);
-$groups->WithRight(Right => 'RTxGroupRight', Object => $RTxObj2, EquivObjects => [ $RTxSysObj ]);
-is($groups->Count, 1, "RTxGroupRight found for RTxObj2");
-
-
-
-=end testing
-
-
-=cut
-
-
-sub WithRight {
- my $self = shift;
- my %args = ( Right => undef,
- Object => => undef,
- IncludeSystemRights => 1,
- IncludeSuperusers => undef,
- EquivObjects => [ ],
- @_ );
-
- my $acl = $self->NewAlias('ACL');
-
- # {{{ Find only rows where the right granted is the one we're looking up or _possibly_ superuser
- $self->Limit( ALIAS => $acl,
- FIELD => 'RightName',
- OPERATOR => ($args{Right} ? '=' : 'IS NOT'),
- VALUE => $args{Right} || 'NULL',
- ENTRYAGGREGATOR => 'OR' );
-
- if ( $args{'IncludeSuperusers'} and $args{'Right'} ) {
- $self->Limit( ALIAS => $acl,
- FIELD => 'RightName',
- OPERATOR => '=',
- VALUE => 'SuperUser',
- ENTRYAGGREGATOR => 'OR' );
- }
- # }}}
-
- my ($or_check_ticket_roles, $or_check_roles);
- my $which_object = "$acl.ObjectType = 'RT::System'";
-
- if ( defined $args{'Object'} ) {
- if ( ref($args{'Object'}) eq 'RT::Ticket' ) {
- $or_check_ticket_roles =
- " OR ( main.Domain = 'RT::Ticket-Role' AND main.Instance = " . $args{'Object'}->Id . ") ";
-
- # If we're looking at ticket rights, we also want to look at the associated queue rights.
- # this is a little bit hacky, but basically, now that we've done the ticket roles magic,
- # we load the queue object and ask all the rest of our questions about the queue.
- $args{'Object'} = $args{'Object'}->QueueObj;
- }
- # TODO XXX This really wants some refactoring
- if ( ref($args{'Object'}) eq 'RT::Queue' ) {
- $or_check_roles =
- " OR ( ( (main.Domain = 'RT::Queue-Role' AND main.Instance = " .
- $args{'Object'}->Id . ") $or_check_ticket_roles ) " .
- " AND main.Type = $acl.PrincipalType) ";
- }
-
- if ( $args{'IncludeSystemRights'} ) {
- $which_object .= ' OR ';
- }
- else {
- $which_object = '';
- }
- foreach my $obj ( @{ $args{'EquivObjects'} } ) {
- next unless ( UNIVERSAL::can( $obj, 'id' ) );
- $which_object .= "($acl.ObjectType = '" . ref( $obj ) . "' AND $acl.ObjectId = " . $obj->id . ") OR ";
- }
- $which_object .=
- " ($acl.ObjectType = '" . ref($args{'Object'}) . "'" .
- " AND $acl.ObjectId = " . $args{'Object'}->Id . ") ";
- }
-
- $self->_AddSubClause( "WhichObject", "($which_object)" );
-
- $self->_AddSubClause( "WhichGroup",
- qq{
- ( ( $acl.PrincipalId = main.id
- AND $acl.PrincipalType = 'Group'
- AND ( main.Domain = 'SystemInternal'
- OR main.Domain = 'UserDefined'
- OR main.Domain = 'ACLEquivalence'))
- $or_check_roles)
- }
- );
-}
-
-# {{{ sub LimitToEnabled
-
-=head2 LimitToEnabled
-
-Only find items that haven\'t been disabled
-
-=cut
-
-sub LimitToEnabled {
- my $self = shift;
-
- my $alias = $self->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'Principals',
- FIELD2 => 'id'
- );
-
- $self->Limit( ALIAS => $alias,
- FIELD => 'Disabled',
- VALUE => '0',
- OPERATOR => '=' );
-}
-# }}}
-
-# {{{ sub LimitToDisabled
-
-=head2 LimitToDeleted
-
-Only find items that have been deleted.
-
-=cut
-
-sub LimitToDeleted {
- my $self = shift;
-
- my $alias = $self->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'Principals',
- FIELD2 => 'id'
- );
-
- $self->{'find_disabled_rows'} = 1;
- $self->Limit( ALIAS => $alias,
- FIELD => 'Disabled',
- OPERATOR => '=',
- VALUE => '1'
- );
-}
-# }}}
-
-# {{{ sub Next
-
-sub Next {
- my $self = shift;
-
- # Don't show groups which the user isn't allowed to see.
-
- my $Group = $self->SUPER::Next();
- if ((defined($Group)) and (ref($Group))) {
- unless ($Group->CurrentUserHasRight('SeeGroup')) {
- return $self->Next();
- }
-
- return $Group;
- }
- else {
- return undef;
- }
-}
-
-
-
-sub _DoSearch {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless($self->{'find_disabled_rows'}) {
- $self->LimitToEnabled();
- }
-
- return($self->SUPER::_DoSearch(@_));
-
-}
-
-1;
-
diff --git a/rt/lib/RT/Handle.pm b/rt/lib/RT/Handle.pm
deleted file mode 100644
index 5cdb65e..0000000
--- a/rt/lib/RT/Handle.pm
+++ /dev/null
@@ -1,101 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::Handle - RT's database handle
-
-=head1 SYNOPSIS
-
- use RT::Handle;
-
-=head1 DESCRIPTION
-
-=begin testing
-
-ok(require RT::Handle);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-package RT::Handle;
-
-use strict;
-use vars qw/@ISA/;
-
-eval "use DBIx::SearchBuilder::Handle::$RT::DatabaseType;
-\@ISA= qw(DBIx::SearchBuilder::Handle::$RT::DatabaseType);";
-#TODO check for errors here.
-
-=head2 Connect
-
-Connects to RT's database handle.
-Takes nothing. Calls SUPER::Connect with the needed args
-
-=cut
-
-sub Connect {
-my $self=shift;
-
-# Unless the database port is a positive integer, we really don't want to pass it.
-
-$self->SUPER::Connect(
- User => $RT::DatabaseUser,
- Password => $RT::DatabasePassword,
- );
-
-}
-
-=item BuildDSN
-
-Build the DSN for the RT database. doesn't take any parameters, draws all that
-from the config file.
-
-=cut
-
-
-sub BuildDSN {
- my $self = shift;
-$RT::DatabasePort = undef unless (defined $RT::DatabasePort && $RT::DatabasePort =~ /^(\d+)$/);
-$RT::DatabaseHost = undef unless (defined $RT::DatabaseHost && $RT::DatabaseHost ne '');
-
- $self->SUPER::BuildDSN(Host => $RT::DatabaseHost,
- Database => $RT::DatabaseName,
- Port => $RT::DatabasePort,
- Driver => $RT::DatabaseType,
- RequireSSL => $RT::DatabaseRequireSSL,
- DisconnectHandleOnDestroy => 1
- );
-
-
-}
-
-eval "require RT::Handle_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Handle_Vendor.pm});
-eval "require RT::Handle_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Handle_Local.pm});
-
-1;
diff --git a/rt/lib/RT/I18N.pm b/rt/lib/RT/I18N.pm
deleted file mode 100644
index affff98..0000000
--- a/rt/lib/RT/I18N.pm
+++ /dev/null
@@ -1,476 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
-RT::I18N - a base class for localization of RT
-
-=cut
-
-package RT::I18N;
-
-use strict;
-use Locale::Maketext 1.04;
-use Locale::Maketext::Lexicon 0.25;
-use base ('Locale::Maketext::Fuzzy');
-use vars qw( %Lexicon );
-
-#If we're running on 5.6, we desperately need Encode::compat. But if we're on 5.8, we don't really need it.
-BEGIN { if ($] < 5.007001) {
-require Encode::compat;
-} }
-use Encode;
-
-use MIME::Entity;
-use MIME::Head;
-
-# I decree that this project's first language is English.
-
-%Lexicon = (
- 'TEST_STRING' => 'Concrete Mixer',
-
- '__Content-Type' => 'text/plain; charset=utf-8',
-
- '_AUTO' => 1,
- # That means that lookup failures can't happen -- if we get as far
- # as looking for something in this lexicon, and we don't find it,
- # then automagically set $Lexicon{$key} = $key, before possibly
- # compiling it.
-
- # The exception is keys that start with "_" -- they aren't auto-makeable.
-
-);
-# End of lexicon.
-
-=head2 Init
-
-Initializes the lexicons used for localization.
-
-=begin testing
-
-use_ok (RT::I18N);
-ok(RT::I18N->Init);
-
-=end testing
-
-=cut
-
-sub Init {
- require File::Glob;
-
- # Load language-specific functions
- foreach my $language ( File::Glob::bsd_glob(substr(__FILE__, 0, -3) . "/*.pm")) {
- if ($language =~ /^([-\w\s.\/\\~:]+)$/) {
- require $1;
- }
- else {
- warn("$language is tainted. not loading");
- }
- }
-
- my @lang = @RT::LexiconLanguages;
- @lang = ('*') unless @lang;
-
- # Acquire all .po files and iterate them into lexicons
- Locale::Maketext::Lexicon->import({
- _decode => 1, map {
- $_ => [
- Gettext => (substr(__FILE__, 0, -3) . "/$_.po"),
- Gettext => "$RT::LocalLexiconPath/*/$_.po",
- Gettext => "$RT::LocalLexiconPath/$_.po",
- ],
- } @lang
- });
-
- return 1;
-}
-
-=head2 encoding
-
-Returns the encoding of the current lexicon, as yanked out of __ContentType's "charset" field.
-If it can't find anything, it returns 'ISO-8859-1'
-
-=begin testing
-
-ok(my $chinese = RT::I18N->get_handle('zh_tw'));
-ok(UNIVERSAL::can($chinese, 'maketext'));
-ok($chinese->maketext('__Content-Type') =~ /utf-8/i, "Found the utf-8 charset for traditional chinese in the string ".$chinese->maketext('__Content-Type'));
-ok($chinese->encoding eq 'utf-8', "The encoding is 'utf-8' -".$chinese->encoding);
-
-ok(my $en = RT::I18N->get_handle('en'));
-ok(UNIVERSAL::can($en, 'maketext'));
-ok($en->encoding eq 'utf-8', "The encoding ".$en->encoding." is 'utf-8'");
-
-=end testing
-
-
-=cut
-
-
-sub encoding { 'utf-8' }
-
-# {{{ SetMIMEEntityToUTF8
-
-=head2 SetMIMEEntityToUTF8 $entity
-
-An utility method which will try to convert entity body into utf8.
-It's now a wrap-up of SetMIMEEntityToEncoding($entity, 'utf-8').
-
-=cut
-
-sub SetMIMEEntityToUTF8 {
- RT::I18N::SetMIMEEntityToEncoding(shift, 'utf-8');
-}
-
-# }}}
-
-# {{{ SetMIMEEntityToEncoding
-
-=head2 SetMIMEEntityToEncoding $entity, $encoding
-
-An utility method which will try to convert entity body into specified
-charset encoding (encoded as octets, *not* unicode-strings). It will
-iterate all the entities in $entity, and try to convert each one into
-specified charset if whose Content-Type is 'text/plain'.
-
-This method doesn't return anything meaningful.
-
-=cut
-
-sub SetMIMEEntityToEncoding {
- my ( $entity, $enc, $preserve_words ) = ( shift, shift, shift );
-
- #if ( $entity->is_multipart ) {
- #$RT::Logger->crit("This entity is a multipart " . $entity->head->as_string);
- SetMIMEEntityToEncoding( $_, $enc, $preserve_words ) foreach $entity->parts;
- #}
-
- my $charset = _FindOrGuessCharset($entity) or return;
- # one and only normalization
- $charset = 'utf-8' if $charset =~ /^utf-?8$/i;
- $enc = 'utf-8' if $enc =~ /^utf-?8$/i;
-
- SetMIMEHeadToEncoding(
- $entity->head,
- _FindOrGuessCharset($entity, 1) => $enc,
- $preserve_words
- );
-
- my $head = $entity->head;
-
- # convert at least MIME word encoded attachment filename
- foreach my $attr (qw(content-type.name content-disposition.filename)) {
- if ( my $name = $head->mime_attr($attr) and !$preserve_words ) {
- $head->mime_attr( $attr => DecodeMIMEWordsToUTF8($name) );
- }
- }
-
- # If this is a textual entity, we'd need to preserve its original encoding
- $head->add( "X-RT-Original-Encoding" => $charset )
- if $head->mime_attr('content-type.charset') or $head->mime_type =~ /^text/;
-
-
- return unless ( $head->mime_type =~ qr{^(text/plain|message/rfc822)$}i );
-
-
- my $body = $entity->bodyhandle;
-
- if ( $enc ne $charset && $body) {
- my @lines = $body->as_lines or return;
-
- # {{{ Convert the body
- eval {
- $RT::Logger->debug("Converting '$charset' to '$enc' for ". $head->mime_type . " - ". $head->get('subject'));
-
- # NOTE:: see the comments at the end of the sub.
- Encode::_utf8_off( $lines[$_] ) foreach ( 0 .. $#lines );
- Encode::from_to( $lines[$_], $charset => $enc ) for ( 0 .. $#lines );
- };
-
- if ($@) {
- $RT::Logger->error( "Encoding error: " . $@ . " defaulting to ISO-8859-1 -> UTF-8" );
- eval {
- Encode::from_to( $lines[$_], 'iso-8859-1' => $enc ) foreach ( 0 .. $#lines );
- };
- if ($@) {
- $RT::Logger->crit( "Totally failed to convert to utf-8: " . $@ . " I give up" );
- }
- }
- # }}}
-
- my $new_body = MIME::Body::InCore->new( \@lines );
-
- # set up the new entity
- $head->mime_attr( "content-type" => 'text/plain' )
- unless ( $head->mime_attr("content-type") );
- $head->mime_attr( "content-type.charset" => $enc );
- $entity->bodyhandle($new_body);
- }
-}
-
-# NOTES: Why Encode::_utf8_off before Encode::from_to
-#
-# All the strings in RT are utf-8 now. Quotes from Encode POD:
-#
-# [$length =] from_to($octets, FROM_ENC, TO_ENC [, CHECK])
-# ... The data in $octets must be encoded as octets and not as
-# characters in Perl's internal format. ...
-#
-# Not turning off the UTF-8 flag in the string will prevent the string
-# from conversion.
-
-# }}}
-
-# {{{ DecodeMIMEWordsToUTF8
-
-=head2 DecodeMIMEWordsToUTF8 $raw
-
-An utility method which mimics MIME::Words::decode_mimewords, but only
-limited functionality. This function returns an utf-8 string.
-
-It returns the decoded string, or the original string if it's not
-encoded. Since the subroutine converts specified string into utf-8
-charset, it should not alter a subject written in English.
-
-Why not use MIME::Words directly? Because it fails in RT when I
-tried. Maybe it's ok now.
-
-=cut
-
-sub DecodeMIMEWordsToUTF8 {
- my $str = shift;
- DecodeMIMEWordsToEncoding($str, 'utf-8');
-}
-
-sub DecodeMIMEWordsToEncoding {
- my $str = shift;
- my $enc = shift;
-
-
- @_ = $str =~ m/([^=]*)=\?([^?]+)\?([QqBb])\?([^?]+)\?=([^=]*)/g;
-
- return ($str) unless (@_);
-
- $str = "";
- while (@_) {
- my ($prefix, $charset, $encoding, $enc_str, $trailing) =
- (shift, shift, shift, shift, shift);
-
- $trailing =~ s/\s?\t?$//; # Observed from Outlook Express
-
- if ($encoding eq 'Q' or $encoding eq 'q') {
- use MIME::QuotedPrint;
- $enc_str =~ tr/_/ /; # Observed from Outlook Express
- $enc_str = decode_qp($enc_str);
- } elsif ($encoding eq 'B' or $encoding eq 'b') {
- use MIME::Base64;
- $enc_str = decode_base64($enc_str);
- } else {
- $RT::Logger->warning("RT::I18N::DecodeMIMEWordsToCharset got a " .
- "strange encoding: $encoding.");
- }
-
- # now we have got a decoded subject, try to convert into the encoding
- unless ($charset eq $enc) {
- eval { Encode::from_to($enc_str, $charset, $enc) };
- if ($@) {
- $charset = _GuessCharset( $enc_str );
- Encode::from_to($enc_str, $charset, $enc);
- }
- }
-
- # XXX TODO: RT doesn't currently do the right thing with mime-encoded headers
- # We _should_ be preserving them encoded until after parsing is completed and
- # THEN undo the mime-encoding.
- #
- # This routine should be translating the existing mimeencoding to utf8 but leaving
- # things encoded.
- #
- # It's legal for headers to contain mime-encoded commas and semicolons which
- # should not be treated as address separators. (Encoding == quoting here)
- #
- # until this is fixed, we must escape any string containing a comma or semicolon
- # this is only a bandaid
-
- $enc_str = qq{"$enc_str"} if ($enc_str =~ /[,;]/);
- $str .= $prefix . $enc_str . $trailing;
- }
-
- return ($str)
-}
-
-# }}}
-
-# {{{ _FindOrGuessCharset
-
-=head2 _FindOrGuessCharset MIME::Entity, $head_only
-
-When handed a MIME::Entity will first attempt to read what charset the message is encoded in. Failing that, will use Encode::Guess to try to figure it out
-
-If $head_only is true, only guesses charset for head parts. This is because header's encoding (e.g. filename="...") may be different from that of body's.
-
-=cut
-
-sub _FindOrGuessCharset {
- my $entity = shift;
- my $head_only = shift;
- my $head = $entity->head;
-
- if ($head->mime_attr("content-type.charset")) {
- return $head->mime_attr("content-type.charset");
- }
-
- if ( !$head_only and $head->mime_type =~ m{^text/}) {
- my $body = $entity->bodyhandle or return;
- return _GuessCharset( $body->as_string );
- }
- else {
- # potentially binary data -- don't guess the body
- return _GuessCharset( $head->as_string );
- }
-}
-
-# }}}
-
-# {{{ _GuessCharset
-
-=head2 _GuessCharset STRING
-
-use Encode::Guess to try to figure it out the string's encoding.
-
-=cut
-
-sub _GuessCharset {
- my $fallback = 'iso-8859-1';
- my $charset;
-
- if ( @RT::EmailInputEncodings and eval { require Encode::Guess; 1 } ) {
- Encode::Guess->set_suspects(@RT::EmailInputEncodings);
- my $decoder = Encode::Guess->guess( $_[0] );
-
- if ( ref $decoder ) {
- $charset = $decoder->name;
- $RT::Logger->debug("Guessed encoding: $charset");
- return $charset;
- }
- elsif ($decoder =~ /(\S+ or .+)/) {
- my %matched = map { $_ => 1 } split(/ or /, $1);
- return 'utf-8' if $matched{'utf8'}; # one and only normalization
-
- foreach my $suspect (@RT::EmailInputEncodings) {
- next unless $matched{$suspect};
- $RT::Logger->debug("Encode::Guess ambiguous ($decoder); using $suspect");
- $charset = $suspect;
- last;
- }
- }
- else {
- $RT::Logger->warning("Encode::Guess failed: $decoder; fallback to $fallback");
- }
- }
- else {
- $RT::Logger->warning("Cannot Encode::Guess; fallback to $fallback");
- }
-
- return($charset || $fallback);
-}
-
-# }}}
-
-# {{{ SetMIMEHeadToEncoding
-
-=head2 SetMIMEHeadToEncoding HEAD OLD_CHARSET NEW_CHARSET
-
-Converts a MIME Head from one encoding to another. This totally violates the RFC.
-We should never need this. But, Surprise!, MUAs are badly broken and do this kind of stuff
-all the time
-
-
-=cut
-
-sub SetMIMEHeadToEncoding {
- my ( $head, $charset, $enc, $preserve_words ) = ( shift, shift, shift, shift );
-
- $charset = 'utf-8' if $charset eq 'utf8';
- $enc = 'utf-8' if $enc eq 'utf8';
-
- return if $charset eq $enc and $preserve_words;
-
- foreach my $tag ( $head->tags ) {
- next unless $tag; # seen in wild: headers with no name
- my @values = $head->get_all($tag);
- $head->delete($tag);
- foreach my $value (@values) {
- if ( $charset ne $enc ) {
-
- eval {
- Encode::_utf8_off($value);
- Encode::from_to( $value, $charset => $enc );
- };
- if ($@) {
- $RT::Logger->error( "Encoding error: " . $@
- . " defaulting to ISO-8859-1 -> UTF-8" );
- eval { Encode::from_to( $value, 'iso-8859-1' => $enc ) };
- if ($@) {
- $RT::Logger->crit( "Totally failed to convert to utf-8: " . $@ . " I give up" );
- }
- }
- }
- $value = DecodeMIMEWordsToEncoding( $value, $enc ) unless $preserve_words;
- $head->add( $tag, $value );
- }
- }
-
-}
-# }}}
-
-eval "require RT::I18N_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/I18N_Vendor.pm});
-eval "require RT::I18N_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/I18N_Local.pm});
-
-1; # End of module.
-
diff --git a/rt/lib/RT/I18N/cs.pm b/rt/lib/RT/I18N/cs.pm
deleted file mode 100644
index 10ece32..0000000
--- a/rt/lib/RT/I18N/cs.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::I18N::cs;
-
-# # CZECH TRANSLATORS COMMENTS see Locale::Maketext::TPJ13
-# Obecne parametry musi byt docela slozite (v pripade Slavistickych jazyku)
-# typu pocet, slovo, pad a rod
-#
-#pad 1., rod muzsky:
-#0 krecku
-#1 krecek
-#2..4 krecci
-#5.. krecku (nehodi se zde resit pravidlo mod 1,2,3,4 krom mod 11,12,13,14)
-#
-#0 kabatu
-#1 kabat
-#2..4 kabaty
-#5 kabatu
-#
-# => Vyplati se udelat quant s parametry typu pocet, slovo1, slovo2..4, slovo5 a slovo0
-#
-
-sub quant {
- my($handle, $num, @forms) = @_;
-
- return $num if @forms == 0; # what should this mean?
- return $forms[3] if @forms > 3 and $num == 0; # special zeroth case
-
- # Normal case:
- # Note that the formatting of $num is preserved.
- #return( $handle->numf($num) . ' ' . $handle->numerate($num, @forms) );
- return( $handle->numerate($num, @forms) );
- # Most human languages put the number phrase before the qualified phrase.
-}
-
-
-sub numerate {
- # return this lexical item in a form appropriate to this number
- my($handle, $num, @forms) = @_;
- my $s = ($num == 1);
-
- return '' unless @forms;
- return
- $s ? $forms[0] :
- ( $num > 1 && $num < 5 ) ? $forms[1] :
- $forms[2];
-}
-
-#--------------------------------------------------------------------------
-
-sub numf {
- my($handle, $num) = @_[0,1];
- if($num < 10_000_000_000 and $num > -10_000_000_000 and $num == int($num)) {
- $num += 0; # Just use normal integer stringification.
- # Specifically, don't let %G turn ten million into 1E+007
- } else {
- $num = CORE::sprintf("%G", $num);
- # "CORE::" is there to avoid confusion with the above sub sprintf.
- }
- while( $num =~ s/^([-+]?\d+)(\d{3})/$1,$2/s ) {1} # right from perlfaq5
- # The initial \d+ gobbles as many digits as it can, and then we
- # backtrack so it un-eats the rightmost three, and then we
- # insert the comma there.
-
- $num =~ tr<.,><,.> if ref($handle) and $handle->{'numf_comma'};
- # This is just a lame hack instead of using Number::Format
- return $num;
-}
-
-1;
diff --git a/rt/lib/RT/I18N/cs.po b/rt/lib/RT/I18N/cs.po
deleted file mode 100644
index 224a316..0000000
--- a/rt/lib/RT/I18N/cs.po
+++ /dev/null
@@ -1,5760 +0,0 @@
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 3.2.2\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2005-01-21 00:00+0100\n"
-"Last-Translator: Jan Okrouhly <okrouhly@civ.zcu.cz>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3.%2.%7 %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 přidáno"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "- %1 %2"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 změněno na %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 smazáno"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 se vzorem %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 tento požadavek\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""%1 (%2) vytvořil %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (Nezměněn)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1. až %2. zobrazený"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - argument k předání %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Výstupní stav jde do STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Jaký akÄní modul chcete použít"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Jaký podmínkový modul chcete použít"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Jaký vyhledávací modul chcete použít"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 nahrána"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 přidáno jako hodnota pro %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 aliasy vyžadují k Äinnosti TicketId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 aliasy vyžadují k Äinnosti TicketId (odesílatel %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 vypadá jako lokální objekt, ale není v databázi"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 uživatelem %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 změněno z %2 na %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "kopie %1"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 nemůže být nastaveno na %2."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 nemůže zaÄít transakci (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 nemůže nastavit stav na vyřešen. RT databáze může být nekonzistentní."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "%1 nejdůležitějších požadavků, které vlastním"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 nejdůležitějších požadavků, které žádám..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 je nástroj zpracující požadavky z vnějšího plánovacího nástroje jako je cron"
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 již není %2 této fronty."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 již není %2 tohoto požadavku."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 již není hodnotou uživatelské položky %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 není platným identifikátorem fronty."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 %quant(%1,minuta,minuty,minut,minut)"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 nejnovějších nevlastněných požadavků"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 nezobrazeno"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "práva %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 provedeno\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "typ %1 neznámý pro $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "typ %1 neznámý pro %2"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 vyÅ™eší vÅ¡echny Äleny skupiny vyÅ™eÅ¡eného požadavku."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 odloží [místní] BÃZI, je-li závislá [Äi Älenem] na spjatém požadavku."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "uložené dotazy %1"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: neudána příloha"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1 B"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1 kB"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "%1 je neplatnou hodnotou pro stav"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "%1 je neznámá akce."
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Zatrhněte pro smazání scripu)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Zatrhněte pro smazání)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Zatrhněte pro zakázání upozorňování uvedených příjemců)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Zatrhněte pro povolení upozorňování uvedených příjemců)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Zadejte identifikátory Äi URL požadavku, oddÄ›lené mezerami)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Pro prázdné pole se použije %1)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Žádné uživatelské položky)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Žádní Älenové)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "Žádné scripy"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Žádné vzory)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(ZaÅ¡le skrytou kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. <b>Neovlivňuje</b> příjemce budoucích aktualizací.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(ZaÅ¡le skrytou kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. <b>Neovlivňuje</b> příjemce budoucích aktualizací.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(ZaÅ¡le kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. Tito lidé <b>budou</b> dostávat budoucí aktualizace.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(ZaÅ¡le kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. <b>NemÄ›ní</b> příjemce budoucích aktualizací"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(ZaÅ¡le kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. <b>Neovlivňuje</b> příjemce budoucích aktualizací.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(ZaÅ¡le kopii této aktualizace Äárkami oddÄ›lenému seznamu e-mail adres. Tito lidé <b>budou</b> dostávat budoucí aktualizace.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(Použijte tyto formuláře v případÄ› výbÄ›ru Uživatelen definované podmínky Äi akce)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(prázdná)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "žádné jméno nebylo vypsáno"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(bez předmětu)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(bez hodnoty)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(jen jeden požadavek)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(oÄekávájící schválení)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(probíhá jiná Sbírka)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(jiné oÄekávající požadavky)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(povinné)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(nepojmenováno)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Nový požadavek v\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Prázdný vzor"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE nenalezeno"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACE mohou být jen vytvářeny nebo rušeny."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Přerušeno k zamezení nežádoucích změn požadavku.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "O mnÄ›"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Řízení přístupu"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Akce"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Akce %1 nenalezena"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Akce provedena."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Akce připravena..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Přidat"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Přidat AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Přidat Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Přidat podmínku"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Přidat další soubory"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Přidat Žadatele"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Přidat hodnotu"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Přidat nový globální scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Přidat scrip k této frontě"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Přidat scrip do všech front"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "PÅ™idat dodateÄnou podmínku"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "PÅ™idat komentáře Äi odpovÄ›di k vybraným požadavkům"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "PÅ™idat Äleny"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Přidat nové pozorovatele"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "PřidatDalšíStav"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Uživatel přidán do této fronty jako %1"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Uživatel přidán k tomuto požadavku jako %1"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adresa1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adresa2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Administrativní komentář"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Administrativní korespondence"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Správa/Front"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Správa/Uživatelů"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Správa/Globální konfigurace"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Správa/Skupin"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Správa/Front/Základních údajů"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "Spravovat všechny osobní skupiny"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminComment"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminCorrespondence"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "Spravovat uživatelem definované položky"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "Spravovat skupinu"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "Spravovat Älenství ve skupinách"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "Spravovat vlastní osobní skupiny"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "Spravovat frontu"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "Spravovat uživatele"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administrativní Cc"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "PokroÄilé"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "PokroÄilé Vyhledávání"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Po"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Stáří"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Všechna schvalování prošla"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Všechny uživatelské položky"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "VÅ¡echny Fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Vždy posílá zprávu žadatelům nezávisle na odesílateli"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Provést"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Provést změny"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Schvalování"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Schválení #%1: $2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Schválení #$1: Poznámky neuloženy kvůli systémové chybě"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Schválení #%1: Poznámky uloženy"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Detaily schválení"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Schvalování prošlo"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Schvalování odmítnuto"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Schvalovací diagram"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Schválit"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Poznámky schvalovatele: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "dub"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "VzestupnÄ›"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Přiložit"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Připojit soubor"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Připojený soubor"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Příloha '%1' nemůže být nahrána"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Příloha vytvořena"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Jméno souboru přílohy"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Přílohy"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Atribut smazán"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "srp"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "AuthSystem"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Automatická odpovÄ›Ä"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automaticky odpověz žadatelům"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "Automatická odpovÄ›Ä Å¾adatelům"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "Dostupné položky"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Chybná PGP signatura: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Chybný identifikátor přílohy. Nelze nalézt přílohu'%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Chybná data v %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Chybné Äíslo transakce u přílohy. %1 má být %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Základní údaje"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Neopomeňte uložit vaše změny"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Před"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "ZaÄátek schvalování"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Prázdný"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Uložitelný odkaz"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Zkrácené hlaviÄky"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Hromadná úprava požadavků"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Nelze měnit systémové uživatele"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Může tento uživatel vidět tuto frontu"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Uživatelské položce nelze přidat hodnotu beze jména"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Nelze nalézt uložený dotaz ke zpracování"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Požadavek nelze svázat se sebou samým"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Nelze slouÄit do slouÄeného požadavku. To by se vám nemÄ›lo nikdy stát."
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Tento dotaz nelze uložit"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Nelze zadat zároveň zdroj i cíl"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Nelze vytvořit uživatele: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Změna hesla"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Zašrtnutím odstraníte"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Zatrhněte k odebrání práva"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Potomci"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Město"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Vyřešeno"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Uzavřené požadavky"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Uzavřené požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Neznámý příkaz!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Komentovat"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Adresa pro komentáře"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Komentář nezaznamenán"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Komentovat požadavky"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "Komentovat požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Poznámky"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Komentář (Neposílá se žadatelům)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Komentář (nepošle se žadatelům)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Poznámky o %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Poznámky o tomto uživateli"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Komentáře přidány"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Commit v zárodku"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Omezení překladu"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Podmínka"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Podmínky splněny..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Podmínka nenalezena"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Správa"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Potvrzení"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "Kontaktní informaÄní systém"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Datum kontaktu '%1' nemůže být rozpoznáno"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Obsah"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Kopírovat"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korespondence"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Adresa pro korespondenci"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korespondence zaznamenána"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Korespondence nebyla zaznamenána"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Nelze přidat novou hodnotu uživatelské položky požadavku. "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Nelze změnit vlastníka. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Nelze vytvořit Uživatelskou položku"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Nelze vytvořit skupinu"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Nelze vytvořit vzor: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Nelze vytvořit požadavek. Nenastavena fronta"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Nelze vytvořit uživatele"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Nelze nalézt požadavek s identifikátorem %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Nelze nalézt skupinu %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Tohoto uživatele nelze nalézt nebo vytvořit"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Nelze naléze tohoto uživatele"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Nelze nalézt uživatele %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Nelze naÄíst skupinu"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Tento uživatel nemůže být %1 této fronty"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Tento uživatel nemůže být %1 tohoto požadavku"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Tento uživatel nemůže být odstraněn jako %1 této fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Tento uživatel nemůže být odstraněn jako %1 tohoto požadavku"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Nelze nastavit uživatelské informace"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Do skupiny nelze pÅ™idat Älena"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Nelze vytvořit transakci: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Nelze zjistit co dělat s gpg odpovědí\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Skupinu nelze nalézt\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Nemohu nalézt sloupec"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Tohoto uživatele nelze nalézt"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Tuto hodnotu nelze nalézt"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Uživatele nelze nalézt\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Z uživatelské databáze nelze naÄíst %1.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "KonfiguraÄní soubor RT '%1'nelze naÄíst %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Scripy nelze naÄíst."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Skupinu %1 nelze naÄíst"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Vazbu nelze naÄíst"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Frontu nelze naÄíst"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Frontu %1 nelze naÄíst"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Scrip nelze naÄíst"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Vzor nelze naÄíst"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Uživatele (%1) nelze naÄíst"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Požadavek '%1' nelze naÄíst"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "ZemÄ›"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Vytvořit"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Vytvořit požadavky"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Vytvořit uživatelskou položku"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Vytvoření uživatelské položky pro frontu %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Vytvoření uživatelské položky pro všechny front"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Vytvořit novou uživatelskou položku"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Vytvořit nový globální scrip"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Vytvořit novou skupinu"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Vytvořit novou vlastní skupinu"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Vytvořit novou frontu"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Vytvořit nový scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Vytvořit nový vzor"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Vytvoření nového požadavku"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Vytvořit nového uživatele"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Vytvořit frontu"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Vytvořit frontu nazvanou"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Vytvořit požadavek"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Vytvořit scrips pro frontu %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Vytvořit vzor"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Vytvořit požadavek"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Vytvářet požadavky podle toho vzoru scripu"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Vytvořit požadavek"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Vytvářet požadavky v této frontě"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Vytvářet, mazat a měnit uživatelen definované položky"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Vytvářet, mazat a měnit fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Vytvářet, mazat a mÄ›nit Äleny uživatelských osobních skupin"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Vytvářet, mazat a mÄ›nit Äleny osobních skupin"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Vytvářen, mazat a měnit uživatele"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "Vytvořit požadavek"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Vytvořeno"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Uživatelská položka %1 vytvořena"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Vzor %1 vytvořen"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Tvůrce"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Aktuální relace"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Aktuální scripy"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Aktuální Älenové"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Aktuální práva"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Aktuální vyhledávací podmínky"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Aktuální pozorovatelé"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Uživatelská položka #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Uživatelské položky"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Čistící kód uživatelské akce"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Přípravný kód uživatelské akce"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Uživatelská podmínka"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Užitavelská položka %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Uživatelská položka %1 má hodnotu."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Uživatelská položka %1 nemá hodnotu."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Uživatelská položka %1 nenalezena"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Uživatelská položka smazána"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Uživatelská položka nenalezena"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Hodnota %1 nemůže být nalezena v uživatelské položce %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Hodnota uživatelské položky změněna z %1 na %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Hodnota uživatelské položky nemůže být smazána"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Hodnota uživatelské položky nemůže být nalezena"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Hodnota uživatelské položky smazána"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "Uživatelská položka"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Datumy"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "pro"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Implicitní vzor automatické odpovědi"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Implicitní fronta"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Implicitní žadatel"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Implicitní vzor administrativního komentáře"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Implicitní vzor administrativní korespondence"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Implicitní korespondenÄní vzor"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Implicitní transakÄní vzor"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Defaulní: %1/%2 změněno z %3 na %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delegovat práva"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Delegovat specifická práva, která vám byla poskytnuta."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "Delegovat práva"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Pověření"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Smazat"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Smazat vzor"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Smazat vybrané scripy"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Mazat požadavky"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "Smazat požadavek"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Smazání tohoto objektu mohlo poruÅ¡it referenÄní integritu"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Smazání tohoto objektu by mohlo poruÅ¡it referenÄní integritu"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Smazání tohoto objektu by mohlo naruÅ¡it referenÄní integritu"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Zamítnout"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Je rekvizitou pro"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Závistlosti: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Přidána závislost %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Závislost %1 smazána"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Přidána závislost na %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Závislost na %1 smazána"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Závisející na"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "SestupnÄ›"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Popište případ níže"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Popis"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Podrobnosti"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Zobrazit"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Zobrazit přístupová práva"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Zobrazované položky"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Zobrazovat scrips vzory pro tuto frontu"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Zobrazovat scripy pro tuto frontu"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Režim zobrazení"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Zobraz uložené dotazy pro tuto skupinu"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Šířeno pod verzí 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> GNU GPL.</a>"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Dělat cokoli a všechno"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "NeobÄerstvovat tuto stránku."
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Stáhnout"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Termín dokonÄení"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Datum termínu dokonÄení '%1' nemůže být rozpoznán"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "CHYBA: Nelze naÄíst požadavek '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Upravit"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Upravit uživatelské položky pro %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Upravit relace"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Upravit dotaz"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Upravit vzory pro frontu %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Úprava systémových vzorů"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Upravit vzory pro %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "Upravit Uložené Dotazy"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Úprava konfigurace pro frontu %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Úprava konfigurace pro uživatele %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Úprava uživatelské položky %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Úprava Älenství ve skupinÄ› %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Úprava Älenství ve vlastní skupinÄ› %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Úprava vzoru %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Zdroj Äi cíl musí být zadány"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Email adresa je použita"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Email adresa"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Kódování emailu"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Povolena (zrušením zatrhnutí zablokujete tuto uživatelskou položky)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Povolena (zrušením zatrhnutí zablokujete tuto skupinu)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Povoleno (zrušení zatrhnutí zablokuje tuto frontu)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Povolené uživatelské položky"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Povolené fronty"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Povolen stav %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Vyplnit více hodnot"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Zadejte objekty Äi URI k provázání. Více položek oddÄ›lujte mezerami."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Vyplnit jednu hodnotu"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Zadejte fronty Äi URI k provázání. Více položek oddÄ›lujte mezerami."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Zadejte požadavky Äi URI k provázání. Více položek oddÄ›lujte mezerami."
-
-#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
-msgstr "Zadejte požadavky Äi URI se nimiž požadavky svázat. OddÄ›lte více položek mezerami."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Chyba"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Chyba v parametrech do Queue->AddWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Chyba v parametrech do Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Chyba v parametrech do Ticket->AddWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Chyba v parametrech do Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Eskalovat požadavky"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Odhadovaný"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Kdokoli"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Příklad:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "Identifikátor externí autentizace"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "Identifikátor externího kontaktu"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Doplňkové údaje"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Nepovedlo se nalézt uživatele 'Privilegované' pseudoskupiny."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Nepovedlo se nalézt uživatele 'Neprivilegované' pseudoskupiny"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Nepovedlo se nahrát modul %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "úno"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Název souboru"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Kon"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Koncová priorita"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "Koncová priorita"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Najít skupiny které"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Najít nové/otevřené požadavky"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Najít ty, jejichž"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Nalézt požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "ZávereÄné schválení"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "První"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "První stránka"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Vynutit změnu"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Nalezen%quant(%1,,y,o) %numf(%1) %quant(%1,požadavek,požadavky,požadavků)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Nalezen objekt"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "Kontaktní údaje ve volné podobě"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "Volná forma vícenásobně"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "Volná formu jedinkrát"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "pá"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Celé hlaviÄky"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Vzít vzor ze souboru"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Dán %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Globální"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Globální vzor: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Provést"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Spusť!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Správný PGP podpis od %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Přejít na stránku"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Přejít na požadavek"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Skupina"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Skupina %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Práva skupiny"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Skupina již má Älena"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Skupina nemůže být založena: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Skupina vytvořena"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Skupina nemá takového Älena"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Skupina nenalezena"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Skupina nenalezena.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Skupina neudána.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Skupiny"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Skupiny nemohou být svými Äleny"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Ahoj!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Ahoj, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historie"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Telefon domů"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Domovská stránka"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Mám %quant(%1,míchaÄka,míchaÄky,míchaÄek)"
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "I have [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#msgstr "Mám [quant,_1,MíchaÄku na beton,MíchaÄky na beton,MíchaÄek na beton]."
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Identifikátor"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identita"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Odmítni původce a zruš stávající schválení, bylo-li zamítnuto schválení"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Nebyl-li zadán Žadatel, vytvářej požadavky jako tento žadatel"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Nebyla-li zadána fronta, vytvářej požadavky v této frontě"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Byl-li tento nástroj setgid, místní uživatel jej mohl použit k získaní administrativního přístupu k RT"
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Pokud jste změnili cokoli nahoře, nezapomeňte"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Neplatná hodnota pro %1"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Neměnitelná položka"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Zahrnout do výpisu blokované uživatelské položky"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Zahrnout blokované skupiny ve výpisu."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Zahrnout blokované fronty do výpisu."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Zahrnout blokované uživatele do vyhledávání."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "PoÄáteÄní priorita"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "PoÄáteÄní priorita"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Chyba na vstupu"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Vnitřní chyba"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Vnitřní chyba: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Neplatný typ skupiny"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Neplatné právo"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Neplatná data"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Neplatný vlastník. Použije se 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Neplatná fronta"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Neplatné právo"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Neplatná hodnota pro %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Neplatná hodnota pro uživatelskou položku"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Neplatná hodnota pro stav"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Je velmi důležité, aby neprivilegovaní uživatelé nemohli spustit tento nástroj."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Pro spuÅ¡tÄ›ní tohoto nástroje se doporuÄuje založení neprivilegovaného UNIX uživatele se správným skupinovým Älenstvím a přístupem do RT."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Používá několik parametrů:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "VÄ›ci oÄekávající mé schválení"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "led"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "PÅ™idat se Äi odebrat z této skupiny"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Äec"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Maxi"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Äen"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "KlíÄové slovo"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Jazyk"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Jazyk"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Poslední"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Poslední kontakt"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Naposled kontaktován"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Naposled upozorněn"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Naposled aktualizován"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "NaposledAktualizoval(a)"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Zbývá"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Umožnit tomuto uživateli přístup k RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Umožnit dávat tomuto uživateli práva"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Vlastník omezen na %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Fronta omezena na %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Vazba již existuje"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Vazba nemůže být vytvořena"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Vazba vytvořena (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Vazba zrušena (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Vazba nenalezena"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Svázat požadavek #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Vazby"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "NaÄíst"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "NaÄíst uložený dotaz:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "NaÄtené perlovské moduly"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Umístění"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Záznamový adresář %1 nenalezen nebo doň nemůže být zapisováno.\\ RT nemůže běžet."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Přihlášen jako %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Přihlásit"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Odhlásit"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Nastavit vlastníka"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Nastavit stav"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Nastavit datum termínu dokonÄení"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Nastavit datum vyřešení"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Nastavit datum, kdy zaÄal"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Nastavit datum, kdy zaÄne"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Nastavit datum posledního kontaktu"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Nastavit prioritu"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Nastavit frontu"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Nastavit předmět"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Správa skupin a Älenství v nich"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Správa vlastností a konfigurací platných ve všech frontách"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Správa front a jim příslušných vlastností"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Správa uživatelů a hesel"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "bře"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "kvÄ›"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Člen %1 přidán"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Člen %1 odebrán"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Člen přidán"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Člen odebrán"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Člen neodebrán"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "ÄŒlen"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Členové"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Členství v %1 přidáno"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Členství v %1 zrušeno"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "SlouÄení úspěšné"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "SlouÄení se nepodaÅ™ilo. Nelze nastavit EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "SlouÄit do"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "SlouÄen do %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Zpráva"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Zpráva nemůže být zaznamenána"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Zpráva zaznamenána"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Zprávy o tomto požadavku NEBUDOU zaslány na..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Chybí primární klíÄ?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobilní telefon"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Mobilní telefon"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Upravovat seznam přístupových práv"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Upravit uživatelskou položku %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Úprava uživatelských položek pro všechny fronty"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Úprava skupinových práv"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Upravit Äleny"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Upravit práva"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Upravovat vzory scripů této fronty"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Upravovat scripů této fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Upravovat vzor %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Upravit práva uživatelů"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Upravovat uživatelskou položku pro frontu %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Upravovat uživatelskou položku pro všechny fronty"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Upravovat scrip pro frontu %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Upravovat scrip platný ve všech frontách"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Upravit datumy pro #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Úprav datumů pro požadavek # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Úprava globálních skupinových práv"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Úprava globálních skupinových práv."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Úprava globálních scrips"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Úprava globálních uživatelských práv"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Úprava globálních uživatelských práv."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Upravovat metadata skupiny nebo smazat skupinu"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Úprava skupinových práv pro %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Úprava skupinových práv pro frontu %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Upravovat seznam Älenů pro tuto skupinu"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Upravovat vlastní RT úÄet"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Úprava uživatelů fronty %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Úprava uživatelů souvisejících s požadavkem #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Úprava scrips pro frontu %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Upravovat scripy platné ve všech frontách"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Úprava vzoru %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Upravit vzory pro všechny fronty"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Úprava skupiny %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Upravovat pozorovatele fronty"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Úprava uživatele %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Úprava požadavku # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Úprava požadavku #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Upravovat požadavky"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Úprava uživatelských práv pro skupinu %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Úprava skupinových práv pro frontu %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Úprava pozorovatelů fronty '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "Upravovat seznam přístupových práv"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "Upravovat Älenství ve skupinÄ›"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "Upravovat pozorovale fronty"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "Upravovat scripy"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "Upravovat sebe"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "Upravovat vzor"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "Upravovat požadavek"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "po"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Více o %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Dát níže"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Dát výše"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Vícenásobná"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Nutno zadat atribut 'Jméno'"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Mé požadavky ve stavu %1"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Mnou schválené"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mnou schválené"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Mé uložené dotazy"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Jméno"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Jméno je použito"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Je třeba schválení systémového správce"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Nikdy"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nové"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nové relace"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nové heslo"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nová probíhající schválení"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Nový dotaz"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nové vyhledávání"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Vytvořit uživatelskou položku"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Založit skupinu"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nové heslo"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Oznámení nového hesla zasláno"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Vytvoření fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nový požadavek"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nová práva"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Vytovření scripu"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nové vyhledání"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Vytvořit vzor"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Nový požadavek"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Nový požadavek neexistuje"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Vytvořit uživatele"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nový uživatel jména"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nový pozorovatel"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Nové nastavení okna"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Další"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Další stránka"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Další stránka"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Přezdívka"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Přezdívka"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Žádná uživatelská položka"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Nedefinována žádná skupina"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Prázdný dotaz"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Nedefinována žádná fronta"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Žádný uživatel RT nenalezen. Prosím poraÄte se se správcem RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Žádný vzor"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Neudán požadavek. Přerušuje se požadavek "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Neudán požadavek. Přerušují se úpravy požadavku\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "bez akce"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Neudán sloupec"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Příkaz nenalezen\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Poznámky k tomuto uživateli neudány"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Žádná připojená korespondence"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Pro %1 není popis"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Neudána skupina"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Zpráva nepřipojena"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Heslo nenastaveno"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Nedostatek práv k vytváření front"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Nedostatek práv k vytváření požadavků ve frontě '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Nedostatek práv k vytváření uživatelů"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Nedostatek práv k zobrazení tohoto požadavku"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Nedostatek práv k zobrazení aktualizace požadavku"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Nezadán uživatel"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Nevybráni uživatelé."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Nenalezeny žádné fronty odpovídající vyhledávací podmínce."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Práva nenalezena"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Nepřidělena žádná práva."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Bez vyhledání nelze pracovat."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Žádný předmět"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Neudán identifikátor požadavku"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Neudán typ transakce"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Nenalezeni uživatelé odpovídající vyhledávací podmínce"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Nenalezen platný uživatel RT. OvladaÄ RT CVS uvolnÄ›n. Prosím poraÄte se se svým správcem RT.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Žádná z hodnot nanastavena na _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Nikdo"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Neexistující položka"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Nepřihlášen"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Nepřihlášen."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Nenastaven"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Zatím neimplementováno."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Zatím neimplementováno..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Poznámky"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Upozornění nemůže být zasláno"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Zaslat všem AdminCc"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Zaslat všem AdminCc jako komentář"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Upozornit Ccs"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Upozornit Ccs jako komentář"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Zaslat ostatním příjemcům"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Zaslat ostatním příjemcům jako komentář"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Zaslat vlastníkovi"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Zaslat vlastníkovi jako komentář"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "/"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Zaslat vlastníkům a vÅ¡em AdminCc nové případy oÄekávající jejich schválení"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Zaslat žadatelům"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Zaslat žadatelům a všem Cc"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Zaslat žadatelům a všem Cc jako komentář"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Zaslat žadatelům, všem Cc a všem AdminCc"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Zaslat žadatelům, vÄem Cc a vÄem AdminCc jako komentář"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "lis"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objekt nemůže být vytvořen"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objekt vytvořen"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "říj"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Off-line"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Úpravy off-line"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Off-line naÄtení"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Dne"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Při komentáři"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Při korespondenci"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Při založení"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Při změně vlastníka"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Při změně priority"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Při změně fronty"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Při vyřešení"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Při změně stavu"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Při transakci"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Zobrazit jen schvalování pro požadavky založené po %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Zobrazit jen schvalování pro požadavky založení před %quant(%1)"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Otevřené"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Otevřít"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Otevřené požadavky"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Otevřené požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Otevřít požadavky (ze seznamu) v novém okně"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Otevřít požadavky (ze seznamu) v jiném okně"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Otevřít požadavky při korespondenci"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Řadit podle"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Řazení a třídění"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organizace"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Původní požadavek: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Odchozí zpráva o komentáři zaznamenána"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Odchozí zpráva zaznamenána"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Časem se priorita posouvá k"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Vlastnit požadavky"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "Vlastnit požadavek"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Vlastník"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Vlastník změněn z %1 na %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Vlastník nemůže být nastaven."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Vlastník nuceně změněn z %1 na %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Vlastník"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Stránka %1 z %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pager"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Číslo pageru"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "RodiÄe"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Heslo"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "PÅ™ipomínaÄ hesel"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Heslo příliš krátké"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Heslo: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Hesla nesouhlasí."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Hesla nesouhlasí. Vaše heslo nebylo změněno"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Uživatelé"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Provedení uživatelem definované akce"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Konfigurace Perlu"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Přístup nepovolen"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Osobní skupiny"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Vlastní skupiny"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Vlastní skupiny:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Čísla telefonů"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Zábor místa"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Nastavení"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Nastavení"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Prepare v zárodku"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Předchozí"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Předchozí stránka"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Předchozí stránka"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Uživatel %1 nenalezen."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Priorita"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Priorita zaÄíná na"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Vlastní:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilegovaný"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Privilegovaný stav: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Privilegovaní uživatelé"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudo skupina pro vnitřní použití"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Dotaz"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Tvůrce dotazu"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Fronta"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Fronta %1 nenalezena"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Fronta '%1' nenalezena\\n"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Název fronty"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Scripy fronty"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Fronta již existuje"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Fronta nemůže být vytvořena"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Fronta nemůže být naÄtena."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Fronta vytvořena"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Není zadána fronta."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Fronta nenalezena"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Fronty"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Rychlé hledání"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Rychlé založení požadavku"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 pro %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 od <a href=\"http://bestpractical.com\">Best Practival Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Správa RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "AutentizaÄní chyba RT."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT Bounce: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "KonfiguraÄní chyba RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Kritická chyba RT. Zpráva nezaznamenána!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Chyba RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT přijal poštu (%1) od sebe samého."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Samoobsluha / Uzavřené požadavky"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Proměnné RT"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT v celé své záři"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT vás nemůže autentizovat"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT nemůže nalézt žadatele přes hledání v externí databázi"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT nemůže nalézt frontu: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT nemůže ověřit tento PGP podpis. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT pro %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT pro %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT zpracoval vaše příkazy"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT je &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Šířeno pod <a href=\"http://www.gnu.org/copyleft/gpl.html\">verzí 2 GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT bere tuto zprávu jako bounce"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT zpracuje tuto zprávu tak, jako by byla nepodepsaná.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "Emailový příkazový režim RT vyžaduje PGP autentizaci. Nepodepsal jste vaši zprávu nebo váš podpis nemůže být ověřen."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "SkuteÄné jméno"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "SkuteÄné jméno"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Přidán odkaz z %1"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Smazán odkaz z %1"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Přidán odkaz na %1"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Smazán odkaz na %1"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Je odkazem z"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Odkazuje na"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Zjemnit"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Zjemnit vyhledání"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Obnovit tuto stránku %quant(%1,každou,každé,každých) %numf(%1) %quant(%1,minutu,minuty,minut)."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Odstranit AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Odstranit Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Odstranit žadatele"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Odpovědět"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Adresa pro odpovÄ›Ä"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "OdpovÄ›Ä Å¾adatelům"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Odpovědět na požadavky"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "Odpovídat na požadavky"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Žadatel"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Emailová adresa žadatele"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Žadatel(é)"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Žadatelé"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Požadavky mají být vyřešeny do"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Povinný parametr '%1' neudán"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Vynulovat"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Bydliště"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Vyřešit"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Vyřešení požadavku #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Vyřešen"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "OdpovÄ›Ä Å¾adatelům"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Výsledky"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Výsledků na stránku"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Zopakujte heslo"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Vrátit"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Nenalezeno právo %1 pro %2 %3 v mezích %4 (%5)"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Právo delegováno"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Práva přidána"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Právo naÄteno"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Právo nemůže být odebráno"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Právo nenalezeno"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Právo nenaÄteno."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Právo odebráno"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Práva"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Práva pro %1 nemohou být přidělena"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Práva nemohou být %1 odebrána"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Pravidla"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "Kořenový schvalovatel"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Řádek na stránku"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "so"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Uložit"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Uložit změny"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Uložit nastavení"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Nezapomeňte uložit změny - "
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Uložené dotazy"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip vytvořen"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Položky scripu"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip smazán"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scripy"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scripy fro %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scripy platné ve všech frontách"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Vyhledat"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Podmínky vyhledávání"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Vyhledávání schvalování"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "ZabezpeÄní:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Vidět přesnou odchozí zprávu a její příjemce"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Vidět soukromé komentáře požadavku"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Vidět sumárně požadavek"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "Vidět frontu"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Výběr skupiny"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Výběr fronty"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Výběr uživatele"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Vybrat uživatelskou položku"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Vybrat skupinu"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Vybrat více hodnot"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Vybrat jednu hodnotu"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Výběr fronty"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Výběr scripu"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Vybrat vzor"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Výběr uživatele"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "Výběr vícenásobný"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "VýbÄ›t jedineÄný"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Samoobsluha"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Zaslat e-mail všem pozorovatelům"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Zaslat e-mail všem pozorovatelům jako \"komentář\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Zaslat e-mail žadatelům a všem Cc"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Zaslat e-mail žadatelům a všem Ccs jako komentář"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Posílá zprávu všem žadatelům"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Posílá e-mail všem přesně vyjmenovaným Cc a Bcc"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Posílá e-mail Ccs"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Posílá e-mail Ccs jako komentář"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Posílá e-mail všem administrativním Cc"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Posílá e-mail všem administrativním Cc jako komentář"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Posílá e-mail vlastníkovi"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "zář"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Zobrazit"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Zobrazit sloupce"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Zobrazit výsledky"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Zobrazit schválené požadavky"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Zobrazit základní údaje"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Zobrazit odepřené požadavky"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Zobrazit podrobnosti"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Zobrazit trvající požadavky"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Zobrazit požadavky Äekající na jejich schválení"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Zobrazovat privátní komentáře požadavku"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Zobrazovat výsledky požadavku"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "Zobrazovat seznam přístupových práv"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "Zobrazit odchotí e-mail"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "Zobrazit uložené dotazy"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "Zobrazit scripy"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "Zobrazit vzor"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "Zobrazit požadavek"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "Zobrazit komentáře požadavku"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Být žadatelem Äi Cc požadavku Äi fronty"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Být AdminCc požadavku nebo fronty"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Podpis"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Příhlášen jako %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Jednoduchá"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "PÅ™eskoÄit menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Třídící klíÄ"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Třídit výsledky dle"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "Třídící pořadí"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Fáze"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Odložené"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Úvodní stránka"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "ZapoÄato"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Datum zapoÄetí '%1' nemůže být rozpoznáno"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "ZaÄíná"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "ZaÄíná"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Datum zaÄínání '%1' nemůže být rozpoznáno"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Stát"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Stav"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Změna Stavu"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Stav změněn z %1 na %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "Změna stavu"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Vzít"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Vzít požadavky"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "Vzít požadavek"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Vzato %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Předmět"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Předmět změněn na %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Odeslat"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Potvrdit model zpracování"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Úspěšné"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "ne"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "Super uživatel"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Systém"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Systémová konfigurace"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Systémová chyba"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Systémové nástroje"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Systémová chyba. Právo nedelegováno."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Systémová chyba. Právo nepřiděleno."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Systémové skupiny"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "Skupina systémovýh pravidel pro vnitřní použití"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "MíchaÄka na beton"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Vzít"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Vzít požadavky"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "Vzít požadavek"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Vzatý"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Vzor"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Vzor #%!"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Vzor smazán"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Vzor nenalezen"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Vzor nenalezen\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Vzor rozpoznán"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Vzory"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Vzory pro %1\\n"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Toto je již aktuální hodnota"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Toto není hodnota pro tuto uživatelskou položku"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Toto je shodná hodnota"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Tento uživatel již toto práva má"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Tento uživatel je již v této frontě %1"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Tento uživatel je již u tohoto požadavku %1"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Tento uživatel není v této frontě %1"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Tento uživatel není u tohoto požadavku %1"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Tata fronta neexistuje"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Tento požadavek má nevyřešené závislosti"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Tento uživatel již má toto právo"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Tento uživatel již tento požadavek vlastní"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Tento uživatel neexistuje"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Tento uživatel je již privilegován"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Tento uživatel je již neprivilegován"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Uživatel je nyní privilegován"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Uživatel je nyní neprivilegován"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "V této frontě nemůže tento uživatel vlastnit požadavky"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Toto není Äíselný identifikátor"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Základní údaje"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "Cc požadavku"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Administrativní Cc požadavku"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Komentář byl zaznamenán"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Následující příkaz najde všechny aktivní požadavky ve frontě 'general' a nastaví jejich priority na 99, pokud nebyly tknuty poslední 4 hodiny:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Následující příkazy nebyly zpracovány\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Nová hodnota nastavena."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Vlastník požadavku"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Žadatel požadavku"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Tyto komentáře nejsou běžně viditelné uživateli"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Tato funkce je dostupná jen správcům systému"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Tato zpráva BUDE poslána na..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Tento požadavek %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Tento nástroj umožňuje uživateli spustit libovolné perl moduly z RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Tato transakce vypadá, že nemá obsah"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "nejdůležitější%quant(%1, požadavek,požadavky,ch požadavků) tohoto uživatele"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "25 nejdůležitějších požadavků tohoto uživatele"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Ät"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Požadavek # %1 %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Maxi aktualizace požadavku #%1: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Požadavek #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Požadavek %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Požadavek %1 vytvořen ve frontě '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Požadavek %1 naÄten\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Požadavek %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Historie požadavku # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Identifikátor požadavku"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Požadavek vyřešen"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Příloha požadavku"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Obsah požadavku"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Typ obsahu požadavku"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Požadaven nemůže být vytvořen pro vnitřní chybu"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Požadavek vytvořen"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Nezdařilo se vytvoření požadavku"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Požadavek smazán"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Id požadavku nenalezeno"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Metadata požadavku"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Požadavek nenalezen"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Stav požadavku změněn"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Pozorovatelé požadavku"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Požadavky %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Požadavky %1 dle %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Požadavky z %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Požadavky, které záleží na tomto schválení:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "PÅ™edpokládaný Äas"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Zbývající Äas"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Čas práce"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Zbývající Äas"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Čas k zobrazení"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Čas práce"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Čas práce"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Vytvořit diff tohoto commitu:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Vytvořit diff tohoto commitu:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "K získání informací o podpoÅ™e, tréninku, zákaznických úpravách Äi licencování kontaktujte prosím %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Poslední kontakt"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Nástroje"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transakce"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transakce %1 vymazána"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transakce vytvořena"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Bez udání id požadavku nelze volat Transaction->Create"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transakce jsou neměnné"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Pokus o smazání práva: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "út"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "typ"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Neimplementováno"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unixový login"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Unixové uživatelské jméno"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Neznámé kódování obsahu %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "NeomezenÄ›"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Nepojmenovaný dotaz"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Neprivilegovaný"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Vrácen"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Aktualizace"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Aktualizovat všechny"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Identifikátor aktualizace"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Aktualizovat požadavek"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Typ aktualizace"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Aktualizovat spoleÄnÄ› vÅ¡echny tyty požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Aktualizovat email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Aktualizovat hromadně požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Aktualizovat jméno"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Aktualizace nezaznamenána"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Aktualizovat vybrané požadavky"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Aktualizace podpisu"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Aktualizace požadavku"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Aktualizace požadavku # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Aktualizace požadavku #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Aktualizace požadavku #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Typ aktualizace nebyl ani korespondence ani komentář."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Aktualizováno"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "NaÄíst"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "NaÄíst vaÅ¡e zmÄ›ny"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Uživatel %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Heslo uživatele %1: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Uživatel '%1' nemůže být nalezen"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Uživatelem definované"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Uživatelem definované podmínky a akce"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Identifikátor uživatele"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Identifikátor uživatele"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Práva uživatele"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Uživatel nemůže být vytvořen: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Uživatel vytvořen"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Uživatelem definované skupiny"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Uživatel naÄten"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Uživatel upozorněn"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Uživatelský pohled"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Uživatelské jméno"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Uživatelé"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Uživatelé odpovídající podmínce vyhledání"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Platný dotaz"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Hodnota fronty"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Hodnoty"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Být pozorovatelem"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "Být AdminCc pozorovatelem"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Pozorovatelé"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "Kódování WWW"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "st"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Přidat korespondenci k původnímu požadavku, pokud byl požadavek schválen všemi"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Přidat korespondenci k původnímu požadavku, pokud byl požadavek kýmkoli schválen"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Když je požadavek vytvořen"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Upozornit vlastníka a vÅ¡echny AdminCc, jejichž schválení se oÄekává, pÅ™i vytvoÅ™ení schvalovaného požadavku"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Stane-li se cokoli"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Je-li vyřešen požadavek"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Změní-li se vlastník požadavku"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Při změně priority požadavku"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Změní-li se fronta požadavku"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Změní-li se stav požadavku"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Splní-li se uživatelská podmínka"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Přijde-li komentář"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Přijde-li korespondence"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Zaměstnání"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Pracovat off-line"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Telefon do zaměstnání"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Odpracováno"
-
-#: NOT FOUND IN SOURCE
-msgid "XXX CHANGEME You are not an authorized user"
-msgstr "XXX ZMĚNIT Nejste autorizovaný uživatel"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Požadavek již vlastníte"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Nejste autorizovaný uživatel"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Můžete přidělit pouze požadavky, které jsou vaše nebo nejsou vlastněny"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Nemáte právo k zobrazení tohoto požadavku.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Nalezl jste %1 požadavků ve frontě %2"
-
-#??? quant
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Byl jste odhlášen od RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "V této frontě nemáte práva vytvářet požadavky."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "V této frontě nemůžete vytvářet požadavky."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Jste vítáni k dalšímu přihlášení"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Vašich %1 požadavků"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Váš správce RT chybně nastavil poštovní aliasy, které volají RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Váš požadavek byl schválen uživatelem %1. Další schválení mohou být jeÅ¡tÄ› oÄekávána."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Váš požadavek byl schválen."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Váš požadavek byl odmítnut"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Váš požadavek byl odmítnut."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "VaÅ¡e uživatelské jméno Äi heslo je nesprávné"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "PSČ"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "jak je dovoleno %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "uzavřen"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "obsahuje"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "obsah"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "typ obsahu"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "korespondence (zřejmě) neposlána"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "korespondence poslána"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dnů"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "smazat"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "smazán"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "neodpovídá"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "neobsahuje"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "je rovno"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "název souboru"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "větší než"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "skupina '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "hodin"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "Identifikátor"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "je"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "není"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "menší než"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "odpovídá"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minut"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "úpravy\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "měsíců"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nový"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "bez jména"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "znehodnotit"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "žádný"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "není rovno"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "otevřený"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "vlastní skupina '%1' pro uživatele '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "fronta %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "zamítnutý"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "vyřešený"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sek"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "odložený"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "systém %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "systémová skupina '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "volající komponenta neudala důvod"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "požadavek #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "nepopsaná skupina %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "nepopsaná skupina %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "uživatel %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "týdnů"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "se vzorem %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "roků"
-
diff --git a/rt/lib/RT/I18N/da.po b/rt/lib/RT/I18N/da.po
deleted file mode 100644
index 76e97f5..0000000
--- a/rt/lib/RT/I18N/da.po
+++ /dev/null
@@ -1,5840 +0,0 @@
-msgid ""
-msgstr ""
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr "$prefix %1"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 #%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%2 %1 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 tilføjet"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 siden"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 ændret til %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 slettet"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 med skabelon %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 denne ticket\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) af %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (Uændret)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 vist"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Et argument til afsendelse til %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Send status opdateringer til STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Specificér den aktion du ønsker at benytte"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Specificer det betingelses modul du ønsker at benytte"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Specificer det søge modul du ønsker at benytte"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 Copyright 1996-%3 %4."
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 ScripAktion indlæst"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 tilføjet som en værdi for %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 aliaser kræver en TicketID at arbejde på"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 aliaser kræver en TicketID at arbejde på (fra %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 synes at være et lokalt object, men kan ikke findes i databasen"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 af %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 ændret fra %2 til %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 kopier"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 kunne ikke sættes til %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 kun ikke initiere en transaktion (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 kunne ikke sætte status til løst. RT's Database er muligvis inkonsistent"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 oprettet"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 slettet"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "%1 højest prioriterede tickets jeg ejer"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 højest prioriterede tickets jeg ejer..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 højest prioriterede tickets jeg har anmodet om"
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 er et værktøj som reagerer på tickets fra et eksternt skedulerings værktøj såsom cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 er ikke længere en %2 for denne kø"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 er ikke længere en %2 for denne ticket."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 er ikke længere en værdi for special felt %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 er ikke en lovlig kø ID"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min."
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 nyeste ikke ejede tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 ikke vist"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 objekter"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 rettigheder"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 lykkedes"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 type er ukendt for $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 type ukendt for %2"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 vil løse samtlige alle medlemmer af en løst gruppe ticket."
-
-#MANGLER
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 vil "
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1's %2 objekter"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1's %2's %3 objekter"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1's gemte søgninger"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: ingen vedhæftet fil angivet"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' er ikke en valid status værdi"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' er ikke en genkendt aktion. "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Check box til sletning af scrip)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Check box til sletning)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Check bokse for fravalg af notificering af de listede modtagere)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Check bokse for tilvalg af notificering af de listede modtagere)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Indtast ticket ids eller URLSs, separeret af mellemrum)"
-
-#MANGLER
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Hvis ikke angivet vil defaulte til %1)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Ingen custom felter)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Ingen medlemmer)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Ingen scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Ingen templates)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Ingen)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Sender en blind karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Ændrer <b>IKKE</b> hvem som vil modtage fremtidige opdateringer.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Sender en blind karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Ændrer <b>IKKE</b> hvem som vil modtage fremtidige opdateringer.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Sender en karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Disse <b>vil</b> modtage fremtidige opdateringer.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Sender en karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Ændrer <b>IKKE</b> hvem som vil modtage fremtidige opdateringer.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Sender en karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Disse <b>vil</b> modtage fremtidige opdateringer.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Sender en karbon-kopi af denne opdatering til en komma separeret liste af e-mail adresser. Disse <b>vil</b> modtage fremtidige opdateringer.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(Benyt disse felter når du vælger 'Bruger Defineret' for en betingelse eller aktion"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(tom)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(intet navn listet)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(intet emne)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(ingen værdi)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(ingen værdier)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(kun en ticket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(afventer godkendelse)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(afventer anden Samling)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(afventer andre tickets)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(obligatorisk)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(unavngiven)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "25 højest prioriterede tickets jeg ejer..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "25 højest prioriterede tickets jeg har anmodet..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#MANGLER
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Ny ticket i\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "En blank template"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE ikke fundet"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEs kan kun blive oprettet og slettet"
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr "OG"
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Afbryder for a undgå utilsigtede ticket ændringer"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Om mig"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Adgangskontrol"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Aktion"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Aktion %1 ikke fundet"
-
-#MANGLER
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Aktion "
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Aktion committet.\\n"
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Aktion forberedt"
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Tilføj"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Tilføj AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Tilføj Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Tilføj kolonner"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Tilføj Kriterie"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Tilføj flere filer"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Tilføj Anmoder"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Tilføj værdi"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Tilføj en ny global scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Tilføj en scrip til denne kø"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Tilføj en scrip som vil virke for alle køer"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Tilføj yderligere kriterier"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Tilføj kommentarer eller svar til valgte tickets"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Tilføj medlemmer"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Tilføj nye watchers"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Tilføj, slet og editer custom felt værdier for objekter"
-
-HERTIL
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "TilføjNæsteStatus"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Tilføjede principal som %1 for denne kø"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Tilføjede principal som %1 for denne ticket"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adresse1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adresse2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Admin Kommentar"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Admin Korrespondance"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Admin Køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Admin brugere"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Amin/Global konfiguration"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Admin/Grupper"
-
-#Mangler
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Admin/Køer/Basics"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "AdminAllPersonligeGrupper"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminKommentar"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminKorrespondance"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "AdminCustomerField"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "AdminCustomFelter"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGruppe"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGruppeMedlemskab"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminEgnePersonligeGrupper"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminKø"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminBrugere"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administrativ Cc"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Avanceret"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Avanceret Søgning"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Efter"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Alder"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr "Aggregator"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "All godkendelser godtaget"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Alle custom felter"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Alle Køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Sender altid en besked til requestoren uafhængigt af besked afsenderen"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr "Og/Eller"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "Gælder for"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Foretag"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Foretag dine ændringer"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Godkendelse"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Godkendelse #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Godkendelse #%1: Noter ikke gemt grundet en system fejl"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Godkendelse #%1: Noter gemt"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Godkendelses detaljer"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Godkendelse godtaget"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Godkendelse afvist"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Godkendelses diagram"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Godkend"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Apprtover's noter: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr."
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Stigende"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Tilføj og slet custom felter"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "TilknytCustomFelter"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Vedhæft"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Vedhæft fil"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Vedhæftet fil"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Vedhæftede fil '%1' kunne ikke indlæses"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Vedhæftet fil oprettet"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Vedhæftetfilnavn"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Vedhæftede filer"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attribut Slet"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Aug."
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "AuthSystem"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Autosvar"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Autosvar til Requestere"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "AutoSvarTilRequestere"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Ubrugelig PGP Signatur: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Ubrugelig vedhæftelses id. Kunne ikke lokaliserer vedhæftet fil '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "DÃ¥rlige data i %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Ubrugeligt transaktionsnummer for vedhæftet fil. %1 skulle være %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Basics"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Vær sikker på at gemme dine ændringer"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Før"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "PÃ¥begynd godkendelse"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Binær"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Tom"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Fed"
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URl for denne søgning som kan gemmes som bookmark"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Bogmærkbart link"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Korte headers"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Masse-ticket opdatering"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Kan ikke modificere system brugere"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Kan denne principal se denne kø"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Kan ikke tilføje custom felt værdi uden et navn"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Kan ikke finde en gemt søgning til at arbejde med"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Kan ikke linke en ticket til den selv"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Kan ikke sammensætte ind i en sammensat ticket. Du skulle aldrig få denne fejl"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Kan ikke gemme denne søgning"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Kan ikke specificere både base og mål"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Kan ikke oprette bruger: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Skift adgangskode"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Vælg Alle"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Vælg boks for at slette"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Vælg boks for a indrage rettighed"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Børn"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "By"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Fravælg Alle"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Lukket"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Lukkede Tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Lukkede requests"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Lukkede requests"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Kommando ikke forstået!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Kommentar"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Kommentar adresse"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Kommentar ikke skrevet"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Kommentér på tickets"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "KommenterPÃ¥Ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Kommentarer"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Kommentarer (ikke sendt til requestere)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Kommentarer (ikke sendt til requestere)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Kommentarer på %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Kommentarer om denne bruger"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Kommentarer tilføjet"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Commit Ryddet"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Oversættelses Restriktioner"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Betingelse"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Betingelser matcher..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Betingelse ikke fundet"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfiguration"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Bekræft"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "KontaktInfomationsSystem"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Dato kontaktet: '%1' kunne ikke parses"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Indhold"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Content-Type"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Kopier"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korrespondance"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Korrespondance adresse"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korrenspondance tilføjet"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Korrespondance ikke gemt"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Ikke muligt at tilføje ny custom felt værdi for ticket. "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr "Kunne ikke tilføje ny custom felt værdi"
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Kunne ikke tilføje ny custom felt værdi. %1"
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Ikke muligt at skifte ejer"
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Ikke muligt at oprette Custom felt"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Kunne ikke oprette CustomField: %1"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Ikke muligt at oprette gruppe"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Ikke muligt at oprette template: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Ikke muligt at oprette ticket. Kø ikke sat"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Ikke muligt at oprette bruger"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Ikke muligt at finde ticket med id %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Ikke muligt at finde gruppe %1"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Ikke muligt at finde eller oprette den bruger"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Ikke muligt at finde principal"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Ikke muligt at finde bruger %1"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Kunne ikke indlæse CustomFelt %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Ikke muligt at indlæse gruppe"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Kunne ikke g¯re den principal %1 for denne k¯"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Kunne ikke g¯re den prinicipal %1 for denne ticket"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Kunne ikke fjerne den principal %1 for denne k¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "msgstr "Kunne ikke fjerne den principal %1 for denne ticket" "
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Kunne ikke sætte bruger info"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Kunne ikke tilf¯je medlem til gruppe"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Kunne ikke oprette en lave transaktion: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Kunne ikke afg¯re hvad som skulle foretages ud fra GPG's svar\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Kunne ikke finde gruppe\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Kunne ikke finde row"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Kunne ikke finde den principal"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Kunne ikke finde den værdi"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Kunne ikke finde bruger\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Kunne ikke indlæse %1 fra bruger database.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Kunne ikke indlæse klasse %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Kunne ikke indlæse CustomField %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Kunne ikke indlæse RT konfigurations fil '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Kunne ikke indlæse Scrips."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Kunne ikke indlæse gruppe %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Kunne ikke indlæse link"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Kunne ikke indlæse object %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Kunne ikke indlæse k¯"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Kunne ikke indlÊse k¯ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Kunne ikke indlÊse scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Kunne ikke indlÊse template"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Kunne ikke indlÊse den bruger (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Kunne ikke indlÊse ticket '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Land"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "opret"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "opret Tickets"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "opret et Custom felt"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "opret et Custom felt for k¯ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "opret et Custom felt som gÊlder for alle k¯er"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "opret et nyt Custom felt"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "opret en ny global scrip"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "opret en ny gruppe"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "opret en ny personlig gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "opret en ny gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "opret en ny scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "opret en ny template"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "opret en ny ticket"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "opret en ny bruger"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "opret en ny k¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "opret en k¯ med navnet"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "opret en request"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "opret en scrip for k¯ %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "opret en template"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "opret en ticket"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "opret en ny ticket baseret p denne scrip's template"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "opret ticket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "opret tickets i denne k¯"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "opret, slet og rediger custom felter"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "opret, slet og rediger k¯er"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "opret, slet og rediger medlemmerne af vilkÂrlig brugers personlige grupper"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "opret, slet og rediger medlemmernes personlie grupper"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "opret, slet og rediger brugere"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr "OpretGemtSøgning"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "OpretTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Oprettet"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Oprettede Customer felt %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Oprettede template %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Opretter"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Nuværende relationer"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Nuværende Scrips"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Nuværende medlemmer"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Nuværende rettigheder"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Nuværende søgekriterier"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Nuværende watchere"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Custom Felt #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Custom Felter"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Custom Felter for %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Custom aktion oprydnings kode"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Custom aktion forberedelses kode"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Custom betingelse"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Custom felt %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Custom felt %1 har vÊrdi."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Custom felt %1 har ingen vÊrdi."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Custom felt %1 ikke fundet"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Custom felt slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Custom felt ikke fundet"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Custom felt vÊrdi %1 kunne ikke blive fundet for custom felt %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Custom felt vÊrdi Êndret fra %1 to %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Custom felt vÊrdi kunne ikke slettes"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Custom felt vÊrdi kunne ikke findes"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Custom felt vÊrdi slettet"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "CustomFelt"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Datoer"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dec."
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Default Autosvars Template"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Default autosvars template"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Default Kø"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Default Requestor"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Default administrator kommentar template"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Default administrator korrespondance template"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Default korrespondance template"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Default transaktions template"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Default: %1/%2 Êndret til %3 to %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Overdrag rettigheder"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Overdrag specifikke rettigeder som er blevet tildelt til dig."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "OverdragRettigheder"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Overdragelse"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Slet"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Slet Template"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Slet valgte scrips"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Slet tickets"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "SletTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Sletning af dette objekt kan ¯delÊgge referentiel integritet"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Sletning af dette objekt vil ¯delÊgge referentiel integritet"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Sletning af dette objekt vil stride mod referentiel integritet"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Afvis"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Afhængighed til"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Afhængigheder: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Afhængighed til %1 tilf¯jet"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Afhængighed til %1 slettet"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Afhængighed af %1 tilf¯jet"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Afhængighed af %1 slettet"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Afhængig af"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Faldende"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Beskriv problemet nedenfor"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Beskrivelse"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Detaljer"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Vis"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Vis Adgangs Kontrol Liste"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Vis Kolonner"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Vis Scrip templates for denne kø"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Vis scrips for denne kø"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Visnings modus"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Vis gemte søgninger fir denne gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Vis ticket #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Distribueret under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> af GNU GPL'en.</a>"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Gør noget og alting"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Foretag Søgningen"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Genindlæs ikke denne side-"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Vis ikke søge resultater"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Download"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Download som en tab-opdelt fil"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Forfaldende"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Forfaldsdato '%1' kunne ikke parses"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "FEJL: Kunne ikke indlæse ticket '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Editér"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Editér customer felter for %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Editér forhold"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Editér Søgning"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Editér Templates for kø %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "Editér gemte søgniner for denne gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Editér scrips"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Editér system templates"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Editér templates for %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "EditerGemteSøgninger"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Editér Konfiguration for kø %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Editerer Konfiguration for bruger %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Editerer Custom felt %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Editerer medlemskab for gruppe %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Editerer medlemskab for personlig gruppe %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Editerer template %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Enten base eller mål skal være specificeret"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "E-mail"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "E-mail adresse i brug"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "E-mailAdresse"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "E-mail encoding"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Aktiveret (Fravalg af denne boks deaktiverer dette custom felt)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Aktiveret (Fravalg af denne boks deaktiverer denne gruppe)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Aktiveret (Fravalg af denne boks deaktiverer denne kø)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Aktiverede Custom felter"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Aktiverede Køer"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Aktiverede status %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Tilvalgt status: %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Indtast flere værdier"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Angiv objecter eller URIs for linkning af objekter. Separér flere med mellemrum"
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Indtast en værdi"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Angiv køer eller URIs til linkning køer til. Separér flere med mellemrum"
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Indtast tickets eller URIs for linkning af tickets. Separer flere værdier med mellemrum."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Skriv op til %1 værdier"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Fejl"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Fejl i parametre til Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Fejl i parametre til Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Fejl i parametre til Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Fejl i parametre til Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Fejl i parametre til Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Fejl i parametre til Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Eskalér tickets"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Estimeret"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Alle"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Eksempel:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "ExternalAuthId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternalContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Ekstra information"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Fejlede i lokalisering 'Priviledged' brugere pseudogruppe."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Fejlede i lokalisering af 'Unproviledged' brugere pseudogruppe"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Fejlede i indlæsningen af modul %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Filnavn"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Udfyld flere tekst områder"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Udfyld i et tekst område"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Udfyld op til %1 tekst områder"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Slut"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Endelig Prioritet"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "EndeligPrioritet"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Find gruppe hvis"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Find grupper hvis"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Find nye/Ã¥bne tickets"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Find folk hvis"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Find tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Afslut godkendelse"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Første"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Første side"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "gennemtving ændring"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Fandt %quant(%1,ticket)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Fandt Objekt"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "Freeform"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FreeformMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FreeformSingle"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Fre."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Fulde headers"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Hent template fra fil"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Henter the nuværende bruger fra en PGP signatur\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Givet til %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Globale custom felter"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Globale Scrips"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Global custom felt configuration"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Global template: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Go"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Start!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "God PGP signatur fra %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "GÃ¥ til side"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "GÃ¥ til ticket"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Gruppe %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Gruppe Rettigheder"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Gruppe har allerede medlem"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Gruppe kunne ikke blive oprettet: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Gruppe oprettet"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Gruppen har sådan et medlem"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Gruppe ikke fundet"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Gruppe ikke fundet.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Gruppe ikke angivet.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grupper"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Grupper kan ikke være medlemmer af deres medlemmer"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Grupper som matcher søge kriterier"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Grupper denne bruger hører til"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hej!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hej, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historie"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Historie for gruppen %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Historie for brugeren %1"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "HjemmeTelefon"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Homepage"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Jeg har %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "Jeg har [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr "jeg er fortabt"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identitet"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Hvis en godkendelse bliver afvist, afvis den originale og slet ventede godkendelser"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Hvis ingen Requestor er specificeret, opret da tickets med denne requestor"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Hvis ingen kø er oprettet, opret tickets i denne kø"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Hvis dette værktøj var setgid, kunne en fjendtlig bruger benytte dette værktøj til at opnå administrat adgang til RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Hvis du har opdateret noget ovenfor, vær da sikker på at"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Ulovlig værdi for %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Billede"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Uforanderligt felt"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Medtag deaktiverede custom felter i liste."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Inkludér ikke tilvalgte grupper i denne liste."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Medtag deaktiverede køer i liste."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Medtag deaktiverede brugere i liste."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr "Ukomplet Søgning"
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr "Ukomplet søgning"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Initiel Prioritet"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "InitielPrioritet"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Input fejl"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Intern Fejl"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Intern Fejl: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Ikke valid Gruppe Type"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Ikke valid Rettighed"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Ikke valide data"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Ikke valid ejer, Default'er til 'nobody'"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Ikke valid kø"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Ikke valid rettighed"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Ikke valid værdi for %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Ikke valid værdi for custom felt"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Ikke valid værdi for status"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Det er af højeste vigtighed at ikke-privilegerede brugere ikke får adgang til at køre dette værktøj."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Det anbefales at du opretter en ikke-priviligeret unix bruger med det korrekte gruppe medlemsjab og RT adgang for at benytte dette værktøj."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Det tager adskellige argumenter:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr "Kursiv"
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Elementer som afventer min godkendelse"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Tilslut eller forlad denne gruppe"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jumbo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Nøgleord"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Sprog"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Sprog"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Stor"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Sidste"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Sidste kontakt"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Sidst kontaktet"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Sidst Notificeret"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Sidst Opdateret"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "SidstOpdateretAf"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Tilbage"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Lad denne bruger få adgang til RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Lad denne bruger få rettigheder"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Begrænser ejer til %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Begrænser kø til %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Link eksisterer allerede"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Link kunne ikke blive oprettet"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Link oprettet (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Link slettet (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Link ikke fundet"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Link ticket #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Links"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Indlæs"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Indlæs gemt søgning:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr "IndlæsGemtSøgning"
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Indlæste Perl moduler"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Lokation"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Log directory %1 kunne ikke findes eller skrive til.\\n RT kan ikke køre."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Logget ind som %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Log ind"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Log ud"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Opslagstype misforhold"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Lav Ejer"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Lav Status"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Sæt forfaldsdato"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Sæt løsnings dato"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Sæt start dato"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Sæt startes dato"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Sæt dato fortalt"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Sæt Prioritet"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Sæt kø"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Sæt emne"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr "Gør denne gruppe synlig for bruger"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Administrer custom felter og custom felt værdier"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Administrer grupper og gruppe medlemskab"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Administrer egenskaber og konfiguration som gælder for alle køer"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Administrer køer og kø-specifikke egenskaber"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Administrer brugere og adgangskoder"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Maj."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Medlem %1 tilføjet"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Medlem %1 slettet"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Medlem tilføjet"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Medlem slettet"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Medlem ikke slettet"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Medlem af"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Medlemmer"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Medlemskan af %1 tilføjet"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Medlemskab af %1 slettet"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Medlemskaber"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Medlemskaber for brugeren %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Sammensmeltning succesfuld"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Sammensmeltning fejlede. Kunne ikke sætte EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr "Sammensmeltning mislykkedes. Kunne ikke sætte status"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Sammensmelt med"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Sammensmeltet med %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Besked"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Besked kunne ikke blive gemt"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Besked gemt"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Beskeder angående denne ticket vil ikke blive sent til..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr "Ikke-matchende parenteser"
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Mangler en primærnøgle?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobil"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "MobilTelefon"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modificér Adgangs Kontrol Liste"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Modificér Custom Felt %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr "Modificér Custom Felter som gælder for %1 for alle %2"
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Modificér Customer Felter som gælder for alle %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Modificér Custom felter som gælder for alle køer"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Modificér Gruppe Rettigheder"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Modificér Medlemmer"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Modificér Rettigheder"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modificér Scrip templates for denne kø"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modificér Scrips for denne kø"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Modificér Template %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Modificér Brugerrettigheder"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modificér CustomFelt for kø %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Modificér CustomFelt som gælder for alle køer"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modificér et scrip for kø %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modificér et scrip som gælder for alle køer"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Modificér objekter associerede med %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modific+er datoer for #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modificér datoer for ticket # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr "Modificér globale custom felter"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modificér globale gruppe rettiheder"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modificér globale gruppe rettiheder"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Modificér globale scrips"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modificér globale bruger rettiheder"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modificér globake bruger rettigehder"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Modificér gruppe metadata eller slet gruppe"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Modificér gruppe rettigheder for custom felter %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modificér gruppe rettigheder for gruppe %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modificér gruppe rettigheder for kø %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Modificér medlemskabsliste for denne gruppe"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modificér ens egen RT konto"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modificér folk relateret til kø %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modificér folk relateret til ticket #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modificér scrips for kø %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modificér scrips som gælder for alle køer"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Modificér template %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modificér templates som gælder for alle køer"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modificér gruppen %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modificér kø watchers"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modificer brugeren %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modificer ticket # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modificer ticket #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modificer tickets"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Modificér brugerrettigheder custom felter for %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modificer bruger rettigheder for gruppe %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modificer bruger rettigheder for kø %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Modificer watchers for kø '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModificerACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "ModifyCustomField"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ModificerEgetMedlemskab"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModificerQueueWatchers"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModificerScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModificerSelv"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModificerTemplate"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModificerTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Man."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Mere om %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Flyt ned"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Flyt op"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Flere"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "'Name' attribut skal angives"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Mine %1 tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Mine Godkendelser"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mine godkendelser"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Mine gemte søgninger"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Navn"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Navn i brug"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Behøver godkendelse af system adminstrator"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Aldrig"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Ny"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nye relationer"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Ny adgangskode"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Ny afventende godkendelse"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Ny Søgestreng"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Ny Søgning"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nyt custom felt"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Ny gruppe"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Ny adgangskode"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Ny adgangskode notifikation afsendt"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Ny kø"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Ny request"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nye rettigheder"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Ny scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Ny søgning"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Ny template"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Ny ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Ny ticket eksisterer ikke"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Ny bruger"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Ny bruger kaldet"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nye watchers"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Ny vindues indstilling"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Næste"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Næste Side"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Næste side"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "NickName"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Nickname"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Ingen klasse defineret"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Intet Custom felt"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Intet CustomField defineret"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Ingen grupper definerede"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Ingen Søgestreng"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Ingen kø defineret"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Ingen RT bruger fundet. Kontakt venligst din RT administrator.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Ingen Template"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Ingen ticket angivet. Afbryder ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Ingen ticket angivet. Afbryder ticket ændringer\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Ingen aktion"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Ingen kolonne angivet"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Ingen kommando fundet\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Ingen kommentar inddateret for denne bruger"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Ingen korrespondance vedhæftet"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Ingen beskrivelse af %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Ingen gruppe angivet"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Ingen grupper som matcher søge kriterier fundet"
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Ingen medelelse vedhæftet"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Ingen adgangskode sat"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Ingen rettighed til at oprette køer"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Ingen adgang til at oprette tickets i denne kø '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Ingen rettighed til at oprette brugere"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Ingen adgang til at vise denne ticket"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Ingen adgang til at vise opdater ticket"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Ingen principal angivet"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Ingen principaler valgt."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Ingen køer fundet som matcher søge kriterie."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Ingen rettigheder fundet"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Ingen rettigheder tildelt."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Ingen søgning at arbejde med."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Intet emne"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Ingen ticket id angivet"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Ingen transaktions type angivet"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Ingen brugere fundet som matcher søge kriterie"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Ingen valid RT bruger fundet. RT CVS handler frakoblet. Kontakt venligst din RT administrator.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Ingen værdi sent til _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Ingen"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Ikke eksisterende felt?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Ikke logget ind"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Ikke logget ind."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Ikke sat"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Endnu ikke implementeret."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Endnu ikke implementeret..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Noter"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Notification kunne ikke sendes"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Notificér AdminCc'ere"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Notificér AdminCc'ere som kommentar"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Notificér Ccs"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Notificér Ccs som Kommentarer"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Notificér andre modtagere"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Notificér andre modtagere som kommentar"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Notificér ejer"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Notificér ejer som kommentar"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "Notificér ejer om deres afviste ticket"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "Notificér ejere om deres ticket er blevet godkendt af alle Approvere"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "Notificér ejere om deres ticket som er blevet godkendt af Approver"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Notificér ejere og AdminCc'ere om nye emner som afventer deres godkendelse"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Notificér Requestere"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Notificér Requestere og Cc'ere"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Notificér Requestere og Cc'ere som kommentar"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Notificér Requestere, Cc'ere og AdminCc'ere"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Notificér Requestere, Cc'ere og AdminCc'ere som kommentar"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "ELLER"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objekt kunne ikke oprettes"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "Objekt kunne ikke slettes"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objekt oprettet"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Objekt slettet"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Objekt af typen %1 kan ikke håndtere custom felter"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Objekt type misforhold"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Okt."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Offline"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Offline editeringer"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Offline upload"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Ved"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Ved kommentar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Ved korrespondance"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Ved oprettelse"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Ved ejerskifte"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Ved prioritets ændring"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Ved køskifte"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Ved løsning"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Ved statusskifte"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Ved transaktion"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Vis kun godkendelser for requests oprettet efter %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Vis kun godkendelser for requests oprettet før %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Ã…ben"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Ã…ben den"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Ã…ben requests"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Ã…ben tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Ã…ben tickets (fra liste) i et nyt vindue"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Ã…ben tickets (fra liste) i andet vindue"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Ã…ben tickets ved korrespondance"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Sortér efter"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Orden og sortering"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisation"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Oprindelig ticket: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Udgående e-mail omkring en kommentar gemt"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Udgående e-mail gemt"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Tid overskredet, prioritet går mod"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Egne tickets"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "EgenTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Ejer"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Ejere ændret fra %1 til %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Ejer kunne ikke defineres."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Ejer skiftet forceret fra %1 to %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Ejer er"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Side %1 af %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Bipper"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "BipperTelefon"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Forældre"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Adgangskode"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Adgangskode husker"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Adgangskode ændret"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Adgangskode for kort"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Adgangskode: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Adgangskoder matcher ikke."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Adgangskoder matcher ikke. Din adgangskode er ikke blevet skiftet"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Folk"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Udfør en bruger-defineret aktion"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl konfiguration"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Adgang afvist"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Personlige Grupper"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Personlige grupper"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Personlige grupper:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefon numre"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Placeholder"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Præferencer"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Præferencer"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Prepare ryddet"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Forr."
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Forrige Side"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Forrige side"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Principal %1 ikke fundet."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioritet"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioritet starter ved"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Privat:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Priviligeret"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Priviligeret status: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Priviligerede brugere"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogruppe til intern brug"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Søgestreng"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Søgestrengs Bygger"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Kø"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Kø %1 ikke fundet"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Kø '%1' ikke fundet\\n"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Kø Navn"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Kø Scrips"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Kø eksisterer allerede"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Kø kunne ikke oprettes"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Kø kunne ikke indlæses"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Kø oprettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Kø ikke angivet"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Kø ikke fundet"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Køer"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Kø søgning"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Kvik ticket oprettelse"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 for %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 fra <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT Administration"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT Authentikeringsfejl."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT Bounce: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT Konfigurationsfejl"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RT Kritisk fejl. Meddelelse ikke gemt!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Fejl"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT modtog e-mail (%1) fra sig selv"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Selv-betjening / Lukkede Tickets"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "RT Variable"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT set fra oven"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT kunne ikke authentikere dig"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT kunne ikke finde requester via sit eksterne database opslag"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT kunne ikke finde køen: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT kunne ikke validere denne PGP signatur. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT for %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT for %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT har processeret dine kommandoer"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT er &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Bliver distribueret under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 af 'GNU General Public License'.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT mener at denne besked er en afvisning"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT vil processere denne besked som var den var usigneret.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT's e-mail kommando modus kræver PGP authentikering. Enten har du ikke signeret din besked, eller også kunne din signatur ikke verificeres."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Fulde Navn"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "FuldeNavn"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Reference fra %1 tilføjet"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Reference fra %1 slettet"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Reference til %1 tilføjet"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Reference til %1 slettet"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Referreret til af"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Refererer til"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Forfin"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Forfin søgning"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Genindlæs denne side hver %1 minutter"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Fjern AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Fjern Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Fjern Requestor"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Svar"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Svar Adresse"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Svar til requestors"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Svar på tickets"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "SvarPÃ¥Ticket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Requestor"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Requestor e-mail adresse"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Requestor(s)"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Requestors"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Request skulle være forefaldende om"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Påkrævet parameter '%1' ikke specificeret"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Reset"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Residens"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Løs"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Løs ticket #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Løst"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Svar til requestors"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Resultater"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Resultater per side"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Genskriv adgangskode"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Faldtilbage"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Rettighed %1 ikke fundet for %2 %3 i scope %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Rettighed overdraget"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Rettighed Tildelt"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Rettighed Indlæst"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Rettighed kunne ikke inddrages"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Rettighed ikke fundet"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Rettighed ikke indlæst."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Rettighed inddraget"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Rettigheder"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Rettigheder kunne ikke tildeles %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Rettigheder kunne ikke inddrages for %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Roller"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootGodkendelse"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Rækker per side"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Lør."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Gem"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Gem Ændringer"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Gem Præferencer"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Gem Ændringer"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Gemte søgninger"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip Oprettet"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Scrip Felter"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip slettet"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scrip for %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrips som gælder for alle køer"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Søg"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Søgekriterier"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Søg efter godkendelser"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Sikkerhed:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Se custom felter"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "See nøjagtige udgående e-mail beskeder og deres modtagere"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Se ticket private kommentarer"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Se ticket sammenfatninger"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "SeCustomFelt"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr "SeGruppe"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "SeKø"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Vælg"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Vælg et Custom felt"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Vælg en gruppe"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Vælg en kø"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Vælg en kø til din næste nye ticket"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Vælg en bruger"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Vælg custom felt"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Vælg custom felter for alle brugergrupper"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr "Vælg custom felter for alle brugere"
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr "Vælg custom felter for tickets i alle køer"
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Vælg custom felter for transaktioner på tickets i alle køer"
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Vælg gruppe"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Vælg flere værdier"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Vælg en værdi"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Vælg kø"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Vælg scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Vælg template"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Vælg op til %1 værdier"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Vælg bruger"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "VælgFlere"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "VælgEnkelt"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Valgte Custom Felter"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Valgte objekter"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Selv-betjening"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Send e-mail til alle watchers"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Send e-mail til alle wathers som en \"kommentar\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Sender e-mail til requestors og Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Sender e-mail til requestor og Ccs som en kommentar"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Sender en besked til requestorne"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Sender e-mail til explicit listede Ccs og Bccs"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Sender e-mail til Cc'ere"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Sender e-mail to Ccøere som en kommentar"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Sender e-mail til de administrative Ccs"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Sender e-mail til de administrative Cc som en kommentar"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Sender e-mail til ejeren"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Vis"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Vis Godkendelser"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Vis Kolonner"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Vis Resultater"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Vis godkendte requests"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Vis basic"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Vis afviste requests"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Vis detaljer"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Vis afventede requests"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Vis requests som afventer andre godkendelser"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Vis ticket private kommentar"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Vis ticket opsummeringer"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "VisACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr "VisKonfigurationTab"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "VisUdgåendeEmail"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "VisGemteSøgninger"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "VisScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "VisTemplate"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "VisTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "VisTicketKommentarer"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Tilmeld som en ticket requestor eller ticket eller kø Cc"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Tilmeld som en ticket eller kø AdminCc"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Signatur"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Tilsluttet som %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Enkelt"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Skip Menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Lille"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Sorter"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Sorteringsnøgle"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Sorter resultat efter"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "SorteringsOrden"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Trin"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Stalled"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Start side"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Startet"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Startet dato '%1' kunne ikke parses"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Starter"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Starter den"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Starter dato '%1' kunne ikke parses"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Tilstand"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Status Ændring"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status ændret fra %1 til %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "StatusÆndring"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Stjæl"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Stjæl tickets"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "StjælTicket"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Stjålet fra %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Emne"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Emne ændret til %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Send"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Send Workflow"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Lykkedes"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Søn."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperBruger"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "System"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "System Konfiguration"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "System Fejl"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "System Værktøjer"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "System fejl. Rettighed ikke overdraget"
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "System fejl. Rettighed ikke tildelt"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "System grupper"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolleGruppe for intern brug"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Tag"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Tag tickets"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "TagTickets"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Taget"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Template"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Template #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Template slettet"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Template ikke fundet"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Template ikke fundet\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Template parset"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Templates"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Templates for %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Tekst"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Det er allerede den nuværende værdi"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Det er ikke værdi for dette custom felt"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Det er den samme værdi"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Den principal har allerede den rettighed"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Den principal er allerede en %1 for denne kø"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Den principal er allerede en %1 for denne ticket"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Den principal er ikke en %1 for denne kø"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Den principal er ikke en %1 for denne ticket"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Den kø eksisterer ikke"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Denne har ticket har uløste afhængigheder"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Den bruger har den rettighed"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Brugeren ejer allerede den ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Brugeren eksisterer ikke"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Brugere er allerede priviligeret"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Brugeren er allerede upriviligeret"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Brugeren er nu priviligeret"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Brugere er nu upriviligeret"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Den bruger må ikke eje tickets i den kø"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Det er ikke en numerisk værdi"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Det Grundlæggende"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "CC for en ticket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Den administrative CC for en ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Kommentarer er blevet gemt"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Den følgende kommando vil finde alle aktive tickets i køen 'general' og vil sætte deres prioritet til 99 hvis de ikke er blevet rørt i 4 timer:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "De følgende kommandoer blev ikke processeret:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Den nye værdi er blevet sat"
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Ejeren af en ticket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Anmoderen af en ticket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Disse kommentarer er ikke generelt synlige for brugeren"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Dette custom felt gælder ikke for dette objekt"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Denne feature er kun tilgængelig for system administratorer"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Denne besked vil blive sendt til..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Denne ticket %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Dette værktøj tillader brugeren at benyttet vilkårlige Perl moduler inde fra RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Denne transaktion synes ikke at have noget indhold"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Denne brugers højest prioriterede tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "Denne bruger 25 højest prioriterede tickets"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Tors."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "ticket # %1 %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "ticket #%1 Jumbo opdatering: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "ticket #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Ticket %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "ticket %1 oprettet i kø '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Ticket %1 indlæst\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Ticket %1 : %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Ticket Custom Felter"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Ticket Historie # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Ticket ID"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Ticket Løst"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Ticket Transaktioner"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Ticket vedhæftet fil"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Ticket indhold"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Ticket indholds type"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Ticket kunne ikke oprettes pga. en intern fejl"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Ticket oprettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Ticket oprettelse mislykkedes"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Ticket slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Ticket ID ikke fundet"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Ticket metadata"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Ticket ikke fundet"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Ticket status ændret"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Ticket iagtagere"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr "TicketSQL søge modul"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Tickets %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Tickets %1 af %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tickets fra %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tickets som afhænger af denne godkendelse:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Tid Estimeret"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Resterende tid"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Tid Arbejdet"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Resterende tid"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tid for visning"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Tid arbejdet"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TidArbejdet"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "For at generere en diff af denne commit:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "For at generere en difference af denne commit:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Forespørgsel ang. support, træning, special udvikling eller licensering, kontakt venligst %1"
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Fortalt"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Værktøjer"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transaktion"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transaktion %1 tømt"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transaktion Oprettet"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Transaktions Custom Felter"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaktion->Opret kunne ikke gennemføres, da du ikke specificerede en ticket id"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transaktion->Opret kunne ikke gennemføres, da du ikke specificerede en object type og id"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transaktioner er uforanderlige"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Forsøger at slette en rettighed: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Tirs."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Type"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Uimplementeret"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unix login"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "UnixBrugernavn"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Ukendt ContentEncoding %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr "Ukendt felt: $key"
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ubegrænset"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Unavngiven søgning"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Upriviligeret"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Ikke-valgte Custom Felter"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Ikke-valgte objekter"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Ikke-tagede"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Opdater"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Opdatér Alle"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Opdater ID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Opdatér Ticket"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Opdatér type"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Opdatér alle disse tickets på en gang"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Opdatér email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Opdatér flere tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Opdatér navn"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Opdatering ikke registreret"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Opdatér valgte tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Opdatér signatur"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Opdatér ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Opdatér ticket # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Opdatér ticket #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Opdatér ticket #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Opdaterings type var hverken korrespondance eller kommentar"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Opdateret"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Upload"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Upload flere filer"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Upload flere billeder"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Upload en fil"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Upload et billede"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Upload op til %1 filer"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Upload op til %1 billeder"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Upload dine ændringer"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Bruger %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Bruger %1 Adgangskode: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Bruger '%1' kunne ikke findes"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Bruger '%1' ikke fundet"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Bruger '%1' ikke fundet\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Bruger defineret"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Bruger definerede betingelser og aktioner"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Bruger ID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Bruger ID"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Bruger Rettigheder"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "Bruger bad om en ukent opdateringstype for custom felt %1 for %1 objekt #%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Bruger kunne ikke oprettes: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Brugere oprettet"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Bruger definerede grupper"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Bruger indlæst"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Bruger notificeret"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Bruger visning"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Bruger-definerede grupper"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Brugernavn"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Brugere"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Brugere som matcher søgekriterier"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Valid Søgestreng"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "KøVærdi"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Værdier"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Watch"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "WatchSomAdminCC"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Watchers"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebEncoding"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Ons."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Når en ticket er blevet godkendt af alle Approvers, tilføj korrespondance til den originale ticket"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Når en ticket er blevet godkendt af hvilken som helst Approver, tilføj korrespondance til den originale ticket"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "NÃ¥r en ticket bliver oprettet"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "NÃ¥r en godkendelses ticket bliver lavet, notificer Ejer og AdminCc af delen som afventer deres godkendelse"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "NÃ¥r hvad som helst sker"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Når en ticket bliver løst"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Når en tickets ejer ændres"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Når en ticketøs prioritet ændres"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Når en tickets kø ændres"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Når en tickets status ændres"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "NÃ¥r en bruger defineret betingelse opfyldes"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "NÃ¥r kommentarer kommer ind"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "NÃ¥r korrespondance ankommer"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Arbejde"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Arbejd offline"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Arbejdstelefon"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Arbejdede"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Du ejer allerede denne ticket"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Du er ikke en authoriseret bruger"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Du kan kun tildele tickets du ejer eller som ikker ejet"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Du har ikke tilladelse til at se den ticket.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Du fandt %1 tickets i kø %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Du er blevet logget ud af RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Du har ikke tilladelse til at lave requests i den kø"
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Du må ikke oprette requests i den kø"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Du er velkommen til at logge ind igen"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Din %1 anmodning"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Din RT administrator har ikke konfigureret mail aliaser som starter RT korrekt "
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Din anmodning er blevet godkendt af %1. Andre godkendelser afventer muligvis stadigvæk"
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Din anmodning er blevet godkendt"
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Din anmodning blev afvist"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Din anmodning blev afvist"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Dit brugernavn eller adgangskode er ukorrekt"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Postnummer"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "tillad oprettelse af gemte søgninger"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "tillad indlæsning af gemte søgninger"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "som givet til %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr "tilhører"
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "lukket"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "indeholder"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "indhold"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "content-type"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "korrespondance (muligvis) ikke sendt"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "korrespondance afsendt"
-
-#: NOT FOUND IN SOURCE
-msgid "current: $current, want $want, Error near ->$val<- expecting a "
-msgstr "nuværnede: $current, vil have $want, Fejl nær ->$val<- forventer "
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dage"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "slet"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "slettet"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr "tilhører ikke"
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "matcher ikke"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "indeholder ikke"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "lig med"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr "fejl: kan ikke flytte ned"
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr "fejl: kan ikke flytte til venstre"
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr "fejl: kan ikke flytte op"
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "fejl: intet at slette"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr "fejl: intet at flytte"
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr "fejl: intet at skifte"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "filnavn"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "større end"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "gruppe '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "timer"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "id"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "er"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "er ikke"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "mindre end"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "matcher"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min."
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minutter"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "ændringer\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "måneder"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "ny"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "intet navn"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "ingen værdi"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ingen"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ikke lig med"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "Ã¥ben"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "personlig gruppe '%1' for bruger '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "kø %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "afvist"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "løst"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sek."
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr "vis Konfigurations tab"
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "regneark"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "stallet"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "system %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "system gruppe '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "den kaldende komponent specificerede ikke hvorfor"
-
-#: NOT FOUND IN SOURCE
-msgid "ticket #%1"
-msgstr "ticket #%1"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ticket #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "ubeskrevet gruppe %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "ubeskrevet gruppe %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "bruger %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "uger"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "med template %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "Ã¥r"
-
diff --git a/rt/lib/RT/I18N/de.po b/rt/lib/RT/I18N/de.po
deleted file mode 100644
index 0b7f1ef..0000000
--- a/rt/lib/RT/I18N/de.po
+++ /dev/null
@@ -1,4749 +0,0 @@
-# German localization catalog for Request Tracker (RT)
-# FIRST AUTHOR: Florian Bischof <flo@fxb.de>, May 2002
-# Update by Torsten Brumm <torsten.brumm@kuehne-nagel.com>
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 2.1.54\n"
-"POT-Creation-Date: 2002-06-22 06:06+0200\n"
-"PO-Revision-Date: 2003-02-20 04:47+0200\n"
-"Last-Translator: Karsten Konrad <karsten.konrad@uni-graz.at>\n"
-"Language-Team: RT German <rt@fxb.de>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr "$prefix %1"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 #%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3. %2 %7, %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 hinzugefügt"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "vor %1 %2"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 geändert in %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 gelöscht"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 mit der Vorlage %3"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) von %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (Unverändert)"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Ein Argument zur Ãœbergabe an %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Statusausgabe auf STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Gibt an, welches Action-Modul benutzt werden soll"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Gibt an, welches Condition-Modul benutzt werden soll"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Gibt an, welches Search-Modul benutzt werden soll"
-
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 geladen"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 als Wert für %2 hinzugefügt"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr ""
-"%1 konnte nicht in der Datenbank gefunden werden obwohl es ein lokales "
-"Objekt zu sein scheint"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 von %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 von %2 in %3 geändert"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 kopieren"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 konnte nicht auf %2 gesetzt werden."
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr ""
-"%1 konnte den Status nicht auf erledigt setzen. Die RT-Datenbank könnte "
-"inkonsistent sein."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 erstellt"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 gelöscht"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "Ihre %1 Anfragen höchster Priorität"
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 ist kein %2 dieses Bereichs mehr."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 Min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "Die %1 neusten Anfragen ohne Besitzer"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 Objekte"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 Rechte"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 wird alle Mitglieder eines erledigten Gruppentickets anführen."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1's %2 Objekte"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1's %2's %3 Objekte"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1's gespeicherte Suchanfragen"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: kein Anhang angegeben"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' ist ein ung\303\274ltiger Wert f\303\274r Status"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Auswahl wird gelöscht)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Benachrichtigung der markierten Empfänger wird unterdrückt)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Benachrichtigungen an markierte Empfänger aktivieren)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Geben Sie die Anfrage IDs oder URLs getrennt durch Leerzeichen ein)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Standardwert: %1)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Keine benutzerdefinierten Felder)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Keine Mitglieder)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Keine Scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Keine Vorlagen)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Nichts)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(Benutze diese Felder, für 'Benutzer definierte' Bedingungen oder Aktionen)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(leer)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(kein Name gelistet)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(kein Wert)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(keine Werte)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(nur eine Anfrage)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(wartet auf Freigabe)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(wartet auf andere Sammlung)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(notwendig)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(unbenannt)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Neue Anfrage in\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Eine leere Vorlage"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE nicht gefunden"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEs können nur erstellt und gelöscht werden."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr "UND"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Ãœber mich"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Zugriffskontrolle"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Aktion"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Aktion %1 nicht gefunden"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Aktion durchgeführt.\\n"
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Aktion vorbereitet..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Hinzufügen"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "AdminCC hinzufügen"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "CC hinzufügen"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Spalten hinzufügen"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Kriterium hinzufügen"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Weitere Dateien anhängen"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Klient hinzufügen"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Wert hinzufügen"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Scrip erstellen, das auf alle Bereiche angewendet wird"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "zusätzliches Kriterium hinzufügen"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Füge den ausgewählten Anfragen Kommentare oder Antworten hinzu"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Mitglieder hinzufügen"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Neue Beobachter hinzufügen"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Hinzufügen, Löschen und Ändern von Werten benutzerdefinierter Felder von Objekten"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Rolle wurde als %1 für diesen Bereich hinzugefügt"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Rolle wurde als %1 für diese Anfrage hinzugefügt"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adresse 1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adresse 2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin CC"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Admin Kommentar"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Admin Korrespondenz"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Admin Bereiche"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Admin/Globale Einstellungen"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "AdminBenutzerdefiniertesFeld"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGruppe"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGruppenZugehörigkeit"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminEigenePersönlicheGruppen"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminBereich"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminBenutzer"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administrative CC"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Erweitert"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "nach dem"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr "Operator"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Alle Freigaben genehmigt"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Alle Bereiche"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr "Und/Oder"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "gilt für"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "anwenden"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Änderungen anwenden"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Freigabe"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Freigabe #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Freigabe #%1: Notiz wurde aufgrund eines Systemfehlers nicht gespeichert"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Freigabe #%1: Notiz gespeichert"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Freigabe genehmigt"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Freigabe abgelehnt"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Freigeben"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Notizen des Freigebenden: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr."
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "aufsteigend"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Zuweisen und Entfernen von benutzerdefinierten Feldern"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "BenutzerdefiniertesFeldZuweisen"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Anhängen"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Datei anhängen"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Dateianhang"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Anhang '%1' konnte nicht geladen werden"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Anhang erstellt"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Dateiname des Anhangs"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Anhänge"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attribut gelöscht"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Aug."
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Automatische Antwort"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automatische Antwort an Klienten"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Grundlagen"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "BCC"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Änderungen speichern"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "vor dem"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Binär"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Leer"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Fett"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Speicherbarer Link"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Kurze Kopfzeilen"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Massen Anfrageaktualisierung"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Kann Systembenutzer nicht ändern"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Kann diese Rolle diesen Bereich sehen"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Kann kein benutzerdefiniertes Feld ohne Namen hinzufügen"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Kann keine gespeicherte Suche finden"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Kann kein Anfrage auf sich selbst verweisen lassen!"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Kann diese Suche nicht speichern"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Sie können Basis und Ziel nicht gleichzeitig angeben"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Kann Benutzer nicht anlegen: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "CC"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Passwort ändern"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Alle auswählen"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Zum Löschen anwählen"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Zum Entziehen einer Berechtigung anwählen"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Kinder"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Stadt"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Alles löschen"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Geschlossen"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Geschlossene Anfragen"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Kommentar"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Kommentaradresse"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Kommentiere Anfragen"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "AnfrageKommentieren"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Kommentare (werden nicht an Klienten geschickt)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Kommentare (werden nicht an Klienten geschickt)"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Kommentare zu diesem Benutzer"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Kommentar hinzugefügt"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Commit Stumpf ausgeführt"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Bedingung"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Bedingung trifft zu..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Bedingung nicht gefunden"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfiguration"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Bestätigen"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Inhalt"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Inhaltstyp"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Kopie"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korrespondenz"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korrespondenz hinzugefügt"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr "Konnte keinen neuen benutzerdefinierten Wert hinzufügen"
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Konnte kein neuen benutzerdefinierten Wert hinzufügen. %1 "
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Konnte den Besitzer nicht ändern. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Konnte benutzerdefiniertes Feld nicht erzeugen"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Konnte benutzerdefiniertes Feld nicht erzeugen: %1"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Konnte Gruppe nicht anlegen"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Konnte Vorlage nicht anlegen: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Konnte Anfrage nicht anlegen. Bereich nicht angegeben"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Konnte Benutzer nicht anlegen"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Konnte diesen Benutzer nicht finden oder anlegen"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Konnte diese Rolle nicht finden"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Konnte benutzerdefiniertes Feld %1 nicht laden"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Konnte die Gruppe nicht laden"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Konnte diese Rolle nicht zu einen %1 dieses Bereichs machen"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Konnte diese Rolle nicht zu einem %1 dieses Anfragen machen"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Konnte diese Rolle nicht als %1 dieses Bereichs entfernen"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Konnte Benutzerinformation nicht speichern"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Konnte Benutzer nicht der Gruppe hinzufügen"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Konnte die Transaktion nicht anlegen: %1"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Konnte Zeile nicht finden"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Konnte diese Rolle nicht finden"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Konnte diesen Wert nicht finden"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Konnte %1 nicht aus der Benutzerdatenbank laden.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Konnte die Klasse %1 nicht laden"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Konnte das benutzerdefinierte Feld %1 nicht laden"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Konnte Gruppe %1 nicht laden"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Konnte den Verweis nicht laden"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Konnte Objekt %1 nicht laden"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Konnte den Bereich nicht laden"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Konnte den Bereich %1 nicht laden"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Konnte das Anfrage '%1' nicht laden"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Land"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Erstellen"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Erstelle Anfragen"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Erstelle ein benutzerdefiniertes Feld"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Erstelle ein benutzerdefiniertes Feld für den Bereich %1"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Erstelle eine neue Gruppe"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Erstelle eine neue persönliche Gruppe"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Erstelle eine neue Anfrage"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Erstelle einen neuen Benutzer"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Erstelle einen Bereich"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Erstelle ein Scrip für den Bereich %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Erstelle eine Vorlage"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Neue Anfrage"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Erstelle neue Anfragen basierend auf der Vorlage dieses Scrips"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Anfrage erzeugen"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Erstelle Anfragen in diesem Bereich"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Erstellen, löschen und modifizieren von benutzerdefinierten Felder"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Erstelle, lösche und modifiziere Bereich"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Erstellen, löschen und modifizieren von Mitgliedern persönlicher Gruppen"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Erstellen, löschen und modifizieren von Benutzern"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr "GespeicherteSucheErstellen"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "AnfrageErstellen"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Angelegt"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Erstelle ein benutzerdefiniertes Feld %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Ersteller"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Momentane Beziehungen"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Aktuelle Scrips"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Aktuelle Mitglieder"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Aktuelle Rechte"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Aktuelle Beobachter"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Benutzerdefinierte Felder"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Benutzerdefinierte Felder für %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Benutzerdefinierter Aktions-Aufräum-Code"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Benutzerdefinierter Aktions-Vorbereitungs-Code"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Benutzerdefinierte Bedingung"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Benutzerdefiniertes Feld %1 hat einen Wert."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Benutzerdefiniertes Feld %1 hat keinen Wert."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Benutzerdefiniertes Feld %1 nicht gefunden"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Benutzerdefiniertes Feld nicht gefunden"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Wert %1 des benutzerdefinierten Feldes %2 konnte nicht gefunden werden"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Wert des benutzerdefinierten Felds konnte nicht gelöscht werden"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Wert des benutzerdefinierten Feldes konnte nicht gefunden werden"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Wert des benutzerdefinierten Feldes gelöscht"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "BenutzerdefiniertesFeld"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Datumsangaben"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dez."
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Standard Vorlage für automatische Antworten"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Standard Bereich"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Standard Klient"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Standard Vorlage für Admin-Kommentar"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Standard Vorlage für Admin-Korrespondenz"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Standard Vorlage für Korrespondenz"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Standard Vorlage für Transaktion"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Standard: %1/%2 von \"%3\" auf \"%4\" geändert."
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Rechte weitergeben"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Ihnen gewährte Rechte weitergeben"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "RechteWeitergabe"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Rechteweitergabe"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Löschen"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Vorlage löschen"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Ausgewähltes Script löschen"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Anfragen löschen"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "AnfrageLöschen"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-# Are these three strings really different?
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Löschen dieses Objektes würde die referenzielle Integrität verletzen"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Löschen dieses Objektes würde die referenzielle Integrität verletzen"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Löschen dieses Objektes würde die referenzielle Integrität verletzen"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Ablehnen"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Ist Voraussetzung von"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Als Voraussetzung von %1 hinzugefügt"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Als Voraussetzung von %1 gelöscht"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Setzt jetzt %1 voraus"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Setzt %1 nicht mehr voraus "
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Voraussetzungen"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "absteigend"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Beschreiben Sie hier das Problem"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Beschreibung"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Anzeige"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Zeige Zugriffskontrollliste (ACL) an"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Spalten anzeigen"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Zeige Scrip-Vorlagen für diesen Bereich"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Zeige Scrips für diesen Bereich"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Anzeigemodus"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Gespeicherte Suchanfragen für diese Gruppe anzeigen"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Mache irgend etwas und alles"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Suche durchführen"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Diese Seite nicht aktualisieren."
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Herunterladen"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Als Tabulator separierte Datei speichern"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Fällig"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Bearbeite benutzerdefinierte Felder für %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Bearbeite Beziehungen"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Bearbeite Suche"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Bearbeite Vorlagen für den Bereich %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "Bearbeite gespeicherte Suchanfragen für diese Gruppe"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Bearbeite Systemvorlagen"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "GespeicherteSucheEditieren"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Bearbeite Konfiguration für den Bereich %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Bearbeite benutzerdefiniertes Feld %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Bearbeite Mitgliedschaft für die Gruppe %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Bearbeite Mitgliedschaft der persönlichen Gruppe %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Es muss entweder eine Basis oder ein Ziel angegeben werden"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "E-Mail"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "E-Mail-Adresse bereits in Gebrauch"
-
-# ## muss das überhaupt übersetzt werden???
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Aktiviert (Abwählen deaktiviert dieses benutzerdefinierte Feld)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Aktiviert (Abwählen deaktiviert diese Gruppe)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Aktiviert (Abwählen deaktiviert diesen Bereich)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Aktivierte Bereiche"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Status aktiviert: %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Status aktiviert: %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Mehrere Werte eingeben"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Einen Wert eingeben"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Gib bis zu %1 Werte ein"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Fehler"
-
-# Queue->AddWatcher ist ein Code-Teil, nicht übersetzen
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Fehler in den Parametern zu Queue->AddWatcher"
-
-# Queue->DeleteWatcher ist ein Code-Teil, nicht übersetzen
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Fehler in den Parametern zu Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Fehler in den Parametern zu Ticket->AddWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Fehler in den Parametern zu Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Anfragen eskalieren"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Geschätzt"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Jeder"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Beispiel:"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Zusatzinformationen"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Konnte die Pseudogruppe 'Privileged' nicht finden."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Konnte die Pseudogruppe 'Unprivileged' nicht finden."
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Konnte Modul %1 nicht laden. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Dateiname"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Mehrere Textfelder füllen"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Ein Textfeld füllen"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "%1 Textfelder füllen"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Endpriorität"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "EndPriorität"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Finde Gruppen dessen"
-
-msgid" Find groups whose"
-msgstr "Finde Gruppen dessen"
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Finde Leute deren"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Anfragen suchen"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Erste"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Änderung erzwingen"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "%1 Anfrage(n) gefunden"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Objekt gefunden"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "Freie Eingabe"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Fr."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Alle Kopfzeilen"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Vorlage von Datei nehmen"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "An %1 übergeben"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Globale benutzerdefinierte Felder"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Konfiguration globaler benutzerdefinierter Felder"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Globale Vorlage: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Start"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Los!"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Zeige Anfrage"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Gruppe"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Gruppenrechte"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Gruppe hat bereits Mitglieder"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Gruppe konnte nicht erstellt werden: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Gruppe angelegt"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Gruppe hat kein solches Mitglied"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Gruppe nicht gefunden"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Gruppen"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Gruppen können nicht Mitglied eines ihrer Mitglieder sein"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Gruppen auf die das Suchkriterium passt"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Gruppen zu denen der Benutzer gehört"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hallo!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hallo %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Geschichte"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Geschichte der Gruppe %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Geschichte des Benutzers %1"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Start"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Ich habe %quant(%1, Betonmischer)"
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr "Ich bin verwirrt"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Nr."
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identität"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr ""
-"Wenn eine Freigabe abgewiesen wird, weise das Original ab und lösche "
-"wartende Freigaben"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Wenn kein Klient spezifiziert ist, dann generiere Anfragen mit diesem Klienten"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Wenn kein Bereich spezifiziert ist, dann generiere das Anfrage in diesem Bereich"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr ""
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Wenn Sie etwas aktualisiert haben, denken Sie daran hier zu speichern"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Unerlaubter Wert für %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Bild"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Unveränderbares Feld"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Zeige auch deaktivierte Gruppen an."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Zeige auch deaktivierte Bereiche an."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Zeige deaktivierte Benutzer auch in der Suche an."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr "Unvollständige Suche"
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr "Unvollständige Anfrage"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Anfängliche Priorität"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "AnfänglichePriorität"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Eingabefehler"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Interner Fehler"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Interner Fehler: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Ungültige Gruppenart"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Ungültiges Recht"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Ungültige Daten"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Ungültiger Bereich"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Ungültiges Recht"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Ungültiger Wert für %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Ungültiger Wert für das benutzerdefinierte Feld"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Ungültiger Statuswert"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Es verarbeitet verschiedene Parameter:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr "kursiv"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Betrete oder verlasse diese Gruppe"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Alles"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Sprache"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Groß"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Letzter Kontakt"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Letzter Kontakt"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Zuletzt Kontaktiert"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Zuletzt Aktualisiert"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "ZuletztBearbeitetVon"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Links"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Diesem Benutzer RT-Zugriff gewähren"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Diesem Benutzer Rechte zuweisen lassen"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Beziehung existiert bereits"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Beziehung konnte nicht erstellt werden"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Beziehung erstellt (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Beziehung gelöscht (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Beziehung nicht gefunden"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Verweise auf Anfrage #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Beziehungen"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Laden"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Gespeicherte Suchanfragen laden"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr "GespeicherteSucheLaden"
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Geladene Perl Module"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Adresse"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr ""
-"Log-Verzeichnis %1 nicht gefunden oder kein Schreibzugriff.\\n RT kann nicht "
-"starten."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Angemeldet als %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Anmelden"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Abmelden"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Suchtyp unpassend"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Besitzer festlegen"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Status festlegen"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Fälligkeitsdatum festlegen"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Erledigungsdatum festlegen"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Anfangsdatum festlegen"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Startdatum festlegen"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Eingangsdatum festlegen"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Priorität festlegen"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Bereich festlegen"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Betreff festlegen"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr "Diese Gruppe dem Benutzer anzeigen"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Verwalte benutzerdefinierte Felder und Werte"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Gruppen und Gruppenmitglieder verwalten"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Eigenschaften und Einstellungen für alle Bereiche verwalten"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Bereich und bereichspezifische Einstellungen verwalten"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Benutzer und Passworte verwalten"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mär."
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mai"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Mitglied %1 hinzugefügt"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Mitglied %1 gelöscht"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Mitglied hinzugefügt"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Mitglied gelöscht"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Mitglied nicht gelöscht"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Mitglied von"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Mitglieder"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Mitgliedschaft in %1 hinzugefügt"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Mitgliedschaft in %1 gelöscht"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Mitgliedschaft"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Mitgliedschaft des Benutzers %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Vereinigung erfolgreich"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Vereinigung fehlgeschlagen. Konnte EffectiveId nicht setzen"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr "Vereinigung fehlgeschlagen. Konnte Status nicht setzen"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Vereinigen mit"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Vereinigt mit %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Nachricht"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Nachricht konnte nicht gespeichert werden"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Nachricht gespeichert"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Nachrichten über diese Anfrage werden nicht an diese Empfänger gesendet:"
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr "Unausgeglichene Klammerung"
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "%1: Fehlt ein Primärschlüssel?"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Handy"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Ändere Zugriffskontrollliste (ACL)"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr "Alle benutzerdefinierten Felder %2, die zu %1 gehören, ändern"
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Alle benutzerdefinierten Felder, die zu %1 gehören, ändern"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Gruppenrechte ändern"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Mitglieder ändern"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Rechte ändern"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Ändere Scrip-Vorlagen für diesen Bereich"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Ändere Scrips für diesen Bereich"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Ändern der Benutzerrechte"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Ändere ein benutzerdefiniertes Feld für den Bereich %1"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Ändere ein Scrip für den Bereich %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Ändere ein globales benutzerdefiniertes Feld"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Ändern der assoziierte Objekte von %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Ändere Datumsangaben für #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Ändere Datumsangaben für Anfrage #%1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr "Ändern der globalen benutzerdefinierten Felder"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Ändere globale Gruppenrechte"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Ändere globale Gruppenrechte."
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Ändere globale Benutzerrechte"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Ändere globale Benutzerrechte."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Ändere Gruppen-Metadaten oder lösche die Gruppe"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Ändere Gruppenrechte für das benutzerdefinierte Feld %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Ändere die Gruppenrechte der Gruppe %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Ändere Gruppenrechte für den Bereich %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Ändere Mitgliedsverzeichnis dieser Gruppe"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Ändert den eigenen RT-Zugang"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Ändere Personen im Zusammenhang mit diesem Bereich %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Ändere Personen der Anfragen #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Ändere Scrips für den Bereich %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Ändere auf alle Bereiche angewandte Scrips"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Ändere Vorlage %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Ändere globale Vorlagen"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Ändere Gruppe %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Ändere die Bereichsbeobachter"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Ändere Benutzer %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Ändere Anfrage #%1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Ändere Anfrage #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Ändere Anfragen"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Ändere Benutzerrechte für benutzerdefinierte Felder von %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Ändere Benutzerrechte für die Gruppe %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Ändere Benutzerrechte für den Bereich %1"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ACLBearbeiten"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "BenutzerdefiniertesFeldBearbeiten"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "EigeneMitgliedschaftBearbeiten"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "BereichsBeobachterBearbeiten"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ScripsBearbeiten"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "SelbstBearbeiten"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "VorlageBearbeiten"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "AnfrageBearbeiten"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Mo."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Mehr über %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Hinunter verschieben"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Hinauf verschieben"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Mehrere"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Sie müssen eine Angabe bei 'Name' machen"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Meine %1 Anfragen"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Meine Freigaben"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Meine gespeicherten Suchanfragen"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Name"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Benutzername ist bereits in Gebrauch"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Niemals"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Neu"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Neue Beziehungen"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Neues Passwort"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Neue wartende Freigaben"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Neue Suche"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Neues benutzerdefiniertes Feld"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Neue Gruppe"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Neues Passwort"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Neue Passworterinnerung wurde verschickt"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Neuer Bereich"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Neue Rechte"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Neues Scrip"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Neue Vorlage"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Neue Anfrage"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Neue Anfrage existiert nicht"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Neuer Benutzer"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Neuer Benutzer aufgerufen"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Neue Beobachter"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Nächste"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Nächste Seite"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Spitzname"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Keine Klasse definiert"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Kein benutzerdefiniertes Feld"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Kein benutzerdefiniertes Feld definiert"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Keine Gruppe definiert"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Keine Suche"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Kein Bereich vorhanden"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr ""
-"Kein RT-Benutzer gefunden. Bitte kontaktiere Sie Ihren "
-"RT-Administrator.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Keine Vorlage"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Keine Aktion"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Keine Spalte angegeben"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Kein Kommentar zu diesem Benutzer angegeben"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Keine Beschreibung für %1 vorhanden"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Keine Gruppe angegeben"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Keine Gruppe mit diesen Kriterien gefunden"
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Keine Nachricht angefügt"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Kein Passwort gesetzt"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Keine Erlaubnis Bereiche anzulegen"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Kein Erlaubnis um Anfragen im Bereich '%1' anzulegen"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Kein Recht Benutzer anzulegen"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Kein Recht dieses Anfrage anzuzeigen"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Kein Recht dieses Anfrage zu aktualisieren"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Keine Rolle angegeben"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Keine Rolle ausgewählt."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Keine den Suchkriterien entsprechenden Bereiche gefunden"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Keine Rechte gefunden"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Keine Rechte gewährt."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Keine Suche zu bearbeiten."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Kein Betreff"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Kein Transaktionstyp angegeben"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Keine auf die Suchkriterien passende Benutzer gefunden"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Kein Wert an _Set geschickt!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Niemand"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Nichtexistierendes Feld?"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Nicht angemeldet."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Nicht angegeben"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Noch nicht implementiert."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Bemerkungen"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Benachrichtigung konnte nicht verschickt werden"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Benachrichtige AdminCCs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Benachrichtige AdminCCs als Kommentar"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Benachrichtige CCs"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Benachrichtige CCs als Kommentar"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Benachrichtige andere Empfänger"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Benachrichtige andere Empfänger als Kommentar"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Benachrichtige Besitzer"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Benachrichtige Besitzer als Kommentar"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "Besitzer über ihre abgewiesene Anfrage informieren"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-"Benachrichtige Besitzer, dass sein Anfrage von allen Entscheidungsträgern "
-"freigegeben wurde"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-"Benachrichtige Besitzer, dass sein Anfrage von einigen Entscheidungsträgern "
-"freigegeben wurde"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Benachrichtige Besitzer und AdminCCs neuer auf Freigabe wartende Anfragen"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Benachrichtige die Klienten"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Benachrichtige die Klienten und CCs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Benachrichtige die Klienten und CCs als Kommentar"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Benachrichtige die Klienten, CCs und AdminCCs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Benachrichtige die Klienten, CCs und AdminCCs als Kommentar"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "Oder"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objekt konnte nicht erstellt werden"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "Objekt konnte nicht gelöscht werden"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objekt erstellt"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Objekt gelöscht"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Objekt vom Typ %1 kann keine benutzerdefinierten Felder haben"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Objekt Typ passt nicht"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Okt."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Offline"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Offline Bearbeitung"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Offline Upload"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "am"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Bei Kommentar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Bei Korrespondenz"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Bei Erstellen"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Bei Besitzerwechsel"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Bei Änderung der Priorität"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Bei Änderung des Bereichs"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Beim Erledigen"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Beim Ändern des Status"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Bei einer Transaktion"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Zeige nur Freigaben für nach dem %1 erstelle Anfragen"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Zeige nur Freigaben für vor dem %1 erstellte Anfragen"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Offen"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Öffnen"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Offene Anfragen"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Öffne Anfragen bei Korrespondenz"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Sortiert nach"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisation"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Ursprüngliche Anfrage: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Ausgehende Mail eines Kommentars gespeichert"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Ausgehende Mail gespeichert"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Mit der Zeit steigt die Priorität auf"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Eigene Anfragen"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "EigeneAnfrage"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Besitzer"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Besitzer konnte nicht gesetzt werden"
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Besitzer mit Gewalt von %1 in %2 geändert"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Seite %1 von %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pager"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Eltern"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Passwort"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Passworterinnerung"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Passwort geändert"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Passwort ist zu kurz"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Passwort: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Passwörter verschieden"
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Passwörter verschieden, keine Änderung"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Personen"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Führe eine benutzerdefinierte Aktion aus"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl Konfiguration"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Zugriff verweigert"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Persönliche Gruppen"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Persönliche Gruppen"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Persönliche Gruppen:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefonnummern"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Voreinstellungen"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Prepare Stumpf ausgeführt"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Vorherige"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Vorherige Seite"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Rolle %1 nicht gefunden."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Priorität"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Priorität beginnt bei"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Privatsphäre:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilegiert"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Privilegierungsstatus: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Privilegierte Benutzer"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogruppe für internen Gebrauch"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Suche"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Suche erstellen"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Bereich"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Bereich %2 nicht gefunden"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Name des Bereichs"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Bereich existiert bereits"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Bereich konnte nicht angelegt werden"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Bereich konnte nicht geladen werden"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Bereich angelegt"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Bereich nicht gefunden"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Bereiche"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Schnellsuche"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Schnelle Anfrageerstellung"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 für %2"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT Administration"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Fehler"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "RT Variablen"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT auf einen Blick"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT für %1"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Echter Name"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Referenz von %1 hinzugefügt"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Referenz von %1 gelöscht"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Referenz auf %1 hinzugefügt"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Referenz auf %1 gelöscht"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Referenziert von"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Bezieht sich auf"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Seite alle %1 Minuten aktualisieren."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Entferne AdminCC"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Entferne CC"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Entferne Klient"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Antworten"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Antwort Adresse"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Antwort an Klienten"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Antworte auf Anfragen"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "AnfrageBeantwortung"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Klient"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Klienten"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Anfragen sollten erlegt werden innerhalb"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Benötigter Parameter '%1' nicht angegeben"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Zurücksetzen"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Zuhause"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Erledigen"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Erledige Anfrage #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Erledigt"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Ergebnisse"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Passwort wiederholen"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Zurücksetzen"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Recht weitergegeben"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Recht erteilt"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Recht geladen"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Recht konnte nicht zurückgezogen werden"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Recht nicht gefunden"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Recht nicht gefunden."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Recht zurückgezogen"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Rechte"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Rechte für %1 konnten nicht gewährt werden"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Rechte für %1 konnten nicht entzogen werden"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Rollen"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Zeilen pro Seite"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sa."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Speichern"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Änderungen Sichern"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Einstellungen speichern"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Änderungen Sichern"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Gespeicherte Suchanfragen"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip angelegt"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Scrip Felder"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip gelöscht"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Auf alle Bereiche angewandte Scrips"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Suchen"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Suche nach Freigaben"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Sicherheit:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Benutzerdefinierte Felder anzeigen"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Anzeigen der gesendeten Nachricht und deren Empfänger"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Anzeigen von anfrage-privaten Kommentaren"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Anfrage Zusammenfassungen anzeigen"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "Benutzerdefiniertes Feld anzeigen"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr "GruppeAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "BereichAnzeigen"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Auswahl"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Wählen Sie ein benutzerdefiniertes Feld aus"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Wählen Sie eine Gruppe aus"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr ""
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Wählen Sie einen Bereich für Ihre neue Anfrage"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Wählen Sie einen Benutzer aus"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Wählen Sie ein benutzerdefiniertes Feld"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Wählen Sie benutzerdefinierte Felder für alle Benutzergruppen aus"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr "Wählen Sie benutzerdefinierte Felder für alle Benutzer aus"
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr "Wählen Sie benutzerdefinierte Felder für alle Anfragen in allen Bereichen aus"
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Wählen Sie benutzerdefinierte Felder für Transaktionen mit Anfragen in allen Bereichen aus "
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Wählen Sie eine Gruppe aus"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Wählen Sie mehrere Werte aus"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Wählen Sie einen Wert aus"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Wählen Sie einen Bereich aus"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Wählen Sie ein Scrip aus"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Wählen Sie eine Vorlage aus"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Wählen Sie bis zu %1 Werte aus"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Wählen Sie einen Benutzer aus"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Ausgewählte Benutzerdefinierte Felder"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Ausgewählte Objekte"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Schickt eine Nachricht an alle Beobachter"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Schickt einen Kommentar an alle Beobachter"
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Schickt eine Nachricht an die Klienten und CCs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Schickt einen Kommentar an die Klienten und CCs"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Schickt eine Nachricht an die Klienten"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Schickt eine Nachricht an die direkt angegebenen CCs und BCCs"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Schickt eine Nachricht an alle CCs"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Schickt einen Kommentar an alle CCs "
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Schickt eine Nachricht an die administrativen CCs"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Schickt einen Kommentar an die administrativen CCs"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Schickt eine Nachricht an den Besitzer"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Zeige"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Zeige Freigaben"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Zeige Spalten"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Zeige Ergebnisse"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Zeige freigegebene Anfragen"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Zeige Grundlagen"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Zeige abgelehnte Anfragen"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Zeige Details"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Zeige anhängige Anfragen"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Zeige auf andere Freigaben wartende Anfragen"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ACLAnzeigen"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr "KonfigurationsMenüAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "AusgehendeNachrichtenAnzeigen"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "GespeicherteSuchanfragenAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ScripsAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "VorlagenAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "AnfragenAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "AnfrageKommentareAnzeigen"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Als Klient einer Anfrage oder Anfrage- bzw. Bereichs-CC eintragen"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Als Anfrage- oder Bereichs-AdminCC eintragen"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "E-Mail-Signatur"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Einzel"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Überspringe Menü"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Klein"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Sortieren"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Phase"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Begonnen"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Beginnt"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Staat"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Statusänderung"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status von %1 auf %2 geändert"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Ãœbernehmen"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Anfragen übernehmen"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "AnfrageÃœbernehmen"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Gestohlen von %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Betreff"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Betreff wurde auf %1 geändert"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Ãœbermitteln"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Gelungen"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "So."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperBenutzer"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "System"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "System Konfiguration"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Systemfehler"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "System Werkzeuge"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Systemfehler. Recht nicht delegiert."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Systemfehler. Recht nicht gewährt."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Systemgruppen"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolegroup für internen Gebrauch"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Ãœbernehmen"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Anfragen übernehmen"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "AnfrageÃœbernehmen"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Ãœbernommen"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Vorlage"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Vorlage #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Vorlage gelöscht"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Vorlage nicht gefunden"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Vorlagen eingelesen"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Vorlagen"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Text"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Das ist bereits der aktuelle Wert"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Dies ist kein gültiger Wert für dieses benutzerdefinierte Feld"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Das ist der gleiche Wert"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Diese Rolle hat dieses Recht bereits"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Diese Rolle ist bereits ein %1 dieses Bereichs"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Diese Rolle ist bereits ein %1 dieser Anfrage"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Diese Rolle ist nicht ein %1 dieses Bereichs"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Dieser Bereich existiert nicht"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Diese Anfrage hat ungelöste Abhängigkeiten"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Diese Anfrage gehört bereits diesem Benutzer"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Dieser Benutzer existiert nicht"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Dieser Benutzer ist bereits privilegiert"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Dieser Benutzer ist bereits unprivilegiert"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Dieser Benutzer ist jetzt privilegiert"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Dieser Benutzer ist jetzt unprivilegiert"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Diesem Benutzer dürfen keine Anfragen aus diesen Bereich gehören"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Dies ist keine numerische ID"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Grundlagen"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "Der CC einer Anfrage"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Der administrative CC einer Anfrage"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr ""
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Der neue Wert wurde gesetzt."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Der Besitzer einer Anfrage"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Der Klient einer Anfrage"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Diese Kommentare sind generell nicht für den Benutzer sichtbar"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Dieses benutzerdefinierte Feld passt nicht zum Objekt"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Dieses Feature ist nur für Systemadministratoren verfügbar"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Diese Nachricht wird an folgende Empfänger gesendet:"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr ""
-"Dieses Werkzeug erlaubt es Benutzern beliebige Perl-Module von RT aus "
-"aufzurufen."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Diese Transaktion scheint keinen Inhalt zu haben"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Die %1 dringensten Anfragen dieses Benutzers"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Do."
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Anfrage #%1 Alles aktualisieren: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Anfrage #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Anfrage %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Anfrage %1 wurde im Bereich '%2' angelegt"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Anfrage %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Benutzerdefinierte Anfrage Felder"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Geschichte von Anfrage #%1 %2"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Anfrage erledigt"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Anfrage Transaktion"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Inhalt der Anfrage"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Art des Inhalts der Anfrage"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Anfrage konnte aufgrund eines internen Fehlers nicht angelegt werden"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Anfrage Metadaten"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Status der Anfrage geändert"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr "SQL Anfrage Suchmodul"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Anfragen"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Anfragen, die von dieser Freigabe abhängen:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Geschätzte Zeit"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Verbleibende Zeit"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Arbeitszeit"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Verbleibende Zeit"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Gearbeitete Zeit"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Arbeitszeit"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Eingegangen"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Werkzeuge"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transaktion"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transaktion %1 eliminiert"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transaktion erstellt"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Benutzerdefinierte Felder bei Transaktionen"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transaction->Create fehlgeschlagen, da Objekttyp und ID nicht angegeben wurden"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transaktionen sind unveränderbar"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Di."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Typ"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Nicht implementiert"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unix Login"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Unbekannte Inhaltskodierung (Content-Encoding) %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr "Unbekanntes Feld: $key"
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "unbegrenzt"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Unbenannte Suche"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Unprivilegiert"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Nichtausgewähltes benutzerdefiniertes Feld"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Nichtausgewähltes Objekte"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Zurückgegeben"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Aktualisieren"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Alles aktualisieren"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Anfrage Aktualisieren"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Aktualisierungtyp"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Mehrere Anfragen aktualisieren"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Aktualisierung nicht gespeichert."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Aktualisiere ausgewählte Anfragen"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Aktualisiere Anfrage"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Aktualisiere Anfrage #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Aktualisiere Anfrage #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Aktualisierungstyp war weder Korrespondenz noch Kommentar."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Aktualisiert"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Hochladen"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Hochladen mehrerer Dateien"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Hochladen mehrerer Bilder"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Hochladen einer Datei"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Hochladen eines Bildes"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Hochladen von bis zu %1 Dateien"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Hochladen von bis zu %1 Bildern"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Änderungen hochladen"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Benutzer '%1' konnte nicht gefunden werden"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Benutzerdefiniert"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Benutzerdefinierte Konditionen und Aktionen"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Benutzerrechte"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-"Benutzer hat einen unbekannten Aktualisierungstyp für das benutzerdefinierte "
-"Feld %1 bei %2-Objekt #%3 verlangt"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Benutzer konnte nicht angelegt werden: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Benutzer angelegt"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Benutzerdefinierte Gruppe"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Benutzer geladen"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Benutzerdefinierte Gruppe"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Benutzername"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Benutzer"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Auf diese Kriterien zutreffende Benutzer"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Gültige Suche"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Werte"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Beobachte"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "BeobachteAlsAdminCc"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Beobachter"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Mi."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Wenn eine Anfrage erstellt wird"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr ""
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Wenn irgendetwas passiert"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Immer wenn eine Anfrage erledigt wird"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Immer wenn der Besitzer einer Anfrage wechselt"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Immer wenn sich die Priorität eines Anfragen ändert"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Immer wenn eine Anfrage den Bereich wechselt"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Immer wenn sich der Status einer Anfrage ändert"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Immer wenn eine benutzerdefinierte Bedingung auftritt"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Immer wenn ein neuer Kommentar eingeht"
-
-1c7f
-itialdata:157
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Immer wenn neue Korrespondenz eingeht"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Arbeit"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Offline arbeiten"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Arbeitszeit"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Sie sind bereits Besitzer dieser Anfrage"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Sie sind kein autorisierter Benutzer"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Sie können nur Anfragen ohne Besitzer zuweisen"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Sie haben %1 Anfragen im Bereich %2 gefunden"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Sie wurden von RT abgemeldet."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Sie haben kein Recht, Anfragen in diesem Bereich anzulegen."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Sie dürfen in diesem Bereich keine Anfragen erstellen"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Sie können sich gerne wieder anmelden"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr ""
-"Ihre Anfrage wurde von %1 freigegeben. Andere Freigaben können noch "
-"ausstehen."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Ihre Anfrage wurde freigegeben."
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Ihre Anfrage wurde abgewiesen"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Ihr Benutzername oder Passwort ist falsch"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "PLZ"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "Erlaube Erstellung von gespeicherten Suchabfragen"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "Erlaube das Laden von gespeicherten Suchabfragen"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "wie an %1 gewährt"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr "gehört zu"
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "geschlossen"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "enthält"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "Tage"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "gelöscht"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr "gehört nicht zu"
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "enthält nicht"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "enthält nicht"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "gleich"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr "Fehler: Kann nicht hinunter bewegen"
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr "Fehler: Kann nicht nach links bewegen"
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr "Fehler: Kann nicht hinauf bewegen"
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "Fehler: Nichts zu löschen"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr "Fehler: Nichts zu bewegen"
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr "Fehler: Nichts zum Umschalten"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "größer als"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "Gruppe '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "Stunden"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "ID"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "ist"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "ist nicht"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "kleiner als"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "enthält"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "Min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "Minuten"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "Monate"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "neu"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "kein Name"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "kein Wert"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "keine"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ungleich"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "offen"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "persönliche Gruppe '%1' für Benutzer '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "Bereich %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "abgewiesen"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "erledigt"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "Sek"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr "Zeige Konfigurationsmenü"
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "Tabellenkalkulation"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "zurückgestellt"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "System %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "Systemgruppe '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "die aufrufende Komponente gab nicht an warum"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "Anfrage #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "unbeschriebene Gruppe %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "Benutzer %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "Wochen"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "Jahre"
-
diff --git a/rt/lib/RT/I18N/en.po b/rt/lib/RT/I18N/en.po
deleted file mode 100644
index 28a8406..0000000
--- a/rt/lib/RT/I18N/en.po
+++ /dev/null
@@ -1,88 +0,0 @@
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Aug"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dec"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Fri"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Home"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "May"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Mon"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Oct"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Open"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Home"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sat"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Sun"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Thu"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Tue"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Wed"
-
diff --git a/rt/lib/RT/I18N/es.po b/rt/lib/RT/I18N/es.po
deleted file mode 100644
index 87759ee..0000000
--- a/rt/lib/RT/I18N/es.po
+++ /dev/null
@@ -1,6065 +0,0 @@
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 2.1.x\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2003-03-23 12:38\n"
-"Last-Translator: Tomàs Núñez Lirola <tomasnl@dsl.upc.es>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "Añadido %1 %2"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "Hace %1 %2"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 ha cambiado a %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 borrado"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 con la plantilla %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 este caso\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 mostrados"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Un parametro para pasar a %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - El estado de la salida actualiza STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Especifica el modulo de accion que quieres usar"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Especifica el modulo de condicion que quieres usar"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Especifica el modulo de busqueda que quieres usar"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 ScripAction cargado"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "$1 añadido como un valor de %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 alias requieren un TicketId en el que trabajar"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1 alias requieren un TicketId en el que trabajar "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 alias requieren un TicketId en el que trabajar (de %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 parece ser un objeto local, pero no se encuentra en la base de datos"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 por %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 ha cambiado de %2 a %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 no se ha podido fijar a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 no pudo iniciar una transacción (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 no pudo fijar el estado a resuelto. La base de datos de RT podría ser inconsistente."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "Los %1 tickets de mayor prioridad que poseo... "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "Los %1 tickets de mayor prioridad que he pedido"
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "$1 es una herramienta para actuar sobre los tickets con una herramienta de planificacion externa, como crom"
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 ha dejado de ser un %2 para esta cola."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 ha dejado de ser un %2 para este ticket."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 ha dejado de ser un valor para campo personalizable %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 no es un identificador de Cola válido."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 no mostrado"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 privilegios"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 exitoso\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 tipo desconocido para $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 tipo desconocido para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 se creó sin CurrentUser\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 resolverá todos los miembros de un grupo de tickets resueltos."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 pondrá como pendiente una BASE [local] si es dependiente [o miembro] de una solicitud ligada."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: ningún archivo adjunto especificado"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' es un valor inválido para el estado"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' no es una acción reconocida. "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Marque la caja para borrar al miembro del grupo)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Marque la caja para borrar el scrip)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Marque la caja para borrar)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Marque las cajas para borrar)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Si se deja vacio, pasara por defecto a %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Sin Valor)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(No hay campos custom)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Sin miembros)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Sin scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Sin plantillas)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envia una copia oculta de esta actualizacion a una lista delimitada por comas de direcciones de email. <b>NO</b> cambia quien recibirá futuras actualizaciones)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Envía una copia oculta de esta actualización a una lista de direcciones de correo delimitada por comas. <b>No</b> cambia a quien recibirá futuras actualizaciones.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Envia una copia oculta de esta actualización a una lista delimitada por comas de direcciones de email administrativas. Estas personas <b>recibirán</b> las futuras actualizaciones.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envia una copia oculta de esta actualización a una lista delimitada por comas de direcciones de email.<b>NO</b> cambia quien recibirá futuras actualizaciones."
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Manda una copia de esta actualización a una lista de direcciones de correo delimitada por comas. <b>No</b> cambia a quien recibirá futuras actualizaciones.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Envia una copia de esta actualización a una lista de direcciones de correo delimitada por comas. Estas personas <b>recibirán</b> actualizaciones futuras."
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(vacío)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(no hay nombres listados)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(sin asunto)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(sin valor)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(solo un ticket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(pendiente de aprobacion)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(pendiente de otros tickets)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(requerido)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(sin titulo)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "Los 25 tickets de mayor prioridad que poseo..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "Los 25 tickets de mayor prioridad que he solicitado..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Nuevo ticket en\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Una plantilla en blanco"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE Borrado"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE Cargado"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "ACE no se pudo borrar"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "ACE no se encontró"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE no encontrado"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEs solo pueden ser creadas o borradas."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Abortando para prevenir modificaciones no intencionadas al ticket\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Sobre mi"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Control de acceso"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Acción"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Acción %1 no encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Action committed."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Acción preparada..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Añadir AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Añadir Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Añadir más archivos"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Añadir solicitante"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "Añadir una seleccion de palabra clave a esta cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Añadir un nuevo scrip global"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Añadir un scrip a esta cola"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Añadir un scrip que se aplicará a todas las colas"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Añadir comentarios o respuestas a los tickets seleccionados"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Añadir miembro"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Añadir nuevos observadores"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "AddNextState"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Principal ha sido añadido como %1 para esta cola"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Principal ha sido añadido como %1 para este ticket"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Dirección 1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Dirección 2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Admin Comment"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Admin Correspondence"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Administración de colas"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Administración de usuarios"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Adminsitración de la configuración global"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Administración de Grupos"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Administración de una cola"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "AdminAllPersonalGroups"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminComment"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminCorrespondence"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "AdminCustomFields"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGroup"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGroupMembership"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminOwnPersonalGroups"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminQueue"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminUsers"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Cc Administrativa"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Búsqueda avanzada"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Después"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Edad"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Todos los campos custom"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Todas las colas"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Siempre envia un mensaje a los solicitantes independientemente del remitente del mensaje"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Aprobacion"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Aprobacion #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Aprobación #%1: No se han guardado las notas debido a un error del sistema"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Aprobacion #%1: Notas guardadas"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Detalles de la aprobación"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Diagrama de la aprobación"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Aprobar"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Notas del aprobador: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Abr."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "Abril"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Ascendente"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Adjunto"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Adjuntar archivo"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Archivo adjunto"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Archivo adjunto '%1' no pudo ser cargado"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Archivo adjunto creado"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Nombre del archivo adjunto"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Archivos adjuntos"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Ago."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "Agosto"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "Sistema de autenticación"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Autorespuesta"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Autorespuesta a los solicitantes"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "AutoreplyToRequestors"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Firma PGP incorrecta: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Identificador de archivo adjunto erróneo. No se puede encontrar el archivo '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Datos incorrectos en %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Número de transacción incorrecta para el archivo adjunto. %1 debe ser %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Basicos"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Asegúrese de salvar sus cambios"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Antes"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Begin Approval"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Vacio"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URL para guardar esta búsqueda en sus marcadores"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Encabezados breves"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Actualización de varios tickets a la vez"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "No se pueden modificar los usuarios del sistema"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Can this principal see this queue"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "No se puede agregar un campo personalizable si no tiene un nombre"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "No se puede ligar un ticket a sí mismo"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "No se puede fusionar dentro de un caso ya fusionado. Nunca deberia recibir este error"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "No se puede especificar origen y destino al mismo tiempo"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "No se puede crear el usuario: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Cambiar contraseña"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Check box to delete"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Seleccione la caja para quitar el permiso"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Hijo"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Ciudad"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Cerrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Solicitudes cerradas"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "No se entendió el comando!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Comentario"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Dirección de comentario"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Comentario no grabado"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Comentario sobre los tickets"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "CommentOnTicket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Comentarios"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Comentarios (no se envían a los solicitantes)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Comentarios (no se envían a los solicitantes)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Comentarios acerca de %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Comentarios acerca de este usuario"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Comentarios añadidos"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Acción realizada"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Compilar restricciones"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Condición"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "La condicion coincide..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Condición no encontrada"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Configuración"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Confirmar"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "Información de contacto"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Fecha de contacto '%1' no pudo ser leida"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Contenido"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "No se pudo crear grupo"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Correspondencia"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Dirección de corresponencia"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Correspondencia agregada"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Correspondencia no guardada"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "No se pudo añadir un nuevo valor de campo personalizable para el ticket. "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "No se pudo añadir un nuevo valor de campo personalizable para el ticket. %1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "No se pudo cambiar el propietario. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "No se puede crear un CampoPersonalizable"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "No se pudo crear el grupo"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "No se pudo crear la plantilla: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "No se pudo crear el ticket. Cola no seleccionada"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "No se pudo crear el usuario"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "No se pudo crear un observador para el solicitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "No se pudo encontrar un ticket con identificador $1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "No se pudo encontrar el grupo %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "No se pudo encontrar o crear el usuario"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "No se pudo encontrar ese principal"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "No se pudo encontrar el usuario %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "No se puede cargar el grupo"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "No se pudo hacer ese principal un %1 para esta cola"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "No se pudo hacer ese principal un %1 para este ticket"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "No se pudo quitar ese principal como un %1 para esta cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "No se pudo quitar ese principal como un %1 para este ticket"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "No se pudo agregar el miembro al grupo"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "No se pudo crear la transacción: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "No se pudo averiguar que hacer a partir de la firma gpg de la respuesta"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "No se pudo encontrar el grupo\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "No se pudo encontrar la fila"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "No pudo enconcontrar ese principal"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "No se pudo encontrar ese valor"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "No se pudo encontrar ese observador"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "No se pudo encontrar el usuario\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "No se pudo cargar %1 desde la base de datos de usuarios.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "No se pudo cargar KeywordSelects"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "No se pudo cargar el archivo de configuración de RT '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "No se pudieron cargar los Scrips."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "No se pudo cargar el grupo %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "No se puedo cargar el enlace"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "No se pudo cargar la cola"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "No se pudo cargar la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "No se pudo cargar el scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "No se pudo cargar la plantilla"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "No se pudo cargar ese usuario (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "No se pudo cargar el ticket '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "País"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Crear"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Crear Tickets"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Crear CampoPersonalizable"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Crear un campo personalizables para la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Crear un campo personalizable que se aplique a todas las colas"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Crear un nuevo campo personalizable"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Crear un nuevo scrip global"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Creat un nuevo grupo"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Crear un nuevo grupo personal"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Crear una nueva cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Crear un nuevo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Crear una nueva plantilla"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Crear un nuevo ticket"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Crear un nuevo usuario"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Crear una cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Crear una cola llamada "
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Crear una solicitud"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Crear un scrip para la cola %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Crear una plantilla"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Creación fallida: %1 / %2 / %3 "
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Creación fallida: %1 / %2 / %3 "
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Crear nuevos tickets basados en esta plantilla de scrip"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Crear ticket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Crear tickets en esta cola"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Crear, borrar y modifical campos personalizables"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Crear, borrar y modificar colas"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Crear, borrar y modificar los miembros de cualquier grupo personal de usuario"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Crear, borrar y modificar los miembros de los grupos personales"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Crear, borrar y modificar usuarios"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CreateTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Creado"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "CampoPersonalizable %1 creado"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Plantilla %1 creada"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Relaciones actuales"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Scrips actuales"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Miembros actuales"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Permisos actuales"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Criterio de busqueda actual"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Observadores actuales"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Campo personalizable #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Campos personalizables"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Codigo de limpieza de accion personalizable"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Codigo de preparacion de accion personalizable"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Condicion personalizable"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Campo personalizado %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Campo personalizado %1 tiene un valor."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Campo personalizado %1 no tiene un valor."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Campo personalizado %1 no encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Campo personalizable borrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Campo personalizado no encontrado"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "El valor del campo %1 no pudo ser encontrado para el campo %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Valor del campo cambiado de %1 a %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "El valor del campo no pudo ser borrado"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "El valor del campo no pudo se encontrado"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Valor del campo borrado"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "CustomField"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Error de datos"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Fechas"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dic."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Diciembre"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Plantilla de autorespuesta por defecto"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Plantilla de autorespuesta por defect"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Plantilla de comentario de admin por defecto"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Plantilla de correspondencia de admin por defecto"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Plantilla de correspondencia por defecto"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Plantilla de trasacciones por defecto"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Por defecto: %1/%2 ha cambiado de %3 a %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delegar derechos"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Delegar derechos especificos que te han sido concedidos"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegateRights"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Delegar"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Borrar"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Borrar tickets"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "DeleteTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Al borrar este objeto, se puede romper la integridad referencial"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Al borrar este objeto, se romperá la integridad referencial"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Al borrar este objeto, se violará la integridad referencial"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Al borrar este objeto, se violará la integridad referencial."
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "Al borrar este objeto, se violará la integridad referencial. Eso es malo."
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Denegar"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Dependen de este ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Dependencias: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Depende de"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "DependsOn"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Descendiente"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Describa el problema debajo"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Descripción"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Detalles"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Despliegue"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Mostrar Lista de Control de Acceso"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Mostrar plantillas de scrip para esta cola"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Mostrar scrips para esta cola"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Modo de despliegue"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Despliega ticket #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Hacer cualquier cosa y todo"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "No recargar esta página"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "No mostrar los resultados de la busqueda"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Descargar"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Retraso"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "La fecha de retraso '%1' no pudo ser leida"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "ERROR: No se pudo cargar el ticket '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Editar"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Editar campos personalizados para %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Editar relaciones"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Editar plantillas para la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Editar palabras clave"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Editar acciones"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Editar plantillas del sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Editar plantillas para %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Editando configuración para la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Editando configuración para el usuario %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Editando campo %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Editando los miembros del grupo %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Editando los miembros para el grupo personal %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Editando plantilla %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "La base o el destinatario deben ser especificados"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Correo"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "La dirección de correo ya está en uso"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Correo Electrónico"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Codificación para el correo"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Habilitado (Desmarcar esta caja deshabilita este campo personalizable)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Habilitado (Desmarcar esta caja deshabilita este campo personalizable)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Habilitado (Desmarcar esta caja, deshabilita esta cola)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Campos Personalizables Habilitados"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Colas habilitadas"
-
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Estado %1 habilitado"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Introducir multiples valores"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Introducir un valor"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Ingrese los números de ticket o las URL que llevan hacia el ticket. Separe multiples entradas con espacios"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Error"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Error añadiendo observador"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Error en los parámetros para Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Error en los parámetros para Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Error en los parámetros para Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Error en los parámetros para Queue->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Todos"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Ejemplo"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "ExternalAuthId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternalContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Información extra"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Problema para encontrar el pseudogrupo de usuarios 'Privileged'"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Problema para encontrar el pseudogrupo de usuarios 'Unprivileged'"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Error al cargar el modulo %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Febrero"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Fin"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Prioridad Final"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "FinalPriority"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Encontrar grupo que"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Encontrar tickets nuevos/abiertos"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Encontrar gente que"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Encontrar tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Aprobacion final"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Primero"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Primera página"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Forzar cambio"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Encontrado %quant(%1,ticket)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Objeto encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FreeformMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FreeformSingle"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Vie."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Encabezados completos"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Obteniendo el usuario de la firma pgp"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Given to %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "Seleccion de palabras clave globales"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Acciones Globales"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Plantilla global"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr " Ir "
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Firma pgp correcta de %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Ir a página"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Ir a ticket"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Grupo"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Grupo %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Derechos del grupo"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "El grupo ya tiene miembros"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "El grupo no se pudo crear"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "El grupo no se pudo crear: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Grupo creado"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "El grupo no tiene este miembro"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Grupo no encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Grupo no entontrado\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Grupo no especificado\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grupos"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Los grupos no pueden ser miembros de sus propios miembros"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hola!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hola, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historial"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Tel Casa"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Inicio"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Tengo %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "Tengo [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identidad"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Si una aprobacion es rechazada, rechazar la original y borrar las aprobaciones pendientes"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Si esta herramienta estaba setgid, un usuario hostil local podria usar esta herramienta para conseguir acceso administrativo a RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Si ha actualizado algo más arriba, no olvide"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Valor ilegal para %1"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Campo inmutable"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Incluir campos personalizables deshabilitados en el listado."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Incluir colas deshabilitadas en el listado"
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Incluir usuarios deshabilitados en la búsqueda"
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Prioridad inicial"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "InitialPriority"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Error de entrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "Interest noted"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Error interno"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Error interno: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Tipo de grupo inválido"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Derechos inválidos"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Tipo inválido"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Datos no válidos"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Propietario inválido. Estableciéndolo a 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Ãrea inválida"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Permiso inválido"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Valor inválido para %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Valor inválido para el campo personalizable"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Valor inválido para el estado"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Es increiblemente importante que los usuarios sin privilegios no puedan ejecutar esta herramienta"
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Es recomendable crear un usuario unix sin privilegios que pertenezca al grupo correcto y que tenga aceso a ejecutar esta herramienta"
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Tiene varios parametros:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Items pendientes de mi aprobación"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Ene."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Enero"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Unirse o abandonar este grupo"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Julio"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Todo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Junio"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Palabras clave"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Leng"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Último"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Último contacto"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Último contactado"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Se le notifico por ultima vez"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Actualizado por ultima vez"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "LastUpdated"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Izquierda"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Permitir a este usuario acceder al RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Permitir que este usuario tenga privilegios adicionales"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Limitando propietario a %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Limitando cola a %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "El vínculo ya existe"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "El vínculo no pudo ser creado"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Vínculo creado (%2)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Vínculo borrado (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Vínculo no encontrado"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Vincular caso #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Enlazar ticket %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Enlaces"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Direccion"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "El directorio del log %1 no pudo ser encontrado o no se pudo escribir en él.\\n RT no puede ejecutarse."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Autenticado como %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Entrar"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Salir"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Hacer propietario a"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Establecer estatus"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Establecer fecha de plazo"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Establecer fecha de resolución"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Establecer fecha de inicio"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Establecer fecha de inicio"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Establecer fecha de último cambio"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Establecer prioridad"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Establecer cola"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Establecer título"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Administrar grupos y miembros"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Administrar propiedades y configuracion que se aplique a todas las colas"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Administrar colas y propiedades especificas"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Administrar usuarios y contraseñas"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Marzo"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Mayo"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "May."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Miembro añadido"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Miembro borrado"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Miembro no borrado"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Miembro de"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "MemberOf"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Miembros"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Fusión exitosa"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Fusión fallida. No se pudo establecer el EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Fusionar dentro de"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Mensaje"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Falta una clave primaria?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Movil"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Telefono Movil"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modificar lista de control de acceso"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Modificar el campo personalizable %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Modificar los campos personalizables que se apliquen a todas las colas"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modificar plantillas Sript para esta cola"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modificar Scrips para esta cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Modificar ACLs de sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Modificar plantilla %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modificar un campo personalizable para la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Modificar un campo personalizable que se aplique a todas las colas"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modificar un scrip para la cola %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modificar un scrip que se aplique a todas las colas"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Modificar fechas para # %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modificar fechas para #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modificar fechas para ticket # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modificar privilegios globales de grupo"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modificar privilegios globales de grupo."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Modificar privilegios globales para grupos"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Modificar privilegios globales para usuarios"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Modificar acciones globales"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modificar derechos globales de usuario"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modificar privilegios globales de usuario"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Modificar metadatos del grupo o borrar grupo"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modificar privilegios de grupo para %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modificar privilegios de grupo para la cola %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Modificar miembros de este grupo"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modificar la propia cuenta RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modificar personas relacionadas al cola %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modificar personas relacionadas al ticket #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modificar acciones para la cola %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modificar scrips que se aplican a todas las colas"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Modificar plantilla %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modificar plantillas que se aplican a todas las colas"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modificar el grupo %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modificar los observadores de la cola"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modificar el usuario %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modificar el ticket # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modificar el ticket #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modificar tickets"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modificar privilegios de usuario para el grupo %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modificar derechos de usuario para la cola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Modificar observadores para la cola '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModifyACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ModifyOwnMembership"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModifyQueueWatchers"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModifyScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModifySelf"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModifyTemplate"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModifyTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Lun."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Más acerca de %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Mover hacia abajo"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Move hacia arriba"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Múltiple"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Se debe especificar un nombre"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Mis aprobaciones"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mis aprobaciones"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nombre"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nombre en uso"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Se necesita aprobacion del administrador del sistema"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Nunca"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nuevo"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nuevas relaciones"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nueva contraseña"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nueva pendiente de aprobación"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nueva búsqueda"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nuevo campo personalizable"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Nuevo grupo"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nueva contraseña"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Notificación de nueva contraseña enviada"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nueva cola"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nueva solicitud"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nuevos privilegios"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nuevo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nueva búsqueda"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Nueva plantilla"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "El ticket nuevo no existe"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Nuevo usuario"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nuevo usuario llamado"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nuevo observador"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Establecer nueva ventana "
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Siguiente"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Siguiente página"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Alias"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Alias"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "No hay campo personalizable"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "No hay grupo definido"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "No hay cola definida"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "No se encontró el usuario. Por favor consulte al administrador.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "No hay plantilla"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "No se especificó el ticket. Abortada la transacción"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "No se especificó ticket. Abortando las modificaciones al ticket\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "No action"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "No se ha especificado ninguna columna"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Comando no encontrado\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "No hay comentarios sobre este usuario"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "No hay ningún archivo adjunto"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "No hay descripción para %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "No hay grupo especificado"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "No hay contraseña definida"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "No tiene privilegios para crear colas"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "No tiene privilegios para crear tickets en la cola '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "No tiene privilegios para crear usuarios"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "No tiene privilegios para mostrar el ticket"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Sin permiso para ver la actualización del ticket"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "No hay un principal especificado"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "No hay principales seleccionados"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "No hay colas que concuerden con los criterios de búsqueda"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "No se encontraron derechos"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Sin privilegios concedidos"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "No hay búsqueda sobre la que operar"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "No se especificó el identificador del ticket"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "No se especificó el tipo de transacción"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "No se especificó email o usuario"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "No se encontraron usuarios que concuerden con los criterios de búsqueda"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Usuario no encontrado. El manejador cvs está deshabilitado. Por favor consulte a su administrador.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "No se envió ningun valor a _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Nadie"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Campo no existente?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "No autenticado"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "No autenticado."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "No establecido"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "No se ha implementado."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "No está implementado..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Notas"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "La notificación no se pudo enviar"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Notificar AdminCcs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Notificar AdminCcs como comentario"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Notificar otros destinatarios"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Notificar otros destinatarios como comentario"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Notificar al propietario"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Notificar al propietario como comentario"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Notificar propietarios y AdminCcs de nuevos items pendientes de aprobación"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Notificar solicitantes"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Notificar solicitantes y Ccs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Notificar solicitantes y Ccs como comentario"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Notificar solicitantes, Ccs y AdminCcs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Notificar solicitantes, Ccs y AdminCcs como comentario"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "Noviembre"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "No se pudo crear el objeto"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objeto creado"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Oct."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "Octubre"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "en "
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Al comentar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "On Correspond"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Al crear"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Al cambiar de propietario"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Al cambiar de cola"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Al resolver"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Al cambiar de status"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Al hacer transaccion"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Solo muestra aprobaciones para solicitudes creadas despues de %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Solo muestra aprobaciones para solicitudes creadas antes de %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Abierto"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Abrirlo"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Solicitudes abiertas"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Tickets abiertos (del listado) en una nueva ventana"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Tickets abiertos (del listado) en otra ventana"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Open tickets on correspondence"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Ordenación y clasificación"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organización"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Ticket originario: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Pasada la fecha de gracia, la prioridad se mueve a"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Tickets poseidos"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "OwnTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Propietario"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Propietario cambiado de %1 a %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Propietario cambiado forzosamente de %1 a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "El propietario es"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Buscapersonas"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Buscapersonas Tel."
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Padres"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Contraseña"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Recordatorio de contraseña"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Contraseña cambiado"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Contraseña demasiado corta"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Contraseña: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr ""
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Personas"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Realizar una acion definida por el usuario"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Permiso denegado"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Grupos personales"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Grupos personales"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Grupos personales:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Números de teléfono"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Placeholder"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Preferencias"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Prefs"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Preparación cortada"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Prev"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Página anterior"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "No se encontró el principal %1"
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioridad"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "La prioridad empieza en"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilegiado"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Estado privilegiado: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Usuarios privilegiados:"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogrupo para uso interno"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Cola"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Cola %1 no encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Cola '%1' no encontrada\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "Selecciones de palabras clave de la cola"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nombre de la cola"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Acciones de la cola"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "La cola ya existe"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "La cola no se pudo crear"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "La cola no se pudo cargar"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Cola creada"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "No se especifico ninguna cola"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Cola no encontrada"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Colas"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr ""
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 de <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Derechos reservados 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Administración del RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "Error de autenticación en RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "Rechazo del RT: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "Error de configuración del RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Error crítico en RT. El mensaje no fue grabado!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Error del RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT recibió correo (%1) de sí mismo."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT recibió correo (%1) de sí mismo."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT AutoServicio / Tickets cerrados"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT en un vistazo"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT no te pudo autenticar."
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT no pudo encontrar el solicitante a través de una busqueda a la base de datos externa"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT no pudo encontrar la cola: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT no pudo validar esta firma PGP. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT para %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT para %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT ha procesado tus comandos"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT es &copy; Copyright 1996-%1 de Jesse Vincent &lt;jesse@bestpractical.com&gt;. Es distrbuido bajo <a href=\"http://www.gnu.org/copyleft/gpl.html\">la version 2 de la licencia GNU GPL (General Public License)</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT cree que este mensaje puede ser un mensaje rebotado"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT procesará este mensaje como si fuera uno no firmado\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "El modo de comandos por correo de RT requiere autenticación PGP. Ya sea que no haya firmado su mensaje, o que su firma no pueda ser verificada."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Nombre real"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "Nombre real"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Referenciado por"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Hace referencia a"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "RefersTo"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Refinar"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Refinar la búsqueda"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Refrescar esta página cada %1 minutos"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Quitar AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Quitar Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Quitar solicitante"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Responder"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Responder a los tickets"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "ReplyToTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Solicitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Dirección de correo del solicitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Solicitante(s)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "RequestorAddresses"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Solicitantes"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Las solicitudes entran en vencimiento en"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Borrar"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Residencia"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Resolver"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Resolver ticket #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Resuelto"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Responder a los solicitantes"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Resultados"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Resultados por página"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Confirmar contraseña"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Privilegio %1 no encontrado para %2 %3 referente a %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Privilegio delegado"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Privilegio otorgado"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Privilegio cargado"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Privilegio no pudo ser revocado"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Privilegio no encontrado"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Privilegio no cargado"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Privilegio revocado"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Privilegios"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "No se pudieron conceder los privilegios a %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "No se pudieron revocar los privilegios de %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Roles"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootApproval"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sab."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Guardar Cambios"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Guardar cambios"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Acción creada"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Acción borrada"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Acciones"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Acciones para %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Acciones que se aplican a todas las colas"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Búsqueda"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Criterios de búsqueda"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Buscar aprobaciones"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Seguridad:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "Ver cola"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Seleccione un grupo"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Seleccione una cola"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Seleccione un usuario"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Seleccionar un campo personalizable"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Seleccionar grupo"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Seleccionar valores múltiples"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Seleccionar un valor"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Seleccionar cola"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Seleccionar accion"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Selecionar plantilla"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Seleccionar usuario"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "SelectMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "SelectSingle"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Autoservicio"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Enviar mail a todos los observadores"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Enviar mail a todos los observadores como comentario"
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Enviar mail a los solicitantes y Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Enviar mail a los solicitantes y Ccs como comentario"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Envia un mesaje a los solicitantes"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Enviar mail a los Ccs y Bccs listados explicitamente"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Envia mail a los Ccs administrativos"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Envia mail a los Ccs administrativos como comentario"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Enviar mail al propietario"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "Septiembre"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Mostrar resultados"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Mostrar peticiones aprobadas"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Mostrar lo básico"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Mostrar solicitudes denegadas"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Mostrar detalles"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Mostrar solicitudes pendientes"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Mostrar solicitudes esperando otras aprobaciones"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Mostrar ticket en un comentario privado"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Mostrar resumen del ticket"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ShowACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ShowScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "ShowTemplate"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "ShowTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "ShowTicketComments"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Validarse como solicitante de ticket o ticket o cola Cc"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Validarse como ticket o cola AdminCc"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Firma"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Validado como %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Sencillo"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Saltar Menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Clave de ordenación"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Ordenar resultados por"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "Ordenamiento"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Pendiente"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Página de inicio"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Empezado"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "La fecha de inicio '%1' no se pudo leer"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Empieza"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Empezado por"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "La fecha de inicio '%1' no se pudo ser leer"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Estado"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Estado"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Cambio de status"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Estado cambiado de %1 a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "StatusChange"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Robar"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Robado de %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Asunto"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Asunto cambiado a %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Enviar"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Submit Workflow"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Completado"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Dom."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "Superusuario"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Sistema"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Error del sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "Error de sistema. Derecho no concedido"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "Error de sistema. Derecho no concedido"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Error del sistema. Privilegio no delegado."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Error del sistema. Privilegio no otorgado"
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Error de sistema. Incapaz de conceder permisos"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Grupos del sistema"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolegroup for internal use"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Coger"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Cogido"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Plantilla"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Plantilla #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Plantilla borrada"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Plantilla no encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Plantilla no encontrada\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Plantilla procesada"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Plantillas"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Plantillas de %1\\n"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Ese es el valor actual"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Ese no es un valor para este campo personalizable"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Este es el mismo valor"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Ese principal ya es un %1 para esta cola"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Ese principal ya es un %1 para este ticket"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Ese principal no es un %1 para esta cola"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Ese principal no es un %1 para este ticket"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Esa cola no existe"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Ese ticket tiene dependencias sin resolver"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Ese usuario ya tiene ese privilegio"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Ese usuario ya posee ese ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Ese usuario no existe"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Ese usuario ya tiene privilegios"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Ese usuario ya está sin privilegios"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Ese usuario ahora tiene privilegios"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Ese usuario ya no tiene privilegios"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Este usuario ya no tiene privilegios"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Ese usuario puede no poseer tickets en esa cola"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Ese no es un identificador numérico"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Lo básico"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "El CC de un ticket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "El CC administrativo de un ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "El comentario ha sido grabado"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "El siguiente comando encontrará todos los tickets activos en la cola 'general' y pondra su prioridad a 99 si no han sido tocados en 4 horas:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Los siguientes comandos no han sido procesados:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Ha sido establecido el nuevo valor"
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "El propietario de un ticket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "El solicitante de un ticket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Estos comentarios generalmente no están visibles para el usuario"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Este ticket %1 %2 (%3)"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Esta herramiento permite al usuario ejectutar modulos perl arbitrarios desde dentro de RT"
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Parece que esta transacción no tiene contenido"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Los %1 tickets de mayor prioridad de este usuario"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "Los 25 casos de mayor prioridad de este usuario"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Jue."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Ticket # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "Actualizacion Jumbo para el ticket # %1: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Actualización Jumbo para el ticket #%1: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Ticket #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Ticket %1 creado en la cola '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Ticket %1 cargado\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Ticket %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Historial del ticket # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Id del ticket:"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Ticket resuelto"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Archivos adjuntos del ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Contenido del ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Tipo de contenido del ticket"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "No se pudo crear el ticket debido a un error interno"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Ticket creado"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Creación del ticket fallida"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Ticket borrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Id de ticket no encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "Ticket matado"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Ticket no encontrado"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Estado del ticket cambiado"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Observadores del ticket"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Tickets %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Tickets %1 por %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tickets de %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tickets que dependen de esta aprobación:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Tiempo Restante"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Tiempo Trabajado"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Tiempo restante"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tiempo para mostrar"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Tiempo trabajado"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "TimeLeft"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TimeWorked"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Para generar una comparación de este cometido:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Para generar una comparación de este cometido:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Última actualización"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transacción"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transacción %1 limpiada"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transacción creada"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaction->Create no pudo, ya no no especificó un ID de ticket"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Las transacciones son inmutables"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Intentando borrar el privilegio: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Mar."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Tipo"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "No implementado"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Usuario en Unix"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Usuario en Unix"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Codificación de contenido desconocida: %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ilimitado"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "No privilegiado"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "No cogido"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Actualizar"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Id de actualización"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Tipo de actualización"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Actualizar todos estos casos al mismo tiempo"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Actualizar correo"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Actualizar nombre"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Actualización no grabada."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Actualizar tickets seleccionados"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Actualizar firma"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Actualizar ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Actualización de ticket # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Actualizar ticket #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Actualizar ticket #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "El tipo de actualización no fue ni respuesta ni comentario"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Actualizado"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Usuario %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Usuario %1 Contraseña: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Usuario '%1' no encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Usuario '%1' no encontrado\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Definido por el usuario"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "ID de usuario"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Id de usuario"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Privilegios de usuario"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "El usuario no pudo ser creado: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Usuario creado"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Grupos definidos por el usuario"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Usuario notificado"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Vista de usuario"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Nombre de usuario"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Usuarios"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Usuarios que concuerdan con los criterios de búsqueda"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Valor de la cola"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Valores"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Observar"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "WatchAsAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Observador cargado"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Observadores"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "Codificación de Web"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Mie."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Cuando un ticket ha sido aprobado por todos los aprobadores, añadir correspondencia al ticket original"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Cuando un ticket ha sido aprobado por cualquier aprobador, añadir correspondencia al ticket original"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Cuando un ticket se crea"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Cuando una aprobacion de ticket se crea, notifica al propietario y AdminCC del item que espera su aprobación"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Cuando pasa cualquier cosa"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Siempre que un ticket este sin resolver"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Siempre que el propietario de un ticket cambie"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Siempre que la cola de un ticket cambie"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Siempre que el estado de un ticket cambie"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Siempre que ocurra una condicion definida por el usuario"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Siempre que venga algun comentario"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Siempre que venga correspondencia"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Trabajo"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Tel Trabajo"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Trabajado"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Usted ya es propietario de este caso"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Usted no es un usuario autorizado"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Usted solo puede reasignar casos que posee o que no posee nadie³"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "No tiene permiso para ver ese ticket.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Usted encontró %1 casos en la cola %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Se ha desconectado del sistema RT"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "No tiene permiso para crear tickets en esa cola."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "No puede crear solicitudes en esa cola."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Es bienvenido a regresar en cualquier momento."
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Sus solicitudes %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Su administrador del RT ha desconfigurado el alias de correo que invoca el RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Su petición ha sido aprobada por %1. Otras aprobaciones pueden estar pendientes todavia"
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Su peticion ha sido aprobada."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Su petición ha sido rechazada"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Su petición ha sido rechazada"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Nombre o contraseña de usuario incorrectos"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Zip"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[sin asunto]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "como priviligiado para %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "contiene"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "contenido"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "content-type"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "Respuesta (probablemente) no enviada"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "Correspondencia enviada"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "días"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "muerto"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "borrar"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "borrado"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "no coincide"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "no contiene"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "igual a"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "falso"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "nombre de archivo"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "mayor que"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "grupo '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "horas"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "id"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "es"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "no es"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "menor que"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "contiene"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minutos"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "modificaciones\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "meses"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nuevo"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "sin valor"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ninguno"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "no igual a"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "notlike"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "abierto"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "grupo personal '%1' para usuario '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "Cola %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "rechazado"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "resuelto"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "pendiente"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "sistema %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "grupo del sistema '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "el componente que llama no especifica por qué"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ticket #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "verdadero"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "grupo sin descripción %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "grupo sin descripción %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "usuario %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "semanas"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "con plantilla %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "años"
-
diff --git a/rt/lib/RT/I18N/fi.po b/rt/lib/RT/I18N/fi.po
deleted file mode 100644
index eaac6bf..0000000
--- a/rt/lib/RT/I18N/fi.po
+++ /dev/null
@@ -1,5777 +0,0 @@
-# Finnish localization catalog for Request Tracker (RT)
-# First Author: Janne Pirkkanen <jp@oppipoika.net>, Jul 2002
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 2.1.x\n"
-"POT-Creation-Date: 2002-07-08 17:41+0200\n"
-"PO-Revision-Date: 2004-01-13 15:21+0200\n"
-"Last-Translator: Tuukka Vainio <tuukka.vainio@utu.fi>\n"
-"Language-Team: Finnish\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr ""
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr ""
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3.%2 %7 %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 lisätty"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 sitten"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1: %2 muutettu arvoon %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 poistettu"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 pohjalla %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 tässä tapauksessa\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "näkyvillä %1 - %2"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr ""
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr ""
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr ""
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScriptAction %1 ladattu"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 lisätty arvoksi %2lle"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 aliakset vaativat tapauksen id:n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1 aliakset vaativat tapauksen id:n "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 aliakset vaativat tapauksen id:n (osoite %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 - %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 muutettu arvosta %2 arvoon %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "Arvoa %1 ei voitu asettaa arvoksi %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 ei voinut suorittaa tapahtumaa (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 ei voinut asettaa tilaa päätetyksi. RT:n tietokanta saattaa olla vioittunut."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 tärkeintä omistamaani tapausta..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 tärkeintä tilaamaani tapausta..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 ei ole enää %2 tälle työjonolle"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 ei ole enää %2 tälle tapaukselle"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 ei ole enää kentän %2 arvo"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 ei ole kelvollinen työjonon id"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 ei näy"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 onnistui\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 tyyppi tuntematon viestille $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 tyyppi tuntematon viestille %2"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 päättää kaikki päätetyn ryhmän jäsentapaukset."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 jäädyttää [paikallisen] BASE jos se riippuu linkitetystä tapauksesta [tai on sen jäsen]."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: liitetiedostoa ei ole määritelty"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' ei kelpaa tilan arvoksi"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' ei ole tunnettu tapahtuma."
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Rastita laatikko poistaaksesi ryhmän jäsenen)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Rastita laatikko poistaaksesi toiminnon)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Rastita laatikko poistaaksesi)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Rastita laatikko poistaaksesi)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Syötä tapausten numerot tai www-osoitteet, välilyönneillä erotettuina)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Jos jätetään tyhjäksi, palaa arvoon %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Ei arvoa)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Ei kenttiä)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Ei jäseniä)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Ei toimintoja)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Ei pohjia)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Lähettää piilokopion vain tästä päivityksestä pilkulla erotettuihin sähköpostiosoitteisiin. <b>Ei lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Lähettää piilokopion vain tästä päivityksestä pilkulla erotettuihin sähköpostiosoitteisiin. <b>Ei lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Lähettää kopion tästä päivityksestä pilkulla erotettuihin hallinnollisiin sähköpostiosoitteisiin. <b>Lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Lähettää kopion vain tästä päivityksestä pilkulla erotettuihin sähköpostiosoitteisiin. <b>Ei lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Lähettää kopion vain tästä päivityksestä pilkulla erotettuihin sähköpostiosoitteisiin. <b>Ei lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Lähettää kopion tästä päivityksestä pilkulla erotettuihin sähköpostiosoitteisiin. <b>Lisää</b> pysyviksi vastaanottajiksi.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(tyhjä)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(ei nimiä listattuna)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(ei otsikkoa)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(ei arvoa)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(vain yksi tapaus)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(odottaa hyväksyntää)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(odottaa toisia tapauksia)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(pakollinen)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(nimetön)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "25 tärkeintä omistamaani tapausta..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "25 tärkeintä tilaamaani tapausta..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr ""
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Uusi tapaus\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Tyhjä pohja"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE ei löytynyt"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACE:ja voi vain luoda ja poistaa."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Peruutetaan tarkoittamattomien tapausmuutosten välttämiseksi.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Omat asetukset"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Pääsynvalvonta"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Tapahtuma"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Tapahtumaa %1 ei löydetty"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr ""
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Lisää kopio ylläpidolle"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Lisää kopio"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Lisää useampi tiedosto"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Lisää tilaaja"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Lisää uusi yleinen toiminto"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Lisää toiminto tähän työjonoon"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Lisää kaikille työjonoille yhteinen toiminto"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Lisää kommentteja tai vastauksia valituille tapauksille"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Lisää jäseniä"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Lisää uusia tarkkailijoita"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Lisätty toimeksiantaja %1:ksi tähän työjonoon"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Lisätty toimeksiantaja %1:ksi tälle tapaukselle"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Osoite1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Osoite2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Kopio ylläpidolle"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr ""
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr ""
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Työjonojen ylläpito"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Käyttäjien ylläpito"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Ylläpito/Yleiset asetukset"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Ylläpito/Ryhmät"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Ylläpito/Työjono/Perustiedot"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "Kopio ylläpidolle"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr ""
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Kopio ylläpidolle"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Tarkennettu haku"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Jälkeen"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Ikä"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Kaikki kentät"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Kaikki työjonot"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Hyväksyntä"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr ""
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr ""
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Hyväksynnän lisätiedot"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Hyväksy"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Hyväksyjän merkintöjä: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "huhti"
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "huhtikuu"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Nouseva"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Liitä"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Liitä tiedosto"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Liitä tiedosto"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Liitteen '%1' lataaminen ei onnistunut"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Liitetiedosto luotu"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Liitetiedoston nimi"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Liitetiedostot"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "elo"
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "elokuu"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr ""
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automaattivastaus tilaajille"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Virheellinen PGP allekirjoitus: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Virheellinen liitteen numero. Liitetiedostoa '%1' ei löytynyt\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Virheellistä dataa kentässä %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Virheellinen tapahtuman numero liitetiedostolle. %1 pitäisi olla %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Perustiedot"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Piilokopio"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Muista tallentaa muutokset"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "ennen"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Tyhjä"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "Osoite tähän kyselyyn (selaimen kirjanmerkkeihin)"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Lyhyet otsikot"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Tapausten ryhmäpäivitys"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Järjestelmäkäyttäjien muokkaus ei ole sallittua"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Näkeekö toimeksiantaja tämän työjonon"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Kentän lisääminen ilman nimeä ei onnistu"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Tapausta ei voi linkittää itseensä"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Et voi yhdistää jo yhdistettyyn tapaukseen. Sinun ei pitäisi saada tätä virhettä koskaan."
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Sekä juuren ja kohteen määritteleminen samalla ei ole mahdollista"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Käyttäjää ei voitu luoda: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Kopio"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Muuta salasana"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Valitse laatikko poistaaksesi"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Valitse laatikko peruaksesi oikeuden"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Lapset"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Kaupunki"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Suljettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Suljetut tapaukset"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Komentoa ei ymmärretty!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Kommentoi"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Kommenttien osoite"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Kommenttia ei tallennettu"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Kommentoi tapauksia"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Kommentit"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Kommentti (ei lähetetä tilaajille)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Kommentti (ei lähetetä tilaajille)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Kommentit kohteesta %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Kommentit tästä käyttäjästä"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Kommentit lisätty"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Suorita tumppi"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Kokoa rajoitukset"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Ehto"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Ehtoa ei löydetty"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Ylläpito"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Vahvista"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "Yhteystietojärjestelmä"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Järjestelmä ei ymmärrä päivää '%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Sisältö"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Kirjeenvaihdon osoite"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Kirjeenvaihto lisätty"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Vastausta ei tallennettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Uuden tiedon lisääminen kenttään epäonnistui"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Uuden kentän lisäys tapaukselle epäonnistui. %1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Omistajaa ei voitu vaihtaa."
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Uuden kentän lisääminen epäonnistui"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Ryhmän luominen epäonnistui"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Pohjan luonti epäonnistui: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Tapauksen luonti epäonnistui. Työjonoa ei ole asetettu"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Käyttäjän luonti epäonnistui"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Tapausta numerolla %1 ei löytynyt."
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Ryhmää %1 ei löytynyt."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Käyttäjää ei löydetty eikä pystytty luomaan"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Tätä toimeksiantajaa ei löytynyt"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Käyttäjää %1 ei löytynyt."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Ryhmän lataaminen ei onnistunut"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Ei voinut tehdä toimeksiantajaa %1:ksi tälle työjonolle"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Ei voinut tehdä toimeksiantajaa tälle tapaukselle: %1"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Toimeksiantajaa ei voitu poistaa tältä työjonolta: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Toimeksiantajaa ei voitu poistaa tältä tapaukselta: %1"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Jäsenen lisääminen ryhmään ei onnistunut"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Tapahtuman luominen ei onnistunut: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Järjestelmä ei gpg:n vastauksesta ymmärtänyt mitä tehdä\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Ryhmää ei löytynyt\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Riviä ei löytynyt"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Toimeksiantajaa ei löytynyt"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Arvoa ei löytynyt"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Tarkkailijaa ei löytynyt"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Käyttäjää ei löytynyt\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Ei onnistuttu lataamaan käyttäjää %1 tietokannasta.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "RT-asetustiedoston lataaminen ei onnistunut:'%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Toimintojen lataaminen ei onnistunut."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Ryhmän %1 lataaminen ei onnistunut"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Linkin lataaminen ei onnistunut"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Työjonon lataaminen ei onnistunut"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Työjonon %1 lataaminen ei onnistunut"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Toiminnon lataaminen ei onnistunut"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Pohjan lataaminen ei onnistunut"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Tämän käyttäjän lataaminen ei onnistunut (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Tapauksen '%1' lataaminen ei onnistunut"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Maa"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Luo"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Luo tapauksia"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Luo kenttä"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Luo kenttä työjonolle %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Luo kenttä, jota sovelletaan kaikkiin työjonoihin"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Luo uusi kenttä"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Luo uusi yleinen toiminto"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Luo uusi ryhmä"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Luo uusi henkilökohtainen ryhmä"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Luo uusi työjono"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Luo uusi toiminto"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Luo uusi pohja"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Luo uusi tapaus"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Luo uusi käyttäjä"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Luo uusi työjono"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Luo työjono nimeltään"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Luo tapaus"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Luo toiminto työjonolle %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Luo pohja"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Luonti epäonnistui %1 / %2 / %3 "
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Luonti epäonnistui: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Luo uusia tapauksia tämän toiminnon pohjalta"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Luo tapaus"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Luo tapauksia tähän työjonoon"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Luo, muokkaa ja poista kenttiä"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Luo, poista ja muokkaa työjonoja"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Luo, poista ja muokkaa kenen tahansa henkilökohtaisten ryhmien jäseniä"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Luo, poista ja muokkaa henkilökohtaisten ryhmien jäseniä"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Luo, poista ja muokkaa käyttäjiä"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr ""
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Luotu"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Luotu kenttä %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Luotu pohja %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Tämänhetkiset suhteet"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Tämänhetkinen toiminto"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Tämänhetkiset jäsenet"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Tämänhetkiset oikeudet"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Tämänhetkiset hakumääritteet"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Tämänhetkiset tarkkailijat"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Kentät"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Kenttä %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Kentällä %1 on arvo"
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Kentällä %1 ei ole arvoa"
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Kenttää %1 ei löytynyt"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Kenttä poistettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Kenttää ei löytynyt"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Kentän arvoa %1 ei löytynyt kentälle %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Kentän arvo muutettu arvosta %1 arvoon"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Kentän arvoa ei pystytty poistamaan"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Kentän arvoa ei löydetty"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Kentän arvo poistettu"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr ""
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Päivät"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "joulu"
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "joulukuu"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr ""
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr ""
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr ""
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr ""
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Oletustapahtumapohja"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Oletus: %1/%2 muutettu arvosta %3 arvoon %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delegoi oikeuksia"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr ""
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr ""
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Poista"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Poista tapaukset"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Tämän objektin poistaminen saattaa rikkoa tietokannan viitteet"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Tämän objektin poistaminen rikkoo tietokannan viitteet"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Tämän objektin poistaminen rikkoo tietokannan viitteet"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr ""
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Tästä tapauksesta riippuu"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Riippuvuudet: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Riippuu tapauksesta"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Laskeva"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Kuvaa tapausta"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Kuvaus"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Yksityiskohdat"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Näytä"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Näytä käyttöoikeuslista"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Näytä työjonon toimintopohjat"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Näytä työjonon toiminnot"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Näkymä"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Näytä tapaus #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Tee mitä tahansa ja kaikki"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Älä päivitä tätä sivua"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Älä näytä hakutuloksia"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Lataa"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Erääntyy"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Erääntymispäivää '%1' ei onnistuttu tulkkaamaan järjestelmälle."
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "VIRHE: Tapauksen '%1' lataaminen ei onnistunut: %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Muokkaa"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Muokkaa työjonon %1 kenttiä"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Muokkaa suhteita"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Muokkaa työjonon %1 pohjia"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Muokkaa avainsanoja"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Muokkaa toimintoja"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Muokkaa järjestelmäpohjia"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Muokkaa työjonon %1 pohjia"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Muokataan työjonon %1 asetuksia"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Muokataan käyttäjän %1 asetuksia"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Muokataan kenttää %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Muokataan ryhmän %1 jäseniä"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Muokataan henkilökohtaisen ryhmän %1 jäseniä"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Muokataan pohjaa %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Joko juuri tai kohde täytyy olla määritelty"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Sähköposti"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Sähköpostiosoite on jo käytössä"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Sähköpostiosoite"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Sähköpostin koodaus"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Aktiivinen (rastin poistaminen passivoi kentän)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Aktiivinen (rastin poistaminen passivoi ryhmän)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Aktiivinen (rastin poistaminen passivoi työjonon)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Aktiiviset työjonot"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Aktivoitu tila %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Anna useampi arvo"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Anna yksi arvo"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Lisää tapausten numerot tai www-linkit. Erota useammat välilyönneillä."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Virhe"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Virhe parametreissa: Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Virhe parametreissa: Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Virhe parametreissa: Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Virhe parametreissa: Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Kaikki"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "Ulkoinen autentikointitunnus"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "Ulkoinen yhteystietotunnus"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Lisätieto"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "'Erioikeutettu'-valeryhmää ei löytynyt"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "'Erioikeudeton'-valeryhmää ei löytynyt"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "helmi"
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "helmikuu"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Fin"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Loppuprioriteetti"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Etsi ryhmä, jonka"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Etsi uudet/avoimet tapaukset"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Etsi käyttäjät, joiden"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Hae tapauksia"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Ensimmäinen"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Viimeinen sivu"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr ""
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Pakota muutos"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr ""
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "Vapaamuotoiset yhteystiedot"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Pe"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Kokonaiset otsikot"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Annettu käyttäjälle %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Yleiset"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Yleiset toiminnot"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Yleinen pohja: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Ok!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Hyvä PGP-allekirjoitus käyttäjältä %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Siirry sivulle"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Siirry tapaukseen"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Ryhmä"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Ryhmä %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Ryhmän oikeudet"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Ryhmässä on jo jäsen"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "Ryhmää ei voitu luoda."
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Ryhmää ei voitu luoda: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Ryhmä luotu"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Ryhmässä ei ole sellaista jäsentä"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Ryhmää ei löydetty"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Ryhmää ei löydetty.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Ryhmää ei määritelty.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Ryhmät"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Ryhmät eivät voi olla jäsentensä jäseniä"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hei!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hei, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historia"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Kotipuhelin"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Kotisivu"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr ""
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Numero"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identiteetti"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Jos hyväksyntä hylätään, hylkää alkuperäinen ja poista siitä riippuvat hyväksynnät"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr ""
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Jos olet muuttanut tietoja, muista tallentaa"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Kelpaamaton arvo %1"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Muuttumaton kenttä"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Sisällytä passiiviset kentät listaukseen"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Sisällytä listaukseen myös passiiviset työjonot."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Sisällytä listaukseen myös passiiviset käyttäjät."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Alkuprioriteetti"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Virhe syötteessä"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Sisäinen virhe"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Sisäinen virhe: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Ryhmän tyyppi ei kelpaa"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Kelpaamaton oikeus"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Kelpaamaton tyyppi"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Kelpaamatonta dataa"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Omistaja ei kelpaa. Asetetaan oletusasetusten mukaan 'ei kukaan'"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Kelpaamaton työjono"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Kelpaamaton oikeus"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Kelpaamaton arvo kohteelle %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Kelpaamaton arvo kentälle"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Kelpaamaton arvo tilalle"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Tammi"
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "tammikuu"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Liity tai jätä ryhmä"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Heinä"
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Heinäkuu"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jätti"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "kesä"
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "kesäkuu"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Avainsana"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Kieli"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Viimeinen"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Viimeinen yhteydenotto"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Viimeksi otettu yhteyttä"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Viimeksi huomautettu"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Viimeksi päivitetty"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Jäljellä"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Päästä tämä käyttäjä sisään RT:iin"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Tälle käyttäjälle voidaan antaa oikeuksia"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Rajoitetaan omistajaa %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Rajoitetaan työjonoa %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Linkki on jo olemassa"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Linkkiä ei voitu luoda"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Linkki luotu (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Linkki poistettu (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Linkkiä ei löydetty"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Linkitä tapaus #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Linkitä tapaus #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Linkit"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Sijainti"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Lokihakemistoa %1 ei löytynyt tai kirjoittaminen ei onnistunut.\\n RT ei voi toimia."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Olet kirjautunut sisään tunnuksella %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Kirjaudu sisään"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Kirjaudu ulos"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Aseta omistaja"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Aseta tila"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Aseta erääntymisaika"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Aseta päätösaika"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Aseta aloitusaika"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Aseta alkuaika"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Aseta oltu yhteydessä -aika"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Aseta prioriteetti"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Aseta työjono"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Aseta otsikko"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Hallinnoi ryhmiä ja jäsenyyksiä"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Hallinnoi yleisiä asetuksia, jotka vaikuttavat kaikkiin työjonoihin"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Hallinnoi työjonoja ja työjonokohtaisia asetuksia"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Hallinnoi käyttäjiä ja salasanoja"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Maalis"
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Maaliskuu"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Toukokuu"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Touko"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Jäsen lisätty"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Jäsen poistettu"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Jäsentä ei poistettu"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Jäsen:"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Jäsenet"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Yhdistäminen onnistui"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Yhdistäminen epäonnistui. EffectiveId:n arvoa ei pystytty asettamaan"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Yhdistä"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Viesti"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Kännykkä"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Kännykkä"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Muokkaa käyttöoikeusluetteloa"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Muokkaa kenttää %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Muokkaa kaikkia työjonoja koskevia kenttiä"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Muokkaa tämän työjonon toimintopohjia"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Muokkaa tämän työjonon toimintoja"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Muokkaa järjestelmän käyttöoikeusluetteloa"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Muokkaa pohjaa %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr ""
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Muokkaa työjonon %1 toimintoa"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Muokkaa toimintoa, jota sovelletaan kaikkiin työjonoihin"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Muokkaa tapauksen #%1 päiviä"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Muokkaa tapauksen #%1 päiviä"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Muokkaa ryhmien yleisiä oikeuksia"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Muokkaa ryhmien yleisiä oikeuksia."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Muokkaa yleisiä toimintoja"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Muokkaa yleisiä käyttäjien oikeuksia"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Muokkaa käyttäjien yleisiä oikeuksia."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Muokkaa ryhmän metatietoja tai poista ryhmä"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Muokkaa ryhmän %1 oikeuksia."
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Muokkaa ryhmän oikeuksia työjonossa %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Muokkaa tämän ryhmän jäsenlistaa"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Muokkaa omaa RT-tunnustasi"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Muokkaa työjonoon %1 liittyviä käyttäjiä"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Muokkaa tapaukseen %1 liittyviä käyttäjiä"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Muokkaa työjonoon %1 liittyviä toimintoja"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Muokkaa toimintoja, joita sovelletaan kaikkiin työjonoihin"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Muokkaa pohjaa %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Muokkaaa pohjia, joita sovelletaan kaikkiin työjonoihin"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Muokkaa ryhmää %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Muokkaa työjonon tarkkailjoita"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Muokkaa käyttäjää %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Muokkaa tapausta #%1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Muokkaa tapausta #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Muokkaa tapauksia"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Muokkaa ryhmän %1 käyttäjien oikeuksia"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Muokkaa työjonoon %1 liittyviä käyttäjien oikeuksia"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Muokkaa tapauksen %1 seuraajia"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr ""
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Ma"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Lisätietoa: %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Siirrä alas"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Siirrä ylös"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Monta"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "'Nimi' täytyy määritellä"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Hyväksyntäni"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Hyväksyntäni"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nimi"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nimi on käytössä"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Tarvitsee järjestelmän ylläpitäjän hyväksynnän"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Ei ikinä"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Uusi"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Uusi linkki"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Uusi salasana"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Uusi haku"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Uusi ryhmä"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Uusi salasana"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Uusi salasana"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Uusi työjono"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Uusi tapaus"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Uudet oikeudet"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Uusi toiminto"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Uusi haku"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Uusi pohja"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Uutta tapausta ei löydy"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Uusi käyttäjä"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Uusi käyttäjä pyydetty"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Uusi tarkkailija"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Uusi ikkunan asetus"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Seuraava"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Seuraava sivu"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Lempinimi"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Lempinimi"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Ei kenttiä"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Ryhmää ei ole määritelty"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Työjonoa ei ole määritelty"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Käyttäjää ei löydy. Ole hyvä ja ota yhteyttä RT:n ylläpitäjään.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Ei pohjaa"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Tapausta ei määritelty. Perutaan tapaus "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Tapausta ei määritelty. Poistutaan tapauksen muokkauksesta\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr ""
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Komentoa ei löytynyt\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Käyttäjälle ei ole annettu kommentteja"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Ei kirjeenvaihtoa liitettynä"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Ei kuvausta kohteelle %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Ryhmää ei ole määritelty"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Salasanaa ei ole asetettu"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Ei oikeutta luoda työjonoja"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Ei oikeutta luoda tapauksia työjonoon '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Ei oikeutta luoda käyttäjiä"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Ei oikeutta tarkastella tätä tapausta"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Ei oikeutta päivittää tätä tapausta"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Toimeksiantajaa ei ole määritelty"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Toimeksiantajia ei ole valittu."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Yhtään hakukriteerit täyttävää tapausta ei löytynyt."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Oikeuksia ei löytynyt"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Ei myönnettyjä oikeuksia."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Ei työstettävää hakua"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Tapauksen numeroa ei ole määritelty"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Tapahtuman tyyppiä ei ole määritelty"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Käyttäjää tai sähköpostiosoitetta ei ole määritelty"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Yhtään hakukriteerit täyttävää käyttäjää ei löytynyt."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Ei kelpaa RT-käyttäjäksi. RT:n cvs-käsittelijä irrottautuu. Ole hyvä ja ota yhteyttä RT:n ylläpitäjään.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr ""
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Ei kukaan"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Olematon kenttä?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Sisäänkirjautumaton"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Et ole kirjautunut järjestelmään"
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Ei asetettu"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Ei vielä toteutettu."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Ei vielä toteutettu..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Merkintöjä"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Ilmoitusta ei pystytty lähettämään"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr ""
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr ""
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr ""
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr ""
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr ""
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr ""
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr ""
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr ""
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr ""
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr ""
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Marras"
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "marraskuu"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr ""
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr ""
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Loka"
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "lokakuu"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "-"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr ""
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr ""
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr ""
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr ""
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr ""
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr ""
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr ""
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Näytä vain pyynnöt, jotka on luotu jälkeen %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Näytä vain pyynnöt, jotka on luotu ennen %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Avoin"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Avaa"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Avoimet tapaukset"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Avoimet tapaukset (listasta) uudessa ikkunassa"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Avoimet tapaukset (listasta) toisessa ikkunassa"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Avaa tapaukset, kun esiintyy kirjeenvaihtoa"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Järjestäminen"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Laitos"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Alkuperäinen tapaus: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Ajan kuluessa prioriteetti muuttuu kohti"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Omat tapaukset"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr ""
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Omistaja"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Omistaja vaihdettu tunnuksesta %1 tunnukseen %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Omistaja pakolla vaihdettu tunnuksesta %1 tunnukseen %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Omistaja"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Hakulaite"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Hakulaite-puhelin"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Isät"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Salasana"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Salasanan muistutus"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Salasana liian lyhyt"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Salasana: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr ""
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Käyttäjät"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Pääsy kielletty"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Omat ryhmät"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Omat ryhmät"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Omat ryhmät:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Puhelinnumerot"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Paikanpitäjä"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Asetukset"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Asetukset"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Valmistele tumppi"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Edellinen"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Edellinen sivu"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Toimeksiantajaa %1 ei löytynyt"
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioriteetti"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioriteetti alkaa arvosta"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Erioikeutettu"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Erioikeutuksen tila: &1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Erioikeutetut käyttäjät"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Valeryhmä sisäiseen käyttöön"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Työjono"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Työjonoa %1 ei löytynyt"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Työjonoa '%1' ei löytynyt"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Työjonon nimi"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Työjonon toiminnot"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Työjono on jo olemassa"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Työjonoa ei voitu luoda"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Työjonoa ei voitu ladata."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Työjono luotu"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Työjonoa ei määritelty"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Työjonoa ei löytynyt"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Työjonot"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr ""
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 - %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1, tekijä: <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT Ylläpito"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT Virhe tunnistamisessa"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT palautus: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT Konfiguraatiovirhe"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RT Kriittinen virhe. Viestiä ei tallennettu!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Virhe"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT Sai sähköpostin (%1) itseltään."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Itsepalvelu / Suljetut tapaukset"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT yhdellä silmäyksellä"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT Ei pystynyt tunnistamaan sinua"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT ei löytänyt tilaajaa ulkopuolisesta tietokannasta"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT ei löytänyt työjonoa: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT ei pystynyt tarkistamaan tätä PGP allekirjoitusta.\\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "%1: RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT on prosessoinut antamasi komennot"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT on tekijänoikeuslain alainen, &copy; 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Se on jakelussa seuraavalla lisenssillä: <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT luulee että tämä viesti on palautus"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT prosessoi tämän viestin kuten se olisi allekirjoittamaton."
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT:n sähköpostiohjaustila vaatii PGP-tunnistamista. Et allekirjoittanut (PGP) viestiä tai allekirjoitustasi ei pystytty vahvistamaan."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Oikea nimi"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "Oikea nimi"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Viitattu jostakin"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Viittaus johonkin"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Päivitä"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Päivitä haku"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Päivitä tämä sivu %1 minuutin välein"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Poista kopio ylläpidolle"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Poista kopio"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Poista tilaaja"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Vastaa"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Vastaa tapauksiin"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr ""
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Tilaaja"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Tilaajan sähköpostiosoite"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Tilaajat"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Tilaajat"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Tapaus tulisi suorittaa mennessä"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Palauta"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Koti"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Päätä"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Ratkaise tapaus #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Päätetty"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Vastaus tilaajille"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Tulokset"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Tuloksia sivulle: "
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Vahvista salasana"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Oikeutta %1 ei löydetty %2 %3 laajuudessa %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Oikeus delegoitu"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Oikeus myönnetty"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Oikeus ladattu"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Oikeutta ei voitu perua"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Oikeutta ei löydetty"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Oikeutta ei ladattu"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Oikeus peruttu"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Oikeudet"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Oikeuksia ei voitu myöntää: %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Oikeuksia ei voitu perua: %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Roolit"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "La"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Tallenna muutokset"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Tallenna muutokset"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Toiminto #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Toiminto luotu"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Toiminto poistettu"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Toiminnot"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Toiminnot työjonolle %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Toiminnot, joita sovelletaan kaikkiin työjonoihin"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Hae"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Hakukriteerit"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr ""
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Valitse ryhmä"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Valitse työjono"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Valitse käyttäjä"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Valitse ryhmä"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Valitse useita arvoja"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Valitse yksi arvo"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Valitse työjono"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Valitse toiminto"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Valitse pohja"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Valitse käyttäjä"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Itsepalvelu"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr ""
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr ""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr ""
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr ""
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr ""
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Lähettää postia omistajalle"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Syys"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "syyskuu"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Näytä tulokset"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr ""
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Näytä perustiedot"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr ""
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Näytä yksityiskohdat"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Näytä tapauksen kommentointi"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Näytä tapausten yhteenvedot"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr ""
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Allekirjoitus"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Yksittäinen"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Järjestys"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Järjestä tulokset"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "Lajittelujärjestys"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Jäädytetty"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Etusivu"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Aloitettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Aloittamisaikaa '%1' ei pystytty tulkitsemaan"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Alkaa"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Alkaa mennessä"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Alkamisaikaa '%1' ei pystytty tulkitsemaan"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Tila"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Tila"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Tila muutettu arvosta %1 arvoon %2"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Kaappaa"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Kaapattu käyttäjältä %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Otsikko"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Otsikko vaihdettu: %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Lähetä"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Onnistui"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Su"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Järjestelmä"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Järjestelmävirhe"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Järjestelmävirhe. Oikeutta ei delegoitu."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Järjestelmävirhe. Oikeutta ei luovutettu."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Järjestelmäryhmät"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr ""
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TESTIMERKKIJONO"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Ota itselle"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Otettu"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Pohja"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Pohja #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Pohja poistettu"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Pohjaa ei löydetty"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Pohjaa ei löydetty\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Pohja tulkittu"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Pohjat"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Pohjat työjonolle %1\\n"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Ei ole arvo tälle kentälle"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Tämä on sama arvo"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Toimeksiantaja on jo %1 tälle työjonolle"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Toimeksiantaja on jo %1 tälle tapaukselle"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Toimeksiantaja ei ole %1 tälle työjonolle"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Toimeksiantaja ei ole %1 tälle tapaukselle"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Työjonoa ei ole olemassa"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Tapaus sisältää päättämättömiä riippuvuuksia"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Käyttäjällä on jo tuo oikeus"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Käyttäjä omistaa jo tämän tapauksen"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Käyttäjää ei ole olemassa"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Käyttäjä on jo erioikeutettu"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Käyttäjä on jo erioikeudeton"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Käyttäjä on nyt erioikeutettu"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Käyttäjä on nyt erioikeudeton"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Käyttäjä ei voi omistaa tapauksia tuossa työjonossa"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Ei ole numero"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Perustiedot"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Kommentti on tallennettu"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Seuraavia komentoja ei suoritettu:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Uusi arvo asetettu."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Tapauksen omistaja"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Tapauksen tilaaja"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Nämä kommentit eivät ole yleisesti näkyvillä käyttäjälle"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Tämä tapaus %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Tämä tapahtuma ei näytä sisältävän mitään"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Käyttäjän %1 tärkeintä tapausta"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "Käyttäjän 25 tärkeintä tapausta"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "To"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Tapaus # %1 %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Tapauksen #%1 jättipäivitys: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Tapaus #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Tapaus %1 luotu työjonoon '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Tapaus %1 ladattu\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Tapaus %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Tapauksen historia # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Tapauksen numero"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Tapauksen liitteen"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Tapauksen sisältö"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Tapauksen sisällön tyyppi"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Tapausta ei voitu luoda sisäisestä virheestä johtuen"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Tapaus luotu"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Tapauksen luonti epäonnistui"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Tapaus poistettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Tapauksen numeroa ei löytynyt"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Tapausta ei löydy"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Tapauksen tila vaihdettu"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Tapauksen tarkkailijat"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tapaukset"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tapaukset %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Aikaa jäljellä"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Aikaa käytetty"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Aikaa jäljellä"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Aika"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Aikaa käytetty"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Luodaksesi diffin tästä käskystä:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "To generate a diff of this commit:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Oltu yhteydessä"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Tapahtuma %1 puhdistettu"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Tapahtuma luotu"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Tapahtumat ovat muuttumattomia"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Yritetään poistaa oikeus: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Ti"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Tyyppi"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Toteuttamaton"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unix login"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Käyttäjän Unix-tunnus"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Tuntematon sisällön koodaus %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Rajoittamaton"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Erioikeudeton"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Ottamaton"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Päivitä"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Päivitä numero"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Päivitä tyyppi"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Päivitä kaikki nämä tapaukset kerralla"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Päivitä sähköposti"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Päivitä nimi"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Päivitystä ei tallennettu"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Päivitä valitut tapaukset"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Päivitä allekirjoitus"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Päivitä tapaus"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Päivitä tapaus # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Päivitä tapaus #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Päivitä tapaus #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Päivityksen tyyppi ei ollut kirjeenvaihto eikä kommentti."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Päivitetty"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Käyttäjä %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Käyttäjä %1 Salasana: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Käyttäjää '%1' ei löydetty"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Käyttäjää '%1' ei löydetty\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Käyttäjätunnus"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Käyttäjätunnus"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Käyttäjän oikeudet"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Käyttäjää ei voitu luoda: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Käyttäjä luotu"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Käyttäjän luomat ryhmät"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Käyttäjää informoitu"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Käyttäjän näkymä"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Käyttäjätunnus"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Käyttäjät"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Hakua vastaavat käyttäjät"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Tapauksen arvo"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Arvot"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Tarkkailijat"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "Web-koodaus"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Ke"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr ""
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr ""
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr ""
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr ""
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr ""
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr ""
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr ""
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr ""
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr ""
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Työ"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Työpuhelin"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Tehty"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Omistat jo tämän tapauksen"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Et ole valtuutettu käyttäjä"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Voit palauttaa vain tapauksia, jotka omistat itse tai jotka ovat ilman omistajaa"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Sinulla ei ole valtuuksia tarkastella tätä tapausta.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Löysit %1 tapausta työjonosta %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Olet kirjautunut ulos RT:stä"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Sinulla ei ole valtuuksia luoda tapauksia tähän työjonoon."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Et voi luoda tapauksia tuohon työjonoon."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Tervetuloa kirjautumaan järjestelmään uudelleen"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Sinun %1 tapaustasi"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "RT:n ylläpitäjä on konfiguroinut RT:n käynnisävät sähköpostialiakset väärin."
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr ""
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr ""
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr ""
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Käyttäjätunnuksesi tai salasanasi on väärä"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Postinumero"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "sallittu käyttäjälle %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "sisältää"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "sisältö"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "sisällön tyyppi"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "kirjeenvaihtoa (luultavasti) ei ole lähetetty"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "kirjeenvaihto lähetetty"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "päivää"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "poista"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "poistettu"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "ei sisällä"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "ei sisällä"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "on yhtäsuuri"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "tiedostonimi"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "on suurempi kuin"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "ryhmä %1"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "tuntia"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "numero"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "on"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "ei ole"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "on pienempi kuin"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "sisältää"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minuuttia"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "muokkaukset\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "kuukausia"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "uusi"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr ""
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ei mitään"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "on erisuuri kuin"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "avoin"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "oma ryhmä '%1' käyttäjälle '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "työjono %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "hylätty"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "päätetty"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "jäädytetty"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "järjestelmä %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "järjestelmäryhmä '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "kutsuva komponentti ei eritellyt syytä"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "tapaus #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "tosi"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "kuvailematon ryhmä %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "kuvailematon ryhmä %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "käyttäjä %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "viikkoa"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "pohjalla %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "vuosia"
-
diff --git a/rt/lib/RT/I18N/fr.po b/rt/lib/RT/I18N/fr.po
deleted file mode 100644
index 8d1f3c3..0000000
--- a/rt/lib/RT/I18N/fr.po
+++ /dev/null
@@ -1,4672 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: fr\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2005-08-06 22:14+0200\n"
-"Last-Translator: jfenal <jfenal@free.fr>\n"
-"Language-Team: <fr@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "n°%1: %2"
-
-#: lib/RT/Record.pm:927
-#. ($label)
-msgid "$prefix %1"
-msgstr "$prefix %1"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 n°%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1672 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 ajouté"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "il y a %1 %2"
-
-#: lib/RT/Record.pm:1679 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 changé en %3"
-
-#: lib/RT/Record.pm:1676 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 supprimé"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 avec modèle %3"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) par %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (inchangé)"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Un paramètre à passer à %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Ecrit les mises à jour de statuts sur STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Précisez l'action que vous voulez utiliser"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Précisez la condition que vous voulez utiliser"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Précisez la recherche que vous voulez utiliser"
-
-#: html/Elements/Footer:54
-#. ('&#187;&#124;&#171;', $RT::VERSION, '2005', '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 Copyright 1996-%3 %4."
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 chargée"
-
-#: lib/RT/Record.pm:1709
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 ajouté(e) comme valeur de %2"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 semble être un objet local, mais est introuvable dans la base de données"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 par %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 changé(e) de %2 à %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 copie"
-
-#: lib/RT/Record.pm:931
-msgid "%1 could not be set to %2."
-msgstr "%1 n'a pas pu être positionné à %2"
-
-#: lib/RT/Ticket_Overlay.pm:2751
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 ne peut pas mettre le statut à résolu. La base de données RT est peut être incohérente."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 créé(e)"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 supprimé(e)"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "Mes %1 tickets de plus haute priorité"
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 est un outil agissant sur les tickets depuis un planificateur externe tel que cron."
-
-#: lib/RT/Queue_Overlay.pm:864
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 n'est plus un %2 pour cette file."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "les %1 derniers tickets sans propriétaire"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 objets"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "Droits de %1"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 résoudra tous les membres d'un ticket groupé résolu."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1 de %2 objets"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1 de %2 de %3 objets"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "Recherches sauvées de %1"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: pas d'attachement spécifié"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' est un statut invalide"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Cocher la case pour supprimer)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Cocher les cases pour désactiver les notifications aux destinataires listés)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Cocher les cases pour activer les notifications aux destinataires listés)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Entrer le numéro du ticket ou son URL, séparés par des espaces)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(sera par défaut %1 si laissé vide)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Pas de champ personnalisé)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Aucun membre)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Aucun Scrip)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Aucun modèle)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Aucun)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envoie une copie cachée de cette mise à jour à une liste d'adresses email séparées par des virgules. Ceci <b>ne changera pas</b> les destinataires des mises à jour suivantes.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Envoie une copie de cette mise à jour à une liste d'adresses email séparées par des virgules. Ces personnes <b>recevront</b> les mises à jour suivantes.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envoie une copie de cette mise à jour à une liste d'adresses email séparées par des virgules. Ceci <b>ne changera pas</b> les destinataires des mises à jour suivantes.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Transmettre une copie de cette mise à jour à une liste d'adresses email séparées par des virgules. Ces personnes <b>recevront</b> les mises à jour suivantes.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(Utilisez ces champs lorsque vous sélectionnez 'User Defined' pour une condition ou une action)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(vide)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(aucun nom)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/I18N/fr.po.orig:146 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(sans information)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(aucune valeur)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(un seul ticket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(en attente d'approbation)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(en attente d'autres Collection)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(exigé)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(sans titre)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Statut%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr "<%$field%>"
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Créer un ticket dans\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Un modèle vide"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr "L'utilisateur ne pourra se connecter car aucun mot de passe n'a été défini."
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE non trouvé"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "Les ACE peuvent seulement être créés et effacés."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr "ET"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "A propos"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "contrôle d'accès"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Action"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Action %1 non trouvée"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Action validée.\\n"
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Action préparée..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Ajouter"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Ajouter AdminCC"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Ajouter CC"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Ajouter des colonnes"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Ajouter un critère"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Ajouter d'autres fichiers"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Ajouter Demandeur"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Ajouter une valeur"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Ajouter un scrip qui s'applique à toutes les files"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Ajouter un critère additionnel"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Ajouter des commentaires ou des réponses aux tickets sélectionnés"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Ajouter des membres"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Ajouter de nouveaux observateurs"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Ajouter, retirer et modifier des champs personnalisés pour les objets"
-
-#: lib/RT/Queue_Overlay.pm:764
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Ajout groupe/utilisateur comme %1 pour cette file"
-
-#: lib/RT/Ticket_Overlay.pm:1424
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Ajout groupe/utilisateur comme %1 pour ce ticket"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adresse1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adresse2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Commentaire Admin"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Correspondance Admin "
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Administrateurs de files"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "configuration Gestion/Globale"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "GérerChampPersonnalisé"
-
-#: lib/RT/Group_Overlay.pm:163
-msgid "AdminGroup"
-msgstr "GérerGroupes"
-
-#: lib/RT/Group_Overlay.pm:165
-msgid "AdminGroupMembership"
-msgstr "GérerAppartenanceGroupes"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "GérerGroupesPersonnelsPropres"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "GérerFile"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "GérerUtilisateurs"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Cc Administratif"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Avancé"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Après"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr "Aggrégateur"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Toutes les approbations obtenues"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Toutes les files"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr "Et/Ou"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "S'applique à"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Appliquer"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Appliquer vos changements"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Approbations"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Approbation n°%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Approbation n°%1: Notes non enregistrées en raison d'une erreur système"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Approbation n°%1: Notes non enregistrées"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Approbations obtenues"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Approbations refusées"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Approuver"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Notes de l'approbateur : %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Avr."
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Croissant"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Fixer et supprimer les champs personnalisés"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "FixerChampsPersonnalisés"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Attaché"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Attacher un fichier"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Fichier attaché"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Attachement '%1' ne peut pas être chargé"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Attachement créé"
-
-#: lib/RT/Tickets_Overlay.pm:1702
-msgid "Attachment filename"
-msgstr "Nom de fichier de l'attachement"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Attachements"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attibut supprimé"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Aoû."
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "RéponseAuto"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Réponse automatique aux demandeurs"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Essentiel"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Assurez-vous de sauvegarder vos modifications"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Avant"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr "Logo d'entreprise de Best Practical Solutions, LLC"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Vide"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Gras"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Lien prédéfini"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "En-têtes courts"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "modification de tickets en masse"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Les utilisateurs système ne peuvent être modifiés"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Le groupe/utilisateur peut-il voir cette file"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Impossible d'ajouter une valeur de champ personnalisé sans un nom"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr "Impossible de trouver une collection pour la classe '%1'"
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Impossible de trouver une recherche sauvée et de l'utiliser"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Un ticket ne peut être lié à lui même"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Impossible de sauver cette recherche"
-
-#: lib/RT/Record.pm:1267 lib/RT/Record.pm:1345
-msgid "Can't specifiy both base and target"
-msgstr "Impossible de spécifier à la fois la base et la cible"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Impossible de créer l'utilisateur: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Changer le mot de passe"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Tout cocher"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Cocher la case pour supprimer"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Cocher la case pour retirer le droit"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Fils"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Ville"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Tout effacer"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Fermé"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Tickets fermés"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Commenter"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Adresse de commentaire"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Commentaire sur le ticket"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "CommenterTicket"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Commentaires (non envoyés aux demandeurs)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Commentaires (non envoyés aux demandeurs)"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Commentaires sur cet utilisateur"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Commentaires ajoutés"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "tr(Commit Stubbed)"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Condition"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "La condition satisfait..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Condition non trouvée"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Configuration"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Confirmer"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Contenu"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Type de contenu"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Copier"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Courrier"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Courrier ajouté"
-
-#: lib/RT/Record.pm:1694
-msgid "Could not add new custom field value. "
-msgstr "Impossible d'ajouter une nouvelle valeur de champ personnalisé. "
-
-#: lib/RT/Record.pm:1647
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Impossible d'ajouter une nouvelle valeur de champ personnalisé. %1"
-
-#: lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3020 lib/RT/Ticket_Overlay.pm:3037
-msgid "Could not change owner. "
-msgstr "Impossible de changer l'intervenant. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Impossible de créer le champ personnalisé"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Impossible de créer le champ personnalisé : %1"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:494 lib/RT/Group_Overlay.pm:501
-msgid "Could not create group"
-msgstr "Impossible de créer un groupe"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Impossible de créer le modèle : %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Impossible de créer un ticket. File non indiquée"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Impossible de créer l'utilisateur"
-
-#: lib/RT/Queue_Overlay.pm:742 lib/RT/Ticket_Overlay.pm:1392
-msgid "Could not find or create that user"
-msgstr "Impossible de trouver ou créer cet utilisateur"
-
-#: lib/RT/Queue_Overlay.pm:803 lib/RT/Ticket_Overlay.pm:1473
-msgid "Could not find that principal"
-msgstr "Impossible de trouver ce groupe ou utilisateur"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Impossible de charger le champ personnalisé %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Impossible de charger ce groupe"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr "Impossible de charger l'objet pour %1"
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr "Impossible de charger l'attribut de recherche"
-
-#: lib/RT/Queue_Overlay.pm:762
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Impossible de faire de ce groupe/utilisateur un %1 pour cette file"
-
-#: lib/RT/Ticket_Overlay.pm:1413
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Impossible de faire de ce groupe/utilisateur un %1 pour ce ticket"
-
-#: lib/RT/Queue_Overlay.pm:861
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Impossible de supprimer ce groupe/utilisateur comme un %1 pour cette file"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Impossible de sauver les informations utilisateur"
-
-#: lib/RT/Group_Overlay.pm:1003
-msgid "Couldn't add member to group"
-msgstr "Impossible d'ajouter un membre à ce groupe"
-
-#: lib/RT/Record.pm:1706 lib/RT/Record.pm:1758
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Impossible de créer une transaction : %1"
-
-#: lib/RT/Record.pm:940
-msgid "Couldn't find row"
-msgstr "Colonne introuvable"
-
-#: lib/RT/Group_Overlay.pm:977
-msgid "Couldn't find that principal"
-msgstr "groupe/utilisateur introuvable"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Valeur introuvable"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Impossible de charger %1 depuis la base des utilisateurs.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Impossible de charger la classe %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Impossible de charger le champ personnalisé %1"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Impossible de charger le groupe %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Impossible de charger le lien"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Impossible de charger l'objet %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Impossible de charger la file"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Impossible de charger la file %1"
-
-#: html/SelfService/Display.html:158
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Impossible de charger le ticket '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2620
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr "Impossible de résoudre la base '%1' dans une URI."
-
-#: lib/RT/Ticket_Overlay.pm:2619
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr "Impossible de résoudre la cible '%1' dans une URI."
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Pays"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Ajouter"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Ajouter des tickets"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Ajouter un Champ Personnalisé"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Ajouter un champ personnalisé pour la file %1"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Ajouter un nouveau groupe"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Ajouter un nouveau groupe personnel"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Ajouter un nouveau ticket"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Ajouter un nouvel utilisateur"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Ajouter une file"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Ajouter un scrip pour la file %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Ajouter un modèle"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Ajouter un ticket"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Ajouter de nouveaux tickets basés sur le modèle de ce scrip"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Ajouter un ticket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Ajouter des tickets dans cette file"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Ajouter, supprimer et modifier des champs personnalisés"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Ajouter, supprimer et modifier les files"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Ajouter, supprimer et modifier les membres d'un groupe personnel"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Ajouter, supprimer et modifier les utilisateurs"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr "CréerRechercheSauvée"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CréerTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Créé"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Champ Personnalisé %1 créé"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Créateur"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Liens courants"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Scrips actuels"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Membres actuels"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Droits actuels"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Observateurs actuels"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Champs Personnalisés"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Champs personnalisés pour %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Programme de nettoyage d'action personnalisé"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Programme de préparation d'action personnalisé "
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Condition personnalisée"
-
-#: lib/RT/Tickets_Overlay.pm:2176
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Le champ personnalisé %1 a une valeur."
-
-#: lib/RT/Tickets_Overlay.pm:2172
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Le champ personnalisé %1 n'a pas de valeur."
-
-#: lib/RT/Record.pm:1580 lib/RT/Record.pm:1741
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Le champ personnalisé %1 est introuvable"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "La valeur du champ personnalisé %1 ne peut pas être trouvée pour le champ personnalisé %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "La valeur du champ personnalisé ne peut pas être effacée"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "La valeur du champ personnalisé ne peut par être trouvée"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "La valeur du champ personnalisé est effacée"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "ChampPersonnalisé"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Dates"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Déc."
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Modèle de réponse automatique par défaut"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "File par défaut"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Demandeur par défaut"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Modèle de commentaire administrateur par défaut"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Modèle de courrier administrateur par défaut"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Modèle de courrier par défaut"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Modèle de transaction par défaut"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Déléguer les droits"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Déléguer des droits spécifiques qui vous ont été accordés."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DéléguerDroits"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Délégation"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Supprimer"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Détruire le modèle"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr "Échec de la destruction : %1"
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Supprimer les scrips sélectionnés"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Supprimer les tickets"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "SupprimerTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr "Recherche détruite"
-
-#: lib/RT/Queue_Overlay.pm:395
-msgid "Deleting this object would break referential integrity"
-msgstr "Effacer cet objet briserait l'intégrité référentielle"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Effacer cet objet violerait l'intégrité référentielle"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Refuser"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "En dépend"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Ajout de la dépendance par %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Suppression de la dépendance par %1"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Ajout de la dépendance de %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Suppression de la dépendance de %1"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Dépend de"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Décroissant"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Décrivez la situation ci-dessous"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Description"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Afficher"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Afficher la liste des droits"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Afficher les colonnes"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Afficher les modèles de Scrips pour cette file"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Afficher les Scrips pour cette file"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Mode d'affichage"
-
-#: lib/RT/Group_Overlay.pm:168
-msgid "Display saved searches for this group"
-msgstr "Afficher les recherches sauvegardées de ce groupe"
-
-#: html/Elements/Footer:56
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Distribué selon les termes de la version 2 de la <a href=\"http://www.gnu.org/copyleft/gpl.html\">licence GNU GPL.</a>"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Faire tout et n'importe quoi"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Lancer la recherche"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Ne pas rafraîchir cette page."
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Télécharger"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Télécharger en tant que fichier délimité par tabulations"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Echéance"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Modifier les champs personnalisés pour %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr "Modifier les champs personnalisés pour tous les groupes"
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr "Modifier les champs personnalisés pour tous les utilisateurs"
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr "Modifier les champs personnalisés pour les tickets de toutes les files"
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Modifier les liens"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Modifier la requête"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Modifier les modèles pour la file %1"
-
-#: lib/RT/Group_Overlay.pm:167
-msgid "Edit saved searches for this group"
-msgstr "Modifier les recherches sauvées du groupe"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Modifier les modèles système"
-
-#: lib/RT/Group_Overlay.pm:167
-msgid "EditSavedSearches"
-msgstr "ModifierRecherchesSaugardées"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Modifier la configuration de la file %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Modifier le champ personnalisé %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Modifier les membres du groupe %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Modifier les membres du groupe personnel %1"
-
-#: lib/RT/Record.pm:1282 lib/RT/Record.pm:1359
-msgid "Either base or target must be specified"
-msgstr "La base ou la cible doivent être spécifiées"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Adresse email utilisée"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Activé (Décocher cette case désactive ce champ personnalisé)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Activé (Décocher cette case désactive ce groupe)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Activé (Décocher cette case désactive cette file)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Files actives"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "État %1 activé"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "État actif : %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Saisir plusieurs valeurs"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Saisir les objets ou les URI pour y lier les objets. Séparer les saisies par des espaces."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Saisir une seule valeur"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Saisir les files ou les URI pour y lier les files. Séparer les saisies avec des espaces."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Saisir les tickets ou URI pour y lier les tickets. Séparer les saisies par des espaces."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Saisir au plus %1 valeurs"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Erreur"
-
-#: lib/RT/Queue_Overlay.pm:673
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Erreur de paramètres pour Queue->AddWatcher"
-
-#: lib/RT/Queue_Overlay.pm:834
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Erreur dans les paramètre de Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1341
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Erreur de paramètres pour Ticket->AddWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1507
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Erreur dans les paramètres de Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Échelonner les tickets"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Estimé"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Tout le monde"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Exemple :"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Info supplémentaire"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr "Impossible de créer l'attribut de recherche"
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Recherche du pseudo groupe d'utilisateurs 'Priviligiés' infructueuse."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Recherche du pseudo groupe d'utilisateurs 'non-privilégiés' infructueuse"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Echec de chargement du module %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr "Impossible de charger l'objet pour %1"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Fév."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "NomFichier"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Saisir dans plusieurs champs de type texte"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr "Saisir plusieurs champs de type wiki"
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Saisir dans un champ de type texte"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr "Saisir un champ de type wiki"
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Saisir au plus %1 champs de type texte"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr "Saisir au plus %1 champs de type wiki"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1598
-msgid "Final Priority"
-msgstr "Priorité finale"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "PrioritéFinale"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Trouver les groupes dont"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Trouver les gens dont"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Rechercher des tickets"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Premier"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo !"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Forcer la modification"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr "Format"
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "%quant(%1,ticket) trouvés"
-
-#: lib/RT/Record.pm:943
-msgid "Found Object"
-msgstr "Objet trouvé"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Ven."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "En-têtes complets"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Obtenir le modèle àpartir d'un fichier"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Donné à %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Champs personnalisés globaux"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Configuration globale des champs personnalisés"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Modèle global : %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Lancer"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Lancer !"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Aller au ticket"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Groupe"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Droits de groupe"
-
-#: lib/RT/Group_Overlay.pm:983
-msgid "Group already has member"
-msgstr "Le groupe a déjà un membre"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Le groupe %1 n'a pu être créé"
-
-#: lib/RT/Group_Overlay.pm:521
-msgid "Group created"
-msgstr "Groupe ajouté"
-
-#: lib/RT/Group_Overlay.pm:1155
-msgid "Group has no such member"
-msgstr "Un tel membre n'appartient pas au groupe"
-
-#: lib/RT/Group_Overlay.pm:963 lib/RT/Queue_Overlay.pm:749 lib/RT/Queue_Overlay.pm:809 lib/RT/Ticket_Overlay.pm:1399 lib/RT/Ticket_Overlay.pm:1479
-msgid "Group not found"
-msgstr "Groupe introuvable"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Groupes"
-
-#: lib/RT/Group_Overlay.pm:989
-msgid "Groups can't be members of their members"
-msgstr "Les groupes ne peuvent pas être membres de leurs membres"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Groupes correspondant au critère de recherche"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Cette utilisateur appartient aux groupes"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Bonjour !"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Bonjour, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historique"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Historique du groupe %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Historique de l'utilisateur %1"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Page d'accueil"
-
-#: lib/RT/Base.pm:119
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "J'ai %quant(%1, toupie à béton)."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr "Je suis perdu"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1523
-msgid "Id"
-msgstr "Identifiant"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identité"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Si une approbation est refusée, rejette l'original et supprime les approbations en attente"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "SI aucun demandeur n'est spécifié, créer les tickets pour ce demandeur."
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Si aucune file n'est spécifée, créer les tickets dans cette file."
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Si cet outil était setgid, un utilisateur local mal intentionné pourrait l'utiliser pour obtenir un accès administrateur à RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Si vous avez fait une modification, assurez vous de"
-
-#: lib/RT/Record.pm:934
-msgid "Illegal value for %1"
-msgstr "Valeur incorrecte pour %1"
-
-#: lib/RT/Record.pm:937
-msgid "Immutable field"
-msgstr "Champ non modifiable"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Inclure les groupes inactifs dans le listage."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Afficher les files inactives."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Inclure les utilisateurs désactivés dans le résultat."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr "Requête incomplète"
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr "Requête incomplète"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1573
-msgid "Initial Priority"
-msgstr "Priorité initiale"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "PrioritéInitiale"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Erreur à l'entrée"
-
-#: lib/RT/Ticket_Overlay.pm:3467
-msgid "Internal Error"
-msgstr "Erreur interne"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Erreur interne : %1"
-
-#: lib/RT/Group_Overlay.pm:668
-msgid "Invalid Group Type"
-msgstr "Type de groupe invalide"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Droit invalide"
-
-#: lib/RT/Record.pm:939
-msgid "Invalid data"
-msgstr "Données invalides"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "File invalide"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Droit invalide"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "File invalide pour %1"
-
-#: lib/RT/Record.pm:1598
-msgid "Invalid value for custom field"
-msgstr "Valeur incorrecte pour le champ personnalisé"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Valeur de statut invalide"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Il est extrêmement important que les utilisateurs non autorisés n'aient pas accès à cet outil."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Il est suggéré de créer un utilisateur Unix non privilégié appartenant au bon groupe et ayant accès à RT pour utiliser cet outil."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Il faut plusieurs paramètres :"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr "Italique"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: lib/RT/Group_Overlay.pm:166
-msgid "Join or leave this group"
-msgstr "Rejoignez ou quittez ce groupe"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Tout"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Langue"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Grande"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Dernier"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Dernier contact"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Date dernier contact"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Date dernière MAJ"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "DernièreMAJPar"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Restant"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Donner accès à RT à cet utilisateur"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Autoriser cet utilisateur à recevoir des droits"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr "Relation"
-
-#: lib/RT/Record.pm:1293
-msgid "Link already exists"
-msgstr "Le lien existe déja"
-
-#: lib/RT/Record.pm:1307
-msgid "Link could not be created"
-msgstr "Le lien ne peut être ajouté"
-
-#: lib/RT/Record.pm:1313
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Le lien est ajouté (%1)"
-
-#: lib/RT/Record.pm:1374
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Le lien est effacé (%1)"
-
-#: lib/RT/Record.pm:1380
-msgid "Link not found"
-msgstr "Lien introuvable"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Lier le ticket n°%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Relations"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Charger"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Charger les recherches sauvées :"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr "ChargerRechercheSauvée"
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Modules perl chargés"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr "Recherche %1 chargée"
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Localisation"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Le répertoire de journalisation %1 est introuvable ou inaccessible en écriture.\\n RT ne peut être lancé."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Connecté en tant que %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Connexion"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Déconnexion"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Faire attention aux types différents"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Attribuer"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Appliquer Statut"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Appliquer date d'échéance"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Appliquer date de résolution"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Appliquer date de début"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Appliquer date d'ouverture"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Appliquer Age"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Appliquer priorité"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Appliquer file"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Changer le sujet"
-
-#: lib/RT/Group_Overlay.pm:169
-msgid "Make this group visible to user"
-msgstr "Malkovich Malkovich Malkovich Malkovich"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Gérer les champs personnalisés et leurs valeurs"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Gérer les groupes et leurs membres"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Gérer les propriétés et configurations générales des files"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Gérer les files et leurs propriétés individuelles"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Gérer les utilisateurs et mots de passe"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mai."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Membre %1 ajouté"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Membre %1 supprimé"
-
-#: lib/RT/Group_Overlay.pm:1000
-msgid "Member added"
-msgstr "Membre ajouté"
-
-#: lib/RT/Group_Overlay.pm:1162
-msgid "Member deleted"
-msgstr "Membre supprimé"
-
-#: lib/RT/Group_Overlay.pm:1166
-msgid "Member not deleted"
-msgstr "Membre non supprimé"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Membre de"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Membres"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Appartenance à %1 ajoutée"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Appartenance à %1 supprimée"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Affiliations"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Affiliations de l'utilisateur %1"
-
-#: lib/RT/Ticket_Overlay.pm:2857
-msgid "Merge Successful"
-msgstr "Fusion réussie"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Échec de fusion. Ne peut appliquer EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2752
-msgid "Merge failed. Couldn't set Status"
-msgstr "Échec de fusion. Ne peut appliquer Status"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Fusionner dans"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Fusionné avec %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Message"
-
-#: lib/RT/Ticket_Overlay.pm:2414
-msgid "Message could not be recorded"
-msgstr "Le message ne peut être sauvegardé"
-
-#: lib/RT/Ticket_Overlay.pm:2417
-msgid "Message recorded"
-msgstr "Message sauvegardé"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Les messages relatifs à ce ticket ne seront pas envoyés à..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr "Parenthèses non correspondantes"
-
-#: lib/RT/Record.pm:941
-msgid "Missing a primary key?: %1"
-msgstr "Clé primaire manquante ? : %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobile"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modifier la liste de droits"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr "Modifier les champs personnalisés s'appliquant à %1 pour tous les %2"
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Modifier les champs personnalisés qui s'appliquent à tous les %1"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Modifier les droits du groupe"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Modifier les membres"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Modifier les droits"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modifier les modèles de Scrips pour cette file"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modifier les Scrips pour cette file"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Modifier les droits des usagers"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modifier un champ personnalisé pour la file %1"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modifier le scrip pour la file %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modifier le scrip qui s'applique à toutes les files"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Modifier les objets associés à %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modifier les dates pour n°%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modifier les dates du ticket n°%1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr "Modifier globalement les champs personnalisés"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modifier les droits de groupe globaux"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modifier les droits de groupe globaux."
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modifier les droits utilisateurs globaux"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modifier les droits utilisateurs globaux."
-
-#: lib/RT/Group_Overlay.pm:163
-msgid "Modify group metadata or delete group"
-msgstr "Modifier les métadonnées ou supprimer le groupe"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Modifier les droits de groupe pour le champ personnalisé %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modifier les droits du groupe %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modifier les droits de groupe pour la file %1"
-
-#: lib/RT/Group_Overlay.pm:165
-msgid "Modify membership roster for this group"
-msgstr "Modifier la liste des membres pour ce groupe"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modifier son propre profil RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modifier les utilisateurs de la file %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modifier les utilisateurs du ticket n°%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modifier les scrips de la file %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modifier les scrips s'appliquant à toutes les files"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Modifier le modèle %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modifier les modèles globaux"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modifier le groupe %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modifier les observateurs de la file"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modifier l'utilisateur %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modifier le ticket n°%1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modifier le ticket n°%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modifier les tickets"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Modifier les droits utilisateurs pour le champ personnalisé %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modifier les droits utilisateurs pour le groupe %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modifier les droits utilisateurs pour la file %1"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModifierACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "ModifierChampPersonnalisé"
-
-#: lib/RT/Group_Overlay.pm:166
-msgid "ModifyOwnMembership"
-msgstr "ModifierPropresAppartenances"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModifierObservateurs"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModifierScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModifierDonnéesPerso"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModifierModèle"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModifierTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Lun."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Plus d'informations sur %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Aller en bas"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Aller en haut"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Multiple"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Attribut 'Nom' obligatoire"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Mes tickets %1s"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mes approbations"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Mes recherches"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nom"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nom utilisé"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Jamais"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nouveau"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nouveaux liens"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nouveau mot de passe"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nouvelles approbations en attente"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Nouvelle requête"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nouveau champ personnalisé"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Nouveau groupe"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nouveau mot de passe"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Notification de nouveau mot de passe envoyée"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nouvelle file"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nouveaux droits"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nouveau scrip"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Nouveau modèle"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Nouveau ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2721
-msgid "New ticket doesn't exist"
-msgstr "Nouveau ticket inconnu"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Nouvel utilisateur"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nouvel utilisateur appelé"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nouveaux observateurs"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Suivant"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Page suivante"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Surnom"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Aucune classe définie"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Aucun champ personnalisé"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Aucun champ personnalisé défini"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Aucun groupe défini"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Aucune requête"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Aucune file définie"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Pas d'utilisateur RT trouvé. Merci de consulter votre administrateur RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Pas de modèle"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Pas d'action"
-
-#: lib/RT/Record.pm:936
-msgid "No column specified"
-msgstr "Aucune colonne spécifiée"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Pas de commentaires concernant cet utilisateur"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Aucune description disponible pour %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Aucun groupe spécifié"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Aucun groupe trouvé d'après le critère de recherche."
-
-#: lib/RT/Ticket_Overlay.pm:2357
-msgid "No message attached"
-msgstr "Aucun messages attachés"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Pas de mot de passe configuré"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "No permission to create queues"
-msgstr "Permission refusée pour la création de file"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Vous n'êtes pas autorisé à créer un ticket dans cette file '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Permission refusée pour la création d'utilisateurs"
-
-#: html/SelfService/Display.html:167
-msgid "No permission to display that ticket"
-msgstr "Pas de permission pour afficher ce ticket"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Pas de permission pour afficher le ticket mis à jour"
-
-#: lib/RT/Queue_Overlay.pm:796 lib/RT/Ticket_Overlay.pm:1458
-msgid "No principal specified"
-msgstr "Aucun groupe/utilisateur spécifié"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Aucun groupe/utilisateur sélectionné."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Pas de file correspondant aux critères de recherche."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Aucun droit trouvé"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Aucun droit accordé."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr "Pas de recherche chargée"
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Pas de critère de recherche."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Pas de sujet"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Aucun type de transaction spécifié"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Aucun utilisateur ne correspond aux critères de recherche."
-
-#: lib/RT/Record.pm:933
-msgid "No value sent to _Set!\\n"
-msgstr "Pas de valeur à positionner !\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Personne"
-
-#: lib/RT/Record.pm:938
-msgid "Nonexistant field?"
-msgstr "Champ inexistant ?"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Non connecté."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Non renseigné"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Fonction pas encore disponible."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Notes"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Impossible d'envoyer la notification"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Avertir les AdminCCs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Avertir les AdminCCs par un commentaire"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Aviser par cc"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Aviser par cc pour commentaires"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Avertir les autres destinataires"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Avertir les autres destinataires par un commentaire"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Avertir l'intervenant"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Avertir l'intervenant par un commentaire"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "Avertir l'Intervenant du rejet de son ticket"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "Avertir l'Intervenant de l'approbation de son ticket par tous les approbateurs"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "Avertir l'Intervenant de l'approbation de son ticket par un des approbateurs"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Avertir les intervenants et les AdminCCs de nouveaux éléments attendant leur approbation"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Avertir les demandeurs"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Avertir les demandeurs et les Ccs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Avertir les demandeurs et les CC par un commentaire"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Avertir les demandeurs, CCs et AdminCCs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Avertir les demandeurs, CCs et AdminCCs par un commentaire"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "OU"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "L'objet n'a pas pu être ajouté"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "Impossible d'effacer l'objet"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objet ajouté"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Objet effacé"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Les objets de type %1 ne peuvent avoir de champs personnalisés"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Le type d'objet ne correspond pas"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Oct."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Déconnecté"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Édition hors ligne"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Téléchargement hors ligne"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Le"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Lors d'un commentaire"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Lors d'un courrier"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Lors d'une création"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Lors d'un changement d'intervenant"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Lors d'un changement de priorité"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Lors d'un changement de file"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Lors de la résolution/clôture"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Lors d'un changement de statut"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Lors d'une transaction"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Ne montrer que les approbations pour les demandes créées après %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Ne montrer que les approbations pour les demandes créées avant %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Ouvert"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Ouvrir"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Tickets ouverts"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Ouvrir les tickets lors d'une correspondance"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Trier par"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisation"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Ticket source: n°%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Mail sortant suite à l'enregistrement d'un commentaire"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Mail sortant enregistré"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Temps dépassé, priorité augmentée"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Tickets propres"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "PrendreTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1763
-msgid "Owner"
-msgstr "Intervenant"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Le propriétaire ne peut être sauvé."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Intervenant forcé de %1 à %2"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Page %1 sur %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Bipeur"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Parents"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Mot de passe"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Pense-bête pour votre mot de passe"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Mot de passe changé"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr "Le mot de passe doit comporter au moins %1 caractères"
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr "Mot de passe défini"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Mot de passe : %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr "Mot de passe : permission refusée"
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Les mots de passe sont différents."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Les mots de passe sont différents. Votre mot de passe n'a pas été modifié"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Personnes"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Réaliser une action définie par l'utilisateur"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Configuration de Perl"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1117 lib/RT/Group_Overlay.pm:1121 lib/RT/Group_Overlay.pm:1130 lib/RT/Group_Overlay.pm:1240 lib/RT/Group_Overlay.pm:1244 lib/RT/Group_Overlay.pm:1250 lib/RT/Group_Overlay.pm:445 lib/RT/Group_Overlay.pm:542 lib/RT/Group_Overlay.pm:620 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:726 lib/RT/Group_Overlay.pm:730 lib/RT/Group_Overlay.pm:736 lib/RT/Group_Overlay.pm:922 lib/RT/Group_Overlay.pm:926 lib/RT/Group_Overlay.pm:939 lib/RT/Queue_Overlay.pm:1055 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:658 lib/RT/Queue_Overlay.pm:668 lib/RT/Queue_Overlay.pm:682 lib/RT/Queue_Overlay.pm:820 lib/RT/Queue_Overlay.pm:829 lib/RT/Queue_Overlay.pm:842 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1326 lib/RT/Ticket_Overlay.pm:1336 lib/RT/Ticket_Overlay.pm:1350 lib/RT/Ticket_Overlay.pm:1491 lib/RT/Ticket_Overlay.pm:1501 lib/RT/Ticket_Overlay.pm:1515 lib/RT/Ticket_Overlay.pm:1632 lib/RT/Ticket_Overlay.pm:1952 lib/RT/Ticket_Overlay.pm:2090 lib/RT/Ticket_Overlay.pm:2260 lib/RT/Ticket_Overlay.pm:2310 lib/RT/Ticket_Overlay.pm:2482 lib/RT/Ticket_Overlay.pm:2585 lib/RT/Ticket_Overlay.pm:2633 lib/RT/Ticket_Overlay.pm:2712 lib/RT/Ticket_Overlay.pm:2726 lib/RT/Ticket_Overlay.pm:2950 lib/RT/Ticket_Overlay.pm:2960 lib/RT/Ticket_Overlay.pm:2965 lib/RT/Ticket_Overlay.pm:3188 lib/RT/Ticket_Overlay.pm:3192 lib/RT/Ticket_Overlay.pm:3335 lib/RT/Ticket_Overlay.pm:3461 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Accès refusé"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Groupes personnels"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Groupes personnels"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Groupes personnels:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Numéros de téléphone"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Préférences"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Préparation interrompue"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Précédent"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Page précédente"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Personne/groupe %1 non trouvé."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1547
-msgid "Priority"
-msgstr "Priorité"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "La priorité débute à "
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Privé:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilégié"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Statut privilégiés : %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Utilisateurs privilégiés"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudo groupe pour usage interne"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Requête"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Constructeur de requête"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1374
-msgid "Queue"
-msgstr "File"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "File %1 non trouvée"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nom de la file"
-
-#: lib/RT/Queue_Overlay.pm:366
-msgid "Queue already exists"
-msgstr "File déjà créée"
-
-#: lib/RT/Queue_Overlay.pm:375 lib/RT/Queue_Overlay.pm:381
-msgid "Queue could not be created"
-msgstr "Impossible de créer la file"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "File ne pouvant être chargée."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:385 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "File créée"
-
-#: html/SelfService/Display.html:126 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "File inconnue"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Files"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Recherche rapide"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Création rapide de ticket"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 pour %2"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Administration RT"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Erreur RT"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Variables de RT"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT en un coup d'Å“il"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr "RT ne peut enregistrer votre session."
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT pour %1"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Nom"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Ajout d'une référence par %1"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Suppression de la référence par %1"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Ajout d'une référence à %1"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Suppression d'une référence à %1"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Mentionné par"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Se rapporte à"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Rafraîchir cette page toutes les %1 minutes."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Enlever AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Enlever Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Enlever Demandeur"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Répondre"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Adresse de réponse"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Répondre aux demandeurs"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Répondre aux tickets"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "RépondreTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Demandeur"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Demandeurs"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Le demande doit être résolue dans"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Le paramètre requis '%1' n'est pas spécifié"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Remise à zéro"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Domicile"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Résoudre"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Résoudre le ticket n°%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Résolu"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Résultats"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Saisissez à nouveau votre mot de passe"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Annuler"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Droit délégué"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Droit accordé"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Droit activé"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Droit irrévocable"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Droit inconnu"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Droit non activé."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Droit révoqué"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Droits"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Les droits n'ont pas pu être attribués à %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Les droits n'ont pas pu être révoqués pour %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Rôles"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Lignes par pages"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sam."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Sauver"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Enregistrer les modifications"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Sauvegarder les préférences"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Enregistrer les modifications"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr "Recherche %1 sauvée"
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Recherches sauvées"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip n°%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip ajouté"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Champs de scrip"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip supprimé"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrips s'appliquant à toutes les files"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Rechercher"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr "Impossible de charger les attributs de recherche"
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Rechercher des approbations"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr "Mise à jour de la recherche %1"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Sécurité :"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Voir les champs personnalisés"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Voir les mails sortant et leurs destinataires"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Voir les commentaires privés du ticket"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Vue récapitulative des tickets"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "VoirChampPersonnalisé"
-
-#: lib/RT/Group_Overlay.pm:169
-msgid "SeeGroup"
-msgstr "VoirGroupe"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "VoirFile"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Choisissez un champ personnalisé"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Choisir un groupe"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Choisir une file"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Choisir une file pour votre nouveau ticket"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Choisir un utilisateur"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Choisir le champ personnalisé"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Choisir des champs personnalisés pour tous les groupes d'utilisateurs"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr "Choisir des champs personnalisés pour tous les utilisateurs"
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr "Choisir des champs personnalisés pour toutes les files"
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Choisir des champs personnalisés pour les opération sur les tickets de toutes les files"
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Choisir le groupe"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Choisir plusieurs valeurs"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Choisir une valeur"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Choisir la file"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Choisir le scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Choisir le modèle"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Choisir au plus %1 valeurs"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Choisir l'utilisateur"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Champs personnalisés sélectionnés"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Objets sélectionnés"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Envoyer un courrier à tous les observateurs"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Envoyer un mail de commentaire à tous les observateurs"
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Envoyer un courrier aux demandeurs et aux CCs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Envoyer un courrier aux demandeurs et aux CCs en tant que commentaire"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Envoyer un courrier aux demandeurs"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Envoyer un courrier aux CCs et Bccs explicitement indiqués"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Envoyer un courriel en cc"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Envoyer un courriel en cc pour commentaires"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Envoyer un mail aux AdminCCs"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Envoyer un mail aux AdminCCs en tant que commentaire"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Envoyer un courrier à l'intervenant"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Afficher"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Afficher les approbations"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Afficher les colonnes"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Afficher les résultats"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Afficher les requêtes approuvées"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Affichage court"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Afficher les requêtes refusées"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Affichage long"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Afficher les requêtes en attente"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Afficher les requêtes attendant d'autres approbations"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "AfficherACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr "VoirOngletConfiguration"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "AfficherEmailSortant"
-
-#: lib/RT/Group_Overlay.pm:168
-msgid "ShowSavedSearches"
-msgstr "AfficherRecherchesSauvées"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "AfficherScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "AfficherModèle"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "AfficherTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "AfficherCommentairesTickets"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "S'identifier en tant que demandeur ou CC de file ou de ticket"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "S'identifier en tant qu'AdminCC de ticket ou de file"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Signature"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Unique"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr "Taille"
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Passer le menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Petite"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Trier"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Étape"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Ouvert le"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Débute"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Etat"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1407
-msgid "Status"
-msgstr "Statut"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Changement de statut"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Voler"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Voler les tickets "
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "VolerTicket"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Volé à %1"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr "Style"
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1489
-msgid "Subject"
-msgstr "Sujet"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Sujet modifié en %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Valider"
-
-#: lib/RT/Group_Overlay.pm:774
-msgid "Succeeded"
-msgstr "Réussi"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Dim."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperUtilisateur"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Système"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Configuration système"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Erreur système"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr "Erreur système : %1"
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Outils système"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Erreur système. Droit non délégué."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Erreur système. Droit non accordé."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Groupes systèmes"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolegroup à usage interne"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "Chaîne_de_test"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Prendre"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Prendre les tickets"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "PrendreTicket"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Pris"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Modèle"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Modèle n°%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Modèle supprimé"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Modèle inconnu"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Modèle analysé"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Modèles"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:932
-msgid "That is already the current value"
-msgstr "Ceci est déjà la valeur actuelle"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Valeur incorrecte pour ce champ personnalisé"
-
-#: lib/RT/Ticket_Overlay.pm:1963
-msgid "That is the same value"
-msgstr "Valeur identique"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Ce groupe/utilisateur dispose déjà de ce droit"
-
-#: lib/RT/Queue_Overlay.pm:754
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Ce groupe/utilisateur est déjà un %1 pour cette file"
-
-#: lib/RT/Ticket_Overlay.pm:1404
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Ce groupe/utilisateur est déjà un %1 pour ce ticket"
-
-#: lib/RT/Queue_Overlay.pm:853
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Ce groupe/utilisateur n'est pas un %1 pour cette file"
-
-#: lib/RT/Ticket_Overlay.pm:1959
-msgid "That queue does not exist"
-msgstr "File inconnue"
-
-#: lib/RT/Ticket_Overlay.pm:3197
-msgid "That ticket has unresolved dependencies"
-msgstr "Ticket ayant des tickets fils ou dépendants non résolus"
-
-#: lib/RT/Ticket_Overlay.pm:3001
-msgid "That user already owns that ticket"
-msgstr "Cet utilisateur possède déjà ce ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2973
-msgid "That user does not exist"
-msgstr "Utilisateur inconnu"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Utilisateur possédant déjà un statut privilégié"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Utilisateur déjà sans privilèges"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Utilisateur bénéficiant à présent du statut privilégié"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Cet utilisateur est maintenant non privilégié"
-
-#: lib/RT/Ticket_Overlay.pm:2994
-msgid "That user may not own tickets in that queue"
-msgstr "Cet utilisateur peut ne pas avoir de ticket dans cette file"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Identifiant non numérique"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Éléments de base"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "Le CC d'un ticket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "L'AdminCC d'un ticket"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Cette commande trouve tous les tickets actifs de la file 'general' et positionne leur priorité à 99 s'ils n'ont pas été touchés depuis quatre heures:"
-
-#: lib/RT/Record.pm:935
-msgid "The new value has been set."
-msgstr "La nouvelle valeur est enregistrée."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "L'intervenant d'un ticket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Le demandeur d'un ticket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Ces commentaires ne sont généralement pas accessibles par l'utilisateur"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Ce champ personnalisé ne s'applique pas à cet objet"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Cet possibilité n'est offerte qu'aux administrateurs systèmes"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Ce message va être envoyé à..."
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Cet outil permet à l'utilisateur de lancer un module perl quelconque depuis RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Cette opération semble ne pas avoir de contenu"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Les %1 tickets prioritaires de cet utilisateur"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Jeu."
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Ticket n°%1 mise à jour globale : %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Ticket n°%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Ticket %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Ticket %1 créé dans la file '%2'"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Ticket %1 : %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Champs personnalisés du ticket"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Historique du ticket n°%1 %2"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Ticket résolu"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Transactions du ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1677
-msgid "Ticket content"
-msgstr "Contenu du ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1726
-msgid "Ticket content type"
-msgstr "Type du contenu du ticket"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Une erreur interne a empêché l'ajout du ticket"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Méta-données du ticket"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Statut de ticket modifié"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr "Module de recherche TicketSQL"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tickets"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tickets dépendant de cette approbation:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Temps estimé"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Temps restant"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Temps passé"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Time left"
-msgstr "Temps restant"
-
-#: html/Elements/Footer:67
-msgid "Time to display"
-msgstr "Temps de calcul"
-
-#: lib/RT/Tickets_Overlay.pm:1623
-msgid "Time worked"
-msgstr "Temps passé"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TempsPassé"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr "Titre"
-
-#: html/Elements/Footer:57
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Pour vous renseigner au sujet du support, de la formation, des développements spécifiques ou au sujet de la licence, merci de contacter en anglais %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Annoncé"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Outils"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transaction"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "La transaction %1 est supprimée"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transaction ajoutée"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Champs personnalisées de la transaction"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transation->Create a échoué car vous n'avez pas spécifié de type d'objet et d'id"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Les transactions ne peuvent être transférées"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Mar."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1461
-msgid "Type"
-msgstr "Type"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Fonction non disponible"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Identifiant Unix"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:848
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Type d'encodage de courrier inconnu: %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr "Champ inconnu : $key"
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Illimité"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Recherche non nommée"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Non privilégié"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Champs personnalisés non sélectionnés"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Objets non sélectionnés"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Non pris"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Mettre à jour"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Tout mettre à jour"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Mettre à jour le ticket"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Mettre à jour le type"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Mettre à jour plusieurs tickets"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Mise à jour non enregistrée"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Mettre à jour les tickets sélectionnés"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Mettre à jour le ticket"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Mettre à jour le ticket n°%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Mettre à jour le ticket n°%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Le type de mise à jour n'était ni un commentaire ni un courrier."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Mis(e) à jour"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Uploader"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Télécharger plusieurs fichiers"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Télécharger plusieurs images"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Télécharger un fichier"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Télécharger une image"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Télécharger un maximum de %1 fichiers"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Télécharger au plus %1 images"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Télécharger vos changements"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr "Utiliser les autres outils d'administration de RT"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "L'utilisateur %1 ne peut être trouvé"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Utilisateur défini"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Conditions et actions définies par l'usager"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Droits utilisateurs"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "L'utilisateur a demandé un type de mise à jour non connu pour le champ personnalisé %1 de l'objet %2 n°%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Utilisateur ne peut pas être créé : %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Utilisateur créé"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Groupes utilisateur"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Utilisateur chargé"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Groupe définis par l'utilisateur"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Nom d'utilisateur"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Utilisateurs"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Utilisateurs correspondants aux critères de recherche"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Valider la requête"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Valeurs"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Observer"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "ObserverCommeAdminCC"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Observateurs"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Mer."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Quand un ticket a été approuvé par tous les approbateurs, ajoute le courrier au ticket source"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Quand un ticket a été approuvé par au moins un approbateur, ajoute le courrier au ticket source "
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Quand un ticket est créé"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Quand un ticket d'approbation est créé, informer l'intervenant et l'AdminCC de l'élément attendant leur approbation"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Quand quelque chose arrive"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Lorsqu'un ticket quelconque est résolu/clos"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Lorsqu'un ticket quelconque change d'intervenant"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Lorsqu'un ticket change de priorité"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Lorsqu'un ticket quelconque change de file"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Lorsqu'un ticket quelconque change de statut"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Lorsqu'une condition définie par l'utilisateur est satisfaite"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Lorsque un commentaire arrive"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Lorsque un courrier arrive"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Travail"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Travail hors ligne"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Travaillé"
-
-#: lib/RT/Ticket_Overlay.pm:3104
-msgid "You already own this ticket"
-msgstr "Vous êtes déjà intervenant de ce ticket"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Vous n'êtes pas un utilisateur autorisé"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Vous pouvez seulement réaffecter vos ticket ou ceux qui ne sont pas affectés"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "%1 tickets trouvés dans la file %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Vous avez été déconnecté de RT."
-
-#: html/SelfService/Display.html:133
-msgid "You have no permission to create tickets in that queue."
-msgstr "Vous n'avez pas l'autorisation de créer des tickets dans cette file."
-
-#: lib/RT/Ticket_Overlay.pm:1972
-msgid "You may not create requests in that queue."
-msgstr "Vous ne pouvez pas créer de demandes dans cette file."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Vous êtes invité à vous identifier à nouveau"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Votre demande a été approuvée par %1. D'autres approbations sont peut-être toujours en attente."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Votre demande a été approuvée."
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Votre demande a été rejetée."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Votre nom d'utilisateur ou votre mot de passe est incorrect"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Code Postal"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "autorise la création de recherches sauvées"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "autorise le chargement de recherches sauvées"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "comme accordé à %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr "appartient à"
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "fermé"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "contient"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "jours"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "effacé"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr "n'appartient pas à"
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "ne correspond pas"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "ne contient pas"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "égal à"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr "erreur : ne peut aller plus bas"
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr "erreur : ne peut aller à gauche"
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr "erreur : ne peut aller plus haut"
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "erreur : rien à effacer"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr "erreur : rien à déplacer"
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr "erreur : rien à commuter"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "supérieur à"
-
-#: lib/RT/Group_Overlay.pm:214
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "groupe '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "heures"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "n°"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "est"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "n'est pas"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "inférieur à"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "correspond"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minutes"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "mois"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nouveau"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "sans nom"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "Non renseigné"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "aucun"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "différent de"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "ouvert"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "groupe personnel '%1' pour l'utilisateur '%2'"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "file %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "rejeté"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "résolu"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr "montrer l'onglet de configuration"
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "feuille de calcul"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "bloqué"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Type)
-msgid "system %1"
-msgstr "système %1"
-
-#: lib/RT/Group_Overlay.pm:233
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "groupe système '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "le composant appelant n'a pas spécifié pourquoi"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ticket n°%1 %2"
-
-#: lib/RT/Group_Overlay.pm:236
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "Groupe %1 non décrit"
-
-#: lib/RT/Group_Overlay.pm:211
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "utilisateur %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "semaines"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "années"
-
diff --git a/rt/lib/RT/I18N/he.po b/rt/lib/RT/I18N/he.po
deleted file mode 100644
index b3c5338..0000000
--- a/rt/lib/RT/I18N/he.po
+++ /dev/null
@@ -1,5017 +0,0 @@
-# Hebrew Translation of the RT interface by Shimi.
-# Comments: shimi@shimi.net
-msgid ""
-msgstr ""
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr ""
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr ""
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr ""
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr ""
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr ""
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr ""
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr ""
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 מוצגי×"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr ""
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr ""
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr ""
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr ""
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr ""
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 הפניות ×¢× ×”×¢×“×™×¤×•×ª הגבוהה ביותר בטיפולי..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 הפניות ×¢× ×”×¢×“×™×¤×•×ª הגבוהה ביותר ש×× ×™ פתחתי..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr ""
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr ""
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "זכויות"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(סמן תיבה כדי למחוק חבר בקבוצה)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(סמן תיבה כדי למחוק סקריפ)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(סמן תיבה כדי למחוק)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(סמן תיבות כדי למחוק)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr ""
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr ""
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr ""
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(רק פנייה ×חת)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr ""
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr ""
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"פנייה חדשה ב\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr ""
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "מידע ×ודותי"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr ""
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr ""
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "הוסף העתק ניהולי"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "הוסף העתק"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "הוסף עוד קבצי×"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "הוסף מבקש"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr ""
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "הוסף הערות ×ו תגובות לפניות הנבחרות"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr ""
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "הוסף ×¦×•×¤×™× ×—×“×©×™×"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "כתובת1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "כתובת2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr ""
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr ""
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr ""
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr ""
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr ""
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "העתק ניהולי"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr ""
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "העתק ניהולי"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "×חרי"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr ""
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "×ישור"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr ""
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr ""
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr ""
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr ""
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr ""
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "×פריל"
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "×פריל"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "עולה"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "צרף"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr ""
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "קובץ מצורף"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "קובץ צורף"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "×©× ×§×•×‘×¥ מצורף"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "×§×‘×¦×™× ×ž×¦×•×¨×¤×™×"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "×וגוסט"
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "×וגוסט"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr ""
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr ""
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "בסיסי"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "×ל תשכח לשמור ×ת השינויי×"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "לפני"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "הוסף כתובת זו לספר הכתובות כדי לחזור על ×ותו חיפוש"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "תקציר כותרי×"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "עדכון פניות מרוכז"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr ""
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr ""
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr ""
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "העתק"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr ""
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "סמן תיבה כדי למחוק"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "סמן תיבה כדי לבטל זכות"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "ילדי×"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "עיר"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "נסגר"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "הערה"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr ""
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "הערות (×œ× × ×©×œ×—×•×ª ×ל המבקשי×)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "הערות (×œ× × ×©×œ×—×•×ª ×ל המבקשי×)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "הערות לגבי %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "הערות לגבי משתמש זה"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "הערות נוספו"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr ""
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr ""
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "הגדרות"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr ""
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "תוכן"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr ""
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr ""
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr ""
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr ""
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr ""
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr ""
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr ""
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "×רץ"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "צור"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "צור פניות"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr ""
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "צור קבוצה פרטית חדשה"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "צור תור חדש"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "צור סקריפ חדש"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "צור תבנית חדשה"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "צור פנייה חדשה"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "צור משתמש חדש"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "צור תור חדש"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "צור תור שנקר×"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "צור בקשה"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr ""
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr ""
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr ""
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr ""
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr ""
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr ""
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "נוצר"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "×™×—×¡×™× × ×•×›×—×™×™×"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "קריטריוני החיפוש הנוכחיי×"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "×¦×•×¤×™× × ×•×›×—×™×™×"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr ""
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr ""
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr ""
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr ""
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "ת×ריכי×"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "דצמבר"
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "דצמבר"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr ""
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr ""
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr ""
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr ""
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr ""
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr ""
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr ""
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr ""
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "דלגציות"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "מחק"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr ""
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "×ª×œ×•×™×™× ×‘×•"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "תלוי ב"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "יורד"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "תי×ור"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "פרטי×"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "הצג"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "מצב תצוגה"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "הצג פנייה #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr ""
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "×ל תרענן דף ×–×”."
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "×ל תר××” ×ת תוצ×ות החיפוש"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "הורד"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "ת×ריך יעד"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr ""
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr ""
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr ""
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "××™-מייל"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "מופעל (מחיקת סימון תיבה זו מבטלת ×ת קבוצה זו)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr ""
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr ""
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr ""
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "הכנס פניות ×ו כתובות כדי לקשר פניות ×ליהן. הפרד ×¢×¨×›×™× ×¨×‘×™× ×‘×מצעות רווחי×."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr ""
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr ""
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "פברו×ר"
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "פברו×ר"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "עדיפות סופית"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr ""
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "×ž×¦× ×× ×©×™× ×©"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "×ž×¦× ×¤× ×™×•×ª"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "עמוד ר×שון"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr ""
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "הכרח שינוי"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "נמצ×ו %1 פניות"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr ""
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "שישי"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "×›×•×ª×¨×™× ×ž×œ××™×"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr ""
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "גלוב×לי"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr ""
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "חפש"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr ""
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "קבוצה"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "קבוצה %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "זכויות קבוצה"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "קבוצות"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr ""
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "הסטוריה"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "דף הבית"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr ""
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "זהות"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr ""
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr ""
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "×× ×¢×“×›× ×ª משהו לעיל, ×ל תשכח ל"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr ""
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr ""
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr ""
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr ""
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr ""
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr ""
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr ""
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr ""
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr ""
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "ינו×ר"
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "ינו×ר"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr ""
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "יולי"
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "יולי"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "ג'מבו"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "יוני"
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "יוני"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr ""
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "מגע ×חרון"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "קשר ×חרון"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "נודע ל×חרונה"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "עדכון ×חרון"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "נותרה"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "תן למשתמש זה לגשת ל R"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "תן ×פשרות להעניק זכויות למשתמש ×–×”"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr ""
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr ""
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr ""
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr ""
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr ""
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr ""
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "קישורי×"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "מיקו×"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr ""
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "מחובר כ %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "כניסה"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "יצי××”"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "שנה בעלות ל"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "שנה סטטוס"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "שנה ת×ריך יעד"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "שנה ת×ריך פתרון"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "שנה ת×ריך 'הותחל'"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "שנה ת×ריך התחלה"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "שנע ת×ריך מגע ×חרון"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "שנה עדיפות"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "שנה תור"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "שנה נוש×"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "נהל קבוצות וחברות בקבוצות"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "נהל מ××¤×™×™× ×™× ×•×”×’×“×¨×•×ª ×©×ª×§×¤×™× ×œ×›×œ התורות"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "נהל תורות ומ××¤×™×™× ×™× ×¡×¤×¦×™×¤×™×™× ×œ×ª×•×¨×•×ª"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "נהל ×ž×©×ª×ž×©×™× ×•×¡×¤×¨×™×•×ª"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "מרץ"
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "מרץ"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "מ××™"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "מ××™"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "חבר הוסף"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "חבר נמחק"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "חבר ×œ× × ×ž×—×§"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "חבר ב"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "חברי×"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "מיזוג הצליח"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "מיזוג נכשל. ×œ× ×™×›×•×œ×ª×™ להגדיר מזהה ×פקטיבי"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "מזג לתוך"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "הודעה"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "חסר מפתח ר×שי?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "נייד"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "טלפון נייד"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "שנה רשימת בקרת גישה"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr ""
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr ""
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr ""
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr ""
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr ""
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr ""
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr ""
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "שנה פנייה מספר %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "שינוי פנוייה מספר %1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "שינוי פניות"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr ""
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr ""
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "שני"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "עוד לגבי %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr ""
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr ""
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr ""
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "×”××™×©×•×¨×™× ×©×œ×™"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "×”××™×©×•×¨×™× ×©×œ×™"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "ש×"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "×©× ×‘×©×™×ž×•×©"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr ""
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "חדש"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "×™×—×¡×™× ×—×“×©×™×"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "×¡×™×¡×ž× ×—×“×©×”"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "חיפוש חדש"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "קבוצה חדשה"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "×¡×™×¡×ž× ×—×“×©×”"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "תור חדש"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "בקשה חדשה"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "זכויות חדשות"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "סקריפ חדש"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "חיפוש חדש"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "תבנית חדשה"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "פנייה חדשה"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "פנייה חדשה ×œ× ×§×™×™×ž×ª"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "משתמש חדש"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "משתמש חדש שנקר×"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "×¦×•×¤×™× ×—×“×©×™×"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "הב×"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "דף הב×"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "כינוי"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "כינוי"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr ""
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr ""
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr ""
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr ""
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr ""
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr ""
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr ""
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr ""
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr ""
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr ""
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr ""
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr ""
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr ""
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr ""
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "××£ ×חד"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "×œ× ×‘×ª×•×š המערכת"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "×œ× ×‘×ª×•×š המערכת."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "×œ× ×”×•×–×Ÿ"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr ""
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr ""
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr ""
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr ""
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr ""
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr ""
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr ""
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr ""
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr ""
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr ""
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr ""
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr ""
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "נובמבר"
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "נובמבר"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr ""
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr ""
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "×וקטובר"
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "×וקטובר"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "ב"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr ""
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr ""
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr ""
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr ""
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr ""
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr ""
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr ""
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "הצג רק ××™×©×•×¨×™× ×¢×‘×•×¨ בקשות שנוצרו ×חרי %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "הצג רק ××™×©×•×¨×™× ×¢×‘×•×¨ בקשות שנוצרו לפני %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "פתוח"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "פתח"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "סידור ומיון"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "×רגון"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr ""
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "בעלי×"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "הבעלי×"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "ביפר"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "הורי×"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "סיסמ×"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "מזכיר סיסמ×"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "×¡×™×¡×ž× ×§×¦×¨×” מדי"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "סיסמ×: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "הסיסמ×ות ×ינן תו×מות"
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "×נשי×"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr ""
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "קבוצות ×ישיות"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "קבוצות ×ישיות"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "קבוצות ×ישיות"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "מספרי טלפון"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "מ×פייני×"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "הקוד×"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "דף קוד×"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr ""
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "עדיפות"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr ""
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr ""
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr ""
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "תור"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr ""
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr ""
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr ""
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "תורי×"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "חיפוש מהיר"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr ""
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "ניהול RT"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT ממבט כולל"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT / %1"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "×©× ×מיתי"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "×©× ×מיתי"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "×ž×ª×™×™×—×¡×™× ×ליו"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "מתייחס ל"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "חדד ×ת החיפוש"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "רענן דף זה כל %1 דקות."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "הסר העתק ניהולי"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "הסר העתק"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "הסר מבקש"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "הגב"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "מענה לפנייה"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "מבקש"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "כתובת ×”××™-מייל של המבקש"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "מבקש(×™×)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "כתובת הפונה"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "מבקשי×"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr ""
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "×פס נתוני×"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "בית"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "פתור"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "פתור פנייה #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "נפתר"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "תגובה למבקשי×"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "תוצ×ות"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "תוצ×ות לעמוד"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "הקלד שנית:"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr ""
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "שבת"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "שמור שינויי×"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "שמור שינויי×"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr ""
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr ""
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "חיפוש"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr ""
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr ""
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr ""
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr ""
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "בחר קבוצה"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr ""
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr ""
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr ""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr ""
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr ""
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr ""
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr ""
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "ספטמבר"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "ספטמבר"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "הצג בקשות ש×ושרו"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "הצג בקשות שנדחו"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "הצג בקשות ממתינות"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "הצג בקשות שממתינות ל××™×©×•×¨×™× ×חרי×"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr ""
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "חתימה"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "סדר תוצ×ות על פי"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "מושהה"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "התחיל"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "מתחיל ב"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "מדינה"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "מצב"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "גנוב"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "נגנב מ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "נגנב מ %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "נוש×"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "× ×•×©× ×©×•× ×” ל %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "שלח"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "הצליח"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "ר×שון"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "סופר-משתמש"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "מערכת"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr ""
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr ""
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr ""
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "קח"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "נלקחה"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr ""
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr ""
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr ""
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr ""
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "מידע בסיסי"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr ""
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr ""
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr ""
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr ""
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "חמישי"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "פנייה"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "פנייה מספר %1 עדכון ג'מבו: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "פנייה מספר %1 עדכון ג'מבו: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr ""
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr ""
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr ""
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "מצורף לפנייה"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "פנייה נוצרה"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "פנייה נמחקה"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "מזהה פנייה ×œ× × ×ž×¦×"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "פנייה נמחקה"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "פנייה ×œ× × ×ž×¦××”"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "סטטוס פנייה שונה"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "צופי הפנייה"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "פניות"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "זמן נותר"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "זמן עבודה"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "זמן נותר"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "זמן להציג"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "זמן עבודה"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr ""
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr ""
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "שלישי"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "סוג"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "×œ× ×ž×™×™×•×©×"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr ""
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr ""
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "×œ× ×ž×•×’×‘×œ"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr ""
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "עדכן"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "סוג עדכון"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "עדכן ×ת כל הפניות לעיל בבת ×חת"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "עדכן ××™-מייל"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "עדכן ש×"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr ""
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "עדכן פניות נבחרות"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "עדכן חתימה"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "עדכן פנייה"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr ""
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr ""
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr ""
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "עודכן"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "מזהה המשתמש"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "מזהה המשתמש"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "זכויות המשתמש"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "×©× ×ž×©×ª×ž×©"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "משתמשי×"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr ""
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "רביעי"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr ""
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr ""
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "בכל ×¤×¢× ×©×“×‘×¨ ×›×œ×©×”×•× ×§×•×¨×”"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "בכל ×¤×¢× ×©×¤× ×™×™×” נסגרת"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "בכל ×¤×¢× ×©×‘×¢×œ×™ הפנייה משתנה"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "בכל מצב שתור הפנייה משתנה"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "בכל ×¤×¢× ×©×ž×¦×‘ הפנייה משתנה"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "בכל ×¤×¢× ×©×ž×¦×‘ מוגדר על ידי משתמש קורה"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "בכל ×¤×¢× ×©×”×¢×¨×” מגיעה ב"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "בכל ×¤×¢× ×©×ª×›×ª×•×‘×ª מגיעה ב"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "עבודה"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "טלפון בעבודה"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "זמן טיפול"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "×תה כבר ×”×‘×¢×œ×™× ×©×œ פנייה זו"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "×ינך משתמש מורשה"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "×תה יכול להציב פניה רק ×× ×תה ×”×‘×¢×œ×™× ×©×œ×”, ×ו ש×ין לה בעלי×"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "×ין לך הרש××” כדי לר×ות ×ת פנייה זו.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "מצ×ת %1 פניות בתור %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "התנתקת מהמערכת."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "×ין לך הרש×ות ליצור פניות בתור ×–×”."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "×ינך מורשה ליצור פניות בתור ×–×”."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "הנך מוזמן להיכנס שנית"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "%1 הבקשות שלך"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "מנהל המערכת ×œ× ×”×’×“×™×¨ ×ת כתובות הדו×ר שמפעילות ×ת התוכנה כמו שצריך"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "בקשתך ×ושרה על ידי %1. ייתכן ש××™×©×•×¨×™× × ×•×¡×¤×™× ×¢×“×™×™×Ÿ ממתיני×."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "בקשתך ×ושרה."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "בקשתך נדחתה"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "בקשתך נדחתה."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "×©× ×”×ž×©×ª×ž×© ו/×ו ×”×¡×™×¡×ž× ××™× × × ×›×•× ×™×"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "מיקוד"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[×œ×œ× × ×•×©×]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "שהוענק ל%1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "סגור"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "מכיל"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "תוכן"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "סוג התוכן"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "התכתבות (כנר××”) ×œ× × ×©×œ×—×”"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "התכתבות נשלחה"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "ימי×"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "מחק"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "מחוק"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "×œ× ×ž×›×™×œ"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "×œ× ×ž×›×™×œ"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "שווה ל"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "×©× ×§×•×‘×¥"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "גדול מ"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "קבוצה %1"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "שעות"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "מזהה"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "הו×"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "×”×•× ×œ×"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "פחות מ"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "מכיל"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "דקות"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "דקות"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "חודשי×"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "חדש"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "×ין ערך"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "×ין"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "×œ× ×©×•×•×” ל"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "פתוח"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "נדחה"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "פתור"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr ""
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "מושהה"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr ""
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr ""
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr ""
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr ""
-
diff --git a/rt/lib/RT/I18N/hu.po b/rt/lib/RT/I18N/hu.po
deleted file mode 100644
index 8573508..0000000
--- a/rt/lib/RT/I18N/hu.po
+++ /dev/null
@@ -1,4721 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 3.0.7\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2002-06-22 06:06+0200\n"
-"PO-Revision-Date: 2003-12-01 11:26+0100\n"
-"Last-Translator: Attila K. Mergl <mergl@astron.hu>\n"
-"Language-Team: Hungarian <hu@gnome.hu>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %7. %2 %3 %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "[%1] mezõbe '%2' érték felvétele"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 változtatása: '%2' --> '%3'"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 törölve"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 a %3 sablonnal"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (változatlan)"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - %2-nek átadandó argumentum"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Státuszfrissítés kiíratása a STDOUT-ra"
-
-# msgstr "%1 - Schreibe Statusupdates nach STDOUT"
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Adja meg a használandó akciómodult!"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Adja meg a használandó kondiciómodult!"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Adja meg a használandó keres?modult!"
-
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 betöltve"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 értéke hozzáadva %2 höz"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 nem találhato az adatbázisban, pedig helyi objektumnak látszik"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 (%2)"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 változtatása: '%2' --> '%3'"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 nem állítható %2 re."
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr ""
-"%1 nem tudta a státuszt lezártra állítani. Az RT adatbázisa talán "
-"inkonzisztens."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 létrehozva"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 törölve"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "A %1 nekem kiosztott, legsürgõsebb probléma..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "Ennek a sornak %1 már nem %2-je."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 perc"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 legújabb gazdátlan probléma"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 jogok"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: Nincs melléklet megadva!"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' nem lehet státusz érték"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Törléshez kiválasztandó!)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Szóközökkel elválasztva adható meg a problémák sorszáma vagy URL-je.)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Ha üresen marad: %1)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Nincs egyéni mezõ)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Nincsenek tagok)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Nincs Scrip)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Nincs sablon)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(nincs név)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(üres)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(Nincs név a listában)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(nincs adat)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(nincs adat)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "<br>(Csak egy probléma adható meg!)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr ""
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(szükséges)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(névtelen)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr ""
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Új probléma\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Ãœres sablon"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE nem található"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACE-k csak létrehozhatók és törölhetõk."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr "ÉS"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Magamról"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Hozzáférés ellenõrzése"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Akció"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "%1 akció nem található"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Akció végrehajtva.\\n"
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Akció elõkészítve..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Hozzáad"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Adminisztratív tájékotatást kapó hozzáadása"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Tájékotatást kapó hozzáadása"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Mezõk hozzáadása"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Bõvített keresési feltételek"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "További fájlok csatolása"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Beküldõ hozáadása"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Értékek hozzáadása"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Minden sorra vonatkozó Scrip hozzáadása"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "További feltételek hozzáadása"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "A kiválasztott problémákhoz válasz vagy kiegészítés hozzáadása"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Tagfelvétel"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Új résztvevõk hozzáadása"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Egyéni mezõk lehetséges értékeinek létrehozása, módosítása, törlése"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Hozzendelt egy vezetõt mint %1 ehhez a sorhoz"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Hozzárendelt egy vezetõt mint %1 ehhez a problémához"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Utca, házszám"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Postafiók"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Adminisztratív tájékoztatást kap"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Adminisztratív megjegyzés"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr ""
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Válasszon sort!"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Konfiguráció / Ãltalános beállítások"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "Adminisztratív tájékoztatást kap"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr ""
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Adminisztratív tájékoztatást kap"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Kézi lekérdezés"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "után"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Minden sor"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr "ÉS/VAGY"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Mentés"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "A változtatás mentése"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Lezárás"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Engedélyezés #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Engedélyezés #%1: A megjegyzés rendszerhiba miatt nem rögzíthetõ"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Engedélyezés #%1: Megjegyzés rögzítve"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Lezárás rendben"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Lezárás visszautasítva"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Lezár"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Az engedélyezõ megjegyzése: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "ápr."
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "növekvõ"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Egyéni mezõ hozzárendelése vagy törlése"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Csatol"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Fájl csatolása"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Csatolt fájl"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "A csatolt '%1' nem betölthetõ"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Csatolt fájl létrehozva"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Csatolt fájl neve"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Csatolt fájlok"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "aug."
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Automatikus válasz"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automatikus válasz a beküldõnek"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Alapadatok módosítása"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "BCC"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr ""
-"Ha valamit módosított ne felejtsen el ide kattintani, hogy megtörténjen a"
-
-# ## wieder - Duzen???
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "elõtt"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Ãœres"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Félkövér"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Tömör fejléc"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Tömeges problémafrissítés"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Rendszerfelhasználó nem módosítható"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Ez a vezetõ nem láthatja ezt a sort"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Egyéni mehzõ név nélkül nem hozzáadható"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "A problémát nem lehet önmagához kapcsolni!"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Ezt a lekérdezést nem lehet lementeni"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Nem adhat meg egyszerre bázist és célt"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "A felhasználó nem hozható létre: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Tájékoztatást kap"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Jelszó-változtatás"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Törléshez bejelölni"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Jog megvonásához megjelölni"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Leszármazottak"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Város"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Lezárva"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Lezárt problémák"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Kiegészít"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Kiegészitõcím"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr ""
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Kiegészítés (a beküldõ nem kapja meg!))"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Kiegészítés (a beküldõ nem kapja meg!)"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Kiegészítés ehhez a felhasználóhoz"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Kiegészítés hozzáfûzése"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Feltétel"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "A feltétel nem található"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfiguráció"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Igazolás"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Tartalom"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Másol"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Válasz"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Válasz hozzáfûzése"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr "Az egyéni mezõt nem sikerült hozzáadni."
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Az egyéni mezõértéket nem sikerült hozzáadni a #%1 problémához"
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Nem sikerült a tulajdonost megváltoztatni! "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Nem sikerült létrehozni az egyéni mezõt"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Nem sikerült létrehozni a(z) %1 egyéni mezõt"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Nem sikerült létrehozni a csoportot"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "A sablom nem jött létre: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Nem jött létre a probléma. A sor nincs meghatározva"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "A felhasználó nem jött létre"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "A felhasználót nem sikerült megtalálni vagy létrehozni"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "A vezetõ nem található"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "A(z) %1 egyéni mezõ nem betölthetõ"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "A csoport nem betölthetõ"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "A vezetõ nem lehet %1-e a sornak"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "A vezetõ nem lehet %1-e a problémának"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "A vezetõt nem lehet mint a sor %1-ét eltávolítani"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "A felhasználó adatait nem sikerült elmenteni"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "A tagot nem lehet a csoporthoz adni"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "A tanzakció nem létrehozható: %1"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "A sor nem található"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "A csoport/felhasználó nem található"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Az érték nem található"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr ""
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "A(z) %1 egyéni mezõ nem betölthetõ"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "%1 csoport nem betölthetõ"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "%1 objektum nem betölthetõ"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "A sor nem betölthetõ"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "%1 sor nem betölthetõ"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "A(z) '%1' nem betölthetõ"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Ország"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Felvesz"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Probléma megadása"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Hozzon létre egy új egyéni mezõt!"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Hozzon létre egy egyéni mezõt a(z) %1 sorhoz"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Hozzon létre új csoportot!"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Hozzon létre egy új saját csoportot!"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Új probléma felvétele"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Hozzon létre egy új felhasználót!"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Hozzon létre egy sort!"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Hozzon létre egy scrip-et a(z) %1 sorhoz!"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Hozzon létre egy sablont!"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Új probléma"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Hozzon létre egy új problémát ennek a sablonnak scripjeire alapozva"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Létrehozás"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Hozzon létre problémákat ebben a sorban!"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Egyéni mezõk létrehozása, módosítása, törlése"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Sor létrehozása, módosítása, törlése"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Felhasználók létrehozása, módosítása, törlése"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr ""
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Felvéve"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Létrehozó"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Jelenlegi kapcsolatok"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Jelenlegi Scripek"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Jelenlegi tagok"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Jelenlegi jogok"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Jelenlegi résztvevõk"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Egyéni mezõk"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "%1 egyéni mezõi"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Az akcióhoz rendelt egyéni lezáró kód"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Az akcióhoz rendelt egyéni elõkészítõ kód"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Egyéni feltétel"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Egyéni mezõ %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "[%1] egyéni mezõnek van értéke."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "[%1] egyéni mezõnek nincs értéke."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "[%1] egyéni mezõ nem található"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Egyéni mezõ nem található"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "A(z) %2 egyéni mezõ %1értéke nem található"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Az egyéni mezõ értéke nem található"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Az egyéni mezõ értéke nem található"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Az egyéni mezõ értéke törölve"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr ""
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Idõpontok"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "dec."
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr ""
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Alapértlemezett sor"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Alapértelmezett beküldõ"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr ""
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr ""
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr ""
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr ""
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Jogok továbbadása"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr ""
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr ""
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Jogok továbbadása"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Töröl"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Sablon törlése"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Kiválasztott Scrip törlése"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Problémák törlése"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Elutasítva"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Ettõl függnek"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "A következõktõl függ"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "csökkenõ"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "A probléma szabatos leírása"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Leírás"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Mutat"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Mezõk kiválasztása"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Láthatóak legyenek az ehhez a sorhoz tartozó scrip sablonok"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Láthatóak legyen a sorhoz tartozó scripek"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Megjelenítési mód"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr ""
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Keresés indítása"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Ne frissítse ezt az oldalt."
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Letölt"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Határidõ"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Módosítsa %1 egyéni mezõit!"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Kapcsolatok módosítása"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Lekérdezés szerkesztése kézzel"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Módosítsa a(z) %1 sor sablonjait!"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Módosítsa a rendszersablonokat!"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Módosítsa a(z) %1 csoport tagságát!"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr ""
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Meg kell adni a bázist vagy a célt"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "E-mail cím"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "E-Mail-cím már foglalt"
-
-# ## muss das überhaupt übersetzt werden???
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Aktivált (kiválasztása letiltja ezt az egyéni mezõt)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Aktivált (Kiválasztása letiltja ezt a csoportot)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Aktivált (Kiválasztása letiltja ezt a sort)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Aktív sorok"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Status %1 aktiviert"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Adjon meg több értéket!"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Objektum vagy URI. Szóközzel elválasztva több is megadható"
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Adjon meg egy értéket!"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Sor vagy URI. Szóközzel elválasztva több is megadható"
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Probléma szám vagy URI. Szóközzel elválasztva több is megadható"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Adjon meg egy értéket!"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Hiba"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Hiba a sor paraméterezésében ->AddWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Hiba a sor paraméterezésében->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Hiba a probléma paraméterezésében -> AddWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Hiba a probléma paraméterezésében->DelWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Becsült"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Mindenki"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Például:"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Kiegészítõ információk"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr ""
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "A %1 Modul nem betölthetõ. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "feb."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "fájlnév"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Végsõ prioritás"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr ""
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Találjon olyan csoportot, amelyiknél a"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Találj olyan embereket, akiknél a"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Problémák keresése"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Elsõ"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr ""
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "A változtatás kikényszerítése"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "%quant(%1) problémát találtam"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr ""
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "P"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Teljes fejléc"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "%1 felhasználónak adva"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Ãltalános"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Globális egyéni mezõ"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Egyéni mezõk általános beállításai"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Ãltalános probléma: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Hajrá!"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Hajrá!"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Mutassa a problémát"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Csoport"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Csoportjogok"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Csoportnak már vannak tagjai"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "A csoportot nem lehetett létrehozni: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Csoport létrehozva"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "A csoportnak már van ilyen tagja"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Csoport nem található"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Csoportok"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Csoportok nem lehetnek a saját tagjaik tagjai!"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "A keresési feltételeknek megfeleõ csoportok"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hallo!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hallo %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Részletes történet"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "A %1 csoport története"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "%1 felhasználó története"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Kezdõlap"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr ""
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Sorszám"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Személy"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr ""
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Ha a beküldõ ismeretlen, ezzel legyen az új probléma beküldõje"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Ha nincs megadva sor, ebbe a sorba kerüljenek az új problémák"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr ""
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr ""
-"Ha valamit módosított, ne felejtsen el ide kattintani, hogy megtörténjen a"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Érvénytelen érték %1-nek"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Kép"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Nem változtatható mezõ"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Láthatóak legyenek a letiltott sorok is."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Láthatóak legyenek a letiltott sorok is."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Keresés a letiltott felhasználók között is."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Kezdõ prioritás"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Input hiba"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Belsõ hiba"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Belsõ hiba: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Érvénytelen csoportfajta"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Érvénytelen jog"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Érvénytelen dátum"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Érvénytelen sor"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Érvénytelen jog"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Érvénytelen érték %1-nek"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Érvénytelen érték az egyéni mezõhöz"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Érvénytelen státuszérték"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "jan."
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr ""
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "júl."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Minden módosítása"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "jún."
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Nyelv"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Nagy"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Utolsó"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Utolsó kapcsolat"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Utoljára foglalkoztak vele"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Utoljára aktualizálva"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "Utoljára aktualizálta"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Felhasználónak RT-hozzáférés engedélyezése"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Felhasználónak több jog engedélyezése"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Kapcsolat már létezik"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Kapcsolat nem hozható létre"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Kapcsolat létrehozva (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Kapcsolat törölve (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Kapcsolat nem található"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "%1. számú probléma kapcsolatainak módosítása"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Kapcsolatok módosítása"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Lekérdezés betöltése"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Cím"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr ""
-"Log-könyvtár %1 nem található, vagy nincs írási joga.\\n Az RT tud elindulni."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "%1-ként van bejelentkezve"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Bejelentkezés"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Kijelentkezés"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Legyen a tulajdonos"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Státusz változtatása"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Határidõ változtatása"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Megoldási dátum változtatása"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Hozzáfogás dátumának változtatása"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Kiosztás dátumának változtatása"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Bejelentés dátumának változtatása"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Prioritás állítása"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Sor változtatása"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Tárgy változtatása"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Csoportok és tagjaik kezelése"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Minden sorra vonatkozó tulajdonságok és beállítások kezelése"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Sorok és a sorokra jellemzõ beállítások kezelése"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Felhasználók és jelszavaik kezelése"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "már."
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "máj."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Tag hozzáadva"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Tag törölve"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Tag hozzáadva"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Tag törölve"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Tag nincs törölve"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Tagja a"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Tagok"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "%1 tag hozzáadva"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "%1-beli tagság törölve"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Tagságok"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "%1 felhasználó tagságai"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Beolvasztás sikeres"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Beolvasztás sikertelen Konnte EffectiveId nicht setztn"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr "Beolvasztás sikertelen Konnte EffectiveId nicht setztn"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Beolvasztani ebbe"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Beolvasztva %1-be"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Üzenet szövege"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "A sor nem hozható létre"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Üzenet rögzítve"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobil"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Változtassa meg a %1-re vonatkozó egyéni mezõket!"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Csoportjogok módosítása"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Tagok módosítása"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Jogok módosítása"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Felhasználói jogok módosítása"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Változtassa meg a(z) %1 sor egyéni mezõjét!"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "%1. számú probléma idõadatainak módosítása"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "%1. számú probléma idõadatainak módosítása"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Változtassa meg az általános csoportjogokat!"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Változtassa meg az általános csoportjogokat!"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Változtassa meg az általános felhasználói jogokat!"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Változtassa meg az általános felhasználói jogokat!"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Változztassa meg a(z) %1 sor csoportjogait!"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Módosítsa a(z) %1 csoport jogait"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Változtassa meg a %1 sor csoportjogait!"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr ""
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Változtassa meg a %1 sorhoz tarozó részvevõket!"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "A %1. számú problémában érintett személyek változtatása"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Változtassa meg a(z) %1 sor Scripjeit"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Változtassa meg a minden sorra vonatkozó scripeket!"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Hozzon létre egy sablont!"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Változtassa meg az általános sablonokat!"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "A %1 csoport módosítása"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "%1 felhasználó módosítása"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "%1. számú probléma adatainak módosítása"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "%1. számú probléma alapadatainak módosítása"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr ""
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Változtassa meg a(z) %1 csoport jogait!"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Változtassa meg a(z) %1 sor felhasználói jogait!"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr ""
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "H"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "További részletek %1 felhasználóról"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Lefelé mozgatni"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Felfelé mozgatni"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr ""
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "%1 problémáim"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Lezárás"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Saját lekérdezések"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Név"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "A felhasználói név már foglalt"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Soha"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Új"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Új kapcsolatok"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Új jelszó"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Új lekérdezés"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Új egyéni mezõ"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Új csoport"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Új jelszó"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Új sor"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Új jogok"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Új Scrip"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Új sablon"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Új probléma"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Az új probléma nem létezik"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Új felhasználó"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr ""
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Új résztvevõk"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Következõ"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Következõ oldal"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Becenév"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Nincs egyéni mezõ"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Nincs egyéni mezõ meghatározva"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Nincs csoport meghatározva"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Nincs sor meghatározva"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr ""
-"RT-felhasználó nem található. Vegyew fel a kapcsolatot az RT-"
-"adminisztrátorral.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Nincs sablon"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr ""
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Nincs <b>sor</b> megadva!"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Nincs kiegészítés tárolva"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Nincs leírás a(z) %1-hez"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Nincs <b>csoport</b> megadva!"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Nincs a keresési feltételeknek megfeleõ csoport."
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Nincs jelszó megadva"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Nincs joga sort létrehozni"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Nincs joga a(z) '%1' sorban problémát létrehozni"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Nincs joga felhasználót létrehozni"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr ""
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Nincs joga ezt a problémát aktualizálni"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Nincs <b>felelõs</b> megadva!"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Nincs vezetõ kiválasztva."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Nem található a keresési fletételeknek megfelelõ sor"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Nem találhatók jogok"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Nincsenek jogok engedélyezve."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Nincs feldolgozható keresési lista."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "(nincs tárgy)"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Nincs <b>értesítési típus</b> megadva!"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Nincs a keresési feltételeknek megfeleõ felhasználó."
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr ""
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Senki"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Nem létezõ mezõ?"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Nincs bejelentkezve."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Nincs megadva"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr ""
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Megjegyzések"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Értesítést nem sikerült elküldeni."
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "AdminCCs értesítése"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "AdminCCs értesítése kiegészítésként"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Más címzettek értesítése"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Más címzettek értesítése kiegészítésként"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "A tulajdonos értesítése"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "A tulajdonos értesítése kiegészítésként"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr ""
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Beküldõ értesítése"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "A beküldõ és a tájékoztatást kapó értesítése"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "A beküldõ és a tájékoztatást kapó értesítése kiegészítésként"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Minden résztvevõ tájékozatatása"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Minden résztvevõ értesítése kiegészítésként"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "nov."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "VAGY"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objekum nem hozható létre"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "Az objekumot nem sikerült törölni"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objektum létehozva"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Objektum törölve"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "okt."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "e napon"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Kiegészítéskor"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Válaszoláskor"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Létrehozáskor"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Tulajdonos változásakor"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Prioritás változásakor"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Sor megváltozásakor"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Megoldáskor"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Státusz megváltozásakor"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Tranzakciónál"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Csak a(z) %1 után létrejött poblémák engedélyezései legyenek láthatóak"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr ""
-"Csak a(z) %1 elõtt létrejött problémák engedélyezései legyenek láthatóak"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Nyitott"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Megnyit"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Nyitott problémák"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Rendezés"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Cég, szervezet"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Prioritás idõvel emelkedik"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Saját problémák"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr ""
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Tulajdonos"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Erõszakos tulajdonosváltás: %1 --> %2"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "%1/%2 oldal"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr ""
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Felmenõk"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Jelszó"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Jelszó-emlékeztetõ"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Jelszó megváltoztatva"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "A jelszó túl rövid!"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Jelszó: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "A jelszavak nem egyeznek."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Résztvevõk"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl konfiguráció"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Hozzáférés visszautasítva"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Saját Csoportok"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Saját csoportok"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Saját csoportok:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefonszámok"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Beállításaim"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Elõzõ"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Elõzõ oldal"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "%1 vezetõ nem található."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioritás"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioritás kezdõ értéke"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Kiemelt"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr ""
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Kiemelt felhasználók:"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr ""
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Lekérdezés"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Lekérdezésszerkesztõ"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Sor"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "%2 sor nem található"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "A sor neve"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Sor már létezik"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "A sor nem hozható létre"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "a sor nem tölthetõ be."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "A sor létrehozva"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "A sor nem található"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Sorok"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Gyors lekérdezés"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Probléma felvétele (gyors)"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 %2-nek"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Konfiguráció"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Hiba"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "Ãttekintés"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr " %1 -- Request Tracker "
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Valódi név"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "%1 hivatkozás törölve"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "A következõk kapcsolódnak hozzá"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "A következõkhöz kapcsolódik"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "%1 percenként frissítse ezt az oldalt."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Adminisztratív tájékoztatást kapó eltávolítása"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Tájékoztatást kapó eltávolítása"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Beküldõ eltávolítása"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Válaszol"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Válaszcím"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Válasz a beküldõknek"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Válasz a problémákra"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr ""
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Beküldõ"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Beküldõ"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "A problémát meg kell oldani"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Visszaállít"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Otthoni"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Megold"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "%1. (%2) probléma lezárása"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Megoldva"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Változtatások eredménye"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Jelszó megismételve"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "A jog megosztva"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "A jog betöltve"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "A jog nem vonnható vissza"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "A jog nem található"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "A jog nem található."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Jog visszavonva"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Jogok"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr " %1 jogai nem vonhatók vissza"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Szerepek"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Sorok száma oldalanként"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Szo"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Mentés"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Változtatások mentése"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Beállítások mentése"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Változtatások mentése"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Elmentett lekérdezés"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip létrehozva"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Scrip mezök"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip törölve"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Minden sorhoz érvényes Scripek"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Keresés"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Engedélyezések keresése"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Biztonság:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Eyéni mezõk"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr ""
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Válasszon egy egyéni mezõt!"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Válasszon csoportot!"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr ""
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Válasszon felhasználót!"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Válasszon egy egyéni mezõt!"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Válasszon egy egyéni mezõt!"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Válasszon csoportot!"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Válasszon több értéket!"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Válasszon értéket!"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Válasszon sort!"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Válasszon Scripet!"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Válasszon sablont!"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Válasszon (legfeljebb %1) értéket!"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Válasszon felhasználót"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Kiválasztott egy egyéni mezõk"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Kiválasztott problémák"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr ""
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr ""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr ""
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr ""
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr ""
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr ""
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "szep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Lezárások"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Látható mezõk"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Lekérdezés eredménye"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Láthatóak legyenek a felszabadított problémák"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Problémaleírás"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "láthatóak legyenek az elutasított problémák"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Attribútumok"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Láthatóak legyenek a folyamatban levõ problémák"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Láthatóak legyenek a mások engedélyezésére váró problémák"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr ""
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Aláírás (e-mail-hez)"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Kicsi"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Rendezés"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Elkezdve"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Kiosztva"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Ãllam"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Státusz"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Státusz változtatása: '%1' --> '%2'"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Elcsen"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Problémák elcsenése"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Probléma elcsenése %1 tulajdonostól"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Probléma elcsenése %1 tulajdonostól "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Tárgy"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr ""
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Mentés"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Sikerült"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "V"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Rendszer"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Rendszerkonfiguráció"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Rendszerhiba"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Rendszerkonfiguráció"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Rendszerhiba. Jog nem delegálható ."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Rendszerhiba. Jog nem adható."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Rendszercsoportok"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr ""
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr ""
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Atvesz"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Problémák átvétele"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Ãtvéve"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Sablon"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Sablon #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Sablon törölve"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Sablon nem található"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Sablon beolvasva"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Sablonok"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Szöveg"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Már ez az aktuális érték"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Egyéni mezõhöz érvénytelen értek"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Ez ugyanaz az érték"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "A felhasználónak/csoportnak mát van ilyen joga"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "A vezetõ már %1-a a sornak"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "A vezetõ már %1-a a problémának"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "A vezetõ már nem %1-a a sornak"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Ez a sor nem létezik"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Már ez a felhasználó a tulajdonos!"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Ilyen felhasználó nem létezik"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "A felhasználó már kiemelt"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "A felhasználó már nem kiemelt"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "A felhasználó mostantól kiemelt"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "A felhasználó mostantól nem kiemelt"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "a felhasználóhoz nem tartozhatnak problémák ebbõl a sorból"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr ""
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Alapadatok"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr ""
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr ""
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr ""
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Diese Transaktion scheint keinen Inhalt zu haben"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "A felhasználó által felvetett %1 legsürgõsebb probléma"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Cs"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "%1. számú (%2) probléma jellemzõinek módosítása"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Probléma. %1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "%1. probléma"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr ""
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Probléma %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Probléma egyéni mezõi"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr ""
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Pobléma megoldva"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Probléma tranzakciói"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "A probléma tartalma"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr ""
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Probléma metadata"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr ""
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Problémák"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Maradék idõ"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Ráfordított munkaidõ"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Maradék idõ"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Munkaidõ"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Ráfordított munkaidõ"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Beérkezett"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Eszközök"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Tranzakció egyéni mezõi"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr ""
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "K"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Típus"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr ""
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr ""
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "korlátlan"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Névtelen lekérdezés"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Nem kiemelt"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Inaktív egyéni mezõk"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Inaktív objektumok"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Probléma visszaadása"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Frissít"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Mindet frissíti"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Probléma frissítése"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Frissítés típusa"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "A kiválasztott problémák frissítése"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr ""
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "A kiválasztott problémák frissítése"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr ""
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr ""
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "%1. számú (%2) probléma aktualizálása"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr ""
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Frissítve"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Feltöltés"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Több fájl feltöltése egyszerre"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Több kép feltöltése egyszerre"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Egy fájl feltöltése"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Egy kép feltöltése"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Módosítások feltöltése"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "'%1' felhasználó nem található"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Felhasználó által meghatározott"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Felhasználói jogok"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Felhasználó létrehozva"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Felhasználó által definiált csoport"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Felhasználó betöltve"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Felhasználó által definiált csoportok"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Felhasználó"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Felhasználók"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr ""
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Értékek"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Résztvevõk"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Sze"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr ""
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr ""
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr ""
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr ""
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr ""
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr ""
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr ""
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr ""
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr ""
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Munkahelyi"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Munkaidõ"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Már az öné ez a probléma"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "%1 Problémát talált a %2 sorban"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Kilépett a Request Tracker programból."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Nincs joga létrehozni problémákat ebben a sorban"
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Nem hozhat létre problémákat ebben a sorban"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Itt ismét bejelentkezhetsz!"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr ""
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "A problémája engedélyezve."
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "A problémája elutasítva."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "A begépelt felhasználói név vagy jelszó hibás!"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Irányítószám"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "létrehozhat saját lekérdezéseket"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "betölthet saját lekérdezéseket"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "%1nak engedélyezve"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "Lezárt"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "tartalmazza"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "napja"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "törölve"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "nem"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "nem tartalmazza"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "egyenlõ"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "hiba: nincs mit törölni"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "nagyobb mint"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr " '%1' csopot"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "órája"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "Sorszám"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr " == "
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr " nem "
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "kisebb mint"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "=="
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "perce"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "perc"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "hónapja"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "új"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "(nincs név)"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "Nincs érték"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "senki"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "nem egyenlõ"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "Nyitott"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "Stapel %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "elutasítva"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "megoldva"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "várakozik"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "rendszer %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr ""
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "probléma #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "felhasználó %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "hete"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "éve"
-
diff --git a/rt/lib/RT/I18N/i_default.pm b/rt/lib/RT/I18N/i_default.pm
deleted file mode 100644
index 28082af..0000000
--- a/rt/lib/RT/I18N/i_default.pm
+++ /dev/null
@@ -1,108 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::I18N::i_default;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::I18N);
-
-eval "require RT::I18N::i_default_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/I18N/i_default_Vendor.pm});
-eval "require RT::I18N::i_default_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/I18N/i_default_Local.pm});
-
-1;
-
-__END__
-
-This class just zero-derives from the project base class, which
-is English for this project. i-default is "English at least". It
-wouldn't be a bad idea to make our i-default messages be English
-plus, say, French -- i-default is meant to /contain/ English, not
-be /just/ English. If you have all your English messages in
-Whatever::en and all your French messages in Whatever::fr, it
-would be straightforward to define Whatever::i_default's as a subclass
-of Whatever::en, but for every case where a key gets you a string
-(as opposed to a coderef) from %Whatever::en::Lexicon and
-%Whatever::fr::Lexicon, you could make %Whatever::i_default::Lexicon
-be the concatenation of them both. So: "file '[_1]' not found.\n" and
-"fichier '[_1]' non trouve\n" could make for an
-%Whatever::i_default::Lexicon entry of
-"file '[_1]' not found\nfichier '[_1]' non trouve.\n".
-
-There may be entries, however, where that is undesirable.
-And in any case, it's not feasable once you have an _AUTO lexicon
-in the mix, as wo do here.
-
-
-
-RFC 2277 says:
-
-4.5. Default Language
-
- When human-readable text must be presented in a context where the
- sender has no knowledge of the recipient's language preferences (such
- as login failures or E-mailed warnings, or prior to language
- negotiation), text SHOULD be presented in Default Language.
-
- Default Language is assigned the tag "i-default" according to the
- procedures of RFC 1766. It is not a specific language, but rather
- identifies the condition where the language preferences of the user
- cannot be established.
-
- Messages in Default Language MUST be understandable by an English-
- speaking person, since English is the language which, worldwide, the
- greatest number of people will be able to get adequate help in
- interpreting when working with computers.
-
- Note that negotiating English is NOT the same as Default Language;
- Default Language is an emergency measure in otherwise unmanageable
- situations.
-
- In many cases, using only English text is reasonable; in some cases,
- the English text may be augumented by text in other languages.
-
-
diff --git a/rt/lib/RT/I18N/id.po b/rt/lib/RT/I18N/id.po
deleted file mode 100644
index f532848..0000000
--- a/rt/lib/RT/I18N/id.po
+++ /dev/null
@@ -1,5047 +0,0 @@
-# Copyright (c) 2002 Jesse Vincent <jesse@bestpractical.com>
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"POT-Creation-Date: \n"
-"PO-Revision-Date: 2005-06-03\n"
-"Last-Translator: James <james@actionmessage.com>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=US-ASCII\n"
-"Content-Transfer-Encoding: 7bit\n"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr "$Awalan %1"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 #%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 sudah ditambah"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 yang lalu"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 diganti menjadi %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 sudah dihapus"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 gunakan template %3"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) oleh %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "(Belum diubah)"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Sebuah penjelasan untuk dilewati ke %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - status Output diperbaharui menjadi STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - menetapkan modul aksi yang ingin digunakan oleh anda"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - menetapkan moduk kondisi yang ingin digunakan oleh anda"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - menetapkan modul pencarian yang ingin digunakan oleh anda"
-
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 Hak Cipta 1996-%3 %4."
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 Memanggil AksiScrip"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 ditambahkan sebagai nilai untuk %2"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 ditampilkan sebagai objek lokal, tetapi tidak dapat ditemukan di dalam database"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 oleh %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 sudah diganti dari %2 ke %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 ditiru"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 tidak bisa diatur ke %2."
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 tidak dapat mengatur status untuk diselesaikan. Database RT's mungkin tidak konsisten."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 sudah dibuat"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 sudah dihapus"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "%1 Tiket dengan prioritas paling tinggi yang saya miliki"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 Tiket dengan prioritas paling tinggi yang saya minta..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 adalah sebuah alat yang berfungsi pada tiket dari alat penjadwalan eksternal, seperti Cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 tidak lagi menjadi %2 untuk antrian ini."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 tidak lagi menjadi nilai untuk kolom kustom %2"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 menit"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 tiket terbaru yang belum dimiliki"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 newest unowned tickets..."
-msgstr "%1 tiket terbaru yang belum dimiliki..."
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 objek"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "hak-hak %1"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 akan memecahkan semua anggota dari grup tiket yang dipecahkan."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1's %2 objek"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1's %2's %3 objek"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1's pencarian disimpan"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: tidak ada lampiran yang ditentukan"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' adalah nilai yang tidak valid untuk status"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Klik kotak ini untuk hapus)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Klik kotak ini untuk menon-aktifkan pemberitahuan kepada penerima yang sudah terdaftar)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Klik kotak ini untuk mengaktifkan pemberitahuan kepada penerima yang sudah terdaftar)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Masukkan ID Tiket atau URL, dipisahkan dengan spasi)"
-
-#: NOT FOUND IN SOURCE
-msgid "(If left blank, will default to %1"
-msgstr "(Jika ditinggalkan kosong, default akan diatur menjadi %1"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Jika ditinggalkan kosong, default akan menjadi %1)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Tidak ada kolom kustom)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Tidak ada anggota)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Tidak ada scrip)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Tidak ada template)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Tidak satu pun)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Kirim salinan tembusan untuk memperbaharui daftar alamat email yang dibatasi dengan koma. <b>Tidak</b> akan mengubah siapakah yang akan menerima pembaharuan di masa datang.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Kirim salinan tembusan untuk memperbaharui daftar alamat administrasi email. Orang-orang ini <b>akan</b> menerima pembaharuan di masa datang.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Kirim salinan tembusan untuk memperbaharui daftar alamat email. <b>Tidak</b> akan mengubah siapakah yang akan menerima pembaharuan di masa datang.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Kirim salinan tembusan untuk memperbaharui daftar alamat email. Orang-orang ini <b>akan</b> menerima pembaharuan di masa datang.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "Gunakan kolom ini ketika anda memilih 'Definisikan Pengguna' untuk sebuah kondisi atau aksi"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(kosong)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(tidak ada nama yang terdaftar)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(Tidak ada nilai)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(Tidak ada nilai-nilai)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(hanya satu Tiket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(izin ditunda)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(Koleksi yang lain ditunda)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(diperlukan)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(tidak ada judul)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Tiket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr "<%$kolom%>"
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<Tipe input=\"submit\" nilai=\"Tiket Baru di dalam \">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Template kosong"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE tidak ditemukan"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACE hanya dapat dibuat dan dihapus."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr "DAN"
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Dibatalkan untuk menghindari modifikasi tiket yang tidak diharapkan.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Tentang Aku"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Kontrol Akses"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Aksi"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Aksi %1 tidak ditemukan"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Aksi dijalankan."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Aksi dijalankan."
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Aksi disiapkan..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Tambah"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Tambah AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Tambah Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Tambah Kolom"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Tambah Kriteria"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Tambah File Lagi"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Tambah Pemohon"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Tambah Nilai"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Tambah scrip yang akan digunakan di semua antrian"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Tambahkan kriteria tambahan"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Tambah Komentar atau balas ke tiket yang sudah dipilih"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Tambah Anggota"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Tambah Pengamat Baru"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Tambah, hapus dan ubah nilai kolom kustom untuk objek"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Tambahkan prinsipal sebagai %1 untuk antrian ini"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Tambahkan prinsipal sebagai %1 untuk Tiket ini"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Alamat1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Alamat2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Komentar Admin"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Korespondensi Admin"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Antrian Admin"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Konfigurasi Admin/Global"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "Kolom Kustom Admin"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "Grup Admin"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "Keanggotaan Grup Admin"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "Milik Grup Pribadi Admin"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "Antrian Admin"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "Pengguna Admin"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Cc Administrasi"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Lanjutan"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Setelah"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr "Kumpulan"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Semua Izin terlewati"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Semua Antrian"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr "Dan/Atau"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "Digunakan untuk"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Digunakan"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Digunakan untuk perubahan anda"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Izin"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Izin #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Izin #%1: Catatan yang tidak dicatat karena kesalahan sistem"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Izin #%1: Catatan yang dicatat"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Izin dilewati"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Izin ditolak"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Disetujui"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Catatan Pemberi Persetujuan: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr."
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Naik"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Menentukan dan memindahkan kolom kustom"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "Menentukan Kolom Kustom"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Melampirkan"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Melampirkan file"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "File dilampirkan"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Lampiran '%1' tidak dapat dipanggil"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Lampiran dibuat"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Nama File Lampiran"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Lampiran-lampiran"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attribut sudah dihapus"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Agst."
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "Sistem Otorisasi"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Balas Otomatis"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Balas Otomatis ke Pemohon"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "Kolom Tersedia "
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Data buruk di dalam %1"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Dasar-dasar"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Pastikanlah untuk menyimpan setiap perubahan anda"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Sebelum"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr "Pemecahan Praktis yang terbaik, Logo bisnis LLC"
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Binary"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Kosong"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Diberi huruf tebal"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Menyimpan penunjuk link"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Catatan Atas Singkat"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Memperbaharui tiket dengan jumlah banyak pada waktu yang sama"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Tidak dapat mengubah sistem pengguna"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Dapatkah prinsipal melihat antrian ini"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Tidak dapat menambah nilai kolom kustom tanpa nama"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr "Tidak dapat menemukan kelas koleksi untuk '%'"
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Tidak dapat menemukan pencarian yang disimpan untuk bekerja dengan"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Tidak dapat menghubungkan tiket tersebut dengan dirinya sendiri"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Tidak dapat digabungkan ke dalam tiket gabungan. Anda seharusnya tidak pernah mendapatkan kesalahan ini."
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Tidak dapat menyimpan pencarian ini"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Tidak dapat menentukan baik dasar dan sasaran"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Tidak dapat membuat pengguna: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Ubah Sandi"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Periksa Semua"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Klik kotak ini untuk hapus"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Klik kotak ini untuk menghilangkan hak-hak"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Anak"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Kota"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Hapus Semua"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Ditutup"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Tiket sudah ditutup"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Komentar"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Alamat Komentar"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Komentar pada Tiket"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "Komentar Pada Tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Komentar"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Komentar (Tidak dikirim ke pemohon)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Komentar (tidak dikirim ke pemohon)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Komentar mengenai %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Komentar tentang pengguna ini"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Komentar sudah ditambahkan"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Potongan Tiket Dijalankan"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Kondisi"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Kondisi sesuai dengan ..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Kondisi tidak ditemukan"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfigurasi"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Konfirmasi"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "Hubungi Sistem Info"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Isi"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Tipe - Isi"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Tiru"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korespondensi"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korespondensi sudah ditambah"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Tidak dapat menambah nilai kolom kustom baru untuk tiket."
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr "Tidak dapat menambah nilai kolom kustom baru"
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Tidak dapat menambah nilai kolom kustom baru"
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Tidak dapat mengubah pemilik tiket. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Tidak dapat membuat Kolom Kustom"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Tidak dapat membuat Kolom Kustom:%1 "
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Tidak dapat membuat grup"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Tidak dapat membuat template: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Tidak dapat membuat tiket. Antrian tidak dapat diatur"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Tidak dapat membuat pengguna"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Tidak dapat menemukan atau membuat pengguna tersebut"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Tidak dapat menemukan prinsipal tersebut"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Tidak dapat memanggil KolomKustom %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Tidak dapat memanggil grup"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr "Tidak dapat memanggil objek untuk %1"
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr "Tidak dapat memanggil attribut pencarian"
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Tidak dapat membuat prinsipal tersebut %1 untuk antrian ini"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Tidak dapat membuat prinsipal tersebut %1 untuk Tiket ini"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Tidak dapat menghapus prinsipal tersebut sebagai %1 untuk antrian ini"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Tidak dapat mengatur informasi pengguna"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Tidak dapat menambah anggota ke grup"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Tidak dapat membuat transaksi: %1"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Tidak dapat menemukan baris"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Tidak dapat menemukan prinsipal tersebut"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Tidak dapat menemukan nilai tersebut"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Tidak dapat memanggil %1 dari database pengguna.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Tidak dapat memanggil Kelas %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Tidak dapat memanggil Kolom Kustom %1"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Tidak dapat memanggil grup %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Tidak dapat memanggil link"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Tidak dapat memanggil objek %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Tidak dapat memanggil antrian"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Tidak dapat memanggil antrian %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Tidak dapat memanggil pengguna tersebut (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Tidak dapat memanggil Tiket '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Negara"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Dibuat"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Buat Tiket"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Buat Kolom Kustom"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Buat Kolom Kustom untuk antrian %1"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Buat grup baru"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Buat grup pribadi baru"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Buat tiket baru"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Buat pengguna baru"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Buat antrian"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Buat scrip untuk antrian %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Buat template"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Buat Tiket"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Buat Tiket baru berdasarkan pada template scrip ini"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Buat Tiket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Buat tiket untuk antrian ini"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Buat, hapus dan ubah kolom kustom"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Buat, hapus dan ubah antrian"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Buat, hapus dan ubah anggota dari grup pribadi"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Buat, hapus dan ubah pengguna"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr "Buat Pencarian yang Disimpan"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "Buat Tiket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "sudah Dibuat"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Kolom Kustom sudah dibuat %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Pencipta"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Link yang sekarang"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Relationships"
-msgstr "Hubungan Sekarang"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Scrips Sekarang "
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Anggota Sekarang"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Hak-hak Sekarang"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Kriteria pencarian sekarang"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Pengamat sekarang"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Kolom Kustom"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Kolom Kustom untuk %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Aksi kustom membersihkan kode"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Aksi kustom menyiapkan kode"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Kondisi kustom"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Kolom kustom %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "Kolom kustom %1 tidak dapat digunakan untuk objek ini"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Kolom kustom %1 memiliki nilai."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Kolom kustom %1 tidak memiliki nilai."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Kolom kustom %1 tidak ditemukan"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Kolom kustom tidak ditemukan"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Nilai kolom kustom %1 tidak dapat ditemukan untuk kolom kustom %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Nilai kolom kustom tidak dapat dihapus"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Nilai kolom kustom tidak dapat ditemukan"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Nilai kolom kustom sudah dihapus"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "Kolom kustom"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Tanggal"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Des."
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Default template Balas Otomatis"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Default Antrian"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Default Pemohon"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Default template komentar admin"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Default template korespondensi admin"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Default template korespondensi"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Default template transaksi"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Default: %1/%2 diganti dari %3 ke %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Hak-hak Utusan"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Hak-hak spesifik utusan yang sudah diberikan kepada anda."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "Hak-hak Utusan"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Delegasi"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Hapus"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Hapus Template"
-
-#: NOT FOUND IN SOURCE
-msgid "Delete article #%1"
-msgstr "Hapus artikel #%1"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr "Gagal dihapus: %1"
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Hapus scrip yang sudah dipilih"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Hapus tiket"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "Hapus tiket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr "Pencarian dihapus"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Menghapuskan objek ini dapat memutuskan integrasi referensial"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Menghapuskan objek ini dapat memutuskan integrasi referensial"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Menghapuskan objek ini dapat melanggar integrasi referensial"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Ditolak"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Bergantung oleh"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Ketergantungan oleh %1 sudah ditambah"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Ketergantungan oleh %1 sudah dihapus"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Ketergantungan oleh %1 sudah dihapus"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Ketergantungan oleh %1 sudah dihapus"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Bergantung pada"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Turun"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Gambarkan persoalan dibawah ini"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Deskripsi"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Tampilkan"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Tampilkan Daftar Kontrol Akses"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Tampilkan Kolom"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Tampilkan template Scrip untuk antrian ini"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Tampilkan Scrip untuk antrian ini"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Tampilkan mode"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Tampilkan pencarian yang disimpan untuk grup ini"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Didistribusikan dibawah versi 2 dari <a href=\"http://www.gnu.org/copyleft/gpl.html\"> GNU GPL.</a>"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Lakukan apa saja dan semuanya"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Lakukan Pencarian"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Jangan refresh halaman ini."
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Jangan tampilkan hasil pencarian"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Download"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Download sebagai file yang dibatasi dengan tab"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Batas Waktu"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "KESALAHAN: Tidak dapat memanggil Tiket '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Ubah"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Ubah Kolom Kustom untuk %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr "Ubah Kolom Kustom untuk semua grup"
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr "Ubah Kolom Kustom untuk semua pengguna"
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr "Ubah Kolom Kustom untuk tiket di dalam semua antrian"
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Ubah Link"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Ubah Query"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Relationships"
-msgstr "Ubah Hubungan"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Ubah Templates untuk antrian %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "Ubah pencarian yang disimpan untuk grup ini"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Ubah template sistem"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "Ubah Pencarian yang Disimpan"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Mengubah Konfigurasi untuk antrian %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Mengubah Konfigurasi untuk pengguna %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Mengubah Kolom Kustom %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Mengubah keanggotaan untuk grup ini %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Mengubah keanggotaan untuk grup pribadi %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Baik dasar ataupun sasaran harus ditentukan"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Alamat Email yang digunakan"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Alamat Email"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Set Karakter Email"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Mengaktifkan (Klik kotak ini untuk menon-aktifkan kolom kustom)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Mengaktifkan (Klik kotak ini untuk menon-aktifkan grup ini)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Mengaktifkan (Klik kotak ini untuk menon-aktifkan antrian ini)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Mengaktifkan Antrian"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Mengaktifkan status %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Mengaktifkan status: %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Masukkan beberapa nilai"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Masukan objek atau URI untuk menghubungkan object tersebut. Pisahkan beberapa input tersebut dengan spasi."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Masukkan satu nilai"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Masukkan antrian atau URIs untuk menghubungkan antrian tersebut. Pisahkan beberapa input dengan spasi."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Masukkan tiket atau URIs untuk menghubungkan Tiket tersebut. Pisahkan beberapa input dengan spasi."
-
-#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
-msgstr "Masukkan tiket atau URIs untuk menghubungkan Tiket tersebut. Pisahkan beberapa input dengan spasi."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Masukkan sampai %1 nilai"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Kesalahan"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Kesalahan di dalam parameter ke Antrian->Tambah Pengamat"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Kesalahan di dalam parameter Ke Antrian->Hapus Pengamat"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Kesalahan di dalam parameter ke Antrian->Hapus Pengamat"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Kesalahan di dalam parameter ke Tiket->Tambah Pengamat"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Kesalahan di dalam parameter ke Tiket->Hapus Pengamat"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Kesalahan di dalam parameter ke Ticket->Hapus Pengamat"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Meningkatkan Prioritas Tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Estimate"
-msgstr "Perkiraan"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Diperkirakan"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Setiap Orang"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Contoh:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "AuthID Eksternal"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr " Kontak Info ID Eksternal"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Info Tambahan"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr "Gagal untuk membuat atribut pencarian"
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Gagal untuk menemukan pengguna pseudogroup yang memiliki 'Hak-hak Istimewa'."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Gagal untuk menemukan pengguna pseudogroup yang tidak memiliki 'Hak-Hak Istimewa.'"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Gagal untuk memanggil modul %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr "Gagal memanggil objek untuk %1"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Nama File"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Isilah di dalam beberapa area teks"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr "Isilah di dalam beberapa area wikiteks"
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Isilah di dalam satu area teks"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr "Isilah di dalam satu area wikiteks"
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Isilah sampai %1 area teks"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr "Isilah sampai %1 area wikiteks"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Prioritas Akhir"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "Prioritas Akhir"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Cari grup yang"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Cari orang yang"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Cari tiket"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Pertama"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Diubah dengan paksa"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr "Format"
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Ditemukan % quant(%1,tiket)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Objek ditemukan"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "Freeform"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Jum."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Catatan Atas Lengkap"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Ambil template dari file"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Berikan ke %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Kolom Kustom Global"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Konfigurasi kolom kustom global"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Template Global: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Ambil"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Ambil!"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Ambil tiket"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Grup"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Hak Grup"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Grup sudah memiliki anggota"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Grup tidak dapat dibuat: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Grup sudah dibuat"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Grup tidak memiliki anggota terseperti ini"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Grup tidak ditemukan"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grup"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Grup tidak bisa menjadi anggota dari mereka"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Grup sesuai dengan kriteria pencarian"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Pengguna ini milik grup"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Halo!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Halo, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historis"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Historis grup %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Historis pengguna %1"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Telepon Rumah"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Homepage"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Saya memiliki %quant (%1,concrete mixer)."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr "Saya tersesat"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identitas"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Jika izin ditolak, tolak izin yang asli dan hapus izin yang masih ditunda"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Jika tidak ada pemohon yang ditentukan, buat tiket dengan pemohon ini."
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Jika tidak ada antrian yang ditentukan, buat tiket untuk antrian ini."
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Jika alat ini adalah setgid, hostile local user dapat menggunakan alat ini untuk mendapatkan akses administrasi ke RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Jika anda memperbaharui apapun diatas, pastikanlah untuk"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Nilai Ilegal untuk %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Gambar"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Kolom yang tetap"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Termasuk menon-aktifkan grup di dalam daftar."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Termasuk menon-aktifkan antrian di dalam daftar."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Termasuk menon-aktifkan pengguna di dalam pencarian."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr "Query tidak lengkap"
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr "query tidak lengkap"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Prioritas Awal"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "Prioritas Awal"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Kesalahan Input"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Kesalahan Internal"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Kesalahan Internal: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Tipe Grup tidak valid"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Hak-hak tidak valid"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Data tidak valid"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Antrian tidak valid"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Hak tidak valid"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Nilai tidak valid untuk %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Nilai tidak valid untuk kolom kustom"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Nilai tidak valid untuk status"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Hal ini sangat penting bahwa pengguna yang tidak memiliki hak-hak istimewa tidak dapat diizinkan untuk menjalankan program ini."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Sangat disarankan bahwa anda membuat pengguna unix yang tidak memiliki hak-hak istimewa dengan keanggotaan grup yang benar dan akses RT untuk menjalankan alat ini."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Hal ini memerlukan beberapa penjelasan:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr "Diberi huruf miring"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Bergabung atau tinggalkan grup ini"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jumbo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Bhs"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Bahasa"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Besar"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Akhir"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Kontak Terakhir"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Kontak Terakhir"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Pemberitahuan Terakhir"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Pembaharuan Terakhir"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "Pembaharuan Terakhir Oleh"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Kirim"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Biarkan pengguna ini mengakses RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Biarlah pengguna ini diberi hak-hak"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr "Link"
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Link sudah ada"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Link tidak dapat dibuat"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Link sudah dibuat (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Link sudah dihapus (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Link tidak ditemukan"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Link tiket #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Link-link"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Memanggil"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Memanggil pencarian yang disimpan:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr "Memanggil pencarian yang disimpan"
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Memanggil modul perl"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr "Memanggil pencarian %1"
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Lokasi"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Direktori Log %1 tidak ditemukan atau tidak dapat ditulis.\\n RT tidak dapat dijalankan."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Masuk sebagai %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Login"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Logout"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Mencari tipe yang tidak sesuai (mismatch)"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Buat Pemilik"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Buat Status"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Buat Tanggal Batas Waktu"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Buat Tanggal Penyelesaian"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Buat Tanggal Mulai"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Buat Tanggal Mulai"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Buat Tanggal Pemberitahuan"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Buat prioritas"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Buat antrian"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Buat subjek"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr "Buat agar grup ini terlihat pada sisi pengguna"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Mengatur kolom kustom dan nilai kolom kustom"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Mengatur grup dan keanggotaan grup"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Mengatur propertis dan konfigurasi yang akan digunakan di setiap antrian"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Mengatur antrian dan propertis antrian tertentu"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Mengatur pengguna dan sandi"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mei."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Anggota %1 sudah ditambah"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Anggota %1 sudah dihapus"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Anggota sudah ditambah"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Anggota sudah dihapus"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Anggota tidak dihapus"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Anggota dari"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Anggota-anggota"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Keanggotaan di dalam %1 sudah ditambah"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Keanggotaan di dalam %1 sudah dihapus"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Keanggotaan"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Keanggotaan dari pengguna %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Penggabungan Berhasil"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Penggabungan gagal. Tidak dapat mengatur EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr "Penggabungan gagal. Tidak dapat mengatur Status"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Bergabung ke dalam"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Bergabung ke dalam %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Pesan"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Pesan tidak dapat dicatat"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Pesan sudah dicatat"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Pesan mengenai Tiket ini tidak akan dikirim ke..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr "tanda kurung tidak sama"
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Kunci utama tidak ditemukan?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Hp"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Handphone"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Mengubah Daftar Kontrol Akses"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr "Ubah Kolom Kustom yang digunakan untuk %1 untuk semua %2"
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Mengatur Kolom Kustom yang dapat digunakan untuk seluruh %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Mengatur Kolom Kustom yang dapat digunakan di seluruh antrian"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Ubah Hak Grup"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Ubah Anggota"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Ubah Hak-hak"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Mengubah template Scrip untuk antrian ini"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Mengubah Scrip untuk antrian ini"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Ubah Hak Pengguna"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Mengubah Kolom Kustom untuk antrian %1"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Mengubah scrip untuk antrian %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Mengubah scrip yang dapat digunakan di seluruh antrian"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Mengubah objek-objek yang berhubungan untuk %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Mengubah tanggal untuk #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Mengubah tanggal untuk tiket # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr "Mengubah kolom kustom global"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Mengubah hak grup global"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Mengubah hak grup global."
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Mengubah hak pengguna global"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Mengubah hak pengguna global."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Mengubah grup metadata atau menghapus grup"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Mengubah hak grup untuk kolom kustom %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Mengubah hak grup untuk grup %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Mengubah hak grup untuk antrian %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Mengubah daftar nama keanggotaan untuk grup ini"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Mengubah pemilik account RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Mengubah orang-orang yang berhubungan dengan antrian %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Mengubah orang-orang yang berhubungan dengan tiket #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Mengubah scrip untuk antrian %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Mengubah scrip yang dapat digunakan di seluruh antrian"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Mengubah template %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Mengubah template yang dapat digunakan di seluruh antrian"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Mengubah grup %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Mengubah pengamat antrian"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Mengubah pengguna %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Mengubah tiket # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Mengubah tiket #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Mengubah tiket-tiket"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Mengubah hak pengguna untuk kolom kustom %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Mengubah hak pengguna untuk grup %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Mengubah hak pengguna untuk antrian %1"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "Mengubah ACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "Mengubah Kolom Kustom"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "Mengubah Milik Keanggotaan"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "Mengubah Pengamat Antrian"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "Mengubah Scrip"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "Mengubah Sendiri"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "Mengubah Template"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "Mengubah Tiket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Sen."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Lebih mengenai %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Move"
-msgstr "Pindah"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Pindah ke bawah"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Pindah ke atas"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Beberapa"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Harus menentukan 'Nama' attribut"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "%1 tiketku"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Izinku"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Pencarian yang kusimpan"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nama"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nama yang digunakan"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Tidak pernah"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Baru"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Link Baru"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Sandi Baru"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Izin Baru yang Ditunda"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Query Baru"
-
-#: NOT FOUND IN SOURCE
-msgid "New Relationships"
-msgstr "Hubungan Baru"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Kolom Kustom Baru"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Grup Baru"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Sandi Baru"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Kirim Pemberitahuan Sandi Baru"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Antrian Baru"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Hak-hak Baru"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Scrip Baru"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Template Baru"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Tiket Baru"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Tidak ada Tiket baru"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Pengguna Baru"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Pengguna Baru disebut"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Pengamat Baru"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Setting Window Baru"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Berikutnya"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Halaman Berikutnya"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Nama Panggilan"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Nama Panggilan"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Tidak ada Kelas yang didefinisikan"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Tidak ada Kolom Kustom"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Tidak ada Kolom Kustom yang didefinisikan"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Tidak ada Grup yang didefinisikan"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Tidak ada Query"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Tidak ada Antrian yang didefinisikan"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Tidak ada pengguna RT yang ditemukan. Silakan berkonsultasi dengan administrator RT anda.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Tidak ada Template"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Tidak ada Tiket yang ditentukan. Batalkan tiket "
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Tidak ada aksi"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Tidak ada kolom yang ditentukan"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Tidak ada komentar yang dimasukkan mengenai pengguna ini"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Tidak ada deskripsi untuk %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Tidak ada grup yang ditentukan"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Grup yang sesuai dengan kriteria pencarian tidak ditemukan."
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Tidak ada pesan yang dilampirkan"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Tidak ada pengaturan Sandi"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Tidak ada izin untuk membuat antrian"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Tidak ada izin untuk membuat tiket ini di dalam antrian '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Tidak ada izin untuk membuat pengguna"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Tidak ada izin untuk menampilkan tiket tersebut"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Tidak ada izin untuk menampilkan tiket yang sudah diperbaharui"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Tidak ada prinsipal yang ditentukan"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Tidak ada prinsipal yang dipilih."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Antrian yang sesuai dengan kriteria pencarian tidak ditemukan."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Tidak ada hak-hak yang ditemukan"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Tidak ada hak-hak yang diberikan."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr "Tidak ada pencarian yang dipanggil"
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Tidak ada pencarian untuk dijalankan di."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Tidak ada subjek"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Tidak ada tipe transaksi yang ditentukan"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Pengguna yang sesuai dengan kriteria pencarian tidak ditemukan."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Tidak ada pengguna RT yang valid ditemukan. RT cvs handler dilepaskan. Silakan berkonsultasi dengan administrator RT anda.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Tidak ada nilai yang dikirim ke _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Tidak seorangpun"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Kolom kosong?"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Belum log in"
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Belum diatur"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Belum diimplementasikan."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Catatan"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Pemberitahuan tidak dapat dikirimkan"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Beritahu AdminCcs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Beritahu AdminCcs dengan komentar"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Beritahu Ccs"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Beritahu Ccs dengan komentar"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Beritahu Penerima Lain"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Beritahu Penerima Lain dengan komentar"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Beritahu Pemilik"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Beritahu Pemilik dengan komentar"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "Beritahu pemilik bahwa tiketnya ditolak"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "Beritahu Pemilik bahwa tiketnya sudah disetujui oleh seluruh pemberi persetujuan"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "Beritahu Pemilik bahwa tiketnya sudah disetujui oleh beberapa pemberi persetujuan"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Beritahu Pemilik dan AdminCcs mengenai izin item baru yang ditunda"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Beritahu Pemohon"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Beritahu Pemohon dan Ccs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Beritahu Pemohon dan Ccs dengan komentar"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Beritahu Pemohon, Ccs dan AdminCcs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Beritahu Pemohon, Ccs dan AdminCcs dengan komentar"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nop."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "ATAU"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objek tidak dapat dibuat"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "Objek tidak dapat dihapus"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Object sudah dibuat"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Objek sudah dihapus"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Tipe Objek %1 tidak dapat mengambil kolom kustom"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Tipe Objek tidak sesuai (mismatch)"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Okt."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Offline"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Ubah Offline"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Upload Offline"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Pada"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Pada Komentar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Pada Hubungan"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Pada Pembuatan"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Pada Perubahan Pemilik"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Pada Perubahan Prioritas"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Pada Perubahan Antrian"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Pada Penyelesaian"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Pada Perubahan Status"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Pada Transaksi"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Hanya menampilkan izin untuk permintaan yang dibuat sesudah %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Hanya menampilkan izin untuk permintaan yang dibuat sebelum %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Buka"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Buka ini"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Buka tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Buka tiket (dari daftar) di window yang baru"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Buka tiket (dari daftar) di window yang lain"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Buka tiket pada korespondensi"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Diurutkan sesuai"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Diurutkan dan disortir"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisasi"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Tiket Awal: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Email yang keluar mengenai komentar yang dicatat"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Email keluar yang dicatat"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Lewat Batas waktu, prioritas pindah ke arah"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Memiliki tiket-tiket"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "Memiliki tiket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Pemilik"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Pemilik tidak dapat diatur."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Pemilik secara paksa digantikan dari %1 ke %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Pemilik adalah"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Halaman %1 dari %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pager"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Pager"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Induk "
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Sandi"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Pengingat Sandi"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Sandi sudah diubah"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr "Minimal sandi memerlukan paling sedikit %1 karakter"
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Sandi terlalu singkat"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Sandi: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Sandi tidak sesuai."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Sandi tidak sesuai. Sandi anda belum diganti"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Orang-Orang"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Menampilkan aksi pengguna yang belum didefinisikan"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Konfigurasi Perl"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Izin ditolak"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Grup Pribadi"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Grup pribadi"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Grup pribadi:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Nomor Telepon"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Pilihan"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Siapkan Potongan Tiket"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Sebelumnya"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Halaman Sebelumnya"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Prinsipal %1 tidak ditemukan."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioritas"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioritas dimulai pada"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Pribadi:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Hak-hak Istimewa"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Status Hak-hak Istimewa: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Pengguna Hak-hak Istimewa"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "Proyek-Proyek"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogroup digunakan untuk internal"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Query"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Pembuat Query"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Antrian"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Antrian %1 tidak ditemukan"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nama Antrian"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Antrian sudah ada"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Antrian tidak dapat dibuat"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Antrian tidak dapat dipanggil."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Antrian sudah dibuat"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Antrian tidak dapat ditemukan"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Antrian-antrian"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Pencarian Cepat"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Pembuatan Tiket Cepat"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 untuk %2"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Administrasi RT"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Kesalahan RT"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Variable RT "
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "Sekilas RT"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr "RT tidak dapat menyimpan sesi anda"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT untuk %1"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Nama Asli"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "Nama Asli"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Referensi oleh %1 sudah ditambah"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Referensi oleh %1 sudah dihapus"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Referensi ke %1 sudah ditambah"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Referensi ke %1 sudah dihapus"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Diserahkan oleh"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Diserahkan ke"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Membersihkan pencarian"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Refresh halaman ini setiap %1 menit."
-
-#: NOT FOUND IN SOURCE
-msgid "Relationships"
-msgstr "Hubungan"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Hapus AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Hapus Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Hapus Pemohon"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Balas"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Balas ke Alamat"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Balas ke Pemohon"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Balas ke tiket"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "Balas ke Tiket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Pemohon"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Pemohon"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "permintaan akan melewati batas waktu dalam"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Parameter yang diperlukan '%1' tidak didefinisikan"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Ulangi"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Tempat Tinggal"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Penyelesaian"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Penyelesaian tiket #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Sudah Diselesaikan"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Balas ke pemohon"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Hasil"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Hasil per halaman"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Ketik Ulang Sandi"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Kembali pada"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Hak-hak Utusan"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Memberikan Hak-hak"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Memanggil Hak-hak"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Hak-hak tidak dapat dihilangkan"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Hak-hak tidak ditemukan"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Hak-hak tidak dapat dipanggil."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Hak-hak tidak dapat dihilangkan"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Hak-hak"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Hak-hak tidak dapat diberikan untuk %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Hak-hak tidak dapat dihilangkan untuk %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Aturan"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Baris per halaman"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sab."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Simpan"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Simpan Perubahan"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Simpan Pilihan"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Simpan perubahaan"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr "Simpan pencarian %1"
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Simpan pencarian"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip sudah dibuat"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Kolom Scrip"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip sudah dihapus"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrip"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrip yang digunakan di seluruh antrian"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Pencarian"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr "Gagal memanggil atribut pencarian"
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Pencarian untuk izin"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr "Perbaharui Pencarian: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "Pencarian tidak dapat dihubungkan dengan objek yang seperti ini"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Keamanan:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Lihat kolom kustom"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Lihat pesan email yang keluar dan semua penerimanya dengan tepat"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Lihat Penjelasan Tiket Pribadi"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Lihat Ringkasan Tiket"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "Lihat Kolom Kustom"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr "Lihat Grup"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "Lihat Antrian"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Pilih"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Pilih Kolom Kustom"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Pilih grup"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Pilih antrian"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Pilih antrian untuk tiket baru anda"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Pilih Pengguna"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Pilih kolom kustom"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Pilih kolom kustom untuk seluruh grup pengguna"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr "Pilih kolom kustom untuk seluruh pengguna"
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr "Pilih kolom kustom untuk tiket di seluruh antrian"
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Pilih kolom kustom untuk transaksi pada tiket di dalam seluruh antrian"
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Pilih grup"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Pilih beberapa nilai"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Pilih satu nilai"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Pilih antrian"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Pilih scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Pilih template"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Pilih sampai %1 nilai"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Pilih pengguna"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Kolom Kustom yang dipilih"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Objek yang dipilih"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Kirim pesan ke seluruh pengamat"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Kirim pesan ke seluruh pengamat dengan \"komentar\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Kirim pesan ke pemohon dan Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Kirim pesan ke pemohon dan Ccs dengan komentar"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Kirim pesan ke pemohon"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Kirim pesan ke Ccs and Bccs yang terdaftar dengan jelas"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Kirim pesan ke Ccs"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Kirim pesan ke Ccs dengan komentar"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Kirim pesan ke Ccs administrasi"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Kirim pesan ke Ccs administrasi dengan komentar"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Kirim pesan ke pemilik"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Tampilkan"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Tampilkan Izin"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Tampilkan Kolom"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Tampilkan Hasil"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Tamplikan permintaan yang disetujui"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Tampilkan dasar-dasar"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Tampilkan permintaan yang ditolak"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Tampilkan detil"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Tampilkan permintaan yang ditunda"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Tampilkan permintaan izin lain yang ditunggu"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "Tampilkan ACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr "Tampilkan Tab Config"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "Tampilkan Email yang Keluar"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "Tampilkan Pencarian yang Disimpan"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "Tampilkan Scrip"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "Tampilkan Template"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "Tampilkan Tiket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "Tampilkan Komentar Tiket"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Daftar sebagai pemohon tiket atau tiket atau antrian Cc"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Daftar sebagai tiket atau antrian AdminCc"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Tanda Tangan"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Tunggal"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr "Ukuran"
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Lewati Menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Kecil"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Sortir"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Sortir hasil dengan"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Tingkat"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Sudah dimulai"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Mulai"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Negara"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Status Diubah"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status diubah dari %1 ke %2"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Curi"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Curi tiket"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "Curi Tiket"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Dicuri dari %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Dicuri dari %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr "Gaya"
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Subjek"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Subjek diganti menjadi %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Submit"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Berhasil"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Min."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "PenggunaSuper"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Sistem"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Konfigurasi Sistem"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Kesalahan Sistem"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr "Kesalahan sistem: %1"
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Peralatan Sistem"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Kesalahan sistem. Hak-hak tidak dapat diserahkan."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Kesalahan sistem. Hak-hak tidak dapat diberikan."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Grup Sistem"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr " GrupAturanSistem yang digunakan untuk internal"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TES_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Ambil"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Ambil tiket"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "Ambil Tiket"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Diambil"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "Tugas"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Template"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Template #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Template sudah dihapus"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Template tidak ditemukan"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Template parsed"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Template-template"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Teks"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Ini adalah nilai yang sekarang"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Ini bukan nilai untuk kolom kustom ini"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Ini adalah nilai yang sama"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Prinsipal ini sudah memiliki hak-hak tersebut"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Prinsipal ini sudah %1 untuk antrian ini"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Prinsipal ini sudah %1 untuk tiket ini"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Prinsipal ini bukan %1 untuk antrian ini"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Antrian ini tidak ada"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Tiket ini mempunyai ketergantungan yang belum dapat diselesaikan"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Pengguna ini sudah memiliki tiket tersebut"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Pengguna ini tidak ada"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Pengguna ini sudah memiliki hak-hak istimewa"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Pengguna ini sudah tidak memiliki hak-hak istimewa"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Pengguna tersebut sekarang memiliki hak-hak istimewa"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Pengguna tersebut sekarang tidak memiliki hak-hak istimewa"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Pengguna tersebut mungkin tidak memiliki tiket di dalam antrian tersebut"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Ini bukan menurut angka ID"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Dasar-dasar"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "CC tiket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "CC tiket administrasi"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Perintah berikut ini akan menemukan seluruh tiket yang aktif di dalam antrian 'umum' dan mengatur prioritas mereka ke 99 jika mereka tidak digunakan dalam waktu 4 jam:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Perintah berikut ini tidak akan dijalankan:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Nilai baru sudah diatur."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Pemilik tiket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Pemohon tiket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Komentar ini umumnya tidak jelas bagi pengguna"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Kolom kustom ini tidak dapat digunakan pada objek tersebut"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Fitur ini hanya tersedia untuk sistem administrator"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Pesan ini akan dikirim ke..."
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Alat ini mengijinkan pengguna untuk menjalankan modul perl yang berubah-ubah dari dalam RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Transaksi ini tampaknya tidak memiliki isi"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Pengguna ini memiliki %1 tiket dengan prioritas tertinggi"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Kms."
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Tiket #%1 Perbaharui Jumbo: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Tiket #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Tiket %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Tiket %1 sudah dibuat di dalam antrian '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Tiket %1 sudah dipanggil\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Tiket %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Tiket Kolom Kustom"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Historis Tiket # %1 %2"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Tiket sudah diselesaikan"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Transaksi Tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Lampiran Tiket"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Isi Tiket"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Tipe isi Tiket"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Tiket tidak dapat dibuat karena ada kesalahan internal"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Metadata Tiket"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Status tiket sudah diubah"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr "Pencarian modul Tiket SQL"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tiket-tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Tiket %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Tiket %1 oleh %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tiket dari %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tiket yang bergantung dengan izin ini:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Perkiraan Waktu"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Sisa Waktu"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Waktu Kerja"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Sisa waktu"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Waktu untuk ditampilkan"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Waktu kerja"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Waktu Kerja"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr "Judul"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "To generate a diff of this commit:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "To generate a diff of this commit:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Untuk menanyakan tentang bantuan, latihan, perkembangan kustom atau izin, silakan hubungi %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Memberitahukan"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "alat-alat"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transaksi"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transaksi %1 sudah dibersihkan"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transaksi sudah dibuat"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Kolom Kustom Transaksi"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transaksi->Tidak dapat dibuat, karena anda tidak menentukan tipe objek dan id"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transaksi yang tetap"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Sel."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Tipe"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Belum diimplementasikan"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Login Unix"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Nama Pengguna Unix"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Content Encoding tidak dikenali%1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr "Kolom tidak dikenali: $key"
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Tidak terbatas"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Pencarian tidak dikenal"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Tidak memiliki hak-hak istimewa"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Kolom Kustom tidak dipilih"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Objek tidak dipilih"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Belum diambil"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "Pencarian yang tidak memiliki judul"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Perbaharui"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Perbahurui Semua"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Perbaharui ID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Perbaharui Tiket"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Perbaharui Tipe"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Perbaharui seluruh tiket ini pada saat yang sama"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Perbaharui email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Perbaharui beberapa tiket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Perbaharui nama"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Perbaharui tidak dicatat."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Perbaharui tiket yang terpilih"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Perbaharui tanda tangan"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Perbaharui tiket"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Perbaharui tiket #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Perbaharui tiket #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr " Memperbarui tipe baik korespondensi ataupun penjelasan."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Sudah diperbaharui"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Upload"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Upload beberapa file"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Upload beberapa gambar"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Upload satu file"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Upload satu gambar"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Upload sampai %1 file"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Upload sampai %1 gambar"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Upload perubahan anda"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr "Gunakan alat administrative RT yang lain"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Pengguna '%1' tidak dapat ditemukan."
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Pengguna didefinisikan"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Pengguna mendefinisikan kondisi dan aksi"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "ID Pengguna"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Hak Pengguna"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "Pengguna akan ditanya mengenai tipe pembaharuan yang tidak dikenal untuk kolom kustom %1 untuk %2 objek #%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Pengguna tidak dapat dibuat: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Pengguna sudah dibuat"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Pengguna mendefinisikan grup"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Pengguna sudah dipanggil"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Lihat Pengguna"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Definisi Grup Pengguna"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Nama Pengguna"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Pengguna"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Pengguna sesuai dengan kriteria pencarian"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Query yang valid"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Nilai-nilai"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Amati"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "Amati Sebagai AdminCc"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Pengamat"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebEncoding"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Rabu."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Kalau tiket sudah disetujui oleh semua pemberi persetujuan, tambahkan korespondesi ke tiket yang asli"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Kalau tiket sudah disetujui oleh beberapa pemberi persetujuan, tambahkan korespondensi ke tiket yang asli"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Kalau tiket sudah dibuat"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Kalau tiket persetujuan sudah dibuat, beritahukan pemilik dan AdminCc dari item yang sedang ditunggu persetujuannya"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Kalau sesuatu terjadi"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Setiap saat tiket dapat diselesaikan"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Setiap saat pemilik tiket dapat diubah"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Setiap saat prioritas tiket dapat diubah"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Setiap saat antrian tiket dapat diubah"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Setiap saat status tiket dapat diubah"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Setiap saat kondisi yang didefinisikan oleh pengguna terjadi"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Setiap saat komentar dapat masuk"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Setiap saat korespondensi dapat masuk"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Bekerja"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Bekerja offline"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Telepon Kantor"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Sedang Bekerja"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Anda sudah memiliki tiket ini"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Anda bukanlah pengguna yang sah"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Anda hanya bisa menugaskan kembali tiket yang anda miliki atau yang belum anda miliki"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Anda menemukan %1 tiket di dalam antrian ini %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Anda sudah log out dari RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Anda tidak memiliki izin untuk membuat tiket di dalam antrian tersebut."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Anda mungkin tidak akan membuat permintaan di dalam antrian ini."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Anda dapat login kembali"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Permintaan anda sudah disetujui oleh. Persetujuan yang lain mungkin masih ditunda."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Permintaan anda sudah disetujui."
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Permintaan anda sudah ditolak."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Nama pengguna dan sandi anda tidak sama"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Zip"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "mengijinkan pembuatan pencarian yang disimpan"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "mengijinkan memanggil pencarian yang disimpan"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "sudah diberikan ke %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr "Milik"
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "sudah ditutup"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "berisi"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "hari"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "sudah dihapus"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr "Bukan milik"
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "tidak sama"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "tidak berisi"
-
-#: NOT FOUND IN SOURCE
-msgid "email address"
-msgstr "alamat email"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "sama dengan"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr "kesalahan: tidak dapat dipindahkan ke bawah"
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr "kesalahan: tidak dapat dipindahkan ke kiri"
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr "kesalahan: tidak dapat dipindahkan ke atas"
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "kesalahan: tidak ada apapun yang dapat dihapus"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr "kesalahan: tidak ada apapun yang dapat dipindahkan"
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr "kesalahan: tidak ada apapun yang dapat dihubungkan"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "lebih dari"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "grup '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "jam"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "id"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "adalah"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "tidak"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "kurang dari"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "sama"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "mnt"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "menit"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "perubahan\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "bulan"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "baru"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "tidak ada nama"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "tidak ada nilai"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "tidak satupun"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "tidak sama dengan"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "buka"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "grup pribadi '%1' untuk pengguna '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "antrian %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "sudah ditolak"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "sudah diselesaikan"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "dtk"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr "tampilkan tab konfigurasi"
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "lembar kerja"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "alasan"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "sistem %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "grup sistem '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "Pemanggilan komponent tidak menetapkan mengapa"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "tiket #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "grup yang belum dijelaskan %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "pengguna %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "minggu"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "tahun"
-
diff --git a/rt/lib/RT/I18N/it.po b/rt/lib/RT/I18N/it.po
deleted file mode 100644
index 95d8c18..0000000
--- a/rt/lib/RT/I18N/it.po
+++ /dev/null
@@ -1,6189 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 3.4.1\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2005-02-12 02:00+0800\n"
-"Last-Translator: Angelo Turetta <aturetta@bestunion.it>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "n°"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "n°%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "n°%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 n°%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3 %2 %7 %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "Aggiunto %1 %2"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 fa"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 cambiato in %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 eliminato"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%1 %2 del gruppo %3"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 con il modello %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 questo ticket\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) da %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (invariato)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "Mostrati da %1 a %2"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Un parametro da passare a %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Visualizza aggiornamenti dello stato su STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Specificare l'azione che si vuole eseguire"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Specificare la condizione che si vuole utilizzare"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Specificare la ricerca che si vuole utilizzare"
-
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 caricato"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 aggiunto come valore di %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "gli alias %1 necessitano di un TicketId su cui lavorare"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "gli alias %1 necessitano di un TicketId su cui lavorare"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "gli alias %1 necessitano di un TicketId per lavorare con (da %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 sembra essere un oggetto locale, ma non è presente nel database"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 da %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 cambiato da %2 a %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "copia di %1"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 non può essere impostato a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 non ha potuto iniziare una transazione (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 non ho potuto mettere lo stato a risolto. Il database RT potrebbe essere corrotto."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "creato %1"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "eliminato %1"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "I %1 ticket a maggior priorità che ho in carico"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "I %1 ticket a maggior priorità che ho in carico..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "I %1 ticket a maggior priorità che ho richiesto..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 è uno strumento per agire sui ticket da uno schedulatore esterno, per esempio cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 non è più un %2 per questa coda."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 non è più un %2 per questo ticket."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 non è più un valore per il campo personalizzato %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 non è un identificativo di coda valido"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "I %1 ticket più recenti non ancora assegnati"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 non mostrato"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 oggetti"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "Diritti su %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 riuscito\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "Tipo %1 sconosciuto per $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "Tipo %1 sconosciuto per %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 è stato creato senza un CurrentUser\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 risolverà tutti i membri di un gruppo di ticket risolto."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 bloccherà una BASE [locale] se dipende da [o è membro di] una richiesta collegata."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%2 oggetti di %1"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%3 oggetti di %2 di %1"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "ricerche salvate di %1"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: nessun allegato specificato"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' è uno stato non valido"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' non è un'azione conosciuta. "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(spunta la casella per rimuovere un appartenente dal gruppo)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(spunta la casella per cancellare uno scrip)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(spunta la casella per cancellare)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(spunta le caselle per cancellare)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(i destinatari con la casella spuntata non ricevono la notifica)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(solo i destinatari con la casella spuntata ricevono la notifica)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(inserire i numeri o gli URL dei ticket, separati da spazi)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(se non specificato usa: %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(nessun valore)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(nessun campo personalizzato)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(nessun appartenente)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(nessuno Scrip)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(nessun modello)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(nessuno)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(invia copia silente di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(invia copia silente di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierò</b> i destinatari dei successivi aggiornamenti.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email amministrativi separati da virgole. Queste persone <b>riceveranno</b> i successivi aggiornamenti.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Ciò <b>non cambierà</b> i destinatari dei successivi aggiornamenti.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(invia copia per conoscenza di questo aggiornamento ad una lista di indirizzi email separati da virgole. Queste persone <b>riceveranno</b> i successivi aggiornamenti.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(usa questi campi se si sceglie 'Definito dall'utente' come condizione o azione)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(vuoto)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(nessun nome in elenco)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(nessun oggetto)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(nessun valore)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(nessun valore)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(un solo ticket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(in attesa di approvazione)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(in attesa di un'altra Raccolta)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other ticket)"
-msgstr "(in attesa di altri ticket)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(gruppo del richiedente)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(richiesto)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(senza titolo)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "I 25 ticket con priorità più alta che ho in carico..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "I 25 ticket con priorità più alta da me richiesti..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr ""
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Crea un ticket in\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Un modello vuoto"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE eliminata"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE caricata"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "impossibile eliminare l'ACE"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "impossibile trovare l'ACE"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE non trovata"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "Le ACE possono essere solo create e cancellate."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Interruzione per evitare modifiche di ticket involontarie.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Informazioni personali"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Controllo di Accesso"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Azione"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Azione %1 non trovata"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Azione eseguita."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr "Azione eseguita.\\n"
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Azione preparata..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Aggiungi"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Aggiungi AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Aggiungi Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr "Aggiungi colonne"
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Aggiungi criterio"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Aggiungi altri file"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "Aggiungi prossimo stato"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Aggiungi il richiedente"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Aggiungi un valore"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "Aggiungi una selezione di parole chiave a questa coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Aggiungi un nuovo scrip globale"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Aggiungi uno scrip a questa coda"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Aggiungi uno scrip da applicare a tutte le code"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Aggiungi criteri addizionali"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Aggiungere commenti o repliche ai ticket selezionati"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Aggiungi appartenenti"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Aggiungi nuovi osservatori"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Aggiungi, cancella o modifica il valore dei campi personalizzati per gli oggetti"
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "AggiunguProssimoStato"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Aggiunto gruppo/utente come %1 per questa coda"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Aggiunto gruppo/utente come %1 per questo ticket"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Indirizzo1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Indirizzo2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Cc amministrativo"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Commento Amministrativo"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Corrispondenza Amministrativa"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Gestione delle code"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Gestione degli utenti"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Amministra/Configurazione globale"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Gestione/Gruppi"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Gestione/Code/Base"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "GestisciTuttiGruppiPersonali"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "GestisciCommenti"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "GestisciCorrispondenza"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "GestisciCampoPers."
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "GestisciCampiPers."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "GestisciGruppo"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "GestisciAppartenenzaGruppo"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "GestisciGruppiPersonali"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "GestisciCoda"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "GestisciUtenti"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "Amministratori"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Avanzata"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Ricerca avanzata"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "dopo il"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Età"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr "Aggregatore"
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "Alias per"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Ottenute tutte le approvazioni"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Tutti i campi personalizzati"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Tutte le code"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Invia comunque un messaggio al richiedente, anche se è lui stesso il mittente"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "Si applica a"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Applica"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Applica modifiche"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Approvazione"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Approvazione n°%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Approvazione n°%1: Note non registrate a causa di un errore di sistema"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Approvazione n°%1: Note registrate"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Dettagli dell'approvazione"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Approvazione ottenuta"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Approvazione rifiutata"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Diagramma dell'approvazione"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Approva"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Note dell'approvatore: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "Aprile"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Crescente"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Assegna e rimuovi campi personalizzati"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "AssegnaCampiPers."
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Allega"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Allega un file"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "File allegato"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Impossibile caricare l'allegato '%1'"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Allegato creato"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Nome file dell'allegato"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Allegati"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attributo cancellato"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Ago."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "Agosto"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "SistemaAutorizzazioni"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "RispostaAutomatica"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Risposta automatica ai richiedenti"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "RispostaAutomaticaAiRichiedenti"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Firma PGP invalida: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Identificativo allegato errato. Impossibile trovare l'allegato '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Dati incorretti in %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Numero di transazione incorretto per l'allegato. %1 dovrebbe essere %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Dati base"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Se hai aggiornato qualche impostazione, assicurati di premere"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "prima del"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Inizia approvazione"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr "Logo Best Practical Solutions, LLC"
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Binario"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Vuoto"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr "Grassetto"
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URL assoluto per questa ricerca"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "Link assoluto"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Intestazione breve"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Modifica di ticket in blocco"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Gli utenti di sistema non possono essere modificati"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Può il gruppo/utente vedere questa coda"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Impossibile aggiungere un valore di campo personalizzato senza un nome"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr "Impossibile trovare una classe collection per '%1'"
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Impossibile trovare una ricerca salvata su cui lavorare"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Non è possibile collegare un ticket a se stesso"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Impossibile unire un ticket ad un ticket già unito. Questo errore non dovrebbe mai verificarsi"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Impossibile salvare questa ricerca"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Impossibile specificare sia la base che il target"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Impossibile creare l'utente: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Cambia la password"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Spunta tutte le caselle"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Spunta la casella per cancellare"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Spunta la casella per revocare i diritti"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Derivati"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Città"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Azzera"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Chiuso"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Ticket chiusi"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Richieste chiuse"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Ticket chiusi"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Comando non riconosciuto!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Commento"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Inidirizzo per i commenti"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Commento non registrato"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Aggiunta di commenti ai ticket"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "AggiungiCommentiAlTicket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Commenti"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Commenti (non inviati ai richiedenti)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Commenti (non inviati ai richiedenti)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Commenti su %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Commenti su questo utente"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Aggiunto commento"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Restrizioni di compilazione"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Condizione"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "La condizione è soddisfatta..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Condizione non trovata"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Configurazione"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Conferma"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "ContactInfoSystem"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Impossibile interpretare la data di contatto '%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Contenuto"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "Impossibile creare il gruppo"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Copia"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Corrispondenza"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Inidirizzo di corrispondenza"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Aggiunta corrispondenza"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Corrispondenza non registrata"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato al ticket. %1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato. "
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Impossibile aggiungere un nuovo valore di campo personalizzato. %1 "
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Impossibile cambiare l'incaricato. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Impossibile creare il campo personalizzato"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr "Impossibile creare il campo personalizzato: %1"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Impossibile creare il gruppo"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Impossibile creare il modello: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Impossibile creare il ticket. Queue non impostata"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Impossibile creare l'utente"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "Impossibile creare l'osservatore per il richiedente"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Impossibile trovare il ticket numero %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Impossibile trovare il gruppo %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Impossibile trovare o creare questo utente"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Impossibile trovare questo gruppo/utente"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Impossibile trovare l'utente %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Impossibile caricare il campo personalizzato %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Impossibile caricare questo gruppo"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr "Impossibile caricare l'oggetto per %1"
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr "Impossibile caricare un attributo della ricerca"
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Impossibile rendere questo gruppo/utente un %1 per questa coda"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Impossibile rendere questo gruppo/utente un %1 per questo ticket"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Impossibile rimuovere questo gruppo/utente come un %1 per questa coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Impossibile rimuovere questo gruppo/utente come un %1 per questo ticket"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Impossibile impostare le informazioni dell'utente"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Impossibile aggiungere un appartenente al gruppo"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Impossibile creare una transazione: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Impossibile capire che cosa fare con questa risposta gpg\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Impossibile trovare il gruppo\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Impossibile trovare la riga"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Impossibile trovare questo gruppo/utente"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Impossibile trovare questo valore"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Impossibile trovare questo osservatore"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Impossibile trovare l'utente\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Impossibile caricare %1 dal database degli utenti.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Impossibile caricare la classe %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Impossibile caricare ilcampo personalizzato %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "Impossibile caricare KeywordSelects"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Impossibile caricare il file di configurazione RT '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Impossibile caricare gli Scrips"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Impossibile caricare il gruppo %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Impossibile caricare il collegamento"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Impossibile caricare l'oggetto %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Impossibile caricare la coda"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Impossibile caricare la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Impossibile caricare lo Scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Impossibile caricare il modello"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Impossibile caricare questo utente (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Impossibile caricare il ticket '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Nazione"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Crea"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Crea ticket"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Crea un campo Personalizzato"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Crea un campo personalizzato per la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Crea un campo personalizzato valido per tutte le code"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Crea un nuovo campo personalizzato"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Crea un nuovo scrip globale"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Crea un nuovo gruppo"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Crea un nuovo gruppo personale"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Crea una nuova coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Crea un nuovo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Crea un nuovo modello"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Crea un nuovo ticket"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Crea un nuovo utente"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Crea una coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Crea una nuova coda di nome"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Crea una richiesta"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Crea uno scrip per la coda %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Crea un modello"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Nuovo ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Creazione fallita: %1 / %2 / %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Creazione fallita: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Creare nuovi ticket basati su questo modello di scrip"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Crea il ticket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Crea nuovi ticket in questa coda"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Crea, elimina e modifica campi personalizzati"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Crea, elimina e modifica le code"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Crea, elimina e modifica gli appartenenti ai gruppi personali di un qualunque utente"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Crea, elimina e modifica gli appartenenti ai gruppi personali "
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Crea, elimina e modifica gli utenti"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr "CreaRichiestaSalvata"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CreaTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Creato"
-
-#: NOT FOUND IN SOURCE
-msgid "Created By"
-msgstr "Creato da"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Campo personalizzato %1 creato"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Modello %1 creato"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "CreatoDa"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Collegamenti attuali"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Scrips attuali"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Appartenenti attuali"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Diritti attuali"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Criterio di ricerca attuale"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Osservatori attuali"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Campo personalizzato n°%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Campi personalizzati"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Campi personalizzati per %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Programma di pulizia dell'azione personalizzata"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Programma di preparazione dell'azione personalizzata"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Condizione personalizzata"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Campi personalizzati %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Il campo personalizzato %1 ha un valore."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Il campo personalizzato %1 non ha valore."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Campo personalizzato %1 non trovato"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Campo personalizzato cancellato"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Campo personalizzato %1 non trovato"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Impossibile trovare il valore %1 per il campo personalizzato %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Valore del campo personalizzato cambiato da %1 a %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Impossibile cancellare il valore del campo personalizzato"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Valore del campo personalizzato non trovato"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Il valore del vampo personalizzato è stato eliminato"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "CampoPersonalizzato"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Errore nei dati"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Date"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dic."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Dicembre"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Modello di default per la risposta automatica"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Modello di default per la risposta automatica"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Coda di default"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Richiedente di default"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Modello di default per il commento amministrativo"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Modello di default per la corrispondenza amministrativa"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Modello di default per la corrispondenza"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Modello di default per la transazione"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Default: %1/%2 modificato da %3 a %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delega i diritti"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Delega diritti specifici tra quelli che ti sono stati accordati"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegaDiritti"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Delega"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Cancella"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Cancella modello"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr "Cancellazione fallita: %1"
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Cancella gli scrips selezionati"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Cancella ticket"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "CancellaTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr "Ricerca cancellata"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "La cancellazione di quest'oggetto può danneggiare l'integrità referenziale"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "La cancellazione di quest'oggetto danneggerebbe l'integrità referenziale"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "La cancellazione di quest'oggetto violerebbe l'integrità referenziale"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "La cancellazione di quest'oggetto violerebbe l'integrità referenziale"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "La cancellazione di quest'oggetto violerebbe l'integrità referenziale. Ciò è male!"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Nega"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "È una dipendenza per"
-
-#: NOT FOUND IN SOURCE
-msgid "DependedOnBy"
-msgstr "DipendenzaPer"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Dipendenze: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Aggiunta dipendenza da parte di %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Cancellata dipendenza da parte di %1"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Aggiunta dipendenza da %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Cancellata dipendenza da %1"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Dipende da"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "DipendeDa"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Decrescente"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Descrivi il problema qui sotto"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Descrizione"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Dettagli"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Visualizza"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Visualizza la Lista Controllo Accessi (ACL)"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Visualizza colonne"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Visualizza i modelli di Scrips per questa coda"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Visualizza gli Scrips per questa coda"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Modalità visualizzazione"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Visualizza le ricerche salvate per questo gruppo"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Visualizza il ticket n°%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Distribuito in accordo con la versione 2 della <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU GPL</a>."
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Fai di tutto e di più"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr "Esegui la ricerca"
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Non aggiornare questa pagina."
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Non mostrare i risultati della ricerca"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Download"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Scarica come file separato da TAB"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Scadenza"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Impossibile interpretare la data di scadenza '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "ERRORE: impossibile caricare il ticket '%1' : %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Modifica"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "Modifica condizioni"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Modifica i campi personalizzati per %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr "Modifica i campi personalizzati per tutti i gruppi"
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr "Modifica i campi personalizzati per tutti gli utenti"
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr "Modifica i campi personalizzati per tutte le code"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Custom Fields for transactions on tickets in all queues"
-msgstr "Modifica i campi personalizzati per le transazioni sui ticket in tutte le code"
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Modifica collegamenti"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Modifica query"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Modifica i modelli per la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Modifica parole chiave"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "Modifica ricerche salvate per questo gruppo"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Modifica scrips"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Modifca i modelli di sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Modifica i modelli per %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "ModificaRicercheSalvate"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Modifica della configurazione per la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Modifica della configurazione per l'utente %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Modifica del campo personalizzato %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Modifica degli appartenenti al gruppo %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Modifica degli appartenenti al gruppo personale %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Modifica del modello %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "È necessario specificare base o target"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Inidirizzo email in uso"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "IndirizzoEmail"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "CodificaEmail"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Abilitato (togliere il segno di spunta per disabilitare questo campo personalizzato)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Abilitato (togliere il segno di spunta per disabilitare questo gruppo)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Abilitato (togliere il segno di spunta per disabilitare questa coda)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Campi personalizzati abilitati"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Code abilitate"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Stato %1 abilitato"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Stato abilitato: %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Valori multipli"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Inserire, separati da spazio, gli oggetti (o URI di oggetti) da collegare."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Valore singolo"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Inserire, separati da spazio, le code (o URI di code) da collegare."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Inserire, separati da spazio, i ticket (o URI di ticket) da collegare."
-
-#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
-msgstr "Inserire, separati da spazio, i ticket (o URI di ticket) da collegare."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Inserimento di un massimo di %1 valori"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Errore"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Errore durante l'aggiunta di un osservatore"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Errore nei parametri passati a Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Errore nei parametri passati a Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Errore nei parametri passati a Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Errore nei parametri passati a Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Errore nei parametri passati a Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Errore nei parametri passati a Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Propaga ticket"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Stima"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Chiunque"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Esempio:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExtendedStatus"
-msgstr "StatoAggiuntivo"
-
-#: NOT FOUND IN SOURCE
-msgid "QueueName"
-msgstr "NomeCoda"
-
-#: NOT FOUND IN SOURCE
-msgid "OwnerName"
-msgstr "NomeIncaricato"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeEstimated"
-msgstr "TempoStimato"
-
-#: NOT FOUND IN SOURCE
-msgid "CreatedBy"
-msgstr "CreatoDa"
-
-#: NOT FOUND IN SOURCE
-msgid "StartsRelative"
-msgstr "TempoDaInizioPrevisto"
-
-#: NOT FOUND IN SOURCE
-msgid "StartedRelative"
-msgstr "TempoDaInizio"
-
-#: NOT FOUND IN SOURCE
-msgid "CreatedRelative"
-msgstr "TempoDaCreazione"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdatedRelative"
-msgstr "TempoDaUltimoAggiornamento"
-
-#: NOT FOUND IN SOURCE
-msgid "ToldRelative"
-msgstr "TempoDaUltimoContattoRichiedente"
-
-#: NOT FOUND IN SOURCE
-msgid "DueRelative"
-msgstr "TempoDaScadenza"
-
-#: NOT FOUND IN SOURCE
-msgid "ResolvedRelative"
-msgstr "TempoDaRisoluzione"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "IdAutorizEsterno"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "IdContattoEsterno"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Informazioni aggiuntive"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr "Impossibile creare un attributo della ricerca"
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Impossibile trovare il pseudogruppo di utenti 'Privilegiato'."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Impossibile trovare il pseudogruppo di utenti 'Non Privilegiato'."
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Errore nel caricamento del modulo %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr "Impossibile caricare un oggetto per %1"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Febbraio"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Nome file"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Testi multipli"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr "Testi WIKI multipli"
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Testo singolo"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr "Testo WIKI singolo"
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Testi multipli (max. %1)"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr "Testi WIKI multipli (max. %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Fin"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Priorità finale"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "PrioritaFinale"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Cerca il gruppo in cui"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Cerca i gruppi in cui"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Cerca ticket nuovi/aperti"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Cerca le persone in cui"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Ricerca ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Completa approvazione"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Primo"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Prima pagina"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Tizio Caio Sempronio"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Tizio!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Forza la modifica"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr "Opzioni colonna"
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Trovati %quant(%1,ticket)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Trovato Oggetto"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "Testo libero"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FreeformMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FreeformSingle"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Ven."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Intestazione completa"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Carica da file un modello compilato"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Sto individuando l'utente corrente da una firma pgp\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Assegnato a %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Globale"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Campi personalizzati globali"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "Selezione globale delle parole chiave"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Scrips globali"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr "Configurazione globale campi personalizzati"
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Modello globale: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Vai"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Vai!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Firma pgp valida da %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Vai a pagina"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Vai al ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Grand"
-msgstr "Grand"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Gruppo"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Gruppo %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Diritti di gruppo"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Appartiene già al gruppo"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "Impossibile creare il gruppo."
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Impossibile creare il gruppo: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Gruppo creato"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Non appartiene al gruppo"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Gruppo non trovato"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Gruppo non trovato.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Gruppo non specificato.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Gruppi"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "I gruppi non possono appartenere a gruppi che sono già loro appartenenti"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Gruppi che corrispondono ai criteri di ricerca"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "L'utente appartiene ai gruppi"
-
-#: NOT FOUND IN SOURCE
-msgid "HasMember"
-msgstr "HaUnAppartenente"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Ciao!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Ciao, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Cronologia"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Cronologia del gruppo %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Cronologia dell'utente %1"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "TelefonoCasa"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Homepage"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Ho %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "Ho [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr "Mi sono perso..."
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identità"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Se un'approvazione viene negata, respingi l'originale e elimina le approvazioni accodate"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "(per i nuovi ticket in cui non viene specificato un richiedente)"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "(per i nuovi ticket in cui non viene specificata una coda)"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Se questo strumento viene ha il flag setgid, un utente locale malintenzionato potrebbe usarlo per ottenere accesso amministrativo a RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Se hai aggiornato qualche impostazione, assicurati di premere"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Valore non valido per %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Immagine"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Campo immutabile"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Elenca anche i campi personalizzati disabilitati."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Elenca anche i gruppi disabilitati."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Elenca anche le code disabilitate."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Includi nella ricerca gli utenti disabilitati."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr "Query incompleta"
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr "Query incompleta"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Priorità iniziale"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "PrioritaIniziale"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Errore in input"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "Interesse annotato"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Errore interno"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Errore interno: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Tipo di gruppo non valido"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Diritto non valido"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Tipo non valido"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Dati non validi"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Incaricato non valido. Uso il default 'nessuno'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Coda non valida"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Diritto non valido"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Valore non valido per %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Valore non valido per il campo personalizzato"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Valore non valido per lo stato"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "È estremamente importante che agli utenti non previlegiati non sia consentita l'esecuzione di questo strumento."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Per eseguire questo strumento, si suggerisce di creare un utente unix non privilegiato appartenente al gruppo corretto e con i necessari diritti in RT."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Accetta svariati argomenti:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr "Corsivo"
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Oggetti in attesa della mia approvazione"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Gen."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Gennaio"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Cambia appartenenza a questo gruppo"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Lug."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Luglio"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jumbo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Giu."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Giugno"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Parola chiave"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Lingua"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Lingua"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr "Grande"
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Ultimo"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Ultima comunicazione a richiedenti"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Ultima comunicazione a richiedenti"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Ultima notifica"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Ultima modifica"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Updated By"
-msgstr "Modificato Da"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "UltimaModifica"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "ModificatoPerUltimoDa"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Rimasti"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Consenti a questo utente di accedere a RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Consenti la concessione di diritti espliciti a questo utente"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Limitare l'incaricato a %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Limitare la coda a %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr "Collegamento"
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Il collegamento esiste già"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Il collegamento non può essere creato"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Collegamento creato (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Collegamento cancellato (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Collegamento non trovato"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Collega ticket n°%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Collega ticket %1"
-
-#: NOT FOUND IN SOURCE
-msgid "LinkedTo"
-msgstr "CollegatoA"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Collegamenti"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Carica"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Carica ricerca salvata:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr "CaricaRicercheSalvate"
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Moduli perl caricati"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr "Caricata ricerca %1"
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Domicilio"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Impossibile trovare la directory di log %1 (oppure mancano i permessi di scrittura).\\n RT non può essere eseguito."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Accesso effettuato come %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Accedi"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Esci"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Tipo di ricerca sbagliato"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Nuovo incaricato"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Nuovo stato"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Nuova data scadenza"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Nuova data risoluzione"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Nuova data iniziato"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Nuova data inizio previsto"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Nuova data ultimo contatto"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Nuova priorità"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Nuova coda"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Nuovo oggetto"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr "Rendi questo gruppo visibile all'utente"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Gestione campi personalizzati e relativi valori"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Gestione di gruppi e appartenenze"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Gestione di proprietà e configurazioni che si applicano a tutte le code"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Gestione delle code e delle propietà specifiche delle code"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Gestione di utenti e password"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Marzo"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Maggio"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mag."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Aggiunto appartenente %1"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Rimosso appartenente %1"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Aggiunto appartenente"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Rimosso appartenente"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Appartenente non rimosso"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Appartenente a"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "AppartenteA"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Appartenenti"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Aggiunta appartenenza al gruppo %1"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Rimossa appartenenza al gruppo %1"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Appartenenza a gruppi"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Appartenenza a gruppi per l'utente %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Unione avvenuta con Successo"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Unione fallita. Impossibile impostare EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr "Unione fallita. Impossibile impostare Stato"
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Unisci a"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Unito a %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Messaggio"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Impossibile registrare il messaggio"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Messaggio registrato"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "I messaggi riguardanti questo ticket non saranno inviati a..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr "Parentesi non bilanciate"
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Manca una chiave primaria?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Cellulare"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "TelefonoCellulare"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modifica la Lista Controllo Accessi (ACL)"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Modifica il campo personalizzato %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr "Modifica campi personalizzati applicabili a %1 per ogni %2"
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Modifica i campi personalizzati applicabili a tutti %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Modifica i Campi Personalizzati validi per tutte le code"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Modifica diritti del gruppo"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Modifica appartenenti al gruppo"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Modifica diritti"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modifica i modelli di Scrips per questa coda"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modifica gli Scrips per questa coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Modifica le ACL di Sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Modifica il modello %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Modifica diritti utente"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modifica un campo personalizzato per la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Modifica un campo personalizzato valido per tutte le code"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modifica uno scrip per la coda %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modifica uno scrip valido per tutte le code"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Modifica oggetti associati a %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Modifica le date per n° %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modifica le date per n°%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modifica le date per il ticket n° %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr "Modifica campi personalizzati globali"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modifica i diritti di gruppo globali"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modifica i diritti di gruppo globali."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Modifica i diritti di gruppo globali"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Modifica i diritti globali per gli utenti"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Modifica gli scrips globali"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modifica i diritti globali per gli utenti"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modifica i diritti globali per gli utenti."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Modifica i metadati del gruppo o elimina un gruppo"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Modifica i diritti di gruppo per il campo personalizzato %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modifica i diritti di gruppo per il gruppo %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modifica i diritti di gruppo per la coda %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Modifica gli appartenenti a questo gruppo"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modifica il proprio account RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modifica le persone collegate alla coda %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modifica le persone collegate al ticket n°%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modifica gli scrips per la coda %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modifica gli scrips validi per tutte le code"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Modifica modello %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modifica i modelli validi per tutte le code"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modifica il gruppo %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modifica gli osservatori della coda"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modifica l'utente %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modifica il ticket n° %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modifica il ticket n°%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modifica i ticket"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Modifica i diritti utente per il il campo personalizzato %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modifica i diritti utente per il gruppo %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modifica i diritti utente per la coda %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Modifica gli osservatori per la coda '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModificaACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "ModificaCampoPers."
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ModificaPropriaAppartenenzaAlGruppo"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModificaOsservatoriDellaCoda"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModificaScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModificaSuoiDati"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModificaModello"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModificaTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Lun."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Maggiori informazioni su %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Sposta in basso"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Sposta in alto"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Multiplo"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "L'attributo 'name' deve essere specificato"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "I miei ticket in stato: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Le mie richieste di approvazione"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Le mie richieste di approvazione"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Le mie ricerche salvate"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nome"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nome già usato"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "È richiesta l'approvazione da parte del system administrator"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Mai"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nuovo"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nuovi collegamenti"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nuova Password"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nuove approvazioni pendenti"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Nuova query"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nuova Ricerca"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nuovo campo personalizzato"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Nuovo gruppo"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nuova password"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Inviata notifica della nuova password"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nuova coda"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nuova richiesta"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nuovi diritti"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nuovo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nuova ricerca"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Nuovo modello"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Nuovo ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Il nuovo ticket non esiste"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Nuovo utente"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nuovo utente di nome"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nuovo osservatore"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Impostazioni nuova finestra"
-
-#: NOT FOUND IN SOURCE
-msgid "NEWLINE"
-msgstr "NUOVA_RIGA"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Seguente"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Pagina seguente"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Pagina seguente"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Nomignolo"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Nomignolo"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Nessuna classe definita"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Nessun campo personalizzato"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Nessun campo personalizzato definito"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Nessun gruppo definito"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Nessuna query"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Nessuna coda definita"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Nessun utente RT trovato. Consulta il tuo amministratore di RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Nessun Modello"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Nessun ticket specificato. Annullo il ticket"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Nessuna azione"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Nessuna colonna specificata"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Nessun comando trovato\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Nessun commento su questo utente"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Nessuna corrispondenza allegata"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Nessuna descrizione per %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Nessun gruppo specificato"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Nessun gruppo corrisponde ai criteri di ricerca."
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Nessun messaggio allegato"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Nessuna password impostata"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Manca il permesso per creare code"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Manca il permesso per creare ticket nella coda '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Manca il permesso per creare utenti"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Manca il permesso per visualizzare il ticket"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Manca il permesso per aggiornare il ticket"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Nessun utente/gruppo specificato"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Nessun utente/gruppo selezionato."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Nessuna coda soddisfa i criteri di ricerca."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Nessun diritto trovato"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Nessun diritto concesso."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr "Nessuna ricerca caricata"
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Nessuna ricerca su cui operare."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Senza oggetto"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Nessun identificativo di ticket specificato"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Nessun tipo transazione specificato"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Nessun utente o indirizzo email specificato"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Nessuna utente soddisfa i criteri di ricerca."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Nessun valore inviato a _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Nessuno"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Campo inesistente?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Accesso non effettuato"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Accesso non effettuato."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Non impostato"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Non ancora implementato."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Non ancora implementato...."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Note"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Impossibile inviare la notifica"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "invia notifica agli AdminCc"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "invia notifica agli AdminCc come commento"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "invia notifica ai Cc"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "invia notifica ai Cc come commento"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "invia notifica agli altri destinatari"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "invia notifica agli altri destinatari come commento"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "invia notifica all'incaricato"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "invia notifica all'incaricato come commento"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "invia notifica all'incaricato del ticket respinto"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "invia notifica all'incaricato del ticket che tutte le approvazioni sono state concesse"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "invia notifica all'incaricato del ticket che alcune approvazioni sono state concesse"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "invia notifica agli incaricati e AdminCc quando è necessario richiedere nuove approvazione"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "invia notifica al richiedente"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "invia notifica ai richiedenti e ai Cc"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "invia notifica ai richiedenti e ai Cc come commento"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "invia notifica ai richiedenti, Cc e AdminCc"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "invia notifica ai richiedenti, Cc a AdminCc come commento"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "Novembre"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr "OR"
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "L'oggetto non può essere creato"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr "L'oggetto non può essere cancellato"
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Oggetto creato"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr "Oggetto cancellato"
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Oggetto di tipo %1 non accetta campi personalizzati"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Tipo oggetto non corrisponde"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Oct."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "Ottobre"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Offline"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Modifiche offline"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Upload richiesta offline"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "il"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "All'arrivo di un commento"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "All'arrivo di una corrispondenza"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Alla creazione"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Al cambio dell'incaricato"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "Al cambio della priorità"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Al cambio di coda"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Alla risoluzione"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Al cambio di stato"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Ad ogni transazione"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Mostra le approvazioni solo per le richieste create dopo il %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Mostra le approvazioni solo per le richieste create prima del %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Aperto"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Apri"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Richieste aperte"
-
-#: NOT FOUND IN SOURCE
-msgid "Open ticket"
-msgstr "Apri ticket"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Ticket aperti"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Apre ticket (dalla lista) in una nuova finestra"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Apre ticket (dalla lista) in un'altra finestra"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Apri i ticket all'arrivo di corrispondenza"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Ordina per"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Ordinamento"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Azienda"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Ticket originario: n°%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Registrata email in uscita riguardante un commento"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Registrata email in uscita"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Al passare del tempo, la priorità cresce fino a"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Prende in carico ticket"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "PrendeInCaricoTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Incaricato"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Cambiato incaricato da %1 a %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "L'incaricato non può essere impostato."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Cambiato forzatamente l'incaricato da %1 a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "In carico a"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Pagina %1 di %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Cercapersone"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Cercapersone"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "DerivaDa"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Password"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Promemoria password"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr "Password cambiata"
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr "La password deve essere lunga almeno %1 caratteri"
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Password troppo corta"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Password: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Le passwords non corrispondono."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Le password non corrispondono. La password non è stata cambiata"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Persone"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Esegui un'azione personalizzata"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Configurazione perl"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Operazione non consentita"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Gruppi personali"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Gruppi personali"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Gruppi personali:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Numeri telefonici"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Segnaposto"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Preferenze"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Prefs"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Preparazione non necessaria"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Precedente"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Pagina precedente"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Pagina precedente"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Utente/gruppo %1 not trovato."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Priorità"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "La priorità inizia da"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Riservatezza:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilegiato"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Stato previlegiato: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Utenti privilegiati"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogruppo per uso interno"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Query"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Costruttore di query"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Coda"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Coda %1 non trovata"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Coda '%1' non trovata\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "Selezione delle parole chiave per la coda"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nome della coda"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Scrips della coda"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "La coda esiste già"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Impossibile creare la coda"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Impossibile caricare la coda."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Coda creata"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Coda non specificata."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Coda non trovata"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Code"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Ricerca veloce"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Creazione veloce di un ticket"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 per %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 da <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Amministrazione di RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "Errore di autenticazione RT."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT Bounce: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "Errore nella configurazione di RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Errore critico. Messaggio not registrato!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Errore RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT ha ricevuto email (%1) da se stesso."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT ha ricevuto email (%1) da se stesso."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Self Service / Ticket chiusi"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Variabili RT"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "Quadro d'insieme"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT non ha potuto autenticarti"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT non è riuscito a trovare il richiedente consultando in database esterno"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT non ha trovato la coda: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr "RT non può memorizzare la tua sessione"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT non può verificare questa firma PGP. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT / %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT / %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT ha eseguito i comandi"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versione 2 della GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. RT viene distribuito con la <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versione 2 della GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT thinks this message may be a bounce"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT will process this message as if it were unsigned.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Nome reale"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "NomeReale"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "Aggiunto riferimento da %1"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Cancellato riferimento da %1"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "Aggiunto riferimento a %1"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Cancellato riferimento a %1"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "È un riferimento per"
-
-#: NOT FOUND IN SOURCE
-msgid "ReferredToBy"
-msgstr "RiferimentoPer"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Fa riferimento a"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "FaRiferimentoA"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Rifinisci"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Rifinisci la ricerca"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Aggiorna questa pagina ogni %1 minuti."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Rimuovi AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Rimuovi Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Rimuovi richiedente"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Risposta"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Indirizzo a cui indirizzare le risposte"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Rispondi ai richiedenti"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Rispondi ai ticket"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "RispondiAlTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Richiedente"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Indirizzo email del richiedente"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Richiedente(i)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "IndirizzoRichiedente"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Richiedenti"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Le richieste devono essere soddisfatte entro"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Il parametro obbligatorio '%1' non è stato specificato"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Azzera"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Casa"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Risolvi"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Risolvi il ticket n°%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Risolto"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Risposta ai richiedenti"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Risultati"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Risultati per pagina"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Ridigita Password"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Annulla modifiche"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Diritto %1 non trovato per %2 %3 limitatamente a %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Diritto delegato"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Diritto concesso"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Diritto caricato"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Il diritto non può essere revocato"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Diritto non trovato"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Diritto non caricato."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Diritto revocato"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Diritti"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "I diritti per %1 non possono essere concessi"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "I diritti per %1 non possono essere revocati"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Ruoli"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "ApprovazioneAmministratore"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Righe per pagina"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sab."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Salva"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Salva modifiche"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Salva preferenze"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Salva modifiche"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr "Ricerca %1 salvata"
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Ricerche salvate"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip n°%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip creato"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Campi dello scrip"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip eliminato"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scrips per %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrips che si applicano a tutte le code"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Ricerca"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Criteri di ricerca"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr "Errore nel caricamento degli attributi della ricerca"
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Ricerca le richieste di approvazione"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr "Aggiornamento della ricerca: %1"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Protezione:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Vedi campi personalizzati"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Vedi letteralmente i messaggi in uscita e i loro destinatari"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Vedi commenti privati del ticket"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Vedi riassunto dei ticket"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "VediCampoPers."
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr "VediGruppo"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "VediCoda"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Seleziona"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Scegli un campo personalizzato"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Seleziona un gruppo"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Seleziona una coda"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Scegli una coda per il nuovo ticket"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Seleziona un utente"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Seleziona un campo personalizzato"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr "Seleziona i campi personalizzati per tutti i gruppi degli utenti"
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr "Seleziona i campi personalizzati per tutti gli utenti"
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr "Seleziona i campi personalizzati per i ticket in tutte le code"
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr "Seleziona i campi personalizzati per le transazioni relative ai ticket in tutte le code"
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Seleziona il gruppo"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Elenco a selezione multipla"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Elenco a selezione singola"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Seleziona la coda"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Seleziona lo scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Seleziona il modello"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Seleziona un massimo di %1 valori"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Seleziona l'utente"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "SelezioneMultipla"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "SelezioneSingola"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Campi personalizzati selezionati"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Oggetti selezionati"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Self Service"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Invia una mail a tutti gli osservatori"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Invia una mail atutti gli osservatori come \"commento\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Invia mail ai richiedenti e Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Invia mail come commento a richiedenti e Cc"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Invia un messaggio ai richiedenti"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Invia mail a Cc e Bcc esplicitamente elencati"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Invia mail ai Cc"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Invia mail ai Cc come commento"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Invia mail ai Cc amministrativi"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Invia mail ai Cc amministrativi come commento"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Invia mail all'incaricato"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Set."
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "Settembre"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Mostra"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Mostra richieste di approvazione"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Mostra colonne"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Mostra i risultati"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Mostra le richieste approvate"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Mostra info di base"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Mostra le richieste negate"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Mostra i dettagli"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Mostra le richieste in attesa"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Mostra le richieste in attesa di altre approvazioni"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Mostra commenti privati del ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Mostra riassunto dei ticket"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "MostraACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr "MostraTabConfigurazione"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "MostraEmailUscente"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "MostraRicercheSalvate"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "MostraScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "MostraModello"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "MostraTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "MostraCommentiAlTicket"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Registra come richiede o come Cc del ticket o della coda"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Registra come AdminCc del ticket o della coda"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Firma"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Accesso effettuato come %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Singolo"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr "Carattere"
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Salta menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr "Piccolo"
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Ordinamento"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Chiave di ordinamento"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Ordina i risultati per"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "Ordinamento"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "In stallo"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Pagina iniziale"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Iniziato"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Impossibile interpretare data inizio '%1'"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "InizioPrevisto"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Inizio previsto il"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Impossibile interpretare data inizio previsto '%1'"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Provincia"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Stato"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Cambiamento di stato"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Cambiato lo stato da %1 a %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "CambiamentoStato"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Sottrai"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Sottrae ticket"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "SottraeTicket"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Sottratto da %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Sottratto da %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr "Stile"
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Oggetto"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "L'oggetto diventa %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Invia"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Imposta workflow"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Completato con successo"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Dom."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperUtente"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Sistema"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Configurazione del sistema"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Errore di sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "Errore di sistema. Diritto non concesso."
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "Errore di sistema. Diritto non concesso"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr "Errore di sistema: %1"
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Strumenti di sistema"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Errore di sistema. Diritto non delegato."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Errore di sistema. Diritto non concesso."
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Errore di sistema. Impossibile concedere i diritti."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Gruppi di sistema"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolegroup per uso interno"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Prendi in carico"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Prendi in carico ticket"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "PrendiInCaricoTicket"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Preso in carico"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Modello"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Modello n°%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Modello eliminato"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Modello non trovato"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Modello non trovato\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Modello elaborato"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Modelli"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Modelli per %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Testo"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Il valore attuale è già questo"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Questo campo personalizzato non ammette questo valore"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Il valore è lo stesso"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Questo utente/gruppo ha già questo diritto"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Questo utente/gruppo è già %1 per questa coda"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Questo utente/gruppo è già %1 per questo ticket"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Questo utente/gruppo non è %1 per questa coda"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Questo utente/gruppo non è %1 per questo ticket"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "La coda non esiste"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Il ticket ha dipendenze non risolte"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "L'utente ha già questo diritto"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "L'utente ha già il ticket in carico"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "L'utente non esiste"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "L'utente è già previlegiato"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "L'utente è già non previlegiato"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Ora l'utente è previlegiato"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Ora l'utente è non previlegiato"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Ora l'utente è non previlegiato"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "L'utente non può prendere in carico ticket da questa coda"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Non è un identificativo numerico"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Dati di base"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "Il Cc di un ticket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Il Cc amministrativo di un ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Il commento è stato registrato"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Il comando seguente troverà tutti i ticket attivi nella coda 'general' e ne imposterà la priorità a 99 se nessuno li ha toccati nelle ultime 4 ore:"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Il nuovo valore è stato impostato."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "L'incaricato del ticket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Il richiedente del ticket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Questi commenti non vengono normalmente mostrati all'utente"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "L'oggetto non ammette questo campo personalizzato"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Questa funzionalità è riservata agli amministratori di sistema"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Il messaggio sarà inviato a..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Il ticket %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Questo strumento permette di eseguire qualsiasi modulo perl da dentro RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "La transazione sembra non avere alcun contenuto"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "I %1 ticket a maggior priorità richiesti da questo utente"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "I 25 ticket a maggior priorità richiesti da questo utente"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Gio."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Ticket n° %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "Ticket n° %1 aggiornamento Jumbo: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Ticket n°%1 aggiornamento Jumbo: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Ticket n°%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Creato ticket %1 nella coda '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Caricato ticket %1\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Ticket %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Campi personalizzati del ticket"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Cronologia del ticket n° %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Identificativo ticket"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Ticket risolto"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Transazioni sul ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Allegato al ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Contenuto del ticket"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Tipo del contenuto del ticket"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "A causa di un errore interno non è stato possibile creare il ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Ticket creato"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Creazione del ticket fallita"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Ticket eliminato"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Identificativo del ticket non trovato"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "Ticket eliminato"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Metadati del ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Ticket non trovato"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Stato del ticket cambiato"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Osservatori del ticket"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr "Modulo di ricerca TicketSQL"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Ticket %1 da %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Ticket da %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Ticket che dipendono da questa approvazione:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Tempo stimato"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Tempo rimasto"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Tempo lavorato"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Tempo rimanente"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tempo impiegato per l'elaborazione"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Tempo impiegato"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "TempoRimanente"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TempoImpiegato"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr "Titolo"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Per generare una diff dopo il commit:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Per generare una diff dopo il commit:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Per richieste di supporto, formazione, personalizzazioni o acquisto di licenze, si prega di contattare %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "UltimaComunicazioneARichiedenti"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Strumenti"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transazioni"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transazione %1 ripulita"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transazione creata"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Campi personalizzati della transazione"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaction->Create fallita, devi specificare l'identificativo dell'oggetto"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transaction->Create fallita, devi specificare il tipo e l'identificativo dell'oggetto"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Le transazioni sono immutabili"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Provo a eliminare un diritto: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Mar."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Tipo"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "NonImplementato"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Username unix"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "UsernameUnix"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "ContentEncoding sconosciuto %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr "Campo sconosciuto: $key"
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Illimitato"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Ricerca senza nome"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "NonPrevilegiato"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Campi personalizzati non selezionati"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Oggetti non selezionati"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "NonPreso"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Aggiornamento"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Aggiorna tutti"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Identificativo aggiornamento"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Aggiorna ticket"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Tipo aggiornamento"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Aggiorna tutti questi ticket contemporaneamente"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Aggiorna email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Aggiorna ticket multipli"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Aggiorna nome"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Aggiornamento non registrato."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Aggiorna i ticket selezionati"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Aggiorna la firma"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Aggiorna il ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Aggiorna il ticket n° %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Aggiorna il ticket n°%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Aggiorna il ticket n°%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Il tipo aggiornamento non era ne' corrispondenza ne' commento."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Aggiornato"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Upload"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Upload file multipli"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Upload immagini multiple"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Upload file singolo"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Upload immagine singola"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Upload fino a %1 file"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Upload fino a %1 immagini"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Upload delle modifiche"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr "Usa altri strumenti di amministrazione di RT"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Utente %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Utente %1 Password: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Impossibile trovare l'utente '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Utente '%1' non trovato"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Utente '%1' non trovato\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Definito dall'utente"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Condizioni e azioni definite dall'utente"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Username"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Username"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Diritti dell'utente"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "L'utente ha richiesto un aggiornamento di tipo sconosciuto sul campo personalizzato %1 per %2 l'oggetto n°%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Impossibile creare l'utente: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Utente creato"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Gruppi definiti dall'utente"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Utente caricato"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Utente notificato"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "User view"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Gruppi definiti dall'utente"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Username"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Utenti"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Utenti che soddisfano il criterio di ricerca"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Query valida"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "ValoreDellaCoda"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Valori"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Osserva"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "OsservaComeAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher"
-msgstr "Osservatore"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Osservatore caricato"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Osservatori"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebEncoding"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Mer."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Quando un ticket ha ricevuto tutte le approvazioni richieste, aggiungi una corrispondenza al ticket originale"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Quando un ticket riceve una qualsiasi delle approvazioni richieste, aggiungi una corrispondenza al ticket originale"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Quando viene creato un ticket"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Quando una richiesta di approvazione viene creata, notifica chi ha in carico il ticket e gli AdminCc che devono approvarlo"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Quando succede qualsiasi cosa"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Quando un ticket viene risolto"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Quando cambia colui che ha in carico il ticket"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Quando cambia la priorità di un ticket"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Quando il ticket si sposta in un'altra coda"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Quando cambia lo stato di un ticket"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Quando si verifica una condizione definita dall'utente"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Quando arrivano commenti"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Quando arrivano corrispondenze"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Lavoro"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Lavoro offline"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "TelefonoLavoro"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Impiegato"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Hai già in carico questo ticket"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Non sei un utente autorizzato"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Puoi solo riassegnare ticket che hai in carico, o che non sono ancora assegnati"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Non hai i permessi per visualizzare questo ticket.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Hai trovato %1 ticket nella coda %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Ti sei scollegato da RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Non hai l'autorizzazione per creare ticket in questa coda."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Non puoi creare ticket in questa coda."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Collegati di nuovo"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Le tue %1 richieste"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "L'amministratore RT non ha configurato correttamente l'alias di email che invoca RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "La tua richiesta è stata approvata da %1. Potrebbero essere necessarie altre approvazioni."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "La tua richiesta è stata approvata."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Your request was rejected"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "La tua richiesta è stata respinta."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Il tuo username o la tua password non sono corretti"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "CAP"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[senza oggetto]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr "permetti la creazione di ricerche salvate"
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr "permetti il caricamento di ricerche salvate"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "come concesso a %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr "appartiene a"
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "chiuso"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "contiene"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "contenuto"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "content-type"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "corrispondenza (probabilmente) non inviata"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "corrispondenza inviata"
-
-#: NOT FOUND IN SOURCE
-msgid "current: $current, want $want, Error near ->$val<- expecting a "
-msgstr "attuale: $current, richiesto $want, Errore vicino a ->$val<- mi aspettavo "
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "giorni"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "morto"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "cancella"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "cancellato"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr "non appartiene a"
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "non corrisponde a"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "non contiene"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "uguale a"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr "errore: impossibile spostare in basso"
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr "errore: impossibile spostare a sinistra"
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr "errore: impossibile spostare in alto"
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr "errore: niente da cancellare"
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr "errore: niente da spostare"
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr "errore: niente da invertire"
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "falso"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "nome file"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "maggiore di"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "gruppo '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "ore"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "Codice"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "uguale a"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "diverso da"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "minore di"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "corrisponde a"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minuti"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "mesi"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nuovo"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "nessun nome"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "nessun valore"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "nessuno"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "diverso da"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "diverso da"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "aperto"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "Gruppo personale '%1' per l'utente '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "coda %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "respinto"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "risolto"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr "Mostra configurazione"
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "foglio di calcolo"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "in stallo"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "sistema %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "gruppo di sistema '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "il componente chiamante non ha specificato il perché"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ticket n°%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "vero"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "gruppo %1 senza descrizione"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "gruppo %1 senza descrizione"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "utente %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "settimane"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "con il modello %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "anni"
-
diff --git a/rt/lib/RT/I18N/ja.po b/rt/lib/RT/I18N/ja.po
deleted file mode 100644
index 259f857..0000000
--- a/rt/lib/RT/I18N/ja.po
+++ /dev/null
@@ -1,5557 +0,0 @@
-# Japanese translation by Interactive Artists LLC
-# 0.1 2002 08 15
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 2.1.x\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2002-05-13 02:00+0800\n"
-"Last-Translator: Jesse Vincent <jesse@bestpractical.com>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr ""
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr ""
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr ""
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr ""
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%3ã«å¤‰æ›´ã•ã‚ŒãŸ%1 %2 "
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 ã“ã®ãƒã‚±ãƒƒãƒˆ\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr ""
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr ""
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr ""
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1スクリプトアクションロードã—ã¾ã—ãŸ"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%2ã¨åŒã˜ãƒãƒªãƒ¥ãƒ¼ã®%1ãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1aliasesã‚’å‹•ã‹ã™ãŸã‚ã«ãƒã‚±ãƒƒãƒˆIDãŒå¿…è¦ã§ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1aliasesã‚’å‹•ã‹ã™ãŸã‚ã«ãƒã‚±ãƒƒãƒˆIDãŒå¿…è¦ã§ã™ "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1aliasesã‚’å‹•ã‹ã™ãŸã‚ã«ãƒã‚±ãƒƒãƒˆIDãŒå¿…è¦ã§ã™(%2ã‹ã‚‰) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%2ã«ã‚ˆã‚‹%1"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1ã¯%2ã‹ã‚‰%3ã«å¤‰æ›´ã•ã‚Œã¾ã—ãŸ"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1ã¯ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã‚’ã¯ã˜ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ(%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1ã¯åˆ†è§£ã™ã‚‹ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’設定ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚RTã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã«ä¸€è²«æ€§ãŒãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1ã¯ã“ã®ã‚­ãƒ¥ãƒ¼ã§ã¯%2ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1ã¯ã“ã®ãƒã‚±ãƒƒãƒˆã§ã¯%2ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1ã¯ã‚«ã‚¹ã‚¿ãƒ ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰%2ã®ãƒãƒªãƒ¥ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1ã¯æœ‰åŠ¹ãªã‚­ãƒ¥ãƒ¼IDã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1分"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1表示ã•ã‚Œã¾ã›ã‚“"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 æˆåŠŸã—ã¾ã—ãŸ\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1タイプã¯$MessageIdIDã§ã¯ä¸æ˜Žã§ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1タイプã¯%2ã§ã¯ä¸æ˜Žã§ã™"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1ã¯åˆ†è§£ã•ã‚ŒãŸã‚°ãƒ«ãƒ¼ãƒ—ãƒã‚±ãƒƒãƒˆã®ã™ã¹ã¦ã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’分解ã—ã¾ã™ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1ãŒã‚‚ã—リンクã•ã‚ŒãŸãƒªã‚¯ã‚¨ã‚¹ãƒˆã®å¾“属者(もã—ãã¯ãƒ¡ãƒ³ãƒãƒ¼ï¼‰ã§ã‚ã‚‹ã¨ã€[ローカル]ベースを行ãè©°ã¾ã‚‰ã›ã‚‹ã“ã¨ã«ãªã‚Šã¾ã™ã€‚"
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1:アタッãƒãƒ¡ãƒ³ãƒˆãŒç‰¹å®šã§ãã¾ã›ã‚“"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr ""
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "%1'ã¯ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã«ç„¡åŠ¹åãƒãƒªãƒ¥ãƒ¼ã§ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "%1' アクションをèªè­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(スクリプトを削除ã™ã‚‹ãŸã‚ã®ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ï¼‰"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(削除ã®ãŸã‚ã®ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ï¼‰"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(メンãƒãƒ¼ãªã—)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(スクリプトãªã—)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr ""
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Eメールアドレスã«ãŠã‘るカンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã¸ã®æ­£ç¢ºãªã‚¢ãƒƒãƒ—デートã®ãƒ–ラインドコピーをé€ã‚‹ã€‚今後ã®ã‚¢ãƒƒãƒ—デートを誰ãŒå—ä¿¡ã™ã‚‹ã‹ã¯<b>変更ã§ãã¾ã›ã‚“</b>)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Eメールアドレスã«ãŠã‘るカンマã§åŒºåˆ‡ã‚‰ã‚ŒãŸãƒªã‚¹ãƒˆã¸ã®æ­£ç¢ºãªã‚¢ãƒƒãƒ—デートã®ã‚³ãƒ”ーをé€ã‚‹ã€‚今後ã®ã‚¢ãƒƒãƒ—デートを誰ãŒå—ä¿¡ã™ã‚‹ã‹ã¯<b>変更ã§ãã¾ã›ã‚“</b>)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(空)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(サブジェクトãªã—)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(ãƒãƒªãƒ¥ãƒ¼ãªã—)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(ã²ã¨ã¤ã®ãƒã‚±ãƒƒãƒˆã®ã¿ï¼‰"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr ""
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(必è¦ã§ã™ï¼‰"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "ç§ãŒæ‰€æœ‰ã—ã¦ã„ã‚‹25ã®æœ€ã‚‚é‡è¦ãªå„ªå…ˆæ¨©"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "ç§ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã—ãŸ25ã®æœ€ã‚‚é‡è¦ãªå„ªå…ˆæ¨©"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr ""
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"æ–°ã—ã„ãƒã‚±ãƒƒãƒˆ\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "エースã¯ã¿ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "エースã¯ä½œæˆã€å‰Šé™¤ã®ã¿ã§ã™ã€‚"
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "æ„図的ã§ãªã„ãƒã‚±ãƒƒãƒˆã®ä¿®æ­£ã‚’防ããŸã‚ã«å¼·åˆ¶çµ‚了ã—ã¾ã™ã€‚\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "アクセスコントロール"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "アクション"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "アクション%1ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr ""
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "管ç†Ccを追加ã™ã‚‹"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Ccを追加ã™ã‚‹"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr ""
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "リクエストã™ã‚‹äººã‚’を追加ã™ã‚‹"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "æ–°ã—ã„グローãƒãƒ«ã‚¹ã‚¯ãƒªãƒ—トを追加ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "ã“ã®ã‚­ãƒ¥ãƒ¼ã«ã‚¹ã‚¯ãƒªãƒ—トを追加ã™ã‚‹"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "ã™ã¹ã¦ã®ã‚­ãƒ¥ãƒ¼ã«é©å¿œã™ã‚‹ã‚¹ã‚¯ãƒªãƒ—トを追加ã™ã‚‹"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "é¸æŠžã•ã‚ŒãŸãƒã‚±ãƒƒãƒˆã¸ã®ã‚³ãƒ¡ãƒ³ãƒˆã¾ãŸã¯è¿”事を追加ã™ã‚‹"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "メンãƒãƒ¼ã‚’追加ã™ã‚‹"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "æ–°ã—ã„ウォッãƒãƒ£ãƒ¼ã‚’追加ã™ã‚‹"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "ã“ã®ã‚­ãƒ¥ãƒ¼ã«%1ã®è²¬ä»»è€…を追加ã—ã¾ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "ã“ã®ãƒã‚±ãƒƒãƒˆã«%1ã®è²¬ä»»è€…を追加ã—ã¾ã—ãŸ"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "ä½æ‰€1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "ä½æ‰€2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "管ç†Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr ""
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr ""
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "管ç†ã‚­ãƒ¥ãƒ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "管ç†ãƒ¦ãƒ¼ã‚¶ãƒ¼"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "管ç†/グローãƒãƒ«è¨­å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "管ç†/グループ"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "管ç†/キュー/基本"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "管ç†Cc"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr ""
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "管ç†è€…Cc"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "絞込ã¿æ¤œç´¢"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "後"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "ã™ã¹ã¦ã®ã‚­ãƒ¥ãƒ¼"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr ""
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr ""
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr ""
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr ""
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr ""
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr ""
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "四月"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "昇順"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "添付"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "添付ファイル"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr ""
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "添付ファイル%1ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "添付ファイルãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "添付ファイルå"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "添付ファイル"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "八月"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "自動システム"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr ""
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "悪ã„PGPç½²å: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "悪ã„添付IDã§ã™ã€‚添付ファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“'%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "%1ã®æ‚ªã„データã§ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "添付ファイルã«ã¨ã£ã¦æ‚ªã„トランザクションナンãƒãƒ¼ã§ã™ã€‚%1ã¯%2\\nã®ã¯ãšã§ã™"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "基本"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "本当ã«å¤‰æ›´ã‚’ä¿å­˜ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "å‰"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "ã“ã®æ¤œç´¢ã«ãƒ–ックマークã®ã§ãã‚‹URLã§ã™"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "短ã„ヘッダー"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "ãƒã‚±ãƒƒãƒˆã®ä¸€æ‹¬ã‚¢ãƒƒãƒ—デート"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "システムユーザーを修正ã§ãã¾ã›ã‚“"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "æ°åãªã—ã«ã‚«ã‚¹ã‚¿ãƒ ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãƒãƒªãƒ¥ãƒ¼ã®è¿½åŠ ã¯ã§ãã¾ã›ã‚“"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "ãƒã‚±ãƒƒãƒˆè‡ªä½“ã«ã¯ãƒªãƒ³ã‚¯ã§ãã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "ã™ã§ã«çµåˆã—ãŸãƒã‚±ãƒƒãƒˆã«ã¯çµåˆã§ãã¾ã›ã‚“。ã“ã®ã‚¨ãƒ©ãƒ¼ã¯æ±ºã—ã¦å‡ºã•ãªã„ã§ãã ã•ã„"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "ベースã¨ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚’特定ã§ãã¾ã›ã‚“"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "ユーザー: %1を作æˆã§ãã¾ã›ã‚“"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "パスワードを変更ã™ã‚‹"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "権利を無効ã«ã™ã‚‹ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "å­ä¾›"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "町"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "終了ã—ãŸãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "ç†è§£ã—ã¦ã„ãªã„コマンド!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "コメント"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "コメントアドレス"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "記録ã•ã‚Œã¦ã„ãªã„コメント"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "コメント"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "コメント(リクエスã¨ã—ãŸäººã«ã¯é€ä¿¡ã•ã‚Œã¾ã›ã‚“)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "コメント(リクエスã¨ã—ãŸäººã«ã¯é€ä¿¡ã•ã‚Œã¾ã›ã‚“)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "%1ã«ã¤ã„ã¦ã®ã‚³ãƒ¡ãƒ³ãƒˆ"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã¤ã„ã¦ã®ã‚³ãƒ¡ãƒ³ãƒˆ"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "コメントãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "コメントãŒçŸ­ãã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "コンパイルè¦åˆ¶"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "コンディション"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "コンディションãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "設定"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "確èª"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "コンタクト情報"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "コンタクトã•ã‚ŒãŸæ—¥ã«ã¡'%1'を解æžã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "情報"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "メールアドレス"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "通信ãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "記録ã•ã‚Œã¦ã„ãªã„通信"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "ãƒã‚±ãƒƒãƒˆã®æ–°ã—ã„カスタムフィールドãƒãƒªãƒ¥ãƒ¼ã‚’追加ã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "オーナー変更ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "カスタムフィールドã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "グループã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "テンプレート: %1ã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "ãƒã‚±ãƒƒãƒˆã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚キューãŒã‚»ãƒƒãƒˆã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "ユーザーã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "ãƒã‚±ãƒƒãƒˆã¨ãã®ID%1ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "グループ %1ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’作æˆã¾ãŸã¯è¦‹ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "ãã®è²¬ä»»è€…を見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "ユーザー%1を見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "グループをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "ã“ã®ã‚­ãƒ¥ãƒ¼ã§ãã®è²¬ä»»è€…ã‚’%1ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "ã“ã®ãƒã‚±ãƒƒãƒˆã§ãã®è²¬ä»»è€…ã‚’%1ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "ã“ã®ã‚­ãƒ¥ãƒ¼ã§ãã®è²¬ä»»è€…ã‚’%1ã¨ã—ã¦å‰Šé™¤ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "ã“ã®ãƒã‚±ãƒƒãƒˆã§ãã®è²¬ä»»è€…ã‚’%1ã¨ã—ã¦å‰Šé™¤ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "グループã«ãƒ¡ãƒ³ãƒãƒ¼ã®è¿½åŠ ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "トランザクション: %1ã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "GPGã®è¿”事\\nã‹ã‚‰ä½•ã‚’è¡Œã£ãŸã‚‰ã‚ˆã„ã®ã‹ã‚ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "グループ\\nãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "責任者ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "ãã®ãƒãƒªãƒ¥ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "ユーザー\\nãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "ユーザーデータベース\\nã‹ã‚‰%1をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "RT設定ファイル'%1' %2をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "スクリプトをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "グループ%1をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "リンクをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "キューをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "キュー%1をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "スクリプトをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "テンプレートをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ï¼ˆ%1)をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "ãƒã‚±ãƒƒãƒˆ'%1'をロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "国"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "作æˆ"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "カスタムフィールドã®ä½œæˆ"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "æ–°ã—ã„カスタムフィールドã®ä½œæˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "æ–°ã—ã„グローãƒãƒ«ã‚¹ã‚¯ãƒªãƒ—トã®ä½œæˆ"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "æ–°ã—ã„グループã®ä½œæˆ"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "æ–°ã—ã„個人グループã®ä½œæˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "æ–°ã—ã„キューã®ä½œæˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "æ–°ã—ã„テンプレートã®ä½œæˆ"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã®ä½œæˆ"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "æ–°ã—ã„ユーザーã®ä½œæˆ"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "キューã®ä½œæˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "呼ã³å‡ºã•ã‚ŒãŸã‚­ãƒ¥ãƒ¼ã®ä½œæˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "リクエストã®ä½œæˆ"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr ""
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "テンプレートã®ä½œæˆ"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr ""
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr ""
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "ãƒã‚±ãƒƒãƒˆã®ä½œæˆ"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr ""
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr ""
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr ""
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr ""
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "作æˆã—ã¾ã—ãŸ"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "カスタムフィールド%1を作æˆã—ã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "テンプレート%1を作æˆã—ã¾ã—ãŸ"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "ç¾åœ¨ã®é–¢ä¿‚"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "ç¾åœ¨ã®ãƒ¡ãƒ³ãƒãƒ¼"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "ç¾åœ¨ã®æ¨©åˆ©"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "ç¾åœ¨ã®ã‚¦ã‚©ãƒƒãƒãƒ£ãƒ¼"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "カスタムフィールド"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "カスタムフィールド%1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "カスタムフィールド%1ã¯ãƒãƒªãƒ¥ãƒ¼ãŒã‚ã‚Šã¾ã™"
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "カスタムフィールド%1ã¯ãƒãƒªãƒ¥ãƒ¼ãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "カスタムフィールド%1ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "カスタムフィールドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "カスタムフィールド%2ã®ãŸã‚ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãƒãƒªãƒ¥ãƒ¼%1ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "カスタムフィールドãŒ%1ã‹ã‚‰%2ã«å¤‰æ›´ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "カスタムフィールドãƒãƒªãƒ¥ãƒ¼ã¯å‰Šé™¤ã•ã‚Œã¾ã›ã‚“"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "カスタムフィールドãƒãƒªãƒ¥ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "カスタムフィールドãƒãƒªãƒ¥ãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸ"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr ""
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "日付"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "å二月"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr ""
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr ""
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr ""
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr ""
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr ""
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "代表者ã®æ¨©åˆ©"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr ""
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr ""
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "削除"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "ã“ã®ã‚ªãƒ–ジェクトを削除ã™ã‚‹ã¨æŒ‡ç¤ºã®å®Œå…¨æ€§ãŒããšã•ã‚Œã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "ã“ã®ã‚ªãƒ–ジェクトを削除ã™ã‚‹ã¨æŒ‡ç¤ºã®å®Œå…¨æ€§ãŒããšã•ã‚Œã¾ã™"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "ã“ã®ã‚ªãƒ–ジェクトを削除ã™ã‚‹ã¨æŒ‡ç¤ºã®å®Œå…¨æ€§ãŒå¦¨å®³ã•ã‚Œã¾ã™"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr ""
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "次ã®ã‚‚ã®æ¬¡ç¬¬ã§ã‚ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "従属ãƒã‚±ãƒƒãƒˆ: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "ã«ã‚ˆã‚‹"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "é™é †ã™ã‚‹"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "下ã®å•é¡Œç‚¹ã‚’表ã™"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "記述"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "詳細"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "表ã™"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "モードを表ã™"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "ãƒã‚±ãƒƒãƒˆ#%1を表ã™"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr ""
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã‚’æ›´æ–°ã—ãªã„ã§ãã ã•ã„"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "ダウンロード"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "期é™åˆ‡ã‚Œ"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "期é™ãŒåˆ‡ã‚Œã‚‹æ—¥'%1'ã¯è§£æžã•ã‚Œã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "ERROR: ã¯ãƒã‚±ãƒƒãƒˆ '%1': %2.\\nをロードã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "編集"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "%1ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’編集ã™ã‚‹"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "関係を編集ã™ã‚‹"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "スクリプトを編集ã™ã‚‹"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "システムテンプレートを編集ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "%1ã®ãƒ†ãƒ³ãƒ—レートを編集ã™ã‚‹"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "キュー%1ã®è¨­å®šã‚’編集ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "ユーザー%1ã®è¨­å®šã‚’編集ã™ã‚‹"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "カスタムフィールド%1を編集ã™ã‚‹"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "グループ%1ã®ä¼šå“¡ã‚’編集ã™ã‚‹"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "個人グループ%1ã®ä¼šå“¡ã‚’編集ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "テンプレート%1を編集ã™ã‚‹"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "ベースもã—ãã¯ã‚¿ãƒ¼ã‚²ãƒƒãƒˆã‚’特定ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Eメール"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "ãŠä½¿ã„ã®Eメールアドレス"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Eメールアドレス"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Eメールエンコーディング"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "有効ã«ãªã‚Šã¾ã—ãŸï¼ˆã‚‚ã†ä¸€åº¦ã“ã®ãƒœãƒƒã‚¯ã‚¹ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã¨ã“ã®ã‚­ãƒ¥ãƒ¼ã¯æœ‰åŠ¹ã§ãªããªã‚Šã¾ã™ï¼‰"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "有効ãªã‚­ãƒ¥ãƒ¼"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "有効ãªã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹%1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr ""
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr ""
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "ãƒã‚±ãƒƒãƒˆã‚’リンクã™ã‚‹ãƒã‚±ãƒƒãƒˆã¾ãŸã¯URLsを入力ã—ã¦ãã ã•ã„。入力ã™ã‚‹é …ç›®ãŒã„ãã¤ã‹ã‚ã‚‹å ´åˆã«ã¯ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã£ã¦ãã ã•ã„。"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "エラー"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "パラメーターã®ã‚¨ãƒ©ãƒ¼Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "パラメーターã®ã‚¨ãƒ©ãƒ¼Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "パラメーターã®ã‚¨ãƒ©ãƒ¼Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "パラメーターã®ã‚¨ãƒ©ãƒ¼Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr ""
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "外部ã®èªè¨¼ID"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "外部ã®ã‚³ãƒ³ã‚¿ã‚¯ãƒˆæƒ…å ±ID"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "ãã®ä»–ã®æƒ…å ±"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "'特権ã®ã‚ã‚‹'ユーザーã®æ“¬ä¼¼ã‚°ãƒ«ãƒ¼ãƒ—ã®æ¤œç´¢ãŒå¤±æ•—ã—ã¾ã—ãŸ"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "'特権ã®ãªã„'ユーザーã®æ“¬ä¼¼ã‚°ãƒ«ãƒ¼ãƒ—ã®æ¤œç´¢ãŒå¤±æ•—ã—ã¾ã—ãŸ"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "二月"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "終了"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "最終優先順ä½"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr ""
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "æ–°ã—ã„/é–‹ããƒã‚±ãƒƒãƒˆã‚’見ã¤ã‘ã‚‹"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "人々を見ã¤ã‘ã‚‹"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "最åˆã®"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "最åˆã®ãƒšãƒ¼ã‚¸"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "ã°ã‹ï¼"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "変更を強制ã—ã¾ã™"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr ""
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "フリーフォームコンタクト情報"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "金曜日"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "フルヘッダー"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "pgp sig\\nã‹ã‚‰ç¾åœ¨ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’å¾—ã‚‹"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr ""
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "グローãƒãƒ«"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "グローãƒãƒ«ã‚¹ã‚¯ãƒªãƒ—ト"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr ""
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "è¡Œãï¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "%1\\nã‹ã‚‰ã®è‰¯ã„pgp sig"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "ページã¸è¡Œã"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "ãƒã‚±ãƒƒãƒˆã«è¡Œã"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "グループ%1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "グループ権利"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "グループã«ã¯ã™ã§ã«ãƒ¡ãƒ³ãƒãƒ¼ãŒã„ã¾ã™"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "グループãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "グループãŒç‰¹å®šã§ãã¾ã›ã‚“。\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "グループ"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "グループã¯å½¼ã‚‰ã®ãƒ¡ãƒ³ãƒãƒ¼ã«ã¯ãªã‚Œã¾ã›ã‚“"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "ã“ã‚“ã«ã¡ã¯ï¼"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "ã“ã‚“ã«ã¡ã¯ã€%1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "ヒストリー"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "自宅ã®é›»è©±"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "ホームページ"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "ç§ã¯[quant,_1,concrete mixer]ãŒã‚ã‚Šã¾ã™ã€‚"
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "ID"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "身分証明書"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr ""
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr ""
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "上ã®ä½•ã‹ã‚’アップデートã—ãŸãªã‚‰ã€æ¬¡ã®ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr ""
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "リストã®ç„¡åŠ¹ãªã‚­ãƒ¥ãƒ¼ã‚’å«ã‚€"
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "検索ã®ç„¡åŠ¹ãªãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’å«ã‚€"
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "最åˆã®å„ªå…ˆæ¨©"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "入力エラー"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr ""
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "無効ãªã‚°ãƒ«ãƒ¼ãƒ—タイプã§ã™"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr ""
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "無効ãªã‚ªãƒ¼ãƒŠãƒ¼ã§ã™ã€‚ '誰ã§ã‚‚ãªã„'ã«åˆæœŸè¨­å®šã—ã¾ã™."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "無効ãªã‚­ãƒ¥ãƒ¼ã§ã™"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "無効ãªæ¨©åˆ©ã§ã™"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "%1ã«ã¯ç„¡åŠ¹ãªãƒãƒªãƒ¥ãƒ¼ã§ã™"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "カスタムフィールドã«ã¯ç„¡åŠ¹ãªãƒãƒªãƒ¥ãƒ¼ã§ã™"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "ステータスã«ã¯ç„¡åŠ¹ãªãƒãƒªãƒ¥ãƒ¼ã§ã™"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr ""
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "一月"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr ""
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "七月"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "大ãã„"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "六月"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "キーワード"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "é•·ã„"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "最後ã®"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "最後ã®ã‚³ãƒ³ã‚¿ã‚¯ãƒˆ"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "最後ã«ã‚³ãƒ³ã‚¿ã‚¯ãƒˆã—ãŸ"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "最後ã«ã‚¢ãƒƒãƒ—デートã—ãŸ"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "残ã£ãŸ"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’RTã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æ¨©åˆ©ã‚’èªã‚ã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "オーナーを%1 %2ã«åˆ¶é™ã—ã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "キューを%1 %2ã«åˆ¶é™ã—ã¾ã™"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "リンクã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã¾ã™"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "リンクãŒä½œæˆã•ã‚Œã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "リンクãŒä½œæˆã•ã‚Œã¾ã—ãŸï¼ˆ%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "リンクãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸï¼ˆ%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "リンクãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "リンクãƒã‚±ãƒƒãƒˆ#%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "リンク"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "場所"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "ログディレクトリー%1ãŒè¦‹ã¤ã‹ã‚‰ãªã„ã€ã¾ãŸã¯æ›¸ã出ã›ã¾ã›ã‚“。\\n RTãŒå‹•ãã¾ã›ã‚“"
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "%1ã¨ã—ã¦ã‚µã‚¤ãƒ³ã™ã‚‹"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "ログイン"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "ログアウト"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "オーナーを決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "ステータスを決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "期é™æœŸæ—¥ã‚’決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "解æžæœŸæ—¥ã‚’決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "開始ã—ãŸæ—¥ã‚’決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "開始日を決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "ã„ã‚ã‚ŒãŸæ—¥ã‚’決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "優先順ä½ã‚’決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "キューを決ã‚ã‚‹"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "サブジェクトを決ã‚ã‚‹"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr ""
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr ""
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr ""
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr ""
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "三月"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "五月"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "メンãƒãƒ¼ãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "メンãƒãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "メンãƒãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "ã®ãƒ¡ãƒ³ãƒãƒ¼"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "メンãƒãƒ¼"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "çµåˆãŒæˆåŠŸã—ã¾ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "çµåˆãŒå¤±æ•—ã—ã¾ã—ãŸã€‚有効ãªIDãŒè¨­å®šã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "ã«çµåˆ"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "æºå¸¯"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "æºå¸¯é›»è©±"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "カスタムフィールド%1を修正ã™ã‚‹"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr ""
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "#%1ã®æœŸæ—¥ã‚’修正ã™ã‚‹"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "ãƒã‚±ãƒƒãƒˆ#%1ã®æœŸæ—¥ã‚’修正ã™ã‚‹"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "グローãƒãƒ«ã‚°ãƒ«ãƒ¼ãƒ—ã®æ¨©åˆ©ã‚’修正ã™ã‚‹"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "グローãƒãƒ«ã‚°ãƒ«ãƒ¼ãƒ—ã®æ¨©åˆ©ã‚’修正ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "グローãƒãƒ«ã‚¹ã‚¯ãƒªãƒ—トを修正ã™ã‚‹"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr ""
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "グローãƒãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æ¨©åˆ©ã‚’修正ã™ã‚‹"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "%1ã®ã‚°ãƒ«ãƒ¼ãƒ—権利を修正ã™ã‚‹"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "キュー%1ã®ã‚°ãƒ«ãƒ¼ãƒ—権利を修正ã™ã‚‹"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr ""
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "キュー%1ã«é–¢ä¿‚ã®ã‚る人々を修正ã™ã‚‹"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "ãƒã‚±ãƒƒãƒˆ#%1ã«é–¢ä¿‚ã®ã‚る人々を修正ã™ã‚‹"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "キュー%1ã®ã‚¹ã‚¯ãƒªãƒ—トを修正ã™ã‚‹"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr ""
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "テンプレート%1を修正ã™ã‚‹"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "グループ%1を修正ã™ã‚‹"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "ユーザー%1を修正ã™ã‚‹"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "ãƒã‚±ãƒƒãƒˆ# %1を修正ã™ã‚‹"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "ãƒã‚±ãƒƒãƒˆ#%1を修正ã™ã‚‹"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr ""
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "グループ%1ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼æ¨©åˆ©ã‚’修正ã™ã‚‹"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "キュー%1ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼æ¨©åˆ©ã‚’修正ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "キュー'%1'ã®ã‚¦ã‚©ãƒƒãƒãƒ£ãƒ¼ã‚’修正ã™ã‚‹"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr ""
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr ""
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "月曜日"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "ã•ã‚‰ã«%1ã«ã¤ã„ã¦"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr ""
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr ""
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "多ãã®"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "'åå‰'ã®å±žæ€§ã‚’特定ã—ã¦ãã ã•ã„"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr ""
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "åå‰"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "ç¾åœ¨ãŠä½¿ã„ã®åå‰"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr ""
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "æ–°ã—ã„"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "æ–°ã—ã„関係"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "æ–°ã—ã„パスワード"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr ""
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "æ–°ã—ã„パスワード"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "æ–°ã—ã„パスワード情報ãŒé€ã‚‰ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "æ–°ã—ã„リクエスト"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "æ–°ã—ã„権利"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "æ–°ã—ã„検索"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr ""
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr ""
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "æ–°ã—ã„ユーザーãŒå‘¼ã°ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "æ–°ã—ã„ウォッãƒãƒ£ãƒ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "æ–°ã—ã„ウインドウ設定"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "次ã¸"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "次ã®ãƒšãƒ¼ã‚¸"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "ニックãƒãƒ¼ãƒ "
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "カスタムフィールドãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "グループãŒå®šç¾©ã•ã‚Œã¾ã›ã‚“"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "キューãŒå®šç¾©ã•ã‚Œã¾ã›ã‚“"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "RTユーザーãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。RT管ç†è€…ã«ç›¸è«‡ã—ã¦ãã ã•ã„。\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "テンプレートãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "ãƒã‚±ãƒƒãƒˆãŒç‰¹å®šã§ãã¾ã›ã‚“。ãƒã‚±ãƒƒãƒˆã‚’終了ã—ã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "ãƒã‚±ãƒƒãƒˆãŒç‰¹å®šã§ãã¾ã›ã‚“。ãƒã‚±ãƒƒãƒˆã®ä¿®æ­£ã‚’終了ã—ã¾ã™\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr ""
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "コマンドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«é–¢ã—ã¦ã®ã‚³ãƒ¡ãƒ³ãƒˆã¯å…¥åŠ›ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "通信文書ã®æ·»ä»˜ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "%1記述ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "グループãŒç‰¹å®šã§ãã¾ã›ã‚“"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "パスワードãŒè¨­å®šã•ã‚Œã¾ã›ã‚“"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "キューを作æˆã™ã‚‹è¨±å¯ãŒã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "ユーザーを作æˆã™ã‚‹è¨±å¯ãŒã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "ãã®ãƒã‚±ãƒƒãƒˆã‚’表示ã™ã‚‹è¨±å¯ãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "アップデートãƒã‚±ãƒƒãƒˆã‚’見る許å¯ãŒã•ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "責任者ãŒç‰¹å®šã§ãã¾ã›ã‚“"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "責任者ãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "検索基準ã«ã‚ã£ãŸã‚­ãƒ¥ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr ""
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "権利ãŒè¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "æ“作ã®ãŸã‚ã®æ¤œç´¢ãŒã§ãã¾ã›ã‚“"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "ãƒã‚±ãƒƒãƒˆIDãŒç‰¹å®šã§ãã¾ã›ã‚“"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "トランザクションタイプãŒç‰¹å®šã§ãã¾ã›ã‚“"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "検索基準ã«ã‚ã£ãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "有効ãªRTユーザーãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。RT cvcãƒãƒ³ãƒ‰ãƒ©ãŒåˆ†é›¢ã—ã¦ã„ã¾ã™ã€‚RT管ç†è€…ã«ç›¸è«‡ã—ã¦ãã ã•ã„。\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr ""
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr ""
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr ""
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "ログインã§ãã¾ã›ã‚“"
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "セットã§ãã¾ã›ã‚“"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "ã¾ã å®Ÿè¡Œã§ãã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "ã¾ã å®Ÿè¡Œã§ãã¾ã›ã‚“。。。"
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "ãŠçŸ¥ã‚‰ã›ã‚’é€ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr ""
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr ""
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr ""
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr ""
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr ""
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr ""
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr ""
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr ""
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr ""
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr ""
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "å一月"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr ""
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr ""
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "å月"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "ã«"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr ""
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr ""
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr ""
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr ""
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr ""
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr ""
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr ""
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr ""
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "é–‹ã"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "ãれを開ã"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "リクエストを開ã"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚’(リストã‹ã‚‰ï¼‰æ–°ã—ã„ウインドウã‹ã‚‰é–‹ã"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚’(リストã‹ã‚‰ï¼‰ã»ã‹ã®ã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ã‹ã‚‰é–‹ã"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "整列ã¨ä¸¦ã³æ›¿ãˆ"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "組織"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "時間切れã§ã™ã€å„ªå…ˆé †ä½ãŒã†ã¤ã‚Šã¾ã—ãŸ"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr ""
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "オーナー"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "オーナーã¯å¼·åˆ¶çš„ã«%1ã‹ã‚‰%2を変更ã—ã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "オーナーã¯"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "ãƒã‚±ãƒƒãƒˆãƒ™ãƒ«"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "ãƒã‚±ãƒƒãƒˆãƒ™ãƒ«é›»è©±"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "両親"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "パスワード"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "パスワードã®ãŠçŸ¥ã‚‰ã›"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "パスワードãŒçŸ­ã™ãŽã¾ã™"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "パスワード: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr ""
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "人々"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "許å¯ãŒä¸‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr ""
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "個人グループ"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "個人グループ:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "電話番å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "代替物"
-
-#: NOT FOUND IN SOURCE
-msgid "Pref"
-msgstr "ãŠæ°—ã«å…¥ã‚Š"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "ãŠæ°—ã«å…¥ã‚Š"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Prepare Stubbed"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "å‰ã®"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "å‰ã®ãƒšãƒ¼ã‚¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "優先権"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr ""
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "優先権"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "優先順ä½ã¯æ¬¡ã®ã‚ˆã†ã«å§‹ã¾ã‚Šã¾ã™"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "特権ステータス: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "特権ã®ã‚るユーザー"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr ""
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "キュー"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "キュー'%1'ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ\\n"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "キューã®åå‰"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "キュースクリプト"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "キューã¯ã™ã§ã«å­˜åœ¨ã—ã¦ã„ã¾ã™"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "キューã®ä½œæˆãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "キューã®ãƒ­ãƒ¼ãƒ‰ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "キューãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "キューãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "キュー"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr ""
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "%2ã®RT %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "<a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>ã‹ã‚‰ã®RT%1。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RTèªè¨¼ã‚¨ãƒ©ãƒ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RTãƒã‚¦ãƒ³ã‚¹ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT設定エラー"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RTé‡å¤§ãªã‚¨ãƒ©ãƒ¼ã€‚メッセージãŒè¨˜éŒ²ã•ã‚Œã¾ã›ã‚“"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RTエラー"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RTå—信メール(%1)自身ã‹ã‚‰ã®ãƒ¡ãƒ¼ãƒ« "
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RTセルフサービス/クローズã•ã‚ŒãŸãƒã‚±ãƒƒãƒˆ"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RTã§ã¯ã€ãŸã ã„ã¾ãŠä½¿ã„ã®æ–¹ã®èªè¨¼ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RTã¯å¤–部ã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ãƒ«ãƒƒã‚¯ã‚¢ãƒƒãƒ—を使ã£ã¦ãƒªã‚¯ã‚¨ã‚¹ãƒˆã™ã‚‹äººã‚’見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RTã¯ã‚­ãƒ¥ãƒ¼: %1を見ã¤ã‘ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RTã¯ã“ã®PGPサインを有効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚\\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RTã¯ã‚ãªãŸã®ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’処ç†ã—ã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RTã¯&コピー; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;。ã“ã‚Œã¯<a href=\"http://www.gnu.org/copyleft/gpl.html\">GNUジェãƒãƒ©ãƒ«ãƒ‘ブリックライセンスã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³2ã§é…ä¿¡ã•ã‚Œã¦ã„ã¾ã™ã€‚</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RTã«ã‚ˆã‚‹ã¨ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ãƒã‚¦ãƒ³ã‚¹ã™ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RTã¯ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒã¾ã‚‹ã§ã‚µã‚¤ãƒ³ã•ã‚Œã¦ã„ãªã„よã†ã«å‡¦ç†ã—ã¾ã™ã€‚\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RTã®Eメールコマンドモードã§ã¯PGPèªè¨¼ãŒå¿…è¦ã«ãªã‚Šã¾ã™ã€‚è²´æ–¹ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ã‚µã‚¤ãƒ³ã—ãªã‹ã£ãŸã€ã‚‚ã—ãã¯ã¯ã‚µã‚¤ãƒ³ãŒæœ‰åŠ¹ã§ã‚ã‚Šã¾ã›ã‚“"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "本å"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "本å"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "次ã®ã‚‚ã®ã«ã‚ˆã£ã¦å‚ç…§ã—ãŸ"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "å‚ç…§ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "絞り込む"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "絞込ã¿æ¤œç´¢"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã‚’%1分ãŠãã«æ›´æ–°ã—ã¦ãã ã•ã„"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "管ç†Ccを削除ã™ã‚‹"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Ccを削除ã™ã‚‹"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "リクエストã™ã‚‹äººã‚’削除ã™ã‚‹"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "返信"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr ""
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "リクエストã™ã‚‹äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "リクエストã™ã‚‹äººã®Eメールアドレス"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "リクエストã™ã‚‹äºº"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "リクエストã¯æ¬¡ã®æ—¥ã¾ã§ã«è¡Œã‚ã‚Œãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "リセット"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "ä½æ‰€"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "分解ã™ã‚‹"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr ""
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "分解ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "リクエストã™ã‚‹äººã«è¿”ç­”ã™ã‚‹"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "çµæžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "ページã”ã¨ã®çµæžœ"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "パスワードã®å†å…¥åŠ›"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "%2 %3ã®æ¨©åˆ©%1ãŒé ˜åŸŸ%4 %5\\nã§è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "権利ãŒå§”託ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "権利ãŒè¨±å¯ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "権利ãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "権利を無効ã«ã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "権利ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "権利ãŒãƒ­ãƒ¼ãƒ‰ã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "権利ãŒç„¡åŠ¹ã«ãªã‚Šã¾ã—ãŸ"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "権利"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "役割"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "土曜日"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "変更をä¿å­˜ã™ã‚‹"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "変更をä¿å­˜ã™ã‚‹"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "スクリプトãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "スクリプト"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "%1\\nã®ã‚¹ã‚¯ãƒªãƒ—ト"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr ""
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "検索"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "検索基準"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr ""
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "グループã®é¸æŠž"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "キューã®é¸æŠž"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "ユーザーã®é¸æŠž"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr ""
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "セルフサービス"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr ""
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr ""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr ""
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr ""
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr ""
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr ""
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr ""
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "ä¹æœˆ"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "çµæžœã‚’見る"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr ""
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "基本を見る"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr ""
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "詳細を見る"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr ""
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "サイン"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "ã²ã¨ã¤ã®"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "並ã¹æ›¿ãˆã®ã‚­ãƒ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "次ã®é …ç›®ã”ã¨ã®ä¸¦ã³æ›¿ãˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "並ã³é †"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "åœæ­¢ã—ã¦ã„ã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "開始ページ"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "開始ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "開始日'%1'ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "開始ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "次ã®æ—¥æ™‚ã¾ã§ã«é–‹å§‹ã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "開始日'%1'を解æžã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "状態"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "ステータス"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "ステータスãŒ%1ã‹ã‚‰%2ã«å¤‰æ›´ã•ã‚Œã¾ã—ãŸ"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "盗用ã™ã‚‹"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "%1ã‹ã‚‰ç›—用ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "%1ã‹ã‚‰ç›—用ã—㟠"
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "サブジェクト"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr ""
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "æ出"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr ""
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "日曜日"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr ""
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "システムエラー"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "システムエラー。権利ãŒå§”ä»»ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "システムエラー。権利ãŒèªå¯ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "システムグループ"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr ""
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "テスト_ストリング"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "ã¨ã‚‹"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "ã¨ã‚‰ã‚ŒãŸ"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "テンプレート"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr ""
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr ""
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "テンプレートãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "テンプレートãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "テンプレートãŒè§£æžã•ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "テンプレート"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "%1\\nã®ãƒ†ãƒ³ãƒ—レート"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "ãã‚Œã¯ã“ã®ã‚«ã‚¹ã‚¿ãƒ ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã®ãƒãƒªãƒ¥ãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "ãã‚Œã¯åŒã˜ãƒãƒªãƒ¥ãƒ¼ã§ã™"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "ãã®è²¬ä»»è€…ã¯ã™ã§ã«ã“ã®ã‚­ãƒ¥ãƒ¼ã®%1ã§ã™"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "ãã®è²¬ä»»è€…ã¯ã™ã§ã«ã“ã®ãƒã‚±ãƒƒãƒˆã®%1ã§ã™"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "ãã®è²¬ä»»è€…ã¯ã“ã®ã‚­ãƒ¥ãƒ¼ã®%1ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "ãã®è²¬ä»»è€…ã¯ã“ã®ãƒã‚±ãƒƒãƒˆã®%1ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "ãã®ã‚­ãƒ¥ãƒ¼ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "ãã®ãƒã‚±ãƒƒãƒˆã¯å¾“属物をã™ã§ã«åˆ†è§£ã—ã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã™ã§ã«æ¨©åˆ©ãŒã‚ã‚Šã¾ã™"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã™ã§ã«ãƒã‚±ãƒƒãƒˆã‚’所有ã—ã¦ã„ã¾ã™"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯å­˜åœ¨ã—ã¾ã›ã‚“"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã™ã§ã«ç‰¹æ¨©ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã™"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã¯ã™ã§ã«ç‰¹æ¨©ãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ä»Šç‰¹æ¨©ã‚’与ãˆã‚‰ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ä»Šç‰¹æ¨©ã‚’失ã„ã¾ã—ãŸ"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã“ã®ã‚­ãƒ¥ãƒ¼ã§ã¯ãƒã‚±ãƒƒãƒˆã‚’所有ã—ã¦ã„ãªã„å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "ãã‚Œã¯æ•°å­—ã®IDã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "基本"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "コメントã¯è¨˜éŒ²ã•ã‚Œã¾ã—ãŸ"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "次ã®ã‚³ãƒžãƒ³ãƒ‰ã¯å‡¦ç†ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸ:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr ""
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "ãれらã®ã‚³ãƒ¡ãƒ³ãƒˆã¯å®Ÿéš›ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã¯è¦‹ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "ã“ã®ãƒã‚±ãƒƒãƒˆ%1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "ã“ã®ãƒˆãƒ©ãƒ³ã‚¶ã‚¯ã‚·ãƒ§ãƒ³ã«ã¯ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®25ã®ã‚‚ã£ã¨ã‚‚高ã„優先ãƒã‚±ãƒƒãƒˆ"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "木曜日"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "ãƒã‚±ãƒƒãƒˆ# %1 %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "ãƒã‚±ãƒƒãƒˆã€€#%1 大ãã„アップデート: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr ""
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "ãƒã‚±ãƒƒãƒˆ %1ãŒã‚­ãƒ¥ãƒ¼ '%2'ã§ä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "ãƒã‚±ãƒƒãƒˆ%1ãŒãƒ­ãƒ¼ãƒ‰ã•ã‚Œã¾ã—ãŸ\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "ãƒã‚±ãƒƒãƒˆã€€%1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "ãƒã‚±ãƒƒãƒˆãƒ’ストリー # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "ãƒã‚±ãƒƒãƒˆID"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "ãƒã‚±ãƒƒãƒˆæ·»ä»˜"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚³ãƒ³ãƒ†ãƒ³ãƒ„"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚³ãƒ³ãƒ†ãƒ³ãƒ„タイプ"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "ãƒã‚±ãƒƒãƒˆãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "ãƒã‚±ãƒƒãƒˆã®ä½œæˆãŒå¤±æ•—ã—ã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "ãƒã‚±ãƒƒãƒˆãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸ"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚¦ã‚©ãƒƒãƒãƒ£ãƒ¼"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "%1ã‹ã‚‰ã®ãƒã‚±ãƒƒãƒˆ"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "時間ãŒæ®‹ã£ã¦ã„ã¾ã™"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "使ã£ãŸæ™‚é–“"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "残ã£ã¦ã„る時間"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "表示ã™ã‚‹æ™‚é–“"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "使ã£ãŸæ™‚é–“"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "ã“ã®ã‚³ãƒŸãƒƒãƒˆã®ãƒ‡ã‚£ãƒ•ã‚’ã¤ãã‚‹ãŸã‚ã«:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "ã“ã®ã‚³ãƒŸãƒƒãƒˆã®ãƒ‡ã‚£ãƒ•ã‚’ã¤ãã‚‹ãŸã‚ã«:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "言ã£ãŸ"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "トランザクション%1ãŒæ¶ˆåŽ»ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "トランザクションãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "トランザクションã¯å¤‰æ›´ã•ã‚Œã‚‹ã“ã¨ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "権利: %1を削除ã—ã¦ã„ã¾ã™"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "ç«æ›œæ—¥"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "タイプ"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "å°Žå…¥ã•ã‚Œã¦ã„ãªã„"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unixログイン"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Unixユーザーãƒãƒ¼ãƒ "
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "ä¸æ˜Žãªã‚³ãƒ³ãƒ†ãƒ³ãƒ„エンコーディング%1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "制é™ã•ã‚Œã¦ã„ãªã„"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr ""
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "ã¨ã‚‰ã‚Œã¦ã„ãªã„"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "アップデート"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "アップデートID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "アップデートタイプ"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "ã™ã¹ã¦ã®ãƒã‚±ãƒƒãƒˆã‚’一度ã«ã‚¢ãƒƒãƒ—デートã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "アップデートEメール"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "アップデートãƒãƒ¼ãƒ "
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "アップデートã¯è¨˜éŒ²ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸ"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "é¸æŠžã•ã‚ŒãŸãƒã‚±ãƒƒãƒˆã‚’アップデートã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "サインをアップデートã™ã‚‹"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "ãƒã‚±ãƒƒãƒˆã‚’アップデートã™ã‚‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "アップデートãƒã‚±ãƒƒãƒˆ # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "アップデートãƒã‚±ãƒƒãƒˆ #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr ""
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "アップデートタイプã¯é€šçŸ¥ã§ã‚‚コメントã§ã‚‚ã‚ã‚Šã¾ã›ã‚“"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "アップデートã—ã¾ã—ãŸ"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "ユーザー%1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "ユーザー%1パスワード: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "ユーザー'%1'ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "ユーザー'%1'ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "ユーザーID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "ユーザーID"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "ユーザー権利"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "ユーザーを作æˆã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸ: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "ユーザーãŒä½œæˆã•ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "ユーザーãŒã‚°ãƒ«ãƒ¼ãƒ—を決定ã—ã¾ã—ãŸ"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "ユーザーã«é€šå‘Šã•ã‚Œã¾ã—ãŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "ユーザービュー"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "ユーザーãƒãƒ¼ãƒ "
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "ユーザー"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "ユーザーãŒæ¤œç´¢åŸºæº–ã«ã‚ã£ã¦ã„ã¾ã™"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "キューã®ãƒãƒªãƒ¥ãƒ¼"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "ãƒãƒªãƒ¥ãƒ¼"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "ウォッãƒãƒ£ãƒ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "ウェブエンコーディング"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "水曜日"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr ""
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr ""
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr ""
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr ""
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr ""
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr ""
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr ""
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr ""
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr ""
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr ""
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "仕事"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "仕事先ã®é›»è©±"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Worked"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "ã‚ãªãŸã¯ã™ã§ã«ã“ã®ãƒã‚±ãƒƒãƒˆã‚’所有ã—ã¦ã„ã¾ã™"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "ã‚ãªãŸã¯èªè¨¼ã•ã‚ŒãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "ã‚ãªãŸã¯æ‰€æœ‰ã€ã¾ãŸã¯æ‰€æœ‰ã•ã‚Œã¦ã„ãªã„ãƒã‚±ãƒƒãƒˆã®ã¿ã‚’æ­¢ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "ã‚ãªãŸã¯ãã®ãƒã‚±ãƒƒãƒˆã‚’見る許å¯ãŒã‚ã‚Šã¾ã›ã‚“。\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "ã‚ãªãŸã¯%2ã§ãƒã‚±ãƒƒãƒˆ%1を見ã¤ã‘ã¾ã—ãŸ"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "ã‚ãªãŸã¯RTã‹ã‚‰ãƒ­ã‚°ã‚¢ã‚¦ãƒˆã—ãŸã¾ã¾ã§ã™"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "ã‚ãªãŸã¯ã“ã®ã‚­ãƒ¥ãƒ¼ã§ãƒã‚±ãƒƒãƒˆä½œæˆã®è¨±å¯ãŒã‚ã‚Šã¾ã›ã‚“"
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "ã‚ãªãŸã¯ã“ã®ã‚­ãƒ¥ãƒ¼ã§ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®ä½œæˆãŒã§ãã‚‹ã§ã—ょã†"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "ãœã²ã¾ãŸãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "ã‚ãªãŸã®%1ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "ã‚ãªãŸã®RT管ç†è€…ã¯RTを呼ã³å‡ºã™ãƒ¡ãƒ¼ãƒ«aliasesを設定ã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr ""
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr ""
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr ""
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "ã‚ãªãŸã®ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒãƒ¼ãƒ ã¨ãƒ‘スワードãŒé–“é•ã£ã¦ã„ã¾ã™"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "ジップ"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "%1ã¸ã®è¨±å¯"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "å«ã‚€"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "通知ã¯ï¼ˆãŠãらã)é€ä¿¡ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "通知ãŒé€ä¿¡ã•ã‚Œã¾ã—ãŸ"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "æ—¥"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "削除"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "削除ã•ã‚ŒãŸ"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "ã‚ã„ã¾ã›ã‚“"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "å«ã¿ã¾ã›ã‚“"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "ç­‰ã—ã„"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "より大ãã„"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "グループ'%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "時間"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "ID"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "ã§ã™"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "ã§ãªã„"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "より少ãªã„"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "åˆã†"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "最低"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "分"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "修正\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "月"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "æ–°ã—ã„"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr ""
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ãªã—"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ç­‰ã—ããªã„"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "é–‹ã"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "ユーザー '%2' ã®ãƒ‘ーソナルグループ '%1' "
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "キュー %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "æ‹’å¦ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "分解ã•ã‚Œã¾ã—ãŸ"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "秒"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "æ­¢ã¾ã‚Šã¾ã—ãŸ"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "システム %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "システムグループ '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "呼ã³å‡ºã—ã¦ã„るコンãƒãƒ¼ãƒãƒ³ãƒˆãŒãªãœæ¬¡ã®ã‚ˆã†ãªã“ã¨ãŒèµ·ã“ã‚‹ã®ã‹ç‰¹å®šã§ãã¾ã›ã‚“ã§ã—ãŸ"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ãƒã‚±ãƒƒãƒˆã€€#%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "表示ã•ã‚Œãªã„グループ %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "ユーザー %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "週"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "テンプレート %1ã¨"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "å¹´"
-
diff --git a/rt/lib/RT/I18N/nl.po b/rt/lib/RT/I18N/nl.po
deleted file mode 100644
index 91547c8..0000000
--- a/rt/lib/RT/I18N/nl.po
+++ /dev/null
@@ -1,5827 +0,0 @@
-msgid ""
-msgstr ""
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "msgstr "" "
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 toegevoegd"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 geleden"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 veranderd naar %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 verwijderd"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 met sjabloon %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 dit ticket\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Een argument om door te geven aan %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Uitvoer status herzieningen naar STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Specificeer de actie module die u wenst te gebruiken"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Specificeer de conditie module die u wenst te gebruiken"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Specificeer de zoek module die u wenst te gebruiken"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 ScripAction geladen"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 toegevoegd als waarde voor %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 aliassen hebben een TicketId nodig om mee te werken"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1 aliassen hebben een TicketId nodig om mee te werken"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 aliassen hebben een TicketId nodig om mee te werken (van %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 lijkt een lokaal object te zijn maar kan niet gelokaliseerd worden in de database"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 door %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 veranderd van %2 naar %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 kon niet veranderd worden naar %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 kon geen transactie initiëren (%2)"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 kon status niet veranderen naar opgelost. RT's Database zou inconsistent kunnen zijn"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "De %1 hoogste prioriteit tickets die ik bezit..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "De %1 hoogste prioriteit tickets waar ik om verzocht heb..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 is een gereedschap om te reageren op tickets van een extern rooster programma, zoals cron"
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 is niet langer een %2 voor deze rij"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 is niet langer een %2 voor dit ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 is niet langer een waarde voor specifiek veld %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 is niet een geldig Rij id"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 niet afgebeeld"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 objecten"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 rechten"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 gelukt\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 type onbekend voor $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 type onbekend voor %2"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 zal alle leden van een opgelost groep ticket omzetten."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: geen aanhechting gespecificeerd"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1 is een ongeldige waarde voor status"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' onherkende actie. "
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Vink hokje af om te verwijderen)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Markeer hokje om notificaties voor de genoemde ontvangers uit te zetten)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Markeer hokje om notificaties voor de genoemde ontvangers aan te zetten)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Indien leeggelaten, wordt voorzien van %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Geen Waarde)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Geen eigen velden)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Geen Leden)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Geen scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Geen slablonen)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Stuurt een blinde carbon copy van deze herziening naar een comma gescheiden lijst van email adressen. Wie er toekomstige herzieningen zal ontvangen, zal <b>niet</b> veranderen.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr ""
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Stuurt een carbon copy van deze herziening naar een comma gescheiden lijst van email adressen. Wie er toekomstige herzieningen zal ontvangen, zal <b>niet</b> veranderen.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Stuurt een kopie van deze herziening naar een door komma's gescheiden lijst van email-adressen. Deze personen zullen toekomstige herzieningen <b>blijven</b> ontvangen.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(leeg)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(geen onderwerp)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(geen waarde)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(geen waarden)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(slechts één ticket)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(wacht op goedkeuring)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(wacht op andere Collection)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(wacht op andere tickets)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(verplicht)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(zonder titel)"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Nieuw ticket in\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Een leeg sjabloon"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE Verwijderd"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE Geladen"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE niet gevonden"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEs kunnen allen gecreëerd of verwijderd worden."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Afbraak om ongewenste ticket aanpassing te voorkomen.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Over mezelf"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Toegangscontrole"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Actie"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Actie %1 niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Actie uitgevoerd."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Actie voorbereid..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Voeg toe"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Voeg AdminCc toe"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Voeg Cc toe"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Voeg Meer Bestanden Toe"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Voeg Verzoeker Toe"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "Voeg een Scrip toe aan deze rij"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Voeg een Scrip toe dat voor alle rijen zal gelden"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Voeg commentaar of reacties toe aan geselecteerde tickets"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Voeg leden toe"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Voeg nieuwe toeschouwers toe"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "VoegVolgendeStaatToe"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Hoofd toegevoegd als %1 voor deze rij"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Hoofd toegevoegd als %1 voor dit ticket"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adres1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adres2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Beheerder Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr ""
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr ""
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Beheerder rijen"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Beheerdergebruikers"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Beheerder/Globale configuratie"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Beheerder/Groepen"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Beheerder/Rij/Basis"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "BeheerderCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "BeheerderCommentaar"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "BeheerderCorrespondentie"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "BeheerderSpecifiekVeld"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "BeheerderSpecifiekeVelden"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "BeheerderGroep"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "BeheerderGroepLidmaatschap"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "BeheerderBezitPersoonlijkeGroepen"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "BeheerderRij"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "BeheerderGebruikers"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administratieve Cc"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Geavanceerd"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Uitgebreid Zoeken"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Nadat"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Leeftijd"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Alle Gegeven Goedkeuringen"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Alle Rijen"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Stuurt altijd een bericht naar de verzoekers ongeacht de verzender van het bericht"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Goedkeuring"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Goedkeuring #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Goedkeuring #%1: Notities niet bewaard vanwege een systeem fout"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Goedkeuring #%1: Notities bewaard"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Goedkeuring Details"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Goedkeuring diagram"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Goedkeuring"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Notities van de goedkeurer: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Ggk."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "april"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Oplopend"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "WijsSpecifiekeVeldenToe"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Aanhechten"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Hecht bestand aan"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Aangehecht bestand"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Aanhechting '%1' kon niet geladen worden"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Aanhechting gecreëerd"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Aanhechting bestandsnaam"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Aanhechtingen"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Attribuut Verwijderd"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "aug."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "augustus"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "AuthenticatieSysteem"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Automatisch-antwoord"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automatisch-antwoord aan Verzoekers"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "Automatisch-antwoordAanVerzoekers"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "Beschikbare Kolommen"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Ongeldige PGP Signature: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Ongeldig aanhechtings id. Kon aanhechting '%1' niet vinden\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Ongeldige data in %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Ongeldig transactienummer voor aanhechting. %1 zou %2 moeten zijn\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Basis"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Zorg ervoor dat u uw veranderingen bewaard"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Voorheen"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Begin Goedkeuring"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Blanco"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URL voor deze zoekopdracht, geschikt als bookmark"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Korte koppen"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Bulk ticketherziening"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Kan systeemgebruikers niet wijzigen"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Kan dit hoofd deze rij zien"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Kan geen specifiek veld toevoegen zonder een naam"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Kan geen bewaarde zoekopdracht vinden om mee te werken"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Kan een ticket niet koppelen aan zichzelf"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Kan niet samenvoegen met een reeds samengevoegd ticket. U zou deze boodschap nooit mogen krijgen"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Kan deze zoekopdracht niet opslaan"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Kan niet zowel basis als doel specificeren"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Kan gebruiker %1 niet aanmaken"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Wijzig wachtwoord"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Alle Markeren"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Vink hokje af om te verwijderen"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Vink hokje af om recht te verwijderen"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Kinderen"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Stad"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Alle Wissen"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Gesloten"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Gesloten verzoeken"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Commando niet begrepen!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Commentaar"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Commentaar Adres"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Commentaar niet bewaard"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Commentaar op tickets"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "CommentaarOpTicket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Commentaar"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Commentaar (Wordt niet verstuurd aan verzoekers)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Commentaar (Wordt niet verstuurd aan verzoekers)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Commentaar over %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Commentaar over deze gebruiker"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Commentaar toegevoegd"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Compilatie Restricties"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Voorwaarde"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Voorwaarde komt overeen..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Voorwaarde niet gevonden"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Configuratie"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Bevestig"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "ContactInfoSysteem"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Contact datum '%1' kon niet ontleed worden"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Inhoud"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Correspondentie"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Correspondentieadres"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Correspondentie toegevoegd"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Correspondentie niet bewaard"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Kon nieuw specifiek veld niet toevoegen voor dit ticket. "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Kon nieuw specifiek veld niet toevoegen voor dit ticket. %1"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Kon eigenaar niet wijzigen. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Kon SpecifiekVeld niet creëren"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Kon groep niet creëren"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Kon sjabloon niet creëren: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Kon ticket niet creëren. Rij niet ingesteld"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Kon gebruiker niet creëren"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "Kon toeschouwer niet creëren voor verzoeker"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Kon geen ticket vinden met id %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Kon groep %1 niet vinden. "
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Kon deze gebruiker niet vinden of creëren"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Kon dat hoofd niet vinden"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Kon gebruiker %1 niet vinden."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Kon SpecifiekVeld %1 niet laden"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Kon groep niet laden"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Kon dat hoofd geen %1 maken voor deze rij"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Kon dat hoofd geen %1 maken voor dit ticket"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Kon dat hoofd niet verwijderen als %1 voor deze rij"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Kon dat hoofd niet verwijderen als %1 voor dit ticket"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Kan gebruikersinformatie niet toewijzen"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Kon lid niet toevoegen aan groep"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Kon geen transactie creëren: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Kon niet bepalen welke actie te ondernemen aan de hand van gpg's antwoord\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Kon groep niet vinden\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Kon rij niet vinden"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Kon dat hoofd niet vinden"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Kon die waarde niet vinden"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Kon die toeschouwer niet vinden"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Kon gebruiker niet vinden\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Kon %1 niet laden uit de gebruikersdatabase.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "Kon KeywordSelects niet laden."
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Kon RT configuratie bestand niet laden '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Kon Scrips niet laden"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Kon groep %1 niet laden"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Kon link niet laden"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Kon object %1 niet laden"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Kon rij niet laden"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Kon rij %1 niet laden "
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Kon scrip niet laden"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Kon sjabloon niet laden"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Kon die gebruiker (%1) niet laden"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Kon ticket '%1' niet laden"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Land"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Creëer"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Creëer Tickets"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Creëer een SpecifiekVeld"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Creëer een niuew Specifiek Veld"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "Creëer een nieuw globaal Scrip"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Creëer een nieuwe groep"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Creëer een nieuwe persoonlijke groep"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Creëer een nieuwe rij"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Creëer een nieuw scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Creëer een nieuw template"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Creëer een nieuw ticket"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Creëer een nieuwe gebruiker"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Creëer een rij"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Creëer een rij genaamd"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Creëer een verzoek"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Creëer een scrip voor rij %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Creëer een sjabloon"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Maak een ticket aan"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Creatie mislukt: %1 / %2 / %3 "
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Creëer nieuwe tickets gebaseerd op het sjabloon van dit scrip"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Creëer ticket"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Creëer tickets in deze rij"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Creëer, verwijder en wijzig specifieke velden"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Creëer, verwijder en wijzig rijen"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Creëer, verwijder en wijzig de leden van persoonlijke groepen"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Creëer, verwijder en wijzig gebruikers"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CreëerTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Gecreëerd"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "SpecifiekVeld %1 gecreëerd"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Sjabloon %1 Gecreëerd"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Creator"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Huidige Relaties"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Huidige Scrips"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Huidige leden"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Huidige rechten"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Huidige zoekcriteria"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Huidige toeschouwers"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Specifieke Velden"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Specifieke Velden voor %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Specifieke actie opruim code"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Specifieke actie voorbereidings code"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Specifieke voorwaarde"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Specifiek veld %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "Specifiek Veld %1 is niet van toepassing op dit object"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Specifiek veld %1 heeft een waarde."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Specifiek veld %1 heeft geen waarde."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Specifiek veld %1 niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Specifiek veld niet gevonden"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Specifiek veld waarde %1 kon niet gevonden worden voor specifiek veld %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Specifiek veld waarde veranderd van %1 naar %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Specifiek veld waarde kon niet verwijderd worden"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Specifiek veld waarde kon niet gevonden worden"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Specifiek veld waarde verwijderd"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "SpecifiekVeld"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Data fout"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Data"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "dec."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "december"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Standaard Auto-antwoord Sjabloon"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr ""
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Standaard admin commentaar sjabloon"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Standaard admin correspondentie sjabloon"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Standaard correspondentie sjabloon"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Standaard transactie sjabloon"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Standaard: %1/%2 verandered van %3 naar %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delegeer rechten"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Delegeer specifieke rechten die aan u verleend zijn."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegeerRechten"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr ""
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Verwijder tickets"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "VerwijderTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Het verwijderen van dit object zou de referentiële integriteit kunnen ondermijnen"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Het verwijderen van dit object zou de referentiële integriteit ondermijnen"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Het verwijderen van dit object zou de referentiële integriteit ondermijnen"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Het verwijderen van dit object zou de referentiële integriteit ondermijnen"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Wijs af"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Afhankelijkheid van"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Afhankelijkheden: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Is afhankelijk van"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Aflopend"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Omschrijf onderstaande kwestie"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Omschrijving"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Details"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Toon"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Toon Toegangs Controle Lijst"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Toon Kolommen"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Toon Scrip sjablonen voor deze rij"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Toon Scrips voor deze rij"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Toon modus"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Toon bewaarde zoekopdrachten voor deze groep"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Toon ticket #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Doe iets en alles"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Ververs deze pagina niet"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Toon zoekresultaten niet"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Download"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Download als een door tabs gescheiden databestand"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Verwacht"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Verwachte datum '%1' kon niet ontleed worden"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "FOUT: Kon ticket '%1' niet laden: %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Wijzig"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Wijzig Specifieke Velden voor %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Wijzig Relaties"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Wijzig Zoekopdracht"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Wijzig systeem sjablonen"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Wijzig sjablonen voor %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "WijzigOpgeslagenZoekopdrachten"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Bezig met wijzigen van de configuratie voor rij %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Bezit met het wijzigen van de configuratie voor gebruiker %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Bezit met het wijzigen van SpecifiekVeld %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Bezit met het wijzigen van lidmaatschap voor groep %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Bezit met het wijzigen van lidmaatschap voor persoonlijke groep %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Bezit met het wijzigen van sjabloon %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Of basis of doel moeten gespecificeerd zijn"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "E-mail"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "E-mailadres in gebruik"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "E-mailAdres"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "E-mailCodering"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr ""
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Actief (Het uitvinken van dit hokje zal deze rij deactiveren)"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Actieve Rijen"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Actieve status %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr ""
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr ""
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Vul tickets of URIs in om deze tickets aan te koppelen. Scheidt meerdere elementen met spaties."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Fout"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Fout in paramaters naar Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Fout in paramaters naar Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Fout in paramaters naar Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Fout in paramaters naar Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Iedereen"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Voorbeeld:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "ExternAuteurId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Extra informatie"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Kon de gebruikers pseudogroep 'Privileged' niet vinden."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Kon de gebruikers pseudogroep 'Unprivileged' niet vinden."
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Kon module %1 niet laden. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "feb."
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Bestandsnaam"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Uiteindelijke Prioriteit"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "UiteindelijkePrioriteit"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Zoek nieuwe/open tickets"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Zoek mensen wier"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Beëindig Goedkeuring"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Eerste"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Eerste pagina"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Aap Noot Mies"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Aap!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr ""
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Gevonden Object"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "Vrije vorm"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "VrijevormContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "VrijevormMeerdere"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Vr."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Volledige Kop"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Vul sjabloon uit bestand"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Bezig met het ophalen van de huidige gebruiker middels een pgp handtekening"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Aan %1 gegeven"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Globaal"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Globaal Specifieke Velden"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Globaal sjabloon: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Ga"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Ga!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Goede pgp handtekening van %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Ga naar pagina"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Ga naar ticket"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Groep"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Groep %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Groeps rechten"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Groep heeft al een lid"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Groep kon niet gecreërd worden: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Groep gecreërd"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Groep heeft geen lid onder die naam"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Groep niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Groep niet gevonden.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Groep niet gespecificeerd.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Groepen"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Groepen kunnen geen leden zijn van hun leden"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Groepen waar deze gebruiker deel van uitmaakt"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hallo!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hallo, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Geschiedenis"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "ThuisNummer"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Homepage"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Ik heb %quant(%1,betonmixer)."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identiteit"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Als een goedkeuring afgewezen is, wijs het origineel af en verwijder hangende goedkeuringen"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Cre‘er tickets in deze rij indien geen rij is opgegeven."
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Als dit gereedschap setgid zou zijn, zou een kwaadwillende lokale gebruiker dit gereedschap kunnen gebruiken om administratieve toegang te verkrijgen tot RT"
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Als u een van de bovenstaande elemented ververst heeft, zorg dan dat u"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Illegale waarde voor %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Afbeelding"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Niet-wijzigbaar veld"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Neem inactieve groepen op in de weergave."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Neem inactieve rijen op in de weergave."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Neem inactieve gebruiker op in de zoek opdracht"
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Initiële Prioriteit"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "InitiëlePrioriteit"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Invoer fout"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Interne Fout"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Interne Fout: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Ongeldig Groep Type"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Ongeldig Recht"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Ongeldig Type"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Ongeldige data"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Ongeldige eigenaar. Val terug op 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Ongeldige rij"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Ongeldige recht"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Ongeldige waarde voor %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Ongeldige waarde voor specifiek veld"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Ongeldige waarde voor status"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Het is ontzettend belangrijk dat onbevoorrechtigde gebruikers geen toestemming hebben om dit gereedschap te gebruiken."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "We stellen voor dat u een onbevoorrechtigde unix gebruiker aanmaakt met het juiste groep lidmaatschap en RT toegang om dit gereedschap te gebruiken."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Het accepteerd meerdere argumenten:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Zaken die wachten op mijn goedkeuring"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "jan."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "januari"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Sluit u aan of verlaat deze groep"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "jul."
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jumbo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "jun."
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Sleutelwoord"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Taal"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Laatste"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Laatste Contact"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Laatst Gecontacteerd"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Laatst Bericht"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Laatst Ververst"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "LaatstVerverstDoor"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Over"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Geef deze gebruiker toegang tot RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Geef deze gebruiker rechten"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Eigenaar wordt gelimieteerd tot %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Rij wordt gelimiteerd tot %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Koppeling bestaat al"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Koppeling kon niet gecreëerd worden"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Koppeling gecreëerd (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Koppelink verwijderd (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Koppeling niet gevonden"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Koppel ticket #%1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Koppelingen"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Locatie"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Log folder %1 niet gevonden of niet toegankelijk.\\n RT kan niet starten."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Aangemeld als %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Aanmelden"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Afmelden"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Lookup type komt niet overeen"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Maak Eigenaar"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Maak Status"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Maak verwachtingsdatum"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Make oplossingsdatum"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Maak startdatum"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Maak datum gestart"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Maak datum gemeld"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Maak prioriteit"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Maak rij"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Maak onderwerp"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Beheer specifieke velden en waarden daarvan"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Beheer groepen en groeplidmaatschap"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Beheer eigenschappen en configuraties welke betrekking hebben op alle rijen"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Beheer rijen en rij-specifieke eigenschappen"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Beheer gebruikers en wachtwoorden"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "maa."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "maart"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "mei"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "mei."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Lid toegevoegd"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Lid verwijderd"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Lid niet verwijderd"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Lid van"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "LidVan"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Leden"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Samenvoeging Succesvol"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Samenvoeging mislukt. Kon EffectiefId niet instellen"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Voeg samen in"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Samengevoegd tot %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Bericht"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Mist primaire sleutel?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobiel"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "MobieleTelefoon"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Wijzig Toegangs Controle Lijst"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Wijzig Specifiek Veld %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Wijzit Scrip sjabloon voor deze rij"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Wijzig Scrips voor deze rij"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Wijzig Sjabloon %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Wijzig een Specifiek Veld voor deze rij %1"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Wijzig een scrip voor deze rij %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Wijzig een scrip welke betrekking heeft op alle rijen"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Wijzig objecten geassocieerd aan %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Wijzig data voor # %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Wijzig data voor #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Wijzig data voor ticket # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Wijzig globale groepsrechten"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Wijzig globale groepsrechten"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Wijzig globale gebruikersrechten"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Wijzig globale gebruikersrechten"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Wijzig groepsmetadata of verwijder groep"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Wijzig groepsrechten voor specifiek veld %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Wijzig groepsrechten voor groep %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Wijzig groepsrechten voor rij %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Wijzig lidmaatschap rooster voor dze groep"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Wijzig uw eigen RT "
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Wijzig mensen gekoppeld aan rij %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Wijzig mensen gekoppeld aan ticket #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Wijzig scrips voor rij %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Wijzig scrips welke betrekking hebben op alle rijen"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Wijzig sjabloon %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Wijzig sjablonen die van toepassing zijn op alle rijen"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Wijzig de groep %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Wijzig de toeschouwers van de rij"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Wijzig de gebruiker %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Wijzig ticket # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Wijzig ticket #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Wijzig tickets"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Wijzig gebruikersrechten voor specifiek veld %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Wijzig gebruikersrechten voor groep %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Wijzig gebruikersrechten voor rij %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Wijzig toeschouwers voor rij '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "WijzigACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "WijzigEigenLidmaatschap"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "WijzigRijToeschouwers"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "WijzigScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "WijzigZelf"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "WijzigSjabloon"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "WijzigTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Ma."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Meer over %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr ""
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr ""
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Meerdere"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Specificeren van 'Naam' attribuut verplicht"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Mijn %1 tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Mijn Goedkeuringen"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mijn goedkeuringen"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Mijn bewaarde zoekopdrachten"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Naam"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Naam in gebruik"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Goedkeuring benodigd van de systeem beheerder"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Nooit"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nieuw"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nieuwe Relaties"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nieuw Wachtwoord"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nieuwe Hangende Goedkeuring"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Nieuwe Zoekopdracht"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr ""
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nieuw wachtwoord"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Bericht voor nieuw wachtwoord verzonden"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nieuwe rij"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nieuw verzoek"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nieuwe rechten"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nieuw scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nieuwe zoekopdracht"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Nieuw sjabloon"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Nieuw ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Nieuw ticket bestaat niet"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Nieuwe gebruiker"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nieuwe gebruiker genaamd"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nieuwe toeschouwers"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Nieuwe venster instelling"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Volgende"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Volgende pagina"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Volgende pagina"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Bijnaam"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Bijnaam"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Geen Klasse gedefinieerd"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Geen SpecifiekVeld"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Geen SpecifiekVeld gedefinieerd"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Geen Groep gedefinieerd"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Geen Zoekopdracht"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Geen Rij gedefinieerd"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Geen RT-gebruiker gevonden. Raadpleeg uw RT-beheerder.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Geen Sjabloon"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Geen ticket gespecificeerd. Ticket afgebroken "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Geen ticket gespecificeerd. Ticket wijzigingen afgebroken\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Geen actie"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Geen kolom gespecificeerd"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Geen commando gevonden\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Geen commentaar ingevuld over deze gebruiker"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Geen correspondentie aangehecht"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Geen omschrijving voor %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Geen groep gespecificeerd"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Geen wachtwoord ingesteld"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Geen rechten om rijen te creëren"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Geen rechten om tickets te creëren in de rij '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Geen rechten om gebruikers te creëren"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Geen rechten om dat ticket te tonen"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Geen rechten om verversing ticket te bekijken"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Geen hoofd gespecificeerd"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Geen hoofden geselecteerd"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Geen rijen gevonden die aan de zoekcriteria voldoen"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Geen rechten gevonden"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Geen rechten toegekend"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Geen zoek opdracht om uit te voeren."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Geen onderwerp"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Geen ticket id gespecificeerd"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Geen transactie type gespecificeerd"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Geen gebruiker of email-adres gespecificeerd"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Geen gebruikers gevonden die aan de zoekcriteria voldoen"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Geen geldige RT gebruiker gevonden. RT cvs behandelaar losgemaakt. Neemt u alstublieft contact op met uw RT beheerder.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Geen waarde gestuurd naar _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Niemand"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Nietbestaand veld?"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Niet aangemeld."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Niet gezet"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Nog niet geïmplementeerd."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Nog niet geïmplementeerd...."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Notities"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Bericht kon niet verstuurd worden"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Bericht AdminCcs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Bericht AdminCcs als Commentaar"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Bericht Andere Ontvangers"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Bericht Andere Ontvangers als Commentaar"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Bericht Eigenaar"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Bericht Eigenaar als Commentaar"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Bericht Eigenaars en AdminCcs van nieuwe zaken welke hangende hun goedkeuring zijn"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Bericht Aanvragers"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Bericht Aanvragers en Ccs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Bericht Aanvragers en Ccs als Commentaar"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Bericht Aanvragers, Ccs en AdminCcs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Bericht Aanvragers, Ccs en AdminCcs als Commentaar"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "nov."
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Object kon niet gecreëerd worden"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Object gecreëerd"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "oct."
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Bij"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Bij Commentaar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Bij Overeenkomst"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Bij Creatie"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Bij Eigenaarwijziging"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Bij Rijwijziging"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Bij Oplossing"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Bij Statuswijziging"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Bij Transactie"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Toon alleen goedkeuringen voor verzoeken gecreëerd na %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Toon alleen goedkeuringen voor verzoeken gecreëerd voor %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Open"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Open"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Open verzoeken"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Open tickets (van lijst) in een nieuw venster"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Open tickets (van lijst) in een ander venster"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Open ticket bij correspondentie"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Sorteer op"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Ordening en sortering"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisatie"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Voortgekomen uit ticket: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Naar mate de tijd vordert, verschuift de prioriteit richting"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Eigen tickets"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "EigenTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Eigenaar"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Eigenaar veranderd van %1 naar %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Eigenaar gedwongen veranderd van %1 naar %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Eigenaar is"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Pagina %1 van %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pieper"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Pieper"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Ouders"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Wachtwoord"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Wachtwoord Herinnering"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Wachtwoord te kort"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Wachtwoord: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr ""
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Mensen"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Verricht een gebruiker gedefiniëerde actie"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl-configuratie"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Toestemming Geweigerd"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Persoonlijke Groepen"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Persoonlijke groepen"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Persoonlijke groepen:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefoonnummers"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Plaatshouder"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Voorkeuren"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Voorkeuren"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Bereid Plaatshouder Voor"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Vorige"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Vorige pagina"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Hoofd %1 niet gevonden."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioriteit"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioriteit begint bij"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Privacy:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Gerechtigd"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Gerechtigde status: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Gerechtigde gebruikers"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "Projecten"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseudogroep voor intern gebruik"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Rij"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Rij %1 niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Rij '%1' niet gevonden\\n"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Rij Naam"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Rij Scrips"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Rij bestaat al"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Rij kon niet aangemaakt worden"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Rij kon niet geladen worden."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Rij aangemaakt"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Rij is niet gespecificeerd"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Rij niet gevonden"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Rijen"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr ""
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 voor %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 van <a href=\"http://bestpractical.com/\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT Beheer"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT Authenticatie fout"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT Doorgestuurd: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT Configuratie fout"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RT Kritieke fout: Bericht niet bewaard!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Fout"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT Ontving mail (%1) van zichzelf."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Zelfbediening / Afgesloten Tickets"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "RT Variabelen"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT in een oogopslag"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT kon u niet authenticeren"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT kon de verzoeker niet vinden in zijn interne database"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT kon de rij %1 niet vinden"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT kon deze PGP signatuur niet valideren. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT voor %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT voor %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT heeft uw commando's verwerkt"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Het is gedistribueerd onder <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versie 2 van de GNU General Public License.</a>""
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT denkt dat dit bericht onbestelbaar zou kunnen zijn"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT zal dit bericht verwerken als of het ongesigneerd is.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT's email commando modus vereist PGP authenticatie. Of u heeft uw bericht niet gesigneerd, of uw signatuur kon niet geverifieerd worden."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Echte Naam"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "EchteNaam"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Naar gerefeerd door"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Refereert aan"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Verfijn"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Verfijn Zoekopdracht"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Ververs deze pagina elke %1 minuten."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Verwijder AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Verwijder Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Verwijder Verzoeker"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Antwoord"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Antwoord naar adres"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Antwoord naar verzoekers"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Antwoord op tickets"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "AntwoordOpTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Verzoeker"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Verzoeker email adres"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Verzoeker(s)"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Verzoekers"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Verzoek is terug verwacht"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Verplichte parameter '%1' ontbreekt"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Herstel"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Woonplaats"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Los op"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Los ticket #%1 (%2) op"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Opgelost"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Antwoord aan verzoekers"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Resultaten"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Resultaten per pagina"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Geef wachtwoord opnieuw"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Herstel"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Recht %1 niet gevonden voor %2 %3 in bereik %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Recht Gedelegeerd"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Recht Toegekend"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Recht Geladen"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Recht kon niet afgenomen worden"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Recht niet gevonden"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Recht niet geladen"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Recht ingetrokken"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Rechten"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr ""
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Rollen"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootGoedkeuring"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Za."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Bewaar"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Bewaarwijzigingen"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Bewaar wijzigingen"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Opgeslagen zoekopdrachten"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip aangemaakt"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Script verwijderd"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scrips voor %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrips welke betrekking hebben op alle rijen"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Zoek"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Zoek Criteria"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "Zoekopdrachten kunnen niet met dat type object geassocieerd worden"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Veiligheid"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "ZieRij"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Selecteer een groep"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Selecteer een rij"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Selecteer een gebruiker"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr ""
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr ""
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr ""
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "SelecteerMeerdere"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "SelecteerEnkele"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Zelfbediening"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Stuurt mail naar alle toeschouwers"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Stuurt mail naar alle toeschouwers als een \"commentaar\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Stuurt mail naar alle verzoekers en Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Stuurt mail naar alle verzoekers en Ccs als een \"commentaar\""
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Stuurt een bericht aan de verzoekers"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Stuurt mail aan expliciet genoemde Ccs en Bccs"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Stuurt mail aan de administratieve Ccs"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Stuurt mail aan de administratieve Ccs als een \"commentaar\""
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Stuurt mail aan de eigenaar"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Toon Resultaten"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Toon goedgekeurde verzoeken"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Toon beginselen"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Toon afgewezen verzoeken"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Toon details"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Toon hangende verzoeken"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Toon verzoeken die wachten op andere goedkeuringen"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Toon ticket privé commentaar"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Toon ticket samenvattingen"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ToonACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "ToonUitgaandeEmail"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "ToonOpgeslagenZoekopdrachten"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ToonScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "ToonSjabloon"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "ToonTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "ToonTicketCommentaar"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Schrijf in als een ticket Verzoeker of ticket of rij Cc"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Schrijf in als een ticket of rij AdminCc"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Signatuur"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Enkel"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Sorteer sleutel"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Sorteer resultaten op"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "SorteerVolgorde"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Stadium"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Is blijven steken"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Start pagina"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Gestart"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Startum '%1' kon niet ontleed worden"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Begint"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Begint op"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Begindatum '%1' kon niet ontleed worden"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Staat"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status veranderd van %1 naar %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "StatusVerandering"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Steel"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Steel ticket"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "SteelTicket"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Gestolen van %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Gestolen van %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Onderwerp"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Onderwerp veranderd naar %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Registreer"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Registreer Workflow"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Gelukt"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Zo."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperGebruiker"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Systeem"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Systeemconfiguratie"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Systeem Fout"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Systeem fout. Recht niet gedelegeerd."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Systeem fout. Recht niet toegekend."
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Systeem fout. Niet mogelijk om rechten toe te kennen"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Systeem groepen"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SysteemRolgroep voor intern gebruik"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Neem"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Neem ticket"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "NeemTicket"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Genomen"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "Taak"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Sjabloon"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr ""
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Sjabloon verwijderd"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Sjabloon niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Sjabloon niet gevonden\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Sjabloon ontleed"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Sjablonen"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Sjablonen voor %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Tekst"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Dat is al de huidige waarde"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Dat is geen waarde voor dit specifieke veld"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Dat is de zelfde waarde"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Dat hoofd heeft reeds dat recht"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Dat hoofd is reeds een %1 voor deze rij"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Dat hoofd is reeds een %1 voor dit ticket"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Dat hoofd is geen %1 voor deze rij"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Dat hoofd is geen %1 voor dit ticket"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Die rij bestaat niet"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Dat ticket heeft onopgeloste afhankelijkheden"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Die gebruiker heeft dat recht reeds"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Die gebruiker is al eigenaar van dat ticket"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Die gebruiker bestaat niet"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Die gebruiker is al gerechtigd"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Die gebruiker is reeds ontrechtigd"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Die gebruiker is nu gerechtigd"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Die gebruiker is nu ontrechtigd"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Die gebruiker mag geen eigenaar zijn van tickets in die rij"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Dat is niet een numeriek ID"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "De Beginselen"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "De CC van een ticket"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "De administratieve CC van een ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Het commentaar is bewaard"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Het volgende commando zal alle actieve tickets in de rij 'general' vinden en hun prioriteit op 99 zetten als ze meer dan 4 uur niet aangeraakt zijn:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "De volgende commando's zijn niet verwerkt:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "De waarde is gezet."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "De eigenaar van een ticket"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "De verzoeker van een ticket"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Dit commentaar is gewoonlijk niet zichtbaar voor de gebruiker"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Dit specifieke veld is niet van toepassing op dat object"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Dit onderdeel is alleen beschikbaar voor systeembeheerders"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Dit bericht zal verstuurd worden aan..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Dit ticket %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Dit gereedschap stelt de gebruiker in staat arbitraire perl modules te gebruiken vanuit RT"
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Het lijkt erop alsof deze transactie geen inhoud heeft"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "De %1 tickets met hoogste prioriteit van deze gebruiker"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "De 25 hoogste prioriteit tickets van deze gebruiker"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Do."
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Ticket #%1 Jumbo actualisering: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Ticket #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Ticket %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Ticket %1 aangemaakt in rij '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Toclet %1 geladen\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Ticket %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Ticket-Specifieke Velden"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Ticket Historie # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Ticket Id"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Ticket Opgelost"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Ticket Transacties"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Ticket aanhechting"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Ticket inhoud"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Ticket inhoud type"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Ticket kong niet aangemaakt worden vanwege een interne fout"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Ticket aangemaakt"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Ticket aanmaken gefaald"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Ticket verwijderd"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Ticket id niet gevonden"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Ticket metagegevens"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Ticket niet gevonden"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Ticket status gewijzigd"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Ticket toeschouwers"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Tickets %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Tickets %1 door %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tickets van %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tickets welke afhankelijk zijn van deze goedkeuring"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Geschatte Tijd"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Tijd Over"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Tijd Gewerkt"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Tijd over"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tijd om te tonen"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Tijd gewerkt"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "TijdOver"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TijdGewerkt"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Om een diff van deze uitvoering te genereren:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Om een diff van deze uitvoering te genereren:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Voor vragen over support, training, bedrijfsspecifieke software-ontwikkeling of licentieovereenkomsten, gelieve contact op te nemen met %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Verteld"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Hulpstukken"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transactie"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transactie %1 gezuiverd"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transactie Gecreëerd"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Transactie Specifieke Velden"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transactie->Creëer kon niet, aangezien u geen ticket id gespecificeerd heeft"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transactie->Cre‘r kon niet aangezien er geen objectttype en -id gespecificeerd is"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transacties zijn onwijzigbaar"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Tracht een recht te verwijderen: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Di."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Type"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Niet geïmplementeerd"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unix aanmelden"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "UnixGebruikersnaam"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Onbekende InhoudCodering %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ongelimiteerd"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Onbenoemde zoekopdracht"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Ongerechtigd"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Vrij"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "Naamloze zoekopdracht"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Ververs"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Ververs ID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Ververs Type"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Ververs al deze tickets in eens"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Ververs email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Ververs meer dan ŽŽn ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Ververs naam"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Verversing niet opgeslagen."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Ververs geselecteerde tickets"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Ververs signatuur"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Ververs ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Ververs ticket # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Ververs ticket #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Ververs ticket #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Verversingstype was noch correspondentie, noch commentaar"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Ververst"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Gebruiker %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Gebruiker %1 Wachtwoord: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Gebruiker '%1' niet gevonden"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Gebruiker '%1' niet gevonden\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Gebruiker Gedifiniëerd"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "GebruikersID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Gebruiker Id"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Gebruikersrechten"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "De gebruiker vroeg om een onbekende aanpassing van specifiek veld %1 voor %2 object #%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Gebruiker kon niet aangemaakt worden: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Gebruiker aangemaakt"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Door gebruiker gedefiniëerde groepen"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Gebruiker opgehaald"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Gebruiker verwittigd"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Gebruikers aanzicht"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Door gebruiker gedefinieerde groepen"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Gebruikersnaam"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Gebruikers"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Gebruikers die voldoen aan de zoek criteria"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Geldige Zoekopdracht"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "WaardeVanRij"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Waarden"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Schouw toe"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "SchouwToeAlsAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Toeschouwer geladen"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Toeschouwers"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebCodering"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Wo."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Wanneer een ticket goedgekeurd is door alle goedkeurders, voeg correspondentie toe aan het orginele ticket"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Wanneer een ticket goedgekeurd is door een goedkeurder, voeg correspondentie toe aan het orginele ticket"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Wanneer een ticket is aangemaakt"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Wanneer een goedkeuringsticket is aangemaakts, verwittig de Eigenaar en de AdminCc van het onderwerp dat op hun goedkeuring wacht"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Wanneer iets gebeurt"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Wanneer een ticket is opgelost"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Wanneer de eigenaar van een ticket verandert"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Wanneer de rij van een ticket verandert"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Wanneer de status van een ticket verandert"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Wanneer een door de gebruiker gedifiniëerde voorwaarde gebeurt"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Wanneer commentaar binnenkomt"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Wanneer correspondentie binnenkomt"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Werk"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "WerkTelefoon"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Gewerkt"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "U bent al eigenaar van dit ticket"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "U bent geen geauthorizeerde gebruiker"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "U kunt alleen tickets opnieuw toebedelen die van u zijn, of van niemand"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "U heeft geen toestemming om dat ticket te bekijken"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "U vond %1 tickets in rij %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "U bent afgemeld bij RT"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "U heeft geen toestemming om tickets aan te maken in die rij."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "U mag geen verzoeken aanmaken in die rij"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "U mag zich weer aanmelden"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Uw %1 verzoeken"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Uw RT beheerder heeft de mail-aliasses welke RT aanroepen verkeerd geconfigureerd"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Uw verzoek is goedgekeurd door %1. Er zijn wellicht nog andere hangende goedkeuringen."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Uw verzoek is goedgekeurd."
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Uw verzoek was geweigerd."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Uw gebruikersnaam of wachtwoord zijn onjuist"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Postcode"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "zoals gegeven aan %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "bevat"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "inhoud"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "inhoud-type"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "correspondentie (waarschijnlijk) niet verstuurd"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "correspondentie verstuurd"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dagen"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "dood"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "verwijder"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "verwijderd"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "voldoet niet aan"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "bevat niet"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "gelijk aan"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "bestandsnaam"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "groter dan"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "groep '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "uren"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "id"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "is"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "is niet"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "minder dan"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "voldoet aan"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minuten"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "wijzigingen\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "maanden"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nieuw"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr ""
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "geen"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "niet gelijk aan"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "open"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "persoonlijke groep '%1' voor gebruiker '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "rij %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "geweigerd"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "opgelost"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sec"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "bleef steken"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "systeem %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "systeem groep '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "het aanroepende component specificeerde niet waarom"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ticket #%1 %2"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "onbeschreven groep %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "gebruiker %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "weken"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "met sjabloon %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "jaren"
-
diff --git a/rt/lib/RT/I18N/no.po b/rt/lib/RT/I18N/no.po
deleted file mode 100644
index 995ab78..0000000
--- a/rt/lib/RT/I18N/no.po
+++ /dev/null
@@ -1,6147 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 3.0.11\n"
-"POT-Creation-Date: 2003-04-01 06:06+0200\n"
-"PO-Revision-Date: 2003-05-01 04:47+0200\n"
-"Last-Translator: Ronny Pettersen <ronny.pettersen@edb.com>\n"
-"Language-Team: RT Norwegian <rt@thefeed.no>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3. %2 %7 %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 lagt til"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 siden"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 ble endret til %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%1 %2 av gruppen %3"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 med mal %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 denne saken\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 vist"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Et parameter til %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Viser statusoppdateringer til STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Oppgi kommandomodulen du ønsker å bruke"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Oppgi betingelsesmodulen du ønsker å bruke"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Oppgi søkemodulen du ønsker å bruke"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 KommandoScript lastet"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 ble lagt til som verdi for %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 alias trenger en ReferanseId å jobbe mot"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1 alias trenger en saksnummer å jobbe mot "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 alias trenger et saksnummer å jobbe mot (fra %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 ser ut til å være et lokalt objekt, men kan ikke finnes i databasen"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 av %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 ble endret fra %2 til %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 kunne ikke settes til %2."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 kunne ikke starte en transaksjon (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 kunne ikke sette status til løst. RT-basen kan være inkonsistent."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "Mine %1 høyst prioriterte saker..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "Mine %1 høyst prioriterte forespørsler..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 er et verktøy for å behandle saker fra eksterne verktøy, slik som cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 er ikke lenger en %2 for denne køen."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 er ikke lenger en %2 for denne saken."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 er ikke lenger en verdi for fleksifeltet %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 er ikke et gyldig saksnummer."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 vises ikke"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 rettigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 var velykket\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 er ukjent type for $saksnummer"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 er ukjent type for %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 ble opprettet uten en aktiv bruker\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 vil løse alle medlemmer av en løst gruppesak."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 vil stoppe en [lokal] BASE hvis den er avhengig av/medlem av en tilkoblet sak."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: ingen vedlegg oppgitt"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' er en ugyldig statusverdi"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' er ikke en kjent handling"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Merk for å slette gruppemedlem)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Merk for å slette Scrip)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Merk for å slette)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Merk boksene for å slette)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Skriv inn referansenummer eller URler, separert med mellomrom)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Settes til standard %1 hvis blank)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Ingen Verdi)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Ingen fleksifelt)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Ingen medlemmer)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Ingen scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Ingen maler)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Sender en kopi av denne oppdateringen til en kommaseparert liste med epostaddresser. Endrer <b>ikke</b> hvem som vil motta fremtidige oppdatreinger.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Sender en kopi av denne oppdateringen til en kommaseparert liste med epostaddresser. Endrer <b>ikke</b> hvem som vil motta fremtidige oppdateringer.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Sender en kopi av denne oppdateringen til en kommaseparert liste av administrative epostaddresser. Disse vil <b>vil</b> motta fremtidige oppdateringer.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Sender en kopi av denne oppdateringen til en komma-separert liste av epostaddresser. Endrer <b>ikke</b> hvem som vil motta fremtidige oppdateringer.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Sender en kopi av denne oppdateringen til en kommaseparert liste med epost-addresser. Endrer <b->ikke</b> hvem som vi motta fremtige utfordrer dere nå."
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Sender en kopi av dette oppdateringen til en kommaseparert liste med epostaddresser. Disse <b>vill</b> motta fremtidige oppdateringer.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(tom)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(navn ikke oppgitt)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(ingen overskrift)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(ingen verdi)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(bare en sak)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(Venter på godkjenning)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(venter på andre saker)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(kundens gruppe)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(nødvendig)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(ingen tittel)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "Mine 25 høyst prioriterte saker..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "Mine 25 høyst priorterte forespørsler..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket-:Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Ny sak i\">&nbsp;%1"
-
-#: NOT FOUND IN SOURCE
-msgid "??????"
-msgstr "??????"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "En tom mal"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE lastet"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "ACE kunne ikke slettes"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "fant ikke ACE"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE ikke funnet"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEr kan bare opprettes og slettes."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Avbryter for å ungå uånsket saksendring"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Om meg"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Aksesskontroll"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Handling"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Handling %1 finnes ikke"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Handling skrevet."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Handling forberedt"
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Legg til AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Legg til Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Legg til flere filer"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "Legg til neste status"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Legg til kunde"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Legg til verdi"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "Legg til Scrip i denne køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip which will apply to all queues"
-msgstr "Legg til et Scrip som gjelder for alle køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "Legg til et nøkkelordvalg på denne køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Legg til et globalt Scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Legg til et Scrip til denne køen"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Legg til et Scrip som vil gjelde for alle køer"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Legg til kommentarer eller svar til denne saken"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Legg til medlemmer"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Legg til overvåkere"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "AddNextState"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "La til primær som en %1 for denne køen"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "La til primær som en %1 for denne saken"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adresse1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adresse2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Admin Kommentar"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Admin-korrespondanse"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Adminkøer"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Adminbrukere"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Admin/Global konfigurasjon"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Admin/Grupper"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Admin/Køer/Grunnleggende"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "AdminAllePersonalGrupper"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminKommentar"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminKorrespondanse"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "AdminFleksifelt"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGruppe"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGruppeMedlemskap"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminEgnePersonligeGrupper"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminKø"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminBrukere"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administrativ Cc"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "Admin"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Avansert Søk"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Etter"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Alder"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias"
-msgstr "Alias"
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "Alias for"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Alle Fleksifelt"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Alle køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Send alltid en melding til kunden uavhengig av meldingssender"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Godkjennelse"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Godkjennelse #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Godkjenning # %1: Notater kunne ikke lagres pga. systemfeil"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Godkjenning #%1: Notater lagret"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Godkjenning - Detaljer"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Godkjenningsdiagram"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Godkjenn"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Godkjenners notater: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Apr."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "April"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Stigende"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Legg Ved"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Legg ved fil"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Vedlagt fil"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Vedlegg '%1' kunne ikke lastes"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Vedlegg opprettet"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Vedleggsnavn"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Vedlegg"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Aug."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "August"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "AutSystem"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Autosvar"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Autosvar Til Kunde"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "AutosvarTilKunde"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Ugyldig PGP-signatur: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Ugyldig vedleggsid. Kunne ikke finne vedlegg '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Ugyldig data i %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Ugyldig transaksjonsnummer for vedlegg. %1 skulle vært %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Detaljer"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Sørg for å lagre endringene dine"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Før"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Begynn Godkjenning"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Blank"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URL som kan brukes som bokmerke for dette søket"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Begrens headere"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Masseoppdatering av saker"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Kan ikke endre systembrukere"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Kan denne primæren se denne køen"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Kan ikke legge til en verdi for et fleksifelt uten navn"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Kan ikke koble en sak til seg selv"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Kan ikke flette inn i en flettet sak. Denne meldingen bør ikke forekomme"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Kan ikke spesifisere både base og mål."
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Kunne ikke oprette bruker: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Endre passord"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Merk for å slette"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Merk for å trekke tilbake rettighet"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Barn"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "By"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Lukket"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Lukkede Saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Lukkede forespørsler"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Lukkede saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Code"
-msgstr "Kode"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Kunne ikke tolke kommando!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Kommenter"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Kommentaraddresse"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Kommentaren ble ikke lagret"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Kommenter saker"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "KommenterSak"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Kommentarer"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Kommentarer (Ikke send til kunder)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Kommentarer (ikke sendt til kunder)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Kommentarer til %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Kommentarer om denne brukeren"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "La til kommentarer "
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Lagring forkortet"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Kompilatorrestriksjoner"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Forutsetning"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Forutsetning gjelder..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Forutsetning ikke funnet"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfigurasjon"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Bekreft"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "KontaktInfoSystem"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Kontatdato '%1' kunne ikke tolkes"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Innhold"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "Kunne ikke opprette gruppen"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korrespondanse"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Korrespondanseaddresse"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korrespondanse lagt til"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Korrespondansen ble ikke lagret"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Kunne ikke legge til nye fleksifeltverdier for saken. "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Kunne ikke legge til nye fleksifeltverdier for saken. %1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Kunne ikke endre eier. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Kunne ikke opprette fleksifelt"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Kunne ikke opprette gruppe"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Kunne ikke opprette mal: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Kunne ikke opprette sak. Kø ikke satt"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Kunne ikke opprette bruker"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "Kunne ikke opprette overvåker for kunde"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Kunne ikke finne en sak med id %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Kunne ikke finne gruppen %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Kunne ikke finne eller lage den brukeren"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Kunne ikke finne den primæren"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Kunne ikke finne brukeren %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Kunne ikke hente gruppen"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Kunne ikke sette den primæren som %1 for denne køen"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Kunne ikke sette den primæren som %1 for denne saken"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Kunne ikke fjerne den primæren som %1 for denne køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Knne ikke fjære den primæren som %1 for denne saken"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Kunne ikke legge til medlemmmer i gruppen"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Kunne ikke opprette en transaksjon: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Kunne ikke tolke gpgs svar\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Kunne ikke finne gruppen\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Kunne ikke finne raden"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Kunne ikke finne primæren"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Kunne ikke finne verdien"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Kunne ikke finne den overvåkern"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Kunne ikke finne bruker\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Kunne ikke laste %1 fra brukerdatabasen.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "Kunne ikke laste NøkkelordValg."
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Kunne ikke laste RTs konfigurasjonsfil '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Kunne ikke laste Scripsene."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Kunne ikke laste gruppen %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Kunne ikke laste linken"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Kunne ikke laste køen"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Kunne ikke laste køen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Kunne ikke laste scripet"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Kunne ikke finne mal"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Kunne ikke laste den brukeren (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Kunne ikke laste saken '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Land"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Opprett"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Opprett Saker"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Oprett et fleksifelt"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Opprett et fleksifelt for køen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Opprett et fleksifelt for alle køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Opprett et nytt fleksifelt"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "Opprett et globalt Scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Opprett et nytt globalt scrip"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Opprett en ny gruppe"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Opprett en ny personlig gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Opprett en ny kø"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Opprett et nytt scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Opprett en ny mal"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Opprett en ny sak"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Opprett en ny bruker"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Opprett en ny kø"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Opprett en kø kalt"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Opprett en forespørsel"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Opprett et scrip for køen %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Opprett en mal"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Opprett en sak"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Opprettelse feilet: %1 / %2 / %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Opprettelse feilet: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Opprett nye saker basert på dette scripets mal"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Opprett sak"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Opprett saker i denne køen"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Opprett, slett og modifiser fleksifelt"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Opprett, slett og endre køer"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Opprett, slett og modifiser medlemmene av en brukers personlige grupper"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Opprett, slett og modifiser medlemmene av personlige grupper"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Opprett, slett og modifiser brukere"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "OpprettSak"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Opprettet"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Opprettet Fleksifelt %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Opprettet malen %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Eksisterende Forhold"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Eksisterende Scrips"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Eksisterende medlemmer"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Eksisterende rettigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Eksisterende søkekriterier"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Eksisterende overvåkere"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Fleksifeltet #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Fleksifelt"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Avsluttningskode"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Forberedelseskode"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Forutsetning"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Fleksifeltet %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Fleksifeltet %1 har en verdi."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Fleksifeltet %1 har ingen verdi."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Fleksifeltet %1 kunne ikke finnes"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Fleksifeltet slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Fleksifeltet kunne ikke finnes"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Verdien %1 for fleksifeltet %2 kunne ikke finnes"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Fleksifeltets verdi endret fra %1 til %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Fleksifeltets verdi kunne ikke slettes"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Fleksifeltets verdi kunne ikke finnes"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Fleksifeltverdi slettet"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "FleksiFelt"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Datafeil"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Datoer"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Des."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Desember"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Standard Autosvarmal"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Standard Autosvarmal"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Standard Adminkommentarmal"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Standard Adminkorrespondensemal"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Standard korrespondensemal"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Standard transaksjonsmal"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Standard: %1/%2 endret seg fra %3 til %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Deleger rettigheter"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Deleger spesifikke rettigheter som har blitt gitt til deg."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegerRettigheter"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Delegering"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Slett"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Slett saker"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "SlettSak"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Sletting av dette objektet kan føre til inkonsistens"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Sletting av dette objektet vil føre til inkonsistens"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Sletting av dette objektet ville føre til inkonsistens"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Sletting av dette objektet ville føre til inkonsisistens."
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "Sletting av dette objektet ville føre til inkonsistens. Det er uheldig."
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Nekt"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Avhengighet fra"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Avhengigheter: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Avhengig av"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "AvhengigAv"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Synkende"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Beskriv problemet under"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Beskrivelse"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Detaljer"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Vis"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Vis Rettigheter"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Vis Scrip-maler for denne køen"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Vis Scrip-maler for denne køen"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Visningsmodus"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Vis saken #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Gjør hva som helst"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Ikke last denne siden på nytt"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Ikke vis søkeresultat"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Last ned"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Innen"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Innendato '%1' kunne ikke tolkes"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "FEIL: Kunne ikke laste sak '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Rediger"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "Rediger Forhold"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Rediger fleksifelt for %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Rediger Forhold"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Rediger Maler for køen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Rediger nøkkelord"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Rediger scrips"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Rediger systemmal"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Rediger maler for %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Rediger Konfigurasjon for køen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Redigerer Konfigurasjonen av brukern %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Redigerer Fleksifeltet %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Redigerer medlemsskap for gruppen %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Redigerer medlemsskap for den personlige gruppen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Redigerer malen %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Enten base eller mål må oppgis"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Epost"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Epostaddresse i bruk"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "EpostAddresse"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "EpostFormat"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Aktivt (Fjern merkingen for å deaktivere dette fleksifeltet)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Aktiv (Fjern merkingen for å deaktivere denne gruppen)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Aktiv (Fjern merkingen for å deaktivere denne køen)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Aktive Fleksifelt"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Aktive Køer"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Aktiv status %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Skriv multiple verdier"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Skriv en verdi"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Skriv saker og/eller URIer som det skal linkes til. Separer dem med mellomrom"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Feil"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Feilet ved opprettelse av Overvåker"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Feil i parameterne til Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Feil i parameterne til Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Feil i parameterne til Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Feil i parameterne til Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Alle"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Eksempel:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "EksternAutId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "EksternKontaktInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Ekstra info"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Kunne ikke finne pseudogruppen 'Privilgerte' brukere."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Kunne ikke finne 'pseudogruppen 'Upriviligerte' brukere"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Kunne ikke laste modulen %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Feb."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Februar"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "End"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Endelig Prioritet"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "EndeligPrioritet"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Finn grupper hvor"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Finn nye/Ã¥pne saker"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Finn folk hvor"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Finn saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Fullfør godkjennelse"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Først"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Første side"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Tving gjennom endring"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Fant %quant(%1) sak(er)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Fant Objektet"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FriforkKontaktInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FriformMultipel"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FriformSingel"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Fre."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Fulle headere"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Henter brukerinfo fra pgp signatur\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Gitt til %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "Globale Nøkkelordvalg"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Globale Scrip"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Globale maler: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Start!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Gyldig pgp sig fra %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "GÃ¥ til siden"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "GÃ¥ til saken"
-
-#: NOT FOUND IN SOURCE
-msgid "Grand"
-msgstr "Stor"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Gruppe"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Gruppen %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Grupperettigheter"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Alt medlem av gruppen"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "Gruppen kunne ikke lastes."
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Gruppen kunne ikke opprettes: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Gruppen opprettet"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Gruppen har ikke det medlemmet"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Fant ikke gruppen"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Fant ikke gruppen.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Ikke spesifisert gruppe.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grupper"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Grupper kan ikke være medlemmer av sine medlemmer"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Hallo!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Hallo, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historikk"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "HjemmeTelefon"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Hjemmeside"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Jeg har %quant(%1, sementblandere)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "Jeg har [quant,_1,sementblandere]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Id"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identitet"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Hvis en godkjenner blir avvist, avvis orginalen, og slett ventende godkjenninger"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Hvis dette verktøyet var setgid kunne en fiendtlig lokal bruker bruke dette verktøyet for å oppnå administrativ tilgang til RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Hvis du har oppdatert noe over, sørg for at"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Ugyldig verdig for %1"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "LÃ¥st felt"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Inkluder deaktiverte fleksifelt i listen."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Inkluder deaktiverte køer i listen."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Inkluder deaktiverte brukere i søket."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Startprioritet"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "StartPrioritet"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Feil i inntasting"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "Interesse registrert"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Intern Feil"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Intern Feil: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Ugyldig gruppetype"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Ugyldige rettigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Ugyldig Type"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Ugyldig data"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Ugydlig eier. Setter til 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Ugyldig kø"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Ugyldige rettigheter"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Ugyldig verdi for %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Ugyldig verdi for fleksifeltet."
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Ugyldig verdi for status"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Det er ekstremt viktig at ikkepriviligerte brukere ikke har tilgang til dette verktøyet."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Det er anbefalt at du oppretter en upriviligert unixbruker med korrekt gruppemedlemsskap og tilgang til RT for  kjøre dette verktøyet."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Det tar flere parametere:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Ting som venter på min godkjenning"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Januar"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Bli med i eller forlat denne gruppen"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Juli"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Total"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Juni"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Nøkkelord"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Språk"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Siste"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Siste Kontakt"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Sist kontaktet"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Sist Informert"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Sist Oppdatert"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "SistOppdatert"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Igjen"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "La denne brukeren få tilgang til RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "La denne brukeren få rettigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Begrenser eier til %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Begrenser køen til %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Lenke finnes alt"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Lenke kunne ikke opprettes"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Lenke opprettet (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Lenke slettet (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Lenke ble ikke funnet"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Knytt sak #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Knytt sak %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Lenker"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Lokasjon"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Logkatalogen %1 ble ikke funnet eller kunne ikke skrives til.\\nRT kan ikke kjøre."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Logget inn som %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Innlogging"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Logg av"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Sett Eier"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Sett Status"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "msgstr "Sett tidsfrist" "
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Sett løsningsdato"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Sett startdato"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Sett startdato"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Sett informert dato"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Sett prioritet"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Sett Kø"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Sett Emne"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Sett grupper og gruppemedlemsskap"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Rediger egenskaper og konfigurasjon som gjelder for alle køer"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Rediger køer og kø-spesifike egenskaper"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Rediger brukere og passord"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Mars"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Mai"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mai."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Medlem lagt til"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Medlem slettet"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Medlem ikke slettet"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Medlem av"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "MedlemAv"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Medlemmer"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Fletting vellykket"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Fletting feilet. Kunne ikke sette EffektivId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Flett inn i"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Melding"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Mangler en primærnøkkel?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Mobil"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "MobilTelefon"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Endre Tilgangslister"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Endre Fleksifeltet %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Endre Fleksifelt som gjelder for alle køer"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Endre Scripmaler for denne køen"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Endre Scrips for denne køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Endre SystemACLer"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Endre Malen %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Endre et fleksifelt for køen %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Endre et fleksifelt som gjelder for alle køer"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Endre et scrip for køen %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Endre et scrip som gjelder for alle køer"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Endre datoer for # %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Endre datoer for #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Endre datoer for sak # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Endre globale grupperettigheter"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Endre globale grupperettigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Endre globale rettigheter for grupper"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Endre globale rettigheter for brukere"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Endre globale scrips"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Endre globale brukerrettigheter"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Endre globale brukerrettigheter"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Endre gruppens metadata eller slette gruppen"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Endre grupperettigheter for %1 gruppen"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Endre grupperettigheter %1 køen"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Endre medlemsliste for denne gruppen"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Endre sin egen RT konto"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Endre hvem som er relatert til %1 køen"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Endre hvem som er relater til sak #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Endre scrips for %1 køen"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Endre scrips som gjelder alle køer"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Endre mal %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Endre maler som gjelder for alle køer"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Endre gruppen %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Endre overvåkere for køen"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Endre brukeren %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Endre sak # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Endre sak #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Endre saker"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Endre brukerrettigheter for %1 gruppen"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Endre brukerrettigheter for %1 køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Endre overvåkere for '%1' køen"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "EndreACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "EndreEgetMedlemskap"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "EndreKøOvervåkere"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "EndreScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "EndreSegSelv"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "EndreMal"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "EndreSak"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Man."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Mer om %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Flytt ned"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Flytt opp"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Flere"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "MÃ¥ spesifisere attributten 'Navn'"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "Mine %1 saker"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Mine saker til godkjenning"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Mine saker til godkjenning"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Navn"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Navnet er i bruk"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Trenger godkjennelse fra systemadministrator"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Aldri"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Ny"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nye forhold"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nytt Passord"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Ny, Venter på Godkjennelse"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nytt Søk"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nytt fleksifelt"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Ny gruppe"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nytt passord"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Melding om nytt passord sendt"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Ny kø"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Ny forespørsel"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nye rettigheter"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nytt scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nytt søk"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Ny mal"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Ny sak"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Ny sak eksistere ikke"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Ny bruker"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Ny bruker kalt"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Ny overvåker"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Instillinger for nytt vindu"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Neste"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Neste side"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "KalleNavn"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Kallenavn"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Ingen FleksiFelt"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Ingen grupper definert"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Ingen kø definert"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Ingen RT bruker funnet. Vennligst referer til manualen.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Ingen Mal"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Ingen sak oppgitt. Avbryter sak "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Ingen Sak oppgitt. Avbryter saksendring\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Ingen handling"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Ingen kolonne spesifisert"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Ingen kommando funnet\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Ingen kommentar skrevet om denne brukeren"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Ingen korrespondanse vedlagt"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Ingen beskrivelse for %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Ingen gruppe spesifisert"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Passordet er ikke satt"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Ingen tilgang til å opprette køer"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Ikke tilgang til å opprette saker for køen '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Ikke tilgang til å opprette brukere"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Ikke tilgang til å vise den saken"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Ingen tilgang til å se oppdatering av saken"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Ingen primær spesifisert"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Ingen primære spesifisert"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Det er ingen køer som matcher søkekriteriet"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Ingen rettigheter funnet"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Ingen rettigheter tildelt"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Ingen søk å behandle"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Ingen saksid oppgitt"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Transaksjonstype ikke spesifisert"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Ingen bruker eller epostaddresse oppgitt"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Fant ingen brukere som treffer søkekriteriene."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Fant ingen gyldig RT bruker. RT cvs handler avstengt. Kontakt din RT administrator.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Ingen verdi sendt til _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Ingen"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Ukjent felt?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Ikke logget inn"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Ikke logget inn."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Ikke satt"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Ikke implementert enda."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Ikke implementert enda...."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Notater"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Melding kunne ikke sendes"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Raporter til AdminCc"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Rapporter til AdminCc som kommentar"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Rapporter til andre mottakere"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Rapporter til andre mottakere som kommentar"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Rapporter til eier"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Rapportert til eier som kommentar"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Rapporter til Eiere og AdminCc om nye ting som venter på godkjenning"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Rapporter til kunde"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Rapporter til Kunder og Cc"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Rapporter til Kunder og Cc som kommentar"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Rapporter til Kunder Cc og AdminCc"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Rapporter til Kunder Cc og AdminCc som Kommentar"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "November"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objekter kunne ikke opprettes"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objektet ble opprettet"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Okt."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "Oktober"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Ved"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Ved Kommentar"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Ved Korrespondanse"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Ved Opprettelse"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Ved Eierskifte"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Ved Køendring"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Ved Løsning"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Ved statusendring"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Ved Transaksjon"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Vis kun godkjennelse for saker opprettet etter %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Bare vis godkjennelse for saker opprettet før %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Ã…pne"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Ã…pne den"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Åpne forespørsler"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Ã…pne saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Ã…pne saker (fra utlisting) i et nytt vindu"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Ã…pne saker (fra utlisting) it et annet vinud"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Ã…pne saker ved korrespondanse"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Rekkefølge og sortering"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organisasjon"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Opprinnelig sak: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Over tid beveger prioriteten seg mot"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Eie saker"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "EieSak"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Eier"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Eier endret fra %1 til %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Eier ble tvunget til å endres fra %1 til %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Eier er"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Personsøker"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "PersonSøker"
-
-#: NOT FOUND IN SOURCE
-msgid "Parent"
-msgstr "Forelder"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Foreldre"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Passord"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Passordhint"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "For kort passord"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Passord: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Passordene stemmer ikke overens."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Passordene stemmer ikke overrens. Passordet ble ikke endret"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Personer"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Kjør en brukerdefinert handling"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Ingen Tilgang"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Personlige Grupper"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Personlige grupper"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Personlige grupper:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefonnummer"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Stedholder"
-
-#: NOT FOUND IN SOURCE
-msgid "Pref"
-msgstr "Pref"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Instillinger"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Pref"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Klargjør Forkortet"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Forrige"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Forrige side"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Primær %1 ikke funnet."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioritet"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Prioritet starter på"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Priviligert"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Priviligert status: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Priviligerte brukere"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Pseduogruppe for intern bruk"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Kø"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Køen %1 kunne ikke finnes"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Køen '%1' ikke funnet\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "Nøkkelordvalg for kø"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Kønavn"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Køscrip"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Køen eksisterer allerede"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Køen kunne ikke opprettes"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Køen kunne ikke lastes."
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Køen opprettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Køen er ikke oppgitt."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Køen ikke funnet"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Køer"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Raskt søk"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 for %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 fra <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT-administrasjon"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT Autentiseringsfeil."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT Avvisning: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT Konfigurasjonsfeil"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Kritisk RT feil. Meldingen ble ikke lagret!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT Feil"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT Mottok mail (%1) fra seg selv."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT Mottok mail (%1) fra seg selv."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Selvbetjening / Lukkede Saker"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT oversikt"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT kunne ikke autentisere deg"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT kunne ikke finne kunde via sitt eksterne databaseoppslag"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT kunne ikke finne køen: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "msgstr "RT kunne ikke validere denne PGP signaturen. \\n" "
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT for %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT for %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT har behandlet dine kommandoer"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT er &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Den er distribuert under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT er &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Den er distribuert under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT tror denne meldingen kan være en returmail"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT vil behandle denne meldingen som om den var usignert"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT's epost kommandomodus krever PGP autentisering. Meldingen din var enten ikke signert, eller signaturen din kunne ikke bekreftes."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Ekte Navn"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "EkteNavn"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Referert til av"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Refererer til"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "RefererTil"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Redefiner"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Redefiner søket"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Last siden på nytt hvert %1 minutt."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Fjern AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Fjern Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Fjern Kunde"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Svar"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Svar på sak"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "SvarPÃ¥Sak"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Kunde"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Kundens epostaddresse"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Kunde(r)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "KundeAddresser"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Kunder"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Forespørsler skal være behandlet innen"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Reset"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Hjemme"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Løs"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Løs saknr #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Løst"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Svar til kunder"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Resultater"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Resultater per side"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Skriv Passord igjen"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Rettighet %1 kunne ikke finnes for %2 %3 in scope %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Rettighet Deligert"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Rettighet Tildelt"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Rettighet lastet"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Rettigheten kunne ikke trekkes tilbake"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Rettighet ikke funnet"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Rettighet ikke lastet."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Rettighet fjernet"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Rettigheter"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Rettigheter kunne ikke tildeles for %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Rettigheter kunne ikke trekkes tilbake for %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Roller"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootGodkjenning"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Lør."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Lagre Endringer"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Lage endringer"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip Opprettet"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip slettet"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scrip for %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrip som gjelder for alle køer"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Søk"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Søkekriteria"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Søk etter godkjenninger"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Sikkerhet:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "SeKø"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Velg en gruppe"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Velg en kø"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Velg en bruker"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Velg fleksifelt"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Velg gruppe"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Velg flere verdier"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Velg en verdi"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Velg kø"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Velg scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Velg mal"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Velg bruker"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "VelgFlere"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "VelgEnkelt"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Selvbetjening"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Send epost til alle overvåkere"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Send epost til alle overvåkere som \"kommentar\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Send epost til kunder og Cc"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Send epost til kunder og Cc som kommentar"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Sender en melding til kundene"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Send epost til eksplisit oppgitte Ccer og Bccer"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Send epost til Administrative Ccer"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Sender epost til de administrative Ccene som kommentar"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Sender epost til eieren"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Sep."
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "September"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Vis Resultater"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Vis godkjente forespørsler"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Vis basisinfo"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Vis avviste forespørsler"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Vis detaljer"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Vis ventende forespørsler"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Vis forespørsler som venter på andre godkjenninger"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Vis sakens private kommentarer"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Vis sakssammendrag"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "VisACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "VisScrip"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "VisMal"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "VisSak"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "VisSaksKommentarer"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Meld deg på som saksforespørrer eller sak/kø Cc"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Meld deg på som sak/kø AdminCc"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Signatur"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Logget inn som %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Enkel"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Dropp Meny"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Sorter"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Sorter nøkkel"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Sorter resultater etter"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "SorteringsRekkefølge"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Pauset"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Startside"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Startet"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Startdato '%1' kunne ikke tolkes"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Starter"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Starter Etter"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Startdato '%1' kunne ikke tolkes"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Stat"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Statusendring"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status endret fra %1 til %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "EndreStatus"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Stjel"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Stjålet fra %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Stjålet fra %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Emne"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Endre emne til %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Oppdater"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Send Arbeidsflyt"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Lykkes"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Søn."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperBruker"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "System"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Systemfeil"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "Systemfeil. Rettighet ikke tildelt."
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "Systemfeil. rettigheter ikke tildelt"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Systemfeil. Rettighet ikke tildelt."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Systemfeil. Rettighet ikke tildelt."
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Systemfeil. Kunne ikke tildele rettigheter."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Systemgrupper"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRollegruppe for intern bruk"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRENG"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Ta"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Tatt"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Mal"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Mal #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Mal slettet"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Kunne ikke finne mal"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Kunne ikke finne mal\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Mal tolket"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Maler"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Maler for %1\\n"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Verdien er allerede satt"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Det er ikke en verdi for dette fleksifeltet"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Det er den samme verdien"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Den primæren har allerede den rettigheten"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Den primæren er allerede en %1 for denne køen"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Den primæren er allerede en %1 for denne køen"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Den primæren er ikke en %1 for denne køen"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Den primæren er ikke en %1 for denne saken"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Den køen eksisterer ikke"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Denne saken har uløste avhengigheter"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Den brukeren har allerede den rettigheten"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Den brukeren eier allerede den saken"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Den brukeren finnes ikke"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Den brukeren er allerede priviligert"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Den brukeren er allerede upriviligert"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Denne brukeren er nå priviligert"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Dette brukeren er nå upriviligert"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Den brukeren er allerede upriviligert"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Den brukeren kan ikke eie saker i den køen"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Dette er ikke en numerisk id"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Detaljer"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "CCen til en sak"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Administrative CCer for en sak"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Kommentarer er lagret"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "De følgende kommandoene vil finne alle aktive saker i køen 'general' og sette deres prioritet til 99 hvis de ikke har blitt rørt de siste 4 timene:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "De følgende kommandoene ble ikke behandlet:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Den nye verdien har blitt satt."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Eieren av en sak"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Forespørren av en sak"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Disse kommentarene er generelt ikke synlig for brukeren"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Denne saken %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Dette verktøyet tillater brukeren å kjøre perlmoduler fra inni RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Denne transaksjonen ser ikke ut til å ha noe innhold"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Denne brukerens %1 høyst prioriterte saker"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "Denne brukerens 23 høys prioriterte saker"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Tor."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "Sak"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Sak # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "Sak $ %1 Jumbo oppdater: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Sak #%1 Jumbo oppdatering: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Sak #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Sak %1 opprettet i '%2' køen"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Sak %1 lastet\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Sak %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Sakshistorikk # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "SaksId"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Løst Sak"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Saks-vedlegg"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Saks-innhold"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Sakens innholdstype"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Saken kunne ikke opprettes på grunn av en intern feil"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Sak opprettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Saksopprettelse feilet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Sak slettet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Saksid ikke funnet"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "Sak drept"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Sak ikke funnet"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Saksstatus endret"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Saksovervåkere"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Saker %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Saker %1 av %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Saker fra %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Saker som er avhengige av denne godkjennelsen:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Tid Igjen"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Arbeidstid"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Tid igjen"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tid å vise"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Arbeidstid"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "TidIgjen"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "ArbeidsTid"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "For å generere en diff av denne bekreftelsen:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "For å genere en diff av denne bekreftelsen"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Fortalt"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transaksjon"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transaksjon %1 slettet"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transaksjon Opprettet"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaction->Create kunne ikke, siden du ikke spesifiserte en saksid"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transaksjoner er låst"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Prøver å slette en rettighet: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Tir."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Type"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Uimplementert"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Unix login"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "UnixBrukerNavn"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Ukjent InnholdsFormatering %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ubegrenset"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Upriviligert"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Ikke tatt"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Oppdater"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Oppdater ID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Oppdater Type"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Oppdater alle disse sakene samtidig"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Oppdater epost"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Oppdater navn"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Oppdatering ikke lagret."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Oppdater valgte saker"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Oppdater signatur"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Oppdater sak"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Ooppdater sak # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Oppdater sak #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Oppdater sak #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Oppdateringstype var verken korrespondanse eller kommentar."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Oppdatert"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Bruker %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Bruker %1 Passord: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Brukeren '%1' ble ikke funnet"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Brukeren '%1' ble ikke funnet"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Bruker Definert"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "BrukerID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "BrukerId"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Brukerrettigheter"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Bruker kunne ikke opprettes: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Bruker opprettet"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Brukerdefinerte grupper"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Bruker informert"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Brukervisning"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Brukernavn"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Brukere"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Brukere som treffer søkekriteria"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "KøVerdi"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Verdier"
-
-#: NOT FOUND IN SOURCE
-msgid "VrijevormEnkele"
-msgstr "VrijevormEnkele"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Overvåk"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "OvervåkSomAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Overvåker lastet"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Overvåkere"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebFormatering"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Ons."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "NÃ¥r en sak har blitt godkjent av alle godkjennere, legg til korrespondanse for den opprinnelige saken"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "NÃ¥r en sak har blitt godkjent av en godkjenner, legg til korrespondanse til den orginale saken"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "NÃ¥r er sak er opprettet"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Når er godkjennelsessak blir opprettet, gi melding til Eier og AdminCc om saken som venter på deres godkjenning"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "NÃ¥r noe skjer"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Når en sak er løst"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Når en sak får ny eier"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Når en sak flyttes til en ny kø"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "NÃ¥r en saks status endres"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "NÃ¥r brukerdefinerte forhold intreffer"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "NÃ¥r kommentarer kommer inn"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "NÃ¥r korrespondanse kommer inn"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Arbeid"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "ArbeidsTelefon"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Arbeidet"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Du eier allerede denne saken"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Du er ikke en autorisert bruker"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Du kan bare omfordele saker som du eier eller som ikke har en eier"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Du har ikke tilgang til å se den saken.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Du fant %1 saker i %2 køen"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr ""
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Du har ikke tilgang til å opprette saker i den køen."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Du kan ikke opprette forespørsler i den køen."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Velkommen tilbake"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Dine %1 forespørsler"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Din RT administrastor har feilkonfigurert mail aliasene som kaller RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Din forespørsel har blitt godkjent av %1. Andre godkjennelser avventer kanskje fortsatt"
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Din forespørsel ble godkjent."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Din forespørsel ble avvist"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Din forespørsel ble avvist"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Ditt brukernavn/passord er ugyldig"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Zip"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[ikke noe emne]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "som tildelt til %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "lukket"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "inneholder"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "innhold"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "innholdstype"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "korrespondanse (sansynligvis) ikke sendt"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "korrespondanse sendt"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dager"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "død"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "slett"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "slettet"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "treffer ikke"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "inneholder ikke"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "lik som"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "usant"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "filnavn"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "større enn"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "gruppe '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "timer"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "id"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "er"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "er ikke"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "mindre enn"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "treffer"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minutter"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "endringer\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "måneder"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "ny"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "ingen verdi"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ingen"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ikke lik som"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "ikkelik"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "Ã¥pen"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "personlig gruppe '%1' for bruker '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "kø %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "avvist"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "løst"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sek"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "pauset"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "system %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "systemgruppe '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "den kallende komponenten oppga ikke hvorfor"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "sak #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "sant"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "ubeskrevet gruppe %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "ubeskrevet gruppe %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "bruker %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "uker"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "med malen %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "Ã¥r"
-
diff --git a/rt/lib/RT/I18N/pl.po b/rt/lib/RT/I18N/pl.po
deleted file mode 100644
index 3faa4ec..0000000
--- a/rt/lib/RT/I18N/pl.po
+++ /dev/null
@@ -1,6436 +0,0 @@
-# Copyright (c) 2002 Jesse Vincent <jesse@bestpractical.com>
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 3.2.2\n"
-"POT-Creation-Date: 2007-01-18 11:36+0800\n"
-"PO-Revision-Date: 2005-01-18 02:00+0800\n"
-"Last-Translator: Piotr Åšliwa <piotr.sliwa@comarch.pl>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "Nr"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 nr%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %3 %2 %7, %4:%5:%6"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 zostały dodane"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "przed %1 %2"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 zostało zamienione na %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 zostało usunięte"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%1 %2 z groupy %3"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 wg szablonu %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 tego zgłoszenia\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) przez %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (Niezmienione)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "wyświetlone %1 - %2"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - warunek przejścia na %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Status wyjściowy zaktualizowany na STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Określ moduł działań, którego chcesz użyć"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Określ moduł warunków, którego chcesz użyć"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Określ moduł wyszukiwania, którego chcesz użyć"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 Wszelkie prawa zastrzeżone 1996-%3 %4"
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "Skrypt %1 został załadowany"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "dodano %1 jako wartość dla %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "do określenia aliasów dla %1 wymagany numer zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "do określenia aliasów dla %1 wymagany numer zgłoszenia "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "do określenia aliasów dla %1 wymagany numer zgłoszenia (od %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "Wydaje się, że %1 to obiekt lokalny, ale nie udało się wyszukać go w bazie danych"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 przez %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 zmieniło się z %2 na %3"
-
-# Nie jestem pewien!
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "kopia %1"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "nie udało się ustawić %1 na %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 nie udało się rozpocząć transakcji (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 nie udało się ustawić statusu na zamknięty. Baza danych RT może być niespójna"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 crĂŠĂŠ(e)"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 supprimĂŠ(e)"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "%1 zgłoszeń o najwyższym priorytecie, których jestem właścicielem"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 zgłoszeń o najwyższym priorytecie, których właścicielem jest użytkownik..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 zgłoszeń o najwyższym priorytecie zarejestrowanych przez użytkownika..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 jest narzędziem umożliwiającym obsługę zgłoszeń z zewnętrznej aplikacji do sporządzania wykazów, takiej jak cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 nie jest już %2 dla tej kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 nie jest już %2 dla tego zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 nie jest już wartością pola %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 nie jest aktualnie obowiÄ…zujÄ…cym Id kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 matches"
-msgstr "%1 pasuje"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 most recently updated articles"
-msgstr "%1 ostatnio zaktualizowanych artykułów"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 newest articles"
-msgstr "%1 najnowszych artykułów"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 zgłoszeń bez właściciela"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 nie zostało wyświetlone"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 objets"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 - uprawnienia"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 udało się"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 to nieznany typ Id wiadomości ($MessageId)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 to nieznany typ dla %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 a ĂŠtĂŠ crĂŠĂŠ sans utilisateur courant\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 zamknie wszystkie części zamykanego zgłoszenia grupowego."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 zamknie bazę lokalną, jeśli jest powiązana z podłączonym zgłoszeniem (lub jest jego częścią)"
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "Zapisane zapytania %1"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: nie określono załącznika"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' to nieprawidłowa wartość statusu"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' n'est pas une action connue. "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Zaznacz pole, aby usunąć element z grupy)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Zaznacz pole, aby usunąć skrypt)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Zaznacz pole, aby usunąć)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Zaznacz pola, aby usunąć)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Zaznacz pola przy odbiorcach na liście, aby zablokować wysyłanie powiadomień)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Zaznacz pola przy odbiorcach na liście, aby uruchomić wysyłanie powiadomień)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Wprowadź numery lub adresy URL zgłoszeń, oddzielone spacjami)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Enter ticket ids or URLs, seperated with spaces)"
-msgstr "(Wprowadź numery lub adresy URL zgłoszeń, oddzielone spacjami)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Jeśli pozostawisz puste, domyślnie zostanie ustawione na %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Non renseignĂŠ)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Brak pól definiowanych przez użytkownika)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Brak członków grupy)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Brak skryptów)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Brak szablonów)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Aucun)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę adresów mailowych oddzielonych przecinkami, umieszczonych w polu BCC.<b> Nie zmienia</b> tego, kto będzie otrzymywał informacje o stanie zgłoszenia)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę adresów mailowych oddzielonych przecinkami, umieszczonych w polu BCC. <b>Nie zmienia</b> tego, kto będzie otrzymywał informacje o stanie zgłoszenia)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę administracyjnych adresów mailowych oddzielonych przecinkami. Te osoby <b> będą</b> otrzymywać informacje o stanie zgłoszenia)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę adresów mailowych oddzielonych przecinkami. <b>Nie</b> zmienia tego, kto będzie otrzymywał informacje o stanie zgłoszenia)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę adresów mailowych oddzielonych przecinkami. <b>Nie</b> zmienia tego, kto będzie otrzymywał informacje o stanie zgłoszenia)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Wysyła kopię zgłoszenia na listę adresów mailowych oddzielonych przecinkami. Te osoby <b>będą</b> otrzymywać informacje o stanie zgłoszenia)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(Skorzystaj z tych pól jeśli wybrano 'Definiowany przez użytkownika' w atrybutach warunku lub operacji)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(pusta)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no Summary)"
-msgstr "(brak streszczenia)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(brak listy użytkowników)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no name)"
-msgstr "(brak nazwy)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(brak tematu)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(brak wartości)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(aucune valeur)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(tylko jedno zgłoszenie)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(oczekuje na zatwierdzenie)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(oczekuje na innÄ… KolekcjÄ™)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(oczekuje na inne zgłoszenia)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(groupe du demandeur)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(wymagana)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(nienazwany)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "25 zgłoszeń o najwyższym priorytecie, których właścicielem jest użytkownik..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "25 zgłoszeń o najwyższym priorytecie zarejestrowanych przez użytkownika..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Nowe zgłoszenie w\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Pusty szablon"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE SupprimĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE ChargĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "l'ACE n'a pu ĂŞtre supprimĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "l'ACE n'a pu ĂŞtre trouvĂŠ"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "Nie udało się odnaleźć ACE"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACE mogą być tylko utworzone lub usunięte."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Przerwanie operacji, aby uniknąć niezamierzonych modyfikacji zgłoszenia.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Użytkownika"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Kontrola dostępu"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Operacja"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Operacja %1 nie została odnaleziona"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Operacja została zatwierdzona"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Operacja została przygotowana..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Dodaj"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Dodaj AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Dodaj Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Dodaj kryterium"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Dodaj więcej plików"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "Ajouter Ä‚Å tape suivant"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Dodaj zgłaszającego"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Dodaj wartość"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "Ajouter une sĂŠlection de mots clĂŠ Ă  cette queue"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Dodaj nowy skrypt globalny"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Dodaj skrypt dla tej kolejki"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Dodaj skrypt, który będzie dotyczył wszystkich kolejek"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Dodaj kolejne kryterium"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Dodaj komentarze lub odpowiedzi do wybranych zgłoszeń"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Dodaj członków grupy"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Dodaj nowych obserwatorów"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "Dodaj następny status"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Został dodany zarządzający %1 dla tej kolejki"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Został dodany zarządzający %1 dla tego zgłoszenia"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Adres 1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Adres 2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Administracja komentarzami"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Administracja korespondencjÄ…"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Administracja kolejkami"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Administracja użytkownikami"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Globalna konfiguracja - administracja"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Grupy - administracja"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Administracja kolejkami . podstawowe informacje"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "AdminAllPersonalGroups"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminComment"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminCorrespondence"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "AdminPolamiUżytk"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "AdminCustomFields"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGroup"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGroupMembership"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminOwnPersonalGroups"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminQueue"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminUsers"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Administracyjne Cc"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "Administrateurs"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Zaawansowane"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Wyszukiwanie zaawansowane"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search Criteria"
-msgstr "Kryteria wyszukiwania zaawansowanego"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "po"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Wiek"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "Alias pour"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Wszystkie warunki poprawności spełnione"
-
-#: NOT FOUND IN SOURCE
-msgid "All Classes"
-msgstr "Wszystkie klasy"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Wszystkie pola definiowane przez użytkownika"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Wszystkie kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Zawsze wysyła wiadomość do zgłaszających niezależnie od nadawcy wiadomości"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "S'applique Ă "
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Zastosuj"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Zastosuj zmiany"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Potwierdzenia"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Potwierdzenie #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Potwierdzenie #%1: Uwagi nie zostały zapisane z powodu błędu systemu"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Potwierdzenie #%1: Uwagi zostały zapisane"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Szczegóły zatwierdzenia"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Zatwierdzone"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Odrzucone"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Diagram potwierdzenia"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Zatwierdź"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Uwagi zatwierdzajÄ…cego: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Kwi."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "Kwiecień"
-
-#: NOT FOUND IN SOURCE
-msgid "Are you sure you want to delete this article?"
-msgstr "Czy jestes pewien, że chcesz usunąć ten artykuł?"
-
-#: NOT FOUND IN SOURCE
-msgid "Article #%1 deleted"
-msgstr "Artykuł #%1 został usunięty"
-
-#: NOT FOUND IN SOURCE
-msgid "Article #%1: %2"
-msgstr "Artykuł #%1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Article not found"
-msgstr "Artykuł nie został odnaleziony"
-
-#: NOT FOUND IN SOURCE
-msgid "Articles"
-msgstr "Artykuły"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "RosnÄ…co"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Fixer et supprimer les champs personnalisĂŠs"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "FixerChampsPersonnalisĂŠs"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Załączniki"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Załącz plik"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Plik został załączony"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Nie udało się dodać załącznika '%1'"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Załącznik został utworzony"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Nazwa pliku załącznika"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Załączniki"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Atrybut usunięty"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Sie."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "Sierpień"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "AuthSystem"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Automatyczna odpowiedź"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Automatyczna odpowiedź wysyłana do zgłaszających"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "Automatyczna odpowiedź wysyłana do zgłaszających"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "Dostępne kolumny"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Niewłaściwy podpis PGP: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Niewłaściwy numer id załącznika. Nie udało się wyszukać załącznika '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Niewłaściwe dane w %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Niewłaściwy numer transakcji dla załącznika. %1 należy zastąpić przez %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Podst. informacje"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Pamiętaj, aby zapisać zmiany"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "przed"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Rozpocznij zatwierdzanie"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Binaire"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Pusty"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "Adres URL do zapamiętania dla tego wyszukiwania"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "URL do zapamiętania"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Krótkie nagłówki"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Hurtowa aktualizacja zgłoszeń"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Nie można zmienić użytkowników systemu"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Czy ten zarzÄ…dzajÄ…cy widzi tÄ™ kolejkÄ™"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Nie można wprowadzić wartości pola bez nazwy"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Nie można połączyć zgłoszenia z tym samym zgłoszeniem"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Niemożliwe połączenie w jedno zgłoszenie"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Niemożliwe jest zapisanie tego zapytania"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Niemożliwe określenie jednocześnie podstaw i celu"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Niemożliwe utworzenie użytkownika: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Zmień hasło"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Tout vĂŠrifier"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Zaznacz pole, aby usunąć"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Zaznacz pole, aby odebrać uprawnienie"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Zgłoszenia podrzędne"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Miasto"
-
-#: NOT FOUND IN SOURCE
-msgid "Class"
-msgstr "Klasa"
-
-#: NOT FOUND IN SOURCE
-msgid "Class Name"
-msgstr "Nazwa klasy"
-
-#: NOT FOUND IN SOURCE
-msgid "Class is"
-msgstr "KlasÄ… jest"
-
-#: NOT FOUND IN SOURCE
-msgid "Classes"
-msgstr "Klasy"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "Tout effacer"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Zamknięte"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Zamknięte zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Demandes closes"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Zamknięte zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Niezrozumiałe polecenie!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Komentuj"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Adres komentarza"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Komentarz nie został zapisany"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Komentarz do zgłoszeń"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "CommentOnTicket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Komentarze"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Komentarze (które nie zostaną wysłane zgłaszającym)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Komentarze (które nie zostały wysłane zgłaszającym)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Komentarze dotyczÄ…ce %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Uwagi dotyczące użytkownika"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Komentarze zostały dodane"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "Potwierdzenie wysłane do zgłaszającego"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Ograniczenia kompilacji"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Warunek"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Warunek zgadza siÄ™ z ..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Warunek nie został odnaleziony"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Konfiguracja"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Potwierdź"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "ContactInfoSystem"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Nie udało się rozpoznać daty modyfikacji'%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Zawartość"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Typ zawartości"
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "Le groupe n'a pas pu ĂŞtre crĂŠĂŠ"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "Kopiuj"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Korespondencja"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Adres korespondencyjny"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Korespondencja została dodana"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Korespondencja nie została zapisana"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Nie udało się wprowadzić nowej wartości pola dla zgłoszenia."
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "La valeur de champ personnalisĂŠ n'a pas pu ĂŞtre ajoutĂŠe. %1"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Nie udało się zmienić właściciela."
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Nie udało się utworzyć pola definiowanego przez użytkownika"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Nie udało się utworzyć grupy"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Nie udało się utworzyć szablonu: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Nie udało się utworzyć zgłoszenia. Nie określono kolejki"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Nie udało się utworzyć użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "L'observateur n'a pas pu ĂŞtre crĂŠe pour le demandeur"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Nie udało się wyszukać zgłoszenia o numerze %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Nie udało się wyszukać grupy %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Nie udało się wyszukać ani utworzyć tego użytkownika"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Nie udało się wyszukać tego zarządzającego"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Nie udało się wyszukać użytkownika %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Impossible de charger le champ personnalisĂŠ %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Nie udało się załadować grupy"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Nie udało się przypisać tego zarządzającego jako %1 dla tej kolejki"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Nie udało się przypisać tego zarządzającego jako %1 dla tego zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Nie udało się usunąć tego zarządzającego jako %1 dla tej kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Nie udało się usunąć tego zarządzającego jako %1 dla tego zgłoszenia"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Niemożliwe było zapisanie danych użytkownika"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Nie udało się dodać nowego członka grupy"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Nie udało się utworzyć transakcji: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Nie udało się ustalić, co zrobić na podstawie odpowiedzi z gpg\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Nie udało się wyszukać grupy\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Nie udało się wyszukać wiersza"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Nie udało się wyszukać tego zarządzającego"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Nie udało się wyszukać tej wartości"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "L'observateur n'a pas pu ĂŞtre trouvĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Nie udało się wyszukać użytkownika\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Nie udało się załadować %1 z bazy użytkowników.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "Nie udało się załadować klasy %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Nie udało się załadować pola %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "KeywordSelects n'a pas pu ĂŞtre chargĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Nie udało się załadować pliku konfiguracji RT '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Nie udało się załadować skryptów"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Nie udało się załadować grupy %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Nie udało się załadować połączenia"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Impossible de charger l'objet %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Nie udało się załadować kolejki"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr " Nie udało się załadować kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Nie udało się załadować skryptu"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Nie udało się załadować szablonu"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Nie udało się załadować użytkownika (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Nie udało się załadować zgłoszenia '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Kraj"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Utwórz"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Utwórz zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a Class"
-msgstr "Utwórz klasę"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Utwórz pole definiowane przez użytkownika"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Utwórz pole dla kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Utwórz pole, które dotyczy wszystkich kolejek"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Utwórz nowe pole definiowane przez użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new article"
-msgstr "Utwórz nowy artykuł"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Utwórz nowy skrypt globalny"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Utwórz nową grupę"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Utwórz nową grupę prywatną"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Utwórz nową kolejkę"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Utwórz nowy skrypt"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Utwórz nowy szablon"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Utwórz nowe zgłoszenie"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Utwórz nowego użytkownika"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Utwórz kolejkę"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Utwórz kolejkę nazwaną"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Utwórz zgłoszenie"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Utwórz skrypt dla kolejki %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Utwórz szablon"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Utwórz zgłoszenie"
-
-#: NOT FOUND IN SOURCE
-msgid "Create an article"
-msgstr "Utwórz artykuł"
-
-#: NOT FOUND IN SOURCE
-msgid "Create an article in class..."
-msgstr "Utwórz artykuł w ramach klasy..."
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Echec Ă  la crĂŠation de: %1 / %2 / %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Echec Ă  la crĂŠation de: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Utwórz nowe zgłoszenia na podstawie szablonu tego skryptu"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Utwórz zgłoszenie"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Utwórz zgłoszenia w tej kolejce"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Utwórz, usuń i zmodyfikuj pola def. przez użytkownika"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Utwórz, usuń i zmodyfikuj kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Utwórz, usuń i zmodyfikuj członków którejś z prywatnych grup użytkownika"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr " Utwórz, usuń i zmodyfikuj członków prywatnych grup"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Utwórz, usuń i zmodyfikuj użytkowników"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CreateTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Zarejestrowane"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Pole %1 zostało utworzone"
-
-#: NOT FOUND IN SOURCE
-msgid "Created by"
-msgstr "Utworzony przez"
-
-#: NOT FOUND IN SOURCE
-msgid "Created during"
-msgstr "Utworzony podczas"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Szablon %1 został utworzony"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Zgłaszający"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Aktualne powiÄ…zania"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Relationships"
-msgstr "Aktualne powiÄ…zania"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Aktualne skrypty"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Aktualni członkowie"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Aktualne uprawnienia"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Aktualne kryteria wyszukiwania"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Aktualni obserwatorzy"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Pole def. przez użytkownika #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Pola def. przez użytkownika"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Champs personnalisĂŠs pour %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Treść procedury czyszczenia definiowana przez użytkownika"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Treść procedury definiowana przez użytkownika"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Warunek definiowany przez użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Pole definiowane przez użytkownika %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "Le champ personnalisĂŠ %1 ne s'applique pas Ă  cet objet"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Pole %1 definiowane przez użytkownika ma wartość."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Brak wartości w polu %1 definiowanym przez użytkownika."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Nie udało się wyszukać pola %1 definiowanego przez użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Pole definiowane przez użytkownika zostało usunięte"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Nie udało się wyszukać pola definiowanego przez użytkownika"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Nie udało się wyszukać wartości %1 dla pola %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Wartość pola zmieniła się z %1 na %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Nie można usunąć wartości pola"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Nie udało się wyszukać wartości pola"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Wartość pola została usunięta"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "Pole"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Erreur de donnĂŠes"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Daty"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Gru."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Grudzień"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Domyślnie wybierany szablon odpowiedzi wysyłanej automatycznie"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Domyślnie wybierany szablon odpowiedzi wysyłanej automatycznie"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Domyślna kolejka"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Domyślny zgłaszający"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Domyślnie wybierany szablon komentarza administratora"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Domyślnie wybierany szablon korespondencji administratora"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Domyślnie wybierany szablon korespondencji"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Domyślnie wybierany szablon transakcji"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Domyślnie: %1/%2 zmieniane z \"%3\" na \"%4\""
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Przekaż uprawnienia"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Przekaż specyficzne uprawnienia, które zostały Ci przyznane"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegateRights"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Przekazywanie uprawnień"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Usuń"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Usuń szablon"
-
-#: NOT FOUND IN SOURCE
-msgid "Delete article #%1"
-msgstr "Usuń artykuł #%1"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Usuń zaznaczone skrypty"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Usuń zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "DeleteTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Usunięcie tego obiektu mogło spowodować brak spójności"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Usunięcie tego obiektu spowoduje brak spójności"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Usunięcie tego obiektu naruszy spójność"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Effacer cet objet violerait l'intĂŠgritĂŠ rĂŠfĂŠrentielle"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "Effacer cet objet violerait l'intĂŠgritĂŠ rĂŠfĂŠrentielle, c'est serait facheux!"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Odrzucić"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Zgłoszenia zależne"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Zależności"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Zależność %1 dodana"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Zależność %1 usunięta"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Zależność od %1 dodana"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Zależność od %1 usunięta"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Zależy od"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "ZależyOd"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "MalejÄ…co"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Opis zgłoszenia"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Opis"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Szczegóły"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Wyświetl"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Wyświetl Listę Praw Dostępu"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Wybierz kolumny"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Wyświetl szablony skryptów dla tej kolejki"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Wyświetl skrypty dla tej kolejki"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Tryb wyświetlania"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Wyświetl zgłoszenie #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "Rozpowszechniane na mocy wersji 2 licencji GNU GPL <a href=\"http://www.gnu.org/copyleft/gpl.html\">."
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Zrób cokolwiek i wszystko"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Nie odświeżaj tej strony."
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Nie wyświetlaj wyników wyszukiwania"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Pobierz "
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "TĂŠlĂŠcharger en tant que fichier dĂŠlimitĂŠ par tabulations"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Termin realizacji"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Termin realizacji '%1' nie może być rozpoznany"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "BÅÄ„D: Nie udaÅ‚o siÄ™ zaÅ‚adować zgÅ‚oszenia: '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Edytuj"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "Modifier les conditions"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Edytuj pola dla kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Custom Fields for Class %1"
-msgstr "Edytuj pola dla klasy %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Edytuj powiÄ…zania"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Zmodyfikuj zapytanie"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Relationships"
-msgstr "Edytuj powiÄ…zania"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Edytuj szablony kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Modifier les mots clĂ"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Edytuj skrypty"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Edytuj szablony systemowe"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Edytuj szablony dla %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "EdytujZapisaneZapytania"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for Class %1"
-msgstr "Edytuj konfiguracjÄ™ klasy %1"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Edytuj konfiguracjÄ™ kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Edytuj konfigurację użytkownika %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Edytuj pole %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Edytuj listę członków grupy %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Edytuj listę członków prywatnej grupy %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Edytuj szablon %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Podstawy lub cel muszą być określone"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "e-mail"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Używany adres e-mail "
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "adres e-mail"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "kodowanie e-maila"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled (Unchecking this box disables this Class)"
-msgstr "Udostępniona (nieoznaczenie tego pola spowoduje, że klasa będzie niedostępna)"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Udostępnione (nieoznaczenie tego pola spowoduje, że pole będzie niedostępne)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Udostępniona (nieoznaczenie tego pola spowoduje, że grupa będzie niedostępna)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Udostępniona (nieoznaczenie tego pola spowoduje, że kolejka będzie niedostępna)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Classes"
-msgstr "Dostępne klasy"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Dostępne pola definiowane przez użytkownika"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Dostępne kolejki"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Dostępny status %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Statut actif: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Enter Articles or URIs to link Articles to. Seperate multiple entries with spaces."
-msgstr "Aby powiązać artykuły, wprowadź artykuły lub URI oddzielone spacjami."
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Wprowadzanie wielu wartości"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Aby powiązać obiekty, wprowadź URI obiektów oddzielone spacjami."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Wprowadzanie jednej wartości"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Aby powiązać kolejki, wprowadź URI kolejek oddzielone spacjamii."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Aby powiązać zgłoszenia, wprowadź numery zgłoszeń lub URI oddzielone spacjami."
-
-#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
-msgstr "Aby powiązać zgłoszenia, wprowadź numery zgłoszeń lub URI oddzielone spacjami."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Saisir %1 valeurs maximum"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "BÅ‚Ä…d"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Erreur Ă  l'ajout de l'observateur"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Błąd w określeniu parametrów kolejki->Dodaj Obserwatora"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Błąd w określeniu parametrów kolejki -> Usuń Obserwatora"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Błąd w określeniu parametrów kolejki -> Usuń Obserwatora"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Błąd w określeniu parametrów zgłoszenia -> Dodaj Obserwatora"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr " Błąd w określeniu parametrów zgłoszenia -> Usuń Obserwatora"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Błąd w określeniu parametrów Zgłoszenia-> Usuń Obserwatora"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "Eskaluj zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Estimate"
-msgstr "Estimer"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "Szacowane"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Wszyscy"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Przykład:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "Zewnętrzne AuthId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternalContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Informacje dodatkowe"
-
-#: NOT FOUND IN SOURCE
-msgid "Extract article from ticket #%1"
-msgstr "Wydziel artykuł ze zgłoszenia #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Extract article from ticket #%1 into class %2"
-msgstr "Wydziel artykuł ze zgłoszenia #%1 w klasie %2"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Nie udało się wyszukać członków grupy 'Uprawnieni'"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Nie udało się wyszukać członków grupy 'Nieuprawnieni'"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Nie udało się załadować modułu %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Lut."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Luty"
-
-# Nie jestem pewien: jedno słowo!
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Nazwa pliku"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Saisir dans plusieurs champs de type texte"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Saisir dans un champ de type texte"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Saisir dans %1 champs de type texte maximum"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Koniec"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Końcowy priorytet"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "Końcowy priorytet"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Wyszukaj grupę, której"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Trouver les groupes dont"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Wyszykaj nowe/otwarte zgłoszenia"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Wyszukaj użytkowników, których"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Wyszukaj zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Zakończ zatwierdzanie"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Pierwsze"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Pierwsza strona"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Ble ble"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "ble ble"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "WymuÅ› zmianÄ™"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Wyszukano %1 zgłoszeń"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Wyszukany obiekt"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "FormulaireLibre"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FreeformMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FreeformSingle"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Pt."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Pełne nagłówki"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "Pobierz szablon z pliku"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Uzyskanie aktualnego użytkownika na podstawie podpisu pgp\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Nadany dla %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Globalna"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Champs personnalisĂŠs globaux"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "Mots clĂŠ globaux"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Skrypty globalne"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Szablon globalny: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Pobierz"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Start!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Poprawny podpis pgp dla %1\\n "
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Przejdź do strony"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Przejdź do zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Grand"
-msgstr "Accorder"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Grupa"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Grupa %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Uprawnienia grupowe"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Grupa ma już członka"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "Le groupe n'a pas pu ĂŞtre crĂŠĂŠ"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Nie udało się utworzyć grupy: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Grupa została utworzona"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Nie ma takiego członka grupy"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Nie udało się wyszukać grupy"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Nie udało się wyszukać grupy.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Grupa nie została określona.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grupy"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Nie można przypisac grup jako członków tych grup"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Groupes correspondant au critère de recherche"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Cette utilisateur appartient aux groupes"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Witaj!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Witaj, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Historia"
-
-#: NOT FOUND IN SOURCE
-msgid "History for article #%1"
-msgstr "Historia artykułu #%1"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "Historique du groupe %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "Historique de l'utilisateur %1"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Tel. domowy"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Start"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Posiadam %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "I have [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Nr "
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identyfikacja użytkownika"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Jeśli potwierdzenie zostało odrzucone, odrzuć oryginał i usuń oczekujące potwierdzenia"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "Jeśli zgłaszający nie został określony, twórz zgłoszenia dla tego użytkownika."
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "Jeśli kolejka nie została określona, twórz zgłoszenia w tej kolejce."
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Jeśli ta aplikacja została zachwiana, obcy lokalny użytkownik mógł używać tej aplikacji, aby uzyskać do RT dostęp na prawach administratora"
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Jeśli zmodyfikowałeś coś powyżej"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Niedopuszczalna wartość dla %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Image"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Pole, które nie może być powielane"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled classes in listing."
-msgstr "Uwzględnij na liście nieaktywne klasy"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Uwzględnij na liście nieaktywne pola."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Uwzględnij na liście nieaktywne grupy."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Uwzględnij na liście nieaktywne kolejki."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Uwzględnij w wyszukiwaniu nieaktywnych użytkowników."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "PoczÄ…tkowy priorytet"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "PoczÄ…tkowy priorytet"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Błąd na wejściu"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "Votre intĂŠret est notĂŠ"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Błąd wewnętrzny"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Błąd wewnętrzny: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Nieprawidłowy typ grupy"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Nieprawidłowe uprawnienie"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Type invalide"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Nieprawidłowe dane"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Nieprawidłowy właściciel. Domyślnie 'nikt'"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Nieprawidłowa kolejka"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Nieprawidłowe uprawnienie"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Nieprawidłowa wartość dla %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Nieprawidłowa wartość pola"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Nieprawidłowy status"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Bardzo ważne, aby nieuprawnieni użytkownicy nie posiadali uprawnień do uruchomienia tej aplikacji."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Sugeruje się, aby utworzyć nieuprawnionego użytkownika w odpowiedniej grupie o odpowiednim dostępie do RT, aby uruchomić tę aplikację"
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Wymaga kilku argumentów:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Pozycje oczekujÄ…ce na moje zatwierdzenie"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Sty."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Styczeń"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Dołącz albo opuść tę grupę"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Lip."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Lipiec"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Wszystko"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Cze."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Czerwiec"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "SÅ‚owo kluczowe"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Język"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Język"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Ostatnie"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Ostatnia modyfikacja"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Ostatnio modyfikowane"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Ostatnio powiadomiony"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Ostatnio zaktualizowane"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "OstAktualiz"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "OstAktPrzez"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Pozostały"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Udostępnij temu użytkownikowi RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Przydziel uprawnienia temu użytkownikowi"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Ograniczenie właściciela do %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Ograniczenie kolejki do %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "Połączenie już istnieje"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Nie udało się utworzyć połączenia"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Połączenie zostało utworzone (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Połączenie zostało usunięte (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Połączenie nie zostało odnalezione"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Powiąż zgłoszenie #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Lier au ticket %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "PowiÄ…zania"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Załaduj"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Załaduj zapisane zapytanie:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Załadowane moduły PERL"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Lokalizacja"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Ścieżka logowania %1 nie została odnaleziona lub nie mógła być zapisana.\\n Nie udało się uruchomić RT"
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Zalogowano jako %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Zaloguj siÄ™"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Wyloguj siÄ™"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "Faire attention aux types diffĂŠrents"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Wprowadź właściciela"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Wprowadź status"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Wprowadź termin realizacji"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Wprowadź datę zamknięcia"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Wprowadź datę rozpoczęcia realizacji"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Wprowadź datę rozpoczęcia realizacji"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Wprowadź datę wpływu"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Wprowadź priorytet"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Wprowadź kolejkę"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Wprowadź temat"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "GĂŠrer les champs personnalisĂŠs et leur valeurs"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Administracja grupami i członkami grup"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Administracja właściwościami i konfiguracją, które dotyczą wszystkich kolejek"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Administracja kolejkami i specyficznymi właściwościami kolejek"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Administracja użytkownikami i hasłami"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Marzec"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Maj"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Maj"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "Członek %1 dodany"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "Członek %1 usunięty"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Członek grupy został dodany"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Członek grupy został usunięty"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Członek grupy nie został usunięty"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Członek grupy"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "CzłonekGrupy"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Członkowie grup"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "Członkowstwo w %1 dodane"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "Członkowstwo w %1 usunięte"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "Affiliations"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "Affiliations de l'utilisateur %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "Udało się połączyć"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Nie udało się połączyć. Nie udało się ustawić efektywnego Id"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Połączyć w"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Połączono z %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Wiadomość"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Wiadomość nie mogła zostać zapisana"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Wiadomość zapisana"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Powiadomienie o tym zgłoszeniu nie zostanie wysłane do..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Brakujący klucz główny?: %1:"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Tel. komórkowy"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Tel. komórkowy"
-
-#: NOT FOUND IN SOURCE
-msgid "Modified"
-msgstr "Zmieniony"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify"
-msgstr "Zmodyfikuj"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modyfikuj Listę Praw Dostępu"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Modyfikuj pole %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Modifier les champs personnalisĂŠs qui s'appliquent Ă  tous les %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Modyfikuj pola, które dotyczą wszystkich kolejek"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Zmodyfikuj uprawnienia grup"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Modyfikuj Członków"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Zapisz uprawnienia"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modyfikuj szablony skryptów dla tej kolejki"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modyfikuj skrypty dla tej kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Modifier ACLs système"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Modyfikuj szablon %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Zmodyfikuj uprawnienia użytkowników"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modyfikuj pole dla kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Modyfikuj pole, które dotyczy wszystkich kolejek"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modyfikuj skrypt dla kolejki %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modyfikuj skrypt, który dotyczy wszystkich kolejek"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify article #%1"
-msgstr "Modyfikuj artykuł #%1"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Modifier les objets associĂŠs Ă  %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Modifier les dates pur n°%1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modyfikuj daty dla #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modyfikuj daty dla zgłoszenia # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modyfikuj globalne uprawnienia grupowe"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modyfikuj globalne uprawnienia grupowe"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Modifier les droits globaux des groupes"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Modifier les droits globaux des utilisateurs"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Modyfikuj globalne skrypty"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modyfikuj globalne uprawnienia użytkowników"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modyfikuj globalne uprawnienia użytkowników."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Modyfikuj grupowe dane pośrednie lub usuń grupę"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Modyfikuj uprawnienia grupowe dla pola %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modyfikuj uprawnienia grupowe dla grupy %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modyfikuj uprawnienia grupowe dla kolejki %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Modyfikuj listę członków tej grupy"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modyfikuj konto w RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modyfikuj użytkowników powiązanych z kolejką %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modyfikuj użytkowników powiązanych ze zgłoszeniem %1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modyfikuj skrypty dla kolejki %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modyfikuj skrypty, które dotyczą wszystkich kolejek"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Edytuj szablon %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modyfikuj szablony, które dotyczą wszystkich kolejek"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modyfikuj grupÄ™ %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modyfikuj obserwatorów kolejki"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modyfikuj użytkownika %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modyfikuj zgłoszenie %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modyfikuj zgłoszenie %1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modyfikuj zgłoszenia"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Modifier les droits utilisateurs pour le champ personnalisĂŠ %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modyfikuj uprawnienia użytkowników dla grupy %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modyfikuj uprawnienia użytkowników dla kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Modyfikuj obserwatorów kolejki %1"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModifyACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ModifyOwnMembership"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModifyQueueWatchers"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModifyScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModifySelf"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModifyTemplate"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModifyTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Pon."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Więcej o %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Move"
-msgstr "DÄ‚Å placer"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Przesuń w dół"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Przesuń w górę"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Wielokrotny"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Należy określić atrybut 'Nazwa'"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "%1 moich zgłoszeń"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Moje potwierdzenia"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Moje potwierdzenia"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Moje zapytania"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nazwa"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Używana nazwa"
-
-#: NOT FOUND IN SOURCE
-msgid "Name matches"
-msgstr "Nazwa zgadza siÄ™ z"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Wymagane potwierdzenie od administratora systemu"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Nigdy"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Nowe"
-
-#: NOT FOUND IN SOURCE
-msgid "New Article"
-msgstr "Nowy artykuł"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Nowe powiÄ…zania"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nowe hasło"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nowe zgłoszenie oczekujące na zatwierdzenie"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Nowe zapytanie"
-
-#: NOT FOUND IN SOURCE
-msgid "New Relationships"
-msgstr "Nowe powiÄ…zania"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nowe wyszukiwanie"
-
-#: NOT FOUND IN SOURCE
-msgid "New class"
-msgstr "Nowa klasa"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Nowe pole def. przez użytkownika"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Nowa grupa"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nowe hasło"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Nowe hasło zostało wysłane"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nowa kolejka"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nouvelle demande"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Nowe uprawnienia"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Nowy skrypt"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nowe wyszukiwanie"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Nowy szablon"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "Nowe zgłoszenie"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "Nowe zgłoszenie nie istnieje"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Nowy użytkownik"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Nowy użytkownik został nazwany"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Nowi obserwatorzy"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Nowe ustawienia okna"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Następne"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Następna strona"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Następna strona"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Pseudonim"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Pseudonim"
-
-#: NOT FOUND IN SOURCE
-msgid "No"
-msgstr "Nie"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "Nie zdefiniowano klasy"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Brak pola definiowanego przez użytkownika"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Nie zdefiniowano pola def. przez użytkownika"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Nie zdefiniowano grupy"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Brak zapytania"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Nie zdefiniowano kolejki"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Nie odnaleziono użytkownika RT. Proszę skontaktować się z administratorem RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Brak szablonu"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Nie określono zgłoszenia. Odrzucenie zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Nie określono zgłoszenia. Odrzucenie modyfikacji zgłoszenia\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Zawieszenie operacji"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Nie określono kolumny"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Nie udało się wyszukać polecenia\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Nie wprowadzono komentarza dotyczącego tego użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Nie załączono korespondencji"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Brak opisu dla %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Nie określono grupy"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Aucun groupe trouvÊ d'après le critère de recherche."
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Brak załączonej wiadomości"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Nie ustawiono hasła"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Brak uprawnień do tworzenia kolejek"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Brak uprawnień do tworzenia zgłoszeń w kolejce '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Brak uprawnień do tworzenia użytkowników"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Brak uprawnień do wyświetlenia tego zgłoszenia"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Brak uprawnień do przeglądania aktualizacji zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Nie określono zarządzającego"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Nie wybrano zarzÄ…dzajÄ…cych."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Brak kolejek odpowiadajÄ…cych kryteriom wyszukiwania"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Nie udało się wyszukać uprawnień"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Nie przyznano uprawnień."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Brak kryteriów wyszukiwania"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Brak tematu"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Nie określono numeru zgłoszenia"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Nie określono typu transakcji"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Aucun utilisateur ou adresse email spĂŠcifiĂŠ"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Brak użytkowników odpowiadających kryteriom wyszukiwania"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Brak aktualnego użytkownika RT. Proszę skontaktować się z administratorem RT.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Nie wysłano wartości do zestawu!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Nikt"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "NieistniejÄ…ce pole?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Nie udało się zalogować"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Nie udało się zalogować."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Nie ustawiona"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Jeszcze nie zaimplementowane."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Jeszcze nie zaimplementowane..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Uwagi"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Powiadomienie nie może zostać wysłane"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Wyślij powiadomienie do osób o uprawnieniach AdminCc"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Wyślij powiadomienie do osób o uprawnieniach AdminCc jako komentarz"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "Wyślij powiadomienia do osób o uprawnieniach Cc"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "Wyślij powiadomienia do osób o uprawnieniach Cc jako komentarz"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Wyślij powiadomienie do innych odbiorców"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Wyślij powiadomienie do innych odbiorców jako komentarz"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Wyślij powiadomienie do właściciela"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Wyślij powiadomienie do właściciela jako komentarz"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "Powiadom Właściciela o odrzuceniu jego zgłoszenia"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "Powiadom Zgłaszającego o zatwierdzeniu jego zgłoszenia przez wszystkich zatwierdzających"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "Powiadom Zgłaszającego o zatwierdzeniu jego zgłoszenia przez niektórych zatwierdzających"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Wyślij powiadomienie do właścicieli i osób o uprawnieniach AdminCc o nowych pozycjach oczekujących na zatwierdzenie przez nich"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Wyślij powiadomienie do zgłaszających"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Wyślij powiadomienie do zgłaszających i osób o uprawnieniach Cc"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Wyślij powiadomienie do zgłaszających i osób o uprawnieniach Cc jako komentarz"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Wyślij powiadomienie do zgłaszających oraz osób o uprawnieniach Cc i AdminCc"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Wyślij powiadomienie do zgłaszających oraz osób o uprawnieniach Cc i AdminCC jako komentarz"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Lis."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "Listopad"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Nie udało się utworzyć obiektu"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Obiekt został utworzony"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Les objets de type %1 ne peuvent avoir de champs personnalisĂŠs"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "Le type d'objet ne correspond pas"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Paź."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "Październik"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Praca zdalna"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Zdalne modyfikacje"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "Załaduj modyfikowane zdalnie"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "dnia"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "w przypadku komentarza"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "w przypadku korespondencji"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "w przypadku rejestracji zgłoszeń"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "w przypadku zmiany właściciela"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "w przypadku zmiany priorytetu"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "w przypadku zmiany kolejki"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "w przypadku zamykania zgłoszeń"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "w przypadku zmiany statusu"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "w przypadku transakcji"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Wyświetl tylko potwierdzenia dotyczące zgłoszeń zarejestrowanych po %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Wyświetl tylko potwierdzenia dotyczące zgłoszeń zarejestrowanych przed %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Otwarte"
-
-#: NOT FOUND IN SOURCE
-msgid "Open Tickets"
-msgstr "Otwórz zgłoszenia"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Otwórz"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Ouvrir les demandes"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Otwórz zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Otwórz zgłoszenia (z listy) w nowym oknie"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Otwórz zgłoszenia (z listy) w innym oknie"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Otwórz zgłoszenia, które są w trakcie ustalania (wymiany korespondencji)"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "UporzÄ…dkuj wg"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "PorzÄ…dkowanie i sortowanie"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Firma"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Zgłoszenie źródłowe: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "Mail sortant suite Ă  l'enregistrement d'un commentaire"
-msgstr "Zarejestrowano wychodzącą wiadomość o komentarzu"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "Zarejestrowano wiadomość wychodzącą"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Z upływem czasu priorytet wzrasta do"
-
-#: NOT FOUND IN SOURCE
-msgid "Overview"
-msgstr "PrzeglÄ…d"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Moje zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "OwnTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Właściciel"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Właściciel zmienił się z %1 na %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "Właściciel nie mógł być ustanowiony."
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Wymuszono zmianę właściciela z %1 na %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "Właścicielem"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Strona %1 z %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pager"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Nr pager'a"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Zgłoszenia nadrzędne"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Hasło"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Przypomnienie o haśle"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Hasło jest zbyt krótkie"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Hasło: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Hasła są różne."
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Hasła są różne. Twoje hasło nie zostało zmienione."
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Osoby"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Wykonaj operację zdefiniowaną przez użytkownika"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Konfiguracja PERL"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Odmowa dostępu"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Grupy prywatne"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Grupy prywatne"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Grupy prywatne:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Numery tel."
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Placeholder"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Właściwości"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Właściwości"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Informacja o przygotowaniu została wysłana do zgłaszającego"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Poprzednie"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "Poprzednia strona"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Poprzednia strona"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Poprzedni"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Nie udało się wyszukać zarządzającego %1."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Priorytet"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Priorytet rozpoczyna siÄ™ od"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "Prywatne:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Uprawnieni"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Uprawniony status: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Uprawnieni użytkownicy"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "Projets"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Grupa do użytku wewnętrznego"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "Zapytanie"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "Kreator zapytań"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Kolejka "
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Nie udało się wyszukać kolejki %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Nie udało się wyszukać kolejki '%1 '\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "SĂŠlection des mots clĂŠ de queue"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nazwa kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Skrypty kolejki"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Kolejka już istnieje"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Nie udało się utworzyć kolejki"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Nie udało się załadować kolejki"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Kolejka została utworzona"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Kolejka nie została określona."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Nie udało się wyszukać kolejki"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Kolejki"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "Szybkie wyszukiwanie"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "Szybkie tworzenie zgłoszeń"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS (XML)"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 dla %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 wyprodukowany przez <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Administracja RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "BÅ‚Ä…d autoryzacji w RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "Odbicie zgłoszenia przez RT: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "BÅ‚Ä…d konfiguracji RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Błąd krytyczny RT. Nie udało się zapisać wiadomości!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "BÅ‚Ä…d RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT otrzymał e-mail (%1) z RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT a reçu du courrier (%1) de lui même"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service"
-msgstr "Samoobsługa RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT Self Service / Tickets rĂŠsolus"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Zmienne RT"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT - przeglÄ…d podstawowych informacji"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "Nieudana autoryzacja w RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "Nie udało się wyszukać zgłaszającego przez przejrzenie zewnętrznej bazy"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "Nie udało się wyszukać kolejki: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "Nie udało się zatwierdzić tego podpisu PGP.\\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT dla %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT dla %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT wykonał twoje polecenia"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Jest dystrybuowane jako <a href=\"http://www.gnu.org/copyleft/gpl.html\">Wersja 2 GNU General Public License.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT est &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. DistribuĂŠ sous <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 de la licence gĂŠnĂŠrale GNU.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "Wg RT ta wiadomość może być informacją odbitą"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT będzie postępował z tą wiadomością tak, jakby była niepodpisana.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "Email w RT wymaga autoryzacji podpisu PGP. Albo nie podpisałeś wiadomości, albo Twój podpis nie może być zweryfikowany."
-
-#: NOT FOUND IN SOURCE
-msgid "RTFM Error"
-msgstr "BÅ‚Ä…d RTFM"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "ImiÄ™ i nazwisko"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "RealName"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "PowiÄ…zanie %1 dodane"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "Powiązanie %1 usunięte"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "PowiÄ…zanie z %1 dodane"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "Powiązanie z %1 usunięte"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Zgłoszenia powiązane"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "PowiÄ…zane z"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "PowiÄ…zaneZ"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Popraw"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Wprowadź szczegółowe kryteria wyszukiwania"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Odświeżaj tę stronę co %1 minut."
-
-#: NOT FOUND IN SOURCE
-msgid "Relationships"
-msgstr "PowiÄ…zania"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Usuń AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Usuń Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Usuń zgłaszającego"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Odpowiedz"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "Adres odpowiedzi"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Odpowiedz zgłaszającym"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Odpowiedz na zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "ReplyToTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Zgłaszający"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Adres e-mail zgłaszającego"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Zgłaszający"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "AdresZgłaszającego"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Zgłaszający"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "Zgłoszenia powinny być zrealizowane w ciągu"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Wymagany atrybut '%1' nie został określony"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Zresetuj"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Tel. domowy"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Zamknij"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Zamknij zgłoszenie nr %1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Zamknięte"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Odpowiedź dla zgłaszających"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Wyniki"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Wyniki - liczba na stronÄ™"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Wpisz ponownie hasło"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Przywróć"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Uprawnienie %1 nie zostało wyszukane dla %2 %3 w zakresie %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Uprawnienie zostało przekazane"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Uprawnienie zostało przyznane"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Uprawnienie zostało załadowane"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Uprawnienie nie może być odebrane"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Nie udało się wyszukać uprawnienia"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Nie udało się załadować uprawnienia"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Uprawnienie zostało odebrane"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Uprawnienia"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Nie udało się przydzielić uprawnień dla %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Nie udało się odebrać uprawnień dla %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Role"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootApproval"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Linii na stronie"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sob."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Zapisz"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Zapisz zmiany"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Zapisz"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Zapisz zmiany"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Zapisane zapytania"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Skrypt #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Skrypt został utworzony"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "Atrybuty skryptu"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Skrypt został usunięty"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Skrypty"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Skrypty dla %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Skrypty, które dotyczą wszystkich kolejek"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Wyszukaj"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Kryteria wyszukiwania"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-# nie jestem pewien!
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Wyszukaj oczekujÄ…ce potwierdzenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Search for articles"
-msgstr "Wyszukaj artykuły"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "Les recherches ne peuvent ĂŞtre associĂŠes Ă  ce type d'objet"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Zabezpieczenie:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "Voir les champs personnalisĂŠs"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "Zobacz dosłowne wiadomości wychodzące i ich odbiorców"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "Zobacz prywatne komentarze do zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "Zobacz podsumowania zgłoszeń"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "DostDoPólUżytk"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "SeeQueue"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Selectionner"
-
-#: NOT FOUND IN SOURCE
-msgid "Select a Class"
-msgstr "Wybierz klasÄ™"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Wybierz pole definiowane przez użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Select a Custom Fields"
-msgstr "Wybierz pole definiowane przez użytkownika"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Wybierz grupÄ™"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Wybierz kolejkÄ™"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Wybierz użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "Select class"
-msgstr "Wybierz klasÄ™"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Wybierz pole"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Wybierz grupÄ™"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Wybór wielu wartości"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Wybór jednej wartości"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Wybierz kolejkÄ™"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Wybierz skrypt"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Wybierz szablon"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Choisir un maximum de %1 valeurs "
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Wybierz użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "Wybór wielu wartości"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "Wybór jednej wartości"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Champs personnalisĂŠs sĂŠlectionnĂŠs"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Objets sĂŠlectionnĂŠs"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Samoobsługa"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Wyślij e-mail do wszystkich obserwatorów"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Wyślij e-mail do wszystkich obserwatorów jako \"komentarz\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Wyślij e-mail do zgłaszających i osób o uprawnieniach Cc""
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Wyślij e-mail do zgłaszających i osób o uprawnieniach Cc jako komentarz"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Wysyła wiadomość do zgłaszających"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Wysyła e-mail do osób wymienionych w Cc i Bcc "
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "Wysyła e-mail do użytkowników o uprawnieniach CC"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "Wysyła e-mail jako komentarz do użytkowników o uprawnieniach CC"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Wysyła e-mail do osób wymienionych w administracyjnym Cc"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Wysyła e-mail do osób wymienionych w administracyjnym Cc jako komentarz"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Wysyła e-mail do właściciela"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Wrz."
-
-#: NOT FOUND IN SOURCE
-msgid "Seperate multiple URLs with spaces"
-msgstr "Oddziel spacjami adresy URL"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "Wrzesień"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Pokaż"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Pokazuj potwierdzenia"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Wyświetlane kolumny"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Wyświetl wyniki"
-
-#: NOT FOUND IN SOURCE
-msgid "Show advanced search options..."
-msgstr "Wyświetl zaawansowane opcje wyszukiwania..."
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Wyświetl zatwierdzone zgłoszenia"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Wyświetl podstawowe informacje"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Wyświetl odrzucone zgłoszenia"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Wyświetl szczegóły"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Wyświetl zgłoszenia oczekujące na zatwierdzenie"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Wyświetl zgłoszenia oczekujące na pozostałe zatwierdzenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Wyświetl prywatny komentarz do zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Wyświetl streszczenia zgłoszeń"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ShowACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "PodglÄ…dPocztyWychodz"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "PodglądZapytańZapis"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ShowScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "ShowTemplate"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "ShowTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "ShowTicketComments"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Podpisz jako zgłaszający lub osoba o uprawnieniach Cc dla zgłoszenia lub kolejki"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Podpisz jako osoba o uprawnieniach AdminCc dla zgłoszenia lub kolejki"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Podpis"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Wpisany jako %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Pojedynczy"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Pomiń menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Sortuj"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort Order"
-msgstr "Kryterium sortowania"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Klucz sortowania"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Sortuj wyniki wg"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "SortOrder"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "Etap"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Zamrożone"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Strona powitalna"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Realizacja rozpoczęta"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Data rozpoczęcia realizacji '%1' nie może być rozpoznana"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "PoczÄ…tek realizacji"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "PoczÄ…tek realizacji od"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Data rozpoczęcia realizacji '%1' nie może być rozpoznana"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Województwo"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Status "
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Zmiana statusu"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Status zmieniony z %1 na %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "Zmiana statusu"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Przejmij"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Przejmij zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "PrzejecieZgloszen"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Przejęte od %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Przejęte od %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Temat"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Temat został zmieniony na %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Zastosuj"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Query"
-msgstr "Wykonaj zapytanie"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Wprowadź obieg (Workflow)"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Powiodło się"
-
-#: NOT FOUND IN SOURCE
-msgid "Summary"
-msgstr "Streszczenie"
-
-#: NOT FOUND IN SOURCE
-msgid "Summary matches"
-msgstr "Streszczenie zgadza siÄ™ z"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Nie."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperUser"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "System"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "Konfiguracja systemu"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "BÅ‚Ä…d systemowy"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "Erreur Système. Droit non dÊlÊguÊ."
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "Erreur Système. Droit non dÊlÊguÊ"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "Narzędzia systemowe"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Błąd systemowy. Uprawnienie nie zostało przekazane"
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Błąd systemowy. Uprawnienie nie zostało przydzielone"
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Erreur Système. Imposible de dÊlÊguer les droits"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Grupy systemowe"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "Grupa ról systemowych do użytku wewnętrznego"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Przyjmij"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "Przyjmij zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "PrzyjęcieZgłoszeń"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Przyjęty"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "Tâche"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Szablon"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Szablon #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Szablon został usunięty"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Nie udało się wyszukać szablonu"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Nie udało się wyszukać szablonu\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Szablon nie został rozpoznany"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Szablony"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Szablony dla %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "Texte"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "To już jest aktualna wartość"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "To nie jest wartość tego pola"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "To jest ta sama wartość"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Ten użytkownik/ grupa już dysponują tym prawem"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Ten zarządzający jest już %1 dla tej kolejki"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Ten zarządzający jest już %1 dla tego zgłoszenia"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Ten zarzÄ…dzajÄ…cy nie jest %1 dla tej kolejki"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Ten zarządzający nie jest %1 dla tego zgłoszenia"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Ta kolejka nie istnieje"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "To zgłoszenie ma niewykonane zgłoszenia zależne"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Ten użytkownik już posiada to uprawnienie"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Ten użytkownik już jest właścicielem tego zgłoszenia"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Taki użytkownik nie istnieje"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Ten użytkownik już posiada to uprawnienie"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Ten użytkownik nie jest uprawniony"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Ten użytkownik jest już uprawniony"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Ten użytkownik jest teraz nieuprawniony"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Cet utilisateur a perdu ses droits"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Ten użytkownik może nie posiadać zgłoszeń w tej kolejce"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "To nie jest id typu liczbowego"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Podstawowe informacje"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "CC zgłoszenia"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "Administracyjne CC zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Komentarz został zapisany"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "Następujące polecenie wyszuka wszystkie aktywne zgłoszenia w kolejce głównej i ustawi ich priorytet na 99, jeśli nie zostały zmodyfikowane w ciągu ostatnich 4 godzin:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Następujące polecenia nie zostały wykonane:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Ustawiono nową wartość."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "Właściciel zgłoszenia"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Zgłaszający"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Te komentarze nie są generalnie widoczne dla użytkownika"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Ce champ personnalisĂŠ ne s'applique pas Ă  cet objet"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Ta funkcja jest dostępna tylko dla administratora systemu"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Ta wiadomość zostanie wysłana do..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "To zgłoszenie %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Ta aplikacja pozwala użytkownikowi na przypadkowe uruchomienie tzw. perl modułów z RT"
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Nie określono zawartości tej transakcji"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "%1 zgłoszeń tego użytkownika o najwyższym priorytecie"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "25 zgłoszeń tego użytkownika o najwyższym priorytecie"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Czw."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Zgłoszenie nr %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "Ticket n°%1 Jumbo update: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Pełna aktualizacja: %2 zgłoszenia nr %1"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Zgłoszenie nr %1 %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "Zgłoszenie %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Zgłoszenie %1 zostało utworzone w kolejce '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Zgłoszenie %1 zostało załadowane\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Zgłoszenie %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Champs personnalisĂŠs du ticket"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Historia zgłoszenia nr %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Nr zgłoszenia"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Zgłoszenie zamknięte"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Transactions du ticket"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Załącznik do zgłoszenia, którego"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Zawartość zgłoszenia"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Typ zawartości zgłoszenia"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "Nie udało się utworzyć zgłoszenia z powodu wewnętrznego błędu"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Zgłoszenie zostało utworzone"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Nie udało się utworzyć zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Zgłoszenie zostało usunięte"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Nie udało się wyszukać numeru zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "Ticket effacĂŠ"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Meta-dane zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Nie udało się wyszukać zgłoszenia"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Zmienił się status zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Obserwatorzy zgłoszenia"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Zgłoszenia %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Zgłoszenia %1 do %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Zgłoszenia od %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Zgłoszenia, które zależą od tego zatwierdzenia:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "Szacowany czas"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Pozostały czas"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Czas realizacji"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Pozostały czas"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Wyświetlany czas"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Czas realizacji"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "PozostałyCzas"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Czas realizacji"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Aby wygenerować różnice tego zatwierdzenia:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Aby wygenerować różnice tego zatwierdzenia:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Więcej o wsparciu, szkoleniach, rozwoju i licencjonowaniu dostępne jest w %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Wpłynęło"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Narzędzia"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transakcja"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transakcja %1 została wyczyszczona"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transakcja została utworzona"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Champs personnalisĂŠes de la transaction"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transakcja-> Nie udało się utworzyć, ponieważ nie określono numeru zgłoszenia"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "Transation->Create a ĂŠchouĂŠ car vous n'avez pas spĂŠcifiĂŠ de type d'objet et d'id"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transakcje nie są możliwe do powielenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Próba usunięcia uprawnienia: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Wto."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Typ"
-
-#: NOT FOUND IN SOURCE
-msgid "Unable to load article"
-msgstr "Nie udało się załadować artykułu"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Niezaimplementowane"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr " Unix login"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Nazwa użytkownika typu 'unix'"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Nieznany Typ Zawartości %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Nieograniczona"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "Zapytanie bezimienne"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Nieuprawnieni"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Champs personnalisĂŠs non sĂŠlectionnĂŠs"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Objets non sĂŠlectionnĂŠs"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Niepobrany"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "Recherche sans titre"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Zaktualizuj"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Zaktualizuj wszystko"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Zaktualizuj ID"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Zaktualizuj zgłoszenie"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Zaktualizuj typ"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Zaktualizuj wszystkie te zgłoszenia jednocześnie"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Zaktualizuj e-mail"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Zaktualizuj wiele zgłoszeń jednocześnie"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Zaktualizuj nazwÄ™"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Aktualizacja nie została zapisana."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Zaktualizuj wybrane zgłoszenia"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Zaktualizuj podpis"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Zaktualizuj zgłoszenie"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Zaktualizuj zgłoszenie nr %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Zaktualizuj zgłoszenie nr %1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Zaktualizuj zgłoszenie nr %1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Aktualizacja nie dotyczyła korespondencji ani komentarza."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Zaktualizowane"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Zapisz"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Uploader plusieurs fichiers"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Uploader plusieurs images"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Uploader un fichier"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Uploader une image"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Uploader un maximum de %1 fichiers"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Uploader un maximum de %1 images"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Zapisz swoje zmiany"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Use the dropdown menus to select which transactions you want to extract into a new RTFM article"
-msgstr "Użyj rozwijalnych list, aby wybrać transakcje, z których chcesz utworzyć nowy artykuł RTFM"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Użytkownik %1 %2: %3 \\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Hasło użytkownika %1: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Nie można znaleźć użytkownika %1."
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Nie udało się wyszukać użytkownika '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Nie udało się wyszukać użytkownika '%1'\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Definiowany przez użytkownika"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Warunki i operacje zdefiniowane przez użytkownika"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Id"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Id"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Uprawnienia użytkowników"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "L'utilisateur a demandĂŠ un type de mise Ă  jour non connu pour le champ personnalisĂŠ %1 de l'objet %2Â%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Nie udało się utworzyć użytkownika: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Użytkownik został utworzony"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Grupy def. przez użytkownika"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Użytkownik załadowany"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Użytkownik został powiadomiony"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Widok użytkownika"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Groupe dĂŠfinis par l'utilisateur"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Nazwa"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Użytkownicy"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Użytkownicy odpowiadający kryteriom wyszukiwania"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Sprawdź zapytanie"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Wartość kolejki"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Wartości"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Obserwuj"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "WatchAsAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Observateur chargĂŠ"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Obserwatorzy"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "Web-kodowanie"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Åšro."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Po zatwierdzeniu zgłoszenia przez wszystkich zatwierdzających, dodaj korespondencję do oryginalnego zgłoszenia"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Po zatwierdzeniu zgłoszenia przez któregokolwiek z zatwierdzających, dodaj korespondencję do oryginalnego zgłoszenia"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Po utworzeniu zgłoszenia"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Po utworzeniu zgłoszenia podlegającego zatwierdzeniu, powiadom właściciela i osoby o uprawnieniach AdminCc o zadaniu oczekującym zatwierdzenie przez nich"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Jeśli cokolwiek się wydarzy"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Zawsze gdy zgłoszenie będzie zamykane"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Zawsze gdy zmieni się właściciel zgłoszenia"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Zawsze gdy zmieni się priorytet zgłoszenia"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Zawsze gdy zmieni się kolejka zgłoszenia"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Zawsze gdy zmieni się status zgłoszenia"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Zawsze gdy wystąpi warunek definiowany przez użytkownika"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Zawsze gdy wystÄ…piÄ… komentarze"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Zawsze gdy wpłynie korespondencja"
-
-#: NOT FOUND IN SOURCE
-msgid "Which are referred to by "
-msgstr "Które są zgłoszeniami powiązanymi"
-
-#: NOT FOUND IN SOURCE
-msgid "Which refer to"
-msgstr "Które dotyczą"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Praca"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Praca zdalna"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Tel. do pracy"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Czas pracy"
-
-#: NOT FOUND IN SOURCE
-msgid "XXX CHANGEME You are not an authorized user"
-msgstr "XXX CHANGEME Nie jesteś użytkownikiem z uprawnieniami"
-
-#: NOT FOUND IN SOURCE
-msgid "Yes"
-msgstr "Tak"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Jesteś już właścicielem tego zgłoszenia"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Nie jesteś autoryzowanym użytkownikiem"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Możesz ponownie przydzielić tylko te zgłoszenia, których jesteś właścicielem lub te, które nie mają właściciela"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Nie masz uprawnień do przeglądania tego zgłoszenia.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Wyszukałeś zgłoszenia %1 w kolejce %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Zostałeś wylogowany z RT"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Nie masz uprawnień do rejestrowania zgłoszeń w tej kolejce."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Nie możesz rejestrować zgłoszeń w tej kolejce."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Proszę zalogować się ponownie"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Twoje zgłoszenia %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Administrator RT niewłaściwie skonfigurował aliasy maila, które wywołują RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Twoje zgłoszenie zostało zatwierdzone przez %1. Może nadal oczekiwać na inne zatwierdzenia."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Twoje zgłoszenie zostało zatwierdzone."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Twoje zgłoszenie zostało odrzucone"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Twoje zgłoszenie zostało odrzucone"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Nazwa użytkownika lub hasło jest nieprawidłowe"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "Kod pocztowy"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[Pas de sujet]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "and is not"
-msgstr "i nie jest"
-
-#: NOT FOUND IN SOURCE
-msgid "and not"
-msgstr "i nie"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "tak jak przydzielone dla %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "zamknięte"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "zawiera"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "zawartość"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "typ zawartości"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "korespondencja (prawdopodobnie) nie została wysłana"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "korespondencja została wysłana"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dniami"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "effacĂŠ"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "usuń"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "usunięte"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "nie zgadza siÄ™ z"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "nie zawiera"
-
-#: NOT FOUND IN SOURCE
-msgid "email address"
-msgstr "adresse email"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "równy"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "faux"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "nazwa pliku"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "większy od"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "grupy '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "godz."
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "Numer"
-
-#: NOT FOUND IN SOURCE
-msgid "in class %1"
-msgstr "w ramach klasy %1"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "jest"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "nie jest"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "mniejszy od"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "zgadza siÄ™ z"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min."
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minuty"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "modyfikacje\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "miesiÄ…cami"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "nowe"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "bez nazwy"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "brak wartości"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "żaden"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "różny od"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "necontientpas"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "otwarte"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "prywatna grupa '%1' użytkownika '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "kolejka %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "odrzucone"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "zamknięte"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "sek."
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "Arkusz kalk."
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "zamrożone"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "system %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "grupy systemowej '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "przywoływany komponent nie określił powodu"
-
-#: NOT FOUND IN SOURCE
-msgid "ticket #%1"
-msgstr "ticket n°%1"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "zgłoszenie #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "till"
-msgstr "do"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "vrai"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "nieopisana grupa %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "nieopisana grupa %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "użytkownika %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "tygodniami"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "wg szablonu %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "rokiem/latami"
-
diff --git a/rt/lib/RT/I18N/pt_br.po b/rt/lib/RT/I18N/pt_br.po
deleted file mode 100644
index cbf92c5..0000000
--- a/rt/lib/RT/I18N/pt_br.po
+++ /dev/null
@@ -1,6116 +0,0 @@
-# $Id: pt_br.po,v 1.1.1.4 2005-10-15 09:10:38 ivan Exp $
-msgid ""
-msgstr ""
-"Project-Id-Version: RT 2.1.x\n"
-"POT-Creation-Date: 2002-05-02 11:36+0800\n"
-"PO-Revision-Date: 2002-12-07 23:20-02:00\n"
-"Last-Translator: Gustavo Chaves <gustavo@cpqd.com.br>\n"
-"Language-Team: rt-devel <rt-devel@lists.fsck.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 adicionado"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 atrás"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 alterado para %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 removido"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%1 %2 do grupo %3"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 com modelo %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 este tíquete\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 apresentados"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Um argumento para passar para %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - Mostra atualizações de estado no STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - Especifica o módulo de ação que você quer usar"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - Especifica o módulo de condição que você quer usar"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - Especifica o módulo de busca que você quer usar"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "ScripAction %1 carregado"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 usado como um valor de %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "Aliases %1 requerem um TicketId no qual trabalhar"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "Aliases %1 requerem um TicketId no qual trabalhar "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "Aliases %1 requerem um TicketId no qual trabalhar (de %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 parece ser um objeto local, mas não pode ser encontrado no banco de dados"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 por %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 alterado de %2 para %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr ""
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 não pôde ser alterado para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 não pôde iniciar uma transação (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 não pôde alterar estado para resolvido. O banco de dados do RT pode estar inconsistente."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr ""
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 tíquetes de mais alta prioridade que eu possuo..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 tíquetes de mais alta prioridade que eu requeri..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 é uma ferramenta para modificar tíquetes a partir de uma ferramenta de agenda externa, como o cron."
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 não é mais um %2 para esta fila."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 não é mais um %2 para este tíquete."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 não é mais um valor para o campo personalizado %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 não é um identificador de fila válido."
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 min"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 não mostrado"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1 direitos"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 teve sucesso\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "Tipo %1 desconhecido para $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "Tipo %1 desconhecido para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 foi criado sem um CurrentUser\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 resolverá todos os membros de um grupo de tíquetes resolvidos."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 colocará como pendente uma BASE [local] se for dependente [ou membro] de uma requisição ligada."
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: nenhum arquivo anexo especificado"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1b"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' é um valor inválido para o estado"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' não é uma ação reconhecida."
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Assinale para remover o membro do grupo)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Assinale para remover o scrip)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Assinale para remover)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Assinale para remover)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr ""
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(Se deixado em branco, será entendido como %)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Sem Valor)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Nenhum campo personalizado)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Sem membros)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Sem scrips)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Nenhum esquema)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr ""
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envia uma cópia-cega (Bcc) desta atualização para uma lista de endereços de email separados por vírgula. <b>Não</b> altera quem vai receber atualizações futuras.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Envia uma cópia-cega (Bcc) desta atualização para uma lista de endereços eletrônicos separados por vírgulas. <b>Não</b> altera o destinatário de atualizações futuras.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Envia uma cópia-cega (Bcc) desta atualização para uma lista de endereços eletrônicos separados por vírgulas. <b>Não</b> altera o destinatário de atualizações futuras.)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Envia uma cópia-cega (Bcc) desta atualização para uma lista de endereços eletrônicos separados por vírgulas. <b>Não</b> altera o destinatário de atualizações futuras.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Envia uma cópia desta atualização para uma lista de endereços eletrônicos separados por vírgulas. <b>Não</b> altera o destinatário de atualizações futuras.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Envia uma cópia desta atualização para uma lista de endereços eletrônicos separados por vírgulas. Estas pessoas <b>receberão</b> as atualizações futuras.)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr ""
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(vazio)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(nenhum nome listado)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(Sem assunto)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(sem valor)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr ""
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(somente um tíquete)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(aguardando aprovação)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(aguardando outros tíquetes)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(grupo do requisitante)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(requerido)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(sem título)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "25 tíquetes mais prioritários que possuo..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "25 tíquetes mais prioritários que requisitei..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Novo tíquete em\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "Um modelo vazio"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE Removida"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE Carregada"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "ACE não pôde ser removida"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "ACE não pode ser encontrada"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE não encontrado"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEs só podem ser criados e removidos."
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Abortando para evitar modificações indesejadas no tíquete.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Sobre mim"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Controle de acesso"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "Ação"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "Ação %1 não encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "Ação confirmada."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "Ação preparada..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr ""
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Adicionar AdminCc"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Adicionar Cc"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr ""
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Adicionar Mais Arquivos"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "Adicionar Próximo Estado"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Adicionar Requisitante"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "Adicionar um Scrip nesta fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip which will apply to all queues"
-msgstr "Adicionar um Scrip que será aplicado a todas as filas"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "Adicionar uma seleção de teclado a esta fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Adicionar um novo scrip global"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Adicionar um scrip a esta fila"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Adicionar um scrip que se aplicará a todas as filas"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr ""
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Adicionar comentários ou respostas aos tíquetes selecionados"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Adicionar membros"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Adicionar novos observadores"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "AddNextState"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Principal adicionado como um %1 para esta fila"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Principal adicionado como um %1 para este tíquete"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "Endereço 1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "Endereço 2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "Admin Cc"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "Comentário do Administrador"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "Correspondência do Administrador"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Administração de filas"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Administração de usuários"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Administração da configuração global"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Administração de Grupos"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "Administração de uma fila"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "AdminAllPersonalGroups"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "AdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "AdminComment"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "AdminCorrespondence"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "AdminCustomFields"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "AdminGroup"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "AdminGroupMembership"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "AdminOwnPersonalGroups"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "AdminQueue"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "AdminUsers"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "Cc Administrativo"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "Administradores"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "Busca avançada"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "Depois"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "Idade"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "Alias para"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Todos os Campos Personalizados"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Todas as filas"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Sempre envia uma mensagem para os requisitantes independentemente do remetente"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr ""
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr ""
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "Aprovação"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Aprovação #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Aprovação #%1: Notas não registradas devido a um erro de sistema"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Aprovação #%1: Notas registradas"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Detalhes da Aprovação"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr ""
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Diagrama da aprovação"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Aprove"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "Notas do aprovador: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Abr."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "Abril"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Ascendente"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr ""
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Anexar"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Anexar arquivo"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Arquivo anexado"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Arquivo anexo '%1' não pôde ser carregado"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Arquivo anexo criado"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Nome do arquivo anexo"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "Arquivos anexos"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr ""
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Ago."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "Agosto"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "Sistema de autenticação"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Autoreply"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Autoreply para Requisitantes"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "AutoreplyToRequestors"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "Assinatura PGP inválida: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Identificador de arquivo anexo inválido. Não pude encontrar o arquivo '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "Dados inválidos em %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Número inválido de transação para o arquivo anexo. %1 deveria ser %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "Básicos"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Bcc"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Não se esqueça de salvar suas alterações"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "Antes"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Incício da Aprovação"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "Vazio"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "URL para guardar esta busca em seus marcadores"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr ""
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Cabeçalhos resumidos"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "Atualização de tíquetes em lote"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Não posso modificar os usuários do sistema"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Este principal pode ver esta fila"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Não posso adicionar um valor de campo personalizado sem um nome"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr ""
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Não posso ligar um tíquete a ele mesmo"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Não posso unir a um tíquete já unido. Você nunca deve obter este erro"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr ""
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Não especifique origem e destino simultaneamente"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Não posso criar o usuário: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "Cc"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Mudar a senha"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr ""
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Assinale para remover"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Assinalar para revogar o direito de acesso"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Filhos"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Cidade"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr ""
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Fechado"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Requisições fechadas"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Code"
-msgstr "Código"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Comando não entendido!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Comentário"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "Endereço de Comentário"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Comentário não registrado"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Comente sobre os tíquetes"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "CommentOnTicket"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Comentários"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Comentários (não enviados aos requisitantes)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Comentários (não enviados aos requisitantes)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Comentários sobre %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Comentários sobre este usuário"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Comentários adicionados"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Compilar restrições"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "Condição"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "Condição satisfeita..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "Condição não encontrada"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "Configuração"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Confirmar"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "Informação de contato"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Data de contato '%1' não pôde ser entendida"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Conteúdo"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "Não pude criar o grupo"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr ""
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "Correspondência"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "Endereço de correspondência"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "Correspondência adicionada"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "Correspondência não registrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Não pude adicionar novo valor de campo personalizado para o tíquete. "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Não pude adicionar novo valor de campo personalizado para o tíquete. %1"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Não pude alterar o proprietário. "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Não pude criar CampoPersonalizado"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Não pude criar o grupo"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Não pude criar o modelo: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Não pude criar o tíquete. Fila não selecionada"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Não pude criar o usuário"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "Não pude criar um observador para o requisitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Não pude encontrar um tíquete com identificador %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Não pude encontrar o grupo %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Não pude encontrar ou criar o usuário"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Não pude encontrar este principal"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Não pude encontrar o usuário %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Não pude carregar o grupo"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Não pude fazer este principal um %1 para esta fila"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Não pude fazer este principal um %1 para este tíquete"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Não pude remover este principal como um %1 para esta fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Não pude remover este principal como um %1 para este tíquete"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Não pude adicionar o membro no grupo"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Não pude criar uma transação: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Não sei o que fazer com a resposta do gpg\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Não encontrei o grupo\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Não pude encontrar o registro"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Não encontrei este principal"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Não encontrei este valor"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Não pude encontrar este observador"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Não pude encontrar o usuário\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Não pude carregar %1 do banco de dados de usuários.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "Não pude carregar os KeywordSelects."
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Não pude carregar o arquivo de configuração do RT '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Não pude carregar os Scrips."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Não pude carregar o grupo %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Não pude carregar a ligação"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr ""
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Não pude carregar a fila"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Não pude carregar a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Não pude carregar o scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Não pude carregar o modelo"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Não pude carregar este usuário (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Não pude carregar o tíquete '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "País"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Criar"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Criar Tíquetes"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Criar um CampoPersonalizado"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Criar um Campo Personalizado para a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Criar um Campo Personalizado para todas as filas"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Criar um novo Campo Personalizado"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "Criar um novo Scrip global"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Criar um novo scrip global"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Criar um novo grupo"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Criar um novo grupo pessoal"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Criar uma nova fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Criar um novo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Criar um novo modelo"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Criar um novo tíquete"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Criar um novo usuário"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Criar uma fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Criar uma fila chamada"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Criar uma requisição"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Criar um scrip para a fila %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Criar um modelo"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Criação falhou: %1 / %2 / %3 "
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Criação falhou: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Criar novos tíquetes baseados no esquema deste scrip"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Criar um tíquete"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Criar tíquetes nesta fila"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Criar, remover e modificar campos personalizados"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Criar, remover e modificar filas"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Criar, remover e modificar os membros dos grupos pessoais de qualquer usuário"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Criar, remover e modificar os membros de grupos pessoais"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Criar, remover e modificar usuários"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "CreateTicket"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Criado"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "CampoPersonalizado %1 criado"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Modelo %1 criado"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr ""
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Relações atuais"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Scrips correntes"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Membros atuais"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Direitos de acesso atuais"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Critério de busca atual"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Observadores atuais"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Campo Personalizado #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Campos Personalizados"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "Código de finalização da ação customizada"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "Código de preparação da ação customizada"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "Condição customizada"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Campo personalizado %1 %2 %3"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "O campo personalizado %1 tem um valor."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "O campo personalizado %1 não tem valor."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Campo personalizado %1 não encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Campo personalizado removido"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Campo personalizado não encontrado"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "O valor de campo %1 não pôde ser encontrado para o campo personalizado %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "O valor do campo personalizado foi alterado de %1 para %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "O valor do campo personalizado não pôde ser removido"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "O valor de campo personalizado não pôde ser encontrado"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Valor do campo personalizado removido"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Erro de dado"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Datas"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Dez."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Dezembro"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Esquema Padrão de Autoresposta"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Esquema padrão de Autoresposta"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr ""
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr ""
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Esquema padrão de comentário administrativo"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Esquema padrão de correspondência administrativa"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Esquema padrão de correspondência"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Esquema padrão de transação"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Padrão: %1/%2 mudou de %3 para %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Delegar direitos de acesso"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Delegar direitos específicos que foram outorgados a você."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "DelegateRights"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Delegação"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Remover"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Remover tíquetes"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "DeleteTicket"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Ao remover este objeto você pode quebrar a integridade referencial"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Ao remover este objeto você quebra a integridade referencial"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Ao remover este objeto você viola a integridade referencial"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Remover este objeto violaria a integridade referencial"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "Remover este objeto violaria a integridade referencial. Isto é mau."
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Negue"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "Dependem deste tíquete"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "Dependências: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "Depende de"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "DependsOn"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Descendente"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Descreva o problema abaixo"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "Descrição"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "Detalhes"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Apresentação"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Mostrar Lista de Controle de Acesso"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Mostras os esquemas de Scrip para esta fila"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Mostrar os Scrips para esta fila"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Modo de apresentação"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Apresentar o tíquete #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr ""
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Fazer qualquer coisa"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Não recarregar esta página."
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Não mostrar resultados da busca"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Baixar"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr ""
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Vencido"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "A data de vencimento '%1' não pôde ser entendida"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "ERRO: Não pude carregar o tíquete '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Editar"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "Editar Condições"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Editar Campos Personalizados para %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Editar Relacionamentos"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr ""
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Editar Esquemas para a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Editar palavras chave"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Editar scrips"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Editar os modelos do sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Editar os modelos para %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Editando a configuração para a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Editando a configuração para o usuário %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Editando o campo %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Editando os membros do grupo %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Editando os membros do grupo pessoal %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Editando o modelo %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Você deve especificar a origem ou o destinatário"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "O endereço de email já está em uso"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "Correio Eletrônico"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "Codificação de Email"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "Habilitado (Deselecionando este ítem desabilita este campo personalizado)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "Habilitado (Deselecionando este ítem desabilita este grupo)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "Habilitado (desassinalando desabilita esta fila)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "Campos Personalizados Habilitados"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "Filas Habilitadas"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Estado %1 habilitado"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Entre com múltiplos valores"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Entre com um valor"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr ""
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Entre com identificadores de tíquete ou URIs que levam ao tíquete. Separe entradas múltiplas com espaços."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr ""
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Erro"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Erro ao adicionar um observador"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Erro nos parâmetros para Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Erro nos parâmetros para Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Erro nos parâmetros para Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Erro nos parâmetros para Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr ""
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr ""
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Todos"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Exemplo:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "ExternalAuthId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternalContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Informação adicional"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Não pude encontrar o pseudogrupo de usuários 'Privileged'."
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Não pude encontrar o pseudogrupo de usuários 'Unprivileged'"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Falhou ao carregar o módulo %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Fev."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Fevereiro"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Fin"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Prioridade Final"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "FinalPriority"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Encontrar o grupo cujo"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Encontrar tíquetes novos/abertos"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Encontrar pessoas que"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "Encontrar tíquetes"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Terminar Aprovação"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Primeiro"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "Primeira página"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Force alteração"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Encontrado %quant(%1,tíquete)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Objeto Encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "FreeformMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "FreeformSingle"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Sex."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Cabeçalhos completos"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Obtendo o usuário corrente a partir de uma assinatura pgp\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Dado a %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Global"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "Seleções de Palavras Chave Globais"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Scrips Globais"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Esquema global: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr ""
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Ir!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "Assinatura pgp válida de %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Ir para a página"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Ir para o tíquete"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Grupo"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Grupo %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Direitos de Acesso do Grupo"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "O grupo já tem um membro"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "O grupo não pôde ser criado."
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "O grupo não pôde ser criado: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Grupo criado"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "O grupo não contém este membro"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Grupo não encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Grupo não encontrado.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Grupo não especificado.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Grupos"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Grupos não podem ser membros de seus próprios membros"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr ""
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr ""
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "Olá!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "Olá, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "Histórico"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr ""
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Telefone Residencial"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "Homepage"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "Eu tenho %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "Tenho [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "Identificador"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "Identidade"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "Se uma aprovação é rejeitada, rejeite a original e remova as aprovações pendentes"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr ""
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr ""
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "Se esta ferramenta fosse setgid, um usuário local mal-intencionado poderia usá-la para obter acesso administrativo ao RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "Se você alterou qualquer coisa acima, não se esqueça de"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "Valor ilegal para %1"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "Campo imutável"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Incluir campoas personalizados desabilitados na listagem."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr ""
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Incluir filas desabilitadas na listagem."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Incluir usuários desabilitados na busca."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Prioridade Inicial"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "InitialPriority"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Erro de entrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "Interesse notado"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "Erro Interno"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "Erro Interno: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "Tipo Inválido de Grupo"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "Direito Inválido"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "Tipo Inválido"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "Dado inválido"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "Proprietário inválido. Usando 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "Fila inválida"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "Direito de acesso inválido"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "Valor inválido para %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "Valor inválido para o campo personalizado"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "Valor inválido para o estado"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "É extremamente importante que usuários não privilegiados não possam executar esta ferramenta."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "Sugere-se que você crie um usuário UNIX não privilegiado com o grupo e acesso RT corretos para executar esta ferramenta."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Requer vários argumentos:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "Itens requerendo minha aprovação"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Jan."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Janeiro"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "Entre ou deixe este grupo"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Jul."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Julho"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Jumbo"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Jun."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Junho"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Palavra chave"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Líng"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Último"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "Último Contato"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "Contactado em"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "Notificado em"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "Atualizado em"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "LastUpdated"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "Resta"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Deixar este usuário acessar RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "Deixar este usuário receber direitos de acesso adicionais"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Limitando proprietário a %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Limitando fila a %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "A ligação já existe"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "A ligação não pôde ser criada"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "Ligação criada (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "Ligação removida (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "Ligação não encontrada"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "Ligar o tíquete #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "Ligar o tíquete %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "Ligações"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "Localização"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "O diretório de log %1 não foi encontrado ou não pôde ser alterado.\\n RT não pode funcionar desta maneira."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "Assinado como %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Entrar"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Sair"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Definir como proprietário"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "Definir o estado"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "Definir o prazo final"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "Definir a data de resolução"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "Definir a data de iniciado"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "Definir a data início"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "Definir a data de última alteração"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "Definir a prioridade"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Definir a fila"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "Definir o assunto"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr ""
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Administrar grupos e seus membros"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Administrar propriedades e configurações aplicáveis a todas as filas"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Administrar filas e suas propriedades específicas"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Administrar usuários e senhas"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Mar."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Março"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Maio"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Mai."
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Membro adicionado"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Membro removido"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Membro não removido"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "Membro de"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "MemberOf"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "Membros"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr ""
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "União bem sucedida"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "União falhou. Não pude definir o EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Unir a"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr ""
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Mensagem"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr ""
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Faltando uma chave primária?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Móvel"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Celular"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Modificar Lista de Controle de Acesso"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Modificar o campo personalizado %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Modificar Campos Personalizados que se aplicam a todas as filas"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr ""
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr ""
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Modificar esquemas de Scrip para esta fila"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Modificar Scrips para esta fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Modificar ACLs do Sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Modificar Esquema %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr ""
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Modificar um Campo Personalizado para a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Modificar um Campo Personalizado que se aplica a todas as filas"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Modificar um scrip para a fila %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Modificar um scrip aplicável a todas as filas"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Modificar datas para # %1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Modificar as datas para #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Modificar as datas para o tíquete # %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Modificar direitos de acesso globais de grupo"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Modificar direitos de acesso globais de grupo."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Modificar direitos globais para grupos"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Modificar direitos globais para usuários"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Modificar scrips globais"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Modificar direitos de acesso globais de usuário"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Modificar direitos de acesso globais de usuário."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Modificar metadados do grupo ou removê-lo"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Modificar os direitos de acesso do grupo %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Modificar os direitos de acesso de grupo para a fila %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Modificar lista de membros deste grupo"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Modificar sua própria conta RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Modificar as pessoas relacionadas à fila %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Modificar as pessoas relacionadas ao tíquete #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Modificar os scrips da fila %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Modificar scrips aplicáveis a todas as filas"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Modificar o modelo %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Modificar esquemas que se aplicam a todas as filas"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Modificar o grupo %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Modificar os observadores da fila"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Modificar o usuário %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Modificar o tíquete # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Modificar o tíquete #%1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Modificar tíquetes"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr ""
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Modificar os direitos de acesso de usuário para o grupo %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Modificar os direitos de acesso de usuário para a fila %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Modificar os observadores para a fila '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ModifyACL"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ModifyOwnMembership"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ModifyQueueWatchers"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ModifyScrips"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ModifySelf"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ModifyTemplate"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ModifyTicket"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Seg."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Mais sobre %1"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "Descer"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "Subir"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "Múltiplo"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "O atributo 'Name' deve ser especificado"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Minhas Aprovações"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Minhas aprovações"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "Nome"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Nome em uso"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Precisa de aprovação do administrador do sistema"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Nunca"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Novo"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Novos Relacionamentos"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Nova Senha"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Nova Aprovação Pendente"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Nova busca"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Novo campo personalizado"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "Novo grupo"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Nova senha"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Notificação de nova senha enviada"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "Nova fila"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Nova requisição"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Novos direitos de acesso"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Novo scrip"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Nova busca"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Novo esquema"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "O novo tíquete não existe"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Novo usuário"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Novo usuário chamado"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Novos observadores"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Abrir nova janela"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Próximo"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Próxima página"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "Apelido"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "Apelido"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Não há Campo Personalizado"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr ""
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Não há Grupo definido"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr ""
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Não há Fila definida"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Nenhum usuário RT foi encontrado. Favor consultar o administrador do RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Não há Modelo"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "Não há Tíquete especificado. Abortando o tíquete "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "Não há Tíquete especificado. Abortando modificações no tíquete\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Não há ação"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Não há coluna especificada"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Comando não encontrado\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Não há comentário sobre este usuário"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "Não há nenhum arquivo anexado"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Não há descrição para %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Não há grupo especificado"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Não há senha especificada"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Não há permissão para criar filas"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Sem permissão para criar tíquetes na fila '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Sem permissão para criar usuários"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Sem permissão para mostrar o tíquete"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "sem permissão para ver modificar o tíquete"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Não há principal especificado"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Não há principal selecionado."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Não há fila satisfazendo o critério de busca."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Nenhum direito encontrado"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Nenhum direito outorgado."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Não há busca a realizar"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Não há identificador de tíquete especificado"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Não há tipo de transação especificada"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Não há usuário ou endereço de email especificado"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Nenhum usuário satisfazendo o critério de busca foi encontrado."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Nenhum usuário RT válido foi encontrado. O tratador de CVS do RT está desabilitado. Por favor, consulte o administrador do RT.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Nenhum valor enviado a _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Ninguém"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "Campo inexistente?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Não logado"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Não entrou."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Não definido"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Ainda não implementado."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Ainda não implementado..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "Notas"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "A notificação não pôde ser enviada"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "Notificar AdminCcs"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "Notificar AdminCcs como Comentário"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr ""
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr ""
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "Notificar Outros Destinatários"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "Notificar Outros Destinatários como Comentário"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "Notificar Proprietário"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "Notificar Proprietário como Comentário"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr ""
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr ""
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr ""
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "Notificar Proprietários e AdminCcs sobre novos itens pendendo suas aprovações"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "Notificar Requisitantes"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "Notificar Requisitantes e Ccs"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "Notificar Requisitantes e Ccs como Comentário"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "Notificar Requisitantes, Ccs e AdminCcs"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "Notificar Requisitantes, Ccs e AdminCcs como Comentário"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "Nov."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "Novembro"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Objeto não pôde ser criado"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Objeto criado"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr ""
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Out."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "Outubro"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr ""
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr ""
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr ""
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Em"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Sobre Comentário"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "Sobre Correspondência"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "Sobre Criação"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "Sobre Mudança de Propriedade"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr ""
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "Sobre Mudança de Fila"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "Sobre Resolução"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "Sobre Mudança de Estado"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "Sobre Transação"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Só mostrar aprovações para requisições criadas depois de %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Só mostrar aprovações para requisições criadas antes de %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Aberto"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Abrir"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Requisições abertas"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Abrir tíquetes (da listagem) em uma nova janela"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Abrir tíquetes (da listagem) em outra janela"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Abrir tíquetes na correspondência"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "Requisitando e ordenando"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "Organização"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "Tíquete originador: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr ""
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Após a data, a prioridade tende a"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Próprios tíquetes"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "OwnTicket"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "Proprietário"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "Proprietário mudou de %1 para %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "Proprietário alterado à força de %1 para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "O proprietário é"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Pager"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Telefone do Pager"
-
-#: NOT FOUND IN SOURCE
-msgid "Parent"
-msgstr "Pai"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Pais"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Senha"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "Lembrete de Senha"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Senha muito curta"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Senha: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr ""
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr ""
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Pessoas"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Realizar uma ação definida pelo usuário"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Permissão Negada"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Grupoas Pessoais"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Grupos pessoais"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Grupos pessoais:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Telefones"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "Preferências"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "Prefs"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Anterior"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "Página anterior"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Pri"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Principal %1 não encontrado."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Prioridade"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "A prioridade inicia em"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr ""
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Privilegiado"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "Estado privilegiado: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Usuários privilegiados"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "Falso-grupo para uso interno"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr ""
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr ""
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Fila"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Fila %1 não encontrada"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "A fila '%1' não foi encontrada\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "Seleções de Palavras-chave da Fila"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Nome da Fila"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Scrips da Fila"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "A fila já existe"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "A fila não pôde ser criada"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "A fila não pôde ser carregada"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Fila criada"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "A fila não foi especificada."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Fila não encontrada"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Filas"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr ""
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr ""
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 por <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Direitos reservados 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Direitos reservados 1996-2002 Jesse Vincent <jesse\\\\@bestpractical.com>\\\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "Adiministração do RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "Erro de autenticação no RT."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "Ricocheteio do RT: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "Erro de configuração do RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "Erro crítico no RT. A mensagem não foi registrada!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Erro no RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "O RT recebeu email (%1) dele próprio."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "O RT recebeu email (%1) de si próprio."
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "Auto-serviço do RT / Tíquetes Fechados"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr ""
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT por alto"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "O RT não pôde autenticá-lo"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "O RT não pôde encontrar o requisitante através de consulta ao banco de dados externo"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "O RT não pôde encontrar a fila: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "O RT não pôde validar esta assinatura PGP. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT para %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT para %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "O RT processou seus comandos"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT tem &copy; Direitos Reservados 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. Ele é distribuído sob a <a href=\"http://www.gnu.org/copyleft/gpl.html\">Versão 2 da Licença Pública Geral GNU (GPL).</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT tem &copy; Direitos Reservados 1996-%1 por Jesse Vincent &lt;jesse@bestpractical.com&gt;. Ele é distribuído sob a <a href=\\\"http://www.gnu.org/copyleft/gpl.html\\\">Versão 2 da Licença Pública Geral GNU (GPL).</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "O RT crê que esta mensagem seja um ricochete"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "O RT vai processar esta mensagem como se não fosse assinada.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "O modo de comandos por email do RT requer autenticação PGP. Ou você não assinou sua mensagem ou sua assinatura não pôde ser verificada."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Nome real"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "Nome real"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr ""
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Referenciado por"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "Faz referência a"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "RefersTo"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "Refinar"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "Refinar a Busca"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "Recarregar esta página a cada %1 minutos."
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Remover AdminCc"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Remover Cc"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Remover Requisitante"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Responder"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr ""
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Responder aos tíquetes"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "ReplyToTicket"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Requisitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Endereço eletrônico do requisitante"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Requisitante(s)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "RequestorAddresses"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Requisitantes"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "A requisições vencem em"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr ""
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "Restaurar"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Residência"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Resolver"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Resolver tíquete #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Resolvido"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Resposta aos requisitantes"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Resultados"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Resultados por página"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Confirmar a Senha"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Direito de acesso %1 não encontrado para %2 %3 referente a %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Direito de Acesso Delegado"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Direito de Acesso Outorgado"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Direito de Acesso Carregado"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Direito de acesso não pôde ser revogado"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Direito de acesso não encontrado"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Direito de acesso não carregado."
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Direito de acesso revogado"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Direitos de Acesso"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Direitos de acesso não puderam ser outorgados a %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Direitos de acesso não puderam ser revogados de %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "Papéis"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "RootApproval"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr ""
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Sáb."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr ""
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Salvar as Alterações"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Salvar as alterações"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr ""
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Scrip #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Scrip Criado"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Scrip removido"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Scrips"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Scrips para %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Scrips aplicáveis a todas as filas"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "Buscar"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Critérios de Busca"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "Buscar por aprovações"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "Segurança:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "SeeQueue"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr ""
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Selecionar um grupo"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Selecionar uma fila"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Selecionar um usuário"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Selecionar um campo personalizado"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Selecionar um grupo"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Selecionar múltiplos valores"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Selecionar um valor"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Selecionar uma fila"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Selecionar um scrip"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Selecionar um esquema"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr ""
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Selecionar um usuário"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "SelectMultiple"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "SelectSingle"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "Auto-serviço"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Enviar mensagem a todos os observadores"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Enviar mensagem a todos os observadores como um \"comentário\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Enviar mensagem aos requisitantes e Ccs"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Enviar mensagem aos requisitantes e Ccs como um comentário"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "Envia uma mensagem aos requisitantes"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "Envia uma mensagem aos Ccs e Bccs explicitamente listados"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr ""
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr ""
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "Envia uma mensagem aos Ccs administrativos"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "Envia uma mensagem aos Ccs administrativos como um comentário"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "Envia uma mensagem ao proprietário"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Set."
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "Setembro"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr ""
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr ""
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Mostrar os Resultados"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Mostrar requisições aprovadas"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Mostrar o sumário"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Mostrar requisições negadas"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Mostrar os detalhes"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Mostrar requisições pendentes"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Mostrar requisições aguardando outras aprovações"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Mostrar comentário privado do tíquete"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Mostrar sumários do tíquete"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ShowACL"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ShowScrips"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "ShowTemplate"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "ShowTicket"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "ShowTicketComments"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "Cadastrar como um Requisitante de tíquete ou um Cc de tíquete ou fila"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "Cadastrar como um AdminCC de tíquete ou fila"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "Assinatura"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "Assinado como %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Único"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "Saltar Menu"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Chave de ordenação"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Ordenar os resultados por"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "Ordenação"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "Pendente"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "Página inicial"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "Iniciado"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "A data de iníciado '%1' não pôde ser compreendida"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "Inicia"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Inicia Por"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "A data de início '%1' não pôde ser compreendida"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "Estado"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "Estado"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Mudança de Estado"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Estado alterado de %1 para %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "StatusChange"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Roubar"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "Roubado de %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "Roubado de %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Assunto"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Assunto modou para %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Enviar"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Enviar Workflow"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "Deu certo"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Dom."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "SuperUser"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "Sistema"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "Erro do Sistema"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "Erro de sistema. Direito não outorgado."
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "Erro de sistema. direito não outorgado"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr ""
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "Erro do sistema. Direito de acesso não delegado."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "Erro do sistema. Direito de acesso não outorgado."
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "Erro de sistema. Não posso outorgar direitos de acesso."
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "Grupos do sistema"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "SystemRolegroup para uso interno"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "Tomar"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "Tomado"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Modelo"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Esquema #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Esquema removido"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Modelo não encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Modelo não encontrado\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Modelo processado"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Modelos"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Modelos de %1\\n"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Este já é o valor atual"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Este não é um valor para este campo personalizado"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Este é o mesmo valor"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Este principal já é um %1 para esta fila"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Este principal já é um %1 para este tíquete"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Este principal não é um %1 para esta fila"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Este principal não é um %1 para este tíquete"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Esta fila não existe"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Este tíquete tem dependências não resolvidas"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Este usuário já tem este direito de acesso"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Este usuário já possui este tíquete"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Este usuário não existe"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Este usuário já tem privilégios"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Este usuário já não tem privilégios"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Este usuário agora tem privilégios"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Este usuário agora não tem privilégios"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Este usuário agora é não privilegiado"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Este usuário não pode possuir tíquetes nesta fila"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Este não é um identificador numérico"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "Sumário"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "O CC de um tíquete"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "O CC administrativo de um tíquete"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "O comentário foi registrado"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "O seguinte comando procurará por todos os tíquetes ativos na fila 'geral' e alterar sua prioridade para 99 se eles não tiverem sido alterados em 4 horas:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Os seguintes comandos não foram processados:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "O novo valor foi atribuído."
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "O proprietário de um tíquete"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "O requisitante de um tíquete"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Estes comandos geralmente não estão visíveis para o usuário"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr ""
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Este tíquete %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Esta ferramenta permite o usuário invocar módulos Perl arbitrários de dentro do RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Parece que esta transação não tem conteúdo"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "Os %1 tíquetes mais prioritários deste usuário"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "Os 25 tíquetes de mais alta prioridade deste usuário"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Qui."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "Tíquete"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "Tíquete # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "Tíquete # %1 atualização jumbo: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "Tíquete #%1 Atualização jumbo: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "Tíquete #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "Tíquete %1 criado na fila '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "Tíquete %1 carregado\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "Tíquete %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr ""
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "Histórico do Tíquete # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "Identificador do tíquete"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "Tíquete Resolvido"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Arquivo anexo do tíquete"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Conteúdo do tíquete"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Tipo do conteúdo do tíquete"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "O tíquete não pôde ser criado devido a um erro interno"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "Tíquete criado"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "A criação do tíquete falhou"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "Tíquete removido"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Id de tíquete não encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "Tíquete destruído"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "Tíquete não encontrado"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "O estado do tíquete mudou"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Observadores do tíquete"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "Tíquetes"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "Tíquetes %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "Tíquetes %1 por %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "Tíquetes de %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "Tíquetes dependentes desta aprovação:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "Tempo Restante"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Tempo Trabalhado"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "Tempo restante"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Tempo de apresentação"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Tempo trabalhado"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "TimeLeft"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "TimeWorked"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Para gerar as diferenças desta transação"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Para gerar as diferenças desta transação:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Última atualização"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr ""
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "Transação"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Transação %1 removida"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Transação Criada"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "Transaction->Create não pôde, já que você não especificou um id de tíquete"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "Transações são imutáveis"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "Tentando remover um direito de acesso: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Ter."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Tipo"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Não implementado"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Usuário Unix"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Usuário Unix"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "Codificação de conteúdo desconhecida %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ilimitado"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr ""
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Não privilegiado"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr ""
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Não tomado"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Atualizar"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Identificador de atualização"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr ""
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Tipo de atualização"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Atualizar todos estes tíquetes de uma vez"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Atualizar email"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Atualizar nome"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Atualização não registrada."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Atualizar os tíquetes selecionados"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Atualizar assinatura"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Atualizar o tíquete"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Atualizar o tíquete # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Atualizar o tíquete #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Atualizar tíquete #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "O tipo da atualização não foi nem correspondência e nem comentário."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Atualizado"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr ""
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr ""
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Usuário %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Usuário %1 Senha: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Usuário '%1' não encontrado"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Usuário '%1' não encontrado\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Definido pelo Usuário"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Identificador de usuário"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Identificador do usuário"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Direitos de Acesso de Usuário"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "O usuário não pôde ser criado: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Usuário criado"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Grupos definidos pelo usuário"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Usuário notificado"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "Visualização de usuário"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Nome de usuário"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Usuários"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Usuários que satisfazem o critério de busca"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Valor da fila"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "Valores"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Observar"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "WatchAsAdminCc"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Observador carregado"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Observadores"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "Codificação de Web"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Qua."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Quando um tíquete for aprovado por todos os aprovadores, adicione uma correspondência ao tíquete original"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Quando um tíquete for aprovado por qualquer aprovador, adicione uma correspondência ao tíquete original"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Quando um tíquete é criado"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "Quando um tíquete de aprovação é criado, notificar o Proprietário e o AdminCc do item aguardando sua aprovação"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Quando acontecer qualquer coisa"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Sempre que um tíquete for resolvido"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Sempre que mudar o proprietário de um tíquete"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr ""
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Sempre que um tíquete mudar de fila"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Sempre que o estado de um tíquete mudar"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Sempre que ocorrer uma condição definida por usuário"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Sempre que um novo comentário é adicionado"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Sempre que uma nova correspondência é adicionada"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Trabalho"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Telefone de trabalho"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "Trabalhado"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Você já é proprietário deste tíquete"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Você não é um usuário autorizado"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Você só pode reatribuir seus próprios tíquetes ou aqueles que não têm dono"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "Você não tem permissão para ver este tíquete.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Você encontrou %1 tíquetes na fila %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Você foi desconectado do RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "Você não tem permissão para criar tíquetes nesta fila."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Você não pode criar requisições nesta fila."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Volte sempre"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Suas %1 requisições"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "Seu administrador do RT configurou erradamente os endereços eletrônicos que invocam o RT"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Sua requisição foi aprovada por %1. Outras aprovações ainda podem estar pendentes."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Sua requisição foi aprovada."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Sua requisição foi rejeitada"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Sua requisição foi rejeitada."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Nome de usuário ou senha incorretos"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "CEP"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[sem assunto]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "como outorgado a %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr ""
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "contém"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "content"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "content-type"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "correspondência (provavelmente) não enviada"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "correspondência enviada"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "dias"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "morto"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "remover"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "removido"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "não satisfaz"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "não contém"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "igual a"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "falso"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "filename"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "maior que"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "grupo '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "horas"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "identificador"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "é"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "não é"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "menor que"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "satisfaz"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "min"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "minutos"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "modificações\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "meses"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "novo"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "sem valor"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "nenhum"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "diferente de"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "diferente"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "aberto"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "grupo pessoal '%1' para o usuário '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "fila %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "rejeitado"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "resolvido"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "seg"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "pendente"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "sistema %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "grupo do sistema '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "o componente chamador não especificou por que"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "tíquete #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "verdadeiro"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "grupo %1 não descrito"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "grupo sem descrição %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "usuário %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "semanas"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "com modelo %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "anos"
-
diff --git a/rt/lib/RT/I18N/ru.po b/rt/lib/RT/I18N/ru.po
deleted file mode 100644
index cd93e04..0000000
--- a/rt/lib/RT/I18N/ru.po
+++ /dev/null
@@ -1,6272 +0,0 @@
-# translation of ru-nortfm.po to Russian
-# translation of ru.po to Russian
-# Andrew Kornilov <andy@eva.dp.ua>, 2004, 2005.
-msgid ""
-msgstr ""
-"Last-Translator: Andrew Kornilov <andy@eva.dp.ua>\n"
-"PO-Revision-Date: 2005-03-11 15:38+0200\n"
-"Language-Team: Russian <ru@li.org>\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Project-Id-Version: ru\n"
-"MIME-Version: 1.0\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "&#8470;"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr ""
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr ""
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr ""
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr ""
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%1 %2 %3 %4:%5:%6 %7"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%1 %2 добавлен"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 назад"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 %2 изменено на %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%1 %2 удален"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%1 %2 of group %3"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "%1 %2 Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð¾Ð¼ %3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 Ñта заÑвка\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr ""
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (Ðе менÑÑ‚ÑŒ)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "%1 - %2 показано"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - Ðргумент Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸ в %2"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr ""
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr ""
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr ""
-
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr ""
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "%1 СкриплетÐаДейÑтвие загружен"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "%1 добавлено как значение Ð´Ð»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "%1 пÑевдонимы требуют идентификатор заÑвки Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "%1 пÑевдонимы требуют идентификатор заÑвки Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "%1 пÑевдонимы требуют идентификатор заÑвки Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ над (от %2) %3"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 ÑвлÑетÑÑ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ñ‹Ð¼ объектом, но не найден в базе данных"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 пользователем %2"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 изменена Ñ %2 на %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 копиÑ"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "%1 невозможно уÑтановить в %2."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 не может инициировать транзакцию (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 не может изменить ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° Решено. Возможно, база данных RT иÑпорчена."
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "%1 Ñоздана"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "%1 удалена"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "%1 ваших заÑвок Ñ Ð½Ð°Ð¸Ð²Ñ‹Ñшими приоритетами"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "%1 ваших заÑвок Ñ Ð½Ð°Ð¸Ð²Ñ‹Ñшими приоритетами..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "%1 заÑвок Ñ Ð½Ð°Ð¸Ð²Ñ‹Ñшими приоритетами, Ñозданных вами..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 больше не ÑвлÑетÑÑ %2 Ð´Ð»Ñ Ñтой очереди."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 больше не ÑвлÑетÑÑ %2 Ð´Ð»Ñ Ñтой заÑвки."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 больше не ÑвлÑетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸ÐµÐ¼ Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 неверный идентификатор очереди."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 matches"
-msgstr "%1 Ñовпадений"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 мин"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "%1 поÑледних неназначенных заÑвок"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "%1 не отображаетÑÑ"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 объектов"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "Права %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 уÑпешно произведено\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "%1 тип не извеÑтен Ð´Ð»Ñ $MessageId"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "%1 тип не извеÑтен Ð´Ð»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 была Ñоздана без ТекущегоПользователÑ\\n"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 решит вÑе заÑвки, входÑщие в групповой запроÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "%1 приоÑтановит заÑвки, которые завиÑÑÑ‚ от запроÑа или включены в него"
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1 %2 объектов"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr ""
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1 Ñохраненных запроÑов"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1: без вложений"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1б"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1к"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' ÑвлÑетÑÑ Ð½ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¼ значением ÑтатуÑа"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1' не ÑвлÑетÑÑ Ð·Ð°Ñ€ÐµÐ³Ð¸Ñтрированным дейÑтвием."
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(Выделите пользователей Ð´Ð»Ñ Ð¸ÑÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¸Ð· группы)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(Выделите Ñкриплеты Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(Выделите пункты Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(Выделите пункты Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(Выделите получателей Ð´Ð»Ñ Ð¸ÑÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¸Ð· ÑпиÑка уведомлÑемых)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(Выделите получателей Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð² ÑпиÑок уведомлÑемых)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(Введите идентификаторы или ÑÑылки на заÑвки, разделенные пробелами)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Enter ticket ids or URLs, seperated with spaces)"
-msgstr "(Введите идентификаторы или ÑÑылки на заÑвки, разделенные пробелами)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(ЕÑли пуÑтое, то по-умолчанию равно %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(Ðет значениÑ)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(Ðет дополнительных полей)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(Ðет пользователей)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(Ðет Ñкриплетов)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "(Ðет шаблонов)"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(Ðет)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Отправить Ñкрытую копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. СпиÑок получателей, которые в дальнейшем будут получать Ñкрытые копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ…, <b>не</b> будет изменен.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Отправить Ñкрытую копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. СпиÑок получателей, которые в дальнейшем будут получать Ñкрытые копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ…, <b>не</b> будет изменен.)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Отправить копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. Эти получатели в дальнейшем <b>будут</b> получать копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ….)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(Отправить копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. СпиÑок получателей, которые в дальнейшем будут получать копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ…, <b>не</b> будет изменен.)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(Отправить копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. СпиÑок получателей, которые в дальнейшем будут получать копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ…, <b>не</b> будет изменен.)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(Отправить копию ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтом обновлении на Ñти адреÑа [разделÑÑŽÑ‚ÑÑ Ð·Ð°Ð¿Ñтой]. Эти получатели в дальнейшем <b>будут</b> получать копии ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± обновлениÑÑ….)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(ИÑпользуйте Ñти Ð¿Ð¾Ð»Ñ Ð¿Ñ€Ð¸ выборе 'Задано пользователем' Ð´Ð»Ñ ÑƒÐ»Ð¾Ð²Ð¸Ð¹ или дейÑтвий)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(пуÑто)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no Summary)"
-msgstr "(нет Ñводной информации)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(имена не указаны)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no name)"
-msgstr "(нет имени)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(нет темы)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(нет значениÑ)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(нет значений)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(только одна заÑвка)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(в ожидании подтверждениÑ)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(в ожидании Ñ€ÐµÑˆÐµÐ½Ð¸Ñ ÑвÑзанных заÑвок)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(в ожидании других заÑвок)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(группа автора заÑвки)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(требуетÑÑ)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(без названиÑ)"
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I own..."
-msgstr "25 ваших заÑвок Ñ Ð½Ð°Ð¸Ð²Ñ‹Ñшими приоритетами..."
-
-#: NOT FOUND IN SOURCE
-msgid "25 highest priority tickets I requested..."
-msgstr "25 заÑвок Ñ Ð½Ð°Ð¸Ð²Ñ‹Ñшими приоритетами, Ñозданные ваши..."
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr ""
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr ""
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr ""
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"Создать заÑвку в очереди\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "ПуÑтой шаблон"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "Ðевозможно удалить ACE"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "Ðевозможно найти ACE"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "ACE не найден"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "ACEÑ‹ можно только Ñоздавать и удалÑÑ‚ÑŒ"
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "Прекращаем работу во избежание нежелательного Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð·Ð°Ñвки.\\n"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "Обо мне"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "Права доÑтупа"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "ДейÑтвие"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "ДейÑтвие %1 не найдено"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "ДейÑтвие принÑто."
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "ДейÑтвие подготовлено..."
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "Добавить"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "Добавить ÐдминиÑтративнуюКопию"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "Добавить Копию"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "Добавить критерий"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "Добавить еще файлы"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "Добавить Ñледующее ÑоÑтоÑние"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "Добавить автора заÑвки"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "Добавить значение"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "Добавить Ñкриплет Ð´Ð»Ñ Ñтой очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip which will apply to all queues"
-msgstr "Добавить Ñкриплет, который будет дейÑтвовать на вÑе очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "Добавить новый глобальный Ñкриплет"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "Добавить Ñкриплет Ð´Ð»Ñ Ñтой очереди"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "Добавить Ñкриплет, который будет дейÑтвовать на вÑе очереди"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "Добавить дополнительный критерий"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "Добавить комментарии или ответы на выбранные заÑвки"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "Добавить пользователей"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "Добавить наблюдателей"
-
-# Manual merge by Andrew Kornilov <andy@eva.dp.ua>
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr "Добавить, удалить или изменить Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… полей Ð´Ð»Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð¾Ð²"
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "ДобавлÑтьСледующееСоÑтоÑние"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "Пользователь добавлен как %1 Ð´Ð»Ñ Ñтой очереди"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "Пользователь добавлен как %1 Ð´Ð»Ñ Ñтой заÑвки"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "ÐдреÑ1"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "ÐдреÑ2"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "ÐдминиÑÑ‚Ñ€Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ ÐšÐ¾Ð¿Ð¸Ñ"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "ÐдминиÑтративный Комментарий"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "ÐдминиÑÑ‚Ñ€Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ ÐšÐ¾Ñ€Ñ€ÐµÑпонденциÑ"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "Управление очередÑми"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "Управление пользователÑми"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "Общие наÑтройки"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "Управление группами"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "ОÑновные параметры очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "ÐдминиÑтрироватьВÑеПерÑональныеГруппы"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "ÐдминиÑтративнаÑКопиÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "ÐдминиÑтрироватьКомментарий"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "ÐдминиÑтрироватьКорреÑпонденцию"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "ÐдминиÑтрироватьДополнительноеПоле"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "ÐдминиÑтрироватьДополнительныеПолÑ"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "ÐдминиÑтрироватьГруппу"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "ÐдминиÑтрироватьЧленÑтвоВГруппах"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "ÐдминиÑтрироватьСобÑтвенныеГруппы"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "ÐдминиÑтрироватьОчередь"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "ÐдминиÑтрироватьПользователей"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "ÐдминиÑÑ‚Ñ€Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ ÐšÐ¾Ð¿Ð¸Ñ"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "ÐдминиÑтраторы"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "Дополнительно"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "РаÑширенный поиÑк"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search Criteria"
-msgstr "Критерии раÑширенного поиÑка"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "ПоÑле"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "ВозраÑÑ‚"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias"
-msgstr "ПÑевдоним"
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "ПÑевдоним длÑ"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "Ð’Ñе Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ñ‹"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "Ð’Ñе дополнительные полÑ"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "Ð’Ñе очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "Ð’Ñегода отправлÑÑ‚ÑŒ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð°Ð¼ заÑвок незавиÑимо от Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÐµÐ»Ñ ÑообщениÑ"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "ПрименÑетÑÑ Ðº"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "Применить"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "Применить ваши изменениÑ"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "ПодтверждениÑ"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "Подтверждение #%1: %2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "Подтверждение #%1: ÐŸÑ€Ð¸Ð¼ÐµÑ‡Ð°Ð½Ð¸Ñ Ð½Ðµ Ñохранены из-за ÑиÑтемной ошибки"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "Подтверждение #%1: ÐŸÑ€Ð¸Ð¼ÐµÑ‡Ð°Ð½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñаны"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "Детали подтверждениÑ"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "Подтверждение получено"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "Подтверждение отклонено"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "Диаграмма подтверждений"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "Подтвердить"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "ÐŸÑ€Ð¸Ð¼ÐµÑ‡Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¸Ð²ÑˆÐµÐ³Ð¾: %1"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "Ðпр."
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "Ðпрель"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "Ð’ порÑдке возраÑтаниÑ"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "Ðазначение и удаление дополнительных полей"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "ÐазначатьДополнительныеПолÑ"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "Вложение"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "Вложить файл"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "Вложенный файл"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "Вложение '%1' не может быть загружено"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "Вложение Ñоздано"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° Ð´Ð»Ñ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "ВложениÑ"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "Ðтрибут удален"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "Ðвг."
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "ÐвгуÑÑ‚"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "Тип региÑтрации"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "Ðвтоответ"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "Ðвтоответ Ðвторам ЗаÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "ÐвтоответÐвторатЗаÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "ДоÑтупные колонки"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "ÐÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð°Ñ Ð¿Ð¾Ð´Ð¿Ð¸ÑÑŒ PGP: %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "Ðеверный идентификатор вложениÑ. Ðевозможно найти вложение '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "ÐÐµÐ¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð°Ñ Ð´Ð°Ñ‚Ð° в %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "Ðеправильный номер транзакции Ð´Ð»Ñ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ. %1 должен быть %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "ОÑновное"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "Ð¡ÐºÑ€Ñ‹Ñ‚Ð°Ñ ÐºÐ¾Ð¿Ð¸Ñ"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "Ðе забудьте Ñохранить наÑтройки"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "До"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "Ðачать подтверждение"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "Двоичный"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "ПуÑтой"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "СÑылка на Ñтот Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² избранное"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "СÑылка Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² избранное"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "Сокращенные заголовки"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "МножеÑтвенное обновление заÑвки"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "Ðевомзожно изменить ÑиÑтемных пользователей"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "Может ли данный пользователь проÑматривать Ñту очередь"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "Ðевозможно добавление Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»ÑŒÐ½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»Ñ Ð±ÐµÐ· наименованиÑ"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "Ðевозможно найти Ñохраненный Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ Ñ Ð½Ð¸Ð¼"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "Ðевозможно ÑвÑзать заÑвку Ñаму Ñ Ñобой"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "Ðевозможно объединить Ñ Ð¾Ð±ÑŠÐµÐ´Ð¸Ð½ÐµÐ½Ð½Ð¾Ð¹ заÑвкой (Ñта ошибка никогда не должна проиÑходить)."
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "Ðевозможно Ñохранить Ñтот запроÑ"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "Ðевозможно указывать одновременно и иÑточник и Ð°Ð´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "Ðевозможно Ñоздать пользователÑ: %1"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "КопиÑ"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "Изменить пароль"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "Выбрать вÑе"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "Выделите пункты Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "Выделите права, которые хотите отозвать"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "Потомки"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "Город"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "ОчиÑтить вÑе"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "Закрыто"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "Закрытые заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed requests"
-msgstr "Закрытые запроÑÑ‹"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "Закрытые заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Code"
-msgstr "Код"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "Команда не раÑпознана!\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "Комментировать"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸ÐµÐ²"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "Комментарий не запиÑан"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "Комментарии заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "КомментироватьЗаÑвку"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "Комментарии"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "Комментарии (Ðе отправлÑÑŽÑ‚ÑÑ Ð°Ð²Ñ‚Ð¾Ñ€Ð°Ð¼ заÑвки)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "Комментарии (Ðе отправлÑÑŽÑ‚ÑÑ Ð°Ð²Ñ‚Ð¾Ñ€Ð°Ð¼ заÑвки)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "Комментарии о %1"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "Комментарии об Ñтом пользователе"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "Комментарии добавлены"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "Применить ограничениÑ"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "УÑловие"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "ПодходÑщее уÑловие..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "УÑловие не найдено"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "КонфигурациÑ"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "Подтвердить"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "ÐšÐ¾Ð½Ñ‚Ð°ÐºÑ‚Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "Ðевезможно идентифицировать дату поÑледнего контакта '%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "Содержимое"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "Тип-СодержаниÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "Ðевозможно Ñоздать группу"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "КопиÑ"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "КорреÑпонденциÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ð´Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÑпонденции"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "КорреÑÐ¿Ð¾Ð½Ð´ÐµÐ½Ñ†Ð¸Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð°"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "КорреÑÐ¿Ð¾Ð½Ð´ÐµÐ½Ñ†Ð¸Ñ Ð½Ðµ запиÑана"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "Ðевозможно добавить новое значение дополнительного Ð¿Ð¾Ð»Ñ Ð·Ð°Ñвки."
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "Ðевозможно добавить новое значение дополнительного Ð¿Ð¾Ð»Ñ Ð·Ð°Ñвки. %1"
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr "Ошибка Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ полÑ. %1"
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "Ðевозможно изменить ответÑтвенного."
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "Ðевозможно Ñоздать дополнительное поле"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "Ðевозможно Ñоздать группу"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "Ðевозможно Ñоздать шаблон: %1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "Ðевозможно Ñоздать заÑвку. Ðе задана очередь."
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "Ðевозможно Ñоздать пользователÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "Ðевозможно Ñоздать Ð½Ð°Ð±Ð»ÑŽÐ´Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð° заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "Ðевозможно найти заÑвку Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ð¾Ð¼ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "Ðевозможно найти группу %1."
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "Ðевозможно найти или Ñоздать Ñтого пользователÑ"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "Ðевозможно найти Ñтого пользователÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "Ðевозможно найти Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1."
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "Ðевозможно загрузить дополнительное поле %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "Ðевозможно загрузить группу"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "Ðевозможно назначить Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1 Ð´Ð»Ñ Ñтой очереди"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "Ðевозможно назначить Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1 Ð´Ð»Ñ Ñтой заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "Ðевозможно отозвать функции у Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ ÐºÐ°Ðº %1 Ð´Ð»Ñ Ñтой очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "Ðевозможно отозвать функции у Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ ÐºÐ°Ðº %1 Ð´Ð»Ñ Ñтой заÑвки"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "Ðевозможно уÑтановить информацию о пользователе"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "Ðевозможно добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² группу"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "Ðевозможно Ñоздать транзакцию: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "Ðевозможно определить дальнейшие дейÑÑ‚Ð²Ð¸Ñ Ð¸Ð· ответа gpg\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "Ðевезможно найти группу\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "Ðевозможно найти Ñтроку"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "Ðевозможно найти Ñтого пользователÑ"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "Ðевозможно найти Ñто значение"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "Ðевозможно найти Ñтого наблюдателÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "Ðевозможно найти пользователÑ\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "Ðевозможно загрузить %1 из базы пользователей.\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr ""
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "Ðевозможно загрузить дополнительное поле %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "Ðевозможно загрузить файл наÑтроек RT '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "Ðевозможно загрузить Ñкриплеты."
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "Ðевозможно загрузить группу %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "Ðевозможно загрузить ÑÑылку"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "Ðевозможно загрузить объект %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "Ðевозможно загрузить очередь"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "Ðевозможно загрузить очередь %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "Ðевозможно загрузить Ñкриплет"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "Ðевозможно загрузить шаблон"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "Ðевозможно загрузить Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "Ðевозможно загрузить заÑвку '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "Страна"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "Создать"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "Создать заÑвки"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "Создать дополнительное поле"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "Создать дополнительное поле Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ 1"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "Создать дополнительное поле Ð´Ð»Ñ Ð²Ñех очередей"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "Добавить новое дополнительное поле"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "Создать новый глобальный Ñкриплет"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "Создать новый глобальный Ñкриплет"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "Создать новую группу"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "Создать новую личную группу"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "Создать новую очередь"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "Создать новый Ñкриплет"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "Создать новый шаблон"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "Создать новую заÑвку"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "Создать нового пользователÑ"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "Создать очередь"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "Создать очередь Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "Создать запроÑ"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "Создать Ñкриплет Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ %1"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "Создать шаблон"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "Создать заÑвку"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "Ошибка ÑозданиÑ: %1 / %2 / %3 "
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "Ошибка ÑозданиÑ: %1/%2/%3"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "Создать новые заÑвки на оÑнове Ñтого шаблона Ñкриплета"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "Создать заÑвку"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "Создать заÑвки в Ñтой очереди"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "Создать, удалить или изменить дополнительные полÑ"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "Создать, удалить или изменить очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "Создать, удалить или изменить членов любой пользовательÑкой перÑональной группы"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "Создать, удалить или изменить членов перÑональных групп"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "Создать, удалить или изменить пользователей"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "Создать ЗаÑвку"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "Создана"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "Создано дополнительное поле %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Created by"
-msgstr "Создано пользователем"
-
-#: NOT FOUND IN SOURCE
-msgid "Created during"
-msgstr "Создано во времÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "Создан шаблон %1"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "Ðвтор заÑвки"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "Текущие ÑвÑзи"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Relationships"
-msgstr "Текущие взаимоÑвÑзи"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "Текущие Ñкриплеты"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "Текущие пользователи"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "Текущие права"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "Текущие критерии поиÑка"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "Текущие наблюдатели"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "Дополнительное поле #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "Дополнительные полÑ"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "Дополнительные Ð¿Ð¾Ð»Ñ Ð´Ð»Ñ %1"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "ПользовательÑкий код очиÑтки дейÑтвиÑ"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "ПользовательÑкий код подготовки дейÑтвиÑ"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "ПользовательÑкое уÑловие"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "Дополнительное поле %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "Дополнительное поле %1 не отноÑитÑÑ Ðº Ñтому объекту"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "Дополнительное поле %1 имеет значение."
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "Дополнительное поле %1 не имеет значениÑ."
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "Ðевозможно найти дополнительное поле %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "Дополнительное поле удалено"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "Ðевозможно найти дополнительное поле"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "Ðевозможно найти значение %1 дополнительного Ð¿Ð¾Ð»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "Значение дополнительного Ð¿Ð¾Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¾ Ñ %1 на %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "Ðевозможно удалить значение дополнительного полÑ"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "Ðевозможно найти значение дополнительного Ð¿Ð¾Ð»Ñ "
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "Значение дополнительного Ð¿Ð¾Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¾"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "ДополнительноеПоле"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "Ошибка данных"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "Даты"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "Дек."
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "Декабрь"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "Шаблон автоответа по умолчанию"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "Шаблон автоответа по умолчанию"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "Очередь по умолчанию"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "Ðвтор заÑвки по умолчанию"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "Шаблон админиÑтративного ÐºÐ¾Ð¼Ð¼ÐµÐ½Ñ‚Ð°Ñ€Ð¸Ñ Ð¿Ð¾ умолчанию"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "Шаблон админиÑтративной корреÑпонденции по умолчанию"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "Шаблон корреÑпонденции по умолчанию"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "Шаблон транзакции по умолчанию"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "Умолчание: %1/%2 изменено Ñ %3 на %4"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "Делегирование прав"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "Делегирование отдельных прав, которые выданы вам."
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "ДелегироватьПрава"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "Делегирование прав"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "Удалить"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "Удалить шаблон"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "Удалить выбранные Ñкриплеты"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "Удалить заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "УдалÑтьЗаÑвку"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "Удаление Ñтого объекта может нарушить ÑÑылочную целоÑтноÑÑ‚ÑŒ"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "Удаление Ñтого объекта нарушит ÑÑылочную целоÑтноÑÑ‚ÑŒ"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "Удаление Ñтого объекта нарушит ÑÑылочную целоÑтноÑÑ‚ÑŒ"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "Удаление Ñтого объекта нарушит ÑÑылочную целоÑтноÑÑ‚ÑŒ."
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "Удаление Ñтого объекта нарушит ÑÑылочную целоÑтноÑÑ‚ÑŒ."
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "Отказать"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "От неё завиÑÑÑ‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "ЗавиÑимоÑти: \\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "Добавлено требование заÑвкой %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "Удалено требование заÑвкой %1"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "Добавлена завиÑимоÑÑ‚ÑŒ от %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "Удалена завиÑимоÑÑ‚ÑŒ от %1"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "ЗавиÑит от"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "ЗавиÑит от"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "Ð’ порÑдке убываниÑ"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "Опишите проблему"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "ОпиÑание"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "ПодробноÑти"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "Показать"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "Показать ÑпиÑок прав доÑтупа"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "Показать колонки"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "Показать шаблоны Ñкриплетов Ð´Ð»Ñ Ñтой очереди"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "Показать Ñкриплеты Ð´Ð»Ñ Ñтой очереди"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "Режим отображениÑ"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "Показать Ñохраненные запроÑÑ‹ Ð´Ð»Ñ Ñтой группы"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "Показать заÑвку #%1"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "РаÑпроÑтранÑетÑÑ Ð¿Ð¾ верÑии 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> GNU GPL.</a>"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "Делать вÑе и везде"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "Ðе обновлÑÑ‚ÑŒ Ñту Ñтраницу"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "Ðе показывать результаты поиÑка"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "Загрузить"
-
-#: NOT FOUND IN SOURCE
-msgid "Download all the tickets as a tab delimited file"
-msgstr "Загрузить вÑе заÑвки как файл Ñо значениÑми, разделенными табулÑцией"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "Загрузить как файл Ñо значениÑми, разделенными табулÑцией"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "Дан Ñрок"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "Ðевозможно разобрать Ñрок Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ñ‹ '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "ОШИБКÐ: Ðевозможно загрузить заÑвку '%1': %2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "Редактировать"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "Редактировать уÑловиÑ"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "Редактирование дополнительных полей Ð´Ð»Ñ %1"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "Редактировать ÑвÑзи"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "Редактировать запроÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Relationships"
-msgstr "Редактировать взаимоÑвÑзи"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "Редактировать шаблоны Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "Редактировать ключевые Ñлова"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "Редактировать Ñохраненные запроÑÑ‹ Ñтой группы"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "Редактировать Ñкриплеты"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "Редактировать ÑиÑтемные шаблоны"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "Редактирование шаблонов Ð´Ð»Ñ %1"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "РедактироватьСохраненныеЗапроÑÑ‹"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "Редактирование наÑтроек очереди %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "Редактирование наÑтроек Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "Редактирование Ð¿Ð¾Ð»Ñ %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "Редактирование ÑпиÑка пользователей группы %1"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "Редактирование ÑпиÑка пользователей перÑональной группы %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "Редактирование шаблона %1"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "Ðужно указать либо иÑточник, либо Ð°Ð´Ñ€ÐµÑ Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "Email"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "Email Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ занÑÑ‚"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "EmailAddress"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "EmailEncoding"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "ИÑпользуетÑÑ (ÑнÑтие отметки отключает иÑпользование Ñтого дополнительного полÑ)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "ИÑпользуетÑÑ (ÑнÑтие отметки отключает иÑпользование Ñтой группы)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "ИÑпользуетÑÑ (ÑнÑтие отметки отключает иÑпользование Ñтой очереди)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "ИÑпользуемые дополнительные полÑ"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "ИÑпользуемые очереди"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "Ðктивирован ÑÑ‚Ð°Ñ‚ÑƒÑ %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "Ðктивирован ÑтатуÑ: %1"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "Введите неÑколько значений"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "Введите объекты или ÑÑылки на объекты. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð´ÐµÐ»ÑÑŽÑ‚ÑÑ Ð¿Ñ€Ð¾Ð±ÐµÐ»Ð°Ð¼Ð¸."
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "Введите одно значение"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "Введите оxthtlb или ÑÑылки на оxthtlb. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð´ÐµÐ»ÑÑŽÑ‚ÑÑ Ð¿Ñ€Ð¾Ð±ÐµÐ»Ð°Ð¼Ð¸."
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "Введите заÑвки или ÑÑылки на заÑвки. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð´ÐµÐ»ÑÑŽÑ‚ÑÑ Ð¿Ñ€Ð¾Ð±ÐµÐ»Ð°Ð¼Ð¸."
-
-#: NOT FOUND IN SOURCE
-msgid "Enter tickets or URIs to link tickets to. Seperate multiple entries with spaces."
-msgstr "Введите заÑвки или ÑÑылки на заÑвки. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð´ÐµÐ»ÑÑŽÑ‚ÑÑ Ð¿Ñ€Ð¾Ð±ÐµÐ»Ð°Ð¼Ð¸."
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "Введите до %1 значений"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "Ошибка"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "Ошибка Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð°Ð±Ð»ÑŽÐ´Ð°Ñ‚ÐµÐ»Ñ"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "Ошибка в параметрах Queue->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Queue->DelWatcher"
-msgstr "Ошибка в параметрах Queue->DelWatcher"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "Ошибка в параметрах Queue->DeleteWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "Ошибка в параметрах Ticket->AddWatcher"
-
-#: NOT FOUND IN SOURCE
-msgid "Error in parameters to Ticket->DelWatcher"
-msgstr "Ошибка в параметрах Ticket->DelWatcher"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "Ошибка в параметрах Ticket->DeleteWatcher"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "РаÑширить заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Estimate"
-msgstr "РаÑчетно"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "РаÑчетное"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "Ð’Ñе"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "Пример:"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "ExternalAuthId"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "ExternalContactInfoId"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "Ð”Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "Ðевозможно найти пÑевдо-группу 'Привилегированные'"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "Ðевозможно найти пÑевдо-группу 'Ðепривилегированные'"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "Ошибка загрузки Ð¼Ð¾Ð´ÑƒÐ»Ñ %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "Фев."
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "Февраль"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "Заполнить неÑколько текÑтовых полей"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "Заполнить одно текÑтоввое поле"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "Заполнить до %1 текÑтовых полей"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "Конец"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "Конечный приоритет"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "Конечный приоритет"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "Ðайти группы, которые"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "Ðайти группы, которые"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "Ðайти новые/открытые заÑвки"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "Ðайти пользователей, у которых"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "ПоиÑк заÑвок"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "Подтвердить"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "Ðачало"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "ÐŸÐµÑ€Ð²Ð°Ñ Ñтраница"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "Foo Bar Baz"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "Foo!"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "Изменить принудительно"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "Ðайдено %quant(%1,ticket)"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "Ðайден объект"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "FreeformContactInfo"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "Птн."
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "Ð’Ñе заголовки"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "ВзÑÑ‚ÑŒ шаблон из файла"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "Берем текущего Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· pgp подпиÑи\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "Ðазначено %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "Общие"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "Общие дополнительные полÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "Общие Ñкриплеты"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "Общий шаблон: %1"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "Отправить"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "Отправить!"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "ÐŸÑ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð°Ñ pgp подпиÑÑŒ от %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "Перейти на Ñтраницу"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "Показать заÑвку"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "Групповые"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "Группа %1 %2: %3"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "Права группы"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "Пользователь уже входит в группу"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "Ðевозможно Ñоздать группу."
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "Ðевозможно Ñоздать группу: %1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "Группа Ñоздана"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "Ð’ группе нет такого пользователÑ"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "Группа не найдена"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "Группа не найдена.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "Ðе задана группа.\\n"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "Группы"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "Группы не могут быть членами входÑщих в них пользователей"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "Группы, удовлетворÑющие уÑловию поиÑка"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "Группы, в которых ÑоÑтоит Ñтот пользователь"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "ЗдравÑтвуйте!"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "ЗдравÑтвуйте, %1"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "ИÑториÑ"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹ %1"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "Домашний телефон"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "В начало"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "ИмеетÑÑ %quant(%1,concrete mixer)."
-
-#: NOT FOUND IN SOURCE
-msgid "I have [quant,_1,concrete mixer]."
-msgstr "ИмеетÑÑ [quant,_1,concrete mixer]."
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "ЗаÑвка"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "ЛичноÑÑ‚ÑŒ"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "ЕÑли подтверждение отклонено, отклонить заÑвку-первоиÑточник и удалить ожидающие подтверждениÑ"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "ЕÑли не указан Ðвтор, Ñоздать заÑвки от имени Ñтого Ðвтора."
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "ЕÑли очередь не указана, то Ñоздавать заÑвки в Ñтой очереди."
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "ЕÑли бы Ñта программа имела уÑтановленный бит setgid, то зловредный пользователь мог бы воÑпользоватьÑÑ Ñтим Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтративных полномочий в RT."
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "ПоÑле любых изменений необходимо"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "ÐедопуÑтимое значение Ð´Ð»Ñ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "Изображение"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "ÐеизменÑемое поле"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "Показывать неиÑпользуемые дополнительные полÑ."
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "Показывать неиÑпользуемые группы."
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "Показывать неиÑпользуемые очереди."
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "Показывать отключенных пользователей."
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "Ðачальный приоритет"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "Ðачальный приоритет"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "Ошибка ввода"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "ВнутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "ВнутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°: %1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "ÐедопуÑтимый тип группы"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "ÐедопуÑтимое право"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "ÐедопуÑтимый тип"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "ÐедопуÑтимые данные"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "ÐеÑущеÑтвующий ответÑтвенный. ИÑпользуем 'nobody'."
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´ÑŒ"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "ÐедопуÑтимое право"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "ÐедопуÑтимое значение Ð´Ð»Ñ %1"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "ÐедопуÑтимое значение дополнительного полÑ"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "ÐедопуÑтимое значение ÑтатуÑа"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "Обратите внимание, что непривилегированные пользователи не имеют права запуÑкать Ñту программу."
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "ПредполагаетÑÑ, что Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка Ñтой программы вы должны Ñоздать непривилегированную учетную запиÑÑŒ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Unix Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ñ‹Ð¼Ð¸ уÑтановками групп и доÑтупом к RT."
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "Это требует неÑколько параметров:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "ЗаÑвки, ожидающие вашего подтверждениÑ"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "Янв."
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "Январь"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "ПриÑоединитьÑÑ Ð¸Ð»Ð¸ покинуть Ñту группу"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "Июл."
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "Июль"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "Ð’Ñе данные"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "Июн."
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "Июнь"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "Ключевое Ñлово"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "Язык"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "Язык"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "Конец"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "ПоÑледний контакт"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Contact</a>"
-msgstr "ПоÑледний контакт</a>"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "ПоÑледний контакт"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "ПоÑледнее уведомление"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "ПоÑледнее обновление"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "ПоÑледнее обновление"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "ПоÑледний раз обновлено"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "ОÑталоÑÑŒ"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "Разрешить доÑтуп к RT"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "ПредоÑтавить пользователю права"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "Ограничиваем ответÑтвенного Ð´Ð»Ñ %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "Ограничиваем очередь Ð´Ð»Ñ %1 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "СвÑзь уже ÑущеÑтвует"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "Ðевозможно Ñоздать ÑвÑзь"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "СвÑзь Ñоздана (%1)"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "СвÑзь удалена (%1)"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "СвÑзь не найдена"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "СвÑзать заÑвку #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "СвÑзать заÑвку %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "СвÑзи"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "Загрузить"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "Загрузить Ñохраненный запроÑ:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "Загруженные модули perl"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "МеÑтонахождение"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "Ðе найден каталог Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ %1 или не доÑтупен на запиÑÑŒ.\\n RT не может продолжить работу."
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "ЗарегиÑтрирован как %1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "Войти"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "Выйти"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr ""
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "Ðазначить ответÑтвенного"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "УÑтановить ÑтатуÑ"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "УÑтановить конечный Ñрок"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "УÑтановить дату решениÑ"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "УÑтановить дату 'Ðачато'"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "УÑтановить дату 'ÐачинаетÑÑ'"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "УÑтановить дату поÑледнего контакта"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "УÑтановить приоритет"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "Ðазначить очередь"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "УÑтановить тему"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "Управление дополнительными полÑми и их значениÑми"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "Управление группами и членами групп"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "Управление ÑвойÑтвами и наÑтройками, которые применÑÑŽÑ‚ÑÑ ÐºÐ¾ вÑем очередÑм"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "Управление очередÑми и их параметрами"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "Управление пользователÑми и паролÑми"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "Мар."
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "Март"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "Май"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "Май"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "УчаÑтник %1 добавлен"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "УчаÑтник %1 удален"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "Пользователь добавлен в группу"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "Пользователь удален из группы"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "Пользователь не удален из группы"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "СоÑтоит в"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "СоÑтоит в"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "УчаÑтники"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "УчаÑтие в %1 добавлено"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "УчаÑтие в %1 удалено"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "УчаÑтие в группах"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "УчаÑтие в группах данного Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "ЗаÑвки уÑпешно объединены"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "Ошибка объединениÑ. Ðевозможно уÑтановить идентификатор заÑвки."
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "Объединить Ñ Ð·Ð°Ñвкой"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "Объединено в %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "Сообщение"
-
-#: NOT FOUND IN SOURCE
-msgid "Message body not shown because it is too large or is not plain text."
-msgstr "Тело ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð½Ðµ показано потому, что оно или Ñлишком большое или не ÑвлÑетÑÑ Ñ‚ÐµÐºÑтом."
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "Ðевозможно запиÑать Ñообщение"
-
-#: NOT FOUND IN SOURCE
-msgid "Message recipients"
-msgstr "Получатели ÑообщениÑ"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "Сообщение запиÑано"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ð± Ñтой заÑвке не будет отправлены..."
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "Пропущен первичный ключ?: %1"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "Мобильный"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "Мобильный телефон"
-
-#: NOT FOUND IN SOURCE
-msgid "Modified"
-msgstr "Изменено"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify"
-msgstr "Изменить"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "Изменить ÑпиÑок ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð´Ð¾Ñтупа"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Field %1"
-msgstr "Изменить дополнительное поле %1"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "Изменить дополнительные полÑ, применÑемые ко вÑем %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "Изменить дополнительные полÑ, применÑемые ко вÑем очередÑм"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "Изменить права группы"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "Изменить учаÑтников"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "Изменить права"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "Изменить шаблоны Ñкриплетов Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ очереди"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "Изменить Ñкриплеты Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "Изменить ÑиÑтемные права доÑтупа"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "Изменить шаблон %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "Изменить права пользователÑ"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "Изменить дополнительное поле Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "Изменить дополнительное поле, которое применÑетÑÑ ÐºÐ¾ вÑем очередÑм"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "Изменить Ñкриплет Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ %1"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "Изменить Ñкриплет, который дейÑтвует Ð´Ð»Ñ Ð²Ñех очередей"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "Изменить аÑÑоциированные объекты Ð´Ð»Ñ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "Изменить даты заÑвки #%1"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "Изменить даты заÑвки #%1"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "Изменить даты заÑвки #%1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "Изменить общие права группы"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "Изменить общие права группы."
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "Изменить общие права Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "Изменить общие права Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "Изменить общие Ñкриплеты"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "Изменить общие права пользователÑ"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "Изменить общие права пользователÑ."
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "Изменить метаданные группы или удалить ее"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "Изменить права группы на дополнительное поле %1"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "Изменить права группы на группу %1"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "Изменить права группы на очередь %1"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "Изменить ÑпиÑок учаÑтников Ñтой группы"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "Изменить ÑобÑтвенную учетную запиÑÑŒ RT"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "Изменить пользователей, отноÑÑщихÑÑ Ðº очереди %1"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "Изменить пользователей, отноÑÑщихÑÑ Ðº заÑвке #%1"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "Изменить Ñкриплеты Ð´Ð»Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´Ð¸ %1"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "Изменить Ñкриплеты, которые дейÑтвуют на вÑе очереди"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "Изменить шаблон %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "Изменить шаблоны, которые применÑÑŽÑ‚ÑÑ ÐºÐ¾ вÑем очередÑм"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "Изменить группу %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "Изменить очередь наблюдателей"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "Изменить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "Изменить заÑвку # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "Изменить заÑвку # %1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "Изменить заÑвки"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "Изменить права Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ð° дополнительное поле %1"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "Изменить права пользователей группы %1"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "Изменить права Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ð° очередь %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "Изменить наблюдателей очереди '%1'"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "ИзменÑтьПраваДоÑтупа"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr "ИзменÑтьДополнительноеПоле"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "ИзменÑтьСобÑтвенноеУчаÑтиеВГруппах"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "ИзменÑÑ‚ÑŒÐаблюдателейОчереди"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "ИзменÑтьСкриплеты"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "ИзменÑтьСебÑ"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "ИзменÑтьШаблон"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "ИзменÑтьЗаÑвку"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "Пнд."
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Move"
-msgstr "ПеремеÑтить"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "ПеремеÑтить вниз"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "ПеремеÑтить вверх"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "ÐеÑколько значений"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "Ð’Ñ‹ должны указать ИмÑ"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "%1 ваших заÑвок"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "Ваши подтверждениÑ"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "Ваши подтверждениÑ"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "Ваши Ñохраненные запроÑÑ‹"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "ИмÑ"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "Ð˜Ð¼Ñ ÑƒÐ¶Ðµ иÑпользуетÑÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Name matches"
-msgstr "Совпадение имен"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "Ðеобходимо подтверждение ÑиÑтемного админиÑтратора"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "Ðикогда"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "Ðовых"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "Ðовые ÑвÑзи"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "Ðовый пароль"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "Ðовое ожидающее подтверждение"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "Ðовый запроÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "New Relationships"
-msgstr "Ðовые ÑвÑзи"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "Ðовый поиÑк"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "Ðовое дополнительное поле"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "ÐÐ¾Ð²Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð°"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "Ðовый пароль"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "Отправлено Ñообщение Ñ Ð½Ð¾Ð²Ñ‹Ð¼ паролем"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "ÐÐ¾Ð²Ð°Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´ÑŒ"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "Ðовый запроÑ"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "Ðовые права"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "Ðовый Ñкриплет"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "Ðовый поиÑк"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "Ðовый шаблон"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ñвка"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ñвка не ÑущеÑтвует"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "Ðовый пользователь"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "Добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "Ðовые наблюдатели"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "Ðовые наÑтройки окна"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "Вперед"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "Ð¡Ð»ÐµÐ´ÑƒÑŽÑ‰Ð°Ñ Ñтраница"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "Ð¡Ð»ÐµÐ´ÑƒÑŽÑ‰Ð°Ñ Ñтраница"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "ПÑевдоним"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "ПÑевдоним"
-
-#: NOT FOUND IN SOURCE
-msgid "No"
-msgstr "Ðет"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr ""
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "Ðет дополнительного полÑ"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "Дополнительное поле не указано"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "Группа не указана"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "Ðет запроÑа"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "Очередь не указана"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "Пользователь RT не найден. ПожалуйÑта, обратитеÑÑŒ к вашему админиÑтратору RT.\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "Ðет шаблона"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "ЗаÑвка не указана. Отмена."
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "ЗаÑвка не указана. ОтменÑем Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð·Ð°Ñвки\\n\\n"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "Ðет дейÑтвиÑ"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "Колонка не указана"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "Команда не найдена\\n"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "Ðет комментариев о пользователе"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "ПуÑтое Ñообщение"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "Ðет опиÑÐ°Ð½Ð¸Ñ Ð´Ð»Ñ %1"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "Ðе указана группа"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "Группы, удовелÑтворÑющие уÑловию поиÑка, не найдены."
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "Ðет приÑоединенных Ñообщений"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "Пароль не уÑтановлен"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "Ðет прав Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾Ñ‡ÐµÑ€ÐµÐ´ÐµÐ¹"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "Ðет прав Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð·Ð°Ñвок в очереди '%1'"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "Ðет прав Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "Ðет прав Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра Ñтой заÑвки"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "Ðет прав Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра обновлений Ñтой заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "Пользователь не указан"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "Пользователи не выбраны."
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "Очереди, удовелÑтворÑющие уÑловию поиÑка, не найдены."
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "Права не найдены"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "Права не выданы."
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "Ðет запроÑа Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка."
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "Ðет темы"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "Идентификатор заÑвки не указан"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "Тип транзакции не указан"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "Пользователь или Ð°Ð´Ñ€ÐµÑ email не указан"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "Пользователи, удовелÑтворÑющие уÑловию поиÑка, не найдены."
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "Ðе найден пользователь RT. Обработчик CVS отключен. ОбратитеÑÑŒ к админиÑтратору RT.\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "Ðикакое значение не отправлено _Set!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "Ðикто"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "ÐеÑущеÑтвующее поле?"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "Ðе зарегиÑтрирован"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "Ðе зарегиÑтрирован."
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "Ðе уÑтановлено"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "Еще не реализовано."
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "Еще не реализовано..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "ПримечаниÑ"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "Ðевозможно отправить уведомление"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "УведомлÑÑ‚ÑŒ ÐдминиÑтративныеКопии"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "УведомлÑÑ‚ÑŒ ÐдминиÑтративныеКопии как Комментарий"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "УведомлÑÑ‚ÑŒ Копии"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "УведомлÑÑ‚ÑŒ Копии как Комментарий"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "УведомлÑÑ‚ÑŒ других Получателей"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "УведомлÑÑ‚ÑŒ других Получателей как Комментарий"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенного"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенного как Комментарий"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенного об отклонении заÑвки"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенного о подтверждении заÑвки вÑеми подтверждающими"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенного о подтверждении заÑвки одним из подтверждающих"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "УведомлÑÑ‚ÑŒ ОтветÑтвенных и ÐдминиÑтративныеКопии о новых, ожидающих их подтверждениÑÑ…"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "УведомлÑÑ‚ÑŒ ÐвторовЗаÑвки"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "УведомлÑÑ‚ÑŒ ÐвторовЗаÑвки и Копии"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "УведомлÑÑ‚ÑŒ ÐвторовЗаÑвки и Копии как Комментарий"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "УведомлÑÑ‚ÑŒ Ðвторов заÑвки, Копии и ÐдминиÑтративныеКопии"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "УведомлÑÑ‚ÑŒ Ðвторов заÑвки, Копии и ÐдминиÑтративныеКопии как Комментарии"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "ÐоÑ."
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "ÐоÑбрь"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "Ðевозможно Ñоздать объект"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "Объект Ñоздан"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "Тип объекта %1 не может Ñодержать дополнительные полÑ"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "ÐеÑовпадение типа объекта"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "Окт."
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "ОктÑбрь"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "Ðвтономно"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "Ðвтономное редактирование"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "ÐÐ²Ñ‚Ð¾Ð½Ð¾Ð¼Ð½Ð°Ñ Ð·Ð°ÐºÐ°Ñ‡ÐºÐ°"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "Ðа"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "Ðа комментарий"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "При КорреÑпонденции"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "При Создании"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "При Изменении ОтветÑтвенного"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "При Изменении Приоритета"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "При Изменении Очереди"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "При Решении"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "При Изменении СтатуÑа"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "При Транзакции"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "Показывать Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð´Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов, Ñозданных поÑле %1"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "Показывать Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð´Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñов Ñозданных до %1"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "Открытых"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "Открыть"
-
-#: NOT FOUND IN SOURCE
-msgid "Open requests"
-msgstr "Открыть запроÑÑ‹"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "Открыть заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "Открыть заÑвки (из ÑпиÑка) в новом окне"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "Открыть заÑвки (из ÑпиÑка) в другом окне"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "Открыть заÑвки при корреÑпонденции"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "Сортировать по"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "ПорÑдок и Ñортировка"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "ОрганизациÑ"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "ЗаÑвка-первоиÑточник: #%1"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "ИÑходÑÑ‰Ð°Ñ Ð¿Ð¾Ñ‡Ñ‚Ð° о комментарии запиÑана"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "ИÑходÑÑ‰Ð°Ñ Ð¿Ð¾Ñ‡Ñ‚Ð° запиÑана"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "Со временем поднÑÑ‚ÑŒ приоритет до"
-
-#: NOT FOUND IN SOURCE
-msgid "Overview"
-msgstr "Обзор"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "Ðазначить ÑебÑ"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "БытьОтветÑтвеннымЗаЗаÑвку"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "ОтветÑтвенный"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "ОтветÑтвенный изменен Ñ %1 на %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "ОтветÑтвенный не может быть назначен"
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "ОтветÑтвенный принудительно изменен Ñ %1 на %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "ОтветÑтвенный"
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "Страница %1 из %2"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "Пейджер"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "Телефон пейджера"
-
-#: NOT FOUND IN SOURCE
-msgid "Parent"
-msgstr "Предок"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "Предки"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "Пароль"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "ПодÑказка к паролю"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "Пароль Ñлишком короткий"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "Пароль: %1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "Пароли не Ñовпадают"
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "Пароли не Ñовпадают. Ваш пароль не был изменен"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "Пользователи"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "Выволнить дейÑтвие, указанное пользователем"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Perl"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "Ðет доÑтупа"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "Личные группы"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "Личные группы"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "Личные группы:"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "Ðомера телефонов"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "Заполнитель"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "ÐаÑтройки"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "ÐаÑтройки"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "Подготовка не реализована"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "Ðазад"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "ÐŸÑ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ Ñтраница"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "ÐŸÑ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð°Ñ Ñтраница"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "Приоритет"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "Пользователь %1 не найден."
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "Приоритет"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "Приоритет начинаетÑÑ Ñ"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "КонфиденциальноÑÑ‚ÑŒ:"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "Привилегированные"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "СоÑтоÑние привилегий: %1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "Привилегированные пользователи"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "Проекты"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "ПÑевдогруппы Ð´Ð»Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ³Ð¾ иÑпользованиÑ"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "ЗапроÑ"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "ПоÑтроитель запроÑа"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "Очередь"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "Очередь %1 не найдена"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "Очередь '%1' не найдена\\n"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "Ðаименование очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "Скриплеты очереди"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "Очередь уже ÑущеÑтвует"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "Ðевозможно Ñоздать очередь"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "Ðевозможно загрузить очередь"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "Очередь Ñоздана"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "Очередь не указана."
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "Очередь не найдена"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "Очереди"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "БыÑтрый поиÑк"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "БыÑтрое Ñоздание заÑвки"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr ""
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "RT %1 Ð´Ð»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 от <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "ÐаÑтройка RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "Ошибка региÑтрации в RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "ПиÑьмо возвращено RT: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "Ошибка конфигурации RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "КритичеÑÐºÐ°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° RT: Сообщение не было Ñохранено!"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "Ошибка RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT получил Ñвое ÑобÑтвенное Ñообщение (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT получил Ñвое ÑобÑтвенное Ñообщение (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service"
-msgstr "СамообÑлуживание RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "СамообÑлуживание RT / Закрытые заÑвки"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "Переменные RT"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "Обзор RT"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT не может зарегиÑтрировать ваÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT не Ñмог найти автора заÑвки во внешней базе данных"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT не может найти очередь: %1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT не может проверить Ñту подпиÑÑŒ PGP. \\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "RT Ð´Ð»Ñ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "RT Ð´Ð»Ñ %1: %2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT выполнил ваши команды"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "Ð’Ñе права на RT защищены и охранÑÑŽÑ‚ÑÑ Ð·Ð°ÐºÐ¾Ð½Ð¾Ð¼. &copy; 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. ПО раÑпроÑтранÑетÑÑ Ð¿Ð¾Ð´ <a href=\"http://www.gnu.org/copyleft/gpl.html\">Стандартной ОбщеÑтвенной Лицензией GNU ВерÑии 2.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent <jesse@bestpractical.com>. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "Ð’Ñе права на RT защищены и охранÑÑŽÑ‚ÑÑ Ð·Ð°ÐºÐ¾Ð½Ð¾Ð¼. &copy; 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. ПО раÑпроÑтранÑетÑÑ Ð¿Ð¾Ð´ <a href=\"http://www.gnu.org/copyleft/gpl.html\">Стандартной ОбщеÑтвенной Лицензией GNU ВерÑии 2.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-2002 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "Ð’Ñе права на RT защищены и охранÑÑŽÑ‚ÑÑ Ð·Ð°ÐºÐ¾Ð½Ð¾Ð¼. &copy; 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. ПО раÑпроÑтранÑетÑÑ Ð¿Ð¾Ð´ <a href=\"http://www.gnu.org/copyleft/gpl.html\">Стандартной ОбщеÑтвенной Лицензией GNU ВерÑии 2.</a>"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT Ñчитает, что Ñто Ñообщение может быть возвратом"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT будет обрабатывать Ñто Ñообщение как неподпиÑанное.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "Командный режим RT email требует иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñи .PGP. Ð’Ñ‹ либо не подпиÑали Ñообщение, либо ваша подпиÑÑŒ не может быть проверена."
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "Полное имÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "Полное имÑ"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "СÑылка на заÑвку заÑвки %1 добавлена"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "СÑылка на заÑвку заÑвки %1 удалена"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "СÑылка на %1 добавлена"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "СÑылка на %1 удалена"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "Ðа неё ÑÑылаютÑÑ"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "СÑылаетÑÑ Ð½Ð°"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "СÑылаетÑÑ Ð½Ð°"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "ОчиÑтить"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "ОчиÑтить запроÑ"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "ОбновлÑÑ‚ÑŒ Ñту Ñтраницу каждые %1 минут."
-
-#: NOT FOUND IN SOURCE
-msgid "Relationships"
-msgstr "СвÑзи"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "Удалить админиÑтративную копию"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "Удалить копию"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "Удалить Ðвтора ЗаÑвки"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "Ответить"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ð´Ð»Ñ Ð¾Ñ‚Ð²ÐµÑ‚Ð°"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "Отвечать авторам заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "Отвечать на заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "ОтвечатьÐаЗаÑвку"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "Ðвтор заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "Email автора заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "Ðвтор(-Ñ‹)"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "ÐÐ´Ñ€ÐµÑ Ðвтора заÑвки"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "Ðвторы заÑвок"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "ЗапроÑÑ‹ должны быть обработаны за"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "Ðеобходимый параметр '%1' не указан"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "ОчиÑтить"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "Домашний"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "Решить"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "Решить заÑвка #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "Решено"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "Ответ авторам заÑвки"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "Результаты"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "Результатов на Ñтранице"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "Повторите пароль"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "Обратить"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "Право %1 не найдено Ð´Ð»Ñ %2 %3 в рамках %4 (%5)\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "Право делегировано"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "Право выдано"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "Право загружено"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "Право не может быть отозвано"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "Право не найдено"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "Право не загружено"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "Право отозвано"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "Права"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "Ðевозможно выдать права Ð´Ð»Ñ %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "Ðевозможно отозвать права %1"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "ПÑевдо-группы"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "Строк на Ñтранице"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "Суб."
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "Сохранить"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "Сохранить изменениÑ"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "Сохранить наÑтройки"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "Сохранить изменениÑ"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "Сохраненные запроÑÑ‹"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "Скриплет #%1"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "Скриплет Ñоздан"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "ÐŸÐ¾Ð»Ñ Ñкриплетов"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "Скриплет удален"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "Скриплеты"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "Скриплеты Ð´Ð»Ñ %1\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "Скриплеты, которые дейÑтвуют Ð´Ð»Ñ Ð²Ñех очередей"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "ПоиÑк"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "Критерии поиÑка"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "ПоиÑк подтверждений"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "ЗапроÑÑ‹ не могут быть аÑÑоциированы Ñ Ñ‚Ð°ÐºÐ¸Ð¼ типом объекта"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "БезопаÑноÑÑ‚ÑŒ:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "ПроÑмотреть дополнительные полÑ"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "ПроÑмотреть полноÑтью иÑходÑщую почту и ее получателей"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "ПроÑмотреть конфиденциальный комментарий заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "ПроÑмотреть Ñводную информацию заÑвки"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "ПроÑматриватьДополнительныеПолÑ"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "ПроÑмативатьОчередь"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "Выбрать"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "Выберите дополнительное поле"
-
-#: NOT FOUND IN SOURCE
-msgid "Select a Custom Fields"
-msgstr "Выберите дополнительные полÑ"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "Выберите группу"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "Выберите очередь"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr "Выберите очередь Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ новой заÑвки"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "Выберите пользователÑ"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "Выберите дополнительное поле"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "Выберите группу"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "Выбрать неÑколько значений"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "Выбрать одно значение"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "Выберите очередь"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "Выберите Ñкриплет"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "Выберите шаблон"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "Выберите до %1 значений"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "Выберите пользователÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "Выбрать неÑколько"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "Выбрать одно"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "Выбранные дополнительные полÑ"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "Выбранные объекты"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "СамообÑлуживание"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "Отправить Ñообщение вÑем наблюдателÑм"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "Отправить Ñообщение вÑем наблюдателÑм как \"комментарий\""
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "Отправить Ñообщение вÑем Ðвторам заÑвки и КопиÑм"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "Отправить Ñообщение вÑем Ðвторам заÑвки и КопиÑм"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "ОтправлÑет Ñообщение авторам заÑвки"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "ОтправлÑÑ‚ÑŒ почту Ñвно указанным КопиÑм и СкрытымКопиÑм"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "ОтправлÑÑ‚ÑŒ почту КопиÑм"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "ОтправлÑÑ‚ÑŒ почту КопиÑм как комментарий"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "ОтправлÑÑ‚ÑŒ почту ÐдминиÑтративнымКопиÑм"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "ОтправлÑÑ‚ÑŒ почту ÐдминиÑтративнымКопиÑм как комментарий"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "ОтправлÑÑ‚ÑŒ почту ОтветÑтвенному"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "Сен."
-
-#: NOT FOUND IN SOURCE
-msgid "Seperate multiple URLs with spaces"
-msgstr "РазделÑйте неÑколько ÑÑылок пробелами"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "СентÑбрь"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "Показать"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "Показать подтверждениÑ"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "Показать колонки"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "Показать результаты"
-
-#: NOT FOUND IN SOURCE
-msgid "Show advanced search options..."
-msgstr "Показать дополнительные параметры поиÑка..."
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "Показать подтвержденные запроÑÑ‹"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "Показать оÑновное"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "Показать отклоненные запроÑÑ‹"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "Показать подробноÑти"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "Показать ожидающие запроÑÑ‹"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "Показать запроÑÑ‹, ждущие других подтверждений"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "Показать конфиденциальный комментарий заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "Показать Ñводную информацию заÑвки"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "ПоказыватьПраваДоÑтупа"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "ПоказыватьИÑходÑщуюПочту"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "ПоказыватьСохраненныеЗапроÑÑ‹"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "ПоказыватьСкриплеты"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "ПоказыватьШаблон"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "ПоказыватьЗаÑвку"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "ПоказыватьКомментарииЗаÑвки"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "ПодпиÑатьÑÑ ÐºÐ°Ðº Ðвтор заÑвки или ÐšÐ¾Ð¿Ð¸Ñ Ð·Ð°Ñвки или очереди"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "ПодпиÑатьÑÑ ÐºÐ°Ðº ÐдминиÑтративнаÑÐšÐ¾Ð¿Ð¸Ñ Ð·Ð°Ñвки или очереди"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "ПодпиÑÑŒ"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "ЗарегиÑтрирован как %1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "Одно значение"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "ПропуÑтить меню"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "Сортировка"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort Order"
-msgstr "Метод Ñортировки"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "Ключ Ð´Ð»Ñ Ñортировки"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "Сортировать по полю"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "ПорÑдок Ñортировки"
-
-#: NOT FOUND IN SOURCE
-msgid "Squelched message recipients"
-msgstr "Скрытые получатели ÑообщениÑ"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "СтадиÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "ПриоÑтановленных"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "ÐÐ°Ñ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ñтраница"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "ÐачалÑÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "Ðе могу разобрать дату 'ÐачалÑÑ': '%1'"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "ÐачнетÑÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "Ðачато"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "Ðе могу разобрать дату 'Ðачато': '%1'"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "СоÑтоÑние"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "СтатуÑ"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "Изменение ÑтатуÑа"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½ Ñ %1 на %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "ИзменÑтьСтатуÑ"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "Переназначать Ñебе"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "Переназначить заÑвки Ñебе"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "ПереназначатьЗаÑвкуСебе"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "ОтветÑтвенный переназначен Ñ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "ОтветÑтвенный переназначен Ñ %1 "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "Тема"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "Тема изменена на %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "Отправить"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Query"
-msgstr "Отправить запроÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "Отправить поÑледовательноÑÑ‚ÑŒ дейÑтвий"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "УÑпешно"
-
-#: NOT FOUND IN SOURCE
-msgid "Summary"
-msgstr "Ð¡Ð²Ð¾Ð´Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ"
-
-#: NOT FOUND IN SOURCE
-msgid "Summary matches"
-msgstr "Ð’Ñего Ñовпадений"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "Ð’Ñк."
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "ÐдминиÑтратор"
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "СиÑтемные"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Право не выдано"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Право не выдано"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "СиÑтемные утилиты"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Право не делегировано."
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "CиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Право не выдано."
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Ðевозможно выдать права"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "СиÑтемные группы"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¿Ñевдо-группа Ð´Ð»Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ³Ð¾ иÑпользованиÑ"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "ВзÑÑ‚ÑŒ Ñебе"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "ВзÑÑ‚ÑŒ заÑвки ÑебÑ"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "БратьЗаÑвкуСебе"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "ВзÑта"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "Задача"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "Шаблон"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "Шаблон #%1"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "Шаблон удален"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "Шаблон не найден"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "Шаблон не найден\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "Шаблон обработан"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "Шаблоны"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "Шаблоны Ð´Ð»Ñ %1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "ТекÑÑ‚"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "Это уже текущее значение"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "Это поле не может иметь такого значениÑ"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "Значение не изменилоÑÑŒ"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "Этот пользователь уже имеет Ñто право."
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "Этот пользователь уже %1 Ð´Ð»Ñ Ñтой очереди"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "Этот пользователь уже %1 Ð´Ð»Ñ Ñтой заÑвки "
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "Этот пользователь не %1 Ð´Ð»Ñ Ñтой очереди"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "Этот пользователь не %1 Ð´Ð»Ñ Ñтой заÑвки"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "Эта очередь не ÑущеÑтвует"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "Эта заÑвка имеет неразрешенные завиÑимоÑти"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "Пользователь уже имеет Ñто право"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "Пользователь уже ответÑтвенен за Ñту заÑвку"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "Пользователь не ÑущеÑтвует"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "Этот пользователь уже привилегированный"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "Этот пользователь уже непривилегированный"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "Этот пользователь теперь привилегированный"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "Этот пользователь теперь непривилегированный"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "Пользователь теперь непривилегированный"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "Этот пользователь не может быть ответÑтвенным за заÑвки в Ñтой очереди"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "Это не чиÑловой идентификатор"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "ОÑновное"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "ÐšÐ¾Ð¿Ð¸Ñ Ð·Ð°Ñвки"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "ÐдминиÑÑ‚Ñ€Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ ÐºÐ¾Ð¿Ð¸Ñ Ð·Ð°Ñвки"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "Комментарий запиÑан"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "ÐижеÑÐ»ÐµÐ´ÑƒÑŽÑ‰Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° найдет вÑе активные заÑвки в очереди 'ОÑновнаÑ' и уÑтановит им приоритет 99, еÑли в них небыло активноÑти более 4-Ñ… чаÑов:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "Эти команды не были выполнены:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "Ðовое значение уÑтановлено"
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "ОтветÑтвенный за заÑвку"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "Ðвтор заÑвки"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "Эти комментарии не показываютÑÑ Ð¾Ð±Ñ‹ÐºÐ½Ð¾Ð²ÐµÐ½Ð½Ð¾Ð¼Ñƒ пользователю"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "Это дополнительное поле не отноÑитÑÑ Ðº Ñтому объекту"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "Это возможноÑÑ‚ÑŒ доÑтупна только Ð´Ð»Ñ ÑиÑтемных админиÑтраторов."
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "Это Ñообщение будет отправлено..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "Эта заÑвка %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "Этот инÑтрумент позволÑет пользователю запуÑкать некоторые модули Perl из RT."
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "Похоже, что Ñта Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ð¸Ñ Ð½Ðµ имеет Ñодержимого"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "%1 заÑвок макÑимального приоритета Ñтого пользователÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "25 важнейших заÑвок пользователÑ..."
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "Чтв."
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "ЗаÑвка"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "ЗаÑвка # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "ЗаÑвка # %1 Изменение вÑех данных: %2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "ЗаÑвка #%1 Изменение вÑех данных: %2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "ЗаÑвка #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "ЗаÑвка %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "ЗаÑвка %1 Ñоздана в очереди '%2'"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "ЗаÑвка %1 загружена\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "ЗаÑвка %1: %2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "Дополнительные Ð¿Ð¾Ð»Ñ Ð·Ð°Ñвки"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð·Ð°Ñвки # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "ЗаÑвка #"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "ЗаÑвка решена"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "Транзакции заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "Ð’Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð·Ð°Ñвки"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "Содержимое заÑвки"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "Тип данных Ñодержимого заÑвки"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "ЗаÑвка не может быть Ñоздана из-за внутренней ошибки"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "ЗаÑвка Ñоздана"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "Ðевомзожно Ñоздать заÑвку"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "ЗаÑвка удалена"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "Идентификатор заÑвки не найден"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "ЗаÑвка уничтожена"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "Метаданные заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "ЗаÑвка не найдена"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð·Ð°Ñвки изменен"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "Ðаблюдатели за заÑвкой"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "ПоиÑк заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "ЗаÑвки %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "ЗаÑвки %1 Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "ЗаÑвки от %1"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "От Ñтого Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð·Ð°Ð²Ð¸ÑÑÑ‚ Ñледующие заÑвки:"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "РаÑчётное времÑ"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "ОÑталоÑÑŒ времени"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð² работе"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "ОÑталоÑÑŒ времени"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð´Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð² работе"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "ОÑталоÑÑŒ времени"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "Ð’Ñ€ÐµÐ¼Ñ Ð² работе"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "Ð”Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ изменений Ñтого коммита:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "Ð”Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ изменений Ñтого коммита:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "Ð”Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñа поддержки, обучениÑ, разработки на заказ или Ð»Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð±Ñ€Ð°Ñ‰Ð°Ð¹Ñ‚ÐµÑÑŒ %1."
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "Контакт"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "Утилиты"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "ТранзакциÑ"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "Ð¢Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ð¸Ñ %1 удалена"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "Ð¢Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ð¸Ñ Ñоздана"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "Дополнительные Ð¿Ð¾Ð»Ñ Ñ‚Ñ€Ð°Ð½Ð·Ð°ÐºÑ†Ð¸Ð¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "ТранзакциÑ->Создать невозможно, так как вы не указали идентификатор заÑвки"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "ТранзакциÑ->Создать невозможно, так как вы не указали тип объекта и идентификатор"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "ÐеизменÑемые транзакции"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "ПытаемÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ право: %1"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "Ð’Ñ‚Ñ€."
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "Тип"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "Ðе реализовано"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "Логин UNIX"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ UNIX"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÐºÐ¾Ð´Ð¸Ñ€Ð¾Ð²ÐºÐ° %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "Ðе ограничено"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "БезымÑнный запроÑ"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "Ðепривилегированный"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "Ðевыбранные дополнительные полÑ"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "Ðевыбранные объекты"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "Ðе взÑта"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "БезымÑнный запроÑ"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "Обновить"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "Обновить вÑе"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "Обновить идентификатор"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "Обновить заÑвку"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "Обновить тип"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "Изменить вÑе Ñти заÑвки одновременно"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "Обновить e-mail"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "Обновить неÑколько заÑвок"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "Обновить имÑ"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "Обновление не запиÑано."
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "Обновить выбранные заÑвки"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "Обновить подпиÑÑŒ"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "Обновить заÑвку"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "Обновление заÑвки # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "Обновление заÑвки #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "Обновление заÑвки #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "Обновление не было ни Ñообщением, ни комментарием."
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "Обновлена"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "Загрузить"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "Загрузить неÑколько файлов"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "Загрузить неÑколько изображений"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "Загрузить один файл"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "Загрузить одно изображение"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "Закачать до %1 файлов"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "Закачать до %1 изображений"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "Загрузить ваши изменениÑ."
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "Пользователь %1 %2: %3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "Пользователь %1 Пароль: %2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "Пользователь '%1' не найден."
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "Пользователь '%1' не найден"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "Пользователь '%1' не найден\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "Задано пользователем"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "Заданные пользователем уÑÐ»Ð¾Ð²Ð¸Ñ Ð¸ дейÑтвиÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "Логин"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "Логин"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "Права пользователÑ"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "Пользователь запроÑил обновление неизвеÑтного типа Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»Ñ %1 Ð´Ð»Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð° %2 #%3"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "Ðевозможно Ñоздать пользователÑ: %1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "Пользователь Ñоздан"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "Группы, определенные пользователем"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "Пользовать загружен"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "Пользователю отправлено напоминание"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "ПользовательÑкие наÑтройки"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "Группы, заданные пользователем"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "Пользователи"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "Пользователи, удовлетворÑющие критериÑм поиÑка"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "Проверить запроÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "Значение запроÑа"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "ЗначениÑ"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "Ðаблюдать"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "ÐаблюдатьÐдминиÑтративнойКопией"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "Ðаблюдатель загружен"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "Ðаблюдатели"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "WebEncoding"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "Срд."
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "Когда заÑвка подтверждена вÑеми подтверждающими, добавить запиÑÑŒ в оригинальную заÑвку"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "Когда заÑвка подтверждена любым из подтверждающих, добавить запиÑÑŒ в оригинальную заÑвку"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "Когда заÑвка Ñоздана"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "При Ñоздании заÑвки Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÑÑ‚ÑŒ ОтветÑтвенного и ÐдминиÑтративнуюКопию заÑвкиAdminCc of the item awaiting their approval, ожидающей подтверждениÑ"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "Когда что-либо произойдет"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "Каждый раз при решении заÑвки"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "Каждый раз при изменении ответÑтвенного заÑвки"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "Каждый раз при изменении приоритета заÑвки"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "Каждый раз при изменении очереди очереди"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "Каждый раз при изменении ÑтатуÑа заÑвки"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "Каждый раз при Ñрабатывании уÑловиÑ, заданного пользователем"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "Каждый раз при добавлении комментариÑ"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "Каждый раз при приходе корреÑпонденции"
-
-#: NOT FOUND IN SOURCE
-msgid "Which are referred to by "
-msgstr "ÐšÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑвÑзана пользователем"
-
-#: NOT FOUND IN SOURCE
-msgid "Which refer to"
-msgstr "ÐšÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑÑылаетÑÑ Ð½Ð°"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "Рабочий"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "Работать автономно"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "Рабочий"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "В работе"
-
-#: NOT FOUND IN SOURCE
-msgid "Yes"
-msgstr "Да"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "Ð’Ñ‹ уже ответÑтвенный за Ñту заÑвку"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "Ð’Ñ‹ незарегиÑтрированный пользователь"
-
-#: NOT FOUND IN SOURCE
-msgid "You can access it with the Download button on the right."
-msgstr "Ð’Ñ‹ можете получить Ñто, нажав Ñправа кнопку Загрузить"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "Ð’Ñ‹ можете назначать ответÑтвенного только Ð´Ð»Ñ Ñвоих или ничьих заÑвок."
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ права на проÑмотр Ñтой заÑвки.\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "Ðайдено %1 заÑвок в очереди %2"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "Вы вышли из RT."
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "У Ð²Ð°Ñ Ð½ÐµÑ‚ права Ñоздавать заÑвки в Ñтой очереди."
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "Ð’Ñ‹ не должны Ñоздавать запроÑÑ‹ в Ñтой очереди."
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "Заходите еще"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "Ваши запроÑÑ‹: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "ÐдминиÑтратор RT неправильно наÑтроил почтовые алиаÑÑ‹"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "Ваш Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¸Ð» %1. Другие Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ продолжать находитьÑÑ Ð² ожидании."
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "Ваш Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½."
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "Ваш Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¾Ñ‚ÐºÐ»Ð¾Ð½ÐµÐ½"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "Ваш Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¾Ñ‚ÐºÐ»Ð¾Ð½ÐµÐ½."
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð»Ð¸ пароль неверные"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "ИндекÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[нет темы]"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "and is not"
-msgstr "и не ÑвлÑетÑÑ"
-
-#: NOT FOUND IN SOURCE
-msgid "and not"
-msgstr "и не"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "Ñ Ð¿Ñ€Ð°Ð²Ð°Ð¼Ð¸ %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "закрыто"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "Ñодержит"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "Ñодержимое"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "тип данных"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "корреÑÐ¿Ð¾Ð½Ð´ÐµÐ½Ñ†Ð¸Ñ (возможно) не отправлена"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "корреÑÐ¿Ð¾Ð½Ð´ÐµÐ½Ñ†Ð¸Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð°"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "дней"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "удалить"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "удалена"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "не Ñовпадает"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "не Ñодержит"
-
-#: NOT FOUND IN SOURCE
-msgid "email address"
-msgstr "Ð°Ð´Ñ€ÐµÑ email"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "равнÑетÑÑ"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "ложь"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "больше чем"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "группа '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "чаÑов"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "идентификатор"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "ÑвлÑетÑÑ"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "не ÑвлÑетÑÑ"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "меньше чем"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "Ñовпадает"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "мин"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "минут"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "изменениÑ\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "меÑÑцев"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "новаÑ"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "нет имени"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "нет значениÑ"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "нет"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "не равно"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "неравно"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "открыта"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "Ð»Ð¸Ñ‡Ð½Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð° '%1' Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ '%2'"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "очередь %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "отклонена"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "решена"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "Ñек"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "ÑÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð°Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ð° (.xls)"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "приоÑтановлена"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "ÑиÑтема %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "ÑиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð° '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "вызывающий компонент не указал причину"
-
-#: NOT FOUND IN SOURCE
-msgid "ticket #%1"
-msgstr "заÑвка #%1"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "заÑвка #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "till"
-msgstr "пока"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "иÑтина"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "группа без опиÑаниÑ: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "undescripbed group %1"
-msgstr "группа без опиÑаниÑ: %1"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "пользователь %1"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "недель"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð¾Ð¼ %1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "лет"
-
diff --git a/rt/lib/RT/I18N/zh_cn.po b/rt/lib/RT/I18N/zh_cn.po
deleted file mode 100644
index 1f87998..0000000
--- a/rt/lib/RT/I18N/zh_cn.po
+++ /dev/null
@@ -1,7908 +0,0 @@
-# Chinese localization catalog for Request Tracker (RT)
-msgid ""
-msgstr ""
-"Last-Translator: Autrijus Tang <autrijus@autrijus.org>\n"
-"Language-Team: Chinese <members@ourinet.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr "$prefix %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,group ticket)"
-msgstr "%*(%1) 件å‚与的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,ticket) due"
-msgstr "%*(%1) 件é™æœŸå®Œæˆçš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,unresolved ticket)"
-msgstr "%*(%1) 件尚未解决的申请å•"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 #%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%7-%2-%3 %4:%5:%6 %1"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%2 已新增为 %1"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 之å‰"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 已从 %2 改为 %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%2 已自 %1 删除"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%3 群组的 %1 %2"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "æ¡ä»¶ï¼š%1 | 动作:%2 | 模æ¿ï¼š%3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 这份申请å•\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) - %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (未更改)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "显示第 %1 - %2 笔"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - 传递给 %2 的一个å‚æ•°"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - 将更新状æ€è¾“出到 STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - 指定欲使用的动作模å—"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - 指定欲使用的æ¡ä»¶æ¨¡å—"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - 指定欲使用的查询模å—"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 版,%4 版æƒæ‰€æœ‰ï¼Œ1996-%3。"
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "加载手续 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 Total"
-msgstr "共 %1 笔"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "新增 %1 作为 %2 的值"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "别å %1 需è¦å¯ç”¨çš„申请å•ç¼–å·"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "别å %1 需è¦å¯ç”¨çš„申请å•ç¼–å· "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "别å %1 需è¦å¯ç”¨çš„申请å•ç¼–å·ä»¥å¤„ç† %3(出自 %2)"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 看æ¥æ˜¯ä¸ªæœ¬åœ°å¯¹è±¡ï¼Œå´ä¸åœ¨æ•°æ®åº“里"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 (%2)"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 的值从 %2 改为 %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 å¤åˆ¶"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "无法将 %1 设定为 %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 无法åˆå§‹æ›´æ–° (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 无法将现况设æˆå·²è§£å†³ã€‚RT æ•°æ®åº“内容å¯èƒ½ä¸ä¸€è‡´ã€‚"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "已建立 %1"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "已删除 %1"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "å‰ %1 份待处ç†ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "å‰ %1 份待处ç†ç”³è¯·å•..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "å‰ %1 份é€å‡ºçš„申请å•..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets pending my approval..."
-msgstr "å‰ %1 份待签核申请å•..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 是从外部排程程åº(如 cron)æ¥å¯¹ç”³è¯·å•è¿›è¡Œæ“作的工具。"
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 å·²ä¸å†æ˜¯æ­¤è¡¨å•çš„ %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 å·²ä¸å†æ˜¯æ­¤ç”³è¯·å•çš„ %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 å·²ä¸å†æ˜¯è‡ªè®¢å­—段 %2 的值。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 ä¸æ˜¯ä¸€ä¸ªåˆæ³•çš„表å•ç¼–å·ã€‚"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 分钟"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "å‰ %1 份待认领的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "没有显示 %1"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 对象"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 recent tickets I own..."
-msgstr "最新 %1 份待处ç†ç”³è¯·å•..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 recent tickets I requested..."
-msgstr "最新 %1 份é€å‡ºçš„申请å•..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 result(s) found"
-msgstr "找到 %1 项结果"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 完æˆ\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "ä¸çŸ¥é“ $MessageID çš„ %1 类别"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "ä¸çŸ¥é“ %2 çš„ %1 类别"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 新增时未指定现行使用者"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 会解决在已解决群组里æˆå‘˜çš„申请å•ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "如果 %1 起始申请å•ä¾èµ–于æŸä¸ªé“¾æŽ¥ï¼Œæˆ–是æŸä¸ªé“¾æŽ¥çš„æˆå‘˜ï¼Œå®ƒå°†ä¼šè¢«å»¶å®•ã€‚"
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1 内的 %2 对象"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1 内的 %2 的 %3 对象"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1 已储存的查询"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1:未指定附件"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1 字节"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k 字节"
-
-#: NOT FOUND IN SOURCE
-msgid "%quant(%1,result) found"
-msgstr "找到 %1 项结果"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' ä¸æ˜¯ä¸€ä¸ªåˆæ³•çš„状æ€å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1'为无法辨识的动作。 "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(点选欲删除的æˆå‘˜)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(点选欲删除的手续)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(点选欲删除的项目)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(点选欲删除的项目)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(点选欲åœç”¨é€šçŸ¥çš„收件人)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(点选欲å¯ç”¨é€šçŸ¥çš„收件人)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(键入申请å•ç¼–å·æˆ–网å€ï¼Œä»¥ç©ºç™½åˆ†éš”)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(如果留白, 则预设为 %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(没有值)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(没有自订字段)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(没有æˆå‘˜)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(没有手续)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "没有模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "(No workflows)"
-msgstr "没有æµç¨‹"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(æ— )"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„密件副本给åå•ä¸Šä»¥é€—å·éš”开的电å­é‚®ä»¶åœ°å€ã€‚è¿™<b>ä¸ä¼š</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„密件副本给åå•ä¸Šä»¥é€—å·éš”开的电å­é‚®ä»¶åœ°å€ã€‚è¿™<b>ä¸ä¼š</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本给åå•ä¸Šä»¥é€—å·éš”开的管ç†å‘˜ç”µå­é‚®ä»¶åœ°å€ã€‚è¿™<b>将会</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本给åå•ä¸Šä»¥é€—å·éš”开的电å­é‚®ä»¶åœ°å€ã€‚è¿™<b>ä¸ä¼š</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本给åå•ä¸Šä»¥é€—å·éš”开的电å­é‚®ä»¶åœ°å€ã€‚è¿™<b>ä¸ä¼š</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本给åå•ä¸Šä»¥é€—å·éš”开的电å­é‚®ä»¶åœ°å€ã€‚è¿™<b>将会</b>更改åŽç»­çš„收件者åå•ã€‚)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(当æ¡ä»¶æˆ–动作设为‘使用者自订’时,请填入这些字段)"
-
-#: NOT FOUND IN SOURCE
-msgid "(default delegate)"
-msgstr "(预设代ç†äºº)"
-
-#: NOT FOUND IN SOURCE
-msgid "(delete)"
-msgstr "(删除)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(空白)"
-
-#: NOT FOUND IN SOURCE
-msgid "(new)"
-msgstr "(新增)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(没有列出姓å)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(没有主题)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(æ— )"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(没有值)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(仅能指定一份申请å•)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(等待签核)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(等待其它集åˆ)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(等待其它申请å•)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(申请人所属)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(å¿…å¡«)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(未命å)"
-
-#: NOT FOUND IN SOURCE
-msgid "*"
-msgstr "★"
-
-#: NOT FOUND IN SOURCE
-msgid ":"
-msgstr ":"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr "<%$field%>"
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"æ出申请å•\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "空白模æ¿"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE 已删除"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE 已加载"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "无法删除 ACE"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "找ä¸åˆ° ACE"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "找ä¸åˆ° ACE 设定"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "祇能新增或删除 ACE 设定。"
-
-#: NOT FOUND IN SOURCE
-msgid "ACLEquivalence"
-msgstr "ACLEquivalence"
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "离开以å…ä¸å°å¿ƒæ›´æ”¹åˆ°ç”³è¯·å•ã€‚\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "About Me"
-msgstr "个人信æ¯"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "个人信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Access Right"
-msgstr "系统使用登录æƒé™"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "å­˜å–æƒé™"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "动作"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "动作 %1 找ä¸åˆ°"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "动作执行完毕"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "动作准备完毕..."
-
-#: NOT FOUND IN SOURCE
-msgid "Activated Date"
-msgstr "申请激活时间"
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "新增"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "新增管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "新增副本收件人"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "新增æ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Entry"
-msgstr "新增列"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "新增更多附件"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "新增下一项关å¡"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "新增申请人"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "新增字段值"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "新增此表å•çš„手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip which will apply to all queues"
-msgstr "新增适用于所有表å•çš„手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "新增此表å•çš„关键è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "新增全域手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "新增一é“手续到此表å•"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "新增一é“用于所有表å•çš„手续"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "新增查询æ¡ä»¶"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "新增评论或回å¤åˆ°æŒ‡å®šçš„申请å•"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "新增æˆå‘˜"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "新增视察员"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "新增下一项关å¡"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "å•ä½å·²æ–°å¢žä¸ºæ­¤è¡¨å•çš„ %1"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "å•ä½å·²æ–°å¢žä¸ºæ­¤ç”³è¯·å•çš„ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Additional Hints"
-msgstr "é¢å¤–æ示"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "ä½å€"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "ä½å€(ç»­)"
-
-#: NOT FOUND IN SOURCE
-msgid "Adjust Blinking Rate"
-msgstr "调整闪çƒé€Ÿåº¦å¿«æ…¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin"
-msgstr "管ç†å‘˜"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "管ç†å‘˜å‰¯æœ¬"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "管ç†å‘˜è¯„论"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "管ç†å‘˜å›žå¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin Rights"
-msgstr "管ç†å‘˜æƒé™"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "表å•ç®¡ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "使用者管ç†"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "管ç†/全域设定"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "管ç†/群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "管ç†/表å•/基本信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAddress"
-msgstr "管ç†å‘˜ Email"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "管ç†æ‰€æœ‰ä»£ç†äººç¾¤ç»„"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "管ç†å‘˜å‰¯æœ¬"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "管ç†å‘˜è¯„论"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "管ç†å‘˜å›žå¤"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "管ç†è‡ªè®¢å­—段"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "管ç†è‡ªè®¢å­—段"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "管ç†ç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupDescription"
-msgstr "管ç†ç¾¤ç»„æè¿°"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "管ç†ç¾¤ç»„æˆå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupName"
-msgstr "管ç†ç¾¤ç»„å称"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupPermission"
-msgstr "管ç†ç¾¤ç»„æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupStatus"
-msgstr "管ç†ç¾¤ç»„状æ€"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "管ç†ä»£ç†äººç¾¤ç»„"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "管ç†è¡¨å•"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "管ç†ä½¿ç”¨è€…"
-
-#: NOT FOUND IN SOURCE
-msgid "Administrative"
-msgstr "行政类"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "管ç†å‘˜å‰¯æœ¬"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "主管"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "进阶"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "进阶查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search Criteria"
-msgstr "进阶查询æ¡ä»¶"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "晚于"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "ç»åŽ†æ—¶é—´"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias"
-msgstr "执行其它æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "相当于"
-
-#: NOT FOUND IN SOURCE
-msgid "All"
-msgstr "全部"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "完æˆå…¨éƒ¨ç­¾æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "All Condition"
-msgstr "所有æ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "所有自订字段"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "所有表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "All Users"
-msgstr "全体员工"
-
-#: NOT FOUND IN SOURCE
-msgid "All done! Now you can proceed to %1."
-msgstr "处ç†å®Œæ¯•ï¼æ‚¨çŽ°åœ¨å¯ä»¥ç»§ç»­è¿›è¡Œ %1。"
-
-#: NOT FOUND IN SOURCE
-msgid "Allowance Request"
-msgstr "ç¦åˆ©è¡¥åŠ©ç”³è¯·"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "无论寄件æ¥æºä¸ºä½•ï¼Œä¸€å¾‹å¯„信给申请人"
-
-#: NOT FOUND IN SOURCE
-msgid "Amount"
-msgstr "æ•°é¢"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Any Condition"
-msgstr "ä»»æ„æ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Applies To"
-msgstr "套用于"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "套用于"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "套用"
-
-#: NOT FOUND IN SOURCE
-msgid "Apply Template"
-msgstr "引用模æ¿"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "套用更动"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "签核"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "ç­¾æ ¸å• #%1:%2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "ç­¾æ ¸å• #%1:系统错误,记录失败"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "ç­¾æ ¸å• #%1:记录完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "签核细节"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Due"
-msgstr "签核时é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Notes"
-msgstr "签核æ„è§"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "完æˆæŸé¡¹ç­¾æ ¸"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "驳回æŸé¡¹ç­¾æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Result"
-msgstr "签核结果"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Status"
-msgstr "核准结果"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Type"
-msgstr "签核ç§ç±»"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "签核æµç¨‹"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "核准"
-
-#: NOT FOUND IN SOURCE
-msgid "Approver"
-msgstr "签核人"
-
-#: NOT FOUND IN SOURCE
-msgid "Approver Setting"
-msgstr "执行签核人设定"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "签核备注:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Apr"
-msgstr "四月"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "04"
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "四月"
-
-#: NOT FOUND IN SOURCE
-msgid "Are you sure to delete checked items?"
-msgstr "您确定è¦åˆ é™¤ï¼Ÿ"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "递增"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "指派åŠç§»é™¤è‡ªè®¢å­—段"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "指派自订字段"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "附件"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "附加档案"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "现有附件"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "无法加载附件 '%1'"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "附件新增完毕"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "附件档å"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "附件"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "已删除该属性"
-
-#: NOT FOUND IN SOURCE
-msgid "Attributes"
-msgstr "属性"
-
-#: NOT FOUND IN SOURCE
-msgid "Aug"
-msgstr "八月"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "08"
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "八月"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "认è¯æ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoReject"
-msgstr "自动驳回表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoResolve"
-msgstr "自动完æˆè¡¨å•å¤„ç†"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "自动回å¤"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "自动对申请人回å¤"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "自动对申请人回å¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "å¯ç”¨çš„字段:"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Rights:"
-msgstr "æƒé™é¡¹ç›®åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Back to Homepage"
-msgstr "回到首页"
-
-#: NOT FOUND IN SOURCE
-msgid "Back to Previous"
-msgstr "回上页"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "错误的 PGP 签章:%1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "错误的附件编å·ã€‚无法找到附件 '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "%1 çš„æ•°æ®é”™è¯¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "附件的处ç†å·ç é”™è¯¯ã€‚%1 应为 %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "基本信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Batch Approval"
-msgstr "批次签核"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "密件副本"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "请别忘了储存修改。"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "早于"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "开始签核"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin From "
-msgstr "起始日"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "档案"
-
-#: NOT FOUND IN SOURCE
-msgid "Birthday"
-msgstr "生日"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "空白模æ¿"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "将查询结果转为å¯æ”¾å…¥ä¹¦ç­¾çš„网å€"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "å¯æ”¾å…¥ä¹¦ç­¾çš„网å€"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "精简标头档"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "更新整批申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Business Unit"
-msgstr "事业部"
-
-#: NOT FOUND IN SOURCE
-msgid "Business Unit:"
-msgstr "事业部:"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "无法更改系统使用者"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "该å•ä½æ˜¯å¦èƒ½æŸ¥é˜…此表å•"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "ä¸èƒ½æ–°å¢žæ²¡æœ‰å称的自订字段值"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "找ä¸åˆ°å·²å‚¨å­˜çš„查询"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "申请å•ä¸èƒ½é“¾æŽ¥è‡ªå·±ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "ä¸èƒ½æ•´åˆè¿›å·²æ•´åˆè¿‡çš„申请å•ã€‚这个错误ä¸è¯¥å‘生。"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "无法储存此项查询"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "ä¸èƒ½åŒæ—¶æŒ‡å®šèµ·å§‹ç”³è¯·å•ä¸Žç›®çš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Cancel"
-msgstr "å–消"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "无法新增使用者:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Cannot login: Your system clock differs from server's by %1 seconds!"
-msgstr "您的系统时钟和æœåŠ¡å™¨ç›¸å·® %1 秒,无法登入ï¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Card No."
-msgstr "å¡å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Categories"
-msgstr "分类管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Category"
-msgstr "分类"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "副本"
-
-#: NOT FOUND IN SOURCE
-msgid "Cc Type"
-msgstr "副本类别"
-
-#: NOT FOUND IN SOURCE
-msgid "Chairperson's Office"
-msgstr "董事长室"
-
-#: NOT FOUND IN SOURCE
-msgid "Change Ticket"
-msgstr "修改申请å•"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "更改å£ä»¤"
-
-#: NOT FOUND IN SOURCE
-msgid "ChangeOwnerUI"
-msgstr "å¯å¦é€‰æ‹©è¡¨å•æ‰¿åŠžäºº"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "全部选å–"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "选择欲删除的项目"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "选择欲撤消的æƒåˆ©"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "å­ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Chinese Name"
-msgstr "中文姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "Chinese/English"
-msgstr "中英文"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "所在城市"
-
-#: NOT FOUND IN SOURCE
-msgid "ClassicUI"
-msgstr "传统接å£"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "全部清除"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "已解决"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "已解决的申请å•"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "已解决的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Code"
-msgstr "执行程åºç "
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "指令无法辨识ï¼\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "评论"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "评论电å­é‚®ä»¶åœ°å€"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "评论未被纪录"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "对申请å•æ出评论"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "评论申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "评论"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "评论(ä¸é€ç»™ç”³è¯·äºº)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "评论(ä¸é€ç»™ç”³è¯·äºº)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "对 %1 的评论"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "使用者æè¿°"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "新增评论完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "Commit"
-msgstr "确认"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "消除更动完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "Company Name"
-msgstr "å…¬å¸å称"
-
-#: NOT FOUND IN SOURCE
-msgid "CompanySpecific"
-msgstr "å„å…¬å¸ç‹¬ç«‹æ˜¾ç¤º"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "设定查询æ¡ä»¶"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "æ¡ä»¶"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "符åˆæ¡ä»¶..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "未找到符åˆçš„现况"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "设定"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "确认å£ä»¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Confirm Password"
-msgstr "å£ä»¤ç¡®è®¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Confirm Submit"
-msgstr "确定é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "Contact System Administrator"
-msgstr "连络系统管ç†å‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "连络信æ¯ç³»ç»Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "无法解读è”络日期 '%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "内容"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "内容类型"
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "无法新增群组"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "å¤åˆ¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Copy Field From:"
-msgstr "欲å¤åˆ¶å­—段:"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "回å¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "申请å•å›žå¤åœ°å€"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "新增申请å•å›žå¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "未纪录申请å•å›žå¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "ä¸èƒ½æ–°å¢žè‡ªè®¢å­—段的值 "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "ä¸èƒ½æ–°å¢žè‡ªè®¢å­—段的值。%1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "ä¸èƒ½æ›´æ”¹æ‰¿åŠžäººã€‚ "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "无法新增自订字段"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create Scrip"
-msgstr "无法建立讯æ¯é€šçŸ¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create Template"
-msgstr "无法建立通知模æ¿"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "无法新增群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create item"
-msgstr "无法新增项目"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "无法新增模æ¿ï¼š%1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "无法新增申请å•ã€‚尚未指定表å•ã€‚"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "无法新增使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "无法为申请人新增视察员"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create workflow: %1"
-msgstr "无法新增æµç¨‹ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "找ä¸åˆ°ç¼–å· %1 的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "找ä¸åˆ°ç¾¤ç»„ %1。"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "找ä¸åˆ°æˆ–无法新增该å使用者"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "找ä¸åˆ°è¯¥å•ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… %1。"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "无法加载字段 %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "无法加载群组"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "无法将该å•ä½è®¾ä¸ºæ­¤è¡¨å•çš„ %1。"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "无法将该å•ä½è®¾ä¸ºæ­¤ç”³è¯·å•çš„ %1。"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "无法将å•ä½ %1 从表å•ç§»é™¤ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "无法将å•ä½ %1 从申请å•ç§»é™¤ã€‚"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "无法设定使用者信æ¯"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "无法新增æˆå‘˜è‡³ç¾¤ç»„"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "无法新增更动报告"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "无法从 gpg 回函辨识出该采å–的行动\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "找ä¸åˆ°ç¾¤ç»„\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "找ä¸åˆ°æ­¤åˆ—æ•°æ®"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "找ä¸åˆ°è¯¥å•ä½"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "找ä¸åˆ°è¯¥å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "找ä¸åˆ°è¯¥è§†å¯Ÿå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€…\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "无法从使用者数æ®åº“加载 %1。\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "无法加载类别 %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "无法加载自订字段 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "无法加载 KeywordSelects。"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "无法加载 RT 设定档 '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "无法加载手续。"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "无法加载手续 %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "无法加载链接。"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "无法加载对象 %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "无法加载表å•"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "æ— æ³•åŠ è½½è¡¨å• %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "无法加载手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "无法加载模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "无法加载该å使用者(%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "æ— æ³•åŠ è½½ç”³è¯·å• '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "国家"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "新增"
-
-#: NOT FOUND IN SOURCE
-msgid "Create Subgroup:"
-msgstr "新增å­ç¾¤ç»„:"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "新增申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Create User:"
-msgstr "新增æˆå‘˜ï¼š"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "新增自订字段"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "为 %1 表å•æ–°å¢žè‡ªè®¢å­—段"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "为 %1 表å•æ–°å¢žè‡ªè®¢å­—段"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "新增自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "新增全域手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "新增全域手续"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "新增群组"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "新增代ç†äººç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "新增表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "新增手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "新增模æ¿"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "新增申请å•"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "新增使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new workflow"
-msgstr "新增æµç¨‹"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "新增表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "新增表å•å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "æ出申请"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "为 %1 表å•æ–°å¢žæ‰‹ç»­"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "新增模æ¿"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "æ出申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a workflow"
-msgstr "新增æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "新增失败:%1 / %2 / %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "新增失败:%1/%2/%3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create new item"
-msgstr "建立新项目"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "ä¾æ®æ­¤é¡¹æ‰‹ç»­å†…的模版,新增申请å•"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "新增申请å•"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "在此表å•ä¸­æ–°å¢žç”³è¯·å•"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "新增ã€åˆ é™¤åŠæ›´æ”¹è‡ªè®¢å­—段"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "新增ã€åˆ é™¤åŠæ›´æ”¹è¡¨å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "新增ã€åˆ é™¤åŠæ›´æ”¹ä»»ä½•ä½¿ç”¨è€…的代ç†äººç¾¤ç»„"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "新增ã€åˆ é™¤åŠæ›´æ”¹ä»£ç†äººç¾¤ç»„"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "新增ã€åˆ é™¤åŠæ›´æ”¹ä½¿ç”¨è€…"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "新增申请å•"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "新增日"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "自订字段 %1 新增æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "æ¨¡æ¿ %1 新增æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created workflow %1"
-msgstr "æµç¨‹ %1 新增æˆåŠŸ"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "建立者"
-
-#: NOT FOUND IN SOURCE
-msgid "Currency"
-msgstr "å¸åˆ«"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Approval Info"
-msgstr "截至目å‰ç­¾æ ¸ä¿¡æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Custom Fields"
-msgstr "现有自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Groups:"
-msgstr "现有群组列表:"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "现有关系"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Rights:"
-msgstr "现有æƒé™ï¼š"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "现有手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Status"
-msgstr "ç›®å‰çŠ¶æ€"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Templates"
-msgstr "现有模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Watchers"
-msgstr "现有视察员"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "现有æˆå‘˜"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "现有æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "现有查询æ¡ä»¶"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "现有视察员"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "自订字段 #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "自订字段"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "%1 的自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Fields which apply to all queues"
-msgstr "适用于所有表å•çš„自订字段"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "动作åŽæ‰§è¡Œç¨‹åº"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "动作å‰æ‰§è¡Œç¨‹åº"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "自订æ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "自订字段 %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "自订字段 %1 ä¸é€‚用于此对象"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "自订字段 %1 已有值"
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "自订字段 %1 没有值"
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "找ä¸åˆ°è‡ªè®¢å­—段 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "自订字段已删除"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "找ä¸åˆ°è‡ªè®¢å­—段"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "无法从自订字段 %2 中找到 %1 这个字段值"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "自订字段值从 %1 改为 %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "无法删除自订字段值"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "找ä¸åˆ°è‡ªè®¢å­—段值"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "自订字段值删除æˆåŠŸ"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "æ•°æ®é”™è¯¯"
-
-#: NOT FOUND IN SOURCE
-msgid "DatabaseBindRemote"
-msgstr "容许外部è”机"
-
-#: NOT FOUND IN SOURCE
-msgid "DatabaseName"
-msgstr "MySQLæ•°æ®åº“"
-
-#: NOT FOUND IN SOURCE
-msgid "Date of Departure"
-msgstr "出å‘日期"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Dec"
-msgstr "å二月"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "12"
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "å二月"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Approval"
-msgstr "预设签核"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "预设自动å“应模æ¿"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "预设自动å“应模æ¿"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "预设表å•"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "预设申请人"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Value"
-msgstr "预设值"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "预设管ç†å‘˜è¯„论模æ¿"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "预设管ç†å‘˜å›žå¤æ¨¡æ¿"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "预设回å¤æ¨¡æ¿"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "预设更动模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "预设:%1/%2 已自 %3 改为 %4"
-
-#: NOT FOUND IN SOURCE
-msgid "DefaultApproval"
-msgstr "预设签核"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "代ç†äººæƒé™"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "将拥有的æƒé™å§”托他人代ç†"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "设定代ç†äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Approval"
-msgstr "代ç†ç­¾æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Queue"
-msgstr "代ç†è¡¨å•å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Queue:"
-msgstr "代ç†è¡¨å•ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Type"
-msgstr "代ç†è¡¨å•ç§ç±»"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates"
-msgstr "代ç†äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Enabled Status"
-msgstr "代ç†æ¿€æ´»çŠ¶æ€"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Info"
-msgstr "代ç†äººä¿¡æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Period"
-msgstr "代ç†æœŸé—´"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Permission Setting"
-msgstr "代ç†æƒé™è®¾å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Permission:"
-msgstr "代ç†æƒé™ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Setting"
-msgstr "代ç†äººè®¾å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Status"
-msgstr "代ç†çŠ¶æ€"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "代ç†äººæƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegation Groups"
-msgstr "代ç†äººç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegation Rights"
-msgstr "代ç†äººæƒé™"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "删除"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "删除模æ¿"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "删除指定的手续"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "删除申请å•"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "删除申请å•"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "删除此对象å¯èƒ½ç ´åå‚考完整性"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "删除此对象å¯èƒ½ç ´åå‚考完整性"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "删除此对象会è¿åå‚考完整性"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "删除此对象会è¿åå‚考完整性"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "删除此对象会è¿åå‚考完整性"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "驳回"
-
-#: NOT FOUND IN SOURCE
-msgid "Department"
-msgstr "部门"
-
-#: NOT FOUND IN SOURCE
-msgid "Department ID"
-msgstr "部门代ç "
-
-#: NOT FOUND IN SOURCE
-msgid "Department Name"
-msgstr "部门å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Department's"
-msgstr "部门之"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Details"
-msgstr "差旅明细"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure From"
-msgstr "差旅起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Request"
-msgstr "请å‡å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Until"
-msgstr "差旅截止日"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "å¯æŽ¥ç»­å¤„ç†çš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "附属性:\\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "已加入å¯æŽ¥ç»­å¤„ç†çš„ç”³è¯·å• %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "已移除å¯æŽ¥ç»­å¤„ç†çš„ç”³è¯·å• %1"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "已加入需先处ç†çš„ç”³è¯·å• %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "已移除需先处ç†çš„ç”³è¯·å• %1"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "需先处ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "需先处ç†"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "递å‡"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "在以下字段æ述主题"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Description of Responsibility"
-msgstr "ç»åŠžä¸šåŠ¡è¯´æ˜Ž"
-
-#: NOT FOUND IN SOURCE
-msgid "Description:"
-msgstr "æ述:"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "细节"
-
-#: NOT FOUND IN SOURCE
-msgid "Direct"
-msgstr "直接"
-
-#: NOT FOUND IN SOURCE
-msgid "Disability"
-msgstr "残障身分"
-
-#: NOT FOUND IN SOURCE
-msgid "Disability Type"
-msgstr "残障类别"
-
-#: NOT FOUND IN SOURCE
-msgid "Disabled"
-msgstr "åœç”¨"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "显示内容"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "显示æƒé™æŽ§åˆ¶æ¸…å•"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "显示字段"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "显示此表å•çš„模æ¿"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "显示此表å•çš„手续"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "显示模å¼"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "显示此群组已储存的查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "显示第%1å·ç”³è¯·å•"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "ä¾ <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU 通用公共授æƒ</a> 第二版散布。"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "å…许一切æ“作"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "ä¸æ›´æ–°æ­¤é¡µé¢ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "ä¸æ˜¾ç¤ºæŸ¥è¯¢ç»“æžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Done"
-msgstr "完æˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Down"
-msgstr "下一页"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "下载"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "下载以 Tab 分隔的档案"
-
-#: NOT FOUND IN SOURCE
-msgid "Dr."
-msgstr "åšå£«"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "到期日"
-
-#: NOT FOUND IN SOURCE
-msgid "Due Date"
-msgstr "截止日"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "无法解读日期 '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "æ— æ³•åŠ è½½ç”³è¯·å• '%1':%2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "编辑"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "编辑å‰ç½®æ¡ä»¶"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "编辑 %1 的自订字段"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Custom Fields for queue %1"
-msgstr "ç¼–è¾‘è¡¨å• %1 的自订字段"
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "编辑申请å•å…³ç³»"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "编辑查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Subgroups"
-msgstr "新增/维护å­ç¾¤ç»„"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "ç¼–è¾‘è¡¨å• %1 的模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Workflows for queue %1"
-msgstr "ç¼–è¾‘è¡¨å• %1 çš„æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "编辑关键è¯"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "编辑此群组已储存的查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "编辑手续"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "编辑全域模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit system workflows"
-msgstr "编辑全域æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "编辑 %1 的模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit workflows for %1"
-msgstr "编辑 %1 çš„æµç¨‹"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "编辑已储存的查询"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "ç¼–è¾‘è¡¨å• %1 的设定"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "编辑使用者 %1 的设定"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "编辑自订字段 %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "编辑群组 %1 çš„æˆå‘˜ä¿¡æ¯"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "编辑代ç†äººç¾¤ç»„ %1 çš„æˆå‘˜ä¿¡æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "ç¼–è¾‘æ¨¡æ¿ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing workflow %1"
-msgstr "编辑æµç¨‹ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Education"
-msgstr "最高学历"
-
-#: NOT FOUND IN SOURCE
-msgid "EffectiveId"
-msgstr "有效编å·"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "需è¦æŒ‡å®šèµ·å§‹ç”³è¯·å•æˆ–目的申请å•"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "电å­é‚®ä»¶ä¿¡ç®±"
-
-#: NOT FOUND IN SOURCE
-msgid "Email Address"
-msgstr "电å­é‚®ä»¶ä¿¡ç®±"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "此电å­é‚®ä»¶ä¿¡ç®±å·²è¢«ä½¿ç”¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "电å­é‚®ä»¶ä¿¡ç®±åœ°å€"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "电å­é‚®ä»¶æ–‡å­—ç¼–ç æ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Embark Date"
-msgstr "外ç±å‘˜å·¥å…¥å¢ƒæ—¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Embarked Date"
-msgstr "抵达日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Embarked Location"
-msgstr "抵达地点"
-
-#: NOT FOUND IN SOURCE
-msgid "Enable Delegates"
-msgstr "代ç†æ¿€æ´»"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "å¯ç”¨(å–消勾选将åœç”¨æ­¤è‡ªè®¢å­—段)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "å¯ç”¨(å–消勾选将åœç”¨æ­¤ç¾¤ç»„)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "å¯ç”¨(å–消勾选将åœç”¨æ­¤è¡¨å•)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "å·²å¯ç”¨çš„自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Date"
-msgstr "å¯ç”¨æ—¥æœŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Date:"
-msgstr "激活日期:"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "å·²å¯ç”¨çš„表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Status"
-msgstr "å¯ç”¨çŠ¶æ€"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "å¯ç”¨çŠ¶æ€ %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "å¯ç”¨çŠ¶æ€: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "End of Trial"
-msgstr "试用期满日"
-
-#: NOT FOUND IN SOURCE
-msgid "English Name"
-msgstr "英文姓å"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "键入多é‡é¡¹ç›®"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "键入欲将对象连结至的对象或 URI。项目之间请以空白隔开。"
-
-#: NOT FOUND IN SOURCE
-msgid "Enter one or more conditions below to search for users"
-msgstr "键入下列å•ä¸€æˆ–å¤å¼æ¡ä»¶ï¼ŒæŸ¥è¯¢ç”¨æˆ·æ•°æ®"
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "键入å•ä¸€é¡¹ç›®"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "键入欲将表å•è¿žç»“至的对象或 URI。项目之间请以空白隔开。"
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "键入申请å•å¯é“¾æŽ¥åˆ°çš„申请å•ç¼–å·æˆ–网å€ã€‚项目之间请以空白隔开。"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "键入最多 %1 个值"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryBoolean"
-msgstr "是éžå¡«è¡¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryDate"
-msgstr "日期填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryExternal"
-msgstr "系统填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryFreeform"
-msgstr "输入填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryMultiple"
-msgstr "多选填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryNumber"
-msgstr "数值填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntrySelect"
-msgstr "å•é€‰å¡«è¡¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryTime"
-msgstr "时间填表"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "错误"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "新增视察员失败"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "表å•->新增视察员的å‚数有误"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "表å•->删除视察员的å‚数有误"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "申请å•->新增视察员的å‚数有误"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "申请å•->删除视察员的å‚数有误"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "调整申请å•ä¼˜å…ˆç­‰çº§"
-
-#: NOT FOUND IN SOURCE
-msgid "Estimate"
-msgstr "预计"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "预计"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "所有人"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "范例:"
-
-#: NOT FOUND IN SOURCE
-msgid "Existing user renamed from %1 to %2"
-msgstr "现有使用者 %1 已改å为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Export"
-msgstr "汇出"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "外部认è¯å¸å·"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "外部è”络方å¼å¸å·"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabaseDSN"
-msgstr "外部数æ®åº“连结字符串"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabasePass"
-msgstr "外部数æ®åº“å£ä»¤"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabaseUser"
-msgstr "外部数æ®åº“用户"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalURL"
-msgstr "外部接å£ç½‘å€"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "备注"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "找ä¸åˆ°â€˜å†…部æˆå‘˜â€™è™šæ‹Ÿç¾¤ç»„的使用者。"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "找ä¸åˆ°â€˜éžå†…部æˆå‘˜â€™è™šæ‹Ÿç¾¤ç»„的使用者。"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "æ— æ³•åŠ è½½æ¨¡å— %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Feb"
-msgstr "二月"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "02"
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "二月"
-
-#: NOT FOUND IN SOURCE
-msgid "Female"
-msgstr "女"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Content:"
-msgstr "字段内容:"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Description"
-msgstr "字段æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Name"
-msgstr "字段å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Type"
-msgstr "字段类别"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "æ¡£å"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "填入多个文字框"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "填入一个文字框"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "填入最多 %1 个文字框"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Filter"
-msgstr "筛选"
-
-#: NOT FOUND IN SOURCE
-msgid "Filter people"
-msgstr "对象筛选"
-
-#: NOT FOUND IN SOURCE
-msgid "Filtered list:"
-msgstr "筛选列表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "最终"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "最终顺ä½"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "最终顺ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Financial Department:"
-msgstr "财务部:"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "寻找群组的"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "寻找群组的"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "寻找/å¼€å¯ç”³è¯·å•"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "寻找人员的"
-
-#: NOT FOUND IN SOURCE
-msgid "Find queues whose"
-msgstr "寻找表å•çš„"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "寻找申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "签核完毕"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "第一项"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "第一页"
-
-#: NOT FOUND IN SOURCE
-msgid "First-"
-msgstr "一"
-
-#: NOT FOUND IN SOURCE
-msgid "First-level Admins"
-msgstr "一阶主管"
-
-#: NOT FOUND IN SOURCE
-msgid "First-level Users"
-msgstr "一阶主管员工"
-
-#: NOT FOUND IN SOURCE
-msgid "Fixed shift"
-msgstr "固定ç­"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "甲 乙 丙"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "甲ï¼"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "强制更æ¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Form Processing"
-msgstr "电å­è¡¨å•ä½œä¸šåŒº"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "找到 %1 张申请å•"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "已找到对象"
-
-#: NOT FOUND IN SOURCE
-msgid "Fourth-"
-msgstr "å››"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "输入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "è”络方å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformDate"
-msgstr "日期输入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformExternal"
-msgstr "系统字段"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "多é‡è¾“å…¥"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformNumber"
-msgstr "数值输入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformPassword"
-msgstr "å£ä»¤è¾“å…¥"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "å•ä¸€è¾“å…¥"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformTime"
-msgstr "时间输入"
-
-#: NOT FOUND IN SOURCE
-msgid "Fri"
-msgstr "星期五"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "星期五"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "完整标头档"
-
-#: NOT FOUND IN SOURCE
-msgid "Gecos"
-msgstr "登入å¸å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Gender"
-msgstr "性别"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "å–出档案里的模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "å–å¾—ç›®å‰ä½¿ç”¨è€…çš„ pgp 签章\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "交予 %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "全域设定"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Approval"
-msgstr "全域签核"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "全域自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "全域关键è¯é€‰å–"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Rights:"
-msgstr "拥有全域æƒé™åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "全域手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Setup"
-msgstr "全域设定"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "全域模æ¿ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "GlobalApproval"
-msgstr "全域签核"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "执行"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "执行"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "%1 的 pgp 签章是正确的\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "到页é¢"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "跳到申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Grand"
-msgstr "上"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "群组 %1 %2:%3"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Admin"
-msgstr "群组管ç†å‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Description"
-msgstr "群组æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Management"
-msgstr "群组管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Members"
-msgstr "群组æˆå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Name"
-msgstr "群组å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Name:"
-msgstr "群组å称:"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "群组æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Rights:"
-msgstr "拥有群组æƒé™åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Setup"
-msgstr "群组设定"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Status"
-msgstr "群组状æ€"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "群组内已有此æˆå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "无法新增群组"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "无法新增群组:%1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "群组新增完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "Group created: %1"
-msgstr "群组 %1 新增完毕"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "群组没有这个æˆå‘˜"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "找ä¸åˆ°ç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "找ä¸åˆ°ç¾¤ç»„。\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "未指定群组。\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group redescribed from %1 to %2"
-msgstr "群组æè¿° %1 已改为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Group renamed from %1 to %2"
-msgstr "群组 %1 已改å为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Group with Queue Rights"
-msgstr "拥有表å•æƒé™ç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "Group's"
-msgstr "群组之"
-
-#: NOT FOUND IN SOURCE
-msgid "Group:"
-msgstr "群组:"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "群组"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "ä¸èƒ½å°†ç¾¤ç»„设为群组内æˆå‘˜"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "符åˆæŸ¥è¯¢æ¡ä»¶çš„群组"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "使用者所属的群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Groups with Global Rights"
-msgstr "拥有全域æƒé™ç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "HRMSDefined"
-msgstr "组织架构"
-
-#: NOT FOUND IN SOURCE
-msgid "HTML Attributes"
-msgstr "HTML 属性"
-
-#: NOT FOUND IN SOURCE
-msgid "Health Insurance"
-msgstr "å¥ä¿è¡¥åŠ©èº«ä»½"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "å—¨ï¼"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "嗨,%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Help"
-msgstr "说明"
-
-#: NOT FOUND IN SOURCE
-msgid "Help Desks"
-msgstr "å„项业务窗å£"
-
-#: NOT FOUND IN SOURCE
-msgid "Hidden"
-msgstr "éšè—"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "纪录"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "群组 %1 的纪录"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "使用者 %1 的纪录"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "ä½å¤„电è¯"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "主页"
-
-#: NOT FOUND IN SOURCE
-msgid "Hotel Expense"
-msgstr "ä½å®¿è´¹"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "我有 %quant(%1,份固体æ…拌器)。"
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ID Number"
-msgstr "身分è¯å·"
-
-#: NOT FOUND IN SOURCE
-msgid "ID Type"
-msgstr "身分类别"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "ç¼–å·"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "身份"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "若签核å•é­åˆ°é©³å›žï¼Œåˆ™è¿žå¸¦é©³å›žåŽŸç”³è¯·å•ï¼Œå¹¶åˆ é™¤å…¶å®ƒç›¸å…³çš„待签核事项"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "若没有指定申请者,则以此使用者作为申请者"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "申请å•è‹¥æ²¡æœ‰æŒ‡å®šè¡¨å•ï¼Œåˆ™å°†å®ƒæ–°å¢žåœ¨æ­¤è¡¨å•å†…"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "如果此工具程åºä¸º setgid,æ¶æ„的本地端用户å³èƒ½ç”±æ­¤å–å¾— RT 的管ç†å‘˜æƒé™ã€‚"
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "若您已更新以上数æ®ï¼Œè¯·è®°å¾—按一下"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "%1 的值错误"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "图片"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "此字段值ä¸å¯æ›´åŠ¨"
-
-#: NOT FOUND IN SOURCE
-msgid "Import"
-msgstr "汇入"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "列出åœç”¨çš„自订字段"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "列出åœç”¨çš„群组"
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "列出åœç”¨çš„表å•"
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "列出åœç”¨çš„使用者"
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Indirect Employee"
-msgstr "直接/间接员工"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "åˆå§‹ä¼˜å…ˆé¡ºä½"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "åˆå§‹ä¼˜å…ˆé¡ºä½"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "输入错误"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "登记æˆåŠŸ"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "内部错误"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "内部错误:%1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "错误的群组类别"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "错误的æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "错误的类型"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "错误的数æ®"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "错误的承办人。改为预设承办人‘nobody’。"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "错误的表å•"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "错误的æƒé™"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "%1 的值错误"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "错误的自订字段值"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "错误的状æ€å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "IssueStatement"
-msgstr "é€å‡ºé™ˆè¿°"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "请ç»å¯¹ä¸è¦è®©æœªå…·æƒé™çš„使用者执行此工具程åºã€‚"
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "建议您新增一个隶属于正确群组的低æƒé™ç³»ç»Ÿä½¿ç”¨è€…,并以该身份执行此工具程åºã€‚"
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "它接å—下列å‚数:"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Item Name"
-msgstr "å“å"
-
-#: NOT FOUND IN SOURCE
-msgid "Items"
-msgstr "笔"
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "待签核项目"
-
-#: NOT FOUND IN SOURCE
-msgid "Jan"
-msgstr "一月"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "01"
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "一月"
-
-#: NOT FOUND IN SOURCE
-msgid "Job"
-msgstr "èŒç§°"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "加入或离开此群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Jul"
-msgstr "七月"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "07"
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "七月"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "全部信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Jun"
-msgstr "六月"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "06"
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "六月"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "关键è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelAttachments"
-msgstr "附件å·æ ‡"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelContent"
-msgstr "内容å·æ ‡"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelSubject"
-msgstr "主题å·æ ‡"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelURL"
-msgstr "链接å·æ ‡"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "使用语言"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "语言"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "上次更新"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "上次è”络"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "上次è”络日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "上次通知"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "上次更新"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "上次更新"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "上次更新者"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "剩馀时间"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "å…许这å使用者登入"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "内部æˆå‘˜ï¼ˆå…·æœ‰ä¸ªäººæƒé™ï¼‰"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "é™åˆ¶æ‰¿åŠžäººä¸º %1 到%2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "é™åˆ¶è¡¨å•ä¸º %1 到 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Link a Queue"
-msgstr "申请表å•è¿žç»“"
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "此链接已存在"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "无法新增链接"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "链接(%1)新增完毕"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "链接(%1)删除完毕"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "找ä¸åˆ°é“¾æŽ¥"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "é“¾æŽ¥ç”³è¯·å• #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "é“¾æŽ¥ç”³è¯·å• %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "链接"
-
-#: NOT FOUND IN SOURCE
-msgid "List All Users"
-msgstr "列出所有用户数æ®"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "加载"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "加载已储存的查询:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "已加载的 Perl 模å—"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "ä½ç½®"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "登入目录 %1 找ä¸åˆ°æˆ–无法写入\\n。无法执行 RT。"
-
-#: NOT FOUND IN SOURCE
-msgid "LogToFile"
-msgstr "纪录等级"
-
-#: NOT FOUND IN SOURCE
-msgid "LogToFileNamed"
-msgstr "纪录档å"
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "使用者:%1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "登入"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "注销"
-
-#: NOT FOUND IN SOURCE
-msgid "Long-term contractor"
-msgstr "长期契约员工"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "对应的类别ä¸ç¬¦"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "新增承办人"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "新增现况"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "新增到期日"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "新增解决日期"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "新增实际起始日期"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "新增应起始日期"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "新增报告日期"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "新增优先顺ä½"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "新增表å•"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "新增主题"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Male"
-msgstr "ç”·"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "管ç†è‡ªè®¢å­—段åŠå­—段值"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "管ç†ç¾¤ç»„åŠæ‰€å±žæˆå‘˜"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "管ç†é€‚用于所有表å•çš„属性与设定"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "管ç†å„表å•åŠç›¸å…³å±žæ€§"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "管ç†ä½¿ç”¨è€…与å£ä»¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Manager"
-msgstr "ç»ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Mar"
-msgstr "三月"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "03"
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "三月"
-
-#: NOT FOUND IN SOURCE
-msgid "Marketing Department"
-msgstr "行销部"
-
-#: NOT FOUND IN SOURCE
-msgid "Match Pattern"
-msgstr "符åˆæ ·å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "五月"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "05"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "æˆå‘˜ %1 新增完毕"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "æˆå‘˜ %1 删除完毕"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "新增æˆå‘˜å®Œæ¯•"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "æˆå‘˜å·²åˆ é™¤"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "æˆå‘˜æœªåˆ é™¤"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "隶属于"
-
-#: NOT FOUND IN SOURCE
-msgid "Member since"
-msgstr "注册日期"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "隶属于"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "æˆå‘˜"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "所属群组 %1 加入完毕"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "所属群组 %1 移除完毕"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "所属群组"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "使用者 %1 的所属群组"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "æ•´åˆå®Œæ¯•"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "æ•´åˆå¤±è´¥ã€‚无法设定 EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "æ•´åˆè¿›"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "已整åˆè¿› %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "讯æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Message body not shown because it is too large or is not plain text."
-msgstr "信件内文ä¸æ˜¯çº¯æ–‡å­—,因此无法显示。"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "无法纪录讯æ¯"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "讯æ¯çºªå½•æˆåŠŸ"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "此申请å•çš„相关讯æ¯ä¸ä¼šå¯„é€ç»™..."
-
-#: NOT FOUND IN SOURCE
-msgid "Misc. Expense"
-msgstr "æ‚è´¹"
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "缺少主键值?(%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Missing mandatory fields"
-msgstr "缺少必填字段"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "行动电è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "行动电è¯"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "更改æƒé™æŽ§åˆ¶æ¸…å•"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "更改适用于所有%1的自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "更改适用于所有表å•çš„自订字段"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "更改群组æƒé™"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "更改æˆå‘˜"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "更改æƒé™"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "更改此表å•çš„模æ¿"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "更改此表å•çš„手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "更改系统æƒé™æ¸…å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "æ›´æ”¹æ¨¡æ¿ %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "更改使用者æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Workflow"
-msgstr "更改æµç¨‹"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "更改 %1 表å•å†…的自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "更改适用于所有表å•çš„自订字段"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "更改 %1 表å•å†…的手续"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "更改适用于所有表å•çš„手续"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "更改适用 %1 的对象"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "更改 # %1 的日期"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "更改 #%1 的日期"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "æ›´æ”¹ç”³è¯·å• # %1 的日期"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "更改全域设定的群组æƒé™"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "更改全域设定的群组æƒé™ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "更改全域设定的群组æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "更改全域设定的使用者æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "更改全域手续"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "更改全域设定的使用者æƒé™"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "更改全域设定的使用者æƒé™ã€‚"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "更改群组数æ®åŠåˆ é™¤ç¾¤ç»„"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "更改自订字段 %1 的群组æƒé™"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "更改群组 %1 的群组æƒé™"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "æ›´æ”¹è¡¨å• %1 的群组æƒé™"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "更改此群组的æˆå‘˜åå•"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "更改个人的å¸å·ä¿¡æ¯"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "æ›´æ”¹é“¾æŽ¥åˆ°è¡¨å• %1 的人员"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "æ›´æ”¹ç”³è¯·å• #%1 链接到的人员"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "æ›´æ”¹è¡¨å• %1 的手续"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "更改适用于所有表å•çš„手续"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "æ›´æ”¹æ¨¡æ¿ %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "更改适用于所有表å•çš„模æ¿"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "更改群组 %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "更改表å•è§†å¯Ÿå‘˜"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "更改使用者 %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "æ›´æ”¹ç”³è¯·å• # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "æ›´æ”¹ç”³è¯·å• # %1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "更改申请å•"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "更改自订字段 %1 的使用者æƒé™"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "更改群组 %1 的使用者æƒé™"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "æ›´æ”¹è¡¨å• %1 的使用者æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "更改 '%1' 的视察员"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify workflow %1"
-msgstr "更改æµç¨‹ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify workflows which apply to all queues"
-msgstr "更改适用于所有表å•çš„æµç¨‹"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "更改æƒé™æ¸…å•"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "更改自己是å¦å±žäºŽæŸç¾¤ç»„"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "更改表å•è§†å¯Ÿå‘˜"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "更改手续"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "更改个人å¸å·"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "更改模æ¿"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "更改申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Mon"
-msgstr "星期一"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "星期一"
-
-#: NOT FOUND IN SOURCE
-msgid "More"
-msgstr "更多"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "关于 %1 的进一步信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Morning Shift"
-msgstr "æ—©ç­"
-
-#: NOT FOUND IN SOURCE
-msgid "Move"
-msgstr "移动"
-
-#: NOT FOUND IN SOURCE
-msgid "Move All"
-msgstr "全移"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "下移"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "上移"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "多é‡"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "必须指定 'Name' 的属性"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "我的 %1 申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "表å•ç­¾æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "My Requests"
-msgstr "表å•ç”³è¯·è¿½è¸ª"
-
-#: NOT FOUND IN SOURCE
-msgid "My Tickets"
-msgstr "表å•å¤„ç†"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "表å•ç­¾æ ¸"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "我已储存的查询"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "å称"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "å¸å·å·²æœ‰äººä½¿ç”¨"
-
-#: NOT FOUND IN SOURCE
-msgid "Nationality"
-msgstr "国ç±"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "需先由系统管ç†å‘˜è¿›è¡Œæ‰¹å‡†"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "从未更动"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "新建立"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "新增关系"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "æ–°çš„å£ä»¤"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "新的待签核事项"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "新增查询"
-
-#: NOT FOUND IN SOURCE
-msgid "New Request"
-msgstr "表å•ç”³è¯·"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "新增查询"
-
-#: NOT FOUND IN SOURCE
-msgid "New Watchers"
-msgstr "新增视察员"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "新增自订字段"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "新增群组"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "æ–°çš„å£ä»¤"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "é€å‡ºæ–°å£ä»¤é€šçŸ¥"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "新增表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "æ出申请å•"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "新增æƒé™"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "新增手续"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "é‡æ–°æŸ¥è¯¢"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "新增模æ¿"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "æ出申请å•"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "没有新申请å•"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "新增使用者"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "新使用者åå­—"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "新视察员"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "更新窗å£è®¾å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "New workflow"
-msgstr "新增æµç¨‹"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "下一项"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "下一页"
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "下一页"
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "昵称"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "昵称"
-
-#: NOT FOUND IN SOURCE
-msgid "Night Shift"
-msgstr "å°å¤œç­"
-
-#: NOT FOUND IN SOURCE
-msgid "No"
-msgstr "å¦"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "尚未定义类别"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "无自订字段"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "尚未定义自订字段"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "尚未定义群组"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "没有查询"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "尚未定义表å•"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "找ä¸åˆ° RT ä½¿ç”¨è€…ã€‚è¯·å‘ RT 管ç†å‘˜æŸ¥è¯¢ã€‚\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "没有模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "未指定申请å•ã€‚é€€å‡ºç”³è¯·å• "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "未指定申请å•ã€‚退出申请å•æ›´æ”¹\\n\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "No Workflow"
-msgstr "没有æµç¨‹"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "æš‚ä¸å¤„ç†"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "未指定字段"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "找ä¸åˆ°å‘½ä»¤"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "没有对这å使用者的评论"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "没有附上申请å•å›žå¤"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "没有对 %1 çš„æè¿°"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "未指定群组"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è¯¢æ¡ä»¶çš„群组。"
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "没有附上讯æ¯"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "没有设定å£ä»¤"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "没有新增表å•çš„æƒé™"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "æ²¡æœ‰åœ¨è¡¨å• '%1' 新增申请å•çš„æƒé™"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "没有新增使用者的æƒé™"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "没有显示该申请å•çš„æƒé™"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "没有检视申请å•æ›´æ–°çš„æƒé™"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "未指定å•ä½"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "未指定å•ä½ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "No protocol specified in %1"
-msgstr "%1 内未指定åè®®"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è¯¢æ¡ä»¶çš„表å•ã€‚"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "找ä¸åˆ°æƒé™"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "没有选定æƒé™"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "没有è¦è¿›è¡Œçš„查询"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "没有标题"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "未指定申请å•ç¼–å·"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "未指定更动报告类别"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "未指定使用者或电å­é‚®ä»¶åœ°å€"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è¯¢æ¡ä»¶çš„使用者。"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "找ä¸åˆ°åˆæ ¼çš„ RT 使用者。RT cvs 处ç†å™¨å·²åœç”¨ã€‚è¯·å‘ RT 管ç†è€…询问。\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "_Set 没有收到任何值!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "没有人"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "字段ä¸å­˜åœ¨ï¼Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Normal Users"
-msgstr "一般用户群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Not configured to fetch the content from a %1 in %2"
-msgstr "未设定æˆä»Ž %2 å†…æ’·å– %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "尚未登入"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "尚未登入"
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "尚未设定"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "尚未完工。"
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "尚未完工..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "备注"
-
-#: NOT FOUND IN SOURCE
-msgid "Notes:"
-msgstr "备注:"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "无法é€å‡ºé€šçŸ¥"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "通知管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "以评论方å¼é€šçŸ¥ç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "通知副本收件人"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "以评论方å¼é€šçŸ¥å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "通知其它收件人"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "以评论方å¼é€šçŸ¥å…¶å®ƒæ”¶ä»¶äºº"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "通知承办人"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "以评论方å¼é€šçŸ¥æ‰¿åŠžäºº"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "通知承办人申请å•å·²é©³å›ž"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "通知承办人申请å•å·²å®Œæˆå…¨éƒ¨ç­¾æ ¸"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "通知承办人申请å•å·²å®ŒæˆæŸé¡¹ç­¾æ ¸"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "æ•´ç†å¾…签核事项,通知承办人åŠç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "通知申请人"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "通知申请人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "以评论方å¼é€šçŸ¥ç”³è¯·äººåŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "通知申请人ã€å‰¯æœ¬åŠç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "以评论方å¼é€šçŸ¥ç”³è¯·äººã€å‰¯æœ¬åŠç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Notify people:"
-msgstr "通知对象"
-
-#: NOT FOUND IN SOURCE
-msgid "Nov"
-msgstr "å一月"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "11"
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "å一月"
-
-#: NOT FOUND IN SOURCE
-msgid "OIN104"
-msgstr "104eHRMS 接å£"
-
-#: NOT FOUND IN SOURCE
-msgid "OK"
-msgstr "确定"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "无法新增对象"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "对象新增完毕"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "自订字段ä¸é€‚用于类别为 %1 的对象"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "对象类别ä¸ç¬¦"
-
-#: NOT FOUND IN SOURCE
-msgid "Occupation Status"
-msgstr "在èŒçŠ¶æ€"
-
-#: NOT FOUND IN SOURCE
-msgid "Oct"
-msgstr "å月"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "10"
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "å月"
-
-#: NOT FOUND IN SOURCE
-msgid "Office Phone"
-msgstr "办公室电è¯"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "离线"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "离线编辑"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "离线上载"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "等于"
-
-#: NOT FOUND IN SOURCE
-msgid "On Change"
-msgstr "更改申请å•æ—¶"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "评论时"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "回å¤ç”³è¯·å•æ—¶"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "新增申请å•æ—¶"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "承办人改å˜æ—¶"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "优先顺ä½æ”¹å˜æ—¶"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "表å•æ”¹å˜æ—¶"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "解决申请å•æ—¶"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "现况改å˜æ—¶"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "å‘生更动时"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "仅显示 %1 之åŽæ–°å¢žçš„申请å•"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "仅显示 %1 之å‰æ–°å¢žçš„申请å•"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "å¼€å¯"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "å¼€å¯"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "å¼€å¯çš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "在新窗å£å¼€å¯(列表的)申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "在å¦ä¸€ä¸ªçª—å£å¼€å¯(列表的)申请å•"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "收到回å¤æ—¶å³å¼€å¯ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Opened Tickets"
-msgstr "已申请è¿è¡Œä¸­è¡¨å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Opinion"
-msgstr "æ„è§"
-
-#: NOT FOUND IN SOURCE
-msgid "Option Description"
-msgstr "选项æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Option Name"
-msgstr "选项å称"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "排åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "顺åºä¸ŽæŽ’åºæ–¹å¼"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "组织å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Organization:"
-msgstr "组织:"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "原申请å•ï¼š#%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Other comma-delimited email addresses"
-msgstr "其它e-mailå¸å· (ä»…e-mail通知;多笔å¸å·è¯·ç”¨é€—å·','区隔)"
-
-#: NOT FOUND IN SOURCE
-msgid "Out of range"
-msgstr "期é™å¤–"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "已纪录å‘é€çš„评论邮件"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "已纪录å‘é€çš„邮件"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "优先顺ä½éšæ—¶é—´å¢žåŠ è°ƒæ•´ä¸º"
-
-#: NOT FOUND IN SOURCE
-msgid "Override current custom fields with fields from %1"
-msgstr "以 %1 表å•çš„自订字段å–代现有字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Override global rights"
-msgstr "å–代全域æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "OverrideGlobalACL status %1"
-msgstr "å–代全域æƒé™ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Overview"
-msgstr "总览"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "承办申请å•"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "承办申请å•"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "承办人"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "承办人已从 %1 改为 %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "无法设定承办人。"
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "强制将承办人从 %1 改为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "承办人"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner's Phone"
-msgstr "承办人电è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Page #"
-msgstr " "
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "第 %1/%2 页"
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "呼å«å™¨"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "呼å«å™¨å·ç "
-
-#: NOT FOUND IN SOURCE
-msgid "Parameter"
-msgstr "呼å«å‚æ•°"
-
-#: NOT FOUND IN SOURCE
-msgid "Parent"
-msgstr "上级"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "æ¯ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Park Space"
-msgstr "åœè½¦ä½ç”³è¯·"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "å£ä»¤"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "å£ä»¤æ示"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "å£ä»¤å¤ªçŸ­"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "å£ä»¤ï¼š%1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "å£ä»¤ç¡®è®¤å¤±è´¥ã€‚"
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "å£ä»¤ç¡®è®¤å¤±è´¥ã€‚您的å£ä»¤å¹¶æœªæ”¹å˜ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Pelase select a queue"
-msgstr "请选择表å•å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Pending Approval"
-msgstr "等待签核"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "人员"
-
-#: NOT FOUND IN SOURCE
-msgid "People with Queue Rights"
-msgstr "拥有表å•æƒé™äººå‘˜"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "执行使用者自订的动作"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl 设定"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "æƒé™ä¸è¶³"
-
-#: NOT FOUND IN SOURCE
-msgid "Permission Settings"
-msgstr "æƒé™è®¾å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Permitted Queues:"
-msgstr "拥有æƒé™è¡¨å•åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Personal"
-msgstr "代ç†äººç¾¤ç»„"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "代ç†äººç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "Personal Homepage"
-msgstr "个人首页"
-
-#: NOT FOUND IN SOURCE
-msgid "Personal Todo"
-msgstr "ç§äººå¾…办事项"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "代ç†äººç¾¤ç»„"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "代ç†äººç¾¤ç»„:"
-
-#: NOT FOUND IN SOURCE
-msgid "PersonalHomepage"
-msgstr "个人首页"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 1: Create/Rename Groups (%1)"
-msgstr "第一阶段:群组建立åŠæ”¹å (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 2: Disable/Enable Groups (%1)"
-msgstr "第二阶段:群组åœç”¨åŠå¯ç”¨ (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 3: Create/Rename Users (%1)"
-msgstr "第三阶段:使用者建立åŠæ”¹å (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 4: Disable/Enable Users (%1)"
-msgstr "第四阶段:使用者åœç”¨åŠå¯ç”¨ (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phone"
-msgstr "电è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Phone number"
-msgstr "电è¯å·ç "
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "电è¯å·ç "
-
-#: NOT FOUND IN SOURCE
-msgid "Pick"
-msgstr "挑选"
-
-#: NOT FOUND IN SOURCE
-msgid "Place of Departure"
-msgstr "出å‘地点"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "尚未完工"
-
-#: NOT FOUND IN SOURCE
-msgid "Please Select"
-msgstr "请选择"
-
-#: NOT FOUND IN SOURCE
-msgid "Please check items to be deleted first."
-msgstr "请先选中è¦åˆ é™¤çš„对象"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select a group"
-msgstr "请选择群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select a queue's workflow"
-msgstr "请选择表å•æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select one of the category types above."
-msgstr "请从上é¢é€‰æ‹©ä¸€é¡¹åˆ†ç±»ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select role"
-msgstr "请选择角色"
-
-#: NOT FOUND IN SOURCE
-msgid "Policy"
-msgstr "ç»è¥è§„ç« "
-
-#: NOT FOUND IN SOURCE
-msgid "Position"
-msgstr "èŒåŠ¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Level"
-msgstr "èŒç­‰"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Name"
-msgstr "èŒåŠ¡å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Number"
-msgstr "èŒåŠ¡ä»£ç "
-
-#: NOT FOUND IN SOURCE
-msgid "Position Rank"
-msgstr "èŒçº§"
-
-#: NOT FOUND IN SOURCE
-msgid "Pref"
-msgstr "å好"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "å好"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "个人信æ¯"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "预备动作完毕"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "上一项"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "上一页"
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "å‰ä¸€é¡µ"
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "优先顺ä½"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "找ä¸åˆ°å•ä½ %1。"
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "优先顺ä½"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "优先顺ä½èµ·å§‹å€¼"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "éšç§è®¾å®šï¼š"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "内部æˆå‘˜"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "内部æˆå‘˜çŠ¶æ€ï¼š%1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "内部æˆå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Process Status"
-msgstr "处ç†çŠ¶æ€"
-
-#: NOT FOUND IN SOURCE
-msgid "Project"
-msgstr "项目"
-
-#: NOT FOUND IN SOURCE
-msgid "Project Name"
-msgstr "项目å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "项目"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "内部用的虚拟群组"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Description"
-msgstr "公开说明"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Info"
-msgstr "公开信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Service"
-msgstr "公共事务区"
-
-#: NOT FOUND IN SOURCE
-msgid "Purging stale data: %1"
-msgstr "移除过期数æ®: %1"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "查询"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "建立查询"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "表å•"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "找ä¸åˆ°è¡¨å• %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "找ä¸åˆ°è¡¨å• '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "表å•å…³é”®è¯é€‰å–"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "表å•å称"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Owner"
-msgstr "业务承办人"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Priority"
-msgstr "优先等级"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Rights"
-msgstr "表å•æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "表å•æ‰‹ç»­"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Setup"
-msgstr "表å•è®¾å®š"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "表å•å·²å­˜åœ¨"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "无法新增表å•"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "无法加载表å•"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "表å•æ–°å¢žå®Œæ¯•"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "未指定表å•ã€‚"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "找ä¸åˆ°è¡¨å•"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Quick Search"
-msgstr "表å•çŽ°å†µ"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "表å•ä¸€è§ˆ"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "快速建立申请å•"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "%2:RT %1 版"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 版,<a href=\"http://bestpractical.com\">Best Practical Solutions å…¬å¸</a>出å“。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1。版æƒæ‰€æœ‰ 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1。版æƒæ‰€æœ‰ 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT 管ç†é¡µé¢"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT 认è¯é”™è¯¯ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT 退信:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT 设定错误"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RT 致命错误。讯æ¯æœªè¢«çºªå½•ã€‚"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT 错误"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT 收到从自己寄出的邮件 (%1)。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT 收到从自己寄出的邮件 (%1)。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT 自助æœåŠ¡/已解决的申请å•"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "RT çš„å˜æ•°"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT 一览"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT 无法认è¯æ‚¨çš„身份"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT 无法从外部数æ®åº“查询找到申请人信æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT 找ä¸åˆ°è¡¨å•ï¼š%1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT 无法确认这个 PGP 签章。\\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "%1 专用æµç¨‹ç³»ç»Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "%1 专用 RT 系统:%2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT 已执行您的命令"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT 版æƒæ‰€æœ‰ 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;。<br>æœ¬è½¯ä½“ä¾ <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU 通用公共授æƒç¬¬äºŒç‰ˆ</a> 散布。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT 认为这å¯èƒ½æ˜¯é€€ä¿¡"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT 以未签章方å¼å¤„ç†è¿™å°é‚®ä»¶ã€‚\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT 的电å­é‚®ä»¶å‘½ä»¤æ¨¡å¼é¡»è¦ PGP 认è¯ã€‚您å¯èƒ½æ²¡æœ‰ç­¾ç« ï¼Œæˆ–是您的签章无法辨识。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::Queue-Role"
-msgstr "表å•è¿è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::System-Role"
-msgstr "系统è¿è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::Ticket-Role"
-msgstr "申请å•è¿è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT_System"
-msgstr "系统讯æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Read Only"
-msgstr "åªè¯»"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "真实姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "真实姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "Really reject this ticket?"
-msgstr "您确定è¦é©³å›žè¿™å¼ ç”³è¯·å•å—?"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "已加入 %1 为å‚考本申请å•"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "已移除 %1 为å‚考本申请å•"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "已加入å‚è€ƒç”³è¯·å• %1"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "已移除å‚è€ƒç”³è¯·å• %1"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "被å‚考"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "å‚考"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "å‚考"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "在结果范围内查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "调整查询æ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Refresh"
-msgstr "æ›´æ–°"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "æ¯ %1 分钟更新页é¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Remove"
-msgstr "移除"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "移除管ç†å‘˜å‰¯æœ¬"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "移除副本"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "移除申请人"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "回å¤"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "回å¤åœ°å€"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "回å¤ç”³è¯·äºº"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "对申请å•è¿›è¡Œå›žå¤"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "回å¤ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Report to Duty"
-msgstr "上下ç­åˆ·å¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Reported on"
-msgstr "到èŒæ—¥æœŸ"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "申请人"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "申请人电å­é‚®ä»¶ä¿¡ç®±åœ°å€"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's"
-msgstr "申请人所属之第上"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's Dept."
-msgstr "申请人所属部门之"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's Phone"
-msgstr "申请人电è¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "申请人"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "申请人地å€"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "申请人"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "申请å•å¤„ç†æœŸé™"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "未指定必è¦çš„å‚数‘%1’"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "é‡è®¾"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "ä½å¤„"
-
-#: NOT FOUND IN SOURCE
-msgid "Resolution"
-msgstr "解决状æ€"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "解决"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "è§£å†³ç”³è¯·å• #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "已解决"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "回å¤ç”³è¯·äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Responsibility Type"
-msgstr "责任区分"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "结果"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "æ¯é¡µåˆ—出几笔结果"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "å†æ¬¡è¾“å…¥å£ä»¤"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "å¤åŽŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "在 %4 (%5) 的范围内找ä¸åˆ° %2 %3 çš„ %1 æƒé™\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "æƒé™ä»£ç†å®Œæ¯•"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "æƒé™è®¾å®šå®Œæ¯•"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "æƒé™åŠ è½½å®Œæ¯•"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "无法撤消æƒé™"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "找ä¸åˆ°æƒé™"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "æƒé™å¹¶æœªåŠ è½½ã€‚"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "æƒé™æ’¤æ¶ˆå®Œæ¯•"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "æƒé™åŠä»£ç†äºº"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "无法将æƒé™èµ‹äºˆ %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "无法撤消 %1 çš„æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Role Members"
-msgstr "角色æˆå‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Role Name"
-msgstr "角色å称"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "角色"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "交由系统管ç†å‘˜ç­¾æ ¸"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "æ¯é¡µç¬”æ•°"
-
-#: NOT FOUND IN SOURCE
-msgid "Run Approval"
-msgstr "签核执行"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPDebug"
-msgstr "SMTP 侦错纪录"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPFrom"
-msgstr "SMTP 寄件地å€"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPServer"
-msgstr "SMTP æœåŠ¡å™¨"
-
-#: NOT FOUND IN SOURCE
-msgid "Sat"
-msgstr "星期六"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "星期六"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "储存"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "储存更改"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "储存å好"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "储存更改"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "已储存的查询"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "手续 #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Action"
-msgstr "讯æ¯é€šçŸ¥åŠ¨ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Condition"
-msgstr "讯æ¯é€šçŸ¥æ¡ä»¶"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "手续新增完毕"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "手续字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Name"
-msgstr "讯æ¯å称"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "手续删除完毕"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "手续"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips "
-msgstr "讯æ¯é€šçŸ¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "%1 的手续\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "适用于所有表å•çš„手续"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "查询æ¡ä»¶"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "签核å•æŸ¥è¯¢"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "ä¸èƒ½å¯¹æ­¤ç±»å¯¹è±¡è¿›è¡ŒæŸ¥è¯¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Second-"
-msgstr "二"
-
-#: NOT FOUND IN SOURCE
-msgid "Second-level Users"
-msgstr "二阶主管员工"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "安全性:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "查阅自订字段"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "查阅é€å‡ºçš„电å­é‚®ä»¶åŠæ”¶ä»¶äºº"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "查阅申请å•å†…çš„ç§äººè¯„论"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "查阅申请å•æ€»è§ˆ"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "查阅自订字段"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "查阅表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "选择"
-
-#: NOT FOUND IN SOURCE
-msgid "Select All"
-msgstr "全选"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "选择自订字段"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "选择群组"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "选择表å•"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Select a queue to link to"
-msgstr "请选择欲连结表å•"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "选择使用者"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "选择自订字段"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "选择群组"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "选择多é‡é¡¹ç›®"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "选择å•ä¸€é¡¹ç›®"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "选择表å•"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "选择手续"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "选择模æ¿"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "选择最多 %1 个值"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "选择使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Select workflow"
-msgstr "选择æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectExternal"
-msgstr "系统选项"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "多é‡é€‰é¡¹"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "å•ä¸€é€‰é¡¹"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "已选å–的自订字段"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "已选å–的对象"
-
-#: NOT FOUND IN SOURCE
-msgid "Selected users:"
-msgstr "新增对象:"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "自助æœåŠ¡"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "寄信给所有视察员"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "以评论方å¼å¯„信给所有视察员"
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "寄信给申请人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "以评论方å¼å¯„信给申请人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "寄信给申请人"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "寄信给特定的副本åŠå¯†ä»¶å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "寄信给副本收件人"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "以评论方å¼å¯„信给副本收件人"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "寄信给管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "以评论寄信给管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "寄信给申请人"
-
-#: NOT FOUND IN SOURCE
-msgid "Sep"
-msgstr "ä¹æœˆ"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "09"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "ä¹æœˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Setting %1's 'Disabled' property to %2"
-msgstr "%1 的‘åœç”¨â€™å±žæ€§å·²è®¾ä¸º %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Shift Type"
-msgstr "ç­åˆ«å±žæ€§"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "显示"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "显示待签核申请å•"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "显示字段"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "显示结果"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "显示已批准的签核å•"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "显示基本信æ¯"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "显示已驳回的签核å•"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "显示细节"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "显示待处ç†çš„签核å•"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "显示尚待他人批准的签核å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "显示申请å•å†…çš„ç§äººè¯„论"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "显示申请å•æ‘˜è¦"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "显示æƒé™æ¸…å•"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "显示寄é€é‚®ä»¶"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "显示已储存的查询"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "显示手续"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "显示模æ¿"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "显示申请å•"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "显示申请å•çš„评论"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "登记æˆä¸ºç”³è¯·äººæˆ–副本收件人"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "登记æˆä¸ºç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "ç­¾åæ¡£"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "使用者:%1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "å•ä¸€"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "略过选å•"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "顺åº"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "排åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "结果排åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "排åºé¡ºåº"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "å…³å¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Stage Action"
-msgstr "å…³å¡è¿è¡ŒåŠ¨ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "Stage Condition"
-msgstr "å…³å¡è¿è¡Œæ¡ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "延宕"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "首页"
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "实际起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "无法解读起始日期 '%1"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "应起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "应起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "无法解读起始日期 '%1"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "å·ž"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "现况"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "现况改å˜æ—¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "现况从 %1 改为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "现况改å˜æ—¶"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "强制更æ¢æ‰¿åŠžäºº"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "强制承办申请å•"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "强制承办申请å•"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "承办人从 %1 强制更æ¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "承办人从 %1 å¼ºåˆ¶æ›´æ¢ "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Subgroup"
-msgstr "å­ç¾¤ç»„"
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "主题"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "标题已改为 %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "é€å‡ºæµç¨‹"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "设定æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Sun"
-msgstr "星期日"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "星期日"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "系统管ç†å‘˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Sync now"
-msgstr "执行åŒæ­¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Sync104HRMS"
-msgstr "自动åŒæ­¥104HRMS"
-
-#: NOT FOUND IN SOURCE
-msgid "Synchronizing HRMS data. This may take a while..."
-msgstr "正在åŒæ­¥åŒ– HRMS 人事系统数æ®ã€‚请ç¨å¾…..."
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "系统"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "系统设定"
-
-#: NOT FOUND IN SOURCE
-msgid "System Defined"
-msgstr "系统定义"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "系统错误"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "系统错误。设定æƒé™å¤±è´¥ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "系统错误。设定æƒé™å¤±è´¥ã€‚"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "System Rights"
-msgstr "系统æƒé™"
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "系统工具"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "系统错误。æƒé™ä»£ç†å¤±è´¥ã€‚"
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "系统错误。设定æƒé™å¤±è´¥ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "系统错误。无法设定æƒé™ã€‚"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "系统群组"
-
-#: NOT FOUND IN SOURCE
-msgid "SystemInternal"
-msgstr "系统内部用"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "内部使用的系统角色群组"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: NOT FOUND IN SOURCE
-msgid "TabbedUI"
-msgstr "页签接å£"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "å—ç†"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "自行承办申请å•"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "自行承办申请å•"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "å·²å—ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "工作事项"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "模æ¿"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "æ¨¡æ¿ #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Content"
-msgstr "通知模æ¿å†…容"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Description"
-msgstr "通知模æ¿æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Name"
-msgstr "通知模æ¿å称"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "模æ¿å·²åˆ é™¤"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "找ä¸åˆ°æ¨¡æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "找ä¸åˆ°æ¨¡æ¿\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "模æ¿å‰–æžå®Œæ¯•"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates "
-msgstr "通知模æ¿"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "找ä¸åˆ° %1 的模æ¿\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "文字"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "å·²ç»æ˜¯ç›®å‰å­—段的值"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "è¿™ä¸æ˜¯è¯¥è‡ªè®¢å­—段的值"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "åŒæ ·çš„值"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "这项å•ä½å·²ç»æ‹¥æœ‰è¯¥æƒé™"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "这项å•ä½å·²ç»æ˜¯è¿™ä¸ªè¡¨å•çš„ %1"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "这项å•ä½å·²ç»æ˜¯è¿™ä»½ç”³è¯·å•çš„ %1"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "这项å•ä½ä¸æ˜¯è¿™ä¸ªè¡¨å•çš„ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "这项å•ä½ä¸æ˜¯è¿™ä»½ç”³è¯·å•çš„ %1"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "此表å•ä¸å­˜åœ¨"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "这份申请å•æœ‰å°šæœªè§£å†³çš„附属申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "使用者已具有该项æƒé™"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "该使用者已ç»æ‰¿åŠžè¿™ä»½ç”³è¯·å•"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "使用者ä¸å­˜åœ¨"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "è¿™å使用者已ç»æ˜¯å†…部æˆå‘˜"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "è¿™å使用者属于éžå†…部æˆå‘˜ç¾¤ç»„"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "使用者加入内部æˆå‘˜ç¾¤ç»„完毕"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "è¿™å使用者已加入éžå†…部æˆå‘˜ç¾¤ç»„"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "è¿™å使用者已加入éžå†…部æˆå‘˜ç¾¤ç»„"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "使用者å¯èƒ½æ²¡æœ‰æ‰¿åŠžè¡¨å•é‡Œçš„申请å•"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "è¿™ä¸æ˜¯ä¸€ä¸ªæ•°å­—ç¼–å·"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "基本信æ¯"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "申请å•çš„副本收件人"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "申请å•çš„管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "评论已被纪录"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "下列命令会找到 'general' 表å•å†…所有è¿ä½œä¸­çš„申请å•ï¼Œå¹¶å°†å…¶ä¸­ 4 å°æ—¶å†…未处ç†çš„申请å•ä¼˜å…ˆç¨‹åº¦è®¾ä¸º 99:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "以下命令未被执行:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "新的字段值设定完æˆã€‚"
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "申请å•çš„承办人"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "申请å•çš„申请人"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "该使用者ä¸ä¼šçœ‹è§è¿™äº›è¯„论"
-
-#: NOT FOUND IN SOURCE
-msgid "Third-"
-msgstr "三"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "此自订字段ä¸é€‚用于该对象"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "此项功能仅é™ç³»ç»Ÿç®¡ç†å‘˜ä½¿ç”¨"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "此讯æ¯ä¼šå¯„ç»™..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "ç”³è¯·å• %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "此工具程åºä¼šè®©ä½¿ç”¨è€…ç»ç”± RT 执行任æ„命令。"
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "此项更动报告没有内容"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "使用者é€å‡ºçš„å‰ %1 份优先处ç†ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "使用者é€å‡ºçš„å‰ 25 份优先处ç†ç”³è¯·å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Thu"
-msgstr "星期四"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "星期四"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "ç”³è¯·å• # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "æ›´æ–°ç”³è¯·å• # %1 的全部信æ¯ï¼š%2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "æ›´æ–°ç”³è¯·å• #%1 的全部信æ¯ï¼š%2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "ç”³è¯·å• #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "ç”³è¯·å• %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "ç”³è¯·å• #%1 æˆåŠŸæ–°å¢žäºŽ '%2' 表å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "åŠ è½½ç”³è¯·å• %1\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "ç”³è¯·å• %1:%2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "申请å•çš„自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Due"
-msgstr "表å•å¤„ç†æœŸé™"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "申请å•å¤„ç†çºªå½• # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket ID"
-msgstr "å•å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "申请å•ç¼–å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Processing Due"
-msgstr "表å•è¿è¡ŒæœŸé™"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "申请å•å·²è§£å†³"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "申请å•çš„更动"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Type"
-msgstr "表å•ç§ç±»"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "申请å•é™„件"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "申请å•å†…容"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "申请å•å†…容类别"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "内部错误,无法新增申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "申请å•æ–°å¢žå®Œæ¯•"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "申请å•æ–°å¢žå¤±è´¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "申请å•åˆ é™¤å®Œæ¯•"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "找ä¸åˆ°ç”³è¯·å•ç¼–å·"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "申请å•åˆ é™¤å®Œæ¯•"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "申请å•çš„æè¿°ä¿¡æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "找ä¸åˆ°ç”³è¯·å•"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "申请å•çŽ°å†µå·²æ”¹å˜"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "申请å•è§†å¯Ÿå‘˜"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "ç”³è¯·å• %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "ç”³è¯·å• %1 (%2)"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets I own"
-msgstr "待处ç†çš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets I requested"
-msgstr "é€å‡ºçš„申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "%1 的申请å•"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "批准之åŽï¼Œå¯æŽ¥ç»­å¤„ç†ï¼š"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "预计时间"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "剩馀时间"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "处ç†æ—¶é—´"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "剩馀时间"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "显示时间"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "已处ç†æ—¶é—´"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "剩馀时间"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "已处ç†æ—¶é—´"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "产生这次更动的差异档:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "产生这次更动的差异档:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "如果有支æŒã€æ•™è‚²è®­ç»ƒåŠå®šåˆ¶å¼€å‘的需è¦ï¼Œè¯·è¿žç»œ %1。"
-
-#: NOT FOUND IN SOURCE
-msgid "Todo"
-msgstr "待办事项"
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "告知日期"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "工具"
-
-#: NOT FOUND IN SOURCE
-msgid "Total"
-msgstr "页"
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "更动"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "清除更动报告 %1"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "更动报告已新增"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "更动的自订字段"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "未指定申请å•ç¼–å·ï¼Œæ— æ³•æ–°å¢žæ›´åŠ¨"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "未指定对象类别åŠç¼–å·ï¼Œæ— æ³•æ–°å¢žæ›´åŠ¨"
-
-#: NOT FOUND IN SOURCE
-msgid "TransactionBatch"
-msgstr "批次更动时"
-
-#: NOT FOUND IN SOURCE
-msgid "TransactionCreate"
-msgstr "新增更动时"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "ä¸å¯æ›´æ”¹æ›´åŠ¨æŠ¥å‘Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Transfer to"
-msgstr "移交给"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "试图删除æŸé¡¹æƒé™ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Tue"
-msgstr "星期二"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "星期二"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "类别"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "尚无实作"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "外部系统登入å¸å·"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "外部系统登入å¸å·"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "ä¸å¯è§£çš„内容文字编ç æ–¹å¼ %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "全数显示"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "未命å的查询"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "éžå†…部æˆå‘˜"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "未选å–的自订字段"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "未选å–的对象"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "未被å—ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "未命å的查询"
-
-#: NOT FOUND IN SOURCE
-msgid "Up"
-msgstr "上一页"
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "处ç†"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "全部更新"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "æ›´æ–°ç¼–å·"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "更新申请å•"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "更新类别"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "整批更新申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "更新电å­é‚®ä»¶ä¿¡ç®±"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "批次更新申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "æ›´æ–°å¸å·"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "更新未被记录"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "更新选择的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "更新签章"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "更新申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "æ›´æ–°ç”³è¯·å• # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "æ›´æ–°ç”³è¯·å• #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "æ›´æ–°ç”³è¯·å• #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "更新的内容并éžç”³è¯·å•å›žå¤ä¹Ÿä¸æ˜¯è¯„论"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "å‰æ¬¡æ›´æ–°"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "上载"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "上载多个档案"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "上载多份图片"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "上载一个档案"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "上载一份图片"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "上载最多 %1 个档案"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "上载最多 %1 份图片"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "上载您的更动"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User"
-msgstr "使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "使用者 %1 %2:%3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "使用者 %1 å£ä»¤ï¼š%2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'。"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "使用者自订"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "使用者自订的æ¡ä»¶åŠåŠ¨ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "使用者 ID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "使用者 ID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Number"
-msgstr "员工编å·"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "使用者æƒé™"
-
-#: NOT FOUND IN SOURCE
-msgid "User Setup"
-msgstr "使用者设定"
-
-#: NOT FOUND IN SOURCE
-msgid "User Shift"
-msgstr "员工ç­åˆ«"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "使用者试图在 %2 对象 #%3 的自订字段 %1 上执行未知的更新æ“作"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "无法新增使用者:%1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "使用者新增完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "User created: %1"
-msgstr "使用者 %1 新增完毕"
-
-#: NOT FOUND IN SOURCE
-msgid "User created: %1 (%2)"
-msgstr "使用者 %1 (%2) 新增完毕"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "使用者定义的群组"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "已加载使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "已通知使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User renamed from %1 to %2"
-msgstr "使用者 %1 已改å为 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "使用者ç§äººæ•°æ®"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "使用者自定群组"
-
-#: NOT FOUND IN SOURCE
-msgid "UserDefined"
-msgstr "使用者自定"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "å¸å·"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "使用者"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "符åˆæŸ¥è¯¢æ¡ä»¶çš„使用者"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "åˆç†çš„查询"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "选择表å•"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "字段值"
-
-#: NOT FOUND IN SOURCE
-msgid "View log"
-msgstr "检视纪录档"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "视察"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "以管ç†å‘˜å‰¯æœ¬æ”¶ä»¶äººèº«ä»½è§†å¯Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "æˆåŠŸåŠ è½½è§†å¯Ÿå‘˜ä¿¡æ¯"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "视察员"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "网页文字编ç æ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Wed"
-msgstr "星期三"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "星期三"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "当申请å•é€šè¿‡æ‰€æœ‰ç­¾æ ¸åŽï¼Œå°†æ­¤è®¯æ¯å›žå¤åˆ°åŽŸç”³è¯·å•"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "当申请å•é€šè¿‡æŸé¡¹ç­¾æ ¸åŽï¼Œå°†æ­¤è®¯æ¯å›žå¤åˆ°åŽŸç”³è¯·å•"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "新增申请å•æ—¶"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "签核å•æ–°å¢žä¹‹åŽï¼Œé€šçŸ¥åº”å—ç†çš„承办人åŠç®¡ç†å‘˜å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "当任何事情å‘生时"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "当申请å•è§£å†³æ—¶"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "当申请å•æ›´æ¢æ‰¿åŠžäººæ—¶"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "当申请å•çš„优先顺åºæ”¹å˜æ—¶"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "当申请å•æ›´æ¢è¡¨å•æ—¶"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "当申请å•æ›´æ–°çŽ°å†µæ—¶"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "当使用者自订的情况å‘生时"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "当评论é€è¾¾æ—¶"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "当回å¤é€è¾¾æ—¶"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "å…¬å¸"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "离线工作"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "å…¬å¸ç”µè¯"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "处ç†æ—¶é—´"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow #%1"
-msgstr "æµç¨‹ #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow Begin"
-msgstr "æµç¨‹å¼€å§‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow End"
-msgstr "æµç¨‹ç»“æŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow deleted"
-msgstr "æµç¨‹å·²åˆ é™¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflows"
-msgstr "æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Writable"
-msgstr "å¯è¯»å†™"
-
-#: NOT FOUND IN SOURCE
-msgid "XXX CHANGEME You are not an authorized user"
-msgstr "XXX CHANGEME 您是未ç»æŽˆæƒçš„使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Yes"
-msgstr "是"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "您已是这份申请å•çš„承办人"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "您ä¸æ˜¯è¢«æŽˆæƒçš„使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "You can access it with the Download button on the right."
-msgstr "您å¯ä»¥æŒ‰å³æ–¹çš„‘下载’键æ¥å–得。"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "祇能é‡æ–°æŒ‡æ´¾æ‚¨æ‰€æ‰¿åŠžæˆ–是没有承办人的申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "您没有看那份申请å•çš„æƒé™ã€‚\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "æ‚¨ä¼šåœ¨è¡¨å• %2 找到 %1 的申请å•"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "您已注销 RT。"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "您没有在该表å•æ–°å¢žç”³è¯·å•çš„æƒé™ã€‚"
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "您ä¸èƒ½åœ¨è¯¥è¡¨å•ä¸­æ出申请。"
-
-#: NOT FOUND IN SOURCE
-msgid "You need to restart the Request Tracker service for saved changes to take effect."
-msgstr "您必须é‡æ–°æ¿€æ´» Request Tracker æœåŠ¡ï¼Œå‚¨å­˜çš„更动æ‰ä¼šç”Ÿæ•ˆã€‚"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "欢迎下次å†æ¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "您æ出的 %1 申请å•"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "RT 管ç†å‘˜å¯èƒ½è®¾é”™äº†ç”± RT 寄出的邮件收件人标头档"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "申请å•å·²ç”± %1 批准。å¯èƒ½è¿˜æœ‰å…¶å®ƒå¾…签核的步骤。"
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "您的申请å•å·²å®Œæˆç­¾æ ¸ç¨‹åºã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "您的申请å•å·²è¢«é©³å›ž"
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected by %1."
-msgstr "您的申请å•å·²è¢« %1 驳回。"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "您的申请å•å·²è¢«é©³å›žã€‚"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "您的å¸å·æˆ–å£ä»¤æœ‰è¯¯"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "邮政编ç "
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[没有标题]"
-
-#: NOT FOUND IN SOURCE
-msgid "ago"
-msgstr "过期"
-
-#: NOT FOUND IN SOURCE
-msgid "alert"
-msgstr "急讯"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "approving"
-msgstr "待签核"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "æƒé™åŒ %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "已解决"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "包å«"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "内容"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "类型"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "申请å•å›žå¤(å¯èƒ½)未é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "申请å•å›žå¤å·²é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "critical"
-msgstr "严é‡"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "天"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "æ‹’ç»å¤„ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "debug"
-msgstr "侦错"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "删除"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "已删除"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "ä¸ç¬¦åˆ"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "ä¸åŒ…å«"
-
-#: NOT FOUND IN SOURCE
-msgid "email address"
-msgstr "电å­é‚®ä»¶ä¿¡ç®±"
-
-#: NOT FOUND IN SOURCE
-msgid "emergency"
-msgstr "å±éš¾"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "等于"
-
-#: NOT FOUND IN SOURCE
-msgid "error"
-msgstr "错误"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "å‡"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "æ¡£å"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "大于"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "群组 '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "å°æ—¶"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "ç¼–å·"
-
-#: NOT FOUND IN SOURCE
-msgid "info"
-msgstr "ä¿¡æ¯"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "是"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "ä¸æ˜¯"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "å°äºŽ"
-
-#: NOT FOUND IN SOURCE
-msgid "level Admin"
-msgstr "层主管"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "符åˆ"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "分"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "分钟"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "更改\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "月"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "新建立"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "没有å称"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "没有值"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "æ— "
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ä¸ç­‰äºŽ"
-
-#: NOT FOUND IN SOURCE
-msgid "notice"
-msgstr "æ示"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "ä¸ç¬¦åˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "number"
-msgstr "å·"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "å¼€å¯"
-
-#: NOT FOUND IN SOURCE
-msgid "opened"
-msgstr "已开å¯"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "使用者‘%2’的‘%1’代ç†äººç¾¤ç»„"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "è¡¨å• %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "已驳回"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "已处ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "rtname"
-msgstr "æœåŠ¡å™¨å称"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "秒"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "电å­è¡¨æ ¼"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "延宕"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "系统 %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "系统群组 '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "呼å«ç»„件未指明原因"
-
-#: NOT FOUND IN SOURCE
-msgid "ticket #%1"
-msgstr "ç”³è¯·å• #%1"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "ç”³è¯·å• #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "till"
-msgstr "至"
-
-#: NOT FOUND IN SOURCE
-msgid "to"
-msgstr "到"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "真"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "没有æ述的群组 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "unresolved"
-msgstr "未处ç†"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "使用者 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "warning"
-msgstr "警告"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "周"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "模æ¿ï¼š%1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "å¹´"
-
diff --git a/rt/lib/RT/I18N/zh_tw.po b/rt/lib/RT/I18N/zh_tw.po
deleted file mode 100644
index 7fbda21..0000000
--- a/rt/lib/RT/I18N/zh_tw.po
+++ /dev/null
@@ -1,7908 +0,0 @@
-# Chinese localization catalog for Request Tracker (RT)
-msgid ""
-msgstr ""
-"Last-Translator: Autrijus Tang <autrijus@autrijus.org>\n"
-"Language-Team: Chinese <members@ourinet.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: NOT FOUND IN SOURCE
-msgid "#"
-msgstr "#"
-
-#: NOT FOUND IN SOURCE
-msgid "#%1"
-msgstr "#%1"
-
-#: html/Approvals/Elements/Approve:48 html/Approvals/Elements/ShowDependency:71 html/SelfService/Display.html:46 html/Ticket/Display.html:47 html/Ticket/Display.html:51
-#. ($Ticket->id, $Ticket->Subject)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-#. ($ticket->Id, $ticket->Subject)
-#. ($TicketObj->Id, $TicketObj->Subject)
-msgid "#%1: %2"
-msgstr "#%1: %2"
-
-#: lib/RT/Record.pm:926
-#. ($label)
-msgid "$prefix %1"
-msgstr "$prefix %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,group ticket)"
-msgstr "%*(%1) 件åƒèˆ‡çš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,ticket) due"
-msgstr "%*(%1) 件é™æœŸå®Œæˆçš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "%*(%1,unresolved ticket)"
-msgstr "%*(%1) 件尚未解決的申請單"
-
-#: lib/RT/URI/fsck_com_rt.pm:257
-#. ($self->ObjectType, $self->Object->Id)
-msgid "%1 #%2"
-msgstr "%1 #%2"
-
-#: lib/RT/Date.pm:361
-#. ($s, $time_unit)
-msgid "%1 %2"
-msgstr "%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 %3"
-msgstr "%1 %2 %3"
-
-#: lib/RT/Date.pm:397
-#. ($self->GetWeekday($wday), $self->GetMonth($mon), map {sprintf "%02d", $_} ($mday, $hour, $min, $sec), ($year+1900))
-msgid "%1 %2 %3 %4:%5:%6 %7"
-msgstr "%7-%2-%3 %4:%5:%6 %1"
-
-#: lib/RT/Record.pm:1671 lib/RT/Transaction_Overlay.pm:636 lib/RT/Transaction_Overlay.pm:679
-#. ($cf->Name, $new_value->Content)
-#. ($field, $self->NewValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 added"
-msgstr "%2 已新增為 %1"
-
-#: lib/RT/Date.pm:358
-#. ($s, $time_unit)
-msgid "%1 %2 ago"
-msgstr "%1 %2 之å‰"
-
-#: lib/RT/Record.pm:1678 lib/RT/Transaction_Overlay.pm:643
-#. ($cf->Name, $old_content, $new_value->Content)
-#. ($field, $self->OldValue, $self->NewValue)
-msgid "%1 %2 changed to %3"
-msgstr "%1 已從 %2 改為 %3"
-
-#: lib/RT/Record.pm:1675 lib/RT/Transaction_Overlay.pm:639 lib/RT/Transaction_Overlay.pm:685
-#. ($cf->Name, $old_value->Content)
-#. ($field, $self->OldValue)
-#. ($self->Field, $principal->Object->Name)
-msgid "%1 %2 deleted"
-msgstr "%2 已自 %1 刪除"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 %2 of group %3"
-msgstr "%3 群組的 %1 %2"
-
-#: html/Admin/Elements/EditScrips:65 html/Admin/Elements/ListGlobalScrips:64 html/Ticket/Elements/PreviewScrips:98
-#. (loc($scrip->ConditionObj->Name), loc($scrip->ActionObj->Name), loc($scrip->TemplateObj->Name))
-msgid "%1 %2 with template %3"
-msgstr "æ¢ä»¶ï¼š%1 | 動作:%2 | 範本:%3"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 (%2) %3 this ticket\\n"
-msgstr "%1 (%2) %3 這份申請單\\n"
-
-#: html/Ticket/Elements/ShowAttachments:72
-#. ($rev->CreatedAsString, $size, $rev->CreatorObj->Name)
-msgid "%1 (%2) by %3"
-msgstr "%1 (%2) - %3"
-
-#: html/SelfService/Update.html:60 html/Ticket/Elements/EditBasics:87 html/Ticket/Update.html:61 html/Ticket/Update.html:63 html/Tools/MyDay.html:65
-#. (loc($DefaultStatus))
-#. (loc($TicketObj->Status))
-#. ($TicketObj->OwnerObj->Name())
-#. (loc($Ticket->Status()))
-msgid "%1 (Unchanged)"
-msgstr "%1 (未更改)"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 - %2 shown"
-msgstr "顯示第 %1 - %2 筆"
-
-#: bin/rt-crontool:194 bin/rt-crontool:201 bin/rt-crontool:207
-#. ("--search-argument", "--search")
-#. ("--condition-argument", "--condition")
-#. ("--action-argument", "--action")
-msgid "%1 - An argument to pass to %2"
-msgstr "%1 - 傳éžçµ¦ %2 的一個åƒæ•¸"
-
-#: bin/rt-crontool:210
-#. ("--verbose")
-msgid "%1 - Output status updates to STDOUT"
-msgstr "%1 - 將更新狀態輸出到 STDOUT"
-
-#: bin/rt-crontool:204
-#. ("--action")
-msgid "%1 - Specify the action module you want to use"
-msgstr "%1 - 指定欲使用的動作模組"
-
-#: bin/rt-crontool:198
-#. ("--condition")
-msgid "%1 - Specify the condition module you want to use"
-msgstr "%1 - 指定欲使用的æ¢ä»¶æ¨¡çµ„"
-
-#: bin/rt-crontool:191
-#. ("--search")
-msgid "%1 - Specify the search module you want to use"
-msgstr "%1 - 指定欲使用的查詢模組"
-
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2004',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-#: html/Elements/Footer:58
-#. ('&#187;&#124;&#171;',
- $RT::VERSION,
- '2005',
- '<a href="http://www.bestpractical.com?rt='.$RT::VERSION.'">Best Practical Solutions, LLC</a>',)
-msgid "%1 RT %2 Copyright 1996-%3 %4."
-msgstr "%1 RT %2 版,%4 版權所有,1996-%3。"
-
-#: lib/RT/ScripAction_Overlay.pm:151
-#. ($self->Id)
-msgid "%1 ScripAction loaded"
-msgstr "載入手續 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 Total"
-msgstr "å…± %1 ç­†"
-
-#: lib/RT/Record.pm:1708
-#. ($args{'Value'}, $cf->Name)
-msgid "%1 added as a value for %2"
-msgstr "新增 %1 作為 %2 的值"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on"
-msgstr "別å %1 需è¦å¯ç”¨çš„申請單編號"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on "
-msgstr "別å %1 需è¦å¯ç”¨çš„申請單編號 "
-
-#: NOT FOUND IN SOURCE
-msgid "%1 aliases require a TicketId to work on (from %2) %3"
-msgstr "別å %1 需è¦å¯ç”¨çš„ç”³è«‹å–®ç·¨è™Ÿä»¥è™•ç† %3(出自 %2)"
-
-#: lib/RT/Link_Overlay.pm:145 lib/RT/Link_Overlay.pm:152
-#. ($args{'Base'})
-#. ($args{'Target'})
-msgid "%1 appears to be a local object, but can't be found in the database"
-msgstr "%1 看來是個本地物件,å»ä¸åœ¨è³‡æ–™åº«è£¡"
-
-#: html/Ticket/Elements/ShowDates:73 lib/RT/Transaction_Overlay.pm:520
-#. ($self->BriefDescription , $self->CreatorObj->Name)
-#. ($Ticket->LastUpdatedAsString, $Ticket->LastUpdatedByObj->Name)
-msgid "%1 by %2"
-msgstr "%1 (%2)"
-
-#: lib/RT/Transaction_Overlay.pm:777 lib/RT/Transaction_Overlay.pm:786 lib/RT/Transaction_Overlay.pm:789
-#. ($self->Field , $q1->Name , $q2->Name)
-#. ($self->Field, $t2->AsString, $t1->AsString)
-#. ($self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'")
-msgid "%1 changed from %2 to %3"
-msgstr "%1 的值從 %2 改為 %3"
-
-#: html/Search/Build.html:212
-#. ($Description)
-msgid "%1 copy"
-msgstr "%1 複製"
-
-#: lib/RT/Record.pm:930
-msgid "%1 could not be set to %2."
-msgstr "無法將 %1 設定為 %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 couldn't init a transaction (%2)\\n"
-msgstr "%1 無法åˆå§‹æ›´æ–° (%2)\\n"
-
-#: lib/RT/Ticket_Overlay.pm:2743
-#. ($self)
-msgid "%1 couldn't set status to resolved. RT's Database may be inconsistent."
-msgstr "%1 無法將ç¾æ³è¨­æˆå·²è§£æ±ºã€‚RT 資料庫內容å¯èƒ½ä¸ä¸€è‡´ã€‚"
-
-#: lib/RT/Transaction_Overlay.pm:560
-#. ($obj_type)
-msgid "%1 created"
-msgstr "已建立 %1"
-
-#: lib/RT/Transaction_Overlay.pm:565
-#. ($obj_type)
-msgid "%1 deleted"
-msgstr "已刪除 %1"
-
-#: html/Elements/MyTickets:47
-#. ($rows)
-msgid "%1 highest priority tickets I own"
-msgstr "å‰ %1 份待處ç†ç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I own..."
-msgstr "å‰ %1 份待處ç†ç”³è«‹å–®..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets I requested..."
-msgstr "å‰ %1 份é€å‡ºçš„申請單..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 highest priority tickets pending my approval..."
-msgstr "å‰ %1 份待簽核申請單..."
-
-#: bin/rt-crontool:186
-#. ($0)
-msgid "%1 is a tool to act on tickets from an external scheduling tool, such as cron."
-msgstr "%1 是從外部排程程å¼(如 cron)來å°ç”³è«‹å–®é€²è¡Œæ“作的工具。"
-
-#: lib/RT/Queue_Overlay.pm:860
-#. ($principal->Object->Name, $args{'Type'})
-msgid "%1 is no longer a %2 for this queue."
-msgstr "%1 å·²ä¸å†æ˜¯æ­¤è¡¨å–®çš„ %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a %2 for this ticket."
-msgstr "%1 å·²ä¸å†æ˜¯æ­¤ç”³è«‹å–®çš„ %2。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 is no longer a value for custom field %2"
-msgstr "%1 å·²ä¸å†æ˜¯è‡ªè¨‚æ¬„ä½ %2 的值。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 isn't a valid Queue id."
-msgstr "%1 ä¸æ˜¯ä¸€å€‹åˆæ³•çš„表單編號。"
-
-#: html/Ticket/Create.html:186 html/Ticket/Create.html:187 html/Ticket/Elements/ShowBasics:58 html/Ticket/Elements/ShowBasics:64 html/Ticket/Elements/ShowBasics:69
-#. ('<input size=3 name="TimeWorked" value="'.$ARGS{TimeWorked}.'">')
-#. ('<input size=3 name="TimeLeft" value="'.$ARGS{TimeLeft}.'">')
-#. ($Ticket->TimeEstimated)
-#. ($Ticket->TimeWorked)
-#. ($Ticket->TimeLeft)
-msgid "%1 min"
-msgstr "%1 分é˜"
-
-#: html/Elements/MyRequests:47
-#. ($rows)
-msgid "%1 newest unowned tickets"
-msgstr "å‰ %1 份待èªé ˜çš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 not shown"
-msgstr "沒有顯示 %1"
-
-#: lib/RT/CustomField_Overlay.pm:827
-msgid "%1 objects"
-msgstr "%1 物件"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 recent tickets I own..."
-msgstr "最新 %1 份待處ç†ç”³è«‹å–®..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 recent tickets I requested..."
-msgstr "最新 %1 份é€å‡ºçš„申請單..."
-
-#: NOT FOUND IN SOURCE
-msgid "%1 result(s) found"
-msgstr "找到 %1 é …çµæžœ"
-
-#: html/User/Elements/DelegateRights:97
-#. (loc($ObjectType =~ /^RT::(.*)$/))
-msgid "%1 rights"
-msgstr "%1權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 succeeded\\n"
-msgstr "%1 完æˆ\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for $MessageId"
-msgstr "ä¸çŸ¥é“ $MessageID çš„ %1 類別"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 type unknown for %2"
-msgstr "ä¸çŸ¥é“ %2 çš„ %1 類別"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 was created without a CurrentUser\\n"
-msgstr "%1 新增時未指定ç¾è¡Œä½¿ç”¨è€…"
-
-#: lib/RT/Action/ResolveMembers.pm:63
-#. (ref $self)
-msgid "%1 will resolve all members of a resolved group ticket."
-msgstr "%1 會解決在已解決群組裡æˆå“¡çš„申請單。"
-
-#: NOT FOUND IN SOURCE
-msgid "%1 will stall a [local] BASE if it's dependent [or member] of a linked up request."
-msgstr "如果 %1 起始申請單ä¾è³´æ–¼æŸå€‹éˆçµï¼Œæˆ–是æŸå€‹éˆçµçš„æˆå“¡ï¼Œå®ƒå°‡æœƒè¢«å»¶å®•ã€‚"
-
-#: lib/RT/CustomField_Overlay.pm:828
-msgid "%1's %2 objects"
-msgstr "%1 內的 %2 物件"
-
-#: lib/RT/CustomField_Overlay.pm:829
-msgid "%1's %2's %3 objects"
-msgstr "%1 內的 %2 的 %3 物件"
-
-#: html/Search/Elements/SearchPrivacy:52 html/Search/Elements/SelectSearchObject:55 html/Search/Elements/SelectSearchesForObjects:56
-#. ($object->Name)
-#. ($Object->Name)
-msgid "%1's saved searches"
-msgstr "%1 已儲存的查詢"
-
-#: lib/RT/Transaction_Overlay.pm:470
-#. ($self)
-msgid "%1: no attachment specified"
-msgstr "%1:未指定附件"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:78
-#. ($size)
-msgid "%1b"
-msgstr "%1 ä½å…ƒçµ„"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:75
-#. (int( $size / 102.4 ) / 10)
-msgid "%1k"
-msgstr "%1k ä½å…ƒçµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "%quant(%1,result) found"
-msgstr "找到 %1 é …çµæžœ"
-
-#: lib/RT/Ticket_Overlay.pm:1118
-#. ($args{'Status'})
-msgid "'%1' is an invalid value for status"
-msgstr "'%1' ä¸æ˜¯ä¸€å€‹åˆæ³•çš„狀態值"
-
-#: NOT FOUND IN SOURCE
-msgid "'%1' not a recognized action. "
-msgstr "'%1'為無法辨識的動作。 "
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete group member)"
-msgstr "(點é¸æ¬²åˆªé™¤çš„æˆå“¡)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check box to delete scrip)"
-msgstr "(點é¸æ¬²åˆªé™¤çš„手續)"
-
-#: html/Admin/Elements/EditCustomFieldValues:50 html/Admin/Elements/EditQueueWatchers:50 html/Admin/Elements/EditScrips:56 html/Admin/Elements/EditTemplates:57 html/Admin/Groups/Members.html:73 html/Elements/EditLinks:54 html/Ticket/Elements/EditPeople:67 html/User/Groups/Members.html:76
-msgid "(Check box to delete)"
-msgstr "(點é¸æ¬²åˆªé™¤çš„é …ç›®)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Check boxes to delete)"
-msgstr "(點é¸æ¬²åˆªé™¤çš„é …ç›®)"
-
-#: html/Ticket/Elements/PreviewScrips:94
-msgid "(Check boxes to disable notifications to the listed recipients)"
-msgstr "(點é¸æ¬²åœç”¨é€šçŸ¥çš„收件人)"
-
-#: html/Ticket/Elements/PreviewScrips:116
-msgid "(Check boxes to enable notifications to the listed recipients)"
-msgstr "(點é¸æ¬²å•Ÿç”¨é€šçŸ¥çš„收件人)"
-
-#: html/Ticket/Create.html:209
-msgid "(Enter ticket ids or URLs, separated with spaces)"
-msgstr "(éµå…¥ç”³è«‹å–®ç·¨è™Ÿæˆ–網å€ï¼Œä»¥ç©ºç™½åˆ†éš”)"
-
-#: html/Admin/Queues/Modify.html:75 html/Admin/Queues/Modify.html:81
-#. ($RT::CorrespondAddress)
-#. ($RT::CommentAddress)
-msgid "(If left blank, will default to %1)"
-msgstr "(如果留白, 則é è¨­ç‚º %1)"
-
-#: NOT FOUND IN SOURCE
-msgid "(No Value)"
-msgstr "(沒有值)"
-
-#: html/Admin/Elements/EditCustomFields:74 html/Admin/Elements/ListGlobalCustomFields:53
-msgid "(No custom fields)"
-msgstr "(沒有自訂欄ä½)"
-
-#: html/Admin/Groups/Members.html:71 html/User/Groups/Members.html:74
-msgid "(No members)"
-msgstr "(沒有æˆå“¡)"
-
-#: html/Admin/Elements/EditScrips:53 html/Admin/Elements/ListGlobalScrips:49
-msgid "(No scrips)"
-msgstr "(沒有手續)"
-
-#: html/Admin/Elements/EditTemplates:52
-msgid "(No templates)"
-msgstr "沒有範本"
-
-#: NOT FOUND IN SOURCE
-msgid "(No workflows)"
-msgstr "沒有æµç¨‹"
-
-#: html/Admin/Elements/PickCustomFields:47 html/Admin/Elements/PickObjects:47
-msgid "(None)"
-msgstr "(ç„¡)"
-
-#: html/Ticket/Update.html:88
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„密件副本給å單上以逗號隔開的電å­éƒµä»¶ä½å€ã€‚這<b>ä¸æœƒ</b>更改後續的收件者å單。)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a blind carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„密件副本給å單上以逗號隔開的電å­éƒµä»¶ä½å€ã€‚這<b>ä¸æœƒ</b>更改後續的收件者å單。)"
-
-#: html/Ticket/Create.html:100
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of administrative email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本給å單上以逗號隔開的管ç†å“¡é›»å­éƒµä»¶ä½å€ã€‚這<b>將會</b>更改後續的收件者å單。)"
-
-#: html/Ticket/Update.html:84
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本給å單上以逗號隔開的電å­éƒµä»¶ä½å€ã€‚這<b>ä¸æœƒ</b>更改後續的收件者å單。)"
-
-#: NOT FOUND IN SOURCE
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. Does <b>not</b> change who will recieve future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本給å單上以逗號隔開的電å­éƒµä»¶ä½å€ã€‚這<b>ä¸æœƒ</b>更改後續的收件者å單。)"
-
-#: html/Ticket/Create.html:90
-msgid "(Sends a carbon-copy of this update to a comma-delimited list of email addresses. These people <b>will</b> receive future updates.)"
-msgstr "(é€å‡ºæœ¬ä»½æ›´æ–°çš„副本給å單上以逗號隔開的電å­éƒµä»¶ä½å€ã€‚這<b>將會</b>更改後續的收件者å單。)"
-
-#: html/Admin/Elements/EditScrip:102
-msgid "(Use these fields when you choose 'User Defined' for a condition or action)"
-msgstr "(當æ¢ä»¶æˆ–動作設為「使用者自訂ã€æ™‚,請填入這些欄ä½)"
-
-#: NOT FOUND IN SOURCE
-msgid "(default delegate)"
-msgstr "(é è¨­ä»£ç†äºº)"
-
-#: NOT FOUND IN SOURCE
-msgid "(delete)"
-msgstr "(刪除)"
-
-#: html/Admin/Groups/index.html:57 html/User/Groups/index.html:54
-msgid "(empty)"
-msgstr "(空白)"
-
-#: NOT FOUND IN SOURCE
-msgid "(new)"
-msgstr "(新增)"
-
-#: html/Admin/Users/index.html:60
-msgid "(no name listed)"
-msgstr "(沒有列出姓å)"
-
-#: NOT FOUND IN SOURCE
-msgid "(no subject)"
-msgstr "(沒有主題)"
-
-#: html/Admin/Elements/SelectRights:72 html/Elements/EditCustomFieldSelect:60 html/Elements/SelectCustomFieldValue:51 html/Elements/ShowCustomFields:65 lib/RT/Transaction_Overlay.pm:580
-msgid "(no value)"
-msgstr "(ç„¡)"
-
-#: html/Admin/Elements/EditCustomFieldValues:47
-msgid "(no values)"
-msgstr "(沒有值)"
-
-#: html/Elements/EditLinks:130 html/Ticket/Elements/BulkLinks:49
-msgid "(only one ticket)"
-msgstr "(僅能指定一份申請單)"
-
-#: html/Elements/RT__Ticket/ColumnMap:146
-msgid "(pending approval)"
-msgstr "(等待簽核)"
-
-#: html/Elements/RT__Ticket/ColumnMap:149
-msgid "(pending other Collection)"
-msgstr "(等待其他集åˆ)"
-
-#: NOT FOUND IN SOURCE
-msgid "(pending other tickets)"
-msgstr "(等待其他申請單)"
-
-#: NOT FOUND IN SOURCE
-msgid "(requestor's group)"
-msgstr "(申請人所屬)"
-
-#: html/Admin/Users/Modify.html:71
-msgid "(required)"
-msgstr "(å¿…å¡«)"
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "(untitled)"
-msgstr "(未命å)"
-
-#: NOT FOUND IN SOURCE
-msgid "*"
-msgstr "★"
-
-#: NOT FOUND IN SOURCE
-msgid ":"
-msgstr ":"
-
-#: html/Ticket/Elements/ShowBasics:53
-msgid "<% $Ticket->Status%>"
-msgstr "<% $Ticket->Status%>"
-
-#: html/Elements/SelectTicketTypes:48
-msgid "<% $_ %>"
-msgstr "<% $_ %>"
-
-#: html/Search/Elements/SelectLinks:48
-msgid "<%$_%>"
-msgstr "<%$_%>"
-
-#: html/Search/Elements/DisplayOptions:65
-msgid "<%$field%>"
-msgstr "<%$field%>"
-
-#: docs/design_docs/string-extraction-guide.txt:54 html/Elements/CreateTicket:47 lib/RT/StyleGuide.pod:787
-#. ($m->scomp('/Elements/SelectNewTicketQueue'))
-msgid "<input type=\"submit\" value=\"New ticket in\">&nbsp;%1"
-msgstr "<input type=\"submit\" value=\"æ出申請單\">&nbsp;%1"
-
-#: etc/initialdata:218
-msgid "A blank template"
-msgstr "空白範本"
-
-#: html/Admin/Users/Modify.html:363
-msgid "A password was not set, so user won't be able to login."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Deleted"
-msgstr "ACE 已刪除"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE Loaded"
-msgstr "ACE 已載入"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be deleted"
-msgstr "無法刪除 ACE"
-
-#: NOT FOUND IN SOURCE
-msgid "ACE could not be found"
-msgstr "找ä¸åˆ° ACE"
-
-#: lib/RT/ACE_Overlay.pm:175 lib/RT/Principal_Overlay.pm:219
-msgid "ACE not found"
-msgstr "找ä¸åˆ° ACE 設定"
-
-#: lib/RT/ACE_Overlay.pm:854
-msgid "ACEs can only be created and deleted."
-msgstr "祇能新增或刪除 ACE 設定。"
-
-#: NOT FOUND IN SOURCE
-msgid "ACLEquivalence"
-msgstr "ACLEquivalence"
-
-#: html/Search/Elements/SelectAndOr:46
-msgid "AND"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Aborting to avoid unintended ticket modifications.\\n"
-msgstr "離開以å…ä¸å°å¿ƒæ›´æ”¹åˆ°ç”³è«‹å–®ã€‚\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "About Me"
-msgstr "個人資訊"
-
-#: html/User/Elements/Tabs:53
-msgid "About me"
-msgstr "個人資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Access Right"
-msgstr "系統使用登錄權é™"
-
-#: html/Admin/Users/Modify.html:106
-msgid "Access control"
-msgstr "å­˜å–權é™"
-
-#: html/Admin/Elements/EditScrip:71
-msgid "Action"
-msgstr "動作"
-
-#: lib/RT/Scrip_Overlay.pm:173
-#. ($args{'ScripAction'})
-msgid "Action %1 not found"
-msgstr "動作 %1 找ä¸åˆ°"
-
-#: NOT FOUND IN SOURCE
-msgid "Action committed."
-msgstr "動作執行完畢"
-
-#: bin/rt-crontool:148
-msgid "Action committed.\\n"
-msgstr ""
-
-#: bin/rt-crontool:144
-msgid "Action prepared..."
-msgstr "動作準備完畢..."
-
-#: NOT FOUND IN SOURCE
-msgid "Activated Date"
-msgstr "申請啟動時間"
-
-#: html/Search/Build.html:85
-msgid "Add"
-msgstr "新增"
-
-#: html/Search/Bulk.html:114
-msgid "Add AdminCc"
-msgstr "新增管ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: html/Search/Bulk.html:110
-msgid "Add Cc"
-msgstr "新增副本收件人"
-
-#: html/Search/Elements/EditFormat:49
-msgid "Add Columns"
-msgstr ""
-
-#: html/Search/Elements/PickCriteria:46
-msgid "Add Criteria"
-msgstr "新增æ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Entry"
-msgstr "新增列"
-
-#: html/Ticket/Create.html:144 html/Ticket/Update.html:114
-msgid "Add More Files"
-msgstr "新增更多附件"
-
-#: NOT FOUND IN SOURCE
-msgid "Add Next State"
-msgstr "新增下一項關å¡"
-
-#: html/Search/Bulk.html:106
-msgid "Add Requestor"
-msgstr "新增申請人"
-
-#: html/Admin/Elements/AddCustomFieldValue:46
-msgid "Add Value"
-msgstr "新增欄ä½å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip to this queue"
-msgstr "新增此表單的手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a Scrip which will apply to all queues"
-msgstr "新增é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a keyword selection to this queue"
-msgstr "新增此表單的關éµå­—"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a new a global scrip"
-msgstr "新增全域手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Add a scrip to this queue"
-msgstr "新增一é“手續到此表單"
-
-#: html/Admin/Global/Scrip.html:76
-msgid "Add a scrip which will apply to all queues"
-msgstr "新增一é“用於所有表單的手續"
-
-#: html/Search/Build.html:85
-msgid "Add additional criteria"
-msgstr "新增查詢æ¢ä»¶"
-
-#: html/Search/Bulk.html:146
-msgid "Add comments or replies to selected tickets"
-msgstr "新增評論或回覆到指定的申請單"
-
-#: html/Admin/Groups/Members.html:63 html/User/Groups/Members.html:60
-msgid "Add members"
-msgstr "新增æˆå“¡"
-
-#: html/Admin/Queues/People.html:87 html/Ticket/Elements/AddWatchers:49
-msgid "Add new watchers"
-msgstr "新增視察員"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "Add, delete and modify custom field values for objects"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "AddNextState"
-msgstr "新增下一項關å¡"
-
-#: lib/RT/Queue_Overlay.pm:760
-#. ($args{'Type'})
-msgid "Added principal as a %1 for this queue"
-msgstr "å–®ä½å·²æ–°å¢žç‚ºæ­¤è¡¨å–®çš„ %1"
-
-#: lib/RT/Ticket_Overlay.pm:1416
-#. ($self->loc($args{'Type'}))
-msgid "Added principal as a %1 for this ticket"
-msgstr "å–®ä½å·²æ–°å¢žç‚ºæ­¤ç”³è«‹å–®çš„ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Additional Hints"
-msgstr "é¡å¤–æ示"
-
-#: html/Admin/Users/Modify.html:146 html/User/Prefs.html:133
-msgid "Address1"
-msgstr "ä½å€"
-
-#: html/Admin/Users/Modify.html:151 html/User/Prefs.html:137
-msgid "Address2"
-msgstr "ä½å€(續)"
-
-#: NOT FOUND IN SOURCE
-msgid "Adjust Blinking Rate"
-msgstr "調整閃çˆé€Ÿåº¦å¿«æ…¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin"
-msgstr "管ç†å“¡"
-
-#: html/Ticket/Create.html:95
-msgid "Admin Cc"
-msgstr "管ç†å“¡å‰¯æœ¬"
-
-#: etc/initialdata:295
-msgid "Admin Comment"
-msgstr "管ç†å“¡è©•è«–"
-
-#: etc/initialdata:274
-msgid "Admin Correspondence"
-msgstr "管ç†å“¡å›žè¦†"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin Rights"
-msgstr "管ç†å“¡æ¬Šé™"
-
-#: html/Admin/Queues/index.html:46 html/Admin/Queues/index.html:49
-msgid "Admin queues"
-msgstr "表單管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin users"
-msgstr "使用者管ç†"
-
-#: html/Admin/Global/index.html:47 html/Admin/Global/index.html:49
-msgid "Admin/Global configuration"
-msgstr "管ç†/全域設定"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Groups"
-msgstr "管ç†/群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Admin/Queue/Basics"
-msgstr "管ç†/表單/基本資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAddress"
-msgstr "管ç†å“¡ Email"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminAllPersonalGroups"
-msgstr "管ç†æ‰€æœ‰ä»£ç†äººç¾¤çµ„"
-
-#: etc/initialdata:56 html/Ticket/Elements/ShowPeople:60 lib/RT/ACE_Overlay.pm:114
-msgid "AdminCc"
-msgstr "管ç†å“¡å‰¯æœ¬"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminComment"
-msgstr "管ç†å“¡è©•è«–"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCorrespondence"
-msgstr "管ç†å“¡å›žè¦†"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "AdminCustomField"
-msgstr "管ç†è‡ªè¨‚欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminCustomFields"
-msgstr "管ç†è‡ªè¨‚欄ä½"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "AdminGroup"
-msgstr "管ç†ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupDescription"
-msgstr "管ç†ç¾¤çµ„æè¿°"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "AdminGroupMembership"
-msgstr "管ç†ç¾¤çµ„æˆå“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupName"
-msgstr "管ç†ç¾¤çµ„å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupPermission"
-msgstr "管ç†ç¾¤çµ„權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "AdminGroupStatus"
-msgstr "管ç†ç¾¤çµ„狀態"
-
-#: lib/RT/System.pm:81
-msgid "AdminOwnPersonalGroups"
-msgstr "管ç†ä»£ç†äººç¾¤çµ„"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "AdminQueue"
-msgstr "管ç†è¡¨å–®"
-
-#: lib/RT/System.pm:82
-msgid "AdminUsers"
-msgstr "管ç†ä½¿ç”¨è€…"
-
-#: NOT FOUND IN SOURCE
-msgid "Administrative"
-msgstr "行政類"
-
-#: html/Admin/Queues/People.html:69 html/Ticket/Elements/EditPeople:75
-msgid "Administrative Cc"
-msgstr "管ç†å“¡å‰¯æœ¬"
-
-#: NOT FOUND IN SOURCE
-msgid "Admins"
-msgstr "主管"
-
-#: html/Ticket/Elements/Tabs:197
-msgid "Advanced"
-msgstr "進階"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search"
-msgstr "進階查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Advanced Search Criteria"
-msgstr "進階查詢æ¢ä»¶"
-
-#: html/Elements/SelectDateRelation:57
-msgid "After"
-msgstr "晚於"
-
-#: NOT FOUND IN SOURCE
-msgid "Age"
-msgstr "經歷時間"
-
-#: html/Search/Elements/PickCriteria:52
-msgid "Aggregator"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Alias"
-msgstr "執行其他æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Alias for"
-msgstr "相當於"
-
-#: NOT FOUND IN SOURCE
-msgid "All"
-msgstr "全部"
-
-#: etc/initialdata:363
-msgid "All Approvals Passed"
-msgstr "完æˆå…¨éƒ¨ç°½æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "All Condition"
-msgstr "所有æ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "All Custom Fields"
-msgstr "所有自訂欄ä½"
-
-#: html/Admin/Queues/index.html:75
-msgid "All Queues"
-msgstr "所有表單"
-
-#: NOT FOUND IN SOURCE
-msgid "All Users"
-msgstr "全體員工"
-
-#: NOT FOUND IN SOURCE
-msgid "All done! Now you can proceed to %1."
-msgstr "處ç†å®Œç•¢ï¼æ‚¨ç¾åœ¨å¯ä»¥ç¹¼çºŒé€²è¡Œ %1。"
-
-#: NOT FOUND IN SOURCE
-msgid "Allowance Request"
-msgstr "ç¦åˆ©è£œåŠ©ç”³è«‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Always sends a message to the requestors independent of message sender"
-msgstr "無論寄件來æºç‚ºä½•ï¼Œä¸€å¾‹å¯„信給申請人"
-
-#: NOT FOUND IN SOURCE
-msgid "Amount"
-msgstr "數é¡"
-
-#: html/Search/Elements/EditQuery:56
-msgid "And/Or"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Any Condition"
-msgstr "ä»»æ„æ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Applies To"
-msgstr "套用於"
-
-#: html/Admin/CustomFields/Modify.html:73 html/Admin/Elements/CustomFieldTabs:83
-msgid "Applies to"
-msgstr "套用於"
-
-#: html/Search/Edit.html:64
-msgid "Apply"
-msgstr "套用"
-
-#: NOT FOUND IN SOURCE
-msgid "Apply Template"
-msgstr "引用範本"
-
-#: html/Search/Edit.html:64
-msgid "Apply your changes"
-msgstr "套用更動"
-
-#: html/Elements/Tabs:74
-msgid "Approval"
-msgstr "簽核"
-
-#: html/Approvals/Display.html:67 html/Approvals/Elements/ShowDependency:63 html/Approvals/index.html:86
-#. ($Ticket->Id, $Ticket->Subject)
-#. ($ticket->id, $msg)
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Approval #%1: %2"
-msgstr "簽核單 #%1:%2"
-
-#: html/Approvals/index.html:75
-#. ($ticket->Id)
-msgid "Approval #%1: Notes not recorded due to a system error"
-msgstr "簽核單 #%1:系統錯誤,記錄失敗"
-
-#: html/Approvals/index.html:73
-#. ($ticket->Id)
-msgid "Approval #%1: Notes recorded"
-msgstr "簽核單 #%1:記錄完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Details"
-msgstr "簽核細節"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Due"
-msgstr "簽核時é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Notes"
-msgstr "簽核æ„見"
-
-#: etc/initialdata:351
-msgid "Approval Passed"
-msgstr "完æˆæŸé …簽核"
-
-#: etc/initialdata:374
-msgid "Approval Rejected"
-msgstr "é§å›žæŸé …簽核"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Result"
-msgstr "簽核çµæžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Status"
-msgstr "核准çµæžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval Type"
-msgstr "簽核種類"
-
-#: NOT FOUND IN SOURCE
-msgid "Approval diagram"
-msgstr "簽核æµç¨‹"
-
-#: html/Approvals/Elements/Approve:65
-msgid "Approve"
-msgstr "核准"
-
-#: NOT FOUND IN SOURCE
-msgid "Approver"
-msgstr "簽核人"
-
-#: NOT FOUND IN SOURCE
-msgid "Approver Setting"
-msgstr "執行簽核人設定"
-
-#: etc/initialdata:504
-msgid "Approver's notes: %1"
-msgstr "簽核備註:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Apr"
-msgstr "四月"
-
-#: lib/RT/Date.pm:440
-msgid "Apr."
-msgstr "04"
-
-#: NOT FOUND IN SOURCE
-msgid "April"
-msgstr "四月"
-
-#: NOT FOUND IN SOURCE
-msgid "Are you sure to delete checked items?"
-msgstr "您確定è¦åˆªé™¤ï¼Ÿ"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:73
-msgid "Ascending"
-msgstr "éžå¢ž"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "Assign and remove custom fields"
-msgstr "指派åŠç§»é™¤è‡ªè¨‚欄ä½"
-
-#: lib/RT/Queue_Overlay.pm:97
-msgid "AssignCustomFields"
-msgstr "指派自訂欄ä½"
-
-#: html/Search/Bulk.html:164 html/SelfService/Update.html:87 html/Ticket/ModifyAll.html:115 html/Ticket/Update.html:114
-msgid "Attach"
-msgstr "附件"
-
-#: html/SelfService/Create.html:92 html/Ticket/Create.html:140
-msgid "Attach file"
-msgstr "附加檔案"
-
-#: html/SelfService/Update.html:75 html/Ticket/Create.html:128 html/Ticket/Update.html:92
-msgid "Attached file"
-msgstr "ç¾æœ‰é™„件"
-
-#: html/Ticket/ShowEmailRecord.html:52 html/Ticket/ShowEmailRecord.html:56 html/Ticket/ShowEmailRecord.html:59
-#. ($Attachment)
-msgid "Attachment '%1' could not be loaded"
-msgstr "無法載入附件 '%1'"
-
-#: lib/RT/Transaction_Overlay.pm:478
-msgid "Attachment created"
-msgstr "附件新增完畢"
-
-#: lib/RT/Tickets_Overlay.pm:1673
-msgid "Attachment filename"
-msgstr "附件檔å"
-
-#: html/Ticket/Elements/ShowAttachments:47
-msgid "Attachments"
-msgstr "附件"
-
-#: lib/RT/Attributes_Overlay.pm:172
-msgid "Attribute Deleted"
-msgstr "已刪除該屬性"
-
-#: NOT FOUND IN SOURCE
-msgid "Attributes"
-msgstr "屬性"
-
-#: NOT FOUND IN SOURCE
-msgid "Aug"
-msgstr "八月"
-
-#: lib/RT/Date.pm:444
-msgid "Aug."
-msgstr "08"
-
-#: NOT FOUND IN SOURCE
-msgid "August"
-msgstr "八月"
-
-#: NOT FOUND IN SOURCE
-msgid "AuthSystem"
-msgstr "èªè­‰æ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoReject"
-msgstr "自動é§å›žè¡¨å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoResolve"
-msgstr "自動完æˆè¡¨å–®è™•ç†"
-
-#: etc/initialdata:221
-msgid "Autoreply"
-msgstr "自動回覆"
-
-#: etc/initialdata:72
-msgid "Autoreply To Requestors"
-msgstr "自動å°ç”³è«‹äººå›žè¦†"
-
-#: NOT FOUND IN SOURCE
-msgid "AutoreplyToRequestors"
-msgstr "自動å°ç”³è«‹äººå›žè¦†"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Columns"
-msgstr "å¯ç”¨çš„欄ä½ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Available Rights:"
-msgstr "權é™é …目列表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Back to Homepage"
-msgstr "回到首é "
-
-#: NOT FOUND IN SOURCE
-msgid "Back to Previous"
-msgstr "回上é "
-
-#: NOT FOUND IN SOURCE
-msgid "Bad PGP Signature: %1\\n"
-msgstr "錯誤的 PGP 簽章:%1\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad attachment id. Couldn't find attachment '%1'\\n"
-msgstr "錯誤的附件編號。無法找到附件 '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad data in %1"
-msgstr "%1 的資料錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "Bad transaction number for attachment. %1 should be %2\\n"
-msgstr "附件的處ç†è™Ÿç¢¼éŒ¯èª¤ã€‚%1 應為 %2\\n"
-
-#: html/Admin/Elements/CustomFieldTabs:65 html/Admin/Elements/GroupTabs:60 html/Admin/Elements/QueueTabs:60 html/Admin/Elements/UserTabs:58 html/Ticket/Elements/Tabs:113 html/User/Elements/GroupTabs:59
-msgid "Basics"
-msgstr "基本資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Batch Approval"
-msgstr "批次簽核"
-
-#: html/Ticket/Update.html:86
-msgid "Bcc"
-msgstr "密件副本"
-
-#: html/Admin/CustomFields/GroupRights.html:91 html/Admin/CustomFields/UserRights.html:74 html/Admin/Elements/EditScrip:95
-msgid "Be sure to save your changes"
-msgstr "請別忘了儲存修改。"
-
-#: html/Elements/SelectDateRelation:55 lib/RT/CurrentUser.pm:360
-msgid "Before"
-msgstr "æ—©æ–¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin Approval"
-msgstr "開始簽核"
-
-#: NOT FOUND IN SOURCE
-msgid "Begin From "
-msgstr "起始日"
-
-#: html/Elements/Header:80
-msgid "Best Practical Solutions, LLC corporate logo"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Binary"
-msgstr "檔案"
-
-#: NOT FOUND IN SOURCE
-msgid "Birthday"
-msgstr "生日"
-
-#: etc/initialdata:217
-msgid "Blank"
-msgstr "空白範本"
-
-#: html/Search/Elements/EditFormat:84
-msgid "Bold"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Bookmarkable URL for this search"
-msgstr "將查詢çµæžœè½‰ç‚ºå¯æ”¾å…¥æ›¸ç±¤çš„網å€"
-
-#: html/Search/Results.html:81
-msgid "Bookmarkable link"
-msgstr "å¯æ”¾å…¥æ›¸ç±¤çš„網å€"
-
-#: html/Ticket/Elements/ShowHistory:60 html/Ticket/Elements/ShowHistory:66
-msgid "Brief headers"
-msgstr "精簡標頭檔"
-
-#: html/Search/Bulk.html:46 html/Search/Bulk.html:47
-msgid "Bulk ticket update"
-msgstr "更新整批申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Business Unit"
-msgstr "事業部"
-
-#: NOT FOUND IN SOURCE
-msgid "Business Unit:"
-msgstr "事業部:"
-
-#: lib/RT/User_Overlay.pm:1722
-msgid "Can not modify system users"
-msgstr "無法更改系統使用者"
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "Can this principal see this queue"
-msgstr "該單ä½æ˜¯å¦èƒ½æŸ¥é–±æ­¤è¡¨å–®"
-
-#: lib/RT/CustomField_Overlay.pm:370
-msgid "Can't add a custom field value without a name"
-msgstr "ä¸èƒ½æ–°å¢žæ²’有å稱的自訂欄ä½å€¼"
-
-#: html/Admin/CustomFields/Objects.html:86
-#. ($Class)
-msgid "Can't find a collection class for '%1'"
-msgstr ""
-
-#: html/Search/Build.html:761
-msgid "Can't find a saved search to work with"
-msgstr "找ä¸åˆ°å·²å„²å­˜çš„查詢"
-
-#: lib/RT/Link_Overlay.pm:160
-msgid "Can't link a ticket to itself"
-msgstr "申請單ä¸èƒ½éˆçµè‡ªå·±ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Can't merge into a merged ticket. You should never get this error"
-msgstr "ä¸èƒ½æ•´åˆé€²å·²æ•´åˆéŽçš„申請單。這個錯誤ä¸è©²ç™¼ç”Ÿã€‚"
-
-#: html/Search/Build.html:766
-msgid "Can't save this search"
-msgstr "無法儲存此項查詢"
-
-#: lib/RT/Record.pm:1266 lib/RT/Record.pm:1344
-msgid "Can't specifiy both base and target"
-msgstr "ä¸èƒ½åŒæ™‚指定起始申請單與目的申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Cancel"
-msgstr "å–消"
-
-#: html/autohandler:148
-#. ($msg)
-msgid "Cannot create user: %1"
-msgstr "無法新增使用者:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Cannot login: Your system clock differs from server's by %1 seconds!"
-msgstr "您的系統時é˜å’Œä¼ºæœå™¨ç›¸å·® %1 秒,無法登入ï¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Card No."
-msgstr "å¡è™Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Categories"
-msgstr "分類管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Category"
-msgstr "分類"
-
-#: etc/initialdata:50 html/Admin/Queues/People.html:65 html/SelfService/Create.html:71 html/Ticket/Create.html:85 html/Ticket/Elements/EditPeople:72 html/Ticket/Elements/ShowPeople:56 html/Ticket/Update.html:81 lib/RT/ACE_Overlay.pm:113
-msgid "Cc"
-msgstr "副本"
-
-#: NOT FOUND IN SOURCE
-msgid "Cc Type"
-msgstr "副本類別"
-
-#: NOT FOUND IN SOURCE
-msgid "Chairperson's Office"
-msgstr "董事長室"
-
-#: NOT FOUND IN SOURCE
-msgid "Change Ticket"
-msgstr "修改申請單"
-
-#: html/SelfService/Prefs.html:52
-msgid "Change password"
-msgstr "更改密碼"
-
-#: NOT FOUND IN SOURCE
-msgid "ChangeOwnerUI"
-msgstr "å¯å¦é¸æ“‡è¡¨å–®æ‰¿è¾¦äºº"
-
-#: html/Elements/Submit:100
-msgid "Check All"
-msgstr "全部é¸å–"
-
-#: html/SelfService/Update.html:78 html/Ticket/Create.html:131 html/Ticket/Update.html:95
-msgid "Check box to delete"
-msgstr "é¸æ“‡æ¬²åˆªé™¤çš„é …ç›®"
-
-#: html/Admin/Elements/SelectRights:55
-msgid "Check box to revoke right"
-msgstr "é¸æ“‡æ¬²æ’¤æ¶ˆçš„權利"
-
-#: html/Elements/EditLinks:146 html/Elements/EditLinks:85 html/Elements/ShowLinks:78 html/Ticket/Create.html:214 html/Ticket/Elements/BulkLinks:64
-msgid "Children"
-msgstr "å­ç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Chinese Name"
-msgstr "中文姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "Chinese/English"
-msgstr "中英文"
-
-#: html/Admin/Users/Modify.html:156 html/User/Prefs.html:141
-msgid "City"
-msgstr "所在城市"
-
-#: NOT FOUND IN SOURCE
-msgid "ClassicUI"
-msgstr "傳統介é¢"
-
-#: html/Elements/Submit:102
-msgid "Clear All"
-msgstr "全部清除"
-
-#: html/Ticket/Elements/ShowDates:68
-msgid "Closed"
-msgstr "已解決"
-
-#: NOT FOUND IN SOURCE
-msgid "Closed Tickets"
-msgstr "已解決的申請單"
-
-#: html/SelfService/Closed.html:46 html/SelfService/Elements/Tabs:66
-msgid "Closed tickets"
-msgstr "已解決的申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Code"
-msgstr "執行程å¼ç¢¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Command not understood!\\n"
-msgstr "指令無法辨識ï¼\\n"
-
-#: html/Ticket/Elements/ShowTransaction:182 html/Ticket/Elements/Tabs:176
-msgid "Comment"
-msgstr "è©•è«–"
-
-#: html/Admin/Queues/Modify.html:79
-msgid "Comment Address"
-msgstr "è©•è«–é›»å­éƒµä»¶åœ°å€"
-
-#: NOT FOUND IN SOURCE
-msgid "Comment not recorded"
-msgstr "評論未被紀錄"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "Comment on tickets"
-msgstr "å°ç”³è«‹å–®æ出評論"
-
-#: lib/RT/Queue_Overlay.pm:112
-msgid "CommentOnTicket"
-msgstr "評論申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments"
-msgstr "è©•è«–"
-
-#: html/Ticket/ModifyAll.html:91 html/Ticket/Update.html:73
-msgid "Comments (Not sent to requestors)"
-msgstr "è©•è«–(ä¸é€çµ¦ç”³è«‹äºº)"
-
-#: html/Search/Bulk.html:150
-msgid "Comments (not sent to requestors)"
-msgstr "è©•è«–(ä¸é€çµ¦ç”³è«‹äºº)"
-
-#: NOT FOUND IN SOURCE
-msgid "Comments about %1"
-msgstr "å° %1 çš„è©•è«–"
-
-#: html/Admin/Users/Modify.html:224 html/Ticket/Elements/ShowRequestor:67
-msgid "Comments about this user"
-msgstr "使用者æè¿°"
-
-#: lib/RT/Transaction_Overlay.pm:623
-msgid "Comments added"
-msgstr "新增評論完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Commit"
-msgstr "確èª"
-
-#: lib/RT/Action/Generic.pm:176
-msgid "Commit Stubbed"
-msgstr "消除更動完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Company Name"
-msgstr "å…¬å¸å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "CompanySpecific"
-msgstr "å„å…¬å¸ç¨ç«‹é¡¯ç¤º"
-
-#: NOT FOUND IN SOURCE
-msgid "Compile Restrictions"
-msgstr "設定查詢æ¢ä»¶"
-
-#: html/Admin/Elements/EditScrip:63
-msgid "Condition"
-msgstr "æ¢ä»¶"
-
-#: bin/rt-crontool:131
-msgid "Condition matches..."
-msgstr "符åˆæ¢ä»¶..."
-
-#: lib/RT/Scrip_Overlay.pm:189
-msgid "Condition not found"
-msgstr "未找到符åˆçš„ç¾æ³"
-
-#: html/Elements/Tabs:81
-msgid "Configuration"
-msgstr "設定"
-
-#: html/SelfService/Prefs.html:54
-msgid "Confirm"
-msgstr "確èªå¯†ç¢¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Confirm Password"
-msgstr "密碼確èª"
-
-#: NOT FOUND IN SOURCE
-msgid "Confirm Submit"
-msgstr "確定é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "Contact System Administrator"
-msgstr "連絡系統管ç†å“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "ContactInfoSystem"
-msgstr "連絡資訊系統"
-
-#: NOT FOUND IN SOURCE
-msgid "Contacted date '%1' could not be parsed"
-msgstr "無法解讀è¯çµ¡æ—¥æœŸ '%1'"
-
-#: html/Admin/Elements/ModifyTemplate:65 html/Elements/SelectAttachmentField:48 html/Ticket/ModifyAll.html:119
-msgid "Content"
-msgstr "內容"
-
-#: html/Elements/SelectAttachmentField:49
-msgid "Content-Type"
-msgstr "內容類型"
-
-#: NOT FOUND IN SOURCE
-msgid "Coould not create group"
-msgstr "無法新增群組"
-
-#: html/Search/Elements/EditSearches:64
-msgid "Copy"
-msgstr "複製"
-
-#: NOT FOUND IN SOURCE
-msgid "Copy Field From:"
-msgstr "欲複製欄ä½ï¼š"
-
-#: etc/initialdata:286
-msgid "Correspondence"
-msgstr "回覆"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence Address"
-msgstr "申請單回覆地å€"
-
-#: lib/RT/Transaction_Overlay.pm:619
-msgid "Correspondence added"
-msgstr "新增申請單回覆"
-
-#: NOT FOUND IN SOURCE
-msgid "Correspondence not recorded"
-msgstr "未紀錄申請單回覆"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. "
-msgstr "ä¸èƒ½æ–°å¢žè‡ªè¨‚欄ä½çš„值 "
-
-#: NOT FOUND IN SOURCE
-msgid "Could not add new custom field value for ticket. %1 "
-msgstr "ä¸èƒ½æ–°å¢žè‡ªè¨‚欄ä½çš„值。%1 "
-
-#: lib/RT/Record.pm:1693
-msgid "Could not add new custom field value. "
-msgstr ""
-
-#: lib/RT/Record.pm:1646
-#. (, $value_msg)
-msgid "Could not add new custom field value. %1 "
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:3004 lib/RT/Ticket_Overlay.pm:3012 lib/RT/Ticket_Overlay.pm:3029
-msgid "Could not change owner. "
-msgstr "ä¸èƒ½æ›´æ”¹æ‰¿è¾¦äººã€‚ "
-
-#: html/Admin/CustomFields/Modify.html:119
-#. ($msg)
-msgid "Could not create CustomField"
-msgstr "無法新增自訂欄ä½"
-
-#: html/Admin/Elements/EditCustomField:113
-#. ($msg)
-msgid "Could not create CustomField: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create Scrip"
-msgstr "無法建立訊æ¯é€šçŸ¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create Template"
-msgstr "無法建立通知範本"
-
-#: html/User/Groups/Modify.html:98 lib/RT/Group_Overlay.pm:502 lib/RT/Group_Overlay.pm:509
-msgid "Could not create group"
-msgstr "無法新增群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create item"
-msgstr "無法新增項目"
-
-#: html/Admin/Global/Template.html:96 html/Admin/Queues/Template.html:93
-#. ($msg)
-msgid "Could not create template: %1"
-msgstr "無法新增範本:%1"
-
-#: lib/RT/Ticket_Overlay.pm:1051 lib/RT/Ticket_Overlay.pm:396
-msgid "Could not create ticket. Queue not set"
-msgstr "無法新增申請單。尚未指定表單。"
-
-#: lib/RT/User_Overlay.pm:256 lib/RT/User_Overlay.pm:270 lib/RT/User_Overlay.pm:279 lib/RT/User_Overlay.pm:288 lib/RT/User_Overlay.pm:297 lib/RT/User_Overlay.pm:311 lib/RT/User_Overlay.pm:321 lib/RT/User_Overlay.pm:497
-msgid "Could not create user"
-msgstr "無法新增使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create watcher for requestor"
-msgstr "無法為申請人新增視察員"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not create workflow: %1"
-msgstr "無法新增æµç¨‹ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find a ticket with id %1"
-msgstr "找ä¸åˆ°ç·¨è™Ÿ %1 的申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find group %1."
-msgstr "找ä¸åˆ°ç¾¤çµ„ %1。"
-
-#: lib/RT/Queue_Overlay.pm:738 lib/RT/Ticket_Overlay.pm:1384
-msgid "Could not find or create that user"
-msgstr "找ä¸åˆ°æˆ–無法新增該å使用者"
-
-#: lib/RT/Queue_Overlay.pm:799 lib/RT/Ticket_Overlay.pm:1465
-msgid "Could not find that principal"
-msgstr "找ä¸åˆ°è©²å–®ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not find user %1."
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… %1。"
-
-#: html/Admin/CustomFields/Objects.html:69
-msgid "Could not load CustomField %1"
-msgstr "ç„¡æ³•è¼‰å…¥æ¬„ä½ %1"
-
-#: html/Admin/Groups/Members.html:109 html/User/Groups/Members.html:111 html/User/Groups/Modify.html:103
-msgid "Could not load group"
-msgstr "無法載入群組"
-
-#: lib/RT/SavedSearch.pm:120
-#. ($privacy)
-msgid "Could not load object for %1"
-msgstr ""
-
-#: lib/RT/SavedSearch.pm:188
-msgid "Could not load search attribute"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:758
-#. ($args{'Type'})
-msgid "Could not make that principal a %1 for this queue"
-msgstr "無法將該單ä½è¨­ç‚ºæ­¤è¡¨å–®çš„ %1。"
-
-#: lib/RT/Ticket_Overlay.pm:1405
-#. ($self->loc($args{'Type'}))
-msgid "Could not make that principal a %1 for this ticket"
-msgstr "無法將該單ä½è¨­ç‚ºæ­¤ç”³è«‹å–®çš„ %1。"
-
-#: lib/RT/Queue_Overlay.pm:857
-#. ($args{'Type'})
-msgid "Could not remove that principal as a %1 for this queue"
-msgstr "ç„¡æ³•å°‡å–®ä½ %1 從表單移除。"
-
-#: NOT FOUND IN SOURCE
-msgid "Could not remove that principal as a %1 for this ticket"
-msgstr "ç„¡æ³•å°‡å–®ä½ %1 從申請單移除。"
-
-#: lib/RT/User_Overlay.pm:192
-msgid "Could not set user info"
-msgstr "無法設定使用者資訊"
-
-#: lib/RT/Group_Overlay.pm:1011
-msgid "Couldn't add member to group"
-msgstr "無法新增æˆå“¡è‡³ç¾¤çµ„"
-
-#: lib/RT/Record.pm:1705 lib/RT/Record.pm:1757
-#. ($Msg)
-msgid "Couldn't create a transaction: %1"
-msgstr "無法新增更動報告"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't figure out what to do from gpg's reply\\n"
-msgstr "無法從 gpg 回函辨識出該採å–的行動\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find group\\n"
-msgstr "找ä¸åˆ°ç¾¤çµ„\\n"
-
-#: lib/RT/Record.pm:939
-msgid "Couldn't find row"
-msgstr "找ä¸åˆ°æ­¤åˆ—資料"
-
-#: lib/RT/Group_Overlay.pm:985
-msgid "Couldn't find that principal"
-msgstr "找ä¸åˆ°è©²å–®ä½"
-
-#: lib/RT/CustomField_Overlay.pm:404
-msgid "Couldn't find that value"
-msgstr "找ä¸åˆ°è©²å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find that watcher"
-msgstr "找ä¸åˆ°è©²è¦–察員"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't find user\\n"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€…\\n"
-
-#: lib/RT/CurrentUser.pm:146
-#. ($self->Id)
-msgid "Couldn't load %1 from the users database.\\n"
-msgstr "無法從使用者資料庫載入 %1。\\n"
-
-#: html/Admin/CustomFields/UserRights.html:149
-#. ($id)
-msgid "Couldn't load Class %1"
-msgstr "無法載入類別 %1"
-
-#: html/Admin/CustomFields/GroupRights.html:107
-#. ($id)
-msgid "Couldn't load CustomField %1"
-msgstr "ç„¡æ³•è¼‰å…¥è‡ªè¨‚æ¬„ä½ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load KeywordSelects."
-msgstr "無法載入 KeywordSelects。"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load RT config file '%1' %2"
-msgstr "無法載入 RT 設定檔 '%1' %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load Scrips."
-msgstr "無法載入手續。"
-
-#: html/Admin/Groups/GroupRights.html:109 html/Admin/Groups/UserRights.html:96
-#. ($id)
-msgid "Couldn't load group %1"
-msgstr "無法載入手續 %1"
-
-#: lib/RT/Link_Overlay.pm:203 lib/RT/Link_Overlay.pm:212 lib/RT/Link_Overlay.pm:239
-msgid "Couldn't load link"
-msgstr "無法載入éˆçµã€‚"
-
-#: html/Admin/Elements/ObjectCustomFields:83 html/Admin/Queues/CustomFields.html:59 html/Admin/Users/CustomFields.html:59
-#. ($id)
-msgid "Couldn't load object %1"
-msgstr "無法載入物件 %1"
-
-#: html/Admin/Queues/People.html:142
-#. ($id)
-msgid "Couldn't load queue"
-msgstr "無法載入表單"
-
-#: html/Admin/Queues/GroupRights.html:122 html/Admin/Queues/UserRights.html:93
-#. ($id)
-msgid "Couldn't load queue %1"
-msgstr "無法載入表單 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load scrip"
-msgstr "無法載入手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load template"
-msgstr "無法載入範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Couldn't load that user (%1)"
-msgstr "無法載入該å使用者(%1)"
-
-#: html/SelfService/Display.html:156
-#. ($id)
-msgid "Couldn't load ticket '%1'"
-msgstr "無法載入申請單 '%1'"
-
-#: lib/RT/Ticket_Overlay.pm:2612
-#. ($args{'Base'})
-msgid "Couldn't resolve base '%1' into a URI."
-msgstr ""
-
-#: lib/RT/Ticket_Overlay.pm:2611
-#. ($args{'Target'})
-msgid "Couldn't resolve target '%1' into a URI."
-msgstr ""
-
-#: html/Admin/Users/Modify.html:173 html/User/Prefs.html:153
-msgid "Country"
-msgstr "國家"
-
-#: html/Admin/Elements/CreateUserCalled:47 html/Admin/Elements/EditCustomField:84 html/Admin/Elements/EditScrip:132 html/Admin/Queues/Template.html:66 html/Elements/QuickCreate:68 html/Ticket/Create.html:165 html/Ticket/Create.html:226
-msgid "Create"
-msgstr "新增"
-
-#: NOT FOUND IN SOURCE
-msgid "Create Subgroup:"
-msgstr "新增å­ç¾¤çµ„:"
-
-#: etc/initialdata:135
-msgid "Create Tickets"
-msgstr "新增申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Create User:"
-msgstr "新增æˆå“¡ï¼š"
-
-#: html/Admin/CustomFields/Modify.html:109 html/Admin/Elements/EditCustomField:96
-msgid "Create a CustomField"
-msgstr "新增自訂欄ä½"
-
-#: html/Admin/Queues/CustomField.html:69
-#. ($QueueObj->Name())
-msgid "Create a CustomField for queue %1"
-msgstr "為 %1 表單新增自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a CustomField which applies to all queues"
-msgstr "為 %1 表單新增自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new Custom Field"
-msgstr "新增自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global Scrip"
-msgstr "新增全域手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new global scrip"
-msgstr "新增全域手續"
-
-#: html/Admin/Groups/Modify.html:125 html/Admin/Groups/Modify.html:99
-msgid "Create a new group"
-msgstr "新增群組"
-
-#: html/User/Groups/Modify.html:113 html/User/Groups/Modify.html:88
-msgid "Create a new personal group"
-msgstr "新增代ç†äººç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new queue"
-msgstr "新增表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new scrip"
-msgstr "新增手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new template"
-msgstr "新增範本"
-
-#: html/Ticket/Create.html:46 html/Ticket/Create.html:49 html/Ticket/Create.html:57
-msgid "Create a new ticket"
-msgstr "新增申請單"
-
-#: html/Admin/Users/Modify.html:251 html/Admin/Users/Modify.html:306
-msgid "Create a new user"
-msgstr "新增使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a new workflow"
-msgstr "新增æµç¨‹"
-
-#: html/Admin/Queues/Modify.html:125
-msgid "Create a queue"
-msgstr "新增表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a queue called"
-msgstr "新增表單å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a request"
-msgstr "æ出申請"
-
-#: html/Admin/Queues/Scrip.html:80
-#. ($QueueObj->Name)
-msgid "Create a scrip for queue %1"
-msgstr "為 %1 表單新增手續"
-
-#: html/Admin/Global/Template.html:90 html/Admin/Queues/Template.html:86
-msgid "Create a template"
-msgstr "新增範本"
-
-#: html/SelfService/Create.html:46 html/SelfService/CreateTicketInQueue.html:46
-msgid "Create a ticket"
-msgstr "æ出申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Create a workflow"
-msgstr "新增æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1 / %2 / %3 "
-msgstr "新增失敗:%1 / %2 / %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create failed: %1/%2/%3"
-msgstr "新增失敗:%1/%2/%3"
-
-#: NOT FOUND IN SOURCE
-msgid "Create new item"
-msgstr "建立新項目"
-
-#: etc/initialdata:137
-msgid "Create new tickets based on this scrip's template"
-msgstr "ä¾æ“šæ­¤é …手續內的模版,新增申請單"
-
-#: html/SelfService/Create.html:105
-msgid "Create ticket"
-msgstr "新增申請單"
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "Create tickets in this queue"
-msgstr "在此表單中新增申請單"
-
-#: lib/RT/CustomField_Overlay.pm:101
-msgid "Create, delete and modify custom fields"
-msgstr "新增ã€åˆªé™¤åŠæ›´æ”¹è‡ªè¨‚欄ä½"
-
-#: lib/RT/Queue_Overlay.pm:93
-msgid "Create, delete and modify queues"
-msgstr "新增ã€åˆªé™¤åŠæ›´æ”¹è¡¨å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Create, delete and modify the members of any user's personal groups"
-msgstr "新增ã€åˆªé™¤åŠæ›´æ”¹ä»»ä½•ä½¿ç”¨è€…的代ç†äººç¾¤çµ„"
-
-#: lib/RT/System.pm:81
-msgid "Create, delete and modify the members of personal groups"
-msgstr "新增ã€åˆªé™¤åŠæ›´æ”¹ä»£ç†äººç¾¤çµ„"
-
-#: lib/RT/System.pm:82
-msgid "Create, delete and modify users"
-msgstr "新增ã€åˆªé™¤åŠæ›´æ”¹ä½¿ç”¨è€…"
-
-#: lib/RT/System.pm:88
-msgid "CreateSavedSearch"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:110
-msgid "CreateTicket"
-msgstr "新增申請單"
-
-#: html/Elements/SelectDateType:47 html/Ticket/Elements/ShowDates:48 lib/RT/Ticket_Overlay.pm:1145
-msgid "Created"
-msgstr "新增日"
-
-#: html/Admin/CustomFields/Modify.html:121 html/Admin/Elements/EditCustomField:117
-#. ($CustomFieldObj->Name())
-msgid "Created CustomField %1"
-msgstr "è‡ªè¨‚æ¬„ä½ %1 新增æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created template %1"
-msgstr "範本 %1 新增æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Created workflow %1"
-msgstr "æµç¨‹ %1 新增æˆåŠŸ"
-
-#: html/Search/Elements/PickBasics:102
-msgid "Creator"
-msgstr "建立者"
-
-#: NOT FOUND IN SOURCE
-msgid "Currency"
-msgstr "幣別"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Approval Info"
-msgstr "截至目å‰ç°½æ ¸è³‡è¨Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Custom Fields"
-msgstr "ç¾æœ‰è‡ªè¨‚欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Groups:"
-msgstr "ç¾æœ‰ç¾¤çµ„列表:"
-
-#: html/Elements/EditLinks:49
-msgid "Current Links"
-msgstr "ç¾æœ‰é—œä¿‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Rights:"
-msgstr "ç¾æœ‰æ¬Šé™ï¼š"
-
-#: html/Admin/Elements/EditScrips:51
-msgid "Current Scrips"
-msgstr "ç¾æœ‰æ‰‹çºŒ"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Status"
-msgstr "ç›®å‰ç‹€æ…‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Templates"
-msgstr "ç¾æœ‰ç¯„本"
-
-#: NOT FOUND IN SOURCE
-msgid "Current Watchers"
-msgstr "ç¾æœ‰è¦–察員"
-
-#: html/Admin/Groups/Members.html:60 html/User/Groups/Members.html:63
-msgid "Current members"
-msgstr "ç¾æœ‰æˆå“¡"
-
-#: html/Admin/Elements/SelectRights:51
-msgid "Current rights"
-msgstr "ç¾æœ‰æ¬Šé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Current search criteria"
-msgstr "ç¾æœ‰æŸ¥è©¢æ¢ä»¶"
-
-#: html/Admin/Queues/People.html:62 html/Ticket/Elements/EditPeople:66
-msgid "Current watchers"
-msgstr "ç¾æœ‰è¦–察員"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Field #%1"
-msgstr "è‡ªè¨‚æ¬„ä½ #%1"
-
-#: html/Admin/Elements/SystemTabs:61 html/Admin/Elements/Tabs:62 html/Admin/Global/index.html:71 html/Admin/Users/Modify.html:208 html/Admin/index.html:77 html/Ticket/Elements/ShowSummary:57
-msgid "Custom Fields"
-msgstr "自訂欄ä½"
-
-#: html/Admin/CustomFields/index.html:59
-#. ($lookup)
-msgid "Custom Fields for %1"
-msgstr "%1 的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom Fields which apply to all queues"
-msgstr "é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„自訂欄ä½"
-
-#: html/Admin/Elements/EditScrip:123
-msgid "Custom action cleanup code"
-msgstr "動作後執行程å¼"
-
-#: html/Admin/Elements/EditScrip:115
-msgid "Custom action preparation code"
-msgstr "動作å‰åŸ·è¡Œç¨‹å¼"
-
-#: html/Admin/Elements/EditScrip:107
-msgid "Custom condition"
-msgstr "自訂æ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 %2 %3"
-msgstr "è‡ªè¨‚æ¬„ä½ %1 %2 %3"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field %1 does not apply to this object"
-msgstr "è‡ªè¨‚æ¬„ä½ %1 ä¸é©ç”¨æ–¼æ­¤ç‰©ä»¶"
-
-#: lib/RT/Tickets_Overlay.pm:2147
-#. ($CF->Name)
-msgid "Custom field %1 has a value."
-msgstr "è‡ªè¨‚æ¬„ä½ %1 已有值"
-
-#: lib/RT/Tickets_Overlay.pm:2143
-#. ($CF->Name)
-msgid "Custom field %1 has no value."
-msgstr "è‡ªè¨‚æ¬„ä½ %1 沒有值"
-
-#: lib/RT/Record.pm:1579 lib/RT/Record.pm:1740
-#. ($args{'Field'})
-msgid "Custom field %1 not found"
-msgstr "找ä¸åˆ°è‡ªè¨‚æ¬„ä½ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field deleted"
-msgstr "自訂欄ä½å·²åˆªé™¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field not found"
-msgstr "找ä¸åˆ°è‡ªè¨‚欄ä½"
-
-#: lib/RT/CustomField_Overlay.pm:1041
-#. ($args{'Content'}, $self->Name)
-msgid "Custom field value %1 could not be found for custom field %2"
-msgstr "ç„¡æ³•å¾žè‡ªè¨‚æ¬„ä½ %2 中找到 %1 這個欄ä½å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Custom field value changed from %1 to %2"
-msgstr "自訂欄ä½å€¼å¾ž %1 改為 %2"
-
-#: lib/RT/CustomField_Overlay.pm:414
-msgid "Custom field value could not be deleted"
-msgstr "無法刪除自訂欄ä½å€¼"
-
-#: lib/RT/CustomField_Overlay.pm:1047
-msgid "Custom field value could not be found"
-msgstr "找ä¸åˆ°è‡ªè¨‚欄ä½å€¼"
-
-#: lib/RT/CustomField_Overlay.pm:1049 lib/RT/CustomField_Overlay.pm:412
-msgid "Custom field value deleted"
-msgstr "自訂欄ä½å€¼åˆªé™¤æˆåŠŸ"
-
-#: html/Elements/SelectGroups:51 html/Elements/SelectUsers:51 lib/RT/Transaction_Overlay.pm:627
-msgid "CustomField"
-msgstr "自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Data error"
-msgstr "資料錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "DatabaseBindRemote"
-msgstr "容許外部連線"
-
-#: NOT FOUND IN SOURCE
-msgid "DatabaseName"
-msgstr "MySQL資料庫"
-
-#: NOT FOUND IN SOURCE
-msgid "Date of Departure"
-msgstr "出發日期"
-
-#: html/SelfService/Display.html:61 html/Ticket/Create.html:191 html/Ticket/Elements/ShowSummary:76 html/Ticket/Elements/Tabs:116 html/Ticket/ModifyAll.html:65
-msgid "Dates"
-msgstr "日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Dec"
-msgstr "å二月"
-
-#: lib/RT/Date.pm:448
-msgid "Dec."
-msgstr "12"
-
-#: NOT FOUND IN SOURCE
-msgid "December"
-msgstr "å二月"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Approval"
-msgstr "é è¨­ç°½æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Autoresponse Template"
-msgstr "é è¨­è‡ªå‹•å›žæ‡‰ç¯„本"
-
-#: etc/initialdata:222
-msgid "Default Autoresponse template"
-msgstr "é è¨­è‡ªå‹•å›žæ‡‰ç¯„本"
-
-#: html/Tools/Offline.html:61
-msgid "Default Queue"
-msgstr "é è¨­è¡¨å–®"
-
-#: html/Tools/Offline.html:70
-msgid "Default Requestor"
-msgstr "é è¨­ç”³è«‹äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Default Value"
-msgstr "é è¨­å€¼"
-
-#: etc/initialdata:296
-msgid "Default admin comment template"
-msgstr "é è¨­ç®¡ç†å“¡è©•è«–範本"
-
-#: etc/initialdata:275
-msgid "Default admin correspondence template"
-msgstr "é è¨­ç®¡ç†å“¡å›žè¦†ç¯„本"
-
-#: etc/initialdata:287
-msgid "Default correspondence template"
-msgstr "é è¨­å›žè¦†ç¯„本"
-
-#: etc/initialdata:253
-msgid "Default transaction template"
-msgstr "é è¨­æ›´å‹•ç¯„本"
-
-#: NOT FOUND IN SOURCE
-msgid "Default: %1/%2 changed from %3 to %4"
-msgstr "é è¨­ï¼š%1/%2 已自 %3 改為 %4"
-
-#: NOT FOUND IN SOURCE
-msgid "DefaultApproval"
-msgstr "é è¨­ç°½æ ¸"
-
-#: html/User/Delegation.html:46 html/User/Delegation.html:49
-msgid "Delegate rights"
-msgstr "代ç†äººæ¬Šé™"
-
-#: lib/RT/System.pm:85
-msgid "Delegate specific rights which have been granted to you."
-msgstr "å°‡æ“有的權é™å§”託他人代ç†"
-
-#: lib/RT/System.pm:85
-msgid "DelegateRights"
-msgstr "設定代ç†äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Approval"
-msgstr "代ç†ç°½æ ¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Queue"
-msgstr "代ç†è¡¨å–®å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Queue:"
-msgstr "代ç†è¡¨å–®ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegated Type"
-msgstr "代ç†è¡¨å–®ç¨®é¡ž"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates"
-msgstr "代ç†äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Enabled Status"
-msgstr "代ç†å•Ÿå‹•ç‹€æ…‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Info"
-msgstr "代ç†äººè³‡è¨Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Period"
-msgstr "代ç†æœŸé–“"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Permission Setting"
-msgstr "代ç†æ¬Šé™è¨­å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Permission:"
-msgstr "代ç†æ¬Šé™ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Setting"
-msgstr "代ç†äººè¨­å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegates Status"
-msgstr "代ç†ç‹€æ…‹"
-
-#: html/User/Elements/Tabs:59
-msgid "Delegation"
-msgstr "代ç†äººæ¬Šé™"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegation Groups"
-msgstr "代ç†äººç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Delegation Rights"
-msgstr "代ç†äººæ¬Šé™"
-
-#: html/Admin/Elements/EditScrips:75 html/Search/Elements/EditFormat:103 html/Search/Elements/EditQuery:57 html/Search/Elements/EditSearches:63
-msgid "Delete"
-msgstr "刪除"
-
-#: html/Admin/Elements/EditTemplates:79
-msgid "Delete Template"
-msgstr "刪除範本"
-
-#: lib/RT/SavedSearch.pm:211
-#. ($msg)
-msgid "Delete failed: %1"
-msgstr ""
-
-#: html/Admin/Elements/EditScrips:74
-msgid "Delete selected scrips"
-msgstr "刪除指定的手續"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "Delete tickets"
-msgstr "刪除申請單"
-
-#: lib/RT/Queue_Overlay.pm:115
-msgid "DeleteTicket"
-msgstr "刪除申請單"
-
-#: lib/RT/SavedSearch.pm:209
-msgid "Deleted search"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object could break referential integrity"
-msgstr "刪除此物件å¯èƒ½ç ´å£žåƒè€ƒå®Œæ•´æ€§"
-
-#: lib/RT/Queue_Overlay.pm:391
-msgid "Deleting this object would break referential integrity"
-msgstr "刪除此物件å¯èƒ½ç ´å£žåƒè€ƒå®Œæ•´æ€§"
-
-#: lib/RT/User_Overlay.pm:513
-msgid "Deleting this object would violate referential integrity"
-msgstr "刪除此物件會é•ååƒè€ƒå®Œæ•´æ€§"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity."
-msgstr "刪除此物件會é•ååƒè€ƒå®Œæ•´æ€§"
-
-#: NOT FOUND IN SOURCE
-msgid "Deleting this object would violate referential integrity. That's bad."
-msgstr "刪除此物件會é•ååƒè€ƒå®Œæ•´æ€§"
-
-#: html/Approvals/Elements/Approve:66
-msgid "Deny"
-msgstr "é§å›ž"
-
-#: NOT FOUND IN SOURCE
-msgid "Department"
-msgstr "部門"
-
-#: NOT FOUND IN SOURCE
-msgid "Department ID"
-msgstr "部門代碼"
-
-#: NOT FOUND IN SOURCE
-msgid "Department Name"
-msgstr "部門å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Department's"
-msgstr "部門之"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Details"
-msgstr "差旅明細"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure From"
-msgstr "差旅起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Request"
-msgstr "è«‹å‡å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Departure Until"
-msgstr "差旅截止日"
-
-#: html/Elements/EditLinks:138 html/Elements/EditLinks:66 html/Elements/ShowLinks:58 html/Ticket/Create.html:212 html/Ticket/Elements/BulkLinks:56 html/Ticket/Elements/ShowDependencies:53
-msgid "Depended on by"
-msgstr "å¯æŽ¥çºŒè™•ç†çš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Dependencies: \\n"
-msgstr "附屬性:\\n"
-
-#: lib/RT/Transaction_Overlay.pm:707
-#. ($value)
-msgid "Dependency by %1 added"
-msgstr "已加入å¯æŽ¥çºŒè™•ç†çš„申請單 %1"
-
-#: lib/RT/Transaction_Overlay.pm:747
-#. ($value)
-msgid "Dependency by %1 deleted"
-msgstr "已移除å¯æŽ¥çºŒè™•ç†çš„申請單 %1"
-
-#: lib/RT/Transaction_Overlay.pm:704
-#. ($value)
-msgid "Dependency on %1 added"
-msgstr "已加入需先處ç†çš„申請單 %1"
-
-#: lib/RT/Transaction_Overlay.pm:744
-#. ($value)
-msgid "Dependency on %1 deleted"
-msgstr "已移除需先處ç†çš„申請單 %1"
-
-#: html/Elements/EditLinks:134 html/Elements/EditLinks:57 html/Elements/SelectLinkType:48 html/Elements/ShowLinks:48 html/Ticket/Create.html:211 html/Ticket/Elements/BulkLinks:52 html/Ticket/Elements/ShowDependencies:46
-msgid "Depends on"
-msgstr "需先處ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "DependsOn"
-msgstr "需先處ç†"
-
-#: html/Elements/SelectSortOrder:56 html/Search/Elements/DisplayOptions:78
-msgid "Descending"
-msgstr "éžæ¸›"
-
-#: html/SelfService/Create.html:100 html/Ticket/Create.html:149
-msgid "Describe the issue below"
-msgstr "在以下欄ä½æ述主題"
-
-#: html/Admin/CustomFields/Modify.html:61 html/Admin/Elements/AddCustomFieldValue:57 html/Admin/Elements/EditCustomField:60 html/Admin/Elements/EditCustomFieldValues:56 html/Admin/Elements/EditScrip:56 html/Admin/Elements/ModifyTemplate:57 html/Admin/Groups/Modify.html:71 html/Admin/Queues/Modify.html:69 html/Search/Elements/EditSearches:56 html/User/Groups/Modify.html:70
-msgid "Description"
-msgstr "æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Description of Responsibility"
-msgstr "經辦業務說明"
-
-#: NOT FOUND IN SOURCE
-msgid "Description:"
-msgstr "æ述:"
-
-#: NOT FOUND IN SOURCE
-msgid "Details"
-msgstr "細節"
-
-#: NOT FOUND IN SOURCE
-msgid "Direct"
-msgstr "直接"
-
-#: NOT FOUND IN SOURCE
-msgid "Disability"
-msgstr "殘障身分"
-
-#: NOT FOUND IN SOURCE
-msgid "Disability Type"
-msgstr "殘障類別"
-
-#: NOT FOUND IN SOURCE
-msgid "Disabled"
-msgstr "åœç”¨"
-
-#: html/Search/Elements/EditFormat:71 html/Ticket/Elements/Tabs:108
-msgid "Display"
-msgstr "顯示內容"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "Display Access Control List"
-msgstr "顯示權é™æŽ§åˆ¶æ¸…å–®"
-
-#: html/Search/Elements/DisplayOptions:46
-msgid "Display Columns"
-msgstr "顯示欄ä½"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "Display Scrip templates for this queue"
-msgstr "顯示此表單的範本"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "Display Scrips for this queue"
-msgstr "顯示此表單的手續"
-
-#: html/Ticket/Elements/ShowHistory:56
-msgid "Display mode"
-msgstr "顯示模å¼"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "Display saved searches for this group"
-msgstr "顯示此群組已儲存的查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Display ticket #%1"
-msgstr "顯示第%1號申請單"
-
-#: html/Elements/Footer:60
-msgid "Distributed under version 2 <a href=\"http://www.gnu.org/copyleft/gpl.html\"> of the GNU GPL.</a>"
-msgstr "ä¾ <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU 通用公共授權</a> 第二版散布。"
-
-#: lib/RT/System.pm:76
-msgid "Do anything and everything"
-msgstr "å…許一切æ“作"
-
-#: html/Search/Build.html:112
-msgid "Do the Search"
-msgstr ""
-
-#: html/Elements/Refresh:51
-msgid "Don't refresh this page."
-msgstr "ä¸æ›´æ–°æ­¤é é¢ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Don't show search results"
-msgstr "ä¸é¡¯ç¤ºæŸ¥è©¢çµæžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Done"
-msgstr "完æˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Down"
-msgstr "下一é "
-
-#: html/Ticket/Elements/ShowTransactionAttachments:82
-msgid "Download"
-msgstr "下載"
-
-#: html/Admin/Groups/index.html:61 html/Admin/Users/index.html:64
-msgid "Download as a tab-delimited file"
-msgstr "下載以 Tab 分隔的檔案"
-
-#: NOT FOUND IN SOURCE
-msgid "Dr."
-msgstr "åšå£«"
-
-#: html/Elements/SelectDateType:53 html/Ticket/Create.html:197 html/Ticket/Elements/EditDates:66 html/Ticket/Elements/ShowDates:64 lib/RT/Ticket_Overlay.pm:1149
-msgid "Due"
-msgstr "到期日"
-
-#: NOT FOUND IN SOURCE
-msgid "Due Date"
-msgstr "截止日"
-
-#: NOT FOUND IN SOURCE
-msgid "Due date '%1' could not be parsed"
-msgstr "無法解讀日期 '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "ERROR: Couldn't load ticket '%1': %2.\\n"
-msgstr "無法載入申請單 '%1':%2.\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit"
-msgstr "編輯"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Conditions"
-msgstr "編輯å‰ç½®æ¢ä»¶"
-
-#: html/Admin/Elements/ObjectCustomFields:92 html/Admin/Queues/CustomFields.html:64 html/Admin/Users/CustomFields.html:64
-#. ($Object->Name)
-msgid "Edit Custom Fields for %1"
-msgstr "編輯 %1 的自訂欄ä½"
-
-#: html/Admin/Global/CustomFields/Groups.html:9
-msgid "Edit Custom Fields for all groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/Users.html:9
-msgid "Edit Custom Fields for all users"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Custom Fields for queue %1"
-msgstr "編輯表單 %1 的自訂欄ä½"
-
-#: html/Admin/Global/CustomFields/Queue-Tickets.html:9 html/Admin/Global/CustomFields/Queue-Transactions.html:9
-msgid "Edit Custom Fields for tickets in all queues"
-msgstr ""
-
-#: html/Search/Bulk.html:173 html/Ticket/ModifyLinks.html:57
-msgid "Edit Links"
-msgstr "編輯申請單關係"
-
-#: html/Search/Edit.html:68
-msgid "Edit Query"
-msgstr "編輯查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Subgroups"
-msgstr "新增/維護å­ç¾¤çµ„"
-
-#: html/Admin/Queues/Templates.html:63
-#. ($QueueObj->Name)
-msgid "Edit Templates for queue %1"
-msgstr "編輯表單 %1 的範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit Workflows for queue %1"
-msgstr "編輯表單 %1 çš„æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit keywords"
-msgstr "編輯關éµå­—"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "Edit saved searches for this group"
-msgstr "編輯此群組已儲存的查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit scrips"
-msgstr "編輯手續"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:60 html/Admin/Global/index.html:67
-msgid "Edit system templates"
-msgstr "編輯全域範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit system workflows"
-msgstr "編輯全域æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit templates for %1"
-msgstr "編輯 %1 的範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Edit workflows for %1"
-msgstr "編輯 %1 çš„æµç¨‹"
-
-#: lib/RT/Group_Overlay.pm:175
-msgid "EditSavedSearches"
-msgstr "編輯已儲存的查詢"
-
-#: html/Admin/Queues/Modify.html:140
-#. ($QueueObj->Name)
-msgid "Editing Configuration for queue %1"
-msgstr "編輯表單 %1 的設定"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing Configuration for user %1"
-msgstr "編輯使用者 %1 的設定"
-
-#: html/Admin/CustomFields/Modify.html:125 html/Admin/Elements/EditCustomField:120
-#. ($CustomFieldObj->Name())
-msgid "Editing CustomField %1"
-msgstr "ç·¨è¼¯è‡ªè¨‚æ¬„ä½ %1"
-
-#: html/Admin/Groups/Members.html:53
-#. ($Group->Name)
-msgid "Editing membership for group %1"
-msgstr "編輯群組 %1 çš„æˆå“¡è³‡è¨Š"
-
-#: html/User/Groups/Members.html:150
-#. ($Group->Name)
-msgid "Editing membership for personal group %1"
-msgstr "編輯代ç†äººç¾¤çµ„ %1 çš„æˆå“¡è³‡è¨Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing template %1"
-msgstr "編輯範本 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Editing workflow %1"
-msgstr "編輯æµç¨‹ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Education"
-msgstr "最高學歷"
-
-#: NOT FOUND IN SOURCE
-msgid "EffectiveId"
-msgstr "有效編號"
-
-#: lib/RT/Record.pm:1281 lib/RT/Record.pm:1358
-msgid "Either base or target must be specified"
-msgstr "需è¦æŒ‡å®šèµ·å§‹ç”³è«‹å–®æˆ–目的申請單"
-
-#: html/Admin/Users/Modify.html:74 html/Ticket/Elements/AddWatchers:77 html/User/Prefs.html:65
-msgid "Email"
-msgstr "é›»å­éƒµä»¶ä¿¡ç®±"
-
-#: NOT FOUND IN SOURCE
-msgid "Email Address"
-msgstr "é›»å­éƒµä»¶ä¿¡ç®±"
-
-#: lib/RT/User_Overlay.pm:236
-msgid "Email address in use"
-msgstr "此電å­éƒµä»¶ä¿¡ç®±å·²è¢«ä½¿ç”¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailAddress"
-msgstr "é›»å­éƒµä»¶ä¿¡ç®±ä½å€"
-
-#: NOT FOUND IN SOURCE
-msgid "EmailEncoding"
-msgstr "é›»å­éƒµä»¶æ–‡å­—編碼方å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Embark Date"
-msgstr "外ç±å“¡å·¥å…¥å¢ƒæ—¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Embarked Date"
-msgstr "抵é”日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Embarked Location"
-msgstr "抵é”地點"
-
-#: NOT FOUND IN SOURCE
-msgid "Enable Delegates"
-msgstr "代ç†å•Ÿå‹•"
-
-#: html/Admin/CustomFields/Modify.html:83 html/Admin/Elements/EditCustomField:72
-msgid "Enabled (Unchecking this box disables this custom field)"
-msgstr "啟用(å–消勾é¸å°‡åœç”¨æ­¤è‡ªè¨‚欄ä½)"
-
-#: html/Admin/Groups/Modify.html:84 html/User/Groups/Modify.html:74
-msgid "Enabled (Unchecking this box disables this group)"
-msgstr "啟用(å–消勾é¸å°‡åœç”¨æ­¤ç¾¤çµ„)"
-
-#: html/Admin/Queues/Modify.html:105
-msgid "Enabled (Unchecking this box disables this queue)"
-msgstr "啟用(å–消勾é¸å°‡åœç”¨æ­¤è¡¨å–®)"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Custom Fields"
-msgstr "已啟用的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Date"
-msgstr "啟用日期"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Date:"
-msgstr "啟動日期:"
-
-#: html/Admin/Queues/index.html:78
-msgid "Enabled Queues"
-msgstr "已啟用的表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Enabled Status"
-msgstr "啟用狀態"
-
-#: html/Admin/Elements/EditCustomField:136 html/Admin/Groups/Modify.html:150 html/Admin/Users/Modify.html:342 html/User/Groups/Modify.html:138
-#. (loc_fuzzy($msg))
-msgid "Enabled status %1"
-msgstr "啟用狀態 %1"
-
-#: html/Admin/CustomFields/Modify.html:143 html/Admin/Queues/Modify.html:162
-#. (loc_fuzzy($msg))
-msgid "Enabled status: %1"
-msgstr "啟用狀態: %1"
-
-#: NOT FOUND IN SOURCE
-msgid "End of Trial"
-msgstr "試用期滿日"
-
-#: NOT FOUND IN SOURCE
-msgid "English Name"
-msgstr "英文姓å"
-
-#: lib/RT/CustomField_Overlay.pm:64
-msgid "Enter multiple values"
-msgstr "éµå…¥å¤šé‡é …ç›®"
-
-#: html/Elements/EditLinks:124
-msgid "Enter objects or URIs to link objects to. Separate multiple entries with spaces."
-msgstr "éµå…¥æ¬²å°‡ç‰©ä»¶é€£çµè‡³çš„物件或 URI。項目之間請以空白隔開。"
-
-#: NOT FOUND IN SOURCE
-msgid "Enter one or more conditions below to search for users"
-msgstr "éµå…¥ä¸‹åˆ—單一或複å¼æ¢ä»¶ï¼ŒæŸ¥è©¢ç”¨æˆ¶è³‡æ–™"
-
-#: lib/RT/CustomField_Overlay.pm:65
-msgid "Enter one value"
-msgstr "éµå…¥å–®ä¸€é …ç›®"
-
-#: html/Elements/EditLinks:121
-msgid "Enter queues or URIs to link queues to. Separate multiple entries with spaces."
-msgstr "éµå…¥æ¬²å°‡è¡¨å–®é€£çµè‡³çš„物件或 URI。項目之間請以空白隔開。"
-
-#: html/Elements/EditLinks:117 html/Search/Bulk.html:174
-msgid "Enter tickets or URIs to link tickets to. Separate multiple entries with spaces."
-msgstr "éµå…¥ç”³è«‹å–®å¯éˆçµåˆ°çš„申請單編號或網å€ã€‚項目之間請以空白隔開。"
-
-#: lib/RT/CustomField_Overlay.pm:66
-msgid "Enter up to %1 values"
-msgstr "éµå…¥æœ€å¤š %1 個值"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryBoolean"
-msgstr "是éžå¡«è¡¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryDate"
-msgstr "日期填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryExternal"
-msgstr "系統填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryFreeform"
-msgstr "輸入填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryMultiple"
-msgstr "多é¸å¡«è¡¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryNumber"
-msgstr "數值填表"
-
-#: NOT FOUND IN SOURCE
-msgid "EntrySelect"
-msgstr "å–®é¸å¡«è¡¨"
-
-#: NOT FOUND IN SOURCE
-msgid "EntryTime"
-msgstr "時間填表"
-
-#: html/Elements/Login:61 html/SelfService/Error.html:46 html/SelfService/Error.html:47
-msgid "Error"
-msgstr "錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "Error adding watcher"
-msgstr "新增視察員失敗"
-
-#: lib/RT/Queue_Overlay.pm:669
-msgid "Error in parameters to Queue->AddWatcher"
-msgstr "表單->新增視察員的åƒæ•¸æœ‰èª¤"
-
-#: lib/RT/Queue_Overlay.pm:830
-msgid "Error in parameters to Queue->DeleteWatcher"
-msgstr "表單->刪除視察員的åƒæ•¸æœ‰èª¤"
-
-#: lib/RT/Ticket_Overlay.pm:1333
-msgid "Error in parameters to Ticket->AddWatcher"
-msgstr "申請單->新增視察員的åƒæ•¸æœ‰èª¤"
-
-#: lib/RT/Ticket_Overlay.pm:1499
-msgid "Error in parameters to Ticket->DeleteWatcher"
-msgstr "申請單->刪除視察員的åƒæ•¸æœ‰èª¤"
-
-#: bin/rt-crontool:233
-msgid "Escalate tickets"
-msgstr "調整申請單優先等級"
-
-#: NOT FOUND IN SOURCE
-msgid "Estimate"
-msgstr "é è¨ˆ"
-
-#: html/Ticket/Elements/ShowBasics:57
-msgid "Estimated"
-msgstr "é è¨ˆ"
-
-#: etc/initialdata:20
-msgid "Everyone"
-msgstr "所有人"
-
-#: bin/rt-crontool:219
-msgid "Example:"
-msgstr "範例:"
-
-#: NOT FOUND IN SOURCE
-msgid "Existing user renamed from %1 to %2"
-msgstr "ç¾æœ‰ä½¿ç”¨è€… %1 已改å為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Export"
-msgstr "匯出"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalAuthId"
-msgstr "外部èªè­‰å¸³è™Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalContactInfoId"
-msgstr "外部è¯çµ¡æ–¹å¼å¸³è™Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabaseDSN"
-msgstr "外部資料庫連çµå­—串"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabasePass"
-msgstr "外部資料庫密碼"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalDatabaseUser"
-msgstr "外部資料庫用戶"
-
-#: NOT FOUND IN SOURCE
-msgid "ExternalURL"
-msgstr "外部介é¢ç¶²å€"
-
-#: html/Admin/Users/Modify.html:99
-msgid "Extra info"
-msgstr "備註"
-
-#: lib/RT/SavedSearch.pm:165
-msgid "Failed to create search attribute"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:377
-msgid "Failed to find 'Privileged' users pseudogroup."
-msgstr "找ä¸åˆ°ã€Œå…§éƒ¨æˆå“¡ã€è™›æ“¬ç¾¤çµ„的使用者。"
-
-#: lib/RT/User_Overlay.pm:384
-msgid "Failed to find 'Unprivileged' users pseudogroup"
-msgstr "找ä¸åˆ°ã€Œéžå…§éƒ¨æˆå“¡ã€è™›æ“¬ç¾¤çµ„的使用者。"
-
-#: bin/rt-crontool:163
-#. ($modname, $@)
-msgid "Failed to load module %1. (%2)"
-msgstr "無法載入模組 %1. (%2)"
-
-#: lib/RT/SavedSearch.pm:168
-#. ($privacy)
-msgid "Failed to load object for %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Feb"
-msgstr "二月"
-
-#: lib/RT/Date.pm:438
-msgid "Feb."
-msgstr "02"
-
-#: NOT FOUND IN SOURCE
-msgid "February"
-msgstr "二月"
-
-#: NOT FOUND IN SOURCE
-msgid "Female"
-msgstr "女"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Content:"
-msgstr "欄ä½å…§å®¹ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Description"
-msgstr "欄ä½æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Name"
-msgstr "欄ä½å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Field Type"
-msgstr "欄ä½é¡žåˆ¥"
-
-#: html/Elements/SelectAttachmentField:50
-msgid "Filename"
-msgstr "檔å"
-
-#: lib/RT/CustomField_Overlay.pm:69
-msgid "Fill in multiple text areas"
-msgstr "填入多個文字框"
-
-#: lib/RT/CustomField_Overlay.pm:74
-msgid "Fill in multiple wikitext areas"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:70
-msgid "Fill in one text area"
-msgstr "填入一個文字框"
-
-#: lib/RT/CustomField_Overlay.pm:75
-msgid "Fill in one wikitext area"
-msgstr ""
-
-#: lib/RT/CustomField_Overlay.pm:71
-msgid "Fill in up to %1 text areas"
-msgstr "填入最多 %1 個文字框"
-
-#: lib/RT/CustomField_Overlay.pm:76
-msgid "Fill in up to %1 wikitext areas"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Filter"
-msgstr "篩é¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Filter people"
-msgstr "å°è±¡ç¯©é¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Filtered list:"
-msgstr "篩é¸åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Fin"
-msgstr "最終"
-
-#: html/Search/Elements/PickBasics:162 html/Ticket/Create.html:185 html/Ticket/Elements/EditBasics:79 lib/RT/Tickets_Overlay.pm:1569
-msgid "Final Priority"
-msgstr "最終順ä½"
-
-#: lib/RT/Ticket_Overlay.pm:1140
-msgid "FinalPriority"
-msgstr "最終順ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Financial Department:"
-msgstr "財務部:"
-
-#: NOT FOUND IN SOURCE
-msgid "Find group whose"
-msgstr "尋找群組的"
-
-#: html/Admin/Groups/index.html:72 html/Admin/Queues/People.html:82 html/Ticket/Elements/EditPeople:55
-msgid "Find groups whose"
-msgstr "尋找群組的"
-
-#: NOT FOUND IN SOURCE
-msgid "Find new/open tickets"
-msgstr "尋找/開啟申請單"
-
-#: html/Admin/Queues/People.html:78 html/Admin/Users/index.html:70 html/Ticket/Elements/EditPeople:51
-msgid "Find people whose"
-msgstr "尋找人員的"
-
-#: NOT FOUND IN SOURCE
-msgid "Find queues whose"
-msgstr "尋找表單的"
-
-#: html/Search/Results.html:109
-msgid "Find tickets"
-msgstr "尋找申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Finish Approval"
-msgstr "簽核完畢"
-
-#: html/Ticket/Elements/Tabs:81
-msgid "First"
-msgstr "第一項"
-
-#: NOT FOUND IN SOURCE
-msgid "First page"
-msgstr "第一é "
-
-#: NOT FOUND IN SOURCE
-msgid "First-"
-msgstr "一"
-
-#: NOT FOUND IN SOURCE
-msgid "First-level Admins"
-msgstr "一階主管"
-
-#: NOT FOUND IN SOURCE
-msgid "First-level Users"
-msgstr "一階主管員工"
-
-#: NOT FOUND IN SOURCE
-msgid "Fixed shift"
-msgstr "固定ç­"
-
-#: docs/design_docs/string-extraction-guide.txt:33 lib/RT/StyleGuide.pod:766
-msgid "Foo Bar Baz"
-msgstr "甲 乙 丙"
-
-#: docs/design_docs/string-extraction-guide.txt:24 lib/RT/StyleGuide.pod:757
-msgid "Foo!"
-msgstr "甲ï¼"
-
-#: html/Search/Bulk.html:105
-msgid "Force change"
-msgstr "強制更æ›"
-
-#: NOT FOUND IN SOURCE
-msgid "Form Processing"
-msgstr "é›»å­è¡¨å–®ä½œæ¥­å€"
-
-#: html/Search/Elements/EditFormat:52
-msgid "Format"
-msgstr ""
-
-#: html/Search/Results.html:107
-#. ($ticketcount)
-msgid "Found %quant(%1,ticket)"
-msgstr "找到 %1 張申請單"
-
-#: lib/RT/Record.pm:942
-msgid "Found Object"
-msgstr "已找到物件"
-
-#: NOT FOUND IN SOURCE
-msgid "Fourth-"
-msgstr "å››"
-
-#: NOT FOUND IN SOURCE
-msgid "Freeform"
-msgstr "輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformContactInfo"
-msgstr "è¯çµ¡æ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformDate"
-msgstr "日期輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformExternal"
-msgstr "系統欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformMultiple"
-msgstr "多é‡è¼¸å…¥"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformNumber"
-msgstr "數值輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformPassword"
-msgstr "密碼輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformSingle"
-msgstr "單一輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "FreeformTime"
-msgstr "時間輸入"
-
-#: NOT FOUND IN SOURCE
-msgid "Fri"
-msgstr "星期五"
-
-#: lib/RT/Date.pm:417
-msgid "Fri."
-msgstr "星期五"
-
-#: html/Ticket/Elements/ShowHistory:62 html/Ticket/Elements/ShowHistory:72
-msgid "Full headers"
-msgstr "完整標頭檔"
-
-#: NOT FOUND IN SOURCE
-msgid "Gecos"
-msgstr "登入帳號"
-
-#: NOT FOUND IN SOURCE
-msgid "Gender"
-msgstr "性別"
-
-#: html/Tools/Offline.html:87
-msgid "Get template from file"
-msgstr "å–出檔案裡的範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Getting the current user from a pgp sig\\n"
-msgstr "å–å¾—ç›®å‰ä½¿ç”¨è€…çš„ pgp 簽章\\n"
-
-#: lib/RT/Transaction_Overlay.pm:673
-#. ($New->Name)
-msgid "Given to %1"
-msgstr "交予 %1"
-
-#: html/Admin/Elements/Tabs:65 html/Admin/index.html:82
-msgid "Global"
-msgstr "全域設定"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Approval"
-msgstr "全域簽核"
-
-#: html/Admin/Elements/EditCustomFields:55
-msgid "Global Custom Fields"
-msgstr "全域自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Keyword Selections"
-msgstr "全域關éµå­—é¸å–"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Rights:"
-msgstr "æ“有全域權é™åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Scrips"
-msgstr "全域手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Global Setup"
-msgstr "全域設定"
-
-#: html/Admin/Global/CustomFields/index.html:59
-msgid "Global custom field configuration"
-msgstr ""
-
-#: html/Admin/Elements/SelectTemplate:59
-#. (loc($Template->Name))
-msgid "Global template: %1"
-msgstr "全域範本:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "GlobalApproval"
-msgstr "全域簽核"
-
-#: html/Tools/Offline.html:91
-msgid "Go"
-msgstr "執行"
-
-#: html/Admin/Groups/index.html:67 html/Admin/Groups/index.html:73 html/Admin/Queues/People.html:80 html/Admin/Queues/People.html:84 html/Admin/Queues/index.html:66 html/Admin/Users/index.html:73 html/Search/Results.html:76 html/Ticket/Elements/EditPeople:53 html/Ticket/Elements/EditPeople:57 html/index.html:91
-msgid "Go!"
-msgstr "執行"
-
-#: NOT FOUND IN SOURCE
-msgid "Good pgp sig from %1\\n"
-msgstr "%1 的 pgp 簽章是正確的\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Goto page"
-msgstr "到é é¢"
-
-#: html/Elements/GotoTicket:46 html/SelfService/Elements/GotoTicket:46
-msgid "Goto ticket"
-msgstr "跳到申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Grand"
-msgstr "上"
-
-#: html/Ticket/Elements/AddWatchers:67 html/Ticket/Elements/ShowGroupMembers:55 html/User/Elements/DelegateRights:99
-msgid "Group"
-msgstr "群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Group %1 %2: %3"
-msgstr "群組 %1 %2:%3"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Admin"
-msgstr "群組管ç†å“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Description"
-msgstr "群組æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Management"
-msgstr "群組管ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Members"
-msgstr "群組æˆå“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Name"
-msgstr "群組å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Name:"
-msgstr "群組å稱:"
-
-#: html/Admin/Elements/CustomFieldTabs:68 html/Admin/Elements/GroupTabs:66 html/Admin/Elements/QueueTabs:82 html/Admin/Elements/SystemTabs:65 html/Admin/Global/index.html:76
-msgid "Group Rights"
-msgstr "群組權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Rights:"
-msgstr "æ“有群組權é™åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Setup"
-msgstr "群組設定"
-
-#: NOT FOUND IN SOURCE
-msgid "Group Status"
-msgstr "群組狀態"
-
-#: lib/RT/Group_Overlay.pm:991
-msgid "Group already has member"
-msgstr "群組內已有此æˆå“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Group could not be created."
-msgstr "無法新增群組"
-
-#: html/Admin/Groups/Modify.html:109
-#. ($create_msg)
-msgid "Group could not be created: %1"
-msgstr "無法新增群組:%1"
-
-#: lib/RT/Group_Overlay.pm:529
-msgid "Group created"
-msgstr "群組新增完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Group created: %1"
-msgstr "群組 %1 新增完畢"
-
-#: lib/RT/Group_Overlay.pm:1163
-msgid "Group has no such member"
-msgstr "群組沒有這個æˆå“¡"
-
-#: lib/RT/Group_Overlay.pm:971 lib/RT/Queue_Overlay.pm:745 lib/RT/Queue_Overlay.pm:805 lib/RT/Ticket_Overlay.pm:1391 lib/RT/Ticket_Overlay.pm:1471
-msgid "Group not found"
-msgstr "找ä¸åˆ°ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not found.\\n"
-msgstr "找ä¸åˆ°ç¾¤çµ„。\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group not specified.\\n"
-msgstr "未指定群組。\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Group redescribed from %1 to %2"
-msgstr "群組æè¿° %1 已改為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Group renamed from %1 to %2"
-msgstr "群組 %1 已改å為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Group with Queue Rights"
-msgstr "æ“有表單權é™ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Group's"
-msgstr "群組之"
-
-#: NOT FOUND IN SOURCE
-msgid "Group:"
-msgstr "群組:"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:59 html/Admin/Elements/SelectNewGroupMembers:56 html/Admin/Elements/Tabs:56 html/Admin/Global/CustomFields/index.html:69 html/Admin/Groups/Members.html:85 html/Admin/Queues/People.html:104 html/Admin/Users/Memberships.html:53 html/Admin/index.html:67 html/User/Groups/Members.html:88 lib/RT/CustomField_Overlay.pm:1088
-msgid "Groups"
-msgstr "群組"
-
-#: lib/RT/Group_Overlay.pm:997
-msgid "Groups can't be members of their members"
-msgstr "ä¸èƒ½å°‡ç¾¤çµ„設為群組內æˆå“¡"
-
-#: html/Admin/Groups/index.html:82
-msgid "Groups matching search criteria"
-msgstr "符åˆæŸ¥è©¢æ¢ä»¶çš„群組"
-
-#: html/Ticket/Elements/ShowRequestor:77
-msgid "Groups this user belongs to"
-msgstr "使用者所屬的群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Groups with Global Rights"
-msgstr "æ“有全域權é™ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "HRMSDefined"
-msgstr "組織架構"
-
-#: NOT FOUND IN SOURCE
-msgid "HTML Attributes"
-msgstr "HTML 屬性"
-
-#: NOT FOUND IN SOURCE
-msgid "Health Insurance"
-msgstr "å¥ä¿è£œåŠ©èº«ä»½"
-
-#: lib/RT/Interface/CLI.pm:94 lib/RT/Interface/CLI.pm:94
-msgid "Hello!"
-msgstr "å—¨ï¼"
-
-#: docs/design_docs/string-extraction-guide.txt:40 lib/RT/StyleGuide.pod:773
-#. ($name)
-msgid "Hello, %1"
-msgstr "嗨,%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Help"
-msgstr "說明"
-
-#: NOT FOUND IN SOURCE
-msgid "Help Desks"
-msgstr "å„項業務窗å£"
-
-#: NOT FOUND IN SOURCE
-msgid "Hidden"
-msgstr "éš±è—"
-
-#: html/Admin/Elements/GroupTabs:70 html/Admin/Elements/UserTabs:64 html/Ticket/Elements/ShowHistory:51 html/Ticket/Elements/Tabs:111
-msgid "History"
-msgstr "紀錄"
-
-#: html/Admin/Groups/History.html:62
-#. ($GroupObj->Name)
-msgid "History of the group %1"
-msgstr "群組 %1 的紀錄"
-
-#: html/Admin/Users/History.html:62
-#. ($UserObj->Name)
-msgid "History of the user %1"
-msgstr "使用者 %1 的紀錄"
-
-#: NOT FOUND IN SOURCE
-msgid "HomePhone"
-msgstr "ä½è™•é›»è©±"
-
-#: html/Elements/Tabs:65
-msgid "Homepage"
-msgstr "主é "
-
-#: NOT FOUND IN SOURCE
-msgid "Hotel Expense"
-msgstr "ä½å®¿è²»"
-
-#: lib/RT/Base.pm:110
-#. (6)
-msgid "I have %quant(%1,concrete mixer)."
-msgstr "我有 %quant(%1,份固體攪拌器)。"
-
-#: html/Search/Build.html:637
-msgid "I'm lost"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "ID Number"
-msgstr "身分證號"
-
-#: NOT FOUND IN SOURCE
-msgid "ID Type"
-msgstr "身分類別"
-
-#: html/Ticket/Elements/ShowBasics:48 lib/RT/Tickets_Overlay.pm:1494
-msgid "Id"
-msgstr "編號"
-
-#: html/Admin/Users/Modify.html:65 html/User/Prefs.html:60
-msgid "Identity"
-msgstr "身份"
-
-#: etc/initialdata:429
-msgid "If an approval is rejected, reject the original and delete pending approvals"
-msgstr "若簽核單é­åˆ°é§å›žï¼Œå‰‡é€£å¸¶é§å›žåŽŸç”³è«‹å–®ï¼Œä¸¦åˆªé™¤å…¶ä»–相關的待簽核事項"
-
-#: html/Tools/Offline.html:74
-msgid "If no Requestor is specified, create tickets with this requestor."
-msgstr "若沒有指定申請者,則以此使用者作為申請者"
-
-#: html/Tools/Offline.html:65
-msgid "If no queue is specified, create tickets in this queue."
-msgstr "申請單若沒有指定表單,則將它新增在此表單內"
-
-#: bin/rt-crontool:215
-msgid "If this tool were setgid, a hostile local user could use this tool to gain administrative access to RT."
-msgstr "如果此工具程å¼ç‚º setgid,惡æ„的本地端用戶å³èƒ½ç”±æ­¤å–å¾— RT 的管ç†å“¡æ¬Šé™ã€‚"
-
-#: html/Admin/Queues/People.html:126 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:128 html/Ticket/ModifyPeople.html:59
-msgid "If you've updated anything above, be sure to"
-msgstr "若您已更新以上資料,請記得按一下"
-
-#: lib/RT/Record.pm:933
-msgid "Illegal value for %1"
-msgstr "%1 的值錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "Image"
-msgstr "圖片"
-
-#: lib/RT/Record.pm:936
-msgid "Immutable field"
-msgstr "此欄ä½å€¼ä¸å¯æ›´å‹•"
-
-#: NOT FOUND IN SOURCE
-msgid "Import"
-msgstr "匯入"
-
-#: NOT FOUND IN SOURCE
-msgid "Include disabled custom fields in listing."
-msgstr "列出åœç”¨çš„自訂欄ä½"
-
-#: html/Admin/Groups/index.html:65
-msgid "Include disabled groups in listing."
-msgstr "列出åœç”¨çš„群組"
-
-#: html/Admin/Queues/index.html:65
-msgid "Include disabled queues in listing."
-msgstr "列出åœç”¨çš„表單"
-
-#: html/Admin/Users/index.html:71
-msgid "Include disabled users in search."
-msgstr "列出åœç”¨çš„使用者"
-
-#: html/Search/Build.html:663
-msgid "Incomplete Query"
-msgstr ""
-
-#: html/Search/Build.html:660
-msgid "Incomplete query"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Indirect Employee"
-msgstr "直接/間接員工"
-
-#: html/Search/Elements/PickBasics:161 lib/RT/Tickets_Overlay.pm:1544
-msgid "Initial Priority"
-msgstr "åˆå§‹å„ªå…ˆé †ä½"
-
-#: lib/RT/Ticket_Overlay.pm:1139 lib/RT/Ticket_Overlay.pm:1141
-msgid "InitialPriority"
-msgstr "åˆå§‹å„ªå…ˆé †ä½"
-
-#: lib/RT/ScripAction_Overlay.pm:134
-msgid "Input error"
-msgstr "輸入錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "Interest noted"
-msgstr "登記æˆåŠŸ"
-
-#: lib/RT/Ticket_Overlay.pm:3454
-msgid "Internal Error"
-msgstr "內部錯誤"
-
-#: lib/RT/Record.pm:305
-#. ($id->{error_message})
-msgid "Internal Error: %1"
-msgstr "內部錯誤:%1"
-
-#: lib/RT/Group_Overlay.pm:676
-msgid "Invalid Group Type"
-msgstr "錯誤的群組類別"
-
-#: lib/RT/Principal_Overlay.pm:161
-msgid "Invalid Right"
-msgstr "錯誤的權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid Type"
-msgstr "錯誤的類型"
-
-#: lib/RT/Record.pm:938
-msgid "Invalid data"
-msgstr "錯誤的資料"
-
-#: NOT FOUND IN SOURCE
-msgid "Invalid owner. Defaulting to 'nobody'."
-msgstr "錯誤的承辦人。改為é è¨­æ‰¿è¾¦äººã€Œnobodyã€ã€‚"
-
-#: lib/RT/Scrip_Overlay.pm:158 lib/RT/Template_Overlay.pm:276
-msgid "Invalid queue"
-msgstr "錯誤的表單"
-
-#: lib/RT/ACE_Overlay.pm:265 lib/RT/ACE_Overlay.pm:274 lib/RT/ACE_Overlay.pm:280 lib/RT/ACE_Overlay.pm:291
-msgid "Invalid right"
-msgstr "錯誤的權é™"
-
-#: lib/RT/Record.pm:280
-#. ($key)
-msgid "Invalid value for %1"
-msgstr "%1 的值錯誤"
-
-#: lib/RT/Record.pm:1597
-msgid "Invalid value for custom field"
-msgstr "錯誤的自訂欄ä½å€¼"
-
-#: lib/RT/Ticket_Overlay.pm:413
-msgid "Invalid value for status"
-msgstr "錯誤的狀態值"
-
-#: NOT FOUND IN SOURCE
-msgid "IssueStatement"
-msgstr "é€å‡ºé™³è¿°"
-
-#: bin/rt-crontool:216
-msgid "It is incredibly important that nonprivileged users not be allowed to run this tool."
-msgstr "請絕å°ä¸è¦è®“未具權é™çš„使用者執行此工具程å¼ã€‚"
-
-#: bin/rt-crontool:217
-msgid "It is suggested that you create a non-privileged unix user with the correct group membership and RT access to run this tool."
-msgstr "建議您新增一個隸屬於正確群組的低權é™ç³»çµ±ä½¿ç”¨è€…,並以該身份執行此工具程å¼ã€‚"
-
-#: bin/rt-crontool:188
-msgid "It takes several arguments:"
-msgstr "它接å—下列åƒæ•¸ï¼š"
-
-#: html/Search/Elements/EditFormat:85
-msgid "Italic"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Item Name"
-msgstr "å“å"
-
-#: NOT FOUND IN SOURCE
-msgid "Items"
-msgstr "ç­†"
-
-#: NOT FOUND IN SOURCE
-msgid "Items pending my approval"
-msgstr "待簽核項目"
-
-#: NOT FOUND IN SOURCE
-msgid "Jan"
-msgstr "一月"
-
-#: lib/RT/Date.pm:437
-msgid "Jan."
-msgstr "01"
-
-#: NOT FOUND IN SOURCE
-msgid "January"
-msgstr "一月"
-
-#: NOT FOUND IN SOURCE
-msgid "Job"
-msgstr "è·ç¨±"
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "Join or leave this group"
-msgstr "加入或離開此群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Jul"
-msgstr "七月"
-
-#: lib/RT/Date.pm:443
-msgid "Jul."
-msgstr "07"
-
-#: NOT FOUND IN SOURCE
-msgid "July"
-msgstr "七月"
-
-#: html/Ticket/Elements/Tabs:122
-msgid "Jumbo"
-msgstr "全部資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Jun"
-msgstr "六月"
-
-#: lib/RT/Date.pm:442
-msgid "Jun."
-msgstr "06"
-
-#: NOT FOUND IN SOURCE
-msgid "June"
-msgstr "六月"
-
-#: NOT FOUND IN SOURCE
-msgid "Keyword"
-msgstr "é—œéµå­—"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelAttachments"
-msgstr "附件標籤"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelContent"
-msgstr "內容標籤"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelSubject"
-msgstr "主題標籤"
-
-#: NOT FOUND IN SOURCE
-msgid "LabelURL"
-msgstr "éˆçµæ¨™ç±¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Lang"
-msgstr "使用語言"
-
-#: html/Admin/Users/Modify.html:94 html/User/Prefs.html:76
-msgid "Language"
-msgstr "語言"
-
-#: html/Search/Elements/EditFormat:79
-msgid "Large"
-msgstr ""
-
-#: html/Ticket/Elements/Tabs:96
-msgid "Last"
-msgstr "上次更新"
-
-#: html/Ticket/Elements/EditDates:59 html/Ticket/Elements/ShowDates:60
-msgid "Last Contact"
-msgstr "上次è¯çµ¡"
-
-#: html/Elements/SelectDateType:50
-msgid "Last Contacted"
-msgstr "上次è¯çµ¡æ—¥æœŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Last Notified"
-msgstr "上次通知"
-
-#: html/Elements/SelectDateType:51
-msgid "Last Updated"
-msgstr "上次更新"
-
-#: NOT FOUND IN SOURCE
-msgid "LastUpdated"
-msgstr "上次更新"
-
-#: html/Search/Elements/PickBasics:103
-msgid "LastUpdatedBy"
-msgstr "上次更新者"
-
-#: html/Ticket/Elements/ShowBasics:68
-msgid "Left"
-msgstr "剩餘時間"
-
-#: html/Admin/Users/Modify.html:109
-msgid "Let this user access RT"
-msgstr "å…許這å使用者登入"
-
-#: html/Admin/Users/Modify.html:113
-msgid "Let this user be granted rights"
-msgstr "內部æˆå“¡ï¼ˆå…·æœ‰å€‹äººæ¬Šé™ï¼‰"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting owner to %1 %2"
-msgstr "é™åˆ¶æ‰¿è¾¦äººç‚º %1 到%2"
-
-#: NOT FOUND IN SOURCE
-msgid "Limiting queue to %1 %2"
-msgstr "é™åˆ¶è¡¨å–®ç‚º %1 到 %2"
-
-#: html/Search/Elements/EditFormat:68
-msgid "Link"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Link a Queue"
-msgstr "申請表單連çµ"
-
-#: lib/RT/Record.pm:1292
-msgid "Link already exists"
-msgstr "æ­¤éˆçµå·²å­˜åœ¨"
-
-#: lib/RT/Record.pm:1306
-msgid "Link could not be created"
-msgstr "無法新增éˆçµ"
-
-#: lib/RT/Record.pm:1312
-#. ($TransString)
-msgid "Link created (%1)"
-msgstr "éˆçµ(%1)新增完畢"
-
-#: lib/RT/Record.pm:1373
-#. ($TransString)
-msgid "Link deleted (%1)"
-msgstr "éˆçµ(%1)刪除完畢"
-
-#: lib/RT/Record.pm:1379
-msgid "Link not found"
-msgstr "找ä¸åˆ°éˆçµ"
-
-#: html/Ticket/ModifyLinks.html:46 html/Ticket/ModifyLinks.html:50
-#. ($Ticket->Id)
-msgid "Link ticket #%1"
-msgstr "éˆçµç”³è«‹å–® #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Link ticket %1"
-msgstr "éˆçµç”³è«‹å–® %1"
-
-#: html/Ticket/Create.html:205 html/Ticket/Elements/ShowSummary:83 html/Ticket/Elements/Tabs:120 html/Ticket/ModifyAll.html:78
-msgid "Links"
-msgstr "éˆçµ"
-
-#: NOT FOUND IN SOURCE
-msgid "List All Users"
-msgstr "列出所有用戶資料"
-
-#: html/Search/Elements/EditSearches:76
-msgid "Load"
-msgstr "載入"
-
-#: html/Search/Elements/EditSearches:74
-msgid "Load saved search:"
-msgstr "載入已儲存的查詢:"
-
-#: lib/RT/System.pm:87
-msgid "LoadSavedSearch"
-msgstr ""
-
-#: html/Admin/Tools/Configuration.html:64
-msgid "Loaded perl modules"
-msgstr "已載入的 Perl 模組"
-
-#: lib/RT/SavedSearch.pm:112
-#. ($self->Name)
-msgid "Loaded search %1"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:138 html/User/Prefs.html:126
-msgid "Location"
-msgstr "ä½ç½®"
-
-#: lib/RT.pm:212
-#. ($RT::LogDir)
-msgid "Log directory %1 not found or couldn't be written.\\n RT can't run."
-msgstr "登入目錄 %1 找ä¸åˆ°æˆ–無法寫入\\n。無法執行 RT。"
-
-#: NOT FOUND IN SOURCE
-msgid "LogToFile"
-msgstr "紀錄等級"
-
-#: NOT FOUND IN SOURCE
-msgid "LogToFileNamed"
-msgstr "紀錄檔å"
-
-#: html/Elements/Header:94
-#. ("<b>".$session{'CurrentUser'}->Name."</b>")
-msgid "Logged in as %1"
-msgstr "使用者:%1"
-
-#: docs/design_docs/string-extraction-guide.txt:71 html/Elements/Login:57 html/Elements/Login:66 html/Elements/Login:76 lib/RT/StyleGuide.pod:797
-msgid "Login"
-msgstr "登入"
-
-#: html/Elements/Header:91
-msgid "Logout"
-msgstr "登出"
-
-#: NOT FOUND IN SOURCE
-msgid "Long-term contractor"
-msgstr "長期契約員工"
-
-#: lib/RT/CustomField_Overlay.pm:866
-msgid "Lookup type mismatch"
-msgstr "å°æ‡‰çš„類別ä¸ç¬¦"
-
-#: html/Search/Bulk.html:104
-msgid "Make Owner"
-msgstr "新增承辦人"
-
-#: html/Search/Bulk.html:128
-msgid "Make Status"
-msgstr "新增ç¾æ³"
-
-#: html/Search/Bulk.html:136
-msgid "Make date Due"
-msgstr "新增到期日"
-
-#: html/Search/Bulk.html:138
-msgid "Make date Resolved"
-msgstr "新增解決日期"
-
-#: html/Search/Bulk.html:132
-msgid "Make date Started"
-msgstr "新增實際起始日期"
-
-#: html/Search/Bulk.html:130
-msgid "Make date Starts"
-msgstr "新增應起始日期"
-
-#: html/Search/Bulk.html:134
-msgid "Make date Told"
-msgstr "新增報告日期"
-
-#: html/Search/Bulk.html:124
-msgid "Make priority"
-msgstr "新增優先順ä½"
-
-#: html/Search/Bulk.html:126
-msgid "Make queue"
-msgstr "新增表單"
-
-#: html/Search/Bulk.html:122
-msgid "Make subject"
-msgstr "新增主題"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "Make this group visible to user"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Male"
-msgstr "ç”·"
-
-#: html/Admin/index.html:78
-msgid "Manage custom fields and custom field values"
-msgstr "管ç†è‡ªè¨‚欄ä½åŠæ¬„ä½å€¼"
-
-#: html/Admin/index.html:69
-msgid "Manage groups and group membership"
-msgstr "管ç†ç¾¤çµ„åŠæ‰€å±¬æˆå“¡"
-
-#: html/Admin/index.html:85
-msgid "Manage properties and configuration which apply to all queues"
-msgstr "管ç†é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„屬性與設定"
-
-#: html/Admin/index.html:74
-msgid "Manage queues and queue-specific properties"
-msgstr "管ç†å„表單åŠç›¸é—œå±¬æ€§"
-
-#: html/Admin/index.html:64
-msgid "Manage users and passwords"
-msgstr "管ç†ä½¿ç”¨è€…與密碼"
-
-#: NOT FOUND IN SOURCE
-msgid "Manager"
-msgstr "經ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Mar"
-msgstr "三月"
-
-#: lib/RT/Date.pm:439
-msgid "Mar."
-msgstr "03"
-
-#: NOT FOUND IN SOURCE
-msgid "March"
-msgstr "三月"
-
-#: NOT FOUND IN SOURCE
-msgid "Marketing Department"
-msgstr "行銷部"
-
-#: NOT FOUND IN SOURCE
-msgid "Match Pattern"
-msgstr "符åˆæ¨£å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "May"
-msgstr "五月"
-
-#: lib/RT/Date.pm:441
-msgid "May."
-msgstr "05"
-
-#: lib/RT/Transaction_Overlay.pm:720
-#. ($value)
-msgid "Member %1 added"
-msgstr "æˆå“¡ %1 新增完畢"
-
-#: lib/RT/Transaction_Overlay.pm:760
-#. ($value)
-msgid "Member %1 deleted"
-msgstr "æˆå“¡ %1 刪除完畢"
-
-#: lib/RT/Group_Overlay.pm:1008
-msgid "Member added"
-msgstr "新增æˆå“¡å®Œç•¢"
-
-#: lib/RT/Group_Overlay.pm:1170
-msgid "Member deleted"
-msgstr "æˆå“¡å·²åˆªé™¤"
-
-#: lib/RT/Group_Overlay.pm:1174
-msgid "Member not deleted"
-msgstr "æˆå“¡æœªåˆªé™¤"
-
-#: html/Elements/SelectLinkType:47
-msgid "Member of"
-msgstr "隸屬於"
-
-#: NOT FOUND IN SOURCE
-msgid "Member since"
-msgstr "註冊日期"
-
-#: NOT FOUND IN SOURCE
-msgid "MemberOf"
-msgstr "隸屬於"
-
-#: html/Admin/Elements/GroupTabs:63 html/User/Elements/GroupTabs:63
-msgid "Members"
-msgstr "æˆå“¡"
-
-#: lib/RT/Transaction_Overlay.pm:717
-#. ($value)
-msgid "Membership in %1 added"
-msgstr "所屬群組 %1 加入完畢"
-
-#: lib/RT/Transaction_Overlay.pm:757
-#. ($value)
-msgid "Membership in %1 deleted"
-msgstr "所屬群組 %1 移除完畢"
-
-#: html/Admin/Elements/UserTabs:61
-msgid "Memberships"
-msgstr "所屬群組"
-
-#: html/Admin/Users/Memberships.html:60
-#. ($UserObj->Name)
-msgid "Memberships of the user %1"
-msgstr "使用者 %1 的所屬群組"
-
-#: lib/RT/Ticket_Overlay.pm:2849
-msgid "Merge Successful"
-msgstr "æ•´åˆå®Œç•¢"
-
-#: lib/RT/Ticket_Overlay.pm:2736
-msgid "Merge failed. Couldn't set EffectiveId"
-msgstr "æ•´åˆå¤±æ•—。無法設定 EffectiveId"
-
-#: lib/RT/Ticket_Overlay.pm:2744
-msgid "Merge failed. Couldn't set Status"
-msgstr ""
-
-#: html/Elements/EditLinks:129 html/Ticket/Elements/BulkLinks:48
-msgid "Merge into"
-msgstr "æ•´åˆé€²"
-
-#: lib/RT/Transaction_Overlay.pm:723
-#. ($value)
-msgid "Merged into %1"
-msgstr "已整åˆé€² %1"
-
-#: html/Search/Bulk.html:165 html/Ticket/Update.html:116
-msgid "Message"
-msgstr "訊æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Message body not shown because it is too large or is not plain text."
-msgstr "信件內文ä¸æ˜¯ç´”文字,因此無法顯示。"
-
-#: lib/RT/Ticket_Overlay.pm:2406
-msgid "Message could not be recorded"
-msgstr "無法紀錄訊æ¯"
-
-#: lib/RT/Ticket_Overlay.pm:2409
-msgid "Message recorded"
-msgstr "訊æ¯ç´€éŒ„æˆåŠŸ"
-
-#: html/Ticket/Elements/PreviewScrips:115
-msgid "Messages about this ticket will not be sent to..."
-msgstr "此申請單的相關訊æ¯ä¸æœƒå¯„é€çµ¦..."
-
-#: NOT FOUND IN SOURCE
-msgid "Misc. Expense"
-msgstr "雜費"
-
-#: html/Search/Build.html:667
-msgid "Mismatched parentheses"
-msgstr ""
-
-#: lib/RT/Record.pm:940
-msgid "Missing a primary key?: %1"
-msgstr "缺少主éµå€¼ï¼Ÿ(%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Missing mandatory fields"
-msgstr "缺少必填欄ä½"
-
-#: html/Admin/Users/Modify.html:193 html/User/Prefs.html:93
-msgid "Mobile"
-msgstr "行動電話"
-
-#: NOT FOUND IN SOURCE
-msgid "MobilePhone"
-msgstr "行動電話"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "Modify Access Control List"
-msgstr "更改權é™æŽ§åˆ¶æ¸…å–®"
-
-#: html/Admin/Elements/ObjectCustomFields:96
-#. (loc(lc($FriendlySubTypes)), loc(lc($Types)))
-msgid "Modify Custom Fields which apply to %1 for all %2"
-msgstr ""
-
-#: html/Admin/Elements/ObjectCustomFields:98
-#. (loc(lc($Types)))
-msgid "Modify Custom Fields which apply to all %1"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰%1的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Custom Fields which apply to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„自訂欄ä½"
-
-#: html/Admin/Global/GroupRights.html:106 html/Admin/Groups/GroupRights.html:94 html/Admin/Queues/GroupRights.html:107
-msgid "Modify Group Rights"
-msgstr "更改群組權é™"
-
-#: html/Admin/Groups/Members.html:102 html/User/Groups/Members.html:101
-msgid "Modify Members"
-msgstr "更改æˆå“¡"
-
-#: html/User/Delegation.html:58
-msgid "Modify Rights"
-msgstr "更改權é™"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "Modify Scrip templates for this queue"
-msgstr "更改此表單的範本"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "Modify Scrips for this queue"
-msgstr "更改此表單的手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify System ACLS"
-msgstr "更改系統權é™æ¸…å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Template %1"
-msgstr "更改範本 %1"
-
-#: html/Admin/Global/UserRights.html:75 html/Admin/Groups/UserRights.html:76 html/Admin/Queues/UserRights.html:75
-msgid "Modify User Rights"
-msgstr "更改使用者權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify Workflow"
-msgstr "更改æµç¨‹"
-
-#: html/Admin/Queues/CustomField.html:66
-#. ($QueueObj->Name())
-msgid "Modify a CustomField for queue %1"
-msgstr "更改 %1 表單內的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify a CustomField which applies to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„自訂欄ä½"
-
-#: html/Admin/Queues/Scrip.html:75
-#. ($QueueObj->Name)
-msgid "Modify a scrip for queue %1"
-msgstr "更改 %1 表單內的手續"
-
-#: html/Admin/Global/Scrip.html:69
-msgid "Modify a scrip which applies to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„手續"
-
-#: html/Admin/CustomFields/Objects.html:90
-#. ($CF->Name)
-msgid "Modify associated objects for %1"
-msgstr "更改é©ç”¨ %1 的物件"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify dates for # %1"
-msgstr "更改 # %1 的日期"
-
-#: html/Ticket/ModifyDates.html:46 html/Ticket/ModifyDates.html:50
-#. ($TicketObj->Id)
-msgid "Modify dates for #%1"
-msgstr "更改 #%1 的日期"
-
-#: html/Ticket/ModifyDates.html:56
-#. ($TicketObj->Id)
-msgid "Modify dates for ticket # %1"
-msgstr "更改申請單 # %1 的日期"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:65 html/Admin/Global/index.html:72
-msgid "Modify global custom fields"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:70 html/Admin/Global/GroupRights.html:46 html/Admin/Global/GroupRights.html:49 html/Admin/Global/index.html:77
-msgid "Modify global group rights"
-msgstr "更改全域設定的群組權é™"
-
-#: html/Admin/Global/GroupRights.html:54
-msgid "Modify global group rights."
-msgstr "更改全域設定的群組權é™ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for groups"
-msgstr "更改全域設定的群組權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global rights for users"
-msgstr "更改全域設定的使用者權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify global scrips"
-msgstr "更改全域手續"
-
-#: html/Admin/Global/UserRights.html:46 html/Admin/Global/UserRights.html:49 html/Admin/Global/index.html:81
-msgid "Modify global user rights"
-msgstr "更改全域設定的使用者權é™"
-
-#: html/Admin/Global/UserRights.html:54
-msgid "Modify global user rights."
-msgstr "更改全域設定的使用者權é™ã€‚"
-
-#: lib/RT/Group_Overlay.pm:171
-msgid "Modify group metadata or delete group"
-msgstr "更改群組資料åŠåˆªé™¤ç¾¤çµ„"
-
-#: html/Admin/CustomFields/GroupRights.html:164
-#. ($CustomFieldObj->Name)
-msgid "Modify group rights for custom field %1"
-msgstr "æ›´æ”¹è‡ªè¨‚æ¬„ä½ %1 的群組權é™"
-
-#: html/Admin/Groups/GroupRights.html:46 html/Admin/Groups/GroupRights.html:50 html/Admin/Groups/GroupRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify group rights for group %1"
-msgstr "更改群組 %1 的群組權é™"
-
-#: html/Admin/Queues/GroupRights.html:46 html/Admin/Queues/GroupRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify group rights for queue %1"
-msgstr "更改表單 %1 的群組權é™"
-
-#: lib/RT/Group_Overlay.pm:173
-msgid "Modify membership roster for this group"
-msgstr "更改此群組的æˆå“¡åå–®"
-
-#: lib/RT/System.pm:83
-msgid "Modify one's own RT account"
-msgstr "更改個人的帳號資訊"
-
-#: html/Admin/Queues/People.html:46 html/Admin/Queues/People.html:50
-#. ($QueueObj->Name)
-msgid "Modify people related to queue %1"
-msgstr "更改éˆçµåˆ°è¡¨å–® %1 的人員"
-
-#: html/Ticket/ModifyPeople.html:46 html/Ticket/ModifyPeople.html:50 html/Ticket/ModifyPeople.html:56
-#. ($Ticket->id)
-#. ($Ticket->Id)
-msgid "Modify people related to ticket #%1"
-msgstr "更改申請單 #%1 éˆçµåˆ°çš„人員"
-
-#: html/Admin/Queues/Scrips.html:67
-#. ($QueueObj->Name)
-msgid "Modify scrips for queue %1"
-msgstr "更改表單 %1 的手續"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:56 html/Admin/Global/Scrips.html:65 html/Admin/Global/index.html:63
-msgid "Modify scrips which apply to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„手續"
-
-#: html/Admin/Global/Template.html:102 html/Admin/Global/Template.html:46 html/Admin/Global/Template.html:51 html/Admin/Queues/Template.html:99
-#. (loc($TemplateObj->Name()))
-#. ($TemplateObj->id)
-msgid "Modify template %1"
-msgstr "更改範本 %1"
-
-#: html/Admin/Global/Templates.html:65
-msgid "Modify templates which apply to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„範本"
-
-#: html/Admin/Groups/Modify.html:119 html/User/Groups/Modify.html:107
-#. ($Group->Name)
-msgid "Modify the group %1"
-msgstr "更改群組 %1"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "Modify the queue watchers"
-msgstr "更改表單視察員"
-
-#: html/Admin/Users/Modify.html:301
-#. ($UserObj->Name)
-msgid "Modify the user %1"
-msgstr "更改使用者 %1"
-
-#: html/Ticket/ModifyAll.html:58
-#. ($Ticket->Id)
-msgid "Modify ticket # %1"
-msgstr "更改申請單 # %1"
-
-#: html/Ticket/Modify.html:46 html/Ticket/Modify.html:49 html/Ticket/Modify.html:55
-#. ($TicketObj->Id)
-msgid "Modify ticket #%1"
-msgstr "更改申請單 # %1"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "Modify tickets"
-msgstr "更改申請單"
-
-#: html/Admin/CustomFields/UserRights.html:157
-#. ($CustomFieldObj->Name)
-msgid "Modify user rights for custom field %1"
-msgstr "æ›´æ”¹è‡ªè¨‚æ¬„ä½ %1 的使用者權é™"
-
-#: html/Admin/Groups/UserRights.html:46 html/Admin/Groups/UserRights.html:50 html/Admin/Groups/UserRights.html:56
-#. ($GroupObj->Name)
-msgid "Modify user rights for group %1"
-msgstr "更改群組 %1 的使用者權é™"
-
-#: html/Admin/Queues/UserRights.html:46 html/Admin/Queues/UserRights.html:50
-#. ($QueueObj->Name)
-msgid "Modify user rights for queue %1"
-msgstr "更改表單 %1 的使用者權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify watchers for queue '%1'"
-msgstr "更改 '%1' 的視察員"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify workflow %1"
-msgstr "更改æµç¨‹ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Modify workflows which apply to all queues"
-msgstr "更改é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„æµç¨‹"
-
-#: lib/RT/Queue_Overlay.pm:95
-msgid "ModifyACL"
-msgstr "更改權é™æ¸…å–®"
-
-#: lib/RT/CustomField_Overlay.pm:103
-msgid "ModifyCustomField"
-msgstr ""
-
-#: lib/RT/Group_Overlay.pm:174
-msgid "ModifyOwnMembership"
-msgstr "更改自己是å¦å±¬æ–¼æŸç¾¤çµ„"
-
-#: lib/RT/Queue_Overlay.pm:96
-msgid "ModifyQueueWatchers"
-msgstr "更改表單視察員"
-
-#: lib/RT/Queue_Overlay.pm:101
-msgid "ModifyScrips"
-msgstr "更改手續"
-
-#: lib/RT/System.pm:83
-msgid "ModifySelf"
-msgstr "更改個人帳號"
-
-#: lib/RT/Queue_Overlay.pm:98
-msgid "ModifyTemplate"
-msgstr "更改範本"
-
-#: lib/RT/Queue_Overlay.pm:114
-msgid "ModifyTicket"
-msgstr "更改申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Mon"
-msgstr "星期一"
-
-#: lib/RT/Date.pm:413
-msgid "Mon."
-msgstr "星期一"
-
-#: NOT FOUND IN SOURCE
-msgid "More"
-msgstr "更多"
-
-#: html/Ticket/Elements/ShowRequestor:62
-#. ($name)
-msgid "More about %1"
-msgstr "關於 %1 的進一步資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Morning Shift"
-msgstr "æ—©ç­"
-
-#: NOT FOUND IN SOURCE
-msgid "Move"
-msgstr "移動"
-
-#: NOT FOUND IN SOURCE
-msgid "Move All"
-msgstr "全移"
-
-#: html/Admin/Elements/PickCustomFields:83
-msgid "Move down"
-msgstr "下移"
-
-#: html/Admin/Elements/PickCustomFields:75
-msgid "Move up"
-msgstr "上移"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:48
-msgid "Multiple"
-msgstr "多é‡"
-
-#: lib/RT/User_Overlay.pm:227
-msgid "Must specify 'Name' attribute"
-msgstr "必須指定 'Name' 的屬性"
-
-#: html/SelfService/Elements/MyRequests:70
-#. ($friendly_status)
-msgid "My %1 tickets"
-msgstr "我的 %1 申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "My Approvals"
-msgstr "表單簽核"
-
-#: NOT FOUND IN SOURCE
-msgid "My Requests"
-msgstr "表單申請追蹤"
-
-#: NOT FOUND IN SOURCE
-msgid "My Tickets"
-msgstr "表單處ç†"
-
-#: html/Approvals/index.html:46 html/Approvals/index.html:47
-msgid "My approvals"
-msgstr "表單簽核"
-
-#: html/Search/Elements/SearchPrivacy:50 html/Search/Elements/SelectSearchObject:53 html/Search/Elements/SelectSearchesForObjects:53
-msgid "My saved searches"
-msgstr "我已儲存的查詢"
-
-#: html/Admin/CustomFields/Modify.html:58 html/Admin/Elements/AddCustomFieldValue:53 html/Admin/Elements/EditCustomField:55 html/Admin/Elements/EditCustomFieldValues:55 html/Admin/Elements/ModifyTemplate:49 html/Admin/Groups/Modify.html:65 html/User/Groups/Modify.html:65
-msgid "Name"
-msgstr "å稱"
-
-#: lib/RT/User_Overlay.pm:234
-msgid "Name in use"
-msgstr "帳號已有人使用"
-
-#: NOT FOUND IN SOURCE
-msgid "Nationality"
-msgstr "國ç±"
-
-#: NOT FOUND IN SOURCE
-msgid "Need approval from system administrator"
-msgstr "需先由系統管ç†å“¡é€²è¡Œæ‰¹å‡†"
-
-#: html/Ticket/Elements/ShowDates:73
-msgid "Never"
-msgstr "從未更動"
-
-#: html/Elements/Quicksearch:51
-msgid "New"
-msgstr "新建立"
-
-#: html/Elements/EditLinks:115
-msgid "New Links"
-msgstr "新增關係"
-
-#: html/Admin/Users/Modify.html:119 html/User/Prefs.html:109
-msgid "New Password"
-msgstr "新的密碼"
-
-#: etc/initialdata:332
-msgid "New Pending Approval"
-msgstr "新的待簽核事項"
-
-#: html/Ticket/Elements/Tabs:193
-msgid "New Query"
-msgstr "新增查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "New Request"
-msgstr "表單申請"
-
-#: NOT FOUND IN SOURCE
-msgid "New Search"
-msgstr "新增查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "New Watchers"
-msgstr "新增視察員"
-
-#: html/Admin/Elements/CustomFieldTabs:93 html/Admin/Queues/CustomField.html:73
-msgid "New custom field"
-msgstr "新增自訂欄ä½"
-
-#: html/Admin/Elements/GroupTabs:77 html/User/Elements/GroupTabs:73
-msgid "New group"
-msgstr "新增群組"
-
-#: html/SelfService/Prefs.html:53
-msgid "New password"
-msgstr "新的密碼"
-
-#: lib/RT/User_Overlay.pm:817
-msgid "New password notification sent"
-msgstr "é€å‡ºæ–°å¯†ç¢¼é€šçŸ¥"
-
-#: html/Admin/Elements/QueueTabs:95
-msgid "New queue"
-msgstr "新增表單"
-
-#: NOT FOUND IN SOURCE
-msgid "New request"
-msgstr "æ出申請單"
-
-#: html/Admin/Elements/SelectRights:65
-msgid "New rights"
-msgstr "新增權é™"
-
-#: html/Admin/Global/Scrip.html:61 html/Admin/Global/Scrips.html:60 html/Admin/Queues/Scrip.html:64 html/Admin/Queues/Scrips.html:76
-msgid "New scrip"
-msgstr "新增手續"
-
-#: NOT FOUND IN SOURCE
-msgid "New search"
-msgstr "é‡æ–°æŸ¥è©¢"
-
-#: html/Admin/Global/Template.html:81 html/Admin/Global/Templates.html:60 html/Admin/Queues/Template.html:79 html/Admin/Queues/Templates.html:71
-msgid "New template"
-msgstr "新增範本"
-
-#: html/SelfService/Elements/Tabs:69
-msgid "New ticket"
-msgstr "æ出申請單"
-
-#: lib/RT/Ticket_Overlay.pm:2713
-msgid "New ticket doesn't exist"
-msgstr "沒有新申請單"
-
-#: html/Admin/Elements/UserTabs:78
-msgid "New user"
-msgstr "新增使用者"
-
-#: html/Admin/Elements/CreateUserCalled:47
-msgid "New user called"
-msgstr "新使用者åå­—"
-
-#: html/Admin/Queues/People.html:76 html/Ticket/Elements/EditPeople:50
-msgid "New watchers"
-msgstr "新視察員"
-
-#: NOT FOUND IN SOURCE
-msgid "New window setting"
-msgstr "更新視窗設定"
-
-#: NOT FOUND IN SOURCE
-msgid "New workflow"
-msgstr "新增æµç¨‹"
-
-#: html/Ticket/Elements/Tabs:92
-msgid "Next"
-msgstr "下一項"
-
-#: html/Elements/TicketList:104
-msgid "Next Page"
-msgstr "下一é "
-
-#: NOT FOUND IN SOURCE
-msgid "Next page"
-msgstr "下一é "
-
-#: NOT FOUND IN SOURCE
-msgid "NickName"
-msgstr "暱稱"
-
-#: html/Admin/Users/Modify.html:84 html/User/Prefs.html:72
-msgid "Nickname"
-msgstr "暱稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Night Shift"
-msgstr "å°å¤œç­"
-
-#: NOT FOUND IN SOURCE
-msgid "No"
-msgstr "å¦"
-
-#: html/Admin/CustomFields/UserRights.html:145
-msgid "No Class defined"
-msgstr "尚未定義類別"
-
-#: html/Admin/CustomFields/Modify.html:124 html/Admin/Elements/EditCustomField:119
-msgid "No CustomField"
-msgstr "無自訂欄ä½"
-
-#: html/Admin/CustomFields/GroupRights.html:103
-msgid "No CustomField defined"
-msgstr "尚未定義自訂欄ä½"
-
-#: html/Admin/Groups/GroupRights.html:105 html/Admin/Groups/UserRights.html:92
-msgid "No Group defined"
-msgstr "尚未定義群組"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:477
-msgid "No Query"
-msgstr "沒有查詢"
-
-#: html/Admin/Queues/GroupRights.html:118 html/Admin/Queues/UserRights.html:89
-msgid "No Queue defined"
-msgstr "尚未定義表單"
-
-#: bin/rt-crontool:73
-msgid "No RT user found. Please consult your RT administrator.\\n"
-msgstr "找ä¸åˆ° RT ä½¿ç”¨è€…ã€‚è«‹å‘ RT 管ç†å“¡æŸ¥è©¢ã€‚\\n"
-
-#: html/Admin/Global/Template.html:100 html/Admin/Queues/Template.html:97
-msgid "No Template"
-msgstr "沒有範本"
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket "
-msgstr "未指定申請單。退出申請單 "
-
-#: NOT FOUND IN SOURCE
-msgid "No Ticket specified. Aborting ticket modifications\\n\\n"
-msgstr "未指定申請單。退出申請單更改\\n\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "No Workflow"
-msgstr "沒有æµç¨‹"
-
-#: html/Approvals/Elements/Approve:67
-msgid "No action"
-msgstr "æš«ä¸è™•ç†"
-
-#: lib/RT/Record.pm:935
-msgid "No column specified"
-msgstr "未指定欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "No command found\\n"
-msgstr "找ä¸åˆ°å‘½ä»¤"
-
-#: html/Ticket/Elements/ShowRequestor:68
-msgid "No comment entered about this user"
-msgstr "沒有å°é€™å使用者的評論"
-
-#: NOT FOUND IN SOURCE
-msgid "No correspondence attached"
-msgstr "沒有附上申請單回覆"
-
-#: lib/RT/Action/Generic.pm:186 lib/RT/Condition/Generic.pm:198 lib/RT/Search/ActiveTicketsInQueue.pm:78 lib/RT/Search/Generic.pm:135
-#. (ref $self)
-msgid "No description for %1"
-msgstr "æ²’æœ‰å° %1 çš„æè¿°"
-
-#: lib/RT/Users_Overlay.pm:185
-msgid "No group specified"
-msgstr "未指定群組"
-
-#: html/Admin/Groups/index.html:52
-msgid "No groups matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è©¢æ¢ä»¶çš„群組。"
-
-#: lib/RT/Ticket_Overlay.pm:2349
-msgid "No message attached"
-msgstr "沒有附上訊æ¯"
-
-#: lib/RT/User_Overlay.pm:1035
-msgid "No password set"
-msgstr "沒有設定密碼"
-
-#: lib/RT/Queue_Overlay.pm:358
-msgid "No permission to create queues"
-msgstr "沒有新增表單的權é™"
-
-#: lib/RT/Ticket_Overlay.pm:409
-#. ($QueueObj->Name)
-msgid "No permission to create tickets in the queue '%1'"
-msgstr "沒有在表單 '%1' 新增申請單的權é™"
-
-#: lib/RT/User_Overlay.pm:187
-msgid "No permission to create users"
-msgstr "沒有新增使用者的權é™"
-
-#: html/SelfService/Display.html:165
-msgid "No permission to display that ticket"
-msgstr "沒有顯示該申請單的權é™"
-
-#: html/SelfService/Update.html:117
-msgid "No permission to view update ticket"
-msgstr "沒有檢視申請單更新的權é™"
-
-#: lib/RT/Queue_Overlay.pm:792 lib/RT/Ticket_Overlay.pm:1450
-msgid "No principal specified"
-msgstr "未指定單ä½"
-
-#: html/Admin/Queues/People.html:175 html/Admin/Queues/People.html:185
-msgid "No principals selected."
-msgstr "未指定單ä½ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "No protocol specified in %1"
-msgstr "%1 內未指定å”定"
-
-#: html/Admin/Queues/index.html:57
-msgid "No queues matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è©¢æ¢ä»¶çš„表單。"
-
-#: html/Admin/Elements/SelectRights:106
-msgid "No rights found"
-msgstr "找ä¸åˆ°æ¬Šé™"
-
-#: html/Admin/Elements/SelectRights:53
-msgid "No rights granted."
-msgstr "沒有é¸å®šæ¬Šé™"
-
-#: lib/RT/SavedSearch.pm:187
-msgid "No search loaded"
-msgstr ""
-
-#: html/Search/Bulk.html:194
-msgid "No search to operate on."
-msgstr "沒有è¦é€²è¡Œçš„查詢"
-
-#: html/Elements/RT__Ticket/ColumnMap:134
-msgid "No subject"
-msgstr "沒有標題"
-
-#: NOT FOUND IN SOURCE
-msgid "No ticket id specified"
-msgstr "未指定申請單編號"
-
-#: lib/RT/Transaction_Overlay.pm:517 lib/RT/Transaction_Overlay.pm:554
-msgid "No transaction type specified"
-msgstr "未指定更動報告類別"
-
-#: NOT FOUND IN SOURCE
-msgid "No user or email address specified"
-msgstr "未指定使用者或電å­éƒµä»¶åœ°å€"
-
-#: html/Admin/Users/index.html:55
-msgid "No users matching search criteria found."
-msgstr "找ä¸åˆ°ç¬¦åˆæŸ¥è©¢æ¢ä»¶çš„使用者。"
-
-#: NOT FOUND IN SOURCE
-msgid "No valid RT user found. RT cvs handler disengaged. Please consult your RT administrator.\\n"
-msgstr "找ä¸åˆ°åˆæ ¼çš„ RT 使用者。RT cvs 處ç†å™¨å·²åœç”¨ã€‚è«‹å‘ RT 管ç†è€…è©¢å•ã€‚\\n"
-
-#: lib/RT/Record.pm:932
-msgid "No value sent to _Set!\\n"
-msgstr "_Set 沒有收到任何值!\\n"
-
-#: html/Elements/QuickCreate:61
-msgid "Nobody"
-msgstr "沒有人"
-
-#: lib/RT/Record.pm:937
-msgid "Nonexistant field?"
-msgstr "欄ä½ä¸å­˜åœ¨ï¼Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Normal Users"
-msgstr "一般用戶群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Not configured to fetch the content from a %1 in %2"
-msgstr "未設定æˆå¾ž %2 å…§æ“·å– %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Not logged in"
-msgstr "尚未登入"
-
-#: html/Elements/Header:96
-msgid "Not logged in."
-msgstr "尚未登入"
-
-#: lib/RT/Date.pm:393
-msgid "Not set"
-msgstr "尚未設定"
-
-#: html/NoAuth/Reminder.html:48
-msgid "Not yet implemented."
-msgstr "尚未完工。"
-
-#: NOT FOUND IN SOURCE
-msgid "Not yet implemented...."
-msgstr "尚未完工..."
-
-#: html/Approvals/Elements/Approve:70
-msgid "Notes"
-msgstr "備註"
-
-#: NOT FOUND IN SOURCE
-msgid "Notes:"
-msgstr "備註:"
-
-#: lib/RT/User_Overlay.pm:820
-msgid "Notification could not be sent"
-msgstr "無法é€å‡ºé€šçŸ¥"
-
-#: etc/initialdata:101
-msgid "Notify AdminCcs"
-msgstr "通知管ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:97
-msgid "Notify AdminCcs as Comment"
-msgstr "以評論方å¼é€šçŸ¥ç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:93 etc/upgrade/3.1.17/content:6
-msgid "Notify Ccs"
-msgstr "通知副本收件人"
-
-#: etc/initialdata:89 etc/upgrade/3.1.17/content:2
-msgid "Notify Ccs as Comment"
-msgstr "以評論方å¼é€šçŸ¥å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:128
-msgid "Notify Other Recipients"
-msgstr "通知其他收件人"
-
-#: etc/initialdata:124
-msgid "Notify Other Recipients as Comment"
-msgstr "以評論方å¼é€šçŸ¥å…¶ä»–收件人"
-
-#: etc/initialdata:85
-msgid "Notify Owner"
-msgstr "通知承辦人"
-
-#: etc/initialdata:81
-msgid "Notify Owner as Comment"
-msgstr "以評論方å¼é€šçŸ¥æ‰¿è¾¦äºº"
-
-#: etc/initialdata:376
-msgid "Notify Owner of their rejected ticket"
-msgstr "通知承辦人申請單已é§å›ž"
-
-#: etc/initialdata:365
-msgid "Notify Owner of their ticket has been approved by all approvers"
-msgstr "通知承辦人申請單已完æˆå…¨éƒ¨ç°½æ ¸"
-
-#: etc/initialdata:353
-msgid "Notify Owner of their ticket has been approved by some approver"
-msgstr "通知承辦人申請單已完æˆæŸé …簽核"
-
-#: etc/initialdata:334
-msgid "Notify Owners and AdminCcs of new items pending their approval"
-msgstr "æ•´ç†å¾…簽核事項,通知承辦人åŠç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:77
-msgid "Notify Requestors"
-msgstr "通知申請人"
-
-#: etc/initialdata:111
-msgid "Notify Requestors and Ccs"
-msgstr "通知申請人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:106
-msgid "Notify Requestors and Ccs as Comment"
-msgstr "以評論方å¼é€šçŸ¥ç”³è«‹äººåŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:120
-msgid "Notify Requestors, Ccs and AdminCcs"
-msgstr "通知申請人ã€å‰¯æœ¬åŠç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:116
-msgid "Notify Requestors, Ccs and AdminCcs as Comment"
-msgstr "以評論方å¼é€šçŸ¥ç”³è«‹äººã€å‰¯æœ¬åŠç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "Notify people:"
-msgstr "通知å°è±¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Nov"
-msgstr "å一月"
-
-#: lib/RT/Date.pm:447
-msgid "Nov."
-msgstr "11"
-
-#: NOT FOUND IN SOURCE
-msgid "November"
-msgstr "å一月"
-
-#: NOT FOUND IN SOURCE
-msgid "OIN104"
-msgstr "104eHRMS 介é¢"
-
-#: NOT FOUND IN SOURCE
-msgid "OK"
-msgstr "確定"
-
-#: html/Search/Elements/SelectAndOr:47
-msgid "OR"
-msgstr ""
-
-#: lib/RT/Record.pm:319
-msgid "Object could not be created"
-msgstr "無法新增物件"
-
-#: lib/RT/Record.pm:124
-msgid "Object could not be deleted"
-msgstr ""
-
-#: lib/RT/Record.pm:338
-msgid "Object created"
-msgstr "物件新增完畢"
-
-#: lib/RT/Record.pm:121
-msgid "Object deleted"
-msgstr ""
-
-#: html/Admin/CustomFields/Objects.html:72 html/Admin/Elements/ObjectCustomFields:63
-#. ($ObjectType)
-#. ($LookupType)
-msgid "Object of type %1 cannot take custom fields"
-msgstr "自訂欄ä½ä¸é©ç”¨æ–¼é¡žåˆ¥ç‚º %1 的物件"
-
-#: lib/RT/CustomField_Overlay.pm:901
-msgid "Object type mismatch"
-msgstr "物件類別ä¸ç¬¦"
-
-#: NOT FOUND IN SOURCE
-msgid "Occupation Status"
-msgstr "在è·ç‹€æ…‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Oct"
-msgstr "å月"
-
-#: lib/RT/Date.pm:446
-msgid "Oct."
-msgstr "10"
-
-#: NOT FOUND IN SOURCE
-msgid "October"
-msgstr "å月"
-
-#: NOT FOUND IN SOURCE
-msgid "Office Phone"
-msgstr "辦公室電話"
-
-#: html/Tools/Elements/Tabs:53
-msgid "Offline"
-msgstr "離線"
-
-#: html/Tools/Offline.html:49
-msgid "Offline edits"
-msgstr "離線編輯"
-
-#: html/Tools/Offline.html:46
-msgid "Offline upload"
-msgstr "離線上載"
-
-#: html/Elements/SelectDateRelation:56
-msgid "On"
-msgstr "等於"
-
-#: NOT FOUND IN SOURCE
-msgid "On Change"
-msgstr "更改申請單時"
-
-#: etc/initialdata:163
-msgid "On Comment"
-msgstr "評論時"
-
-#: etc/initialdata:156
-msgid "On Correspond"
-msgstr "回覆申請單時"
-
-#: etc/initialdata:145
-msgid "On Create"
-msgstr "新增申請單時"
-
-#: etc/initialdata:184
-msgid "On Owner Change"
-msgstr "承辦人改變時"
-
-#: etc/initialdata:177 etc/upgrade/3.1.17/content:15
-msgid "On Priority Change"
-msgstr "優先順ä½æ”¹è®Šæ™‚"
-
-#: etc/initialdata:192
-msgid "On Queue Change"
-msgstr "表單改變時"
-
-#: etc/initialdata:198
-msgid "On Resolve"
-msgstr "解決申請單時"
-
-#: etc/initialdata:169
-msgid "On Status Change"
-msgstr "ç¾æ³æ”¹è®Šæ™‚"
-
-#: etc/initialdata:150
-msgid "On Transaction"
-msgstr "發生更動時"
-
-#: html/Approvals/Elements/PendingMyApproval:71
-#. ("<input size='15' value='".( $created_after->Unix >0 && $created_after->ISO)."' name='CreatedAfter'>")
-msgid "Only show approvals for requests created after %1"
-msgstr "僅顯示 %1 之後新增的申請單"
-
-#: html/Approvals/Elements/PendingMyApproval:69
-#. ("<input size='15' value='".($created_before->Unix > 0 &&$created_before->ISO)."' name='CreatedBefore'>")
-msgid "Only show approvals for requests created before %1"
-msgstr "僅顯示 %1 之å‰æ–°å¢žçš„申請單"
-
-#: html/Elements/Quicksearch:52
-msgid "Open"
-msgstr "é–‹å•Ÿ"
-
-#: html/Ticket/Elements/Tabs:159
-msgid "Open it"
-msgstr "é–‹å•Ÿ"
-
-#: html/SelfService/Elements/Tabs:63
-msgid "Open tickets"
-msgstr "開啟的申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in a new window"
-msgstr "在新視窗開啟(列表的)申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Open tickets (from listing) in another window"
-msgstr "在å¦ä¸€å€‹è¦–窗開啟(列表的)申請單"
-
-#: etc/initialdata:140
-msgid "Open tickets on correspondence"
-msgstr "收到回覆時å³é–‹å•Ÿç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Opened Tickets"
-msgstr "已申請é‹è¡Œä¸­è¡¨å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Opinion"
-msgstr "æ„見"
-
-#: NOT FOUND IN SOURCE
-msgid "Option Description"
-msgstr "é¸é …æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Option Name"
-msgstr "é¸é …å稱"
-
-#: html/Search/Elements/DisplayOptions:56
-msgid "Order by"
-msgstr "排åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Ordering and sorting"
-msgstr "é †åºèˆ‡æŽ’åºæ–¹å¼"
-
-#: html/Admin/Users/Modify.html:141 html/User/Prefs.html:129
-msgid "Organization"
-msgstr "組織å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Organization:"
-msgstr "組織:"
-
-#: html/Approvals/Elements/Approve:54
-#. ($approving->Id, $approving->Subject)
-msgid "Originating ticket: #%1"
-msgstr "原申請單:#%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Other comma-delimited email addresses"
-msgstr "其他e-mail帳號 (僅e-mail通知;多筆帳號請用逗號','å€éš”)"
-
-#: NOT FOUND IN SOURCE
-msgid "Out of range"
-msgstr "期é™å¤–"
-
-#: lib/RT/Transaction_Overlay.pm:611
-msgid "Outgoing email about a comment recorded"
-msgstr "已紀錄發é€çš„評論郵件"
-
-#: lib/RT/Transaction_Overlay.pm:615
-msgid "Outgoing email recorded"
-msgstr "已紀錄發é€çš„郵件"
-
-#: html/Admin/Queues/Modify.html:90
-msgid "Over time, priority moves toward"
-msgstr "優先順ä½éš¨æ™‚間增加調整為"
-
-#: NOT FOUND IN SOURCE
-msgid "Override current custom fields with fields from %1"
-msgstr "以 %1 表單的自訂欄ä½å–代ç¾æœ‰æ¬„ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Override global rights"
-msgstr "å–代全域權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "OverrideGlobalACL status %1"
-msgstr "å–ä»£å…¨åŸŸæ¬Šé™ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Overview"
-msgstr "總覽"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "Own tickets"
-msgstr "承辦申請單"
-
-#: lib/RT/Queue_Overlay.pm:113
-msgid "OwnTicket"
-msgstr "承辦申請單"
-
-#: etc/initialdata:38 html/Elements/QuickCreate:58 html/Search/Elements/PickBasics:101 html/SelfService/Elements/MyRequests:51 html/Ticket/Create.html:69 html/Ticket/Elements/EditPeople:64 html/Ticket/Elements/EditPeople:65 html/Ticket/Elements/ShowPeople:48 html/Ticket/Update.html:62 lib/RT/ACE_Overlay.pm:111 lib/RT/Tickets_Overlay.pm:1734
-msgid "Owner"
-msgstr "承辦人"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner changed from %1 to %2"
-msgstr "承辦人已從 %1 改為 %2"
-
-#: lib/RT/Ticket_Overlay.pm:495
-msgid "Owner could not be set."
-msgstr "無法設定承辦人。"
-
-#: lib/RT/Transaction_Overlay.pm:661
-#. ($Old->Name , $New->Name)
-msgid "Owner forcibly changed from %1 to %2"
-msgstr "強制將承辦人從 %1 改為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner is"
-msgstr "承辦人"
-
-#: NOT FOUND IN SOURCE
-msgid "Owner's Phone"
-msgstr "承辦人電話"
-
-#: NOT FOUND IN SOURCE
-msgid "Page #"
-msgstr " "
-
-#: html/Elements/TicketList:78
-#. ($Page, int($TotalFound/$Rows)+$oddRows)
-msgid "Page %1 of %2"
-msgstr "第 %1/%2 é "
-
-#: html/Admin/Users/Modify.html:198 html/User/Prefs.html:97
-msgid "Pager"
-msgstr "呼å«å™¨"
-
-#: NOT FOUND IN SOURCE
-msgid "PagerPhone"
-msgstr "呼å«å™¨è™Ÿç¢¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Parameter"
-msgstr "呼å«åƒæ•¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Parent"
-msgstr "上級"
-
-#: html/Elements/EditLinks:142 html/Elements/EditLinks:76 html/Elements/ShowLinks:68 html/Ticket/Create.html:213 html/Ticket/Elements/BulkLinks:60
-msgid "Parents"
-msgstr "æ¯ç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Park Space"
-msgstr "åœè»Šä½ç”³è«‹"
-
-#: html/Elements/Login:74 html/User/Prefs.html:105
-msgid "Password"
-msgstr "密碼"
-
-#: html/NoAuth/Reminder.html:46
-msgid "Password Reminder"
-msgstr "密碼æ示"
-
-#: lib/RT/Transaction_Overlay.pm:770 lib/RT/User_Overlay.pm:1046
-msgid "Password changed"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1038 lib/RT/User_Overlay.pm:215
-#. ($RT::MinimumPasswordLength)
-msgid "Password needs to be at least %1 characters long"
-msgstr ""
-
-#: lib/RT/User_Overlay.pm:1045
-msgid "Password set"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Password too short"
-msgstr "密碼太短"
-
-#: html/User/Prefs.html:232
-#. (loc_fuzzy($msg))
-msgid "Password: %1"
-msgstr "密碼:%1"
-
-#: lib/RT/User_Overlay.pm:1031
-msgid "Password: Permission Denied"
-msgstr ""
-
-#: html/Admin/Users/Modify.html:356
-msgid "Passwords do not match."
-msgstr "密碼確èªå¤±æ•—。"
-
-#: html/User/Prefs.html:234
-msgid "Passwords do not match. Your password has not been changed"
-msgstr "密碼確èªå¤±æ•—。您的密碼並未改變。"
-
-#: NOT FOUND IN SOURCE
-msgid "Pelase select a queue"
-msgstr "è«‹é¸æ“‡è¡¨å–®å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Pending Approval"
-msgstr "等待簽核"
-
-#: html/Ticket/Elements/ShowSummary:66 html/Ticket/Elements/Tabs:119 html/Ticket/ModifyAll.html:72
-msgid "People"
-msgstr "人員"
-
-#: NOT FOUND IN SOURCE
-msgid "People with Queue Rights"
-msgstr "æ“有表單權é™äººå“¡"
-
-#: etc/initialdata:133
-msgid "Perform a user-defined action"
-msgstr "執行使用者自訂的動作"
-
-#: html/Admin/Tools/Configuration.html:94
-msgid "Perl configuration"
-msgstr "Perl 設定"
-
-#: lib/RT/ACE_Overlay.pm:252 lib/RT/ACE_Overlay.pm:258 lib/RT/ACE_Overlay.pm:581 lib/RT/ACE_Overlay.pm:591 lib/RT/ACE_Overlay.pm:601 lib/RT/ACE_Overlay.pm:666 lib/RT/Attribute_Overlay.pm:158 lib/RT/Attribute_Overlay.pm:164 lib/RT/Attribute_Overlay.pm:402 lib/RT/Attribute_Overlay.pm:411 lib/RT/Attribute_Overlay.pm:424 lib/RT/CurrentUser.pm:117 lib/RT/CurrentUser.pm:126 lib/RT/CustomField_Overlay.pm:1022 lib/RT/CustomField_Overlay.pm:167 lib/RT/CustomField_Overlay.pm:184 lib/RT/CustomField_Overlay.pm:195 lib/RT/CustomField_Overlay.pm:366 lib/RT/CustomField_Overlay.pm:398 lib/RT/CustomField_Overlay.pm:697 lib/RT/CustomField_Overlay.pm:870 lib/RT/CustomField_Overlay.pm:905 lib/RT/CustomField_Overlay.pm:950 lib/RT/Group_Overlay.pm:1125 lib/RT/Group_Overlay.pm:1129 lib/RT/Group_Overlay.pm:1138 lib/RT/Group_Overlay.pm:1248 lib/RT/Group_Overlay.pm:1252 lib/RT/Group_Overlay.pm:1258 lib/RT/Group_Overlay.pm:453 lib/RT/Group_Overlay.pm:550 lib/RT/Group_Overlay.pm:628 lib/RT/Group_Overlay.pm:636 lib/RT/Group_Overlay.pm:734 lib/RT/Group_Overlay.pm:738 lib/RT/Group_Overlay.pm:744 lib/RT/Group_Overlay.pm:930 lib/RT/Group_Overlay.pm:934 lib/RT/Group_Overlay.pm:947 lib/RT/Queue_Overlay.pm:1051 lib/RT/Queue_Overlay.pm:141 lib/RT/Queue_Overlay.pm:159 lib/RT/Queue_Overlay.pm:654 lib/RT/Queue_Overlay.pm:664 lib/RT/Queue_Overlay.pm:678 lib/RT/Queue_Overlay.pm:816 lib/RT/Queue_Overlay.pm:825 lib/RT/Queue_Overlay.pm:838 lib/RT/Scrip_Overlay.pm:150 lib/RT/Scrip_Overlay.pm:161 lib/RT/Scrip_Overlay.pm:226 lib/RT/Scrip_Overlay.pm:540 lib/RT/Template_Overlay.pm:112 lib/RT/Template_Overlay.pm:118 lib/RT/Template_Overlay.pm:309 lib/RT/Ticket_Overlay.pm:1318 lib/RT/Ticket_Overlay.pm:1328 lib/RT/Ticket_Overlay.pm:1342 lib/RT/Ticket_Overlay.pm:1483 lib/RT/Ticket_Overlay.pm:1493 lib/RT/Ticket_Overlay.pm:1507 lib/RT/Ticket_Overlay.pm:1624 lib/RT/Ticket_Overlay.pm:1944 lib/RT/Ticket_Overlay.pm:2082 lib/RT/Ticket_Overlay.pm:2252 lib/RT/Ticket_Overlay.pm:2302 lib/RT/Ticket_Overlay.pm:2474 lib/RT/Ticket_Overlay.pm:2577 lib/RT/Ticket_Overlay.pm:2625 lib/RT/Ticket_Overlay.pm:2704 lib/RT/Ticket_Overlay.pm:2718 lib/RT/Ticket_Overlay.pm:2942 lib/RT/Ticket_Overlay.pm:2952 lib/RT/Ticket_Overlay.pm:2957 lib/RT/Ticket_Overlay.pm:3180 lib/RT/Ticket_Overlay.pm:3184 lib/RT/Ticket_Overlay.pm:3327 lib/RT/Ticket_Overlay.pm:3448 lib/RT/Transaction_Overlay.pm:505 lib/RT/Transaction_Overlay.pm:512 lib/RT/Transaction_Overlay.pm:540 lib/RT/Transaction_Overlay.pm:547 lib/RT/User_Overlay.pm:1184 lib/RT/User_Overlay.pm:1725 lib/RT/User_Overlay.pm:370 lib/RT/User_Overlay.pm:736 lib/RT/User_Overlay.pm:775
-msgid "Permission Denied"
-msgstr "權é™ä¸è¶³"
-
-#: NOT FOUND IN SOURCE
-msgid "Permission Settings"
-msgstr "權é™è¨­å®š"
-
-#: NOT FOUND IN SOURCE
-msgid "Permitted Queues:"
-msgstr "æ“有權é™è¡¨å–®åˆ—表:"
-
-#: NOT FOUND IN SOURCE
-msgid "Personal"
-msgstr "代ç†äººç¾¤çµ„"
-
-#: html/User/Elements/Tabs:56
-msgid "Personal Groups"
-msgstr "代ç†äººç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Personal Homepage"
-msgstr "個人首é "
-
-#: NOT FOUND IN SOURCE
-msgid "Personal Todo"
-msgstr "ç§äººå¾…辦事項"
-
-#: html/User/Groups/index.html:51 html/User/Groups/index.html:61
-msgid "Personal groups"
-msgstr "代ç†äººç¾¤çµ„"
-
-#: html/User/Elements/DelegateRights:58
-msgid "Personal groups:"
-msgstr "代ç†äººç¾¤çµ„:"
-
-#: NOT FOUND IN SOURCE
-msgid "PersonalHomepage"
-msgstr "個人首é "
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 1: Create/Rename Groups (%1)"
-msgstr "第一階段:群組建立åŠæ”¹å (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 2: Disable/Enable Groups (%1)"
-msgstr "第二階段:群組åœç”¨åŠå•Ÿç”¨ (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 3: Create/Rename Users (%1)"
-msgstr "第三階段:使用者建立åŠæ”¹å (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phase 4: Disable/Enable Users (%1)"
-msgstr "第四階段:使用者åœç”¨åŠå•Ÿç”¨ (%1)"
-
-#: NOT FOUND IN SOURCE
-msgid "Phone"
-msgstr "電話"
-
-#: NOT FOUND IN SOURCE
-msgid "Phone number"
-msgstr "電話號碼"
-
-#: html/Admin/Users/Modify.html:180 html/User/Prefs.html:82
-msgid "Phone numbers"
-msgstr "電話號碼"
-
-#: NOT FOUND IN SOURCE
-msgid "Pick"
-msgstr "挑é¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Place of Departure"
-msgstr "出發地點"
-
-#: NOT FOUND IN SOURCE
-msgid "Placeholder"
-msgstr "尚未完工"
-
-#: NOT FOUND IN SOURCE
-msgid "Please Select"
-msgstr "è«‹é¸æ“‡"
-
-#: NOT FOUND IN SOURCE
-msgid "Please check items to be deleted first."
-msgstr "è«‹å…ˆé¸ä¸­è¦åˆªé™¤çš„å°è±¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select a group"
-msgstr "è«‹é¸æ“‡ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select a queue's workflow"
-msgstr "è«‹é¸æ“‡è¡¨å–®æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select one of the category types above."
-msgstr "請從上é¢é¸æ“‡ä¸€é …分類。"
-
-#: NOT FOUND IN SOURCE
-msgid "Please select role"
-msgstr "è«‹é¸æ“‡è§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "Policy"
-msgstr "經營è¦ç« "
-
-#: NOT FOUND IN SOURCE
-msgid "Position"
-msgstr "è·å‹™"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Level"
-msgstr "è·ç­‰"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Name"
-msgstr "è·å‹™å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Number"
-msgstr "è·å‹™ä»£ç¢¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Position Rank"
-msgstr "è·ç´š"
-
-#: NOT FOUND IN SOURCE
-msgid "Pref"
-msgstr "å好"
-
-#: html/Elements/Header:87 html/Elements/Tabs:88 html/SelfService/Elements/Tabs:75 html/SelfService/Prefs.html:46 html/User/Prefs.html:46 html/User/Prefs.html:49
-msgid "Preferences"
-msgstr "å好"
-
-#: NOT FOUND IN SOURCE
-msgid "Prefs"
-msgstr "個人資訊"
-
-#: lib/RT/Action/Generic.pm:196
-msgid "Prepare Stubbed"
-msgstr "é å‚™å‹•ä½œå®Œç•¢"
-
-#: html/Ticket/Elements/Tabs:84
-msgid "Prev"
-msgstr "上一項"
-
-#: html/Elements/TicketList:101
-msgid "Previous Page"
-msgstr "上一é "
-
-#: NOT FOUND IN SOURCE
-msgid "Previous page"
-msgstr "å‰ä¸€é "
-
-#: NOT FOUND IN SOURCE
-msgid "Pri"
-msgstr "優先順ä½"
-
-#: lib/RT/ACE_Overlay.pm:158 lib/RT/ACE_Overlay.pm:240 lib/RT/ACE_Overlay.pm:570
-#. ($args{'PrincipalId'})
-msgid "Principal %1 not found."
-msgstr "找ä¸åˆ°å–®ä½ %1。"
-
-#: html/Search/Elements/PickBasics:160 html/Ticket/Create.html:184 html/Ticket/Elements/EditBasics:74 html/Ticket/Elements/ShowBasics:72 lib/RT/Tickets_Overlay.pm:1518
-msgid "Priority"
-msgstr "優先順ä½"
-
-#: html/Admin/Queues/Modify.html:86
-msgid "Priority starts at"
-msgstr "優先順ä½èµ·å§‹å€¼"
-
-#: html/Search/Elements/EditSearches:50
-msgid "Privacy:"
-msgstr "éš±ç§è¨­å®šï¼š"
-
-#: etc/initialdata:25
-msgid "Privileged"
-msgstr "內部æˆå“¡"
-
-#: html/Admin/Users/Modify.html:334 html/User/Prefs.html:223
-#. (loc_fuzzy($msg))
-msgid "Privileged status: %1"
-msgstr "內部æˆå“¡ç‹€æ…‹ï¼š%1"
-
-#: html/Admin/Users/index.html:102
-msgid "Privileged users"
-msgstr "內部æˆå“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Process Status"
-msgstr "處ç†ç‹€æ…‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Project"
-msgstr "專案"
-
-#: NOT FOUND IN SOURCE
-msgid "Project Name"
-msgstr "專案å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Projects"
-msgstr "專案"
-
-#: etc/initialdata:23 etc/initialdata:29 etc/initialdata:35 etc/initialdata:59
-msgid "Pseudogroup for internal use"
-msgstr "內部用的虛擬群組"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Description"
-msgstr "公開說明"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Info"
-msgstr "公開資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Public Service"
-msgstr "公共事務å€"
-
-#: NOT FOUND IN SOURCE
-msgid "Purging stale data: %1"
-msgstr "移除éŽæœŸè³‡æ–™: %1"
-
-#: html/Search/Elements/EditQuery:47
-msgid "Query"
-msgstr "查詢"
-
-#: html/Search/Build.html:124 html/Ticket/Elements/Tabs:195
-msgid "Query Builder"
-msgstr "建立查詢"
-
-#: html/Elements/QuickCreate:55 html/Elements/Quicksearch:50 html/Search/Elements/PickBasics:71 html/SelfService/Create.html:54 html/Ticket/Create.html:59 html/Ticket/Elements/EditBasics:57 html/Ticket/Elements/ShowBasics:76 html/User/Elements/DelegateRights:101 lib/RT/Tickets_Overlay.pm:1345
-msgid "Queue"
-msgstr "表單"
-
-#: html/Admin/Queues/CustomField.html:63 html/Admin/Queues/Scrip.html:71 html/Admin/Queues/Scrips.html:69 html/Admin/Queues/Templates.html:65
-#. ($Queue)
-#. ($id)
-msgid "Queue %1 not found"
-msgstr "找ä¸åˆ°è¡¨å–® %1"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue '%1' not found\\n"
-msgstr "找ä¸åˆ°è¡¨å–® '%1'\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Keyword Selections"
-msgstr "表單關éµå­—é¸å–"
-
-#: html/Admin/Queues/Modify.html:64
-msgid "Queue Name"
-msgstr "表單å稱"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Owner"
-msgstr "業務承辦人"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Priority"
-msgstr "優先等級"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Rights"
-msgstr "表單權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Scrips"
-msgstr "表單手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue Setup"
-msgstr "表單設定"
-
-#: lib/RT/Queue_Overlay.pm:362
-msgid "Queue already exists"
-msgstr "表單已存在"
-
-#: lib/RT/Queue_Overlay.pm:371 lib/RT/Queue_Overlay.pm:377
-msgid "Queue could not be created"
-msgstr "無法新增表單"
-
-#: html/Ticket/Create.html:239 lib/t/regression/01ticket_link_searching.t:17
-msgid "Queue could not be loaded."
-msgstr "無法載入表單"
-
-#: docs/design_docs/string-extraction-guide.txt:83 lib/RT/Queue_Overlay.pm:381 lib/RT/StyleGuide.pod:809
-msgid "Queue created"
-msgstr "表單新增完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Queue is not specified."
-msgstr "未指定表單。"
-
-#: html/SelfService/Display.html:102 lib/RT/CustomField_Overlay.pm:192
-msgid "Queue not found"
-msgstr "找ä¸åˆ°è¡¨å–®"
-
-#: html/Admin/Elements/Tabs:59 html/Admin/index.html:72
-msgid "Queues"
-msgstr "表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Quick Search"
-msgstr "表單ç¾æ³"
-
-#: html/Elements/Quicksearch:46
-msgid "Quick search"
-msgstr "表單一覽"
-
-#: html/Elements/QuickCreate:46
-msgid "Quick ticket creation"
-msgstr "快速建立申請單"
-
-#: html/Search/Results.html:83
-msgid "RSS"
-msgstr "RSS"
-
-#: html/Elements/Login:66
-#. ($RT::VERSION)
-msgid "RT %1"
-msgstr "RT %1"
-
-#: docs/design_docs/string-extraction-guide.txt:70 lib/RT/StyleGuide.pod:796
-#. ($RT::VERSION, $RT::rtname)
-msgid "RT %1 for %2"
-msgstr "%2:RT %1 版"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1 from <a href=\"http://bestpractical.com\">Best Practical Solutions, LLC</a>."
-msgstr "RT %1 版,<a href=\"http://bestpractical.com\">Best Practical Solutions å…¬å¸</a>出å“。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1。版權所有 1996-%1 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT %1. Copyright 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-msgstr "RT %1。版權所有 1996-2002 Jesse Vincent <jesse\\@bestpractical.com>\\n"
-
-#: html/Admin/index.html:46 html/Admin/index.html:47
-msgid "RT Administration"
-msgstr "RT 管ç†é é¢"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Authentication error."
-msgstr "RT èªè­‰éŒ¯èª¤ã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Bounce: %1"
-msgstr "RT 退信:%1"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Configuration error"
-msgstr "RT 設定錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Critical error. Message not recorded!"
-msgstr "RT 致命錯誤。訊æ¯æœªè¢«ç´€éŒ„。"
-
-#: html/Elements/Error:65 html/SelfService/Error.html:62
-msgid "RT Error"
-msgstr "RT 錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Received mail (%1) from itself."
-msgstr "RT 收到從自己寄出的郵件 (%1)。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Recieved mail (%1) from itself."
-msgstr "RT 收到從自己寄出的郵件 (%1)。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT Self Service / Closed Tickets"
-msgstr "RT 自助æœå‹™/已解決的申請單"
-
-#: html/Admin/Tools/Configuration.html:73
-msgid "RT Variables"
-msgstr "RT 的變數"
-
-#: html/index.html:72 html/index.html:75
-msgid "RT at a glance"
-msgstr "RT 一覽"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't authenticate you"
-msgstr "RT 無法èªè­‰æ‚¨çš„身份"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find requestor via its external database lookup"
-msgstr "RT 無法從外部資料庫查詢找到申請人資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't find the queue: %1"
-msgstr "RT 找ä¸åˆ°è¡¨å–®ï¼š%1"
-
-#: html/Elements/SetupSessionCookie:90
-msgid "RT couldn't store your session."
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "RT couldn't validate this PGP signature. \\n"
-msgstr "RT 無法確èªé€™å€‹ PGP 簽章。\\n"
-
-#: html/Elements/PageLayout:108
-#. ($RT::rtname)
-msgid "RT for %1"
-msgstr "%1 專用æµç¨‹ç³»çµ±"
-
-#: NOT FOUND IN SOURCE
-msgid "RT for %1: %2"
-msgstr "%1 專用 RT 系統:%2"
-
-#: NOT FOUND IN SOURCE
-msgid "RT has proccessed your commands"
-msgstr "RT 已執行您的命令"
-
-#: NOT FOUND IN SOURCE
-msgid "RT is &copy; Copyright 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;. It is distributed under <a href=\"http://www.gnu.org/copyleft/gpl.html\">Version 2 of the GNU General Public License.</a>"
-msgstr "RT 版權所有 1996-%1 Jesse Vincent &lt;jesse@bestpractical.com&gt;。<br>æœ¬è»Ÿé«”ä¾ <a href=\"http://www.gnu.org/copyleft/gpl.html\">GNU 通用公共授權第二版</a> 散佈。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT thinks this message may be a bounce"
-msgstr "RT èªç‚ºé€™å¯èƒ½æ˜¯é€€ä¿¡"
-
-#: NOT FOUND IN SOURCE
-msgid "RT will process this message as if it were unsigned.\\n"
-msgstr "RT 以未簽章方å¼è™•ç†é€™å°éƒµä»¶ã€‚\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "RT's email command mode requires PGP authentication. Either you didn't sign your message, or your signature could not be verified."
-msgstr "RT çš„é›»å­éƒµä»¶å‘½ä»¤æ¨¡å¼é ˆè¦ PGP èªè­‰ã€‚您å¯èƒ½æ²’有簽章,或是您的簽章無法辨識。"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::Queue-Role"
-msgstr "表單é‹è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::System-Role"
-msgstr "系統é‹è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT::Ticket-Role"
-msgstr "申請單é‹è¡Œè§’色"
-
-#: NOT FOUND IN SOURCE
-msgid "RT_System"
-msgstr "系統訊æ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "Read Only"
-msgstr "唯讀"
-
-#: html/Admin/Users/Modify.html:79 html/User/Prefs.html:69
-msgid "Real Name"
-msgstr "真實姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "RealName"
-msgstr "真實姓å"
-
-#: NOT FOUND IN SOURCE
-msgid "Really reject this ticket?"
-msgstr "您確定è¦é§å›žé€™å¼µç”³è«‹å–®å—Žï¼Ÿ"
-
-#: lib/RT/Transaction_Overlay.pm:714
-#. ($value)
-msgid "Reference by %1 added"
-msgstr "已加入 %1 為åƒè€ƒæœ¬ç”³è«‹å–®"
-
-#: lib/RT/Transaction_Overlay.pm:754
-#. ($value)
-msgid "Reference by %1 deleted"
-msgstr "已移除 %1 為åƒè€ƒæœ¬ç”³è«‹å–®"
-
-#: lib/RT/Transaction_Overlay.pm:711
-#. ($value)
-msgid "Reference to %1 added"
-msgstr "已加入åƒè€ƒç”³è«‹å–® %1"
-
-#: lib/RT/Transaction_Overlay.pm:751
-#. ($value)
-msgid "Reference to %1 deleted"
-msgstr "已移除åƒè€ƒç”³è«‹å–® %1"
-
-#: html/Elements/EditLinks:103 html/Elements/EditLinks:154 html/Elements/ShowLinks:92 html/Ticket/Create.html:216 html/Ticket/Elements/BulkLinks:72
-msgid "Referred to by"
-msgstr "被åƒè€ƒ"
-
-#: html/Elements/EditLinks:150 html/Elements/EditLinks:94 html/Elements/SelectLinkType:49 html/Elements/ShowLinks:82 html/Ticket/Create.html:215 html/Ticket/Elements/BulkLinks:68
-msgid "Refers to"
-msgstr "åƒè€ƒ"
-
-#: NOT FOUND IN SOURCE
-msgid "RefersTo"
-msgstr "åƒè€ƒ"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine"
-msgstr "在çµæžœç¯„åœå…§æŸ¥è©¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Refine search"
-msgstr "調整查詢æ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Refresh"
-msgstr "æ›´æ–°"
-
-#: html/Elements/Refresh:57
-#. ($value/60)
-msgid "Refresh this page every %1 minutes."
-msgstr "æ¯ %1 分é˜æ›´æ–°é é¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Remove"
-msgstr "移除"
-
-#: html/Search/Bulk.html:116
-msgid "Remove AdminCc"
-msgstr "移除管ç†å“¡å‰¯æœ¬"
-
-#: html/Search/Bulk.html:112
-msgid "Remove Cc"
-msgstr "移除副本"
-
-#: html/Search/Bulk.html:108
-msgid "Remove Requestor"
-msgstr "移除申請人"
-
-#: html/Ticket/Elements/ShowTransaction:171 html/Ticket/Elements/Tabs:145
-msgid "Reply"
-msgstr "回覆"
-
-#: html/Admin/Queues/Modify.html:72
-msgid "Reply Address"
-msgstr "回覆地å€"
-
-#: html/Search/Bulk.html:151 html/Ticket/ModifyAll.html:94 html/Ticket/Update.html:76
-msgid "Reply to requestors"
-msgstr "回覆申請人"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "Reply to tickets"
-msgstr "å°ç”³è«‹å–®é€²è¡Œå›žè¦†"
-
-#: lib/RT/Queue_Overlay.pm:111
-msgid "ReplyToTicket"
-msgstr "回覆申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Report to Duty"
-msgstr "上下ç­åˆ·å¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Reported on"
-msgstr "到è·æ—¥æœŸ"
-
-#: etc/initialdata:44 lib/RT/ACE_Overlay.pm:112
-msgid "Requestor"
-msgstr "申請人"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor email address"
-msgstr "申請人電å­éƒµä»¶ä¿¡ç®±ä½å€"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's"
-msgstr "申請人所屬之第上"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's Dept."
-msgstr "申請人所屬部門之"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor's Phone"
-msgstr "申請人電話"
-
-#: NOT FOUND IN SOURCE
-msgid "Requestor(s)"
-msgstr "申請人"
-
-#: NOT FOUND IN SOURCE
-msgid "RequestorAddresses"
-msgstr "申請人地å€"
-
-#: html/SelfService/Create.html:63 html/Ticket/Create.html:77 html/Ticket/Elements/EditPeople:69 html/Ticket/Elements/ShowPeople:52
-msgid "Requestors"
-msgstr "申請人"
-
-#: html/Admin/Queues/Modify.html:96
-msgid "Requests should be due in"
-msgstr "申請單處ç†æœŸé™"
-
-#: lib/RT/Attribute_Overlay.pm:146
-#. ('Object')
-msgid "Required parameter '%1' not specified"
-msgstr "未指定必è¦çš„åƒæ•¸ã€Œ%1ã€"
-
-#: html/Elements/Submit:104
-msgid "Reset"
-msgstr "é‡è¨­"
-
-#: html/Admin/Users/Modify.html:183 html/User/Prefs.html:85
-msgid "Residence"
-msgstr "ä½è™•"
-
-#: NOT FOUND IN SOURCE
-msgid "Resolution"
-msgstr "解決狀態"
-
-#: html/Ticket/Elements/Tabs:155
-msgid "Resolve"
-msgstr "解決"
-
-#: html/Ticket/Update.html:154
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Resolve ticket #%1 (%2)"
-msgstr "解決申請單 #%1 (%2)"
-
-#: etc/initialdata:323 html/Elements/SelectDateType:49 lib/RT/Ticket_Overlay.pm:1148
-msgid "Resolved"
-msgstr "已解決"
-
-#: NOT FOUND IN SOURCE
-msgid "Response to requestors"
-msgstr "回覆申請人"
-
-#: NOT FOUND IN SOURCE
-msgid "Responsibility Type"
-msgstr "責任å€åˆ†"
-
-#: html/Elements/ListActions:47 html/Search/Elements/NewListActions:47
-msgid "Results"
-msgstr "çµæžœ"
-
-#: NOT FOUND IN SOURCE
-msgid "Results per page"
-msgstr "æ¯é åˆ—出幾筆çµæžœ"
-
-#: html/Admin/Users/Modify.html:126 html/User/Prefs.html:116
-msgid "Retype Password"
-msgstr "å†æ¬¡è¼¸å…¥å¯†ç¢¼"
-
-#: html/Search/Elements/EditSearches:61
-msgid "Revert"
-msgstr "復原"
-
-#: NOT FOUND IN SOURCE
-msgid "Right %1 not found for %2 %3 in scope %4 (%5)\\n"
-msgstr "在 %4 (%5) 的範åœå…§æ‰¾ä¸åˆ° %2 %3 çš„ %1 權é™\\n"
-
-#: lib/RT/ACE_Overlay.pm:631
-msgid "Right Delegated"
-msgstr "權é™ä»£ç†å®Œç•¢"
-
-#: lib/RT/ACE_Overlay.pm:321
-msgid "Right Granted"
-msgstr "權é™è¨­å®šå®Œç•¢"
-
-#: lib/RT/ACE_Overlay.pm:179
-msgid "Right Loaded"
-msgstr "權é™è¼‰å…¥å®Œç•¢"
-
-#: lib/RT/ACE_Overlay.pm:696 lib/RT/ACE_Overlay.pm:717
-msgid "Right could not be revoked"
-msgstr "無法撤消權é™"
-
-#: html/User/Delegation.html:85
-msgid "Right not found"
-msgstr "找ä¸åˆ°æ¬Šé™"
-
-#: lib/RT/ACE_Overlay.pm:561 lib/RT/ACE_Overlay.pm:656
-msgid "Right not loaded."
-msgstr "權é™ä¸¦æœªè¼‰å…¥ã€‚"
-
-#: lib/RT/ACE_Overlay.pm:713
-msgid "Right revoked"
-msgstr "權é™æ’¤æ¶ˆå®Œç•¢"
-
-#: html/Admin/Elements/UserTabs:67
-msgid "Rights"
-msgstr "權é™åŠä»£ç†äºº"
-
-#: html/Admin/CustomFields/GroupRights.html:129 lib/RT/Interface/Web.pm:901
-#. ($object_type)
-msgid "Rights could not be granted for %1"
-msgstr "無法將權é™è³¦äºˆ %1"
-
-#: html/Admin/CustomFields/GroupRights.html:156 lib/RT/Interface/Web.pm:930
-#. ($object_type)
-msgid "Rights could not be revoked for %1"
-msgstr "無法撤消 %1 的權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "Role Members"
-msgstr "角色æˆå“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Role Name"
-msgstr "角色å稱"
-
-#: html/Admin/Global/GroupRights.html:72 html/Admin/Queues/GroupRights.html:74
-msgid "Roles"
-msgstr "角色"
-
-#: NOT FOUND IN SOURCE
-msgid "RootApproval"
-msgstr "交由系統管ç†å“¡ç°½æ ¸"
-
-#: html/Search/Elements/DisplayOptions:83
-msgid "Rows per page"
-msgstr "æ¯é ç­†æ•¸"
-
-#: NOT FOUND IN SOURCE
-msgid "Run Approval"
-msgstr "簽核執行"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPDebug"
-msgstr "SMTP åµéŒ¯ç´€éŒ„"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPFrom"
-msgstr "SMTP 寄件ä½å€"
-
-#: NOT FOUND IN SOURCE
-msgid "SMTPServer"
-msgstr "SMTP 伺æœå™¨"
-
-#: NOT FOUND IN SOURCE
-msgid "Sat"
-msgstr "星期六"
-
-#: lib/RT/Date.pm:418
-msgid "Sat."
-msgstr "星期六"
-
-#: html/Search/Elements/EditSearches:70
-msgid "Save"
-msgstr "儲存"
-
-#: html/Admin/Global/Template.html:67 html/Admin/Groups/Modify.html:88 html/Admin/Queues/Modify.html:111 html/Admin/Queues/People.html:126 html/Admin/Users/Modify.html:238 html/SelfService/Prefs.html:58 html/Ticket/Modify.html:60 html/Ticket/ModifyAll.html:127 html/Ticket/ModifyDates.html:60 html/Ticket/ModifyLinks.html:60 html/Ticket/ModifyPeople.html:59 html/User/Groups/Modify.html:77
-msgid "Save Changes"
-msgstr "儲存更改"
-
-#: html/User/Prefs.html:179
-msgid "Save Preferences"
-msgstr "儲存å好"
-
-#: html/Ticket/Elements/PreviewScrips:124
-msgid "Save changes"
-msgstr "儲存更改"
-
-#: lib/RT/SavedSearch.pm:162
-#. ($name)
-msgid "Saved search %1"
-msgstr ""
-
-#: html/Search/Elements/EditSearches:46
-msgid "Saved searches"
-msgstr "已儲存的查詢"
-
-#: html/Admin/Elements/ListGlobalScrips:61 html/Admin/Global/Scrip.html:70 html/Admin/Queues/Scrip.html:76
-#. ($scrip->Id)
-#. ($id)
-#. ($ARGS{'id'})
-msgid "Scrip #%1"
-msgstr "手續 #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Action"
-msgstr "訊æ¯é€šçŸ¥å‹•ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Condition"
-msgstr "訊æ¯é€šçŸ¥æ¢ä»¶"
-
-#: lib/RT/Scrip_Overlay.pm:205
-msgid "Scrip Created"
-msgstr "手續新增完畢"
-
-#: html/Admin/Elements/EditScrip:52
-msgid "Scrip Fields"
-msgstr "手續欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrip Name"
-msgstr "訊æ¯å稱"
-
-#: html/Admin/Elements/EditScrips:107
-msgid "Scrip deleted"
-msgstr "手續刪除完畢"
-
-#: html/Admin/Elements/QueueTabs:67 html/Admin/Elements/SystemTabs:54 html/Admin/Global/index.html:62
-msgid "Scrips"
-msgstr "手續"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips "
-msgstr "訊æ¯é€šçŸ¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Scrips for %1\\n"
-msgstr "%1 的手續\\n"
-
-#: html/Admin/Queues/Scrips.html:55
-msgid "Scrips which apply to all queues"
-msgstr "é©ç”¨æ–¼æ‰€æœ‰è¡¨å–®çš„手續"
-
-#: html/Elements/SimpleSearch:48 html/Search/Build.html:112
-msgid "Search"
-msgstr "查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Search Criteria"
-msgstr "查詢æ¢ä»¶"
-
-#: lib/RT/SavedSearch.pm:116
-msgid "Search attribute load failure"
-msgstr ""
-
-#: html/Approvals/Elements/PendingMyApproval:60
-msgid "Search for approvals"
-msgstr "簽核單查詢"
-
-#: lib/RT/SavedSearch.pm:194
-#. ($msg)
-msgid "Search update: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Searches can't be associated with that kind of object"
-msgstr "ä¸èƒ½å°æ­¤é¡žç‰©ä»¶é€²è¡ŒæŸ¥è©¢"
-
-#: NOT FOUND IN SOURCE
-msgid "Second-"
-msgstr "二"
-
-#: NOT FOUND IN SOURCE
-msgid "Second-level Users"
-msgstr "二階主管員工"
-
-#: bin/rt-crontool:213
-msgid "Security:"
-msgstr "安全性:"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "See custom fields"
-msgstr "查閱自訂欄ä½"
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "See exact outgoing email messages and their recipeients"
-msgstr "查閱é€å‡ºçš„é›»å­éƒµä»¶åŠæ”¶ä»¶äºº"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "See ticket private commentary"
-msgstr "查閱申請單內的ç§äººè©•è«–"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "See ticket summaries"
-msgstr "查閱申請單總覽"
-
-#: lib/RT/CustomField_Overlay.pm:100
-msgid "SeeCustomField"
-msgstr "查閱自訂欄ä½"
-
-#: lib/RT/Group_Overlay.pm:177
-msgid "SeeGroup"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:92
-msgid "SeeQueue"
-msgstr "查閱表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Select"
-msgstr "é¸æ“‡"
-
-#: NOT FOUND IN SOURCE
-msgid "Select All"
-msgstr "å…¨é¸"
-
-#: html/Admin/CustomFields/index.html:46 html/Admin/CustomFields/index.html:49
-msgid "Select a Custom Field"
-msgstr "é¸æ“‡è‡ªè¨‚欄ä½"
-
-#: html/Admin/Groups/index.html:78
-msgid "Select a group"
-msgstr "é¸æ“‡ç¾¤çµ„"
-
-#: html/Admin/Queues/index.html:54
-msgid "Select a queue"
-msgstr "é¸æ“‡è¡¨å–®"
-
-#: html/SelfService/CreateTicketInQueue.html:48
-msgid "Select a queue for your new ticket"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Select a queue to link to"
-msgstr "è«‹é¸æ“‡æ¬²é€£çµè¡¨å–®"
-
-#: html/Admin/Users/index.html:46 html/Admin/Users/index.html:49 html/Admin/Users/index.html:52
-msgid "Select a user"
-msgstr "é¸æ“‡ä½¿ç”¨è€…"
-
-#: html/Admin/Elements/CustomFieldTabs:90
-msgid "Select custom field"
-msgstr "é¸æ“‡è‡ªè¨‚欄ä½"
-
-#: html/Admin/Global/CustomFields/index.html:70
-msgid "Select custom fields for all user groups"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:65
-msgid "Select custom fields for all users"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:76
-msgid "Select custom fields for tickets in all queues"
-msgstr ""
-
-#: html/Admin/Global/CustomFields/index.html:83
-msgid "Select custom fields for transactions on tickets in all queues"
-msgstr ""
-
-#: html/Admin/Elements/GroupTabs:75 html/User/Elements/GroupTabs:71
-msgid "Select group"
-msgstr "é¸æ“‡ç¾¤çµ„"
-
-#: lib/RT/CustomField_Overlay.pm:59
-msgid "Select multiple values"
-msgstr "é¸æ“‡å¤šé‡é …ç›®"
-
-#: lib/RT/CustomField_Overlay.pm:60
-msgid "Select one value"
-msgstr "é¸æ“‡å–®ä¸€é …ç›®"
-
-#: html/Admin/Elements/QueueTabs:92
-msgid "Select queue"
-msgstr "é¸æ“‡è¡¨å–®"
-
-#: html/Admin/Global/Scrip.html:58 html/Admin/Global/Scrips.html:57 html/Admin/Queues/Scrip.html:61 html/Admin/Queues/Scrips.html:73
-msgid "Select scrip"
-msgstr "é¸æ“‡æ‰‹çºŒ"
-
-#: html/Admin/Global/Template.html:78 html/Admin/Global/Templates.html:57 html/Admin/Queues/Template.html:76 html/Admin/Queues/Templates.html:68
-msgid "Select template"
-msgstr "é¸æ“‡ç¯„本"
-
-#: lib/RT/CustomField_Overlay.pm:61
-msgid "Select up to %1 values"
-msgstr "é¸æ“‡æœ€å¤š %1 個值"
-
-#: html/Admin/Elements/UserTabs:75
-msgid "Select user"
-msgstr "é¸æ“‡ä½¿ç”¨è€…"
-
-#: NOT FOUND IN SOURCE
-msgid "Select workflow"
-msgstr "é¸æ“‡æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectExternal"
-msgstr "系統é¸é …"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectMultiple"
-msgstr "多é‡é¸é …"
-
-#: NOT FOUND IN SOURCE
-msgid "SelectSingle"
-msgstr "單一é¸é …"
-
-#: html/Admin/Elements/EditCustomFields:58
-msgid "Selected Custom Fields"
-msgstr "å·²é¸å–的自訂欄ä½"
-
-#: html/Admin/CustomFields/Objects.html:59
-msgid "Selected objects"
-msgstr "å·²é¸å–的物件"
-
-#: NOT FOUND IN SOURCE
-msgid "Selected users:"
-msgstr "新增å°è±¡ï¼š"
-
-#: NOT FOUND IN SOURCE
-msgid "Self Service"
-msgstr "自助æœå‹™"
-
-#: etc/initialdata:121
-msgid "Send mail to all watchers"
-msgstr "寄信給所有視察員"
-
-#: etc/initialdata:117
-msgid "Send mail to all watchers as a \"comment\""
-msgstr "以評論方å¼å¯„信給所有視察員"
-
-#: etc/initialdata:112
-msgid "Send mail to requestors and Ccs"
-msgstr "寄信給申請人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:107
-msgid "Send mail to requestors and Ccs as a comment"
-msgstr "以評論方å¼å¯„信給申請人åŠå‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:78
-msgid "Sends a message to the requestors"
-msgstr "寄信給申請人"
-
-#: etc/initialdata:125 etc/initialdata:129
-msgid "Sends mail to explicitly listed Ccs and Bccs"
-msgstr "寄信給特定的副本åŠå¯†ä»¶å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:94 etc/upgrade/3.1.17/content:7
-msgid "Sends mail to the Ccs"
-msgstr "寄信給副本收件人"
-
-#: etc/initialdata:90 etc/upgrade/3.1.17/content:3
-msgid "Sends mail to the Ccs as a comment"
-msgstr "以評論方å¼å¯„信給副本收件人"
-
-#: etc/initialdata:102
-msgid "Sends mail to the administrative Ccs"
-msgstr "寄信給管ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:98
-msgid "Sends mail to the administrative Ccs as a comment"
-msgstr "以評論寄信給管ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:82 etc/initialdata:86
-msgid "Sends mail to the owner"
-msgstr "寄信給申請人"
-
-#: NOT FOUND IN SOURCE
-msgid "Sep"
-msgstr "ä¹æœˆ"
-
-#: lib/RT/Date.pm:445
-msgid "Sep."
-msgstr "09"
-
-#: NOT FOUND IN SOURCE
-msgid "September"
-msgstr "ä¹æœˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "Setting %1's 'Disabled' property to %2"
-msgstr "%1 的「åœç”¨ã€å±¬æ€§å·²è¨­ç‚º %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Shift Type"
-msgstr "ç­åˆ¥å±¬æ€§"
-
-#: html/Ticket/Elements/ShowTransaction:150
-msgid "Show"
-msgstr "顯示"
-
-#: html/Approvals/index.html:52
-msgid "Show Approvals"
-msgstr "顯示待簽核申請單"
-
-#: html/Search/Elements/EditFormat:56
-msgid "Show Columns"
-msgstr "顯示欄ä½"
-
-#: html/Ticket/Elements/Tabs:201
-msgid "Show Results"
-msgstr "顯示çµæžœ"
-
-#: html/Approvals/Elements/PendingMyApproval:65
-msgid "Show approved requests"
-msgstr "顯示已批准的簽核單"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show basics"
-msgstr "顯示基本資訊"
-
-#: html/Approvals/Elements/PendingMyApproval:66
-msgid "Show denied requests"
-msgstr "顯示已é§å›žçš„簽核單"
-
-#: html/Ticket/Create.html:174 html/Ticket/Create.html:55
-msgid "Show details"
-msgstr "顯示細節"
-
-#: html/Approvals/Elements/PendingMyApproval:64
-msgid "Show pending requests"
-msgstr "顯示待處ç†çš„簽核單"
-
-#: html/Approvals/Elements/PendingMyApproval:67
-msgid "Show requests awaiting other approvals"
-msgstr "顯示尚待他人批准的簽核單"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket private commentary"
-msgstr "顯示申請單內的ç§äººè©•è«–"
-
-#: NOT FOUND IN SOURCE
-msgid "Show ticket summaries"
-msgstr "顯示申請單摘è¦"
-
-#: lib/RT/Queue_Overlay.pm:94
-msgid "ShowACL"
-msgstr "顯示權é™æ¸…å–®"
-
-#: lib/RT/System.pm:86
-msgid "ShowConfigTab"
-msgstr ""
-
-#: lib/RT/Queue_Overlay.pm:107
-msgid "ShowOutgoingEmail"
-msgstr "顯示寄é€éƒµä»¶"
-
-#: lib/RT/Group_Overlay.pm:176
-msgid "ShowSavedSearches"
-msgstr "顯示已儲存的查詢"
-
-#: lib/RT/Queue_Overlay.pm:103
-msgid "ShowScrips"
-msgstr "顯示手續"
-
-#: lib/RT/Queue_Overlay.pm:100
-msgid "ShowTemplate"
-msgstr "顯示範本"
-
-#: lib/RT/Queue_Overlay.pm:104
-msgid "ShowTicket"
-msgstr "顯示申請單"
-
-#: lib/RT/Queue_Overlay.pm:105
-msgid "ShowTicketComments"
-msgstr "顯示申請單的評論"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Sign up as a ticket Requestor or ticket or queue Cc"
-msgstr "登記æˆç‚ºç”³è«‹äººæˆ–副本收件人"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "Sign up as a ticket or queue AdminCc"
-msgstr "登記æˆç‚ºç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: html/Admin/Users/Modify.html:229 html/User/Prefs.html:167
-msgid "Signature"
-msgstr "ç°½å檔"
-
-#: NOT FOUND IN SOURCE
-msgid "Signed in as %1"
-msgstr "使用者:%1"
-
-#: html/Admin/Elements/SelectSingleOrMultiple:47
-msgid "Single"
-msgstr "單一"
-
-#: html/Search/Elements/EditFormat:75
-msgid "Size"
-msgstr ""
-
-#: html/Elements/Header:85
-msgid "Skip Menu"
-msgstr "ç•¥éŽé¸å–®"
-
-#: html/Search/Elements/EditFormat:78
-msgid "Small"
-msgstr ""
-
-#: html/Admin/Elements/AddCustomFieldValue:49 html/Admin/Elements/EditCustomFieldValues:54
-msgid "Sort"
-msgstr "é †åº"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort key"
-msgstr "排åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Sort results by"
-msgstr "çµæžœæŽ’åºæ–¹å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "SortOrder"
-msgstr "排åºé †åº"
-
-#: html/Admin/Elements/EditScrip:87
-msgid "Stage"
-msgstr "é—œå¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Stage Action"
-msgstr "é—œå¡é‹è¡Œå‹•ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "Stage Condition"
-msgstr "é—œå¡é‹è¡Œæ¢ä»¶"
-
-#: NOT FOUND IN SOURCE
-msgid "Stalled"
-msgstr "延宕"
-
-#: NOT FOUND IN SOURCE
-msgid "Start page"
-msgstr "首é "
-
-#: html/Elements/SelectDateType:48 html/Ticket/Elements/EditDates:53 html/Ticket/Elements/ShowDates:56
-msgid "Started"
-msgstr "實際起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Started date '%1' could not be parsed"
-msgstr "無法解讀起始日期 '%1"
-
-#: html/Elements/SelectDateType:52 html/Ticket/Create.html:196 html/Ticket/Elements/EditDates:48 html/Ticket/Elements/ShowDates:52
-msgid "Starts"
-msgstr "應起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts By"
-msgstr "應起始日"
-
-#: NOT FOUND IN SOURCE
-msgid "Starts date '%1' could not be parsed"
-msgstr "無法解讀起始日期 '%1"
-
-#: html/Admin/Users/Modify.html:162 html/User/Prefs.html:145
-msgid "State"
-msgstr "å·ž"
-
-#: html/Search/Elements/PickBasics:87 html/SelfService/Elements/MyRequests:50 html/SelfService/Update.html:57 html/Ticket/Create.html:63 html/Ticket/Elements/EditBasics:53 html/Ticket/Elements/ShowBasics:52 html/Ticket/Update.html:59 lib/RT/Ticket_Overlay.pm:1142 lib/RT/Tickets_Overlay.pm:1378
-msgid "Status"
-msgstr "ç¾æ³"
-
-#: etc/initialdata:309
-msgid "Status Change"
-msgstr "ç¾æ³æ”¹è®Šæ™‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Status changed from %1 to %2"
-msgstr "ç¾æ³å¾ž %1 改為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "StatusChange"
-msgstr "ç¾æ³æ”¹è®Šæ™‚"
-
-#: html/Ticket/Elements/Tabs:170
-msgid "Steal"
-msgstr "強制更æ›æ‰¿è¾¦äºº"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "Steal tickets"
-msgstr "強制承辦申請單"
-
-#: lib/RT/Queue_Overlay.pm:118
-msgid "StealTicket"
-msgstr "強制承辦申請單"
-
-#: lib/RT/Transaction_Overlay.pm:667
-#. ($Old->Name)
-msgid "Stolen from %1"
-msgstr "承辦人從 %1 強制更æ›"
-
-#: NOT FOUND IN SOURCE
-msgid "Stolen from %1 "
-msgstr "承辦人從 %1 å¼·åˆ¶æ›´æ› "
-
-#: html/Search/Elements/EditFormat:81
-msgid "Style"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "Subgroup"
-msgstr "å­ç¾¤çµ„"
-
-#: html/Elements/QuickCreate:52 html/Elements/SelectAttachmentField:47 html/Search/Bulk.html:154 html/SelfService/Create.html:79 html/SelfService/Elements/MyRequests:49 html/SelfService/Update.html:65 html/Ticket/Create.html:105 html/Ticket/Elements/EditBasics:48 html/Ticket/ModifyAll.html:100 html/Ticket/Update.html:80 lib/RT/Ticket_Overlay.pm:1138 lib/RT/Tickets_Overlay.pm:1460
-msgid "Subject"
-msgstr "主題"
-
-#: docs/design_docs/string-extraction-guide.txt:89 lib/RT/StyleGuide.pod:815 lib/RT/Transaction_Overlay.pm:689
-#. ($self->Data)
-msgid "Subject changed to %1"
-msgstr "標題已改為 %1"
-
-#: html/Elements/Submit:97
-msgid "Submit"
-msgstr "é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "Submit Workflow"
-msgstr "é€å‡ºæµç¨‹"
-
-#: lib/RT/Group_Overlay.pm:782
-msgid "Succeeded"
-msgstr "設定æˆåŠŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Sun"
-msgstr "星期日"
-
-#: lib/RT/Date.pm:419
-msgid "Sun."
-msgstr "星期日"
-
-#: lib/RT/System.pm:76
-msgid "SuperUser"
-msgstr "系統管ç†å“¡"
-
-#: NOT FOUND IN SOURCE
-msgid "Sync now"
-msgstr "執行åŒæ­¥"
-
-#: NOT FOUND IN SOURCE
-msgid "Sync104HRMS"
-msgstr "自動åŒæ­¥104HRMS"
-
-#: NOT FOUND IN SOURCE
-msgid "Synchronizing HRMS data. This may take a while..."
-msgstr "正在åŒæ­¥åŒ– HRMS 人事系統資料。請ç¨å¾…..."
-
-#: html/User/Elements/DelegateRights:98
-msgid "System"
-msgstr "系統"
-
-#: html/Admin/Elements/ToolTabs:54 html/Admin/Tools/Configuration.html:48
-msgid "System Configuration"
-msgstr "系統設定"
-
-#: NOT FOUND IN SOURCE
-msgid "System Defined"
-msgstr "系統定義"
-
-#: html/Admin/CustomFields/GroupRights.html:128 html/Admin/CustomFields/GroupRights.html:155 html/Admin/CustomFields/UserRights.html:128 html/Admin/CustomFields/UserRights.html:98 html/Admin/Elements/SelectRights:106 lib/RT/ACE_Overlay.pm:585 lib/RT/Interface/Web.pm:900 lib/RT/Interface/Web.pm:929
-msgid "System Error"
-msgstr "系統錯誤"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. Right not granted."
-msgstr "系統錯誤。設定權é™å¤±æ•—。"
-
-#: NOT FOUND IN SOURCE
-msgid "System Error. right not granted"
-msgstr "系統錯誤。設定權é™å¤±æ•—。"
-
-#: lib/RT/Transaction_Overlay.pm:215 lib/RT/Transaction_Overlay.pm:221
-#. ($msg)
-msgid "System Error: %1"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "System Rights"
-msgstr "系統權é™"
-
-#: html/Admin/Tools/index.html:47
-msgid "System Tools"
-msgstr "系統工具"
-
-#: lib/RT/ACE_Overlay.pm:634
-msgid "System error. Right not delegated."
-msgstr "系統錯誤。權é™ä»£ç†å¤±æ•—。"
-
-#: lib/RT/ACE_Overlay.pm:164 lib/RT/ACE_Overlay.pm:229 lib/RT/ACE_Overlay.pm:324 lib/RT/ACE_Overlay.pm:921
-msgid "System error. Right not granted."
-msgstr "系統錯誤。設定權é™å¤±æ•—。"
-
-#: NOT FOUND IN SOURCE
-msgid "System error. Unable to grant rights."
-msgstr "系統錯誤。無法設定權é™ã€‚"
-
-#: html/Admin/CustomFields/GroupRights.html:58 html/Admin/Global/GroupRights.html:56 html/Admin/Groups/GroupRights.html:58 html/Admin/Queues/GroupRights.html:57
-msgid "System groups"
-msgstr "系統群組"
-
-#: NOT FOUND IN SOURCE
-msgid "SystemInternal"
-msgstr "系統內部用"
-
-#: etc/initialdata:41 etc/initialdata:47 etc/initialdata:53
-msgid "SystemRolegroup for internal use"
-msgstr "內部使用的系統角色群組"
-
-#: lib/RT/CurrentUser.pm:358
-msgid "TEST_STRING"
-msgstr "TEST_STRING"
-
-#: NOT FOUND IN SOURCE
-msgid "TabbedUI"
-msgstr "é ç±¤ä»‹é¢"
-
-#: html/Elements/MyRequests:50 html/Search/Elements/EditFormat:72 html/Ticket/Elements/Tabs:166
-msgid "Take"
-msgstr "å—ç†"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "Take tickets"
-msgstr "自行承辦申請單"
-
-#: lib/RT/Queue_Overlay.pm:116
-msgid "TakeTicket"
-msgstr "自行承辦申請單"
-
-#: lib/RT/Transaction_Overlay.pm:652
-msgid "Taken"
-msgstr "å·²å—ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Task"
-msgstr "工作事項"
-
-#: html/Admin/Elements/EditScrip:79 html/Tools/Offline.html:78
-msgid "Template"
-msgstr "範本"
-
-#: html/Admin/Global/Template.html:112 html/Admin/Queues/Template.html:113
-#. ($TemplateObj->Id())
-msgid "Template #%1"
-msgstr "範本 #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Content"
-msgstr "通知範本內容"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Description"
-msgstr "通知範本æè¿°"
-
-#: NOT FOUND IN SOURCE
-msgid "Template Name"
-msgstr "通知範本å稱"
-
-#: html/Admin/Elements/EditTemplates:110
-msgid "Template deleted"
-msgstr "範本已刪除"
-
-#: lib/RT/Scrip_Overlay.pm:181
-msgid "Template not found"
-msgstr "找ä¸åˆ°ç¯„本"
-
-#: NOT FOUND IN SOURCE
-msgid "Template not found\\n"
-msgstr "找ä¸åˆ°ç¯„本\\n"
-
-#: lib/RT/Template_Overlay.pm:376
-msgid "Template parsed"
-msgstr "範本剖æžå®Œç•¢"
-
-#: html/Admin/Elements/QueueTabs:70 html/Admin/Elements/SystemTabs:57 html/Admin/Global/index.html:66
-msgid "Templates"
-msgstr "範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates "
-msgstr "通知範本"
-
-#: NOT FOUND IN SOURCE
-msgid "Templates for %1\\n"
-msgstr "找ä¸åˆ° %1 的範本\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "Text"
-msgstr "文字"
-
-#: lib/RT/CustomField_Overlay.pm:877 lib/RT/Record.pm:931
-msgid "That is already the current value"
-msgstr "已經是目å‰æ¬„ä½çš„值"
-
-#: lib/RT/CustomField_Overlay.pm:407
-msgid "That is not a value for this custom field"
-msgstr "這ä¸æ˜¯è©²è‡ªè¨‚欄ä½çš„值"
-
-#: lib/RT/Ticket_Overlay.pm:1955
-msgid "That is the same value"
-msgstr "åŒæ¨£çš„值"
-
-#: lib/RT/ACE_Overlay.pm:306 lib/RT/ACE_Overlay.pm:615
-msgid "That principal already has that right"
-msgstr "這項單ä½å·²ç¶“æ“有該權é™"
-
-#: lib/RT/Queue_Overlay.pm:750
-#. ($args{'Type'})
-msgid "That principal is already a %1 for this queue"
-msgstr "這項單ä½å·²ç¶“是這個表單的 %1"
-
-#: lib/RT/Ticket_Overlay.pm:1396
-#. ($self->loc($args{'Type'}))
-msgid "That principal is already a %1 for this ticket"
-msgstr "這項單ä½å·²ç¶“是這份申請單的 %1"
-
-#: lib/RT/Queue_Overlay.pm:849
-#. ($args{'Type'})
-msgid "That principal is not a %1 for this queue"
-msgstr "這項單ä½ä¸æ˜¯é€™å€‹è¡¨å–®çš„ %1"
-
-#: NOT FOUND IN SOURCE
-msgid "That principal is not a %1 for this ticket"
-msgstr "這項單ä½ä¸æ˜¯é€™ä»½ç”³è«‹å–®çš„ %1"
-
-#: lib/RT/Ticket_Overlay.pm:1951
-msgid "That queue does not exist"
-msgstr "此表單ä¸å­˜åœ¨"
-
-#: lib/RT/Ticket_Overlay.pm:3189
-msgid "That ticket has unresolved dependencies"
-msgstr "這份申請單有尚未解決的附屬申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "That user already has that right"
-msgstr "使用者已具有該項權é™"
-
-#: lib/RT/Ticket_Overlay.pm:2993
-msgid "That user already owns that ticket"
-msgstr "該使用者已經承辦這份申請單"
-
-#: lib/RT/Ticket_Overlay.pm:2965
-msgid "That user does not exist"
-msgstr "使用者ä¸å­˜åœ¨"
-
-#: lib/RT/User_Overlay.pm:390
-msgid "That user is already privileged"
-msgstr "這å使用者已經是內部æˆå“¡"
-
-#: lib/RT/User_Overlay.pm:411
-msgid "That user is already unprivileged"
-msgstr "這å使用者屬於éžå…§éƒ¨æˆå“¡ç¾¤çµ„"
-
-#: lib/RT/User_Overlay.pm:403
-msgid "That user is now privileged"
-msgstr "使用者加入內部æˆå“¡ç¾¤çµ„完畢"
-
-#: lib/RT/User_Overlay.pm:424
-msgid "That user is now unprivileged"
-msgstr "這å使用者已加入éžå…§éƒ¨æˆå“¡ç¾¤çµ„"
-
-#: NOT FOUND IN SOURCE
-msgid "That user is now unprivilegedileged"
-msgstr "這å使用者已加入éžå…§éƒ¨æˆå“¡ç¾¤çµ„"
-
-#: lib/RT/Ticket_Overlay.pm:2986
-msgid "That user may not own tickets in that queue"
-msgstr "使用者å¯èƒ½æ²’有承辦表單裡的申請單"
-
-#: lib/RT/Link_Overlay.pm:234
-msgid "That's not a numerical id"
-msgstr "這ä¸æ˜¯ä¸€å€‹æ•¸å­—編號"
-
-#: html/SelfService/Display.html:53 html/Ticket/Create.html:180 html/Ticket/Elements/ShowSummary:49
-msgid "The Basics"
-msgstr "基本資訊"
-
-#: lib/RT/ACE_Overlay.pm:113
-msgid "The CC of a ticket"
-msgstr "申請單的副本收件人"
-
-#: lib/RT/ACE_Overlay.pm:114
-msgid "The administrative CC of a ticket"
-msgstr "申請單的管ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: NOT FOUND IN SOURCE
-msgid "The comment has been recorded"
-msgstr "評論已被紀錄"
-
-#: bin/rt-crontool:223
-msgid "The following command will find all active tickets in the queue 'general' and set their priority to 99 if they haven't been touched in 4 hours:"
-msgstr "下列命令會找到 'general' 表單內所有é‹ä½œä¸­çš„申請單,並將其中 4 å°æ™‚內未處ç†çš„申請單優先程度設為 99:"
-
-#: NOT FOUND IN SOURCE
-msgid "The following commands were not proccessed:\\n\\n"
-msgstr "以下命令未被執行:\\n\\n"
-
-#: lib/RT/Record.pm:934
-msgid "The new value has been set."
-msgstr "新的欄ä½å€¼è¨­å®šå®Œæˆã€‚"
-
-#: lib/RT/ACE_Overlay.pm:111
-msgid "The owner of a ticket"
-msgstr "申請單的承辦人"
-
-#: lib/RT/ACE_Overlay.pm:112
-msgid "The requestor of a ticket"
-msgstr "申請單的申請人"
-
-#: html/Admin/Elements/EditUserComments:47
-msgid "These comments aren't generally visible to the user"
-msgstr "該使用者ä¸æœƒçœ‹è¦‹é€™äº›è©•è«–"
-
-#: NOT FOUND IN SOURCE
-msgid "Third-"
-msgstr "三"
-
-#: lib/RT/CustomField_Overlay.pm:912
-msgid "This custom field does not apply to that object"
-msgstr "此自訂欄ä½ä¸é©ç”¨æ–¼è©²ç‰©ä»¶"
-
-#: html/Admin/Tools/Configuration.html:50
-msgid "This feature is only available to system administrators"
-msgstr "此項功能僅é™ç³»çµ±ç®¡ç†å“¡ä½¿ç”¨"
-
-#: html/Ticket/Elements/PreviewScrips:93
-msgid "This message will be sent to..."
-msgstr "此訊æ¯æœƒå¯„給..."
-
-#: NOT FOUND IN SOURCE
-msgid "This ticket %1 %2 (%3)\\n"
-msgstr "申請單 %1 %2 (%3)\\n"
-
-#: bin/rt-crontool:214
-msgid "This tool allows the user to run arbitrary perl modules from within RT."
-msgstr "此工具程å¼æœƒè®“使用者經由 RT 執行任æ„命令。"
-
-#: lib/RT/Transaction_Overlay.pm:288
-msgid "This transaction appears to have no content"
-msgstr "此項更動報告沒有內容"
-
-#: html/Ticket/Elements/ShowRequestor:70
-#. ($rows)
-msgid "This user's %1 highest priority tickets"
-msgstr "使用者é€å‡ºçš„å‰ %1 份優先處ç†ç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "This user's 25 highest priority tickets"
-msgstr "使用者é€å‡ºçš„å‰ 25 份優先處ç†ç”³è«‹å–®"
-
-#: NOT FOUND IN SOURCE
-msgid "Thu"
-msgstr "星期四"
-
-#: lib/RT/Date.pm:416
-msgid "Thu."
-msgstr "星期四"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket"
-msgstr "申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 %2"
-msgstr "申請單 # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket # %1 Jumbo update: %2"
-msgstr "更新申請單 # %1 的全部資訊:%2"
-
-#: html/Ticket/ModifyAll.html:46 html/Ticket/ModifyAll.html:50
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket #%1 Jumbo update: %2"
-msgstr "更新申請單 #%1 的全部資訊:%2"
-
-#: html/Approvals/Elements/ShowDependency:67
-#. ($link->BaseObj->Id, $link->BaseObj->Subject)
-msgid "Ticket #%1: %2"
-msgstr "申請單 #%1: %2"
-
-#: lib/RT/Action/CreateTickets.pm:1258 lib/RT/Action/CreateTickets.pm:1267 lib/RT/Action/CreateTickets.pm:595 lib/RT/Action/CreateTickets.pm:716 lib/RT/Action/CreateTickets.pm:729
-#. ($T::Tickets{$template_id}->Id)
-#. ($T::Tickets{$template_id}->id)
-#. ($ticket->Id)
-msgid "Ticket %1"
-msgstr "申請單 %1"
-
-#: lib/RT/Ticket_Overlay.pm:731 lib/RT/Ticket_Overlay.pm:751
-#. ($self->Id, $QueueObj->Name)
-msgid "Ticket %1 created in queue '%2'"
-msgstr "申請單 #%1 æˆåŠŸæ–°å¢žæ–¼ '%2' 表單"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket %1 loaded\\n"
-msgstr "載入申請單 %1\\n"
-
-#: html/Search/Bulk.html:269
-#. ($Ticket->Id,$_)
-msgid "Ticket %1: %2"
-msgstr "申請單 %1:%2"
-
-#: html/Admin/Elements/QueueTabs:74
-msgid "Ticket Custom Fields"
-msgstr "申請單的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Due"
-msgstr "表單處ç†æœŸé™"
-
-#: html/Ticket/History.html:46 html/Ticket/History.html:49
-#. ($Ticket->Id, $Ticket->Subject)
-msgid "Ticket History # %1 %2"
-msgstr "申請單處ç†ç´€éŒ„ # %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket ID"
-msgstr "單號"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Id"
-msgstr "申請單編號"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Processing Due"
-msgstr "表單é‹è¡ŒæœŸé™"
-
-#: etc/initialdata:324
-msgid "Ticket Resolved"
-msgstr "申請單已解決"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:69 html/Admin/Global/CustomFields/index.html:81 lib/RT/CustomField_Overlay.pm:1085
-msgid "Ticket Transactions"
-msgstr "申請單的更動"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket Type"
-msgstr "表單種類"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket attachment"
-msgstr "申請單附件"
-
-#: lib/RT/Tickets_Overlay.pm:1648
-msgid "Ticket content"
-msgstr "申請單內容"
-
-#: lib/RT/Tickets_Overlay.pm:1697
-msgid "Ticket content type"
-msgstr "申請單內容類別"
-
-#: lib/RT/Ticket_Overlay.pm:593 lib/RT/Ticket_Overlay.pm:607 lib/RT/Ticket_Overlay.pm:618 lib/RT/Ticket_Overlay.pm:739
-msgid "Ticket could not be created due to an internal error"
-msgstr "內部錯誤,無法新增申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket created"
-msgstr "申請單新增完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket creation failed"
-msgstr "申請單新增失敗"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket deleted"
-msgstr "申請單刪除完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket id not found"
-msgstr "找ä¸åˆ°ç”³è«‹å–®ç·¨è™Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket killed"
-msgstr "申請單刪除完畢"
-
-#: html/Ticket/Display.html:55
-msgid "Ticket metadata"
-msgstr "申請單的æ述資訊"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket not found"
-msgstr "找ä¸åˆ°ç”³è«‹å–®"
-
-#: etc/initialdata:310
-msgid "Ticket status changed"
-msgstr "申請單ç¾æ³å·²æ”¹è®Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Ticket watchers"
-msgstr "申請單視察員"
-
-#: lib/RT/Search/FromSQL.pm:83
-#. (ref $self)
-msgid "TicketSQL search module"
-msgstr ""
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:64 html/Admin/Global/CustomFields/index.html:75 html/Elements/Tabs:68 lib/RT/CustomField_Overlay.pm:1084
-msgid "Tickets"
-msgstr "申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 %2"
-msgstr "申請單 %1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets %1 by %2"
-msgstr "申請單 %1 (%2)"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets I own"
-msgstr "待處ç†çš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets I requested"
-msgstr "é€å‡ºçš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Tickets from %1"
-msgstr "%1 的申請單"
-
-#: html/Approvals/Elements/ShowDependency:48
-msgid "Tickets which depend on this approval:"
-msgstr "批准之後,å¯æŽ¥çºŒè™•ç†ï¼š"
-
-#: html/Search/Elements/PickBasics:148 html/Ticket/Elements/EditBasics:61
-msgid "Time Estimated"
-msgstr "é è¨ˆæ™‚é–“"
-
-#: html/Search/Elements/PickBasics:149 html/Ticket/Create.html:187 html/Ticket/Elements/EditBasics:69
-msgid "Time Left"
-msgstr "剩餘時間"
-
-#: html/Search/Elements/PickBasics:147 html/Ticket/Create.html:186 html/Ticket/Elements/EditBasics:65
-msgid "Time Worked"
-msgstr "處ç†æ™‚é–“"
-
-#: lib/RT/Tickets_Overlay.pm:1619
-msgid "Time left"
-msgstr "剩餘時間"
-
-#: html/Elements/Footer:71
-msgid "Time to display"
-msgstr "顯示時間"
-
-#: lib/RT/Tickets_Overlay.pm:1594
-msgid "Time worked"
-msgstr "已處ç†æ™‚é–“"
-
-#: NOT FOUND IN SOURCE
-msgid "TimeLeft"
-msgstr "剩餘時間"
-
-#: lib/RT/Ticket_Overlay.pm:1143
-msgid "TimeWorked"
-msgstr "已處ç†æ™‚é–“"
-
-#: html/Search/Elements/EditFormat:74
-msgid "Title"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:"
-msgstr "產生這次更動的差異檔:"
-
-#: NOT FOUND IN SOURCE
-msgid "To generate a diff of this commit:\\n"
-msgstr "產生這次更動的差異檔:\\n"
-
-#: html/Elements/Footer:61
-#. ('<a href="mailto:sales@bestpractical.com">sales@bestpractical.com</a>')
-msgid "To inquire about support, training, custom development or licensing, please contact %1."
-msgstr "如果有支æ´ã€æ•™è‚²è¨“ç·´åŠå®šè£½é–‹ç™¼çš„需è¦ï¼Œè«‹é€£çµ¡ %1。"
-
-#: NOT FOUND IN SOURCE
-msgid "Todo"
-msgstr "待辦事項"
-
-#: lib/RT/Ticket_Overlay.pm:1146
-msgid "Told"
-msgstr "告知日期"
-
-#: html/Admin/Elements/Tabs:68 html/Admin/index.html:88 html/Elements/Tabs:71
-msgid "Tools"
-msgstr "工具"
-
-#: NOT FOUND IN SOURCE
-msgid "Total"
-msgstr "é "
-
-#: etc/initialdata:252
-msgid "Transaction"
-msgstr "æ›´å‹•"
-
-#: lib/RT/Transaction_Overlay.pm:794
-#. ($self->Data)
-msgid "Transaction %1 purged"
-msgstr "清除更動報告 %1"
-
-#: lib/RT/Transaction_Overlay.pm:174
-msgid "Transaction Created"
-msgstr "更動報告已新增"
-
-#: html/Admin/Elements/QueueTabs:78
-msgid "Transaction Custom Fields"
-msgstr "更動的自訂欄ä½"
-
-#: NOT FOUND IN SOURCE
-msgid "Transaction->Create couldn't, as you didn't specify a ticket id"
-msgstr "未指定申請單編號,無法新增更動"
-
-#: lib/RT/Transaction_Overlay.pm:125
-msgid "Transaction->Create couldn't, as you didn't specify an object type and id"
-msgstr "未指定物件類別åŠç·¨è™Ÿï¼Œç„¡æ³•æ–°å¢žæ›´å‹•"
-
-#: NOT FOUND IN SOURCE
-msgid "TransactionBatch"
-msgstr "批次更動時"
-
-#: NOT FOUND IN SOURCE
-msgid "TransactionCreate"
-msgstr "新增更動時"
-
-#: lib/RT/Transaction_Overlay.pm:838
-msgid "Transactions are immutable"
-msgstr "ä¸å¯æ›´æ”¹æ›´å‹•å ±å‘Š"
-
-#: NOT FOUND IN SOURCE
-msgid "Transfer to"
-msgstr "移交給"
-
-#: NOT FOUND IN SOURCE
-msgid "Trying to delete a right: %1"
-msgstr "試圖刪除æŸé …權é™ï¼š%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Tue"
-msgstr "星期二"
-
-#: lib/RT/Date.pm:414
-msgid "Tue."
-msgstr "星期二"
-
-#: html/Admin/CustomFields/Modify.html:66 html/Admin/Elements/EditCustomField:65 html/Ticket/Elements/AddWatchers:54 html/Ticket/Elements/AddWatchers:65 html/Ticket/Elements/AddWatchers:75 lib/RT/Ticket_Overlay.pm:1144 lib/RT/Tickets_Overlay.pm:1432
-msgid "Type"
-msgstr "類別"
-
-#: lib/RT/ScripCondition_Overlay.pm:129
-msgid "Unimplemented"
-msgstr "尚無實作"
-
-#: html/Admin/Users/Modify.html:89
-msgid "Unix login"
-msgstr "外部系統登入帳號"
-
-#: NOT FOUND IN SOURCE
-msgid "UnixUsername"
-msgstr "外部系統登入帳號"
-
-#: lib/RT/Attachment_Overlay.pm:290 lib/RT/Record.pm:847
-#. ($self->ContentEncoding)
-#. ($ContentEncoding)
-msgid "Unknown ContentEncoding %1"
-msgstr "ä¸å¯è§£çš„å…§å®¹æ–‡å­—ç·¨ç¢¼æ–¹å¼ %1"
-
-#: html/Search/Build.html:632
-msgid "Unknown field: $key"
-msgstr ""
-
-#: html/Elements/SelectResultsPerPage:58
-msgid "Unlimited"
-msgstr "全數顯示"
-
-#: html/Search/Elements/SelectSearchesForObjects:63
-msgid "Unnamed search"
-msgstr "未命å的查詢"
-
-#: etc/initialdata:32
-msgid "Unprivileged"
-msgstr "éžå…§éƒ¨æˆå“¡"
-
-#: html/Admin/Elements/EditCustomFields:60
-msgid "Unselected Custom Fields"
-msgstr "未é¸å–的自訂欄ä½"
-
-#: html/Admin/CustomFields/Objects.html:61
-msgid "Unselected objects"
-msgstr "未é¸å–的物件"
-
-#: lib/RT/Transaction_Overlay.pm:648
-msgid "Untaken"
-msgstr "未被å—ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "Untitled search"
-msgstr "未命å的查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "Up"
-msgstr "上一é "
-
-#: html/Search/Bulk.html:54
-msgid "Update"
-msgstr "處ç†"
-
-#: html/Search/Bulk.html:178
-msgid "Update All"
-msgstr "全部更新"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ID"
-msgstr "更新編號"
-
-#: html/Ticket/Update.html:133
-msgid "Update Ticket"
-msgstr "更新申請單"
-
-#: html/Search/Bulk.html:148 html/Ticket/ModifyAll.html:87 html/Ticket/Update.html:70
-msgid "Update Type"
-msgstr "更新類別"
-
-#: NOT FOUND IN SOURCE
-msgid "Update all these tickets at once"
-msgstr "整批更新申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Update email"
-msgstr "æ›´æ–°é›»å­éƒµä»¶ä¿¡ç®±"
-
-#: html/Search/Results.html:80
-msgid "Update multiple tickets"
-msgstr "批次更新申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Update name"
-msgstr "更新帳號"
-
-#: lib/RT/Action/CreateTickets.pm:737 lib/RT/Interface/Web.pm:524
-msgid "Update not recorded."
-msgstr "更新未被記錄"
-
-#: html/Search/Bulk.html:99
-msgid "Update selected tickets"
-msgstr "æ›´æ–°é¸æ“‡çš„申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Update signature"
-msgstr "更新簽章"
-
-#: html/Ticket/ModifyAll.html:84
-msgid "Update ticket"
-msgstr "更新申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Update ticket # %1"
-msgstr "更新申請單 # %1"
-
-#: html/SelfService/Update.html:112 html/SelfService/Update.html:47
-#. ($Ticket->id)
-msgid "Update ticket #%1"
-msgstr "更新申請單 #%1"
-
-#: html/Ticket/Update.html:156
-#. ($TicketObj->id, $TicketObj->Subject)
-msgid "Update ticket #%1 (%2)"
-msgstr "更新申請單 #%1 (%2)"
-
-#: lib/RT/Action/CreateTickets.pm:735 lib/RT/Interface/Web.pm:523
-msgid "Update type was neither correspondence nor comment."
-msgstr "更新的內容並éžç”³è«‹å–®å›žè¦†ä¹Ÿä¸æ˜¯è©•è«–"
-
-#: html/Elements/SelectDateType:54 html/Ticket/Elements/ShowDates:72 lib/RT/Ticket_Overlay.pm:1147
-msgid "Updated"
-msgstr "å‰æ¬¡æ›´æ–°"
-
-#: html/Tools/Offline.html:95
-msgid "Upload"
-msgstr "上載"
-
-#: lib/RT/CustomField_Overlay.pm:84
-msgid "Upload multiple files"
-msgstr "上載多個檔案"
-
-#: lib/RT/CustomField_Overlay.pm:79
-msgid "Upload multiple images"
-msgstr "上載多份圖片"
-
-#: lib/RT/CustomField_Overlay.pm:85
-msgid "Upload one file"
-msgstr "上載一個檔案"
-
-#: lib/RT/CustomField_Overlay.pm:80
-msgid "Upload one image"
-msgstr "上載一份圖片"
-
-#: lib/RT/CustomField_Overlay.pm:86
-msgid "Upload up to %1 files"
-msgstr "上載最多 %1 個檔案"
-
-#: lib/RT/CustomField_Overlay.pm:81
-msgid "Upload up to %1 images"
-msgstr "上載最多 %1 份圖片"
-
-#: html/Tools/Offline.html:95
-msgid "Upload your changes"
-msgstr "上載您的更動"
-
-#: html/Admin/index.html:90
-msgid "Use other RT administrative tools"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "User"
-msgstr "使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 %2: %3\\n"
-msgstr "使用者 %1 %2:%3\\n"
-
-#: NOT FOUND IN SOURCE
-msgid "User %1 Password: %2\\n"
-msgstr "使用者 %1 密碼:%2\\n"
-
-#: lib/RT/Ticket_Overlay.pm:496
-#. ($args{'Owner'})
-msgid "User '%1' could not be found."
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'。"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'"
-
-#: NOT FOUND IN SOURCE
-msgid "User '%1' not found\\n"
-msgstr "找ä¸åˆ°ä½¿ç”¨è€… '%1'\\n"
-
-#: etc/initialdata:132 etc/initialdata:206
-msgid "User Defined"
-msgstr "使用者自訂"
-
-#: html/Admin/Elements/EditScrip:98
-msgid "User Defined conditions and actions"
-msgstr "使用者自訂的æ¢ä»¶åŠå‹•ä½œ"
-
-#: NOT FOUND IN SOURCE
-msgid "User ID"
-msgstr "使用者 ID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Id"
-msgstr "使用者 ID"
-
-#: NOT FOUND IN SOURCE
-msgid "User Number"
-msgstr "員工編號"
-
-#: html/Admin/Elements/CustomFieldTabs:72 html/Admin/Elements/GroupTabs:68 html/Admin/Elements/QueueTabs:85 html/Admin/Elements/SystemTabs:68 html/Admin/Global/index.html:80
-msgid "User Rights"
-msgstr "使用者權é™"
-
-#: NOT FOUND IN SOURCE
-msgid "User Setup"
-msgstr "使用者設定"
-
-#: NOT FOUND IN SOURCE
-msgid "User Shift"
-msgstr "å“¡å·¥ç­åˆ¥"
-
-#: lib/RT/Interface/Web.pm:1283
-#. ($cf->Name, $class, $Object->id)
-msgid "User asked for an unknown update type for custom field %1 for %2 object #%3"
-msgstr "使用者試圖在 %2 物件 #%3 çš„è‡ªè¨‚æ¬„ä½ %1 上執行未知的更新æ“作"
-
-#: html/Admin/Users/Modify.html:293
-#. ($msg)
-msgid "User could not be created: %1"
-msgstr "無法新增使用者:%1"
-
-#: lib/RT/User_Overlay.pm:331
-msgid "User created"
-msgstr "使用者新增完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "User created: %1"
-msgstr "使用者 %1 新增完畢"
-
-#: NOT FOUND IN SOURCE
-msgid "User created: %1 (%2)"
-msgstr "使用者 %1 (%2) 新增完畢"
-
-#: html/Admin/CustomFields/GroupRights.html:74 html/Admin/Global/GroupRights.html:88 html/Admin/Groups/GroupRights.html:75 html/Admin/Queues/GroupRights.html:90
-msgid "User defined groups"
-msgstr "使用者定義的群組"
-
-#: lib/RT/User_Overlay.pm:593 lib/RT/User_Overlay.pm:613
-msgid "User loaded"
-msgstr "已載入使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User notified"
-msgstr "已通知使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "User renamed from %1 to %2"
-msgstr "使用者 %1 已改å為 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "User view"
-msgstr "使用者ç§äººè³‡æ–™"
-
-#: html/Admin/Groups/index.html:99
-msgid "User-defined groups"
-msgstr "使用者自定群組"
-
-#: NOT FOUND IN SOURCE
-msgid "UserDefined"
-msgstr "使用者自定"
-
-#: html/Admin/Users/Modify.html:69 html/Elements/Login:73 html/Ticket/Elements/AddWatchers:56
-msgid "Username"
-msgstr "帳號"
-
-#: html/Admin/Elements/GlobalCustomFieldTabs:55 html/Admin/Elements/SelectNewGroupMembers:47 html/Admin/Elements/Tabs:53 html/Admin/Global/CustomFields/index.html:64 html/Admin/Groups/Members.html:76 html/Admin/Queues/People.html:89 html/Admin/index.html:62 html/User/Groups/Members.html:79 lib/RT/CustomField_Overlay.pm:1086
-msgid "Users"
-msgstr "使用者"
-
-#: html/Admin/Users/index.html:85
-msgid "Users matching search criteria"
-msgstr "符åˆæŸ¥è©¢æ¢ä»¶çš„使用者"
-
-#: lib/RT/Tickets_Overlay_SQL.pm:523
-msgid "Valid Query"
-msgstr "åˆç†çš„查詢"
-
-#: NOT FOUND IN SOURCE
-msgid "ValueOfQueue"
-msgstr "é¸æ“‡è¡¨å–®"
-
-#: html/Admin/CustomFields/Modify.html:89 html/Admin/Elements/EditCustomField:78
-msgid "Values"
-msgstr "欄ä½å€¼"
-
-#: NOT FOUND IN SOURCE
-msgid "View log"
-msgstr "檢視紀錄檔"
-
-#: lib/RT/Queue_Overlay.pm:108
-msgid "Watch"
-msgstr "視察"
-
-#: lib/RT/Queue_Overlay.pm:109
-msgid "WatchAsAdminCc"
-msgstr "以管ç†å“¡å‰¯æœ¬æ”¶ä»¶äººèº«ä»½è¦–察"
-
-#: NOT FOUND IN SOURCE
-msgid "Watcher loaded"
-msgstr "æˆåŠŸè¼‰å…¥è¦–察員資訊"
-
-#: html/Admin/Elements/QueueTabs:63
-msgid "Watchers"
-msgstr "視察員"
-
-#: NOT FOUND IN SOURCE
-msgid "WebEncoding"
-msgstr "網é æ–‡å­—編碼方å¼"
-
-#: NOT FOUND IN SOURCE
-msgid "Wed"
-msgstr "星期三"
-
-#: lib/RT/Date.pm:415
-msgid "Wed."
-msgstr "星期三"
-
-#: etc/initialdata:521
-msgid "When a ticket has been approved by all approvers, add correspondence to the original ticket"
-msgstr "當申請單通éŽæ‰€æœ‰ç°½æ ¸å¾Œï¼Œå°‡æ­¤è¨Šæ¯å›žè¦†åˆ°åŽŸç”³è«‹å–®"
-
-#: etc/initialdata:485
-msgid "When a ticket has been approved by any approver, add correspondence to the original ticket"
-msgstr "當申請單通éŽæŸé …簽核後,將此訊æ¯å›žè¦†åˆ°åŽŸç”³è«‹å–®"
-
-#: etc/initialdata:146
-msgid "When a ticket is created"
-msgstr "新增申請單時"
-
-#: etc/initialdata:418
-msgid "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval"
-msgstr "簽核單新增之後,通知應å—ç†çš„承辦人åŠç®¡ç†å“¡å‰¯æœ¬æ”¶ä»¶äºº"
-
-#: etc/initialdata:151
-msgid "When anything happens"
-msgstr "當任何事情發生時"
-
-#: etc/initialdata:199
-msgid "Whenever a ticket is resolved"
-msgstr "當申請單解決時"
-
-#: etc/initialdata:185
-msgid "Whenever a ticket's owner changes"
-msgstr "當申請單更æ›æ‰¿è¾¦äººæ™‚"
-
-#: etc/initialdata:178 etc/upgrade/3.1.17/content:16
-msgid "Whenever a ticket's priority changes"
-msgstr "當申請單的優先順åºæ”¹è®Šæ™‚"
-
-#: etc/initialdata:193
-msgid "Whenever a ticket's queue changes"
-msgstr "當申請單更æ›è¡¨å–®æ™‚"
-
-#: etc/initialdata:170
-msgid "Whenever a ticket's status changes"
-msgstr "當申請單更新ç¾æ³æ™‚"
-
-#: etc/initialdata:207
-msgid "Whenever a user-defined condition occurs"
-msgstr "當使用者自訂的情æ³ç™¼ç”Ÿæ™‚"
-
-#: etc/initialdata:164
-msgid "Whenever comments come in"
-msgstr "當評論é€é”時"
-
-#: etc/initialdata:157
-msgid "Whenever correspondence comes in"
-msgstr "當回覆é€é”時"
-
-#: html/Admin/Users/Modify.html:188 html/User/Prefs.html:89
-msgid "Work"
-msgstr "å…¬å¸"
-
-#: html/Search/Results.html:84
-msgid "Work offline"
-msgstr "離線工作"
-
-#: NOT FOUND IN SOURCE
-msgid "WorkPhone"
-msgstr "å…¬å¸é›»è©±"
-
-#: html/Ticket/Elements/ShowBasics:63 html/Ticket/Update.html:64
-msgid "Worked"
-msgstr "處ç†æ™‚é–“"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow #%1"
-msgstr "æµç¨‹ #%1"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow Begin"
-msgstr "æµç¨‹é–‹å§‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow End"
-msgstr "æµç¨‹çµæŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflow deleted"
-msgstr "æµç¨‹å·²åˆªé™¤"
-
-#: NOT FOUND IN SOURCE
-msgid "Workflows"
-msgstr "æµç¨‹"
-
-#: NOT FOUND IN SOURCE
-msgid "Writable"
-msgstr "å¯è®€å¯«"
-
-#: NOT FOUND IN SOURCE
-msgid "XXX CHANGEME You are not an authorized user"
-msgstr "XXX CHANGEME 您是未經授權的使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "Yes"
-msgstr "是"
-
-#: lib/RT/Ticket_Overlay.pm:3096
-msgid "You already own this ticket"
-msgstr "您已是這份申請單的承辦人"
-
-#: html/autohandler:158 html/autohandler:166
-msgid "You are not an authorized user"
-msgstr "您ä¸æ˜¯è¢«æŽˆæ¬Šçš„使用者"
-
-#: NOT FOUND IN SOURCE
-msgid "You can access it with the Download button on the right."
-msgstr "您å¯ä»¥æŒ‰å³æ–¹çš„「下載ã€éµä¾†å–得。"
-
-#: lib/RT/Ticket_Overlay.pm:2978
-msgid "You can only reassign tickets that you own or that are unowned"
-msgstr "祇能é‡æ–°æŒ‡æ´¾æ‚¨æ‰€æ‰¿è¾¦æˆ–是沒有承辦人的申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "You don't have permission to view that ticket.\\n"
-msgstr "您沒有看那份申請單的權é™ã€‚\\n"
-
-#: docs/design_docs/string-extraction-guide.txt:47 lib/RT/StyleGuide.pod:780
-#. ($num, $queue)
-msgid "You found %1 tickets in queue %2"
-msgstr "您會在表單 %2 找到 %1 的申請單"
-
-#: html/NoAuth/Logout.html:52
-msgid "You have been logged out of RT."
-msgstr "您已登出 RT。"
-
-#: html/SelfService/Display.html:109
-msgid "You have no permission to create tickets in that queue."
-msgstr "您沒有在該表單新增申請單的權é™ã€‚"
-
-#: lib/RT/Ticket_Overlay.pm:1964
-msgid "You may not create requests in that queue."
-msgstr "您ä¸èƒ½åœ¨è©²è¡¨å–®ä¸­æ出申請。"
-
-#: NOT FOUND IN SOURCE
-msgid "You need to restart the Request Tracker service for saved changes to take effect."
-msgstr "您必須é‡æ–°å•Ÿå‹• Request Tracker æœå‹™ï¼Œå„²å­˜çš„更動纔會生效。"
-
-#: html/NoAuth/Logout.html:56
-msgid "You're welcome to login again"
-msgstr "歡迎下次å†ä¾†"
-
-#: NOT FOUND IN SOURCE
-msgid "Your %1 requests"
-msgstr "您æ出的 %1 申請單"
-
-#: NOT FOUND IN SOURCE
-msgid "Your RT administrator has misconfigured the mail aliases which invoke RT"
-msgstr "RT 管ç†å“¡å¯èƒ½è¨­éŒ¯äº†ç”± RT 寄出的郵件收件人標頭檔"
-
-#: etc/initialdata:502
-msgid "Your request has been approved by %1. Other approvals may still be pending."
-msgstr "申請單已由 %1 批准。å¯èƒ½é‚„有其他待簽核的步驟。"
-
-#: etc/initialdata:540
-msgid "Your request has been approved."
-msgstr "您的申請單已完æˆç°½æ ¸ç¨‹åºã€‚"
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected"
-msgstr "您的申請單已被é§å›ž"
-
-#: NOT FOUND IN SOURCE
-msgid "Your request was rejected by %1."
-msgstr "您的申請單已被 %1 é§å›žã€‚"
-
-#: etc/initialdata:445
-msgid "Your request was rejected."
-msgstr "您的申請單已被é§å›žã€‚"
-
-#: html/autohandler:193
-msgid "Your username or password is incorrect"
-msgstr "您的帳號或密碼有誤"
-
-#: html/Admin/Users/Modify.html:168 html/User/Prefs.html:149
-msgid "Zip"
-msgstr "郵éžå€è™Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "[no subject]"
-msgstr "[沒有標題]"
-
-#: NOT FOUND IN SOURCE
-msgid "ago"
-msgstr "éŽæœŸ"
-
-#: NOT FOUND IN SOURCE
-msgid "alert"
-msgstr "急訊"
-
-#: lib/RT/System.pm:88
-msgid "allow creation of saved searches"
-msgstr ""
-
-#: lib/RT/System.pm:87
-msgid "allow loading of saved searches"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "approving"
-msgstr "待簽核"
-
-#: html/User/Elements/DelegateRights:80
-#. ($right->PrincipalObj->Object->SelfDescription)
-msgid "as granted to %1"
-msgstr "權é™åŒ %1"
-
-#: html/Search/Elements/PickBasics:127
-msgid "belongs to"
-msgstr ""
-
-#: html/SelfService/Closed.html:49
-msgid "closed"
-msgstr "已解決"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:55
-msgid "contains"
-msgstr "包å«"
-
-#: NOT FOUND IN SOURCE
-msgid "content"
-msgstr "內容"
-
-#: NOT FOUND IN SOURCE
-msgid "content-type"
-msgstr "é¡žåž‹"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence (probably) not sent"
-msgstr "申請單回覆(å¯èƒ½)未é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "correspondence sent"
-msgstr "申請單回覆已é€å‡º"
-
-#: NOT FOUND IN SOURCE
-msgid "critical"
-msgstr "åš´é‡"
-
-#: html/Admin/Queues/Modify.html:98 lib/RT/Date.pm:342
-msgid "days"
-msgstr "天"
-
-#: NOT FOUND IN SOURCE
-msgid "dead"
-msgstr "拒絕處ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "debug"
-msgstr "åµéŒ¯"
-
-#: NOT FOUND IN SOURCE
-msgid "delete"
-msgstr "刪除"
-
-#: lib/RT/Queue_Overlay.pm:88
-msgid "deleted"
-msgstr "已刪除"
-
-#: html/Search/Elements/PickBasics:128
-msgid "does not belong to"
-msgstr ""
-
-#: html/Search/Elements/PickBasics:61
-msgid "does not match"
-msgstr "ä¸ç¬¦åˆ"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:56
-msgid "doesn't contain"
-msgstr "ä¸åŒ…å«"
-
-#: NOT FOUND IN SOURCE
-msgid "email address"
-msgstr "é›»å­éƒµä»¶ä¿¡ç®±"
-
-#: NOT FOUND IN SOURCE
-msgid "emergency"
-msgstr "å±é›£"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "equal to"
-msgstr "等於"
-
-#: NOT FOUND IN SOURCE
-msgid "error"
-msgstr "錯誤"
-
-#: html/Search/Build.html:387
-msgid "error: can't move down"
-msgstr ""
-
-#: html/Search/Build.html:409
-msgid "error: can't move left"
-msgstr ""
-
-#: html/Search/Build.html:368
-msgid "error: can't move up"
-msgstr ""
-
-#: html/Search/Build.html:451
-msgid "error: nothing to delete"
-msgstr ""
-
-#: html/Search/Build.html:373 html/Search/Build.html:392 html/Search/Build.html:414 html/Search/Build.html:443
-msgid "error: nothing to move"
-msgstr ""
-
-#: html/Search/Build.html:469
-msgid "error: nothing to toggle"
-msgstr ""
-
-#: NOT FOUND IN SOURCE
-msgid "false"
-msgstr "å‡"
-
-#: NOT FOUND IN SOURCE
-msgid "filename"
-msgstr "檔å"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "greater than"
-msgstr "大於"
-
-#: lib/RT/Group_Overlay.pm:222
-#. ($self->Name)
-msgid "group '%1'"
-msgstr "群組 '%1'"
-
-#: lib/RT/Date.pm:338
-msgid "hours"
-msgstr "å°æ™‚"
-
-#: html/Search/Elements/PickBasics:48
-msgid "id"
-msgstr "編號"
-
-#: NOT FOUND IN SOURCE
-msgid "info"
-msgstr "資訊"
-
-#: html/Elements/SelectBoolean:53 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:57 html/Search/Elements/PickBasics:175 html/Search/Elements/PickBasics:74 html/Search/Elements/PickBasics:90 html/Search/Elements/PickCFs:53
-msgid "is"
-msgstr "是"
-
-#: html/Elements/SelectBoolean:57 html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectMatch:58 html/Search/Elements/PickBasics:176 html/Search/Elements/PickBasics:75 html/Search/Elements/PickBasics:91 html/Search/Elements/PickCFs:54
-msgid "isn't"
-msgstr "ä¸æ˜¯"
-
-#: html/Elements/SelectCustomFieldOperator:59 html/Elements/SelectEqualityOperator:59
-msgid "less than"
-msgstr "å°æ–¼"
-
-#: NOT FOUND IN SOURCE
-msgid "level Admin"
-msgstr "層主管"
-
-#: html/Search/Elements/PickBasics:60
-msgid "matches"
-msgstr "符åˆ"
-
-#: lib/RT/Date.pm:334
-msgid "min"
-msgstr "分"
-
-#: html/Ticket/Update.html:64
-msgid "minutes"
-msgstr "分é˜"
-
-#: NOT FOUND IN SOURCE
-msgid "modifications\\n\\n"
-msgstr "更改\\n\\n"
-
-#: lib/RT/Date.pm:350
-msgid "months"
-msgstr "月"
-
-#: lib/RT/Queue_Overlay.pm:83
-msgid "new"
-msgstr "新建立"
-
-#: html/Admin/Elements/PickCustomFields:64 html/Admin/Elements/PickObjects:63
-msgid "no name"
-msgstr "沒有å稱"
-
-#: html/Admin/Elements/EditScrips:64
-msgid "no value"
-msgstr "沒有值"
-
-#: html/Admin/Elements/EditQueueWatchers:48 html/Ticket/Elements/EditWatchers:49
-msgid "none"
-msgstr "ç„¡"
-
-#: html/Elements/SelectEqualityOperator:59
-msgid "not equal to"
-msgstr "ä¸ç­‰æ–¼"
-
-#: NOT FOUND IN SOURCE
-msgid "notice"
-msgstr "æ示"
-
-#: NOT FOUND IN SOURCE
-msgid "notlike"
-msgstr "ä¸ç¬¦åˆ"
-
-#: NOT FOUND IN SOURCE
-msgid "number"
-msgstr "號"
-
-#: html/SelfService/Elements/MyRequests:83 lib/RT/Queue_Overlay.pm:84
-msgid "open"
-msgstr "é–‹å•Ÿ"
-
-#: NOT FOUND IN SOURCE
-msgid "opened"
-msgstr "已開啟"
-
-#: lib/RT/Group_Overlay.pm:227
-#. ($self->Name, $user->Name)
-msgid "personal group '%1' for user '%2'"
-msgstr "使用者「%2ã€çš„「%1ã€ä»£ç†äººç¾¤çµ„"
-
-#: lib/RT/Group_Overlay.pm:235
-#. ($queue->Name, $self->Type)
-msgid "queue %1 %2"
-msgstr "表單 %1 %2"
-
-#: lib/RT/Queue_Overlay.pm:87
-msgid "rejected"
-msgstr "å·²é§å›ž"
-
-#: lib/RT/Queue_Overlay.pm:86
-msgid "resolved"
-msgstr "已處ç†"
-
-#: NOT FOUND IN SOURCE
-msgid "rtname"
-msgstr "伺æœå™¨å稱"
-
-#: lib/RT/Date.pm:330
-msgid "sec"
-msgstr "秒"
-
-#: lib/RT/System.pm:86
-msgid "show Configuration tab"
-msgstr ""
-
-#: html/Search/Results.html:82
-msgid "spreadsheet"
-msgstr "試算表"
-
-#: lib/RT/Queue_Overlay.pm:85
-msgid "stalled"
-msgstr "延宕"
-
-#: lib/RT/Group_Overlay.pm:230
-#. ($self->Type)
-msgid "system %1"
-msgstr "系統 %1"
-
-#: lib/RT/Group_Overlay.pm:241
-#. ($self->Type)
-msgid "system group '%1'"
-msgstr "系統群組 '%1'"
-
-#: html/Elements/Error:66 html/SelfService/Error.html:63
-msgid "the calling component did not specify why"
-msgstr "呼å«å…ƒä»¶æœªæŒ‡æ˜ŽåŽŸå› "
-
-#: NOT FOUND IN SOURCE
-msgid "ticket #%1"
-msgstr "申請單 #%1"
-
-#: lib/RT/Group_Overlay.pm:238
-#. ($self->Instance, $self->Type)
-msgid "ticket #%1 %2"
-msgstr "申請單 #%1 %2"
-
-#: NOT FOUND IN SOURCE
-msgid "till"
-msgstr "至"
-
-#: NOT FOUND IN SOURCE
-msgid "to"
-msgstr "到"
-
-#: NOT FOUND IN SOURCE
-msgid "true"
-msgstr "真"
-
-#: lib/RT/Group_Overlay.pm:244
-#. ($self->Id)
-msgid "undescribed group %1"
-msgstr "沒有æ述的群組 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "unresolved"
-msgstr "未處ç†"
-
-#: lib/RT/Group_Overlay.pm:219
-#. ($user->Object->Name)
-msgid "user %1"
-msgstr "使用者 %1"
-
-#: NOT FOUND IN SOURCE
-msgid "warning"
-msgstr "警告"
-
-#: lib/RT/Date.pm:346
-msgid "weeks"
-msgstr "週"
-
-#: NOT FOUND IN SOURCE
-msgid "with template %1"
-msgstr "範本:%1"
-
-#: lib/RT/Date.pm:354
-msgid "years"
-msgstr "å¹´"
-
diff --git a/rt/lib/RT/Interface/CLI.pm b/rt/lib/RT/Interface/CLI.pm
deleted file mode 100644
index ec0e877..0000000
--- a/rt/lib/RT/Interface/CLI.pm
+++ /dev/null
@@ -1,246 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-use strict;
-
-use RT;
-package RT::Interface::CLI;
-
-
-
-BEGIN {
- use Exporter ();
- use vars qw ($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
-
- # set the version for version checking
- $VERSION = do { my @r = (q$Revision: 1.2 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; # must be all one line, for MakeMaker
-
- @ISA = qw(Exporter);
-
- # your exported package globals go here,
- # as well as any optionally exported functions
- @EXPORT_OK = qw(&CleanEnv
- &GetCurrentUser &GetMessageContent &debug &loc);
-}
-
-=head1 NAME
-
- RT::Interface::CLI - helper functions for creating a commandline RT interface
-
-=head1 SYNOPSIS
-
- use lib "/path/to/rt/libraries/";
-
- use RT::Interface::CLI qw(CleanEnv
- GetCurrentUser GetMessageContent loc);
-
- #Clean out all the nasties from the environment
- CleanEnv();
-
- #let's talk to RT'
- use RT;
-
- #Load RT's config file
- RT::LoadConfig();
-
- # Connect to the database. set up loggign
- RT::Init();
-
- #Get the current user all loaded
- my $CurrentUser = GetCurrentUser();
-
- print loc('Hello!'); # Synonym of $CuurentUser->loc('Hello!');
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::Interface::CLI);
-
-=end testing
-
-=cut
-
-
-=head2 CleanEnv
-
-Removes some of the nastiest nasties from the user\'s environment.
-
-=cut
-
-sub CleanEnv {
- $ENV{'PATH'} = '/bin:/usr/bin'; # or whatever you need
- $ENV{'CDPATH'} = '' if defined $ENV{'CDPATH'};
- $ENV{'SHELL'} = '/bin/sh' if defined $ENV{'SHELL'};
- $ENV{'ENV'} = '' if defined $ENV{'ENV'};
- $ENV{'IFS'} = '' if defined $ENV{'IFS'};
-}
-
-
-
-
-{
-
- my $CurrentUser; # shared betwen GetCurrentUser and loc
-
-# {{{ sub GetCurrentUser
-
-=head2 GetCurrentUser
-
- Figures out the uid of the current user and returns an RT::CurrentUser object
-loaded with that user. if the current user isn't found, returns a copy of RT::Nobody.
-
-=cut
-
-sub GetCurrentUser {
-
- require RT::CurrentUser;
-
- #Instantiate a user object
-
- my $Gecos= ($^O eq 'MSWin32') ? Win32::LoginName() : (getpwuid($<))[0];
-
- #If the current user is 0, then RT will assume that the User object
- #is that of the currentuser.
-
- $CurrentUser = new RT::CurrentUser();
- $CurrentUser->LoadByGecos($Gecos);
-
- unless ($CurrentUser->Id) {
- $RT::Logger->debug("No user with a unix login of '$Gecos' was found. ");
- }
-
- return($CurrentUser);
-}
-# }}}
-
-
-# {{{ sub loc
-
-=head2 loc
-
- Synonym of $CurrentUser->loc().
-
-=cut
-
-sub loc {
- die "No current user yet" unless $CurrentUser ||= RT::CurrentUser->new;
- return $CurrentUser->loc(@_);
-}
-# }}}
-
-}
-
-
-# {{{ sub GetMessageContent
-
-=head2 GetMessageContent
-
-Takes two arguments a source file and a boolean "edit". If the source file
-is undef or "", assumes an empty file. Returns an edited file as an
-array of lines.
-
-=cut
-
-sub GetMessageContent {
- my %args = ( Source => undef,
- Content => undef,
- Edit => undef,
- CurrentUser => undef,
- @_);
- my $source = $args{'Source'};
-
- my $edit = $args{'Edit'};
-
- my $currentuser = $args{'CurrentUser'};
- my @lines;
-
- use File::Temp qw/ tempfile/;
-
- #Load the sourcefile, if it's been handed to us
- if ($source) {
- open (SOURCE, "<$source");
- @lines = (<SOURCE>);
- close (SOURCE);
- }
- elsif ($args{'Content'}) {
- @lines = split('\n',$args{'Content'});
- }
- #get us a tempfile.
- my ($fh, $filename) = tempfile();
-
- #write to a tmpfile
- for (@lines) {
- print $fh $_;
- }
- close ($fh);
-
- #Edit the file if we need to
- if ($edit) {
-
- unless ($ENV{'EDITOR'}) {
- $RT::Logger->crit('No $EDITOR variable defined'. "\n");
- return undef;
- }
- system ($ENV{'EDITOR'}, $filename);
- }
-
- open (READ, "<$filename");
- my @newlines = (<READ>);
- close (READ);
-
- unlink ($filename) unless (debug());
- return(\@newlines);
-
-}
-
-# }}}
-
-# {{{ sub debug
-
-sub debug {
- my $val = shift;
- my ($debug);
- if ($val) {
- $RT::Logger->debug($val."\n");
- if ($debug) {
- print STDERR "$val\n";
- }
- }
- if ($debug) {
- return(1);
- }
-}
-
-# }}}
-
-
-eval "require RT::Interface::CLI_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/CLI_Vendor.pm});
-eval "require RT::Interface::CLI_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/CLI_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Email.pm b/rt/lib/RT/Interface/Email.pm
deleted file mode 100755
index 7eec050..0000000
--- a/rt/lib/RT/Interface/Email.pm
+++ /dev/null
@@ -1,648 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::Interface::Email;
-
-use strict;
-use Mail::Address;
-use MIME::Entity;
-use RT::EmailParser;
-
-
-BEGIN {
- use Exporter ();
- use vars qw ($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
-
- # set the version for version checking
- $VERSION = do { my @r = (q$Revision: 1.2 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; # must be all one line, for MakeMaker
-
- @ISA = qw(Exporter);
-
- # your exported package globals go here,
- # as well as any optionally exported functions
- @EXPORT_OK = qw(
- &CreateUser
- &GetMessageContent
- &CheckForLoops
- &CheckForSuspiciousSender
- &CheckForAutoGenerated
- &MailError
- &ParseCcAddressesFromHead
- &ParseSenderAddressFromHead
- &ParseErrorsToAddressFromHead
- &ParseAddressFromHeader
- &Gateway);
-
-}
-
-=head1 NAME
-
- RT::Interface::CLI - helper functions for creating a commandline RT interface
-
-=head1 SYNOPSIS
-
- use lib "!!RT_LIB_PATH!!";
- use lib "!!RT_ETC_PATH!!";
-
- use RT::Interface::Email qw(Gateway CreateUser);
-
-=head1 DESCRIPTION
-
-
-=begin testing
-
-ok(require RT::Interface::Email);
-
-=end testing
-
-
-=head1 METHODS
-
-=cut
-
-
-# {{{ sub CheckForLoops
-
-sub CheckForLoops {
- my $head = shift;
-
- #If this instance of RT sent it our, we don't want to take it in
- my $RTLoop = $head->get("X-RT-Loop-Prevention") || "";
- chomp ($RTLoop); #remove that newline
- if ($RTLoop eq "$RT::rtname") {
- return (1);
- }
-
- # TODO: We might not trap the case where RT instance A sends a mail
- # to RT instance B which sends a mail to ...
- return (undef);
-}
-
-# }}}
-
-# {{{ sub CheckForSuspiciousSender
-
-sub CheckForSuspiciousSender {
- my $head = shift;
-
- #if it's from a postmaster or mailer daemon, it's likely a bounce.
-
- #TODO: better algorithms needed here - there is no standards for
- #bounces, so it's very difficult to separate them from anything
- #else. At the other hand, the Return-To address is only ment to be
- #used as an error channel, we might want to put up a separate
- #Return-To address which is treated differently.
-
- #TODO: search through the whole email and find the right Ticket ID.
-
- my ($From, $junk) = ParseSenderAddressFromHead($head);
-
- if (($From =~ /^mailer-daemon/i) or
- ($From =~ /^postmaster/i)){
- return (1);
-
- }
-
- return (undef);
-
-}
-
-# }}}
-
-# {{{ sub CheckForAutoGenerated
-sub CheckForAutoGenerated {
- my $head = shift;
-
- my $Precedence = $head->get("Precedence") || "" ;
- if ($Precedence =~ /^(bulk|junk)/i) {
- return (1);
- }
- else {
- return (0);
- }
-}
-
-# }}}
-
-
-# {{{ sub MailError
-sub MailError {
- my %args = (To => $RT::OwnerEmail,
- Bcc => undef,
- From => $RT::CorrespondAddress,
- Subject => 'There has been an error',
- Explanation => 'Unexplained error',
- MIMEObj => undef,
- LogLevel => 'crit',
- @_);
-
-
- $RT::Logger->log(level => $args{'LogLevel'},
- message => $args{'Explanation'}
- );
- my $entity = MIME::Entity->build( Type =>"multipart/mixed",
- From => $args{'From'},
- Bcc => $args{'Bcc'},
- To => $args{'To'},
- Subject => $args{'Subject'},
- 'X-RT-Loop-Prevention' => $RT::rtname,
- );
-
- $entity->attach( Data => $args{'Explanation'}."\n");
-
- my $mimeobj = $args{'MIMEObj'};
- if ($mimeobj) {
- $mimeobj->sync_headers();
- $entity->add_part($mimeobj);
- }
-
- if ($RT::MailCommand eq 'sendmailpipe') {
- open (MAIL, "|$RT::SendmailPath $RT::SendmailArguments") || return(0);
- print MAIL $entity->as_string;
- close(MAIL);
- }
- else {
- $entity->send($RT::MailCommand, $RT::MailParams);
- }
-}
-
-# }}}
-
-# {{{ Create User
-
-sub CreateUser {
- my ($Username, $Address, $Name, $ErrorsTo, $entity) = @_;
- my $NewUser = RT::User->new($RT::SystemUser);
-
- # This data is tainted by some Very Broken mailers.
- # (Sometimes they send raw ISO 8859-1 data here. fear that.
- require Encode;
- $Username = Encode::encode(utf8 => $Username, Encode::FB_PERLQQ()) if defined $Username;
- $Name = Encode::encode(utf8 => $Name, Encode::FB_PERLQQ()) if defined $Name;
-
- my ($Val, $Message) =
- $NewUser->Create(Name => ($Username || $Address),
- EmailAddress => $Address,
- RealName => $Name,
- Password => undef,
- Privileged => 0,
- Comments => 'Autocreated on ticket submission'
- );
-
- unless ($Val) {
-
- # Deal with the race condition of two account creations at once
- #
- if ($Username) {
- $NewUser->LoadByName($Username);
- }
-
- unless ($NewUser->Id) {
- $NewUser->LoadByEmail($Address);
- }
-
- unless ($NewUser->Id) {
- MailError( To => $ErrorsTo,
- Subject => "User could not be created",
- Explanation => "User creation failed in mailgateway: $Message",
- MIMEObj => $entity,
- LogLevel => 'crit'
- );
- }
- }
-
- #Load the new user object
- my $CurrentUser = RT::CurrentUser->new();
- $CurrentUser->LoadByEmail($Address);
-
- unless ($CurrentUser->id) {
- $RT::Logger->warning("Couldn't load user '$Address'.". "giving up");
- MailError( To => $ErrorsTo,
- Subject => "User could not be loaded",
- Explanation => "User '$Address' could not be loaded in the mail gateway",
- MIMEObj => $entity,
- LogLevel => 'crit'
- );
- }
-
- return $CurrentUser;
-}
-# }}}
-# {{{ ParseCcAddressesFromHead
-
-=head2 ParseCcAddressesFromHead HASHREF
-
-Takes a hashref object containing QueueObj, Head and CurrentUser objects.
-Returns a list of all email addresses in the To and Cc
-headers b<except> the current Queue\'s email addresses, the CurrentUser\'s
-email address and anything that the configuration sub RT::IsRTAddress matches.
-
-=cut
-
-sub ParseCcAddressesFromHead {
- my %args = ( Head => undef,
- QueueObj => undef,
- CurrentUser => undef,
- @_ );
-
- my (@Addresses);
-
- my @ToObjs = Mail::Address->parse($args{'Head'}->get('To'));
- my @CcObjs = Mail::Address->parse($args{'Head'}->get('Cc'));
-
- foreach my $AddrObj (@ToObjs, @CcObjs) {
- my $Address = $AddrObj->address;
- $Address = $args{'CurrentUser'}->UserObj->CanonicalizeEmailAddress($Address);
- next if ($args{'CurrentUser'}->EmailAddress =~ /^$Address$/i);
- next if ($args{'QueueObj'}->CorrespondAddress =~ /^$Address$/i);
- next if ($args{'QueueObj'}->CommentAddress =~ /^$Address$/i);
- next if (RT::EmailParser::IsRTAddress(undef, $Address));
-
- push (@Addresses, $Address);
- }
- return (@Addresses);
-}
-
-
-# }}}
-
-# {{{ ParseSenderAdddressFromHead
-
-=head2 ParseSenderAddressFromHead
-
-Takes a MIME::Header object. Returns a tuple: (user@host, friendly name)
-of the From (evaluated in order of Reply-To:, From:, Sender)
-
-=cut
-
-sub ParseSenderAddressFromHead {
- my $head = shift;
- #Figure out who's sending this message.
- my $From = $head->get('Reply-To') ||
- $head->get('From') ||
- $head->get('Sender');
- return (ParseAddressFromHeader($From));
-}
-# }}}
-
-# {{{ ParseErrorsToAdddressFromHead
-
-=head2 ParseErrorsToAddressFromHead
-
-Takes a MIME::Header object. Return a single value : user@host
-of the From (evaluated in order of Errors-To:,Reply-To:, From:, Sender)
-
-=cut
-
-sub ParseErrorsToAddressFromHead {
- my $head = shift;
- #Figure out who's sending this message.
-
- foreach my $header ('Errors-To' , 'Reply-To', 'From', 'Sender' ) {
- # If there's a header of that name
- my $headerobj = $head->get($header);
- if ($headerobj) {
- my ($addr, $name ) = ParseAddressFromHeader($headerobj);
- # If it's got actual useful content...
- return ($addr) if ($addr);
- }
- }
-}
-# }}}
-
-# {{{ ParseAddressFromHeader
-
-=head2 ParseAddressFromHeader ADDRESS
-
-Takes an address from $head->get('Line') and returns a tuple: user@host, friendly name
-
-=cut
-
-
-sub ParseAddressFromHeader{
- my $Addr = shift;
-
- my @Addresses = Mail::Address->parse($Addr);
-
- my $AddrObj = $Addresses[0];
-
- unless (ref($AddrObj)) {
- return(undef,undef);
- }
-
- my $Name = ($AddrObj->phrase || $AddrObj->comment || $AddrObj->address);
-
- #Lets take the from and load a user object.
- my $Address = $AddrObj->address;
-
- return ($Address, $Name);
-}
-# }}}
-
-
-
-=head2 Gateway
-
-This performs all the "guts" of the mail rt-mailgate program, and is
-designed to be called from the web interface with a message, user
-object, and so on.
-
-=cut
-
-sub Gateway {
- my %args = ( message => undef,
- queue => 1,
- action => 'correspond',
- ticket => undef,
- @_ );
-
- # Validate the action
- unless ( $args{'action'} =~ /^(comment|correspond|action)$/ ) {
-
- # Can't safely loc this. What object do we loc around?
- return ( 0, "Invalid 'action' parameter", undef );
- }
-
- my $parser = RT::EmailParser->new();
- $parser->ParseMIMEEntityFromScalar( $args{'message'} );
-
- my $Message = $parser->Entity();
- my $head = $Message->head;
-
- my ( $CurrentUser, $AuthStat, $status, $error );
-
- my $ErrorsTo = ParseErrorsToAddressFromHead($head);
-
- my $MessageId = $head->get('Message-Id')
- || "<no-message-id-" . time . rand(2000) . "\@.$RT::Organization>";
-
- #Pull apart the subject line
- my $Subject = $head->get('Subject') || '';
- chomp $Subject;
-
-
- $args{'ticket'} ||= $parser->ParseTicketId($Subject);
-
- my $SystemTicket;
- if ($args{'ticket'} ) {
- $SystemTicket = RT::Ticket->new($RT::SystemUser);
- $SystemTicket->Load($args{'ticket'});
- }
-
- #Set up a queue object
- my $SystemQueueObj = RT::Queue->new($RT::SystemUser);
- $SystemQueueObj->Load( $args{'queue'} );
-
-
- # We can safely have no queue of we have a known-good ticket
- unless ( $args{'ticket'} || $SystemQueueObj->id ) {
- MailError(
- To => $RT::OwnerEmail,
- Subject => "RT Bounce: $Subject",
- Explanation => "RT couldn't find the queue: " . $args{'queue'},
- MIMEObj => $Message );
- return ( 0, "RT couldn't find the queue: " . $args{'queue'}, undef );
- }
-
- # Authentication Level
- # -1 - Get out. this user has been explicitly declined
- # 0 - User may not do anything (Not used at the moment)
- # 1 - Normal user
- # 2 - User is allowed to specify status updates etc. a la enhanced-mailgate
-
- push @RT::MailPlugins, "Auth::MailFrom" unless @RT::MailPlugins;
- # Since this needs loading, no matter what
-
- for (@RT::MailPlugins) {
- my $Code;
- my $NewAuthStat;
- if ( ref($_) eq "CODE" ) {
- $Code = $_;
- }
- else {
- $_ = "RT::Interface::Email::$_" unless /^RT::Interface::Email::/;
- eval "require $_;";
- if ($@) {
- die ("Couldn't load module $_: $@");
- next;
- }
- no strict 'refs';
- if ( !defined( $Code = *{ $_ . "::GetCurrentUser" }{CODE} ) ) {
- die ("No GetCurrentUser code found in $_ module");
- next;
- }
- }
-
- ( $CurrentUser, $NewAuthStat ) = $Code->( Message => $Message,
- CurrentUser => $CurrentUser,
- AuthLevel => $AuthStat,
- Action => $args{'action'},
- Ticket => $SystemTicket,
- Queue => $SystemQueueObj );
-
- # You get the highest level of authentication you were assigned.
- last if $AuthStat == -1;
- $AuthStat = $NewAuthStat if $NewAuthStat > $AuthStat;
- }
-
- # {{{ If authentication fails and no new user was created, get out.
- if ( !$CurrentUser or !$CurrentUser->Id or $AuthStat == -1 ) {
-
- # If the plugins refused to create one, they lose.
- MailError(
- Subject => "Could not load a valid user",
- Explanation => <<EOT,
-RT could not load a valid user, and RT's configuration does not allow
-for the creation of a new user for your email.
-
-Your RT administrator needs to grant 'Everyone' the right 'CreateTicket'
-for this queue.
-
-EOT
- MIMEObj => $Message,
- LogLevel => 'error' )
- unless $AuthStat == -1;
- return ( 0, "Could not load a valid user", undef );
- }
-
- # }}}
-
- # {{{ Lets check for mail loops of various sorts.
- my $IsAutoGenerated = CheckForAutoGenerated($head);
-
- my $IsSuspiciousSender = CheckForSuspiciousSender($head);
-
- my $IsALoop = CheckForLoops($head);
-
- my $SquelchReplies = 0;
-
- #If the message is autogenerated, we need to know, so we can not
- # send mail to the sender
- if ( $IsSuspiciousSender || $IsAutoGenerated || $IsALoop ) {
- $SquelchReplies = 1;
- $ErrorsTo = $RT::OwnerEmail;
- }
-
- # }}}
-
- # {{{ Drop it if it's disallowed
- if ( $AuthStat == 0 ) {
- MailError(
- To => $ErrorsTo,
- Subject => "Permission Denied",
- Explanation => "You do not have permission to communicate with RT",
- MIMEObj => $Message );
- }
-
- # }}}
- # {{{ Warn someone if it's a loop
-
- # Warn someone if it's a loop, before we drop it on the ground
- if ($IsALoop) {
- $RT::Logger->crit("RT Recieved mail ($MessageId) from itself.");
-
- #Should we mail it to RTOwner?
- if ($RT::LoopsToRTOwner) {
- MailError( To => $RT::OwnerEmail,
- Subject => "RT Bounce: $Subject",
- Explanation => "RT thinks this message may be a bounce",
- MIMEObj => $Message );
-
- #Do we actually want to store it?
- return ( 0, "Message Bounced", undef ) unless ($RT::StoreLoops);
- }
- }
-
- # }}}
-
- # {{{ Squelch replies if necessary
- # Don't let the user stuff the RT-Squelch-Replies-To header.
- if ( $head->get('RT-Squelch-Replies-To') ) {
- $head->add( 'RT-Relocated-Squelch-Replies-To',
- $head->get('RT-Squelch-Replies-To') );
- $head->delete('RT-Squelch-Replies-To');
- }
-
- if ($SquelchReplies) {
- ## TODO: This is a hack. It should be some other way to
- ## indicate that the transaction should be "silent".
-
- my ( $Sender, $junk ) = ParseSenderAddressFromHead($head);
- $head->add( 'RT-Squelch-Replies-To', $Sender );
- }
-
- # }}}
-
- my $Ticket = RT::Ticket->new($CurrentUser);
-
- # {{{ If we don't have a ticket Id, we're creating a new ticket
- if ( !$args{'ticket'} ) {
-
- # {{{ Create a new ticket
-
- my @Cc;
- my @Requestors = ( $CurrentUser->id );
-
- if ($RT::ParseNewMessageForTicketCcs) {
- @Cc = ParseCcAddressesFromHead( Head => $head,
- CurrentUser => $CurrentUser,
- QueueObj => $SystemQueueObj );
- }
-
- my ( $id, $Transaction, $ErrStr ) = $Ticket->Create(
- Queue => $SystemQueueObj->Id,
- Subject => $Subject,
- Requestor => \@Requestors,
- Cc => \@Cc,
- MIMEObj => $Message );
- if ( $id == 0 ) {
- MailError( To => $ErrorsTo,
- Subject => "Ticket creation failed",
- Explanation => $ErrStr,
- MIMEObj => $Message );
- $RT::Logger->error("Create failed: $id / $Transaction / $ErrStr ");
- return ( 0, "Ticket creation failed", $Ticket );
- }
-
- # }}}
- }
-
- # }}}
-
- # If the action is comment, add a comment.
- elsif ( $args{'action'} =~ /^(comment|correspond)$/i ) {
- $Ticket->Load($args{'ticket'});
- unless ( $Ticket->Id ) {
- my $message = "Could not find a ticket with id ".$args{'ticket'};
- MailError( To => $ErrorsTo,
- Subject => "Message not recorded",
- Explanation => $message,
- MIMEObj => $Message );
-
- return ( 0, $message);
- }
-
- my ( $status, $msg );
- if ( $args{'action'} =~ /^correspond$/ ) {
- ( $status, $msg ) = $Ticket->Correspond( MIMEObj => $Message );
- }
- else {
- ( $status, $msg ) = $Ticket->Comment( MIMEObj => $Message );
- }
- unless ($status) {
-
- #Warn the sender that we couldn't actually submit the comment.
- MailError( To => $ErrorsTo,
- Subject => "Message not recorded",
- Explanation => $msg,
- MIMEObj => $Message );
- return ( 0, "Message not recorded", $Ticket );
- }
- }
-
- else {
-
- #Return mail to the sender with an error
- MailError( To => $ErrorsTo,
- Subject => "RT Configuration error",
- Explanation => "'"
- . $args{'action'}
- . "' not a recognized action."
- . " Your RT administrator has misconfigured "
- . "the mail aliases which invoke RT",
- MIMEObj => $Message );
- $RT::Logger->crit( $args{'action'} . " type unknown for $MessageId" );
- return ( 0, "Configuration error: " . $args{'action'} . " not a recognized action", $Ticket );
-
- }
-
-
-return ( 1, "Success", $Ticket );
-}
-
-eval "require RT::Interface::Email_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email_Vendor.pm});
-eval "require RT::Interface::Email_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Email/Auth/GnuPG.pm b/rt/lib/RT/Interface/Email/Auth/GnuPG.pm
deleted file mode 100755
index 2dfada7..0000000
--- a/rt/lib/RT/Interface/Email/Auth/GnuPG.pm
+++ /dev/null
@@ -1,121 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-#
-package RT::Interface::Email::Auth::GnuPG;
-use Mail::GnuPG;
-
-=head2 GetCurrentUser
-
-To use the gnupg-secured mail gateway, you need to do the following:
-
-Set up a gnupgp key directory with a pubring containing only the keys
-you care about and specify the following in your SiteConfig.pm
-
-Set($RT::GPGKeyDir, "/path/to/keyring-directory");
-@RT::MailPlugins = qw(Auth::MailFrom Auth::GnuPG Filter::TakeAction);
-
-
-
-=cut
-
-
-
-sub GetCurrentUser {
- my %args = (
- Message => undef,
- RawMessageRef => undef,
- CurrentUser => undef,
- AuthLevel => undef,
- Ticket => undef,
- Queue => undef,
- Action => undef,
- @_
- );
-
- my ( $val, $key, $address,$gpg );
-
- eval {
-
- my $parser = RT::EmailParser->new();
- $parser->SmartParseMIMEEntityFromScalar(Message => ${$args{'RawMessageRef'}}, Decode => 0);
- $gpg = Mail::GnuPG->new( keydir => $RT::GPGKeyDir );
- my $entity = $parser->Entity;
- ( $val, $key, $address ) = $gpg->verify( $parser->Entity);
- $RT::Logger->crit("Got $val - $key - $address");
- };
-
- if ($@) {
- $RT::Logger->crit($@);
- }
-
- unless ($address) {
- $RT::Logger->crit( "Couldn't find a valid signature" . join ( "\n", @{ $gpg->{'last_message'} } ) );
- return ( $args{'CurrentUser'}, $args{'AuthLevel'} );
- }
-
- my @addrs = Mail::Address->parse($address);
- $address = $addrs[0]->address();
-
- my $CurrentUser = RT::CurrentUser->new();
- $CurrentUser->LoadByEmail($address);
-
- if ( $CurrentUser->Id ) {
- $RT::Logger->crit($address . " authenticated via PGP signature");
- return ( $CurrentUser, 2 );
- }
-
-}
-
-eval "require RT::Interface::Email::Auth::GnuPG_Vendor";
-die $@
- if ( $@
- && $@ !~ qr{^Can't locate RT/Interface/Email/Auth/GnuPG_Vendor.pm} );
-eval "require RT::Interface::Email::Auth::GnuPG_Local";
-die $@
- if ( $@
- && $@ !~ qr{^Can't locate RT/Interface/Email/Auth/GnuPG_Local.pm} );
-
-1;
diff --git a/rt/lib/RT/Interface/Email/Auth/MailFrom.pm b/rt/lib/RT/Interface/Email/Auth/MailFrom.pm
deleted file mode 100644
index ef315dd..0000000
--- a/rt/lib/RT/Interface/Email/Auth/MailFrom.pm
+++ /dev/null
@@ -1,182 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Interface::Email::Auth::MailFrom;
-use RT::Interface::Email qw(ParseSenderAddressFromHead CreateUser);
-
-# This is what the ordinary, non-enhanced gateway does at the moment.
-
-sub GetCurrentUser {
- my %args = ( Message => undef,
- CurrentUser => undef,
- AuthLevel => undef,
- Ticket => undef,
- Queue => undef,
- Action => undef,
- @_ );
-
-
- # We don't need to do any external lookups
- my ( $Address, $Name ) = ParseSenderAddressFromHead( $args{'Message'}->head );
- my $CurrentUser = RT::CurrentUser->new();
- $CurrentUser->LoadByEmail($Address);
-
- unless ( $CurrentUser->Id ) {
- $CurrentUser->LoadByName($Address);
- }
-
- if ( $CurrentUser->Id ) {
- return ( $CurrentUser, 1 );
- }
-
-
-
- # If the user can't be loaded, we may need to create one. Figure out the acl situation.
- my $unpriv = RT::Group->new($RT::SystemUser);
- $unpriv->LoadSystemInternalGroup('Unprivileged');
- unless ( $unpriv->Id ) {
- $RT::Logger->crit( "Auth::MailFrom couldn't find the 'Unprivileged' internal group" );
- return ( $args{'CurrentUser'}, -1 );
- }
-
- my $everyone = RT::Group->new($RT::SystemUser);
- $everyone->LoadSystemInternalGroup('Everyone');
- unless ( $everyone->Id ) {
- $RT::Logger->crit( "Auth::MailFrom couldn't find the 'Everyone' internal group");
- return ( $args{'CurrentUser'}, -1 );
- }
-
- # but before we do that, we need to make sure that the created user would have the right
- # to do what we're doing.
- if ( $args{'Ticket'} && $args{'Ticket'}->Id ) {
- # We have a ticket. that means we're commenting or corresponding
- if ( $args{'Action'} =~ /^comment$/i ) {
-
- # check to see whether "Everyone" or "Unprivileged users" can comment on tickets
- unless ( $everyone->PrincipalObj->HasRight(
- Object => $args{'Queue'},
- Right => 'CommentOnTicket'
- )
- || $unpriv->PrincipalObj->HasRight(
- Object => $args{'Queue'},
- Right => 'CommentOnTicket'
- )
- ) {
- return ( $args{'CurrentUser'}, 0 );
- }
- }
- elsif ( $args{'Action'} =~ /^correspond$/i ) {
-
- # check to see whether "Everybody" or "Unprivileged users" can correspond on tickets
- unless ( $everyone->PrincipalObj->HasRight(Object => $args{'Queue'},
- Right => 'ReplyToTicket'
- )
- || $unpriv->PrincipalObj->HasRight(
- Object => $args{'Queue'},
- Right => 'ReplyToTicket'
- )
- ) {
- return ( $args{'CurrentUser'}, 0 );
- }
-
- }
- elsif ( $args{'Action'} =~ /^take$/i ) {
-
- # check to see whether "Everybody" or "Unprivileged users" can correspond on tickets
- unless ( $everyone->PrincipalObj->HasRight(Object => $args{'Queue'},
- Right => 'OwnTicket'
- )
- || $unpriv->PrincipalObj->HasRight(
- Object => $args{'Queue'},
- Right => 'OwnTicket'
- )
- ) {
- return ( $args{'CurrentUser'}, 0 );
- }
-
- }
- elsif ( $args{'Action'} =~ /^resolve$/i ) {
-
- # check to see whether "Everybody" or "Unprivileged users" can correspond on tickets
- unless ( $everyone->PrincipalObj->HasRight(Object => $args{'Queue'},
- Right => 'ModifyTicket'
- )
- || $unpriv->PrincipalObj->HasRight(
- Object => $args{'Queue'},
- Right => 'ModifyTicket'
- )
- ) {
- return ( $args{'CurrentUser'}, 0 );
- }
-
- }
- else {
- return ( $args{'CurrentUser'}, 0 );
- }
- }
-
- # We're creating a ticket
- elsif ( $args{'Queue'} && $args{'Queue'}->Id ) {
-
- # check to see whether "Everybody" or "Unprivileged users" can create tickets in this queue
- unless ( $everyone->PrincipalObj->HasRight( Object => $args{'Queue'},
- Right => 'CreateTicket' )
- ) {
- return ( $args{'CurrentUser'}, 0 );
- }
-
- }
-
- $CurrentUser = CreateUser( undef, $Address, $Name, $Address, $args{'Message'} );
-
- return ( $CurrentUser, 1 );
-}
-
-eval "require RT::Interface::Email::Auth::MailFrom_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email/Auth/MailFrom_Vendor.pm});
-eval "require RT::Interface::Email::Auth::MailFrom_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email/Auth/MailFrom_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Email/Filter/SpamAssassin.pm b/rt/lib/RT/Interface/Email/Filter/SpamAssassin.pm
deleted file mode 100644
index c552d76..0000000
--- a/rt/lib/RT/Interface/Email/Filter/SpamAssassin.pm
+++ /dev/null
@@ -1,94 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Interface::Email::Filter::SpamAssassin;
-
-use Mail::SpamAssassin;
-my $spamtest = Mail::SpamAssassin->new();
-
-sub GetCurrentUser {
- my %args = (
- Message => undef,
- CurrentUser => undef,
- AuthLevel => undef,
- @_
- );
- my $status = $spamtest->check( $args{'Message'} );
- return ( $args{'CurrentUser'}, $args{'AuthLevel'} )
- unless $status->is_spam();
-
- eval { $status->rewrite_mail() };
- if ( $status->get_hits > $status->get_required_hits() * 1.5 ) {
-
- # Spammy indeed
- return ( $args{'CurrentUser'}, -1 );
- }
- return ( $args{'CurrentUser'}, $args{'AuthLevel'} );
-
-}
-
-=head1 NAME
-
-RT::Interface::Email::Filter::SpamAssassin - Spam filter for RT
-
-=head1 SYNOPSIS
-
- @RT::MailPlugins = ("Filter::SpamAssassin", ...);
-
-=head1 DESCRIPTION
-
-This plugin checks to see if an incoming mail is spam (using
-C<spamassassin>) and if so, rewrites its headers. If the mail is very
-definitely spam - 1.5x more hits than required - then it is dropped on
-the floor; otherwise, it is passed on as normal.
-
-=cut
-
-eval "require RT::Interface::Email::Filter::SpamAssassin_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email/Filter/SpamAssassin_Vendor.pm});
-eval "require RT::Interface::Email::Filter::SpamAssassin_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Email/Filter/SpamAssassin_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/REST.pm b/rt/lib/RT/Interface/REST.pm
deleted file mode 100644
index 279ddf4..0000000
--- a/rt/lib/RT/Interface/REST.pm
+++ /dev/null
@@ -1,274 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# lib/RT/Interface/REST.pm
-#
-
-package RT::Interface::REST;
-use strict;
-use RT;
-
-BEGIN {
- use Exporter ();
- use vars qw($VERSION @ISA @EXPORT);
-
- $VERSION = do { my @r = (q$Revision: 1.1.1.3 $ =~ /\d+/g); sprintf "%d."."%02d"x$#r, @r };
-
- @ISA = qw(Exporter);
- @EXPORT = qw(expand_list form_parse form_compose vpush vsplit);
-}
-
-my $field = '[a-zA-Z][a-zA-Z0-9_-]*';
-
-sub expand_list {
- my ($list) = @_;
- my ($elt, @elts, %elts);
-
- foreach $elt (split /,/, $list) {
- if ($elt =~ /^(\d+)-(\d+)$/) { push @elts, ($1..$2) }
- else { push @elts, $elt }
- }
-
- @elts{@elts}=();
- return sort {$a<=>$b} keys %elts;
-}
-
-# Returns a reference to an array of parsed forms.
-sub form_parse {
- my $state = 0;
- my @forms = ();
- my @lines = split /\n/, $_[0];
- my ($c, $o, $k, $e) = ("", [], {}, "");
-
- LINE:
- while (@lines) {
- my $line = shift @lines;
-
- next LINE if $line eq '';
-
- if ($line eq '--') {
- # We reached the end of one form. We'll ignore it if it was
- # empty, and store it otherwise, errors and all.
- if ($e || $c || @$o) {
- push @forms, [ $c, $o, $k, $e ];
- $c = ""; $o = []; $k = {}; $e = "";
- }
- $state = 0;
- }
- elsif ($state != -1) {
- if ($state == 0 && $line =~ /^#/) {
- # Read an optional block of comments (only) at the start
- # of the form.
- $state = 1;
- $c = $line;
- while (@lines && $lines[0] =~ /^#/) {
- $c .= "\n".shift @lines;
- }
- $c .= "\n";
- }
- elsif ($state <= 1 && $line =~ /^($field):(?:\s+(.*))?$/) {
- # Read a field: value specification.
- my $f = $1;
- my @v = ($2 || ());
-
- # Read continuation lines, if any.
- while (@lines && ($lines[0] eq '' || $lines[0] =~ /^\s+/)) {
- push @v, shift @lines;
- }
- pop @v while (@v && $v[-1] eq '');
-
- # Strip longest common leading indent from text.
- my ($ws, $ls) = ("");
- foreach $ls (map {/^(\s+)/} @v[1..$#v]) {
- $ws = $ls if (!$ws || length($ls) < length($ws));
- }
- s/^$ws// foreach @v;
-
- push(@$o, $f) unless exists $k->{$f};
- vpush($k, $f, join("\n", @v));
-
- $state = 1;
- }
- elsif ($line !~ /^#/) {
- # We've found a syntax error, so we'll reconstruct the
- # form parsed thus far, and add an error marker. (>>)
- $state = -1;
- $e = form_compose([[ "", $o, $k, "" ]]);
- $e.= $line =~ /^>>/ ? "$line\n" : ">> $line\n";
- }
- }
- else {
- # We saw a syntax error earlier, so we'll accumulate the
- # contents of this form until the end.
- $e .= "$line\n";
- }
- }
- push(@forms, [ $c, $o, $k, $e ]) if ($e || $c || @$o);
-
- my $l;
- foreach $l (keys %$k) {
- $k->{$l} = vsplit($k->{$l}) if (ref $k->{$l} eq 'ARRAY');
- }
-
- return \@forms;
-}
-
-# Returns text representing a set of forms.
-sub form_compose {
- my ($forms) = @_;
- my (@text, $form);
-
- foreach $form (@$forms) {
- my ($c, $o, $k, $e) = @$form;
- my $text = "";
-
- if ($c) {
- $c =~ s/\n*$/\n/;
- $text = "$c\n";
- }
- if ($e) {
- $text .= $e;
- }
- elsif ($o) {
- my (@lines, $key);
-
- foreach $key (@$o) {
- my ($line, $sp, $v);
- my @values = (ref $k->{$key} eq 'ARRAY') ?
- @{ $k->{$key} } :
- $k->{$key};
-
- $sp = " "x(length("$key: "));
- $sp = " "x4 if length($sp) > 16;
-
- foreach $v (@values) {
- if ($v =~ /\n/) {
- $v =~ s/^/$sp/gm;
- $v =~ s/^$sp//;
-
- if ($line) {
- push @lines, "$line\n\n";
- $line = "";
- }
- elsif (@lines && $lines[-1] !~ /\n\n$/) {
- $lines[-1] .= "\n";
- }
- push @lines, "$key: $v\n\n";
- }
- elsif ($line &&
- length($line)+length($v)-rindex($line, "\n") >= 70)
- {
- $line .= ",\n$sp$v";
- }
- else {
- $line = $line ? "$line, $v" : "$key: $v";
- }
- }
-
- $line = "$key:" unless @values;
- if ($line) {
- if ($line =~ /\n/) {
- if (@lines && $lines[-1] !~ /\n\n$/) {
- $lines[-1] .= "\n";
- }
- $line .= "\n";
- }
- push @lines, "$line\n";
- }
- }
-
- $text .= join "", @lines;
- }
- else {
- chomp $text;
- }
- push @text, $text;
- }
-
- return join "\n--\n\n", @text;
-}
-
-# Add a value to a (possibly multi-valued) hash key.
-sub vpush {
- my ($hash, $key, $val) = @_;
- my @val = ref $val eq 'ARRAY' ? @$val : $val;
-
- if (exists $hash->{$key}) {
- unless (ref $hash->{$key} eq 'ARRAY') {
- my @v = $hash->{$key} ne '' ? $hash->{$key} : ();
- $hash->{$key} = \@v;
- }
- push @{ $hash->{$key} }, @val;
- }
- else {
- $hash->{$key} = $val;
- }
-}
-
-# "Normalise" a hash key that's known to be multi-valued.
-sub vsplit {
- my ($val) = @_;
- my ($line, $word, @words);
-
- foreach $line (map {split /\n/} (ref $val eq 'ARRAY') ? @$val : $val)
- {
- # XXX: This should become a real parser, à la Text::ParseWords.
- $line =~ s/^\s+//;
- $line =~ s/\s+$//;
- push @words, split /\s*,\s*/, $line;
- }
-
- return \@words;
-}
-
-1;
-
-=head1 NAME
-
- RT::Interface::REST - helper functions for the REST interface.
-
-=head1 SYNOPSIS
-
- Only the REST should use this module.
diff --git a/rt/lib/RT/Interface/Web.pm b/rt/lib/RT/Interface/Web.pm
deleted file mode 100644
index 5097f54..0000000
--- a/rt/lib/RT/Interface/Web.pm
+++ /dev/null
@@ -1,1377 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-## Portions Copyright 2000 Tobias Brox <tobix@fsck.com>
-
-## This is a library of static subs to be used by the Mason web
-## interface to RT
-
-
-=head1 NAME
-
-RT::Interface::Web
-
-=begin testing
-
-use_ok(RT::Interface::Web);
-
-=end testing
-
-=cut
-
-
-package RT::Interface::Web;
-use strict;
-
-
-
-
-
-# {{{ sub NewApacheHandler
-
-=head2 NewApacheHandler
-
- Takes extra options to pass to HTML::Mason::ApacheHandler->new
- Returns a new Mason::ApacheHandler object
-
-=cut
-
-sub NewApacheHandler {
- require HTML::Mason::ApacheHandler;
- my $ah = new HTML::Mason::ApacheHandler(
-
- comp_root => [
- [ local => $RT::MasonLocalComponentRoot ],
- [ standard => $RT::MasonComponentRoot ]
- ],
- args_method => "CGI",
- default_escape_flags => 'h',
- allow_globals => [qw(%session)],
- data_dir => "$RT::MasonDataDir",
- @_
- );
-
- $ah->interp->set_escape( h => \&RT::Interface::Web::EscapeUTF8 );
-
- return ($ah);
-}
-
-# }}}
-
-# {{{ sub NewCGIHandler
-
-=head2 NewCGIHandler
-
- Returns a new Mason::CGIHandler object
-
-=cut
-
-sub NewCGIHandler {
- my %args = (
- @_
- );
-
- my $handler = HTML::Mason::CGIHandler->new(
- comp_root => [
- [ local => $RT::MasonLocalComponentRoot ],
- [ standard => $RT::MasonComponentRoot ]
- ],
- data_dir => "$RT::MasonDataDir",
- default_escape_flags => 'h',
- allow_globals => [qw(%session)]
- );
-
-
- $handler->interp->set_escape( h => \&RT::Interface::Web::EscapeUTF8 );
-
-
- return ($handler);
-
-}
-# }}}
-
-
-# {{{ EscapeUTF8
-
-=head2 EscapeUTF8 SCALARREF
-
-does a css-busting but minimalist escaping of whatever html you're passing in.
-
-=cut
-
-sub EscapeUTF8 {
- my $ref = shift;
- my $val = $$ref;
- use bytes;
- $val =~ s/&/&#38;/g;
- $val =~ s/</&lt;/g;
- $val =~ s/>/&gt;/g;
- $val =~ s/\(/&#40;/g;
- $val =~ s/\)/&#41;/g;
- $val =~ s/"/&#34;/g;
- $val =~ s/'/&#39;/g;
- $$ref = $val;
- Encode::_utf8_on($$ref);
-
-}
-
-# }}}
-
-
-package HTML::Mason::Commands;
-use strict;
-use vars qw/$r $m %session/;
-
-
-# {{{ loc
-
-=head2 loc ARRAY
-
-loc is a nice clean global routine which calls $session{'CurrentUser'}->loc()
-with whatever it's called with. If there is no $session{'CurrentUser'},
-it creates a temporary user, so we have something to get a localisation handle
-through
-
-=cut
-
-sub loc {
-
- if ($session{'CurrentUser'} &&
- UNIVERSAL::can($session{'CurrentUser'}, 'loc')){
- return($session{'CurrentUser'}->loc(@_));
- }
- else {
- my $u = RT::CurrentUser->new($RT::SystemUser);
- return ($u->loc(@_));
- }
-}
-
-# }}}
-
-
-# {{{ loc_fuzzy
-
-=head2 loc_fuzzy STRING
-
-loc_fuzzy is for handling localizations of messages that may already
-contain interpolated variables, typically returned from libraries
-outside RT's control. It takes the message string and extracts the
-variable array automatically by matching against the candidate entries
-inside the lexicon file.
-
-=cut
-
-sub loc_fuzzy {
- my $msg = shift;
-
- if ($session{'CurrentUser'} &&
- UNIVERSAL::can($session{'CurrentUser'}, 'loc')){
- return($session{'CurrentUser'}->loc_fuzzy($msg));
- }
- else {
- my $u = RT::CurrentUser->new($RT::SystemUser);
- return ($u->loc_fuzzy($msg));
- }
-}
-
-# }}}
-
-
-# {{{ sub Abort
-# Error - calls Error and aborts
-sub Abort {
-
- if ($session{'ErrorDocument'} &&
- $session{'ErrorDocumentType'}) {
- $r->content_type($session{'ErrorDocumentType'});
- $m->comp($session{'ErrorDocument'} , Why => shift);
- $m->abort;
- }
- else {
- $m->comp("/Elements/Error" , Why => shift);
- $m->abort;
- }
-}
-
-# }}}
-
-# {{{ sub CreateTicket
-
-=head2 CreateTicket ARGS
-
-Create a new ticket, using Mason's %ARGS. returns @results.
-
-=cut
-
-sub CreateTicket {
- my %ARGS = (@_);
-
- my (@Actions);
-
- my $Ticket = new RT::Ticket( $session{'CurrentUser'} );
-
- my $Queue = new RT::Queue( $session{'CurrentUser'} );
- unless ( $Queue->Load( $ARGS{'Queue'} ) ) {
- Abort('Queue not found');
- }
-
- unless ( $Queue->CurrentUserHasRight('CreateTicket') ) {
- Abort('You have no permission to create tickets in that queue.');
- }
-
- my $due = new RT::Date( $session{'CurrentUser'} );
- $due->Set( Format => 'unknown', Value => $ARGS{'Due'} );
- my $starts = new RT::Date( $session{'CurrentUser'} );
- $starts->Set( Format => 'unknown', Value => $ARGS{'Starts'} );
-
- my @Requestors = split ( /\s*,\s*/, $ARGS{'Requestors'} );
- my @Cc = split ( /\s*,\s*/, $ARGS{'Cc'} );
- my @AdminCc = split ( /\s*,\s*/, $ARGS{'AdminCc'} );
-
- my $MIMEObj = MakeMIMEEntity(
- Subject => $ARGS{'Subject'},
- From => $ARGS{'From'},
- Cc => $ARGS{'Cc'},
- Body => $ARGS{'Content'},
- );
-
- if ($ARGS{'Attachments'}) {
- $MIMEObj->make_multipart;
- $MIMEObj->add_part($_) foreach values %{$ARGS{'Attachments'}};
- }
-
- my %create_args = (
- Queue => $ARGS{'Queue'},
- Owner => $ARGS{'Owner'},
- InitialPriority => $ARGS{'InitialPriority'},
- FinalPriority => $ARGS{'FinalPriority'},
- TimeLeft => $ARGS{'TimeLeft'},
- TimeEstimated => $ARGS{'TimeEstimated'},
- TimeWorked => $ARGS{'TimeWorked'},
- Requestor => \@Requestors,
- Cc => \@Cc,
- AdminCc => \@AdminCc,
- Subject => $ARGS{'Subject'},
- Status => $ARGS{'Status'},
- Due => $due->ISO,
- Starts => $starts->ISO,
- MIMEObj => $MIMEObj
- );
- foreach my $arg (%ARGS) {
- if ($arg =~ /^CustomField-(\d+)(.*?)$/) {
- next if ($arg =~ /-Magic$/);
- $create_args{"CustomField-".$1} = $ARGS{"$arg"};
- }
- }
- my ( $id, $Trans, $ErrMsg ) = $Ticket->Create(%create_args);
- unless ( $id && $Trans ) {
- Abort($ErrMsg);
- }
- my @linktypes = qw( DependsOn MemberOf RefersTo );
-
- foreach my $linktype (@linktypes) {
- foreach my $luri ( split ( / /, $ARGS{"new-$linktype"} ) ) {
- $luri =~ s/\s*$//; # Strip trailing whitespace
- my ( $val, $msg ) = $Ticket->AddLink(
- Target => $luri,
- Type => $linktype
- );
- push ( @Actions, $msg ) unless ($val);
- }
-
- foreach my $luri ( split ( / /, $ARGS{"$linktype-new"} ) ) {
- my ( $val, $msg ) = $Ticket->AddLink(
- Base => $luri,
- Type => $linktype
- );
-
- push ( @Actions, $msg ) unless ($val);
- }
- }
-
- push ( @Actions, split("\n", $ErrMsg) );
- unless ( $Ticket->CurrentUserHasRight('ShowTicket') ) {
- Abort( "No permission to view newly created ticket #"
- . $Ticket->id . "." );
- }
- return ( $Ticket, @Actions );
-
-}
-
-# }}}
-
-# {{{ sub LoadTicket - loads a ticket
-
-=head2 LoadTicket id
-
-Takes a ticket id as its only variable. if it's handed an array, it takes
-the first value.
-
-Returns an RT::Ticket object as the current user.
-
-=cut
-
-sub LoadTicket {
- my $id = shift;
-
- if ( ref($id) eq "ARRAY" ) {
- $id = $id->[0];
- }
-
- unless ($id) {
- Abort("No ticket specified");
- }
-
- my $Ticket = RT::Ticket->new( $session{'CurrentUser'} );
- $Ticket->Load($id);
- unless ( $Ticket->id ) {
- Abort("Could not load ticket $id");
- }
- return $Ticket;
-}
-
-# }}}
-
-# {{{ sub ProcessUpdateMessage
-
-sub ProcessUpdateMessage {
-
- #TODO document what else this takes.
- my %args = (
- ARGSRef => undef,
- Actions => undef,
- TicketObj => undef,
- @_
- );
-
- #Make the update content have no 'weird' newlines in it
- if ( $args{ARGSRef}->{'UpdateContent'} ) {
-
- if (
- $args{ARGSRef}->{'UpdateSubject'} eq $args{'TicketObj'}->Subject() )
- {
- $args{ARGSRef}->{'UpdateSubject'} = undef;
- }
-
- my $Message = MakeMIMEEntity(
- Subject => $args{ARGSRef}->{'UpdateSubject'},
- Body => $args{ARGSRef}->{'UpdateContent'},
- );
-
- if ($args{ARGSRef}->{'UpdateAttachments'}) {
- $Message->make_multipart;
- $Message->add_part($_) foreach values %{$args{ARGSRef}->{'UpdateAttachments'}};
- }
-
- ## TODO: Implement public comments
- if ( $args{ARGSRef}->{'UpdateType'} =~ /^(private|public)$/ ) {
- my ( $Transaction, $Description ) = $args{TicketObj}->Comment(
- CcMessageTo => $args{ARGSRef}->{'UpdateCc'},
- BccMessageTo => $args{ARGSRef}->{'UpdateBcc'},
- MIMEObj => $Message,
- TimeTaken => $args{ARGSRef}->{'UpdateTimeWorked'}
- );
- push ( @{ $args{Actions} }, $Description );
- }
- elsif ( $args{ARGSRef}->{'UpdateType'} eq 'response' ) {
- my ( $Transaction, $Description ) = $args{TicketObj}->Correspond(
- CcMessageTo => $args{ARGSRef}->{'UpdateCc'},
- BccMessageTo => $args{ARGSRef}->{'UpdateBcc'},
- MIMEObj => $Message,
- TimeTaken => $args{ARGSRef}->{'UpdateTimeWorked'}
- );
- push ( @{ $args{Actions} }, $Description );
- }
- else {
- push ( @{ $args{'Actions'} },
- loc("Update type was neither correspondence nor comment.").
- " ".
- loc("Update not recorded.")
- );
- }
- }
-}
-
-# }}}
-
-# {{{ sub MakeMIMEEntity
-
-=head2 MakeMIMEEntity PARAMHASH
-
-Takes a paramhash Subject, Body and AttachmentFieldName.
-
- Returns a MIME::Entity.
-
-=cut
-
-sub MakeMIMEEntity {
-
- #TODO document what else this takes.
- my %args = (
- Subject => undef,
- From => undef,
- Cc => undef,
- Body => undef,
- AttachmentFieldName => undef,
- map Encode::encode_utf8($_), @_,
- );
-
- #Make the update content have no 'weird' newlines in it
-
- $args{'Body'} =~ s/\r\n/\n/gs;
- my $Message;
- {
- # MIME::Head is not happy in utf-8 domain. This only happens
- # when processing an incoming email (so far observed).
- no utf8;
- use bytes;
- $Message = MIME::Entity->build(
- Subject => $args{'Subject'} || "",
- From => $args{'From'},
- Cc => $args{'Cc'},
- Data => [ $args{'Body'} ]
- );
- }
-
- my $cgi_object = $m->cgi_object;
-
- if (my $filehandle = $cgi_object->upload( $args{'AttachmentFieldName'} ) ) {
-
-
-
- use File::Temp qw(tempfile tempdir);
-
- #foreach my $filehandle (@filenames) {
-
- my ( $fh, $temp_file ) = tempfile();
-
- binmode $fh; #thank you, windows
- my ($buffer);
- while ( my $bytesread = read( $filehandle, $buffer, 4096 ) ) {
- print $fh $buffer;
- }
-
- my $uploadinfo = $cgi_object->uploadInfo($filehandle);
-
- # Prefer the cached name first over CGI.pm stringification.
- my $filename = $RT::Mason::CGI::Filename;
- $filename = "$filehandle" unless defined($filename);
-
- $filename =~ s#^.*[\\/]##;
-
- $Message->attach(
- Path => $temp_file,
- Filename => $filename,
- Type => $uploadinfo->{'Content-Type'},
- );
- close($fh);
-
- # }
-
- }
-
- $Message->make_singlepart();
- RT::I18N::SetMIMEEntityToUTF8($Message); # convert text parts into utf-8
-
- return ($Message);
-
-}
-
-# }}}
-
-# {{{ sub ProcessSearchQuery
-
-=head2 ProcessSearchQuery
-
- Takes a form such as the one filled out in webrt/Search/Elements/PickRestriction and turns it into something that RT::Tickets can understand.
-
-TODO Doc exactly what comes in the paramhash
-
-
-=cut
-
-sub ProcessSearchQuery {
- my %args = @_;
-
- ## TODO: The only parameter here is %ARGS. Maybe it would be
- ## cleaner to load this parameter as $ARGS, and use $ARGS->{...}
- ## instead of $args{ARGS}->{...} ? :)
-
- #Searches are sticky.
- if ( defined $session{'tickets'} ) {
-
- # Reset the old search
- $session{'tickets'}->GotoFirstItem;
- }
- else {
-
- # Init a new search
- $session{'tickets'} = RT::Tickets->new( $session{'CurrentUser'} );
- }
-
- #Import a bookmarked search if we have one
- if ( defined $args{ARGS}->{'Bookmark'} ) {
- $session{'tickets'}->ThawLimits( $args{ARGS}->{'Bookmark'} );
- }
-
- # {{{ Goto next/prev page
- if ( $args{ARGS}->{'GotoPage'} eq 'Next' ) {
- $session{'tickets'}->NextPage;
- }
- elsif ( $args{ARGS}->{'GotoPage'} eq 'Prev' ) {
- $session{'tickets'}->PrevPage;
- }
- elsif ( $args{ARGS}->{'GotoPage'} > 0 ) {
- $session{'tickets'}->GotoPage( $args{ARGS}->{GotoPage} - 1 );
- }
-
- # }}}
-
- # {{{ Deal with limiting the search
-
- if ( $args{ARGS}->{'RefreshSearchInterval'} ) {
- $session{'tickets_refresh_interval'} =
- $args{ARGS}->{'RefreshSearchInterval'};
- }
-
- if ( $args{ARGS}->{'TicketsSortBy'} ) {
- $session{'tickets_sort_by'} = $args{ARGS}->{'TicketsSortBy'};
- $session{'tickets_sort_order'} = $args{ARGS}->{'TicketsSortOrder'};
- $session{'tickets'}->OrderBy(
- FIELD => $args{ARGS}->{'TicketsSortBy'},
- ORDER => $args{ARGS}->{'TicketsSortOrder'}
- );
- }
-
- # }}}
-
- # {{{ Set the query limit
- if ( defined $args{ARGS}->{'RowsPerPage'} ) {
- $RT::Logger->debug(
- "limiting to " . $args{ARGS}->{'RowsPerPage'} . " rows" );
-
- $session{'tickets_rows_per_page'} = $args{ARGS}->{'RowsPerPage'};
- $session{'tickets'}->RowsPerPage( $args{ARGS}->{'RowsPerPage'} );
- }
-
- # }}}
- # {{{ Limit priority
- if ( $args{ARGS}->{'ValueOfPriority'} ne '' ) {
- $session{'tickets'}->LimitPriority(
- VALUE => $args{ARGS}->{'ValueOfPriority'},
- OPERATOR => $args{ARGS}->{'PriorityOp'}
- );
- }
-
- # }}}
- # {{{ Limit owner
- if ( $args{ARGS}->{'ValueOfOwner'} ne '' ) {
- $session{'tickets'}->LimitOwner(
- VALUE => $args{ARGS}->{'ValueOfOwner'},
- OPERATOR => $args{ARGS}->{'OwnerOp'}
- );
- }
-
- # }}}
- # {{{ Limit requestor email
-
- if ( $args{ARGS}->{'ValueOfRequestor'} ne '' ) {
- my $alias = $session{'tickets'}->LimitRequestor(
- VALUE => $args{ARGS}->{'ValueOfRequestor'},
- OPERATOR => $args{ARGS}->{'RequestorOp'},
- );
-
- }
-
- # }}}
- # {{{ Limit Queue
- if ( $args{ARGS}->{'ValueOfQueue'} ne '' ) {
- $session{'tickets'}->LimitQueue(
- VALUE => $args{ARGS}->{'ValueOfQueue'},
- OPERATOR => $args{ARGS}->{'QueueOp'}
- );
- }
-
- # }}}
- # {{{ Limit Status
- if ( $args{ARGS}->{'ValueOfStatus'} ne '' ) {
- if ( ref( $args{ARGS}->{'ValueOfStatus'} ) ) {
- foreach my $value ( @{ $args{ARGS}->{'ValueOfStatus'} } ) {
- $session{'tickets'}->LimitStatus(
- VALUE => $value,
- OPERATOR => $args{ARGS}->{'StatusOp'},
- );
- }
- }
- else {
- $session{'tickets'}->LimitStatus(
- VALUE => $args{ARGS}->{'ValueOfStatus'},
- OPERATOR => $args{ARGS}->{'StatusOp'},
- );
- }
-
- }
-
- # }}}
- # {{{ Limit Subject
- if ( $args{ARGS}->{'ValueOfSubject'} ne '' ) {
- my $val = $args{ARGS}->{'ValueOfSubject'};
- if ($args{ARGS}->{'SubjectOp'} =~ /like/) {
- $val = "%".$val."%";
- }
- $session{'tickets'}->LimitSubject(
- VALUE => $val,
- OPERATOR => $args{ARGS}->{'SubjectOp'},
- );
- }
-
- # }}}
- # {{{ Limit Dates
- if ( $args{ARGS}->{'ValueOfDate'} ne '' ) {
- my $date = ParseDateToISO( $args{ARGS}->{'ValueOfDate'} );
- $args{ARGS}->{'DateType'} =~ s/_Date$//;
-
- if ( $args{ARGS}->{'DateType'} eq 'Updated' ) {
- $session{'tickets'}->LimitTransactionDate(
- VALUE => $date,
- OPERATOR => $args{ARGS}->{'DateOp'},
- );
- }
- else {
- $session{'tickets'}->LimitDate( FIELD => $args{ARGS}->{'DateType'},
- VALUE => $date,
- OPERATOR => $args{ARGS}->{'DateOp'},
- );
- }
- }
-
- # }}}
- # {{{ Limit Content
- if ( $args{ARGS}->{'ValueOfAttachmentField'} ne '' ) {
- my $val = $args{ARGS}->{'ValueOfAttachmentField'};
- if ($args{ARGS}->{'AttachmentFieldOp'} =~ /like/) {
- $val = "%".$val."%";
- }
- $session{'tickets'}->Limit(
- FIELD => $args{ARGS}->{'AttachmentField'},
- VALUE => $val,
- OPERATOR => $args{ARGS}->{'AttachmentFieldOp'},
- );
- }
-
- # }}}
-
- # {{{ Limit CustomFields
-
- foreach my $arg ( keys %{ $args{ARGS} } ) {
- my $id;
- if ( $arg =~ /^CustomField(\d+)$/ ) {
- $id = $1;
- }
- else {
- next;
- }
- next unless ( $args{ARGS}->{$arg} );
-
- my $form = $args{ARGS}->{$arg};
- my $oper = $args{ARGS}->{ "CustomFieldOp" . $id };
- foreach my $value ( ref($form) ? @{$form} : ($form) ) {
- my $quote = 1;
- if ($oper =~ /like/i) {
- $value = "%".$value."%";
- }
- if ( $value =~ /^null$/i ) {
-
- #Don't quote the string 'null'
- $quote = 0;
-
- # Convert the operator to something apropriate for nulls
- $oper = 'IS' if ( $oper eq '=' );
- $oper = 'IS NOT' if ( $oper eq '!=' );
- }
- $session{'tickets'}->LimitCustomField( CUSTOMFIELD => $id,
- OPERATOR => $oper,
- QUOTEVALUE => $quote,
- VALUE => $value );
- }
- }
-
- # }}}
-
-
-}
-
-# }}}
-
-# {{{ sub ParseDateToISO
-
-=head2 ParseDateToISO
-
-Takes a date in an arbitrary format.
-Returns an ISO date and time in GMT
-
-=cut
-
-sub ParseDateToISO {
- my $date = shift;
-
- my $date_obj = RT::Date->new($session{'CurrentUser'});
- $date_obj->Set(
- Format => 'unknown',
- Value => $date
- );
- return ( $date_obj->ISO );
-}
-
-# }}}
-
-# {{{ sub Config
-# TODO: This might eventually read the cookies, user configuration
-# information from the DB, queue configuration information from the
-# DB, etc.
-
-sub Config {
- my $args = shift;
- my $key = shift;
- return $args->{$key} || $RT::WebOptions{$key};
-}
-
-# }}}
-
-# {{{ sub ProcessACLChanges
-
-sub ProcessACLChanges {
- my $ARGSref = shift;
-
- my %ARGS = %$ARGSref;
-
- my ( $ACL, @results );
-
-
- foreach my $arg (keys %ARGS) {
- if ($arg =~ /GrantRight-(\d+)-(.*?)-(\d+)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $rights = $ARGS{$arg};
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
-
- my $obj;
-
- if ($object_type eq 'RT::Queue') {
- $obj = RT::Queue->new($session{'CurrentUser'});
- $obj->Load($object_id);
- } elsif ($object_type eq 'RT::Group') {
- $obj = RT::Group->new($session{'CurrentUser'});
- $obj->Load($object_id);
-
- } elsif ($object_type eq 'RT::System') {
- $obj = $RT::System;
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be granted for [_1]", $object_type));
- next;
- }
-
- my @rights = ref($ARGS{$arg}) eq 'ARRAY' ? @{$ARGS{$arg}} : ($ARGS{$arg});
- foreach my $right (@rights) {
- next unless ($right);
- my ($val, $msg) = $principal->GrantRight(Object => $obj, Right => $right);
- push (@results, $msg);
- }
- }
- elsif ($arg =~ /RevokeRight-(\d+)-(.*?)-(\d+)-(.*?)$/) {
- my $principal_id = $1;
- my $object_type = $2;
- my $object_id = $3;
- my $right = $4;
-
- my $principal = RT::Principal->new($session{'CurrentUser'});
- $principal->Load($principal_id);
- next unless ($right);
- my $obj;
-
- if ($object_type eq 'RT::Queue') {
- $obj = RT::Queue->new($session{'CurrentUser'});
- $obj->Load($object_id);
- } elsif ($object_type eq 'RT::Group') {
- $obj = RT::Group->new($session{'CurrentUser'});
- $obj->Load($object_id);
-
- } elsif ($object_type eq 'RT::System') {
- $obj = $RT::System;
- } else {
- push (@results, loc("System Error").
- loc("Rights could not be revoked for [_1]", $object_type));
- next;
- }
- my ($val, $msg) = $principal->RevokeRight(Object => $obj, Right => $right);
- push (@results, $msg);
- }
-
-
- }
-
- return (@results);
-
- }
-
-# }}}
-
-# {{{ sub UpdateRecordObj
-
-=head2 UpdateRecordObj ( ARGSRef => \%ARGS, Object => RT::Record, AttributesRef => \@attribs)
-
-@attribs is a list of ticket fields to check and update if they differ from the B<Object>'s current values. ARGSRef is a ref to HTML::Mason's %ARGS.
-
-Returns an array of success/failure messages
-
-=cut
-
-sub UpdateRecordObject {
- my %args = (
- ARGSRef => undef,
- AttributesRef => undef,
- Object => undef,
- AttributePrefix => undef,
- @_
- );
-
- my (@results);
-
- my $object = $args{'Object'};
- my $attributes = $args{'AttributesRef'};
- my $ARGSRef = $args{'ARGSRef'};
- foreach my $attribute (@$attributes) {
- my $value;
- if ( defined $ARGSRef->{$attribute} ) {
- $value = $ARGSRef->{$attribute};
- }
- elsif (
- defined( $args{'AttributePrefix'} )
- && defined(
- $ARGSRef->{ $args{'AttributePrefix'} . "-" . $attribute }
- )
- ) {
- $value = $ARGSRef->{ $args{'AttributePrefix'} . "-" . $attribute };
-
- } else {
- next;
- }
-
- $value =~ s/\r\n/\n/gs;
-
- if ($value ne $object->$attribute()){
-
- my $method = "Set$attribute";
- my ( $code, $msg ) = $object->$method($value);
-
- push @results, loc($attribute) . ': ' . loc_fuzzy($msg);
-=for loc
- "[_1] could not be set to [_2].", # loc
- "That is already the current value", # loc
- "No value sent to _Set!\n", # loc
- "Illegal value for [_1]", # loc
- "The new value has been set.", # loc
- "No column specified", # loc
- "Immutable field", # loc
- "Nonexistant field?", # loc
- "Invalid data", # loc
- "Couldn't find row", # loc
- "Missing a primary key?: [_1]", # loc
- "Found Object", # loc
-=cut
- };
- }
- return (@results);
-}
-
-# }}}
-
-# {{{ Sub ProcessCustomFieldUpdates
-
-sub ProcessCustomFieldUpdates {
- my %args = (
- CustomFieldObj => undef,
- ARGSRef => undef,
- @_
- );
-
- my $Object = $args{'CustomFieldObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- my @attribs = qw( Name Type Description Queue SortOrder);
- my @results = UpdateRecordObject(
- AttributesRef => \@attribs,
- Object => $Object,
- ARGSRef => $ARGSRef
- );
-
- if ( $ARGSRef->{ "CustomField-" . $Object->Id . "-AddValue-Name" } ) {
-
- my ( $addval, $addmsg ) = $Object->AddValue(
- Name =>
- $ARGSRef->{ "CustomField-" . $Object->Id . "-AddValue-Name" },
- Description => $ARGSRef->{ "CustomField-"
- . $Object->Id
- . "-AddValue-Description" },
- SortOrder => $ARGSRef->{ "CustomField-"
- . $Object->Id
- . "-AddValue-SortOrder" },
- );
- push ( @results, $addmsg );
- }
- my @delete_values = (
- ref $ARGSRef->{ 'CustomField-' . $Object->Id . '-DeleteValue' } eq
- 'ARRAY' )
- ? @{ $ARGSRef->{ 'CustomField-' . $Object->Id . '-DeleteValue' } }
- : ( $ARGSRef->{ 'CustomField-' . $Object->Id . '-DeleteValue' } );
- foreach my $id (@delete_values) {
- next unless defined $id;
- my ( $err, $msg ) = $Object->DeleteValue($id);
- push ( @results, $msg );
- }
- return (@results);
-}
-
-# }}}
-
-# {{{ sub ProcessTicketBasics
-
-=head2 ProcessTicketBasics ( TicketObj => $Ticket, ARGSRef => \%ARGS );
-
-Returns an array of results messages.
-
-=cut
-
-sub ProcessTicketBasics {
-
- my %args = (
- TicketObj => undef,
- ARGSRef => undef,
- @_
- );
-
- my $TicketObj = $args{'TicketObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- # {{{ Set basic fields
- my @attribs = qw(
- Subject
- FinalPriority
- Priority
- TimeEstimated
- TimeWorked
- TimeLeft
- Status
- Queue
- );
-
- if ( $ARGSRef->{'Queue'} and ( $ARGSRef->{'Queue'} !~ /^(\d+)$/ ) ) {
- my $tempqueue = RT::Queue->new($RT::SystemUser);
- $tempqueue->Load( $ARGSRef->{'Queue'} );
- if ( $tempqueue->id ) {
- $ARGSRef->{'Queue'} = $tempqueue->Id();
- }
- }
-
- my @results = UpdateRecordObject(
- AttributesRef => \@attribs,
- Object => $TicketObj,
- ARGSRef => $ARGSRef
- );
-
- # We special case owner changing, so we can use ForceOwnerChange
- if ( $ARGSRef->{'Owner'} && ( $TicketObj->Owner != $ARGSRef->{'Owner'} ) ) {
- my ($ChownType);
- if ( $ARGSRef->{'ForceOwnerChange'} ) {
- $ChownType = "Force";
- }
- else {
- $ChownType = "Give";
- }
-
- my ( $val, $msg ) =
- $TicketObj->SetOwner( $ARGSRef->{'Owner'}, $ChownType );
- push ( @results, $msg );
- }
-
- # }}}
-
- return (@results);
-}
-
-# }}}
-
-# {{{ Sub ProcessTicketCustomFieldUpdates
-
-sub ProcessTicketCustomFieldUpdates {
- my %args = (
- ARGSRef => undef,
- @_
- );
-
- my @results;
-
- my $ARGSRef = $args{'ARGSRef'};
-
- # Build up a list of tickets that we want to work with
- my %tickets_to_mod;
- my %custom_fields_to_mod;
- foreach my $arg ( keys %{$ARGSRef} ) {
- if ( $arg =~ /^Ticket-(\d+)-CustomField-(\d+)-/ ) {
-
- # For each of those tickets, find out what custom fields we want to work with.
- $custom_fields_to_mod{$1}{$2} = 1;
- }
- }
-
- # For each of those tickets
- foreach my $tick ( keys %custom_fields_to_mod ) {
- my $Ticket = RT::Ticket->new( $session{'CurrentUser'} );
- $Ticket->Load($tick);
-
- # For each custom field
- foreach my $cf ( keys %{ $custom_fields_to_mod{$tick} } ) {
-
- my $CustomFieldObj = RT::CustomField->new($session{'CurrentUser'});
- $CustomFieldObj->LoadById($cf);
-
- foreach my $arg ( keys %{$ARGSRef} ) {
- # since http won't pass in a form element with a null value, we need
- # to fake it
- if ($arg =~ /^(.*?)-Values-Magic$/ ) {
- # We don't care about the magic, if there's really a values element;
- next if (exists $ARGSRef->{$1.'-Values'}) ;
-
- $arg = $1."-Values";
- $ARGSRef->{$1."-Values"} = undef;
-
- }
- next unless ( $arg =~ /^Ticket-$tick-CustomField-$cf-/ );
- my @values =
- ( ref( $ARGSRef->{$arg} ) eq 'ARRAY' )
- ? @{ $ARGSRef->{$arg} }
- : ( $ARGSRef->{$arg} );
- if ( ( $arg =~ /-AddValue$/ ) || ( $arg =~ /-Value$/ ) ) {
- foreach my $value (@values) {
- next unless ($value);
- my ( $val, $msg ) = $Ticket->AddCustomFieldValue(
- Field => $cf,
- Value => $value
- );
- push ( @results, $msg );
- }
- }
- elsif ( $arg =~ /-DeleteValues$/ ) {
- foreach my $value (@values) {
- next unless ($value);
- my ( $val, $msg ) = $Ticket->DeleteCustomFieldValue(
- Field => $cf,
- Value => $value
- );
- push ( @results, $msg );
- }
- }
- elsif ( $arg =~ /-Values$/ and $CustomFieldObj->Type !~ /Entry/) {
- my $cf_values = $Ticket->CustomFieldValues($cf);
-
- my %values_hash;
- foreach my $value (@values) {
- next unless ($value);
-
- # build up a hash of values that the new set has
- $values_hash{$value} = 1;
-
- unless ( $cf_values->HasEntry($value) ) {
- my ( $val, $msg ) = $Ticket->AddCustomFieldValue(
- Field => $cf,
- Value => $value
- );
- push ( @results, $msg );
- }
-
- }
- while ( my $cf_value = $cf_values->Next ) {
- unless ( $values_hash{ $cf_value->Content } == 1 ) {
- my ( $val, $msg ) = $Ticket->DeleteCustomFieldValue(
- Field => $cf,
- Value => $cf_value->Content
- );
- push ( @results, $msg);
-
- }
-
- }
- }
- elsif ( $arg =~ /-Values$/ ) {
- my $cf_values = $Ticket->CustomFieldValues($cf);
-
- # keep everything up to the point of difference, delete the rest
- my $delete_flag;
- foreach my $old_cf (@{$cf_values->ItemsArrayRef}) {
- if (!$delete_flag and @values and $old_cf->Content eq $values[0]) {
- shift @values;
- next;
- }
-
- $delete_flag ||= 1;
- $old_cf->Delete;
- }
-
- # now add/replace extra things, if any
- foreach my $value (@values) {
- my ( $val, $msg ) = $Ticket->AddCustomFieldValue(
- Field => $cf,
- Value => $value
- );
- push ( @results, $msg );
- }
- }
- else {
- push ( @results, "User asked for an unknown update type for custom field " . $cf->Name . " for ticket " . $Ticket->id );
- }
- }
- }
- return (@results);
- }
-}
-
-# }}}
-
-# {{{ sub ProcessTicketWatchers
-
-=head2 ProcessTicketWatchers ( TicketObj => $Ticket, ARGSRef => \%ARGS );
-
-Returns an array of results messages.
-
-=cut
-
-sub ProcessTicketWatchers {
- my %args = (
- TicketObj => undef,
- ARGSRef => undef,
- @_
- );
- my (@results);
-
- my $Ticket = $args{'TicketObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- # {{{ Munge watchers
-
- foreach my $key ( keys %$ARGSRef ) {
-
- # {{{ Delete deletable watchers
- if ( ( $key =~ /^Ticket-DelWatcher-Type-(.*)-Principal-(\d+)$/ ) ) {
- my ( $code, $msg ) =
- $Ticket->DeleteWatcher(PrincipalId => $2,
- Type => $1);
- push @results, $msg;
- }
-
- # Delete watchers in the simple style demanded by the bulk manipulator
- elsif ( $key =~ /^Delete(Requestor|Cc|AdminCc)$/ ) {
- my ( $code, $msg ) = $Ticket->DeleteWatcher( Type => $ARGSRef->{$key}, PrincipalId => $1 );
- push @results, $msg;
- }
-
- # }}}
-
- # Add new wathchers by email address
- elsif ( ( $ARGSRef->{$key} =~ /^(AdminCc|Cc|Requestor)$/ )
- and ( $key =~ /^WatcherTypeEmail(\d*)$/ ) )
- {
-
- #They're in this order because otherwise $1 gets clobbered :/
- my ( $code, $msg ) = $Ticket->AddWatcher(
- Type => $ARGSRef->{$key},
- Email => $ARGSRef->{ "WatcherAddressEmail" . $1 }
- );
- push @results, $msg;
- }
-
- #Add requestors in the simple style demanded by the bulk manipulator
- elsif ( $key =~ /^Add(Requestor|Cc|AdminCc)$/ ) {
- my ( $code, $msg ) = $Ticket->AddWatcher(
- Type => $1,
- Email => $ARGSRef->{$key}
- );
- push @results, $msg;
- }
-
- # Add new watchers by owner
- elsif ( ( $ARGSRef->{$key} =~ /^(AdminCc|Cc|Requestor)$/ )
- and ( $key =~ /^Ticket-AddWatcher-Principal-(\d*)$/ ) ) {
-
- #They're in this order because otherwise $1 gets clobbered :/
- my ( $code, $msg ) =
- $Ticket->AddWatcher( Type => $ARGSRef->{$key}, PrincipalId => $1 );
- push @results, $msg;
- }
- }
-
- # }}}
-
- return (@results);
-}
-
-# }}}
-
-# {{{ sub ProcessTicketDates
-
-=head2 ProcessTicketDates ( TicketObj => $Ticket, ARGSRef => \%ARGS );
-
-Returns an array of results messages.
-
-=cut
-
-sub ProcessTicketDates {
- my %args = (
- TicketObj => undef,
- ARGSRef => undef,
- @_
- );
-
- my $Ticket = $args{'TicketObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- my (@results);
-
- # {{{ Set date fields
- my @date_fields = qw(
- Told
- Resolved
- Starts
- Started
- Due
- );
-
- #Run through each field in this list. update the value if apropriate
- foreach my $field (@date_fields) {
- my ( $code, $msg );
-
- my $DateObj = RT::Date->new( $session{'CurrentUser'} );
-
- #If it's something other than just whitespace
- if ( $ARGSRef->{ $field . '_Date' } ne '' ) {
- $DateObj->Set(
- Format => 'unknown',
- Value => $ARGSRef->{ $field . '_Date' }
- );
- my $obj = $field . "Obj";
- if ( ( defined $DateObj->Unix )
- and ( $DateObj->Unix ne $Ticket->$obj()->Unix() ) )
- {
- my $method = "Set$field";
- my ( $code, $msg ) = $Ticket->$method( $DateObj->ISO );
- push @results, "$msg";
- }
- }
- }
-
- # }}}
- return (@results);
-}
-
-# }}}
-
-# {{{ sub ProcessTicketLinks
-
-=head2 ProcessTicketLinks ( TicketObj => $Ticket, ARGSRef => \%ARGS );
-
-Returns an array of results messages.
-
-=cut
-
-sub ProcessTicketLinks {
- my %args = ( TicketObj => undef,
- ARGSRef => undef,
- @_ );
-
- my $Ticket = $args{'TicketObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- my (@results);
-
- # Delete links that are gone gone gone.
- foreach my $arg ( keys %$ARGSRef ) {
- if ( $arg =~ /DeleteLink-(.*?)-(DependsOn|MemberOf|RefersTo)-(.*)$/ ) {
- my $base = $1;
- my $type = $2;
- my $target = $3;
-
- push @results,
- "Trying to delete: Base: $base Target: $target Type $type";
- my ( $val, $msg ) = $Ticket->DeleteLink( Base => $base,
- Type => $type,
- Target => $target );
-
- push @results, $msg;
-
- }
-
- }
-
- my @linktypes = qw( DependsOn MemberOf RefersTo );
-
- foreach my $linktype (@linktypes) {
- if ( $ARGSRef->{ $Ticket->Id . "-$linktype" } ) {
- for my $luri ( split ( / /, $ARGSRef->{ $Ticket->Id . "-$linktype" } ) ) {
- $luri =~ s/\s*$//; # Strip trailing whitespace
- my ( $val, $msg ) = $Ticket->AddLink( Target => $luri,
- Type => $linktype );
- push @results, $msg;
- }
- }
- if ( $ARGSRef->{ "$linktype-" . $Ticket->Id } ) {
-
- for my $luri ( split ( / /, $ARGSRef->{ "$linktype-" . $Ticket->Id } ) ) {
- my ( $val, $msg ) = $Ticket->AddLink( Base => $luri,
- Type => $linktype );
-
- push @results, $msg;
- }
- }
- }
-
- #Merge if we need to
- if ( $ARGSRef->{ $Ticket->Id . "-MergeInto" } ) {
- my ( $val, $msg ) =
- $Ticket->MergeInto( $ARGSRef->{ $Ticket->Id . "-MergeInto" } );
- push @results, $msg;
- }
-
- return (@results);
-}
-
-# }}}
-
-eval "require RT::Interface::Web_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web_Vendor.pm});
-eval "require RT::Interface::Web_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Web/Handler.pm b/rt/lib/RT/Interface/Web/Handler.pm
deleted file mode 100644
index ce92225..0000000
--- a/rt/lib/RT/Interface/Web/Handler.pm
+++ /dev/null
@@ -1,221 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-package RT::Interface::Web::Handler;
-
-use CGI qw/-private_tempfiles/;
-use MIME::Entity;
-use Text::Wrapper;
-use CGI::Cookie;
-use Time::ParseDate;
-use Time::HiRes;
-use HTML::Entities;
-use HTML::Scrubber;
-use Text::Quoted;
-use RT::Interface::Web::Handler;
-use File::Path qw( rmtree );
-use File::Glob qw( bsd_glob );
-use File::Spec::Unix;
-
-sub DefaultHandlerArgs { (
- comp_root => [
- [ local => $RT::MasonLocalComponentRoot ],
- [ standard => $RT::MasonComponentRoot ]
- ],
- default_escape_flags => 'h',
- data_dir => "$RT::MasonDataDir",
- allow_globals => [qw(%session)],
- # Turn off static source if we're in developer mode.
- static_source => ($RT::DevelMode ? '0' : '1'),
- use_object_files => ($RT::DevelMode ? '0' : '1'),
- autoflush => 0
-) };
-
-# {{{ sub new
-
-=head2 new
-
- Constructs a web handler of the appropriate class.
- Takes options to pass to the constructor.
-
-=cut
-
-sub new {
- my $class = shift;
- $class->InitSessionDir;
-
- if ( $mod_perl::VERSION && $mod_perl::VERSION >= 1.9908 ) {
-# require Apache::RequestUtil;
-# no warnings 'redefine';
-# my $sub = *Apache::request{CODE};
-# *Apache::request = sub {
-# my $r;
-# eval { $r = $sub->('Apache'); };
-#
-# # warn $@ if $@;
-# return $r;
-# };
- goto &NewApacheHandler;
- }
- elsif ($CGI::MOD_PERL) {
- goto &NewApacheHandler;
- }
- else {
- goto &NewCGIHandler;
- }
-}
-
-sub InitSessionDir {
- # Activate the following if running httpd as root (the normal case).
- # Resets ownership of all files created by Mason at startup.
- # Note that mysql uses DB for sessions, so there's no need to do this.
- unless ( $RT::DatabaseType =~ /(?:mysql|Pg)/ ) {
-
- # Clean up our umask to protect session files
- umask(0077);
-
- if ($CGI::MOD_PERL) {
- chown( Apache->server->uid, Apache->server->gid,
- $RT::MasonSessionDir )
- if Apache->server->can('uid');
- }
-
- # Die if WebSessionDir doesn't exist or we can't write to it
- stat($RT::MasonSessionDir);
- die "Can't read and write $RT::MasonSessionDir"
- unless ( ( -d _ ) and ( -r _ ) and ( -w _ ) );
- }
-
-}
-
-# }}}
-
-# {{{ sub NewApacheHandler
-
-=head2 NewApacheHandler
-
- Takes extra options to pass to HTML::Mason::ApacheHandler->new
- Returns a new Mason::ApacheHandler object
-
-=cut
-
-sub NewApacheHandler {
- require HTML::Mason::ApacheHandler;
- return NewHandler('HTML::Mason::ApacheHandler', args_method => "CGI", @_);
-}
-
-# }}}
-
-# {{{ sub NewApache2Handler
-
-=head2 NewApache2Handler
-
- Takes extra options to pass to MasonX::Apache2Handler->new
- Returns a new MasonX::Apache2Handler object
-
-=cut
-
-sub NewApache2Handler {
- require MasonX::Apache2Handler;
- return NewHandler('MasonX::Apache2Handler', args_method => "CGI", @_);
-}
-
-# }}}
-
-# {{{ sub NewCGIHandler
-
-=head2 NewCGIHandler
-
- Returns a new Mason::CGIHandler object
-
-=cut
-
-sub NewCGIHandler {
- require HTML::Mason::CGIHandler;
- return NewHandler('HTML::Mason::CGIHandler', @_);
-}
-
-sub NewHandler {
- my $class = shift;
- my $handler = $class->new(
- DefaultHandlerArgs(),
- @_
- );
-
- $handler->interp->set_escape( h => \&RT::Interface::Web::EscapeUTF8 );
- $handler->interp->set_escape( u => \&RT::Interface::Web::EscapeURI );
- return($handler);
-}
-
-=head2 CleanupRequest
-
-Rollback any uncommitted transaction.
-Flush the ACL cache
-Flush the searchbuilder query cache
-
-=cut
-
-sub CleanupRequest {
-
- if ( $RT::Handle->TransactionDepth ) {
- $RT::Handle->ForceRollback;
- $RT::Logger->crit(
- "Transaction not committed. Usually indicates a software fault."
- . "Data loss may have occurred" );
- }
-
- # Clean out the ACL cache. the performance impact should be marginal.
- # Consistency is imprived, too.
- RT::Principal->InvalidateACLCache();
- DBIx::SearchBuilder::Record::Cachable->FlushCache
- if ( $RT::WebFlushDbCacheEveryRequest
- and UNIVERSAL::can(
- 'DBIx::SearchBuilder::Record::Cachable' => 'FlushCache' ) );
-
-}
-# }}}
-
-1;
diff --git a/rt/lib/RT/Interface/Web/QueryBuilder.pm b/rt/lib/RT/Interface/Web/QueryBuilder.pm
deleted file mode 100755
index b7526b3..0000000
--- a/rt/lib/RT/Interface/Web/QueryBuilder.pm
+++ /dev/null
@@ -1,56 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Interface::Web::QueryBuilder;
-
-use strict;
-use warnings;
-
-eval "require RT::Interface::Web::QueryBuilder_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web/QueryBuilder_Vendor.pm});
-eval "require RT::Interface::Web::QueryBuilder_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web/QueryBuilder_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Web/QueryBuilder/Tree.pm b/rt/lib/RT/Interface/Web/QueryBuilder/Tree.pm
deleted file mode 100755
index 67b7283..0000000
--- a/rt/lib/RT/Interface/Web/QueryBuilder/Tree.pm
+++ /dev/null
@@ -1,245 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Interface::Web::QueryBuilder::Tree;
-
-use strict;
-use warnings;
-
-use base qw/Tree::Simple/;
-
-=head1 NAME
-
- RT::Interface::Web::QueryBuilder::Tree - subclass of Tree::Simple used in Query Builder
-
-=head1 DESCRIPTION
-
-This class provides support functionality for the Query Builder (Search/Build.html).
-It is a subclass of L<Tree::Simple>.
-
-=head1 METHODS
-
-=head2 TraversePrePost PREFUNC POSTFUNC
-
-Traverses the tree depth-first. Before processing the node's children,
-calls PREFUNC with the node as its argument; after processing all of the
-children, calls POSTFUNC with the node as its argument.
-
-(Note that unlike Tree::Simple's C<traverse>, it actually calls its functions
-on the root node passed to it.)
-
-=cut
-
-sub TraversePrePost {
- my ($self, $prefunc, $postfunc) = @_;
-
- $prefunc->($self);
-
- foreach my $child ($self->getAllChildren()) {
- $child->TraversePrePost($prefunc, $postfunc);
- }
-
- $postfunc->($self);
-}
-
-=head2 GetReferencedQueues
-
-Returns a hash reference with keys each queue name referenced in a clause in
-the key (even if it's "Queue != 'Foo'"), and values all 1.
-
-=cut
-
-sub GetReferencedQueues {
- my $self = shift;
-
- my $queues = {};
-
- $self->traverse(
- sub {
- my $node = shift;
-
- return if $node->isRoot;
-
- my $clause = $node->getNodeValue();
-
- if ( ref($clause) and $clause->{Key} eq 'Queue' ) {
- $queues->{ $clause->{Value} } = 1;
- };
- }
- );
-
- return $queues;
-}
-
-=head2 GetQueryAndOptionList SELECTED_NODES
-
-Given an array reference of tree nodes that have been selected by the user,
-traverses the tree and returns the equivalent SQL query and a list of hashes
-representing the "clauses" select option list. Each has contains the keys
-TEXT, INDEX, SELECTED, and DEPTH. TEXT is the displayed text of the option
-(including parentheses, not including indentation); INDEX is the 0-based
-index of the option in the list (also used as its CGI parameter); SELECTED
-is either 'SELECTED' or '', depending on whether the node corresponding
-to the select option was in the SELECTED_NODES list; and DEPTH is the
-level of indentation for the option.
-
-=cut
-
-sub GetQueryAndOptionList {
- my $self = shift;
- my $selected_nodes = shift;
-
- my $optionlist = [];
-
- my $i = 0;
-
- $self->TraversePrePost(
- sub { # This is called before recursing to the node's children.
- my $node = shift;
-
- return if $node->isRoot or $node->getParent->isRoot;
-
- my $clause = $node->getNodeValue();
- my $str = ' ';
- my $aggregator_context = $node->getParent()->getNodeValue();
- $str = $aggregator_context . " " if $node->getIndex() > 0;
-
- if ( ref($clause) ) { # ie, it's a leaf
- $str .=
- $clause->{Key} . " " . $clause->{Op} . " " . $clause->{Value};
- }
-
- unless ($node->getParent->getParent->isRoot) {
- # used to check !ref( $parent->getNodeValue() ) )
- if ( $node->getIndex() == 0 ) {
- $str = '( ' . $str;
- }
- }
-
- push @$optionlist, {
- TEXT => $str,
- INDEX => $i,
- SELECTED => (grep { $_ == $node } @$selected_nodes) ? 'SELECTED' : '',
- DEPTH => $node->getDepth() - 1,
- };
-
- $i++;
- }, sub {
- # This is called after recursing to the node's children.
- my $node = shift;
-
- return if $node->isRoot or $node->getParent->isRoot or $node->getParent->getParent->isRoot;
-
- # Only do this for the rightmost child.
- return unless $node->getIndex == $node->getParent->getChildCount - 1;
-
- $optionlist->[-1]{TEXT} .= ' )';
- }
- );
-
- return (join ' ', map { $_->{TEXT} } @$optionlist), $optionlist;
-}
-
-=head2 PruneChildLessAggregators
-
-If tree manipulation has left it in a state where there are ANDs, ORs,
-or parenthesizations with no children, get rid of them.
-
-=cut
-
-sub PruneChildlessAggregators {
- my $self = shift;
-
- $self->TraversePrePost(
- sub {
- },
- sub {
- my $node = shift;
-
- return if $node->isRoot or $node->getParent->isRoot;
-
- # We're only looking for aggregators (AND/OR)
- return if ref $node->getNodeValue;
-
- return if $node->getChildCount != 0;
-
- # OK, this is a childless aggregator. Remove self.
-
- $node->getParent->removeChild($node);
-
- # Deal with circular refs
- $node->DESTROY;
- }
- );
-}
-
-=head2 GetDisplayedNodes
-
-This function returns a list of the nodes of the tree in depth-first
-order which correspond to options in the "clauses" multi-select box.
-In fact, it's all of them but the root and its child.
-
-=cut
-
-sub GetDisplayedNodes {
- my $self = shift;
- my @lines;
-
- $self->traverse(sub {
- my $node = shift;
-
- push @lines, $node unless $node->isRoot or $node->getParent->isRoot;
- });
-
- return @lines;
-}
-
-
-eval "require RT::Interface::Web::QueryBuilder::Tree_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web/QueryBuilder/Tree_Vendor.pm});
-eval "require RT::Interface::Web::QueryBuilder::Tree_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Interface/Web/QueryBuilder/Tree_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Interface/Web/Standalone.pm b/rt/lib/RT/Interface/Web/Standalone.pm
deleted file mode 100755
index bc2423e..0000000
--- a/rt/lib/RT/Interface/Web/Standalone.pm
+++ /dev/null
@@ -1,37 +0,0 @@
-package RT::Interface::Web::Standalone;
-
-use strict;
-use base 'HTTP::Server::Simple::Mason';
-use RT::Interface::Web::Handler;
-use RT::Interface::Web;
-
-sub handler_class { "RT::Interface::Web::Handler" }
-
-sub setup_escapes {
- my $self = shift;
- my $handler = shift;
-
- # Override HTTP::Server::Simple::Mason's version of this method to do
- # nothing. (RT::Interface::Web::Handler does this already for us in
- # NewHandler.)
-}
-
-sub default_mason_config {
- return @RT::MasonParameters;
-}
-
-sub handle_request {
-
- my $self = shift;
- my $cgi = shift;
-
- Module::Refresh->refresh if $RT::DevelMode;
-
- $self->SUPER::handle_request($cgi);
- $RT::Logger->crit($@) if ($@);
-
- RT::Interface::Web::Handler->CleanupRequest();
-
-}
-
-1;
diff --git a/rt/lib/RT/Interface/Web_Vendor.pm b/rt/lib/RT/Interface/Web_Vendor.pm
deleted file mode 100644
index 5be20e6..0000000
--- a/rt/lib/RT/Interface/Web_Vendor.pm
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright (c) 2004 Ivan Kohler <ivan-rt@420.am>
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-
-=head1 NAME
-
-RT::Interface::Web_Vendor
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-Freeside vendor overlay for RT::Interface::Web.
-
-=begin testing
-
-use_ok(RT::Interface::Web_Vendor);
-
-=end testing
-
-=cut
-
-#package RT::Interface::Web;
-#use strict;
-
-package HTML::Mason::Commands;
-use strict;
-
-=head2 ProcessTicketCustomers
-
-=cut
-
-sub ProcessTicketCustomers {
- my %args = (
- TicketObj => undef,
- ARGSRef => undef,
- @_
- );
- my @results = ();
-
- my $Ticket = $args{'TicketObj'};
- my $ARGSRef = $args{'ARGSRef'};
-
- ### false laziness w/RT::Interface::Web::ProcessTicketLinks
- # Delete links that are gone gone gone.
- foreach my $arg ( keys %$ARGSRef ) {
- if ( $arg =~ /DeleteLink-(.*?)-(DependsOn|MemberOf|RefersTo)-(.*)$/ ) {
- my $base = $1;
- my $type = $2;
- my $target = $3;
-
- push @results,
- "Trying to delete: Base: $base Target: $target Type $type";
- my ( $val, $msg ) = $Ticket->DeleteLink( Base => $base,
- Type => $type,
- Target => $target );
-
- push @results, $msg;
-
- }
-
- }
- ###
-
- my @delete_custnums =
- map { /^Ticket-AddCustomer-(\d+)$/; $1 }
- grep { /^Ticket-AddCustomer-(\d+)$/ && $ARGSRef->{$_} }
- keys %$ARGSRef;
-
- my @custnums = map { /^Ticket-AddCustomer-(\d+)$/; $1 }
- grep { /^Ticket-AddCustomer-(\d+)$/ && $ARGSRef->{$_} }
- keys %$ARGSRef;
-
- foreach my $custnum ( @custnums ) {
- my( $val, $msg ) =
- $Ticket->AddLink( 'Type' => 'MemberOf',
- 'Target' => "freeside://freeside/cust_main/$custnum",
- );
- push @results, $msg;
- }
-
- return @results;
-
-}
-
-1;
-
diff --git a/rt/lib/RT/Link.pm b/rt/lib/RT/Link.pm
deleted file mode 100644
index 962c378..0000000
--- a/rt/lib/RT/Link.pm
+++ /dev/null
@@ -1,302 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Link
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Link;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Links');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(240) 'Base'.
- varchar(240) 'Target'.
- varchar(20) 'Type'.
- int(11) 'LocalTarget'.
- int(11) 'LocalBase'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Base => '',
- Target => '',
- Type => '',
- LocalTarget => '0',
- LocalBase => '0',
-
- @_);
- $self->SUPER::Create(
- Base => $args{'Base'},
- Target => $args{'Target'},
- Type => $args{'Type'},
- LocalTarget => $args{'LocalTarget'},
- LocalBase => $args{'LocalBase'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Base
-
-Returns the current value of Base.
-(In the database, Base is stored as varchar(240).)
-
-
-
-=item SetBase VALUE
-
-
-Set Base to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Base will be stored as a varchar(240).)
-
-
-=cut
-
-
-=item Target
-
-Returns the current value of Target.
-(In the database, Target is stored as varchar(240).)
-
-
-
-=item SetTarget VALUE
-
-
-Set Target to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Target will be stored as a varchar(240).)
-
-
-=cut
-
-
-=item Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(20).)
-
-
-
-=item SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(20).)
-
-
-=cut
-
-
-=item LocalTarget
-
-Returns the current value of LocalTarget.
-(In the database, LocalTarget is stored as int(11).)
-
-
-
-=item SetLocalTarget VALUE
-
-
-Set LocalTarget to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, LocalTarget will be stored as a int(11).)
-
-
-=cut
-
-
-=item LocalBase
-
-Returns the current value of LocalBase.
-(In the database, LocalBase is stored as int(11).)
-
-
-
-=item SetLocalBase VALUE
-
-
-Set LocalBase to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, LocalBase will be stored as a int(11).)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Base =>
- {read => 1, write => 1, type => 'varchar(240)', default => ''},
- Target =>
- {read => 1, write => 1, type => 'varchar(240)', default => ''},
- Type =>
- {read => 1, write => 1, type => 'varchar(20)', default => ''},
- LocalTarget =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- LocalBase =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Link_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Link_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Link_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Link_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Link_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Link_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Link_Overlay, RT::Link_Vendor, RT::Link_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Link_Overlay.pm b/rt/lib/RT/Link_Overlay.pm
deleted file mode 100644
index 28143cf..0000000
--- a/rt/lib/RT/Link_Overlay.pm
+++ /dev/null
@@ -1,389 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Link - an RT Link object
-
-=head1 SYNOPSIS
-
- use RT::Link;
-
-=head1 DESCRIPTION
-
-This module should never be called directly by client code. it's an internal module which
-should only be accessed through exported APIs in Ticket other similar objects.
-
-=head1 METHODS
-
-
-=begin testing
-
-
-use RT::Link;
-my $link = RT::Link->new($RT::SystemUser);
-
-
-ok (ref $link);
-ok (UNIVERSAL::isa($link, 'RT::Link'));
-ok (UNIVERSAL::isa($link, 'RT::Base'));
-ok (UNIVERSAL::isa($link, 'RT::Record'));
-ok (UNIVERSAL::isa($link, 'DBIx::SearchBuilder::Record'));
-
-=end testing
-
-=cut
-
-
-package RT::Link;
-
-use strict;
-no warnings qw(redefine);
-
-
-use Carp;
-use RT::URI;
-
-
-# {{{ sub Create
-
-=head2 Create PARAMHASH
-
-Create a new link object. Takes 'Base', 'Target' and 'Type'.
-Returns undef on failure or a Link Id on success.
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = ( Base => undef,
- Target => undef,
- Type => undef,
- @_ );
-
- my $base = RT::URI->new( $self->CurrentUser );
- $base->FromURI( $args{'Base'} );
-
- unless ( $base->Resolver && $base->Scheme ) {
- my $msg = $self->loc("Couldn't resolve base '[_1]' into a URI.",
- $args{'Base'});
- $RT::Logger->warning( "$self $msg\n" );
-
- if (wantarray) {
- return(undef, $msg);
- } else {
- return (undef);
- }
- }
-
- my $target = RT::URI->new( $self->CurrentUser );
- $target->FromURI( $args{'Target'} );
-
- unless ( $target->Resolver ) {
- my $msg = $self->loc("Couldn't resolve target '[_1]' into a URI.",
- $args{'Target'});
- $RT::Logger->warning( "$self $msg\n" );
-
- if (wantarray) {
- return(undef, $msg);
- } else {
- return (undef);
- }
- }
-
- my $base_id = 0;
- my $target_id = 0;
-
-
-
-
- if ( $base->IsLocal ) {
- unless (UNIVERSAL::can($base->Object, 'Id')) {
- return (undef, $self->loc("[_1] appears to be a local object, but can't be found in the database", $args{'Base'}));
-
- }
- $base_id = $base->Object->Id;
- }
- if ( $target->IsLocal ) {
- unless (UNIVERSAL::can($target->Object, 'Id')) {
- return (undef, $self->loc("[_1] appears to be a local object, but can't be found in the database", $args{'Target'}));
-
- }
- $target_id = $target->Object->Id;
- }
-
- # {{{ We don't want references to ourself
- if ( $base->URI eq $target->URI ) {
- return ( 0, $self->loc("Can't link a ticket to itself") );
- }
-
- # }}}
-
- my ( $id, $msg ) = $self->SUPER::Create( Base => $base->URI,
- Target => $target->URI,
- LocalBase => $base_id,
- LocalTarget => $target_id,
- Type => $args{'Type'} );
- return ( $id, $msg );
-}
-
-# }}}
- # {{{ sub LoadByParams
-
-=head2 LoadByParams
-
- Load an RT::Link object from the database. Takes three parameters
-
- Base => undef,
- Target => undef,
- Type =>undef
-
- Base and Target are expected to be integers which refer to Tickets or URIs
- Type is the link type
-
-=cut
-
-sub LoadByParams {
- my $self = shift;
- my %args = ( Base => undef,
- Target => undef,
- Type => undef,
- @_ );
-
- my $base = RT::URI->new($self->CurrentUser);
- $base->FromURI( $args{'Base'} );
-
- my $target = RT::URI->new($self->CurrentUser);
- $target->FromURI( $args{'Target'} );
-
- unless ($base->Resolver && $target->Resolver) {
- return ( 0, $self->loc("Couldn't load link") );
- }
-
-
- my ( $id, $msg ) = $self->LoadByCols( Base => $base->URI,
- Type => $args{'Type'},
- Target => $target->URI );
-
- unless ($id) {
- return ( 0, $self->loc("Couldn't load link") );
- }
-}
-
-# }}}
-# {{{ sub Load
-
-=head2 Load
-
- Load an RT::Link object from the database. Takes one parameter, the id of an entry in the links table.
-
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift;
-
-
-
-
- if ( $identifier !~ /^\d+$/ ) {
- return ( 0, $self->loc("That's not a numerical id") );
- }
- else {
- my ( $id, $msg ) = $self->LoadById($identifier);
- unless ( $self->Id ) {
- return ( 0, $self->loc("Couldn't load link") );
- }
- return ( $id, $msg );
- }
-}
-
-# }}}
-
-
-# {{{ TargetURI
-
-=head2 TargetURI
-
-returns an RT::URI object for the "Target" of this link.
-
-=cut
-
-sub TargetURI {
- my $self = shift;
- my $URI = RT::URI->new($self->CurrentUser);
- $URI->FromURI($self->Target);
- return ($URI);
-}
-
-# }}}
-# {{{ sub TargetObj
-
-=head2 TargetObj
-
-=cut
-
-sub TargetObj {
- my $self = shift;
- return $self->TargetURI->Object;
-}
-# }}}
-
-# {{{ BaseURI
-
-=head2 BaseURI
-
-returns an RT::URI object for the "Base" of this link.
-
-=cut
-
-sub BaseURI {
- my $self = shift;
- my $URI = RT::URI->new($self->CurrentUser);
- $URI->FromURI($self->Base);
- return ($URI);
-}
-
-# }}}
-# {{{ sub BaseObj
-
-=head2 BaseObj
-
-=cut
-
-sub BaseObj {
- my $self = shift;
- return $self->BaseURI->Object;
-}
-# }}}
-
-
-
-# Static methods:
-
-# {{{ sub BaseIsLocal
-
-=head2 BaseIsLocal
-
-Returns true if the base of this link is a local ticket
-
-=cut
-
-sub BaseIsLocal {
- my $self = shift;
- $RT::Logger->crit("Link::BaseIsLocal is deprecated in favor of Link->BaseURI->IsLocal");
- return $self->BaseURI->IsLocal;
-}
-
-# }}}
-
-# {{{ sub TargetIsLocal
-
-=head2 TargetIsLocal
-
-Returns true if the target of this link is a local ticket
-
-=cut
-
-sub TargetIsLocal {
- my $self = shift;
- $RT::Logger->crit("Link::BaseIsLocal is deprecated in favor of Link->BaseURI->IsLocal");
- return $self->TargetURI->IsLocal;
-}
-
-# }}}
-
-
-# {{{ sub BaseAsHREF
-
-=head2 BaseAsHREF
-
-Returns an HTTP url to access the base of this link
-
-=cut
-
-sub BaseAsHREF {
- my $self = shift;
- $RT::Logger->crit("Link::BaseAsHREF deprecated in favor of ->BaseURI->AsHREF");
- return $self->BaseURI->HREF;
-}
-# }}}
-
-# {{{ sub TargetAsHREF
-
-=head2 TargetAsHREF
-
-return an HTTP url to access the target of this link
-
-=cut
-
-sub TargetAsHREF {
- my $self = shift;
- $RT::Logger->crit("Link::TargetAsHREF deprecated in favor of ->TargetURI->AsHREF");
- return $self->TargetURI->HREF;
-}
-# }}}
-
-# {{{ sub AsHREF - Converts Link URIs to HTTP URLs
-
-=head2 URI
-
-Takes a URI and returns an http: url to access that object.
-
-=cut
-
-
-sub AsHREF {
- my $self=shift;
-
- $RT::Logger->crit("AsHREF is gone. look at URI::HREF to figure out what to do with \$URI");
-}
-
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/Links.pm b/rt/lib/RT/Links.pm
deleted file mode 100644
index 7a1773a..0000000
--- a/rt/lib/RT/Links.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Links -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Links
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Links;
-
-use RT::SearchBuilder;
-use RT::Link;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Links';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Link item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Link->new($self->CurrentUser));
-}
-
- eval "require RT::Links_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Links_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Links_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Links_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Links_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Links_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Links_Overlay, RT::Links_Vendor, RT::Links_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Links_Overlay.pm b/rt/lib/RT/Links_Overlay.pm
deleted file mode 100644
index 203b60a..0000000
--- a/rt/lib/RT/Links_Overlay.pm
+++ /dev/null
@@ -1,175 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Links - A collection of Link objects
-
-=head1 SYNOPSIS
-
- use RT::Links;
- my $links = new RT::Links($CurrentUser);
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Links);
-
-=end testing
-
-=cut
-
-
-package RT::Links;
-
-use strict;
-no warnings qw(redefine);
-use RT::URI;
-
-# {{{ sub Limit
-sub Limit {
- my $self = shift;
- my %args = ( ENTRYAGGREGATOR => 'AND',
- OPERATOR => '=',
- @_);
-
- #if someone's trying to search for tickets, try to resolve the uris for searching.
-
- if ( ( $args{'OPERATOR'} eq '=') and
- ( $args{'FIELD'} eq 'Base') or ($args{'FIELD'} eq 'Target')
- ) {
- my $dummy = RT::URI->new($self->CurrentUser);
- $dummy->FromURI($args{'VALUE'});
- # $uri = $dummy->URI;
- }
-
-
- # If we're limiting by target, order by base
- # (Order by the thing that's changing)
-
- if ( ($args{'FIELD'} eq 'Target') or
- ($args{'FIELD'} eq 'LocalTarget') ) {
- $self->OrderBy (ALIAS => 'main',
- FIELD => 'Base',
- ORDER => 'ASC');
- }
- elsif ( ($args{'FIELD'} eq 'Base') or
- ($args{'FIELD'} eq 'LocalBase') ) {
- $self->OrderBy (ALIAS => 'main',
- FIELD => 'Target',
- ORDER => 'ASC');
- }
-
-
- $self->SUPER::Limit(%args);
-}
-# }}}
-
-# {{{ LimitRefersTo
-
-=head2 LimitRefersTo URI
-
-find all things that refer to URI
-
-=cut
-
-sub LimitRefersTo {
- my $self = shift;
- my $URI = shift;
-
- $self->Limit(FIELD => 'Type', VALUE => 'RefersTo');
- $self->Limit(FIELD => 'Target', VALUE => $URI);
-}
-
-# }}}
-# {{{ LimitReferredToBy
-
-=head2 LimitReferredToBy URI
-
-find all things that URI refers to
-
-=cut
-
-sub LimitReferredToBy {
- my $self = shift;
- my $URI = shift;
-
- $self->Limit(FIELD => 'Type', VALUE => 'RefersTo');
- $self->Limit(FIELD => 'Base', VALUE => $URI);
-}
-
-# }}}
-
-
-# {{{ Next
-sub Next {
- my $self = shift;
-
- my $Link = $self->SUPER::Next();
- if ((defined($Link)) and (ref($Link))) {
- # Skip links to local objects thast are deleted
- if ($Link->TargetURI->IsLocal and UNIVERSAL::isa($Link->TargetObj,"RT::Ticket")
- and $Link->TargetObj->__Value('status') eq "deleted") {
- return $self->Next;
- } elsif ($Link->BaseURI->IsLocal and UNIVERSAL::isa($Link->BaseObj,"RT::Ticket")
- and $Link->BaseObj->__Value('status') eq "deleted") {
- return $self->Next;
- } else {
- return $Link;
- }
- } else {
- return undef;
- }
-}
-
-# }}}
-1;
-
diff --git a/rt/lib/RT/ObjectCustomField.pm b/rt/lib/RT/ObjectCustomField.pm
deleted file mode 100644
index 89c59c6..0000000
--- a/rt/lib/RT/ObjectCustomField.pm
+++ /dev/null
@@ -1,293 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::ObjectCustomField
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::ObjectCustomField;
-use RT::Record;
-use RT::CustomField;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('ObjectCustomFields');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'CustomField'.
- int(11) 'ObjectId'.
- int(11) 'SortOrder'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- CustomField => '0',
- ObjectId => '0',
- SortOrder => '0',
-
- @_);
- $self->SUPER::Create(
- CustomField => $args{'CustomField'},
- ObjectId => $args{'ObjectId'},
- SortOrder => $args{'SortOrder'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 CustomField
-
-Returns the current value of CustomField.
-(In the database, CustomField is stored as int(11).)
-
-
-
-=head2 SetCustomField VALUE
-
-
-Set CustomField to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomField will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 CustomFieldObj
-
-Returns the CustomField Object which has the id returned by CustomField
-
-
-=cut
-
-sub CustomFieldObj {
- my $self = shift;
- my $CustomField = RT::CustomField->new($self->CurrentUser);
- $CustomField->Load($self->__Value('CustomField'));
- return($CustomField);
-}
-
-=head2 ObjectId
-
-Returns the current value of ObjectId.
-(In the database, ObjectId is stored as int(11).)
-
-
-
-=head2 SetObjectId VALUE
-
-
-Set ObjectId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 SortOrder
-
-Returns the current value of SortOrder.
-(In the database, SortOrder is stored as int(11).)
-
-
-
-=head2 SetSortOrder VALUE
-
-
-Set SortOrder to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, SortOrder will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=head2 Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=head2 LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=head2 LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- CustomField =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- ObjectId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- SortOrder =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Creator =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::ObjectCustomField_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomField_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomField_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomField_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomField_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomField_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ObjectCustomField_Overlay, RT::ObjectCustomField_Vendor, RT::ObjectCustomField_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFieldValue.pm b/rt/lib/RT/ObjectCustomFieldValue.pm
deleted file mode 100644
index 5b80906..0000000
--- a/rt/lib/RT/ObjectCustomFieldValue.pm
+++ /dev/null
@@ -1,431 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::ObjectCustomFieldValue
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::ObjectCustomFieldValue;
-use RT::Record;
-use RT::CustomField;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('ObjectCustomFieldValues');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'CustomField'.
- varchar(255) 'ObjectType'.
- int(11) 'ObjectId'.
- int(11) 'SortOrder'.
- varchar(255) 'Content'.
- longtext 'LargeContent'.
- varchar(80) 'ContentType'.
- varchar(80) 'ContentEncoding'.
- smallint(6) 'Disabled'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- CustomField => '0',
- ObjectType => '',
- ObjectId => '0',
- SortOrder => '0',
- Content => '',
- LargeContent => '',
- ContentType => '',
- ContentEncoding => '',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- CustomField => $args{'CustomField'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
- SortOrder => $args{'SortOrder'},
- Content => $args{'Content'},
- LargeContent => $args{'LargeContent'},
- ContentType => $args{'ContentType'},
- ContentEncoding => $args{'ContentEncoding'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 CustomField
-
-Returns the current value of CustomField.
-(In the database, CustomField is stored as int(11).)
-
-
-
-=head2 SetCustomField VALUE
-
-
-Set CustomField to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomField will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 CustomFieldObj
-
-Returns the CustomField Object which has the id returned by CustomField
-
-
-=cut
-
-sub CustomFieldObj {
- my $self = shift;
- my $CustomField = RT::CustomField->new($self->CurrentUser);
- $CustomField->Load($self->__Value('CustomField'));
- return($CustomField);
-}
-
-=head2 ObjectType
-
-Returns the current value of ObjectType.
-(In the database, ObjectType is stored as varchar(255).)
-
-
-
-=head2 SetObjectType VALUE
-
-
-Set ObjectType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectType will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 ObjectId
-
-Returns the current value of ObjectId.
-(In the database, ObjectId is stored as int(11).)
-
-
-
-=head2 SetObjectId VALUE
-
-
-Set ObjectId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 SortOrder
-
-Returns the current value of SortOrder.
-(In the database, SortOrder is stored as int(11).)
-
-
-
-=head2 SetSortOrder VALUE
-
-
-Set SortOrder to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, SortOrder will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Content
-
-Returns the current value of Content.
-(In the database, Content is stored as varchar(255).)
-
-
-
-=head2 SetContent VALUE
-
-
-Set Content to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Content will be stored as a varchar(255).)
-
-
-=cut
-
-
-=head2 LargeContent
-
-Returns the current value of LargeContent.
-(In the database, LargeContent is stored as longtext.)
-
-
-
-=head2 SetLargeContent VALUE
-
-
-Set LargeContent to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, LargeContent will be stored as a longtext.)
-
-
-=cut
-
-
-=head2 ContentType
-
-Returns the current value of ContentType.
-(In the database, ContentType is stored as varchar(80).)
-
-
-
-=head2 SetContentType VALUE
-
-
-Set ContentType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContentType will be stored as a varchar(80).)
-
-
-=cut
-
-
-=head2 ContentEncoding
-
-Returns the current value of ContentEncoding.
-(In the database, ContentEncoding is stored as varchar(80).)
-
-
-
-=head2 SetContentEncoding VALUE
-
-
-Set ContentEncoding to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContentEncoding will be stored as a varchar(80).)
-
-
-=cut
-
-
-=head2 Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=head2 Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=head2 LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=head2 LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=head2 Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=head2 SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- CustomField =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- ObjectType =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- ObjectId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- SortOrder =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Content =>
- {read => 1, write => 1, sql_type => 12, length => 255, is_blob => 0, is_numeric => 0, type => 'varchar(255)', default => ''},
- LargeContent =>
- {read => 1, write => 1, sql_type => -4, length => 0, is_blob => 1, is_numeric => 0, type => 'longtext', default => ''},
- ContentType =>
- {read => 1, write => 1, sql_type => 12, length => 80, is_blob => 0, is_numeric => 0, type => 'varchar(80)', default => ''},
- ContentEncoding =>
- {read => 1, write => 1, sql_type => 12, length => 80, is_blob => 0, is_numeric => 0, type => 'varchar(80)', default => ''},
- Creator =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
- Disabled =>
- {read => 1, write => 1, sql_type => 5, length => 6, is_blob => 0, is_numeric => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::ObjectCustomFieldValue_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValue_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFieldValue_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValue_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFieldValue_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValue_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ObjectCustomFieldValue_Overlay, RT::ObjectCustomFieldValue_Vendor, RT::ObjectCustomFieldValue_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFieldValue_Overlay.pm b/rt/lib/RT/ObjectCustomFieldValue_Overlay.pm
deleted file mode 100644
index 9b753e8..0000000
--- a/rt/lib/RT/ObjectCustomFieldValue_Overlay.pm
+++ /dev/null
@@ -1,174 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::ObjectCustomFieldValue;
-
-use strict;
-no warnings qw(redefine);
-
-
-sub Create {
- my $self = shift;
- my %args = (
- CustomField => '0',
- ObjectType => '',
- ObjectId => '0',
- Disabled => '0',
- Content => '',
- LargeContent => '',
- ContentType => '',
- ContentEncoding => '',
-
- @_);
-
-
- if( $args{'Content'} && length($args{'Content'}) > 255 && !$args{'LargeContent'} ) {
-
- $args{'LargeContent'} = $args{'Content'};
- $args{'Content'} = '';
- $args{'ContentType'} = 'text/plain';
- }
-
- ( $args{'ContentEncoding'}, $args{'LargeContent'} ) =
- $self->_EncodeLOB( $args{'LargeContent'}, $args{'ContentType'} )
- if ( $args{'LargeContent'} );
-
- $self->SUPER::Create(
- CustomField => $args{'CustomField'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
- Disabled => $args{'Disabled'},
- Content => $args{'Content'},
- LargeContent => $args{'LargeContent'},
- ContentType => $args{'ContentType'},
- ContentEncoding => $args{'ContentEncoding'},
-);
-
-
-
-}
-
-
-sub LargeContent {
- my $self = shift;
- $self->_DecodeLOB( $self->ContentType, $self->ContentEncoding,
- $self->_Value( 'LargeContent', decode_utf8 => 0 ) );
-
-}
-
-
-
-
-=head2 LoadByTicketContentAndCustomField { Ticket => TICKET, CustomField => CUSTOMFIELD, Content => CONTENT }
-
-Loads a custom field value by Ticket, Content and which CustomField it's tied to
-
-=cut
-
-
-sub LoadByTicketContentAndCustomField {
- my $self = shift;
- my %args = ( Ticket => undef,
- CustomField => undef,
- Content => undef,
- @_
- );
-
-
- $self->LoadByCols( Content => $args{'Content'},
- CustomField => $args{'CustomField'},
- ObjectType => 'RT::Ticket',
- ObjectId => $args{'Ticket'},
- Disabled => 0
- );
-
-
-}
-
-sub LoadByObjectContentAndCustomField {
- my $self = shift;
- my %args = ( Object => undef,
- CustomField => undef,
- Content => undef,
- @_
- );
-
- my $obj = $args{'Object'} or return;
-
- $self->LoadByCols( Content => $args{'Content'},
- CustomField => $args{'CustomField'},
- ObjectType => ref($obj),
- ObjectId => $obj->Id,
- Disabled => 0
- );
-
-}
-
-
-=head2 Content
-
-Return this custom field's content. If there's no "regular"
-content, try "LargeContent"
-
-=cut
-
-
-sub Content {
- my $self = shift;
- my $content = $self->SUPER::Content;
- if (!$content && $self->ContentType eq 'text/plain') {
- return $self->LargeContent();
- } else {
- return $content;
- }
-}
-
-
-sub Delete {
- my $self = shift;
- $self->SetDisabled(1);
-}
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFieldValues.pm b/rt/lib/RT/ObjectCustomFieldValues.pm
deleted file mode 100644
index 296a925..0000000
--- a/rt/lib/RT/ObjectCustomFieldValues.pm
+++ /dev/null
@@ -1,148 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::ObjectCustomFieldValues -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::ObjectCustomFieldValues
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::ObjectCustomFieldValues;
-
-use RT::SearchBuilder;
-use RT::ObjectCustomFieldValue;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'ObjectCustomFieldValues';
- $self->{'primary_key'} = 'id';
-
-
-
- # By default, order by SortOrder
- $self->OrderByCols(
- { ALIAS => 'main',
- FIELD => 'SortOrder',
- ORDER => 'ASC' },
- { ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'ASC' },
- );
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::ObjectCustomFieldValue item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::ObjectCustomFieldValue->new($self->CurrentUser));
-}
-
- eval "require RT::ObjectCustomFieldValues_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValues_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFieldValues_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValues_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFieldValues_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFieldValues_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ObjectCustomFieldValues_Overlay, RT::ObjectCustomFieldValues_Vendor, RT::ObjectCustomFieldValues_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFieldValues_Overlay.pm b/rt/lib/RT/ObjectCustomFieldValues_Overlay.pm
deleted file mode 100644
index 315c16f..0000000
--- a/rt/lib/RT/ObjectCustomFieldValues_Overlay.pm
+++ /dev/null
@@ -1,153 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::ObjectCustomFieldValues;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub LimitToCustomField
-
-=head2 LimitToCustomField FIELD
-
-Limits the returned set to values for the custom field with Id FIELD
-
-=cut
-
-sub LimitToCustomField {
- my $self = shift;
- my $cf = shift;
- return ($self->Limit( FIELD => 'CustomField',
- VALUE => $cf,
- OPERATOR => '='));
-
-}
-
-# }}}
-
-# {{{ sub LimitToTicket
-
-=head2 LimitToTicket TICKETID
-
-Limits the returned set to values for the ticket with Id TICKETID
-
-=cut
-
-sub LimitToTicket {
- my $self = shift;
- my $ticket = shift;
-
-
- $RT::Logger->warning(ref($self) . " -> LimitToTicket deprecated in favor of LimitToObject");
-
- $self->Limit( FIELD => 'ObjectType',
- VALUE => 'RT::Ticket',
- OPERATOR => '=');
- return ($self->Limit( FIELD => 'ObjectId',
- VALUE => $ticket,
- OPERATOR => '='));
-
-}
-
-# }}}
-
-
-sub LimitToObject {
- my $self = shift;
- my $object = shift;
- $self->Limit( FIELD => 'ObjectType',
- VALUE => ref($object),
- OPERATOR => '=');
- return ($self->Limit( FIELD => 'ObjectId',
- VALUE => $object->Id,
- OPERATOR => '='));
-
-}
-
-=sub HasEntry VALUE
-
-Returns true if this CustomFieldValues collection has an entry with content that eq VALUE
-
-=cut
-
-
-sub HasEntry {
- my $self = shift;
- my $value = shift;
-
- #TODO: this could cache and optimize a fair bit.
- foreach my $item (@{$self->ItemsArrayRef}) {
- return(1) if ($item->Content eq $value);
- }
- return undef;
-
-}
-
-sub _DoSearch {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless($self->{'find_expired_rows'}) {
- $self->LimitToEnabled();
- }
-
- return($self->SUPER::_DoSearch(@_));
-
-}
-
-sub _DoCount {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless($self->{'find_expired_rows'}) {
- $self->LimitToEnabled();
- }
-
- return($self->SUPER::_DoCount(@_));
-
-}
-
-1;
-
diff --git a/rt/lib/RT/ObjectCustomField_Overlay.pm b/rt/lib/RT/ObjectCustomField_Overlay.pm
deleted file mode 100644
index e1dc7e2..0000000
--- a/rt/lib/RT/ObjectCustomField_Overlay.pm
+++ /dev/null
@@ -1,101 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::ObjectCustomField;
-
-use strict;
-no warnings qw(redefine);
-
-sub Create {
- my $self = shift;
- my %args = (
- CustomField => '0',
- ObjectId => '0',
- SortOrder => undef,
- @_);
-
- if (!defined $args{SortOrder}) {
- my $CF = $self->CustomFieldObj($args{'CustomField'});
- my $ObjectCFs = RT::ObjectCustomFields->new($self->CurrentUser);
- $ObjectCFs->LimitToObjectId($args{'ObjectId'});
- $ObjectCFs->LimitToLookupType($CF->LookupType);
-
- $args{SortOrder} = $ObjectCFs->Count + 1;
- }
-
- $self->SUPER::Create(
- CustomField => $args{'CustomField'},
- ObjectId => $args{'ObjectId'},
- SortOrder => $args{'SortOrder'},
- );
-}
-
-sub Delete {
- my $self = shift;
-
- my $ObjectCFs = RT::ObjectCustomFields->new($self->CurrentUser);
- $ObjectCFs->LimitToObjectId($self->ObjectId);
- $ObjectCFs->LimitToLookupType($self->CustomFieldObj->LookupType);
-
- # Move everything below us up
- my $sort_order = $self->SortOrder;
- while (my $OCF = $ObjectCFs->Next) {
- my $this_order = $OCF->SortOrder;
- next if $this_order <= $sort_order;
- $OCF->SetSortOrder($this_order - 1);
- }
-
- $self->SUPER::Delete;
-}
-
-sub CustomFieldObj {
- my $self = shift;
- my $id = shift || $self->CustomField;
- my $CF = RT::CustomField->new($self->CurrentUser);
- $CF->Load($id) or die "Cannot load CustomField $id";
- return $CF;
-}
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFields.pm b/rt/lib/RT/ObjectCustomFields.pm
deleted file mode 100644
index fcbf332..0000000
--- a/rt/lib/RT/ObjectCustomFields.pm
+++ /dev/null
@@ -1,148 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::ObjectCustomFields -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::ObjectCustomFields
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::ObjectCustomFields;
-
-use RT::SearchBuilder;
-use RT::ObjectCustomField;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'ObjectCustomFields';
- $self->{'primary_key'} = 'id';
-
-
-
- # By default, order by SortOrder
- $self->OrderByCols(
- { ALIAS => 'main',
- FIELD => 'SortOrder',
- ORDER => 'ASC' },
- { ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'ASC' },
- );
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::ObjectCustomField item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::ObjectCustomField->new($self->CurrentUser));
-}
-
- eval "require RT::ObjectCustomFields_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFields_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFields_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFields_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ObjectCustomFields_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ObjectCustomFields_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ObjectCustomFields_Overlay, RT::ObjectCustomFields_Vendor, RT::ObjectCustomFields_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ObjectCustomFields_Overlay.pm b/rt/lib/RT/ObjectCustomFields_Overlay.pm
deleted file mode 100644
index a496c4b..0000000
--- a/rt/lib/RT/ObjectCustomFields_Overlay.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::ObjectCustomFields;
-
-use strict;
-no warnings qw(redefine);
-
-sub LimitToCustomField {
- my $self = shift;
- my $id = shift;
- $self->Limit( FIELD => 'CustomField', VALUE => $id );
-}
-
-sub LimitToObjectId {
- my $self = shift;
- my $id = shift || 0;
- $self->Limit( FIELD => 'ObjectId', VALUE => $id );
-}
-
-sub LimitToLookupType {
- my $self = shift;
- my $lookup = shift;
- unless ($self->{'_cfs_alias'}) {
- $self->{'_cfs_alias'} = $self->NewAlias('CustomFields');
- }
- $self->Join( ALIAS1 => 'main',
- FIELD1 => 'CustomField',
- ALIAS2 => $self->{'_cfs_alias'},
- FIELD2 => 'id' );
- $self->Limit( ALIAS => $self->{'_cfs_alias'},
- FIELD => 'LookupType',
- OPERATOR => '=',
- VALUE => $lookup );
-}
-
-sub HasEntryForCustomField {
- my $self = shift;
- my $id = shift;
-
- my @items = grep {$_->CustomField == $id } @{$self->ItemsArrayRef};
-
- if ($#items > 1) {
- die "$self HasEntry had a list with more than one of $id in it. this can never happen";
- }
- if ($#items == -1 ) {
- return undef;
- }
- else {
- return ($items[0]);
- }
-}
-
-sub CustomFields {
- my $self = shift;
- my %seen;
- map { $_->CustomFieldObj } @{$self->ItemsArrayRef};
-}
-
-sub _DoSearch {
- my $self = shift;
- if ($self->{'_cfs_alias'}) {
- $self->Limit( ALIAS => $self->{'_cfs_alias'},
- FIELD => 'Disabled',
- OPERATOR => '!=',
- VALUE => 1);
- }
- $self->SUPER::_DoSearch()
-}
-
-1;
diff --git a/rt/lib/RT/Principal.pm b/rt/lib/RT/Principal.pm
deleted file mode 100644
index da0c669..0000000
--- a/rt/lib/RT/Principal.pm
+++ /dev/null
@@ -1,234 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Principal
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Principal;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Principals');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(16) 'PrincipalType'.
- int(11) 'ObjectId'.
- smallint(6) 'Disabled'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- PrincipalType => '',
- ObjectId => '',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- PrincipalType => $args{'PrincipalType'},
- ObjectId => $args{'ObjectId'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=head2 id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=head2 PrincipalType
-
-Returns the current value of PrincipalType.
-(In the database, PrincipalType is stored as varchar(16).)
-
-
-
-=head2 SetPrincipalType VALUE
-
-
-Set PrincipalType to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, PrincipalType will be stored as a varchar(16).)
-
-
-=cut
-
-
-=head2 ObjectId
-
-Returns the current value of ObjectId.
-(In the database, ObjectId is stored as int(11).)
-
-
-
-=head2 SetObjectId VALUE
-
-
-Set ObjectId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ObjectId will be stored as a int(11).)
-
-
-=cut
-
-
-=head2 Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=head2 SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _CoreAccessible {
- {
-
- id =>
- {read => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- PrincipalType =>
- {read => 1, write => 1, sql_type => 12, length => 16, is_blob => 0, is_numeric => 0, type => 'varchar(16)', default => ''},
- ObjectId =>
- {read => 1, write => 1, sql_type => 4, length => 11, is_blob => 0, is_numeric => 1, type => 'int(11)', default => ''},
- Disabled =>
- {read => 1, write => 1, sql_type => 5, length => 6, is_blob => 0, is_numeric => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::Principal_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Principal_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Principal_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Principal_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Principal_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Principal_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Principal_Overlay, RT::Principal_Vendor, RT::Principal_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Principal_Overlay.pm b/rt/lib/RT/Principal_Overlay.pm
deleted file mode 100644
index 4783c5c..0000000
--- a/rt/lib/RT/Principal_Overlay.pm
+++ /dev/null
@@ -1,587 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-#
-
-package RT::Principal;
-
-use strict;
-use warnings;
-
-no warnings qw(redefine);
-
-use Cache::Simple::TimedExpiry;
-
-
-
-use RT::Group;
-use RT::User;
-
-# Set up the ACL cache on startup
-our $_ACL_CACHE;
-InvalidateACLCache();
-
-# {{{ IsGroup
-
-=head2 IsGroup
-
-Returns true if this principal is a group.
-Returns undef, otherwise
-
-=cut
-
-sub IsGroup {
- my $self = shift;
- if ($self->PrincipalType eq 'Group') {
- return(1);
- }
- else {
- return undef;
- }
-}
-
-# }}}
-
-# {{{ IsUser
-
-=head2 IsUser
-
-Returns true if this principal is a User.
-Returns undef, otherwise
-
-=cut
-
-sub IsUser {
- my $self = shift;
- if ($self->PrincipalType eq 'User') {
- return(1);
- }
- else {
- return undef;
- }
-}
-
-# }}}
-
-# {{{ Object
-
-=head2 Object
-
-Returns the user or group associated with this principal
-
-=cut
-
-sub Object {
- my $self = shift;
-
- unless ($self->{'object'}) {
- if ($self->IsUser) {
- $self->{'object'} = RT::User->new($self->CurrentUser);
- }
- elsif ($self->IsGroup) {
- $self->{'object'} = RT::Group->new($self->CurrentUser);
- }
- else {
- $RT::Logger->crit("Found a principal (".$self->Id.") that was neither a user nor a group");
- return(undef);
- }
- $self->{'object'}->Load($self->ObjectId());
- }
- return ($self->{'object'});
-
-
-}
-# }}}
-
-# {{{ ACL Related routines
-
-# {{{ GrantRight
-
-=head2 GrantRight { Right => RIGHTNAME, Object => undef }
-
-A helper function which calls RT::ACE->Create
-
-
-
- Returns a tuple of (STATUS, MESSAGE); If the call succeeded, STATUS is true. Otherwise it's
- false.
-
-=cut
-
-sub GrantRight {
- my $self = shift;
- my %args = ( Right => undef,
- Object => undef,
- @_);
-
-
- unless ($args{'Right'}) {
- return(0, $self->loc("Invalid Right"));
- }
-
-
- #ACL check handled in ACE.pm
- my $ace = RT::ACE->new( $self->CurrentUser );
-
-
- my $type = $self->_GetPrincipalTypeForACL();
-
- # If it's a user, we really want to grant the right to their
- # user equivalence group
- return ( $ace->Create(RightName => $args{'Right'},
- Object => $args{'Object'},
- PrincipalType => $type,
- PrincipalId => $self->Id
- ) );
-}
-# }}}
-
-# {{{ RevokeRight
-
-=head2 RevokeRight { Right => "RightName", Object => "object" }
-
-Delete a right that a user has
-
-
- Returns a tuple of (STATUS, MESSAGE); If the call succeeded, STATUS is true. Otherwise it's
- false.
-
-
-=cut
-
-sub RevokeRight {
-
- my $self = shift;
- my %args = (
- Right => undef,
- Object => undef,
- @_
- );
-
- #if we haven't specified any sort of right, we're talking about a global right
- if (!defined $args{'Object'} && !defined $args{'ObjectId'} && !defined $args{'ObjectType'}) {
- $args{'Object'} = $RT::System;
- }
- #ACL check handled in ACE.pm
- my $type = $self->_GetPrincipalTypeForACL();
-
- my $ace = RT::ACE->new( $self->CurrentUser );
- $ace->LoadByValues(
- RightName => $args{'Right'},
- Object => $args{'Object'},
- PrincipalType => $type,
- PrincipalId => $self->Id
- );
-
- unless ( $ace->Id ) {
- return ( 0, $self->loc("ACE not found") );
- }
- return ( $ace->Delete );
-}
-
-# }}}
-
-# {{{ sub _CleanupInvalidDelegations
-
-=head2 sub _CleanupInvalidDelegations { InsideTransaction => undef }
-
-Revokes all ACE entries delegated by this principal which are
-inconsistent with this principal's current delegation rights. Does
-not perform permission checks, but takes no action and returns success
-if this principal still retains DelegateRights. Should only ever be
-called from inside the RT library.
-
-If this principal is a group, recursively calls this method on each
-cached user member of itself.
-
-If called from inside a transaction, specify a true value for the
-InsideTransaction parameter.
-
-Returns a true value if the deletion succeeded; returns a false value
-and logs an internal error if the deletion fails (should not happen).
-
-=cut
-
-# This is currently just a stub for the methods of the same name in
-# RT::User and RT::Group.
-
-sub _CleanupInvalidDelegations {
- my $self = shift;
- unless ( $self->Id ) {
- $RT::Logger->warning("Principal not loaded.");
- return (undef);
- }
- return ($self->Object->_CleanupInvalidDelegations(@_));
-}
-
-# }}}
-
-# {{{ sub HasRight
-
-=head2 sub HasRight (Right => 'right' Object => undef)
-
-
-Checks to see whether this principal has the right "Right" for the Object
-specified. If the Object parameter is omitted, checks to see whether the
-user has the right globally.
-
-This still hard codes to check to see if a user has queue-level rights
-if we ask about a specific ticket.
-
-
-This takes the params:
-
- Right => name of a right
-
- And either:
-
- Object => an RT style object (->id will get its id)
-
-
-
-
-Returns 1 if a matching ACE was found.
-
-Returns undef if no ACE was found.
-
-=cut
-
-sub HasRight {
-
- my $self = shift;
- my %args = (
- Right => undef,
- Object => undef,
- EquivObjects => undef,
- @_
- );
-
- if ( $self->Disabled ) {
- $RT::Logger->err( "Disabled User: "
- . $self->id
- . " failed access check for "
- . $args{'Right'} );
- return (undef);
- }
-
- if ( !defined $args{'Right'} ) {
- $RT::Logger->crit("HasRight called without a right");
- return (undef);
- }
-
- if ( defined( $args{'Object'} )
- && UNIVERSAL::can( $args{'Object'}, 'id' )
- && $args{'Object'}->id )
- {
- push( @{ $args{'EquivObjects'} }, $args{Object} );
- }
- else {
- $RT::Logger->crit("$self HasRight called with no valid object");
- return (undef);
- }
-
- # If this object is a ticket, we care about ticket roles and queue roles
- if ( ( ref( $args{'Object'} ) eq 'RT::Ticket' ) && $args{'Object'}->Id ) {
-
-# this is a little bit hacky, but basically, now that we've done the ticket roles magic, we load the queue object
-# and ask all the rest of our questions about the queue.
- push( @{ $args{'EquivObjects'} }, $args{'Object'}->QueueObj );
-
- }
-
- # {{{ If we've cached a win or loss for this lookup say so
-
- # {{{ Construct a hashkey to cache decisions in
- my $hashkey = do {
- no warnings 'uninitialized';
-
- # We don't worry about the hash ordering, as this is only
- # temporarily used; also if the key changes it would be
- # invalidated anyway.
- join(
- ";:;",
- $self->Id,
- map {
- $_, # the key of each arguments
- ( $_ eq 'EquivObjects' ) # for object arrayref...
- ? map( _ReferenceId($_), @{ $args{$_} } ) # calculate each
- : _ReferenceId( $args{$_} ) # otherwise just the value
- } keys %args
- );
- };
-
- # }}}
-
- # {{{ if we've cached a positive result for this query, return 1
-
- my $cached_answer = $_ACL_CACHE->fetch($hashkey);
-
- # Returns undef on cache miss
- if ( defined $cached_answer ) {
- if ( $cached_answer == 1 ) {
- return (1);
- }
- elsif ( $cached_answer == -1 ) {
- return (0);
- }
- }
-
- my ( $or_look_at_object_rights, $or_check_roles );
- my $right = $args{'Right'};
-
- # {{{ Construct Right Match
-
- # If an object is defined, we want to look at rights for that object
-
- my @look_at_objects;
- push( @look_at_objects, "ACL.ObjectType = 'RT::System'" )
- unless $self->can('_IsOverrideGlobalACL')
- and $self->_IsOverrideGlobalACL( $args{Object} );
-
- foreach my $obj ( @{ $args{'EquivObjects'} } ) {
- next unless ( UNIVERSAL::can( $obj, 'id' ) );
- my $type = ref($obj);
- my $id = $obj->id;
-
- unless ($id) {
- use Carp;
- Carp::cluck(
- "Trying to check $type rights for an unspecified $type");
- $RT::Logger->crit(
- "Trying to check $type rights for an unspecified $type");
- }
- push @look_at_objects,
- "(ACL.ObjectType = '$type' AND ACL.ObjectId = '$id')";
- }
-
- # }}}
-
- # {{{ Build that honkin-big SQL query
-
- my $query_base =
- "SELECT ACL.id from ACL, Groups, Principals, CachedGroupMembers WHERE " .
-
- # Only find superuser or rights with the name $right
- "(ACL.RightName = 'SuperUser' OR ACL.RightName = '$right') " .
-
- # Never find disabled groups.
- "AND Principals.Disabled = 0 "
- . "AND CachedGroupMembers.Disabled = 0 "
- . "AND Principals.id = Groups.id "
- . # We always grant rights to Groups
-
-# See if the principal is a member of the group recursively or _is the rightholder_
-# never find recursively disabled group members
-# also, check to see if the right is being granted _directly_ to this principal,
-# as is the case when we want to look up group rights
-"AND Principals.id = CachedGroupMembers.GroupId AND CachedGroupMembers.MemberId = '"
- . $self->Id . "' "
- .
-
- # Make sure the rights apply to the entire system or to the object in question
- "AND ( " . join( ' OR ', @look_at_objects ) . ") ";
-
-# The groups query does the query based on group membership and individual user rights
-
- my $groups_query = $query_base .
-
-# limit the result set to groups of types ACLEquivalence (user) UserDefined, SystemInternal and Personal
-"AND ( ( ACL.PrincipalId = Principals.id AND ACL.PrincipalType = 'Group' AND "
- . "(Groups.Domain = 'SystemInternal' OR Groups.Domain = 'UserDefined' OR Groups.Domain = 'ACLEquivalence' OR Groups.Domain = 'Personal'))"
- .
-
- " ) ";
- $self->_Handle->ApplyLimits( \$groups_query, 1 ); #only return one result
-
- my @roles;
- foreach my $object ( @{ $args{'EquivObjects'} } ) {
- push( @roles, $self->_RolesForObject( ref($object), $object->id ) );
- }
-
- # The roles query does the query based on roles
- my $roles_query;
- if (@roles) {
- $roles_query =
- $query_base . "AND " . " ( ("
- . join( ' OR ', @roles ) . " ) "
- . " AND Groups.Type = ACL.PrincipalType AND Groups.Id = Principals.id AND Principals.PrincipalType = 'Group') ";
- $self->_Handle->ApplyLimits( \$roles_query, 1 ); #only return one result
-
- }
-
- # }}}
-
- # {{{ Actually check the ACL by performing an SQL query
- # $RT::Logger->debug("Now Trying $groups_query");
- my $hitcount = $self->_Handle->FetchResult($groups_query);
-
- # }}}
-
- # {{{ if there's a match, the right is granted
- if ($hitcount) {
- $_ACL_CACHE->set( $hashkey => 1 );
- return (1);
- }
-
- # Now check the roles query
- $hitcount = $self->_Handle->FetchResult($roles_query);
-
- if ($hitcount) {
- $_ACL_CACHE->set( $hashkey => 1 );
- return (1);
- }
-
- # We failed to find an acl hit
- $_ACL_CACHE->set( $hashkey => -1 );
- return (undef);
-}
-
-# }}}
-
-# {{{ _RolesForObject
-
-
-
-=head2 _RolesForObject( $object_type, $object_id)
-
-Returns an SQL clause finding role groups for Objects
-
-=cut
-
-
-sub _RolesForObject {
- my $self = shift;
- my $type = shift;
- my $id = shift;
-
- unless ($id) {
- $id = '0';
- }
-
- # This should never be true.
- unless ($id =~ /^\d+$/) {
- $RT::Logger->crit("RT::Prinicipal::_RolesForObject called with type $type and a non-integer id: '$id'");
- $id = "'$id'";
- }
-
- my $clause = "(Groups.Domain = '".$type."-Role' AND Groups.Instance = $id) ";
-
- return($clause);
-}
-
-# }}}
-
-# }}}
-
-# {{{ ACL caching
-
-
-# {{{ InvalidateACLCache
-
-=head2 InvalidateACLCache
-
-Cleans out and reinitializes the user rights cache
-
-=cut
-
-sub InvalidateACLCache {
- $_ACL_CACHE = Cache::Simple::TimedExpiry->new();
- $_ACL_CACHE->expire_after($RT::ACLCacheLifetime||60);
-
-}
-
-# }}}
-
-# }}}
-
-
-# {{{ _GetPrincipalTypeForACL
-
-=head2 _GetPrincipalTypeForACL
-
-Gets the principal type. if it's a user, it's a user. if it's a role group and it has a Type,
-return that. if it has no type, return group.
-
-=cut
-
-sub _GetPrincipalTypeForACL {
- my $self = shift;
- my $type;
- if ($self->PrincipalType eq 'Group' && $self->Object->Domain =~ /Role$/) {
- $type = $self->Object->Type;
- }
- else {
- $type = $self->PrincipalType;
- }
-
- return($type);
-}
-
-# }}}
-
-# {{{ _ReferenceId
-
-=head2 _ReferenceId
-
-Returns a list uniquely representing an object or normal scalar.
-
-For scalars, its string value is returned; for objects that has an
-id() method, its class name and Id are returned as a string separated by a "-".
-
-=cut
-
-sub _ReferenceId {
- my $scalar = shift;
-
- # just return the value for non-objects
- return $scalar unless UNIVERSAL::can($scalar, 'id');
-
- # an object -- return the class and id
- return(ref($scalar)."-". $scalar->id);
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/Principals.pm b/rt/lib/RT/Principals.pm
deleted file mode 100644
index a61cfb9..0000000
--- a/rt/lib/RT/Principals.pm
+++ /dev/null
@@ -1,137 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Principals -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Principals
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Principals;
-
-use RT::SearchBuilder;
-use RT::Principal;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Principals';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new RT::Principal item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Principal->new($self->CurrentUser));
-}
-
- eval "require RT::Principals_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Principals_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Principals_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Principals_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Principals_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Principals_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Principals_Overlay, RT::Principals_Vendor, RT::Principals_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Principals_Overlay.pm b/rt/lib/RT/Principals_Overlay.pm
deleted file mode 100644
index c06b9c6..0000000
--- a/rt/lib/RT/Principals_Overlay.pm
+++ /dev/null
@@ -1,78 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Principals - a collection of RT::Principal objects
-
-=head1 SYNOPSIS
-
- use RT::Principals;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Principals);
-
-=end testing
-
-=cut
-
-
-package RT::Principals;
-
-use strict;
-no warnings qw(redefine);
-
-
-
-
-1;
diff --git a/rt/lib/RT/Queue.pm b/rt/lib/RT/Queue.pm
deleted file mode 100755
index b362c9f..0000000
--- a/rt/lib/RT/Queue.pm
+++ /dev/null
@@ -1,371 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Queue
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Queue;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Queues');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- varchar(120) 'CorrespondAddress'.
- varchar(120) 'CommentAddress'.
- int(11) 'InitialPriority'.
- int(11) 'FinalPriority'.
- int(11) 'DefaultDueIn'.
- smallint(6) 'Disabled'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- CorrespondAddress => '',
- CommentAddress => '',
- InitialPriority => '0',
- FinalPriority => '0',
- DefaultDueIn => '0',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Description => $args{'Description'},
- CorrespondAddress => $args{'CorrespondAddress'},
- CommentAddress => $args{'CommentAddress'},
- InitialPriority => $args{'InitialPriority'},
- FinalPriority => $args{'FinalPriority'},
- DefaultDueIn => $args{'DefaultDueIn'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item CorrespondAddress
-
-Returns the current value of CorrespondAddress.
-(In the database, CorrespondAddress is stored as varchar(120).)
-
-
-
-=item SetCorrespondAddress VALUE
-
-
-Set CorrespondAddress to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CorrespondAddress will be stored as a varchar(120).)
-
-
-=cut
-
-
-=item CommentAddress
-
-Returns the current value of CommentAddress.
-(In the database, CommentAddress is stored as varchar(120).)
-
-
-
-=item SetCommentAddress VALUE
-
-
-Set CommentAddress to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CommentAddress will be stored as a varchar(120).)
-
-
-=cut
-
-
-=item InitialPriority
-
-Returns the current value of InitialPriority.
-(In the database, InitialPriority is stored as int(11).)
-
-
-
-=item SetInitialPriority VALUE
-
-
-Set InitialPriority to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, InitialPriority will be stored as a int(11).)
-
-
-=cut
-
-
-=item FinalPriority
-
-Returns the current value of FinalPriority.
-(In the database, FinalPriority is stored as int(11).)
-
-
-
-=item SetFinalPriority VALUE
-
-
-Set FinalPriority to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, FinalPriority will be stored as a int(11).)
-
-
-=cut
-
-
-=item DefaultDueIn
-
-Returns the current value of DefaultDueIn.
-(In the database, DefaultDueIn is stored as int(11).)
-
-
-
-=item SetDefaultDueIn VALUE
-
-
-Set DefaultDueIn to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, DefaultDueIn will be stored as a int(11).)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=item Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=item SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- CorrespondAddress =>
- {read => 1, write => 1, type => 'varchar(120)', default => ''},
- CommentAddress =>
- {read => 1, write => 1, type => 'varchar(120)', default => ''},
- InitialPriority =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- FinalPriority =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- DefaultDueIn =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- Disabled =>
- {read => 1, write => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::Queue_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Queue_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Queue_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Queue_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Queue_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Queue_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Queue_Overlay, RT::Queue_Vendor, RT::Queue_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Queue_Overlay.pm b/rt/lib/RT/Queue_Overlay.pm
deleted file mode 100644
index 2f180fc..0000000
--- a/rt/lib/RT/Queue_Overlay.pm
+++ /dev/null
@@ -1,1136 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Queue - an RT Queue object
-
-=head1 SYNOPSIS
-
- use RT::Queue;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-use RT::Queue;
-
-=end testing
-
-=cut
-
-
-package RT::Queue;
-
-use strict;
-no warnings qw(redefine);
-
-use vars qw(@DEFAULT_ACTIVE_STATUS @DEFAULT_INACTIVE_STATUS $RIGHTS);
-
-use RT::Groups;
-use RT::ACL;
-use RT::Interface::Email;
-
-@DEFAULT_ACTIVE_STATUS = qw(new open stalled);
-@DEFAULT_INACTIVE_STATUS = qw(resolved rejected deleted);
-
-# $self->loc('new'); # For the string extractor to get a string to localize
-# $self->loc('open'); # For the string extractor to get a string to localize
-# $self->loc('stalled'); # For the string extractor to get a string to localize
-# $self->loc('resolved'); # For the string extractor to get a string to localize
-# $self->loc('rejected'); # For the string extractor to get a string to localize
-# $self->loc('deleted'); # For the string extractor to get a string to localize
-
-
-$RIGHTS = {
- SeeQueue => 'Can this principal see this queue', # loc_pair
- AdminQueue => 'Create, delete and modify queues', # loc_pair
- ShowACL => 'Display Access Control List', # loc_pair
- ModifyACL => 'Modify Access Control List', # loc_pair
- ModifyQueueWatchers => 'Modify the queue watchers', # loc_pair
- AssignCustomFields => 'Assign and remove custom fields', # loc_pair
- ModifyTemplate => 'Modify Scrip templates for this queue', # loc_pair
- ShowTemplate => 'Display Scrip templates for this queue', # loc_pair
-
- ModifyScrips => 'Modify Scrips for this queue', # loc_pair
- ShowScrips => 'Display Scrips for this queue', # loc_pair
-
- ShowTicket => 'See ticket summaries', # loc_pair
- ShowTicketComments => 'See ticket private commentary', # loc_pair
- ShowOutgoingEmail => 'See exact outgoing email messages and their recipeients', # loc_pair
-
- Watch => 'Sign up as a ticket Requestor or ticket or queue Cc', # loc_pair
- WatchAsAdminCc => 'Sign up as a ticket or queue AdminCc', # loc_pair
- CreateTicket => 'Create tickets in this queue', # loc_pair
- ReplyToTicket => 'Reply to tickets', # loc_pair
- CommentOnTicket => 'Comment on tickets', # loc_pair
- OwnTicket => 'Own tickets', # loc_pair
- ModifyTicket => 'Modify tickets', # loc_pair
- DeleteTicket => 'Delete tickets', # loc_pair
- TakeTicket => 'Take tickets', # loc_pair
- StealTicket => 'Steal tickets', # loc_pair
-
-};
-
-# Tell RT::ACE that this sort of object can get acls granted
-$RT::ACE::OBJECT_TYPES{'RT::Queue'} = 1;
-
-# TODO: This should be refactored out into an RT::ACLedObject or something
-# stuff the rights into a hash of rights that can exist.
-
-foreach my $right ( keys %{$RIGHTS} ) {
- $RT::ACE::LOWERCASERIGHTNAMES{ lc $right } = $right;
-}
-
-
-sub AddLink {
- my $self = shift;
- my %args = ( Target => '',
- Base => '',
- Type => '',
- Silent => undef,
- @_ );
-
- unless ( $self->CurrentUserHasRight('ModifyQueue') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- return $self->SUPER::_AddLink(%args);
-}
-
-sub DeleteLink {
- my $self = shift;
- my %args = (
- Base => undef,
- Target => undef,
- Type => undef,
- @_
- );
-
- #check acls
- unless ( $self->CurrentUserHasRight('ModifyQueue') ) {
- $RT::Logger->debug("No permission to delete links\n");
- return ( 0, $self->loc('Permission Denied'))
- }
-
- return $self->SUPER::_DeleteLink(%args);
-}
-
-=head2 AvailableRights
-
-Returns a hash of available rights for this object. The keys are the right names and the values are a description of what the rights do
-
-=cut
-
-sub AvailableRights {
- my $self = shift;
- return($RIGHTS);
-}
-
-# {{{ ActiveStatusArray
-
-=head2 ActiveStatusArray
-
-Returns an array of all ActiveStatuses for this queue
-
-=cut
-
-sub ActiveStatusArray {
- my $self = shift;
- if (@RT::ActiveStatus) {
- return (@RT::ActiveStatus)
- } else {
- $RT::Logger->warning("RT::ActiveStatus undefined, falling back to deprecated defaults");
- return (@DEFAULT_ACTIVE_STATUS);
- }
-}
-
-# }}}
-
-# {{{ InactiveStatusArray
-
-=head2 InactiveStatusArray
-
-Returns an array of all InactiveStatuses for this queue
-
-=cut
-
-sub InactiveStatusArray {
- my $self = shift;
- if (@RT::InactiveStatus) {
- return (@RT::InactiveStatus)
- } else {
- $RT::Logger->warning("RT::InactiveStatus undefined, falling back to deprecated defaults");
- return (@DEFAULT_INACTIVE_STATUS);
- }
-}
-
-# }}}
-
-# {{{ StatusArray
-
-=head2 StatusArray
-
-Returns an array of all statuses for this queue
-
-=cut
-
-sub StatusArray {
- my $self = shift;
- return ($self->ActiveStatusArray(), $self->InactiveStatusArray());
-}
-
-# }}}
-
-# {{{ IsValidStatus
-
-=head2 IsValidStatus VALUE
-
-Returns true if VALUE is a valid status. Otherwise, returns 0.
-
-=begin testing
-
-my $q = RT::Queue->new($RT::SystemUser);
-ok($q->IsValidStatus('new')== 1, 'New is a valid status');
-ok($q->IsValidStatus('f00')== 0, 'f00 is not a valid status');
-
-=end testing
-
-=cut
-
-sub IsValidStatus {
- my $self = shift;
- my $value = shift;
-
- my $retval = grep ( $_ eq $value, $self->StatusArray );
- return ($retval);
-
-}
-
-# }}}
-
-# {{{ IsActiveStatus
-
-=head2 IsActiveStatus VALUE
-
-Returns true if VALUE is a Active status. Otherwise, returns 0
-
-=begin testing
-
-my $q = RT::Queue->new($RT::SystemUser);
-ok($q->IsActiveStatus('new')== 1, 'New is a Active status');
-ok($q->IsActiveStatus('rejected')== 0, 'Rejected is an inactive status');
-ok($q->IsActiveStatus('f00')== 0, 'f00 is not a Active status');
-
-=end testing
-
-=cut
-
-sub IsActiveStatus {
- my $self = shift;
- my $value = shift;
-
- my $retval = grep ( $_ eq $value, $self->ActiveStatusArray );
- return ($retval);
-
-}
-
-# }}}
-
-# {{{ IsInactiveStatus
-
-=head2 IsInactiveStatus VALUE
-
-Returns true if VALUE is a Inactive status. Otherwise, returns 0
-
-=begin testing
-
-my $q = RT::Queue->new($RT::SystemUser);
-ok($q->IsInactiveStatus('new')== 0, 'New is a Active status');
-ok($q->IsInactiveStatus('rejected')== 1, 'rejeected is an Inactive status');
-ok($q->IsInactiveStatus('f00')== 0, 'f00 is not a Active status');
-
-=end testing
-
-=cut
-
-sub IsInactiveStatus {
- my $self = shift;
- my $value = shift;
-
- my $retval = grep ( $_ eq $value, $self->InactiveStatusArray );
- return ($retval);
-
-}
-
-# }}}
-
-
-# {{{ sub Create
-
-
-
-
-=head2 Create(ARGS)
-
-Arguments: ARGS is a hash of named parameters. Valid parameters are:
-
- Name (required)
- Description
- CorrespondAddress
- CommentAddress
- InitialPriority
- FinalPriority
- DefaultDueIn
-
-If you pass the ACL check, it creates the queue and returns its queue id.
-
-=begin testing
-
-my $queue = RT::Queue->new($RT::SystemUser);
-my ($id, $val) = $queue->Create( Name => 'Test1');
-ok($id, $val);
-
-($id, $val) = $queue->Create( Name => '66');
-ok(!$id, $val);
-
-=end testing
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => undef,
- CorrespondAddress => '',
- Description => '',
- CommentAddress => '',
- InitialPriority => "0",
- FinalPriority => "0",
- DefaultDueIn => "0",
- @_
- );
-
- unless ( $self->CurrentUser->HasRight(Right => 'AdminQueue', Object => $RT::System) )
- { #Check them ACLs
- return ( 0, $self->loc("No permission to create queues") );
- }
-
- unless ( $self->ValidateName( $args{'Name'} ) ) {
- return ( 0, $self->loc('Queue already exists') );
- }
-
- #TODO better input validation
- $RT::Handle->BeginTransaction();
-
- my $id = $self->SUPER::Create(%args);
- unless ($id) {
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Queue could not be created') );
- }
-
- my $create_ret = $self->_CreateQueueGroups();
- unless ($create_ret) {
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Queue could not be created') );
- }
-
- $RT::Handle->Commit();
- return ( $id, $self->loc("Queue created") );
-}
-
-# }}}
-
-# {{{ sub Delete
-
-sub Delete {
- my $self = shift;
- return ( 0,
- $self->loc('Deleting this object would break referential integrity') );
-}
-
-# }}}
-
-# {{{ sub SetDisabled
-
-=head2 SetDisabled
-
-Takes a boolean.
-1 will cause this queue to no longer be available for tickets.
-0 will re-enable this queue.
-
-=cut
-
-# }}}
-
-# {{{ sub Load
-
-=head2 Load
-
-Takes either a numerical id or a textual Name and loads the specified queue.
-
-=cut
-
-sub Load {
- my $self = shift;
-
- my $identifier = shift;
- if ( !$identifier ) {
- return (undef);
- }
-
- if ( $identifier =~ /^(\d+)$/ ) {
- $self->SUPER::LoadById($identifier);
- }
- else {
- $self->LoadByCols( Name => $identifier );
- }
-
- return ( $self->Id );
-
-}
-
-# }}}
-
-# {{{ sub ValidateName
-
-=head2 ValidateName NAME
-
-Takes a queue name. Returns true if it's an ok name for
-a new queue. Returns undef if there's already a queue by that name.
-
-=cut
-
-sub ValidateName {
- my $self = shift;
- my $name = shift;
-
- my $tempqueue = new RT::Queue($RT::SystemUser);
- $tempqueue->Load($name);
-
- #If this queue exists, return undef
- if ( $tempqueue->Name() && $tempqueue->id != $self->id) {
- return (undef);
- }
-
- #If the queue doesn't exist, return 1
- else {
- return ($self->SUPER::ValidateName($name));
- }
-
-}
-
-# }}}
-
-# {{{ sub Templates
-
-=head2 Templates
-
-Returns an RT::Templates object of all of this queue's templates.
-
-=cut
-
-sub Templates {
- my $self = shift;
-
- my $templates = RT::Templates->new( $self->CurrentUser );
-
- if ( $self->CurrentUserHasRight('ShowTemplate') ) {
- $templates->LimitToQueue( $self->id );
- }
-
- return ($templates);
-}
-
-# }}}
-
-# {{{ Dealing with custom fields
-
-# {{{ CustomField
-
-=head2 CustomField NAME
-
-Load the queue-specific custom field named NAME
-
-=cut
-
-sub CustomField {
- my $self = shift;
- my $name = shift;
- my $cf = RT::CustomField->new($self->CurrentUser);
- $cf->LoadByNameAndQueue(Name => $name, Queue => $self->Id);
- return ($cf);
-}
-
-
-# {{{ CustomFields
-
-=head2 CustomFields
-
-Returns an RT::CustomFields object containing all global custom fields, as well as those tied to this queue
-
-=cut
-
-# XXX TODO - this should become TicketCustomFields
-
-sub CustomFields {
- my $self = shift;
- warn "Queue->CustomFields is deprecated, use Queue->TicketCustomFields instead";
- return $self->TicketCustomFields(@_);
-}
-
-sub TicketCustomFields {
- my $self = shift;
-
- my $cfs = RT::CustomFields->new( $self->CurrentUser );
- if ( $self->CurrentUserHasRight('SeeQueue') ) {
- $cfs->LimitToGlobalOrObjectId( $self->Id );
- $cfs->LimitToLookupType( 'RT::Queue-RT::Ticket' );
- }
- return ($cfs);
-}
-
-sub TicketTransactionCustomFields {
- my $self = shift;
-
- my $cfs = RT::CustomFields->new( $self->CurrentUser );
- if ( $self->CurrentUserHasRight('SeeQueue') ) {
- $cfs->LimitToGlobalOrObjectId( $self->Id );
- $cfs->LimitToLookupType( 'RT::Queue-RT::Ticket-RT::Transaction' );
- }
- return ($cfs);
-}
-
-# }}}
-
-# }}}
-
-
-# {{{ Routines dealing with watchers.
-
-# {{{ _CreateQueueGroups
-
-=head2 _CreateQueueGroups
-
-Create the ticket groups and links for this ticket.
-This routine expects to be called from Ticket->Create _inside of a transaction_
-
-It will create four groups for this ticket: Requestor, Cc, AdminCc and Owner.
-
-It will return true on success and undef on failure.
-
-=begin testing
-
-my $Queue = RT::Queue->new($RT::SystemUser); my ($id, $msg) = $Queue->Create(Name => "Foo",
- );
-ok ($id, "Foo $id was created");
-ok(my $group = RT::Group->new($RT::SystemUser));
-ok($group->LoadQueueRoleGroup(Queue => $id, Type=> 'Cc'));
-ok ($group->Id, "Found the requestors object for this Queue");
-
-
-ok ((my $add_id, $add_msg) = $Queue->AddWatcher(Type => 'Cc', Email => 'bob@fsck.com'), "Added bob at fsck.com as a requestor");
-ok ($add_id, "Add succeeded: ($add_msg)");
-ok(my $bob = RT::User->new($RT::SystemUser), "Creating a bob rt::user");
-$bob->LoadByEmail('bob@fsck.com');
-ok($bob->Id, "Found the bob rt user");
-ok ($Queue->IsWatcher(Type => 'Cc', PrincipalId => $bob->PrincipalId), "The Queue actually has bob at fsck.com as a requestor");;
-ok ((my $add_id, $add_msg) = $Queue->DeleteWatcher(Type =>'Cc', Email => 'bob@fsck.com'), "Added bob at fsck.com as a requestor");
-ok (!$Queue->IsWatcher(Type => 'Cc', Principal => $bob->PrincipalId), "The Queue no longer has bob at fsck.com as a requestor");;
-
-
-$group = RT::Group->new($RT::SystemUser);
-ok($group->LoadQueueRoleGroup(Queue => $id, Type=> 'Cc'));
-ok ($group->Id, "Found the cc object for this Queue");
-$group = RT::Group->new($RT::SystemUser);
-ok($group->LoadQueueRoleGroup(Queue => $id, Type=> 'AdminCc'));
-ok ($group->Id, "Found the AdminCc object for this Queue");
-
-=end testing
-
-=cut
-
-
-sub _CreateQueueGroups {
- my $self = shift;
-
- my @types = qw(Cc AdminCc Requestor Owner);
-
- foreach my $type (@types) {
- my $type_obj = RT::Group->new($self->CurrentUser);
- my ($id, $msg) = $type_obj->CreateRoleGroup(Instance => $self->Id,
- Type => $type,
- Domain => 'RT::Queue-Role');
- unless ($id) {
- $RT::Logger->error("Couldn't create a Queue group of type '$type' for ticket ".
- $self->Id.": ".$msg);
- return(undef);
- }
- }
- return(1);
-
-}
-
-
-# }}}
-
-# {{{ sub AddWatcher
-
-=head2 AddWatcher
-
-AddWatcher takes a parameter hash. The keys are as follows:
-
-Type One of Requestor, Cc, AdminCc
-
-PrinicpalId The RT::Principal id of the user or group that's being added as a watcher
-Email The email address of the new watcher. If a user with this
- email address can't be found, a new nonprivileged user will be created.
-
-If the watcher you\'re trying to set has an RT account, set the Owner paremeter to their User Id. Otherwise, set the Email parameter to their Email address.
-
-Returns a tuple of (status/id, message).
-
-=cut
-
-sub AddWatcher {
- my $self = shift;
- my %args = (
- Type => undef,
- PrincipalId => undef,
- Email => undef,
- @_
- );
-
- # {{{ Check ACLS
- #If the watcher we're trying to add is for the current user
- if ( $self->CurrentUser->PrincipalId eq $args{'PrincipalId'}) {
- # If it's an AdminCc and they don't have
- # 'WatchAsAdminCc' or 'ModifyTicket', bail
- if ( $args{'Type'} eq 'AdminCc' ) {
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers')
- or $self->CurrentUserHasRight('WatchAsAdminCc') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
-
- # If it's a Requestor or Cc and they don't have
- # 'Watch' or 'ModifyTicket', bail
- elsif ( ( $args{'Type'} eq 'Cc' ) or ( $args{'Type'} eq 'Requestor' ) ) {
-
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers')
- or $self->CurrentUserHasRight('Watch') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
- else {
- $RT::Logger->warning( "$self -> AddWatcher got passed a bogus type");
- return ( 0, $self->loc('Error in parameters to Queue->AddWatcher') );
- }
- }
-
- # If the watcher isn't the current user
- # and the current user doesn't have 'ModifyQueueWatcher'
- # bail
- else {
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
-
- # }}}
-
- return ( $self->_AddWatcher(%args) );
-}
-
-#This contains the meat of AddWatcher. but can be called from a routine like
-# Create, which doesn't need the additional acl check
-sub _AddWatcher {
- my $self = shift;
- my %args = (
- Type => undef,
- Silent => undef,
- PrincipalId => undef,
- Email => undef,
- @_
- );
-
-
- my $principal = RT::Principal->new($self->CurrentUser);
- if ($args{'PrincipalId'}) {
- $principal->Load($args{'PrincipalId'});
- }
- elsif ($args{'Email'}) {
-
- my $user = RT::User->new($self->CurrentUser);
- $user->LoadByEmail($args{'Email'});
-
- unless ($user->Id) {
- $user->Load($args{'Email'});
- }
- if ($user->Id) { # If the user exists
- $principal->Load($user->PrincipalId);
- } else {
-
- # if the user doesn't exist, we need to create a new user
- my $new_user = RT::User->new($RT::SystemUser);
-
- my ( $Address, $Name ) =
- RT::Interface::Email::ParseAddressFromHeader($args{'Email'});
-
- my ( $Val, $Message ) = $new_user->Create(
- Name => $Address,
- EmailAddress => $Address,
- RealName => $Name,
- Privileged => 0,
- Comments => 'Autocreated when added as a watcher');
- unless ($Val) {
- $RT::Logger->error("Failed to create user ".$args{'Email'} .": " .$Message);
- # Deal with the race condition of two account creations at once
- $new_user->LoadByEmail($args{'Email'});
- }
- $principal->Load($new_user->PrincipalId);
- }
- }
- # If we can't find this watcher, we need to bail.
- unless ($principal->Id) {
- return(0, $self->loc("Could not find or create that user"));
- }
-
-
- my $group = RT::Group->new($self->CurrentUser);
- $group->LoadQueueRoleGroup(Type => $args{'Type'}, Queue => $self->Id);
- unless ($group->id) {
- return(0,$self->loc("Group not found"));
- }
-
- if ( $group->HasMember( $principal)) {
-
- return ( 0, $self->loc('That principal is already a [_1] for this queue', $args{'Type'}) );
- }
-
-
- my ($m_id, $m_msg) = $group->_AddMember(PrincipalId => $principal->Id);
- unless ($m_id) {
- $RT::Logger->error("Failed to add ".$principal->Id." as a member of group ".$group->Id."\n".$m_msg);
-
- return ( 0, $self->loc('Could not make that principal a [_1] for this queue', $args{'Type'}) );
- }
- return ( 1, $self->loc('Added principal as a [_1] for this queue', $args{'Type'}) );
-}
-
-# }}}
-
-# {{{ sub DeleteWatcher
-
-=head2 DeleteWatcher { Type => TYPE, PrincipalId => PRINCIPAL_ID, Email => EMAIL_ADDRESS }
-
-
-Deletes a queue watcher. Takes two arguments:
-
-Type (one of Requestor,Cc,AdminCc)
-
-and one of
-
-PrincipalId (an RT::Principal Id of the watcher you want to remove)
- OR
-Email (the email address of an existing wathcer)
-
-
-=cut
-
-
-sub DeleteWatcher {
- my $self = shift;
-
- my %args = ( Type => undef,
- PrincipalId => undef,
- @_ );
-
- unless ($args{'PrincipalId'} ) {
- return(0, $self->loc("No principal specified"));
- }
- my $principal = RT::Principal->new($self->CurrentUser);
- $principal->Load($args{'PrincipalId'});
-
- # If we can't find this watcher, we need to bail.
- unless ($principal->Id) {
- return(0, $self->loc("Could not find that principal"));
- }
-
- my $group = RT::Group->new($self->CurrentUser);
- $group->LoadQueueRoleGroup(Type => $args{'Type'}, Queue => $self->Id);
- unless ($group->id) {
- return(0,$self->loc("Group not found"));
- }
-
- # {{{ Check ACLS
- #If the watcher we're trying to add is for the current user
- if ( $self->CurrentUser->PrincipalId eq $args{'PrincipalId'}) {
- # If it's an AdminCc and they don't have
- # 'WatchAsAdminCc' or 'ModifyQueue', bail
- if ( $args{'Type'} eq 'AdminCc' ) {
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers')
- or $self->CurrentUserHasRight('WatchAsAdminCc') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
-
- # If it's a Requestor or Cc and they don't have
- # 'Watch' or 'ModifyQueue', bail
- elsif ( ( $args{'Type'} eq 'Cc' ) or ( $args{'Type'} eq 'Requestor' ) ) {
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers')
- or $self->CurrentUserHasRight('Watch') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
- else {
- $RT::Logger->warning( "$self -> DeleteWatcher got passed a bogus type");
- return ( 0, $self->loc('Error in parameters to Queue->DeleteWatcher') );
- }
- }
-
- # If the watcher isn't the current user
- # and the current user doesn't have 'ModifyQueueWathcers' bail
- else {
- unless ( $self->CurrentUserHasRight('ModifyQueueWatchers') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
-
- # }}}
-
-
- # see if this user is already a watcher.
-
- unless ( $group->HasMember($principal)) {
- return ( 0,
- $self->loc('That principal is not a [_1] for this queue', $args{'Type'}) );
- }
-
- my ($m_id, $m_msg) = $group->_DeleteMember($principal->Id);
- unless ($m_id) {
- $RT::Logger->error("Failed to delete ".$principal->Id.
- " as a member of group ".$group->Id."\n".$m_msg);
-
- return ( 0, $self->loc('Could not remove that principal as a [_1] for this queue', $args{'Type'}) );
- }
-
- return ( 1, $self->loc("[_1] is no longer a [_2] for this queue.", $principal->Object->Name, $args{'Type'} ));
-}
-
-# }}}
-
-# {{{ AdminCcAddresses
-
-=head2 AdminCcAddresses
-
-returns String: All queue AdminCc email addresses as a string
-
-=cut
-
-sub AdminCcAddresses {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('SeeQueue') ) {
- return undef;
- }
-
- return ( $self->AdminCc->MemberEmailAddressesAsString )
-
-}
-
-# }}}
-
-# {{{ CcAddresses
-
-=head2 CcAddresses
-
-returns String: All queue Ccs as a string of email addresses
-
-=cut
-
-sub CcAddresses {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('SeeQueue') ) {
- return undef;
- }
-
- return ( $self->Cc->MemberEmailAddressesAsString);
-
-}
-# }}}
-
-
-# {{{ sub Cc
-
-=head2 Cc
-
-Takes nothing.
-Returns an RT::Group object which contains this Queue's Ccs.
-If the user doesn't have "ShowQueue" permission, returns an empty group
-
-=cut
-
-sub Cc {
- my $self = shift;
-
- my $group = RT::Group->new($self->CurrentUser);
- if ( $self->CurrentUserHasRight('SeeQueue') ) {
- $group->LoadQueueRoleGroup(Type => 'Cc', Queue => $self->Id);
- }
- return ($group);
-
-}
-
-# }}}
-
-# {{{ sub AdminCc
-
-=head2 AdminCc
-
-Takes nothing.
-Returns an RT::Group object which contains this Queue's AdminCcs.
-If the user doesn't have "ShowQueue" permission, returns an empty group
-
-=cut
-
-sub AdminCc {
- my $self = shift;
-
- my $group = RT::Group->new($self->CurrentUser);
- if ( $self->CurrentUserHasRight('SeeQueue') ) {
- $group->LoadQueueRoleGroup(Type => 'AdminCc', Queue => $self->Id);
- }
- return ($group);
-
-}
-
-# }}}
-
-# {{{ IsWatcher, IsCc, IsAdminCc
-
-# {{{ sub IsWatcher
-# a generic routine to be called by IsRequestor, IsCc and IsAdminCc
-
-=head2 IsWatcher { Type => TYPE, PrincipalId => PRINCIPAL_ID }
-
-Takes a param hash with the attributes Type and PrincipalId
-
-Type is one of Requestor, Cc, AdminCc and Owner
-
-PrincipalId is an RT::Principal id
-
-Returns true if that principal is a member of the group Type for this queue
-
-
-=cut
-
-sub IsWatcher {
- my $self = shift;
-
- my %args = ( Type => 'Cc',
- PrincipalId => undef,
- @_
- );
-
- # Load the relevant group.
- my $group = RT::Group->new($self->CurrentUser);
- $group->LoadQueueRoleGroup(Type => $args{'Type'}, Queue => $self->id);
- # Ask if it has the member in question
-
- my $principal = RT::Principal->new($self->CurrentUser);
- $principal->Load($args{'PrincipalId'});
- unless ($principal->Id) {
- return (undef);
- }
-
- return ($group->HasMemberRecursively($principal));
-}
-
-# }}}
-
-
-# {{{ sub IsCc
-
-=head2 IsCc PRINCIPAL_ID
-
-Takes an RT::Principal id.
-Returns true if the principal is a requestor of the current queue.
-
-
-=cut
-
-sub IsCc {
- my $self = shift;
- my $cc = shift;
-
- return ( $self->IsWatcher( Type => 'Cc', PrincipalId => $cc ) );
-
-}
-
-# }}}
-
-# {{{ sub IsAdminCc
-
-=head2 IsAdminCc PRINCIPAL_ID
-
-Takes an RT::Principal id.
-Returns true if the principal is a requestor of the current queue.
-
-=cut
-
-sub IsAdminCc {
- my $self = shift;
- my $person = shift;
-
- return ( $self->IsWatcher( Type => 'AdminCc', PrincipalId => $person ) );
-
-}
-
-# }}}
-
-
-# }}}
-
-
-
-
-
-# }}}
-
-# {{{ ACCESS CONTROL
-
-# {{{ sub _Set
-sub _Set {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('AdminQueue') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- return ( $self->SUPER::_Set(@_) );
-}
-
-# }}}
-
-# {{{ sub _Value
-
-sub _Value {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('SeeQueue') ) {
- return (undef);
- }
-
- return ( $self->__Value(@_) );
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight
-
-Takes one argument. A textual string with the name of the right we want to check.
-Returns true if the current user has that right for this queue.
-Returns undef otherwise.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
- return (
- $self->HasRight(
- Principal => $self->CurrentUser,
- Right => "$right"
- )
- );
-
-}
-
-# }}}
-
-# {{{ sub HasRight
-
-=head2 HasRight
-
-Takes a param hash with the fields 'Right' and 'Principal'.
-Principal defaults to the current user.
-Returns true if the principal has that right for this queue.
-Returns undef otherwise.
-
-=cut
-
-# TAKES: Right and optional "Principal" which defaults to the current user
-sub HasRight {
- my $self = shift;
- my %args = (
- Right => undef,
- Principal => $self->CurrentUser,
- @_
- );
- unless ( defined $args{'Principal'} ) {
- $RT::Logger->debug("Principal undefined in Queue::HasRight");
-
- }
- return (
- $args{'Principal'}->HasRight(
- Object => $self->Id ? $self : $RT::System,
- Right => $args{'Right'}
- )
- );
-}
-
-# }}}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/Queues.pm b/rt/lib/RT/Queues.pm
deleted file mode 100755
index 60aec90..0000000
--- a/rt/lib/RT/Queues.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Queues -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Queues
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Queues;
-
-use RT::SearchBuilder;
-use RT::Queue;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Queues';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Queue item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Queue->new($self->CurrentUser));
-}
-
- eval "require RT::Queues_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Queues_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Queues_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Queues_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Queues_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Queues_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Queues_Overlay, RT::Queues_Vendor, RT::Queues_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Queues_Overlay.pm b/rt/lib/RT/Queues_Overlay.pm
deleted file mode 100644
index 06e3e12..0000000
--- a/rt/lib/RT/Queues_Overlay.pm
+++ /dev/null
@@ -1,156 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Queues - a collection of RT::Queue objects
-
-=head1 SYNOPSIS
-
- use RT::Queues;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Queues);
-
-=end testing
-
-=cut
-
-
-package RT::Queues;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = "Queues";
- $self->{'primary_key'} = "id";
-
- # By default, order by name
- $self->OrderBy( ALIAS => 'main',
- FIELD => 'Name',
- ORDER => 'ASC');
-
- return ($self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ sub _DoSearch
-
-=head2 _DoSearch
-
- A subclass of DBIx::SearchBuilder::_DoSearch that makes sure that _Disabled rows never get seen unless
-we're explicitly trying to see them.
-
-=cut
-
-sub _DoSearch {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless($self->{'find_disabled_rows'}) {
- $self->LimitToEnabled();
- }
-
- return($self->SUPER::_DoSearch(@_));
-
-}
-
-# }}}
-
-
-# {{{ sub Limit
-sub Limit {
- my $self = shift;
- my %args = ( ENTRYAGGREGATOR => 'AND',
- @_);
- $self->SUPER::Limit(%args);
-}
-# }}}
-
-# {{{ sub Next
-
-=head2 Next
-
-Returns the next queue that this user can see.
-
-=cut
-
-sub Next {
- my $self = shift;
-
-
- my $Queue = $self->SUPER::Next();
- if ((defined($Queue)) and (ref($Queue))) {
-
- if ($Queue->CurrentUserHasRight('SeeQueue')) {
- return($Queue);
- }
-
- #If the user doesn't have the right to show this queue
- else {
- return($self->Next());
- }
- }
- #if there never was any queue
- else {
- return(undef);
- }
-
-}
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/Record.pm b/rt/lib/RT/Record.pm
deleted file mode 100755
index 6962221..0000000
--- a/rt/lib/RT/Record.pm
+++ /dev/null
@@ -1,455 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-=head1 NAME
-
- RT::Record - Base class for RT record objects
-
-=head1 SYNOPSIS
-
-
-=head1 DESCRIPTION
-
-
-=begin testing
-
-ok (require RT::Record);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-package RT::Record;
-use RT::Date;
-use RT::User;
-
-use RT::Base;
-use DBIx::SearchBuilder::Record::Cachable;
-
-use strict;
-use vars qw/@ISA/;
-
-@ISA = qw(RT::Base);
-
-if ($RT::DontCacheSearchBuilderRecords ) {
- push (@ISA, 'DBIx::SearchBuilder::Record');
-} else {
- push (@ISA, 'DBIx::SearchBuilder::Record::Cachable');
-
-}
-
-# {{{ sub _Init
-
-sub _Init {
- my $self = shift;
- $self->CurrentUser(@_);
-
-}
-
-# }}}
-
-# {{{ _PrimaryKeys
-
-=head2 _PrimaryKeys
-
-The primary keys for RT classes is 'id'
-
-=cut
-
-sub _PrimaryKeys {
- my $self = shift;
- return ( ['id'] );
-}
-
-# }}}
-
-# {{{ sub _Handle
-sub _Handle {
- my $self = shift;
- return ($RT::Handle);
-}
-
-# }}}
-
-# {{{ sub Create
-
-=item Create PARAMHASH
-
-Takes a PARAMHASH of Column -> Value pairs.
-If any Column has a Validate$PARAMNAME subroutine defined and the
-value provided doesn't pass validation, this routine returns
-an error.
-
-If this object's table has any of the following atetributes defined as
-'Auto', this routine will automatically fill in their values.
-
-=cut
-
-sub Create {
- my $self = shift;
- my %attribs = (@_);
- foreach my $key ( keys %attribs ) {
- my $method = "Validate$key";
- unless ( $self->$method( $attribs{$key} ) ) {
- if (wantarray) {
- return ( 0, $self->loc('Invalid value for [_1]', $key) );
- }
- else {
- return (0);
- }
- }
- }
- my $now = RT::Date->new( $self->CurrentUser );
- $now->Set( Format => 'unix', Value => time );
- $attribs{'Created'} = $now->ISO() if ( $self->_Accessible( 'Created', 'auto' ) && !$attribs{'Created'});
-
- if ($self->_Accessible( 'Creator', 'auto' ) && !$attribs{'Creator'}) {
- $attribs{'Creator'} = $self->CurrentUser->id || '0';
- }
- $attribs{'LastUpdated'} = $now->ISO()
- if ( $self->_Accessible( 'LastUpdated', 'auto' ) && !$attribs{'LastUpdated'});
-
- $attribs{'LastUpdatedBy'} = $self->CurrentUser->id || '0'
- if ( $self->_Accessible( 'LastUpdatedBy', 'auto' ) && !$attribs{'LastUpdatedBy'});
-
- my $id = $self->SUPER::Create(%attribs);
- if ( UNIVERSAL::isa( $id, 'Class::ReturnValue' ) ) {
- if ( $id->errno ) {
- if (wantarray) {
- return ( 0,
- $self->loc( "Internal Error: [_1]", $id->{error_message} ) );
- }
- else {
- return (0);
- }
- }
- }
- # If the object was created in the database,
- # load it up now, so we're sure we get what the database
- # has. Arguably, this should not be necessary, but there
- # isn't much we can do about it.
-
- unless ($id) {
- if (wantarray) {
- return ( $id, $self->loc('Object could not be created') );
- }
- else {
- return ($id);
- }
-
- }
-
- if (UNIVERSAL::isa('errno',$id)) {
- exit(0);
- warn "It's here!";
- return(undef);
- }
-
- $self->Load($id) if ($id);
-
-
-
- if (wantarray) {
- return ( $id, $self->loc('Object created') );
- }
- else {
- return ($id);
- }
-
-}
-
-# }}}
-
-# {{{ sub LoadByCols
-
-=head2 LoadByCols
-
-Override DBIx::SearchBuilder::LoadByCols to do case-insensitive loads if the
-DB is case sensitive
-
-=cut
-
-sub LoadByCols {
- my $self = shift;
- my %hash = (@_);
-
- # If this database is case sensitive we need to uncase objects for
- # explicit loading
- if ( $self->_Handle->CaseSensitive ) {
- my %newhash;
- foreach my $key ( keys %hash ) {
-
- # If we've been passed an empty value, we can't do the lookup.
- # We don't need to explicitly downcase integers or an id.
- if ( $key =~ '^id$'
- || !defined( $hash{$key} )
- || $hash{$key} =~ /^\d+$/
- )
- {
- $newhash{$key} = $hash{$key};
- }
- else {
- $newhash{ "lower(" . $key . ")" } = lc( $hash{$key} );
- }
- }
-
- # We've clobbered everything we care about. bash the old hash
- # and replace it with the new hash
- %hash = %newhash;
- }
- $self->SUPER::LoadByCols(%hash);
-}
-
-# }}}
-
-# {{{ Datehandling
-
-# There is room for optimizations in most of those subs:
-
-# {{{ LastUpdatedObj
-
-sub LastUpdatedObj {
- my $self = shift;
- my $obj = new RT::Date( $self->CurrentUser );
-
- $obj->Set( Format => 'sql', Value => $self->LastUpdated );
- return $obj;
-}
-
-# }}}
-
-# {{{ CreatedObj
-
-sub CreatedObj {
- my $self = shift;
- my $obj = new RT::Date( $self->CurrentUser );
-
- $obj->Set( Format => 'sql', Value => $self->Created );
-
- return $obj;
-}
-
-# }}}
-
-# {{{ AgeAsString
-#
-# TODO: This should be deprecated
-#
-sub AgeAsString {
- my $self = shift;
- return ( $self->CreatedObj->AgeAsString() );
-}
-
-# }}}
-
-# {{{ LastUpdatedAsString
-
-# TODO this should be deprecated
-
-sub LastUpdatedAsString {
- my $self = shift;
- if ( $self->LastUpdated ) {
- return ( $self->LastUpdatedObj->AsString() );
-
- }
- else {
- return "never";
- }
-}
-
-# }}}
-
-# {{{ CreatedAsString
-#
-# TODO This should be deprecated
-#
-sub CreatedAsString {
- my $self = shift;
- return ( $self->CreatedObj->AsString() );
-}
-
-# }}}
-
-# {{{ LongSinceUpdateAsString
-#
-# TODO This should be deprecated
-#
-sub LongSinceUpdateAsString {
- my $self = shift;
- if ( $self->LastUpdated ) {
-
- return ( $self->LastUpdatedObj->AgeAsString() );
-
- }
- else {
- return "never";
- }
-}
-
-# }}}
-
-# }}} Datehandling
-
-# {{{ sub _Set
-sub _Set {
- my $self = shift;
-
- my %args = (
- Field => undef,
- Value => undef,
- IsSQL => undef,
- @_
- );
-
- #if the user is trying to modify the record
- # TODO: document _why_ this code is here
-
- if ( ( !defined( $args{'Field'} ) ) || ( !defined( $args{'Value'} ) ) ) {
- $args{'Value'} = 0;
- }
-
- $self->_SetLastUpdated();
- my ( $val, $msg ) = $self->SUPER::_Set(
- Field => $args{'Field'},
- Value => $args{'Value'},
- IsSQL => $args{'IsSQL'}
- );
-}
-
-# }}}
-
-# {{{ sub _SetLastUpdated
-
-=head2 _SetLastUpdated
-
-This routine updates the LastUpdated and LastUpdatedBy columns of the row in question
-It takes no options. Arguably, this is a bug
-
-=cut
-
-sub _SetLastUpdated {
- my $self = shift;
- use RT::Date;
- my $now = new RT::Date( $self->CurrentUser );
- $now->SetToNow();
-
- if ( $self->_Accessible( 'LastUpdated', 'auto' ) ) {
- my ( $msg, $val ) = $self->__Set(
- Field => 'LastUpdated',
- Value => $now->ISO
- );
- }
- if ( $self->_Accessible( 'LastUpdatedBy', 'auto' ) ) {
- my ( $msg, $val ) = $self->__Set(
- Field => 'LastUpdatedBy',
- Value => $self->CurrentUser->id
- );
- }
-}
-
-# }}}
-
-# {{{ sub CreatorObj
-
-=head2 CreatorObj
-
-Returns an RT::User object with the RT account of the creator of this row
-
-=cut
-
-sub CreatorObj {
- my $self = shift;
- unless ( exists $self->{'CreatorObj'} ) {
-
- $self->{'CreatorObj'} = RT::User->new( $self->CurrentUser );
- $self->{'CreatorObj'}->Load( $self->Creator );
- }
- return ( $self->{'CreatorObj'} );
-}
-
-# }}}
-
-# {{{ sub LastUpdatedByObj
-
-=head2 LastUpdatedByObj
-
- Returns an RT::User object of the last user to touch this object
-
-=cut
-
-sub LastUpdatedByObj {
- my $self = shift;
- unless ( exists $self->{LastUpdatedByObj} ) {
- $self->{'LastUpdatedByObj'} = RT::User->new( $self->CurrentUser );
- $self->{'LastUpdatedByObj'}->Load( $self->LastUpdatedBy );
- }
- return $self->{'LastUpdatedByObj'};
-}
-
-# }}}
-
-
-require Encode::compat if $] < 5.007001;
-require Encode;
-
-sub __Value {
- my $self = shift;
- my $field = shift;
- my %args = ( decode_utf8 => 1,
- @_ );
-
- unless (defined $field && $field) {
- $RT::Logger->error("$self __Value called with undef field");
- }
- my $value = $self->SUPER::__Value($field);
-
- return('') if ( !defined($value) || $value eq '');
-
- return Encode::decode_utf8($value) || $value if $args{'decode_utf8'};
- return $value;
-}
-
-# Set up defaults for DBIx::SearchBuilder::Record::Cachable
-
-sub _CacheConfig {
- {
- 'cache_p' => 1,
- 'fast_update_p' => 1,
- 'cache_for_sec' => 30,
- }
-}
-
-=head2 _DecodeUTF8
-
- When passed a string will "decode" it int a proper UTF-8 string
-
-=cut
-
-eval "require RT::Record_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Record_Vendor.pm});
-eval "require RT::Record_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Record_Local.pm});
-
-1;
diff --git a/rt/lib/RT/SavedSearch.pm b/rt/lib/RT/SavedSearch.pm
deleted file mode 100644
index 65411a7..0000000
--- a/rt/lib/RT/SavedSearch.pm
+++ /dev/null
@@ -1,327 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::SavedSearch - an API for saving and retrieving search form values.
-
-=head1 SYNOPSIS
-
- use RT::SavedSearch
-
-=head1 DESCRIPTION
-
- SavedSearch is an object that can belong to either an RT::User or an
- RT::Group. It consists of an ID, a description, and a number of
- search parameters.
-
-=head1 METHODS
-
-=begin testing
-
-use_ok(RT::SavedSearch);
-
-# Real tests are in lib/t/20savedsearch.t
-
-=end testing
-
-=cut
-
-package RT::SavedSearch;
-
-use RT::Base;
-use RT::Attribute;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw/RT::Base/;
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- $self->{'Id'} = 0;
- bless ($self, $class);
- $self->CurrentUser(@_);
- return $self;
-}
-
-=head2 Load
-
-Takes a privacy specification, an object ID, and a search ID. Loads
-the given search ID if it belongs to the stated user or group.
-Returns a tuple of status and message, where status is true on
-success.
-
-=cut
-
-sub Load {
- my $self = shift;
- my ($privacy, $id) = @_;
- my $object = $self->_GetObject($privacy);
-
- if ($object) {
- $self->{'Attribute'} = $object->Attributes->WithId($id);
- if ($self->{'Attribute'}->Id) {
- $self->{'Id'} = $self->{'Attribute'}->Id;
- $self->{'Privacy'} = $privacy;
- $self->{'Type'} = $self->{'Attribute'}->SubValue('SearchType');
- return (1, $self->loc("Loaded search [_1]", $self->Name));
- } else {
- $RT::Logger->error("Could not load attribute " . $id
- . " for object " . $privacy);
- return (0, $self->loc("Search attribute load failure"));
- }
- } else {
- $RT::Logger->error("Could not load object $privacy when loading search");
- return (0, $self->loc("Could not load object for [_1]", $privacy));
- }
-
-}
-
-=head2 Save
-
-Takes a privacy, an optional type, a name, and a hashref containing the
-search parameters. Saves the given parameters to the appropriate user/
-group object, and loads the resulting search. Returns a tuple of status
-and message, where status is true on success. Defaults are:
- Privacy: undef
- Type: Ticket
- Name: "new search"
- SearchParams: (empty hash)
-
-=cut
-
-sub Save {
- my $self = shift;
- my %args = ('Privacy' => 'RT::User-' . $self->CurrentUser->Id,
- 'Type' => 'Ticket',
- 'Name' => 'new search',
- 'SearchParams' => {},
- @_);
- my $privacy = $args{'Privacy'};
- my $type = $args{'Type'};
- my $name = $args{'Name'};
- my %params = %{$args{'SearchParams'}};
-
- $params{'SearchType'} = $type;
- my $object = $self->_GetObject($privacy);
- if ($object) {
- my ($att_id, $att_msg) = $object->AddAttribute(
- 'Name' => 'SavedSearch',
- 'Description' => $name,
- 'Content' => \%params);
- if ($att_id) {
- $self->{'Attribute'} = $object->Attributes->WithId($att_id);
- $self->{'Id'} = $att_id;
- $self->{'Privacy'} = $privacy;
- $self->{'Type'} = $type;
- return (1, $self->loc("Saved search [_1]", $name));
- } else {
- $RT::Logger->error("SavedSearch save failure: $att_msg");
- return (0, $self->loc("Failed to create search attribute"));
- }
- } else {
- return (0, $self->loc("Failed to load object for [_1]", $privacy));
- }
-}
-
-=head2 Update
-
-Updates the parameters of an existing search. Takes the arguments
-"Name" and "SearchParams"; SearchParams should be a hashref containing
-the new parameters of the search. If Name is not specified, the name
-will not be changed.
-
-=cut
-
-sub Update {
- my $self = shift;
- my %args = ('Name' => '',
- 'SearchParams' => {},
- @_);
-
- return(0, $self->loc("No search loaded")) unless $self->Id;
- return(0, $self->loc("Could not load search attribute"))
- unless $self->{'Attribute'}->Id;
- my ($status, $msg) = $self->{'Attribute'}->SetSubValues(%{$args{'SearchParams'}});
- if ($status && $args{'Name'}) {
- ($status, $msg) = $self->{'Attribute'}->SetDescription($args{'Name'});
- }
- return ($status, $self->loc("Search update: [_1]", $msg));
-}
-
-=head2 Delete
-
-Deletes the existing search. Returns a tuple of status and message,
-where status is true upon success.
-
-=cut
-
-sub Delete {
- my $self = shift;
-
- my ($status, $msg) = $self->{'Attribute'}->Delete;
- if ($status) {
- return (1, $self->loc("Deleted search"));
- } else {
- return (0, $self->loc("Delete failed: [_1]", $msg));
- }
-}
-
-
-### Accessor methods
-
-=head2 Name
-
-Returns the name of the search.
-
-=cut
-
-sub Name {
- my $self = shift;
- return unless ref($self->{'Attribute'}) eq 'RT::Attribute';
- return $self->{'Attribute'}->Description();
-}
-
-=head2 GetParameter
-
-Returns the given named parameter of the search, e.g. 'Query', 'Format'.
-
-=cut
-
-sub GetParameter {
- my $self = shift;
- my $param = shift;
- return unless ref($self->{'Attribute'}) eq 'RT::Attribute';
- return $self->{'Attribute'}->SubValue($param);
-}
-
-=head2 Id
-
-Returns the numerical id of this search.
-
-=cut
-
-sub Id {
- my $self = shift;
- return $self->{'Id'};
-}
-
-=head2 Privacy
-
-Returns the principal object to whom this search belongs, in a string
-"<class>-<id>", e.g. "RT::Group-16".
-
-=cut
-
-sub Privacy {
- my $self = shift;
- return $self->{'Privacy'};
-}
-
-=head2 Type
-
-Returns the type of this search, e.g. 'Ticket'. Useful for denoting the
-saved searches that are relevant to a particular search page.
-
-=cut
-
-sub Type {
- my $self = shift;
- return $self->{'Type'};
-}
-
-### Internal methods
-
-# _GetObject: helper routine to load the correct object whose parameters
-# have been passed.
-
-sub _GetObject {
- my $self = shift;
- my $privacy = shift;
-
- my ($obj_type, $obj_id) = split(/\-/, $privacy);
- unless ($obj_type eq 'RT::User' || $obj_type eq 'RT::Group') {
- $RT::Logger->error("Tried to load a search belonging to an $obj_type, which is neither a user nor a group");
- return undef;
- }
-
- my $object;
- eval "
- require $obj_type;
- \$object = $obj_type->new(\$self->CurrentUser);
- \$object->Load(\$obj_id);
- ";
- unless (ref($object) eq $obj_type) {
- $RT::Logger->error("Could not load object of type $obj_type with ID $obj_id");
- return undef;
- }
-
- # Do not allow the loading of a user object other than the current
- # user, or of a group object of which the current user is not a member.
-
- if ($obj_type eq 'RT::User'
- && $object->Id != $self->CurrentUser->UserObj->Id()) {
- $RT::Logger->debug("Permission denied for user other than self");
- return undef;
- }
- if ($obj_type eq 'RT::Group' &&
- !$object->HasMemberRecursively($self->CurrentUser->PrincipalObj)) {
- $RT::Logger->debug("Permission denied, ".$self->CurrentUser->Name.
- " is not a member of group");
- return undef;
- }
-
- return $object;
-}
-
-eval "require RT::SavedSearch_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SavedSearch_Vendor.pm});
-eval "require RT::SavedSearch_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SavedSearch_Local.pm});
-
-1;
diff --git a/rt/lib/RT/SavedSearches.pm b/rt/lib/RT/SavedSearches.pm
deleted file mode 100644
index 262bfa8..0000000
--- a/rt/lib/RT/SavedSearches.pm
+++ /dev/null
@@ -1,206 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::SavedSearches - a pseudo-collection for SavedSearch objects.
-
-=head1 SYNOPSIS
-
- use RT::SavedSearch
-
-=head1 DESCRIPTION
-
- SavedSearches is an object consisting of a number of SavedSearch objects.
- It works more or less like a DBIx::SearchBuilder collection, although it
- is not.
-
-=head1 METHODS
-
-=begin testing
-
-use_ok(RT::SavedSearches);
-
-# The real tests are in lib/t/20savedsearch.t
-
-=end testing
-
-=cut
-
-package RT::SavedSearches;
-
-use RT::Base;
-use RT::SavedSearch;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw/RT::Base/;
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->CurrentUser(@_);
- $self->{'idx'} = 0;
- $self->{'objects'} = [];
- return $self;
-}
-
-=head2 LimitToPrivacy
-
-Takes two argumets: a privacy string, of the format "<class>-<id>", as
-produced by RT::SavedSearch::Privacy(); and a type string, as produced
-by RT::SavedSearch::Type(). The SavedSearches object will load the
-searches belonging to that user or group that are of the type
-specified. If no type is specified, all the searches belonging to the
-user/group will be loaded. Repeated calls to the same object should DTRT.
-
-=cut
-
-sub LimitToPrivacy {
- my $self = shift;
- my $privacy = shift;
- my $type = shift;
-
- my $object = $self->_GetObject($privacy);
-
- if ($object) {
- $self->{'objects'} = [];
- my @search_atts = $object->Attributes->Named('SavedSearch');
- foreach my $att (@search_atts) {
- my $search = RT::SavedSearch->new($self->CurrentUser);
- $search->Load($privacy, $att->Id);
- next if $type && $search->Type ne $type;
- push(@{$self->{'objects'}}, $search);
- }
- } else {
- $RT::Logger->error("Could not load object $privacy");
- }
-}
-
-### Accessor methods
-
-=head2 Next
-
-Returns the next object in the collection.
-
-=cut
-
-sub Next {
- my $self = shift;
- my $search = $self->{'objects'}->[$self->{'idx'}];
- if ($search) {
- $self->{'idx'}++;
- } else {
- # We have run out of objects; reset the counter.
- $self->{'idx'} = 0;
- }
- return $search;
-}
-
-=head2 Count
-
-Returns the number of search objects found.
-
-=cut
-
-sub Count {
- my $self = shift;
- return scalar @{$self->{'objects'}};
-}
-
-### Internal methods
-
-# _GetObject: helper routine to load the correct object whose parameters
-# have been passed.
-
-sub _GetObject {
- my $self = shift;
- my $privacy = shift;
-
- my ($obj_type, $obj_id) = split(/\-/, $privacy);
- unless ($obj_type eq 'RT::User' || $obj_type eq 'RT::Group') {
- $RT::Logger->error("Tried to load a search belonging to an $obj_type, which is neither a user nor a group");
- return undef;
- }
-
- my $object;
- eval "
- require $obj_type;
- \$object = $obj_type->new(\$self->CurrentUser);
- \$object->Load($obj_id);
- ";
- unless (ref($object) eq $obj_type) {
- $RT::Logger->error("Could not load object of type $obj_type with ID $obj_id");
- return undef;
- }
-
- # Do not allow the loading of a user object other than the current
- # user, or of a group object of which the current user is not a member.
-
- if ($obj_type eq 'RT::User'
- && $object->Id != $self->CurrentUser->UserObj->Id()) {
- $RT::Logger->error('Requested user ' . $object->Id
- . 'is not current user');
- return undef;
- }
- if ($obj_type eq 'RT::Group'
- && !$object->HasMemberRecursively($self->CurrentUser->PrincipalObj)) {
- $RT::Logger->error('Current user does not belong to requested group '
- . $object->Id);
- return undef;
- }
-
- return $object;
-}
-
-eval "require RT::SavedSearches_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SavedSearches_Vendor.pm});
-eval "require RT::SavedSearches_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SavedSearches_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Scrip.pm b/rt/lib/RT/Scrip.pm
deleted file mode 100755
index a69dde0..0000000
--- a/rt/lib/RT/Scrip.pm
+++ /dev/null
@@ -1,500 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Scrip
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Scrip;
-use RT::Record;
-use RT::Queue;
-use RT::Template;
-use RT::ScripCondition;
-use RT::ScripAction;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Scrips');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(255) 'Description'.
- int(11) 'ScripCondition'.
- int(11) 'ScripAction'.
- text 'ConditionRules'.
- text 'ActionRules'.
- text 'CustomIsApplicableCode'.
- text 'CustomPrepareCode'.
- text 'CustomCommitCode'.
- varchar(32) 'Stage'.
- int(11) 'Queue'.
- int(11) 'Template'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Description => '',
- ScripCondition => '0',
- ScripAction => '0',
- ConditionRules => '',
- ActionRules => '',
- CustomIsApplicableCode => '',
- CustomPrepareCode => '',
- CustomCommitCode => '',
- Stage => '',
- Queue => '0',
- Template => '0',
-
- @_);
- $self->SUPER::Create(
- Description => $args{'Description'},
- ScripCondition => $args{'ScripCondition'},
- ScripAction => $args{'ScripAction'},
- ConditionRules => $args{'ConditionRules'},
- ActionRules => $args{'ActionRules'},
- CustomIsApplicableCode => $args{'CustomIsApplicableCode'},
- CustomPrepareCode => $args{'CustomPrepareCode'},
- CustomCommitCode => $args{'CustomCommitCode'},
- Stage => $args{'Stage'},
- Queue => $args{'Queue'},
- Template => $args{'Template'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item ScripCondition
-
-Returns the current value of ScripCondition.
-(In the database, ScripCondition is stored as int(11).)
-
-
-
-=item SetScripCondition VALUE
-
-
-Set ScripCondition to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ScripCondition will be stored as a int(11).)
-
-
-=cut
-
-
-=item ScripConditionObj
-
-Returns the ScripCondition Object which has the id returned by ScripCondition
-
-
-=cut
-
-sub ScripConditionObj {
- my $self = shift;
- my $ScripCondition = RT::ScripCondition->new($self->CurrentUser);
- $ScripCondition->Load($self->__Value('ScripCondition'));
- return($ScripCondition);
-}
-
-=item ScripAction
-
-Returns the current value of ScripAction.
-(In the database, ScripAction is stored as int(11).)
-
-
-
-=item SetScripAction VALUE
-
-
-Set ScripAction to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ScripAction will be stored as a int(11).)
-
-
-=cut
-
-
-=item ScripActionObj
-
-Returns the ScripAction Object which has the id returned by ScripAction
-
-
-=cut
-
-sub ScripActionObj {
- my $self = shift;
- my $ScripAction = RT::ScripAction->new($self->CurrentUser);
- $ScripAction->Load($self->__Value('ScripAction'));
- return($ScripAction);
-}
-
-=item ConditionRules
-
-Returns the current value of ConditionRules.
-(In the database, ConditionRules is stored as text.)
-
-
-
-=item SetConditionRules VALUE
-
-
-Set ConditionRules to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ConditionRules will be stored as a text.)
-
-
-=cut
-
-
-=item ActionRules
-
-Returns the current value of ActionRules.
-(In the database, ActionRules is stored as text.)
-
-
-
-=item SetActionRules VALUE
-
-
-Set ActionRules to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ActionRules will be stored as a text.)
-
-
-=cut
-
-
-=item CustomIsApplicableCode
-
-Returns the current value of CustomIsApplicableCode.
-(In the database, CustomIsApplicableCode is stored as text.)
-
-
-
-=item SetCustomIsApplicableCode VALUE
-
-
-Set CustomIsApplicableCode to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomIsApplicableCode will be stored as a text.)
-
-
-=cut
-
-
-=item CustomPrepareCode
-
-Returns the current value of CustomPrepareCode.
-(In the database, CustomPrepareCode is stored as text.)
-
-
-
-=item SetCustomPrepareCode VALUE
-
-
-Set CustomPrepareCode to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomPrepareCode will be stored as a text.)
-
-
-=cut
-
-
-=item CustomCommitCode
-
-Returns the current value of CustomCommitCode.
-(In the database, CustomCommitCode is stored as text.)
-
-
-
-=item SetCustomCommitCode VALUE
-
-
-Set CustomCommitCode to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, CustomCommitCode will be stored as a text.)
-
-
-=cut
-
-
-=item Stage
-
-Returns the current value of Stage.
-(In the database, Stage is stored as varchar(32).)
-
-
-
-=item SetStage VALUE
-
-
-Set Stage to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Stage will be stored as a varchar(32).)
-
-
-=cut
-
-
-=item Queue
-
-Returns the current value of Queue.
-(In the database, Queue is stored as int(11).)
-
-
-
-=item SetQueue VALUE
-
-
-Set Queue to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Queue will be stored as a int(11).)
-
-
-=cut
-
-
-=item QueueObj
-
-Returns the Queue Object which has the id returned by Queue
-
-
-=cut
-
-sub QueueObj {
- my $self = shift;
- my $Queue = RT::Queue->new($self->CurrentUser);
- $Queue->Load($self->__Value('Queue'));
- return($Queue);
-}
-
-=item Template
-
-Returns the current value of Template.
-(In the database, Template is stored as int(11).)
-
-
-
-=item SetTemplate VALUE
-
-
-Set Template to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Template will be stored as a int(11).)
-
-
-=cut
-
-
-=item TemplateObj
-
-Returns the Template Object which has the id returned by Template
-
-
-=cut
-
-sub TemplateObj {
- my $self = shift;
- my $Template = RT::Template->new($self->CurrentUser);
- $Template->Load($self->__Value('Template'));
- return($Template);
-}
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- ScripCondition =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- ScripAction =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- ConditionRules =>
- {read => 1, write => 1, type => 'text', default => ''},
- ActionRules =>
- {read => 1, write => 1, type => 'text', default => ''},
- CustomIsApplicableCode =>
- {read => 1, write => 1, type => 'text', default => ''},
- CustomPrepareCode =>
- {read => 1, write => 1, type => 'text', default => ''},
- CustomCommitCode =>
- {read => 1, write => 1, type => 'text', default => ''},
- Stage =>
- {read => 1, write => 1, type => 'varchar(32)', default => ''},
- Queue =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Template =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Scrip_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrip_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Scrip_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrip_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Scrip_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrip_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Scrip_Overlay, RT::Scrip_Vendor, RT::Scrip_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ScripAction.pm b/rt/lib/RT/ScripAction.pm
deleted file mode 100755
index 26824df..0000000
--- a/rt/lib/RT/ScripAction.pm
+++ /dev/null
@@ -1,279 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::ScripAction
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::ScripAction;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('ScripActions');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- varchar(60) 'ExecModule'.
- varchar(255) 'Argument'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- ExecModule => '',
- Argument => '',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Description => $args{'Description'},
- ExecModule => $args{'ExecModule'},
- Argument => $args{'Argument'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item ExecModule
-
-Returns the current value of ExecModule.
-(In the database, ExecModule is stored as varchar(60).)
-
-
-
-=item SetExecModule VALUE
-
-
-Set ExecModule to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ExecModule will be stored as a varchar(60).)
-
-
-=cut
-
-
-=item Argument
-
-Returns the current value of Argument.
-(In the database, Argument is stored as varchar(255).)
-
-
-
-=item SetArgument VALUE
-
-
-Set Argument to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Argument will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- ExecModule =>
- {read => 1, write => 1, type => 'varchar(60)', default => ''},
- Argument =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::ScripAction_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripAction_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ScripAction_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripAction_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ScripAction_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripAction_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ScripAction_Overlay, RT::ScripAction_Vendor, RT::ScripAction_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ScripAction_Overlay.pm b/rt/lib/RT/ScripAction_Overlay.pm
deleted file mode 100644
index 76e047f..0000000
--- a/rt/lib/RT/ScripAction_Overlay.pm
+++ /dev/null
@@ -1,284 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::ScripAction - RT Action object
-
-=head1 SYNOPSIS
-
- use RT::ScripAction;
-
-
-=head1 DESCRIPTION
-
-This module should never be called directly by client code. it's an internal module which
-should only be accessed through exported APIs in other modules.
-
-
-=begin testing
-
-ok (require RT::ScripAction);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-
-package RT::ScripAction;
-
-use strict;
-no warnings qw(redefine);
-use RT::Template;
-
-# {{{ sub _Accessible
-sub _Accessible {
- my $self = shift;
- my %Cols = ( Name => 'read',
- Description => 'read',
- ExecModule => 'read',
- Argument => 'read',
- Creator => 'read/auto',
- Created => 'read/auto',
- LastUpdatedBy => 'read/auto',
- LastUpdated => 'read/auto'
- );
- return($self->SUPER::_Accessible(@_, %Cols));
-}
-# }}}
-
-# {{{ sub Create
-
-=head2 Create
-
-Takes a hash. Creates a new Action entry. should be better
-documented.
-
-=cut
-
-sub Create {
- my $self = shift;
- #TODO check these args and do smart things.
- return($self->SUPER::Create(@_));
-}
-# }}}
-
-# {{{ sub Delete
-sub Delete {
- my $self = shift;
-
- return (0, "ScripAction->Delete not implemented");
-}
-# }}}
-
-# {{{ sub Load
-
-=head2 Load IDENTIFIER
-
-Loads an action by its Name.
-
-Returns: Id, Error Message
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift;
-
- if (!$identifier) {
- return (0, $self->loc('Input error'));
- }
-
- if ($identifier !~ /\D/) {
- $self->SUPER::Load($identifier);
- }
- else {
- $self->LoadByCol('Name', $identifier);
-
- }
-
- if (@_) {
- # Set the template Id to the passed in template
- my $template = shift;
-
- $self->{'Template'} = $template;
- }
- return ($self->Id, ($self->loc('[_1] ScripAction loaded', $self->Id)));
-}
-# }}}
-
-# {{{ sub LoadAction
-
-=head2 LoadAction HASH
-
- Takes a hash consisting of TicketObj and TransactionObj. Loads an RT::Action:: module.
-
-=cut
-
-sub LoadAction {
- my $self = shift;
- my %args = ( TransactionObj => undef,
- TicketObj => undef,
- @_ );
-
- $self->{_TicketObj} = $args{TicketObj};
-
- #TODO: Put this in an eval
- $self->ExecModule =~ /^(\w+)$/;
- my $module = $1;
- my $type = "RT::Action::". $module;
-
- eval "require $type" || die "Require of $type failed.\n$@\n";
-
- $self->{'Action'} = $type->new ( Argument => $self->Argument,
- CurrentUser => $self->CurrentUser,
- ScripActionObj => $self,
- ScripObj => $args{'ScripObj'},
- TemplateObj => $self->TemplateObj,
- TicketObj => $args{'TicketObj'},
- TransactionObj => $args{'TransactionObj'},
- );
-}
-# }}}
-
-# {{{ sub TemplateObj
-
-=head2 TemplateObj
-
-Return this action's template object
-
-TODO: Why are we not using the Scrip's template object?
-
-
-=cut
-
-sub TemplateObj {
- my $self = shift;
- return undef unless $self->{Template};
- if ( !$self->{'TemplateObj'} ) {
- $self->{'TemplateObj'} = RT::Template->new( $self->CurrentUser );
- $self->{'TemplateObj'}->LoadById( $self->{'Template'} );
-
- if ( ( $self->{'TemplateObj'}->__Value('Queue') == 0 )
- && $self->{'_TicketObj'} ) {
- my $tmptemplate = RT::Template->new( $self->CurrentUser );
- my ( $ok, $err ) = $tmptemplate->LoadQueueTemplate(
- Queue => $self->{'_TicketObj'}->QueueObj->id,
- Name => $self->{'TemplateObj'}->Name);
-
- if ( $tmptemplate->id ) {
- # found the queue-specific template with the same name
- $self->{'TemplateObj'} = $tmptemplate;
- }
- }
-
- }
-
- return ( $self->{'TemplateObj'} );
-}
-# }}}
-
-# The following methods call the action object
-
-# {{{ sub Prepare
-
-sub Prepare {
- my $self = shift;
- $self->{_Message_ID} = 0;
- return ($self->Action->Prepare());
-
-}
-# }}}
-
-# {{{ sub Commit
-sub Commit {
- my $self = shift;
- return($self->Action->Commit());
-
-
-}
-# }}}
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return ($self->Action->Describe());
-
-}
-# }}}
-
-=head2 Action
-
-Return the actual RT::Action object for this scrip.
-
-=cut
-
-sub Action {
- my $self = shift;
- return ($self->{'Action'});
-}
-
-# {{{ sub DESTROY
-sub DESTROY {
- my $self=shift;
- $self->{'_TicketObj'} = undef;
- $self->{'Action'} = undef;
- $self->{'TemplateObj'} = undef;
-}
-# }}}
-
-=head2 TODO
-
-Between this, RT::Scrip and RT::Action::*, we need to be able to get rid of a
-class. This just reeks of too much complexity -- jesse
-
-=cut
-
-1;
-
-
diff --git a/rt/lib/RT/ScripActions.pm b/rt/lib/RT/ScripActions.pm
deleted file mode 100755
index 614ff37..0000000
--- a/rt/lib/RT/ScripActions.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::ScripActions -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::ScripActions
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::ScripActions;
-
-use RT::SearchBuilder;
-use RT::ScripAction;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'ScripActions';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::ScripAction item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::ScripAction->new($self->CurrentUser));
-}
-
- eval "require RT::ScripActions_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripActions_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ScripActions_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripActions_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ScripActions_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripActions_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ScripActions_Overlay, RT::ScripActions_Vendor, RT::ScripActions_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ScripActions_Overlay.pm b/rt/lib/RT/ScripActions_Overlay.pm
deleted file mode 100644
index 9c29d4c..0000000
--- a/rt/lib/RT/ScripActions_Overlay.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::ScripActions - Collection of Action objects
-
-=head1 SYNOPSIS
-
- use RT::ScripActions;
-
-
-=head1 DESCRIPTION
-
-
-=begin testing
-
-ok (require RT::ScripActions);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-
-package RT::ScripActions;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = "ScripActions";
- $self->{'primary_key'} = "id";
- return ( $self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ sub LimitToType
-sub LimitToType {
- my $self = shift;
- my $type = shift;
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => "$type")
- if defined $type;
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => "Correspond")
- if $type eq "Create";
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => 'any');
-
-}
-# }}}
-
-# {{{ sub NewItem
-sub NewItem {
- my $self = shift;
- return(RT::ScripAction->new($self->CurrentUser));
-
-}
-# }}}
-
-
-1;
-
diff --git a/rt/lib/RT/ScripCondition.pm b/rt/lib/RT/ScripCondition.pm
deleted file mode 100755
index fe0aa2d..0000000
--- a/rt/lib/RT/ScripCondition.pm
+++ /dev/null
@@ -1,302 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::ScripCondition
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::ScripCondition;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('ScripConditions');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- varchar(60) 'ExecModule'.
- varchar(255) 'Argument'.
- varchar(60) 'ApplicableTransTypes'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Description => '',
- ExecModule => '',
- Argument => '',
- ApplicableTransTypes => '',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Description => $args{'Description'},
- ExecModule => $args{'ExecModule'},
- Argument => $args{'Argument'},
- ApplicableTransTypes => $args{'ApplicableTransTypes'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item ExecModule
-
-Returns the current value of ExecModule.
-(In the database, ExecModule is stored as varchar(60).)
-
-
-
-=item SetExecModule VALUE
-
-
-Set ExecModule to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ExecModule will be stored as a varchar(60).)
-
-
-=cut
-
-
-=item Argument
-
-Returns the current value of Argument.
-(In the database, Argument is stored as varchar(255).)
-
-
-
-=item SetArgument VALUE
-
-
-Set Argument to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Argument will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item ApplicableTransTypes
-
-Returns the current value of ApplicableTransTypes.
-(In the database, ApplicableTransTypes is stored as varchar(60).)
-
-
-
-=item SetApplicableTransTypes VALUE
-
-
-Set ApplicableTransTypes to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ApplicableTransTypes will be stored as a varchar(60).)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- ExecModule =>
- {read => 1, write => 1, type => 'varchar(60)', default => ''},
- Argument =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- ApplicableTransTypes =>
- {read => 1, write => 1, type => 'varchar(60)', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::ScripCondition_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripCondition_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ScripCondition_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripCondition_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ScripCondition_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripCondition_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ScripCondition_Overlay, RT::ScripCondition_Vendor, RT::ScripCondition_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ScripCondition_Overlay.pm b/rt/lib/RT/ScripCondition_Overlay.pm
deleted file mode 100644
index 4424657..0000000
--- a/rt/lib/RT/ScripCondition_Overlay.pm
+++ /dev/null
@@ -1,237 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::ScripCondition - RT scrip conditional
-
-=head1 SYNOPSIS
-
- use RT::ScripCondition;
-
-
-=head1 DESCRIPTION
-
-This module should never be called directly by client code. it's an internal module which
-should only be accessed through exported APIs in other modules.
-
-
-=begin testing
-
-ok (require RT::ScripCondition);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-
-package RT::ScripCondition;
-
-use strict;
-no warnings qw(redefine);
-
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = "ScripConditions";
- return ($self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ sub _Accessible
-sub _Accessible {
- my $self = shift;
- my %Cols = ( Name => 'read',
- Description => 'read',
- ApplicableTransTypes => 'read',
- ExecModule => 'read',
- Argument => 'read',
- Creator => 'read/auto',
- Created => 'read/auto',
- LastUpdatedBy => 'read/auto',
- LastUpdated => 'read/auto'
- );
- return($self->SUPER::_Accessible(@_, %Cols));
-}
-# }}}
-
-# {{{ sub Create
-
-=head2 Create
-
- Takes a hash. Creates a new Condition entry.
- should be better documented.
-
-=cut
-
-sub Create {
- my $self = shift;
- return($self->SUPER::Create(@_));
-}
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete
-
-No API available for deleting things just yet.
-
-=cut
-
-sub Delete {
- my $self = shift;
- return(0, $self->loc('Unimplemented'));
-}
-# }}}
-
-# {{{ sub Load
-
-=head2 Load IDENTIFIER
-
-Loads a condition takes a name or ScripCondition id.
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift;
-
- unless (defined $identifier) {
- return (undef);
- }
-
- if ($identifier !~ /\D/) {
- return ($self->SUPER::LoadById($identifier));
- }
- else {
- return ($self->LoadByCol('Name', $identifier));
- }
-}
-# }}}
-
-# {{{ sub LoadCondition
-
-=head2 LoadCondition HASH
-
-takes a hash which has the following elements: TransactionObj and TicketObj.
-Loads the Condition module in question.
-
-=cut
-
-
-sub LoadCondition {
- my $self = shift;
- my %args = ( TransactionObj => undef,
- TicketObj => undef,
- @_ );
-
- #TODO: Put this in an eval
- $self->ExecModule =~ /^(\w+)$/;
- my $module = $1;
- my $type = "RT::Condition::". $module;
-
- eval "require $type" || die "Require of $type failed.\n$@\n";
-
- $self->{'Condition'} = $type->new ( 'ScripConditionObj' => $self,
- 'TicketObj' => $args{'TicketObj'},
- 'ScripObj' => $args{'ScripObj'},
- 'TransactionObj' => $args{'TransactionObj'},
- 'Argument' => $self->Argument,
- 'ApplicableTransTypes' => $self->ApplicableTransTypes,
- CurrentUser => $self->CurrentUser
- );
-}
-# }}}
-
-# {{{ The following methods call the Condition object
-
-
-# {{{ sub Describe
-
-=head2 Describe
-
-Helper method to call the condition module\'s Describe method.
-
-=cut
-
-sub Describe {
- my $self = shift;
- return ($self->{'Condition'}->Describe());
-
-}
-# }}}
-
-# {{{ sub IsApplicable
-
-=head2 IsApplicable
-
-Helper method to call the condition module\'s IsApplicable method.
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- return ($self->{'Condition'}->IsApplicable());
-
-}
-# }}}
-
-# }}}
-
-# {{{ sub DESTROY
-sub DESTROY {
- my $self=shift;
- $self->{'Condition'} = undef;
-}
-# }}}
-
-
-1;
-
-
diff --git a/rt/lib/RT/ScripConditions.pm b/rt/lib/RT/ScripConditions.pm
deleted file mode 100755
index 34f788d..0000000
--- a/rt/lib/RT/ScripConditions.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::ScripConditions -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::ScripConditions
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::ScripConditions;
-
-use RT::SearchBuilder;
-use RT::ScripCondition;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'ScripConditions';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::ScripCondition item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::ScripCondition->new($self->CurrentUser));
-}
-
- eval "require RT::ScripConditions_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripConditions_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::ScripConditions_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripConditions_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::ScripConditions_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/ScripConditions_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::ScripConditions_Overlay, RT::ScripConditions_Vendor, RT::ScripConditions_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/ScripConditions_Overlay.pm b/rt/lib/RT/ScripConditions_Overlay.pm
deleted file mode 100644
index 7670d58..0000000
--- a/rt/lib/RT/ScripConditions_Overlay.pm
+++ /dev/null
@@ -1,113 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::ScripConditions - Collection of Action objects
-
-=head1 SYNOPSIS
-
- use RT::ScripConditions;
-
-
-=head1 DESCRIPTION
-
-
-
-=begin testing
-
-ok (require RT::ScripConditions);
-
-=end testing
-
-=head1 METHODS
-
-=cut
-
-
-package RT::ScripConditions;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = "ScripConditions";
- $self->{'primary_key'} = "id";
- return ( $self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ sub LimitToType
-sub LimitToType {
- my $self = shift;
- my $type = shift;
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => "$type")
- if defined $type;
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => "Correspond")
- if $type eq "Create";
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Type',
- VALUE => 'any');
-
-}
-# }}}
-
-# {{{ sub NewItem
-sub NewItem {
- my $self = shift;
- return(RT::ScripCondition->new($self->CurrentUser));
-}
-# }}}
-
-
-1;
-
diff --git a/rt/lib/RT/Scrip_Overlay.pm b/rt/lib/RT/Scrip_Overlay.pm
deleted file mode 100644
index ae2782a..0000000
--- a/rt/lib/RT/Scrip_Overlay.pm
+++ /dev/null
@@ -1,616 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Scrip - an RT Scrip object
-
-=head1 SYNOPSIS
-
- use RT::Scrip;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok (require RT::Scrip);
-
-
-my $q = RT::Queue->new($RT::SystemUser);
-$q->Create(Name => 'ScripTest');
-ok($q->Id, "Created a scriptest queue");
-
-my $s1 = RT::Scrip->new($RT::SystemUser);
-my ($val, $msg) =$s1->Create( Queue => $q->Id,
- ScripAction => 'User Defined',
- ScripCondition => 'User Defined',
- CustomIsApplicableCode => 'if ($self->TicketObj->Subject =~ /fire/) { return (1);} else { return(0)}',
- CustomPrepareCode => 'return 1',
- CustomCommitCode => '$self->TicketObj->SetPriority("87");',
- Template => 'Blank'
- );
-ok($val,$msg);
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($tv,$ttv,$tm) = $ticket->Create(Queue => $q->Id,
- Subject => "hair on fire",
- );
-ok($tv, $tm);
-
-ok ($ticket->Priority == '87', "Ticket priority is set right");
-
-
-my $ticket2 = RT::Ticket->new($RT::SystemUser);
-my ($t2v,$t2tv,$t2m) = $ticket2->Create(Queue => $q->Id,
- Subject => "hair in water",
- );
-ok($t2v, $t2m);
-
-ok ($ticket2->Priority != '87', "Ticket priority is set right");
-
-
-=end testing
-
-=cut
-
-
-package RT::Scrip;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub Create
-
-=head2 Create
-
-Creates a new entry in the Scrips table. Takes a paramhash with:
-
- Queue => 0,
- Description => undef,
- Template => undef,
- ScripAction => undef,
- ScripCondition => undef,
- CustomPrepareCode => undef,
- CustomCommitCode => undef,
- CustomIsApplicableCode => undef,
-
-
-
-
-Returns (retval, msg);
-retval is 0 for failure or scrip id. msg is a textual description of what happened.
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = (
- Queue => 0,
- Template => 0, # name or id
- ScripAction => 0, # name or id
- ScripCondition => 0, # name or id
- Stage => 'TransactionCreate',
- Description => undef,
- CustomPrepareCode => undef,
- CustomCommitCode => undef,
- CustomIsApplicableCode => undef,
-
- @_ );
-
- if ( !$args{'Queue'} ) {
- unless ( $self->CurrentUser->HasRight( Object => $RT::System,
- Right => 'ModifyScrips' )
- ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- $args{'Queue'} = 0; # avoid undef sneaking in
- }
- else {
- my $QueueObj = new RT::Queue( $self->CurrentUser );
- $QueueObj->Load( $args{'Queue'} );
- unless ( $QueueObj->id() ) {
- return ( 0, $self->loc('Invalid queue') );
- }
- unless ( $QueueObj->CurrentUserHasRight('ModifyScrips') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- $args{'Queue'} = $QueueObj->id();
- }
-
- #TODO +++ validate input
-
- require RT::ScripAction;
- my $action = new RT::ScripAction( $self->CurrentUser );
- if ( $args{'ScripAction'} ) {
- $action->Load( $args{'ScripAction'} );
- }
- return ( 0, $self->loc( "Action [_1] not found", $args{'ScripAction'} ) )
- unless $action->Id;
-
- require RT::Template;
- my $template = new RT::Template( $self->CurrentUser );
- if ( $args{'Template'} ) {
- $template->Load( $args{'Template'} );
- }
- return ( 0, $self->loc('Template not found') ) unless $template->Id;
-
- require RT::ScripCondition;
- my $condition = new RT::ScripCondition( $self->CurrentUser );
- if ( $args{'ScripCondition'} ) {
- $condition->Load( $args{'ScripCondition'} );
- }
- unless ( $condition->Id ) {
- return ( 0, $self->loc('Condition not found') );
- }
-
- my ( $id, $msg ) = $self->SUPER::Create(
- Queue => $args{'Queue'},
- Template => $template->Id,
- ScripCondition => $condition->id,
- Stage => $args{'Stage'},
- ScripAction => $action->Id,
- Description => $args{'Description'},
- CustomPrepareCode => $args{'CustomPrepareCode'},
- CustomCommitCode => $args{'CustomCommitCode'},
- CustomIsApplicableCode => $args{'CustomIsApplicableCode'},
-
- );
- if ($id) {
- return ( $id, $self->loc('Scrip Created') );
- }
- else {
- return ( $id, $msg );
- }
-}
-
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete
-
-Delete this object
-
-=cut
-
-sub Delete {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ModifyScrips') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
-
- return ( $self->SUPER::Delete(@_) );
-}
-
-# }}}
-
-# {{{ sub QueueObj
-
-=head2 QueueObj
-
-Retuns an RT::Queue object with this Scrip\'s queue
-
-=cut
-
-sub QueueObj {
- my $self = shift;
-
- if ( !$self->{'QueueObj'} ) {
- require RT::Queue;
- $self->{'QueueObj'} = RT::Queue->new( $self->CurrentUser );
- $self->{'QueueObj'}->Load( $self->__Value('Queue') );
- }
- return ( $self->{'QueueObj'} );
-}
-
-# }}}
-
-# {{{ sub ActionObj
-
-=head2 ActionObj
-
-Retuns an RT::Action object with this Scrip\'s Action
-
-=cut
-
-sub ActionObj {
- my $self = shift;
-
- unless ( defined $self->{'ScripActionObj'} ) {
- require RT::ScripAction;
-
- $self->{'ScripActionObj'} = RT::ScripAction->new( $self->CurrentUser );
-
- #TODO: why are we loading Actions with templates like this.
- # two separate methods might make more sense
- $self->{'ScripActionObj'}->Load( $self->ScripAction, $self->Template );
- }
- return ( $self->{'ScripActionObj'} );
-}
-
-# }}}
-
-# {{{ sub ConditionObj
-
-=head2 ConditionObj
-
-Retuns an RT::ScripCondition object with this Scrip's IsApplicable
-
-=cut
-
-sub ConditionObj {
- my $self = shift;
-
- unless ( defined $self->{'ScripConditionObj'} ) {
- require RT::ScripCondition;
- $self->{'ScripConditionObj'} =
- RT::ScripCondition->new( $self->CurrentUser );
- if ( $self->ScripCondition ) {
- $self->{'ScripConditionObj'}->Load( $self->ScripCondition );
- }
- }
- return ( $self->{'ScripConditionObj'} );
-}
-
-# }}}
-
-# {{{ sub TemplateObj
-
-=head2 TemplateObj
-
-Retuns an RT::Template object with this Scrip\'s Template
-
-=cut
-
-sub TemplateObj {
- my $self = shift;
-
- unless ( defined $self->{'TemplateObj'} ) {
- require RT::Template;
- $self->{'TemplateObj'} = RT::Template->new( $self->CurrentUser );
- $self->{'TemplateObj'}->Load( $self->Template );
- }
- return ( $self->{'TemplateObj'} );
-}
-
-# }}}
-
-# {{{ Dealing with this instance of a scrip
-
-# {{{ sub Apply
-
-=head2 Apply { TicketObj => undef, TransactionObj => undef}
-
-This method instantiates the ScripCondition and ScripAction objects for a
-single execution of this scrip. it then calls the IsApplicable method of the
-ScripCondition.
-If that succeeds, it calls the Prepare method of the
-ScripAction. If that succeeds, it calls the Commit method of the ScripAction.
-
-Usually, the ticket and transaction objects passed to this method
-should be loaded by the SuperUser role
-
-=cut
-
-
-# XXX TODO : This code appears to be obsoleted in favor of similar code in Scrips->Apply.
-# Why is this here? Is it still called?
-
-sub Apply {
- my $self = shift;
- my %args = ( TicketObj => undef,
- TransactionObj => undef,
- @_ );
-
- $RT::Logger->debug("Now applying scrip ".$self->Id . " for transaction ".$args{'TransactionObj'}->id);
-
- my $ApplicableTransactionObj = $self->IsApplicable( TicketObj => $args{'TicketObj'},
- TransactionObj => $args{'TransactionObj'} );
- unless ( $ApplicableTransactionObj ) {
- return undef;
- }
-
- if ( $ApplicableTransactionObj->id != $args{'TransactionObj'}->id ) {
- $RT::Logger->debug("Found an applicable transaction ".$ApplicableTransactionObj->Id . " in the same batch with transaction ".$args{'TransactionObj'}->id);
- }
-
- #If it's applicable, prepare and commit it
- $RT::Logger->debug("Now preparing scrip ".$self->Id . " for transaction ".$ApplicableTransactionObj->id);
- unless ( $self->Prepare( TicketObj => $args{'TicketObj'},
- TransactionObj => $ApplicableTransactionObj )
- ) {
- return undef;
- }
-
- $RT::Logger->debug("Now commiting scrip ".$self->Id . " for transaction ".$ApplicableTransactionObj->id);
- unless ( $self->Commit( TicketObj => $args{'TicketObj'},
- TransactionObj => $ApplicableTransactionObj)
- ) {
- return undef;
- }
-
- $RT::Logger->debug("We actually finished scrip ".$self->Id . " for transaction ".$ApplicableTransactionObj->id);
- return (1);
-
-}
-
-# }}}
-
-# {{{ sub IsApplicable
-
-=head2 IsApplicable
-
-Calls the Condition object\'s IsApplicable method
-
-Upon success, returns the applicable Transaction object.
-Otherwise, undef is returned.
-
-If the Scrip is in the TransactionCreate Stage (the usual case), only test
-the associated Transaction object to see if it is applicable.
-
-For Scrips in the TransactionBatch Stage, test all Transaction objects
-created during the Ticket object's lifetime, and returns the first one
-that is applicable.
-
-=cut
-
-sub IsApplicable {
- my $self = shift;
- my %args = ( TicketObj => undef,
- TransactionObj => undef,
- @_ );
-
- my $return;
- eval {
-
- my @Transactions;
-
- if ( $self->Stage eq 'TransactionCreate') {
- # Only look at our current Transaction
- @Transactions = ( $args{'TransactionObj'} );
- }
- elsif ( $self->Stage eq 'TransactionBatch') {
- # Look at all Transactions in this Batch
- @Transactions = @{ $args{'TicketObj'}->TransactionBatch || [] };
- }
- else {
- $RT::Logger->error( "Unknown Scrip stage:" . $self->Stage );
- return (undef);
- }
- my $ConditionObj = $self->ConditionObj;
- foreach my $TransactionObj ( @Transactions ) {
- # in TxnBatch stage we can select scrips that are not applicable to all txns
- my $txn_type = $TransactionObj->Type;
- next unless( $ConditionObj->ApplicableTransTypes =~ /(?:^|,)(?:Any|\Q$txn_type\E)(?:,|$)/i );
- # Load the scrip's Condition object
- $ConditionObj->LoadCondition(
- ScripObj => $self,
- TicketObj => $args{'TicketObj'},
- TransactionObj => $TransactionObj,
- );
-
- if ( $ConditionObj->IsApplicable() ) {
- # We found an application Transaction -- return it
- $return = $TransactionObj;
- last;
- }
- }
- };
- if ($@) {
- $RT::Logger->error( "Scrip IsApplicable " . $self->Id . " died. - " . $@ );
- return (undef);
- }
-
- return ($return);
-
-}
-
-# }}}
-
-# {{{ SUb Prepare
-
-=head2 Prepare
-
-Calls the action object's prepare method
-
-=cut
-
-sub Prepare {
- my $self = shift;
- my %args = ( TicketObj => undef,
- TransactionObj => undef,
- @_ );
-
- my $return;
- eval {
- $self->ActionObj->LoadAction( ScripObj => $self,
- TicketObj => $args{'TicketObj'},
- TransactionObj => $args{'TransactionObj'},
- );
-
- $return = $self->ActionObj->Prepare();
- };
- if ($@) {
- $RT::Logger->error( "Scrip Prepare " . $self->Id . " died. - " . $@ );
- return (undef);
- }
- unless ($return) {
- }
- return ($return);
-}
-
-# }}}
-
-# {{{ sub Commit
-
-=head2 Commit
-
-Calls the action object's commit method
-
-=cut
-
-sub Commit {
- my $self = shift;
- my %args = ( TicketObj => undef,
- TransactionObj => undef,
- @_ );
-
- my $return;
- eval {
- $return = $self->ActionObj->Commit();
- };
-
-#Searchbuilder caching isn't perfectly coherent. got to reload the ticket object, since it
-# may have changed
- $args{'TicketObj'}->Load( $args{'TicketObj'}->Id );
-
- if ($@) {
- $RT::Logger->error( "Scrip Commit " . $self->Id . " died. - " . $@ );
- return (undef);
- }
-
- # Not destroying or weakening hte Action and Condition here could cause a
- # leak
-
- return ($return);
-}
-
-# }}}
-
-# }}}
-
-# {{{ ACL related methods
-
-# {{{ sub _Set
-
-# does an acl check and then passes off the call
-sub _Set {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ModifyScrips') ) {
- $RT::Logger->debug(
- "CurrentUser can't modify Scrips for " . $self->Queue . "\n" );
- return ( 0, $self->loc('Permission Denied') );
- }
- return $self->__Set(@_);
-}
-
-# }}}
-
-# {{{ sub _Value
-# does an acl check and then passes off the call
-sub _Value {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ShowScrips') ) {
- $RT::Logger->debug( "CurrentUser can't modify Scrips for "
- . $self->__Value('Queue')
- . "\n" );
- return (undef);
- }
-
- return $self->__Value(@_);
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight
-
-Helper menthod for HasRight. Presets Principal to CurrentUser then
-calls HasRight.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
- return ( $self->HasRight( Principal => $self->CurrentUser->UserObj,
- Right => $right ) );
-
-}
-
-# }}}
-
-# {{{ sub HasRight
-
-=head2 HasRight
-
-Takes a param-hash consisting of "Right" and "Principal" Principal is
-an RT::User object or an RT::CurrentUser object. "Right" is a textual
-Right string that applies to Scrips.
-
-=cut
-
-sub HasRight {
- my $self = shift;
- my %args = ( Right => undef,
- Principal => undef,
- @_ );
-
- if ( ( defined $self->SUPER::_Value('Queue') )
- and ( $self->SUPER::_Value('Queue') != 0 ) ) {
- return ( $args{'Principal'}->HasRight( Right => $args{'Right'},
- Object => $self->QueueObj ) );
-
- }
- else {
- return ( $args{'Principal'}
- ->HasRight( Object => $RT::System, Right => $args{'Right'} ) );
- }
-}
-
-# }}}
-
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/Scrips.pm b/rt/lib/RT/Scrips.pm
deleted file mode 100755
index a394431..0000000
--- a/rt/lib/RT/Scrips.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Scrips -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Scrips
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Scrips;
-
-use RT::SearchBuilder;
-use RT::Scrip;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Scrips';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Scrip item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Scrip->new($self->CurrentUser));
-}
-
- eval "require RT::Scrips_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrips_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Scrips_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrips_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Scrips_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Scrips_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Scrips_Overlay, RT::Scrips_Vendor, RT::Scrips_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Scrips_Overlay.pm b/rt/lib/RT/Scrips_Overlay.pm
deleted file mode 100644
index 0f606c8..0000000
--- a/rt/lib/RT/Scrips_Overlay.pm
+++ /dev/null
@@ -1,362 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Scrips - a collection of RT Scrip objects
-
-=head1 SYNOPSIS
-
- use RT::Scrips;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Scrips);
-
-=end testing
-
-=cut
-
-
-package RT::Scrips;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub LimitToQueue
-
-=head2 LimitToQueue
-
-Takes a queue id (numerical) as its only argument. Makes sure that
-Scopes it pulls out apply to this queue (or another that you've selected with
-another call to this method
-
-=cut
-
-sub LimitToQueue {
- my $self = shift;
- my $queue = shift;
-
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Queue',
- VALUE => "$queue")
- if defined $queue;
-
-}
-# }}}
-
-# {{{ sub LimitToGlobal
-
-=head2 LimitToGlobal
-
-Makes sure that
-Scopes it pulls out apply to all queues (or another that you've selected with
-another call to this method or LimitToQueue
-
-=cut
-
-
-sub LimitToGlobal {
- my $self = shift;
-
- $self->Limit (ENTRYAGGREGATOR => 'OR',
- FIELD => 'Queue',
- VALUE => 0);
-
-}
-# }}}
-
-# {{{ sub NewItem
-sub NewItem {
- my $self = shift;
-
- return(new RT::Scrip($self->CurrentUser));
-}
-# }}}
-
-# {{{ sub Next
-
-=head2 Next
-
-Returns the next scrip that this user can see.
-
-=cut
-
-sub Next {
- my $self = shift;
-
-
- my $Scrip = $self->SUPER::Next();
- if ((defined($Scrip)) and (ref($Scrip))) {
-
- if ($Scrip->CurrentUserHasRight('ShowScrips')) {
- return($Scrip);
- }
-
- #If the user doesn't have the right to show this scrip
- else {
- return($self->Next());
- }
- }
- #if there never was any scrip
- else {
- return(undef);
- }
-
-}
-# }}}
-
-=head2 Apply
-
-Run through the relevant scrips.
-
-=cut
-
-sub Apply {
- my $self = shift;
-
- my %args = ( TicketObj => undef,
- Ticket => undef,
- Transaction => undef,
- TransactionObj => undef,
- Stage => undef,
- Type => undef,
- @_ );
-
- $self->Prepare(%args);
- $self->Commit();
-
-}
-
-=head2 Commit
-
-Commit all of this object's prepared scrips
-
-=cut
-
-sub Commit {
- my $self = shift;
-
-
- foreach my $scrip (@{$self->Prepared}) {
-
- $scrip->Commit( TicketObj => $self->{'TicketObj'},
- TransactionObj => $self->{'TransactionObj'} );
- }
-}
-
-
-=head2 Prepare
-
-Only prepare the scrips, returning an array of the scrips we're interested in
-in order of preparation, not execution
-
-=cut
-
-sub Prepare {
- my $self = shift;
- my %args = ( TicketObj => undef,
- Ticket => undef,
- Transaction => undef,
- TransactionObj => undef,
- Stage => undef,
- Type => undef,
- @_ );
-
- #We're really going to need a non-acled ticket for the scrips to work
- $self->_SetupSourceObjects( TicketObj => $args{'TicketObj'},
- Ticket => $args{'Ticket'},
- TransactionObj => $args{'TransactionObj'},
- Transaction => $args{'Transaction'} );
-
-
- $self->_FindScrips( Stage => $args{'Stage'}, Type => $args{'Type'} );
-
-
- #Iterate through each script and check it's applicability.
- while ( my $scrip = $self->Next() ) {
-
- next
- unless ( $scrip->IsApplicable(
- TicketObj => $self->{'TicketObj'},
- TransactionObj => $self->{'TransactionObj'}
- ) );
-
- #If it's applicable, prepare and commit it
- next
- unless ( $scrip->Prepare( TicketObj => $self->{'TicketObj'},
- TransactionObj => $self->{'TransactionObj'}
- ) );
- push @{$self->{'prepared_scrips'}}, $scrip;
-
- }
-
- return (@{$self->Prepared});
-
-};
-
-=head2 Prepared
-
-Returns an arrayref of the scrips this object has prepared
-
-
-=cut
-
-sub Prepared {
- my $self = shift;
- return ($self->{'prepared_scrips'} || []);
-}
-
-
-# {{{ sup _SetupSourceObjects
-
-=head2 _SetupSourceObjects { TicketObj , Ticket, Transaction, TransactionObj }
-
-Setup a ticket and transaction for this Scrip collection to work with as it runs through the
-relevant scrips. (Also to figure out which scrips apply)
-
-Returns: nothing
-
-=cut
-
-
-sub _SetupSourceObjects {
-
- my $self = shift;
- my %args = (
- TicketObj => undef,
- Ticket => undef,
- Transaction => undef,
- TransactionObj => undef,
- @_ );
-
- if ( ( $self->{'TicketObj'} = $args{'TicketObj'} ) ) {
- $self->{'TicketObj'}->CurrentUser( $self->CurrentUser );
- }
- else {
- $self->{'TicketObj'} = RT::Ticket->new( $self->CurrentUser );
- $self->{'TicketObj'}->Load( $args{'Ticket'} )
- || $RT::Logger->err("$self couldn't load ticket $args{'Ticket'}\n");
- }
-
- if ( ( $self->{'TransactionObj'} = $args{'TransactionObj'} ) ) {
- $self->{'TransactionObj'}->CurrentUser( $self->CurrentUser );
- }
- else {
- $self->{'TransactionObj'} = RT::Transaction->new( $self->CurrentUser );
- $self->{'TransactionObj'}->Load( $args{'Transaction'} )
- || $RT::Logger->err( "$self couldn't load transaction $args{'Transaction'}\n");
- }
-}
-
-# }}}
-
-# {{{ sub _FindScrips;
-
-=head2 _FindScrips
-
-Find only the apropriate scrips for whatever we're doing now
-
-=cut
-
-sub _FindScrips {
- my $self = shift;
- my %args = (
- Stage => undef,
- Type => undef,
- @_ );
-
-
- $self->LimitToQueue( $self->{'TicketObj'}->QueueObj->Id )
- ; #Limit it to $Ticket->QueueObj->Id
- $self->LimitToGlobal();
- # or to "global"
-
- $self->Limit( FIELD => "Stage", VALUE => $args{'Stage'} );
-
- my $ConditionsAlias = $self->NewAlias('ScripConditions');
-
- $self->Join(
- ALIAS1 => 'main',
- FIELD1 => 'ScripCondition',
- ALIAS2 => $ConditionsAlias,
- FIELD2 => 'id'
- );
-
- #We only want things where the scrip applies to this sort of transaction
- # TransactionBatch stage can define list of transaction
- foreach( split /\s*,\s*/, ($args{'Type'} || '') ) {
- $self->Limit(
- ALIAS => $ConditionsAlias,
- FIELD => 'ApplicableTransTypes',
- OPERATOR => 'LIKE',
- VALUE => $_,
- ENTRYAGGREGATOR => 'OR',
- )
- }
-
- # Or where the scrip applies to any transaction
- $self->Limit(
- ALIAS => $ConditionsAlias,
- FIELD => 'ApplicableTransTypes',
- OPERATOR => 'LIKE',
- VALUE => "Any",
- ENTRYAGGREGATOR => 'OR',
- );
-
- $RT::Logger->debug("Found ".$self->Count. " scrips");
-}
-
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/Search/ActiveTicketsInQueue.pm b/rt/lib/RT/Search/ActiveTicketsInQueue.pm
deleted file mode 100644
index 9f9dac7..0000000
--- a/rt/lib/RT/Search/ActiveTicketsInQueue.pm
+++ /dev/null
@@ -1,101 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Search::ActiveTicketsInQueue
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-Find all active tickets in the queue named in the argument passed in
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Search::Generic);
-
-=end testing
-
-
-=cut
-
-package RT::Search::ActiveTicketsInQueue;
-
-use strict;
-use base qw(RT::Search::Generic);
-
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return ($self->loc("No description for [_1]", ref $self));
-}
-# }}}
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
-
- $self->TicketsObj->LimitQueue(VALUE => $self->Argument);
-
- foreach my $status (RT::Queue->ActiveStatusArray()) {
- $self->TicketsObj->LimitStatus(VALUE => $status);
- }
-
- return(1);
-}
-# }}}
-
-eval "require RT::Search::ActiveTicketsInQueue_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/ActiveTicketsInQueue_Vendor.pm});
-eval "require RT::Search::ActiveTicketsInQueue_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/ActiveTicketsInQueue_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Search/FromSQL.pm b/rt/lib/RT/Search/FromSQL.pm
deleted file mode 100644
index 3842bb6..0000000
--- a/rt/lib/RT/Search/FromSQL.pm
+++ /dev/null
@@ -1,109 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Search::FromSQL
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-Find all tickets described by the SQL statement passed as an argument
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Search::Generic);
-
-=end testing
-
-
-=cut
-
-package RT::Search::FromSQL;
-
-use strict;
-use base qw(RT::Search::Generic);
-
-=head2 Describe
-
-Returns a localized string describing the module's function.
-
-=cut
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return ($self->loc("TicketSQL search module", ref $self));
-}
-# }}}
-
-=head2 Prepare
-
-The meat of the module. Runs a search on its Tickets object, using
-the SQL string described in its Argument object. The Tickets object
-is reduced to those tickets matching the SQL query.
-
-=cut
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
-
- $self->TicketsObj->FromSQL($self->Argument);
- return(1);
-}
-# }}}
-
-eval "require RT::Search::FromSQL_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/FromSQL_Vendor.pm});
-eval "require RT::Search::FromSQL_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/FromSQL_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Search/Generic.pm b/rt/lib/RT/Search/Generic.pm
deleted file mode 100644
index 3f3aa83..0000000
--- a/rt/lib/RT/Search/Generic.pm
+++ /dev/null
@@ -1,151 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Search::Generic - ;
-
-=head1 SYNOPSIS
-
- use RT::Search::Generic;
- my $tickets = RT::Tickets->new($CurrentUser);
- my $foo = RT::Search::Generic->new(Argument => $arg,
- TicketsObj => $tickets);
- $foo->Prepare();
- while ( my $ticket = $foo->Next ) {
- # Do something with each ticket we've found
- }
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::Search::Generic);
-
-=end testing
-
-
-=cut
-
-package RT::Search::Generic;
-
-use strict;
-
-# {{{ sub new
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->_Init(@_);
- return $self;
-}
-# }}}
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- my %args = (
- TicketsObj => undef,
- Argument => undef,
- @_ );
-
- $self->{'TicketsObj'} = $args{'TicketsObj'};
- $self->{'Argument'} = $args{'Argument'};
-}
-# }}}
-
-# {{{ sub Argument
-
-=head2 Argument
-
-Return the optional argument associated with this Search
-
-=cut
-
-sub Argument {
- my $self = shift;
- return($self->{'Argument'});
-}
-# }}}
-
-
-=head2 TicketsObj
-
-Return the Tickets object passed into this search
-
-=cut
-
-sub TicketsObj {
- my $self = shift;
- return($self->{'TicketsObj'});
-}
-
-# {{{ sub Describe
-sub Describe {
- my $self = shift;
- return ($self->loc("No description for [_1]", ref $self));
-}
-# }}}
-
-# {{{ sub Prepare
-sub Prepare {
- my $self = shift;
- return(1);
-}
-# }}}
-
-eval "require RT::Search::Generic_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/Generic_Vendor.pm});
-eval "require RT::Search::Generic_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/Search/Generic_Local.pm});
-
-1;
diff --git a/rt/lib/RT/SearchBuilder.pm b/rt/lib/RT/SearchBuilder.pm
deleted file mode 100644
index 3de9fc2..0000000
--- a/rt/lib/RT/SearchBuilder.pm
+++ /dev/null
@@ -1,388 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::SearchBuilder - a baseclass for RT collection objects
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-
-=begin testing
-
-ok (require RT::SearchBuilder);
-
-=end testing
-
-
-=cut
-
-package RT::SearchBuilder;
-
-use RT::Base;
-use DBIx::SearchBuilder;
-
-use strict;
-use vars qw(@ISA);
-@ISA = qw(DBIx::SearchBuilder RT::Base);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
-
- $self->{'user'} = shift;
- unless(defined($self->CurrentUser)) {
- use Carp;
- Carp::confess("$self was created without a CurrentUser");
- $RT::Logger->err("$self was created without a CurrentUser");
- return(0);
- }
- $self->SUPER::_Init( 'Handle' => $RT::Handle);
-}
-# }}}
-
-# {{{ sub LimitToEnabled
-
-=head2 LimitToEnabled
-
-Only find items that haven\'t been disabled
-
-=cut
-
-sub LimitToEnabled {
- my $self = shift;
-
- $self->Limit( FIELD => 'Disabled',
- VALUE => '0',
- OPERATOR => '=' );
-}
-# }}}
-
-# {{{ sub LimitToDisabled
-
-=head2 LimitToDeleted
-
-Only find items that have been deleted.
-
-=cut
-
-sub LimitToDeleted {
- my $self = shift;
-
- $self->{'find_disabled_rows'} = 1;
- $self->Limit( FIELD => 'Disabled',
- OPERATOR => '=',
- VALUE => '1'
- );
-}
-# }}}
-
-# {{{ sub LimitAttribute
-
-=head2 LimitAttribute PARAMHASH
-
-Takes NAME, OPERATOR and VALUE to find records that has the
-matching Attribute.
-
-If EMPTY is set, also select rows with an empty string as
-Attribute's Content.
-
-If NULL is set, also select rows without the named Attribute.
-
-=cut
-
-my %Negate = qw(
- = !=
- != =
- > <=
- < >=
- >= <
- <= >
- LIKE NOT LIKE
- NOT LIKE LIKE
- IS IS NOT
- IS NOT IS
-);
-
-sub LimitAttribute {
- my ($self, %args) = @_;
- my $clause = 'ALIAS';
- my $operator = ($args{OPERATOR} || '=');
-
- if ($args{NULL} and exists $args{VALUE}) {
- $clause = 'LEFTJOIN';
- $operator = $Negate{$operator};
- }
- elsif ($args{NEGATE}) {
- $operator = $Negate{$operator};
- }
-
- my $alias = $self->Join(
- TYPE => 'left',
- ALIAS1 => $args{ALIAS} || 'main',
- FIELD1 => 'id',
- TABLE2 => 'Attributes',
- FIELD2 => 'ObjectId'
- );
-
- my $type = ref($self);
- $type =~ s/(?:s|Collection)$//; # XXX - Hack!
-
- $self->Limit(
- $clause => $alias,
- FIELD => 'ObjectType',
- OPERATOR => '=',
- VALUE => $type,
- );
- $self->Limit(
- $clause => $alias,
- FIELD => 'Name',
- OPERATOR => '=',
- VALUE => $args{NAME},
- ) if exists $args{NAME};
-
- return unless exists $args{VALUE};
-
- $self->Limit(
- $clause => $alias,
- FIELD => 'Content',
- OPERATOR => $operator,
- VALUE => $args{VALUE},
- );
-
- # Capture rows with the attribute defined as an empty string.
- $self->Limit(
- $clause => $alias,
- FIELD => 'Content',
- OPERATOR => '=',
- VALUE => '',
- ENTRYAGGREGATOR => $args{NULL} ? 'AND' : 'OR',
- ) if $args{EMPTY};
-
- # Capture rows without the attribute defined
- $self->Limit(
- %args,
- ALIAS => $alias,
- FIELD => 'id',
- OPERATOR => ($args{NEGATE} ? 'IS NOT' : 'IS'),
- VALUE => 'NULL',
- ) if $args{NULL};
-}
-# }}}
-
-# {{{ sub LimitCustomField
-
-=head2 LimitCustomField
-
-Takes a paramhash of key/value pairs with the following keys:
-
-=over 4
-
-=item CUSTOMFIELD - CustomField id. Optional
-
-=item OPERATOR - The usual Limit operators
-
-=item VALUE - The value to compare against
-
-=back
-
-=cut
-
-sub _SingularClass {
- my $self = shift;
- my $class = ref($self);
- $class =~ s/s$// or die "Cannot deduce SingularClass for $class";
- return $class;
-}
-
-sub LimitCustomField {
- my $self = shift;
- my %args = ( VALUE => undef,
- CUSTOMFIELD => undef,
- OPERATOR => '=',
- @_ );
-
- my $alias = $self->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'ObjectCustomFieldValues',
- FIELD2 => 'ObjectId'
- );
- $self->Limit(
- ALIAS => $alias,
- FIELD => 'CustomField',
- OPERATOR => '=',
- VALUE => $args{'CUSTOMFIELD'},
- ) if ($args{'CUSTOMFIELD'});
- $self->Limit(
- ALIAS => $alias,
- FIELD => 'ObjectType',
- OPERATOR => '=',
- VALUE => $self->_SingularClass,
- );
- $self->Limit(
- ALIAS => $alias,
- FIELD => 'Content',
- OPERATOR => $args{'OPERATOR'},
- VALUE => $args{'VALUE'},
- );
-}
-
-# {{{ sub FindAllRows
-
-=head2 FindAllRows
-
-Find all matching rows, regardless of whether they are disabled or not
-
-=cut
-
-sub FindAllRows {
- shift->{'find_disabled_rows'} = 1;
-}
-
-# {{{ sub Limit
-
-=head2 Limit PARAMHASH
-
-This Limit sub calls SUPER::Limit, but defaults "CASESENSITIVE" to 1, thus
-making sure that by default lots of things don't do extra work trying to
-match lower(colname) agaist lc($val);
-
-=cut
-
-sub Limit {
- my $self = shift;
- my %args = ( CASESENSITIVE => 1,
- @_ );
-
- return $self->SUPER::Limit(%args);
-}
-
-# }}}
-
-# {{{ sub ItemsOrderBy
-
-=head2 ItemsOrderBy
-
-If it has a SortOrder attribute, sort the array by SortOrder.
-Otherwise, if it has a "Name" attribute, sort alphabetically by Name
-Otherwise, just give up and return it in the order it came from the
-db.
-
-=cut
-
-sub ItemsOrderBy {
- my $self = shift;
- my $items = shift;
-
- if ($self->NewItem()->_Accessible('SortOrder','read')) {
- $items = [ sort { $a->SortOrder <=> $b->SortOrder } @{$items} ];
- }
- elsif ($self->NewItem()->_Accessible('Name','read')) {
- $items = [ sort { lc($a->Name) cmp lc($b->Name) } @{$items} ];
- }
-
- return $items;
-}
-
-# }}}
-
-# {{{ sub ItemsArrayRef
-
-=head2 ItemsArrayRef
-
-Return this object's ItemsArray, in the order that ItemsOrderBy sorts
-it.
-
-=begin testing
-
-use_ok(RT::Queues);
-ok(my $queues = RT::Queues->new($RT::SystemUser), 'Created a queues object');
-ok( $queues->UnLimit(),'Unlimited the result set of the queues object');
-my $items = $queues->ItemsArrayRef();
-my @items = @{$items};
-
-ok($queues->NewItem->_Accessible('Name','read'));
-my @sorted = sort {lc($a->Name) cmp lc($b->Name)} @items;
-ok (@sorted, "We have an array of queues, sorted". join(',',map {$_->Name} @sorted));
-
-ok (@items, "We have an array of queues, raw". join(',',map {$_->Name} @items));
-my @sorted_ids = map {$_->id } @sorted;
-my @items_ids = map {$_->id } @items;
-
-is ($#sorted, $#items);
-is ($sorted[0]->Name, $items[0]->Name);
-is ($sorted[-1]->Name, $items[-1]->Name);
-is_deeply(\@items_ids, \@sorted_ids, "ItemsArrayRef sorts alphabetically by name");;
-
-
-=end testing
-
-=cut
-
-sub ItemsArrayRef {
- my $self = shift;
- my @items;
-
- return $self->ItemsOrderBy($self->SUPER::ItemsArrayRef());
-}
-
-# }}}
-
-eval "require RT::SearchBuilder_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SearchBuilder_Vendor.pm});
-eval "require RT::SearchBuilder_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/SearchBuilder_Local.pm});
-
-1;
-
-
diff --git a/rt/lib/RT/StyleGuide.pod b/rt/lib/RT/StyleGuide.pod
deleted file mode 100644
index f0d1d15..0000000
--- a/rt/lib/RT/StyleGuide.pod
+++ /dev/null
@@ -1,922 +0,0 @@
-=head1 NAME
-
-RT::StyleGuide - RT Style Guide
-
-=head1 INTRODUCTION
-
-All code and documentation that is submitted to be included in the RT
-distribution should follow the style in this document. This is not to
-try to stifle your creativity, but to make life easier for everybody who
-has to work with your code, and to aid those who are not quite sure how
-to do something.
-
-These conventions below apply to perl modules, web programs, and
-command-line programs, specifically, but also might apply to some
-degree to any Perl code written for use in RT.
-
-Note that these are all guidelines, not unbreakable rules. If you have
-a really good need to break one of the rules herein, however, then it is
-best to ask on the B<rt-devel> mailing list first.
-
-Note that with much of this document, it is not so much the Right Way as
-it is Our Way. We need to have conventions in order to make life easier
-for everyone. So don't gripe, and just follow it, because you didn't
-get a good grade in "Plays Well With Others" in kindergarten and you
-want to make up for it now.
-
-If you have any questions, please ask us on the B<rt-devel> mailing list:
-
- http://www.bestpractical.com/rt/lists.html
-
-We don't always follow this guide. We are making changes throughout
-our code to be in line with it. But just because we didn't do
-it yet, that is no excuse. Do it anyway. :-)
-
-This document is subject to change at the whims of the core RT team.
-We hope to add any significant changes at the bottom of the document.
-
-
-=head1 CODING PRINCIPLES
-
-=head2 Perl Version
-
-We code everything to perl 5.6.1. Some features require advanced unicode
-features in perl 5.8.0. It is acceptable that unicode features work only for
-US-ASCII on perl 5.6.1.
-
-
-=head2 Documentation
-
-All modules will be documented using the POD examples in the module
-boilerplate. The function, purpose, use of the module will be
-explained, and each public API will be documented with name,
-description, inputs, outputs, side effects, etc.
-
-If an array or hash reference is returned, document the size of the
-array (including what each element is, as appropriate) and name each key
-in the hash. For complex data structures, map out the structure as
-appropriate (e.g., name each field returned for each column from a DB
-call; yes, this means you shouldn't use "SELECT *", which you shouldn't
-use anyway).
-
-Also document what kind of data returned values are. Is it an integer,
-a block of HTML, a boolean?
-
-All command-line program options will be documented using the
-boilerplate code for command-line programs, which doesn't yet exist.
-Each available function, switch, etc. should be documented, along
-with a statement of function, purpose, use of the program. Do not
-use the same options as another program, for a different purpose.
-
-All web templates should be documented with a statement of function,
-purpose, and use in a mason comment block.
-
-Any external documents, and documentation for command-line programs and
-modules, should be written in POD, where appropriate. From there, they
-can be translated to many formats with the various pod2* translators.
-Read the perlpod manpage before writing any POD, because although POD is
-not difficult, it is not what most people are used to. It is not a
-regular markup language; it is just a way to make easy documentation
-for translating to other formats. Read, and understand, the perlpod
-manpage, and ask us or someone else who knows if you have any questions.
-
-
-=head2 Version
-
-Our distribution versions use tuples, where the first number is the
-major revision, the second number is the version, and third
-number is the subversion. Odd-numbered versions are development
-versions. Examples:
-
- 1.0.0 First release of RT 1
- 1.0.1 Second release of RT 1.0
- 1.0.10 etc.
- 1.1.0 First development release of RT 1.2 (or 2.0)
- 2.0.0 First release of RT 2
-
-Versions can be modified with a hyphen followed by some text, for
-special versions, or to give extra information. Examples:
-
- 2.0.0-pre1 Notes that this is not final, but preview
-
-In perl 5.6.0, you can have versions like C<v2.0.0>, but this is not
-allowed in previous versions of perl. So to convert a tuple version
-string to a string to use with $VERSION, use a regular integer for
-the revision, and three digits for version and subversion. Examples:
-
- 1.1.6 -> 1.001006
- 2.0.0 -> 2.000000
-
-This way, perl can use the version strings in greater-than and
-less-than comparisons.
-
-
-=head2 Comments
-
-All code should be self-documenting as much as possible. Only include
-necessary comments. Use names like "$ticket_count", so you don't need to
-do something like:
-
- # ticket count
- my $tc = 0;
-
-Include any comments that are, or might be, necessary in order for
-someone else to understand the code. Sometimes a simple one-line
-comment is good to explain what the purpose of the following code is
-for. Sometimes each line needs to be commented because of a complex
-algorithm. Read Kernighan & Pike's I<Practice of Programming> about
-commenting. Good stuff, Maynard.
-
-
-=head2 Warnings and Strict
-
-All code must compile and run cleanly with "use strict" enabled and the
-perl "-w" (warnings) option on. If you must do something that -w or
-strict complains about, there are workarounds, but the chances that you
-really need to do it that way are remote.
-
-=head2 Lexical Variables
-
-Use only lexical variables, except for special global variables
-($VERSION, %ENV, @ISA, $!, etc.) or very special circumstances (see
-%HTML::Mason::Commands::session ). Global variables
-for regular use are never appropriate. When necessary, "declare"
-globals with "use vars" or "our()".
-
-A lexical variable is created with my(). A global variable is
-pre-existing (if it is a special variable), or it pops into existence
-when it is used. local() is used to tell perl to assign a temporary
-value to a variable. This should only be used with special variables,
-like $/, or in special circumstances. If you must assign to any global
-variable, consider whether or not you should use local().
-
-local() may also be used on elements of arrays and hashes, though there
-is seldom a need to do it, and you shouldn't.
-
-
-=head2 Exporting
-
-Do not export anything from a module by default. Feel free to put
-anything you want to in @EXPORT_OK, so users of your modules can
-explicitly ask for symbols (e.g., "use Something::Something qw(getFoo
-setFoo)"), but do not export them by default.
-
-
-=head2 Pass by Reference
-
-Arrays and hashes should be passed to and from functions by reference
-only. Note that a list and an array are NOT the same thing. This
-is perfectly fine:
-
- return($user, $form, $constants);
-
-An exception might be a temporary array of discrete arguments:
-
- my @return = ($user, $form);
- push @return, $constants if $flag;
- return @return;
-
-Although, usually, this is better (faster, easier to read, etc.):
-
- if ($flag) {
- return($user, $form, $constants);
- } else {
- return($user, $form);
- }
-
-We need to talk about Class::ReturnValue here.
-
-
-=head2 Garbage Collection
-
-Perl does pretty good garbage collection for you. It will automatically
-clean up lexical variables that have gone out of scope and objects whose
-references have gone away. Normally you don't need to worry about
-cleaning up after yourself, if using lexicals.
-
-However, some glue code, code compiled in C and linked to Perl, might
-not automatically clean up for you. In such cases, clean up for
-yourself. If there is a method in that glue to dispose or destruct,
-then use it as appropriate.
-
-Also, if you have a long-running function that has a large data
-structure in it, it is polite to free up the memory as soon as you are
-done with it, if possible.
-
- my $huge_data_structure = get_huge_data_structure();
- do_something_with($huge_data_structure);
- undef $huge_data_structure;
-
-=head2 DESTROY
-
-All object classes must provide a DESTROY method. If it won't do
-anything, provide it anyway:
-
- sub DESTROY { }
-
-
-
-=head2 die() and exit()
-
-Don't do it. Do not die() or exit() from a web template or module. Do
-not call C<kill 9, $$>. Don't do it.
-
-In command-line programs, do as you please.
-
-
-=head2 shift and @_
-
-Do not use @_. Use shift. shift may take more lines, but Jesse thinks it
-leads to cleaner code.
-
- my $var = shift; # right
- my($var) = @_; # ick. no
- sub foo { uc $_[0] } # icky. sometimes ok.
-
-
- my($var1, $var2) = (shift, shift); # Um, no.
-
- my $var1 = shift; # right
- my $var2 = shift;
-
-=head2 Method parameters
-
-If a method takes exactly one mandatory argument, the argument should be
-passed in a straightforward manner:
-
- my $self = shift;
- my $id = shift;
-
-In all other cases, the method needs to take named parameters, usually
-using a C<%args> hash to store them:
-
- my $self = shift;
- my %args = ( Name => undef,
- Description => undef,
- @_ );
-
-You may specify defaults to those named parameters instead of using
-C<undef> above, as long as it is documented as such.
-
-It is worth noting that the existing RT codebase had not followed this
-style perfectly; we are trying to fix it without breaking exsiting APIs.
-
-=head2 Tests
-
-Modules should provide test code, with documentation on how to use
-it. Test::Inline allows tests to be embedded in code. Test::More makes it
-easy to create tests. Any code you write should have a testsuite.
-Any code you alter should have a test suite. If a patch comes in without
-tests, there is something wrong.
-
-When altering code, you must run the test harness before submitting a patch
-or committing code to the repository.
-
-"make regression" will extract inline tests, blow away the system database
-and run the test suite.
-
-"make regression-quiet" will do all that and not print the "ok" lines.
-
-
-
-=head2 STDIN/STDOUT
-
-Always report errors using $RT::Logger. It's a Log::Dispatch object.
-Unlike message meant for the user, log messages are not to be
-internationalized.
-
-There are several different levels ($RT::Logger methods) of logging:
-
-=over 4
-
-=item debug
-
-Used for messages only needed during system debugging.
-
-=item info
-
-Should be used to describe "system-critical" events which aren't errors.
-Examples: creating users, deleting users, creating tickets, creating queues,
-sending email (message id, time, recipients), recieving mail, changing
-passwords, changing access control, superuser logins)
-
-=item error
-
-Used for RT-generated failures during execution.
-
-=item crit
-
-Should be used for messages when an action can not be completed due to some
-error condition beyond our control.
-
-=back
-
-In the web UI and modules, never print directly to STDERR. Do not print
-directly to STDOUT, unless you need to print directly to the user's console.
-
-In command-line programs, feel free to print to STDERR and STDOUT as
-needed for direct console communication. But for actual error reporting,
-use the logging API.
-
-
-=head2 System Calls
-
-Always check return values from system calls, including open(),
-close(), mkdir(), or anything else that talks directly to the system.
-Perl built-in system calls return the error in $!; some functions in
-modules might return an error in $@ or some other way, so read the module's
-documentation if you don't know. Always do something, even if it is
-just calling $RT::Logger->warning(), when the return value is not what you'd expect.
-
-
-
-=head1 STYLE
-
-Much of the style section is taken from the perlsyle manpage. We make
-some changes to it here, but it wouldn't be a bad idea to read that
-document, too.
-
-=head2 Terminology
-
-=over 4
-
-=item RT the name
-
-"RT" is the name of the project. "RT" is, optionally, the
-specific name for the actual file distribution. That's it.
-
-While we sometimes use "RT2" or "RT3", that's shortand that's really
-not recommended. The name of the project is "RT".
-
-To specify a major version, use "RT 3.0".
-To specify a specific release, use "RT 3.0.12"
-
-=item function vs. sub(routine) vs. method
-
-Just because it is the Perl Way (not necessarily right for all
-languages, but the documented terminology in the perl documentation),
-"method" should be used only to refer to a subroutine that are object
-methods or class methods; that is, these are functions that are used
-with OOP that always take either an object or a class as the first
-argument. Regular subroutines, ones that are not object or class
-methods, are functions. Class methods that create and return an object
-are optionally called constructors.
-
-=item Users
-
-"users" are normally users of RT, the ones hitting the site; if using
-it in any other context, specify.
-"system users" are user
-names on the operating system. "database users" are the user names in
-the database server. None of these needs to be capitalized.
-
-=back
-
-
-=head2 Names
-
-Don't use single-character variables, except as iterator variables.
-
-Don't use two-character variables just to spite us over the above rule.
-
-Constants are in all caps; these are variables whose value will I<never>
-change during the course of the program.
-
- $Minimum = 10; # wrong
- $MAXIMUM = 50; # right
-
-Other variables are lowercase, with underscores separating the words.
-They words used should, in general, form a noun (usually singular),
-unless the variable is a flag used to denote some action that should be
-taken, in which case they should be verbs (or gerunds, as appropriate)
-describing that action.
-
- $thisVar = 'foo'; # wrong
- $this_var = 'foo'; # right
- $work_hard = 1; # right, verb, boolean flag
- $running_fast = 0; # right, gerund, boolean flag
-
-Arrays and hashes should be plural nouns, whether as regular arrays and
-hashes or array and hash references. Do not name references with "ref"
-or the data type in the name.
-
- @stories = (1, 2, 3); # right
- $comment_ref = [4, 5, 6]; # wrong
- $comments = [4, 5, 6]; # right
- $comment = $comments->[0]; # right
-
-Make the name descriptive. Don't use variables like "$sc" when you
-could call it "$story_count". See L<"Comments">.
-
-There are several variables in RT that are used throughout the code,
-that you should use in your code. Do not use these variable names for
-anything other than how they are normally used, and do not use any
-other variable names in their place. Some of these are:
-
- $self # first named argument in object method
-
-Subroutines (except for special cases, like AUTOLOAD and simple accessors)
-begin with a verb, with words following to complete the action. Accessors
-don't start with "Get" if they're just the name of the attribute.
-
-Accessors which return an object should end with the suffix Obj.
-
-This section needs clarification for RT.
-
-Words begin with a capital letter. They
-should as clearly as possible describe the activity to be peformed, and
-the data to be returned.
-
-
-
- Load(); # good
- LoadByName(); # good
- LoadById(); # good
-
-Subroutines beginning with C<_> are special: they are not to be used
-outside the current object. There is not to be enforced by the code
-itself, but by someone very big and very scary.
-
-For large for() loops, do not use $_, but name the variable.
-Do not use $_ (or assume it) except for when it is absolutely
-clear what is going on, or when it is required (such as with
-map() and grep()).
-
- for (@list) {
- print; # OK; everyone knows this one
- print uc; # wrong; few people know this
- print uc $_; # better
- }
-
-Note that the special variable C<_> I<should> be used when possible.
-It is a placeholder that can be passed to stat() and the file test
-operators, that saves perl a trip to re-stat the file. In the
-example below, using C<$file> over for each file test, instead of
-C<_> for subsequent uses, is a performance hit. You should be
-careful that the last-tested file is what you think it is, though.
-
- if (-d $file) { # $file is a directory
- # ...
- } elsif (-l _) { # $file is a symlink
- # ...
- }
-
-Package names begin with a capital letter in each word, followed by
-lower case letters (for the most part). Multiple words should be StudlyCapped.
-
- RT::User # good
- RT::Database::MySQL # proper name
- RT::Display::Provider # good
- RT::CustomField # not so good, but OK
-
-Plugin modules should begin with "RTx::", followed by the name
-of the plugin.
-
-=head1 Code formatting
-
-Use perltidy. Anything we say here is wrong if it conflicts with what
-perltidy does. Your perltidyrc should read:
-
--lp -vt=2 -vtc=2 -nsfs -bar
-
-=head2 Indents and Blank Space
-
-All indents should be tabs. Set your tab stops whatever you want them
-to be; I use 8 spaces per tabs.
-
-No space before a semicolon that closes a statement.
-
- foo(@bar) ; # wrong
- foo(@bar); # right
-
-Line up corresponding items vertically.
-
- my $foo = 1;
- my $bar = 2;
- my $xyzzy = 3;
-
- open(FILE, $fh) or die $!;
- open(FILE2, $fh2) or die $!;
-
- $rot13 =~ tr[abcedfghijklmnopqrstuvwxyz]
- [nopqrstuvwxyzabcdefghijklm];
-
- # note we use a-mn-z instead of a-z,
- # for readability
- $rot13 =~ tr[a-mn-z]
- [n-za-m];
-
-Put blank lines between groups of code that do different things. Put
-blank lines after your variable declarations. Put a blank line before a
-final return() statement. Put a blank line following a block (and
-before, with the exception of comment lines).
-
-An example:
-
- # this is my function!
- sub foo {
- my $val = shift;
- my $obj = new Constructor;
- my($var1, $var2);
-
- $obj->SetFoo($val);
- $var1 = $obj->Foo();
-
-
- return($val);
- }
-
- print 1;
-
-
-=head2 Parentheses
-
-For control structures, there is a space between the keyword and opening
-parenthesis. For functions, there is not.
-
- for(@list) # wrong
- for (@list) # right
-
- my ($ref) # wrong
- my($ref) # right
-
-Be careful about list vs. scalar context with parentheses!
-
- my @array = ('a', 'b', 'c');
- my($first_element) = @array; # a
- my($first_element) = ('a', 'b', 'c'); # a
- my $element_count = @array; # 3
- my $last_element = ('a', 'b', 'c'); # c
-
-Always include parentheses after functions, even if there are no arguments.
-There are some exceptions, such as list operators (like print) and unary
-operators (like undef, delete, uc).
-
-There is no space inside the parentheses, unless it is needed for
-readability.
-
- for ( map { [ $_, 1 ] } @list ) # OK
- for ( @list ) # not really OK, not horrible
-
-On multi-line expressions, match up the closing parenthesis with either
-the opening statement, or the opening parenthesis, whichever works best.
-Examples:
-
- @list = qw(
- bar
- baz
- ); # right
-
- if ($foo && $bar && $baz
- && $buz && $xyzzy
- ) {
- print $foo;
- }
-
-Whether or not there is space following a closing parenthesis is
-dependent on what it is that follows.
-
- print foo(@bar), baz(@buz) if $xyzzy;
-
-Note also that parentheses around single-statement control expressions,
-as in C<if $xyzzy>, are optional (and discouraged) C<if> it is I<absolutely>
-clear -- to a programmer -- what is going on. There is absolutely no
-need for parentheses around C<$xyzzy> above, so leaving them out enhances
-readability. Use your best discretion. Better to include them, if
-there is any question.
-
-The same essentially goes for perl's built-in functions, when there is
-nothing confusing about what is going on (for example, there is only one
-function call in the statement, or the function call is separated by a
-flow control operator). User-supplied functions must always include
-parentheses.
-
- print 1, 2, 3; # good
- delete $hash{key} if isAnon($uid); # good
-
-
-However, if there is any possible confusion at all, then include the
-parentheses. Remember the words of Larry Wall in the perlstyle manpage:
-
- When in doubt, parenthesize. At the very least it will
- let some poor schmuck bounce on the % key in vi.
-
- Even if you aren't in doubt, consider the mental welfare
- of the person who has to maintain the code after you, and
- who will probably put parens in the wrong place.
-
-So leave them out when it is absoutely clear to a programmer, but if
-there is any question, leave them in.
-
-
-=head2 Braces
-
-(This is about control braces, not hash/data structure braces.)
-
-There is always a space befor the opening brace.
-
- while (<$fh>){ # wrong
- while (<$fh>) { # right
-
-A one-line block may be put on one line, and the semicolon may be
-omitted.
-
- for (@list) { print }
-
-Otherwise, finish each statement with a semicolon, put the keyword and
-opening curly on the first line, and the ending curly lined up with the
-keyword at the end.
-
- for (@list) {
- print;
- smell();
- }
-
-Generally, we prefer "uncuddled elses":
-
- if ($foo) {
- print;
- }
- else {
- die;
- }
-
-_If_ the if statement is very brief, sometimes "cuddling" the else makes code more readable. Feel free to cuddle them in that case:
-
-
- if ($foo) {
- print;
- } else {
- die;
- }
-
-=head2 Operators
-
-Put space around most operators. The primary exception is the for
-aesthetics; e.g., sometimes the space around "**" is ommitted,
-and there is never a space before a ",", but always after.
-
- print $x , $y; # wrong
- print $x, $y; # right
-
- $x = 2 >> 1; # good
- $y = 2**2; # ok
-
-Note that "&&" and "||" have a higher precedence than "and" and "or".
-Other than that, they are exactly the same. It is best to use the lower
-precedence version for control, and the higher for testing/returning
-values. Examples:
-
- $bool = $flag1 or $flag2; # WRONG (doesn't work)
- $value = $foo || $bar; # right
- open(FILE, $file) or die $!;
-
- $true = foo($bar) && baz($buz);
- foo($bar) and baz($buz);
-
-Note that "and" is seldom ever used, because the statement above is
-better written using "if":
-
- baz($buz) if foo($bar);
-
-Most of the time, the confusion between and/&&, or/|| can be alleviated
-by using parentheses. If you want to leave off the parentheses then you
-I<must> use the proper operator. But if you use parentheses -- and
-normally, you should, if there is any question at all -- then it doesn't
-matter which you use. Use whichever is most readable and aesthetically
-pleasing to you at the time, and be consistent within your block of code.
-
-Break long lines AFTER operators, except for "and", "or", "&&", "||".
-Try to keep the two parts to a binary operator (an operator that
-has two operands) together when possible.
-
- print "foo" . "bar" . "baz"
- . "buz"; # wrong
-
- print "foo" . "bar" . "baz" .
- "buz"; # right
-
- print $foo unless $x == 3 && $y ==
- 4 && $z == 5; # wrong
-
- print $foo unless $x == 3 && $y == 4
- && $z == 5; # right
-
-
-=head2 Other
-
-Put space around a complex subscript inside the brackets or braces.
-
- $foo{$bar{baz}{buz}}; # OK
- $foo{ $bar{baz}{buz} }; # better
-
-In general, use single-quotes around literals, and double-quotes
-when the text needs to be interpolated.
-
-It is OK to omit quotes around names in braces and when using
-the => operator, but be careful not to use a name that doubles as
-a function; in that case, quote.
-
- $what{'time'}{it}{is} = time();
-
-When making compound statements, put the primary action first.
-
- open(FILE, $fh) or die $!; # right
- die $! unless open(FILE, $fh); # wrong
-
- print "Starting\n" if $verbose; # right
- $verbose && print "Starting\n"; # wrong
-
-
-Use here-docs instead of repeated print statements.
-
- print <<EOT;
- This is a whole bunch of text.
- I like it. I don't need to worry about messing
- with lots of print statements and lining them up.
- EOT
-
-Just remember that unless you put single quotes around your here-doc
-token (<<'EOT'), the text will be interpolated, so escape any "$" or "@"
-as needed.
-
-=head1 INTERNATIONALIZATION
-
-
-=head2 String extraction styleguide
-
-=over 4
-
-=item Web templates
-
-Templates should use the /l filtering component to call the localisation
-framework
-
-The string Foo!
-
-Should become <&|/l&>Foo!</&>
-
-All newlines should be removed from localized strings, to make it easy to
-grep the codebase for strings to be localized
-
-The string Foo
- Bar
- Baz
-
-Should become <&|/l&>Foo Bar Baz</&>
-
-
-Variable subsititutions should be moved to Locale::MakeText format
-
-The string Hello, <%$name %>
-
-should become <&|/l, $name &>Hello, [_1]</&>
-
-
-Multiple variables work just like single variables
-
-The string You found <%$num%> tickets in queue <%$queue%>
-
-should become <&|/l, $num, $queue &>You found [_1] tickets in queue [_2]</&>
-
-When subcomponents are called in the middle of a phrase, they need to be escaped
-too:
-
-The string <input type="submit" value="New ticket in">&nbsp<& /Elements/SelectNewTicketQueue&>
-
-should become <&|/l, $m->scomp('/Elements/SelectNewTicketQueue')&><input type="submit" value="New ticket in">&nbsp;[_1]</&>
-
-
-
-
-The string <& /Elements/TitleBoxStart, width=> "40%", titleright => "RT $RT::VERSION for $RT::rtname", title => 'Login' &>
-
-should become <& /Elements/TitleBoxStart,
- width=> "40%",
- titleright => loc("RT [_1] for [_2]",$RT::VERSION, $RT::rtname),
- title => loc('Login'),
- &>
-
-
-=item Library code
-
-
-
-Within RT's core code, every module has a localization handle available through the 'loc' method:
-
-The code return ( $id, "Queue created" );
-
-should become return ( $id, $self->loc("Queue created") );
-
-When returning or localizing a single string, the "extra" set of parenthesis () should be omitted.
-
-The code return ("Subject changed to ". $self->Data );
-
-should become return $self->loc( "Subject changed to [_1]", $self->Data );
-
-
-It is important not to localize the names of rights or statuses within RT's core, as there is logic that depends on them as string identifiers. The proper place to localize these values is when they're presented for display in the web or commandline interfaces.
-
-
-=back 4
-
-=head1 CODING PRCEDURE
-
-This is for new programs, modules, specific APIs, or anything else.
-
-=over 4
-
-=item Present idea to rt-devel
-
-We may know of a better way to approach the problem, or know of an
-existing way to deal with it, or know someone else is working on it.
-This is mostly informal, but a fairly complete explanation for the need
-and use of the code should be provided.
-
-
-=item Present complete specs to rt-devel
-
-The complete proposed API should be submitted for
-approval and discussion. For web and command-line programs, present the
-functionality and interface (op codes, command-lin switches, etc.).
-
-The best way to do this is to take the documentation portion of the
-boilerplate and fill it in. You can make changes later if necessary,
-but fill it in as much as you can.
-
-
-
-=item Prepare for code review
-
-When you are done, the code will undergo a code review by a member of
-the core team, or someone picked by the core team. This is not to
-belittle you (that's just a nice side effect), it is to make sure that
-you understand your code, that we understand your code, that it won't
-break other code, that it follows the documentation and existing
-proposal. It is to check for possible optimizations or better ways of
-doing it.
-
-Note that all code is expected to follow the coding principles and style
-guide contained in this document.
-
-
-=item Finish it up
-
-After the code is done (possibly going through multiple code reviews),
-if you do not have repository access, submit it to rt-<major-version>-bugs@fsck.com as a unified diff. From that point on, it'll be handled by someone with repository access.
-
-=back
-
-
-=head1 BUG REPORTS, PATCHES
-
-Use rt-<major-version>-bugs@fsck.com for I<any> bug that is not
-being fixed immediately. If it is not in RT, there
-is a good chance it will not be dealt with.
-
-Send patches to rt-<major-version>-bugs@fsck.com, too. Use C<diff
--u> for patches.
-
-=head1 SCHEMA DESIGN
-
-RT uses a convention to denote the foreign key status in its tables.
-The rule of thumb is:
-
-=over 4
-
-=item When it references to another table, always use the table name
-
-For example, the C<Template> field in the C<Scrips> table refers to
-the C<Id> of the same-named C<Template> table.
-
-=item Otherwise, always use the C<Id> suffix
-
-For example, the C<ObjectId> field in the C<ACL> table can refer
-to any object, so it has the C<Id> suffix.
-
-=back
-
-There are some legacy fields that did not follow this rule, namely
-C<ACL.PrincipalId>, C<GroupMembers.GroupId> and C<Attachments.TransactionId>,
-but new tables are expected to be consistent.
-
-=head1 TO DO
-
-Talk about DBIx::SearchBuilder
-
-Talk about mason
- component style
- cascading style sheets
-
-Talk about adding a new translation
-
-Talk more about logging
-
-=head1 CHANGES
-
- Adapted from Slash Styleguide by jesse - 20 Dec, 2002
-
-
-=head1 VERSION
-
-0.1
diff --git a/rt/lib/RT/System.pm b/rt/lib/RT/System.pm
deleted file mode 100644
index 515e3a4..0000000
--- a/rt/lib/RT/System.pm
+++ /dev/null
@@ -1,193 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
-RT::System
-
-=head1 DESCRIPTION
-
-RT::System is a simple global object used as a focal point for things
-that are system-wide.
-
-It works sort of like an RT::Record, except it's really a single object that has
-an id of "1" when instantiated.
-
-This gets used by the ACL system so that you can have rights for the scope "RT::System"
-
-In the future, there will probably be other API goodness encapsulated here.
-
-=cut
-
-
-package RT::System;
-use base qw /RT::Base/;
-use strict;
-
-use RT::ACL;
-use vars qw/ $RIGHTS/;
-
-# System rights are rights granted to the whole system
-# XXX TODO Can't localize these outside of having an object around.
-$RIGHTS = {
- SuperUser => 'Do anything and everything', # loc_pair
- AdminAllPersonalGroups =>
- "Create, delete and modify the members of any user's personal groups"
- , # loc_pair
- AdminOwnPersonalGroups =>
- 'Create, delete and modify the members of personal groups', # loc_pair
- AdminUsers => 'Create, delete and modify users', # loc_pair
- ModifySelf => "Modify one's own RT account", # loc_pair
- DelegateRights =>
- "Delegate specific rights which have been granted to you.", # loc_pair
- ShowConfigTab => "show Configuration tab", # loc_pair
- LoadSavedSearch => "allow loading of saved searches", # loc_pair
- CreateSavedSearch => "allow creation of saved searches", # loc_pair
-};
-
-# Tell RT::ACE that this sort of object can get acls granted
-$RT::ACE::OBJECT_TYPES{'RT::System'} = 1;
-
-foreach my $right ( keys %{$RIGHTS} ) {
- $RT::ACE::LOWERCASERIGHTNAMES{ lc $right } = $right;
-}
-
-
-=head2 AvailableRights
-
-Returns a hash of available rights for this object. The keys are the right names and the values are a description of what the rights do
-
-=begin testing
-
-my $s = RT::System->new($RT::SystemUser);
-my $rights = $s->AvailableRights;
-ok ($rights, "Rights defined");
-ok ($rights->{'AdminUsers'},"AdminUsers right found");
-ok ($rights->{'CreateTicket'},"CreateTicket right found");
-ok ($rights->{'AdminGroupMembership'},"ModifyGroupMembers right found");
-ok (!$rights->{'CasdasdsreateTicket'},"bogus right not found");
-
-
-
-=end testing
-
-
-=cut
-
-sub AvailableRights {
- my $self = shift;
-
- my $queue = RT::Queue->new($RT::SystemUser);
- my $group = RT::Group->new($RT::SystemUser);
- my $cf = RT::CustomField->new($RT::SystemUser);
-
- my $qr =$queue->AvailableRights();
- my $gr = $group->AvailableRights();
- my $cr = $cf->AvailableRights();
-
- # Build a merged list of all system wide rights, queue rights and group rights.
- my %rights = (%{$RIGHTS}, %{$gr}, %{$qr}, %{$cr});
- return(\%rights);
-}
-
-
-=head2 new
-
-Create a new RT::System object. Really, you should be using $RT::System
-
-=cut
-
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless( $self, $class );
-
-
- return ($self);
-}
-
-=head2 id
-
-Returns RT::System's id. It's 1.
-
-
-=begin testing
-
-use RT::System;
-my $sys = RT::System->new();
-is( $sys->Id, 1);
-is ($sys->id, 1);
-
-=end testing
-
-
-=cut
-
-*Id = \&id;
-
-sub id {
- return (1);
-}
-
-=head2 Load
-
-Since this object is pretending to be an RT::Record, we need a load method.
-It does nothing
-
-=cut
-
-sub Load {
- return (1);
-}
-
-eval "require RT::System_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/System_Vendor.pm});
-eval "require RT::System_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/System_Local.pm});
-
-1;
diff --git a/rt/lib/RT/Template.pm b/rt/lib/RT/Template.pm
deleted file mode 100755
index f73ea3e..0000000
--- a/rt/lib/RT/Template.pm
+++ /dev/null
@@ -1,363 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Template
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Template;
-use RT::Record;
-use RT::Queue;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Templates');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'Queue'.
- varchar(200) 'Name'.
- varchar(255) 'Description'.
- varchar(16) 'Type'.
- varchar(16) 'Language'.
- int(11) 'TranslationOf'.
- blob 'Content'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Queue => '0',
- Name => '',
- Description => '',
- Type => '',
- Language => '',
- TranslationOf => '0',
- Content => '',
-
- @_);
- $self->SUPER::Create(
- Queue => $args{'Queue'},
- Name => $args{'Name'},
- Description => $args{'Description'},
- Type => $args{'Type'},
- Language => $args{'Language'},
- TranslationOf => $args{'TranslationOf'},
- Content => $args{'Content'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Queue
-
-Returns the current value of Queue.
-(In the database, Queue is stored as int(11).)
-
-
-
-=item SetQueue VALUE
-
-
-Set Queue to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Queue will be stored as a int(11).)
-
-
-=cut
-
-
-=item QueueObj
-
-Returns the Queue Object which has the id returned by Queue
-
-
-=cut
-
-sub QueueObj {
- my $self = shift;
- my $Queue = RT::Queue->new($self->CurrentUser);
- $Queue->Load($self->__Value('Queue'));
- return($Queue);
-}
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Description
-
-Returns the current value of Description.
-(In the database, Description is stored as varchar(255).)
-
-
-
-=item SetDescription VALUE
-
-
-Set Description to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Description will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(16).)
-
-
-
-=item SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item Language
-
-Returns the current value of Language.
-(In the database, Language is stored as varchar(16).)
-
-
-
-=item SetLanguage VALUE
-
-
-Set Language to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Language will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item TranslationOf
-
-Returns the current value of TranslationOf.
-(In the database, TranslationOf is stored as int(11).)
-
-
-
-=item SetTranslationOf VALUE
-
-
-Set TranslationOf to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TranslationOf will be stored as a int(11).)
-
-
-=cut
-
-
-=item Content
-
-Returns the current value of Content.
-(In the database, Content is stored as blob.)
-
-
-
-=item SetContent VALUE
-
-
-Set Content to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Content will be stored as a blob.)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Queue =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Description =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- Type =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- Language =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- TranslationOf =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Content =>
- {read => 1, write => 1, type => 'blob', default => ''},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Template_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Template_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Template_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Template_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Template_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Template_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Template_Overlay, RT::Template_Vendor, RT::Template_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Template_Overlay.pm b/rt/lib/RT/Template_Overlay.pm
deleted file mode 100644
index bfff0f0..0000000
--- a/rt/lib/RT/Template_Overlay.pm
+++ /dev/null
@@ -1,444 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Portions Copyright 2000 Tobias Brox <tobix@cpan.org>
-
-=head1 NAME
-
- RT::Template - RT's template object
-
-=head1 SYNOPSIS
-
- use RT::Template;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::Template);
-
-=end testing
-
-=cut
-
-
-package RT::Template;
-
-use strict;
-no warnings qw(redefine);
-
-use Text::Template;
-use MIME::Entity;
-use MIME::Parser;
-use File::Temp qw /tempdir/;
-
-
-# {{{ sub _Accessible
-
-sub _Accessible {
- my $self = shift;
- my %Cols = (
- id => 'read',
- Name => 'read/write',
- Description => 'read/write',
- Type => 'read/write', #Type is one of Action or Message
- Content => 'read/write',
- Queue => 'read/write',
- Creator => 'read/auto',
- Created => 'read/auto',
- LastUpdatedBy => 'read/auto',
- LastUpdated => 'read/auto'
- );
- return $self->SUPER::_Accessible( @_, %Cols );
-}
-
-# }}}
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
-
- # use super::value or we get acl blocked
- if ( ( defined $self->SUPER::_Value('Queue') )
- && ( $self->SUPER::_Value('Queue') == 0 ) )
- {
- unless ( $self->CurrentUser->HasRight( Object => $RT::System, Right => 'ModifyTemplate') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- else {
-
- unless ( $self->CurrentUserHasQueueRight('ModifyTemplate') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- return ( $self->SUPER::_Set(@_) );
-
-}
-
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-
-=begin testing
-
-my $t = RT::Template->new($RT::SystemUser);
-$t->Create(Name => "Foo", Queue => 1);
-my $t2 = RT::Template->new($RT::Nobody);
-$t2->Load($t->Id);
-ok($t2->QueueObj->id, "Got the template's queue objet");
-
-=end testing
-
-
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
-
- #If the current user doesn't have ACLs, don't let em at it.
- #use super::value or we get acl blocked
- if ( ( !defined $self->__Value('Queue') )
- || ( $self->__Value('Queue') == 0 ) )
- {
- unless ( $self->CurrentUser->HasRight( Object => $RT::System, Right => 'ShowTemplate') ) {
- return (undef);
- }
- }
- else {
- unless ( $self->CurrentUserHasQueueRight('ShowTemplate') ) {
- return (undef);
- }
- }
- return ( $self->__Value($field) );
-
-}
-
-# }}}
-
-# {{{ sub Load
-
-=head2 Load <identifer>
-
-Load a template, either by number or by name
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift;
-
- if ( !$identifier ) {
- return (undef);
- }
-
- if ( $identifier !~ /\D/ ) {
- $self->SUPER::LoadById($identifier);
- }
- else {
- $self->LoadByCol( 'Name', $identifier );
-
- }
-}
-
-# }}}
-
-# {{{ sub LoadGlobalTemplate
-
-=head2 LoadGlobalTemplate NAME
-
-Load the global tempalte with the name NAME
-
-=cut
-
-sub LoadGlobalTemplate {
- my $self = shift;
- my $id = shift;
-
- return ( $self->LoadQueueTemplate( Queue => 0, Name => $id ) );
-}
-
-# }}}
-
-# {{{ sub LoadQueueTemplate
-
-=head2 LoadQueueTemplate (Queue => QUEUEID, Name => NAME)
-
-Loads the Queue template named NAME for Queue QUEUE.
-
-=cut
-
-sub LoadQueueTemplate {
- my $self = shift;
- my %args = (
- Queue => undef,
- Name => undef,
- @_
- );
-
- return ( $self->LoadByCols( Name => $args{'Name'}, Queue => $args{'Queue'} ) );
-
-}
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create
-
-Takes a paramhash of Content, Queue, Name and Description.
-Name should be a unique string identifying this Template.
-Description and Content should be the template's title and content.
-Queue should be 0 for a global template and the queue # for a queue-specific
-template.
-
-Returns the Template's id # if the create was successful. Returns undef for
-unknown database failure.
-
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = (
- Content => undef,
- Queue => 0,
- Description => '[no description]',
- Type => 'Action', #By default, template are 'Action' templates
- Name => undef,
- @_
- );
-
- if ( !$args{'Queue'} ) {
- unless ( $self->CurrentUser->HasRight(Right =>'ModifyTemplate', Object => $RT::System) ) {
- return (undef);
- }
- $args{'Queue'} = 0;
- }
- else {
- my $QueueObj = new RT::Queue( $self->CurrentUser );
- $QueueObj->Load( $args{'Queue'} ) || return ( 0, $self->loc('Invalid queue') );
-
- unless ( $QueueObj->CurrentUserHasRight('ModifyTemplate') ) {
- return (undef);
- }
- $args{'Queue'} = $QueueObj->Id;
- }
-
- my $result = $self->SUPER::Create(
- Content => $args{'Content'},
- Queue => $args{'Queue'},
- Description => $args{'Description'},
- Name => $args{'Name'}
- );
-
- return ($result);
-
-}
-
-# }}}
-
-# {{{ sub Delete
-
-=head2 Delete
-
-Delete this template.
-
-=cut
-
-sub Delete {
- my $self = shift;
-
- unless ( $self->CurrentUserHasQueueRight('ModifyTemplate') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
-
- return ( $self->SUPER::Delete(@_) );
-}
-
-# }}}
-
-# {{{ sub MIMEObj
-sub MIMEObj {
- my $self = shift;
- return ( $self->{'MIMEObj'} );
-}
-
-# }}}
-
-# {{{ sub Parse
-
-=head2 Parse
-
- This routine performs Text::Template parsing on the template and then
- imports the results into a MIME::Entity so we can really use it
-
- Takes a hash containing Argument, TicketObj, and TransactionObj.
-
- It returns a tuple of (val, message)
- If val is 0, the message contains an error message
-
-=cut
-
-sub Parse {
- my $self = shift;
-
- #We're passing in whatever we were passed. it's destined for _ParseContent
- my $content = $self->_ParseContent(@_);
-
- #Lets build our mime Entity
-
- my $parser = MIME::Parser->new();
-
- # On some situations TMPDIR is non-writable. sad but true.
- $parser->output_to_core(1);
- $parser->tmp_to_core(1);
-
- #If someone includes a message, don't extract it
- $parser->extract_nested_messages(1);
-
- # Set up the prefix for files with auto-generated names:
- $parser->output_prefix("part");
-
- # If content length is <= 50000 bytes, store each msg as in-core scalar;
- # Else, write to a disk file (the default action):
- $parser->output_to_core(50000);
-
- ### Should we forgive normally-fatal errors?
- $parser->ignore_errors(1);
- $self->{'MIMEObj'} = eval { $parser->parse_data($content) };
- my $error = ( $@ || $parser->last_error );
-
- if ($error) {
- $RT::Logger->error("$error");
- return ( 0, $error );
- }
-
- # Unfold all headers
- $self->{'MIMEObj'}->head->unfold();
-
- return ( 1, $self->loc("Template parsed") );
-
-}
-
-# }}}
-
-# {{{ sub _ParseContent
-
-# Perform Template substitutions on the template
-
-sub _ParseContent {
- my $self = shift;
- my %args = (
- Argument => undef,
- TicketObj => undef,
- TransactionObj => undef,
- @_
- );
-
- no warnings 'redefine';
- $T::Ticket = $args{'TicketObj'};
- $T::Transaction = $args{'TransactionObj'};
- $T::Argument = $args{'Argument'};
- $T::Requestor = eval { $T::Ticket->Requestors->UserMembersObj->First->Name };
- $T::rtname = $RT::rtname;
- *T::loc = sub { $T::Ticket->loc(@_) };
-
- # We need to untaint the content of the template, since we'll be working
- # with it
- my $content = $self->Content();
- $content =~ s/^(.*)$/$1/;
- my $template = Text::Template->new(
- TYPE => 'STRING',
- SOURCE => $content
- );
-
- my $is_broken = 0;
- my $retval = $template->fill_in( PACKAGE => 'T', BROKEN => sub {
- my (%args) = @_;
- $RT::Logger->error("Template parsing error: $args{error}")
- unless $args{error} =~ /^Died at /; # ignore intentional die()
- $is_broken++;
- return undef;
- } );
- return undef if $is_broken;
-
- # MIME::Parser has problems dealing with high-bit utf8 data.
- Encode::_utf8_off($retval);
- return ($retval);
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasQueueRight
-
-=head2 CurrentUserHasQueueRight
-
-Helper function to call the template's queue's CurrentUserHasQueueRight with the passed in args.
-
-=cut
-
-sub CurrentUserHasQueueRight {
- my $self = shift;
- return ( $self->QueueObj->CurrentUserHasRight(@_) );
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/RT/Templates.pm b/rt/lib/RT/Templates.pm
deleted file mode 100755
index 37db840..0000000
--- a/rt/lib/RT/Templates.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Templates -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Templates
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Templates;
-
-use RT::SearchBuilder;
-use RT::Template;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Templates';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Template item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Template->new($self->CurrentUser));
-}
-
- eval "require RT::Templates_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Templates_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Templates_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Templates_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Templates_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Templates_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Templates_Overlay, RT::Templates_Vendor, RT::Templates_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Templates_Overlay.pm b/rt/lib/RT/Templates_Overlay.pm
deleted file mode 100644
index f5e8ce5..0000000
--- a/rt/lib/RT/Templates_Overlay.pm
+++ /dev/null
@@ -1,202 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Templates - a collection of RT Template objects
-
-=head1 SYNOPSIS
-
- use RT::Templates;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok (require RT::Templates);
-
-=end testing
-
-=cut
-
-
-package RT::Templates;
-
-use strict;
-no warnings qw(redefine);
-
-
-# {{{ sub _Init
-
-=head2 _Init
-
- Returns RT::Templates specific init info like table and primary key names
-
-=cut
-
-sub _Init {
-
- my $self = shift;
- $self->{'table'} = "Templates";
- $self->{'primary_key'} = "id";
- return ($self->SUPER::_Init(@_));
-}
-# }}}
-
-# {{{ LimitToNotInQueue
-
-=head2 LimitToNotInQueue
-
-Takes a queue id # and limits the returned set of templates to those which
-aren't that queue's templates.
-
-=cut
-
-sub LimitToNotInQueue {
- my $self = shift;
- my $queue_id = shift;
- $self->Limit(FIELD => 'Queue',
- VALUE => "$queue_id",
- OPERATOR => '!='
- );
-}
-# }}}
-
-# {{{ LimitToGlobal
-
-=head2 LimitToGlobal
-
-Takes no arguments. Limits the returned set to "Global" templates
-which can be used with any queue.
-
-=cut
-
-sub LimitToGlobal {
- my $self = shift;
- my $queue_id = shift;
- $self->Limit(FIELD => 'Queue',
- VALUE => "0",
- OPERATOR => '='
- );
-}
-# }}}
-
-# {{{ LimitToQueue
-
-=head2 LimitToQueue
-
-Takes a queue id # and limits the returned set of templates to that queue's
-templates
-
-=cut
-
-sub LimitToQueue {
- my $self = shift;
- my $queue_id = shift;
- $self->Limit(FIELD => 'Queue',
- VALUE => "$queue_id",
- OPERATOR => '='
- );
-}
-# }}}
-
-# {{{ sub NewItem
-
-=head2 NewItem
-
-Returns a new empty Template object
-
-=cut
-
-sub NewItem {
- my $self = shift;
-
- use RT::Template;
- my $item = new RT::Template($self->CurrentUser);
- return($item);
-}
-# }}}
-
-# {{{ sub Next
-
-=head2 Next
-
-Returns the next template that this user can see.
-
-=cut
-
-sub Next {
- my $self = shift;
-
-
- my $templ = $self->SUPER::Next();
- if ((defined($templ)) and (ref($templ))) {
-
- # If it's part of a queue, and the user can read templates in
- # that queue, or the user can globally read templates, show it
- if ($templ->Queue && $templ->CurrentUserHasQueueRight('ShowTemplate') or
- $templ->CurrentUser->HasRight(Object => $RT::System, Right => 'ShowTemplate')) {
- return($templ);
- }
-
- #If the user doesn't have the right to show this template
- else {
- return($self->Next());
- }
- }
- #if there never was any template
- else {
- return(undef);
- }
-
-}
-# }}}
-
-1;
-
diff --git a/rt/lib/RT/Ticket.pm b/rt/lib/RT/Ticket.pm
deleted file mode 100755
index 2f075a2..0000000
--- a/rt/lib/RT/Ticket.pm
+++ /dev/null
@@ -1,662 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Ticket
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Ticket;
-use RT::Record;
-use RT::Queue;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Tickets');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'EffectiveId'.
- int(11) 'Queue'.
- varchar(16) 'Type'.
- int(11) 'IssueStatement'.
- int(11) 'Resolution'.
- int(11) 'Owner'.
- varchar(200) 'Subject' defaults to '[no subject]'.
- int(11) 'InitialPriority'.
- int(11) 'FinalPriority'.
- int(11) 'Priority'.
- int(11) 'TimeEstimated'.
- int(11) 'TimeWorked'.
- varchar(10) 'Status'.
- int(11) 'TimeLeft'.
- datetime 'Told'.
- datetime 'Starts'.
- datetime 'Started'.
- datetime 'Due'.
- datetime 'Resolved'.
- smallint(6) 'Disabled'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- EffectiveId => '0',
- Queue => '0',
- Type => '',
- IssueStatement => '0',
- Resolution => '0',
- Owner => '0',
- Subject => '[no subject]',
- InitialPriority => '0',
- FinalPriority => '0',
- Priority => '0',
- TimeEstimated => '0',
- TimeWorked => '0',
- Status => '',
- TimeLeft => '0',
- Told => '',
- Starts => '',
- Started => '',
- Due => '',
- Resolved => '',
- Disabled => '0',
-
- @_);
- $self->SUPER::Create(
- EffectiveId => $args{'EffectiveId'},
- Queue => $args{'Queue'},
- Type => $args{'Type'},
- IssueStatement => $args{'IssueStatement'},
- Resolution => $args{'Resolution'},
- Owner => $args{'Owner'},
- Subject => $args{'Subject'},
- InitialPriority => $args{'InitialPriority'},
- FinalPriority => $args{'FinalPriority'},
- Priority => $args{'Priority'},
- TimeEstimated => $args{'TimeEstimated'},
- TimeWorked => $args{'TimeWorked'},
- Status => $args{'Status'},
- TimeLeft => $args{'TimeLeft'},
- Told => $args{'Told'},
- Starts => $args{'Starts'},
- Started => $args{'Started'},
- Due => $args{'Due'},
- Resolved => $args{'Resolved'},
- Disabled => $args{'Disabled'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item EffectiveId
-
-Returns the current value of EffectiveId.
-(In the database, EffectiveId is stored as int(11).)
-
-
-
-=item SetEffectiveId VALUE
-
-
-Set EffectiveId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, EffectiveId will be stored as a int(11).)
-
-
-=cut
-
-
-=item Queue
-
-Returns the current value of Queue.
-(In the database, Queue is stored as int(11).)
-
-
-
-=item SetQueue VALUE
-
-
-Set Queue to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Queue will be stored as a int(11).)
-
-
-=cut
-
-
-=item QueueObj
-
-Returns the Queue Object which has the id returned by Queue
-
-
-=cut
-
-sub QueueObj {
- my $self = shift;
- my $Queue = RT::Queue->new($self->CurrentUser);
- $Queue->Load($self->__Value('Queue'));
- return($Queue);
-}
-
-=item Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(16).)
-
-
-
-=item SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item IssueStatement
-
-Returns the current value of IssueStatement.
-(In the database, IssueStatement is stored as int(11).)
-
-
-
-=item SetIssueStatement VALUE
-
-
-Set IssueStatement to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, IssueStatement will be stored as a int(11).)
-
-
-=cut
-
-
-=item Resolution
-
-Returns the current value of Resolution.
-(In the database, Resolution is stored as int(11).)
-
-
-
-=item SetResolution VALUE
-
-
-Set Resolution to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Resolution will be stored as a int(11).)
-
-
-=cut
-
-
-=item Owner
-
-Returns the current value of Owner.
-(In the database, Owner is stored as int(11).)
-
-
-
-=item SetOwner VALUE
-
-
-Set Owner to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Owner will be stored as a int(11).)
-
-
-=cut
-
-
-=item Subject
-
-Returns the current value of Subject.
-(In the database, Subject is stored as varchar(200).)
-
-
-
-=item SetSubject VALUE
-
-
-Set Subject to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Subject will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item InitialPriority
-
-Returns the current value of InitialPriority.
-(In the database, InitialPriority is stored as int(11).)
-
-
-
-=item SetInitialPriority VALUE
-
-
-Set InitialPriority to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, InitialPriority will be stored as a int(11).)
-
-
-=cut
-
-
-=item FinalPriority
-
-Returns the current value of FinalPriority.
-(In the database, FinalPriority is stored as int(11).)
-
-
-
-=item SetFinalPriority VALUE
-
-
-Set FinalPriority to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, FinalPriority will be stored as a int(11).)
-
-
-=cut
-
-
-=item Priority
-
-Returns the current value of Priority.
-(In the database, Priority is stored as int(11).)
-
-
-
-=item SetPriority VALUE
-
-
-Set Priority to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Priority will be stored as a int(11).)
-
-
-=cut
-
-
-=item TimeEstimated
-
-Returns the current value of TimeEstimated.
-(In the database, TimeEstimated is stored as int(11).)
-
-
-
-=item SetTimeEstimated VALUE
-
-
-Set TimeEstimated to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TimeEstimated will be stored as a int(11).)
-
-
-=cut
-
-
-=item TimeWorked
-
-Returns the current value of TimeWorked.
-(In the database, TimeWorked is stored as int(11).)
-
-
-
-=item SetTimeWorked VALUE
-
-
-Set TimeWorked to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TimeWorked will be stored as a int(11).)
-
-
-=cut
-
-
-=item Status
-
-Returns the current value of Status.
-(In the database, Status is stored as varchar(10).)
-
-
-
-=item SetStatus VALUE
-
-
-Set Status to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Status will be stored as a varchar(10).)
-
-
-=cut
-
-
-=item TimeLeft
-
-Returns the current value of TimeLeft.
-(In the database, TimeLeft is stored as int(11).)
-
-
-
-=item SetTimeLeft VALUE
-
-
-Set TimeLeft to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TimeLeft will be stored as a int(11).)
-
-
-=cut
-
-
-=item Told
-
-Returns the current value of Told.
-(In the database, Told is stored as datetime.)
-
-
-
-=item SetTold VALUE
-
-
-Set Told to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Told will be stored as a datetime.)
-
-
-=cut
-
-
-=item Starts
-
-Returns the current value of Starts.
-(In the database, Starts is stored as datetime.)
-
-
-
-=item SetStarts VALUE
-
-
-Set Starts to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Starts will be stored as a datetime.)
-
-
-=cut
-
-
-=item Started
-
-Returns the current value of Started.
-(In the database, Started is stored as datetime.)
-
-
-
-=item SetStarted VALUE
-
-
-Set Started to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Started will be stored as a datetime.)
-
-
-=cut
-
-
-=item Due
-
-Returns the current value of Due.
-(In the database, Due is stored as datetime.)
-
-
-
-=item SetDue VALUE
-
-
-Set Due to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Due will be stored as a datetime.)
-
-
-=cut
-
-
-=item Resolved
-
-Returns the current value of Resolved.
-(In the database, Resolved is stored as datetime.)
-
-
-
-=item SetResolved VALUE
-
-
-Set Resolved to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Resolved will be stored as a datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item Disabled
-
-Returns the current value of Disabled.
-(In the database, Disabled is stored as smallint(6).)
-
-
-
-=item SetDisabled VALUE
-
-
-Set Disabled to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Disabled will be stored as a smallint(6).)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- EffectiveId =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Queue =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Type =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- IssueStatement =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Resolution =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Owner =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Subject =>
- {read => 1, write => 1, type => 'varchar(200)', default => '[no subject]'},
- InitialPriority =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- FinalPriority =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Priority =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- TimeEstimated =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- TimeWorked =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Status =>
- {read => 1, write => 1, type => 'varchar(10)', default => ''},
- TimeLeft =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Told =>
- {read => 1, write => 1, type => 'datetime', default => ''},
- Starts =>
- {read => 1, write => 1, type => 'datetime', default => ''},
- Started =>
- {read => 1, write => 1, type => 'datetime', default => ''},
- Due =>
- {read => 1, write => 1, type => 'datetime', default => ''},
- Resolved =>
- {read => 1, write => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- Disabled =>
- {read => 1, write => 1, type => 'smallint(6)', default => '0'},
-
- }
-};
-
-
- eval "require RT::Ticket_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Ticket_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Ticket_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Ticket_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Ticket_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Ticket_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Ticket_Overlay, RT::Ticket_Vendor, RT::Ticket_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Ticket_Overlay.pm b/rt/lib/RT/Ticket_Overlay.pm
deleted file mode 100644
index d04ecec..0000000
--- a/rt/lib/RT/Ticket_Overlay.pm
+++ /dev/null
@@ -1,3740 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# {{{ Front Material
-
-=head1 SYNOPSIS
-
- use RT::Ticket;
- my $ticket = new RT::Ticket($CurrentUser);
- $ticket->Load($ticket_id);
-
-=head1 DESCRIPTION
-
-This module lets you manipulate RT\'s ticket object.
-
-
-=head1 METHODS
-
-=begin testing
-
-use_ok ( RT::Queue);
-ok(my $testqueue = RT::Queue->new($RT::SystemUser));
-ok($testqueue->Create( Name => 'ticket tests'));
-ok($testqueue->Id != 0);
-use_ok(RT::CustomField);
-ok(my $testcf = RT::CustomField->new($RT::SystemUser));
-my ($ret, $cmsg) = $testcf->Create( Name => 'selectmulti',
- Queue => $testqueue->id,
- Type => 'SelectMultiple');
-ok($ret,"Created the custom field - ".$cmsg);
-($ret,$cmsg) = $testcf->AddValue ( Name => 'Value1',
- SortOrder => '1',
- Description => 'A testing value');
-
-ok($ret, "Added a value - ".$cmsg);
-
-ok($testcf->AddValue ( Name => 'Value2',
- SortOrder => '2',
- Description => 'Another testing value'));
-ok($testcf->AddValue ( Name => 'Value3',
- SortOrder => '3',
- Description => 'Yet Another testing value'));
-
-ok($testcf->Values->Count == 3);
-
-use_ok(RT::Ticket);
-
-my $u = RT::User->new($RT::SystemUser);
-$u->Load("root");
-ok ($u->Id, "Found the root user");
-ok(my $t = RT::Ticket->new($RT::SystemUser));
-ok(my ($id, $msg) = $t->Create( Queue => $testqueue->Id,
- Subject => 'Testing',
- Owner => $u->Id
- ));
-ok($id != 0);
-ok ($t->OwnerObj->Id == $u->Id, "Root is the ticket owner");
-ok(my ($cfv, $cfm) =$t->AddCustomFieldValue(Field => $testcf->Id,
- Value => 'Value1'));
-ok($cfv != 0, "Custom field creation didn't return an error: $cfm");
-ok($t->CustomFieldValues($testcf->Id)->Count == 1);
-ok($t->CustomFieldValues($testcf->Id)->First &&
- $t->CustomFieldValues($testcf->Id)->First->Content eq 'Value1');;
-
-ok(my ($cfdv, $cfdm) = $t->DeleteCustomFieldValue(Field => $testcf->Id,
- Value => 'Value1'));
-ok ($cfdv != 0, "Deleted a custom field value: $cfdm");
-ok($t->CustomFieldValues($testcf->Id)->Count == 0);
-
-ok(my $t2 = RT::Ticket->new($RT::SystemUser));
-ok($t2->Load($id));
-is($t2->Subject, 'Testing');
-is($t2->QueueObj->Id, $testqueue->id);
-ok($t2->OwnerObj->Id == $u->Id);
-
-my $t3 = RT::Ticket->new($RT::SystemUser);
-my ($id3, $msg3) = $t3->Create( Queue => $testqueue->Id,
- Subject => 'Testing',
- Owner => $u->Id);
-my ($cfv1, $cfm1) = $t->AddCustomFieldValue(Field => $testcf->Id,
- Value => 'Value1');
-ok($cfv1 != 0, "Adding a custom field to ticket 1 is successful: $cfm");
-my ($cfv2, $cfm2) = $t3->AddCustomFieldValue(Field => $testcf->Id,
- Value => 'Value2');
-ok($cfv2 != 0, "Adding a custom field to ticket 2 is successful: $cfm");
-my ($cfv3, $cfm3) = $t->AddCustomFieldValue(Field => $testcf->Id,
- Value => 'Value3');
-ok($cfv3 != 0, "Adding a custom field to ticket 1 is successful: $cfm");
-ok($t->CustomFieldValues($testcf->Id)->Count == 2,
- "This ticket has 2 custom field values");
-ok($t3->CustomFieldValues($testcf->Id)->Count == 1,
- "This ticket has 1 custom field value");
-
-=end testing
-
-=cut
-
-
-package RT::Ticket;
-
-use strict;
-no warnings qw(redefine);
-
-use RT::Queue;
-use RT::User;
-use RT::Record;
-use RT::Links;
-use RT::Date;
-use RT::CustomFields;
-use RT::Tickets;
-use RT::Transactions;
-use RT::URI::fsck_com_rt;
-use RT::URI;
-use MIME::Entity;
-
-=begin testing
-
-
-ok(require RT::Ticket, "Loading the RT::Ticket library");
-
-=end testing
-
-=cut
-
-# }}}
-
-# {{{ LINKTYPEMAP
-# A helper table for links mapping to make it easier
-# to build and parse links between tickets
-
-use vars '%LINKTYPEMAP';
-
-%LINKTYPEMAP = (
- MemberOf => { Type => 'MemberOf',
- Mode => 'Target', },
- Parents => { Type => 'MemberOf',
- Mode => 'Target', },
- Members => { Type => 'MemberOf',
- Mode => 'Base', },
- Children => { Type => 'MemberOf',
- Mode => 'Base', },
- HasMember => { Type => 'MemberOf',
- Mode => 'Base', },
- RefersTo => { Type => 'RefersTo',
- Mode => 'Target', },
- ReferredToBy => { Type => 'RefersTo',
- Mode => 'Base', },
- DependsOn => { Type => 'DependsOn',
- Mode => 'Target', },
- DependedOnBy => { Type => 'DependsOn',
- Mode => 'Base', },
- MergedInto => { Type => 'MergedInto',
- Mode => 'Target', },
-
-);
-
-# }}}
-
-# {{{ LINKDIRMAP
-# A helper table for links mapping to make it easier
-# to build and parse links between tickets
-
-use vars '%LINKDIRMAP';
-
-%LINKDIRMAP = (
- MemberOf => { Base => 'MemberOf',
- Target => 'HasMember', },
- RefersTo => { Base => 'RefersTo',
- Target => 'ReferredToBy', },
- DependsOn => { Base => 'DependsOn',
- Target => 'DependedOnBy', },
- MergedInto => { Base => 'MergedInto',
- Target => 'MergedInto', },
-
-);
-
-# }}}
-
-sub LINKTYPEMAP { return \%LINKTYPEMAP }
-sub LINKDIRMAP { return \%LINKDIRMAP }
-
-# {{{ sub Load
-
-=head2 Load
-
-Takes a single argument. This can be a ticket id, ticket alias or
-local ticket uri. If the ticket can't be loaded, returns undef.
-Otherwise, returns the ticket id.
-
-=cut
-
-sub Load {
- my $self = shift;
- my $id = shift;
-
- #TODO modify this routine to look at EffectiveId and do the recursive load
- # thing. be careful to cache all the interim tickets we try so we don't loop forever.
-
-
- #If it's a local URI, turn it into a ticket id
- if ( $id =~ /^$RT::TicketBaseURI(\d+)$/ ) {
- $id = $1;
- }
-
- #If it's a remote URI, we're going to punt for now
- elsif ( $id =~ '://' ) {
- return (undef);
- }
-
- #If we have an integer URI, load the ticket
- if ( $id =~ /^\d+$/ ) {
- my ($ticketid,$msg) = $self->LoadById($id);
-
- unless ($self->Id) {
- $RT::Logger->crit("$self tried to load a bogus ticket: $id\n");
- return (undef);
- }
- }
-
- #It's not a URI. It's not a numerical ticket ID. Punt!
- else {
- $RT::Logger->warning("Tried to load a bogus ticket id: '$id'");
- return (undef);
- }
-
- #If we're merged, resolve the merge.
- if ( ( $self->EffectiveId ) and ( $self->EffectiveId != $self->Id ) ) {
- $RT::Logger->debug ("We found a merged ticket.". $self->id ."/".$self->EffectiveId);
- return ( $self->Load( $self->EffectiveId ) );
- }
-
- #Ok. we're loaded. lets get outa here.
- return ( $self->Id );
-
-}
-
-# }}}
-
-# {{{ sub LoadByURI
-
-=head2 LoadByURI
-
-Given a local ticket URI, loads the specified ticket.
-
-=cut
-
-sub LoadByURI {
- my $self = shift;
- my $uri = shift;
-
- if ( $uri =~ /^$RT::TicketBaseURI(\d+)$/ ) {
- my $id = $1;
- return ( $self->Load($id) );
- }
- else {
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create (ARGS)
-
-Arguments: ARGS is a hash of named parameters. Valid parameters are:
-
- id
- Queue - Either a Queue object or a Queue Name
- Requestor - A reference to a list of email addresses or RT user Names
- Cc - A reference to a list of email addresses or Names
- AdminCc - A reference to a list of email addresses or Names
- Type -- The ticket\'s type. ignore this for now
- Owner -- This ticket\'s owner. either an RT::User object or this user\'s id
- Subject -- A string describing the subject of the ticket
- Priority -- an integer from 0 to 99
- InitialPriority -- an integer from 0 to 99
- FinalPriority -- an integer from 0 to 99
- Status -- any valid status (Defined in RT::Queue)
- TimeEstimated -- an integer. estimated time for this task in minutes
- TimeWorked -- an integer. time worked so far in minutes
- TimeLeft -- an integer. time remaining in minutes
- Starts -- an ISO date describing the ticket\'s start date and time in GMT
- Due -- an ISO date describing the ticket\'s due date and time in GMT
- MIMEObj -- a MIME::Entity object with the content of the initial ticket request.
- CustomField-<n> -- a scalar or array of values for the customfield with the id <n>
-
-
-Returns: TICKETID, Transaction Object, Error Message
-
-
-=begin testing
-
-my $t = RT::Ticket->new($RT::SystemUser);
-
-ok( $t->Create(Queue => 'General', Due => '2002-05-21 00:00:00', ReferredToBy => 'http://www.cpan.org', RefersTo => 'http://fsck.com', Subject => 'This is a subject'), "Ticket Created");
-
-ok ( my $id = $t->Id, "Got ticket id");
-ok ($t->RefersTo->First->Target =~ /fsck.com/, "Got refers to");
-ok ($t->ReferredToBy->First->Base =~ /cpan.org/, "Got referredtoby");
-ok ($t->ResolvedObj->Unix == -1, "It hasn't been resolved - ". $t->ResolvedObj->Unix);
-
-=end testing
-
-=cut
-
-sub Create {
- my $self = shift;
-
- my %args = (
- id => undef,
- EffectiveId => undef,
- Queue => undef,
- Requestor => undef,
- Cc => undef,
- AdminCc => undef,
- Type => 'ticket',
- Owner => undef,
- Subject => '',
- InitialPriority => undef,
- FinalPriority => undef,
- Priority => undef,
- Status => 'new',
- TimeWorked => "0",
- TimeLeft => 0,
- TimeEstimated => 0,
- Due => undef,
- Starts => undef,
- Started => undef,
- Resolved => undef,
- MIMEObj => undef,
- _RecordTransaction => 1,
- @_
- );
-
- my ( $ErrStr, $Owner, $resolved );
- my (@non_fatal_errors);
-
- my $QueueObj = RT::Queue->new($RT::SystemUser);
-
- if ( ( defined( $args{'Queue'} ) ) && ( !ref( $args{'Queue'} ) ) ) {
- $QueueObj->Load( $args{'Queue'} );
- }
- elsif ( ref( $args{'Queue'} ) eq 'RT::Queue' ) {
- $QueueObj->Load( $args{'Queue'}->Id );
- }
- else {
- $RT::Logger->debug( $args{'Queue'} . " not a recognised queue object." );
- }
-
- #Can't create a ticket without a queue.
- unless ( defined($QueueObj) && $QueueObj->Id ) {
- $RT::Logger->debug("$self No queue given for ticket creation.");
- return ( 0, 0, $self->loc('Could not create ticket. Queue not set') );
- }
-
- #Now that we have a queue, Check the ACLS
- unless (
- $self->CurrentUser->HasRight(
- Right => 'CreateTicket',
- Object => $QueueObj
- )
- )
- {
- return (
- 0, 0,
- $self->loc( "No permission to create tickets in the queue '[_1]'", $QueueObj->Name));
- }
-
- unless ( $QueueObj->IsValidStatus( $args{'Status'} ) ) {
- return ( 0, 0, $self->loc('Invalid value for status') );
- }
-
- #Since we have a queue, we can set queue defaults
- #Initial Priority
-
- # If there's no queue default initial priority and it's not set, set it to 0
- $args{'InitialPriority'} = ( $QueueObj->InitialPriority || 0 )
- unless ( $args{'InitialPriority'} );
-
- #Final priority
-
- # If there's no queue default final priority and it's not set, set it to 0
- $args{'FinalPriority'} = ( $QueueObj->FinalPriority || 0 )
- unless ( $args{'FinalPriority'} );
-
- # Priority may have changed from InitialPriority, for the case
- # where we're importing tickets (eg, from an older RT version.)
- my $priority = $args{'Priority'} || $args{'InitialPriority'};
-
- # {{{ Dates
- #TODO we should see what sort of due date we're getting, rather +
- # than assuming it's in ISO format.
-
- #Set the due date. if we didn't get fed one, use the queue default due in
- my $Due = new RT::Date( $self->CurrentUser );
-
- if ( $args{'Due'} ) {
- $Due->Set( Format => 'ISO', Value => $args{'Due'} );
- }
- elsif ( $QueueObj->DefaultDueIn ) {
- $Due->SetToNow;
- $Due->AddDays( $QueueObj->DefaultDueIn );
- }
-
- my $Starts = new RT::Date( $self->CurrentUser );
- if ( defined $args{'Starts'} ) {
- $Starts->Set( Format => 'ISO', Value => $args{'Starts'} );
- }
-
- my $Started = new RT::Date( $self->CurrentUser );
- if ( defined $args{'Started'} ) {
- $Started->Set( Format => 'ISO', Value => $args{'Started'} );
- }
-
- my $Resolved = new RT::Date( $self->CurrentUser );
- if ( defined $args{'Resolved'} ) {
- $Resolved->Set( Format => 'ISO', Value => $args{'Resolved'} );
- }
-
- #If the status is an inactive status, set the resolved date
- if ( $QueueObj->IsInactiveStatus( $args{'Status'} ) && !$args{'Resolved'} )
- {
- $RT::Logger->debug( "Got a "
- . $args{'Status'}
- . "ticket with a resolved of "
- . $args{'Resolved'} );
- $Resolved->SetToNow;
- }
-
- # }}}
-
- # {{{ Dealing with time fields
-
- $args{'TimeEstimated'} = 0 unless defined $args{'TimeEstimated'};
- $args{'TimeWorked'} = 0 unless defined $args{'TimeWorked'};
- $args{'TimeLeft'} = 0 unless defined $args{'TimeLeft'};
-
- # }}}
-
- # {{{ Deal with setting the owner
-
- if ( ref( $args{'Owner'} ) eq 'RT::User' ) {
- $Owner = $args{'Owner'};
- }
-
- #If we've been handed something else, try to load the user.
- elsif ( $args{'Owner'} ) {
- $Owner = RT::User->new( $self->CurrentUser );
- $Owner->Load( $args{'Owner'} );
-
- push( @non_fatal_errors,
- $self->loc("Owner could not be set.") . " "
- . $self->loc( "User '[_1]' could not be found.", $args{'Owner'} )
- )
- unless ( $Owner->Id );
- }
-
- #If we have a proposed owner and they don't have the right
- #to own a ticket, scream about it and make them not the owner
- if (
- ( defined($Owner) )
- and ( $Owner->Id )
- and ( $Owner->Id != $RT::Nobody->Id )
- and (
- !$Owner->HasRight(
- Object => $QueueObj,
- Right => 'OwnTicket'
- )
- )
- )
- {
-
- $RT::Logger->warning( "User "
- . $Owner->Name . "("
- . $Owner->id
- . ") was proposed "
- . "as a ticket owner but has no rights to own "
- . "tickets in "
- . $QueueObj->Name );
-
- push @non_fatal_errors,
- $self->loc( "Owner '[_1]' does not have rights to own this ticket.",
- $Owner->Name
- );
-
- $Owner = undef;
- }
-
- #If we haven't been handed a valid owner, make it nobody.
- unless ( defined($Owner) && $Owner->Id ) {
- $Owner = new RT::User( $self->CurrentUser );
- $Owner->Load( $RT::Nobody->Id );
- }
-
- # }}}
-
-# We attempt to load or create each of the people who might have a role for this ticket
-# _outside_ the transaction, so we don't get into ticket creation races
- foreach my $type ( "Cc", "AdminCc", "Requestor" ) {
- next unless ( defined $args{$type} );
- foreach my $watcher (
- ref( $args{$type} ) ? @{ $args{$type} } : ( $args{$type} ) )
- {
- my $user = RT::User->new($RT::SystemUser);
- $user->LoadOrCreateByEmail($watcher)
- if ( $watcher && $watcher !~ /^\d+$/ );
- }
- }
-
- $RT::Handle->BeginTransaction();
-
- my %params = (
- Queue => $QueueObj->Id,
- Owner => $Owner->Id,
- Subject => $args{'Subject'},
- InitialPriority => $args{'InitialPriority'},
- FinalPriority => $args{'FinalPriority'},
- Priority => $priority,
- Status => $args{'Status'},
- TimeWorked => $args{'TimeWorked'},
- TimeEstimated => $args{'TimeEstimated'},
- TimeLeft => $args{'TimeLeft'},
- Type => $args{'Type'},
- Starts => $Starts->ISO,
- Started => $Started->ISO,
- Resolved => $Resolved->ISO,
- Due => $Due->ISO
- );
-
-# Parameters passed in during an import that we probably don't want to touch, otherwise
- foreach my $attr qw(id Creator Created LastUpdated LastUpdatedBy) {
- $params{$attr} = $args{$attr} if ( $args{$attr} );
- }
-
- # Delete null integer parameters
- foreach my $attr
- qw(TimeWorked TimeLeft TimeEstimated InitialPriority FinalPriority) {
- delete $params{$attr}
- unless ( exists $params{$attr} && $params{$attr} );
- }
-
- # Delete the time worked if we're counting it in the transaction
- delete $params{TimeWorked} if $args{'_RecordTransaction'};
-
- my ($id,$ticket_message) = $self->SUPER::Create( %params);
- unless ($id) {
- $RT::Logger->crit( "Couldn't create a ticket: " . $ticket_message );
- $RT::Handle->Rollback();
- return ( 0, 0,
- $self->loc("Ticket could not be created due to an internal error")
- );
- }
-
- #Set the ticket's effective ID now that we've created it.
- my ( $val, $msg ) = $self->__Set(
- Field => 'EffectiveId',
- Value => ( $args{'EffectiveId'} || $id )
- );
-
- unless ($val) {
- $RT::Logger->crit("$self ->Create couldn't set EffectiveId: $msg\n");
- $RT::Handle->Rollback();
- return ( 0, 0,
- $self->loc("Ticket could not be created due to an internal error")
- );
- }
-
- my $create_groups_ret = $self->_CreateTicketGroups();
- unless ($create_groups_ret) {
- $RT::Logger->crit( "Couldn't create ticket groups for ticket "
- . $self->Id
- . ". aborting Ticket creation." );
- $RT::Handle->Rollback();
- return ( 0, 0,
- $self->loc("Ticket could not be created due to an internal error")
- );
- }
-
-# Set the owner in the Groups table
-# We denormalize it into the Ticket table too because doing otherwise would
-# kill performance, bigtime. It gets kept in lockstep thanks to the magic of transactionalization
-
- $self->OwnerGroup->_AddMember(
- PrincipalId => $Owner->PrincipalId,
- InsideTransaction => 1
- );
-
- # {{{ Deal with setting up watchers
-
- foreach my $type ( "Cc", "AdminCc", "Requestor" ) {
- next unless ( defined $args{$type} );
- foreach my $watcher (
- ref( $args{$type} ) ? @{ $args{$type} } : ( $args{$type} ) )
- {
-
- # If there is an empty entry in the list, let's get out of here.
- next unless $watcher;
-
- # we reason that all-digits number must be a principal id, not email
- # this is the only way to can add
- my $field = 'Email';
- $field = 'PrincipalId' if $watcher =~ /^\d+$/;
-
- my ( $wval, $wmsg );
-
- if ( $type eq 'AdminCc' ) {
-
- # Note that we're using AddWatcher, rather than _AddWatcher, as we
- # actually _want_ that ACL check. Otherwise, random ticket creators
- # could make themselves adminccs and maybe get ticket rights. that would
- # be poor
- ( $wval, $wmsg ) = $self->AddWatcher(
- Type => $type,
- $field => $watcher,
- Silent => 1
- );
- }
- else {
- ( $wval, $wmsg ) = $self->_AddWatcher(
- Type => $type,
- $field => $watcher,
- Silent => 1
- );
- }
-
- push @non_fatal_errors, $wmsg unless ($wval);
- }
- }
-
- # }}}
- # {{{ Deal with setting up links
-
- foreach my $type ( keys %LINKTYPEMAP ) {
- next unless ( defined $args{$type} );
- foreach my $link (
- ref( $args{$type} ) ? @{ $args{$type} } : ( $args{$type} ) )
- {
- my ( $wval, $wmsg ) = $self->_AddLink(
- Type => $LINKTYPEMAP{$type}->{'Type'},
- $LINKTYPEMAP{$type}->{'Mode'} => $link,
- Silent => 1
- );
-
- push @non_fatal_errors, $wmsg unless ($wval);
- }
- }
-
- # }}}
-
- # {{{ Add all the custom fields
-
- foreach my $arg ( keys %args ) {
- next unless ( $arg =~ /^CustomField-(\d+)$/i );
- my $cfid = $1;
- foreach
- my $value ( UNIVERSAL::isa( $args{$arg} => 'ARRAY' ) ? @{ $args{$arg} } : ( $args{$arg} ) )
- {
- next unless ( length($value) );
-
- # Allow passing in uploaded LargeContent etc by hash reference
- $self->_AddCustomFieldValue(
- (UNIVERSAL::isa( $value => 'HASH' )
- ? %$value
- : (Value => $value)
- ),
- Field => $cfid,
- RecordTransaction => 0,
- );
- }
- }
-
- # }}}
-
- if ( $args{'_RecordTransaction'} ) {
-
- # {{{ Add a transaction for the create
- my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction(
- Type => "Create",
- TimeTaken => $args{'TimeWorked'},
- MIMEObj => $args{'MIMEObj'}
- );
-
- if ( $self->Id && $Trans ) {
-
- $TransObj->UpdateCustomFields(ARGSRef => \%args);
-
- $RT::Logger->info( "Ticket " . $self->Id . " created in queue '" . $QueueObj->Name . "' by " . $self->CurrentUser->Name );
- $ErrStr = $self->loc( "Ticket [_1] created in queue '[_2]'", $self->Id, $QueueObj->Name );
- $ErrStr = join( "\n", $ErrStr, @non_fatal_errors );
- }
- else {
- $RT::Handle->Rollback();
-
- $ErrStr = join( "\n", $ErrStr, @non_fatal_errors );
- $RT::Logger->error("Ticket couldn't be created: $ErrStr");
- return ( 0, 0, $self->loc( "Ticket could not be created due to an internal error"));
- }
-
- $RT::Handle->Commit();
- return ( $self->Id, $TransObj->Id, $ErrStr );
-
- # }}}
- }
- else {
-
- # Not going to record a transaction
- $RT::Handle->Commit();
- $ErrStr = $self->loc( "Ticket [_1] created in queue '[_2]'", $self->Id, $QueueObj->Name );
- $ErrStr = join( "\n", $ErrStr, @non_fatal_errors );
- return ( $self->Id, $0, $ErrStr );
-
- }
-}
-
-
-# }}}
-
-
-# {{{ UpdateFrom822
-
-=head2 UpdateFrom822 $MESSAGE
-
-Takes an RFC822 format message as a string and uses it to make a bunch of changes to a ticket.
-Returns an um. ask me again when the code exists
-
-
-=begin testing
-
-my $simple_update = <<EOF;
-Subject: target
-AddRequestor: jesse\@example.com
-EOF
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($id,$msg) =$ticket->Create(Subject => 'first', Queue => 'general');
-ok($ticket->Id, "Created the test ticket - ".$id ." - ".$msg);
-$ticket->UpdateFrom822($simple_update);
-is($ticket->Subject, 'target', "changed the subject");
-my $jesse = RT::User->new($RT::SystemUser);
-$jesse->LoadByEmail('jesse@example.com');
-ok ($jesse->Id, "There's a user for jesse");
-ok($ticket->Requestors->HasMember( $jesse->PrincipalObj), "It has the jesse principal object as a requestor ");
-
-=end testing
-
-
-=cut
-
-sub UpdateFrom822 {
- my $self = shift;
- my $content = shift;
- my %args = $self->_Parse822HeadersForAttributes($content);
-
-
- my %ticketargs = (
- Queue => $args{'queue'},
- Subject => $args{'subject'},
- Status => $args{'status'},
- Due => $args{'due'},
- Starts => $args{'starts'},
- Started => $args{'started'},
- Resolved => $args{'resolved'},
- Owner => $args{'owner'},
- Requestor => $args{'requestor'},
- Cc => $args{'cc'},
- AdminCc => $args{'admincc'},
- TimeWorked => $args{'timeworked'},
- TimeEstimated => $args{'timeestimated'},
- TimeLeft => $args{'timeleft'},
- InitialPriority => $args{'initialpriority'},
- Priority => $args{'priority'},
- FinalPriority => $args{'finalpriority'},
- Type => $args{'type'},
- DependsOn => $args{'dependson'},
- DependedOnBy => $args{'dependedonby'},
- RefersTo => $args{'refersto'},
- ReferredToBy => $args{'referredtoby'},
- Members => $args{'members'},
- MemberOf => $args{'memberof'},
- MIMEObj => $args{'mimeobj'}
- );
-
- foreach my $type qw(Requestor Cc Admincc) {
-
- foreach my $action ( 'Add', 'Del', '' ) {
-
- my $lctag = lc($action) . lc($type);
- foreach my $list ( $args{$lctag}, $args{ $lctag . 's' } ) {
-
- foreach my $entry ( ref($list) ? @{$list} : ($list) ) {
- push @{$ticketargs{ $action . $type }} , split ( /\s*,\s*/, $entry );
- }
-
- }
-
- # Todo: if we're given an explicit list, transmute it into a list of adds/deletes
-
- }
- }
-
- # Add custom field entries to %ticketargs.
- # TODO: allow named custom fields
- map {
- /^customfield-(\d+)$/
- && ( $ticketargs{ "CustomField-" . $1 } = $args{$_} );
- } keys(%args);
-
-# for each ticket we've been told to update, iterate through the set of
-# rfc822 headers and perform that update to the ticket.
-
-
- # {{{ Set basic fields
- my @attribs = qw(
- Subject
- FinalPriority
- Priority
- TimeEstimated
- TimeWorked
- TimeLeft
- Status
- Queue
- Type
- );
-
-
- # Resolve the queue from a name to a numeric id.
- if ( $ticketargs{'Queue'} and ( $ticketargs{'Queue'} !~ /^(\d+)$/ ) ) {
- my $tempqueue = RT::Queue->new($RT::SystemUser);
- $tempqueue->Load( $ticketargs{'Queue'} );
- $ticketargs{'Queue'} = $tempqueue->Id() if ( $tempqueue->id );
- }
-
- my @results;
-
- foreach my $attribute (@attribs) {
- my $value = $ticketargs{$attribute};
-
- if ( $value ne $self->$attribute() ) {
-
- my $method = "Set$attribute";
- my ( $code, $msg ) = $self->$method($value);
-
- push @results, $self->loc($attribute) . ': ' . $msg;
-
- }
- }
-
- # We special case owner changing, so we can use ForceOwnerChange
- if ( $ticketargs{'Owner'} && ( $self->Owner != $ticketargs{'Owner'} ) ) {
- my $ChownType = "Give";
- $ChownType = "Force" if ( $ticketargs{'ForceOwnerChange'} );
-
- my ( $val, $msg ) = $self->SetOwner( $ticketargs{'Owner'}, $ChownType );
- push ( @results, $msg );
- }
-
- # }}}
-# Deal with setting watchers
-
-
-# Acceptable arguments:
-# Requestor
-# Requestors
-# AddRequestor
-# AddRequestors
-# DelRequestor
-
- foreach my $type qw(Requestor Cc AdminCc) {
-
- # If we've been given a number of delresses to del, do it.
- foreach my $address (@{$ticketargs{'Del'.$type}}) {
- my ($id, $msg) = $self->DeleteWatcher( Type => $type, Email => $address);
- push (@results, $msg) ;
- }
-
- # If we've been given a number of addresses to add, do it.
- foreach my $address (@{$ticketargs{'Add'.$type}}) {
- $RT::Logger->debug("Adding $address as a $type");
- my ($id, $msg) = $self->AddWatcher( Type => $type, Email => $address);
- push (@results, $msg) ;
-
- }
-
-
-}
-
-
-}
-# }}}
-
-# {{{ _Parse822HeadersForAttributes Content
-
-=head2 _Parse822HeadersForAttributes Content
-
-Takes an RFC822 style message and parses its attributes into a hash.
-
-=cut
-
-sub _Parse822HeadersForAttributes {
- my $self = shift;
- my $content = shift;
- my %args;
-
- my @lines = ( split ( /\n/, $content ) );
- while ( defined( my $line = shift @lines ) ) {
- if ( $line =~ /^(.*?):(?:\s+(.*))?$/ ) {
- my $value = $2;
- my $tag = lc($1);
-
- $tag =~ s/-//g;
- if ( defined( $args{$tag} ) )
- { #if we're about to get a second value, make it an array
- $args{$tag} = [ $args{$tag} ];
- }
- if ( ref( $args{$tag} ) )
- { #If it's an array, we want to push the value
- push @{ $args{$tag} }, $value;
- }
- else { #if there's nothing there, just set the value
- $args{$tag} = $value;
- }
- } elsif ($line =~ /^$/) {
-
- #TODO: this won't work, since "" isn't of the form "foo:value"
-
- while ( defined( my $l = shift @lines ) ) {
- push @{ $args{'content'} }, $l;
- }
- }
-
- }
-
- foreach my $date qw(due starts started resolved) {
- my $dateobj = RT::Date->new($RT::SystemUser);
- if ( $args{$date} =~ /^\d+$/ ) {
- $dateobj->Set( Format => 'unix', Value => $args{$date} );
- }
- else {
- $dateobj->Set( Format => 'unknown', Value => $args{$date} );
- }
- $args{$date} = $dateobj->ISO;
- }
- $args{'mimeobj'} = MIME::Entity->new();
- $args{'mimeobj'}->build(
- Type => ( $args{'contenttype'} || 'text/plain' ),
- Data => ($args{'content'} || '')
- );
-
- return (%args);
-}
-
-# }}}
-
-# {{{ sub Import
-
-=head2 Import PARAMHASH
-
-Import a ticket.
-Doesn\'t create a transaction.
-Doesn\'t supply queue defaults, etc.
-
-Returns: TICKETID
-
-=cut
-
-sub Import {
- my $self = shift;
- my ( $ErrStr, $QueueObj, $Owner );
-
- my %args = (
- id => undef,
- EffectiveId => undef,
- Queue => undef,
- Requestor => undef,
- Type => 'ticket',
- Owner => $RT::Nobody->Id,
- Subject => '[no subject]',
- InitialPriority => undef,
- FinalPriority => undef,
- Status => 'new',
- TimeWorked => "0",
- Due => undef,
- Created => undef,
- Updated => undef,
- Resolved => undef,
- Told => undef,
- @_
- );
-
- if ( ( defined( $args{'Queue'} ) ) && ( !ref( $args{'Queue'} ) ) ) {
- $QueueObj = RT::Queue->new($RT::SystemUser);
- $QueueObj->Load( $args{'Queue'} );
-
- #TODO error check this and return 0 if it\'s not loading properly +++
- }
- elsif ( ref( $args{'Queue'} ) eq 'RT::Queue' ) {
- $QueueObj = RT::Queue->new($RT::SystemUser);
- $QueueObj->Load( $args{'Queue'}->Id );
- }
- else {
- $RT::Logger->debug(
- "$self " . $args{'Queue'} . " not a recognised queue object." );
- }
-
- #Can't create a ticket without a queue.
- unless ( defined($QueueObj) and $QueueObj->Id ) {
- $RT::Logger->debug("$self No queue given for ticket creation.");
- return ( 0, $self->loc('Could not create ticket. Queue not set') );
- }
-
- #Now that we have a queue, Check the ACLS
- unless (
- $self->CurrentUser->HasRight(
- Right => 'CreateTicket',
- Object => $QueueObj
- )
- )
- {
- return ( 0,
- $self->loc("No permission to create tickets in the queue '[_1]'"
- , $QueueObj->Name));
- }
-
- # {{{ Deal with setting the owner
-
- # Attempt to take user object, user name or user id.
- # Assign to nobody if lookup fails.
- if ( defined( $args{'Owner'} ) ) {
- if ( ref( $args{'Owner'} ) ) {
- $Owner = $args{'Owner'};
- }
- else {
- $Owner = new RT::User( $self->CurrentUser );
- $Owner->Load( $args{'Owner'} );
- if ( !defined( $Owner->id ) ) {
- $Owner->Load( $RT::Nobody->id );
- }
- }
- }
-
- #If we have a proposed owner and they don't have the right
- #to own a ticket, scream about it and make them not the owner
- if (
- ( defined($Owner) )
- and ( $Owner->Id != $RT::Nobody->Id )
- and (
- !$Owner->HasRight(
- Object => $QueueObj,
- Right => 'OwnTicket'
- )
- )
- )
- {
-
- $RT::Logger->warning( "$self user "
- . $Owner->Name . "("
- . $Owner->id
- . ") was proposed "
- . "as a ticket owner but has no rights to own "
- . "tickets in '"
- . $QueueObj->Name . "'\n" );
-
- $Owner = undef;
- }
-
- #If we haven't been handed a valid owner, make it nobody.
- unless ( defined($Owner) ) {
- $Owner = new RT::User( $self->CurrentUser );
- $Owner->Load( $RT::Nobody->UserObj->Id );
- }
-
- # }}}
-
- unless ( $self->ValidateStatus( $args{'Status'} ) ) {
- return ( 0, $self->loc("'[_1]' is an invalid value for status", $args{'Status'}) );
- }
-
- $self->{'_AccessibleCache'}{Created} = { 'read' => 1, 'write' => 1 };
- $self->{'_AccessibleCache'}{Creator} = { 'read' => 1, 'auto' => 1 };
- $self->{'_AccessibleCache'}{LastUpdated} = { 'read' => 1, 'write' => 1 };
- $self->{'_AccessibleCache'}{LastUpdatedBy} = { 'read' => 1, 'auto' => 1 };
-
- # If we're coming in with an id, set that now.
- my $EffectiveId = undef;
- if ( $args{'id'} ) {
- $EffectiveId = $args{'id'};
-
- }
-
- my $id = $self->SUPER::Create(
- id => $args{'id'},
- EffectiveId => $EffectiveId,
- Queue => $QueueObj->Id,
- Owner => $Owner->Id,
- Subject => $args{'Subject'}, # loc
- InitialPriority => $args{'InitialPriority'}, # loc
- FinalPriority => $args{'FinalPriority'}, # loc
- Priority => $args{'InitialPriority'}, # loc
- Status => $args{'Status'}, # loc
- TimeWorked => $args{'TimeWorked'}, # loc
- Type => $args{'Type'}, # loc
- Created => $args{'Created'}, # loc
- Told => $args{'Told'}, # loc
- LastUpdated => $args{'Updated'}, # loc
- Resolved => $args{'Resolved'}, # loc
- Due => $args{'Due'}, # loc
- );
-
- # If the ticket didn't have an id
- # Set the ticket's effective ID now that we've created it.
- if ( $args{'id'} ) {
- $self->Load( $args{'id'} );
- }
- else {
- my ( $val, $msg ) =
- $self->__Set( Field => 'EffectiveId', Value => $id );
-
- unless ($val) {
- $RT::Logger->err(
- $self . "->Import couldn't set EffectiveId: $msg\n" );
- }
- }
-
- my $create_groups_ret = $self->_CreateTicketGroups();
- unless ($create_groups_ret) {
- $RT::Logger->crit(
- "Couldn't create ticket groups for ticket " . $self->Id );
- }
-
- $self->OwnerGroup->_AddMember( PrincipalId => $Owner->PrincipalId );
-
- my $watcher;
- foreach $watcher ( @{ $args{'Cc'} } ) {
- $self->_AddWatcher( Type => 'Cc', Email => $watcher, Silent => 1 );
- }
- foreach $watcher ( @{ $args{'AdminCc'} } ) {
- $self->_AddWatcher( Type => 'AdminCc', Email => $watcher,
- Silent => 1 );
- }
- foreach $watcher ( @{ $args{'Requestor'} } ) {
- $self->_AddWatcher( Type => 'Requestor', Email => $watcher,
- Silent => 1 );
- }
-
- return ( $self->Id, $ErrStr );
-}
-
-# }}}
-
-# {{{ Routines dealing with watchers.
-
-# {{{ _CreateTicketGroups
-
-=head2 _CreateTicketGroups
-
-Create the ticket groups and links for this ticket.
-This routine expects to be called from Ticket->Create _inside of a transaction_
-
-It will create four groups for this ticket: Requestor, Cc, AdminCc and Owner.
-
-It will return true on success and undef on failure.
-
-=begin testing
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($id, $msg) = $ticket->Create(Subject => "Foo",
- Owner => $RT::SystemUser->Id,
- Status => 'open',
- Requestor => ['jesse@example.com'],
- Queue => '1'
- );
-ok ($id, "Ticket $id was created");
-ok(my $group = RT::Group->new($RT::SystemUser));
-ok($group->LoadTicketRoleGroup(Ticket => $id, Type=> 'Requestor'));
-ok ($group->Id, "Found the requestors object for this ticket");
-
-ok(my $jesse = RT::User->new($RT::SystemUser), "Creating a jesse rt::user");
-$jesse->LoadByEmail('jesse@example.com');
-ok($jesse->Id, "Found the jesse rt user");
-
-
-ok ($ticket->IsWatcher(Type => 'Requestor', PrincipalId => $jesse->PrincipalId), "The ticket actually has jesse at fsck.com as a requestor");
-ok ((my $add_id, $add_msg) = $ticket->AddWatcher(Type => 'Requestor', Email => 'bob@fsck.com'), "Added bob at fsck.com as a requestor");
-ok ($add_id, "Add succeeded: ($add_msg)");
-ok(my $bob = RT::User->new($RT::SystemUser), "Creating a bob rt::user");
-$bob->LoadByEmail('bob@fsck.com');
-ok($bob->Id, "Found the bob rt user");
-ok ($ticket->IsWatcher(Type => 'Requestor', PrincipalId => $bob->PrincipalId), "The ticket actually has bob at fsck.com as a requestor");;
-ok ((my $add_id, $add_msg) = $ticket->DeleteWatcher(Type =>'Requestor', Email => 'bob@fsck.com'), "Added bob at fsck.com as a requestor");
-ok (!$ticket->IsWatcher(Type => 'Requestor', Principal => $bob->PrincipalId), "The ticket no longer has bob at fsck.com as a requestor");;
-
-
-$group = RT::Group->new($RT::SystemUser);
-ok($group->LoadTicketRoleGroup(Ticket => $id, Type=> 'Cc'));
-ok ($group->Id, "Found the cc object for this ticket");
-$group = RT::Group->new($RT::SystemUser);
-ok($group->LoadTicketRoleGroup(Ticket => $id, Type=> 'AdminCc'));
-ok ($group->Id, "Found the AdminCc object for this ticket");
-$group = RT::Group->new($RT::SystemUser);
-ok($group->LoadTicketRoleGroup(Ticket => $id, Type=> 'Owner'));
-ok ($group->Id, "Found the Owner object for this ticket");
-ok($group->HasMember($RT::SystemUser->UserObj->PrincipalObj), "the owner group has the member 'RT_System'");
-
-=end testing
-
-=cut
-
-
-sub _CreateTicketGroups {
- my $self = shift;
-
- my @types = qw(Requestor Owner Cc AdminCc);
-
- foreach my $type (@types) {
- my $type_obj = RT::Group->new($self->CurrentUser);
- my ($id, $msg) = $type_obj->CreateRoleGroup(Domain => 'RT::Ticket-Role',
- Instance => $self->Id,
- Type => $type);
- unless ($id) {
- $RT::Logger->error("Couldn't create a ticket group of type '$type' for ticket ".
- $self->Id.": ".$msg);
- return(undef);
- }
- }
- return(1);
-
-}
-
-# }}}
-
-# {{{ sub OwnerGroup
-
-=head2 OwnerGroup
-
-A constructor which returns an RT::Group object containing the owner of this ticket.
-
-=cut
-
-sub OwnerGroup {
- my $self = shift;
- my $owner_obj = RT::Group->new($self->CurrentUser);
- $owner_obj->LoadTicketRoleGroup( Ticket => $self->Id, Type => 'Owner');
- return ($owner_obj);
-}
-
-# }}}
-
-
-# {{{ sub AddWatcher
-
-=head2 AddWatcher
-
-AddWatcher takes a parameter hash. The keys are as follows:
-
-Type One of Requestor, Cc, AdminCc
-
-PrinicpalId The RT::Principal id of the user or group that's being added as a watcher
-
-Email The email address of the new watcher. If a user with this
- email address can't be found, a new nonprivileged user will be created.
-
-If the watcher you\'re trying to set has an RT account, set the Owner paremeter to their User Id. Otherwise, set the Email parameter to their Email address.
-
-=cut
-
-sub AddWatcher {
- my $self = shift;
- my %args = (
- Type => undef,
- PrincipalId => undef,
- Email => undef,
- @_
- );
-
- # {{{ Check ACLS
- #If the watcher we're trying to add is for the current user
- if ( $self->CurrentUser->PrincipalId eq $args{'PrincipalId'}) {
- # If it's an AdminCc and they don't have
- # 'WatchAsAdminCc' or 'ModifyTicket', bail
- if ( $args{'Type'} eq 'AdminCc' ) {
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- or $self->CurrentUserHasRight('WatchAsAdminCc') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
-
- # If it's a Requestor or Cc and they don't have
- # 'Watch' or 'ModifyTicket', bail
- elsif ( ( $args{'Type'} eq 'Cc' ) or ( $args{'Type'} eq 'Requestor' ) ) {
-
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- or $self->CurrentUserHasRight('Watch') ) {
- return ( 0, $self->loc('Permission Denied'))
- }
- }
- else {
- $RT::Logger->warning( "$self -> AddWatcher got passed a bogus type");
- return ( 0, $self->loc('Error in parameters to Ticket->AddWatcher') );
- }
- }
-
- # If the watcher isn't the current user
- # and the current user doesn't have 'ModifyTicket'
- # bail
- else {
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
-
- # }}}
-
- return ( $self->_AddWatcher(%args) );
-}
-
-#This contains the meat of AddWatcher. but can be called from a routine like
-# Create, which doesn't need the additional acl check
-sub _AddWatcher {
- my $self = shift;
- my %args = (
- Type => undef,
- Silent => undef,
- PrincipalId => undef,
- Email => undef,
- @_
- );
-
-
- my $principal = RT::Principal->new($self->CurrentUser);
- if ($args{'Email'}) {
- my $user = RT::User->new($RT::SystemUser);
- my ($pid, $msg) = $user->LoadOrCreateByEmail($args{'Email'});
- # If we can't load the user by email address, let's try to load by username
- unless ($pid) {
- ($pid,$msg) = $user->Load($args{'Email'})
- }
- if ($pid) {
- $args{'PrincipalId'} = $pid;
- }
- }
- if ($args{'PrincipalId'}) {
- $principal->Load($args{'PrincipalId'});
- }
-
-
- # If we can't find this watcher, we need to bail.
- unless ($principal->Id) {
- $RT::Logger->error("Could not load create a user with the email address '".$args{'Email'}. "' to add as a watcher for ticket ".$self->Id);
- return(0, $self->loc("Could not find or create that user"));
- }
-
-
- my $group = RT::Group->new($self->CurrentUser);
- $group->LoadTicketRoleGroup(Type => $args{'Type'}, Ticket => $self->Id);
- unless ($group->id) {
- return(0,$self->loc("Group not found"));
- }
-
- if ( $group->HasMember( $principal)) {
-
- return ( 0, $self->loc('That principal is already a [_1] for this ticket', $self->loc($args{'Type'})) );
- }
-
-
- my ( $m_id, $m_msg ) = $group->_AddMember( PrincipalId => $principal->Id,
- InsideTransaction => 1 );
- unless ($m_id) {
- $RT::Logger->error("Failed to add ".$principal->Id." as a member of group ".$group->Id."\n".$m_msg);
-
- return ( 0, $self->loc('Could not make that principal a [_1] for this ticket', $self->loc($args{'Type'})) );
- }
-
- unless ( $args{'Silent'} ) {
- $self->_NewTransaction(
- Type => 'AddWatcher',
- NewValue => $principal->Id,
- Field => $args{'Type'}
- );
- }
-
- return ( 1, $self->loc('Added principal as a [_1] for this ticket', $self->loc($args{'Type'})) );
-}
-
-# }}}
-
-
-# {{{ sub DeleteWatcher
-
-=head2 DeleteWatcher { Type => TYPE, PrincipalId => PRINCIPAL_ID, Email => EMAIL_ADDRESS }
-
-
-Deletes a Ticket watcher. Takes two arguments:
-
-Type (one of Requestor,Cc,AdminCc)
-
-and one of
-
-PrincipalId (an RT::Principal Id of the watcher you want to remove)
- OR
-Email (the email address of an existing wathcer)
-
-
-=cut
-
-
-sub DeleteWatcher {
- my $self = shift;
-
- my %args = ( Type => undef,
- PrincipalId => undef,
- Email => undef,
- @_ );
-
- unless ( $args{'PrincipalId'} || $args{'Email'} ) {
- return ( 0, $self->loc("No principal specified") );
- }
- my $principal = RT::Principal->new( $self->CurrentUser );
- if ( $args{'PrincipalId'} ) {
-
- $principal->Load( $args{'PrincipalId'} );
- }
- else {
- my $user = RT::User->new( $self->CurrentUser );
- $user->LoadByEmail( $args{'Email'} );
- $principal->Load( $user->Id );
- }
-
- # If we can't find this watcher, we need to bail.
- unless ( $principal->Id ) {
- return ( 0, $self->loc("Could not find that principal") );
- }
-
- my $group = RT::Group->new( $self->CurrentUser );
- $group->LoadTicketRoleGroup( Type => $args{'Type'}, Ticket => $self->Id );
- unless ( $group->id ) {
- return ( 0, $self->loc("Group not found") );
- }
-
- # {{{ Check ACLS
- #If the watcher we're trying to add is for the current user
- if ( $self->CurrentUser->PrincipalId eq $args{'PrincipalId'} ) {
-
- # If it's an AdminCc and they don't have
- # 'WatchAsAdminCc' or 'ModifyTicket', bail
- if ( $args{'Type'} eq 'AdminCc' ) {
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- or $self->CurrentUserHasRight('WatchAsAdminCc') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
-
- # If it's a Requestor or Cc and they don't have
- # 'Watch' or 'ModifyTicket', bail
- elsif ( ( $args{'Type'} eq 'Cc' ) or ( $args{'Type'} eq 'Requestor' ) )
- {
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- or $self->CurrentUserHasRight('Watch') ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
- else {
- $RT::Logger->warn("$self -> DeleteWatcher got passed a bogus type");
- return ( 0,
- $self->loc('Error in parameters to Ticket->DeleteWatcher') );
- }
- }
-
- # If the watcher isn't the current user
- # and the current user doesn't have 'ModifyTicket' bail
- else {
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
-
- # }}}
-
- # see if this user is already a watcher.
-
- unless ( $group->HasMember($principal) ) {
- return ( 0,
- $self->loc( 'That principal is not a [_1] for this ticket',
- $args{'Type'} ) );
- }
-
- my ( $m_id, $m_msg ) = $group->_DeleteMember( $principal->Id );
- unless ($m_id) {
- $RT::Logger->error( "Failed to delete "
- . $principal->Id
- . " as a member of group "
- . $group->Id . "\n"
- . $m_msg );
-
- return (0,
- $self->loc(
- 'Could not remove that principal as a [_1] for this ticket',
- $args{'Type'} ) );
- }
-
- unless ( $args{'Silent'} ) {
- $self->_NewTransaction( Type => 'DelWatcher',
- OldValue => $principal->Id,
- Field => $args{'Type'} );
- }
-
- return ( 1,
- $self->loc( "[_1] is no longer a [_2] for this ticket.",
- $principal->Object->Name,
- $args{'Type'} ) );
-}
-
-
-
-# }}}
-
-
-=head2 SquelchMailTo [EMAIL]
-
-Takes an optional email address to never email about updates to this ticket.
-
-
-Returns an array of the RT::Attribute objects for this ticket's 'SquelchMailTo' attributes.
-
-=begin testing
-
-my $t = RT::Ticket->new($RT::SystemUser);
-ok($t->Create(Queue => 'general', Subject => 'SquelchTest'));
-
-is($#{$t->SquelchMailTo}, -1, "The ticket has no squelched recipients");
-
-my @returned = $t->SquelchMailTo('nobody@example.com');
-
-is($#returned, 0, "The ticket has one squelched recipients");
-
-my @names = $t->Attributes->Names;
-is(shift @names, 'SquelchMailTo', "The attribute we have is SquelchMailTo");
-@returned = $t->SquelchMailTo('nobody@example.com');
-
-
-is($#returned, 0, "The ticket has one squelched recipients");
-
-@names = $t->Attributes->Names;
-is(shift @names, 'SquelchMailTo', "The attribute we have is SquelchMailTo");
-
-
-my ($ret, $msg) = $t->UnsquelchMailTo('nobody@example.com');
-ok($ret, "Removed nobody as a squelched recipient - ".$msg);
-@returned = $t->SquelchMailTo();
-is($#returned, -1, "The ticket has no squelched recipients". join(',',@returned));
-
-
-=end testing
-
-=cut
-
-sub SquelchMailTo {
- my $self = shift;
- if (@_) {
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return undef;
- }
- my $attr = shift;
- $self->AddAttribute( Name => 'SquelchMailTo', Content => $attr )
- unless grep { $_->Content eq $attr }
- $self->Attributes->Named('SquelchMailTo');
-
- }
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return undef;
- }
- my @attributes = $self->Attributes->Named('SquelchMailTo');
- return (@attributes);
-}
-
-
-=head2 UnsquelchMailTo ADDRESS
-
-Takes an address and removes it from this ticket's "SquelchMailTo" list. If an address appears multiple times, each instance is removed.
-
-Returns a tuple of (status, message)
-
-=cut
-
-sub UnsquelchMailTo {
- my $self = shift;
-
- my $address = shift;
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- my ($val, $msg) = $self->Attributes->DeleteEntry ( Name => 'SquelchMailTo', Content => $address);
- return ($val, $msg);
-}
-
-
-# {{{ a set of [foo]AsString subs that will return the various sorts of watchers for a ticket/queue as a comma delineated string
-
-=head2 RequestorAddresses
-
- B<Returns> String: All Ticket Requestor email addresses as a string.
-
-=cut
-
-sub RequestorAddresses {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return undef;
- }
-
- return ( $self->Requestors->MemberEmailAddressesAsString );
-}
-
-
-=head2 AdminCcAddresses
-
-returns String: All Ticket AdminCc email addresses as a string
-
-=cut
-
-sub AdminCcAddresses {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return undef;
- }
-
- return ( $self->AdminCc->MemberEmailAddressesAsString )
-
-}
-
-=head2 CcAddresses
-
-returns String: All Ticket Ccs as a string of email addresses
-
-=cut
-
-sub CcAddresses {
- my $self = shift;
-
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return undef;
- }
-
- return ( $self->Cc->MemberEmailAddressesAsString);
-
-}
-
-# }}}
-
-# {{{ Routines that return RT::Watchers objects of Requestors, Ccs and AdminCcs
-
-# {{{ sub Requestors
-
-=head2 Requestors
-
-Takes nothing.
-Returns this ticket's Requestors as an RT::Group object
-
-=cut
-
-sub Requestors {
- my $self = shift;
-
- my $group = RT::Group->new($self->CurrentUser);
- if ( $self->CurrentUserHasRight('ShowTicket') ) {
- $group->LoadTicketRoleGroup(Type => 'Requestor', Ticket => $self->Id);
- }
- return ($group);
-
-}
-
-# }}}
-
-# {{{ sub Cc
-
-=head2 Cc
-
-Takes nothing.
-Returns an RT::Group object which contains this ticket's Ccs.
-If the user doesn't have "ShowTicket" permission, returns an empty group
-
-=cut
-
-sub Cc {
- my $self = shift;
-
- my $group = RT::Group->new($self->CurrentUser);
- if ( $self->CurrentUserHasRight('ShowTicket') ) {
- $group->LoadTicketRoleGroup(Type => 'Cc', Ticket => $self->Id);
- }
- return ($group);
-
-}
-
-# }}}
-
-# {{{ sub AdminCc
-
-=head2 AdminCc
-
-Takes nothing.
-Returns an RT::Group object which contains this ticket's AdminCcs.
-If the user doesn't have "ShowTicket" permission, returns an empty group
-
-=cut
-
-sub AdminCc {
- my $self = shift;
-
- my $group = RT::Group->new($self->CurrentUser);
- if ( $self->CurrentUserHasRight('ShowTicket') ) {
- $group->LoadTicketRoleGroup(Type => 'AdminCc', Ticket => $self->Id);
- }
- return ($group);
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ IsWatcher,IsRequestor,IsCc, IsAdminCc
-
-# {{{ sub IsWatcher
-# a generic routine to be called by IsRequestor, IsCc and IsAdminCc
-
-=head2 IsWatcher { Type => TYPE, PrincipalId => PRINCIPAL_ID, Email => EMAIL }
-
-Takes a param hash with the attributes Type and either PrincipalId or Email
-
-Type is one of Requestor, Cc, AdminCc and Owner
-
-PrincipalId is an RT::Principal id, and Email is an email address.
-
-Returns true if the specified principal (or the one corresponding to the
-specified address) is a member of the group Type for this ticket.
-
-XX TODO: This should be Memoized.
-
-=cut
-
-sub IsWatcher {
- my $self = shift;
-
- my %args = ( Type => 'Requestor',
- PrincipalId => undef,
- Email => undef,
- @_
- );
-
- # Load the relevant group.
- my $group = RT::Group->new($self->CurrentUser);
- $group->LoadTicketRoleGroup(Type => $args{'Type'}, Ticket => $self->id);
-
- # Find the relevant principal.
- my $principal = RT::Principal->new($self->CurrentUser);
- if (!$args{PrincipalId} && $args{Email}) {
- # Look up the specified user.
- my $user = RT::User->new($self->CurrentUser);
- $user->LoadByEmail($args{Email});
- if ($user->Id) {
- $args{PrincipalId} = $user->PrincipalId;
- }
- else {
- # A non-existent user can't be a group member.
- return 0;
- }
- }
- $principal->Load($args{'PrincipalId'});
-
- # Ask if it has the member in question
- return ($group->HasMember($principal));
-}
-
-# }}}
-
-# {{{ sub IsRequestor
-
-=head2 IsRequestor PRINCIPAL_ID
-
- Takes an RT::Principal id
- Returns true if the principal is a requestor of the current ticket.
-
-
-=cut
-
-sub IsRequestor {
- my $self = shift;
- my $person = shift;
-
- return ( $self->IsWatcher( Type => 'Requestor', PrincipalId => $person ) );
-
-};
-
-# }}}
-
-# {{{ sub IsCc
-
-=head2 IsCc PRINCIPAL_ID
-
- Takes an RT::Principal id.
- Returns true if the principal is a requestor of the current ticket.
-
-
-=cut
-
-sub IsCc {
- my $self = shift;
- my $cc = shift;
-
- return ( $self->IsWatcher( Type => 'Cc', PrincipalId => $cc ) );
-
-}
-
-# }}}
-
-# {{{ sub IsAdminCc
-
-=head2 IsAdminCc PRINCIPAL_ID
-
- Takes an RT::Principal id.
- Returns true if the principal is a requestor of the current ticket.
-
-=cut
-
-sub IsAdminCc {
- my $self = shift;
- my $person = shift;
-
- return ( $self->IsWatcher( Type => 'AdminCc', PrincipalId => $person ) );
-
-}
-
-# }}}
-
-# {{{ sub IsOwner
-
-=head2 IsOwner
-
- Takes an RT::User object. Returns true if that user is this ticket's owner.
-returns undef otherwise
-
-=cut
-
-sub IsOwner {
- my $self = shift;
- my $person = shift;
-
- # no ACL check since this is used in acl decisions
- # unless ($self->CurrentUserHasRight('ShowTicket')) {
- # return(undef);
- # }
-
- #Tickets won't yet have owners when they're being created.
- unless ( $self->OwnerObj->id ) {
- return (undef);
- }
-
- if ( $person->id == $self->OwnerObj->id ) {
- return (1);
- }
- else {
- return (undef);
- }
-}
-
-# }}}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with queues
-
-# {{{ sub ValidateQueue
-
-sub ValidateQueue {
- my $self = shift;
- my $Value = shift;
-
- if ( !$Value ) {
- $RT::Logger->warning( " RT:::Queue::ValidateQueue called with a null value. this isn't ok.");
- return (1);
- }
-
- my $QueueObj = RT::Queue->new( $self->CurrentUser );
- my $id = $QueueObj->Load($Value);
-
- if ($id) {
- return (1);
- }
- else {
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ sub SetQueue
-
-sub SetQueue {
- my $self = shift;
- my $NewQueue = shift;
-
- #Redundant. ACL gets checked in _Set;
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- my $NewQueueObj = RT::Queue->new( $self->CurrentUser );
- $NewQueueObj->Load($NewQueue);
-
- unless ( $NewQueueObj->Id() ) {
- return ( 0, $self->loc("That queue does not exist") );
- }
-
- if ( $NewQueueObj->Id == $self->QueueObj->Id ) {
- return ( 0, $self->loc('That is the same value') );
- }
- unless (
- $self->CurrentUser->HasRight(
- Right => 'CreateTicket',
- Object => $NewQueueObj
- )
- )
- {
- return ( 0, $self->loc("You may not create requests in that queue.") );
- }
-
- unless (
- $self->OwnerObj->HasRight(
- Right => 'OwnTicket',
- Object => $NewQueueObj
- )
- )
- {
- $self->Untake();
- }
-
- return ( $self->_Set( Field => 'Queue', Value => $NewQueueObj->Id() ) );
-
-}
-
-# }}}
-
-# {{{ sub QueueObj
-
-=head2 QueueObj
-
-Takes nothing. returns this ticket's queue object
-
-=cut
-
-sub QueueObj {
- my $self = shift;
-
- my $queue_obj = RT::Queue->new( $self->CurrentUser );
-
- #We call __Value so that we can avoid the ACL decision and some deep recursion
- my ($result) = $queue_obj->Load( $self->__Value('Queue') );
- return ($queue_obj);
-}
-
-# }}}
-
-# }}}
-
-# {{{ Date printing routines
-
-# {{{ sub DueObj
-
-=head2 DueObj
-
- Returns an RT::Date object containing this ticket's due date
-
-=cut
-
-sub DueObj {
- my $self = shift;
-
- my $time = new RT::Date( $self->CurrentUser );
-
- # -1 is RT::Date slang for never
- if ( $self->Due ) {
- $time->Set( Format => 'sql', Value => $self->Due );
- }
- else {
- $time->Set( Format => 'unix', Value => -1 );
- }
-
- return $time;
-}
-
-# }}}
-
-# {{{ sub DueAsString
-
-=head2 DueAsString
-
-Returns this ticket's due date as a human readable string
-
-=cut
-
-sub DueAsString {
- my $self = shift;
- return $self->DueObj->AsString();
-}
-
-# }}}
-
-# {{{ sub ResolvedObj
-
-=head2 ResolvedObj
-
- Returns an RT::Date object of this ticket's 'resolved' time.
-
-=cut
-
-sub ResolvedObj {
- my $self = shift;
-
- my $time = new RT::Date( $self->CurrentUser );
- $time->Set( Format => 'sql', Value => $self->Resolved );
- return $time;
-}
-
-# }}}
-
-# {{{ sub SetStarted
-
-=head2 SetStarted
-
-Takes a date in ISO format or undef
-Returns a transaction id and a message
-The client calls "Start" to note that the project was started on the date in $date.
-A null date means "now"
-
-=cut
-
-sub SetStarted {
- my $self = shift;
- my $time = shift || 0;
-
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, self->loc("Permission Denied") );
- }
-
- #We create a date object to catch date weirdness
- my $time_obj = new RT::Date( $self->CurrentUser() );
- if ( $time != 0 ) {
- $time_obj->Set( Format => 'ISO', Value => $time );
- }
- else {
- $time_obj->SetToNow();
- }
-
- #Now that we're starting, open this ticket
- #TODO do we really want to force this as policy? it should be a scrip
-
- #We need $TicketAsSystem, in case the current user doesn't have
- #ShowTicket
- #
- my $TicketAsSystem = new RT::Ticket($RT::SystemUser);
- $TicketAsSystem->Load( $self->Id );
- if ( $TicketAsSystem->Status eq 'new' ) {
- $TicketAsSystem->Open();
- }
-
- return ( $self->_Set( Field => 'Started', Value => $time_obj->ISO ) );
-
-}
-
-# }}}
-
-# {{{ sub StartedObj
-
-=head2 StartedObj
-
- Returns an RT::Date object which contains this ticket's
-'Started' time.
-
-=cut
-
-sub StartedObj {
- my $self = shift;
-
- my $time = new RT::Date( $self->CurrentUser );
- $time->Set( Format => 'sql', Value => $self->Started );
- return $time;
-}
-
-# }}}
-
-# {{{ sub StartsObj
-
-=head2 StartsObj
-
- Returns an RT::Date object which contains this ticket's
-'Starts' time.
-
-=cut
-
-sub StartsObj {
- my $self = shift;
-
- my $time = new RT::Date( $self->CurrentUser );
- $time->Set( Format => 'sql', Value => $self->Starts );
- return $time;
-}
-
-# }}}
-
-# {{{ sub ToldObj
-
-=head2 ToldObj
-
- Returns an RT::Date object which contains this ticket's
-'Told' time.
-
-=cut
-
-sub ToldObj {
- my $self = shift;
-
- my $time = new RT::Date( $self->CurrentUser );
- $time->Set( Format => 'sql', Value => $self->Told );
- return $time;
-}
-
-# }}}
-
-# {{{ sub ToldAsString
-
-=head2 ToldAsString
-
-A convenience method that returns ToldObj->AsString
-
-TODO: This should be deprecated
-
-=cut
-
-sub ToldAsString {
- my $self = shift;
- if ( $self->Told ) {
- return $self->ToldObj->AsString();
- }
- else {
- return ("Never");
- }
-}
-
-# }}}
-
-# {{{ sub TimeWorkedAsString
-
-=head2 TimeWorkedAsString
-
-Returns the amount of time worked on this ticket as a Text String
-
-=cut
-
-sub TimeWorkedAsString {
- my $self = shift;
- return "0" unless $self->TimeWorked;
-
- #This is not really a date object, but if we diff a number of seconds
- #vs the epoch, we'll get a nice description of time worked.
-
- my $worked = new RT::Date( $self->CurrentUser );
-
- #return the #of minutes worked turned into seconds and written as
- # a simple text string
-
- return ( $worked->DurationAsString( $self->TimeWorked * 60 ) );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with correspondence/comments
-
-# {{{ sub Comment
-
-=head2 Comment
-
-Comment on this ticket.
-Takes a hashref with the following attributes:
-If MIMEObj is undefined, Content will be used to build a MIME::Entity for this
-commentl
-
-MIMEObj, TimeTaken, CcMessageTo, BccMessageTo, Content, DryRun
-
-If DryRun is defined, this update WILL NOT BE RECORDED. Scrips will not be committed.
-They will, however, be prepared and you'll be able to access them through the TransactionObj
-
-Returns: Transaction id, Error Message, Transaction Object
-(note the different order from Create()!)
-
-=cut
-
-sub Comment {
- my $self = shift;
-
- my %args = ( CcMessageTo => undef,
- BccMessageTo => undef,
- MIMEObj => undef,
- Content => undef,
- TimeTaken => 0,
- DryRun => 0,
- @_ );
-
- unless ( ( $self->CurrentUserHasRight('CommentOnTicket') )
- or ( $self->CurrentUserHasRight('ModifyTicket') ) ) {
- return ( 0, $self->loc("Permission Denied"), undef );
- }
- $args{'NoteType'} = 'Comment';
-
- if ($args{'DryRun'}) {
- $RT::Handle->BeginTransaction();
- $args{'CommitScrips'} = 0;
- }
-
- my @results = $self->_RecordNote(%args);
- if ($args{'DryRun'}) {
- $RT::Handle->Rollback();
- }
-
- return(@results);
-}
-# }}}
-
-# {{{ sub Correspond
-
-=head2 Correspond
-
-Correspond on this ticket.
-Takes a hashref with the following attributes:
-
-
-MIMEObj, TimeTaken, CcMessageTo, BccMessageTo, Content, DryRun
-
-if there's no MIMEObj, Content is used to build a MIME::Entity object
-
-If DryRun is defined, this update WILL NOT BE RECORDED. Scrips will not be committed.
-They will, however, be prepared and you'll be able to access them through the TransactionObj
-
-Returns: Transaction id, Error Message, Transaction Object
-(note the different order from Create()!)
-
-
-=cut
-
-sub Correspond {
- my $self = shift;
- my %args = ( CcMessageTo => undef,
- BccMessageTo => undef,
- MIMEObj => undef,
- Content => undef,
- TimeTaken => 0,
- @_ );
-
- unless ( ( $self->CurrentUserHasRight('ReplyToTicket') )
- or ( $self->CurrentUserHasRight('ModifyTicket') ) ) {
- return ( 0, $self->loc("Permission Denied"), undef );
- }
-
- $args{'NoteType'} = 'Correspond';
- if ($args{'DryRun'}) {
- $RT::Handle->BeginTransaction();
- $args{'CommitScrips'} = 0;
- }
-
- my @results = $self->_RecordNote(%args);
-
- #Set the last told date to now if this isn't mail from the requestor.
- #TODO: Note that this will wrongly ack mail from any non-requestor as a "told"
- $self->_SetTold unless ( $self->IsRequestor($self->CurrentUser->id));
-
- if ($args{'DryRun'}) {
- $RT::Handle->Rollback();
- }
-
- return (@results);
-
-}
-
-# }}}
-
-# {{{ sub _RecordNote
-
-=head2 _RecordNote
-
-the meat of both comment and correspond.
-
-Performs no access control checks. hence, dangerous.
-
-=cut
-
-sub _RecordNote {
-
- my $self = shift;
- my %args = ( CcMessageTo => undef,
- BccMessageTo => undef,
- MIMEObj => undef,
- Content => undef,
- TimeTaken => 0,
- CommitScrips => 1,
- @_ );
-
- unless ( $args{'MIMEObj'} || $args{'Content'} ) {
- return ( 0, $self->loc("No message attached"), undef );
- }
- unless ( $args{'MIMEObj'} ) {
- $args{'MIMEObj'} = MIME::Entity->build( Data => (
- ref $args{'Content'}
- ? $args{'Content'}
- : [ $args{'Content'} ]
- ) );
- }
-
- # convert text parts into utf-8
- RT::I18N::SetMIMEEntityToUTF8( $args{'MIMEObj'} );
-
-# If we've been passed in CcMessageTo and BccMessageTo fields,
-# add them to the mime object for passing on to the transaction handler
-# The "NotifyOtherRecipients" scripAction will look for RT-Send-Cc: and RT-Send-Bcc:
-# headers
-
- $args{'MIMEObj'}->head->add( 'RT-Send-Cc', RT::User::CanonicalizeEmailAddress(
- undef, $args{'CcMessageTo'}
- ) )
- if defined $args{'CcMessageTo'};
- $args{'MIMEObj'}->head->add( 'RT-Send-Bcc',
- RT::User::CanonicalizeEmailAddress(
- undef, $args{'BccMessageTo'}
- ) )
- if defined $args{'BccMessageTo'};
-
- # If this is from an external source, we need to come up with its
- # internal Message-ID now, so all emails sent because of this
- # message have a common Message-ID
- unless ($args{'MIMEObj'}->head->get('Message-ID')
- =~ /<(rt-.*?-\d+-\d+)\.(\d+-0-0)\@$RT::Organization>/) {
- $args{'MIMEObj'}->head->set( 'RT-Message-ID',
- "<rt-"
- . $RT::VERSION . "-"
- . $$ . "-"
- . CORE::time() . "-"
- . int(rand(2000)) . '.'
- . $self->id . "-"
- . "0" . "-" # Scrip
- . "0" . "@" # Email sent
- . $RT::Organization
- . ">" );
- }
-
- #Record the correspondence (write the transaction)
- my ( $Trans, $msg, $TransObj ) = $self->_NewTransaction(
- Type => $args{'NoteType'},
- Data => ( $args{'MIMEObj'}->head->get('subject') || 'No Subject' ),
- TimeTaken => $args{'TimeTaken'},
- MIMEObj => $args{'MIMEObj'},
- CommitScrips => $args{'CommitScrips'},
- );
-
- unless ($Trans) {
- $RT::Logger->err("$self couldn't init a transaction $msg");
- return ( $Trans, $self->loc("Message could not be recorded"), undef );
- }
-
- return ( $Trans, $self->loc("Message recorded"), $TransObj );
-}
-
-# }}}
-
-# }}}
-
-# {{{ sub _Links
-
-sub _Links {
- my $self = shift;
-
- #TODO: Field isn't the right thing here. but I ahave no idea what mnemonic ---
- #tobias meant by $f
- my $field = shift;
- my $type = shift || "";
-
- unless ( $self->{"$field$type"} ) {
- $self->{"$field$type"} = new RT::Links( $self->CurrentUser );
- if ( $self->CurrentUserHasRight('ShowTicket') ) {
- # Maybe this ticket is a merged ticket
- my $Tickets = new RT::Tickets( $self->CurrentUser );
- # at least to myself
- $self->{"$field$type"}->Limit( FIELD => $field,
- VALUE => $self->URI,
- ENTRYAGGREGATOR => 'OR' );
- $Tickets->Limit( FIELD => 'EffectiveId',
- VALUE => $self->EffectiveId );
- while (my $Ticket = $Tickets->Next) {
- $self->{"$field$type"}->Limit( FIELD => $field,
- VALUE => $Ticket->URI,
- ENTRYAGGREGATOR => 'OR' );
- }
- $self->{"$field$type"}->Limit( FIELD => 'Type',
- VALUE => $type )
- if ($type);
- }
- }
- return ( $self->{"$field$type"} );
-}
-
-# }}}
-
-# {{{ sub DeleteLink
-
-=head2 DeleteLink
-
-Delete a link. takes a paramhash of Base, Target and Type.
-Either Base or Target must be null. The null value will
-be replaced with this ticket\'s id
-
-=cut
-
-sub DeleteLink {
- my $self = shift;
- my %args = (
- Base => undef,
- Target => undef,
- Type => undef,
- @_
- );
-
- #check acls
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- $RT::Logger->debug("No permission to delete links\n");
- return ( 0, $self->loc('Permission Denied'))
-
- }
-
- my ($val, $Msg) = $self->SUPER::_DeleteLink(%args);
-
- if ( !$val ) {
- $RT::Logger->debug("Couldn't find that link\n");
- return ( 0, $Msg );
- }
-
- my ($direction, $remote_link);
-
- if ( $args{'Base'} ) {
- $remote_link = $args{'Base'};
- $direction = 'Target';
- }
- elsif ( $args{'Target'} ) {
- $remote_link = $args{'Target'};
- $direction='Base';
- }
-
- if ( $val ) {
- my $remote_uri = RT::URI->new( $RT::SystemUser );
- $remote_uri->FromURI( $remote_link );
-
- my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction(
- Type => 'DeleteLink',
- Field => $LINKDIRMAP{$args{'Type'}}->{$direction},
- OldValue => $remote_uri->URI || $remote_link,
- TimeTaken => 0
- );
-
- return ( $Trans, $Msg );
- }
-}
-
-# }}}
-
-# {{{ sub AddLink
-
-=head2 AddLink
-
-Takes a paramhash of Type and one of Base or Target. Adds that link to this ticket.
-
-=begin testing
-
-my $q1 = RT::Queue->new($RT::SystemUser);
-my ($id,$msg) = $q1->Create(Name => 'LinkTest1');
-ok ($id,$msg);
-my $q2 = RT::Queue->new($RT::SystemUser);
-($id,$msg) = $q2->Create(Name => 'LinkTest2');
-ok ($id,$msg);
-
-my $u1 = RT::User->new($RT::SystemUser);
-($id,$msg) =$u1->Create(Name => 'LinkTestUser');
-
-ok ($id,$msg);
-
-($id,$msg) = $u1->PrincipalObj->GrantRight ( Object => $q1, Right => 'CreateTicket');
-ok ($id,$msg);
-($id,$msg) = $u1->PrincipalObj->GrantRight ( Object => $q1, Right => 'ModifyTicket');
-ok ($id,$msg);
-
-my $tid;
-
-my $creator = RT::CurrentUser->new($u1->id);
-
-my $ticket = RT::Ticket->new( $creator);
-ok($ticket->isa('RT::Ticket'));
-($id,$tid, $msg) = $ticket->Create(Subject => 'Link test 1', Queue => $q1->id);
-ok ($id,$msg);
-
-
-my $ticket2 = RT::Ticket->new($RT::SystemUser);
-($id, $tid, $msg) = $ticket2->Create(Subject => 'Link test 2', Queue => $q2->id);
-ok ($id, $msg);
-
-($id,$msg) =$ticket->AddLink(Type => 'RefersTo', Target => $ticket2->id);
-ok(!$id,$msg);
-($id,$msg) = $u1->PrincipalObj->GrantRight ( Object => $q2, Right => 'CreateTicket');
-ok ($id,$msg);
-($id,$msg) = $u1->PrincipalObj->GrantRight ( Object => $q2, Right => 'ModifyTicket');
-ok ($id,$msg);
-($id,$msg) =$ticket->AddLink(Type => 'RefersTo', Target => $ticket2->id);
-ok($id,$msg);
-($id,$msg) =$ticket->AddLink(Type => 'RefersTo', Target => -1);
-ok(!$id,$msg);
-
-=end testing
-
-=cut
-
-sub AddLink {
- my $self = shift;
- my %args = ( Target => '',
- Base => '',
- Type => '',
- Silent => undef,
- @_ );
-
-
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
-
- $self->_AddLink(%args);
-}
-
-=head2 _AddLink
-
-Private non-acled variant of AddLink so that links can be added during create.
-
-=cut
-
-sub _AddLink {
- my $self = shift;
- my %args = ( Target => '',
- Base => '',
- Type => '',
- Silent => undef,
- @_ );
-
- # {{{ If the other URI is an RT::Ticket, we want to make sure the user
- # can modify it too...
- my $other_ticket_uri = RT::URI->new($self->CurrentUser);
-
- if ( $args{'Target'} ) {
- $other_ticket_uri->FromURI( $args{'Target'} );
-
- }
- elsif ( $args{'Base'} ) {
- $other_ticket_uri->FromURI( $args{'Base'} );
- }
-
- unless ( $other_ticket_uri->Resolver && $other_ticket_uri->Scheme ) {
- my $msg = $args{'Target'} ? $self->loc("Couldn't resolve target '[_1]' into a URI.", $args{'Target'})
- : $self->loc("Couldn't resolve base '[_1]' into a URI.", $args{'Base'});
- $RT::Logger->warning( "$self $msg\n" );
-
- return( 0, $msg );
- }
-
- if ( $other_ticket_uri->Resolver->Scheme eq 'fsck.com-rt') {
- my $object = $other_ticket_uri->Resolver->Object;
-
- if ( UNIVERSAL::isa( $object, 'RT::Ticket' )
- && $object->id
- && !$object->CurrentUserHasRight('ModifyTicket') )
- {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- }
-
- # }}}
-
- my ($val, $Msg) = $self->SUPER::_AddLink(%args);
-
- if (!$val) {
- return ($val, $Msg);
- }
-
- my ($direction, $remote_link);
- if ( $args{'Target'} ) {
- $remote_link = $args{'Target'};
- $direction = 'Base';
- } elsif ( $args{'Base'} ) {
- $remote_link = $args{'Base'};
- $direction = 'Target';
- }
-
- # Don't write the transaction if we're doing this on create
- if ( $args{'Silent'} ) {
- return ( $val, $Msg );
- }
- else {
- my $remote_uri = RT::URI->new( $RT::SystemUser );
- $remote_uri->FromURI( $remote_link );
-
- #Write the transaction
- my ( $Trans, $Msg, $TransObj ) =
- $self->_NewTransaction(Type => 'AddLink',
- Field => $LINKDIRMAP{$args{'Type'}}->{$direction},
- NewValue => $remote_uri->URI || $remote_link,
- TimeTaken => 0 );
- return ( $val, $Msg );
- }
-
-}
-
-# }}}
-
-
-# {{{ sub MergeInto
-
-=head2 MergeInto
-
-MergeInto take the id of the ticket to merge this ticket into.
-
-
-=begin testing
-
-my $t1 = RT::Ticket->new($RT::SystemUser);
-$t1->Create ( Subject => 'Merge test 1', Queue => 'general', Requestor => 'merge1@example.com');
-my $t1id = $t1->id;
-my $t2 = RT::Ticket->new($RT::SystemUser);
-$t2->Create ( Subject => 'Merge test 2', Queue => 'general', Requestor => 'merge2@example.com');
-my $t2id = $t2->id;
-my ($msg, $val) = $t1->MergeInto($t2->id);
-ok ($msg,$val);
-$t1 = RT::Ticket->new($RT::SystemUser);
-is ($t1->id, undef, "ok. we've got a blank ticket1");
-$t1->Load($t1id);
-
-is ($t1->id, $t2->id);
-
-is ($t1->Requestors->MembersObj->Count, 2);
-
-
-=end testing
-
-=cut
-
-sub MergeInto {
- my $self = shift;
- my $ticket_id = shift;
-
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- # Load up the new ticket.
- my $MergeInto = RT::Ticket->new($RT::SystemUser);
- $MergeInto->Load($ticket_id);
-
- # make sure it exists.
- unless ( $MergeInto->Id ) {
- return ( 0, $self->loc("New ticket doesn't exist") );
- }
-
- # Make sure the current user can modify the new ticket.
- unless ( $MergeInto->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- $RT::Handle->BeginTransaction();
-
- # We use EffectiveId here even though it duplicates information from
- # the links table becasue of the massive performance hit we'd take
- # by trying to do a separate database query for merge info everytime
- # loaded a ticket.
-
- #update this ticket's effective id to the new ticket's id.
- my ( $id_val, $id_msg ) = $self->__Set(
- Field => 'EffectiveId',
- Value => $MergeInto->Id()
- );
-
- unless ($id_val) {
- $RT::Handle->Rollback();
- return ( 0, $self->loc("Merge failed. Couldn't set EffectiveId") );
- }
-
- my ( $status_val, $status_msg ) = $self->__Set( Field => 'Status', Value => 'resolved');
-
- unless ($status_val) {
- $RT::Handle->Rollback();
- $RT::Logger->error( $self->loc("[_1] couldn't set status to resolved. RT's Database may be inconsistent.", $self) );
- return ( 0, $self->loc("Merge failed. Couldn't set Status") );
- }
-
-
- # update all the links that point to that old ticket
- my $old_links_to = RT::Links->new($self->CurrentUser);
- $old_links_to->Limit(FIELD => 'Target', VALUE => $self->URI);
-
- my %old_seen;
- while (my $link = $old_links_to->Next) {
- if (exists $old_seen{$link->Base."-".$link->Type}) {
- $link->Delete;
- }
- elsif ($link->Base eq $MergeInto->URI) {
- $link->Delete;
- } else {
- # First, make sure the link doesn't already exist. then move it over.
- my $tmp = RT::Link->new($RT::SystemUser);
- $tmp->LoadByCols(Base => $link->Base, Type => $link->Type, LocalTarget => $MergeInto->id);
- if ($tmp->id) {
- $link->Delete;
- } else {
- $link->SetTarget($MergeInto->URI);
- $link->SetLocalTarget($MergeInto->id);
- }
- $old_seen{$link->Base."-".$link->Type} =1;
- }
-
- }
-
- my $old_links_from = RT::Links->new($self->CurrentUser);
- $old_links_from->Limit(FIELD => 'Base', VALUE => $self->URI);
-
- while (my $link = $old_links_from->Next) {
- if (exists $old_seen{$link->Type."-".$link->Target}) {
- $link->Delete;
- }
- if ($link->Target eq $MergeInto->URI) {
- $link->Delete;
- } else {
- # First, make sure the link doesn't already exist. then move it over.
- my $tmp = RT::Link->new($RT::SystemUser);
- $tmp->LoadByCols(Target => $link->Target, Type => $link->Type, LocalBase => $MergeInto->id);
- if ($tmp->id) {
- $link->Delete;
- } else {
- $link->SetBase($MergeInto->URI);
- $link->SetLocalBase($MergeInto->id);
- $old_seen{$link->Type."-".$link->Target} =1;
- }
- }
-
- }
-
- # Update time fields
- foreach my $type qw(TimeEstimated TimeWorked TimeLeft) {
-
- my $mutator = "Set$type";
- $MergeInto->$mutator(
- ( $MergeInto->$type() || 0 ) + ( $self->$type() || 0 ) );
-
- }
-#add all of this ticket's watchers to that ticket.
- foreach my $watcher_type qw(Requestors Cc AdminCc) {
-
- my $people = $self->$watcher_type->MembersObj;
- my $addwatcher_type = $watcher_type;
- $addwatcher_type =~ s/s$//;
-
- while ( my $watcher = $people->Next ) {
-
- my ($val, $msg) = $MergeInto->_AddWatcher(
- Type => $addwatcher_type,
- Silent => 1,
- PrincipalId => $watcher->MemberId
- );
- unless ($val) {
- $RT::Logger->warning($msg);
- }
- }
-
- }
-
- #find all of the tickets that were merged into this ticket.
- my $old_mergees = new RT::Tickets( $self->CurrentUser );
- $old_mergees->Limit(
- FIELD => 'EffectiveId',
- OPERATOR => '=',
- VALUE => $self->Id
- );
-
- # update their EffectiveId fields to the new ticket's id
- while ( my $ticket = $old_mergees->Next() ) {
- my ( $val, $msg ) = $ticket->__Set(
- Field => 'EffectiveId',
- Value => $MergeInto->Id()
- );
- }
-
- #make a new link: this ticket is merged into that other ticket.
- $self->AddLink( Type => 'MergedInto', Target => $MergeInto->Id());
-
- $MergeInto->_SetLastUpdated;
-
- $RT::Handle->Commit();
- return ( 1, $self->loc("Merge Successful") );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with ownership
-
-# {{{ sub OwnerObj
-
-=head2 OwnerObj
-
-Takes nothing and returns an RT::User object of
-this ticket's owner
-
-=cut
-
-sub OwnerObj {
- my $self = shift;
-
- #If this gets ACLed, we lose on a rights check in User.pm and
- #get deep recursion. if we need ACLs here, we need
- #an equiv without ACLs
-
- my $owner = new RT::User( $self->CurrentUser );
- $owner->Load( $self->__Value('Owner') );
-
- #Return the owner object
- return ($owner);
-}
-
-# }}}
-
-# {{{ sub OwnerAsString
-
-=head2 OwnerAsString
-
-Returns the owner's email address
-
-=cut
-
-sub OwnerAsString {
- my $self = shift;
- return ( $self->OwnerObj->EmailAddress );
-
-}
-
-# }}}
-
-# {{{ sub SetOwner
-
-=head2 SetOwner
-
-Takes two arguments:
- the Id or Name of the owner
-and (optionally) the type of the SetOwner Transaction. It defaults
-to 'Give'. 'Steal' is also a valid option.
-
-=begin testing
-
-my $root = RT::User->new($RT::SystemUser);
-$root->Load('root');
-ok ($root->Id, "Loaded the root user");
-my $t = RT::Ticket->new($RT::SystemUser);
-$t->Load(1);
-$t->SetOwner('root');
-is ($t->OwnerObj->Name, 'root' , "Root owns the ticket");
-$t->Steal();
-is ($t->OwnerObj->id, $RT::SystemUser->id , "SystemUser owns the ticket");
-my $txns = RT::Transactions->new($RT::SystemUser);
-$txns->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$txns->Limit(FIELD => 'ObjectId', VALUE => '1');
-$txns->Limit(FIELD => 'ObjectType', VALUE => 'RT::Ticket');
-my $steal = $txns->First;
-ok($steal->OldValue == $root->Id , "Stolen from root");
-ok($steal->NewValue == $RT::SystemUser->Id , "Stolen by the systemuser");
-
-=end testing
-
-=cut
-
-sub SetOwner {
- my $self = shift;
- my $NewOwner = shift;
- my $Type = shift || "Give";
-
- # must have ModifyTicket rights
- # or TakeTicket/StealTicket and $NewOwner is self
- # see if it's a take
- if ( $self->OwnerObj->Id == $RT::Nobody->Id ) {
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- || $self->CurrentUserHasRight('TakeTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
-
- # see if it's a steal
- elsif ( $self->OwnerObj->Id != $RT::Nobody->Id
- && $self->OwnerObj->Id != $self->CurrentUser->id ) {
-
- unless ( $self->CurrentUserHasRight('ModifyTicket')
- || $self->CurrentUserHasRight('StealTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
- else {
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- }
- my $NewOwnerObj = RT::User->new( $self->CurrentUser );
- my $OldOwnerObj = $self->OwnerObj;
-
- $NewOwnerObj->Load($NewOwner);
- if ( !$NewOwnerObj->Id ) {
- return ( 0, $self->loc("That user does not exist") );
- }
-
- #If thie ticket has an owner and it's not the current user
-
- if ( ( $Type ne 'Steal' )
- and ( $Type ne 'Force' )
- and #If we're not stealing
- ( $self->OwnerObj->Id != $RT::Nobody->Id ) and #and the owner is set
- ( $self->CurrentUser->Id ne $self->OwnerObj->Id() )
- ) { #and it's not us
- return ( 0,
- $self->loc(
-"You can only reassign tickets that you own or that are unowned" ) );
- }
-
- #If we've specified a new owner and that user can't modify the ticket
- elsif ( ( $NewOwnerObj->Id )
- and ( !$NewOwnerObj->HasRight( Right => 'OwnTicket',
- Object => $self ) )
- ) {
- return ( 0, $self->loc("That user may not own tickets in that queue") );
- }
-
- #If the ticket has an owner and it's the new owner, we don't need
- #To do anything
- elsif ( ( $self->OwnerObj )
- and ( $NewOwnerObj->Id eq $self->OwnerObj->Id ) ) {
- return ( 0, $self->loc("That user already owns that ticket") );
- }
-
- $RT::Handle->BeginTransaction();
-
- # Delete the owner in the owner group, then add a new one
- # TODO: is this safe? it's not how we really want the API to work
- # for most things, but it's fast.
- my ( $del_id, $del_msg ) = $self->OwnerGroup->MembersObj->First->Delete();
- unless ($del_id) {
- $RT::Handle->Rollback();
- return ( 0, $self->loc("Could not change owner. ") . $del_msg );
- }
-
- my ( $add_id, $add_msg ) = $self->OwnerGroup->_AddMember(
- PrincipalId => $NewOwnerObj->PrincipalId,
- InsideTransaction => 1 );
- unless ($add_id) {
- $RT::Handle->Rollback();
- return ( 0, $self->loc("Could not change owner. ") . $add_msg );
- }
-
- # We call set twice with slightly different arguments, so
- # as to not have an SQL transaction span two RT transactions
-
- my ( $val, $msg ) = $self->_Set(
- Field => 'Owner',
- RecordTransaction => 0,
- Value => $NewOwnerObj->Id,
- TimeTaken => 0,
- TransactionType => $Type,
- CheckACL => 0, # don't check acl
- );
-
- unless ($val) {
- $RT::Handle->Rollback;
- return ( 0, $self->loc("Could not change owner. ") . $msg );
- }
-
- $RT::Handle->Commit();
-
- my ( $trans, $msg, undef ) = $self->_NewTransaction(
- Type => $Type,
- Field => 'Owner',
- NewValue => $NewOwnerObj->Id,
- OldValue => $OldOwnerObj->Id,
- TimeTaken => 0 );
-
- if ($trans) {
- $msg = $self->loc( "Owner changed from [_1] to [_2]",
- $OldOwnerObj->Name, $NewOwnerObj->Name );
-
- # TODO: make sure the trans committed properly
- }
- return ( $trans, $msg );
-
-}
-
-# }}}
-
-# {{{ sub Take
-
-=head2 Take
-
-A convenince method to set the ticket's owner to the current user
-
-=cut
-
-sub Take {
- my $self = shift;
- return ( $self->SetOwner( $self->CurrentUser->Id, 'Take' ) );
-}
-
-# }}}
-
-# {{{ sub Untake
-
-=head2 Untake
-
-Convenience method to set the owner to 'nobody' if the current user is the owner.
-
-=cut
-
-sub Untake {
- my $self = shift;
- return ( $self->SetOwner( $RT::Nobody->UserObj->Id, 'Untake' ) );
-}
-
-# }}}
-
-# {{{ sub Steal
-
-=head2 Steal
-
-A convenience method to change the owner of the current ticket to the
-current user. Even if it's owned by another user.
-
-=cut
-
-sub Steal {
- my $self = shift;
-
- if ( $self->IsOwner( $self->CurrentUser ) ) {
- return ( 0, $self->loc("You already own this ticket") );
- }
- else {
- return ( $self->SetOwner( $self->CurrentUser->Id, 'Steal' ) );
-
- }
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with status
-
-# {{{ sub ValidateStatus
-
-=head2 ValidateStatus STATUS
-
-Takes a string. Returns true if that status is a valid status for this ticket.
-Returns false otherwise.
-
-=cut
-
-sub ValidateStatus {
- my $self = shift;
- my $status = shift;
-
- #Make sure the status passed in is valid
- unless ( $self->QueueObj->IsValidStatus($status) ) {
- return (undef);
- }
-
- return (1);
-
-}
-
-# }}}
-
-# {{{ sub SetStatus
-
-=head2 SetStatus STATUS
-
-Set this ticket\'s status. STATUS can be one of: new, open, stalled, resolved, rejected or deleted.
-
-Alternatively, you can pass in a list of named parameters (Status => STATUS, Force => FORCE). If FORCE is true, ignore unresolved dependencies and force a status change.
-
-=begin testing
-
-my $tt = RT::Ticket->new($RT::SystemUser);
-my ($id, $tid, $msg)= $tt->Create(Queue => 'general',
- Subject => 'test');
-ok($id, $msg);
-is($tt->Status, 'new', "New ticket is created as new");
-
-($id, $msg) = $tt->SetStatus('open');
-ok($id, $msg);
-like($msg, qr/open/i, "Status message is correct");
-($id, $msg) = $tt->SetStatus('resolved');
-ok($id, $msg);
-like($msg, qr/resolved/i, "Status message is correct");
-($id, $msg) = $tt->SetStatus('resolved');
-ok(!$id,$msg);
-
-
-=end testing
-
-
-=cut
-
-sub SetStatus {
- my $self = shift;
- my %args;
-
- if (@_ == 1) {
- $args{Status} = shift;
- }
- else {
- %args = (@_);
- }
-
- #Check ACL
- if ( $args{Status} eq 'deleted') {
- unless ($self->CurrentUserHasRight('DeleteTicket')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- } else {
- unless ($self->CurrentUserHasRight('ModifyTicket')) {
- return ( 0, $self->loc('Permission Denied') );
- }
- }
-
- if (!$args{Force} && ($args{'Status'} eq 'resolved') && $self->HasUnresolvedDependencies) {
- return (0, $self->loc('That ticket has unresolved dependencies'));
- }
-
- my $now = RT::Date->new( $self->CurrentUser );
- $now->SetToNow();
-
- #If we're changing the status from new, record that we've started
- if ( ( $self->Status =~ /new/ ) && ( $args{Status} ne 'new' ) ) {
-
- #Set the Started time to "now"
- $self->_Set( Field => 'Started',
- Value => $now->ISO,
- RecordTransaction => 0 );
- }
-
- #When we close a ticket, set the 'Resolved' attribute to now.
- # It's misnamed, but that's just historical.
- if ( $self->QueueObj->IsInactiveStatus($args{Status}) ) {
- $self->_Set( Field => 'Resolved',
- Value => $now->ISO,
- RecordTransaction => 0 );
- }
-
- #Actually update the status
- my ($val, $msg)= $self->_Set( Field => 'Status',
- Value => $args{Status},
- TimeTaken => 0,
- CheckACL => 0,
- TransactionType => 'Status' );
-
- return($val,$msg);
-}
-
-# }}}
-
-# {{{ sub Kill
-
-=head2 Kill
-
-Takes no arguments. Marks this ticket for garbage collection
-
-=cut
-
-sub Kill {
- my $self = shift;
- $RT::Logger->crit("'Kill' is deprecated. use 'Delete' instead.");
- return $self->Delete;
-}
-
-sub Delete {
- my $self = shift;
- return ( $self->SetStatus('deleted') );
-
- # TODO: garbage collection
-}
-
-# }}}
-
-# {{{ sub Stall
-
-=head2 Stall
-
-Sets this ticket's status to stalled
-
-=cut
-
-sub Stall {
- my $self = shift;
- return ( $self->SetStatus('stalled') );
-}
-
-# }}}
-
-# {{{ sub Reject
-
-=head2 Reject
-
-Sets this ticket's status to rejected
-
-=cut
-
-sub Reject {
- my $self = shift;
- return ( $self->SetStatus('rejected') );
-}
-
-# }}}
-
-# {{{ sub Open
-
-=head2 Open
-
-Sets this ticket\'s status to Open
-
-=cut
-
-sub Open {
- my $self = shift;
- return ( $self->SetStatus('open') );
-}
-
-# }}}
-
-# {{{ sub Resolve
-
-=head2 Resolve
-
-Sets this ticket\'s status to Resolved
-
-=cut
-
-sub Resolve {
- my $self = shift;
- return ( $self->SetStatus('resolved') );
-}
-
-# }}}
-
-# }}}
-
-
-# {{{ Actions + Routines dealing with transactions
-
-# {{{ sub SetTold and _SetTold
-
-=head2 SetTold ISO [TIMETAKEN]
-
-Updates the told and records a transaction
-
-=cut
-
-sub SetTold {
- my $self = shift;
- my $told;
- $told = shift if (@_);
- my $timetaken = shift || 0;
-
- unless ( $self->CurrentUserHasRight('ModifyTicket') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- my $datetold = new RT::Date( $self->CurrentUser );
- if ($told) {
- $datetold->Set( Format => 'iso',
- Value => $told );
- }
- else {
- $datetold->SetToNow();
- }
-
- return ( $self->_Set( Field => 'Told',
- Value => $datetold->ISO,
- TimeTaken => $timetaken,
- TransactionType => 'Told' ) );
-}
-
-=head2 _SetTold
-
-Updates the told without a transaction or acl check. Useful when we're sending replies.
-
-=cut
-
-sub _SetTold {
- my $self = shift;
-
- my $now = new RT::Date( $self->CurrentUser );
- $now->SetToNow();
-
- #use __Set to get no ACLs ;)
- return ( $self->__Set( Field => 'Told',
- Value => $now->ISO ) );
-}
-
-# }}}
-
-=head2 TransactionBatch
-
- Returns an array reference of all transactions created on this ticket during
- this ticket object's lifetime, or undef if there were none.
-
- Only works when the $RT::UseTransactionBatch config variable is set to true.
-
-=cut
-
-sub TransactionBatch {
- my $self = shift;
- return $self->{_TransactionBatch};
-}
-
-sub DESTROY {
- my $self = shift;
-
- # DESTROY methods need to localize $@, or it may unset it. This
- # causes $m->abort to not bubble all of the way up. See perlbug
- # http://rt.perl.org/rt3/Ticket/Display.html?id=17650
- local $@;
-
- # The following line eliminates reentrancy.
- # It protects against the fact that perl doesn't deal gracefully
- # when an object's refcount is changed in its destructor.
- return if $self->{_Destroyed}++;
-
- my $batch = $self->TransactionBatch or return;
- require RT::Scrips;
- RT::Scrips->new($RT::SystemUser)->Apply(
- Stage => 'TransactionBatch',
- TicketObj => $self,
- TransactionObj => $batch->[0],
- Type => join(',', (map { $_->Type } @{$batch}) )
- );
-}
-
-# }}}
-
-# {{{ PRIVATE UTILITY METHODS. Mostly needed so Ticket can be a DBIx::Record
-
-# {{{ sub _OverlayAccessible
-
-sub _OverlayAccessible {
- {
- EffectiveId => { 'read' => 1, 'write' => 1, 'public' => 1 },
- Queue => { 'read' => 1, 'write' => 1 },
- Requestors => { 'read' => 1, 'write' => 1 },
- Owner => { 'read' => 1, 'write' => 1 },
- Subject => { 'read' => 1, 'write' => 1 },
- InitialPriority => { 'read' => 1, 'write' => 1 },
- FinalPriority => { 'read' => 1, 'write' => 1 },
- Priority => { 'read' => 1, 'write' => 1 },
- Status => { 'read' => 1, 'write' => 1 },
- TimeEstimated => { 'read' => 1, 'write' => 1 },
- TimeWorked => { 'read' => 1, 'write' => 1 },
- TimeLeft => { 'read' => 1, 'write' => 1 },
- Told => { 'read' => 1, 'write' => 1 },
- Resolved => { 'read' => 1 },
- Type => { 'read' => 1 },
- Starts => { 'read' => 1, 'write' => 1 },
- Started => { 'read' => 1, 'write' => 1 },
- Due => { 'read' => 1, 'write' => 1 },
- Creator => { 'read' => 1, 'auto' => 1 },
- Created => { 'read' => 1, 'auto' => 1 },
- LastUpdatedBy => { 'read' => 1, 'auto' => 1 },
- LastUpdated => { 'read' => 1, 'auto' => 1 }
- };
-
-}
-
-# }}}
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
-
- my %args = ( Field => undef,
- Value => undef,
- TimeTaken => 0,
- RecordTransaction => 1,
- UpdateTicket => 1,
- CheckACL => 1,
- TransactionType => 'Set',
- @_ );
-
- if ($args{'CheckACL'}) {
- unless ( $self->CurrentUserHasRight('ModifyTicket')) {
- return ( 0, $self->loc("Permission Denied"));
- }
- }
-
- unless ($args{'UpdateTicket'} || $args{'RecordTransaction'}) {
- $RT::Logger->error("Ticket->_Set called without a mandate to record an update or update the ticket");
- return(0, $self->loc("Internal Error"));
- }
-
- #if the user is trying to modify the record
-
- #Take care of the old value we really don't want to get in an ACL loop.
- # so ask the super::_Value
- my $Old = $self->SUPER::_Value("$args{'Field'}");
-
- my ($ret, $msg);
- if ( $args{'UpdateTicket'} ) {
-
- #Set the new value
- ( $ret, $msg ) = $self->SUPER::_Set( Field => $args{'Field'},
- Value => $args{'Value'} );
-
- #If we can't actually set the field to the value, don't record
- # a transaction. instead, get out of here.
- if ( $ret == 0 ) { return ( 0, $msg ); }
- }
-
- if ( $args{'RecordTransaction'} == 1 ) {
-
- my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction(
- Type => $args{'TransactionType'},
- Field => $args{'Field'},
- NewValue => $args{'Value'},
- OldValue => $Old,
- TimeTaken => $args{'TimeTaken'},
- );
- return ( $Trans, scalar $TransObj->BriefDescription );
- }
- else {
- return ( $ret, $msg );
- }
-}
-
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
- #if the field is public, return it.
- if ( $self->_Accessible( $field, 'public' ) ) {
-
- #$RT::Logger->debug("Skipping ACL check for $field\n");
- return ( $self->SUPER::_Value($field) );
-
- }
-
- #If the current user doesn't have ACLs, don't let em at it.
-
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return (undef);
- }
- return ( $self->SUPER::_Value($field) );
-
-}
-
-# }}}
-
-# {{{ sub _UpdateTimeTaken
-
-=head2 _UpdateTimeTaken
-
-This routine will increment the timeworked counter. it should
-only be called from _NewTransaction
-
-=cut
-
-sub _UpdateTimeTaken {
- my $self = shift;
- my $Minutes = shift;
- my ($Total);
-
- $Total = $self->SUPER::_Value("TimeWorked");
- $Total = ( $Total || 0 ) + ( $Minutes || 0 );
- $self->SUPER::_Set(
- Field => "TimeWorked",
- Value => $Total
- );
-
- return ($Total);
-}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with ACCESS CONTROL
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight
-
- Takes the textual name of a Ticket scoped right (from RT::ACE) and returns
-1 if the user has that right. It returns 0 if the user doesn't have that right.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
- return (
- $self->HasRight(
- Principal => $self->CurrentUser->UserObj(),
- Right => "$right"
- )
- );
-
-}
-
-# }}}
-
-# {{{ sub HasRight
-
-=head2 HasRight
-
- Takes a paramhash with the attributes 'Right' and 'Principal'
- 'Right' is a ticket-scoped textual right from RT::ACE
- 'Principal' is an RT::User object
-
- Returns 1 if the principal has the right. Returns undef if not.
-
-=cut
-
-sub HasRight {
- my $self = shift;
- my %args = (
- Right => undef,
- Principal => undef,
- @_
- );
-
- unless ( ( defined $args{'Principal'} ) and ( ref( $args{'Principal'} ) ) )
- {
- Carp::cluck;
- $RT::Logger->crit("Principal attrib undefined for Ticket::HasRight");
- return(undef);
- }
-
- return (
- $args{'Principal'}->HasRight(
- Object => $self,
- Right => $args{'Right'}
- )
- );
-}
-
-# }}}
-
-# }}}
-
-# {{{ sub Transactions
-
-=head2 Transactions
-
- Returns an RT::Transactions object of all transactions on this ticket
-
-=cut
-
-sub Transactions {
- my $self = shift;
-
- my $transactions = RT::Transactions->new( $self->CurrentUser );
-
- #If the user has no rights, return an empty object
- if ( $self->CurrentUserHasRight('ShowTicket') ) {
- $transactions->LimitToTicket($self->id);
-
- # if the user may not see comments do not return them
- unless ( $self->CurrentUserHasRight('ShowTicketComments') ) {
- $transactions->Limit(
- FIELD => 'Type',
- OPERATOR => '!=',
- VALUE => "Comment"
- );
- $transactions->Limit(
- FIELD => 'Type',
- OPERATOR => '!=',
- VALUE => "CommentEmailRecord",
- ENTRYAGGREGATOR => 'AND'
- );
-
- }
- }
-
- return ($transactions);
-}
-
-# }}}
-
-
-# {{{ TransactionCustomFields
-
-=head2 TransactionCustomFields
-
- Returns the custom fields that transactions on tickets will ahve.
-
-=cut
-
-sub TransactionCustomFields {
- my $self = shift;
- return $self->QueueObj->TicketTransactionCustomFields;
-}
-
-# }}}
-
-# {{{ sub CustomFieldValues
-
-=head2 CustomFieldValues
-
-# Do name => id mapping (if needed) before falling back to
-# RT::Record's CustomFieldValues
-
-See L<RT::Record>
-
-=cut
-
-sub CustomFieldValues {
- my $self = shift;
- my $field = shift;
- unless ( $field =~ /^\d+$/ ) {
- my $cf = RT::CustomField->new( $self->CurrentUser );
- $cf->LoadByNameAndQueue( Name => $field, Queue => $self->QueueObj->Id );
- unless ( $cf->id ) {
- $cf->LoadByNameAndQueue( Name => $field, Queue => '0' );
- }
- $field = $cf->id;
- }
- return $self->SUPER::CustomFieldValues($field);
-}
-
-# }}}
-
-# {{{ sub CustomFieldLookupType
-
-=head2 CustomFieldLookupType
-
-Returns the RT::Ticket lookup type, which can be passed to
-RT::CustomField->Create() via the 'LookupType' hash key.
-
-=cut
-
-# }}}
-
-sub CustomFieldLookupType {
- "RT::Queue-RT::Ticket";
-}
-
-1;
-
-=head1 AUTHOR
-
-Jesse Vincent, jesse@bestpractical.com
-
-=head1 SEE ALSO
-
-RT
-
-=cut
-
diff --git a/rt/lib/RT/Tickets.pm b/rt/lib/RT/Tickets.pm
deleted file mode 100755
index b6b3491..0000000
--- a/rt/lib/RT/Tickets.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Tickets -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Tickets
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Tickets;
-
-use RT::SearchBuilder;
-use RT::Ticket;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Tickets';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Ticket item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Ticket->new($self->CurrentUser));
-}
-
- eval "require RT::Tickets_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Tickets_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Tickets_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Tickets_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Tickets_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Tickets_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Tickets_Overlay, RT::Tickets_Vendor, RT::Tickets_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Tickets_Overlay.pm b/rt/lib/RT/Tickets_Overlay.pm
deleted file mode 100644
index 0e6585c..0000000
--- a/rt/lib/RT/Tickets_Overlay.pm
+++ /dev/null
@@ -1,2673 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Major Changes:
-
-# - Decimated ProcessRestrictions and broke it into multiple
-# functions joined by a LUT
-# - Semi-Generic SQL stuff moved to another file
-
-# Known Issues: FIXME!
-
-# - ClearRestrictions and Reinitialization is messy and unclear. The
-# only good way to do it is to create a new RT::Tickets object.
-
-=head1 NAME
-
- RT::Tickets - A collection of Ticket objects
-
-
-=head1 SYNOPSIS
-
- use RT::Tickets;
- my $tickets = new RT::Tickets($CurrentUser);
-
-=head1 DESCRIPTION
-
- A collection of RT::Tickets.
-
-=head1 METHODS
-
-=begin testing
-
-ok (require RT::Tickets);
-ok( my $testtickets = RT::Tickets->new( $RT::SystemUser ) );
-ok( $testtickets->LimitStatus( VALUE => 'deleted' ) );
-# Should be zero until 'allow_deleted_search'
-ok( $testtickets->Count == 0 );
-
-=end testing
-
-=cut
-
-package RT::Tickets;
-
-use strict;
-
-package RT::Tickets;
-
-no warnings qw(redefine);
-use vars qw(@SORTFIELDS);
-use RT::CustomFields;
-
-# Configuration Tables:
-
-# FIELDS is a mapping of searchable Field name, to Type, and other
-# metadata.
-
-my %FIELDS = (
- Status => ['ENUM'],
- Queue => [ 'ENUM' => 'Queue', ],
- Type => [ 'ENUM', ],
- Creator => [ 'ENUM' => 'User', ],
- LastUpdatedBy => [ 'ENUM' => 'User', ],
- Owner => [ 'ENUM' => 'User', ],
- EffectiveId => [ 'INT', ],
- id => [ 'INT', ],
- InitialPriority => [ 'INT', ],
- FinalPriority => [ 'INT', ],
- Priority => [ 'INT', ],
- TimeLeft => [ 'INT', ],
- TimeWorked => [ 'INT', ],
- MemberOf => [ 'LINK' => To => 'MemberOf', ],
- DependsOn => [ 'LINK' => To => 'DependsOn', ],
- RefersTo => [ 'LINK' => To => 'RefersTo', ],
- HasMember => [ 'LINK' => From => 'MemberOf', ],
- DependentOn => [ 'LINK' => From => 'DependsOn', ],
- DependedOnBy => [ 'LINK' => From => 'DependsOn', ],
- ReferredToBy => [ 'LINK' => From => 'RefersTo', ],
- Told => ['DATE' => 'Told',],
- Starts => ['DATE' => 'Starts',],
- Started => ['DATE' => 'Started',],
- Due => ['DATE' => 'Due',],
- Resolved => ['DATE' => 'Resolved',],
- LastUpdated => ['DATE' => 'LastUpdated',],
- Created => ['DATE' => 'Created',],
- Subject => ['STRING',],
- Content => ['TRANSFIELD',],
- ContentType => ['TRANSFIELD',],
- Filename => ['TRANSFIELD',],
- TransactionDate => ['TRANSDATE',],
- Requestor => ['WATCHERFIELD' => 'Requestor',],
- Requestors => ['WATCHERFIELD' => 'Requestor',],
- Cc => ['WATCHERFIELD' => 'Cc',],
- AdminCc => ['WATCHERFIELD' => 'AdminCc',],
- Watcher => ['WATCHERFIELD'],
- LinkedTo => ['LINKFIELD',],
- CustomFieldValue =>['CUSTOMFIELD',],
- CF => ['CUSTOMFIELD',],
- Updated => [ 'TRANSDATE', ],
- RequestorGroup => [ 'MEMBERSHIPFIELD' => 'Requestor', ],
- CCGroup => [ 'MEMBERSHIPFIELD' => 'Cc', ],
- AdminCCGroup => [ 'MEMBERSHIPFIELD' => 'AdminCc', ],
- WatcherGroup => [ 'MEMBERSHIPFIELD', ],
-);
-
-# Mapping of Field Type to Function
-my %dispatch = (
- ENUM => \&_EnumLimit,
- INT => \&_IntLimit,
- LINK => \&_LinkLimit,
- DATE => \&_DateLimit,
- STRING => \&_StringLimit,
- TRANSFIELD => \&_TransLimit,
- TRANSDATE => \&_TransDateLimit,
- WATCHERFIELD => \&_WatcherLimit,
- MEMBERSHIPFIELD => \&_WatcherMembershipLimit,
- LINKFIELD => \&_LinkFieldLimit,
- CUSTOMFIELD => \&_CustomFieldLimit,
-);
-my %can_bundle = ( WATCHERFIELD => "yeps", );
-
-# Default EntryAggregator per type
-# if you specify OP, you must specify all valid OPs
-my %DefaultEA = (
- INT => 'AND',
- ENUM => {
- '=' => 'OR',
- '!=' => 'AND'
- },
- DATE => {
- '=' => 'OR',
- '>=' => 'AND',
- '<=' => 'AND',
- '>' => 'AND',
- '<' => 'AND'
- },
- STRING => {
- '=' => 'OR',
- '!=' => 'AND',
- 'LIKE' => 'AND',
- 'NOT LIKE' => 'AND'
- },
- TRANSFIELD => 'AND',
- TRANSDATE => 'AND',
- LINK => 'OR',
- LINKFIELD => 'AND',
- TARGET => 'AND',
- BASE => 'AND',
- WATCHERFIELD => {
- '=' => 'OR',
- '!=' => 'AND',
- 'LIKE' => 'OR',
- 'NOT LIKE' => 'AND'
- },
-
- CUSTOMFIELD => 'OR',
-);
-
-# Helper functions for passing the above lexically scoped tables above
-# into Tickets_Overlay_SQL.
-sub FIELDS { return \%FIELDS }
-sub dispatch { return \%dispatch }
-sub can_bundle { return \%can_bundle }
-
-# Bring in the clowns.
-require RT::Tickets_Overlay_SQL;
-
-# {{{ sub SortFields
-
-@SORTFIELDS = qw(id Status
- Queue Subject
- Owner Created Due Starts Started
- Told
- Resolved LastUpdated Priority TimeWorked TimeLeft);
-
-=head2 SortFields
-
-Returns the list of fields that lists of tickets can easily be sorted by
-
-=cut
-
-sub SortFields {
- my $self = shift;
- return (@SORTFIELDS);
-}
-
-# }}}
-
-# BEGIN SQL STUFF *********************************
-
-=head1 Limit Helper Routines
-
-These routines are the targets of a dispatch table depending on the
-type of field. They all share the same signature:
-
- my ($self,$field,$op,$value,@rest) = @_;
-
-The values in @rest should be suitable for passing directly to
-DBIx::SearchBuilder::Limit.
-
-Essentially they are an expanded/broken out (and much simplified)
-version of what ProcessRestrictions used to do. They're also much
-more clearly delineated by the TYPE of field being processed.
-
-=head2 _EnumLimit
-
-Handle Fields which are limited to certain values, and potentially
-need to be looked up from another class.
-
-This subroutine actually handles two different kinds of fields. For
-some the user is responsible for limiting the values. (i.e. Status,
-Type).
-
-For others, the value specified by the user will be looked by via
-specified class.
-
-Meta Data:
- name of class to lookup in (Optional)
-
-=cut
-
-sub _EnumLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- # SQL::Statement changes != to <>. (Can we remove this now?)
- $op = "!=" if $op eq "<>";
-
- die "Invalid Operation: $op for $field"
- unless $op eq "=" or $op eq "!=";
-
- my $meta = $FIELDS{$field};
- if ( defined $meta->[1] ) {
- my $class = "RT::" . $meta->[1];
- my $o = $class->new( $sb->CurrentUser );
- $o->Load($value);
- $value = $o->Id;
- }
- $sb->_SQLLimit(
- FIELD => $field,
- VALUE => $value,
- OPERATOR => $op,
- @rest,
- );
-}
-
-=head2 _IntLimit
-
-Handle fields where the values are limited to integers. (For example,
-Priority, TimeWorked.)
-
-Meta Data:
- None
-
-=cut
-
-sub _IntLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- die "Invalid Operator $op for $field"
- unless $op =~ /^(=|!=|>|<|>=|<=)$/;
-
- $sb->_SQLLimit(
- FIELD => $field,
- VALUE => $value,
- OPERATOR => $op,
- @rest,
- );
-}
-
-=head2 _LinkLimit
-
-Handle fields which deal with links between tickets. (MemberOf, DependsOn)
-
-Meta Data:
- 1: Direction (From,To)
- 2: Link Type (MemberOf, DependsOn,RefersTo)
-
-=cut
-
-sub _LinkLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- my $meta = $FIELDS{$field};
- die "Invalid Operator $op for $field" unless $op =~ /^(=|!=|IS)/io;
-
- die "Incorrect Metadata for $field"
- unless ( defined $meta->[1] and defined $meta->[2] );
-
- my $direction = $meta->[1];
-
- my $matchfield;
- my $linkfield;
- my $is_local = 1;
- my $is_null = 0;
- if ( $direction eq 'To' ) {
- $matchfield = "Target";
- $linkfield = "Base";
-
- }
- elsif ( $direction eq 'From' ) {
- $linkfield = "Target";
- $matchfield = "Base";
-
- }
- else {
- die "Invalid link direction '$meta->[1]' for $field\n";
- }
-
- if ( $op eq '=' || $op =~ /^is/oi ) {
- if ( $value eq '' || $value =~ /^null$/io ) {
- $is_null = 1;
- }
- elsif ( $value =~ /\D/o ) {
- $is_local = 0;
- }
- else {
- $is_local = 1;
- }
- }
-
-#For doing a left join to find "unlinked tickets" we want to generate a query that looks like this
-# SELECT main.* FROM Tickets main
-# LEFT JOIN Links Links_1 ON ( (Links_1.Type = 'MemberOf')
-# AND(main.id = Links_1.LocalTarget))
-# WHERE ((main.EffectiveId = main.id))
-# AND ((main.Status != 'deleted'))
-# AND (Links_1.LocalBase IS NULL);
-
- if ($is_null) {
- my $linkalias = $sb->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'Links',
- FIELD2 => 'Local' . $linkfield
- );
-
- $sb->SUPER::Limit(
- LEFTJOIN => $linkalias,
- FIELD => 'Type',
- OPERATOR => '=',
- VALUE => $meta->[2],
- @rest,
- );
-
- $sb->_SQLLimit(
- ALIAS => $linkalias,
- ENTRYAGGREGATOR => 'AND',
- FIELD => ( $is_local ? "Local$matchfield" : $matchfield ),
- OPERATOR => 'IS',
- VALUE => 'NULL',
- QUOTEVALUE => '0',
- );
-
- }
- else {
-
- $sb->{_sql_linkalias} = $sb->NewAlias('Links')
- unless defined $sb->{_sql_linkalias};
-
- $sb->_OpenParen();
-
- $sb->_SQLLimit(
- ALIAS => $sb->{_sql_linkalias},
- FIELD => 'Type',
- OPERATOR => '=',
- VALUE => $meta->[2],
- @rest,
- );
-
- $sb->_SQLLimit(
- ALIAS => $sb->{_sql_linkalias},
- ENTRYAGGREGATOR => 'AND',
- FIELD => ( $is_local ? "Local$matchfield" : $matchfield ),
- OPERATOR => '=',
- VALUE => $value,
- );
-
- #If we're searching on target, join the base to ticket.id
- $sb->_SQLJoin(
- ALIAS1 => 'main',
- FIELD1 => $sb->{'primary_key'},
- ALIAS2 => $sb->{_sql_linkalias},
- FIELD2 => 'Local' . $linkfield
- );
-
- $sb->_CloseParen();
- }
-}
-
-=head2 _DateLimit
-
-Handle date fields. (Created, LastTold..)
-
-Meta Data:
- 1: type of link. (Probably not necessary.)
-
-=cut
-
-sub _DateLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- die "Invalid Date Op: $op"
- unless $op =~ /^(=|>|<|>=|<=)$/;
-
- my $meta = $FIELDS{$field};
- die "Incorrect Meta Data for $field"
- unless ( defined $meta->[1] );
-
- use POSIX 'strftime';
-
- my $date = RT::Date->new($sb->CurrentUser);
- $date->Set(Format => 'unknown', Value => $value);
- my $time = $date->Unix;
-
- if ( $op eq "=" ) {
-
- # if we're specifying =, that means we want everything on a
- # particular single day. in the database, we need to check for >
- # and < the edges of that day.
-
- my $daystart =
- strftime( "%Y-%m-%d %H:%M", gmtime( $time - ( $time % 86400 ) ) );
- my $dayend = strftime( "%Y-%m-%d %H:%M",
- gmtime( $time + ( 86399 - $time % 86400 ) ) );
-
- $sb->_OpenParen;
-
- $sb->_SQLLimit(
- FIELD => $meta->[1],
- OPERATOR => ">=",
- VALUE => $daystart,
- @rest,
- );
-
- $sb->_SQLLimit(
- FIELD => $meta->[1],
- OPERATOR => "<=",
- VALUE => $dayend,
- @rest,
- ENTRYAGGREGATOR => 'AND',
- );
-
- $sb->_CloseParen;
-
- }
- else {
- $value = strftime( "%Y-%m-%d %H:%M", gmtime($time) );
- $sb->_SQLLimit(
- FIELD => $meta->[1],
- OPERATOR => $op,
- VALUE => $value,
- @rest,
- );
- }
-}
-
-=head2 _StringLimit
-
-Handle simple fields which are just strings. (Subject,Type)
-
-Meta Data:
- None
-
-=cut
-
-sub _StringLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- # FIXME:
- # Valid Operators:
- # =, !=, LIKE, NOT LIKE
-
- $sb->_SQLLimit(
- FIELD => $field,
- OPERATOR => $op,
- VALUE => $value,
- CASESENSITIVE => 0,
- @rest,
- );
-}
-
-=head2 _TransDateLimit
-
-Handle fields limiting based on Transaction Date.
-
-The inpupt value must be in a format parseable by Time::ParseDate
-
-Meta Data:
- None
-
-=cut
-
-# This routine should really be factored into translimit.
-sub _TransDateLimit {
- my ( $sb, $field, $op, $value, @rest ) = @_;
-
- # See the comments for TransLimit, they apply here too
-
- $sb->{_sql_transalias} = $sb->NewAlias('Transactions')
- unless defined $sb->{_sql_transalias};
- $sb->{_sql_trattachalias} = $sb->NewAlias('Attachments')
- unless defined $sb->{_sql_trattachalias};
-
- my $date = RT::Date->new( $sb->CurrentUser );
- $date->Set( Format => 'unknown', Value => $value );
- my $time = $date->Unix;
-
- $sb->_OpenParen;
- if ( $op eq "=" ) {
-
- # if we're specifying =, that means we want everything on a
- # particular single day. in the database, we need to check for >
- # and < the edges of that day.
-
- my $daystart = strftime( "%Y-%m-%d %H:%M",
- gmtime( $time - ( $time % 86400 ) ) );
- my $dayend = strftime( "%Y-%m-%d %H:%M",
- gmtime( $time + ( 86399 - $time % 86400 ) ) );
-
- $sb->_SQLLimit(
- ALIAS => $sb->{_sql_transalias},
- FIELD => 'Created',
- OPERATOR => ">=",
- VALUE => $daystart,
- CASESENSITIVE => 0,
- @rest
- );
- $sb->_SQLLimit(
- ALIAS => $sb->{_sql_transalias},
- FIELD => 'Created',
- OPERATOR => "<=",
- VALUE => $dayend,
- CASESENSITIVE => 0,
- @rest,
- ENTRYAGGREGATOR => 'AND',
- );
-
- }
-
- # not searching for a single day
- else {
-
- #Search for the right field
- $sb->_SQLLimit(
- ALIAS => $sb->{_sql_transalias},
- FIELD => 'Created',
- OPERATOR => $op,
- VALUE => $value,
- CASESENSITIVE => 0,
- @rest
- );
- }
-
- # Join Transactions To Attachments
-
- $sb->_SQLJoin(
- ALIAS1 => $sb->{_sql_trattachalias},
- FIELD1 => 'TransactionId',
- ALIAS2 => $sb->{_sql_transalias},
- FIELD2 => 'id',
- );
-
- # Join Transactions to Tickets
- $sb->_SQLJoin(
- ALIAS1 => 'main',
- FIELD1 => $sb->{'primary_key'}, # UGH!
- ALIAS2 => $sb->{_sql_transalias},
- FIELD2 => 'ObjectId'
- );
-
- $sb->SUPER::Limit(
- ALIAS => $sb->{_sql_transalias},
- FIELD => 'ObjectType',
- VALUE => 'RT::Ticket'
- );
-
- $sb->_CloseParen;
-}
-
-=head2 _TransLimit
-
-Limit based on the Content of a transaction or the ContentType.
-
-Meta Data:
- none
-
-=cut
-
-sub _TransLimit {
-
- # Content, ContentType, Filename
-
- # If only this was this simple. We've got to do something
- # complicated here:
-
- #Basically, we want to make sure that the limits apply to
- #the same attachment, rather than just another attachment
- #for the same ticket, no matter how many clauses we lump
- #on. We put them in TicketAliases so that they get nuked
- #when we redo the join.
-
- # In the SQL, we might have
- # (( Content = foo ) or ( Content = bar AND Content = baz ))
- # The AND group should share the same Alias.
-
- # Actually, maybe it doesn't matter. We use the same alias and it
- # works itself out? (er.. different.)
-
- # Steal more from _ProcessRestrictions
-
- # FIXME: Maybe look at the previous FooLimit call, and if it was a
- # TransLimit and EntryAggregator == AND, reuse the Aliases?
-
- # Or better - store the aliases on a per subclause basis - since
- # those are going to be the things we want to relate to each other,
- # anyway.
-
- # maybe we should not allow certain kinds of aggregation of these
- # clauses and do a psuedo regex instead? - the problem is getting
- # them all into the same subclause when you have (A op B op C) - the
- # way they get parsed in the tree they're in different subclauses.
-
- my ( $self, $field, $op, $value, @rest ) = @_;
-
- $self->{_sql_transalias} = $self->NewAlias('Transactions')
- unless defined $self->{_sql_transalias};
- $self->{_sql_trattachalias} = $self->NewAlias('Attachments')
- unless defined $self->{_sql_trattachalias};
-
- $self->_OpenParen;
-
- #Search for the right field
- $self->_SQLLimit(
- ALIAS => $self->{_sql_trattachalias},
- FIELD => $field,
- OPERATOR => $op,
- VALUE => $value,
- CASESENSITIVE => 0,
- @rest
- );
-
- $self->_SQLJoin(
- ALIAS1 => $self->{_sql_trattachalias},
- FIELD1 => 'TransactionId',
- ALIAS2 => $self->{_sql_transalias},
- FIELD2 => 'id'
- );
-
- # Join Transactions to Tickets
- $self->_SQLJoin(
- ALIAS1 => 'main',
- FIELD1 => $self->{'primary_key'}, # Why not use "id" here?
- ALIAS2 => $self->{_sql_transalias},
- FIELD2 => 'ObjectId'
- );
-
- $self->SUPER::Limit(
- ALIAS => $self->{_sql_transalias},
- FIELD => 'ObjectType',
- VALUE => 'RT::Ticket',
- ENTRYAGGREGATOR => 'AND'
- );
-
- $self->_CloseParen;
-
-}
-
-=head2 _WatcherLimit
-
-Handle watcher limits. (Requestor, CC, etc..)
-
-Meta Data:
- 1: Field to query on
-
-
-=begin testing
-
-# Test to make sure that you can search for tickets by requestor address and
-# by requestor name.
-
-my ($id,$msg);
-my $u1 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u1->Create( Name => 'RequestorTestOne', EmailAddress => 'rqtest1@example.com');
-ok ($id,$msg);
-my $u2 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u2->Create( Name => 'RequestorTestTwo', EmailAddress => 'rqtest2@example.com');
-ok ($id,$msg);
-
-my $t1 = RT::Ticket->new($RT::SystemUser);
-my ($trans);
-($id,$trans,$msg) =$t1->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u1->EmailAddress]);
-ok ($id, $msg);
-
-my $t2 = RT::Ticket->new($RT::SystemUser);
-($id,$trans,$msg) =$t2->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u2->EmailAddress]);
-ok ($id, $msg);
-
-
-my $t3 = RT::Ticket->new($RT::SystemUser);
-($id,$trans,$msg) =$t3->Create (Queue => 'general', Subject => 'Requestor test one', Requestor => [$u2->EmailAddress, $u1->EmailAddress]);
-ok ($id, $msg);
-
-
-my $tix1 = RT::Tickets->new($RT::SystemUser);
-$tix1->FromSQL('Requestor.EmailAddress LIKE "rqtest1" OR Requestor.EmailAddress LIKE "rqtest2"');
-
-is ($tix1->Count, 3);
-
-my $tix2 = RT::Tickets->new($RT::SystemUser);
-$tix2->FromSQL('Requestor.Name LIKE "TestOne" OR Requestor.Name LIKE "TestTwo"');
-
-is ($tix2->Count, 3);
-
-
-my $tix3 = RT::Tickets->new($RT::SystemUser);
-$tix3->FromSQL('Requestor.EmailAddress LIKE "rqtest1"');
-
-is ($tix3->Count, 2);
-
-my $tix4 = RT::Tickets->new($RT::SystemUser);
-$tix4->FromSQL('Requestor.Name LIKE "TestOne" ');
-
-is ($tix4->Count, 2);
-
-# Searching for tickets that have two requestors isn't supported
-# There's no way to differentiate "one requestor name that matches foo and bar"
-# and "two requestors, one matching foo and one matching bar"
-
-# my $tix5 = RT::Tickets->new($RT::SystemUser);
-# $tix5->FromSQL('Requestor.Name LIKE "TestOne" AND Requestor.Name LIKE "TestTwo"');
-#
-# is ($tix5->Count, 1);
-#
-# my $tix6 = RT::Tickets->new($RT::SystemUser);
-# $tix6->FromSQL('Requestor.EmailAddress LIKE "rqtest1" AND Requestor.EmailAddress LIKE "rqtest2"');
-#
-# is ($tix6->Count, 1);
-
-
-=end testing
-
-=cut
-
-sub _WatcherLimit {
- my $self = shift;
- my $field = shift;
- my $op = shift;
- my $value = shift;
- my %rest = (@_);
-
- $self->_OpenParen;
-
- # Find out what sort of watcher we're looking for
- my $fieldname;
- if ( ref $field ) {
- $fieldname = $field->[0]->[0];
- }
- else {
- $fieldname = $field;
- }
- my $meta = $FIELDS{$fieldname};
- my $type = ( defined $meta->[1] ? $meta->[1] : undef );
-
-# We only want _one_ clause for all of requestors, cc, admincc
-# It's less flexible than what we used to do, but now it sort of actually works. (no huge cartesian products that hose the db)
- my $groups = $self->{ 'watcherlimit_' . ('global') . "_groups" } ||=
- $self->NewAlias('Groups');
- my $groupmembers =
- $self->{ 'watcherlimit_' . ('global') . "_groupmembers" } ||=
- $self->NewAlias('CachedGroupMembers');
- my $users = $self->{ 'watcherlimit_' . ('global') . "_users" } ||=
- $self->NewAlias('Users');
-
-# Use regular joins instead of SQL joins since we don't want the joins inside ticketsql or we get a huge cartesian product
- $self->SUPER::Limit(
- ALIAS => $groups,
- FIELD => 'Domain',
- VALUE => 'RT::Ticket-Role',
- ENTRYAGGREGATOR => 'AND'
- );
- $self->Join(
- ALIAS1 => $groups,
- FIELD1 => 'Instance',
- ALIAS2 => 'main',
- FIELD2 => 'id'
- );
- $self->Join(
- ALIAS1 => $groups,
- FIELD1 => 'id',
- ALIAS2 => $groupmembers,
- FIELD2 => 'GroupId'
- );
- $self->Join(
- ALIAS1 => $groupmembers,
- FIELD1 => 'MemberId',
- ALIAS2 => $users,
- FIELD2 => 'id'
- );
-
- # If we're looking for multiple watchers of a given type,
- # TicketSQL will be handing it to us as an array of clauses in
- # $field
- if ( ref $field ) { # gross hack
- $self->_OpenParen;
- for my $chunk (@$field) {
- ( $field, $op, $value, %rest ) = @$chunk;
- $self->_SQLLimit(
- ALIAS => $users,
- FIELD => $rest{SUBKEY} || 'EmailAddress',
- VALUE => $value,
- OPERATOR => $op,
- CASESENSITIVE => 0,
- %rest
- );
- }
- $self->_CloseParen;
- }
- else {
- $self->_SQLLimit(
- ALIAS => $users,
- FIELD => $rest{SUBKEY} || 'EmailAddress',
- VALUE => $value,
- OPERATOR => $op,
- CASESENSITIVE => 0,
- %rest
- );
- }
-
- $self->_SQLLimit(
- ALIAS => $groups,
- FIELD => 'Type',
- VALUE => $type,
- ENTRYAGGREGATOR => 'AND'
- )
- if ($type);
-
- $self->_CloseParen;
-}
-
-=head2 _WatcherMembershipLimit
-
-Handle watcher membership limits, i.e. whether the watcher belongs to a
-specific group or not.
-
-Meta Data:
- 1: Field to query on
-
-SELECT DISTINCT main.*
-FROM
- Tickets main,
- Groups Groups_1,
- CachedGroupMembers CachedGroupMembers_2,
- Users Users_3
-WHERE (
- (main.EffectiveId = main.id)
-) AND (
- (main.Status != 'deleted')
-) AND (
- (main.Type = 'ticket')
-) AND (
- (
- (Users_3.EmailAddress = '22')
- AND
- (Groups_1.Domain = 'RT::Ticket-Role')
- AND
- (Groups_1.Type = 'RequestorGroup')
- )
-) AND
- Groups_1.Instance = main.id
-AND
- Groups_1.id = CachedGroupMembers_2.GroupId
-AND
- CachedGroupMembers_2.MemberId = Users_3.id
-ORDER BY main.id ASC
-LIMIT 25
-
-=cut
-
-sub _WatcherMembershipLimit {
- my ( $self, $field, $op, $value, @rest ) = @_;
- my %rest = @rest;
-
- $self->_OpenParen;
-
- my $groups = $self->NewAlias('Groups');
- my $groupmembers = $self->NewAlias('CachedGroupMembers');
- my $users = $self->NewAlias('Users');
- my $memberships = $self->NewAlias('CachedGroupMembers');
-
- if ( ref $field ) { # gross hack
- my @bundle = @$field;
- $self->_OpenParen;
- for my $chunk (@bundle) {
- ( $field, $op, $value, @rest ) = @$chunk;
- $self->_SQLLimit(
- ALIAS => $memberships,
- FIELD => 'GroupId',
- VALUE => $value,
- OPERATOR => $op,
- @rest,
- );
- }
- $self->_CloseParen;
- }
- else {
- $self->_SQLLimit(
- ALIAS => $memberships,
- FIELD => 'GroupId',
- VALUE => $value,
- OPERATOR => $op,
- @rest,
- );
- }
-
- # {{{ Tie to groups for tickets we care about
- $self->_SQLLimit(
- ALIAS => $groups,
- FIELD => 'Domain',
- VALUE => 'RT::Ticket-Role',
- ENTRYAGGREGATOR => 'AND'
- );
-
- $self->Join(
- ALIAS1 => $groups,
- FIELD1 => 'Instance',
- ALIAS2 => 'main',
- FIELD2 => 'id'
- );
-
- # }}}
-
- # If we care about which sort of watcher
- my $meta = $FIELDS{$field};
- my $type = ( defined $meta->[1] ? $meta->[1] : undef );
-
- if ($type) {
- $self->_SQLLimit(
- ALIAS => $groups,
- FIELD => 'Type',
- VALUE => $type,
- ENTRYAGGREGATOR => 'AND'
- );
- }
-
- $self->Join(
- ALIAS1 => $groups,
- FIELD1 => 'id',
- ALIAS2 => $groupmembers,
- FIELD2 => 'GroupId'
- );
-
- $self->Join(
- ALIAS1 => $groupmembers,
- FIELD1 => 'MemberId',
- ALIAS2 => $users,
- FIELD2 => 'id'
- );
-
- $self->Join(
- ALIAS1 => $memberships,
- FIELD1 => 'MemberId',
- ALIAS2 => $users,
- FIELD2 => 'id'
- );
-
- $self->_CloseParen;
-
-}
-
-sub _LinkFieldLimit {
- my $restriction;
- my $self;
- my $LinkAlias;
- my %args;
- if ( $restriction->{'TYPE'} ) {
- $self->SUPER::Limit(
- ALIAS => $LinkAlias,
- ENTRYAGGREGATOR => 'AND',
- FIELD => 'Type',
- OPERATOR => '=',
- VALUE => $restriction->{'TYPE'}
- );
- }
-
- #If we're trying to limit it to things that are target of
- if ( $restriction->{'TARGET'} ) {
-
- # If the TARGET is an integer that means that we want to look at
- # the LocalTarget field. otherwise, we want to look at the
- # "Target" field
- my ($matchfield);
- if ( $restriction->{'TARGET'} =~ /^(\d+)$/ ) {
- $matchfield = "LocalTarget";
- }
- else {
- $matchfield = "Target";
- }
- $self->SUPER::Limit(
- ALIAS => $LinkAlias,
- ENTRYAGGREGATOR => 'AND',
- FIELD => $matchfield,
- OPERATOR => '=',
- VALUE => $restriction->{'TARGET'}
- );
-
- #If we're searching on target, join the base to ticket.id
- $self->_SQLJoin(
- ALIAS1 => 'main',
- FIELD1 => $self->{'primary_key'},
- ALIAS2 => $LinkAlias,
- FIELD2 => 'LocalBase'
- );
- }
-
- #If we're trying to limit it to things that are base of
- elsif ( $restriction->{'BASE'} ) {
-
- # If we're trying to match a numeric link, we want to look at
- # LocalBase, otherwise we want to look at "Base"
- my ($matchfield);
- if ( $restriction->{'BASE'} =~ /^(\d+)$/ ) {
- $matchfield = "LocalBase";
- }
- else {
- $matchfield = "Base";
- }
-
- $self->SUPER::Limit(
- ALIAS => $LinkAlias,
- ENTRYAGGREGATOR => 'AND',
- FIELD => $matchfield,
- OPERATOR => '=',
- VALUE => $restriction->{'BASE'}
- );
-
- #If we're searching on base, join the target to ticket.id
- $self->_SQLJoin(
- ALIAS1 => 'main',
- FIELD1 => $self->{'primary_key'},
- ALIAS2 => $LinkAlias,
- FIELD2 => 'LocalTarget'
- );
- }
-}
-
-=head2 KeywordLimit
-
-Limit based on Keywords
-
-Meta Data:
- none
-
-=cut
-
-sub _CustomFieldLimit {
- my ( $self, $_field, $op, $value, @rest ) = @_;
-
- my %rest = @rest;
- my $field = $rest{SUBKEY} || die "No field specified";
-
- # For our sanity, we can only limit on one queue at a time
- my $queue = 0;
-
- if ( $field =~ /^(.+?)\.{(.+)}$/ ) {
- $queue = $1;
- $field = $2;
- }
- $field = $1 if $field =~ /^{(.+)}$/; # trim { }
-
-
-# If we're trying to find custom fields that don't match something, we
-# want tickets where the custom field has no value at all. Note that
-# we explicitly don't include the "IS NULL" case, since we would
-# otherwise end up with a redundant clause.
-
- my $null_columns_ok;
- if ( ( $op =~ /^NOT LIKE$/i ) or ( $op eq '!=' ) ) {
- $null_columns_ok = 1;
- }
-
- my $cfid = 0;
- if ($queue) {
-
- my $q = RT::Queue->new( $self->CurrentUser );
- $q->Load($queue) if ($queue);
-
- my $cf;
- if ( $q->id ) {
- $cf = $q->CustomField($field);
- }
- else {
- $cf = RT::CustomField->new( $self->CurrentUser );
- $cf->LoadByNameAndQueue( Queue => '0', Name => $field );
- }
-
- $cfid = $cf->id;
-
- }
-
- my $TicketCFs;
- my $cfkey = $cfid ? $cfid : "$queue.$field";
-
- # Perform one Join per CustomField
- if ( $self->{_sql_object_cf_alias}{$cfkey} ) {
- $TicketCFs = $self->{_sql_object_cf_alias}{$cfkey};
- }
- else {
- if ($cfid) {
- $TicketCFs = $self->{_sql_object_cf_alias}{$cfkey} = $self->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'ObjectCustomFieldValues',
- FIELD2 => 'ObjectId',
- );
- $self->SUPER::Limit(
- LEFTJOIN => $TicketCFs,
- FIELD => 'CustomField',
- VALUE => $cfid,
- ENTRYAGGREGATOR => 'AND'
- );
- } else {
- my $cfalias = $self->Join(
- TYPE => 'left',
- EXPRESSION => "'$field'",
- TABLE2 => 'CustomFields',
- FIELD2 => 'Name',
- );
-
- $TicketCFs = $self->{_sql_object_cf_alias}{$cfkey} = $self->Join(
- TYPE => 'left',
- ALIAS1 => $cfalias,
- FIELD1 => 'id',
- TABLE2 => 'ObjectCustomFieldValues',
- FIELD2 => 'CustomField',
- );
- $self->SUPER::Limit(
- LEFTJOIN => $TicketCFs,
- FIELD => 'ObjectId',
- VALUE => 'main.id',
- QUOTEVALUE => 0,
- ENTRYAGGREGATOR => 'AND',
- );
- }
- $self->SUPER::Limit(
- LEFTJOIN => $TicketCFs,
- FIELD => 'ObjectType',
- VALUE => ref( $self->NewItem )
- , # we want a single item, not a collection
- ENTRYAGGREGATOR => 'AND'
- );
- $self->SUPER::Limit(
- LEFTJOIN => $TicketCFs,
- FIELD => 'Disabled',
- OPERATOR => '=',
- VALUE => '0',
- ENTRYAGGREGATOR => 'AND');
- }
-
- $self->_OpenParen if ($null_columns_ok);
-
- $self->_SQLLimit(
- ALIAS => $TicketCFs,
- FIELD => 'Content',
- OPERATOR => $op,
- VALUE => $value,
- QUOTEVALUE => 1,
- @rest
- );
-
- if ($null_columns_ok) {
- $self->_SQLLimit(
- ALIAS => $TicketCFs,
- FIELD => 'Content',
- OPERATOR => 'IS',
- VALUE => 'NULL',
- QUOTEVALUE => 0,
- ENTRYAGGREGATOR => 'OR',
- );
- }
- $self->_CloseParen if ($null_columns_ok);
-
-
-
-}
-
-# End Helper Functions
-
-# End of SQL Stuff -------------------------------------------------
-
-# {{{ Limit the result set based on content
-
-# {{{ sub Limit
-
-=head2 Limit
-
-Takes a paramhash with the fields FIELD, OPERATOR, VALUE and DESCRIPTION
-Generally best called from LimitFoo methods
-
-=cut
-
-sub Limit {
- my $self = shift;
- my %args = (
- FIELD => undef,
- OPERATOR => '=',
- VALUE => undef,
- DESCRIPTION => undef,
- @_
- );
- $args{'DESCRIPTION'} = $self->loc( "[_1] [_2] [_3]",
- $args{'FIELD'}, $args{'OPERATOR'}, $args{'VALUE'} )
- if ( !defined $args{'DESCRIPTION'} );
-
- my $index = $self->_NextIndex;
-
- #make the TicketRestrictions hash the equivalent of whatever we just passed in;
-
- %{ $self->{'TicketRestrictions'}{$index} } = %args;
-
- $self->{'RecalcTicketLimits'} = 1;
-
-# If we're looking at the effective id, we don't want to append the other clause
-# which limits us to tickets where id = effective id
- if ( $args{'FIELD'} eq 'EffectiveId' ) {
- $self->{'looking_at_effective_id'} = 1;
- }
-
- if ( $args{'FIELD'} eq 'Type' ) {
- $self->{'looking_at_type'} = 1;
- }
-
- return ($index);
-}
-
-# }}}
-
-=head2 FreezeLimits
-
-Returns a frozen string suitable for handing back to ThawLimits.
-
-=cut
-
-sub _FreezeThawKeys {
- 'TicketRestrictions', 'restriction_index', 'looking_at_effective_id',
- 'looking_at_type';
-}
-
-# {{{ sub FreezeLimits
-
-sub FreezeLimits {
- my $self = shift;
- require Storable;
- require MIME::Base64;
- MIME::Base64::base64_encode(
- Storable::freeze( \@{$self}{ $self->_FreezeThawKeys } ) );
-}
-
-# }}}
-
-=head2 ThawLimits
-
-Take a frozen Limits string generated by FreezeLimits and make this tickets
-object have that set of limits.
-
-=cut
-
-# {{{ sub ThawLimits
-
-sub ThawLimits {
- my $self = shift;
- my $in = shift;
-
- #if we don't have $in, get outta here.
- return undef unless ($in);
-
- $self->{'RecalcTicketLimits'} = 1;
-
- require Storable;
- require MIME::Base64;
-
- #We don't need to die if the thaw fails.
- @{$self}{ $self->_FreezeThawKeys } =
- eval { @{ Storable::thaw( MIME::Base64::base64_decode($in) ) }; };
-
- $RT::Logger->error($@) if $@;
-
-}
-
-# }}}
-
-# {{{ Limit by enum or foreign key
-
-# {{{ sub LimitQueue
-
-=head2 LimitQueue
-
-LimitQueue takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of = or !=. (It defaults to =).
-VALUE is a queue id or Name.
-
-
-=cut
-
-sub LimitQueue {
- my $self = shift;
- my %args = (
- VALUE => undef,
- OPERATOR => '=',
- @_
- );
-
- #TODO VALUE should also take queue names and queue objects
- #TODO FIXME why are we canonicalizing to name, not id, robrt?
- if ( $args{VALUE} =~ /^\d+$/ ) {
- my $queue = new RT::Queue( $self->CurrentUser );
- $queue->Load( $args{'VALUE'} );
- $args{VALUE} = $queue->Name;
- }
-
- # What if they pass in an Id? Check for isNum() and convert to
- # string.
-
- #TODO check for a valid queue here
-
- $self->Limit(
- FIELD => 'Queue',
- VALUE => $args{VALUE},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION =>
- join( ' ', $self->loc('Queue'), $args{'OPERATOR'}, $args{VALUE}, ),
- );
-
-}
-
-# }}}
-
-# {{{ sub LimitStatus
-
-=head2 LimitStatus
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of = or !=.
-VALUE is a status.
-
-RT adds Status != 'deleted' until object has
-allow_deleted_search internal property set.
-$tickets->{'allow_deleted_search'} = 1;
-$tickets->LimitStatus( VALUE => 'deleted' );
-
-=cut
-
-sub LimitStatus {
- my $self = shift;
- my %args = (
- OPERATOR => '=',
- @_
- );
- $self->Limit(
- FIELD => 'Status',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Status'), $args{'OPERATOR'},
- $self->loc( $args{'VALUE'} ) ),
- );
-}
-
-# }}}
-
-# {{{ sub IgnoreType
-
-=head2 IgnoreType
-
-If called, this search will not automatically limit the set of results found
-to tickets of type "Ticket". Tickets of other types, such as "project" and
-"approval" will be found.
-
-=cut
-
-sub IgnoreType {
- my $self = shift;
-
- # Instead of faking a Limit that later gets ignored, fake up the
- # fact that we're already looking at type, so that the check in
- # Tickets_Overlay_SQL/FromSQL goes down the right branch
-
- # $self->LimitType(VALUE => '__any');
- $self->{looking_at_type} = 1;
-}
-
-# }}}
-
-# {{{ sub LimitType
-
-=head2 LimitType
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of = or !=, it defaults to "=".
-VALUE is a string to search for in the type of the ticket.
-
-
-
-=cut
-
-sub LimitType {
- my $self = shift;
- my %args = (
- OPERATOR => '=',
- VALUE => undef,
- @_
- );
- $self->Limit(
- FIELD => 'Type',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION =>
- join( ' ', $self->loc('Type'), $args{'OPERATOR'}, $args{'Limit'}, ),
- );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Limit by string field
-
-# {{{ sub LimitSubject
-
-=head2 LimitSubject
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of = or !=.
-VALUE is a string to search for in the subject of the ticket.
-
-=cut
-
-sub LimitSubject {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'Subject',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join(
- ' ', $self->loc('Subject'), $args{'OPERATOR'}, $args{'VALUE'},
- ),
- );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Limit based on ticket numerical attributes
-# Things that can be > < = !=
-
-# {{{ sub LimitId
-
-=head2 LimitId
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a ticket Id to search for
-
-=cut
-
-sub LimitId {
- my $self = shift;
- my %args = (
- OPERATOR => '=',
- @_
- );
-
- $self->Limit(
- FIELD => 'id',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION =>
- join( ' ', $self->loc('Id'), $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitPriority
-
-=head2 LimitPriority
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a value to match the ticket\'s priority against
-
-=cut
-
-sub LimitPriority {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'Priority',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Priority'),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitInitialPriority
-
-=head2 LimitInitialPriority
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a value to match the ticket\'s initial priority against
-
-
-=cut
-
-sub LimitInitialPriority {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'InitialPriority',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Initial Priority'), $args{'OPERATOR'},
- $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitFinalPriority
-
-=head2 LimitFinalPriority
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a value to match the ticket\'s final priority against
-
-=cut
-
-sub LimitFinalPriority {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'FinalPriority',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Final Priority'),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitTimeWorked
-
-=head2 LimitTimeWorked
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a value to match the ticket's TimeWorked attribute
-
-=cut
-
-sub LimitTimeWorked {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'TimeWorked',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Time worked'),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitTimeLeft
-
-=head2 LimitTimeLeft
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, >, < or !=.
-VALUE is a value to match the ticket's TimeLeft attribute
-
-=cut
-
-sub LimitTimeLeft {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'TimeLeft',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Time left'),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Limiting based on attachment attributes
-
-# {{{ sub LimitContent
-
-=head2 LimitContent
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, LIKE, NOT LIKE or !=.
-VALUE is a string to search for in the body of the ticket
-
-=cut
-
-sub LimitContent {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'Content',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Ticket content'),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# {{{ sub LimitFilename
-
-=head2 LimitFilename
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, LIKE, NOT LIKE or !=.
-VALUE is a string to search for in the body of the ticket
-
-=cut
-
-sub LimitFilename {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'Filename',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Attachment filename'), $args{'OPERATOR'},
- $args{'VALUE'}, ),
- );
-}
-
-# }}}
-# {{{ sub LimitContentType
-
-=head2 LimitContentType
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of =, LIKE, NOT LIKE or !=.
-VALUE is a content type to search ticket attachments for
-
-=cut
-
-sub LimitContentType {
- my $self = shift;
- my %args = (@_);
- $self->Limit(
- FIELD => 'ContentType',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION => join( ' ',
- $self->loc('Ticket content type'), $args{'OPERATOR'},
- $args{'VALUE'}, ),
- );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Limiting based on people
-
-# {{{ sub LimitOwner
-
-=head2 LimitOwner
-
-Takes a paramhash with the fields OPERATOR and VALUE.
-OPERATOR is one of = or !=.
-VALUE is a user id.
-
-=cut
-
-sub LimitOwner {
- my $self = shift;
- my %args = (
- OPERATOR => '=',
- @_
- );
-
- my $owner = new RT::User( $self->CurrentUser );
- $owner->Load( $args{'VALUE'} );
-
- # FIXME: check for a valid $owner
- $self->Limit(
- FIELD => 'Owner',
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- DESCRIPTION =>
- join( ' ', $self->loc('Owner'), $args{'OPERATOR'}, $owner->Name(), ),
- );
-
-}
-
-# }}}
-
-# {{{ Limiting watchers
-
-# {{{ sub LimitWatcher
-
-=head2 LimitWatcher
-
- Takes a paramhash with the fields OPERATOR, TYPE and VALUE.
- OPERATOR is one of =, LIKE, NOT LIKE or !=.
- VALUE is a value to match the ticket\'s watcher email addresses against
- TYPE is the sort of watchers you want to match against. Leave it undef if you want to search all of them
-
-=begin testing
-
-my $t1 = RT::Ticket->new($RT::SystemUser);
-$t1->Create(Queue => 'general', Subject => "LimitWatchers test", Requestors => \['requestor1@example.com']);
-
-=end testing
-
-=cut
-
-sub LimitWatcher {
- my $self = shift;
- my %args = (
- OPERATOR => '=',
- VALUE => undef,
- TYPE => undef,
- @_
- );
-
- #build us up a description
- my ( $watcher_type, $desc );
- if ( $args{'TYPE'} ) {
- $watcher_type = $args{'TYPE'};
- }
- else {
- $watcher_type = "Watcher";
- }
-
- $self->Limit(
- FIELD => $watcher_type,
- VALUE => $args{'VALUE'},
- OPERATOR => $args{'OPERATOR'},
- TYPE => $args{'TYPE'},
- DESCRIPTION => join( ' ',
- $self->loc($watcher_type),
- $args{'OPERATOR'}, $args{'VALUE'}, ),
- );
-}
-
-sub LimitRequestor {
- my $self = shift;
- my %args = (@_);
- my ( $package, $filename, $line ) = caller;
- $RT::Logger->error(
-"Tickets->LimitRequestor is deprecated. please rewrite call at $package - $filename: $line"
- );
- $self->LimitWatcher( TYPE => 'Requestor', @_ );
-
-}
-
-# }}}
-
-# }}}
-
-# }}}
-
-# {{{ Limiting based on links
-
-# {{{ LimitLinkedTo
-
-=head2 LimitLinkedTo
-
-LimitLinkedTo takes a paramhash with two fields: TYPE and TARGET
-TYPE limits the sort of link we want to search on
-
-TYPE = { RefersTo, MemberOf, DependsOn }
-
-TARGET is the id or URI of the TARGET of the link
-(TARGET used to be 'TICKET'. 'TICKET' is deprecated, but will be treated as TARGET
-
-=cut
-
-sub LimitLinkedTo {
- my $self = shift;
- my %args = (
- TICKET => undef,
- TARGET => undef,
- TYPE => undef,
- @_
- );
-
- $self->Limit(
- FIELD => 'LinkedTo',
- BASE => undef,
- TARGET => ( $args{'TARGET'} || $args{'TICKET'} ),
- TYPE => $args{'TYPE'},
- DESCRIPTION => $self->loc(
- "Tickets [_1] by [_2]",
- $self->loc( $args{'TYPE'} ),
- ( $args{'TARGET'} || $args{'TICKET'} )
- ),
- );
-}
-
-# }}}
-
-# {{{ LimitLinkedFrom
-
-=head2 LimitLinkedFrom
-
-LimitLinkedFrom takes a paramhash with two fields: TYPE and BASE
-TYPE limits the sort of link we want to search on
-
-
-BASE is the id or URI of the BASE of the link
-(BASE used to be 'TICKET'. 'TICKET' is deprecated, but will be treated as BASE
-
-
-=cut
-
-sub LimitLinkedFrom {
- my $self = shift;
- my %args = (
- BASE => undef,
- TICKET => undef,
- TYPE => undef,
- @_
- );
-
- # translate RT2 From/To naming to RT3 TicketSQL naming
- my %fromToMap = qw(DependsOn DependentOn
- MemberOf HasMember
- RefersTo ReferredToBy);
-
- my $type = $args{'TYPE'};
- $type = $fromToMap{$type} if exists( $fromToMap{$type} );
-
- $self->Limit(
- FIELD => 'LinkedTo',
- TARGET => undef,
- BASE => ( $args{'BASE'} || $args{'TICKET'} ),
- TYPE => $type,
- DESCRIPTION => $self->loc(
- "Tickets [_1] [_2]",
- $self->loc( $args{'TYPE'} ),
- ( $args{'BASE'} || $args{'TICKET'} )
- ),
- );
-}
-
-# }}}
-
-# {{{ LimitMemberOf
-sub LimitMemberOf {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedTo(
- TARGET => "$ticket_id",
- TYPE => 'MemberOf',
- );
-
-}
-
-# }}}
-
-# {{{ LimitHasMember
-sub LimitHasMember {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedFrom(
- BASE => "$ticket_id",
- TYPE => 'HasMember',
- );
-
-}
-
-# }}}
-
-# {{{ LimitDependsOn
-
-sub LimitDependsOn {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedTo(
- TARGET => "$ticket_id",
- TYPE => 'DependsOn',
- );
-
-}
-
-# }}}
-
-# {{{ LimitDependedOnBy
-
-sub LimitDependedOnBy {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedFrom(
- BASE => "$ticket_id",
- TYPE => 'DependentOn',
- );
-
-}
-
-# }}}
-
-# {{{ LimitRefersTo
-
-sub LimitRefersTo {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedTo(
- TARGET => "$ticket_id",
- TYPE => 'RefersTo',
- );
-
-}
-
-# }}}
-
-# {{{ LimitReferredToBy
-
-sub LimitReferredToBy {
- my $self = shift;
- my $ticket_id = shift;
- $self->LimitLinkedFrom(
- BASE => "$ticket_id",
- TYPE => 'ReferredToBy',
- );
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ limit based on ticket date attribtes
-
-# {{{ sub LimitDate
-
-=head2 LimitDate (FIELD => 'DateField', OPERATOR => $oper, VALUE => $ISODate)
-
-Takes a paramhash with the fields FIELD OPERATOR and VALUE.
-
-OPERATOR is one of > or <
-VALUE is a date and time in ISO format in GMT
-FIELD is one of Starts, Started, Told, Created, Resolved, LastUpdated
-
-There are also helper functions of the form LimitFIELD that eliminate
-the need to pass in a FIELD argument.
-
-=cut
-
-sub LimitDate {
- my $self = shift;
- my %args = (
- FIELD => undef,
- VALUE => undef,
- OPERATOR => undef,
-
- @_
- );
-
- #Set the description if we didn't get handed it above
- unless ( $args{'DESCRIPTION'} ) {
- $args{'DESCRIPTION'} =
- $args{'FIELD'} . " "
- . $args{'OPERATOR'} . " "
- . $args{'VALUE'} . " GMT";
- }
-
- $self->Limit(%args);
-
-}
-
-# }}}
-
-sub LimitCreated {
- my $self = shift;
- $self->LimitDate( FIELD => 'Created', @_ );
-}
-
-sub LimitDue {
- my $self = shift;
- $self->LimitDate( FIELD => 'Due', @_ );
-
-}
-
-sub LimitStarts {
- my $self = shift;
- $self->LimitDate( FIELD => 'Starts', @_ );
-
-}
-
-sub LimitStarted {
- my $self = shift;
- $self->LimitDate( FIELD => 'Started', @_ );
-}
-
-sub LimitResolved {
- my $self = shift;
- $self->LimitDate( FIELD => 'Resolved', @_ );
-}
-
-sub LimitTold {
- my $self = shift;
- $self->LimitDate( FIELD => 'Told', @_ );
-}
-
-sub LimitLastUpdated {
- my $self = shift;
- $self->LimitDate( FIELD => 'LastUpdated', @_ );
-}
-
-#
-# {{{ sub LimitTransactionDate
-
-=head2 LimitTransactionDate (OPERATOR => $oper, VALUE => $ISODate)
-
-Takes a paramhash with the fields FIELD OPERATOR and VALUE.
-
-OPERATOR is one of > or <
-VALUE is a date and time in ISO format in GMT
-
-
-=cut
-
-sub LimitTransactionDate {
- my $self = shift;
- my %args = (
- FIELD => 'TransactionDate',
- VALUE => undef,
- OPERATOR => undef,
-
- @_
- );
-
- # <20021217042756.GK28744@pallas.fsck.com>
- # "Kill It" - Jesse.
-
- #Set the description if we didn't get handed it above
- unless ( $args{'DESCRIPTION'} ) {
- $args{'DESCRIPTION'} =
- $args{'FIELD'} . " "
- . $args{'OPERATOR'} . " "
- . $args{'VALUE'} . " GMT";
- }
-
- $self->Limit(%args);
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ Limit based on custom fields
-# {{{ sub LimitCustomField
-
-=head2 LimitCustomField
-
-Takes a paramhash of key/value pairs with the following keys:
-
-=over 4
-
-=item CUSTOMFIELD - CustomField name or id. If a name is passed, an additional parameter QUEUE may also be passed to distinguish the custom field.
-
-=item OPERATOR - The usual Limit operators
-
-=item VALUE - The value to compare against
-
-=back
-
-=cut
-
-sub LimitCustomField {
- my $self = shift;
- my %args = (
- VALUE => undef,
- CUSTOMFIELD => undef,
- OPERATOR => '=',
- DESCRIPTION => undef,
- FIELD => 'CustomFieldValue',
- QUOTEVALUE => 1,
- @_
- );
-
- my $CF = RT::CustomField->new( $self->CurrentUser );
- if ( $args{CUSTOMFIELD} =~ /^\d+$/ ) {
- $CF->Load( $args{CUSTOMFIELD} );
- }
- else {
- $CF->LoadByNameAndQueue(
- Name => $args{CUSTOMFIELD},
- Queue => $args{QUEUE}
- );
- $args{CUSTOMFIELD} = $CF->Id;
- }
-
- #If we are looking to compare with a null value.
- if ( $args{'OPERATOR'} =~ /^is$/i ) {
- $args{'DESCRIPTION'} ||=
- $self->loc( "Custom field [_1] has no value.", $CF->Name );
- }
- elsif ( $args{'OPERATOR'} =~ /^is not$/i ) {
- $args{'DESCRIPTION'} ||=
- $self->loc( "Custom field [_1] has a value.", $CF->Name );
- }
-
- # if we're not looking to compare with a null value
- else {
- $args{'DESCRIPTION'} ||= $self->loc( "Custom field [_1] [_2] [_3]",
- $CF->Name, $args{OPERATOR}, $args{VALUE} );
- }
-
- my $q = "";
- if ( $CF->Queue ) {
- my $qo = new RT::Queue( $self->CurrentUser );
- $qo->load( $CF->Queue );
- $q = $qo->Name;
- }
-
- my @rest;
- @rest = ( ENTRYAGGREGATOR => 'AND' )
- if ( $CF->Type eq 'SelectMultiple' );
-
- $self->Limit(
- VALUE => $args{VALUE},
- FIELD => "CF."
- . (
- $q
- ? $q . ".{" . $CF->Name . "}"
- : $CF->Name
- ),
- OPERATOR => $args{OPERATOR},
- CUSTOMFIELD => 1,
- @rest,
- );
-
- $self->{'RecalcTicketLimits'} = 1;
-}
-
-# }}}
-# }}}
-
-# {{{ sub _NextIndex
-
-=head2 _NextIndex
-
-Keep track of the counter for the array of restrictions
-
-=cut
-
-sub _NextIndex {
- my $self = shift;
- return ( $self->{'restriction_index'}++ );
-}
-
-# }}}
-
-# }}}
-
-# {{{ Core bits to make this a DBIx::SearchBuilder object
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = "Tickets";
- $self->{'RecalcTicketLimits'} = 1;
- $self->{'looking_at_effective_id'} = 0;
- $self->{'looking_at_type'} = 0;
- $self->{'restriction_index'} = 1;
- $self->{'primary_key'} = "id";
- delete $self->{'items_array'};
- delete $self->{'item_map'};
- delete $self->{'columns_to_display'};
- $self->SUPER::_Init(@_);
-
- $self->_InitSQL;
-
-}
-
-# }}}
-
-# {{{ sub Count
-sub Count {
- my $self = shift;
- $self->_ProcessRestrictions() if ( $self->{'RecalcTicketLimits'} == 1 );
- return ( $self->SUPER::Count() );
-}
-
-# }}}
-
-# {{{ sub CountAll
-sub CountAll {
- my $self = shift;
- $self->_ProcessRestrictions() if ( $self->{'RecalcTicketLimits'} == 1 );
- return ( $self->SUPER::CountAll() );
-}
-
-# }}}
-
-# {{{ sub ItemsArrayRef
-
-=head2 ItemsArrayRef
-
-Returns a reference to the set of all items found in this search
-
-=cut
-
-sub ItemsArrayRef {
- my $self = shift;
- my @items;
-
- unless ( $self->{'items_array'} ) {
-
- my $placeholder = $self->_ItemsCounter;
- $self->GotoFirstItem();
- while ( my $item = $self->Next ) {
- push( @{ $self->{'items_array'} }, $item );
- }
- $self->GotoItem($placeholder);
- $self->{'items_array'} = $self->ItemsOrderBy( $self->{'items_array'} );
- }
- return ( $self->{'items_array'} );
-}
-
-# }}}
-
-# {{{ sub Next
-sub Next {
- my $self = shift;
-
- $self->_ProcessRestrictions() if ( $self->{'RecalcTicketLimits'} == 1 );
-
- my $Ticket = $self->SUPER::Next();
- if ( ( defined($Ticket) ) and ( ref($Ticket) ) ) {
-
- if ( $Ticket->__Value('Status') eq 'deleted' &&
- !$self->{'allow_deleted_search'} ) {
- return($self->Next());
- }
- # Since Ticket could be granted with more rights instead
- # of being revoked, it's ok if queue rights allow
- # ShowTicket. It seems need another query, but we have
- # rights cache in Principal::HasRight.
- elsif ($Ticket->QueueObj->CurrentUserHasRight('ShowTicket') ||
- $Ticket->CurrentUserHasRight('ShowTicket')) {
- return($Ticket);
- }
-
- if ( $Ticket->__Value('Status') eq 'deleted' ) {
- return ( $self->Next() );
- }
-
- # Since Ticket could be granted with more rights instead
- # of being revoked, it's ok if queue rights allow
- # ShowTicket. It seems need another query, but we have
- # rights cache in Principal::HasRight.
- elsif ($Ticket->QueueObj->CurrentUserHasRight('ShowTicket')
- || $Ticket->CurrentUserHasRight('ShowTicket') )
- {
- return ($Ticket);
- }
-
- #If the user doesn't have the right to show this ticket
- else {
- return ( $self->Next() );
- }
- }
-
- #if there never was any ticket
- else {
- return (undef);
- }
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ Deal with storing and restoring restrictions
-
-# {{{ sub LoadRestrictions
-
-=head2 LoadRestrictions
-
-LoadRestrictions takes a string which can fully populate the TicketRestrictons hash.
-TODO It is not yet implemented
-
-=cut
-
-# }}}
-
-# {{{ sub DescribeRestrictions
-
-=head2 DescribeRestrictions
-
-takes nothing.
-Returns a hash keyed by restriction id.
-Each element of the hash is currently a one element hash that contains DESCRIPTION which
-is a description of the purpose of that TicketRestriction
-
-=cut
-
-sub DescribeRestrictions {
- my $self = shift;
-
- my ( $row, %listing );
-
- foreach $row ( keys %{ $self->{'TicketRestrictions'} } ) {
- $listing{$row} = $self->{'TicketRestrictions'}{$row}{'DESCRIPTION'};
- }
- return (%listing);
-}
-
-# }}}
-
-# {{{ sub RestrictionValues
-
-=head2 RestrictionValues FIELD
-
-Takes a restriction field and returns a list of values this field is restricted
-to.
-
-=cut
-
-sub RestrictionValues {
- my $self = shift;
- my $field = shift;
- map $self->{'TicketRestrictions'}{$_}{'VALUE'}, grep {
- $self->{'TicketRestrictions'}{$_}{'FIELD'} eq $field
- && $self->{'TicketRestrictions'}{$_}{'OPERATOR'} eq "="
- }
- keys %{ $self->{'TicketRestrictions'} };
-}
-
-# }}}
-
-# {{{ sub ClearRestrictions
-
-=head2 ClearRestrictions
-
-Removes all restrictions irretrievably
-
-=cut
-
-sub ClearRestrictions {
- my $self = shift;
- delete $self->{'TicketRestrictions'};
- $self->{'looking_at_effective_id'} = 0;
- $self->{'looking_at_type'} = 0;
- $self->{'RecalcTicketLimits'} = 1;
-}
-
-# }}}
-
-# {{{ sub DeleteRestriction
-
-=head2 DeleteRestriction
-
-Takes the row Id of a restriction (From DescribeRestrictions' output, for example.
-Removes that restriction from the session's limits.
-
-=cut
-
-sub DeleteRestriction {
- my $self = shift;
- my $row = shift;
- delete $self->{'TicketRestrictions'}{$row};
-
- $self->{'RecalcTicketLimits'} = 1;
-
- #make the underlying easysearch object forget all its preconceptions
-}
-
-# }}}
-
-# {{{ sub _RestrictionsToClauses
-
-# Convert a set of oldstyle SB Restrictions to Clauses for RQL
-
-sub _RestrictionsToClauses {
- my $self = shift;
-
- my $row;
- my %clause;
- foreach $row ( keys %{ $self->{'TicketRestrictions'} } ) {
- my $restriction = $self->{'TicketRestrictions'}{$row};
-
- #use Data::Dumper;
- #print Dumper($restriction),"\n";
-
- # We need to reimplement the subclause aggregation that SearchBuilder does.
- # Default Subclause is ALIAS.FIELD, and default ALIAS is 'main',
- # Then SB AND's the different Subclauses together.
-
- # So, we want to group things into Subclauses, convert them to
- # SQL, and then join them with the appropriate DefaultEA.
- # Then join each subclause group with AND.
-
- my $field = $restriction->{'FIELD'};
- my $realfield = $field; # CustomFields fake up a fieldname, so
- # we need to figure that out
-
- # One special case
- # Rewrite LinkedTo meta field to the real field
- if ( $field =~ /LinkedTo/ ) {
- $realfield = $field = $restriction->{'TYPE'};
- }
-
- # Two special case
- # Handle subkey fields with a different real field
- if ( $field =~ /^(\w+)\./ ) {
- $realfield = $1;
- }
-
- die "I don't know about $field yet"
- unless ( exists $FIELDS{$realfield} or $restriction->{CUSTOMFIELD} );
-
- my $type = $FIELDS{$realfield}->[0];
- my $op = $restriction->{'OPERATOR'};
-
- my $value = (
- grep { defined }
- map { $restriction->{$_} } qw(VALUE TICKET BASE TARGET)
- )[0];
-
- # this performs the moral equivalent of defined or/dor/C<//>,
- # without the short circuiting.You need to use a 'defined or'
- # type thing instead of just checking for truth values, because
- # VALUE could be 0.(i.e. "false")
-
- # You could also use this, but I find it less aesthetic:
- # (although it does short circuit)
- #( defined $restriction->{'VALUE'}? $restriction->{VALUE} :
- # defined $restriction->{'TICKET'} ?
- # $restriction->{TICKET} :
- # defined $restriction->{'BASE'} ?
- # $restriction->{BASE} :
- # defined $restriction->{'TARGET'} ?
- # $restriction->{TARGET} )
-
- my $ea = $restriction->{ENTRYAGGREGATOR} || $DefaultEA{$type} || "AND";
- if ( ref $ea ) {
- die "Invalid operator $op for $field ($type)"
- unless exists $ea->{$op};
- $ea = $ea->{$op};
- }
-
- # Each CustomField should be put into a different Clause so they
- # are ANDed together.
- if ( $restriction->{CUSTOMFIELD} ) {
- $realfield = $field;
- }
-
- exists $clause{$realfield} or $clause{$realfield} = [];
-
- # Escape Quotes
- $field =~ s!(['"])!\\$1!g;
- $value =~ s!(['"])!\\$1!g;
- my $data = [ $ea, $type, $field, $op, $value ];
-
- # here is where we store extra data, say if it's a keyword or
- # something. (I.e. "TYPE SPECIFIC STUFF")
-
- #print Dumper($data);
- push @{ $clause{$realfield} }, $data;
- }
- return \%clause;
-}
-
-# }}}
-
-# {{{ sub _ProcessRestrictions
-
-=head2 _ProcessRestrictions PARAMHASH
-
-# The new _ProcessRestrictions is somewhat dependent on the SQL stuff,
-# but isn't quite generic enough to move into Tickets_Overlay_SQL.
-
-=cut
-
-sub _ProcessRestrictions {
- my $self = shift;
-
- #Blow away ticket aliases since we'll need to regenerate them for
- #a new search
- delete $self->{'TicketAliases'};
- delete $self->{'items_array'};
- delete $self->{'item_map'};
- delete $self->{'raw_rows'};
- delete $self->{'rows'};
- delete $self->{'count_all'};
-
- my $sql = $self->Query; # Violating the _SQL namespace
- if ( !$sql || $self->{'RecalcTicketLimits'} ) {
-
- # "Restrictions to Clauses Branch\n";
- my $clauseRef = eval { $self->_RestrictionsToClauses; };
- if ($@) {
- $RT::Logger->error( "RestrictionsToClauses: " . $@ );
- $self->FromSQL("");
- }
- else {
- $sql = $self->ClausesToSQL($clauseRef);
- $self->FromSQL($sql);
- }
- }
-
- $self->{'RecalcTicketLimits'} = 0;
-
-}
-
-=head2 _BuildItemMap
-
- # Build up a map of first/last/next/prev items, so that we can display search nav quickly
-
-=cut
-
-sub _BuildItemMap {
- my $self = shift;
-
- my $items = $self->ItemsArrayRef;
- my $prev = 0;
-
- delete $self->{'item_map'};
- if ( $items->[0] ) {
- $self->{'item_map'}->{'first'} = $items->[0]->EffectiveId;
- while ( my $item = shift @$items ) {
- my $id = $item->EffectiveId;
- $self->{'item_map'}->{$id}->{'defined'} = 1;
- $self->{'item_map'}->{$id}->{prev} = $prev;
- $self->{'item_map'}->{$id}->{next} = $items->[0]->EffectiveId
- if ( $items->[0] );
- $prev = $id;
- }
- $self->{'item_map'}->{'last'} = $prev;
- }
-}
-
-=head2 ItemMap
-
-Returns an a map of all items found by this search. The map is of the form
-
-$ItemMap->{'first'} = first ticketid found
-$ItemMap->{'last'} = last ticketid found
-$ItemMap->{$id}->{prev} = the ticket id found before $id
-$ItemMap->{$id}->{next} = the ticket id found after $id
-
-=cut
-
-sub ItemMap {
- my $self = shift;
- $self->_BuildItemMap()
- unless ( $self->{'items_array'} and $self->{'item_map'} );
- return ( $self->{'item_map'} );
-}
-
-=cut
-
-
-}
-
-
-
-# }}}
-
-# }}}
-
-=head2 PrepForSerialization
-
-You don't want to serialize a big tickets object, as the {items} hash will be instantly invalid _and_ eat lots of space
-
-=cut
-
-sub PrepForSerialization {
- my $self = shift;
- delete $self->{'items'};
- $self->RedoSearch();
-}
-
-
-=head1 FLAGS
-
-RT::Tickets supports several flags which alter search behavior:
-
-
-allow_deleted_search (Otherwise never show deleted tickets in search results)
-looking_at_type (otherwise limit to type=ticket)
-
-These flags are set by calling
-
-$tickets->{'flagname'} = 1;
-
-BUG: There should be an API for this
-
-=cut
-
-1;
-
-
-
diff --git a/rt/lib/RT/Tickets_Overlay_SQL.pm b/rt/lib/RT/Tickets_Overlay_SQL.pm
deleted file mode 100644
index 6773917..0000000
--- a/rt/lib/RT/Tickets_Overlay_SQL.pm
+++ /dev/null
@@ -1,580 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::Tickets;
-
-use strict;
-use warnings;
-
-# Import configuration data from the lexcial scope of __PACKAGE__ (or
-# at least where those two Subroutines are defined.)
-
-my %FIELDS = %{FIELDS()};
-my %dispatch = %{dispatch()};
-my %can_bundle = %{can_bundle()};
-
-# Lower Case version of FIELDS, for case insensitivity
-my %lcfields = map { ( lc($_) => $_ ) } (keys %FIELDS);
-
-sub _InitSQL {
- my $self = shift;
-
- # How many of these do we actually still use?
-
- # Private Member Variales (which should get cleaned)
- $self->{'_sql_linksc'} = 0;
- $self->{'_sql_watchersc'} = 0;
- $self->{'_sql_keywordsc'} = 0;
- $self->{'_sql_subclause'} = "a";
- $self->{'_sql_first'} = 0;
- $self->{'_sql_opstack'} = [''];
- $self->{'_sql_linkalias'} = undef;
- $self->{'_sql_transalias'} = undef;
- $self->{'_sql_trattachalias'} = undef;
- $self->{'_sql_object_cf_alias'} = undef;
- $self->{'_sql_depth'} = 0;
- $self->{'_sql_localdepth'} = 0;
- $self->{'_sql_query'} = '';
- $self->{'_sql_looking_at'} = {};
- $self->{'_sql_columns_to_display'} = [];
-
-}
-
-sub _SQLLimit {
- my $self = shift;
- my %args = (@_);
- if ($args{'FIELD'} eq 'EffectiveId') {
- $self->{'looking_at_effective_id'} = 1;
- }
-
- if ($args{'FIELD'} eq 'Type') {
- $self->{'looking_at_type'} = 1;
- }
-
- # All SQL stuff goes into one SB subclause so we can deal with all
- # the aggregation
- $self->SUPER::Limit(%args,
- SUBCLAUSE => 'ticketsql');
-}
-
-sub _SQLJoin {
- # All SQL stuff goes into one SB subclause so we can deal with all
- # the aggregation
- my $this = shift;
-
- $this->SUPER::Join(@_,
- SUBCLAUSE => 'ticketsql');
-}
-
-# Helpers
-sub _OpenParen {
- $_[0]->SUPER::_OpenParen( 'ticketsql' );
-}
-sub _CloseParen {
- $_[0]->SUPER::_CloseParen( 'ticketsql' );
-}
-
-=head1 SQL Functions
-
-=cut
-
-=head2 Robert's Simple SQL Parser
-
-Documentation In Progress
-
-The Parser/Tokenizer is a relatively simple state machine that scans through a SQL WHERE clause type string extracting a token at a time (where a token is:
-
- VALUE -> quoted string or number
- AGGREGator -> AND or OR
- KEYWORD -> quoted string or single word
- OPerator -> =,!=,LIKE,etc..
- PARENthesis -> open or close.
-
-And that stream of tokens is passed through the "machine" in order to build up a structure that looks like:
-
- KEY OP VALUE
- AND KEY OP VALUE
- OR KEY OP VALUE
-
-That also deals with parenthesis for nesting. (The parentheses are
-just handed off the SearchBuilder)
-
-=cut
-
-use Regexp::Common qw /delimited/;
-
-# States
-use constant VALUE => 1;
-use constant AGGREG => 2;
-use constant OP => 4;
-use constant OPEN_PAREN => 8;
-use constant CLOSE_PAREN => 16;
-use constant KEYWORD => 32;
-my @tokens = qw[VALUE AGGREG OP OPEN_PAREN CLOSE_PAREN KEYWORD];
-
-my $re_aggreg = qr[(?i:AND|OR)];
-my $re_delim = qr[$RE{delimited}{-delim=>qq{\'\"}}];
-my $re_value = qr[$re_delim|\d+|NULL];
-my $re_keyword = qr[$re_delim|(?:\{|\}|\w|\.)+];
-my $re_op = qr[=|!=|>=|<=|>|<|(?i:IS NOT)|(?i:IS)|(?i:NOT LIKE)|(?i:LIKE)]; # long to short
-my $re_open_paren = qr'\(';
-my $re_close_paren = qr'\)';
-
-sub _close_bundle
-{
- my ($self, @bundle) = @_;
- return unless @bundle;
- if (@bundle == 1) {
- $bundle[0]->{dispatch}->(
- $self,
- $bundle[0]->{key},
- $bundle[0]->{op},
- $bundle[0]->{val},
- SUBCLAUSE => "",
- ENTRYAGGREGATOR => $bundle[0]->{ea},
- SUBKEY => $bundle[0]->{subkey},
- );
- } else {
- my @args;
- for my $chunk (@bundle) {
- push @args, [
- $chunk->{key},
- $chunk->{op},
- $chunk->{val},
- SUBCLAUSE => "",
- ENTRYAGGREGATOR => $chunk->{ea},
- SUBKEY => $chunk->{subkey},
- ];
- }
- $bundle[0]->{dispatch}->(
- $self, \@args,
- );
- }
-}
-
-sub _parser {
- my ($self,$string) = @_;
- my $want = KEYWORD | OPEN_PAREN;
- my $last = undef;
-
- my $depth = 0;
- my @bundle;
-
- my ($ea,$key,$op,$value) = ("","","","");
-
- # order of matches in the RE is important.. op should come early,
- # because it has spaces in it. otherwise "NOT LIKE" might be parsed
- # as a keyword or value.
-
-
-
-
-
- while ($string =~ /(
- $re_aggreg
- |$re_op
- |$re_keyword
- |$re_value
- |$re_open_paren
- |$re_close_paren
- )/iogx ) {
- my $val = $1;
- my $current = 0;
-
- # Highest priority is last
- $current = OP if ($want & OP) && $val =~ /^$re_op$/io;
- $current = VALUE if ($want & VALUE) && $val =~ /^$re_value$/io;
- $current = KEYWORD if ($want & KEYWORD) && $val =~ /^$re_keyword$/io;
- $current = AGGREG if ($want & AGGREG) && $val =~ /^$re_aggreg$/io;
- $current = OPEN_PAREN if ($want & OPEN_PAREN) && $val =~ /^$re_open_paren$/io;
- $current = CLOSE_PAREN if ($want & CLOSE_PAREN) && $val =~ /^$re_close_paren$/io;
-
-
- unless ($current && $want & $current) {
- # Error
- # FIXME: I will only print out the highest $want value
- die "Error near ->$val<- expecting a ", $tokens[((log $want)/(log 2))], " in $string\n";
- }
-
- # State Machine:
-
- #$RT::Logger->debug("We've just found a '$current' called '$val'");
-
- # Parens are highest priority
- if ($current & OPEN_PAREN) {
- $self->_close_bundle(@bundle); @bundle = ();
- $depth++;
- $self->_OpenParen;
-
- $want = KEYWORD | OPEN_PAREN;
- }
- elsif ( $current & CLOSE_PAREN ) {
- $self->_close_bundle(@bundle); @bundle = ();
- $depth--;
- $self->_CloseParen;
-
- $want = CLOSE_PAREN | AGGREG;
- }
- elsif ( $current & AGGREG ) {
- $ea = $val;
- $want = KEYWORD | OPEN_PAREN;
- }
- elsif ( $current & KEYWORD ) {
- $key = $val;
- $want = OP;
- }
- elsif ( $current & OP ) {
- $op = $val;
- $want = VALUE;
- }
- elsif ( $current & VALUE ) {
- $value = $val;
-
- # Remove surrounding quotes from $key, $val
- # (in future, simplify as for($key,$val) { action on $_ })
- if ($key =~ /$re_delim/o) {
- substr($key,0,1) = "";
- substr($key,-1,1) = "";
- }
- if ($val =~ /$re_delim/o) {
- substr($val,0,1) = "";
- substr($val,-1,1) = "";
- }
- # Unescape escaped characters
- $key =~ s!\\(.)!$1!g;
- $val =~ s!\\(.)!$1!g;
- # print "$ea Key=[$key] op=[$op] val=[$val]\n";
-
-
- my $subkey;
- if ($key =~ /^(.+?)\.(.+)$/) {
- $key = $1;
- $subkey = $2;
- }
-
- my $class;
- if (exists $lcfields{lc $key}) {
- $key = $lcfields{lc $key};
- $class = $FIELDS{$key}->[0];
- }
- # no longer have a default, since CF's are now a real class, not fallthrough
- # fixme: "default class" is not Generic.
-
-
- die "Unknown field: $key" unless $class;
-
- $self->{_sql_localdepth} = 0;
- die "No such dispatch method: $class"
- unless exists $dispatch{$class};
- my $sub = $dispatch{$class} || die;;
- if ($can_bundle{$class} &&
- (!@bundle ||
- ($bundle[-1]->{dispatch} == $sub &&
- $bundle[-1]->{key} eq $key &&
- $bundle[-1]->{subkey} eq $subkey)))
- {
- push @bundle, {
- dispatch => $sub,
- key => $key,
- op => $op,
- val => $val,
- ea => $ea || "",
- subkey => $subkey,
- };
- } else {
- $self->_close_bundle(@bundle); @bundle = ();
- $sub->(
- $self,
- $key,
- $op,
- $val,
- SUBCLAUSE => "", # don't need anymore
- ENTRYAGGREGATOR => $ea || "",
- SUBKEY => $subkey,
- );
- }
-
- $self->{_sql_looking_at}{lc $key} = 1;
-
- ($ea,$key,$op,$value) = ("","","","");
-
- $want = CLOSE_PAREN | AGGREG;
- } else {
- die "I'm lost";
- }
-
- $last = $current;
- } # while
-
- $self->_close_bundle(@bundle); @bundle = ();
-
- die "Incomplete query"
- unless (($want | CLOSE_PAREN) || ($want | KEYWORD));
-
- die "Incomplete Query"
- unless ($last && ($last | CLOSE_PAREN) || ($last || VALUE));
-
- # This will never happen, because the parser will complain
- die "Mismatched parentheses"
- unless $depth == 0;
-
-}
-
-
-=head2 ClausesToSQL
-
-=cut
-
-sub ClausesToSQL {
- my $self = shift;
- my $clauses = shift;
- my @sql;
-
- for my $f (keys %{$clauses}) {
- my $sql;
- my $first = 1;
-
- # Build SQL from the data hash
- for my $data ( @{ $clauses->{$f} } ) {
- $sql .= $data->[0] unless $first; $first=0;
- $sql .= " '". $data->[2] . "' ";
- $sql .= $data->[3] . " ";
- $sql .= "'". $data->[4] . "' ";
- }
-
- push @sql, " ( " . $sql . " ) ";
- }
-
- return join("AND",@sql);
-}
-
-=head2 FromSQL
-
-Convert a RT-SQL string into a set of SearchBuilder restrictions.
-
-Returns (1, 'Status message') on success and (0, 'Error Message') on
-failure.
-
-
-=begin testing
-
-use RT::Tickets;
-
-
-
-my $tix = RT::Tickets->new($RT::SystemUser);
-
-my $query = "Status = 'open'";
-my ($id, $msg) = $tix->FromSQL($query);
-
-ok ($id, $msg);
-
-
-my (@ids, @expectedids);
-
-my $t = RT::Ticket->new($RT::SystemUser);
-
-my $string = 'subject/content SQL test';
-ok( $t->Create(Queue => 'General', Subject => $string), "Ticket Created");
-
-push @ids, $t->Id;
-
-my $Message = MIME::Entity->build(
- Subject => 'this is my subject',
- From => 'jesse@example.com',
- Data => [ $string ],
- );
-
-ok( $t->Create(Queue => 'General', Subject => 'another ticket', MIMEObj => $Message, MemberOf => $ids[0]), "Ticket Created");
-
-push @ids, $t->Id;
-
-$query = ("Subject LIKE '$string' OR Content LIKE '$string'");
-
-my ($id, $msg) = $tix->FromSQL($query);
-
-
-ok ($id, $msg);
-
-is ($tix->Count, scalar @ids, "number of returned tickets same as entered");
-while (my $tick = $tix->Next) {
- push @expectedids, $tick->Id;
-}
-ok (eq_array(\@ids, \@expectedids), "returned expected tickets");
-
-$query = ("id = $ids[0] OR MemberOf = $ids[0]");
-
-my ($id, $msg) = $tix->FromSQL($query);
-
-ok ($id, $msg);
-
-is ($tix->Count, scalar @ids, "number of returned tickets same as entered");
-
-@expectedids = ();
-while (my $tick = $tix->Next) {
- push @expectedids, $tick->Id;
-}
-
-ok (eq_array(\@ids, \@expectedids), "returned expected tickets");
-
-=end testing
-
-
-=cut
-
-sub FromSQL {
- my ($self,$query) = @_;
-
- {
- # preserve first_row and show_rows across the CleanSlate
- local($self->{'first_row'}, $self->{'show_rows'});
- $self->CleanSlate;
- }
- $self->_InitSQL();
-
- return (1,$self->loc("No Query")) unless $query;
-
- $self->{_sql_query} = $query;
- eval { $self->_parser( $query ); };
- if ($@) {
- $RT::Logger->error( "Query error in <<$query>>:\n$@" );
- return(0,$@);
- }
- # We only want to look at EffectiveId's (mostly) for these searches.
- unless (exists $self->{_sql_looking_at}{'effectiveid'}) {
- $self->SUPER::Limit( FIELD => 'EffectiveId',
- ENTRYAGGREGATOR => 'AND',
- OPERATOR => '=',
- QUOTEVALUE => 0,
- VALUE => 'main.id'
- ); #TODO, we shouldn't be hard #coding the tablename to main.
- }
- # FIXME: Need to bring this logic back in
-
- # if ($self->_isLimited && (! $self->{'looking_at_effective_id'})) {
- # $self->SUPER::Limit( FIELD => 'EffectiveId',
- # OPERATOR => '=',
- # QUOTEVALUE => 0,
- # VALUE => 'main.id'); #TODO, we shouldn't be hard coding the tablename to main.
- # }
- # --- This is hardcoded above. This comment block can probably go.
- # Or, we need to reimplement the looking_at_effective_id toggle.
-
- # Unless we've explicitly asked to look at a specific Type, we need
- # to limit to it.
- unless ($self->{looking_at_type}) {
- $self->SUPER::Limit( FIELD => 'Type', OPERATOR => '=', VALUE => 'ticket');
- }
-
- # We don't want deleted tickets unless 'allow_deleted_search' is set
- unless( $self->{'allow_deleted_search'} ) {
- $self->SUPER::Limit(FIELD => 'Status',
- OPERATOR => '!=',
- VALUE => 'deleted');
- }
-
-
- # set SB's dirty flag
- $self->{'must_redo_search'} = 1;
- $self->{'RecalcTicketLimits'} = 0;
-
- return (1,$self->loc("Valid Query"));
-
-}
-
-=head2 Query
-
-Returns the query that this object was initialized with
-
-=cut
-
-sub Query {
- my $self = shift;
- return ($self->{_sql_query});
-}
-
-
-
-1;
-
-=pod
-
-=head2 Exceptions
-
-Most of the RT code does not use Exceptions (die/eval) but it is used
-in the TicketSQL code for simplicity and historical reasons. Lest you
-be worried that the dies will trigger user visible errors, all are
-trapped via evals.
-
-99% of the dies fall in subroutines called via FromSQL and then parse.
-(This includes all of the _FooLimit routines in Tickets_Overlay.pm.)
-The other 1% or so are via _ProcessRestrictions.
-
-All dies are trapped by eval {}s, and will be logged at the 'error'
-log level. The general failure mode is to not display any tickets.
-
-=head2 General Flow
-
-Legacy Layer:
-
- Legacy LimitFoo routines build up a RestrictionsHash
-
- _ProcessRestrictions converts the Restrictions to Clauses
- ([key,op,val,rest]).
-
- Clauses are converted to RT-SQL (TicketSQL)
-
-New RT-SQL Layer:
-
- FromSQL calls the parser
-
- The parser calls the _FooLimit routines to do DBIx::SearchBuilder
- limits.
-
-And then the normal SearchBuilder/Ticket routines are used for
-display/navigation.
-
-=cut
-
diff --git a/rt/lib/RT/Transaction.pm b/rt/lib/RT/Transaction.pm
deleted file mode 100755
index ca491a6..0000000
--- a/rt/lib/RT/Transaction.pm
+++ /dev/null
@@ -1,364 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::Transaction
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::Transaction;
-use RT::Record;
-use RT::Ticket;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Transactions');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- int(11) 'EffectiveTicket'.
- int(11) 'Ticket'.
- int(11) 'TimeTaken'.
- varchar(20) 'Type'.
- varchar(40) 'Field'.
- varchar(255) 'OldValue'.
- varchar(255) 'NewValue'.
- varchar(100) 'Data'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- EffectiveTicket => '0',
- Ticket => '0',
- TimeTaken => '0',
- Type => '',
- Field => '',
- OldValue => '',
- NewValue => '',
- Data => '',
-
- @_);
- $self->SUPER::Create(
- EffectiveTicket => $args{'EffectiveTicket'},
- Ticket => $args{'Ticket'},
- TimeTaken => $args{'TimeTaken'},
- Type => $args{'Type'},
- Field => $args{'Field'},
- OldValue => $args{'OldValue'},
- NewValue => $args{'NewValue'},
- Data => $args{'Data'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item EffectiveTicket
-
-Returns the current value of EffectiveTicket.
-(In the database, EffectiveTicket is stored as int(11).)
-
-
-
-=item SetEffectiveTicket VALUE
-
-
-Set EffectiveTicket to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, EffectiveTicket will be stored as a int(11).)
-
-
-=cut
-
-
-=item Ticket
-
-Returns the current value of Ticket.
-(In the database, Ticket is stored as int(11).)
-
-
-
-=item SetTicket VALUE
-
-
-Set Ticket to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Ticket will be stored as a int(11).)
-
-
-=cut
-
-
-=item TicketObj
-
-Returns the Ticket Object which has the id returned by Ticket
-
-
-=cut
-
-sub TicketObj {
- my $self = shift;
- my $Ticket = RT::Ticket->new($self->CurrentUser);
- $Ticket->Load($self->__Value('Ticket'));
- return($Ticket);
-}
-
-=item TimeTaken
-
-Returns the current value of TimeTaken.
-(In the database, TimeTaken is stored as int(11).)
-
-
-
-=item SetTimeTaken VALUE
-
-
-Set TimeTaken to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, TimeTaken will be stored as a int(11).)
-
-
-=cut
-
-
-=item Type
-
-Returns the current value of Type.
-(In the database, Type is stored as varchar(20).)
-
-
-
-=item SetType VALUE
-
-
-Set Type to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Type will be stored as a varchar(20).)
-
-
-=cut
-
-
-=item Field
-
-Returns the current value of Field.
-(In the database, Field is stored as varchar(40).)
-
-
-
-=item SetField VALUE
-
-
-Set Field to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Field will be stored as a varchar(40).)
-
-
-=cut
-
-
-=item OldValue
-
-Returns the current value of OldValue.
-(In the database, OldValue is stored as varchar(255).)
-
-
-
-=item SetOldValue VALUE
-
-
-Set OldValue to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, OldValue will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item NewValue
-
-Returns the current value of NewValue.
-(In the database, NewValue is stored as varchar(255).)
-
-
-
-=item SetNewValue VALUE
-
-
-Set NewValue to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, NewValue will be stored as a varchar(255).)
-
-
-=cut
-
-
-=item Data
-
-Returns the current value of Data.
-(In the database, Data is stored as varchar(100).)
-
-
-
-=item SetData VALUE
-
-
-Set Data to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Data will be stored as a varchar(100).)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- EffectiveTicket =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Ticket =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- TimeTaken =>
- {read => 1, write => 1, type => 'int(11)', default => '0'},
- Type =>
- {read => 1, write => 1, type => 'varchar(20)', default => ''},
- Field =>
- {read => 1, write => 1, type => 'varchar(40)', default => ''},
- OldValue =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- NewValue =>
- {read => 1, write => 1, type => 'varchar(255)', default => ''},
- Data =>
- {read => 1, write => 1, type => 'varchar(100)', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::Transaction_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Transaction_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Transaction_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Transaction_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Transaction_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Transaction_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Transaction_Overlay, RT::Transaction_Vendor, RT::Transaction_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Transaction_Overlay.pm b/rt/lib/RT/Transaction_Overlay.pm
deleted file mode 100644
index b179084..0000000
--- a/rt/lib/RT/Transaction_Overlay.pm
+++ /dev/null
@@ -1,1077 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Transaction - RT\'s transaction object
-
-=head1 SYNOPSIS
-
- use RT::Transaction;
-
-
-=head1 DESCRIPTION
-
-
-Each RT::Transaction describes an atomic change to a ticket object
-or an update to an RT::Ticket object.
-It can have arbitrary MIME attachments.
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::Transaction);
-
-=end testing
-
-=cut
-
-
-package RT::Transaction;
-
-use strict;
-no warnings qw(redefine);
-
-use vars qw( %_BriefDescriptions );
-
-use RT::Attachments;
-use RT::Scrips;
-
-# {{{ sub Create
-
-=head2 Create
-
-Create a new transaction.
-
-This routine should _never_ be called by anything other than RT::Ticket.
-It should not be called
-from client code. Ever. Not ever. If you do this, we will hunt you down and break your kneecaps.
-Then the unpleasant stuff will start.
-
-TODO: Document what gets passed to this
-
-=cut
-
-sub Create {
- my $self = shift;
- my %args = (
- id => undef,
- TimeTaken => 0,
- Type => 'undefined',
- Data => '',
- Field => undef,
- OldValue => undef,
- NewValue => undef,
- MIMEObj => undef,
- ActivateScrips => 1,
- CommitScrips => 1,
- ObjectType => 'RT::Ticket',
- ObjectId => 0,
- ReferenceType => undef,
- OldReference => undef,
- NewReference => undef,
- @_
- );
-
- $args{ObjectId} ||= $args{Ticket};
-
- #if we didn't specify a ticket, we need to bail
- unless ( $args{'ObjectId'} && $args{'ObjectType'}) {
- return ( 0, $self->loc( "Transaction->Create couldn't, as you didn't specify an object type and id"));
- }
-
-
-
- #lets create our transaction
- my %params = (
- Type => $args{'Type'},
- Data => $args{'Data'},
- Field => $args{'Field'},
- OldValue => $args{'OldValue'},
- NewValue => $args{'NewValue'},
- Created => $args{'Created'},
- ObjectType => $args{'ObjectType'},
- ObjectId => $args{'ObjectId'},
- ReferenceType => $args{'ReferenceType'},
- OldReference => $args{'OldReference'},
- NewReference => $args{'NewReference'},
- );
-
- # Parameters passed in during an import that we probably don't want to touch, otherwise
- foreach my $attr qw(id Creator Created LastUpdated TimeTaken LastUpdatedBy) {
- $params{$attr} = $args{$attr} if ($args{$attr});
- }
-
- my $id = $self->SUPER::Create(%params);
- $self->Load($id);
- $self->_Attach( $args{'MIMEObj'} ) if defined $args{'MIMEObj'};
-
-
- #Provide a way to turn off scrips if we need to
- $RT::Logger->debug('About to think about scrips for transaction #' .$self->Id);
- if ( $args{'ActivateScrips'} and $args{'ObjectType'} eq 'RT::Ticket' ) {
- $self->{'scrips'} = RT::Scrips->new($RT::SystemUser);
-
- $RT::Logger->debug('About to prepare scrips for transaction #' .$self->Id);
-
- $self->{'scrips'}->Prepare(
- Stage => 'TransactionCreate',
- Type => $args{'Type'},
- Ticket => $args{'ObjectId'},
- Transaction => $self->id,
- );
- if ($args{'CommitScrips'} ) {
- $RT::Logger->debug('About to commit scrips for transaction #' .$self->Id);
- $self->{'scrips'}->Commit();
- }
- }
-
- return ( $id, $self->loc("Transaction Created") );
-}
-
-# }}}
-
-=head2 Scrips
-
-Returns the Scrips object for this transaction.
-This routine is only useful on a freshly created transaction object.
-Scrips do not get persisted to the database with transactions.
-
-
-=cut
-
-
-sub Scrips {
- my $self = shift;
- return($self->{'scrips'});
-}
-
-
-# {{{ sub Delete
-
-=head2 Delete
-
-Delete this transaction. Currently DOES NOT CHECK ACLS
-
-=cut
-
-sub Delete {
- my $self = shift;
-
-
- $RT::Handle->BeginTransaction();
-
- my $attachments = $self->Attachments;
-
- while (my $attachment = $attachments->Next) {
- my ($id, $msg) = $attachment->Delete();
- unless ($id) {
- $RT::Handle->Rollback();
- return($id, $self->loc("System Error: [_1]", $msg));
- }
- }
- my ($id,$msg) = $self->SUPER::Delete();
- unless ($id) {
- $RT::Handle->Rollback();
- return($id, $self->loc("System Error: [_1]", $msg));
- }
- $RT::Handle->Commit();
- return ($id,$msg);
-}
-
-# }}}
-
-# {{{ Routines dealing with Attachments
-
-# {{{ sub Message
-
-=head2 Message
-
- Returns the RT::Attachments Object which contains the "top-level"object
- attachment for this transaction
-
-=cut
-
-sub Message {
-
- my $self = shift;
-
- if ( !defined( $self->{'message'} ) ) {
-
- $self->{'message'} = new RT::Attachments( $self->CurrentUser );
- $self->{'message'}->Limit(
- FIELD => 'TransactionId',
- VALUE => $self->Id
- );
-
- $self->{'message'}->ChildrenOf(0);
- }
- return ( $self->{'message'} );
-}
-
-# }}}
-
-# {{{ sub Content
-
-=head2 Content PARAMHASH
-
-If this transaction has attached mime objects, returns the first text/plain part.
-Otherwise, returns undef.
-
-Takes a paramhash. If the $args{'Quote'} parameter is set, wraps this message
-at $args{'Wrap'}. $args{'Wrap'} defaults to 70.
-
-
-=cut
-
-sub Content {
- my $self = shift;
- my %args = (
- Quote => 0,
- Wrap => 70,
- @_
- );
-
- my $content;
- my $content_obj = $self->ContentObj;
- if ($content_obj) {
- $content = $content_obj->Content;
- }
-
- # If all else fails, return a message that we couldn't find any content
- else {
- $content = $self->loc('This transaction appears to have no content');
- }
-
- if ( $args{'Quote'} ) {
-
- # Remove quoted signature.
- $content =~ s/\n-- \n(.*?)$//s;
-
- # What's the longest line like?
- my $max = 0;
- foreach ( split ( /\n/, $content ) ) {
- $max = length if ( length > $max );
- }
-
- if ( $max > 76 ) {
- require Text::Wrapper;
- my $wrapper = new Text::Wrapper(
- columns => $args{'Wrap'},
- body_start => ( $max > 70 * 3 ? ' ' : '' ),
- par_start => ''
- );
- $content = $wrapper->wrap($content);
- }
-
- $content = '['
- . $self->CreatorObj->Name() . ' - '
- . $self->CreatedAsString() . "]:\n\n" . $content . "\n\n";
- $content =~ s/^/> /gm;
-
- }
-
- return ($content);
-}
-
-# }}}
-
-# {{{ ContentObj
-
-=head2 ContentObj
-
-Returns the RT::Attachment object which contains the content for this Transaction
-
-=cut
-
-
-
-sub ContentObj {
-
- my $self = shift;
-
- # If we don\'t have any content, return undef now.
- unless ( $self->Attachments->First ) {
- return (undef);
- }
-
- # Get the set of toplevel attachments to this transaction.
- my $Attachment = $self->Attachments->First();
-
- # If it's a message or a plain part, just return the
- # body.
- if ( $Attachment->ContentType() =~ '^(text/plain$|message/)' ) {
- return ($Attachment);
- }
-
- # If it's a multipart object, first try returning the first
- # text/plain part.
-
- elsif ( $Attachment->ContentType() =~ '^multipart/' ) {
- my $plain_parts = $Attachment->Children();
- $plain_parts->ContentType( VALUE => 'text/plain' );
-
- # If we actully found a part, return its content
- if ( $plain_parts->First && $plain_parts->First->Content ne '' ) {
- return ( $plain_parts->First );
- }
-
- # If that fails, return the first text/plain or message/ part
- # which has some content.
-
- else {
- my $all_parts = $Attachment->Children();
- while ( my $part = $all_parts->Next ) {
- if (( $part->ContentType() =~ '^(text/plain$|message/)' ) && $part->Content() ) {
- return ($part);
- }
- }
- }
-
- }
-
- # We found no content. suck
- return (undef);
-}
-
-# }}}
-
-# {{{ sub Subject
-
-=head2 Subject
-
-If this transaction has attached mime objects, returns the first one's subject
-Otherwise, returns null
-
-=cut
-
-sub Subject {
- my $self = shift;
- if ( $self->Attachments->First ) {
- return ( $self->Attachments->First->Subject );
- }
- else {
- return (undef);
- }
-}
-
-# }}}
-
-# {{{ sub Attachments
-
-=head2 Attachments
-
- Returns all the RT::Attachment objects which are attached
-to this transaction. Takes an optional parameter, which is
-a ContentType that Attachments should be restricted to.
-
-=cut
-
-sub Attachments {
- my $self = shift;
-
- unless ( $self->{'attachments'} ) {
- $self->{'attachments'} = RT::Attachments->new( $self->CurrentUser );
-
- #If it's a comment, return an empty object if they don't have the right to see it
- if ( $self->Type eq 'Comment' ) {
- unless ( $self->CurrentUserHasRight('ShowTicketComments') ) {
- return ( $self->{'attachments'} );
- }
- }
-
- #if they ain't got rights to see, return an empty object
- elsif ($self->__Value('ObjectType') eq "RT::Ticket") {
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return ( $self->{'attachments'} );
- }
- }
-
- $self->{'attachments'}->Limit( FIELD => 'TransactionId',
- VALUE => $self->Id );
-
- # Get the self->{'attachments'} in the order they're put into
- # the database. Arguably, we should be returning a tree
- # of self->{'attachments'}, not a set...but no current app seems to need
- # it.
-
- $self->{'attachments'}->OrderBy( ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'asc' );
-
- }
- return ( $self->{'attachments'} );
-
-}
-
-# }}}
-
-# {{{ sub _Attach
-
-=head2 _Attach
-
-A private method used to attach a mime object to this transaction.
-
-=cut
-
-sub _Attach {
- my $self = shift;
- my $MIMEObject = shift;
-
- if ( !defined($MIMEObject) ) {
- $RT::Logger->error(
-"$self _Attach: We can't attach a mime object if you don't give us one.\n"
- );
- return ( 0, $self->loc("[_1]: no attachment specified", $self) );
- }
-
- my $Attachment = new RT::Attachment( $self->CurrentUser );
- $Attachment->Create(
- TransactionId => $self->Id,
- Attachment => $MIMEObject
- );
- return ( $Attachment, $self->loc("Attachment created") );
-
-}
-
-# }}}
-
-# }}}
-
-# {{{ Routines dealing with Transaction Attributes
-
-# {{{ sub Description
-
-=head2 Description
-
-Returns a text string which describes this transaction
-
-=cut
-
-sub Description {
- my $self = shift;
-
- #Check those ACLs
- #If it's a comment or a comment email record,
- # we need to be extra special careful
-
- if ( $self->__Value('Type') =~ /^Comment/ ) {
- unless ( $self->CurrentUserHasRight('ShowTicketComments') ) {
- return ( $self->loc("Permission Denied") );
- }
- }
-
- #if they ain't got rights to see, don't let em
- elsif ($self->__Value('ObjectType') eq "RT::Ticket") {
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return ($self->loc("Permission Denied") );
- }
- }
-
- if ( !defined( $self->Type ) ) {
- return ( $self->loc("No transaction type specified"));
- }
-
- return ( $self->loc("[_1] by [_2]",$self->BriefDescription , $self->CreatorObj->Name ));
-}
-
-# }}}
-
-# {{{ sub BriefDescription
-
-=head2 BriefDescription
-
-Returns a text string which briefly describes this transaction
-
-=cut
-
-sub BriefDescription {
- my $self = shift;
-
- #If it's a comment or a comment email record,
- # we need to be extra special careful
- if ( $self->__Value('Type') =~ /^Comment/ ) {
- unless ( $self->CurrentUserHasRight('ShowTicketComments') ) {
- return ( $self->loc("Permission Denied") );
- }
- }
-
- #if they ain't got rights to see, don't let em
- elsif ( $self->__Value('ObjectType') eq "RT::Ticket" ) {
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return ( $self->loc("Permission Denied") );
- }
- }
-
- my $type = $self->Type; #cache this, rather than calling it 30 times
-
- if ( !defined($type) ) {
- return $self->loc("No transaction type specified");
- }
-
- my $obj_type = $self->FriendlyObjectType;
-
- if ( $type eq 'Create' ) {
- return ( $self->loc( "[_1] created", $obj_type ) );
- }
- elsif ( $type =~ /Status/ ) {
- if ( $self->Field eq 'Status' ) {
- if ( $self->NewValue eq 'deleted' ) {
- return ( $self->loc( "[_1] deleted", $obj_type ) );
- }
- else {
- return (
- $self->loc(
- "Status changed from [_1] to [_2]",
- "'" . $self->loc( $self->OldValue ) . "'",
- "'" . $self->loc( $self->NewValue ) . "'"
- )
- );
-
- }
- }
-
- # Generic:
- my $no_value = $self->loc("(no value)");
- return (
- $self->loc(
- "[_1] changed from [_2] to [_3]",
- $self->Field,
- ( $self->OldValue ? "'" . $self->OldValue . "'" : $no_value ),
- "'" . $self->NewValue . "'"
- )
- );
- }
-
- if ( my $code = $_BriefDescriptions{$type} ) {
- return $code->($self);
- }
-
- return $self->loc(
- "Default: [_1]/[_2] changed from [_3] to [_4]",
- $type,
- $self->Field,
- (
- $self->OldValue
- ? "'" . $self->OldValue . "'"
- : $self->loc("(no value)")
- ),
- "'" . $self->NewValue . "'"
- );
-}
-
-%_BriefDescriptions = (
- CommentEmailRecord => sub {
- my $self = shift;
- return $self->loc("Outgoing email about a comment recorded");
- },
- EmailRecord => sub {
- my $self = shift;
- return $self->loc("Outgoing email recorded");
- },
- Correspond => sub {
- my $self = shift;
- return $self->loc("Correspondence added");
- },
- Comment => sub {
- my $self = shift;
- return $self->loc("Comments added");
- },
- CustomField => sub {
- my $self = shift;
- my $field = $self->loc('CustomField');
-
- if ( $self->Field ) {
- my $cf = RT::CustomField->new( $self->CurrentUser );
- $cf->Load( $self->Field );
- $field = $cf->Name();
- }
-
- if ( $self->OldValue eq '' ) {
- return ( $self->loc("[_1] [_2] added", $field, $self->NewValue) );
- }
- elsif ( $self->NewValue eq '' ) {
- return ( $self->loc("[_1] [_2] deleted", $field, $self->OldValue) );
-
- }
- else {
- return $self->loc("[_1] [_2] changed to [_3]", $field, $self->OldValue, $self->NewValue );
- }
- },
- Untake => sub {
- my $self = shift;
- return $self->loc("Untaken");
- },
- Take => sub {
- my $self = shift;
- return $self->loc("Taken");
- },
- Force => sub {
- my $self = shift;
- my $Old = RT::User->new( $self->CurrentUser );
- $Old->Load( $self->OldValue );
- my $New = RT::User->new( $self->CurrentUser );
- $New->Load( $self->NewValue );
-
- return $self->loc("Owner forcibly changed from [_1] to [_2]" , $Old->Name , $New->Name);
- },
- Steal => sub {
- my $self = shift;
- my $Old = RT::User->new( $self->CurrentUser );
- $Old->Load( $self->OldValue );
- return $self->loc("Stolen from [_1]", $Old->Name);
- },
- Give => sub {
- my $self = shift;
- my $New = RT::User->new( $self->CurrentUser );
- $New->Load( $self->NewValue );
- return $self->loc( "Given to [_1]", $New->Name );
- },
- AddWatcher => sub {
- my $self = shift;
- my $principal = RT::Principal->new($self->CurrentUser);
- $principal->Load($self->NewValue);
- return $self->loc( "[_1] [_2] added", $self->Field, $principal->Object->Name);
- },
- DelWatcher => sub {
- my $self = shift;
- my $principal = RT::Principal->new($self->CurrentUser);
- $principal->Load($self->OldValue);
- return $self->loc( "[_1] [_2] deleted", $self->Field, $principal->Object->Name);
- },
- Subject => sub {
- my $self = shift;
- return $self->loc( "Subject changed to [_1]", $self->Data );
- },
- AddLink => sub {
- my $self = shift;
- my $value;
- if ( $self->NewValue ) {
- my $URI = RT::URI->new( $self->CurrentUser );
- $URI->FromURI( $self->NewValue );
- if ( $URI->Resolver ) {
- $value = $URI->Resolver->AsString;
- }
- else {
- $value = $self->NewValue;
- }
- if ( $self->Field eq 'DependsOn' ) {
- return $self->loc( "Dependency on [_1] added", $value );
- }
- elsif ( $self->Field eq 'DependedOnBy' ) {
- return $self->loc( "Dependency by [_1] added", $value );
-
- }
- elsif ( $self->Field eq 'RefersTo' ) {
- return $self->loc( "Reference to [_1] added", $value );
- }
- elsif ( $self->Field eq 'ReferredToBy' ) {
- return $self->loc( "Reference by [_1] added", $value );
- }
- elsif ( $self->Field eq 'MemberOf' ) {
- return $self->loc( "Membership in [_1] added", $value );
- }
- elsif ( $self->Field eq 'HasMember' ) {
- return $self->loc( "Member [_1] added", $value );
- }
- elsif ( $self->Field eq 'MergedInto' ) {
- return $self->loc( "Merged into [_1]", $value );
- }
- }
- else {
- return ( $self->Data );
- }
- },
- DeleteLink => sub {
- my $self = shift;
- my $value;
- if ( $self->OldValue ) {
- my $URI = RT::URI->new( $self->CurrentUser );
- $URI->FromURI( $self->OldValue );
- if ( $URI->Resolver ) {
- $value = $URI->Resolver->AsString;
- }
- else {
- $value = $self->OldValue;
- }
-
- if ( $self->Field eq 'DependsOn' ) {
- return $self->loc( "Dependency on [_1] deleted", $value );
- }
- elsif ( $self->Field eq 'DependedOnBy' ) {
- return $self->loc( "Dependency by [_1] deleted", $value );
-
- }
- elsif ( $self->Field eq 'RefersTo' ) {
- return $self->loc( "Reference to [_1] deleted", $value );
- }
- elsif ( $self->Field eq 'ReferredToBy' ) {
- return $self->loc( "Reference by [_1] deleted", $value );
- }
- elsif ( $self->Field eq 'MemberOf' ) {
- return $self->loc( "Membership in [_1] deleted", $value );
- }
- elsif ( $self->Field eq 'HasMember' ) {
- return $self->loc( "Member [_1] deleted", $value );
- }
- }
- else {
- return ( $self->Data );
- }
- },
- Set => sub {
- my $self = shift;
- if ( $self->Field eq 'Password' ) {
- return $self->loc('Password changed');
- }
- elsif ( $self->Field eq 'Queue' ) {
- my $q1 = new RT::Queue( $self->CurrentUser );
- $q1->Load( $self->OldValue );
- my $q2 = new RT::Queue( $self->CurrentUser );
- $q2->Load( $self->NewValue );
- return $self->loc("[_1] changed from [_2] to [_3]", $self->Field , $q1->Name , $q2->Name);
- }
-
- # Write the date/time change at local time:
- elsif ($self->Field =~ /Due|Starts|Started|Told/) {
- my $t1 = new RT::Date($self->CurrentUser);
- $t1->Set(Format => 'ISO', Value => $self->NewValue);
- my $t2 = new RT::Date($self->CurrentUser);
- $t2->Set(Format => 'ISO', Value => $self->OldValue);
- return $self->loc( "[_1] changed from [_2] to [_3]", $self->Field, $t2->AsString, $t1->AsString );
- }
- else {
- return $self->loc( "[_1] changed from [_2] to [_3]", $self->Field, ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'" );
- }
- },
- PurgeTransaction => sub {
- my $self = shift;
- return $self->loc("Transaction [_1] purged", $self->Data);
- },
-);
-
-# }}}
-
-# {{{ Utility methods
-
-# {{{ sub IsInbound
-
-=head2 IsInbound
-
-Returns true if the creator of the transaction is a requestor of the ticket.
-Returns false otherwise
-
-=cut
-
-sub IsInbound {
- my $self = shift;
- $self->ObjectType eq 'RT::Ticket' or return undef;
- return ( $self->TicketObj->IsRequestor( $self->CreatorObj->PrincipalId ) );
-}
-
-# }}}
-
-# }}}
-
-sub _OverlayAccessible {
- {
-
- ObjectType => { public => 1},
- ObjectId => { public => 1},
-
- }
-};
-
-# }}}
-
-# }}}
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
- return ( 0, $self->loc('Transactions are immutable') );
-}
-
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
- #if the field is public, return it.
- if ( $self->_Accessible( $field, 'public' ) ) {
- return ( $self->__Value($field) );
-
- }
-
- #If it's a comment, we need to be extra special careful
- if ( $self->__Value('Type') eq 'Comment' ) {
- unless ( $self->CurrentUserHasRight('ShowTicketComments') ) {
- return (undef);
- }
- }
- elsif ( $self->__Value('Type') eq 'CommentEmailRecord' ) {
- unless ( $self->CurrentUserHasRight('ShowTicketComments')
- && $self->CurrentUserHasRight('ShowOutgoingEmail') ) {
- return (undef);
- }
-
- }
- elsif ( $self->__Value('Type') eq 'EmailRecord' ) {
- unless ( $self->CurrentUserHasRight('ShowOutgoingEmail')) {
- return (undef);
- }
-
- }
- # Make sure the user can see the custom field before showing that it changed
- elsif ( ( $self->__Value('Type') eq 'CustomField' ) && $self->__Value('Field') ) {
- my $cf = RT::CustomField->new( $self->CurrentUser );
- $cf->Load( $self->__Value('Field') );
- return (undef) unless ( $cf->CurrentUserHasRight('SeeCustomField') );
- }
-
-
- #if they ain't got rights to see, don't let em
- elsif ($self->__Value('ObjectType') eq "RT::Ticket") {
- unless ( $self->CurrentUserHasRight('ShowTicket') ) {
- return (undef);
- }
- }
-
- return ( $self->__Value($field) );
-
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight RIGHT
-
-Calls $self->CurrentUser->HasQueueRight for the right passed in here.
-passed in here.
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
- return (
- $self->CurrentUser->HasRight(
- Right => "$right",
- Object => $self->TicketObj
- )
- );
-}
-
-# }}}
-
-sub Ticket {
- my $self = shift;
- return $self->ObjectId;
-}
-
-sub TicketObj {
- my $self = shift;
- return $self->Object;
-}
-
-sub OldValue {
- my $self = shift;
- if (my $type = $self->__Value('ReferenceType')) {
- my $Object = $type->new($self->CurrentUser);
- $Object->Load($self->__Value('OldReference'));
- return $Object->Content;
- }
- else {
- return $self->__Value('OldValue');
- }
-}
-
-sub NewValue {
- my $self = shift;
- if (my $type = $self->__Value('ReferenceType')) {
- my $Object = $type->new($self->CurrentUser);
- $Object->Load($self->__Value('NewReference'));
- return $Object->Content;
- }
- else {
- return $self->__Value('NewValue');
- }
-}
-
-sub Object {
- my $self = shift;
- my $Object = $self->__Value('ObjectType')->new($self->CurrentUser);
- $Object->Load($self->__Value('ObjectId'));
- return($Object);
-}
-
-sub FriendlyObjectType {
- my $self = shift;
- my $type = $self->ObjectType or return undef;
- $type =~ s/^RT:://;
- return $self->loc($type);
-}
-
-=head2 UpdateCustomFields
-
- Takes a hash of
-
- CustomField-<<Id>> => Value
- or
-
- Object-RT::Transaction-CustomField-<<Id>> => Value parameters to update
- this transaction's custom fields
-
-=cut
-
-sub UpdateCustomFields {
- my $self = shift;
- my %args = (@_);
-
- # This method used to have an API that took a hash of a single
- # value "ARGSRef", which was a reference to a hash of arguments.
- # This was insane. The next few lines of code preserve that API
- # while giving us something saner.
-
-
- # TODO: 3.6: DEPRECATE OLD API
-
- my $args;
-
- if ($args{'ARGSRef'}) {
- $args = $args{ARGSRef};
- } else {
- $args = \%args;
- }
-
- foreach my $arg ( keys %$args ) {
- next
- unless ( $arg =~
- /^(?:Object-RT::Transaction--)?CustomField-(\d+)/ );
- next if $arg =~ /-Magic$/;
- my $cfid = $1;
- my $values = $args->{$arg};
- foreach
- my $value ( UNIVERSAL::isa( $values, 'ARRAY' ) ? @$values : $values )
- {
- next unless length($value);
- $self->_AddCustomFieldValue(
- Field => $cfid,
- Value => $value,
- RecordTransaction => 0,
- );
- }
- }
-}
-
-
-
-=head2 CustomFieldValues
-
- Do name => id mapping (if needed) before falling back to RT::Record's CustomFieldValues
-
- See L<RT::Record>
-
-=cut
-
-sub CustomFieldValues {
- my $self = shift;
- my $field = shift;
-
- if ( UNIVERSAL::can( $self->Object, 'QueueObj' ) ) {
-
- unless ( $field =~ /^\d+$/o ) {
- my $CFs = RT::CustomFields->new( $self->CurrentUser );
- $CFs->Limit( FIELD => 'Name', VALUE => $field);
- $CFs->LimitToLookupType($self->CustomFieldLookupType);
- $CFs->LimitToGlobalOrObjectId($self->Object->QueueObj->id);
- $field = $CFs->First->id if $CFs->First;
- }
- }
- return $self->SUPER::CustomFieldValues($field);
-}
-
-# }}}
-
-# {{{ sub CustomFieldLookupType
-
-=head2 CustomFieldLookupType
-
-Returns the RT::Transaction lookup type, which can
-be passed to RT::CustomField->Create() via the 'LookupType' hash key.
-
-=cut
-
-# }}}
-
-sub CustomFieldLookupType {
- "RT::Queue-RT::Ticket-RT::Transaction";
-}
-
-# Transactions don't change. by adding this cache congif directiove, we don't lose pathalogically on long tickets.
-sub _CacheConfig {
- {
- 'cache_p' => 1,
- 'fast_update_p' => 1,
- 'cache_for_sec' => 6000,
- }
-}
-1;
diff --git a/rt/lib/RT/Transactions.pm b/rt/lib/RT/Transactions.pm
deleted file mode 100755
index 23a475a..0000000
--- a/rt/lib/RT/Transactions.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Transactions -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Transactions
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Transactions;
-
-use RT::SearchBuilder;
-use RT::Transaction;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Transactions';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::Transaction item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::Transaction->new($self->CurrentUser));
-}
-
- eval "require RT::Transactions_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Transactions_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Transactions_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Transactions_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Transactions_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Transactions_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Transactions_Overlay, RT::Transactions_Vendor, RT::Transactions_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Transactions_Overlay.pm b/rt/lib/RT/Transactions_Overlay.pm
deleted file mode 100644
index fe51575..0000000
--- a/rt/lib/RT/Transactions_Overlay.pm
+++ /dev/null
@@ -1,186 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Transactions - a collection of RT Transaction objects
-
-=head1 SYNOPSIS
-
- use RT::Transactions;
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok (require RT::Transactions);
-
-=end testing
-
-=cut
-
-
-package RT::Transactions;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
-
- $self->{'table'} = "Transactions";
- $self->{'primary_key'} = "id";
-
- # By default, order by the date of the transaction, rather than ID.
- $self->OrderByCols( { FIELD => 'Created',
- ORDER => 'ASC' },
- { FIELD => 'id',
- ORDER => 'ASC' } );
-
- return ( $self->SUPER::_Init(@_));
-}
-# }}}
-
-=head2 Limit
-
-A wrapper around SUPER::Limit to catch migration issues
-
-=cut
-
-sub Limit {
- my $self = shift;
- my %args = (@_);
-
- if ($args{'FIELD'} eq 'Ticket') {
- Carp::cluck("Historical code calling RT::Transactions::Limit with a 'Ticket'. This deprecated API will be deleted in 3.6");
- $self->SUPER::Limit(FIELD => 'ObjectType', OPERATOR => '=', VALUE =>'RT::Ticket');
- $args{'FIELD'} = 'ObjectId';
- $self->SUPER::Limit(%args);
-
- } else {
-
- $self->SUPER::Limit(%args);
- }
-
-
-}
-
-
-
-=head2 LimitToTicket TICKETID
-
-Find only transactions for the ticket whose id is TICKETID.
-
-This includes tickets merged into TICKETID.
-
-Repeated calls to this method will intelligently limit down to that set of tickets, joined with an OR
-
-
-=cut
-
-
-sub LimitToTicket {
- my $self = shift;
- my $tid = shift;
-
- unless ( $self->{'tickets_table'} ) {
- $self->{'tickets_table'} ||= $self->NewAlias('Tickets');
- $self->Join(
- ALIAS1 => 'main',
- FIELD1 => 'ObjectId',
- ALIAS2 => $self->{'tickets_table'},
- FIELD2 => 'id'
- );
- $self->Limit(
- FIELD => 'ObjectType',
- VALUE => 'RT::Ticket',
- );
- }
- $self->Limit(
- ALIAS => $self->{tickets_table},
- FIELD => 'EffectiveId',
- OPERATOR => '=',
- ENTRYAGGREGATOR => 'OR',
- VALUE => $tid,
- );
-
-}
-
-
-# {{{ sub Next
-sub Next {
- my $self = shift;
-
- my $Transaction = $self->SUPER::Next();
- if ((defined($Transaction)) and (ref($Transaction))) {
- # If the user can see the transaction's type, then they can
- # see the transaction and we should hand it back.
- if ($Transaction->Type) {
- return($Transaction);
- }
-
- #If the user doesn't have the right to show this ticket
- else {
- return($self->Next());
- }
- }
-
- #if there never was any ticket
- else {
- return(undef);
- }
-}
-# }}}
-
-
-
-1;
-
diff --git a/rt/lib/RT/URI.pm b/rt/lib/RT/URI.pm
deleted file mode 100644
index fdbe63b..0000000
--- a/rt/lib/RT/URI.pm
+++ /dev/null
@@ -1,271 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::URI;;
-
-use strict;
-use vars qw/@ISA/;
-@ISA = qw(RT::Base);
-
-use RT::URI::base;
-use Carp;
-
-=head1 NAME
-
-RT::URI
-
-=head1 DESCRIPTION
-
-This class provides a base class for URIs, such as those handled
-by RT::Link objects.
-
-=head1 API
-
-
-
-=cut
-
-
-
-
-=head2 new
-
-Create a new RT::URI object.
-
-=cut
-
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless( $self, $class );
-
- $self->CurrentUser(@_);
-
- return ($self);
-}
-
-
-
-# {{{ FromObject
-
-=head2 FromObject <Object>
-
-Given a local object, such as an RT::Ticket or an RT::FM::Article, this routine will return a URI for
-the local object
-
-=cut
-
-sub FromObject {
- my $self = shift;
- my $obj = shift;
-
- return undef unless $obj->can('URI');
- return $self->FromURI($obj->URI);
-}
-
-# }}}
-
-# {{{ FromURI
-
-=head2 FromURI <URI>
-
-Returns a local object id for this content. You are expected to know
-what sort of object this is the Id of
-
-Returns true if everything is ok, otherwise false
-
-=cut
-
-sub FromURI {
- my $self = shift;
- my $uri = shift;
-
- return undef unless ($uri);
-
- my $scheme;
- # Special case: integers passed in as URIs must be ticket ids
- if ($uri =~ /^(\d+)$/) {
- $scheme = "fsck.com-rt";
- } elsif ($uri =~ /^((?:\w|\.|-)+?):/) {
- $scheme = $1;
- }
- else {
- $RT::Logger->warning("$self Could not determine a URI scheme for $uri");
- return (undef);
- }
-
- # load up a resolver object for this scheme
- $self->_GetResolver($scheme);
-
- unless ($self->Resolver->ParseURI($uri)) {
- $RT::Logger->warning("Resolver ".ref($self->Resolver)." could not parse $uri");
- $self->{resolver} = undef; # clear resolver
- return (undef);
- }
-
-return(1);
-
-}
-
-# }}}
-
-# {{{ _GetResolver
-
-=private _GetResolver <scheme>
-
-Gets an RT URI resolver for the scheme <scheme>.
-Falls back to a null resolver. RT::URI::base.
-
-=cut
-
-sub _GetResolver {
- my $self = shift;
- my $scheme = shift;
-
- $scheme =~ s/(\.|-)/_/g;
- my $resolver;
-
-
- eval "
- require RT::URI::$scheme;
- \$resolver = RT::URI::$scheme->new(\$self->CurrentUser);
- ";
-
- if ($resolver) {
- $self->{'resolver'} = $resolver;
- } else {
- $self->{'resolver'} = RT::URI::base->new($self->CurrentUser);
- }
-
-}
-
-# }}}
-
-# {{{ Scheme
-
-=head2 Scheme
-
-Returns a local object id for this content. You are expected to know what sort of object this is the Id
-of
-
-=cut
-
-sub Scheme {
- my $self = shift;
- return ($self->Resolver->Scheme);
-
-}
-# }}}
-# {{{ URI
-
-=head2 URI
-
-Returns a local object id for this content. You are expected to know what sort of object this is the Id
-of
-
-=cut
-
-sub URI {
- my $self = shift;
- return ($self->Resolver->URI);
-
-}
-# }}}
-
-# {{{ Object
-
-=head2 Object
-
-Returns a local object for this content. This will usually be an RT::Ticket or somesuch
-
-=cut
-
-
-sub Object {
- my $self = shift;
- return($self->Resolver->Object);
-
-}
-
-
-# }}}
-
-# {{{ IsLocal
-
-=head2 IsLocal
-
-Returns a local object for this content. This will usually be an RT::Ticket or somesuch
-
-=cut
-
-sub IsLocal {
- my $self = shift;
- return $self->Resolver->IsLocal;
-}
-
-
-# }}}
-
-
-=head Resolver
-
-Returns this URI's URI resolver object
-
-=cut
-
-
-sub Resolver {
- my $self =shift;
- return ($self->{'resolver'});
-}
-
-eval "require RT::URI_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI_Vendor.pm});
-eval "require RT::URI_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI_Local.pm});
-
-1;
diff --git a/rt/lib/RT/URI/base.pm b/rt/lib/RT/URI/base.pm
deleted file mode 100644
index 56bfef3..0000000
--- a/rt/lib/RT/URI/base.pm
+++ /dev/null
@@ -1,151 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::URI::base;
-
-use strict;
-use base qw(RT::Base);
-
-=head1 NAME
-
-RT::URI::base
-
-=head1 DESCRIPTION
-
-A baseclass (and fallback) RT::URI handler. Every URI handler needs to
-handle the API presented here
-
-=cut
-
-
-=head1 API
-
-=head2 new
-
-Create a new URI handler
-
-=cut
-
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless( $self, $class );
- $self->CurrentUser(@_);
- return ($self);
-}
-
-sub ParseObject {
- my $self = shift;
- my $obj = shift;
- $self->{'uri'} = "unknown-object:".ref($obj);
-
-
-}
-
-
-
-sub ParseURI {
- my $self = shift;
- my $uri = shift;
-
- if ($uri =~ /^(.*?):/) {
- $self->{'scheme'} = $1;
- }
- $self->{'uri'} = $uri;
-
-
-}
-
-
-sub Object {
- my $self = shift;
- return undef;
-
-}
-
-sub URI {
- my $self = shift;
- return($self->{'uri'});
-}
-
-sub Scheme {
- my $self = shift;
- return($self->{'scheme'});
-
-}
-
-sub HREF {
- my $self = shift;
- return($self->{'href'} || $self->{'uri'});
-}
-
-sub IsLocal {
- my $self = shift;
- return undef;
-}
-
-=head2 AsString
-
-Return a "pretty" string representing the URI object.
-
-This is meant to be used like this:
-
- % $re = $uri->Resolver;
- <A HREF="<% $re->HREF %>"><% $re->AsString %></A>
-
-=cut
-
-sub AsString {
- my $self = shift;
- return $self->URI;
-}
-
-eval "require RT::URI::base_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI/base_Vendor.pm});
-eval "require RT::URI::base_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI/base_Local.pm});
-
-1;
diff --git a/rt/lib/RT/URI/freeside.pm b/rt/lib/RT/URI/freeside.pm
deleted file mode 100644
index ff1d38d..0000000
--- a/rt/lib/RT/URI/freeside.pm
+++ /dev/null
@@ -1,285 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 2004 Kristian Hoffmann <khoff@fire2wire.com>
-# Based on the original RT::URI::base and RT::URI::fsck_com_rt.
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::URI::freeside;
-
-use RT::URI::base;
-use strict;
-use vars qw(@ISA $IntegrationType $URL);
-@ISA = qw/RT::URI::base/;
-
-
-=head1 NAME
-
-RT::URI::freeside
-
-=head1 DESCRIPTION
-
-URI handler for freeside URIs. See http://www.sisd.com/freeside/ for
-more information on freeside.
-
-
-=head1 Public subroutines
-
-=over 4
-
-=item FreesideGetConfig CONFKEY
-
-Subroutine that returns the freeside's configuration value(s) for CONFKEY
-as a scalar or list.
-
-=cut
-
-sub FreesideGetConfig { return undef; }
-
-
-=item FreesideURL
-
-Returns the URL for freeside's web interface.
-
-=cut
-
-sub FreesideURL { return $URL; }
-
-
-=item FreesideVersion
-
-Returns a string describing the freeside version being used.
-
-=cut
-
-sub FreesideVersion { return undef; }
-
-
-=item smart_search
-
-A wrapper for the FS::cust_main::smart_search subroutine.
-
-=cut
-
-sub smart_search { return undef; }
-
-
-=item small_custview
-
-A wrapper for the FS::CGI::small_custview subroutine.
-
-=cut
-
-sub small_custview { return 'Freeside integration error!</A>'; }
-
-
-=back
-
-=head1 Private methods
-
-=over 4
-
-=item _FreesideGetRecord
-
-Method returns a hashref of the freeside record referenced in the URI.
-Must be called after ParseURI.
-
-=cut
-
-sub _FreesideGetRecord { return undef; }
-
-
-=item _FreesideURIPrefix
-
-Method that returns the URI prefix for freeside URIs.
-
-=cut
-
-sub _FreesideURIPrefix {
-
- my $self = shift;
- return($self->Scheme . '://freeside');
-
-}
-
-=item _FreesideURILabel
-
-Method that returns a short string describing the customer referenced
-in the URI.
-
-=cut
-
-sub _FreesideURILabel {
-
- my $self = shift;
-
- $RT::Logger->debug("Called _FreesideURILabel()");
-
- return unless (exists($self->{'fstable'}) and
- exists($self->{'fspkey'}));
-
- my $label;
- my ($table, $pkey) = ($self->{'fstable'}, $self->{'fspkey'});
-
- if ($table ne 'cust_main') {
- warn "FS::${table} not currently supported";
- return;
- }
-
- my $rec = $self->_FreesideGetRecord();
-
- if (ref($rec) eq 'HASH' and $table eq 'cust_main') {
- my $name = $rec->{'last'} . ', ' . $rec->{'first'};
- $name = $rec->{'company'} . " ($name)" if $rec->{'company'};
- $label = "$pkey: $name";
- } else {
- $label = "$pkey: $table";
- }
-
- if ($label and !$@) {
- return($label);
- } else {
- return;
- }
-
-}
-
-=item _FreesideURILabelLong
-
-Method that returns a longer string describing the customer referenced
-in the URI.
-
-=cut
-
-sub _FreesideURILabelLong {
-
- my $self = shift;
-
- return $self->_FreesideURILabel();
-
-}
-
-=back
-
-=head1 Public methods
-
-=over 4
-
-=cut
-
-sub ParseURI {
- my $self = shift;
- my $uri = shift;
- my ($table, $pkey);
-
- my $uriprefix = $self->_FreesideURIPrefix;
- if ($uri =~ /^$uriprefix\/(\w+)\/(\d+)$/) {
- $table = $1;
- $pkey = $2;
- $self->{'scheme'} = $self->Scheme;
- } else {
- return(undef);
- }
-
- $self->{'uri'} = "${uriprefix}/${table}/${pkey}";
- $self->{'fstable'} = $table;
- $self->{'fspkey'} = $pkey;
-
-
- my $url = $self->FreesideURL();
-
- if ($url ne '') {
- $self->{'href'} = "${url}/view/${table}.cgi?${pkey}";
- } else {
- $self->{'href'} = $self->{'uri'};
- }
-
- $self->{'uri'};
-
-}
-
-sub Scheme {
- my $self = shift;
- return('freeside');
-
-}
-
-sub HREF {
- my $self = shift;
- return($self->{'href'} || $self->{'uri'});
-}
-
-sub IsLocal {
- my $self = shift;
- return undef;
-}
-
-=item AsString
-
-Return a "pretty" string representing the URI object.
-
-This is meant to be used like this:
-
- % $re = $uri->Resolver;
- <A HREF="<% $re->HREF %>"><% $re->AsString %></A>
-
-=cut
-
-sub AsString {
- my $self = shift;
- my $prettystring;
- if ($prettystring = $self->_FreesideURILabel) {
- return $prettystring;
- } else {
- return $self->URI;
- }
-}
-
-=item AsStringLong
-
-Return a longer (HTML) string representing the URI object.
-
-=cut
-
-sub AsStringLong {
- my $self = shift;
- my $prettystring;
- if ($prettystring = $self->_FreesideURILabelLong || $self->_FreesideURILabel){
- return $prettystring;
- } else {
- return $self->URI;
- }
-}
-
-$IntegrationType ||= 'Internal';
-eval "require RT::URI::freeside::${RT::URI::freeside::IntegrationType}";
-warn $@ if $@;
-if ($@ &&
- $@ !~ qr(^Can't locate RT/URI/freeside/${RT::URI::freeside::IntegrationType}.pm)) {
- die $@;
-};
-
-=back
-
-=cut
-
-1;
diff --git a/rt/lib/RT/URI/freeside/Internal.pm b/rt/lib/RT/URI/freeside/Internal.pm
deleted file mode 100644
index 9ca0630..0000000
--- a/rt/lib/RT/URI/freeside/Internal.pm
+++ /dev/null
@@ -1,138 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 2004 Kristian Hoffmann <khoff@fire2wire.com>
-# Based on the original RT::URI::base and RT::URI::fsck_com_rt.
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-#
-use strict;
-no warnings qw(redefine);
-
-#use vars qw($conf);
-
-use FS;
-use FS::UID qw(dbh);
-use FS::CGI qw(popurl small_custview);
-use FS::Conf;
-use FS::Record qw(qsearchs qsearch dbdef);
-use FS::cust_main;
-use FS::cust_svc;
-
-=head1 NAME
-
-RT::URI::freeside::Internal
-
-=head1 DESCRIPTION
-
-Overlay for the RT::URI::freeside URI handler implementing the Internal integration type.
-
-See L<RT::URI::freeside> for public/private interface documentation.
-
-=cut
-
-
-
-sub _FreesideGetRecord {
-
- my $self = shift;
- my ($table, $pkey) = ($self->{'fstable'}, $self->{'fspkey'});
-
- $RT::Logger->debug("Called _FreesideGetRecord()");
-
- #eval "use FS::$table;";
-
- my $dbdef = dbdef;
- unless ($dbdef) {
- $RT::Logger->error("Using Internal freeside integration type, ".
- "but it doesn't look like we're running under ".
- "freeside's Mason handler.");
- return;
- }
-
- my $pkeyfield = $dbdef->table($table)->primary_key;
- unless ($pkeyfield) {
- $RT::Logger->error("No primary key for freeside table '$table'");
- return;
- }
-
- my $fsrec = qsearchs($table, { $pkeyfield => $pkey });
- unless ($fsrec) {
- $RT::Logger->error("Record with '$pkeyfield' == '$pkey' does " .
- "not exist in table $table");
- return;
- }
-
- return { $fsrec->hash, '_object' => $fsrec };
-
-}
-
-sub FreesideVersion {
-
- return $FS::VERSION;
-
-}
-
-sub FreesideGetConfig {
-
- #$conf = new FS::Conf unless ref($conf);
- my $conf = new FS::Conf;
-
- return scalar($conf->config(@_));
-
-}
-
-sub smart_search { #Subroutine
-
- return map { { $_->hash } } &FS::cust_main::smart_search(@_);
-
-}
-
-sub small_custview {
-
- return &FS::CGI::small_custview(@_);
-
-}
-
-sub _FreesideURILabelLong {
-
- my $self = shift;
-
- my $table = $self->{'fstable'};
-
- if ( $table eq 'cust_main' ) {
-
- my $rec = $self->_FreesideGetRecord();
- return small_custview( $rec->{'_object'},
- scalar(FS::Conf->new->config('countrydefault')),
- 1 #nobalance
- );
-
- } else {
-
- return $self->_FreesideURILabel();
-
- }
-
-}
-
-1;
diff --git a/rt/lib/RT/URI/freeside/XMLRPC.pm b/rt/lib/RT/URI/freeside/XMLRPC.pm
deleted file mode 100644
index a8a731f..0000000
--- a/rt/lib/RT/URI/freeside/XMLRPC.pm
+++ /dev/null
@@ -1,122 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 2004 Kristian Hoffmann <khoff@fire2wire.com>
-# Based on the original RT::URI::base and RT::URI::fsck_com_rt.
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-
-use strict;
-no warnings qw(redefine);
-
-use vars qw($XMLRPC_URL $_FS_VERSION);
-
-use Frontier::Client;
-
-=head1 NAME
-
-RT::URI::freeside::XMLRPC
-
-=head1 DESCRIPTION
-
-Overlay for the RT::URI::freeside URI handler implementing the XMLRPC integration type.
-
-See L<RT::URI::freeside> for public/private interface documentation.
-
-=cut
-
-
-sub _XMLRPCRequest { #Subroutine
-
- my $method = shift;
- my @args = @_;
-
- my $result;
- eval {
- my $server = new Frontier::Client ( url => $XMLRPC_URL );
- $result = $server->call($method, @args);
- };
-
- if (not $@ and ref($result) eq 'ARRAY') {
- return (scalar(@$result) == 1) ? @$result[0] : @$result;
- } else {
- $RT::Logger->debug("Freeside XMLRPC: " . $result || $@);
- return ();
- }
-
-}
-
-sub _FreesideGetRecord {
-
- my $self = shift;
- my ($table, $pkey) = ($self->{'fstable'}, $self->{'fspkey'});
- my $record;
-
- $RT::Logger->debug("Called XMLRPC::_FreesideGetRecord()");
-
- #FIXME: Need a better way to get primary keys.
- # Maybe create a method for it and cache them like version?
- my %table_pkeys = (
- cust_main => 'custnum',
- );
-
- my $method = 'Record.qsearchs';
- my @args = ($table, { $table_pkeys{$table} => $pkey });
- my ($record) = &_XMLRPCRequest($method, @args);
-
- return $record;
-
-}
-
-
-sub FreesideGetConfig {
-
- return _XMLRPCRequest('Conf.config', @_);
-
-}
-
-
-sub FreesideVersion {
-
- return $_FS_VERSION if ($_FS_VERSION =~ /^\d+\.\d+\.\d+/);
-
- $RT::Logger->debug("Requesting freeside version...");
- ($_FS_VERSION) = &_XMLRPCRequest('version');
- $RT::Logger->debug("Cached freeside version: ${_FS_VERSION}");
-
- return $_FS_VERSION;
-
-}
-
-sub smart_search { #Subroutine
-
- return _XMLRPCRequest('cust_main.smart_search', @_);
-
-}
-
-sub small_custview {
-
- return _XMLRPCRequest('CGI.small_custview', @_);
-
-}
-
-1;
diff --git a/rt/lib/RT/URI/fsck_com_rt.pm b/rt/lib/RT/URI/fsck_com_rt.pm
deleted file mode 100644
index ba98b1d..0000000
--- a/rt/lib/RT/URI/fsck_com_rt.pm
+++ /dev/null
@@ -1,269 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-package RT::URI::fsck_com_rt;
-
-use RT::Ticket;
-
-use RT::URI::base;
-
-use strict;
-use vars qw(@ISA);
-@ISA = qw/RT::URI::base/;
-
-
-
-
-=head2 LocalURIPrefix
-
-Returns the prefix for a local URI.
-
-=begin testing
-
-use_ok("RT::URI::fsck_com_rt");
-my $uri = RT::URI::fsck_com_rt->new($RT::SystemUser);
-
-ok(ref($uri));
-
-use Data::Dumper;
-
-
-ok (UNIVERSAL::isa($uri,RT::URI::fsck_com_rt), "It's an RT::URI::fsck_com_rt");
-
-ok ($uri->isa('RT::URI::base'), "It's an RT::URI::base");
-ok ($uri->isa('RT::Base'), "It's an RT::Base");
-
-is ($uri->LocalURIPrefix , 'fsck.com-rt://'.$RT::Organization);
-
-=end testing
-
-
-
-=cut
-
-sub LocalURIPrefix {
- my $self = shift;
-
- my $prefix = $self->Scheme. "://$RT::Organization";
-
- return ($prefix);
-}
-
-=head2 ObjectType
-
-=cut
-
-sub ObjectType {
- my $self = shift;
- my $object = shift || $self->Object;
-
- my $type = 'ticket';
- if (ref($object) && (ref($object) ne 'RT::Ticket')) {
- $type = ref($object);
- }
-
- return ($type);
-}
-
-
-
-
-=head2 URIForObject RT::Record
-
-Returns the RT URI for a local RT::Record object
-
-=begin testing
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-$ticket->Load(1);
-my $uri = RT::URI::fsck_com_rt->new($ticket->CurrentUser);
-is($uri->LocalURIPrefix. "/ticket/1" , $uri->URIForObject($ticket));
-
-=end testing
-
-=cut
-
-sub URIForObject {
- my $self = shift;
- my $obj = shift;
- return ($self->LocalURIPrefix."/".$self->ObjectType($obj)."/". $obj->Id);
-}
-
-
-=head2 ParseURI URI
-
-When handed an fsck.com-rt: URI, figures out things like whether its a local record and what its ID is
-
-=cut
-
-
-sub ParseURI {
- my $self = shift;
- my $uri = shift;
-
- if ( $uri =~ /^(\d+)$/ ) {
- my $ticket = RT::Ticket->new( $self->CurrentUser );
- $ticket->Load($uri);
- $self->{'uri'} = $ticket->URI;
- $self->{'object'} = $ticket;
- return($ticket->id);
- }
- else {
- $self->{'uri'} = $uri;
- }
-
- #If it's a local URI, load the ticket object and return its URI
- if ( $self->IsLocal ) {
-
- my $local_uri_prefix = $self->LocalURIPrefix;
- if ( $self->{'uri'} =~ /^$local_uri_prefix\/(.*?)\/(\d+)$/i ) {
- my $type = $1;
- my $id = $2;
-
- if ( $type eq 'ticket' ) { $type = 'RT::Ticket' }
-
- # We can instantiate any RT::Record subtype. but not anything else
-
- if ( UNIVERSAL::isa( $type, 'RT::Record' ) ) {
- my $record = $type->new( $self->CurrentUser );
- $record->Load($id);
-
- if ( $record->Id ) {
- $self->{'object'} = $record;
- return ( $record->Id );
- }
- }
-
- }
- }
- return undef;
-}
-
-=head2 IsLocal
-
-Returns true if this URI is for a local ticket.
-Returns undef otherwise.
-
-
-
-=cut
-
-sub IsLocal {
- my $self = shift;
- my $local_uri_prefix = $self->LocalURIPrefix;
- if ($self->{'uri'} =~ /^$local_uri_prefix/i) {
- return 1;
- }
- else {
- return undef;
- }
-}
-
-
-
-=head2 Object
-
-Returns the object for this URI, if it's local. Otherwise returns undef.
-
-=cut
-
-sub Object {
- my $self = shift;
- return ($self->{'object'});
-
-}
-
-=head2 Scheme
-
-Return the URI scheme for RT records
-
-=cut
-
-
-sub Scheme {
- my $self = shift;
- return "fsck.com-rt";
-}
-
-=head2 HREF
-
-If this is a local ticket, return an HTTP url to it.
-Otherwise, return its URI
-
-=cut
-
-
-sub HREF {
- my $self = shift;
- if ($self->IsLocal && $self->Object && ($self->ObjectType eq 'ticket')) {
- return ( $RT::WebURL . "Ticket/Display.html?id=".$self->Object->Id);
- }
- else {
- return ($self->URI);
- }
-}
-
-=head2 AsString
-
-Returns either a localized string 'ticket #23' or the full URI if the object is not local
-
-=cut
-
-sub AsString {
- my $self = shift;
- if ($self->IsLocal && $self->Object) {
- return $self->loc("[_1] #[_2]", $self->ObjectType, $self->Object->Id);
- }
- else {
- return $self->URI;
- }
-}
-
-eval "require RT::URI::fsck_com_rt_Vendor";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI/fsck_com_rt_Vendor.pm});
-eval "require RT::URI::fsck_com_rt_Local";
-die $@ if ($@ && $@ !~ qr{^Can't locate RT/URI/fsck_com_rt_Local.pm});
-
-1;
diff --git a/rt/lib/RT/URI/t.pm b/rt/lib/RT/URI/t.pm
deleted file mode 100644
index 2f95b2d..0000000
--- a/rt/lib/RT/URI/t.pm
+++ /dev/null
@@ -1,83 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-package RT::URI::t;
-
-use RT::Ticket;
-use RT::URI::base;
-
-use strict;
-use vars qw(@ISA);
-@ISA = qw/RT::URI::fsck_com_rt/;
-
-my $scheme = "t";
-
-=head2 ParseURI URI
-
-When handed an t: URI, figures out if it is an RT ticket. This is an
-alternate short form of specifying a full ticket URI.
-
-=begin testing
-
-use_ok("RT::URI::t");
-my $uri = RT::URI::t->new($RT::SystemUser);
-ok(ref($uri), "URI object exists");
-
-my $uristr = "t:1";
-$uri->ParseURI($uristr);
-is(ref($uri->Object), "RT::Ticket", "Object loaded is a ticket");
-is($uri->Object->Id, 1, "Object loaded has correct ID");
-is($uri->URI, 'fsck.com-rt://'.$RT::Organization.'/ticket/1',
- "URI object has correct URI string");
-
-=end testing
-
-=cut
-
-sub ParseURI {
- my $self = shift;
- my $uri = shift;
-
- # "t:<articlenum>"
- # Pass this off to fsck_com_rt, which is equipped to deal with
- # tickets after stripping off the t: prefix.
-
- if ($uri =~ /^$scheme:(\d+)/) {
- return $self->SUPER::ParseURI($1);
- } else {
- $self->{'uri'} = $uri;
- return undef;
- }
-}
-
-=head2 Scheme
-
-Return the URI scheme
-
-=cut
-
-sub Scheme {
- return $scheme;
-}
-
-1;
diff --git a/rt/lib/RT/User.pm b/rt/lib/RT/User.pm
deleted file mode 100755
index cbc10f5..0000000
--- a/rt/lib/RT/User.pm
+++ /dev/null
@@ -1,854 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
-RT::User
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package RT::User;
-use RT::Record;
-
-
-use vars qw( @ISA );
-@ISA= qw( RT::Record );
-
-sub _Init {
- my $self = shift;
-
- $self->Table('Users');
- $self->SUPER::_Init(@_);
-}
-
-
-
-
-
-=item Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
- varchar(200) 'Name'.
- varchar(40) 'Password'.
- blob 'Comments'.
- blob 'Signature'.
- varchar(120) 'EmailAddress'.
- blob 'FreeformContactInfo'.
- varchar(200) 'Organization'.
- varchar(120) 'RealName'.
- varchar(16) 'NickName'.
- varchar(16) 'Lang'.
- varchar(16) 'EmailEncoding'.
- varchar(16) 'WebEncoding'.
- varchar(100) 'ExternalContactInfoId'.
- varchar(30) 'ContactInfoSystem'.
- varchar(100) 'ExternalAuthId'.
- varchar(30) 'AuthSystem'.
- varchar(16) 'Gecos'.
- varchar(30) 'HomePhone'.
- varchar(30) 'WorkPhone'.
- varchar(30) 'MobilePhone'.
- varchar(30) 'PagerPhone'.
- varchar(200) 'Address1'.
- varchar(200) 'Address2'.
- varchar(100) 'City'.
- varchar(100) 'State'.
- varchar(16) 'Zip'.
- varchar(50) 'Country'.
- varchar(50) 'Timezone'.
- text 'PGPKey'.
-
-=cut
-
-
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Name => '',
- Password => '',
- Comments => '',
- Signature => '',
- EmailAddress => '',
- FreeformContactInfo => '',
- Organization => '',
- RealName => '',
- NickName => '',
- Lang => '',
- EmailEncoding => '',
- WebEncoding => '',
- ExternalContactInfoId => '',
- ContactInfoSystem => '',
- ExternalAuthId => '',
- AuthSystem => '',
- Gecos => '',
- HomePhone => '',
- WorkPhone => '',
- MobilePhone => '',
- PagerPhone => '',
- Address1 => '',
- Address2 => '',
- City => '',
- State => '',
- Zip => '',
- Country => '',
- Timezone => '',
- PGPKey => '',
-
- @_);
- $self->SUPER::Create(
- Name => $args{'Name'},
- Password => $args{'Password'},
- Comments => $args{'Comments'},
- Signature => $args{'Signature'},
- EmailAddress => $args{'EmailAddress'},
- FreeformContactInfo => $args{'FreeformContactInfo'},
- Organization => $args{'Organization'},
- RealName => $args{'RealName'},
- NickName => $args{'NickName'},
- Lang => $args{'Lang'},
- EmailEncoding => $args{'EmailEncoding'},
- WebEncoding => $args{'WebEncoding'},
- ExternalContactInfoId => $args{'ExternalContactInfoId'},
- ContactInfoSystem => $args{'ContactInfoSystem'},
- ExternalAuthId => $args{'ExternalAuthId'},
- AuthSystem => $args{'AuthSystem'},
- Gecos => $args{'Gecos'},
- HomePhone => $args{'HomePhone'},
- WorkPhone => $args{'WorkPhone'},
- MobilePhone => $args{'MobilePhone'},
- PagerPhone => $args{'PagerPhone'},
- Address1 => $args{'Address1'},
- Address2 => $args{'Address2'},
- City => $args{'City'},
- State => $args{'State'},
- Zip => $args{'Zip'},
- Country => $args{'Country'},
- Timezone => $args{'Timezone'},
- PGPKey => $args{'PGPKey'},
-);
-
-}
-
-
-
-=item id
-
-Returns the current value of id.
-(In the database, id is stored as int(11).)
-
-
-=cut
-
-
-=item Name
-
-Returns the current value of Name.
-(In the database, Name is stored as varchar(200).)
-
-
-
-=item SetName VALUE
-
-
-Set Name to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Name will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Password
-
-Returns the current value of Password.
-(In the database, Password is stored as varchar(40).)
-
-
-
-=item SetPassword VALUE
-
-
-Set Password to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Password will be stored as a varchar(40).)
-
-
-=cut
-
-
-=item Comments
-
-Returns the current value of Comments.
-(In the database, Comments is stored as blob.)
-
-
-
-=item SetComments VALUE
-
-
-Set Comments to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Comments will be stored as a blob.)
-
-
-=cut
-
-
-=item Signature
-
-Returns the current value of Signature.
-(In the database, Signature is stored as blob.)
-
-
-
-=item SetSignature VALUE
-
-
-Set Signature to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Signature will be stored as a blob.)
-
-
-=cut
-
-
-=item EmailAddress
-
-Returns the current value of EmailAddress.
-(In the database, EmailAddress is stored as varchar(120).)
-
-
-
-=item SetEmailAddress VALUE
-
-
-Set EmailAddress to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, EmailAddress will be stored as a varchar(120).)
-
-
-=cut
-
-
-=item FreeformContactInfo
-
-Returns the current value of FreeformContactInfo.
-(In the database, FreeformContactInfo is stored as blob.)
-
-
-
-=item SetFreeformContactInfo VALUE
-
-
-Set FreeformContactInfo to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, FreeformContactInfo will be stored as a blob.)
-
-
-=cut
-
-
-=item Organization
-
-Returns the current value of Organization.
-(In the database, Organization is stored as varchar(200).)
-
-
-
-=item SetOrganization VALUE
-
-
-Set Organization to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Organization will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item RealName
-
-Returns the current value of RealName.
-(In the database, RealName is stored as varchar(120).)
-
-
-
-=item SetRealName VALUE
-
-
-Set RealName to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, RealName will be stored as a varchar(120).)
-
-
-=cut
-
-
-=item NickName
-
-Returns the current value of NickName.
-(In the database, NickName is stored as varchar(16).)
-
-
-
-=item SetNickName VALUE
-
-
-Set NickName to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, NickName will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item Lang
-
-Returns the current value of Lang.
-(In the database, Lang is stored as varchar(16).)
-
-
-
-=item SetLang VALUE
-
-
-Set Lang to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Lang will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item EmailEncoding
-
-Returns the current value of EmailEncoding.
-(In the database, EmailEncoding is stored as varchar(16).)
-
-
-
-=item SetEmailEncoding VALUE
-
-
-Set EmailEncoding to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, EmailEncoding will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item WebEncoding
-
-Returns the current value of WebEncoding.
-(In the database, WebEncoding is stored as varchar(16).)
-
-
-
-=item SetWebEncoding VALUE
-
-
-Set WebEncoding to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, WebEncoding will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item ExternalContactInfoId
-
-Returns the current value of ExternalContactInfoId.
-(In the database, ExternalContactInfoId is stored as varchar(100).)
-
-
-
-=item SetExternalContactInfoId VALUE
-
-
-Set ExternalContactInfoId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ExternalContactInfoId will be stored as a varchar(100).)
-
-
-=cut
-
-
-=item ContactInfoSystem
-
-Returns the current value of ContactInfoSystem.
-(In the database, ContactInfoSystem is stored as varchar(30).)
-
-
-
-=item SetContactInfoSystem VALUE
-
-
-Set ContactInfoSystem to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ContactInfoSystem will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item ExternalAuthId
-
-Returns the current value of ExternalAuthId.
-(In the database, ExternalAuthId is stored as varchar(100).)
-
-
-
-=item SetExternalAuthId VALUE
-
-
-Set ExternalAuthId to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, ExternalAuthId will be stored as a varchar(100).)
-
-
-=cut
-
-
-=item AuthSystem
-
-Returns the current value of AuthSystem.
-(In the database, AuthSystem is stored as varchar(30).)
-
-
-
-=item SetAuthSystem VALUE
-
-
-Set AuthSystem to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, AuthSystem will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item Gecos
-
-Returns the current value of Gecos.
-(In the database, Gecos is stored as varchar(16).)
-
-
-
-=item SetGecos VALUE
-
-
-Set Gecos to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Gecos will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item HomePhone
-
-Returns the current value of HomePhone.
-(In the database, HomePhone is stored as varchar(30).)
-
-
-
-=item SetHomePhone VALUE
-
-
-Set HomePhone to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, HomePhone will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item WorkPhone
-
-Returns the current value of WorkPhone.
-(In the database, WorkPhone is stored as varchar(30).)
-
-
-
-=item SetWorkPhone VALUE
-
-
-Set WorkPhone to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, WorkPhone will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item MobilePhone
-
-Returns the current value of MobilePhone.
-(In the database, MobilePhone is stored as varchar(30).)
-
-
-
-=item SetMobilePhone VALUE
-
-
-Set MobilePhone to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, MobilePhone will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item PagerPhone
-
-Returns the current value of PagerPhone.
-(In the database, PagerPhone is stored as varchar(30).)
-
-
-
-=item SetPagerPhone VALUE
-
-
-Set PagerPhone to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, PagerPhone will be stored as a varchar(30).)
-
-
-=cut
-
-
-=item Address1
-
-Returns the current value of Address1.
-(In the database, Address1 is stored as varchar(200).)
-
-
-
-=item SetAddress1 VALUE
-
-
-Set Address1 to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Address1 will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item Address2
-
-Returns the current value of Address2.
-(In the database, Address2 is stored as varchar(200).)
-
-
-
-=item SetAddress2 VALUE
-
-
-Set Address2 to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Address2 will be stored as a varchar(200).)
-
-
-=cut
-
-
-=item City
-
-Returns the current value of City.
-(In the database, City is stored as varchar(100).)
-
-
-
-=item SetCity VALUE
-
-
-Set City to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, City will be stored as a varchar(100).)
-
-
-=cut
-
-
-=item State
-
-Returns the current value of State.
-(In the database, State is stored as varchar(100).)
-
-
-
-=item SetState VALUE
-
-
-Set State to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, State will be stored as a varchar(100).)
-
-
-=cut
-
-
-=item Zip
-
-Returns the current value of Zip.
-(In the database, Zip is stored as varchar(16).)
-
-
-
-=item SetZip VALUE
-
-
-Set Zip to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Zip will be stored as a varchar(16).)
-
-
-=cut
-
-
-=item Country
-
-Returns the current value of Country.
-(In the database, Country is stored as varchar(50).)
-
-
-
-=item SetCountry VALUE
-
-
-Set Country to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Country will be stored as a varchar(50).)
-
-
-=cut
-
-
-=item Timezone
-
-Returns the current value of Timezone.
-(In the database, Timezone is stored as varchar(50).)
-
-
-
-=item SetTimezone VALUE
-
-
-Set Timezone to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, Timezone will be stored as a varchar(50).)
-
-
-=cut
-
-
-=item PGPKey
-
-Returns the current value of PGPKey.
-(In the database, PGPKey is stored as text.)
-
-
-
-=item SetPGPKey VALUE
-
-
-Set PGPKey to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, PGPKey will be stored as a text.)
-
-
-=cut
-
-
-=item Creator
-
-Returns the current value of Creator.
-(In the database, Creator is stored as int(11).)
-
-
-=cut
-
-
-=item Created
-
-Returns the current value of Created.
-(In the database, Created is stored as datetime.)
-
-
-=cut
-
-
-=item LastUpdatedBy
-
-Returns the current value of LastUpdatedBy.
-(In the database, LastUpdatedBy is stored as int(11).)
-
-
-=cut
-
-
-=item LastUpdated
-
-Returns the current value of LastUpdated.
-(In the database, LastUpdated is stored as datetime.)
-
-
-=cut
-
-
-
-sub _ClassAccessible {
- {
-
- id =>
- {read => 1, type => 'int(11)', default => ''},
- Name =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Password =>
- {read => 1, write => 1, type => 'varchar(40)', default => ''},
- Comments =>
- {read => 1, write => 1, type => 'blob', default => ''},
- Signature =>
- {read => 1, write => 1, type => 'blob', default => ''},
- EmailAddress =>
- {read => 1, write => 1, type => 'varchar(120)', default => ''},
- FreeformContactInfo =>
- {read => 1, write => 1, type => 'blob', default => ''},
- Organization =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- RealName =>
- {read => 1, write => 1, type => 'varchar(120)', default => ''},
- NickName =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- Lang =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- EmailEncoding =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- WebEncoding =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- ExternalContactInfoId =>
- {read => 1, write => 1, type => 'varchar(100)', default => ''},
- ContactInfoSystem =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- ExternalAuthId =>
- {read => 1, write => 1, type => 'varchar(100)', default => ''},
- AuthSystem =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- Gecos =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- HomePhone =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- WorkPhone =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- MobilePhone =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- PagerPhone =>
- {read => 1, write => 1, type => 'varchar(30)', default => ''},
- Address1 =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- Address2 =>
- {read => 1, write => 1, type => 'varchar(200)', default => ''},
- City =>
- {read => 1, write => 1, type => 'varchar(100)', default => ''},
- State =>
- {read => 1, write => 1, type => 'varchar(100)', default => ''},
- Zip =>
- {read => 1, write => 1, type => 'varchar(16)', default => ''},
- Country =>
- {read => 1, write => 1, type => 'varchar(50)', default => ''},
- Timezone =>
- {read => 1, write => 1, type => 'varchar(50)', default => ''},
- PGPKey =>
- {read => 1, write => 1, type => 'text', default => ''},
- Creator =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- Created =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
- LastUpdatedBy =>
- {read => 1, auto => 1, type => 'int(11)', default => '0'},
- LastUpdated =>
- {read => 1, auto => 1, type => 'datetime', default => ''},
-
- }
-};
-
-
- eval "require RT::User_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/User_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::User_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/User_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::User_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/User_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::User_Overlay, RT::User_Vendor, RT::User_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/User_Overlay.pm b/rt/lib/RT/User_Overlay.pm
deleted file mode 100644
index 27ddd4c..0000000
--- a/rt/lib/RT/User_Overlay.pm
+++ /dev/null
@@ -1,1811 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::User - RT User object
-
-=head1 SYNOPSIS
-
- use RT::User;
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::User);
-
-=end testing
-
-
-=cut
-
-
-package RT::User;
-
-use strict;
-no warnings qw(redefine);
-
-use vars qw(%_USERS_KEY_CACHE);
-
-%_USERS_KEY_CACHE = ();
-
-use Digest::MD5;
-use RT::Principals;
-use RT::ACE;
-use RT::Interface::Email;
-
-
-# {{{ sub _Accessible
-
-
-sub _OverlayAccessible {
- {
-
- Name => { public => 1, admin => 1 },
- Password => { read => 0 },
- EmailAddress => { public => 1 },
- Organization => { public => 1, admin => 1 },
- RealName => { public => 1 },
- NickName => { public => 1 },
- Lang => { public => 1 },
- EmailEncoding => { public => 1 },
- WebEncoding => { public => 1 },
- ExternalContactInfoId => { public => 1, admin => 1 },
- ContactInfoSystem => { public => 1, admin => 1 },
- ExternalAuthId => { public => 1, admin => 1 },
- AuthSystem => { public => 1, admin => 1 },
- Gecos => { public => 1, admin => 1 },
- PGPKey => { public => 1, admin => 1 },
-
- }
-}
-
-
-
-# }}}
-
-# {{{ sub Create
-
-=head2 Create { PARAMHASH }
-
-
-=begin testing
-
-# Make sure we can create a user
-
-my $u1 = RT::User->new($RT::SystemUser);
-is(ref($u1), 'RT::User');
-my ($id, $msg) = $u1->Create(Name => 'CreateTest1'.$$, EmailAddress => $$.'create-test-1@example.com');
-ok ($id, "Creating user CreateTest1 - " . $msg );
-
-# Make sure we can't create a second user with the same name
-my $u2 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u2->Create(Name => 'CreateTest1'.$$, EmailAddress => $$.'create-test-2@example.com');
-ok (!$id, $msg);
-
-
-# Make sure we can't create a second user with the same EmailAddress address
-my $u3 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u3->Create(Name => 'CreateTest2'.$$, EmailAddress => $$.'create-test-1@example.com');
-ok (!$id, $msg);
-
-# Make sure we can create a user with no EmailAddress address
-my $u4 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u4->Create(Name => 'CreateTest3'.$$);
-ok ($id, $msg);
-
-# make sure we can create a second user with no EmailAddress address
-my $u5 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u5->Create(Name => 'CreateTest4'.$$);
-ok ($id, $msg);
-
-# make sure we can create a user with a blank EmailAddress address
-my $u6 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u6->Create(Name => 'CreateTest6'.$$, EmailAddress => '');
-ok ($id, $msg);
-# make sure we can create a second user with a blankEmailAddress address
-my $u7 = RT::User->new($RT::SystemUser);
-($id, $msg) = $u7->Create(Name => 'CreateTest7'.$$, EmailAddress => '');
-ok ($id, $msg);
-
-# Can we change the email address away from from "";
-($id,$msg) = $u7->SetEmailAddress('foo@bar'.$$);
-ok ($id, $msg);
-# can we change the address back to "";
-($id,$msg) = $u7->SetEmailAddress('');
-ok ($id, $msg);
-is ($u7->EmailAddress, '');
-
-
-=end testing
-
-=cut
-
-
-sub Create {
- my $self = shift;
- my %args = (
- Privileged => 0,
- Disabled => 0,
- EmailAddress => '',
- _RecordTransaction => 1,
- @_ # get the real argumentlist
- );
-
- # remove the value so it does not cripple SUPER::Create
- my $record_transaction = delete $args{'_RecordTransaction'};
-
- #Check the ACL
- unless ( $self->CurrentUser->HasRight(Right => 'AdminUsers', Object => $RT::System) ) {
- return ( 0, $self->loc('No permission to create users') );
- }
-
-
- unless ($self->CanonicalizeUserInfo(\%args)) {
- return ( 0, $self->loc("Could not set user info") );
- }
-
- $args{'EmailAddress'} = $self->CanonicalizeEmailAddress($args{'EmailAddress'});
-
- # if the user doesn't have a name defined, set it to the email address
- $args{'Name'} = $args{'EmailAddress'} unless ($args{'Name'});
-
-
-
- # Privileged is no longer a column in users
- my $privileged = $args{'Privileged'};
- delete $args{'Privileged'};
-
-
- if ($args{'CryptedPassword'} ) {
- $args{'Password'} = $args{'CryptedPassword'};
- delete $args{'CryptedPassword'};
- }
- elsif ( !$args{'Password'} ) {
- $args{'Password'} = '*NO-PASSWORD*';
- }
- elsif ( length( $args{'Password'} ) < $RT::MinimumPasswordLength ) {
- return ( 0, $self->loc("Password needs to be at least [_1] characters long",$RT::MinimumPasswordLength) );
- }
-
- else {
- $args{'Password'} = $self->_GeneratePassword($args{'Password'});
- }
-
- #TODO Specify some sensible defaults.
-
- unless ( $args{'Name'} ) {
- use Data::Dumper;
- $RT::Logger->crit(Dumper \%args);
- return ( 0, $self->loc("Must specify 'Name' attribute") );
- }
-
- #SANITY CHECK THE NAME AND ABORT IF IT'S TAKEN
- if ($RT::SystemUser) { #This only works if RT::SystemUser has been defined
- my $TempUser = RT::User->new($RT::SystemUser);
- $TempUser->Load( $args{'Name'} );
- return ( 0, $self->loc('Name in use') ) if ( $TempUser->Id );
-
- return ( 0, $self->loc('Email address in use') )
- unless ( $self->ValidateEmailAddress( $args{'EmailAddress'} ) );
- }
- else {
- $RT::Logger->warning( "$self couldn't check for pre-existing users");
- }
-
-
- $RT::Handle->BeginTransaction();
- # Groups deal with principal ids, rather than user ids.
- # When creating this user, set up a principal Id for it.
- my $principal = RT::Principal->new($self->CurrentUser);
- my $principal_id = $principal->Create(PrincipalType => 'User',
- Disabled => $args{'Disabled'},
- ObjectId => '0');
- # If we couldn't create a principal Id, get the fuck out.
- unless ($principal_id) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("Couldn't create a Principal on new user create.");
- $RT::Logger->crit("Strange things are afoot at the circle K");
- return ( 0, $self->loc('Could not create user') );
- }
-
- $principal->__Set(Field => 'ObjectId', Value => $principal_id);
- delete $args{'Disabled'};
-
- $self->SUPER::Create(id => $principal_id , %args);
- my $id = $self->Id;
-
- #If the create failed.
- unless ($id) {
- $RT::Handle->Rollback();
- $RT::Logger->error("Could not create a new user - " .join('-'. %args));
-
- return ( 0, $self->loc('Could not create user') );
- }
-
- my $aclstash = RT::Group->new($self->CurrentUser);
- my $stash_id = $aclstash->_CreateACLEquivalenceGroup($principal);
-
- unless ($stash_id) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("Couldn't stash the user in groupmembers");
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- my $everyone = RT::Group->new($self->CurrentUser);
- $everyone->LoadSystemInternalGroup('Everyone');
- unless ($everyone->id) {
- $RT::Logger->crit("Could not load Everyone group on user creation.");
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- my ($everyone_id, $everyone_msg) = $everyone->_AddMember( InsideTransaction => 1, PrincipalId => $self->PrincipalId);
- unless ($everyone_id) {
- $RT::Logger->crit("Could not add user to Everyone group on user creation.");
- $RT::Logger->crit($everyone_msg);
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- my $access_class = RT::Group->new($self->CurrentUser);
- if ($privileged) {
- $access_class->LoadSystemInternalGroup('Privileged');
- } else {
- $access_class->LoadSystemInternalGroup('Unprivileged');
- }
-
- unless ($access_class->id) {
- $RT::Logger->crit("Could not load Privileged or Unprivileged group on user creation");
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- my ($ac_id, $ac_msg) = $access_class->_AddMember( InsideTransaction => 1, PrincipalId => $self->PrincipalId);
-
- unless ($ac_id) {
- $RT::Logger->crit("Could not add user to Privileged or Unprivileged group on user creation. Aborted");
- $RT::Logger->crit($ac_msg);
- $RT::Handle->Rollback();
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- if ( $record_transaction ) {
- $self->_NewTransaction( Type => "Create" );
- }
-
- $RT::Handle->Commit;
-
- return ( $id, $self->loc('User created') );
-}
-
-# }}}
-
-
-
-# {{{ SetPrivileged
-
-=head2 SetPrivileged BOOL
-
-If passed a true value, makes this user a member of the "Privileged" PseudoGroup.
-Otherwise, makes this user a member of the "Unprivileged" pseudogroup.
-
-Returns a standard RT tuple of (val, msg);
-
-=begin testing
-
-
-ok(my $user = RT::User->new($RT::SystemUser));
-ok($user->Load('root'), "Loaded user 'root'");
-ok($user->Privileged, "User 'root' is privileged");
-ok(my ($v,$m) = $user->SetPrivileged(0));
-ok ($v ==1, "Set unprivileged suceeded ($m)");
-ok(!$user->Privileged, "User 'root' is no longer privileged");
-ok(my ($v2,$m2) = $user->SetPrivileged(1));
-ok ($v2 ==1, "Set privileged suceeded ($m2");
-ok($user->Privileged, "User 'root' is privileged again");
-
-=end testing
-
-=cut
-
-sub SetPrivileged {
- my $self = shift;
- my $val = shift;
-
- #Check the ACL
- unless ( $self->CurrentUser->HasRight(Right => 'AdminUsers', Object => $RT::System) ) {
- return ( 0, $self->loc('Permission Denied') );
- }
- my $priv = RT::Group->new($self->CurrentUser);
- $priv->LoadSystemInternalGroup('Privileged');
-
- unless ($priv->Id) {
- $RT::Logger->crit("Could not find Privileged pseudogroup");
- return(0,$self->loc("Failed to find 'Privileged' users pseudogroup."));
- }
-
- my $unpriv = RT::Group->new($self->CurrentUser);
- $unpriv->LoadSystemInternalGroup('Unprivileged');
- unless ($unpriv->Id) {
- $RT::Logger->crit("Could not find unprivileged pseudogroup");
- return(0,$self->loc("Failed to find 'Unprivileged' users pseudogroup"));
- }
-
- if ($val) {
- if ($priv->HasMember($self->PrincipalObj)) {
- #$RT::Logger->debug("That user is already privileged");
- return (0,$self->loc("That user is already privileged"));
- }
- if ($unpriv->HasMember($self->PrincipalObj)) {
- $unpriv->_DeleteMember($self->PrincipalId);
- } else {
- # if we had layered transactions, life would be good
- # sadly, we have to just go ahead, even if something
- # bogus happened
- $RT::Logger->crit("User ".$self->Id." is neither privileged nor ".
- "unprivileged. something is drastically wrong.");
- }
- my ($status, $msg) = $priv->_AddMember( InsideTransaction => 1, PrincipalId => $self->PrincipalId);
- if ($status) {
- return (1, $self->loc("That user is now privileged"));
- } else {
- return (0, $msg);
- }
- }
- else {
- if ($unpriv->HasMember($self->PrincipalObj)) {
- #$RT::Logger->debug("That user is already unprivileged");
- return (0,$self->loc("That user is already unprivileged"));
- }
- if ($priv->HasMember($self->PrincipalObj)) {
- $priv->_DeleteMember( $self->PrincipalId);
- } else {
- # if we had layered transactions, life would be good
- # sadly, we have to just go ahead, even if something
- # bogus happened
- $RT::Logger->crit("User ".$self->Id." is neither privileged nor ".
- "unprivileged. something is drastically wrong.");
- }
- my ($status, $msg) = $unpriv->_AddMember( InsideTransaction => 1, PrincipalId => $self->PrincipalId);
- if ($status) {
- return (1, $self->loc("That user is now unprivileged"));
- } else {
- return (0, $msg);
- }
- }
-}
-
-# }}}
-
-# {{{ Privileged
-
-=head2 Privileged
-
-Returns true if this user is privileged. Returns undef otherwise.
-
-=cut
-
-sub Privileged {
- my $self = shift;
- my $priv = RT::Group->new($self->CurrentUser);
- $priv->LoadSystemInternalGroup('Privileged');
- if ($priv->HasMember($self->PrincipalObj)) {
- return(1);
- }
- else {
- return(undef);
- }
-}
-
-# }}}
-
-# {{{ sub _BootstrapCreate
-
-#create a user without validating _any_ data.
-
-#To be used only on database init.
-# We can't localize here because it's before we _have_ a loc framework
-
-sub _BootstrapCreate {
- my $self = shift;
- my %args = (@_);
-
- $args{'Password'} = '*NO-PASSWORD*';
-
-
- $RT::Handle->BeginTransaction();
-
- # Groups deal with principal ids, rather than user ids.
- # When creating this user, set up a principal Id for it.
- my $principal = RT::Principal->new($self->CurrentUser);
- my $principal_id = $principal->Create(PrincipalType => 'User', ObjectId => '0');
- $principal->__Set(Field => 'ObjectId', Value => $principal_id);
-
- # If we couldn't create a principal Id, get the fuck out.
- unless ($principal_id) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("Couldn't create a Principal on new user create. Strange things are afoot at the circle K");
- return ( 0, 'Could not create user' );
- }
- $self->SUPER::Create(id => $principal_id, %args);
- my $id = $self->Id;
- #If the create failed.
- unless ($id) {
- $RT::Handle->Rollback();
- return ( 0, 'Could not create user' ) ; #never loc this
- }
-
- my $aclstash = RT::Group->new($self->CurrentUser);
- my $stash_id = $aclstash->_CreateACLEquivalenceGroup($principal);
-
- unless ($stash_id) {
- $RT::Handle->Rollback();
- $RT::Logger->crit("Couldn't stash the user in groupmembers");
- return ( 0, $self->loc('Could not create user') );
- }
-
-
- $RT::Handle->Commit();
-
- return ( $id, 'User created' );
-}
-
-# }}}
-
-# {{{ sub Delete
-
-sub Delete {
- my $self = shift;
-
- return ( 0, $self->loc('Deleting this object would violate referential integrity') );
-
-}
-
-# }}}
-
-# {{{ sub Load
-
-=head2 Load
-
-Load a user object from the database. Takes a single argument.
-If the argument is numerical, load by the column 'id'. Otherwise, load by
-the "Name" column which is the user's textual username.
-
-=cut
-
-sub Load {
- my $self = shift;
- my $identifier = shift || return undef;
-
- #if it's an int, load by id. otherwise, load by name.
- if ( $identifier !~ /\D/ ) {
- $self->SUPER::LoadById($identifier);
- }
- else {
- $self->LoadByCol( "Name", $identifier );
- }
-}
-
-# }}}
-
-# {{{ sub LoadByEmail
-
-=head2 LoadByEmail
-
-Tries to load this user object from the database by the user's email address.
-
-
-=cut
-
-sub LoadByEmail {
- my $self = shift;
- my $address = shift;
-
- # Never load an empty address as an email address.
- unless ($address) {
- return (undef);
- }
-
- $address = $self->CanonicalizeEmailAddress($address);
-
- #$RT::Logger->debug("Trying to load an email address: $address\n");
- return $self->LoadByCol( "EmailAddress", $address );
-}
-
-# }}}
-
-# {{{ LoadOrCreateByEmail
-
-=head2 LoadOrCreateByEmail ADDRESS
-
-Attempts to find a user who has the provided email address. If that fails, creates an unprivileged user with
-the provided email address. and loads them.
-
-Returns a tuple of the user's id and a status message.
-0 will be returned in place of the user's id in case of failure.
-
-=cut
-
-sub LoadOrCreateByEmail {
- my $self = shift;
- my $email = shift;
-
- my ($val, $message);
-
- my ( $Address, $Name ) =
- RT::Interface::Email::ParseAddressFromHeader($email);
- $email = $Address;
-
- $self->LoadByEmail($email);
- $message = $self->loc('User loaded');
- unless ($self->Id) {
- $self->Load($email);
- }
- unless($self->Id) {
- ( $val, $message ) = $self->Create(
- Name => $email,
- EmailAddress => $email,
- RealName => $Name,
- Privileged => 0,
- Comments => 'Autocreated when added as a watcher');
- unless ($val) {
- # Deal with the race condition of two account creations at once
- $self->LoadByEmail($email);
- unless ($self->Id) {
- sleep 5;
- $self->LoadByEmail($email);
- }
- if ($self->Id) {
- $RT::Logger->error("Recovered from creation failure due to race condition");
- $message = $self->loc("User loaded");
- }
- else {
- $RT::Logger->crit("Failed to create user ".$email .": " .$message);
- }
- }
- }
-
- if ($self->Id) {
- return($self->Id, $message);
- }
- else {
- return(0, $message);
- }
-
-
- }
-
-# }}}
-
-# {{{ sub ValidateEmailAddress
-
-=head2 ValidateEmailAddress ADDRESS
-
-Returns true if the email address entered is not in use by another user or is
-undef or ''. Returns false if it's in use.
-
-=cut
-
-sub ValidateEmailAddress {
- my $self = shift;
- my $Value = shift;
-
- # if the email address is null, it's always valid
- return (1) if ( !$Value || $Value eq "" );
-
- my $TempUser = RT::User->new($RT::SystemUser);
- $TempUser->LoadByEmail($Value);
-
- if ( $TempUser->id && ( $TempUser->id != $self->id ) )
- { # if we found a user with that address
- # it's invalid to set this user's address to it
- return (undef);
- }
- else { #it's a valid email address
- return (1);
- }
-}
-
-# }}}
-
-# {{{ sub CanonicalizeEmailAddress
-
-
-
-=head2 CanonicalizeEmailAddress ADDRESS
-
-CanonicalizeEmailAddress converts email addresses into canonical form.
-it takes one email address in and returns the proper canonical
-form. You can dump whatever your proper local config is in here. Note
-that it may be called as a static method; in this case, $self may be
-undef.
-
-=cut
-
-sub CanonicalizeEmailAddress {
- my $self = shift;
- my $email = shift;
- # Example: the following rule would treat all email
- # coming from a subdomain as coming from second level domain
- # foo.com
- if ($RT::CanonicalizeEmailAddressMatch && $RT::CanonicalizeEmailAddressReplace ) {
- $email =~ s/$RT::CanonicalizeEmailAddressMatch/$RT::CanonicalizeEmailAddressReplace/gi;
- }
- return ($email);
-}
-
-
-# }}}
-
-# {{{ sub CanonicalizeUserInfo
-
-
-
-=head2 CanonicalizeUserInfo HASH of ARGS
-
-CanonicalizeUserInfo can convert all User->Create options.
-it takes a hashref of all the params sent to User->Create and
-returns that same hash, by default nothing is done.
-
-This function is intended to allow users to have their info looked up via
-an outside source and modified upon creation.
-
-=cut
-
-sub CanonicalizeUserInfo {
- my $self = shift;
- my $args = shift;
- my $success = 1;
-
- return ($success);
-}
-
-
-# }}}
-
-
-# {{{ Password related functions
-
-# {{{ sub SetRandomPassword
-
-=head2 SetRandomPassword
-
-Takes no arguments. Returns a status code and a new password or an error message.
-If the status is 1, the second value returned is the new password.
-If the status is anything else, the new value returned is the error code.
-
-=cut
-
-sub SetRandomPassword {
- my $self = shift;
-
- unless ( $self->CurrentUserCanModify('Password') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
-
- my $min = ( $RT::MinimumPasswordLength > 6 ? $RT::MinimumPasswordLength : 6);
- my $max = ( $RT::MinimumPasswordLength > 8 ? $RT::MinimumPasswordLength : 8);
-
- my $pass = $self->GenerateRandomPassword( $min, $max) ;
-
- # If we have "notify user on
-
- my ( $val, $msg ) = $self->SetPassword($pass);
-
- #If we got an error return the error.
- return ( 0, $msg ) unless ($val);
-
- #Otherwise, we changed the password, lets return it.
- return ( 1, $pass );
-
-}
-
-# }}}
-
-# {{{ sub ResetPassword
-
-=head2 ResetPassword
-
-Returns status, [ERROR or new password]. Resets this user\'s password to
-a randomly generated pronouncable password and emails them, using a
-global template called "RT_PasswordChange", which can be overridden
-with global templates "RT_PasswordChange_Privileged" or "RT_PasswordChange_NonPrivileged"
-for privileged and Non-privileged users respectively.
-
-=cut
-
-sub ResetPassword {
- my $self = shift;
-
- unless ( $self->CurrentUserCanModify('Password') ) {
- return ( 0, $self->loc("Permission Denied") );
- }
- my ( $status, $pass ) = $self->SetRandomPassword();
-
- unless ($status) {
- return ( 0, "$pass" );
- }
-
- my $template = RT::Template->new( $self->CurrentUser );
-
- if ( $self->Privileged ) {
- $template->LoadGlobalTemplate('RT_PasswordChange_Privileged');
- }
- else {
- $template->LoadGlobalTemplate('RT_PasswordChange_NonPrivileged');
- }
-
- unless ( $template->Id ) {
- $template->LoadGlobalTemplate('RT_PasswordChange');
- }
-
- unless ( $template->Id ) {
- $RT::Logger->crit( "$self tried to send "
- . $self->Name
- . " a password reminder "
- . "but couldn't find a password change template" );
- }
-
- my $notification = RT::Action::SendPasswordEmail->new(
- TemplateObj => $template,
- Argument => $pass
- );
-
- $notification->SetHeader( 'To', $self->EmailAddress );
-
- my ($ret);
- $ret = $notification->Prepare();
- if ($ret) {
- $ret = $notification->Commit();
- }
-
- if ($ret) {
- return ( 1, $self->loc('New password notification sent') );
- }
- else {
- return ( 0, $self->loc('Notification could not be sent') );
- }
-
-}
-
-# }}}
-
-# {{{ sub GenerateRandomPassword
-
-=head2 GenerateRandomPassword MIN_LEN and MAX_LEN
-
-Returns a random password between MIN_LEN and MAX_LEN characters long.
-
-=cut
-
-sub GenerateRandomPassword {
- my $self = shift;
- my $min_length = shift;
- my $max_length = shift;
-
- #This code derived from mpw.pl, a bit of code with a sordid history
- # Its notes:
-
- # Perl cleaned up a bit by Jesse Vincent 1/14/2001.
- # Converted to perl from C by Marc Horowitz, 1/20/2000.
- # Converted to C from Multics PL/I by Bill Sommerfeld, 4/21/86.
- # Original PL/I version provided by Jerry Saltzer.
-
- my ( $frequency, $start_freq, $total_sum, $row_sums );
-
- #When munging characters, we need to know where to start counting letters from
- my $a = ord('a');
-
- # frequency of English digraphs (from D Edwards 1/27/66)
- $frequency = [
- [
- 4, 20, 28, 52, 2, 11, 28, 4, 32, 4, 6, 62, 23, 167,
- 2, 14, 0, 83, 76, 127, 7, 25, 8, 1, 9, 1
- ], # aa - az
- [
- 13, 0, 0, 0, 55, 0, 0, 0, 8, 2, 0, 22, 0, 0,
- 11, 0, 0, 15, 4, 2, 13, 0, 0, 0, 15, 0
- ], # ba - bz
- [
- 32, 0, 7, 1, 69, 0, 0, 33, 17, 0, 10, 9, 1, 0,
- 50, 3, 0, 10, 0, 28, 11, 0, 0, 0, 3, 0
- ], # ca - cz
- [
- 40, 16, 9, 5, 65, 18, 3, 9, 56, 0, 1, 4, 15, 6,
- 16, 4, 0, 21, 18, 53, 19, 5, 15, 0, 3, 0
- ], # da - dz
- [
- 84, 20, 55, 125, 51, 40, 19, 16, 50, 1,
- 4, 55, 54, 146, 35, 37, 6, 191, 149, 65,
- 9, 26, 21, 12, 5, 0
- ], # ea - ez
- [
- 19, 3, 5, 1, 19, 21, 1, 3, 30, 2, 0, 11, 1, 0,
- 51, 0, 0, 26, 8, 47, 6, 3, 3, 0, 2, 0
- ], # fa - fz
- [
- 20, 4, 3, 2, 35, 1, 3, 15, 18, 0, 0, 5, 1, 4,
- 21, 1, 1, 20, 9, 21, 9, 0, 5, 0, 1, 0
- ], # ga - gz
- [
- 101, 1, 3, 0, 270, 5, 1, 6, 57, 0, 0, 0, 3, 2,
- 44, 1, 0, 3, 10, 18, 6, 0, 5, 0, 3, 0
- ], # ha - hz
- [
- 40, 7, 51, 23, 25, 9, 11, 3, 0, 0, 2, 38, 25, 202,
- 56, 12, 1, 46, 79, 117, 1, 22, 0, 4, 0, 3
- ], # ia - iz
- [
- 3, 0, 0, 0, 5, 0, 0, 0, 1, 0, 0, 0, 0, 0,
- 4, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0
- ], # ja - jz
- [
- 1, 0, 0, 0, 11, 0, 0, 0, 13, 0, 0, 0, 0, 2,
- 0, 0, 0, 0, 6, 2, 1, 0, 2, 0, 1, 0
- ], # ka - kz
- [
- 44, 2, 5, 12, 62, 7, 5, 2, 42, 1, 1, 53, 2, 2,
- 25, 1, 1, 2, 16, 23, 9, 0, 1, 0, 33, 0
- ], # la - lz
- [
- 52, 14, 1, 0, 64, 0, 0, 3, 37, 0, 0, 0, 7, 1,
- 17, 18, 1, 2, 12, 3, 8, 0, 1, 0, 2, 0
- ], # ma - mz
- [
- 42, 10, 47, 122, 63, 19, 106, 12, 30, 1,
- 6, 6, 9, 7, 54, 7, 1, 7, 44, 124,
- 6, 1, 15, 0, 12, 0
- ], # na - nz
- [
- 7, 12, 14, 17, 5, 95, 3, 5, 14, 0, 0, 19, 41, 134,
- 13, 23, 0, 91, 23, 42, 55, 16, 28, 0, 4, 1
- ], # oa - oz
- [
- 19, 1, 0, 0, 37, 0, 0, 4, 8, 0, 0, 15, 1, 0,
- 27, 9, 0, 33, 14, 7, 6, 0, 0, 0, 0, 0
- ], # pa - pz
- [
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 0
- ], # qa - qz
- [
- 83, 8, 16, 23, 169, 4, 8, 8, 77, 1, 10, 5, 26, 16,
- 60, 4, 0, 24, 37, 55, 6, 11, 4, 0, 28, 0
- ], # ra - rz
- [
- 65, 9, 17, 9, 73, 13, 1, 47, 75, 3, 0, 7, 11, 12,
- 56, 17, 6, 9, 48, 116, 35, 1, 28, 0, 4, 0
- ], # sa - sz
- [
- 57, 22, 3, 1, 76, 5, 2, 330, 126, 1,
- 0, 14, 10, 6, 79, 7, 0, 49, 50, 56,
- 21, 2, 27, 0, 24, 0
- ], # ta - tz
- [
- 11, 5, 9, 6, 9, 1, 6, 0, 9, 0, 1, 19, 5, 31,
- 1, 15, 0, 47, 39, 31, 0, 3, 0, 0, 0, 0
- ], # ua - uz
- [
- 7, 0, 0, 0, 72, 0, 0, 0, 28, 0, 0, 0, 0, 0,
- 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0
- ], # va - vz
- [
- 36, 1, 1, 0, 38, 0, 0, 33, 36, 0, 0, 4, 1, 8,
- 15, 0, 0, 0, 4, 2, 0, 0, 1, 0, 0, 0
- ], # wa - wz
- [
- 1, 0, 2, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0,
- 1, 5, 0, 0, 0, 3, 0, 0, 1, 0, 0, 0
- ], # xa - xz
- [
- 14, 5, 4, 2, 7, 12, 12, 6, 10, 0, 0, 3, 7, 5,
- 17, 3, 0, 4, 16, 30, 0, 0, 5, 0, 0, 0
- ], # ya - yz
- [
- 1, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
- ]
- ]; # za - zz
-
- #We need to know the totals for each row
- $row_sums = [
- map {
- my $sum = 0;
- map { $sum += $_ } @$_;
- $sum;
- } @$frequency
- ];
-
- #Frequency with which a given letter starts a word.
- $start_freq = [
- 1299, 425, 725, 271, 375, 470, 93, 223, 1009, 24,
- 20, 355, 379, 319, 823, 618, 21, 317, 962, 1991,
- 271, 104, 516, 6, 16, 14
- ];
-
- $total_sum = 0;
- map { $total_sum += $_ } @$start_freq;
-
- my $length = $min_length + int( rand( $max_length - $min_length ) );
-
- my $char = $self->_GenerateRandomNextChar( $total_sum, $start_freq );
- my @word = ( $char + $a );
- for ( 2 .. $length ) {
- $char =
- $self->_GenerateRandomNextChar( $row_sums->[$char],
- $frequency->[$char] );
- push ( @word, $char + $a );
- }
-
- #Return the password
- return pack( "C*", @word );
-
-}
-
-#A private helper function for RandomPassword
-# Takes a row summary and a frequency chart for the next character to be searched
-sub _GenerateRandomNextChar {
- my $self = shift;
- my ( $all, $freq ) = @_;
- my ( $pos, $i );
-
- for ( $pos = int( rand($all) ), $i = 0 ;
- $pos >= $freq->[$i] ;
- $pos -= $freq->[$i], $i++ )
- {
- }
-
- return ($i);
-}
-
-# }}}
-
-# {{{ sub SetPassword
-
-=head2 SetPassword
-
-Takes a string. Checks the string's length and sets this user's password
-to that string.
-
-=cut
-
-sub SetPassword {
- my $self = shift;
- my $password = shift;
-
- unless ( $self->CurrentUserCanModify('Password') ) {
- return ( 0, $self->loc('Password: Permission Denied') );
- }
-
- if ( !$password ) {
- return ( 0, $self->loc("No password set") );
- }
- elsif ( length($password) < $RT::MinimumPasswordLength ) {
- return ( 0, $self->loc("Password needs to be at least [_1] characters long", $RT::MinimumPasswordLength) );
- }
- else {
- my $new = !$self->HasPassword;
- $password = $self->_GeneratePassword($password);
- my ( $val, $msg ) = $self->SUPER::SetPassword($password);
- if ($val) {
- return ( 1, $self->loc("Password set") ) if $new;
- return ( 1, $self->loc("Password changed") );
- }
- else {
- return ( $val, $msg );
- }
- }
-
-}
-
-=head2 _GeneratePassword PASSWORD
-
-returns an MD5 hash of the password passed in, in hexadecimal encoding.
-
-=cut
-
-sub _GeneratePassword {
- my $self = shift;
- my $password = shift;
-
- my $md5 = Digest::MD5->new();
- $md5->add($password);
- return ($md5->hexdigest);
-
-}
-
-=head2 _GeneratePasswordBase64 PASSWORD
-
-returns an MD5 hash of the password passed in, in base64 encoding
-(obsoleted now).
-
-=cut
-
-sub _GeneratePasswordBase64 {
- my $self = shift;
- my $password = shift;
-
- my $md5 = Digest::MD5->new();
- $md5->add($password);
- return ($md5->b64digest);
-
-}
-
-# }}}
-
-
-=head2 HasPassword
-
-Returns true if the user has a valid password, otherwise returns false.
-
-=cut
-
-
-sub HasPassword {
- my $self = shift;
- if ( ( $self->__Value('Password') eq '' )
- || ( $self->__Value('Password') eq undef ) )
- {
-
- return (undef);
- }
- if ( $self->__Value('Password') eq '*NO-PASSWORD*' ) {
- return undef;
- }
-
- return 1;
-
-}
-
-
-# {{{ sub IsPassword
-
-=head2 IsPassword
-
-Returns true if the passed in value is this user's password.
-Returns undef otherwise.
-
-=cut
-
-sub IsPassword {
- my $self = shift;
- my $value = shift;
-
- #TODO there isn't any apparent way to legitimately ACL this
-
- # RT does not allow null passwords
- if ( ( !defined($value) ) or ( $value eq '' ) ) {
- return (undef);
- }
-
- if ( $self->PrincipalObj->Disabled ) {
- $RT::Logger->info(
- "Disabled user " . $self->Name . " tried to log in" );
- return (undef);
- }
-
- unless ($self->HasPassword) {
- return(undef);
- }
-
- # generate an md5 password
- if ($self->_GeneratePassword($value) eq $self->__Value('Password')) {
- return(1);
- }
-
- # if it's a historical password we say ok.
- if ($self->__Value('Password') eq crypt($value, $self->__Value('Password'))
- or $self->_GeneratePasswordBase64($value) eq $self->__Value('Password'))
- {
- # ...but upgrade the legacy password inplace.
- $self->SUPER::SetPassword( $self->_GeneratePassword($value) );
- return(1);
- }
-
- # no password check has succeeded. get out
-
- return (undef);
-}
-
-# }}}
-
-# }}}
-
-# {{{ sub SetDisabled
-
-=head2 Sub SetDisabled
-
-Toggles the user's disabled flag.
-If this flag is
-set, all password checks for this user will fail. All ACL checks for this
-user will fail. The user will appear in no user listings.
-
-=cut
-
-# }}}
-
-sub SetDisabled {
- my $self = shift;
- unless ( $self->CurrentUser->HasRight(Right => 'AdminUsers', Object => $RT::System) ) {
- return (0, $self->loc('Permission Denied'));
- }
- return $self->PrincipalObj->SetDisabled(@_);
-}
-
-sub Disabled {
- my $self = shift;
- return $self->PrincipalObj->Disabled(@_);
-}
-
-
-# {{{ Principal related routines
-
-=head2 PrincipalObj
-
-Returns the principal object for this user. returns an empty RT::Principal
-if there's no principal object matching this user.
-The response is cached. PrincipalObj should never ever change.
-
-=begin testing
-
-ok(my $u = RT::User->new($RT::SystemUser));
-ok($u->Load(1), "Loaded the first user");
-ok($u->PrincipalObj->ObjectId == 1, "user 1 is the first principal");
-is($u->PrincipalObj->PrincipalType, 'User' , "Principal 1 is a user, not a group");
-
-=end testing
-
-=cut
-
-
-sub PrincipalObj {
- my $self = shift;
- unless ($self->{'PrincipalObj'} &&
- ($self->{'PrincipalObj'}->ObjectId == $self->Id) &&
- ($self->{'PrincipalObj'}->PrincipalType eq 'User')) {
-
- $self->{'PrincipalObj'} = RT::Principal->new($self->CurrentUser);
- $self->{'PrincipalObj'}->LoadByCols('ObjectId' => $self->Id,
- 'PrincipalType' => 'User') ;
- }
- return($self->{'PrincipalObj'});
-}
-
-
-=head2 PrincipalId
-
-Returns this user's PrincipalId
-
-=cut
-
-sub PrincipalId {
- my $self = shift;
- return $self->Id;
-}
-
-# }}}
-
-
-
-# {{{ sub HasGroupRight
-
-=head2 HasGroupRight
-
-Takes a paramhash which can contain
-these items:
- GroupObj => RT::Group or Group => integer
- Right => 'Right'
-
-
-Returns 1 if this user has the right specified in the paramhash for the Group
-passed in.
-
-Returns undef if they don't.
-
-=cut
-
-sub HasGroupRight {
- my $self = shift;
- my %args = (
- GroupObj => undef,
- Group => undef,
- Right => undef,
- @_
- );
-
-
- if ( defined $args{'Group'} ) {
- $args{'GroupObj'} = RT::Group->new( $self->CurrentUser );
- $args{'GroupObj'}->Load( $args{'Group'} );
- }
-
- # {{{ Validate and load up the GroupId
- unless ( ( defined $args{'GroupObj'} ) and ( $args{'GroupObj'}->Id ) ) {
- return undef;
- }
-
- # }}}
-
-
- # Figure out whether a user has the right we're asking about.
- my $retval = $self->HasRight(
- Object => $args{'GroupObj'},
- Right => $args{'Right'},
- );
-
- return ($retval);
-
-
-}
-
-# }}}
-
-# {{{ sub OwnGroups
-
-=head2 OwnGroups
-
-Returns a group collection object containing the groups of which this
-user is a member.
-
-=cut
-
-sub OwnGroups {
- my $self = shift;
- my $groups = RT::Groups->new($self->CurrentUser);
- $groups->LimitToUserDefinedGroups;
- $groups->WithMember(PrincipalId => $self->Id,
- Recursively => 1);
- return $groups;
-}
-
-# }}}
-
-# {{{ sub Rights testing
-
-=head1 Rights testing
-
-
-=begin testing
-
-my $root = RT::User->new($RT::SystemUser);
-$root->Load('root');
-ok($root->Id, "Found the root user");
-my $rootq = RT::Queue->new($root);
-$rootq->Load(1);
-ok($rootq->Id, "Loaded the first queue");
-
-ok ($rootq->CurrentUser->HasRight(Right=> 'CreateTicket', Object => $rootq), "Root can create tickets");
-
-my $new_user = RT::User->new($RT::SystemUser);
-my ($id, $msg) = $new_user->Create(Name => 'ACLTest'.$$);
-
-ok ($id, "Created a new user for acl test $msg");
-
-my $q = RT::Queue->new($new_user);
-$q->Load(1);
-ok($q->Id, "Loaded the first queue");
-
-
-ok (!$q->CurrentUser->HasRight(Right => 'CreateTicket', Object => $q), "Some random user doesn't have the right to create tickets");
-ok (my ($gval, $gmsg) = $new_user->PrincipalObj->GrantRight( Right => 'CreateTicket', Object => $q), "Granted the random user the right to create tickets");
-ok ($gval, "Grant succeeded - $gmsg");
-
-
-ok ($q->CurrentUser->HasRight(Right => 'CreateTicket', Object => $q), "The user can create tickets after we grant him the right");
-ok (my ($gval, $gmsg) = $new_user->PrincipalObj->RevokeRight( Right => 'CreateTicket', Object => $q), "revoked the random user the right to create tickets");
-ok ($gval, "Revocation succeeded - $gmsg");
-ok (!$q->CurrentUser->HasRight(Right => 'CreateTicket', Object => $q), "The user can't create tickets anymore");
-
-
-
-
-
-# Create a ticket in the queue
-my $new_tick = RT::Ticket->new($RT::SystemUser);
-my ($tickid, $tickmsg) = $new_tick->Create(Subject=> 'ACL Test', Queue => 'General');
-ok($tickid, "Created ticket: $tickid");
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-# Create a new group
-my $group = RT::Group->new($RT::SystemUser);
-$group->CreateUserDefinedGroup(Name => 'ACLTest'.$$);
-ok($group->Id, "Created a new group Ok");
-# Grant a group the right to modify tickets in a queue
-ok(my ($gv,$gm) = $group->PrincipalObj->GrantRight( Object => $q, Right => 'ModifyTicket'),"Granted the group the right to modify tickets");
-ok($gv,"Grant succeeed - $gm");
-# Add the user to the group
-ok( my ($aid, $amsg) = $group->AddMember($new_user->PrincipalId), "Added the member to the group");
-ok ($aid, "Member added to group: $amsg");
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick, Right => 'ModifyTicket'), "User can modify the ticket with group membership");
-
-
-# Remove the user from the group
-ok( my ($did, $dmsg) = $group->DeleteMember($new_user->PrincipalId), "Deleted the member from the group");
-ok ($did,"Deleted the group member: $dmsg");
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-
-
-my $q_as_system = RT::Queue->new($RT::SystemUser);
-$q_as_system->Load(1);
-ok($q_as_system->Id, "Loaded the first queue");
-
-# Create a ticket in the queue
-my $new_tick2 = RT::Ticket->new($RT::SystemUser);
-my ($tick2id, $tickmsg) = $new_tick2->Create(Subject=> 'ACL Test 2', Queue =>$q_as_system->Id);
-ok($tick2id, "Created ticket: $tick2id");
-is($new_tick2->QueueObj->id, $q_as_system->Id, "Created a new ticket in queue 1");
-
-
-# make sure that the user can't do this without subgroup membership
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-
-# Create a subgroup
-my $subgroup = RT::Group->new($RT::SystemUser);
-$subgroup->CreateUserDefinedGroup(Name => 'Subgrouptest',$$);
-ok($subgroup->Id, "Created a new group ".$subgroup->Id."Ok");
-#Add the subgroup as a subgroup of the group
-my ($said, $samsg) = $group->AddMember($subgroup->PrincipalId);
-ok ($said, "Added the subgroup as a member of the group");
-# Add the user to a subgroup of the group
-
-my ($usaid, $usamsg) = $subgroup->AddMember($new_user->PrincipalId);
-ok($usaid,"Added the user ".$new_user->Id."to the subgroup");
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket with subgroup membership");
-
-# {{{ Deal with making sure that members of subgroups of a disabled group don't have rights
-
-my ($id, $msg);
-($id, $msg) = $group->SetDisabled(1);
-ok ($id,$msg);
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket when the group ".$group->Id. " is disabled");
- ($id, $msg) = $group->SetDisabled(0);
-ok($id,$msg);
-# Test what happens when we disable the group the user is a member of directly
-
-($id, $msg) = $subgroup->SetDisabled(1);
- ok ($id,$msg);
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket when the group ".$subgroup->Id. " is disabled");
- ($id, $msg) = $subgroup->SetDisabled(0);
- ok ($id,$msg);
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket without group membership");
-
-# }}}
-
-
-my ($usrid, $usrmsg) = $subgroup->DeleteMember($new_user->PrincipalId);
-ok($usrid,"removed the user from the group - $usrmsg");
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-
-#revoke the right to modify tickets in a queue
-ok(($gv,$gm) = $group->PrincipalObj->RevokeRight( Object => $q, Right => 'ModifyTicket'),"Granted the group the right to modify tickets");
-ok($gv,"revoke succeeed - $gm");
-
-# {{{ Test the user's right to modify a ticket as a _queue_ admincc for a right granted at the _queue_ level
-
-# Grant queue admin cc the right to modify ticket in the queue
-ok(my ($qv,$qm) = $q_as_system->AdminCc->PrincipalObj->GrantRight( Object => $q_as_system, Right => 'ModifyTicket'),"Granted the queue adminccs the right to modify tickets");
-ok($qv, "Granted the right successfully - $qm");
-
-# Add the user as a queue admincc
-ok ((my $add_id, $add_msg) = $q_as_system->AddWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Added the new user as a queue admincc");
-ok ($add_id, "the user is now a queue admincc - $add_msg");
-
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket as an admincc");
-# Remove the user from the role group
-ok ((my $del_id, $del_msg) = $q_as_system->DeleteWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Deleted the new user as a queue admincc");
-
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-
-# }}}
-
-# {{{ Test the user's right to modify a ticket as a _ticket_ admincc with the right granted at the _queue_ level
-
-# Add the user as a ticket admincc
-ok ((my $uadd_id, $uadd_msg) = $new_tick2->AddWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Added the new user as a queue admincc");
-ok ($add_id, "the user is now a queue admincc - $add_msg");
-
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket as an admincc");
-
-# Remove the user from the role group
-ok ((my $del_id, $del_msg) = $new_tick2->DeleteWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Deleted the new user as a queue admincc");
-
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-
-
-# Revoke the right to modify ticket in the queue
-ok(my ($rqv,$rqm) = $q_as_system->AdminCc->PrincipalObj->RevokeRight( Object => $q_as_system, Right => 'ModifyTicket'),"Revokeed the queue adminccs the right to modify tickets");
-ok($rqv, "Revoked the right successfully - $rqm");
-
-# }}}
-
-
-
-# {{{ Test the user's right to modify a ticket as a _queue_ admincc for a right granted at the _system_ level
-
-# Before we start Make sure the user does not have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can not modify the ticket without it being granted");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can not modify tickets in the queue without it being granted");
-
-# Grant queue admin cc the right to modify ticket in the queue
-ok(my ($qv,$qm) = $q_as_system->AdminCc->PrincipalObj->GrantRight( Object => $RT::System, Right => 'ModifyTicket'),"Granted the queue adminccs the right to modify tickets");
-ok($qv, "Granted the right successfully - $qm");
-
-# Make sure the user can't modify the ticket before they're added as a watcher
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can not modify the ticket without being an admincc");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can not modify tickets in the queue without being an admincc");
-
-# Add the user as a queue admincc
-ok ((my $add_id, $add_msg) = $q_as_system->AddWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Added the new user as a queue admincc");
-ok ($add_id, "the user is now a queue admincc - $add_msg");
-
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket as an admincc");
-ok ($new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can modify tickets in the queue as an admincc");
-# Remove the user from the role group
-ok ((my $del_id, $del_msg) = $q_as_system->DeleteWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Deleted the new user as a queue admincc");
-
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without group membership");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can't modify tickets in the queue without group membership");
-
-# }}}
-
-# {{{ Test the user's right to modify a ticket as a _ticket_ admincc with the right granted at the _queue_ level
-
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can not modify the ticket without being an admincc");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can not modify tickets in the queue obj without being an admincc");
-
-
-# Add the user as a ticket admincc
-ok ((my $uadd_id, $uadd_msg) = $new_tick2->AddWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Added the new user as a queue admincc");
-ok ($add_id, "the user is now a queue admincc - $add_msg");
-
-# Make sure the user does have the right to modify tickets in the queue
-ok ($new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can modify the ticket as an admincc");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can not modify tickets in the queue obj being only a ticket admincc");
-
-# Remove the user from the role group
-ok ((my $del_id, $del_msg) = $new_tick2->DeleteWatcher(Type => 'AdminCc', PrincipalId => $new_user->PrincipalId) , "Deleted the new user as a queue admincc");
-
-# Make sure the user doesn't have the right to modify tickets in the queue
-ok (!$new_user->HasRight( Object => $new_tick2, Right => 'ModifyTicket'), "User can't modify the ticket without being an admincc");
-ok (!$new_user->HasRight( Object => $new_tick2->QueueObj, Right => 'ModifyTicket'), "User can not modify tickets in the queue obj without being an admincc");
-
-
-# Revoke the right to modify ticket in the queue
-ok(my ($rqv,$rqm) = $q_as_system->AdminCc->PrincipalObj->RevokeRight( Object => $RT::System, Right => 'ModifyTicket'),"Revokeed the queue adminccs the right to modify tickets");
-ok($rqv, "Revoked the right successfully - $rqm");
-
-# }}}
-
-
-
-
-# Grant "privileged users" the system right to create users
-# Create a privileged user.
-# have that user create another user
-# Revoke the right for privileged users to create users
-# have the privileged user try to create another user and fail the ACL check
-
-=end testing
-
-=cut
-
-# }}}
-
-
-# {{{ sub HasRight
-
-=head2 HasRight
-
-Shim around PrincipalObj->HasRight. See RT::Principal
-
-=cut
-
-sub HasRight {
-
- my $self = shift;
- return $self->PrincipalObj->HasRight(@_);
-}
-
-# }}}
-
-# {{{ sub CurrentUserCanModify
-
-=head2 CurrentUserCanModify RIGHT
-
-If the user has rights for this object, either because
-he has 'AdminUsers' or (if he\'s trying to edit himself and the right isn\'t an
-admin right) 'ModifySelf', return 1. otherwise, return undef.
-
-=cut
-
-sub CurrentUserCanModify {
- my $self = shift;
- my $right = shift;
-
- if ( $self->CurrentUser->HasRight(Right => 'AdminUsers', Object => $RT::System) ) {
- return (1);
- }
-
- #If the field is marked as an "administrators only" field,
- # don\'t let the user touch it.
- elsif ( $self->_Accessible( $right, 'admin' ) ) {
- return (undef);
- }
-
- #If the current user is trying to modify themselves
- elsif ( ( $self->id == $self->CurrentUser->id )
- and ( $self->CurrentUser->HasRight(Right => 'ModifySelf', Object => $RT::System) ) )
- {
- return (1);
- }
-
- #If we don\'t have a good reason to grant them rights to modify
- # by now, they lose
- else {
- return (undef);
- }
-
-}
-
-# }}}
-
-# {{{ sub CurrentUserHasRight
-
-=head2 CurrentUserHasRight
-
-Takes a single argument. returns 1 if $Self->CurrentUser
-has the requested right. returns undef otherwise
-
-=cut
-
-sub CurrentUserHasRight {
- my $self = shift;
- my $right = shift;
-
- return ( $self->CurrentUser->HasRight(Right => $right, Object => $RT::System) );
-}
-
-# }}}
-
-# {{{ sub _CleanupInvalidDelegations
-
-=head2 _CleanupInvalidDelegations { InsideTransaction => undef }
-
-Revokes all ACE entries delegated by this user which are inconsistent
-with their current delegation rights. Does not perform permission
-checks. Should only ever be called from inside the RT library.
-
-If called from inside a transaction, specify a true value for the
-InsideTransaction parameter.
-
-Returns a true value if the deletion succeeded; returns a false value
-and logs an internal error if the deletion fails (should not happen).
-
-=cut
-
-# XXX Currently there is a _CleanupInvalidDelegations method in both
-# RT::User and RT::Group. If the recursive cleanup call for groups is
-# ever unrolled and merged, this code will probably want to be
-# factored out into RT::Principal.
-
-sub _CleanupInvalidDelegations {
- my $self = shift;
- my %args = ( InsideTransaction => undef,
- @_ );
-
- unless ( $self->Id ) {
- $RT::Logger->warning("User not loaded.");
- return (undef);
- }
-
- my $in_trans = $args{InsideTransaction};
-
- return(1) if ($self->HasRight(Right => 'DelegateRights',
- Object => $RT::System));
-
- # Look up all delegation rights currently posessed by this user.
- my $deleg_acl = RT::ACL->new($RT::SystemUser);
- $deleg_acl->LimitToPrincipal(Type => 'User',
- Id => $self->PrincipalId,
- IncludeGroupMembership => 1);
- $deleg_acl->Limit( FIELD => 'RightName',
- OPERATOR => '=',
- VALUE => 'DelegateRights' );
- my @allowed_deleg_objects = map {$_->Object()}
- @{$deleg_acl->ItemsArrayRef()};
-
- # Look up all rights delegated by this principal which are
- # inconsistent with the allowed delegation objects.
- my $acl_to_del = RT::ACL->new($RT::SystemUser);
- $acl_to_del->DelegatedBy(Id => $self->Id);
- foreach (@allowed_deleg_objects) {
- $acl_to_del->LimitNotObject($_);
- }
-
- # Delete all disallowed delegations
- while ( my $ace = $acl_to_del->Next() ) {
- my $ret = $ace->_Delete(InsideTransaction => 1);
- unless ($ret) {
- $RT::Handle->Rollback() unless $in_trans;
- $RT::Logger->warning("Couldn't delete delegated ACL entry ".$ace->Id);
- return (undef);
- }
- }
-
- $RT::Handle->Commit() unless $in_trans;
- return (1);
-}
-
-# }}}
-
-# {{{ sub _Set
-
-sub _Set {
- my $self = shift;
-
- my %args = (
- Field => undef,
- Value => undef,
- TransactionType => 'Set',
- RecordTransaction => 1,
- @_
- );
-
- # Nobody is allowed to futz with RT_System or Nobody
-
- if ( ($self->Id == $RT::SystemUser->Id ) ||
- ($self->Id == $RT::Nobody->Id)) {
- return ( 0, $self->loc("Can not modify system users") );
- }
- unless ( $self->CurrentUserCanModify( $args{'Field'} ) ) {
- return ( 0, $self->loc("Permission Denied") );
- }
-
- my $Old = $self->SUPER::_Value("$args{'Field'}");
-
- my ($ret, $msg) = $self->SUPER::_Set( Field => $args{'Field'},
- Value => $args{'Value'} );
-
- #If we can't actually set the field to the value, don't record
- # a transaction. instead, get out of here.
- if ( $ret == 0 ) { return ( 0, $msg ); }
-
- if ( $args{'RecordTransaction'} == 1 ) {
-
- my ( $Trans, $Msg, $TransObj ) = $self->_NewTransaction(
- Type => $args{'TransactionType'},
- Field => $args{'Field'},
- NewValue => $args{'Value'},
- OldValue => $Old,
- TimeTaken => $args{'TimeTaken'},
- );
- return ( $Trans, scalar $TransObj->BriefDescription );
- }
- else {
- return ( $ret, $msg );
- }
-}
-
-# }}}
-
-# {{{ sub _Value
-
-=head2 _Value
-
-Takes the name of a table column.
-Returns its value as a string, if the user passes an ACL check
-
-=cut
-
-sub _Value {
-
- my $self = shift;
- my $field = shift;
-
- #If the current user doesn't have ACLs, don't let em at it.
-
- my @PublicFields = qw( Name EmailAddress Organization Disabled
- RealName NickName Gecos ExternalAuthId
- AuthSystem ExternalContactInfoId
- ContactInfoSystem );
-
- #if the field is public, return it.
- if ( $self->_Accessible( $field, 'public' ) ) {
- return ( $self->SUPER::_Value($field) );
-
- }
-
- #If the user wants to see their own values, let them
- # TODO figure ouyt a better way to deal with this
- elsif ( $self->CurrentUser->Id == $self->Id ) {
- return ( $self->SUPER::_Value($field) );
- }
-
- #If the user has the admin users right, return the field
- elsif ( $self->CurrentUser->HasRight(Right =>'AdminUsers', Object => $RT::System) ) {
- return ( $self->SUPER::_Value($field) );
- }
- else {
- return (undef);
- }
-
-}
-
-# }}}
-
-sub BasicColumns {
- (
- [ Name => 'User Id' ],
- [ EmailAddress => 'Email' ],
- [ RealName => 'Name' ],
- [ Organization => 'Organization' ],
- );
-}
-
-1;
-
-
diff --git a/rt/lib/RT/Users.pm b/rt/lib/RT/Users.pm
deleted file mode 100755
index d58f696..0000000
--- a/rt/lib/RT/Users.pm
+++ /dev/null
@@ -1,115 +0,0 @@
-# BEGIN LICENSE BLOCK
-#
-# Copyright (c) 1996-2003 Jesse Vincent <jesse@bestpractical.com>
-#
-# (Except where explictly superceded by other copyright notices)
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# Unless otherwise specified, all modifications, corrections or
-# extensions to this work which alter its source code become the
-# property of Best Practical Solutions, LLC when submitted for
-# inclusion in the work.
-#
-#
-# END LICENSE BLOCK
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-
-
-=head1 NAME
-
- RT::Users -- Class Description
-
-=head1 SYNOPSIS
-
- use RT::Users
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package RT::Users;
-
-use RT::SearchBuilder;
-use RT::User;
-
-use vars qw( @ISA );
-@ISA= qw(RT::SearchBuilder);
-
-
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Users';
- $self->{'primary_key'} = 'id';
-
-
- return ( $self->SUPER::_Init(@_) );
-}
-
-
-=item NewItem
-
-Returns an empty new RT::User item
-
-=cut
-
-sub NewItem {
- my $self = shift;
- return(RT::User->new($self->CurrentUser));
-}
-
- eval "require RT::Users_Overlay";
- if ($@ && $@ !~ qr{^Can't locate RT/Users_Overlay.pm}) {
- die $@;
- };
-
- eval "require RT::Users_Vendor";
- if ($@ && $@ !~ qr{^Can't locate RT/Users_Vendor.pm}) {
- die $@;
- };
-
- eval "require RT::Users_Local";
- if ($@ && $@ !~ qr{^Can't locate RT/Users_Local.pm}) {
- die $@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows "overlay" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-RT::Users_Overlay, RT::Users_Vendor, RT::Users_Local
-
-=cut
-
-
-1;
diff --git a/rt/lib/RT/Users_Overlay.pm b/rt/lib/RT/Users_Overlay.pm
deleted file mode 100644
index 4bb9f8f..0000000
--- a/rt/lib/RT/Users_Overlay.pm
+++ /dev/null
@@ -1,467 +0,0 @@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
- RT::Users - Collection of RT::User objects
-
-=head1 SYNOPSIS
-
- use RT::Users;
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=begin testing
-
-ok(require RT::Users);
-
-=end testing
-
-=cut
-
-
-package RT::Users;
-
-use strict;
-no warnings qw(redefine);
-
-# {{{ sub _Init
-sub _Init {
- my $self = shift;
- $self->{'table'} = 'Users';
- $self->{'primary_key'} = 'id';
-
-
-
- my @result = $self->SUPER::_Init(@_);
- # By default, order by name
- $self->OrderBy( ALIAS => 'main',
- FIELD => 'Name',
- ORDER => 'ASC' );
-
- $self->{'princalias'} = $self->NewAlias('Principals');
-
- $self->Join( ALIAS1 => 'main',
- FIELD1 => 'id',
- ALIAS2 => $self->{'princalias'},
- FIELD2 => 'id' );
-
- return (@result);
-}
-
-# }}}
-
-=head2 PrincipalsAlias
-
-Returns the string that represents this Users object's primary "Principals" alias.
-
-
-=cut
-
-sub PrincipalsAlias {
- my $self = shift;
- return($self->{'princalias'});
-
-}
-
-
-# {{{ sub _DoSearch
-
-=head2 _DoSearch
-
- A subclass of DBIx::SearchBuilder::_DoSearch that makes sure that _Disabled rows never get seen unless
-we're explicitly trying to see them.
-
-=cut
-
-sub _DoSearch {
- my $self = shift;
-
- #unless we really want to find disabled rows, make sure we\'re only finding enabled ones.
- unless ( $self->{'find_disabled_rows'} ) {
- $self->LimitToEnabled();
- }
- return ( $self->SUPER::_DoSearch(@_) );
-
-}
-
-# }}}
-# {{{ sub LimitToEnabled
-
-=head2 LimitToEnabled
-
-Only find items that haven\'t been disabled
-
-=cut
-
-sub LimitToEnabled {
- my $self = shift;
-
- $self->Limit( ALIAS => $self->{'princalias'},
- FIELD => 'Disabled',
- VALUE => '0',
- OPERATOR => '=' );
-}
-
-# }}}
-
-# {{{ LimitToEmail
-
-=head2 LimitToEmail
-
-Takes one argument. an email address. limits the returned set to
-that email address
-
-=cut
-
-sub LimitToEmail {
- my $self = shift;
- my $addr = shift;
- $self->Limit( FIELD => 'EmailAddress', VALUE => "$addr" );
-}
-
-# }}}
-
-# {{{ MemberOfGroup
-
-=head2 MemberOfGroup PRINCIPAL_ID
-
-takes one argument, a group's principal id. Limits the returned set
-to members of a given group
-
-=cut
-
-sub MemberOfGroup {
- my $self = shift;
- my $group = shift;
-
- return $self->loc("No group specified") if ( !defined $group );
-
- my $groupalias = $self->NewAlias('CachedGroupMembers');
-
- # Join the principal to the groups table
- $self->Join( ALIAS1 => $self->{'princalias'},
- FIELD1 => 'id',
- ALIAS2 => $groupalias,
- FIELD2 => 'MemberId' );
-
- $self->Limit( ALIAS => "$groupalias",
- FIELD => 'GroupId',
- VALUE => "$group",
- OPERATOR => "=" );
-}
-
-# }}}
-
-# {{{ LimitToPrivileged
-
-=head2 LimitToPrivileged
-
-Limits to users who can be made members of ACLs and groups
-
-=cut
-
-sub LimitToPrivileged {
- my $self = shift;
-
- my $priv = RT::Group->new( $self->CurrentUser );
- $priv->LoadSystemInternalGroup('Privileged');
- unless ( $priv->Id ) {
- $RT::Logger->crit("Couldn't find a privileged users group");
- }
- $self->MemberOfGroup( $priv->PrincipalId );
-}
-
-# }}}
-
-# {{{ WhoHaveRight
-
-=head2 WhoHaveRight { Right => 'name', Object => $rt_object , IncludeSuperusers => undef, IncludeSubgroupMembers => undef, IncludeSystemRights => undef, EquivObjects => [ ] }
-
-=begin testing
-
-ok(my $users = RT::Users->new($RT::SystemUser));
-$users->WhoHaveRight(Object =>$RT::System, Right =>'SuperUser');
-ok($users->Count == 1, "There is one privileged superuser - Found ". $users->Count );
-# TODO: this wants more testing
-
-my $RTxUser = RT::User->new($RT::SystemUser);
-($id, $msg) = $RTxUser->Create( Name => 'RTxUser', Comments => "RTx extension user", Privileged => 1);
-ok ($id,$msg);
-
-my $group = RT::Group->new($RT::SystemUser);
-$group->LoadACLEquivalenceGroup($RTxUser->PrincipalObj);
-
-my $RTxSysObj = {};
-bless $RTxSysObj, 'RTx::System';
-*RTx::System::Id = sub { 1; };
-*RTx::System::id = *RTx::System::Id;
-my $ace = RT::Record->new($RT::SystemUser);
-$ace->Table('ACL');
-$ace->_BuildTableAttributes unless ($_TABLE_ATTR->{ref($self)});
-($id, $msg) = $ace->Create( PrincipalId => $group->id, PrincipalType => 'Group', RightName => 'RTxUserRight', ObjectType => 'RTx::System', ObjectId => 1 );
-ok ($id, "ACL for RTxSysObj created");
-
-my $RTxObj = {};
-bless $RTxObj, 'RTx::System::Record';
-*RTx::System::Record::Id = sub { 4; };
-*RTx::System::Record::id = *RTx::System::Record::Id;
-
-$users = RT::Users->new($RT::SystemUser);
-$users->WhoHaveRight(Right => 'RTxUserRight', Object => $RTxSysObj);
-is($users->Count, 1, "RTxUserRight found for RTxSysObj");
-
-$users = RT::Users->new($RT::SystemUser);
-$users->WhoHaveRight(Right => 'RTxUserRight', Object => $RTxObj);
-is($users->Count, 0, "RTxUserRight not found for RTxObj");
-
-$users = RT::Users->new($RT::SystemUser);
-$users->WhoHaveRight(Right => 'RTxUserRight', Object => $RTxObj, EquivObjects => [ $RTxSysObj ]);
-is($users->Count, 1, "RTxUserRight found for RTxObj using EquivObjects");
-
-$ace = RT::Record->new($RT::SystemUser);
-$ace->Table('ACL');
-$ace->_BuildTableAttributes unless ($_TABLE_ATTR->{ref($self)});
-($id, $msg) = $ace->Create( PrincipalId => $group->id, PrincipalType => 'Group', RightName => 'RTxUserRight', ObjectType => 'RTx::System::Record', ObjectId => 5 );
-ok ($id, "ACL for RTxObj created");
-
-my $RTxObj2 = {};
-bless $RTxObj2, 'RTx::System::Record';
-*RTx::System::Record::Id = sub { 5; };
-*RTx::System::Record::id = sub { 5; };
-
-$users = RT::Users->new($RT::SystemUser);
-$users->WhoHaveRight(Right => 'RTxUserRight', Object => $RTxObj2);
-is($users->Count, 1, "RTxUserRight found for RTxObj2");
-
-$users = RT::Users->new($RT::SystemUser);
-$users->WhoHaveRight(Right => 'RTxUserRight', Object => $RTxObj2, EquivObjects => [ $RTxSysObj ]);
-is($users->Count, 1, "RTxUserRight found for RTxObj2");
-
-
-=end testing
-
-
-find all users who the right Right for this group, either individually
-or as members of groups
-
-
-If passed a queue object, with no id, it will find users who have that right for _any_ queue
-
-
-
-=cut
-
-sub WhoHaveRight {
- my $self = shift;
- my %args = (
- Right => undef,
- Object => undef,
- IncludeSystemRights => undef,
- IncludeSuperusers => undef,
- IncludeSubgroupMembers => 1,
- EquivObjects => [ ],
- @_
- );
-
- if ( defined $args{'ObjectType'} || defined $args{'ObjectId'} ) {
- $RT::Logger->crit( "$self WhoHaveRight called with the Obsolete ObjectId/ObjectType API");
- return (undef);
- }
-
-
- # Find only members of groups that have the right.
-
- my $acl = $self->NewAlias('ACL');
- my $groups = $self->NewAlias('Groups');
- my $userprinc = $self->{'princalias'};
-
-# The cachedgroupmembers table is used for unrolling group memberships to allow fast lookups
-# if we bind to CachedGroupMembers, we'll find all members of groups recursively.
-# if we don't we'll find only 'direct' members of the group in question
- my $cgm;
-
- if ( $args{'IncludeSubgroupMembers'} ) {
- $cgm = $self->NewAlias('CachedGroupMembers');
- }
- else {
- $cgm = $self->NewAlias('GroupMembers');
- }
-
-#Tie the users we're returning ($userprinc) to the groups that have rights granted to them ($groupprinc)
- $self->Join(
- ALIAS1 => $cgm,
- FIELD1 => 'MemberId',
- ALIAS2 => $userprinc,
- FIELD2 => 'id'
- );
-
- $self->Join(
- ALIAS1 => $groups,
- FIELD1 => 'id',
- ALIAS2 => $cgm,
- FIELD2 => 'GroupId'
- );
-
-# {{{ Find only rows where the right granted is the one we're looking up or _possibly_ superuser
- $self->Limit(
- ALIAS => $acl,
- FIELD => 'RightName',
- OPERATOR => ( $args{Right} ? '=' : 'IS NOT' ),
- VALUE => $args{Right} || 'NULL',
- ENTRYAGGREGATOR => 'OR'
- );
-
- if ( $args{'IncludeSuperusers'} and $args{'Right'} ) {
- $self->Limit(
- ALIAS => $acl,
- FIELD => 'RightName',
- OPERATOR => '=',
- VALUE => 'SuperUser',
- ENTRYAGGREGATOR => 'OR'
- );
- }
-
- # }}}
-
- my ( $or_check_ticket_roles, $or_check_roles );
- my $which_object = "$acl.ObjectType = 'RT::System'";
-
- if ( defined $args{'Object'} ) {
- if ( ref( $args{'Object'} ) eq 'RT::Ticket' ) {
- $or_check_ticket_roles = " OR ( $groups.Domain = 'RT::Ticket-Role' AND $groups.Instance = " . $args{'Object'}->Id . ") ";
-
-# If we're looking at ticket rights, we also want to look at the associated queue rights.
-# this is a little bit hacky, but basically, now that we've done the ticket roles magic,
-# we load the queue object and ask all the rest of our questions about the queue.
- $args{'Object'} = $args{'Object'}->QueueObj;
- }
-
- # TODO XXX This really wants some refactoring
- if ( ref( $args{'Object'} ) eq 'RT::Queue' ) {
- $or_check_roles = " OR ( ( ($groups.Domain = 'RT::Queue-Role' ";
- $or_check_roles .= "AND $groups.Instance = " . $args{'Object'}->id if ( $args{'Object'}->id );
- $or_check_roles .= ") $or_check_ticket_roles ) " . " AND $groups.Type = $acl.PrincipalType) ";
- }
- if ( $args{'IncludeSystemRights'} ) {
- $which_object .= ' OR ';
- }
- else {
- $which_object = '';
- }
- foreach my $obj ( @{ $args{'EquivObjects'} } ) {
- $which_object .= "($acl.ObjectType = '" . ref( $obj ) . "' AND $acl.ObjectId = " . $obj->id . ") OR ";
- }
- $which_object .= " ($acl.ObjectType = '" . ref( $args{'Object'} ) . "'";
- if ( $args{'Object'}->id ) {
- $which_object .= " AND $acl.ObjectId = " . $args{'Object'}->id;
- }
-
- $which_object .= ") ";
- }
- $self->_AddSubClause( "WhichObject", "($which_object)" );
- $self->_AddSubClause(
- "WhichGroup",
- qq{ ( ( $acl.PrincipalId = $groups.id AND $acl.PrincipalType = 'Group'
- AND ( $groups.Domain = 'SystemInternal' OR $groups.Domain = 'UserDefined' OR $groups.Domain = 'ACLEquivalence'))
- $or_check_roles) }
- );
- # only include regular RT users
- $self->LimitToEnabled;
-
- # no system user
- $self->Limit( ALIAS => $userprinc, FIELD => 'id', OPERATOR => '!=', VALUE => $RT::SystemUser->id);
-
-}
-# }}}
-
-# {{{ WhoBelongToGroups
-
-=head2 WhoBelongToGroups { Groups => ARRAYREF, IncludeSubgroupMembers => 1 }
-
-=cut
-
-sub WhoBelongToGroups {
- my $self = shift;
- my %args = ( Groups => undef,
- IncludeSubgroupMembers => 1,
- @_ );
-
- # Unprivileged users can't be granted real system rights.
- # is this really the right thing to be saying?
- $self->LimitToPrivileged();
-
- my $userprinc = $self->{'princalias'};
- my $cgm;
-
- # The cachedgroupmembers table is used for unrolling group memberships to allow fast lookups
- # if we bind to CachedGroupMembers, we'll find all members of groups recursively.
- # if we don't we'll find only 'direct' members of the group in question
-
- if ( $args{'IncludeSubgroupMembers'} ) {
- $cgm = $self->NewAlias('CachedGroupMembers');
- }
- else {
- $cgm = $self->NewAlias('GroupMembers');
- }
-
- #Tie the users we're returning ($userprinc) to the groups that have rights granted to them ($groupprinc)
- $self->Join( ALIAS1 => $cgm, FIELD1 => 'MemberId',
- ALIAS2 => $userprinc, FIELD2 => 'id' );
-
- foreach my $groupid (@{$args{'Groups'}}) {
- $self->Limit(ALIAS => $cgm, FIELD => 'GroupId', VALUE => $groupid, QUOTEVALUE => 0, ENTRYAGGREGATOR=> 'OR')
-
- }
-}
-# }}}
-
-
-1;
diff --git a/rt/lib/t/00smoke.t b/rt/lib/t/00smoke.t
deleted file mode 100644
index 9e9bf4a..0000000
--- a/rt/lib/t/00smoke.t
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/perl
-
-use Test::More qw(no_plan);
-
-use RT;
-ok(RT::LoadConfig);
-ok(RT::Init, "Basic initialization and DB connectivity");
-
-use File::Find;
-File::Find::find({wanted => \&wanted}, 'lib/');
-sub wanted { /^*\.pm\z/s && ok(require $_, "Requiring '$_'"); }
-
-
diff --git a/rt/lib/t/01harness.t b/rt/lib/t/01harness.t
deleted file mode 100644
index 98c28d2..0000000
--- a/rt/lib/t/01harness.t
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/perl
-
-use Test::More qw(no_plan);
-
-use lib "/opt/rt3/lib";
-use RT;
-ok(RT::LoadConfig);
-ok(RT::Init, "Basic initialization and DB connectivity");
-
-my $test = shift @ARGV;
-require $test;
-
diff --git a/rt/lib/t/02regression.t b/rt/lib/t/02regression.t
deleted file mode 100644
index 4504cc7..0000000
--- a/rt/lib/t/02regression.t
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/usr/bin/perl
-
-use Test::More qw(no_plan);
-
-use lib "/opt/rt3/lib";
-use RT;
-ok(RT::LoadConfig);
-ok(RT::Init, "Basic initialization and DB connectivity");
-
-# Create a new queue
-use_ok(RT::Queue);
-my $q = RT::Queue->new($RT::SystemUser);
-
-$q->Load('regression');
-if ($q->id != 0) {
- die "Regression tests not starting with a clean DB. Bailing";
-}
-
-my ($id, $msg) = $q->Create( Name => 'Regression',
- Description => 'A regression test queue',
- CorrespondAddress => 'correspond@a',
- CommentAddress => 'comment@a');
-
-isnt($id, 0, "Queue was created sucessfully - $msg");
-
-my $q2 = RT::Queue->new($RT::SystemUser);
-
-ok($q2->Load($id));
-is($q2->id, $id, "Sucessfully loaded the queue again");
-is($q2->Name, 'Regression');
-is($q2->Description, 'A regression test queue');
-is($q2->CorrespondAddress, 'correspond@a');
-is($q2->CommentAddress, 'comment@a');
-
-
-use File::Find;
-File::Find::find({wanted => \&wanted_autogen}, 'lib/t/autogen');
-sub wanted_autogen { /^autogen.*\.t\z/s && require $_; }
-
-File::Find::find({wanted => \&wanted_regression}, 'lib/t/regression');
-sub wanted_regression { /^*\.t\z/s && require $_; }
-
-require "/opt/rt3/lib/t/03web.pl";
-require "/opt/rt3/lib/t/04_send_email.pl";
diff --git a/rt/lib/t/03web.pl b/rt/lib/t/03web.pl
deleted file mode 100644
index 94ad3e9..0000000
--- a/rt/lib/t/03web.pl
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use WWW::Mechanize;
-use HTTP::Request::Common;
-use HTTP::Cookies;
-use LWP;
-use Encode;
-
-my $cookie_jar = HTTP::Cookies->new;
-my $agent = WWW::Mechanize->new();
-
-# give the agent a place to stash the cookies
-
-$agent->cookie_jar($cookie_jar);
-
-
-# get the top page
-my $url = "http://localhost".$RT::WebPath."/";
-$agent->get($url);
-
-is ($agent->{'status'}, 200, "Loaded a page");
-
-
-# {{{ test a login
-
-# follow the link marked "Login"
-
-ok($agent->{form}->find_input('user'));
-
-ok($agent->{form}->find_input('pass'));
-ok ($agent->{'content'} =~ /username:/i);
-$agent->field( 'user' => 'root' );
-$agent->field( 'pass' => 'password' );
-# the field isn't named, so we have to click link 0
-$agent->click(0);
-is($agent->{'status'}, 200, "Fetched the page ok");
-ok( $agent->{'content'} =~ /Logout/i, "Found a logout link");
-
-
-
-$agent->get($url."Ticket/Create.html?Queue=1");
-is ($agent->{'status'}, 200, "Loaded Create.html");
-$agent->form(3);
-# Start with a string containing characters in latin1
-my $string = "I18N Web Testing æøå";
-Encode::from_to($string, 'iso-8859-1', 'utf8');
-$agent->field('Subject' => "Foo");
-$agent->field('Content' => $string);
-ok($agent->submit(), "Created new ticket with $string");
-
-ok( $agent->{'content'} =~ qr{$string} , "Found the content");
-
-$agent->get($url."Ticket/Create.html?Queue=1");
-is ($agent->{'status'}, 200, "Loaded Create.html");
-$agent->form(3);
-# Start with a string containing characters in latin1
-my $string = "I18N Web Testing æøå";
-Encode::from_to($string, 'iso-8859-1', 'utf8');
-$agent->field('Subject' => $string);
-$agent->field('Content' => "BAR");
-ok($agent->submit(), "Created new ticket with $string");
-
-ok( $agent->{'content'} =~ qr{$string} , "Found the content");
-
-
-
-# }}}
-
-
-
-use File::Find;
-find ( \&wanted , 'html/');
-
-sub wanted {
- -f && /\.html$/ && $_ !~ /Logout.html$/ && test_get($File::Find::name);
-}
-
-sub test_get {
- my $file = shift;
-
-
- $file =~ s#^html/##;
- ok ($agent->get("$url/$file", "GET $url/$file"));
- is ($agent->{'status'}, 200, "Loaded $file");
- ok( $agent->{'content'} =~ /Logout/i, "Found a logout link on $file ");
- ok( $agent->{'content'} !~ /Not logged in/i, "Still logged in for $file");
- ok( $agent->{'content'} !~ /System error/i, "Didn't get a Mason compilation error on $file");
-
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/t/04_send_email.pl b/rt/lib/t/04_send_email.pl
deleted file mode 100644
index c384eed..0000000
--- a/rt/lib/t/04_send_email.pl
+++ /dev/null
@@ -1,481 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use RT::EmailParser;
-use RT::Tickets;
-use RT::Action::SendEmail;
-
-my @_outgoing_messages;
-my @scrips_fired;
-
-#We're not testing acls here.
-my $everyone = RT::Group->new($RT::SystemUser);
-$everyone->LoadSystemInternalGroup('Everyone');
-$everyone->PrincipalObj->GrantRight(Right =>'SuperUser');
-
-
-is (__PACKAGE__, 'main', "We're operating in the main package");
-
-
-{
-no warnings qw/redefine/;
-sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- main::_fired_scrip($self->ScripObj);
- main::ok(ref($MIME) eq 'MIME::Entity', "hey, look. it's a mime entity");
-}
-
-}
-
-# instrument SendEmail to pass us what it's about to send.
-# create a regular ticket
-
-my $parser = RT::EmailParser->new();
-
-
-# Let's test to make sure a multipart/report is processed correctly
-my $content = `cat /opt/rt3/lib/t/data/multipart-report` || die "couldn't find new content";
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /The original message was received/, "It's the bounce");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-
-undef @scrips_fired;
-
-
-
-
-$parser->ParseMIMEEntityFromScalar('From: root@localhost
-To: rt@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!');
-
-
-use Data::Dumper;
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($id, $tid, $msg ) = $ticket->Create(Requestor => ['root@localhost'], Queue => 'general', Subject => 'I18NTest', MIMEObj => $parser->Entity);
-ok ($id,$msg);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'I18NTest', "failed to create the new ticket from an unprivileged account");
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-# make sure it sends a notification to adminccs
-
-
-# we need to swap out SendMessage to test the new things we care about;
-&utf8_redef_sendmessage;
-
-# create an iso 8859-1 ticket
-@scrips_fired = ();
-
-my $content = `cat /opt/rt3/lib/t/data/new-ticket-from-iso-8859-1` || die "couldn't find new content";
-
-
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /H\x{e5}vard/, "It's signed by havard. yay");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-
-
-# make sure it sends a notification to adminccs
-
-# If we correspond, does it do the right thing to the outbound messages?
-
-$parser->ParseMIMEEntityFromScalar($content);
-my ($id, $msg) = $tick->Comment(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-$parser->ParseMIMEEntityFromScalar($content);
-($id, $msg) = $tick->Correspond(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-
-
-
-
-# we need to swap out SendMessage to test the new things we care about;
-&iso8859_redef_sendmessage;
-$RT::EmailOutputEncoding = 'iso-8859-1';
-# create an iso 8859-1 ticket
-@scrips_fired = ();
-
-my $content = `cat /opt/rt3/lib/t/data/new-ticket-from-iso-8859-1` || die "couldn't find new content";
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /H\x{e5}vard/, "It's signed by havard. yay");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-
-
-# make sure it sends a notification to adminccs
-
-
-# If we correspond, does it do the right thing to the outbound messages?
-
-$parser->ParseMIMEEntityFromScalar($content);
-my ($id, $msg) = $tick->Comment(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-$parser->ParseMIMEEntityFromScalar($content);
-($id, $msg) = $tick->Correspond(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-
-sub _fired_scrip {
- my $scrip = shift;
- push @scrips_fired, $scrip;
-}
-
-sub utf8_redef_sendmessage {
- no warnings qw/redefine/;
- eval '
- sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- my $scrip = $self->ScripObj->id;
- ok(1, $self->ScripObj->ConditionObj->Name . " ".$self->ScripObj->ActionObj->Name);
- main::_fired_scrip($self->ScripObj);
- $MIME->make_singlepart;
- main::ok( ref($MIME) eq \'MIME::Entity\',
- "hey, look. it\'s a mime entity" );
- main::ok( ref( $MIME->head ) eq \'MIME::Head\',
- "its mime header is a mime header. yay" );
- main::ok( $MIME->head->get(\'Content-Type\') =~ /utf-8/,
- "Its content type is utf-8" );
- my $message_as_string = $MIME->bodyhandle->as_string();
- use Encode;
- $message_as_string = Encode::decode_utf8($message_as_string);
- main::ok(
- $message_as_string =~ /H\x{e5}vard/,
-"The message\'s content contains havard\'s name. this will fail if it\'s not utf8 out");
-
- }';
-}
-
-sub iso8859_redef_sendmessage {
- no warnings qw/redefine/;
- eval '
- sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- my $scrip = $self->ScripObj->id;
- ok(1, $self->ScripObj->ConditionObj->Name . " ".$self->ScripObj->ActionObj->Name);
- main::_fired_scrip($self->ScripObj);
- $MIME->make_singlepart;
- main::ok( ref($MIME) eq \'MIME::Entity\',
- "hey, look. it\'s a mime entity" );
- main::ok( ref( $MIME->head ) eq \'MIME::Head\',
- "its mime header is a mime header. yay" );
- main::ok( $MIME->head->get(\'Content-Type\') =~ /iso-8859-1/,
- "Its content type is iso-8859-1 - " . $MIME->head->get("Content-Type") );
- my $message_as_string = $MIME->bodyhandle->as_string();
- use Encode;
- $message_as_string = Encode::decode("iso-8859-1",$message_as_string);
- main::ok(
- $message_as_string =~ /H\x{e5}vard/, "The message\'s content contains havard\'s name. this will fail if it\'s not utf8 out");
-
- }';
-}
-
-# {{{ test a multipart alternative containing a text-html part with an umlaut
-
-my $content = `cat /opt/rt3/lib/t/data/multipart-alternative-with-umlaut` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&umlauts_redef_sendmessage;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /causes Error/, "We recorded the content right as text-plain");
-is ($tick->Transactions->First->Attachments->Count , 3 , "Has three attachments, presumably a text-plain, a text-html and a multipart alternative");
-
-sub umlauts_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-# }}}
-
-# {{{ test a text-html message with an umlaut
-
-my $content = `cat /opt/rt3/lib/t/data/text-html-with-umlaut` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_html_umlauts_redef_sendmessage;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->Content =~ /causes Error/, "We recorded the content as containing 'causes error'");
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/html/, "We recorded the content as text/html");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-html and a multipart alternative");
-
-sub text_html_umlauts_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- use Data::Dumper;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- ok (is $MIME->parts, 2, "generated correspondence mime entityis composed of three parts");
- is ($MIME->head->mime_type , "multipart/mixed", "The first part is a multipart mixed". $MIME->head->mime_type);
- is ($MIME->parts(0)->head->mime_type , "text/plain", "The second part is a plain");
- is ($MIME->parts(1)->head->mime_type , "text/html", "The third part is an html ");
- }';
-}
-
-# }}}
-
-# {{{ test a text-html message with russian characters
-
-my $content = `cat /opt/rt3/lib/t/data/text-html-in-russian` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_html_russian_redef_sendmessage;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/html/, "We recorded the content right as text-html");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-html and a multipart alternative");
-
-sub text_html_russian_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- use Data::Dumper;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- ok (is $MIME->parts, 2, "generated correspondence mime entityis composed of three parts");
- is ($MIME->head->mime_type , "multipart/mixed", "The first part is a multipart mixed". $MIME->head->mime_type);
- is ($MIME->parts(0)->head->mime_type , "text/plain", "The second part is a plain");
- is ($MIME->parts(1)->head->mime_type , "text/html", "The third part is an html ");
- my $content_1251;
- $content_1251 = $MIME->parts(1)->bodyhandle->as_string();
- ok ($content_1251 =~ qr{Ó÷eáíûé Öeíòp "ÊÀÄÐÛ ÄÅËÎÂÎÃÎ ÌÈÐÀ" ïpèãëaøaeò ía òpeíèíã:},
-"Content matches drugim in codepage 1251" );
- }';
-}
-
-# }}}
-
-# {{{ test a message containing a russian subject and NO content type
-
-unshift (@RT::EmailInputEncodings, 'koi8-r');
-$RT::EmailOutputEncoding = 'koi8-r';
-my $content = `cat /opt/rt3/lib/t/data/russian-subject-no-content-type` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_plain_russian_redef_sendmessage;
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/plain/, "We recorded the content type right");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-plain");
-is ($tick->Subject, "\x{442}\x{435}\x{441}\x{442} \x{442}\x{435}\x{441}\x{442}", "Recorded the subject right");
-sub text_plain_russian_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- is ($MIME->head->mime_type , "text/plain", "The only part is text/plain ");
- my $subject = $MIME->head->get("subject");
- chomp($subject);
- #is( $subject , /^=\?KOI8-R\?B\?W2V4YW1wbGUuY39tICM3XSDUxdPUINTF09Q=\?=/ , "The $subject is encoded correctly");
- };
- ';
-}
-
-shift @RT::EmailInputEncodings;
-$RT::EmailOutputEncoding = 'utf-8';
-# }}}
-
-
-# {{{ test a message containing a nested RFC 822 message
-
-my $content = `cat /opt/rt3/lib/t/data/nested-rfc-822` || die "couldn't find new content";
-ok ($content, "Loaded nested-rfc-822 to test");
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_plain_nested_redef_sendmessage;
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-is ($tick->Subject, "[Jonas Liljegren] Re: [Para] Niv\x{e5}er?");
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /multipart\/mixed/, "We recorded the content type right");
-is ($tick->Transactions->First->Attachments->Count , 5 , "Has one attachment, presumably a text-plain and a message RFC 822 and another plain");
-sub text_plain_nested_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- is ($MIME->head->mime_type , "multipart/mixed", "It is a mixed multipart");
- my $subject = $MIME->head->get("subject");
- $subject = MIME::Base64::decode_base64( $subject);
- chomp($subject);
- # TODO, why does this test fail
- #ok($subject =~ qr{Niv\x{e5}er}, "The subject matches the word - $subject");
- 1;
- }';
-}
-
-# }}}
-
-
-# {{{ test a multipart alternative containing a uuencoded mesage generated by lotus notes
-
-my $content = `cat /opt/rt3/lib/t/data/notes-uuencoded` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&notes_redef_sendmessage;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /from Lotus Notes/, "We recorded the content right");
-is ($tick->Transactions->First->Attachments->Count , 3 , "Has three attachments");
-
-sub notes_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-# }}}
-
-# {{{ test a multipart that crashes the file-based mime-parser works
-
-my $content = `cat /opt/rt3/lib/t/data/crashes-file-based-parser` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&crashes_redef_sendmessage;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /FYI/, "We recorded the content right");
-is ($tick->Transactions->First->Attachments->Count , 5 , "Has three attachments");
-
-sub crashes_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-
-
-# }}}
-
-# Don't taint the environment
-$everyone->PrincipalObj->RevokeRight(Right =>'SuperUser');
-1;
diff --git a/rt/lib/t/create_data.pl b/rt/lib/t/create_data.pl
deleted file mode 100644
index 35226ea..0000000
--- a/rt/lib/t/create_data.pl
+++ /dev/null
@@ -1,136 +0,0 @@
-#!@PERL@ -w
-use strict;
-
-use Test::More qw/no_plan/;
-use Text::Lorem;
-use RT;
-RT::LoadConfig;
-RT::Init;
-
-#### Generate some number of RT accounts. Come up with random
-#### usernames if requested, otherwise use provided ones. Take
-#### $subdomain argument so that we can generate customer accounts,
-#### etc. Group memberships should also be provided.
-
-=head2 create_users
-
-=over 4
-
-This subroutine creates a number of RT users, if they don't already
-exist, and places them in the specified group. It also creates the
-group if it needs to. Returns a ref to a list containing the user
-objects.
-
-If a list of names is specified, users with those names are created.
-Otherwise, it will make names up, checking to be sure that a user with
-the random name does not yet exist. Each user will have an email
-address in "example.com".
-
-Takes a hash of the following arguments:
-number => How many users to create. Default is 1.
-names => A ref to a list of usernames to use. Optional.
-subdomain => The subdomain of example.com which should be used for
- email addresses.
-group => The name of the group these users should belong to. Creates
- the group if it does not yet exist.
-privileged => Whether the users should be able to be granted rights.
- Default is 1.
-attributes => a ref to a list of hashrefs containing the arguments for
- any unsupported attribute we should add to the user (for example, a
- user saved search.)
-
-=back
-
-=cut
-
-sub create_users {
- my %ARGS = (number => 1,
- subdomain => undef,
- privileged => 1,
- @_);
- my $lorem = Text::Lorem->new();
- my @users_returned;
-
- my @usernames;
- my $anon;
- if ($ARGS{'users'}) {
- @usernames = @{$ARGS{'users'}};
- $anon = 0;
- } else {
- @usernames = split(/\s+/, $lorem->words($ARGS{'number'}));
- $anon = 1;
- }
-
- my $domain = 'example.com';
- $domain = $ARGS{'subdomain'} . ".$domain" if $ARGS{'subdomain'};
-
- foreach my $user (@usernames) {
- my $user_obj = RT::User->new($RT::SystemUser);
- $user_obj->Load($user);
- if ($user_obj->Id() && !$anon) {
- # Use this user; assume we know what we're doing. Don't
- # modify it, other than adding it to any group specified.
- push(@users_returned, $user_obj);
- } elsif ($user_obj->Id()) {
- # Oops. Get a different username and stick it on the back
- # of the list.
- append(@users, $lorem->words(1));
- } else {
- $user_obj->Create(Name => $user,
- Password => $user."pass",
- EmailAddress => $user.'@'.$domain,
- RealName => "$user ipsum",
- Privileged => $ARGS{'privileged'},
- );
- push(@users_returned, $user_obj);
- }
- }
-
- # Now we have our list of users. Did we have groups to add them
- # to?
-
- if ($ARGS{'groups'}) {
- my @groups = @{$ARGS{'groups'}};
- foreach my $group (@groups) {
- my $group_obj = RT::Group->new();
- $group_obj->LoadUserDefinedGroup($group);
- unless ($group_obj->Id()) {
- # Create it.
- $group_obj->CreateUserDefinedGroup(
- Name => $group,
- Description => "lorem defined group $group",
- );
- }
- foreach (@users_returned) {
- $group_obj->AddMember($_->Id);
- }
- }
- }
-
- # Do we have attributes to apply to the users?
- if ($ARGS{'attributes'}) {
- foreach my $attrib (@{$ARGS{'attributes'}}) {
- my %attr_args = %{$attrib};
- foreach (@users_returned) {
- $_->AddAttribute(%attr_args);
- }
- }
- }
-
- # Return our list of users.
- return \@users_returned;
-}
-
-#### Generate any RT groups. These ought to be named, by function.
-#### The group names should be given either as part of user creation,
-#### or as a name with a number of subgroups which should be members.
-
-
-#### Generate some queues. Users/groups who have permissions on
-#### queues need to be specified on this point. Permissions can be
-#### specified by role, e.g. "client" or "staffmember" or "admin" for
-#### each queue. If the queue should have anything special like a
-#### custom field, say so here.
-
-
-#### Generate some tickets and transactions.
diff --git a/rt/lib/t/data/8859-15-message-series/dir b/rt/lib/t/data/8859-15-message-series/dir
deleted file mode 100644
index b9f8ec3..0000000
--- a/rt/lib/t/data/8859-15-message-series/dir
+++ /dev/null
@@ -1,356 +0,0 @@
-Return-Path: <rt-users-admin@lists.fsck.com>
-Delivered-To: j@pallas.eruditorum.org
-Received: from pallas.eruditorum.org (localhost [127.0.0.1])
- by pallas.eruditorum.org (Postfix) with ESMTP
- id 72E3A111B3; Mon, 26 May 2003 14:50:14 -0400 (EDT)
-Delivered-To: rt-users@pallas.eruditorum.org
-Received: from mail-in-02.arcor-online.net (mail-in-02.arcor-online.net [151.189.21.42])
- by pallas.eruditorum.org (Postfix) with ESMTP id 15E761118D
- for <rt-users@lists.fsck.com>; Mon, 26 May 2003 14:49:56 -0400 (EDT)
-Received: from otdial-212-144-012-186.arcor-ip.net (otdial-212-144-011-024.arcor-ip.net [212.144.11.24])
- by mail-in-02.arcor-online.net (Postfix) with ESMTP
- id 745EE15E87; Mon, 26 May 2003 20:53:15 +0200 (CEST)
-From: Dirk Pape <pape-rt@inf.fu-berlin.de>
-To: Jesse Vincent <jesse@bestpractical.com>,
- rt-users <rt-users@lists.fsck.com>
-Subject: Re: [rt-users] [rt-announce] Development Snapshot 3.0.2++
-Message-ID: <2147483647.1053982235@otdial-212-144-011-024.arcor-ip.net>
-In-Reply-To: <2147483647.1053974498@[10.0.255.35]>
-References: <20030523202405.GF23719@fsck.com>
- <2147483647.1053974498@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-MIME-Version: 1.0
-Content-Type: multipart/mixed; boundary="==========2147500486=========="
-Sender: rt-users-admin@lists.fsck.com
-Errors-To: rt-users-admin@lists.fsck.com
-X-BeenThere: rt-users@lists.fsck.com
-X-Mailman-Version: 2.0.12
-Precedence: bulk
-List-Help: <mailto:rt-users-request@lists.fsck.com?subject=help>
-List-Post: <mailto:rt-users@lists.fsck.com>
-List-Subscribe: <http://lists.fsck.com/mailman/listinfo/rt-users>,
- <mailto:rt-users-request@lists.fsck.com?subject=subscribe>
-List-Id: For users of RT: Request Tracker <rt-users.lists.fsck.com>
-List-Unsubscribe: <http://lists.fsck.com/mailman/listinfo/rt-users>,
- <mailto:rt-users-request@lists.fsck.com?subject=unsubscribe>
-List-Archive: <http://lists.fsck.com/pipermail/rt-users/>
-Date: Mon, 26 May 2003 20:50:36 +0200
-X-Spam-Status: No, hits=-2.5 required=5.0
- tests=AWL,IN_REP_TO,KNOWN_MAILING_LIST,QUOTED_EMAIL_TEXT,
- REFERENCES,REPLY_WITH_QUOTES
- autolearn=ham version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-
---==========2147500486==========
-Content-Type: text/plain; charset=us-ascii; format=flowed
-Content-Transfer-Encoding: 7bit
-Content-Disposition: inline
-
-Hello,
-
-here is the digest I forgot to attach. And I also forgot to say, that these
-were the only messages after a restart of apache.
-
-The messages in the digest are the copies which I - for testing purpose -
-allways queue into a mailbox just befor it is queued via rt-mailgate into
-the rt-system.
-
---Am Montag, 26. Mai 2003 18:41 Uhr +0200 schrieb Dirk Pape
-<pape-rt@inf.fu-berlin.de>:
-
-> I attach a digest with mails I send one after another to the rt-system
-> and they get queued into one queue, each as a new ticket.
-
-
-
-
---==========2147500486==========
-Content-Type: multipart/digest; boundary="==========2147489407=========="
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27591 invoked by uid 9804); 26 May 2003 18:10:50 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:10:46 +0200
-Received: (Qmail 27575 invoked from network); 26 May 2003 18:10:46 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:10:46 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKYe-0000Yi-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:10:44 +0200
-Received: (qmail 27557 invoked by uid 9804); 26 May 2003 18:10:44 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:10:40 +0200
-Received: (Qmail 27540 invoked from network); 26 May 2003 18:10:40 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:10:40 +0200
-Date: Mon, 26 May 2003 18:11:00 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972660@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27578] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27754 invoked by uid 9804); 26 May 2003 18:11:24 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:20 +0200
-Received: (Qmail 27704 invoked from network); 26 May 2003 18:11:19 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:19 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKZA-0000Yy-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:11:16 +0200
-Received: (qmail 27690 invoked by uid 9804); 26 May 2003 18:11:16 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:13 +0200
-Received: (Qmail 27677 invoked from network); 26 May 2003 18:11:13 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:13 +0200
-Date: Mon, 26 May 2003 18:11:32 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972692@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27711] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27971 invoked by uid 9804); 26 May 2003 18:12:02 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:52 +0200
-Received: (Qmail 27908 invoked from network); 26 May 2003 18:11:52 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:52 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKZj-0000ZC-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:11:51 +0200
-Received: (qmail 27848 invoked by uid 9804); 26 May 2003 18:11:50 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:46 +0200
-Received: (Qmail 27809 invoked from network); 26 May 2003 18:11:45 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:45 +0200
-Date: Mon, 26 May 2003 18:12:05 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972725@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27911] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 28283 invoked by uid 9804); 26 May 2003 18:12:39 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:12:36 +0200
-Received: (Qmail 28256 invoked from network); 26 May 2003 18:12:35 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:12:35 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKaQ-0000ZQ-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:12:34 +0200
-Received: (qmail 28236 invoked by uid 9804); 26 May 2003 18:12:34 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:12:30 +0200
-Received: (Qmail 28224 invoked from network); 26 May 2003 18:12:30 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:12:30 +0200
-Date: Mon, 26 May 2003 18:12:50 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972770@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [28259] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 28578 invoked by uid 9804); 26 May 2003 18:13:20 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:13:15 +0200
-Received: (Qmail 28534 invoked from network); 26 May 2003 18:13:14 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:13:14 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKb1-0000Ze-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:13:11 +0200
-Received: (qmail 28516 invoked by uid 9804); 26 May 2003 18:13:11 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:13:08 +0200
-Received: (Qmail 28479 invoked from network); 26 May 2003 18:13:07 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:13:07 +0200
-Date: Mon, 26 May 2003 18:13:27 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972807@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [28540] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 29108 invoked by uid 9804); 26 May 2003 18:14:15 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:14:10 +0200
-Received: (Qmail 29066 invoked from network); 26 May 2003 18:14:10 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:14:10 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKbw-0000Zr-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:14:08 +0200
-Received: (qmail 29054 invoked by uid 9804); 26 May 2003 18:14:08 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:14:04 +0200
-Received: (Qmail 29036 invoked from network); 26 May 2003 18:14:04 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:14:04 +0200
-Date: Mon, 26 May 2003 18:14:24 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972864@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [29069] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
---==========2147489407==========
-Content-Type: message/rfc822; name="test _________"
-
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 29551 invoked by uid 9804); 26 May 2003 18:15:16 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:15:12 +0200
-Received: (Qmail 29521 invoked from network); 26 May 2003 18:15:12 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:15:12 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKcx-0000a4-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:15:11 +0200
-Received: (qmail 29511 invoked by uid 9804); 26 May 2003 18:15:10 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:15:07 +0200
-Received: (Qmail 29465 invoked from network); 26 May 2003 18:15:06 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:15:06 +0200
-Date: Mon, 26 May 2003 18:15:26 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972926@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [29524] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
-
---==========2147489407==========--
-
---==========2147500486==========--
-
-_______________________________________________
-rt-users mailing list
-rt-users@lists.fsck.com
-http://lists.fsck.com/mailman/listinfo/rt-users
-
-Have you read the FAQ? The RT FAQ Manager lives at http://fsck.com/rtfm
-
diff --git a/rt/lib/t/data/8859-15-message-series/msg1 b/rt/lib/t/data/8859-15-message-series/msg1
deleted file mode 100644
index cc99c40..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg1
+++ /dev/null
@@ -1,36 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27591 invoked by uid 9804); 26 May 2003 18:10:50 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:10:46 +0200
-Received: (Qmail 27575 invoked from network); 26 May 2003 18:10:46 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:10:46 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKYe-0000Yi-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:10:44 +0200
-Received: (qmail 27557 invoked by uid 9804); 26 May 2003 18:10:44 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:10:40 +0200
-Received: (Qmail 27540 invoked from network); 26 May 2003 18:10:40 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:10:40 +0200
-Date: Mon, 26 May 2003 18:11:00 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972660@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27578] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
diff --git a/rt/lib/t/data/8859-15-message-series/msg2 b/rt/lib/t/data/8859-15-message-series/msg2
deleted file mode 100644
index dc442cf..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg2
+++ /dev/null
@@ -1,36 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27754 invoked by uid 9804); 26 May 2003 18:11:24 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:20 +0200
-Received: (Qmail 27704 invoked from network); 26 May 2003 18:11:19 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:19 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKZA-0000Yy-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:11:16 +0200
-Received: (qmail 27690 invoked by uid 9804); 26 May 2003 18:11:16 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:13 +0200
-Received: (Qmail 27677 invoked from network); 26 May 2003 18:11:13 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:13 +0200
-Date: Mon, 26 May 2003 18:11:32 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972692@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27711] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
diff --git a/rt/lib/t/data/8859-15-message-series/msg3 b/rt/lib/t/data/8859-15-message-series/msg3
deleted file mode 100644
index e23866d..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg3
+++ /dev/null
@@ -1,35 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 27971 invoked by uid 9804); 26 May 2003 18:12:02 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:52 +0200
-Received: (Qmail 27908 invoked from network); 26 May 2003 18:11:52 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:52 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKZj-0000ZC-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:11:51 +0200
-Received: (qmail 27848 invoked by uid 9804); 26 May 2003 18:11:50 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:11:46 +0200
-Received: (Qmail 27809 invoked from network); 26 May 2003 18:11:45 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:11:45 +0200
-Date: Mon, 26 May 2003 18:12:05 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972725@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [27911] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
diff --git a/rt/lib/t/data/8859-15-message-series/msg4 b/rt/lib/t/data/8859-15-message-series/msg4
deleted file mode 100644
index 831695c..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg4
+++ /dev/null
@@ -1,35 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 28283 invoked by uid 9804); 26 May 2003 18:12:39 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:12:36 +0200
-Received: (Qmail 28256 invoked from network); 26 May 2003 18:12:35 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:12:35 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKaQ-0000ZQ-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:12:34 +0200
-Received: (qmail 28236 invoked by uid 9804); 26 May 2003 18:12:34 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:12:30 +0200
-Received: (Qmail 28224 invoked from network); 26 May 2003 18:12:30 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:12:30 +0200
-Date: Mon, 26 May 2003 18:12:50 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972770@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [28259] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
diff --git a/rt/lib/t/data/8859-15-message-series/msg5 b/rt/lib/t/data/8859-15-message-series/msg5
deleted file mode 100644
index 272c93c..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg5
+++ /dev/null
@@ -1,35 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 28578 invoked by uid 9804); 26 May 2003 18:13:20 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:13:15 +0200
-Received: (Qmail 28534 invoked from network); 26 May 2003 18:13:14 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:13:14 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKb1-0000Ze-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:13:11 +0200
-Received: (qmail 28516 invoked by uid 9804); 26 May 2003 18:13:11 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:13:08 +0200
-Received: (Qmail 28479 invoked from network); 26 May 2003 18:13:07 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:13:07 +0200
-Date: Mon, 26 May 2003 18:13:27 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972807@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [28540] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
diff --git a/rt/lib/t/data/8859-15-message-series/msg6 b/rt/lib/t/data/8859-15-message-series/msg6
deleted file mode 100644
index 3ae9d3b..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg6
+++ /dev/null
@@ -1,35 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 29108 invoked by uid 9804); 26 May 2003 18:14:15 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:14:10 +0200
-Received: (Qmail 29066 invoked from network); 26 May 2003 18:14:10 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:14:10 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKbw-0000Zr-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:14:08 +0200
-Received: (qmail 29054 invoked by uid 9804); 26 May 2003 18:14:08 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:14:04 +0200
-Received: (Qmail 29036 invoked from network); 26 May 2003 18:14:04 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:14:04 +0200
-Date: Mon, 26 May 2003 18:14:24 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972864@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [29069] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
diff --git a/rt/lib/t/data/8859-15-message-series/msg7 b/rt/lib/t/data/8859-15-message-series/msg7
deleted file mode 100644
index 6149dd6..0000000
--- a/rt/lib/t/data/8859-15-message-series/msg7
+++ /dev/null
@@ -1,36 +0,0 @@
-Return-Path: <pape@inf.fu-berlin.de>
-Delivered-To: pape-rtdoublecheck@mi.fu-berlin.de
-Received: (qmail 29551 invoked by uid 9804); 26 May 2003 18:15:16 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:15:12 +0200
-Received: (Qmail 29521 invoked from network); 26 May 2003 18:15:12 +0200
-Received: From es.inf.fu-berlin.de (160.45.110.22)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:15:12 +0200
-Received: from leibniz ([160.45.40.10] helo=math.fu-berlin.de)
- by es.inf.fu-berlin.de with smtp (Exim 3.35 #1 (Debian))
- id 19KKcx-0000a4-00
- for <staff@tec.mi.fu-berlin.de>; Mon, 26 May 2003 18:15:11 +0200
-Received: (qmail 29511 invoked by uid 9804); 26 May 2003 18:15:10 +0200
-Received: from localhost (HELO math.fu-berlin.de) (127.0.0.1)
- by localhost with SMTP; 26 May 2003 18:15:07 +0200
-Received: (Qmail 29465 invoked from network); 26 May 2003 18:15:06 +0200
-Received: From eremix.inf.fu-berlin.de (HELO eremix) (160.45.113.36)
- by leibniz.math.fu-berlin.de with SMTP; 26 May 2003 18:15:06 +0200
-Date: Mon, 26 May 2003 18:15:26 +0200
-From: Dirk Pape <pape@inf.fu-berlin.de>
-To: staff@tec.mi.fu-berlin.de
-Subject: =?ISO-8859-15?Q?test_=E4=F6=FC=DF=C4=D6=DC=DF=A4?=
-Message-ID: <2147483647.1053972926@[10.0.255.35]>
-X-Mailer: Mulberry/3.0.3 (Mac OS X)
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Envelope-Sender: pape@inf.fu-berlin.de
-X-Virus-Scanned: by AMaViS 0.3.12pre7-U23 [29524] (NAI-uvscan@math.fu-berlin.de)
-X-Remote-IP: 160.45.110.22
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-15; FORMAT=flowed
-Content-Transfer-Encoding: quoted-printable
-Content-Disposition: inline
-
-test nochmal in anderer Queue
-test =E4=F6=FC=DF=C4=D6=DC=DF=A4
-
diff --git a/rt/lib/t/data/crashes-file-based-parser b/rt/lib/t/data/crashes-file-based-parser
deleted file mode 100644
index da1913e..0000000
--- a/rt/lib/t/data/crashes-file-based-parser
+++ /dev/null
@@ -1,193 +0,0 @@
-X-Real-To: <mitya@example.com>
-Received: from [194.87.5.31] (HELO sinbin.d-s.example.com)
- by cgp.example.com (CommuniGate Pro SMTP 4.0.6/D4)
- with ESMTP-TLS id 125035761 for mitya@example.com; Thu, 11 Dec 2003 15:17:46 +0300
-Received: (from daemon@localhost)
- by sinbin.d-s.example.com (8.12.9p1/8.11.6) id hBBCHjN0031595
- for mitya@example.com; Thu, 11 Dec 2003 15:17:45 +0300 (MSK)
- (envelope-from noc@rt3.mx.example.com)
-Received: from d-s.example.com by sinbin.d-s.example.com with ESMTP id hBBCHjar031575;
- (8.12.9p2/D) Thu, 11 Dec 2003 15:17:45 +0300 (MSK)
-X-Real-To: <mitya@example.com>
-Sender: <noc@rt3.mx.example.com> (Network Operation Center)
-To: mitya@example.com
-Date: Thu, 11 Dec 2003 15:17:45 +0300
-Message-ID: <redirect-137509289@d-s.example.com>
-X-Original-Return-Path: <vox19@b92.d-s.example.com>
-Received: from [194.87.0.16] (HELO mail.d-s.example.com)
- by d-s.example.com (CommuniGate Pro SMTP 4.1.5/D1)
- with ESMTP id 120757484 for noc@rt3.mx.example.com; Mon, 27 Oct 2003 09:40:53 +0300
-Received: from [194.87.0.22] (HELO moscvax.d-s.example.com)
- by mail.d-s.example.com (CommuniGate Pro SMTP 4.1.5/D)
- with ESMTP-TLS id 107945800 for noc@rt3.mx.example.com; Mon, 27 Oct 2003 09:40:53 +0300
-Received: from d-s.example.com (mx.d-s.example.com [194.87.0.32])
- by moscvax.d-s.example.com (8.12.9/8.12.9) with ESMTP id h9R6erFm062621
- for <security@d.example.com>; Mon, 27 Oct 2003 09:40:53 +0300 (MSK)
- (envelope-from vox19@b92.d-s.example.com)
-Received: by d-s.example.com (CommuniGate Pro PIPE 4.1.5/D1)
- with PIPE id 120757490; Mon, 27 Oct 2003 09:40:53 +0300
-Received: from [194.87.2.108] (HELO b92.d-s.example.com)
- by d-s.example.com (CommuniGate Pro SMTP 4.1.5/D1)
- with ESMTP-TLS id 120757480 for security@d.example.com; Mon, 27 Oct 2003 09:40:52 +0300
-Received: from b92.d-s.example.com (localhost [127.0.0.1])
- by b92.d-s.example.com (8.12.8p1/8.12.3) with ESMTP id h9R6eqIe014669
- for <security@d.example.com>; Mon, 27 Oct 2003 09:40:52 +0300 (MSK)
- (envelope-from vox19@b92.d-s.example.com)
-Received: from localhost (localhost [[UNIX: localhost]])
- by b92.d-s.example.com (8.12.8p1/8.12.3/Submit) id h9R6epst014668
- for security@d.example.com; Mon, 27 Oct 2003 09:40:51 +0300 (MSK)
-From: "Stanislav" <drstas@d.example.com>
-Subject: Fwd: scanning my ports
-X-Original-Date: Mon, 27 Oct 2003 10:40:51 +0400
-User-Agent: KMail/1.5.4
-X-Original-To: security@d.example.com
-MIME-Version: 1.0
-Content-Type: Multipart/Mixed;
- boundary="Boundary-00=_z3Ln/tUeUBipHgx"
-X-Original-Message-Id: <200310270940.51758.vox19@d.example.com>
-X-Spam-Checker-Version: SpamAssassin 2.60-jumbo.demos (1.212-2003-09-23-exp)
-X-Spam-Level:
-X-Spam-Status: No, hits=-6.8 required=5.0 tests=BAYES_00,FROM_ENDS_IN_NUMS,
- HTML_MESSAGE,SUBJECT_RT autolearn=ham version=2.60-jumbo.demos
-X-Spam-Report: -6.8 points, 5.0 required;
- * -3.0 SUBJECT_RT Tracking system
- * 1.0 FROM_ENDS_IN_NUMS From: ends in numbers
- * 0.1 HTML_MESSAGE BODY: HTML included in message
- * -4.9 BAYES_00 BODY: Bayesian spam probability is 0 to 1%
- * [score: 0.0000]
-
-
---Boundary-00=_z3Ln/tUeUBipHgx
-Content-Type: text/plain;
- charset="koi8-r"
-Content-Transfer-Encoding: 7bit
-Content-Disposition: inline
-
-
-FYI
-
-
----------- Forwarded Message ----------
-
-Subject: [DEMOS #12148] scanning my ports
-Date: Sunday 26 October 2003 20:19
-From: 1stwizard@isp.example.com
-To: no-reply@d-r.example.com
-
-This transaction appears to have no content
-
--------------------------------------------------------
-
-
-
---
-best wishes,
-
-Stanislav A. Mushkat
-http://www.di.example.com
-
---Boundary-00=_z3Ln/tUeUBipHgx
-Content-Type: text/plain;
- charset="iso-8859-1";
- name=" "
-Content-Transfer-Encoding: 7bit
-Content-Disposition: inline
-
-Somebody at IP 127.0.0.1 scanned my ports.
---Boundary-00=_z3Ln/tUeUBipHgx
-Content-Type: text/html;
- charset="iso-8859-1";
- name=" "
-Content-Transfer-Encoding: 7bit
-Content-Disposition: inline
-
-<HTML><HEAD>
-<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
-<META content="IncrediMail 1.0" name=GENERATOR>
-<!--IncrdiXMLRemarkStart>
-<IncrdiX-Info>
-<X-FID>BA285063-5BCE-11D4-AF8D-0050DAC67E11</X-FID>
-<X-FVER>2.0</X-FVER>
-<X-FIT>Letter</X-FIT>
-<X-FCOL>Elegant Paper</X-FCOL>
-<X-FCAT>Stationery</X-FCAT>
-<X-FDIS>Rice Fields</X-FDIS>
-<X-Extensions>SU1CTDEsNDEsgUmBSTAkkcGNgZmVTY0wNCxNhYUoiU0kOMEoTYGBjYEoJDSZnSyFhUksSU1CTDIsMCwsSU1CTDMsMCwsVHlwZVZlcnNpb24sMywxLjAs</X-Extensions>
-<X-BG>8E549F43-079D-11D8-B0F9-00B0D0B65B96</X-BG>
-<X-BGT>repeat</X-BGT>
-<X-BGC>#eff3f7</X-BGC>
-<X-BGPX>left</X-BGPX>
-<X-BGPY>0px</X-BGPY>
-<X-ASN>ANIM3D00-NONE-0000-0000-000000000000</X-ASN>
-<X-ASNF>0</X-ASNF>
-<X-ASH>ANIM3D00-NONE-0000-0000-000000000000</X-ASH>
-<X-ASHF>1</X-ASHF>
-<X-AN>6486DDE0-3EFD-11D4-BA3D-0050DAC68030</X-AN>
-<X-ANF>0</X-ANF>
-<X-AP>6486DDE0-3EFD-11D4-BA3D-0050DAC68030</X-AP>
-<X-APF>1</X-APF>
-<X-AD>C3C52140-4147-11D4-BA3D-0050DAC68030</X-AD>
-<X-ADF>0</X-ADF>
-<X-AUTO>X-ASN,X-ASH,X-AN,X-AP,X-AD</X-AUTO>
-<X-CNT>;</X-CNT>
-</IncrdiX-Info>
-<IncrdiXMLRemarkEnd-->
-</HEAD>
-<BODY style="BACKGROUND-POSITION: left 0px; FONT-SIZE: 12pt; MARGIN: 0px 10px 10px; COLOR: #00005b; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Arial" text=#00005b bgColor=#eff3f7 background=cid:8E549F43-079D-11D8-B0F9-00B0D0B65B96 scroll=yes SIGCOLOR="0" X-ADF="0" X-AD="C3C52140-4147-11D4-BA3D-0050DAC68030" X-APF="1" X-AP="6486DDE0-3EFD-11D4-BA3D-0050DAC68030" X-ANF="0" X-AN="6486DDE0-3EFD-11D4-BA3D-0050DAC68030" X-ASHF="1" X-ASH="ANIM3D00-NONE-0000-0000-000000000000" X-ASNF="0" X-ASN="ANIM3D00-NONE-0000-0000-000000000000" X-FVER="2.0" X-FID="BA285063-5BCE-11D4-AF8D-0050DAC67E11" X-FIT="Letter" X-FCOL="Elegant Paper" X-FCAT="Elegant Paper" X-FDIS="Rice Fields" ORGYPOS="0">
-<TABLE id=INCREDIMAINTABLE cellSpacing=0 cellPadding=2 width="100%" border=0>
-<TBODY>
-<TR>
-<TD id=INCREDITEXTREGION style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12pt; PADDING-BOTTOM: 0px; CURSOR: auto; PADDING-TOP: 0px" vAlign=top width="100%">
-<DIV>Somebody at IP 127.0.0.1 scanned my ports. </DIV>
-<DIV>&nbsp;</DIV>
-<DIV>&nbsp;</DIV></TD></TR>
-<TR>
-<TD id=INCREDIFOOTER width="100%">
-<TABLE cellSpacing=0 cellPadding=0 width="100%">
-<TBODY>
-<TR>
-<TD width="100%"></TD>
-<TD id=INCREDISOUND vAlign=bottom align=middle></TD>
-<TD id=INCREDIANIM vAlign=bottom align=middle></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HTML>
---Boundary-00=_z3Ln/tUeUBipHgx
-Content-Type: image/jpeg;
- charset="iso-8859-1";
- name="BackGrnd.jpg"
-Content-Transfer-Encoding: base64
-Content-Disposition: inline; filename="BackGrnd.jpg"
-
-/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAHgAA/+4AIUFk
-b2JlAGTAAAAAAQMAEAMCAwYAAAHbAAAC1gAABZX/2wCEABALCwsMCxAMDBAX
-Dw0PFxsUEBAUGx8XFxcXFx8eFxoaGhoXHh4jJSclIx4vLzMzLy9AQEBAQEBA
-QEBAQEBAQEABEQ8PERMRFRISFRQRFBEUGhQWFhQaJhoaHBoaJjAjHh4eHiMw
-Ky4nJycuKzU1MDA1NUBAP0BAQEBAQEBAQEBAQP/CABEIAGUAcwMBIgACEQED
-EQH/xACAAAEBAQEAAAAAAAAAAAAAAAAAAQIGAQEBAAAAAAAAAAAAAAAAAAAA
-ARABAAICAwEAAgMAAAAAAAAAAQARIQIxQRIiQDIQMFARAAICAgIBBAIDAQEA
-AAAAAAERACExQVFhcYGRobECEsHhMtHxEgEAAAAAAAAAAAAAAAAAAABQ/9oA
-DAMBAAIRAxEAAADtRZYE1ASghQFgUZoCkKSwLmhcllAEqkSkqFAlhUomoAS3
-IoJqFlDNpFEAQFE1AIVYAWIVKAJRNZpYCwVmmshKACA0CBAUCBYGwf/aAAgB
-AgABBQD8B/yP/9oACAEDAAEFAPz6/or8H//aAAgBAQABBQC2+ZeHjbD+saX6
-hwXeDW1Rg4xLLTa+m7ZiIEsI1MTiHP1dYpvFADiFM1/X6nq9byuwdPPz5oFo
-fWlEMQ9ULKrWq2ppG9Y2J6INQma9lVTRdlUKgHzXXSEECw1SYu5WsGoJPkis
-ZYpx31GvXZQ/JM3VwShzVTsp1EZbBI8LcaUSih86+s2Zl4Wp6+lAZnVsDkjd
-ku5m+lJTdXDG2SHM9M2wKX1YxsaZTTwmoVrYnqsMrM652yjs01K0mtbGAz6Y
-5dpfqNz06qpq5QNjiIjiZtbhtceNuf0jyeqGgu6rXMvI4omPWbPMYzEfMI+a
-xHnFvOP4/9oACAECAgY/AGP/2gAIAQMCBj8AY//aAAgBAQEGPwB72Yucb1Bf
-IhFEaeZ+xRXFQELN+HEUQdjU0Xn4g9gRCQcpw1yajGYsP/kFvUzvjUBWrIMF
-HI2OJQNEAjiEEFdTmfG/MTHq5RFOnpTV3kzCBx7x4YOD1AV5uYJvnqMA0hep
-jfwpYCwC4Bx3q55zeZRBCw9TkoIuHw78RdczSNH2mgqcLpRC+RASAkA3B13m
-cYd5mR84c/yOx4lWtRAZ6mGDhiP9WgXVyhWA+xDgMOWGMsTg/wBTz8SjjXrP
-8hHIlX1MZ6mDzgc/cIV/iyN1GBR0MQMKjnEzvvMz8mUkErKlfqU63iV+IKNH
-7mNZBLFQEpEDeDOV32IVn8WR4caoywqI2p695mbZzNUQIcKfk0bo+0NpCqn7
-CiQiNGXkdQen1DpjGeZ7WNw3pK+I93maCPc16+Zkf6XxMCsFwAkaiIB57vc/
-IAhZ/HqZBBbB0ZokAEOGxsYqBgPp8agQBu4VSMJdqx6SwDsGBrTmAR93uZGX
-6KePowEADAIjoX8gw459CICaW/MLGvodQfkDW71zBxRHtB3j3jC4PMIYoAgK
-NfPMCQNN7jCzvlzXPopzhQvNZY3CRya9ZrEFfRE0iCB5mscZuVYfKmAi94uE
-3Q8qfytQ7xD0svmFcmaxNPI8iMjh3pmF2HbzqeUi+YkiD/MrOl5LmbwPuWVf
-mXpv3hDH8qAjPpiZHXkRnSd6ZhB53mejzKV6US0K9TCCLyCeIhtETX5MsHBG
-JkD/ANiFkMCE2qGoCdZ8Q8AMGpYFqEhdhRIYH3CF3d1M/Mexma+4CwdQ2Ddc
-x0exAlmj04QUQd8QWLB/iB5GxmEg5TENVZqPYzFV8eHAy9T/AEc8a4n3Ov6g
-/VwvE6lpQ4VNysXzhS8esOO8w/rlF/rypjV3B5H1Knr8T//Z
-
---Boundary-00=_z3Ln/tUeUBipHgx--
-
diff --git a/rt/lib/t/data/multipart-alternative-with-umlaut b/rt/lib/t/data/multipart-alternative-with-umlaut
deleted file mode 100644
index 1ad4fe3..0000000
--- a/rt/lib/t/data/multipart-alternative-with-umlaut
+++ /dev/null
@@ -1,62 +0,0 @@
-Return-Path: <gst@example.com>
-Delivered-To: j@pallas.eruditorum.org
-Received: from vis.example.com (vis.example.com [212.68.68.251])
- by pallas.eruditorum.org (Postfix) with SMTP id 59236111C3
- for <jesse@example.com>; Thu, 12 Jun 2003 02:14:44 -0400 (EDT)
-Received: (qmail 29541 invoked by uid 502); 12 Jun 2003 06:14:42 -0000
-Received: from sivd.example.com (HELO example.com) (192.168.42.1)
- by 192.168.42.42 with SMTP; 12 Jun 2003 06:14:42 -0000
-Received: received from 172.20.72.174 by odie.example.com; Thu, 12 Jun 2003 08:14:27 +0200
-Received: by mailserver.example.com with Internet Mail Service (5.5.2653.19) id <LJSB7T54>; Thu, 12 Jun 2003 08:14:39 +0200
-Message-ID: <50362EC956CBD411A339009027F6257E013DD495@mailserver.example.com>
-Date: Thu, 12 Jun 2003 08:14:39 +0200
-From: "Stever, Gregor" <gst@example.com>
-MIME-Version: 1.0
-X-Mailer: Internet Mail Service (5.5.2653.19)
-To: "'jesse@example.com'" <jesse@example.com>
-Subject: RE: [rt-users] HTML-encoded mails with umlaute
-Date: Thu, 12 Jun 2003 08:14:39 +0200
-Content-Type: multipart/alternative;
- boundary="----_=_NextPart_001_01C330A9.E7BDD590"
-X-Spam-Status: No, hits=0.0 required=5.0
- tests=AWL,HTML_50_60,HTML_MESSAGE,INVALID_DATE
- version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-
-------_=_NextPart_001_01C330A9.E7BDD590
-Content-Type: text/plain;
- charset="iso-8859-1"
-Content-Transfer-Encoding: quoted-printable
-
-Hello,
-
-ist this kind of Messages, that causes rt to crash.=20
-
-Mit freundlichen Gr=FC=DFen
-Gregor Stever ^^causes Error!!
-
-
-------_=_NextPart_001_01C330A9.E7BDD590
-Content-Type: text/html;
- charset="iso-8859-1"
-Content-Transfer-Encoding: quoted-printable
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML><HEAD>
-<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; charset=3Diso-8859-=
-1">
-
-
-<META content=3D"MSHTML 6.00.2800.1170" name=3DGENERATOR></HEAD>
-<BODY>
-<DIV><FONT face=3DArial><FONT size=3D2>Hello,<BR><BR>ist this kind of Messa=
-ges, that=20
-causes rt to crash.<BR><BR>Mit freundlichen Gr=FC=DFen<BR>Gregor=20
-Stever&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ^^causes Error<SPAN=20
-class=3D975501206-12062003>!!</SPAN></FONT></FONT></DIV></BODY></HTML>
-
-
-------_=_NextPart_001_01C330A9.E7BDD590--
-
-
diff --git a/rt/lib/t/data/multipart-report b/rt/lib/t/data/multipart-report
deleted file mode 100644
index 538e0c8..0000000
--- a/rt/lib/t/data/multipart-report
+++ /dev/null
@@ -1,66 +0,0 @@
-Return-Path: <mailnull@example.com>
-Date: Sat, 23 Aug 2003 00:15:18 +0800 (SGT)
-From: Mail Delivery Subsystem <MAILER-DAEMON@other.example.com>
-Message-Id: <200308221615.CGA36111@mailbox.other.example.com>
-To: support@example.com
-MIME-Version: 1.0
-Content-Type: multipart/report; report-type=delivery-status;
- boundary="CGA36111.1061568918/mailbox.other.example.com"
-Subject: Returned mail: User unknown
-Auto-Submitted: auto-generated (failure)
-
-This is a MIME-encapsulated message
-
---CGA36111.1061568918/mailbox.other.example.com
-
-The original message was received at Sat, 23 Aug 2003 00:15:18 +0800 (SGT)
-from mx12.mcis.other.example.com [10.1.1.232]
-
- ----- The following addresses had permanent delivery errors -----
-<jesmund>
-
-
---CGA36111.1061568918/mailbox.other.example.com
-Content-Type: message/delivery-status
-
-Reporting-MTA: dns; mailbox.other.example.com
-Arrival-Date: Sat, 23 Aug 2003 00:15:18 +0800 (SGT)
-
-Final-Recipient: RFC822; jesmund@mailbox.other.example.com
-Action: failed
-Status: 5.1.1
-Remote-MTA: DNS; mail.mcis.other.example.com
-Diagnostic-Code: SMTP; 550 5.1.1 <jesmund>... User unknown
-Last-Attempt-Date: Sat, 23 Aug 2003 00:15:18 +0800 (SGT)
-
---CGA36111.1061568918/mailbox.other.example.com
-Content-Type: message/rfc822
-
-Return-Path: <support@example.com>
-Received: from mx12.other.example.com (mx12.mcis.other.example.com [10.1.1.232])
- by mailbox.other.example.com (Mirapoint Messaging Server MOS 3.3.3-GR)
- with ESMTP id CGA36101;
- Sat, 23 Aug 2003 00:15:17 +0800 (SGT)
-Received: from STATION13 (rhala.dsl.pe.net [64.38.69.104])
- by mx12.other.example.com (8.12.9/8.12.9) with ESMTP id h7MGFGac020135
- for <jesmund@other.example.com>; Sat, 23 Aug 2003 00:15:17 +0800
-Message-Id: <200308221615.h7MGFGac020135@mx12.other.example.com>
-From: <support@example.com>
-To: <jesmund@other.example.com>
-Subject: Thank you!
-Date: Fri, 22 Aug 2003 9:15:19 --0700
-X-MailScanner: Found to be clean
-Importance: Normal
-X-Mailer: Microsoft Outlook Express 6.00.2600.0000
-X-MSMail-Priority: Normal
-X-Priority: 3 (Normal)
-MIME-Version: 1.0
-Content-Type: multipart/mixed;
- boundary="_NextPart_000_05684DA4"
-
-
-
---_NextPart_000_05684DA4--
-
---CGA36111.1061568918/mailbox.other.example.com--
-
diff --git a/rt/lib/t/data/nested-mime-sample b/rt/lib/t/data/nested-mime-sample
deleted file mode 100644
index 8b85d94..0000000
--- a/rt/lib/t/data/nested-mime-sample
+++ /dev/null
@@ -1,396 +0,0 @@
-Return-Path: <Xxxxxx_Yyyyyyy@some.net>
-Delivered-To: jesse@pallas.eruditorum.org
-Received: by pallas.eruditorum.org (Postfix)
- id B5D3E1123A; Fri, 12 Jul 2002 11:35:27 -0400 (EDT)
-Delivered-To: rt-2.0-bugs@pallas.eruditorum.org
-Received: from postman.some.net (postman.some.net [193.0.0.199])
- by pallas.eruditorum.org (Postfix) with SMTP id 2736011234
- for <rt-2.0-bugs@fsck.com>; Fri, 12 Jul 2002 11:35:27 -0400 (EDT)
-Received: (qmail 11615 invoked by uid 0); 12 Jul 2002 15:35:26 -0000
-Received: from x22.some.net (HELO x22.some.net.some.net) (193.0.1.22)
- by postman.some.net with SMTP; 12 Jul 2002 15:35:26 -0000
-Date: Fri, 12 Jul 2002 17:35:26 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-To: rt-0.0-bugs@fsck.com
-Subject: Example MIME within MIME within MIME message
-Message-ID: <Pine.LNX.4.44.0207121734250.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-192303556-1026488126=:25020"
-X-Spam-Status: No, hits=4.0 required=7.0
- tests=DOUBLE_CAPSWORD,MIME_NULL_BLOCK,MIME_MISSING_BOUNDARY
- version=2.31
-Content-Length: 11478
-
- This message is in MIME format. The first part should be readable text,
- while the remaining parts are likely unreadable without MIME-aware tools.
- Send mail to mime@docserver.cac.washington.edu for more info.
-
---12654081-192303556-1026488126=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-MIME is fun at times.
-
-
---
- Xxxxxx Yyyyyyy SOME
- Systems/Network Engineer NCC
- www.some.net - PGP000C8B1B Operations/Security
-
---12654081-192303556-1026488126=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-2102091261-1026488126=:25020"
-Content-ID: <Pine.LNX.4.44.0207121734322.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
- This message is in MIME format. The first part should be readable text,
- while the remaining parts are likely unreadable without MIME-aware tools.
- Send mail to mime@docserver.cac.washington.edu for more info.
-
---12654081-2102091261-1026488126=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121734320.25020@x22.some.net>
-Content-Description: first outer message (fwd)
-
-Date: Fri, 12 Jul 2002 17:32:37 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: first outer message
-Message-ID: <Pine.LNX.4.44.0207121732180.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-113777422-1026487957=:25020"
-
-
---12654081-113777422-1026487957=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-first outer message
-
---12654081-113777422-1026487957=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-387266385-1026487957=:25020"
-Content-ID: <Pine.LNX.4.44.0207121732222.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-387266385-1026487957=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121732220.25020@x22.some.net>
-Content-Description: middle message (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:45 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: middle message
-Message-ID: <Pine.LNX.4.44.0207121731190.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-1711788944-1026487905=:25020"
-
-
---12654081-1711788944-1026487905=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-This is the first middle message
-
-
---12654081-1711788944-1026487905=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-1221085552-1026487905=:25020"
-Content-ID: <Pine.LNX.4.44.0207121731262.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-1221085552-1026487905=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731260.25020@x22.some.net>
-Content-Description: This is the inner-most message (fwd)
-
-Date: Fri, 12 Jul 2002 17:30:31 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: This is the inner-most message
-Message-ID: <Pine.LNX.4.44.0207121730070.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-inner-msg
-
-
-
---12654081-1221085552-1026487905=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731261.25020@x22.some.net>
-Content-Description: another inner message (need two before pine will do the mime-digest thing) (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:12 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: another inner message (need two before pine will do the mime-digest
- thing)
-Message-ID: <Pine.LNX.4.44.0207121730480.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-again
-
-
-
---12654081-1221085552-1026487905=:25020--
---12654081-1711788944-1026487905=:25020--
-
---12654081-387266385-1026487957=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121732221.25020@x22.some.net>
-Content-Description: middle message (fwd)
-
-Date: Fri, 12 Jul 2002 17:32:05 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: middle message
-Message-ID: <Pine.LNX.4.44.0207121731470.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-1731270459-1026487925=:25020"
-
-
---12654081-1731270459-1026487925=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-This is the second middle message
-
-
---12654081-1731270459-1026487925=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-128832654-1026487925=:25020"
-Content-ID: <Pine.LNX.4.44.0207121731502.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-128832654-1026487925=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731500.25020@x22.some.net>
-Content-Description: This is the inner-most message (fwd)
-
-Date: Fri, 12 Jul 2002 17:30:31 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: This is the inner-most message
-Message-ID: <Pine.LNX.4.44.0207121730070.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-inner-msg
-
-
-
---12654081-128832654-1026487925=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731501.25020@x22.some.net>
-Content-Description: another inner message (need two before pine will do the mime-digest thing) (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:12 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: another inner message (need two before pine will do the mime-digest
- thing)
-Message-ID: <Pine.LNX.4.44.0207121730480.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-again
-
-
-
---12654081-128832654-1026487925=:25020--
---12654081-1731270459-1026487925=:25020--
-
---12654081-387266385-1026487957=:25020--
---12654081-113777422-1026487957=:25020--
-
---12654081-2102091261-1026488126=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121734321.25020@x22.some.net>
-Content-Description: 2nd outer message (fwd)
-
-Date: Fri, 12 Jul 2002 17:32:54 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: 2nd outer message
-Message-ID: <Pine.LNX.4.44.0207121732380.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-1955637437-1026487974=:25020"
-
-
---12654081-1955637437-1026487974=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-2nd outer message
-
-
---12654081-1955637437-1026487974=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-362457126-1026487974=:25020"
-Content-ID: <Pine.LNX.4.44.0207121732412.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-362457126-1026487974=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121732410.25020@x22.some.net>
-Content-Description: middle message (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:45 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: middle message
-Message-ID: <Pine.LNX.4.44.0207121731190.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-1711788944-1026487905=:25020"
-
-
---12654081-1711788944-1026487905=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-This is the first middle message
-
-
---12654081-1711788944-1026487905=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-1221085552-1026487905=:25020"
-Content-ID: <Pine.LNX.4.44.0207121731262.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-1221085552-1026487905=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731260.25020@x22.some.net>
-Content-Description: This is the inner-most message (fwd)
-
-Date: Fri, 12 Jul 2002 17:30:31 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: This is the inner-most message
-Message-ID: <Pine.LNX.4.44.0207121730070.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-inner-msg
-
-
-
---12654081-1221085552-1026487905=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731261.25020@x22.some.net>
-Content-Description: another inner message (need two before pine will do the mime-digest thing) (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:12 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: another inner message (need two before pine will do the mime-digest
- thing)
-Message-ID: <Pine.LNX.4.44.0207121730480.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-again
-
-
-
---12654081-1221085552-1026487905=:25020--
---12654081-1711788944-1026487905=:25020--
-
---12654081-362457126-1026487974=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121732411.25020@x22.some.net>
-Content-Description: middle message (fwd)
-
-Date: Fri, 12 Jul 2002 17:32:05 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: middle message
-Message-ID: <Pine.LNX.4.44.0207121731470.25020-120000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: MULTIPART/MIXED; BOUNDARY="12654081-1731270459-1026487925=:25020"
-
-
---12654081-1731270459-1026487925=:25020
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-This is the second middle message
-
-
---12654081-1731270459-1026487925=:25020
-Content-Type: MULTIPART/Digest; BOUNDARY="12654081-128832654-1026487925=:25020"
-Content-ID: <Pine.LNX.4.44.0207121731502.25020@x22.some.net>
-Content-Description: Digest of 2 messages
-
---12654081-128832654-1026487925=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731500.25020@x22.some.net>
-Content-Description: This is the inner-most message (fwd)
-
-Date: Fri, 12 Jul 2002 17:30:31 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: This is the inner-most message
-Message-ID: <Pine.LNX.4.44.0207121730070.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-inner-msg
-
-
-
---12654081-128832654-1026487925=:25020
-Content-Type: MESSAGE/RFC822; CHARSET=US-ASCII
-Content-ID: <Pine.LNX.4.44.0207121731501.25020@x22.some.net>
-Content-Description: another inner message (need two before pine will do the mime-digest thing) (fwd)
-
-Date: Fri, 12 Jul 2002 17:31:12 +0200 (CEST)
-From: Xxxxxx Yyyyyyy <Xxxxxx_Yyyyyyy@some.net>
-X-X-Sender: bc@x22.some.net
-To: Xxxxxx_Yyyyyyy@some.net
-Subject: another inner message (need two before pine will do the mime-digest
- thing)
-Message-ID: <Pine.LNX.4.44.0207121730480.25020-100000@x22.some.net>
-MIME-Version: 1.0
-Content-Type: TEXT/PLAIN; charset=US-ASCII
-
-
-
-again
-
-
-
---12654081-128832654-1026487925=:25020--
---12654081-1731270459-1026487925=:25020--
-
---12654081-362457126-1026487974=:25020--
---12654081-1955637437-1026487974=:25020--
-
---12654081-2102091261-1026488126=:25020--
---12654081-192303556-1026488126=:25020--
-
diff --git a/rt/lib/t/data/nested-rfc-822 b/rt/lib/t/data/nested-rfc-822
deleted file mode 100644
index d4f118d..0000000
--- a/rt/lib/t/data/nested-rfc-822
+++ /dev/null
@@ -1,253 +0,0 @@
-Return-Path: <jonas@astral.example.com>
-Delivered-To: j@pallas.eruditorum.org
-Received: from example.com (example.com [213.88.137.35])
- by pallas.eruditorum.org (Postfix) with ESMTP id 869591115E
- for <jesse@bestpractical.com>; Sun, 29 Jun 2003 18:04:04 -0400 (EDT)
-Received: from jonas by example.com with local (Exim 4.20)
- id 19WkLK-0004Vr-0I
- for jesse@bestpractical.com; Mon, 30 Jun 2003 00:08:18 +0200
-Resent-To: jesse@bestpractical.com
-Resent-From: Jonas Liljegren <jonas@example.com>
-Resent-Date: Mon, 30 Jun 2003 00:08:17 +0200
-Received: from mail by example.com with spam-scanned (Exim 4.20)
- id 19Wayz-00068j-KO
- for jonas@astral.example.com; Sun, 29 Jun 2003 14:08:42 +0200
-Received: from jonas by example.com with local (Exim 4.20)
- id 19Wayz-00068g-FY
- for red@example.com; Sun, 29 Jun 2003 14:08:37 +0200
-To: Redaktionen <red@example.com>
-Subject: [Jonas Liljegren] Re: [Para] =?iso-8859-1?q?Niv=E5er=3F?=
-From: Jonas Liljegren <jonas@example.com>
-Date: Sun, 29 Jun 2003 14:08:37 +0200
-Message-ID: <87d6gxt7ay.fsf@example.com>
-User-Agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.2 (gnu/linux)
-MIME-Version: 1.0
-Content-Type: multipart/mixed; boundary="=-=-="
-Sender: Jonas Liljegren <jonas@astral.example.com>
-Resent-Message-Id: <E19WkLK-0004Vr-0I@example.com>
-Resent-Sender: Jonas Liljegren <jonas@astral.example.com>
-Resent-Date: Mon, 30 Jun 2003 00:08:18 +0200
-X-Spam-Status: No, hits=-5.7 required=5.0
- tests=AWL,BAYES_10,EMAIL_ATTRIBUTION,MAILTO_WITH_SUBJ,
- QUOTED_EMAIL_TEXT,USER_AGENT_GNUS_UA
- version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-
---=-=-=
-Content-Type: text/plain; charset=iso-8859-1
-Content-Transfer-Encoding: quoted-printable
-
-Material f=F6r att uppdatera texten om niv=E5er.
-
-Denna text b=F6r dessutom ligga som ett uppslagsord och inte d=E4r den ligg=
-er nu.
-
-
---=-=-=
-Content-Type: message/rfc822
-Content-Disposition: inline
-
-Return-path: <list-bounces@example.com>
-Received: from mail by example.com with spam-scanned (Exim 4.20)
- id 19WFzq-0005i1-WE
- for jonas@example.com; Sat, 28 Jun 2003 15:44:13 +0200
-Received: from localhost
- ([127.0.0.1] helo=example.com ident=list)
- by example.com with esmtp (Exim 4.20)
- id 19WFzp-0005hf-Tz; Sat, 28 Jun 2003 15:44:05 +0200
-Received: from mail by example.com with spam-scanned (Exim 4.20)
- id 19WFzh-0005hR-Bu
- for list@example.com; Sat, 28 Jun 2003 15:44:03 +0200
-Received: from jonas by example.com with local (Exim 4.20)
- id 19WFzh-0005hO-AO
- for list@example.com; Sat, 28 Jun 2003 15:43:57 +0200
-To: list@example.com
-Subject: Re: [Para] =?iso-8859-1?q?Niv=E5er=3F?=
-References: <002701c33d62$170fb2e0$a33740d5@TELIA.COM>
- <002301c33d66$bf6483e0$d97864d5@remotel2tu76c8>
- <64753.217.210.4.156.1056801224.squirrel@example.com>
-From: Jonas Liljegren <jonas@example.com>
-Date: Sat, 28 Jun 2003 15:43:57 +0200
-In-Reply-To: <64753.217.210.4.156.1056801224.squirrel@example.com> (Jakob
- Carlsson's message of "Sat, 28 Jun 2003 13:53:44 +0200 (CEST)")
-Message-ID: <877k76uxk2.fsf@example.com>
-User-Agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.2 (gnu/linux)
-X-BeenThere: list@example.com
-X-Mailman-Version: 2.1.2
-Precedence: list
-List-Id: &#214;ppen lista f&#246;r alla medlemmar <list.example.com>
-List-Unsubscribe: <http://example.com/cgi-bin/mailman/listinfo/list>,
- <mailto:list-request@example.com?subject=unsubscribe>
-List-Archive: <http://example.com/pipermail/list>
-List-Post: <mailto:list@example.com>
-List-Help: <mailto:list-request@example.com?subject=help>
-List-Subscribe: <http://example.com/cgi-bin/mailman/listinfo/list>,
- <mailto:list-request@example.com?subject=subscribe>
-Sender: list-bounces@example.com
-Errors-To: list-bounces@example.com
-X-Spam-Status: No, hits=-7.0 required=5.0
- tests=BAYES_00,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT,
- REFERENCES,REPLY_WITH_QUOTES,USER_AGENT_GNUS_UA
- version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-MIME-Version: 1.0
-Content-Type: text/plain; charset=iso-8859-1
-Content-Transfer-Encoding: quoted-printable
-
-"Jakob Carlsson" <esrange@example.com> writes:
-
->> Om du g=E5r in p=E5 Hemsidan och sen p=E5 Torget.
->> D=E4r ser du att det st=E5r ditt anv=E4ndarnamn och
->> bredvid det Niv=E5 5.
->> Klicka p=E5 niv=E5 5 s=E5 kommer du in p=E5 en sida som
->> f=F6rklarar allt om niv=E5systemet.
->
-> Bra svar. Men jag k=E4nner f=F6r att ge en kort f=F6rklaring av niv=E5-sy=
-stemet.
-
-Jag skulle kunna l=E4gga en massa tid p=E5 at skriva samma sak om och om
-igen. Fliker in h=E4r f=F6r att s=E4ga detta =E4nnu en g=E5ng...:
-
- * Det =E4r jag som hittat p=E5 det h=E4r med niv=E5system
-
- * Det =E4r en stor skillnad p=E5 hur det =E4r t=E4nkt att vara och hur det=
- =E4r
- nu. Jag har stora planer och en massa id=E9er jag vill genomf=F6ra.
-
- * Niv=E5systemet =E4r en =E5terkoppling f=F6r vad man gjort f=F6r webbplat=
-sen.
- Som ett tack g=F6r hj=E4lpen.
-
- * Systemet finns som en inspiration f=F6r de som d=E5 k=E4nner f=F6r att g=
-=F6ra
- mer. Men jag vill inte att det ska ge en negativ influens f=F6r de
- som inte gillar niv=E5er. Var och en ska kunna v=E4lja att ignorera
- niv=E5n. Speciellt b=F6r de f=F6rst=E5 att det inte har att g=F6ra med
- graden av andlig utveckling, esoteriska kunskaper eller n=E5got
- s=E5dant.
-
- * Inspirationen till niv=E5erna kommer fr=E5n spel, hemliga ordenssystem,
- kosmska hiearkier, skr=E5v=E4sen, akademier, politisk administration,
- osv. Det =E4r ett element av rollspel. En lek.
-
- * Olika niv=E5er motsvarar olika roller p=E5 webbplatsen. Webbplatsen
- webbmaster och ansvbariga har en viss niv=E5, bes=F6kare och g=E4ster har
- en annan niv=E5.
-
- * Alla datorsystem har administrat=F6rssystem f=F6r dem som sk=F6ter
- systemet. Jag har valt att arrangera dessa funktioner i en skala.
- Niv=E5n anger hur mycket av systemet du har r=E4tt att administrera.
-
- * Att ha ett niv=E5system f=F6r access g=F6r att man kan g=F6ra som p=E5 f=
-ilm;
- att l=E5ta de med h=F6gre access komma =E5t mer information. De med
- riktigt h=F6g niv=E5 kan n=E5 topphemlig information. P=E5 denna webbpl=
-ats
- kan varje anv=E4ndae v=E4lja att h=E5lla vissa personliga uppgifter. Har
- du h=F6g niv=E5 har du rollen som anv=E4ndaradministrat=F6r och har
- tillg=E5ng till dessa uppgifter. Just nu =E4r vi tre personer med
- denna niv=E5n.
-
- * Niv=E5systemet =E4r ett m=E5tt p=E5 p=E5litlighet. Vi ger dig h=F6gre n=
-iv=E5 n=E4r
- vi litar p=E5 att du inte kommer att f=F6rst=F6ra f=F6r oss. F=F6r ju h=
-=F6gre
- niv=E5, desto l=E4ttare kan du sabbotera inneh=E5llet.
-
- * P=E5 en h=F6gre niv=E5 beh=F6vs det inte bara att vi litar p=E5 att du v=
-ill
- v=E4l. Du m=E5ste =E4ven ha ett gott omd=F6me, teknisk f=F6rst=E5else,
- intresse och logiskt t=E4nkande. Utan detta =E4r det l=E4tt h=E4nt att =
-du
- f=F6rst=F6r saker av misstag.
-
- * Vi vill uppmuntra medlemmarna att g=F6ra det som =E4r bra f=F6r
- webbplatsen. Tilldelandet av h=F6gre niv=E5 ska uppmuntra till att
- g=F6ra det som =E4r bra.
-
- * F=F6r att minska missbruk av e-postadresser visar vi e-postadresser
- bara f=F6r de med lite h=F6gre niv=E5. P=E5 s=E5 vis vill vi undvika att
- n=E5gon g=E5r med som medlem bara f=F6r att samla e-postadresser f=F6r a=
-tt
- sedan g=F6ra reklamutskick.
-
- * Idag n=E5r du olika niv=E5er p=E5 detta vis:
-
- 0. Kom in p=E5 webbplatsen som g=E4st
-
- 1. V=E4lj anv=E4ndarnamn och ange e-postadress
-
- 2. Logga in med det l=F6senord som skickats till dig
-
- 3. Skrivit en presentation
-
- 5. Presentationen har godk=E4nts
-
- 6. Du har svarat p=E5 ett f=E5tal fr=E5gor om dina intressen
-
- 7. Du har svarat p=E5 en massa fr=E5gor om intressen och beskrivit dem
- detaljerat
-
- 10. N=E5gon v=E4ktare tycker du f=F6rtj=E4nar h=F6gre niv=E5 f=F6r att du=
- =E4r s=E5
- trevlig och engagerad i webbplatsen.
-
- 11. Du har gjort ett antal kopplingar mellan =E4mnen och =F6verv=E4gande
- delan av dem har godk=E4nts av en v=E4ktare, och du accepterar att
- b=F6rja som l=E4rling i v=E4ktarakademin (jobbet som
- systemadministrat=F6r)
-
- 12-39. D=E5 och d=E5 tittar jag p=E5 vad du gjort i form av skrivande av
- texter och arbetande med uppslagsverkets =E4mnen, och justerar din
- niv=E5 i f=F6rh=E5llande till m=E4ngd och kvalit=E9 p=E5 arbetet
-
- 40. Du har full=E4ndat ett helt =E4mnesomr=E5de. En m=E4ngd sammanl=E4nk=
-ade
- =E4mnen med bra textinneh=E5ll.
-
- 41. F=F6rtroende att arbeta med adminstration av medlemsregistret.
-
- 42. Delaktig i utvecklandet av webbplatsens prgrammering.
-
-
- * Allts=E5. Automatik tar dig till niv=E5 7.
-
- * Men som sagt. Jag har en massa andra planer d=E4r mycket mer kopplas
- till niv=E5er och d=E4r det finns systemautomatik f=F6r hela v=E4gen till
- niv=E5 40.
-
- * 41 och 42 ligger utanf=F6r niv=E5systemet i =F6vrigt. Den som har de
- niv=E5erna har inte n=F6dv=E4ndigtvis tagit sig till niv=E5 40 innan. De
- motsvaras av anv=E4ndaradministrat=F6r och systemadministrat=F6r och
- niv=E5n speglar maktbefogenheterna snarare =E4n vad man i =F6vrigt gjort
- f=F6r webbplatsen.
-
- * Alla texter. Allt inneh=E5ll =E4r =F6ppet f=F6r alla. =C4ven f=F6r bes=
-=F6kare som
- inte loggar in. Du kan till och med g=E5 in p=E5
- administrationssidorna utan att logga in. Vi g=F6mmer inte inneh=E5ll.
- Det vi g=F6r =E4r att hindra dig fr=E5n att =E4ndra inneh=E5llet. Vi d=
-=F6ljer
- dock en del information om andra medlemmar i syfte att f=E5 s=E5 m=E5nga
- som m=F6jligt att sj=E4lv skriva in sig och skriva en presentation.
-
---=20
-/ Jonas - http://jonas.example.com/myself/en/index.html
-
-_______________________________________________
-List mailing list
-List@example.com
-http://example.com/cgi-bin/mailman/listinfo/list
-
-
---=-=-=
-
-
-
---
-/ Jonas - http://jonas.example.com/myself/en/index.html
-
---=-=-=--
-
diff --git a/rt/lib/t/data/new-ticket-from-iso-8859-1 b/rt/lib/t/data/new-ticket-from-iso-8859-1
deleted file mode 100644
index 299392d..0000000
--- a/rt/lib/t/data/new-ticket-from-iso-8859-1
+++ /dev/null
@@ -1,31 +0,0 @@
-Return-Path: <hw@nordkapp.net>
-Delivered-To: j@pallas.eruditorum.org
-Received: from sm1.nordkapp.net (sm1.nordkapp.net [62.70.54.150])
- by pallas.eruditorum.org (Postfix) with ESMTP id 48F4E11112
- for <jesse@bestpractical.com>; Mon, 2 Jun 2003 14:58:37 -0400 (EDT)
-Received: (qmail 3612 invoked by uid 1009); 2 Jun 2003 18:58:36 -0000
-Received: from unknown (HELO office.nordkapp.net) (213.161.186.83)
- by 0 with SMTP; 2 Jun 2003 18:58:36 -0000
-Message-Id: <5.2.1.1.0.20030602205708.0314c5f8@mail.nordkapp.net>
-X-Sender: hw@nordkapp.net@mail.nordkapp.net
-X-Mailer: QUALCOMM Windows Eudora Version 5.2.1
-Date: Mon, 02 Jun 2003 20:58:30 +0200
-To: Jesse Vincent <jesse@bestpractical.com>
-From: Wilhelmsen Håvard <hw@nordkapp.net>
-Subject: Re: rt-3.0.3pre1
-In-Reply-To: <20030602185607.GN10811@fsck.com>
-References: <5.2.1.1.0.20030602204834.031406d8@mail.nordkapp.net>
- <5.2.1.1.0.20030530194214.0371c988@mail.nordkapp.net>
- <5.2.1.1.0.20030530194214.0371c988@mail.nordkapp.net>
- <5.2.1.1.0.20030602204834.031406d8@mail.nordkapp.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset="iso-8859-1"; format=flowed
-Content-Transfer-Encoding: 8bit
-X-Spam-Status: No, hits=-1.9 required=5.0
- tests=AWL,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT,
- REFERENCES,REPLY_WITH_QUOTES
- autolearn=ham version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-
-Håvard
diff --git a/rt/lib/t/data/new-ticket-from-iso-8859-1-full b/rt/lib/t/data/new-ticket-from-iso-8859-1-full
deleted file mode 100644
index 493ca15..0000000
--- a/rt/lib/t/data/new-ticket-from-iso-8859-1-full
+++ /dev/null
@@ -1,38 +0,0 @@
-X-Mailer: QUALCOMM Windows Eudora Version 5.2.1
-To: Jesse Vincent <jesse@bestpractical.com>
-From: Wilhelmsen Håvard <hw@nordkapp.net>
-Subject: Re: rt-3.0.3pre1
-X-Spam-Status: No, hits=-1.9 required=5.0
- tests=AWL,EMAIL_ATTRIBUTION,IN_REP_TO,QUOTED_EMAIL_TEXT,
- REFERENCES,REPLY_WITH_QUOTES
- autolearn=ham version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-
-At 14:56 02.06.2003 -0400, you wrote:
->> This patch didn't help us out.
->> We still got problems with auto responding e-mails sent from the system
->> when a new ticket is created.
->> The same problem appears when one of the staff replays to an new ticket.
->> All Norwegian letters is converted to strange letters like ø
->>
->> We would love if this bug could be fixed. On our mail server we are
->running
->> perl 5.6.1 since we are using debian stabel packet lists.
->
->I'd love it too. I just can't find it. Can you send me
->(jesse@bestpractical.com) a couple of email messages containing
->characters that break your RT?
-
-Hello again,
-
-Thanks for your fast replay!
-
-I don't know how this looks at your end but it is letters like: ø æ å
-If your want to make this in html it will be &oslash; &aring; and &aerlig;
-
-
---
-HÃ¥vard
-
-
diff --git a/rt/lib/t/data/notes-uuencoded b/rt/lib/t/data/notes-uuencoded
deleted file mode 100644
index f27fdf8..0000000
--- a/rt/lib/t/data/notes-uuencoded
+++ /dev/null
@@ -1,2368 +0,0 @@
-Return-Path: <mhenrion@example.com>
-Delivered-To: j@pallas.eruditorum.org
-Received: from serveurlotus.example.com (unknown [213.56.193.67])
- by pallas.eruditorum.org (Postfix) with SMTP id C21DB113AA
- for <jesse@vendor.example.com>; Thu, 27 Nov 2003 10:55:58 -0500 (EST)
-Received: by serveurlotus.example.com(Lotus SMTP MTA v4.6.1 (569.2 2-6-1998)) id C1256DEB.00578401 ; Thu, 27 Nov 2003 16:55:54 +0100
-X-Lotus-FromDomain: DOMAINEQZ
-From: "Maxime HENRION" <mhenrion@example.com>
-To: jesse@vendor.example.com
-Cc: support@example.com
-Message-ID: <C1256DEB.005717B5.00@serveurlotus.example.com>
-Date: Thu, 27 Nov 2003 16:55:50 +0100
-Subject: Test e-mail which exhibits problems with RT
-X-Spam-Status: No, hits=-2.6 required=7.0
- tests=BAYES_20
- version=2.55
-X-Spam-Level:
-X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
-Content-Length: 144905
-
-I send you this mail from Lotus Notes to make sure it'll exhibit the
-reported symptoms (lost attachment and body). I Cc: it to our RT address
-to verify it does cause the reported problems. Could you please mail me
-any replies to my personal e-mail, mux@example.org ?
-
-Thanks in advance,
-Maxime
-
-(See attached file: Naz_Head.jpg)
-
-(UUEncoded file named: Naz_Head.jpg follows)
-(Its format is: JPEG File Interchange )
-
-begin 644 Naz_Head.jpg
-M_]C_X``02D9)1@`!`@(```````#__@`>04-$(%-Y<W1E;7,@1&EG:71A;"!)
-M;6%G:6YG`/_``!$(!(D#$P,!(@`"$0$#$0'_VP"$``0"`P,#`@0#`P,$!`0$
-M!@H&!@4%!@P("0<*#@P/#PX,#@T0$A<3$!$5$0T.%!L4%1<8&1H9#Q,<'AP9
-M'A<9&1@!!@8&"0<)$0D)$248%1@E)24E)24E)24E)24E)24E)24E)24E)24E
-M)24E)24E)24E)24E)24E)24E)24E)24E)?_$`*(```$%`0$!`0``````````
-M``(``0,$!08'"`D0``$#`P,"!0($!`0$!0(""P$``A$#!"$2,4$%4083(F%Q
-M@9$',J&Q%"-"P5+1X?`5,V+Q"!8D-%,7<H(U0QACDI.B)29&5%8!`0$!`0$!
-M`0`````````````!`@,$!081`0$``@(#``$%`0$!`0$````!`A$A,0,205$$
-M$R(R87$%%5*!_]H`#`,!``(1`Q$`/P#Y`NZSM9#1`&(!5%[G\U"!WW5B](U:
-M0(GDE5'DR3$]R3,K53ZB?5?D$I,JNC=`\EN#.=PHMVZH^%$6?,)R3(`R90/K
-M:AB0!LHFG"&6Q`,?*(E\^"`"3.=TC6=J`)([!0M#=1U'X3.TZ9D[X**G=6=(
-MR82\]X,ZC`&"H0X"9<3W2:(&GOWF4+VLMN7D2T[[AR*E5<YPU?>56:T,@P<X
-M3^D#'*J+3:SC(<8[92\XB/5]U7VV$E/Z=(!.459_B7`0'&2F%<EX)D]R%7!)
-M:$B1.<S^B(G-PYFQQ/*7G$P9/M!5>9,:ML)Y$]AW03FLXR78A.VY=&=IV58&
-M2!^X1-BFWO)S""S_`!#M,.,'VV2;<.(C48"JR'#&!V*>!LUV_OLBK)KO@C5)
-M_9)M=V0(GNJSAL9"7!!E066UR&X)^BD%P06DOR%2&00WG=$WYSQ[JHL&Y&>9
-MQV3ON7.;ZG:@.).%59,Y.#[)H&F7.`/QNBK;:Y#?S$XP"4(N'[:S[Y46H-8<
-M2#C.4``SZA!V")I9?5=AVO[<IA7=J)C$[DJN""8!VY"3C$;@(6+?\4_83O@)
-MZ=U4;@$YQNJ0<>')L[3G?=15_P#BG`0"[/=(W;N3NJ@/J]>8PG=M(<!P%46Q
-M<5)C5!&Z%UR0^=6_,JJZ220[',XE!J(VD@HJZZZ<3J+H)X*=]T]K1ZLGW5*G
-M+G3N$[-()F/_`,1E0TN-N7@RUY)[R<)V7=1V=1^ZH@.,F<CA$V/+F8CLJBW6
-MO'^8/4[[HA=U,^L@K/?#GB-N4Y)Y)CW15RI>5'#_`)CL>Z`7CY]1=`[$Y50&
-M1,Y]BF&^G!]I07_XRII!#JD3]E(RO<NI.KM-30T@.=P"LV`T[C]D0<?+(DD$
-MR0D5<;?59(+S)P9)2_CJN_F.)VR51=+7@S'QA($N$#9$:-.^JR/63]5(R]K.
-MP*CM1]UF'7L,=H1M=+IY0:#[ZL'R'N$#9/\`\0N`3-1Q!.8*HD..1N@]0)@@
-MQ[HK39U"J2!YA`/*3>HU9_/O]5G,+F"9@>Z?5D3Q[HC2'4*PF'9=]T_\?6!'
-M\QQ^2LZG,[R-U(3Z):<<"9A*+K.I7(<2*KA]4XZI<:R[S78YE9H))$NB?=+4
-M(C.^4&O2ZM<:Y-=^F<PXJ9W6[ME1_E5ZA!V]1P%A%T-/'NI*+M(U3J/LLU8V
-M[?KM\#_[NK,?XBI7>(+\`#^+JQ[/*P/,<'SI`]E/1D[@'.`D*V[GKMZUP>;N
-MOW`#RJEQXCZB^KJ_BJ_P*CEG]1JD5PW5D?HJC2`V8,]P>$A.&PSKO41Z'7E;
-M/_649\0]18YO_K:I@Y]9@K%:\DDM/P.4#G._J)39IT%3Q#U(48;>U9]GE*WZ
-M_P!3:=;KVMCC65@L,M],_=3C\I9@^_*IIT-GX@ZL]P<;ZK#3)EY5YWB;J9`_
-M]75`]G9*YJB-%&!@G<=T?F!K`T3'LL4=(/$_5-`TWE4#_P"Y,?%750__`-[5
-MS[KG?,U-`)..W*$N$F=QW4TKH?\`S5U?7)O:@^J3O%/5&`3>5<_]2YQS_3,D
-M90OJ%L9S[*CI'>*^JA\_QE4>VN?[)4?%76`''^/KCC\Q7-.?WG[PHR\9[\!"
-M.I/C+K8R.I7(CL\J1OC?K[!J'5KH>WF$+DC5TM&#J_="YY=].$Z'8?\`G_Q(
-MTS_QJ\$\"L[_`#1?_4;Q8T"/$-^('_SN_P`UQ.O/`(3O?Z<\JZAR[=WXG>+V
-MMQXBZB)Y-R__`#3?_4[QHV2/$W4\<?Q3_P#-<,YTD-[(7N!.70!NAR[S_P"J
-M'C(;>)NJ0.]W4_S3?_5'QII.KQ/U0@;?^I?M]UPDN()DCLE2J/%6>?8Y5X-U
-MWP_$[QDTZO\`S+U0#L;A_P#FA/XI>-1__D_5!`__`-A_^:XBK4+A#=]LJ'62
-MT@@2H;KO:?XK^.`#'BCJ7_\`'=_FI&?B]XY;G_S1U$]OY[O\UYWYA+")*;6-
-MNRJ/26_C)X]8UI_\T]1@XCSBI/\`ZT_B$W;Q5?D]O-*\R#P`#O&R$UC,SDH/
-M4*?XX?B,R)\6]1$?_M4=3\<OQ&F6^+>HB?\`]IM^B\LU.W(D$*.M7\L$-DGW
-M31MZF_\`';\2*6H'Q3U!Q(P?.V_15S^./XE:-;O%O42WDFIM^B\K#_3).0>4
-M1>-,R,YB86M0Y>HL_'+\2"X$>*NH?_Q/]%+1_'7\1FNSXHO2>_F+RG5#,F/8
-M=U(S+@Z23\)J'+VNT_\`$'^)M.W:QOBJ[@=WJ3_]8;\3_P#_`*NZ_P#WUX]0
-M/\IOJ`13_P!8_P!_1.#E)>;X.DJE4`G4&CW]U>O/2YTY/95"VD\@O(8(_-NE
-M-(*I$\#ZJ.((DP#MRC?I!,.#@3P@<YLQ@D*)T!Y=!!'V3,!(!DR-NZ/!DDS_
-M`)H=3FOU#\Q$3*`2[U;F3^J9FG5DG!VA%J&"\3VA,PC.H3]4#")SCZ[IPZ6Y
-M.?;*9Q$P1">`3L`F@0!<W48QB)RDW\W8=DM)B0,C=(G'Y3OG*H)A]7YC]TGO
-M`;J&VTI8`@$@QRF`F)A`6HZ<&,(`XM$-),HM.TR`DTC)_9`@]H'?NB(U9)D*
-M)Q`R/L"G:]K3D$_*"3`)DS'(_P`X2>0`")).=10F`,SG9*`Y^DS'9#0VZM.'
-M@0=NZ51S@XYR=PG9IF'?1!4<)QF4!`X&<E.9%3F2.Z$Z-(:!$Y30-4SL@D`]
-M<ETSPD2`X%Q$#W3.>TTQ@",3R5'[%V$1,Y\B8S&Q0:S^;4")R9@(2^`<P>T[
-M)`@^IH&GL%%2-?@B8^J;60">3]T+=C.J1O@_ND<_U8'(RJ<E))W`GE,?=Q,<
-M%+TDD@R?E-$C#A[A0$`79&/JF!<U^X^B'!YRDUOJ(*HF#AY@Q&$6KDNB%"0"
-M9!2<8.3)Y4$CW2\MF#^Z8.(;!&KZIG-P-L#A"V6F=8!/""0%I.0/<(75#/:=
-M@$.F:>8`/)3#3OJ'T*(D:[&8B=Y4C7$"&M,J)L1Q'>$3@1L8'L@8F3@1]4+G
-M&(VX2(#3^:>\%`?54P9'SNJHZ;B.^4]0D@X!(0@..QCZIR`V"7-.)0)CR6P1
-MDHFZ@-_B<H`WU1IGV3L#L0!`X)*:41=.<GX1,?\`TYA``=<C`&0EI/,90&PN
-M+IQMR437D#8PHVM)B'>VZ.>9&?T32';4C&4FN.24S!G,B.4@"7P-D4;CZ02G
-MUQM@'E,`7,D-F-TP:03#B)XW03TW0`3/=.ZHT[20HJ0(=JP<83U=1'Y??=$I
-M.>20)B/JF<\D^W<!#)DQB>$)+@3@D=@@.1J(C\RGI.TTAL`%!;@U'@&8)4U<
-M#40..%*LA!WKD@?,JQ3<*;=6J?959U`<%*HXBG,R=MU`JM05+G42#[QLF>8:
-M0V"1O)W4;):`V3G>$4@$&()W0/YA+H&$S"=Q$'E,X34D!.&MF<>_NBIZ.G5.
-M1C=6*32XZSMP56:Z#I#1/=6ZKAY8:!$;PI:1(7B!)SV0O<T[&(0BF-&<#W05
-M7:G%L8&%!,UPC`$_*?7)))4+&NF9P-@0G/R,]D!$M)DGX"3G%P`W^NZ!A;OB
-M1[R@JU"1F(;VP4!ET'TD3[("8?&,^R`O!&,&=@A($`P2.TJFAQZAK/V0U()]
-M),\A(QITP/C>$+R(+B![(IY&DQN$!U$=OE*99G;V0ZVDSVXE7:0I$@DY12W5
-MF0.P47ID%(N@03]R@.1DL'ZH<X)#L\RF$;:O]$Y8WR]0J-+I_+&?^R&A.=`G
-M'T0!\2[)*%P,1D`<(7N`@$_JB40>#_DD#^G"C!R=_NE()$'?!0$X%Q$?NF(&
-MY!&.Z;;4`24#RYH!!)]T#U7A@,\JNZ-6?ND\EYDN$]T]-[\MUX[0M!/;+?E,
-MUDQ/WW2=4TGL3V*!SAQQS*(D:WD$P?T4M+8@29W]E!J],CE'J&H`.XR$&G0<
-M!1:(&R/6WL%#1TFDTEW'9%#/\?Z)N+I/<F"1,=]7^JI5G`N(';`[*[?$.<7[
-MS]BJ=8@'&$J('2&YF3QV0`-+`XD3VY1<D$@'=`T>L@B%`B9(SQF$/&TIHT[B
-M2F;!.3'L4#N:&P[?Y*:1!WD=T\S(.3\RA,:2Z.?T3:GD%I&Y&/A*8&9CLA(S
-M$B/S8PG<V88QIQGOE$T-CV#9SB>Q&R<Z09CW(40V@#9$=IP/>%0;B#F#CW14
-MXU>QX4?]1X*3,$X(]U!,_2'0XS"%S@'20(CLAJF'#E)I!!:2J$XMS(]L(26P
-M)S[(W._EENH@3J4+FR2/902.TZCP(V[HH!!C(*A;#@)V[<J6F<R3J&,3NA3@
-MXW*8",@'(15&AQD8C.\H>8@M^"J#<1&QE-SL0.Y2(SOLE'IF<($XB<F/="8+
-M(<<3$I/TD@`SVE!I].))"@-S@1(=@I"=)SNA((80#*(/$`M:!`SE%%,`#7&$
-MCN"YT_51DNB`Z0#CA.0X_5(AQ&`23[E/L1W/"C@.).T9*3S+@1/9/\.AM!.2
-M0">$3P0[)"%VD9!D#<I./I[IL2'5$`R$!&&SQA"UQTF73/'"?.($%#8Y&3//
-MV35`XOU&)2):`?3!'U0O,M$B`>^Q02!D;F2>P0&(,[I,:XB-4B,Q"1#@=49"
-M`J9!R^3&R=Q;J$(0(GD(*A<(='U2"1V&;#_-`R(D;%,\DL$B>Z$;X!55)G48
-M1-'IS&VZ'48&#GE,<C<0@(`:\`QVDI`;[<]TP=B00G:7"<;\A`;M1:2,8R<I
-M-&0)@H0XZ(<-(B>4[2[5`(GL902`.:#ID(2,Y$D]D33Z().$(F,'ZH#:"6GU
-MB9_*F$SO]$F-)V,%(.Y`D(:'4P0`?LD`[2)D`]]B@#LX:1*<O<&ZH4$C9&YP
-M-LIW.#6R'&>Y0D02-.>ZE<\NHM`:)'/*HBDQ.=MYW2C,D[(2XN;))"32XM(!
-M@'906+-LEU4DXF(2TD$$.)3AX91:WDY0DM#?RQQNI5A]!+@3/PA<=\@HGNCT
-M_?/"AJG$#8^V$"UD8!4E,P9;G':5$"`?5()X4[6.@.VCLJ@2UT`B?E.3#`9$
-M\93:H/I/SA.P-J$``R#NH+%KAVLOD=H4I<9@SW[*(0T>EV/8)5'$N&9![K-Y
-M5+J<68(R-TTB=0P4!<-`@(`YVH24$],SF?A"]P#MQG&4&J'">$+W>H09SA%%
-MEI(D"=RA+9;D_;!3.+B\DCG9,]X(,.T@;?'R@6Y,]L94L4_X4N=Z7R(`V4.M
-MPR2W*=S@:@&P(VE5."?KTR1!)F4#LB"-LRBG<B2[L@>YH`$85"!G@'ZIG0<D
-M093'&<#@"4%0AI@D`<`=T#D1F0/N4P!!@#?>>$S8D3*L=2_@!58+)U4MTC6:
-MD3JYVX00'T[YS\I4W`\H9#G"8^`D\M#AZ9^40Y<7'@?.4#@)!R24Q,]FI$ZG
-M$_W5#XW$S'=,UHF(W0DB#DY3R0V29(W0"78)*KU':R`9]D]=^O\`*%&60\1P
-M@,#5`VGNG`:T.,9!30`!#N,I0!N(`5*.B*/G!U5ITC)&<_91N+<D-)[0FJ/D
-M:08`[H]#O+%0QI)@9S]MU`#1+A,Q^RE9'FD$'M'91@MU&-^ZD9N-.,;JHNTM
-M(I@02B]/8H:=1K6``''LB\T=C]D.%FX.EKA@B,$JE<`AT3SPKEXZ"1&?M]53
-M>!J(G`*54-6=H"B/I?MDA2U3DG&.%&]Y=!+H(/W4`N_/@&$B6R'#=)[AJ(P(
-M0-$/@"9303HF0TR/T2:06!I)E*3!$8E-K=K!``;QE`0#9`P8]L(&_(CV*<&0
-M<C.X"9Y]7QB0B">.9.4[OR['L"A<1$`A&_\`(.!.854F-(:?4?A$6AKX[;Y3
-M4G.#,[=RE.!(CNB'=&X.R8F``,)2X',0)"B)).T245(..>=L)B<D`#M`3:M(
-M!=,@)Z1!?F<'_50)K1)!Q(V[J0#3B#F,(6.;KV(Y,%)S@0UHQP54['4<?B,H
-M69)!/M/=)I(AS@8VRAD:P!CNH)<O/ID$<)F$APR?A-JAL2?NE,9P(RJ&=.H\
-M&=I1-$`N<2)4=1\F03_F4=,X$$E`SP-1$D0A$C&(/.RE(:7.<-_?A1D&8&_O
-MRHIWDZ2-1&GE)C@TN!.3^B3=&D-(`_NA,-<X!V"(E$(;S(SV1/:]CAK:1(D>
-MXX0'<B$;WZC@N(C??"*6'")R3_LIVN`S(,(&N$#VY2$G(;DX0IR3[2.R<.DF
-M!!_=(D!@')R?=-/IDD2>R!SAP),>R1Y(SV]D+V_S2V))YE,T:F@`X"J)&2UI
-M'._*1Q$&/<!,(C_JVV28(:<0.5%Z%J)!)W`R5&).!&F4;@9,Y![<*,#!,[[!
-M!)IFG)?Z@8CV0Y`T@C2A@3NG;Z3\<DJB2GOO\Y0S(`(!)[*2E2<^D][`3HR2
-MA>7:9,`;0H&WR`(.(1;;D",8*:)Q)D;F4B#.'8!GL@?+7$'OPDV"_.3.Z6"1
-MM]1E.ULSD2,90$TES#\@83M&3&W=,USA$R0=RG`T@.!WVA%Z$UQ+CB!Q[I.(
-M.`([^R<.EFW/*`DEYDX(@RB:%.8,&/V1MD8R<*,B'`[QPIV#^43D#]D`Y#H.
-MK`Y"*J#$F028DY4?YJN,`=N457!<=I&<H:,]V)X`WA'3#L'^F=OA0@2=AE3!
-MIY=$F-DIH3CJ?K(V/")H$>K/919@P1DJ5^EEO`(G(W]EEI%5(+ISE!4=D<$'
-MO"6OU1Q*:)=G!Y5036G7)VVE76.<+5S1I')=L2J;"00`.5,S\D@C2$^!JAQL
-M('LCH,<&E\@$YCZ(6-UNB7$!2@[-&`-]U*';.2#`CLE3'I$@'O/"8P!G'=%2
-M=J>9^<J*>L#$#$8P@:3DD@J5X<##?Z9)([J(?F_+)B<H'#@203@9P@GU';/9
-M,V&R0,)V9SC&4(=X<'#,R.%&3#0XC$P$3\N(`V^B&GM@XVGO^BL!C!`&GLG)
-M:W!@Q&>9E`#IG<`\2FEN=L?JB%4($Y"!Q#8&1[]TG26`Z<`;=DG0&C[HH0,R
-M<?)Y35&D.(Q!V]T\C5($@#(*C>('(.\*H?`@'O.-T+RUOIW,Y@J:XHU:5.G4
-MJTRT5&ZV3R-I^X4+H+B<Y']T`O(;Z1N.1A*GIDNP2>XE.3J('`Y"6&M^NZ:-
-M!)RYV0"G!``&DB1DH8&7'`,C"8N],ZAP)0._2XB`94%5\NTCGE27)?2+6N8X
-M:A(GLJ\`F)S^ZH8P!`R-Y3G\V)D#^Z0(&,F#O[)IY)A$&T@&08QRF=!:,$3&
-MR<^H0TD$_JHWY]!W^J!W-);!&#NG.EI!U9!VRD0)`G/"%P;$@2(0&!%0.F09
-MG*.F`#^:3O""FT$`D[X^5)1G4!@GL54K1HU8I-!F81><.Q48H]W9&,92\D?X
-MBJ<+=T&!T-,R,:>%1J!DDQ,=RKEW`<?OO$*C5/IDG._RIEVJ-_J&IW(A0OES
-MRXF(X4E0Z7&"@<1,[\DJ`'`E_ORFP=C]?9$1#@9R.Z%_]1`D%$,?R:@WV^4P
-M'IP<<RG@@>Y,X1/]1)!`&T(H6Q'..QW0^^Q]D1/],`X2!<<GY0(F""9]I*=W
-MJW,H`)P08'MF%)HSF2$03&`M(DP,D),+@(!GA"X:6D#/PF&XP280V1:><_\`
-M9,2Z?RC!X1%IRX?=,-R<G&44B#JU`$=\[)Z8]1,!/MC2<^^$FGUS*H36#5J@
-M>PF$\>HC()V2<'!V/ZNZ%WYL#G[J=D$W#=S')'9"-B=C*+,3JG[X2:#C(SW5
-M#M(U>TIB8P"!GE-F<F2.0A(P29RH@HVC?=&PZ03`)G[(2&R`"B$!XAV$#G)S
-MB.4+XU;P-]^4[MB0[9`XXU`^Q"*%QB"79C&4AAV^1^R0,#3L92<3&=T"!VEQ
-MR8PF$AH+73*0D`XG.4M0:X#2-X0/.CC"(.]6/R]X3"`<[I-;#8G<3]43_"=,
-MZAE/,M(C?NDQTMT_E'9(X;D@$HH1(/.T;)VQF<&<E-!UY)`^-U(R0)B1R)R4
-M-&:/3O,>V4[`6QB3[!%I=H+P"&SM*6HZ1'',($\PR(.3@A0P9)VCA&XNG)R<
-MPF,$02,?HB$&XD_7NF@',9[)2=CE%`'LBI#5J&6ZX`&PV48>-7JV`_5/HV@?
-M/ND02Z7?TG[H&@#W._PB@Z@):1'=.)>_)@\^Z%Q/YG8(Y0%@$@N`G$#NDTRU
-MT<\IAB3.3G>4[7"#N0).$47]43.)_1$PB(C$J,8#8@2C9,SM_9-(-@]$`X.4
-M),C`(#433@M]S*&)=&<]D!TA)S^O)4U9H;;AHDSV4%(@`;F.%+6=Z`>$#,$.
-MW]H*8DDDG;M"'S#C2,#L93R3D"2@(0'#5$B813J<6R/="P'RR22!P$S8:^)U
-M3N2I5D2'3,1B=E$^"[_5&YP:6@A19F7#"FE$`8`'.91%IJX$B!RGI_FG)C,!
-M$[\LP?8@JHC@M#OS23W1EQ\L#&IW9"XR?=3T*;=1>/\`,(:%0:6CDR)_LG<0
-MVI^:.=U-TW^&_C!_$BJ]G^&F!)/`SQ*&]=JJ%PHLI@>G0&Q`[+*HR<S!Q$1V
-M2I8,S!WRD_@^W9,Z)W.!R$$SJKV,<`2)PHF:@09&QY1-_*)SPA(&Y,$X0`:A
-MG&V^439))!B-ONF>-1R?9*EI%3+CGA`FEQ<XR/\`[=Y]U')!(P8'U1@M!_*/
-M24-2=0(CZ*APXQ$^\\(9D%HYQ*1<X52[4<\SND\Z3D$1[H'JDBCD`9W49>-,
-MF)V^4]1PT;DD\("XZC'`50@_U#A!)@S.=H.R-[A$0@#@3+>4@=[M3`"3+1&3
-MPA.6:8R,9.Z6`-1.)0D#\VK3\;H?].02[!$D)G3IG4)/[IO=HE(@@29^B:*1
-M/H+7`P=@HW5"`/T`3$Z0=1.=@%%4(+OR[[JAWU'P-1,1@=DP=#L"1L"F`]$$
-M92S)'M`0$[!!!(GE".2?L4A&LD"('=,X1!D%"<B#@(XCW2U9.-\D#,I!HX;`
-M3%IF,=Q[JAG'U`P=7NBU!QC?]4="B^L:@:6-T@N.IP'[\J(D8;R#DSNHFA`,
-MU!L'&P[%2TY:X\Z3E0@@.#IF.94K&D.#OJ51>HU7-I-;)V1^>[N5'2CRQZ47
-MI_PE39__`%9N'D/=#RP$&8Y"H5B7`Q!`5V]U$G<-E4:N9_:%:(B!I^,B5&X0
-M,G<X")Q,EHP.T*-Y.N3E3M">TF`/U2]$&"9A._5IR1"C.-B?A!:Z76MZ-;76
-MIZQ!@1.?<**Y(\USF&&N<2`,0%'J=J&`.9*62XD.^J!9($../E)PSD'YE,XD
-MNDRB+6Z))`)X'"!-B(+A(3THR2<`Y4;?2Z"W[HV^Q@^Z"S>OH5?+\FB:4,AV
-M9U'NH-!D$`CW]DAD`';W2DB1/"!'TGA(3J&4P^#M".1Y8](!)C5R@'5#N8([
-MRF$1W[A,^-A)A)L[`9/97L'3`,^J/9.08^>4(])@G$Y"<OQ''N5`4PTQ!^4$
-MD&=7"1<`-MT,Y)_=`33(R[9,'D$]BF<1H&($YRA82XG`[!!('29&%/\`RBQI
-M8\E_(55N'0I&D<2(SW0'4\P[Q'NA=ZFSR/U3%W])P=\H*C@#(&>Z*<D[G<]^
-M4GET9,'ND'-)!,@'E+C!D($W\@@DGNG]4G'/*;:8&.Y0.X02$EK<<)-/IF<C
-M"%I(<8)!/"(9B.40]$_TPG^1,80L=)V2<1,D2500D$@P!RC`_E[0%&'%QDHV
-MN.?[*`M;M&((_9`7&#Z?NC:^&;Y/":H6^6#MG:=D`L).YB?>$U,AI)+)]I0N
-M($[3[IV#4'`D-Q(0,-\B/E.2-0Y[H6D'?CB40(B/LB[."7&(`^2CDSG([(#&
-M'$Q"9CFAWM^J"0D"=+O_`,(2:0?S8'<(7?D(9/=.TC>4!'_F?&P3M<"P`M)^
-M2A:2?Z))^J<'.PCF4!O@Q`C&TIP&C+2<H:L0#&^$I`P=O9`9?-4FJ3`Q(3L(
-M$P#"C`WU$8[J0;XS/!0('21&_=&'M,G`GOR@I-+\0,]\(@2<@"0@8M:9,D@"
-M)".A3>\:PUQCF$``@G`)[C"ELW%E20.,%`U>)(,[<)FZ/,!R8X2;-2H07'/)
-M35&C9@R-R"LJ:Z?JJ2TQ.P*9CR6^H;8A`6%P&H93M(@B2/A4&7NSI,81:VBD
-MT'NA$@#!":,:AN@DID/J1$QMA7':12TM>2!C3W5>T8&F7#<9A2G2'&-H6:HF
-M$MRTQIY&(2<YIV,F<GNAV;VG8%,[4!L0$"+V!N9DA/3=@'5*9^EK1DAW/`0T
-M8TDR@DU`8!W0X)TR@^1CY10!ZCD%`TF"3$;(>Y(&??=/Z=XD#W3TV4RQQ=4T
-MXD")DJ@=,TX'U!&4G%L@D$GB.4G$EH``B(D(20!I`@2@<N;!&P[90MR<'ZG=
-M"Z)`F)Y2>R'8F3]95#U`"TZG#V0,PZ8$?*0_*3J.-P4.H3D0!PF@3F1(D%!`
-M#?2_=$]K1SO[H"V`3[\(AA^724AEN(":)$G.>4Q`!+I]D(9X$21N8^5(:C?X
-M=M(TV`M.K5SMRH@T22YQ([RHZKPY\3LJ<&J$D[8&<8E1P-8WA&]L1O\`"$M$
-MG]B@*#I/;N$AW.2D[)B?\DQ:6MW0)L3!E+2`X<#;*;=VK:$>F6R3\(A%I`R)
-M!0./H)X]RG.N8:Z!V"`G_J'Q*+L[20"6N`'*4-+IG;@SE+3ODD']$T@;$_=$
-M2!KB3!)PBI2'1D3P2@IO(;@[CDJ1FJ<F>RHO4R`P`MV]T6IO^']4%/5H$3]D
-M_J[G[(BS?.:1O/Q_=4*S@XR($*W7+M6,?14;C\Y&DGY5JHWU&%NJ(^%$7-#I
-MR0.$YVWPAR';@1P0L[#.=,D$IAM,I.P/5L4FB1#<HA\%LM.1WY2IN#!,"8Y`
-M,(>^2(14?+TDO#@Z,0-S[H!D$B3]CA/Z9P))XF4C`.WW3"`[9OP-T!:O5I.(
-M1#,9Y0-`@D'(XSE/I$3O&=T$D9R0,IJD<#`[(7B!`B$=(,\LN/YAPJ'I!U2J
-M*8DEV!">H?5$Q'=0OB=C\IV%LB0?NH%J&`,?7=$7-F2?JHW?G@`QS"?1J@9D
-MJB1L.$EWZ%,XAQP)]X0-P-!DQ[E(@3B4#D09!QP$[BTO_P`/LHR`'01(&Y[)
-M`-@@GX"@,1M(*>`!.('9,`(B-]H2>WU3)^$BCH,+@ZH&ZVL$NCA"!)W.=D`D
-M'00[W1:?^HY]T00T[$B?E+3F9$]D).ET.]/8IC_TNYG=4.W!CT@C8%%B9G[%
-M`X-<R6N.N=CLG#@&`-&D]QRBE`'YMW?JFP!,@_5`!)U%TPGR9$X*"0P693-@
-M?Z(!,Q)E2TFZJ;R)EL&%-!\0`#)[)$2-OL@,GU`PDP&),`GGLB)6Z2,3CE)C
-M!/K='O,J*($@X.^5(&.))B1SA-B2"!I$Y358!R(E#)`.R%[P70W[=D4G#TG&
-M90AI&3F4G>QWW":(W(*(-K!L-SW3U"<9P$-*9!=.$_J@DG!]]U03HTB1*%D!
-MV3RA;/<3\IVM($3R@-S9'SC*?3&<GV0L<>2=T\S)XVC=`8$"03GW1`B3.2>5
-M%Z_\7UE$9`$\\I%&X"(+H[(@V!+=O9!,M&04B3.`?NH#C5MN4[!G<?"$O=$#
-MA%ZM.K<JFSN:22<>T)P(;.#W]D`+RB),[[Y]BH!((!$<;RI`T#^J9$!"T@5`
-M73],HF/=,Y!^5*IV"&^P1.!@:1]45NUU6HUC07%YC9=5XA\,ML^@T+NWU.>/
-M^;G8(;<B\1ZHDE`]K33&"'3O*L7`)I``[;X4,$#)P@4X$[IZ;7.J0`F)$!HG
-MZE3V[?+]7/)02.>Z-,$1V3=I](*4R[5!^H2?CC(S,+*E$.YQ\IW`SB<[RDZH
-M=S$H"\:).)[H",QB8W[)I+1)Y[(=8/!TQPG-22TP2`J%F#W"9@)9'*1=+>\E
-M(&,\(!J-,B3CVV3M\H:PXEQ/Y<PA+FEI$X/ZI:R0#P/9`M3G-+-6V8"$F3I)
-M4C'28'I("C>\-&"#)[H`@DZM0'UW4FC^5)W/*`N;,@Q.QA25GD4FM+@0-E1$
-MT%(^HYA,YS8$G[%#4>W5G,>Z`J0+WP2T?*!P+1GGA"7Q//NB#M3I=$#N@%TD
-MQ!RG:USCI`)+N(3!X)[?&ZBJU@`()U`]U4*N2'Z9/V43_>$^H&3,<E,2#@DY
-M0.<F(,IR0&['*#4.47HF0!'MRJA-<2(X*1,E,7``CGLEJR<J!Y($<(0X@1Q\
-MI@8D).TM;W11&/H4],M#7`_1`(<S!QV2;!WF408(SC(0F1.(GE*!,ZM^$8-$
-M4OR&9R^2@%D-/$?*FI.=,PK_`(;O^GV;WU+KIS;MQ$4W>8YI8?V(^BJA[#<$
-MAH:'&8_LJBRS\H_-]"G^CONI*8.@:=D\.[JFCU]&K))!6=<?.RM7;W!SLM!&
-M?=4:CP!)Q&.RS5#4<<`"04#G21.4GO<&P,#V35`=>D#;.>R(:);)D92TYAQ(
-MA!K]&DXGE.^IZ]1.Z!R!,.)PF<9,R!\IB[N)^J)Q@B0W81D($^7.DD.)RF;^
-M:)@\04P))P!/$[):])!/?=%'`WGZ)W21Q'8*.G.HD;GNB:^#B`"$B#@D`0/E
-M)K3&'8Y0M?`!$%*F_.VRI$KJ!IL8\/:0\2,R1F,J-ATY_1,2.3GY3/?+G.TY
-M*BG`DSRI,MIZ=,3O[J/5&",I.>"W5'^B"322V<9V*'!=`R1^J8&<B&CV2+A#
-M06&>2/ZD0[V@B&#$X3P]N)`U;CN@U0Z2)^4J;QKEPD?/*`J8$8W3G.^.R&1C
-MD#9,7("JZ]6EV^V4I]6T=RH^W/'RGUB`!L<(I'7$YSRG+8XF,X*'40P`#,I%
-M[33].LCW0&?R`G?A.]L8&2>R%C@21$QV3Z@1IB/D[(&>),SO[I>Q$)B]H<1.
-MV)28<@%THAR8;M\J2A7?1:XL.7")W46IH:0D'M+<`Y0&T^H%PD'=&`"2"0!\
-MH&N!SF2,E.UX+>/HBBI-8714<=/[(]88``R)P8*B#MO5]$S'%I)X/?\`[()G
-M?E(#<_J@(AA`S[HO^:XBF)`R8[=U%JP1(A`[LNVVX3M:#]DVK.0!'*9KP'D[
-M(@H),`E.[:(@[Y3,(U9C&-)2>9S@1P4X4F3I):)C,)__`,4)VN&DQPA9$:9B
-M>$T'`R2'8^$;&SZ9^J'>=(,?ME%OVA`U,,#<C?ORIJ=,:H,=P%'`<^1D=R-E
-M*P@-G>4`09+@G>`3@$?(1@M!)(WY"3CB8&>4#.C@P1S")T!QS(3-=C2(SR43
-ML.:"=N`B!,1)<E'JD1!/T1:(/K*38+ITF!^B+#,<!M@\93LT3)=D;!$Q[F&6
-MN(/',J%I&F!N?E1IJ^%7@=<H/<]K!3>"3JA>B^);RA4Z'>U650PD"F`>?9>5
-M,:0[21!"MUJ]>G;MM:CB&-,D'!!*K-G*.H3Y<;25!+M1G96*CFU&@-!$;F=U
-M#6;MF)X470:;"]_J,0%9!ETM<"/=10&MW$A'Z2"1.,PI06HM9I+M^YPDYVI"
-M-(W)SPDV)&!CLHIH<3))_P`DY=-/1((!^J9^_?5]4[9PUS`9._=4`TP,#;A*
-M1K./H$;O*#X9VV/=`"0\@8/)0(@@0D-3H!2V.9(F/A!L3R$!8+#$2-\;H9(S
-MJR.`E`TQ.^Z1;Z?3QA`F/(!=@\Y3$MEWOLF([;'VW0D@$1N3,!4.T@C+FYX3
-MO=#(:Z1V0.$,G8<ISH`B2>WL$`Y_J'RFT@&>QV2<3'YLM3``3!^$#$$3$)BZ
-M&C$\)-$P(.4#W9[J@G8+CO/"K/WVS\J0R#O]"FT:<@C=$!$X''*3\")`"+2!
-M_6)[[(3ZAGO"!,@1Z8)[A(F#@#(^4Y$@-#I*1WF2/:4`N/K&!/LGT`.$I.)!
-M`;N>$Y;@B9A$[",_W3$>D0#*(&"?9,V3OP@30`22#^R0`DX3_P!)DI$``.(P
-M?;*='!I^<^Z><P)^I3:8.K_91.R9:,#.4":[,B1*GHRYP)!+?E!1`#@:@+AR
-M&F%+0:21)`GVV6D:%N'&BTAKG#O*/2__`.-WW3TZ)+!,CZE/Y/N?N5>$X5+W
-M0U\`&!LXB/T5&IVP<[;<J]>Z=;HG'?95:H<6N&J`-_4LU5>J6R=(`GA`UPU3
-MSP0C<,'T_=!I,@$1/"BE-,$:@2W8B>4PC2X:=_N$B#IEP&<PA:(+N/E1"=#6
-M:MP.$HT[Y]T0$&/NF;)!Q'P531_26@#9-@.U$Q[!.#)R,PA=F,GMOM_N4#\2
-M`#/"+2W48!RDUN9F<[SNG9^4`JA3+6M+6C3LAV<=Q"*H/5#<M]\(1EIWX4!&
-M)&F(.Z9X:#N93@&,!$]K#&)PAI&V0?T@IS);,SRAW=O`E'`#9VT^Z!-C2,`#
-MW0L#6N]61S[HR"!O^9"\^H``GZH$/RR8R=DOVC"+27F2Z"A].@"<E`XV`!W[
-MI$RR!$!/R0"/=,\0W,YY0`"9'Z)G#(AWM\IR,.)&>/9(#U`SL4#M#G"29(]\
-MH2(@29/8HV-BGJ.T[IG#TG=`-,0W&?:43@Z"1J,')3.PPC^KY39`]C@^Z!P6
-MP<;^Z;MW[IS,$AWU*0F2<!`V8G`A.W$D1E.(CY2<X&)@1&R!Q,D.(QE.);C8
-M'!GA"UL9))X1G\QB806ZUG:MZ+1O67M-]>H]S7VP:060<'WD*FP;C'R1*.LW
-M)#H!&9!0-(:XG3(CN@)T$0/J!RBTC6886G_#RHX!_-()W2)@S/\`F$!O>3F(
-MDS`$(#(/'RG:9.2?<)%OTR@1W_1$"X/:0)0T\D_NB+=9@`YW0+(G5B0G/YRX
-M#XW3D:J<$NG?;W2U$$S!&^/KR@31+-0(D',82$:-I,X"=K26''Z[IP(=!=C;
-M<_Y(IQ/L9C*)C9:!)SPE,8TS/;9/2:X#L9F5=(3@X``#'"-S8.7<*32UU*)R
-M.R'2';MF,RHIG4R,$1&^=D_I`&,C*DIM+O:<H7:FNVV32&(UAA=.>4=4`50U
-MC1,3/=,,.D`X_J*>OZB=R1G]%+RL5WODZ1W&,B$X<YIP9U[R=T[V&#J.V,('
-M-B()E72K%!Q:&N:8TYG?,JQ>75>_O*EY=NFI4RX@``G[*I1IR#@>YE2-_P"8
-M""94T@2[33,`R!A/2.LZS@#9-<5'U:HF2[8'X&%)IAH:(]/92KHC(VF>X128
-M$GU>R%V'`<\II.DP"H$]TOB?5VV2<9&J3'9-!+06DB3ND`YQ)B>#[JD+5!!^
-MIRDQVH@.<1[IIC9N/W2&",`DG<H:,20^03.^2F<0(#9^4X):`Z9B2<80@<DH
-ML$YP#1!SRD#G\T=D,``:O@2?9)\AL''8]T$]Y1J4"P/+':FBH-+@<'/W4#7D
-MR282<6C`,%VW*$D-)@&)'/*0.7G43P/9#K<1,C)W'*;?;[IL#DXW5#Z\:=1S
-MW3/)U#)CL=@F$N<&EPR([H2TAK@?J@(%T8=]$Y>7-`D1*3,?F<)2):_!@>RJ
-M&&,Q@;J#S`YP=ICV5BXKTS0TM;\E5?1,D'XE('J/$Q(@\!(U(;&H#ZIBT`3]
-M0AC$%TJAR\E\"#'.R;4!L,X3`AN(XR4(C)@[J`G.)&`W`^$['2\@C(&(*9I@
-M3!/RG8UFF9W1`EV9D8V2EQ=O*8MGMVW3Y$@1/[H'UX2:X3!/W3``M^".4VSA
-MJ]0]T!DB3`QLF>['.>R;TZ@0=^4PWD@F>`$#ZL1!@29[(FN(//P90$3,@0>"
-MEIT^D9CD(B4.'((CWW4U")]IG95F07'2I:8`]6Y$*PZ:U!X=1:9C'9'J_P"K
-M]%%;,8Z@USG"2I/*I_X@IJ)Q^%>\@2,3[\*G4]3L`EQ=/*O7H&HXP.9W56A7
-M=;W(JM]4;`JU52K&DP#W`0/!TC(R.>%(]TDDF0=T!,NF?NH!.^<@X3<;P2G&
-M"#''=.W2=6K&,(&+L'`SW2&_"8DN@0!'LF9@QD#V0.#B0V9X1,:PYTY/NASP
-M"DW?)_1!)`!@SGF4U,G3S]$1!+@&`D^PDH6983G"J'):3GYW2DS\(=68(&$1
-MP=OD%%*8$9R>$[SO'9,TPX#VYY0D^QR@7],$E/3U!TZL^R8`:9RDT9,X]T03
-MR"P;GC!W34R2X8^Z1([8Y2#@#Z.$4XG9VR0<3)SE)I!$$`9V'"0/](D"5`[7
-M'5+C!'LE4<7.`WX3&/,+@/NE4@B6SODH!;D3J/.R<[S((Y2&G5D3/,I#\\EV
-M_(0+48F1":>=H/=.XX/J@H9&0#]^4#D[N)D\IB&D>K<G$#"$D$#;4B=+J(]4
-M0<!`G:M\"4AG,#'*%ID;\(VCTZ?N@8.`YCLBWR(E,6@-[IP"0`#GL$#M/JP?
-MHB+BT1CV0AL-D;!*,R1\90'J!!).3ND"-67`-Y($H<EI$0$JA:'P!I;VF4$E
-M4L:]S*1+F#\KR()'PHBWTZL0A!!/:/='Z=1AVH#F$#`RZ=S[(R=3VAVW.5&"
-M-1D[(J=33K#`(<()*`B8,`9"=A@!TG[H9D?YI.R`$$K"?*F/9)KA,P$$^C3/
-M.#E$T`28P,*@Z>\3G[),P@88$"3^RD8)]_K*`F#\HTJ:@TEQ#),]LRE86]6X
-MJM928YQ=@87J/X=?A_YY9<WU.2=@6[)&<L_5Q'2^@WE[6:VC;N(//^PNQM/P
-MZJFS];8=`V^5[!TGPO:VM`-IT6-@1`"U&=+9Y<:`I<Y.G*Y99/G6^\$7MLXM
-M;2+O=/TWP'U"X`=4HD-'?NOHJGT&E4?E@*OV_0*#:8_EA3WA[9/F^\\`WS&%
-MS:9)VC"I6O@7JE1QFB6^T[+ZAJ]!HZ/RC[*J[H%!ACRQE/>+,LX\!L_PUJNM
-M]=1V>T#O\KG_`!7X3J=(`<8=G;_9]U]']4MF6EN8;@+R[Q9:U>J=<IT?+AC3
-M^8+/OOX8V[WMYYT_PU=W-EY[:1B"29QNL.^M7VU=S'M(B0%](])Z)2I=)#?+
-M`;IB(7E/XM]&IVMX:E,0#N`KN6-8YW;SZBW2#G!*,["#./LB<'#,R)Y4=36U
-MP(R#NHZA<[47$G/)2],2TP(2(Q+DS<M```[*J>F?3VSLDT""9,'L4+02=.T=
-MDX.D$9^2@:63J:=^)3/#0,'/'LF<(,`3'ND[6!$R`-]T41_(,XA,T`MXP/[I
-M9&(!`0C83"H<Y$'Z)$-!`)GVG`2>.8$'CLE3INU"/LIMJ8VG:W40,8F$VG!/
-M;:5.VVJ.W!RI_P"#TB"TR>W98]X[3]/E5(0[D8'"8@-(@Y[=LJ^RS#:8)$_!
-MW41LW;_V5F<,OTV<4F:-0SGLB>9=C,;'LC?;5&Y:PP.0=_=1.I.#B-,'?LM2
-MQQN&4-Z`T$S*CJN)>&C')37))=C!43B0)'9:C(G!L8@@\(2T`P<1W3-,Y<,>
-MQ2<Z`<[X506ML@$`0/H@IMR`?V0@SG(5[I5A5O*=>HQ]%C:-,N.MX;/L)W*@
-MID8D&$.!DC/:4[QB3./="#O\;2G_`%#@1.?OA$T&1/*!L3`XW`*<R&X_?"*$
-M@D$=_NEB),]DP(U29B$1AS2[,#W1#``D@\)VC&`@!DD*6UKU+>X;6HF',Y(!
-M_0_*&T9;G&VR+&C^W=-J).)!/9-+L$\]R@?2"Z&R`=I2:1ORFGN8^B=OYL">
-M4!TIF6_*E:,R-Q^JB;F"7P/A2TR"<2"#NK$:-!O\H8_4H]/M^I0VU1IH-+G-
-MGW"/73_QM^RNS:.[@SJ='SF51KENJ`(^JNWS0'&#,?,*C5B-QV2FD3C!P/NA
-M<0'3(1.D849(Y60GYV"8@!^EY"9GYM]CLGJM(JG5AWNBFEL@!(#.0CI/%-^L
-ML94'(=,(6[B-CW0(!NN#D)-_-$8&Z;!?,?5$&P/<Y]D06H:P`Z('=(G,QN4)
-M(VREZ1!C94.8)G^Z(!I.K5D[H6@'(3@%K0`,*!G$:O44B!$SONAJ`.=$A(M:
-MP01QO*H(8R4XTQM/U3AK74\[\A,2'1/`C`"&BALR"1&92(R8_P`D/]$$_HG:
-MV&]OE`4;;DI1G?U!"<`:1$_5,P'.,J`OZN\)$M+3DI?TEO$]T,$[H";$3.X3
-MC?<;(3\Q]4MAC[RJ=$6P2-0W^Z%PTG<=MD3@0W>.Y*`[$%Q^94-$./5&=TY]
-M6"YL<Y2HZ)/F:M,?TF,IFQH@$S\IM3@\DY'9&V`)P2HHQV/>43>8)RB#P7',
-M`I,,`_XB<&4V(@G*$>DY!)E!(UKC@[)SO&J!W(0M#B<S":3QF-I5!-:[:-^R
-M8[P8,)A)G@A(MG<[<HIW-!P0DT;`1!00`1,_*-HDF'8^Z&R>,Z0-]Y3M;!$P
-MA=(P(3`N/930D='E9F>R3!Z)(0N)P)Y1ET",#LJ'@AHC:.Z=F6\Y]T+"Z2.%
-M)1:[2=O9$%3:&-V$GDJS86M6XJMI,:7.<<>ZKTR3Z0)/<3*]#_"+PU4O+IMW
-M49+`9`(/^2,Y9>LVZW\*_`=O2M67-S3#ZKA.1M^B]8Z+T^G;L#13`^%'X7Z>
-M*5!C-,8[+H*-L)S"YY9;<9-\T-.V!`X/LK5&U!&6Y5FVH>D<*W3I:6KFZ2*=
-MO;!KXC!5YM$%L$;?JCI4I,E6649XW4VU%-U$`:0%!7MQH/9:IH]A@J&K2$?L
-MAIS'4^GBLTC.?9<S6\/4OXT/#?RG>%Z+7MY9$96==V6=7]E=LW%S->W%.V@!
-M>7?BY8&O:/>`1&Y"]BZE2#&$'8;KS+\5*M)G3*PQLI+I9'@]]3%.I$[<*M5'
-MI;DS[*U?5'/JN(V!RJ[W=FQV7:.J"7:I:<)Y,1@E.3#C.4.2=DL4XYVQ@X2@
-M%N9)]MD+I`PW"0=N8,G$(0Q(B-N\),#G#TR>PWE6;*SK5ZA#*9"V^G]'#-+J
-MH),<KGY/+CCV]?Z?]'GYNIPPJ5K7J$0U7*72:P$.<#';9=*VVI,8T-:,(W4Q
-M@:<+RY?J;>GU?'_Y>,_LYUG23H]69[*Q;],8QTP#P!V6Z*=,4<MR=D+:3=1V
-M6+YK7JP_1>/'J,T68G#1",6L[;K1TM),`)F@%T8F%CWKK^S)\9K[2&@C'OW0
-M&W@"1[[\K7T^DN@`*&JP.PWZ*S-,O#BQZMOI=(;+NTJI6L0]Q!$'B.5N5:32
-M)(4%1AG`77'-YL_T\O<<]<=-)+LQ*IUNG5&9'J75>6W4<`_51.H!P@M77'S7
-MZ\?D_0XWF.3-N]H/I46DY#1F5TEQ;,)TN;LJ-S:-)D-A=\?)*\/D_27'IC:3
-MO@\PCHO<UXTG'(G=6*UK!D;J$L+"?3D"#(727;RW"X]ANG:ZAT1!V#0H7ZHS
-MN.4;AR1`[$IMR&@B!WX59,R0(B$JC3H!@P=O=$X`#?[%,2"`V8[1B%$T$;&.
-M$+7$"!,?LI'L+'%A,GF#,H'QJW0#,&`#)1&"/3(^J=I9`,F1M"$`$R#E`[3!
-M@B2@$]RI-W9D]T,2^3A`GOU&3GW2:[)U`3\)/P9DIZ?Y/S$]C.R`Z8!$@?JI
-MZ,3"B:`UL$`2I*>F>%J(T:+Z8I`&E/\`^)%YE/\`^'_^=/1T>4/[(_0FDVCN
-MR&/CN=E1KM+GX`#5=O<./:?LJ=?6`!CVREYK2*N"&Y:-/=0`1O!5BYK&I3:S
-M2T>6W3@;_*KDSF!\+*[`\`"<]R$CDYA.7&#(&4P=),`(A^Y`S^Z1)!G0/A,=
-M]Q\)&#C5&$#P#Z2V9X",`!LM)'_2=T#7%K@1N<R41<XF9SQ*!C.F(,_"<-);
-M._(2#AF1/]DYB=A@<(A-(TSRD6D`&##ML)R=+<_IRDYSB!,EHVRJI.#1I.#(
-MRFCU2X9X[)$MU#&W"=S@1!;[94`2)&"B;@Q&1R2CMWTZ-4.=3#\'!)$'O]$S
-MSK)+B23V0`1F0#_FB:8;MGB4TM!RG=AOI=/?*H9QSDDG=,/4,XSR44EID8CN
-MFJ/UO+XR=XP$#[@;F#'T0N#0?E.UPTG)U<)G$8).5.@PTQ/Z)R<8.#PFF`3*
-M?TDS.$#/`QZOHA/IR8^Z,D1!^Z9SN`90"T[%I_5(CG4$<&20<\?"0'HG(A`!
-MCO/N$1+9].P3-!,G)^B,$;($((D&<;%-I([81,AN9G.R<]S'N@'$#)2:6@GD
-M)CM&"=Y2TS)]\%-!.:0V3LG;H(]3@R!RF</1._&H)R&@X/V"`>#,2B;!SB`/
-MNF8-6J8QF$YTGL([H%)B"A8)SC")FF9)D>R1&"-`^Z!FZ2!,(V#!C9`S)C`"
-MDIZ<D!`J>)&H`*:@T:B'\;94+&@G8#WV5FDT;8'U07NAV#[J]ITJ8U&HZ.Z^
-MCOPPZ"VRZ328&@$-$XB5X_\`@OTT777FU32U"G]>R^DO#EJVG;LP-EC*Z<L^
-M;IJ]+M]+0TC;W6@RB0Z>!W0VS0T",?"O-8'-Y*YTD*W;F8PK0IEPD;)K.E(R
-MKK&%K0UH$$9*EK2O18(^%<HTY;@<(64X*LTQZ/[J-:1!DQ*"I1!G4"K(:/CV
-M3$`^R&F?5I`">W"IW5'!ANZUJS`!)^%4N*;2,$PAIRW7*.JF6E>7?B%TFI>T
-MJE!LC5B3E>S=3H-=3,#9>=>-*#VO<ZEN#V4MXX23EXZS\-R\ZGW&_LJ/B?P$
-M+&U%6WJ%[HV*ZSJMWX@H5GOI4'>4WDA8W4^MUG4]%VUTQDA<9Y?)/CO/'OJO
-M-Z]I5H.TU&$9@X4-1@$P?ONO0NFVEEUB62))W6%XR\+W/3'&K2!=3<=X.%Z,
-M?-+=4]+O3EG#T0>5+:TV.J,&K$[!.:,#U'`XA36+:0K!I#H_ISRM7+AZ,/!K
-M*>SI^AVM(46QDE:1MVZ9)CYV6?TJHUE-K08+1F<J[4NB[!(@]E\O/?L_5^&8
-MS"2#K:1#0&^G$@;J!\<?HC+@3OOOVA`/S;Q!VE9D=./@BW@N.`AT@$S@QW1S
-MQJ0%PU$`[JZ2TU(@$SOV3XU;X0GY3L.8_NK(S:(&<$X0`28F?JCI^IV`#/NI
-M&-(,N(CNAPKU&X.3*K/;+B3^ZON#"X2H:M,3(:?E:QK&6*F*8`)X*%U,:O2,
-MJT6:A(S\H"P`8'ZK<KE<5%],&2,=U!6IM..ZT7MEN,2H33!DQ,+4R<<O&RJE
-ML)G2/B54NK=K3J#9G"V31+@8;!*KU:+7&'M,QN,+MCF\OD_3RL"M99]+8',E
-M4Z]%S,1)/*Z!U,ZC#3'=05*#"TRPN]EVGD>#R?I9\8);D$@X]DM.T_<K3JVK
-M"8S`56M;N!,"0NLRV\>?BN*N0-+3DGDJ,@&9;]U+5:1(((`P(49;%,N&\K3E
-MK0?2#@(FMD3^Q0AI,G^Z)K=HDQP@0`/TX2.()!`*6-X..4BW$Y^VR`<$R?OE
-M'#=>MS0?;9#_`%R<_=2>HC),#[HA4V@O`!&3B2K+:3J54L?^8;P0?V5=@+7X
-M&_<*9H((F9[+2::-$GRADHI/<IJ!FBTYVY1K)PCO8#03$DP1'"IO+7#3'&X*
-MNWAET-[[]U1J@9S@SRK5TKN.#&^V2FU`,DP>$50P)(!08#)].4`!P:9W2,'(
-M@?"1;!QM"1T[&8X4"F>('LD73N,\)$2<"$@UL[[=@AH[@W!&4\@`2AF,-$=D
-M0((/I*!1/'PGJ`#&_NAV`(^ONB@3,Q`RD*6F(S[%,(C!V1`@$1&4(.8T[?J@
-M)P&#P3PDZ"9@;X3$0X#(3;-R1WA`W<GOM"DHEC6G6P/!$"9$'OA"=)<3D3RD
-M6>G5M&=^(0(PYT`&#R2F`@S(ENV)3P,D&1$(20?2#))A`[LM.WP.4M+3`#ON
-MD/T30"[&)0.1,YVRFB&#YP$@")$_F2C3SE#1')P/CLG@;;)FQL#LG9&,F!C?
-M=`G&#!,@]D,>WU3Z(&K,3"8?E(!S*!P($Y^=TX`(._<Y0G4($F-\I`$`'7(]
-MR@=N''2GTX!.24IWGD=TL:B03E`^F'1V]TSH+AJP.4A&K#DQ'O\`=`FALP#C
-MNC/I(@QVA1P6SZH@I\H$<@R[Z]TV8+2222D8!B/HGAH;((<>QP`@;40R`1ZA
-MF0EN`(R,$IB"!NB:-I/&R!B"#N91-P"<D)1!C]$,'43DRBK8J6W_``KRO()N
-M/,U"J''#8_+'SR@#G"WT;MU3]5".YW^45/5,;3V4T@F`AVX([>ZN6=)U6JUC
-M#)<8WA4QJ#N-UT/@6W;5Z_:-J:2USQ/;<*I7M7X)>'/X/IE*K48-=4!Q/.P]
-ME[#TVDQE!HD;!<GX2ITZ-A2T@"`/V746=4'2&F5QSRY<<8U:#"2(,1NM&UI2
-M`9,'=4^FM$!QC9:UM3!`@X66XEITVC:?96*;?Y1)Q'"&G3B".%(3(`;V4K41
-M'+H!*FHR8$Y]T-.D7.!*LTF!A$Y[*:5&01$HFM&G5^ZE=3!$\)FLTM@YE%0U
-M&F/95+FG(GLK]8D^F8,*A>`G`A+1F7X]!,?*Y?JMHRO6ES!`.5T=_4+9!&.Z
-MQ+BH"7$B(&%C*FF/UNWL'VIM/+:`X:0LNX_":UZ_T\MH-(J.&".Z@N:[W^)M
-M)R`?[KU#\,NMT+6[;0K.&1&5Y/W+A=UWF&^GR?XZ\+=;_#SQ2VUNVO;2<[4U
-MYF")_P!%V'2[=OB7PT0&@E[(F)S"]6_\9%C8=:\(_P`51:UU>V]0<W>,KRK\
-M`:NJU?:U#,9S\#"WGG,M91N;T\?\7]/N.D=<K65=NG0XP8W$[K*MWO-0.&8]
-MEZG_`.(GI/\`_<MO6IL'\RG!('N5QW3^FM92:"UTC,%>F>7&8O3X?#Y//=AZ
-M?4K-HB08]E>I:B(_0\*:VM<#TG'SA7&VA#@"V9]EY,LY:^]XO'<<=519J),Y
-M/"-I>(EH6M;]-J.:!Y#B79P%J],\*W-=H?HT@;:@LSGIK/R8X3=KE1KW@Y2#
-M:T?E.>5WMGX.`<#6=,C(6W;>%K%E-H-%KL025VQ\-KP^7_T?'A>.7DP9<$C0
-MUP=QA6Z'2NHU73Y+W%QDSRO6*/ARRI^H4F`]EHVUE;,9'EB`NV/@GVO'Y/\`
-MUO\`\QY78^&.IU&RYND^ZL,\)W^DAQ:#[+U&E;T22)$=D?ETI(C$+7[.#SW_
-M`-3S?'EG_E&]TE^H'YW0N\)7;F>H@$GY7J-S3IM&1QM*K-8P.VW[J_LX)_\`
-M4\SR^X\*7S#Z:<@'$*"MX:OV"32,[X7K;J3'#\L(76M$M]7V3]C%9_ZOE^O%
-M;SI=W1,&@<;JE5H.#9#")]E[7==.MZH(-,&5F77A^S>Z/*;]E+X)\KMC_P"K
-M_P#J/'GM(RX`905*(\LN*]4OO"-BYN*<$]ES_6/"#X)MS_\`A_V%F^'+X[X_
-M^CXLN+PX"XI2,CN5"6MC@SA=+?\`AJ^I./\`+)![2L6YLJM#4'TG-+=Y!_R4
-M]<HZ_N89\RLNK3(<9`(G_94+V!S",Z09VW5RX$R"9C8*.F*8.W$K<KAGC*SZ
-MELTTY,0J-Q0(>0&Q[+<K,!(`[[J"K2!F``%N9O-Y/!*PJP+7Z2/RA,UWM"TK
-MRW#Q``(6?6IAE2(D3DE=L<MO%Y/'<48@R<X1;'<QR$5%K#J#Z@;,^J#PA<`#
-M`(`[K3D$:2,?:=U+2<`-R%&#)U'/8(@&F26^V#$%5!-<"[.2IJ)$ZR"H`&AH
-M..>5-0@$`^^%4:M`32:0#$(M+O\`"5!39%,>MR+1_P!;E4W"OC,@M.,22>ZI
-M5#L#B`K=WO+HDA4J@:79'ZK-:1O.O/W05`2X"!`'Z(X(,EP@CNHWY(P84.@N
-M@'WW3$F(Y3R0[OREJ:701`Y0"Z0\&1!Q*41#6QMV3.,NW.F4@<9&=D#_`&WV
-M*D86B3@8Q$84<B(V")D;DY0*,X_[(GY=)B-I":9($#Z;)YR1O"(?!`@2`>Z9
-MPTD2/LG!YS&WPD\!I<6@ELX*<*%HB=]L>Z?!+2XR(C'"9I/`YW31!COE`1]+
-M8WD\X2<"1Q`.R$EI@`00<E.8\LG(C]4"<T2#L/;)A*)',SOLF)$B),^R0(B?
-MR^R!#`F3V3.$.)S]4Y,C`3#!GWD\H''S@#;NG<6N@1D[(2<D@C=,XP`<24"A
-MP+FDG)@A24VDX+@,')/*!I!;O]43G"=P@3XDC;/="V2T2!ON4Y$@"4P,-Y^?
-M9`S7=C(2+A,$[8,I2#J[>Q31Z<9`]T$A@S,8&$FY(`CZ(0!(V$[3.?A%)C?<
-M(O18#?HG`+6->Z(?C[(=Q^B=Q,MD^PE$,[5P<#DIH)GDI5!#N/@)-'K$.F$!
-M.;I9)<"(G!W48G5O$G8HW3DNV03!11D-T$`@&$@[88QN"DT"&S@E*/1C;LH@
-M00\P=OA&=R!C.)0T\&(W3D'5![JZ#N/!,(V.B21GN$+0TF"G.V=D!TX)U#E;
-MGA&N+?KEO6C#'`[_``L*1O'T6ATUPIUF/R8,YPI87E]0>$KYMQTN@YCL.`./
-M@+LNBTW5-,X$;]UY5^"5S5O^ET0=F`"3/LO9NA6^BFS&?V7&SEQC7Z;2AH)X
-M[+5M@T&.V%2M6P,<]U;HNR,@?59;BU(:TYGZI4A+O;E1.S$!3VPVD*?6DU)H
-M&)4C&2-X2:T1Q,(I:,3[?"H<#2()F#RF(G`10#A,[TLD&(10.I>C5&V.RH7[
-MM+'9V"MW-7T?FC'?=9=\^=0=RH.8\27[:3RW(E4NG!UY(:/S<!0>--+:X(=R
-MH/#W6:-D]_G/`U#!*\N>?K77'';,\16'\'U`U?ZAF"LZTZQ4M[X.UF0Y:/C?
-MK-"ZJZZ+A`9!(^JXVR+ZO4`."9)7&WV:ZKM?%]Z>I^&JE*H20ZGM]%P'X:6M
-M>RZQ7-++02/U"[#J=84^D>6#)+8CZ*CX2LC1I5*C6$N>2DWKUC4NG+?B]KO.
-MJT61EC>WN5@]'Z#>73FZ:+HVD@KTR[\/_P`=U'^)JTR2T1!"UK#HK+>D`RFU
-MH[0N^'AM_L]W_P!#'PX3'"<N(Z1X.>S2^X/P`%NT/"UK3A[J;3\C_1=2VTEA
-M):.P3_P[BT""N^/AQG.GES_]'RY_63;]%MFL;I8W`X"M4[)M.G#6A:5M;9DE
-M7&6[-.6B1NNDQD>7+S99=USKK5_F3"E%M4$`K;-!NK`1?PX+IC;E:<K:QJMF
-MXM,#)0T;,S&X*WFVX.XD0B-NP"=@K-);6&VR.HN.(X4IL<2(@96KY0+@0%.R
-MCZ0`?HJCGZE@7G/"B_@M.=,KI'T1,!JBJV[7$@A6)ISC[>IO^BCKVSRXZ9A=
-M#Y!DB(X0U;<#>)A!S+J%5C9(.$#608(GE=)5M6.'TX5.I9-+L(;8E1C2[2!^
-MJ@N*`$P-^ZV+NPT9`YW55]!PG5'=-&V'5M&5'9:(&=EG]5Z!95J;@ZBP`C<!
-M=$ZFW7@?9!68'$`-SLKTLRL>:]:\#TGS4HXGC_87-=7\)7EHPN:USF^R]IK6
-M\#+1GV52O9TJK-+F@@[@J62]QVQ_4YX_7@%6UK47N\QKA'>5#7T"F8&W=>S=
-M?\,6EXPN--K701@;K@O$_@^ZM];Z#"?CLLWP[YCUX?K9>*XQ_J!=V&RJWE(.
-M;@;[+4NK*O;^FJTMA4[ILM(VCCNL3<KKGK/';*:`TGV3M<`UX+=3G#!).$SP
-M?,Q(0O'^&?HN[YUT%FG6(!$^Z,;0),(8(@9]RB.#Z096D$&QG)_93T`T/@F(
-M&R@!AAD%2TCD>J!SA-)PTZ6D4P"[CN44L_Q_J5%3<\,`#G$!/KJ=W*^IN%>;
-M%Q<X=O=4ZK6A\R3"MWC1F-]U2JD`ZHRLUI&2!(^JC<8GG^Z-T:/?Y0R`T&#*
-M:0!+3S!CE,=,X,]T[FGG,IN<?6"H!D0`""C$%\'O!S"9TMXWY*$9@@GZ(IW`
-M`;_*3?I'$)-TDAIU1.1,)V!@>700R<2J@VMP,GV[)%PWD`QLE(V$I.;F"443
-M1C3(E#4WXSPGW.!OB4+L`0B':1_LIY'F#\H'OE`W?:/=.!P<\H=E4TS$G*6)
-MTB3!W)0U`9B1&Z<!LS(C_"$#X$C8>R3_`$`01!V*$@%WM[2A($3!440+8DP>
-M_P`)-]7'LFW$@@$<).:X$#(,3"(<Q`,)C@R3LD1D28"9X$;P@0@-C5&K>$3=
-MI]D.B&CU;IZ8/.?9%.W2'1$F.4Y'9XD\H""`08![RA`)[0/=!+H`HZB]KB3^
-M4`RFQIB!\%#"<?E`+C/(*0.T3`+H]Y1:<8.$&[MOH"GWF(&(D(:2`L-/3$.D
-MYE"3G(VRG8)S*C=^;V"`B`8[\IM()X)2.`3,?W3%I:[5)&-R@,8;G890.:"[
-M`]TXUQC>3E-SEKI*`FQHQCB>R>(&#N4)V`[CE.X>GCY"!VCU2,]D[@#.\I@)
-M`EQ(`[IVF!/*(36_U"!",@:-6!/"C:7-.F)&$[LY&P/*`P&^V=RM"P8YSF@3
-M/8+.8'<NTQ^JT.CG_P!2UI."X82CZ5_`*Q90Z!0)`EPF3]%Z]8M](`_1>7_@
-MY58WHMLT<,'[!>G=/K#2#.ZY95QQC2HXW^ZN4F8&RIT'<\*U3<(X6'18IM$[
-M^RLT0`/T56F9((^JMTHP9V14S8#"XCZ*"I5/F1SW4I&(!4+J<&82K$U"H8,G
-M,IJK_>4-,:<G)2JQ'*""Y<2/U5&\`@DX/"N5G2=\CLJ%T0>0%#3A_'#'AP<)
-MB<X7"=>N"2&,)'<SLO5O$5@RO0=.>5YSXDZ.ZD7/:V2"N.?B]NFL<],FI;U/
-MX)I+IGNJ@K,MGR-QE3BI</\`Y.DG^RT_#_ANO>W#7U&G3,Y7*>'*_&O:`Z1;
-M7?5*S1I(9O\`*[OH_2&6UJT:1,=E>Z#T2C96[0&B5IOIZ6B&X7HP\4Q8N5K/
-M99TV@@`;3LH*U%C7:8"TVTGF1D(769).)*ZQBLKR#'ID\J7R/3^671@+4IV9
-MQNK%*P<2"6R5H8M&T=@Z4?\`#/#IC!X"Z&GT\\L'LI!T\NC"I(YW^#($[J6C
-M;3(^JZ.GTX!OY0C;TYK0(:$-.=_@L;;H76T#9=2;`%L`2H*G3`'9"&G/?PX:
-MV0W"C-/3,#]UT3NG']5!4Z:X@]BJ:8+J<_EYW1A@B#QPM&K8.!(TE!_!G)VQ
-ME$9KZ0&PW0NH-+<P!W5^I0]6)P@J48;M'LJC/K46Z?3RJOD>K:%JBF9(C=15
-MJ0DGE!F/HASH.QY*AK6D[#9:3:<.)_=1U</CCE$8%?I_J=$2JS[)[28;(!70
-MUJ37"0`JU1C6B9E7;.F!<4R`0YIVV*HUJ#@[6`8[!=%<V[*GJPJEQ;`43!QV
-M*2&W.UVDN`@]U5N*`J>E[9"V:E"23'W52K3@D!NRHX[Q'X9MKT.+&!K_`&Y7
-MGWB?PO<V)<X,);G9>TU6%C28A9E[:T;MQ:^#\J\7MO#RY8=/G6_MWTZQU@@[
-M0JO'8KU[QQX.I50^M;MAR\RZSTRXL:[A49!G'LM7'4W&YY)E6<W!B)([A/,N
-MV&G9/4`D3QOW2C.28696M'@@',X[*6W!U`#G*!L!HQ[94M`-<2X"(*J::--\
-M4P"V?<!%K'^`_8(:#:?E-U.@QME'II?X_P!U/:&J"Y]+BT&`<$0J56)G<<1*
-MMW3?ZI$\A57B=GP)R>RM`U6T&V;'MJEU5SB',TX`[RH!^;=$\^K!!08=.8(X
-M[J!-;_U2.R$M<)D0>Z=I@YPED`D.SW)0"]I(DB?JK+`*-E4(>TOK```;CNJY
-M+B28VY3.RV!QPH&#3&J/U2`C,'X28<29^Z?7F0<'NJ#IR':Q,QC.R%P).`#/
-M,H28.TH@2'9.-E#9Z>VYE)XW!;/:$MAV0ZR3/?94/Q[)#3W^H0Y<#`VWA,"#
-M+H(*`G279PEI,;[YQE,2!DRBD:9S\!`+MH/Z(28<"6Z@/U1-TCN/=-5<=69A
-M-*$'?LB)<,SN(3.(@P)0D@`X/RH"DY,<)'CW*8G,?=(.,Q&P0.)C3LG)(,-.
-M=Y".JRFV@VHVL'$[MY"BU:=\]E=!W%SO<C<I,&#,^T'E,'N:)82)WSNGU8D?
-MHH&,9$9E,Z!RG+R#IS'N83AP@;#W"!-D-Y^919T%QVVSRF!&Z(N;Y<;'5R@$
-M$`R/T1``N,3!V3M>TM(."$@0?A`+H!@S\H2'''[HR3IC!^0F(@F?M*H;3F2Z
-M`4OS2(!]TX(CB1PD`.,=RH%`$22DV(Y/LE@G/T3C3&((F,HAVB"1]$M#MHG2
-M<PFV(`'W3@D2/\7NBGDHBXEA:W8J-Q),$B>(1@P,X]Y0)N/G96^G/+:@)G&%
-M4P3),@^ZFH%K8,Q"#Z&_!#K!J=.I4M660-U[3T>L'4FS\[KYE_`GJM*C>>2Y
-MP&H[DKZ&Z-=--%I:<'LN.3EU77V]00.)X4VO.)PLBQN6N$3^JTK7U#<P?=9L
-M:B_;N)*NT2-,;*C1@*Y2(,2BI2Z,)4W3(*9S03C*8PTS$2BI'1&^.ZBK/$0A
-M?&C_`#4);//V2@*ASA0NIR=1W5P4H;LF%'!(4T,R\I![(E<]U?IU.H3S*ZNZ
-M8!L#*RZU#SGD?LJECDK+P_1_BB[2")76=*Z73HT!I8!"NVG3PUH<0M&WM]+`
-M%I-*3+8Z1B$S[<G@+5\K`'9*I18UA)5TK,%J`)`"E9:@P3"FJUJ5-N7"/E9_
-M4.M6U!I'F-GY6+G(U,;6C3HTPV3IPG#Z+($@#W7*7OBBBUITU6_=8=YXO9KT
-MBKGB2N67GDZ=,?%:]&JWM%HPYJB'4:6K\X`7F%UXO#&F:F!S*JT?&]`U-)JM
-M!^5SOGKI/"]=;U&F'?F&R1ZBT\[+SFS\34*K`?-!GW5ZVZY3?4TBJ%)Y:U^U
-M'=4^IM$Y4M._:\#(*Y&A>^9EKMU8%RYH_,M3R5+XXZS^)I.;^Z<5J+O3@2N7
-MI7;MR25)_%/U#2\_"W/-6?VG2>73?S]$#K)AF`/HL2EU"HSG;E6:/5SR2MSS
-M?EB^);K=/;I,#/95:UA(,"`K5/J5-[<D%6:=U1>W,`+I/)*YWQU@/LBV7053
-MN:'(;E=:ZE1>"1"K5NGTG">%N65BXZ<DZWAIE5JM$3!P%TUS8$$@`1*HU;`@
-MDQNJS8Q:E!@;@'OV5"XI>HY,!;=:W<#$3"JU[:0=059L8D!KLY"CN*;7D#A:
-M56VD$8^57\HM.1*(RZ]!H!`;"H5:$/)B%NW%$ETZ57N:`TR1*K+G[ND"TF-E
-MEUK5S27[+JW6[<N(A4KVW#@0UL2J.9K4V/I$/R2N4\6^%;?J+7/@:O;_`+KO
-M+BV:#D2JE:BSZ+4RLZ37U\\>).B5;"Z>W3(G!A8P8`2"(CB%[_XEZ%:7])S0
-MP!W=>7>,?"E6SJN?2G3RKZR\QVQ\F^*Y-K00!.VZFI?F&<IKBD*3S3$R.4=$
-MC!,++HOT0/*$X/RBTCO^J:B!Y0D@(]+?\014%T&C())[*I4(U06P1A7K@`O,
-MP>-U4>X$1@-X'*"#3/J@X0.QQ,J4O@$MVV(0.#0!ZM]S*B(R!$@E"8(C@*1[
-MB7N>3E,6^D.<TP=O=!&WW._NGJ=VDM`2[XF$CF)CX4-!!C`._='2@RV(Q,RF
-M=$3&W"9F&QGZ\*FC@$?U$GV2<8Q()*4AVY2T@$,@^Y0-)!S'NDT-G'.R*8<9
-M2&F`#@\J&@M`,F4QPX@[*2&[@?5,6^@F!.T*P1N.<9E$T`,F8C=#IAW^PC:&
-MQ`P.5%)@`IZI;OM.4!GC3D=D6`US8,[C*3P'8;P%0VG`C'LF+27]D36X#G3G
-MDIBX!T@@>Z`8&"4T0=_UW1%H.9)!0N@$_M*@:8WRGUY@?J4MX'*3&M[Q_=#1
-M$G3,QW1%Q&<Q\I@T;;$^Z3`Z8,GX0T3A@8X[ICW('Q*DTAV=1S[IJC0(TN(^
-MJIH(/$@)'8NW]TX``R0$HD&<B>ZAHFX.-N?=.TY'LD1O'";\L'<E4&(.Z;)D
-M$(1)!S]TH.H;GW"&CD`9V1..8'VWE,&EQWCY38D0=T!8+0`(*:/3L8Y1.:9R
-M1MRF`@YGW(4".!L430]L5`"T;C";?Y&Z1F2V20$31.C5(3.,-`2`=&^Z3PW2
-M,S[*KHPTC(A24JFDZH!`X,J(F#QA.-LF1[%#3;\+=2J=.ZC2K4GQ!V[+Z2_#
-MOQ'1O>ETWBL"Z,B>?NOE<&#.K]5U7@OQ;>='J-#3%/V)/]USSQ^Q+CM]8]+Z
-MB-7YC]UU/2:XJ-!#XYW7A7@?QG;=0H-+ZH;4Y;,2?NO1/#O7FD@&JT_!7&\,
-MZL[>E47M#<E6:-1O*Y.AUIAAKB!*T;?J+7'+@1\J;5T+7MYA!7JR-A[K/H7`
-M<?S?53ZQO*JI6^KW"GI4S@`_HH6.;N/NIJ=3L1CE6"4-#1.?A,UYIG5@SB"$
-M+W@'?=0U:K3/L@JW>7$CE*RMM3M1PC#=1WGV5RR8`?=6(L4[66`A05'LIDR1
-MA6ZUS3I4"=0PN"\:^(_X?4VD<[83+.2+CCMTU[U:WH-)-1N/=<OXB\;VU&D6
-M4WR1OE>:]>\0]3JEVESH/RL!]:[N'ES]><%>3/RVN^/CCM.K>.JKI#7&/E<C
-MU[Q;?.)<"\@^_P#JH6]+KOD^HS&\JQ0Z`^JPAU,GY"QWVZS4857Q5?UC'K`F
-M)@PJUQU#J3G"H*CBWVE;=;PHYM:(.G?'?[+8Z5T6EH%-S,C@C">L=/:3IA])
-M=7O:!;5)SC.ZSO$/2KRE4-6DXP.R[K_@[:%0.:W3_97*G2V5Z&DM!/=)-,^U
-MEW'GO1+R^H/%-Y,#NM^EU&XIM\S45?J=":VM(;'O""KTPAT:#'"Q8U[;;'AS
-MKS]3653@>ZZZROJ==DM(7GM&P?3:'#$+6Z76K4:@:7'"2V+K;M#5WAREIO?/
-ML%C65Q,:C'NM>@6%HV^JU*FA.JNU0)1M>X['9`Z"TY^B!WY/VRM,Z6F5W-Q)
-M@X4S+EXR'&5EE\#>5(VIZ<.A39ILTNIU6`2?U5ZWZN',+7+FJ;R2<IV/(Q*W
-M,[&,L)75"]HU!N/?*E#:-5F'#X7)&X<UI+7J2VZI4IF!4)"ZX^9ROA=#=6-/
-MR]0`^RS;FQS$?9%;=8U,`<<*V+RG5;!+9]UWQ\LKCEX[&#7LBT&`9E4;FV>!
-M,976NI4ZC<*C=V6#NNDRCE<7*.:0XR,J"Y@;-"W[BQ.LDM69=6NX`"TSID5Y
-MF(4+V@L@MB5JOM"&203"IU:0!C9&6'?48.V%0N;.6X"WZX(&P@\JG6AWHB6K
-M6T<M<T"'D`'[RLKJW3_XBD]I8#/LNON[7/RJ-S2TMTZ?N%>D[>&>-^@5:-R:
-ME*GCF%RX9I?!!@<+WCQ'TUMQ:U&.`)(PO)O%/1JEE<NFG@[0MV;YCKX\_E5*
-M#6FDTZ@/NBTM_P`8_5-0I12`!'V1^6>X^RY:CLJ.KUJ;*U*G5=396:&5`#AP
-MD'/V_14GP#`D_P":M7@;JF/]54J#B=\[JT`2UI`G_)';5*#!4%>FY^K8M,05
-M&R`PB.VR$.]4Q*E@,TF/>UM$N<7;`[J*."XHW!NJ0"UO!E"8(`.4`#Y^DIL"
-M)._;*.(.ES3(.W9,6MWDQ\H:"[V)'PD08TS(Y3@`S&!W"1`+<X*0"R2[)/NB
-MDAPW3M#=^R48VGX0`?9R=X#<@G/&Z=S00(&)A._3P#@(!#3IDN$?*>2)D[;)
-M@V#G>82!D<_912!@Y.`G=$C.`F($@$004[P)W]T`@2[*=QQ)^GRGB`29^(W3
-M:0002<?1`Q@QI^D).!F>/V3F0()(0N_,1G/'=`+B8B1',)LGW[)W?_<?IV2F
-M'#)309H=].R=I=M.#E.=.G=Q[(0V02#LBGU.+B<92$@?(W2S`D1"8S.#QL$!
-ML+IQWV3DQ$'9"P@-S)^41`P=39.,<(@9DR7#.8E2-UAD84;0-S@#V3M,#)D`
-MH#+O2&D9]E&XSB-S]D;3#?S2#&$X8"T\CN@`.],N'W3M_/+A',IRTR`8&R8,
-MW`+23PKHV>'9CG.R$.,SCX"-K8P3OCE!'IG[[J`B1(C8[2G$EI`'ND9D;93&
-M9S$H'GU&!`A,XNS`PC:"3$A`X<M."J!U9^46LZHC9!._^:(&<#/N5)`+7'5L
-M"3NC)`@X^J%\AP(B-L=D37<P,"/9-`B_@@83^81$8/*9NH@_?=-,CO[`HK3Z
-M9U2ZLG--*L\'V)7;>#/Q%NK2X:+EY<WN2??W7F[2Z03@GA2,G@F#NLW"9=KM
-M],=#\?6%^&!MP&NC8F%V?1>LFI3:X5<?*^0+2]JT'!U.J]KA/*[3PQ^)'4.G
-MT/*J.+QP7%<KX[&;C^'U3:]9VE^?E:_3NK-JL$/E?,O2?Q4\VMIJ@M;R05W_
-M`(8\=V):T^<,C8X7/5G998]OHWI(&=E,V[;OK`(W"\UH>.>G>2)KM/O*+_SI
-M;&`VN"1C&?[)N4>B5[T-F'?""A<^>,.,''RN/Z1U5_4BT,G2>2NOZ=3;2I#6
-MMR;9VNL>6'\TC]D]UU"G:T2XN&%5N:K:=-Q)^ZX[Q7U-Y8ZFUT`*97U:DVF\
-M4>,0POITWKC']5=?57>8=S*C?:/NJ^27%:%ET.'MAL^Z\F6[7IQD@;>QIW#-
-M6G)Y5BUZ'1G\@QG9;G3^G!M/0=BM.C9L:P`"/E6+_P`<]2Z12`/IB.5<M.FL
-M;_\`HP/HM@46@&0(_=)K6MSP4Z)&1<=+80?2"=YA5Z73-+I#1[0%T+FA^^_9
-M'3MVZ.,)VO3FZUI(+7MDA/0H:29&!PN@KV;8,#V*A;9@G9+"5AU+9K7!V,;J
-M,VS702``#PMNXLQH=ME56VWKF)E9K49-Q:CRS`_U06-LUY$B2MPV8>'$]E5M
-M[44JF<05&H@T.:T@#A:/3ZCO*#3NBI6S2Z2%*VV,^D?"B[2M,C8?=([R%+3I
-MP())"*E193:0R0)P.RK*HYA)QO\`LH7/(,*[59I$JI787.V1=&I5#\(C5]4!
-M0GTDD[A1O=I((,PIH6WU!I$#=0.<"R1(^%%K+G`26I`D:H)DY24T-]9S8TJ>
-MC=O8R0X[\*EL3G!4-2L6OC/PM)9MTEEU8C#C';*U[:_H5J8@B8R9W7$4WDLP
-M[Y4E"[J4LASH^5TQ\ECCEXY7;U&4ZK2&@+.N[`#(;NLNSZN6.ASX[Y6O;]1I
-M7#1Z@O3CY97GR\5C(N:)8XM((E9EQ;.+R<P5UC[9E:7`A4;RP@#&/E=Y7#+%
-MRMU0=I/99E9NA\1GA=1>VS@8`$+,OK?09Y"U&+-,>H/3J+=/UE4KVF'QZ<E:
-M-U3<7%NK2!^J@K,I@8=!"LX1SG4K,E\'DRN;\4])IW=B6%@<Z-NR[CJ%'4#I
-M[\+*N;4#&_<]U9=7;.GD%3P_58\M;L#W3?\``:W;]5Z?4Z30>\N(R>Z;_@]O
-MV"W_`!=?W*\#NZD/APSR=U4JOAT@8XY4U?\`.2,859PAW8>Y7.NVR+H.TB,%
-M,7##HC'>0FQ$B$S@`T=SQMA0V,U6;-!@C8H?,TD.8=MI0%H`F9A`(,AT^R"5
-M]8OJE[R2YYDDF24.L3JSGNA@:9!Q/^PE&(S!W0V(5#N`2"93O>#F<GD(/3R=
-MT.`"V-C\0AM*7@MD[[$RG;4&PD:0HP`>8]O9+$S.P022,DG!2#O1$X''NHY`
-M[YV2:(S.>Z`@0'0-MLIVN9D\;*,@S,XC9-`!DN@'A%'Z9U<#$HG.86CG/*BW
-M><E'JW`.3RB;.'-V=(/()V17#6MKEK*S*FQU-F-O<!009,0$HD';Y)1=I:=1
-MC7`U`'CELD<>R'6W0TM.1PHL@`0(&Y3`8,9A#:1SFAN\CO*4LC\V3R@CD8"1
-M&<X@("V$1CV*)IQ!A1Q)DGA(-,?JIHV,/;J.8!3ES"Z3IGVQ"`M(WV]D)C)G
-MX"NC:1I;F#PD).9;@[J(Z@8//9.<`'ME!(UP@B`>9*(P&@%TQNHH@9VYRDT2
-M,J&TNKT_F&/T14:C09G'90`&,?;NFC.VWNJ;62[UR#(D)FS&#C]E"&.B8._&
-M82(AOPH;3D`#?9"/SQ,R@9L3,':"A&"8P=O=4VL?TB=C[)B?4,S.)4+2YVD@
-MP!LE,;*&UAI$!TB/=`XC!^ZB'IP23W3.RT#GE71M)N![)X'$Y*A`(?F8GNG!
-M(GV]T5,WL.$F<-])A0DGO\P48,N:9G"(E#23,_24X+2!`CVC"BUG,DMQPFU8
-MR0"-LY1=IZ<9''S!2:2)$P.Q4<@/W,<Y3:SH&=_=#:>3K&))X3AQ)D;;C*AI
-MN(V.0B$ZMX]DT;3-J.;D3@YA7+?J%RT'2\YB<K.:2V"#F.Z*B20-.2EY-MBA
-MU;J#RUIN:AT["=EZ3^%5AU7J-VRK4<[R1./NN9_#SPA5OZK:U8$L]QNOH7\.
-M^@LLZ%.*8@#Z+%D[9S\GR.O\%]*9:V;!O`75@-#!(@0J73J8I4?8+.\3=6;;
-M,--A`G`6,LM,XQ7\5=6;1I%C=SV*X[1<WUQ.8[*6GYW4+HO<XQVA;=E092I;
-M+R9WV[>G&:!TKIS*(!?$K5H46X`&%%2:YYX4]'7OL>5C;K(MT6L`G2G>0'"%
-M$R3N8Y1!CC`F5-[;D.XZA&`0F;3^P1BF=)[J;R@Y@/[J=KPA\OG,*Q1;!C>$
-M@SB"/HC8P$AORKK25)I:3D`=_9(6[=)@#Z)B0-A/"-KQMA:E9TJ5:68CY4#[
-M?2"8RM%PE^P3:0Z,*5J*`I13_=4G4?YA@8'=;GDRT[2JXMP2#A9UPUM4MZ`@
-M$_JIJ5-IF0K#J):.WU0-9$08/92B(,=JP,!3-I_RSW4]&F3EQ^JE%.7#N4D&
-M959B'#!Q"J7-*#$;=EM5J30W;*HUZ4O@<;H,FNQT$D0J[R)C<[+3NZ3B-L+,
-MK-WWQRHL!4R#$9[)A4+1,92;)$&$&\JE-4<">Q]TWE!XF2/JD]P!@CZH758:
-M2W*=()K0UF#,IY;$"%!YH&"=NZ'S@';_`$2&DSAWW1T*]2B):2(XE1MJ@GF4
-M;(>V"5N,6-CIO6"QH8]Q$]EN4;FE7HX>,KAZC8!(,?W3V74*U$^EQ@<%=</)
-M<7'/QRNMNK9NIVD2LN_M"701]5-TKJ].M#:KOKW6MY5*NS4UPSLO5AY)D\F?
-MCL<1?VV@06K(J4'/J3)#5VW4["23I,'E8E]9.`)&'+MVXN<J4X>03C*KW%LW
-M20&_5:5S;Z'Z@JM5P+M)V"#--"F#!R4WD4NQ6LRC1+`2""47D4?=.%?)%<D/
-M,#.T`JN]LNQL=@58?!=),2>56?O.XXRH])J@@$.TRWLHV@@',GA&]QYR.4SO
-MRDR,<(R"1)`W^4B(V!2G>&IB3JVX[HIW:-1`.`<80.B9!(([IYDP2)[IB2)Q
-M]D#.=/(^Z)H@:L'ZH3&G#3O\)<B<E`39:,Y]QPG#1#G2,8B<E"UY`<8$GLB9
-MP"WXA`L-,&9&$],-Y=$<QND0X$AS((.QX38@J@2#N)W1-:-.<#ND#C;"=VG2
-M1[;J`,D\!(F6$&2!P4X+9&K,_1"XM#L9212@=I([)J@.K?YY2$1L?ND70TB,
-M)$,0W`)VQA,&[P41(G/ZI-B,(I@0`1PGDG)^$SC!$<]D\CB90.T'8'<[(23_
-M`$[%/J[DQNGQO*!G<9"3M)$_W2!@2'1W"0@\?K"!:6YQ$\)I@<_*)Q]&YC@'
-M9,=(=D?J@1$B!GNF:!IWA.(!F<)0W,2F@B!&9RA!&F#PC^<I/T%H`$)H,PP?
-M?E."9W28!`$P">R8B#G]$"=J(_U3M$X;B>$YD`MF0=QW3-@C+9(Y0%I;K)VC
-M8=T-0R[_`%3AH<[N!PF>-),B/8H'8).9,(!IF/;!)1$ZL>R$B,<]T#@0P'?@
-MI@9/Z).,-B4FG&V_*!P`1C/LD-0!]1CV3,.(`^,HFF),8^4#C5N/L$[9/IC,
-MY(2$@8Q^J*1(:1]$"(],0<<)J>F-DY@M$?ND(F0J&/I<5+3(,3D$IG!I!.QV
-MA.&P-ON4"(!$#E=A^'7AQW4;MKZC)8TA8/0.FOO[UC`PP2O>?PZ\/FTM6`L'
-MRLWIG+/UZ=#X.Z*RA2IT*;,-'*]+Z);MH4`-`"R?#5@U@!(B-PNB>6TZ>-EB
-MN<YY1=5Z@*%%P:1C<RN)ZC5J]1O8W"TO$UWG0WE0])HAPUN$GW7#.N^$VNV-
-M'RJ0B)A7K>F7#U)K2F2-ONKU"G!CLO/>7IQA6S`QHA3&F0"4@`'2<*1[FAN(
-M6:Z2$P"6XP5,T#&%`Q[2_)_56&'MNIMK22FUNG_52M'HQRH&$ZO2K5`#3_=6
-M4T`,,0!",LT@3^BD$.F,)G./*K*%T\H28B``GJG_`*E&7`[S`02XB)1-B9C"
-MB8X1,DX1TG09/*FQ/'I@#Y3^6,N)@CV3-)(D(Z?YC^J*!](O?`0U:`;D?16&
-M-&8'Z)ZE)KP`X2.45'08W1&".Y5@4QH,)4F'4('W4^D:)'*1*I5*0!DSE5*U
-M(:C&Q6C6:!.)A5JC6S);E18S*U"096?=6S1_3!6[7``^50K,#R3C"G2L-]')
-M)&`@\HP?9;#K=A&!@JLZD!(`0K(?3)!&WNJ]1C]/I(^@6S5H`B`,JM_#:21^
-MB:1EO;IG!*A#'ZCO'*TW6WJ,A)M!H$&$TNU&DPG?CW5BG3@;[J846L),<HF:
-M8$Q\*LVH'M.QS`55WI<9'U6D8C>)5:O2#G;;K4K"FUY:[4Q\%;/1.LN8[RWN
-MU`+*=;$B<J&M1<W:<96ION,927MZ'9W%"\H2""85#JMB8)CX7,]%ZL^V>&/<
-M1_OX7765[3O*(@CW*]/B\ORO+Y/%KIR74K0LEQ'ZK%K6O\S6Z3"[OK/3@6DM
-MV7-=4M2*1TSCL%ZIR\MX9#7M`B?U2\QO<?=,*)Y!E/Y/S]TTO#Y%K-)F71]5
-M6>0<`!6*YEQ;`&..56>1Q"E>H+@2/8)/!D2-TSMA)QV2(F'$X]D-&<,X[(2)
-M))&41`'9"X]T#$&9@&=BD9`B"2$PSMQPB<US1+AID2)Y1`$&1.Z1!X!!/&R=
-MND9<X^R8D2/[HIP)]61"(2.#'>4)@#_1%3=+80/+MR23WE-LTZ@DZ8&04TX@
-ME$.!Z9S!2W[I9#1.4I+M.?:.Z`?3S,<)`$DX=/`2AP<<X2/<[#;**>J^GJ;H
-MU;>K.Y00TGL=DY!C4[Z2D3)D'/NA#`@..GM&R0)`^>R=I+<S![)R22),H&@`
-M3E-B!E.23DY]TG0.?H@89=CZ!/.,9[I@Z,#*0)$^Z+H[-B8D]PD<MS'=-,@1
-M]@G;OB"B%@'\T=DQ[!%D[QGB4P_(80-&8.",(C@;`I-D@`&9X2&\0#V*!MAE
-M-N,\\HX)'!.^R$N&G;/[(:.&XX,?JF(,SLD)&0TY"0$MQQNH:.#B(&4BT<$'
-MW3@B-Y`V"0#]<M$&,C*!`#<\]D\M%0.C4`>4T>F"W=)L!ID?14/=.I.JEU*G
-MH:=FZIA1N]@B#26ET8:)WV0F-!Q]5`Y!<=1&!RF&Y@>^Z0(E.8!$85":V3D'
-M"<`:<#;=+4T99(/)*=H$=^Z!"1$#*<09F?HD1MRG='(DSW0T8>SI]D]-OJ@D
-M;[)@,;F?E&(&^_LBB.6P>58M[>I7<UDD@;*!NDD9,_J5VGX?]#JWMPTFF0T'
-ME&;Q'5_A/X:T-;6JLDD"%[?X8Z;%`'1"Q/`_164[:FP#``7H/3:#*-'3V6<J
-MXR;NTEK1--L]O95.LWS:--T.B%-?W+*-)V8A<AU2Z?=7&ACC!*Y99:=,<=GH
-MNJ7=QK<XD$KH>F6^&B%3Z):!K!A;MM3T`8^<KS97;TX8Z3T:(:,2`IF-QG9"
-MT@-P<!4NJ7].WIDS"Q:[1+U"Z;2!,C"R:O7*4D!T%9?5;]URYS:<Y[*G1Z/7
-MN8<7EL]ESN[>'3<C:/6FR2Q\QV5RRZR'D`N+21W6=:>'SI:,GW5D=%J-R&N!
-M"OK4]HWK6[-5FH'Z`JRR^+?S#3[K!L35M7!KP8^%J4GT[AHV"FMK&A0O&N/Y
-ME-4K!W]06-68^B8&J!V34;PZH.RSNSMJS?34>Z7%`V=63`4=&J'"094K3Z@1
-M&5N7;-@R('I&ZDH@ALB$PRTG]$3()&(5TSM-3P8S"GIM`,A1,(.5*#VQW32[
-M6*8!@2BTMG?.TJ&B1JVE66%IW"!1`P[[(RW!F4@0`)&/E-J&<H(J[/JH'4X^
-MJLN+2TF=N`JU1P#8,E18JW32-C*KADF"%;())2;2C?=.U4JC-(5=U*72X0M%
-M]+42!.%%5HC/9$9M6F&["0JM5H`)G*T+EI$P-N2J5<8/?E39I1JN]6X5.ZK%
-MA)/"N7`QJB#^ZS+MI<W)(!X4BZ05>IX(:[([JG5ZH8!UPH;\-9(:!/*R+IQ)
-M@'*9$TZ&WZDW5)=,JT.HTW-`7$UKEU/)<<=E2NNN/I,($^V84F5B7';T,WK#
-MC4/;*FIUJ+VP0"?E>3?^9;IE3,Z?=:?2O&#&U`*U32??*U,_\2^*NZOZ/]30
-M1_=6>@=0=0KBF2L;IO7;6ZIC2Z9&_P#L*=[VEVMI'>97693+IQN/RO1[6LV[
-MMPT1)&95'J=DT,((^BQO"G4SK:U[L]UV+A1N+4.!X7J\7DWQ7C\OCTXBK9-%
-M0Y_1-_!-[_HNCJ6)+S#"A_@3_@*].W#3X'N-RZ8G"KDP2"#&RL5\F&S([*"I
-MZJ8@F1B%-O2A._<#W2.H#V3NB3N1&2FJ.);OM$?"J<!P9@_KNF<"<[9A.6Q@
-MQ*8YQLHIO[[IG;03/U2(W&>R:">3\J!#,G*7S(A-M[)\=\<D(',1DR`8R433
-MG]X*`C)!G='@;<JAIGCZ%)P'"1'SC=$/RSNG8$D=\#(3">Z=P:!D^^$HD2=O
-MV0)F#R)3NB,QGNDX``9'U"1'I,<(IA^4$B>Z9\``C]D_],S!A*0/^H>R`(SB
-M<>R=@)G.Z3@``Z1GA,#/$(%IC'"49!V^4XR)/"3))$9[94"(R2(3/V_=&0#.
-M-]\JUTQ_3J=.Y%^RJ\NI$4?+,0^1!/M$JBG!C<=HW3"=6#D(FDZI`GZIRZ6P
-M2/D;H$"TN`<(2<,P)^$((@#;Y*=TD8?C_P"Y`\C3_ACLG:X@[S*;$$S@=RFU
-M9E`1)X.=D)!C"67&>P3`8,9*!`^J28'<<)R0-G<]LIB!/")C27`-&78B$"&/
-M43@IP#!,'2>3RF<V)U-@_97.FCS[6K;%S6@`U6$[D@9'U'[(*U3`$['OA"<X
-MQE.-,R,SRD[3J@;(`,C_`"3MB/5^Z3@#!VA,&R#E#9`Z3@;B-DWJGG"+9I2_
-MJS]4`QB3RB9&9F/V1%HD!IG*<-CT.G4TY:$"IZ=>DR6]P8,IB0#I&8[%.6Z9
-M;I(/,H?S/COR25%$QQ+H(1F3&G[E-0\LEQ<7#'')4]M3+W-`R51?\.]/?>7;
-M`&D@D?NO>_PS\-MHVE*:?J@25QOX.^'75`*[Z4S!R/A>[>%NG-H4VC3&%,KI
-MPROM=-+HMCY%)N`"KUU<BF,$2G>YE.F-6(7.^(;\'4QA@^Q7*UJ17\0=1=5<
-MZFUQ2Z#8N)#WY)]]E3Z=;FXN`]V5U%E1;3HC'U7FRRV]&&.EJW8&L;Z=E:%0
-M!NX5%U9K6Q(V[IA4<YN(*Y6N\BS>WK*=(Y7-7?G]0N-+7'3^RT;MCZSX.%H]
-M.LZ5"V#C^8Y6=;:WIF].Z2*;AJ))706%FP``-5>B[75@;<+5MW,ITY<8"WC'
-M/+)<M+1@:!I&%:9:4Y@M6%?^(;6U<9J"1[K/_P#.M`5L5!VR5O<CENNHN^D4
-MJK(T`#NLVXZ54MI<P$CV5OH/B"VNP/6"3[KH&TZ5Q0($%/69-XYV.1I14ECQ
-MD8(*I]0LG4W:V;>RZ+J?3#2JZV<=E5%)E1A:=QW7++'7%=\<M\QA6M5[:D1A
-M:5JX&">56NK1U*H2V?E-;EP,+E.'2S;7ID%L0$MLZH"BH$>7JG=-4>5U[<UJ
-MD\'=RFU`"`LRG4@R2K+*X(W51=IU(;&I3MJ@;'99@K09+AE%4N1$"")R5EIH
-MBI()F$+GQN539<0!D3\IZERV03G"HLNKL&^ZA<\..3E47U'.,CNIK9WJTJ-K
-M=-@+D]:0?9-3<!F$3G`CU&%649<`8]MU#7>W3A'4(+L9&RC>!&<H:4KD@M)A
-M9U8')C&T+3JL:X$!5GT@UL&,*:V,VJWDK.OFAQ(;_HM:Y87/V5.M1(.RD@Q*
-MED'DR<'.5G7UK;TY[KHZU%P8=(63=60?5.K.54<U>6C"XN#C]`L3K-E+"0S8
-MKN+BP@2!C9974NGZV$'93U-V/,>LNJT7END$#W61<U*A)>:;@!R.3\+TOJ72
-MNF^0T>5_,`AQX/NN3\06MM3)T,<Z<XG"W+)PW[[Z9W0.O5K9[6ZX`&>?[+OO
-M#GB)MT/++B';1_L+R/JE-S'DM'I.T!2^'>LU;&Z`.8Q!6KX_N+%LO%?072KK
-M14:X;E=]X6OQ5IM#SF(7C'@[KM.\HL!/JB8/_9=]X=O13<TAVZ8WZ\_DQ^5Z
-M0&L(G4,I:&?XPJ5I=TS;,/<*3^)IKU?NO+^T_/.Y=+W%I$959T`[J>M(,0(V
-MF=U7=(?&5Z;VTC<09`XY2JX`;!VS*?&L`NB3DH.=\;)0F@D3G?=,\.!S@^_*
-M:21OE(N)(!=/RH&R7<;)`ZN3D<!.R"9G,[(<;YP@6)D%WLD#@$.^Z4`F9,>P
-MA(#$?N@/`<07`\2G<X08V*%O],IW#TB!'=%(D3(Q.Z>1G.Q0_P!'O.<HL:=4
-M(AB)_JSV2,%H2<?Y@`A.0)'$A(I@.Y3F.#.,IB0#B/V2`)J$;#]40Q;G)^XW
-M2[B=TAI+^XXRFIP,@(&(EV_Y<)&0)`P$9PS!R3&$!)P3(A%+$23]$[9QF`F#
-M)P!A(@8$P@)O?^Z1:"TQ`)Q\IRUHI?F:3.R%X&D\QE`Q&./NFGD1"<`D8!A,
-M,G,Q[H'/R.Q3'!DQCE,X;QC,)VM$-<1,^_9`61C`QW2:(!.#P@(B!C[IP1.T
-MSB$!.D-$;I-QP2F@:=X]DXC7^9#9$`),:"=($SPF@2<(@&Z@9QR4$A?-'0Z(
-M&=1&4?3'`7U&HX2UC@YPC@&5"XR,$P[V3#?'&$!W`FK);OD#="-QC<X1!V`3
-MVB24S@=/^J)L,08YC!"4278,@(B#(CD(2,X/**8`8P8W3D8[X2`W))@F,IRX
-MG$J!?TB!SV2$@@B3';E/IDF)CB4;6PW/.RH0))DG+M\IH:1DF`4AJ)B2`?=.
-MT$@-YE`@PDMW(_5=E^'/AYW4;YA<UT!P,?9<_P!$Z=6O+EK&MC(SE>^_A%X:
-M%K:L?49ZW9_92UC.ZXCJ_`'0:=G0IL;3#0!L%VU.FV@WM"@Z?0IV](#:`J?6
-M^I-8TZ'?<KEEDSC#=;ZB&^EIR0>5SH=4N:Y,[G=!7J5;FK(G=:G2K4,:"3\K
-MSYY;>C#!;Z72\ILN&%>KW(IT\QLJP(`+01E*C1-5^J?NN5=I(9M1]5\SOE7:
-M;M-,9(,*2VLQL&G.ZLUK2&&!!C*QITE9U2JXU>ZN![BP1C$8*J_P[F5@8WV*
-MMTQI;D9(315RQ9Z0X1C<]UC^-.M&RM##@#NMFU>T4R-B!"\]_%-Y<2!\_.ZZ
-MXS;SY\./\5>,',8Y[ZPF<"?E<A7\>5_-.ET@']%E>/7/IW08`=)Q^Z[C\"_P
-MUZ'XDZ"[JW7*]8L-7RV4Z#@#L#)D>Z[SQX_6-^LW6A^'/CJJ^JP&J02=I^%]
-M#?AYUD7UJPN?F!SLOE?QIX9'@_\`$3^`Z=4?4MG$/ID_FTDX!@;KW7\%;ISP
-MUAF,?V7++#URX:W+'KMS2;5I;;KG[^D;:L2``"9E=-2@T&&(D+*ZU1:^FXM&
-M96?)-QT\=U6-69Y]/4(E4*E`M>8^JNL?Y;P#SA2.HM>=0V.5P[>GI3HU#^7?
-MV4E:"W/'*CKTS3<2!`05*X#(..Y5G"6`,->/A.ZH&[''RJU>LT2951]R"V`X
-M+>V%]]UIP24A>-`!!SV60^L7$29E.R9P%A6Q_&`DP2)2_BIP=OE9;6NB#REJ
-M+9.P_=%;3:NJ>ZFMG'5JGZ+$IW`!''.ZNVESD'ZJ+MO4R-`DH75`2J(NP6[I
-MZ58ND?JKM(MM<&NB=T-;).1'LHR^`)2\S8?9:A2:UN3LH:C2YY4KW`@D'/RH
-MWNS@_P"BJ*U2B`<M'OE0OHM/?93O?ZB21'LHO,SW4%2K1&F(E5&VC"XD[RM-
-MSVZ5`ZF0XN_I(51FW5NT>ENRR.IV9+3S/"Z&HTZHX56XI!P((B$B;</U&Q=4
-MEI;@[K'ZGT2CY)<\Z3W.5WMY:NF0W?*P.N=.JUIW'NKZRL[>:=<Z9T]C=)R9
-MSNN1ZI94Z3M=,F"3$<+U>\\.VOJJ5@7.))DSNN;\3=`M?))INTD;2%<<KCVW
-M;*PO`?539W+070,"%[%X=Z@*K&%KP9@@KPBO:NM;LN#@(,2O1OPYZBY[`VH[
-M((&-E<YJ^T3*;CVNQOHM*8UC92_QW_6%SMK=4A;L!)F.ZD_BJ7<_=.7+A\97
-M4$G<?[[*!PEA=!`&)!V5BX=AV?;Z*H\DN&,;A?1KA0/$R1A#48=$R43_`%'X
-M0SQL2B!`]<">Z3@!!$DSRG+CI`!PF=)`QL-^ZBFEQ)=RG@`Q)DH0X3(G*<.(
-M.)5#P8&?LG:3$1DI,)&"XP0FGW_5`8#-&"9!VXA(^IQP`$.-0DY'9'J!,.)#
-M9RE@$_\`+`G=(B!EVV(2`]6#A$0)W!$2B`R&X.4Y+HB?NG<0.,).@"/K\(&U
-M&>2>4.2#D=OE/(`:3N<)SD`@B>W"*0@.D)F@EV-Y1`C3&`)V"3G1,``H$0`Z
-M3A!$CL$3C!R`3\I`Y&=NZ!A.@-G!X3&200C=+8$C*;4)WCL.Z!MP)CY3QB9V
-M_1,2)WPD\C&-T#.DY.\II@DD`GW[IM7J[)SET[(IR9C`$#;W2`)@3!2&!@"4
-MQ+-,YDH$<>G$1E+`<(XV3-P?=.</VG"B"DZ3.9*8SJVVW3ZAH]TA&G!@JAFE
-MT&,<)Q.DG)">)!]\X2C$NR?9`P)TD'(E.R3)T_=,V"#@R>.R=A8706F3L`@0
-M)D1,S&R-XGX[(0<2/L43W"((R$`@F0`)3$SD#`12.1$A,<F.Y4"R<$!-D';"
-M-D8!X3^D@X,0J$QIU?[A/480-Y,;2K-&"S2?H.R,4QDD3_=39I4$`Y'PIK:B
-MY]1L`G40("E;2R`T&3Q*ZOP'T7^*O:9T@@D?1$MU'5?A3X9;7:RO5H[$1C?W
-M7MW0K>E8VP,M$#E<CT1]ITFR8`X-$#<_[[*'J7BHUII6[RYNTB<KGGGIRQQN
-M5V[+JO7&!NBFX2L1]:I=.EQ.5D6#JE=P<Z3,86YTZD!$S"\^63T8X:7>FT&L
-M:'$;=UH,=C?8J&BV:8#0K5K0+M^%RM=I#TF%S_>%HVC(`'9-;T&Z1)QV5FDT
-M8(*RUI9H1N["DR[!4(@;'=.7EA$<HNDAH-<2-N94;[4G\J)E729[*:C6!,G?
-M=3VTNE-UH\;3)X6!XCZ#4O!G)RNS\^D<0GI&@1F/E;QRC&4V^=OQ$\`=0K.-
-M6@PN(R&_=9/@A_C7PH*E.UI.\EQDTWM)`]P/HOI^M9V%=OJ:T\255O/#O2ZS
-M8+&2?8+K++-5C6G@W3[3J'5^HNZAU4E]=[L3.,^_"]E_"+IKZ6EY$`QQ\(AX
-M5L:;P6TVD#;"Z#HC&]/;I&D!8RR28<[=I3.FD![1\JKU!H=2,1E9(ZL(`+\#
-MW05NJZFX.3ME8RSCMCARSNHO<RYP8@JQ;U=5,&=MU2NW.JOU<3/=#;57-,$1
-M.%YYQ=O19PN]0JT_)P<K!NKD1E6.J5#!))'PLBJ`YQ]1,+6]UF22%6N'.P#A
-M`P%SMC!PG93D@QGA3T*328.YY6ML]AMK<N?);GY6I3MP&R6P0$=C0B.<*Z:?
-MIR``H2,NI3TDX]U'7I.(P%JFB!E"^BW1($*1JL"Y!IGU3E#;7<'\V%/UL!K?
-MCE<_6N7,J:0=UK3#HZ-T7P9PKUK7]_=<Q85G",K8LJI=$HK<\_\`E",Y0&M(
-M_,J>LP/TA#YT'3Q\K;*\:H([?L@J5=(D@J$.!V=[[IJSI&#*!5JL`F!["<*(
-MOD\9"'U&9W0M!C.,;**D80.<3LG>[U1Q*B<^-MR4SB=."`FTT*070<*-S!).
-MQ0PZ<G?A-#B"<_Y*RI8&HQIQ`,\E5;BU8]L1^4*VZ.^5%(D`X6MLZ<[UCII<
-MQVEL\K@O&'1:F@N8#MG/RO6ZU,/;!&%C=8LJ3@X.#=E>*SO3YSZK3K6US%0'
-MT&22/=;G@WJ#J5W3;,-D3&W"['QMT2TJT7O$!PG^ZXFPMA1OAI$M!WGW6[JQ
-MJ7;UBROV.M*;IF1O*E_C6+G+"NT6=($G#0%+_$-[E8W7-\XU]#JN#`YY*J52
-M`?1'NK5?#N!.ZK5A$C$;1"^C]<43R9/?LE$24[],3J@SV0N_)^B@8G.(2;#B
-M9@XPDT$X`^R$MAV1D(%$)",SLGW$%+2=])`]T"D:0($^R<QP"D6ZG?ETE*#'
-M&-U=!XC)/*<@:>Q]TH@"?V3M&=X^$0TDQ@8"=S1&=B)3R`-`!GNF('Y3OO**
-M;WTQ\)&#G!^4OZ)PD-\8'NB:,!)C8)$!I(TIV``;_?*8S.P^RBIKAU%PIMHT
-MG4H:`X%^K49WVPH7;[9/9.\&-XG@'=,9+AD&.Y5^AMC),I;X**1)*%D:23,H
-M'='/Q,IH&DR-]DPY=)GY3R=$G"!F@-)G;^Z0@D\A.&NXS*?4?+#8&.VZ`,!Q
-MB/A(D!I:0`/;=)P,9,2-I3<>R*(1$;'O"8M$1!'RA^3"(S&Y"@&)^B7>(!*(
-MQI&3JY28`7?YJH3)B&F`[!2#6"?4F]IPG<UP&D_*!"`"!E$6F-HGW3-;!W'N
-MGTSL,'E`@)S#1PD&@$3_`-TQ&0!E$X''Y8WE(':`W/V/=/I))@),$@Y$^YE)
-MK2!,!`SFAS9!SM\IPSN)2_,2(A$<.&,`1E1"#<D@1!3-&IOYAOPIJ;):2""1
-M_2HWB'X@HK0LZ8-,8))4[J(+<&",Y3=*!-,8!!5]E.7CL."L4Z1]-L/XBO38
-M#^8P3E>B^'*-'I%@*E0LUZ>#"Y3I56E9GS-/JX&Z;JO4;FYJ>6"X#L"8"7+7
-M3%Q]JWNI]<NKR[\JE4=H!C3.X71^&K-Y8'/G,87/>#^DNJ%M2H)F,%>@=&M6
-ML#1'/'*\^==<9\B_TRVT@'*W+2B2T0(5>RHDN&_T6U:41H!7&NV,%;4,-&RM
-MTJ3ALBH49:%9;3TK-=)!4F0-M]Q*GMV0#(F-E'1'J^BMT6SB$;]0BF=\'V*)
-MU*?@(W,=P)"E#'Z?=#U5C1&D"#(,PCIVIU=L*=K3,'=3T6:LB%E?52?;.!].
-M%&:-0#?Z+6%$N(X1FVD@IK:,;RZ\2'$0$%6K<M:`#*W76S2(&?91FS!!!:KI
-M&)Y]PT9+DS;JL<$;+2KVS0(A5:U.FSME32\*O\35=@G"=MP\'*&KH#C#=^R@
-MJ%[L?LII=M!EZQH.5'6Z@S3+?NLXL,[GZI-I^KY33-J6K7?6W,IF-$>RD`:U
-MD",**H^?3W34B;V=PEWIW"NV%`ZQC*AZ?2+W_P":W[&T@`D96:W.#VM$0`!M
-MN5:-`%L3(CNK=&UTL!")[`QIDJQ&<^F&S`V]U4NZH:R-NZL]2JM#?W6!U&X]
-M4S]%-M:VI=;K:FN`&^ZYBZ=-:/HMOJ+]605AW&*DD+6*7A=Z>X-<"?JMBV?`
-M&GNN>LZGKAI"V[)P<-BMZ8K2IO)]1V'"($&(Y5=@=C.ZFI%F))'$*[1,T&1B
-M$;((AT(?,:!L-E&*X)SLLVM2;2^ANWU"@J/DF-/R4-2K(,<>Z@:USB3G"SMJ
-M8K6(GORFIQJ@C?*9@EN94K&9!Y5BZ$6C$#(0&!,B%9IT^"AJ4A&)`5TS5&L1
-M.^_*A=`,GA37+!JGMW4%3+(!6F=&UC29$*EU1NJD((D^RM0`-Y3,8'-AQ)2,
-MY.!\3].N:E-^EARO/+VWN+/J$U&:0X[+WGJ-JQ[(`PO._'/2AJ+PW:2"%TQD
-M8]K.&+:5&FV9SCNI-;>Q_P#WE5MZ3FT6MTNP$?EN_P`+E=)IX77R_`C.ZKO`
-M$G^ZL5LDD'_55ZL`[8/=>ZUP0C,YPF>#`C9$`-)W33$S*&C#`$2F&X<,)3+I
-M!33G=0.7!SB?V3`8W,>Z33F"/[I\3DC*H+29#C!]A,I&.3E-`G3LG/I&2/F4
-MV'#0,A,<SN>Z0<(,PG)#0-L[A`A(,GG9(G&YRG).F!L$C!W,1W1##`P?HF!@
-MD(@(GLFQO)12'Y)'ZIB9;JGZ2G&TSD8^4S]Y;(4")X(@H7&#/ZS*-P)$Z8)4
-M>G)(/UX5-$UQ&0?E(?/*0!!,)X@3!0/Q";U;$[)V_E2'YIF90."9"3S@<I]G
-M1N?=`9+23)0*#I,#/[(2""#_`&1;`B29Y*4%W'L@'>$P[&81Z8(S*0;V,^Z*
-M`?XA&$33Z?=+CG[;)-V]E`^H:?RC='3+7.EY(&TJ,`!TI^<!#0W#GCW1>=-J
-M*,-`F=49*$X$<)G-!@,G43D*H0,8@?5.3D0!A#ICM@_=.TD?1021,>G?&4Q`
-M:>X3R8`:9`R,X0PX.#?U[($R7&(E$6[%KI)W'9#!$Y1,^,'L@-KO1V*`3YFH
-M\H@)`TPDS$3QN$&MT4C?A;-)M-U,Z78Y'=9/0:>JH&MS\K6KL%%FB#/*Q>S_
-M`!7J57`G\P'>5I^&[9UW>`@.C&^ZS&`UZN@-R>Z[OP/TLTRUY'N"N>66HW(Z
-MCH%B*=!GH"Z;IU!K6B&K/Z;1R#$+>Z;1B#W7GW]=,8T.FT1`)"U*%/(@0.RJ
-MV+-+1[K3MV"97.NTB:VIG3MA6&4=42E2;#8VE6Z%/GA&I$=&@)_+A6*=&?\`
-M)6:3,[05-3I@[?:$:5V40.(4C*$M]O96J5)IYW1BF&Q&Z:6549:B1.%+3HMD
-MX.%:;1Q*D9;SM,J6&T#*>WLC\LAL!6Z=N1`1&B-6VRK%40P@$\J-P(_=:3J`
-M!.,*)]($0%$VR;BGJ!G=4*]OK.0<+=KT@W,`JI7:UL]NRB,2K;1@&/A15:+`
-M!`,K0N2)G[`*G5(CU*;%5U(;DPH*M5K<3A'?W#6-C^ZS!4=7>0V3QA#6UD5"
-M]_IX5NTMGU*@)'T3=+L7ZI=RM_I]F`084M;F)=(L,R1]5OV%`#C906-NYKI#
-ML'A:5`0`8^4C5B3RVAA[PJ'4,-*OU9T[0LCJU0L80,CNE28L/JM1NDDOCV7/
-M7E4%QRM'K-7)B9*YZL^:D:E(TDNCJ9`S*R+X#(,"%L4V:QE9?5Z6G8+>+GE5
-M6Q)\[?"W^G@B).%A]-9#YX[+:Z</-K!K<*7)J8\-$/.`!,)5''5V]EI6]BUM
-M`.]LJ%]JUS\K7.F9K:L:@T1V4+GSN0!W5FK;ALZ9^JJNIN`/IF5S;#4J`"!$
-M=Y4M"LT$`'?NH7V]1QP"HJE&JW+6II6JVHTB-0^BL4-,@@Y7-BI7823("GI=
-M4=3YE7E+'347-&T)5C.Y6-9=3IO(!=G=777`&1F?=:QK-B*[;),95-_H!P%9
-MK52XA15QC!E;W$5"[>3[HF;D@_W4-W@]Q\IJ)<>?T4+$U;+28_58W7K(UZ#B
-M6SV6N#)@;?LH[MWE#N"NF-TX91Y[4L'-J%N@X*;^!?\`X"NKK,INJEQ:)*'R
-MJ7^$+ON./+Y#N3+M,$_)4%PYQ`&HD#8RK-<:B`V/5Q,0JE<-V:\P,;1*]*(Q
-MS!]T,^DA%B#F$V6ND.RTJ(`D`$PEQ[]T[AOD?"3V@#!,';"!-/JD&(]T0,NP
-MXXV*9\BL[4S3F=/9-`/,R>$$C=()F2?F$PR<X3.;#LS([[A(DY$X[JA-C3D2
-MB&G&)([\H1R"92:`>3[!`3B-6!$Y2:-3PWOW2B=,'/(3$Y@!02,)#2,04&-6
-MV$G1\^R:0!M,@*A'2TDDQ]$P(P=,Q]D0PWN@&#)P(WA%27%4UG%[PV2(,"`H
-MQI@[>Z08#OEQY2`(<"Z80+TC&)3#:0!"=H.QC*<M],_E0,-H@2G9I+@1GV2#
-M8),[)-@51)QL2@=S<P8Y2]ASV3/,&`9PFG&\F)D(AL\F4FC)WRG<"?;^Z0&8
-M!Q[J*0@F8P>2F<`<@X]RG(.G\WT";8Y$`_JJ$V)SB/=,W_ISRGTD-G'/*0C2
-M21!X'=`Y$_/LDQOJ`G/ORF!!`Q]47],0-D!%HV).>R$M@0#ORI/3_0'("/27
-M&2=D#.$1P.Z>F/5D[);#;ZA"S88WYA`8$F92@2#KR>Z>89@2A`R<">R((MD`
-MZA]$3.T'ZE-&T[=@G+73IB>%`;/2\0`83MU5*FV_8(*9),;*WT^BUQD3\(-C
-MP\?*8"X>P@*]>.#OZM@=E2IQ3<UL&#M[*Y:4C5J-;!(&\97+*\K/RN>%+(U;
-MQKVM)@\C*]1Z%;>70:V`)7(^#[-K7M<6@>\?*[_IE.=.!G]%Y\[MTD:-E1V&
-MRV[&F!`P)6?8T@&:C)_NM6RI%Q`C/=<[7;&-&U9Z1Z<+3M:8E5[2EB./=7[6
-ME#?=9=(L4:8A6Z+(XPHJ#/3D25=MV>K))114VQCG?"G93<8Y*EMZ4%6Z5(1@
-M1"U$VAHTR"9`^ZG;1U#:)1LI@'T[JU09W(CE-%J"C;Q(`R%89;D"8W4LM#AG
-M=$XC3(X2QG=1>6!QL@J,Y4T^O'U0N!T$`[J"/2(@M4-9K8]U8,=Y"AK"9VGA
-M04KPAHP2LN]+0"=EIW8AIET3W6)U.X:`YH(6+6I%.ZJ9QRLZ\KX(`SV1UJI<
-MXL;RHA:U'ND@=UF+I2<U]R\``K7Z1TF(&G=3V%BSS`0`#.P72]&L2Q@Y(.ZO
-M:ZTIV?3M+1+-EH4;4-`&GZK6I6T>F`$YMI;/*UI95*@UC3^ZL$`-D;%)M&'3
-MI@)G@AN\J-\`KO.GNL;JKO3(XY6K6.!WX67U$@L,]E$TX_KKX><PL&?,K&"M
-MOQ/N[]I6!:`FN-HE).&,FO;L)I2?HLSK8:&;[+<M@#1(*Q^N-),0(A:CGW6=
-MTN/-#"=UO]/HAE36TB%SEJ_RZX.-\9716Y-6E((QF0L6.DK?I7-)M/\`-^J=
-M]U;L'])*YRNZL/3/J'NM#I%C7J-!J$GZJ7*QOTFMIZ]\UQ<0V(Y47\4V-7EG
-MXA:]GT=I:"6@K1H](H`QH`^G^BZ3#*N.7DQCE*ES5+891)G?"@UW;G8HNCL0
-MNV-A:4A+F-'T4+J5H)/H('"Z_MW\N?[T_#BKA[J=,^=2(/PL2[O*9K:0`%W_
-M`%*QI7-,@`01D+E.K>'',<:E*,"<J7"SIO#R2]LO348T5&.Q\JWTGJTU?+J.
-M_58G4*]>WFDX.^(5>T=J.O7Z@N=GX=-_EWS:K7LF9!Y4;JD3)E8/1NH#%)YY
-MV6M4<'&6D0=H3_#1KIH(G49]D#):V=7NB![C/LG#=+=$9*U"](VN!=`&?<IZ
-MS`6.U9[05$?^87<A/5J_RR=EO'MQRBF^BPN,0F\AG8)JCZ9>200?E-KI^_W7
-M5P?'U8`%QU2,S_95JA&GXXY&5/<..HD<?15ZCGEQ$-''U7L<T;P-@`T("(.,
-M%$\C)D8.0FQZ2@1EL@[C$H,<E$8F0A=!$D\=T#@M=JG4#P1_=)HDSC=,-.DD
-MB'#MLG!`!`_50%'J@A%#2_.!'W0L(B)`.\RD"6G`G*H0:/I/V3AO)'V2:Z-C
-M[83`M$X[YE$.UHTQG.V41$#O[E,-(R.4[C/]6/9%-@N_=+2T$['^Z:1J.G9*
-M>W"`B`6D3/\`=-I$3N-MR4X@M$P=/!35B`XM!+AR=N$-A(AN$VF1@?=%4+=)
-M$1]4FX!P2@30=MCV2<W>?E(F#&\8RFG!SG9%(F!`^"D!Q/T2!`/,I2-<@$0B
-M'<-1!!@3"%['DP!MB`B);]1RB)D2XR9Y0`<-DREI$0=D\MUD@[;2B9),B".0
-MH!P03,<IBT:3!F43C,Y^R$F`?5^7"JA:-P1O[[(],4QZ@9[(0?41!*1DG),2
-M40\`'&!RD=42#[B4[)+,$9,I-,GU'`V^44Y._J1:AL"A,C(/.Z6I-(8B792-
-M-]/)!`(D2,(\AN")&4,N,R0.X"!VZM\PGI8<)_[I3`&W<RFV``.1.2@<F9`R
-M.Z,NG<GZ(6-)J`3MRE`:)!$<*"2W8Y[A^JVNG6;VMD_U+/Z6QSZLC!G,+K7V
-MWEVS06Y/`4J6LVWH5:K@P3''8+4Z?;%K@UNHYS!Q^R'IM-H9#X).<\+7Z!0#
-MZ_J$CD0N.5KIBZ?P?1:UNIQ@]IGNNSZ=1)<#`6+T.V93I"0T<X73=/IYWCX7
-MF[NVXT;*D-#<$!:_3Z.F"(@*GT^CZ=EKVC`,K-=8O6E/V5VA2`SRHK-HR`K]
-M!HD#*-Q)0IC8A7:%.(TA0V[,XV5ZWF`8E%2V[,#"M4VDC`P@I`00,0IZ$C*T
-MR36$>EW_`'4],#5'9+^K?/.$3()$;'E0-4;.3VW2`,`$R1V1.`'NG8W2Z=_?
-MNH!T`YXV2%/<SE2N`D#NI&,!&?N@JFD0"0)5>[+:8DK0KD-,3L.5S_7;P,81
-M.2LVZ63;/ZU>L@C4N>J^96JG<B5<<RI<UI()^JUNF=-$:G-$^ZY[;Z9%GTUQ
-M!<]ICC"MNMVTF_E@]H6\;=K&Q_9974=+'&9V5TDNT?3F#7LNHZ32:&C&`N;Z
-M29JY75=.+6@"-L*XM5H4:(<,`&$-2EI)@84]"JI:;0\C&ZZ\5GIFNI2/<*K=
-M-TCU2NA;:MVC!5.\M`9V'NI<5F3F[QL#&RQNI$$.]ALNAOZ8;J@RN?ZH``3V
-MS\KG>'1QGB9S1JS]UB]-@W!+5K>+B"TG;V6-T36^Z[:3]E/C&3IZ+8MS!SLL
-M?K+<Z=^5NTJ?\@>_=95_3)?EOR4E<Y&#<T?+$B)&0M+HEZ&#0\S*:O;:J<PJ
-M#0659_1:LVL_#H@UCJQ>#/;*Z+H=:EITN@G;"XVRN@)#S@>ZU;*Z-.'-/U6=
-M:JW>M.\M7-;3D\*AU_KUITZF2^HT1W(6-=>(&6]@XN<!]5XO^)GB^O6JU&-J
-MNP-@3C]5Z<.MO'GWIV_BS\2Z%,O;3K8'O_JN0J?BJ[SQ%<P8V/\`JO#?$/7K
-MVXNG`5*AD_E!.5GW1ZE9U6/NJ%:FTY&MI`(7;]JWA)I]3>&OQ#IW,!]5IG$$
-M[+N>F7]#J%MJ:09XE?'OA?KE=I:"^#N).R]P_"#Q,ZJ!1K.]0.<_*XV7"\EU
-M\=OXIZ2RJ'56B"1A>=]6\WI]SZB=(.0O6[A[:M"<&>%P_C?I+:]%[@T`1O\`
-M93/'<X=?'Y/E8]K=,JL948\2.Q72])O?.HQJ]2\ZZ9-G?FWJ$@'8<+H^CW6B
-M]:T.])[_``N%M^O3K5U'74G;F!"EID'(.>P4-L-5,3!'96*3(GNMPM0W!#7P
-M<SNH:M5NF0,*>X:&DR>%0N7RSM"Z1QR+1J]0>(*7E'_&%6\QO^RG\QO;]5UT
-MX;?(=S`,`AP[]U7J"'=YR)4]P6DQ(D<GE5ZI;`(,[X[+UUA'/&X&X49``!&Q
-M1G3)GE"8@;'X40TDP#E,,.G8A&7$L#3$`R$((&44H$D&)PD\`G?(38U2)SLC
-M/Y8QG]40P(R!]^Z<:0Z7'&^R83SMPD021P@.D01$[\I0)V&W?=,W;$@_*;82
-M52G#6C(^436MW<^,;^Z$9.R7^X0)V7D[Y3N;!.KC:$@V$S]I/^PD#Z6D1D$(
-M2UHF<E(CF9GA(-)('/RH&`U'YQW1`$?/=`"0>Y[(].F6ELGB#_DJ:"0!L#'M
-MRD(_*1F-TGD%VXPD"-,R"XJ*0'H@[CE*'3,_ZI/`(Y^J=FDND?9`@&:#).K@
-M<)23C4E5!D'(D2A8`AH36G8'/L81`[`B.Q/"%H(_F3@8[IH9)R8^TH$3`B"G
-MR6:9'>4_Y6G;`Y*%@D9)]D0S6#`GZH]()R=DP!`&84M33H])@#@JJC$`=@,`
-M),P[5!(V*1,Y,`%,W<F=^$#P[D(@TZ2-O[I1$"?HF.#Z3"`FMDY(G"9S"XR"
-M??"<#`DP1[ILCU<?V1"`]A[>Z<`.=$B?V2`#L1_V3DD`8CA3H,`<F28V[!.W
-M43E*"=L2IK5H-5K-LS*#J/`71ZMY5%31+>_?V6_XP8VW:VFT-U;=H5[\.6&C
-MTXAK,D3\+/\`&.IUZ6NF)V"XYYS?JUAX[;[52Z)0\RL=8+I@8*[+HEGH:V`-
-MYPLCPO:%T$@D[X7:],M0W3I&%P\EVZ3AI]%MA`U<KI;"B&M@9[+,Z50AHU#E
-M;UE3U$2V,+FU(O6#7:1@`K6LJ4C\H5&SIF=_JM>UI'3[^RC<6;9@:9$*];4S
-MA0T&`$*_;T8Y*-;36],`CLK5!D-'LHZ;6@*>UAPGCL5=":F`0`3/]E8IC$<0
-MHF`[*:EL!,!6"4-]0,HP!'RHV[_W4U(2)[J$`W>8(A3,9)S`A%2IAQRIPT!N
-M4T(6TQ,$\)5H8P03E2NTB?=4>HW+64YD*45>IW(IL))7+WCC<5=,D\JQU>\=
-M4):UQ*/I5`$!SQ)]UQRNZZ2:2],LVL`)9GW6DXTZ+,B!W0.<VF))B,K!Z]U-
-MP!:TF"/LIO2^NQ^)?$-O947_`,QH`]UPM;QK1N+WR65&DSM/^JI>+A<7K7_S
-M#GW*\TNJ%?I/7J=1Y(:X[Y@J7VK>&..^7T;X:K"XI"I,SW74VE2(_P!RO//P
-MVOA6L6YS_P!UW-O5D`XE7&\)9RV*50"`#A7;6L0T$D2L:C4(]2M4:OW"Z3)F
-MQLMN1IW56]N?285&M<:6D3^JI75X,@._T6KFDQ!U&JV""`9"Y[JC_28C*T;J
-MX$.AP^%E=1?JIGV7.UN<.,\6.!!D[K&Z!J%R6G'Z+>\3T=3'/VC]5B=#9%WM
-M,G"EZ+'7VXF@`<E5+F@#QMA:EC2/E@XRD:0-0J1AB/H$B%E7=!P>2W8KJJ]$
-M1$+.O+8%LP`MQ&`ZB1D'/[([>X=3<`XF#[J]5MP&$9SLJ%S1+7'>.86M;5<N
-MZ(O+:`001C=>4?BAX9NF:JUNS#1D0<[>R]/Z9=.;4#7-AOLMFKTVTZE;::C&
-MND=EK#+5<<\?KY)\,7%ET_QI:W'5Z`?;TJFI[*@X'RO6/_$'XT\$7_X?OL>G
-MT[*YO:VGR'TF-FB`X$Y&TA:?XE?A9:W=%]6VH-94`P6#_1>&>(?!W5.FU1Y[
-M/29&QD1$S]UZ\?[>^WGRQF4U^&9T6L0]I<W\OZKTW\)^HO=UIM,-($P8^JX3
-MIUAY3,,)=M'NO5/P=\-5*50755K@7&<K/FU88O9[2HYUJV=U0ZN/,HN:3L%<
-M8X4J$3LLN]N&ZCI=@<+E>(N$W>'`>+Z1H5!5:(`.3"BZ7?,?7I"#+MCP5T7B
-M.C2K6K]0W"Y#H]L*74H!($X,KAY/R]F&OKU+I%8.MV@X,+0:26R<K'Z!'ELW
-MD>ZW'M`9(/RKBEJG>G+O5CGW61>U0`8=\+2OGQ.?E<]UNNUC'&?U7?&..5X5
-M*MZX5"&D0A_CG_X@N?KW;_-=IV0?Q=3_`&%W<O6O`[D#S"7&>%5JN].D1!5N
-MX+7OEK(G8`[JM<L+':7"(X7>N2%S2,@$2)R@&>%(X3$ND(1`/?V32ASI(@I@
-M.-T<NR!]<I.+2[`COE`!,[82>T"(TDD?;V1L$B"\#G)_1!IYS]U`B#JV^R0D
-M081-`#ADHB!L'?W5@8DNW'Z0$VDGZ(X])WA)S=D#`^F,S^Z8"<1E.W:"=L)$
-M$"90(3$29W14C#FRT'V.Q33@YB.1RF(@9A`3RW=I4=:=3B'&"BS`@@2F<YP&
-MG60#N$$;OM*<3L2?H4G:NZ0S$_LBF#=YF$\3.EWNDWDDGX3Q!,$*:#$G;4G:
-M3.)38)C=(G$*AR3P283M)/=,"WE.2)B`1WV4#ZCR3&TIL[`PGYV$!,_?@]I0
-M(EP&28"%KB8!/W18#>-LYW09)[J@I))@Y"D-1SZ(IP(;[*-C9,$@>Z)H])R$
-M#$&3V[A(`B#"D;ALD84CRP6X:6#6#.J=QV326H7$XS/PF(=));]`C:9(,#/=
-M'#8@E#8!J()&0/9"3#I<V>Z.!IF"`>$PQ^5L'N@.D3.!N-TU0D-@3*3=X@9V
-ME$]D@X'R%`!(#F@".,KHO`/0J_5NIL;HEDY*PK.AYM9M,'\R]J_">SM[#IS"
-MYK=3LRN7FS]8Z>/';J.B]!I6/3?+#`-(R>ZX+QC18[K@I,=MV*]*ZSU.C0Z:
-M\AW&%Y:*K[[K3JO+BO)CSD[R:EM;_ANWAK1I=\KM.C420"6K!Z#1`<UIQ`C;
-M===TFC#`,I]<JO\`3Z1:X`C=;-K3../=5+*EM#25K6K02TD05*W%NPIY$A:=
-MMC(W5*WVQPM&U:3[?*C2Y;#8PKU!P)WA5[=@(^%88T#8*JLTCZ@)QRK-NX0?
-M3"@I`R.59IB1/*"1F'3F%,P^J)^JA;JGCY4]$9R,%3:I&@D[%3T],?""@UQC
-M;Z*5[6CA!(VII:9":I7QARJU*P!W52O<-;JSO[J6FEB]N]$S@+G.L]1)!:#O
-MV1=9OP`6@Y*Q&%U:M!,K%R=,<4ULQ]:KJ,Z>RW["GHI1!/NJ_1[<""0"%M4Z
-M;`T8CX7.1M0N*3GB<_"PNOT&LIE[H$!=:]K0"3PN3\8%S@\,)5LU-D_#A^J>
-MNJ?9<=XXZ36NJ(-,B09&%W#Z+G5O4/JAO.GBK3RS"LO&EN.KM%^$[:M&T8RH
-M22`O3K0N\L?YKA_"EJ;>H.R[6U>&@">-RL8S2Y]M"DX3$J1U9K6Y.0L\W`8"
-M2<!9/6^N4K5A+G#'NM[9TV+R^`)`<LVO>R<N"\W\2_B):VE8M=6`(]UF67XA
-MT;FM#:HRL7+ZZ8X5ZHZXU[F5%7<U\@1\K`\/=8IWK`=>>RZ&VIE\'/\`FI,C
-M+'3'ZW2!ID1PN>Z93#;T;[KM>K6Q-N[&ZYFE;Q?2-YRM6\,1NV3]-,@[*>FT
-MG)RGZ=;%U,$;J\R@`?WE,>6:SZM,021"KOH!_P#3]5JW%`$8(*A%&&G"VS6%
-M<VL&#PJ=U;`4W-Q+AN5T%Q0;JG]U4JT&G<#/*VPY*ZHFD9`(*N=$Z@^F0UQV
-MV"N]4M@>!LL>O0<QVMLA6KW.74FM3KVY!`]EQWC'PQ;7K7.\D$GL-EK=*NM1
-MTDG_`#6D]OF-@D&<JXYZXKEEAJO'*/@ZA9]2#ZM,%L\KO.A.M+2@&L`"TNL]
-M-;5S`^BQ;JS-*F&M`$<K6^>$]99RT;[J%)S(:1]UF0ZM4]!D$K+N65&F"=D5
-ME>BW?+B2`N>6=^MX82+?B"U>RS+78D+DK*FZGU(:OZ3L%U=[U)MVP,F)[K.?
-M9M%<505G/5G#4NNW0]`+6M!)(A;AJ,-'4:D'@+G>GO#6#U+294+F$$C(X*WB
-M9(>HU@1#>5QWC"[\J@:<P7X"Z7JA&@DN/U7"^)W.N.JT;=N9*]&$^O/E?BST
-MOICZEA2J%IEPG]58_P"$N_P%=?T3I8'2J`.^E6O^&-3ES]WQS5W]APJIW$`R
-M5:O=+JA<&``F855X,D@8]BO6RC>3J,[\@I2P$Z09XGLDX3).23W0/W'<;H$(
-MP3E,8G?!1`9Q"'?!_P"R!O8@GW2';!1%C@W+26S`(3.:0^1('$JAA^6(B$6\
-MG?;"%HR`"B(@Y"@+4<'@)#\LF4#<MW1-((&-^Y5#YVXY3/'<$)H)"9X).24!
-M.<!L9^B0.?9!F$T3$H)`6')&3NA?#N8'NF)SN,)MW3!'>$4HVQCW"<'./W3`
-M83!L'`4!.;!("8>[3LEI`,28`S*<`:?9`P@`04@)G"1$B-B$6F&_"H;TPGF!
-MQ]TS0=<3&.4S=Y/'NH@CEHS@)`#5ONG`(W`^)3&)[>R*?T@'T@CY03Q)E&V(
-M(WG;A,V`_@9V"(:28R8E'ID0-TY)#2UKX!W2!@QW0)H.DR["+4(@Y*#$P#NG
-M`;OPJ&D`@?NB<2`1&>$((!QD)<G5'V0&R'-C?Z)G-C))]A":D&EI#0G@C&([
-MR@>F)=)!PC,MQ*"F,F!"EIM+GC2TDSG*@N]%8'7;7`1G.%ZAX4N7&M3H:H!@
-M&%S'@SI%-U'4X&>Z[?PCT84KP5BTX&Y7F\MEX=\,O6+_`(W:VAT@PXDQB%R7
-MA.@'W7FR22>5L_B9=Z6-H!RK^!+?8N$Y[+CCQ+8U;P[+H=``-DB>5U73*>1C
-M'98O1Z0$8PNCZ53AX)V4VQ(T[)D1Q[+1H`$P!E5[1H!SSP5>H-;M*S6XMVS9
-M`,%:5N,#"J6K1I_-^JT+1L-U;A%6J$Z5:8`(]U7H@=HE6!M`$JJGIQ,*=CL1
-M.%!1VR-E8HB8,9*C6DM$?4*S1:V1.%#0:6^TJ1U4-W5V:25:[J;]-.GC<F=E
-M%=5XY_55[BY`$ZMUGW-QO!E9M)%FYNL8&8PLZYN"9R@=4)D:OHHG-+C]%BMR
-M,[J=1SGXF$NFD`^KNK56VUSB%&VV<P86+MVFKPV>G5FM``6BVKK:`#"P[*F\
-M/`+EJVI(@?ND6Q/4<\LCA974+!UP3JV6TQNJ!PIQ;-TSI]UO6V.G%U.BM827
-M#G=05K#2=L=UV%[0:&N`;E9-S1;L`5-2+.6/96K6OD"(6FU[64LIVTAO^JAN
-MA#2&\+#2IU6ZTT708,+@?%+[BZ<YH<0%V=_2?5:1)@K'N[`YU-3MJ33PSQST
-M2]JW#G4VN<)69;=+OK=C7.:6EO*]TN>F6[YU,&5D]1Z-0J/T:0>(6KG9#'*N
-M:_#?JU>C=,HUB8G&/]%[CX=N&W%HTC)/N5Y=;^'Q1K-J,:`9X7HW@FF:=%K2
-MXDQNN/,K6=F4;74&`T"#&0N9-$-ZA`&Y767PBD8,K`#`;[5L96ZY1M]-MR+<
-M1V4WDN`("L=,9_(:8X4U1OK.%TG3G6<ZE`@A0U:9#96C5I3PHJM*`<$K49K*
-MK-!/^2J7%/>/LM>K1&8'TE4[FF0#`!51AWM)L:EDWM$`D@[KH[JB(]0"RKRB
-M-41^BC6G.D/IU"YI+2M3I=X'0UYSLH[VD`2"/LJ<>55#FR"J6;=`ZFVI3G"S
-M.J6@+.ZGZ=<RT!SOD*2X<UV(P597"RQR?4K8"8"P[VB0X@$Y79]1H,<3PL*]
-MMOYI`B%N\PG#&HL<*@)V[E:#'M%/)!)&Y45S2%/U1D*M4K@-U2,=UPUJNO<;
-M%BX&)S/NM`NTLV6'T5_FD$#$[K8K5&LI29F%UPY8RX9G7*Y92<22,+B>AU#>
-M^,=.N6M.P71>+K@MMGD/CTG=9OX2VC+KK!K%N=>Y7HG3SW\O7>EVX'3Z0#?Z
-M>58\@?X5IV=LP6K`!B%)_#M[+K'E?`-Q)JDSG=5WP<RW'ZJS>.EY@0"<<JK5
-M?G!)^5VKLB<)&,DH,[`C*E<1.VWO*!Q;I(@ZIP>(4-!R3,),'I(D=Y3EPC`G
-M*$F3/]D#N)VC?A.2YP&HR>QW0!_^RG)Q&^-^Z:#9!B-NX1GU.)(P3F,)@8G;
-M/UA-)D-)$#8*AY$!K6DG^R4XVV288[#Y3N)!(TX]U`S2=XA-F8C'=&S:8QLA
-M<[.V1A`T@-T@9F9X2).F83NRT2`8"%Q((B$T'`)]1!SRF<T@Z<&1/=2LK.;E
-MI=MI^G9`]V9C`[*J$@Q^6?A-)&8*)N4S@-YE`HR"3]-D],P8C8II'=(QI'Z$
-M*!R2-FE,3&THI`&\D'9`"),H$>#.R<9]Y2!W`&4[2([_``J"#HD&"(V*8$;C
-MZX3$B,3GW3LB,$SQA1"8`23JX3ZMH/RG%0:1Z8@S,)C^>50\C5P)2)$$P/9,
-M=$A$S000XG:0BADX[)-/9.V"1.>"B,:1IC"`&"&_*?&Y@?"=X$0(CDII!,DX
-M&\)H)OOE$.^`WMLD0-YS&1[)@?5B/[J(=ADB`M#H],5+EK($SLLX1W``XE:O
-MAMS/^(4]1`$J9<19-UZ1X.L7-HTSGX'*[BT'D6VJ,`25B^#:;/X.F&Z5T=YI
-M9T^I$8;_`&7S[;M[,L9T\W\;W)N.M>6TB-41]5T?A"EY=LR2)A<E??S?$3R9
-MPZ%W/0*(9;TY'J,!:O&+'DXNG5]%&V%T?3&-P,@\K#Z'2'E`RNCL6P!@CX48
-MC1M)#8._RK]!N0"JELW`D-^5>MFR!$K-:BW:#(,+0MP!OM/=4K89VV5RD1GD
-ME%7*)C`&RFI27*O;\*S1&>))V2M1:I``S*LT0,$E04FY$J9KH&!NHJ8OTM]X
-M5*]N!,:LA/=U@![K)O*^IQB=E+5B2M<:G$`D*(ND$3E5M0D[H@2,0IMK20X^
-MB-CA`(.5&R'$#E6[>A)]E%!2]3NZLTK<$"1NI:%L"9A7;>B(`(5TOLJTK6(+
-M6Y5RWMR`)^RMV]NT1'"L,I,V5F)[(*5,1B,=U.UOHB%,RB`,DPK%.@(!W6IB
-MSMD75OJ!.!&2LJ]MW-<3NNJJ46EN6CX5.YMFO#F@#/)4RP=,<G*Z71@;*-])
-MSC,86[5Z<W48F"D;"&@=NZY>KI[1S_\`!S,A4>IV8T'V755+8`0,E9G5*/H(
-MVQ*FE<)U!OE.?MA95-CJESM,E=9>=,\^L0)AVZL]/\.`.U8.%B[IN1B6=H*F
-MEI$+J>B6XI4P1`14NF"B[;;E:%*D`P8XX*2<I:J]3>!1,[A8]@T5;V?=:/5W
-MM#2TF.%#X>M]5?61REYJ=1TMC1B@&B9C=$]FY.ZFM9%,<!'5`[_5=XXJ%1I4
-M>B2<A6:S=1C:%`6_>%4JI6G@?*HUQ.P^5I5VAQA4Z[(;I)"J1GW=.1,02LVY
-MHF3^F%MU&C3@@_*IW3&AIG[J::CF^H4C!D[%8US#:G(@[A=-?T0YC@!(6+>V
-MA#C@&5-MQ3MW.#Y!P<K0;5)9E9_ENIO@"0,Y4[7X@'C95SRA7A]&#*R[]OIG
-MGV5ZX(#9CA4*YD<@+<<K&7?,+V1)G^RY[J-9].OY;1.5TMZV-7[KF^K4GNN`
-M1,$\8A9RGTQO+H_#%*+=I(@]U9ZM4`)@^RJ]!?Y=D&@Y`0]2\VK3JN8,,;)R
-MKXYPF=<GXVO/Y6AID@[RND_!GIU6F&W#@<G405POB=YKW[:8[QDG)7J7X14Z
-MK;*DUV,`8^B[R<R.&?$>CV];31:)B`C\_P!U7&!&HI9_Q%>OT>/V?!5TT3J(
-M#>T&56J@1+3DXRK-P/YG`/;=05&>K2X<*O2K$Z9`!!^4GMTZ02<Y([(W-&WN
-MA,2>W!)4`;B,;IB,Y*>!ID83Z,$E`+A.!*9A)&Y`]D<YF8^J8@S,G[*A-;NX
-ML($Q,)#\T'[!(`<S,I1+H`_T0(&=X!"3L#<X/T*)H&C;,[IC+G:B20@9KO3C
-M.$B&G.T\=DA`W"(@;9A`.YSA,[#2/H%(X2?D90M:)(C$_9`+#C]4=Q1J4M(J
-M-`-1H>,S@[)F$MJ-J`!VGAPWA27ES7N7,\^IJ%,0T1L-X_5!`P-`,C!_5.(X
-M&R>!`<4Y:-.HC?*`($[3E-$$1RB($8R)[*ST9]K1ZE;U[VV-S;,>#4HM=H+V
-MSD3PH*PS.,A,YQU2[C`^%/<FD^ZJOH4C3IN<2QDSH$X$\X43J<F.(^R``T$8
-M(F=DP',<J0T26X!_R3FF2XC(X$E4"TPXB`0<2DW$1D1OS",L(=Q[%,6$^HN`
-M^2H&$1./ND^`8&>^488=,EPC@S"8@#5(:<1GA`+FM!'O[I-TD=C\I.:#_4`#
-MV1A@+8)&_=4"($<HZ+A3J:NV1'?A,QD"-6Z=S&B(<!B4`AH.2[)RFD2?43]$
-M>EHD:D_E,`:2_A-@&'W/=%&29.W?=/Y;/\8']T!#)F3"!L<D[[J:W>:-9KQ\
-MSV0!LMEDCZH(PX3LH=/6OPTZ[2T4Z%=X#L`2?9=IUR_I4^CU"QP&L0#*^?>G
-MWE:U>'TW?E[+;/BB[KT!2=4,;+RY^&WIZL/++_9TW2GBKU\O)D:H_5>B]*IB
-M&,#3``@RO-/`G\VY%0Y)S\Y"]0Z,"6,Q&Q7/.:X8SR]KMU'0V::;<[?JNBL6
-MRT`F,<K$Z.STMG.%OV`P#N3NL$7;8`&(5^V&`Z?H%4H,]0,>Q]U?MP<3\J-1
-M98(`D0K-%IB95<$@YV'Z*:@\GX^4VU%VB,`JU1C"K6WJ`5IK0`,J5J+`VU9"
-M:I4`:/5!0EVD8^RS[^X+=7J@!2J'J-Q!/JQLLXU2Z<SF=T%U<&H^)4=!QUP=
-ME!8:TDP"9^59H4G:<R5'0;)!!]U=I#/;W[*:78K2E+CQ')6A;TAJ$`3ONHK>
-MGD3E7Z%)P:.<YA61+4E&D&R>RL460)A-2!=@8PK%(-@3\0M*DIB`TR,J2F`7
-M)`!V&P2G9^;M"HL4Q(]E-3$-Q^JBIG/]E/3$C/PMQ*"KANP,JNX'=6ZC-\J(
-MLA^)"595>G3#B<"$]6D"V8E3,`#\B/=/6(`(^JFFMLRM1R8$86;U"WD'`6S6
-M[XB%1O=);@;KG9'25S;J.BX@C8K4L-#F`1E5NHTAKU-$'=*SJ^7$F5QZKI9N
-M+US2U<1"JW3A3IND20,*=]VSRSZA*PNMW^#DB>)2UF1G]6K&I<Z`5K^'*9#!
-M(^JP++57N)W!.ZZKI+0RFULS&%,>TRZ:U'#!S")X!&-^R"BZ![E2O`^(79R0
-M5&&9(QW4%1F8C'=6G-QOME05)F`JE5JK`!@&53>S)5^O.D\*K4VF=E44JS-!
-M)5"\!+<8E:=U!DA4;B#@G)4VU&749)(GC*S[VE`+8,E;%8-!D$*A=AIU1OOE
-M-*YZ[IN;4)B.,*`@;[$\K3O!/ITX69=L]4@^\*QJS:.JXND$<*M5T@1"FDD^
-M^RCN"-)!&58Y933*ZBZ).^E85R]KJL-'J&5O=3PUTD?*PJ[8?M))PY,JXKMC
-M6+:6(B),*OU*\++=[FGU.!!,*%U;2T,&_99_7*[OX9P$1&4PIE&+;UA5Z\V?
-M5Z^WNO:_P_I>784_3!(F>Z\2\)M?<]>:3_34X^B]Y\*L?3Z6QH&-*].$_D\W
-MFO#3?<L#R'-,C!A-_%4_\)5.L[^:['*'5[+W/%M\35H#B2#CE5JH!XF%8K1)
-M@P%`^`X:_4#N`N;VHG$Z"T_E&0/=`?B92?ZC[#8)H..(,[H&V!E)H`/_`'3O
-M:00!VF4P&0$");DP!/Z)B"6@QCO*)^<F7$<RA<XP`0"`H&W.HDRG!`9G&(W3
-MD@DN``D[#9(P)VGYA4)H]4B8Y$H@.QVW3-,[`RB$'!*!M(T@YG:2FG$2?E$T
-M8[I%IT$D2$#;@0XR1E(8&'9.$FP.9]TG;",>T)0YTD[X]D`&X+D0@-$B?HA.
-M1(R@=C?<P<I">2-LE-Q,0@:=.YQ\(">WW3`Z<R92CTS'SA(9.1L@+4Z!)3!Q
-MU'8)W`$`C*1#7-)_+`^Z@$O=J,.,)M9<6R2F,S(28UKJ@:7:9_J*JB#G`G(P
-MF!=@G<I#!P9,[IB1VE`@2#P.,)VN,&2,8RE(G_-,T2=(]1C;=0*?3G;X1AQ.
-M&D1*!PSP([E*??Z*B1I,C&R<ENG!!GW0-!:S43B8W3P)B1!4!`D`GO\`5,\G
-M5G)XDI2.\`>Z1D@095(4F/68E(NA^_QE+20(SG8]D[A#@`\N`R3L@=CM.'-D
-M1M*$.,'3NF:`1C]24I]1C"B#IG`](GY4M!H\P0/U45,8!G92VT>:-P)RBQZ)
-M^'E.&LU8C$_9>H]$;AITXP%YK^'%+66DN:.TGE>G]$IP]LU&G"\7EFZZ1U71
-M_P#EMF8XA;MF8`GY6)TMHAI6W:-,`X^JYUN-*UG`S&ZOT(`ET_'94K1I(GZ*
-MVP:>2HTG)D8)D[*2T$B!^ZAI9V<KUHP'.!\HU%RS8("L#;V_=16\-`SPC+PT
-M079[J:VJ*\J:)D\+&ZA<:I;B>5<ZE6'JTG*Q[DDN)/*R!8XET'\OPK=O3U.S
-M\JI2@>TJ]9MDC8B4T;7+1AU?FPKE$MF9D[95>@P`[1"O6H$[X*?\6+-J#J#B
-MM*W`(`GW5&DX-P#*O4*@:!ZLA6"Q2;Z"1]DS"2^",;RDVLTX$2I&:"Z9&RTL
-M'2,84[#J(,`2HZ6DN$?=3!XF`=D@D8R/ZL`*1CHV.V84#*ITZ<;J1KLC:2M"
-M<.PF$%V^/=1.?I^4[*D"<*[-)7QI)D;J*KZA&)3O?)F,)M33)4%2L#JSG*HW
-M^)P%H5R-EGWC06F2L9-XL;J-32#E8ES=Z'D-,0M?K`Q`.>"N=NZ9+BX$X7#)
-MZ<$M:^/DDZ\]ED7]TZK5#9QLFO2]F!RJUI2<ZM,<_=0L=%T"D"QN`)72=/;I
-M8,+$Z*P-IMANVZW[0[?"UBXY+=`$NF,*R6:LGLH+8^KG*M2"(E=,7.H'M(DA
-M0/$YB%9K8!C*K$R2(SRM(AJ06D'M]E3K`D?*N/@XE05&C/8<H,^X(F#B%3N6
-MMTDM_17;QH@F=\`E4:\G!/'=*U%.LT#X&%2N\B>>`KU;_P"["S[P2^`?JC3.
-MKB7$[$9^JH7%,:'<DK2N6@`DJC<B!$ITK+>0UY]E!5?+C[*6[:0XF8$K/JO`
-M>?4<JLW$-Z&$96)U!HF)^/=:]T\%N3@+&ZD[USJQ]T^//E-51KO`>0[A8OB>
-MX:*+@2&X[9`6G6,N=J<X97,^*;@.+QJ)SF5OQSEFM/\`"JFRKUD.=!@_W"]X
-MLGLH=+9IWT_V7A?X1@#J`<7""<#[+V,UGML(.T?9>GPS^3Q>>HJUZSS734C*
-M'^-I_P#R+!N6N-=YU')[H-#O\7ZKW/*^7:WY@V`3['=5J[8)])'"M7`!)*KU
-M-);.?A<'N5WD;<E#I&Y'V1G)W.$Q(TX)^J@"0';?0I$X+I(G$)P`1F04SVN`
-MQA`&HDXF$^II$"?JB(`=.1^J8P3OCW0(E@,M)]TL:I((!2(!Q'WQ*38`,EWT
-M*0.TMP&X]T[B`,Q.R=L;[RF@3B539PZ/C9(N]\;0FV.GNDYHWV0+$2#OA*I&
-MF2A`$P#$(J[FOJ:F-#1VW40AI#07&(]DB0YL`3R7<I?U>K./A,YIX./A#H+0
-M"(V^4B2T07$CLG@1G<;82<UIYD(I'8P=T(@1+D\#/JE,6R>ZH(")@X3.+=)W
-M)3_T[(7-,?FQLH%)$PF$\$%/I($2DSG2=MT#`NDG5D^Z6VQ`QLD0>=NR$P!W
-M^J51$_U2,\2GI5#3,M,&(D'9`UH.Z<@!`MR8.V8)2/M@]DT`'O\`!2`$D;_*
-M!QN<A.`(()CX30=P0B:#J.HH'+=X.R;8C$_">,Q&0DYL8@;;('#LG`@IHSF`
-M/A.1C:#O@H3ODX0$T8P`4B)$:1/>4FMS,.A)S9=@[(@F2/\`)3V7_/;C"@`X
-M*L].$5`,CX18]'\`:139(X7IW0A(;"\R\`L,,#B97J?06AM-N%X?)/Y.N^'5
-M=+@-:3QNMRR`+1DQ&%B=*@M&(6Y:B",;K%:C3MP/+YV5BGAH[2H+0"/[J<8?
-M"RTEI.@C'*T+,`JE2:(SLKE"&MW1J+3<`DE5KNL`(!QV2K5@&F52N*FL0TY4
-M$-R^2294%>JPT@UM.'3.N=PFNW$-,G94PYSZ@RB=K5`-DP9/*O6T-V!PJ-!N
-MD@;*4U-.2Y1J1KTZK0T$NA2_Q8#0)(GNN;K]2T#33,RL^ZO+UP])(:<[)MOU
-MUV[=G463ET0IJ?4Z9P'97FU"^NGW'EZX.RZ+IM"Y>`XN*;OX6W&?77TK]D@Z
-ML0K=&^8X8=E<U_!5A3U:R.52_B;BC7(!)"F5N/:XW'+IZ!97$M!+E<I%AR25
-MP=GUBJP`..GY6]TGJK7#-3]5<<I6K@Z$C`@!."X9;((4%O=TWM$'=66%I_JE
-M=8Y]&U.)R3E&S:$P`W)1@8C.%-&PAP)_,F<^.4SF&)&%&1!&5`U0^J95.]!+
-M294URYPG*KU'@CU'/99JQC]3I%TD;K%KTR)&)*W[_208"Q;W!)W]ESR=<:RK
-MVAJ'PH[:AIJ`E77Y:3*%C0'3N5AO:[T^`0MRR/I$\+$LL'?"V+(@D$'A:CG6
-MI:C$85AS@UN`%6M.8(]RIJH],S"W&$55QR=E`70"#N5)4V)!5>JTB3,%79H%
-M5\'A1/<'#(^O">J8YG]E!DDPJF@5@'-@B0J=S3GLKSF0"3^BJ5ORF/W6NS;+
-MNF.DPJ%<<1E:=WALK-KCU?KA--13N&!X^%F7Q@XV'ZK6K2LV\``D@(LK)O2W
-M<A9%T(<2!CNMB_:",+)OB6@I9LM9]S5()@0LV_?J)$3W5^ZRPZL`<+(O'#6[
-M,]HX68XY,SJ3RQCO+S\C9<;XCJ@U<Q._^\+INN5Z8:0V,\E<5URO-0EIF#E>
-MCQSEQSZ=W^"[7/ZJTN_5>N=>J"E99($!>-?@<[5>NK:X`"]!\47HJ4"P/]EZ
-MO!/Y5X/U%Y57]0I%Y))W3?Q]+N5GTM)I@D$HH9V*[^S$E?/=RQH&.>.RK/TD
-MF6\<*U6>X$_E^55KETB2`2N3U(@!JDX"&-1_9)Y)=O\`5($ENXQPB&<T9C/U
-M0F=/?W1N)`$D9V0:N1PJ&`,;_JGQ(/"=CRUI(`AV"#E,QS2!'?9#9CET9/LB
-MTZ1L1\*2N^B7@TJ98`T3J=.>3L.4S3+0[3M]D`P9V/T2$P2EK)))W]BF:X:C
-MG`0/EISRFV/*69$[#ND2,`2BF&<@Q*0!W,E$8G/Z)AC9N_,H&VD$2-X3-ATY
-M._=$8,<?)3:1N9@\DX4"&WMW"9TS.93M@DC8(G$`?"HB^=BCHN+'!['9;D'L
-MG<1/I!CLFY)@XX0/4<ZI5<][M3GYE#'L,(RYI,B"0$VIH,Y01P7/P9/LD#P?
-ME.^!$RWL4(TSOO[IH.<QD3RF'<D$I2#B-T[2'`P<CA129G)A"=AV1-(C3CV*
-M3O*X)_U5`-WA/!!W"3@`2)3P)WXR@<`#U#CND#!S]D0PZ&_E&Z0WWV[J(;?M
-M\IR(>,[^Z4,F&X!Q\)W@#TDS'(0,R(W@^Z3BX^WR4WHT[_3**6EH&G(Y!.55
-M$2#$-(')W09`AN?=)L3))QC9.<&<91#AW$X"N]*@U@=PJ;6D@$`1W6GTND&D
-M.QE9H]`_#_-8`#CE>J=`TEC,%>5?A\0;IC2['*]7Z""UC>5X\_[.KING;@<+
-M?M22T2L/I>X&WRMVT:-(GCA<ZW%VW.!A6*8+G0H:(!SL%;MF@0866XLT&0P<
-MJ1QTB04-(#Y$(+AP!@%*H:SS!(*KO=IR8E%4<#Z95>X(#42JUV^7$3A16U,%
-MP=ND]NNI`,@*8Z:5/=-$A[BJ*3,X7->)/$C+)CB7[<)>*^JTZ-LXO>`!LO)/
-M$G6!>W[J;JI%.=X6+;O4>KQ>/?->A>'_`!11N+R7/G,1_L+L_P"-H5K::?(7
-M@5O6I4&MJ4ZI#VKL?#_BNG2L]-:H!A;PMG%<O-XK>8V/$76V],OA5J&&3NM[
-MH/XA].9;-#Z[!`Y*\:_$7Q"WJ5?RJ#O2WGNN0;<U!@//W5F][CI/TTRQGMV^
-MIJ'XAV%W6;;4:S7N=L`5UO0;47E`5WMW7R1^'O5FV/B*E5K/].Q/9?6'X<]<
-ML[GIM)K:C2(WE+;E=9.'E\7[7]6A?='!;+1E46V]S:O],D+L:9I5&#U`SV*!
-M]A3JR"``LWQ_@P\UCGK+JSZ9#7DA;O3>JLJ0-2IW'A[S:T4P/E4K_I%[TT"H
-M#+0?=3^6/;M,\<G7T+AKA((A6:;Q&XA<7T[J;F0UYCY*W++J#:@`:X'X.RZ3
-M*5FXZ;3].GB56JF780,K2,$''=.XDB1"5-:15!J:>ZJW+0`3*GJ.TD@G"AKP
-MYF%C8RKQYU0`LR\;(,B/=:MY3AI)P%DW67;[_HL5O%2TG5$?5/I/,(B3&-^Z
-M"8=!^ZQIO:S0QMN%J]/.`0<E8]%P)Q@E:O3#!]E6:VK-WLIZ@!$E5:#HCD'L
-MIG.B"MQD#Q!.57K&3A2UG3,*"I).TJJK5"2["'28D[*7TAV<E`YPV_NM1FHG
-M.)&^_NJU?(CA3U7>G.55NG#20`M(IW+001NLZLT`GM[J[7<1,*C=.,F/T15.
-MY=!,RLZ_@L)!A7;DDM67=O=M,@H,^NTQ(*R;W+HB/A:5Y4`$;$+*NZX)))D*
-MEJA?._EF<!8M^ZF&;Y&X"UKYS7,W'U7-=4J$^81$#<K.OPY=L#Q!7,.8'3V(
-M)"X^_+JI?.0<96OU^L#4>`[/"PJCCHYEQR5Z_'-.'DKT7\'!Y5HXC[_5=3UI
-MI>#J)$9PLK\+K`T^@,K3EXG]5<ZS<^LM8X%TP0%Z/#.-O!YN<DEO3;Y+<\*3
-MRQW5>E5'EC40"B\UG<+>DV\%N7;-('IDY"IU6'))&#RKE8>C42T@=U4KQ,<3
-M*YO6@)B1B"F<P`'41V1.T@X(S,SPA(!F2)'=$H`)@#8<IG[_`"C'Y2.^R&`2
-M8B/<HH'!LB`?A$S0:<:I)X[)$>KO"36@/@=OE4.\$'26P0<@J>G7;3MRQE*G
-M+CE[A)^D[*`-`)./F=D0D-@$`(&`],DC!2(;J<B:T?$)B,[1]4#5(:[(V3$#
-M223'PDX;(@R8:(S(W4`B08#1(_1,_#>_`1%HG83O*8-$@$?7V0T89:?G,)X(
-M,C'9,1C';=2.CR\B%0,Z6D#&K=)Y=`U2G#89,?FV/=(M$80,9)B4(:?>$^B1
-M@0$;8TF9S[H!#009"8-_I.(1N:(=F$+FD@#4<\H&<P1!S'NHB(=)^REJ.&F`
-M[[('#83'*B@<(.^R1!=DF.,(R"'&9@]BG8T%QU:BT;P@%H+=."/A-^5^[H[J
-M2&D$"?JA=$S'TA`TR?S"#WX1%S2(@`]^Z%D1S*8;Q.P0&#Z3D"<)-TDDDXW[
-MI/:)P<;Y1.:0R2[=$"V1L[8X2))F#+DW!.K=.T`.W/T[H'@D3(2`)D<$)JAU
-M$Z73/!2:-,912CU8'^^Z/2(@B#V*`CTET@'@#E$,G5JB"J@K=LU/\UT%C1_D
-MM,0.%B]/:75=/?E=3:TW"T)(PW("YY5J1T'@`?\`JVM$"<97KG1)\IN,PO(O
-M`LBZG'SVW7KO0/\`EM)7ES_LVZ?I@@#/ZK;M1L9C&Y6/TULM!F%LV[8;.KA<
-MJW%ZCF<J_0;GD^TK/H`F#(RM.S;@9E9;2%Q#-B%4J23)5FJ[$;0H'9$'"NC:
-M%Q!R!LJEVZ9$[JQ<``0%4=)))2I"I-@:MH69XEZBRUMW0[*L]1O!0HDD@0O.
-M_%M]<]1N#:VY)DY/99SRF,>CQ>/VKCO'WB&XN*[F4G'1/=<5_P"H=4)=J))^
-MB]1;X)-2B:M7+CG*Q;OPH^WNH#-0!Y*S/),7T,)CU'-65.N6B7[9C=/=U"PP
-MYQ`[%=)5Z=</=HT&6M$``<*.MX4O:C"]M$GY*D\D^MZD<9=/<XZI,'&^ZJ5-
-M1$SD;KL7>$KL/=J88!'U4'4/#%U;VVMU+*Z8^6.>>,_+D[>L^G4EKB,[KN/`
-M7C_J'0WL8Y[WT@-B<A<;5I:7DZ1`*C:)$?7==;)DX98_*^EO#7XT6!#65ZP8
-MZ/ZCA=WX?_$WI=X6M;=TSJ'^(?YKXQ:7LR.V#W5SIW4;FVJ"K3K5&Z#OJ(4]
-M;.JX7]/C>GZ`>&NKVUZR6O!'L5J]0H"[MM+&APXY7R9^%GXM_P`$&6_4*NGC
-M43@[^Z^A/!7C_I'4K&F]M]2!C(UC_-7'/?%>?/QY8)NI]*+=1##J"S)KV57)
-MP/==1<=2L[QYJ4GM+3[[K!ZZ^@X$-<TGY6+X_L,?+9PL]/ZH*@$.RM6C<AXC
-M5MA<&XUK5WG-=Z>ZV.C]4%0:=0D?JL[LXKO-7F.ANJG:%&:GIR1\JLVL'4HE
-M`:@.)]E*:*\+3.HX65=,TM*T*YEL<*A=G$AWT6:D4:DM)(Q[*"H\`8E'<.WQ
-MD*M4J0V94;3T7CS/E;72WN(#L^ZY^W?_`#-UN])&IN^R%;5&IM`^ZD+B<'Z*
-M*W`@2,J5Q:<R%4@'1F/^R@N'%H($J4D..\*"JZ'9=ONM0JMYD/DF4!?ZIVG=
-M$\"<"`@=I@P<JQFHZCH:"3OPJM=V5-7C^DX/=5:T8$_Y%:16K'(RJ-V\3\*W
-M7=B"0,K.OW`M(!$HBE=U0V<Q&ZRKZN`XD#=6[Z9)+C)Y61?O+FNC_LK%4.H5
-M]6RS;EY,Y)"N5PTSWE9]\XMIEJM8M9G4[EM.1J]BN3\17H-+TC2)S!6WU60!
-MDX).2N.Z[>.8[:`PG(S*N$Y2ZDX875GDO<"9Y`5*@WS;UM!LET]X*>^KN=4E
-MHEP)VPM#\.;=USXIIO$PS,_0KU7C';S7F[>R^&Z!LO#5*B['IR5A=4JL-P7&
-M)GX6_P!8J.IV082`(Y7%=0JDDN(F-EZO%CK&1\_+^657V=2H!L2?NG_XE0_Q
-M?JN6>^7DR<^Z;6>Y^ZZZ:]8X2X9',G;<JK6:7$RT;8"T[H>2#Z!K/YIV'^:J
-M5:[)E[6O`P1IC[+S/4H5`X"=B@:(SOPK3G-8QX:^6NSIC*KD@B>WZ(!J%SW%
-M[@.V/]^R",_F@SO*DC;4=QE"6AQ!(^@4`$&`"?@=D_IW=O\`*<S$D;93;'V/
-MU5!@!T^G_1(M!RUV)(]T-/)B?U1,(0L,"=X`GW3M$&3M[I/<"^-(`X`3O:0=
-M+I!!RWE#02-+CS'9,"X8.W9$TM!!+2?JGJ5-1+G'/=%`!IW$RA?!='T4D>DD
-M"4QT<S@930$3L"9&R,MD#@./.R8:"8[[IHT8RF@XGD;X2SJ`)."B8!&3PB+1
-MJS.1B4T@0SW/V3B0=XX12)TI@[!$H(W[\DE)[B223]E(`#."/=`\N`TF.\HH
-M,:M\$H07$0<A.';<G9)D8!X13.U9V^J<.#1C20?NBT@R)`"8P0`<'NH@2XAT
-M-/\`9(O!.70GX!D&>83>K,"1\H&:]P)(P"$W!).4^\"82()$3@I5.3@9D'A%
-M4)D&2!P/[H&M`=C[IVN,^HC!W1#28QGX^48)W:0.P3:0,@X3L#9&H2#P#'ZJ
-M@8(=)@E.Q[PSRPYL.()!'(_[I&(Q$#&R1$G3C3V"@)@)D'2"9WY^J1!Q(]Y'
-MPF`Y..Z<CU`MB"9@H-'H30ZX)+=PNF+'MHC2L;PE0\VKS/M]5T=>GI:!N3L.
-MRXY]MQ>\#S_&R-H7K_0!#6#;"\B\$M#;_3.)V^B]=\/D:6CLN&?:NKZ61H$#
-M$+6MB2(_99'33D"`?JMBS:/3&WNN5;C2M&@C;]%HT@UK?=4[6=H5@XGWX4;.
-M\->\F<=D-=H&>>45(-&\R%#?/`9RFH6JE5TO+0=E!5.AA<?U4X#34))^JQ/$
-M]\*%`M!S\J6Z;PQW7.^-NJ$%U.CDS$?9#X/Z4W4;FHSU.S^Z;H/2JO4KXUZC
-M26S*Z\VC*%`4Z8V[+S[W=U[Y)C/6*%VVF&>6P?943TEMR\D#=;=G85:]3;=;
-M-KTSRHD9"7^79N8].:Z3X48^MYCV8/9=E;^#;+^!DDZHSA6*#&TFB!GNIA=7
-M'_*\PZ2NF,QCCE<KU7']0\.T&U7`-!,[KA_Q&Z>*'3W,IXC$KV2YL:CJ+WR`
-M<8*Y'Q7T(WC7`M)XPLWCITPRW>7R]U2VT5G`;?XEDUFAH&73)7K7BKP15I7!
-M=3:8G:%Q_4/#-Y2.H4G.S!PNF'FDXKV98XYSAR]-Q>T3.,J1N@X!,QNM"YZ3
-M5MVZGTG"/LLRK2J-,220N\RF73SY>*PJC@&2''.)'T6MT+Q'U+IM1AM;VJS$
-MEH<8^RQ'3N1'M$)WD:,8'9:NJY^M>P^&?QDO;6W#+ISW$#=I/WW6YTK\7&W_
-M`%1E#4X,.[G'_5>!!Y`#I$D3(&ZEMKFI2>"UV1V*SZZG%<_VL+\?973>HV_4
-M>EC0YI,<+.I7KK._`+S&VZ\6\`?B(ZRMA2KU':F",G??W6[?^-FWEXTL<2'<
-MA9\EEF[VY>/PY89:^/=^G7C*EN#KD0KC*HD1LN'\$]4-Q9M:7#@[_*ZNA4;I
-MR5REVWE-+I=S,A5;P#08&/V1!YU3M*KWE26D?LCE5"[AI,;*@^H3G:.5+?U#
-MF8*HEQ\S<%9K<7+,GS02<%=)TD^F`87/=+IEU0?JNGZ:`U@GG@++5:=-WIP4
-M-1QA,PB,[H*AR?=:VD(N[[%05W<3*3G9CA05'K4*%S\\QW*C>^!_JB,<S)5>
-MX<!@G"U&*BKO.HSM[JI7J;F?U4M5Y,R#]51N'N&6XG?*J`JN`)^51NS&21]%
-M-7>8D[G=9O4:@`,.CE61%;J#Y;`B?98M[6`:X=^2KMW7#3_=8O4:I>Z!WE;2
-MHJ[A$G8K(ZE5AKAJGOE7;IX;1(<[/>5SW6;EK6%PF7;DJ,=UG=;N@V3/I'9<
-M5UJX#I@2"<-E;?7[II9`P`5QO5;B:CSK)/)7;";Y9SOQ1N:LO'IDCV7:?A/;
-MG^.%PUD!HWWX*X>QMW7%ZRF&DS/&Z]L\*=(H]-Z*P-/K(EV9[_YKOK=F+R^3
-M+UQVGZ_?L<!3<<M^O9<CUV\ITNGN/G>H]QM_N5=\05A1N708U&%POBJZUO(!
-M)R9A>SC%Y<,?:B_BJE3U^:&SPEY]3_YPJ%NXFBTM+H^`CEW=WV"Y>U_+U^D=
-MGXR\-]/;3\QE,LJ'AIW7$]0Z8UCR((/*],ZXUUQU`TW?E'U4;NC6M>@T.'U7
-M.8UPGD]>WC]W1=1`U-)CF5"_2*8,[S(A>H=7\&"Z9_)<1&=ES]WX!OZ;=37A
-MXY$;*;=9GC?KC3$("<SO*Z]OA"I3=_.!!(V*AN_"=<#71W/!57VCEB0!F<I2
-M#CGNKG4NG7-G4BM3<!W"J,;)+9`GNG#1SIU[X/=+T$-TM`(W=&Z?T>G&P[I,
-MR<'[!4,79QQC9.(F7O,DIZE-["0]KFD\0F@3.<\(&!&0#)E,2.,RB:&YU`F=
-MDTCL80(#G>$PTG`$0B@2E`T[01RH'I`!DDB>ZF)HFU`'IJ-,&,Z@?V4&S!P1
-MN40B<';.RH<@#'VSDHGZ0"21)0D@SEL>R9VEP`D;=T"D$$`1/NA><!H?,)P0
-M<')X3`$/,('80T;QE-<5"][JCX)=V$)8\N5&X@C`R/=`+LQ&D0B;#3L(GE"X
-M#&1LF`':<**E!/&W*#5!+M2?<`2?9,6P"`<3L@0$\X3%N)B.(2]H'W2@MP8S
-MVR@0`#`G@AA`&"A'[>Z378.<[9*!H)VPG$#!PD!P?NEIF3.RH36@8)!E2!H<
-M,`F/=`W><%2-<6[8/SNH!:!D@$CY3:!S(/.$5327$M$#M,H#$D"3]4!M!([_
-M`*I])#])!!Y!3"-')?QV2+3.<(.H\&4PTS`&)(717=-C6^IO')6+X+HES0X+
-M<ZDUV@/.RX9]M1;\%TP+T$N$+UCH(_E-D$87E?@5A-ZQN"<KUKH;1Y;1,D+A
-MEVTZ'IHV&J%N6#1@%8O3P0=]^ZVK!IQ$@=ESK<:UH,3(PIVRX`<*O0/V^5;H
-M3IE1H4%C252N*PIU0_2UPWTNY5RZ=%,R8^%B7U:*AS"59-@OKEM.B7%WJ/9<
-MK4I5NJ=3\O<3PKW5*[GU0P$$=UM>$[*G2?YM025RSYX>O#'TFVQTKHM'I_2Y
-M;AP"IN:*M<ZFR"KW6+TN8VDQ^.<H^F6C0SS7%3+FZACQ-T_3K713D`2KF'&.
-MW"JU;JG3)9J$!5+OJ]K;-U/JM[0L[TWVTG@-9`!D=D5&EJ."!]5P'B7\0K"R
-M:[36:2/J?V7'W_XK=2)BQM2_$!SC_HF.6VYX<[-Q]!4*376Q:^X$Q.RSOXJQ
-M94?2-1I=L25\U=1_$[Q@7.:ZN:378AK1_DI?"?CV\KWX9=522[NMY7C<A/TN
-M7VO<.N6-I=UWFF`0=EC5/#=*H(\L$'V1]"ZD:U)KM0,A=/T<4[BHVF2/4N.U
-MLN,>:^+/!U&I;.#*0'NT+R+Q)X9N;*LX%AB5]8=?Z53IT6N:X%K^.RX/Q+X<
-MHW#S_+&<_"L]L:WXO+^7S1>652FZ/+/RH1:U0X^C=>T]7\$->\%M,#/`_P!%
-M?Z1^'=@*7G/I^8Y@D-=^7]EUQ\UO&G3.X2;>"5:%2GAS7=LC*K.U,<=M)^Z]
-MF_$;P>RM;:>FVK35:9FFWCM@+R:^M*E&X=2J4]+V&"'`@A>B>25QF,RFX73?
-M56;F`<+T+HMK:LZ<7ZAJB?=>>VC8,!H!'NMNRZC4#6,U&!N)6<VKX[9.7M_X
-M:W3C08V9PO1;![B!J.5Y)^$]VUP#>8WE>KV-352;F)"X8=/-Y>*O/?+("IW-
-M0EN\2CK/AF<*G7<)SF5IYZI7U0P1.Z@MP7P3GV1WCB7'&$]AETD$_5*U&QTE
-MD$%RZ*S_`"?V67TJB-`*UZ#2T`]ME%3,;Z!Q&Z"L1IV1>8,Y^?=15GG3GA6*
-M@<<^RBJ[%&^I(Q$*M4<2[E6):=[X=&?E5JQ;$20B?4P2JUQ5):)@?"TQ45P\
-M]RJ55X;JER*XJ9+MRJ-P]V2#*H"ZK9*R>H59!`/W5B]K2>0LB^J03E:D9V@N
-MZI#?4LN[<8)!W5BYJDR#.-EEW=:)DA7>F;RH=5N]!+3D+F>K7;7`AQU#D+6Z
-MS6`$G\IW]ER75GZB'`B)5QA(RNNUAJ(#L@[^ZYVYESBX!IG`!5[JM8/J.:2"
-M>\RJ=C1=5JZ&YU87IFI''+FNB_#OHW\5U-A<P1$_&Z]0ZC3=;64%T0(E8WX=
-M=*=:6HK/;ZG#D*]XPOV,MRRI`G?*Z^#'=V\?GRW=.!\3]4TN>73O`=/^BXR\
-MN]=4OW,_HM#Q;<L-PX,?,GDK$IG^9G29Q*[9WG37CQU&K0)=2:X:A/9%![N3
-M6Y`HM!,?5'+>_P"JQMWY>K6W3!<.-2X>XU%H-Z;28T`-..96YTCI8-/43G=7
-M*]FUHPI:\#EZMI4;)8^?91:'-9_,9`_=;M>@T..<+/ZRP4[7,$\*;-;85:T_
-MC+OTLAE/<R@%FTUWAK9#$[>HNMP6MI2J5;K+V/-3RW#V"LARAZST6WNF%KV"
-M7=PN(\0^%:UO4+[<2)VR?[+MZOB&B7#S*+E`_KMH]_\`,C3&Y"GK^'3'.QY7
-M6MW4ZNFH-)&(.$#6Z3(=MR%W/B2PZ=?,-2W+14W[+BKVVK6]8L<S8[PD_P!=
-M\<YET9]6K4@/J/>!MJ,P@,EQ2+\>EH$)M3HB/]56B>-O5MV3AIQ!W33[!(.,
-M[!$V<9R8$>R4NT@H2XDF44D#;]478>9G?L40&-\?"',_ZHVF#,1[;H'8#ITB
-M!_=)C!)`$^X3`N<Z`W/ZHV4JKGDMI.).ZB;@1,8@<(?ZL*=UO6:#+'`*!\ZH
-M<"JNX8<QD'A`\2["?4T"8(E,]P(](,G=#87"!!'J2:V3$'/*=CF\@DI?U;%`
-M0;'R$+@.\%&YS-,^W`0AS2W$_0*:-E3:/_Q#W3/(G@)PX#(D'YE`7!QW**9W
-MN?LG.D-RGJ5`8@#TB)0:P3)X0/$@)0?@)]0G&R3BW$?H@-P;$S,I-.DB=O9`
-M"W3$[;82U`YF(VP@>#J_*G<"3B#'NF+F@"<%$"W2<CY5#!H'])4E,'S(.!*C
-M8YNTX4U)S-;9<`/=!V_@YH;:`[GN"M+J$:2"J7A,--C(``*L7[FMSJGA>:_V
-M:G3:\!,+KO5F?=>J=$PUIC/LO./P\I:GDD;<KTSHX!(@B%QR[:=!8-#F#=;M
-MBV6[!8UBW8@X"VK+`S]I7.MQH4&D-C!5JD1$QRJ=(G?5CW*G+@UO/U*C1NH.
-MQIG98/53II.).5K/<ZH[=9'7ITZ=62=I6:Z^/'EA])HON;_(P#RNUITZ=M:#
-MXW4'A'HU/RA6>-U9\0!M"F6@X"Y:O=>GVENHSF`UKD.X'"N]6ZK3LK')&`L2
-MCU!E%I).W*X?\1O$%9[#3H.=]%-Z;F'M4WBGQZRA4>RD[4Z8@'_1<9U#K_6.
-MK.TAYIM=V_[+.Z;;NNKXU*HF3RNCI6S:8V(Q]UC+6+V888RZ8M#HQJ.#J[I)
-MXW72]'Z=;4:`UM#BW]$UG3!>T`\\!=1:VE(V>&B8F96,;<JWY<M33C>I=,H7
-M37%M(-DKF3T?^%ZH"#&<+OKRF*3W`-()Y7$>+;Q]"\:[8`Y*WC;T87EZ]^']
-MH;JFRD'0T-G==)U.>DO8\5</&/9>0^"/';+*BUKC!;B94OBWQ_5NS.LN<-HV
-MA)-37USR\65R_P`>K'Q#Y\,K5AC:2KEM9U.HTP:,OC:,KYLNO%767534HEQY
-MQ*[O\(OQ;%A<ML^L![6N(]2W,;]<O+X[C/XO3[FS-$^5<42UW8A36%"DRF0X
-M@`]U<ZUXCZ-UGIC*MK7HOJDRTL()`6795]>IIX4RGK7+&^^/*+J-K0\Y^FG@
-M\B%Y'^+'A9U6[-]0HQK)+H$?V7LKP"X&"8[Y5#Q#T^E>6I:Y@)`X"U,JL_AE
-MN/ERM;NH5M&W&$SG%A!'!7:?B%X?-A>NK"GAQ.RXVY&C):"?NNN%]GJLFMQZ
-M3^#MVYU4#)(`PO;.E5?Y`)'"\)_!>/XDQOC9>Y=.`%N.#"QCW7A_4]IKFL9P
-MJWFD.)F92KDZL$2H8=&ZUIY052Y[HTX'<J[TJB9'(/"JL`+S(6OTEA=&F%+R
-MU&QTVD6P3VX5]N)B3"BM!I8./JCJ')`D(L)SA\A5ZSW.$94PES<E07$`Y5@B
-M+AM*KU7[G.5)4(C4#E5JAF3*K-15'G3NJU9\C.?E2U'B#PJ-T=M)*L9J"O4.
-MHJG<U1!X5BN]K1G'O*SKVL)QL5J1*K7E3<+)NGSL=U9N*AEPX'*S;JIZG9$+
-M<9M4KUQ;,;+%OZT.,DRM.]?.`?N5A]5J,:TESC[*5F,?J]P\M@@QRN8Z_6;2
-MID`DK<O[F9,;#>5R'B"OYM<Z<&5UPG*Y<,BLYKZAF)/*Z#\/>E5+SJC2&RS<
-MF5D6W3:CR):<G=>N_A;T5MOTQM0@A[ARNEN^(XYSUFZZBUMJ=I8-)(V7EGXM
-M]3+'FFS(G/9>D^)KC^$L'DO&.Z\$\?=1-UU%X#@9*]N$]<=O!)[YN?KU75GE
-MSC]$]#)AT.4#!!)@94]`MU`M])YDKGMZHV+=H\AL=NZ/2/=!;$B@T3PCU.[_
-M`**.D?45M0T4Q&,*/J-.*1(.0K]-N(4?4*8-J9WA9KP1S=.F*E4DF0J/6;8U
-M(80(6U:V\`F/=4[JWKOJDM<T#X5HY>O8-&/+6)U:TA[FL!E==?VEQ@4W>HGZ
-M*B[H]:"?,:2<J[9U8XFO8F"33#C[=U4JV&J"VWJ./,-PNZ_X34UD/=3(`[*I
-M?V[Z3'4F:)(_I!E7AKVTX6XM'3Z:+A\"52O;'63K9QRNO=;>HSF3F6_Z*K6L
-M2]^DAHWB$TU,G$U^E,V#=NRIW'3:@P&Q'.<KN:G209`U$A5Z_399#HD8W33I
-M[N#JV]6G+G-/91D8,@CV7:U>E-."R6QA4KCH#:KCY8R3QNHU[1S5O;5*];12
-M:7$]EOV'ABYJTVNJ,/\`DNU\%>'+6SH.?5HZZIYA=*;5M8M92HD1R,*V:<KY
-M?P\YI>#GZ-;F&&Y(!2H^'Z#20:1WB)S^Z],N[#RK1VH9/SE5K'IE%C-3F^LP
-MI$][]<YT#H/3"]K'6GU)*ZRT\,]/`&FB,J3IEL&WD1$8E=)1I!N,1&W9,F)=
-MUSQ\,=/J`M?;-CZK+ZQX!Z7<L,4-+CF05W(9$@#*;RR?21G98;FX\0\2?AY7
-MM230!>W<>RXWJ'2+RT>0^BX#.87U`^R;4'J:"L3Q#X5M+NB6FD,[8Y3==,<_
-ME?-;VEIS@;Y0$D#!F>R](\9^`JM#55MFN,3L"8"\^O+2M;5C3JM<TCN%9DZ2
-MR]`+2&X>'2.%$Z0<'Z(BT#(G[)B,SJ)^55"X&9+OT3C3J.N8CC>4[L`2XSW"
-M"#/O/952@SB)2(.=@"EDDP=N2E!F"5-!S&H$'YGNDXX@"`G,$C(R4H,Y('8(
-M&D:<8*6(.<!.0-(,C/"8`C,-A`[M0EID>R9L`?F$)5!)&!\)RXN`DM$"!"&B
-M)VV4U#);)D_"KM!QLIK=L.;)[0@[[PN\LL8+1D0K5;0^L`=_94O#CW"PV`("
-MOV-(FZ$B<KSWMJ1V_@:CHI-.,Q*[_HU.3Q(7(^&;;R[9I;'==IT%I)!WG=>?
-MMJ.AZ:,`&/JM>U$#(!]UG63)B``5J6W&%ATBW2$-DQ*BKO!@$A$ZH6L,B<[*
-MM2FK7C@<)5BU1IC27'D;KG>M5F_\0#?Z6E=)>'R+0_\`V]UP?6;E[KXEN=.,
-M+.7$>KPX[=M9=5HT;)H:1JB-UG]2O/XPD`R5SEK6K5G`$D#Y6WTNAL9RIOV;
-MN/HJOZ:Y[#C#ED7WAAE4Z],'.05VM-@TQ"<T6:9@9"OI*Y_N91Y77\-MLZVN
-MG3@9G"HWS-+2US8/Q*]2O[:F]A!;L%Q_B7I#7-+Z8((,X7#R^.]Q[/TWGYUD
-MP.E-+GAX$`+>I533`@[X61:L%$QI,K1H5-5.<_!7#"/5Y;LUX!4<97(>-.A"
-M[I%U+<<+IKRLYK@!LJ3[C,O$3W6\;-[8FYT\O'2;NA<Z#J`"Z?H?1`ZBVK6>
-M2#C*W+NE1J'4*<&9E2L#!18QQB<+>7DV[;W!6?1+048+`0<KFO%7AGUNN;6F
-M6B3M*ZZA=0P4VF>)5_R`^U@P9R0ICDX7^-V\M\.^(NJ=!O12KU:A9.Q<5['X
-M-\56W4J+7-JC5&1J7F'C?HYKZZC&Z2V<PN;\,=7O.D=5;3\UX;J$S*ZY8S*;
-MC7KM]26EPVJV0<*VRDUX@E<;X$ZFV_Z?3J!Q)+05W/1]+HU''NN.-<?)CIP'
-MXI](\RS?Z>"05X7UND:5RX"9E?47C^WI5>GN`'J((V7SCXUM'TNKN9W<?W77
-M&ZR;\-]L=.F_!JDYM0/)[?5>SVE0>0-UY?\`A+:Z;5K]($QO]%Z53=%./9;Q
-M_+Q_J;R.J0XD\\H@TEL]E'1)>\S@?NK=)GNJ\RO0HN=5Q^RZ#I%#0T$B%1LZ
-M4OGW6Q;"&QNI)^6MKU(C3[IB<2@&1GA)VV^$#/>0<%5[I^KE%7V@*K5<"2)C
-MY5*&JXD$*O6=C*.K4$C.54N'DM*UME'<$`95*LXP7$XX4E=Y.Y52Y=#<A6<L
-MJUW5ANDF?A9ES4()SRK-P\@N_NLZ[J``\>Q6XEJO<OP<CW67=5-),00IKVZ:
-M`<B?8K-K5-1SLM6L(+BI+7%P``7/];K0,EO^BTNK5@QCX,_5<CUZ]TM=+IB4
-MDW5GY9O7;T-+F-W)[I>%^@UNI5#6<UVG>2L_IUN_J74FM@F#W7KWAFP%ITVF
-MQS0T@!/)EZ_QC>$O]JY9WAUE*HQH8#GOLN\Z#:BUZ<R&_E;M*A%JVI7'>96G
-M=N;0L]($$!=/T\W=O-^KSNM.%_%2_=2Z8\N]P#_L+P?J-P:UT]SA.>2O3/QA
-MZPQSC0.'YDYRO*ZT$EPF">^Z^CGQ)'D\,[IPX:9C8Y$J6@X:MB1QE04CISG(
-M4U$G8$D;KD[[:M&L/*;B,(_.:E0/\EOIX1R?\*;:?6]-LF..4/5`T6)(^(E3
-M`>O"BZL6_P`.&]S"S7AG;,MJ9-N9W*KW-,LIDD+5I4P:0T]E3ZE2.(Y*7LC$
-M;1+W&JX8]U'79`@">ZUC0B/A5G4QR$5C5K=[S$P-EEW5JW4=()DY*Z.ZHN/I
-M`W45O92XN<`594L<Z_IX8UQT@GGG[JC6M@7D"F#$X"ZV_I,93(@#N0N?OG_S
-M6L;!^%J7;-FF<+`5(B!.Z*MTBFYVD-(,296UTZWU09$QRIZK#J+6MGN4I.>7
-M*5^B:1E7?#GA^:HJ5J<P<"/A;K+=]2J)87-:03A;EG6ITP&BE$>VZFVN?K,;
-M:.&&T84U&W=2;JV'*U_.81D0J]=XK.AC<`9*RK'=1?6JESR8&P'"(6S7'5L5
-MI.I:<D83,I2X''O[JIJ,RU8/XX`+HJ5!Q:#Q^JR*["VZ#N/W6_THM=3`SVE-
-M<$%2M&.;*;^#@X&W"TK5D-@1'RH[JO3I#W66E;R&-9(C*I73J3<$H.I]2@$-
-MQ"R;DUZX#FEQ)/"*+J%.A5U-(:00N"\;^#;2^I/JT`&O,YC"[BA87`>7/<2#
-MPK(L6%N1/>5+(2V/F?Q!T:ZZ9<&G68=(Q,++R!!_5?1GBCPU9=2M7T:E(:\E
-MKH&\?"\+\7=&K]'ZF^A581DQ@Y"2_*[XY>S'(+78^$,N$"20#LB,9,-2](=.
-MX6V]@R9!.-TAZ20<@H\-<<80^GDJ!GD;MVE//!(^4G``CU2$B)/:!RJ'+70"
-M!B,IMP9@GZH@,.]0CLF@`X(RH!9)SR$0+L@@;93M'NT)R`08*`#.W^JFMI;4
-M`/?91[GTCVGLI[8$UFD[R,RE'9=!J.;;MP(WRM[H=$U+QI(_J!/W6'X?IOKL
-M`I@O($P,PNN\+VX_BV:A#@X#3O[KS^2M8NXZ-3BDQL8@0NOZ#3.(;(7,]-I_
-MECV76]`I;'(G9>:UN1OV3(;"T*8B3A4[1L08.(W5L;;_`"L5LUQ5TCYV1=+R
-M^8&ZI7+R*D;B5<MG>30<\[*SMJ(O%%X*=$M#L[;KCG-%2H29"T>M7/\`$WD2
-M2`=Y]U'2IB=ESSNZ^AX<?6%TZC&\86W9PT<2JEA2(C]EI4Z8+06C;*8L^6I:
-M#CJ$[>ZGJN`$3*@I@QOD(WCT223B5TCR54NH<9V!]UD=8`%)P.=X6U5I'1)[
-MK'ZO0<_N1"-8WEQ%_5-.[+'0!,J0NBC(.47BBR=3)<!)X/98_P#$5&MTF8B#
-MV7BN/K;'U,,IGC+&E0BHZ=4S[*MU:V>'C0?S=UG'J8MZT-S`R"-E;/5VU'-<
-M3'?W6'>8V78+BDZB1JW/"AJ5#(SC?"FO7F\IRPR&_<*G>-JMI8!!GA734_U-
-M9OU5&Y]MUJMOBR*>'?!7/VCJK()'/V5FGY[7E^C$R=U>9TSG)>TO6'^8QYT@
-M3*X3Q'8-;4\YH#3JE=TYS7L=KXGZ+G/$S6N<"TG=;PRU3&?':_@W=/%G!,@1
-M$[[!>O>'#YC))7BGX4/\MI&"TD<?"]K\+$&BV(V"S)RX_J`^+@W^$/!SM\+P
-M3\0:;*GB!C6B<P?NO=_&50?PS@#!*\2\16GF>)VG4YTNQ\RNF5TQ^G=K^']D
-M*=BR!B`?V74D-C3MA9OA6CY5@P_].WT"U`S4[;`77#B/%Y;NI+2E+I/)W6C2
-MIPV4%E0),1]5<;3.T;>ZUVXGLVB<#"T[<"`)RJEM2@29@JVQS6CMP5`6N9$[
-M)B_?$H7GU$YRA=F/]PB[1UR""(S.ZK57"3D*6L8=`XE5;ATR`?[*I45PX<%4
-MZKY)"EN'&<'95:E4##HSR545[MXW!]QE4+BK(._,*:\=(D'?LLZZ<1SLM1$-
-M=X$DG'*R[^J"QP`^JL75:6D?NL:[J$DMG'RM=,54N/4^2,;X56\K"G3($`_*
-MENJ@8'.]BN=ZY?8(F.P":3M3\1=1\LG0<D0N.ZI=NN*WE@;G,*WUZ[<7RXDG
-M/TRJ/1;*YNKD5-#BP$$PNLGK-M2>U]7>_A;T!FD7503,;_1>@/MJ;6P'8'9<
-MIX,O!0H-IC@!='6N@ZEK!P5Y9=VV]O1EQ1VA:VY@GZRL7\4.N4NF])J.%0-<
-M00T'X*H=8Z_3L:[YJB0"=_\`1>1_B=XG?UB[+!4FFTD8/N5]'])CJ7*OF?J?
-MYY:C!Z_U*O?WKZI>XAQ,_$K-,$`R<=D(<2<G?W39,9]EVMW>222<)A!S$1[J
-M2W$.S('N>5`S#Y))5BEE^J<!0:K':6ANO[)_,_ZRAI.)IM/MW12>WZJZ:T^N
-MZ5P`_2[!E1=5J--:FTG!5VO;LJNEV"/U697LWU+\14):-@?E3?/+PZ:%%@T2
-M"J-PT.N''LM"V86TG`G8*"G2PXD*6<D4:S(DJE7#9U#9:UQ2!]BJ=2FT/,B<
-M_1%4J5N7NSM*DKTFTV$#`.%:)8P>F>Y"J7+BYQ(!QL@Q^L-F2(CW7-R/XL@R
-M#,1WRNCZXXMI'(F#PL7HEK1JW)J57$F<`;!:Q9R:?2K1SAD>DCLM!UJ&TPP9
-M)Y[*?IC=1\M@)^FRV[7IH%*7"7.4JSABVS&V].`V4KDT=.K+2MJM94J#2YX5
-M2C:-NJWJ9Z`5!B4Z=6M7`)=H!6E3%%K`QC8`WE;#K.C2ID,:-L*O4LV:,B"4
-M5EUF-VD(6-&DJ6[MW-?#23W4894:<Y[HJM=TX.<+:Z.T?PXU3[>ZS;H$L,XA
-M:70P'4!WV*J+6IT0'!5ZM`.)+R8]U?%(D845R`QDQ/NIH8]]9TMW.`5FRL6>
-M6W2,#"&HWS@2[8<*WTTZJ!#>$4%:U]`[JK5MXD8^%K.!B")Y45:GJ&`)4(Y_
-MJ-$-,F)',+S/\;^B-K]/;>TZ8ULG41]5ZQU>EI:0N5\6VS;OH-PQPDACL`9V
-M6;TWC=5\W/;I,$B9Y0-(@AQCV5[K5NZAU"HPA^'$01PJ+V^H&<>RW.GH,?S`
-MR/2A&6Y."G<T9]1CW3L9+9!V_54*`1!@F<%,]I!'WRD`(*(N+_S'`;`Y4"9@
-MDEH'9,9#R,&.Z<M;@ZYE,UH(_,&D($))&!"FKTZ;'!M.HVH"`Z0"(/8_"B8R
-M=C(]EUWX<>!^H>)KYHI,+*,P7P/\U+=08?0^BW74KHMMZ1<UHDQE37UDZUO!
-M0<S0\8(/<%?4O@[P!T_HG074Z5(`Z,GDF%X+^+5B+;QC5#,`N)CZE8F5MTF-
-MW4?A.C4#)!@#<@PN\\(VN14)!G<KDO"]G_(8=4!T`E>A^&[4-MVSN0O/Y+RZ
-M3IO](8?,!P5VWA^A+`2,_LN4Z'3]07==$I!M`$`SN5QR;Q6Z3-.3A*X?Z8'*
-M*J0%2NGR)#MEG;8*9UW')&Y5CK;W4.GD`XC*J].!=6U$\\H/&%8LM(#MQ&ZO
-M4M;\>.\I&'9ESZI<3N>ZT;9A<X"%0Z6PZ0MRU8-$[+CV^E>(L6=(M'NKU)L&
-M%6HZME<H`XX]EK_CSY#HTB'$Q\IZS0)QGA6J8]$(+BCZ9WG*Z:T\][47@EL$
-M2J56AK!!VC"T7T^9F<(6TAIR03^R:1R/B6Q-5FV!V7'7UJ:50M<"TSNO5;NT
-M\T&`/DK#ZIT%CS,;K'DP]NG;P^;UXKS*^Z8*M,U&$XS'99CJ#V/($QL2.%Z+
-M6Z&6N=3@D$=U7'A-KGA^D_,KA<*^AA^KQDY<WT%M1M,`G<YGD+:LNE"N2X@^
-MK)"W+7H+*8$@86MT^R;3&G$RMX^+\O-Y/U/M>&%9^'62)IQRKI\.T6TSZ=^%
-MNM9#X4PIE[<@CA;F$CC?)E?K@>J=`EITLW[!<5XDZ)=4*@<X%S9WS_DO<:MF
-MPMG3)YPL3KO2*3V.+VM."5F^/['?Q_J;B\^\!:V513F(_39>Q>'+AM"RSVE>
-M?=%Z0:5\1387$NG&5UEKYC6:#+2,0N,WOEZ/+E,X+Q1>.KL>&C2`"%P%C:ON
-MO$)>[=KI_5=]U.AIZ<XXDCGX7.>'*&GJ+ZK@)G?ZJY3=C&.4QETZCI](4K=L
-MB/3'Z*]:L+GB,RJE-X>0T;+9Z31)C"[O#GVOV-,-I@$94H:"XP8]U(U@#1,=
-MT3609X*TY'8W2/\`-$^8C]T1<W3G!4<@SGX3I2,<G]4#WMCB4SB)[*O6>`"`
-M,H%6JX.)5.L\03'ZHGN#N?DJK<56Z2B(KBH!/;]EGW575($;_HCNJS9)G?"S
-M;JX`;@\PKH#=5B)$X`6=<U23B3WE'7KR<E4>HW#:=(P86Y&;=*_4:T&>RQKR
-MY$$@?)"DO+K7))^ZQKZZ9)]7^15W^&-;#U.]`:>T&%RG6+AS@XD%L;$]E<ZK
-M=M=K=J.!&ZPZ[JES6\NGZN)E;G'-:F-MU%$TVW=T*8&[@)]EZ!T2UM;#I0UA
-MLEN9^%SUMX??;VPN2(.\^\(>I7]RZU-(/(XPLV^]FG2X>N*]:]491Z@[2,3M
-M/NK'7?%3;7ISW`^K,"?9<97J&C3+G.)>>5S'B;J=2XJ>7K,-VDK>'BWEM/)Y
-M)ZGZYU^ZO[FJ35(:02<K#>_5,YY.4QD&)^@,IG.$@-Q`7M^/%KD[8&0$[RQK
-M@&O+\"3$0>R8`:9#OLA;^8`$F-U`='<XV'=3T##QNH&EI@@$"5/0_/B=UH:M
-M(#RQ.Z*&]D%%H\IN"<;A'I'^%RJOLL@&J9V"IVK1_%/<),E77B0\S&-U7Z1^
-M=YW,K,>&I+B&MTX!*<TXI0,)5Z3S6EIE1W#KH`Z::G`K78@9[*C4C)G[E6+V
-MG>53);I`506+R^:E0_"32AK/I@$:A.RI7-TQH(:`>_*T*EE2&3)/N50O*3=6
-MFFT0J.;ZW4N*N=`T9WRKG0K)CZ8].8RFZPUK7BGB5J>%J!=5;3`QW5B5O^&N
-MF-ILUEGW6U492I,U&('"*U93MK8<+-ZC<&ZJ>32&.2I2(JC?XRX@1H!^ZOT;
-M>C09@!!8VH8,1`W4M;TC3,E155[0ZH2!@*"Z:`PGG97"W0P[R51NG3,\JHS+
-MIH%6#GW3TZ>)`VRB<-50XDJQ18XMC^GV**HWUN#3EI(/96/#?J:6<C"?J\V[
-M=%5A:Z)`/94_#URX7;FAIR@Z,T_*&=EF=0>Y[M+0=,[K2%.K5:2_TM[*C?-#
-M7P%"*XI#RH4?3JGDW9IDX)5ZFV:4++ZAJHW#7C8%%;=1P#9(5=M:GD$B5:Z6
-M^E=VW$J.[M:;7X_109?7'-\B8V'*YSJ`\RRJ0W)!X6]U\.;2ADD'NL^C95;J
-MB:;&N<7!17A'COH-?S'W%*@2"XR0-\KC*E+2Z#+?HOIR\\-U*5!S*M#6'`_F
-M;*\_\5_AN;FL:MHUM.<D`0!^BF].V.?&J\?C,DR$VD:1E=]<_AS?TR22"!M'
-M_99MWX(ZE287"DYP'8+7LW,I^7)P-6P/MW2<!I@?57>H6%Q9U-->DYL<PJ;@
-M-]L;%6-!QK.>>45-OI=$']$0;(&?T75_AEX2K^(^LL9I(H`C4Z-PK>$WI9_"
-MSP1=>).I-<ZG%NPC6[[+ZF\"^%;/H]A3H4:8:&`9"@\`^&;/HW3:="A2:T@1
-MA=93<R@WW[KE>>7*Y;1=5IM9TU^G,-*^4?Q?/F^-JH@8,9XR5]5>(;@CH]4,
-MSZ297R=XOHU*WC"NYY!)J']UCZZ>.-?PI2.BFTNYE>A].IM%```+C_!EK+VQ
-M]EW=M3`8T2%PR[=&QX;I@U@/<;+M;4BG2:-H"YGPQ;RX'3]ET55NEH`Q\KCD
-MZXP=>I+`%3O'@-V$]RIFN&C:52O8\P;JQ?J[T:FXF=_W5#QDX:6,`,DP95RT
-MK&A;:R`/JL._KNONH`?TM]UG.ZFGJ_3X;RVGZ91@-$'LMJTMB0(V5/IU+T@Q
-M_9;MDP!@$+GC-O7G=!HTM+L[^RN4:)<V3QW293&J0(5NA3C<+I(\V5/0I@LV
-MDCE%6;#/RSP%+1(:T>Z50R#Q[+;A8S7L()0O:3!.`K5>GG=,&R,$I$JN:+8]
-M2J7K&M.`K]P2,;\3*H/IFH\N!='*;28LZM;ZG!WU1"FW#2-NRO5J$"&E1>3[
-M&=U-JJ5*#29`,<J*JW20&E7GL)$94;+<N<)G=2UN0-"E+`1O\J>FPATDJQ0M
-MM+,C[IZM/&\=D`Z`:9(^JSNJ4QY1['=6*M=P<03$+,ZM<GR2)5M;QQJY^'=[
-MTJTZA5IWIHL>?R/JQ&ZTO$PZ?==8\[ISF.9I&HTXTS*\RZK6)J:P3*Z3PG?A
-MMMH>^2=LKA<I?XZ>C]OUOOM9\37&FEY;")VA9W1[5P`>`02K5S2==W9=F`M+
-MI]O``(Q*J9743=,M"\@E=%84`T"1@*M8T=#0(6C1EL#=:CRV[$`V8C"*DW.>
-M43&S!3NAN%I@-0"/\E$Z&A&\Z22>5#5J>F$5#7=P"55JEP:23*.O5@02%3KU
-MH;$B40-:J(*SKJX&H]D]W7P1*R[NJ2-4[85@&]KC.5F5ZQ<?S)KJOOG"S+V[
-M`;(,+<B6Z3W=T*;")"P[Z\=5<?5A/?575!!,K/NZV@:<''"?XYU7ZE=:&D#5
-M\A874KT-8XU)&.%-U2Z#"Z'`;Y.RX[Q3U@4P0'#7V:=UT\?CW2W4375R^XN?
-M*I9<[Z+KO!'AT!@N+AGNO-?"G6:8ZLPW$%I<,_5>U=%O[:I8M=2<TM+>"L^>
-M7>OCT>*R8[G:;J5"D+8LC`&%PGB&B*1/EM[GMA=C?7M,L<'>I<=XDKZJ;I/!
-MQV6,.W3UX<QU6YHBDZ1Z@.%Q/4JC:E<EP((*V_$5PX.(;L1W7/53KGB=U[\,
-M=3;Y_DYH(`R#E)P).<E("-@3"=WYL2/JNC`=OWRG8#$YVS"<@Q,8^$PD.Q.?
-MHB':#M^ZL4V[$;;J$''OQE3VSL[X5&E0>11:(=MW1^8[L[[I4"XT6D(O7V1M
-M]F5?3;O=(&%!TMKC3)!$%7.HLTV3S,$JG9.#;2?ZE,?KYU6J4OJ;?9&]I&(2
-MLF$-DG)4CPA%.YIEPR85-],`&8A:-9IF(5"\:0[_`%05+MS!1C)*R;V&TRYW
-M/"T[W3IP?HL7JSI],S/"JL:ZEU:??'*Z_P`(6IHVGG/$2N;Z=:FXOZ=-K,DY
-M7<NI"VL0V,Q`"O42\HJ[Z]S4\JF[`W*M65JRD!OJY)2Z;;AE+5&2K3*1W=LL
-MA.`:TZ2846D$R1`4U:#`&WLA<TC\PW156X=B-XQA4*Y&5=KY&WV6;>.+JF@8
-M[H(J=,N?JB)1UZNEHILF5*QH92AIU/.V5:L[+0-=;+BJ*%*R#O75R>R+I=%M
-M/J0`:%I5:0TQ&>,JG1IM'4&NGE23E=MFLS^6LJXI!SR3]%NFGKI<Q'=9EW1(
-MJ$PHJ&VI@TX#54ZGTZI4&IHD%;%C1DR-E>;2:1D)2.8Z!3JVKWMJ,(DX5FY-
-M4U-3*9/T70"U9,EH@)5J=-E.=()^$',5+$W+@:K?HMOHW2Z5O2UAH!4EM::Z
-MWFG;MPM+'EC2<++4C&ZM0IN&6C[+`O+"FYQ$#/9=)?R\XY[JA<4/23"NDKG*
-M_014&IH#F\J,="I`8:%U/32R2QYP<*6M:,95D9:5FPCSCQ1X$L.JVCV5+=@>
-M1AP&0O"O'_@^[\/7SFOIS2=^5R^NZENWY6!XT\,6G6NG5*->DT^GE9LLNXZX
-M9ZXKY2\*]%N.K]7HVE"G)>[/LOJO\*/!MMT/HU-OE@.W)]USGX0_AU2Z/U&I
-M7>`XEV">`O7Z5$4F!K1@!:WLRRW=*8(MQ)&!R@LA4O[L!OY0>%!UFMYERVWH
-MB9Q*ZCPMTSR:#7$03[J;33.\74*=KT&H2-F%?*GB(,K>*JU3TEH<>_=?4OXO
-MW'\/T&KG=I"^4[C57ZR]Q.SID!<LKR[83AVO@JB`T:0876TZ9!$A8O@^W#+9
-MDB)726S`ZJT3A<;RZ3MTWA>D/)!`W[+6O6CRLJMX?IBG;C"N=0,49PN.3K&;
-M3J0TF8`X51[Q4K_F^B5W5TT#IF?E5+)Q<\F?F5N1<>:T.HU&LM-!,X[JETRB
-M7.UD`2E>N=4](SQNKW3[?32&%QSO+Z/AQU&A94\<+5M\-`5.PI>D2`M&DP1`
-MW2+FFI9=LK;*9T=YY4-%F0K=('3S\+>+SY(:0=,%3-9(DIJC2,!/!;DG*TS0
-M5:9[B%$:4L_+[S*FUY@_HA.,]ME6;BK/IDB"-R@-`,W$>RLB29V^J187?V*)
-MZJYH!P@Q*B?9D'MW"O4Z+FOS]T=0"0T*4TSFV8`,G*=EKZQ`C*O!AG`D!.&!
-MIWV[IK:JM6CIID\K-NM9&,GNM.[>`#E9E<@$P2LY5O#%0JAVJ7=UE=8<T&!`
-M*U+]Q;3)E8%ZXU'[K%NGJ\>&V3?6H=+A.1PBZ#1N/XEK1,3]U?9;.JNT`3*Z
-M;P[TAK*0<6C'LN4F[PZ^3*8SE/TRR8*'J;G=7+2T'F;):2RH!,`*[8N$\+M'
-M@SR34*1!5AK2$31$<RHJCBTD#A5R3C#25#4>>\!1FJ2%#4JQ*J)*M0!BIW%8
-M@;&4-Q7);^8?"HU[@Q'=5-E=W!!PJ%W7+@3C"&ZN"2086=<5_>1/":0US7,D
-MG99EY=','Z(KRO`,&%D7EP)))6I"TKRN2#J.0LFZK9,';WV3W=R).8"S:U23
-M&J2[LJQLU]=%K<&"5D=3O@*;BYT$!2=1K:)#IQE<7XJZU3:XM:2#V73#Q^R6
-MR`\3]::QI&K(D`RN'ZC>5*]Q)D@\(NIW;KBI+I@]YRJ]2A79:MN'47-I/<6M
-M?!@GM*]>.,CE:BUEKI`),]UTGAOQ=?=.:&.+BP<$E<T3OV^$+26@B,JW&9=K
-M,[CT]*_\[4*U,EQ+7G=9/5O$5*HPZ'9(7&EPB1@)M4#G[K,\6,=+Y\K-)[ZZ
-M-6K(R"JSW9D2DT^O.1[I2"0<PMN)Z=32US=+7!_^+A!J[3["43HB>/W0[R)F
-M-@@8OQIS'.4^H[Y^Z1T_[RG&?4Z8[JH=IYS]2K-&"\`X]U`(@<_"FMY#R).>
-MQ5&M1@4FC*/[I6[6^0V>W)1Z&?[*;:?:'60!8NGLLSI;?->`#("T_$.EO37$
-M%4?#M-K:0,J8_7@R:#0`(V1.`DGA$\B1G=(@:<E5%:I$E9]U!<9,#Y6C7])]
-MEE]1=`(`^R#+Z@YK)),E85>KYCB2W`*TNIESG\85-E#55#`,NQA6*N>%:?EU
-MG7+VP-Y(72VVN]J:W`AC=IY63;TVTZE.V$`'\RZ&T=3I,T,B$J)6L+3MLI*_
-M_*$X1B"W!4%5Q<=,X4$=,'6FN'0$B[2('T*@KNTMU$[(*U[5#&',$JI38(\Q
-M\DHG'S:VMQP%<Z;:_P`36#B/0TX44_2[,Z?.=)[!7*Y@:0KKF!M.&P%4J":D
-M`;>Z:@A#26`*C<TRRNUY&)6I3'&TJM?M.@G.%>CMJVH#K4$%5;IDF85SI0!L
-MT-XR,B)4O;416C<>P5RBR20H[2F="L._EL01UG-I#\RCMJ3Z[];YTC:4=&W?
-M</+W`Z6K0ITM+0&B`LUJ(A3:&`8^%4NVFC)!QVX6FZF0.RS.J.@:>Z:&:ZH7
-MOS./9*JS6R-_A2NHZQ,9Y1T&#06$`'L56637I.8Z1A7^D5#<,\MYDH.HTP6$
-M90]#FC7$P!*"Q=6]2W,\*"Y<W0&-(DK0\27-.C8$C>,+"\+"K?76MTZ0>5G3
-M5='T2S;3M-3ADH[VIY5N]^TA:=*C%O`.0,!9'7V'0VF.5*U%/PS9&ZO?.>WG
-M"[VWI>70T1$+&\.6C;>FUVDR5T$Q0D;PIIJ/)_\`Q`W?E=&J`.$EI'[+YPZ:
-M[7U02`2797N?_B7NG-LW-:?Z<_<+PCP\[7U8-``),R.5PO-KT83AZEX<<T6[
-M<1[%=#TTS7;_`'6!TBGY=LW$1M/*W^@4]=9L'E<=K([GHS!_#C&3PFZV0R@<
-M*?HC?Y#1F54\6U`RD1@#E8=(YSJ5P&LTF9*KVM=S*9(E5+^MKJ;DJ(UW0&,6
-MLOXQV\./M6_TX><\8.ZZ"TM"&3DK'\,4R6M>=B>5VMM1::(@-&-UY^Z^A;ZS
-M2I:4X;C4>,J[2IG$H&L+2,`_"L,!C,$+>G*U-0:T>DA3M#1@'=5Z32!NI6!S
-M7;Y6XYT;FP9,$(G`8(&$6B6Y.R"H9(`B$9TK5B0XZ1(0@@L@;GA2O;/Y1LH@
-M-+P)E&]"#2!WGE'0G,D_(34LMC*EIB0!QPC-@3JX$DIPP1$0C+=3_;A&&0-I
-M[^R)I$ZE@&=E6N7.#?=7GDAA`5"Y>.5;-$FU"YJ:R1"J5`T?"NUV:C,*M78`
-MTR1LN==\69U&'`MGCA8E>A#IW6S>&'23\++NWZG:0L5WQXB]X<LYJ:G9![+J
-M*<4&<".5B^'&Z*8<<0M*XJ.J8V^5O&:CR>;R;IGD5'X,\JW9,=J!/"KVE/@[
-MA:5JS2((DJO/M-3:`U1U0`XRBJU"`H'O<79A/\0-2-.#"JUZL$PY'>5`UORL
-MNYK@@@`>ZTSLKVN6YF2%G7%<:3!37=8Y=B>\K-N:I</3B-U8EIKFMJ?^;'.%
-M0O+H#`A#?W6@&0%B7U\03.5J326I;^[&3(6+>79#LE#>7;B<9G8=U3J@EI&O
-M'<IRR&I6+X("I7UPUE,D^G$RBNKC^'9ZX=I_5<IXFZN3,$@0<+>&-M+0^)^K
-MM;2=H=$#$%>>]5NG7%1SG$F3DA2]:OJM9Y`<8[`K+)).1^J]F&,QCC>:=P`X
-M$_=*<:9D'B=D!'J.)^J>9SO\+89S=($[;E)PDDZ<I.)D"`?C9"23/MOE$%IE
-MIS'L$(B<A*`&P/U*9TEW,!11/'JQ,)LANVW=,79A,?S$`G'?E$(N;IR"2=BF
-M;,X!]LI.P!$CY14ZCJ=5M0.<2PR#G=`)$',CME/`.VI7>J]6O^H4:-*[J@TZ
-M,^6QM-K`V=\-`[*@V0Z)(![JB5KCI@R/E34!/)4+7#<3CLI:3FSN?\E4;EJ/
-M_3MWV[*2/]PH[8?R&R\C&R.!_P#(FF]?X^Q_$MQ3/3G2HN@U*?D@2$7BVSI'
-MISGM,$]I5+H%G4\D'S2.<A3"SEX,ITW6@.$@X"3V@^K95F4[FF/\34?\20V*
-MC?JM=],GN0TM6+U4AK9!'NM6[N*>@N!$+F^MWU+\C#K)]U-#/N#JJ%Q=Z1[I
-M^A_S*YJ$'2W8JJYEQ6<*;6D:CL970](LQ3<VC'I&^%J<%6;*S;5)KN!#CM[*
-M:W;5H5`720KUK3U,T-`@*T^U8RD)`^JR(FW#31P<E"X-U9._NJ]>@X.EAV0T
-MZ[FXJCW!14M0MY.RSKVKYCO+;L-U)=73?RM,RH&-QI&7%`]I0=7J"DP>GDKI
-M+2W;;VX8`H>B6;:%#(EQY6@X2PJ-2*M>?RCE4Z@(82095YXSN20J5T2!IDF5
-M4I4&R-7U073&FD3P5-;M'EQ&WNBK,UL)[)2#Z'#J43E6*](YDJKT0AM9S8V.
-MRT;AL.]7=2K$=)K0R20$U*FZXJ<Z0A8QU:J&M.!N5K6ENVBV.%%D*G1:QI:,
-M#E$UA&2I`W&221NFJD-9`)^4:5[AX:R3@']%D5CY]<O$84_5:Y)+&DGA16M,
-M@#NFD/2:-(VD80WS&M];3A3R&"2Y9G6[VFR@X`B?9-)M#5J!]73/PHV`"Z9'
-M)6+;7U6I<G1)"U.EMK7%X-4Z6JT6O$6A])M,NEQ6EX-L&T:37$1*QFT7W?5M
-M,^AJ[?HMJ:=%K3@#99:BPZFW0%B]58']1IL70560#G]%S5]6/_%&9B"LZ;=3
-M96X%L-+MDGU"UCFN_53=-=JMAO$+*Z[<BC2>[4`(W1?CPO\`\2ET"7-Q!;S]
-M%XYX5<:O56D.'I(R!$;KO_\`Q#]0=7N@`8D',_"X?P#;/-1U:K^7G=>?\UZL
-M9_&/3[*NT6S079CE=7X/+7U&D@#A<1T>7,:!!^5WW@JU.L%IDKS^UJR.\Z/1
-M!I@Z<+G_`!^2!Z=EUO3:99;\97)>/P"3)V"-1P=S4_G<GV5WIU`U:D`@E8]R
-MYQN`ULR2NK\,VYTZM..ZQY;\>O\`2X\[=%T2T+*;=+,<0MZU<ZG`,_!4/1*0
-M;2:'85^LU@!=(GN"N>,^O3E=W14BW?96:5-I;@XW5!CS/$!7K=W8;KHYU/2P
-M(($*2!EW/""D,"<^RD<<;+;G]1ZCO&$+SF2/U1@-Q*BN,-#P-E&H=VV9RHW4
-MM<D1*!E36_1ME6'4W-9C9NY3M>D`8YN)Q[JRP>D2HHU1J"FI.]7J&.R%$/4R
-M9",-T-R@!C\F`FJO])@E(Q8CK/R2/LJ-:2(W5MQ#B9.ZJ.#G/ALD]E+6\8B<
-M#"S^HOAI,&0M&Y):V'`A9/4)<TQMW7.UVQC+O'G2=1Y5.V::UR/?=3=0+0T^
-MJ3PFZ+2.L%W&5,9MKRY>N+;M@&4H!5BW.NIL<*M1:Z!$96E84QB5UKYN]K=I
-M1!9)*M1I;*%C6L:-_IRFJF>R@"L\:H)^ZK5ZH:./E-7J`'*S+NX&HYF58E-?
-MW!+3GA9-:O+LE27-=VHQ^JSKBHW(QE73-I[ROS)$>ZRKVX#?ZL=D=]<-ILR=
-MN5B=1NY80TA;D8M0]2NI=^;`637K%YTS`15R:CC+C(Y[(6T);!&(A3:(:C`U
-MNJ<_*J7-0MIR,&)5RY#:5-V#LL3J-UIEI]..=U9RU&5UR](IG5L)S*\]\2]1
-M?5K.#2<]N5O>+NJ-\WRZ;I:9!65UWH%RSI+.JM:31(RX<9A>OQX^O;CEERYH
-MO<Z>?J@?^:<=MT>`=L]Y0`QOW[KLAC$>_P`I?E;`S\%(EG<?=(``R0JAA^8P
-M3('?(3.U'GY`2)S![1A(D!T#;E1=FDG8%)TET@QV3@#(!3-@NB2@88,B4B0T
-MXR"E`)(2<`<3@(!(+0'$'.<IHSZ=65;K6[J5A0KBM3?3KET-:X$M((F1N-PJ
-MP@0-D0),';]4IF.W9.UH!U3OA.UK1I=P>90)CHVWVA6*1(=C]5'+<F0`>RGH
-M#U#V*HUK:J]M!HEN.Z/SJG_3]D%`@T@8E'([+6XV^TO%;0>F.'^PL_P[_P`L
-M"9'RM/Q.#_PJH0=@L7PNZ*4#)4P^OG9]1T8P)$0HZK&/&6S*.EJ\J>.%#=7`
-MITMP(5L3;-ZI19&D$_`*P+FA3IOTM9)]UJ7UT^L_2P$D<J&G:O=#W-CM*2&U
-M3IE'37#RPN=L`5T5A9.\N7_F/94K2W)JA[!^5;-J7$!L`'=7OI!VU,4\%N%)
-M=/UB&YCL4]2?Z5`"6`EVZRU$=0P!C"SK]S9CM^JNUZH#<C99[YJ522W`053;
-MAK"XSJ5WH-K48_S:[3DX4G3K9UU<`D>@+H:5"F*`;IA/^+"H%I9C=$\>G8@'
-ME0U*;Z1EFW924ZP>!J])45&]AQ`^0LN^<-8CNM>K_P`LDDK'O/\`F'4>58E3
-MVAU`"9]U:`#V2852S,F&F%?8V&^RM2*MF!2O(F)*T;SUO;39,K)NWZ;IND[E
-M=!TBTEK:KSD]U*U!]/M6TJ7N5<#0/=$RF!Z3DI3&_P!U&P/.D&52O:H8UQ)B
-M%9KOWW"Q>HW&I^C[HBO/F/UN[\J5CS(:P%T]DK:B:D3^5:-M2938`&B?=$4*
-MEO4=3+G'3[+"Z_;,;2.9]I74=0(93);V7*]5_FG1).5-+M1Z;;AL0T">0MNU
-MJ,M*!U"'.V4-E0#&C4,!,VF;R_:&Y:-RKIEJ^&K5AJ^:3))77V09Y>.%D='L
-M138(PMRC1(9B%ETQB&](;;N)/RN=KVIJ%U4#(X6QUA[F4RW,E4@1Y!EN_*G%
-M6M3IU;18YSA<IXTO/-!IL.85]U_IHN8/A<_U:LUE&I5J?F(P25G*Z;QCPO\`
-M%*SK7G664=XSN)51EHVPLFTJ;@71F>2NLZY2:^^?7<`3Q(6#?AKZ[7'U0?C"
-M\-RWV]V/4C0\-TJH8'O81)WG=>K?A_1+@WT[KSCHM>E6+*;-Y7K?@&U#*32>
-M5F,]UV5*D!:ZH'RN%\?,+M1G`"]#T`6A/ML%PGCD-%&J=.S5:L>;63!5ZAQN
-MO0.@6[6T6X_1<+T"GYG5"\#E>D>';9U>JRBW!)A<,KNOH>''UQ=/TNQ8ZT#M
-M)(.9"H79T5BSCW76T>D5+?I[@VL-31D+D>I:?XHNR(V&RU9K289>UIJ>'#.Z
-MNVT-<`-E0H/$B2/;*M4G<R5N0K2I.D2`$!/K/J_51T7P(G/RAJ.`F)E6LQ+5
-M)$004#WX#3E/3@Q.W;NHKCTF1PC4#Y9;5D#E7&D/9I=B51:YSR!J4P=!&K,*
-M3A;-K)IC>(`3ADM47F%P``F$[7'(),)M-"B&2,PHS(:9*EIND$_NF>T8Y515
-M>9!`RBM7"F"YQ@]RGJ`#)/RH:QEQ`/PLUJ3:/K3FN#0QP)&Y"Q;L@$CLK]T0
-MT03!63U!T@Y"YY5WPFF3>>JY`X6KTNCZ!&25G6U#76!/!70V%(``Q$<PM^-Y
-M?U66[I+0H00T\K1MJ$$.^\(+6E)D@?96B"T95KS0-5VD#*JUJ@9(DJ6Y>!B1
-M]5EW]S#3G*NDM1WEP?\`%,+)OJA+B2BN[B!(.^ZSZU0N<07+4C--<5)#A@E4
-M;ZLV)$3RCNZP:T@"7'8K#ZE=#45J1BU#U.X.HRX9X6-6+S4@9A25JCZM6&B?
-MJK]I9`L#G?7*MUU$_P"L^VMI;J<,3N5*X"FWW&<K6\H4V0&[JC=4F@DF/HLR
-M*R;TC0=9@%<)XXZ@VG_*H@ESA"ZSQ%7+R*%$R]QB%9\*_AY5OO\`U=ZPF3,%
-M=/'J7;.5U-O(KSHM]7L#=&D3&1/9=YX*Z>[J7X77%G<4]3F@P7#?,KM>O=$M
-M[6Q=0\H"!M"'P-2HNZ54M:;(;D1]UZM7BUXO+G[33YDN:;J-5S"`(,*)V@.Y
-M!Y!V7:_B=X5NNG==N'T*+G43D$3C9<;4IO:8<WXE=7HQNYM'4:-P#CE#J/Y9
-MSV"<-.H"/NC#"''L.0II0`2V8^J9P&DNX]U(&^J=TY83Z=)D*B$`8TDD)0"I
-M',>UWY7`=BA<QTP6GZJ`&-U/@<IH!.)RCTD&-N<I-V$C=$`&@XDXSA)P](WQ
-M^B+)RV4@S68:/B%0#`??*>!(W&?=+DP9^J42WOW[H"C_`#^%/:'^9,[F5"(`
-M!$J:V.0=O=4C8M@/)'K(1X_^0_9-;TM5%IU0C\G_`*_U3AO3[7Z\&CIM68(A
-M<SX;K14=I&)73]6:76%03@A<;T9XI7;PX_U<*^/^UCYV7]74U*SA3C5E4KAK
-MZQU$P.5-1.MD[\JK?URZ:;#'NM,@-2E2>0P!Q4U%M2Z<&Z2!W&$NF6)?#GB!
-M[\K6IT]`A@&.%!#2HBF!3:/JK-.F*7J&8_1/38&C41G]DY(+3$**4SF/HJMS
-M5;.<$J6H^*>2J%1VIW*`*I+]R@ITW5J@IM^I4E41#0,G[K4Z/9AK-1W/=%6>
-MFVM.G2$1CW5MVT):0/3`3&<A12:!IRH:]`.RS!'NK5-LB=DY;`W164^JZF=-
-M14;\ZQJ:/HM>[HZVD`Q*Q.IM?1)$F%8E3]-/IW@JS7N#^5@U%9O3ZA<W0V2Y
-MW*V;.V#*8)R3OE6I&8^WK&NRJXXG9=3TNH/X5H)F%CW[99IB(5[H3@:0:3)4
-M:TU14$`[!"XR8!^Z1:(B("`@"0HJIU*IHHN,@%9%O3\VKJF0KG4B7U]`_52V
-MM)K&B-E`5NS```"M,8`PD;I[>F`)_1*N-+)!.>$Z5E=9J0V))_LL$TV/K!V5
-ML=6]1(G/L%G/I"F`9(`[HS0W]44Z&EL:CA:OA&RTTP]PDG*PZ+?XSJ+6@$M"
-M[GH=J&46B%2-/I]!H&0KS&CX06M.&A2O&)V*Q76,OJK`^N&G8*&[L@ZW.@YA
-M3U&.==XV5C20R#F%F1IQK[8T[QS7C=8/C)F/*;@0NP\0T]%3S&[KCO$+@0YS
-MG9A</+=1T\<Y>=^(_P"43F,96!6BJP%@D$?,K7\7GS*[H,">.5CVY<TY>(G=
-M>2UZI&WX-M3_`!3!$97N/@FWBBTD+R/P%0\V[86[2O;_``G0TVS!"2G^M.Z)
-M;;P5Y]^)#PSI]1Q/'"]!ZE#6%OLO+OQ?N!2L7:3GLF5:QFZYWP8QKW^:<">5
-MW?0JKZ->G4IG+3*X7P++[1KSSW7>=+#6,'JSW"XU].36.G=W'7VOL"`P,JN&
-M2=ER-U4UO<00?=*K</?2T`[?=5M7K)*W<O:\N6.$PG"S1V&J/NK=(G3_`&5"
-MF_\`57:#Q`<5N)8)U1S7<E$RL3APPA@.).84%5S61E0D7//(V"9[M;2!D\JJ
-M*V)G*-E?'I^J;:TG80P@$?93_G;JW]EG^=#P8RK5.I(DX/LA9I;HZ#(..RGI
-MTQ,QC]E6I2'`J:H[F8^%8Q1UH!WD'D*$N`&-@E4>(E15'2PD'=*2`JU),`J$
-M@G,IC(='[HZ/JQ$+%NW233,Z@3J*R;U[B[3_`(EN=1$'+868]@=<#G*PZ[U#
-M]*MOZHF%LVM+`&TJ.RI`4Q$+1MZ0%.0NLFGSL[NBI-T#'^B&K4&DGMV*)[]+
-M2.ZS+^XT-,.581]1K[P0L>\KZOZI*>^N'/<<_JJGYR25IBJUP79$JO5>13)F
-M25;KPUI61U&L&M):8A61+57J=Q!.5AW0=7?#3NI[ISJCHSGE6.GVLN!(@\%:
-MZ9[5^GV#F&3![K4HT3I@&(4KJ6P@8]E(P!@+B`?=9:TK730UF7K!ZY<BG2=&
-M8V6MU2XW.RJ]#Z2_J]WZAZ&E;D8RJO\`ASX9J=4ZBV]N&R`=BO7J-C2MK44V
-ML'I'94/"EC3LJ8I,:!&\!=,ZFU]&7+T>/#5W7G\F7L\L\>6_\U\",+E/!\V_
-M4JE'(ER[_P`?4--8D`0N&L6AG7`T")*]&4X>?MI=1Z+9W=9[;FG3>U^\B5S7
-M7?PNZ#U"7TJ(I./_`,<#^R[2\?Y-9A?B0I[2K2B<'NL^NXN.5G3R"]_!>W-3
-M^7>5&CW`/]E4J?@T&"6WI/R/]%[57N*+CAID=E`74W3_`$G=3T_UT_=R>.4/
-MPFHTGDU*I<!MC_16[3P!TNA5`=3U'W`_R7J51@-,N!:%G.MP^J7D3'*>C/O:
-MXRKX"Z-5;B@-7PLGK'X;6A8]U`"8P"O2J5,3D94SJ;'B"$F$/>O!^I>!ZUO.
-MJ@<C<+(/AMNK14+FQW7T-=VE%TRT97/]9Z!:W#B13$QN,+4A^[8\<=X9H/;Z
-M*Y!(C(5>Y\(W6DFE4#CM$_ZKONJ=/K650TZE,5*8YY"ITJ+`X.HO)_Z7*S%?
-MW*\^NO#G4Z+=3[<Z8P05GU+>O2=%2FX+UP.8ZF&5&9_Q`S"AN.G=,KRVX:\]
-ML$)JK^]^7DNSMM]@3LIZ.H.DC<Y(7?WOAGI+WS3>1[95&IX9I-.IKYC`3IJ>
-M25D4`31:>_\`U(])[?\`\RZ*U\.,_AVS,J3_`,N4^[D=/:/K6^:W^&>R=PO/
-MVN\KK3Z9.-2]"K@&F1R5YWXCFCXA='*N/&;Q=XUT/GGRPUF\836%)KKW^8=O
-MW5?I`<:#71+W;+6%J*3!4_J.ZW>W.=-"FP.,```*5S6LDG)4=D[^3)^Z:H35
-MJXV"BFJ/)_+LA,P,Q\*8LXC`[*"X=VQA18K7;H!]4A5V_EU&9.%([UO/8<RI
-M+*@:U4..P,!!)TRT<YPJO:MVC3#&2`HK.D&,4SW9QV4:#!U8A.T$GX29ZMU-
-M3I@-D@HIVCTB,%,=6RE:T`2>$M(,]D%2J`<1*R^MTP:;OW6R]H</A9O6:;?*
-M,E!B="TMN2'#(VE=-0:2`5S5I2TUBZ>5O=-K.<P!VVRTS$E]3/E8^471Z;O*
-MEIAREN&ZJ9(E+HIBH6QSLLM+]&I,,<(3W6EE,N'".K;@C6TY6?U2J:=$L,@E
-M3;2G2'FW!<KU*EZA"AZ=3]&J1E7J(&%4'39I:)PHKH0P[_56(],C"KWDZ8D>
-MZBL*^AMQDA4>K/#:&D8QPM#JE,MEVK*QJSG7-<,,C,>R1FM+P99E[Q4(.3RN
-M[L*(`!"Q/"]IY=HR`%T=K3TP05:UBM4F@#9#6`\MW"E8"1)05VQ3<3V6'1ET
-M\W!/NIW/8X`(K!@=4),;H[JUQJ'V4I&-U^D/X9SNP7FOB*N6U*K2=EZ=U8'R
-M'@Q,=UY'^(#C3O*@:=UP\_3KXN].`\1UVU.H&F9WX4E&G0ITVET"?U4%_3F^
-MU5G`1QW5RQMO,+.>9]E\[*[>WIW'X=T:3M#M`B5Z[T$-;;M;,%>8?A];-8YA
-MU8X"]3Z7`MQC/==<.&:;J[P6.',+Q+\=[TT:08#NX8GW7L_6'^EQ'9?.O_B+
-MOGLZA3IXC4#/U6<N>';P3>4=#X`J"ITNFX?HNYZ;4EK9`"\W_"R\+^E4A@X7
-MJ'A:C3N'?S-@)*YV;NH^A>)RF?&F<`JM4_Y@.!*T^M6].DT/ID@.X*QZKX=$
-MS/NK.*QW-Q:HN&_"M:Q&%1MX(F2IVB#Q"Z,)A5(."(]T-=X<))^@43@1L9"C
-MU.U;*+(.K^3='T]PDSO[JO6<"S!0VCB'<J-?&A4IESM6!"LT9#=]\JDRN2\>
-MD1W5NDX1M/96,W:Y;D@"5+4>-$!5Z3O2/V3U'?TCE;VP(.D=Y451X:=X33#9
-MSV4-2"9!6;6I#O?DG<*[TNDPTY<[?.5#T:R=>W0IC\NY*UNM6++"T#V&8QNL
-MR6\KE9.'.^)G-94U,)(B%F68-2IJE%UBX=6J%L[&,*ST6V)`EIRLSFL^7+6.
-MFA8LP,X^5=:0`FITFLI@`9]U%<U6M8<Y'NNCQH;ZJ&ATN'W7/]3N"3&J?JK'
-M6+S=K2L@/=4?F8/NM=,6D22.$+R&MU$P0IQI:S.ZI7CX:8._=6,U5O*YSG"Q
-M+]Y>XMU%7+VKDC.ZJ"GYE9;ZC-Y1V%MK()$_*V*%NUC,#Z)K*B`P#<A6Z3`#
-M*Q:U(B=1&@.(D=E1OB`TAIA:-V\,81C98]^_5R""M8I:S;\O?5T-`+G;0N__
-M``VZ.ZATWS'M]3LY"YKPG84Z_5&OJD`#(!"]8Z;191Z>WRF8C?9=L)NN.=X4
-MNG6>FIJ(6@]C0PCE*SI/J58+H"O/MVLI0!PO1BXUYSX_I>H_"\_<P4^N4W'&
-M5Z?^(-$&F2%YIUX>1<-K[@$+K>8X_6CXBIN?4I%DY@2M+I/36?PP<Z7%16KJ
-M=YTVC6'8&5LV,"FUHCX6,>4G6E<6-$"?+'U5>[L*4$%FGW"U_*+Z\`>GVRI;
-MJU_D$QF%K45PU\U]"OY>[95JVHM?0@@94G6+=SKO26R)S*&F*M!H:YDM[A7I
-M$-6S-,ZL?11MI@&(RM*F!5IX<,]U6O;&HT%[:GZJ+M2KL83#CMPHGT*;S@82
-MJ6M<F=4J2A;5"(.Z49O5.D4KFBYKMB(B5R'6/#->A5UT&E_QB%Z!4IO9)()A
-M05-3@<%!YY0Z=7HO]=J]I';*GI=.96U$5'!Q]LKMWTVU6!I;OP4%3I;20ZF"
-M"-T''4>@-!Q&_(W4KNENI^GRI`Y74_P=1M3(EH.R3J0#3CZ(,&VLZ`H-&DCV
-ME2?PE#L?NMIMO3+9+,^Q3_PU+_`?NIMMZY4,@8_5<%XWIZ.N-<=L2%UM1]RS
-MTN$B,$+B_'-U5;U2DXC3ZAGMNKQ[1RF]5=Z#6<VOK`):/==+:UVW%(D[A9'A
-MVG2?:MJ-.HD29Y*5:J^SK'3^4E=;^'*?XUV5''T9A6K6-/,CE9?3K@5,\E:#
-MG!E.0<D*58*XJ:9R1]54>2[`F/=)S_,?OONE6BF(F2[A1H+6^8\4:>>\+6Z?
-M1;28`&Y'95>EVX#0?ZB=UI-`:R.0%")`X-&Z0.=]T#3("-F7`1]4:'3W5EC2
-M6B3A!3IC$J<M``@;!"&.&X1#(_5,``?E)K0TG/T45'5',8^5G]5:?X=QV@+3
-M+#DJCUK_`-J8`GG*NASMF8N-,;E:[:?H#FXA9);HN`<"2M[ISM5$-$;*]QCZ
-M.A4!I:7;@)^E@"]([IZE+3+H06A'\:W.5(TWAAO$+)ZZ6N(&)Y6M2&I@B<X"
-MRNML/\8&$1\J6-%9,;H:1F%<I,&F8P2J%'S*,?X96I;%KJ0)*J`=(;$!5;LD
-M[#;]%?J@!N(GY6;<NA[M]LJ*Q^MU=-,MC)PJ72:#JMZW`W_NCZF_S;O<D-.0
-MM3PK::Z^N-MH2,NGZ/;AENW2!C"U*+3&`%7L6AM.#@J[1TG!QA+'2)J5,%LB
-M3"BO0/(*L4YV#OJJ]^#_``Y,94L:4>GP">,K18&N9&9*HVK"6<25(*CJ9VE9
-MI%3KMN!2<X@G$2O&_P`2@*5R\D1[KU[Q%=`6KAC(Y7C/XJ/;HJ.<[<1/W7#S
-M3^+KX[_)PURQS[L:1K;/YE?LXIC><QA9%A=4F/\`+<[.\A:=*H'Z"W;W7RKQ
-MR]_^/1?P\'F:)GY/T7I_3PUEO]%Y;^'E;2QDD!>@65Q-,2Z2[W7?&QBINID.
-MIOD<+YN_\2E$"_%3,2/[KZ1N`'4C.<+P#_Q,VSO(+QGU#'W4R[CO^GO\F?\`
-M@RZ;)D/QVE>O=#N3;N#VNC$+P[\&[HL:RGL/^R];Z;<>D!T_=<[Q:^E9MTEY
-M>/N1J<Z8&W"S*KOYI,_=2L<30U`@M_55+AP\S;Z>Z3EC6EVA6!<!LKDMT>DK
-M.L=P>/U5LDP%T8L2!PF2>-E'6>-/LH7EQ,;?"=C9(U<HNATX>Z,Y4[;<F%%3
-M(9L=E9HW.(.<Y"FB_P"!8QU,R1@*Q3J`C<YX3-(J20-Q$)FT7,=JX*K-6!5=
-MIR83BKB3N%6#CJ+<A.YT!HV5J:35:TMRX?9`'ET"8E0U7[@_=14GN+Q'=9M:
-MQCJ?#]-ULWSR#)X]E4\8=6?4I_P[1I`R24-'J1I6H!,:6[%8%W6=>7I$[NRE
-MRUCJ,^O.Z:QH/N*\D3)W72=/H-I40,*/HMDVE1#W#*LUR=6(`3"</)Y<_:AK
-MU&@D8D=EB=8N=#3Z@K?5KEM*F270?E<MU"Y=<5]+7$CLNCC;L%>L^I5,J2DR
-M,F?D)4:$L!/Z(JKQ386SLG:!NG13X"R+UY<2-6.,JQ?7!((D;+,N:DB)W]UN
-M33*O5ESR.ZM]/M3Z<2HJ#/4#"VNGL'DCNIE5D!3MRT`#,!,^6$P,JU5<`P25
-M1N3(,&.RS%JCU)Q+MU5I4#4N&R<?NKCJ+GD^G;:2M?POTCSZH?4'I77%C+B+
-M'A>TFYIM:S;V7H-"A%D,0LCI%E1H51`C*WZSPRV$8PO3C.7FO2.WI:&^D94D
-M.+<]E7HUB3Z1(1U+@Z8(A=)IFN9\=40^@[&87F7B6V!H.&C9>J>*:M-UL^1Z
-MEP'7J0?:O<NT<*@\)MU]&:R/RF%N6],,<'.$-`V)65X-`_AWL/!6EUJH*-H"
-M)&,KEA^!._J="@XZ0TGNHG]3>^G+0(Y"P>FU?/O-&DD2MQENP4M.B0=UOCX*
-M!J4KB[FJ`"=E:JVI%/+99"S[^DZC6EHD+0Z3U!C6-HUY@XRE@HU;-NN6%U,E
-M0W5K=END5);\KJOX>TKT=3"V2JQL:8.G4/B5!R[NG78;K:9CA!0JOI5--PR/
-M==DZSBG`V5&\Z8'`@,!:>%(U6,/(J-P0<*&I1I%D`R#PKM?H;2=36EHY$H']
-M%!8-+W-([*HQ;FTAY+3[A%:$D:2#(4W4K*[M07AY>WW""Q>RHV8AP&0B'>!/
-MJ9'NJMU39O/Z+5#6N"SNH,TUH:@&C;!U(.C='_"#L%=M:8-NP[84GE!1T=G5
-M,%<1^)=,Z6U`V8(S]UVCW>@YA<OX_+7=/(WS_FKE/KCC>6-X.ZDZF^G3<[#@
-MMN]J-KO)X&RXOHD^:]S2!IF(^BZ"TKO-#)RN^7+G)ILV#=#-3#*M-N'.(8_'
-MRJ?2ZAT@`_=7Z=%KQ),%9O"K#0P-U2-DUNPU;CS#EC3"H7KZC*C:+#(G.5I]
-M&<TM#70(WRLJT;=C6M4PR)R@:6P(B%(2!@#=1HFCCA6*#6G`G"A9)<,;<*Y1
-M#?+!P$!`0V91S+?E1ZO7@!2@<@3E%.QN<F91$1S)2:2!M/LGW=//9%"]L4R2
-M8`69=-%:K$>EONK5]4'_`"FS+C&$5&AY=#(]2@YSJE,-NM0&!LM'H9#@#V5?
-MKU,Z]1[[H_#]08`SE;G3-[;>F:4.,R(6=48:5Z"#`GE:E/+0X[1W5+JC)<'1
-MGNLUIKV;IHM(.1&0J/4ZI=?-;4;J]^58Z6X&V$G80LV_JM?UIK9D#=-<FVB:
-M;:E(`-CY0T`ZD_3/I4U/_E@!&^F'4I&Z6$!6RS$K'ZS5\NFX`Y(CX6P7#06N
-MQI7-=:>:MYY3<@&2IV54MZ1<=9,EQB5U7AV@&4FD\CA<]1+16:P8B-ETO2:G
-MH:`-A"TD:](P(E6[8:HD*A2U/<,;*W2K-IMAQ`^JRZ1>D!H"K7IFB04S;NB3
-MFHU*L]KF2""#[I8NXBLY#<I[HCRSC,*2BWT*M?/+:9:3A<ZTY7Q=U`6]-Y=L
-MW)7BWXA=9%U5?3#9:XXS\^R]-_$5TV]0AQ!C*\CZGT^G4OQ6>\D3@2O+^HRN
-MM._@QF]U@6M"I4NVN8--/N976].M&^2(&&@'4J[:5(D#$MV"U>D.;YK&U7^D
-M<!?/RG+V>VVWX<>ZCH.D@=UVW1;HN:TQD^ZY6VITQ3:X'!V70]&T!K8,X6I:
-M.B8XN89[+R'_`,2EH7]"K/#3B#^Z];MJA\L'8+S[\=[7^)\-W0&?23/T*WE>
-M-M^+C./#?PHN-/4&4W.V);O\+V?ICR:3#@[8"\%\"5C:^(RTNP'G'U7M_0[A
-MKK>F=0R%C.:R?5EX=+;52*<']%#6J%U6&[3E5_XE@I_F`.ZCH5BZH07;]BI.
-M$L;%K(:"T$_*NMAP'ZJA9$E@!*U^EVS'M+GDXX[KHY7A!;T"^I,'*.[I.8!(
-MCLMRUL0(((@Y^$U_T[6PD)IGWFW-D$OP=U(Q@!X^%+>T#2K:3N$`@OSN%&JM
-M6YTN!CV5BJ[T@1&%2`TM!:<'=3:G&C$B2M2L6!?I$GG<J%U<9'8(JKQY1&Q5
-M4M=J(;$0LVZ638JE4ET"2/W5GIU/S'YP/=5F4'/$Q(Y4[*O\,PR,0N>]UTLD
-MG`NM5!2HEHW*;PQ;^;4;5<#,[K,O+G^.O6TF8$]UU70J'D6K3$8W6I-W3S^;
-M/UQTTWD,MPP=EE]0O&4:3BXY'<JU>5M-)QD!<9XLZ@?4&N_WE=G@1=9ZJ:]<
-MTVG?;*&PH_U/YRLCHS:E>^#GB1,KI&4PRD!$'NL[VMD@:C@QF/NLV\JAP(GE
-M6>H513ENQ]BL>]K@N.DQ*Z2.=J"XK9/)F,%1T6>94!,Y.$J=)U1\1N5J].LF
-MAHG$%+=$@;:T`#7#*T&4PVF2!PC93]$!"_5&D+';>E.]?K):!!04+<N&?OW5
-MZC:ZJDD21V6AT_IY>1`5VK-MK`U*C6-;DE=9T;IE2E:^EF8W6SX4\.M?IK5&
-M9&<KIKBVH6UL1I`@+T>'"V[</)8XRRLZ_P#$@/!PM8VKS&MTA';Q4ZB8',*]
-M<4F@PT\+O)S7&J]M;TVL@#=-7MV%A@*S3IP/=-7;+8(72,5Q_BZRFW>6[[0O
-M/NJL>R@]CL`=UZKXAI3:N)W`.%Y_UNU\RC5])F"NL<,F;X*I,9YCBX%HG^R?
-MQ=<MJM%*CM[(O#E,4K>JUW_4J%"D:_5'-W:#,;KECQ;3ZO>%K$-8'O'J//*U
-MKNEI8=,XX4_3K<,H-],8E27,-89:/9:QBUS_`%!@<"1(C=/2M65[4.:WU`J>
-MJR7N!R"I+-GE&!!!6F8KT65K?U-V&X**\K^8T5&.+7#A:/EM<9PJG4+1NG6W
-M#AE(JWT^J]]JQQ,PBKO<<M=![*CT>L0UU([[JS6)TR#$%9BU%<W%=H@`%0'J
-M88"*M+`W,I7M3\Q)W&RSKC4UA+<RJRLUNH6=:)=A5+CIMK=M\VVJ`/.T'E4B
-M*51Q%003A0UZ52A%2A4<V#P5=;76DM6A>6N:E/S&C^I475!5O`'2)X6K:WUS
-M4I-:7!W!;"L46VCW@7%#23RLW_"?Z&A3:*31JX1Z&_XBM"CTN@:32RLX-(QE
-M%_PJG_\`,Y9Y::A_(3SRN0_$"H?*+)R=PNPJO#:)<<>RX#QK<"I7<W4-UTLV
-MY1SG2G>34>3C4Y;G37%^ESI(VE<S<5=->0W'<+8Z-<#0)=[+K.6'5=-)V[;+
-M4IU&M:23@#*Q^FU6BFT@F85NM4):Q@_J.5*JU:-;5KNJ1O@`K2IVNBF'L.2%
-M6L&C4UK0(`X6D'`0LJ@I5*K'^MN.ZO4:@J1ZOI*#0'M@Q]4!MW,'H)G=1II4
-M```=_E2^PPL^VN-(#*@,\K0H.8YHC,H"8R#G/U4]/#8RHFCU[X*E9@RBG,"%
-M%=5@QIB22E=56L$\H+&@:K_.J_0=E*"Z=;D@UJDEQ.)5IS<;*1H`;M[).8"F
-MFF%UVEZ"9Q\*ET,AMQ$E;'6J0=0=!("P^G'1=:"0KBSDZ>AMLHNH@&B9.45!
-M[12;D!4^IUS4864Q)VE+`NGW#W$4VF<IKZAY5XRJ<DPI/#E$M$OB?=6/$;"&
-M,J3@%9O<K4BU;N_DM/LI35TC,`%5+6LT6@?[<J"XK5:A)9L%JZC,!UZ[;0HN
-M>TY/=<Z;G42\G+E)UZX?4KB@TZC.T*3I_3*KM#WR&[G"FTLVO^&>GNN'-JU&
-MG/\`B73M;9V%`.J/:(WDPL2XZQ;=+Z<8(U,$+S#Q_P",>H7E1]"VJN8V<1*S
-ME9.VL>>(]0ZYXWZ1TYKP:["1PTA>?^(_Q5#ZSFV@)'!7G)H]0O:DU/,>3DDR
-M59L^@7-3/E.'T7.^61TF'Y=/2_$+JKJX=.Y[KUG\/NI5^J6%*K6.7"87@W_#
-M:MM5;YK2!*]I_"FH&](I0=FQ^RZX9^T8RFK'H#&M;2WX6;UHL;;N).P4C[T,
-M9I<%E=9KMKV[@'QC98M='EWXD=4)NGT6NVW*\PZ[U5[:[J=&-1W<<PNI_$^N
-M6=6JLD[[C*\\ZG5=3K/>XX(P%X/-=W3V_I\&GTF\>)>YQ+B<GV6YT>Y>ZY:X
-M;-./=<9TBX#JHU8@X`Q'Z+I["\8`-1DCL%X\YIZ;B[SI]R'4VDNR8$+KO#Y9
-MY()[+S7I-RX!CXQ[E=MX>NBZDT%PRDNT^.OI/:*<R8'NN3_%,BIT&NW?T\?!
-M6LZ[T-TD[\2L?Q1_ZGI]1LXA==[B3M\R4G&T\759)`\R9^J]>\+70?94R"XD
-M`+RKQ_1-CXKJ%HTC5(79_A[?-N+.F)F-\K.<W)7U,,IIZ`*NMH/ZJWTZ'502
-MTK';5TAH$GZK6Z&6EP)D9^5B=NG<=!8C8!I]EN=,MZ@RTYWT^RR[*`T;`KI.
-MF-IFV!`AY'YETG;CG=1+3<:='\Q#@%-3NF&A+CQ$*A4=5=4T-!(G\P17-`,M
-MYF5TE_#E<65U9X-T2,@E5<:HC*DN3+B>Z@=4@97.NLG"1E6&$DR=D+ZY#8#B
-M/E0"K+S$QM*DHTC4=),#NEIZ_DF/<YQS[RIJ$:NQ4]C;AE4ZA)C"BZO5ITVA
-MVSMOHL7=:FMZ7*-:FREZB``,E<[XAZA2UN93=SQRJW5>J"G3=+_JL7I51W4^
-MK-`)T3_=+>$O\>:ZCPA;&I7\Y^Q/^2[#S0R@&@[+-Z70IVMH-,`ANZK=0OO+
-MGU+IC-3E\WR9^]V;Q%U5M*FYH<N1NWONJ^K<'A-XHOO-N"UCIDI^BO$AKAQ,
-MJ^WQCU^M/I5NVFP.(C"L7ER&M(!V"`U6,I`A974;L:B&D%;QC&5V:_NYD$C]
-MUGL:^M5`&)/='2I/N*L@8[+5Z;9.:YIE,LM+,!=/L88#RM*E;Z&Z8YF5/;T(
-M:V.%8<R&9"Y[VUI3\LZ829;N>\`*ZRE+HCZJW;6_J`T_*"O:V<1V72^&>F>9
-M5#W``*#IMGYE1K0,=EV71K-M"DT@?HNOCP]JSGEJ+5NQMM:@8!`63UBO4J4W
-M!H^5LUJ>OTX`*I=1IT:5N[5!@+WS\1Y<O]871VN_B"\X([K0KO/F=_=1=+`-
-M1Y`D&5.`'5H4Q^I4E`%S=TJ]/TE6*;(`$H*NQ$+I&*P.O,U6[P-X7#7].75F
-MQ.Z]!ZW3BV<>X7$W0:+FJUP,96_CCDXJ_N'6=2HUN)G`*M>&:?F-\\@R3.57
-MZ_08Z_,@Y*Z+P?:4VVX:1*F?%3&?5AE9K:<.!P%!7J-,\8D3B5JW-*E!!8/A
-M9UU;4RTC;L0K"L]P!=B-U/1I8"@J4*U)X+3J:%8M:S7$-?A#0].E\#`'9'5`
-M=0@C=&\LQD05%</:QDS]$&'6?_"7VHGTDPK=6NVI1U-S.5G>)'!S-;-Y5#IU
-M>Y?3+6C9+J4DW&N\-R7X:JM:M2:XR=DS:5>H`'NW3U+*B!ZQJGA38I7-:B>!
-M"EL_+J"!D)7EC0\LPU4J5LZF^:57(&`@NNM?(JBHT0KU+16H9RY4@;A]`-D$
-MC*&UN*E"IZV$`*&FM1;IIALG"*/^IR"E>TC3!T%%_&4O\!472[U2MIH$`K@^
-MN4Q6O7@977]5JM;0).ZY&Y9I>^N2<[+KIRC&N+:F:+B2"6\!0=*<&W$.P.$]
-MPZN*C]/Y">55:]S;C!@<*XI796-;32&95_IKWU;@N)PU<[T^M-O'*VNAU)8&
-M\G<K5'3V0T4M<Y5RF[DR3[*A;N`IM;(GLK=`^H&,+-(O6YD`@25:9I)@JK:`
-M:I"L`D/S!E9:AZE"F\2!!4;15H.D$Z58IR?=3:06YB44UE7:YL..5)=W#:;/
-M2<E4;MC:3"YF'*'I_F/J!]PTZ9VE/^B_9T'UJ@JU!(!Q*U&M],`0$%L6%@TG
-M"E$`*::$T`X)PG<`&Y*>DV3V")PD^R"C?-+Z3MX7,OTT^H$KK+K\D@;^ZY7K
-M32V]R2)/9)Q4O32M"^Y(IM..5IMM:;*>1J57H3`R@T@[K5()8>ZMF^R*%DT,
-MN=(Q[*WUNCYG321N%6J?RKH%:<"O9EL[A9O,:G;`Z.36_EDX:CZ[<LM+<AN^
-MP4+'&RO*C!R56\NIU&_TD$M!W5[FV;WI'T#IK[NY_B:HD$SE:O6:].UMO+80
-M"!$A:#13M+04J;1('"S+BQ==-<YP.5G*Z61QW417OJSJ+0XR?NAZ?X(;6KBK
-M7:3.5U%'I[+>K(`!F,K4L<;F5R_;WVU/XL3IWA"RI``4FS\+5H>'K9@@4FX]
-MEL6WE@"",JVQK2TA:](UNO)_Q(L*5N_T-`@RM7\*+F:;:,F1PG_%>AZ-0V!6
-M3^&-P*75=&I3QW5,IN/4KJV+Z7R%R_B?S[2@_1+AMNNXM&"K;-/$;K'\16#:
-MM-P(A7+A9'SKX\>^O?U'N$9WW7#=;#R2X&1PO3_Q=L76E>H^F/LO+ZC_`#[@
-MAP).T+Y^<YV]_@Z#T(-%4FH1)VSLMVP<VG<M]8+1F8C*S+"S+JL.,=L;(NHV
-MM:B\/F9P#/\`9<,N:]'%^NKI]19J:UF3MA='T+J9IM`U9[+A^A4`RD'.<-16
-MYTFK-8,&0#NN?MJL:=Q2NGW#06DRK%7U6A8YVX63TZLT-`D"%:JUGD0W]%TE
-M'CGXW='>ZN^YI-<2#Q]5RG@WKU?IMTUCCI#=]2]\ZWT:AU2B6U`TDC*\T\8_
-MAM7:Y]>T'N!G_):QS]?XY=/5AE,HZ'P_U^VZA38#5:'GW78]&K-#&D.'W7S[
-M1I]6Z-7TO%0:>#*ZKPQXVK47,96+H&#J)3+#[B]>%^/?.C515J-#CCY704JX
-MIT8IN.<$+RGPSXE9<L:^E6S\KLNC]3J5ZC==01[%8EC6>-[=[TS3_#AY:-,2
-M5F=>O&"F]K#`*O65]19TUI;49$>J2N-Z_?\`G7E3089.%TO$>;#'VR-6NQD<
-MJM5N!)@JK4J9&=U&YY7.UZIC%VE5.J,Y5NC<BDW.5DBX:R"@NNHT:5$N>0/A
-M,=UG*1KWG5&`_F((&`L#K76&,8Y]2J,=RN7\5^*[>W+A1,N7+VESU'Q!?AFA
-MY8XYB``EXYJ=3<=)4ZG6ZI?BA2RR8*[WP;T@6U-M5P`<<B53\%>%Z5G;TZM1
-MGJC)*W[RY%NT-;B"LXS?->'S>7VXC4JUPRE!VC9<AXCZE%TYC3[0KG5^J:+,
-MP<A<7U&Y?7K/<Z<G"ZY7AY\9ROEOGUFOU3E:UFQE*FTD[+%Z54&C)DA7A7JU
-M7>2P$SRIA/M,N>(LW=X#+&9/R@LNG5[BL'%KH/RM+H?1'O<*E5H]Y746=G1I
-M,#6M'9:N=O$)AID=.Z2&4Q(`*T*%DUIVA7]#)`#83N89VA8_ZJLVFUH['LB%
-M(N$$85AE(`3^Z.DT:M/Z*[-(K>C#@%=H4X(`&2DUK6>H[K4\.VKKBY#W#!6L
-M>6<N&IX:L"&M>YJZ*BSTP1@)NG6X92#1B%.88W,+W^/'4>;*[0W!#:1("YKK
-M]9SY:"M?JURUK"-6.RYVX<:UQ`[KK>(Y]KG2:1;;22K-%DGOE*VIAEL`,'E6
-M;>F/S'/LIC.$O9]):T#90U`(.5<+?;"@N&@C"Z1BLKJ4&@X?NN*ZG2!OGEHE
-M=O?L_E.7(WC)OG'&ZU\<[VXCQ/1(N-78R5I^%:X#6Y/O*C\749:\Q$<JCX3K
-M?S=#G;8^5<^F,>W77;0YD@JE4;(B<JZ1KI"56<R'_E)455#3EA'NA_A*;S,`
-M?"LN8-4@*5C`!@A15!]CZ?SG[J"O9G,N)`[K5J>QW5.],TRFD8M]0I-IN@3A
-M<_3J5*%_#?R$PNDK,+CN85'J-F`TO&%=<:B3B\I:(:]D@&3RIB*9;#L$")4?
-M2ZK74])&6A2UF@L@%2<K>%*M3T&?U5.YH^OS&.WX`5[4`\M)P5!4!:#!,3A5
-M%>@\TZH!_+SG9:;6-JT0[3)'*H56,+)#H/*N=+J!A%-QP5FK%BE2:*8V1^4W
-MV5RG2E@(B"B\D^RFFW/WU4O86Q)=C=<]U5YIWE.@X8G(6[6:ZG2-3<KFNL^9
-M<WFMN"W==OKA.BZNUH9Z&8A<[=.;JB(SRN@OZI=3#"[(P5SW4SHJ$F(2<5.X
-MU.G5`VVWVPNB\+EKJ@!G&5Q?3JY#0"0/A=7X;J"=7<8RM_4EW'5:OYD`K0LW
-MS`[+$H5"XR"M6R<0T+"M:U,;#`5EIU&3F%2MWD`<CM*N4':A&T<RHU%FG^5*
-MK7%*GJ=":=+"=AW5-I==W.G.AOZJ">VINNJ_F/)T\`J^ZV8]H;`$;)6S0P`-
-M$0IVD3)32J['.MSI=,*];N#X(*A<T5-QGNA#7T7ZOZ?9/^JTF"?;W3._+NH[
-M:J'"`I*A&(&ZBHGM$9(7-^**0;7#\Y/*Z9QEAU;;+#\5TOY0.P[J43=!=JH-
-M![8RMJBWTSLL#PW4!I@?1=#2/IV6ZS&?U)I:9A6K*N&VH+B$_4:;749B%BU[
-MAS`:<X"D_#5_(>J5&UKP^6,DK4Z9:MM;85'1J=[*MT.V:]_G5`M-C?XBN*;/
-MRA9O";#;6[[FM);CX6@;1C*4"![*]96S*3!C,)ZS6DSCZ+$YY:CF^I6T5):W
-MY52E+70X8707ENTM)61=T@QVQE6+I);@1A6QKTX*HV[A$?NK5!QVU*K'*?B9
-M:5JG3G."\X\,=0?8^(*;7XET$KV3Q6UE3IKVG.%XCU.@]G67O$@,=(*Y?UR;
-M[CZ-\*UVW/3J9!F0I^I6VIAYE>7_`(=^,6V[&V]P^"T1)PO3;#J=M>V^L/!)
-M"ZW'?,9QRUQ7D?XRV+74G0T3*\9O^EOI52ZFV9.Q7TCX_P"DF]+BT%P.87GS
-MO";J]8@LQV7B\F.WHPR]7EUC8UZ3R\M!+OT1=0#C#=,M9[KNNL=!%E4TO!PN
-M>ZS;LI"8E>;R8<;=\<[:PQ7K4Z;:5$?)[+5Z+6=3:"1]5F&[IMJEI_-V0UKT
-M0-#H:,0O/=[>C3LNGWTU`7GT^Q706U1E:@W3$_JO/>FW!(:[4872=-OFTPV7
-M3([[*XUF\.@MB16R<!:-1M"M1T.:#/*Q:%85:6K5$[%.RZJ,<3J=`]]UTQ%?
-MK?@^QOR2:329DX'^2XCQE^';J-N^M9L+"-H_[+U#IM\:K@TO`'*OW;+>YMM#
-M@""IZ\[CKCY+B^;>D=4ONB]1\BJ'-T&#)*].\'^+;>X:T.<&NCD[JKXY\(4;
-MNXJ.8S29D0%Y]U/I?5.C5O,87.8W&"KN9?Y7MP\TO;W@=8\VCZ:L@C@J(W8>
-M8)V]UXOTCQG=6Q%.J\^G'JV"V:?CINQ(^04N-=98])JWD'!D;)S>4VLU%T%>
-M5U_'#G$N8=("H5O%5_>$TJ3WDGM_V4F%[I<OP]$\1>);2V#O5+EPW6?$M[U%
-MQHVVHR<`(^C>&.K]6JZZ[BUIS!7HO@OP1:V9:^I3U.[DG_-+G)QBXY>3&=N*
-M\%^#.H=6KMK7FKR]].R]:\+^&+/IM$!M,!S1(6Q:6]I9T6A@#<+.ZCU`TZA#
-M7XE9U]R>7/RW/B-2YN:5&EI]H@+G^IW,DOF8V6?U7J3R]I!CZJM<W9?:@B)*
-M991SF.@7M9U1VAVTRJ/4&-8V0<E,^Z!P5<Z3T^KU&H`1(7/W_+7JAZ%9W-P^
-M*;2X'LNY\.>'W@!]2G!]UL^#N@T+>@V6#;>%U=&UIM:`UHA;QW8S;)TPK6P>
-MUH;IP%:IV&Q=,?9:YI@&0(]D+FM;D\K<C#.-NU@P,^^R!]$<J[5J,!@E4KJY
-M8S^H)H`6-F"8/=":C*1))`]U3NKS,"?99E[6N;EXHTVNSRDT5O6%0WMZVG3<
-M2V<KO>@68H4FXX7+^!>EMMZ+:K_SD<KLZ%:E3;&J%[/#A]KS^3+XNF&[*AU.
-M\#&&#E0=0Z@T,(&_=9-5[[A\`E>K>G'LUS7+R7.,A1=.+7W.H$#Y3U[-Q$$+
-M0Z59-I4]3FB8WA3OAG_4]-[7O+,$MY5R@W$X*KLI@NW*M-U#&WNNC)WC&57J
-MC)GA3N?@M*KW)`&#NM1*S^H-!I.7(W-/_P!<XCOLNNO3_(/=<S4IZKUXC,K5
-MZ<[VYOQ51F@Z1NN.Z56-KU@:MB5Z#XEMYH.,+SCK`-&^U@[%:LW'/JO1+7^9
-M;->T[A.ZGZN,[*KX4N6W'2Z<'40%HPX[[+#:LYF2T-D<F4`8&RK<`"57JD!T
-MSNFA#5``$1*HW;FD$&%<JO`$Y5&YR_:545"WU$CCA1WC-=$A712EH)P@<P$E
-MKCC@HE8%H[RKPT\D']%<JZ9@*/K%`4ZPJM.`5(8JVPJ-@'V4ZIW%:YIP[6?W
-M3!K7,]RIW,#FC5B$%.F`X@&$%"K3-*KOZ2KMJP8)X37#`XG&45C^:)&%*L;%
-M!W\EN>$6L]T-`M\H8E%+?\*SIMS'7#_"T-'(W6/08]@-0Y:_*VO&8_D'&9X5
-M2WJ,=TP-J-`<!A=9=[<.G/7CFN>0W:>5E==93=1@CV6SU*DQO\P+%\05)MAB
-M3*L*HVE336;JTXSA=5X<J>EW^:XUSBQ[3'W70^'ZY#)X/*WWRQU7963]39!V
-M6ST]P(&#E<MTNL=/YACW71=-JCR@0%&FS1=ZA&5H42-.^5DT'ZS(!$J\*P;3
-M+CVV6=+M)=UG/<*#'23N95ZRHBE2`@@\K/Z8T%YKOW=LM:@X$"3A3_524XVD
-MR5,`(B%$V-X.RE9"*DIMB"5+`<R`HP/3,J1IG$J*A+32=K9LK%O4:YH)&2DU
-MH."9)45>D6NUL)]PBIR)S&/=9OB6GKM25?H5P6AKL%!U5GF6C@"I2,#PP\A^
-M@KJ;=PB97(]#>&WSV.X.RW[F[93H:0X2>RVST;KO4`QOEL,E8_3Z56]N(&W=
-M2/8ZXJ:1))Y6Q94*=C:`F-<96=G8+RX;:4VVU*#4/9;'1*7E6X?4&2-UC],Z
-M<ZOU$W54SR`2ND`:VAI[8PN.5VMA6W4:+ZYI!XD<2K#R'`&?C*Y#K6JPN?/I
-MOPXY6ST'J3+F@PEV2%TQU8U_5I56`M@Y6;?6[2"M34'>D$&5#>-:*>8(2QIS
-ME;^6X[@!1MO=!C)6C<6KJ[SL`HSTQ@&1*SLTSKBJ^Y)9_2N'\9=&+*AJTF3.
-M\+T6I:-9^4`:55N;!E5A%2,K&<]N6L;IXU7IU*;I`(A;OACQ3==.J-94>2S9
-M=/USPO2JM)I0#[+C.L]&KVE8RWTM*QCG<6[C,GI?0_%%EU!@8]PF,_[A;0MK
-M.K3-1L`N"\-M*M>UK:V/+7!=#TGQ?=4G>75>=/O_`-ET_CFQSCTWO'?1YHOK
-M"!"\?\4U88^F<0=Y7J/5?$'_`!"R\L.ES@N&ZIT2K<5'.#=1)PO+YO'KAW\7
-MDWV\SJ>8ZLY\&3M"EL];ZKJ;@`!GY787GA_RO4YD+&N.G,I7&L-+?A>:XZCU
-M3RRHQ7=;T#/S`1]-ZG4J7`;J,3D2J'4V.<[,CY0V3/*)>[Z<+EZZCK-6.^Z7
-M?@4@TG/`*UZ%1M2D)$D[A>?],OG/N@ULS\G9==0J.IV8<(EWNM2\.=XK>MPQ
-MFI[2/H5:97]49C]UA=*K.JB,GYY5FI=EC\DAW8JR+[).IU`XF0-^5E=7Z1;7
-ME(L<P>K*DZK=--,&23\IK*O4J.$\>ZQE_KI*X[K7X=LN-3Z(ATJI2_#6NZD&
-MAH:!S.Z];MS3%LQK@)(S*FHUJ+1,1"LEZVZ3S61X_5\"%CJ=)]-H:S^H#+OE
-M=3X=\&6=HYM3R?4-B0NHJ%E2Z!#>58K564P,PI9;Q:7RVK]E:6MK:M+:8!(Y
-M2-^QC/Y9,MX"R;SJ;74M,RJHNV`Q*MLG#G.>URYZH75C)52[NP\ZM655O&:S
-M+"<YCLLZM3>&%KB09Q*X^_QK2Q<D5-0+S*JUKC0R`X]E4N+MU(QW"CI5C7:'
-M05F_E6C86C[CU9C==YX&HLIM;+0>ZY;PM2\QH;J))7:]`L:E(X^JU).TMXT[
-M'IU2F&`#$J[YX#=\++Z?:52P1)6I9](NZ[L@@+K+\<D52]$F"H*MP\MELF5O
-MT?#C6MFJ8A&_IMO281HSPNL\.>7QB^3&.2J&XJ.@`Y3#IM>J9=NNG%I2!.EH
-M1,H-G\L+>/Z>WMB^;\,&UZ&TP7"?E:-CT2D'`BGMW"V+>BR>,*[;AH'$+T8_
-MI\8Y9>6U4M+(TV@-=MV4E>W>6@-*O4V:L@Q[*5C`)E=ICKIC;#=T^JXYRAJ4
-M*MN=0^RZ-K`L_J3FG`[K4P9M8E2\J.=!D`=@H.J>)[?I]-IJU`/;_82\075.
-MSMG/YX7E'B^[N^HO>:;"6@K>YC/;)PSMZQ>DV?X@]+J5=)KM!^O^2Z#I_7K>
-M]IAU&H#.<%?*U6G5J7]2F7O8YIG!73^#_$'4>D5!3J/+V#:5G]W&W34E?1_\
-M4',`)RHZE8/V,KB/"OBVVZBQM-]0!T97327MUT7RU=$V.]>=!@A8%)Y_CG$@
-M22KO4KE[00X$++L:[7WD#E6])]-X@;-$X^B\U\5TCYSH:!!X7J75!KHG'T7G
-MWBVVRXYP5J.=['^'%V^7473@?W78R8_U7G/@ZLZWZL!,:L'*]!+R:8(^\[K'
-M^-"J.`;D*E<D:L%25GD#=5JIY*NA'6+B,C?@*![1&0IBX.RW<;!!IDYWY01!
-MQ@B,)XU-@%3>3Z9E`69G909O5:6J@[.%1Z82&.89QMA:O48-$\@<+&L"16>$
-MO42?5DAAV'R(2:P`AP">F`XR1A3M8W3@04%&YSB)16M,@SIW4KZ<UM)D?"FI
-M4BR6G'92D6*#1Y39(E%#>X2;HC;]4O3V_59TZ.:94'4>JN8XC0P_=#U6A2I5
-M2`0.T*#I3?(NJM7,%1]7>XN:^<NS,KMJ<//]9G4*9`QD%8'5Z(#20=MPNGNO
-M5;SB=Y6!=L<*CIR2=DJN:NJC)]6Q.RV/#]0TZ,D@SD_=9'6&:+B>"5?Z0X:0
-MP5/:>ZU.F:ZBP?',+H>DW$4XQ\KDK*J`X;SW*W>G58@DXC9(O;KK!P(&=QDJ
-M6O4#M-!I!)W6=T^J74QZN%/T]X?=NJ$&!LI81OV+6M8!V5ZG^2(*SK)PF!`5
-MZF^!NHTM429W*EIB8[*O3<)B=U9;@"%%3,_+`W4C6X'WE14\22I9$1.%%/F,
-M#/RBI@_U94-2LVGDN`4)OJ0$`?571M8KVQ)U,*@KUBRF14G'*=G46:=L+/ZK
-M<NN&:*;9E/4VPK:JYO5ZK@#"T#7?7N!3&RDL.FM:34K'?DJ*Y=3;<AEL-3AV
-M4EX9URW["A3I4\Y="N4[2I49KJ?EWA#X=LGZ&UJ_(E;59H%.`V`LWGIN37:C
-MTUA!(C'"NENH22`%%0`8X@_='4JRW2"#*QC-W:3MG=5Z>+UODM@CNL=UG<])
-MKB"[RUV/3Z$`N</S)NI6=.YH%K@#'W4LU?:.LFYJJ/3;ME2B"")[*2X(JPT;
-M$K%(JV%=S7M.DGW6CTVX:^H"3LNDLRG#.M7E?I46,IP<J&XI`;`*SJ!`A/ID
-M=Y4TTRZ](&<9[JM5ID&2`MA]$OVG*J5J,&#/LH,]S/0!&#RJ?4NDT+AGJ:(*
-MU:U.)$%`YL".`LW&7M97%]8\*T:C"YC1/LN.ZQT6O:53#,-)7L7EEPP)"S.K
-M]+94!=IB=UROCUTW,M]O)J3:E%^DL,!;_1ZC'LBH`#O*Z#_@%.LXZFJG>>'Z
-MM&KJI20F[]2R?%&_Z?0N*9.D+E^K=!8ZF][6R`<GLNW?9W%)H#ME5O*#VV[Z
-M5,"'X=A8N,R[:F6GDO4^E>K2UNTJK=='<:<AI!7=WO2*QJ'33+IWPH+NV<RE
-MIJ4B#W(7&>&?EV_=KA[*W=1J@D!L8GNM6ZZEHH"'Y'=:0L*=1I&`%G]5Z:#3
-M);&3O"YY>*QN>297E?Z)>NI40YQ;!&X4M[=MK/:01)]]ED68<RB*;C):,[J&
-MO5J4ZX:""TXP5PO'#K&C4J^:[3J,3O*N6E44-.?JL>G5`:'2`!O/*EI5W5'[
-MRUJQMN.CI7CG$MG"G_B(GU3.ZR*%9E%AAPF%4N;\@N>"M^Q&ZRZ:VO@SW17E
-M?73UMW/'9<C_`![G7,AYS[K09?.--H:<_NI<MQ=:37-4AQ<#OPJ]*N[SR2X^
-MR@N*SG"2`0/=5*M<"H2TG*YMR.@L+L.J-:YVVZ;KU;R6BHT$25SM*^%*LQY=
-M$')!70731=V!<001LDE6\=L*XJ><]KFY]N5IV5`LM]>K$8PL[I]J\7D%OY<#
-M*ZNTL:E2ES'*LPW>&<LI(+PV'4ZP=.^R]6\%61NV!SMB/\UR/AGPW5K!L-7I
-M_@WIE>SI!KFQ`V^Z]7B\4MU7G\GDNN&_TKIE*E3:"`5JQ1H4Y;I4%K3?H#LA
-M!>M<&Y)7OP\>./3S7*U6N[MU1Y:W;N%4KU''!XW*FH#+DSK6K5K:H,+>^&5<
-M9,P$3`XG`6C0Z<XMET_57:'3F-W&>RD&71I.DR,*W3MW2M-EDT$G=2MMVZ<?
-M9:D%!E)P;G*)C#VA:'DC3(2%$1(51FW>IE/98=[<>6"3]ET'5"&4\[E<CXAJ
-M[M89DK7QBN7\47=2YK.IC8'[)>'NGVE>V=J:-495^WZ9K::CQ^9+H-D:5Y4`
-M/I/"X>3^4W6<IIR'5/`M.OU5]>B(U'98G7/#%U9G#-0!WA>ULLAIU-/Z*M=]
-M/;5:6/:#VE9GBUS&Y>-/":1K6=>6RQS5VW@OQFZ@YEO>.G&Y4GC7PN&36H,@
-M@SA<!U!IH52UP+7-,;K>&5Q,IM[O5JVO5;'72(DB5R5RVM9=3)$Q*X_PCXMK
-M=,K>35J33(@2=EWEA=VW5XJ4RUQB=_\`?9=]RS;EK5%_Q!M1FEXAWV7.^)F-
-MJ,>=,@G=;/7K(T3YC20?98EW7<:#V.`U'&1LND<LHY*UJ?P_4@X8@XRN_MZQ
-MJV;'-=DCNO.NI_R[N1O*ZGP_=N=9MU'("EG*R\-USCR?LH*CAM.$#'^8-SE(
-MR'&(4:`0!ZN5+3F-DWECVD^ZD9@94#U!#1F57KN]/8\*U5;Z0[,JA7=G?<]U
-M8BM=D&GI)_18ML?+O7C43/9;%T<.))E8E0D7Q[)>D:=(2V=X[*3;`5>W=``"
-MLTFF>9]U%-1:#5]0(A3/`!E$QL"2<]D-P0,_HHJ6F\!@&4_F#W4+3Z1ZH]D\
-M_P#6HUIS=9WH;3(`,969U!AT$QE2U;DFLZH1`.TJM<UBYLR"5VTX(:A(H_F^
-MBS;RF7DN=PKM=SM!XGA4ZHFE,PI5<MUUI;7#G3I!P0=DW2ZCVB7MD'^J5<ZQ
-M2Q,3RJ5H#5I.#I`&V=EJ=,ULT*Q#P2[!'!716%4:6DE<9:5=/I+7XY*Z+IUP
-M7TFB=MH*I+RZNA<%E(0Z0!PM?I`TVV3NN5H5XIM'O]UTE@_^0WX4L5NV3\9S
-M]5I6[NZP[6J`X0?JM2SJ:FR)[Y4I&A2_.3E66.TA5:3I8`%-3)U1*C46J9Q(
-M0WEVRA1DD!)BYS\0J%[5LV_P9(/LL7*8\UJ3?#8I5*%4:GU9!15KNPH`RYI7
-MF-!_B*D-&A_;A07=MX@N`Z7.SVA7W\?Y/V\^GH%]XAZ52!UO:`-LE8UYXZZ;
-M2D4(<?:?\ES'2/P\ZO?U/.O*[P#F%UG1/PVM*+PZOZOF?\UC]Z7^N+7[6O[5
-MF#Q/?]1J1286TW<E=KX*M*9#:CQJ<X<I7G0+2TZ=_)IAL)>&:S:;M$P1A:QM
-MR_LSE).G;68``;$1PIZT"F52LGZF`RI[JJ'-#1E,NEVJ5ZFFF23NI.E4C4=J
-M>=ME'6HZR)..RO\`3@&P,=LK&*XS2]28(P43FM.WZI,&(!!^JD:.\?=:;C(Z
-MYTYMQ2/^+VP%SEN]UG<EE21P%V]0!P(,$+"\1=+;4I&HQN1V7/\`K=Q;-\4U
-MI=,<T>K=7*+VD#..,KF;-[J=4TW...Y6Q;O)8,KKVQTTP6G8P.RCJL;"@IBI
-M.ZE.N((6:T@K4L3&ZJNIGX6B[20,;J)P;R/NH*@!&!A#6IMJ@#WW5I],3,?9
-M`8;N84[X7I49;,INGGNF%!M5T$81N>:C](`5R@QK&#W4OX(R.H=/%1D:<+'J
-M]/'FZ=/LNV\K53P%5J6+7/U1NL7%K;F[;HM$PXLRL[Q'X=HUJ9T4Q)W@+O:-
-MG@`C"CO;!I&V%+A%V\AN/"M1C"6@_*Y?K?3*M'4T3\+W>ZLV"@06CZKS/QI0
-M\JY=%,@$]EBX-3)Y6\/9=%A#AGE-6B"8,CLNDONF-J.+].%B7ED6/+73'[KQ
-MY^/5>G'/;+\XNJN9I<X*Y2,-D8CA3-M&ADEH'>!NJX8]I=`7++#3I,]E5N7;
-M!Q'<JA?W%1KBQI)*G;3>*IEI=K*LML*;FESV$D]UC4CK+(R+8/#C4)]+LD+6
-MIUM&F3Z>Z"[I4J,`"&G@*(.<ZEIF,)9M;EM9K7-)M$^H@E9#*IJ7!!=`'8*V
-M+2I48&.;^;F5:L.F-#=9:1ODJS$]Y(:QM&U"Q]29WA=7TI](46L.\05D6-J'
-M.#6%=7X:Z,0W6[)/9;PP<<\_R'IO2:=2Y#V,D'*[#H_098':-ALM7PKT9C0/
-M0<CE=OT7I3&LDMX7J\?B<,\]L;PG;-HU-#F1A=I9TF!H(`677L/+K:J8`6G8
-MM+:8D_*]6.,G#BM&H6F&C`5;J#I&1'PIG.;JPJ?4GM#9#I]ETTSM6K5*=&GY
-MCR%-T[K=C&EU1I(]PN+\:]5N:5`TZ3'?(E><OZIU6E<N+*M2"=I*7+#'BIK*
-M]/HAO6K,`$5&?=/_`,=LA_\`I&_=?/K.M]>B-50_=%5ZGXAB07Q]4_<\9Z9O
-M?CXBL6X\YN?^I1N\46`.:K?NOGQW4NM:CYCJP^Z.C==1?E]6H([DJ_NX)<,W
-MT+1\1V53`K-^ZF/6+73+7A?/G3KCJ8KRVN\`^ZWJ?5+UC`U]5T_*OOA4UE'I
-M?6^L4G-TM=)'995"B;EQ>X$MW7/^'?/O*\U2=*ZI[A0H!C#^JS<O>\=+)Z]J
-MM^\,864QD*'HC-%4ZOS%6J-L:KBYQGE2T:(:\F!]%G/IG2_;N](DRCTMDF<%
-M0T8$P1*DDQD[+>/,%>_MJ55A8YLA>??B#X,IW=-U6U;I?/'T7HU0@C;*JW+`
-MX$`*Y8S)9=/FCK?3[VQK&C589:2%K?A_XDK=*Z@UM;46$1GC_<KU#QKX8H]0
-MIN>U@U[X7E?6NBU>GW+@]A`G=<;[8UOC)[(:E#JW3&U*3VY$X*Y#Q#:/HM=$
-MS.ZS_P`.^O/L[@6E<S3(ALE=EXIM&W-AYU$#(7IPRV\^>.GDW52YU7,`@[K9
-M\*LJ7%N=#H@+.ZY1ASLPX'NM/\.G#SC3C!5RK.+7:+BD0"?96*3*[@,`+5K6
-M8.0`HV6[V]L;++2@:-P)!<$#FW#,3*U7"&B?U4%9NF85&;6J7.VP"S[JM7!]
-M;/LM>Y,.R`53N2UXG2$1E?QF/5QW6=4J-=?AS7<E;%U18_\`ISW6'<6T7GI/
-MT5O236VO;N&K>)Y5VAIF)^BPPRNS.DJS:7548<W'S*RK<C21G"@N'`.V*K.O
-MV@:7#]$GW%)P!F.R"VP`M">&J%CVZ!Z@G\QO<*-.$NZL^GA.`/+!=E1U634P
-M/=2L:U]/2.%V<5:H095:J=0CG967`ZCC95ZS03'ZJ:5E]8I`T-``E9UFP`.:
-M0/HM/JC9JM9V"IT*(:\P))25FHJC21#A\:5=L:CJ+@W8#@R%7SKCCOPK)IEU
-M-N-7N$&O85IK-DF"NJL:HAN9PN#L*FF[%,SA=/T^O#1"U.5=/:UB7!H^RV;*
-MI#<?J5RO3J\O,N)6]TVKKC&R6(W*-0``!6K=S7.D+-H.DB/W6@R&@`?HLUJ5
-M<:X<HJC6ED$`J"G!(_NBN*PIT_[J:VNT%X;=@@,"CL;1E:KK<T`)4*+KE^M^
-M!P%IV[(`;VV"QJ7IKI:M&-:T-T@*WH]/^JKVXSMLK;!_W6A4ZC0\RU(7+V+1
-M;]1<TCE=F]DM(7(=<I>1U`5`8DY69=9+>G4VEPQM)L<C96[`&JXE<_T>J;D1
-M&RZ;I5(LI9Y4SO.G.<I:K`&>Z&V)#O4%/5&H?Z*!PAPSE633JT:)$-RI9RJU
-MLZ6@&`58:"8[(T51H&905F![()!"F+0/<CN5&1@D`945S'B#IQIN-9@(^%5Z
-M==%I`<2/8KJKJF*C-+A([+E.OV+[>IYM,&%B7UO^+9MM6M5KP,R2.%;`$9Y7
-M,](O@3I(R-UMT*NH`@[KK6)5M]-I]E&ZU!R$;*DP.49]+20<]EC4K6V=>L-,
-M8*I-IU:C@'#'>5HO'FU2(Y[JRVB`T#3"S_D5FV])E-V<E66,&L$%2U*()QNA
-M-(@X36A("`I:36P2>55<2",8[J1E8!%70UH;`E#4:"S*A%6=M_E.'M(R<H*M
-MS;![B-*Y?Q?T*G7H.<&Y/^^RZVK4`<51ZE4%1FF-UC+':[>54>A52]S(Q*Y[
-MQ7X?NJ)+@TP3_OA>P4NFN;5-7RR0[L%'U3I-.[9#J6X[+A<-NLRT\";1J4_3
-M4$_*MV?3&5R-`A>B^(_"5%E$O:T`_94/#/0CYI#FX"Q<-\6+[:YC`M_"DT-?
-MUCLLWJ/3S0FF*9G9>K'IS@T4VTXGE"/#--_JJ,U'E+XI.B>2WMXG<]'N*KQ_
-M*<0I+3H=Q(:6GY*]J'A^V;Z13_15+SPZ)!8T1\+$\<VW^Y7F+NAOIM#N5/;]
-M-<ZG!/U7?O\`#-6J(`PK%OX4,1IRM?MQ/>N#Z'T>+F2["[CI%G2I:-3H5YGA
-M&L!+"1[PM&T\)W3J0ESI[PM8R8LY6UK]!JVK&CU`'NNCHWM!K``]H7`7W0NI
-M6DF@]Q473K;KSW'4XPO1/)XYVY^N5=U>=2MV/!+Q]%/2ZM;>0#J'W7#5>C]6
-MKN#B]TCLIZ'0^JD:75'1]4_=PV>F3H[_`*]0H_\`Z1L?*CL+\WSBX&0L^S\+
-MU:@FKJ=\K>Z7T06S!N,*_N;XD/37U%>V%K<VY#J8<3W"P3X-MZU<O\IH;VC_
-M`$7;T;-K0"3)/NK#:=-K8`!4R\<R673E+3PA9,:)I-D>P_R5O_RY9-;'D-(^
-M`N@JQ*@KN<!NK/#BERKGJWAJQ+3_`"69]@LOJ'A>U+8ITQ]%U^E]3$84M*U!
-M;D9*7Q8_#VKSEWA]U(D"F`HO_+UQ5J`Y#5Z3<65-PF(*SKLMH'3`,]E/V[\I
-M[,KI=HVQH``>H"%;HT'U'R9,J6A2=6=J<,%:-O1#0!"WC-349O/**WHPS+8^
-MJC<P"K!G*O\`EC3@*C=RVMR,K>N&:8M+78S*1,$J:MFB#'U55\SE2<5DG.TG
-MY4535F"C)$@'"9\&8*TJK5;JF2N;\3]"HW])PT#5W74%A)V0OI:FQI4N,IMX
-M7UGI]QTN])@B#Z2N\\!=7;U'I9MJSO6T`>I:7CGH-.\LR]K1K&<+S[P]<U^D
-M]:\IQ+6DP=USG\:MGM%OQYTS^%K/>UITN."%E>`JOE=4+"XYXE>@>)[6GU/H
-M@JL&0)QRO-^AAUKXA@-YA>B_U<9V]4I`.IC!P.2HW,R5-8Q4MV$DB0AK@#(4
-MBJ58.S.P4%9TM^5;J@0>52KG!C"(I7,D20J+R-6ZO5RTX"I730(`PJB"X.#(
-MGLLDLF[U`+3N7.GV673,7I(VY4O5)VO,$S_DIZ+!AT#"CI`;S$\J>FT3@J*"
-MM1IO&VRK5;5IR'*XX$-R@=!,CA-$0LM:VD14PB_A:_\`\BMTP-`S">!_B4:<
-M"XESH."$=$D3!D!0L)#<R/D*Q;Z@V8&Z[:<:BKR'%5JC0'YY[*U=CU856X(`
-M)D2%"LZX:7W3G#@PH:K);`P?E:'E11G:52JL(>2,SA155K)'<'LK-`Z</&^P
-MF%"YI#L_]U/0=K<,25>TZ)S1_$-)D&-PM.QK.:((.>5E7NJE4:YAF3$'A7K"
-MIKPX3"16]87!'($KH^DUM%,$'=<10JNI51.&KH^B7(>T'5*TS766+Y=RM:W<
-MV,RL#IM4$3NM:V>20I2-$U64J9<H+1C[NOJ(A@]U6K$UZXHM)CF%L6K12IM:
-MP<+%_#<_*9C`Q@#>$QD&0-^Q4K#QV35#`C)*:5-:N.L$G`V5ZFXG/<K.MW28
-M5Z@9$;*BP(+8`*YSQC:N>&^4W<KI*8_EX,*I>L#ZC01)W6,HTH^&+-U"V;K!
-MD[KI:+=#`J=NP`-``$*9]R&D-E8QYK&.EID'!450#5A/1JM)B4540<+I72#M
-MR!LK=%V),+/8=.T^ZN4G`MXPBQ+(WWE(Q_LI-!/;'9"T0XP5&C.`TD2J74*-
-M.I1+7<A6W&-S/LJEZ?4`.<%2P<?=6=:SNW56DZ25H],NPX`ZMEN7=FRM;:2!
-MLN5ZA:U;*O+0=)*SC=<4RF^736U8.&_"EKU(9A8/3+T.:!^ZTC6;4<!.5NLR
-MM"RICR]4F5.6>KTRH;?_`)<B!^BL4L-EWW4D:1NIR,F$!IP`K`;.=D[62X!2
-MJINIRA%"1*OE@R(`^JC-/U0.5!4%(@9PC\H1,[JP:8&#$%-H[#"FE5:E&1*J
-MBW\RN`6\[+4-,QV3]/M0ZKJ*6$2T+.F*0&D;<!17'3F/`AH^RT]/&F?92AK6
-MMG$=E-1IR'7.B.?2.`0LSIO1/)=ZFC[+MNH5&Z(T_14&^HQH4])O9MF?P#`V
-M7`>REHVC'0(5ZI:U'$P"FM[=]-TP5C*S>ED9]QTX%X@<\*:GT<.8"6+:L;37
-M4!<%K4K6F&Z>RSCA]:<H.D`-!TA2T.E0Z2V%TE:V;B!E)M(-`.5UF++,H],:
-M6B1GW1/HMH-($>ZO5:S&LW.%F79J57P-N%9C(EY0/8VK4RR<JU2M*#698)04
-M:19$@R=U,`Z<@Y34MY7F#9:TA_0$YHTFMPW*"7!V)3OU&-)*:B<B&D-``@IG
-M/(=AOV2;3/\`4EY3@XPKP:)SC&WW3EV,G]5(*9:R0/HJ=:I_,CCLLY9Z60US
-M<EHP%';.-P^`FKEDP>>ZFZ-0&LOXE<YEEMK46J%#2,C*D<`T2?U15:M.F#D+
-M.O;IS_2QR[R,6FZA=ALAOZ+.%)U6KJ>,%7*-N7G4XRK+*``@<)645O1TMPV%
-M*&CD*4@S`,)0"?=601D'Y_LJ74Z0@&/HKYDG!5?J(]`D[*I4=`:K<3!`4;J0
-MG"L=/&JC.T(W"#')6/\`4RXK.J4(<9"C-/@K1J"./E15&3D05L4_+$8RDQD-
-MSCY5O2(E1$;@B$%2XHM<TM(!E>7_`(E]'_AKD75`$23,!>JOP")E8?B^PIWE
-MBX.:"8*93<3>G,>![L7O2G4'.ES1&3[+D.J6O\)XK((_,XG]5T/@B@^TZI5I
-M%IB?@)O&]H1U>C7:`?5O]5,,MXV,Y363H>GD?P=.,X&R>XVSA*P'_HVF!D!#
-M=P`,K>*5!5V/"HW!,D#]%/6J0)!E4Z[B3+9515JCU<?=4[C\V3"N5R)!.%2J
-MD$Y^Z(JU3Z\SLJ=O+KEQ@QRKEUAITR<*IT\S6=D_52]$7&P'1'V*D9J<[T[H
-M-!C8%'0@;-GX0&[\OJ.R:F&X.K9.(G,DHBT$=CPHL.`XB92AW=&S3I$RG]/<
-MJ;C3S.W=+)[JY;5!@'8\+-MWEM*-6KO"N6;IS/W7=P6KR"1IR%0O&X#!_4<J
-MY6>($[*O0;YUPZI,M;@+-6'>P>3@Y5.L``2<=CW5\!KG$=N5!>4Y9EON$JL:
-MH)J`D$CLI:!)<``(]U)=42*0=F?904FD.F00#L"D2Q)>M:6M#@"?CE'8.#'X
-M&?V454&I4B<`<Y*>FZ'"00-B4B5IL+:A!&/E7>GW+J#X;^4\K,L7S5+85YD:
-MM)C/Z*SAJNQZ+=M?3$>PRMNG<::)*XGICWTP"PB)6W:7IJU&42XQO"U6>G4=
-M%8\36=C4M:VENY]UFV-1OE-`.!'[+1HN$3,+&FEEASE&X225%1@Y)4\0T&8!
-M4L:!)!`"M6U0$Q]%3<,GD_*DMW:'=Y1&K2)B8A-#7OGLH#6TT9$!3V)+J>HQ
-ME8S+4VK13+BJCGMJF0=BH?$UT;:UP=U1Z1<A[0=6_NIA.$C7H574G2<A:%"L
-M*C1,3^BHT--294C&.9EI6W2+FKT[;?<J>BX0J=%X=$JS2QSNHTM!P`ALGW2/
-M>4+-.F!^J*0!D*:4%:&LU$!5*`-6L29@84EZ_P!):'&45C3AD]TJIF@2#V5#
-MK-DVYI$`96BXP0(3.`TZ5,IM8X*X8^SN""#$JW:70\T21D2MOKG3V7#"=.RY
-M.X94M;C27>F=UG&WJLY3['96E753W5JG4).-AV6!TBZ#FB7+9MWR)E;TDJVP
-MR(/=3,@`S/95J!>7^IP(XQLK$<\J-G:)R#(1`<D)J8/;*D;DPI1$^F79!`4C
-M:+0WW`4K&M&#NC;N,84TJK7;I:K-C3#:<[2HZK2]P&%:8T,I:8'T2K#B!RHJ
-MSC'8J0R_`4EO1#R9E.A3;9NJD$@Y5@6+&Y(`^5ITJ(IT\H;EHTDA36U4J=$:
-MM$*9UI2+?RH*!FI,X"LZ].Y4UNJK-I%CI`,*1E<@P>RL`->T84;J(>9[%76A
-M(QP>-]E7ZA#:>#**K2=3RT_=4:M74_0\\[J\!J-)U0YF%890:!NI:+0U@&_P
-MIV!H"FOR*OD-[;G=%Y`U1"LD-F>4_I@<IHVJFW`3MH-Q"LB"-N$FAF"#":$+
-M:`)V^4A;@[[#LK!+0))CZJ)U:FW=X31LWE\8"JW%BTNU$HZ]]39L9CW69?\`
-M5M.&3E+A+V>^AW]M2;#IV04:[:=.&!0-K/N0"\DCWX4U*FP-RDQDZ2VWL%4U
-M:SX)PCIV^@[`^ZL,\L#>041@[%:TR&FP!IGA.-_A.X`#TF4$#5NJ'?G(*$3`
-M)^$SS,]PA>2UL]T!8&(S\JMU""S&2IM7V4-_`IRWZJQFGZ8TZ3&RDK$:@=H4
-M/2\-,E2UXF9P5SLX3()<")(]D#R`(*7[#*$YAP*W.E"8TX0.&9`GY4D3_4AB
-M'^RHKUJ<CTR%4N:.JD0[E:#Q.1N%6O\`_EX5B5Q=>V%IU8O:/S'^Z#Q/0\SR
-MGZ3W*UNI4`ZX#SIE4>OF&,`B9W4DUMF\E;PR@P#``4%TZ2<?JB#M5,`G<<*K
-M=/B8(GE:G#*M4)DP<*"H9&)SPI'.!F#\@J"J=.SAW1%>OEWM[JM4#OS<=E8N
-M#J]H*A<($`_=!3KM9I)DY53IP'GO),$<*Y<?D=..,*ITP.\UT']4O1%YF<1^
-MJD83$1`'NG#1,D'W'=.3+<84#.(<!!RG`[DIZ1:1/^J:L"#G"BI&_EW/V2^O
-MZ*)E1FD22$7FL[E--;>/4*CJ;]1)<.%KVM21,P>RR[?3IT.SV4],NHF=Y^Z[
-M;_+RK=P]U)AP>PRKG3F>7:^K!(G*RJU7^)N:=,8:W)6L'?R2W[*::@0"PD\(
-M+C\H$3/Z*5Y/E1$DJ/3.\[(TJ5VX`@[S*I!A95(G[K3J`D9:%0>#Y\:02HE5
-MVG_U;A)!`P%-J(.9]E#/_JR,R,;84]P"TSIGXE$Y%0<:;I#MSW6@Q[?S+*HE
-MSJ@!&^P"M^8-@[E58W.GUG>6<K2Z('U+AU:?RX7.V58Y$D!;OABJ,@DS*UV5
-MU=A<NI.&HF%MV=TVHT9SNL&U#:@$1*O4&.9!;Q[K(Z*W,MW5RG.W985G=EK@
-MT\[Y6Q:56N`,R%*U*DJ@`2H9<TR)^JM/TO@JL]L'(E94=2Y'I870MBP_Y+3.
-M!"YZDTOO6[P%T5`%M&0N67-9O;'\8--2E(_I_P!5B=&K%A,SV71==;JH'4N6
-M:UU*K.5O#BMV<.MZ96U$0>%J4CJ;PN;Z/<9`G*W;>HV`9)6S%8JLV<U'1JC`
-M(3M=Z1"&I3CU`+/3HM4W9PI'/&GC"J4:P@ZC":K6!PWE4V6H5KF-X*O4QB`J
-MW3Z`8TEW*M`9V69^6C%V0$;8(D'Z)B&XG=$&C<X0156M(((GA<YXEZ=K];1L
-MNG.^57O*8>V"-\+-QVNW#V-1U"KI=N/==!TZZ!8)/LJ/6[!K'ZX&%5L;G2^.
-MWNM2[<[-.JMZDG#L*SK$]UCV=QJY6C1>#C=-+*OL)+)E24CE5Z1ALD>TJ>B9
-M(SMP%&ED$$`;]T1_+,[**8*)YTL10T0'5YD8'=6JL0%7LBV22`K+&!SO]5EH
-M]"G!E7K6F&[0@HTP8PK--H:`"Y%AW`!D2H;HPS^RF>0!G?Y5.\)TQ/NJE0V@
-M'F&45P8YP5%9_F),[JQ<4R1A94%"M!A7:3FGZY654)IU([*S0J>D=RM)%NZT
-MZ3`&VZQ<&N8V6A7J$TX<#"S[9NJL7`*6+M:+](QPA_B-)DIBSDG'9`:8]\\J
-M@_XKD9A+^+&5`:?J@=^`F92`=D%-HE_BS)]TOXP\%0BG\I"D,%-B2I7J$1)4
-M%057XU8*L-:`$X89SB%-BF+5Q,.<?NJUW:`$20M8#95.H0"`2%=<`+:V:*(+
-M2?NC%)VTQ[RI:0!I8.GX3GL2DG`K.;4:3#DPJ/8W.1"M$#<J-S`>$1"VYP9'
-M$)V5Z9`(*9]$'X41M@#@P$1/K;O,<?*(D1CXW5*I2>T^DJ-[JH]U=C0])&-P
-MJ]_4;Y<$A5Q=N!R%6NZFL:M7W59J[TUQ<V.#LK-5I$$\JMTA[?*)F5,^H"Z)
-MPN<EJ7@)'I$3*0$"/JDXM/*0$N@25U:(0/E(029"<3&R=\#VQLH`>`#E4[PC
-M3."%8JN),-5&[<6X,JLUD=3J,;5!,?*Q.MW-.I48UI$K9ZM0UTBXN`PN.>QP
-MORTN)SS\J\:VQ]:A<!3EHX5.L_48$X/*G+O1`.0JCYUD"2K.D`[O,J"IVB.5
-M*^1&-U`_5L4$3AJV*C<V1!^BFB#(0P8@")4-J-TUVDDJOT9I-1T?NK=P?26@
-M1'NJG1!ING@_U83+HC1+0'$@9(SPA:UWY01'<<*<M'"B+PPGE`5*F!'8*.KD
-MD/E2,=$$2HG3K+CO\J0(-;`]2?2S_$G#C'"6H^R-</%;%\.&J"9V6HUPTR1(
-M&<&%B4*K34])(]IV6D:W\EK&B2XP(7:O*.U#]3ZS01G"T[.X!;H><^Z"@P,I
-M!@R.4C0TN)&^ZSTWI>)!@`(7,(4/3K@ZB'JW4#33F55BM6U:2T`'4%GO]%:)
-M(/Z+3=3BFXSNLRZ#6.)=R,+/TO2L[2ZL7N`[*\UC74X':!E5K>D#1U%NYY4U
-M":9`F0>2D$%9HHUO?=*K^77,%3WC&N]>F>ZJD#3I,P$5;L7M-,ZCQN%L]`J^
-M6S5.YY7-V=3^2X@''"U.EUY8`>/=;B1WG2K@$`D_9;UE5#V@E<3T:YD!DKI+
-M&X``$E+$Z;HIAX)8`3Q+E:M0^F1G!5+I]68]2U*+@6C"SIK:W;W`C2XY/NGJ
-MP&EP)4'D2-0W[H;ASVLT[GY6+56>F4O,?J$[K9HP*<3LJ'1O10]6>5/5KR=`
-MY7/&;J3M!U-IKO#&G"Q.K4-!CLNGMK>*9>[<[++ZQ;R#CZJUUTQNG5?+JPZ5
-MT=A5+V@`Q]5R[V^74Y"U>E7&(E=)S&.JZBW,B)'RIW?EG*S[-X+9F58K50QD
-M24TW*@OJ@;L<GCNFL&U''4Z8G9-1H&N\.=QW6A3IM:W"QW5UI.RHV!*G:X$S
-MC"IFG)D'V1`/:%6EL&3@I`D_TJNVH08E2,K-,@N@*:5*,"80U!(E(/9,RC.6
-MX<IH9?4:(>PXRN5ZA3\FXD8GW7:5@'",K`Z[:C27#CE2\%Y4^FW):()6S:5@
-M1)*Y6D]S'D=BM;I]>0`=EISZ=-;U1Y6\PK5JZ3LLFRJ2)F%HT*D[%--RKP=*
-M&L\!D3/U0-*&X+@WY45-8"3NM.U8/^ZSNEL<6:EJVH)B2/A9;6:;0.,A%(.$
-M&2-PD>$43^TRJMZ`*9(W5C;)A5;QTMP/F54J.Q:1)5MP!'!56RGZ*RXB5%5+
-MFE+I4+':7Z<J[6$@E4JC9=LB):S@:<3A06Y(>0"5)`TX(4-%T5HW,H+1[$2%
-M%IWR84CL9P4SLA`,`@;X]T@V$1_+,(3G?ZJFS?LD`",<).$#!320`-,('#<3
-MRD02(U$)]1_[II_W*!<PJ?41D9/RKA^BI]0R.?H4B4=MFF,(G1)R906CAY6D
-M.E&Z`Y(4Q)C!E-.=]TQP<[)$PJ$X1S^JC<Z793DF$$YRB$3G&2@JP3F/E$XB
-M20<J(DF<JA&FPB("I]0H-T^DB2KK=P)D>RK=1ANG/U1**RHFG0])*"X:\OU!
-M6*+HM1/*$9V"QC$O:G-5IR20=E+2KN&3LI7@")3M:TB0/NNF@S;@!LN3>=JF
-M(2JT6N,!/2HM`01OJ!K3/[JE5.H%Q..ZM7H#1M"P.M]290IEK'"0K)MFW2KX
-MEZ@RA;%K2"3[KF>G!U6H:A$F9RH^KW%:M5-1P,#Y1V5RT,R(E7.SB1B;[JV_
-M>0%`]I.VZD=7IEH@P9V4?FLF0X#W01OU<M]E&]LC;93RUSB%$\>J`0@A=CZJ
-M-X`._P!U-4B%"1G,HBM<!L8,E5>D0+I\DY/=6KD0<D#'94NED,OS/)^ZF72X
-M]M>L,X4)@G(W5BL0!$[Y5=\[?W1",QJ#20.?91U#J=+?DIR^&1_=1%X@D['&
-MZ*E#V`;):V=D#64M(EZ6BE_C4TKP6RJ.=4`)F.ZU^D5/-O9T@Z%SMN[RP3R-
-MY6OX5KZ*+]0`<YR]&GFRFG3T@-4G)]BIM&KLJ=M5)`/!PKE/5/=JPW+#OHX]
-M,`^R!M6HUVEPPIJ4M.43J9>W.Y4_XI$BJP1/NL[J@T-/I$*U4:^D^!.RI]4J
-M"H!3$R=PE4]L!_#"#S*CR:F&F%.&^4P-X]E6I:C7<9(XD8E/J?%QH#J<1,*G
-M<MBK$1*NT7'`.GZ*.[I"-8`^B56>WT%X!C'!16-=S>25#<G0YSCL@MW%M/;=
-M6,V.IZ+<D$23A=/8W&IH/*X7IMQI#9'RNBZ==MU-,_"T.WZ94=`),!;E"H"T
-M&5R72KEKFC,_5=%8U`6`YCY4L)6U;/DY".YA[QA5;1QU29A6:)UU`)GY7+.<
-M-;7A4;2MY<(1=+:*S]9.)5+J1)#6"<J_T2`P-DPL83:XS35T@-C@+.ZG3U`X
-M6HT`MB56Z@P%NTK5CK'(]0H^H]@JMI5\NL!)W6MU.D=1QA9%>F6U)3'AG*.D
-MZ;=`L!R/E60\UZX:#(Y7-VUWHI[Y6_T&IJ9YA,F5K),:VK9C6TX&X4A@;**@
-MZ1DB%)CV'PLNAJ3C)P5-3,NS*!C94C(X&%%%H8[?"B=0G,*8D:1.Z)H&TQ*:
-M7:J*;QWA-JJ,<1RK;?S1PG<QA&=PIH4W5C'K"H]3+'4CW*U*M%GL5G=4HC1$
-MH5S%W2TN+FF`FMZL8E7[RV=Y9F)6/6.A\'ORF-8KHNGW'I&5L658%H]4+D[&
-MKH`DX6[85P<`[JTE;U%TYD(;EY`B5#;O$?W37+QJ:)Y4^--KI##HR=^Q6G3`
-M')5'I&D41C)5X`D<J-Q)_3";.F9"'5"<ND(I.(D2Y5+XB-U8)Y@*C>D:A@JI
-M4]CLK#`W5E5[/##*DU2[!A9X5)5$[*K69ZIX4SW$Y`RA<)YA+5T@J,=C2J-=
-MYI5I<M72"V8(*R>M4\2-PB5<H50]LSA&X[$+(LJ^1.X6BUX>T=U;$E2@F#E-
-MQD)-&.4Q'ND4YC>4+R3]$VXG8)I;R@/)$(9XA,#`W3:H!$H@I/('LJO4/R8,
-M'MW5C5[_`'5;J1:&AP.?96)36GY.WPI`9)4-HX&EN4^J#`<2D*)YEVZ1SNY,
-M82;AI&Z!W;;H,3_FDXD&>4+B1F50G$`PA<(.^2FY]3D-0R\"9A$.YPVC/RJ-
-M\[4\-/W5RI@;Y6?=NU5P-XY3XB]3;_(!S]TB0#A$`?X<0<J!KH!!68E[/5?&
-MQ4;J^@`RFKNG?A5:ID:9D+H-%M]0T22)5.[ZU;T\%P^BR[NB]WY7D*A<=-UY
-M=4/W3<GQ-6_4W6>O"H=%&2?99++>K<O-2N70KK+"E2=,!Q]U,6^F-*>UR_Q-
-M2,'J]*FQS6!H3LLZ;J8AH4_5VS6;D8*F9I%,-VE+VDZ9=Q9-.Q`52M9N:8:Y
-MRVJNDC;E0N;JR)51CNIUV<DJ!U2LTD03[K:J#!("KOIM<"8V09;[N!F1"8W3
-M8,'"MW%!E1TD"57?9-),&$Z0-6HQP`+N.ZS*3VLZFP^_=6[FSJ`#2Y8M_3K4
-MKYICG<)>J8]NJK$%N^%"20W.RH-K5O*!T\*$WE0$M+<!2:*O/=+M(43H&)@#
-MW55E^#,H:]XS8X[JBTTG3N$\GN/NJU.O3+`0=T_G4^ZC3YZ-8L!#P<X"W>AN
-M:VBWM/)7-5W/\QI+0X.,#NMZPK^50:<^K@B/U7HG+AG/PZ?I]1KR`=S^BU6'
-M`$GZ+!Z56@@XSB5LVQ+@-UFLXK31G)4OJT@`?51")D'Z*3U&F`0LNAVL:\$N
-M"RKFBX7\TY<UJUFN#:3B<X5>PHE]$U';.*E(I/K-=Z9D]U&_\Y!,8[J2[H$5
-M"]@)X@*J'Q(,[[#9)R7<7;9N"=D;Y<PP@M]1$X@<*RP?R)0C#OV`%X))4-`@
-MTSDB%H=0IP"3&!A9MJ^:1)`P4B5<MWF=1,1PM6TN-+!!E8]"HUP,">P*FM*L
-M-`)6H1W71+@%C3JRNGZ;7D`2=UP'1K@!@`<NKZ;<-('JQW*U4=C0K&-P(5_I
-M7J.KLN>HUVB@!,:N5T/1V_\`I@[NN&<^&]KE=@(/[(NG.#'@2F+01NHZ/HJ@
-MY2<.K?H'4T$.2O6C3)W473ZC74\%3U1(D\)6XPNJ4SJE8E^P]ETO4J3BQ8=[
-M1,%PS"R5B7#GC=Q71^':Y\@#5^JYWJ3"!($?*T.AU7LIB7+<Y8Z=E;U3H`@*
-MQ3?Q*R+*L74A!_57Z#I$R5+&Y5T.,D`HV.D>RAIOYVA22`#.RC21CI.1A&3]
-ME#(#2`G:??;A%2B)WD]T61B?LHVD;''PI0#&%E35`",F0LZ_C6&@Y6C4.EA)
-M,?"S6M-6ZB9'=+T`KT/Y.DB5S/6;?2^=.W9=A480-IGE8O6:1F8GW4TE<W0J
-M:7Z286[TNJ"X96'>TRRIQ)W*L=)N0QX!=.5J<L7AV=J[4P#9$2'7+6JIT^XI
-MEDEPD[*>B[5=MC:4:CJNG@>0(_16@Z/8?*K63HH`@B5.YT`3"SIT@Y!'"37"
-M(.Z`NGLG<X"(0.3E9U[.H9(SPKU4R"!B%FW%2:H$B42KML?Y??W4X@"5!0D,
-M$%3[A2-!)$@`;)';;=(X$PD".<JAGF/3$K-ZN06F>RTA#L0L[K#0)D<=TB5E
-MT029&ZLV]32?4HNG`Y!;';*>NW2[5)3%*T:;Q(`.Z-L]BL^UK1)<-E=H5`6^
-MGE4V+3B?T0.W_P`U(_NHW$``P44B0-DP,`2GYG2?E"3/QV*B"+LQCZ*MU*#3
-M[J5[VXB(4%[4!I20K"HK7\ASGV1"=?S[J*T=Z20$;3)F$A4T3W*8$SC]4['"
-M"!PFD?EC!50GNRHW'NB>8X4;CE`_]/NHR9=(Y12W3N<(,.$Q]4`UC)A4:\&X
-M:-2NDR8./94;@`W(R$O2?6I3]5'_`#59PTO+295B@[TCD?917C3(.RG255KG
-M.ZK//T4UP02JM4B,GZ+:!JNE0U?R[?52$MX*BJ?EW05G_G3.YX1N#2<2FTG3
-MC[(C$ZP'><V))]U.S\C0[]$'6F36:[B<J4-'EB"E[2=(JS0.,%0_E=$?JK-1
-MH.)^JKU&@'4(A5$-4G6.Q05(R/V4E9DG&%$6DSW')05:V'C,IO3!AN2BKM^Q
-M0-CR\?4HB"N1.DC[+'ZV--9KNQ6PYLS[;+*ZX/3.K961%NW>U]%IC"CN:3)P
-M(!3=+<'6HD9/NBJ%PQJ6<>BH/(I%OY<_94[NU8X%TP>5>&3O!5>Z$-R95TLJ
-MJRU>&@-=A/\`PU3NK--P#``#]T^O_I6--OFRL\%U,F"),9D+2MJWE46%L25D
-M6]1QN00=4;85ZFXEY$@C<$8XRO5'/*.IZ74U071@\%=%T^JT;F5R/2JCF@`.
-M#F]PNAZ;6AVDY@;I7GG%;K2"V8B=BI'.@1S\JO0<2R(V"L`$MC$!8KK*K=2>
-M!1#`8<]7+-I9;@"1`*HN:;B_V]-,85^K+*9C'UW655(EQU?94.I4"'!S)$[K
-M3:T:9,2H7L\QV<II5.QKC4&ND'NKQ+0V=7YN52J4OYA#9!.93N<^G3:UYD=E
-M>V9P+J30ZF0YQ(CE8K612).-6(6W6+:EE+I$X*K.MVFF(:#"EFE[9MNXZH8V
-M#/)4VKR\.,_W356.%:`2)454D3[;95EVS9IL=)NF@`.)$''NNIZ1=%S!GE<!
-M85'-J`N,2<KI>F78:WTSGB5M([SIU<5+RE3F<_"[OIL-MPWO[KS+P54-QU$'
-MM&?NO2*#]+!G"XY<Y).UZFZ'$<_*&I$DSLH&U1JW4Q=J:3W2QVE6^E5G!Y#X
-M@+8IN!:N>MW0_!P%J6U:&Y,(W!7K)D1A9%]2(:0MUYUTYD!9G4&3(V^%FM.8
-MZC3_`)>)^JALJA#8$"%I=3H^@[8652@2!NK&*W^F7&T\\%;%G5U-B8"Y2WJN
-MIQN?<K8Z9<2(U#/NJDX;['[05,P@O$N,K/IOQCE6J+YRI8Z1;VA.P'^K*C![
-MYA3!T#&5+%@Y(_+*-I.2H@1DDR4GU-(.>%-+LUV^!'*"S9$N)RH*8\^MC(5Y
-MF`!P%+VLZ"Z<D<+/OJ)()B3[K1=(!Q\*L]FMI/"5'*]6H@2<>ZRV-#:@>.%T
-MW6;?4TB..%SMRPM?&PY4C-;_`$DEU$96G8!PO!/"Y[H%<L<&D@Y6[0K`74RM
-M:25V5J0&C/ZJ9SAI$K)MKN&`<*2I>0T;J.D:0?'^92U0-RL]MWJ$DS\)VW8`
-M[&47:]4?Z2>2%EUG?SQ.<J5]T`WU$?(6;4NVFY'J/Q*7I/K?H.EC<1W"E8X$
-M0-EG6UTT4]U-_%-VF%--;6R1`$?=)A$;[<*I_$9P04[:XTZIB.%=&UI[L@RJ
-M'5WRTP),*=UPSO)^50ZC4#FELB$D2U7LWB8Y*FJ-!!)&5#T\DY@*9S3D!T<J
-M155P(,S,%6[.K``,8455ON3[J%C]#@"K$:I,B1N@.(YRHJ521DJ02=R%*'J.
-MQ(,A1N,B>41`!.<>Z!T"2,2@!Y'!*@O'>C'&V5,\S_HH+LS2.\K42H+)X(R=
-MU8:9)AQSQPJ=G!,?NK3(F`T!2%2?TX3SP<2HW.(P-D[7%Q"H*3![*.I,P70B
-M).GM"#5ZT"QHW2,`1.R=WY=Q@(()!,R50!B2`250N#INACGNK9_,8(RJ-VXF
-MZ"EZ3ZTZ>6M]MD;B'TR"H6$!@/9%4=Z-RFMI5*X&DQ./=5JK3J@*W7`)SQNJ
-MS\XP4B17((.(0UL#<%2EHE1U&@B()(5$%)L@DC)3$>HC92AIG/V2+1N$1B];
-M!!F$5*'4`8"DZXTFB2,$#=5.F/#K>!CV5O;,$]PU>W)4=1@=&DX2=.J"(^$X
-M<-,;=E16KC)!W"AJ/AT$*6X/K.256J&0<Y50-8`D\*%H(YW4DRW<X4=9TNW@
-MC]5!#7(GB2L_K-+5;DM(VW5]SM39=NJUZ"ZV(/8K4[9O2ET5Y-H<G!4U:3_F
-MJG0W0]["=NY5JMB=2QCQPN78=+-BH+@SS@IV$Z\R@NL'2)GNK2!&D!/+5$TC
-M2,IY'=&]OF*PN'&H(VQ!E:UM5)=!B3@`KF[)W\SU8C8+8HU&G3!D`X*ZXW:9
-MQO\`37D/'OL/==)TZJ&!LC)W7*].<'56`20WE=!2>W0'$B=ENO-DZFTJ-=3W
-M`]E9?5TT"XC99O3Z@-,,]E)6>^K=T[<'$R5BS2XU>Z73_D:_5+E9KSH`.=\I
-M42&-T[`;IJH:XQE9TZ2A8!`!(PHJI]4@XYA2M`CDJ!Q]L<IH05/34QWR"BO@
-MVI0@-SNG?3#G2/U4=8PTMDQ""@ZMH:V@Z9)RKH>S6T2J-)@KWT$0&^ZFNFFE
-M6D"8@)WVR*]IM\T;*G=LTLD.$*[2+'TSJ'JW454!U,YSP5-::WMF$`D:'1W*
-MT^GW/I`:<=E1=1)!(`QRH:%7RFNP1GG8K4K%>G_A:\N]7_5]MUZ'YS=($PO+
-M?PGN`ZDYWO/[KNZEP=8.K[K&N7/&\MNA5EX$A7J#@6[_`%7/V-?.#]5KV521
-M\K5CO*N#TO!!*TK3348%F_F9A6.G57!\3CW6-?&]KSWN83,PH*SFU,X'=7G-
-M#V9"I7=+2/3LLUME=69%-T9`"Q6LF1L#WX6QU1Y%-P&)"SZ--II&3]D1")D@
-M&85JPK>7'=0-I%K^W*3AI=^:0KM'16MQJ8,G=7Z%3T8."N8L:Y;`U+9MJXC!
-MW5TLK8I/)&\_*F:Z,`X6?0J3_4K-*H8_-NHU*M:]B0J]W6]6D<IZM6&2J=`^
-M;6F<=E+=*T;*GIIB-^RL,&J)_=04G`"(RIFGTRI(HG-Q"C+8$QNCU"-TU0X`
-M[;(*%]2;I(.,+G.I6VDN&.ZZ>Y!..5D=3I&/RY42L2U(I58SA;W07BO<YSE8
-M56F6O[+:\&MFM(Y.ZK.G94:#-&R8T6]P5)1EH&?HD3G*CH`4&`P$G6LGF=U*
-M#&V2B=4,Q":%6M;PTP1`6;Y`_BP,F5LW+H9DY6?2<UUP$LX/JTRW@0W"-EL0
-M/4284K'8V1M,M@<*:Y57-)W'*847F<JV8W'=.".0J,^I1J#+3$*CU`O:"'2M
-MUQ]N%D]9@`DI$JK852&",JU_$M<<E5;-@T?*G--KR3D$I-B5M1N<X05=.X,R
-MHGL<T8G"!^L8""S2?I<`7`JVUP,$+*%2,D*S:UQB"G8OG2=RHJF"8,@H@X$"
-M#&-BHGX.#A`G$D08^JK7?Y#LIPX1NH:PP03NJ52LGCS")&.95L$`$%4*9T79
-M$B.ZMN</E(B0$3(.W=$"<F84(<)PI`09<1A4$T]T!,&?V1C#2-X4-4[CA0$7
-M%PPEO.$&J(A.W:`51'5Q*S;@D7329Q[+0J&'8_19UX?YX,0EZ1I4ZD,!A#<5
-M`QFZ&D\>4!^JBNAKIQRD2HVU=>=_JF/'<(;1GELR[/[J0C,I.C2*K@J,>H'(
-M"DJ\XCV40D"`(E4"X0XC.?JFJMC:8'=%$$H71O\`NB,_J@_E.!Y"Q^FU-+W-
-M@A;G4&!U,SD$+G+8Z.H$#<[JWIF=K]1LF<D]]U&\;QA3U`-*KN=N-R@@K@@C
-M]E5?CZJW7,;'(5-T$Y)PJ@7G8C`*"KR!(CNCJNTM`DPH7DO$DR0H(*IGC/=`
-M^#3/J@_*58;EI48.X=&1N%48E(MI=6+7.Y&/HM&JX3!V*S>I?R^JM>"`!RKE
-M9XJ-#@GVK>9"<8.3,(:KMYW"![W:#&Z!SG%GJ;!0@J8]`X3Q[H&5'!H&H?9/
-MYKO\0^RSPV^3`XT[@M(TP>2M*RJ!SA)&>52\04G6_57B``?=*TJG!C=:\>6X
-MZ>3%U73GAQ$'!,;K>L7:G""<87*=%KM:R9]<X706=RXU?-<07'?W7H[>/.<N
-MJZ97#1)XY6ET?34J/N"!DP(7,6%V_4*;1+G&,+JK!OE6[&`#(6,HQCVOM,D.
-MF$1F8*C;M,_1$VH($@D^RRZGJ8;@084+6@B2#[*2HYNF-C[J-KB[`B`H'8T!
-MWPHZU/T&<%2T"T3(_1-7V)SLFC;$M2?^(OC$=E=<[U$.$CNH+>F75GU=,294
-MCVN!![I.D#4ID-<YFT*NRH1NZ1[X6@W%#D^RJW5`-9J`(^BBJ]5H<):)![*I
-M>TM%)SHB1"TK<@M@`PFZC3#K5Y9G'"6Z339_"2MIH.&6GG]5VG\9J>?5/NN`
-M_#:6TCP5T3KDMNBV2IC=UQDYKJ>G7/JP2NCZ?5!I#,%<%TR['FAL[KK.DW&H
-M`+I8Z8UTMLZ`#RI@[34!&%1M:LQE7(!9@K%=8V;)X?2&4=5@.ZS>FU8=!,1P
-M5HNJ!M,PX+-;E87B"C+]`&5GFDZDP!TB.RV:X%>[WD!1WULTL,#(V)6-ZJZ8
-MU,MU[D^Y0W+9.,#N%+6I.IU%'4>-B<JHKTWEKA'ZK1LZX']1*RW`%^(^5/1>
-M0))B.RJ.AMJH+!ZE>H50(Y7.V=?.ZTZ%Q#-6T(LJ]>5Q.D&"5/T]NFG/<K)M
-MZHK7.^!RM>DX!D8@<RLWMJ+32`8V4S2(!!WX55CP#ONIJ3\YR/=54[7@C)RF
-MJ$`'8!#,F>>R3AJ.5`#H<W&96??4YY6D_`@!4[EH<TD[I1@WM(!T*[X/?IKG
-MY0W;!!D!'X7HD5R1W4G:.N95$9V(3FJ"0(5=H=M*(`$JM18UB,%(U"23(5=L
-MZ=TVH\<()+I\M(F`%0MW.-S@QE2W+SIG95+*3=:IE+T3MNL=#1'*?S.)5=A@
-M!$)F2@L:\&$XJ'`4'P$XE*HR\3@DA9G6'2KQ$YF%F=7B8!1*:P<?+A3:HB8P
-MJMD3HC]U*7>HSL/=2+5B01\I.`)[J)K]N$X=ZXVE4#4I`@Z5&T%IV*L.<2-T
-M'YO=30=M=^,?*=U8Z<@X2`;&=RC+&'$A!`;G,1]E&^X&))RI32;MA15*(&QE
-M7E%&YJQ<"(A6VO#VZEG=29IJ!P,0C8][:8$E/J-!CNY4S"2/[=UF,N8)#E:H
-MUPX`2J+<^D]U#5._!"<5!W4=4C:440=.Z?4)WV46J!$I!W(1!/P(&RS+V/-!
-M.RT:A=!!/T6=U&=8DCX3XE7J('E`C8>Z"H01&?NAMG?R(0ETG*3I:>(9)2ID
-M%N9"$N@1O\IFD:>RJ(ZL%Q`.$+\#L$3_`,RB>X]P40HR$U68PG),25$Z9,_<
-M((+PM\LCV7,51IZD-]UTET'%IPN:ZK++L.`"U>F?K5>6Z!C?NJ=4EM0S'PIJ
-M;II!P,JM>._F$@_5(@*I,F1NJQ$O#I/NCJ.)`,('.,1C*(:H6G$?JJ\Z26G8
-MJ6KC(,_"KU<9B?JFBH*NVD?=0L=O.$=PXD_YJN7DNW,!5&5UP@W#3SW5FG/E
-M`\_NJ?6S-P#LK5)W\EI:F7]B='.7GE)SF^7`@>RCJ.=(+HREK+A)<-ONI5A`
-MXPV0GD_X/T4)J'M/NF\P_P"%&]/G7\3K1U#J!JMD-/8KG+*J69:8E>A_B=:"
-MI0D4B33;F=I7FK*FG^61)#MYX7+"ZNG:?RQE;G3*HD#_`&%T?3JQ+6F3(W7)
-M=+K%WHG![E;_`$JX`IZ&G;D+UX7<T\_DCH>CU75>J-$X;P%VG3G.=I+CMC=<
-M'X8=_P"L<^",KL^F58TD#;NK7GO%;1(:R2!E%2;B8^O"AI.+QJ+I4K"XG$Y7
-M-T!4R3RFEL<[(JC2#O\`W4%0%KMP<HM6;4&#,`>R#J)T6QAVZ>D\Z(U3*@O'
-M:[BFP3[I4/2`;;-$"2)4-;43'?@*^YLB(&.RK5&Q6$;J=*B$M#02E=-'EF#&
-M%-4_F;B"%7N\-W)0X-94&NIG.4UV"V@\$3(X*DZ406D@G>([*W<40^V?,S&R
-MF71`^!7<D`;A7.O56T[X`'/RH/"-'RG2YI'9+Q93+*WF2N6-U8Y2?RJSTZZA
-M[7$C_-=?T"]&D9_5>:V]R0X=@NC\/7\.:"9GZ+TSE7IW3J^K25L4'@LCNN3Z
-M%<A])OJ"Z"SJC2#*QDWC6BTEKA&5.ZX.C1R52:^6$S$)K5X?=^HX!6-ND:ME
-M3:*>HSGNGN&G5Q$*6E&@:3'U2J@&9(E8UIT95U1#G$EJS+RA!."MVJP'_54+
-MQD-/)[*#`?-.MA&UVK\RN5K=KP21!Y5&LQS3`.`DK.DU-^G'NK#[K13^5G:_
-M?9-=51Y>J<^RW*E;O0JFHR5N,J;`F?A<GT"Y&@`GZRMVSKAS?[J:7;6ID!H,
-M$*Q3+0!*SJ3Q$R?E6:-2>?HHUM<8[U8^%)J(,JNUX.?V4DPV>Z*)[OJH*Y!,
-M']$;G=B@<&D&5!GWP]!PI?"P)J?7DJ'J`ACC)]D?AA^DR2D1T8P,Y'=$"-U&
-MRH"S@2A+@2(<C25[@,0@),GU0A<<ZB90%T$R=_=`-T_^61./=5.GNFYW$*2]
-M=_+F?N55Z:[^>2,Y5J3MNM.-T8=`_P!55UX&8]DFOG))459+S.\A)K^2?HH"
-M9P$.HPBK?F-R!CNLKJCLF"85DU#!S/LLSJ50_E,2JB2V>`TD291.?F05!;._
-MD[_5$TB?41)YV4@LM>0-YY1!\G=5R[:<)P[.=D$X?G=&Q\#C*KL>"-]D[70X
-M9^J;%EQ.-DB\]U"7\&8*<.X!_54$YY&9E`7DNVW35'@;G*&0[Z>ZNT5.HG.4
-MJ8'D[8_9-U+4!N82M_\`D`[J7L+RVDX*3:3ID(FN]4(VNAW"I`/UM[X4=2X<
-MP9G/Z*V#+5%5I-.[=]U!"VY$_P":E;<-)`U0H*M$<*$TG;#A!H>:TM]+I5/J
-M)`$G"B:VJUQSA0=2-9M/97:5I6;@:`)=$(7D`K/Z;<5?X>'`X[(GW1+O4DUH
-MJ\'`P#PA<3&VRJLNFZO[(S781C'=42U'2V3NHAOLA\YFG\WU0"H)W.564Q/I
-MRHJFQC"=U1L;J-[@6SJPFC:O=.,?(6!UO)+APMN]<TM*Q^K4]5J\YF%J,4/3
-MWZK82?LFN8`R0JW17_RBPG93W#?5CA9QZ6J[I`)[*%SR02IZ^&D[#LJCC)C[
-MK2#+@84%PYLD#[J7&DE4[N0=0VY0VCJ/F<3\JJ]Y#_S`2I7N)$@J"L?0851G
-M==)!#I,*2S?JM!_4>ZK=7ES/92=/(;:-!S\E3+N+.DI+6M)(CA"8%,$'"5:"
-MTXSPAI@^5I!!]U%@FM!;)A/H'M]T+#Z1A%/LHV\H\54&UZ%9KID-/RO)NK4'
-M4.I50T`M!R9VRO;.I4P]CG')CO@+R?Q[9NI]0>Z<3,1[KGGQE*O@O<9EKEH+
-M0=.X^%K=-K@4M((_NL*SJ/IO:`>^3PM2E6UR74Q(WC"[X7ZN4VZGPW6+*+<Y
-M)[KLNF5I#(F8_J*\]Z3<:'TFC`,;KL^A5?,8S(GWX7;6X\?DFJZJU?-,"02K
-M=-SM,`"/=9=C5@ADM='97J+IP=6T^RYV+C4U0GYA5ZF7C?\`S1N>[41OV3&2
-M3P2HT3JFEA."!N`HNG@5*KJAG?"#J-0TK8GDX1],+V6K=49[IVB_JVF=E%4$
-MG494EN\$?/":K),D;84L:B*W'J)WE07;7:S&/W5JF"!,;SRJU1NMSL\[H([3
-M4PYG)VA7GUO_`$;@,8YG"JZ((+)!XRGZA4<VQ?\`:5/B-3PPWT!\R2=T_C$.
-MQ!/J$84_A%O_`/3Z;].$WB!HJ5MH"XR<L8=N-+G,K$;*]TF]\NJV<0=Y4O5+
-M3^67,&0=UDO+J+@3E=\,ERCU#POU!II,SE=ATZNU[&Y7D/A;J1#V`E>A]!O=
-M=-I!6\HDKJC6#:;CJW]U'9U7&[!`QW6>^Y\RJVDV<K6LJ>B@)B>5RRNN(ZX_
-MEMVM<&G'>%8W&3/NLBUJZ7`$C_):-!VHCU+-CI*-S1I,`RJ=VQI?[_"O'/[*
-M"HT203)E8L:9=>FT$B"J=>CC;'*U+ML$@`RJU>GB2D1D7%N#)!R?T5&^8YM*
-M"86U780TJA?M#J#I'"L2JG3*^FGI!S^ZV>G78TCDA8%M3(!(5BA6-+>!E:E9
-MKK+6X!;DQ[*];U/2,Q*YCI]WL)_5:MI<:B#@_5+&I6W3J>H0<?*G;4`],E9M
-MM5'W4X?MWA9K6UPNU")W2<!I&?HH`_;(E23C915+JIBBXCA%X<8#!2ZEFFX1
-MB,INA/%,B-I4G:5MP(&3[HVPJXJ-/RB#C,3*TJ8]^/E!4,'>2A)!Q@%#4)V.
-M%-"O>F1OLJ_3?^;GNBOG>@J'I9]9DR9PK?B1L:A&_P`)M>(*B:XS&(A,>ZBI
-MVU1.Z(O:3,CO"JD'![^Z3@[28)E-B<OW,8Y63U:L-?I/*MR[;?V65U)SM>!R
-MK\%RS>?+!"F+O>51M"?*!,A2TZDNW*S%6'.)_IPEN,&"HW.!.1A#J'?'""P-
-M38!VB<J2F1_LJOYFWV3M.,F/JD-K#G.(QPD''<E1%_I@<)PZ!))5B)9D&4PD
-M'>9]U%YF-T@Z>51%U%WH*&S(\D9^B;J+OY1SCY4=B[^5OE*BP9!D)&0Z5&YW
-M\R9^B?428)Y06&ET`IY)89CWRHV.QI"9S^$#5=\)##8[H7G.#$IJ;G28*"5D
-M$[1]5%?-#J9D3[2B:XYXY0ULTR"58*E@QLN`:BK46.>3&>RCM'1=.!.)4]0R
-M3"D*K/H>J02F=0<6G=3EQ`"?4-)Y*ND4'4G`8)4(-459E7RX:C.Q*!S0'3CZ
-MHBD]]4&0#!*%U:H&Q!5\M#C^7Y05J8#<-'U5FRZ8M]<U!@@A4KJX+Z#A)V6Q
-M=TV$F0,]@J-S;,-)PTC/NM[K%8'3KK1=/;)WV)5\W;2(.ZSS;:>J1."5:K63
-MB-33"F]6GP5Q7'ED[PJ8JM+Y!W2K6]700"9A9U5M:F2-/RJC4+\&#]%!<P6D
-M@*@VXK,;$%*I?#\IY5@-[@UWJ^%#7<TCG&RB=<MU;IA<,=Z79^$T*76@TT-1
-M'R5'TFI_Z8MG"GZH6NMW1)"K=$$-<X1"F7PGU:.XSNG)]#C(PGU-=(+=D#IX
-M&#PI5AFL)$A/Y9]TFS&/W3Y_V5G<=7!7+8HF1@B=]EY_^(MJUU.H]HR.>Y7H
-M5=S2")XW7,^*K8U*%0;R)SPKY)N.'COKE'E#7Z*A:!B<%:%FX/8T["9A4^JT
-MO(O:E,-(@]]U-TYWY6C`:5,+N/7G&S1=H\J3G<05U7ARZ#FX<&D#OGA<E0@,
-M9]EK]*<:=1LM(;NO3A?CS>3'<>@]-JM--H[[S\+3M*Y+1,&-ES72;IKVL`)'
-MN5MT*LZ<[*6:>>72^QS#4DD[X4FN2!G[JJTOB8GLI2X8<=Q@SA8TZ2JW5'M?
-M=MI-<7'!(4U`C0&;`=E7HM-;J#JN(;C]58JC0>T_HH)Z=8!P`/U[JVW2ZGD;
-M+,HN+KAH)P5ITX-(-[CE6K#`'1@G_)02!4(GE6)`:0)PJE4^H_=1=I6YR3[R
-MHNJ`&R?C=34W32$MVPJ?6ZFBV&PEP^J6);PZ3PSZ.D4LQ#0._P!$_6&R0^9`
-MX1=!+?\`@E$[2T)^I#52U8@'"XSMQPO+.K-8^CI`XA<_URSECM.^\+HJ;'`C
-MW5>_HM-%T@+=_+O'+=(N'6U=K3JP<P5WWAOJ8\IIU;#NO/\`K5%UO<:Q@:E<
-MZ/U(TF-!='$CNNV%]HYY<5['X;J.KU14)!$KIJ-3,`_JN#\"WH-FPATF%UMK
-M5!`,Y.5BQO&_&I)#ICZA7;&K.'$`K+IO);$J:D_R^=NRPZ;;FK`G>$P@YG*J
-M6U<.&2(4X>"!$9]UG3<H*S=\!5JS);&`5<J9!RH7,$&=PLJSJ[0`=4+-ZCB@
-M[$>ZV;FFPZ@=BLKJ[!Y+@WZ*Q*SK.F8U`XF)1U*32XQ"EZ?2/D`]T=>G#HXX
-M1&<7NI'\V!Q"N6=X6ELF9S!45:D2Z`,E5JE/2[&",K4J5U%E=A])L'?]%HV]
-M66@3NN+M+MU&J`[8+>Z;?->&RX!+$E=`Q_$J859:/?A9M*J'`:73/96:3IS.
-MRPZ'OS-%P!E'TADT_A17#AY)4W29%(P0I!?;@'V1-=GE1S]$3=.)("JI(,S^
-MZ%QW#M]DY+8WW4;S`B1\H*G47``CE1],`UDCOPBZ@X!AR%%TQ_/<\*4:E-V)
-MTHO4<[*)CL"%(TXGNFC9.<`(Q/=$'PTB5&Z9G&$%28[JB34P-=.>ZR>JN:*G
-M;*OU'::1XX63U1\U0`('LH59MG#R0)&`DYWJWP5#1GRP,YY3N,.P3ME)2IQ4
-M'!^B37^M0%VT)B\@S@#A!:+AW3L><*&0<1N$F'2X23'RE%L.YF>Z;4`2?[JN
-M7^DQ*(/P)@H)=?`!^4=-X+<[RH`Y)K@,JANHP*9SB%'8QY>#LFZ@_P#DD$'Y
-M4=@[^6=]E:D67:B<NWPDTG5_=1ZCPGU'G=!8:Z`F+LG"A:21O"1=F.$$CC.[
-MH3<^ZCJ.Q]$U-V!`03TW2<(JQ;H,Y(P%`UWJE&[;O[*Q%`NB]B8DJVXR/251
-MNSINFD#G[JW3/\H.D!3Z?#N,L@1"83VR$!C48*1/JW6@-3#MDP,;Y0UIR2F9
-M')W[HB1Q`9@E0UZA((RC<<?N57>9G,951#6$_P!U4<!K<2..%:J`Y!.%#5RZ
-M08[JHP.JM\J^%08RKU-VN@UT3(W4/B.G_*\S<A-85&NLFP<A6][2='N)`('*
-MS;EDF3WV6E7/HQ]U0NYTG)A5*J&DPDM(F2H:UI3,X&5*\Z3@F9Y3N(?3+MHP
-MIH95U8AQ);QV51]K5:202#)@K8>88=,QRJ]1WJQVV5T;8M\VNRA4D$X5'I=W
-M4;4<#N"8"Z&[:W09SC*Q:%)C>H/$R'$J7>EG:9MV7&2WY4E&Z:1$[)A;L\QQ
-M@9PDVT&J1O\`NFUFEFFYI9.I%+?\85=ML^-T_P##/[K&W3U>?U'.IO`/T69>
-MO\T/#I@<+7T4WTGM>\-<!(QNLKJ5!\%P@#OV73_*\TT\X\;T!2Z@^IOJS[[K
-M*LVP!B#J6_XX:Y];.=(R>%S=*J]M00/RY/NN&/%T]TN\8WK<^EI<TNB%K6+V
-MN+3!(`[K"LJKG-`.0=BM;I]0Z@20(A>G&N&3I>FO+;A@:YP&"(."NBMKJ:@;
-M+=+<8*YKHU:=,P=(6E;^:UX>X`P9PMWAYLG46Q,B<M.1[)7]8,ID1I.V%1L;
-M@AK9,\917-8UKAK6F8=)@%8L)?BYTR6TA+8<[)5@@NR<SQV5:A5DP9AN%8ID
-MEATX6=-2HJ;=-WJ/!6C1,CZ+.>?YD.:<G>5=M7%D#@H;'6UBF2=O90522PQO
-M&P5BK4EL$*O6)R-(AR+L]&12C:5E^(7PRF`[=X!$;Y6C.BC)9!]C,K)O#YE7
-M46R`X1/=3+IFV.SZ"7'H]$$02!CA7*P+J7T5;H'_`.44]P(5UP::6VZY3MSP
-MJC5;#Q,#B945>D#D;=E<(!(&)35F12F1]%T=]N8Z[9BI,M&W*Y:Z;4MK@B3H
-M:X;KT"ZH!U-Q+<KENOV;2UX#2!*DOK5LE=/X#ZF&T:;=63&)7HG2[EKZ33(S
-M[KPSP[U#^'NPR'-CNO4_"M^*MNPZAMRNV4W'*<73MK>J(`!D[X4XJ$C$A9-K
-M7Q\8PKC*DLP9D+C765?H7!:[2=CRK]O5&D#NL4/`$SE6K.YAP`4:VU]6(E-N
-M#PH*+PX27$`YW4@>"["S6Y456F223A9G5VC0["U:SN%E]0<'5`SDE016E/3;
-M"!&.Z&H-1DC?=6PS32;.T0HG!H<?\TA5"HT:H`V]U7K,W)P>RT*K?48C?ZJ*
-MM3EL@_,J[33*?3.K41"*G6=3J`M5FK3(SLJSQ`WRK*EC9Z;?D:6..8W6S;7;
-M2!#IGW7&4ZFDB)'LK]M=EH&8@)4G#I;JN#2)D#ZJWTJN/(&09]UR]3J`>UK-
-M6^`MSI&;=N8E2\++MK^=VVV1LK>KC*H.<X")QV0FJ01+I4;:1JC$;]D+JA._
-M[J@;@-<&NJ-DG`E$:GJW'S*`>IU/1NAZ62*8,[E5NIU"6&"$73'N=2:`=^4J
-M1K4ZO!/ZHV5H'YC$JD"<P90&JX$RD%\5B[,H75M+M_NJ3*CBZ)PE5<X@Y&%5
-M7*E8%D;K'ZC7!J1/*F=4=P5FWM7^<)G!V4O2?6I0J#R1C]4G%N_'*K47#R@0
-M>)"/6",G=1I*7[ANZ1=&5`7PW!A(O^I518;5)[(M6TE56N``(")M01ML@N!P
-M@0=TXRV9"K!\B$8?!03AS28!D]D;2.3]%5UQSGV1!Y@[_P":H74'?RS$=H45
-MBXMIP"`=U'?/EARFLG2W$B$OPBTY\&-^4P=F4$CG?N@U0X[0B++7$'Y2>[B5
-M`U_<)R\[$G"HDJ.(;,IZ;QIB,PH''N8RE3)F)*@G#R3'',*<&6B`53U28W^B
-ME;4<&C*HK=5!:=4;*6SJAUL#]"HNI^JD>?[*'IK_`$P3LE2+-5^<?,RF:<@G
-M=!4(U'GV3-B-U055Q+C!PA!`;G=*<!,XB<G*(,/.G;<('@<G=(.`$S,>ZAJN
-M$$QE6%!4_.<X]U7J.;J)DQSE'4)+]XGA152V8G9:95.K--6T<`($8[E972GQ
-MKIG:=I6U<^J@0(_NL"B2SJ+VD[DI>CZOUI`(!PJ542\R(5QS<;Y*IW1C$F=E
-M652NS\QF>5%2=#H.WRK#SCW5:!)SLBCK-;HB9"INC.^^59>3IWSL0H:[=+"1
-M^Z(K5(/YLK)NJIHWIIZ1I>9)T@G[Q*UZPEL3GV67UNBXT!4$XSNEG&EG%3R"
-MT%G92VY)!(WXA4[.MKMF'^IHC=3VKH):5)>%URL!S>93ZF^ZCAO8E*&]BG#;
-MSU].##9PH:E%AR>-YQ*NG<J/AWPFWGLURX7Q'T]MS6N',88:#.%PUQ;BG7<U
-MP.Y^B]-J?^WN_P#\2\_ZO_[I_P`KCEQD]OBN\0].AKH)P1NM6T(UM:`2%E6W
-MYA\K4L_R!=I4LVZ3HWDMI:P7:B(&<#Y6[TP4_+&LDEQX,RL#I7Y`NCZ?_P`T
-M?"Z6O)FN>7%+6#('TE0=*+_.?4<##R0`<PKM/_V[_A5+7_V_W6-\Z9G3086B
-M7%P@[@*]9AKFB(G>5E'\K?A:5CO]%?B]4]=O\V3NK%$0S)GLJ];=6:/Y6_19
-MC6^3U`00.Z3@=6G.VZ=WYDF_\QORFC?*&^;IHR"1'M*RJM)PI"I/YGXE:W5/
-M^0LZO_[+_P#&%G*_$RX==T)I;TFG)G&5=R:>TJGT7_\`+6?`_966;!8P[KEC
-M"PT^Y4PIZJ$]U!5W5NG_`,KZ+HZJ5:B13.096%U2U+R8`RNDK?\`*/RLFZV*
-MS>G2.#ZO;.MK[S`3`,KJO!?5X;387Q[2L+Q9_P"X8@\'?\_ZKKX[PQGC]>Q=
-M&O&U*;3KS&RV:%0:1ZOU7(^'/RM736WY&K.4Y7%?U%WI_9)KG-=$_5#;[!)_
-MY'+G6XT+2O,`NV]U=8_TR#ORL:WV/PM*A_R6I5B6I4'EJA3FK>DQLK5S_P`L
-MJ/IGYS\KG;J-3E.6C1![1"@>V1&_NK+]C\J`_F5-*[VD/.,;[H'@.:0)^B.X
-M_*F=_P`GZ(:5*U,M!Q/RJE5AR5H5/RGZ*H[^KZIM*I5&&<843JKV'NK=;\BI
-MW'YEK:6!97?_`!5/W*[/I%QIM&#&RX1O_O&?*Z[IO_MF_16I.&UYX+2F+F$`
-MJK3_`.2/E)OY?J5C36UN*<C(U)Y^L*&G^9ORB'YOJ4L:5;]I<TY.^REZ;(IY
-M,*.[Y16FP^%/HO!TXGZI1G*C9^<IV[JU(,``R("8D:D)V1'<?"BHZ\"7+%O7
-M`W7"V7_E6#=?^^<K>D^K]*I#!&Z/63_4HJ?_`"_HC;^8_`5THR\8@)]<[2@&
-M[OA*EL4T"-4#&X"0>.^_91'_`)A3MW;\J"PUY`B81!Y.02H'?\M'0V^B"5KB
-M#*E;4QO!]E`/S?1,W<J]ANH/&G=/TXQ3,S]5!>?F^BDZ?^1+\2+#R4QC5,IG
-M[_5#4_YGV5@<.`,GZ(I,@]U$/^8%,>/HJD,YQWDIVNS$H*WY/JDS\P45('>K
-M!PI`YI&V-L*!OYDXW*J&OS%$MD0JG3':JQ$JS=_^V<J?2_\`W04I%UY_F8(3
-M.=&1V2J_G*&K_P`L*@P_T=IY0.B<F)3-_($]7=JJ%,"%%5<'-@2"B?\`D4#O
-MS'X50%0D=_E!4=+4]3\H^4Q_*541.,MX*P.I`T>HM?L"<RM]NRP_$G_-^H5^
-M)]6`Z6`MSB5%<`NSS"*V_P#;,^$U;=2=(IOB8^JJ/<6U<#G=6G_\PJI=_F"T
-MARYK21.ZA<09`4K?Z5'<_D*;57J-QMD=U!<L\R@ZF>5/PAY*#%LIIWCJ)(`)
-I("O4!#X(DJA<_P#YE_\`B6G2_P">U9ZNFXE:#I_,$^EW^,*4;)(T_]EK
-`
-end
-
-
diff --git a/rt/lib/t/data/rt-send-cc b/rt/lib/t/data/rt-send-cc
deleted file mode 100644
index da8c4da..0000000
--- a/rt/lib/t/data/rt-send-cc
+++ /dev/null
@@ -1,5 +0,0 @@
-From: rt@example.com
-subject: testing send-cc headers
-RT-Send-Cc: this-is-a-sample-test1e@example.com, second-this-is-a-sample-test2@example.com, test-sample-sample-sample-test3@example.com,
- afourthtest4@example.com,
- test5@example.com
diff --git a/rt/lib/t/data/russian-subject-no-content-type b/rt/lib/t/data/russian-subject-no-content-type
deleted file mode 100644
index 03d95b8..0000000
--- a/rt/lib/t/data/russian-subject-no-content-type
+++ /dev/null
@@ -1,42 +0,0 @@
-Return-Path: <mitya@fling-wing.example.com>
-X-Real-To: <mitya@second.example.com>
-Received: from [194.87.5.31] (HELO sinbin.example.com)
- by cgp.second.example.com (CommuniGate Pro SMTP 4.0.5/D)
- with ESMTP-TLS id 69661026 for mitya@second.example.com; Wed, 18 Jun 2003 11:14:49 +0400
-Received: (from daemon@localhost)
- by sinbin.example.com (8.12.8/8.11.6) id h5I7EfOj096595
- for mitya@second.example.com; Wed, 18 Jun 2003 11:14:41 +0400 (MSD)
- (envelope-from mitya@fling-wing.example.com)
-Received: from example.com by sinbin.example.com with ESMTP id h5I7Ee8K096580;
- (8.12.9/D) Wed, 18 Jun 2003 11:14:40 +0400 (MSD)
-X-Real-To: <mitya@second.example.com>
-Received: from [194.87.0.31] (HELO mail.example.com)
- by example.com (CommuniGate Pro SMTP 4.1b7/D)
- with ESMTP id 76217696 for mitya@example.com; Wed, 18 Jun 2003 11:14:40 +0400
-Received: by mail.example.com (CommuniGate Pro PIPE 4.1b7/D)
- with PIPE id 63920083; Wed, 18 Jun 2003 11:14:40 +0400
-Received: from [194.87.5.69] (HELO fling-wing.example.com)
- by mail.example.com (CommuniGate Pro SMTP 4.1b7/D)
- with ESMTP-TLS id 63920055 for mitya@example.com; Wed, 18 Jun 2003 11:14:38 +0400
-Received: from fling-wing.example.com (localhost [127.0.0.1])
- by fling-wing.example.com (8.12.9/8.12.6) with ESMTP id h5I7Ec5R000153
- for <mitya@example.com>; Wed, 18 Jun 2003 11:14:38 +0400 (MSD)
- (envelope-from mitya@fling-wing.example.com)
-Received: (from mitya@localhost)
- by fling-wing.example.com (8.12.9/8.12.6/Submit) id h5I7Ec0J000152
- for mitya@example.com; Wed, 18 Jun 2003 11:14:38 +0400 (MSD)
-Date: Wed, 18 Jun 2003 11:14:38 +0400 (MSD)
-From: "Dmitry S. Sivachenko" <mitya@fling-wing.example.com>
-Message-Id: <200306180714.h5I7Ec0J000152@fling-wing.example.com>
-To: mitya@example.com
-Subject: ÔÅÓÔ ÔÅÓÔ
-X-Spam-Checker-Version: SpamAssassin 2.60-cvs-mail.demos (1.193-2003-06-13-exp)
-X-Spam-Level: +
-X-Spam-Status: No, hits=1.0 required=5.0 tests=SUBJ_ILLEGAL_CHARS autolearn=no
- version=2.60-cvs-mail.demos
-X-Spam-Report: * SUBJ_ILLEGAL_CHARS 1.0 (Subject contains too many raw illegal characters)
-
-Content-Length: 6
-
-ôåóô
-
diff --git a/rt/lib/t/data/text-html-in-russian b/rt/lib/t/data/text-html-in-russian
deleted file mode 100644
index b965b1b..0000000
--- a/rt/lib/t/data/text-html-in-russian
+++ /dev/null
@@ -1,87 +0,0 @@
-From rickt@other-example.com Tue Jun 17 20:39:13 2003
-Return-Path: <rickt@other-example.com>
-X-Original-To: info
-Delivered-To: mitya@vh.example.com
-Received: from example.com (mx.example.com [194.87.0.32])
- by vh.example.com (Postfix) with ESMTP id 8D77B16E6BD
- for <info>; Tue, 17 Jun 2003 20:39:05 +0400 (MSD)
-Received: from hotline@example.com
- by example.com (CommuniGate Pro GROUP 4.1b7/D)
- with GROUP id 76033026; Tue, 17 Jun 2003 20:38:00 +0400
-Received: by example.com (CommuniGate Pro PIPE 4.1b7/D)
- with PIPE id 76033052; Tue, 17 Jun 2003 20:38:00 +0400
-Received: from [217.132.49.75] (HELO compuserve.com)
- by example.com (CommuniGate Pro SMTP 4.1b7/D)
- with SMTP id 76032971 for info@example.com; Tue, 17 Jun 2003 20:37:41 +0400
-Date: Wed, 18 Jun 2003 01:41:01 +0000
-From: Ó÷åáíûé Öåíòð <rickt@other-example.com>
-Subject: Ïðèãëàøàåì ðóêîâîäèòåëÿ, íà÷àëüíèêîâ ïîäðàçäåëåíèé íà òðåíèíã YXLWLJ3LPT9UHuLyGTzyuKQc06eIZ96Y6RVTCZFt
-To: Info <info@example.com>
-References: <0ID97EGL951H1907@example.com>
-In-Reply-To: <0ID97EGL951H1907@example.com>
-Message-ID: <HDE46LIK8GGJJ72I@other-example.com>
-MIME-Version: 1.0
-Content-Type: text/html; charset=Windows-1251
-Content-Transfer-Encoding: 8bit
-X-Spam-Flag: YES
-X-Spam-Checker-Version: SpamAssassin 2.60-cvs-jumbo.demos (1.190-2003-06-01-exp)
-X-Spam-Level: ++++++++++++++
-X-Spam-Status: Yes, hits=14.9 required=5.0 tests=BAYES_99,DATE_IN_FUTURE_06_12
- FROM_ILLEGAL_CHARS,HTML_10_20,HTML_FONTCOLOR_UNKNOWN,HTML_FONT_BIG
- MIME_HTML_ONLY,RCVD_IN_NJABL,SUBJ_HAS_SPACES,SUBJ_HAS_UNIQ_ID
- SUBJ_ILLEGAL_CHARS autolearn=no version=2.60-cvs-jumbo.demos
-X-Spam-Report: 14.9 points, 5.0 required;
- * 2.3 -- Subject contains lots of white space
- * 1.0 -- BODY: HTML font color is unknown to us
- * 0.3 -- BODY: FONT Size +2 and up or 3 and up
- [score: 1.0000]
- * 2.8 -- BODY: Bayesian classifier spam probability is 99 to 100%
- * 1.0 -- BODY: Message is 10% to 20% HTML
- * 1.0 -- From contains too many raw illegal characters
- * 1.0 -- Subject contains a unique ID
- * 1.0 -- Subject contains too many raw illegal characters
- * 1.2 -- Date: is 6 to 12 hours after Received: date
- [217.132.49.75 listed in dnsbl.njabl.org]
- * 1.2 -- RBL: Received via a relay in dnsbl.njabl.org
- * 2.0 -- Message only has text/html MIME parts
-Status: RO
-Content-Length: 2743
-Lines: 36
-
-<html><body><basefont face="times new roman, times, serif" size="2">
-<center>Ó÷eáíûé Öeíòp "ÊÀÄÐÛ ÄÅËÎÂÎÃÎ ÌÈÐÀ" ïpèãëaøaeò ía òpeíèíã:<br>
-<font size="5"><b>ÌÎÒÈÂÀÖÈß ÊÀÊ ÈÍÑÒÐÓÌÅÍÒ ÓÏÐÀÂËÅÍÈß ÏÅÐÑÎÍÀËÎÌ</b></font><br>
-<font color="red"><b>19 èþíÿ 2003 ã.</b></font><br>
-<b><i>Òpeíèíã ïpeäíaçía÷eí äëÿ âûcøeão è cpeäíeão óïpaâëeí÷ecêoão ïepcoíaëa.</i></b><br></center><br>
-<p align="justify"><b>Òpeíep: Áopìoòoâ Ïaâeë.</b> Ïpaêòè÷ecêèé ïcèõoëoã, oïûò paáoòû áoëee 10 ëeò â oáëacòè ïcèõoëoãèè è áèçíec-òpeíèíãoâ. Àâòop pÿäa ïóáëèêaöèé è ìeòoäè÷ecêèõ ïocoáèé paçëè÷íûõ íaïpaâëeíèé ïcèõoëoãèè, â òoì ÷ècëe: “Òeõíoëoãèÿ äeëoâoão oáùeíèÿ”, “Òeõíèêè è ïpèeìû ýôôeêòèâíûõ ïepeãoâopoâ”, “Ñòpaòeãèè ôopìèpoâaíèÿ êopïopaòèâíoão èìèäæa” è äp. Çaêoí÷èë ËÃÓ ôaêóëüòeò coöèaëüíoé ïcèõoëoãèè, Ðoccèécêóþ Àêaäeìèþ ãocóäapcòâeííoé cëóæáû ïpè Ïpeçèäeíòe ÐÔ, êópcû MBA.<br><br>
-<b><u>Öeëè òpeíèíãa:</u></b><br>
-1. Îcâoèòü ïpèeìû óïpaâëeíèÿ ìoòèâaöèeé;<br>
-2. Ïoëó÷èòü ïpaêòè÷ecêèe íaâûêè ìoòèâaöèè ïepcoíaëa ê paáoòe;<br>
-3. Îcâoèòü ocíoâíûe íaâûêè êoìaíäooápaçoâaíèÿ;<br>
-4. Îâëaäeòü ïpaêòè÷ecêèìè ìeòoäaìè coçäaíèÿ è ócèëeíèÿ paáo÷eé ìoòèâaöèè, êoìaíäooápaçoâaíèÿ.<br><br>
-<b><u>Çaäa÷è òpeíèíãa:</u></b><br>
-&nbsp;- Îcâoèòü ìeòoäû ïoáóæäeíèÿ äpóãèõ ëþäeé ê âûïoëíeíèþ oïpeäeëeííoé äeÿòeëüíocòè;<br>
-&nbsp;- Íaó÷èòücÿ íaïpaâëÿòü ïoáóæäeíèÿ coòpóäíèêoâ â cooòâeòcòâèe c çaäa÷aìè opãaíèçaöèè.<br><br>
-<b><u>Ñoäepæaíèe ïpoãpaììû:</u></b><br>
-<b>I. Ìaòepèaëüíûe è íeìaòepèaëüíûe ôopìû ìoòèâaöèè:</b><br>
-1. Ìecòo è poëü ìoòèâaöèè â óïpaâëeíèè ïepcoíaëoì;<br>
-2. Ïpaêòèêa óïpaâëeíèÿ opãaíèçaöèÿìè.<br>
-<b>II. Ïpaêòè÷ecêoe ïpèìeíeíèe ìoòèâaöèè â óïpaâëeíèè ïepcoíaëoì:</b><br>
-1. Àíòèìoòèâèpóþùèe pacïopÿæeíèÿ;<br>
-2. Ìoòèâaöèÿ è oöeíêa äeÿòeëüíocòè (poëü aòòecòaöèè coòpóäíèêoâ);<br>
-3. Ìoòèâaöèÿ è ïpaêòèêa íaêaçaíèé.<br><br>
-<b><u>Â çaâepøeíèè ïpoãpaììû ó÷acòíèêè cìoãóò:</u></b><br>
-1. Îpèeíòèpoâaòü coòpóäíèêoâ ía äocòèæeíèe oïpeäeëeííoão peçóëüòaòa;<br>
-2. Îâëaäeòü íeoáõoäèìûìè íaâûêaìè óïpaâëeíèÿ ìoòèâaöèeé ïepcoíaëa;<br>
-3. Ïpèìeíÿòü ïoëó÷eííûe çíaíèÿ â ïpaêòèêe óïpaâëeíèÿ ïepcoíaëoì;<br>
-4. Îïpeäeëÿòü èíäèâèäóaëüíûe ocoáeííocòè (ïpeäïo÷òeíèÿ) ìoòèâaöèè coòpóäíèêoâ â opãaíèçaöèè.<br>
-<i> õoäe òpeíèíãa ècïoëüçóeòcÿ paáo÷èé è cïpaâo÷íûé ìaòepèaë ïo ìoòèâaöèè è còèìóëèpoâaíèþ ïepcoíaëa poccèécêèõ êoìïaíèé. Ïo oêoí÷aíèè âûäaeòcÿ cepòèôèêaò.</i><br><br>
-<center>Ïpoäoëæèòeëüíocòü: 1 äeíü, 8 ÷acoâ (äâa ïepepûâa, oáeä)<br>
-<b>Ñòoèìocòü ó÷acòèÿ: 4 700 póáëeé áeç ÍÄÑ.</b><br>
-921-5862, 928-4156, 928-4200, 928-5321</center><br>
-<font size=1> Åcëè èíôopìaöèÿ ïoäoáíoão poäa Âac íe èíòepecóeò è ïo äpóãèì âoïpocaì - ïèøèòe: <a href="mailto:motiv@mailje.nl">seminar</a></font>
-<br><font size="1" color="#ffffff">3ZkRPb60QBbiHef1IRVl</font>
-</body></html>
-
-
-
diff --git a/rt/lib/t/data/text-html-with-umlaut b/rt/lib/t/data/text-html-with-umlaut
deleted file mode 100644
index 90e5d3f..0000000
--- a/rt/lib/t/data/text-html-with-umlaut
+++ /dev/null
@@ -1,35 +0,0 @@
-Return-Path: <gst@example.com>
-Delivered-To: j@pallas.eruditorum.org
-Received: from vis.example.com (vis.example.com [212.68.68.251])
- by pallas.eruditorum.org (Postfix) with SMTP id 59236111C3
- for <jesse@example.com>; Thu, 12 Jun 2003 02:14:44 -0400 (EDT)
-Received: (qmail 29541 invoked by uid 502); 12 Jun 2003 06:14:42 -0000
-Received: from sivd.example.com (HELO example.com) (192.168.42.1)
- by 192.168.42.42 with SMTP; 12 Jun 2003 06:14:42 -0000
-Received: received from 172.20.72.174 by odie.example.com; Thu, 12 Jun 2003 08:14:27 +0200
-Received: by mailserver.example.com with Internet Mail Service (5.5.2653.19) id <LJSB7T54>; Thu, 12 Jun 2003 08:14:39 +0200
-Message-ID: <50362EC956CBD411A339009027F6257E013DD495@mailserver.example.com>
-Date: Thu, 12 Jun 2003 08:14:39 +0200
-From: "Stever, Gregor" <gst@example.com>
-MIME-Version: 1.0
-X-Mailer: Internet Mail Service (5.5.2653.19)
-To: "'jesse@example.com'" <jesse@example.com>
-Subject: An example of mail containing text-html with an umlaut in the content
-Date: Thu, 12 Jun 2003 08:14:39 +0200
-Content-Type: text/html;
- charset="iso-8859-1"
-Content-Transfer-Encoding: quoted-printable
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<HTML><HEAD>
-<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; charset=3Diso-8859-=
-1">
-
-
-<META content=3D"MSHTML 6.00.2800.1170" name=3DGENERATOR></HEAD>
-<BODY>
-<DIV><FONT face=3DArial><FONT size=3D2>Hello,<BR><BR>ist this kind of Messa=
-ges, that=20
-causes rt to crash.<BR><BR>Mit freundlichen Gr=FC=DFen<BR>Gregor=20
-Stever&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ^^causes Error<SPAN=20
-class=3D975501206-12062003>!!</SPAN></FONT></FONT></DIV></BODY></HTML>
diff --git a/rt/lib/t/regression/01ticket_link_searching.t b/rt/lib/t/regression/01ticket_link_searching.t
deleted file mode 100644
index 6d10221..0000000
--- a/rt/lib/t/regression/01ticket_link_searching.t
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/usr/bin/perl -w
-
-use Test::More tests => 25;
-use strict;
-use RT;
-
-# Load the config file
-RT::LoadConfig();
-
-#Connect to the database and get RT::SystemUser and RT::Nobody loaded
-RT::Init();
-
-#Get the current user all loaded
-my $CurrentUser = $RT::SystemUser;
-
-my $queue = new RT::Queue($CurrentUser);
-$queue->Load('General') || Abort(loc("Queue could not be loaded."));
-
-my $child_ticket = new RT::Ticket( $CurrentUser );
-
-my ( $childid ) = $child_ticket->Create
- ( Subject => 'test child',
- Queue => $queue->Id);
-
-ok($childid != 0);
-
-my $parent_ticket = new RT::Ticket( $CurrentUser );
-
-my ( $parentid ) = $parent_ticket->Create
- ( Subject => 'test parent',
- Children => [$childid],
- Queue => $queue->Id);
-
-ok($parentid != 0, "We created a parent ticket");
-
-my $Collection = RT::Tickets->new($CurrentUser);
-$Collection->LimitMemberOf ($parentid);
-
-ok ($Collection->First);
-is ($Collection->First->id, $childid, "We found the collection of all children of $parentid with Limit");
-is($Collection->Count,1, "We found only one result");
-
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL( "MemberOf = $parentid");
-is ($Collection->First->id, $childid, "We found the collection of all children of $parentid with TicketSQL");
-is($Collection->Count,1, "We found only one result");
-
-
-
-
-
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->LimitHasMember ($childid);
-
-ok ($Collection->First);
-is ($Collection->First->id, $parentid, "We found the collection of all parents of $childid with Limit");
-is($Collection->Count,1, "We found only one result");
-
-
-
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL("HasMember = $childid");
-
-ok ($Collection->First);
-is ($Collection->First->id, $parentid, "We found the collection of all parents of $childid with TicketSQL");
-is($Collection->Count,1, "We found only one result");
-
-
-
-# Now we find a collection of all the tickets which have no members. they should have no children.
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->LimitHasMember('');
-# must contain child; must not contain parent
-my %has;
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok ($has{$childid} , "The collection has our child - $childid");
-ok( !$has{$parentid}, "The collection doesn't have our parent - $parentid");
-
-
-
-
-# Now we find a collection of all the tickets which are not members of anything. they should have no parents.
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->LimitMemberOf('');
-# must contain parent; must not contain child
-%has = ();
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok ($has{$parentid} , "The collection has our parent - $parentid");
-ok( !$has{$childid}, "The collection doesn't have our child - $childid");
-
-
-# Do it all over with TicketSQL
-#
-
-
-
-# Now we find a collection of all the tickets which have no members. they should have no children.
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL ("HasMember IS NULL");
-# must contain parent; must not contain child
- %has = ();
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok (!$has{$parentid} , "The collection doesn't have our parent - $parentid");
-ok( $has{$childid}, "The collection has our child - $childid");
-
-
-# Now we find a collection of all the tickets which have no members. they should have no children.
-# Alternate syntax
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL ("HasMember = ''");
-# must contain parent; must not contain child
- %has = ();
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok (!$has{$parentid} , "The collection doesn't have our parent - $parentid");
-ok( $has{$childid}, "The collection has our child - $childid");
-
-
-
-# Now we find a collection of all the tickets which are not members of anything. they should have no parents.
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL("MemberOf IS NULL");
-# must not contain parent; must contain parent
-%has = ();
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok ($has{$parentid} , "The collection has our parent - $parentid");
-ok(!$has{$childid}, "The collection doesn't have our child - $childid");
-
-
-# Now we find a collection of all the tickets which are not members of anything. they should have no parents.
-$Collection = RT::Tickets->new($CurrentUser);
-$Collection->FromSQL("MemberOf = ''");
-# must not contain parent; must contain parent
-%has = ();
-while (my $t = $Collection->Next) {
- ++$has{$t->id};
-}
-ok ($has{$parentid} , "The collection has our parent - $parentid");
-ok(!$has{$childid}, "The collection doesn't have our child - $childid");
-
-
-
-
-1;
-
-
diff --git a/rt/lib/t/regression/02basic_web.t b/rt/lib/t/regression/02basic_web.t
deleted file mode 100644
index d3376d0..0000000
--- a/rt/lib/t/regression/02basic_web.t
+++ /dev/null
@@ -1,150 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use Test::More tests => 17;
-use WWW::Mechanize;
-use HTTP::Request::Common;
-use HTTP::Cookies;
-use LWP;
-use Encode;
-
-my $cookie_jar = HTTP::Cookies->new;
-my $agent = WWW::Mechanize->new();
-
-# give the agent a place to stash the cookies
-
-$agent->cookie_jar($cookie_jar);
-
-use RT;
-RT::LoadConfig;
-
-# get the top page
-my $url = $RT::WebURL;
-$agent->get($url);
-
-is ($agent->{'status'}, 200, "Loaded a page");
-
-
-# {{{ test a login
-
-# follow the link marked "Login"
-
-ok($agent->{form}->find_input('user'));
-
-ok($agent->{form}->find_input('pass'));
-ok ($agent->{'content'} =~ /username:/i);
-$agent->field( 'user' => 'root' );
-$agent->field( 'pass' => 'password' );
-# the field isn't named, so we have to click link 0
-$agent->click(0);
-is($agent->{'status'}, 200, "Fetched the page ok");
-ok( $agent->{'content'} =~ /Logout/i, "Found a logout link");
-
-
-
-$agent->get($url."Ticket/Create.html?Queue=1");
-is ($agent->{'status'}, 200, "Loaded Create.html");
-$agent->form(3);
-# Start with a string containing characters in latin1
-my $string = "I18N Web Testing æøå";
-Encode::from_to($string, 'iso-8859-1', 'utf8');
-$agent->field('Subject' => "Ticket with utf8 body");
-$agent->field('Content' => $string);
-ok($agent->submit(), "Created new ticket with $string as Content");
-ok( $agent->{'content'} =~ qr{$string} , "Found the content");
-$agent->get($url."Ticket/Create.html?Queue=1");
-is ($agent->{'status'}, 200, "Loaded Create.html");
-$agent->form(3);
-# Start with a string containing characters in latin1
-my $string = "I18N Web Testing æøå";
-Encode::from_to($string, 'iso-8859-1', 'utf8');
-$agent->field('Subject' => $string);
-$agent->field('Content' => "Ticket with utf8 subject");
-ok($agent->submit(), "Created new ticket with $string as Subject");
-
-ok( $agent->{'content'} =~ qr{$string} , "Found the content");
-
-
-
-# }}}
-
-# {{{ Query Builder tests
-
-my $response = $agent->get($url."Search/Build.html");
-ok( $response->is_success, "Fetched " . $url."Search/Build.html" );
-
-# Parsing TicketSQL
-#
-# Adding items
-
-# set the first value
-ok($agent->form_name('BuildQuery'));
-$agent->field("AttachmentField", "Subject");
-$agent->field("AttachmentOp", "LIKE");
-$agent->field("ValueOfAttachment", "aaa");
-$agent->submit();
-
-# set the next value
-ok($agent->form_name('BuildQuery'));
-$agent->field("AttachmentField", "Subject");
-$agent->field("AttachmentOp", "LIKE");
-$agent->field("ValueOfAttachment", "bbb");
-$agent->submit();
-
-ok($agent->form_name('BuildQuery'));
-
-# get the query
-my $query = $agent->current_form->find_input("Query")->value;
-# strip whitespace from ends
-$query =~ s/^\s*//g;
-$query =~ s/\s*$//g;
-
-# collapse other whitespace
-$query =~ s/\s+/ /g;
-
-is ($query, "Subject LIKE 'aaa' AND Subject LIKE 'bbb'");
-
-# - new items go one level down
-# - add items at currently selected level
-# - if nothing is selected, add at end, one level down
-#
-# move left
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move left if you're at the top level
-#
-# move right
-# - error if nothing selected
-# - same item should be selected after move
-# - can always move right (no max depth...should there be?)
-#
-# move up
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move up if you're first in the list
-#
-# move down
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move down if you're last in the list
-#
-# toggle
-# - error if nothing selected
-# - change all aggregators in the grouping
-# - don't change any others
-#
-# delete
-# - error if nothing selected
-# - delete currently selected item
-# - delete all children of a grouping
-# - if delete leaves a node with no children, delete that, too
-# - what should be selected?
-#
-# Clear
-# - clears entire query
-# - clears it from the session, too
-
-# }}}
-
-
-1;
diff --git a/rt/lib/t/regression/03web_compiliation_errors.t b/rt/lib/t/regression/03web_compiliation_errors.t
deleted file mode 100644
index f2e62c9..0000000
--- a/rt/lib/t/regression/03web_compiliation_errors.t
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use Test::More qw/no_plan/;
-use WWW::Mechanize;
-use HTTP::Request::Common;
-use HTTP::Cookies;
-use LWP;
-use Encode;
-
-my $cookie_jar = HTTP::Cookies->new;
-my $agent = WWW::Mechanize->new();
-
-# give the agent a place to stash the cookies
-
-$agent->cookie_jar($cookie_jar);
-
-use RT;
-RT::LoadConfig;
-
-# get the top page
-my $url = $RT::WebURL;
-$agent->get($url);
-
-is ($agent->{'status'}, 200, "Loaded a page");
-
-
-# {{{ test a login
-
-# follow the link marked "Login"
-
-ok($agent->{form}->find_input('user'));
-
-ok($agent->{form}->find_input('pass'));
-ok ($agent->{'content'} =~ /username:/i);
-$agent->field( 'user' => 'root' );
-$agent->field( 'pass' => 'password' );
-# the field isn't named, so we have to click link 0
-$agent->click(0);
-is($agent->{'status'}, 200, "Fetched the page ok");
-ok( $agent->{'content'} =~ /Logout/i, "Found a logout link");
-
-
-use File::Find;
-find ( \&wanted , 'html/');
-
-sub wanted {
- -f && /\.html$/ && $_ !~ /Logout.html$/ && test_get($File::Find::name);
-}
-
-sub test_get {
- my $file = shift;
-
-
- $file =~ s#^html/##;
- ok ($agent->get("$url/$file", "GET $url/$file"));
- is ($agent->{'status'}, 200, "Loaded $file");
-# ok( $agent->{'content'} =~ /Logout/i, "Found a logout link on $file ");
- ok( $agent->{'content'} !~ /Not logged in/i, "Still logged in for $file");
- ok( $agent->{'content'} !~ /System error/i, "Didn't get a Mason compilation error on $file");
-
-}
-
-# }}}
-
-1;
diff --git a/rt/lib/t/regression/04send_email.t b/rt/lib/t/regression/04send_email.t
deleted file mode 100644
index 09e6e6f..0000000
--- a/rt/lib/t/regression/04send_email.t
+++ /dev/null
@@ -1,511 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Test::More tests => 137;
-use RT;
-RT::LoadConfig();
-RT::Init;
-use RT::EmailParser;
-use RT::Tickets;
-use RT::Action::SendEmail;
-
-my @_outgoing_messages;
-my @scrips_fired;
-
-#We're not testing acls here.
-my $everyone = RT::Group->new($RT::SystemUser);
-$everyone->LoadSystemInternalGroup('Everyone');
-$everyone->PrincipalObj->GrantRight(Right =>'SuperUser');
-
-
-is (__PACKAGE__, 'main', "We're operating in the main package");
-
-
-{
-no warnings qw/redefine/;
-sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- main::_fired_scrip($self->ScripObj);
- main::ok(ref($MIME) eq 'MIME::Entity', "hey, look. it's a mime entity");
-}
-
-}
-
-# instrument SendEmail to pass us what it's about to send.
-# create a regular ticket
-
-my $parser = RT::EmailParser->new();
-
-
-# Let's test to make sure a multipart/report is processed correctly
-my $content = `cat $RT::BasePath/lib/t/data/multipart-report` || die "couldn't find new content";
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
-my %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-my $tick= $tickets->First();
-isa_ok($tick, "RT::Ticket", "got a ticket object");
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /The original message was received/, "It's the bounce");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-
-undef @scrips_fired;
-
-
-
-
-$parser->ParseMIMEEntityFromScalar('From: root@localhost
-To: rt@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!');
-
-
-use Data::Dumper;
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($id, undef, $msg ) = $ticket->Create(Requestor => ['root@localhost'], Queue => 'general', Subject => 'I18NTest', MIMEObj => $parser->Entity);
-ok ($id,$msg);
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'I18NTest', "failed to create the new ticket from an unprivileged account");
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-# make sure it sends a notification to adminccs
-
-
-# we need to swap out SendMessage to test the new things we care about;
-&utf8_redef_sendmessage;
-
-# create an iso 8859-1 ticket
-@scrips_fired = ();
-
-$content = `cat $RT::BasePath/lib/t/data/new-ticket-from-iso-8859-1` || die "couldn't find new content";
-
-
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /H\x{e5}vard/, "It's signed by havard. yay");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-
-
-# make sure it sends a notification to adminccs
-
-# If we correspond, does it do the right thing to the outbound messages?
-
-$parser->ParseMIMEEntityFromScalar($content);
- ($id, $msg) = $tick->Comment(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-$parser->ParseMIMEEntityFromScalar($content);
-($id, $msg) = $tick->Correspond(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-
-
-
-
-# we need to swap out SendMessage to test the new things we care about;
-&iso8859_redef_sendmessage;
-$RT::EmailOutputEncoding = 'iso-8859-1';
-# create an iso 8859-1 ticket
-@scrips_fired = ();
-
- $content = `cat $RT::BasePath/lib/t/data/new-ticket-from-iso-8859-1` || die "couldn't find new content";
-# be as much like the mail gateway as possible.
-use RT::Interface::Email;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /H\x{e5}vard/, "It's signed by havard. yay");
-
-
-# make sure it fires scrips.
-is ($#scrips_fired, 1, "Fired 2 scrips on ticket creation");
-# make sure it sends an autoreply
-
-
-# make sure it sends a notification to adminccs
-
-
-# If we correspond, does it do the right thing to the outbound messages?
-
-$parser->ParseMIMEEntityFromScalar($content);
- ($id, $msg) = $tick->Comment(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-$parser->ParseMIMEEntityFromScalar($content);
-($id, $msg) = $tick->Correspond(MIMEObj => $parser->Entity);
-ok ($id, $msg);
-
-
-sub _fired_scrip {
- my $scrip = shift;
- push @scrips_fired, $scrip;
-}
-
-sub utf8_redef_sendmessage {
- no warnings qw/redefine/;
- eval '
- sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- my $scrip = $self->ScripObj->id;
- ok(1, $self->ScripObj->ConditionObj->Name . " ".$self->ScripObj->ActionObj->Name);
- main::_fired_scrip($self->ScripObj);
- $MIME->make_singlepart;
- main::ok( ref($MIME) eq \'MIME::Entity\',
- "hey, look. it\'s a mime entity" );
- main::ok( ref( $MIME->head ) eq \'MIME::Head\',
- "its mime header is a mime header. yay" );
- main::ok( $MIME->head->get(\'Content-Type\') =~ /utf-8/,
- "Its content type is utf-8" );
- my $message_as_string = $MIME->bodyhandle->as_string();
- use Encode;
- $message_as_string = Encode::decode_utf8($message_as_string);
- main::ok(
- $message_as_string =~ /H\x{e5}vard/,
-"The message\'s content contains havard\'s name. this will fail if it\'s not utf8 out");
-
- }';
-}
-
-sub iso8859_redef_sendmessage {
- no warnings qw/redefine/;
- eval '
- sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
-
- my $scrip = $self->ScripObj->id;
- ok(1, $self->ScripObj->ConditionObj->Name . " ".$self->ScripObj->ActionObj->Name);
- main::_fired_scrip($self->ScripObj);
- $MIME->make_singlepart;
- main::ok( ref($MIME) eq \'MIME::Entity\',
- "hey, look. it\'s a mime entity" );
- main::ok( ref( $MIME->head ) eq \'MIME::Head\',
- "its mime header is a mime header. yay" );
- main::ok( $MIME->head->get(\'Content-Type\') =~ /iso-8859-1/,
- "Its content type is iso-8859-1 - " . $MIME->head->get("Content-Type") );
- my $message_as_string = $MIME->bodyhandle->as_string();
- use Encode;
- $message_as_string = Encode::decode("iso-8859-1",$message_as_string);
- main::ok(
- $message_as_string =~ /H\x{e5}vard/, "The message\'s content contains havard\'s name. this will fail if it\'s not utf8 out");
-
- }';
-}
-
-# {{{ test a multipart alternative containing a text-html part with an umlaut
-
- $content = `cat $RT::BasePath/lib/t/data/multipart-alternative-with-umlaut` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&umlauts_redef_sendmessage;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /causes Error/, "We recorded the content right as text-plain");
-is ($tick->Transactions->First->Attachments->Count , 3 , "Has three attachments, presumably a text-plain, a text-html and a multipart alternative");
-
-sub umlauts_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-# }}}
-
-# {{{ test a text-html message with an umlaut
-
- $content = `cat $RT::BasePath/lib/t/data/text-html-with-umlaut` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_html_umlauts_redef_sendmessage;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->Content =~ /causes Error/, "We recorded the content as containing 'causes error'");
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/html/, "We recorded the content as text/html");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-html and a multipart alternative");
-
-sub text_html_umlauts_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- use Data::Dumper;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- ok (is $MIME->parts, 2, "generated correspondence mime entityis composed of three parts");
- is ($MIME->head->mime_type , "multipart/mixed", "The first part is a multipart mixed". $MIME->head->mime_type);
- is ($MIME->parts(0)->head->mime_type , "text/plain", "The second part is a plain");
- is ($MIME->parts(1)->head->mime_type , "text/html", "The third part is an html ");
- }';
-}
-
-# }}}
-
-# {{{ test a text-html message with russian characters
-
- $content = `cat $RT::BasePath/lib/t/data/text-html-in-russian` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_html_russian_redef_sendmessage;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/html/, "We recorded the content right as text-html");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-html and a multipart alternative");
-
-sub text_html_russian_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- use Data::Dumper;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- ok (is $MIME->parts, 2, "generated correspondence mime entityis composed of three parts");
- is ($MIME->head->mime_type , "multipart/mixed", "The first part is a multipart mixed". $MIME->head->mime_type);
- is ($MIME->parts(0)->head->mime_type , "text/plain", "The second part is a plain");
- is ($MIME->parts(1)->head->mime_type , "text/html", "The third part is an html ");
- my $content_1251;
- $content_1251 = $MIME->parts(1)->bodyhandle->as_string();
- ok ($content_1251 =~ qr{Ó÷eáíûé Öeíòp "ÊÀÄÐÛ ÄÅËÎÂÎÃÎ ÌÈÐÀ" ïpèãëaøaeò ía òpeíèíã:},
-"Content matches drugim in codepage 1251" );
- }';
-}
-
-# }}}
-
-# {{{ test a message containing a russian subject and NO content type
-
-unshift (@RT::EmailInputEncodings, 'koi8-r');
-$RT::EmailOutputEncoding = 'koi8-r';
-$content = `cat $RT::BasePath/lib/t/data/russian-subject-no-content-type` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_plain_russian_redef_sendmessage;
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick= $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /text\/plain/, "We recorded the content type right");
-ok ($tick->Transactions->First->Attachments->Count ==1 , "Has one attachment, presumably a text-plain");
-is ($tick->Subject, "\x{442}\x{435}\x{441}\x{442} \x{442}\x{435}\x{441}\x{442}", "Recorded the subject right");
-sub text_plain_russian_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- is ($MIME->head->mime_type , "text/plain", "The only part is text/plain ");
- my $subject = $MIME->head->get("subject");
- chomp($subject);
- #is( $subject , /^=\?KOI8-R\?B\?W2V4YW1wbGUuY39tICM3XSDUxdPUINTF09Q=\?=/ , "The $subject is encoded correctly");
- };
- ';
-}
-
-shift @RT::EmailInputEncodings;
-$RT::EmailOutputEncoding = 'utf-8';
-# }}}
-
-
-# {{{ test a message containing a nested RFC 822 message
-
- $content = `cat $RT::BasePath/lib/t/data/nested-rfc-822` || die "couldn't find new content";
-ok ($content, "Loaded nested-rfc-822 to test");
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&text_plain_nested_redef_sendmessage;
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick= $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-is ($tick->Subject, "[Jonas Liljegren] Re: [Para] Niv\x{e5}er?");
-ok ($tick->Transactions->First->Attachments->First->ContentType =~ /multipart\/mixed/, "We recorded the content type right");
-is ($tick->Transactions->First->Attachments->Count , 5 , "Has one attachment, presumably a text-plain and a message RFC 822 and another plain");
-sub text_plain_nested_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage {
- my $self = shift;
- my $MIME = shift;
- return (1) unless ($self->ScripObj->ScripActionObj->Name eq "Notify AdminCcs" );
- is ($MIME->head->mime_type , "multipart/mixed", "It is a mixed multipart");
- my $subject = $MIME->head->get("subject");
- $subject = MIME::Base64::decode_base64( $subject);
- chomp($subject);
- # TODO, why does this test fail
- #ok($subject =~ qr{Niv\x{e5}er}, "The subject matches the word - $subject");
- 1;
- }';
-}
-
-# }}}
-
-
-# {{{ test a multipart alternative containing a uuencoded mesage generated by lotus notes
-
- $content = `cat $RT::BasePath/lib/t/data/notes-uuencoded` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&notes_redef_sendmessage;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick= $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /from Lotus Notes/, "We recorded the content right");
-is ($tick->Transactions->First->Attachments->Count , 3 , "Has three attachments");
-
-sub notes_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-# }}}
-
-# {{{ test a multipart that crashes the file-based mime-parser works
-
- $content = `cat $RT::BasePath/lib/t/data/crashes-file-based-parser` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-# be as much like the mail gateway as possible.
-&crashes_redef_sendmessage;
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick= $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-ok ($tick->Transactions->First->Content =~ /FYI/, "We recorded the content right");
-is ($tick->Transactions->First->Attachments->Count , 5 , "Has three attachments");
-
-sub crashes_redef_sendmessage {
- no warnings qw/redefine/;
- eval 'sub RT::Action::SendEmail::SendMessage { }';
-}
-
-
-
-# }}}
-
-# {{{ test a multi-line RT-Send-CC header
-
- $content = `cat $RT::BasePath/lib/t/data/rt-send-cc` || die "couldn't find new content";
-
-$parser->ParseMIMEEntityFromScalar($content);
-
-
-
- %args = (message => $content, queue => 1, action => 'correspond');
- RT::Interface::Email::Gateway(\%args);
- $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick= $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-
-my $cc = $tick->Transactions->First->Attachments->First->GetHeader('RT-Send-Cc');
-ok ($cc =~ /test1/, "Found test 1");
-ok ($cc =~ /test2/, "Found test 2");
-ok ($cc =~ /test3/, "Found test 3");
-ok ($cc =~ /test4/, "Found test 4");
-ok ($cc =~ /test5/, "Found test 5");
-
-# }}}
-
-# Don't taint the environment
-$everyone->PrincipalObj->RevokeRight(Right =>'SuperUser');
-1;
diff --git a/rt/lib/t/regression/05cronsupport.t b/rt/lib/t/regression/05cronsupport.t
deleted file mode 100644
index 8e5bd75..0000000
--- a/rt/lib/t/regression/05cronsupport.t
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Test::More qw/no_plan/;
-
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-### Set up some testing data. Test the testing data because why not?
-
-# Create a user with rights, a queue, and some tickets.
-my $user_obj = RT::User->new($RT::SystemUser);
-my ($ret, $msg) = $user_obj->LoadOrCreateByEmail('tara@example.com');
-ok($ret, 'record test user creation');
-$user_obj->SetName('tara');
-$user_obj->PrincipalObj->GrantRight(Right => 'SuperUser');
-my $CurrentUser = RT::CurrentUser->new('tara');
-
-# Create our template, which will be used for tests of RT::Action::Record*.
-
-my $template_content = 'RT-Send-Cc: tla@example.com
-RT-Send-Bcc: jesse@example.com
-
-This is a content string with no content.';
-
-my $template_obj = RT::Template->new($CurrentUser);
-$template_obj->Create(Queue => '0',
- Name => 'recordtest',
- Description => 'testing Record actions',
- Content => $template_content,
- );
-
-# Create a queue and some tickets.
-
-my $queue_obj = RT::Queue->new($CurrentUser);
-($ret, $msg) = $queue_obj->Create(Name => 'recordtest', Description => 'queue for Action::Record testing');
-ok($ret, 'record test queue creation');
-
-my $ticket1 = RT::Ticket->new($CurrentUser);
-my ($id, $tobj, $msg2) = $ticket1->Create(Queue => $queue_obj,
- Requestor => ['tara@example.com'],
- Subject => 'bork bork bork',
- Priority => 22,
- );
-ok($id, 'record test ticket creation 1');
-my $ticket2 = RT::Ticket->new($CurrentUser);
-($id, $tobj, $msg2) = $ticket2->Create(Queue => $queue_obj,
- Requestor => ['root@localhost'],
- Subject => 'hurdy gurdy'
- );
-ok($id, 'record test ticket creation 2');
-
-
-### OK. Have data, will travel.
-
-# First test the search.
-
-ok(require RT::Search::FromSQL, "Search::FromSQL loaded");
-my $ticketsqlstr = "Requestor.EmailAddress = '" . $CurrentUser->EmailAddress .
- "' AND Priority > '20'";
-my $search = RT::Search::FromSQL->new(Argument => $ticketsqlstr, TicketsObj => RT::Tickets->new($CurrentUser),
- );
-is(ref($search), 'RT::Search::FromSQL', "search created");
-ok($search->Prepare(), "fromsql search run");
-my $counter = 0;
-while(my $t = $search->TicketsObj->Next() ) {
- is($t->Id(), $ticket1->Id(), "fromsql search results 1");
- $counter++;
-}
-is ($counter, 1, "fromsql search results 2");
-
-# Right. Now test the actions.
-
-ok(require RT::Action::RecordComment);
-ok(require RT::Action::RecordCorrespondence);
-
-my ($comment_act, $correspond_act);
-ok($comment_act = RT::Action::RecordComment->new(TicketObj => $ticket1, TemplateObj => $template_obj, CurrentUser => $CurrentUser), "RecordComment created");
-ok($correspond_act = RT::Action::RecordCorrespondence->new(TicketObj => $ticket2, TemplateObj => $template_obj, CurrentUser => $CurrentUser), "RecordCorrespondence created");
-ok($comment_act->Prepare(), "Comment prepared");
-ok($correspond_act->Prepare(), "Correspond prepared");
-ok($comment_act->Commit(), "Comment committed");
-ok($correspond_act->Commit(), "Correspondence committed");
-
-# Now test for loop suppression.
-my ($trans, $desc, $transaction) = $ticket2->Comment(MIMEObj => $template_obj->MIMEObj);
-my $bogus_action = RT::Action::RecordComment->new(TicketObj => $ticket1, TemplateObj => $template_obj, TransactionObj => $transaction, CurrentUser => $CurrentUser);
-ok(!$bogus_action->Prepare(), "Comment aborted to prevent loop");
-
-1;
diff --git a/rt/lib/t/regression/06mailgateway.t b/rt/lib/t/regression/06mailgateway.t
deleted file mode 100644
index 8486aea..0000000
--- a/rt/lib/t/regression/06mailgateway.t
+++ /dev/null
@@ -1,504 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC
-# <jesse.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-=head1 NAME
-
-rt-mailgate - Mail interface to RT3.
-
-=cut
-
-use strict;
-use Test::More tests => 57;
-use RT;
-RT::LoadConfig();
-RT::Init();
-use RT::I18N;
-# Make sure that when we call the mailgate wrong, it tempfails
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url http://this.test.for.non-connection.is.expected.to.generate.an.error"), "Opened the mailgate - The error below is expected - $@");
-print MAIL <<EOF;
-From: root\@localhost
-To: rt\@example.com
-Subject: This is a test of new ticket creation
-
-Foob!
-EOF
-close (MAIL);
-
-# Check the return value
-is ( $? >> 8, 75, "The error message above is expected The mail gateway exited with a failure. yay");
-
-
-# {{{ Test new ticket creation by root who is privileged and superuser
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: root\@localhost
-To: rt\@example.com
-Subject: This is a test of new ticket creation
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-use RT::Tickets;
-my $tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $tick = $tickets->First();
-ok (UNIVERSAL::isa($tick,'RT::Ticket'));
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'This is a test of new ticket creation', "Created the ticket");
-
-# }}}
-
-
-# {{{This is a test of new ticket creation as an unknown user
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist\@example.com
-To: rt\@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject ne 'This is a test of new ticket creation as an unknown user', "failed to create the new ticket from an unprivileged account");
-my $u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by failed ticket submission");
-
-
-# }}}
-
-# {{{ now everybody can create tickets. can a random unkown user create tickets?
-
-my $g = RT::Group->new($RT::SystemUser);
-$g->LoadSystemInternalGroup('Everyone');
-ok( $g->Id, "Found 'everybody'");
-
-my ($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-ok ($val, "Granted everybody the right to create tickets - $msg");
-
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist\@example.com
-To: rt\@example.com
-Subject: This is a test of new ticket creation as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id' ,OPERATOR => '>', VALUE => '0');
-$tick = $tickets->First();
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'This is a test of new ticket creation as an unknown user', "failed to create the new ticket from an unprivileged account");
- $u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist@example.com');
-ok( $u->Id != 0, " user does not exist and was created by ticket submission");
-
-# }}}
-
-
-# {{{ can another random reply to a ticket without being granted privs? answer should be no.
-
-
-#($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-#ok ($val, "Granted everybody the right to create tickets - $msg");
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-2\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a reply as an unknown user
-
-Blah! (Should not work.)
-Foob!
-EOF
-close (MAIL);
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-2@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by ticket correspondence submission");
-# }}}
-
-
-# {{{ can another random reply to a ticket after being granted privs? answer should be yes
-
-
-($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'ReplyToTicket');
-ok ($val, "Granted everybody the right to reply to tickets - $msg");
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-2\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a reply as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-2@example.com');
-ok( $u->Id != 0, " user exists and was created by ticket correspondence submission");
-
-# }}}
-
-# {{{ can another random comment on a ticket without being granted privs? answer should be no.
-
-
-#($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CreateTicket');
-#ok ($val, "Granted everybody the right to create tickets - $msg");
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action comment"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-3\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a comment as an unknown user
-
-Blah! (Should not work.)
-Foob!
-EOF
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-3@example.com');
-ok( $u->Id == 0, " user does not exist and was not created by ticket comment submission");
-
-# }}}
-# {{{ can another random reply to a ticket after being granted privs? answer should be yes
-
-
-($val,$msg) = $g->PrincipalObj->GrantRight(Right => 'CommentOnTicket');
-ok ($val, "Granted everybody the right to reply to tickets - $msg");
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action comment"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: doesnotexist-3\@example.com
-To: rt\@example.com
-Subject: [example.com #@{[$tick->Id]}] This is a test of a comment as an unknown user
-
-Blah!
-Foob!
-EOF
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-$u = RT::User->new($RT::SystemUser);
-$u->Load('doesnotexist-3@example.com');
-ok( $u->Id != 0, " user exists and was created by ticket comment submission");
-
-# }}}
-
-# {{{ Testing preservation of binary attachments
-
-# Get a binary blob (Best Practical logo)
-
-# Create a mime entity with an attachment
-
-use MIME::Entity;
-my $entity = MIME::Entity->build( From => 'root@localhost',
- To => 'rt@localhost',
- Subject => 'binary attachment test',
- Data => ['This is a test of a binary attachment']);
-
-# currently in lib/t/autogen
-
-my $LOGO_FILE = $RT::MasonComponentRoot.'/NoAuth/images/bplogo.gif';
-
-$entity->attach(Path => $LOGO_FILE,
- Type => 'image/gif',
- Encoding => 'base64');
-
-# Create a ticket with a binary attachment
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-
-$entity->print(\*MAIL);
-
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-$tickets = RT::Tickets->new($RT::SystemUser);
-$tickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
- $tick = $tickets->First();
-ok (UNIVERSAL::isa($tick,'RT::Ticket'));
-ok ($tick->Id, "found ticket ".$tick->Id);
-ok ($tick->Subject eq 'binary attachment test', "Created the ticket - ".$tick->Id);
-
-my $file = `cat $LOGO_FILE`;
-ok ($file, "Read in the logo image");
-
-
- use Digest::MD5;
-warn "for the raw file the content is ".Digest::MD5::md5_base64($file);
-
-
-
-# Verify that the binary attachment is valid in the database
-my $attachments = RT::Attachments->new($RT::SystemUser);
-$attachments->Limit(FIELD => 'ContentType', VALUE => 'image/gif');
-ok ($attachments->Count == 1, 'Found only one gif in the database');
-my $attachment = $attachments->First;
-ok($attachment->Id);
-my $acontent = $attachment->Content;
-
- warn "coming from the database, the content is ".Digest::MD5::md5_base64($acontent);
-
-is( $acontent, $file, 'The attachment isn\'t screwed up in the database.');
-# Log in as root
-use Getopt::Long;
-use LWP::UserAgent;
-
-
-# Grab the binary attachment via the web ui
-my $ua = LWP::UserAgent->new();
-
-my $full_url = "$RT::WebURL/Ticket/Attachment/".$attachment->TransactionId."/".$attachment->id."/bplogo.gif?&user=root&pass=password";
-my $r = $ua->get( $full_url);
-
-
-# Verify that the downloaded attachment is the same as what we uploaded.
-is($file, $r->content, 'The attachment isn\'t screwed up in download');
-
-
-
-# }}}
-
-# {{{ Simple I18N testing
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-
-print MAIL <<EOF;
-From: root\@localhost
-To: rtemail\@example.com
-Subject: This is a test of I18N ticket creation
-Content-Type: text/plain; charset="utf-8"
-
-2 accented lines
-\303\242\303\252\303\256\303\264\303\273
-\303\241\303\251\303\255\303\263\303\272
-bye
-EOF
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-my $unitickets = RT::Tickets->new($RT::SystemUser);
-$unitickets->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$unitickets->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $unitick = $unitickets->First();
-ok (UNIVERSAL::isa($unitick,'RT::Ticket'));
-ok ($unitick->Id, "found ticket ".$unitick->Id);
-ok ($unitick->Subject eq 'This is a test of I18N ticket creation', "Created the ticket - ". $unitick->Subject);
-
-
-
-my $unistring = "\303\241\303\251\303\255\303\263\303\272";
-Encode::_utf8_on($unistring);
-is ($unitick->Transactions->First->Content, $unitick->Transactions->First->Attachments->First->Content, "Content is ". $unitick->Transactions->First->Attachments->First->Content);
-ok($unitick->Transactions->First->Attachments->First->Content =~ /$unistring/i, $unitick->Id." appears to be unicode ". $unitick->Transactions->First->Attachments->First->Id);
-# supposedly I18N fails on the second message sent in.
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action correspond"), "Opened the mailgate - $@");
-
-print MAIL <<EOF;
-From: root\@localhost
-To: rtemail\@example.com
-Subject: This is a test of I18N ticket creation
-Content-Type: text/plain; charset="utf-8"
-
-2 accented lines
-\303\242\303\252\303\256\303\264\303\273
-\303\241\303\251\303\255\303\263\303\272
-bye
-EOF
-close (MAIL);
-
-#Check the return value
-is ($? >> 8, 0, "The mail gateway exited normally. yay");
-
-my $tickets2 = RT::Tickets->new($RT::SystemUser);
-$tickets2->OrderBy(FIELD => 'id', ORDER => 'DESC');
-$tickets2->Limit(FIELD => 'id', OPERATOR => '>', VALUE => '0');
-my $tick2 = $tickets2->First();
-ok (UNIVERSAL::isa($tick2,'RT::Ticket'));
-ok ($tick2->Id, "found ticket ".$tick2->Id);
-ok ($tick2->Subject eq 'This is a test of I18N ticket creation', "Created the ticket");
-
-
-
-$unistring = "\303\241\303\251\303\255\303\263\303\272";
-Encode::_utf8_on($unistring);
-
-ok ($tick2->Transactions->First->Content =~ $unistring, "It appears to be unicode - ".$tick2->Transactions->First->Content);
-
-# }}}
-
-
-($val,$msg) = $g->PrincipalObj->RevokeRight(Right => 'CreateTicket');
-ok ($val, $msg);
-
-=for later
-
-TODO: {
-
-# {{{ Check take and resolve actions
-
-# create ticket that is owned by nobody
-use RT::Ticket;
-$tick = RT::Ticket->new($RT::SystemUser);
-my ($id) = $tick->Create( Queue => 'general', Subject => 'test');
-ok( $id, 'new ticket created' );
-is( $tick->Owner, $RT::Nobody->Id, 'owner of the new ticket is nobody' );
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action take"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: root\@localhost
-Subject: [example.com \#$id] test
-
-EOF
-close (MAIL);
-is ($? >> 8, 0, "The mail gateway exited normally");
-
-$tick = RT::Ticket->new($RT::SystemUser);
-$tick->Load( $id );
-is( $tick->Id, $id, 'load correct ticket');
-is( $tick->OwnerObj->EmailAddress, 'root@localhost', 'successfuly take ticket via email');
-
-# check that there is no text transactions writen
-is( $tick->Transactions->Count, 2, 'no superfluous transactions');
-
-my $status = '';
-($status, $msg) = $tick->SetOwner( $RT::Nobody->Id, 'Force' );
-ok( $status, 'successfuly changed owner: '. ($msg||'') );
-is( $tick->Owner, $RT::Nobody->Id, 'set owner back to nobody');
-
-
-
- local $TODO = "Advanced mailgate actions require an unsafe configuration";
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action take-correspond"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: root\@localhost
-Subject: [example.com \#$id] correspondence
-
-test
-EOF
-close (MAIL);
-is ($? >> 8, 0, "The mail gateway exited normally");
-
-$tick = RT::Ticket->new($RT::SystemUser);
-$tick->Load( $id );
-is( $tick->Id, $id, 'load correct ticket');
-is( $tick->OwnerObj->EmailAddress, 'root@localhost', 'successfuly take ticket via email');
-my $txns = $tick->Transactions;
-$txns->Limit( FIELD => 'Type', VALUE => 'Correspond');
-is( $txns->Last->Subject, "[example.com \#$id] correspondence", 'successfuly add correspond within take via email' );
-# +1 because of auto open
-is( $tick->Transactions->Count, 6, 'no superfluous transactions');
-
-ok(open(MAIL, "|$RT::BinPath/rt-mailgate --url $RT::WebURL --queue general --action resolve"), "Opened the mailgate - $@");
-print MAIL <<EOF;
-From: root\@localhost
-Subject: [example.com \#$id] test
-
-EOF
-close (MAIL);
-is ($? >> 8, 0, "The mail gateway exited normally");
-
-DBIx::SearchBuilder::Record::Cachable->FlushCache;
-
-$tick = RT::Ticket->new($RT::SystemUser);
-$tick->Load( $id );
-is( $tick->Id, $id, 'load correct ticket');
-is( $tick->Status, 'resolved', 'successfuly resolved ticket via email');
-is( $tick->Transactions->Count, 7, 'no superfluous transactions');
-
-};
-
-=cut
-
-# }}}
-
-1;
diff --git a/rt/lib/t/regression/07acl.t b/rt/lib/t/regression/07acl.t
deleted file mode 100644
index bb1ccdc..0000000
--- a/rt/lib/t/regression/07acl.t
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/usr/bin/perl -w
-
-use WWW::Mechanize;
-use HTTP::Cookies;
-
-use Test::More qw/no_plan/;
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-# Create a user with basically no rights, to start.
-my $user_obj = RT::User->new($RT::SystemUser);
-my ($ret, $msg) = $user_obj->LoadOrCreateByEmail('customer-'.$$.'@example.com');
-ok($ret, 'ACL test user creation');
-$user_obj->SetName('customer-'.$$);
-$user_obj->SetPrivileged(1);
-($ret, $msg) = $user_obj->SetPassword('customer');
-ok($ret, "ACL test password set. $msg");
-
-# Now test the web interface, making sure objects come and go as
-# required.
-
-my $cookie_jar = HTTP::Cookies->new;
-my $agent = WWW::Mechanize->new();
-
-# give the agent a place to stash the cookies
-
-$agent->cookie_jar($cookie_jar);
-
-
-# get the top page
-my $url = $RT::WebURL;
-$agent->get($url);
-
-is ($agent->{'status'}, 200, "Loaded a page - $RT::WebURL");
-# {{{ test a login
-
-# follow the link marked "Login"
-
-ok($agent->{form}->find_input('user'));
-
-ok($agent->{form}->find_input('pass'));
-ok ($agent->{'content'} =~ /username:/i);
-$agent->field( 'user' => 'customer-'.$$ );
-$agent->field( 'pass' => 'customer' );
-# the field isn't named, so we have to click link 0
-$agent->click(0);
-is($agent->{'status'}, 200, "Fetched the page ok");
-ok($agent->{'content'} =~ /Logout/i, "Found a logout link");
-
-# Test for absence of Configure and Preferences tabs.
-ok(!$agent->find_link( url => '/Admin/',
- text => 'Configuration'), "No config tab" );
-ok(!$agent->find_link( url => '/User/Prefs.html',
- text => 'Preferences'), "No prefs pane" );
-
-# Now test for their presence, one at a time. Sleep for a bit after
-# ACL changes, thanks to the 10s ACL cache.
-$user_obj->PrincipalObj->GrantRight(Right => 'ShowConfigTab');
-$agent->reload();
-ok($agent->{'content'} =~ /Logout/i, "Reloaded page successfully");
-ok($agent->find_link( url => '/Admin/',
- text => 'Configuration'), "Found config tab" );
-$user_obj->PrincipalObj->RevokeRight(Right => 'ShowConfigTab');
-$user_obj->PrincipalObj->GrantRight(Right => 'ModifySelf');
-$agent->reload();
-ok($agent->{'content'} =~ /Logout/i, "Reloaded page successfully");
-ok($agent->find_link( url => '/User/Prefs.html',
- text => 'Preferences'), "Found prefs pane" );
-$user_obj->PrincipalObj->RevokeRight(Right => 'ModifySelf');
-
-# Good. Now load the search page and test Load/Save Search.
-$agent->follow_link( url => '/Search/Build.html',
- text => 'Tickets');
-is($agent->{'status'}, 200, "Fetched search builder page");
-ok($agent->{'content'} !~ /Load saved search/i, "No search loading box");
-ok($agent->{'content'} !~ /Saved searches/i, "No saved searches box");
-
-$user_obj->PrincipalObj->GrantRight(Right => 'LoadSavedSearch');
-$agent->reload();
-ok($agent->{'content'} =~ /Load saved search/i, "Search loading box exists");
-ok($agent->{'content'} !~ /input\s+type=.submit.\s+name=.Save./i,
- "Still no saved searches box");
-
-$user_obj->PrincipalObj->GrantRight(Right => 'CreateSavedSearch');
-$agent->reload();
-ok($agent->{'content'} =~ /Load saved search/i,
- "Search loading box still exists");
-ok($agent->{'content'} =~ /input\s+type=.submit.\s+name=.Save./i,
- "Saved searches box exists");
-
-# Create a group, and a queue, so we can test limited user visibility
-# via SelectOwner.
-
-my $queue_obj = RT::Queue->new($RT::SystemUser);
-($ret, $msg) = $queue_obj->Create(Name => 'CustomerQueue',
- Description => 'queue for SelectOwner testing');
-ok($ret, "SelectOwner test queue creation. $msg");
-my $group_obj = RT::Group->new($RT::SystemUser);
-($ret, $msg) = $group_obj->CreateUserDefinedGroup(Name => 'CustomerGroup',
- Description => 'group for SelectOwner testing');
-ok($ret, "SelectOwner test group creation. $msg");
-
-# Add our customer to the customer group, and give it queue rights.
-($ret, $msg) = $group_obj->AddMember($user_obj->PrincipalObj->Id());
-ok($ret, "Added customer to its group. $msg");
-$group_obj->PrincipalObj->GrantRight(Right => 'OwnTicket',
- Object => $queue_obj);
-$group_obj->PrincipalObj->GrantRight(Right => 'SeeQueue',
- Object => $queue_obj);
-
-# Now. When we look at the search page we should be able to see
-# ourself in the list of possible owners.
-
-$agent->reload();
-ok($agent->form_name('BuildQuery'), "Yep, form is still there");
-my $input = $agent->current_form->find_input('ValueOfActor');
-ok(grep(/customer-$$/, $input->value_names()), "Found self in the actor listing");
-
-1;
diff --git a/rt/lib/t/regression/07rights.t b/rt/lib/t/regression/07rights.t
deleted file mode 100644
index 4764b49..0000000
--- a/rt/lib/t/regression/07rights.t
+++ /dev/null
@@ -1,110 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-
-use Test::More tests => 14;
-use RT;
-RT::LoadConfig();
-RT::Init();
-use RT::I18N;
-use strict;
-no warnings 'once';
-
-use RT::Queue;
-use RT::ACE;
-use RT::User;
-use RT::Group;
-use RT::Ticket;
-
-
-# clear all global right
-my $acl = RT::ACL->new($RT::SystemUser);
-$acl->Limit( FIELD => 'RightName', OPERATOR => '!=', VALUE => 'SuperUser' );
-$acl->LimitToObject( $RT::System );
-while( my $ace = $acl->Next ) {
- $ace->Delete;
-}
-
-# create new queue to be shure we don't mess with rights
-my $queue = RT::Queue->new($RT::SystemUser);
-my ($queue_id) = $queue->Create( Name => 'rights');
-ok( $queue_id, 'queue created for rights tests' );
-
-# new privileged user to check rights
-my $user = RT::User->new( $RT::SystemUser );
-my ($user_id) = $user->Create( Name => 'rights',
- EmailAddress => 'rights@localhost',
- Privileged => 1,
- Password => 'qwe123',
- );
-ok( !$user->HasRight( Right => 'OwnTicket', Object => $queue ), "user can't own ticket" );
-ok( !$user->HasRight( Right => 'ReplyToTicket', Object => $queue ), "user can't reply to ticket" );
-
-my $group = RT::Group->new( $RT::SystemUser );
-ok( $group->LoadQueueRoleGroup( Queue => $queue_id, Type=> 'Owner' ), "load queue owners role group" );
-my $ace = RT::ACE->new( $RT::SystemUser );
-my ($ace_id, $msg) = $group->PrincipalObj->GrantRight( Right => 'ReplyToTicket', Object => $queue );
-ok( $ace_id, "Granted queue owners role group with ReplyToTicket right: $msg" );
-ok( $group->PrincipalObj->HasRight( Right => 'ReplyToTicket', Object => $queue ), "role group can reply to ticket" );
-ok( !$user->HasRight( Right => 'ReplyToTicket', Object => $queue ), "user can't reply to ticket" );
-
-# new ticket
-my $ticket = RT::Ticket->new($RT::SystemUser);
-my ($ticket_id) = $ticket->Create( Queue => $queue_id, Subject => 'test');
-ok( $ticket_id, 'new ticket created' );
-is( $ticket->Owner, $RT::Nobody->Id, 'owner of the new ticket is nobody' );
-
-my $status;
-($status, $msg) = $user->PrincipalObj->GrantRight( Object => $queue, Right => 'OwnTicket' );
-ok( $status, "successfuly granted right: $msg" );
-ok( $user->HasRight( Right => 'OwnTicket', Object => $queue ), "user can own ticket" );
-
-($status, $msg) = $ticket->SetOwner( $user_id );
-ok( $status, "successfuly set owner: $msg" );
-is( $ticket->Owner, $user_id, "set correct owner" );
-
-ok( $user->HasRight( Right => 'ReplyToTicket', Object => $ticket ), "user is owner and can reply to ticket" );
-
diff --git a/rt/lib/t/regression/08web_cf_access.t b/rt/lib/t/regression/08web_cf_access.t
deleted file mode 100644
index 012d733..0000000
--- a/rt/lib/t/regression/08web_cf_access.t
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/usr/bin/perl -w
-use strict;
-
-use Test::More tests => 15;
-use RT;
-RT::LoadConfig;
-RT::Init;
-use Test::WWW::Mechanize;
-
-$RT::WebURL ||= 0; # avoid stupid warning
-my $BaseURL = $RT::WebURL;
-use constant ImageFile => $RT::MasonComponentRoot .'/NoAuth/images/bplogo.gif';
-use constant ImageFileContent => do {
- local $/;
- open my $fh, '<', ImageFile or die $!;
- binmode($fh);
- scalar <$fh>;
-};
-
-my $m = Test::WWW::Mechanize->new;
-isa_ok($m, 'Test::WWW::Mechanize');
-
-$m->get( $BaseURL."?user=root;pass=password" );
-$m->content_like(qr/Logout/, 'we did log in');
-$m->follow_link( text => 'Configuration' );
-$m->title_is(q/RT Administration/, 'admin screen');
-$m->follow_link( text => 'Custom Fields' );
-$m->title_is(q/Select a Custom Field/, 'admin-cf screen');
-$m->follow_link( text => 'New custom field' );
-$m->submit_form(
- form_name => "ModifyCustomField",
- fields => {
- TypeComposite => 'Image-0',
- LookupType => 'RT::Queue-RT::Ticket',
- Name => 'img',
- Description => 'img',
- },
-);
-$m->title_is(q/Created CustomField img/, 'admin-cf created');
-$m->follow_link( text => 'Queues' );
-$m->title_is(q/Admin queues/, 'admin-queues screen');
-$m->follow_link( text => 'General' );
-$m->title_is(q/Editing Configuration for queue General/, 'admin-queue: general');
-$m->follow_link( text => 'Ticket Custom Fields' );
-
-$m->title_is(q/Edit Custom Fields for General/, 'admin-queue: general tcf');
-$m->form_name('EditCustomFields');
-
-# Sort by numeric IDs in names
-my @names = map { $_->[1] }
- sort { $a->[0] <=> $b->[0] }
- map { /Object-1-CF-(\d+)/ ? [ $1 => $_ ] : () }
- map $_->name, $m->current_form->inputs;
-my $tcf = pop(@names);
-$m->field( $tcf => 1 ); # Associate the new CF with this queue
-$m->field( $_ => undef ) for @names; # ...and not any other. ;-)
-$m->submit;
-
-$m->content_like( qr/Object created/, 'TCF added to the queue' );
-
-$m->submit_form(
- form_name => "CreateTicketInQueue",
- fields => { Queue => 'General' },
-);
-
-$m->content_like(qr/Upload multiple images/, 'has a upload image field');
-
-$tcf =~ /(\d+)$/ or die "Hey this is impossible dude";
-my $upload_field = "Object-RT::Ticket--CustomField-$1-Upload";
-
-$m->submit_form(
- form_name => "TicketCreate",
- fields => {
- $upload_field => ImageFile,
- Subject => 'testing img cf creation',
- },
-);
-
-$m->content_like(qr/Ticket \d+ created/, "a ticket is created succesfully");
-
-my $id = $1 if $m->content =~ /Ticket (\d+) created/;
-
-$m->title_like(qr/testing img cf creation/, "its title is the Subject");
-
-$m->follow_link( text => 'bplogo.gif' );
-$m->content_is(ImageFileContent, "it links to the uploaded image");
-
-$m->get( $BaseURL );
-
-$m->follow_link( text => 'Tickets' );
-$m->follow_link( text => 'New Query' );
-
-$m->title_is(q/Query Builder/, 'Query building');
-$m->submit_form(
- form_name => "BuildQuery",
- fields => {
- idOp => '=',
- ValueOfid => $id,
- ValueOfQueue => 'General',
- },
- button => 'AddClause',
-);
-
-$m->form_name('BuildQuery');
-
-my $col = ($m->current_form->find_input('SelectDisplayColumns'))[-1];
-$col->value( ($col->possible_values)[-1] );
-
-$m->click('AddCol');
-
-$m->form_name('BuildQuery');
-$m->click('DoSearch');
-
-$m->follow_link( text_regex => qr/bplogo\.gif/ );
-$m->content_is(ImageFileContent, "it links to the uploaded image");
-
-__END__
-[FC] Bulk Update does not have custom fields.
diff --git a/rt/lib/t/regression/09record_cf_api.t b/rt/lib/t/regression/09record_cf_api.t
deleted file mode 100644
index 1428a28..0000000
--- a/rt/lib/t/regression/09record_cf_api.t
+++ /dev/null
@@ -1,188 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use warnings FATAL => 'all';
-use Test::More tests => 131;
-
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-# Before we get going, ditch all object_cfs; this will remove
-# all custom fields systemwide;
-my $object_cfs = RT::ObjectCustomFields->new($RT::SystemUser);
-$object_cfs->UnLimit();
-while (my $ocf = $object_cfs->Next) {
- $ocf->Delete();
-}
-
-
-my $queue = RT::Queue->new( $RT::SystemUser );
-$queue->Create( Name => 'RecordCustomFields-'.$$ );
-ok ($queue->id, "Created the queue");
-
-my $ticket = RT::Ticket->new( $RT::SystemUser );
-$ticket->Create(
- Queue => $queue->Id,
- Requestor => 'root@localhost',
- Subject => 'RecordCustomFields1',
-);
-
-my $cfs = $ticket->CustomFields;
-is( $cfs->Count, 0 );
-
-# Check that record has no any CF values yet {{{
-my $cfvs = $ticket->CustomFieldValues;
-is( $cfvs->Count, 0 );
-is( $ticket->FirstCustomFieldValue, undef );
-
-my $local_cf1 = RT::CustomField->new( $RT::SystemUser );
-$local_cf1->Create( Name => 'RecordCustomFields1-'.$$, Type => 'SelectSingle', Queue => $queue->id );
-$local_cf1->AddValue( Name => 'RecordCustomFieldValues11' );
-$local_cf1->AddValue( Name => 'RecordCustomFieldValues12' );
-
-my $local_cf2 = RT::CustomField->new( $RT::SystemUser );
-$local_cf2->Create( Name => 'RecordCustomFields2-'.$$, Type => 'SelectSingle', Queue => $queue->id );
-$local_cf2->AddValue( Name => 'RecordCustomFieldValues21' );
-$local_cf2->AddValue( Name => 'RecordCustomFieldValues22' );
-
-my $global_cf3 = RT::CustomField->new( $RT::SystemUser );
-$global_cf3->Create( Name => 'RecordCustomFields3-'.$$, Type => 'SelectSingle', Queue => 0 );
-$global_cf3->AddValue( Name => 'RecordCustomFieldValues31' );
-$global_cf3->AddValue( Name => 'RecordCustomFieldValues32' );
-
-
-my @custom_fields = ($local_cf1, $local_cf2, $global_cf3);
-
-
-$cfs = $ticket->CustomFields;
-is( $cfs->Count, 3 );
-
-# Check that record has no any CF values yet {{{
-$cfvs = $ticket->CustomFieldValues;
-is( $cfvs->Count, 0 );
-is( $ticket->FirstCustomFieldValue, undef );
-
-# CF with ID -1 shouldnt exist at all
-$cfvs = $ticket->CustomFieldValues( -1 );
-is( $cfvs->Count, 0 );
-is( $ticket->FirstCustomFieldValue( -1 ), undef );
-
-$cfvs = $ticket->CustomFieldValues( 'SomeUnexpedCustomFieldName' );
-is( $cfvs->Count, 0 );
-is( $ticket->FirstCustomFieldValue( 'SomeUnexpedCustomFieldName' ), undef );
-
-for (@custom_fields) {
- $cfvs = $ticket->CustomFieldValues( $_->id );
- is( $cfvs->Count, 0 );
-
- $cfvs = $ticket->CustomFieldValues( $_->Name );
- is( $cfvs->Count, 0 );
- is( $ticket->FirstCustomFieldValue( $_->id ), undef );
- is( $ticket->FirstCustomFieldValue( $_->Name ), undef );
-}
-# }}}
-
-# try to add field value with fields that do not exist {{{
-my ($status, $msg) = $ticket->AddCustomFieldValue( Field => -1 , Value => 'foo' );
-ok(!$status, "shouldn't add value" );
-($status, $msg) = $ticket->AddCustomFieldValue( Field => 'SomeUnexpedCustomFieldName' , Value => 'foo' );
-ok(!$status, "shouldn't add value" );
-# }}}
-
-# {{{
-SKIP: {
-
- skip "TODO: We want fields that are not allowed to set unexpected values", 10;
- for (@custom_fields) {
- ($status, $msg) = $ticket->AddCustomFieldValue( Field => $_ , Value => 'SomeUnexpectedCFValue' );
- ok( !$status, 'value doesn\'t exist');
-
- ($status, $msg) = $ticket->AddCustomFieldValue( Field => $_->id , Value => 'SomeUnexpectedCFValue' );
- ok( !$status, 'value doesn\'t exist');
-
- ($status, $msg) = $ticket->AddCustomFieldValue( Field => $_->Name , Value => 'SomeUnexpectedCFValue' );
- ok( !$status, 'value doesn\'t exist');
- }
-
- # Let check that we did not add value to be sure
- # using only FirstCustomFieldValue sub because
- # we checked other variants allready
- for (@custom_fields) {
- is( $ticket->FirstCustomFieldValue( $_->id ), undef );
- }
-
-}
-# Add some values to our custom fields
-for (@custom_fields) {
- # this should be tested elsewhere
- $_->AddValue( Name => 'Foo' );
- $_->AddValue( Name => 'Bar' );
-}
-
-my $test_add_delete_cycle = sub {
- my $cb = shift;
- for (@custom_fields) {
- ($status, $msg) = $ticket->AddCustomFieldValue( Field => $cb->($_) , Value => 'Foo' );
- ok( $status, "message: $msg");
- }
-
- # does it exist?
- $cfvs = $ticket->CustomFieldValues;
- is( $cfvs->Count, 3, "We found all three custom fields on our ticket" );
- for (@custom_fields) {
- $cfvs = $ticket->CustomFieldValues( $_->id );
- is( $cfvs->Count, 1 , "we found one custom field when searching by id");
-
- $cfvs = $ticket->CustomFieldValues( $_->Name );
- is( $cfvs->Count, 1 , " We found one custom field when searching by name for " . $_->Name);
- is( $ticket->FirstCustomFieldValue( $_->id ), 'Foo' , "first value by id is foo");
- is( $ticket->FirstCustomFieldValue( $_->Name ), 'Foo' , "first value by name is foo");
- }
- # because our CFs are SingleValue then new value addition should override
- for (@custom_fields) {
- ($status, $msg) = $ticket->AddCustomFieldValue( Field => $_ , Value => 'Bar' );
- ok( $status, "message: $msg");
- }
- $cfvs = $ticket->CustomFieldValues;
- is( $cfvs->Count, 3 );
- for (@custom_fields) {
- $cfvs = $ticket->CustomFieldValues( $_->id );
- is( $cfvs->Count, 1 );
-
- $cfvs = $ticket->CustomFieldValues( $_->Name );
- is( $cfvs->Count, 1 );
- is( $ticket->FirstCustomFieldValue( $_->id ), 'Bar' );
- is( $ticket->FirstCustomFieldValue( $_->Name ), 'Bar' );
- }
- # delete it
- for (@custom_fields ) {
- ($status, $msg) = $ticket->DeleteCustomFieldValue( Field => $_ , Value => 'Bar' );
- ok( $status, "Deleted a custom field value 'Bar' for field ".$_->id.": $msg");
- }
- $cfvs = $ticket->CustomFieldValues;
- is( $cfvs->Count, 0, "The ticket (".$ticket->id.") no longer has any custom field values" );
- for (@custom_fields) {
- $cfvs = $ticket->CustomFieldValues( $_->id );
- is( $cfvs->Count, 0, $ticket->id." has no values for cf ".$_->id );
-
- $cfvs = $ticket->CustomFieldValues( $_->Name );
- is( $cfvs->Count, 0 , $ticket->id." has no values for cf '".$_->Name. "'" );
- is( $ticket->FirstCustomFieldValue( $_->id ), undef , "There is no first custom field value when loading by id" );
- is( $ticket->FirstCustomFieldValue( $_->Name ), undef, "There is no first custom field value when loading by Name" );
- }
-};
-
-# lets test cycle via CF id
-$test_add_delete_cycle->( sub { return $_[0]->id } );
-# lets test cycle via CF object reference
-$test_add_delete_cycle->( sub { return $_[0] } );
-
-#SKIP: {
-# skip "TODO: should we add CF values to objects via CF Name?", 48;
-# names are not unique
- # lets test cycle via CF Name
-# $test_add_delete_cycle->( sub { return $_[0]->Name } );
-#}
-
-
diff --git a/rt/lib/t/regression/10merge.t b/rt/lib/t/regression/10merge.t
deleted file mode 100644
index 8bca952..0000000
--- a/rt/lib/t/regression/10merge.t
+++ /dev/null
@@ -1,72 +0,0 @@
-#!/usr/bin/perl
-
-use warnings;
-use strict;
-
-
-#
-# This test script validates that when merging two tickets, the comments from both tickets
-# are integrated into the new ticket
-
-use Test::More tests => 13;
-use RT;
-RT::LoadConfig;
-RT::Init;
-
-use_ok('RT::Ticket');
-use_ok('RT::Queue');
-
-my $queue = RT::Queue->new($RT::SystemUser);
-my ($id,$msg) = $queue->Create(Name => 'MergeTest-'.rand(25));
-ok ($id,$msg);
-
-my $t1 = RT::Ticket->new($RT::SystemUser);
-my ($tid,$transid, $t1msg) =$t1->Create ( Queue => $queue->Name, Subject => 'Merge test. orig');
-ok ($tid, $t1msg);
-($id, $msg) = $t1->Comment(Content => 'This is a Comment on the original');
-ok($id,$msg);
-
-my $txns = $t1->Transactions;
-my $Comments = 0;
-while (my $txn = $txns->Next) {
-$Comments++ if ($txn->Type eq 'Comment');
-}
-is($Comments,1, "our first ticket has only one Comment");
-
-my $t2 = RT::Ticket->new($RT::SystemUser);
-my ($t2id,$t2transid, $t2msg) =$t2->Create ( Queue => $queue->Name, Subject => 'Merge test. duplicate');
-ok ($t2id, $t2msg);
-
-
-
-($id, $msg) = $t2->Comment(Content => 'This is a commet on the duplicate');
-ok($id,$msg);
-
-
-$txns = $t2->Transactions;
- $Comments = 0;
-while (my $txn = $txns->Next) {
- $Comments++ if ($txn->Type eq 'Comment');
-}
-is($Comments,1, "our second ticket has only one Comment");
-
-($id, $msg) = $t1->Comment(Content => 'This is a second Comment on the original');
-ok($id,$msg);
-
-$txns = $t1->Transactions;
-$Comments = 0;
-while (my $txn = $txns->Next) {
- $Comments++ if ($txn->Type eq 'Comment');
-}
-is($Comments,2, "our first ticket now has two Comments");
-
-($id,$msg) = $t2->MergeInto($t1->id);
-
-ok($id,$msg);
-$txns = $t1->Transactions;
-$Comments = 0;
-while (my $txn = $txns->Next) {
- $Comments++ if ($txn->Type eq 'Comment');
-}
-is($Comments,3, "our first ticket now has three Comments - we merged safely");
-
diff --git a/rt/lib/t/regression/11-template-insert.t b/rt/lib/t/regression/11-template-insert.t
deleted file mode 100644
index 8681ce6..0000000
--- a/rt/lib/t/regression/11-template-insert.t
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/usr/bin/perl
-
-use warnings;
-use strict;
-
-use Test::More tests => 7;
-
-use RT;
-RT::LoadConfig();
-RT::Init;
-
-
-# This tiny little test script triggers an interaction bug between DBD::Oracle 1.16, SB 1.15 and RT 3.4
-
-use_ok('RT::Template');
-my $template = RT::Template->new($RT::SystemUser);
-
-isa_ok($template, 'RT::Template');
-my ($val,$msg) = $template->Create(Queue => 1,
- Name => 'InsertTest',
- Content => 'This is template content');
-ok($val,$msg);
-is($template->Name, 'InsertTest');
-is($template->Content, 'This is template content', "We created the object right");
-($val, $msg) = $template->SetContent( 'This is new template content');
-ok($val,$msg);
-is($template->Content, 'This is new template content', "We managed to _Set_ the content");
diff --git a/rt/lib/t/regression/12-search.t b/rt/lib/t/regression/12-search.t
deleted file mode 100644
index 9cc4aa4..0000000
--- a/rt/lib/t/regression/12-search.t
+++ /dev/null
@@ -1,235 +0,0 @@
-#!/opt/perl/bin/perl -w
-
-# tests relating to searching. Especially around custom fields, and
-# corner cases.
-
-use strict;
-use warnings;
-
-use Test::More tests => 35;
-use_ok('RT');
-RT::LoadConfig();
-RT::Init();
-
-# setup the queue
-
-my $q = RT::Queue->new($RT::SystemUser);
-my $queue = 'SearchTests-'.$$;
-$q->Create(Name => $queue);
-ok ($q->id, "Created the queue");
-
-
-# and setup the CFs
-# we believe the Type shouldn't matter.
-
-my $cf = RT::CustomField->new($RT::SystemUser);
-$cf->Create(Name => 'SearchTest', Type => 'Freeform', MaxValues => 0, Queue => $q->id);
-ok($cf->id, "Created the SearchTest CF");
-my $cflabel = "CustomField-".$cf->id;
-
-my $cf2 = RT::CustomField->new($RT::SystemUser);
-$cf2->Create(Name => 'SearchTest2', Type => 'Freeform', MaxValues => 0, Queue => $q->id);
-ok($cf2->id, "Created the SearchTest2 CF");
-my $cflabel2 = "CustomField-".$cf2->id;
-
-my $cf3 = RT::CustomField->new($RT::SystemUser);
-$cf3->Create(Name => 'SearchTest3', Type => 'Freeform', MaxValues => 0, Queue => $q->id);
-ok($cf3->id, "Created the SearchTest3 CF");
-my $cflabel3 = "CustomField-".$cf3->id;
-
-
-# setup some tickets
-# we'll need a small pile of them, to test various combinations and nulls.
-# there's probably a way to think harder and do this with fewer
-
-
-my $t1 = RT::Ticket->new($RT::SystemUser);
-my ( $id, undef $msg ) = $t1->Create(
- Queue => $q->id,
- Subject => 'SearchTest1',
- Requestor => ['search1@example.com'],
- $cflabel => 'foo1',
- $cflabel2 => 'bar1',
- $cflabel3 => 'qux1',
-);
-ok( $id, $msg );
-
-
-my $t2 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t2->Create(
- Queue => $q->id,
- Subject => 'SearchTest2',
- Requestor => ['search2@example.com'],
-# $cflabel => 'foo2',
- $cflabel2 => 'bar2',
- $cflabel3 => 'qux2',
-);
-ok( $id, $msg );
-
-my $t3 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t3->Create(
- Queue => $q->id,
- Subject => 'SearchTest3',
- Requestor => ['search3@example.com'],
- $cflabel => 'foo3',
-# $cflabel2 => 'bar3',
- $cflabel3 => 'qux3',
-);
-ok( $id, $msg );
-
-my $t4 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t4->Create(
- Queue => $q->id,
- Subject => 'SearchTest4',
- Requestor => ['search4@example.com'],
- $cflabel => 'foo4',
- $cflabel2 => 'bar4',
-# $cflabel3 => 'qux4',
-);
-ok( $id, $msg );
-
-my $t5 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t5->Create(
- Queue => $q->id,
-# Subject => 'SearchTest5',
- Requestor => ['search5@example.com'],
- $cflabel => 'foo5',
- $cflabel2 => 'bar5',
- $cflabel3 => 'qux5',
-);
-ok( $id, $msg );
-
-my $t6 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t6->Create(
- Queue => $q->id,
- Subject => 'SearchTest6',
-# Requestor => ['search6@example.com'],
- $cflabel => 'foo6',
- $cflabel2 => 'bar6',
- $cflabel3 => 'qux6',
-);
-ok( $id, $msg );
-
-my $t7 = RT::Ticket->new($RT::SystemUser);
-( $id, undef, $msg ) = $t7->Create(
- Queue => $q->id,
- Subject => 'SearchTest7',
- Requestor => ['search7@example.com'],
-# $cflabel => 'foo7',
-# $cflabel2 => 'bar7',
- $cflabel3 => 'qux7',
-);
-ok( $id, $msg );
-
-# we have tickets. start searching
-my $tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue'");
-is($tix->Count, 7, "found all the tickets");
-
-
-# very simple searches. both CF and normal
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest = 'foo1'");
-is($tix->Count, 1, "matched identical subject");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest LIKE 'foo1'");
-is($tix->Count, 1, "matched LIKE subject");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest = 'foo'");
-is($tix->Count, 0, "IS a regexp match");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest LIKE 'foo'");
-is($tix->Count, 5, "matched LIKE subject");
-
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest IS NULL");
-
- is($tix->Count, 2, "IS null CF");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Requestors LIKE 'search1'");
-is($tix->Count, 1, "LIKE requestor");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Requestors = 'search1\@example.com'");
-is($tix->Count, 1, "IS requestor");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Requestors LIKE 'search'");
-is($tix->Count, 6, "LIKE requestor");
-
-TODO: {
-
- local $TODO = "Can't search for 'no requestor";
- $tix = RT::Tickets->new($RT::SystemUser);
- $tix->FromSQL("Queue = '$queue' AND Requestors IS NULL");
- is($tix->Count, 1, "Search for no requestor");
-
-};
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Subject = 'SearchTest1'");
-is($tix->Count, 1, "IS subject");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Subject LIKE 'SearchTest1'");
-is($tix->Count, 1, "LIKE subject");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Subject = ''");
-is($tix->Count, 1, "found one ticket");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Subject LIKE 'SearchTest'");
-is($tix->Count, 6, "found two ticket");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND Subject LIKE 'qwerty'");
-is($tix->Count, 0, "found zero ticket");
-
-
-
-
-# various combinations
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest LIKE 'foo' AND CF.SearchTest2 LIKE 'bar1'");
-is($tix->Count, 1, "LIKE cf and LIKE cf");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest = 'foo1' AND CF.SearchTest2 = 'bar1'");
-is($tix->Count, 1, "is cf and is cf");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest = 'foo' AND CF.SearchTest2 LIKE 'bar1'");
-is($tix->Count, 0, "is cf and like cf");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest LIKE 'foo' AND CF.SearchTest2 LIKE 'bar' AND CF.SearchTest3 LIKE 'qux'");
-is($tix->Count, 3, "like cf and like cf and like cf");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest LIKE 'foo' AND CF.SearchTest2 LIKE 'bar' AND CF.SearchTest3 LIKE 'qux6'");
-is($tix->Count, 1, "like cf and like cf and is cf");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest LIKE 'foo' AND Subject LIKE 'SearchTest'");
-is($tix->Count, 4, "like cf and like subject");
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("CF.SearchTest IS NULL AND CF.SearchTest2 = 'bar2'");
-
- is($tix->Count, 1, "null cf and is cf");
-
-
-$tix = RT::Tickets->new($RT::SystemUser);
-$tix->FromSQL("Queue = '$queue' AND CF.SearchTest IS NULL AND CF.SearchTest2 IS NULL");
-
- is($tix->Count, 1, "null cf and null cf");
-
-
diff --git a/rt/lib/t/regression/13-attribute-tests.t b/rt/lib/t/regression/13-attribute-tests.t
deleted file mode 100644
index 945bbcf..0000000
--- a/rt/lib/t/regression/13-attribute-tests.t
+++ /dev/null
@@ -1,67 +0,0 @@
-
-use Test::More tests => 24;
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-
-my $runid = rand(200);
-
-my $attribute = "squelch-$runid";
-
-ok(require RT::Attributes);
-
-my $user = RT::User->new($RT::SystemUser);
-ok (UNIVERSAL::isa($user, 'RT::User'));
-my ($id,$msg) = $user->Create(Name => 'attrtest-'.$runid);
-ok ($id, $msg);
-ok($user->id, "Created a test user");
-
-ok(1, $user->Attributes->BuildSelectQuery);
-my $attr = $user->Attributes;
-
-ok(1, $attr->BuildSelectQuery);
-
-
-ok (UNIVERSAL::isa($attr,'RT::Attributes'), 'got the attributes object');
-
-($id, $msg) = $user->AddAttribute(Name => 'TestAttr', Content => 'The attribute has content');
-ok ($id, $msg);
-is ($attr->Count,1, " One attr after adidng a first one");
-($id, $msg) = $attr->DeleteEntry(Name => $runid);
-ok(!$id, "Deleted non-existant entry - $msg");
-is ($attr->Count,1, "1 attr after deleting an empty attr");
-
-my @names = $attr->Names;
-is ("@names", "TestAttr");
-
-
-($id, $msg) = $user->AddAttribute(Name => $runid, Content => "First");
-
-is ($attr->Count,2, " Two attrs after adding an attribute named $runid");
-($id, $msg) = $user->AddAttribute(Name => $runid, Content => "Second");
-ok($id, $msg);
-
-is ($attr->Count,3, " Three attrs after adding a secondvalue to $runid");
-($id, $msg) = $attr->DeleteEntry(Name => $runid, Content => "First");
-ok($id, $msg);
-is ($attr->Count,2);
-
-#$attr->_DoSearch();
-($id, $msg) = $attr->DeleteEntry(Name => $runid, Content => "Second");
-ok($id, $msg);
-is ($attr->Count,1);
-
-#$attr->_DoSearch();
-ok(1, $attr->BuildSelectQuery);
-($id, $msg) = $attr->DeleteEntry(Name => "moose");
-ok(!$id, "Deleted non-existant entry - $msg");
-is ($attr->Count,1);
-
-ok(1, $attr->BuildSelectQuery);
-@names = $attr->Names;
-is("@names", "TestAttr");
-
-
-
-1;
diff --git a/rt/lib/t/regression/14merge.t b/rt/lib/t/regression/14merge.t
deleted file mode 100644
index c916251..0000000
--- a/rt/lib/t/regression/14merge.t
+++ /dev/null
@@ -1,31 +0,0 @@
-
-use Test::More tests => '6';
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-# when you try to merge duplicate links on postgres, eveyrything goes to hell due to referential integrity constraints.
-
-
-my $t = RT::Ticket->new($RT::SystemUser);
-$t->Create(Subject => 'Main', Queue => 'general');
-
-ok ($t->id);
-my $t2 = RT::Ticket->new($RT::SystemUser);
-$t2->Create(Subject => 'Second', Queue => 'general');
-ok ($t2->id);
-
-my $t3 = RT::Ticket->new($RT::SystemUser);
-$t3->Create(Subject => 'Third', Queue => 'general');
-
-ok ($t3->id);
-
-my ($id,$val);
-($id,$val) = $t->AddLink(Type => 'DependsOn', Target => $t3->id);
-ok($id,$val);
-($id,$val) = $t2->AddLink(Type => 'DependsOn', Target => $t3->id);
-ok($id,$val);
-
-
-($id,$val) = $t->MergeInto($t2->id);
-ok($id,$val);
diff --git a/rt/lib/t/regression/15cf_single_values_are_single.t b/rt/lib/t/regression/15cf_single_values_are_single.t
deleted file mode 100644
index dcfa2e5..0000000
--- a/rt/lib/t/regression/15cf_single_values_are_single.t
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/perl
-use warnings;
-use strict;
-use Test::More tests => 8;
-
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-
-my $q = RT::Queue->new($RT::SystemUser);
-my ($id,$msg) =$q->Create(Name => "CF-Single-".$$);
-ok($id,$msg);
-
-my $cf = RT::CustomField->new($RT::SystemUser);
-($id,$msg) = $cf->Create(Name => 'Single-'.$$, Type => 'Select', MaxValues => '1', Queue => $q->id);
-ok($id,$msg);
-
-
-($id,$msg) =$cf->AddValue(Name => 'First');
-ok($id,$msg);
-
-($id,$msg) =$cf->AddValue(Name => 'Second');
-ok($id,$msg);
-
-
-my $t = RT::Ticket->new($RT::SystemUser);
-($id,undef,$msg) = $t->Create(Queue => $q->id,
- Subject => 'CF Test');
-
-ok($id,$msg);
-is($t->CustomFieldValues($cf->id)->Count, 0, "No values yet");
-$t->AddCustomFieldValue(Field => $cf->id, Value => 'First');
-is($t->CustomFieldValues($cf->id)->Count, 1, "One now");
-
-$t->AddCustomFieldValue(Field => $cf->id, Value => 'Second');
-is($t->CustomFieldValues($cf->id)->Count, 1, "Still one");
-
-1;
diff --git a/rt/lib/t/regression/16-transaction_cf_tests.t b/rt/lib/t/regression/16-transaction_cf_tests.t
deleted file mode 100644
index 9e1e86c..0000000
--- a/rt/lib/t/regression/16-transaction_cf_tests.t
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/perl
-
-use warnings;
-use strict;
-use Data::Dumper;
-use Test::More qw/no_plan/;
-
-use_ok('RT');
-use_ok('RT::Transactions');
-RT::LoadConfig();
-RT::Init();
-
-my $q = RT::Queue->new($RT::SystemUser);
-my ($id,$msg) = $q->Create( Name => 'TxnCFTest'.$$);
-ok($id,$msg);
-
-my $cf = RT::CustomField->new($RT::SystemUser);
-($id,$msg) = $cf->Create(Name => 'Txnfreeform-'.$$, Type => 'Freeform', MaxValues => '0', LookupType => RT::Transaction->CustomFieldLookupType );
-
-ok($id,$msg);
-
-($id,$msg) = $cf->AddToObject($q);
-
-ok($id,$msg);
-
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-
-my $transid;
-($id,$transid, $msg) = $ticket->Create(Queue => $q->id,
- Subject => 'TxnCF test',
- );
-ok($id,$msg);
-
-my $trans = RT::Transaction->new($RT::SystemUser);
-$trans->Load($transid);
-
-is($trans->ObjectId,$id);
-is ($trans->ObjectType, 'RT::Ticket');
-is ($trans->Type, 'Create');
-my $txncfs = $trans->CustomFields;
-is ($txncfs->Count, 1, "We have one custom field");
-my $txn_cf = $txncfs->First;
-is ($txn_cf->id, $cf->id, "It's the right custom field");
-my $values = $trans->CustomFieldValues($txn_cf->id);
-is ($values->Count, 0, "It has no values");
-
-# Old API
-my %cf_updates = ( 'CustomField-'.$cf->id => 'Testing');
-$trans->UpdateCustomFields( ARGSRef => \%cf_updates);
-
- $values = $trans->CustomFieldValues($txn_cf->id);
-is ($values->Count, 1, "It has one value");
-
-# New API
-
-$trans->UpdateCustomFields( 'CustomField-'.$cf->id => 'Test two');
- $values = $trans->CustomFieldValues($txn_cf->id);
-is ($values->Count, 2, "it has two values");
-
-# TODO ok(0, "Should updating custom field values remove old values?");
diff --git a/rt/lib/t/regression/17multiple_deleg_revocation.t b/rt/lib/t/regression/17multiple_deleg_revocation.t
deleted file mode 100644
index 1ed0404..0000000
--- a/rt/lib/t/regression/17multiple_deleg_revocation.t
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/perl -w
-
-use Test::More qw(no_plan);
-
-use RT;
-
-ok( RT::LoadConfig, "Locating config files" );
-ok( RT::Init, "Basic initialization and DB connectivity" );
-
-my ($u1, $g1, $pg1, $pg2, $ace, @groups, @users, @principals);
-@groups = (\$g1, \$pg1, \$pg2);
-@users = (\$u1);
-@principals = (@groups, @users);
-
-my($ret, $msg);
-
-$u1 = RT::User->new($RT::SystemUser);
-( $ret, $msg ) = $u1->LoadOrCreateByEmail('delegtest1@example.com');
-ok( $ret, "Load / Create test user 1: $msg" );
-$u1->SetPrivileged(1);
-
-$g1 = RT::Group->new($RT::SystemUser);
-( $ret, $msg) = $g1->LoadUserDefinedGroup('dg1');
-unless ($ret) {
- ( $ret, $msg ) = $g1->CreateUserDefinedGroup( Name => 'dg1' );
-}
-$pg1 = RT::Group->new($RT::SystemUser);
-( $ret, $msg ) = $pg1->LoadPersonalGroup( Name => 'dpg1',
- User => $u1->PrincipalId );
-unless ($ret) {
- ( $ret, $msg ) = $pg1->CreatePersonalGroup( Name => 'dpg1',
- PrincipalId => $u1->PrincipalId );
-}
-ok( $ret, "Load / Create test personal group 1: $msg" );
-$pg2 = RT::Group->new($RT::SystemUser);
-( $ret, $msg ) = $pg2->LoadPersonalGroup( Name => 'dpg2',
- User => $u1->PrincipalId );
-unless ($ret) {
- ( $ret, $msg ) = $pg2->CreatePersonalGroup( Name => 'dpg2',
- PrincipalId => $u1->PrincipalId );
-}
-ok( $ret, "Load / Create test personal group 2: $msg" );
-
-clear_acls_and_groups();
-
-( $ret, $msg ) = $u1->PrincipalObj->GrantRight( Right => 'DelegateRights' );
-ok( $ret, "Grant DelegateRights to u1: $msg" );
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'ShowConfigTab' );
-ok( $ret, "Grant ShowConfigTab to g1: $msg" );
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'ShowConfigTab',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g1->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg2->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg2: $msg" );
-
-ok(( $pg1->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System ) and
- $pg2->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal groups have ShowConfigTab right after delegation" );
-
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete test user 1 from g1: $msg" );
-
-ok( not( $pg1->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal group 1 lacks ShowConfigTab after user removed from g1" );
-ok( not( $pg2->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal group 2 lacks ShowConfigTab after user removed from g1" );
-
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg2->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg2: $msg" );
-
-ok(( $pg1->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System ) and
- $pg2->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal groups have ShowConfigTab right after delegation" );
-
-( $ret, $msg ) = $g1->PrincipalObj->RevokeRight( Right => 'ShowConfigTab' );
-ok( $ret, "Revoke ShowConfigTab from g1: $msg" );
-
-ok( not( $pg1->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal group 1 lacks ShowConfigTab after user removed from g1" );
-ok( not( $pg2->PrincipalObj->HasRight( Right => 'ShowConfigTab',
- Object => $RT::System )),
- "Test personal group 2 lacks ShowConfigTab after user removed from g1" );
-
-
-
-#######
-
-sub clear_acls_and_groups {
- # Revoke all rights granted to our cast
- my $acl = RT::ACL->new($RT::SystemUser);
- foreach (@principals) {
- $acl->LimitToPrincipal(Type => $$_->PrincipalObj->PrincipalType,
- Id => $$_->PrincipalObj->Id);
- }
- while (my $ace = $acl->Next()) {
- $ace->Delete();
- }
-
- # Remove all group memberships
- my $members = RT::GroupMembers->new($RT::SystemUser);
- foreach (@groups) {
- $members->LimitToMembersOfGroup( $$_->PrincipalId );
- }
- while (my $member = $members->Next()) {
- $member->Delete();
- }
-
- $acl->RedoSearch();
- ok( $acl->Count() == 0,
- "All principals have no rights after clearing ACLs" );
- $members->RedoSearch();
- ok( $members->Count() == 0,
- "All groups have no members after clearing groups" );
-}
diff --git a/rt/lib/t/regression/18stale_delegations_cleanup.t b/rt/lib/t/regression/18stale_delegations_cleanup.t
deleted file mode 100644
index 84e666e..0000000
--- a/rt/lib/t/regression/18stale_delegations_cleanup.t
+++ /dev/null
@@ -1,458 +0,0 @@
-#!/usr/bin/perl -w
-
-# Regression test suite for http://rt3.fsck.com/Ticket/Display.html?id=6184
-# and related corner cases related to cleanup of delegated ACEs when
-# the delegator loses the right to delegate. This causes complexities
-# due to the fact that multiple ACEs can grant different delegation
-# rights to a principal, and because DelegateRights and SuperUser can
-# themselves be delegated.
-
-# The case where the "parent" delegated ACE is removed is handled in
-# the embedded regression tests in lib/RT/ACE_Overlay.pm .
-
-use Test::More qw(no_plan);
-
-use RT;
-
-ok( RT::LoadConfig, "Locating config files" );
-ok( RT::Init, "Basic initialization and DB connectivity" );
-
-my ($u1, $u2, $g1, $g2, $g3, $pg1, $pg2, $ace, @groups, @users, @principals);
-@groups = (\$g1, \$g2, \$g3, \$pg1, \$pg2);
-@users = (\$u1, \$u2);
-@principals = (@groups, @users);
-
-my($ret, $msg);
-
-$u1 = RT::User->new($RT::SystemUser);
-( $ret, $msg ) = $u1->LoadOrCreateByEmail('delegtest1@example.com');
-ok( $ret, "Load / Create test user 1: $msg" );
-$u1->SetPrivileged(1);
-$u2 = RT::User->new($RT::SystemUser);
-( $ret, $msg ) = $u2->LoadOrCreateByEmail('delegtest2@example.com');
-ok( $ret, "Load / Create test user 2: $msg" );
-$u2->SetPrivileged(1);
-$g1 = RT::Group->new($RT::SystemUser);
-( $ret, $msg) = $g1->LoadUserDefinedGroup('dg1');
-unless ($ret) {
- ( $ret, $msg ) = $g1->CreateUserDefinedGroup( Name => 'dg1' );
-}
-ok( $ret, "Load / Create test group 1: $msg" );
-$g2 = RT::Group->new($RT::SystemUser);
-( $ret, $msg) = $g2->LoadUserDefinedGroup('dg2');
-unless ($ret) {
- ( $ret, $msg ) = $g2->CreateUserDefinedGroup( Name => 'dg2' );
-}
-ok( $ret, "Load / Create test group 2: $msg" );
-$g3 = RT::Group->new($RT::SystemUser);
-( $ret, $msg) = $g3->LoadUserDefinedGroup('dg3');
-unless ($ret) {
- ( $ret, $msg ) = $g3->CreateUserDefinedGroup( Name => 'dg3' );
-}
-ok( $ret, "Load / Create test group 3: $msg" );
-$pg1 = RT::Group->new($RT::SystemUser);
-( $ret, $msg ) = $pg1->LoadPersonalGroup( Name => 'dpg1',
- User => $u1->PrincipalId );
-unless ($ret) {
- ( $ret, $msg ) = $pg1->CreatePersonalGroup( Name => 'dpg1',
- PrincipalId => $u1->PrincipalId );
-}
-ok( $ret, "Load / Create test personal group 1: $msg" );
-$pg2 = RT::Group->new($RT::SystemUser);
-( $ret, $msg ) = $pg2->LoadPersonalGroup( Name => 'dpg2',
- User => $u2->PrincipalId );
-unless ($ret) {
- ( $ret, $msg ) = $pg2->CreatePersonalGroup( Name => 'dpg2',
- PrincipalId => $u2->PrincipalId );
-}
-ok( $ret, "Load / Create test personal group 2: $msg" );
-
-
-
-# Basic case: u has global DelegateRights through g1 and ShowConfigTab
-# through g2; then u is removed from g1.
-
-clear_acls_and_groups();
-
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights' );
-ok( $ret, "Grant DelegateRights to g1: $msg" );
-( $ret, $msg ) = $g2->PrincipalObj->GrantRight( Right => 'ShowConfigTab' );
-ok( $ret, "Grant ShowConfigTab to g2: $msg" );
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-ok(
- $u1->PrincipalObj->HasRight(
- Right => 'DelegateRights',
- Object => $RT::System
- ),
- "test user 1 has DelegateRights after joining g1"
-);
-( $ret, $msg ) = $g2->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g2: $msg" );
-ok(
- $u1->PrincipalObj->HasRight(
- Right => 'ShowConfigTab',
- Object => $RT::System
- ),
- "test user 1 has ShowConfigTab after joining g2"
-);
-
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'ShowConfigTab',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-ok(
- $pg1->PrincipalObj->HasRight(
- Right => 'ShowConfigTab',
- Object => $RT::System
- ),
- "Test personal group 1 has ShowConfigTab right after delegation"
-);
-
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete test user 1 from g1: $msg" );
-ok(
- not(
- $pg1->PrincipalObj->HasRight(
- Right => 'ShowConfigTab',
- Object => $RT::System
- )
- ),
- "Test personal group 1 lacks ShowConfigTab right after user removed from g1"
-);
-
-# Basic case: u has global DelegateRights through g1 and ShowConfigTab
-# through g2; then DelegateRights revoked from g1.
-
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-( $ret, $msg ) = $g1->PrincipalObj->RevokeRight( Right => 'DelegateRights' );
-ok( $ret, "Revoke DelegateRights from g1: $msg" );
-ok(
- not(
- $pg1->PrincipalObj->HasRight(
- Right => 'ShowConfigTab',
- Object => $RT::System
- )
- ),
- "Test personal group 1 lacks ShowConfigTab right after DelegateRights revoked from g1"
-);
-
-
-
-# Corner case - restricted delegation: u has DelegateRights on pg1
-# through g1 and AdminGroup on pg1 through g2; then DelegateRights
-# revoked from g1.
-
-clear_acls_and_groups();
-
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $pg1);
-ok( $ret, "Grant DelegateRights on pg1 to g1: $msg" );
-( $ret, $msg ) = $g2->PrincipalObj->GrantRight( Right => 'AdminGroup',
- Object => $pg1);
-ok( $ret, "Grant AdminGroup on pg1 to g2: $msg" );
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-( $ret, $msg ) = $g2->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g2: $msg" );
-ok( $u1->PrincipalObj->HasRight(
- Right => 'DelegateRights',
- Object => $pg1 ),
- "test user 1 has DelegateRights on pg1 after joining g1" );
-ok( not( $u1->PrincipalObj->HasRight(
- Right => 'DelegateRights',
- Object => $RT::System )),
- "Test personal group 1 lacks global DelegateRights after joining g1" );
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'AdminGroup',
- Object => $pg1,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate AdminGroup on pg1 to pg1: $msg" );
-ok( $pg1->PrincipalObj->HasRight(
- Right => 'AdminGroup',
- Object => $pg1 ),
- "Test personal group 1 has AdminGroup right on pg1 after delegation" );
-( $ret, $msg ) = $g1->PrincipalObj->RevokeRight ( Right => 'DelegateRights',
- Object => $pg1 );
-ok( $ret, "Revoke DelegateRights on pg1 from g1: $msg" );
-ok( not( $pg1->PrincipalObj->HasRight(
- Right => 'AdminGroup',
- Object => $pg1 )),
- "Test personal group 1 lacks AdminGroup right on pg1 after DelegateRights revoked from g1" );
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $pg1);
-
-# Corner case - restricted delegation: u has DelegateRights on pg1
-# through g1 and AdminGroup on pg1 through g2; then u removed from g1.
-
-ok( $ret, "Grant DelegateRights on pg1 to g1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate AdminGroup on pg1 to pg1: $msg" );
-ok( $pg1->PrincipalObj->HasRight(
- Right => 'AdminGroup',
- Object => $pg1 ),
- "Test personal group 1 has AdminGroup right on pg1 after delegation" );
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete test user 1 from g1: $msg" );
-ok( not( $pg1->PrincipalObj->HasRight(
- Right => 'AdminGroup',
- Object => $pg1 )),
- "Test personal group 1 lacks AdminGroup right on pg1 after user removed from g1" );
-
-clear_acls_and_groups();
-
-
-
-# Corner case - multiple delegation rights: u has global
-# DelegateRights directly and DelegateRights on pg1 through g1, and
-# AdminGroup on pg1 through g2; then u removed from g1 (delegation
-# should remain); then DelegateRights revoked from u (delegation
-# should not remain).
-
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $pg1);
-ok( $ret, "Grant DelegateRights on pg1 to g1: $msg" );
-( $ret, $msg ) = $g2->PrincipalObj->GrantRight( Right => 'AdminGroup',
- Object => $pg1);
-ok( $ret, "Grant AdminGroup on pg1 to g2: $msg" );
-( $ret, $msg ) = $u1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $RT::System);
-ok( $ret, "Grant DelegateRights to user: $msg" );
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-( $ret, $msg ) = $g2->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g2: $msg" );
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'AdminGroup',
- Object => $pg1,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate AdminGroup on pg1 to pg1: $msg" );
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete test user 1 from g1: $msg" );
-ok( $pg1->PrincipalObj->HasRight(Right => 'AdminGroup',
- Object => $pg1),
- "Test personal group 1 retains AdminGroup right on pg1 after user removed from g1" );
-( $ret, $msg ) = $u1->PrincipalObj->RevokeRight( Right => 'DelegateRights',
- Object => $RT::System );
-ok( not ($pg1->PrincipalObj->HasRight(Right => 'AdminGroup',
- Object => $pg1)),
- "Test personal group 1 lacks AdminGroup right on pg1 after DelegateRights revoked");
-
-# Corner case - multiple delegation rights and selectivity: u has
-# DelegateRights globally and on g2 directly and DelegateRights on pg1
-# through g1, and AdminGroup on pg1 through g2; then global
-# DelegateRights revoked from u (delegation should remain),
-# DelegateRights on g2 revoked from u (delegation should remain), and
-# u removed from g1 (delegation should not remain).
-
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-( $ret, $msg ) = $u1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $RT::System);
-ok( $ret, "Grant DelegateRights to user: $msg" );
-( $ret, $msg ) = $u1->PrincipalObj->GrantRight( Right => 'DelegateRights',
- Object => $g2);
-ok( $ret, "Grant DelegateRights on g2 to user: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate AdminGroup on pg1 to pg1: $msg" );
-( $ret, $msg ) = $u1->PrincipalObj->RevokeRight( Right => 'DelegateRights',
- Object => $RT::System );
-ok( $pg1->PrincipalObj->HasRight(Right => 'AdminGroup',
- Object => $pg1),
- "Test personal group 1 retains AdminGroup right on pg1 after global DelegateRights revoked" );
-( $ret, $msg ) = $u1->PrincipalObj->RevokeRight( Right => 'DelegateRights',
- Object => $g2 );
-ok( $pg1->PrincipalObj->HasRight(Right => 'AdminGroup',
- Object => $pg1),
- "Test personal group 1 retains AdminGroup right on pg1 after DelegateRights on g2 revoked" );
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete test user 1 from g1: $msg" );
-ok( not ($pg1->PrincipalObj->HasRight(Right => 'AdminGroup',
- Object => $pg1)),
- "Test personal group 1 lacks AdminGroup right on pg1 after user removed from g1");
-
-
-
-# Corner case - indirect delegation rights: u has DelegateRights
-# through g1 via g3, and ShowConfigTab via g2; then g3 removed from
-# g1.
-
-clear_acls_and_groups();
-
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights' );
-ok( $ret, "Grant DelegateRights to g1: $msg" );
-( $ret, $msg ) = $g2->PrincipalObj->GrantRight( Right => 'ShowConfigTab' );
-ok( $ret, "Grant ShowConfigTab to g2: $msg" );
-( $ret, $msg ) = $g1->AddMember( $g3->PrincipalId );
-ok( $ret, "Add g3 to g1: $msg" );
-( $ret, $msg ) = $g3->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g3: $msg" );
-( $ret, $msg ) = $g2->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g2: $msg" );
-
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'ShowConfigTab',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-
-( $ret, $msg ) = $g1->DeleteMember( $g3->PrincipalId );
-ok( $ret, "Delete g3 from g1: $msg" );
-ok( not ($pg1->PrincipalObj->HasRight(Right => 'ShowConfigTab',
- Object => $RT::System)),
- "Test personal group 1 lacks ShowConfigTab right after g3 removed from g1");
-
-# Corner case - indirect delegation rights: u has DelegateRights
-# through g1 via g3, and ShowConfigTab via g2; then DelegateRights
-# revoked from g1.
-
-( $ret, $msg ) = $g1->AddMember( $g3->PrincipalId );
-ok( $ret, "Add g3 to g1: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg1: $msg" );
-( $ret, $msg ) = $g1->PrincipalObj->RevokeRight ( Right => 'DelegateRights' );
-ok( $ret, "Revoke DelegateRights from g1: $msg" );
-
-ok( not ($pg1->PrincipalObj->HasRight(Right => 'ShowConfigTab',
- Object => $RT::System)),
- "Test personal group 1 lacks ShowConfigTab right after DelegateRights revoked from g1");
-
-
-
-# Corner case - delegation of DelegateRights: u1 has DelegateRights
-# via g1 and delegates DelegateRights to pg1; u2 has DelegateRights
-# via pg1 and ShowConfigTab via g2; then u1 removed from g1.
-
-clear_acls_and_groups();
-
-( $ret, $msg ) = $g1->PrincipalObj->GrantRight( Right => 'DelegateRights' );
-ok( $ret, "Grant DelegateRights to g1: $msg" );
-( $ret, $msg ) = $g2->PrincipalObj->GrantRight( Right => 'ShowConfigTab' );
-ok( $ret, "Grant ShowConfigTab to g2: $msg" );
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add test user 1 to g1: $msg" );
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'DelegateRights',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g1->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate DelegateRights to pg1: $msg" );
-
-( $ret, $msg ) = $pg1->AddMember( $u2->PrincipalId );
-ok( $ret, "Add test user 2 to pg1: $msg" );
-( $ret, $msg ) = $g2->AddMember( $u2->PrincipalId );
-ok( $ret, "Add test user 2 to g2: $msg" );
-$ace = RT::ACE->new($u2);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'ShowConfigTab',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg2->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg2: $msg" );
-
-ok( $pg2->PrincipalObj->HasRight(Right => 'ShowConfigTab',
- Object => $RT::System),
- "Test personal group 2 has ShowConfigTab right after delegation");
-( $ret, $msg ) = $g1->DeleteMember( $u1->PrincipalId );
-ok( $ret, "Delete u1 from g1: $msg" );
-ok( not ($pg2->PrincipalObj->HasRight(Right => 'ShowConfigTab',
- Object => $RT::System)),
- "Test personal group 2 lacks ShowConfigTab right after u1 removed from g1");
-
-# Corner case - delegation of DelegateRights: u1 has DelegateRights
-# via g1 and delegates DelegateRights to pg1; u2 has DelegateRights
-# via pg1 and ShowConfigTab via g2; then DelegateRights revoked from
-# g1.
-
-( $ret, $msg ) = $g1->AddMember( $u1->PrincipalId );
-ok( $ret, "Add u1 to g1: $msg" );
-$ace = RT::ACE->new($u1);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'DelegateRights',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g1->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg1->PrincipalId );
-ok( $ret, "Delegate DelegateRights to pg1: $msg" );
-$ace = RT::ACE->new($u2);
-( $ret, $msg ) = $ace->LoadByValues(
- RightName => 'ShowConfigTab',
- Object => $RT::System,
- PrincipalType => 'Group',
- PrincipalId => $g2->PrincipalId
-);
-ok( $ret, "Look up ACE to be delegated: $msg" );
-( $ret, $msg ) = $ace->Delegate( PrincipalId => $pg2->PrincipalId );
-ok( $ret, "Delegate ShowConfigTab to pg2: $msg" );
-
-( $ret, $msg ) = $g1->PrincipalObj->RevokeRight ( Right => 'DelegateRights' );
-ok( $ret, "Revoke DelegateRights from g1: $msg" );
-ok( not ($pg2->PrincipalObj->HasRight(Right => 'ShowConfigTab',
- Object => $RT::System)),
- "Test personal group 2 lacks ShowConfigTab right after DelegateRights revoked from g1");
-
-
-
-
-#######
-
-sub clear_acls_and_groups {
- # Revoke all rights granted to our cast
- my $acl = RT::ACL->new($RT::SystemUser);
- foreach (@principals) {
- $acl->LimitToPrincipal(Type => $$_->PrincipalObj->PrincipalType,
- Id => $$_->PrincipalObj->Id);
- }
- while (my $ace = $acl->Next()) {
- $ace->Delete();
- }
-
- # Remove all group memberships
- my $members = RT::GroupMembers->new($RT::SystemUser);
- foreach (@groups) {
- $members->LimitToMembersOfGroup( $$_->PrincipalId );
- }
- while (my $member = $members->Next()) {
- $member->Delete();
- }
-
- $acl->RedoSearch();
- ok( $acl->Count() == 0,
- "All principals have no rights after clearing ACLs" );
- $members->RedoSearch();
- ok( $members->Count() == 0,
- "All groups have no members after clearing groups" );
-}
diff --git a/rt/lib/t/regression/19-rtname.t b/rt/lib/t/regression/19-rtname.t
deleted file mode 100644
index b654df2..0000000
--- a/rt/lib/t/regression/19-rtname.t
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/perl
-use strict;
-use warnings;
-use Test::More qw/no_plan/;
-
-use_ok("RT");
-
-RT::LoadConfig();
-RT::Init();
-
-use RT::Interface::Email;
-
-# normal use case, regexp set to rtname
-$RT::rtname = "site";
-$RT::EmailSubjectTagRegex = qr/$RT::rtname/ ;
-$RT::rtname = undef;
-is(RT::Interface::Email::ParseTicketId("[site #123] test"), 123);
-is(RT::Interface::Email::ParseTicketId("[othersite #123] test"), undef);
-
-# oops usecase, where the regexp is scragged
-$RT::rtname = "site";
-$RT::EmailSubjectTagRegex = undef;
-is(RT::Interface::Email::ParseTicketId("[site #123] test"), 123);
-is(RT::Interface::Email::ParseTicketId("[othersite #123] test"), undef);
-
-# set to a simple regexp. NOTE: we no longer match "site"
-$RT::rtname = "site";
-$RT::EmailSubjectTagRegex = qr/newsite/;
-is(RT::Interface::Email::ParseTicketId("[site #123] test"), undef);
-is(RT::Interface::Email::ParseTicketId("[newsite #123] test"), 123);
-
-# set to a more complex regexp
-$RT::rtname = "site";
-$RT::EmailSubjectTagRegex = qr/newsite||site/;
-is(RT::Interface::Email::ParseTicketId("[site #123] test"), 123);
-is(RT::Interface::Email::ParseTicketId("[newsite #123] test"), 123);
-is(RT::Interface::Email::ParseTicketId("[othersite #123] test"), undef);
-
diff --git a/rt/lib/t/regression/20savedsearch.t b/rt/lib/t/regression/20savedsearch.t
deleted file mode 100644
index f4439f9..0000000
--- a/rt/lib/t/regression/20savedsearch.t
+++ /dev/null
@@ -1,180 +0,0 @@
-use RT;
-use Test::More tests => 26;
-use RT::User;
-use RT::Group;
-use RT::Ticket;
-use RT::Queue;
-
-use_ok(RT::SavedSearch);
-use_ok(RT::SavedSearches);
-
-RT::LoadConfig();
-RT::Init();
-
-# Set up some infrastructure. These calls are tested elsewhere.
-
-my $searchuser = RT::User->new($RT::SystemUser);
-my ($ret, $msg) = $searchuser->Create(Name => 'searchuser'.$$,
- Privileged => 1,
- EmailAddress => "searchuser\@p$$.example.com",
- RealName => 'Search user');
-ok($ret, "created searchuser: $msg");
-$searchuser->PrincipalObj->GrantRight(Right => 'LoadSavedSearch');
-$searchuser->PrincipalObj->GrantRight(Right => 'CreateSavedSearch');
-$searchuser->PrincipalObj->GrantRight(Right => 'ModifySelf');
-
-# This is the group whose searches searchuser should be able to see.
-my $ingroup = RT::Group->new($RT::SystemUser);
-$ingroup->CreateUserDefinedGroup(Name => 'searchgroup1'.$$);
-$ingroup->AddMember($searchuser->Id);
-$searchuser->PrincipalObj->GrantRight(Right => 'EditSavedSearches',
- Object => $ingroup);
-$searchuser->PrincipalObj->GrantRight(Right => 'ShowSavedSearches',
- Object => $ingroup);
-
-# This is the group whose searches searchuser should not be able to see.
-my $outgroup = RT::Group->new($RT::SystemUser);
-$outgroup->CreateUserDefinedGroup(Name => 'searchgroup2'.$$);
-$outgroup->AddMember($RT::SystemUser->Id);
-
-my $queue = RT::Queue->new($RT::SystemUser);
-$queue->Create(Name => 'SearchQueue'.$$);
-$searchuser->PrincipalObj->GrantRight(Right => 'SeeQueue', Object => $queue);
-$searchuser->PrincipalObj->GrantRight(Right => 'ShowTicket', Object => $queue);
-$searchuser->PrincipalObj->GrantRight(Right => 'OwnTicket', Object => $queue);
-
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-$ticket->Create(Queue => $queue->Id,
- Requestor => [ $searchuser->Name ],
- Owner => $searchuser,
- Subject => 'saved search test');
-
-
-# Now start the search madness.
-my $curruser = RT::CurrentUser->new($searchuser);
-my $format = '\' <b><a href="/Ticket/Display.html?id=__id__">__id__</a></b>/TITLE:#\',
-\'<b><a href="/Ticket/Display.html?id=__id__">__Subject__</a></b>/TITLE:Subject\',
-\'__Status__\',
-\'__QueueName__\',
-\'__OwnerName__\',
-\'__Priority__\',
-\'__NEWLINE__\',
-\'\',
-\'<small>__Requestors__</small>\',
-\'<small>__CreatedRelative__</small>\',
-\'<small>__ToldRelative__</small>\',
-\'<small>__LastUpdatedRelative__</small>\',
-\'<small>__TimeLeft__</small>\'';
-
-my ($ret, $msg);
-my $mysearch = RT::SavedSearch->new($curruser);
-($ret, $msg) = $mysearch->Save(Privacy => 'RT::User-' . $searchuser->Id,
- Type => 'Ticket',
- Name => 'owned by me',
- SearchParams => {'Format' => $format,
- 'Query' => "Owner = '"
- . $searchuser->Name
- . "'"});
-ok($ret, "mysearch was created");
-
-
-my $groupsearch = RT::SavedSearch->new($curruser);
-($ret, $msg) = $groupsearch->Save(Privacy => 'RT::Group-' . $ingroup->Id,
- Type => 'Ticket',
- Name => 'search queue',
- SearchParams => {'Format' => $format,
- 'Query' => "Queue = '"
- . $queue->Name . "'"});
-ok($ret, "groupsearch was created");
-
-my $othersearch = RT::SavedSearch->new($curruser);
-($ret, $msg) = $othersearch->Save(Privacy => 'RT::Group-' . $outgroup->Id,
- Type => 'Ticket',
- Name => 'searchuser requested',
- SearchParams => {'Format' => $format,
- 'Query' =>
- "Requestor.Name LIKE 'search'"});
-ok(!$ret, "othersearch NOT created");
-like($msg, qr/Failed to load object for/, "...for the right reason");
-
-$othersearch = RT::SavedSearch->new($RT::SystemUser);
-($ret, $msg) = $othersearch->Save(Privacy => 'RT::Group-' . $outgroup->Id,
- Type => 'Ticket',
- Name => 'searchuser requested',
- SearchParams => {'Format' => $format,
- 'Query' =>
- "Requestor.Name LIKE 'search'"});
-ok($ret, "othersearch created by systemuser");
-
-# Now try to load some searches.
-
-# This should work.
-my $loadedsearch1 = RT::SavedSearch->new($curruser);
-$loadedsearch1->Load('RT::User-'.$curruser->Id, $mysearch->Id);
-is($loadedsearch1->Id, $mysearch->Id, "Loaded mysearch");
-like($loadedsearch1->GetParameter('Query'), qr/Owner/,
- "Retrieved query of mysearch");
-# Check through the other accessor methods.
-is($loadedsearch1->Privacy, 'RT::User-' . $curruser->Id,
- "Privacy of mysearch correct");
-is($loadedsearch1->Name, 'owned by me', "Name of mysearch correct");
-is($loadedsearch1->Type, 'Ticket', "Type of mysearch correct");
-
-# See if it can be used to search for tickets.
-my $tickets = RT::Tickets->new($curruser);
-$tickets->FromSQL($loadedsearch1->GetParameter('Query'));
-is($tickets->Count, 1, "Found a ticket");
-
-# This should fail -- wrong object.
-# my $loadedsearch2 = RT::SavedSearch->new($curruser);
-# $loadedsearch2->Load('RT::User-'.$curruser->Id, $groupsearch->Id);
-# isnt($loadedsearch2->Id, $othersearch->Id, "Didn't load groupsearch as mine");
-# ...but this should succeed.
-my $loadedsearch3 = RT::SavedSearch->new($curruser);
-$loadedsearch3->Load('RT::Group-'.$ingroup->Id, $groupsearch->Id);
-is($loadedsearch3->Id, $groupsearch->Id, "Loaded groupsearch");
-like($loadedsearch3->GetParameter('Query'), qr/Queue/,
- "Retrieved query of groupsearch");
-# Can it get tickets?
-$tickets = RT::Tickets->new($curruser);
-$tickets->FromSQL($loadedsearch3->GetParameter('Query'));
-is($tickets->Count, 1, "Found a ticket");
-
-# This should fail -- no permission.
-my $loadedsearch4 = RT::SavedSearch->new($curruser);
-$loadedsearch4->Load($othersearch->Privacy, $othersearch->Id);
-isnt($loadedsearch4->Id, $othersearch->Id, "Did not load othersearch");
-
-# Try to update an existing search.
-$loadedsearch1->Update( SearchParams => {'Format' => $format,
- 'Query' => "Queue = '" . $queue->Name . "'" } );
-like($loadedsearch1->GetParameter('Query'), qr/Queue/,
- "Updated mysearch parameter");
-is($loadedsearch1->Type, 'Ticket', "mysearch is still for tickets");
-is($loadedsearch1->Privacy, 'RT::User-'.$curruser->Id,
- "mysearch still belongs to searchuser");
-like($mysearch->GetParameter('Query'), qr/Queue/, "other mysearch object updated");
-
-
-## Right ho. Test the pseudo-collection object.
-
-my $genericsearch = RT::SavedSearch->new($curruser);
-$genericsearch->Save(Name => 'generic search',
- Type => 'all',
- SearchParams => {'Query' => "Queue = 'General'"});
-
-my $ticketsearches = RT::SavedSearches->new($curruser);
-$ticketsearches->LimitToPrivacy('RT::User-'.$curruser->Id, 'Ticket');
-is($ticketsearches->Count, 1, "Found searchuser's ticket searches");
-
-my $allsearches = RT::SavedSearches->new($curruser);
-$allsearches->LimitToPrivacy('RT::User-'.$curruser->Id);
-is($allsearches->Count, 2, "Found all searchuser's searches");
-
-# Delete a search.
-($ret, $msg) = $genericsearch->Delete;
-ok($ret, "Deleted genericsearch");
-$allsearches->LimitToPrivacy('RT::User-'.$curruser->Id);
-is($allsearches->Count, 1, "Found all searchuser's searches after deletion");
-
diff --git a/rt/lib/t/regression/21query-builder.t b/rt/lib/t/regression/21query-builder.t
deleted file mode 100644
index be04599..0000000
--- a/rt/lib/t/regression/21query-builder.t
+++ /dev/null
@@ -1,204 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use Test::More tests => 31;
-use Test::WWW::Mechanize;
-use HTTP::Request::Common;
-use HTTP::Cookies;
-use LWP;
-use Encode;
-
-my $cookie_jar = HTTP::Cookies->new;
-my $agent = Test::WWW::Mechanize->new();
-
-# give the agent a place to stash the cookies
-
-$agent->cookie_jar($cookie_jar);
-
-use RT;
-RT::LoadConfig;
-
-# get the top page
-my $url = $RT::WebURL;
-$agent->get($url);
-
-is ($agent->{'status'}, 200, "Loaded a page");
-
-
-# {{{ test a login
-
-# follow the link marked "Login"
-
-ok($agent->{form}->find_input('user'));
-
-ok($agent->{form}->find_input('pass'));
-ok ($agent->{'content'} =~ /username:/i);
-$agent->field( 'user' => 'root' );
-$agent->field( 'pass' => 'password' );
-# the field isn't named, so we have to click link 0
-$agent->click(0);
-is($agent->{'status'}, 200, "Fetched the page ok");
-ok( $agent->{'content'} =~ /Logout/i, "Found a logout link");
-
-# }}}
-
-# {{{ Query Builder tests
-
-my $response = $agent->get($url."Search/Build.html");
-ok( $response->is_success, "Fetched " . $url."Search/Build.html" );
-
-# Adding items
-
-# set the first value
-ok($agent->form_name('BuildQuery'), "found the form once");
-$agent->field("ActorField", "Owner");
-$agent->field("ActorOp", "=");
-$agent->field("ValueOfActor", "Nobody");
-$agent->submit();
-
-# set the next value
-ok($agent->form_name('BuildQuery'), "found the form again");
-$agent->field("QueueOp", "!=");
-$agent->field("ValueOfQueue", "Regression");
-$agent->submit();
-
-ok($agent->form_name('BuildQuery'), "found the form a third time");
-
-sub getQueryFromForm {
- # This pulls out the "hidden input" query from the page
- my $q = $agent->current_form->find_input("Query")->value;
- $q =~ s/^\s+//g;
- $q =~ s/\s+$//g;
- $q =~ s/\s+/ /g;
- return $q;
-}
-
-is (getQueryFromForm, "Owner = 'Nobody' AND Queue != 'Regression'");
-
-# We're going to delete the owner
-
-$agent->select("clauses", ["0"] );
-
-$agent->click("DeleteClause");
-
-ok($agent->form_name('BuildQuery'), "found the form a fourth time");
-
-is (getQueryFromForm, "Queue != 'Regression'");
-
-$agent->field("AndOr", "OR");
-
-$agent->select("idOp", ">");
-
-$agent->field("ValueOfid" => "1234");
-
-$agent->click("AddClause");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-TODO: {
- local $TODO = "query builder incorrectly quotes numbers";
- is(getQueryFromForm, "Queue != 'Regression' OR id > 1234", "added something as OR, and number not quoted");
-}
-
-sub selectedClauses {
- my @clauses = grep { defined } map { $_->value } $agent->current_form->find_input("clauses");
- return [ @clauses ];
-}
-
-
-is_deeply(selectedClauses, ["1"], 'the id that we just entered is still selected');
-
-# Move the second one up a level
-$agent->click("Up");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-is(getQueryFromForm, "id > 1234 OR Queue != 'Regression'", "moved up one");
-
-is_deeply(selectedClauses, ["0"], 'the one we moved up is selected');
-
-$agent->click("Right");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-is(getQueryFromForm, "Queue != 'Regression' OR ( id > 1234 )", "moved over to the right (and down)");
-is_deeply(selectedClauses, ["2"], 'the one we moved right is selected');
-
-$agent->select("clauses", ["1"]);
-
-$agent->click("Up");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-TODO: {
- local $TODO = "query builder incorrectly changes OR to AND";
- is(getQueryFromForm, "( id > 1234 ) OR Queue != 'Regression'", "moved up");
-}
-
-$agent->select("clauses", ["0"]); # this is a null clause
-
-$agent->click("Up");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-
-$agent->content_like(qr/error: can\S+t move up/, "i shouldn't have been able to hit up");
-
-$agent->click("Left");
-
-ok($agent->form_name('BuildQuery'), "found the form again");
-
-$agent->content_like(qr/error: can\S+t move left/, "i shouldn't have been able to hit left");
-
-$agent->select("clauses", ["1"]);
-$agent->select("ValueOfStatus" => "stalled");
-
-$agent->submit;
-ok($agent->form_name('BuildQuery'), "found the form again");
-is_deeply(selectedClauses, ["2"], 'the one we added is selected');
-TODO: {
- local $TODO = "query builder incorrectly changes OR to AND";
- is(getQueryFromForm, "( id > 1234 AND Status = 'stalled' ) OR Queue != 'Regression'", "added new one");
-}
-
-
-
-# - new items go one level down
-# - add items at currently selected level
-# - if nothing is selected, add at end, one level down
-#
-# move left
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move left if you're at the top level
-#
-# move right
-# - error if nothing selected
-# - same item should be selected after move
-# - can always move right (no max depth...should there be?)
-#
-# move up
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move up if you're first in the list
-#
-# move down
-# - error if nothing selected
-# - same item should be selected after move
-# - can't move down if you're last in the list
-#
-# toggle
-# - error if nothing selected
-# - change all aggregators in the grouping
-# - don't change any others
-#
-# delete
-# - error if nothing selected
-# - delete currently selected item
-# - delete all children of a grouping
-# - if delete leaves a node with no children, delete that, too
-# - what should be selected?
-#
-# Clear
-# - clears entire query
-# - clears it from the session, too
-
-# }}}
-
-
-1;
diff --git a/rt/lib/t/regression/22search_tix_by_txn.t b/rt/lib/t/regression/22search_tix_by_txn.t
deleted file mode 100644
index 54dad98..0000000
--- a/rt/lib/t/regression/22search_tix_by_txn.t
+++ /dev/null
@@ -1,32 +0,0 @@
-#use Test::More tests => 26;
-use Test::More qw/no_plan/;
-
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-my $SUBJECT = "Search test - ".$$;
-
-use_ok('RT::Tickets');
-my $tix = RT::Tickets->new($RT::SystemUser);
-can_ok($tix, 'FromSQL');
-$tix->FromSQL('Updated = "2005-08-05" AND Subject = "$SUBJECT"');
-
-ok(! $tix->Count, "Searching for tickets updated on a random date finds nothing" . $tix->Count);
-
-my $ticket = RT::Ticket->new($RT::SystemUser);
-$ticket->Create(Queue => 'General', Subject => $SUBJECT);
-ok ($ticket->id, "We created a ticket");
-my ($id, $txnid, $txnobj) = $ticket->Comment( Content => 'A comment that happend on 2004-01-01');
-
-isa_ok($txnobj, 'RT::Transaction');
-
-ok($txnobj->CreatedObj->ISO);
-my ( $sid,$smsg) = $txnobj->__Set(Field => 'Created', Value => '2005-08-05 20:00:56');
-ok($sid,$smsg);
-is($txnobj->Created,'2005-08-05 20:00:56');
-is($txnobj->CreatedObj->ISO,'2005-08-05 20:00:56');
-
-$tix->FromSQL(qq{Updated = "2005-08-05" AND Subject = "$SUBJECT"});
-is( $tix->Count, 1);
-1;
diff --git a/rt/lib/t/regression/mime_tests b/rt/lib/t/regression/mime_tests
deleted file mode 100644
index 26e4dbf..0000000
--- a/rt/lib/t/regression/mime_tests
+++ /dev/null
@@ -1,19 +0,0 @@
-use RT::Ticket;
-use RT::Queue;
-
-use MIME::Parser;
-use File::Temp;
-use RT::EmailParser;
-
-open (HANDLE, "data/nested-mime-sample");
-my $parser = RT::EmailParser->new()
- $parser->ParseMIMEEntityFromFileHandle(\*HANDLE);
-my $entity = $parser->Entity;
-
-my $q = RT::Queue->new($RT::SystemUser);
-$q->Load('general');
-ok ($q->Id, "Queue is loaded");
-my $Ticket = RT::Ticket->new($RT::SystemUser);
-my ($tid, $ttid, $msg) =$Ticket->Create( Queue => $q->Id, Subject => "Nested mime test", MIMEObj => $entity);
-ok ($tid, $msg);
-ok($Ticket->Id);
diff --git a/rt/lib/t/setup_regression.t b/rt/lib/t/setup_regression.t
deleted file mode 100644
index 36f809b..0000000
--- a/rt/lib/t/setup_regression.t
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/perl
-
-use Test::More qw(no_plan);
-
-use RT;
-ok(RT::LoadConfig);
-ok(RT::Init, "Basic initialization and DB connectivity");
-
-# Create a new queue
-use_ok(RT::Queue);
-my $q = RT::Queue->new($RT::SystemUser);
-
-$q->Load('regression');
-if ($q->id != 0) {
- die "Regression tests not starting with a clean DB. Bailing";
-}
-
-my ($id, $msg) = $q->Create( Name => 'Regression',
- Description => 'A regression test queue',
- CorrespondAddress => 'correspond@a',
- CommentAddress => 'comment@a');
-
-isnt($id, 0, "Queue was created sucessfully - $msg");
-
-my $q2 = RT::Queue->new($RT::SystemUser);
-
-ok($q2->Load($id));
-is($q2->id, $id, "Sucessfully loaded the queue again");
-is($q2->Name, 'Regression');
-is($q2->Description, 'A regression test queue');
-is($q2->CorrespondAddress, 'correspond@a');
-is($q2->CommentAddress, 'comment@a');
-
-
diff --git a/rt/m4/rt_enable_layout.m4 b/rt/m4/rt_enable_layout.m4
deleted file mode 100644
index cadec1c..0000000
--- a/rt/m4/rt_enable_layout.m4
+++ /dev/null
@@ -1,36 +0,0 @@
-dnl
-dnl @synopsis RT_ENABLE_LAYOUT()
-dnl
-dnl Enable a specific directory layout for the installation to use.
-dnl This configures a command-line parameter that can be specified
-dnl at ./configure invocation.
-dnl
-dnl The use of this feature in this way is a little hackish, but
-dnl better than a heap of options for every directory.
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 code.
-dnl
-
-AC_DEFUN([RT_ENABLE_LAYOUT],[
-AC_ARG_ENABLE(layout,
- AC_HELP_STRING([--enable-layout=LAYOUT],
- [Use a specific directory layout (Default: RT3)]),
- LAYOUT=$enableval)
-
-if test "x$LAYOUT" = "x"; then
- LAYOUT="RT3"
-fi
-RT_LAYOUT($srcdir/config.layout, $LAYOUT)
-AC_MSG_CHECKING(for chosen layout)
-if test "x$rt_layout_name" = "xno"; then
- if test "x$LAYOUT" = "xno"; then
- AC_MSG_RESULT(none)
- else
- AC_MSG_RESULT($LAYOUT)
- fi
- AC_MSG_ERROR([a valid layout must be specified (or the default used)])
-else
- AC_SUBST(rt_layout_name)
- AC_MSG_RESULT($rt_layout_name)
-fi
-])
diff --git a/rt/m4/rt_expand_var.m4 b/rt/m4/rt_expand_var.m4
deleted file mode 100644
index cec884a..0000000
--- a/rt/m4/rt_expand_var.m4
+++ /dev/null
@@ -1,18 +0,0 @@
-dnl
-dnl @synopsis RT_EXPAND_VAR(baz, $fraz)
-dnl
-dnl Iteratively expands the second parameter, until successive iterations
-dnl yield no change. The result is then assigned to the first parameter.
-dnl
-dnl This code is heavily borrowed from the Apache 2 codebase.
-dnl
-
-AC_DEFUN([RT_EXPAND_VAR],[
- ap_last=''
- ap_cur='$2'
- while test "x${ap_cur}" != "x${ap_last}"; do
- ap_last="${ap_cur}"
- ap_cur=`eval "echo ${ap_cur}"`
- done
- $1="${ap_cur}"
-])
diff --git a/rt/m4/rt_layout.m4 b/rt/m4/rt_layout.m4
deleted file mode 100644
index c92a108..0000000
--- a/rt/m4/rt_layout.m4
+++ /dev/null
@@ -1,75 +0,0 @@
-dnl
-dnl @synopsis RT_LAYOUT(configlayout, layoutname)
-dnl
-dnl This macro reads an Apache-style layout file (specified as the
-dnl configlayout parameter), and searches for a specific layout
-dnl (named using the layoutname parameter).
-dnl
-dnl The entries for a given layout are then inserted into the
-dnl environment such that they become available as substitution
-dnl variables. In addition, the rt_layout_name variable is set
-dnl (but not exported) if the layout is valid.
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 codebase.
-dnl
-
-AC_DEFUN([RT_LAYOUT],[
- if test ! -f $srcdir/config.layout; then
- AC_MSG_WARN([Layout file $srcdir/config.layout not found])
- rt_layout_name=no
- else
- pldconf=./config.pld
- $PERL -0777 -p -e "\$layout = '$2';" -e '
- s/.*<Layout\s+$layout>//gims;
- s/<\/Layout>.*//s;
- s/^#.*$//gm;
- s/^\s+//gim;
- s/\s+$/\n/gim;
- s/\+$/\/rt3/gim;
- # m4 will not let us just use $1, we need @S|@1
-# s/^((?:bin|sbin|libexec|data|sysconf|sharedstate|localstate|lib|include|oldinclude|info|man)dir)\s*:\s*(.*)$/@S|@1=@S|@2/gim;
- # uh, should be [:=], but m4 apparently substitutes something...
- s/^(.*?)\s*(?::|=)\s*(.*)$/\(test "x\@S|@@S|@1" = "xNONE" || test "x\@S|@@S|@1" = "x") && @S|@1=@S|@2/gim;
- ' < $1 > $pldconf
-
- if test -s $pldconf; then
- rt_layout_name=$2
- . $pldconf
- changequote({,})
- for var in prefix exec_prefix bindir sbindir \
- sysconfdir mandir libdir datadir htmldir \
- localstatedir logfiledir masonstatedir \
- sessionstatedir customdir custometcdir customhtmldir \
- customlexdir customlibdir manualdir; do
- eval "val=\"\$$var\""
- val=`echo $val | sed -e 's:\(.\)/*$:\1:'`
- val=`echo $val |
- sed -e 's:[\$]\([a-z_]*\):${\1}:g'`
- eval "$var='$val'"
- done
- changequote([,])
- else
- rt_layout_name=no
- fi
- #rm $pldconf
- fi
- RT_SUBST_EXPANDED_ARG(prefix)
- RT_SUBST_EXPANDED_ARG(exec_prefix)
- RT_SUBST_EXPANDED_ARG(bindir)
- RT_SUBST_EXPANDED_ARG(sbindir)
- RT_SUBST_EXPANDED_ARG(sysconfdir)
- RT_SUBST_EXPANDED_ARG(mandir)
- RT_SUBST_EXPANDED_ARG(libdir)
- RT_SUBST_EXPANDED_ARG(datadir)
- RT_SUBST_EXPANDED_ARG(htmldir)
- RT_SUBST_EXPANDED_ARG(manualdir)
- RT_SUBST_EXPANDED_ARG(localstatedir)
- RT_SUBST_EXPANDED_ARG(logfiledir)
- RT_SUBST_EXPANDED_ARG(masonstatedir)
- RT_SUBST_EXPANDED_ARG(sessionstatedir)
- RT_SUBST_EXPANDED_ARG(customdir)
- RT_SUBST_EXPANDED_ARG(custometcdir)
- RT_SUBST_EXPANDED_ARG(customhtmldir)
- RT_SUBST_EXPANDED_ARG(customlexdir)
- RT_SUBST_EXPANDED_ARG(customlibdir)
-])dnl
diff --git a/rt/m4/rt_subst_expanded_arg.m4 b/rt/m4/rt_subst_expanded_arg.m4
deleted file mode 100644
index 02002b0..0000000
--- a/rt/m4/rt_subst_expanded_arg.m4
+++ /dev/null
@@ -1,14 +0,0 @@
-dnl
-dnl @synopsis RT_SUBST_EXPANDED_ARG(var)
-dnl
-dnl Export (via AC_SUBST) a given variable, along with an expanded
-dnl version of the variable (same name, but with exp_ prefix).
-dnl
-dnl This code is heavily borrowed *cough* from the Apache 2 source.
-dnl
-
-AC_DEFUN([RT_SUBST_EXPANDED_ARG],[
- RT_EXPAND_VAR(exp_$1, [$]$1)
- AC_SUBST($1)
- AC_SUBST(exp_$1)
-])
diff --git a/rt/sbin/extract-message-catalog b/rt/sbin/extract-message-catalog
deleted file mode 100644
index 3552afb..0000000
--- a/rt/sbin/extract-message-catalog
+++ /dev/null
@@ -1,272 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-# Portions Copyright 2002 Autrijus Tang <autrijus@autrijus.org>
-
-use strict;
-
-use File::Find;
-use File::Copy;
-use Regexp::Common;
-use Carp;
-
-use vars qw($DEBUG $FILECAT);
-
-$DEBUG = 1;
-
-@ARGV = <lib/RT/I18N/*.po> unless @ARGV;
-
-$FILECAT = {};
-
-# extract all strings and stuff them into $FILECAT
-File::Find::find( { wanted => \&extract_strings_from_code, follow => 1 }, '.' );
-
-# ensure proper escaping and [_1] => %1 transformation
-foreach my $str ( sort keys %{$FILECAT} ) {
- my $entry = $FILECAT->{$str};
- my $oldstr = $str;
-
- $str =~ s/\\/\\\\/g;
- $str =~ s/\"/\\"/g;
- $str =~ s/((?<!~)(?:~~)*)\[_(\d+)\]/$1%$2/g;
- $str =~ s/((?<!~)(?:~~)*)\[([A-Za-z#*]\w*),([^\]]+)\]/"$1%$2(".escape($3).")"/eg;
- $str =~ s/~([\[\]])/$1/g;
-
- delete $FILECAT->{$oldstr};
- $FILECAT->{$str} = $entry;
-}
-
-# update all language dictionaries
-foreach my $dict (@ARGV) {
- $dict = "lib/RT/I18N/$dict.po" unless -f $dict or $dict =~ m!/!;
-
- my $lang = $dict;
- $lang =~ s|.*/||;
- $lang =~ s|\.po$||;
-
- update($lang, $dict);
-}
-
-
-# {{{ pull strings out of the code.
-
-sub extract_strings_from_code {
- my $file = $_;
-
- local $/;
- return if ( -d $_ );
- return if ( $File::Find::dir =~ 'lib/blib|lib/t/autogen|var|m4|local|\.svn' );
- return if ( /\.po$|\.bak$|~|,D|,B$|extract-message-catalog$/ );
- return if ( /^[\.#]/ );
- return if ( -f "$_.in" );
-
- print "Looking at $File::Find::name\n";
- my $filename = $File::Find::name;
- $filename =~ s'^\./'';
- $filename =~ s'\.in$'';
-
- unless (open _, $file) {
- print "Cannot open $file for reading ($!), skipping.\n";
- return;
- }
-
- $_ = <_>;
-
- # Mason filter: <&|/l>...</&>
- my $line = 1;
- while (m!\G.*?<&\|/l(.*?)&>(.*?)</&>!sg) {
- my ( $vars, $str ) = ( $1, $2 );
- $line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
- $str =~ s/\\'/\'/g;
- #print "STR IS $str\n";
- push @{ $FILECAT->{$str} }, [ $filename, $line, $vars ];
- }
-
- # Localization function: loc(...)
- $line = 1;
- pos($_) = 0;
- while (m/\G.*?\bloc$RE{balanced}{-parens=>'()'}{-keep}/sg) {
- my $match = $1;
- $line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
-
- my ( $vars, $str );
- if ( $match =~
- /\(\s*($RE{delimited}{-delim=>q{'"}}{-keep})(.*?)\s*\)$/ ) {
-
- $str = substr( $1, 1, -1 ); # $str comes before $vars now
- $vars = $9;
- }
- else {
- next;
- }
-
- $vars =~ s/[\n\r]//g;
- $str =~ s/\\'/\'/g;
-
- push @{ $FILECAT->{$str} }, [ $filename, $line, $vars ];
- }
-
- # Comment-based mark: "..." # loc
- $line = 1;
- pos($_) = 0;
- while (m/\G.*?($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],]*\s*\#\s*loc\s*$/smg) {
- my $str = substr($1, 1, -1);
- $line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
- $str =~ s/\\'/\'/g;
- push @{ $FILECAT->{$str} }, [ $filename, $line, '' ];
- }
-
- # Comment-based pair mark: "..." => "..." # loc_pair
- $line = 1;
- pos($_) = 0;
- while (m/\G.*?(\w+)\s*=>\s*($RE{delimited}{-delim=>q{'"}}{-keep})[\}\)\],]*\s*\#\s*loc_pair\s*$/smg) {
- my $key = $1;
- my $val = substr($2, 1, -1);
- $line += ( () = ( $& =~ /\n/g ) ); # cryptocontext!
- $key =~ s/\\'/\'/g;
- $val =~ s/\\'/\'/g;
- push @{ $FILECAT->{$key} }, [ $filename, $line, '' ];
- push @{ $FILECAT->{$val} }, [ $filename, $line, '' ];
- }
-
- close (_);
-}
-# }}} extract from strings
-
-sub update {
- my $lang = shift;
- my $file = shift;
- my ( %Lexicon, %Header);
- my $out = '';
-
- unless (!-e $file or -w $file) {
- warn "Can't write to $lang, skipping...\n";
- return;
- }
-
- print "Updating $lang...\n";
-
- my @lines;
- @lines = (<LEXICON>) if open (LEXICON, $file);
- @lines = grep { !/^(#(:|\.)\s*|$)/ } @lines;
- while (@lines) {
- my $msghdr = "";
- $msghdr .= shift @lines while ( $lines[0] && $lines[0] !~ /^msgid/ );
-
- my $msgid = shift @lines;
- my $msgstr = "";
- $msgstr .= shift @lines while ( $lines[0] && $lines[0] =~ /^(msgstr|")/ );
-
- last unless $msgid;
-
- chomp $msgid;
- chomp $msgstr;
- $msgid =~ s/^msgid "(.*)"\s*?$/$1/ms or warn "$msgid in $file";
- $msgstr =~ s/^msgstr "(.*)"\s*?$/$1/ms or warn "$msgstr in $file";
-
- $Lexicon{$msgid} = $msgstr;
- $Header{$msgid} = $msghdr;
- }
-
- my $is_english = ( $lang =~ /^en(?:[^A-Za-z]|$)/ );
-
- foreach my $str ( sort keys %{$FILECAT} ) {
- $Lexicon{$str} ||= '';;
- }
- foreach ( sort keys %Lexicon ) {
- my $f = join ( ' ', sort map $_->[0].":".$_->[1], @{ $FILECAT->{$_} } );
- my $nospace = $_;
- $nospace =~ s/ +$//;
-
- if ( !$Lexicon{$_} and $Lexicon{$nospace} ) {
- $Lexicon{$_} =
- $Lexicon{$nospace} . ( ' ' x ( length($_) - length($nospace) ) );
- }
-
- next if !length( $Lexicon{$_} ) and $is_english;
-
- my %seen;
- $out .= $Header{$_} if exists $Header{$_};
-
-
-
- next if (!$f && $_ && !$Lexicon{$_});
- if ( $f && $f !~ /^\s+$/ ) {
-
- $out .= "#: $f\n";
- }
- elsif ($_) {
- $out .= "#: NOT FOUND IN SOURCE\n";
- }
- foreach my $entry ( grep { $_->[2] } @{ $FILECAT->{$_} } ) {
- my ( $file, $line, $var ) = @{$entry};
- $var =~ s/^\s*,\s*//;
- $var =~ s/\s*$//;
- $out .= "#. ($var)\n" unless $seen{$var}++;
- }
- $out .= "msgid \"$_\"\nmsgstr \"$Lexicon{$_}\"\n\n";
- }
-
- open PO, ">$file" or die $!;
- print PO $out;
- close PO;
-
- return 1;
-}
-
-sub escape {
- my $text = shift;
- $text =~ s/\b_(\d+)/%$1/;
- return $text;
-}
-
-__END__
-# Local variables:
-# c-indentation-style: bsd
-# c-basic-offset: 4
-# indent-tabs-mode: nil
-# End:
-# vim: expandtab shiftwidth=4:
diff --git a/rt/sbin/extract_pod_tests b/rt/sbin/extract_pod_tests
deleted file mode 100644
index 4d9d7bd..0000000
--- a/rt/sbin/extract_pod_tests
+++ /dev/null
@@ -1,157 +0,0 @@
-#!/usr/bin/perl
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-use vars qw($VERSION);
-$VERSION = '0.06';
-
-use Pod::Tests;
-use Symbol;
-
-=pod
-
-=head1 NAME
-
-extract_pod_tests - RT-specific variant of pod2tests
-
-=head1 SYNOPSIS
-
- pod2test [-Mmodule] [input [output]]
-
-=head1 DESCRIPTION
-
-B<pod2test> is a front-end for Test::Inline. It generates the
-"Bodies" of MakeMaker style .t testing files from embedded tests and
-code examples.
-
-If output is not specified, the resulting .t file will go to STDOUT.
-Otherwise, it will go to the given output file. If input is not
-given, it will draw from STDIN.
-
-If the given file contains no tests or code examples, no output will
-be given and no output file will be created.
-
-=cut
-
-my($infile, $outfile) = @ARGV;
-my($infh,$outfh);
-
-
-if( defined $infile ) {
- $infh = gensym;
- open($infh, $infile) or
- die "Can't open the POD file $infile: $!";
-}
-else {
- $infh = \*STDIN;
-}
-
-unless ($outfile) {
- ( my $test = $infile ) =~ s/\.(pm|pod)$//;
- $test =~ s/^lib\W//;
- $test =~ s/\W/-/;
- $test =~ s/\//__/g;
-
- $outfile = "lib/t/autogen/autogen-$test.t";
-}
-
-
-my $p = Pod::Tests->new;
-$p->parse_fh($infh);
-
-# XXX Hack to put the filename into the #line directive
-$p->{file} = $infile || '';
-
-my @tests = $p->build_tests($p->tests);
-my @examples = $p->build_examples($p->examples);
-
-exit unless @tests or @examples;
-
-
-if( defined $outfile) {
- $outfh = gensym;
- open($outfh, ">$outfile") or
- die "Can't open the test file $outfile: $!";
-}
-else {
- $outfh = \*STDOUT;
-}
-
-
-print $outfh <<EOF;
-
-use Test::More qw/no_plan/;
-use RT;
-RT::LoadConfig();
-RT::Init();
-
-EOF
-foreach my $test (@tests, @examples) {
- print $outfh "$test\n";
-}
-
-print $outfh "1;\n";
-
-=pod
-
-=head1 BUGS and CAVEATS
-
-This is a very simple rough cut. It only does very rudimentary tests
-on the examples.
-
-=head1 AUTHOR
-
-
-
-Based on pod2tests by Michael G Schwern <schwern@pobox.com>
-
-=head1 SEE ALSO
-
-L<Test::Inline>
-
-=cut
-
-1;
diff --git a/rt/sbin/factory b/rt/sbin/factory
deleted file mode 100644
index 743d8b9..0000000
--- a/rt/sbin/factory
+++ /dev/null
@@ -1,513 +0,0 @@
-#!/usr/bin/perl -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-use DBI;
-
-my $database = shift;
-my $namespace = shift;
-
-my $CollectionBaseclass = 'RT::SearchBuilder';
-my $RecordBaseclass = 'RT::Record';
-
-my $driver = 'mysql';
-my $hostname = 'localhost';
-my $user = 'root';
-my $password = '';
-
-
-my $LicenseBlock = << '.';
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2004 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-.
-
-my $Attribution = << '.';
-# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
-# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.
-#
-# !! DO NOT EDIT THIS FILE !!
-#
-
-use strict;
-.
-
-my $dsn = "DBI:$driver:database=$database;host=$hostname";
-
-my $dbh = DBI->connect( $dsn, $user, $password );
-
-#get all tables out of database
-my @tables = $dbh->tables();
-
-my ( %tablemap, $typemap, %modulemap );
-
-foreach my $table (@tables) {
- $table =~ s/\`//g;
- next if ($table eq 'sessions');
- $table = ucfirst($table);
- $table =~ s/field/Field/;
- $table =~ s/group/Group/;
- $table =~ s/custom/Custom/;
- $table =~ s/member/Member/;
- $table =~ s/Scripaction/ScripAction/g;
- $table =~ s/condition/Condition/g;
- $table =~ s/value/Value/;
- $table =~ s/Acl/ACL/g;
- $tablemap{$table} = $table;
- $modulemap{$table} = $table;
- if ( $table =~ /^(.*)s$/ ) {
- $tablemap{$1} = $table;
- $modulemap{$1} = $1;
- }
-}
-$tablemap{'CreatedBy'} = 'User';
-$tablemap{'UpdatedBy'} = 'User';
-
-my %typemap;
-$typemap{'id'} = 'ro';
-$typemap{'Creator'} = 'auto';
-$typemap{'Created'} = 'auto';
-$typemap{'Updated'} = 'auto';
-$typemap{'UpdatedBy'} = 'auto';
-$typemap{'LastUpdated'} = 'auto';
-$typemap{'LastUpdatedBy'} = 'auto';
-
-foreach my $table (@tables) {
- next if ($table eq 'sessions');
- my $tablesingle = $table;
- $tablesingle =~ s/s$//;
- my $tableplural = $tablesingle . "s";
-
- if ( $tablesingle eq 'ACL' ) {
- $tablesingle = "ACE";
- $tableplural = "ACL";
- }
-
- my %requirements;
-
- my $CollectionClassName = $namespace . "::" . $tableplural;
- my $RecordClassName = $namespace . "::" . $tablesingle;
-
- my $path = $namespace;
- $path =~ s/::/\//g;
-
- my $RecordClassPath = $path . "/" . $tablesingle . ".pm";
- my $CollectionClassPath = $path . "/" . $tableplural . ".pm";
-
- #create a collection class
- my $CreateInParams;
- my $CreateOutParams;
- my $ClassAccessible = "";
- my $FieldsPod = "";
- my $CreatePod = "";
- my $RecordInit = "";
- my %fields;
-
-
- my $introspection = $dbh->prepare("SELECT * from $table where id is null");
- $introspection->execute();
- my @names =@{ $introspection->{'NAME'}};
- my @types = @{$introspection->{'TYPE'}};
- my @is_blob = @{$introspection->{'mysql_is_blob'}};
- my @is_num = @{$introspection->{'mysql_is_num'}};
-
- my %blobness = ();
- my %sqltypes = ();
- my %numeric = ();
- foreach my $name (@names) {
- $sqltypes{$name} = shift @types;
- $blobness{$name} = (shift @is_blob || "0");
- $numeric{$name} = (shift @is_num || "0");
- }
-
-
- my $sth = $dbh->prepare("DESCRIBE $table");
- $sth->execute;
-
- while ( my $row = $sth->fetchrow_hashref() ) {
- my $field = $row->{'Field'};
- my $type = $row->{'Type'};
- my $default = $row->{'Default'};
- my $length = 0;
- if ($type =~ /^(?:.*?)\((\d+)\)$/) {
- $length = $1;
- }
- $fields{$field} = 1;
-
- #generate the 'accessible' datastructure
-
- no warnings 'uninitialized';
-
- if ( $typemap{$field} eq 'auto' ) {
- $ClassAccessible .= " $field =>
- {read => 1, auto => 1,";
- }
- elsif ( $typemap{$field} eq 'ro' ) {
- $ClassAccessible .= " $field =>
- {read => 1,";
- }
- else {
- $ClassAccessible .= " $field =>
- {read => 1, write => 1,";
-
- }
- $ClassAccessible .= " sql_type => $sqltypes{$field}, length => $length, is_blob => $blobness{$field}, is_numeric => $numeric{$field}, ";
- $ClassAccessible .= " type => '$type', default => '$default'},\n";
-
- #generate pod for the accessible fields
- $FieldsPod .= "
-=head2 $field
-
-Returns the current value of $field.
-(In the database, $field is stored as $type.)
-
-";
-
- unless ( exists $typemap{$field} && ( $typemap{$field} eq 'auto' || $typemap{$field} eq 'ro' )) {
- $FieldsPod .= "
-
-=head2 Set$field VALUE
-
-
-Set $field to VALUE.
-Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
-(In the database, $field will be stored as a $type.)
-
-";
- }
-
- $FieldsPod .= "
-=cut
-
-";
-
- if ( $modulemap{$field} ) {
- $FieldsPod .= "
-=head2 ${field}Obj
-
-Returns the $modulemap{$field} Object which has the id returned by $field
-
-
-=cut
-
-sub ${field}Obj {
- my \$self = shift;
- my \$$field = ${namespace}::$modulemap{$field}->new(\$self->CurrentUser);
- \$$field->Load(\$self->__Value('$field'));
- return(\$$field);
-}
-";
- $requirements{ $tablemap{$field} } =
- "use ${namespace}::$modulemap{$field};";
-
- }
-
- unless ( $typemap{$field} eq 'auto' || $field eq 'id' ) {
-
- #generate create statement
- $CreateInParams .= " $field => '$default',\n";
- $CreateOutParams .=
- " $field => \$args{'$field'},\n";
-
- #gerenate pod for the create statement
- $CreatePod .= " $type '$field'";
- $CreatePod .= " defaults to '$default'" if ($default);
- $CreatePod .= ".\n";
-
- }
-
- }
-
- my $Create = "
-sub Create {
- my \$self = shift;
- my \%args = (
-$CreateInParams
- \@_);
- \$self->SUPER::Create(
-$CreateOutParams);
-
-}
-";
- $CreatePod .= "\n=cut\n\n";
-
- my $CollectionClass = $LicenseBlock . $Attribution .
-
- "
-
-=head1 NAME
-
- $CollectionClassName -- Class Description
-
-=head1 SYNOPSIS
-
- use $CollectionClassName
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=cut
-
-package $CollectionClassName;
-
-use $CollectionBaseclass;
-use $RecordClassName;
-
-use vars qw( \@ISA );
-\@ISA= qw($CollectionBaseclass);
-
-
-sub _Init {
- my \$self = shift;
- \$self->{'table'} = '$table';
- \$self->{'primary_key'} = 'id';
-
-";
-
- if ( $fields{'SortOrder'} ) {
-
- $CollectionClass .= "
-
- # By default, order by SortOrder
- \$self->OrderByCols(
- { ALIAS => 'main',
- FIELD => 'SortOrder',
- ORDER => 'ASC' },
- { ALIAS => 'main',
- FIELD => 'id',
- ORDER => 'ASC' },
- );
-";
- }
- $CollectionClass .= "
- return ( \$self->SUPER::_Init(\@_) );
-}
-
-
-=head2 NewItem
-
-Returns an empty new $RecordClassName item
-
-=cut
-
-sub NewItem {
- my \$self = shift;
- return($RecordClassName->new(\$self->CurrentUser));
-}
-" . MagicImport($CollectionClassName);
-
- my $RecordClassHeader = $Attribution . "
-
-=head1 NAME
-
-$RecordClassName
-
-
-=head1 SYNOPSIS
-
-=head1 DESCRIPTION
-
-=head1 METHODS
-
-=cut
-
-package $RecordClassName;
-use $RecordBaseclass;
-";
-
- foreach my $key ( keys %requirements ) {
- $RecordClassHeader .= $requirements{$key} . "\n";
- }
- $RecordClassHeader .= "
-
-use vars qw( \@ISA );
-\@ISA= qw( $RecordBaseclass );
-
-sub _Init {
- my \$self = shift;
-
- \$self->Table('$table');
- \$self->SUPER::_Init(\@_);
-}
-
-";
-
- my $RecordClass = $LicenseBlock . $RecordClassHeader . "
-
-$RecordInit
-
-=head2 Create PARAMHASH
-
-Create takes a hash of values and creates a row in the database:
-
-$CreatePod
-
-$Create
-
-$FieldsPod
-
-sub _CoreAccessible {
- {
-
-$ClassAccessible
- }
-};
-
-" . MagicImport($RecordClassName);
-
- print "About to make $RecordClassPath, $CollectionClassPath\n";
- `mkdir -p $path`;
-
- open( RECORD, ">$RecordClassPath" );
- print RECORD $RecordClass;
- close(RECORD);
-
- open( COL, ">$CollectionClassPath" );
- print COL $CollectionClass;
- close(COL);
-
-}
-
-sub MagicImport {
- my $class = shift;
-
- #if (exists \$warnings::{unimport}) {
- # no warnings qw(redefine);
-
- my $path = $class;
- $path =~ s#::#/#gi;
-
-
- my $content = "
- eval \"require @{[$class]}_Overlay\";
- if (\$@ && \$@ !~ qr{^Can't locate ".$path."_Overlay.pm}) {
- die \$@;
- };
-
- eval \"require @{[$class]}_Vendor\";
- if (\$@ && \$@ !~ qr{^Can't locate ".$path."_Vendor.pm}) {
- die \$@;
- };
-
- eval \"require @{[$class]}_Local\";
- if (\$@ && \$@ !~ qr{^Can't locate ".$path."_Local.pm}) {
- die \$@;
- };
-
-
-
-
-=head1 SEE ALSO
-
-This class allows \"overlay\" methods to be placed
-into the following files _Overlay is for a System overlay by the original author,
-_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.
-
-These overlay files can contain new subs or subs to replace existing subs in this module.
-
-Each of these files should begin with the line
-
- no warnings qw(redefine);
-
-so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.
-
-@{[$class]}_Overlay, @{[$class]}_Vendor, @{[$class]}_Local
-
-=cut
-
-
-1;
-";
-
- return $content;
-}
-
-# }}}
-
diff --git a/rt/sbin/license_tag b/rt/sbin/license_tag
deleted file mode 100644
index 906d349..0000000
--- a/rt/sbin/license_tag
+++ /dev/null
@@ -1,239 +0,0 @@
-#!/usr/bin/perl
-
-
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-my $LICENSE = <<'EOL';
-
-COPYRIGHT:
-
-This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
- <jesse@bestpractical.com>
-
-(Except where explicitly superseded by other copyright notices)
-
-
-LICENSE:
-
-This work is made available to you under the terms of Version 2 of
-the GNU General Public License. A copy of that license should have
-been provided with this software, but in any event can be snarfed
-from www.gnu.org.
-
-This work is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-
-CONTRIBUTION SUBMISSION POLICY:
-
-(The following paragraph is not intended to limit the rights granted
-to you to modify and distribute this software under the terms of
-the GNU General Public License and is only of importance to you if
-you choose to contribute your changes and enhancements to the
-community by submitting them to Best Practical Solutions, LLC.)
-
-By intentionally submitting any modifications, corrections or
-derivatives to this work, or any other work intended for use with
-Request Tracker, to Best Practical Solutions, LLC, you confirm that
-you are the copyright holder for those contributions and you grant
-Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-royalty-free, perpetual, license to use, copy, create derivative
-works based on those contributions, and sublicense and distribute
-those contributions and any derivatives thereof.
-
-EOL
-
-use File::Find;
-
-my @MAKE = qw(Makefile);
-
-File::Find::find({ no_chdir => 1, wanted => \&tag_pm}, 'lib');
-File::Find::find({ no_chdir => 1, wanted => \&tag_mason}, 'html');
-File::Find::find({ no_chdir => 1, wanted => \&tag_script}, 'sbin');
-File::Find::find({ no_chdir => 1, wanted => \&tag_script}, 'bin');
-tag_makefile ('Makefile.in');
-tag_makefile ('README');
-
-
-sub tag_mason {
- my $pm = $_;
- next unless (-f $pm);
- next if ($pm =~ /images/);
- open(FILE,"<$pm") || die "Failed to open $pm";
- my $file = (join "", <FILE>);
- close (FILE);
- my $pmlic = $LICENSE;
- $pmlic =~ s/^/%# /mg;
-
-
- print "$pm - ";
- if ($file =~ /^%# BEGIN BPS TAGGED BLOCK {{{/ms) {
- print "has license section";
- $file =~ s/^%# BEGIN BPS TAGGED BLOCK {{{(.*?)%# END BPS TAGGED BLOCK }}}/%# BEGIN BPS TAGGED BLOCK {{{\n$pmlic%# END BPS TAGGED BLOCK }}}/ms;
-
-
- } else {
- print "no license section";
- $file ="%# BEGIN BPS TAGGED BLOCK {{{\n$pmlic%# END BPS TAGGED BLOCK }}}\n". $file;
- }
- $file =~ s/%# END BPS TAGGED BLOCK }}}(\n+)/%# END BPS TAGGED BLOCK }}}\n/mg;
- print "\n";
-
-
-
-
- open (FILE, ">$pm") || die "couldn't write new file";
- print FILE $file;
- close FILE;
-
-}
-
-
-sub tag_makefile {
- my $pm = shift;
- open(FILE,"<$pm") || die "Failed to open $pm";
- my $file = (join "", <FILE>);
- close (FILE);
- my $pmlic = $LICENSE;
- $pmlic =~ s/^/# /mg;
-
-
- print "$pm - ";
- if ($file =~ /^# BEGIN BPS TAGGED BLOCK {{{/ms) {
- print "has license section";
- $file =~ s/^# BEGIN BPS TAGGED BLOCK {{{(.*?)# END BPS TAGGED BLOCK }}}/# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}/ms;
-
-
- } else {
- print "no license section";
- $file ="# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}\n". $file;
- }
- $file =~ s/# END BPS TAGGED BLOCK }}}(\n+)/# END BPS TAGGED BLOCK }}}\n/mg;
- print "\n";
-
-
-
-
- open (FILE, ">$pm") || die "couldn't write new file";
- print FILE $file;
- close FILE;
-
-}
-
-
-sub tag_pm {
- my $pm = $_;
- next unless $pm =~ /\.pm/s;
- open(FILE,"<$pm") || die "Failed to open $pm";
- my $file = (join "", <FILE>);
- close (FILE);
- my $pmlic = $LICENSE;
- $pmlic =~ s/^/# /mg;
-
-
- print "$pm - ";
- if ($file =~ /^# BEGIN BPS TAGGED BLOCK {{{/ms) {
- print "has license section";
- $file =~ s/^# BEGIN BPS TAGGED BLOCK {{{(.*?)# END BPS TAGGED BLOCK }}}/# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}/ms;
-
-
- } else {
- print "no license section";
- $file ="# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}\n". $file;
- }
- $file =~ s/# END BPS TAGGED BLOCK }}}(\n+)/# END BPS TAGGED BLOCK }}}\n/mg;
- print "\n";
-
-
-
-
- open (FILE, ">$pm") || die "couldn't write new file $pm";
- print FILE $file;
- close FILE;
-
-}
-
-
-sub tag_script {
- my $pm = $_;
- return unless (-f $pm);
- open(FILE,"<$pm") || die "Failed to open $pm";
- my $file = (join "", <FILE>);
- close (FILE);
- my $pmlic = $LICENSE;
- $pmlic =~ s/^/# /msg;
-
- print "$pm - ";
- if ($file =~ /^# BEGIN BPS TAGGED BLOCK {{{/ms) {
- print "has license section";
- $file =~ s/^# BEGIN BPS TAGGED BLOCK {{{(.*?)# END BPS TAGGED BLOCK }}}/# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}/ms;
-
-
- } else {
- print "no license section";
- if ($file =~ /^(#!.*?)\n/) {
-
- my $lic ="# BEGIN BPS TAGGED BLOCK {{{\n$pmlic# END BPS TAGGED BLOCK }}}\n";
- $file =~ s/^(#!.*?)\n/$1\n$lic/;
-
- }
- }
- $file =~ s/# END BPS TAGGED BLOCK }}}(\n+)/# END BPS TAGGED BLOCK }}}\n/mg;
- print "\n";
-
-
- open (FILE, ">$pm") || die "couldn't write new file";
- print FILE $file;
- close FILE;
-
-}
-
diff --git a/rt/sbin/regression_harness b/rt/sbin/regression_harness
deleted file mode 100644
index d98e462..0000000
--- a/rt/sbin/regression_harness
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/perl
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-open (FH,"make regression|");
-
-my $skip_frontmatter = 1;
-while (<FH>) {
- next if /^ok/;
- $skip_frontmatter = 0 if (/autogen/);
- print $_ unless ($skip_frontmatter);
-}
diff --git a/rt/sbin/rt-dump-database.in b/rt/sbin/rt-dump-database.in
deleted file mode 100755
index bcc7bb7..0000000
--- a/rt/sbin/rt-dump-database.in
+++ /dev/null
@@ -1,168 +0,0 @@
-#!@PERL@ -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-use lib "@RT_LIB_PATH@";
-use RT;
-use XML::Simple;
-
-RT::LoadConfig();
-RT::Init();
-
-my $LocalOnly = @ARGV ? shift(@ARGV) : 1;
-
-my %RV;
-my %Ignore = (
- All => [qw(
- id Created Creator LastUpdated LastUpdatedBy
- )],
- Templates => [qw(
- TranslationOf
- )],
-);
-
-my $SystemUserId = $RT::SystemUser->Id;
-my @classes = qw(
- Users Groups Queues ScripActions ScripConditions
- Templates Scrips ACL CustomFields
-);
-foreach my $class (@classes) {
- require "RT/$class.pm";
- my $objects = "RT::$class"->new($RT::SystemUser);
- $objects->{find_disabled_rows} = 1;
- $objects->UnLimit;
-
- if ($class eq 'CustomFields') {
- $objects->OrderByCols(
- { FIELD => 'LookupType' },
- { FIELD => 'SortOrder' },
- { FIELD => 'Id' },
- );
- }
- else {
- $objects->OrderBy( FIELD => 'Id' );
- }
-
- if ($LocalOnly) {
- next if $class eq 'ACL'; # XXX - would go into infinite loop - XXX
- $objects->Limit( FIELD => 'LastUpdatedBy', OPERATOR => '!=', VALUE => $SystemUserId )
- unless $class eq 'Groups';
- $objects->Limit( FIELD => 'Id', OPERATOR => '!=', VALUE => $SystemUserId )
- if $class eq 'Users';
- $objects->Limit( FIELD => 'Domain', OPERATOR => '=', VALUE => 'UserDefined' )
- if $class eq 'Groups';
- }
-
- my %fields;
- while (my $obj = $objects->Next) {
- next if $obj->can('LastUpdatedBy') and $obj->LastUpdatedBy == $SystemUserId;
-
- if (!%fields) {
- %fields = map { $_ => 1 } keys %{$obj->_ClassAccessible};
- delete @fields{
- @{$Ignore{$class}||=[]},
- @{$Ignore{All}||=[]},
- };
- }
-
- my $rv;
- # next if $obj-> # skip default names
- foreach my $field (sort keys %fields) {
- my $value = $obj->__Value($field);
- $rv->{$field} = $value if length($value);
- }
- delete $rv->{Disabled} unless $rv->{Disabled};
-
- foreach my $record (map { /ACL/ ? 'ACE' : substr($_, 0, -1) } @classes) {
- foreach my $key (map "$record$_", ('', 'Id')) {
- next unless exists $rv->{$key};
- my $id = $rv->{$key} or next;
- my $obj = "RT::$record"->new($RT::SystemUser);
- $obj->LoadByCols( Id => $id ) or next;
- $rv->{$key} = $obj->__Value('Name') || 0;
- }
- }
-
- if ($class eq 'Users' and defined $obj->Privileged) {
- $rv->{Privileged} = int($obj->Privileged);
- }
- elsif ($class eq 'CustomFields') {
- my $values = $obj->Values;
- while (my $value = $values->Next) {
- push @{$rv->{Values}}, {
- map { ($_ => $value->__Value($_)) } qw(
- Name Description SortOrder
- ),
- };
- }
- }
-
- if (eval { require RT::Attributes; 1 }) {
- my $attributes = $obj->Attributes;
- while (my $attribute = $attributes->Next) {
- my $content = $attribute->Content;
- $rv->{Attributes}{$attribute->Name} = $content if length($content);
- }
- }
-
- push @{$RV{$class}}, $rv;
- }
-}
-
-print(<< ".");
-no strict; use XML::Simple; *_ = XMLin(do { local \$/; readline(DATA) }, ForceArray => [qw(
- @classes Values
-)], NoAttr => 1, SuppressEmpty => ''); *\$_ = (\$_{\$_} || []) for keys \%_; 1; # vim: ft=xml
-__DATA__
-.
-
-print XMLout(
- { map { ($_ => ($RV{$_} || [])) } @classes },
- RootName => 'InitialData',
- NoAttr => 1,
- SuppressEmpty => '',
- XMLDecl => '<?xml version="1.0" encoding="UTF-8"?>',
-);
diff --git a/rt/sbin/rt-setup-database.in b/rt/sbin/rt-setup-database.in
deleted file mode 100644
index 49feba8..0000000
--- a/rt/sbin/rt-setup-database.in
+++ /dev/null
@@ -1,678 +0,0 @@
-#!@PERL@ -w
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-use strict;
-use vars qw($PROMPT $VERSION $Handle $Nobody $SystemUser $item);
-use vars
- qw(@Groups @Users @ACL @Queues @ScripActions @ScripConditions @Templates @CustomFields @Scrips);
-
-use lib "@RT_LIB_PATH@";
-
-#This drags in RT's config.pm
-# We do it in a begin block because RT::Handle needs to know the type to do its
-# inheritance
-use RT;
-use Carp;
-use RT::User;
-use RT::CurrentUser;
-use RT::Template;
-use RT::ScripAction;
-use RT::ACE;
-use RT::Group;
-use RT::User;
-use RT::Queue;
-use RT::ScripCondition;
-use RT::CustomField;
-use RT::Scrip;
-
-RT::LoadConfig();
-use Term::ReadKey;
-use Getopt::Long;
-
-my %args;
-
-GetOptions(
- \%args,
- 'prompt-for-dba-password', 'force', 'debug',
- 'action=s', 'dba=s', 'dba-password=s', 'datafile=s',
- 'datadir=s'
-);
-
-$| = 1; #unbuffer that output.
-
-require RT::Handle;
-my $Handle = RT::Handle->new($RT::DatabaseType);
-$Handle->BuildDSN;
-my $dbh;
-
-if ( $args{'prompt-for-dba-password'} ) {
- $args{'dba-password'} = get_dba_password();
- chomp( $args{'dba-password'} );
-}
-
-unless ( $args{'action'} ) {
- help();
- die;
-}
-if ( $args{'action'} eq 'init' ) {
- $dbh = DBI->connect( get_system_dsn(), $args{'dba'}, $args{'dba-password'} )
- || die "Failed to connect to " . get_system_dsn() . " as $args{'dba'}: $DBI::errstr";
- print "Now creating a database for RT.\n";
- if ($RT::DatabaseType ne 'Oracle' ||
- $args{'dba'} ne $RT::DatabaseUser) {
- create_db();
- } else {
- print "...skipped as ".$args{'dba'} ." is not " . $RT::DatabaseUser . " or we're working with Oracle.\n";
- }
-
- if ($RT::DatabaseType eq "mysql") {
- # Check which version we're running
- my ($version) = $dbh->selectrow_hashref("show variables like 'version'")->{Value} =~ /^(\d\.\d+)/;
- print "*** Warning: RT is unsupported on MySQL versions before 4.0.x\n" if $version < 4;
-
- # MySQL must have InnoDB support
- my $innodb = $dbh->selectrow_hashref("show variables like 'have_innodb'")->{Value};
- if ($innodb eq "NO") {
- die "RT requires that MySQL be compiled with InnoDB table support.\n".
- "See http://dev.mysql.com/doc/mysql/en/InnoDB.html\n";
- } elsif ($innodb eq "DISABLED") {
- die "RT requires that MySQL InnoDB table support be enabled.\n".
- ($version < 4
- ? "Add 'innodb_data_file_path=ibdata1:10M:autoextend' to the [mysqld] section of my.cnf\n"
- : "Remove the 'skip-innodb' line from your my.cnf file, restart MySQL, and try again.\n");
- }
- }
-
- # SQLite can't deal with the disconnect/reconnect
- unless ($RT::DatabaseType eq 'SQLite') {
-
- $dbh->disconnect;
- $dbh = DBI->connect( $Handle->DSN, $args{'dba'}, $args{'dba-password'} ) || die $DBI::errstr;
- }
- print "Now populating database schema.\n";
- insert_schema();
- print "Now inserting database ACLs\n";
- insert_acl() unless ($RT::DatabaseType eq 'Oracle');
- print "Now inserting RT core system objects\n";
- insert_initial_data();
- print "Now inserting RT data\n";
- insert_data( $RT::EtcPath . "/initialdata" );
-}
-elsif ( $args{'action'} eq 'drop' ) {
- unless ( $dbh =
- DBI->connect( get_system_dsn(), $args{'dba'}, $args{'dba-password'} ) )
- {
- warn $DBI::errstr;
- warn "Database doesn't appear to exist. Aborting database drop.";
- exit(0);
- }
- drop_db();
-}
-elsif ( $args{'action'} eq 'insert_initial' ) {
- insert_initial_data();
-}
-elsif ( $args{'action'} eq 'insert' ) {
- insert_data( $args{'datafile'} || ($args{'datadir'}."/content"));
-}
-elsif ($args{'action'} eq 'acl') {
- $dbh = DBI->connect( $Handle->DSN, $args{'dba'}, $args{'dba-password'} )
- || die "Failed to connect to " . get_system_dsn() . " as $args{'dba'}: $DBI::errstr";
- insert_acl($args{'datadir'});
-}
-elsif ($args{'action'} eq 'schema') {
- $dbh = DBI->connect( $Handle->DSN, $args{'dba'}, $args{'dba-password'} )
- || die "Failed to connect to " . get_system_dsn() . " as $args{'dba'}: $DBI::errstr";
- insert_schema($args{'datadir'});
-}
-
-else {
- print STDERR '$0 called with an invalid --action parameter';
- exit(-1);
-}
-
-# {{{ sub insert_schema
-sub insert_schema {
- my $base_path = (shift || $RT::EtcPath);
- my (@schema);
- print "Creating database schema.\n";
-
- if ( -f $base_path . "/schema." . $RT::DatabaseType ) {
- no warnings 'unopened';
-
- open( SCHEMA, "<" . $base_path . "/schema." . $RT::DatabaseType );
- open( SCHEMA_LOCAL, "<" . $RT::LocalEtcPath . "/schema." . $RT::DatabaseType );
-
- my $statement = "";
- foreach my $line (<SCHEMA>, ($_ = ';;'), <SCHEMA_LOCAL>) {
- $line =~ s/\#.*//g;
- $line =~ s/--.*//g;
- $statement .= $line;
- if ( $line =~ /;(\s*)$/ ) {
- $statement =~ s/;(\s*)$//g;
- push @schema, $statement;
- $statement = "";
- }
- }
-
- local $SIG{__WARN__} = sub {};
- my $is_local = 0; # local/etc/schema needs to be nonfatal.
- $dbh->begin_work or die $dbh->errstr;
- foreach my $statement (@schema) {
- if ($statement =~ /^\s*;$/) { $is_local = 1; next; }
- print STDERR "SQL: $statement\n" if defined $args{'debug'};
- my $sth = $dbh->prepare($statement) or die $dbh->errstr;
- unless ( $sth->execute or $is_local ) {
- die "Problem with statement:\n $statement\n" . $sth->errstr;
- }
- }
- $dbh->commit or die $dbh->errstr;
-
- }
- else {
- die "Couldn't find schema file for " . $RT::DatabaseType . "\n";
- }
- print "Done setting up database schema.\n";
-
-}
-
-# }}}
-
-# {{{ sub drop_db
-sub drop_db {
- if ( $RT::DatabaseType eq 'Oracle' ) {
- print <<END;
-
-To delete the tables and sequences of the RT Oracle database by running
- \@etc/drop.Oracle
-through SQLPlus.
-
-END
- return;
- }
- unless ( $args{'force'} ) {
- print <<END;
-
-About to drop $RT::DatabaseType database $RT::DatabaseName on $RT::DatabaseHost.
-WARNING: This will erase all data in $RT::DatabaseName.
-
-END
- exit unless _yesno();
-
- }
-
- print "Dropping $RT::DatabaseType database $RT::DatabaseName.\n";
-
- if ( $RT::DatabaseType eq 'SQLite' ) {
- unlink $RT::DatabaseName or warn $!;
- return;
- }
- $dbh->do("Drop DATABASE $RT::DatabaseName") or warn $DBI::errstr;
-}
-
-# }}}
-
-# {{{ sub create_db
-sub create_db {
- print "Creating $RT::DatabaseType database $RT::DatabaseName.\n";
- if ( $RT::DatabaseType eq 'SQLite' ) {
- return;
- }
- elsif ( $RT::DatabaseType eq 'Pg' ) {
- $dbh->do("CREATE DATABASE $RT::DatabaseName WITH ENCODING='UNICODE'");
- if ($DBI::errstr) {
- $dbh->do("CREATE DATABASE $RT::DatabaseName") || die $DBI::errstr;
- }
- }
- elsif ($RT::DatabaseType eq 'Oracle') {
- insert_acl();
- }
- elsif ( $RT::DatabaseType eq 'Informix' ) {
- $ENV{DB_LOCALE} = 'en_us.utf8';
- $dbh->do("CREATE DATABASE $RT::DatabaseName WITH BUFFERED LOG");
- }
- else {
- $dbh->do("CREATE DATABASE $RT::DatabaseName") or die $DBI::errstr;
- }
-}
-
-# }}}
-
-sub get_dba_password {
- print "In order to create or update your RT database,";
- print "this script needs to connect to your "
- . $RT::DatabaseType
- . " instance on "
- . $RT::DatabaseHost . " as "
- . $args{'dba'} . ".\n";
- print "Please specify that user's database password below. If the user has no database\n";
- print "password, just press return.\n\n";
- print "Password: ";
- ReadMode('noecho');
- my $password = ReadLine(0);
- ReadMode('normal');
- print "\n";
- return ($password);
-}
-
-# {{{ sub _yesno
-sub _yesno {
- print "Proceed [y/N]:";
- my $x = scalar(<STDIN>);
- $x =~ /^y/i;
-}
-
-# }}}
-
-# {{{ insert_acls
-sub insert_acl {
-
- my $base_path = (shift || $RT::EtcPath);
-
- if ( $RT::DatabaseType =~ /^oracle$/i ) {
- do $base_path . "/acl.Oracle"
- || die "Couldn't find ACLS for Oracle\n" . $@;
- }
- elsif ( $RT::DatabaseType =~ /^pg$/i ) {
- do $base_path . "/acl.Pg" || die "Couldn't find ACLS for Pg\n" . $@;
- }
- elsif ( $RT::DatabaseType =~ /^mysql$/i ) {
- do $base_path . "/acl.mysql"
- || die "Couldn't find ACLS for mysql in $base_path\n" . $@;
- }
- elsif ( $RT::DatabaseType =~ /^Sybase$/i ) {
- do $base_path . "/acl.Sybase"
- || die "Couldn't find ACLS for Sybase in $base_path\n" . $@;
- }
- elsif ( $RT::DatabaseType =~ /^informix$/i ) {
- do $base_path . "/acl.Informix"
- || die "Couldn't find ACLS for Informix in $base_path\n" . $@;
- }
- elsif ( $RT::DatabaseType =~ /^SQLite$/i ) {
- return;
- }
- else {
- die "Unknown RT database type";
- }
-
- my @acl = acl($dbh);
- foreach my $statement (@acl) {
- print STDERR $statement if $args{'debug'};
- my $sth = $dbh->prepare($statement) or die $dbh->errstr;
- unless ( $sth->execute ) {
- die "Problem with statement:\n $statement\n" . $sth->errstr;
- }
- }
- print "Done setting up database ACLs.\n";
-}
-
-# }}}
-
-=head2 get_system_dsn
-
-Returns a dsn suitable for database creates and drops
-and user creates and drops
-
-=cut
-
-sub get_system_dsn {
-
- my $dsn = $Handle->DSN;
-
- #with mysql, you want to connect sans database to funge things
- if ( $RT::DatabaseType eq 'mysql' ) {
- $dsn =~ s/dbname=$RT::DatabaseName//;
-
- # with postgres, you want to connect to database1
- }
- elsif ( $RT::DatabaseType eq 'Pg' ) {
- $dsn =~ s/dbname=$RT::DatabaseName/dbname=template1/;
- }
- elsif ( $RT::DatabaseType eq 'Informix' ) {
- # with Informix, you want to connect sans database:
- $dsn =~ s/Informix:$RT::DatabaseName/Informix:/;
- }
- return $dsn;
-}
-
-sub insert_initial_data {
-
- RT::InitLogging();
-
- #connect to the db, for actual RT work
- require RT::Handle;
- $RT::Handle = RT::Handle->new();
- $RT::Handle->Connect();
-
- #Put together a current user object so we can create a User object
- my $CurrentUser = new RT::CurrentUser();
-
- print "Checking for existing system user...";
- my $test_user = RT::User->new($CurrentUser);
- $test_user->Load('RT_System');
- if ( $test_user->id ) {
- print "found!\n\nYou appear to have a functional RT database.\n"
- . "Exiting, so as not to clobber your existing data.\n";
- exit(-1);
-
- }
- else {
- print "not found. This appears to be a new installation.\n";
- }
-
- print "Creating system user...";
- my $RT_System = new RT::User($CurrentUser);
-
- my ( $val, $msg ) = $RT_System->_BootstrapCreate(
- Name => 'RT_System',
- RealName => 'The RT System itself',
- Comments =>
-'Do not delete or modify this user. It is integral to RT\'s internal database structures',
- Creator => '1',
- LastUpdatedBy => '1' );
-
- unless ($val) {
- print "$msg\n";
- exit(1);
- }
- print "done.\n";
- $RT::Handle->Disconnect() unless ($RT::DatabaseType eq 'SQLite');
-
-}
-
-# load some sort of data into the database
-
-sub insert_data {
- my $datafile = shift;
-
- #Connect to the database and get RT::SystemUser and RT::Nobody loaded
- RT::Init;
-
- my $CurrentUser = RT::CurrentUser->new();
- $CurrentUser->LoadByName('RT_System');
-
- if ( $datafile eq $RT::EtcPath . "/initialdata" ) {
-
- print "Creating Superuser ACL...";
-
- my $superuser_ace = RT::ACE->new($CurrentUser);
- $superuser_ace->_BootstrapCreate(
- PrincipalId => ACLEquivGroupId( $CurrentUser->Id ),
- PrincipalType => 'Group',
- RightName => 'SuperUser',
- ObjectType => 'RT::System',
- ObjectId => '1' );
-
- print "done.\n";
- }
-
- # Slurp in stuff to insert from the datafile. Possible things to go in here:-
- # @groups, @users, @acl, @queues, @ScripActions, @ScripConditions, @templates
-
- require $datafile
- || die "Couldn't find initial data for import\n" . $@;
-
- if (@Groups) {
- print "Creating groups...";
- foreach $item (@Groups) {
- my $new_entry = RT::Group->new($CurrentUser);
- my ( $return, $msg ) = $new_entry->_Create(%$item);
- print "(Error: $msg)" unless ($return);
- print $return. ".";
- }
- print "done.\n";
- }
- if (@Users) {
- print "Creating users...";
- foreach $item (@Users) {
- my $new_entry = new RT::User($CurrentUser);
- my ( $return, $msg ) = $new_entry->Create(%$item);
- print "(Error: $msg)" unless ($return);
- print $return. ".";
- }
- print "done.\n";
- }
- if (@Queues) {
- print "Creating queues...";
- for $item (@Queues) {
- my $new_entry = new RT::Queue($CurrentUser);
- my ( $return, $msg ) = $new_entry->Create(%$item);
- print "(Error: $msg)" unless ($return);
- print $return. ".";
- }
- print "done.\n";
- }
- if (@ACL) {
- print "Creating ACL...";
- for my $item (@ACL) {
-
- my ($princ, $object);
-
- # Global rights or Queue rights?
- if ($item->{'Queue'}) {
- $object = RT::Queue->new($CurrentUser);
- $object->Load( $item->{'Queue'} );
- } else {
- $object = $RT::System;
- }
-
- # Group rights or user rights?
- if ($item->{'GroupDomain'}) {
- $princ = RT::Group->new($CurrentUser);
- if ($item->{'GroupDomain'} eq 'UserDefined') {
- $princ->LoadUserDefinedGroup( $item->{'GroupId'} );
- } elsif ($item->{'GroupDomain'} eq 'SystemInternal') {
- $princ->LoadSystemInternalGroup( $item->{'GroupType'} );
- } elsif ($item->{'GroupDomain'} eq 'RT::System-Role') {
- $princ->LoadSystemRoleGroup( $item->{'GroupType'} );
- } elsif ($item->{'GroupDomain'} eq 'RT::Queue-Role' &&
- $item->{'Queue'}) {
- $princ->LoadQueueRoleGroup( Type => $item->{'GroupType'},
- Queue => $object->id);
- } else {
- $princ->Load( $item->{'GroupId'} );
- }
- } else {
- $princ = RT::User->new($CurrentUser);
- $princ->Load( $item->{'UserId'} );
- }
-
- # Grant it
- my ( $return, $msg ) = $princ->PrincipalObj->GrantRight(
- Right => $item->{'Right'},
- Object => $object );
-
- if ($return) {
- print $return. ".";
- }
- else {
- print $msg . ".";
-
- }
-
- }
- print "done.\n";
- }
- if (@CustomFields) {
- print "Creating custom fields...";
- for $item (@CustomFields) {
- my $new_entry = new RT::CustomField($CurrentUser);
- my $values = $item->{'Values'};
- delete $item->{'Values'};
- my $q = $item->{'Queue'};
- my $q_obj = RT::Queue->new($CurrentUser);
- $q_obj->Load($q);
- if ( $q_obj->Id ) {
- $item->{'Queue'} = $q_obj->Id;
- }
- elsif ( $q == 0 ) {
- $item->{'Queue'} = 0;
- }
- else {
- print "(Error: Could not find queue " . $q . ")\n"
- unless ( $q_obj->Id );
- next;
- }
- my ( $return, $msg ) = $new_entry->Create(%$item);
-
- foreach my $value ( @{$values} ) {
- my ( $eval, $emsg ) = $new_entry->AddValue(%$value);
- print "(Error: $emsg)\n" unless ($eval);
- }
-
- print "(Error: $msg)\n" unless ($return);
- print $return. ".";
- }
-
- print "done.\n";
- }
-
- if (@ScripActions) {
- print "Creating ScripActions...";
-
- for $item (@ScripActions) {
- my $new_entry = RT::ScripAction->new($CurrentUser);
- my $return = $new_entry->Create(%$item);
- print $return. ".";
- }
-
- print "done.\n";
- }
-
- if (@ScripConditions) {
- print "Creating ScripConditions...";
-
- for $item (@ScripConditions) {
- my $new_entry = RT::ScripCondition->new($CurrentUser);
- my $return = $new_entry->Create(%$item);
- print $return. ".";
- }
-
- print "done.\n";
- }
-
- if (@Templates) {
- print "Creating templates...";
-
- for $item (@Templates) {
- my $new_entry = new RT::Template($CurrentUser);
- my $return = $new_entry->Create(%$item);
- print $return. ".";
- }
- print "done.\n";
- }
- if (@Scrips) {
- print "Creating scrips...";
-
- for $item (@Scrips) {
- my $new_entry = new RT::Scrip($CurrentUser);
- my ( $return, $msg ) = $new_entry->Create(%$item);
- if ($return) {
- print $return. ".";
- }
- else {
- print "(Error: $msg)\n";
- }
- }
- print "done.\n";
- }
- $RT::Handle->Disconnect() unless ($RT::DatabaseType eq 'SQLite');
- print "Done setting up database content.\n";
-}
-
-=head2 ACLEquivGroupId
-
-Given a userid, return that user's acl equivalence group
-
-=cut
-
-sub ACLEquivGroupId {
- my $username = shift;
- my $user = RT::User->new($RT::SystemUser);
- $user->Load($username);
- my $equiv_group = RT::Group->new($RT::SystemUser);
- $equiv_group->LoadACLEquivalenceGroup($user);
- return ( $equiv_group->Id );
-}
-
-sub help {
-
- print <<EOF;
-
-$0: Set up RT's database
-
---action init Initialize the database
- drop Drop the database.
- This will ERASE ALL YOUR DATA
- insert_initial
- Insert RT's core system objects
- insert Insert data into RT's database.
- By default, will use RT's installation data.
- To use a local or supplementary datafile, specify it
- using the '--datafile' option below.
-
- acl Initialize only the database ACLs
- To use a local or supplementary datafile, specify it
- using the '--datadir' option below.
-
- schema Initialize only the database schema
- To use a local or supplementary datafile, specify it
- using the '--datadir' option below.
-
---datafile /path/to/datafile
---datadir /path/to/ Used to specify a path to find the local
- database schema and acls to be installed.
-
-
---dba dba's username
---dba-password dba's password
---prompt-for-dba-password Ask for the database administrator's password interactively
-
-
-EOF
-
-}
-
-1;
diff --git a/rt/sbin/rt-test-dependencies.in b/rt/sbin/rt-test-dependencies.in
deleted file mode 100644
index f79e4e5..0000000
--- a/rt/sbin/rt-test-dependencies.in
+++ /dev/null
@@ -1,377 +0,0 @@
-#!@PERL@
-# BEGIN BPS TAGGED BLOCK {{{
-#
-# COPYRIGHT:
-#
-# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC
-# <jesse@bestpractical.com>
-#
-# (Except where explicitly superseded by other copyright notices)
-#
-#
-# LICENSE:
-#
-# This work is made available to you under the terms of Version 2 of
-# the GNU General Public License. A copy of that license should have
-# been provided with this software, but in any event can be snarfed
-# from www.gnu.org.
-#
-# This work is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#
-# CONTRIBUTION SUBMISSION POLICY:
-#
-# (The following paragraph is not intended to limit the rights granted
-# to you to modify and distribute this software under the terms of
-# the GNU General Public License and is only of importance to you if
-# you choose to contribute your changes and enhancements to the
-# community by submitting them to Best Practical Solutions, LLC.)
-#
-# By intentionally submitting any modifications, corrections or
-# derivatives to this work, or any other work intended for use with
-# Request Tracker, to Best Practical Solutions, LLC, you confirm that
-# you are the copyright holder for those contributions and you grant
-# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
-# royalty-free, perpetual, license to use, copy, create derivative
-# works based on those contributions, and sublicense and distribute
-# those contributions and any derivatives thereof.
-#
-# END BPS TAGGED BLOCK }}}
-#
-# This is just a basic script that checks to make sure that all
-# the modules needed by RT before you can install it.
-#
-
-use strict;
-no warnings qw(numeric redefine);
-use Getopt::Long;
-my %args;
-my %deps;
-GetOptions(
- \%args, 'v|verbose',
- 'install', 'with-MYSQL',
- 'with-POSTGRESQL|with-pg|with-pgsql', 'with-SQLITE',
- 'with-ORACLE', 'with-FASTCGI',
- 'with-SPEEDYCGI', 'with-MODPERL1',
- 'with-MODPERL2', 'with-DEV',
- 'download=s',
- 'repository=s'
-);
-
-unless (keys %args) {
- help();
- exit(0);
-}
-
-# Set up defaults
-$args{'with-MASON'} = 1;
-$args{'with-CORE'} = 1;
-$args{'with-DEV'} =1;
-$args{'with-CLI'} =1;
-$args{'with-MAILGATE'} =1;
-{
- my $section;
- my %always_show_sections = (
- perl => 1,
- users => 1,
- );
-
- sub section {
- my $s = shift;
- $section = $s;
- print "$s:\n";
- }
-
- my $any_missing = 0;
- sub found {
- my $msg = shift;
- my $test = shift;
- my $extra = shift;
-
- $any_missing = 1 unless $test;
- if ($args{'v'} or not $test or $always_show_sections{$section}) {
- print "\t$msg...";
- print $test ? "found" : "MISSING";
- print "\n";
- }
-
- print "\t\t$extra\n" if defined $extra;
- }
-
- sub conclude {
- if ($any_missing) {
- print "\nSOMETHING WAS MISSING!\n";
- } else {
- print "\nEverything was found.\n";
- }
- }
-}
-
-sub help {
-
- print <<'.';
-
-By default, testdeps determine whether you have
-installed all the perl modules RT needs to run.
-
- --install Install missing modules
-
-The following switches will tell the tool to check for specific dependencies
-
- --with-mysql Database interface for MySQL
- --with-postgresql Database interface for PostgreSQL
- --with-sqlite Database interface and driver for SQLite (unsupported)
- --with-oracle Database interface for oracle (unsupported)
-
- --with-fastcgi Libraries needed to support the fastcgi handler
- --with-speedycgi Libraries needed to support the speedycgi handler
- --with-modperl1 Libraries needed to support the modperl 1 handler
- --with-modperl2 Libraries needed to support the modperl 2 handler
-
- --with-dev Tools needed for RT development
-
-You can also specify -v or --verbose to list the status of all dependencies,
-rather than just the missing ones.
-.
-}
-
-
-sub _ {
- map { /(\S+)\s*(\S*)/; $1 => ($2 ? $2 :'') } split ( /\n/, $_[0] );
-}
-
-$deps{'CORE'} = [ _( << '.') ];
-Digest::base
-Digest::MD5 2.27
-DBI 1.37
-Test::Inline
-Class::ReturnValue 0.40
-DBIx::SearchBuilder 1.26
-Text::Template
-File::Spec 0.8
-HTML::Entities
-HTML::Scrubber 0.08
-Net::Domain
-Log::Dispatch 2.0
-Locale::Maketext 1.06
-Locale::Maketext::Lexicon 0.32
-Locale::Maketext::Fuzzy
-MIME::Entity 5.108
-Mail::Mailer 1.57
-Net::SMTP
-Text::Wrapper
-Time::ParseDate
-Time::HiRes
-File::Temp
-Term::ReadKey
-Text::Autoformat
-Text::Quoted 1.3
-Tree::Simple 1.04
-Scalar::Util
-Module::Versions::Report
-Cache::Simple::TimedExpiry
-XML::Simple
-.
-
-$deps{'MASON'} = [ _( << '.') ];
-Params::Validate 0.02
-Cache::Cache
-Exception::Class 1.14
-HTML::Mason 1.23
-MLDBM
-Errno
-FreezeThaw
-Digest::MD5 2.27
-CGI::Cookie 1.20
-Storable 2.08
-Apache::Session 1.53
-XML::RSS 1.05
-HTTP::Server::Simple 0.07
-HTTP::Server::Simple::Mason 0.09
-Text::WikiFormat
-.
-
-$deps{'MAILGATE'} = [ _( << '.') ];
-HTML::TreeBuilder
-HTML::FormatText
-Getopt::Long
-LWP::UserAgent
-.
-
-$deps{'CLI'} = [ _( << '.') ];
-Getopt::Long 2.24
-.
-
-$deps{'DEV'} = [ _( << '.') ];
-Regexp::Common
-Test::Inline
-Apache::Test
-HTML::Form
-HTML::TokeParser
-WWW::Mechanize
-Test::WWW::Mechanize
-Module::Refresh 0.03
-.
-
-$deps{'FASTCGI'} = [ _( << '.') ];
-CGI 2.92
-FCGI
-CGI::Fast
-.
-
-$deps{'SPEEDYCGI'} = [ _( << '.') ];
-CGI 2.92
-CGI::SpeedyCGI
-.
-
-
-$deps{'MODPERL1'} = [ _( << '.') ];
-CGI 2.92
-Apache::Request
-Apache::DBI 0.92
-.
-
-$deps{'MODPERL2'} = [ _( << '.') ];
-CGI 2.92
-Apache::DBI
-HTML::Mason 1.31
-.
-
-$deps{'MYSQL'} = [ _( << '.') ];
-DBD::mysql 2.1018
-.
-$deps{'ORACLE'} = [ _( << '.') ];
-DBD::Oracle
-.
-$deps{'POSTGRESQL'} = [ _( << '.') ];
-DBD::Pg 1.41
-.
-
-$deps{'SQLITE'} = [ _( << '.') ];
-DBD::SQLite
-.
-
-if ($args{'download'}) {
-
- download_mods();
-}
-
-
-check_perl_version();
-
-check_users();
-
-
-foreach my $type (keys %args) {
- next unless ($type =~ /^with-(.*?)$/);
- my $type = $1;
- section("$type dependencies");
- my @deps = (@{$deps{$type}});
- while (@deps) {
- my $module = shift @deps;
- my $version = shift @deps;
- my $ret = test_dep($module, $version);
-
- if ($args{'install'} && !$ret) {
- resolve_dep($module);
- }
- }
-}
-
-conclude();
-
-sub test_dep {
- my $module = shift;
- my $version = shift;
-
- eval "use $module $version ()";
- if ($@) {
- my $error = $@;
- $error =~ s/\n(.*)$//s;
- undef $error unless $error =~ /this is only/;
- found("$module $version", 0, $error);
-
- return undef;
- } else {
- found("$module $version", 1);
- return 1;
- }
-}
-
-sub resolve_dep {
- my $module = shift;
- system( qq[@PERL@ -MCPAN -e'install("$module")'] );
-}
-
-sub download_mods {
- my %modules;
- use CPAN;
-
- foreach my $key (keys %deps) {
- my @deps = (@{$deps{$key}});
- while (@deps) {
- my $mod = shift @deps;
- my $ver = shift @deps;
- next if ($mod =~ /^(DBD-|Apache-Request)/);
- $modules{$mod} = $ver;
- }
- }
- my @mods = keys %modules;
- CPAN::get();
- my $moddir = $args{'download'};
- foreach my $mod (@mods) {
- $CPAN::Config->{'build_dir'} = $moddir;
- CPAN::get($mod);
- }
-
- opendir(DIR, $moddir);
- while ( my $dir = readdir(DIR)) {
- print "Dir is $dir\n";
- next if ( $dir =~ /^\.\.?$/);
-
- # Skip things we've previously tagged
- my $out = `svn ls $args{'repository'}/tags/$dir`;
- next if ($out);
-
- if ($dir =~ /^(.*)-(.*?)$/) {
- `svn_load_dirs -no_user_input -t tags/$dir -v $args{'repository'} dists/$1 $moddir/$dir`;
- `rm -rf $moddir/$dir`;
-
- }
-
- }
- closedir(DIR);
- exit;
-}
-
-sub check_perl_version {
- section("perl");
- eval {require 5.008003};
- if ($@) {
- found("5.8.3", 0, "RT is known to be non-functional on versions of perl older than 5.8.3. Please upgrade to 5.8.3 or newer.");
- die;
- } else {
- found("5.8.3", 1);
- }
-}
-
-sub check_users {
- section("users");
- found("rt group (@RTGROUP@)", defined getgrnam("@RTGROUP@"));
- found("bin owner (@BIN_OWNER@)", defined getpwnam("@BIN_OWNER@"));
- found("libs owner (@LIBS_OWNER@)", defined getpwnam("@LIBS_OWNER@"));
- found("libs group (@LIBS_GROUP@)", defined getgrnam("@LIBS_GROUP@"));
- found("web owner (@WEB_USER@)", defined getpwnam("@WEB_USER@"));
- found("web group (@WEB_GROUP@)", defined getgrnam("@WEB_GROUP@"));
-}
-
-
-
-1;
diff --git a/sql-ledger/SL/AM.pm b/sql-ledger/SL/AM.pm
deleted file mode 100644
index dbdd611..0000000
--- a/sql-ledger/SL/AM.pm
+++ /dev/null
@@ -1,1478 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Jim Rawlings <jim@your-dba.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Administration module
-# Chart of Accounts
-# template routines
-# preferences
-#
-#======================================================================
-
-package AM;
-
-
-sub get_account {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description, charttype, gifi_accno,
- category, link
- FROM chart
- WHERE id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- foreach my $key (keys %$ref) {
- $form->{"$key"} = $ref->{"$key"};
- }
-
- # get default accounts
- $query = qq|SELECT inventory_accno_id, income_accno_id, expense_accno_id
- FROM defaults|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %ref;
- $sth->finish;
-
- # check if we have any transactions
- $query = qq|SELECT trans_id FROM acc_trans
- WHERE chart_id = $form->{id}|;
- ($form->{orphaned}) = $dbh->selectrow_array($query);
- $form->{orphaned} = !$form->{orphaned};
-
- $dbh->disconnect;
-
-}
-
-
-sub save_account {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- $form->{link} = "";
- foreach my $item ($form->{AR},
- $form->{AR_amount},
- $form->{AR_tax},
- $form->{AR_paid},
- $form->{AP},
- $form->{AP_amount},
- $form->{AP_tax},
- $form->{AP_paid},
- $form->{IC},
- $form->{IC_sale},
- $form->{IC_cogs},
- $form->{IC_taxpart},
- $form->{IC_income},
- $form->{IC_expense},
- $form->{IC_taxservice},
- $form->{CT_tax}
- ) {
- $form->{link} .= "${item}:" if ($item);
- }
- chop $form->{link};
-
- # strip blanks from accno
- map { $form->{$_} =~ s/( |')//g } qw(accno gifi_accno);
-
- foreach my $item (qw(accno gifi_accno description)) {
- $form->{$item} =~ s/-(-+)/-/g;
- $form->{$item} =~ s/ ( )+/ /g;
- }
-
- my $query;
- my $sth;
-
- # if we have an id then replace the old record
- if ($form->{id}) {
- $query = qq|UPDATE chart SET
- accno = '$form->{accno}',
- description = |.$dbh->quote($form->{description}).qq|,
- charttype = '$form->{charttype}',
- gifi_accno = '$form->{gifi_accno}',
- category = '$form->{category}',
- link = '$form->{link}'
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO chart
- (accno, description, charttype, gifi_accno, category, link)
- VALUES ('$form->{accno}',|
- .$dbh->quote($form->{description}).qq|,
- '$form->{charttype}', '$form->{gifi_accno}',
- '$form->{category}', '$form->{link}')|;
- }
- $dbh->do($query) || $form->dberror($query);
-
-
- $chart_id = $form->{id};
-
- if (! $form->{id}) {
- # get id from chart
- $query = qq|SELECT id
- FROM chart
- WHERE accno = '$form->{accno}'|;
- ($chart_id) = $dbh->selectrow_array($query);
- }
-
- if ($form->{IC_taxpart} || $form->{IC_taxservice} || $form->{CT_tax}) {
-
- # add account if it doesn't exist in tax
- $query = qq|SELECT chart_id
- FROM tax
- WHERE chart_id = $chart_id|;
- my ($tax_id) = $dbh->selectrow_array($query);
-
- # add tax if it doesn't exist
- unless ($tax_id) {
- $query = qq|INSERT INTO tax (chart_id, rate)
- VALUES ($chart_id, 0)|;
- $dbh->do($query) || $form->dberror($query);
- }
- } else {
- # remove tax
- if ($form->{id}) {
- $query = qq|DELETE FROM tax
- WHERE chart_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # commit
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub delete_account {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|SELECT * FROM acc_trans
- WHERE chart_id = $form->{id}|;
- if ($dbh->selectrow_array($query)) {
- $dbh->disconnect;
- return;
- }
-
-
- # delete chart of account record
- $query = qq|DELETE FROM chart
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # set inventory_accno_id, income_accno_id, expense_accno_id to defaults
- $query = qq|UPDATE parts
- SET inventory_accno_id =
- (SELECT inventory_accno_id FROM defaults)
- WHERE inventory_accno_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|UPDATE parts
- SET income_accno_id =
- (SELECT income_accno_id FROM defaults)
- WHERE income_accno_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|UPDATE parts
- SET expense_accno_id =
- (SELECT expense_accno_id FROM defaults)
- WHERE expense_accno_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- foreach my $table (qw(partstax customertax vendortax tax)) {
- $query = qq|DELETE FROM $table
- WHERE chart_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # commit and redirect
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub gifi_accounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description
- FROM gifi
- ORDER BY accno|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_gifi {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description
- FROM gifi
- WHERE accno = '$form->{accno}'|;
-
- ($form->{accno}, $form->{description}) = $dbh->selectrow_array($query);
-
- # check for transactions
- $query = qq|SELECT * FROM acc_trans a
- JOIN chart c ON (a.chart_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- WHERE g.accno = '$form->{accno}'|;
- ($form->{orphaned}) = $dbh->selectrow_array($query);
- $form->{orphaned} = !$form->{orphaned};
-
- $dbh->disconnect;
-
-}
-
-
-sub save_gifi {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{accno} =~ s/( |')//g;
-
- foreach my $item (qw(accno description)) {
- $form->{$item} =~ s/-(-+)/-/g;
- $form->{$item} =~ s/ ( )+/ /g;
- }
-
- # id is the old account number!
- if ($form->{id}) {
- $query = qq|UPDATE gifi SET
- accno = '$form->{accno}',
- description = |.$dbh->quote($form->{description}).qq|
- WHERE accno = '$form->{id}'|;
- } else {
- $query = qq|INSERT INTO gifi
- (accno, description)
- VALUES ('$form->{accno}',|
- .$dbh->quote($form->{description}).qq|)|;
- }
- $dbh->do($query) || $form->dberror;
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_gifi {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # id is the old account number!
- $query = qq|DELETE FROM gifi
- WHERE accno = '$form->{id}'|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub warehouses {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->sort_order();
- my $query = qq|SELECT id, description
- FROM warehouse
- ORDER BY 2 $form->{direction}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_warehouse {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT description
- FROM warehouse
- WHERE id = $form->{id}|;
- ($form->{description}) = $dbh->selectrow_array($query);
-
- # see if it is in use
- $query = qq|SELECT * FROM inventory
- WHERE warehouse_id = $form->{id}|;
- ($form->{orphaned}) = $dbh->selectrow_array($query);
- $form->{orphaned} = !$form->{orphaned};
-
- $dbh->disconnect;
-
-}
-
-
-sub save_warehouse {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
-
- if ($form->{id}) {
- $query = qq|UPDATE warehouse SET
- description = |.$dbh->quote($form->{description}).qq|
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO warehouse
- (description)
- VALUES (|.$dbh->quote($form->{description}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_warehouse {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM warehouse
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-
-sub departments {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->sort_order();
- my $query = qq|SELECT id, description, role
- FROM department
- ORDER BY 2 $form->{direction}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_department {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT description, role
- FROM department
- WHERE id = $form->{id}|;
- ($form->{description}, $form->{role}) = $dbh->selectrow_array($query);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- # see if it is in use
- $query = qq|SELECT * FROM dpt_trans
- WHERE department_id = $form->{id}|;
- ($form->{orphaned}) = $dbh->selectrow_array($query);
- $form->{orphaned} = !$form->{orphaned};
-
- $dbh->disconnect;
-
-}
-
-
-sub save_department {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
-
- if ($form->{id}) {
- $query = qq|UPDATE department SET
- description = |.$dbh->quote($form->{description}).qq|,
- role = '$form->{role}'
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO department
- (description, role)
- VALUES (|
- .$dbh->quote($form->{description}).qq|, '$form->{role}')|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_department {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM department
- WHERE id = $form->{id}|;
- $dbh->do($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub business {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->sort_order();
- my $query = qq|SELECT id, description, discount
- FROM business
- ORDER BY 2 $form->{direction}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_business {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT description, discount
- FROM business
- WHERE id = $form->{id}|;
- ($form->{description}, $form->{discount}) = $dbh->selectrow_array($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub save_business {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
- $form->{discount} /= 100;
-
- if ($form->{id}) {
- $query = qq|UPDATE business SET
- description = |.$dbh->quote($form->{description}).qq|,
- discount = $form->{discount}
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO business
- (description, discount)
- VALUES (|
- .$dbh->quote($form->{description}).qq|, $form->{discount})|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_business {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM business
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub sic {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{sort} = "code" unless $form->{sort};
- my @a = qw(code description);
- my %ordinal = ( code => 1,
- description => 3 );
- my $sortorder = $form->sort_order(\@a, \%ordinal);
- my $query = qq|SELECT code, sictype, description
- FROM sic
- ORDER BY $sortorder|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_sic {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT code, sictype, description
- FROM sic
- WHERE code = |.$dbh->quote($form->{code});
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub save_sic {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- foreach my $item (qw(code description)) {
- $form->{$item} =~ s/-(-)+/-/g;
- }
-
- # if there is an id
- if ($form->{id}) {
- $query = qq|UPDATE sic SET
- code = |.$dbh->quote($form->{code}).qq|,
- sictype = '$form->{sictype}',
- description = |.$dbh->quote($form->{description}).qq|
- WHERE code = |.$dbh->quote($form->{id});
- } else {
- $query = qq|INSERT INTO sic
- (code, sictype, description)
- VALUES (|
- .$dbh->quote($form->{code}).qq|,
- '$form->{sictype}',|
- .$dbh->quote($form->{description}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_sic {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM sic
- WHERE code = |.$dbh->quote($form->{code});
- $dbh->do($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub language {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{sort} = "code" unless $form->{sort};
- my @a = qw(code description);
- my %ordinal = ( code => 1,
- description => 2 );
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT code, description
- FROM language
- ORDER BY $sortorder|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub get_language {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT *
- FROM language
- WHERE code = |.$dbh->quote($form->{code});
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub save_language {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{code} =~ s/ //g;
- foreach my $item (qw(code description)) {
- $form->{$item} =~ s/-(-)+/-/g;
- $form->{$item} =~ s/ ( )+/-/g;
- }
-
- # if there is an id
- if ($form->{id}) {
- $query = qq|UPDATE language SET
- code = |.$dbh->quote($form->{code}).qq|,
- description = |.$dbh->quote($form->{description}).qq|
- WHERE code = |.$dbh->quote($form->{id});
- } else {
- $query = qq|INSERT INTO language
- (code, description)
- VALUES (|
- .$dbh->quote($form->{code}).qq|,|
- .$dbh->quote($form->{description}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_language {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM language
- WHERE code = |.$dbh->quote($form->{code});
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-
-sub load_template {
- my ($self, $form) = @_;
-
- open(TEMPLATE, "$form->{file}") or $form->error("$form->{file} : $!");
-
- while (<TEMPLATE>) {
- $form->{body} .= $_;
- }
-
- close(TEMPLATE);
-
-}
-
-
-sub save_template {
- my ($self, $form) = @_;
-
- open(TEMPLATE, ">$form->{file}") or $form->error("$form->{file} : $!");
-
- # strip
- $form->{body} =~ s/\r\n/\n/g;
- print TEMPLATE $form->{body};
-
- close(TEMPLATE);
-
-}
-
-
-
-sub save_preferences {
- my ($self, $myconfig, $form, $memberfile, $userspath) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # update name
- my $query = qq|UPDATE employee
- SET name = |.$dbh->quote($form->{name}).qq|,
- role = '$form->{role}'
- WHERE login = '$form->{login}'|;
- $dbh->do($query) || $form->dberror($query);
-
- # get default currency
- $query = qq|SELECT curr, businessnumber
- FROM defaults|;
- ($form->{currency}, $form->{businessnumber}) = $dbh->selectrow_array($query);
- $form->{currency} =~ s/:.*//;
-
- $dbh->disconnect;
-
- my $myconfig = new User "$memberfile", "$form->{login}";
-
- foreach my $item (keys %$form) {
- $myconfig->{$item} = $form->{$item};
- }
-
- $myconfig->{password} = $form->{new_password} if ($form->{old_password} ne $form->{new_password});
-
- $myconfig->save_member($memberfile, $userspath);
-
- 1;
-
-}
-
-
-sub save_defaults {
- my ($self, $myconfig, $form) = @_;
-
- map { ($form->{$_}) = split /--/, $form->{$_} } qw(inventory_accno income_accno expense_accno fxgain_accno fxloss_accno);
-
- my @a;
- $form->{curr} =~ s/ //g;
- map { push(@a, uc pack "A3", $_) if $_ } split /:/, $form->{curr};
- $form->{curr} = join ':', @a;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # save defaults
- my $query = qq|UPDATE defaults SET
- inventory_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{inventory_accno}'),
- income_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{income_accno}'),
- expense_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{expense_accno}'),
- fxgain_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{fxgain_accno}'),
- fxloss_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{fxloss_accno}'),
- sinumber = '$form->{sinumber}',
- vinumber = '$form->{vinumber}',
- sonumber = '$form->{sonumber}',
- ponumber = '$form->{ponumber}',
- sqnumber = '$form->{sqnumber}',
- rfqnumber = '$form->{rfqnumber}',
- partnumber = '$form->{partnumber}',
- employeenumber = '$form->{employeenumber}',
- customernumber = '$form->{customernumber}',
- vendornumber = '$form->{vendornumber}',
- yearend = '$form->{yearend}',
- curr = '$form->{curr}',
- weightunit = |.$dbh->quote($form->{weightunit}).qq|,
- businessnumber = |.$dbh->quote($form->{businessnumber});
- $dbh->do($query) || $form->dberror($query);
-
- foreach my $item (split / /, $form->{taxaccounts}) {
- $form->{$item} = $form->parse_amount($myconfig, $form->{$item}) / 100;
- $query = qq|UPDATE tax
- SET rate = $form->{$item},
- taxnumber = |.$dbh->quote($form->{"taxnumber_$item"}).qq|
- WHERE chart_id = $item|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub defaultaccounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get defaults from defaults table
- my $query = qq|SELECT * FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{defaults} = $sth->fetchrow_hashref(NAME_lc);
- $form->{defaults}{IC} = $form->{defaults}{inventory_accno_id};
- $form->{defaults}{IC_income} = $form->{defaults}{income_accno_id};
- $form->{defaults}{IC_expense} = $form->{defaults}{expense_accno_id};
- $form->{defaults}{FX_gain} = $form->{defaults}{fxgain_accno_id};
- $form->{defaults}{FX_loss} = $form->{defaults}{fxloss_accno_id};
-
-
- $sth->finish;
-
-
- $query = qq|SELECT id, accno, description, link
- FROM chart
- WHERE link LIKE '%IC%'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- foreach my $key (split(/:/, $ref->{link})) {
- if ($key =~ /IC/) {
- $nkey = $key;
- if ($key =~ /cogs/) {
- $nkey = "IC_expense";
- }
- if ($key =~ /sale/) {
- $nkey = "IC_income";
- }
- %{ $form->{IC}{$nkey}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
- }
- }
- }
- $sth->finish;
-
-
- $query = qq|SELECT id, accno, description
- FROM chart
- WHERE category = 'I'
- AND charttype = 'A'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- %{ $form->{IC}{FX_gain}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
- }
- $sth->finish;
-
- $query = qq|SELECT id, accno, description
- FROM chart
- WHERE category = 'E'
- AND charttype = 'A'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- %{ $form->{IC}{FX_loss}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
- }
- $sth->finish;
-
-
- # now get the tax rates and numbers
- $query = qq|SELECT chart.id, chart.accno, chart.description,
- tax.rate * 100 AS rate, tax.taxnumber
- FROM chart, tax
- WHERE chart.id = tax.chart_id|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{taxrates}{$ref->{accno}}{id} = $ref->{id};
- $form->{taxrates}{$ref->{accno}}{description} = $ref->{description};
- $form->{taxrates}{$ref->{accno}}{taxnumber} = $ref->{taxnumber} if $ref->{taxnumber};
- $form->{taxrates}{$ref->{accno}}{rate} = $ref->{rate} if $ref->{rate};
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub backup {
- my ($self, $myconfig, $form, $userspath, $gzip) = @_;
-
- my $mail;
- my $err;
-
- my @t = localtime(time);
- $t[4]++;
- $t[5] += 1900;
- $t[3] = substr("0$t[3]", -2);
- $t[4] = substr("0$t[4]", -2);
-
- my $boundary = time;
- my $tmpfile = "$userspath/$boundary.$myconfig->{dbname}-$form->{dbversion}-$t[5]$t[4]$t[3].sql";
- my $out = $form->{OUT};
- $form->{OUT} = ">$tmpfile";
-
- open(OUT, "$form->{OUT}") or $form->error("$form->{OUT} : $!");
-
- # get sequences, functions and triggers
- my @tables = ();
- my @sequences = ();
- my @functions = ();
- my @triggers = ();
- my @schema = ();
-
- # get dbversion from -tables.sql
- my $file = "$myconfig->{dbdriver}-tables.sql";
-
- open(FH, "sql/$file") or $form->error("sql/$file : $!");
-
- my @a = <FH>;
- close(FH);
-
- @dbversion = grep /defaults \(version\)/, @a;
-
- $dbversion = "@dbversion";
- $dbversion =~ /(\d+\.\d+\.\d+)/;
- $dbversion = User::calc_version($1);
-
- opendir SQLDIR, "sql/." or $form->error($!);
- @a = grep /$myconfig->{dbdriver}-upgrade-.*?\.sql$/, readdir SQLDIR;
- closedir SQLDIR;
-
- my $mindb;
- my $maxdb;
-
- foreach my $line (@a) {
-
- $upgradescript = $line;
- $line =~ s/(^$myconfig->{dbdriver}-upgrade-|\.sql$)//g;
-
- ($mindb, $maxdb) = split /-/, $line;
- $mindb = User::calc_version($mindb);
-
- next if $mindb < $dbversion;
-
- $maxdb = User::calc_version($maxdb);
-
- $upgradescripts{$maxdb} = $upgradescript;
- }
-
-
- $upgradescripts{$dbversion} = "$myconfig->{dbdriver}-tables.sql";
- $upgradescripts{functions} = "$myconfig->{dbdriver}-functions.sql";
-
- if (-f "sql/$myconfig->{dbdriver}-custom_tables.sql") {
- $upgradescripts{customtables} = "$myconfig->{dbdriver}-custom_tables.sql";
- }
- if (-f "sql/$myconfig->{dbdriver}-custom_functions.sql") {
- $upgradescripts{customfunctions} = "$myconfig->{dbdriver}-custom_functions.sql";
- }
-
- foreach my $key (sort keys %upgradescripts) {
-
- $file = $upgradescripts{$key};
-
- open(FH, "sql/$file") or $form->error("sql/$file : $!");
-
- push @schema, qq|-- $file\n|;
-
- while (<FH>) {
-
- if (/create table (\w+)/i) {
- push @tables, $1;
- }
-
- if (/create sequence (\w+)/i) {
- push @sequences, $1;
- }
-
- if (/end function/i) {
- push @functions, $_;
- $function = 0;
- next;
- }
-
- if (/create function /i) {
- $function = 1;
- }
-
- if ($function) {
- push @functions, $_;
- next;
- }
-
- if (/end trigger/i) {
- push @triggers, $_;
- $trigger = 0;
- next;
- }
-
- if (/create trigger/i) {
- $trigger = 1;
- }
-
- if ($trigger) {
- push @triggers, $_;
- next;
- }
-
- push @schema, $_ if $_ !~ /^(insert|--)/i;
-
- }
- close(FH);
-
- }
-
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $today = scalar localtime;
-
- $myconfig->{dbhost} = 'localhost' unless $myconfig->{dbhost};
-
- print OUT qq|-- SQL-Ledger Backup
--- Dataset: $myconfig->{dbname}
--- Version: $form->{dbversion}
--- Host: $myconfig->{dbhost}
--- Login: $form->{login}
--- User: $myconfig->{name}
--- Date: $today
---
-|;
-
-
- my $restrict = ($myconfig->{dbdriver} eq 'DB2') ? "RESTRICT" : "";
-
- @tables = grep !/^temp/, @tables;
- # drop tables and sequences
- map { print OUT qq|DROP TABLE $_;\n| } @tables;
- map { print OUT qq|DROP SEQUENCE $_ $restrict;\n| } @sequences;
-
- print OUT "--\n";
-
- # triggers and index files are dropped with the tables
-
- # drop functions
- foreach $item (@functions) {
- if ($item =~ /create function (.*\))/i) {
- print OUT qq|DROP FUNCTION $1;\n|;
- }
- }
-
- # add schema
- print OUT @schema;
- print OUT "\n";
-
- print OUT qq|-- set options
-$myconfig->{dboptions};
---
-|;
-
- my $query;
- my $sth;
- my @arr;
- my $fields;
-
- foreach $table (@tables) {
-
- $query = qq|SELECT * FROM $table|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $query = qq|INSERT INTO $table (|;
- $query .= join ',', (map { $sth->{NAME}->[$_] } (0 .. $sth->{NUM_OF_FIELDS} - 1));
- $query .= qq|) VALUES|;
-
- while (@arr = $sth->fetchrow_array) {
-
- $fields = "(";
-
- $fields .= join ',', map { $dbh->quote($_) } @arr;
- $fields .= ")";
-
- print OUT qq|$query $fields;\n|;
- }
-
- $sth->finish;
- }
-
-
- # create sequences and triggers
- foreach $item (@sequences) {
- if ($myconfig->{dbdriver} eq 'DB2') {
- $query = qq|SELECT NEXTVAL FOR $item FROM sysibm.sysdummy1|;
- } else {
- $query = qq|SELECT last_value FROM $item|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- my ($id) = $sth->fetchrow_array;
- $sth->finish;
- $id++;
-
- print OUT qq|--
-DROP SEQUENCE $item $restrict;\n|;
-
- if ($myconfig->{dbdriver} eq 'DB2') {
- print OUT qq|CREATE SEQUENCE $item AS INTEGER START WITH $id INCREMENT BY 1 MAXVALUE 2147483647 MINVALUE 1 CACHE 5;\n|;
- } else {
- print OUT qq|CREATE SEQUENCE $item START $id;\n|;
- }
- }
-
- print OUT "--\n";
-
- # functions
- map { print OUT $_ } @functions;
-
- # triggers
- map { print OUT $_ } @triggers;
-
- # add the index files
- open(FH, "sql/$myconfig->{dbdriver}-indices.sql");
- @a = <FH>;
- close(FH);
- print OUT @a;
-
- close(OUT);
-
- $dbh->disconnect;
-
- # compress backup if gzip defined
- my $suffix = "";
- if ($gzip) {
- my @args = split / /, $gzip;
- my @s = @args;
-
- push @args, "$tmpfile";
- system(@args) == 0 or $form->error("$args[0] : $?");
-
- shift @s;
- my %s = @s;
- $suffix = ${-S} || ".gz";
- $tmpfile .= $suffix;
- }
-
- if ($form->{media} eq 'email') {
-
- use SL::Mailer;
- $mail = new Mailer;
-
- $mail->{to} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
- $mail->{from} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
- $mail->{subject} = "SQL-Ledger Backup / $myconfig->{dbname}-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix";
- @{ $mail->{attachments} } = ($tmpfile);
- $mail->{version} = $form->{version};
- $mail->{fileid} = "$boundary.";
-
- $myconfig->{signature} =~ s/\\n/\r\n/g;
- $mail->{message} = "-- \n$myconfig->{signature}";
-
- $err = $mail->send($out);
- }
-
- if ($form->{media} eq 'file') {
-
- open(IN, "$tmpfile") or $form->error("$tmpfile : $!");
- open(OUT, ">-") or $form->error("STDOUT : $!");
-
- print OUT qq|Content-Type: application/file;
-Content-Disposition: attachment; filename="$myconfig->{dbname}-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix"
-
-|;
-
- while (<IN>) {
- print OUT $_;
- }
-
- close(IN);
- close(OUT);
-
- }
-
- unlink "$tmpfile";
-
-}
-
-
-sub closedto {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT closedto, revtrans, audittrail
- FROM defaults|;
- ($form->{closedto}, $form->{revtrans}, $form->{audittrail}) = $dbh->selectrow_array($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub closebooks {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- if ($form->{revtrans}) {
-
- $query = qq|UPDATE defaults SET closedto = NULL,
- revtrans = '1'|;
- } else {
- if ($form->{closedto}) {
-
- $query = qq|UPDATE defaults SET closedto = '$form->{closedto}',
- revtrans = '0'|;
- } else {
-
- $query = qq|UPDATE defaults SET closedto = NULL,
- revtrans = '0'|;
- }
- }
-
- if ($form->{audittrail}) {
- $query .= qq|, audittrail = '1'|;
- } else {
- $query .= qq|, audittrail = '0'|;
- }
-
- # set close in defaults
- $dbh->do($query) || $form->dberror($query);
-
- if ($form->{removeaudittrail}) {
- $query = qq|DELETE FROM audittrail
- WHERE transdate < '$form->{removeaudittrail}'|;
- $dbh->do($query) || $form->dberror($query);
- }
-
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub earningsaccounts {
- my ($self, $myconfig, $form) = @_;
-
- my ($query, $sth, $ref);
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get chart of accounts
- $query = qq|SELECT accno,description
- FROM chart
- WHERE charttype = 'A'
- AND category = 'Q'
- ORDER by accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- $form->{chart} = "";
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{chart} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub post_yearend {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO gl (reference, employee_id)
- VALUES ('$uid', (SELECT id FROM employee
- WHERE login = '$form->{login}'))|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM gl
- WHERE reference = '$uid'|;
- ($form->{id}) = $dbh->selectrow_array($query);
-
- $query = qq|UPDATE gl SET
- reference = |.$dbh->quote($form->{reference}).qq|,
- description = |.$dbh->quote($form->{description}).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- transdate = '$form->{transdate}',
- department_id = 0
- WHERE id = $form->{id}|;
-
- $dbh->do($query) || $form->dberror($query);
-
- my $amount;
- my $accno;
-
- # insert acc_trans transactions
- for my $i (1 .. $form->{rowcount}) {
- # extract accno
- ($accno) = split(/--/, $form->{"accno_$i"});
- $amount = 0;
-
- if ($form->{"credit_$i"} != 0) {
- $amount = $form->{"credit_$i"};
- }
- if ($form->{"debit_$i"} != 0) {
- $amount = $form->{"debit_$i"} * -1;
- }
-
-
- # if there is an amount, add the record
- if ($amount != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- source)
- VALUES
- ($form->{id}, (SELECT id
- FROM chart
- WHERE accno = '$accno'),
- $amount, '$form->{transdate}', |
- .$dbh->quote($form->{reference}).qq|)|;
-
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- $query = qq|INSERT INTO yearend (trans_id, transdate)
- VALUES ($form->{id}, '$form->{transdate}')|;
- $dbh->do($query) || $form->dberror($query);
-
- my %audittrail = ( tablename => 'gl',
- reference => $form->{reference},
- formname => 'yearend',
- action => 'posted',
- id => $form->{id} );
- $form->audittrail($dbh, "", \%audittrail);
-
- # commit and redirect
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/AP.pm b/sql-ledger/SL/AP.pm
deleted file mode 100644
index 05bc77a..0000000
--- a/sql-ledger/SL/AP.pm
+++ /dev/null
@@ -1,464 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Accounts Payables database backend routines
-#
-#======================================================================
-
-
-package AP;
-
-
-sub post_transaction {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $null;
- my $taxrate;
- my $amount;
- my $exchangerate = 0;
-
- # split and store id numbers in link accounts
- map { ($form->{AP_amounts}{"amount_$_"}) = split(/--/, $form->{"AP_amount_$_"}) } (1 .. $form->{rowcount});
- ($form->{AP_amounts}{payables}) = split(/--/, $form->{AP});
-
- ($null, $form->{department_id}) = split(/--/, $form->{department});
- $form->{department_id} *= 1;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{exchangerate} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, 'sell');
-
- $form->{exchangerate} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{exchangerate});
- }
-
- # reverse and parse amounts
- for my $i (1 .. $form->{rowcount}) {
- $form->{"amount_$i"} = $form->round_amount($form->parse_amount($myconfig, $form->{"amount_$i"}) * $form->{exchangerate} * -1, 2);
- $form->{netamount} += ($form->{"amount_$i"} * -1);
- }
-
-
- # taxincluded doesn't make sense if there is no amount
- $form->{taxincluded} = 0 if ($form->{netamount} == 0);
-
- for my $item (split / /, $form->{taxaccounts}) {
- $form->{AP_amounts}{"tax_$item"} = $item;
-
- $form->{"tax_$item"} = $form->round_amount($form->parse_amount($myconfig, $form->{"tax_$item"}) * $form->{exchangerate}, 2) * -1;
- $form->{tax} += ($form->{"tax_$item"} * -1);
- }
-
-
- # adjust paidaccounts if there is no date in the last row
- $form->{paidaccounts}-- unless ($form->{"datepaid_$form->{paidaccounts}"});
-
- $form->{paid} = 0;
- # add payments
- for my $i (1 .. $form->{paidaccounts}) {
- $form->{"paid_$i"} = $form->round_amount($form->parse_amount($myconfig, $form->{"paid_$i"}), 2);
-
- $form->{paid} += $form->{"paid_$i"};
- $form->{datepaid} = $form->{"datepaid_$i"};
-
- }
-
-
- if ($form->{taxincluded} *= 1) {
- for $i (1 .. $form->{rowcount}) {
- $tax = ($form->{netamount}) ? $form->{tax} * $form->{"amount_$i"} / $form->{netamount} : 0;
- $amount = $form->{"amount_$i"} - $tax;
- $form->{"amount_$i"} = $form->round_amount($amount, 2);
- $diff += $amount - $form->{"amount_$i"};
- }
-
- $form->{netamount} -= $form->{tax};
- # deduct difference from amount_1
- $form->{amount_1} += $form->round_amount($diff, 2);
- }
-
- $form->{amount} = $form->{netamount} + $form->{tax};
- $form->{paid} = $form->round_amount($form->{paid} * $form->{exchangerate}, 2);
-
- my $query;
- my $sth;
-
- # if we have an id delete old records
- if ($form->{id}) {
-
- # delete detail records
- $query = qq|DELETE FROM acc_trans WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO ap (invnumber, employee_id)
- VALUES ('$uid', (SELECT id FROM employee
- WHERE login = '$form->{login}') )|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM ap
- WHERE invnumber = '$uid'|;
- ($form->{id}) = $dbh->selectrow_array($query);
- }
-
- $form->{datepaid} = $form->{transdate} unless ($form->{datepaid});
- my $datepaid = ($form->{paid} != 0) ? qq|'$form->{datepaid}'| : 'NULL';
-
- $query = qq|UPDATE ap SET
- invnumber = |.$dbh->quote($form->{invnumber}).qq|,
- transdate = '$form->{transdate}',
- ordnumber = |.$dbh->quote($form->{ordnumber}).qq|,
- vendor_id = $form->{vendor_id},
- taxincluded = '$form->{taxincluded}',
- amount = $form->{amount},
- duedate = |.$form->dbquote($form->{duedate}, SQL_DATE).qq|,
- paid = $form->{paid},
- datepaid = $datepaid,
- netamount = $form->{netamount},
- curr = |.$dbh->quote($form->{currency}).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- department_id = $form->{department_id}
- WHERE id = $form->{id}
- |;
- $dbh->do($query) || $form->dberror($query);
-
- # amount for AP account
- $form->{payables} = $form->{amount};
-
-
- # update exchangerate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, 0, $form->{exchangerate});
- }
-
- # add individual transactions
- foreach my $item (keys %{ $form->{AP_amounts} }) {
-
- if ($form->{$item} != 0) {
-
- $project_id = 'NULL';
- if ($item =~ /amount_/) {
- if ($form->{"projectnumber_$'"}) {
- ($null, $project_id) = split /--/, $form->{"projectnumber_$'"}
- }
- }
-
- # insert detail records in acc_trans
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- project_id)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$form->{AP_amounts}{$item}'),
- $form->{$item}, '$form->{transdate}', $project_id)|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # if there is no amount but a payment record a payable
- if ($form->{amount} == 0) {
- $form->{payables} = $form->{paid};
- $form->{payables} -= $form->{paid_1} if $form->{amount_1} != 0;
- }
-
- # add paid transactions
- for my $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"} != 0) {
-
- # get paid account
- ($form->{AP_amounts}{"paid_$i"}) = split(/--/, $form->{"AP_paid_$i"});
- $form->{"datepaid_$i"} = $form->{transdate} unless ($form->{"datepaid_$i"});
-
- $exchangerate = 0;
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'sell');
-
- $form->{"exchangerate_$i"} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{"exchangerate_$i"});
- }
-
-
- # if there is no amount
- if ($form->{amount} == 0 && $form->{netamount} == 0) {
- $form->{exchangerate} = $form->{"exchangerate_$i"};
- }
-
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate} * -1, 2);
- if ($form->{payables} != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AP_amounts}{payables}'),
- $amount, '$form->{"datepaid_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- $form->{payables} = $amount;
-
- # add payment
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, source, memo)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AP_amounts}{"paid_$i"}'),
- $form->{"paid_$i"}, '$form->{"datepaid_$i"}', |
- .$dbh->quote($form->{"source_$i"}).qq|, |
- .$dbh->quote($form->{"memo_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add exchange rate difference
- $amount = $form->round_amount($form->{"paid_$i"} * ($form->{"exchangerate_$i"} - 1), 2);
- if ($amount != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, fx_transaction, cleared)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AP_amounts}{"paid_$i"}'),
- $amount, '$form->{"datepaid_$i"}', '1', '0')|;
-
- $dbh->do($query) || $form->dberror($query);
- }
-
- # exchangerate gain/loss
- $amount = $form->round_amount($form->{"paid_$i"} * ($form->{exchangerate} - $form->{"exchangerate_$i"}), 2);
-
- if ($amount != 0) {
- $accno = ($amount > 0) ? $form->{fxgain_accno} : $form->{fxloss_accno};
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, fx_transaction, cleared)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $amount, '$form->{"datepaid_$i"}', '1', '0')|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # update exchange rate record
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{"datepaid_$i"}, 0, $form->{"exchangerate_$i"});
- }
- }
- }
-
- # save printed and queued
- $form->save_status($dbh);
-
- my %audittrail = ( tablename => 'ap',
- reference => $form->{invnumber},
- formname => 'transaction',
- action => 'posted',
- id => $form->{id} );
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-
-sub delete_transaction {
- my ($self, $myconfig, $form, $spool) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my %audittrail = ( tablename => 'ap',
- reference => $form->{invnumber},
- formname => 'transaction',
- action => 'deleted',
- id => $form->{id} );
- $form->audittrail($dbh, "", \%audittrail);
-
- my $query = qq|DELETE FROM ap WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM acc_trans WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete spool files
- $query = qq|SELECT spoolfile FROM status
- WHERE trans_id = $form->{id}
- AND spoolfile IS NOT NULL|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $spoolfile;
- my @spoolfiles = ();
-
- while (($spoolfile) = $sth->fetchrow_array) {
- push @spoolfiles, $spoolfile;
- }
- $sth->finish;
-
- $query = qq|DELETE FROM status WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # commit and redirect
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- if ($rc) {
- foreach $spoolfile (@spoolfiles) {
- unlink "$spool/$spoolfile" if $spoolfile;
- }
- }
-
- $rc;
-
-}
-
-
-
-
-sub ap_transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
- my $var;
-
- my $paid = "a.paid";
-
- if ($form->{outstanding}) {
- $paid = qq|SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE ac.trans_id = a.id
- AND (c.link LIKE '%AP_paid%' OR c.link = '')|;
- $paid .= qq|
- AND ac.transdate <= '$form->{transdateto}'| if $form->{transdateto};
- }
-
- my $query = qq|SELECT a.id, a.invnumber, a.transdate, a.duedate,
- a.amount, ($paid) AS paid, a.ordnumber, v.name,
- a.invoice, a.netamount, a.datepaid, a.notes,
- a.vendor_id, e.name AS employee, m.name AS manager,
- a.curr, ex.sell AS exchangerate
- FROM ap a
- JOIN vendor v ON (a.vendor_id = v.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- LEFT JOIN employee m ON (e.managerid = m.id)
- LEFT JOIN exchangerate ex ON (ex.curr = a.curr
- AND ex.transdate = a.transdate)
- |;
-
- my %ordinal = ( 'id' => 1,
- 'invnumber' => 2,
- 'transdate' => 3,
- 'duedate' => 4,
- 'ordnumber' => 7,
- 'name' => 8,
- 'datepaid' => 11,
- 'employee' => 14,
- 'manager' => 15,
- 'curr' => 16
- );
-
- my @a = (transdate, invnumber, name);
- push @a, "employee" if $form->{l_employee};
- push @a, "manager" if $form->{l_manager};
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $where = "1 = 1";
-
- if ($form->{vendor_id}) {
- $where .= " AND a.vendor_id = $form->{vendor_id}";
- } else {
- if ($form->{vendor}) {
- $var = $form->like(lc $form->{vendor});
- $where .= " AND lower(v.name) LIKE '$var'";
- }
- }
- if ($form->{department}) {
- my ($null, $department_id) = split /--/, $form->{department};
- $where .= " AND a.department_id = $department_id";
- }
- if ($form->{invnumber}) {
- $var = $form->like(lc $form->{invnumber});
- $where .= " AND lower(a.invnumber) LIKE '$var'";
- $form->{open} = $form->{closed} = 0;
- }
- if ($form->{ordnumber}) {
- $var = $form->like(lc $form->{ordnumber});
- $where .= " AND lower(a.ordnumber) LIKE '$var'";
- $form->{open} = $form->{closed} = 0;
- }
- if ($form->{notes}) {
- $var = $form->like(lc $form->{notes});
- $where .= " AND lower(a.notes) LIKE '$var'";
- }
-
- ($form->{transdatefrom}, $form->{transdateto}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- $where .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $where .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- $where .= " AND a.amount != a.paid" if ($form->{open});
- $where .= " AND a.amount = a.paid" if ($form->{closed});
- }
- }
-
-
- if ($form->{AP}) {
- my ($accno) = split /--/, $form->{AP};
- $where .= qq|
- AND a.id IN (SELECT ac.trans_id
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE a.id = ac.trans_id
- AND c.accno = '$accno')
- |;
- }
-
- $query .= "WHERE $where
- ORDER by $sortorder";
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- if ($form->{outstanding}) {
- next if $form->round_amount($ref->{amount}, 2) == $form->round_amount($ref->{paid}, 2);
- }
- push @{ $form->{transactions} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/AR.pm b/sql-ledger/SL/AR.pm
deleted file mode 100644
index 80487e4..0000000
--- a/sql-ledger/SL/AR.pm
+++ /dev/null
@@ -1,492 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Accounts Receivable module backend routines
-#
-#======================================================================
-
-package AR;
-
-
-sub post_transaction {
- my ($self, $myconfig, $form) = @_;
-
- my $null;
- my $taxrate;
- my $amount;
- my $tax;
- my $diff;
- my $exchangerate = 0;
- my $i;
-
- # split and store id numbers in link accounts
- map { ($form->{AR_amounts}{"amount_$_"}) = split(/--/, $form->{"AR_amount_$_"}) } (1 .. $form->{rowcount});
- ($form->{AR_amounts}{receivables}) = split(/--/, $form->{AR});
-
- ($null, $form->{department_id}) = split(/--/, $form->{department});
- $form->{department_id} *= 1;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{exchangerate} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, 'buy');
-
- $form->{exchangerate} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{exchangerate});
- }
-
- for $i (1 .. $form->{rowcount}) {
- $form->{"amount_$i"} = $form->round_amount($form->parse_amount($myconfig, $form->{"amount_$i"}) * $form->{exchangerate}, 2);
-
- $form->{netamount} += $form->{"amount_$i"};
-
- }
-
-
- # taxincluded doesn't make sense if there is no amount
- $form->{taxincluded} = 0 if ($form->{netamount} == 0);
-
- foreach my $item (split / /, $form->{taxaccounts}) {
- $form->{AR_amounts}{"tax_$item"} = $item;
-
- $form->{"tax_$item"} = $form->round_amount($form->parse_amount($myconfig, $form->{"tax_$item"}) * $form->{exchangerate}, 2);
- $form->{tax} += $form->{"tax_$item"};
- }
-
- # adjust paidaccounts if there is no date in the last row
- $form->{paidaccounts}-- unless ($form->{"datepaid_$form->{paidaccounts}"});
-
- $form->{paid} = 0;
- # add payments
- for $i (1 .. $form->{paidaccounts}) {
- $form->{"paid_$i"} = $form->round_amount($form->parse_amount($myconfig, $form->{"paid_$i"}), 2);
-
- $form->{paid} += $form->{"paid_$i"};
- $form->{datepaid} = $form->{"datepaid_$i"};
-
- }
-
-
- if ($form->{taxincluded} *= 1) {
- for $i (1 .. $form->{rowcount}) {
- $tax = ($form->{netamount}) ? $form->{tax} * $form->{"amount_$i"} / $form->{netamount} : 0;
- $amount = $form->{"amount_$i"} - $tax;
- $form->{"amount_$i"} = $form->round_amount($amount, 2);
- $diff += $amount - $form->{"amount_$i"};
- }
-
- $form->{netamount} -= $form->{tax};
- # deduct difference from amount_1
- $form->{amount_1} += $form->round_amount($diff, 2);
- }
-
- $form->{amount} = $form->{netamount} + $form->{tax};
- $form->{paid} = $form->round_amount($form->{paid} * $form->{exchangerate}, 2);
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
-
- ($null, $form->{employee_id}) = split /--/, $form->{employee};
- unless ($form->{employee_id}) {
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
- }
-
- # if we have an id delete old records
- if ($form->{id}) {
-
- # delete detail records
- $query = qq|DELETE FROM acc_trans WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO ar (invnumber)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM ar
- WHERE invnumber = '$uid'|;
- ($form->{id}) = $dbh->selectrow_array($query);
- }
-
-
- # record last payment date in ar table
- $form->{datepaid} = $form->{transdate} unless $form->{datepaid};
- my $datepaid = ($form->{paid} != 0) ? qq|'$form->{datepaid}'| : 'NULL';
-
- $query = qq|UPDATE ar set
- invnumber = |.$dbh->quote($form->{invnumber}).qq|,
- ordnumber = |.$dbh->quote($form->{ordnumber}).qq|,
- transdate = '$form->{transdate}',
- customer_id = $form->{customer_id},
- taxincluded = '$form->{taxincluded}',
- amount = $form->{amount},
- duedate = '$form->{duedate}',
- paid = $form->{paid},
- datepaid = $datepaid,
- netamount = $form->{netamount},
- curr = '$form->{currency}',
- notes = |.$dbh->quote($form->{notes}).qq|,
- department_id = $form->{department_id},
- employee_id = $form->{employee_id}
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # amount for AR account
- $form->{receivables} = $form->{amount} * -1;
-
-
- # update exchangerate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, $form->{exchangerate}, 0);
- }
-
- # add individual transactions for AR, amount and taxes
- foreach my $item (keys %{ $form->{AR_amounts} }) {
-
- if ($form->{$item} != 0) {
-
- $project_id = 'NULL';
- if ($item =~ /amount_/) {
- if ($form->{"projectnumber_$'"}) {
- ($null, $project_id) = split /--/, $form->{"projectnumber_$'"};
- }
- }
-
- # insert detail records in acc_trans
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- project_id)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$form->{AR_amounts}{$item}'),
- $form->{$item}, '$form->{transdate}', $project_id)|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- if ($form->{amount} == 0) {
- $form->{receivables} = $form->{paid};
- $form->{receivables} -= $form->{paid_1} if $form->{amount_1} != 0;
- }
-
- # add paid transactions
- for my $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"} != 0) {
-
- ($form->{AR_amounts}{"paid_$i"}) = split(/--/, $form->{"AR_paid_$i"});
- $form->{"datepaid_$i"} = $form->{transdate} unless ($form->{"datepaid_$i"});
-
- $exchangerate = 0;
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'buy');
-
- $form->{"exchangerate_$i"} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{"exchangerate_$i"});
- }
-
-
- # if there is no amount
- if ($form->{amount} == 0 && $form->{netamount} == 0) {
- $form->{exchangerate} = $form->{"exchangerate_$i"};
- }
-
- # receivables amount
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate}, 2);
-
- if ($form->{receivables} != 0) {
- # add receivable
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AR_amounts}{receivables}'),
- $amount, '$form->{"datepaid_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- $form->{receivables} = $amount;
-
- if ($form->{"paid_$i"} != 0) {
- # add payment
- $amount = $form->{"paid_$i"} * -1;
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, source, memo)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AR_amounts}{"paid_$i"}'),
- $amount, '$form->{"datepaid_$i"}', |
- .$dbh->quote($form->{"source_$i"}).qq|, |
- .$dbh->quote($form->{"memo_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # exchangerate difference for payment
- $amount = $form->round_amount($form->{"paid_$i"} * ($form->{"exchangerate_$i"} - 1) * -1, 2);
-
- if ($amount != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, fx_transaction, cleared)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$form->{AR_amounts}{"paid_$i"}'),
- $amount, '$form->{"datepaid_$i"}', '1', '0')|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # exchangerate gain/loss
- $amount = $form->round_amount($form->{"paid_$i"} * ($form->{exchangerate} - $form->{"exchangerate_$i"}) * -1, 2);
-
- if ($amount != 0) {
- $accno = ($amount > 0) ? $form->{fxgain_accno} : $form->{fxloss_accno};
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, fx_transaction, cleared)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $amount, '$form->{"datepaid_$i"}', '1', '0')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # update exchangerate record
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{"datepaid_$i"}, $form->{"exchangerate_$i"}, 0);
- }
- }
- }
-
- # save printed and queued
- $form->save_status($dbh);
-
- my %audittrail = ( tablename => 'ar',
- reference => $form->{invnumber},
- formname => 'transaction',
- action => 'posted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub delete_transaction {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my %audittrail = ( tablename => 'ar',
- reference => $form->{invnumber},
- formname => 'transaction',
- action => 'deleted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $query = qq|DELETE FROM ar WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM acc_trans WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete spool files
- $query = qq|SELECT spoolfile FROM status
- WHERE trans_id = $form->{id}
- AND spoolfile IS NOT NULL|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $spoolfile;
- my @spoolfiles = ();
-
- while (($spoolfile) = $sth->fetchrow_array) {
- push @spoolfiles, $spoolfile;
- }
- $sth->finish;
-
- $query = qq|DELETE FROM status WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # commit
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- if ($rc) {
- foreach $spoolfile (@spoolfiles) {
- unlink "$spool/$spoolfile" if $spoolfile;
- }
- }
-
- $rc;
-
-}
-
-
-
-sub ar_transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
- my $var;
-
- my $paid = "a.paid";
-
- ($form->{transdatefrom}, $form->{transdateto}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- if ($form->{outstanding}) {
- $paid = qq|SELECT SUM(ac.amount) * -1
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE ac.trans_id = a.id
- AND (c.link LIKE '%AR_paid%' OR c.link = '')|;
- $paid .= qq|
- AND ac.transdate <= '$form->{transdateto}'| if $form->{transdateto};
- }
-
- my $query = qq|SELECT a.id, a.invnumber, a.ordnumber, a.transdate,
- a.duedate, a.netamount, a.amount, ($paid) AS paid,
- a.invoice, a.datepaid, a.terms, a.notes,
- a.shipvia, a.shippingpoint, e.name AS employee, c.name,
- a.customer_id, a.till, m.name AS manager, a.curr,
- ex.buy AS exchangerate
- FROM ar a
- JOIN customer c ON (a.customer_id = c.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- LEFT JOIN employee m ON (e.managerid = m.id)
- LEFT JOIN exchangerate ex ON (ex.curr = a.curr
- AND ex.transdate = a.transdate)
- |;
-
- my %ordinal = ( 'id' => 1,
- 'invnumber' => 2,
- 'ordnumber' => 3,
- 'transdate' => 4,
- 'duedate' => 5,
- 'datepaid' => 10,
- 'shipvia' => 13,
- 'shippingpoint' => 14,
- 'employee' => 15,
- 'name' => 16,
- 'manager' => 19,
- 'curr' => 20
- );
-
-
- my @a = (transdate, invnumber, name);
- push @a, "employee" if $form->{l_employee};
- push @a, "manager" if $form->{l_manager};
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $where = "1 = 1";
- if ($form->{customer_id}) {
- $where .= " AND a.customer_id = $form->{customer_id}";
- } else {
- if ($form->{customer}) {
- $var = $form->like(lc $form->{customer});
- $where .= " AND lower(c.name) LIKE '$var'";
- }
- }
- if ($form->{department}) {
- my ($null, $department_id) = split /--/, $form->{department};
- $where .= " AND a.department_id = $department_id";
- }
- if ($form->{invnumber}) {
- $var = $form->like(lc $form->{invnumber});
- $where .= " AND lower(a.invnumber) LIKE '$var'";
- $form->{open} = $form->{closed} = 0;
- }
- if ($form->{ordnumber}) {
- $var = $form->like(lc $form->{ordnumber});
- $where .= " AND lower(a.ordnumber) LIKE '$var'";
- $form->{open} = $form->{closed} = 0;
- }
- if ($form->{shipvia}) {
- $var = $form->like(lc $form->{shipvia});
- $where .= " AND lower(a.shipvia) LIKE '$var'";
- }
- if ($form->{notes}) {
- $var = $form->like(lc $form->{notes});
- $where .= " AND lower(a.notes) LIKE '$var'";
- }
-
- $where .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $where .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- $where .= " AND a.amount != a.paid" if ($form->{open});
- $where .= " AND a.amount = a.paid" if ($form->{closed});
- }
- }
-
- if ($form->{till}) {
- $where .= " AND a.invoice = '1'
- AND NOT a.till IS NULL";
- if ($myconfig->{role} eq 'user') {
- $where .= " AND e.login = '$form->{login}'";
- }
- }
-
- if ($form->{AR}) {
- my ($accno) = split /--/, $form->{AR};
- $where .= qq|
- AND a.id IN (SELECT ac.trans_id
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE a.id = ac.trans_id
- AND c.accno = '$accno')
- |;
- }
-
- $query .= "WHERE $where
- ORDER by $sortorder";
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- if ($form->{outstanding}) {
- next if $form->round_amount($ref->{amount}, 2) == $form->round_amount($ref->{paid}, 2);
- }
- push @{ $form->{transactions} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/BP.pm b/sql-ledger/SL/BP.pm
deleted file mode 100644
index d85077d..0000000
--- a/sql-ledger/SL/BP.pm
+++ /dev/null
@@ -1,371 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Batch printing module backend routines
-#
-#======================================================================
-
-package BP;
-
-
-sub get_vc {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my %arap = ( invoice => ['ar'],
- packing_list => ['oe', 'ar'],
- sales_order => ['oe'],
- work_order => ['oe'],
- pick_list => ['oe', 'ar'],
- purchase_order => ['oe'],
- bin_list => ['oe'],
- sales_quotation => ['oe'],
- request_quotation => ['oe'],
- check => ['ap'],
- receipt => ['ar']
- );
-
- my $query = "";
- my $sth;
- my $n;
- my $count;
- my $item;
-
- foreach $item (@{ $arap{$form->{type}} }) {
- $query = qq|
- SELECT count(*)
- FROM (SELECT DISTINCT vc.id
- FROM $form->{vc} vc, $item a, status s
- WHERE a.$form->{vc}_id = vc.id
- AND s.trans_id = a.id
- AND s.formname = '$form->{type}'
- AND s.spoolfile IS NOT NULL) AS total|;
- ($n) = $dbh->selectrow_array($query);
- $count += $n;
- }
-
-
- # build selection list
- my $union = "";
- $query = "";
- if ($count < $myconfig->{vclimit}) {
- foreach $item (@{ $arap{$form->{type}} }) {
- $query .= qq|
- $union
- SELECT DISTINCT vc.id, vc.name
- FROM $form->{vc} vc, $item a, status s
- WHERE a.$form->{vc}_id = vc.id
- AND s.trans_id = a.id
- AND s.formname = '$form->{type}'
- AND s.spoolfile IS NOT NULL|;
- $union = "UNION";
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{"all_$form->{vc}"} }, $ref;
- }
- $sth->finish;
- }
-
- $form->all_years($dbh, $myconfig);
-
- $dbh->disconnect;
-
-}
-
-
-
-sub payment_accounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT DISTINCT c.accno, c.description
- FROM status s, chart c
- WHERE s.chart_id = c.id
- AND s.formname = '$form->{type}'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{accounts} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub get_spoolfiles {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
- my $invnumber = "invnumber";
- my $item;
-
- my %arap = ( invoice => ['ar'],
- packing_list => ['oe', 'ar'],
- sales_order => ['oe'],
- work_order => ['oe'],
- pick_list => ['oe', 'ar'],
- purchase_order => ['oe'],
- bin_list => ['oe'],
- sales_quotation => ['oe'],
- request_quotation => ['oe'],
- check => ['ap'],
- receipt => ['ar']
- );
-
-
- if ($form->{type} eq 'check' || $form->{type} eq 'receipt') {
-
- my ($accno) = split /--/, $form->{account};
-
- $query = qq|SELECT a.id, vc.name, a.invnumber, ac.transdate, s.spoolfile,
- a.invoice, '$arap{$form->{type}}[0]' AS module
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN $arap{$form->{type}}[0] a ON (a.id = ac.trans_id)
- JOIN status s ON (s.trans_id = a.id)
- JOIN $form->{vc} vc ON (vc.id = a.$form->{vc}_id)
- WHERE s.formname = '$form->{type}'
- AND c.accno = '$accno'
- AND NOT ac.fx_transaction|;
-
- if ($form->{"$form->{vc}_id"}) {
- $query .= qq| AND a.$form->{vc}_id = $form->{"$form->{vc}_id"}|;
- } else {
- if ($form->{$form->{vc}}) {
- $item = $form->like(lc $form->{$form->{vc}});
- $query .= " AND lower(vc.name) LIKE '$item'";
- }
- }
- if ($form->{invnumber}) {
- $item = $form->like(lc $form->{invnumber});
- $query .= " AND lower(a.invnumber) LIKE '$item'";
- }
- if ($form->{ordnumber}) {
- $item = $form->like(lc $form->{ordnumber});
- $query .= " AND lower(a.ordnumber) LIKE '$item'";
- }
- if ($form->{quonumber}) {
- $item = $form->like(lc $form->{quonumber});
- $query .= " AND lower(a.quonumber) LIKE '$item'";
- }
-
- $query .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $query .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
-
- } else {
-
- foreach $item (@{ $arap{$form->{type}} }) {
-
- $invoice = "a.invoice";
- $invnumber = "invnumber";
-
- if ($item eq 'oe') {
- $invnumber = "ordnumber";
- $invoice = "'0'";
- }
-
- $query .= qq|
- $union
- SELECT a.id, vc.name, a.$invnumber AS invnumber, a.transdate,
- a.ordnumber, a.quonumber, $invoice AS invoice,
- '$item' AS module, s.spoolfile
- FROM $item a, $form->{vc} vc, status s
- WHERE s.trans_id = a.id
- AND s.spoolfile IS NOT NULL
- AND s.formname = '$form->{type}'
- AND a.$form->{vc}_id = vc.id|;
-
- if ($form->{"$form->{vc}_id"}) {
- $query .= qq| AND a.$form->{vc}_id = $form->{"$form->{vc}_id"}|;
- } else {
- if ($form->{$form->{vc}}) {
- $item = $form->like(lc $form->{$form->{vc}});
- $query .= " AND lower(vc.name) LIKE '$item'";
- }
- }
- if ($form->{invnumber}) {
- $item = $form->like(lc $form->{invnumber});
- $query .= " AND lower(a.invnumber) LIKE '$item'";
- }
- if ($form->{ordnumber}) {
- $item = $form->like(lc $form->{ordnumber});
- $query .= " AND lower(a.ordnumber) LIKE '$item'";
- }
- if ($form->{quonumber}) {
- $item = $form->like(lc $form->{quonumber});
- $query .= " AND lower(a.quonumber) LIKE '$item'";
- }
-
- $query .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $query .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- $union = "UNION";
-
- }
- }
-
- my %ordinal = ( 'name' => 2,
- 'invnumber' => 3,
- 'transdate' => 4,
- 'ordnumber' => 5,
- 'quonumber' => 6
- );
- my @a = (transdate, $invnumber, name);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- $query .= " ORDER by $sortorder";
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{SPOOL} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub delete_spool {
- my ($self, $myconfig, $form, $spool) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my %audittrail;
-
- if ($form->{type} =~ /(check|receipt)/) {
- $query = qq|DELETE FROM status
- WHERE spoolfile = ?|;
- } else {
- $query = qq|UPDATE status SET
- spoolfile = NULL,
- printed = '1'
- WHERE spoolfile = ?|;
- }
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
-
- foreach my $i (1 .. $form->{rowcount}) {
- if ($form->{"checked_$i"}) {
- $sth->execute($form->{"spoolfile_$i"}) || $form->dberror($query);
- $sth->finish;
-
- %audittrail = ( tablename => $form->{module},
- reference => $form->{"reference_$i"},
- formname => $form->{type},
- action => 'dequeued',
- id => $form->{"id_$i"} );
-
- $form->audittrail($dbh, "", \%audittrail);
- }
- }
-
- # commit
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- if ($rc) {
- foreach my $i (1 .. $form->{rowcount}) {
- $_ = qq|$spool/$form->{"spoolfile_$i"}|;
- if ($form->{"checked_$i"}) {
- unlink;
- }
- }
- }
-
- $rc;
-
-}
-
-
-sub print_spool {
- my ($self, $myconfig, $form, $spool) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my %audittrail;
-
- my $query = qq|UPDATE status SET
- printed = '1'
- WHERE formname = '$form->{type}'
- AND spoolfile = ?|;
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
- foreach my $i (1 .. $form->{rowcount}) {
- if ($form->{"checked_$i"}) {
- open(OUT, $form->{OUT}) or $form->error("$form->{OUT} : $!");
-
- $spoolfile = qq|$spool/$form->{"spoolfile_$i"}|;
-
- # send file to printer
- open(IN, $spoolfile) or $form->error("$spoolfile : $!");
-
- while (<IN>) {
- print OUT $_;
- }
- close(IN);
- close(OUT);
-
- $sth->execute($form->{"spoolfile_$i"}) || $form->dberror($query);
- $sth->finish;
-
- %audittrail = ( tablename => $form->{module},
- reference => $form->{"reference_$i"},
- formname => $form->{type},
- action => 'printed',
- id => $form->{"id_$i"} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- $dbh->commit;
- }
- }
-
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/CA.pm b/sql-ledger/SL/CA.pm
deleted file mode 100644
index 2ae78bd..0000000
--- a/sql-ledger/SL/CA.pm
+++ /dev/null
@@ -1,486 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# chart of accounts
-#
-#======================================================================
-
-
-package CA;
-
-
-sub all_accounts {
- my ($self, $myconfig, $form) = @_;
-
- my $amount = ();
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno,
- SUM(acc_trans.amount) AS amount
- FROM chart, acc_trans
- WHERE chart.id = acc_trans.chart_id
- GROUP BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $amount{$ref->{accno}} = $ref->{amount}
- }
- $sth->finish;
-
- $query = qq|SELECT accno, description
- FROM gifi|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $gifi = ();
- while (my ($accno, $description) = $sth->fetchrow_array) {
- $gifi{$accno} = $description;
- }
- $sth->finish;
-
- $query = qq|SELECT c.id, c.accno, c.description, c.charttype, c.gifi_accno,
- c.category, c.link
- FROM chart c
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ca = $sth->fetchrow_hashref(NAME_lc)) {
- $ca->{amount} = $amount{$ca->{accno}};
- $ca->{gifi_description} = $gifi{$ca->{gifi_accno}};
- if ($ca->{amount} < 0) {
- $ca->{debit} = $ca->{amount} * -1;
- } else {
- $ca->{credit} = $ca->{amount};
- }
- push @{ $form->{CA} }, $ca;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub all_transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get chart_id
- my $query = qq|SELECT id FROM chart
- WHERE accno = '$form->{accno}'|;
- if ($form->{accounttype} eq 'gifi') {
- $query = qq|SELECT id FROM chart
- WHERE gifi_accno = '$form->{gifi_accno}'|;
- }
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my @id = ();
- while (my ($id) = $sth->fetchrow_array) {
- push @id, $id;
- }
- $sth->finish;
-
- my $fromdate_where;
- my $todate_where;
-
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- if ($form->{fromdate}) {
- $fromdate_where = qq|
- AND ac.transdate >= '$form->{fromdate}'
- |;
- }
- if ($form->{todate}) {
- $todate_where .= qq|
- AND ac.transdate <= '$form->{todate}'
- |;
- }
-
-
- my $false = ($myconfig->{dbdriver} =~ /Pg/) ? FALSE : q|'0'|;
-
- # Oracle workaround, use ordinal positions
- my %ordinal = ( transdate => 4,
- reference => 2,
- description => 3 );
-
- my @a = qw(transdate reference description);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $null;
- my $department_id;
- my $dpt_where;
- my $dpt_join;
-
- ($null, $department_id) = split /--/, $form->{department};
-
- if ($department_id) {
- $dpt_join = qq|
- JOIN department t ON (t.id = a.department_id)
- |;
- $dpt_where = qq|
- AND t.id = $department_id
- |;
- }
-
- my $project;
- my $project_id;
- if ($form->{projectnumber}) {
- ($null, $project_id) = split /--/, $form->{projectnumber};
- $project = qq|
- AND ac.project_id = $project_id
- |;
- }
-
- if ($form->{accno} || $form->{gifi_accno}) {
- # get category for account
- $query = qq|SELECT category, link
- FROM chart
- WHERE accno = '$form->{accno}'|;
-
- if ($form->{accounttype} eq 'gifi') {
- $query = qq|SELECT category, link
- FROM chart
- WHERE gifi_accno = '$form->{gifi_accno}'
- AND charttype = 'A'|;
- }
-
- $sth = $dbh->prepare($query);
-
- $sth->execute || $form->dberror($query);
- ($form->{category}, $form->{link}) = $sth->fetchrow_array;
- $sth->finish;
-
- if ($form->{fromdate}) {
-
- # get beginning balance
- $query = qq|SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- $dpt_join
- WHERE c.accno = '$form->{accno}'
- AND ac.transdate < '$form->{fromdate}'
- $dpt_where
- $project
- |;
-
- if ($project_id) {
-
- $query .= qq|
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.qty)
- FROM invoice ac
- JOIN ar a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.income_accno_id = c.id)
- $dpt_join
- WHERE c.accno = '$form->{accno}'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'I'
- $dpt_where
- $project
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.qty)
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE c.accno = '$form->{accno}'
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'E'
- $dpt_where
- $project
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.allocated) * -1
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE c.accno = '$form->{accno}'
- AND ac.assemblyitem = '0'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'E'
- $dpt_where
- $project
- |;
-
- }
-
- if ($form->{accounttype} eq 'gifi') {
- $query = qq|SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- $dpt_join
- WHERE c.gifi_accno = '$form->{gifi_accno}'
- AND ac.transdate < '$form->{fromdate}'
- $dpt_where
- $project
- |;
-
- if ($project_id) {
-
- $query .= qq|
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.qty)
- FROM invoice ac
- JOIN ar a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.income_accno_id = c.id)
- $dpt_join
- WHERE c.gifi_accno = '$form->{gifi_accno}'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'I'
- $dpt_where
- $project
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.qty)
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE c.gifi_accno = '$form->{gifi_accno}'
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'E'
- $dpt_where
- $project
-
- UNION
-
- SELECT SUM(ac.sellprice * ac.allocated) * -1
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE c.gifi_accno = '$form->{gifi_accno}'
- AND ac.assemblyitem = '0'
- AND a.transdate < '$form->{fromdate}'
- AND c.category = 'E'
- $dpt_where
- $project
- |;
-
- }
- }
-
- ($form->{balance}) = $dbh->selectrow_array($query);
-
- }
- }
-
- $query = "";
- my $union = "";
-
- foreach my $id (@id) {
-
- # get all transactions
- $query .= qq|$union
- SELECT a.id, a.reference, a.description, ac.transdate,
- $false AS invoice, ac.amount, 'gl' as module, ac.cleared,
- '' AS till
- FROM gl a
- JOIN acc_trans ac ON (ac.trans_id = a.id)
- $dpt_join
- WHERE ac.chart_id = $id
- $fromdate_where
- $todate_where
- $dpt_where
- $project
-
- UNION ALL
-
- SELECT a.id, a.invnumber, c.name, ac.transdate,
- a.invoice, ac.amount, 'ar' as module, ac.cleared,
- a.till
- FROM ar a
- JOIN acc_trans ac ON (ac.trans_id = a.id)
- JOIN customer c ON (a.customer_id = c.id)
- $dpt_join
- WHERE ac.chart_id = $id
- $fromdate_where
- $todate_where
- $dpt_where
- $project
-
- UNION ALL
-
- SELECT a.id, a.invnumber, v.name, ac.transdate,
- a.invoice, ac.amount, 'ap' as module, ac.cleared,
- a.till
- FROM ap a
- JOIN acc_trans ac ON (ac.trans_id = a.id)
- JOIN vendor v ON (a.vendor_id = v.id)
- $dpt_join
- WHERE ac.chart_id = $id
- $fromdate_where
- $todate_where
- $dpt_where
- $project
- |;
-
- if ($project_id) {
-
- $fromdate_where =~ s/ac\./a\./;
- $todate_where =~ s/ac\./a\./;
-
- $query .= qq|
-
- UNION ALL
-
- -- sold items
-
- SELECT a.id, a.invnumber, c.name, a.transdate,
- a.invoice, ac.sellprice * ac.qty, 'ar' as module, '0' AS cleared,
- a.till
- FROM ar a
- JOIN invoice ac ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN customer c ON (a.customer_id = c.id)
- $dpt_join
- WHERE p.income_accno_id = $id
- $fromdate_where
- $todate_where
- $dpt_where
- $project
-
- UNION ALL
-
- -- bought services
-
- SELECT a.id, a.invnumber, v.name, a.transdate,
- a.invoice, ac.sellprice * ac.qty, 'ap' as module, '0' AS cleared,
- a.till
- FROM ap a
- JOIN invoice ac ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN vendor v ON (a.vendor_id = v.id)
- $dpt_join
- WHERE p.expense_accno_id = $id
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $fromdate_where
- $todate_where
- $dpt_where
- $project
-
- UNION ALL
-
- -- cogs
-
- SELECT a.id, a.invnumber, v.name, a.transdate,
- a.invoice, ac.sellprice * ac.allocated * -1, 'ap' as module, '0' AS cleared,
- a.till
- FROM ap a
- JOIN invoice ac ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN vendor v ON (a.vendor_id = v.id)
- $dpt_join
- WHERE p.expense_accno_id = $id
- AND ac.assemblyitem = '0'
- $fromdate_where
- $todate_where
- $dpt_where
- $project
-
- |;
-
- $fromdate_where =~ s/a\./ac\./;
- $todate_where =~ s/a\./ac\./;
-
- }
-
- $union = qq|
- UNION ALL
- |;
- }
-
- $query .= qq|
- ORDER BY $sortorder|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ca = $sth->fetchrow_hashref(NAME_lc)) {
-
- # gl
- if ($ca->{module} eq "gl") {
- $ca->{module} = "gl";
- }
-
- # ap
- if ($ca->{module} eq "ap") {
- $ca->{module} = ($ca->{invoice}) ? 'ir' : 'ap';
- $ca->{module} = 'ps' if $ca->{till};
- }
-
- # ar
- if ($ca->{module} eq "ar") {
- $ca->{module} = ($ca->{invoice}) ? 'is' : 'ar';
- $ca->{module} = 'ps' if $ca->{till};
- }
-
- if ($ca->{amount}) {
- if ($ca->{amount} < 0) {
- $ca->{debit} = $ca->{amount} * -1;
- $ca->{credit} = 0;
- } else {
- $ca->{credit} = $ca->{amount};
- $ca->{debit} = 0;
- }
-
- push @{ $form->{CA} }, $ca;
- }
-
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-1;
-
diff --git a/sql-ledger/SL/CP.pm b/sql-ledger/SL/CP.pm
deleted file mode 100644
index 539ff6d..0000000
--- a/sql-ledger/SL/CP.pm
+++ /dev/null
@@ -1,396 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Check and receipt printing payment module backend routines
-# Number to text conversion routines are in
-# locale/{countrycode}/Num2text
-#
-#======================================================================
-
-package CP;
-
-
-sub new {
- my ($type, $countrycode) = @_;
-
- $self = {};
-
- if ($countrycode) {
- if (-f "locale/$countrycode/Num2text") {
- require "locale/$countrycode/Num2text";
- } else {
- use SL::Num2text;
- }
- } else {
- use SL::Num2text;
- }
-
- bless $self, $type;
-
-}
-
-
-sub paymentaccounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description, link
- FROM chart
- WHERE link LIKE '%$form->{ARAP}%'
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{PR}{$form->{ARAP}} = ();
- $form->{PR}{"$form->{ARAP}_paid"} = ();
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- foreach my $item (split /:/, $ref->{link}) {
- if ($item eq $form->{ARAP}) {
- push @{ $form->{PR}{$form->{ARAP}} }, $ref;
- }
- if ($item eq "$form->{ARAP}_paid") {
- push @{ $form->{PR}{"$form->{ARAP}_paid"} }, $ref;
- }
- }
- }
- $sth->finish;
-
- # get currencies and closedto
- $query = qq|SELECT curr, closedto, current_date
- FROM defaults|;
- ($form->{currencies}, $form->{closedto}, $form->{datepaid}) = $dbh->selectrow_array($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub get_openvc {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $arap = ($form->{vc} eq 'customer') ? 'ar' : 'ap';
- my $query = qq|SELECT count(*)
- FROM $form->{vc} ct, $arap a
- WHERE a.$form->{vc}_id = ct.id
- AND a.amount != a.paid|;
- my ($count) = $dbh->selectrow_array($query);
-
- my $sth;
- my $ref;
-
- # build selection list
- if ($count < $myconfig->{vclimit}) {
- $query = qq|SELECT DISTINCT ct.id, ct.name
- FROM $form->{vc} ct, $arap a
- WHERE a.$form->{vc}_id = ct.id
- AND a.amount != a.paid
- ORDER BY name|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{"all_$form->{vc}"} }, $ref;
- }
-
- $sth->finish;
-
- }
-
- if ($form->{ARAP} eq 'AR') {
- $query = qq|SELECT id, description
- FROM department
- WHERE role = 'P'
- ORDER BY 2|;
- } else {
- $query = qq|SELECT id, description
- FROM department
- ORDER BY 2|;
- }
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_departments} }, $ref;
- }
- $sth->finish;
-
- # get language codes
- $query = qq|SELECT *
- FROM language
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $form->{all_languages} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_languages} }, $ref;
- }
- $sth->finish;
-
- # get currency for first name
- if ($form->{"all_$form->{vc}"}) {
- $query = qq|SELECT curr FROM $form->{vc}
- WHERE id = $form->{"all_$form->{vc}"}->[0]->{id}|;
- ($form->{currency}) = $dbh->selectrow_array($query);
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub get_openinvoices {
- my ($self, $myconfig, $form) = @_;
-
- my $null;
- my $department_id;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $where = qq|WHERE $form->{vc}_id = $form->{"$form->{vc}_id"}
- AND curr = '$form->{currency}'
- AND amount != paid|;
-
- my ($buysell);
- if ($form->{vc} eq 'customer') {
- $buysell = "buy";
- } else {
- $buysell = "sell";
- }
-
- ($null, $department_id) = split /--/, $form->{department};
- if ($department_id) {
- $where .= qq|
- AND department_id = $department_id|;
- }
-
- my $query = qq|SELECT id, invnumber, transdate, amount, paid, curr
- FROM $form->{arap}
- $where
- ORDER BY transdate, invnumber|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- # if this is a foreign currency transaction get exchangerate
- $ref->{exchangerate} = $form->get_exchangerate($dbh, $ref->{curr}, $ref->{transdate}, $buysell) if ($form->{currency} ne $form->{defaultcurrency});
- push @{ $form->{PR} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-
-sub process_payment {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $sth;
-
- my ($paymentaccno) = split /--/, $form->{account};
-
- # if currency ne defaultcurrency update exchangerate
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{exchangerate} = $form->parse_amount($myconfig, $form->{exchangerate});
-
- if ($form->{vc} eq 'customer') {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{datepaid}, $form->{exchangerate}, 0);
- } else {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{datepaid}, 0, $form->{exchangerate});
- }
- } else {
- $form->{exchangerate} = 1;
- }
-
- my $query = qq|SELECT fxgain_accno_id, fxloss_accno_id
- FROM defaults|;
- my ($fxgain_accno_id, $fxloss_accno_id) = $dbh->selectrow_array($query);
-
- my ($buysell);
-
- if ($form->{vc} eq 'customer') {
- $buysell = "buy";
- } else {
- $buysell = "sell";
- }
-
- my $ml;
- my $where;
-
- if ($form->{ARAP} eq 'AR') {
- $ml = 1;
- $where = qq|
- (c.link = 'AR'
- OR c.link LIKE 'AR:%')
- |;
- } else {
- $ml = -1;
- $where = qq|
- (c.link = 'AP'
- OR c.link LIKE '%:AP'
- OR c.link LIKE '%:AP:%')
- |;
- }
-
- my $paymentamount = $form->parse_amount($myconfig, $form->{amount});
-
- my $null;
- ($null, $form->{department_id}) = split /--/, $form->{department};
- $form->{department_id} *= 1;
-
-
- # query to retrieve paid amount
- $query = qq|SELECT paid FROM $form->{arap}
- WHERE id = ?
- FOR UPDATE|;
- my $pth = $dbh->prepare($query) || $form->dberror($query);
-
- my %audittrail;
-
- # go through line by line
- for my $i (1 .. $form->{rowcount}) {
-
- $form->{"paid_$i"} = $form->parse_amount($myconfig, $form->{"paid_$i"});
- $form->{"due_$i"} = $form->parse_amount($myconfig, $form->{"due_$i"});
-
- if ($form->{"checked_$i"} && $form->{"paid_$i"}) {
-
- $paymentamount -= $form->{"paid_$i"};
-
- # get exchangerate for original
- $query = qq|SELECT $buysell
- FROM exchangerate e
- JOIN $form->{arap} a ON (a.transdate = e.transdate)
- WHERE e.curr = '$form->{currency}'
- AND a.id = $form->{"id_$i"}|;
- my ($exchangerate) = $dbh->selectrow_array($query);
-
- $exchangerate = 1 unless $exchangerate;
-
- $query = qq|SELECT c.id
- FROM chart c
- JOIN acc_trans a ON (a.chart_id = c.id)
- WHERE $where
- AND a.trans_id = $form->{"id_$i"}|;
- my ($id) = $dbh->selectrow_array($query);
-
- $amount = $form->round_amount($form->{"paid_$i"} * $exchangerate, 2);
-
- # add AR/AP
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount)
- VALUES ($form->{"id_$i"}, $id, '$form->{datepaid}',
- $amount * $ml)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add payment
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount, source, memo)
- VALUES ($form->{"id_$i"},
- (SELECT id FROM chart
- WHERE accno = '$paymentaccno'),
- '$form->{datepaid}', $form->{"paid_$i"} * $ml * -1, |
- .$dbh->quote($form->{source}).qq|, |
- .$dbh->quote($form->{memo}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add exchangerate difference if currency ne defaultcurrency
- $amount = $form->round_amount($form->{"paid_$i"} * ($form->{exchangerate} - 1), 2);
-
- if ($amount != 0) {
- # exchangerate difference
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount, cleared, fx_transaction)
- VALUES ($form->{"id_$i"},
- (SELECT id FROM chart
- WHERE accno = '$paymentaccno'),
- '$form->{datepaid}', $amount * $ml * -1, '0', '1')|;
- $dbh->do($query) || $form->dberror($query);
-
- # gain/loss
- $amount = $form->round_amount($form->{"paid_$i"} * ($exchangerate - $form->{exchangerate}) * $ml * -1, 2);
- if ($amount != 0) {
- my $accno_id = ($amount > 0) ? $fxgain_accno_id : $fxloss_accno_id;
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount, cleared, fx_transaction)
- VALUES ($form->{"id_$i"}, $accno_id,
- '$form->{datepaid}', $amount, '0', '1')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- $form->{"paid_$i"} = $form->round_amount($form->{"paid_$i"} * $exchangerate, 2);
-
- $pth->execute($form->{"id_$i"}) || $form->dberror;
- ($amount) = $pth->fetchrow_array;
- $pth->finish;
-
- $amount += $form->{"paid_$i"};
-
- # update AR/AP transaction
- $query = qq|UPDATE $form->{arap} set
- paid = $amount,
- datepaid = '$form->{datepaid}'
- WHERE id = $form->{"id_$i"}|;
- $dbh->do($query) || $form->dberror($query);
-
- %audittrail = ( tablename => $form->{arap},
- reference => $form->{source},
- formname => $form->{formname},
- action => 'posted',
- id => $form->{"id_$i"} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- }
- }
-
-
- # record a AR/AP with a payment
- if ($form->round_amount($paymentamount, 2) != 0) {
- $form->{invnumber} = "";
- OP::overpayment("", $myconfig, $form, $dbh, $paymentamount, $ml, 1);
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/CT.pm b/sql-ledger/SL/CT.pm
deleted file mode 100644
index bfcc219..0000000
--- a/sql-ledger/SL/CT.pm
+++ /dev/null
@@ -1,1008 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# backend code for customers and vendors
-#
-#======================================================================
-
-package CT;
-
-
-sub create_links {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
- my $query;
- my $sth;
- my $ref;
-
- if ($form->{id}) {
- $query = qq|SELECT ct.*, b.description AS business, s.*,
- e.name AS employee, g.pricegroup AS pricegroup,
- l.description AS language, ct.curr
- FROM $form->{db} ct
- LEFT JOIN business b ON (ct.business_id = b.id)
- LEFT JOIN shipto s ON (ct.id = s.trans_id)
- LEFT JOIN employee e ON (ct.employee_id = e.id)
- LEFT JOIN pricegroup g ON (g.id = ct.pricegroup_id)
- LEFT JOIN language l ON (l.code = ct.language_code)
- WHERE ct.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # check if it is orphaned
- my $arap = ($form->{db} eq 'customer') ? "ar" : "ap";
- $query = qq|SELECT a.id
- FROM $arap a
- JOIN $form->{db} ct ON (a.$form->{db}_id = ct.id)
- WHERE ct.id = $form->{id}
- UNION
- SELECT a.id
- FROM oe a
- JOIN $form->{db} ct ON (a.$form->{db}_id = ct.id)
- WHERE ct.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- unless ($sth->fetchrow_array) {
- $form->{status} = "orphaned";
- }
- $sth->finish;
-
-
- # get taxes for customer/vendor
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN $form->{db}tax t ON (t.chart_id = c.id)
- WHERE t.$form->{db}_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{tax}{$ref->{accno}}{taxable} = 1;
- }
- $sth->finish;
-
- } else {
-
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
-
- $query = qq|SELECT current_date FROM defaults|;
- ($form->{startdate}) = $dbh->selectrow_array($query);
-
- }
-
- # get tax labels
- $query = qq|SELECT c.accno, c.description
- FROM chart c
- JOIN tax t ON (t.chart_id = c.id)
- WHERE c.link LIKE '%CT_tax%'
- ORDER BY c.accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{taxaccounts} .= "$ref->{accno} ";
- $form->{tax}{$ref->{accno}}{description} = $ref->{description};
- }
- $sth->finish;
- chop $form->{taxaccounts};
-
-
- # get business types
- $query = qq|SELECT *
- FROM business
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_business} }, $ref;
- }
- $sth->finish;
-
- # this is for the salesperson
- $query = qq|SELECT id, name
- FROM employee
- WHERE sales = '1'
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_employee} }, $ref;
- }
- $sth->finish;
-
- # get language
- $query = qq|SELECT *
- FROM language
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_language} }, $ref;
- }
- $sth->finish;
-
- # get pricegroups
- $query = qq|SELECT *
- FROM pricegroup
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_pricegroup} }, $ref;
- }
- $sth->finish;
-
- # get currencies
- $query = qq|SELECT curr AS currencies
- FROM defaults|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{currencies}) = $sth->fetchrow_array;
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub save_customer {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
- my $query;
- my $sth;
- my $null;
-
- # remove double spaces
- $form->{name} =~ s/ / /g;
- # remove double minus and minus at the end
- $form->{name} =~ s/--+/-/g;
- $form->{name} =~ s/-+$//;
-
- # assign value discount, terms, creditlimit
- $form->{discount} = $form->parse_amount($myconfig, $form->{discount});
- $form->{discount} /= 100;
- $form->{terms} *= 1;
- $form->{taxincluded} *= 1;
- $form->{creditlimit} = $form->parse_amount($myconfig, $form->{creditlimit});
-
-
- if ($form->{id}) {
- $query = qq|DELETE FROM customertax
- WHERE customer_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # retrieve enddate
- if ($form->{type} && $form->{enddate}) {
- my $now;
- $query = qq|SELECT enddate, current_date AS now FROM customer|;
- ($form->{enddate}, $now) = $dbh->selectrow_array($query);
- $form->{enddate} = $now if $form->{enddate} lt $now;
- }
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO customer (name)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM customer
- WHERE name = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
-
- }
-
- my $employee_id;
- ($null, $employee_id) = split /--/, $form->{employee};
- $employee_id *= 1;
-
- my $pricegroup_id;
- ($null, $pricegroup_id) = split /--/, $form->{pricegroup};
- $pricegroup_id *= 1;
-
- my $business_id;
- ($null, $business_id) = split /--/, $form->{business};
- $business_id *= 1;
-
- my $language_code;
- ($null, $language_code) = split /--/, $form->{language};
-
- $form->{customernumber} = $form->update_defaults($myconfig, "customernumber", $dbh) if ! $form->{customernumber};
-
- $query = qq|UPDATE customer SET
- customernumber = |.$dbh->quote($form->{customernumber}).qq|,
- name = |.$dbh->quote($form->{name}).qq|,
- address1 = |.$dbh->quote($form->{address1}).qq|,
- address2 = |.$dbh->quote($form->{address2}).qq|,
- city = |.$dbh->quote($form->{city}).qq|,
- state = |.$dbh->quote($form->{state}).qq|,
- zipcode = |.$dbh->quote($form->{zipcode}).qq|,
- country = |.$dbh->quote($form->{country}).qq|,
- contact = |.$dbh->quote($form->{contact}).qq|,
- phone = '$form->{phone}',
- fax = '$form->{fax}',
- email = '$form->{email}',
- cc = '$form->{cc}',
- bcc = '$form->{bcc}',
- notes = |.$dbh->quote($form->{notes}).qq|,
- discount = $form->{discount},
- creditlimit = $form->{creditlimit},
- terms = $form->{terms},
- taxincluded = '$form->{taxincluded}',
- business_id = $business_id,
- taxnumber = |.$dbh->quote($form->{taxnumber}).qq|,
- sic_code = '$form->{sic}',
- iban = '$form->{iban}',
- bic = '$form->{bic}',
- employee_id = $employee_id,
- pricegroup_id = $pricegroup_id,
- language_code = '$language_code',
- curr = '$form->{curr}',
- startdate = |.$form->dbquote($form->{startdate}, SQL_DATE).qq|,
- enddate = |.$form->dbquote($form->{enddate}, SQL_DATE).qq|
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # save taxes
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"tax_$item"}) {
- $query = qq|INSERT INTO customertax (customer_id, chart_id)
- VALUES ($form->{id}, (SELECT id
- FROM chart
- WHERE accno = '$item'))|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # add shipto
- $form->add_shipto($dbh, $form->{id});
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub save_vendor {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
- my $null;
-
- # remove double spaces
- $form->{name} =~ s/ / /g;
- # remove double minus and minus at the end
- $form->{name} =~ s/--+/-/g;
- $form->{name} =~ s/-+$//;
-
- $form->{discount} = $form->parse_amount($myconfig, $form->{discount});
- $form->{discount} /= 100;
- $form->{terms} *= 1;
- $form->{taxincluded} *= 1;
- $form->{creditlimit} = $form->parse_amount($myconfig, $form->{creditlimit});
-
-
- if ($form->{id}) {
- $query = qq|DELETE FROM vendortax
- WHERE vendor_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO vendor (name)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM vendor
- WHERE name = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
-
- }
-
- my $employee_id;
- ($null, $employee_id) = split /--/, $form->{employee};
- $employee_id *= 1;
-
- my $pricegroup_id;
- ($null, $pricegroup_id) = split /--/, $form->{pricegroup};
- $pricegroup_id *= 1;
-
- my $business_id;
- ($null, $business_id) = split /--/, $form->{business};
- $business_id *= 1;
-
- my $language_code;
- ($null, $language_code) = split /--/, $form->{language};
-
- $form->{vendornumber} = $form->update_defaults($myconfig, "vendornumber", $dbh) if ! $form->{vendornumber};
-
- $query = qq|UPDATE vendor SET
- vendornumber = |.$dbh->quote($form->{vendornumber}).qq|,
- name = |.$dbh->quote($form->{name}).qq|,
- address1 = |.$dbh->quote($form->{address1}).qq|,
- address2 = |.$dbh->quote($form->{address2}).qq|,
- city = |.$dbh->quote($form->{city}).qq|,
- state = |.$dbh->quote($form->{state}).qq|,
- zipcode = |.$dbh->quote($form->{zipcode}).qq|,
- country = |.$dbh->quote($form->{country}).qq|,
- contact = |.$dbh->quote($form->{contact}).qq|,
- phone = '$form->{phone}',
- fax = '$form->{fax}',
- email = '$form->{email}',
- cc = '$form->{cc}',
- bcc = '$form->{bcc}',
- notes = |.$dbh->quote($form->{notes}).qq|,
- terms = $form->{terms},
- discount = $form->{discount},
- creditlimit = $form->{creditlimit},
- taxincluded = '$form->{taxincluded}',
- gifi_accno = '$form->{gifi_accno}',
- business_id = $business_id,
- taxnumber = |.$dbh->quote($form->{taxnumber}).qq|,
- sic_code = '$form->{sic}',
- iban = '$form->{iban}',
- bic = '$form->{bic}',
- employee_id = $employee_id,
- language_code = '$language_code',
- pricegroup_id = $pricegroup_id,
- curr = '$form->{curr}',
- startdate = |.$form->dbquote($form->{startdate}, SQL_DATE).qq|,
- enddate = |.$form->dbquote($form->{enddate}, SQL_DATE).qq|
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # save taxes
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"tax_$item"}) {
- $query = qq|INSERT INTO vendortax (vendor_id, chart_id)
- VALUES ($form->{id}, (SELECT id
- FROM chart
- WHERE accno = '$item'))|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # add shipto
- $form->add_shipto($dbh, $form->{id});
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-
-sub delete {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # delete customer/vendor
- my $query = qq|DELETE FROM $form->{db}
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub search {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $where = "1 = 1";
- $form->{sort} = ($form->{sort}) ? $form->{sort} : "name";
- my @a = qw(name);
- my $sortorder = $form->sort_order(\@a);
-
- my $var;
- my $item;
-
- @a = ("$form->{db}number");
- push @a, qw(name contact city state zipcode country notes email);
-
- foreach $item (@a) {
- if ($form->{$item}) {
- $var = $form->like(lc $form->{$item});
- $where .= " AND lower(ct.$item) LIKE '$var'";
- }
- }
- if ($form->{address}) {
- $var = $form->like(lc $form->{address});
- $where .= " AND (lower(ct.address1) LIKE '$var' OR lower(ct.address2) LIKE '$var')";
- }
-
- if ($form->{status} eq 'orphaned') {
- $where .= qq| AND ct.id NOT IN (SELECT o.$form->{db}_id
- FROM oe o, $form->{db} cv
- WHERE cv.id = o.$form->{db}_id)|;
- if ($form->{db} eq 'customer') {
- $where .= qq| AND ct.id NOT IN (SELECT a.customer_id
- FROM ar a, customer cv
- WHERE cv.id = a.customer_id)|;
- }
- if ($form->{db} eq 'vendor') {
- $where .= qq| AND ct.id NOT IN (SELECT a.vendor_id
- FROM ap a, vendor cv
- WHERE cv.id = a.vendor_id)|;
- }
- $form->{l_invnumber} = $form->{l_ordnumber} = $form->{l_quonumber} = "";
- }
-
-
- my $query = qq|SELECT ct.*, b.description AS business,
- e.name AS employee, g.pricegroup, l.description AS language,
- m.name AS manager
- FROM $form->{db} ct
- LEFT JOIN business b ON (ct.business_id = b.id)
- LEFT JOIN employee e ON (ct.employee_id = e.id)
- LEFT JOIN employee m ON (m.id = e.managerid)
- LEFT JOIN pricegroup g ON (ct.pricegroup_id = g.id)
- LEFT JOIN language l ON (l.code = ct.language_code)
- WHERE $where|;
-
- # redo for invoices, orders and quotations
- if ($form->{l_transnumber} || $form->{l_invnumber} || $form->{l_ordnumber} || $form->{l_quonumber}) {
-
- my ($ar, $union, $module);
- $query = "";
- my $transwhere;
- my $openarap = "";
- my $openoe = "";
-
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- $openarap = " AND a.amount != a.paid" if $form->{open};
- $openarap = " AND a.amount = a.paid" if $form->{closed};
- $openoe = " AND o.closed = '0'" if $form->{open};
- $openoe = " AND o.closed = '1'" if $form->{closed};
- }
- }
-
- if ($form->{l_transnumber}) {
- $ar = ($form->{db} eq 'customer') ? 'ar' : 'ap';
- $module = $ar;
-
- $transwhere = "";
- $transwhere .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $transwhere .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
-
- $query = qq|SELECT ct.*, b.description AS business,
- a.invnumber, a.ordnumber, a.quonumber, a.id AS invid,
- '$ar' AS module, 'invoice' AS formtype,
- (a.amount = a.paid) AS closed, a.amount, a.netamount
- FROM $form->{db} ct
- JOIN $ar a ON (a.$form->{db}_id = ct.id)
- LEFT JOIN business b ON (ct.business_id = b.id)
- WHERE $where
- AND a.invoice = '0'
- $transwhere
- $openarap
- |;
-
- $union = qq|
- UNION|;
-
- }
-
- if ($form->{l_invnumber}) {
- $ar = ($form->{db} eq 'customer') ? 'ar' : 'ap';
- $module = ($ar eq 'ar') ? 'is' : 'ir';
-
- $transwhere = "";
- $transwhere .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $transwhere .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- $query .= qq|$union
- SELECT ct.*, b.description AS business,
- a.invnumber, a.ordnumber, a.quonumber, a.id AS invid,
- '$module' AS module, 'invoice' AS formtype,
- (a.amount = a.paid) AS closed, a.amount, a.netamount
- FROM $form->{db} ct
- JOIN $ar a ON (a.$form->{db}_id = ct.id)
- LEFT JOIN business b ON (ct.business_id = b.id)
- WHERE $where
- AND a.invoice = '1'
- $transwhere
- $openarap
- |;
-
- $union = qq|
- UNION|;
-
- }
-
- if ($form->{l_ordnumber}) {
-
- $transwhere = "";
- $transwhere .= " AND o.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $transwhere .= " AND o.transdate <= '$form->{transdateto}'" if $form->{transdateto};
- $query .= qq|$union
- SELECT ct.*, b.description AS business,
- ' ' AS invnumber, o.ordnumber, o.quonumber, o.id AS invid,
- 'oe' AS module, 'order' AS formtype,
- o.closed, o.amount, o.netamount
- FROM $form->{db} ct
- JOIN oe o ON (o.$form->{db}_id = ct.id)
- LEFT JOIN business b ON (ct.business_id = b.id)
- WHERE $where
- AND o.quotation = '0'
- $transwhere
- $openoe
- |;
-
- $union = qq|
- UNION|;
-
- }
-
- if ($form->{l_quonumber}) {
-
- $transwhere = "";
- $transwhere .= " AND o.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $transwhere .= " AND o.transdate <= '$form->{transdateto}'" if $form->{transdateto};
- $query .= qq|$union
- SELECT ct.*, b.description AS business,
- ' ' AS invnumber, o.ordnumber, o.quonumber, o.id AS invid,
- 'oe' AS module, 'quotation' AS formtype,
- o.closed, o.amount, o.netamount
- FROM $form->{db} ct
- JOIN oe o ON (o.$form->{db}_id = ct.id)
- LEFT JOIN business b ON (ct.business_id = b.id)
- WHERE $where
- AND o.quotation = '1'
- $transwhere
- $openoe
- |;
-
- }
-
- $sortorder .= ", invid";
- }
-
- $query .= qq|
- ORDER BY $sortorder|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{address} = "";
- map { $ref->{address} .= "$ref->{$_} "; } qw(address1 address2 city state zipcode country);
- push @{ $form->{CT} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub get_history {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
- my $where = "1 = 1";
- $form->{sort} = "partnumber" unless $form->{sort};
- my $sortorder = $form->{sort};
- my %ordinal = ();
- my $var;
- my $table;
-
- # setup ASC or DESC
- $form->sort_order();
-
- if ($form->{"$form->{db}number"}) {
- $var = $form->like(lc $form->{"$form->{db}number"});
- $where .= " AND lower(ct.$form->{db}number) LIKE '$var'";
- }
- if ($form->{name}) {
- $var = $form->like(lc $form->{name});
- $where .= " AND lower(ct.name) LIKE '$var'";
- }
- if ($form->{address}) {
- $var = $form->like(lc $form->{address});
- $where .= " AND lower(ct.address1) LIKE '$var'";
- }
- if ($form->{city}) {
- $var = $form->like(lc $form->{city});
- $where .= " AND lower(ct.city) LIKE '$var'";
- }
- if ($form->{state}) {
- $var = $form->like(lc $form->{state});
- $where .= " AND lower(ct.state) LIKE '$var'";
- }
- if ($form->{zipcode}) {
- $var = $form->like(lc $form->{zipcode});
- $where .= " AND lower(ct.zipcode) LIKE '$var'";
- }
- if ($form->{country}) {
- $var = $form->like(lc $form->{country});
- $where .= " AND lower(ct.country) LIKE '$var'";
- }
- if ($form->{contact}) {
- $var = $form->like(lc $form->{contact});
- $where .= " AND lower(ct.contact) LIKE '$var'";
- }
- if ($form->{notes}) {
- $var = $form->like(lc $form->{notes});
- $where .= " AND lower(ct.notes) LIKE '$var'";
- }
- if ($form->{email}) {
- $var = $form->like(lc $form->{email});
- $where .= " AND lower(ct.email) LIKE '$var'";
- }
-
- $where .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $where .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- if ($form->{type} eq 'invoice') {
- $where .= " AND a.amount != a.paid" if $form->{open};
- $where .= " AND a.amount = a.paid" if $form->{closed};
- } else {
- $where .= " AND a.closed = '0'" if $form->{open};
- $where .= " AND a.closed = '1'" if $form->{closed};
- }
- }
- }
-
- my $invnumber = 'invnumber';
- my $deldate = 'deliverydate';
- my $buysell;
-
- if ($form->{db} eq 'customer') {
- $buysell = "buy";
- if ($form->{type} eq 'invoice') {
- $where .= qq| AND a.invoice = '1' AND i.assemblyitem = '0'|;
- $table = 'ar';
- } else {
- $table = 'oe';
- if ($form->{type} eq 'order') {
- $invnumber = 'ordnumber';
- $where .= qq| AND a.quotation = '0'|;
- } else {
- $invnumber = 'quonumber';
- $where .= qq| AND a.quotation = '1'|;
- }
- $deldate = 'reqdate';
- }
- }
- if ($form->{db} eq 'vendor') {
- $buysell = "sell";
- if ($form->{type} eq 'invoice') {
- $where .= qq| AND a.invoice = '1' AND i.assemblyitem = '0'|;
- $table = 'ap';
- } else {
- $table = 'oe';
- if ($form->{type} eq 'order') {
- $invnumber = 'ordnumber';
- $where .= qq| AND a.quotation = '0'|;
- } else {
- $invnumber = 'quonumber';
- $where .= qq| AND a.quotation = '1'|;
- }
- $deldate = 'reqdate';
- }
- }
-
- my $invjoin = qq|
- JOIN invoice i ON (i.trans_id = a.id)|;
-
- if ($form->{type} eq 'order') {
- $invjoin = qq|
- JOIN orderitems i ON (i.trans_id = a.id)|;
- }
- if ($form->{type} eq 'quotation') {
- $invjoin = qq|
- JOIN orderitems i ON (i.trans_id = a.id)|;
- $where .= qq| AND a.quotation = '1'|;
- }
-
-
- if ($form->{history} eq 'summary') {
- $query = qq|SELECT curr FROM defaults|;
- my ($curr) = $dbh->selectrow_array($query);
- $curr =~ s/:.*//;
-
- %ordinal = ( partnumber => 8,
- description => 9
- );
- $sortorder = "2 $form->{direction}, 1, $ordinal{$sortorder} $form->{direction}";
-
- $query = qq|SELECT ct.id AS ctid, ct.name, ct.address1,
- ct.address2, ct.city, ct.state,
- p.id AS pid, p.partnumber, i.description, p.unit,
- sum(i.qty) AS qty, sum(i.sellprice) AS sellprice,
- '$curr' AS curr,
- ct.zipcode, ct.country
- FROM $form->{db} ct
- JOIN $table a ON (a.$form->{db}_id = ct.id)
- $invjoin
- JOIN parts p ON (p.id = i.parts_id)
- WHERE $where
- GROUP BY ct.id, ct.name, ct.address1, ct.address2, ct.city,
- ct.state, ct.zipcode, ct.country,
- p.id, p.partnumber, i.description, p.unit
- ORDER BY $sortorder|;
- } else {
- %ordinal = ( partnumber => 9,
- description => 12,
- "$deldate" => 16,
- serialnumber => 17,
- projectnumber => 18
- );
-
- $sortorder = "2 $form->{direction}, 1, 11, $ordinal{$sortorder} $form->{direction}";
-
- $query = qq|SELECT ct.id AS ctid, ct.name, ct.address1,
- ct.address2, ct.city, ct.state,
- p.id AS pid, p.partnumber, a.id AS invid,
- a.$invnumber, a.curr, i.description,
- i.qty, i.sellprice, i.discount,
- i.$deldate, i.serialnumber, pr.projectnumber,
- e.name AS employee, ct.zipcode, ct.country, i.unit|;
- $query .= qq|, i.fxsellprice| if $form->{type} eq 'invoice';
-
- if ($form->{type} ne 'invoice') {
- if ($form->{l_curr}) {
- $query .= qq|, (SELECT $buysell FROM exchangerate ex
- WHERE a.curr = ex.curr
- AND a.transdate = ex.transdate) AS exchangerate|;
- }
- }
-
- $query .= qq|
- FROM $form->{db} ct
- JOIN $table a ON (a.$form->{db}_id = ct.id)
- $invjoin
- JOIN parts p ON (p.id = i.parts_id)
- LEFT JOIN project pr ON (pr.id = i.project_id)
- LEFT JOIN employee e ON (e.id = a.employee_id)
- WHERE $where
- ORDER BY $sortorder|;
- }
-
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{address} = "";
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- map { $ref->{address} .= "$ref->{$_} "; } qw(address1 address2 city state zipcode country);
- $ref->{id} = $ref->{ctid};
- push @{ $form->{CT} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub pricelist {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
-
- if ($form->{db} eq 'customer') {
- $query = qq|SELECT p.id, p.partnumber, p.description,
- p.sellprice, pg.partsgroup, p.partsgroup_id,
- m.pricebreak, m.sellprice,
- m.validfrom, m.validto, m.curr
- FROM partscustomer m
- JOIN parts p ON (p.id = m.parts_id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- WHERE m.customer_id = $form->{id}
- ORDER BY partnumber|;
- }
- if ($form->{db} eq 'vendor') {
- $query = qq|SELECT p.id, p.partnumber AS sku, p.description,
- pg.partsgroup, p.partsgroup_id,
- m.partnumber, m.leadtime, m.lastcost, m.curr
- FROM partsvendor m
- JOIN parts p ON (p.id = m.parts_id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- WHERE m.vendor_id = $form->{id}
- ORDER BY p.partnumber|;
- }
-
- my $sth;
- my $ref;
-
- if ($form->{id}) {
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_partspricelist} }, $ref;
- }
- $sth->finish;
- }
-
- $query = qq|SELECT curr FROM defaults|;
- ($form->{currencies}) = $dbh->selectrow_array($query);
-
- $query = qq|SELECT id, partsgroup FROM partsgroup
- ORDER BY partsgroup|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $form->{all_partsgroup} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_partsgroup} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub save_pricelist {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM parts$form->{db}
- WHERE $form->{db}_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- foreach $i (1 .. $form->{rowcount}) {
-
- if ($form->{"id_$i"}) {
-
- if ($form->{db} eq 'customer') {
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"}) } qw(pricebreak sellprice);
-
- $query = qq|INSERT INTO parts$form->{db} (parts_id, customer_id,
- pricebreak, sellprice, validfrom, validto, curr)
- VALUES ($form->{"id_$i"}, $form->{id},
- $form->{"pricebreak_$i"}, $form->{"sellprice_$i"},|
- .$form->dbquote($form->{"validfrom_$i"}, SQL_DATE) .qq|,|
- .$form->dbquote($form->{"validto_$i"}, SQL_DATE) .qq|,
- '$form->{"curr_$i"}')|;
- } else {
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"}) } qw(leadtime lastcost);
-
- $query = qq|INSERT INTO parts$form->{db} (parts_id, vendor_id,
- partnumber, lastcost, leadtime, curr)
- VALUES ($form->{"id_$i"}, $form->{id},
- '$form->{"partnumber_$i"}', $form->{"lastcost_$i"},
- $form->{"leadtime_$i"}, '$form->{"curr_$i"}')|;
-
- }
- $dbh->do($query) || $form->dberror($query);
- }
-
- }
-
- $_ = $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-
-sub retrieve_item {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $i = $form->{rowcount};
- my $var;
- my $null;
-
- my $where = "WHERE p.obsolete = '0' AND p.income_accno_id > 0";
-
- if ($form->{"partnumber_$i"}) {
- $var = $form->like(lc $form->{"partnumber_$i"});
- $where .= " AND lower(p.partnumber) LIKE '$var'";
- }
- if ($form->{"description_$i"}) {
- $var = $form->like(lc $form->{"description_$i"});
- $where .= " AND lower(p.description) LIKE '$var'";
- }
-
- if ($form->{"partsgroup_$i"}) {
- ($null, $var) = split /--/, $form->{"partsgroup_$i"};
- $where .= qq| AND p.partsgroup_id = $var|;
- }
-
-
- my $query = qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
- p.lastcost, p.unit, pg.partsgroup, p.partsgroup_id
- FROM parts p
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- $where
- |;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref;
- $form->{item_list} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{item_list} }, $ref;
- }
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/Form.pm b/sql-ledger/SL/Form.pm
deleted file mode 100644
index c722b44..0000000
--- a/sql-ledger/SL/Form.pm
+++ /dev/null
@@ -1,2357 +0,0 @@
-#=================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Thomas Bayen <bayen@gmx.de>
-# Antti Kaihola <akaihola@siba.fi>
-# Moritz Bunkus (tex)
-# Jim Rawlings <jim@your-dba.com> (DB2)
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# main package
-#
-#======================================================================
-
-package Form;
-
-
-sub new {
- my $type = shift;
-
- my $self = {};
-
- read(STDIN, $_, $ENV{CONTENT_LENGTH});
-
- if ($ENV{QUERY_STRING}) {
- $_ = $ENV{QUERY_STRING};
- }
-
- if ($ARGV[0]) {
- $_ = $ARGV[0];
- }
-
- foreach $item (split(/&/)) {
- ($key, $value) = split(/=/, $item);
- $self->{$key} = &unescape("",$value);
- }
-
- $self->{menubar} = 1 if $self->{path} =~ /lynx/i;
-
- if (substr($self->{action}, 0, 1) !~ /( |\.)/) {
- $self->{action} = lc $self->{action};
- $self->{action} =~ s/(( |-|,|#|\/)|\.$)/_/g;
- }
-
- $self->{version} = "2.4.4";
- $self->{dbversion} = "2.4.4";
-
- bless $self, $type;
-
-}
-
-
-sub debug {
- my ($self) = @_;
-
- print "\n";
-
- map { print "$_ = $self->{$_}\n" } (sort keys %$self);
-
-}
-
-
-sub escape {
- my ($self, $str, $beenthere) = @_;
-
- # for Apache 2 we escape strings twice
- if (($ENV{SERVER_SIGNATURE} =~ /Apache\/2\.(\d+)\.(\d+)/) && !$beenthere) {
- $str = $self->escape($str, 1) if $2 < 44;
- }
-
- $str =~ s/([^a-zA-Z0-9_.-])/sprintf("%%%02x", ord($1))/ge;
- $str;
-
-}
-
-
-sub unescape {
- my ($self, $str) = @_;
-
- $str =~ tr/+/ /;
- $str =~ s/\\$//;
-
- $str =~ s/%([0-9a-fA-Z]{2})/pack("c",hex($1))/eg;
-
- $str;
-
-}
-
-
-sub quote {
- my ($self, $str) = @_;
-
- if ($str && ! ref($str)) {
- $str =~ s/"/&quot;/g;
- }
-
- $str;
-
-}
-
-
-sub hide_form {
- my $self = shift;
-
- map { print qq|<input type=hidden name=$_ value="|.$self->quote($self->{$_}).qq|">\n| } sort keys %$self;
-
-}
-
-
-sub error {
- my ($self, $msg) = @_;
-
- if ($ENV{HTTP_USER_AGENT}) {
- $msg =~ s/\n/<br>/g;
-
- delete $self->{pre};
-
- if (!$self->{header}) {
- $self->header;
- }
-
- print qq|<body><h2 class=error>Error!</h2>
-
- <p><b>$msg</b>|;
-
- exit;
-
- } else {
-
- if ($self->{error_function}) {
- &{ $self->{error_function} }($msg);
- } else {
- die "Error: $msg\n";
- }
- }
-
-}
-
-
-sub info {
- my ($self, $msg) = @_;
-
- if ($ENV{HTTP_USER_AGENT}) {
- $msg =~ s/\n/<br>/g;
-
- delete $self->{pre};
-
- if (!$self->{header}) {
- $self->header;
- print qq|
- <body>|;
- $self->{header} = 1;
- }
-
- print "<br><b>$msg</b>";
-
- } else {
-
- if ($self->{info_function}) {
- &{ $self->{info_function} }($msg);
- } else {
- print "$msg\n";
- }
- }
-
-}
-
-
-
-
-sub numtextrows {
- my ($self, $str, $cols, $maxrows) = @_;
-
- my $rows = 0;
-
- map { $rows += int (((length) - 2)/$cols) + 1 } split /\r/, $str;
-
- $maxrows = $rows unless defined $maxrows;
-
- return ($rows > $maxrows) ? $maxrows : $rows;
-
-}
-
-
-sub dberror {
- my ($self, $msg) = @_;
-
- $self->error("$msg\n".$DBI::errstr);
-
-}
-
-
-sub isblank {
- my ($self, $name, $msg) = @_;
-
- if ($self->{$name} =~ /^\s*$/) {
- $self->error($msg);
- }
-}
-
-
-sub header {
- my ($self, $init) = @_;
-
- return if $self->{header};
-
- my ($stylesheet, $favicon, $charset);
-
- if ($ENV{HTTP_USER_AGENT}) {
-
- if ($self->{stylesheet} && (-f "css/$self->{stylesheet}")) {
- $stylesheet = qq|<LINK REL="stylesheet" HREF="css/$self->{stylesheet}" TYPE="text/css" TITLE="SQL-Ledger stylesheet">
- |;
- }
-
- if ($self->{favicon} && (-f "$self->{favicon}")) {
- $favicon = qq|<LINK REL="shortcut icon" HREF="$self->{favicon}" TYPE="image/x-icon">
- |;
- }
-
- if ($self->{charset}) {
- $charset = qq|<META HTTP-EQUIV="Content-Type" CONTENT="text/plain; charset=$self->{charset}">
- |;
- }
-
- $self->{titlebar} = ($self->{title}) ? "$self->{title} - $self->{titlebar}" : $self->{titlebar};
-
- $self->set_cookie($init);
-
- print qq|Content-Type: text/html
-
-<head>
- <title>$self->{titlebar}</title>
- $favicon
- $stylesheet
- $charset
-</head>
-
-$self->{pre}
-|;
- }
-
- $self->{header} = 1;
-
-}
-
-
-sub set_cookie {
- my ($self, $init) = @_;
-
- $self->{timeout} = ($self->{timeout} > 0) ? $self->{timeout} : 3600;
-
- if ($self->{endsession}) {
- $_ = time;
- } else {
- $_ = time + $self->{timeout};
- }
-
- if ($ENV{HTTP_USER_AGENT}) {
-
- my @d = split / +/, scalar gmtime($_);
- my $today = "$d[0], $d[2]-$d[1]-$d[4] $d[3] GMT";
-
- if ($init) {
- $self->{sessionid} = time;
- }
- print qq|Set-Cookie: SQL-Ledger-$self->{login}=$self->{sessionid}; expires=$today; path=/;\n| if $self->{login};
- }
-
-}
-
-
-sub redirect {
- my ($self, $msg) = @_;
-
- if ($self->{callback}) {
-
- ($script, $argv) = split(/\?/, $self->{callback});
- exec ("perl", "$script", $argv);
-
- } else {
-
- $self->info($msg);
- exit;
- }
-
-}
-
-
-sub sort_columns {
- my ($self, @columns) = @_;
-
- if ($self->{sort}) {
- if (@columns) {
- @columns = grep !/^$self->{sort}$/, @columns;
- splice @columns, 0, 0, $self->{sort};
- }
- }
-
- @columns;
-
-}
-
-
-sub sort_order {
- my ($self, $columns, $ordinal) = @_;
-
- # setup direction
- if ($self->{direction}) {
- if ($self->{sort} eq $self->{oldsort}) {
- if ($self->{direction} eq 'ASC') {
- $self->{direction} = "DESC";
- } else {
- $self->{direction} = "ASC";
- }
- }
- } else {
- $self->{direction} = "ASC";
- }
- $self->{oldsort} = $self->{sort};
-
- my $sortorder = join ',', $self->sort_columns(@{$columns});
-
- if ($ordinal) {
- map { $sortorder =~ s/$_/$ordinal->{$_}/ } keys %$ordinal;
- }
- my @a = split /,/, $sortorder;
- $a[0] = "$a[0] $self->{direction}";
- $sortorder = join ',', @a;
-
- $sortorder;
-
-}
-
-
-sub format_amount {
- my ($self, $myconfig, $amount, $places, $dash) = @_;
-
- if ($places =~ /\d/) {
- $amount = $self->round_amount($amount, $places);
- }
-
- # is the amount negative
- my $negative = ($amount < 0);
-
- if ($amount != 0) {
- if ($myconfig->{numberformat} && ($myconfig->{numberformat} ne '1000.00')) {
- my ($whole, $dec) = split /\./, "$amount";
- $whole =~ s/-//;
- $amount = join '', reverse split //, $whole;
-
- if ($myconfig->{numberformat} eq '1,000.00') {
- $amount =~ s/\d{3,}?/$&,/g;
- $amount =~ s/,$//;
- $amount = join '', reverse split //, $amount;
- $amount .= "\.$dec" if ($dec ne "");
- }
-
- if ($myconfig->{numberformat} eq "1'000.00") {
- $amount =~ s/\d{3,}?/$&'/g;
- $amount =~ s/'$//;
- $amount = join '', reverse split //, $amount;
- $amount .= "\.$dec" if ($dec ne "");
- }
-
- if ($myconfig->{numberformat} eq '1.000,00') {
- $amount =~ s/\d{3,}?/$&./g;
- $amount =~ s/\.$//;
- $amount = join '', reverse split //, $amount;
- $amount .= ",$dec" if ($dec ne "");
- }
-
- if ($myconfig->{numberformat} eq '1000,00') {
- $amount = "$whole";
- $amount .= ",$dec" if ($dec ne "");
- }
-
- if ($dash =~ /-/) {
- $amount = ($negative) ? "($amount)" : "$amount";
- } elsif ($dash =~ /DRCR/) {
- $amount = ($negative) ? "$amount DR" : "$amount CR";
- } else {
- $amount = ($negative) ? "-$amount" : "$amount";
- }
- }
- } else {
- if ($dash eq "0" && $places) {
- if ($myconfig->{numberformat} eq '1.000,00') {
- $amount = "0".","."0" x $places;
- } else {
- $amount = "0"."."."0" x $places;
- }
- } else {
- $amount = ($dash ne "") ? "$dash" : "";
- }
- }
-
- $amount;
-
-}
-
-
-sub parse_amount {
- my ($self, $myconfig, $amount) = @_;
-
- if (($myconfig->{numberformat} eq '1.000,00') ||
- ($myconfig->{numberformat} eq '1000,00')) {
- $amount =~ s/\.//g;
- $amount =~ s/,/\./;
- }
-
- if ($myconfig->{numberformat} eq "1'000.00") {
- $amount =~ s/'//g;
- }
-
- $amount =~ s/,//g;
-
- return ($amount * 1);
-
-}
-
-
-sub round_amount {
- my ($self, $amount, $places) = @_;
-
-# $places = 3 if $places == 2;
-
- if (($places * 1) >= 0) {
- # add 1/10^$places+3
- sprintf("%.${places}f", $amount + (1 / (10 ** ($places + 3))) * (($amount > 0) ? 1 : -1));
- } else {
- $places *= -1;
- sprintf("%.f", $amount / (10 ** $places) + (($amount > 0) ? 0.1 : -0.1)) * (10 ** $places);
- }
-
-}
-
-
-sub parse_template {
- my ($self, $myconfig, $userspath) = @_;
-
- my ($chars_per_line, $lines_on_first_page, $lines_on_second_page) = (0, 0, 0);
- my ($current_page, $current_line) = (1, 1);
- my $pagebreak = "";
- my $sum = 0;
-
- my $subdir = "";
- my $err = "";
-
- if ($self->{language_code}) {
- if (-f "$self->{templates}/$self->{language_code}/$self->{IN}") {
- open(IN, "$self->{templates}/$self->{language_code}/$self->{IN}") or $self->error("$self->{IN} : $!");
- } else {
- open(IN, "$self->{templates}/$self->{IN}") or $self->error("$self->{IN} : $!");
- }
- } else {
- open(IN, "$self->{templates}/$self->{IN}") or $self->error("$self->{IN} : $!");
- }
-
- @_ = <IN>;
- close(IN);
-
- $self->{copies} = 1 if (($self->{copies} *= 1) <= 0);
-
- # OUT is used for the media, screen, printer, email
- # for postscript we store a copy in a temporary file
- my $fileid = time;
- my $tmpfile = $self->{IN};
- $tmpfile =~ s/\./\.$self->{fileid}./ if $self->{fileid};
- $self->{tmpfile} = "$userspath/${fileid}.${tmpfile}";
-
- if ($self->{format} =~ /(postscript|pdf)/ || $self->{media} eq 'email') {
- $out = $self->{OUT};
- $self->{OUT} = ">$self->{tmpfile}";
- }
-
- if ($self->{OUT}) {
- open(OUT, "$self->{OUT}") or $self->error("$self->{OUT} : $!");
- } else {
- open(OUT, ">-") or $self->error("STDOUT : $!");
-
- $self->header;
-
- }
-
- # first we generate a tmpfile
- # read file and replace <%variable%>
- while ($_ = shift) {
-
- $par = "";
- $var = $_;
-
-
- # detect pagebreak block and its parameters
- if (/\s*<%pagebreak ([0-9]+) ([0-9]+) ([0-9]+)%>/) {
- $chars_per_line = $1;
- $lines_on_first_page = $2;
- $lines_on_second_page = $3;
-
- while ($_ = shift) {
- last if (/\s*<%end pagebreak%>/);
- $pagebreak .= $_;
- }
- }
-
-
- if (/\s*<%foreach /) {
-
- # this one we need for the count
- chomp $var;
- $var =~ s/\s*<%foreach (.+?)%>/$1/;
- while ($_ = shift) {
- last if (/\s*<%end /);
-
- # store line in $par
- $par .= $_;
- }
-
- # display contents of $self->{number}[] array
- for $i (0 .. $#{ $self->{$var} }) {
-
- # Try to detect whether a manual page break is necessary
- # but only if there was a <%pagebreak ...%> block before
-
- if ($chars_per_line) {
- my $lines = int(length($self->{"description"}[$i]) / $chars_per_line + 0.95);
- my $lpp;
-
- if ($current_page == 1) {
- $lpp = $lines_on_first_page;
- } else {
- $lpp = $lines_on_second_page;
- }
-
- # Yes we need a manual page break
- if (($current_line + $lines) > $lpp) {
- my $pb = $pagebreak;
-
- # replace the special variables <%sumcarriedforward%>
- # and <%lastpage%>
-
- my $psum = $self->format_amount($myconfig, $sum, 2);
- $pb =~ s/<%sumcarriedforward%>/$psum/g;
- $pb =~ s/<%lastpage%>/$current_page/g;
-
- # only "normal" variables are supported here
- # (no <%if, no <%foreach, no <%include)
-
- $pb =~ s/<%(.+?)%>/$self->{$1}/g;
-
- # page break block is ready to rock
- print(OUT $pb);
- $current_page++;
- $current_line = 1;
- }
- $current_line += $lines;
- }
- $sum += $self->parse_amount($myconfig, $self->{"linetotal"}[$i]);
-
- # don't parse par, we need it for each line
- print OUT $self->format_line($par, $i);
-
- }
- next;
- }
-
- # if not comes before if!
- if (/\s*<%if not /) {
- # check if it is not set and display
- chop;
- s/\s*<%if not (.+?)%>/$1/;
-
- unless ($self->{$_}) {
- while ($_ = shift) {
- last if (/\s*<%end /);
-
- # store line in $par
- $par .= $_;
- }
-
- $_ = $par;
-
- } else {
- while ($_ = shift) {
- last if (/\s*<%end /);
- }
- next;
- }
- }
-
- if (/\s*<%if /) {
- # check if it is set and display
- chop;
- s/\s*<%if (.+?)%>/$1/;
-
- if ($self->{$_}) {
- while ($_ = shift) {
- last if (/\s*<%end /);
-
- # store line in $par
- $par .= $_;
- }
-
- $_ = $par;
-
- } else {
- while ($_ = shift) {
- last if (/\s*<%end /);
- }
- next;
- }
- }
-
- # check for <%include filename%>
- if (/\s*<%include /) {
-
- # get the filename
- chomp $var;
- $var =~ s/\s*<%include (.+?)%>/$1/;
-
- # mangle filename
- $var =~ s/(\/|\.\.)//g;
-
- # prevent the infinite loop!
- next if ($self->{"$var"});
-
- unless (open(INC, "$self->{templates}/$var")) {
- $err = $!;
- $self->cleanup;
- $self->error("$self->{templates}/$var : $err");
- }
- unshift(@_, <INC>);
- close(INC);
-
- $self->{"$var"} = 1;
-
- next;
- }
-
- print OUT $self->format_line($_);
-
- }
-
- close(OUT);
-
-
- # Convert the tex file to postscript
- if ($self->{format} =~ /(postscript|pdf)/) {
-
- use Cwd;
- $self->{cwd} = cwd();
- $self->{tmpdir} = "$self->{cwd}/$userspath";
-
- unless (chdir("$userspath")) {
- $err = $!;
- $self->cleanup;
- $self->error("chdir : $err");
- }
-
- $self->{tmpfile} =~ s/$userspath\///g;
-
- if ($self->{format} eq 'postscript') {
- system("latex --interaction=nonstopmode $self->{tmpfile} > $self->{tmpfile}.err");
- $self->error($self->cleanup) if ($?);
-
- $self->{tmpfile} =~ s/tex$/dvi/;
-
- system("dvips $self->{tmpfile} -o -q");
- $self->error($self->cleanup."dvips : $!") if ($?);
- $self->{tmpfile} =~ s/dvi$/ps/;
- }
- if ($self->{format} eq 'pdf') {
- system("pdflatex --interaction=nonstopmode $self->{tmpfile} > $self->{tmpfile}.err");
- $self->error($self->cleanup) if ($?);
- $self->{tmpfile} =~ s/tex$/pdf/;
- }
-
- }
-
-
- if ($self->{format} =~ /(postscript|pdf)/ || $self->{media} eq 'email') {
-
- if ($self->{media} eq 'email') {
-
- use SL::Mailer;
-
- my $mail = new Mailer;
-
- map { $mail->{$_} = $self->{$_} } qw(cc bcc subject message version format charset);
- $mail->{to} = qq|$self->{email}|;
- $mail->{from} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
- $mail->{fileid} = "$fileid.";
-
- # if we send html or plain text inline
- if (($self->{format} =~ /(html|txt)/) && ($self->{sendmode} eq 'inline')) {
- my $br = "";
- $br = "<br>" if $self->{format} eq 'html';
-
- $mail->{contenttype} = "text/$self->{format}";
-
- $mail->{message} =~ s/\r\n/$br\n/g;
- $myconfig->{signature} =~ s/\\n/$br\n/g;
- $mail->{message} .= "$br\n-- $br\n$myconfig->{signature}\n$br" if $myconfig->{signature};
-
- unless (open(IN, $self->{tmpfile})) {
- $err = $!;
- $self->cleanup;
- $self->error("$self->{tmpfile} : $err");
- }
-
- while (<IN>) {
- $mail->{message} .= $_;
- }
-
- close(IN);
-
- } else {
-
- @{ $mail->{attachments} } = ($self->{tmpfile});
-
- $myconfig->{signature} =~ s/\\n/\r\n/g;
- $mail->{message} .= "\r\n-- \r\n$myconfig->{signature}" if $myconfig->{signature};
-
- }
-
- if ($err = $mail->send($out)) {
- $self->cleanup;
- $self->error($err);
- }
-
- } else {
-
- $self->{OUT} = $out;
- unless (open(IN, $self->{tmpfile})) {
- $err = $!;
- $self->cleanup;
- $self->error("$self->{tmpfile} : $err");
- }
-
- binmode(IN);
-
- $self->{copies} = 1 if $self->{media} =~ /(screen|email|queue)/;
-
- chdir("$self->{cwd}");
-
- for my $i (1 .. $self->{copies}) {
- if ($self->{OUT}) {
- unless (open(OUT, $self->{OUT})) {
- $err = $!;
- $self->cleanup;
- $self->error("$self->{OUT} : $err");
- }
- } else {
-
- # launch application
- print qq|Content-Type: application/$self->{format}
-Content-Disposition: attachment; filename="$self->{tmpfile}"\n\n|;
-
- unless (open(OUT, ">-")) {
- $err = $!;
- $self->cleanup;
- $self->error("STDOUT : $err");
- }
-
- }
-
- binmode(OUT);
-
- while (<IN>) {
- print OUT $_;
- }
-
- close(OUT);
- seek IN, 0, 0;
- }
-
- close(IN);
- }
-
- $self->cleanup;
-
- }
-
-}
-
-
-sub format_line {
- my $self = shift;
-
- $_ = shift;
- my $i = shift;
- my ($str, $pos, $l, $item, $newstr);
- my $var = "";
- my %a;
-
- while (/<%(.+?)%>/) {
-
- %a = ();
-
- foreach $item (split / /, $1) {
- my ($key, $value) = split /=/, $item;
- if (defined $value) {
- $a{$key} = $value;
- } else {
- $var = $item;
- }
- }
-
- $str = (defined $i) ? $self->{$var}[$i] : $self->{$var};
-
- if ($a{align} || $a{width} || $a{offset}) {
-
- $str =~ s/( |\n)+/" " x $a{offset}/ge;
- $l = length $str;
-
- if ($l > $a{width}) {
- if (($pos = rindex $str, " ", $a{width}) > 0) {
- $newstr = substr($str, 0, $pos);
- $newstr .= "\n";
- $str = substr($str, $pos + 1);
-
- while (length $str > $a{width}) {
- if (($pos = rindex $str, " ", $a{width}) > 0) {
- $newstr .= (" " x $a{offset}).substr($str, 0, $pos);
- $newstr .= "\n";
- $str = substr($str, $pos + 1);
- } else {
- $newstr .= (" " x $a{offset}).substr($str, 0, $a{width});
- $newstr .= "\n";
- $str = substr($str, $a{width} + 1);
- }
- }
- }
- $l = length $str;
- $str .= " " x ($a{width} - $l);
- $newstr .= (" " x $a{offset}).$str;
- $str = $newstr;
-
- $l = $a{width};
- }
-
- # pad left, right or center
- $pos = lc $a{align};
- $l = ($a{width} - $l);
-
- my $pad = " " x $l;
-
- if ($pos eq 'right') {
- $str = "$pad$str";
- }
-
- if ($pos eq 'left') {
- $str = "$str$pad";
- }
-
- if ($pos eq 'center') {
- $pad = " " x ($l/2);
- $str = "$pad$str";
- $pad = " " x ($l/2 + 1) if ($l % 2);
- $str .= "$pad";
- }
- }
-
- s/<%(.+?)%>/$str/;
-
- }
-
- $_;
-
-}
-
-
-sub cleanup {
- my $self = shift;
-
- chdir("$self->{tmpdir}");
-
- my @err = ();
- if (-f "$self->{tmpfile}.err") {
- open(FH, "$self->{tmpfile}.err");
- @err = <FH>;
- close(FH);
- }
-
- if ($self->{tmpfile}) {
- # strip extension
- $self->{tmpfile} =~ s/\.\w+$//g;
- my $tmpfile = $self->{tmpfile};
- unlink(<$tmpfile.*>);
- }
-
- chdir("$self->{cwd}");
-
- "@err";
-
-}
-
-
-sub format_string {
- my ($self, @fields) = @_;
-
- my $format = $self->{format};
- if ($self->{format} =~ /(postscript|pdf)/) {
- $format = 'tex';
- }
-
- my %replace = ( 'order' => { html => [ '<', '>', quotemeta('\n'), ' ' ],
- txt => [ quotemeta('\n') ],
- tex => [ '&', quotemeta('\n'), ' ',
- '\$', '%', '_', '#', quotemeta('^'),
- '{', '}', '<', '>', '£',
- quotemeta('\\\\') ] },
- html => { '<' => '&lt;', '>' => '&gt;',
- quotemeta('\n') => '<br>', ' ' => '<br>'
- },
- txt => { quotemeta('\n') },
- tex => {
- '&' => '\&', '\$' => '\$', '%' => '\%', '_' => '\_',
- '#' => '\#', quotemeta('^') => '\^\\', '{' => '\{', '}' => '\}',
- '<' => '$<$', '>' => '$>$',
- quotemeta('\n') => '\newline ', ' ' => '\newline ',
- '£' => '\pounds ', quotemeta('\\\\') => '$\backslash$'
- }
- );
-
- foreach my $key (@{ $replace{order}{$format} }) {
- map { $self->{$_} =~ s/$key/$replace{$format}{$key}/g; } @fields;
- }
-
-}
-
-
-sub datetonum {
- my ($self, $date, $myconfig) = @_;
-
- if ($date && $date =~ /\D/) {
-
- if ($myconfig->{dateformat} =~ /^yy/) {
- ($yy, $mm, $dd) = split /\D/, $date;
- }
- if ($myconfig->{dateformat} =~ /^mm/) {
- ($mm, $dd, $yy) = split /\D/, $date;
- }
- if ($myconfig->{dateformat} =~ /^dd/) {
- ($dd, $mm, $yy) = split /\D/, $date;
- }
-
- $dd *= 1;
- $mm *= 1;
- $yy = ($yy < 70) ? $yy + 2000 : $yy;
- $yy = ($yy >= 70 && $yy <= 99) ? $yy + 1900 : $yy;
-
- $dd = "0$dd" if ($dd < 10);
- $mm = "0$mm" if ($mm < 10);
-
- $date = "$yy$mm$dd";
- }
-
- $date;
-
-}
-
-
-# Database routines used throughout
-
-sub dbconnect {
- my ($self, $myconfig) = @_;
-
- # connect to database
- my $dbh = DBI->connect($myconfig->{dbconnect}, $myconfig->{dbuser}, $myconfig->{dbpasswd}) or $self->dberror;
-
- # set db options
- if ($myconfig->{dboptions}) {
- $dbh->do($myconfig->{dboptions}) || $self->dberror($myconfig->{dboptions});
- }
-
- $dbh;
-
-}
-
-
-sub dbconnect_noauto {
- my ($self, $myconfig) = @_;
-
- # connect to database
- $dbh = DBI->connect($myconfig->{dbconnect}, $myconfig->{dbuser}, $myconfig->{dbpasswd}, {AutoCommit => 0}) or $self->dberror;
-
- # set db options
- if ($myconfig->{dboptions}) {
- $dbh->do($myconfig->{dboptions});
- }
-
- $dbh;
-
-}
-
-
-sub dbquote {
- my ($self, $var, $type) = @_;
-
- my $rv = 'NULL';
-
- # DBI does not return NULL for SQL_DATE if the date is empty, bug ?
- if (defined $var) {
- if (defined $type) {
- if ($type eq 'SQL_DATE') {
- $rv = "'$var'" if $var;
- } elsif ($type eq 'SQL_INT.*') {
- $rv = int $var;
- } else {
- if ($type !~ /SQL_.*CHAR/) {
- $rv = $var * 1;
- } else {
- $var =~ s/'/''/g;
- $rv = "'$var'";
- }
- }
- } else {
- $var =~ s/'/''/g;
- $rv = "'$var'";
- }
- }
-
- $rv;
-
-}
-
-
-sub update_balance {
- my ($self, $dbh, $table, $field, $where, $value) = @_;
-
- # if we have a value, go do it
- if ($value != 0) {
- # retrieve balance from table
- my $query = "SELECT $field FROM $table WHERE $where FOR UPDATE";
- my ($balance) = $dbh->selectrow_array($query);
-
- $balance += $value;
- # update balance
- $query = "UPDATE $table SET $field = $balance WHERE $where";
- $dbh->do($query) || $self->dberror($query);
- }
-}
-
-
-
-sub update_exchangerate {
- my ($self, $dbh, $curr, $transdate, $buy, $sell) = @_;
-
- # some sanity check for currency
- return if ($curr eq '');
-
- my $query = qq|SELECT curr FROM exchangerate
- WHERE curr = '$curr'
- AND transdate = '$transdate'
- FOR UPDATE|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- my $set;
- if ($buy != 0 && $sell != 0) {
- $set = "buy = $buy, sell = $sell";
- } elsif ($buy != 0) {
- $set = "buy = $buy";
- } elsif ($sell != 0) {
- $set = "sell = $sell";
- }
-
- if ($sth->fetchrow_array) {
- $query = qq|UPDATE exchangerate
- SET $set
- WHERE curr = '$curr'
- AND transdate = '$transdate'|;
- } else {
- $query = qq|INSERT INTO exchangerate (curr, buy, sell, transdate)
- VALUES ('$curr', $buy, $sell, '$transdate')|;
- }
- $sth->finish;
- $dbh->do($query) || $self->dberror($query);
-
-}
-
-
-sub save_exchangerate {
- my ($self, $myconfig, $currency, $transdate, $rate, $fld) = @_;
-
- my $dbh = $self->dbconnect($myconfig);
-
- my ($buy, $sell) = (0, 0);
- $buy = $rate if $fld eq 'buy';
- $sell = $rate if $fld eq 'sell';
-
- $self->update_exchangerate($dbh, $currency, $transdate, $buy, $sell);
-
- $dbh->disconnect;
-
-}
-
-
-sub get_exchangerate {
- my ($self, $dbh, $curr, $transdate, $fld) = @_;
-
- my $query = qq|SELECT $fld FROM exchangerate
- WHERE curr = '$curr'
- AND transdate = '$transdate'|;
- my ($exchangerate) = $dbh->selectrow_array($query);
-
- $exchangerate;
-
-}
-
-
-sub check_exchangerate {
- my ($self, $myconfig, $currency, $transdate, $fld) = @_;
-
- return "" unless $transdate;
-
- my $dbh = $self->dbconnect($myconfig);
-
- my $query = qq|SELECT $fld FROM exchangerate
- WHERE curr = '$currency'
- AND transdate = '$transdate'|;
- my ($exchangerate) = $dbh->selectrow_array($query);
-
- $dbh->disconnect;
-
- $exchangerate;
-
-}
-
-
-sub add_shipto {
- my ($self, $dbh, $id) = @_;
-
- my $shipto;
- foreach my $item (qw(name address1 address2 city state zipcode country contact phone fax email)) {
- if ($self->{"shipto$item"}) {
- $shipto = 1 if ($self->{$item} ne $self->{"shipto$item"});
- }
- }
-
- if ($shipto) {
- my $query = qq|INSERT INTO shipto (trans_id, shiptoname, shiptoaddress1,
- shiptoaddress2, shiptocity, shiptostate,
- shiptozipcode, shiptocountry, shiptocontact,
- shiptophone, shiptofax, shiptoemail) VALUES ($id, |
- .$dbh->quote($self->{shiptoname}).qq|, |
- .$dbh->quote($self->{shiptoaddress1}).qq|, |
- .$dbh->quote($self->{shiptoaddress2}).qq|, |
- .$dbh->quote($self->{shiptocity}).qq|, |
- .$dbh->quote($self->{shiptostate}).qq|, |
- .$dbh->quote($self->{shiptozipcode}).qq|, |
- .$dbh->quote($self->{shiptocountry}).qq|, |
- .$dbh->quote($self->{shiptocontact}).qq|,
- '$self->{shiptophone}', '$self->{shiptofax}',
- '$self->{shiptoemail}')|;
- $dbh->do($query) || $self->dberror($query);
- }
-
-}
-
-
-sub get_employee {
- my ($self, $dbh) = @_;
-
- my $login = $self->{login};
- $login =~ s/@.*//;
- my $query = qq|SELECT name, id FROM employee
- WHERE login = '$login'|;
- my (@a) = $dbh->selectrow_array($query);
- $a[1] *= 1;
-
- @a;
-
-}
-
-
-# this sub gets the id and name from $table
-sub get_name {
- my ($self, $myconfig, $table) = @_;
-
- # connect to database
- my $dbh = $self->dbconnect($myconfig);
-
- my $name = $self->like(lc $self->{$table});
- my $query = qq~SELECT c.id, c.name, c.address1, c.address2,
- c.city, c.state, c.zipcode, c.country
- FROM $table c
- WHERE lower(c.name) LIKE '$name'
- ORDER BY c.name~;
-
- if ($self->{openinvoices}) {
- $query = qq~SELECT DISTINCT c.id, c.name, c.address1, c.address2,
- c.city, c.state, c.zipcode, c.country
- FROM $self->{arap} a
- JOIN $table c ON (a.${table}_id = c.id)
- WHERE a.amount != a.paid
- AND lower(c.name) LIKE '$name'
- ORDER BY c.name~;
- }
-
- my $sth = $dbh->prepare($query);
-
- $sth->execute || $self->dberror($query);
-
- my $i = 0;
- @{ $self->{name_list} } = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push(@{ $self->{name_list} }, $ref);
- $i++;
- }
- $sth->finish;
- $dbh->disconnect;
-
- $i;
-
-}
-
-
-# the selection sub is used in the AR, AP, IS, IR and OE module
-#
-sub all_vc {
- my ($self, $myconfig, $table, $module, $dbh, $enddate) = @_;
-
- my $ref;
- my $closedb;
- if (! defined $dbh) {
- $dbh = $self->dbconnect($myconfig);
- $closedb = 1;
- }
- my $sth;
-
- my $query = qq|SELECT count(*) FROM $table|;
- my $where;
-
- if (defined $enddate) {
- $where = qq|AND (enddate IS NULL OR enddate >= '$enddate')|;
- $query .= qq| WHERE 1=1
- $where|;
- }
- my ($count) = $dbh->selectrow_array($query);
-
- # build selection list
- if ($count < $myconfig->{vclimit}) {
- $query = qq|SELECT id, name
- FROM $table
- WHERE 1=1
- $where
- ORDER BY name|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{"all_$table"} }, $ref;
- }
- $sth->finish;
-
- }
-
-
- # get self
- if (! $self->{employee_id}) {
- ($self->{employee}, $self->{employee_id}) = split /--/, $self->{employee};
- ($self->{employee}, $self->{employee_id}) = $self->get_employee($dbh) unless $self->{employee_id};
- }
-
- # setup sales contacts
- $query = qq|SELECT id, name
- FROM employee
- WHERE sales = '1'
- $where
- ORDER BY name|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_employees} }, $ref;
- }
- $sth->finish;
-
-
- if ($module eq 'AR') {
- # prepare query for departments
- $query = qq|SELECT id, description
- FROM department
- WHERE role = 'P'
- ORDER BY 2|;
-
- } else {
- $query = qq|SELECT id, description
- FROM department
- ORDER BY 2|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_departments} }, $ref;
- }
- $sth->finish;
-
-
- # get projects
- $query = qq|SELECT *
- FROM project
- ORDER BY projectnumber|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $self->{all_projects} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_projects} }, $ref;
- }
- $sth->finish;
-
- # get language codes
- $query = qq|SELECT *
- FROM language
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $self->{all_languages} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_languages} }, $ref;
- }
- $sth->finish;
-
- $self->all_years($dbh, $myconfig);
-
- $dbh->disconnect if $closedb;
-
-}
-
-
-# this is only used for reports
-sub all_projects {
- my ($self, $myconfig) = @_;
-
- my $dbh = $self->dbconnect($myconfig);
-
- my $query = qq|SELECT *
- FROM project
- ORDER BY projectnumber|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $self->{all_projects} = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_projects} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub all_departments {
- my ($self, $myconfig, $table) = @_;
-
- my $dbh = $self->dbconnect($myconfig);
- my $where = "1 = 1";
-
- if (defined $table) {
- if ($table eq 'customer') {
- $where = " role = 'P'";
- }
- }
-
- my $query = qq|SELECT id, description
- FROM department
- WHERE $where
- ORDER BY 2|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_departments} }, $ref;
- }
- $sth->finish;
-
- $self->all_years($dbh, $myconfig);
-
- $dbh->disconnect;
-
-}
-
-
-sub all_years {
- my ($self, $dbh, $myconfig) = @_;
-
- # get years
- my $query = qq|SELECT (SELECT MIN(transdate) FROM acc_trans),
- (SELECT MAX(transdate) FROM acc_trans)
- FROM defaults|;
- my ($startdate, $enddate) = $dbh->selectrow_array($query);
-
- if ($myconfig->{dateformat} =~ /^yy/) {
- ($startdate) = split /\W/, $startdate;
- ($enddate) = split /\W/, $enddate;
- } else {
- (@_) = split /\W/, $startdate;
- $startdate = @_[2];
- (@_) = split /\W/, $enddate;
- $enddate = @_[2];
- }
-
- while ($enddate >= $startdate) {
- push @{ $self->{all_years} }, $enddate--;
- }
-
- %{ $self->{all_month} } = ( '01' => 'January',
- '02' => 'February',
- '03' => 'March',
- '04' => 'April',
- '05' => 'May ',
- '06' => 'June',
- '07' => 'July',
- '08' => 'August',
- '09' => 'September',
- '10' => 'October',
- '11' => 'November',
- '12' => 'December' );
-
-}
-
-
-sub create_links {
- my ($self, $module, $myconfig, $table) = @_;
-
- # get last customers or vendors
- my ($query, $sth);
-
- my $dbh = $self->dbconnect($myconfig);
-
- my %xkeyref = ();
-
-
- # now get the account numbers
- $query = qq|SELECT accno, description, link
- FROM chart
- WHERE link LIKE '%$module%'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $self->{accounts} = "";
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- foreach my $key (split /:/, $ref->{link}) {
- if ($key =~ /$module/) {
- # cross reference for keys
- $xkeyref{$ref->{accno}} = $key;
-
- push @{ $self->{"${module}_links"}{$key} }, { accno => $ref->{accno},
- description => $ref->{description} };
-
- $self->{accounts} .= "$ref->{accno} " unless $key =~ /tax/;
- }
- }
- }
- $sth->finish;
-
- if ($self->{id}) {
- my $arap = ($table eq 'customer') ? 'ar' : 'ap';
-
- $query = qq|SELECT a.invnumber, a.transdate,
- a.${table}_id, a.datepaid, a.duedate, a.ordnumber,
- a.taxincluded, a.curr AS currency, a.notes, a.intnotes,
- c.name AS $table, a.department_id, d.description AS department,
- a.amount AS oldinvtotal, a.paid AS oldtotalpaid,
- a.employee_id, e.name AS employee, c.language_code
- FROM $arap a
- JOIN $table c ON (a.${table}_id = c.id)
- LEFT JOIN employee e ON (e.id = a.employee_id)
- LEFT JOIN department d ON (d.id = a.department_id)
- WHERE a.id = $self->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- foreach $key (keys %$ref) {
- $self->{$key} = $ref->{$key};
- }
- $sth->finish;
-
-
- # get printed, emailed
- $query = qq|SELECT s.printed, s.emailed, s.spoolfile, s.formname
- FROM status s
- WHERE s.trans_id = $self->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $self->{printed} .= "$ref->{formname} " if $ref->{printed};
- $self->{emailed} .= "$ref->{formname} " if $ref->{emailed};
- $self->{queued} .= "$ref->{formname} $ref->{spoolfile} " if $ref->{spoolfile};
- }
- $sth->finish;
- map { $self->{$_} =~ s/ +$//g } qw(printed emailed queued);
-
-
- # get amounts from individual entries
- $query = qq|SELECT c.accno, c.description, a.source, a.amount, a.memo,
- a.transdate, a.cleared, a.project_id, p.projectnumber
- FROM acc_trans a
- JOIN chart c ON (c.id = a.chart_id)
- LEFT JOIN project p ON (p.id = a.project_id)
- WHERE a.trans_id = $self->{id}
- AND a.fx_transaction = '0'
- ORDER BY transdate|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
-
- my $fld = ($table eq 'customer') ? 'buy' : 'sell';
-
- $self->{exchangerate} = $self->get_exchangerate($dbh, $self->{currency}, $self->{transdate}, $fld);
-
- # store amounts in {acc_trans}{$key} for multiple accounts
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{exchangerate} = $self->get_exchangerate($dbh, $self->{currency}, $ref->{transdate}, $fld);
-
- push @{ $self->{acc_trans}{$xkeyref{$ref->{accno}}} }, $ref;
- }
- $sth->finish;
-
- $query = qq|SELECT d.curr AS currencies, d.closedto, d.revtrans,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno
- FROM defaults d|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $self->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- } else {
-
- # get date
- $query = qq|SELECT current_date AS transdate,
- d.curr AS currencies, d.closedto, d.revtrans,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno
- FROM defaults d|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $self->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- if (! $self->{"$self->{vc}_id"}) {
- $self->lastname_used($dbh, $myconfig, $table, $module);
- }
-
- }
-
- $self->all_vc($myconfig, $table, $module, $dbh, $self->{transdate});
-
- $dbh->disconnect;
-
-}
-
-
-sub lastname_used {
- my ($self, $dbh, $myconfig, $table, $module) = @_;
-
- my $arap = ($table eq 'customer') ? "ar" : "ap";
- my $where = "1 = 1";
- my $sth;
-
- if ($self->{type} =~ /_order/) {
- $arap = 'oe';
- $where = "quotation = '0'";
- }
- if ($self->{type} =~ /_quotation/) {
- $arap = 'oe';
- $where = "quotation = '1'";
- }
-
- my $query = qq|SELECT id FROM $arap
- WHERE id IN (SELECT MAX(id) FROM $arap
- WHERE $where
- AND ${table}_id > 0)|;
- my ($trans_id) = $dbh->selectrow_array($query);
-
- $trans_id *= 1;
-
- my $DAYS = ($myconfig->{dbdriver} eq 'DB2') ? "DAYS" : "";
-
- $query = qq|SELECT ct.name AS $table, a.curr AS currency, a.${table}_id,
- current_date + ct.terms $DAYS AS duedate, a.department_id,
- d.description AS department, ct.notes, ct.curr AS currency
- FROM $arap a
- JOIN $table ct ON (a.${table}_id = ct.id)
- LEFT JOIN department d ON (a.department_id = d.id)
- WHERE a.id = $trans_id|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $self->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
-}
-
-
-
-sub current_date {
- my ($self, $myconfig, $thisdate, $days) = @_;
-
- my $dbh = $self->dbconnect($myconfig);
- my ($sth, $query);
-
- $days *= 1;
- if ($thisdate) {
- my $dateformat = $myconfig->{dateformat};
- if ($myconfig->{dateformat} !~ /^y/) {
- my @a = split /\D/, $thisdate;
- $dateformat .= "yy" if (length $a[2] > 2);
- }
-
- if ($thisdate !~ /\D/) {
- $dateformat = 'yyyymmdd';
- }
-
- if ($myconfig->{dbdriver} eq 'DB2') {
- $query = qq|SELECT date('$thisdate') + $days DAYS AS thisdate
- FROM defaults|;
- } else {
- $query = qq|SELECT to_date('$thisdate', '$dateformat') + $days AS thisdate
- FROM defaults|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
- } else {
- $query = qq|SELECT current_date AS thisdate
- FROM defaults|;
- $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
- }
-
- ($thisdate) = $sth->fetchrow_array;
- $sth->finish;
-
- $dbh->disconnect;
-
- $thisdate;
-
-}
-
-
-sub like {
- my ($self, $str) = @_;
-
- if ($str !~ /(%|_)/) {
- $str = "%$str%";
- }
-
- $str =~ s/'/''/g;
- $str;
-
-}
-
-
-sub redo_rows {
- my ($self, $flds, $new, $count, $numrows) = @_;
-
- my @ndx = ();
-
- map { push @ndx, { num => $new->[$_-1]->{runningnumber}, ndx => $_ } } (1 .. $count);
-
- my $i = 0;
- # fill rows
- foreach my $item (sort { $a->{num} <=> $b->{num} } @ndx) {
- $i++;
- $j = $item->{ndx} - 1;
- map { $self->{"${_}_$i"} = $new->[$j]->{$_} } @{$flds};
- }
-
- # delete empty rows
- for $i ($count + 1 .. $numrows) {
- map { delete $self->{"${_}_$i"} } @{$flds};
- }
-
-}
-
-
-sub get_partsgroup {
- my ($self, $myconfig, $p) = @_;
-
- my $dbh = $self->dbconnect($myconfig);
-
- my $query = qq|SELECT DISTINCT pg.id, pg.partsgroup
- FROM partsgroup pg
- JOIN parts p ON (p.partsgroup_id = pg.id)|;
-
- if ($p->{searchitems} eq 'part') {
- $query .= qq|
- WHERE p.inventory_accno_id > 0|;
- }
- if ($p->{searchitems} eq 'service') {
- $query .= qq|
- WHERE p.inventory_accno_id IS NULL|;
- }
- if ($p->{searchitems} eq 'assembly') {
- $query .= qq|
- WHERE p.assembly = '1'|;
- }
- if ($p->{searchitems} eq 'labor') {
- $query .= qq|
- WHERE p.inventory_accno_id > 0 AND p.income_accno_id IS NULL|;
- }
-
- $query .= qq|
- ORDER BY partsgroup|;
-
- if ($p->{all}) {
- $query = qq|SELECT id, partsgroup FROM partsgroup
- ORDER BY partsgroup|;
- }
-
- if ($p->{language_code}) {
- $query = qq|SELECT DISTINCT pg.id, pg.partsgroup,
- t.description AS translation
- FROM partsgroup pg
- JOIN parts p ON (p.partsgroup_id = pg.id)
- LEFT JOIN translation t ON (t.trans_id = pg.id AND t.language_code = '$p->{language_code}')
- ORDER BY translation|;
- }
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $self->dberror($query);
-
- $self->{all_partsgroup} = ();
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $self->{all_partsgroup} }, $ref;
- }
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub update_status {
- my ($self, $myconfig) = @_;
-
- # no id return
- return unless $self->{id};
-
- my $i;
- my $id;
-
- my $dbh = $self->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM status
- WHERE formname = |.$dbh->quote($self->{formname}).qq|
- AND trans_id = ?|;
- my $sth = $dbh->prepare($query) || $self->dberror($query);
-
- if ($self->{formname} =~ /(check|receipt)/) {
- for $i (1 .. $self->{rowcount}) {
- $sth->execute($self->{"id_$i"} * 1) || $self->dberror($query);
- $sth->finish;
- }
- } else {
- $sth->execute($self->{id}) || $self->dberror($query);
- $sth->finish;
- }
-
- my $printed = ($self->{printed} =~ /$self->{formname}/) ? "1" : "0";
- my $emailed = ($self->{emailed} =~ /$self->{formname}/) ? "1" : "0";
-
- my %queued = split / /, $self->{queued};
-
- if ($self->{formname} =~ /(check|receipt)/) {
- # this is a check or receipt, add one entry for each lineitem
- my ($accno) = split /--/, $self->{account};
- $query = qq|INSERT INTO status (trans_id, printed, spoolfile, formname,
- chart_id) VALUES (?, '$printed',|
- .$dbh->quote($queued{$self->{formname}}).qq|, |
- .$dbh->quote($self->{formname}).qq|,
- (SELECT id FROM chart WHERE accno = |
- .$dbh->quote($accno).qq|))|;
- $sth = $dbh->prepare($query) || $self->dberror($query);
-
- for $i (1 .. $self->{rowcount}) {
- if ($self->{"checked_$i"}) {
- $sth->execute($self->{"id_$i"}) || $self->dberror($query);
- $sth->finish;
- }
- }
- } else {
- $query = qq|INSERT INTO status (trans_id, printed, emailed,
- spoolfile, formname)
- VALUES ($self->{id}, '$printed', '$emailed', |
- .$dbh->quote($queued{$self->{formname}}).qq|, |
- .$dbh->quote($self->{formname}).qq|)|;
- $dbh->do($query) || $self->dberror($query);
- }
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub save_status {
- my ($self, $dbh) = @_;
-
- my ($query, $printed, $emailed);
-
- my $formnames = $self->{printed};
- my $emailforms = $self->{emailed};
-
- my $query = qq|DELETE FROM status
- WHERE formname = '$self->{formname}'
- AND trans_id = $self->{id}|;
- $dbh->do($query) || $self->dberror($query);
-
- if ($self->{queued}) {
- $query = qq|DELETE FROM status
- WHERE spoolfile IS NOT NULL
- AND trans_id = $self->{id}|;
- $dbh->do($query) || $self->dberror($query);
-
- my %queued = split / /, $self->{queued};
-
- foreach my $formname (keys %queued) {
- $printed = ($self->{printed} =~ /$self->{formname}/) ? "1" : "0";
- $emailed = ($self->{emailed} =~ /$self->{formname}/) ? "1" : "0";
-
- $query = qq|INSERT INTO status (trans_id, printed, emailed,
- spoolfile, formname)
- VALUES ($self->{id}, '$printed', '$emailed',
- '$queued{$formname}', '$formname')|;
- $dbh->do($query) || $self->dberror($query);
- $formnames =~ s/$formname//;
- $emailforms =~ s/$formname//;
-
- }
- }
-
- # save printed, emailed info
- $formnames =~ s/^ +//g;
- $emailforms =~ s/^ +//g;
-
- my %status = ();
- map { $status{$_}{printed} = 1 } split / +/, $formnames;
- map { $status{$_}{emailed} = 1 } split / +/, $emailforms;
-
- foreach my $formname (keys %status) {
- $printed = ($formnames =~ /$self->{formname}/) ? "1" : "0";
- $emailed = ($emailforms =~ /$self->{formname}/) ? "1" : "0";
-
- $query = qq|INSERT INTO status (trans_id, printed, emailed, formname)
- VALUES ($self->{id}, '$printed', '$emailed', '$formname')|;
- $dbh->do($query) || $self->dberror($query);
- }
-
-}
-
-
-sub save_intnotes {
- my ($self, $myconfig, $table) = @_;
-
- # no id return
- return unless $self->{id};
-
- my $dbh = $self->dbconnect($myconfig);
-
- my $query = qq|UPDATE $table SET
- intnotes = |.$dbh->quote($self->{intnotes}).qq|
- WHERE id = $self->{id}|;
- $dbh->do($query) || $self->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub update_defaults {
- my ($self, $myconfig, $fld, $dbh) = @_;
-
- my $closedb;
-
- if (! defined $dbh) {
- $dbh = $self->dbconnect_noauto($myconfig);
- $closedb = 1;
- }
-
- my $query = qq|SELECT $fld FROM defaults FOR UPDATE|;
- ($_) = $dbh->selectrow_array($query);
-
- $_ = "0" unless $_;
-
- # check for and replace
- # <%DATE%>, <%YYMMDD%> or variations of
- # <%NAME 1 1 3%>, <%BUSINESS%>, <%BUSINESS 10%>, <%CURR...%>
- # <%DESCRIPTION 1 1 3%>, <%ITEM 1 1 3%>, <%PARTSGROUP 1 1 3%> only for parts
- # <%PHONE%> for customer and vendors
-
- my $num = $_;
- $num =~ s/(<%.*?%>)//g;
- ($num) = $num =~ /(\d+)/;
- if (defined $num) {
- my $incnum;
- # if we have leading zeros check how long it is
- if ($num =~ /^0/) {
- my $l = length $num;
- $incnum = $num + 1;
- $l -= length $incnum;
-
- # pad it out with zeros
- my $padzero = "0" x $l;
- $incnum = ("0" x $l) . $incnum;
- } else {
- $incnum = $num + 1;
- }
-
- s/$num/$incnum/;
- }
-
- my $dbvar = $_;
- my $var = $_;
- my $str;
- my $param;
-
- if (/<%/) {
- while (/<%/) {
- s/<%.*?%>//;
- last unless $&;
- $param = $&;
- $str = "";
-
- if ($param =~ /<%date%>/i) {
- $str = ($self->split_date($myconfig->{dateformat}, $self->{transdate}))[0];
- $var =~ s/$param/$str/;
- }
-
- if ($param =~ /<%(name|business|description|item|partsgroup|phone|custom)/i) {
- my $fld = lc $&;
- $fld =~ s/<%//;
- if ($fld =~ /name/) {
- if ($self->{type}) {
- $fld = $self->{vc};
- }
- }
-
- my $p = $param;
- $p =~ s/(<|>|%)//g;
- my @p = split / /, $p;
- my @n = split / /, uc $self->{$fld};
- if ($#p > 0) {
- for (my $i = 1; $i <= $#p; $i++) {
- $str .= substr($n[$i-1], 0, $p[$i]);
- }
- } else {
- ($str) = split /--/, $self->{$fld};
- }
- $var =~ s/$param/$str/;
-
- $var =~ s/\W//g if $fld eq 'phone';
- }
-
- if ($param =~ /<%(yy|mm|dd)/i) {
- my $p = $param;
- $p =~ s/(<|>|%)//g;
- my $spc = $p;
- $spc =~ s/\w//g;
- $spc = substr($spc, 0, 1);
- my %d = ( yy => 1, mm => 2, dd => 3 );
- my @p = ();
-
- my @a = $self->split_date($myconfig->{dateformat}, $self->{transdate});
- map { push @p, $a[$d{$_}] if ($p =~ /$_/) } sort keys %d;
- $str = join $spc, @p;
-
- $var =~ s/$param/$str/;
- }
-
- if ($param =~ /<%curr/i) {
- $var =~ s/$param/$self->{currency}/;
- }
-
- }
- }
-
- $query = qq|UPDATE defaults
- SET $fld = '$dbvar'|;
- $dbh->do($query) || $form->dberror($query);
-
- if ($closedb) {
- $dbh->commit;
- $dbh->disconnect;
- }
-
- $var;
-
-}
-
-
-sub split_date {
- my ($self, $dateformat, $date) = @_;
-
- my @d = localtime;
- my $mm;
- my $dd;
- my $yy;
- my $rv;
-
- if (! $date) {
- $dd = $d[3];
- $mm = $d[4]++;
- $yy = substr($d[5],-2);
- $mm *= 1;
- $dd *= 1;
- $mm = "0$mm" if $mm < 10;
- $dd = "0$dd" if $dd < 10;
- }
-
- if ($dateformat =~ /^yy/) {
- if ($date) {
- if ($date =~ /\D/) {
- ($yy, $mm, $dd) = split /\D/, $date;
- $mm *= 1;
- $dd *= 1;
- $mm = "0$mm" if $mm < 10;
- $dd = "0$dd" if $dd < 10;
- $yy = substr($yy, -2);
- $rv = "$yy$mm$dd";
- } else {
- $rv = $date;
- }
- } else {
- $rv = "$yy$mm$dd";
- }
- }
-
- if ($dateformat =~ /^mm/) {
- if ($date) {
- if ($date =~ /\D/) {
- ($mm, $dd, $yy) = split /\D/, $date if $date;
- $mm *= 1;
- $dd *= 1;
- $mm = "0$mm" if $mm < 10;
- $dd = "0$dd" if $dd < 10;
- $yy = substr($yy, -2);
- $rv = "$mm$dd$yy";
- } else {
- $rv = $date;
- }
- } else {
- $rv = "$mm$dd$yy";
- }
- }
-
- if ($dateformat =~ /^dd/) {
- if ($date) {
- if ($date =~ /\D/) {
- ($dd, $mm, $yy) = split /\D/, $date if $date;
- $mm *= 1;
- $dd *= 1;
- $mm = "0$mm" if $mm < 10;
- $dd = "0$dd" if $dd < 10;
- $yy = substr($yy, -2);
- $rv = "$dd$mm$yy";
- } else {
- $rv = $date;
- }
- } else {
- $rv = "$dd$mm$yy";
- }
- }
-
- ($rv, $yy, $mm, $dd);
-
-}
-
-
-sub from_to {
- my ($self, $yy, $mm, $interval) = @_;
-
- use Time::Local;
-
- my @t;
- my $dd = 1;
- my $fromdate = "$yy${mm}01";
- my $bd = 1;
-
- if (defined $interval) {
- if ($interval == 12) {
- $yy++ if $mm > 1;
- } else {
- if (($mm += $interval) > 12) {
- $mm -= 12;
- $yy++ if $mm > 1;
- }
- if ($interval == 0) {
- @t = localtime(time);
- $dd = $t[3];
- $mm = $t[4] + 1;
- $yy = $t[5] + 1900;
- $bd = 0;
- }
- }
- } else {
- if ($mm++ > 12) {
- $mm -= 12;
- $yy++;
- }
- }
-
- $mm--;
- @t = localtime(timelocal(0,0,0,$dd,$mm,$yy) - $bd);
-
- $t[4]++;
- $t[4] = substr("0$t[4]",-2);
- $t[3] = substr("0$t[3]",-2);
-
- ($fromdate, "$yy$t[4]$t[3]");
-
-}
-
-
-sub audittrail {
- my ($self, $dbh, $myconfig, $audittrail) = @_;
-
-# table, $reference, $formname, $action, $id, $transdate) = @_;
-
- my $query;
- my $rv;
-
- # if we have an id add audittrail, otherwise get a new timestamp
-
- if ($audittrail->{id}) {
- $dbh = $self->dbconnect($myconfig) if $myconfig;
-
- $query = qq|SELECT audittrail FROM defaults|;
-
- if ($dbh->selectrow_array($query)) {
- my ($null, $employee_id) = $self->get_employee($dbh);
-
- if ($self->{audittrail} && !$myconfig) {
- chop $self->{audittrail};
-
- my @a = split /\|/, $self->{audittrail};
- my %newtrail = ();
- my $key;
- my $i;
- my @flds = qw(tablename reference formname action transdate);
-
- # put into hash and remove dups
- while (@a) {
- $key = "$a[2]$a[3]";
- $i = 0;
- $newtrail{$key} = { map { $_ => $a[$i++] } @flds };
- splice @a, 0, 5;
- }
-
- $query = qq|INSERT INTO audittrail (trans_id, tablename, reference,
- formname, action, employee_id, transdate)
- VALUES ($audittrail->{id}, ?, ?,
- ?, ?, $employee_id, ?)|;
- my $sth = $dbh->prepare($query) || $self->dberror($query);
-
- foreach $key (sort { $newtrail{$a}{transdate} cmp $newtrail{$b}{transdate} } keys %newtrail) {
- $i = 1;
- map { $sth->bind_param($i++, $newtrail{$key}{$_}) } @flds;
-
- $sth->execute || $self->dberror;
- $sth->finish;
- }
- }
-
-
- if ($audittrail->{transdate}) {
- $query = qq|INSERT INTO audittrail (trans_id, tablename, reference,
- formname, action, employee_id, transdate) VALUES (
- $audittrail->{id}, '$audittrail->{tablename}', |
- .$dbh->quote($audittrail->{reference}).qq|',
- '$audittrail->{formname}', '$audittrail->{action}',
- $employee_id, '$audittrail->{transdate}')|;
- } else {
- $query = qq|INSERT INTO audittrail (trans_id, tablename, reference,
- formname, action, employee_id) VALUES ($audittrail->{id},
- '$audittrail->{tablename}', |
- .$dbh->quote($audittrail->{reference}).qq|,
- '$audittrail->{formname}', '$audittrail->{action}',
- $employee_id)|;
- }
- $dbh->do($query);
- }
- } else {
- $dbh = $self->dbconnect($myconfig);
-
- $query = qq|SELECT current_timestamp FROM defaults|;
- my ($timestamp) = $dbh->selectrow_array($query);
-
- $rv = "$audittrail->{tablename}|$audittrail->{reference}|$audittrail->{formname}|$audittrail->{action}|$timestamp|";
- }
-
- $dbh->disconnect if $myconfig;
-
- $rv;
-
-}
-
-
-
-package Locale;
-
-
-sub new {
- my ($type, $country, $NLS_file) = @_;
- my $self = {};
-
- %self = ();
- if ($country && -d "locale/$country") {
- $self->{countrycode} = $country;
- eval { require "locale/$country/$NLS_file"; };
- }
-
- $self->{NLS_file} = $NLS_file;
-
- push @{ $self->{LONG_MONTH} }, ("January", "February", "March", "April", "May ", "June", "July", "August", "September", "October", "November", "December");
- push @{ $self->{SHORT_MONTH} }, (qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec));
-
- bless $self, $type;
-
-}
-
-
-sub text {
- my ($self, $text) = @_;
-
- return (exists $self{texts}{$text}) ? $self{texts}{$text} : $text;
-
-}
-
-
-sub findsub {
- my ($self, $text) = @_;
-
- if (exists $self{subs}{$text}) {
- $text = $self{subs}{$text};
- } else {
- if ($self->{countrycode} && $self->{NLS_file}) {
- Form->error("$text not defined in locale/$self->{countrycode}/$self->{NLS_file}");
- }
- }
-
- $text;
-
-}
-
-
-sub date {
- my ($self, $myconfig, $date, $longformat) = @_;
-
- my $longdate = "";
- my $longmonth = ($longformat) ? 'LONG_MONTH' : 'SHORT_MONTH';
-
-
- if ($date) {
- # get separator
- $spc = $myconfig->{dateformat};
- $spc =~ s/\w//g;
- $spc = substr($spc, 0, 1);
-
- if ($date =~ /\D/) {
- if ($myconfig->{dateformat} =~ /^yy/) {
- ($yy, $mm, $dd) = split /\D/, $date;
- }
- if ($myconfig->{dateformat} =~ /^mm/) {
- ($mm, $dd, $yy) = split /\D/, $date;
- }
- if ($myconfig->{dateformat} =~ /^dd/) {
- ($dd, $mm, $yy) = split /\D/, $date;
- }
- } else {
- $date = substr($date, 2);
- ($yy, $mm, $dd) = ($date =~ /(..)(..)(..)/);
- }
-
- $dd *= 1;
- $mm--;
- $yy = ($yy < 70) ? $yy + 2000 : $yy;
- $yy = ($yy >= 70 && $yy <= 99) ? $yy + 1900 : $yy;
-
- if ($myconfig->{dateformat} =~ /^dd/) {
- $mm++;
- $dd = "0$dd" if ($dd < 10);
- $mm = "0$mm" if ($mm < 10);
- $longdate = "$dd$spc$mm$spc$yy";
-
- if (defined $longformat) {
- $longdate = "$dd";
- $longdate .= ($spc eq '.') ? ". " : " ";
- $longdate .= &text($self, $self->{$longmonth}[--$mm])." $yy";
- }
- } elsif ($myconfig->{dateformat} =~ /^yy/) {
- $mm++;
- $dd = "0$dd" if ($dd < 10);
- $mm = "0$mm" if ($mm < 10);
- $longdate = "$yy$spc$mm$spc$dd";
-
- if (defined $longformat) {
- $longdate = &text($self, $self->{$longmonth}[--$mm])." $dd $yy";
- }
- } else {
- $mm++;
- $dd = "0$dd" if ($dd < 10);
- $mm = "0$mm" if ($mm < 10);
- $longdate = "$mm$spc$dd$spc$yy";
-
- if (defined $longformat) {
- $longdate = &text($self, $self->{$longmonth}[--$mm])." $dd $yy";
- }
- }
-
- }
-
- $longdate;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/GL.pm b/sql-ledger/SL/GL.pm
deleted file mode 100644
index 221f717..0000000
--- a/sql-ledger/SL/GL.pm
+++ /dev/null
@@ -1,514 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# General ledger backend code
-#
-#======================================================================
-
-package GL;
-
-
-sub delete_transaction {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my %audittrail = ( tablename => 'gl',
- reference => $form->{reference},
- formname => 'transaction',
- action => 'deleted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $query = qq|DELETE FROM gl WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM acc_trans WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # commit and redirect
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub post_transaction {
- my ($self, $myconfig, $form) = @_;
-
- my $null;
- my $project_id;
- my $department_id;
- my $i;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # post the transaction
- # make up a unique handle and store in reference field
- # then retrieve the record based on the unique handle to get the id
- # replace the reference field with the actual variable
- # add records to acc_trans
-
- # if there is a $form->{id} replace the old transaction
- # delete all acc_trans entries and add the new ones
-
- my $query;
- my $sth;
-
- if ($form->{id}) {
- # delete individual transactions
- $query = qq|DELETE FROM acc_trans
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO gl (reference, employee_id)
- VALUES ('$uid', (SELECT id FROM employee
- WHERE login = '$form->{login}'))|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM gl
- WHERE reference = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
- ($null, $department_id) = split /--/, $form->{department};
- $department_id *= 1;
-
- $query = qq|UPDATE gl SET
- reference = |.$dbh->quote($form->{reference}).qq|,
- description = |.$dbh->quote($form->{description}).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- transdate = '$form->{transdate}',
- department_id = $department_id
- WHERE id = $form->{id}|;
-
- $dbh->do($query) || $form->dberror($query);
-
-
- my $amount = 0;
- my $posted = 0;
- # insert acc_trans transactions
- for $i (1 .. $form->{rowcount}) {
-
- $form->{"debit_$i"} = $form->parse_amount($myconfig, $form->{"debit_$i"});
- $form->{"credit_$i"} = $form->parse_amount($myconfig, $form->{"credit_$i"});
-
- # extract accno
- ($accno) = split(/--/, $form->{"accno_$i"});
- $amount = 0;
-
- if ($form->{"credit_$i"} != 0) {
- $amount = $form->{"credit_$i"};
- $posted = 0;
- }
- if ($form->{"debit_$i"} != 0) {
- $amount = $form->{"debit_$i"} * -1;
- $posted = 0;
- }
-
-
- # add the record
- if (! $posted) {
-
- ($null, $project_id) = split /--/, $form->{"projectnumber_$i"};
- $project_id *= 1;
- $form->{"fx_transaction_$i"} *= 1;
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- source, project_id, fx_transaction)
- VALUES
- ($form->{id}, (SELECT id
- FROM chart
- WHERE accno = '$accno'),
- $amount, '$form->{transdate}', |
- .$dbh->quote($form->{reference}).qq|,
- $project_id, '$form->{"fx_transaction_$i"}')|;
-
- $dbh->do($query) || $form->dberror($query);
-
- $posted = 1;
- }
-
- }
-
- my %audittrail = ( tablename => 'gl',
- reference => $form->{reference},
- formname => 'transaction',
- action => 'posted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- # commit and redirect
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub all_transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
- my $query;
- my $sth;
- my $var;
- my $null;
-
- my ($glwhere, $arwhere, $apwhere) = ("1 = 1", "1 = 1", "1 = 1");
-
- if ($form->{reference}) {
- $var = $form->like(lc $form->{reference});
- $glwhere .= " AND lower(g.reference) LIKE '$var'";
- $arwhere .= " AND lower(a.invnumber) LIKE '$var'";
- $apwhere .= " AND lower(a.invnumber) LIKE '$var'";
- }
- if ($form->{department}) {
- ($null, $var) = split /--/, $form->{department};
- $glwhere .= " AND g.department_id = $var";
- $arwhere .= " AND a.department_id = $var";
- $apwhere .= " AND a.department_id = $var";
- }
-
- if ($form->{source}) {
- $var = $form->like(lc $form->{source});
- $glwhere .= " AND lower(ac.source) LIKE '$var'";
- $arwhere .= " AND lower(ac.source) LIKE '$var'";
- $apwhere .= " AND lower(ac.source) LIKE '$var'";
- }
-
- ($form->{datefrom}, $form->{dateto}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- if ($form->{datefrom}) {
- $glwhere .= " AND ac.transdate >= '$form->{datefrom}'";
- $arwhere .= " AND ac.transdate >= '$form->{datefrom}'";
- $apwhere .= " AND ac.transdate >= '$form->{datefrom}'";
- }
- if ($form->{dateto}) {
- $glwhere .= " AND ac.transdate <= '$form->{dateto}'";
- $arwhere .= " AND ac.transdate <= '$form->{dateto}'";
- $apwhere .= " AND ac.transdate <= '$form->{dateto}'";
- }
- if ($form->{amountfrom}) {
- $glwhere .= " AND abs(ac.amount) >= $form->{amountfrom}";
- $arwhere .= " AND abs(ac.amount) >= $form->{amountfrom}";
- $apwhere .= " AND abs(ac.amount) >= $form->{amountfrom}";
- }
- if ($form->{amountto}) {
- $glwhere .= " AND abs(ac.amount) <= $form->{amountto}";
- $arwhere .= " AND abs(ac.amount) <= $form->{amountto}";
- $apwhere .= " AND abs(ac.amount) <= $form->{amountto}";
- }
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $glwhere .= " AND lower(g.description) LIKE '$var'";
- $arwhere .= " AND lower(ct.name) LIKE '$var'";
- $apwhere .= " AND lower(ct.name) LIKE '$var'";
- }
- if ($form->{notes}) {
- $var = $form->like(lc $form->{notes});
- $glwhere .= " AND lower(g.notes) LIKE '$var'";
- $arwhere .= " AND lower(a.notes) LIKE '$var'";
- $apwhere .= " AND lower(a.notes) LIKE '$var'";
- }
- if ($form->{accno}) {
- $glwhere .= " AND c.accno = '$form->{accno}'";
- $arwhere .= " AND c.accno = '$form->{accno}'";
- $apwhere .= " AND c.accno = '$form->{accno}'";
- }
- if ($form->{gifi_accno}) {
- $glwhere .= " AND c.gifi_accno = '$form->{gifi_accno}'";
- $arwhere .= " AND c.gifi_accno = '$form->{gifi_accno}'";
- $apwhere .= " AND c.gifi_accno = '$form->{gifi_accno}'";
- }
- if ($form->{category} ne 'X') {
- $glwhere .= " AND c.category = '$form->{category}'";
- $arwhere .= " AND c.category = '$form->{category}'";
- $apwhere .= " AND c.category = '$form->{category}'";
- }
-
- if ($form->{accno}) {
- # get category for account
- $query = qq|SELECT category, link
- FROM chart
- WHERE accno = '$form->{accno}'|;
- ($form->{ml}, $form->{link}) = $dbh->selectrow_array($query);
-
- if ($form->{datefrom}) {
- $query = qq|SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- WHERE c.accno = '$form->{accno}'
- AND ac.transdate < date '$form->{datefrom}'
- |;
- ($form->{balance}) = $dbh->selectrow_array($query);
- }
- }
-
- if ($form->{gifi_accno}) {
- # get category for account
- $query = qq|SELECT category, link
- FROM chart
- WHERE gifi_accno = '$form->{gifi_accno}'|;
- ($form->{ml}, $form->{link}) = $dbh->selectrow_array($query);
-
- if ($form->{datefrom}) {
- $query = qq|SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- WHERE c.gifi_accno = '$form->{gifi_accno}'
- AND ac.transdate < date '$form->{datefrom}'
- |;
- ($form->{balance}) = $dbh->selectrow_array($query);
- }
- }
-
- my $false = ($myconfig->{dbdriver} =~ /Pg/) ? FALSE : q|'0'|;
-
- my %ordinal = ( id => 1,
- accno => 9,
- transdate => 6,
- reference => 4,
- source => 7,
- description => 5 );
-
- my @a = (id, transdate, reference, source, description, accno);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT g.id, 'gl' AS type, $false AS invoice, g.reference,
- g.description, ac.transdate, ac.source,
- ac.amount, c.accno, c.gifi_accno, g.notes, c.link,
- '' AS till, ac.cleared
- FROM gl g, acc_trans ac, chart c
- WHERE $glwhere
- AND ac.chart_id = c.id
- AND g.id = ac.trans_id
- UNION ALL
- SELECT a.id, 'ar' AS type, a.invoice, a.invnumber,
- ct.name, ac.transdate, ac.source,
- ac.amount, c.accno, c.gifi_accno, a.notes, c.link,
- a.till, ac.cleared
- FROM ar a, acc_trans ac, chart c, customer ct
- WHERE $arwhere
- AND ac.chart_id = c.id
- AND a.customer_id = ct.id
- AND a.id = ac.trans_id
- UNION ALL
- SELECT a.id, 'ap' AS type, a.invoice, a.invnumber,
- ct.name, ac.transdate, ac.source,
- ac.amount, c.accno, c.gifi_accno, a.notes, c.link,
- a.till, ac.cleared
- FROM ap a, acc_trans ac, chart c, vendor ct
- WHERE $apwhere
- AND ac.chart_id = c.id
- AND a.vendor_id = ct.id
- AND a.id = ac.trans_id
- ORDER BY $sortorder|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- # gl
- if ($ref->{type} eq "gl") {
- $ref->{module} = "gl";
- }
-
- # ap
- if ($ref->{type} eq "ap") {
- if ($ref->{invoice}) {
- $ref->{module} = "ir";
- } else {
- $ref->{module} = "ap";
- }
- }
-
- # ar
- if ($ref->{type} eq "ar") {
- if ($ref->{invoice}) {
- $ref->{module} = ($ref->{till}) ? "ps" : "is";
- } else {
- $ref->{module} = "ar";
- }
- }
-
- if ($ref->{amount} < 0) {
- $ref->{debit} = $ref->{amount} * -1;
- $ref->{credit} = 0;
- } else {
- $ref->{credit} = $ref->{amount};
- $ref->{debit} = 0;
- }
-
- push @{ $form->{GL} }, $ref;
-
- }
-
-
- $sth->finish;
-
- if ($form->{accno}) {
- $query = qq|SELECT description FROM chart WHERE accno = '$form->{accno}'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{account_description}) = $sth->fetchrow_array;
- $sth->finish;
- }
- if ($form->{gifi_accno}) {
- $query = qq|SELECT description FROM gifi WHERE accno = '$form->{gifi_accno}'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{gifi_account_description}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub transaction {
- my ($self, $myconfig, $form) = @_;
-
- my ($query, $sth, $ref);
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- if ($form->{id}) {
- $query = "SELECT closedto, revtrans
- FROM defaults";
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{closedto}, $form->{revtrans}) = $sth->fetchrow_array;
- $sth->finish;
-
- $query = qq|SELECT g.*,
- d.description AS department
- FROM gl g
- LEFT JOIN department d ON (d.id = g.department_id)
- WHERE g.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # retrieve individual rows
- $query = qq|SELECT c.accno, c.description, ac.amount, ac.project_id,
- p.projectnumber, ac.fx_transaction
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- LEFT JOIN project p ON (p.id = ac.project_id)
- WHERE ac.trans_id = $form->{id}
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($ref->{fx_transaction}) {
- $form->{transfer} = 1;
- }
- push @{ $form->{GL} }, $ref;
- }
- } else {
- $query = "SELECT current_date AS transdate, closedto, revtrans
- FROM defaults";
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{transdate}, $form->{closedto}, $form->{revtrans}) = $sth->fetchrow_array;
- }
-
- $sth->finish;
-
- my $paid;
- if ($form->{transfer}) {
- $paid = "AND link LIKE '%_paid%'
- AND NOT (category = 'I'
- OR category = 'E')
-
- UNION
-
- SELECT accno,description
- FROM chart
- WHERE id IN (SELECT fxgain_accno_id FROM defaults)
- OR id IN (SELECT fxloss_accno_id FROM defaults)";
- }
-
- # get chart of accounts
- $query = qq|SELECT accno,description
- FROM chart
- WHERE charttype = 'A'
- $paid
- ORDER by accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_accno} }, $ref;
- }
- $sth->finish;
-
- # get projects
- $query = qq|SELECT *
- FROM project
- ORDER BY projectnumber|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_projects} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/HR.pm b/sql-ledger/SL/HR.pm
deleted file mode 100644
index 6e1bae8..0000000
--- a/sql-ledger/SL/HR.pm
+++ /dev/null
@@ -1,558 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# backend code for human resources and payroll
-#
-#======================================================================
-
-package HR;
-
-
-sub get_employee {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
- my $sth;
- my $ref;
- my $notid = "";
-
- if ($form->{id}) {
- $query = qq|SELECT e.*
- FROM employee e
- WHERE e.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
-
- # check if employee can be deleted, orphaned
- $form->{status} = "orphaned" unless $ref->{login};
-
-$form->{status} = 'orphaned'; # leave orphaned for now until payroll is done
-
- $ref->{employeelogin} = $ref->{login};
- delete $ref->{login};
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # get manager
- $form->{managerid} *= 1;
- $query = qq|SELECT name
- FROM employee
- WHERE id = $form->{managerid}|;
- ($form->{manager}) = $dbh->selectrow_array($query);
-
-
-######### disabled for now
-if ($form->{deductions}) {
- # get allowances
- $query = qq|SELECT d.id, d.description, da.before, da.after, da.rate
- FROM employeededuction da
- JOIN deduction d ON (da.deduction_id = d.id)
- WHERE da.employee_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{rate} *= 100;
- push @{ $form->{all_employeededuction} }, $ref;
- }
- $sth->finish;
-}
-
- $notid = qq|AND id != $form->{id}|;
-
- }
-
-
- # get managers
- $query = qq|SELECT id, name
- FROM employee
- WHERE sales = '1'
- AND role = 'manager'
- $notid
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_manager} }, $ref;
- }
- $sth->finish;
-
-
- # get deductions
-if ($form->{deductions}) {
- $query = qq|SELECT id, description
- FROM deduction
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_deduction} }, $ref;
- }
- $sth->finish;
-}
-
- $dbh->disconnect;
-
-}
-
-
-
-sub save_employee {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
- my $query;
- my $sth;
-
- if (! $form->{id}) {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO employee (name)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM employee
- WHERE name = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
- my ($null, $managerid) = split /--/, $form->{manager};
- $managerid *= 1;
- $form->{sales} *= 1;
-
- $form->{employeenumber} = $form->update_defaults($myconfig, "employeenumber", $dbh) if ! $form->{employeenumber};
-
- $query = qq|UPDATE employee SET
- employeenumber = |.$dbh->quote($form->{employeenumber}).qq|,
- name = |.$dbh->quote($form->{name}).qq|,
- address1 = |.$dbh->quote($form->{address1}).qq|,
- address2 = |.$dbh->quote($form->{address2}).qq|,
- city = |.$dbh->quote($form->{city}).qq|,
- state = |.$dbh->quote($form->{state}).qq|,
- zipcode = |.$dbh->quote($form->{zipcode}).qq|,
- country = |.$dbh->quote($form->{country}).qq|,
- workphone = '$form->{workphone}',
- homephone = '$form->{homephone}',
- startdate = |.$form->dbquote($form->{startdate}, SQL_DATE).qq|,
- enddate = |.$form->dbquote($form->{enddate}, SQL_DATE).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- role = '$form->{role}',
- sales = '$form->{sales}',
- email = |.$dbh->quote($form->{email}).qq|,
- ssn = '$form->{ssn}',
- dob = |.$form->dbquote($form->{dob}, SQL_DATE).qq|,
- iban = '$form->{iban}',
- bic = '$form->{bic}',
- managerid = $managerid
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-# for now
-if ($form->{selectdeduction}) {
- # insert deduction and allowances for payroll
- $query = qq|DELETE FROM employeededuction
- WHERE employee_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO employeededuction (employee_id, deduction_id,
- before, after, rate) VALUES ($form->{id},?,?,?,?)|;
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
- for ($i = 1; $i <= $form->{deduction_rows}; $i++) {
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"}) } qw(before after);
- ($null, $deduction_id) = split /--/, $form->{"deduction_$i"};
- if ($deduction_id) {
- $sth->execute($deduction_id, $form->{"before_$i"}, $form->{"after_$i"}, $form->{"rate_$i"} / 100) || $form->dberror($query);
- }
- }
- $sth->finish;
-}
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub delete_employee {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # delete employee
- my $query = qq|DELETE FROM $form->{db}
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub employees {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $where = "1 = 1";
- $form->{sort} = ($form->{sort}) ? $form->{sort} : "name";
- my @a = qw(name);
- my $sortorder = $form->sort_order(\@a);
-
- my $var;
-
- if ($form->{startdate}) {
- $where .= " AND e.startdate >= '$startdate'";
- }
- if ($form->{enddate}) {
- $where .= " AND e.enddate >= '$enddate'";
- }
- if ($form->{name}) {
- $var = $form->like(lc $form->{name});
- $where .= " AND lower(e.name) LIKE '$var'";
- }
- if ($form->{notes}) {
- $var = $form->like(lc $form->{notes});
- $where .= " AND lower(e.notes) LIKE '$var'";
- }
- if ($form->{status} eq 'sales') {
- $where .= " AND e.sales = '1'";
- }
- if ($form->{status} eq 'orphaned') {
- $where .= qq| AND e.login IS NULL|;
- }
-
- my $query = qq|SELECT e.*, m.name AS manager
- FROM employee e
- LEFT JOIN employee m ON (m.id = e.managerid)
- WHERE $where
- ORDER BY $sortorder|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{address} = "";
- map { $ref->{address} .= "$ref->{$_} "; } qw(address1 address2 city state zipcode country);
- push @{ $form->{all_employee} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub get_deduction {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
- my $query;
- my $sth;
- my $ref;
- my $item;
- my $i;
-
- if ($form->{id}) {
- $query = qq|SELECT d.*,
- c1.accno AS ap_accno,
- c1.description AS ap_description,
- c2.accno AS expense_accno,
- c2.description AS expense_description
- FROM deduction d
- LEFT JOIN chart c1 ON (c1.id = d.ap_accno_id)
- LEFT JOIN chart c2 ON (c2.id = d.expense_accno_id)
- WHERE d.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # check if orphaned
-$form->{status} = 'orphaned'; # for now
-
-
- # get the rates
- $query = qq|SELECT rate, amount, above, below
- FROM deductionrate
- WHERE trans_id = $form->{id}
- ORDER BY rate, amount|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{deductionrate} }, $ref;
- }
- $sth->finish;
-
- # get all for deductionbase
- $query = qq|SELECT d.description, d.id, db.maximum
- FROM deductionbase db
- JOIN deduction d ON (d.id = db.deduction_id)
- WHERE db.trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{deductionbase} }, $ref;
- }
- $sth->finish;
-
- # get all for deductionafter
- $query = qq|SELECT d.description, d.id
- FROM deductionafter da
- JOIN deduction d ON (d.id = da.deduction_id)
- WHERE da.trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{deductionafter} }, $ref;
- }
- $sth->finish;
-
- # build selection list for base and after
- $query = qq|SELECT id, description
- FROM deduction
- WHERE id != $form->{id}
- ORDER BY 2|;
-
- } else {
- # build selection list for base and after
- $query = qq|SELECT id, description
- FROM deduction
- ORDER BY 2|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_deduction} }, $ref;
- }
- $sth->finish;
-
-
- my %category = ( ap => 'L',
- expense => 'E' );
-
- foreach $item (keys %category) {
- $query = qq|SELECT accno, description
- FROM chart
- WHERE charttype = 'A'
- AND category = '$category{$item}'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{"${item}_accounts"} }, $ref;
- }
- $sth->finish;
- }
-
-
- $dbh->disconnect;
-
-}
-
-
-sub deductions {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT d.id, d.description, d.employeepays, d.employerpays,
- c1.accno AS ap_accno, c2.accno AS expense_accno,
- dr.rate, dr.amount, dr.above, dr.below
- FROM deduction d
- JOIN deductionrate dr ON (dr.trans_id = d.id)
- LEFT JOIN chart c1 ON (d.ap_accno_id = c1.id)
- LEFT JOIN chart c2 ON (d.expense_accno_id = c2.id)
- ORDER BY 2, 7, 8|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_deduction} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub save_deduction {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- ($form->{ap_accno}) = split /--/, $form->{ap_accno};
- ($form->{expense_accno}) = split /--/, $form->{expense_accno};
-
- my $null;
- my $deduction_id;
- my $query;
- my $sth;
-
- if (! $form->{id}) {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO deduction (description)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM deduction
- WHERE description = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
-
- map { $form->{$_} = $form->parse_amount($myconfig, $form->{$_}) } qw(employeepays employerpays);
-
- $query = qq|UPDATE deduction SET
- description = |.$dbh->quote($form->{description}).qq|,
- ap_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{ap_accno}'),
- expense_accno_id =
- (SELECT id FROM chart
- WHERE accno = '$form->{expense_accno}'),
- employerpays = '$form->{employerpays}',
- employeepays = '$form->{employeepays}',
- fromage = |.$form->dbquote($form->{fromage}, SQL_INT).qq|,
- toage = |.$form->dbquote($form->{toage}, SQL_INT).qq|
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- $query = qq|DELETE FROM deductionrate
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO deductionrate
- (trans_id, rate, amount, above, below) VALUES (?,?,?,?,?)|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- for ($i = 1; $i <= $form->{rate_rows}; $i++) {
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"}) } qw(rate amount above below);
- $form->{"rate_$i"} /= 100;
-
- if ($form->{"rate_$i"} || $form->{"amount_$i"}) {
- $sth->execute($form->{id}, $form->{"rate_$i"}, $form->{"amount_$i"}, $form->{"above_$i"}, $form->{"below_$i"}) || $form->dberror($query);
- }
- }
- $sth->finish;
-
-
- $query = qq|DELETE FROM deductionbase
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO deductionbase
- (trans_id, deduction_id, maximum) VALUES (?,?,?)|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- for ($i = 1; $i <= $form->{base_rows}; $i++) {
- ($null, $deduction_id) = split /--/, $form->{"base_$i"};
- $form->{"maximum_$i"} = $form->parse_amount($myconfig, $form->{"maximum_$i"});
- if ($deduction_id) {
- $sth->execute($form->{id}, $deduction_id, $form->{"maximum_$i"}) || $form->dberror($query);
- }
- }
- $sth->finish;
-
-
- $query = qq|DELETE FROM deductionafter
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO deductionafter
- (trans_id, deduction_id) VALUES (?,?)|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- for ($i = 1; $i <= $form->{after_rows}; $i++) {
- ($null, $deduction_id) = split /--/, $form->{"after_$i"};
- if ($deduction_id) {
- $sth->execute($form->{id}, $deduction_id) || $form->dberror($query);
- }
- }
- $sth->finish;
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub delete_deduction {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # delete deduction
- my $query = qq|DELETE FROM $form->{db}
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- foreach $item (qw(rate base after)) {
- $query = qq|DELETE FROM deduction$item
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-1;
-
diff --git a/sql-ledger/SL/IC.pm b/sql-ledger/SL/IC.pm
deleted file mode 100644
index cf70b06..0000000
--- a/sql-ledger/SL/IC.pm
+++ /dev/null
@@ -1,1513 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory Control backend
-#
-#======================================================================
-
-package IC;
-
-
-sub get_part {
- my ($self, $myconfig, $form) = @_;
-
- # connect to db
- my $dbh = $form->dbconnect($myconfig);
- my $i;
-
- my $query = qq|SELECT p.*,
- c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- pg.partsgroup
- FROM parts p
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE p.id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- # copy to $form variables
- map { $form->{$_} = $ref->{$_} } ( keys %{ $ref } );
-
- $sth->finish;
-
- my %oid = ('Pg' => 'a.oid',
- 'PgPP' => 'a.oid',
- 'Oracle' => 'a.rowid',
- 'DB2' => '1=1'
- );
-
- # part, service item or labor
- $form->{item} = ($form->{inventory_accno}) ? 'part' : 'service';
- $form->{item} = 'labor' if ! $form->{income_accno};
-
- if ($form->{assembly}) {
- $form->{item} = 'assembly';
-
- # retrieve assembly items
- $query = qq|SELECT p.id, p.partnumber, p.description,
- p.sellprice, p.weight, a.qty, a.bom, a.adj, p.unit,
- p.lastcost, p.listprice,
- pg.partsgroup, p.assembly, p.partsgroup_id
- FROM parts p
- JOIN assembly a ON (a.parts_id = p.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE a.id = $form->{id}
- ORDER BY $oid{$myconfig->{dbdriver}}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{assembly_rows} = 0;
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{assembly_rows}++;
- foreach my $key ( keys %{ $ref } ) {
- $form->{"${key}_$form->{assembly_rows}"} = $ref->{$key};
- }
- }
- $sth->finish;
-
- }
-
- # setup accno hash for <option checked> {amount} is used in create_links
- $form->{amount}{IC} = $form->{inventory_accno};
- $form->{amount}{IC_income} = $form->{income_accno};
- $form->{amount}{IC_sale} = $form->{income_accno};
- $form->{amount}{IC_expense} = $form->{expense_accno};
- $form->{amount}{IC_cogs} = $form->{expense_accno};
-
-
- if ($form->{item} =~ /(part|assembly)/) {
- # get makes
- if ($form->{makemodel}) {
- $query = qq|SELECT make, model
- FROM makemodel
- WHERE parts_id = $form->{id}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{makemodels} }, $ref;
- }
- $sth->finish;
- }
- }
-
- # now get accno for taxes
- $query = qq|SELECT c.accno
- FROM chart c, partstax pt
- WHERE pt.chart_id = c.id
- AND pt.parts_id = $form->{id}|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (($key) = $sth->fetchrow_array) {
- $form->{amount}{$key} = $key;
- }
-
- $sth->finish;
-
- # is it an orphan
- $query = qq|SELECT parts_id
- FROM invoice
- WHERE parts_id = $form->{id}
- UNION
- SELECT parts_id
- FROM orderitems
- WHERE parts_id = $form->{id}
- UNION
- SELECT parts_id
- FROM assembly
- WHERE parts_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{orphaned}) = $sth->fetchrow_array;
- $form->{orphaned} = !$form->{orphaned};
- $sth->finish;
-
-
- if ($form->{item} =~ /(part|service)/) {
- # get vendors
- $query = qq|SELECT v.id, v.name, pv.partnumber,
- pv.lastcost, pv.leadtime, pv.curr AS vendorcurr
- FROM partsvendor pv
- JOIN vendor v ON (v.id = pv.vendor_id)
- WHERE pv.parts_id = $form->{id}
- ORDER BY 2|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{vendormatrix} }, $ref;
- }
- $sth->finish;
- }
-
- # get matrix
- if ($form->{item} ne 'labor') {
- $query = qq|SELECT pc.pricebreak, pc.sellprice AS customerprice,
- pc.curr AS customercurr,
- pc.validfrom, pc.validto,
- c.name, c.id AS cid, g.pricegroup, g.id AS gid
- FROM partscustomer pc
- LEFT JOIN customer c ON (c.id = pc.customer_id)
- LEFT JOIN pricegroup g ON (g.id = pc.pricegroup_id)
- WHERE pc.parts_id = $form->{id}
- ORDER BY c.name, g.pricegroup, pc.pricebreak|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{customermatrix} }, $ref;
- }
- $sth->finish;
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub save {
- my ($self, $myconfig, $form) = @_;
-
- ($form->{inventory_accno}) = split(/--/, $form->{IC});
- ($form->{expense_accno}) = split(/--/, $form->{IC_expense});
- ($form->{income_accno}) = split(/--/, $form->{IC_income});
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # save the part
- # make up a unique handle and store in partnumber field
- # then retrieve the record based on the unique handle to get the id
- # replace the partnumber field with the actual variable
- # add records for makemodel
-
- # if there is a $form->{id} then replace the old entry
- # delete all makemodel entries and add the new ones
-
- # undo amount formatting
- map { $form->{$_} = $form->parse_amount($myconfig, $form->{$_}) } qw(rop weight listprice sellprice lastcost stock);
-
- $form->{lastcost} = $form->{sellprice} if $form->{item} eq 'labor';
-
- $form->{makemodel} = (($form->{make_1}) || ($form->{model_1})) ? 1 : 0;
-
- $form->{assembly} = ($form->{item} eq 'assembly') ? 1 : 0;
- map { $form->{$_} *= 1 } qw(alternate obsolete onhand);
-
- my $query;
- my $sth;
- my $i;
- my $null;
- my $vendor_id;
- my $customer_id;
-
- if ($form->{id}) {
-
- # get old price
- $query = qq|SELECT listprice, sellprice, lastcost, weight
- FROM parts
- WHERE id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my ($listprice, $sellprice, $lastcost, $weight) = $sth->fetchrow_array;
- $sth->finish;
-
- # if item is part of an assembly adjust all assemblies
- $query = qq|SELECT id, qty, adj
- FROM assembly
- WHERE parts_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($id, $qty, $adj) = $sth->fetchrow_array) {
- &update_assembly($dbh, $form, $id, $qty, $adj, $listprice * 1, $sellprice * 1, $lastcost * 1, $weight * 1);
- }
- $sth->finish;
-
- if ($form->{item} =~ /(part|service)/) {
- # delete partsvendor records
- $query = qq|DELETE FROM partsvendor
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- if ($form->{item} !~ /(service|labor)/) {
- # delete makemodel records
- $query = qq|DELETE FROM makemodel
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- if ($form->{item} eq 'assembly') {
- if ($form->{onhand} != 0) {
- &adjust_inventory($dbh, $form, $form->{id}, $form->{onhand} * -1);
- }
-
- if ($form->{orphaned}) {
- # delete assembly records
- $query = qq|DELETE FROM assembly
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- } else {
- # update BOM, A only
- $query = qq|UPDATE assembly
- SET bom = ?, adj = ?
- WHERE id = ?
- AND parts_id = ?|;
- $sth = $dbh->prepare($query);
-
- for $i (1 .. $form->{assembly_rows} - 1) {
- $sth->execute(($form->{"bom_$i"}) ? '1' : '0', ($form->{"adj_$i"}) ? '1' : '0', $form->{id}, $form->{"id_$i"});
- $sth->finish;
- }
- }
-
- $form->{onhand} += $form->{stock};
-
- }
-
- # delete tax records
- $query = qq|DELETE FROM partstax
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete matrix
- $query = qq|DELETE FROM partscustomer
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO parts (partnumber)
- VALUES ('$uid')|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM parts
- WHERE partnumber = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
-
- $form->{orphaned} = 1;
- $form->{onhand} = ($form->{stock} * 1) if $form->{item} eq 'assembly';
-
- }
-
- my $partsgroup_id;
- ($null, $partsgroup_id) = split /--/, $form->{partsgroup};
- $partsgroup_id *= 1;
-
- $form->{partnumber} = $form->update_defaults($myconfig, "partnumber", $dbh) if ! $form->{partnumber};
-
- $query = qq|UPDATE parts SET
- partnumber = |.$dbh->quote($form->{partnumber}).qq|,
- description = |.$dbh->quote($form->{description}).qq|,
- makemodel = '$form->{makemodel}',
- alternate = '$form->{alternate}',
- assembly = '$form->{assembly}',
- listprice = $form->{listprice},
- sellprice = $form->{sellprice},
- lastcost = $form->{lastcost},
- weight = $form->{weight},
- priceupdate = |.$form->dbquote($form->{priceupdate}, SQL_DATE).qq|,
- unit = |.$dbh->quote($form->{unit}).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- rop = $form->{rop},
- bin = |.$dbh->quote($form->{bin}).qq|,
- inventory_accno_id = (SELECT id FROM chart
- WHERE accno = '$form->{inventory_accno}'),
- income_accno_id = (SELECT id FROM chart
- WHERE accno = '$form->{income_accno}'),
- expense_accno_id = (SELECT id FROM chart
- WHERE accno = '$form->{expense_accno}'),
- obsolete = '$form->{obsolete}',
- image = '$form->{image}',
- drawing = '$form->{drawing}',
- microfiche = '$form->{microfiche}',
- partsgroup_id = $partsgroup_id
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # insert makemodel records
- if ($form->{item} =~ /(part|assembly)/) {
- for $i (1 .. $form->{makemodel_rows}) {
- if (($form->{"make_$i"}) || ($form->{"model_$i"})) {
- $query = qq|INSERT INTO makemodel (parts_id, make, model)
- VALUES ($form->{id},|
- .$dbh->quote($form->{"make_$i"}).qq|, |
- .$dbh->quote($form->{"model_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
-
- # insert taxes
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"IC_tax_$item"}) {
- $query = qq|INSERT INTO partstax (parts_id, chart_id)
- VALUES ($form->{id},
- (SELECT id
- FROM chart
- WHERE accno = '$item'))|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # add assembly records
- if ($form->{item} eq 'assembly') {
-
- if ($form->{orphaned}) {
- for $i (1 .. $form->{assembly_rows}) {
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
- map { $form->{"${_}_$i"} *= 1 } qw(bom adj);
- $query = qq|INSERT INTO assembly (id, parts_id, qty, bom, adj)
- VALUES ($form->{id}, $form->{"id_$i"},
- $form->{"qty_$i"}, '$form->{"bom_$i"}',
- '$form->{"adj_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
- # adjust onhand for the parts
- if ($form->{onhand} != 0) {
- &adjust_inventory($dbh, $form, $form->{id}, $form->{onhand});
- }
-
- @a = localtime; $a[5] += 1900; $a[4]++;
- my $shippingdate = "$a[5]-$a[4]-$a[3]";
-
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
-
- # add inventory record
- if ($form->{stock} != 0) {
- $query = qq|INSERT INTO inventory (warehouse_id, parts_id, qty,
- shippingdate, employee_id) VALUES (
- 0, $form->{id}, $form->{stock}, '$shippingdate',
- $form->{employee_id})|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- }
-
-
- # add vendors
- if ($form->{item} ne 'assembly') {
- for $i (1 .. $form->{vendor_rows}) {
- if ($form->{"vendor_$i"} && $form->{"lastcost_$i"}) {
-
- ($null, $vendor_id) = split /--/, $form->{"vendor_$i"};
-
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"})} qw(lastcost leadtime);
-
- $query = qq|INSERT INTO partsvendor (vendor_id, parts_id, partnumber,
- lastcost, leadtime, curr)
- VALUES ($vendor_id, $form->{id},|
- .$dbh->quote($form->{"partnumber_$i"}).qq|,
- $form->{"lastcost_$i"},
- $form->{"leadtime_$i"}, '$form->{"vendorcurr_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
-
- # add pricematrix
- for $i (1 .. $form->{customer_rows}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"})} qw(pricebreak customerprice);
-
- if ($form->{"customerprice_$i"}) {
-
- ($null, $customer_id) = split /--/, $form->{"customer_$i"};
- $customer_id *= 1;
-
- ($null, $pricegroup_id) = split /--/, $form->{"pricegroup_$i"};
- $pricegroup_id *= 1;
-
- $query = qq|INSERT INTO partscustomer (parts_id, customer_id,
- pricegroup_id, pricebreak, sellprice, curr,
- validfrom, validto)
- VALUES ($form->{id}, $customer_id,
- $pricegroup_id, $form->{"pricebreak_$i"},
- $form->{"customerprice_$i"}, '$form->{"customercurr_$i"}',|
- .$form->dbquote($form->{"validfrom_$i"}, SQL_DATE).qq|, |
- .$form->dbquote($form->{"validto_$i"}, SQL_DATE).qq|)|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # commit
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub update_assembly {
- my ($dbh, $form, $id, $qty, $adj, $listprice, $sellprice, $lastcost, $weight) = @_;
-
- my $formlistprice = $form->{listprice};
- my $formsellprice = $form->{sellprice};
-
- if (!$adj) {
- $formlistprice = $listprice;
- $formsellprice = $sellprice;
- }
-
- my $query = qq|SELECT id, qty, adj
- FROM assembly
- WHERE parts_id = $id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{$id} = 1;
-
- while (my ($pid, $aqty, $aadj) = $sth->fetchrow_array) {
- &update_assembly($dbh, $form, $pid, $aqty * $qty, $aadj, $listprice, $sellprice, $lastcost, $weight) if !$form->{$pid};
- }
- $sth->finish;
-
- $query = qq|UPDATE parts
- SET listprice = listprice +
- $qty * ($formlistprice - $listprice),
- sellprice = sellprice +
- $qty * ($formsellprice - $sellprice),
- lastcost = lastcost +
- $qty * ($form->{lastcost} - $lastcost),
- weight = weight +
- $qty * ($form->{weight} - $weight)
- WHERE id = $id|;
- $dbh->do($query) || $form->dberror($query);
-
- delete $form->{$id};
-
-}
-
-
-
-sub retrieve_assemblies {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $where = '1 = 1';
-
- if ($form->{partnumber}) {
- my $partnumber = $form->like(lc $form->{partnumber});
- $where .= " AND lower(p.partnumber) LIKE '$partnumber'";
- }
-
- if ($form->{description}) {
- my $description = $form->like(lc $form->{description});
- $where .= " AND lower(p.description) LIKE '$description'";
- }
- $where .= " AND NOT p.obsolete = '1'";
-
- my %ordinal = ( 'partnumber' => 2,
- 'description' => 3,
- 'bin' => 4
- );
-
- my @a = qw(partnumber description bin);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
-
- # retrieve assembly items
- my $query = qq|SELECT p.id, p.partnumber, p.description,
- p.bin, p.onhand, p.rop,
- (SELECT sum(p2.inventory_accno_id)
- FROM parts p2, assembly a
- WHERE p2.id = a.parts_id
- AND a.id = p.id) AS inventory
- FROM parts p
- WHERE $where
- AND assembly = '1'
- ORDER BY $sortorder|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $inh;
- if ($form->{checkinventory}) {
- $query = qq|SELECT p.id, p.onhand, a.qty FROM parts p
- JOIN assembly a ON (a.parts_id = p.id)
- WHERE a.id = ?|;
- $inh = $dbh->prepare($query) || $form->dberror($query);
- }
-
- my $onhand = ();
- my $ref;
- my $aref;
- my $stock;
- my $howmany;
- my $ok;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($ref->{inventory}) {
- $ok = 1;
- if ($form->{checkinventory}) {
- $inh->execute($ref->{id}) || $form->dberror($query);;
- $ok = 0;
- while ($aref = $inh->fetchrow_hashref(NAME_lc)) {
- $onhand{$aref->{id}} = (exists $onhand{$aref->{id}}) ? $onhand{$aref->{id}} : $aref->{onhand};
-
- if ($aref->{onhand} >= $aref->{qty}) {
-
- $howmany = ($aref->{qty}) ? $aref->{onhand}/$aref->{qty} : 1;
- if ($stock) {
- $stock = ($stock > $howmany) ? $howmany : $stock;
- } else {
- $stock = $howmany;
- }
- $ok = 1;
-
- $onhand{$aref->{id}} -= ($aref->{qty} * $stock);
-
- } else {
- $ok = 0;
- last;
- }
- }
- $inh->finish;
- $ref->{stock} = (($ref->{rop} - $ref->{qty}) > $stock) ? int $stock : $ref->{rop};
- }
- push @{ $form->{assembly_items} }, $ref if $ok;
- }
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub restock_assemblies {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- @a = localtime; $a[5] += 1900; $a[4]++;
- my $shippingdate = "$a[5]-$a[4]-$a[3]";
-
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
-
- for my $i (1 .. $form->{rowcount}) {
-
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
- &adjust_inventory($dbh, $form, $form->{"id_$i"}, $form->{"qty_$i"});
- }
-
- # add inventory record
- if ($form->{"qty_$i"} != 0) {
- $query = qq|INSERT INTO inventory (warehouse_id, parts_id, qty,
- shippingdate, employee_id) VALUES (
- 0, $form->{"id_$i"}, $form->{"qty_$i"}, '$shippingdate',
- $form->{employee_id})|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub adjust_inventory {
- my ($dbh, $form, $id, $qty) = @_;
-
- my $query = qq|SELECT p.id, p.inventory_accno_id, p.assembly, a.qty
- FROM parts p, assembly a
- WHERE a.parts_id = p.id
- AND a.id = $id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- my $allocate = $qty * $ref->{qty};
-
- # is it a service item then loop
- if (($ref->{inventory_accno_id} *= 1) == 0) {
- next unless $ref->{assembly}; # assembly
- }
-
- # adjust parts onhand
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $ref->{id}|,
- $allocate * -1);
- }
-
- $sth->finish;
-
- # update assembly
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $id|,
- $qty);
-
-}
-
-
-sub delete {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM parts
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM partstax
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- if ($form->{item} ne 'assembly') {
- $query = qq|DELETE FROM partsvendor
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # check if it is a part, assembly or service
- if ($form->{item} ne 'service') {
- $query = qq|DELETE FROM makemodel
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- if ($form->{item} eq 'assembly') {
- # delete inventory
- $query = qq|DELETE FROM inventory
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM assembly
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- if ($form->{item} eq 'alternate') {
- $query = qq|DELETE FROM alternate
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- $query = qq|DELETE FROM partscustomer
- WHERE parts_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM translation
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # commit
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub assembly_item {
- my ($self, $myconfig, $form) = @_;
-
- my $i = $form->{assembly_rows};
- my $var;
- my $null;
- my $where = "p.obsolete = '0'";
-
- if ($form->{"partnumber_$i"}) {
- $var = $form->like(lc $form->{"partnumber_$i"});
- $where .= " AND lower(p.partnumber) LIKE '$var'";
- }
- if ($form->{"description_$i"}) {
- $var = $form->like(lc $form->{"description_$i"});
- $where .= " AND lower(p.description) LIKE '$var'";
- }
- if ($form->{"partsgroup_$i"}) {
- ($null, $var) = split /--/, $form->{"partsgroup_$i"};
- $where .= qq| AND p.partsgroup_id = $var|;
- }
-
- if ($form->{id}) {
- $where .= " AND p.id != $form->{id}";
- }
-
- if ($partnumber) {
- $where .= " ORDER BY p.partnumber";
- } else {
- $where .= " ORDER BY p.description";
- }
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
- p.weight, p.onhand, p.unit, p.lastcost,
- pg.partsgroup, p.partsgroup_id
- FROM parts p
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE $where|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{item_list} }, $ref;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub all_parts {
- my ($self, $myconfig, $form) = @_;
-
- my $where = '1 = 1';
- my $null;
- my $var;
- my $ref;
- my $item;
-
- foreach $item (qw(partnumber drawing microfiche)) {
- if ($form->{$item}) {
- $var = $form->like(lc $form->{$item});
- $where .= " AND lower(p.$item) LIKE '$var'";
- }
- }
- # special case for description
- if ($form->{description}) {
- unless ($form->{bought} || $form->{sold} || $form->{onorder} || $form->{ordered} || $form->{rfq} || $form->{quoted}) {
- $var = $form->like(lc $form->{description});
- $where .= " AND lower(p.description) LIKE '$var'";
- }
- }
-
- # assembly components
- my $assemblyflds;
- if ($form->{searchitems} eq 'component') {
- $assemblyflds = qq|, p1.partnumber AS assemblypartnumber, a.id AS assembly_id|;
- }
-
- # special case for serialnumber
- if ($form->{l_serialnumber}) {
- if ($form->{serialnumber}) {
- $var = $form->like(lc $form->{serialnumber});
- $where .= " AND lower(i.serialnumber) LIKE '$var'";
- }
- }
-
- if ($form->{warehouse} || $form->{l_warehouse}) {
- $form->{l_warehouse} = 1;
- }
-
- if ($form->{searchitems} eq 'part') {
- $where .= " AND p.inventory_accno_id > 0 AND p.assembly = '0' AND p.income_accno_id > 0";
- }
- if ($form->{searchitems} eq 'assembly') {
- $form->{bought} = "";
- $where .= " AND p.assembly = '1'";
- }
- if ($form->{searchitems} eq 'service') {
- $where .= " AND p.inventory_accno_id IS NULL AND p.assembly = '0'";
- }
- if ($form->{searchitems} eq 'labor') {
- $where .= " AND p.inventory_accno_id > 0 AND p.income_accno_id IS NULL";
- }
-
- # items which were never bought, sold or on an order
- if ($form->{itemstatus} eq 'orphaned') {
- $where .= " AND p.onhand = 0
- AND p.id NOT IN (SELECT p.id FROM parts p, invoice i
- WHERE p.id = i.parts_id)
- AND p.id NOT IN (SELECT p.id FROM parts p, assembly a
- WHERE p.id = a.parts_id)
- AND p.id NOT IN (SELECT p.id FROM parts p, orderitems o
- WHERE p.id = o.parts_id)";
- }
-
- if ($form->{itemstatus} eq 'active') {
- $where .= " AND p.obsolete = '0'";
- }
- if ($form->{itemstatus} eq 'obsolete') {
- $where .= " AND p.obsolete = '1'";
- }
- if ($form->{itemstatus} eq 'onhand') {
- $where .= " AND p.onhand > 0";
- }
- if ($form->{itemstatus} eq 'short') {
- $where .= " AND p.onhand < p.rop";
- }
-
- my $makemodelflds = qq|, '', ''|;;
- my $makemodeljoin;
-
- if ($form->{make} || $form->{l_make} || $form->{model} || $form->{l_model}) {
- $makemodelflds = qq|, m.make, m.model|;
- $makemodeljoin = qq|LEFT JOIN makemodel m ON (m.parts_id = p.id)|;
-
- if ($form->{make}) {
- $var = $form->like(lc $form->{make});
- $where .= " AND lower(m.make) LIKE '$var'";
- }
- if ($form->{model}) {
- $var = $form->like(lc $form->{model});
- $where .= " AND lower(m.model) LIKE '$var'";
- }
- }
- if ($form->{partsgroup}) {
- ($null, $var) = split /--/, $form->{partsgroup};
- $where .= qq| AND p.partsgroup_id = $var|;
- }
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my %ordinal = ( 'partnumber' => 2,
- 'description' => 3,
- 'bin' => 6,
- 'priceupdate' => 12,
- 'drawing' => 14,
- 'microfiche' => 15,
- 'partsgroup' => 17,
- 'make' => 19,
- 'model' => 20,
- 'assemblypartnumber' => 21
- );
-
- my @a = qw(partnumber description);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT curr FROM defaults|;
- my ($curr) = $dbh->selectrow_array($query);
- $curr =~ s/:.*//;
-
- my $flds = qq|p.id, p.partnumber, p.description, p.onhand, p.unit,
- p.bin, p.sellprice, p.listprice, p.lastcost, p.rop,
- p.weight, p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly, pg.partsgroup, '$curr' AS curr
- $makemodelflds $assemblyflds
- |;
-
- $query = qq|SELECT $flds
- FROM parts p
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- $makemodeljoin
- WHERE $where
- ORDER BY $sortorder|;
-
- # redo query for components report
- if ($form->{searchitems} eq 'component') {
-
- $query = qq|SELECT $flds
- FROM assembly a
- JOIN parts p ON (a.parts_id = p.id)
- JOIN parts p1 ON (a.id = p1.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- $makemodeljoin
- WHERE $where
- ORDER BY $sortorder|;
-
- }
-
-
- # rebuild query for bought and sold items
- if ($form->{bought} || $form->{sold} || $form->{onorder} || $form->{ordered} || $form->{rfq} || $form->{quoted}) {
-
- $form->sort_order();
- my @a = qw(partnumber description employee);
-
- push @a, qw(invnumber serialnumber) if ($form->{bought} || $form->{sold});
- push @a, "ordnumber" if ($form->{onorder} || $form->{ordered});
- push @a, "quonumber" if ($form->{rfq} || $form->{quoted});
-
- %ordinal = ( 'partnumber' => 2,
- 'description' => 3,
- 'serialnumber' => 4,
- 'bin' => 7,
- 'priceupdate' => 13,
- 'partsgroup' => 18,
- 'invnumber' => 19,
- 'ordnumber' => 20,
- 'quonumber' => 21,
- 'name' => 23,
- 'employee' => 24,
- 'make' => 27,
- 'model' => 28
- );
-
- $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $union = "";
- $query = "";
-
- if ($form->{bought} || $form->{sold}) {
-
- my $invwhere = "$where";
- my $transdate = ($form->{method} eq 'accrual') ? "transdate" : "datepaid";
-
- $invwhere .= " AND i.assemblyitem = '0'";
- $invwhere .= " AND a.$transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $invwhere .= " AND a.$transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $invwhere .= " AND lower(i.description) LIKE '$var'";
- }
-
- if ($form->{open} || $form->{closed}) {
- if ($form->{open} && $form->{closed}) {
- if ($form->{method} eq 'cash') {
- $invwhere .= " AND a.amount = a.paid";
- }
- } else {
- if ($form->{open}) {
- if ($form->{method} eq 'cash') {
- $invwhere .= " AND a.id = 0";
- } else {
- $invwhere .= " AND NOT a.amount = a.paid";
- }
- } else {
- $invwhere .= " AND a.amount = a.paid";
- }
- }
- } else {
- $invwhere .= " AND a.id = 0";
- }
-
- my $flds = qq|p.id, p.partnumber, i.description, i.serialnumber,
- i.qty AS onhand, i.unit, p.bin, i.sellprice,
- p.listprice, p.lastcost, p.rop, p.weight,
- p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly,
- pg.partsgroup, a.invnumber, a.ordnumber, a.quonumber,
- i.trans_id, ct.name, e.name AS employee, a.curr, a.till
- $makemodelfld|;
-
-
- if ($form->{bought}) {
- $query = qq|
- SELECT $flds, 'ir' AS module, '' AS type,
- (SELECT sell FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.$transdate) AS exchangerate,
- i.discount
- FROM invoice i
- JOIN parts p ON (p.id = i.parts_id)
- JOIN ap a ON (a.id = i.trans_id)
- JOIN vendor ct ON (a.vendor_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $invwhere|;
- $union = "
- UNION";
- }
-
- if ($form->{sold}) {
- $query .= qq|$union
- SELECT $flds, 'is' AS module, '' AS type,
- (SELECT buy FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.$transdate) AS exchangerate,
- i.discount
- FROM invoice i
- JOIN parts p ON (p.id = i.parts_id)
- JOIN ar a ON (a.id = i.trans_id)
- JOIN customer ct ON (a.customer_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $invwhere|;
- $union = "
- UNION";
- }
- }
-
- if ($form->{onorder} || $form->{ordered}) {
- my $ordwhere = "$where
- AND a.quotation = '0'";
- $ordwhere .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $ordwhere .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $ordwhere .= " AND lower(i.description) LIKE '$var'";
- }
-
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- $ordwhere .= " AND a.closed = '0'" if $form->{open};
- $ordwhere .= " AND a.closed = '1'" if $form->{closed};
- }
- } else {
- $ordwhere .= " AND a.id = 0";
- }
-
- $flds = qq|p.id, p.partnumber, i.description, '' AS serialnumber,
- i.qty AS onhand, i.unit, p.bin, i.sellprice,
- p.listprice, p.lastcost, p.rop, p.weight,
- p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly,
- pg.partsgroup, '' AS invnumber, a.ordnumber, a.quonumber,
- i.trans_id, ct.name,e.name AS employee, a.curr, '0' AS till
- $makemodelfld|;
-
- if ($form->{ordered}) {
- $query .= qq|$union
- SELECT $flds, 'oe' AS module, 'sales_order' AS type,
- (SELECT buy FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.transdate) AS exchangerate,
- i.discount
- FROM orderitems i
- JOIN parts p ON (i.parts_id = p.id)
- JOIN oe a ON (i.trans_id = a.id)
- JOIN customer ct ON (a.customer_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $ordwhere
- AND a.customer_id > 0|;
- $union = "
- UNION";
- }
-
- if ($form->{onorder}) {
- $flds = qq|p.id, p.partnumber, i.description, '' AS serialnumber,
- i.qty AS onhand, i.unit, p.bin, i.sellprice,
- p.listprice, p.lastcost, p.rop, p.weight,
- p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly,
- pg.partsgroup, '' AS invnumber, a.ordnumber, a.quonumber,
- i.trans_id, ct.name,e.name AS employee, a.curr, '0' AS till
- $makemodelfld|;
-
- $query .= qq|$union
- SELECT $flds, 'oe' AS module, 'purchase_order' AS type,
- (SELECT sell FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.transdate) AS exchangerate,
- i.discount
- FROM orderitems i
- JOIN parts p ON (i.parts_id = p.id)
- JOIN oe a ON (i.trans_id = a.id)
- JOIN vendor ct ON (a.vendor_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $ordwhere
- AND a.vendor_id > 0|;
- }
-
- }
-
- if ($form->{rfq} || $form->{quoted}) {
- my $quowhere = "$where
- AND a.quotation = '1'";
- $quowhere .= " AND a.transdate >= '$form->{transdatefrom}'" if $form->{transdatefrom};
- $quowhere .= " AND a.transdate <= '$form->{transdateto}'" if $form->{transdateto};
-
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $quowhere .= " AND lower(i.description) LIKE '$var'";
- }
-
- if ($form->{open} || $form->{closed}) {
- unless ($form->{open} && $form->{closed}) {
- $ordwhere .= " AND a.closed = '0'" if $form->{open};
- $ordwhere .= " AND a.closed = '1'" if $form->{closed};
- }
- } else {
- $ordwhere .= " AND a.id = 0";
- }
-
-
- $flds = qq|p.id, p.partnumber, i.description, '' AS serialnumber,
- i.qty AS onhand, i.unit, p.bin, i.sellprice,
- p.listprice, p.lastcost, p.rop, p.weight,
- p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly,
- pg.partsgroup, '' AS invnumber, a.ordnumber, a.quonumber,
- i.trans_id, ct.name, e.name AS employee, a.curr, '0' AS till
- $makemodelfld|;
-
- if ($form->{quoted}) {
- $query .= qq|$union
- SELECT $flds, 'oe' AS module, 'sales_quotation' AS type,
- (SELECT buy FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.transdate) AS exchangerate,
- i.discount
- FROM orderitems i
- JOIN parts p ON (i.parts_id = p.id)
- JOIN oe a ON (i.trans_id = a.id)
- JOIN customer ct ON (a.customer_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $quowhere
- AND a.customer_id > 0|;
- $union = "
- UNION";
- }
-
- if ($form->{rfq}) {
- $flds = qq|p.id, p.partnumber, i.description, '' AS serialnumber,
- i.qty AS onhand, i.unit, p.bin, i.sellprice,
- p.listprice, p.lastcost, p.rop, p.weight,
- p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly,
- pg.partsgroup, '' AS invnumber, a.ordnumber, a.quonumber,
- i.trans_id, ct.name, e.name AS employee, a.curr, '0' AS till
- $makemodelfld|;
-
- $query .= qq|$union
- SELECT $flds, 'oe' AS module, 'request_quotation' AS type,
- (SELECT sell FROM exchangerate ex
- WHERE ex.curr = a.curr
- AND ex.transdate = a.transdate) AS exchangerate,
- i.discount
- FROM orderitems i
- JOIN parts p ON (i.parts_id = p.id)
- JOIN oe a ON (i.trans_id = a.id)
- JOIN vendor ct ON (a.vendor_id = ct.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $makemodeljoin
- WHERE $quowhere
- AND a.vendor_id > 0|;
- }
-
- }
-
- $query .= qq|
- ORDER BY $sortorder|;
-
- }
-
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{parts} }, $ref;
- }
- $sth->finish;
-
- my @a = ();
-
- # include individual items for assembly
- if ($form->{searchitems} eq 'assembly' && $form->{bom}) {
-
- if ($form->{sold} || $form->{ordered} || $form->{quoted}) {
- $flds = qq|p.id, p.partnumber, p.description, a.qty AS onhand, p.unit,
- p.bin, p.sellprice, p.listprice, p.lastcost, p.rop,
- p.weight, p.priceupdate, p.image, p.drawing, p.microfiche,
- p.assembly, pg.partsgroup
- $makemodelflds $assemblyflds
- |;
- } else {
- # replace p.onhand with a.qty AS onhand
- $flds =~ s/p.onhand/a.qty AS onhand/;
- }
-
- while ($item = shift @{ $form->{parts} }) {
- push @a, $item;
- $flds =~ s/a\.qty.*AS onhand/a\.qty * $item->{onhand} AS onhand/;
- push @a, &include_assembly($dbh, $form, $item->{id}, $flds, $makemodeljoin);
- push @a, {id => $item->{id}};
- }
-
- # copy assemblies to $form->{parts}
- @{ $form->{parts} } = @a;
-
- }
-
-
- @a = ();
- if ($form->{l_warehouse} || $form->{l_warehouse}) {
-
- if ($form->{warehouse}) {
- ($null, $var) = split /--/, $form->{warehouse};
- $var *= 1;
- $query = qq|SELECT SUM(qty) AS onhand, '$null' AS description
- FROM inventory
- WHERE warehouse_id = $var
- AND parts_id = ?|;
- } else {
-
- $query = qq|SELECT SUM(i.qty) AS onhand, w.description AS warehouse
- FROM inventory i
- JOIN warehouse w ON (w.id = i.warehouse_id)
- WHERE i.parts_id = ?
- GROUP BY w.description|;
- }
-
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- foreach $item (@{ $form->{parts} }) {
-
- if ($item->{onhand} <= 0 && ! $form->{warehouse}) {
- push @a, $item;
- next;
- }
-
- $sth->execute($item->{id}) || $form->dberror($query);
-
- if ($form->{warehouse}) {
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- if ($ref->{onhand} > 0) {
- $item->{onhand} = $ref->{onhand};
- push @a, $item;
- }
-
- } else {
-
- push @a, $item;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($ref->{onhand} > 0) {
- push @a, $ref;
- }
- }
- }
-
- $sth->finish;
- }
-
- @{ $form->{parts} } = @a;
-
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub include_assembly {
- my ($dbh, $form, $id, $flds, $makemodeljoin) = @_;
-
- $form->{stagger}++;
- if ($form->{stagger} > $form->{pncol}) {
- $form->{pncol} = $form->{stagger};
- }
-
- $form->{$id} = 1;
-
- my @a = ();
- my $query = qq|SELECT $flds
- FROM parts p
- JOIN assembly a ON (a.parts_id = p.id)
- LEFT JOIN partsgroup pg ON (pg.id = p.id)
- $makemodeljoin
- WHERE a.id = $id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{assemblyitem} = 1;
- $ref->{stagger} = $form->{stagger};
- push @a, $ref;
- if ($ref->{assembly} && !$form->{$ref->{id}}) {
- push @a, &include_assembly($dbh, $form, $ref->{id}, $flds, $makemodeljoin);
- if ($form->{stagger} > $form->{pncol}) {
- $form->{pncol} = $form->{stagger};
- }
- }
- }
- $sth->finish;
-
- $form->{$id} = 0;
- $form->{stagger}--;
-
- @a;
-
-}
-
-
-sub create_links {
- my ($self, $module, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $ref;
-
- my $query = qq|SELECT accno, description, link
- FROM chart
- WHERE link LIKE '%$module%'
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- foreach my $key (split /:/, $ref->{link}) {
- if ($key =~ /$module/) {
- push @{ $form->{"${module}_links"}{$key} }, { accno => $ref->{accno},
- description => $ref->{description} };
- }
- }
- }
- $sth->finish;
-
- if ($form->{item} ne 'assembly') {
- $query = qq|SELECT count(*) FROM vendor|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- my ($count) = $sth->fetchrow_array;
- $sth->finish;
-
- if ($count < $myconfig->{vclimit}) {
- $query = qq|SELECT id, name
- FROM vendor
- ORDER BY name|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_vendor} }, $ref;
- }
- $sth->finish;
- }
- }
-
-
- # pricegroups, customers
- $query = qq|SELECT count(*) FROM customer|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- my ($count) = $sth->fetchrow_array;
- $sth->finish;
-
- if ($count < $myconfig->{vclimit}) {
- $query = qq|SELECT id, name
- FROM customer
- ORDER BY name|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_customer} }, $ref;
- }
- $sth->finish;
- }
-
- $query = qq|SELECT id, pricegroup
- FROM pricegroup
- ORDER BY pricegroup|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_pricegroup} }, $ref;
- }
- $sth->finish;
-
-
- if ($form->{id}) {
- $query = qq|SELECT weightunit, curr AS currencies
- FROM defaults|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{weightunit}, $form->{currencies}) = $sth->fetchrow_array;
- $sth->finish;
-
- } else {
- $query = qq|SELECT weightunit, current_date, curr AS currencies
- FROM defaults|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{weightunit}, $form->{priceupdate}, $form->{currencies}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub get_warehouses {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT id, description
- FROM warehouse|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_warehouses} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-1;
-
diff --git a/sql-ledger/SL/IR.pm b/sql-ledger/SL/IR.pm
deleted file mode 100644
index 79a619b..0000000
--- a/sql-ledger/SL/IR.pm
+++ /dev/null
@@ -1,1243 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Jim Rawlings <jim@your-dba.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory received module
-#
-#======================================================================
-
-package IR;
-
-
-sub post_invoice {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off autocommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
- my $null;
- my $project_id;
- my $exchangerate = 0;
- my $allocated;
- my $taxrate;
- my $taxamount;
- my $taxdiff;
- my $item;
-
- if ($form->{id}) {
-
- &reverse_invoice($dbh, $form);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO ap (invnumber, employee_id)
- VALUES ('$uid', (SELECT id FROM employee
- WHERE login = '$form->{login}'))|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM ap
- WHERE invnumber = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
-
- }
-
- my ($amount, $linetotal, $lastinventoryaccno, $lastexpenseaccno);
- my ($netamount, $invoicediff, $expensediff) = (0, 0, 0);
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{exchangerate} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, 'sell');
- }
-
- $form->{exchangerate} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{exchangerate});
-
-
- for my $i (1 .. $form->{rowcount}) {
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
-
- # project
- $project_id = 'NULL';
- if ($form->{"projectnumber_$i"}) {
- ($null, $project_id) = split /--/, $form->{"projectnumber_$i"};
- }
-
- # undo discount formatting
- $form->{"discount_$i"} = $form->parse_amount($myconfig, $form->{"discount_$i"}) / 100;
-
- @taxaccounts = split / /, $form->{"taxaccounts_$i"};
- $taxdiff = 0;
- $allocated = 0;
- $taxrate = 0;
-
- # keep entered selling price
- my $fxsellprice = $form->parse_amount($myconfig, $form->{"sellprice_$i"});
-
- my ($dec) = ($fxsellprice =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- # deduct discount
- my $discount = $form->round_amount($fxsellprice * $form->{"discount_$i"}, $decimalplaces);
- $form->{"sellprice_$i"} = $fxsellprice - $discount;
-
- map { $taxrate += $form->{"${_}_rate"} } @taxaccounts;
-
- if ($form->{"inventory_accno_$i"}) {
-
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2);
-
- if ($form->{taxincluded}) {
- $taxamount = $linetotal * ($taxrate / (1 + $taxrate));
- $form->{"sellprice_$i"} = $form->{"sellprice_$i"} * (1 / (1 + $taxrate));
- } else {
- $taxamount = $linetotal * $taxrate;
- }
-
- $netamount += $linetotal;
-
- if (@taxaccounts && $form->round_amount($taxamount, 2) == 0) {
- if ($form->{taxincluded}) {
- foreach $item (@taxaccounts) {
- $taxamount = $form->round_amount($linetotal * $form->{"${item}_rate"} / (1 + abs($form->{"${item}_rate"})), 2);
- $taxdiff += $taxamount;
- $form->{amount}{$form->{id}}{$item} -= $taxamount;
- }
- $form->{amount}{$form->{id}}{$taxaccounts[0]} += $taxdiff;
- } else {
- map { $form->{amount}{$form->{id}}{$_} -= $linetotal * $form->{"${_}_rate"} } @taxaccounts;
- }
- } else {
- map { $form->{amount}{$form->{id}}{$_} -= $taxamount * $form->{"${_}_rate"} / $taxrate } @taxaccounts;
- }
-
-
- # add purchase to inventory, this one is without the tax!
- $amount = $form->{"sellprice_$i"} * $form->{"qty_$i"} * $form->{exchangerate};
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2) * $form->{exchangerate};
- $linetotal = $form->round_amount($linetotal, 2);
-
- # this is the difference for the inventory
- $invoicediff += ($amount - $linetotal);
-
- $form->{amount}{$form->{id}}{$form->{"inventory_accno_$i"}} -= $linetotal;
-
- # adjust and round sellprice
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"} * $form->{exchangerate}, $decimalplaces);
-
-
- # update parts table
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $form->{"id_$i"}|,
- $form->{"qty_$i"}) unless $form->{shipped};
-
-
- # check if we sold the item already and
- # make an entry for the expense and inventory
- $query = qq|SELECT i.id, i.qty, i.allocated, i.trans_id,
- p.inventory_accno_id, p.expense_accno_id, a.transdate
- FROM invoice i, ar a, parts p
- WHERE i.parts_id = p.id
- AND i.parts_id = $form->{"id_$i"}
- AND (i.qty + i.allocated) > 0
- AND i.trans_id = a.id
- ORDER BY transdate|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
-
- my $totalqty = $form->{"qty_$i"};
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- my $qty = $ref->{qty} + $ref->{allocated};
-
- if (($qty - $totalqty) > 0) {
- $qty = $totalqty;
- }
-
-
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $qty, 2);
-
- if ($ref->{allocated} < 0) {
- # we have an entry for it already, adjust amount
- $form->update_balance($dbh,
- "acc_trans",
- "amount",
- qq|trans_id = $ref->{trans_id} AND chart_id = $ref->{inventory_accno_id} AND transdate = '$ref->{transdate}'|,
- $linetotal);
-
- $form->update_balance($dbh,
- "acc_trans",
- "amount",
- qq|trans_id = $ref->{trans_id} AND chart_id = $ref->{expense_accno_id} AND transdate = '$ref->{transdate}'|,
- $linetotal * -1);
-
- } else {
- # add entry for inventory, this one is for the sold item
- if ($linetotal != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($ref->{trans_id}, $ref->{inventory_accno_id},
- $linetotal, '$ref->{transdate}')|;
- $dbh->do($query) || $form->dberror($query);
-
- # add expense
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($ref->{trans_id}, $ref->{expense_accno_id},
- |. ($linetotal * -1) .qq|, '$ref->{transdate}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
-
- # update allocated for sold item
- $form->update_balance($dbh,
- "invoice",
- "allocated",
- qq|id = $ref->{id}|,
- $qty * -1);
-
- $allocated += $qty;
-
- last if (($totalqty -= $qty) <= 0);
- }
-
- $sth->finish;
-
- $lastinventoryaccno = $form->{"inventory_accno_$i"};
-
- } else {
-
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2);
-
- if ($form->{taxincluded}) {
- $taxamount = $linetotal * ($taxrate / (1 + $taxrate));
-
- $form->{"sellprice_$i"} = $form->{"sellprice_$i"} * (1 / (1 + $taxrate));
- } else {
- $taxamount = $linetotal * $taxrate;
- }
-
- $netamount += $linetotal;
-
- if (@taxaccounts && $form->round_amount($taxamount, 2) == 0) {
- if ($form->{taxincluded}) {
- foreach $item (@taxaccounts) {
- $taxamount = $form->round_amount($linetotal * $form->{"${item}_rate"} / (1 + abs($form->{"${item}_rate"})), 2);
- $totaltax += $taxamount;
- $taxdiff += $taxamount;
- $form->{amount}{$form->{id}}{$item} -= $taxamount;
- }
- $form->{amount}{$form->{id}}{$taxaccounts[0]} += $taxdiff;
- } else {
- map { $form->{amount}{$form->{id}}{$_} -= $linetotal * $form->{"${_}_rate"} } @taxaccounts;
- }
- } else {
- map { $form->{amount}{$form->{id}}{$_} -= $taxamount * $form->{"${_}_rate"} / $taxrate } @taxaccounts;
- }
-
-
- $amount = $form->{"sellprice_$i"} * $form->{"qty_$i"} * $form->{exchangerate};
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2) * $form->{exchangerate};
- $linetotal = $form->round_amount($linetotal, 2);
-
- # this is the difference for expense
- $expensediff += ($amount - $linetotal);
-
- # add amount to expense
- $form->{amount}{$form->{id}}{$form->{"expense_accno_$i"}} -= $linetotal;
-
- $lastexpenseaccno = $form->{"expense_accno_$i"};
-
- # adjust and round sellprice
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"} * $form->{exchangerate}, $decimalplaces);
-
- }
-
-
- # save detail record in invoice table
- $query = qq|INSERT INTO invoice (trans_id, parts_id, description, qty,
- sellprice, fxsellprice, discount, allocated,
- unit, deliverydate, project_id, serialnumber)
- VALUES ($form->{id}, $form->{"id_$i"}, |
- .$dbh->quote($form->{"description_$i"}).qq|, |
- .($form->{"qty_$i"} * -1) .qq|,
- $form->{"sellprice_$i"}, $fxsellprice,
- $form->{"discount_$i"}, $allocated, |
- .$dbh->quote($form->{"unit_$i"}).qq|, |
- .$form->dbquote($form->{"deliverydate_$i"}, SQL_DATE).qq|,
- $project_id, |
- .$dbh->quote($form->{"serialnumber_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- }
- }
-
-
- $form->{datepaid} = $form->{transdate};
-
- # all amounts are in natural state, netamount includes the taxes
- # if tax is included, netamount is rounded to 2 decimal places,
-
- # total payments
- for my $i (1 .. $form->{paidaccounts}) {
- $form->{"paid_$i"} = $form->parse_amount($myconfig, $form->{"paid_$i"});
- $form->{paid} += $form->{"paid_$i"};
- $form->{datepaid} = $form->{"datepaid_$i"} if ($form->{"datepaid_$i"});
- }
-
- my ($tax, $paiddiff) = (0, 0);
-
- $netamount = $form->round_amount($netamount, 2);
-
- # figure out rounding errors for amount paid and total amount
- if ($form->{taxincluded}) {
-
- $amount = $form->round_amount($netamount * $form->{exchangerate}, 2);
- $paiddiff = $amount - $netamount * $form->{exchangerate};
- $netamount = $amount;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- $amount = $form->{amount}{$form->{id}}{$item} * $form->{exchangerate};
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($amount, 2);
- $amount = $form->{amount}{$form->{id}}{$item} * -1;
- $tax += $amount;
- $netamount -= $amount;
- }
-
- $invoicediff += $paiddiff;
- $expensediff += $paiddiff;
-
- ######## this only applies to tax included
- if ($lastinventoryaccno) {
- $form->{amount}{$form->{id}}{$lastinventoryaccno} -= $invoicediff;
- }
- if ($lastexpenseaccno) {
- $form->{amount}{$form->{id}}{$lastexpenseaccno} -= $expensediff;
- }
-
- } else {
- $amount = $form->round_amount($netamount * $form->{exchangerate}, 2);
- $paiddiff = $amount - $netamount * $form->{exchangerate};
- $netamount = $amount;
- foreach my $item (split / /, $form->{taxaccounts}) {
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($form->{amount}{$form->{id}}{$item}, 2);
- $amount = $form->round_amount($form->{amount}{$form->{id}}{$item} * $form->{exchangerate} * -1, 2);
- $paiddiff += $amount - $form->{amount}{$form->{id}}{$item} * $form->{exchangerate} * -1;
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($amount * -1, 2);
- $amount = $form->{amount}{$form->{id}}{$item} * -1;
- $tax += $amount;
- }
- }
-
-
- $form->{amount}{$form->{id}}{$form->{AP}} = $netamount + $tax;
-
- if ($form->{paid} != 0) {
- $form->{paid} = $form->round_amount($form->{paid} * $form->{exchangerate} + $paiddiff, 2);
- }
-
-
- # update exchangerate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, 0, $form->{exchangerate});
- }
-
- # record acc_trans transactions
- foreach my $trans_id (keys %{$form->{amount}}) {
- foreach my $accno (keys %{ $form->{amount}{$trans_id} }) {
- if (($form->{amount}{$trans_id}{$accno} = $form->round_amount($form->{amount}{$trans_id}{$accno}, 2)) != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($trans_id, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{amount}{$trans_id}{$accno},
- '$form->{transdate}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
- # deduct payment differences from paiddiff
- for my $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"} != 0) {
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate}, 2);
- $paiddiff -= $amount - $form->{"paid_$i"} * $form->{exchangerate};
- }
- }
-
- # force AP entry if 0
- $form->{amount}{$form->{id}}{$form->{AP}} = $form->{paid} if ($form->{amount}{$form->{id}}{$form->{AP}} == 0);
-
- # record payments and offsetting AP
- for my $i (1 .. $form->{paidaccounts}) {
-
- if ($form->{"paid_$i"} != 0) {
- my ($accno) = split /--/, $form->{"AP_paid_$i"};
- $form->{"datepaid_$i"} = $form->{transdate} unless ($form->{"datepaid_$i"});
- $form->{datepaid} = $form->{"datepaid_$i"};
-
- $amount = ($form->round_amount($form->{"paid_$i"} * $form->{exchangerate} + $paiddiff, 2)) * -1;
-
- # record AP
-
- if ($form->{amount}{$form->{id}}{$form->{AP}} != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$form->{AP}'),
- $amount, '$form->{"datepaid_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # record payment
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- source, memo)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{"paid_$i"}, '$form->{"datepaid_$i"}', |
- .$dbh->quote($form->{"source_$i"}).qq|, |
- .$dbh->quote($form->{"memo_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
-
- $exchangerate = 0;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'sell');
-
- $form->{"exchangerate_$i"} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{"exchangerate_$i"});
- }
-
-
- # exchangerate difference
- $form->{fx}{$accno}{$form->{"datepaid_$i"}} += $form->{"paid_$i"} * ($form->{"exchangerate_$i"} - 1) + $paiddiff;
-
-
- # gain/loss
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate},2) - $form->round_amount($form->{"paid_$i"} * $form->{"exchangerate_$i"},2);
- if ($amount > 0) {
- $form->{fx}{$form->{fxgain_accno}}{$form->{"datepaid_$i"}} += $amount;
- } else {
- $form->{fx}{$form->{fxloss_accno}}{$form->{"datepaid_$i"}} += $amount;
- }
-
- $paiddiff = 0;
-
- # update exchange rate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{"datepaid_$i"}, 0, $form->{"exchangerate_$i"});
- }
- }
- }
-
- # record exchange rate differences and gains/losses
- foreach my $accno (keys %{$form->{fx}}) {
- foreach my $transdate (keys %{ $form->{fx}{$accno} }) {
- if (($form->{fx}{$accno}{$transdate} = $form->round_amount($form->{fx}{$accno}{$transdate}, 2)) != 0) {
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, cleared, fx_transaction)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{fx}{$accno}{$transdate}, '$transdate', '0', '1')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
-
- $amount = $netamount + $tax;
-
- # set values which could be empty
- $form->{taxincluded} *= 1;
-
- ($null, $form->{department_id}) = split(/--/, $form->{department});
- $form->{department_id} *= 1;
-
- # save AP record
- $query = qq|UPDATE ap set
- invnumber = |.$dbh->quote($form->{invnumber}).qq|,
- ordnumber = |.$dbh->quote($form->{ordnumber}).qq|,
- quonumber = |.$dbh->quote($form->{quonumber}).qq|,
- transdate = '$form->{transdate}',
- vendor_id = $form->{vendor_id},
- amount = $amount,
- netamount = $netamount,
- paid = $form->{paid},
- datepaid = |.$form->dbquote($form->{datepaid}, SQL_DATE).qq|,
- duedate = |.$form->dbquote($form->{duedate}, SQL_DATE).qq|,
- invoice = '1',
- taxincluded = '$form->{taxincluded}',
- notes = |.$dbh->quote($form->{notes}).qq|,
- intnotes = |.$dbh->quote($form->{intnotes}).qq|,
- curr = '$form->{currency}',
- department_id = $form->{department_id},
- language_code = '$form->{language_code}'
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # add shipto
- $form->{name} = $form->{vendor};
- $form->{name} =~ s/--$form->{vendor_id}//;
- $form->add_shipto($dbh, $form->{id});
-
- my %audittrail = ( tablename => 'ap',
- reference => $form->{invnumber},
- formname => $form->{type},
- action => 'posted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
- $rc;
-
-}
-
-
-
-sub reverse_invoice {
- my ($dbh, $form) = @_;
-
- # reverse inventory items
- my $query = qq|SELECT i.parts_id, p.inventory_accno_id, p.expense_accno_id,
- i.qty, i.allocated, i.sellprice
- FROM invoice i, parts p
- WHERE i.parts_id = p.id
- AND i.trans_id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $netamount = 0;
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $netamount += $form->round_amount($ref->{sellprice} * $ref->{qty} * -1, 2);
-
- if ($ref->{inventory_accno_id}) {
- # update onhand
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $ref->{parts_id}|,
- $ref->{qty});
-
- # if $ref->{allocated} > 0 than we sold that many items
- if ($ref->{allocated} > 0) {
-
- # get references for sold items
- $query = qq|SELECT i.id, i.trans_id, i.allocated, a.transdate
- FROM invoice i, ar a
- WHERE i.parts_id = $ref->{parts_id}
- AND i.allocated < 0
- AND i.trans_id = a.id
- ORDER BY transdate DESC|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $pthref = $sth->fetchrow_hashref(NAME_lc)) {
- my $qty = $ref->{allocated};
-
- if (($ref->{allocated} + $pthref->{allocated}) > 0) {
- $qty = $pthref->{allocated} * -1;
- }
-
- my $amount = $form->round_amount($ref->{sellprice} * $qty, 2);
-
- #adjust allocated
- $form->update_balance($dbh,
- "invoice",
- "allocated",
- qq|id = $pthref->{id}|,
- $qty);
-
- $form->update_balance($dbh,
- "acc_trans",
- "amount",
- qq|trans_id = $pthref->{trans_id} AND chart_id = $ref->{expense_accno_id} AND transdate = '$pthref->{transdate}'|,
- $amount);
-
- $form->update_balance($dbh,
- "acc_trans",
- "amount",
- qq|trans_id = $pthref->{trans_id} AND chart_id = $ref->{inventory_accno_id} AND transdate = '$pthref->{transdate}'|,
- $amount * -1);
-
- $query = qq|DELETE FROM acc_trans
- WHERE trans_id = $pthref->{trans_id}
- AND amount = 0|;
- $dbh->do($query) || $form->dberror($query);
-
- last if (($ref->{allocated} -= $qty) <= 0);
- }
- $sth->finish;
- }
- }
- }
- $sth->finish;
-
- # delete acc_trans
- $query = qq|DELETE FROM acc_trans
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete invoice entries
- $query = qq|DELETE FROM invoice
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-}
-
-
-
-sub delete_invoice {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my %audittrail = ( tablename => 'ap',
- reference => $form->{invnumber},
- formname => $form->{type},
- action => 'deleted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- &reverse_invoice($dbh, $form);
-
- # delete AP record
- my $query = qq|DELETE FROM ap
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub retrieve_invoice {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
-
- if ($form->{id}) {
- # get default accounts and last invoice number
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies
- FROM defaults d|;
- } else {
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies,
- current_date AS transdate
- FROM defaults d|;
- }
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
-
- if ($form->{id}) {
-
- # retrieve invoice
- $query = qq|SELECT a.invnumber, a.transdate, a.duedate,
- a.ordnumber, a.quonumber, a.paid, a.taxincluded, a.notes,
- a.intnotes, a.curr AS currency, a.vendor_id, a.language_code
- FROM ap a
- WHERE id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # get shipto
- $query = qq|SELECT * FROM shipto
- WHERE trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # retrieve individual items
- $query = qq|SELECT c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- p.partnumber, i.description, i.qty, i.fxsellprice, i.sellprice,
- i.parts_id AS id, i.unit, p.bin, i.deliverydate,
- pr.projectnumber,
- i.project_id, i.serialnumber, i.discount,
- pg.partsgroup, p.partsgroup_id, p.partnumber AS sku,
- t.description AS partsgrouptranslation
- FROM invoice i
- JOIN parts p ON (i.parts_id = p.id)
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN project pr ON (i.project_id = pr.id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- LEFT JOIN translation t ON (t.trans_id = p.partsgroup_id AND t.language_code = '$form->{language_code}')
- WHERE i.trans_id = $form->{id}
- ORDER BY i.id|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- # exchangerate defaults
- &exchangerate_defaults($dbh, $form);
-
- # price matrix and vendor partnumber
- $query = qq|SELECT partnumber
- FROM partsvendor
- WHERE parts_id = ?
- AND vendor_id = $form->{vendor_id}|;
- my $pmh = $dbh->prepare($query) || $form->dberror($query);
-
- # tax rates for part
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN partstax pt ON (pt.chart_id = c.id)
- WHERE pt.parts_id = ?|;
- my $tth = $dbh->prepare($query);
-
- my $ptref;
- my $taxrate;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- ($decimalplaces) = ($ref->{fxsellprice} =~ /\.(\d+)/);
- $decimalplaces = length $decimalplaces;
- $decimalplaces = 2 unless $decimalplaces;
-
- $tth->execute($ref->{id});
- $ref->{taxaccounts} = "";
- $taxrate = 0;
-
- while ($ptref = $tth->fetchrow_hashref(NAME_lc)) {
- $ref->{taxaccounts} .= "$ptref->{accno} ";
- $taxrate += $form->{"$ptref->{accno}_rate"};
- }
-
- $tth->finish;
- chop $ref->{taxaccounts};
-
- # price matrix
- $ref->{sellprice} = $form->round_amount($ref->{fxsellprice} * $form->{$form->{currency}}, 2);
- &price_matrix($pmh, $ref, $decimalplaces, $form);
-
- $ref->{sellprice} = $ref->{fxsellprice};
- $ref->{qty} *= -1;
-
- $ref->{partsgroup} = $ref->{partsgrouptranslation} if $ref->{partsgrouptranslation};
-
- push @{ $form->{invoice_details} }, $ref;
-
- }
-
- $sth->finish;
-
- }
-
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub get_vendor {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $dateformat = $myconfig->{dateformat};
- if ($myconfig->{dateformat} !~ /^y/) {
- my @a = split /\W/, $form->{transdate};
- $dateformat .= "yy" if (length $a[2] > 2);
- }
-
- if ($form->{transdate} !~ /\W/) {
- $dateformat = 'yyyymmdd';
- }
-
- my $duedate;
-
- if ($myconfig->{dbdriver} eq 'DB2') {
- $duedate = ($form->{transdate}) ? "date('$form->{transdate}') + v.terms DAYS" : "current_date + v.terms DAYS";
- } else {
- $duedate = ($form->{transdate}) ? "to_date('$form->{transdate}', '$dateformat') + v.terms" : "current_date + v.terms";
- }
-
- $form->{vendor_id} *= 1;
- # get vendor
- my $query = qq|SELECT v.name AS vendor, v.creditlimit, v.terms,
- v.email, v.cc, v.bcc, v.taxincluded,
- v.address1, v.address2, v.city, v.state,
- v.zipcode, v.country, v.curr AS currency, v.language_code,
- $duedate AS duedate, v.notes AS intnotes,
- e.name AS employee, e.id AS employee_id
- FROM vendor v
- LEFT JOIN employee e ON (e.id = v.employee_id)
- WHERE v.id = $form->{vendor_id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
-
- if ($form->{id}) {
- map { delete $ref->{$_} } qw(currency taxincluded employee employee_id intnotes);
- }
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # if no currency use defaultcurrency
- $form->{currency} = ($form->{currency}) ? $form->{currency} : $form->{defaultcurrency};
-
- $form->{exchangerate} = 0 if $form->{currency} eq $form->{defaultcurrency};
- if ($form->{transdate} && ($form->{currency} ne $form->{defaultcurrency})) {
- $form->{exchangerate} = $form->get_exchangerate($dbh, $form->{currency}, $form->{transdate}, "sell");
- }
- $form->{forex} = $form->{exchangerate};
-
- # if no employee, default to login
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh) unless $form->{employee_id};
-
- $form->{creditremaining} = $form->{creditlimit};
- $query = qq|SELECT SUM(amount - paid)
- FROM ap
- WHERE vendor_id = $form->{vendor_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{creditremaining}) -= $sth->fetchrow_array;
-
- $sth->finish;
-
- $query = qq|SELECT o.amount,
- (SELECT e.sell FROM exchangerate e
- WHERE e.curr = o.curr
- AND e.transdate = o.transdate)
- FROM oe o
- WHERE o.vendor_id = $form->{vendor_id}
- AND o.quotation = '0'
- AND o.closed = '0'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($amount, $exch) = $sth->fetchrow_array) {
- $exch = 1 unless $exch;
- $form->{creditremaining} -= $amount * $exch;
- }
- $sth->finish;
-
-
- # get shipto if we do not convert an order or invoice
- if (!$form->{shipto}) {
- map { delete $form->{$_} } qw(shiptoname shiptoaddress1 shiptoaddress2 shiptocity shiptostate shiptozipcode shiptocountry shiptocontact shiptophone shiptofax shiptoemail);
-
- $query = qq|SELECT * FROM shipto
- WHERE trans_id = $form->{vendor_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
- }
-
- # get taxes for vendor
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN vendortax v ON (v.chart_id = c.id)
- WHERE v.vendor_id = $form->{vendor_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $vendortax = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $vendortax{$ref->{accno}} = 1;
- }
- $sth->finish;
-
-
- # get tax rates and description
- $query = qq|SELECT c.accno, c.description, c.link, t.rate, t.taxnumber
- FROM chart c
- JOIN tax t ON (c.id = t.chart_id)
- WHERE c.link LIKE '%CT_tax%'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{taxaccounts} = "";
- $form->{taxpart} = "";
- $form->{taxservice} = "";
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($vendortax{$ref->{accno}}) {
- $form->{"$ref->{accno}_rate"} = $ref->{rate};
- $form->{"$ref->{accno}_description"} = $ref->{description};
- $form->{"$ref->{accno}_taxnumber"} = $ref->{taxnumber};
- $form->{taxaccounts} .= "$ref->{accno} ";
- }
-
- foreach my $item (split /:/, $ref->{link}) {
- if ($item =~ /IC_taxpart/) {
- $form->{taxpart} .= "$ref->{accno} ";
- }
-
- if ($item =~ /IC_taxservice/) {
- $form->{taxservice} .= "$ref->{accno} ";
- }
- }
- }
- $sth->finish;
- chop $form->{taxaccounts};
- chop $form->{taxpart};
- chop $form->{taxservice};
-
-
- if (!$form->{id} && $form->{type} !~ /_(order|quotation)/) {
- # setup last accounts used
- $query = qq|SELECT c.accno, c.description, c.link, c.category,
- ac.project_id, p.projectnumber, a.department_id,
- d.description AS department
- FROM chart c
- JOIN acc_trans ac ON (ac.chart_id = c.id)
- JOIN ap a ON (a.id = ac.trans_id)
- LEFT JOIN project p ON (ac.project_id = p.id)
- LEFT JOIN department d ON (a.department_id = d.id)
- WHERE a.vendor_id = $form->{vendor_id}
- AND a.id IN (SELECT max(id) FROM ap
- WHERE vendor_id = $form->{vendor_id})|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $i = 0;
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{department} = $ref->{department};
- $form->{department_id} = $ref->{department_id};
-
- if ($ref->{link} =~ /_amount/) {
- $i++;
- $form->{"AP_amount_$i"} = "$ref->{accno}--$ref->{description}";
- $form->{"projectnumber_$i"} = "$ref->{projectnumber}--$ref->{project_id}";
- }
- if ($ref->{category} eq 'L') {
- $form->{AP} = $form->{AP_1} = "$ref->{accno}--$ref->{description}";
- }
- }
- $sth->finish;
- $form->{rowcount} = $i if ($i && !$form->{type});
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub retrieve_item {
- my ($self, $myconfig, $form) = @_;
-
- my $i = $form->{rowcount};
- my $null;
- my $var;
-
- # don't include assemblies or obsolete parts
- my $where = "WHERE p.assembly = '0' AND p.obsolete = '0'";
-
- if ($form->{"partnumber_$i"}) {
- $var = $form->like(lc $form->{"partnumber_$i"});
- $where .= " AND lower(p.partnumber) LIKE '$var'";
- }
-
- if ($form->{"description_$i"}) {
- $var = $form->like(lc $form->{"description_$i"});
- if ($form->{language_code}) {
- $where .= " AND lower(t1.description) LIKE '$var'";
- } else {
- $where .= " AND lower(p.description) LIKE '$var'";
- }
- }
-
- if ($form->{"partsgroup_$i"}) {
- ($null, $var) = split /--/, $form->{"partsgroup_$i"};
- $where .= qq| AND p.partsgroup_id = $var|;
- }
-
- if ($form->{"description_$i"}) {
- $where .= " ORDER BY 3";
- } else {
- $where .= " ORDER BY 2";
- }
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT p.id, p.partnumber, p.description,
- c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- pg.partsgroup, p.partsgroup_id,
- p.lastcost AS sellprice, p.unit, p.bin, p.onhand,
- p.partnumber AS sku, p.weight,
- t1.description AS translation,
- t2.description AS grouptranslation
- FROM parts p
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- LEFT JOIN translation t1 ON (t1.trans_id = p.id AND t1.language_code = '$form->{language_code}')
- LEFT JOIN translation t2 ON (t2.trans_id = p.partsgroup_id AND t2.language_code = '$form->{language_code}')
- $where|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- # foreign currency
- &exchangerate_defaults($dbh, $form);
-
- # taxes
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN partstax pt ON (pt.chart_id = c.id)
- WHERE pt.parts_id = ?|;
- my $tth = $dbh->prepare($query) || $form->dberror($query);
-
- # price matrix
- $query = qq|SELECT p.*
- FROM partsvendor p
- WHERE p.parts_id = ?
- AND vendor_id = $form->{vendor_id}|;
- my $pmh = $dbh->prepare($query) || $form->dberror($query);
-
- my $ref;
- my $ptref;
- my $decimalplaces;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- ($decimalplaces) = ($ref->{sellprice} =~ /\.(\d+)/);
- $decimalplaces = length $decimalplaces;
- $decimalplaces = 2 unless $decimalplaces;
-
- # get taxes for part
- $tth->execute($ref->{id});
-
- $ref->{taxaccounts} = "";
- while ($ptref = $tth->fetchrow_hashref(NAME_lc)) {
- $ref->{taxaccounts} .= "$ptref->{accno} ";
- }
- $tth->finish;
- chop $ref->{taxaccounts};
-
- # get vendor price and partnumber
- &price_matrix($pmh, $ref, $decimalplaces, $form, $myconfig);
-
- $ref->{description} = $ref->{translation} if $ref->{translation};
- $ref->{partsgroup} = $ref->{grouptranslation} if $ref->{grouptranslation};
-
- push @{ $form->{item_list} }, $ref;
-
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub exchangerate_defaults {
- my ($dbh, $form) = @_;
-
- my $var;
-
- # get default currencies
- my $query = qq|SELECT substr(curr,1,3), curr FROM defaults|;
- my $eth = $dbh->prepare($query) || $form->dberror($query);
- $eth->execute;
- ($form->{defaultcurrency}, $form->{currencies}) = $eth->fetchrow_array;
- $eth->finish;
-
- $query = qq|SELECT sell
- FROM exchangerate
- WHERE curr = ?
- AND transdate = ?|;
- my $eth1 = $dbh->prepare($query) || $form->dberror($query);
-
- $query = qq~SELECT max(transdate || ' ' || sell || ' ' || curr)
- FROM exchangerate
- WHERE curr = ?~;
- my $eth2 = $dbh->prepare($query) || $form->dberror($query);
-
- # get exchange rates for transdate or max
- foreach $var (split /:/, substr($form->{currencies},4)) {
- $eth1->execute($var, $form->{transdate});
- ($form->{$var}) = $eth1->fetchrow_array;
- if (! $form->{$var} ) {
- $eth2->execute($var);
-
- ($form->{$var}) = $eth2->fetchrow_array;
- ($null, $form->{$var}) = split / /, $form->{$var};
- $form->{$var} = 1 unless $form->{$var};
- $eth2->finish;
- }
- $eth1->finish;
- }
-
- $form->{$form->{defaultcurrency}} = 1;
-
-}
-
-
-sub price_matrix {
- my ($pmh, $ref, $decimalplaces, $form, $myconfig) = @_;
-
- $pmh->execute($ref->{id});
- my $mref = $pmh->fetchrow_hashref(NAME_lc);
-
- if ($mref->{partnumber}) {
- $ref->{partnumber} = $mref->{partnumber};
- }
-
- if ($mref->{lastcost}) {
- # do a conversion
- $ref->{sellprice} = $form->round_amount($mref->{lastcost} * $form->{$mref->{curr}}, $decimalplaces);
- }
- $pmh->finish;
-
- $ref->{sellprice} *= 1;
-
- # add 0:price to matrix
- $ref->{pricematrix} = "0:$ref->{sellprice}";
-
-}
-
-
-sub vendor_details {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get rest for the vendor
- my $query = qq|SELECT vendornumber, name, address1, address2, city, state,
- zipcode, country,
- contact, phone as vendorphone, fax as vendorfax, vendornumber,
- taxnumber, sic_code AS sic, iban, bic
- FROM vendor
- WHERE id = $form->{vendor_id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub item_links {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description, link
- FROM chart
- WHERE link LIKE '%IC%'
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- foreach my $key (split(/:/, $ref->{link})) {
- if ($key =~ /IC/) {
- push @{ $form->{IC_links}{$key} }, { accno => $ref->{accno},
- description => $ref->{description} };
- }
- }
- }
-
- $sth->finish;
-}
-
-1;
-
diff --git a/sql-ledger/SL/IS.pm b/sql-ledger/SL/IS.pm
deleted file mode 100644
index 788dd95..0000000
--- a/sql-ledger/SL/IS.pm
+++ /dev/null
@@ -1,1632 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Jim Rawlings <jim@your-dba.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory invoicing module
-#
-#======================================================================
-
-package IS;
-
-
-sub invoice_details {
- my ($self, $myconfig, $form) = @_;
-
- $form->{duedate} = $form->{transdate} unless ($form->{duedate});
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT date '$form->{duedate}' - date '$form->{transdate}'
- AS terms
- FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{terms}) = $sth->fetchrow_array;
- $sth->finish;
-
- # this is for the template
- $form->{invdate} = $form->{transdate};
-
- my $tax = 0;
- my $item;
- my $i;
- my @sortlist = ();
- my $projectnumber;
- my $projectnumber_id;
- my $translation;
- my $partsgroup;
-
- my %oid = ( 'Pg' => 'oid',
- 'PgPP' => 'oid',
- 'Oracle' => 'rowid',
- 'DB2' => '1=1'
- );
-
- # sort items by partsgroup
- for $i (1 .. $form->{rowcount}) {
- $projectnumber = "";
- $partsgroup = "";
- $projectnumber_id = 0;
- if ($form->{"projectnumber_$i"} && $form->{groupprojectnumber}) {
- ($projectnumber, $projectnumber_id) = split /--/, $form->{"projectnumber_$i"};
- }
- if ($form->{"partsgroup_$i"} && $form->{grouppartsgroup}) {
- ($partsgroup) = split /--/, $form->{"partsgroup_$i"};
- }
- push @sortlist, [ $i, "$projectnumber$partsgroup", $projectnumber, $projectnumber_id, $partsgroup ];
-
-
- # sort the whole thing by project and group
- @sortlist = sort { $a->[1] cmp $b->[1] } @sortlist;
-
- }
-
- my @taxaccounts;
- my %taxaccounts;
- my $taxrate;
- my $taxamount;
- my $taxbase;
- my $taxdiff;
-
- $query = qq|SELECT p.description, t.description
- FROM project p
- LEFT JOIN translation t ON (t.trans_id = p.id AND t.language_code = '$form->{language_code}')
- WHERE id = ?|;
- my $prh = $dbh->prepare($query) || $form->dberror($query);
-
- my $runningnumber = 1;
- my $sameitem = "";
- my $subtotal;
- my $k = scalar @sortlist;
- my $j = 0;
-
- foreach $item (@sortlist) {
- $i = $item->[0];
- $j++;
-
- if ($form->{groupprojectnumber} || $form->{grouppartsgroup}) {
- if ($item->[1] ne $sameitem) {
-
- $projectnumber = "";
- if ($form->{groupprojectnumber} && $item->[2]) {
- # get project description
- $prh->execute($item->[3]) || $form->dberror($query);
-
- ($projectnumber, $translation) = $prh->fetchrow_array;
- $prh->finish;
-
- $projectnumber = ($translation) ? "$item->[2], $translation" : "$item->[2], $projectnumber";
- }
-
- if ($form->{grouppartsgroup} && $item->[4]) {
- $projectnumber .= " / " if $projectnumber;
- $projectnumber .= $item->[4];
- }
-
- $form->{projectnumber} = $projectnumber;
- $form->format_string(projectnumber);
-
- push(@{ $form->{description} }, qq|$form->{projectnumber}|);
- $sameitem = $item->[1];
-
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku serialnumber bin qty unit deliverydate projectnumber sellprice listprice netprice discount discountrate linetotal weight);
- }
- }
-
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
-
- $form->{totalqty} += $form->{"qty_$i"};
- $form->{totalship} += $form->{"ship_$i"};
- $form->{totalweight} += ($form->{"qty_$i"} * $form->{"weight_$i"});
-
- # add number, description and qty to $form->{number}, ....
- push(@{ $form->{runningnumber} }, $runningnumber++);
- push(@{ $form->{number} }, qq|$form->{"partnumber_$i"}|);
- push(@{ $form->{sku} }, qq|$form->{"sku_$i"}|);
- push(@{ $form->{serialnumber} }, qq|$form->{"serialnumber_$i"}|);
- push(@{ $form->{bin} }, qq|$form->{"bin_$i"}|);
- push(@{ $form->{description} }, qq|$form->{"description_$i"}|);
- push(@{ $form->{qty} }, $form->format_amount($myconfig, $form->{"qty_$i"}));
- push(@{ $form->{unit} }, qq|$form->{"unit_$i"}|);
- push(@{ $form->{deliverydate} }, qq|$form->{"deliverydate_$i"}|);
- push(@{ $form->{projectnumber} }, qq|$form->{"projectnumber_$i"}|);
-
- push(@{ $form->{sellprice} }, $form->{"sellprice_$i"});
-
- # listprice
- push(@{ $form->{listprice} }, $form->{"listprice_$i"});
-
- push(@{ $form->{weight} }, $form->{"weight_$i"});
-
- my $sellprice = $form->parse_amount($myconfig, $form->{"sellprice_$i"});
- my ($dec) = ($sellprice =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- my $discount = $form->round_amount($sellprice * $form->parse_amount($myconfig, $form->{"discount_$i"}) / 100, $decimalplaces);
-
- # keep a netprice as well, (sellprice - discount)
- $form->{"netprice_$i"} = $sellprice - $discount;
- push(@{ $form->{netprice} }, ($form->{"netprice_$i"} != 0) ? $form->format_amount($myconfig, $form->{"netprice_$i"}, $decimalplaces) : " ");
-
-
- my $linetotal = $form->round_amount($form->{"qty_$i"} * $form->{"netprice_$i"}, 2);
-
- $discount = ($discount != 0) ? $form->format_amount($myconfig, $discount * -1, $decimalplaces) : " ";
- $linetotal = ($linetotal != 0) ? $linetotal : " ";
-
- push(@{ $form->{discount} }, $discount);
- push(@{ $form->{discountrate} }, $form->format_amount($myconfig, $form->{"discount_$i"}));
-
- $form->{total} += $linetotal;
-
- # this is for the subtotals for grouping
- $subtotal += $linetotal;
-
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $linetotal, 2));
-
- @taxaccounts = split / /, $form->{"taxaccounts_$i"};
- $taxrate = 0;
- $taxdiff = 0;
-
- map { $taxrate += $form->{"${_}_rate"} } @taxaccounts;
-
- if ($form->{taxincluded}) {
- # calculate tax
- $taxamount = $linetotal * $taxrate / (1 + $taxrate);
- $taxbase = $linetotal - $taxamount;
- } else {
- $taxamount = $linetotal * $taxrate;
- $taxbase = $linetotal;
- }
-
- if (@taxaccounts && $form->round_amount($taxamount, 2) == 0) {
- if ($form->{taxincluded}) {
- foreach $item (@taxaccounts) {
- $taxamount = $form->round_amount($linetotal * $form->{"${item}_rate"} / (1 + abs($form->{"${item}_rate"})), 2);
-
- $taxaccounts{$item} += $taxamount;
- $taxdiff += $taxamount;
-
- $taxbase{$item} += $taxbase;
- }
- $taxaccounts{$taxaccounts[0]} += $taxdiff;
- } else {
- foreach $item (@taxaccounts) {
- $taxaccounts{$item} += $linetotal * $form->{"${item}_rate"};
- $taxbase{$item} += $taxbase;
- }
- }
- } else {
- foreach $item (@taxaccounts) {
- $taxaccounts{$item} += $taxamount * $form->{"${item}_rate"} / $taxrate;
- $taxbase{$item} += $taxbase;
- }
- }
-
-
- if ($form->{"assembly_$i"}) {
- my $sm = "";
-
- # get parts and push them onto the stack
- my $sortorder = "";
- if ($form->{groupitems}) {
- $sortorder = qq|ORDER BY pg.partsgroup, a.$oid{$myconfig->{dbdriver}}|;
- } else {
- $sortorder = qq|ORDER BY a.$oid{$myconfig->{dbdriver}}|;
- }
-
- $query = qq|SELECT p.partnumber, p.description, p.unit, a.qty,
- pg.partsgroup, p.partnumber AS sku
- FROM assembly a
- JOIN parts p ON (a.parts_id = p.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE a.bom = '1'
- AND a.id = '$form->{"id_$i"}'
- $sortorder|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($form->{grouppartsgroup} && $ref->{partsgroup} ne $sameitem) {
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku serialnumber unit qty bin deliverydate projectnumber sellprice listprice netprice discount discountrate linetotal weight);
- $sm = ($ref->{partsgroup}) ? $ref->{partsgroup} : "--";
- push(@{ $form->{description} }, $sm);
- }
-
- map { $form->{"a_$_"} = $ref->{$_} } qw(partnumber description);
- $form->format_string("a_partnumber", "a_description");
-
- push(@{ $form->{description} }, $form->format_amount($myconfig, $ref->{qty} * $form->{"qty_$i"}) . qq| -- $form->{"a_partnumber"}, $form->{"a_description"}|);
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku serialnumber unit qty bin deliverydate projectnumber sellprice listprice netprice discount discountrate linetotal weight);
-
- }
- $sth->finish;
- }
- }
-
- # add subtotal
- if ($form->{groupprojectnumber} || $form->{grouppartsgroup}) {
- if ($subtotal) {
- if ($j < $k) {
- # look at next item
- if ($sortlist[$j]->[1] ne $sameitem) {
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku serialnumber bin qty unit deliverydate projectnumber sellprice listprice netprice discount discountrate weight);
- push(@{ $form->{description} }, $form->{groupsubtotaldescription});
- if (exists $form->{groupsubtotaldescription}) {
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $subtotal, 2));
- } else {
- push(@{ $form->{linetotal} }, "");
- }
- $subtotal = 0;
- }
- } else {
-
- # got last item
- if (exists $form->{groupsubtotaldescription}) {
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku serialnumber bin qty unit deliverydate projectnumber sellprice listprice netprice discount discountrate weight);
- push(@{ $form->{description} }, $form->{groupsubtotaldescription});
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $subtotal, 2));
- }
- }
- }
- }
-
- }
-
-
- foreach my $item (sort keys %taxaccounts) {
- if ($form->round_amount($taxaccounts{$item}, 2) != 0) {
- push(@{ $form->{taxbase} }, $form->format_amount($myconfig, $taxbase{$item}, 2));
-
- $tax += $taxamount = $form->round_amount($taxaccounts{$item}, 2);
-
- push(@{ $form->{tax} }, $form->format_amount($myconfig, $taxamount));
- push(@{ $form->{taxdescription} }, $form->{"${item}_description"});
- push(@{ $form->{taxrate} }, $form->format_amount($myconfig, $form->{"${item}_rate"} * 100));
- push(@{ $form->{taxnumber} }, $form->{"${item}_taxnumber"});
- }
- }
-
-
- for my $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- push(@{ $form->{payment} }, $form->{"paid_$i"});
- my ($accno, $description) = split /--/, $form->{"AR_paid_$i"};
- push(@{ $form->{paymentaccount} }, $description);
- push(@{ $form->{paymentdate} }, $form->{"datepaid_$i"});
- push(@{ $form->{paymentsource} }, $form->{"source_$i"});
- push(@{ $form->{paymentmemo} }, $form->{"memo_$i"});
-
- $form->{paid} += $form->parse_amount($myconfig, $form->{"paid_$i"});
- }
- }
-
- map { $form->{$_} = $form->format_amount($myconfig, $form->{$_}) } qw(totalqty totalship totalweight);
- $form->{subtotal} = $form->format_amount($myconfig, $form->{total}, 2);
- $form->{invtotal} = ($form->{taxincluded}) ? $form->{total} : $form->{total} + $tax;
-
- use SL::CP;
- my $c;
- if ($form->{language_code}) {
- $c = new CP $form->{language_code};
- } else {
- $c = new CP $myconfig->{countrycode};
- }
- $c->init;
- my $whole;
- ($whole, $form->{decimal}) = split /\./, $form->{invtotal};
- $form->{decimal} .= "00";
- $form->{decimal} = substr($form->{decimal}, 0, 2);
- $form->{text_amount} = $c->num2text($whole);
-
- $form->{total} = $form->format_amount($myconfig, $form->{invtotal} - $form->{paid}, 2);
- $form->{invtotal} = $form->format_amount($myconfig, $form->{invtotal}, 2);
-
- $form->{paid} = $form->format_amount($myconfig, $form->{paid}, 2);
-
- $dbh->disconnect;
-
-}
-
-
-sub project_description {
- my ($self, $dbh, $id) = @_;
-
- my $query = qq|SELECT description
- FROM project
- WHERE id = $id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($_) = $sth->fetchrow_array;
-
- $sth->finish;
-
- $_;
-
-}
-
-
-sub customer_details {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get rest for the customer
- my $query = qq|SELECT customernumber, name, address1, address2, city,
- state, zipcode, country,
- phone as customerphone, fax as customerfax, contact,
- taxnumber, sic_code AS sic, iban, bic
- FROM customer
- WHERE id = $form->{customer_id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub post_invoice {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off autocommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
- my $null;
- my $project_id;
- my $exchangerate = 0;
-
- ($null, $form->{employee_id}) = split /--/, $form->{employee};
- unless ($form->{employee_id}) {
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
- }
-
- ($null, $form->{department_id}) = split(/--/, $form->{department});
- $form->{department_id} *= 1;
-
- if ($form->{id}) {
-
- &reverse_invoice($dbh, $form);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO ar (invnumber, employee_id)
- VALUES ('$uid', $form->{employee_id})|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM ar
- WHERE invnumber = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
- }
-
- my ($netamount, $invoicediff) = (0, 0);
- my ($amount, $linetotal, $lastincomeaccno);
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{exchangerate} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, 'buy');
- }
-
- $form->{exchangerate} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{exchangerate});
-
-
- foreach my $i (1 .. $form->{rowcount}) {
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
-
- # project
- $project_id = 'NULL';
- if ($form->{"projectnumber_$i"}) {
- ($null, $project_id) = split /--/, $form->{"projectnumber_$i"};
- }
-
- # undo discount formatting
- $form->{"discount_$i"} = $form->parse_amount($myconfig, $form->{"discount_$i"}) / 100;
-
- my ($allocated, $taxrate) = (0, 0);
- my $taxamount;
-
- # keep entered selling price
- my $fxsellprice = $form->parse_amount($myconfig, $form->{"sellprice_$i"});
-
- my ($dec) = ($fxsellprice =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- # deduct discount
- my $discount = $form->round_amount($fxsellprice * $form->{"discount_$i"}, $decimalplaces);
- $form->{"sellprice_$i"} = $fxsellprice - $discount;
-
- # add tax rates
- map { $taxrate += $form->{"${_}_rate"} } split / /, $form->{"taxaccounts_$i"};
-
- # round linetotal to 2 decimal places
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2);
-
- if ($form->{taxincluded}) {
- $taxamount = $linetotal * ($taxrate / (1 + $taxrate));
- $form->{"sellprice_$i"} = $form->{"sellprice_$i"} * (1 / (1 + $taxrate));
- } else {
- $taxamount = $linetotal * $taxrate;
- }
-
- $netamount += $linetotal;
-
- if ($form->round_amount($taxamount, 2) != 0) {
- map { $form->{amount}{$form->{id}}{$_} += $taxamount * $form->{"${_}_rate"} / $taxrate } split / /, $form->{"taxaccounts_$i"};
- }
-
-
- # add amount to income, $form->{amount}{trans_id}{accno}
- $amount = $form->{"sellprice_$i"} * $form->{"qty_$i"} * $form->{exchangerate};
-
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2) * $form->{exchangerate};
- $linetotal = $form->round_amount($linetotal, 2);
-
- # this is the difference from the inventory
- $invoicediff += ($amount - $linetotal);
-
- $form->{amount}{$form->{id}}{$form->{"income_accno_$i"}} += $linetotal;
-
- $lastincomeaccno = $form->{"income_accno_$i"};
-
- # adjust and round sellprice
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"} * $form->{exchangerate}, $decimalplaces);
-
- if ($form->{"inventory_accno_$i"} || $form->{"assembly_$i"}) {
- # adjust parts onhand quantity
-
- if ($form->{"assembly_$i"}) {
- # do not update if assembly consists of all services
- $query = qq|SELECT sum(p.inventory_accno_id)
- FROM parts p
- JOIN assembly a ON (a.parts_id = p.id)
- WHERE a.id = $form->{"id_$i"}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- if ($sth->fetchrow_array) {
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $form->{"id_$i"}|,
- $form->{"qty_$i"} * -1) unless $form->{shipped};
- }
- $sth->finish;
-
- # record assembly item as allocated
- &process_assembly($dbh, $form, $form->{"id_$i"}, $form->{"qty_$i"});
- } else {
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $form->{"id_$i"}|,
- $form->{"qty_$i"} * -1) unless $form->{shipped};
-
- $allocated = &cogs($dbh, $form, $form->{"id_$i"}, $form->{"qty_$i"});
- }
- }
-
-
- # save detail record in invoice table
- $query = qq|INSERT INTO invoice (trans_id, parts_id, description, qty,
- sellprice, fxsellprice, discount, allocated, assemblyitem,
- unit, deliverydate, project_id, serialnumber)
- VALUES ($form->{id}, $form->{"id_$i"}, |
- .$dbh->quote($form->{"description_$i"}).qq|,
- $form->{"qty_$i"}, $form->{"sellprice_$i"}, $fxsellprice,
- $form->{"discount_$i"}, $allocated, 'f', |
- .$dbh->quote($form->{"unit_$i"}).qq|, |
- .$form->dbquote($form->{"deliverydate_$i"}, SQL_DATE).qq|,
- $project_id, |
- .$dbh->quote($form->{"serialnumber_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- }
- }
-
-
- $form->{datepaid} = $form->{transdate};
-
- # total payments, don't move we need it here
- $form->{paid} = 0;
- for my $i (1 .. $form->{paidaccounts}) {
- $form->{"paid_$i"} = $form->parse_amount($myconfig, $form->{"paid_$i"});
- $form->{paid} += $form->{"paid_$i"};
- $form->{datepaid} = $form->{"datepaid_$i"} if ($form->{"datepaid_$i"});
- }
-
- my ($tax, $diff) = (0, 0);
-
- $netamount = $form->round_amount($netamount, 2);
-
- # figure out rounding errors for total amount vs netamount + taxes
- if ($form->{taxincluded}) {
-
- $amount = $form->round_amount($netamount * $form->{exchangerate}, 2);
- $diff += $amount - $netamount * $form->{exchangerate};
- $netamount = $amount;
-
- foreach my $item (split / /, $form->{taxaccounts}) {
- $amount = $form->{amount}{$form->{id}}{$item} * $form->{exchangerate};
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($amount, 2);
- $tax += $form->{amount}{$form->{id}}{$item};
- $netamount -= $form->{amount}{$form->{id}}{$item};
- }
-
- $invoicediff += $diff;
- ######## this only applies to tax included
- if ($lastincomeaccno) {
- $form->{amount}{$form->{id}}{$lastincomeaccno} += $invoicediff;
- }
-
- } else {
- $amount = $form->round_amount($netamount * $form->{exchangerate}, 2);
- $diff = $amount - $netamount * $form->{exchangerate};
- $netamount = $amount;
- foreach my $item (split / /, $form->{taxaccounts}) {
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($form->{amount}{$form->{id}}{$item}, 2);
- $amount = $form->round_amount($form->{amount}{$form->{id}}{$item} * $form->{exchangerate}, 2);
- $diff += $amount - $form->{amount}{$form->{id}}{$item} * $form->{exchangerate};
- $form->{amount}{$form->{id}}{$item} = $form->round_amount($amount, 2);
- $tax += $form->{amount}{$form->{id}}{$item};
- }
- }
-
- $diff = 0 if $form->{paidaccounts} < 2;
-
- $form->{amount}{$form->{id}}{$form->{AR}} = $netamount + $tax;
- $form->{paid} = $form->round_amount($form->{paid} * $form->{exchangerate} + $diff, 2);
-
- # reverse AR
- $form->{amount}{$form->{id}}{$form->{AR}} *= -1;
-
-
- # update exchangerate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, $form->{exchangerate}, 0);
- }
-
- foreach my $trans_id (keys %{$form->{amount}}) {
- foreach my $accno (keys %{ $form->{amount}{$trans_id} }) {
- if (($form->{amount}{$trans_id}{$accno} = $form->round_amount($form->{amount}{$trans_id}{$accno}, 2)) != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($trans_id, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{amount}{$trans_id}{$accno},
- '$form->{transdate}')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
- # deduct payment differences from diff
- for my $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"} != 0) {
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate}, 2);
- $diff -= $amount - $form->{"paid_$i"} * $form->{exchangerate};
- }
- }
-
-
- # force AR entry if 0
- $form->{amount}{$form->{id}}{$form->{AR}} = $form->{paid} if ($form->{amount}{$form->{id}}{$form->{AR}} == 0);
-
- # record payments and offsetting AR
- for my $i (1 .. $form->{paidaccounts}) {
-
- if ($form->{"paid_$i"} != 0) {
- my ($accno) = split /--/, $form->{"AR_paid_$i"};
- $form->{"datepaid_$i"} = $form->{transdate} unless ($form->{"datepaid_$i"});
- $form->{datepaid} = $form->{"datepaid_$i"};
-
- $exchangerate = 0;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'buy');
-
- $form->{"exchangerate_$i"} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{"exchangerate_$i"});
- }
-
-
- # record AR
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate} + $diff, 2);
-
- if ($form->{amount}{$form->{id}}{$form->{AR}} != 0) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$form->{AR}'),
- $amount, '$form->{"datepaid_$i"}')|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- # record payment
- $form->{"paid_$i"} *= -1;
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
- source, memo)
- VALUES ($form->{id}, (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{"paid_$i"}, '$form->{"datepaid_$i"}', |
- .$dbh->quote($form->{"source_$i"}).qq|, |
- .$dbh->quote($form->{"memo_$i"}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # exchangerate difference
- $form->{fx}{$accno}{$form->{"datepaid_$i"}} += $form->{"paid_$i"} * ($form->{"exchangerate_$i"} - 1) + $diff;
-
- # gain/loss
- $amount = $form->round_amount($form->{"paid_$i"} * $form->{exchangerate},2) - $form->round_amount($form->{"paid_$i"} * $form->{"exchangerate_$i"},2);
- if ($amount > 0) {
- $form->{fx}{$form->{fxgain_accno}}{$form->{"datepaid_$i"}} += $amount;
- } else {
- $form->{fx}{$form->{fxloss_accno}}{$form->{"datepaid_$i"}} += $amount;
- }
-
- $diff = 0;
-
- # update exchange rate
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{"datepaid_$i"}, $form->{"exchangerate_$i"}, 0);
- }
- }
- }
-
-
- # record exchange rate differences and gains/losses
- foreach my $accno (keys %{$form->{fx}}) {
- foreach my $transdate (keys %{ $form->{fx}{$accno} }) {
- if (($form->{fx}{$accno}{$transdate} = $form->round_amount($form->{fx}{$accno}{$transdate}, 2)) != 0) {
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, amount,
- transdate, cleared, fx_transaction)
- VALUES ($form->{id},
- (SELECT id FROM chart
- WHERE accno = '$accno'),
- $form->{fx}{$accno}{$transdate}, '$transdate', '0', '1')|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
- }
-
-
- $amount = $netamount + $tax;
-
- # set values which could be empty to 0
- $form->{terms} *= 1;
- $form->{taxincluded} *= 1;
-
- # if this is from a till
- my $till = ($form->{till}) ? qq|'$form->{till}'| : "NULL";
-
- # save AR record
- $query = qq|UPDATE ar set
- invnumber = |.$dbh->quote($form->{invnumber}).qq|,
- ordnumber = |.$dbh->quote($form->{ordnumber}).qq|,
- quonumber = |.$dbh->quote($form->{quonumber}).qq|,
- transdate = '$form->{transdate}',
- customer_id = $form->{customer_id},
- amount = $amount,
- netamount = $netamount,
- paid = $form->{paid},
- datepaid = |.$form->dbquote($form->{datepaid}, SQL_DATE).qq|,
- duedate = |.$form->dbquote($form->{duedate}, SQL_DATE).qq|,
- invoice = '1',
- shippingpoint = |.$dbh->quote($form->{shippingpoint}).qq|,
- shipvia = |.$dbh->quote($form->{shipvia}).qq|,
- terms = $form->{terms},
- notes = |.$dbh->quote($form->{notes}).qq|,
- intnotes = |.$dbh->quote($form->{intnotes}).qq|,
- taxincluded = '$form->{taxincluded}',
- curr = '$form->{currency}',
- department_id = $form->{department_id},
- employee_id = $form->{employee_id},
- till = $till,
- language_code = '$form->{language_code}'
- WHERE id = $form->{id}
- |;
- $dbh->do($query) || $form->dberror($query);
-
- # add shipto
- $form->{name} = $form->{customer};
- $form->{name} =~ s/--$form->{customer_id}//;
- $form->add_shipto($dbh, $form->{id});
-
- # save printed, emailed and queued
- $form->save_status($dbh);
-
- my %audittrail = ( tablename => 'ar',
- reference => $form->{invnumber},
- formname => $form->{type},
- action => 'posted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub process_assembly {
- my ($dbh, $form, $id, $totalqty) = @_;
-
- my $query = qq|SELECT a.parts_id, a.qty, p.assembly,
- p.partnumber, p.description, p.unit,
- p.inventory_accno_id, p.income_accno_id,
- p.expense_accno_id
- FROM assembly a
- JOIN parts p ON (a.parts_id = p.id)
- WHERE a.id = $id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- my $allocated = 0;
-
- $ref->{inventory_accno_id} *= 1;
- $ref->{expense_accno_id} *= 1;
-
- # multiply by number of assemblies
- $ref->{qty} *= $totalqty;
-
- if ($ref->{assembly}) {
- &process_assembly($dbh, $form, $ref->{parts_id}, $ref->{qty});
- next;
- } else {
- if ($ref->{inventory_accno_id}) {
- $allocated = &cogs($dbh, $form, $ref->{parts_id}, $ref->{qty});
- }
- }
-
- # save detail record for individual assembly item in invoice table
- $query = qq|INSERT INTO invoice (trans_id, description, parts_id, qty,
- sellprice, fxsellprice, allocated, assemblyitem, unit)
- VALUES
- ($form->{id}, |
- .$dbh->quote($ref->{description}).qq|,
- $ref->{parts_id}, $ref->{qty}, 0, 0, $allocated, 't', |
- .$dbh->quote($ref->{unit}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- }
-
- $sth->finish;
-
-}
-
-
-sub cogs {
- my ($dbh, $form, $id, $totalqty) = @_;
-
- my $query = qq|SELECT i.id, i.trans_id, i.qty, i.allocated, i.sellprice,
- (SELECT c.accno FROM chart c
- WHERE p.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE p.expense_accno_id = c.id) AS expense_accno
- FROM invoice i, parts p
- WHERE i.parts_id = p.id
- AND i.parts_id = $id
- AND (i.qty + i.allocated) < 0
- ORDER BY trans_id|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $allocated = 0;
- my $qty;
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- if (($qty = (($ref->{qty} * -1) - $ref->{allocated})) > $totalqty) {
- $qty = $totalqty;
- }
-
- $form->update_balance($dbh,
- "invoice",
- "allocated",
- qq|id = $ref->{id}|,
- $qty);
-
- # total expenses and inventory
- # sellprice is the cost of the item
- $linetotal = $form->round_amount($ref->{sellprice} * $qty, 2);
-
- # add to expense
- $form->{amount}{$form->{id}}{$ref->{expense_accno}} += -$linetotal;
-
- # deduct inventory
- $form->{amount}{$form->{id}}{$ref->{inventory_accno}} -= -$linetotal;
-
- # add allocated
- $allocated += -$qty;
-
- last if (($totalqty -= $qty) <= 0);
- }
-
- $sth->finish;
-
- $allocated;
-
-}
-
-
-
-sub reverse_invoice {
- my ($dbh, $form) = @_;
-
- # reverse inventory items
- my $query = qq|SELECT i.id, i.parts_id, i.qty, i.assemblyitem, p.assembly,
- p.inventory_accno_id
- FROM invoice i
- JOIN parts p ON (i.parts_id = p.id)
- WHERE i.trans_id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- if ($ref->{inventory_accno_id} || $ref->{assembly}) {
-
- # if the invoice item is not an assemblyitem adjust parts onhand
- if (!$ref->{assemblyitem}) {
- # adjust onhand in parts table
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $ref->{parts_id}|,
- $ref->{qty});
- }
-
- # loop if it is an assembly
- next if ($ref->{assembly});
-
- # de-allocated purchases
- $query = qq|SELECT id, trans_id, allocated
- FROM invoice
- WHERE parts_id = $ref->{parts_id}
- AND allocated > 0
- ORDER BY trans_id DESC|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $inhref = $sth->fetchrow_hashref(NAME_lc)) {
- $qty = $ref->{qty};
- if (($ref->{qty} - $inhref->{allocated}) > 0) {
- $qty = $inhref->{allocated};
- }
-
- # update invoice
- $form->update_balance($dbh,
- "invoice",
- "allocated",
- qq|id = $inhref->{id}|,
- $qty * -1);
-
- last if (($ref->{qty} -= $qty) <= 0);
- }
- $sth->finish;
- }
- }
-
- $sth->finish;
-
- # delete acc_trans
- $query = qq|DELETE FROM acc_trans
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete invoice entries
- $query = qq|DELETE FROM invoice
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-}
-
-
-
-sub delete_invoice {
- my ($self, $myconfig, $form, $spool) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- &reverse_invoice($dbh, $form);
-
- my %audittrail = ( tablename => 'ar',
- reference => $form->{invnumber},
- formname => $form->{type},
- action => 'deleted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- # delete AR record
- my $query = qq|DELETE FROM ar
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete spool files
- $query = qq|SELECT spoolfile FROM status
- WHERE trans_id = $form->{id}
- AND spoolfile IS NOT NULL|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $spoolfile;
- my @spoolfiles = ();
-
- while (($spoolfile) = $sth->fetchrow_array) {
- push @spoolfiles, $spoolfile;
- }
- $sth->finish;
-
- # delete status entries
- $query = qq|DELETE FROM status
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- if ($rc) {
- foreach $spoolfile (@spoolfiles) {
- unlink "$spool/$spoolfile" if $spoolfile;
- }
- }
-
- $rc;
-
-}
-
-
-
-sub retrieve_invoice {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
-
- if ($form->{id}) {
- # get default accounts and last invoice number
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies
- FROM defaults d|;
- } else {
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies, current_date AS transdate
- FROM defaults d|;
- }
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
-
- if ($form->{id}) {
-
- # retrieve invoice
- $query = qq|SELECT a.invnumber, a.ordnumber, a.quonumber,
- a.transdate, a.paid,
- a.shippingpoint, a.shipvia, a.terms, a.notes, a.intnotes,
- a.duedate, a.taxincluded, a.curr AS currency,
- a.employee_id, e.name AS employee, a.till, a.customer_id,
- a.language_code
- FROM ar a
- LEFT JOIN employee e ON (e.id = a.employee_id)
- WHERE a.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # get shipto
- $query = qq|SELECT * FROM shipto
- WHERE trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # retrieve individual items
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE p.inventory_accno_id = c.id)
- AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE p.income_accno_id = c.id)
- AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE p.expense_accno_id = c.id)
- AS expense_accno,
- i.description, i.qty, i.fxsellprice, i.sellprice,
- i.discount, i.parts_id AS id, i.unit, i.deliverydate,
- i.project_id, pr.projectnumber, i.serialnumber,
- p.partnumber, p.assembly, p.bin,
- pg.partsgroup, p.partsgroup_id, p.partnumber AS sku,
- p.listprice, p.lastcost, p.weight,
- t.description AS partsgrouptranslation
- FROM invoice i
- JOIN parts p ON (i.parts_id = p.id)
- LEFT JOIN project pr ON (i.project_id = pr.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN translation t ON (t.trans_id = p.partsgroup_id AND t.language_code = '$form->{language_code}')
- WHERE i.trans_id = $form->{id}
- AND NOT i.assemblyitem = '1'
- ORDER BY i.id|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- # foreign currency
- &exchangerate_defaults($dbh, $form);
-
- # query for price matrix
- my $pmh = &price_matrix_query($dbh, $form);
-
- # taxes
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN partstax pt ON (pt.chart_id = c.id)
- WHERE pt.parts_id = ?|;
- my $tth = $dbh->prepare($query) || $form->dberror($query);
-
- my $taxrate;
- my $ptref;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- ($decimalplaces) = ($ref->{fxsellprice} =~ /\.(\d+)/);
- $decimalplaces = length $decimalplaces;
- $decimalplaces = 2 unless $decimalplaces;
-
- $tth->execute($ref->{id});
-
- $ref->{taxaccounts} = "";
- $taxrate = 0;
-
- while ($ptref = $tth->fetchrow_hashref(NAME_lc)) {
- $ref->{taxaccounts} .= "$ptref->{accno} ";
- $taxrate += $form->{"$ptref->{accno}_rate"};
- }
- $tth->finish;
- chop $ref->{taxaccounts};
-
- # price matrix
- $ref->{sellprice} = ($ref->{fxsellprice} * $form->{$form->{currency}});
- &price_matrix($pmh, $ref, $form->{transdate}, $decimalplaces, $form, $myconfig, 1);
- $ref->{sellprice} = $ref->{fxsellprice};
-
- $ref->{partsgroup} = $ref->{partsgrouptranslation} if $ref->{partsgrouptranslation};
-
- push @{ $form->{invoice_details} }, $ref;
- }
- $sth->finish;
-
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub get_customer {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $dateformat = $myconfig->{dateformat};
- if ($myconfig->{dateformat} !~ /^y/) {
- my @a = split /\W/, $form->{transdate};
- $dateformat .= "yy" if (length $a[2] > 2);
- }
-
- if ($form->{transdate} !~ /\W/) {
- $dateformat = 'yyyymmdd';
- }
-
- my $duedate;
-
- if ($myconfig->{dbdriver} eq 'DB2') {
- $duedate = ($form->{transdate}) ? "date('$form->{transdate}') + c.terms DAYS" : "current_date + c.terms DAYS";
- } else {
- $duedate = ($form->{transdate}) ? "to_date('$form->{transdate}', '$dateformat') + c.terms" : "current_date + c.terms";
- }
-
- $form->{customer_id} *= 1;
- # get customer
- my $query = qq|SELECT c.name AS customer, c.discount, c.creditlimit, c.terms,
- c.email, c.cc, c.bcc, c.taxincluded,
- c.address1, c.address2, c.city, c.state,
- c.zipcode, c.country, c.curr AS currency, c.language_code,
- $duedate AS duedate, c.notes AS intnotes,
- b.discount AS tradediscount, b.description AS business,
- e.name AS employee, e.id AS employee_id
- FROM customer c
- LEFT JOIN business b ON (b.id = c.business_id)
- LEFT JOIN employee e ON (e.id = c.employee_id)
- WHERE c.id = $form->{customer_id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
-
- if ($form->{id}) {
- map { delete $ref->{$_} } qw(currency taxincluded employee employee_id intnotes);
- }
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # if no currency use defaultcurrency
- $form->{currency} = ($form->{currency}) ? $form->{currency} : $form->{defaultcurrency};
- $form->{exchangerate} = 0 if $form->{currency} eq $form->{defaultcurrency};
- if ($form->{transdate} && ($form->{currency} ne $form->{defaultcurrency})) {
- $form->{exchangerate} = $form->get_exchangerate($dbh, $form->{currency}, $form->{transdate}, "buy");
- }
- $form->{forex} = $form->{exchangerate};
-
- # if no employee, default to login
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh) unless $form->{employee_id};
-
- $form->{creditremaining} = $form->{creditlimit};
- $query = qq|SELECT SUM(amount - paid)
- FROM ar
- WHERE customer_id = $form->{customer_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{creditremaining}) -= $sth->fetchrow_array;
-
- $sth->finish;
-
- $query = qq|SELECT o.amount,
- (SELECT e.buy FROM exchangerate e
- WHERE e.curr = o.curr
- AND e.transdate = o.transdate)
- FROM oe o
- WHERE o.customer_id = $form->{customer_id}
- AND o.quotation = '0'
- AND o.closed = '0'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($amount, $exch) = $sth->fetchrow_array) {
- $exch = 1 unless $exch;
- $form->{creditremaining} -= $amount * $exch;
- }
- $sth->finish;
-
-
- # get shipto if we did not converted an order or invoice
- if (!$form->{shipto}) {
- map { delete $form->{$_} } qw(shiptoname shiptoaddress1 shiptoaddress2 shiptocity shiptostate shiptozipcode shiptocountry shiptocontact shiptophone shiptofax shiptoemail);
-
- $query = qq|SELECT * FROM shipto
- WHERE trans_id = $form->{customer_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
- }
-
- # get taxes we charge for this customer
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN customertax ct ON (ct.chart_id = c.id)
- WHERE ct.customer_id = $form->{customer_id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $customertax = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $customertax{$ref->{accno}} = 1;
- }
- $sth->finish;
-
- # get tax rates and description
- $query = qq|SELECT c.accno, c.description, t.rate, t.taxnumber
- FROM chart c
- JOIN tax t ON (c.id = t.chart_id)
- WHERE c.link LIKE '%CT_tax%'
- ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $form->{taxaccounts} = "";
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- if ($customertax{$ref->{accno}}) {
- $form->{"$ref->{accno}_rate"} = $ref->{rate};
- $form->{"$ref->{accno}_description"} = $ref->{description};
- $form->{"$ref->{accno}_taxnumber"} = $ref->{taxnumber};
- $form->{taxaccounts} .= "$ref->{accno} ";
- }
- }
- $sth->finish;
- chop $form->{taxaccounts};
-
- # setup last accounts used for this customer
- if (!$form->{id} && $form->{type} !~ /_(order|quotation)/) {
- $query = qq|SELECT c.accno, c.description, c.link, c.category,
- ac.project_id, p.projectnumber, a.department_id,
- d.description AS department
- FROM chart c
- JOIN acc_trans ac ON (ac.chart_id = c.id)
- JOIN ar a ON (a.id = ac.trans_id)
- LEFT JOIN project p ON (ac.project_id = p.id)
- LEFT JOIN department d ON (d.id = a.department_id)
- WHERE a.customer_id = $form->{customer_id}
- AND a.id IN (SELECT max(id) FROM ar
- WHERE customer_id = $form->{customer_id})|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $i = 0;
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{department} = $ref->{department};
- $form->{department_id} = $ref->{department_id};
-
- if ($ref->{link} =~ /_amount/) {
- $i++;
- $form->{"AR_amount_$i"} = "$ref->{accno}--$ref->{description}";
- $form->{"projectnumber_$i"} = "$ref->{projectnumber}--$ref->{project_id}";
- }
- if ($ref->{category} eq 'A') {
- $form->{AR} = $form->{AR_1} = "$ref->{accno}--$ref->{description}";
- }
- }
- $sth->finish;
- $form->{rowcount} = $i if ($i && !$form->{type});
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub retrieve_item {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $i = $form->{rowcount};
- my $null;
- my $var;
-
- my $where = "WHERE p.obsolete = '0' AND NOT p.income_accno_id IS NULL";
-
- if ($form->{"partnumber_$i"}) {
- $var = $form->like(lc $form->{"partnumber_$i"});
- $where .= " AND lower(p.partnumber) LIKE '$var'";
- }
- if ($form->{"description_$i"}) {
- $var = $form->like(lc $form->{"description_$i"});
- if ($form->{language_code}) {
- $where .= " AND lower(t1.description) LIKE '$var'";
- } else {
- $where .= " AND lower(p.description) LIKE '$var'";
- }
- }
-
- if ($form->{"partsgroup_$i"}) {
- ($null, $var) = split /--/, $form->{"partsgroup_$i"};
- $var *= 1;
- if ($var == 0) {
- # search by partsgroup, this is for the POS
- $where .= qq| AND pg.partsgroup = '$form->{"partsgroup_$i"}'|;
- } else {
- $where .= qq| AND p.partsgroup_id = $var|;
- }
- }
-
- if ($form->{"description_$i"}) {
- $where .= " ORDER BY 3";
- } else {
- $where .= " ORDER BY 2";
- }
-
- my $query = qq|SELECT p.id, p.partnumber, p.description, p.sellprice,
- p.listprice, p.lastcost,
- c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- p.unit, p.assembly, p.bin, p.onhand,
- pg.partsgroup, p.partsgroup_id, p.partnumber AS sku,
- p.weight,
- t1.description AS translation,
- t2.description AS grouptranslation
- FROM parts p
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id)
- LEFT JOIN translation t1 ON (t1.trans_id = p.id AND t1.language_code = '$form->{language_code}')
- LEFT JOIN translation t2 ON (t2.trans_id = p.partsgroup_id AND t2.language_code = '$form->{language_code}')
- $where|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref;
- my $ptref;
-
- # setup exchange rates
- &exchangerate_defaults($dbh, $form);
-
- # taxes
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN partstax pt ON (c.id = pt.chart_id)
- WHERE pt.parts_id = ?|;
- my $tth = $dbh->prepare($query) || $form->dberror($query);
-
-
- # price matrix
- my $pmh = &price_matrix_query($dbh, $form);
-
- my $transdate = $form->datetonum($form->{transdate}, $myconfig);
- my $decimalplaces;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- ($decimalplaces) = ($ref->{sellprice} =~ /\.(\d+)/);
- $decimalplaces = length $decimalplaces;
- $decimalplaces = 2 unless $decimalplaces;
-
- # get taxes for part
- $tth->execute($ref->{id});
-
- $ref->{taxaccounts} = "";
- while ($ptref = $tth->fetchrow_hashref(NAME_lc)) {
- $ref->{taxaccounts} .= "$ptref->{accno} ";
- }
- $tth->finish;
- chop $ref->{taxaccounts};
-
- # get matrix
- &price_matrix($pmh, $ref, $transdate, $decimalplaces, $form, $myconfig);
-
- $ref->{description} = $ref->{translation} if $ref->{translation};
- $ref->{partsgroup} = $ref->{grouptranslation} if $ref->{grouptranslation};
-
- push @{ $form->{item_list} }, $ref;
-
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub price_matrix_query {
- my ($dbh, $form) = @_;
-
- my $query = qq|SELECT p.*, g.pricegroup
- FROM partscustomer p
- LEFT JOIN pricegroup g ON (g.id = p.pricegroup_id)
- WHERE p.parts_id = ?
- AND p.customer_id = $form->{customer_id}
-
- UNION
-
- SELECT p.*, g.pricegroup
- FROM partscustomer p
- LEFT JOIN pricegroup g ON (g.id = p.pricegroup_id)
- JOIN customer c ON (c.pricegroup_id = g.id)
- WHERE p.parts_id = ?
- AND c.id = $form->{customer_id}
-
- UNION
-
- SELECT p.*, '' AS pricegroup
- FROM partscustomer p
- WHERE p.customer_id = 0
- AND p.pricegroup_id = 0
- AND p.parts_id = ?
-
- ORDER BY customer_id DESC, pricegroup_id DESC, pricebreak
-
- |;
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
- $sth;
-
-}
-
-
-sub price_matrix {
- my ($pmh, $ref, $transdate, $decimalplaces, $form, $myconfig, $init) = @_;
-
- $pmh->execute($ref->{id}, $ref->{id}, $ref->{id});
-
- $ref->{pricematrix} = "";
- my $customerprice;
- my $pricegroup;
- my $sellprice;
- my $mref;
-
- while ($mref = $pmh->fetchrow_hashref(NAME_lc)) {
-
- $customerprice = 0;
- $pricegroup = 0;
-
- # check date
- if ($mref->{validfrom}) {
- next if $transdate < $form->datetonum($mref->{validfrom}, $myconfig);
- }
- if ($mref->{validto}) {
- next if $transdate > $form->datetonum($mref->{validto}, $myconfig);
- }
-
- # convert price
- $sellprice = $form->round_amount($mref->{sellprice} * $form->{$mref->{curr}}, $decimalplaces);
-
- if ($mref->{customer_id}) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- $customerprice = 1;
- }
-
- if ($mref->{pricegroup_id}) {
- if (! $customerprice) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- $pricegroup = 1;
- }
- }
-
- if (! $customerprice && ! $pricegroup) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- }
-
- if ($form->{tradediscount}) {
- $ref->{sellprice} = $form->round_amount($ref->{sellprice} / (1 - $form->{tradediscount}), $decimalplaces);
- }
-
- }
- $pmh->finish;
-
- if ($ref->{pricematrix} !~ /^0:/) {
- if ($init) {
- $sellprice = $form->round_amount($ref->{sellprice}, $decimalplaces);
- } else {
- $sellprice = $form->round_amount($ref->{sellprice} * (1 - $form->{tradediscount}), $decimalplaces);
- }
- $ref->{pricematrix} = "0:$sellprice ".$ref->{pricematrix};
- }
- chop $ref->{pricematrix};
-
-}
-
-
-sub exchangerate_defaults {
- my ($dbh, $form) = @_;
-
- my $var;
-
- # get default currencies
- my $query = qq|SELECT substr(curr,1,3), curr FROM defaults|;
- my $eth = $dbh->prepare($query) || $form->dberror($query);
- $eth->execute;
- ($form->{defaultcurrency}, $form->{currencies}) = $eth->fetchrow_array;
- $eth->finish;
-
- $query = qq|SELECT buy
- FROM exchangerate
- WHERE curr = ?
- AND transdate = ?|;
- my $eth1 = $dbh->prepare($query) || $form->dberror($query);
-
- $query = qq~SELECT max(transdate || ' ' || buy || ' ' || curr)
- FROM exchangerate
- WHERE curr = ?~;
- my $eth2 = $dbh->prepare($query) || $form->dberror($query);
-
- # get exchange rates for transdate or max
- foreach $var (split /:/, substr($form->{currencies},4)) {
- $eth1->execute($var, $form->{transdate});
- ($form->{$var}) = $eth1->fetchrow_array;
- if (! $form->{$var} ) {
- $eth2->execute($var);
-
- ($form->{$var}) = $eth2->fetchrow_array;
- ($null, $form->{$var}) = split / /, $form->{$var};
- $form->{$var} = 1 unless $form->{$var};
- $eth2->finish;
- }
- $eth1->finish;
- }
-
- $form->{$form->{defaultcurrency}} = 1;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/Inifile.pm b/sql-ledger/SL/Inifile.pm
deleted file mode 100644
index 8ccf433..0000000
--- a/sql-ledger/SL/Inifile.pm
+++ /dev/null
@@ -1,88 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# routines to retrieve / manipulate win ini style files
-# ORDER is used to keep the elements in the order they appear in .ini
-#
-#=====================================================================
-
-package Inifile;
-
-
-sub new {
- my ($type, $file, $level) = @_;
-
- my $id = "";
- my $skip;
-
- $self ||= {};
- $type = ref($self) || $self;
-
- open FH, "$file" or Form->error("$file : $!");
-
- while (<FH>) {
- next if /^(#|;|\s)/;
- last if /^\./;
-
- chop;
-
- # strip comments
- s/\s*(#|;).*//g;
-
- # remove any trailing whitespace
- s/^\s*(.*?)\s*$/$1/;
-
- if (/^\[/) {
- s/(\[|\])//g;
-
- $id = $_;
-
- # if there is a level skip
- if ($skip = ($id !~ /^$level/)) {
- next;
- }
-
- push @{$self->{ORDER}}, $_;
-
- next;
-
- }
-
- if (!$skip) {
- # add key=value to $id
- my ($key, $value) = split /=/, $_, 2;
-
- $self->{$id}{$key} = $value;
- }
-
- }
- close FH;
-
- bless $self, $type;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/Mailer.pm b/sql-ledger/SL/Mailer.pm
deleted file mode 100644
index 712b1d7..0000000
--- a/sql-ledger/SL/Mailer.pm
+++ /dev/null
@@ -1,162 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# mailer package
-#
-#======================================================================
-
-package Mailer;
-
-sub new {
- my ($type) = @_;
- my $self = {};
-
- bless $self, $type;
-}
-
-
-sub send {
- my ($self, $out) = @_;
-
- my $boundary = time;
- $boundary = "SL-$self->{version}-$boundary";
- my $domain = $self->{from};
- $domain =~ s/(.*?\@|>)//g;
- my $msgid = "$boundary\@$domain";
-
- $self->{charset} = "ISO-8859-1" unless $self->{charset};
-
- if ($out) {
- open(OUT, $out) or return "$out : $!";
- } else {
- open(OUT, ">-") or return "STDOUT : $!";
- }
-
- $self->{contenttype} = "text/plain" unless $self->{contenttype};
-
- my ($cc, $bcc);
- $cc = "Cc: $self->{cc}\n" if $self->{cc};
- $bcc = "Bcc: $self->{bcc}\n" if $self->{bcc};
-
- foreach my $item (qw(from to cc bcc)) {
- $self->{$item} =~ s/\\_/_/g;
- $self->{$item} =~ s/\&lt;/</g;
- $self->{$item} =~ s/\$<\$/</g;
- $self->{$item} =~ s/\&gt;/>/g;
- $self->{$item} =~ s/\$>\$/>/g;
- }
-
- print OUT qq|From: $self->{from}
-To: $self->{to}
-${cc}${bcc}Subject: $self->{subject}
-Message-ID: <$msgid>
-X-Mailer: SQL-Ledger $self->{version}
-MIME-Version: 1.0
-|;
-
-
- if ($self->{attachments}) {
- print OUT qq|Content-Type: multipart/mixed; boundary="$boundary"
-
-|;
- if ($self->{message}) {
- print OUT qq|--${boundary}
-Content-Type: $self->{contenttype}; charset="$self->{charset}"
-
-$self->{message}
-
-|;
- }
-
- foreach my $attachment (@{ $self->{attachments} }) {
-
- my $application = ($attachment =~ /(^\w+$)|\.(html|text|txt|sql)$/) ? "text" : "application";
-
- open(IN, $attachment);
- if ($?) {
- close(OUT);
- return "$attachment : $!";
- }
-
- my $filename = $attachment;
- # strip path
- $filename =~ s/(.*\/|$self->{fileid})//g;
-
- print OUT qq|--${boundary}
-Content-Type: $application/$self->{format}; name="$filename"; charset="$self->{charset}"
-Content-Transfer-Encoding: BASE64
-Content-Disposition: attachment; filename="$filename"\n\n|;
-
- my $msg = "";
- while (<IN>) {;
- $msg .= $_;
- }
- print OUT &encode_base64($msg);
-
- close(IN);
-
- }
- print OUT qq|--${boundary}--\n|;
-
- } else {
- print OUT qq|Content-Type: $self->{contenttype}; charset="$self->{charset}"
-
-$self->{message}
-|;
- }
-
- close(OUT);
-
- return "";
-
-}
-
-
-sub encode_base64 ($;$) {
-
- # this code is from the MIME-Base64-2.12 package
- # Copyright 1995-1999,2001 Gisle Aas <gisle@ActiveState.com>
-
- my $res = "";
- my $eol = $_[1];
- $eol = "\n" unless defined $eol;
- pos($_[0]) = 0; # ensure start at the beginning
-
- $res = join '', map( pack('u',$_)=~ /^.(\S*)/, ($_[0]=~/(.{1,45})/gs));
-
- $res =~ tr|` -_|AA-Za-z0-9+/|; # `# help emacs
- # fix padding at the end
- my $padding = (3 - length($_[0]) % 3) % 3;
- $res =~ s/.{$padding}$/'=' x $padding/e if $padding;
- # break encoded string into lines of no more than 60 characters each
- if (length $eol) {
- $res =~ s/(.{1,60})/$1$eol/g;
- }
- return $res;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/Menu.pm b/sql-ledger/SL/Menu.pm
deleted file mode 100644
index 0df3067..0000000
--- a/sql-ledger/SL/Menu.pm
+++ /dev/null
@@ -1,121 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# routines for menu items
-#
-#=====================================================================
-
-package Menu;
-
-
-sub new {
- my ($type, $menufile, $level) = @_;
-
- use SL::Inifile;
- my $self = Inifile->new($menufile, $level);
-
- bless $self, $type if $self;
-
-}
-
-
-sub menuitem {
- my ($self, $myconfig, $form, $item, $level) = @_;
-
- my $module = $form->{script};
- my $action = "section_menu";
- my $target = "";
-
- if ($self->{$item}{module}) {
- $module = $self->{$item}{module};
- }
- if ($self->{$item}{action}) {
- $action = $self->{$item}{action};
- }
- if ($self->{$item}{target}) {
- $target = $self->{$item}{target};
- }
-
- $level = $form->escape($item);
- my $str = qq|<a href=$module?path=$form->{path}&action=$action&level=$level&login=$form->{login}&timeout=$form->{timeout}&sessionid=$form->{sessionid}|;
-
- my @vars = qw(module action target href);
-
- if ($self->{$item}{href}) {
- $str = qq|<a href=$self->{$item}{href}|;
- @vars = qw(module target href);
- }
-
- map { delete $self->{$item}{$_} } @vars;
-
- delete $self->{$item}{submenu};
-
- # add other params
- foreach my $key (keys %{ $self->{$item} }) {
- $str .= "&".$form->escape($key)."=";
- ($value, $conf) = split /=/, $self->{$item}{$key}, 2;
- $value = $myconfig->{$value}."/$conf" if ($conf);
- $str .= $form->escape($value);
- }
-
- $str .= qq|#id$form->{tag}| if $target eq 'acc_menu';
-
- if ($target) {
- $str .= qq| target=$target|;
- }
-
- $str .= qq|>|;
-
-}
-
-
-sub access_control {
- my ($self, $myconfig, $menulevel) = @_;
-
- my @menu = ();
-
- if ($menulevel eq "") {
- @menu = grep { !/--/ } @{ $self->{ORDER} };
- } else {
- @menu = grep { /^${menulevel}--/ } @{ $self->{ORDER} };
- }
-
- my @a = split /;/, $myconfig->{acs};
- my $excl = ();
-
- # remove --AR, --AP from array
- grep { ($a, $b) = split /--/; s/--$a$//; } @a;
-
- map { $excl{$_} = 1 } @a;
-
- @a = ();
- map { push @a, $_ unless $excl{$_} } (@menu);
-
- @a;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/Num2text.pm b/sql-ledger/SL/Num2text.pm
deleted file mode 100644
index 06eee71..0000000
--- a/sql-ledger/SL/Num2text.pm
+++ /dev/null
@@ -1,162 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# this is the default code for the Check package
-#
-#=====================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'Zero',
- 1 => 'One',
- 2 => 'Two',
- 3 => 'Three',
- 4 => 'Four',
- 5 => 'Five',
- 6 => 'Six',
- 7 => 'Seven',
- 8 => 'Eight',
- 9 => 'Nine',
- 10 => 'Ten',
- 11 => 'Eleven',
- 12 => 'Twelve',
- 13 => 'Thirteen',
- 14 => 'Fourteen',
- 15 => 'Fifteen',
- 16 => 'Sixteen',
- 17 => 'Seventeen',
- 18 => 'Eighteen',
- 19 => 'Nineteen',
- 20 => 'Twenty',
- 30 => 'Thirty',
- 40 => 'Forty',
- 50 => 'Fifty',
- 60 => 'Sixty',
- 70 => 'Seventy',
- 80 => 'Eighty',
- 90 => 'Ninety',
- 10**2 => 'Hundred',
- 10**3 => 'Thousand',
- 10**6 => 'Million',
- 10**9 => 'Billion',
- 10**12 => 'Trillion',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my @a;
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
-
- }
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } elsif ($numblock[$i] > 0) {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- push @textnumber, $self->{numbername}{$num};
- }
-
- pop @numblock;
-
- }
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= " ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/OE.pm b/sql-ledger/SL/OE.pm
deleted file mode 100644
index dfa424c..0000000
--- a/sql-ledger/SL/OE.pm
+++ /dev/null
@@ -1,1581 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Order entry module
-# Quotation
-#
-#======================================================================
-
-package OE;
-
-
-sub transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
- my $ordnumber = 'ordnumber';
- my $quotation = '0';
- my ($null, $department_id) = split /--/, $form->{department};
-
- my $department = " AND o.department_id = $department_id" if $department_id;
-
- my $rate = ($form->{vc} eq 'customer') ? 'buy' : 'sell';
-
- ($form->{transdatefrom}, $form->{transdateto}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- if ($form->{type} =~ /_quotation$/) {
- $quotation = '1';
- $ordnumber = 'quonumber';
- }
-
- my $number = $form->like(lc $form->{$ordnumber});
- my $name = $form->like(lc $form->{$form->{vc}});
-
- my $query = qq|SELECT o.id, o.ordnumber, o.transdate, o.reqdate,
- o.amount, ct.name, o.netamount, o.$form->{vc}_id,
- ex.$rate AS exchangerate,
- o.closed, o.quonumber, o.shippingpoint, o.shipvia,
- e.name AS employee, m.name AS manager, o.curr
- FROM oe o
- JOIN $form->{vc} ct ON (o.$form->{vc}_id = ct.id)
- LEFT JOIN employee e ON (o.employee_id = e.id)
- LEFT JOIN employee m ON (e.managerid = m.id)
- LEFT JOIN exchangerate ex ON (ex.curr = o.curr
- AND ex.transdate = o.transdate)
- WHERE o.quotation = '$quotation'
- $department|;
-
- my %ordinal = ( 'id' => 1,
- 'ordnumber' => 2,
- 'transdate' => 3,
- 'reqdate' => 4,
- 'name' => 6,
- 'quonumber' => 11,
- 'shipvia' => 13,
- 'employee' => 14,
- 'manager' => 15
- );
-
- my @a = (transdate, $ordnumber, name);
- push @a, "employee" if $form->{l_employee};
- if ($form->{type} !~ /(ship|receive)_order/) {
- push @a, "manager" if $form->{l_manager};
- }
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
-
- # build query if type eq (ship|receive)_order
- if ($form->{type} =~ /(ship|receive)_order/) {
-
- my ($warehouse, $warehouse_id) = split /--/, $form->{warehouse};
-
- $query = qq|SELECT DISTINCT o.id, o.ordnumber, o.transdate,
- o.reqdate, o.amount, ct.name, o.netamount, o.$form->{vc}_id,
- ex.$rate AS exchangerate,
- o.closed, o.quonumber, o.shippingpoint, o.shipvia,
- e.name AS employee, o.curr
- FROM oe o
- JOIN $form->{vc} ct ON (o.$form->{vc}_id = ct.id)
- JOIN orderitems oi ON (oi.trans_id = o.id)
- JOIN parts p ON (p.id = oi.parts_id)|;
-
- if ($warehouse_id && $form->{type} eq 'ship_order') {
- $query .= qq|
- JOIN inventory i ON (oi.parts_id = i.parts_id)
- |;
- }
-
- $query .= qq|
- LEFT JOIN employee e ON (o.employee_id = e.id)
- LEFT JOIN exchangerate ex ON (ex.curr = o.curr
- AND ex.transdate = o.transdate)
- WHERE o.quotation = '0'
- AND (p.inventory_accno_id > 0 OR p.assembly = '1')
- AND oi.qty != oi.ship
- $department|;
-
- if ($warehouse_id && $form->{type} eq 'ship_order') {
- $query .= qq|
- AND i.warehouse_id = $warehouse_id
- AND i.qty >= (oi.qty - oi.ship)
- |;
- }
-
- }
-
- if ($form->{"$form->{vc}_id"}) {
- $query .= qq| AND o.$form->{vc}_id = $form->{"$form->{vc}_id"}|;
- } else {
- if ($form->{$form->{vc}}) {
- $query .= " AND lower(ct.name) LIKE '$name'";
- }
- }
- if (!$form->{open} && !$form->{closed}) {
- $query .= " AND o.id = 0";
- } elsif (!($form->{open} && $form->{closed})) {
- $query .= ($form->{open}) ? " AND o.closed = '0'" : " AND o.closed = '1'";
- }
-
- if ($form->{$ordnumber}) {
- $query .= " AND lower($ordnumber) LIKE '$number'";
- }
- if ($form->{shipvia}) {
- $var = $form->like(lc $form->{shipvia});
- $query .= " AND lower(o.shipvia) LIKE '$var'";
- }
- if ($form->{transdatefrom}) {
- $query .= " AND o.transdate >= '$form->{transdatefrom}'";
- }
- if ($form->{transdateto}) {
- $query .= " AND o.transdate <= '$form->{transdateto}'";
- }
-
- $query .= " ORDER by $sortorder";
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my %id = ();
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- push @{ $form->{OE} }, $ref if $ref->{id} != $id{$ref->{id}};
- $id{$ref->{id}} = $ref->{id};
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub save {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off autocommit
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
- my $null;
- my $exchangerate = 0;
-
- ($null, $form->{employee_id}) = split /--/, $form->{employee};
- unless ($form->{employee_id}) {
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
- $form->{employee} = "$form->{employee}--$form->{employee_id}";
- }
-
- my $ml = ($form->{type} eq 'sales_order') ? 1 : -1;
-
- if ($form->{id}) {
-
- &adj_onhand($dbh, $form, $ml) if $form->{type} =~ /_order$/;
-
- $query = qq|DELETE FROM orderitems
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- } else {
- my $uid = time;
- $uid .= $form->{login};
-
- $query = qq|INSERT INTO oe (ordnumber, employee_id)
- VALUES ('$uid', $form->{employee_id})|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM oe
- WHERE ordnumber = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{id}) = $sth->fetchrow_array;
- $sth->finish;
-
- }
-
- my $amount;
- my $linetotal;
- my $discount;
- my $project_id;
- my $taxrate;
- my $taxamount;
- my $fxsellprice;
- my %taxbase;
- my @taxaccounts;
- my %taxaccounts;
- my $netamount = 0;
-
- for my $i (1 .. $form->{rowcount}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount($myconfig, $form->{"${_}_$i"}) } qw(qty ship);
-
- $form->{"discount_$i"} = $form->parse_amount($myconfig, $form->{"discount_$i"}) / 100;
- $form->{"sellprice_$i"} = $form->parse_amount($myconfig, $form->{"sellprice_$i"});
-
- if ($form->{"qty_$i"}) {
-
- $fxsellprice = $form->{"sellprice_$i"};
-
- my ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $discount = $form->round_amount($form->{"sellprice_$i"} * $form->{"discount_$i"}, $decimalplaces);
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"} - $discount, $decimalplaces);
-
- $form->{"inventory_accno_$i"} *= 1;
- $form->{"expense_accno_$i"} *= 1;
-
- $linetotal = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2);
-
- @taxaccounts = split / /, $form->{"taxaccounts_$i"};
- $taxrate = 0;
- $taxdiff = 0;
-
- map { $taxrate += $form->{"${_}_rate"} } @taxaccounts;
-
- if ($form->{taxincluded}) {
- $taxamount = $linetotal * $taxrate / (1 + $taxrate);
- $taxbase = $linetotal - $taxamount;
- # we are not keeping a natural price, do not round
- $form->{"sellprice_$i"} = $form->{"sellprice_$i"} * (1 / (1 + $taxrate));
- } else {
- $taxamount = $linetotal * $taxrate;
- $taxbase = $linetotal;
- }
-
- if (@taxaccounts && $form->round_amount($taxamount, 2) == 0) {
- if ($form->{taxincluded}) {
- foreach $item (@taxaccounts) {
- $taxamount = $form->round_amount($linetotal * $form->{"${item}_rate"} / (1 + abs($form->{"${item}_rate"})), 2);
-
- $taxaccounts{$item} += $taxamount;
- $taxdiff += $taxamount;
-
- $taxbase{$item} += $taxbase;
- }
- $taxaccounts{$taxaccounts[0]} += $taxdiff;
- } else {
- foreach $item (@taxaccounts) {
- $taxaccounts{$item} += $linetotal * $form->{"${item}_rate"};
- $taxbase{$item} += $taxbase;
- }
- }
- } else {
- foreach $item (@taxaccounts) {
- $taxaccounts{$item} += $taxamount * $form->{"${item}_rate"} / $taxrate;
- $taxbase{$item} += $taxbase;
- }
- }
-
-
- $netamount += $form->{"sellprice_$i"} * $form->{"qty_$i"};
-
- $project_id = 'NULL';
- if ($form->{"projectnumber_$i"}) {
- ($null, $project_id) = split /--/, $form->{"projectnumber_$i"};
- $project_id *= 1;
- }
-
- # save detail record in orderitems table
- $query = qq|INSERT INTO orderitems (|;
- $query .= "id, " if $form->{"orderitems_id_$i"};
- $query .= qq|trans_id, parts_id, description, qty, sellprice, discount,
- unit, reqdate, project_id, serialnumber, ship)
- VALUES (|;
- $query .= qq|$form->{"orderitems_id_$i"},| if $form->{"orderitems_id_$i"};
- $query .= qq|$form->{id}, $form->{"id_$i"}, |
- .$dbh->quote($form->{"description_$i"}).qq|,
- $form->{"qty_$i"}, $fxsellprice, $form->{"discount_$i"}, |
- .$dbh->quote($form->{"unit_$i"}).qq|, |
- .$form->dbquote($form->{"reqdate_$i"}, SQL_DATE).qq|,
- $project_id, |
- .$dbh->quote($form->{"serialnumber_$i"}).qq|,
- $form->{"ship_$i"})|;
- $dbh->do($query) || $form->dberror($query);
-
- $form->{"sellprice_$i"} = $fxsellprice;
- $form->{"discount_$i"} *= 100;
- }
- }
-
-
- # set values which could be empty
- map { $form->{$_} *= 1 } qw(vendor_id customer_id taxincluded closed quotation);
-
- # add up the tax
- my $tax = 0;
- map { $tax += $form->round_amount($taxaccounts{$_}, 2) } keys %taxaccounts;
-
- $amount = $form->round_amount($netamount + $tax, 2);
- $netamount = $form->round_amount($netamount, 2);
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- $form->{exchangerate} = 1;
- } else {
- $exchangerate = $form->check_exchangerate($myconfig, $form->{currency}, $form->{transdate}, ($form->{vc} eq 'customer') ? 'buy' : 'sell');
- }
-
- $form->{exchangerate} = ($exchangerate) ? $exchangerate : $form->parse_amount($myconfig, $form->{exchangerate});
-
- my $quotation = ($form->{type} =~ /_order$/) ? '0' : '1';
-
- ($null, $form->{department_id}) = split(/--/, $form->{department});
- $form->{department_id} *= 1;
-
- # save OE record
- $query = qq|UPDATE oe set
- ordnumber = |.$dbh->quote($form->{ordnumber}).qq|,
- quonumber = |.$dbh->quote($form->{quonumber}).qq|,
- transdate = '$form->{transdate}',
- vendor_id = $form->{vendor_id},
- customer_id = $form->{customer_id},
- amount = $amount,
- netamount = $netamount,
- reqdate = |.$form->dbquote($form->{reqdate}, SQL_DATE).qq|,
- taxincluded = '$form->{taxincluded}',
- shippingpoint = |.$dbh->quote($form->{shippingpoint}).qq|,
- shipvia = |.$dbh->quote($form->{shipvia}).qq|,
- notes = |.$dbh->quote($form->{notes}).qq|,
- intnotes = |.$dbh->quote($form->{intnotes}).qq|,
- curr = '$form->{currency}',
- closed = '$form->{closed}',
- quotation = '$quotation',
- department_id = $form->{department_id},
- employee_id = $form->{employee_id},
- language_code = '$form->{language_code}'
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $form->{ordtotal} = $amount;
-
- # add shipto
- $form->{name} = $form->{$form->{vc}};
- $form->{name} =~ s/--$form->{"$form->{vc}_id"}//;
- $form->add_shipto($dbh, $form->{id});
-
- # save printed, emailed, queued
- $form->save_status($dbh);
-
- if (($form->{currency} ne $form->{defaultcurrency}) && !$exchangerate) {
- if ($form->{vc} eq 'customer') {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, $form->{exchangerate}, 0);
- }
- if ($form->{vc} eq 'vendor') {
- $form->update_exchangerate($dbh, $form->{currency}, $form->{transdate}, 0, $form->{exchangerate});
- }
- }
-
-
- if ($form->{type} =~ /_order$/) {
- # adjust onhand
- &adj_onhand($dbh, $form, $ml * -1);
- &adj_inventory($dbh, $myconfig, $form);
- }
-
- my %audittrail = ( tablename => 'oe',
- reference => ($form->{type} =~ /_order$/) ? $form->{ordnumber} : $form->{quonumber},
- formname => $form->{type},
- action => 'saved',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-
-sub delete {
- my ($self, $myconfig, $form, $spool) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- # delete spool files
- my $query = qq|SELECT spoolfile FROM status
- WHERE trans_id = $form->{id}
- AND spoolfile IS NOT NULL|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $spoolfile;
- my @spoolfiles = ();
-
- while (($spoolfile) = $sth->fetchrow_array) {
- push @spoolfiles, $spoolfile;
- }
- $sth->finish;
-
-
- $query = qq|SELECT o.parts_id, o.ship, p.inventory_accno_id
- FROM orderitems o
- JOIN parts p ON (p.id = o.parts_id)
- WHERE trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- if ($form->{type} =~ /_order$/) {
- $ml = ($form->{type} eq 'purchase_order') ? -1 : 1;
- while (my ($id, $ship, $inv) = $sth->fetchrow_array) {
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $id|,
- $ship * $ml) if $inv;
- }
- }
- $sth->finish;
-
- # delete inventory
- $query = qq|DELETE FROM inventory
- WHERE oe_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete status entries
- $query = qq|DELETE FROM status
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete OE record
- $query = qq|DELETE FROM oe
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- # delete individual entries
- $query = qq|DELETE FROM orderitems
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM shipto
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- my %audittrail = ( tablename => 'oe',
- reference => ($form->{type} =~ /_order$/) ? $form->{ordnumber} : $form->{quonumber},
- formname => $form->{type},
- action => 'deleted',
- id => $form->{id} );
-
- $form->audittrail($dbh, "", \%audittrail);
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- if ($rc) {
- foreach $spoolfile (@spoolfiles) {
- unlink "$spool/$spoolfile" if $spoolfile;
- }
- }
-
- $rc;
-
-}
-
-
-
-sub retrieve {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query;
- my $var;
-
- if ($form->{id}) {
- # get default accounts and last order number
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies
- FROM defaults d|;
- } else {
- $query = qq|SELECT (SELECT c.accno FROM chart c
- WHERE d.inventory_accno_id = c.id) AS inventory_accno,
- (SELECT c.accno FROM chart c
- WHERE d.income_accno_id = c.id) AS income_accno,
- (SELECT c.accno FROM chart c
- WHERE d.expense_accno_id = c.id) AS expense_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c
- WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
- d.curr AS currencies,
- current_date AS transdate
- FROM defaults d|;
- }
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
-
- if ($form->{id}) {
-
- # retrieve order
- $query = qq|SELECT o.ordnumber, o.transdate, o.reqdate,
- o.taxincluded, o.shippingpoint, o.shipvia, o.notes, o.intnotes,
- o.curr AS currency, e.name AS employee, o.employee_id,
- o.$form->{vc}_id, cv.name AS $form->{vc}, o.amount AS invtotal,
- o.closed, o.reqdate, o.quonumber, o.department_id,
- d.description AS department, o.language_code
- FROM oe o
- JOIN $form->{vc} cv ON (o.$form->{vc}_id = cv.id)
- LEFT JOIN employee e ON (o.employee_id = e.id)
- LEFT JOIN department d ON (o.department_id = d.id)
- WHERE o.id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
-
- $query = qq|SELECT * FROM shipto
- WHERE trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
- $sth->finish;
-
- # get printed, emailed and queued
- $query = qq|SELECT s.printed, s.emailed, s.spoolfile, s.formname
- FROM status s
- WHERE s.trans_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{printed} .= "$ref->{formname} " if $ref->{printed};
- $form->{emailed} .= "$ref->{formname} " if $ref->{emailed};
- $form->{queued} .= "$ref->{formname} $ref->{spoolfile} " if $ref->{spoolfile};
- }
- $sth->finish;
- map { $form->{$_} =~ s/ +$//g } qw(printed emailed queued);
-
-
- my %oid = ( 'Pg' => 'oid',
- 'PgPP' => 'oid',
- 'Oracle' => 'rowid',
- 'DB2' => '1=1'
- );
-
- # retrieve individual items
- $query = qq|SELECT o.id AS orderitems_id,
- c1.accno AS inventory_accno,
- c2.accno AS income_accno,
- c3.accno AS expense_accno,
- p.partnumber, p.assembly, o.description, o.qty,
- o.sellprice, o.parts_id AS id, o.unit, o.discount, p.bin,
- o.reqdate, o.project_id, o.serialnumber, o.ship,
- pr.projectnumber,
- pg.partsgroup, p.partsgroup_id, p.partnumber AS sku,
- p.listprice, p.lastcost, p.weight,
- t.description AS partsgrouptranslation
- FROM orderitems o
- JOIN parts p ON (o.parts_id = p.id)
- LEFT JOIN chart c1 ON (p.inventory_accno_id = c1.id)
- LEFT JOIN chart c2 ON (p.income_accno_id = c2.id)
- LEFT JOIN chart c3 ON (p.expense_accno_id = c3.id)
- LEFT JOIN project pr ON (o.project_id = pr.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- LEFT JOIN translation t ON (t.trans_id = p.partsgroup_id AND t.language_code = '$form->{language_code}')
- WHERE o.trans_id = $form->{id}
- ORDER BY o.$oid{$myconfig->{dbdriver}}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- # foreign exchange rates
- &exchangerate_defaults($dbh, $form);
-
- # query for price matrix
- my $pmh = &price_matrix_query($dbh, $form);
-
- # taxes
- $query = qq|SELECT c.accno
- FROM chart c
- JOIN partstax pt ON (pt.chart_id = c.id)
- WHERE pt.parts_id = ?|;
- my $tth = $dbh->prepare($query) || $form->dberror($query);
-
- my $taxrate;
- my $ptref;
- my $sellprice;
- my $listprice;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- ($decimalplaces) = ($ref->{sellprice} =~ /\.(\d+)/);
- $decimalplaces = length $decimalplaces;
- $decimalplaces = 2 unless $decimalplaces;
-
- $tth->execute($ref->{id});
- $ref->{taxaccounts} = "";
- $taxrate = 0;
-
- while ($ptref = $tth->fetchrow_hashref(NAME_lc)) {
- $ref->{taxaccounts} .= "$ptref->{accno} ";
- $taxrate += $form->{"$ptref->{accno}_rate"};
- }
- $tth->finish;
- chop $ref->{taxaccounts};
-
- # preserve prices
- $sellprice = $ref->{sellprice};
- $listprice = $ref->{listprice};
-
- # multiply by exchangerate
- $ref->{sellprice} = $form->round_amount($ref->{sellprice} * $form->{$form->{currency}}, $decimalplaces);
- $ref->{listprice} = $form->round_amount($ref->{listprice} * $form->{$form->{currency}}, $decimalplaces);
-
- # partnumber and price matrix
- &price_matrix($pmh, $ref, $form->{transdate}, $decimalplaces, $form, $myconfig, 1);
-
- $ref->{sellprice} = $sellprice;
- $ref->{listprice} = $listprice;
-
- $ref->{partsgroup} = $ref->{partsgrouptranslation} if $ref->{partsgrouptranslation};
-
- push @{ $form->{form_details} }, $ref;
-
- }
- $sth->finish;
-
- } else {
-
- # get last name used
- $form->lastname_used($dbh, $myconfig, $form->{vc}) unless $form->{"$form->{vc}_id"};
- delete $form->{notes};
-
- }
-
- $dbh->disconnect;
-
-}
-
-
-sub price_matrix_query {
- my ($dbh, $form) = @_;
-
- my $query;
- my $sth;
-
- if ($form->{customer_id}) {
- $query = qq|SELECT p.*, g.pricegroup
- FROM partscustomer p
- LEFT JOIN pricegroup g ON (g.id = p.pricegroup_id)
- WHERE p.parts_id = ?
- AND p.customer_id = $form->{customer_id}
-
- UNION
-
- SELECT p.*, g.pricegroup
- FROM partscustomer p
- LEFT JOIN pricegroup g ON (g.id = p.pricegroup_id)
- JOIN customer c ON (c.pricegroup_id = g.id)
- WHERE p.parts_id = ?
- AND c.id = $form->{customer_id}
-
- UNION
-
- SELECT p.*, '' AS pricegroup
- FROM partscustomer p
- WHERE p.customer_id = 0
- AND p.pricegroup_id = 0
- AND p.parts_id = ?
-
- ORDER BY customer_id DESC, pricegroup_id DESC, pricebreak
- |;
- $sth = $dbh->prepare($query) || $form->dberror($query);
- }
-
- if ($form->{vendor_id}) {
- # price matrix and vendor's partnumber
- $query = qq|SELECT partnumber
- FROM partsvendor
- WHERE parts_id = ?
- AND vendor_id = $form->{vendor_id}|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
- }
-
- $sth;
-
-}
-
-
-sub price_matrix {
- my ($pmh, $ref, $transdate, $decimalplaces, $form, $myconfig, $init) = @_;
-
- $ref->{pricematrix} = "";
- my $customerprice = 0;
- my $pricegroup = 0;
- my $sellprice;
- my $mref;
-
- # depends if this is a customer or vendor
- if ($form->{customer_id}) {
- $pmh->execute($ref->{id}, $ref->{id}, $ref->{id});
-
- while ($mref = $pmh->fetchrow_hashref(NAME_lc)) {
-
- # check date
- if ($mref->{validfrom}) {
- next if $transdate < $form->datetonum($mref->{validfrom}, $myconfig);
- }
- if ($mref->{validto}) {
- next if $transdate > $form->datetonum($mref->{validto}, $myconfig);
- }
-
- # convert price
- $sellprice = $form->round_amount($mref->{sellprice} * $form->{$mref->{curr}}, $decimalplaces);
-
- if ($mref->{customer_id}) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- $customerprice = 1;
- }
-
- if ($mref->{pricegroup_id}) {
- if (! $customerprice) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- $pricegroup = 1;
- }
- }
-
- if (! $customerprice && ! $pricegroup) {
- $ref->{sellprice} = $sellprice unless $mref->{pricebreak};
- $ref->{pricematrix} .= "$mref->{pricebreak}:$sellprice ";
- }
-
- }
- $pmh->finish;
-
- if ($ref->{pricematrix} !~ /^0:/) {
- if ($init) {
- $sellprice = $form->round_amount($ref->{sellprice}, $decimalplaces);
- } else {
- $sellprice = $form->round_amount($ref->{sellprice} * (1 - $form->{tradediscount}), $decimalplaces);
- }
- $ref->{pricematrix} = "0:$sellprice ".$ref->{pricematrix};
- }
- chop $ref->{pricematrix};
-
- }
-
-
- if ($form->{vendor_id}) {
- $pmh->execute($ref->{id});
-
- $mref = $pmh->fetchrow_hashref(NAME_lc);
-
- if ($mref->{partnumber}) {
- $ref->{partnumber} = $mref->{partnumber};
- }
-
- if ($mref->{lastcost}) {
- # do a conversion
- $ref->{sellprice} = $form->round_amount($mref->{lastcost} * $form->{$mref->{curr}}, $decimalplaces);
- }
- $pmh->finish;
-
- $ref->{sellprice} *= 1;
-
- # add 0:price to matrix
- $ref->{pricematrix} = "0:$ref->{sellprice}";
-
- }
-
-}
-
-
-sub exchangerate_defaults {
- my ($dbh, $form) = @_;
-
- my $var;
- my $buysell = ($form->{vc} eq "customer") ? "buy" : "sell";
-
- # get default currencies
- my $query = qq|SELECT substr(curr,1,3), curr FROM defaults|;
- my $eth = $dbh->prepare($query) || $form->dberror($query);
- $eth->execute;
- ($form->{defaultcurrency}, $form->{currencies}) = $eth->fetchrow_array;
- $eth->finish;
-
- $query = qq|SELECT $buysell
- FROM exchangerate
- WHERE curr = ?
- AND transdate = ?|;
- my $eth1 = $dbh->prepare($query) || $form->dberror($query);
- $query = qq~SELECT max(transdate || ' ' || $buysell || ' ' || curr)
- FROM exchangerate
- WHERE curr = ?~;
- my $eth2 = $dbh->prepare($query) || $form->dberror($query);
-
- # get exchange rates for transdate or max
- foreach $var (split /:/, substr($form->{currencies},4)) {
- $eth1->execute($var, $form->{transdate});
- ($form->{$var}) = $eth1->fetchrow_array;
- if (! $form->{$var} ) {
- $eth2->execute($var);
-
- ($form->{$var}) = $eth2->fetchrow_array;
- ($null, $form->{$var}) = split / /, $form->{$var};
- $form->{$var} = 1 unless $form->{$var};
- $eth2->finish;
- }
- $eth1->finish;
- }
-
- $form->{$form->{defaultcurrency}} = 1;
-
-}
-
-
-sub order_details {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
- my $query;
- my $sth;
-
- my $item;
- my $i;
- my @sortlist = ();
- my $projectnumber;
- my $projectnumber_id;
- my $translation;
- my $partsgroup;
-
- my %oid = ( 'Pg' => 'oid',
- 'PgPP' => 'oid',
- 'Oracle' => 'rowid',
- 'DB2' => '1=1'
- );
-
- # sort items by project and partsgroup
- for $i (1 .. $form->{rowcount}) {
- $projectnumber = "";
- $partsgroup = "";
- $projectnumber_id = 0;
- if ($form->{"projectnumber_$i"} && $form->{groupprojectnumber}) {
- ($projectnumber, $projectnumber_id) = split /--/, $form->{"projectnumber_$i"};
- }
- if ($form->{"partsgroup_$i"} && $form->{grouppartsgroup}) {
- ($partsgroup) = split /--/, $form->{"partsgroup_$i"};
- }
- push @sortlist, [ $i, "$projectnumber$partsgroup", $projectnumber, $projectnumber_id, $partsgroup ];
-
- # sort the whole thing by project and group
- @sortlist = sort { $a->[1] cmp $b->[1] } @sortlist;
-
- }
-
- # if there is a warehouse limit picking
- if ($form->{warehouse_id} && $form->{formname} =~ /(pick|packing)_list/) {
- # run query to check for inventory
- $query = qq|SELECT sum(qty) AS qty
- FROM inventory
- WHERE parts_id = ?
- AND warehouse_id = ?|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- for $i (1 .. $form->{rowcount}) {
- $sth->execute($form->{"id_$i"}, $form->{warehouse_id}) || $form->dberror;
-
- ($qty) = $sth->fetchrow_array;
- $sth->finish;
-
- $form->{"qty_$i"} = 0 if $qty == 0;
-
- if ($form->parse_amount($myconfig, $form->{"ship_$i"}) > $qty) {
- $form->{"ship_$i"} = $form->format_amount($myconfig, $qty);
- }
- }
- }
-
- my @taxaccounts;
- my %taxaccounts;
- my $taxrate;
- my $taxamount;
- my $taxbase;
- my $taxdiff;
-
- $query = qq|SELECT p.description, t.description
- FROM project p
- LEFT JOIN translation t ON (t.trans_id = p.id AND t.language_code = '$form->{language_code}')
- WHERE id = ?|;
- my $prh = $dbh->prepare($query) || $form->dberror($query);
-
- my $runningnumber = 1;
- my $sameitem = "";
- my $subtotal;
- my $k = scalar @sortlist;
- my $j = 0;
-
- foreach $item (@sortlist) {
- $i = $item->[0];
- $j++;
-
- if ($form->{groupprojectnumber} || $form->{grouppartsgroup}) {
- if ($item->[1] ne $sameitem) {
-
- $projectnumber = "";
- if ($form->{groupprojectnumber} && $item->[2]) {
- # get project description
- $prh->execute($item->[3]) || $form->dberror($query);
-
- ($projectnumber, $translation) = $prh->fetchrow_array;
- $prh->finish;
-
- $projectnumber = ($translation) ? "$item->[2], $translation" : "$item->[2], $projectnumber";
- }
-
- if ($form->{grouppartsgroup} && $item->[4]) {
- $projectnumber .= " / " if $projectnumber;
- $projectnumber .= $item->[4];
- }
-
- $form->{projectnumber} = $projectnumber;
- $form->format_string(projectnumber);
-
- push(@{ $form->{description} }, qq|$form->{projectnumber}|);
- $sameitem = $item->[1];
-
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku qty ship unit bin serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate linetotal weight);
- }
- }
-
- $form->{"qty_$i"} = $form->parse_amount($myconfig, $form->{"qty_$i"});
-
- if ($form->{"qty_$i"} != 0) {
-
- $form->{totalqty} += $form->{"qty_$i"};
- $form->{totalship} += $form->{"ship_$i"};
- $form->{totalweight} += ($form->{"weight_$i"} * $form->{"qty_$i"});
-
- # add number, description and qty to $form->{number}, ....
- push(@{ $form->{runningnumber} }, $runningnumber++);
- push(@{ $form->{number} }, qq|$form->{"partnumber_$i"}|);
- push(@{ $form->{sku} }, qq|$form->{"sku_$i"}|);
- push(@{ $form->{description} }, qq|$form->{"description_$i"}|);
- push(@{ $form->{qty} }, $form->format_amount($myconfig, $form->{"qty_$i"}));
- push(@{ $form->{ship} }, $form->format_amount($myconfig, $form->{"ship_$i"}));
- push(@{ $form->{unit} }, qq|$form->{"unit_$i"}|);
- push(@{ $form->{bin} }, qq|$form->{"bin_$i"}|);
- push(@{ $form->{serialnumber} }, qq|$form->{"serialnumber_$i"}|);
- push(@{ $form->{reqdate} }, qq|$form->{"reqdate_$i"}|);
- push(@{ $form->{projectnumber} }, qq|$form->{"projectnumber_$i"}|);
-
- push(@{ $form->{sellprice} }, $form->{"sellprice_$i"});
-
- push(@{ $form->{listprice} }, $form->{"listprice_$i"});
-
- push(@{ $form->{weight} }, $form->{"weight_$i"});
-
- my $sellprice = $form->parse_amount($myconfig, $form->{"sellprice_$i"});
- my ($dec) = ($sellprice =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- my $discount = $form->round_amount($sellprice * $form->parse_amount($myconfig, $form->{"discount_$i"}) / 100, $decimalplaces);
-
- # keep a netprice as well, (sellprice - discount)
- $form->{"netprice_$i"} = $sellprice - $discount;
-
- my $linetotal = $form->round_amount($form->{"qty_$i"} * $form->{"netprice_$i"}, 2);
-
- push(@{ $form->{netprice} }, ($form->{"netprice_$i"} != 0) ? $form->format_amount($myconfig, $form->{"netprice_$i"}, $decimalplaces) : " ");
-
- $discount = ($discount != 0) ? $form->format_amount($myconfig, $discount * -1, $decimalplaces) : " ";
- $linetotal = ($linetotal != 0) ? $linetotal : " ";
-
- push(@{ $form->{discount} }, $discount);
- push(@{ $form->{discountrate} }, $form->format_amount($myconfig, $form->{"discount_$i"}));
-
- $form->{ordtotal} += $linetotal;
-
- # this is for the subtotals for grouping
- $subtotal += $linetotal;
-
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $linetotal, 2));
-
- $taxrate = 0;
-
- map { $taxrate += $form->{"${_}_rate"} } split / /, $form->{"taxaccounts_$i"};
-
- if ($form->{taxincluded}) {
- # calculate tax
- $taxamount = $linetotal * $taxrate / (1 + $taxrate);
- $taxbase = $linetotal / (1 + $taxrate);
- } else {
- $taxamount = $linetotal * $taxrate;
- $taxbase = $linetotal;
- }
-
-
- if ($form->round_amount($taxamount, 2) != 0) {
- foreach my $item (split / /, $form->{"taxaccounts_$i"}) {
- $taxaccounts{$item} += $taxamount * $form->{"${item}_rate"} / $taxrate;
- $taxbase{$item} += $taxbase;
- }
- }
-
- if ($form->{"assembly_$i"}) {
- $form->{stagger} = -1;
- &assembly_details($dbh, $form, $form->{"id_$i"}, $oid{$myconfig->{dbdriver}}, $form->{"qty_$i"});
- }
-
- }
-
- # add subtotal
- if ($form->{groupprojectnumber} || $form->{grouppartsgroup}) {
- if ($subtotal) {
- if ($j < $k) {
- # look at next item
- if ($sortlist[$j]->[1] ne $sameitem) {
-
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku qty ship unit bin serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate weight);
-
- push(@{ $form->{description} }, $form->{groupsubtotaldescription});
-
- if (exists $form->{groupsubtotaldescription}) {
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $subtotal, 2));
- } else {
- push(@{ $form->{linetotal} }, "");
- }
-
- $subtotal = 0;
- }
-
- } else {
-
- # got last item
- if (exists $form->{groupsubtotaldescription}) {
-
- map { push(@{ $form->{$_} }, "") } qw(runningnumber number sku qty ship unit bin serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate weight);
-
- push(@{ $form->{description} }, $form->{groupsubtotaldescription});
- push(@{ $form->{linetotal} }, $form->format_amount($myconfig, $subtotal, 2));
- }
- }
- }
- }
- }
-
-
- my $tax = 0;
- foreach $item (sort keys %taxaccounts) {
- if ($form->round_amount($taxaccounts{$item}, 2) != 0) {
- push(@{ $form->{taxbase} }, $form->format_amount($myconfig, $taxbase{$item}, 2));
-
- $tax += $taxamount = $form->round_amount($taxaccounts{$item}, 2);
-
- push(@{ $form->{tax} }, $form->format_amount($myconfig, $taxamount, 2));
- push(@{ $form->{taxdescription} }, $form->{"${item}_description"});
- push(@{ $form->{taxrate} }, $form->format_amount($myconfig, $form->{"${item}_rate"} * 100));
- push(@{ $form->{taxnumber} }, $form->{"${item}_taxnumber"});
- }
- }
-
- map { $form->{$_} = $form->format_amount($myconfig, $form->{$_}) } qw(totalqty totalship totalweight);
- $form->{subtotal} = $form->format_amount($myconfig, $form->{ordtotal}, 2);
- $form->{ordtotal} = ($form->{taxincluded}) ? $form->{ordtotal} : $form->{ordtotal} + $tax;
-
- use SL::CP;
- my $c;
- if ($form->{language_code}) {
- $c = new CP $form->{language_code};
- } else {
- $c = new CP $myconfig->{countrycode};
- }
- $c->init;
- my $whole;
- ($whole, $form->{decimal}) = split /\./, $form->{ordtotal};
- $form->{decimal} .= "00";
- $form->{decimal} = substr($form->{decimal}, 0, 2);
- $form->{text_amount} = $c->num2text($whole);
-
- # format amounts
- $form->{quototal} = $form->{ordtotal} = $form->format_amount($myconfig, $form->{ordtotal}, 2);
-
- $dbh->disconnect;
-
-}
-
-
-sub assembly_details {
- my ($dbh, $form, $id, $oid, $qty) = @_;
-
- my $sm = "";
- my $spacer;
-
- $form->{stagger}++;
- if ($form->{format} eq 'html') {
- $spacer = "&nbsp;" x (3 * ($form->{stagger} - 1)) if $form->{stagger} > 1;
- }
- if ($form->{format} =~ /(postscript|pdf)/) {
- if ($form->{stagger} > 1) {
- $spacer = ($form->{stagger} - 1) * 3;
- $spacer = '\rule{'.$spacer.'mm}{0mm}';
- }
- }
-
- # get parts and push them onto the stack
- my $sortorder = "";
-
- if ($form->{grouppartsgroup}) {
- $sortorder = qq|ORDER BY pg.partsgroup, a.$oid|;
- } else {
- $sortorder = qq|ORDER BY a.$oid|;
- }
-
- my $where = ($form->{formname} eq 'work_order') ? "1 = 1" : "a.bom = '1'";
-
- my $query = qq|SELECT p.partnumber, p.description, p.unit, a.qty,
- pg.partsgroup, p.partnumber AS sku, p.assembly, p.id, p.bin
- FROM assembly a
- JOIN parts p ON (a.parts_id = p.id)
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE $where
- AND a.id = '$id'
- $sortorder|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- if ($form->{grouppartsgroup} && $ref->{partsgroup} ne $sm) {
- map { push(@{ $form->{$_} }, "") } qw(number sku unit qty runningnumber ship bin serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate linetotal);
- $sm = ($ref->{partsgroup}) ? $ref->{partsgroup} : "";
- push(@{ $form->{description} }, "$spacer$sm");
- }
-
- if ($form->{stagger}) {
- push(@{ $form->{description} }, qq|$spacer$ref->{sku}, $ref->{description}|);
- map { push(@{ $form->{$_} }, "") } qw(number sku runningnumber ship serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate linetotal);
- } else {
- push(@{ $form->{description} }, qq|$ref->{description}|);
- push(@{ $form->{sku} }, $ref->{partnumber});
- push(@{ $form->{number} }, $ref->{partnumber});
-
- map { push(@{ $form->{$_} }, "") } qw(runningnumber ship serialnumber reqdate projectnumber sellprice listprice netprice discount discountrate linetotal);
- }
-
- push(@{ $form->{qty} }, $form->format_amount($myconfig, $ref->{qty} * $qty));
- map { push(@{ $form->{$_} }, $ref->{$_}) } qw(unit bin);
-
-
- if ($ref->{assembly} && $form->{formname} eq 'work_order') {
- &assembly_details($dbh, $form, $ref->{id}, $oid, $ref->{qty} * $qty);
- }
-
- }
- $sth->finish;
-
- $form->{stagger}--;
-
-}
-
-
-sub project_description {
- my ($self, $dbh, $id) = @_;
-
- my $query = qq|SELECT description
- FROM project
- WHERE id = $id|;
- ($_) = $dbh->selectrow_array;
-
- $_;
-
-}
-
-
-sub get_warehouses {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
- # setup warehouses
- my $query = qq|SELECT id, description
- FROM warehouse
- ORDER BY 2|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_warehouses} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub save_inventory {
- my ($self, $myconfig, $form) = @_;
-
- my ($null, $warehouse_id) = split /--/, $form->{warehouse};
- $warehouse_id *= 1;
-
- my $ml = ($form->{type} eq 'ship_order') ? -1 : 1;
-
- my $dbh = $form->dbconnect_noauto($myconfig);
- my $sth;
- my $wth;
- my $serialnumber;
- my $ship;
-
- my $employee_id;
- ($null, $employee_id) = split /--/, $form->{employee};
- ($null, $employee_id) = $form->get_employee($dbh) if ! $employee_id;
-
- $query = qq|SELECT serialnumber, ship
- FROM orderitems
- WHERE trans_id = ?
- AND id = ?
- FOR UPDATE|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- $query = qq|SELECT sum(qty)
- FROM inventory
- WHERE parts_id = ?
- AND warehouse_id = ?|;
- $wth = $dbh->prepare($query) || $form->dberror($query);
-
-
- for my $i (1 .. $form->{rowcount}) {
-
- $ship = (abs($form->{"ship_$i"}) > abs($form->{"qty_$i"})) ? $form->{"qty_$i"} : $form->{"ship_$i"};
-
- if ($warehouse_id && $form->{type} eq 'ship_order') {
-
- $wth->execute($form->{"id_$i"}, $warehouse_id) || $form->dberror;
-
- ($qty) = $wth->fetchrow_array;
- $wth->finish;
-
- if ($ship > $qty) {
- $ship = $qty;
- }
- }
-
-
- if ($ship != 0) {
-
- $ship *= $ml;
- $query = qq|INSERT INTO inventory (parts_id, warehouse_id,
- qty, oe_id, orderitems_id, shippingdate, employee_id)
- VALUES ($form->{"id_$i"}, $warehouse_id,
- $ship, $form->{"id"},
- $form->{"orderitems_id_$i"}, '$form->{shippingdate}',
- $employee_id)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add serialnumber, ship to orderitems
- $sth->execute($form->{id}, $form->{"orderitems_id_$i"}) || $form->dberror;
- ($serialnumber, $ship) = $sth->fetchrow_array;
- $sth->finish;
-
- $serialnumber .= " " if $serialnumber;
- $serialnumber .= qq|$form->{"serialnumber_$i"}|;
- $ship += $form->{"ship_$i"};
-
- $query = qq|UPDATE orderitems SET
- serialnumber = '$serialnumber',
- ship = $ship,
- reqdate = '$form->{shippingdate}'
- WHERE trans_id = $form->{id}
- AND id = $form->{"orderitems_id_$i"}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # update order with ship via
- $query = qq|UPDATE oe SET
- shippingpoint = '$form->{shippingpoint}',
- shipvia = '$form->{shipvia}'
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
-
- # update onhand for parts
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $form->{"id_$i"}|,
- $form->{"ship_$i"} * $ml);
-
- }
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-sub adj_onhand {
- my ($dbh, $form, $ml) = @_;
-
- my $query = qq|SELECT oi.parts_id, oi.ship, p.inventory_accno_id, p.assembly
- FROM orderitems oi
- JOIN parts p ON (p.id = oi.parts_id)
- WHERE oi.trans_id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $query = qq|SELECT sum(p.inventory_accno_id)
- FROM parts p
- JOIN assembly a ON (a.parts_id = p.id)
- WHERE a.id = ?|;
- my $ath = $dbh->prepare($query) || $form->dberror($query);
-
- my $ispa;
- my $ref;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- if ($ref->{inventory_accno_id} || $ref->{assembly}) {
-
- # do not update if assembly consists of all services
- if ($ref->{assembly}) {
- $ath->execute($ref->{parts_id}) || $form->dberror($query);
-
- ($ispa) = $ath->fetchrow_array;
- $ath->finish;
-
- next unless $ispa;
-
- }
-
- # adjust onhand in parts table
- $form->update_balance($dbh,
- "parts",
- "onhand",
- qq|id = $ref->{parts_id}|,
- $ref->{ship} * $ml);
- }
- }
-
- $sth->finish;
-
-}
-
-
-sub adj_inventory {
- my ($dbh, $myconfig, $form) = @_;
-
- my %oid = ( 'Pg' => 'oid',
- 'PgPP' => 'oid',
- 'Oracle' => 'rowid',
- 'DB2' => '1=1'
- );
-
- # increase/reduce qty in inventory table
- my $query = qq|SELECT oi.id, oi.parts_id, oi.ship
- FROM orderitems oi
- WHERE oi.trans_id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- $query = qq|SELECT $oid{$myconfig->{dbdriver}} AS oid, qty,
- (SELECT SUM(qty) FROM inventory
- WHERE oe_id = $form->{id}
- AND orderitems_id = ?) AS total
- FROM inventory
- WHERE oe_id = $form->{id}
- AND orderitems_id = ?|;
- my $ith = $dbh->prepare($query) || $form->dberror($query);
-
- my $qty;
- my $ml = ($form->{type} =~ /(ship|sales)_order/) ? -1 : 1;
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- $ith->execute($ref->{id}, $ref->{id}) || $form->dberror($query);
-
- while (my $inv = $ith->fetchrow_hashref(NAME_lc)) {
-
- if (($qty = (($inv->{total} * $ml) - $ref->{ship})) >= 0) {
- $qty = $inv->{qty} if ($qty > ($inv->{qty} * $ml));
-
- $form->update_balance($dbh,
- "inventory",
- "qty",
- qq|$oid{$myconfig->{dbdriver}} = $inv->{oid}|,
- $qty * -1 * $ml);
- }
- }
- $ith->finish;
-
- }
- $sth->finish;
-
- # delete inventory entries if qty = 0
- $query = qq|DELETE FROM inventory
- WHERE oe_id = $form->{id}
- AND qty = 0|;
- $dbh->do($query) || $form->dberror($query);
-
-}
-
-
-sub get_inventory {
- my ($self, $myconfig, $form) = @_;
-
- my ($null, $warehouse_id) = split /--/, $form->{warehouse};
- $warehouse_id *= 1;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT p.id, p.partnumber, p.description, p.onhand,
- pg.partsgroup
- FROM parts p
- LEFT JOIN partsgroup pg ON (p.partsgroup_id = pg.id)
- WHERE p.onhand > 0|;
-
- if ($form->{partnumber}) {
- $var = $form->like(lc $form->{partnumber});
- $query .= "
- AND lower(p.partnumber) LIKE '$var'";
- }
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $query .= "
- AND lower(p.description) LIKE '$var'";
- }
- if ($form->{partsgroup}) {
- $var = $form->like(lc $form->{partsgroup});
- $query .= "
- AND lower(pg.partsgroup) LIKE '$var'";
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
-
- $query = qq|SELECT sum(i.qty), w.description, w.id
- FROM inventory i
- LEFT JOIN warehouse w ON (w.id = i.warehouse_id)
- WHERE i.parts_id = ?
- AND i.warehouse_id != $warehouse_id
- GROUP BY w.description, w.id|;
- $wth = $dbh->prepare($query) || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- $wth->execute($ref->{id}) || $form->dberror;
-
- while (($qty, $warehouse, $warehouse_id) = $wth->fetchrow_array) {
- push @{ $form->{all_inventory} }, {'id' => $ref->{id},
- 'partnumber' => $ref->{partnumber},
- 'description' => $ref->{description},
- 'partsgroup' => $ref->{partsgroup},
- 'qty' => $qty,
- 'warehouse_id' => $warehouse_id,
- 'warehouse' => $warehouse} if $qty > 0;
- }
- $wth->finish;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
- # sort inventory
- @{ $form->{all_inventory} } = sort { $a->{$form->{sort}} cmp $b->{$form->{sort}} } @{ $form->{all_inventory} };
-
-}
-
-
-sub transfer {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|INSERT INTO inventory
- (warehouse_id, parts_id, qty, shippingdate, employee_id)
- VALUES (?, ?, ?, ?, ?)|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- ($form->{employee}, $form->{employee_id}) = $form->get_employee($dbh);
-
- my @a = localtime; $a[5] += 1900; $a[4]++;
- $shippingdate = "$a[5]-$a[4]-$a[3]";
-
- for my $i (1 .. $form->{rowcount}) {
- $qty = $form->parse_amount($myconfig, $form->{"transfer_$i"});
-
- $qty = $form->{"qty_$i"} if ($qty > $form->{"qty_$i"});
-
- if ($qty) {
- # to warehouse
- $sth->execute($form->{warehouse_id}, $form->{"id_$i"}, $qty, $shippingdate, $form->{employee_id}) || $form->dberror;
-
- $sth->finish;
-
- # from warehouse
- $sth->execute($form->{"warehouse_id_$i"}, $form->{"id_$i"}, $qty * -1, $shippingdate, $form->{employee_id}) || $form->dberror;
-
- $sth->finish;
- }
- }
-
- my $rc = $dbh->commit;
- $dbh->disconnect;
-
- $rc;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/OP.pm b/sql-ledger/SL/OP.pm
deleted file mode 100644
index 184566c..0000000
--- a/sql-ledger/SL/OP.pm
+++ /dev/null
@@ -1,118 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Overpayment function
-# used in AR, AP, IS, IR, OE, CP
-#
-#======================================================================
-
-package OP;
-
-sub overpayment {
- my ($self, $myconfig, $form, $dbh, $amount, $ml) = @_;
-
- my $fxamount = $form->round_amount($amount * $form->{exchangerate}, 2);
- my ($paymentaccno) = split /--/, $form->{account};
-
- my $vc_id = "$form->{vc}_id";
-
- my $uid = time;
- $uid .= $form->{login};
-
- # add AR/AP header transaction with a payment
- $query = qq|INSERT INTO $form->{arap} (invnumber, employee_id)
- VALUES ('$uid', (SELECT id FROM employee
- WHERE login = '$form->{login}'))|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|SELECT id FROM $form->{arap}
- WHERE invnumber = '$uid'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($uid) = $sth->fetchrow_array;
- $sth->finish;
-
- my $invnumber = $form->{invnumber};
- if (! $invnumber) {
- $invnumber = $form->update_defaults($myconfig, ($form->{arap} eq 'ar') ? "sinumber" : "vinumber", $dbh);
- }
-
- $query = qq|UPDATE $form->{arap} set
- invnumber = |.$dbh->quote($invnumber).qq|,
- $vc_id = $form->{"$form->{vc}_id"},
- transdate = '$form->{datepaid}',
- datepaid = '$form->{datepaid}',
- duedate = '$form->{datepaid}',
- netamount = 0,
- amount = 0,
- paid = $fxamount,
- curr = '$form->{currency}',
- department_id = $form->{department_id}
- WHERE id = $uid|;
- $dbh->do($query) || $form->dberror($query);
-
- # add AR/AP
- ($accno) = split /--/, $form->{$form->{ARAP}};
-
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate, amount)
- VALUES ($uid, (SELECT id FROM chart
- WHERE accno = '$accno'),
- '$form->{datepaid}', $fxamount * $ml)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add payment
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount, source, memo)
- VALUES ($uid, (SELECT id FROM chart
- WHERE accno = '$paymentaccno'),
- '$form->{datepaid}', $amount * $ml * -1, |
- .$dbh->quote($form->{source}).qq|, |
- .$dbh->quote($form->{memo}).qq|)|;
- $dbh->do($query) || $form->dberror($query);
-
- # add exchangerate difference
- if ($fxamount != $amount) {
- $query = qq|INSERT INTO acc_trans (trans_id, chart_id, transdate,
- amount, cleared, fx_transaction)
- VALUES ($uid, (SELECT id FROM chart
- WHERE accno = '$paymentaccno'),
- '$form->{datepaid}', ($fxamount - $amount) * $ml * -1,
- '1', '1')|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- my %audittrail = ( tablename => $form->{arap},
- reference => $invnumber,
- formname => ($form->{arap} eq 'ar') ? 'deposit' : 'pre-payment',
- action => 'posted',
- id => $uid );
-
- $form->audittrail($dbh, "", \%audittrail);
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/PE.pm b/sql-ledger/SL/PE.pm
deleted file mode 100644
index f0850a7..0000000
--- a/sql-ledger/SL/PE.pm
+++ /dev/null
@@ -1,639 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Project module
-# also used for partsgroups
-#
-#======================================================================
-
-package PE;
-
-
-sub projects {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{sort} = "projectnumber" unless $form->{sort};
- my @a = ($form->{sort});
- my %ordinal = ( projectnumber => 2,
- description => 3 );
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT id, projectnumber, description
- FROM project
- WHERE 1 = 1|;
-
- if ($form->{projectnumber}) {
- my $projectnumber = $form->like(lc $form->{projectnumber});
- $query .= " AND lower(projectnumber) LIKE '$projectnumber'";
- }
- if ($form->{projectdescription}) {
- my $description = $form->like(lc $form->{projectdescription});
- $query .= " AND lower(description) LIKE '$description'";
- }
- if ($form->{status} eq 'orphaned') {
- $query .= " AND id NOT IN (SELECT p.id
- FROM project p, acc_trans a
- WHERE p.id = a.project_id)
- AND id NOT IN (SELECT p.id
- FROM project p, invoice i
- WHERE p.id = i.project_id)
- AND id NOT IN (SELECT p.id
- FROM project p, orderitems o
- WHERE p.id = o.project_id)";
- }
-
- $query .= qq|
- ORDER BY $sortorder|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $i = 0;
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{project_list} }, $ref;
- $i++;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
- $i;
-
-}
-
-
-sub get_project {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT *
- FROM project
- WHERE id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # check if it is orphaned
- $query = qq|SELECT count(*)
- FROM acc_trans
- WHERE project_id = $form->{id}
- UNION
- SELECT count(*)
- FROM invoice
- WHERE project_id = $form->{id}
- UNION
- SELECT count(*)
- FROM orderitems
- WHERE project_id = $form->{id}
- |;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($count) = $sth->fetchrow_array) {
- $form->{orphaned} += $count;
- }
- $sth->finish;
- $form->{orphaned} = !$form->{orphaned};
-
- $dbh->disconnect;
-
-}
-
-
-sub save_project {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- if ($form->{id}) {
- $query = qq|UPDATE project SET
- projectnumber = |.$dbh->quote($form->{projectnumber}).qq|,
- description = |.$dbh->quote($form->{description}).qq|
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO project
- (projectnumber, description)
- VALUES (|
- .$dbh->quote($form->{projectnumber}).qq|, |
- .$dbh->quote($form->{description}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub partsgroups {
- my ($self, $myconfig, $form) = @_;
-
- my $var;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{sort} = "partsgroup" unless $form->{partsgroup};
- my @a = (partsgroup);
- my $sortorder = $form->sort_order(\@a);
-
- my $query = qq|SELECT g.*
- FROM partsgroup g|;
-
- my $where = "1 = 1";
-
- if ($form->{partsgroup}) {
- $var = $form->like(lc $form->{partsgroup});
- $where .= " AND lower(partsgroup) LIKE '$var'";
- }
- $query .= qq|
- WHERE $where
- ORDER BY $sortorder|;
-
- if ($form->{status} eq 'orphaned') {
- $query = qq|SELECT g.*
- FROM partsgroup g
- LEFT JOIN parts p ON (p.partsgroup_id = g.id)
- WHERE $where
- EXCEPT
- SELECT g.*
- FROM partsgroup g
- JOIN parts p ON (p.partsgroup_id = g.id)
- WHERE $where
- ORDER BY $sortorder|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $i = 0;
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{item_list} }, $ref;
- $i++;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
- $i;
-
-}
-
-
-sub save_partsgroup {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- if ($form->{id}) {
- $query = qq|UPDATE partsgroup SET
- partsgroup = |.$dbh->quote($form->{partsgroup}).qq|
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO partsgroup
- (partsgroup)
- VALUES (|.$dbh->quote($form->{partsgroup}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub get_partsgroup {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT *
- FROM partsgroup
- WHERE id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # check if it is orphaned
- $query = qq|SELECT count(*)
- FROM parts
- WHERE partsgroup_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{orphaned}) = $sth->fetchrow_array;
- $form->{orphaned} = !$form->{orphaned};
-
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub pricegroups {
- my ($self, $myconfig, $form) = @_;
-
- my $var;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $form->{sort} = "pricegroup" unless $form->{sort};
- my @a = (pricegroup);
- my $sortorder = $form->sort_order(\@a);
-
- my $query = qq|SELECT g.*
- FROM pricegroup g|;
-
- my $where = "1 = 1";
-
- if ($form->{pricegroup}) {
- $var = $form->like(lc $form->{pricegroup});
- $where .= " AND lower(pricegroup) LIKE '$var'";
- }
- $query .= qq|
- WHERE $where
- ORDER BY $sortorder|;
-
- if ($form->{status} eq 'orphaned') {
- $query = qq|SELECT g.*
- FROM pricegroup g
- WHERE $where
- AND g.id NOT IN (SELECT DISTINCT pricegroup_id
- FROM partscustomer)
- ORDER BY $sortorder|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $i = 0;
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{item_list} }, $ref;
- $i++;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
- $i;
-
-}
-
-
-sub save_pricegroup {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- if ($form->{id}) {
- $query = qq|UPDATE pricegroup SET
- pricegroup = |.$dbh->quote($form->{pricegroup}).qq|
- WHERE id = $form->{id}|;
- } else {
- $query = qq|INSERT INTO pricegroup
- (pricegroup)
- VALUES (|.$dbh->quote($form->{pricegroup}).qq|)|;
- }
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub get_pricegroup {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT *
- FROM pricegroup
- WHERE id = $form->{id}|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
-
- map { $form->{$_} = $ref->{$_} } keys %$ref;
-
- $sth->finish;
-
- # check if it is orphaned
- $query = qq|SELECT count(*)
- FROM partscustomer
- WHERE pricegroup_id = $form->{id}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- ($form->{orphaned}) = $sth->fetchrow_array;
- $form->{orphaned} = !$form->{orphaned};
-
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub delete_tuple {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- $query = qq|DELETE FROM $form->{type}
- WHERE id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- if ($form->{type} !~ /pricegroup/) {
- $query = qq|DELETE FROM translation
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub description_translations {
- my ($self, $myconfig, $form) = @_;
-
- my $where = "1 = 1\n";
- my $var;
- my $ref;
-
- map { $where .= "AND lower(p.$_) LIKE '".$form->like(lc $form->{$_})."'\n" if $form->{$_} } qw(partnumber description);
-
- $where .= " AND p.obsolete = '0'";
- $where .= " AND p.id = $form->{id}" if $form->{id};
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my %ordinal = ( 'partnumber' => 2,
- 'description' => 3
- );
-
- my @a = qw(partnumber description);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT l.description AS language, t.description AS translation,
- l.code
- FROM translation t
- JOIN language l ON (l.code = t.language_code)
- WHERE trans_id = ?
- ORDER BY 1|;
- my $tth = $dbh->prepare($query);
-
- $query = qq|SELECT p.id, p.partnumber, p.description
- FROM parts p
- WHERE $where
- ORDER BY $sortorder|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $tra;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{translations} }, $ref;
-
- # get translations for description
- $tth->execute($ref->{id}) || $form->dberror;
-
- while ($tra = $tth->fetchrow_hashref(NAME_lc)) {
- $form->{trans_id} = $ref->{id};
- $tra->{id} = $ref->{id};
- push @{ $form->{translations} }, $tra;
- }
-
- }
- $sth->finish;
-
- &get_language("", $dbh, $form) if $form->{id};
-
- $dbh->disconnect;
-
-}
-
-
-sub partsgroup_translations {
- my ($self, $myconfig, $form) = @_;
-
- my $where = "1 = 1\n";
- my $ref;
-
- if ($form->{description}) {
- $where .= "AND lower(p.partsgroup) LIKE '".$form->like(lc $form->{description})."'";
- }
- $where .= " AND p.id = $form->{id}" if $form->{id};
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT l.description AS language, t.description AS translation,
- l.code
- FROM translation t
- JOIN language l ON (l.code = t.language_code)
- WHERE trans_id = ?
- ORDER BY 1|;
- my $tth = $dbh->prepare($query);
-
- $form->sort_order();
-
- $query = qq|SELECT p.id, p.partsgroup AS description
- FROM partsgroup p
- WHERE $where
- ORDER BY 2 $form->{direction}|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $tra;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{translations} }, $ref;
-
- # get translations for partsgroup
- $tth->execute($ref->{id}) || $form->dberror;
-
- while ($tra = $tth->fetchrow_hashref(NAME_lc)) {
- $form->{trans_id} = $ref->{id};
- push @{ $form->{translations} }, $tra;
- }
-
- }
- $sth->finish;
-
- &get_language("", $dbh, $form) if $form->{id};
-
- $dbh->disconnect;
-
-}
-
-
-sub project_translations {
- my ($self, $myconfig, $form) = @_;
-
- my $where = "1 = 1\n";
- my $var;
- my $ref;
-
- map { $where .= "AND lower(p.$_) LIKE '".$form->like(lc $form->{$_})."'\n" if $form->{$_} } qw(projectnumber description);
-
- $where .= " AND p.id = $form->{id}" if $form->{id};
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my %ordinal = ( 'projectnumber' => 2,
- 'description' => 3
- );
-
- my @a = qw(projectnumber description);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $query = qq|SELECT l.description AS language, t.description AS translation,
- l.code
- FROM translation t
- JOIN language l ON (l.code = t.language_code)
- WHERE trans_id = ?
- ORDER BY 1|;
- my $tth = $dbh->prepare($query);
-
- $query = qq|SELECT p.id, p.projectnumber, p.description
- FROM project p
- WHERE $where
- ORDER BY $sortorder|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $tra;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{translations} }, $ref;
-
- # get translations for description
- $tth->execute($ref->{id}) || $form->dberror;
-
- while ($tra = $tth->fetchrow_hashref(NAME_lc)) {
- $form->{trans_id} = $ref->{id};
- $tra->{id} = $ref->{id};
- push @{ $form->{translations} }, $tra;
- }
-
- }
- $sth->finish;
-
- &get_language("", $dbh, $form) if $form->{id};
-
- $dbh->disconnect;
-
-}
-
-
-sub get_language {
- my ($self, $dbh, $form) = @_;
-
- # get language
- my $query = qq|SELECT *
- FROM language
- ORDER BY 2|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_language} }, $ref;
- }
- $sth->finish;
-
-}
-
-
-sub save_translation {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query = qq|DELETE FROM translation
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $query = qq|INSERT INTO translation (trans_id, language_code, description)
- VALUES ($form->{id}, ?, ?)|;
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
- foreach my $i (1 .. $form->{translation_rows}) {
- if ($form->{"language_code_$i"}) {
- $sth->execute($form->{"language_code_$i"}, $form->{"translation_$i"});
- $sth->finish;
- }
- }
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub delete_translation {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- $query = qq|DELETE FROM translation
- WHERE trans_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/SL/RC.pm b/sql-ledger/SL/RC.pm
deleted file mode 100644
index 2a8bf94..0000000
--- a/sql-ledger/SL/RC.pm
+++ /dev/null
@@ -1,474 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Account reconciliation routines
-#
-#======================================================================
-
-package RC;
-
-
-sub paymentaccounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT accno, description
- FROM chart
- WHERE link LIKE '%_paid%'
- AND (category = 'A' OR category = 'L')
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{PR} }, $ref;
- }
- $sth->finish;
-
- $form->all_years($dbh, $myconfig);
-
- $dbh->disconnect;
-
-}
-
-
-sub payment_transactions {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $query;
- my $sth;
-
- $query = qq|SELECT category FROM chart
- WHERE accno = '$form->{accno}'|;
- ($form->{category}) = $dbh->selectrow_array($query);
-
- my $cleared;
-
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- my $transdate = qq| AND ac.transdate < date '$form->{fromdate}'|;
-
- if (! $form->{fromdate}) {
- $cleared = qq| AND ac.cleared = '1'|;
- $transdate = "";
- }
-
- # get beginning balance
- $query = qq|SELECT sum(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE c.accno = '$form->{accno}'
- $transdate
- $cleared
- |;
- ($form->{beginningbalance}) = $dbh->selectrow_array($query);
-
- # fx balance
- $query = qq|SELECT sum(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE c.accno = '$form->{accno}'
- AND ac.fx_transaction = '1'
- $transdate
- $cleared
- |;
- ($form->{fx_balance}) = $dbh->selectrow_array($query);
-
-
- $transdate = "";
- if ($form->{todate}) {
- $transdate = qq| AND ac.transdate <= date '$form->{todate}'|;
- }
-
- # get statement balance
- $query = qq|SELECT sum(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE c.accno = '$form->{accno}'
- $transdate
- |;
- ($form->{endingbalance}) = $dbh->selectrow_array($query);
-
- # fx balance
- $query = qq|SELECT sum(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- WHERE c.accno = '$form->{accno}'
- AND ac.fx_transaction = '1'
- $transdate
- |;
- ($form->{fx_endingbalance}) = $dbh->selectrow_array($query);
-
-
- $cleared = qq| AND ac.cleared = '0'| unless $form->{fromdate};
-
- if ($form->{report}) {
- $cleared = qq| AND NOT (ac.cleared = '0' OR ac.cleared = '1')|;
- if ($form->{cleared}) {
- $cleared = qq| AND ac.cleared = '1'|;
- }
- if ($form->{outstanding}) {
- $cleared = ($form->{cleared}) ? "" : qq| AND ac.cleared = '0'|;
- }
- if (! $form->{fromdate}) {
- $form->{beginningbalance} = 0;
- $form->{fx_balance} = 0;
- }
- }
-
-
- if ($form->{summary}) {
- $query = qq|SELECT ac.transdate, ac.source,
- sum(ac.amount) AS amount, ac.cleared
- FROM acc_trans ac
- JOIN chart ch ON (ac.chart_id = ch.id)
- WHERE ch.accno = '$form->{accno}'
- AND ac.amount >= 0
- AND ac.fx_transaction = '0'
- $cleared|;
- $query .= " AND ac.transdate >= '$form->{fromdate}'" if $form->{fromdate};
- $query .= " AND ac.transdate <= '$form->{todate}'" if $form->{todate};
- $query .= " GROUP BY ac.source, ac.transdate, ac.cleared";
- $query .= qq|
- UNION
- SELECT ac.transdate, ac.source,
- sum(ac.amount) AS amount, ac.cleared
- FROM acc_trans ac
- JOIN chart ch ON (ac.chart_id = ch.id)
- WHERE ch.accno = '$form->{accno}'
- AND ac.amount < 0
- AND ac.fx_transaction = '0'
- $cleared|;
- $query .= " AND ac.transdate >= '$form->{fromdate}'" if $form->{fromdate};
- $query .= " AND ac.transdate <= '$form->{todate}'" if $form->{todate};
- $query .= " GROUP BY ac.source, ac.transdate, ac.cleared";
-
- $query .= " ORDER BY 1,2";
-
- } else {
-
- $query = qq|SELECT ac.transdate, ac.source, ac.fx_transaction,
- ac.amount, ac.cleared, g.id, g.description
- FROM acc_trans ac
- JOIN chart ch ON (ac.chart_id = ch.id)
- JOIN gl g ON (g.id = ac.trans_id)
- WHERE ch.accno = '$form->{accno}'
- AND ac.fx_transaction = '0'
- $cleared|;
- $query .= " AND ac.transdate >= '$form->{fromdate}'" if $form->{fromdate};
- $query .= " AND ac.transdate <= '$form->{todate}'" if $form->{todate};
-
- $query .= qq|
- UNION
- SELECT ac.transdate, ac.source, ac.fx_transaction,
- ac.amount, ac.cleared, a.id, n.name
- FROM acc_trans ac
- JOIN chart ch ON (ac.chart_id = ch.id)
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN customer n ON (n.id = a.customer_id)
- WHERE ch.accno = '$form->{accno}'
- AND ac.fx_transaction = '0'
- $cleared|;
- $query .= " AND ac.transdate >= '$form->{fromdate}'" if $form->{fromdate};
- $query .= " AND ac.transdate <= '$form->{todate}'" if $form->{todate};
-
- $query .= qq|
- UNION
- SELECT ac.transdate, ac.source, ac.fx_transaction,
- ac.amount, ac.cleared, a.id, n.name
- FROM acc_trans ac
- JOIN chart ch ON (ac.chart_id = ch.id)
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN vendor n ON (n.id = a.vendor_id)
- WHERE ch.accno = '$form->{accno}'
- AND ac.fx_transaction = '0'
- $cleared|;
- $query .= " AND ac.transdate >= '$form->{fromdate}'" if $form->{fromdate};
- $query .= " AND ac.transdate <= '$form->{todate}'" if $form->{todate};
-
- $query .= " ORDER BY 1,2,3";
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $dr;
- my $cr;
- my $fxs;
-
- if ($form->{summary}) {
- $query = qq|SELECT ac.amount, ac.cleared
- FROM acc_trans ac
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN customer n ON (n.id = a.customer_id)
- WHERE ac.fx_transaction = '1'
- AND n.name = ?
- AND ac.transdate = ?
- AND ac.trans_id IN (SELECT id FROM ar a
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.source = ?)
- AND ac.cleared = ?
- AND NOT
- (ac.chart_id IN
- (SELECT fxgain_accno_id FROM defaults
- UNION
- SELECT fxloss_accno_id FROM defaults))
- |;
-
- $query .= qq|
- UNION
- SELECT ac.amount, ac.cleared
- FROM acc_trans ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN vendor n ON (n.id = a.vendor_id)
- WHERE ac.fx_transaction = '1'
- AND n.name = ?
- AND ac.transdate = ?
- AND ac.trans_id IN (SELECT id FROM ap a
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.source = ?)
- AND ac.cleared = ?
- AND NOT
- (ac.chart_id IN
- (SELECT fxgain_accno_id FROM defaults
- UNION
- SELECT fxloss_accno_id FROM defaults))
- |;
-
- } else {
-
- $query = qq|SELECT ac.amount, ac.cleared
- FROM acc_trans ac
- WHERE ac.trans_id = ?
- AND ac.fx_transaction = '1'
- $cleared
- AND NOT
- (ac.chart_id IN
- (SELECT fxgain_accno_id FROM defaults
- UNION
- SELECT fxloss_accno_id FROM defaults))
- |;
-
- }
-
- $fxs = $dbh->prepare($query);
-
-
- if ($form->{summary}) {
- $query = qq|SELECT c.name
- FROM customer c
- JOIN ar a ON (c.id = a.customer_id)
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount > 0
- $cleared
- UNION
- SELECT v.name
- FROM vendor v
- JOIN ap a ON (v.id = a.vendor_id)
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount > 0
- $cleared
- UNION
- SELECT g.description
- FROM gl g
- JOIN acc_trans ac ON (g.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount > 0
- $cleared
- |;
-
- $query .= " ORDER BY 1";
- $dr = $dbh->prepare($query);
-
-
- $query = qq|SELECT c.name
- FROM customer c
- JOIN ar a ON (c.id = a.customer_id)
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount < 0
- $cleared
- UNION
- SELECT v.name
- FROM vendor v
- JOIN ap a ON (v.id = a.vendor_id)
- JOIN acc_trans ac ON (a.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount < 0
- $cleared
- UNION
- SELECT g.description
- FROM gl g
- JOIN acc_trans ac ON (g.id = ac.trans_id)
- WHERE ac.transdate = ?
- AND ac.source = ?
- AND ac.amount < 0
- $cleared
- |;
-
- $query .= " ORDER BY 1";
- $cr = $dbh->prepare($query);
- }
-
-
- my $name;
- my $ref;
- my $xfref;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
-
- if ($form->{summary}) {
-
- if ($ref->{amount} > 0) {
- $dr->execute($ref->{transdate}, $ref->{source}, $ref->{transdate}, $ref->{source}, $ref->{transdate}, $ref->{source});
- $ref->{oldcleared} = $ref->{cleared};
- $ref->{name} = ();
- while (($name) = $dr->fetchrow_array) {
- push @{ $ref->{name} }, $name;
- }
- $dr->finish;
- } else {
-
- $cr->execute($ref->{transdate}, $ref->{source}, $ref->{transdate}, $ref->{source}, $ref->{transdate}, $ref->{source});
- $ref->{oldcleared} = $ref->{cleared};
- $ref->{name} = ();
- while (($name) = $cr->fetchrow_array) {
- push @{ $ref->{name} }, $name;
- }
- $cr->finish;
-
- }
-
- } else {
- push @{ $ref->{name} }, $ref->{description};
- }
-
- push @{ $form->{PR} }, $ref;
-
- # include fx transactions
- $amount = 0;
- $addfx = 0;
- $ref->{oldcleared} = $ref->{cleared};
- if ($form->{summary}) {
- foreach $name (@{ $ref->{name} }) {
- $fxs->execute($name, $ref->{transdate}, $ref->{source}, $ref->{cleared}, $name, $ref->{transdate}, $ref->{source}, $ref->{cleared});
- while ($fxref = $fxs->fetchrow_hashref(NAME_lc)) {
- $addfx = 1;
- $amount += $fxref->{amount};
- }
- $fxs->finish;
- }
- } else {
- $fxs->execute($ref->{id});
- while ($fxref = $fxs->fetchrow_hashref(NAME_lc)) {
- $addfx = 1;
- $amount += $fxref->{amount};
- }
- $fxs->finish;
- }
-
- if ($addfx) {
- $fxref = ();
- map { $fxref->{$_} = $ref->{$_} } keys %$ref;
- $fxref->{fx_transaction} = 1;
- $fxref->{name} = ();
- $fxref->{source} = "";
- $fxref->{transdate} = "";
- $fxref->{amount} = $amount;
- push @{ $form->{PR} }, $fxref;
- }
-
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-sub reconcile {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT id FROM chart
- WHERE accno = '$form->{accno}'|;
- my ($chart_id) = $dbh->selectrow_array($query);
- $chart_id *= 1;
-
- $query = qq|SELECT trans_id FROM acc_trans
- WHERE source = ?
- AND transdate = ?
- AND cleared = '0'|;
- my $sth = $dbh->prepare($query) || $form->dberror($query);
-
- my $i;
- my $trans_id;
-
- $query = qq|UPDATE acc_trans SET cleared = '1'
- WHERE cleared = '0'
- AND trans_id = ?
- AND transdate = ?
- AND chart_id = $chart_id|;
- my $tth = $dbh->prepare($query) || $form->dberror($query);
-
- # clear flags
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"cleared_$i"} && ! $form->{"oldcleared_$i"}) {
- if ($form->{summary}) {
- $sth->execute($form->{"source_$i"}, $form->{"transdate_$i"}) || $form->dberror;
-
- while (($trans_id) = $sth->fetchrow_array) {
- $tth->execute($trans_id, $form->{"transdate_$i"}) || $form->dberror;
- $tth->finish;
- }
- $sth->finish;
-
- } else {
-
- $tth->execute($form->{"id_$i"}, $form->{"transdate_$i"}) || $form->dberror;
- $tth->finish;
- }
- }
- }
-
- $dbh->disconnect;
-
-}
-
-1;
-
diff --git a/sql-ledger/SL/RP.pm b/sql-ledger/SL/RP.pm
deleted file mode 100644
index 791b22b..0000000
--- a/sql-ledger/SL/RP.pm
+++ /dev/null
@@ -1,2551 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Benjamin Lee <benjaminlee@consultant.com>
-# Jim Rawlings <jim@your-dba.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# backend code for reports
-#
-#======================================================================
-
-package RP;
-
-
-sub yearend_statement {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # if todate < existing yearends, delete GL and yearends
- my $query = qq|SELECT trans_id FROM yearend
- WHERE transdate >= '$form->{todate}'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my @trans_id = ();
- my $id;
- while (($id) = $sth->fetchrow_array) {
- push @trans_id, $id;
- }
- $sth->finish;
-
- $query = qq|DELETE FROM gl
- WHERE id = ?|;
- $sth = $dbh->prepare($query) || $form->dberror($query);
-
- $query = qq|DELETE FROM acc_trans
- WHERE trans_id = ?|;
- my $ath = $dbh->prepare($query) || $form->dberror($query);
-
- foreach $id (@trans_id) {
- $sth->execute($id);
- $ath->execute($id);
- }
- $sth->finish;
-
-
- my $last_period = 0;
- my @categories = qw(I E);
- my $category;
-
- $form->{decimalplaces} *= 1;
-
- &get_accounts($dbh, 0, $form->{fromdate}, $form->{todate}, $form, \@categories);
-
- # disconnect
- $dbh->disconnect;
-
-
- # now we got $form->{I}{accno}{ }
- # and $form->{E}{accno}{ }
-
- my %account = ( 'I' => { 'label' => 'income',
- 'labels' => 'income',
- 'ml' => 1 },
- 'E' => { 'label' => 'expense',
- 'labels' => 'expenses',
- 'ml' => -1 }
- );
-
- foreach $category (@categories) {
- foreach $key (sort keys %{ $form->{$category} }) {
- if ($form->{$category}{$key}{charttype} eq 'A') {
- $form->{"total_$account{$category}{labels}_this_period"} += $form->{$category}{$key}{this} * $account{$category}{ml};
- }
- }
- }
-
-
- # totals for income and expenses
- $form->{total_income_this_period} = $form->round_amount($form->{total_income_this_period}, $form->{decimalplaces});
- $form->{total_expenses_this_period} = $form->round_amount($form->{total_expenses_this_period}, $form->{decimalplaces});
-
- # total for income/loss
- $form->{total_this_period} = $form->{total_income_this_period} - $form->{total_expenses_this_period};
-
-}
-
-
-sub income_statement {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $last_period = 0;
- my @categories = qw(I E);
- my $category;
-
- $form->{decimalplaces} *= 1;
-
- if (! ($form->{fromdate} || $form->{todate})) {
- if ($form->{fromyear} && $form->{frommonth}) {
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{fromyear}, $form->{frommonth}, $form->{interval});
- }
- }
-
- &get_accounts($dbh, $last_period, $form->{fromdate}, $form->{todate}, $form, \@categories, 1);
-
- if (! ($form->{comparefromdate} || $form->{comparetodate})) {
- if ($form->{compareyear} && $form->{comparemonth}) {
- ($form->{comparefromdate}, $form->{comparetodate}) = $form->from_to($form->{compareyear}, $form->{comparemonth}, $form->{interval});
- }
- }
-
- # if there are any compare dates
- if ($form->{comparefromdate} || $form->{comparetodate}) {
- $last_period = 1;
-
- &get_accounts($dbh, $last_period, $form->{comparefromdate}, $form->{comparetodate}, $form, \@categories, 1);
- }
-
-
- # disconnect
- $dbh->disconnect;
-
-
- # now we got $form->{I}{accno}{ }
- # and $form->{E}{accno}{ }
-
- my %account = ( 'I' => { 'label' => 'income',
- 'labels' => 'income',
- 'ml' => 1 },
- 'E' => { 'label' => 'expense',
- 'labels' => 'expenses',
- 'ml' => -1 }
- );
-
- my $str;
-
- foreach $category (@categories) {
-
- foreach $key (sort keys %{ $form->{$category} }) {
- # push description onto array
-
- $str = ($form->{l_heading}) ? $form->{padding} : "";
-
- if ($form->{$category}{$key}{charttype} eq "A") {
- $str .= ($form->{l_accno}) ? "$form->{$category}{$key}{accno} - $form->{$category}{$key}{description}" : "$form->{$category}{$key}{description}";
- }
- if ($form->{$category}{$key}{charttype} eq "H") {
- if ($account{$category}{subtotal} && $form->{l_subtotal}) {
- $dash = "- ";
- push(@{$form->{"$account{$category}{label}_account"}}, "$str$form->{bold}$account{$category}{subdescription}$form->{endbold}");
- push(@{$form->{"$account{$category}{labels}_this_period"}}, $form->format_amount($myconfig, $account{$category}{subthis} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- if ($last_period) {
- push(@{$form->{"$account{$category}{labels}_last_period"}}, $form->format_amount($myconfig, $account{$category}{sublast} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
-
- }
-
- $str = "$form->{br}$form->{bold}$form->{$category}{$key}{description}$form->{endbold}";
-
- $account{$category}{subthis} = $form->{$category}{$key}{this};
- $account{$category}{sublast} = $form->{$category}{$key}{last};
- $account{$category}{subdescription} = $form->{$category}{$key}{description};
- $account{$category}{subtotal} = 1;
-
- $form->{$category}{$key}{this} = 0;
- $form->{$category}{$key}{last} = 0;
-
- next unless $form->{l_heading};
-
- $dash = " ";
- }
-
- push(@{$form->{"$account{$category}{label}_account"}}, $str);
-
- if ($form->{$category}{$key}{charttype} eq 'A') {
- $form->{"total_$account{$category}{labels}_this_period"} += $form->{$category}{$key}{this} * $account{$category}{ml};
- $dash = "- ";
- }
-
- push(@{$form->{"$account{$category}{labels}_this_period"}}, $form->format_amount($myconfig, $form->{$category}{$key}{this} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- # add amount or - for last period
- if ($last_period) {
- $form->{"total_$account{$category}{labels}_last_period"} += $form->{$category}{$key}{last} * $account{$category}{ml};
-
- push(@{$form->{"$account{$category}{labels}_last_period"}}, $form->format_amount($myconfig,$form->{$category}{$key}{last} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
- }
-
- $str = ($form->{l_heading}) ? $form->{padding} : "";
- if ($account{$category}{subtotal} && $form->{l_subtotal}) {
- push(@{$form->{"$account{$category}{label}_account"}}, "$str$form->{bold}$account{$category}{subdescription}$form->{endbold}");
- push(@{$form->{"$account{$category}{labels}_this_period"}}, $form->format_amount($myconfig, $account{$category}{subthis} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- if ($last_period) {
- push(@{$form->{"$account{$category}{labels}_last_period"}}, $form->format_amount($myconfig, $account{$category}{sublast} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
- }
-
- }
-
-
- # totals for income and expenses
- $form->{total_income_this_period} = $form->round_amount($form->{total_income_this_period}, $form->{decimalplaces});
- $form->{total_expenses_this_period} = $form->round_amount($form->{total_expenses_this_period}, $form->{decimalplaces});
-
- # total for income/loss
- $form->{total_this_period} = $form->{total_income_this_period} - $form->{total_expenses_this_period};
-
- if ($last_period) {
- # total for income/loss
- $form->{total_last_period} = $form->format_amount($myconfig, $form->{total_income_last_period} - $form->{total_expenses_last_period}, $form->{decimalplaces}, "- ");
-
- # totals for income and expenses for last_period
- $form->{total_income_last_period} = $form->format_amount($myconfig, $form->{total_income_last_period}, $form->{decimalplaces}, "- ");
- $form->{total_expenses_last_period} = $form->format_amount($myconfig, $form->{total_expenses_last_period}, $form->{decimalplaces}, "- ");
-
- }
-
-
- $form->{total_income_this_period} = $form->format_amount($myconfig,$form->{total_income_this_period}, $form->{decimalplaces}, "- ");
- $form->{total_expenses_this_period} = $form->format_amount($myconfig,$form->{total_expenses_this_period}, $form->{decimalplaces}, "- ");
- $form->{total_this_period} = $form->format_amount($myconfig,$form->{total_this_period}, $form->{decimalplaces}, "- ");
-
-}
-
-
-sub balance_sheet {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $last_period = 0;
- my @categories = qw(A C L Q);
-
- my $null;
-
- if (! $form->{asofdate}) {
- if ($form->{asofyear} && $form->{asofmonth}) {
- ($null, $form->{asofdate}) = $form->from_to($form->{asofyear}, $form->{asofmonth});
- }
- }
-
- # if there are any dates construct a where
- if ($form->{asofdate}) {
-
- $form->{this_period} = "$form->{asofdate}";
- $form->{period} = "$form->{asofdate}";
-
- }
-
- $form->{decimalplaces} *= 1;
-
- &get_accounts($dbh, $last_period, "", $form->{asofdate}, $form, \@categories, 1);
-
- if (! $form->{compareasofdate}) {
- if ($form->{compareasofyear} && $form->{compareasofmonth}) {
- ($null, $form->{compareasofdate}) = $form->from_to($form->{compareasofyear}, $form->{compareasofmonth});
- }
- }
-
- # if there are any compare dates
- if ($form->{compareasofdate}) {
-
- $last_period = 1;
- &get_accounts($dbh, $last_period, "", $form->{compareasofdate}, $form, \@categories, 1);
-
- $form->{last_period} = "$form->{compareasofdate}";
-
- }
-
-
- # disconnect
- $dbh->disconnect;
-
-
- # now we got $form->{A}{accno}{ } assets
- # and $form->{L}{accno}{ } liabilities
- # and $form->{Q}{accno}{ } equity
- # build asset accounts
-
- my $str;
- my $key;
-
- my %account = ( 'A' => { 'label' => 'asset',
- 'labels' => 'assets',
- 'ml' => -1 },
- 'L' => { 'label' => 'liability',
- 'labels' => 'liabilities',
- 'ml' => 1 },
- 'Q' => { 'label' => 'equity',
- 'labels' => 'equity',
- 'ml' => 1 }
- );
-
- foreach $category (grep { !/C/ } @categories) {
-
- foreach $key (sort keys %{ $form->{$category} }) {
-
- $str = ($form->{l_heading}) ? $form->{padding} : "";
-
- if ($form->{$category}{$key}{charttype} eq "A") {
- $str .= ($form->{l_accno}) ? "$form->{$category}{$key}{accno} - $form->{$category}{$key}{description}" : "$form->{$category}{$key}{description}";
- }
- if ($form->{$category}{$key}{charttype} eq "H") {
- if ($account{$category}{subtotal} && $form->{l_subtotal}) {
- $dash = "- ";
- push(@{$form->{"$account{$category}{label}_account"}}, "$str$form->{bold}$account{$category}{subdescription}$form->{endbold}");
- push(@{$form->{"$account{$category}{label}_this_period"}}, $form->format_amount($myconfig, $account{$category}{subthis} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- if ($last_period) {
- push(@{$form->{"$account{$category}{label}_last_period"}}, $form->format_amount($myconfig, $account{$category}{sublast} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
- }
-
- $str = "$form->{bold}$form->{$category}{$key}{description}$form->{endbold}";
-
- $account{$category}{subthis} = $form->{$category}{$key}{this};
- $account{$category}{sublast} = $form->{$category}{$key}{last};
- $account{$category}{subdescription} = $form->{$category}{$key}{description};
- $account{$category}{subtotal} = 1;
-
- $form->{$category}{$key}{this} = 0;
- $form->{$category}{$key}{last} = 0;
-
- next unless $form->{l_heading};
-
- $dash = " ";
- }
-
- # push description onto array
- push(@{$form->{"$account{$category}{label}_account"}}, $str);
-
- if ($form->{$category}{$key}{charttype} eq 'A') {
- $form->{"total_$account{$category}{labels}_this_period"} += $form->{$category}{$key}{this} * $account{$category}{ml};
- $dash = "- ";
- }
-
- push(@{$form->{"$account{$category}{label}_this_period"}}, $form->format_amount($myconfig, $form->{$category}{$key}{this} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- if ($last_period) {
- $form->{"total_$account{$category}{labels}_last_period"} += $form->{$category}{$key}{last} * $account{$category}{ml};
-
- push(@{$form->{"$account{$category}{label}_last_period"}}, $form->format_amount($myconfig, $form->{$category}{$key}{last} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
- }
-
- $str = ($form->{l_heading}) ? $form->{padding} : "";
- if ($account{$category}{subtotal} && $form->{l_subtotal}) {
- push(@{$form->{"$account{$category}{label}_account"}}, "$str$form->{bold}$account{$category}{subdescription}$form->{endbold}");
- push(@{$form->{"$account{$category}{label}_this_period"}}, $form->format_amount($myconfig, $account{$category}{subthis} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
-
- if ($last_period) {
- push(@{$form->{"$account{$category}{label}_last_period"}}, $form->format_amount($myconfig, $account{$category}{sublast} * $account{$category}{ml}, $form->{decimalplaces}, $dash));
- }
- }
-
- }
-
-
- # totals for assets, liabilities
- $form->{total_assets_this_period} = $form->round_amount($form->{total_assets_this_period}, $form->{decimalplaces});
- $form->{total_liabilities_this_period} = $form->round_amount($form->{total_liabilities_this_period}, $form->{decimalplaces});
- $form->{total_equity_this_period} = $form->round_amount($form->{total_equity_this_period}, $form->{decimalplaces});
-
- # calculate earnings
- $form->{earnings_this_period} = $form->{total_assets_this_period} - $form->{total_liabilities_this_period} - $form->{total_equity_this_period};
-
- push(@{$form->{equity_this_period}}, $form->format_amount($myconfig, $form->{earnings_this_period}, $form->{decimalplaces}, "- "));
-
- $form->{total_equity_this_period} = $form->round_amount($form->{total_equity_this_period} + $form->{earnings_this_period}, $form->{decimalplaces});
-
- # add liability + equity
- $form->{total_this_period} = $form->format_amount($myconfig, $form->{total_liabilities_this_period} + $form->{total_equity_this_period}, $form->{decimalplaces}, "- ");
-
-
- if ($last_period) {
- # totals for assets, liabilities
- $form->{total_assets_last_period} = $form->round_amount($form->{total_assets_last_period}, $form->{decimalplaces});
- $form->{total_liabilities_last_period} = $form->round_amount($form->{total_liabilities_last_period}, $form->{decimalplaces});
- $form->{total_equity_last_period} = $form->round_amount($form->{total_equity_last_period}, $form->{decimalplaces});
-
- # calculate retained earnings
- $form->{earnings_last_period} = $form->{total_assets_last_period} - $form->{total_liabilities_last_period} - $form->{total_equity_last_period};
-
- push(@{$form->{equity_last_period}}, $form->format_amount($myconfig,$form->{earnings_last_period}, $form->{decimalplaces}, "- "));
-
- $form->{total_equity_last_period} = $form->round_amount($form->{total_equity_last_period} + $form->{earnings_last_period}, $form->{decimalplaces});
-
- # add liability + equity
- $form->{total_last_period} = $form->format_amount($myconfig, $form->{total_liabilities_last_period} + $form->{total_equity_last_period}, $form->{decimalplaces}, "- ");
-
- }
-
-
- $form->{total_liabilities_last_period} = $form->format_amount($myconfig, $form->{total_liabilities_last_period}, $form->{decimalplaces}, "- ") if ($form->{total_liabilities_last_period} != 0);
-
- $form->{total_equity_last_period} = $form->format_amount($myconfig, $form->{total_equity_last_period}, $form->{decimalplaces}, "- ") if ($form->{total_equity_last_period} != 0);
-
- $form->{total_assets_last_period} = $form->format_amount($myconfig, $form->{total_assets_last_period}, $form->{decimalplaces}, "- ") if ($form->{total_assets_last_period} != 0);
-
- $form->{total_assets_this_period} = $form->format_amount($myconfig, $form->{total_assets_this_period}, $form->{decimalplaces}, "- ");
-
- $form->{total_liabilities_this_period} = $form->format_amount($myconfig, $form->{total_liabilities_this_period}, $form->{decimalplaces}, "- ");
-
- $form->{total_equity_this_period} = $form->format_amount($myconfig, $form->{total_equity_this_period}, $form->{decimalplaces}, "- ");
-
-}
-
-
-sub get_accounts {
- my ($dbh, $last_period, $fromdate, $todate, $form, $categories, $yearend) = @_;
-
- my $department_id;
- my $project_id;
-
- ($null, $department_id) = split /--/, $form->{department};
- ($null, $project_id) = split /--/, $form->{projectnumber};
-
- my $query;
- my $dpt_where;
- my $dpt_join;
- my $project;
- my $where = "1 = 1";
- my $glwhere = "";
- my $projectwhere = "";
- my $subwhere = "";
- my $yearendwhere = "1 = 1";
- my $item;
-
- my $category = "AND (";
- foreach $item (@{ $categories }) {
- $category .= qq|c.category = '$item' OR |;
- }
- $category =~ s/OR $/\)/;
-
-
- # get headings
- $query = qq|SELECT accno, description, category
- FROM chart c
- WHERE c.charttype = 'H'
- $category
- ORDER by c.accno|;
-
- if ($form->{accounttype} eq 'gifi')
- {
- $query = qq|SELECT g.accno, g.description, c.category
- FROM gifi g
- JOIN chart c ON (c.gifi_accno = g.accno)
- WHERE c.charttype = 'H'
- $category
- ORDER BY g.accno|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my @headingaccounts = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc))
- {
- $form->{$ref->{category}}{$ref->{accno}}{description} = "$ref->{description}";
- $form->{$ref->{category}}{$ref->{accno}}{charttype} = "H";
- $form->{$ref->{category}}{$ref->{accno}}{accno} = $ref->{accno};
-
- push @headingaccounts, $ref->{accno};
- }
-
- $sth->finish;
-
-
- if ($fromdate) {
- $where .= " AND ac.transdate >= '$fromdate'";
- $projectwhere .= " AND transdate >= '$fromdate'";
- if ($form->{method} eq 'cash') {
- $subwhere .= " AND transdate >= '$fromdate'";
- $glwhere = " AND ac.transdate >= '$fromdate'";
- }
- }
-
- if ($todate) {
- $where .= " AND ac.transdate <= '$todate'";
- $projectwhere .= " AND transdate <= '$todate'";
- $subwhere .= " AND transdate <= '$todate'";
- $yearendwhere = "ac.transdate < '$todate'";
- }
-
- if ($yearend) {
- $ywhere = " AND ac.trans_id NOT IN
- (SELECT trans_id FROM yearend)";
-
- if ($fromdate) {
- $ywhere = " AND ac.trans_id NOT IN
- (SELECT trans_id FROM yearend
- WHERE transdate >= '$fromdate')";
- if ($todate) {
- $ywhere = " AND ac.trans_id NOT IN
- (SELECT trans_id FROM yearend
- WHERE transdate >= '$fromdate'
- AND transdate <= '$todate')";
- }
- }
-
- if ($todate) {
- $ywhere = " AND ac.trans_id NOT IN
- (SELECT trans_id FROM yearend
- WHERE transdate <= '$todate')";
- }
- }
-
- if ($department_id)
- {
- $dpt_join = qq|
- JOIN department t ON (a.department_id = t.id)
- |;
- $dpt_where = qq|
- AND t.id = $department_id
- |;
- }
-
- if ($project_id)
- {
- $project = qq|
- AND ac.project_id = $project_id
- |;
- }
-
-
- if ($form->{accounttype} eq 'gifi')
- {
-
- if ($form->{method} eq 'cash')
- {
-
- $query = qq|
-
- SELECT g.accno, sum(ac.amount) AS amount,
- g.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AR_paid%'
- $subwhere
- )
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT '' AS accno, SUM(ac.amount) AS amount,
- '' AS description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ar a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND c.gifi_accno = ''
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AR_paid%'
- $subwhere
- )
- $project
- GROUP BY c.category
-
- UNION ALL
-
- SELECT g.accno, sum(ac.amount) AS amount,
- g.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT '' AS accno, SUM(ac.amount) AS amount,
- '' AS description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ap a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND c.gifi_accno = ''
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
- $project
- GROUP BY c.category
-
- UNION ALL
-
--- add gl
-
- SELECT g.accno, sum(ac.amount) AS amount,
- g.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- JOIN gl a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $glwhere
- $dpt_where
- $category
- AND NOT (c.link = 'AR' OR c.link = 'AP')
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT '' AS accno, SUM(ac.amount) AS amount,
- '' AS description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gl a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $glwhere
- $dpt_where
- $category
- AND c.gifi_accno = ''
- AND NOT (c.link = 'AR' OR c.link = 'AP')
- $project
- GROUP BY c.category
- |;
-
- if ($yearend) {
-
- # this is for the yearend
-
- $query .= qq|
-
- UNION ALL
-
- SELECT g.accno, sum(ac.amount) AS amount,
- g.description, c.category
- FROM yearend y
- JOIN acc_trans ac ON (ac.trans_id = y.trans_id)
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gifi g ON (g.accno = c.accno)
- $dpt_join
- WHERE $yearendwhere
- AND c.category = 'Q'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
- |;
- }
-
- if ($project_id) {
-
- $query .= qq|
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.income_accno_id = c.id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- $ywhere
- AND c.category = 'I'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AR_paid%'
- $subwhere
- )
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.allocated) * -1 AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- JOIN gifi g ON (g.accno = c.gifi_accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND ac.assemblyitem = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
- $project
- GROUP BY g.accno, g.description, c.category
- |;
- }
-
- } else {
-
- if ($department_id)
- {
- $dpt_join = qq|
- JOIN dpt_trans t ON (t.trans_id = ac.trans_id)
- |;
- $dpt_where = qq|
- AND t.department_id = $department_id
- |;
-
- }
-
- $query = qq|
-
- SELECT g.accno, SUM(ac.amount) AS amount,
- g.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_from
- $category
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT '' AS accno, SUM(ac.amount) AS amount,
- '' AS description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_from
- $category
- AND c.gifi_accno = ''
- $project
- GROUP BY c.category
- |;
-
- if ($yearend) {
-
- # this is for the yearend
-
- $query .= qq|
-
- UNION ALL
-
- SELECT g.accno, sum(ac.amount) AS amount,
- g.description, c.category
- FROM yearend y
- JOIN acc_trans ac ON (ac.trans_id = y.trans_id)
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gifi g ON (g.accno = c.accno)
- $dpt_join
- WHERE $yearendwhere
- AND c.category = 'Q'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
- |;
- }
-
- if ($project_id)
- {
-
- $query .= qq|
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.income_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- $ywhere
- AND c.category = 'I'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- SELECT g.accno AS accno, SUM(ac.sellprice * ac.allocated) * -1 AS amount,
- g.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND ac.assemblyitem = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
- |;
- }
-
- }
-
- } else { # standard account
-
- if ($form->{method} eq 'cash')
- {
-
- $query = qq|
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ar a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AR_paid%'
- $subwhere
- )
-
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN ap a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
-
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gl a ON (a.id = ac.trans_id)
- $dpt_join
- WHERE $where
- $ywhere
- $glwhere
- $dpt_from
- $category
- AND NOT (c.link = 'AR' OR c.link = 'AP')
- $project
- GROUP BY c.accno, c.description, c.category
- |;
-
- if ($yearend) {
-
- # this is for the yearend
-
- $query .= qq|
-
- UNION ALL
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM yearend y
- JOIN acc_trans ac ON (ac.trans_id = y.trans_id)
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $yearendwhere
- AND c.category = 'Q'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
- |;
- }
-
-
- if ($project_id)
- {
-
- $query .= qq|
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.income_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- $ywhere
- AND c.category = 'I'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AR_paid%'
- $subwhere
- )
-
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
-
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.allocated) * -1 AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND ac.assemblyitem = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%AP_paid%'
- $subwhere
- )
-
- $project
- GROUP BY c.accno, c.description, c.category
- |;
- }
-
- } else {
-
- if ($department_id)
- {
- $dpt_join = qq|
- JOIN dpt_trans t ON (t.trans_id = ac.trans_id)
- |;
- $dpt_where = qq|
- AND t.department_id = $department_id
- |;
- }
-
-
- $query = qq|
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $ywhere
- $dpt_where
- $category
- $project
- GROUP BY c.accno, c.description, c.category
- |;
-
- if ($yearend) {
-
- # this is for the yearend
-
- $query .= qq|
-
- UNION ALL
-
- SELECT c.accno, sum(ac.amount) AS amount,
- c.description, c.category
- FROM yearend y
- JOIN acc_trans ac ON (ac.trans_id = y.trans_id)
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $yearendwhere
- AND c.category = 'Q'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
- |;
- }
-
-
- if ($project_id)
- {
-
- $query .= qq|
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ar a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.income_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- $ywhere
- AND c.category = 'I'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.qty) AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- SELECT c.accno AS accno, SUM(ac.sellprice * ac.allocated) * -1 AS amount,
- c.description AS description, c.category
- FROM invoice ac
- JOIN ap a ON (a.id = ac.trans_id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c on (p.expense_accno_id = c.id)
- $dpt_join
- WHERE 1 = 1 $projectwhere
- AND ac.assemblyitem = '0'
- $ywhere
- AND c.category = 'E'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
- |;
-
- }
- }
- }
-
- my @accno;
- my $accno;
- my $ref;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc))
- {
-
- if ($ref->{category} eq 'C') {
- $ref->{category} = 'A';
- }
-
- # get last heading account
- @accno = grep { $_ le "$ref->{accno}" } @headingaccounts;
- $accno = pop @accno;
- if ($accno && ($accno ne $ref->{accno}) ) {
- if ($last_period)
- {
- $form->{$ref->{category}}{$accno}{last} += $ref->{amount};
- } else {
- $form->{$ref->{category}}{$accno}{this} += $ref->{amount};
- }
- }
-
- $form->{$ref->{category}}{$ref->{accno}}{accno} = $ref->{accno};
- $form->{$ref->{category}}{$ref->{accno}}{description} = $ref->{description};
- $form->{$ref->{category}}{$ref->{accno}}{charttype} = "A";
-
- if ($last_period)
- {
- $form->{$ref->{category}}{$ref->{accno}}{last} += $ref->{amount};
- } else {
- $form->{$ref->{category}}{$ref->{accno}}{this} += $ref->{amount};
- }
- }
- $sth->finish;
-
-
- # remove accounts with zero balance
- foreach $category (@{ $categories }) {
- foreach $accno (keys %{ $form->{$category} }) {
- $form->{$category}{$accno}{last} = $form->round_amount($form->{$category}{$accno}{last}, $form->{decimalplaces});
- $form->{$category}{$accno}{this} = $form->round_amount($form->{$category}{$accno}{this}, $form->{decimalplaces});
-
- delete $form->{$category}{$accno} if ($form->{$category}{$accno}{this} == 0 && $form->{$category}{$accno}{last} == 0);
- }
- }
-
-}
-
-
-
-sub trial_balance {
- my ($self, $myconfig, $form) = @_;
-
- my $dbh = $form->dbconnect($myconfig);
-
- my ($query, $sth, $ref);
- my %balance = ();
- my %trb = ();
- my $null;
- my $department_id;
- my $project_id;
- my @headingaccounts = ();
- my $dpt_where;
- my $dpt_join;
- my $project;
-
- my $where = "1 = 1";
- my $invwhere = $where;
-
- ($null, $department_id) = split /--/, $form->{department};
- ($null, $project_id) = split /--/, $form->{projectnumber};
-
- if ($department_id) {
- $dpt_join = qq|
- JOIN dpt_trans t ON (ac.trans_id = t.trans_id)
- |;
- $dpt_where = qq|
- AND t.department_id = $department_id
- |;
- }
-
-
- # project_id only applies to getting transactions
- # it has nothing to do with a trial balance
- # but we use the same function to collect information
-
- if ($project_id) {
- $project = qq|
- AND ac.project_id = $project_id
- |;
- }
-
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- # get beginning balances
- if ($form->{fromdate}) {
-
- if ($form->{accounttype} eq 'gifi') {
-
- $query = qq|SELECT g.accno, c.category, SUM(ac.amount) AS amount,
- g.description
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE ac.transdate < '$form->{fromdate}'
- $dpt_where
- $project
- GROUP BY g.accno, c.category, g.description
- |;
-
- } else {
-
- $query = qq|SELECT c.accno, c.category, SUM(ac.amount) AS amount,
- c.description
- FROM acc_trans ac
- JOIN chart c ON (ac.chart_id = c.id)
- $dpt_join
- WHERE ac.transdate < '$form->{fromdate}'
- $dpt_where
- $project
- GROUP BY c.accno, c.category, c.description
- |;
-
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $balance{$ref->{accno}} = $ref->{amount};
-
- if ($ref->{amount} != 0 && $form->{all_accounts}) {
- $trb{$ref->{accno}}{description} = $ref->{description};
- $trb{$ref->{accno}}{charttype} = 'A';
- $trb{$ref->{accno}}{category} = $ref->{category};
- }
-
- }
- $sth->finish;
-
- }
-
-
- # get headings
- $query = qq|SELECT c.accno, c.description, c.category
- FROM chart c
- WHERE c.charttype = 'H'
- ORDER by c.accno|;
-
- if ($form->{accounttype} eq 'gifi')
- {
- $query = qq|SELECT g.accno, g.description, c.category
- FROM gifi g
- JOIN chart c ON (c.gifi_accno = g.accno)
- WHERE c.charttype = 'H'
- ORDER BY g.accno|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc))
- {
- $trb{$ref->{accno}}{description} = $ref->{description};
- $trb{$ref->{accno}}{charttype} = 'H';
- $trb{$ref->{accno}}{category} = $ref->{category};
-
- push @headingaccounts, $ref->{accno};
- }
-
- $sth->finish;
-
-
- if ($form->{fromdate} || $form->{todate}) {
- if ($form->{fromdate}) {
- $where .= " AND ac.transdate >= '$form->{fromdate}'";
- $invwhere .= " AND a.transdate >= '$form->{fromdate}'";
- }
- if ($form->{todate}) {
- $where .= " AND ac.transdate <= '$form->{todate}'";
- $invwhere .= " AND a.transdate <= '$form->{todate}'";
- }
- }
-
-
- if ($form->{accounttype} eq 'gifi') {
-
- $query = qq|SELECT g.accno, g.description, c.category,
- SUM(ac.amount) AS amount
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
- |;
-
- if ($project_id) {
-
- $query .= qq|
-
- -- sold items
-
- UNION ALL
-
- SELECT g.accno, g.description, c.category,
- SUM(ac.sellprice * ac.qty) AS amount
- FROM invoice ac
- JOIN ar a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.income_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE $invwhere
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
-
- UNION ALL
-
- -- bought services
-
- SELECT g.accno, g.description, c.category,
- SUM(ac.sellprice * ac.qty) AS amount
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE $invwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
-
- -- COGS
-
- UNION ALL
-
- SELECT g.accno, g.description, c.category,
- SUM(ac.sellprice * ac.allocated) * -1 AS amount
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- JOIN gifi g ON (c.gifi_accno = g.accno)
- $dpt_join
- WHERE $invwhere
- AND ac.assemblyitem = '0'
- $dpt_where
- $project
- GROUP BY g.accno, g.description, c.category
-
- |;
- }
-
- $query .= qq|
- ORDER BY accno|;
-
- } else {
-
- $query = qq|SELECT c.accno, c.description, c.category,
- SUM(ac.amount) AS amount
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
- |;
-
- if ($project_id) {
-
- $query .= qq|
-
- -- sold items
-
- UNION ALL
-
- SELECT c.accno, c.description, c.category,
- SUM(ac.sellprice * ac.qty) AS amount
- FROM invoice ac
- JOIN ar a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.income_accno_id = c.id)
- $dpt_join
- WHERE $invwhere
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
-
- UNION ALL
-
- -- bought services
-
- SELECT c.accno, c.description, c.category,
- SUM(ac.sellprice * ac.qty) AS amount
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE $invwhere
- AND p.inventory_accno_id IS NULL
- AND p.assembly = '0'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
-
- -- cogs
-
- UNION ALL
-
- SELECT c.accno, c.description, c.category,
- SUM(ac.sellprice * ac.allocated) * -1 AS amount
- FROM invoice ac
- JOIN ap a ON (ac.trans_id = a.id)
- JOIN parts p ON (ac.parts_id = p.id)
- JOIN chart c ON (p.expense_accno_id = c.id)
- $dpt_join
- WHERE $invwhere
- AND ac.assemblyitem = '0'
- $dpt_where
- $project
- GROUP BY c.accno, c.description, c.category
-
- |;
- }
-
- $query .= qq|
- ORDER BY accno|;
-
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- # prepare query for each account
- $query = qq|SELECT (SELECT SUM(ac.amount) * -1
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- AND ac.amount < 0
- AND c.accno = ?) AS debit,
-
- (SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- AND ac.amount > 0
- AND c.accno = ?) AS credit
- |;
-
- if ($form->{accounttype} eq 'gifi') {
-
- $query = qq|SELECT (SELECT SUM(ac.amount) * -1
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- AND ac.amount < 0
- AND c.gifi_accno = ?) AS debit,
-
- (SELECT SUM(ac.amount)
- FROM acc_trans ac
- JOIN chart c ON (c.id = ac.chart_id)
- $dpt_join
- WHERE $where
- $dpt_where
- $project
- AND ac.amount > 0
- AND c.gifi_accno = ?) AS credit|;
-
- }
-
- $drcr = $dbh->prepare($query);
-
- # calculate debit and credit for the period
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $trb{$ref->{accno}}{description} = $ref->{description};
- $trb{$ref->{accno}}{charttype} = 'A';
- $trb{$ref->{accno}}{category} = $ref->{category};
- $trb{$ref->{accno}}{amount} += $ref->{amount};
- }
- $sth->finish;
-
- my ($debit, $credit);
-
- foreach my $accno (sort keys %trb) {
- $ref = ();
-
- $ref->{accno} = $accno;
- map { $ref->{$_} = $trb{$accno}{$_} } qw(description category charttype amount);
-
- $ref->{balance} = $form->round_amount($balance{$ref->{accno}}, 2);
-
- if ($trb{$accno}{charttype} eq 'A') {
- if ($project_id) {
-
- if ($ref->{amount} < 0) {
- $ref->{debit} = $ref->{amount} * -1;
- } else {
- $ref->{credit} = $ref->{amount};
- }
- next if $form->round_amount($ref->{amount}, 2) == 0;
-
- } else {
-
- # get DR/CR
- $drcr->execute($ref->{accno}, $ref->{accno});
-
- ($debit, $credit) = (0,0);
- while (($debit, $credit) = $drcr->fetchrow_array) {
- $ref->{debit} += $debit;
- $ref->{credit} += $credit;
- }
- $drcr->finish;
-
- }
-
- $ref->{debit} = $form->round_amount($ref->{debit}, 2);
- $ref->{credit} = $form->round_amount($ref->{credit}, 2);
-
- }
-
- # add subtotal
- @accno = grep { $_ le "$ref->{accno}" } @headingaccounts;
- $accno = pop @accno;
- if ($accno) {
- $trb{$accno}{debit} += $ref->{debit};
- $trb{$accno}{credit} += $ref->{credit};
- }
-
- push @{ $form->{TB} }, $ref;
-
- }
-
- $dbh->disconnect;
-
- # debits and credits for headings
- foreach $accno (@headingaccounts) {
- foreach $ref (@{ $form->{TB} }) {
- if ($accno eq $ref->{accno}) {
- $ref->{debit} = $trb{$accno}{debit};
- $ref->{credit} = $trb{$accno}{credit};
- }
- }
- }
-
-}
-
-
-sub aging {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
- my $invoice = ($form->{arap} eq 'ar') ? 'is' : 'ir';
-
- ($null, $form->{todate}) = $form->from_to($form->{year}, $form->{month}) if $form->{year} && $form->{month};
-
- $form->{todate} = $form->current_date($myconfig) unless ($form->{todate});
-
-
- my $where = "1 = 1";
- my $name;
- my $null;
- my $ref;
-
- if ($form->{"$form->{ct}_id"}) {
- $where .= qq| AND ct.id = $form->{"$form->{ct}_id"}|;
- } else {
- if ($form->{$form->{ct}}) {
- $name = $form->like(lc $form->{$form->{ct}});
- $where .= qq| AND lower(ct.name) LIKE '$name'| if $form->{$form->{ct}};
- }
- }
-
- my $dpt_join;
- if ($form->{department}) {
- ($null, $department_id) = split /--/, $form->{department};
- $dpt_join = qq|
- JOIN department d ON (a.department_id = d.id)
- |;
-
- $where .= qq| AND a.department_id = $department_id|;
- }
-
- # select outstanding vendors or customers, depends on $ct
- my $query = qq|SELECT DISTINCT ct.id, ct.name, ct.language_code
- FROM $form->{ct} ct
- JOIN $form->{arap} a ON (a.$form->{ct}_id = ct.id)
- $dpt_join
- WHERE $where
- AND a.paid != a.amount
- AND (a.transdate <= '$form->{todate}')
- ORDER BY ct.name|;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror;
-
- my $buysell = ($form->{arap} eq 'ar') ? 'buy' : 'sell';
-
- my %interval = ( 'Pg' => {
- 'c0' => "(date '$form->{todate}' - interval '0 days')",
- 'c30' => "(date '$form->{todate}' - interval '30 days')",
- 'c60' => "(date '$form->{todate}' - interval '60 days')",
- 'c90' => "(date '$form->{todate}' - interval '90 days')" },
- 'DB2' => {
- 'c0' => "(date ('$form->{todate}') - 0 days)",
- 'c30' => "(date ('$form->{todate}') - 30 days)",
- 'c60' => "(date ('$form->{todate}') - 60 days)",
- 'c90' => "(date ('$form->{todate}') - 90 days)" }
- );
-
- $interval{Oracle} = $interval{PgPP} = $interval{Pg};
-
-
- # for each company that has some stuff outstanding
- my $id;
- while (($id, $null, $language_code) = $sth->fetchrow_array ) {
-
- $query = qq|
- SELECT c.id AS ctid, c.name,
- c.address1, c.address2, c.city, c.state, c.zipcode, c.country,
- c.contact, c.email,
- c.phone as customerphone, c.fax as customerfax, c.$form->{ct}number,
- a.invnumber, a.transdate, a.till, a.ordnumber, a.notes,
- (a.amount - a.paid) as c0, 0.00 as c30, 0.00 as c60, 0.00 as c90,
- a.duedate, a.invoice, a.id,
- (SELECT $buysell FROM exchangerate e
- WHERE a.curr = e.curr
- AND e.transdate = a.transdate) AS exchangerate
- FROM $form->{arap} a
- JOIN $form->{ct} c ON (a.$form->{ct}_id = c.id)
- WHERE a.paid != a.amount
- AND c.id = $id
- AND (
- a.transdate <= $interval{$myconfig->{dbdriver}}{c0}
- AND a.transdate >= $interval{$myconfig->{dbdriver}}{c30}
- )
-
- UNION
-
- SELECT c.id AS ctid, c.name,
- c.address1, c.address2, c.city, c.state, c.zipcode, c.country,
- c.contact, c.email,
- c.phone as customerphone, c.fax as customerfax, c.$form->{ct}number,
- a.invnumber, a.transdate, a.till, a.ordnumber, a.notes,
- 0.00 as c0, (a.amount - a.paid) as c30, 0.00 as c60, 0.00 as c90,
- a.duedate, a.invoice, a.id,
- (SELECT $buysell FROM exchangerate e
- WHERE a.curr = e.curr
- AND e.transdate = a.transdate) AS exchangerate
- FROM $form->{arap} a
- JOIN $form->{ct} c ON (a.$form->{ct}_id = c.id)
- WHERE a.paid != a.amount
- AND c.id = $id
- AND (
- a.transdate < $interval{$myconfig->{dbdriver}}{c30}
- AND a.transdate >= $interval{$myconfig->{dbdriver}}{c60}
- )
-
- UNION
-
- SELECT c.id AS ctid, c.name,
- c.address1, c.address2, c.city, c.state, c.zipcode, c.country,
- c.contact, c.email,
- c.phone as customerphone, c.fax as customerfax, c.$form->{ct}number,
- a.invnumber, a.transdate, a.till, a.ordnumber, a.notes,
- 0.00 as c0, 0.00 as c30, (a.amount - a.paid) as c60, 0.00 as c90,
- a.duedate, a.invoice, a.id,
- (SELECT $buysell FROM exchangerate e
- WHERE a.curr = e.curr
- AND e.transdate = a.transdate) AS exchangerate
- FROM $form->{arap} a
- JOIN $form->{ct} c ON (a.$form->{ct}_id = c.id)
- WHERE a.paid != a.amount
- AND c.id = $id
- AND (
- a.transdate < $interval{$myconfig->{dbdriver}}{c60}
- AND a.transdate >= $interval{$myconfig->{dbdriver}}{c90}
- )
-
- UNION
-
- SELECT c.id AS ctid, c.name,
- c.address1, c.address2, c.city, c.state, c.zipcode, c.country,
- c.contact, c.email,
- c.phone as customerphone, c.fax as customerfax, c.$form->{ct}number,
- a.invnumber, a.transdate, a.till, a.ordnumber, a.notes,
- 0.00 as c0, 0.00 as c30, 0.00 as c60, (a.amount - a.paid) as c90,
- a.duedate, a.invoice, a.id,
- (SELECT $buysell FROM exchangerate e
- WHERE a.curr = e.curr
- AND e.transdate = a.transdate) AS exchangerate
- FROM $form->{arap} a
- JOIN $form->{ct} c ON (a.$form->{ct}_id = c.id)
- WHERE a.paid != a.amount
- AND c.id = $id
- AND a.transdate < $interval{$myconfig->{dbdriver}}{c90}
-
- ORDER BY
-
- ctid, transdate, invnumber
-
- |;
-
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{module} = ($ref->{invoice}) ? $invoice : $form->{arap};
- $ref->{module} = 'ps' if $ref->{till};
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- $ref->{language_code} = $language_code;
- push @{ $form->{AG} }, $ref;
- }
-
- $sth->finish;
-
- }
- $sth->finish;
-
- # get language
- my $query = qq|SELECT *
- FROM language
- ORDER BY 2|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{all_language} }, $ref;
- }
- $sth->finish;
-
- # disconnect
- $dbh->disconnect;
-
-}
-
-
-sub get_customer {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my $query = qq|SELECT name, email, cc, bcc
- FROM $form->{ct} ct
- WHERE ct.id = $form->{"$form->{ct}_id"}|;
- ($form->{$form->{ct}}, $form->{email}, $form->{cc}, $form->{bcc}) = $dbh->selectrow_array($query);
-
- $dbh->disconnect;
-
-}
-
-
-sub get_taxaccounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- # get tax accounts
- my $query = qq|SELECT c.accno, c.description, t.rate, c.link
- FROM chart c, tax t
- WHERE c.link LIKE '%CT_tax%'
- AND c.id = t.chart_id
- ORDER BY c.accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror;
-
- my $ref = ();
- while ($ref = $sth->fetchrow_hashref(NAME_lc) ) {
- push @{ $form->{taxaccounts} }, $ref;
- }
- $sth->finish;
-
- # get gifi tax accounts
- my $query = qq|SELECT DISTINCT g.accno, g.description,
- sum(t.rate) AS rate
- FROM gifi g, chart c, tax t
- WHERE g.accno = c.gifi_accno
- AND c.id = t.chart_id
- AND c.link LIKE '%CT_tax%'
- GROUP BY g.accno, g.description
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror;
-
- while ($ref = $sth->fetchrow_hashref(NAME_lc) ) {
- push @{ $form->{gifi_taxaccounts} }, $ref;
- }
- $sth->finish;
-
- $dbh->disconnect;
-
-}
-
-
-
-sub tax_report {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->dbconnect($myconfig);
-
- my ($null, $department_id) = split /--/, $form->{department};
-
- # build WHERE
- my $where = "1 = 1";
- my $cashwhere = "";
-
- if ($department_id) {
- $where .= qq|
- AND a.department_id = $department_id
- |;
- }
-
- my $query;
- my $sth;
- my $accno;
- my $rate;
-
- if ($form->{accno}) {
- if ($form->{accno} =~ /^gifi_/) {
- ($null, $accno) = split /_/, $form->{accno};
- $rate = $form->{"$form->{accno}_rate"};
- $accno = qq| AND ch.gifi_accno = '$accno'|;
- } else {
- $accno = $form->{accno};
- $rate = $form->{"$form->{accno}_rate"};
- $accno = qq| AND ch.accno = '$accno'|;
- }
- }
- $rate *= 1;
-
- my $table;
- my $ARAP;
-
- if ($form->{db} eq 'ar') {
- $table = "customer";
- $ARAP = "AR";
- }
- if ($form->{db} eq 'ap') {
- $table = "vendor";
- $ARAP = "AP";
- }
-
- my $transdate = "a.transdate";
-
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- # if there are any dates construct a where
- if ($form->{fromdate} || $form->{todate}) {
- if ($form->{fromdate}) {
- $where .= " AND $transdate >= '$form->{fromdate}'";
- }
- if ($form->{todate}) {
- $where .= " AND $transdate <= '$form->{todate}'";
- }
- }
-
-
- if ($form->{method} eq 'cash') {
- $transdate = "a.datepaid";
-
- my $todate = ($form->{todate}) ? $form->{todate} : $form->current_date($myconfig);
-
- $cashwhere = qq|
- AND ac.trans_id IN
- (
- SELECT trans_id
- FROM acc_trans
- JOIN chart ON (chart_id = id)
- WHERE link LIKE '%${ARAP}_paid%'
- AND $transdate <= '$todate'
- AND a.paid = a.amount
- )
- |;
-
- }
-
-
- my $ml = ($form->{db} eq 'ar') ? 1 : -1;
-
- my %ordinal = ( 'transdate' => 3,
- 'invnumber' => 4,
- 'name' => 5
- );
-
- my @a = qw(transdate invnumber name);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- $rate = 1 unless $rate;
-
- if ($form->{summary}) {
-
- $query = qq|SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- ac.amount * $ml AS tax,
- a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- $accno
- AND a.invoice = '0'
- $cashwhere
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount,
- sum(ac.sellprice * ac.qty) * $rate * $ml AS tax,
- a.till
- FROM invoice ac
- JOIN partstax pt ON (pt.parts_id = ac.parts_id)
- JOIN chart ch ON (ch.id = pt.chart_id)
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- JOIN ${table}tax t ON (t.${table}_id = n.id AND t.chart_id = ch.id)
- WHERE $where
- $accno
- AND a.invoice = '1'
- $cashwhere
- GROUP BY a.id, a.invoice, $transdate, a.invnumber, n.name,
- a.till
- |;
-
- if ($form->{fromdate}) {
- # include open transactions from previous period
- if ($cashwhere) {
- $query .= qq|
- UNION
-
- SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- ac.amount * $ml AS tax,
- a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- $accno
- AND a.invoice = '0'
- $cashwhere
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount,
- sum(ac.sellprice * ac.qty) * $rate * $ml AS tax,
- a.till
- FROM invoice ac
- JOIN partstax pt ON (pt.parts_id = ac.parts_id)
- JOIN chart ch ON (ch.id = pt.chart_id)
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- JOIN ${table}tax t ON (t.${table}_id = n.id AND t.chart_id = ch.id)
- WHERE a.datepaid >= '$form->{fromdate}'
- $accno
- AND a.invoice = '1'
- $cashwhere
- GROUP BY a.id, a.invoice, $transdate, a.invnumber, n.name,
- a.till
- |;
- }
- }
-
-
- } else {
-
- $query = qq|SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- ac.amount * $ml AS tax,
- a.notes AS description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- $accno
- AND a.invoice = '0'
- $cashwhere
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- i.sellprice * i.qty * $ml AS netamount,
- i.sellprice * i.qty * $rate * $ml AS tax,
- i.description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- JOIN ${table}tax t ON (t.${table}_id = n.id AND t.chart_id = ch.id)
- JOIN invoice i ON (i.trans_id = a.id)
- JOIN partstax pt ON (pt.parts_id = i.parts_id AND pt.chart_id = ch.id)
- WHERE $where
- $accno
- AND a.invoice = '1'
- $cashwhere
- |;
-
- if ($form->{fromdate}) {
- if ($cashwhere) {
- $query .= qq|
- UNION
-
- SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- ac.amount * $ml AS tax,
- a.notes AS description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- $accno
- AND a.invoice = '0'
- $cashwhere
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- i.sellprice * i.qty * $ml AS netamount,
- i.sellprice * i.qty * $rate * $ml AS tax,
- i.description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN chart ch ON (ch.id = ac.chart_id)
- JOIN $table n ON (n.id = a.${table}_id)
- JOIN ${table}tax t ON (t.${table}_id = n.id AND t.chart_id = ch.id)
- JOIN invoice i ON (i.trans_id = a.id)
- JOIN partstax pt ON (pt.parts_id = i.parts_id AND pt.chart_id = ch.id)
- WHERE a.datepaid >= '$form->{fromdate}'
- $accno
- AND a.invoice = '1'
- $cashwhere
- |;
- }
- }
- }
-
-
- if ($form->{report} =~ /nontaxable/) {
-
- if ($form->{summary}) {
- # only gather up non-taxable transactions
- $query = qq|SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- AND a.invoice = '0'
- AND a.netamount = a.amount
- $cashwhere
- GROUP BY a.id, $transdate, a.invnumber, n.name, a.netamount,
- a.till
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount, a.till
- FROM invoice ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- AND a.invoice = '1'
- AND (
- a.${table}_id NOT IN (
- SELECT ${table}_id FROM ${table}tax t (${table}_id)
- ) OR
- ac.parts_id NOT IN (
- SELECT parts_id FROM partstax p (parts_id)
- )
- )
- $cashwhere
- GROUP BY a.id, a.invnumber, $transdate, n.name, a.till
- |;
-
- if ($form->{fromdate}) {
- if ($cashwhere) {
- $query .= qq|
- UNION
-
- SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- AND a.invoice = '0'
- AND a.netamount = a.amount
- $cashwhere
- GROUP BY a.id, $transdate, a.invnumber, n.name, a.netamount,
- a.till
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount, a.till
- FROM invoice ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- AND a.invoice = '1'
- AND (
- a.${table}_id NOT IN (
- SELECT ${table}_id FROM ${table}tax t (${table}_id)
- ) OR
- ac.parts_id NOT IN (
- SELECT parts_id FROM partstax p (parts_id)
- )
- )
- $cashwhere
- GROUP BY a.id, a.invnumber, $transdate, n.name, a.till
- |;
- }
- }
-
- } else {
-
- # gather up details for non-taxable transactions
- $query = qq|SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- a.notes AS description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- AND a.invoice = '0'
- AND a.netamount = a.amount
- $cashwhere
- GROUP BY a.id, $transdate, a.invnumber, n.name, a.netamount,
- a.notes, a.till
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount,
- ac.description, a.till
- FROM invoice ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE $where
- AND a.invoice = '1'
- AND (
- a.${table}_id NOT IN (
- SELECT ${table}_id FROM ${table}tax t (${table}_id)
- ) OR
- ac.parts_id NOT IN (
- SELECT parts_id FROM partstax p (parts_id)
- )
- )
- $cashwhere
- GROUP BY a.id, a.invnumber, $transdate, n.name,
- ac.description, a.till
- |;
-
- if ($form->{fromdate}) {
- if ($cashwhere) {
- $query .= qq|
- UNION
-
- SELECT a.id, '0' AS invoice, $transdate AS transdate,
- a.invnumber, n.name, a.netamount,
- a.notes AS description, a.till
- FROM acc_trans ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- AND a.invoice = '0'
- AND a.netamount = a.amount
- $cashwhere
- GROUP BY a.id, $transdate, a.invnumber, n.name, a.netamount,
- a.notes, a.till
-
- UNION
-
- SELECT a.id, '1' AS invoice, $transdate AS transdate,
- a.invnumber, n.name,
- sum(ac.sellprice * ac.qty) * $ml AS netamount,
- ac.description, a.till
- FROM invoice ac
- JOIN $form->{db} a ON (a.id = ac.trans_id)
- JOIN $table n ON (n.id = a.${table}_id)
- WHERE a.datepaid >= '$form->{fromdate}'
- AND a.invoice = '1'
- AND (
- a.${table}_id NOT IN (
- SELECT ${table}_id FROM ${table}tax t (${table}_id)
- ) OR
- ac.parts_id NOT IN (
- SELECT parts_id FROM partstax p (parts_id)
- )
- )
- $cashwhere
- GROUP BY a.id, a.invnumber, $transdate, n.name,
- ac.description, a.till
- |;
- }
- }
-
- }
- }
-
-
- $query .= qq|
- ORDER by $sortorder|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while ( my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $ref->{tax} = $form->round_amount($ref->{tax}, 2);
- push @{ $form->{TR} }, $ref if $ref->{netamount} != 0;
- }
-
- $sth->finish;
- $dbh->disconnect;
-
-}
-
-
-sub paymentaccounts {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $ARAP = uc $form->{db};
-
- # get A(R|P)_paid accounts
- my $query = qq|SELECT accno, description
- FROM chart
- WHERE link LIKE '%${ARAP}_paid%'
- ORDER BY accno|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{PR} }, $ref;
- }
- $sth->finish;
-
- $form->all_years($dbh, $myconfig);
-
- $dbh->disconnect;
-
-}
-
-
-sub payments {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn AutoCommit off
- my $dbh = $form->dbconnect_noauto($myconfig);
-
- my $ml = 1;
- if ($form->{db} eq 'ar') {
- $table = 'customer';
- $ml = -1;
- }
- if ($form->{db} eq 'ap') {
- $table = 'vendor';
- }
-
-
- my $query;
- my $sth;
- my $dpt_join;
- my $where;
- my $var;
-
- if ($form->{department_id}) {
- $dpt_join = qq|
- JOIN dpt_trans t ON (t.trans_id = ac.trans_id)
- |;
-
- $where = qq|
- AND t.department_id = $form->{department_id}
- |;
- }
-
- ($form->{fromdate}, $form->{todate}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month};
-
- if ($form->{fromdate}) {
- $where .= " AND ac.transdate >= '$form->{fromdate}'";
- }
- if ($form->{todate}) {
- $where .= " AND ac.transdate <= '$form->{todate}'";
- }
- if (!$form->{fx_transaction}) {
- $where .= " AND ac.fx_transaction = '0'";
- }
-
- if ($form->{description}) {
- $var = $form->like(lc $form->{description});
- $where .= " AND lower(c.name) LIKE '$var'";
- }
- if ($form->{source}) {
- $var = $form->like(lc $form->{source});
- $where .= " AND lower(ac.source) LIKE '$var'";
- }
- if ($form->{memo}) {
- $var = $form->like(lc $form->{memo});
- $where .= " AND lower(ac.memo) LIKE '$var'";
- }
-
- my %ordinal = ( 'name' => 1,
- 'transdate' => 2,
- 'source' => 4,
- 'employee' => 6,
- 'till' => 7
- );
-
- my @a = qw(name transdate employee);
- my $sortorder = $form->sort_order(\@a, \%ordinal);
-
- my $glwhere = $where;
- $glwhere =~ s/\(c.name\)/\(g.description\)/;
-
- # cycle through each id
- foreach my $accno (split(/ /, $form->{paymentaccounts})) {
-
- $query = qq|SELECT id, accno, description
- FROM chart
- WHERE accno = '$accno'|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- push @{ $form->{PR} }, $ref;
- $sth->finish;
-
- $query = qq|SELECT c.name, ac.transdate, sum(ac.amount) * $ml AS paid,
- ac.source, ac.memo, e.name AS employee, a.till, a.curr
- FROM acc_trans ac
- JOIN $form->{db} a ON (ac.trans_id = a.id)
- JOIN $table c ON (c.id = a.${table}_id)
- LEFT JOIN employee e ON (a.employee_id = e.id)
- $dpt_join
- WHERE ac.chart_id = $ref->{id}
- $where|;
-
- if ($form->{till}) {
- $query .= " AND a.invoice = '1'
- AND NOT a.till IS NULL";
-
- if ($myconfig->{role} eq 'user') {
- $query .= " AND e.login = '$form->{login}'";
- }
- }
-
- $query .= qq|
- GROUP BY c.name, ac.transdate, ac.source, ac.memo,
- e.name, a.till, a.curr
- |;
-
- if (! $form->{till}) {
-# don't need gl for a till
-
- $query .= qq|
- UNION
- SELECT g.description, ac.transdate, sum(ac.amount) * $ml AS paid, ac.source,
- ac.memo, e.name AS employee, '' AS till, '' AS curr
- FROM acc_trans ac
- JOIN gl g ON (g.id = ac.trans_id)
- LEFT JOIN employee e ON (g.employee_id = e.id)
- $dpt_join
- WHERE ac.chart_id = $ref->{id}
- $glwhere
- AND (ac.amount * $ml) > 0
- GROUP BY g.description, ac.transdate, ac.source, ac.memo, e.name
- |;
-
- }
-
- $query .= qq|
- ORDER BY $sortorder|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my $pr = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{$ref->{id}} }, $pr;
- }
- $sth->finish;
-
- }
-
- $dbh->disconnect;
-
-}
-
-
-1;
-
-
diff --git a/sql-ledger/SL/User.pm b/sql-ledger/SL/User.pm
deleted file mode 100644
index e7e0b9c..0000000
--- a/sql-ledger/SL/User.pm
+++ /dev/null
@@ -1,925 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Jim Rawlings <jim@your-dba.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# user related functions
-#
-#=====================================================================
-
-package User;
-
-
-sub new {
- my ($type, $memfile, $login) = @_;
- my $self = {};
-
- if ($login ne "") {
- &error("", "$memfile locked!") if (-f "${memfile}.LCK");
-
- open(MEMBER, "$memfile") or &error("", "$memfile : $!");
-
- while (<MEMBER>) {
- if (/^\[$login\]/) {
- while (<MEMBER>) {
- last if /^\[/;
- next if /^(#|\s)/;
-
- # remove comments
- s/^\s*#.*//g;
-
- # remove any trailing whitespace
- s/^\s*(.*?)\s*$/$1/;
-
- ($key, $value) = split /=/, $_, 2;
-
- $self->{$key} = $value;
- }
-
- $self->{login} = $login;
-
- last;
- }
- }
- close MEMBER;
- }
-
- bless $self, $type;
-}
-
-
-sub country_codes {
-
- my %cc = ();
- my @language = ();
-
- # scan the locale directory and read in the LANGUAGE files
- opendir DIR, "locale";
-
- my @dir = grep !/(^\.\.?$|\..*)/, readdir DIR;
-
- foreach my $dir (@dir) {
- next unless open(FH, "locale/$dir/LANGUAGE");
- @language = <FH>;
- close FH;
-
- $cc{$dir} = "@language";
- }
-
- closedir(DIR);
-
- %cc;
-
-}
-
-
-sub login {
- my ($self, $form, $userspath) = @_;
-
- my $rc = -3;
-
- if ($self->{login}) {
-
- if ($self->{password}) {
- my $password = crypt $form->{password}, substr($self->{login}, 0, 2);
- if ($self->{password} ne $password) {
- return -1;
- }
- }
-
- unless (-f "$userspath/$self->{login}.conf") {
- $self->create_config("$userspath/$self->{login}.conf");
- }
-
- do "$userspath/$self->{login}.conf";
- $myconfig{dbpasswd} = unpack 'u', $myconfig{dbpasswd};
-
- # check if database is down
- my $dbh = DBI->connect($myconfig{dbconnect}, $myconfig{dbuser}, $myconfig{dbpasswd}) or $self->error($DBI::errstr);
-
- # we got a connection, check the version
- my $query = qq|SELECT version FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my ($dbversion) = $sth->fetchrow_array;
- $sth->finish;
-
- # add login to employee table if it does not exist
- # no error check for employee table, ignore if it does not exist
- my $login = $self->{login};
- $login =~ s/@.*//;
- $query = qq|SELECT id FROM employee WHERE login = '$login'|;
- $sth = $dbh->prepare($query);
- $sth->execute;
-
- my ($id) = $sth->fetchrow_array;
- $sth->finish;
-
- if (! $id) {
- my ($employeenumber) = $form->update_defaults(\%myconfig, "employeenumber", $dbh);
-
- $query = qq|INSERT INTO employee (login, employeenumber, name, workphone,
- role)
- VALUES ('$login', '$employeenumber', '$myconfig{name}',
- '$myconfig{tel}', '$myconfig{role}')|;
- $dbh->do($query);
- }
- $dbh->disconnect;
-
- $rc = 0;
-
-
- if ($form->{dbversion} ne $dbversion) {
- $rc = -4;
- $dbupdate = (calc_version($dbversion) < calc_version($form->{dbversion}));
- }
-
- if ($dbupdate) {
- $rc = -5;
-
- # if DB2 bale out
- if ($myconfig{dbdriver} eq 'DB2') {
- $rc = -2;
- }
- }
- }
-
- $rc;
-
-}
-
-
-
-sub dbconnect_vars {
- my ($form, $db) = @_;
-
- my %dboptions = (
- 'Pg' => {
- 'yy-mm-dd' => 'set DateStyle to \'ISO\'',
- 'mm/dd/yy' => 'set DateStyle to \'SQL, US\'',
- 'mm-dd-yy' => 'set DateStyle to \'POSTGRES, US\'',
- 'dd/mm/yy' => 'set DateStyle to \'SQL, EUROPEAN\'',
- 'dd-mm-yy' => 'set DateStyle to \'POSTGRES, EUROPEAN\'',
- 'dd.mm.yy' => 'set DateStyle to \'GERMAN\''
- },
- 'Oracle' => {
- 'yy-mm-dd' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'YY-MM-DD\'',
- 'mm/dd/yy' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'MM/DD/YY\'',
- 'mm-dd-yy' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'MM-DD-YY\'',
- 'dd/mm/yy' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'DD/MM/YY\'',
- 'dd-mm-yy' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'DD-MM-YY\'',
- 'dd.mm.yy' => 'ALTER SESSION SET NLS_DATE_FORMAT = \'DD.MM.YY\'',
- }
- );
-
-
- $form->{dboptions} = $dboptions{$form->{dbdriver}}{$form->{dateformat}};
-
- if ($form->{dbdriver} =~ /Pg/) {
- $form->{dbconnect} = "dbi:$form->{dbdriver}:dbname=$db";
- }
-
- if ($form->{dbdriver} eq 'Oracle') {
- $form->{dbconnect} = "dbi:Oracle:sid=$form->{sid}";
- }
-
- if ($form->{dbhost}) {
- $form->{dbconnect} .= ";host=$form->{dbhost}";
- }
- if ($form->{dbport}) {
- $form->{dbconnect} .= ";port=$form->{dbport}";
- }
-
-}
-
-
-sub dbdrivers {
-
- my @drivers = DBI->available_drivers();
-
-# return (grep { /(Pg|Oracle|DB2)/ } @drivers);
- return (grep { /Pg$/ } @drivers);
-
-}
-
-
-sub dbsources {
- my ($self, $form) = @_;
-
- my @dbsources = ();
- my ($sth, $query);
-
- $form->{dbdefault} = $form->{dbuser} unless $form->{dbdefault};
- $form->{sid} = $form->{dbdefault};
- &dbconnect_vars($form, $form->{dbdefault});
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
-
- if ($form->{dbdriver} eq 'Pg') {
-
- $query = qq|SELECT datname FROM pg_database|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
-
- if ($form->{only_acc_db}) {
-
- next if ($db =~ /^template/);
-
- &dbconnect_vars($form, $db);
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- $query = qq|SELECT tablename FROM pg_tables
- WHERE tablename = 'defaults'
- AND tableowner = '$form->{dbuser}'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- if ($sth->fetchrow_array) {
- push @dbsources, $db;
- }
- $sth->finish;
- $dbh->disconnect;
- next;
- }
- push @dbsources, $db;
- }
- }
-
- if ($form->{dbdriver} eq 'Oracle') {
- if ($form->{only_acc_db}) {
- $query = qq|SELECT owner FROM dba_objects
- WHERE object_name = 'DEFAULTS'
- AND object_type = 'TABLE'|;
- } else {
- $query = qq|SELECT username FROM dba_users|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
- push @dbsources, $db;
- }
- }
-
-
-# JJR
- if ($form->{dbdriver} eq 'DB2') {
- if ($form->{only_acc_db}) {
- $query = qq|SELECT tabschema FROM syscat.tables WHERE tabname = 'DEFAULTS'|;
- } else {
- $query = qq|SELECT DISTINCT schemaname FROM syscat.schemata WHERE definer != 'SYSIBM' AND schemaname != 'NULLID'|;
- }
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
- push @dbsources, $db;
- }
- }
-# End JJR
-
-# the above is not used but leave it in for future reference
-# DS, Oct. 28, 2003
-
-
- $sth->finish;
- $dbh->disconnect;
-
- return @dbsources;
-
-}
-
-
-sub dbcreate {
- my ($self, $form) = @_;
-
- my %dbcreate = ( 'Pg' => qq|CREATE DATABASE "$form->{db}"|,
- 'Oracle' => qq|CREATE USER "$form->{db}" DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP IDENTIFIED BY "$form->{db}"|);
-
- $dbcreate{Pg} .= " WITH ENCODING = '$form->{encoding}'" if $form->{encoding};
-
- $form->{sid} = $form->{dbdefault};
- &dbconnect_vars($form, $form->{dbdefault});
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
- my $query = qq|$dbcreate{$form->{dbdriver}}|;
- $dbh->do($query) || $form->dberror($query);
-
- if ($form->{dbdriver} eq 'Oracle') {
- $query = qq|GRANT CONNECT,RESOURCE TO "$form->{db}"|;
- $dbh->do($query) || $form->dberror($query);
- }
- $dbh->disconnect;
-
-
- # setup variables for the new database
- if ($form->{dbdriver} eq 'Oracle') {
- $form->{dbuser} = $form->{db};
- $form->{dbpasswd} = $form->{db};
- }
-
-
- &dbconnect_vars($form, $form->{db});
-
- $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- # create the tables
- my $dbdriver = ($form->{dbdriver} =~ /Pg/) ? 'Pg' : $form->{dbdriver};
-
- my $filename = qq|sql/${dbdriver}-tables.sql|;
- $self->process_query($form, $dbh, $filename);
-
- # create functions
- $filename = qq|sql/${dbdriver}-functions.sql|;
- $self->process_query($form, $dbh, $filename);
-
- # load gifi
- ($filename) = split /_/, $form->{chart};
- $filename =~ s/_//;
- $self->process_query($form, $dbh, "sql/${filename}-gifi.sql");
-
- # load chart of accounts
- $filename = qq|sql/$form->{chart}-chart.sql|;
- $self->process_query($form, $dbh, $filename);
-
- # create indices
- $filename = qq|sql/${dbdriver}-indices.sql|;
- $self->process_query($form, $dbh, $filename);
-
- # create custom tables and functions
- my $item;
- foreach $item (qw(tables functions)) {
- $filename = "sql/${dbdriver}-custom_${item}.sql";
- if (-f "$filename") {
- $self->process_query($form, $dbh, $filename);
- }
- }
-
- $dbh->disconnect;
-
-}
-
-
-
-sub process_query {
- my ($self, $form, $dbh, $filename) = @_;
-
- return unless (-f $filename);
-
- open(FH, "$filename") or $form->error("$filename : $!\n");
- my $query = "";
- my $loop = 0;
- my $sth;
-
-
- while (<FH>) {
-
- if ($loop && /^--\s*end\s*(procedure|function|trigger)/i) {
- $loop = 0;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- $sth->finish;
-
- $query = "";
- next;
- }
-
- if ($loop || /^create *(or replace)? *(procedure|function|trigger)/i) {
- $loop = 1;
- next if /^(--.*|\s+)$/;
-
- $query .= $_;
- next;
- }
-
- # don't add comments or empty lines
- next if /^(--.*|\s+)$/;
-
- # anything else, add to query
- $query .= $_;
-
- if (/;\s*$/) {
- # strip ;... Oracle doesn't like it
- $query =~ s/;\s*$//;
- $query =~ s/\\'/''/g;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- $sth->finish;
-
- $query = "";
- }
-
- }
- close FH;
-
-}
-
-
-
-sub dbdelete {
- my ($self, $form) = @_;
-
- my %dbdelete = ( 'Pg' => qq|DROP DATABASE "$form->{db}"|,
- 'Oracle' => qq|DROP USER $form->{db} CASCADE|
- );
-
- $form->{sid} = $form->{dbdefault};
- &dbconnect_vars($form, $form->{dbdefault});
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
- my $query = qq|$dbdelete{$form->{dbdriver}}|;
- $dbh->do($query) || $form->dberror($query);
-
- $dbh->disconnect;
-
-}
-
-
-
-sub dbsources_unused {
- my ($self, $form, $memfile) = @_;
-
- my @dbexcl = ();
- my @dbsources = ();
-
- $form->error("$memfile locked!") if (-f "${memfile}.LCK");
-
- # open members file
- open(FH, "$memfile") or $form->error("$memfile : $!");
-
- while (<FH>) {
- if (/^dbname=/) {
- my ($null,$item) = split /=/;
- push @dbexcl, $item;
- }
- }
-
- close FH;
-
- $form->{only_acc_db} = 1;
- my @db = &dbsources("", $form);
-
- push @dbexcl, $form->{dbdefault};
-
- foreach $item (@db) {
- unless (grep /$item$/, @dbexcl) {
- push @dbsources, $item;
- }
- }
-
- return @dbsources;
-
-}
-
-
-sub dbneedsupdate {
- my ($self, $form) = @_;
-
- my %dbsources = ();
- my $query;
-
- $form->{sid} = $form->{dbdefault};
- &dbconnect_vars($form, $form->{dbdefault});
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- if ($form->{dbdriver} =~ /Pg/) {
-
- $query = qq|SELECT d.datname FROM pg_database d, pg_user u
- WHERE d.datdba = u.usesysid
- AND u.usename = '$form->{dbuser}'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
-
- next if ($db =~ /^template/);
-
- &dbconnect_vars($form, $db);
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- $query = qq|SELECT tablename FROM pg_tables
- WHERE tablename = 'defaults'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- if ($sth->fetchrow_array) {
- $query = qq|SELECT version FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute;
-
- if (my ($version) = $sth->fetchrow_array) {
- $dbsources{$db} = $version;
- }
- $sth->finish;
- }
- $sth->finish;
- $dbh->disconnect;
- }
- $sth->finish;
- }
-
-
- if ($form->{dbdriver} eq 'Oracle') {
- $query = qq|SELECT owner FROM dba_objects
- WHERE object_name = 'DEFAULTS'
- AND object_type = 'TABLE'|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
-
- $form->{dbuser} = $db;
- &dbconnect_vars($form, $db);
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- $query = qq|SELECT version FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute;
-
- if (my ($version) = $sth->fetchrow_array) {
- $dbsources{$db} = $version;
- }
- $sth->finish;
- $dbh->disconnect;
- }
- $sth->finish;
- }
-
-
-# JJR
- if ($form->{dbdriver} eq 'DB2') {
- $query = qq|SELECT tabschema FROM syscat.tables WHERE tabname = 'DEFAULTS'|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- while (my ($db) = $sth->fetchrow_array) {
-
- &dbconnect_vars($form, $db);
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- $query = qq|SELECT version FROM defaults|;
- my $sth = $dbh->prepare($query);
- $sth->execute;
-
- if (my ($version) = $sth->fetchrow_array) {
- $dbsources{$db} = $version;
- }
- $sth->finish;
- $dbh->disconnect;
- }
- $sth->finish;
- }
-# End JJR
-
-# code for DB2 is not used, keep for future reference
-# DS, Oct. 28, 2003
-
- $dbh->disconnect;
-
- %dbsources;
-
-}
-
-
-sub dbupdate {
- my ($self, $form) = @_;
-
- $form->{sid} = $form->{dbdefault};
-
- my @upgradescripts = ();
- my $query;
- my $rc = -2;
-
- if ($form->{dbupdate}) {
- # read update scripts into memory
- opendir SQLDIR, "sql/." or $form->error($!);
- @upgradescripts = sort script_version grep /$form->{dbdriver}-upgrade-.*?\.sql$/, readdir SQLDIR;
- closedir SQLDIR;
- }
-
-
- foreach my $db (split / /, $form->{dbupdate}) {
-
- next unless $form->{$db};
-
- # strip db from dataset
- $db =~ s/^db//;
- &dbconnect_vars($form, $db);
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) or $form->dberror;
-
- # check version
- $query = qq|SELECT version FROM defaults|;
- my $sth = $dbh->prepare($query);
- # no error check, let it fall through
- $sth->execute;
-
- my $version = $sth->fetchrow_array;
- $sth->finish;
-
- next unless $version;
-
- $version = calc_version($version);
- my $dbversion = calc_version($form->{dbversion});
-
- foreach my $upgradescript (@upgradescripts) {
- my $a = $upgradescript;
- $a =~ s/(^$form->{dbdriver}-upgrade-|\.sql$)//g;
-
- my ($mindb, $maxdb) = split /-/, $a;
- $mindb = calc_version($mindb);
- $maxdb = calc_version($maxdb);
-
- next if ($version >= $maxdb);
-
- # exit if there is no upgrade script or version == mindb
- last if ($version < $mindb || $version >= $dbversion);
-
- # apply upgrade
- $self->process_query($form, $dbh, "sql/$upgradescript");
-
- $version = $maxdb;
-
- }
-
- $rc = 0;
- $dbh->disconnect;
-
- }
-
- $rc;
-
-}
-
-
-sub calc_version {
-
- my @v = split /\./, $_[0];
- my $version = 0;
- my $i;
-
- for ($i = 0; $i <= $#v; $i++) {
- $version *= 1000;
- $version += $v[$i];
- }
-
- return $version;
-
-}
-
-
-sub script_version {
- my ($my_a, $my_b) = ($a, $b);
-
- my ($a_from, $a_to, $b_from, $b_to);
- my ($res_a, $res_b, $i);
-
- $my_a =~ s/.*-upgrade-//;
- $my_a =~ s/.sql$//;
- $my_b =~ s/.*-upgrade-//;
- $my_b =~ s/.sql$//;
- ($a_from, $a_to) = split(/-/, $my_a);
- ($b_from, $b_to) = split(/-/, $my_b);
-
- $res_a = calc_version($a_from);
- $res_b = calc_version($b_from);
-
- if ($res_a == $res_b) {
- $res_a = calc_version($a_to);
- $res_b = calc_version($b_to);
- }
-
- return $res_a <=> $res_b;
-
-}
-
-
-sub create_config {
- my ($self, $filename) = @_;
-
-
- @config = &config_vars;
-
- open(CONF, ">$filename") or $self->error("$filename : $!");
-
- # create the config file
- print CONF qq|# configuration file for $self->{login}
-
-\%myconfig = (
-|;
-
- foreach $key (sort @config) {
- $self->{$key} =~ s/\\/\\\\/g;
- $self->{$key} =~ s/'/\\'/g;
- print CONF qq| $key => '$self->{$key}',\n|;
- }
-
-
- print CONF qq|);\n\n|;
-
- close CONF;
-
-}
-
-
-sub save_member {
- my ($self, $memberfile, $userspath) = @_;
-
- # format dbconnect and dboptions string
- &dbconnect_vars($self, $self->{dbname});
-
- $self->error("$memberfile locked!") if (-f "${memberfile}.LCK");
- open(FH, ">${memberfile}.LCK") or $self->error("${memberfile}.LCK : $!");
- close(FH);
-
- if (! open(CONF, "+<$memberfile")) {
- unlink "${memberfile}.LCK";
- $self->error("$memberfile : $!");
- }
-
- @config = <CONF>;
-
- seek(CONF, 0, 0);
- truncate(CONF, 0);
-
- while ($line = shift @config) {
- last if ($line =~ /^\[$self->{login}\]/);
- print CONF $line;
- }
-
- # remove everything up to next login or EOF
- while ($line = shift @config) {
- last if ($line =~ /^\[/);
- }
-
- # this one is either the next login or EOF
- print CONF $line;
-
- while ($line = shift @config) {
- print CONF $line;
- }
-
- print CONF qq|[$self->{login}]\n|;
-
- if ($self->{root}) {
- $self->{dbpasswd} = pack 'u', $self->{dbpasswd};
- chop $self->{dbpasswd};
- }
-
- if ($self->{password} ne $self->{old_password}) {
- $self->{password} = crypt $self->{password}, substr($self->{login}, 0, 2) if $self->{password};
- }
-
- if ($self->{'root login'}) {
- @config = ("password");
- } else {
- @config = &config_vars;
- }
-
- # replace \r\n with \n
- map { $self->{$_} =~ s/\r\n/\\n/g } qw(address signature);
-
- foreach $key (sort @config) {
- print CONF qq|$key=$self->{$key}\n|;
- }
-
- print CONF "\n";
- close CONF;
- unlink "${memberfile}.LCK";
-
- # create conf file
- if (! $self->{'root login'}) {
- $self->create_config("$userspath/$self->{login}.conf");
-
- $self->{dbpasswd} =~ s/\\'/'/g;
- $self->{dbpasswd} =~ s/\\\\/\\/g;
- $self->{dbpasswd} = unpack 'u', $self->{dbpasswd};
-
- # check if login is in database
- my $dbh = DBI->connect($self->{dbconnect}, $self->{dbuser}, $self->{dbpasswd}, {AutoCommit => 0}) or $self->error($DBI::errstr);
-
- # add login to employee table if it does not exist
- # no error check for employee table, ignore if it does not exist
- my $login = $self->{login};
- $login =~ s/@.*//;
- my $query = qq|SELECT id FROM employee WHERE login = '$login'|;
- my $sth = $dbh->prepare($query);
- $sth->execute;
-
- my ($id) = $sth->fetchrow_array;
- $sth->finish;
-
- if ($id) {
- $query = qq|UPDATE employee SET
- role = '$self->{role}',
- email = '$self->{email}',
- name = '$self->{name}'
- WHERE login = '$login'|;
-
- } else {
- my ($employeenumber) = Form::update_defaults("", \%$self, "employeenumber", $dbh);
- $query = qq|INSERT INTO employee (login, employeenumber, name, workphone,
- role, email)
- VALUES ('$login', '$employeenumber', '$self->{name}',
- '$self->{tel}', '$self->{role}', '$self->{email}')|;
- }
-
- $dbh->do($query);
- $dbh->commit;
- $dbh->disconnect;
-
- }
-
-}
-
-
-sub delete_login {
- my ($self, $form) = @_;
-
- my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}, {AutoCommit} => 0) or $form->dberror;
-
- my $login = $form->{login};
- $login =~ s/@.*//;
- my $query = qq|SELECT id FROM employee
- WHERE login = '$login'|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my ($id) = $sth->fetchrow_array;
- $sth->finish;
-
- my $query = qq|UPDATE employee
- login = NULL
- WHERE login = '$login'|;
- $dbh->do($query);
-
- $dbh->commit;
- $dbh->disconnect;
-
-}
-
-
-sub config_vars {
-
- my @conf = qw(acs address businessnumber charset company countrycode
- currency dateformat dbconnect dbdriver dbhost dbport dboptions
- dbname dbuser dbpasswd email fax name numberformat password
- printer role sid signature stylesheet tel templates vclimit
- menuwidth timeout);
-
- @conf;
-
-}
-
-
-sub error {
- my ($self, $msg) = @_;
-
- if ($ENV{HTTP_USER_AGENT}) {
- print qq|Content-Type: text/html
-
-<body bgcolor=ffffff>
-
-<h2><font color=red>Error!</font></h2>
-<p><b>$msg</b>|;
-
- }
-
- die "Error: $msg\n";
-
-}
-
-
-1;
-
diff --git a/sql-ledger/VERSION b/sql-ledger/VERSION
deleted file mode 100644
index 79a6144..0000000
--- a/sql-ledger/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-2.4.4
diff --git a/sql-ledger/am.pl b/sql-ledger/am.pl
deleted file mode 100755
index 535d835..0000000
--- a/sql-ledger/am.pl
+++ /dev/null
@@ -1,158 +0,0 @@
-#!/usr/bin/perl
-#
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-#
-# this script is the frontend called from bin/$terminal/$script
-# all the accounting modules are linked to this script which in
-# turn execute the same script in bin/$terminal/
-#
-#######################################################################
-
-# setup defaults, DO NOT CHANGE
-$userspath = "users";
-$spool = "spool";
-$templates = "templates";
-$memberfile = "users/members";
-$sendmail = "| /usr/sbin/sendmail -t";
-%printer = ( Printer => 'lpr' );
-########## end ###########################################
-
-
-$| = 1;
-
-use SL::Form;
-
-eval { require "sql-ledger.conf"; };
-
-
-$form = new Form;
-
-# name of this script
-$0 =~ tr/\\/\//;
-$pos = rindex $0, '/';
-$script = substr($0, $pos + 1);
-
-# we use $script for the language module
-$form->{script} = $script;
-# strip .pl for translation files
-$script =~ s/\.pl//;
-
-# pull in DBI
-use DBI qw(:sql_types);
-
-
-# check for user config file, could be missing or ???
-eval { require("$userspath/$form->{login}.conf"); };
-if ($@) {
- $locale = new Locale "$language", "$script";
-
- $form->{callback} = "";
- $msg1 = $locale->text('You are logged out!');
- $msg2 = $locale->text('Login');
- $form->redirect("$msg1 <p><a href=login.pl target=_top>$msg2</a>");
-}
-
-
-# send warnings and errors to browser
-$SIG{__WARN__} = sub { $form->info($_[0]) };
-$SIG{__DIE__} = sub { $form->error($_[0]) };
-
-$myconfig{dbpasswd} = unpack 'u', $myconfig{dbpasswd};
-map { $form->{$_} = $myconfig{$_} } qw(stylesheet charset timeout) unless ($form->{type} eq 'preferences');
-
-# locale messages
-$locale = new Locale "$myconfig{countrycode}", "$script";
-
-$form->{path} =~ s/\.\.\///g;
-if ($form->{path} !~ /^bin\//) {
- $form->error($locale->text('Invalid path!')."\n");
-}
-
-# did sysadmin lock us out
-if (-f "$userspath/nologin") {
- $form->error($locale->text('System currently down for maintenance!'));
-}
-
-# pull in the main code
-require "$form->{path}/$form->{script}";
-
-# customized scripts
-if (-f "$form->{path}/custom_$form->{script}") {
- eval { require "$form->{path}/custom_$form->{script}"; };
-}
-
-# customized scripts for login
-if (-f "$form->{path}/$form->{login}_$form->{script}") {
- eval { require "$form->{path}/$form->{login}_$form->{script}"; };
-}
-
-
-if ($form->{action}) {
- # window title bar, user info
- $form->{titlebar} = "SQL-Ledger ".$locale->text('Version'). " $form->{version} - $myconfig{name} - $myconfig{dbname}";
-
- &check_password;
-
- if (substr($form->{action}, 0, 1) =~ /( |\.)/) {
- &{ $form->{nextsub} };
- } else {
- &{ $locale->findsub($form->{action}) };
- }
-} else {
- $form->error($locale->text('action= not defined!'));
-}
-
-1;
-# end
-
-
-sub check_password {
-
- if ($myconfig{password}) {
-
- require "$form->{path}/pw.pl";
-
- if ($form->{password}) {
- if ((crypt $form->{password}, substr($form->{login}, 0, 2)) ne $myconfig{password}) {
- &getpassword;
- exit;
- }
- } else {
- if ($ENV{HTTP_USER_AGENT}) {
- $ENV{HTTP_COOKIE} =~ s/;\s*/;/g;
- %cookie = split /[=;]/, $ENV{HTTP_COOKIE};
-
- if ($form->{action} ne 'display') {
- if ((! $cookie{"SQL-Ledger-$form->{login}"}) || $cookie{"SQL-Ledger-$form->{login}"} ne $form->{sessionid}) {
- &getpassword(1);
- exit;
- }
- }
- }
- }
- }
-}
-
-
diff --git a/sql-ledger/bin/js/menu.pl b/sql-ledger/bin/js/menu.pl
deleted file mode 100644
index 718d22d..0000000
--- a/sql-ledger/bin/js/menu.pl
+++ /dev/null
@@ -1,188 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-
-$menufile = "menu.ini";
-use SL::Menu;
-
-
-1;
-# end of main
-
-
-sub display {
-
- $menuwidth = ($myconfig{menuwidth}) ? $myconfig{menuwidth} : ($ENV{HTTP_USER_AGENT} =~ /links/i) ? "240" : "155";
-
- $form->header(1);
-
- print qq|
-
-<FRAMESET COLS="$menuwidth,*" BORDER="1">
-
- <FRAME NAME="acc_menu" SRC="$form->{script}?login=$form->{login}&sessionid=$form->{sessionid}&action=acc_menu&path=$form->{path}">
- <FRAME NAME="main_window" SRC="am.pl?login=$form->{login}&sessionid=$form->{sessionid}&action=company_logo&path=$form->{path}">
-
-</FRAMESET>
-
-</BODY>
-</HTML>
-|;
-
-}
-
-
-sub acc_menu {
-
- my $menu = new Menu "$menufile";
- $menu = new Menu "custom_$menufile" if (-f "custom_$menufile");
- $menu = new Menu "$form->{login}_$menufile" if (-f "$form->{login}_$menufile");
-
- $form->{title} = $locale->text('Accounting Menu');
-
- $form->header;
-
- print qq|
-<script type="text/javascript">
-function SwitchMenu(obj) {
- if (document.getElementById) {
- var el = document.getElementById(obj);
- var ar = document.getElementById("cont").getElementsByTagName("DIV");
-
- if (el.style.display == "none") {
- el.style.display = "block"; //display the block of info
- } else {
- el.style.display = "none";
- }
-
- }
-}
-function ChangeClass(menu, newClass) {
- if (document.getElementById) {
- document.getElementById(menu).className = newClass;
- }
-}
-document.onselectstart = new Function("return false");
-</script>
-
-<body class=menu>
-|;
-
- &section_menu($menu);
-
- print qq|
-</body>
-</html>
-|;
-
-}
-
-
-sub section_menu {
- my ($menu, $level) = @_;
-
- print qq|
- <div id="cont">
- |;
-
- # build tiered menus
- my @menuorder = $menu->access_control(\%myconfig, $level);
-
- while (@menuorder){
- $i++;
- $item = shift @menuorder;
- $label = $item;
- $label =~ s/.*--//g;
- $label = $locale->text($label);
-
- $menu->{$item}{target} = "main_window" unless $menu->{$item}{target};
-
- if ($menu->{$item}{submenu}) {
-
- $display = "display: none;" unless $level eq ' ';
-
- print qq|
-<div id="menu$i" class="menuOut" onclick="SwitchMenu('sub$i')" onmouseover="ChangeClass('menu$i','menuOver')" onmouseout="ChangeClass('menu$i','menuOut')">$label</div>
- <div class="submenu" id="sub$i" style="$display">|;
-
- # remove same level items
- map { shift @menuorder } grep /^$item/, @menuorder;
-
- &section_menu($menu, $item);
-
- print qq|
-
- </div>
- |;
-
- } else {
-
- if ($menu->{$item}{module}) {
- if ($level eq "") {
- print qq|<div id="menu$i" class="menuOut" onmouseover="ChangeClass('menu$i','menuOver')" onmouseout="ChangeClass('menu$i','menuOut')"> |.
- $menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label</a></div>|;
-
- # remove same level items
- map { shift @menuorder } grep /^$item/, @menuorder;
-
- &section_menu($menu, $item);
-
- } else {
-
- print qq|<div class="submenu"> |.
- $menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label</a></div>|;
- }
-
- } else {
-
- $display = "display: none;" unless $item eq ' ';
-
- print qq|
-<div id="menu$i" class="menuOut" onclick="SwitchMenu('sub$i')" onmouseover="ChangeClass('menu$i','menuOver')" onmouseout="ChangeClass('menu$i','menuOut')">$label</div>
- <div class="submenu" id="sub$i" style="$display">|;
-
- &section_menu($menu, $item);
-
- print qq|
-
- </div>
- |;
-
- }
-
- }
-
- }
-
- print qq|
- </div>
- |;
-}
-
-
-sub menubar {
-
- 1;
-
-}
-
-
diff --git a/sql-ledger/bin/lynx/menu.pl b/sql-ledger/bin/lynx/menu.pl
deleted file mode 100644
index 16abe97..0000000
--- a/sql-ledger/bin/lynx/menu.pl
+++ /dev/null
@@ -1,151 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Christopher Browne <cbrowne@acm.org>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-#
-# menu for text based browsers (lynx)
-#
-#######################################################################
-
-$menufile = "menu.ini";
-use SL::Menu;
-
-
-1;
-# end of main
-
-
-
-sub display {
-
- $menu = new Menu "$menufile";
- $menu = new Menu "custom_$menufile" if (-f "custom_$menufile");
- $menu = new Menu "$form->{login}_$menufile" if (-f "$form->{login}_$menufile");
-
- @menuorder = $menu->access_control(\%myconfig);
-
- $form->{title} = "SQL-Ledger $form->{version}";
-
- $form->header(1);
-
- $offset = int (21 - $#menuorder)/2;
-
- print "<pre>";
- print "\n" x $offset;
- print "</pre>";
-
- print qq|<center><table>|;
-
- map { print "<tr><td>".$menu->menuitem(\%myconfig, \%$form, $_).$locale->text($_).qq|</a></td></tr>|; } @menuorder;
-
- print qq'
-</table>
-
-</body>
-</html>
-';
-
-}
-
-
-sub section_menu {
-
- $menu = new Menu "$menufile", $form->{level};
- $menu = new Menu "custom_$menufile", $form->{level} if (-f "custom_$menufile");
- $menu = new Menu "$form->{login}_$menufile", $form->{level} if (-f "$form->{login}_$menufile");
-
- # build tiered menus
- @menuorder = $menu->access_control(\%myconfig, $form->{level});
-
- foreach $item (@menuorder) {
- $a = $item;
- $item =~ s/^$form->{level}--//;
- push @neworder, $a unless ($item =~ /--/);
- }
- @menuorder = @neworder;
-
- $level = $form->{level};
- $level =~ s/--/ /g;
-
- $form->{title} = $locale->text($level);
-
- $form->header;
-
- $offset = int (21 - $#menuorder)/2;
- print "<pre>";
- print "\n" x $offset;
- print "</pre>";
-
- print qq|<center><table>|;
-
- foreach $item (@menuorder) {
- $label = $item;
- $label =~ s/$form->{level}--//g;
-
- # remove target
- $menu->{$item}{target} = "";
-
- print "<tr><td>".$menu->menuitem(\%myconfig, \%$form, $item, $form->{level}).$locale->text($label)."</a></td></tr>";
- }
-
- print qq'</table>
-
-</body>
-</html>
-';
-
-}
-
-
-sub acc_menu {
-
- &section_menu;
-
-}
-
-
-sub menubar {
- $menu = new Menu "$menufile", "";
-
- # build menubar
- @menuorder = $menu->access_control(\%myconfig, "");
-
- @neworder = ();
- map { push @neworder, $_ unless ($_ =~ /--/) } @menuorder;
- @menuorder = @neworder;
-
- print "<p>";
- $form->{script} = "menu.pl";
-
- print "| ";
- foreach $item (@menuorder) {
- $label = $item;
-
- # remove target
- $menu->{$item}{target} = "";
-
- print $menu->menuitem(\%myconfig, \%$form, $item, "").$locale->text($label)."</a> | ";
- }
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/admin.pl b/sql-ledger/bin/mozilla/admin.pl
deleted file mode 100644
index 8a4daba..0000000
--- a/sql-ledger/bin/mozilla/admin.pl
+++ /dev/null
@@ -1,1638 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# setup module
-# add/edit/delete users
-#
-#======================================================================
-
-$menufile = "menu.ini";
-
-use SL::Form;
-use SL::User;
-
-
-$form = new Form;
-
-$locale = new Locale $language, "admin";
-
-eval { require DBI; };
-$form->error($locale->text('DBI not installed!')) if ($@);
-
-$form->{stylesheet} = "sql-ledger.css";
-$form->{favicon} = "favicon.ico";
-$form->{timeout} = 600;
-
-require "$form->{path}/pw.pl";
-
-# customization
-if (-f "$form->{path}/custom_$form->{script}") {
- eval { require "$form->{path}/custom_$form->{script}"; };
- $form->error($@) if ($@);
-}
-
-
-if ($form->{action}) {
-
- $subroutine = $locale->findsub($form->{action});
-
- &check_password unless $form->{action} eq 'logout';
-
- &$subroutine;
-
-} else {
-
- # if there are no drivers bail out
- $form->error($locale->text('No Database Drivers available!')) unless (User->dbdrivers);
-
- # create memberfile
- if (! -f $memberfile) {
- open(FH, ">$memberfile") or $form->error("$memberfile : $!");
- print FH qq|# SQL-Ledger Accounting members
-
-[root login]
-password=
-
-|;
- close FH;
- }
-
- &adminlogin;
-
-}
-
-1;
-# end
-
-
-sub adminlogin {
-
- $form->{title} = qq|SQL-Ledger $form->{version} |.$locale->text('Administration');
-
- $form->{login} = "root login";
- $form->header(1);
-
- print qq|
-<script language="JavaScript" type="text/javascript">
-<!--
-function sf(){
- document.admin.password.focus();
-}
-// End -->
-</script>
-
-<body class=admin onload="sf()">
-
-<div align=center>
-
-<a href="http://www.sql-ledger.org"><img src=sql-ledger.png border=0></a>
-<h1 class=login>|.$locale->text('Version').qq| $form->{version}<p>|.$locale->text('Administration').qq|</h1>
-
-<form method=post action="$form->{script}" name=admin>
-
-<table>
- <tr>
- <th>|.$locale->text('Password').qq|</th>
- <td><input type=password name=password></td>
- <td><input type=submit class=submit name=action value="|.$locale->text('Login').qq|"></td>
- </tr>
-<input type=hidden name=action value=login>
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-</table>
-
-</form>
-
-<a href=http://www.sql-ledger.org>SQL-Ledger |.$locale->text('website').qq|</a>
-
-</div>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub login {
-
- &list_users;
-
-}
-
-
-sub logout {
-
- $form->{callback} = "$form->{script}?path=$form->{path}&endsession=1";
- $form->redirect($locale->text('You are logged out'));
-
-}
-
-
-sub add_user {
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Administration')." / ".$locale->text('Add User');
-
- $form->{Oracle_sid} = $sid;
- $form->{Oracle_dbport} = '1521';
- $form->{Oracle_dbhost} = `hostname`;
-
- if (-f "css/sql-ledger.css") {
- $myconfig->{stylesheet} = "sql-ledger.css";
- }
- $myconfig->{vclimit} = 1000;
- $myconfig->{menuwidth} = 155;
- $myconfig->{timeout} = 3600;
-
- &form_header;
- &form_footer;
-
-}
-
-
-
-sub edit {
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Administration')." / ".$locale->text('Edit User');
- $form->{edit} = 1;
-
- &form_header;
- &form_footer;
-
-}
-
-
-sub form_footer {
-
- if ($form->{edit}) {
- $delete = qq|<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">
-<input type=hidden name=edit value=1>|;
- }
-
- print qq|
-
-<input name=callback type=hidden value="$form->{script}?action=list_users&path=$form->{path}&sessionid=$form->{sessionid}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">
-$delete
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list_users {
-
- open(FH, "$memberfile") or $form->error("$memberfile : $!");
-
- $nologin = qq|
-<input type=submit class=submit name=action value="|.$locale->text('Lock System').qq|">|;
-
- if (-e "$userspath/nologin") {
- $nologin = qq|
-<input type=submit class=submit name=action value="|.$locale->text('Unlock System').qq|">|;
- }
-
-
- while (<FH>) {
- chop;
-
- if (/^\[.*\]/) {
- $login = $_;
- $login =~ s/(\[|\])//g;
- }
-
- if (/^(name=|company=|templates=|dbuser=|dbdriver=|dbname=|dbhost=)/) {
- chop ($var = $&);
- ($null, $member{$login}{$var}) = split /=/, $_, 2;
- }
- }
-
- close(FH);
-
-# type=submit $locale->text('Pg Database Administration')
-# type=submit $locale->text('PgPP Database Administration')
-# type=submit $locale->text('Oracle Database Administration')
-
- foreach $item (User->dbdrivers) {
- $dbdrivers .= qq|<input name=action type=submit class=submit value="|.$locale->text("$item Database Administration").qq|">|;
- }
-
-
- $column_header{login} = qq|<th>|.$locale->text('Login').qq|</th>|;
- $column_header{name} = qq|<th>|.$locale->text('Name').qq|</th>|;
- $column_header{company} = qq|<th>|.$locale->text('Company').qq|</th>|;
- $column_header{dbdriver} = qq|<th>|.$locale->text('Driver').qq|</th>|;
- $column_header{dbhost} = qq|<th>|.$locale->text('Host').qq|</th>|;
- $column_header{dataset} = qq|<th>|.$locale->text('Dataset').qq|</th>|;
- $column_header{templates} = qq|<th>|.$locale->text('Templates').qq|</th>|;
-
- @column_index = qw(login name company dbdriver dbhost dataset templates);
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Administration');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <tr class=listheading>
- <th>$form->{title}</th>
- </tr>
- <tr size=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-foreach $key (sort keys %member) {
- $href = "$script?action=edit&login=$key&path=$form->{path}&sessionid=$form->{sessionid}";
- $href =~ s/ /%20/g;
-
- $member{$key}{templates} =~ s/^$templates\///;
- $member{$key}{dbhost} = $locale->text('localhost') unless $member{$key}{dbhost};
- $member{$key}{dbname} = $member{$key}{dbuser} if ($member{$key}{dbdriver} eq 'Oracle');
-
- $column_data{login} = qq|<td><a href=$href>$key</a></td>|;
- $column_data{name} = qq|<td>$member{$key}{name}</td>|;
- $column_data{company} = qq|<td>$member{$key}{company}</td>|;
- $column_data{dbdriver} = qq|<td>$member{$key}{dbdriver}</td>|;
- $column_data{dbhost} = qq|<td>$member{$key}{dbhost}</td>|;
- $column_data{dataset} = qq|<td>$member{$key}{dbname}</td>|;
- $column_data{templates} = qq|<td>$member{$key}{templates}</td>|;
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>|;
-}
-
-
-print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br><input type=submit class=submit name=action value="|.$locale->text('Add User').qq|">
-<input type=submit class=submit name=action value="|.$locale->text('Change Admin Password').qq|">
-
-$dbdrivers
-$nologin
-
-<input type=submit class=submit name=action value="|.$locale->text('Logout').qq|">
-
-</form>
-
-|.$locale->text('Click on login name to edit!').qq|
-<br>
-|.$locale->text('To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.').qq|
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub form_header {
-
- # if there is a login, get user
- if ($form->{login}) {
- # get user
- $myconfig = new User "$memberfile", "$form->{login}";
-
- $myconfig->{signature} =~ s/\\n/\r\n/g;
- $myconfig->{address} =~ s/\\n/\r\n/g;
-
- # strip basedir from templates directory
- $myconfig->{templates} =~ s/^$templates\///;
-
- $myconfig->{dbpasswd} = unpack 'u', $myconfig->{dbpasswd};
- }
-
-
- foreach $item (qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd)) {
- $dateformat .= ($item eq $myconfig->{dateformat}) ? "<option selected>$item\n" : "<option>$item\n";
- }
-
- foreach $item (qw(1,000.00 1000.00 1.000,00 1000,00 1'000.00)) {
- $numberformat .= ($item eq $myconfig->{numberformat}) ? "<option selected>$item\n" : "<option>$item\n";
- }
-
-
- %countrycodes = User->country_codes;
- $countrycodes = "";
-
- foreach $key (sort { $countrycodes{$a} cmp $countrycodes{$b} } keys %countrycodes) {
- $countrycodes .= ($myconfig->{countrycode} eq $key) ? "<option selected value=$key>$countrycodes{$key}" : "<option value=$key>$countrycodes{$key}";
- }
- $countrycodes = qq|<option value="">English\n$countrycodes|;
-
- # is there a templates basedir
- if (! -d "$templates") {
- $form->error($locale->text('Directory').": $templates ".$locale->text('does not exist'));
- }
-
- opendir TEMPLATEDIR, "$templates/." or $form->error("$templates : $!");
- @all = grep !/^\.\.?$/, readdir TEMPLATEDIR;
- closedir TEMPLATEDIR;
-
- @allhtml = sort grep /\.html/, @all;
- @alldir = grep !/\.(html|tex|txt)$/, @all;
-
- @allhtml = reverse grep !/Default/, @allhtml;
- push @allhtml, 'Default';
- @allhtml = reverse @allhtml;
-
- foreach $item (sort @alldir) {
- if ($item eq $myconfig->{templates}) {
- $usetemplates .= qq|<option selected>$item\n|;
- } else {
- $usetemplates .= qq|<option>$item\n|;
- }
- }
-
- $lastitem = $allhtml[0];
- $lastitem =~ s/-.*//g;
- $mastertemplates = qq|<option>$lastitem\n|;
- foreach $item (@allhtml) {
- $item =~ s/-.*//g;
-
- if ($item ne $lastitem) {
- $mastertemplates .= qq|<option>$item\n|;
- $lastitem = $item;
- }
- }
-
- opendir CSS, "css/.";
- @all = grep /.*\.css$/, readdir CSS;
- closedir CSS;
-
- foreach $item (@all) {
- if ($item eq $myconfig->{stylesheet}) {
- $selectstylesheet .= qq|<option selected>$item\n|;
- } else {
- $selectstylesheet .= qq|<option>$item\n|;
- }
- }
- $selectstylesheet .= "<option>\n";
-
- if (%printer && $latex) {
- $selectprinter = "<option>\n";
- foreach $item (sort keys %printer) {
- if ($myconfig->{printer} eq $item) {
- $selectprinter .= qq|<option value="$item" selected>$item\n|;
- } else {
- $selectprinter .= qq|<option value="$item">$item\n|;
- }
- }
-
- $printer = qq|
- <tr>
- <th align=right>|.$locale->text('Printer').qq|</th>
- <td><select name=printer>$selectprinter</select></td>
- </tr>
-|;
-
- }
-
- $user = $form->{login};
- $form->{login} = "root login";
- $form->header;
- $form->{login} = $user;
-
- print qq|
-<body class=admin>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr class=listheading><th colspan=2>$form->{title}</th></tr>
- <tr size=5></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Login').qq|</th>
- <td><input name=login value="$myconfig->{login}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input type=password name=new_password size=8 value=$myconfig->{password}></td>
- <input type=hidden name=old_password value=$myconfig->{password}>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td><input name=name size=15 value="$myconfig->{name}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=30 value="$myconfig->{email}"></td>
- </tr>
- <tr valign=top>
- <th align=right>|.$locale->text('Signature').qq|</th>
- <td><textarea name=signature rows=3 cols=35>$myconfig->{signature}</textarea></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Phone').qq|</th>
- <td><input name=tel size=14 value="$myconfig->{tel}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Fax').qq|</th>
- <td><input name=fax size=14 value="$myconfig->{fax}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Company').qq|</th>
- <td><input name=company size=35 value="$myconfig->{company}"></td>
- </tr>
- <tr valign=top>
- <th align=right>|.$locale->text('Address').qq|</th>
- <td><textarea name=address rows=4 cols=35>$myconfig->{address}</textarea></td>
- </tr>
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Date Format').qq|</th>
- <td><select name=dateformat>$dateformat</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Number Format').qq|</th>
- <td><select name=numberformat>$numberformat</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Dropdown Limit').qq|</th>
- <td><input name=vclimit value="$myconfig->{vclimit}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Menu Width').qq|</th>
- <td><input name=menuwidth value="$myconfig->{menuwidth}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Language').qq|</th>
- <td><select name=countrycode>$countrycodes</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Character Set').qq|</th>
- <td><input name=charset value="$myconfig->{charset}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Session Timeout').qq|</th>
- <td><input name=timeout value="$myconfig->{timeout}"></td>
- </tr>
-
- <tr>
- <th align=right>|.$locale->text('Stylesheet').qq|</th>
- <td><select name=userstylesheet>$selectstylesheet</select></td>
- </tr>
- $printer
- <tr>
- <th align=right>|.$locale->text('Use Templates').qq|</th>
- <td><select name=usetemplates>$usetemplates</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('New Templates').qq|</th>
- <td><input name=newtemplates></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Setup Templates').qq|</th>
- <td><select name=mastertemplates>$mastertemplates</select></td>
- </tr>
- <input type=hidden name=templates value=$myconfig->{templates}>
- </table>
- </td>
- </tr>
- <tr class=listheading>
- <th colspan=2>|.$locale->text('Database').qq|</th>
- </tr>|;
-
- # list section for database drivers
- foreach $item (User->dbdrivers) {
-
- print qq|
- <tr>
- <td colspan=2>
- <table>
- <tr>|;
-
- $checked = "";
- if ($myconfig->{dbdriver} eq $item) {
- map { $form->{"${item}_$_"} = $myconfig->{$_} } qw(dbhost dbport dbuser dbpasswd dbname sid);
- $checked = "checked";
- }
-
- print qq|
- <th align=right>|.$locale->text('Driver').qq|</th>
- <td><input name=dbdriver type=radio class=radio value=$item $checked>&nbsp;$item</td>
- <th align=right>|.$locale->text('Host').qq|</th>
- <td><input name="${item}_dbhost" size=30 value=$form->{"${item}_dbhost"}></td>
- </tr>
- <tr>|;
-
- if ($item =~ /Pg/) {
- print qq|
- <th align=right>|.$locale->text('Dataset').qq|</th>
- <td><input name="${item}_dbname" size=15 value=$form->{"${item}_dbname"}></td>
- <th align=right>|.$locale->text('Port').qq|</th>
- <td><input name="${item}_dbport" size=4 value=$form->{"${item}_dbport"}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('User').qq|</th>
- <td><input name="${item}_dbuser" size=15 value=$form->{"${item}_dbuser"}></td>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input name="${item}_dbpasswd" type=password size=10 value=$form->{"${item}_dbpasswd"}></td>
- </tr>|;
-
- }
-
- if ($item eq 'Oracle') {
- print qq|
- <th align=right>SID</th>
- <td><input name=Oracle_sid value=$form->{Oracle_sid}></td>
- <th align=right>|.$locale->text('Port').qq|</th>
- <td><input name="${item}_dbport size=4 value=$form->{"${item}_dbport"}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Dataset').qq|</th>
- <td><input name="${item}_dbuser" size=15 value=$form->{"${item}_dbuser"}></td>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input name="${item}_dbpasswd" type=password size=10 value=$form->{"${item}_dbpasswd"}></td>
-
- </tr>|;
- }
-
-
- print qq|
- <input type=hidden name=old_dbpasswd value=$myconfig->{dbpasswd}>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2><hr size=2 noshade></td>
- </tr>
-|;
-
- }
-
-
- # access control
- open(FH, $menufile) or $form->error("$menufile : $!");
- # scan for first menu level
- @a = <FH>;
- close(FH);
-
- if (open(FH, "custom_$menufile")) {
- push @a, <FH>;
- }
- close(FH);
-
- foreach $item (@a) {
- next unless $item =~ /\[\w+/;
- next if $item =~ /\#/;
-
- $item =~ s/(\[|\])//g;
- chop $item;
-
- if ($item =~ /--/) {
- ($level, $menuitem) = split /--/, $item, 2;
- } else {
- $level = $item;
- $menuitem = $item;
- push @acsorder, $item;
- }
-
- push @{ $acs{$level} }, $menuitem;
-
- }
-
- %role = ( 'admin' => $locale->text('Administrator'),
- 'user' => $locale->text('User'),
- 'manager' => $locale->text('Manager')
-
- );
-
- $selectrole = "";
- foreach $item (qw(user admin manager)) {
- $selectrole .= ($myconfig->{role} eq $item) ? "<option selected value=$item>$role{$item}\n" : "<option value=$item>$role{$item}\n";
- }
-
- print qq|
- <tr class=listheading>
- <th colspan=2>|.$locale->text('Access Control').qq|</th>
- </tr>
- <tr>
- <td><select name=role>$selectrole</select></td>
- </tr>
-|;
-
- foreach $item (split /;/, $myconfig->{acs}) {
- ($key, $value) = split /--/, $item, 2;
- $excl{$key}{$value} = 1;
- }
-
- foreach $key (@acsorder) {
-
- $checked = "checked";
- if ($form->{login}) {
- $checked = ($excl{$key}{$key}) ? "" : "checked";
- }
-
- # can't have variable names with spaces
- # the 1 is for apache 2
- $item = $form->escape("${key}--$key", 1);
-
- $acsheading = $key;
- $acsheading =~ s/ /&nbsp;/g;
-
- $acsheading = qq|
- <th align=left><input name="$item" class=checkbox type=checkbox value=1 $checked>&nbsp;$acsheading</th>\n|;
- $menuitems .= "$item;";
- $acsdata = "
- <td>";
-
- foreach $item (@{ $acs{$key} }) {
- next if ($key eq $item);
-
- $checked = "checked";
- if ($form->{login}) {
- $checked = ($excl{$key}{$item}) ? "" : "checked";
- }
-
- $acsitem = $form->escape("${key}--$item", 1);
-
- $acsdata .= qq|
- <br><input name="$acsitem" class=checkbox type=checkbox value=1 $checked>&nbsp;$item|;
- $menuitems .= "$acsitem;";
- }
-
- $acsdata .= "
- </td>";
-
- print qq|
- <tr valign=top>$acsheading $acsdata
- </tr>
-|;
- }
-
- print qq|<input type=hidden name=acs value="$menuitems">
-
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-</div>
-|;
-
-}
-
-
-sub save {
-
- # no driver checked
- $form->error($locale->text('Database Driver not checked!')) unless $form->{dbdriver};
-
- # no spaces allowed in login name
- ($form->{login}) = split / /, $form->{login};
-
- $form->isblank("login", $locale->text('Login name missing!'));
-
- # check for duplicates
- if (!$form->{edit}) {
- $temp = new User "$memberfile", "$form->{login}";
-
- if ($temp->{login}) {
- $form->error("$form->{login} ".$locale->text('is already a member!'));
- }
- }
-
- # no spaces allowed in directories
- ($form->{newtemplates}) = split / /, $form->{newtemplates};
-
- if ($form->{newtemplates}) {
- $form->{templates} = $form->{newtemplates};
- } else {
- $form->{templates} = ($form->{usetemplates}) ? $form->{usetemplates} : $form->{login};
- }
-
- # is there a basedir
- if (! -d "$templates") {
- $form->error($locale->text('Directory').": $templates ".$locale->text('does not exist'));
- }
-
- # add base directory to $form->{templates}
- $form->{templates} = "$templates/$form->{templates}";
-
-
- $myconfig = new User "$memberfile", "$form->{login}";
-
- # redo acs variable and delete all the acs codes
- @acs = split /;/, $form->{acs};
-
- $form->{acs} = "";
- foreach $item (@acs) {
- $item = $form->escape($item, 1);
-
- if (!$form->{$item}) {
- $form->{acs} .= $form->unescape($form->unescape($item)).";";
- }
- delete $form->{$item};
- }
-
- # check which database was filled in
-
- $form->{dbhost} = $form->{"$form->{dbdriver}_dbhost"};
- $form->{dbport} = $form->{"$form->{dbdriver}_dbport"};
- $form->{dbpasswd} = $form->{"$form->{dbdriver}_dbpasswd"};
- $form->{dbuser} = $form->{"$form->{dbdriver}_dbuser"};
- $form->{dbname} = $form->{"$form->{dbdriver}_dbname"};
-
- if ($form->{dbdriver} eq 'Oracle') {
- $form->{sid} = $form->{Oracle_sid}, ;
-
- $form->isblank("dbhost", $locale->text('Hostname missing!'));
- $form->isblank("dbport", $locale->text('Port missing!'));
- $form->isblank("dbuser", $locale->text('Dataset missing!'));
- }
- if ($form->{dbdriver} =~ /Pg/) {
- $form->isblank("dbname", $locale->text('Dataset missing!'));
- $form->isblank("dbuser", $locale->text('Database User missing!'));
- }
-
- foreach $item (keys %{$form}) {
- $myconfig->{$item} = $form->{$item};
- }
-
- $myconfig->{password} = $form->{new_password} if $form->{new_password} ne $form->{old_password};
-
- delete $myconfig->{stylesheet};
- if ($form->{userstylesheet}) {
- $myconfig->{stylesheet} = $form->{userstylesheet};
- }
-
- $myconfig->save_member($memberfile, $userspath);
-
- # create user template directory and copy master files
- if (! -d "$form->{templates}") {
- umask(002);
-
- if (mkdir "$form->{templates}", oct("771")) {
-
- umask(007);
-
- # copy templates to the directory
- opendir TEMPLATEDIR, "$templates/." or $form->error("$templates : $!");
- @templates = grep /$form->{mastertemplates}.*?\.(html|tex|txt)$/, readdir TEMPLATEDIR;
- closedir TEMPLATEDIR;
-
- foreach $file (@templates) {
- open(TEMP, "$templates/$file") or $form->error("$templates/$file : $!");
-
- $file =~ s/$form->{mastertemplates}-//;
- open(NEW, ">$form->{templates}/$file") or $form->error("$form->{templates}/$file : $!");
-
- while ($line = <TEMP>) {
- print NEW $line;
- }
- close(TEMP);
- close(NEW);
- }
- } else {
- $form->error("$!: $form->{templates}");
- }
- }
-
- $form->redirect($locale->text('User saved!'));
-
-}
-
-
-sub delete {
-
- $form->{templates} = ($form->{templates}) ? "$templates/$form->{templates}" : "$templates/$form->{login}";
-
- $form->error("$memberfile ".$locale->text('locked!')) if (-f ${memberfile}.LCK);
- open(FH, ">${memberfile}.LCK") or $form->error("${memberfile}.LCK : $!");
- close(FH);
-
- if (! open(CONF, "+<$memberfile")) {
- unlink "${memberfile}.LCK";
- $form->error("$memberfile : $!");
- }
-
- @config = <CONF>;
-
- seek(CONF, 0, 0);
- truncate(CONF, 0);
-
- while ($line = shift @config) {
-
- chop $line;
-
- if ($line =~ /^\[/) {
- last if ($line =~ /\[$form->{login}\]/);
- $login = &login_name($line);
- }
-
- if ($line =~ /^templates=/) {
- $user{$login} = &get_value($line);
- }
-
- print CONF "$line\n";
- }
-
- # remove everything up to next login or EOF
- # and save template variable
- while ($line = shift @config) {
-
- chop $line;
-
- ($key, $value) = split /=/, $line, 2;
- $myconfig{$key} = $value;
-
- last if ($line =~ /^\[/);
- }
-
- # this one is either the next login or EOF
- print CONF "$line\n";
-
- $login = &login_name($line);
-
-
- while ($line = shift @config) {
-
- chop $line;
-
- if ($line =~ /^\[/) {
- $login = &login_name($line);
- }
-
- if ($line =~ /^templates=/) {
- $user{$login} = &get_value($line);
- }
-
- print CONF "$line\n";
- }
-
- close(CONF);
- unlink "${memberfile}.LCK";
-
- # scan %user for $templatedir
- foreach $login (keys %user) {
- last if ($found = ($myconfig{templates} eq $user{$login}));
- }
-
- map { $form->{$_} = $myconfig{$_} } keys %myconfig;
-
- # if found keep directory otherwise delete
- if (!$found) {
- # delete it if there is a template directory
- $dir = "$form->{templates}";
- if (-d "$dir") {
- unlink <$dir/*.html>;
- unlink <$dir/*.tex>;
- unlink <$dir/*.txt>;
- rmdir "$dir";
- }
- }
-
- # delete config file for user
- unlink "$userspath/$form->{login}.conf";
-
- User::delete_login("", \%$form);
-
- $form->redirect($locale->text('User deleted!'));
-
-}
-
-
-sub login_name {
- my $login = shift;
-
- $login =~ s/\[\]//g;
- return ($login) ? $login : undef;
-
-}
-
-
-
-sub get_value {
- my $line = shift;
-
- my ($null, $value) = split /=/, $line, 2;
-
- # remove comments
- $value =~ s/^\s*#.*//g;
-
- # remove any trailing whitespace
- $value =~ s/^\s*(.*?)\s*$/$1/;
-
- $value;
-}
-
-
-
-sub change_admin_password {
-
- $form->{title} = qq|SQL-Ledger |.$locale->text('Accounting')." ".$locale->text('Administration')." / ".$locale->text('Change Admin Password');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-<form method=post action=$form->{script}>
-
-<table>
- <tr>
- <tr class=listheading>
- <th>|.$locale->text('Change Password').qq|</th>
- </tr>
- <tr size=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input type=password name=new_password></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Confirm').qq|</th>
- <td><input type=password name=confirm_password></td>
- </tr>
- </table>
- </td>
- </tr>
-
-</table>
-
-<br>
-<hr size=3 noshade>
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<p>
-<input type=submit class=submit name=action value="|.$locale->text('Change Password').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub change_password {
-
- $form->error($locale->text('Passwords do not match!')) if $form->{new_password} ne $form->{confirm_password};
-
- $root->{password} = $form->{new_password};
-
- $root->{'root login'} = 1;
- $root->save_member($memberfile);
-
- $form->{callback} = "$form->{script}?action=list_users&path=$form->{path}&sessionid=$form->{sessionid}";
-
- $form->redirect($locale->text('Password changed!'));
-
-}
-
-
-sub check_password {
-
- $root = new User "$memberfile", "root login";
-
- if ($root->{password}) {
-
- if ($form->{password}) {
- $form->{callback} .= "&password=$form->{password}" if $form->{callback};
- $form->{sessionid} = time;
- if ($root->{password} ne crypt $form->{password}, 'ro') {
- &getpassword;
- exit;
- }
- } else {
- if ($ENV{HTTP_USER_AGENT}) {
- $ENV{HTTP_COOKIE} =~ s/;\s*/;/g;
- %cookie = split /[=;]/, $ENV{HTTP_COOKIE};
- if ((! $cookie{"SQL-Ledger-root login"}) || $cookie{"SQL-Ledger-root login"} ne $form->{sessionid}) {
- &getpassword(1);
- exit;
- }
- }
- }
- }
-
-}
-
-
-sub pg_database_administration {
-
- $form->{dbdriver} = 'Pg';
- &dbselect_source;
-
-}
-
-
-sub pgpp_database_administration {
-
- $form->{dbdriver} = 'PgPP';
- &dbselect_source;
-
-}
-
-
-sub oracle_database_administration {
-
- $form->{dbdriver} = 'Oracle';
- &dbselect_source;
-
-}
-
-
-sub dbdriver_defaults {
-
- # load some defaults for the selected driver
- %driverdefaults = ( 'Pg' => { dbport => '',
- dbuser => 'sql-ledger',
- dbdefault => 'template1',
- dbhost => '',
- connectstring => $locale->text('Connect to')
- },
- 'Oracle' => { dbport => '1521',
- dbuser => 'oralin',
- dbdefault => $sid,
- dbhost => `hostname`,
- connectstring => 'SID'
- }
- );
-
- $driverdefaults{PgPP} = $driverdefaults{Pg};
-
- map { $form->{$_} = $driverdefaults{$form->{dbdriver}}{$_} } keys %{ $driverdefaults{Pg} };
-
-}
-
-
-sub dbselect_source {
-
- &dbdriver_defaults;
-
- $msg{Pg} = $locale->text('Leave host and port field empty unless you want to make a remote connection.');
- $msg{PgPP} = $msg{Pg};
- $msg{Oracle} = $locale->text('You must enter a host and port for local and remote connections!');
-
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." / ".$locale->text('Database Administration');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-<center>
-<h2>$form->{title}</h2>
-
-<form method=post action=$form->{script}>
-
-<table>
- <tr>
- <td>
- <table>
- <tr class=listheading>
- <th colspan=4>|.$locale->text('Database').qq|</th>
- </tr>
- <input type=hidden name=dbdriver value=$form->{dbdriver}>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Host').qq|</th>
- <td><input name=dbhost size=25 value=$form->{dbhost}></td>
- <th align=right>|.$locale->text('Port').qq|</th>
- <td><input name=dbport size=5 value=$form->{dbport}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('User').qq|</th>
- <td><input name=dbuser size=10 value=$form->{dbuser}></td>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input type=password name=dbpasswd size=10></td>
- </tr>
- <tr>
-
- <th align=right>$form->{connectstring}</th>
- <td colspan=3><input name=dbdefault size=10 value=$form->{dbdefault}></td>
-
- </tr>
- </table>
- </td>
- </tr>
- </table>
-
-<input name=callback type=hidden value="$form->{script}?action=list_users&path=$form->{path}">
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-
-<input type=submit class=submit name=action value="|.$locale->text('Create Dataset').qq|">
-<input type=submit class=submit name=action value="|.$locale->text('Update Dataset').qq|">
-<input type=submit class=submit name=action value="|.$locale->text('Delete Dataset').qq|">
-
-</form>
-
- </td>
- </tr>
-</table>
-
-<p>|.$locale->text('This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!')
-
-.qq|
-<br>$msg{$form->{dbdriver}}
-
-
-</body>
-</html>
-|;
-
-}
-
-
-sub continue {
-
- &{ $form->{nextsub} };
-
-}
-
-
-sub update_dataset {
-
- %needsupdate = User->dbneedsupdate(\%$form);
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Database Administration')." / ".$locale->text('Update Dataset');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-
-<center>
-<h2>$form->{title}</h2>
-|;
-
-
- foreach $key (sort keys %needsupdate) {
- if ($needsupdate{$key} ne $form->{dbversion}) {
- $upd .= qq|<input name="db$key" type=checkbox value=1 checked> $key\n|;
- $form->{dbupdate} .= "db$key ";
- }
- }
-
- chop $form->{dbupdate};
-
-
- if ($form->{dbupdate}) {
-
- print qq|
-<table width=100%>
-<form method=post action=$form->{script}>
-
-<input type=hidden name=dbdriver value=$form->{dbdriver}>
-<input type=hidden name=dbhost value=$form->{dbhost}>
-<input type=hidden name=dbport value=$form->{dbport}>
-<input type=hidden name=dbuser value=$form->{dbuser}>
-<input type=hidden name=dbpasswd value=$form->{dbpasswd}>
-<input type=hidden name=dbdefault value=$form->{dbdefault}>
-
-<tr class=listheading>
- <th>|.$locale->text('The following Datasets need to be updated').qq|</th>
-</tr>
-<tr>
-<td>
-
-$upd
-
-</td>
-</tr>
-<tr>
-<td>
-
-<input name=dbupdate type=hidden value="$form->{dbupdate}">
-
-<input name=callback type=hidden value="$form->{script}?action=list_users&path=$form->{path}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=dbupdate>
-
-<hr size=3 noshade>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-</td></tr>
-</table>
-</form>
-|;
-
- } else {
-
- print $locale->text('All Datasets up to date!');
-
- }
-
- print qq|
-
-</body>
-</html>
-|;
-
-}
-
-
-sub dbupdate {
-
- User->dbupdate(\%$form);
-
- $form->redirect($locale->text('Dataset updated!'));
-
-}
-
-
-sub create_dataset {
-
- @dbsources = sort User->dbsources(\%$form);
-
- opendir SQLDIR, "sql/." or $form->error($!);
- foreach $item (sort grep /-chart\.sql/, readdir SQLDIR) {
- next if ($item eq 'Default-chart.sql');
- $item =~ s/-chart\.sql//;
- push @charts, qq|<input name=chart class=radio type=radio value="$item">$item|;
- }
- closedir SQLDIR;
-
- # add Default at beginning
- unshift @charts, qq|<input name=chart class=radio type=radio value="Default" checked>Default|;
-
- $selectencoding = qq|<option>
- <option value=SQL_ASCII>ASCII
- <option value=EUC_JP>Japanese EUC
- <option value=EUC_CN>Chinese EUC
- <option value=EUC_KR>Korean EUC
- <option value=JOHAB>Korean EUC (Hangle base)
- <option value=EUC_TW>Taiwan EUC
- <option value=UNICODE>Unicode (UTF-8)
- <option value=MULE_INTERNAL>Mule internal type
- <option value=LATIN1>ISO 8859-1/ECMA 94 (Latin alphabet no. 1)
- <option value=LATIN2>ISO 8859-2/ECMA 94 (Latin alphabet no. 2)
- <option value=LATIN3>ISO 8859-3/ECMA 94 (Latin alphabet no. 3)
- <option value=LATIN4>ISO 8859-4/ECMA 94 (Latin alphabet no. 4)
- <option value=LATIN5>ISO 8859-9/ECMA 128 (Latin alphabet no. 5)
- <option value=LATIN6>ISO 8859-10/ECMA 144 (Latin alphabet no. 6)
- <option value=LATIN7>ISO 8859-13 (Latin alphabet no. 7)
- <option value=LATIN8>ISO 8859-14 (Latin alphabet no. 8)
- <option value=LATIN9>ISO 8859-15 (Latin alphabet no. 9)
- <option value=LATIN10>ISO 8859-16/ASRO SR 14111 (Latin alphabet no. 10)
- <option value=ISO_8859_5>ISO 8859-5/ECMA 113 (Latin/Cyrillic)
- <option value=ISO_8859_6>ISO 8859-6/ECMA 114 (Latin/Arabic)
- <option value=ISO_8859_7>ISO 8859-7/ECMA 118 (Latin/Greek)
- <option value=ISO_8859_8>ISO 8859-8/ECMA 121 (Latin/Hebrew)
- <option value=KOI8>KOI8-R(U)
- <option value=WIN>Windows CP1251
- <option value=ALT>Windows CP866
- <option value=WIN1256>Windows CP1256 (Arabic)
- <option value=TCVN>Windows CP1258 (Vietnamese)
- <option value=WIN874>Windows CP874 (Thai)
- |;
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Database Administration')." / ".$locale->text('Create Dataset');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-
-<center>
-<h2>$form->{title}</h2>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr class=listheading>
- <th colspan=2>&nbsp;</th>
- </tr>
-
- <tr>
-
- <th align=right nowrap>|.$locale->text('Existing Datasets').qq|</th>
- <td>
-|;
-
- map { print "[&nbsp;$_&nbsp;] " } @dbsources;
-
- print qq|
- </td>
- </tr>
-
- <tr>
-
- <th align=right nowrap>|.$locale->text('Create Dataset').qq|</th>
- <td><input name=db></td>
-
- </tr>
-
- <tr>
-
- <th align=right nowrap>|.$locale->text('Multibyte Encoding').qq|</th>
- <td><select name=encoding>$selectencoding</select></td>
-
- </tr>
-
- <tr>
-
- <th align=right nowrap>|.$locale->text('Create Chart of Accounts').qq|</th>
- <td>
- <table>
-|;
-
- while (@charts) {
- print qq|
- <tr>
-|;
-
- map { print "<td>$charts[$_]</td>\n" } (0 .. 2);
-
- print qq|
- </tr>
-|;
-
- splice @charts, 0, 3;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2>
- <hr size=3 noshade>
- </td>
- </tr>
-</table>
-
-<input type=hidden name=dbdriver value=$form->{dbdriver}>
-<input type=hidden name=dbuser value=$form->{dbuser}>
-<input type=hidden name=dbhost value=$form->{dbhost}>
-<input type=hidden name=dbport value=$form->{dbport}>
-<input type=hidden name=dbpasswd value=$form->{dbpasswd}>
-<input type=hidden name=dbdefault value=$form->{dbdefault}>
-
-<input name=callback type=hidden value="$form->{script}?action=list_users&path=$form->{path}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=dbcreate>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub dbcreate {
-
- $form->isblank("db", $locale->text('Dataset missing!'));
-
- User->dbcreate(\%$form);
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Database Administration')." / ".$locale->text('Create Dataset');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-
-<center>
-<h2>$form->{title}</h2>
-
-<form method=post action=$form->{script}>|
-
-.$locale->text('Dataset')." $form->{db} ".$locale->text('successfully created!')
-
-.qq|
-
-<input type=hidden name=path value="$form->{path}">
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=list_users>
-
-<p><input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-
-</body>
-</html>
-|;
-
-}
-
-
-sub delete_dataset {
-
- if (@dbsources = User->dbsources_unused(\%$form, $memberfile)) {
- foreach $item (sort @dbsources) {
- $dbsources .= qq|<input name=db class=radio type=radio value=$item>&nbsp;$item |;
- }
- } else {
- $form->error($locale->text('Nothing to delete!'));
- }
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Database Administration')." / ".$locale->text('Delete Dataset');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-<h2>$form->{title}</h2>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr class=listheading>
- <th>|.$locale->text('The following Datasets are not in use and can be deleted').qq|</th>
- </tr>
-
- <tr>
- <td>
- $dbsources
- </td>
- </tr>
-
- <tr><td>
-<p>
-<input type=hidden name=dbdriver value=$form->{dbdriver}>
-<input type=hidden name=dbuser value=$form->{dbuser}>
-<input type=hidden name=dbhost value=$form->{dbhost}>
-<input type=hidden name=dbport value=$form->{dbport}>
-<input type=hidden name=dbpasswd value=$form->{dbpasswd}>
-<input type=hidden name=dbdefault value=$form->{dbdefault}>
-
-<input name=callback type=hidden value="$form->{script}?action=list_users&path=$form->{path}">
-
-<input type=hidden name=path value="$form->{path}">
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=dbdelete>
-
-<hr size=3 noshade>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
- </td></tr>
-</table>
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub dbdelete {
-
- if (!$form->{db}) {
- $form->error($locale->text('No Dataset selected!'));
- }
-
- User->dbdelete(\%$form);
-
- $form->{title} = "SQL-Ledger ".$locale->text('Accounting')." ".$locale->text('Database Administration')." / ".$locale->text('Delete Dataset');
-
- $form->{login} = "root login";
- $form->header;
-
- print qq|
-<body class=admin>
-
-
-<center>
-<h2>$form->{title}</h2>
-
-<form method=post action=$form->{script}>
-
-$form->{db} |.$locale->text('successfully deleted!')
-
-.qq|
-
-<input type=hidden name=path value="$form->{path}">
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=list_users>
-
-<p><input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-
-</body>
-</html>
-|;
-
-}
-
-
-sub unlock_system {
-
- unlink "$userspath/nologin";
-
- $form->{callback} = "$form->{script}?action=list_users&path=$form->{path}&sessionid=$form->{sessionid}";
-
- $form->redirect($locale->text('Lockfile removed!'));
-
-}
-
-
-sub lock_system {
-
- open(FH, ">$userspath/nologin") or $form->error($locale->text('Cannot create Lock!'));
- close(FH);
-
- $form->{callback} = "$form->{script}?action=list_users&path=$form->{path}&sessionid=$form->{sessionid}";
-
- $form->redirect($locale->text('Lockfile created!'));
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/am.pl b/sql-ledger/bin/mozilla/am.pl
deleted file mode 100644
index 8342903..0000000
--- a/sql-ledger/bin/mozilla/am.pl
+++ /dev/null
@@ -1,2394 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# administration
-#
-#======================================================================
-
-
-use SL::AM;
-use SL::CA;
-use SL::Form;
-use SL::User;
-use SL::RP;
-use SL::GL;
-
-
-1;
-# end of main
-
-
-
-sub add { &{ "add_$form->{type}" } };
-sub edit { &{ "edit_$form->{type}" } };
-sub save { &{ "save_$form->{type}" } };
-sub delete { &{ "delete_$form->{type}" } };
-
-
-sub save_as_new {
-
- delete $form->{id};
-
- &save;
-
-}
-
-
-sub add_account {
-
- $form->{title} = "Add";
- $form->{charttype} = "A";
-
- $form->{callback} = "$form->{script}?action=list_account&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &account_header;
- &form_footer;
-
-}
-
-
-sub edit_account {
-
- $form->{title} = "Edit";
-
- $form->{accno} =~ s/\\'/'/g;
- $form->{accno} =~ s/\\\\/\\/g;
-
- AM->get_account(\%myconfig, \%$form);
-
- foreach my $item (split(/:/, $form->{link})) {
- $form->{$item} = "checked";
- }
-
- &account_header;
- &form_footer;
-
-}
-
-
-sub account_header {
-
- $form->{title} = $locale->text("$form->{title} Account");
-
- $checked{$form->{charttype}} = "checked";
- $checked{"$form->{category}_"} = "checked";
- $checked{CT_tax} = ($form->{CT_tax}) ? "" : "checked";
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(accno description);
-
-# this is for our parser only!
-# type=submit $locale->text('Add Account')
-# type=submit $locale->text('Edit Account')
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=account>
-
-<input type=hidden name=inventory_accno_id value=$form->{inventory_accno_id}>
-<input type=hidden name=income_accno_id value=$form->{income_accno_id}>
-<input type=hidden name=expense_accno_id value=$form->{expense_accno_id}>
-<input type=hidden name=fxgain_accno_id values=$form->{fxgain_accno_id}>
-<input type=hidden name=fxloss_accno_id values=$form->{fxloss_accno_id}>
-
-<table border=0 width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Account Number').qq|</th>
- <td><input name=accno size=20 value="$form->{accno}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><input name=description size=40 value="$form->{description}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Account Type').qq|</th>
- <td>
- <table>
- <tr valign=top>
- <td><input name=category type=radio class=radio value=A $checked{A_}>&nbsp;|.$locale->text('Asset').qq|\n<br>
- <input name=category type=radio class=radio value=C $checked{C_}>&nbsp;|.$locale->text('Contra').qq|\n<br>
- <input name=category type=radio class=radio value=L $checked{L_}>&nbsp;|.$locale->text('Liability').qq|\n<br>
- <input name=category type=radio class=radio value=Q $checked{Q_}>&nbsp;|.$locale->text('Equity').qq|\n<br>
- <input name=category type=radio class=radio value=I $checked{I_}>&nbsp;|.$locale->text('Income').qq|\n<br>
- <input name=category type=radio class=radio value=E $checked{E_}>&nbsp;|.$locale->text('Expense')
- .qq|</td>
- <td width=50>&nbsp;</td>
- <td>
- <input name=charttype type=radio class=radio value="H" $checked{H}>&nbsp;|.$locale->text('Heading').qq|<br>
- <input name=charttype type=radio class=radio value="A" $checked{A}>&nbsp;|.$locale->text('Account')
- .qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-
-if ($form->{charttype} eq "A") {
- print qq|
- <tr>
- <td colspan=2>
- <table>
- <tr>
- <th align=left>|.$locale->text('Is this a summary account to record').qq|</th>
- <td>
- <input name=AR type=checkbox class=checkbox value=AR $form->{AR}>&nbsp;|.$locale->text('AR')
- .qq|&nbsp;<input name=AP type=checkbox class=checkbox value=AP $form->{AP}>&nbsp;|.$locale->text('AP')
- .qq|&nbsp;<input name=IC type=checkbox class=checkbox value=IC $form->{IC}>&nbsp;|.$locale->text('Inventory')
- .qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th colspan=2>|.$locale->text('Include in drop-down menus').qq|</th>
- </tr>
- <tr valign=top>
- <td colspan=2>
- <table width=100%>
- <tr>
- <th align=left>|.$locale->text('Receivables').qq|</th>
- <th align=left>|.$locale->text('Payables').qq|</th>
- <th align=left>|.$locale->text('Parts Inventory').qq|</th>
- <th align=left>|.$locale->text('Service Items').qq|</th>
- <th align=left>|.$locale->text('Labor/Overhead').qq|</th>
- </tr>
- <tr>
- <td>
- <input name=AR_amount type=checkbox class=checkbox value=AR_amount $form->{AR_amount}>&nbsp;|.$locale->text('Income').qq|\n<br>
- <input name=AR_paid type=checkbox class=checkbox value=AR_paid $form->{AR_paid}>&nbsp;|.$locale->text('Payment').qq|\n<br>
- <input name=AR_tax type=checkbox class=checkbox value=AR_tax $form->{AR_tax}>&nbsp;|.$locale->text('Tax') .qq|
- </td>
- <td>
- <input name=AP_amount type=checkbox class=checkbox value=AP_amount $form->{AP_amount}>&nbsp;|.$locale->text('Expense/Asset').qq|\n<br>
- <input name=AP_paid type=checkbox class=checkbox value=AP_paid $form->{AP_paid}>&nbsp;|.$locale->text('Payment').qq|\n<br>
- <input name=AP_tax type=checkbox class=checkbox value=AP_tax $form->{AP_tax}>&nbsp;|.$locale->text('Tax') .qq|
- </td>
- <td>
- <input name=IC_sale type=checkbox class=checkbox value=IC_sale $form->{IC_sale}>&nbsp;|.$locale->text('Income').qq|\n<br>
- <input name=IC_cogs type=checkbox class=checkbox value=IC_cogs $form->{IC_cogs}>&nbsp;|.$locale->text('COGS').qq|\n<br>
- <input name=IC_taxpart type=checkbox class=checkbox value=IC_taxpart $form->{IC_taxpart}>&nbsp;|.$locale->text('Tax') .qq|
- </td>
- <td>
- <input name=IC_income type=checkbox class=checkbox value=IC_income $form->{IC_income}>&nbsp;|.$locale->text('Income').qq|\n<br>
- <input name=IC_expense type=checkbox class=checkbox value=IC_expense $form->{IC_expense}>&nbsp;|.$locale->text('Expense').qq|\n<br>
- <input name=IC_taxservice type=checkbox class=checkbox value=IC_taxservice $form->{IC_taxservice}>&nbsp;|.$locale->text('Tax') .qq|
- </td>
- <td>
- <br>
- <input name=IC_cogs type=checkbox class=checkbox value=IC_cogs $form->{IC_cogs}>&nbsp;|.$locale->text('COGS').qq|\n<br>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2>
- <table>
- <tr>
- <th align=left>|.$locale->text('Include this account on the customer/vendor forms to flag customer/vendor as taxable?').qq|</th>
- <td>
- <input name=CT_tax type=radio class=radio value=CT_tax $form->{CT_tax}>&nbsp;|.$locale->text('Yes').qq|&nbsp;
- <input name=CT_tax type=radio class=radio value="" $checked{CT_tax}>&nbsp;|.$locale->text('No')
- .qq|
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-}
-
-print qq|
- <tr>
- <th align=right>|.$locale->text('GIFI').qq|</th>
- <td><input name=gifi_accno size=9 value=$form->{gifi_accno}></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub form_footer {
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{id}) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Save as new').qq|">
-|;
- }
-
- if ($form->{id} && $form->{orphaned}) {
- print qq|<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save_account {
-
- $form->isblank("accno", $locale->text('Account Number missing!'));
- $form->isblank("category", $locale->text('Account Type missing!'));
-
- # check for conflicting accounts
- if ($form->{AR} || $form->{AP} || $form->{IC}) {
- map { $a .= $form->{$_} } qw(AR AP IC);
- $form->error($locale->text('Cannot set account for more than one of AR, AP or IC')) if length $a > 2;
-
- map { $form->error("$form->{AR}$form->{AP}$form->{IC} ". $locale->text('account cannot be set to any other type of account')) if $form->{$_} } qw(AR_amount AR_tax AR_paid AP_amount AP_tax AP_paid IC_sale IC_cogs IC_taxpart IC_income IC_expense IC_taxservice);
- }
-
- foreach $item ("AR", "AP") {
- $i = 0;
- map { $i++ if $form->{$_} } ("${item}_amount", "${item}_paid", "${item}_tax");
- $form->error($locale->text('Cannot set multiple options for')." $item") if $i > 1;
- }
-
- $i = 0;
- map { $i++ if $form->{$_} } qw(IC_sale IC_cogs IC_taxpart);
- $form->error($locale->text('Cannot set multiple options for Parts Inventory')) if $i > 1;
-
- $i = 0;
- map { $i++ if $form->{$_} } qw(IC_income IC_expense IC_taxservice);
- $form->error($locale->text('Cannot set multiple options for Service Items')) if $i > 1;
-
- $form->redirect($locale->text('Account saved!')) if (AM->save_account(\%myconfig, \%$form));
- $form->error($locale->text('Cannot save account!'));
-
-}
-
-
-sub list_account {
-
- CA->all_accounts(\%myconfig, \%$form);
-
- $form->{title} = $locale->text('Chart of Accounts');
-
- # construct callback
- $callback = "$form->{script}?action=list_account&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- @column_index = qw(accno gifi_accno description debit credit link);
-
- $column_header{accno} = qq|<th class=listtop>|.$locale->text('Account').qq|</a></th>|;
- $column_header{gifi_accno} = qq|<th class=listtop>|.$locale->text('GIFI').qq|</a></th>|;
- $column_header{description} = qq|<th class=listtop>|.$locale->text('Description').qq|</a></th>|;
- $column_header{debit} = qq|<th class=listtop>|.$locale->text('Debit').qq|</a></th>|;
- $column_header{credit} = qq|<th class=listtop>|.$locale->text('Credit').qq|</a></th>|;
- $column_header{link} = qq|<th class=listtop>|.$locale->text('Link').qq|</a></th>|;
-
-
- $form->header;
- $colspan = $#column_index + 1;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=$colspan>$form->{title}</th>
- </tr>
- <tr height=5></tr>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
-</tr>
-|;
-
- # escape callback
- $callback = $form->escape($callback);
-
- foreach $ca (@{ $form->{CA} }) {
-
- $ca->{debit} = "&nbsp;";
- $ca->{credit} = "&nbsp;";
-
- if ($ca->{amount} > 0) {
- $ca->{credit} = $form->format_amount(\%myconfig, $ca->{amount}, 2, "&nbsp;");
- }
- if ($ca->{amount} < 0) {
- $ca->{debit} = $form->format_amount(\%myconfig, -$ca->{amount}, 2, "&nbsp;");
- }
-
- $ca->{link} =~ s/:/<br>/og;
-
- if ($ca->{charttype} eq "H") {
- print qq|<tr class=listheading>|;
-
- $column_data{accno} = qq|<th><a class=listheading href=$form->{script}?action=edit_account&id=$ca->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{accno}</a></th>|;
- $column_data{gifi_accno} = qq|<th class=listheading><a href=$form->{script}?action=edit_gifi&accno=$ca->{gifi_accno}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{gifi_accno}</a>&nbsp;</th>|;
- $column_data{description} = qq|<th class=listheading>$ca->{description}&nbsp;</th>|;
- $column_data{debit} = qq|<th>&nbsp;</th>|;
- $column_data{credit} = qq| <th>&nbsp;</th>|;
- $column_data{link} = qq|<th>&nbsp;</th>|;
-
- } else {
- $i++; $i %= 2;
- print qq|
-<tr valign=top class=listrow$i>|;
- $column_data{accno} = qq|<td><a href=$form->{script}?action=edit_account&id=$ca->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{accno}</a></td>|;
- $column_data{gifi_accno} = qq|<td><a href=$form->{script}?action=edit_gifi&accno=$ca->{gifi_accno}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{gifi_accno}</a>&nbsp;</td>|;
- $column_data{description} = qq|<td>$ca->{description}&nbsp;</td>|;
- $column_data{debit} = qq|<td align=right>$ca->{debit}</td>|;
- $column_data{credit} = qq|<td align=right>$ca->{credit}</td>|;
- $column_data{link} = qq|<td>$ca->{link}&nbsp;</td>|;
-
- }
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print "</tr>\n";
- }
-
- print qq|
- <tr><td colspan=$colspan><hr size=3 noshade></td></tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub delete_account {
-
- $form->{title} = $locale->text('Delete Account');
-
- foreach $id (qw(inventory_accno_id income_accno_id expense_accno_id fxgain_accno_id fxloss_accno_id)) {
- if ($form->{id} == $form->{$id}) {
- $form->error($locale->text('Cannot delete default account!'));
- }
- }
-
- $form->redirect($locale->text('Account deleted!')) if (AM->delete_account(\%myconfig, \%$form));
- $form->error($locale->text('Cannot delete account!'));
-
-}
-
-
-sub list_gifi {
-
- @{ $form->{fields} } = qw(accno description);
- $form->{table} = "gifi";
-
- AM->gifi_accounts(\%myconfig, \%$form);
-
- $form->{title} = $locale->text('GIFI');
-
- # construct callback
- $callback = "$form->{script}?action=list_gifi&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- @column_index = qw(accno description);
-
- $column_header{accno} = qq|<th class=listheading>|.$locale->text('GIFI').qq|</a></th>|;
- $column_header{description} = qq|<th class=listheading>|.$locale->text('Description').qq|</a></th>|;
-
-
- $form->header;
- $colspan = $#column_index + 1;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=$colspan>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
-</tr>
-|;
-
- # escape callback
- $callback = $form->escape($callback);
-
- foreach $ca (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- print qq|
-<tr valign=top class=listrow$i>|;
-
- $column_data{accno} = qq|<td><a href=$form->{script}?action=edit_gifi&coa=1&accno=$ca->{accno}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{accno}</td>|;
- $column_data{description} = qq|<td>$ca->{description}&nbsp;</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print "</tr>\n";
- }
-
- print qq|
- <tr>
- <td colspan=$colspan><hr size=3 noshade></td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub add_gifi {
- $form->{title} = "Add";
-
- # construct callback
- $form->{callback} = "$form->{script}?action=list_gifi&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->{coa} = 1;
-
- &gifi_header;
- &gifi_footer;
-
-}
-
-
-sub edit_gifi {
-
- $form->{title} = "Edit";
-
- AM->get_gifi(\%myconfig, \%$form);
-
- $form->error($locale->text('Account does not exist!')) unless $form->{accno};
-
- &gifi_header;
- &gifi_footer;
-
-}
-
-
-sub gifi_header {
-
- $form->{title} = $locale->text("$form->{title} GIFI");
-
-# $locale->text('Add GIFI')
-# $locale->text('Edit GIFI')
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(accno description);
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value="$form->{accno}">
-<input type=hidden name=type value=gifi>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('GIFI').qq|</th>
- <td><input name=accno size=20 value="$form->{accno}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><input name=description size=60 value="$form->{description}"></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub gifi_footer {
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br><input type=submit class=submit name=action value="|.$locale->text('Save').qq|">|;
-
- if ($form->{coa}) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Copy to COA').qq|">
-|;
-
- if ($form->{accno} && $form->{orphaned}) {
- print qq|<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save_gifi {
-
- $form->isblank("accno", $locale->text('GIFI missing!'));
- AM->save_gifi(\%myconfig, \%$form);
- $form->redirect($locale->text('GIFI saved!'));
-
-}
-
-
-sub copy_to_coa {
-
- $form->isblank("accno", $locale->text('GIFI missing!'));
-
- AM->save_gifi(\%myconfig, \%$form);
-
- delete $form->{id};
- $form->{gifi_accno} = $form->{accno};
-
- $form->{title} = "Add";
- $form->{charttype} = "A";
-
- &account_header;
- &form_footer;
-
-}
-
-
-sub delete_gifi {
-
- AM->delete_gifi(\%myconfig, \%$form);
- $form->redirect($locale->text('GIFI deleted!'));
-
-}
-
-
-sub add_department {
-
- $form->{title} = "Add";
- $form->{role} = "P";
-
- $form->{callback} = "$form->{script}?action=add_department&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &department_header;
- &form_footer;
-
-}
-
-
-sub edit_department {
-
- $form->{title} = "Edit";
-
- AM->get_department(\%myconfig, \%$form);
-
- &department_header;
- &form_footer;
-
-}
-
-
-sub list_department {
-
- AM->departments(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_department&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?action=list_department&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback = $form->escape($form->{callback});
-
- $form->{title} = $locale->text('Departments');
-
- @column_index = qw(description cost profit);
-
- $column_header{description} = qq|<th width=90%><a class=listheading href=$href>|.$locale->text('Description').qq|</a></th>|;
- $column_header{cost} = qq|<th class=listheading nowrap>|.$locale->text('Cost Center').qq|</th>|;
- $column_header{profit} = qq|<th class=listheading nowrap>|.$locale->text('Profit Center').qq|</th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $costcenter = ($ref->{role} eq "C") ? "*" : "&nbsp;";
- $profitcenter = ($ref->{role} eq "P") ? "*" : "&nbsp;";
-
- $column_data{description} = qq|<td><a href=$form->{script}?action=edit_department&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{description}</td>|;
- $column_data{cost} = qq|<td align=center>$costcenter</td>|;
- $column_data{profit} = qq|<td align=center>$profitcenter</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=department>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Add Department').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
- </body>
- </html>
-|;
-
-}
-
-
-sub department_header {
-
- $form->{title} = $locale->text("$form->{title} Department");
-
-# $locale->text('Add Department')
-# $locale->text('Edit Department')
-
- $form->{description} = $form->quote($form->{description});
-
- if (($rows = $form->numtextrows($form->{description}, 60)) > 1) {
- $description = qq|<textarea name="description" rows=$rows cols=60 wrap=soft>$form->{description}</textarea>|;
- } else {
- $description = qq|<input name=description size=60 value="$form->{description}">|;
- }
-
- $costcenter = "checked" if $form->{role} eq "C";
- $profitcenter = "checked" if $form->{role} eq "P";
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=department>
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=2>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td>$description</td>
- </tr>
- <tr>
- <td></td>
- <td><input type=radio style=radio name=role value="C" $costcenter> |.$locale->text('Cost Center').qq|
- <input type=radio style=radio name=role value="P" $profitcenter> |.$locale->text('Profit Center').qq|
- </td>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub save_department {
-
- $form->isblank("description", $locale->text('Description missing!'));
- AM->save_department(\%myconfig, \%$form);
- $form->redirect($locale->text('Department saved!'));
-
-}
-
-
-sub delete_department {
-
- AM->delete_department(\%myconfig, \%$form);
- $form->redirect($locale->text('Department deleted!'));
-
-}
-
-
-sub add_business {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add_business&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &business_header;
- &form_footer;
-
-}
-
-
-sub edit_business {
-
- $form->{title} = "Edit";
-
- AM->get_business(\%myconfig, \%$form);
-
- &business_header;
-
- $form->{orphaned} = 1;
- &form_footer;
-
-}
-
-
-sub list_business {
-
- AM->business(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_business&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?action=list_business&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback = $form->escape($form->{callback});
-
- $form->{title} = $locale->text('Type of Business');
-
- @column_index = qw(description discount);
-
- $column_header{description} = qq|<th width=90%><a class=listheading href=$href>|.$locale->text('Description').qq|</a></th>|;
- $column_header{discount} = qq|<th class=listheading>|.$locale->text('Discount').qq| %</th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $discount = $form->format_amount(\%myconfig, $ref->{discount} * 100, 2, "&nbsp");
-
- $column_data{description} = qq|<td><a href=$form->{script}?action=edit_business&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{description}</td>|;
- $column_data{discount} = qq|<td align=right>$discount</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=business>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Add Business').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
- </form>
-
- </body>
- </html>
-|;
-
-}
-
-
-sub business_header {
-
- $form->{title} = $locale->text("$form->{title} Business");
-
-# $locale->text('Add Business')
-# $locale->text('Edit Business')
-
- $form->{description} = $form->quote($form->{description});
- $form->{discount} = $form->format_amount(\%myconfig, $form->{discount} * 100);
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=business>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Type of Business').qq|</th>
- <td><input name=description size=30 value="$form->{description}"></td>
- <tr>
- <tr>
- <th align=right>|.$locale->text('Discount').qq| %</th>
- <td><input name=discount size=5 value=$form->{discount}></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub save_business {
-
- $form->isblank("description", $locale->text('Description missing!'));
- AM->save_business(\%myconfig, \%$form);
- $form->redirect($locale->text('Business saved!'));
-
-}
-
-
-sub delete_business {
-
- AM->delete_business(\%myconfig, \%$form);
- $form->redirect($locale->text('Business deleted!'));
-
-}
-
-
-
-sub add_sic {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add_sic&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &sic_header;
- &form_footer;
-
-}
-
-
-sub edit_sic {
-
- $form->{title} = "Edit";
-
- $form->{code} =~ s/\\'/'/g;
- $form->{code} =~ s/\\\\/\\/g;
-
- AM->get_sic(\%myconfig, \%$form);
- $form->{id} = $form->{code};
-
- &sic_header;
-
- $form->{orphaned} = 1;
- &form_footer;
-
-}
-
-
-sub list_sic {
-
- AM->sic(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_sic&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?action=list_sic&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback = $form->escape($form->{callback});
-
- $form->{title} = $locale->text('Standard Industrial Codes');
-
- @column_index = $form->sort_columns(qw(code description));
-
- $column_header{code} = qq|<th><a class=listheading href=$href&sort=code>|.$locale->text('Code').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- if ($ref->{sictype} eq 'H') {
- print qq|
- <tr valign=top class=listheading>
-|;
- $column_data{code} = qq|<th><a href=$form->{script}?action=edit_sic&code=$ref->{code}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{code}</th>|;
- $column_data{description} = qq|<th>$ref->{description}</th>|;
-
- } else {
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{code} = qq|<td><a href=$form->{script}?action=edit_sic&code=$ref->{code}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{code}</td>|;
- $column_data{description} = qq|<td>$ref->{description}</td>|;
-
- }
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=sic>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Add SIC').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
- </body>
- </html>
-|;
-
-}
-
-
-sub sic_header {
-
- $form->{title} = $locale->text("$form->{title} SIC");
-
-# $locale->text('Add SIC')
-# $locale->text('Edit SIC')
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(code description);
-
- $checked = ($form->{sictype} eq 'H') ? "checked" : "";
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=type value=sic>
-<input type=hidden name=id value="$form->{code}">
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=2>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <th align=right>|.$locale->text('Code').qq|</th>
- <td><input name=code size=10 value="$form->{code}"></td>
- <tr>
- <tr>
- <td></td>
- <th align=left><input name=sictype type=checkbox style=checkbox value="H" $checked> |.$locale->text('Heading').qq|</th>
- <tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><input name=description size=60 value="$form->{description}"></td>
- </tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub save_sic {
-
- $form->isblank("code", $locale->text('Code missing!'));
- $form->isblank("description", $locale->text('Description missing!'));
- AM->save_sic(\%myconfig, \%$form);
- $form->redirect($locale->text('SIC saved!'));
-
-}
-
-
-sub delete_sic {
-
- AM->delete_sic(\%myconfig, \%$form);
- $form->redirect($locale->text('SIC deleted!'));
-
-}
-
-
-sub add_language {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add_language&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &language_header;
- &form_footer;
-
-}
-
-
-sub edit_language {
-
- $form->{title} = "Edit";
-
- $form->{code} =~ s/\\'/'/g;
- $form->{code} =~ s/\\\\/\\/g;
-
- AM->get_language(\%myconfig, \%$form);
- $form->{id} = $form->{code};
-
- &language_header;
-
- $form->{orphaned} = 1;
- &form_footer;
-
-}
-
-
-sub list_language {
-
- AM->language(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_language&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?action=list_language&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback = $form->escape($form->{callback});
-
- $form->{title} = $locale->text('Languages');
-
- @column_index = $form->sort_columns(qw(code description));
-
- $column_header{code} = qq|<th><a class=listheading href=$href&sort=code>|.$locale->text('Code').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{code} = qq|<td><a href=$form->{script}?action=edit_language&code=$ref->{code}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{code}</td>|;
- $column_data{description} = qq|<td>$ref->{description}</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=language>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Add Language').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
- </body>
- </html>
-|;
-
-}
-
-
-sub language_header {
-
- $form->{title} = $locale->text("$form->{title} Language");
-
-# $locale->text('Add Language')
-# $locale->text('Edit Language')
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(code description);
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=type value=language>
-<input type=hidden name=id value="$form->{code}">
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=2>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <th align=right>|.$locale->text('Code').qq|</th>
- <td><input name=code size=10 value="$form->{code}"></td>
- <tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><input name=description size=60 value="$form->{description}"></td>
- </tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub save_language {
-
- $form->isblank("code", $locale->text('Code missing!'));
- $form->isblank("description", $locale->text('Description missing!'));
- AM->save_language(\%myconfig, \%$form);
- $form->redirect($locale->text('Language saved!'));
-
-}
-
-
-sub delete_language {
-
- AM->delete_language(\%myconfig, \%$form);
- $form->redirect($locale->text('Language deleted!'));
-
-}
-
-
-sub display_stylesheet {
-
- $form->{file} = "css/$myconfig{stylesheet}";
- &display_form;
-
-}
-
-
-sub display_form {
-
- $form->{file} =~ s/^(.:)*?\/|\.\.\///g;
- $form->{file} =~ s/^\/*//g;
- $form->{file} =~ s/$userspath//;
-
- $form->error("$!: $form->{file}") unless -f $form->{file};
-
- AM->load_template(\%$form);
-
- $form->{title} = $form->{file};
-
- # if it is anything but html
- if ($form->{file} !~ /\.html$/) {
- $form->{body} = "<pre>\n$form->{body}\n</pre>";
- }
-
- $form->header;
-
- print qq|
-<body>
-
-$form->{body}
-
-<form method=post action=$form->{script}>
-
-<input name=file type=hidden value=$form->{file}>
-<input name=type type=hidden value=template>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input name=action type=submit class=submit value="|.$locale->text('Edit').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub edit_template {
-
- AM->load_template(\%$form);
-
- $form->{title} = $locale->text('Edit Template');
- # convert &nbsp to &amp;nbsp;
- $form->{body} =~ s/&nbsp;/&amp;nbsp;/gi;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input name=file type=hidden value=$form->{file}>
-<input name=type type=hidden value=template>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input name=callback type=hidden value="$form->{script}?action=display_form&file=$form->{file}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}">
-
-<textarea name=body rows=25 cols=70>
-$form->{body}
-</textarea>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print q|
- </form>
-
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save_template {
-
- AM->save_template(\%$form);
- $form->redirect($locale->text('Template saved!'));
-
-}
-
-
-sub defaults {
-
- # get defaults for account numbers and last numbers
- AM->defaultaccounts(\%myconfig, \%$form);
-
- foreach $key (keys %{ $form->{IC} }) {
- foreach $accno (sort keys %{ $form->{IC}{$key} }) {
- $form->{account}{$key} .= ($form->{IC}{$key}{$accno}{id} == $form->{defaults}{$key}) ? "<option selected>$accno--$form->{IC}{$key}{$accno}{description}\n" : "<option>$accno--$form->{IC}{$key}{$accno}{description}\n";
- }
- }
-
- $form->{title} = $locale->text('System Defaults');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=type value=defaults>
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Business Number').qq|</th>
- <td><input name=businessnumber size=25 value="$form->{defaults}{businessnumber}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Weight Unit').qq|</th>
- <td><input name=weightunit size=5 value="$form->{defaults}{weightunit}"></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th class=listheading>|.$locale->text('Last Numbers & Default Accounts').qq|</th>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Inventory Account').qq|</th>
- <td><select name=inventory_accno>$form->{account}{IC}</select></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Income Account').qq|</th>
- <td><select name=income_accno>$form->{account}{IC_income}</select></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Expense Account').qq|</th>
- <td><select name=expense_accno>$form->{account}{IC_expense}</select></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Foreign Exchange Gain').qq|</th>
- <td><select name=fxgain_accno>$form->{account}{FX_gain}</select></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Foreign Exchange Loss').qq|</th>
- <td><select name=fxloss_accno>$form->{account}{FX_loss}</select></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th align=left>|.$locale->text('Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies').qq|</th>
- </tr>
- <tr>
- <td>
- <input name=curr size=40 value="$form->{defaults}{curr}">
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Sales Invoice Number').qq|</th>
- <td><input name=sinumber size=40 value="$form->{defaults}{sinumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Sales Order Number').qq|</th>
- <td><input name=sonumber size=40 value="$form->{defaults}{sonumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Vendor Invoice Number').qq|</th>
- <td><input name=vinumber size=40 value="$form->{defaults}{vinumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Purchase Order Number').qq|</th>
- <td><input name=ponumber size=40 value="$form->{defaults}{ponumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Sales Quotation Number').qq|</th>
- <td><input name=sqnumber size=40 value="$form->{defaults}{sqnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('RFQ Number').qq|</th>
- <td><input name=rfqnumber size=40 value="$form->{defaults}{rfqnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Partnumber').qq|</th>
- <td><input name=partnumber size=40 value="$form->{defaults}{partnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Employee Number').qq|</th>
- <td><input name=employeenumber size=40 value="$form->{defaults}{employeenumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Customer Number').qq|</th>
- <td><input name=customernumber size=40 value="$form->{defaults}{customernumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Vendor Number').qq|</th>
- <td><input name=vendornumber size=40 value="$form->{defaults}{vendornumber}"></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th class=listheading>|.$locale->text('Tax Accounts').qq|</th>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th></th>
- <th>|.$locale->text('Rate').qq| (%)</th>
- <th>|.$locale->text('Number').qq|</th>
- </tr>
-|;
-
- foreach $accno (sort keys %{ $form->{taxrates} }) {
- $form->{taxrates}{$accno}{rate} = $form->format_amount(\%myconfig, $form->{taxrates}{$accno}{rate});
-
- print qq|
- <tr>
- <th align=right>$form->{taxrates}{$accno}{description}</th>
- <td><input name=$form->{taxrates}{$accno}{id} size=6 value=$form->{taxrates}{$accno}{rate}></td>
- <td><input name="taxnumber_$form->{taxrates}{$accno}{id}" value="$form->{taxrates}{$accno}{taxnumber}"></td>
- </tr>
-|;
- $form->{taxaccounts} .= "$form->{taxrates}{$accno}{id} ";
- }
-
- chop $form->{taxaccounts};
-
- print qq|
- </table>
- </td>
- </tr>
-<input name=taxaccounts type=hidden value="$form->{taxaccounts}">
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub config {
-
- foreach $item (qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd)) {
- $dateformat .= ($item eq $myconfig{dateformat}) ? "<option selected>$item\n" : "<option>$item\n";
- }
-
- foreach $item (qw(1,000.00 1000.00 1.000,00 1000,00 1'000.00)) {
- $numberformat .= ($item eq $myconfig{numberformat}) ? "<option selected>$item\n" : "<option>$item\n";
- }
-
- map { $myconfig{$_} = $form->quote($myconfig{$_}) } qw(name company address signature);
- map { $myconfig{$_} =~ s/\\n/\r\n/g } qw(address signature);
-
- %countrycodes = User->country_codes;
- $countrycodes = '';
-
- foreach $key (sort { $countrycodes{$a} cmp $countrycodes{$b} } keys %countrycodes) {
- $countrycodes .= ($myconfig{countrycode} eq $key) ? "<option selected value=$key>$countrycodes{$key}\n" : "<option value=$key>$countrycodes{$key}\n";
- }
- $countrycodes = qq|<option value="">English\n$countrycodes|;
-
- opendir CSS, "css/.";
- @all = grep /.*\.css$/, readdir CSS;
- closedir CSS;
-
- foreach $item (@all) {
- if ($item eq $myconfig{stylesheet}) {
- $selectstylesheet .= qq|<option selected>$item\n|;
- } else {
- $selectstylesheet .= qq|<option>$item\n|;
- }
- }
- $selectstylesheet .= "<option>\n";
-
- if (%printer && $latex) {
- $selectprinter = "<option>\n";
- foreach $item (sort keys %printer) {
- if ($myconfig{printer} eq $item) {
- $selectprinter .= qq|<option value="$item" selected>$item\n|;
- } else {
- $selectprinter .= qq|<option value="$item">$item\n|;
- }
- }
-
- $printer = qq|
- <tr>
- <th align=right>|.$locale->text('Printer').qq|</th>
- <td><select name=printer>$selectprinter</select></td>
- </tr>
-|;
- }
-
- $form->{title} = $locale->text('Edit Preferences for').qq| $form->{login}|;
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=old_password value=$myconfig{password}>
-<input type=hidden name=type value=preferences>
-<input type=hidden name=role value=$myconfig{role}>
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td><input name=name size=20 value="$myconfig{name}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=35 value="$myconfig{email}"></td>
- </tr>
- <tr valign=top>
- <th align=right>|.$locale->text('Signature').qq|</th>
- <td><textarea name=signature rows=3 cols=35>$myconfig{signature}</textarea></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Phone').qq|</th>
- <td><input name=tel size=14 value="$myconfig{tel}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Fax').qq|</th>
- <td><input name=fax size=14 value="$myconfig{fax}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Company').qq|</th>
- <td><input name=company size=35 value="$myconfig{company}"></td>
- </tr>
- <tr valign=top>
- <th align=right>|.$locale->text('Address').qq|</th>
- <td><textarea name=address rows=4 cols=35>$myconfig{address}</textarea></td>
- </tr>
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input type=password name=new_password size=10 value=$myconfig{password}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Confirm').qq|</th>
- <td><input type=password name=confirm_password size=10></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Date Format').qq|</th>
- <td><select name=dateformat>$dateformat</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Number Format').qq|</th>
- <td><select name=numberformat>$numberformat</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Dropdown Limit').qq|</th>
- <td><input name=vclimit size=10 value="$myconfig{vclimit}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Menu Width').qq|</th>
- <td><input name=menuwidth size=10 value="$myconfig{menuwidth}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Language').qq|</th>
- <td><select name=countrycode>$countrycodes</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Character Set').qq|</th>
- <td><input name=charset size=20 value="$myconfig{charset}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Session Timeout').qq|</th>
- <td><input name=timeout size=10 value="$myconfig{timeout}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Stylesheet').qq|</th>
- <td><select name=usestylesheet>$selectstylesheet</select></td>
- </tr>
- $printer
- </table>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save_defaults {
-
- $form->redirect($locale->text('Defaults saved!')) if (AM->save_defaults(\%myconfig, \%$form));
- $form->error($locale->text('Cannot save defaults!'));
-
-}
-
-
-sub save_preferences {
-
- $form->{stylesheet} = $form->{usestylesheet};
-
- if ($form->{new_password} ne $form->{old_password}) {
- $form->error($locale->text('Password does not match!')) if $form->{new_password} ne $form->{confirm_password};
- }
-
- $form->redirect($locale->text('Preferences saved!')) if AM->save_preferences(\%myconfig, \%$form, $memberfile, $userspath);
- $form->error($locale->text('Cannot save preferences!'));
-
-}
-
-
-sub backup {
-
- if ($form->{media} eq 'email') {
- $form->error($locale->text('No email address for')." $myconfig{name}") unless ($myconfig{email});
-
- $form->{OUT} = "$sendmail";
-
- }
-
- $SIG{INT} = 'IGNORE';
- AM->backup(\%myconfig, \%$form, $userspath, $gzip);
-
- if ($form->{media} eq 'email') {
- $form->redirect($locale->text('Backup sent to').qq| $myconfig{email}|);
- }
-
-}
-
-
-
-sub audit_control {
-
- $form->{title} = $locale->text('Audit Control');
-
- AM->closedto(\%myconfig, \%$form);
-
- if ($form->{revtrans}) {
- $checked{revtransY} = "checked";
- } else {
- $checked{revtransN} = "checked";
- }
-
- if ($form->{audittrail}) {
- $checked{audittrailY} = "checked";
- } else {
- $checked{audittrailN} = "checked";
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Enforce transaction reversal for all dates').qq|</th>
- <td><input name=revtrans class=radio type=radio value="1" $checked{revtransY}> |.$locale->text('Yes').qq| <input name=revtrans class=radio type=radio value="0" $checked{revtransN}> |.$locale->text('No').qq|</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Close Books up to').qq|</th>
- <td><input name=closedto size=11 title="$myconfig{dateformat}" value=$form->{closedto}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Activate Audit trails').qq|</th>
- <td><input name=audittrail class=radio type=radio value="1" $checked{audittrailY}> |.$locale->text('Yes').qq| <input name=audittrail class=radio type=radio value="0" $checked{audittrailN}> |.$locale->text('No').qq|</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Remove Audit trails up to').qq|</th>
- <td><input name=removeaudittrail size=11 title="$myconfig{dateformat}"></td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
-
-<hr size=3 noshade>
-
-<br>
-<input type=hidden name=nextsub value=doclose>
-
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub doclose {
-
- AM->closebooks(\%myconfig, \%$form);
-
- if ($form->{revtrans}) {
- $msg = $locale->text('Transaction reversal enforced for all dates');
- } else {
- if ($form->{closedto}) {
- $msg = $locale->text('Transaction reversal enforced up to')
- ." ".$locale->date(\%myconfig, $form->{closedto}, 1);
- } else {
- $msg = $locale->text('Books are open');
- }
- }
-
- $msg .= "<p>";
- if ($form->{audittrail}) {
- $msg .= $locale->text('Audit trails enabled');
- } else {
- $msg .= $locale->text('Audit trails disabled');
- }
-
- $msg .= "<p>";
- if ($form->{removeaudittrail}) {
- $msg .= $locale->text('Audit trail removed up to')
- ." ".$locale->date(\%myconfig, $form->{removeaudittrail}, 1);
- }
-
- $form->redirect($msg);
-
-}
-
-
-sub add_warehouse {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add_warehouse&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &warehouse_header;
- &form_footer;
-
-}
-
-
-sub edit_warehouse {
-
- $form->{title} = "Edit";
-
- AM->get_warehouse(\%myconfig, \%$form);
-
- &warehouse_header;
- &form_footer;
-
-}
-
-
-sub list_warehouse {
-
- AM->warehouses(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_warehouse&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?action=list_warehouse&direction=$form->{direction}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback = $form->escape($form->{callback});
-
- $form->{title} = $locale->text('Warehouses');
-
- @column_index = qw(description);
-
- $column_header{description} = qq|<th width=100%><a class=listheading href=$href>|.$locale->text('Description').qq|</a></th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{ALL} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{description} = qq|<td><a href=$form->{script}?action=edit_warehouse&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{description}</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=warehouse>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Add Warehouse').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
- </body>
- </html>
-|;
-
-}
-
-
-
-sub warehouse_header {
-
- $form->{title} = $locale->text("$form->{title} Warehouse");
-
-# $locale->text('Add Warehouse')
-# $locale->text('Edit Warehouse')
-
- $form->{description} = $form->quote($form->{description});
-
- if (($rows = $form->numtextrows($form->{description}, 60)) > 1) {
- $description = qq|<textarea name="description" rows=$rows cols=60 wrap=soft>$form->{description}</textarea>|;
- } else {
- $description = qq|<input name=description size=60 value="$form->{description}">|;
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=warehouse>
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=2>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td>$description</td>
- </tr>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub save_warehouse {
-
- $form->isblank("description", $locale->text('Description missing!'));
- AM->save_warehouse(\%myconfig, \%$form);
- $form->redirect($locale->text('Warehouse saved!'));
-
-}
-
-
-sub delete_warehouse {
-
- AM->delete_warehouse(\%myconfig, \%$form);
- $form->redirect($locale->text('Warehouse deleted!'));
-
-}
-
-
-sub yearend {
-
- AM->earningsaccounts(\%myconfig, \%$form);
- map { $chart .= "<option>$_->{accno}--$_->{description}" } @{ $form->{chart} };
-
- $form->{title} = $locale->text('Yearend');
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=decimalplaces value=2>
-<input type=hidden name=l_accno value=Y>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Yearend').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}" value=$todate></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Reference').qq|</th>
- <td><input name=reference size=20 value="|.$locale->text('Yearend').qq|"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><textarea name=description rows=3 cols=50 wrap=soft></textarea></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Retained Earnings').qq|</th>
- <td><select name=accno>$chart</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Method').qq|</th>
- <td><input name=method class=radio type=radio value=accrual checked>&nbsp;|.$locale->text('Accrual').qq|&nbsp;<input name=method class=radio type=radio value=cash>&nbsp;|.$locale->text('Cash').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
-
-<hr size=3 noshade>
-
-<input type=hidden name=nextsub value=generate_yearend>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">|;
-
-}
-
-
-sub generate_yearend {
-
- $form->isblank("todate", $locale->text('Yearend date missing!'));
-
- RP->yearend_statement(\%myconfig, \%$form);
-
- $form->{transdate} = $form->{todate};
-
- $earnings = 0;
-
- $form->{rowcount} = 1;
- foreach $key (keys %{ $form->{I} }) {
- if ($form->{I}{$key}{charttype} eq "A") {
- $form->{"debit_$form->{rowcount}"} = $form->{I}{$key}{this};
- $earnings += $form->{I}{$key}{this};
- $form->{"accno_$form->{rowcount}"} = $key;
- $form->{rowcount}++;
- $ok = 1;
- }
- }
-
- foreach $key (keys %{ $form->{E} }) {
- if ($form->{E}{$key}{charttype} eq "A") {
- $form->{"credit_$form->{rowcount}"} = $form->{E}{$key}{this} * -1;
- $earnings += $form->{E}{$key}{this};
- $form->{"accno_$form->{rowcount}"} = $key;
- $form->{rowcount}++;
- $ok = 1;
- }
- }
- if ($earnings > 0) {
- $form->{"credit_$form->{rowcount}"} = $earnings;
- $form->{"accno_$form->{rowcount}"} = $form->{accno}
- } else {
- $form->{"debit_$form->{rowcount}"} = $earnings * -1;
- $form->{"accno_$form->{rowcount}"} = $form->{accno}
- }
-
- if ($ok) {
- if (AM->post_yearend(\%myconfig, \%$form)) {
- $form->redirect($locale->text('Yearend posted!'));
- }
- $form->error($locale->text('Yearend posting failed!'));
- } else {
- $form->error('Nothing to do!');
- }
-
-}
-
-
-
-sub company_logo {
-
- $myconfig{address} =~ s/\\n/<br>/g;
- $myconfig{dbhost} = $locale->text('localhost') unless $myconfig{dbhost};
-
- map { $form->{$_} = $myconfig{$_} } qw(charset stylesheet);
-
- $form->{title} = $locale->text('About');
-
- # create the logo screen
- $form->header;
-
- print qq|
-<body>
-
-<pre>
-
-</pre>
-<center>
-<a href="http://www.sql-ledger.org" target=_top><img src=sql-ledger.gif border=0></a>
-<h1 class=login>|.$locale->text('Version').qq| $form->{version}</h1>
-
-<p>
-|.$locale->text('Licensed to').qq|
-<p>
-<b>
-$myconfig{company}
-<br>$myconfig{address}
-</b>
-
-<p>
-<table border=0>
- <tr>
- <th align=right>|.$locale->text('User').qq|</th>
- <td>$myconfig{name}</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Dataset').qq|</th>
- <td>$myconfig{dbname}</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Database Host').qq|</th>
- <td>$myconfig{dbhost}</td>
- </tr>
-</table>
-
-</center>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub continue {
-
- &{ $form->{nextsub} };
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ap.pl b/sql-ledger/bin/mozilla/ap.pl
deleted file mode 100644
index 30494b6..0000000
--- a/sql-ledger/bin/mozilla/ap.pl
+++ /dev/null
@@ -1,1439 +0,0 @@
-#=====================================================================
-# SQL-Ledger, accounting project
-# Copyright (C) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Accounts Payable
-#
-#======================================================================
-
-
-use SL::AP;
-use SL::IR;
-use SL::PE;
-
-require "$form->{path}/arap.pl";
-require "$form->{path}/arapprn.pl";
-
-1;
-# end of main
-
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub add {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &create_links;
- &display_form;
-
-}
-
-
-sub edit {
-
- $form->{title} = "Edit";
-
- &create_links;
- &display_form;
-
-}
-
-
-sub display_form {
-
- &form_header;
- &form_footer;
-
-}
-
-
-sub create_links {
-
- $form->create_links("AP", \%myconfig, "vendor");
-
- $duedate = $form->{duedate};
-
- $form->{formname} = "transaction";
- $form->{format} = "postscript" if $myconfig{printer};
- $form->{media} = $myconfig{printer};
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
-
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- IR->get_vendor(\%myconfig, \%$form);
-
- $form->{duedate} = $duedate if $duedate;
- $form->{notes} = $form->{intnotes} if !$form->{id};
-
- $form->{oldvendor} = "$form->{vendor}--$form->{vendor_id}";
- $form->{oldtransdate} = $form->{transdate};
-
- # vendors
- if (@{ $form->{all_vendor} }) {
- $form->{vendor} = qq|$form->{vendor}--$form->{vendor_id}|;
- map { $form->{selectvendor} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_vendor} });
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $form->{employee} = "$form->{employee}--$form->{employee_id}";
-
- # projects
- if (@{ $form->{all_projects} }) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } (@{ $form->{all_projects} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- # forex
- $form->{forex} = $form->{exchangerate};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $key (keys %{ $form->{AP_links} }) {
-
- foreach $ref (@{ $form->{AP_links}{$key} }) {
- if ($key eq "AP_tax") {
- $form->{"selectAP_tax_$ref->{accno}"} = "<option>$ref->{accno}--$ref->{description}\n";
- $form->{"calctax_$ref->{accno}"} = 1;
- next;
- }
- $form->{"select$key"} .= "<option>$ref->{accno}--$ref->{description}\n";
- }
-
- # if there is a value we have an old entry
- for $i (1 .. scalar @{ $form->{acc_trans}{$key} }) {
-
- if ($key eq "AP_paid") {
- $form->{"AP_paid_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- $form->{"paid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{amount};
- $form->{"datepaid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{transdate};
- $form->{"source_$i"} = $form->{acc_trans}{$key}->[$i-1]->{source};
- $form->{"memo_$i"} = $form->{acc_trans}{$key}->[$i-1]->{memo};
-
- $form->{"forex_$i"} = $form->{"exchangerate_$i"} = $form->{acc_trans}{$key}->[$i-1]->{exchangerate};
-
- $form->{paidaccounts}++;
- } else {
-
- $akey = $key;
- $akey =~ s/AP_//;
-
- if ($key eq "AP_tax") {
- $form->{"${key}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = $form->round_amount($form->{acc_trans}{$key}->[$i-1]->{amount} / $exchangerate * -1, 2);
- if ($form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"} > 0) {
- $totaltax += $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"};
- $taxrate += $form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"};
- } else {
- $totalwithholding += $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"};
- $withholdingrate += $form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"};
- }
-
- } else {
- $form->{"${akey}_$i"} = $form->round_amount($form->{acc_trans}{$key}->[$i-1]->{amount} / $exchangerate, 2);
- if ($akey eq 'amount') {
- $form->{"${akey}_$i"} *= -1;
- $totalamount += $form->{"${akey}_$i"};
- $form->{rowcount}++;
-
- $form->{"projectnumber_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{projectnumber}--$form->{acc_trans}{$key}->[$i-1]->{project_id}";
- }
- $form->{"${key}_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- }
- }
- }
- }
-
- $form->{paidaccounts} = 1 if not defined $form->{paidaccounts};
-
- if ($form->{taxincluded} && $totalamount) {
- # add tax to amounts and invtotal
- for $i (1 .. $form->{rowcount}) {
- $taxamount = ($totaltax + $totalwithholding) * $form->{"amount_$i"} / $totalamount;
- $tax = $form->round_amount($taxamount, 2);
- $diff += ($taxamount - $tax);
- $form->{"amount_$i"} += $tax;
- }
- $form->{amount_1} += $form->round_amount($diff, 2);
- }
-
- # check if calculated is equal to stored
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{taxincluded}) {
- if ($form->{"${item}_rate"} > 0) {
- if ($taxrate) {
- $taxamount = $form->round_amount(($totalamount + $totaltax + $totalwithholding) * $taxrate / (1 + $taxrate), 2) * $form->{"${item}_rate"} / $taxrate;
- }
- } else {
- if ($withholdingrate) {
- $taxamount = $form->round_amount(($totalamount + $totaltax + $totalwithholding) * $withholdingrate / (1 - $withholdingrate), 2) * $form->{"${item}_rate"} / $withholdingrate;
- }
- }
- } else {
- $taxamount = $totalamount * $form->{"${item}_rate"};
- }
- $taxamount = $form->round_amount($taxamount, 2);
-
- $form->{"calctax_$item"} = 0;
- if ($form->{"tax_$item"} == $taxamount) {
- $form->{"calctax_$item"} = 1;
- }
- }
-
- $form->{invtotal} = $totalamount + $totaltax + $totalwithholding;
- $form->{rowcount}++ if $form->{id};
-
- $form->{AP} = $form->{AP_1};
- $form->{rowcount} = 1 unless $form->{AP_amount_1};
-
- $form->{locked} = ($form->{revtrans}) ? '1' : ($form->datetonum($form->{transdate}, \%myconfig) <= $form->datetonum($form->{closedto}, \%myconfig));
-
- # readonly
- $form->{readonly} = 1 if $myconfig{acs} =~ /AP--Add Transaction/;
-
-}
-
-
-sub form_header {
-
- $title = $form->{title};
- $form->{title} = $locale->text("$title AP Transaction");
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
-
-# type=submit $locale->text('Add AP Transaction')
-# type=submit $locale->text('Edit AP Transaction')
-
- # set option selected
- foreach $item (qw(AP currency)) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- foreach $item (qw(vendor department)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- $form->{selectprojectnumber} = $form->unescape($form->{selectprojectnumber});
-
- # format amounts
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
- $exchangerate = qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|
- <th align=right>|.$locale->text('Exchange Rate').qq|</th>
- <td><input type=hidden name=exchangerate value=$form->{exchangerate}>$form->{exchangerate}</td>
-|;
- } else {
- $exchangerate .= qq|
- <th align=right>|.$locale->text('Exchange Rate').qq|</th>
- <td><input name=exchangerate size=10 value=$form->{exchangerate}></td>
-|;
- }
- }
-
- $taxincluded = "";
- if ($form->{taxaccounts}) {
- $taxincluded = qq|
- <tr>
- <td align=right><input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}></td>
- <th align=left nowrap>|.$locale->text('Tax Included').qq|</th>
- </tr>
-|;
- }
-
-
- if (($rows = $form->numtextrows($form->{notes}, 50)) < 2) {
- $rows = 2;
- }
- $notes = qq|<textarea name=notes rows=$rows cols=50 wrap=soft>$form->{notes}</textarea>|;
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.$form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
- $vendor = ($form->{selectvendor}) ? qq|<select name=vendor>$form->{selectvendor}</select>| : qq|<input name=vendor value="$form->{vendor}" size=35>|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=type value="transaction">
-<input type=hidden name=vc value="vendor">
-
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=printed value="$form->{printed}">
-<input type=hidden name=emailed value="$form->{emailed}">
-
-<input type=hidden name=sort value=$form->{sort}>
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-
-<input type=hidden name=title value="$title">
-
-<input type=hidden name=employee value="$form->{employee}">
-
-<input type=hidden name=oldtransdate value=$form->{oldtransdate}>
-<input type=hidden name=audittrail value="$form->{audittrail}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Vendor').qq|</th>
- <td colspan=3>$vendor</td>
- <input type=hidden name=selectvendor value="|.$form->escape($form->{selectvendor},1).qq|">
- <input type=hidden name=oldvendor value="$form->{oldvendor}">
- <input type=hidden name=vendor_id value="$form->{vendor_id}">
- <input type=hidden name=terms value=$form->{terms}>
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <table width=100%>
- <tr>
- <th align=left nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>$form->{creditlimit}</td>
- <th align=left nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n">|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</td>
- <input type=hidden name=creditlimit value=$form->{creditlimit}>
- <input type=hidden name=creditremaining value=$form->{creditremaining}>
- </tr>
- </table>
- </td>
- <tr>
- <th align=right nowrap>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
- <input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
- <input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
- $exchangerate
- </tr>
- $department
- $taxincluded
- </table>
- </td>
- <td align=right>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td><input name=invnumber size=20 value="$form->{invnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td><input name=ordnumber size=20 value="$form->{ordnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{'dateformat'}" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Due Date').qq|</th>
- <td><input name=duedate size=11 title="$myconfig{'dateformat'}" value=$form->{duedate}></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <input type=hidden name=selectAP_amount value="$form->{selectAP_amount}">
- <input type=hidden name=selectprojectnumber value="|.$form->escape($form->{selectprojectnumber},1).qq|">
- <input type=hidden name=rowcount value=$form->{rowcount}>
- <tr>
- <td>
- <table width=100%>
-|;
-
- $amount = $locale->text('Amount');
-
- for $i (1 .. $form->{rowcount}) {
-
- $selectAP_amount = $form->{selectAP_amount};
- $selectAP_amount =~ s/option>\Q$form->{"AP_amount_$i"}\E/option selected>$form->{"AP_amount_$i"}/;
-
- $selectprojectnumber = $form->{selectprojectnumber};
- $selectprojectnumber =~ s/(<option value="\Q$form->{"projectnumber_$i"}\E")/$1 selected/;
-
- # format amounts
- $form->{"amount_$i"} = $form->format_amount(\%myconfig, $form->{"amount_$i"}, 2);
-
- $project = qq|
- <td align=right><select name="projectnumber_$i">$selectprojectnumber</select></td>
-| if $form->{selectprojectnumber};
-
- print qq|
- <tr>
- <th align=right nowrap>$amount</th>
- <td><input name="amount_$i" size=10 value=$form->{"amount_$i"}></td>
- <td></td>
- <td><select name="AP_amount_$i">$selectAP_amount</select></td>
- $project
- </tr>
-|;
- $amount = "";
- }
-
- $taxlabel = ($form->{taxincluded}) ? $locale->text('Tax Included') : $locale->text('Tax');
-
- foreach $item (split / /, $form->{taxaccounts}) {
-
- $form->{"calctax_$item"} = ($form->{"calctax_$item"}) ? "checked" : "";
-
- # format and reverse tax
- $form->{"tax_$item"} = $form->format_amount(\%myconfig, $form->{"tax_$item"}, 2);
-
- print qq|
- <tr>
- <th align=right nowrap>${taxlabel}</th>
- <td><input name="tax_$item" size=10 value=$form->{"tax_$item"}></td>
- <td align=right><input name="calctax_$item" class=checkbox type=checkbox value=1 $form->{"calctax_$item"}></td>
- <td><select name=AP_tax_$item>$form->{"selectAP_tax_$item"}</select></td>
- </tr>
- <input type=hidden name="${item}_rate" value="$form->{"${item}_rate"}">
- <input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
- <input type=hidden name="${item}_taxnumber" value="$form->{"${item}_taxnumber"}">
- <input type=hidden name="selectAP_tax_$item" value="$form->{"selectAP_tax_$item"}">
-|;
- }
-
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2);
-
- print qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Total').qq|</th>
- <td>$form->{invtotal}</td>
- <td></td>
-
- <input type=hidden name=oldinvtotal value=$form->{oldinvtotal}>
- <input type=hidden name=oldtotalpaid value=$form->{oldtotalpaid}>
-
- <input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-
- <td><select name=AP>$form->{selectAP}</select></td>
- <input type=hidden name=selectAP value="$form->{selectAP}">
-
- </tr>
- <tr valign=top>
- <th align=right nowrap>|.$locale->text('Notes').qq|</th>
- <td colspan=5>$notes</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
- <th class=listheading colspan=6>|.$locale->text('Payments').qq|</th>
- </tr>
-|;
-
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- @column_index = qw(datepaid source memo paid AP_paid);
- } else {
- @column_index = qw(datepaid source memo paid exchangerate AP_paid);
- }
-
- $column_data{datepaid} = "<th>".$locale->text('Date')."</th>";
- $column_data{paid} = "<th>".$locale->text('Amount')."</th>";
- $column_data{exchangerate} = "<th>".$locale->text('Exch')."</th>";
- $column_data{AP_paid} = "<th>".$locale->text('Account')."</th>";
- $column_data{source} = "<th>".$locale->text('Source')."</th>";
- $column_data{memo} = "<th>".$locale->text('Memo')."</th>";
-
- print "
- <tr>
-";
- map { print "$column_data{$_}\n" } @column_index;
- print "
- </tr>
-";
-
- $form->{paidaccounts}++ if ($form->{"paid_$form->{paidaccounts}"});
- for $i (1 .. $form->{paidaccounts}) {
- print "
- <tr>
-";
-
- $form->{"selectAP_paid_$i"} = $form->{selectAP_paid};
- $form->{"selectAP_paid_$i"} =~ s/option>\Q$form->{"AP_paid_$i"}\E/option selected>$form->{"AP_paid_$i"}/;
-
- # format amounts
- $form->{"paid_$i"} = $form->format_amount(\%myconfig, $form->{"paid_$i"}, 2);
- $form->{"exchangerate_$i"} = $form->format_amount(\%myconfig, $form->{"exchangerate_$i"});
-
- $exchangerate = qq|&nbsp;|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{"forex_$i"}) {
- $exchangerate = qq|<input type=hidden name="exchangerate_$i" value=$form->{"exchangerate_$i"}>$form->{"exchangerate_$i"}|;
- } else {
- $exchangerate = qq|<input name="exchangerate_$i" size=10 value=$form->{"exchangerate_$i"}>|;
- }
- }
-
- $exchangerate .= qq|
-<input type=hidden name="forex_$i" value=$form->{"forex_$i"}>
-|;
-
- $column_data{"paid_$i"} = qq|<td align=center><input name="paid_$i" size=11 value=$form->{"paid_$i"}></td>|;
- $column_data{"AP_paid_$i"} = qq|<td align=center><select name="AP_paid_$i">$form->{"selectAP_paid_$i"}</select></td>|;
- $column_data{"exchangerate_$i"} = qq|<td align=center>$exchangerate</td>|;
- $column_data{"datepaid_$i"} = qq|<td align=center><input name="datepaid_$i" size=11 title="($myconfig{'dateformat'})" value=$form->{"datepaid_$i"}></td>|;
- $column_data{"source_$i"} = qq|<td align=center><input name="source_$i" size=11 value="$form->{"source_$i"}"></td>|;
- $column_data{"memo_$i"} = qq|<td align=center><input name="memo_$i" size=11 value="$form->{"memo_$i"}"></td>|;
-
- map { print qq|$column_data{"${_}_$i"}\n| } @column_index;
-
- print "
- </tr>
-";
- }
-
- print qq|
- <input type=hidden name=paidaccounts value=$form->{paidaccounts}>
- <input type=hidden name=selectAP_paid value="$form->{selectAP_paid}">
-
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub form_footer {
-
- &print_options;
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<p>
-|;
-
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
-
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-|;
-
- if (!$form->{locked}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
- |;
- }
-
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Post as new').qq|">
-|;
-
- } else {
- if ($transdate > $closedto) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">|;
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print "
-</form>
-
-</body>
-</html>
-";
-
-}
-
-
-sub update {
- my $display = shift;
-
- if ($display) {
- goto TAXCALC;
- }
-
- $form->{invtotal} = 0;
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- @flds = qw(amount AP_amount projectnumber);
- $count = 0;
- for $i (1 .. $form->{rowcount}) {
- $form->{"amount_$i"} = $form->parse_amount(\%myconfig, $form->{"amount_$i"});
- if ($form->{"amount_$i"}) {
- push @a, {};
- my $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count + 1;
-
- map { $form->{invtotal} += $form->{"amount_$_"} } (1 .. $form->{rowcount});
-
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, 'sell')));
-
- if (&check_name(vendor)) {
- $form->{notes} = $form->{intnotes} unless $form->{id};
- }
-
- if ($form->{transdate} ne $form->{oldtransdate}) {
- $form->{duedate} = $form->current_date(\%myconfig, $form->{transdate}, $form->{terms} * 1);
- $form->{oldtransdate} = $form->{transdate};
- }
-
-
-
-TAXCALC:
- # recalculate taxes
-
- @taxaccounts = split / /, $form->{taxaccounts};
-
- map { $form->{"tax_$_"} = $form->parse_amount(\%myconfig, $form->{"tax_$_"}) } @taxaccounts;
-
- if ($form->{taxincluded}) {
- $taxrate = 0;
- $withholdingrate = 0;
-
- foreach $item (@taxaccounts) {
- $form->{"calctax_$item"} = 1 if $form->{calctax};
-
- if ($form->{"calctax_$item"}) {
- if ($form->{"${item}_rate"} > 0) {
- $taxrate += $form->{"${item}_rate"};
- } else {
- $withholdingrate += $form->{"${item}_rate"};
- }
- }
- }
-
- foreach $item (@taxaccounts) {
- if ($form->{"calctax_$item"}) {
- if ($form->{"${item}_rate"} > 0) {
- if ($taxrate) {
- $amount = $form->round_amount($form->{invtotal} * $taxrate / (1 + $taxrate), 2) * $form->{"${item}_rate"} / $taxrate;
- $form->{"tax_$item"} = $form->round_amount($amount, 2);
- $taxdiff += ($amount - $form->{"tax_$item"});
- }
- } else {
- if ($withholdingrate) {
- $amount = $form->round_amount($form->{invtotal} * $withholdingrate / (1 - $withholdingrate), 2) * $form->{"${item}_rate"} / $withholdingrate;
- $form->{"tax_$item"} = $form->round_amount($amount, 2);
- $taxdiff += ($amount - $form->{"tax_$item"});
- }
- }
-
- if (abs $taxdiff >= 0.005) {
- $form->{"tax_$item"} += $form->round_amount($taxdiff, 2);
- $taxdiff = 0;
- }
- }
- $form->{"selectAP_tax_$item"} = qq|<option>$item--$form->{"${item}_description"}|;
- $totaltax += $form->{"tax_$item"};
- }
- } else {
- foreach $item (@taxaccounts) {
- $form->{"calctax_$item"} = 1 if $form->{calctax};
-
- if ($form->{"calctax_$item"}) {
- $form->{"tax_$item"} = $form->round_amount($form->{invtotal} * $form->{"${item}_rate"}, 2);
- }
- $form->{"selectAP_tax_$item"} = qq|<option>$item--$form->{"${item}_description"}|;
- $totaltax += $form->{"tax_$item"};
- }
- }
-
- $form->{invtotal} = ($form->{taxincluded}) ? $form->{invtotal} : $form->{invtotal} + $totaltax;
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
-
- $totalpaid += $form->{"paid_$i"};
-
- $form->{"exchangerate_$i"} = $exchangerate if ($form->{"forex_$i"} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'sell')));
- }
- }
-
- $form->{creditremaining} -= ($form->{invtotal} - $totalpaid + $form->{oldtotalpaid} - $form->{oldinvtotal});
- $form->{oldinvtotal} = $form->{invtotal};
- $form->{oldtotalpaid} = $totalpaid;
-
- &display_form;
-
-}
-
-
-sub post {
-
- # check if there is a vendor, invoice and due date
- $form->isblank("transdate", $locale->text("Invoice Date missing!"));
- $form->isblank("duedate", $locale->text("Due Date missing!"));
- $form->isblank("vendor", $locale->text('Vendor missing!'));
-
-
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
-
- $form->error($locale->text('Cannot post transaction for a closed period!')) if ($transdate <= $closedto);
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- $datepaid = $form->datetonum($form->{"datepaid_$i"}, \%myconfig);
-
- $form->isblank("datepaid_$i", $locale->text('Payment date missing!'));
-
- $form->error($locale->text('Cannot post payment for a closed period!')) if ($datepaid <= $closedto);
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = $form->{exchangerate} if ($transdate == $datepaid);
- $form->isblank("exchangerate_$i", $locale->text('Exchange rate for payment missing!'));
- }
-
- }
- }
-
-
- # if old vendor ne vendor redo form
- ($vendor) = split /--/, $form->{vendor};
- if ($form->{oldvendor} ne "$vendor--$form->{vendor_id}") {
- &update;
- exit;
- }
-
- $form->{invnumber} = $form->update_defaults(\%myconfig, "vinumber") unless $form->{invnumber};
-
- $form->{id} = 0 if $form->{postasnew};
-
- $form->redirect($locale->text('Transaction posted!')) if (AP->post_transaction(\%myconfig, \%$form));
- $form->error($locale->text('Cannot post transaction!'));
-
-}
-
-
-sub post_as_new {
-
- $form->{postasnew} = 1;
- &post;
-
-}
-
-
-sub delete {
-
- $form->{title} = $locale->text('Confirm!');
-
- $form->header;
-
- delete $form->{header};
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>$form->{title}</h2>
-
-<h4>|.$locale->text('Are you sure you want to delete Transaction').qq| $form->{invnumber}</h4>
-
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub yes {
-
- $form->redirect($locale->text('Transaction deleted!')) if (AP->delete_transaction(\%myconfig, \%$form, $spool));
- $form->error($locale->text('Cannot delete transaction!'));
-
-}
-
-
-sub search {
-
- $form->create_links("AP", \%myconfig, "vendor");
-
- $form->{selectAP} = "<option>\n";
- map { $form->{selectAP} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{AP_links}{AP} };
-
-
- if (@{ $form->{all_vendor} }) {
- map { $vendor .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_vendor} };
- $vendor = qq|<select name=vendor><option>\n$vendor\n</select>|;
- } else {
- $vendor = qq|<input name=vendor size=35>|;
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-| if $form->{selectdepartment};
-
- $form->{title} = $locale->text('AP Transactions');
-
- $invnumber = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td colspan=3><input name=invnumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td colspan=3><input name=ordnumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Notes').qq|</th>
- <td colspan=3><input name=notes size=40></td>
- </tr>
-|;
-
- $openclosed = qq|
- <tr>
- <td align=right><input name=open class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Open').qq|</td>
- <td align=right><input name=closed class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Closed').qq|</td>
- </tr>
-|;
-
- if ($form->{outstanding}) {
- $form->{title} = $locale->text('AP Outstanding');
- $invnumber = "";
- $openclosed = "";
- }
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=outstanding value=$form->{outstanding}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Account').qq|</th>
- <td colspan=3><select name=AP>$form->{selectAP}</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Vendor').qq|</th>
- <td colspan=3>$vendor</td>
- </tr>
- $department
- $invnumber
- <tr>
- <th align=right nowrap>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <input type=hidden name=sort value=transdate>
- $selectfrom
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td>
- <table width=100%>
- $openclosed
- <tr>
- <td align=right><input name="l_id" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('ID').qq|</td>
- <td align=right><input name="l_invnumber" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Invoice Number').qq|</td>
- <td align=right><input name="l_ordnumber" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Order Number').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_name" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Vendor').qq|</td>
- <td align=right><input name="l_transdate" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Invoice Date').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_netamount" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Amount').qq|</td>
- <td align=right><input name="l_tax" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Tax').qq|</td>
- <td align=right><input name="l_amount" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Total').qq|</td>
- <td align=right><input name="l_curr" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Currency').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_datepaid" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Date Paid').qq|</td>
- <td align=right><input name="l_paid" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Paid').qq|</td>
- <td align=right><input name="l_duedate" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Due Date').qq|</td>
- <td align=right><input name="l_due" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Amount Due').qq|</td>
- </tr>
- <tr valign=top>
- <td align=right><input name="l_notes" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Notes').qq|</td>
- <td align=right><input name="l_employee" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Employee').qq|</td>
- <td align=right><input name="l_manager" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Manager').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_subtotal" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<input type=hidden name=nextsub value=$form->{nextsub}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub ap_transactions {
-
- if ($form->{vendor}) {
- $form->{vendor} = $form->unescape($form->{vendor});
- ($form->{vendor}, $form->{vendor_id}) = split(/--/, $form->{vendor});
- }
-
- AP->ap_transactions(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=ap_transactions&direction=$form->{direction}&oldsort=$form->{oldsort}&outstanding=$form->{outstanding}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=ap_transactions&direction=$form->{direction}&oldsort=$form->{oldsort}&outstanding=$form->{outstanding}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback .= "&title=".$form->escape($form->{title},1);
- $href .= "&title=".$form->escape($form->{title});
-
- if ($form->{AP}) {
- $callback .= "&AP=".$form->escape($form->{AP},1);
- $href .= "&AP=".$form->escape($form->{AP});
- $form->{AP} =~ s/--/ /;
- $option = $locale->text('Account')." : $form->{AP}";
- }
-
- if ($form->{vendor}) {
- $callback .= "&vendor=".$form->escape($form->{vendor},1)."--$form->{vendor_id}";
- $href .= "&vendor=".$form->escape($form->{vendor})."--$form->{vendor_id}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Vendor')." : $form->{vendor}";
- }
- if ($form->{department}) {
- $callback .= "&department=".$form->escape($form->{department},1);
- $href .= "&department=".$form->escape($form->{department});
- ($department) = split /--/, $form->{department};
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Department')." : $department";
- }
- if ($form->{invnumber}) {
- $callback .= "&invnumber=".$form->escape($form->{invnumber},1);
- $href .= "&invnumber=".$form->escape($form->{invnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Invoice Number')." : $form->{invnumber}";
- }
- if ($form->{ordnumber}) {
- $callback .= "&ordnumber=".$form->escape($form->{ordnumber},1);
- $href .= "&ordnumber=".$form->escape($form->{ordnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Order Number')." : $form->{ordnumber}";
- }
- if ($form->{notes}) {
- $callback .= "&notes=".$form->escape($form->{notes},1);
- $href .= "&notes=".$form->escape($form->{notes});
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Notes')." : $form->{notes}";
- }
-
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')." ".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $href .= "&transdateto=$form->{transdateto}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('To')." ".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- if ($form->{open}) {
- $callback .= "&open=$form->{open}";
- $href .= "&open=$form->{open}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $callback .= "&closed=$form->{closed}";
- $href .= "&closed=$form->{closed}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
- }
-
- @columns = $form->sort_columns(qw(transdate id invnumber ordnumber name netamount tax amount paid due curr datepaid duedate notes employee manager));
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- if ($form->{l_curr} && $item =~ /(amount|tax|paid|due)/) {
- push @column_index, "fx_$item";
- }
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- $href .= "&l_subtotal=Y";
- }
-
-
- $column_header{id} = qq|<th><a class=listheading href=$href&sort=id>|.$locale->text('ID').qq|</a></th>|;
- $column_header{transdate} = qq|<th><a class=listheading href=$href&sort=transdate>|.$locale->text('Date').qq|</a></th>|;
- $column_header{duedate} = qq|<th><a class=listheading href=$href&sort=duedate>|.$locale->text('Due Date').qq|</a></th>|;
- $column_header{due} = qq|<th class=listheading>|.$locale->text('Amount Due').qq|</th>|;
- $column_header{invnumber} = qq|<th><a class=listheading href=$href&sort=invnumber>|.$locale->text('Invoice').qq|</a></th>|;
- $column_header{ordnumber} = qq|<th><a class=listheading href=$href&sort=ordnumber>|.$locale->text('Order').qq|</a></th>|;
- $column_header{name} = qq|<th><a class=listheading href=$href&sort=name>|.$locale->text('Vendor').qq|</a></th>|;
- $column_header{netamount} = qq|<th class=listheading>|.$locale->text('Amount').qq|</th>|;
- $column_header{tax} = qq|<th class=listheading>|.$locale->text('Tax').qq|</th>|;
- $column_header{amount} = qq|<th class=listheading>|.$locale->text('Total').qq|</th>|;
- $column_header{paid} = qq|<th class=listheading>|.$locale->text('Paid').qq|</th>|;
- $column_header{datepaid} = qq|<th><a class=listheading href=$href&sort=datepaid>|.$locale->text('Date Paid').qq|</a></th>|;
- $column_header{notes} = qq|<th class=listheading>|.$locale->text('Notes').qq|</th>|;
- $column_header{employee} = "<th><a class=listheading href=$href&sort=employee>".$locale->text('Employee')."</th>";
- $column_header{manager} = "<th><a class=listheading href=$href&sort=manager>".$locale->text('Manager')."</th>";
-
- $column_header{curr} = "<th><a class=listheading href=$href&sort=curr>" . $locale->text('Curr') . "</a></th>";
- map { $column_header{"fx_$_"} = "<th>&nbsp;</th>" } qw(amount tax netamount paid due);
-
- $form->{title} = ($form->{title}) ? $form->{title} : $locale->text('AP Transactions');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # add sort and escape callback
- $form->{callback} = "$callback&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
- # flip direction
- $direction = ($form->{direction} eq 'ASC') ? "ASC" : "DESC";
- $href =~ s/&direction=(\w+)&/&direction=$direction&/;
-
- if (@{ $form->{transactions} }) {
- $sameitem = $form->{transactions}->[0]->{$form->{sort}};
- }
-
- # sums and tax on reports by Antonio Gallardo
- #
- foreach $ap (@{ $form->{transactions} }) {
-
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $ap->{$form->{sort}}) {
- &ap_subtotal;
- $sameitem = $ap->{$form->{sort}};
- }
- }
-
- if ($form->{l_curr}) {
- map { $ap->{"fx_$_"} = $ap->{$_}/$ap->{exchangerate} } qw(netamount amount paid);
-
- map { $column_data{"fx_$_"} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{"fx_$_"}, 2, "&nbsp;")."</td>" } qw(netamount amount paid);
-
- $column_data{fx_tax} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{fx_amount} - $ap->{fx_netamount}, 2, "&nbsp;")."</td>";
- $column_data{fx_due} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{fx_amount} - $ap->{fx_paid}, 2, "&nbsp;")."</td>";
-
- $subtotalfxnetamount += $ap->{fx_netamount};
- $subtotalfxamount += $ap->{fx_amount};
- $subtotalfxpaid += $ap->{fx_paid};
-
- $totalfxnetamount += $ap->{fx_netamount};
- $totalfxamount += $ap->{fx_amount};
- $totalfxpaid += $ap->{fx_paid};
-
- }
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{$_}, 2, "&nbsp;")."</td>" } qw(netamount amount paid);
-
- $column_data{tax} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{amount} - $ap->{netamount}, 2, "&nbsp;") . "</td>";
- $column_data{due} = "<td align=right>".$form->format_amount(\%myconfig, $ap->{amount} - $ap->{paid}, 2, "&nbsp;")."</td>";
-
- $totalnetamount += $ap->{netamount};
- $totalamount += $ap->{amount};
- $totalpaid += $ap->{paid};
-
- $subtotalnetamount += $ap->{netamount};
- $subtotalamount += $ap->{amount};
- $subtotalpaid += $ap->{paid};
-
- $column_data{transdate} = "<td>$ap->{transdate}&nbsp;</td>";
- $column_data{duedate} = "<td>$ap->{duedate}&nbsp;</td>";
- $column_data{datepaid} = "<td>$ap->{datepaid}&nbsp;</td>";
-
- $module = ($ap->{invoice}) ? "ir.pl" : $form->{script};
-
- $column_data{invnumber} = qq|<td><a href="$module?action=edit&path=$form->{path}&id=$ap->{id}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback">$ap->{invnumber}</a></td>|;
- $column_data{id} = "<td>$ap->{id}</td>";
- $column_data{ordnumber} = "<td>$ap->{ordnumber}&nbsp;</td>";
-
- $name = $form->escape($ap->{name});
- $column_data{name} = "<td><a href=$href&vendor=$name--$ap->{vendor_id}&sort=$form->{sort}>$ap->{name}</a></td>";
-
- $ap->{notes} =~ s/\r\n/<br>/g;
- $column_data{notes} = "<td>$ap->{notes}&nbsp;</td>";
- $column_data{employee} = "<td>$ap->{employee}&nbsp;</td>";
- $column_data{manager} = "<td>$ap->{manager}&nbsp;</td>";
- $column_data{curr} = "<td>$ap->{curr}</td>";
-
- $i++;
- $i %= 2;
- print "
- <tr class=listrow$i >
-";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- &ap_subtotal;
- }
-
- # print totals
- print qq|
- <tr class=listtotal>
-|;
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount - $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount, 2, "&nbsp;")."</th>";
- $column_data{paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalpaid, 2, "&nbsp;")."</th>";
- $column_data{due} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount - $totalpaid, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount - $totalnetfxamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount, 2, "&nbsp;")."</th>";
- $column_data{fx_paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxpaid, 2, "&nbsp;")."</th>";
- $column_data{fx_due} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount - $totalfxpaid, 2, "&nbsp;")."</th>";
- }
-
- map { print "$column_data{$_}\n" } @column_index;
-
- if ($myconfig{acs} !~ /AP--AP/) {
- $i = 1;
- $button{'AP--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AP Transaction').qq|"> |;
- $button{'AP--Add Transaction'}{order} = $i++;
- $button{'AP--Vendor Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Vendor Invoice.').qq|"> |;
- $button{'AP--Vendor Invoice'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
- }
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input type=hidden name=vendor value="$form->{vendor}">
-<input type=hidden name=vendor_id value=$form->{vendor_id}>
-<input type=hidden name=vc value=vendor>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub ap_subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{netamount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalnetamount, 2, "&nbsp;")."</th>";
- $column_data{tax} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount - $subtotalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount, 2, "&nbsp;")."</th>";
- $column_data{paid} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalpaid, 2, "&nbsp;")."</th>";
- $column_data{due} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount - $subtotalpaid, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_tax} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount - $subtotalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount, 2, "&nbsp;")."</th>";
- $column_data{fx_paid} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxpaid, 2, "&nbsp;")."</th>";
- $column_data{fx_due} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount - $subtotalfxpaid, 2, "&nbsp;")."</th>";
- }
-
- $subtotalnetamount = 0;
- $subtotalamount = 0;
- $subtotalpaid = 0;
-
- $subtotalfxnetamount = 0;
- $subtotalfxamount = 0;
- $subtotalfxpaid = 0;
-
- print "<tr class=listsubtotal>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ar.pl b/sql-ledger/bin/mozilla/ar.pl
deleted file mode 100644
index 8f98981..0000000
--- a/sql-ledger/bin/mozilla/ar.pl
+++ /dev/null
@@ -1,1486 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Accounts Receivable
-#
-#======================================================================
-
-
-use SL::AR;
-use SL::IS;
-use SL::PE;
-
-require "$form->{path}/arap.pl";
-require "$form->{path}/arapprn.pl";
-
-1;
-# end of main
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub add {
-
- $form->{title} = "Add";
- $form->{callback} = "$form->{script}?action=add&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &create_links;
- &display_form;
-
-}
-
-
-sub edit {
-
- $form->{title} = "Edit";
-
- &create_links;
- &display_form;
-
-}
-
-
-sub display_form {
-
- &form_header;
- &form_footer;
-
-}
-
-
-sub create_links {
-
- $form->create_links("AR", \%myconfig, "customer");
- $duedate = $form->{duedate};
-
- $form->{formname} = "transaction";
- $form->{format} = "postscript" if $myconfig{printer};
- $form->{media} = $myconfig{printer};
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
-
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- IS->get_customer(\%myconfig, \%$form);
-
- $form->{duedate} = $duedate if $duedate;
- $form->{notes} = $form->{intnotes} if !$form->{id};
-
- $form->{oldcustomer} = "$form->{customer}--$form->{customer_id}";
- $form->{oldtransdate} = $form->{transdate};
-
- # customers
- if (@{ $form->{all_customer} }) {
- $form->{customer} = "$form->{customer}--$form->{customer_id}";
- map { $form->{selectcustomer} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_customer} });
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $form->{employee} = "$form->{employee}--$form->{employee_id}";
- # sales staff
- if (@{ $form->{all_employees} }) {
- $form->{selectemployee} = "";
- map { $form->{selectemployee} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_employees} });
- }
-
- # projects
- if (@{ $form->{all_projects} }) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } (@{ $form->{all_projects} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- # forex
- $form->{forex} = $form->{exchangerate};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $key (keys %{ $form->{AR_links} }) {
-
- foreach $ref (@{ $form->{AR_links}{$key} }) {
- if ($key eq 'AR_tax') {
- $form->{"selectAR_tax_$ref->{accno}"} = "<option>$ref->{accno}--$ref->{description}\n";
- $form->{"calctax_$ref->{accno}"} = 1;
- next;
- }
- $form->{"select$key"} .= "<option>$ref->{accno}--$ref->{description}\n";
- }
-
- # if there is a value we have an old entry
- for $i (1 .. scalar @{ $form->{acc_trans}{$key} }) {
- if ($key eq "AR_paid") {
- $form->{"AR_paid_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- # reverse paid
- $form->{"paid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{amount} * -1;
- $form->{"datepaid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{transdate};
- $form->{"source_$i"} = $form->{acc_trans}{$key}->[$i-1]->{source};
- $form->{"memo_$i"} = $form->{acc_trans}{$key}->[$i-1]->{memo};
-
- $form->{"forex_$i"} = $form->{"exchangerate_$i"} = $form->{acc_trans}{$key}->[$i-1]->{exchangerate};
-
- $form->{paidaccounts}++;
- } else {
-
- $akey = $key;
- $akey =~ s/AR_//;
-
- if ($key eq "AR_tax") {
- $form->{"${key}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = $form->round_amount($form->{acc_trans}{$key}->[$i-1]->{amount} / $exchangerate, 2);
-
- if ($form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"} > 0) {
- $totaltax += $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"};
- $taxrate += $form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"};
- } else {
- $totalwithholding += $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"};
- $withholdingrate += $form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"};
- }
-
- } else {
- $form->{"${akey}_$i"} = $form->round_amount($form->{acc_trans}{$key}->[$i-1]->{amount} / $exchangerate, 2);
- if ($akey eq 'amount') {
- $form->{rowcount}++;
- $totalamount += $form->{"${akey}_$i"};
-
- $form->{"projectnumber_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{projectnumber}--$form->{acc_trans}{$key}->[$i-1]->{project_id}";
- }
- $form->{"${key}_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- }
- }
- }
- }
-
- $form->{paidaccounts} = 1 if not defined $form->{paidaccounts};
-
- if ($form->{taxincluded} && $totalamount) {
- # add tax to individual amounts
- for $i (1 .. $form->{rowcount}) {
- $taxamount = ($totaltax + $totalwithholding) * $form->{"amount_$i"} / $totalamount;
- $tax = $form->round_amount($taxamount, 2);
- $diff += ($taxamount - $tax);
- $form->{"amount_$i"} += $tax;
- }
- $form->{amount_1} += $form->round_amount($diff, 2);
- }
-
- # check if calculated is equal to stored
- # taxincluded is terrible to calculate
- # this works only if all taxes are checked
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{taxincluded}) {
- if ($form->{"${item}_rate"} > 0) {
- if ($taxrate) {
- $taxamount = $form->round_amount(($totalamount + $totaltax + $totalwithholding) * $taxrate / (1 + $taxrate), 2) * $form->{"${item}_rate"} / $taxrate;
- }
- } else {
- if ($withholdingrate) {
- $taxamount = $form->round_amount(($totalamount + $totaltax + $totalwithholding) * $withholdingrate / (1 - $withholdingrate), 2) * $form->{"${item}_rate"} / $withholdingrate;
- }
- }
- } else {
- $taxamount = $totalamount * $form->{"${item}_rate"};
- }
- $taxamount = $form->round_amount($taxamount, 2);
-
- $form->{"calctax_$item"} = 0;
- if ($form->{"tax_$item"} == $taxamount) {
- $form->{"calctax_$item"} = 1;
- }
- }
-
- $form->{invtotal} = $totalamount + $totaltax + $totalwithholding;
- $form->{rowcount}++ if $form->{id};
-
- $form->{AR} = $form->{AR_1};
- $form->{rowcount} = 1 unless $form->{AR_amount_1};
-
- $form->{locked} = ($form->{revtrans}) ? '1' : ($form->datetonum($form->{transdate}, \%myconfig) <= $form->datetonum($form->{closedto}, \%myconfig));
-
- # readonly
- $form->{readonly} = 1 if $myconfig{acs} =~ /AR--Add Transaction/;
-
-}
-
-
-sub form_header {
-
- $title = $form->{title};
- $form->{title} = $locale->text("$title AR Transaction");
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
-
-# $locale->text('Add AR Transaction')
-# $locale->text('Edit AR Transaction')
-
- # set option selected
- foreach $item (qw(AR currency)) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/<option>\Q$form->{$item}\E/<option selected>$form->{$item}/;
- }
-
- foreach $item (qw(customer department employee)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- $form->{selectprojectnumber} = $form->unescape($form->{selectprojectnumber});
-
- # format amounts
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
- $exchangerate = qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|
- <th align=right>|.$locale->text('Exchange Rate').qq|</th>
- <td><input type=hidden name=exchangerate value=$form->{exchangerate}>$form->{exchangerate}</td>
-|;
- } else {
- $exchangerate .= qq|
- <th align=right>|.$locale->text('Exchange Rate').qq|</th>
- <td><input name=exchangerate size=10 value=$form->{exchangerate}></td>
-|;
- }
- }
-
- $taxincluded = "";
- if ($form->{taxaccounts}) {
- $taxincluded = qq|
- <tr>
- <td align=right><input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}></td>
- <th align=left nowrap>|.$locale->text('Tax Included').qq|</th>
- </tr>
-|;
- }
-
-
- if (($rows = $form->numtextrows($form->{notes}, 50)) < 2) {
- $rows = 2;
- }
- $notes = qq|<textarea name=notes rows=$rows cols=50 wrap=soft>$form->{notes}</textarea>|;
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.$form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
- $customer = ($form->{selectcustomer}) ? qq|<select name=customer>$form->{selectcustomer}</select>| : qq|<input name=customer value="$form->{customer}" size=35>|;
-
- $employee = qq|
- <input type=hidden name=employee value="$form->{employee}">
-|;
-
- $employee = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Salesperson').qq|</th>
- <td><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.$form->escape($form->{selectemployee},1).qq|">
- </tr>
-| if $form->{selectemployee};
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=type value="transaction">
-<input type=hidden name=vc value="customer">
-
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=printed value="$form->{printed}">
-<input type=hidden name=emailed value="$form->{emailed}">
-
-<input type=hidden name=sort value=$form->{sort}>
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-
-<input type=hidden name=title value="$title">
-
-<input type=hidden name=oldtransdate value=$form->{oldtransdate}>
-<input type=hidden name=audittrail value="$form->{audittrail}">
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align="right" nowrap>|.$locale->text('Customer').qq|</th>
- <td colspan=3>$customer</td>
- <input type=hidden name=selectcustomer value="|.$form->escape($form->{selectcustomer},1).qq|">
- <input type=hidden name=oldcustomer value="$form->{oldcustomer}">
- <input type=hidden name=customer_id value="$form->{customer_id}">
- <input type=hidden name=terms value=$form->{terms}>
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <table width=100%>
- <tr>
- <th align=left nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>$form->{creditlimit}</td>
- <th align=left nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n">|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</td>
- <input type=hidden name=creditlimit value=$form->{creditlimit}>
- <input type=hidden name=creditremaining value=$form->{creditremaining}>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
- <input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
- <input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
- $exchangerate
- </tr>
- $department
- $taxincluded
- </table>
- </td>
- <td align=right>
- <table>
- $employee
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td><input name=invnumber size=20 value="$form->{invnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td><input name=ordnumber size=20 value="$form->{ordnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Date').qq|</th>
- <td><input name=transdate size=11 title="($myconfig{'dateformat'})" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Due Date').qq|</th>
- <td><input name=duedate size=11 title="$myconfig{'dateformat'}" value=$form->{duedate}></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
-
-<input type=hidden name=selectAR_amount value="$form->{selectAR_amount}">
-<input type=hidden name=selectprojectnumber value="|.$form->escape($form->{selectprojectnumber},1).qq|">
-<input type=hidden name=rowcount value=$form->{rowcount}>
-|;
-
- $amount = $locale->text('Amount');
-
- for $i (1 .. $form->{rowcount}) {
-
- $selectAR_amount = $form->{selectAR_amount};
- $selectAR_amount =~ s/option>\Q$form->{"AR_amount_$i"}\E/option selected>$form->{"AR_amount_$i"}/;
-
- $selectprojectnumber = $form->{selectprojectnumber};
- $selectprojectnumber =~ s/(<option value="\Q$form->{"projectnumber_$i"}\E")/$1 selected/;
-
- # format amounts
- $form->{"amount_$i"} = $form->format_amount(\%myconfig, $form->{"amount_$i"}, 2);
-
- $project = qq|
- <td align=right><select name="projectnumber_$i">$selectprojectnumber</select></td>
-| if $form->{selectprojectnumber};
-
- print qq|
- <tr>
- <th align=right>$amount</th>
- <td><input name="amount_$i" size=10 value=$form->{"amount_$i"}></td>
- <td></td>
- <td><select name="AR_amount_$i">$selectAR_amount</select></td>
- $project
- </tr>
-|;
- $amount = "";
- }
-
-
- $taxlabel = ($form->{taxincluded}) ? $locale->text('Tax Included') : $locale->text('Tax');
-
- foreach $item (split / /, $form->{taxaccounts}) {
-
- $form->{"calctax_$item"} = ($form->{"calctax_$item"}) ? "checked" : "";
-
- $form->{"tax_$item"} = $form->format_amount(\%myconfig, $form->{"tax_$item"}, 2);
- print qq|
- <tr>
- <th align=right nowrap>$taxlabel</th>
- <td><input name="tax_$item" size=10 value=$form->{"tax_$item"}></td>
- <td align=right><input name="calctax_$item" class=checkbox type=checkbox value=1 $form->{"calctax_$item"}></td>
- <td><select name="AR_tax_$item">$form->{"selectAR_tax_$item"}</select></td>
- </tr>
- <input type=hidden name="${item}_rate" value="$form->{"${item}_rate"}">
- <input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
- <input type=hidden name="selectAR_tax_$item" value="$form->{"selectAR_tax_$item"}">
-|;
-
- }
-
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2);
-
- print qq|
- <tr>
-
- <th align=right>|.$locale->text('Total').qq|</th>
- <th align=left>$form->{invtotal}</th>
- <td></td>
-
- <input type=hidden name=oldinvtotal value=$form->{oldinvtotal}>
- <input type=hidden name=oldtotalpaid value=$form->{oldtotalpaid}>
-
- <input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-
- <td><select name=AR>$form->{selectAR}</select></td>
- <input type=hidden name=selectAR value="$form->{selectAR}">
-
- </tr>
- <tr valign=top>
- <th align=right>|.$locale->text('Notes').qq|</th>
- <td colspan=4>$notes</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
- <th colspan=6 class=listheading>|.$locale->text('Payments').qq|</th>
- </tr>
-|;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- @column_index = qw(datepaid source memo paid AR_paid);
- } else {
- @column_index = qw(datepaid source memo paid exchangerate AR_paid);
- }
-
- $column_data{datepaid} = "<th>".$locale->text('Date')."</th>";
- $column_data{paid} = "<th>".$locale->text('Amount')."</th>";
- $column_data{exchangerate} = "<th>".$locale->text('Exch')."</th>";
- $column_data{AR_paid} = "<th>".$locale->text('Account')."</th>";
- $column_data{source} = "<th>".$locale->text('Source')."</th>";
- $column_data{memo} = "<th>".$locale->text('Memo')."</th>";
-
- print "
- <tr>
-";
- map { print "$column_data{$_}\n" } @column_index;
- print "
- </tr>
-";
-
-
- $form->{paidaccounts}++ if ($form->{"paid_$form->{paidaccounts}"});
- for $i (1 .. $form->{paidaccounts}) {
- print "
- <tr>
-";
-
- $form->{"selectAR_paid_$i"} = $form->{selectAR_paid};
- $form->{"selectAR_paid_$i"} =~ s/option>\Q$form->{"AR_paid_$i"}\E/option selected>$form->{"AR_paid_$i"}/;
-
- # format amounts
- $form->{"paid_$i"} = $form->format_amount(\%myconfig, $form->{"paid_$i"}, 2);
- $form->{"exchangerate_$i"} = $form->format_amount(\%myconfig, $form->{"exchangerate_$i"});
-
- $exchangerate = qq|&nbsp;|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{"forex_$i"}) {
- $exchangerate = qq|<input type=hidden name="exchangerate_$i" value=$form->{"exchangerate_$i"}>$form->{"exchangerate_$i"}|;
- } else {
- $exchangerate = qq|<input name="exchangerate_$i" size=10 value=$form->{"exchangerate_$i"}>|;
- }
- }
-
- $exchangerate .= qq|
-<input type=hidden name="forex_$i" value=$form->{"forex_$i"}>
-|;
-
- $column_data{paid} = qq|<td align=center><input name="paid_$i" size=11 value=$form->{"paid_$i"}></td>|;
- $column_data{AR_paid} = qq|<td align=center><select name="AR_paid_$i">$form->{"selectAR_paid_$i"}</select></td>|;
- $column_data{exchangerate} = qq|<td align=center>$exchangerate</td>|;
- $column_data{datepaid} = qq|<td align=center><input name="datepaid_$i" size=11 value=$form->{"datepaid_$i"}></td>|;
- $column_data{source} = qq|<td align=center><input name="source_$i" size=11 value="$form->{"source_$i"}"></td>|;
- $column_data{memo} = qq|<td align=center><input name="memo_$i" size=11 value="$form->{"memo_$i"}"></td>|;
-
- map { print qq|$column_data{$_}\n| } @column_index;
-
- print "
- </tr>
-";
- }
-
- print qq|
-<input type=hidden name=paidaccounts value=$form->{paidaccounts}>
-<input type=hidden name=selectAR_paid value="$form->{selectAR_paid}">
-
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub form_footer {
-
- &print_options;
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-|;
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
-
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-|;
-
- if (!$form->{locked}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
-|;
- }
-
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Post as new').qq|">
-|;
-
- } else {
- if ($transdate > $closedto) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">|;
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print "
-</form>
-
-</body>
-</html>
-";
-
-}
-
-
-sub update {
- my $display = shift;
-
- if ($display) {
- goto TAXCALC;
- }
-
- $form->{invtotal} = 0;
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- @flds = qw(amount AR_amount projectnumber);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{rowcount}) {
- $form->{"amount_$i"} = $form->parse_amount(\%myconfig, $form->{"amount_$i"});
- if ($form->{"amount_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count + 1;
-
- map { $form->{invtotal} += $form->{"amount_$_"} } (1 .. $form->{rowcount});
-
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, 'buy')));
-
-
- if (&check_name(customer)) {
- $form->{notes} = $form->{intnotes} unless $form->{id};
- }
-
- if ($form->{transdate} ne $form->{oldtransdate}) {
- $form->{duedate} = $form->current_date(\%myconfig, $form->{transdate}, $form->{terms} * 1);
- $form->{oldtransdate} = $form->{transdate};
- }
-
-
-
-TAXCALC:
- # recalculate taxes
-
- @taxaccounts = split / /, $form->{taxaccounts};
-
- map { $form->{"tax_$_"} = $form->parse_amount(\%myconfig, $form->{"tax_$_"}) } @taxaccounts;
-
- if ($form->{taxincluded}) {
- $taxrate = 0;
- $withholdingrate = 0;
-
- foreach $item (@taxaccounts) {
- $form->{"calctax_$item"} = 1 if $form->{calctax};
-
- if ($form->{"calctax_$item"}) {
- if ($form->{"${item}_rate"} > 0) {
- $taxrate += $form->{"${item}_rate"};
- } else {
- $withholdingrate += $form->{"${item}_rate"};
- }
- }
- }
-
- foreach $item (@taxaccounts) {
-
- if ($form->{"calctax_$item"}) {
- if ($form->{"${item}_rate"} > 0) {
- if ($taxrate) {
- $amount = $form->round_amount($form->{invtotal} * $taxrate / (1 + $taxrate), 2) * $form->{"${item}_rate"} / $taxrate;
- $form->{"tax_$item"} = $form->round_amount($amount, 2);
- $taxdiff += ($amount - $form->{"tax_$item"});
- }
- } else {
- if ($withholdingrate) {
- $amount = $form->round_amount($form->{invtotal} * $withholdingrate / (1 - $withholdingrate), 2) * $form->{"${item}_rate"} / $withholdingrate;
- $form->{"tax_$item"} = $form->round_amount($amount, 2);
- $taxdiff += ($amount - $form->{"tax_$item"});
- }
- }
-
- if (abs($taxdiff) >= 0.005) {
- $form->{"tax_$item"} += $form->round_amount($taxdiff, 2);
- $taxdiff = 0;
- }
- }
- $form->{"selectAR_tax_$item"} = qq|<option>$item--$form->{"${item}_description"}|;
- $totaltax += $form->{"tax_$item"};
- }
- } else {
- foreach $item (@taxaccounts) {
- $form->{"calctax_$item"} = 1 if $form->{calctax};
-
- if ($form->{"calctax_$item"}) {
- $form->{"tax_$item"} = $form->round_amount($form->{invtotal} * $form->{"${item}_rate"}, 2);
- }
- $form->{"selectAR_tax_$item"} = qq|<option>$item--$form->{"${item}_description"}|;
- $totaltax += $form->{"tax_$item"};
- }
- }
-
- $form->{invtotal} = ($form->{taxincluded}) ? $form->{invtotal} : $form->{invtotal} + $totaltax;
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
-
- $totalpaid += $form->{"paid_$i"};
-
- $form->{"exchangerate_$i"} = $exchangerate if ($form->{"forex_$i"} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{"datepaid_$i"}, 'buy')));
- }
- }
-
- $form->{creditremaining} -= ($form->{invtotal} - $totalpaid + $form->{oldtotalpaid} - $form->{oldinvtotal});
- $form->{oldinvtotal} = $form->{invtotal};
- $form->{oldtotalpaid} = $totalpaid;
-
- &display_form;
-
-}
-
-
-sub post {
-
- # check if there is an invoice number, invoice and due date
- $form->isblank("transdate", $locale->text('Invoice Date missing!'));
- $form->isblank("duedate", $locale->text('Due Date missing!'));
- $form->isblank("customer", $locale->text('Customer missing!'));
-
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
-
- $form->error($locale->text('Cannot post transaction for a closed period!')) if ($transdate <= $closedto);
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- $datepaid = $form->datetonum($form->{"datepaid_$i"}, \%myconfig);
-
- $form->isblank("datepaid_$i", $locale->text('Payment date missing!'));
-
- $form->error($locale->text('Cannot post payment for a closed period!')) if ($datepaid <= $closedto);
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = $form->{exchangerate} if ($transdate == $datepaid);
- $form->isblank("exchangerate_$i", $locale->text('Exchange rate for payment missing!'));
- }
- }
- }
-
- # if oldcustomer ne customer redo form
- ($customer) = split /--/, $form->{customer};
- if ($form->{oldcustomer} ne "$customer--$form->{customer_id}") {
- &update;
- exit;
- }
-
- $form->{invnumber} = $form->update_defaults(\%myconfig, "sinumber") unless $form->{invnumber};
-
- $form->{id} = 0 if $form->{postasnew};
-
- $form->redirect($locale->text('Transaction posted!')) if (AR->post_transaction(\%myconfig, \%$form));
- $form->error($locale->text('Cannot post transaction!'));
-
-}
-
-
-sub post_as_new {
-
- $form->{postasnew} = 1;
- &post;
-
-}
-
-
-sub delete {
-
- $form->{title} = $locale->text('Confirm!');
-
- $form->header;
-
- delete $form->{header};
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>$form->{title}</h2>
-
-<h4>|.$locale->text('Are you sure you want to delete Transaction').qq| $form->{invnumber}</h4>
-
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub yes {
-
- $form->redirect($locale->text('Transaction deleted!')) if (AR->delete_transaction(\%myconfig, \%$form, $spool));
- $form->error($locale->text('Cannot delete transaction!'));
-
-}
-
-
-sub search {
-
- $form->create_links("AR", \%myconfig, "customer");
-
- $form->{selectAR} = "<option>\n";
- map { $form->{selectAR} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{AR_links}{AR} };
-
- if (@{ $form->{all_customer} }) {
- map { $customer .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_customer} };
- $customer = qq|<select name=customer><option>\n$customer</select>|;
- } else {
- $customer = qq|<input name=customer size=35>|;
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-| if $form->{selectdepartment};
-
-
- $form->{title} = $locale->text('AR Transactions');
-
- $invnumber = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td colspan=3><input name=invnumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td colspan=3><input name=ordnumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Notes').qq|</th>
- <td colspan=3><input name=notes size=40></td>
- </tr>
-|;
-
- $openclosed = qq|
- <tr>
- <td align=right><input name=open class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Open').qq|</td>
- <td align=right><input name=closed class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Closed').qq|</td>
- </tr>
-|;
-
- if ($form->{outstanding}) {
- $form->{title} = $locale->text('AR Outstanding');
- $invnumber = "";
- $openclosed = "";
- }
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=outstanding value=$form->{outstanding}>
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Account').qq|</th>
- <td colspan=3><select name=AR>$form->{selectAR}</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Customer').qq|</th>
- <td colspan=3>$customer</td>
- </tr>
- $department
- $invnumber
- <tr>
- <th align=right>|.$locale->text('Ship via').qq|</th>
- <td colspan=3><input name=shipvia size=40></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <input type=hidden name=sort value=transdate>
- $selectfrom
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td>
- <table width=100%>
- $openclosed
- <tr>
- <td align=right><input name="l_id" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('ID').qq|</td>
- <td align=right><input name="l_invnumber" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Invoice Number').qq|</td>
- <td align=right><input name="l_ordnumber" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Order Number').qq|</td>
- <td align=right><input name="l_transdate" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Invoice Date').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_name" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Customer').qq|</td>
- <td align=right><input name="l_employee" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Salesperson').qq|</td>
- <td align=right><input name="l_manager" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Manager').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_netamount" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Amount').qq|</td>
- <td align=right><input name="l_tax" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Tax').qq|</td>
- <td align=right><input name="l_amount" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Total').qq|</td>
- <td align=right><input name="l_curr" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Currency').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_datepaid" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Date Paid').qq|</td>
- <td align=right><input name="l_paid" class=checkbox type=checkbox value=Y checked></td>
- <td nowrap>|.$locale->text('Paid').qq|</td>
- <td align=right><input name="l_duedate" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Due Date').qq|</td>
- <td align=right><input name="l_due" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Amount Due').qq|</td>
- </tr>
- <tr valign=top>
- <td align=right><input name="l_notes" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Notes').qq|</td>
- <td align=right><input name="l_till" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Till').qq|</td>
- <td align=right><input name="l_shippingpoint" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Shipping Point').qq|</td>
- <td align=right><input name="l_shipvia" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Ship via').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_subtotal" class=checkbox type=checkbox value=Y></td>
- <td nowrap>|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=$form->{nextsub}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub ar_transactions {
-
- if ($form->{customer}) {
- $form->{customer} = $form->unescape($form->{customer});
- ($form->{customer}, $form->{customer_id}) = split(/--/, $form->{customer});
- }
-
- AR->ar_transactions(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=ar_transactions&direction=$form->{direction}&oldsort=$form->{oldsort}&till=$form->{till}&outstanding=$form->{outstanding}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $href .= "&title=".$form->escape($form->{title});
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=ar_transactions&direction=$form->{direction}&oldsort=$form->{oldsort}&till=$form->{till}&outstanding=$form->{outstanding}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $callback .= "&title=".$form->escape($form->{title},1);
-
- if ($form->{AR}) {
- $callback .= "&AR=".$form->escape($form->{AR},1);
- $href .= "&AR=".$form->escape($form->{AR});
- $form->{AR} =~ s/--/ /;
- $option = $locale->text('Account')." : $form->{AR}";
- }
-
- if ($form->{customer}) {
- $callback .= "&customer=".$form->escape($form->{customer},1)."--$form->{customer_id}";
- $href .= "&customer=".$form->escape($form->{customer})."--$form->{customer_id}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Customer')." : $form->{customer}";
- }
- if ($form->{department}) {
- $callback .= "&department=".$form->escape($form->{department},1);
- $href .= "&department=".$form->escape($form->{department});
- ($department) = split /--/, $form->{department};
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Department')." : $department";
- }
- if ($form->{invnumber}) {
- $callback .= "&invnumber=".$form->escape($form->{invnumber},1);
- $href .= "&invnumber=".$form->escape($form->{invnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Invoice Number')." : $form->{invnumber}";
- }
- if ($form->{ordnumber}) {
- $callback .= "&ordnumber=".$form->escape($form->{ordnumber},1);
- $href .= "&ordnumber=".$form->escape($form->{ordnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Order Number')." : $form->{ordnumber}";
- }
- if ($form->{notes}) {
- $callback .= "&notes=".$form->escape($form->{notes},1);
- $href .= "&notes=".$form->escape($form->{notes});
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Notes')." : $form->{notes}";
- }
-
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $href .= "&transdateto=$form->{transdateto}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- if ($form->{open}) {
- $callback .= "&open=$form->{open}";
- $href .= "&open=$form->{open}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $callback .= "&closed=$form->{closed}";
- $href .= "&closed=$form->{closed}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
- }
-
- @columns = $form->sort_columns(qw(transdate id invnumber ordnumber name netamount tax amount paid due curr datepaid duedate notes till employee manager shippingpoint shipvia));
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- if ($form->{l_curr} && $item =~ /(amount|tax|paid|due)/) {
- push @column_index, "fx_$item";
- }
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
-
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- $href .= "&l_subtotal=Y";
- }
-
-
- $column_header{id} = "<th><a class=listheading href=$href&sort=id}>".$locale->text('ID')."</a></th>";
- $column_header{transdate} = "<th><a class=listheading href=$href&sort=transdate>".$locale->text('Date')."</a></th>";
- $column_header{duedate} = "<th><a class=listheading href=$href&sort=duedate>".$locale->text('Due Date')."</a></th>";
- $column_header{invnumber} = "<th><a class=listheading href=$href&sort=invnumber>".$locale->text('Invoice')."</a></th>";
- $column_header{ordnumber} = "<th><a class=listheading href=$href&sort=ordnumber>".$locale->text('Order')."</a></th>";
- $column_header{name} = "<th><a class=listheading href=$href&sort=name>".$locale->text('Customer')."</a></th>";
- $column_header{netamount} = "<th class=listheading>" . $locale->text('Amount') . "</th>";
- $column_header{tax} = "<th class=listheading>" . $locale->text('Tax') . "</th>";
- $column_header{amount} = "<th class=listheading>" . $locale->text('Total') . "</th>";
- $column_header{paid} = "<th class=listheading>" . $locale->text('Paid') . "</th>";
- $column_header{datepaid} = "<th><a class=listheading href=$href&sort=datepaid>" . $locale->text('Date Paid') . "</a></th>";
- $column_header{due} = "<th class=listheading>" . $locale->text('Amount Due') . "</th>";
- $column_header{notes} = "<th class=listheading>".$locale->text('Notes')."</th>";
- $column_header{employee} = "<th><a class=listheading href=$href&sort=employee>".$locale->text('Salesperson')."</th>";
- $column_header{manager} = "<th><a class=listheading href=$href&sort=manager>".$locale->text('Manager')."</th>";
- $column_header{till} = "<th class=listheading><a class=listheading href=$href&sort=till>".$locale->text('Till')."</th>";
-
- $column_header{shippingpoint} = "<th><a class=listheading href=$href&sort=shippingpoint>" . $locale->text('Shipping Point') . "</a></th>";
- $column_header{shipvia} = "<th><a class=listheading href=$href&sort=shipvia>" . $locale->text('Ship via') . "</a></th>";
-
- $column_header{curr} = "<th><a class=listheading href=$href&sort=curr>" . $locale->text('Curr') . "</a></th>";
- map { $column_header{"fx_$_"} = "<th>&nbsp;</th>" } qw(amount tax netamount paid due);
-
- $form->{title} = ($form->{title}) ? $form->{title} : $locale->text('AR Transactions');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- # add sort and escape callback, this one we use for the add sub
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- # flip direction
- $direction = ($form->{direction} eq 'ASC') ? "ASC" : "DESC";
- $href =~ s/&direction=(\w+)&/&direction=$direction&/;
-
- if (@{ $form->{transactions} }) {
- $sameitem = $form->{transactions}->[0]->{$form->{sort}};
- }
-
- # sums and tax on reports by Antonio Gallardo
- #
- foreach $ar (@{ $form->{transactions} }) {
-
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $ar->{$form->{sort}}) {
- &ar_subtotal;
- }
- }
-
- if ($form->{l_curr}) {
- map { $ar->{"fx_$_"} = $ar->{$_}/$ar->{exchangerate} } qw(netamount amount paid);
-
- map { $column_data{"fx_$_"} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{"fx_$_"}, 2, "&nbsp;")."</td>" } qw(netamount amount paid);
-
- $column_data{fx_tax} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{fx_amount} - $ar->{fx_netamount}, 2, "&nbsp;")."</td>";
- $column_data{fx_due} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{fx_amount} - $ar->{fx_paid}, 2, "&nbsp;")."</td>";
-
- $subtotalfxnetamount += $ar->{fx_netamount};
- $subtotalfxamount += $ar->{fx_amount};
- $subtotalfxpaid += $ar->{fx_paid};
-
- $totalfxnetamount += $ar->{fx_netamount};
- $totalfxamount += $ar->{fx_amount};
- $totalfxpaid += $ar->{fx_paid};
-
- }
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{$_}, 2, "&nbsp;")."</td>" } qw(netamount amount paid);
-
- $column_data{tax} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{amount} - $ar->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{due} = "<td align=right>".$form->format_amount(\%myconfig, $ar->{amount} - $ar->{paid}, 2, "&nbsp;")."</td>";
-
-
- $subtotalnetamount += $ar->{netamount};
- $subtotalamount += $ar->{amount};
- $subtotalpaid += $ar->{paid};
-
- $totalnetamount += $ar->{netamount};
- $totalamount += $ar->{amount};
- $totalpaid += $ar->{paid};
-
- $column_data{transdate} = "<td>$ar->{transdate}&nbsp;</td>";
- $column_data{id} = "<td>$ar->{id}</td>";
- $column_data{datepaid} = "<td>$ar->{datepaid}&nbsp;</td>";
- $column_data{duedate} = "<td>$ar->{duedate}&nbsp;</td>";
-
- $module = ($ar->{invoice}) ? "is.pl" : $form->{script};
- $module = ($ar->{till}) ? "ps.pl" : $module;
-
- $column_data{invnumber} = "<td><a href=$module?action=edit&id=$ar->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ar->{invnumber}</a></td>";
- $column_data{ordnumber} = "<td>$ar->{ordnumber}&nbsp;</td>";
-
-
- $name = $form->escape($ar->{name});
- $column_data{name} = "<td><a href=$href&customer=$name--$ar->{customer_id}&sort=$form->{sort}>$ar->{name}</a></td>";
-
- $ar->{notes} =~ s/\r\n/<br>/g;
- $column_data{notes} = "<td>$ar->{notes}&nbsp;</td>";
- $column_data{shippingpoint} = "<td>$ar->{shippingpoint}&nbsp;</td>";
- $column_data{shipvia} = "<td>$ar->{shipvia}&nbsp;</td>";
- $column_data{employee} = "<td>$ar->{employee}&nbsp;</td>";
- $column_data{manager} = "<td>$ar->{manager}&nbsp;</td>";
- $column_data{till} = "<td>$ar->{till}&nbsp;</td>";
- $column_data{curr} = "<td>$ar->{curr}</td>";
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>
-";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- &ar_subtotal;
- }
-
- # print totals
- print qq|
- <tr class=listtotal>
-|;
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount - $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount, 2, "&nbsp;")."</th>";
- $column_data{paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalpaid, 2, "&nbsp;")."</th>";
- $column_data{due} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount - $totalpaid, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount - $totalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount, 2, "&nbsp;")."</th>";
- $column_data{fx_paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxpaid, 2, "&nbsp;")."</th>";
- $column_data{fx_due} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount - $totalfxpaid, 2, "&nbsp;")."</th>";
- }
-
- map { print "\n$column_data{$_}" } @column_index;
-
- if ($myconfig{acs} !~ /AR--AR/) {
- $i = 1;
- $button{'AR--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AR Transaction').qq|"> |;
- $button{'AR--Add Transaction'}{order} = $i++;
- $button{'AR--Sales Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Sales Invoice.').qq|"> |;
- $button{'AR--Sales Invoice'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
- }
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=customer value="$form->{customer}">
-<input type=hidden name=customer_id value=$form->{customer_id}>
-<input type=hidden name=vc value=customer>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- if (! $form->{till}) {
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub ar_subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{tax} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount - $subtotalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount, 2, "&nbsp;")."</th>";
- $column_data{paid} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalpaid, 2, "&nbsp;")."</th>";
- $column_data{due} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount - $subtotalpaid, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_tax} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount - $subtotalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount, 2, "&nbsp;")."</th>";
- $column_data{fx_paid} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxpaid, 2, "&nbsp;")."</th>";
- $column_data{fx_due} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxmount - $subtotalfxpaid, 2, "&nbsp;")."</th>";
- }
-
- $subtotalnetamount = 0;
- $subtotalamount = 0;
- $subtotalpaid = 0;
-
- $subtotalfxnetamount = 0;
- $subtotalfxamount = 0;
- $subtotalfxpaid = 0;
-
- $sameitem = $ar->{$form->{sort}};
-
- print "<tr class=listsubtotal>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
-print "
-</tr>
-";
-
-}
-
-
-
diff --git a/sql-ledger/bin/mozilla/arap.pl b/sql-ledger/bin/mozilla/arap.pl
deleted file mode 100644
index 224ea40..0000000
--- a/sql-ledger/bin/mozilla/arap.pl
+++ /dev/null
@@ -1,415 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# common routines for gl, ar, ap, is, ir, oe
-#
-
-# any custom scripts for this one
-if (-f "$form->{path}/custom_arap.pl") {
- eval { require "$form->{path}/custom_arap.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_arap.pl") {
- eval { require "$form->{path}/$form->{login}_arap.pl"; };
-}
-
-
-1;
-# end of main
-
-
-sub check_name {
- my ($name, $msg) = @_;
-
- my ($new_name, $new_id) = split /--/, $form->{$name};
- my $i = 0;
-
- # if we use a selection
- if ($form->{"select$name"}) {
- if ($form->{"old$name"} ne $form->{$name}) {
- # this is needed for is, ir and oe
- map { delete $form->{"${_}_rate"} } (split / /, $form->{taxaccounts});
-
- # for credit calculations
- $form->{oldinvtotal} = 0;
- $form->{oldtotalpaid} = 0;
- $form->{calctax} = 1;
-
- $form->{"${name}_id"} = $new_id;
- IS->get_customer(\%myconfig, \%$form) if ($name eq 'customer');
- IR->get_vendor(\%myconfig, \%$form) if ($name eq 'vendor');
-
- $form->{$name} = $form->{"old$name"} = "$new_name--$new_id";
-
- # put employee together if there is a new employee_id
- $form->{employee} = "$form->{employee}--$form->{employee_id}" if $form->{employee_id};
-
- $i = 1;
- }
- } else {
-
- # check name, combine name and id
- if ($form->{"old$name"} ne qq|$form->{$name}--$form->{"${name}_id"}|) {
- # this is needed for is, ir and oe
- map { delete $form->{"${_}_rate"} } (split / /, $form->{taxaccounts});
-
- # for credit calculations
- $form->{oldinvtotal} = 0;
- $form->{oldtotalpaid} = 0;
- $form->{calctax} = 1;
-
- # return one name or a list of names in $form->{name_list}
- if (($i = $form->get_name(\%myconfig, $name)) > 1) {
- &select_name($name);
- exit;
- }
-
- if ($i == 1) {
- # we got one name
- $form->{"${name}_id"} = $form->{name_list}[0]->{id};
- $form->{$name} = $form->{name_list}[0]->{name};
- $form->{"old$name"} = qq|$form->{$name}--$form->{"${name}_id"}|;
-
- IS->get_customer(\%myconfig, \%$form) if ($name eq 'customer');
- IR->get_vendor(\%myconfig, \%$form) if ($name eq 'vendor');
-
- # put employee together if there is a new employee_id
- $form->{employee} = "$form->{employee}--$form->{employee_id}" if $form->{employee_id};
-
- } else {
- # name is not on file or no outstanding invoice
- $msg = ucfirst $name . " not on file!" unless $msg;
- $form->error($locale->text($msg));
- }
- }
- }
-
- $i;
-
-}
-
-# $locale->text('Customer not on file!')
-# $locale->text('Vendor not on file!')
-
-
-
-sub select_name {
- my ($table) = @_;
-
- @column_index = qw(ndx name address);
-
- $label = ucfirst $table;
- $column_data{ndx} = qq|<th>&nbsp;</th>|;
- $column_data{name} = qq|<th class=listheading>|.$locale->text($label).qq|</th>|;
- $column_data{address} = qq|<th class=listheading>|.$locale->text('Address').qq|</th>|;
-
- # list items with radio button on a form
- $form->header;
-
- $title = $locale->text('Select from one of the names below');
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr space=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- my $i = 0;
- foreach $ref (@{ $form->{name_list} }) {
- $checked = ($i++) ? "" : "checked";
-
- $ref->{name} = $form->quote($ref->{name});
-
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
- $column_data{name} = qq|<td><input name="new_name_$i" type=hidden value="$ref->{name}">$ref->{name}</td>|;
- $column_data{address} = qq|<td>$ref->{address1} $ref->{address2} $ref->{city} $ref->{state} $ref->{zipcode} $ref->{country}</td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input name="new_id_$i" type=hidden value=$ref->{id}>
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input name=lastndx type=hidden value=$i>
-
-|;
-
- # delete variables
- map { delete $form->{$_} } qw(action name_list header);
-
- $form->hide_form();
-
- print qq|
-<input type=hidden name=nextsub value=name_selected>
-
-<input type=hidden name=vc value=$table>
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub name_selected {
-
- # replace the variable with the one checked
-
- # index for new item
- $i = $form->{ndx};
-
- $form->{$form->{vc}} = $form->{"new_name_$i"};
- $form->{"$form->{vc}_id"} = $form->{"new_id_$i"};
- $form->{"old$form->{vc}"} = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|;
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } (id, name);
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- IS->get_customer(\%myconfig, \%$form) if ($form->{vc} eq 'customer');
- IR->get_vendor(\%myconfig, \%$form) if ($form->{vc} eq 'vendor');
-
- # put employee together if there is a new employee_id
- $form->{employee} = "$form->{employee}--$form->{employee_id}" if $form->{employee_id};
-
- &update(1);
-
-}
-
-
-sub add_transaction {
- my ($module) = @_;
-
- delete $form->{script};
- $form->{action} = "add";
- $form->{type} = "invoice" if $module =~ /(is|ir)/;
-
- $form->{callback} = $form->escape($form->{callback},1);
- map { $argv .= "$_=$form->{$_}&" } keys %$form;
-
- $form->{callback} = "$module.pl?$argv";
-
- $form->redirect;
-
-}
-
-
-
-sub check_project {
-
- for $i (1 .. $form->{rowcount}) {
- $form->{"project_id_$i"} = "" unless $form->{"projectnumber_$i"};
- if ($form->{"projectnumber_$i"} ne $form->{"oldprojectnumber_$i"}) {
- if ($form->{"projectnumber_$i"}) {
- # get new project
- $form->{projectnumber} = $form->{"projectnumber_$i"};
- if (($rows = PE->projects(\%myconfig, $form)) > 1) {
- # check form->{project_list} how many there are
- $form->{rownumber} = $i;
- &select_project;
- exit;
- }
-
- if ($rows == 1) {
- $form->{"project_id_$i"} = $form->{project_list}->[0]->{id};
- $form->{"projectnumber_$i"} = $form->{project_list}->[0]->{projectnumber};
- $form->{"oldprojectnumber_$i"} = $form->{project_list}->[0]->{projectnumber};
- } else {
- # not on file
- $form->error($locale->text('Project not on file!'));
- }
- } else {
- $form->{"oldprojectnumber_$i"} = "";
- }
- }
- }
-
-}
-
-
-sub select_project {
-
- @column_index = qw(ndx projectnumber description);
-
- $column_data{ndx} = qq|<th>&nbsp;</th>|;
- $column_data{projectnumber} = qq|<th>|.$locale->text('Number').qq|</th>|;
- $column_data{description} = qq|<th>|.$locale->text('Description').qq|</th>|;
-
- # list items with radio button on a form
- $form->header;
-
- $title = $locale->text('Select from one of the projects below');
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=rownumber value=$form->{rownumber}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr space=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- my $i = 0;
- foreach $ref (@{ $form->{project_list} }) {
- $checked = ($i++) ? "" : "checked";
-
- $ref->{name} = $form->quote($ref->{name});
-
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
- $column_data{projectnumber} = qq|<td><input name="new_projectnumber_$i" type=hidden value="$ref->{projectnumber}">$ref->{projectnumber}</td>|;
- $column_data{description} = qq|<td>$ref->{description}</td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input name="new_id_$i" type=hidden value=$ref->{id}>
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input name=lastndx type=hidden value=$i>
-
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action project_list header);
-
- $form->hide_form();
-
- print qq|
-<input type=hidden name=nextsub value=project_selected>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub project_selected {
-
- # replace the variable with the one checked
-
- # index for new item
- $i = $form->{ndx};
-
- $form->{"projectnumber_$form->{rownumber}"} = $form->{"new_projectnumber_$i"};
- $form->{"oldprojectnumber_$form->{rownumber}"} = $form->{"new_projectnumber_$i"};
- $form->{"project_id_$form->{rownumber}"} = $form->{"new_id_$i"};
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } qw(id projectnumber description);
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- if ($form->{update}) {
- &{ $form->{update} };
- } else {
- &update;
- }
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-sub gl_transaction { &add };
-sub ar_transaction { &add_transaction(ar) };
-sub ap_transaction { &add_transaction(ap) };
-sub sales_invoice_ { &add_transaction(is) };
-sub vendor_invoice_ { &add_transaction(ir) };
-
diff --git a/sql-ledger/bin/mozilla/arapprn.pl b/sql-ledger/bin/mozilla/arapprn.pl
deleted file mode 100644
index eea82c7..0000000
--- a/sql-ledger/bin/mozilla/arapprn.pl
+++ /dev/null
@@ -1,660 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-#
-# printing routines for ar, ap
-#
-
-# any custom scripts for this one
-if (-f "$form->{path}/custom_arapprn.pl") {
- eval { require "$form->{path}/custom_arapprn.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_arapprn.pl") {
- eval { require "$form->{path}/$form->{login}_arapprn.pl"; };
-}
-
-
-1;
-# end of main
-
-
-sub print {
-
- if ($form->{AP}) {
- $form->{vc} = "vendor";
- $form->{ARAP} = "AP";
- $invfld = "vinumber";
- }
- if ($form->{AR}) {
- $form->{vc} = "customer";
- $form->{ARAP} = "AR";
- $invfld = "sinumber";
- }
-
- if ($form->{media} !~ /screen/) {
- $form->error($locale->text('Select postscript or PDF!')) if $form->{format} !~ /(postscript|pdf)/;
- }
-
- if ($form->{media} eq 'screen' && $form->{formname} =~ /(check|receipt)/) {
- $form->error($locale->text('Select postscript or PDF!')) if $form->{format} !~ /(postscript|pdf)/;
- }
-
- if (! $form->{invnumber}) {
- $form->{invnumber} = $form->update_defaults(\%myconfig, $invfld);
- if ($form->{media} eq 'screen') {
- if ($form->{media} eq 'screen') {
- &update;
- exit;
- }
- }
- }
-
- if ($form->{formname} =~ /(check|receipt)/) {
- if ($form->{media} ne 'screen') {
- map { delete $form->{$_} } qw(action header);
- $form->{invtotal} = $form->{oldinvtotal};
-
- foreach $key (keys %$form) {
- $form->{$key} =~ s/&/%26/g;
- $form->{previousform} .= qq|$key=$form->{$key}&|;
- }
- chop $form->{previousform};
- $form->{previousform} = $form->escape($form->{previousform}, 1);
- }
-
- if ($form->{paidaccounts} > 1) {
- if ($form->{"paid_$form->{paidaccounts}"}) {
- &update;
- exit;
- } elsif ($form->{paidaccounts} > 2) {
- # select payment
- &select_payment;
- exit;
- }
- } else {
- $form->error($locale->text('Nothing to print!'));
- }
-
- }
-
- &{ "print_$form->{formname}" }(1);
-
-}
-
-
-sub print_check {
- my ($i) = @_;
-
- $display_form = ($form->{display_form}) ? $form->{display_form} : "display_form";
-
- if ($form->{"paid_$i"}) {
- @a = ();
-
- if (exists $form->{longformat}) {
- $form->{"datepaid_$i"} = $locale->date(\%myconfig, $form->{"datepaid_$i"}, $form->{longformat});
- }
-
- push @a, "source_$i", "memo_$i";
- $form->format_string(@a);
- }
-
- $form->{amount} = $form->{"paid_$i"};
- map { $form->{$_} = $form->{"${_}_$i"} } qw(datepaid source memo);
-
-
- &{ "$form->{vc}_details" };
- @a = qw(name address1 address2 city state zipcode country);
-
- foreach $item (qw(invnumber ordnumber)) {
- $temp{$item} = $form->{$item};
- delete $form->{$item};
- push(@{ $form->{$item} }, $temp{$item});
- }
- push(@{ $form->{invdate} }, $form->{transdate});
- push(@{ $form->{due} }, $form->format_amount(\%myconfig, $form->{oldinvtotal}, 2));
- push(@{ $form->{paid} }, $form->{"paid_$i"});
-
- use SL::CP;
- if ($form->{language_code}) {
- $c = new CP $form->{language_code};
- } else {
- $c = new CP $myconfig->{countrycode};
- }
- $c->init;
- ($whole, $form->{decimal}) = split /\./, $form->{amount};
- $form->{decimal} .= "00";
- $form->{decimal} = substr($form->{decimal}, 0, 2);
- $form->{text_amount} = $c->num2text($whole);
-
- ($form->{employee}) = split /--/, $form->{employee};
-
- $form->{notes} =~ s/^\s+//g;
- push @a, "notes";
-
- map { $form->{$_} = $myconfig{$_} } (qw(company address tel fax businessnumber));
- push @a, qw(company address tel fax businessnumber);
-
- $form->format_string(@a);
-
- $form->{templates} = "$myconfig{templates}";
- $form->{IN} = ($form->{formname} eq 'transaction') ? lc $form->{ARAP} . "_$form->{formname}.html" : "$form->{formname}.html";
-
- if ($form->{format} =~ /(postscript|pdf)/) {
- $form->{IN} =~ s/html$/tex/;
- }
-
- if ($form->{media} !~ /(screen|queue)/) {
- $form->{OUT} = "| $printer{$form->{media}}";
-
- $reference = $form->{invnumber};
-
- if ($form->{formname} =~ /(check|receipt)/) {
- $form->{rowcount} = 1;
- $form->{"id_1"} = $form->{id};
- $form->{"checked_1"} = 1;
- $form->{account} = $form->{"$form->{ARAP}_paid_$i"};
- $reference = $form->{"source_$i"};
- }
-
- if ($form->{printed} !~ /$form->{formname}/) {
-
- $form->{printed} .= " $form->{formname}";
- $form->{printed} =~ s/^ //;
-
- $form->update_status(\%myconfig);
- }
-
- %audittrail = ( tablename => lc $form->{ARAP},
- reference => $reference,
- formname => $form->{formname},
- action => 'printed',
- id => $form->{id} );
-
- %status = ();
- map { $status{$_} = $form->{$_} } qw(printed queued audittrail);
-
- $status{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
- if ($form->{media} eq 'queue') {
- %queued = split / /, $form->{queued};
-
- $reference = $form->{invnumber};
-
- if ($form->{formname} =~ /(check|receipt)/) {
- $form->{rowcount} = 1;
- $form->{"id_1"} = $form->{id};
- $form->{"checked_1"} = 1;
- $form->{account} = $form->{"$form->{ARAP}_paid_$i"};
- $reference = $form->{"source_$i"};
- }
-
- if ($filename = $queued{$form->{formname}}) {
- $form->{queued} =~ s/$form->{formname} $filename//;
- unlink "$spool/$filename";
- $filename =~ s/\..*$//g;
- } else {
- $filename = time;
- $filename .= $$;
- }
-
- $filename .= ($form->{format} eq 'postscript') ? '.ps' : '.pdf';
- $form->{OUT} = ">$spool/$filename";
-
- $form->{queued} .= " $form->{formname} $filename";
- $form->{queued} =~ s/^ //;
-
- # save status
- $form->update_status(\%myconfig);
-
- %audittrail = ( tablename => lc $form->{ARAP},
- reference => $reference,
- formname => $form->{formname},
- action => 'queued',
- id => $form->{id} );
-
- %status = ();
- map { $status{$_} = $form->{$_} } qw(printed queued audittrail);
-
- $status{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
- $form->{fileid} = $invnumber;
- $form->{fileid} =~ s/(\s|\W)+//g;
-
- $form->parse_template(\%myconfig, $userspath);
-
- if ($form->{previousform}) {
-
- $previousform = $form->unescape($form->{previousform});
-
- map { delete $form->{$_} } keys %$form;
-
- foreach $item (split /&/, $previousform) {
- ($key, $value) = split /=/, $item, 2;
- $value =~ s/%26/&/g;
- $form->{$key} = $value;
- }
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate creditlimit creditremaining);
-
- map { $form->{"amount_$_"} = $form->parse_amount(\%myconfig, $form->{"amount_$_"}) } (1 .. $form->{rowcount});
- map { $form->{"tax_$_"} = $form->parse_amount(\%myconfig, $form->{"tax_$_"}) } split / /, $form->{taxaccounts};
-
- for $i (1 .. $form->{paidaccounts}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
- }
-
- map { $form->{$_} = $status{$_} } qw(printed queued audittrail);
-
- &{ "$display_form" };
-
- }
-
-}
-
-
-sub print_receipt { &print_check; }
-
-
-sub print_transaction {
-
- $display_form = ($form->{display_form}) ? $form->{display_form} : "display_form";
-
- if ($form->{media} !~ /screen/) {
- $old_form = new Form;
- map { $old_form->{$_} = $form->{$_} } keys %$form;
- }
-
- &{ "$form->{vc}_details" };
- @a = qw(name address1 address2 city state zipcode country);
-
-
- $form->{invtotal} = 0;
- foreach $i (1 .. $form->{rowcount} - 1) {
- ($form->{tempaccno}, $form->{tempaccount}) = split /--/, $form->{"$form->{ARAP}_amount_$i"};
- ($form->{tempprojectnumber}) = split /--/, $form->{"projectnumber_$i"};
-
- $form->format_string(qw(tempaccno tempaccount tempprojectnumber));
-
- push(@{ $form->{accno} }, $form->{tempaccno});
- push(@{ $form->{account} }, $form->{tempaccount});
- push(@{ $form->{projectnumber} }, $form->{tempprojectnumber});
-
- push(@{ $form->{amount} }, $form->{"amount_$i"});
-
- $form->{subtotal} += $form->parse_amount(\%myconfig, $form->{"amount_$i"});
-
- }
-
- foreach $accno (split / /, $form->{taxaccounts}) {
- if ($form->{"tax_$accno"}) {
- $tax += $form->parse_amount(\%myconfig, $form->{"tax_$accno"});
- push(@{ $form->{tax} }, $form->{"tax_$accno"});
- push(@{ $form->{taxdescription} }, $form->{"${accno}_description"});
- push(@{ $form->{taxrate} }, $form->{"${accno}_rate"} * 100);
- push(@{ $form->{taxnumber} }, $form->{"${accno}_taxnumber"});
- }
- }
-
-
- push @a, $form->{ARAP};
- $form->format_string(@a);
-
- $form->{paid} = 0;
- for $i (1 .. $form->{paidaccounts} - 1) {
-
- if ($form->{"paid_$i"}) {
- @a = ();
- $form->{paid} += $form->parse_amount(\%myconfig, $form->{"paid_$i"});
-
- if (exists $form->{longformat}) {
- $form->{"datepaid_$i"} = $locale->date(\%myconfig, $form->{"datepaid_$i"}, $form->{longformat});
- }
-
- push @a, "$form->{ARAP}_paid_$i", "source_$i", "memo_$i";
- $form->format_string(@a);
-
- ($accno, $account) = split /--/, $form->{"$form->{ARAP}_paid_$i"};
-
- push(@{ $form->{payment} }, $form->{"paid_$i"});
- push(@{ $form->{paymentdate} }, $form->{"datepaid_$i"});
- push(@{ $form->{paymentaccount} }, $account);
- push(@{ $form->{paymentsource} }, $form->{"source_$i"});
- push(@{ $form->{paymentmemo} }, $form->{"memo_$i"});
- }
-
- }
-
-
- $form->{invtotal} = $form->{subtotal} + $tax;
- $form->{total} = $form->{invtotal} - $form->{paid};
-
- use SL::CP;
- if ($form->{language_code}) {
- $c = new CP $form->{language_code};
- } else {
- $c = new CP $myconfig->{countrycode};
- }
- $c->init;
- ($whole, $form->{decimal}) = split /\./, $form->{invtotal};
- $form->{decimal} .= "00";
- $form->{decimal} = substr($form->{decimal}, 0, 2);
- $form->{text_amount} = $c->num2text($whole);
-
- map { $form->{$_} = $form->format_amount(\%myconfig, $form->{$_}, 2) } qw(invtotal subtotal paid total);
-
- ($form->{employee}) = split /--/, $form->{employee};
-
- if (exists $form->{longformat}) {
- map { $form->{$_} = $locale->date(\%myconfig, $form->{$_}, $form->{longformat}) } ("duedate", "transdate");
- }
-
- $form->{notes} =~ s/^\s+//g;
-
- push @a, ("invnumber", "transdate", "duedate", "notes");
-
- map { $form->{$_} = $myconfig{$_} } (qw(company address tel fax businessnumber));
- push @a, qw(company address tel fax businessnumber);
-
- $form->format_string(@a);
-
- $form->{invdate} = $form->{transdate};
-
- $form->{templates} = "$myconfig{templates}";
- $form->{IN} = ($form->{formname} eq 'transaction') ? lc $form->{ARAP} . "_$form->{formname}.html" : "$form->{formname}.html";
-
- if ($form->{format} =~ /(postscript|pdf)/) {
- $form->{IN} =~ s/html$/tex/;
- }
-
- if ($form->{media} !~ /(screen|queue)/) {
- $form->{OUT} = "| $printer{$form->{media}}";
-
- if ($form->{printed} !~ /$form->{formname}/) {
-
- $form->{printed} .= " $form->{formname}";
- $form->{printed} =~ s/^ //;
-
- $form->update_status(\%myconfig);
- }
-
- $old_form->{printed} = $form->{printed};
-
- %audittrail = ( tablename => lc $form->{ARAP},
- reference => $form->{"invnumber"},
- formname => $form->{formname},
- action => 'printed',
- id => $form->{id} );
-
- $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
- if ($form->{media} eq 'queue') {
- %queued = split / /, $form->{queued};
-
- if ($filename = $queued{$form->{formname}}) {
- $form->{queued} =~ s/$form->{formname} $filename//;
- unlink "$spool/$filename";
- $filename =~ s/\..*$//g;
- } else {
- $filename = time;
- $filename .= $$;
- }
-
- $filename .= ($form->{format} eq 'postscript') ? '.ps' : '.pdf';
- $form->{OUT} = ">$spool/$filename";
-
- $form->{queued} .= " $form->{formname} $filename";
- $form->{queued} =~ s/^ //;
-
- # save status
- $form->update_status(\%myconfig);
-
- $old_form->{queued} = $form->{queued};
-
- %audittrail = ( tablename => lc $form->{ARAP},
- reference => $form->{invnumber},
- formname => $form->{formname},
- action => 'queued',
- id => $form->{id} );
- $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
- $form->{fileid} = $form->{invnumber};
- $form->{fileid} =~ s/(\s|\W)+//g;
-
- $form->parse_template(\%myconfig, $userspath);
-
- if ($old_form) {
- $old_form->{invnumber} = $form->{invnumber};
- $old_form->{invtotal} = $form->{invtotal};
-
- map { delete $form->{$_} } keys %$form;
- map { $form->{$_} = $old_form->{$_} } keys %$old_form;
-
- if (! $form->{printandpost}) {
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate creditlimit creditremaining);
-
- map { $form->{"amount_$_"} = $form->parse_amount(\%myconfig, $form->{"amount_$_"}) } (1 .. $form->{rowcount});
- map { $form->{"tax_$_"} = $form->parse_amount(\%myconfig, $form->{"tax_$_"}) } split / /, $form->{taxaccounts};
-
- for $i (1 .. $form->{paidaccounts}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
- }
- }
-
- &{ "$display_form" };
-
- }
-}
-
-
-sub vendor_details { IR->vendor_details(\%myconfig, \%$form) };
-sub customer_details { IS->customer_details(\%myconfig, \%$form) };
-
-
-sub select_payment {
-
- @column_index = ("ndx", "datepaid", "source", "memo", "paid", "$form->{ARAP}_paid");
-
- # list payments with radio button on a form
- $form->header;
-
- $title = $locale->text('Select payment');
-
- $column_data{ndx} = qq|<th width=1%>&nbsp;</th>|;
- $column_data{datepaid} = qq|<th>|.$locale->text('Date').qq|</th>|;
- $column_data{source} = qq|<th>|.$locale->text('Source').qq|</th>|;
- $column_data{memo} = qq|<th>|.$locale->text('Memo').qq|</th>|;
- $column_data{paid} = qq|<th>|.$locale->text('Amount').qq|</th>|;
- $column_data{"$form->{ARAP}_paid"} = qq|<th>|.$locale->text('Account').qq|</th>|;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr space=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $i (1 .. $form->{paidaccounts} - 1) {
- $checked = ($i == 1) ? "checked" : "";
-
- map { $column_data{$_} = qq|<td>$form->{"${_}_$i"}</td>| } @column_index;
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
- $column_data{paid} = qq|<td align=right>$form->{"paid_$i"}</td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
- $form->{nextsub} = "payment_selected";
-
- $form->hide_form();
-
- print qq|
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-sub payment_selected {
-
- &{ "print_$form->{formname}" }($form->{ndx});
-
-}
-
-
-sub print_options {
-
- $form->{PD}{$form->{formname}} = "selected";
- $form->{DF}{$form->{format}} = "selected";
-
- if ($form->{selectlanguage}) {
- $form->{"selectlanguage"} = $form->unescape($form->{"selectlanguage"});
- $form->{"selectlanguage"} =~ s/ selected//;
- $form->{"selectlanguage"} =~ s/(<option value="\Q$form->{language_code}\E")/$1 selected/;
- $lang = qq|<select name=language_code>$form->{selectlanguage}</select>
- <input type=hidden name=selectlanguage value="|.
- $form->escape($form->{selectlanguage},1).qq|">|;
- }
-
- $type = qq|<select name=formname>
- <option value=transaction $form->{PD}{transaction}>|.$locale->text('Transaction');
-
- if ($form->{AR}) {
- $type .= qq|
- <option value=receipt $form->{PD}{receipt}>|.$locale->text('Receipt').qq|</select>|;
- }
-
- if ($form->{AP}) {
- $type .= qq|
- <option value=check $form->{PD}{check}>|.$locale->text('Check').qq|</select>|;
- }
-
- $media = qq|<select name=media>
- <option value=screen>|.$locale->text('Screen');
-
- if (%printer && $latex) {
- map { $media .= qq|
- <option value="$_">$_| } sort keys %printer;
- }
-
- $format = qq|<select name=format>
- <option value=html $form->{DF}{html}>html|;
-
- if ($latex) {
-# disable for now
-# $media .= qq|
-# <option value="queue">|.$locale->text('Queue');
- $format .= qq|
- <option value=postscript $form->{DF}{postscript}>|.$locale->text('Postscript').qq|
- <option value=pdf $form->{DF}{pdf}>|.$locale->text('PDF');
- }
-
- $format .= qq|</select>|;
- $media .= qq|</select>|;
- $media =~ s/(<option value="\Q$form->{media}\E")/$1 selected/;
-
- print qq|
- <table width=100%>
- <tr>
- <td>
- $type
- $lang
- $format
- $media
- </td>
- <td align=right>
- |;
-
- if ($form->{printed} =~ /$form->{formname}/) {
- print $locale->text('Printed').qq|<br>|;
- }
-
- if ($form->{queued} =~ /$form->{formname}/) {
- print $locale->text('Queued');
- }
-
- print qq|
- </td>
- </tr>
- </table>
-|;
-
-}
-
-
-sub print_and_post {
-
- $form->error($locale->text('Select postscript or PDF!')) if $form->{format} !~ /(postscript|pdf)/;
- $form->error($locale->text('Select Printer or Queue!')) if $form->{media} eq 'screen';
-
- $form->{printandpost} = 1;
- $form->{display_form} = "post";
- &print;
-
-}
-
diff --git a/sql-ledger/bin/mozilla/bp.pl b/sql-ledger/bin/mozilla/bp.pl
deleted file mode 100644
index 9d0cea4..0000000
--- a/sql-ledger/bin/mozilla/bp.pl
+++ /dev/null
@@ -1,567 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Batch printing
-#
-#======================================================================
-
-
-use SL::BP;
-
-1;
-# end of main
-
-
-sub search {
-
-# $locale->text('Sales Invoices')
-# $locale->text('Packing Lists')
-# $locale->text('Pick Lists')
-# $locale->text('Sales Orders')
-# $locale->text('Work Orders')
-# $locale->text('Purchase Orders')
-# $locale->text('Bin Lists')
-# $locale->text('Quotations')
-# $locale->text('RFQs')
-# $locale->text('Checks')
-# $locale->text('Receipts')
-
- # setup customer/vendor selection
- BP->get_vc(\%myconfig, \%$form);
-
- if (@{ $form->{"all_$form->{vc}"} }) {
- map { $name .= "<option>$_->{name}--$_->{id}\n" } @{ $form->{"all_$form->{vc}"} };
- $name = qq|<select name=$form->{vc}><option>\n$name</select>|;
- } else {
- $name = qq|<input name=$form->{vc} size=35>|;
- }
-
-# $locale->text('Customer')
-# $locale->text('Vendor')
-
- %label = ( invoice => { title => 'Sales Invoices', name => 'Customer' },
- packing_list => { title => 'Packing Lists', name => 'Customer' },
- pick_list => { title => 'Pick Lists', name => 'Customer' },
- sales_order => { title => 'Sales Orders', name => 'Customer' },
- work_order => { title => 'Work Orders', name => 'Customer' },
- purchase_order => { title => 'Purchase Orders', name => 'Vendor' },
- bin_list => { title => 'Bin Lists', name => 'Vendor' },
- sales_quotation => { title => 'Quotations', name => 'Customer' },
- request_quotation => { title => 'RFQs', name => 'Vendor' },
- check => { title => 'Checks', name => 'Vendor' },
- receipt => { title => 'Receipts', name => 'Customer' }
- );
-
- $label{invoice}{invnumber} = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td colspan=3><input name=invnumber size=20></td>
- </tr>
-|;
- $label{invoice}{ordnumber} = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td colspan=3><input name=ordnumber size=20></td>
- </tr>
-|;
- $label{sales_quotation}{quonumber} = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Quotation Number').qq|</th>
- <td colspan=3><input name=quonumber size=20></td>
- </tr>
-|;
-
- $label{check}{chknumber} = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Reference').qq|</th>
- <td colspan=3><input name=chknumber size=20></td>
- </tr>
-|;
-
- $label{packing_list}{invnumber} = $label{invoice}{invnumber};
- $label{packing_list}{ordnumber} = $label{invoice}{ordnumber};
- $label{pick_list}{invnumber} = $label{invoice}{invnumber};
- $label{pick_list}{ordnumber} = $label{invoice}{ordnumber};
- $label{sales_order}{ordnumber} = $label{invoice}{ordnumber};
- $label{work_order}{ordnumber} = $label{invoice}{ordnumber};
- $label{purchase_order}{ordnumber} = $label{invoice}{ordnumber};
- $label{bin_list}{ordnumber} = $label{invoice}{ordnumber};
- $label{request_quotation}{quonumber} = $label{sales_quotation}{quonumber};
- $label{receipt}{rctnumber} = $label{check}{chknumber};
-
- # do one call to text
- $form->{title} = $locale->text('Print')." ".$locale->text($label{$form->{type}}{title});
-
- if ($form->{type} =~ /(check|receipt)/) {
- if (BP->payment_accounts(\%myconfig, \%$form)) {
- $account = qq|
- <tr>
- <th align=right>|.$locale->text('Account').qq|</th>
-|;
-
- if ($form->{accounts}) {
- $account .= qq|
- <td colspan=3><select name=account>
-|;
- foreach $ref (@{ $form->{accounts} }) {
- $account .= qq|
- <option>$ref->{accno}--$ref->{description}
-|;
- }
-
- $account .= qq|
- </select>
-|;
- } else {
- $account .= qq|
- <td colspan=3><input name=account></td>
-|;
-
- }
-
- $account .= qq|
- </tr>
-|;
-
- }
- }
-
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=vc value=$form->{vc}>
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=title value="$form->{title}">
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text($label{$form->{type}}{name}).qq|</th>
- <td colspan=3>$name</td>
- </tr>
- $account
- $label{$form->{type}}{invnumber}
- $label{$form->{type}}{ordnumber}
- $label{$form->{type}}{quonumber}
- $label{$form->{type}}{chknumber}
- $label{$form->{type}}{rctnumber}
- <tr>
- <th align=right nowrap>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <input type=hidden name=sort value=transdate>
- $selectfrom
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=list_spool>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub remove {
-
- $selected = 0;
-
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"checked_$i"}) {
- $selected = 1;
- last;
- }
- }
-
- $form->error('Nothing selected!') unless $selected;
-
- $form->{title} = $locale->text('Confirm!');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- map { delete $form->{$_} } qw(action header);
-
- foreach $key (keys %$form) {
- print qq|<input type=hidden name=$key value="$form->{$key}">\n|;
- }
-
- print qq|
-<h2 class=confirm>$form->{title}</h2>
-
-<h4>|.$locale->text('Are you sure you want to remove the marked entries from the queue?').qq|</h4>
-
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub yes {
-
- $form->info($locale->text('Removing marked entries from queue ...'));
- $form->{callback} .= "&header=1" if $form->{callback};
-
- $form->redirect($locale->text('Removed spoolfiles!')) if (BP->delete_spool(\%myconfig, \%$form, $spool));
- $form->error($locale->text('Cannot remove files!'));
-
-}
-
-
-sub print {
-
- if ($form->{callback}) {
- map { $form->{callback} .= "&checked_$_=1" if $form->{"checked_$_"} } (1 .. $form->{rowcount});
- $form->{callback} .= "&header=1";
- }
-
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"checked_$i"}) {
- $form->{OUT} = "| $printer{$form->{media}}";
- $form->info($locale->text('Printing ... '));
-
- if (BP->print_spool(\%myconfig, \%$form, $spool)) {
- print $locale->text('done');
- $form->redirect($locale->text('Marked entries printed!'));
- }
- exit;
- }
- }
-
- $form->error('Nothing selected!');
-
-}
-
-
-sub list_spool {
-
- $form->{$form->{vc}} = $form->unescape($form->{$form->{vc}});
- ($form->{$form->{vc}}, $form->{"$form->{vc}_id"}) = split(/--/, $form->{$form->{vc}});
-
- BP->get_spoolfiles(\%myconfig, \%$form);
-
- $title = $form->escape($form->{title});
- $href = "$form->{script}?action=list_spool&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&vc=$form->{vc}&type=$form->{type}&title=$title";
-
- $form->sort_order();
-
- $title = $form->escape($form->{title},1);
- $callback = "$form->{script}?action=list_spool&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&vc=$form->{vc}&type=$form->{type}&title=$title";
-
- if ($form->{$form->{vc}}) {
- $callback .= "&$form->{vc}=".$form->escape($form->{$form->{vc}},1);
- $href .= "&$form->{vc}=".$form->escape($form->{$form->{vc}});
- $option = ($form->{vc} eq 'customer') ? $locale->text('Customer') : $locale->text('Vendor');
- $option .= " : $form->{$form->{vc}}";
- }
- if ($form->{account}) {
- $callback .= "&account=".$form->escape($form->{account},1);
- $href .= "&account=".$form->escape($form->{account});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Account')." : $form->{account}";
- }
- if ($form->{invnumber}) {
- $callback .= "&invnumber=".$form->escape($form->{invnumber},1);
- $href .= "&invnumber=".$form->escape($form->{invnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Invoice Number')." : $form->{invnumber}";
- }
- if ($form->{ordnumber}) {
- $callback .= "&ordnumber=".$form->escape($form->{ordnumber},1);
- $href .= "&ordnumber=".$form->escape($form->{ordnumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Order Number')." : $form->{ordnumber}";
- }
- if ($form->{quonumber}) {
- $callback .= "&quonumber=".$form->escape($form->{quonumber},1);
- $href .= "&quonumber=".$form->escape($form->{quonumber});
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Quotation Number')." : $form->{quonumber}";
- }
-
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $href .= "&transdateto=$form->{transdateto}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
-
- $name = ucfirst $form->{vc};
-
- @columns = qw(transdate);
- if ($form->{type} =~ /(invoice|check|receipt)/) {
- push @columns, "invnumber";
- }
- if ($form->{type} =~ /(packing|pick)_list/) {
- push @columns, "invnumber";
- }
- if ($form->{type} =~ /_(order|list)$/) {
- push @columns, "ordnumber";
- }
- if ($form->{type} =~ /_quotation$/) {
- push @columns, "quonumber";
- }
-
- push @columns, (name, spoolfile);
- @column_index = $form->sort_columns(@columns);
- unshift @column_index, "checked";
-
- $column_header{checked} = "<th class=listheading>&nbsp;</th>";
- $column_header{transdate} = "<th><a class=listheading href=$href&sort=transdate>".$locale->text('Date')."</a></th>";
- $column_header{invnumber} = "<th><a class=listheading href=$href&sort=invnumber>".$locale->text('Invoice')."</a></th>";
- $column_header{ordnumber} = "<th><a class=listheading href=$href&sort=ordnumber>".$locale->text('Order')."</a></th>";
- $column_header{quonumber} = "<th><a class=listheading href=$href&sort=quonumber>".$locale->text('Quotation')."</a></th>";
- $column_header{name} = "<th><a class=listheading href=$href&sort=name>".$locale->text($name)."</a></th>";
- $column_header{spoolfile} = "<th class=listheading>".$locale->text('Spoolfile')."</th>";
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- # add sort and escape callback, this one we use for the add sub
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- $i = 0;
-
- foreach $ref (@{ $form->{SPOOL} }) {
-
- $i++;
-
- $form->{"checked_$i"} = "checked" if $form->{"checked_$i"};
-
- # this is for audittrail
- $form->{module} = $ref->{module};
-
- if ($ref->{invoice}) {
- $ref->{module} = ($ref->{module} eq 'ar') ? "is" : "ir";
- }
- $module = "$ref->{module}.pl";
-
- $column_data{transdate} = "<td>$ref->{transdate}&nbsp;</td>";
-
- if ($spoolfile eq $ref->{spoolfile}) {
- $column_data{checked} = qq|<td></td>|;
- } else {
- $column_data{checked} = qq|<td><input name=checked_$i type=checkbox style=checkbox $form->{"checked_$i"} $form->{"checked_$i"}></td>|;
- }
-
- if ($ref->{module} eq 'oe') {
- $column_data{invnumber} = qq|<td>&nbsp</td>|;
- $column_data{ordnumber} = qq|<td><a href=$module?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&callback=$callback>$ref->{ordnumber}</a></td>
- <input type=hidden name="reference_$i" value="$ref->{ordnumber}">|;
-
- $column_data{quonumber} = qq|<td><a href=$module?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&callback=$callback>$ref->{quonumber}</a></td>
- <input type=hidden name="reference_$i" value="$ref->{quonumber}">|;
-
- } else {
- $column_data{ordnumber} = qq|<td>$ref->{ordnumber}</td>|;
- $column_data{quonumber} = qq|<td>$ref->{quonumber}</td>|;
- $column_data{invnumber} = qq|<td><a href=$module?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&callback=$callback>$ref->{invnumber}</a></td>
- <input type=hidden name="reference_$i" value="$ref->{invnumber}">|;
- }
-
-
- $column_data{name} = "<td>$ref->{name}</td>";
- $column_data{spoolfile} = qq|<td><a href=$spool/$ref->{spoolfile}>$ref->{spoolfile}</a></td>
-
-|;
-
- $spoolfile = $ref->{spoolfile};
-
- $j++; $j %= 2;
- print "
- <tr class=listrow$j>
-";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
-<input type=hidden name="id_$i" value=$ref->{id}>
-<input type=hidden name="spoolfile_$i" value=$ref->{spoolfile}>
-
- </tr>
-|;
-
- }
-
- print qq|
-<input type=hidden name=rowcount value=$i>
-
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=vc value="$form->{vc}">
-<input type=hidden name=type value="$form->{type}">
-<input type=hidden name=sort value="$form->{sort}">
-<input type=hidden name=module value=$form->{module}>
-
-<input type=hidden name=account value="$form->{account}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- if (%printer && $latex) {
- foreach $key (sort keys %printer) {
- print qq|
-<input name=media type=radio class=radio value="$key" |;
- print qq|checked| if $key eq $myconfig{printer};
- print qq|>$key|;
- }
-
- print qq|
-<p>
-<input class=submit type=submit name=action value="|.$locale->text('Select all').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Remove').qq|">
-|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub select_all {
-
- map { $form->{"checked_$_"} = 1 } (1 .. $form->{rowcount});
- &list_spool;
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
diff --git a/sql-ledger/bin/mozilla/ca.pl b/sql-ledger/bin/mozilla/ca.pl
deleted file mode 100644
index 9ee602e..0000000
--- a/sql-ledger/bin/mozilla/ca.pl
+++ /dev/null
@@ -1,478 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# module for Chart of Accounts, Income Statement and Balance Sheet
-# search and edit transactions posted by the GL, AR and AP
-#
-#======================================================================
-
-use SL::CA;
-
-1;
-# end of main
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub chart_of_accounts {
-
- CA->all_accounts(\%myconfig, \%$form);
-
- @column_index = qw(accno gifi_accno description debit credit);
-
- $column_header{accno} = qq|<th class=listtop>|.$locale->text('Account').qq|</th>\n|;
- $column_header{gifi_accno} = qq|<th class=listtop>|.$locale->text('GIFI').qq|</th>\n|;
- $column_header{description} = qq|<th class=listtop>|.$locale->text('Description').qq|</th>\n|;
- $column_header{debit} = qq|<th class=listtop>|.$locale->text('Debit').qq|</th>\n|;
- $column_header{credit} = qq|<th class=listtop>|.$locale->text('Credit').qq|</th>\n|;
-
-
- $form->{title} = $locale->text('Chart of Accounts');
-
- $colspan = $#column_index + 1;
-
- $form->header;
-
- print qq|
-<body>
-
-<table border=0 width=100%>
- <tr><th class=listtop colspan=$colspan>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr class=listheading>|;
-
- map { print $column_header{$_} } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- foreach $ca (@{ $form->{CA} }) {
-
- $description = $form->escape($ca->{description});
- $gifi_description = $form->escape($ca->{gifi_description});
-
- $href = qq|$form->{script}?path=$form->{path}&action=list&accno=$ca->{accno}&login=$form->{login}&sessionid=$form->{sessionid}&description=$description&gifi_accno=$ca->{gifi_accno}&gifi_description=$gifi_description|;
-
- if ($ca->{charttype} eq "H") {
- print qq|<tr class=listheading>|;
- map { $column_data{$_} = "<th class=listheading>$ca->{$_}</th>"; } qw(accno description);
- $column_data{gifi_accno} = "<th class=listheading>$ca->{gifi_accno}&nbsp;</th>";
- } else {
- $i++; $i %= 2;
- print qq|<tr class=listrow$i>|;
- $column_data{accno} = "<td><a href=$href>$ca->{accno}</a></td>";
- $column_data{gifi_accno} = "<td><a href=$href&accounttype=gifi>$ca->{gifi_accno}</a>&nbsp;</td>";
- $column_data{description} = "<td>$ca->{description}</td>";
- }
-
- $column_data{debit} = "<td align=right>".$form->format_amount(\%myconfig, $ca->{debit}, 2, "&nbsp;")."</td>\n";
- $column_data{credit} = "<td align=right>".$form->format_amount(\%myconfig, $ca->{credit}, 2, "&nbsp;")."</td>\n";
-
- $totaldebit += $ca->{debit};
- $totalcredit += $ca->{credit};
-
- map { print $column_data{$_} } @column_index;
-
- print qq|
-</tr>
-|;
- }
-
- map { $column_data{$_} = "<td>&nbsp;</td>"; } qw(accno gifi_accno description);
-
- $column_data{debit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totaldebit, 2, 0)."</th>";
- $column_data{credit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totalcredit, 2, 0)."</th>";
-
- print "<tr class=listtotal>";
-
- map { print $column_data{$_} } @column_index;
-
- print qq|
-</tr>
-<tr>
- <td colspan=$colspan><hr size=3 noshade></td>
-</tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list {
-
- $form->{title} = $locale->text('List Transactions');
- if ($form->{accounttype} eq 'gifi') {
- $form->{title} .= " - ".$locale->text('GIFI')." $form->{gifi_accno}";
- } else {
- $form->{title} .= " - ".$locale->text('Account')." $form->{accno}";
- }
-
- # get departments
- $form->all_departments(\%myconfig);
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-| if $form->{selectdepartment};
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(description gifi_description);
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=accno value=$form->{accno}>
-<input type=hidden name=description value="$form->{description}">
-<input type=hidden name=sort value=transdate>
-
-<input type=hidden name=accounttype value=$form->{accounttype}>
-<input type=hidden name=gifi_accno value=$form->{gifi_accno}>
-<input type=hidden name=gifi_description value="$form->{gifi_description}">
-
-<table border=0 width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr
- <tr valign=top>
- <td>
- <table>
- $department
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- <tr>
- <th align=right>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td><hr size=3 noshade></td></tr>
-</table>
-
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br><input class=submit type=submit name=action value="|.$locale->text('List Transactions').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list_transactions {
-
- CA->all_transactions(\%myconfig, \%$form);
-
- $description = $form->escape($form->{description});
- $gifi_description = $form->escape($form->{gifi_description});
- $department = $form->escape($form->{department});
- $projectnumber = $form->escape($form->{projectnumber});
- $title = $form->escape($form->{title});
-
- # construct href
- $href = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=list_transactions&accno=$form->{accno}&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&description=$description&accounttype=$form->{accounttype}&gifi_accno=$form->{gifi_accno}&gifi_description=$gifi_description&l_heading=$form->{l_heading}&l_subtotal=$form->{l_subtotal}&department=$department&projectnumber=$projectnumber&title=$title";
-
- $form->sort_order();
-
- $description = $form->escape($form->{description},1);
- $gifi_description = $form->escape($form->{gifi_description},1);
- $department = $form->escape($form->{department},1);
- $projectnumber = $form->escape($form->{projectnumber},1);
- $title = $form->escape($form->{title},1);
-
- # construct callback
- $callback = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=list_transactions&accno=$form->{accno}&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&description=$description&accounttype=$form->{accounttype}&gifi_accno=$form->{gifi_accno}&gifi_description=$gifi_description&l_heading=$form->{l_heading}&l_subtotal=$form->{l_subtotal}&department=$department&projectnumber=$projectnumber&title=$title";
-
- # figure out which column comes first
- $column_header{transdate} = qq|<th><a class=listheading href=$href&sort=transdate>|.$locale->text('Date').qq|</a></th>|;
- $column_header{reference} = qq|<th><a class=listheading href=$href&sort=reference>|.$locale->text('Reference').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
- $column_header{cleared} = qq|<th class=listheading>|.$locale->text('R').qq|</th>|;
- $column_header{debit} = qq|<th class=listheading>|.$locale->text('Debit').qq|</th>|;
- $column_header{credit} = qq|<th class=listheading>|.$locale->text('Credit').qq|</th>|;
- $column_header{balance} = qq|<th class=listheading>|.$locale->text('Balance').qq|</th>|;
-
- @column_index = $form->sort_columns(qw(transdate reference description debit credit));
-
- if ($form->{link} =~ /_paid/) {
- @column_index = $form->sort_columns(qw(transdate reference description cleared debit credit));
- }
-
- if ($form->{accounttype} eq 'gifi') {
- map { $form->{$_} = $form->{"gifi_$_"} } qw(accno description);
- }
- if ($form->{accno}) {
- push @column_index, "balance";
- }
-
- $form->{title} = ($form->{accounttype} eq 'gifi') ? $locale->text('GIFI') : $locale->text('Account');
-
- $form->{title} .= " $form->{accno} - $form->{description}";
-
- if ($form->{department}) {
- ($department) = split /--/, $form->{department};
- $options = $locale->text('Department')." : $department<br>";
- }
- if ($form->{projectnumber}) {
- ($projectnumber) = split /--/, $form->{projectnumber};
- $options .= $locale->text('Project Number')." : $projectnumber<br>";
- }
-
- if ($form->{fromdate} || $form->{todate}) {
- if ($form->{fromdate}) {
- $fromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
- }
- if ($form->{todate}) {
- $todate = $locale->date(\%myconfig, $form->{todate}, 1);
- }
-
- $form->{period} = "$fromdate - $todate";
- } else {
- $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig),1);
- }
-
- $options .= $form->{period};
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$options</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
-map { print "$column_header{$_}\n" } @column_index;
-
-print qq|
- </tr>
-|;
-
- # add sort to callback
- $callback = $form->escape($callback . "&sort=$form->{sort}");
-
- if (@{ $form->{CA} }) {
- $sameitem = $form->{CA}->[0]->{$form->{sort}};
- }
-
- $ml = ($form->{category} =~ /(A|E)/) ? -1 : 1;
- if ($form->{accno} && $form->{balance}) {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</td>";
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
- map { print $column_data{$_} } @column_index;
- print qq|
- </tr>
-|;
- }
-
- foreach $ca (@{ $form->{CA} }) {
-
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $ca->{$form->{sort}}) {
- &ca_subtotal;
- }
- }
-
- # construct link to source
- $href = "<a href=$ca->{module}.pl?path=$form->{path}&action=edit&id=$ca->{id}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ca->{reference}</a>";
-
-
- $column_data{debit} = "<td align=right>".$form->format_amount(\%myconfig, $ca->{debit}, 2, "&nbsp;")."</td>";
- $column_data{credit} = "<td align=right>".$form->format_amount(\%myconfig, $ca->{credit}, 2, "&nbsp;")."</td>";
-
- $form->{balance} += $ca->{amount};
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</td>";
-
- $subtotaldebit += $ca->{debit};
- $subtotalcredit += $ca->{credit};
-
- $totaldebit += $ca->{debit};
- $totalcredit += $ca->{credit};
-
- $column_data{transdate} = qq|<td>$ca->{transdate}</td>|;
- $column_data{reference} = qq|<td>$href</td>|;
- $column_data{description} = qq|<td>$ca->{description}&nbsp;</td>|;
-
- $column_data{cleared} = ($ca->{cleared}) ? qq|<td>*</td>| : qq|<td>&nbsp;</td>|;
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
-
- map { print $column_data{$_} } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
-
- if ($form->{l_subtotal} eq 'Y') {
- &ca_subtotal;
- }
-
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{debit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totaldebit, 2, "&nbsp;")."</th>";
- $column_data{credit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totalcredit, 2, "&nbsp;")."</th>";
- $column_data{balance} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</th>";
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print $column_data{$_} } @column_index;
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub ca_subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{debit} = "<th align=right class=listsubtotal>".$form->format_amount(\%myconfig, $subtotaldebit, 2, "&nbsp;") . "</th>";
- $column_data{credit} = "<th align=right class=listsubtotal>".$form->format_amount(\%myconfig, $subtotalcredit, 2, "&nbsp;") . "</th>";
-
- $subtotaldebit = 0;
- $subtotalcredit = 0;
-
- $sameitem = $ca->{$form->{sort}};
-
- print qq|
- <tr class=listsubtotal>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-}
-
diff --git a/sql-ledger/bin/mozilla/cp.pl b/sql-ledger/bin/mozilla/cp.pl
deleted file mode 100644
index 8aefa0c..0000000
--- a/sql-ledger/bin/mozilla/cp.pl
+++ /dev/null
@@ -1,724 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Payment module
-#
-#======================================================================
-
-
-use SL::CP;
-use SL::OP;
-use SL::IS;
-use SL::IR;
-
-require "$form->{path}/arap.pl";
-
-1;
-# end of main
-
-
-sub payment {
-
- $form->{callback} = "$form->{script}?action=payment&vc=$form->{vc}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&all_vc=$form->{all_vc}&type=$form->{type}";
-
- $form->{ARAP} = ($form->{type} eq 'receipt') ? "AR" : "AP";
- $form->{arap} = lc $form->{ARAP};
-
- # setup customer/vendor selection for open invoices
- if ($form->{all_vc}) {
- $form->all_vc(\%myconfig, $form->{vc}, $form->{ARAP});
- } else {
- CP->get_openvc(\%myconfig, \%$form);
- }
-
- $form->{"select$form->{vc}"} = "";
-
- if ($form->{"all_$form->{vc}"}) {
- $form->{"$form->{vc}_id"} = $form->{"all_$form->{vc}"}->[0]->{id};
- map { $form->{"select$form->{vc}"} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{"all_$form->{vc}"} };
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}" if $form->{department};
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- CP->paymentaccounts(\%myconfig, \%$form);
-
- $form->{selectaccount} = "";
- $form->{"select$form->{ARAP}"} = "";
-
- map { $form->{selectaccount} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{PR}{"$form->{ARAP}_paid"} };
- map { $form->{"select$form->{ARAP}"} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{PR}{$form->{ARAP}} };
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
-
- $form->{selectcurrency} = "";
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- $form->{oldcurrency} = $form->{currency};
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{forex} = $form->{exchangerate} = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{datepaid}, ($form->{vc} eq 'customer') ? "buy" : "sell");
- }
-
- $form->{media} = $myconfig{printer};
- $form->{format} = "pdf" unless $myconfig{printer};
-
- &form_header;
- &form_footer;
-
-}
-
-
-
-sub form_header {
-
- $vclabel = ucfirst $form->{vc};
- $vclabel = $locale->text($vclabel);
-
- if ($form->{type} eq 'receipt') {
- $form->{title} = $locale->text('Receipt');
- }
- if ($form->{type} eq 'check') {
- $form->{title} = $locale->text('Payment');
- }
-
-
-# $locale->text('Customer')
-# $locale->text('Vendor')
-
- if ($form->{$form->{vc}} eq "") {
- map { $form->{$_} = "" } qw(address1 address2 city zipcode state country);
- }
-
- $exchangerate = "";
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
- if ($form->{forex}) {
- $exchangerate = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Exchange Rate').qq|</th>
- <td colspan=3><input type=hidden name=exchangerate size=10 value=$form->{exchangerate}>$form->{exchangerate}</td>
- </tr>
-|;
- } else {
- $exchangerate = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Exchange Rate').qq|</th>
- <td colspan=3><input name=exchangerate size=10 value=$form->{exchangerate}></td>
- </tr>
-|;
- }
- }
-
- foreach $item ($form->{vc}, department) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- foreach $item (account, currency, $form->{ARAP}) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- $vc = ($form->{"select$form->{vc}"}) ? qq|<select name=$form->{vc}>$form->{"select$form->{vc}"}\n</select>| : qq|<input name=$form->{vc} size=35 value="$form->{$form->{vc}}">|;
-
- if ($form->{all_vc}) {
- $allvc = "checked";
- $form->{openinvoices} = "";
- } else {
- $allvc = "";
- $form->{openinvoices} = 1;
- }
-
-# $locale->text('AR')
-# $locale->text('AP')
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.$form->escape($form->{selectdepartment},1).qq|">
- <input type=hidden name=olddepartment value="$form->{department}">
-
- </td>
- </tr>
-| if $form->{selectdepartment};
-
- $form->header;
-
- $arap = lc $form->{ARAP};
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<!-- <input type=hidden name=id value=1> -->
-
-<input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=vc value=$form->{vc}>
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=formname value=$form->{type}>
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=arap value=$arap>
-<input type=hidden name=ARAP value=$form->{ARAP}>
-<input type=hidden name=openinvoices value=$form->{openinvoices}>
-<input type=hidden name=title value="$form->{title}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <td align=right>
- <input name=all_vc type=checkbox style=checkbox value=Y $allvc>
- <input type=hidden name="oldall_vc" value="$form->{all_vc}"></td>
- <th align=left>|.$locale->text('All').qq|</th>
- </tr>
- <tr>
- <th align=right>$vclabel</th>
- <td>$vc</td>
- <input type=hidden name="select$form->{vc}" value="|.$form->escape($form->{"select$form->{vc}"},1).qq|">
- <input type=hidden name="$form->{vc}_id" value=$form->{"$form->{vc}_id"}>
- <input type=hidden name="old$form->{vc}" value="$form->{"old$form->{vc}"}">
- </tr>
- <tr valign=top>
- <th align=right nowrap>|.$locale->text('Address').qq|</th>
- <td colspan=2>
- <table>
- <tr>
- <td>$form->{address1}</td>
- </tr>
- <tr>
- <td>$form->{address2}</td>
- </tr>
- <td>$form->{city}</td>
- </tr>
- </tr>
- <td>$form->{state}</td>
- </tr>
- </tr>
- <td>$form->{zipcode}</td>
- </tr>
- <tr>
- <td>$form->{country}</td>
- </tr>
- </table>
- </td>
- <input type=hidden name=address1 value="$form->{address1}">
- <input type=hidden name=address2 value="$form->{address2}">
- <input type=hidden name=city value="$form->{city}">
- <input type=hidden name=state value="$form->{state}">
- <input type=hidden name=zipcode value="$form->{zipcode}">
- <input type=hidden name=country value="$form->{country}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Memo').qq|</th>
- <td colspan=2><input name="memo" size=30 value="$form->{memo}"></td>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- $department
- <tr>
- <th align=right nowrap>|.$locale->text($form->{ARAP}).qq|</th>
- <td colspan=3><select name=$form->{ARAP}>$form->{"select$form->{ARAP}"}</select>
- </td>
- <input type=hidden name="select$form->{ARAP}" value="$form->{"select$form->{ARAP}"}">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Account').qq|</th>
- <td colspan=3><select name=account>$form->{selectaccount}</select>
- <input type=hidden name=selectaccount value="$form->{selectaccount}">
- </td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Date').qq|</th>
- <td><input name=datepaid value="$form->{datepaid}" title="$myconfig{dateformat}" size=11></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=oldcurrency value=$form->{oldcurrency}>
- </tr>
- $exchangerate
- <tr>
- <th align=right nowrap>|.$locale->text('Source').qq|</th>
- <td colspan=3><input name=source value="$form->{source}" size=10></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Amount').qq|</th>
- <td colspan=3><input name=amount size=10 value=|.$form->format_amount(\%myconfig, $form->{amount}, 2).qq|></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub list_invoices {
-
- @column_index = qw(invnumber transdate amount due checked paid);
-
- $colspan = $#column_index + 1;
-
- $invoice = $locale->text('Invoices');
-
- print qq|
- <input type=hidden name=column_index value="id @column_index">
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th class=listheading colspan=$colspan>$invoice</th>
- </tr>
-|;
-
- $column_data{invnumber} = qq|<th nowrap>|.$locale->text('Invoice')."</th>";
- $column_data{transdate} = qq|<th nowrap>|.$locale->text('Date')."</th>";
- $column_data{amount} = qq|<th nowrap>|.$locale->text('Amount')."</th>";
- $column_data{due} = qq|<th nowrap>|.$locale->text('Amount Due')."</th>";
- $column_data{paid} = qq|<th nowrap>|.$locale->text('Amount')."</th>";
- $column_data{checked} = qq|<th nowrap>|.$locale->text('Select')."</th>";
-
- print qq|
- <tr>
-|;
- map { print "$column_data{$_}\n" } @column_index;
- print qq|
- </tr>
-|;
-
- for $i (1 .. $form->{rowcount}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(amount due paid);
-
- $totalamount += $form->{"amount_$i"};
- $totaldue += $form->{"due_$i"};
- $totalpaid += $form->{"paid_$i"};
-
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) } qw(amount due paid);
-
- $column_data{invnumber} = qq|<td>$form->{"invnumber_$i"}</td>
- <input type=hidden name="invnumber_$i" value="$form->{"invnumber_$i"}">
- <input type=hidden name="id_$i" value=$form->{"id_$i"}>|;
- $column_data{transdate} = qq|<td width=15%>$form->{"transdate_$i"}</td>
- <input type=hidden name="transdate_$i" value=$form->{"transdate_$i"}>|;
- $column_data{amount} = qq|<td align=right width=15%>$form->{"amount_$i"}</td>
- <input type=hidden name="amount_$i" value=$form->{"amount_$i"}>|;
- $column_data{due} = qq|<td align=right width=15%>$form->{"due_$i"}</td>
- <input type=hidden name="due_$i" value=$form->{"due_$i"}>|;
-
- $column_data{paid} = qq|<td align=right width=15%><input name="paid_$i" size=10 value=$form->{"paid_$i"}></td>|;
-
- $form->{"checked_$i"} = ($form->{"checked_$i"}) ? "checked" : "";
- $column_data{checked} = qq|<td align=center width=10%><input name="checked_$i" type=checkbox style=checkbox $form->{"checked_$i"}></td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>
-|;
- map { print "$column_data{$_}\n" } @column_index;
- print qq|
- </tr>
-|;
- }
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{amount} = qq|<th class=listtotal align=right>|.$form->format_amount(\%myconfig, $totalamount, 2, "&nbsp;").qq|</th>|;
- $column_data{due} = qq|<th class=listtotal align=right>|.$form->format_amount(\%myconfig, $totaldue, 2, "&nbsp;").qq|</th>|;
- $column_data{paid} = qq|<th class=listtotal align=right>|.$form->format_amount(\%myconfig, $totalpaid, 2, "&nbsp;").qq|</th>|;
-
- print qq|
- <tr class=listtotal>
-|;
- map { print "$column_data{$_}\n" } @column_index;
- print qq|
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub form_footer {
-
- $form->{DF}{$form->{format}} = "selected";
-
- if ($form->{selectlanguage}) {
- $form->{"selectlanguage"} = $form->unescape($form->{"selectlanguage"});
- $form->{"selectlanguage"} =~ s/ selected//;
- $form->{"selectlanguage"} =~ s/(<option value="\Q$form->{language_code}\E")/$1 selected/;
- $lang = qq|<select name=language_code>$form->{selectlanguage}</select>
- <input type=hidden name=selectlanguage value="|.
- $form->escape($form->{selectlanguage},1).qq|">|;
- }
-
- $media = qq|
- <option value=screen>|.$locale->text('Screen') if $latex;
-
- if (%printer && $latex) {
- map { $media .= qq|
- <option value="$_">$_| } sort keys %printer;
- }
- if ($latex) {
- $media .= qq|
- <option value=queue>|.$locale->text('Queue');
- $format .= qq|
- <option value=postscript $form->{DF}{postscript}>|.$locale->text('Postscript').qq|
- <option value=pdf $form->{DF}{pdf}>|.$locale->text('PDF');
- }
-
-
- print qq|
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=callback value="$form->{callback}">
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
-
- if ($latex) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Print').qq|">|;
- }
-
- $media =~ s/(<option value="\Q$form->{media}\E")/$1 selected/;
-
- print qq|
- $lang
-<select name=format>$format</select>
-<select name=media>$media</select>
-|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update {
- my ($new_name_selected) = @_;
-
- if ($form->{vc} eq 'customer') {
- $buysell = "buy";
- } else {
- $buysell = "sell";
- }
-
- # get customer
- $updated = &check_name($form->{vc}, $locale->text('Nothing outstanding for ') . $form->{customer});
-
- if ($form->{department} ne $form->{olddepartment}) {
- $updated = 1;
- }
-
- # if we switched to all_vc
- if ($form->{all_vc} ne $form->{oldall_vc}) {
-
- $form->{openinvoices} = ($form->{all_vc}) ? 0 : 1;
-
- $form->{"select$form->{vc}"} = "";
-
- if ($form->{all_vc}) {
- $form->all_vc(\%myconfig, $form->{vc}, $form->{ARAP});
-
- if ($form->{"all_$form->{vc}"}) {
- map { $form->{"select$form->{vc}"} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{"all_$form->{vc}"} };
- }
-
- } else {
- CP->get_openvc(\%myconfig, \%$form);
-
- if ($form->{"all_$form->{vc}"}) {
- $newvc = qq|$form->{"all_$form->{vc}"}[0]->{name}--$form->{"all_$form->{vc}"}[0]->{id}|;
- map { $form->{"select$form->{vc}"} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{"all_$form->{vc}"} };
-
-
- # if the name is not the same
- if ($form->{"select$form->{vc}"} !~ /$form->{$form->{vc}}/) {
- $form->{$form->{vc}} = $newvc;
- &check_name($form->{vc}, $locale->text('Nothing outstanding for ') . $form->{customer});
- }
- }
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- }
-
- if ($new_name_selected || $updated) {
- CP->get_openinvoices(\%myconfig, \%$form);
- ($newvc) = split /--/, $form->{$form->{vc}};
- $form->{"old$form->{vc}"} = qq|$newvc--$form->{"$form->{vc}_id"}|;;
- $updated = 1;
- }
-
- if ($form->{currency} ne $form->{oldcurrency}) {
- $form->{oldcurrency} = $form->{currency};
- if (!$updated) {
- CP->get_openinvoices(\%myconfig, \%$form);
- $updated = 1;
- }
- }
-
-
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{datepaid}, $buysell)));
-
- $amount = $form->{amount} = $form->parse_amount(\%myconfig, $form->{amount});
-
-
- if ($updated) {
- $form->{rowcount} = 0;
-
- $form->{queued} = "";
-
- $i = 0;
- foreach $ref (@{ $form->{PR} }) {
- $i++;
- $form->{"id_$i"} = $ref->{id};
- $form->{"invnumber_$i"} = $ref->{invnumber};
- $form->{"transdate_$i"} = $ref->{transdate};
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- $form->{"amount_$i"} = $ref->{amount} / $ref->{exchangerate};
- $form->{"due_$i"} = ($ref->{amount} - $ref->{paid}) / $ref->{exchangerate};
- $form->{"checked_$i"} = "";
- $form->{"paid_$i"} = "";
-
- # need to format
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) } qw(amount due);
-
- }
- $form->{rowcount} = $i;
- }
-
- # recalculate
- $amount = $form->{amount};
- for $i (1 .. $form->{rowcount}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(amount due paid);
-
- if ($form->{"checked_$i"}) {
- # calculate paid_$i
- if (!$form->{"paid_$i"}) {
- $form->{"paid_$i"} = $form->{"due_$i"};
- }
-
- $amount -= $form->{"paid_$i"};
- } else {
- $form->{"paid_$i"} = "";
- }
-
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) } qw(amount due paid);
-
- }
-
- &form_header;
- &list_invoices;
- &form_footer;
-
-}
-
-
-sub post {
-
- &check_form;
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->error($locale->text('Exchange rate missing!')) unless $form->{exchangerate};
- }
-
- $msg1 = "$form->{title} posted!";
- $msg2 = "Cannot post $form->{title}!";
-
-# $locale->text('Payment posted!')
-# $locale->text('Receipt posted!')
-# $locale->text('Cannot post Payment!')
-# $locale->text('Cannot post Receipt!')
-
-
- $form->{amount} = $form->format_amount(\%myconfig, $form->{amount}, 2);
-
- $form->redirect($locale->text($msg1)) if (CP->process_payment(\%myconfig, \%$form));
- $form->error($locale->text($msg2));
-
-}
-
-
-sub print {
-
- &check_form;
-
- ($whole, $form->{decimal}) = split /\./, $form->{amount};
-
- $form->{amount} = $form->format_amount(\%myconfig, $form->{amount}, 2);
-
- $form->{decimal} .= "00";
- $form->{decimal} = substr($form->{decimal}, 0, 2);
-
- $countrycode = ($form->{language_code}) ? $form->{language_code} : $myconfig{countrycode};
- $check = new CP $countrycode;
- $check->init;
- $form->{text_amount} = $check->num2text($whole);
-
- &{ "$form->{vc}_details" };
-
- $form->{templates} = "$myconfig{templates}";
- $form->{IN} = "$form->{formname}.tex";
-
- if ($form->{media} !~ /(screen|queue)/) {
- $form->{OUT} = "| $printer{$form->{media}}";
- }
- if ($form->{media} eq 'queue') {
- %queued = split / /, $form->{queued};
-
- if ($filename = $queued{$form->{formname}}) {
- unlink "$spool/$filename";
- $filename =~ s/\..*$//g;
- } else {
- $filename = time;
- $filename .= $$;
- }
- $filename .= ($form->{format} eq 'postscript') ? '.ps' : '.pdf';
- $form->{queued} = "$form->{formname} $filename";
- $form->{OUT} = ">$spool/$filename";
-
- $form->update_status(\%myconfig);
-
- }
-
-
- $form->{company} = $myconfig{company};
- $form->{address} = $myconfig{address};
-
- @a = qw(name company address text_amount address1 address2 city state zipcode country memo);
- $form->format_string(@a);
-
- $form->parse_template(\%myconfig, $userspath);
-
- &update if $form->{media} ne 'screen';
-
-}
-
-
-sub customer_details { IS->customer_details(\%myconfig, \%$form) };
-sub vendor_details { IR->vendor_details(\%myconfig, \%$form) };
-
-
-sub check_form {
-
- &check_name($form->{vc}, $locale->text('Nothing outstanding for ') . $form->{customer});
-
- if ($form->{currency} ne $form->{oldcurrency}) {
- &update;
- exit;
- }
-
- $form->error($locale->text('Date missing!')) unless $form->{datepaid};
-
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
- $datepaid = $form->datetonum($form->{datepaid}, \%myconfig);
-
- $form->error($locale->text('Cannot process payment for a closed period!')) if ($datepaid <= $closedto);
-
- # this is just to format the year
- $form->{datepaid} = $locale->date(\%myconfig, $form->{datepaid});
-
- $amount = $form->parse_amount(\%myconfig, $form->{amount});
- $form->{amount} = $amount;
-
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"paid_$i"}) {
- $amount -= $form->parse_amount(\%myconfig, $form->{"paid_$i"});
-
- push(@{ $form->{paid} }, $form->{"paid_$i"});
- push(@{ $form->{due} }, $form->{"due_$i"});
- push(@{ $form->{invnumber} }, $form->{"invnumber_$i"});
- push(@{ $form->{invdate} }, $form->{"transdate_$i"});
- }
- }
-
- if ($form->round_amount($amount, 2) != 0) {
- push(@{ $form->{paid} }, $form->format_amount(\%myconfig, $amount, 2));
- push(@{ $form->{due} }, $form->format_amount(\%myconfig, 0, "0"));
- push(@{ $form->{invnumber} }, ($form->{ARAP} eq 'AR') ? $locale->text('Deposit') : $locale->text('Prepayment'));
- push(@{ $form->{invdate} }, $form->{datepaid});
- }
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ct.pl b/sql-ledger/bin/mozilla/ct.pl
deleted file mode 100644
index 988422b..0000000
--- a/sql-ledger/bin/mozilla/ct.pl
+++ /dev/null
@@ -1,2327 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Reed White <alta@alta-research.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# customer/vendor module
-#
-#======================================================================
-
-use SL::CT;
-
-1;
-# end of main
-
-
-
-sub add {
-
- $form->{title} = "Add";
-# $locale->text('Add Customer')
-# $locale->text('Add Vendor')
-
- $form->{callback} = "$form->{script}?action=add&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- CT->create_links(\%myconfig, \%$form);
-
- &form_header;
- &form_footer;
-
-}
-
-
-sub history {
-
-# $locale->text('Customer History')
-# $locale->text('Vendor History')
-
- $history = 1;
- $label = ucfirst $form->{db};
- $label .= " History";
-
- if ($form->{db} eq 'customer') {
- $invlabel = $locale->text('Sales Invoices');
- $ordlabel = $locale->text('Sales Orders');
- $quolabel = $locale->text('Quotations');
- } else {
- $invlabel = $locale->text('Vendor Invoices');
- $ordlabel = $locale->text('Purchase Orders');
- $quolabel = $locale->text('Request for Quotations');
- }
-
- $form->{title} = $locale->text($label);
-
- $form->{nextsub} = "list_history";
-
- $transactions = qq|
- <tr>
- <td></td>
- <td>
- <table>
- <tr>
- <td>
- <table>
- <tr>
- <td><input name=type type=radio class=radio value=invoice checked> $invlabel</td>
- </tr>
- <tr>
- <td><input name=type type=radio class=radio value=order> $ordlabel</td>
- </tr>
- <tr>
- <td><input name="type" type=radio class=radio value=quotation> $quolabel</td>
- </tr>
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <input name="open" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Open').qq|
- <input name="closed" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Closed').qq|
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- $include = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td>
- <table>
- <tr>
- <td><input name=history type=radio class=radio value=summary checked> |.$locale->text('Summary').qq|</td>
- <td><input name=history type=radio class=radio value=detail> |.$locale->text('Detail').qq|
- </td>
- </tr>
- <tr>
- <td>
- <input name="l_partnumber" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Part Number').qq|
- </td>
- <td>
- <input name="l_description" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Description').qq|
- </td>
- <td>
- <input name="l_sellprice" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Sell Price').qq|
- </td>
- <td>
- <input name="l_curr" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Currency').qq|
- </td>
- </tr>
- <tr>
- <td>
- <input name="l_qty" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Qty').qq|
- </td>
- <td>
- <input name="l_unit" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Unit').qq|
- </td>
- <td>
- <input name="l_discount" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Discount').qq|
- </td>
- <tr>
- </tr>
- <td>
- <input name="l_deliverydate" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Delivery Date').qq|
- </td>
- <td>
- <input name="l_projectnumber" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Project Number').qq|
- </td>
- <td>
- <input name="l_serialnumber" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Serial Number').qq|
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- &search_name;
-
-}
-
-
-sub transactions {
-
- if ($form->{db} eq 'customer') {
- $translabel = $locale->text('AR Transactions');
- $invlabel = $locale->text('Sales Invoices');
- $ordlabel = $locale->text('Sales Orders');
- $quolabel = $locale->text('Quotations');
- } else {
- $translabel = $locale->text('AP Transactions');
- $invlabel = $locale->text('Vendor Invoices');
- $ordlabel = $locale->text('Purchase Orders');
- $quolabel = $locale->text('Request for Quotations');
- }
-
-
- $transactions = qq|
- <tr>
- <td></td>
- <td>
- <table>
- <tr>
- <td>
- <table>
- <tr>
- <td><input name="l_transnumber" type=checkbox class=checkbox value=Y> $translabel</td>
- </tr>
- <tr>
- <td><input name="l_invnumber" type=checkbox class=checkbox value=Y> $invlabel</td>
- </tr>
- <tr>
- <td><input name="l_ordnumber" type=checkbox class=checkbox value=Y> $ordlabel</td>
- </tr>
- <tr>
- <td><input name="l_quonumber" type=checkbox class=checkbox value=Y> $quolabel</td>
- </tr>
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <input name="open" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Open').qq|
- <input name="closed" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Closed').qq|
- </td>
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <input name="l_amount" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Amount').qq|
- <input name="l_tax" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Tax').qq|
- <input name="l_total" type=checkbox class=checkbox value=Y checked>&nbsp;|.$locale->text('Total').qq|
- <input name="l_subtotal" type=checkbox class=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub include_in_report {
-
- $label = ucfirst $form->{db};
-
- if ($myconfig{role} =~ /(admin|manager)/) {
- $bcc = qq|
- <td><input name="l_bcc" type=checkbox class=checkbox value=Y> |.$locale->text('Bcc').qq|</td>
-|;
- }
-
- if ($form->{db} eq 'customer') {
- $employee = qq|
- <td><input name="l_employee" type=checkbox class=checkbox value=Y> |.$locale->text('Salesperson').qq|</td>
-|;
-
- $pricegroup = qq|
- <td><input name="l_pricegroup" type=checkbox class=checkbox value=Y> |.$locale->text('Pricegroup').qq|</td>
-|;
-
- } else {
- $employee = qq|
- <td><input name="l_employee" type=checkbox class=checkbox value=Y> |.$locale->text('Employee').qq|</td>
-|;
- }
-
- $employee .= qq|
- <td><input name="l_manager" type=checkbox class=checkbox value=Y> |.$locale->text('Manager').qq|</td>
-|;
-
- $include = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td>
- <table>
- <tr>
- <td><input name="l_id" type=checkbox class=checkbox value=Y> |.$locale->text('ID').qq|</td>
- <td><input name="l_$form->{db}number" type=checkbox class=checkbox value=Y> |.$locale->text($label . ' Number').qq|</td>
- <td><input name="l_name" type=checkbox class=checkbox value=Y $form->{l_name}> |.$locale->text('Company Name').qq|</td>
- <td><input name="l_contact" type=checkbox class=checkbox value=Y $form->{l_contact}> |.$locale->text('Contact').qq|</td>
- <td><input name="l_email" type=checkbox class=checkbox value=Y $form->{l_email}> |.$locale->text('E-mail').qq|</td>
- </tr>
- <tr>
- <td><input name="l_address" type=checkbox class=checkbox value=Y> |.$locale->text('Address').qq|</td>
- <td><input name="l_city" type=checkbox class=checkbox value=Y> |.$locale->text('City').qq|</td>
- <td><input name="l_state" type=checkbox class=checkbox value=Y> |.$locale->text('State/Province').qq|</td>
- <td><input name="l_zipcode" type=checkbox class=checkbox value=Y> |.$locale->text('Zip/Postal Code').qq|</td>
- <td><input name="l_country" type=checkbox class=checkbox value=Y> |.$locale->text('Country').qq|</td>
- </tr>
- <tr>
- <td><input name="l_phone" type=checkbox class=checkbox value=Y $form->{l_phone}> |.$locale->text('Phone').qq|</td>
- <td><input name="l_fax" type=checkbox class=checkbox value=Y> |.$locale->text('Fax').qq|</td>
- <td><input name="l_cc" type=checkbox class=checkbox value=Y> |.$locale->text('Cc').qq|</td>
- $bcc
- <td><input name="l_notes" type=checkbox class=checkbox value=Y> |.$locale->text('Notes').qq|</td>
- <td><input name="l_discount" type=checkbox class=checkbox value=Y> |.$locale->text('Discount').qq|</td>
- </tr>
- <tr>
- <td><input name="l_taxnumber" type=checkbox class=checkbox value=Y> |.$locale->text('Tax Number').qq|</td>
- $gifi
- <td><input name="l_sic_code" type=checkbox class=checkbox value=Y> |.$locale->text('SIC').qq|</td>
- <td><input name="l_iban" type=checkbox class=checkbox value=Y> |.$locale->text('IBAN').qq|</td>
- <td><input name="l_bic" type=checkbox class=checkbox value=Y> |.$locale->text('BIC').qq|</td>
- </tr>
- <tr>
- $employee
- <td><input name="l_business" type=checkbox class=checkbox value=Y> |.$locale->text('Type of Business').qq|</td>
- $pricegroup
- <td><input name="l_language" type=checkbox class=checkbox value=Y> |.$locale->text('Language').qq|</td>
- </tr>
- <tr>
- <td><input name="l_startdate" type=checkbox class=checkbox value=Y> |.$locale->text('Startdate').qq|</td>
- <td><input name="l_enddate" type=checkbox class=checkbox value=Y> |.$locale->text('Enddate').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub search {
-
-# $locale->text('Customers')
-# $locale->text('Vendors')
-
- $form->{title} = $locale->text('Search') unless $form->{title};
-
- map { $form->{"l_$_"} = 'checked' } qw(name contact phone email);
-
- $form->{nextsub} = "list_names";
-
- $orphan = qq|
- <tr>
- <td></td>
- <td><input name=status class=radio type=radio value=all checked>&nbsp;|.$locale->text('All').qq|
- <input name=status class=radio type=radio value=orphaned>&nbsp;|.$locale->text('Orphaned').qq|</td>
- </tr>
-|;
-
- if ($form->{db} eq 'vendor') {
- $gifi = qq|
- <td><input name="l_gifi_accno" type=checkbox class=checkbox value=Y> |.$locale->text('GIFI').qq|</td>
-|;
- }
-
- &transactions;
- &include_in_report;
- &search_name;
-
-}
-
-
-sub search_name {
-
- $label = ucfirst $form->{db};
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=db value=$form->{db}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text($label . ' Number').qq|</th>
- <td><input name=$form->{db}number size=32></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Company Name').qq|</th>
- <td><input name=name size=64></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Address').qq|</th>
- <td><input name=address size=64></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('City').qq|</th>
- <td><input name=city size=32></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('State/Province').qq|</th>
- <td><input name=state size=32></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Zip/Postal Code').qq|</th>
- <td><input name=zipcode size=10></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Country').qq|</th>
- <td><input name=country size=32></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Contact').qq|</th>
- <td><input name=contact size=64></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=32></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Notes').qq|</th>
- <td><input name=notes size=64></td>
- </tr>
-
- $invnumber
- $orphan
- $transactions
- $include
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=$form->{nextsub}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-}
-
-
-sub list_names {
-
- CT->search(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_names&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}&l_subtotal=$form->{l_subtotal}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=list_names&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}&l_subtotal=$form->{l_subtotal}";
-
- @columns = $form->sort_columns(id, name, "$form->{db}number", address,
- city, state, zipcode, country, contact,
- phone, fax, email, cc, bcc, employee,
- manager, notes, discount,
- taxnumber, gifi_accno, sic_code, business,
- pricegroup, language, iban, bic,
- startdate, enddate,
- invnumber, invamount, invtax, invtotal,
- ordnumber, ordamount, ordtax, ordtotal,
- quonumber, quoamount, quotax, quototal);
-
- foreach $item (qw(inv ord quo)) {
- if ($form->{"l_${item}number"}) {
- map { $form->{"l_$item$_"} = $form->{"l_$_"} } qw(amount tax total);
- $removeemployee = 1;
- $openclosed = 1;
- }
- }
- $form->{open} = $form->{closed} = "" if !$openclosed;
-
- if ($form->{l_transnumber}) {
- map { $form->{"l_inv$_"} = $form->{"l_$_"} } qw(amount tax total);
- $removeemployee = 1;
- }
-
- if ($removeemployee) {
- @columns = grep !/(employee|manager)/, @columns;
- }
-
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- foreach $item (qw(amount tax total transnumber)) {
- if ($form->{"l_$item"} eq "Y") {
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
-
- if ($form->{status} eq 'all') {
- $option = $locale->text('All');
- }
- if ($form->{status} eq 'orphaned') {
- $option .= $locale->text('Orphaned');
- }
- if ($form->{name}) {
- $callback .= "&name=".$form->escape($form->{name},1);
- $href .= "&name=".$form->escape($form->{name});
- $option .= "\n<br>".$locale->text('Name')." : $form->{name}";
- }
- if ($form->{address}) {
- $callback .= "&address=".$form->escape($form->{address},1);
- $href .= "&address=".$form->escape($form->{address});
- $option .= "\n<br>".$locale->text('Address')." : $form->{address}";
- }
- if ($form->{city}) {
- $callback .= "&city=".$form->escape($form->{city},1);
- $href .= "&city=".$form->escape($form->{city});
- $option .= "\n<br>".$locale->text('City')." : $form->{city}";
- }
- if ($form->{state}) {
- $callback .= "&state=".$form->escape($form->{state},1);
- $href .= "&state=".$form->escape($form->{state});
- $option .= "\n<br>".$locale->text('State')." : $form->{state}";
- }
- if ($form->{zipcode}) {
- $callback .= "&zipcode=".$form->escape($form->{zipcode},1);
- $href .= "&zipcode=".$form->escape($form->{zipcode});
- $option .= "\n<br>".$locale->text('Zip/Postal Code')." : $form->{zipcode}";
- }
- if ($form->{country}) {
- $callback .= "&country=".$form->escape($form->{country},1);
- $href .= "&country=".$form->escape($form->{country});
- $option .= "\n<br>".$locale->text('Country')." : $form->{country}";
- }
- if ($form->{contact}) {
- $callback .= "&contact=".$form->escape($form->{contact},1);
- $href .= "&contact=".$form->escape($form->{contact});
- $option .= "\n<br>".$locale->text('Contact')." : $form->{contact}";
- }
- if ($form->{notes}) {
- $callback .= "&notes=".$form->escape($form->{notes},1);
- $href .= "&notes=".$form->escape($form->{notes});
- $option .= "\n<br>".$locale->text('Notes')." : $form->{notes}";
- }
- if ($form->{"$form->{db}number"}) {
- $callback .= qq|&$form->{db}number=|.$form->escape($form->{"$form->{db}number"},1);
- $href .= "&$form->{db}number=".$form->escape($form->{"$form->{db}number"});
- $option .= "\n<br>".$locale->text('Number').qq| : $form->{"$form->{db}number"}|;
- }
- if ($form->{email}) {
- $callback .= "&email=".$form->escape($form->{email},1);
- $href .= "&email=".$form->escape($form->{email});
- $option .= "\n<br>".$locale->text('E-mail')." : $form->{email}";
- }
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $href .= "&transdateto=$form->{transdateto}";
- if ($form->{transdatefrom}) {
- $option .= " ";
- } else {
- $option .= "\n<br>" if ($option);
- }
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- if ($form->{open}) {
- $callback .= "&open=$form->{open}";
- $href .= "&open=$form->{open}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $callback .= "&closed=$form->{closed}";
- $href .= "&closed=$form->{closed}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
- }
-
-
- $form->{callback} = "$callback&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
- $column_header{id} = qq|<th class=listheading>|.$locale->text('ID').qq|</th>|;
- $column_header{"$form->{db}number"} = qq|<th><a class=listheading href=$href&sort=$form->{db}number>|.$locale->text('Number').qq|</a></th>|;
- $column_header{name} = qq|<th><a class=listheading href=$href&sort=name>|.$locale->text('Name').qq|</a></th>|;
- $column_header{address} = qq|<th class=listheading>|.$locale->text('Address').qq|</th>|;
- $column_header{city} = qq|<th><a class=listheading href=$href&sort=city>|.$locale->text('City').qq|</a></th>|;
- $column_header{state} = qq|<th><a class=listheading href=$href&sort=state>|.$locale->text('State/Province').qq|</a></th>|;
- $column_header{zipcode} = qq|<th><a class=listheading href=$href&sort=zipcode>|.$locale->text('Zip/Postal Code').qq|</a></th>|;
- $column_header{country} = qq|<th><a class=listheading href=$href&sort=country>|.$locale->text('Country').qq|</a></th>|;
- $column_header{contact} = qq|<th><a class=listheading href=$href&sort=contact>|.$locale->text('Contact').qq|</a></th>|;
- $column_header{phone} = qq|<th><a class=listheading href=$href&sort=phone>|.$locale->text('Phone').qq|</a></th>|;
- $column_header{fax} = qq|<th><a class=listheading href=$href&sort=fax>|.$locale->text('Fax').qq|</a></th>|;
- $column_header{email} = qq|<th><a class=listheading href=$href&sort=email>|.$locale->text('E-mail').qq|</a></th>|;
- $column_header{cc} = qq|<th><a class=listheading href=$href&sort=cc>|.$locale->text('Cc').qq|</a></th>|;
- $column_header{bcc} = qq|<th><a class=listheading href=$href&sort=cc>|.$locale->text('Bcc').qq|</a></th>|;
- $column_header{notes} = qq|<th><a class=listheading href=$href&sort=notes>|.$locale->text('Notes').qq|</a></th>|;
- $column_header{discount} = qq|<th class=listheading>%</th>|;
-
- $column_header{taxnumber} = qq|<th><a class=listheading href=$href&sort=taxnumber>|.$locale->text('Tax Number').qq|</a></th>|;
- $column_header{gifi_accno} = qq|<th><a class=listheading href=$href&sort=gifi_accno>|.$locale->text('GIFI').qq|</a></th>|;
- $column_header{sic_code} = qq|<th><a class=listheading href=$href&sort=sic_code>|.$locale->text('SIC').qq|</a></th>|;
- $column_header{business} = qq|<th><a class=listheading href=$href&sort=business>|.$locale->text('Type of Business').qq|</a></th>|;
- $column_header{iban} = qq|<th class=listheading>|.$locale->text('IBAN').qq|</th>|;
- $column_header{bic} = qq|<th class=listheading>|.$locale->text('BIC').qq|</th>|;
- $column_header{startdate} = qq|<th><a class=listheading href=$href&sort=startdate>|.$locale->text('Startdate').qq|</a></th>|;
- $column_header{enddate} = qq|<th><a class=listheading href=$href&sort=enddate>|.$locale->text('Enddate').qq|</a></th>|;
-
- $column_header{invnumber} = qq|<th><a class=listheading href=$href&sort=invnumber>|.$locale->text('Invoice').qq|</a></th>|;
- $column_header{ordnumber} = qq|<th><a class=listheading href=$href&sort=ordnumber>|.$locale->text('Order').qq|</a></th>|;
- $column_header{quonumber} = qq|<th><a class=listheading href=$href&sort=quonumber>|.$locale->text('Quotation').qq|</a></th>|;
-
- if ($form->{db} eq 'customer') {
- $column_header{employee} = qq|<th><a class=listheading href=$href&sort=employee>|.$locale->text('Salesperson').qq|</a></th>|;
- } else {
- $column_header{employee} = qq|<th><a class=listheading href=$href&sort=employee>|.$locale->text('Employee').qq|</a></th>|;
- }
- $column_header{manager} = qq|<th><a class=listheading href=$href&sort=manager>|.$locale->text('Manager').qq|</a></th>|;
-
- $column_header{pricegroup} = qq|<th><a class=listheading href=$href&sort=pricegroup>|.$locale->text('Pricegroup').qq|</a></th>|;
- $column_header{language} = qq|<th><a class=listheading href=$href&sort=language>|.$locale->text('Language').qq|</a></th>|;
-
-
- $amount = $locale->text('Amount');
- $tax = $locale->text('Tax');
- $total = $locale->text('Total');
-
- $column_header{invamount} = qq|<th class=listheading>$amount</th>|;
- $column_header{ordamount} = qq|<th class=listheading>$amount</th>|;
- $column_header{quoamount} = qq|<th class=listheading>$amount</th>|;
-
- $column_header{invtax} = qq|<th class=listheading>$tax</th>|;
- $column_header{ordtax} = qq|<th class=listheading>$tax</th>|;
- $column_header{quotax} = qq|<th class=listheading>$tax</th>|;
-
- $column_header{invtotal} = qq|<th class=listheading>$total</th>|;
- $column_header{ordtotal} = qq|<th class=listheading>$total</th>|;
- $column_header{quototal} = qq|<th class=listheading>$total</th>|;
-
-
- if ($form->{status}) {
- $label = ucfirst $form->{db}."s";
- $form->{title} = $locale->text($label);
- } else {
- $label = ucfirst $form->{db};
- $form->{title} = $locale->text($label ." Transactions");
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $ordertype = ($form->{db} eq 'customer') ? 'sales_order' : 'purchase_order';
- $quotationtype = ($form->{db} eq 'customer') ? 'sales_quotation' : 'request_quotation';
- $subtotal = 0;
-
- foreach $ref (@{ $form->{CT} }) {
-
- if ("$ref->{$form->{sort}}$ref->{id}" ne $sameitem && $form->{l_subtotal}) {
- # print subtotal
- if ($subtotal) {
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- &list_subtotal;
- }
- }
-
- if ("$ref->{$form->{sort}}$ref->{id}" eq $sameitem && $form->{sort} eq 'name') {
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- } else {
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } @column_index;
- $column_data{$form->{sort}} = "<td>&nbsp;</td>" if $ref->{$form->{sort}} eq $sameitem && $form->{l_subtotal};
-
- $column_data{address} = "<td>$ref->{address1} $ref->{address2}&nbsp;</td>";
- $column_data{name} = "<td><a href=$form->{script}?action=edit&id=$ref->{id}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}&callback=$callback>$ref->{name}&nbsp;</td>";
-
- $email = "";
- if ($form->{sort} =~ /(email|cc)/) {
- if ("$ref->{$form->{sort}}$ref->{id}" ne $sameitem) {
- $email = 1;
- }
- } else {
- $email = 1;
- }
-
- if ($email) {
- foreach $item (qw(email cc bcc)) {
- if ($ref->{$item}) {
- $email = $ref->{$item};
- $email =~ s/</\&lt;/;
- $email =~ s/>/\&gt;/;
-
- $column_data{$item} = qq|<td><a href="mailto:$ref->{$item}">$email</a></td>|;
- }
- }
- }
- }
-
- if ($ref->{formtype} eq 'invoice') {
- $column_data{invnumber} = "<td><a href=$ref->{module}.pl?action=edit&id=$ref->{invid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{invnumber}&nbsp;</td>";
-
- $column_data{invamount} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{invtax} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount} - $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{invtotal} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount}, 2, "&nbsp;")."</td>";
-
- $invamountsubtotal += $ref->{netamount};
- $invtaxsubtotal += ($ref->{amount} - $ref->{netamount});
- $invtotalsubtotal += $ref->{amount};
- }
-
- if ($ref->{formtype} eq 'order') {
- $column_data{ordnumber} = "<td><a href=$ref->{module}.pl?action=edit&id=$ref->{invid}&type=$ordertype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{ordnumber}&nbsp;</td>";
-
- $column_data{ordamount} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{ordtax} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount} - $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{ordtotal} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount}, 2, "&nbsp;")."</td>";
-
- $ordamountsubtotal += $ref->{netamount};
- $ordtaxsubtotal += ($ref->{amount} - $ref->{netamount});
- $ordtotalsubtotal += $ref->{amount};
- }
-
- if ($ref->{formtype} eq 'quotation') {
- $column_data{quonumber} = "<td><a href=$ref->{module}.pl?action=edit&id=$ref->{invid}&type=$quotationtype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{quonumber}&nbsp;</td>";
-
- $column_data{quoamount} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{quotax} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount} - $ref->{netamount}, 2, "&nbsp;")."</td>";
- $column_data{quototal} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount}, 2, "&nbsp;")."</td>";
-
- $quoamountsubtotal += $ref->{netamount};
- $quotaxsubtotal += ($ref->{amount} - $ref->{netamount});
- $quototalsubtotal += $ref->{amount};
- }
-
- if ($form->{l_discount}) {
- $column_data{discount} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{discount} * 100, "", "&nbsp;")."</td>";
- }
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>
-";
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $sameitem = "$ref->{$form->{sort}}$ref->{id}";
- $subtotal = 1;
-
- }
-
- if ($form->{l_subtotal}) {
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- &list_subtotal;
- }
-
- $i = 1;
- if ($myconfig{acs} !~ /AR--AR/) {
- if ($form->{db} eq 'customer') {
- $button{'AR--Customers-Add Customer'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Customer').qq|"> |;
- $button{'AR--Customers--Add Customer'}{order} = $i++;
- }
- }
- if ($myconfig{acs} !~ /AP--AP/) {
- if ($form->{db} eq 'vendor') {
- $button{'AP--Vendors--Add Vendor'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Vendor').qq|"> |;
- $button{'AP--Vendors--Add Vendor'}{order} = $i++;
- }
- }
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-<input name=db type=hidden value=$form->{db}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- if ($form->{status}) {
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list_subtotal {
-
- $column_data{invamount} = "<td align=right>".$form->format_amount(\%myconfig, $invamountsubtotal, 2, "&nbsp;")."</td>";
- $column_data{invtax} = "<td align=right>".$form->format_amount(\%myconfig, $invtaxsubtotal, 2, "&nbsp;")."</td>";
- $column_data{invtotal} = "<td align=right>".$form->format_amount(\%myconfig, $invtotalsubtotal, 2, "&nbsp;")."</td>";
-
- $invamountsubtotal = 0;
- $invtaxsubtotal = 0;
- $invtotalsubtotal = 0;
-
- $column_data{ordamount} = "<td align=right>".$form->format_amount(\%myconfig, $ordamountsubtotal, 2, "&nbsp;")."</td>";
- $column_data{ordtax} = "<td align=right>".$form->format_amount(\%myconfig, $ordtaxsubtotal, 2, "&nbsp;")."</td>";
- $column_data{ordtotal} = "<td align=right>".$form->format_amount(\%myconfig, $ordtotalsubtotal, 2, "&nbsp;")."</td>";
-
- $ordamountsubtotal = 0;
- $ordtaxsubtotal = 0;
- $ordtotalsubtotal = 0;
-
- $column_data{quoamount} = "<td align=right>".$form->format_amount(\%myconfig, $quoamountsubtotal, 2, "&nbsp;")."</td>";
- $column_data{quotax} = "<td align=right>".$form->format_amount(\%myconfig, $quotaxsubtotal, 2, "&nbsp;")."</td>";
- $column_data{quototal} = "<td align=right>".$form->format_amount(\%myconfig, $quototalsubtotal, 2, "&nbsp;")."</td>";
-
- $quoamountsubtotal = 0;
- $quotaxsubtotal = 0;
- $quototalsubtotal = 0;
-
- print "
- <tr class=listsubtotal>
-";
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
-}
-
-
-sub list_history {
-
- CT->get_history(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_history&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&history=$form->{history}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=list_history&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&type=$form->{type}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&history=$form->{history}";
-
- $form->{l_fxsellprice} = $form->{l_curr};
- @columns = $form->sort_columns(partnumber, description, qty, unit, sellprice, fxsellprice, curr, discount, deliverydate, projectnumber, serialnumber);
-
- if ($form->{history} eq 'summary') {
- @columns = $form->sort_columns(partnumber, description, qty, unit, sellprice, curr);
- }
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- if ($form->{history} eq 'detail') {
- $option = $locale->text('Detail');
- }
- if ($form->{history} eq 'summary') {
- $option .= $locale->text('Summary');
- }
- if ($form->{name}) {
- $callback .= "&name=".$form->escape($form->{name},1);
- $href .= "&name=".$form->escape($form->{name});
- $option .= "\n<br>".$locale->text('Name')." : $form->{name}";
- }
- if ($form->{contact}) {
- $callback .= "&contact=".$form->escape($form->{contact},1);
- $href .= "&contact=".$form->escape($form->{contact});
- $option .= "\n<br>".$locale->text('Contact')." : $form->{contact}";
- }
- if ($form->{"$form->{db}number"}) {
- $callback .= qq|&$form->{db}number=|.$form->escape($form->{"$form->{db}number"},1);
- $href .= "&$form->{db}number=".$form->escape($form->{"$form->{db}number"});
- $option .= "\n<br>".$locale->text('Number').qq| : $form->{"$form->{db}number"}|;
- }
- if ($form->{email}) {
- $callback .= "&email=".$form->escape($form->{email},1);
- $href .= "&email=".$form->escape($form->{email});
- $option .= "\n<br>".$locale->text('E-mail')." : $form->{email}";
- }
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $href .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $href .= "&transdateto=$form->{transdateto}";
- if ($form->{transdatefrom}) {
- $option .= " ";
- } else {
- $option .= "\n<br>" if ($option);
- }
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- if ($form->{open}) {
- $callback .= "&open=$form->{open}";
- $href .= "&open=$form->{open}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $callback .= "&closed=$form->{closed}";
- $href .= "&closed=$form->{closed}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
- }
-
-
- $form->{callback} = "$callback&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
- $column_header{partnumber} = qq|<th><a class=listheading href=$href&sort=partnumber>|.$locale->text('Part Number').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
-
- if ($form->{history} eq 'summary') {
- $column_header{sellprice} = qq|<th class=listheading>|.$locale->text('Total').qq|</th>|;
- } else {
- $column_header{sellprice} = qq|<th class=listheading>|.$locale->text('Sell Price').qq|</th>|;
- }
- $column_header{fxsellprice} = qq|<th>&nbsp;</th>|;
-
- $column_header{curr} = qq|<th class=listheading>|.$locale->text('Curr').qq|</th>|;
- $column_header{discount} = qq|<th class=listheading>|.$locale->text('Discount').qq|</th>|;
- $column_header{qty} = qq|<th class=listheading>|.$locale->text('Qty').qq|</th>|;
- $column_header{unit} = qq|<th class=listheading>|.$locale->text('Unit').qq|</th>|;
- $column_header{deliverydate} = qq|<th><a class=listheading href=$href&sort=deliverydate>|.$locale->text('Delivery Date').qq|</a></th>|;
- $column_header{projectnumber} = qq|<th><a class=listheading href=$href&sort=projectnumber>|.$locale->text('Project Number').qq|</a></th>|;
- $column_header{serialnumber} = qq|<th><a class=listheading href=$href&sort=serialnumber>|.$locale->text('Serial Number').qq|</a></th>|;
-
-
-# $locale->text('Customer History')
-# $locale->text('Vendor History')
-
- $label = ucfirst $form->{db};
- $form->{title} = $locale->text($label." History");
-
- $colspan = $#column_index + 1;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- $module = 'oe';
- if ($form->{db} eq 'customer') {
- $invlabel = $locale->text('Sales Invoice');
- $ordlabel = $locale->text('Sales Order');
- $quolabel = $locale->text('Quotation');
-
- $ordertype = 'sales_order';
- $quotationtype = 'sales_quotation';
- if ($form->{type} eq 'invoice') {
- $module = 'is';
- }
- } else {
- $invlabel = $locale->text('Vendor Invoice');
- $ordlabel = $locale->text('Purchase Order');
- $quolabel = $locale->text('RFQ');
-
- $ordertype = 'purchase_order';
- $quotationtype = 'request_quotation';
- if ($form->{type} eq 'invoice') {
- $module = 'ir';
- }
- }
-
-
- foreach $ref (@{ $form->{CT} }) {
-
- if ($ref->{id} ne $sameid) {
- # print the header
- print qq|
- <tr class=listheading>
- <th colspan=$colspan><a class=listheading href=$form->{script}?action=edit&id=$ref->{ctid}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{name} $ref->{address}</a></th>
- </tr>
-|;
- }
-
- if ($form->{type} ne 'invoice') {
- $ref->{fxsellprice} = $ref->{sellprice};
- $ref->{sellprice} *= $ref->{exchangerate};
- }
-
- if ($form->{history} eq 'detail' and $ref->{invid} ne $sameinvid) {
- # print inv, ord, quo number
- $i++; $i %= 2;
-
- print qq|
- <tr class=listrow$i>
-|;
-
- if ($form->{type} eq 'invoice') {
- print qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$invlabel $ref->{invnumber} / $ref->{employee}</a></th>|;
- }
-
- if ($form->{type} eq 'order') {
- print qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&type=$ordertype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ordlabel $ref->{ordnumber} / $ref->{employee}</a></th>|;
- }
-
- if ($form->{type} eq 'quotation') {
- print qq|<th align=left colspan=$colspan><a href=${module}.pl?action=edit&id=$ref->{invid}&type=$quotationtype&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$quolabel $ref->{quonumber} / $ref->{employee}</a></th>|;
- }
-
- print qq|
- </tr>
-|;
- }
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } @column_index;
-
- if ($form->{l_curr}) {
- $column_data{fxsellprice} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{fxsellprice}, 2)."</td>";
- }
- $column_data{sellprice} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{sellprice}, 2)."</td>";
-
- $column_data{qty} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{qty})."</td>";
- $column_data{discount} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{discount} * 100, "", "&nbsp;")."</td>";
- $column_data{partnumber} = qq|<td><a href=ic.pl?action=edit&id=$ref->{pid}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partnumber}</td>|;
-
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $sameid = $ref->{id};
- $sameinvid = $ref->{invid};
-
- }
-
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub edit {
-
-# $locale->text('Edit Customer')
-# $locale->text('Edit Vendor')
-
- CT->create_links(\%myconfig, \%$form);
-
- map { $form->{$_} = $form->quote($form->{$_}) } keys %$form;
-
- $form->{title} = "Edit";
-
- # format discount
- $form->{discount} *= 100;
-
- &form_header;
- &form_footer;
-
-}
-
-
-sub form_header {
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
- $form->{creditlimit} = $form->format_amount(\%myconfig, $form->{creditlimit}, 0);
-
- if ($myconfig{role} =~ /(admin|manager)/) {
- $bcc = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Bcc').qq|</th>
- <td><input name=bcc size=35 value="$form->{bcc}"></td>
- </tr>
-|;
- }
-
- # currencies
- map { $form->{selectcurrency} .= "<option>$_\n" } split /:/, $form->{currencies};
- $form->{selectcurrency} =~ s/option>($form->{curr})/option selected>$1/;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{tax}{$item}{taxable}) {
- $taxable .= qq| <input name="tax_$item" value=1 class=checkbox type=checkbox checked>&nbsp;<b>$form->{tax}{$item}{description}</b>|;
- } else {
- $taxable .= qq| <input name="tax_$item" value=1 class=checkbox type=checkbox>&nbsp;<b>$form->{tax}{$item}{description}</b>|;
- }
- }
-
- if ($taxable) {
- $tax = qq|
- <tr>
- <th align=right>|.$locale->text('Taxable').qq|</th>
- <td colspan=5>
- <table>
- <tr>
- <td>$taxable</td>
- <td><input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}></td>
- <th align=left>|.$locale->text('Tax Included').qq|</th>
- </tr>
- </table>
- </td>
- </tr>
-|;
- }
-
- $typeofbusiness = qq|
- <th></th>
- <td></td>
-|;
-
- if (@{ $form->{all_business} }) {
- $form->{selectbusiness} = qq|<option>\n|;
- map { $form->{selectbusiness} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } @{ $form->{all_business} };
-
- $form->{selectbusiness} =~ s/(<option value="\Q$form->{business}--$form->{business_id}\E")>/$1 selected>/;
-
- $typeofbusiness = qq|
- <th align=right>|.$locale->text('Type of Business').qq|</th>
- <td><select name=business>$form->{selectbusiness}</select></td>
-|;
-
-
- }
-
- $pricegroup = qq|
- <th></th>
- <td></td>
-|;
-
- if (@{ $form->{all_pricegroup} } && $form->{db} eq 'customer') {
- $form->{selectpricegroup} = qq|<option>\n|;
- map { $form->{selectpricegroup} .= qq|<option value="$_->{pricegroup}--$_->{id}">$_->{pricegroup}\n| } @{ $form->{all_pricegroup} };
-
- $form->{selectpricegroup} =~ s/(<option value="\Q$form->{pricegroup}--$form->{pricegroup_id}\E")/$1 selected/;
-
- $pricegroup = qq|
- <th align=right>|.$locale->text('Pricegroup').qq|</th>
- <td><select name=pricegroup>$form->{selectpricegroup}</select></td>
-|;
- }
-
- $lang = qq|
- <th></th>
- <td></td>
-|;
-
- if (@{ $form->{all_language} }) {
- $form->{selectlanguage} = qq|<option>\n|;
- map { $form->{selectlanguage} .= qq|<option value="$_->{description}--$_->{code}">$_->{description}\n| } @{ $form->{all_language} };
-
- $form->{selectlanguage} =~ s/(<option value="\Q$form->{language}--$form->{language_code}\E")/$1 selected/;
-
- $lang = qq|
- <th align=right>|.$locale->text('Language').qq|</th>
- <td><select name=language>$form->{selectlanguage}</select></td>
-|;
- }
-
-
- $employeelabel = $locale->text('Salesperson');
-
- $form->{selectemployee} = qq|<option>\n|;
- map { $form->{selectemployee} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_employee} };
-
- $form->{selectemployee} =~ s/(<option value="\Q$form->{employee}--$form->{employee_id}\E")/$1 selected/;
-
- if ($form->{db} eq 'vendor') {
- $gifi = qq|
- <th align=right>|.$locale->text('Sub-contract GIFI').qq|</th>
- <td><input name=gifi_accno size=9 value="$form->{gifi_accno}"></td>
-|;
- $employeelabel = $locale->text('Employee');
- }
-
-
- if (@{ $form->{all_employee} }) {
- $employee = qq|
- <th align=right>$employeelabel</th>|;
-
- if ($myconfig{role} ne 'user' || !$form->{id}) {
- $employee .= qq|
- <td><select name=employee>$form->{selectemployee}</select></td>
-|;
- } else {
- $employee .= qq|
- <td>$form->{employee}</td>
- <input type=hidden name=employee value="$form->{employee}--$form->{employee_id}">|;
- }
- }
-
-
-# $locale->text('Customer Number')
-# $locale->text('Vendor Number')
-
- $label = ucfirst $form->{db};
- $form->{title} = $locale->text("$form->{title} $label");
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table width=100%>
- <tr class=listheading>
- <th class=listheading colspan=2 width=50%>|.$locale->text('Billing Address').qq|</th>
- <tr>
- <th align=right nowrap>|.$locale->text($label .' Number').qq|</th>
- <td><input name="$form->{db}number" size=35 maxlength=32 value="$form->{"$form->{db}number"}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Company Name').qq|</th>
- <td><input name=name size=35 maxlength=64 value="$form->{name}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Address').qq|</th>
- <td><input name=address1 size=35 maxlength=32 value="$form->{address1}"></td>
- </tr>
- <tr>
- <th></th>
- <td><input name=address2 size=35 maxlength=32 value="$form->{address2}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('City').qq|</th>
- <td><input name=city size=35 maxlength=32 value="$form->{city}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('State/Province').qq|</th>
- <td><input name=state size=35 maxlength=32 value="$form->{state}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Zip/Postal Code').qq|</th>
- <td><input name=zipcode size=10 maxlength=10 value="$form->{zipcode}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Country').qq|</th>
- <td><input name=country size=35 maxlength=32 value="$form->{country}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Contact').qq|</th>
- <td><input name=contact size=35 maxlength=64 value="$form->{contact}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Phone').qq|</th>
- <td><input name=phone size=20 maxlength=20 value="$form->{phone}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Fax').qq|</th>
- <td><input name=fax size=20 maxlength=20 value="$form->{fax}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=35 value="$form->{email}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Cc').qq|</th>
- <td><input name=cc size=35 value="$form->{cc}"></td>
- </tr>
- $bcc
- </table>
- </td>
- <td width=50%>
- <table width=100%>
- <tr>
- <th class=listheading colspan=2>|.$locale->text('Shipping Address').qq|</th>
- </tr>
- <tr>
- <td><input name=none size=35 value=|. ("=" x 35) .qq|></td>
- </tr>
- <tr>
- <td><input name=shiptoname size=35 maxlength=64 value="$form->{shiptoname}"></td>
- </tr>
- <tr>
- <td><input name=shiptoaddress1 size=35 maxlength=32 value="$form->{shiptoaddress1}"></td>
- </tr>
- <tr>
- <td><input name=shiptoaddress2 size=35 maxlength=32 value="$form->{shiptoaddress2}"></td>
- </tr>
- <tr>
- <td><input name=shiptocity size=35 maxlength=32 value="$form->{shiptocity}"></td>
- </tr>
- <tr>
- <td><input name=shiptostate size=35 maxlength=32 value="$form->{shiptostate}"></td>
- </tr>
- <tr>
- <td><input name=shiptozipcode size=10 maxlength=10 value="$form->{shiptozipcode}"></td>
- </tr>
- <tr>
- <td><input name=shiptocountry size=35 maxlength=32 value="$form->{shiptocountry}"></td>
- </tr>
- <tr>
- <td><input name=shiptocontact size=35 maxlength=64 value="$form->{shiptocontact}"></td>
- </tr>
- <tr>
- <td><input name=shiptophone size=20 maxlength=20 value="$form->{shiptophone}"></td>
- </tr>
- <tr>
- <td><input name=shiptofax size=20 maxlength=20 value="$form->{shiptofax}"></td>
- </tr>
- <tr>
- <td><input name=shiptoemail size=35 value="$form->{shiptoemail}"></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- $tax
- <tr>
- <th align=right>|.$locale->text('Startdate').qq|</th>
- <td><input name=startdate size=11 title="$myconfig{dateformat}" value=$form->{startdate}></td>
- <th align=right>|.$locale->text('Enddate').qq|</th>
- <td><input name=enddate size=11 title="$myconfig{dateformat}" value=$form->{enddate}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Credit Limit').qq|</th>
- <td><input name=creditlimit size=9 value="$form->{creditlimit}"></td>
- <th align=right>|.$locale->text('Terms').qq|</th>
- <td><input name=terms size=2 value="$form->{terms}"> <b>|.$locale->text('days').qq|</b></td>
- <th align=right>|.$locale->text('Discount').qq|</th>
- <td><input name=discount size=4 value="$form->{discount}">
- <b>%</b></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Tax Number / SSN').qq|</th>
- <td><input name=taxnumber size=20 value="$form->{taxnumber}"></td>
- $gifi
- <th align=right>|.$locale->text('SIC').qq|</th>
- <td><input name=sic size=6 maxlength=6 value="$form->{sic}"></td>
- </tr>
- <tr>
- $typeofbusiness
- <th align=right>|.$locale->text('BIC').qq|</th>
- <td><input name=bic size=11 maxlength=11 value="$form->{bic}"></td>
- <th align=right>|.$locale->text('IBAN').qq|</th>
- <td><input name=iban size=24 maxlength=34 value="$form->{iban}"></td>
- </tr>
- <tr>
- $pricegroup
- $lang
- <th>|.$locale->text('Currency').qq|</th>
- <td><select name=curr>$form->{selectcurrency}</select></td>
- </tr>
- <tr valign=top>
- $employee
- <td colspan=4>
- <table>
- <tr valign=top>
- <th align=left nowrap>|.$locale->text('Notes').qq|</th>
- <td><textarea name=notes rows=3 cols=40 wrap=soft>$form->{notes}</textarea></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-
-sub form_footer {
-
- $i = 1;
- if ($form->{db} eq 'customer') {
- if ($myconfig{acs} !~ /AR--AR/) {
- $button{'AR--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AR Transaction').qq|"> |;
- $button{'AR--Add Transaction'}{order} = $i++;
- $button{'AR--Sales Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Sales Invoice').qq|"> |;
- $button{'AR--Sales Invoice'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /Order Entry--Order Entry/) {
- $button{'Order Entry--Sales Order'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Sales Order').qq|"> |;
- $button{'Order Entry--Sales Order'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /Quotations--Quotations/) {
- $button{'Quotations--Quotation'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Quotation').qq|"> |;
- $button{'Quotations--Quotation'}{order} = $i++;
- }
- }
- if ($form->{db} eq 'vendor') {
- if ($myconfig{acs} !~ /AP--AP/) {
- $button{'AP--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AP Transaction').qq|"> |;
- $button{'AP--Add Transaction'}{order} = $i++;
- $button{'AP--Vendor Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Vendor Invoice').qq|"> |;
- $button{'AP--Vendor Invoice'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /Order Entry--Order Entry/) {
- $button{'Order Entry--Purchase Order'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Purchase Order').qq|"> |;
- $button{'Order Entry--Purchase Order'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /Quotations--Quotations/) {
- $button{'Quotations--RFQ'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('RFQ').qq|"> |;
- $button{'Quotations--RFQ'}{order} = $i++;
- }
- }
- if ($myconfig{acs} !~ /Goods & Services--Goods & Services/) {
- $myconfig{acs} =~ s/(Goods & Services--Add )(Service|Assembly).*;/$1--Add Part/g;
- $button{'Goods & Services--Add Part'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Pricelist').qq|"> |;
- $button{'Goods & Services--Add Part'}{order} = $i++;
- }
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
-<input name=id type=hidden value=$form->{id}>
-<input name=taxaccounts type=hidden value="$form->{taxaccounts}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=callback value="$form->{callback}">
-<input type=hidden name=db value=$form->{db}>
-
-<br>
-|;
-
- if ($form->{db} eq 'customer') {
- $item = 'AR--Customers--Add Customer';
- }
- if ($form->{db} eq 'vendor') {
- $item = 'AP--Vendors--Add Vendor';
- }
-
- if ($myconfig{acs} !~ /$item/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text("Save").qq|">
-|;
- if ($form->{id} && $form->{status} eq 'orphaned') {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">\n|;
- }
- }
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub pricelist {
-
- $form->isblank("name", $locale->text('Name missing!'));
-
- CT->pricelist(\%myconfig, \%$form);
-
- foreach $ref (@{ $form->{"all_partspricelist"} }) {
- $i++;
- map { $form->{"${_}_$i"} = $ref->{$_} } keys %$ref;
- }
- $form->{rowcount} = $i;
-
- # currencies
- @curr = split /:/, $form->{currencies};
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- if (@ { $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- foreach $ref (@ { $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{partsgroup}\n|;
- }
- }
-
- map { delete $form->{$_} } ("currencies", "all_partsgroup", "all_partspricelist");
-
- foreach $i (1 .. $form->{rowcount}) {
-
- if ($form->{db} eq 'customer') {
-
- $form->{"pricebreak_$i"} = $form->format_amount(\%myconfig, $form->{"pricebreak_$i"});
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
-
- }
-
- if ($form->{db} eq 'vendor') {
-
- $form->{"leadtime_$i"} = $form->format_amount(\%myconfig, $form->{"leadtime_$i"});
- ($dec) = ($form->{"lastcost_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"lastcost_$i"} = $form->format_amount(\%myconfig, $form->{"lastcost_$i"}, $decimalplaces);
-
- }
- }
-
- $form->{rowcount}++;
- &{ "$form->{db}_pricelist" };
-
-}
-
-
-sub customer_pricelist {
-
- @flds = qw(runningnumber id partnumber description sellprice unit partsgroup pricebreak curr validfrom validto);
-
- $form->{rowcount}--;
-
- # remove empty rows
- if ($form->{rowcount}) {
-
- foreach $i (1 .. $form->{rowcount}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(pricebreak sellprice);
-
- ($a, $b) = split /\./, $form->{"pricebreak_$i"};
- $a = length $a;
- $b = length $b;
- $whole = ($whole > $a) ? $whole : $a;
- $dec = ($dec > $b) ? $dec : $b;
- }
- $pad1 = '0' x $whole;
- $pad2 = '0' x $dec;
-
- foreach $i (1 .. $form->{rowcount}) {
- ($a, $b) = split /\./, $form->{"pricebreak_$i"};
-
- $a = substr("$pad1$a", -$whole);
- $b = substr("$b$pad2", 0, $dec);
- $ndx{qq|$form->{"partnumber_$i"}_$form->{"id_$i"}_$a$b|} = $i;
- }
-
- $i = 1;
- map { $form->{"runningnumber_$ndx{$_}"} = $i++ } sort keys %ndx;
-
- foreach $i (1 .. $form->{rowcount}) {
- if ($form->{"partnumber_$i"} && $form->{"sellprice_$i"}) {
- if ($form->{"id_$i"} eq $sameid) {
- $j = $i + 1;
- next if ($form->{"id_$j"} eq $sameid && !$form->{"pricebreak_$i"});
- }
-
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- $sameid = $form->{"id_$i"};
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count;
-
- }
-
- $form->{rowcount}++;
-
- &pricelist_header;
- $form->hide_form();
- &pricelist_footer;
-
-}
-
-
-sub vendor_pricelist {
-
- @flds = qw(runningnumber id sku partnumber description lastcost unit partsgroup curr leadtime);
-
- $form->{rowcount}--;
-
- # remove empty rows
- if ($form->{rowcount}) {
-
- foreach $i (1 .. $form->{rowcount}) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(leadtime lastcost);
- $var = ($form->{"partnumber_$i"}) ? $form->{"sku_$i"} : qq|_$form->{"sku_$i"}|;
- $ndx{$var} = $i;
-
- }
-
- $i = 1;
- map { $form->{"runningnumber_$ndx{$_}"} = $i++ } sort keys %ndx;
-
- foreach $i (1 .. $form->{rowcount}) {
- if ($form->{"sku_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count;
-
- }
-
- $form->{rowcount}++;
-
- &pricelist_header;
- $form->hide_form();
- &pricelist_footer;
-
-}
-
-
-
-sub pricelist_header {
-
- $form->{title} = $form->{name};
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
-|;
-
- if ($form->{db} eq 'customer') {
- @column_index = qw(partnumber description);
- push @column_index, "partsgroup" if $form->{selectpartsgroup};
- push @column_index, qw(pricebreak sellprice curr validfrom validto);
-
- $column_header{pricebreak} = qq|<th class=listheading nowrap>|.$locale->text('Break').qq|</th>|;
- $column_header{sellprice} = qq|<th class=listheading nowrap>|.$locale->text('Sell Price').qq|</th>|;
- $column_header{validfrom} = qq|<th class=listheading nowrap>|.$locale->text('From').qq|</th>|;
- $column_header{validto} = qq|<th class=listheading nowrap>|.$locale->text('To').qq|</th>|;
- }
-
- if ($form->{db} eq 'vendor') {
- @column_index = qw(sku partnumber description);
- push @column_index, "partsgroup" if $form->{selectpartsgroup};
- push @column_index, qw(lastcost curr leadtime);
-
-
- $column_header{sku} = qq|<th class=listheading nowrap>|.$locale->text('SKU').qq|</th>|;
- $column_header{leadtime} = qq|<th class=listheading nowrap>|.$locale->text('Leadtime').qq|</th>|;
- $column_header{lastcost} = qq|<th class=listheading nowrap>|.$locale->text('Cost').qq|</th>|;
- }
-
- $column_header{partnumber} = qq|<th class=listheading nowrap>|.$locale->text('Number').qq|</th>|;
- $column_header{description} = qq|<th class=listheading nowrap width=80%>|.$locale->text('Description').qq|</th>|;
- $column_header{partsgroup} = qq|<th class=listheading nowrap>|.$locale->text('Group').qq|</th>|;
- $column_header{curr} = qq|<th class=listheading nowrap>|.$locale->text('Curr').qq|</th>|;
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $sameid = "";
- foreach $i (1 .. $form->{rowcount}) {
-
- $selectcurrency = $form->{selectcurrency};
- $selectcurrency =~ s/option>\Q$form->{"curr_$i"}\E/option selected>$form->{"curr_$i"}/;
-
- if ($form->{selectpartsgroup}) {
- if ($i < $form->{rowcount}) {
- ($partsgroup) = split /--/, $form->{"partsgroup_$i"};
- $column_data{partsgroup} = qq|<td>$partsgroup</td>
- <input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}">|;
- }
- }
-
-
- if ($i < $form->{rowcount}) {
-
- if ($form->{"id_$i"} eq $sameid) {
- map { $column_data{$_} = qq|<td>&nbsp;</td>
- <input type=hidden name="${_}_$i" value="|.$form->quote($form->{"${_}_$i"}).qq|">| } qw(partnumber description partsgroup);
-
- } else {
-
- $column_data{sku} = qq|<td><input name="sku_$i" value="$form->{"sku_$i"}"></td>|;
- $column_data{partnumber} = qq|<td><input name="partnumber_$i" value="$form->{"partnumber_$i"}"></td>|;
-
- $column_data{description} = qq|<td>$form->{"description_$i"}&nbsp;</td>
- <input type=hidden name="description_$i" value="|.$form->quote($form->{"description_$i"}).qq|">|;
-
- }
-
- $column_data{partnumber} .= qq|
- <input type=hidden name="id_$i" value="$form->{"id_$i"}">|;
-
- } else {
-
- if ($form->{db} eq 'customer') {
- $column_data{partnumber} = qq|<td><input name="partnumber_$i" value="$form->{"partnumber_$i"}"></td>|;
- } else {
- $column_data{partnumber} = qq|<td>&nbsp;</td>|;
- }
-
- $column_data{partnumber} .= qq|
- <input type=hidden name="id_$i" value="$form->{"id_$i"}">|;
-
- $column_data{sku} = qq|<td><input name="sku_$i" value="$form->{"sku_$i"}"></td>|;
- $column_data{description} = qq|<td><input name="description_$i" value="$form->{"description_$i"}"></td>|;
-
- if ($form->{selectpartsgroup}) {
- $column_data{partsgroup} = qq|<td><select name="partsgroup_$i">$form->{selectpartsgroup}</select></td>|;
- }
-
- }
-
-
- if ($form->{db} eq 'customer') {
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $column_data{pricebreak} = qq|<td align=right><input name="pricebreak_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"pricebreak_$i"}).qq|></td>|;
- $column_data{sellprice} = qq|<td align=right><input name="sellprice_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces).qq|></td>|;
-
- $column_data{validfrom} = qq|<td><input name="validfrom_$i" size=11 value=$form->{"validfrom_$i"}></td>|;
- $column_data{validto} = qq|<td><input name="validto_$i" size=11 value=$form->{"validto_$i"}></td>|;
- }
-
- if ($form->{db} eq 'vendor') {
- ($dec) = ($form->{"lastcost_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $column_data{leadtime} = qq|<td align=right><input name="leadtime_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"leadtime_$i"}).qq|></td>|;
- $column_data{lastcost} = qq|<td align=right><input name="lastcost_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"lastcost_$i"}, $decimalplaces).qq|></td>|;
- }
-
-
- $column_data{curr} = qq|<td><select name="curr_$i">$selectcurrency</select></td>|;
-
-
- print qq|<tr valign=top>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|</tr>|;
-
- $sameid = $form->{"id_$i"};
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
- # delete variables
- foreach $i (1 .. $form->{rowcount}) {
- map { delete $form->{"${_}_$i"} } (@column_index, "id");
- }
- map { delete $form->{$_} } qw(title titlebar script none header action);
-
-}
-
-
-sub pricelist_footer {
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Save Pricelist').qq|">|;
-
- print qq|
-</form>
-
-<a name="end"></a>
-
- </body>
- </html>
-|;
-
-}
-
-
-sub update {
-
- $i = $form->{rowcount};
- $additem = 0;
-
- if ($form->{db} eq 'customer') {
- $additem = 1 if ! (($form->{"partnumber_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq ""));
- }
- if ($form->{db} eq 'vendor') {
- if (! (($form->{"sku_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq ""))) {
- $additem = 1;
- $form->{"partnumber_$i"} = $form->{"sku_$i"};
- }
- }
-
- if ($additem) {
-
- CT->retrieve_item(\%myconfig, \%$form);
-
- $rows = scalar @{ $form->{item_list} };
-
- if ($rows > 0) {
-
- if ($rows > 1) {
-
- &select_item;
- exit;
-
- } else {
-
- $sellprice = $form->{"sellprice_$i"};
- $pricebreak = $form->{"pricebreak_$i"};
- $lastcost = $form->{"lastcost_$i"};
-
- map { $form->{item_list}[$i]{$_} = $form->quote($form->{item_list}[$i]{$_}) } qw(partnumber description);
- map { $form->{"${_}_$i"} = $form->{item_list}[0]{$_} } keys %{ $form->{item_list}[0] };
-
- if ($form->{db} eq 'customer') {
-
- if ($sellprice) {
- $form->{"sellprice_$i"} = $sellprice;
- }
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
-
- $form->{"pricebreak_$i"} = $pricebreak;
-
- } else {
-
- foreach $j (1 .. $form->{rowcount}) {
- if ($form->{"sku_$j"} eq $form->{"partnumber_$i"}) {
- $form->error($locale->text('Item already on pricelist!'));
- }
- }
-
- if ($lastcost) {
- $form->{"lastcost_$i"} = $lastcost;
- }
-
- ($dec) = ($form->{"lastcost_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"lastcost_$i"} = $form->format_amount(\%myconfig, $form->{"lastcost_$i"}, $decimalplaces);
-
- $form->{"sku_$i"} = $form->{"partnumber_$i"};
- delete $form->{"partnumber_$i"};
-
- }
-
- $form->{rowcount}++;
-
- }
-
- } else {
-
- $form->error($locale->text('Item not on file!'));
-
- }
- }
-
- &{ "$form->{db}_pricelist" };
-
-}
-
-
-
-sub select_item {
-
- @column_index = qw(ndx partnumber description partsgroup unit sellprice lastcost);
-
- $column_data{ndx} = qq|<th>&nbsp;</th>|;
- $column_data{partnumber} = qq|<th class=listheading>|.$locale->text('Number').qq|</th>|;
- $column_data{description} = qq|<th class=listheading>|.$locale->text('Description').qq|</th>|;
- $column_data{partsgroup} = qq|<th class=listheading>|.$locale->text('Group').qq|</th>|;
- $column_data{unit} = qq|<th class=listheading>|.$locale->text('Unit').qq|</th>|;
- $column_data{sellprice} = qq|<th class=listheading>|.$locale->text('Sell Price').qq|</th>|;
- $column_data{lastcost} = qq|<th class=listheading>|.$locale->text('Cost').qq|</th>|;
-
- $form->header;
-
- $title = $locale->text('Select from one of the items below');
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- my $i = 0;
- foreach $ref (@{ $form->{item_list} }) {
- $checked = ($i++) ? "" : "checked";
-
- map { $ref->{$_} = $form->quote($ref->{$_}) } qw(partnumber description unit);
-
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
-
- map { $column_data{$_} = qq|<td>$ref->{$_}&nbsp;</td>| } qw(partnumber description partsgroup unit);
-
- $column_data{sellprice} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{sellprice}, 2, "&nbsp;").qq|</td>|;
- $column_data{lastcost} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{lastcost}, 2, "&nbsp;").qq|</td>|;
-
- $j++; $j %= 2;
-
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input name="new_partnumber_$i" type=hidden value="$ref->{partnumber}">
-<input name="new_description_$i" type=hidden value="$ref->{description}">
-<input name="new_partsgroup_$i" type=hidden value="$ref->{partsgroup}">
-<input name="new_partsgroup_id_$i" type=hidden value="$ref->{partsgroup_id}">
-<input name="new_sellprice_$i" type=hidden value=$ref->{sellprice}>
-<input name="new_lastcost_$i" type=hidden value=$ref->{lastcost}>
-<input name="new_unit_$i" type=hidden value="$ref->{unit}">
-
-<input name="new_id_$i" type=hidden value=$ref->{id}>
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input name=lastndx type=hidden value=$i>
-
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action item_list header);
-
- $form->hide_form();
-
- print qq|
-<input type=hidden name=nextsub value=item_selected>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-}
-
-
-
-sub item_selected {
-
- # replace the last row with the checked row
- $i = $form->{rowcount};
-
- # index for new item
- $j = $form->{ndx};
-
- @new = qw(id partnumber description unit);
- push @new, "sellprice" if ! $form->{"sellprice_$i"};
- push @new, "lastcost" if ! $form->{"lastcost_$i"};
-
- map { $form->{"${_}_$i"} = $form->{"new_${_}_$j"} } @new;
-
- $form->{"partsgroup_$i"} = qq|$form->{"new_partsgroup_$j"}--$form->{"new_partsgroup_id_$j"}|;
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(sellprice lastcost);
-
- push @new, qw(partsgroup partsgroup_id);
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } @new;
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- # format amounts
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) } qw(sellprice lastcost);
-
- foreach $j (1 .. $form->{rowcount}) {
- if ($form->{"sku_$j"} eq $form->{"partnumber_$i"}) {
- $form->error($locale->text('Item already on pricelist!'));
- }
- }
-
- $form->{"sku_$i"} = $form->{"partnumber_$i"};
- delete $form->{"partnumber_$i"} if $form->{db} eq 'vendor';
-
- $form->{rowcount}++;
- &{ "$form->{db}_pricelist" };
-
-}
-
-
-
-
-sub save_pricelist {
-
- &{ "CT::save_$form->{db}" }("", \%myconfig, \%$form);
-
- $rc = CT->save_pricelist(\%myconfig, \%$form);
-
- $form->{callback} = "$form->{script}?action=edit&db=$form->{db}&id=$form->{id}&login=$form->{login}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->redirect if $rc;
- $form->error($locale->text('Could not save pricelist!'));
-
-}
-
-
-
-sub add_transaction {
-
- $form->isblank("name", $locale->text("Name missing!"));
-
- &{ "CT::save_$form->{db}" }("", \%myconfig, \%$form);
-
- $form->{callback} = $form->escape($form->{callback},1);
- $name = $form->escape($form->{name},1);
-
- $form->{callback} = "$form->{script}?login=$form->{login}&path=$form->{path}&sessionid=$form->{sessionid}&action=add&vc=$form->{db}&$form->{db}_id=$form->{id}&$form->{db}=$name&type=$form->{type}&callback=$form->{callback}";
-
- $form->redirect;
-
-}
-
-sub ap_transaction {
-
- $form->{script} = "ap.pl";
- $form->{type} = "ap_transaction";
- &add_transaction;
-
-}
-
-
-sub ar_transaction {
-
- $form->{script} = "ar.pl";
- $form->{type} = "ar_transaction";
- &add_transaction;
-
-}
-
-
-sub sales_invoice {
-
- $form->{script} = "is.pl";
- $form->{type} = "invoice";
- &add_transaction;
-
-}
-
-
-sub vendor_invoice {
-
- $form->{script} = "ir.pl";
- $form->{type} = "invoice";
- &add_transaction;
-
-}
-
-
-sub rfq {
-
- $form->{script} = "oe.pl";
- $form->{type} = "request_quotation";
- &add_transaction;
-
-}
-
-
-sub quotation {
-
- $form->{script} = "oe.pl";
- $form->{type} = "sales_quotation";
- &add_transaction;
-
-}
-
-
-sub sales_order {
-
- $form->{script} = "oe.pl";
- $form->{type} = "sales_order";
- &add_transaction;
-
-}
-
-
-sub purchase_order {
-
- $form->{script} = "oe.pl";
- $form->{type} = "purchase_order";
- &add_transaction;
-
-}
-
-
-sub save {
-
-# $locale->text('Customer saved!')
-# $locale->text('Vendor saved!')
-
- $msg = ucfirst $form->{db};
- $msg .= " saved!";
-
- $form->isblank("name", $locale->text("Name missing!"));
- &{ "CT::save_$form->{db}" }("", \%myconfig, \%$form);
-
- $form->redirect($locale->text($msg));
-
-}
-
-
-sub delete {
-
-# $locale->text('Customer deleted!')
-# $locale->text('Cannot delete customer!')
-# $locale->text('Vendor deleted!')
-# $locale->text('Cannot delete vendor!')
-
- CT->delete(\%myconfig, \%$form);
-
- $msg = ucfirst $form->{db};
- $msg .= " deleted!";
- $form->redirect($locale->text($msg));
-
- $msg = "Cannot delete $form->{db}";
- $form->error($locale->text($msg));
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
-sub add_customer { &add };
-sub add_vendor { &add };
-
diff --git a/sql-ledger/bin/mozilla/gl.pl b/sql-ledger/bin/mozilla/gl.pl
deleted file mode 100644
index 5b29dc6..0000000
--- a/sql-ledger/bin/mozilla/gl.pl
+++ /dev/null
@@ -1,1066 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Genereal Ledger
-#
-#======================================================================
-
-
-use SL::GL;
-use SL::PE;
-
-require "$form->{path}/arap.pl";
-
-1;
-# end of main
-
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub add {
-
- $form->{title} = "Add";
-
- $form->{callback} = "$form->{script}?action=add&transfer=$form->{transfer}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- # we use this only to set a default date
- GL->transaction(\%myconfig, \%$form);
-
- map { $form->{selectaccno} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{all_accno} };
-
- if ($form->{all_projects}) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
- }
-
-
- $form->{rowcount} = ($form->{transfer}) ? 2 : 9;
-
- # departments
- $form->all_departments(\%myconfig);
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- &display_form;
-
-}
-
-
-sub edit {
-
- GL->transaction(\%myconfig, \%$form);
-
- map { $form->{selectaccno} .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{all_accno} };
-
- # projects
- if ($form->{all_projects}) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
- }
-
-
- # departments
- $form->all_departments(\%myconfig);
- if (@{ $form->{all_departments} }) {
-
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $form->{locked} = ($form->{revtrans}) ? '1' : ($form->datetonum($form->{transdate}, \%myconfig) <= $form->datetonum($form->{closedto}, \%myconfig));
-
- # readonly
- $form->{readonly} = 1 if $myconfig{acs} =~ /General Ledger--Add Transaction/;
-
- $form->{title} = "Edit";
-
- &form_header;
-
- $i = 1;
- foreach $ref (@{ $form->{GL} }) {
- $form->{"accno_$i"} = "$ref->{accno}--$ref->{description}";
-
- $form->{"projectnumber_$i"} = "$ref->{projectnumber}--$ref->{project_id}";
- $form->{"fx_transaction_$i"} = $ref->{fx_transaction};
-
- if ($ref->{amount} < 0) {
- $form->{totaldebit} -= $ref->{amount};
- $form->{"debit_$i"} = $ref->{amount} * -1;
- } else {
- $form->{totalcredit} += $ref->{amount};
- $form->{"credit_$i"} = $ref->{amount};
- }
-
- $i++;
- }
-
- $form->{rowcount} = $i;
-
- &display_rows;
-
- &form_footer;
-
-}
-
-
-
-sub search {
-
- $form->{title} = $locale->text('General Ledger')." ".$locale->text('Reports');
-
- $form->all_departments(\%myconfig);
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-|;
- }
-
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=sort value=transdate>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Reference').qq|</th>
- <td><input name=reference size=20></td>
- <th align=right>|.$locale->text('Source').qq|</th>
- <td><input name=source size=20></td>
- </tr>
- $department
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td colspan=3><input name=description size=40></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Notes').qq|</th>
- <td colspan=3><input name=notes size=40></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=datefrom size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=dateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- <tr>
- <th align=right>|.$locale->text('Amount').qq| >=</th>
- <td><input name=amountfrom size=11></td>
- <th align=right>|.$locale->text('Amount').qq| <=</th>
- <td><input name=amountto size=11></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <table>
- <tr>
- <td>
- <input name="category" class=radio type=radio value=X checked>&nbsp;|.$locale->text('All').qq|
- <input name="category" class=radio type=radio value=A>&nbsp;|.$locale->text('Asset').qq|
- <input name="category" class=radio type=radio value=C>&nbsp;|.$locale->text('Contra').qq|
- <input name="category" class=radio type=radio value=L>&nbsp;|.$locale->text('Liability').qq|
- <input name="category" class=radio type=radio value=Q>&nbsp;|.$locale->text('Equity').qq|
- <input name="category" class=radio type=radio value=I>&nbsp;|.$locale->text('Income').qq|
- <input name="category" class=radio type=radio value=E>&nbsp;|.$locale->text('Expense').qq|
- </td>
- </tr>
- <tr>
- <table>
- <tr>
- <td align=right><input name="l_id" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('ID').qq|</td>
- <td align=right><input name="l_transdate" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Date').qq|</td>
- <td align=right><input name="l_reference" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Reference').qq|</td>
- <td align=right><input name="l_description" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Description').qq|</td>
- <td align=right><input name="l_notes" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('Notes').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_debit" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Debit').qq|</td>
- <td align=right><input name="l_credit" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Credit').qq|</td>
- <td align=right><input name="l_source" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Source').qq|</td>
- <td align=right><input name="l_accno" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Account').qq|</td>
- <td align=right><input name="l_gifi_accno" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('GIFI').qq|</td>
- </tr>
- <tr>
- <td align=right><input name="l_subtotal" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </tr>
- </table>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=generate_report>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-}
-
-
-sub generate_report {
-
- $form->{sort} = "transdate" unless $form->{sort};
-
- GL->all_transactions(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=generate_report&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=generate_report&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- %acctype = ( 'A' => $locale->text('Asset'),
- 'C' => $locale->text('Contra'),
- 'L' => $locale->text('Liability'),
- 'Q' => $locale->text('Equity'),
- 'I' => $locale->text('Income'),
- 'E' => $locale->text('Expense'),
- );
-
- $form->{title} = $locale->text('General Ledger');
-
- $ml = ($form->{ml} =~ /(A|E)/) ? -1 : 1;
-
- unless ($form->{category} eq 'X') {
- $form->{title} .= " : ".$locale->text($acctype{$form->{category}});
- }
- if ($form->{accno}) {
- $href .= "&accno=".$form->escape($form->{accno});
- $callback .= "&accno=".$form->escape($form->{accno},1);
- $option = $locale->text('Account')." : $form->{accno} $form->{account_description}";
- }
- if ($form->{gifi_accno}) {
- $href .= "&gifi_accno=".$form->escape($form->{gifi_accno});
- $callback .= "&gifi_accno=".$form->escape($form->{gifi_accno},1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('GIFI')." : $form->{gifi_accno} $form->{gifi_account_description}";
- }
- if ($form->{source}) {
- $href .= "&source=".$form->escape($form->{source});
- $callback .= "&source=".$form->escape($form->{source},1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Source')." : $form->{source}";
- }
- if ($form->{reference}) {
- $href .= "&reference=".$form->escape($form->{reference});
- $callback .= "&reference=".$form->escape($form->{reference},1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Reference')." : $form->{reference}";
- }
- if ($form->{department}) {
- $href .= "&department=".$form->escape($form->{department});
- $callback .= "&department=".$form->escape($form->{department},1);
- ($department) = split /--/, $form->{department};
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Department')." : $department";
- }
-
- if ($form->{description}) {
- $href .= "&description=".$form->escape($form->{description});
- $callback .= "&description=".$form->escape($form->{description},1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Description')." : $form->{description}";
- }
- if ($form->{notes}) {
- $href .= "&notes=".$form->escape($form->{notes});
- $callback .= "&notes=".$form->escape($form->{notes},1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Notes')." : $form->{notes}";
- }
-
- if ($form->{datefrom}) {
- $href .= "&datefrom=$form->{datefrom}";
- $callback .= "&datefrom=$form->{datefrom}";
- $option .= "\n<br>" if $option;
- $option .= $locale->text('From')." ".$locale->date(\%myconfig, $form->{datefrom}, 1);
- }
- if ($form->{dateto}) {
- $href .= "&dateto=$form->{dateto}";
- $callback .= "&dateto=$form->{dateto}";
- if ($form->{datefrom}) {
- $option .= " ";
- } else {
- $option .= "\n<br>" if $option;
- }
- $option .= $locale->text('To')." ".$locale->date(\%myconfig, $form->{dateto}, 1);
- }
-
- if ($form->{amountfrom}) {
- $href .= "&amountfrom=$form->{amountfrom}";
- $callback .= "&amountfrom=$form->{amountfrom}";
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Amount')." >= ".$form->format_amount(\%myconfig, $form->{amountfrom}, 2);
- }
- if ($form->{amountto}) {
- $href .= "&amountto=$form->{amountto}";
- $callback .= "&amountto=$form->{amountto}";
- if ($form->{amountfrom}) {
- $option .= " <= ";
- } else {
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Amount')." <= ";
- }
- $option .= $form->format_amount(\%myconfig, $form->{amountto}, 2);
- }
-
-
- @columns = $form->sort_columns(qw(transdate id reference description notes source debit credit accno gifi_accno));
-
- if ($form->{link} =~ /_paid/) {
- @columns = $form->sort_columns(qw(transdate id reference description notes source cleared debit credit accno gifi_accno));
- $form->{l_cleared} = "Y";
- }
-
- if ($form->{accno} || $form->{gifi_accno}) {
- @columns = grep !/(accno|gifi_accno)/, @columns;
- push @columns, "balance";
- $form->{l_balance} = "Y";
- }
-
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- $href .= "&l_subtotal=Y";
- }
-
- $callback .= "&category=$form->{category}";
- $href .= "&category=$form->{category}";
-
- $column_header{id} = "<th><a class=listheading href=$href&sort=id>".$locale->text('ID')."</a></th>";
- $column_header{transdate} = "<th><a class=listheading href=$href&sort=transdate>".$locale->text('Date')."</a></th>";
- $column_header{reference} = "<th><a class=listheading href=$href&sort=reference>".$locale->text('Reference')."</a></th>";
- $column_header{source} = "<th><a class=listheading href=$href&sort=source>".$locale->text('Source')."</a></th>";
- $column_header{description} = "<th><a class=listheading href=$href&sort=description>".$locale->text('Description')."</a></th>";
- $column_header{notes} = "<th class=listheading>".$locale->text('Notes')."</th>";
- $column_header{debit} = "<th class=listheading>".$locale->text('Debit')."</th>";
- $column_header{credit} = "<th class=listheading>".$locale->text('Credit')."</th>";
- $column_header{accno} = "<th><a class=listheading href=$href&sort=accno>".$locale->text('Account')."</a></th>";
- $column_header{gifi_accno} = "<th><a class=listheading href=$href&sort=gifi_accno>".$locale->text('GIFI')."</a></th>";
- $column_header{balance} = "<th>".$locale->text('Balance')."</th>";
- $column_header{cleared} = qq|<th>|.$locale->text('R').qq|</th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
-map { print "$column_header{$_}\n" } @column_index;
-
-print "
- </tr>
-";
-
- # add sort to callback
- $form->{callback} = "$callback&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
- # initial item for subtotals
- if (@{ $form->{GL} }) {
- $sameitem = $form->{GL}->[0]->{$form->{sort}};
- }
-
- if (($form->{accno} || $form->{gifi_accno}) && $form->{balance}) {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</td>";
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- # reverse href
- $direction = ($form->{direction} eq 'ASC') ? "ASC" : "DESC";
- $form->sort_order();
- $href =~ s/direction=$form->{direction}/direction=$direction/;
-
- foreach $ref (@{ $form->{GL} }) {
-
- # if item ne sort print subtotal
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $ref->{$form->{sort}}) {
- &gl_subtotal;
- }
- }
-
- $form->{balance} += $ref->{amount};
-
- $subtotaldebit += $ref->{debit};
- $subtotalcredit += $ref->{credit};
-
- $totaldebit += $ref->{debit};
- $totalcredit += $ref->{credit};
-
- $ref->{debit} = $form->format_amount(\%myconfig, $ref->{debit}, 2, "&nbsp;");
- $ref->{credit} = $form->format_amount(\%myconfig, $ref->{credit}, 2, "&nbsp;");
-
- $column_data{id} = "<td>$ref->{id}</td>";
- $column_data{transdate} = "<td>$ref->{transdate}</td>";
- $column_data{reference} = "<td><a href=$ref->{module}.pl?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{reference}</td>";
- $column_data{description} = "<td>$ref->{description}&nbsp;</td>";
- $column_data{source} = "<td>$ref->{source}&nbsp;</td>";
- $column_data{notes} = "<td>$ref->{notes}&nbsp;</td>";
- $column_data{debit} = "<td align=right>$ref->{debit}</td>";
- $column_data{credit} = "<td align=right>$ref->{credit}</td>";
- $column_data{accno} = "<td><a href=$href&accno=$ref->{accno}&callback=$callback>$ref->{accno}</a></td>";
- $column_data{gifi_accno} = "<td><a href=$href&gifi_accno=$ref->{gifi_accno}&callback=$callback>$ref->{gifi_accno}</a>&nbsp;</td>";
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</td>";
- $column_data{cleared} = ($ref->{cleared}) ? "<td>*</td>" : "<td>&nbsp;</td>";
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>";
- map { print "$column_data{$_}\n" } @column_index;
- print "</tr>";
-
- }
-
-
- &gl_subtotal if ($form->{l_subtotal} eq 'Y');
-
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{debit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totaldebit, 2, "&nbsp;")."</th>";
- $column_data{credit} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $totalcredit, 2, "&nbsp;")."</th>";
- $column_data{balance} = "<th align=right class=listtotal>".$form->format_amount(\%myconfig, $form->{balance} * $ml, 2, 0)."</th>";
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- $i = 1;
- if ($myconfig{acs} !~ /GL--GL/) {
- $button{'GL--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('GL Transaction').qq|"> |;
- $button{'GL--Add Transaction'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /AR--AR/) {
- $button{'AR--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AR Transaction').qq|"> |;
- $button{'AR--Add Transaction'}{order} = $i++;
- $button{'AR--Sales Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Sales Invoice ').qq|"> |;
- $button{'AR--Sales Invoice'}{order} = $i++;
- }
- if ($myconfig{acs} !~ /AP--AP/) {
- $button{'AP--Add Transaction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('AP Transaction').qq|"> |;
- $button{'AP--Add Transaction'}{order} = $i++;
- $button{'AP--Vendor Invoice'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Vendor Invoice ').qq|"> |;
- $button{'AP--Vendor Invoice'}{order} = $i++;
- }
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub gl_subtotal {
-
- $subtotaldebit = $form->format_amount(\%myconfig, $subtotaldebit, 2, "&nbsp;");
- $subtotalcredit = $form->format_amount(\%myconfig, $subtotalcredit, 2, "&nbsp;");
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{debit} = "<th align=right class=listsubtotal>$subtotaldebit</td>";
- $column_data{credit} = "<th align=right class=listsubtotal>$subtotalcredit</td>";
-
-
- print "<tr class=listsubtotal>";
- map { print "$column_data{$_}\n" } @column_index;
- print "</tr>";
-
- $subtotaldebit = 0;
- $subtotalcredit = 0;
-
- $sameitem = $ref->{$form->{sort}};
-
-}
-
-
-sub update {
-
- @a = ();
- $count = 0;
- @flds = qw(accno debit credit projectnumber);
-
- for $i (1 .. $form->{rowcount}) {
- unless (($form->{"debit_$i"} eq "") && ($form->{"credit_$i"} eq "")) {
- # take accno apart
- ($form->{"accno_$i"}) = split(/--/, $form->{"accno_$i"});
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(debit credit);
-
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
-
- for $i (1 .. $count) {
- $j = $i - 1;
- map { $form->{"${_}_$i"} = $a[$j]->{$_} } @flds;
- }
-
- for $i ($count + 1 .. $form->{rowcount}) {
- map { delete $form->{"${_}_$i"} } @flds;
- }
-
- $form->{rowcount} = $count + 1;
-
- &display_form;
-
-}
-
-
-sub display_form {
-
- &form_header;
- &display_rows;
- &form_footer;
-
-}
-
-
-sub display_rows {
-
- $form->{selectprojectnumber} = $form->unescape($form->{selectprojectnumber});
-
- $form->{totaldebit} = 0;
- $form->{totalcredit} = 0;
-
- for $i (1 .. $form->{rowcount}) {
-
- $form->{totaldebit} += $form->{"debit_$i"};
- $form->{totalcredit} += $form->{"credit_$i"};
-
- map { $form->{"${_}_$i"} = ($form->{"${_}_$i"}) ? $form->format_amount(\%myconfig, $form->{"${_}_$i"}, 2) : "" } qw(debit credit);
-
- $selectaccno = $form->{selectaccno};
- $selectaccno =~ s/option>\Q$form->{"accno_$i"}\E/option selected>$form->{"accno_$i"}/;
-
- if ($form->{selectprojectnumber}) {
- $selectprojectnumber = $form->{selectprojectnumber};
- $selectprojectnumber =~ s/(<option value="$form->{"projectnumber_$i"}")/$1 selected/;
-
- $project = qq|
- <td><select name="projectnumber_$i">$selectprojectnumber</select></td>|;
- }
-
-
- if ($form->{transfer}) {
- $form->{"fx_transaction_$i"} = ($form->{"fx_transaction_$i"}) ? "checked" : "";
- $fx_transaction = qq|
- <td><input name="fx_transaction_$i" class=checkbox type=checkbox value=1 $form->{"fx_transaction_$i"}></td>
-|;
- } else {
- $fx_transaction = qq|
- <input type=hidden name="fx_transaction_$i" value=$form->{"fx_transaction_$i"}>
-|;
- }
-
-
- print qq|<tr>
- <td><select name="accno_$i">$selectaccno</select></td>
- $fx_transaction
- <td><input name="debit_$i" size=12 value=$form->{"debit_$i"}></td>
- <td><input name="credit_$i" size=12 value=$form->{"credit_$i"}></td>
- $project
-</tr>
-
-|;
- }
-
-
- print qq|
-<input type=hidden name=rowcount value=$form->{rowcount}>
-<input type=hidden name=selectaccno value="$form->{selectaccno}">
-<input type=hidden name=selectprojectnumber value="|.$form->escape($form->{selectprojectnumber},1).qq|">|;
-
-}
-
-
-sub form_header {
-
- $title = $form->{title};
- if ($form->{transfer}) {
- $form->{title} = $locale->text("$title Cash Transfer Transaction");
- } else {
- $form->{title} = $locale->text("$title General Ledger Transaction");
- }
-
-# $locale->text('Add Cash Transfer Transaction')
-# $locale->text('Edit Cash Transfer Transaction')
-# $locale->text('Add General Ledger Transaction')
-# $locale->text('Edit General Ledger Transaction')
-
-
- $form->{selectdepartment} = $form->unescape($form->{selectdepartment});
- $form->{selectdepartment} =~ s/ selected//;
- $form->{selectdepartment} =~ s/(<option value="\Q$form->{department}\E")/$1 selected/;
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(reference description notes);
-
- if (($rows = $form->numtextrows($form->{description}, 50)) > 1) {
- $description = qq|<textarea name=description rows=$rows cols=50 wrap=soft>$form->{description}</textarea>|;
- } else {
- $description = qq|<input name=description size=50 value="$form->{description}">|;
- }
-
- if (($rows = $form->numtextrows($form->{notes}, 50)) > 1) {
- $notes = qq|<textarea name=notes rows=$rows cols=50 wrap=soft>$form->{notes}</textarea>|;
- } else {
- $notes = qq|<input name=notes size=50 value="$form->{notes}">|;
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td><select name=department>$form->{selectdepartment}</select></td>
- <input type=hidden name=selectdepartment value="|.$form->escape($form->{selectdepartment},1).qq|">
- </tr>
-| if $form->{selectdepartment};
-
- $project = qq|
- <th class=listheading>|.$locale->text('Project').qq|</th>
-| if $form->{selectprojectnumber};
-
- if ($form->{transfer}) {
- $fx_transaction = qq|
- <th class=listheading>|.$locale->text('FX').qq|</th>
-|;
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input name=id type=hidden value=$form->{id}>
-
-<input type=hidden name=transfer value=$form->{transfer}>
-
-<input type=hidden name=selectaccno value="$form->{selectaccno}">
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-<input type=hidden name=title value="$title">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right>|.$locale->text('Reference').qq|</th>
- <td><input name=reference size=20 value="$form->{reference}"></td>
- <th align=right>|.$locale->text('Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{dateformat}" value=$form->{transdate}></td>
- </tr>
- $department
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td colspan=3>$description</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Notes').qq|</th>
- <td colspan=3>$notes</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
- <th class=listheading>|.$locale->text('Account').qq|</th>
- $fx_transaction
- <th class=listheading>|.$locale->text('Debit').qq|</th>
- <th class=listheading>|.$locale->text('Credit').qq|</th>
- $project
- </tr>
-|;
-
-}
-
-
-sub form_footer {
-
- ($dec) = ($form->{totaldebit} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- map { $form->{$_} = $form->format_amount(\%myconfig, $form->{$_}, $decimalplaces, "&nbsp;") } qw(totaldebit totalcredit);
-
-
- $project = qq|
- <th>&nbsp;</th>
-| if $form->{selectprojectnumber};
-
- if ($form->{transfer}) {
- $fx_transaction = qq|
- <th>&nbsp;</th>
-|;
- }
-
- print qq|
- <tr class=listtotal>
- <th>&nbsp;</th>
- $fx_transaction
- <th class=listtotal align=right>$form->{totaldebit}</th>
- <th class=listtotal align=right>$form->{totalcredit}</th>
- $project
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<br>
-|;
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
-
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-|;
-
- if (!$form->{locked}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
-|;
- }
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post as new').qq|">
-|;
-
- } else {
- if ($transdate > $closedto) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print "
- </form>
-
-</body>
-</html>
-";
-
-}
-
-
-sub delete {
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>|.$locale->text('Confirm!').qq|</h2>
-
-<h4>|.$locale->text('Are you sure you want to delete Transaction').qq| $form->{reference}</h4>
-
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-|;
-
-}
-
-
-sub yes {
-
- $form->redirect($locale->text('Transaction deleted!')) if (GL->delete_transaction(\%myconfig, \%$form));
- $form->error($locale->text('Cannot delete transaction!'));
-
-}
-
-
-sub post {
-
- # check if there is something in reference and date
- $form->isblank("reference", $locale->text('Reference missing!'));
- $form->isblank("transdate", $locale->text('Transaction Date missing!'));
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
-
- $form->error($locale->text('Cannot post transaction for a closed period!')) if ($transdate <= $closedto);
-
- # add up debits and credits
- if (!$form->{adjustment}) {
- for $i (1 .. $form->{rowcount}) {
- $debit += $form->parse_amount(\%myconfig, $form->{"debit_$i"});
- $credit += $form->parse_amount(\%myconfig, $form->{"credit_$i"});
- }
-
- if ($form->round_amount($debit, 2) != $form->round_amount($credit, 2)) {
- &post_adjustment;
- exit;
- }
- }
-
- $form->redirect($locale->text('Transaction posted!')) if GL->post_transaction(\%myconfig, \%$form);
- $form->error($locale->text('Cannot post transaction!'));
-
-}
-
-
-sub post_as_new {
-
- $form->{id} = 0;
- &post;
-
-}
-
-
-sub post_adjustment {
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=adjustment value=1>
-|;
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>|.$locale->text('Warning!').qq|</h2>
-
-<h4>|.$locale->text('Out of balance transaction!').qq|</h4>
-
-<input name=action class=submit type=submit value="|.$locale->text('Post').qq|">
-</form>
-|;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/hr.pl b/sql-ledger/bin/mozilla/hr.pl
deleted file mode 100644
index 497daa1..0000000
--- a/sql-ledger/bin/mozilla/hr.pl
+++ /dev/null
@@ -1,1217 +0,0 @@
-#=====================================================================
-# SQL-Ledger, Accounting
-# Copyright (c) 2004
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# payroll module
-#
-#======================================================================
-
-use SL::HR;
-use SL::User;
-
-1;
-# end of main
-
-
-
-sub add {
-
- $label = "Add ".ucfirst $form->{db};
- $form->{title} = $locale->text($label);
-
- $form->{callback} = "$form->{script}?action=add&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &{ "$form->{db}_links" };
-
-}
-
-
-sub search { &{ "search_$form->{db}" } };
-
-
-sub search_employee {
-
- $form->{title} = $locale->text('Employees');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Employee Number').qq|</th>
- <td colspan=3><input name=employeenumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Employee Name').qq|</th>
- <td colspan=3><input name=name size=35></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Startdate').qq|</th>
- <td><input name=startdate size=11 title="$myconfig{dateformat}" value=$form->{startdate}></td>
- <th>|.$locale->text('Enddate').qq|</th>
- <td><input name=enddate size=11 title="$myconfig{dateformat}" value=$form->{enddate}></td>
- </tr>
- <tr valign=top>
- <th align=right nowrap>|.$locale->text('Notes').qq|</th>
- <td colspan=3><input name=notes size=40></td>
- </tr>
- <tr>
- <td></td>
- <td colspan=3><input name=status class=radio type=radio value=all checked>&nbsp;|.$locale->text('All').qq|
- <input name=status class=radio type=radio value=sales>&nbsp;|.$locale->text('Sales').qq|
- <input name=status class=radio type=radio value=orphaned>&nbsp;|.$locale->text('Orphaned').qq|</td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <table>
- <tr>
- <td><input name="l_id" type=checkbox class=checkbox value=Y> |.$locale->text('ID').qq|</td>
- <td><input name="l_employeenumber" type=checkbox class=checkbox value=Y checked> |.$locale->text('Employee Number').qq|</td>
- <td><input name="l_name" type=checkbox class=checkbox value=Y checked> |.$locale->text('Employee Name').qq|</td>
- <td><input name="l_address" type=checkbox class=checkbox value=Y> |.$locale->text('Address').qq|</td>
- <td><input name="l_city" type=checkbox class=checkbox value=Y> |.$locale->text('City').qq|</td>
- </tr>
- <tr>
- <td><input name="l_state" type=checkbox class=checkbox value=Y> |.$locale->text('State/Province').qq|</td>
- <td><input name="l_zipcode" type=checkbox class=checkbox value=Y> |.$locale->text('Zip/Postal Code').qq|</td>
- <td><input name="l_country" type=checkbox class=checkbox value=Y> |.$locale->text('Country').qq|</td>
- <td><input name="l_workphone" type=checkbox class=checkbox value=Y checked> |.$locale->text('Work Phone').qq|</td>
- </tr>
- <tr>
- <td><input name="l_homephone" type=checkbox class=checkbox value=Y checked> |.$locale->text('Home Phone').qq|</td>
- <td><input name="l_startdate" type=checkbox class=checkbox value=Y checked> |.$locale->text('Startdate').qq|</td>
- <td><input name="l_enddate" type=checkbox class=checkbox value=Y checked> |.$locale->text('Enddate').qq|</td>
- <td><input name="l_sales" type=checkbox class=checkbox value=Y> |.$locale->text('Sales').qq|</td>
- </tr>
- <tr>
- <td><input name="l_manager" type=checkbox class=checkbox value=Y> |.$locale->text('Manager').qq|</td>
- <td><input name="l_role" type=checkbox class=checkbox value=Y checked> |.$locale->text('Role').qq|</td>
- <td><input name="l_login" type=checkbox class=checkbox value=Y checked> |.$locale->text('Login').qq|</td>
- <td><input name="l_email" type=checkbox class=checkbox value=Y> |.$locale->text('E-mail').qq|</td>
- </tr>
- <tr>
- <td><input name="l_ssn" type=checkbox class=checkbox value=Y> |.$locale->text('SSN').qq|</td>
- <td><input name="l_dob" type=checkbox class=checkbox value=Y> |.$locale->text('DOB').qq|</td>
- <td><input name="l_iban" type=checkbox class=checkbox value=Y> |.$locale->text('IBAN').qq|</td>
- <td><input name="l_bic" type=checkbox class=checkbox value=Y> |.$locale->text('BIC').qq|</td>
- <td><input name="l_notes" type=checkbox class=checkbox value=Y> |.$locale->text('Notes').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=list_employees>
-<input type=hidden name=db value=$form->{db}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-}
-
-
-sub list_employees {
-
- HR->employees(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=list_employees&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=list_employees&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- @columns = $form->sort_columns(qw(id employeenumber name address city state zipcode country workphone homephone email startdate enddate ssn dob iban bic sales role manager login notes));
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- %role = ( user => $locale->text('User'),
- supervisor => $locale->text('Supervisor'),
- manager => $locale->text('Manager'),
- admin => $locale->text('Administrator')
- );
-
- $option = $locale->text('All');
-
- if ($form->{status} eq 'sales') {
- $option = $locale->text('Sales');
- }
- if ($form->{status} eq 'orphaned') {
- $option = $locale->text('Orphaned');
- }
- if ($form->{employeenumber}) {
- $callback .= "&employeenumber=".$form->escape($form->{employeenumber},1);
- $href .= "&employeenumber=".$form->escape($form->{employeenumber});
- $option .= "\n<br>".$locale->text('Employee Number')." : $form->{employeenumber}";
- }
- if ($form->{name}) {
- $callback .= "&name=".$form->escape($form->{name},1);
- $href .= "&name=".$form->escape($form->{name});
- $option .= "\n<br>".$locale->text('Employee Name')." : $form->{name}";
- }
- if ($form->{startdate}) {
- $callback .= "&startdate=$form->{startdate}";
- $href .= "&startdate=$form->{startdate}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Startdate')."&nbsp;".$locale->date(\%myconfig, $form->{startdate}, 1);
- }
- if ($form->{enddate}) {
- $callback .= "&enddate=$form->{enddate}";
- $href .= "&enddate=$form->{enddate}";
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Enddate')."&nbsp;".$locale->date(\%myconfig, $form->{enddate}, 1);
- }
- if ($form->{notes}) {
- $callback .= "&notes=".$form->escape($form->{notes},1);
- $href .= "&notes=".$form->escape($form->{notes});
- $option .= "\n<br>" if $option;
- $option .= $locale->text('Notes')." : $form->{notes}";
- }
-
- $form->{callback} = "$callback&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
- $column_header{id} = qq|<th class=listheading>|.$locale->text('ID').qq|</th>|;
- $column_header{employeenumber} = qq|<th><a class=listheading href=$href&sort=employeenumber>|.$locale->text('Number').qq|</a></th>|;
- $column_header{name} = qq|<th><a class=listheading href=$href&sort=name>|.$locale->text('Name').qq|</a></th>|;
- $column_header{manager} = qq|<th><a class=listheading href=$href&sort=manager>|.$locale->text('Manager').qq|</a></th>|;
- $column_header{address} = qq|<th class=listheading>|.$locale->text('Address').qq|</a></th>|;
- $column_header{city} = qq|<th><a class=listheading href=$href&sort=city>|.$locale->text('City').qq|</a></th>|;
- $column_header{state} = qq|<th><a class=listheading href=$href&sort=state>|.$locale->text('State/Province').qq|</a></th>|;
- $column_header{zipcode} = qq|<th><a class=listheading href=$href&sort=zipcode>|.$locale->text('Zip/Postal Code').qq|</a></th>|;
- $column_header{country} = qq|<th><a class=listheading href=$href&sort=country>|.$locale->text('Country').qq|</a></th>|;
- $column_header{workphone} = qq|<th><a class=listheading href=$href&sort=workphone>|.$locale->text('Work Phone').qq|</a></th>|;
- $column_header{homephone} = qq|<th><a class=listheading href=$href&sort=homephone>|.$locale->text('Home Phone').qq|</a></th>|;
-
- $column_header{startdate} = qq|<th><a class=listheading href=$href&sort=startdate>|.$locale->text('Startdate').qq|</a></th>|;
- $column_header{enddate} = qq|<th><a class=listheading href=$href&sort=enddate>|.$locale->text('Enddate').qq|</a></th>|;
- $column_header{notes} = qq|<th><a class=listheading href=$href&sort=notes>|.$locale->text('Notes').qq|</a></th>|;
- $column_header{role} = qq|<th><a class=listheading href=$href&sort=role>|.$locale->text('Role').qq|</a></th>|;
- $column_header{login} = qq|<th><a class=listheading href=$href&sort=login>|.$locale->text('Login').qq|</a></th>|;
-
- $column_header{sales} = qq|<th class=listheading>|.$locale->text('S').qq|</th>|;
- $column_header{email} = qq|<th><a class=listheading href=$href&sort=email>|.$locale->text('E-mail').qq|</a></th>|;
- $column_header{ssn} = qq|<th><a class=listheading href=$href&sort=ssn>|.$locale->text('SSN').qq|</a></th>|;
- $column_header{dob} = qq|<th><a class=listheading href=$href&sort=dob>|.$locale->text('DOB').qq|</a></th>|;
- $column_header{iban} = qq|<th><a class=listheading href=$href&sort=iban>|.$locale->text('IBAN').qq|</a></th>|;
- $column_header{bic} = qq|<th><a class=listheading href=$href&sort=bic>|.$locale->text('BIC').qq|</a></th>|;
-
- $form->{title} = $locale->text('Employees');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- foreach $ref (@{ $form->{all_employee} }) {
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } @column_index;
-
- $column_data{sales} = ($ref->{sales}) ? "<td>x</td>" : "<td>&nbsp;</td>";
- $column_data{role} = qq|<td>$role{"$ref->{role}"}&nbsp;</td>|;
- $column_date{address} = qq|$ref->{address1} $ref->{address2}|;
-
- $column_data{name} = "<td><a href=$form->{script}?action=edit&db=employee&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}&callback=$callback>$ref->{name}&nbsp;</td>";
-
- if ($ref->{email}) {
- $email = $ref->{email};
- $email =~ s/</\&lt;/;
- $email =~ s/>/\&gt;/;
-
- $column_data{email} = qq|<td><a href="mailto:$ref->{email}">$email</a></td>|;
- }
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>
-";
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- $i = 1;
- $button{'HR--Employees--Add Employee'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Employee').qq|"> |;
- $button{'HR--Employees--Add Employee'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=db value=$form->{db}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub edit {
-
-# $locale->text('Edit Employee')
-# $locale->text('Edit Deduction')
-
- $label = ucfirst $form->{db};
- $form->{title} = "Edit $label";
-
- &{ "$form->{db}_links" };
-
-}
-
-
-sub employee_links {
-
-#$form->{deductions} = 1;
- HR->get_employee(\%myconfig, \%$form);
-
- map { $form->{$_} = $form->quote($form->{$_}) } keys %$form;
-
- if ($form->{all_deduction}) {
- $form->{selectdeduction} = "<option>\n";
- map { $form->{selectdeduction} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } @{ $form->{all_deduction} };
- }
-
- $form->{manager} = "$form->{manager}--$form->{managerid}";
-
- if ($form->{all_manager}) {
- $form->{selectmanager} = "<option>\n";
- map { $form->{selectmanager} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_manager} };
- }
-
- %role = ( user => $locale->text('User'),
- supervisor => $locale->text('Supervisor'),
- manager => $locale->text('Manager'),
- admin => $locale->text('Administrator')
- );
-
- $form->{selectrole} = "<option>\n";
- map { $form->{selectrole} .= "<option value=$_>$role{$_}\n" } qw(user supervisor manager admin);
-
- $i = 1;
- foreach $ref (@{ $form->{all_employeededuction} }) {
- $form->{"deduction_$i"} = "$ref->{description}--$ref->{id}";
- map { $form->{"${_}_$i"} = $ref->{$_} } qw(before after rate);
- $i++;
- }
- $form->{deduction_rows} = $i - 1;
-
- &employee_header;
- &employee_footer;
-
-}
-
-
-sub employee_header {
-
- $sales = qq|<input type=hidden name=sales value=$form->{sales}>|;
- $form->{sales} = ($form->{sales}) ? "checked" : "";
-
- $form->{selectrole} =~ s/ selected//;
- $form->{selectrole} =~ s/option value=\Q$form->{role}\E>/option value=$form->{role} selected>/;
-
- $form->{selectdeduction} = $form->unescape($form->{selectdeduction});
-
- $form->{selectmanager} = $form->unescape($form->{selectmanager});
- $form->{selectmanager} =~ s/ selected//;
- $form->{selectmanager} =~ s/(<option value="\Q$form->{manager}\E")/$1 selected/;
-
- $sales = qq|
-<input type=hidden name=role value=$form->{role}>
-<input type=hidden name=manager value=$form->{manager}>
-|;
-
- if ($myconfig{role} ne 'user') {
- $sales = qq|
- <tr>
- <th align=right>|.$locale->text('Sales').qq|</th>
- <td><input name=sales class=checkbox type=checkbox value=1 $form->{sales}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Role').qq|</th>
- <td><select name=role>$form->{selectrole}</select></td>
- </tr>
-|;
-
- if ($form->{selectmanager}) {
- $sales .= qq|
- <tr>
- <th align=right>|.$locale->text('Manager').qq|</th>
- <td><select name=manager>$form->{selectmanager}</select></td>
- </tr>
-|;
- }
- }
-
- $form->{deduction_rows}++;
-
- for ($i = 1; $i <= $form->{deduction_rows}; $i++) {
- $form->{"selectdeduction_$i"} = $form->{selectdeduction};
- if ($form->{"deduction_$i"}) {
- $form->{"selectdeduction_$i"} =~ s/(<option value="\Q$form->{"deduction_$i"}\E")/$1 selected/;
- }
- }
-
- $form->{selectdeduction} = $form->escape($form->{selectdeduction},1);
- $form->{selectmanager} = $form->escape($form->{selectmanager},1);
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=selectdeduction value="$form->{selectdeduction}">
-<input type=hidden name=deduction_rows value=$form->{deduction_rows}>
-
-<input type=hidden name=selectmanager value="$form->{selectmanager}">
-<input type=hidden name=selectrole value="$form->{selectrole}">
-
-<input type=hidden name=status value=$form->{status}>
-
-<input type=hidden name=title value="$form->{title}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Number').qq|</th>
- <td><input name=employeenumber size=32 maxlength=32 value="$form->{employeenumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Name').qq|</th>
- <td><input name=name size=35 maxlength=64 value="$form->{name}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Address').qq|</th>
- <td><input name=address1 size=35 maxlength=32 value="$form->{address1}"></td>
- </tr>
- <tr>
- <th></th>
- <td><input name=address2 size=35 maxlength=32 value="$form->{address2}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('City').qq|</th>
- <td><input name=city size=35 maxlength=32 value="$form->{city}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('State/Province').qq|</th>
- <td><input name=state size=35 maxlength=32 value="$form->{state}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Zip/Postal Code').qq|</th>
- <td><input name=zipcode size=10 maxlength=10 value="$form->{zipcode}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Country').qq|</th>
- <td><input name=country size=35 maxlength=32 value="$form->{country}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=35 value="$form->{email}"></td>
- </tr>
- <tr>
- $sales
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Work Phone').qq|</th>
- <td><input name=workphone size=20 maxlength=20 value="$form->{workphone}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Home Phone').qq|</th>
- <td><input name=homephone size=20 maxlength=20 value="$form->{homephone}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Startdate').qq|</th>
- <td><input name=startdate size=11 title="$myconfig{dateformat}" value=$form->{startdate}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Enddate').qq|</th>
- <td><input name=enddate size=11 title="$myconfig{dateformat}" value=$form->{enddate}></td>
- </tr>
-
- <tr>
- <th align=right nowrap>|.$locale->text('SSN').qq|</th>
- <td><input name=ssn size=20 maxlength=20 value="$form->{ssn}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('DOB').qq|</th>
- <td><input name=dob size=11 title="$myconfig{dateformat}" value=$form->{dob}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('IBAN').qq|</th>
- <td><input name=iban size=34 maxlength=34 value="$form->{iban}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('BIC').qq|</th>
- <td><input name=bic size=11 maxlength=11 value="$form->{bic}"></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <th align=left nowrap>|.$locale->text('Notes').qq|</th>
- </tr>
- <tr>
- <td><textarea name=notes rows=3 cols=60 wrap=soft>$form->{notes}</textarea></td>
- </tr>
-|;
-
- if ($form->{selectdeduction}) {
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
- <th class=listheading>|.$locale->text('Payroll Deduction').qq|</th>
- <th class=listheading colspan=3>|.$locale->text('Allowances').qq|</th>
- </tr>
-
- <tr class=listheading>
- <th></th>
- <th class=listheading>|.$locale->text('Before Deduction').qq|</th>
- <th class=listheading>|.$locale->text('After Deduction').qq|</th>
- <th class=listheading>|.$locale->text('Rate').qq|</th>
- </tr>
-|;
-
- for ($i = 1; $i <= $form->{deduction_rows}; $i++) {
- print qq|
- <tr>
- <td><select name="deduction_$i">$form->{"selectdeduction_$i"}</select></td>
- <td><input name="before_$i" value=|.$form->format_amount(\%myconfig, $form->{"before_$i"}, 2).qq|></td>
- <td><input name="after_$i" value=|.$form->format_amount(\%myconfig, $form->{"after_$i"}, 2).qq|></td>
- <td><input name="rate_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"rate_$i"}).qq|></td>
- </tr>
-|;
- }
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-
-sub employee_footer {
-
- print qq|
-<input name=id type=hidden value=$form->{id}>
-
-<input type=hidden name=db value=$form->{db}>
-<input type=hidden name=employeelogin value=$form->{employeelogin}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=callback value="$form->{callback}">
-
-<br>
-
-<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Save as new').qq|">\n|;
- if ($form->{status} eq 'orphaned') {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">\n|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save { &{ "save_$form->{db}" } };
-
-
-sub save_employee {
-
- $form->isblank("name", $locale->text("Name missing!"));
- HR->save_employee(\%myconfig, \%$form);
-
- # if it is a login change memberfile and .conf
- if ($form->{employeelogin}) {
- $user = new User $memberfile, $form->{employeelogin};
-
- map { $user->{$_} = $form->{$_} } qw(name email role);
- map { $user->{"old_$_"} = $user->{$_} } qw(dbpassword password);
-
- $user->save_member($memberfile, $userspath) if $user->{login};
- }
-
- $form->redirect($locale->text('Employee saved!'));
-
-}
-
-
-sub delete { &{ "delete_$form->{db}" } };
-
-
-sub delete_employee {
-
- HR->delete_employee(\%myconfig, \%$form);
- $form->redirect($locale->text('Employee deleted!'));
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
-sub add_employee { &add };
-sub add_deduction { &add };
-
-
-sub search_deduction {
-
- HR->deductions(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=search_deduction&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=search_deduction&direction=$form->{direction}&oldsort=$form->{oldsort}&db=$form->{db}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}";
-
- @column_index = $form->sort_columns(qw(description rate amount above below employeepays employerpays ap_accno expense_accno));
-
-
- $form->{callback} = $callback;
- $callback = $form->escape($form->{callback});
-
- $column_header{description} = qq|<th class=listheading href=$href>|.$locale->text('Description').qq|</th>|;
- $column_header{rate} = qq|<th class=listheading nowrap>|.$locale->text('Rate').qq|<br>%</th>|;
- $column_header{amount} = qq|<th class=listheading>|.$locale->text('Amount').qq|</th>|;
- $column_header{above} = qq|<th class=listheading>|.$locale->text('Above').qq|</th>|;
- $column_header{below} = qq|<th class=listheading>|.$locale->text('Below').qq|</th>|;
- $column_header{employerpays} = qq|<th class=listheading>|.$locale->text('Employer').qq|</th>|;
- $column_header{employeepays} = qq|<th class=listheading>|.$locale->text('Employee').qq|</th>|;
-
- $column_header{ap_accno} = qq|<th class=listheading>|.$locale->text('AP').qq|</th>|;
- $column_header{expense_accno} = qq|<th class=listheading>|.$locale->text('Expense').qq|</th>|;
-
- $form->{title} = $locale->text('Deductions');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- foreach $ref (@{ $form->{all_deduction} }) {
-
- $rate = $form->format_amount(\%myconfig, $ref->{rate} * 100, "", "&nbsp;");
-
- $column_data{rate} = "<td align=right>$rate</td>";
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{$_}, 2, "&nbsp;")."</td>" } qw(amount below above);
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } qw(ap_accno expense_accno);
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{$_}, "", "&nbsp;")."</td>" } qw(employerpays employeepays);
-
- if ($ref->{description} ne $sameitem) {
- $column_data{description} = "<td><a href=$form->{script}?action=edit&db=$form->{db}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{description}</a></td>";
- } else {
- $column_data{description} = "<td>&nbsp;</td>";
- }
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>
-";
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $sameitem = $ref->{description};
-
- }
-
- $i = 1;
- $button{'HR--Deductions--Add Deduction'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Deduction').qq|"> |;
- $button{'HR--Deductions--Add Deduction'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input type=hidden name=db value=$form->{db}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub deduction_links {
-
- HR->get_deduction(\%myconfig, \%$form);
-
- $i = 1;
- foreach $ref (@{ $form->{deductionrate} }) {
- map { $form->{"${_}_$i"} = $ref->{$_} } keys %$ref;
- $i++;
- }
- $form->{rate_rows} = $i - 1;
-
- $i = 1;
- foreach $ref (@{ $form->{deductionbase} }) {
- $form->{"base_$i"} = "$ref->{description}--$ref->{id}";
- $form->{"maximum_$i"} = $ref->{maximum};
- $i++;
- }
- $form->{base_rows} = $i - 1;
-
- $i = 1;
- foreach $ref (@{ $form->{deductionafter} }) {
- $form->{"after_$i"} = "$ref->{description}--$ref->{id}";
- $i++;
- }
- $form->{after_rows} = $i - 1;
-
- $form->{employeepays} = 1;
-
- $selectaccount = "<option>\n";
- map { $selectaccount .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{ap_accounts} };
-
- $form->{ap_accno} = qq|$form->{ap_accno}--$form->{ap_description}|;
- $form->{selectap} = $selectaccount;
-
- $selectaccount = "<option>\n";
- map { $selectaccount .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{expense_accounts} };
-
- $form->{expense_accno} = qq|$form->{expense_accno}--$form->{expense_description}|;
- $form->{selectexpense} = $selectaccount;
-
- map { $form->{"rate_$_"} *= 100 } (1 .. $form->{rate_rows});
-
- $form->{selectbase} = "<option>\n";
- map { $form->{selectbase} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } @{ $form->{all_deduction} };
-
- &deduction_header;
- &deduction_footer;
-
-}
-
-
-sub deduction_header {
-
- $selectap = $form->{selectap};
- $selectap =~ s/option>\Q$form->{ap_accno}\E/option selected>$form->{ap_accno}/;
- $selectexpense = $form->{selectexpense};
- $selectexpense =~ s/option>\Q$form->{expense_accno}\E/option selected>$form->{expense_accno}/;
-
-
- $form->{rate_rows}++;
- $form->{base_rows}++;
- $form->{after_rows}++;
-
- $form->{selectbase} = $form->unescape($form->{selectbase});
-
- for ($i = 1; $i <= $form->{base_rows}; $i++) {
- $form->{"selectbase_$i"} = $form->{selectbase};
- if ($form->{"base_$i"}) {
- $form->{"selectbase_$i"} =~ s/(<option value="\Q$form->{"base_$i"}\E")/$1 selected/;
- }
- }
- for ($i = 1; $i <= $form->{after_rows}; $i++) {
- $form->{"selectafter_$i"} = $form->{selectbase};
- if ($form->{"after_$i"}) {
- $form->{"selectafter_$i"} =~ s/(<option value="\Q$form->{"after_$i"}\E")/$1 selected/;
- }
- }
-
-
- $form->header;
-
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=title value="$form->{title}">
-
-<input type=hidden name=selectap value="$form->{selectap}">
-<input type=hidden name=selectexpense value="$form->{selectexpense}">
-<input type=hidden name=selectbase value="|.$form->escape($form->{selectbase},1).qq|">
-
-<input type=hidden name=rate_rows value=$form->{rate_rows}>
-<input type=hidden name=base_rows value=$form->{base_rows}>
-<input type=hidden name=after_rows value=$form->{after_rows}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Description').qq|</th>
- <td><input name=description size=35 value="$form->{description}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('AP').qq|</th>
- <td><select name=ap_accno>$selectap</select></td>
- <th align=right nowrap>|.$locale->text('Employee pays').qq| x</th>
- <td><input name=employeepays size=4 value=|.$form->format_amount(\%myconfig, $form->{employeepays}).qq|></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Expense').qq|</th>
- <td><select name=expense_accno>$selectexpense</select></td>
- <th align=right nowrap>|.$locale->text('Employer pays').qq| x</th>
- <td><input name=employerpays size=4 value=|.$form->format_amount(\%myconfig, $form->{employerpays}).qq|></td>
- </tr>
- <tr>
- <td></td>
- <td></td>
- <th align=right nowrap>|.$locale->text('Excempt age <').qq|</th>
- <td><input name=fromage size=4 value=|.$form->format_amount(\%myconfig, $form->{fromage}).qq|></td>
- <th align=right nowrap>|.$locale->text('>').qq|</th>
- <td><input name=toage size=4 value=|.$form->format_amount(\%myconfig, $form->{toage}).qq|>
- </tr>
- <tr>
- <td></td>
- <td>
- <table>
- <tr class=listheading>
- <th class=listheading>|.$locale->text('Rate').qq| %</th>
- <th class=listheading>|.$locale->text('Amount').qq|</th>
- <th class=listheading>|.$locale->text('Above').qq|</th>
- <th class=listheading>|.$locale->text('Below').qq|</th>
- </tr>
-|;
-
- for ($i = 1; $i <= $form->{rate_rows}; $i++) {
- print qq|
- <tr>
- <td><input name="rate_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"rate_$i"}).qq|></td>
- <td><input name="amount_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"amount_$i"}, 2).qq|></td>
- <td><input name="above_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"above_$i"}, 2).qq|></td>
- <td><input name="below_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"below_$i"}, 2).qq|></td>
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- print qq|
- <tr>
- <td>
- <table>
-|;
-
- $basedon = $locale->text('Based on');
- $maximum = $locale->text('Maximum');
-
- for ($i = 1; $i <= $form->{base_rows}; $i++) {
- print qq|
- <tr>
- <th>$basedon</th>
- <td><select name="base_$i">$form->{"selectbase_$i"}</select></td>
- <th>$maximum</th>
- <td><input name="maximum_$i" value=|.$form->format_amount(\%myconfig, $form->{"maximum_$i"}, 2).qq|></td>
- </tr>
-|;
- $basedon = "";
- $maximum = "";
- }
-
- $deductafter = $locale->text('Deduct after');
-
- for ($i = 1; $i <= $form->{after_rows}; $i++) {
- print qq|
- <tr>
- <th>$deductafter</th>
- <td><select name="after_$i">$form->{"selectafter_$i"}</select></td>
- </tr>
-|;
- $deductafter = "";
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-
-sub deduction_footer {
-
- print qq|
-<input name=id type=hidden value=$form->{id}>
-
-<input type=hidden name=db value=$form->{db}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=callback value="$form->{callback}">
-
-<br>
-
-<input class=submit type=submit name=action value="|.$locale->text("Update").qq|">
-<input class=submit type=submit name=action value="|.$locale->text("Save").qq|">
-|;
-
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Save as new').qq|">\n|;
-
- if ($form->{status} eq 'orphaned') {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">\n|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update { &{ "update_$form->{db}" }; }
-sub save { &{ "save_$form->{db}" } };
-
-
-sub update_deduction {
-
- # if rate or amount is blank remove row
- @flds = qw(rate amount above below);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{rate_rows}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } @flds;
- if ($form->{"rate_$i"} || $form->{"amount_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{rate_rows});
- $form->{rate_rows} = $count;
-
-
- @flds = qw(base maximum);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{"base_rows"}) {
- $form->{"maximum_$i"} = $form->parse_amount(\%myconfig, $form->{"maximum_$i"});
- if ($form->{"base_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{"base_rows"});
- $form->{"base_rows"} = $count;
-
-
- @flds = qw(after);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{"after_rows"}) {
- if ($form->{"after_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{"after_rows"});
- $form->{"after_rows"} = $count;
-
- &deduction_header;
- &deduction_footer;
-
-}
-
-
-sub update_employee {
-
- # if rate or amount is blank remove row
- @flds = qw(before after);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{deduction_rows}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } @flds;
- if ($form->{"deduction_$i"}) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{deduction_rows});
- $form->{deduction_rows} = $count;
-
- &employee_header;
- &employee_footer;
-
-}
-
-
-sub save_as_new {
-
- $form->{id} = 0;
- delete $form->{employeelogin};
-
- &save;
-
-}
-
-
-sub save_deduction {
-
- $form->isblank("description", $locale->text("Description missing!"));
-
- unless ($form->{"rate_1"} || $form->{"amount_1"}) {
- $form->isblank("rate_1", $locale->text("Rate missing!")) unless $form->{"amount_1"};
- $form->isblank("amount_1", $locale->text("Amount missing!"));
- }
-
- HR->save_deduction(\%myconfig, \%$form);
- $form->redirect($locale->text('Deduction saved!'));
-
-}
-
-
-sub delete_deduction {
-
- HR->delete_deduction(\%myconfig, \%$form);
- $form->redirect($locale->text('Deduction deleted!'));
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ic.pl b/sql-ledger/bin/mozilla/ic.pl
deleted file mode 100644
index f643c13..0000000
--- a/sql-ledger/bin/mozilla/ic.pl
+++ /dev/null
@@ -1,2706 +0,0 @@
-#=====================================================================
-# SQL-Ledger, Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory Control module
-#
-#======================================================================
-
-
-use SL::IC;
-
-require "$form->{path}/io.pl";
-
-1;
-# end of main
-
-
-
-sub add {
-
- %label = ( part => 'Part',
- service => 'Service',
- assembly => 'Assembly',
- labor => 'Labor/Overhead' );
-
-# $locale->text('Add Part')
-# $locale->text('Add Service')
-# $locale->text('Add Assembly')
-# $locale->text('Add Labor/Overhead')
-
- $label = "Add $label{$form->{item}}";
- $form->{title} = $locale->text($label);
-
- $form->{callback} = "$form->{script}?action=add&item=$form->{item}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- $form->{orphaned} = 1;
-
- if ($form->{previousform}) {
- $form->{callback} = "";
- }
-
- &link_part;
- &display_form;
-
-}
-
-
-sub search {
-
- $form->get_partsgroup(\%myconfig, { all => 0, searchitems => $form->{searchitems}});
-
- IC->get_warehouses(\%myconfig, \%$form) unless $form->{searchitems} =~ /(service|labor)/;
-
- if (@{ $form->{all_partsgroup} }) {
- $partsgroup = qq|<option>\n|;
-
- map { $partsgroup .= qq|<option value="$_->{partsgroup}--$_->{id}">$_->{partsgroup}\n| } @{ $form->{all_partsgroup} };
-
- $partsgroup = qq|
- <th align=right nowrap>|.$locale->text('Group').qq|</th>
- <td><select name=partsgroup>$partsgroup</select></td>
-|;
- }
-
- $l_listprice = qq|
- <td><input name=l_listprice class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('List Price').qq|</td>
-|;
- $l_sellprice = qq|
- <td><input name=l_sellprice class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Sell Price').qq|</td>
-|;
- $l_lastcost = qq|
- <td><input name=l_lastcost class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Cost').qq|</td>
-|;
- $l_linetotal = qq|
- <td><input name=l_linetotal class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Line Total').qq|</td>
-|;
- $l_curr = qq|
- <td><input name=l_curr class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Currency').qq|</td>
-|;
-
- $accrual = qq|
- <tr>
- <td colspan=4><input name=method class=radio type=radio value=accrual checked>|.$locale->text('Accrual').qq|
- &nbsp;<input name=method class=radio type=radio value=cash>|.$locale->text('Cash').qq|</td>
- </tr>
-|;
-
- $serialnumber = qq|
- <th align=right nowrap>|.$locale->text('Serial Number').qq|</th>
- <td><input name=serialnumber size=20></td>
-|;
-
- $l_serialnumber = qq|
- <td><input name=l_serialnumber class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Serial Number').qq|</td>
-|;
-
-
- if ($form->{searchitems} =~ /(part|assembly)/) {
-
- $onhand = qq|
- <input name=itemstatus class=radio type=radio value=onhand>&nbsp;|.$locale->text('On Hand').qq|
- <input name=itemstatus class=radio type=radio value=short>&nbsp;|.$locale->text('Short').qq|
-|;
-
- $makemodel = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Make').qq|</th>
- <td><input name=make size=20></td>
- <th align=right nowrap>|.$locale->text('Model').qq|</th>
- <td><input name=model size=20></td>
- </tr>
-|;
-
- $l_makemodel = qq|
- <td><input name=l_make class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Make').qq|</td>
- <td><input name=l_model class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Model').qq|</td>
-|;
-
- $l_bin = qq|
- <td><input name=l_bin class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Bin').qq|</td>|;
-
- $l_rop = qq|
- <td><input name=l_rop class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('ROP').qq|</td>|;
-
-
- $l_weight = qq|
- <td><input name=l_weight class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Weight').qq|</td>|;
-
-
- if (@{ $form->{all_warehouses} }) {
- $selectwarehouse = "<option>\n";
-
- map { $selectwarehouse .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_warehouses} });
-
- $warehouse = qq|
- <th align=right nowrap>|.$locale->text('Warehouse').qq|</th>
- <td><select name=warehouse>$selectwarehouse</select></td>
-|;
-
- $l_warehouse = qq|
- <td><input name=l_warehouse class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Warehouse').qq|</td>
-|;
-
-
- $drawing = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Drawing').qq|</th>
- <td><input name=drawing size=20></td>
- <th align=right nowrap>|.$locale->text('Microfiche').qq|</th>
- <td><input name=microfiche size=20></td>
- </tr>
-|;
-
- $l_drawing = qq|
- <tr>
- <td><input name=l_image class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Image').qq|</td>
- <td><input name=l_drawing class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Drawing').qq|</td>
- <td><input name=l_microfiche class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Microfiche').qq|</td>
- </tr>
-|;
-
- }
- }
-
- if ($form->{searchitems} eq 'assembly') {
-
- $toplevel = qq|
- <tr>
- <td></td>
- <td colspan=3>
- <input name=null class=radio type=radio value=1 checked>&nbsp;|.$locale->text('Top Level').qq|
- <input name=bom class=checkbox type=checkbox value=1>&nbsp;|.$locale->text('Individual Items').qq|
- </td>
- </tr>
-|;
-
- $bought = qq|
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <td>
- <table>
- <tr>
- <td><input name=sold class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Sales Invoices').qq|</td>
- </tr>
- <tr>
- <td colspan=2><hr size=1 noshade></td>
- </tr>
- <tr>
- <td><input name=ordered class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Sales Orders').qq|</td>
- </tr>
- <tr>
- <td colspan=4><hr size=1 noshade></td>
- </tr>
- <tr>
- <td><input name=quoted class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Quotations').qq|</td>
- </tr>
- </table>
- </td>
- <td width=5%>&nbsp;</td>
- <td>
- <table>
- $accrual
- <tr>
- <th>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <td colspan=4><input name=open class=checkbox type=checkbox value=1 checked>&nbsp;|.$locale->text('Open').qq|
- <input name=closed class=checkbox type=checkbox>&nbsp;|.$locale->text('Closed').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- } elsif ($form->{searchitems} eq 'component') {
-
- $warehouse = "";
- $serialnumber = "";
- $l_serialnumber = "";
- $l_warehouse = "";
-
- } elsif ($form->{searchitems} eq 'labor') {
-
- $warehouse = "";
- $serialnumber = "";
- $l_serialnumber = "";
- $l_sellprice = qq|
- <td><input name=l_sellprice class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Amount').qq|</td>
-|;
- $l_listprice = "";
- $l_lastcost = "";
-
- } else {
-
- $bought = qq|
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <td>
- <table>
- <tr>
- <td><input name=bought class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Vendor Invoices').qq|</td>
- <td><input name=sold class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Sales Invoices').qq|</td>
- </tr>
- <tr>
- <td colspan=4><hr size=1 noshade></td>
- </tr>
- <tr>
- <td><input name=onorder class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Purchase Orders').qq|</td>
- <td><input name=ordered class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Sales Orders').qq|</td>
- </tr>
- <tr>
- <td colspan=4><hr size=1 noshade></td>
- </tr>
- <tr>
- <td><input name=rfq class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('RFQ').qq|</td>
- <td><input name=quoted class=checkbox type=checkbox value=1></td>
- <td nowrap>|.$locale->text('Quotations').qq|</td>
- </tr>
- </table>
- </td>
- <td width=5%>&nbsp;</td>
- <td>
- <table>
- $accrual
- <tr>
- <th>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <td colspan=4><input name=open class=checkbox type=checkbox value=1 checked>&nbsp;|.$locale->text('Open').qq|
- <input name=closed class=checkbox type=checkbox>&nbsp;|.$locale->text('Closed').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-|;
- }
-
- %title = ( all => 'Items',
- part => 'Parts',
- labor => 'Labor/Overhead',
- service => 'Services',
- assembly => 'Assemblies',
- component => 'Components'
- );
-
-# $locale->text('Items')
-# $locale->text('Parts')
-# $locale->text('Labor/Overhead')
-# $locale->text('Services')
-# $locale->text('Assemblies')
-# $locale->text('Components')
-
- $form->{title} = $locale->text($title{$form->{searchitems}});
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=searchitems value=$form->{searchitems}>
-<input type=hidden name=title value="$form->{title}">
-
-<table width="100%">
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Number').qq|</th>
- <td><input name=partnumber size=20></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Description').qq|</th>
- <td colspan=3><input name=description size=40></td>
- </tr>
- <tr>
- $warehouse
- </tr>
- <tr>
- $partsgroup
- $serialnumber
- </tr>
- $makemodel
- $drawing
- $toplevel
- <tr>
- <td></td>
- <td colspan=3>
- <input name=itemstatus class=radio type=radio value=active checked>&nbsp;|.$locale->text('Active').qq|
- $onhand
- <input name=itemstatus class=radio type=radio value=obsolete>&nbsp;|.$locale->text('Obsolete').qq|
- <input name=itemstatus class=radio type=radio value=orphaned>&nbsp;|.$locale->text('Orphaned').qq|
- </td>
- </tr>
- $bought
- <tr>
- <td></td>
- <td colspan=3>
- <hr size=1 noshade>
- </td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <table>
- <tr>
- <td><input name=l_partnumber class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Number').qq|</td>
- <td><input name=l_description class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Description').qq|</td>
- $l_serialnumber
- <td><input name=l_unit class=checkbox type=checkbox value=Y checked>&nbsp;|.$locale->text('Unit of measure').qq|</td>
- <td><input name=l_priceupdate class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Updated').qq|</td>
- <td><input name=l_partsgroup class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Group').qq|</td>
- </tr>
- <tr>
- $l_listprice
- $l_sellprice
- $l_lastcost
- $l_linetotal
- $l_curr
- </tr>
- <tr>
- $l_bin
- $l_rop
- $l_weight
- </tr>
- $l_drawing
- <tr>
- $l_makemodel
- $l_warehouse
- </tr>
- <tr>
- <td><input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td colspan=4><hr size=3 noshade></td></tr>
-</table>
-
-<input type=hidden name=nextsub value=generate_report>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub generate_report {
-
- # setup $form->{sort}
- unless ($form->{sort}) {
- if ($form->{description} && !($form->{partnumber})) {
- $form->{sort} = "description";
- } else {
- $form->{sort} = "partnumber";
- }
- }
-
- $warehouse = $form->escape($form->{warehouse},1);
- $partsgroup = $form->escape($form->{partsgroup},1);
- $title = $form->escape($form->{title},1);
-
- $callback = "$form->{script}?action=generate_report&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&searchitems=$form->{searchitems}&itemstatus=$form->{itemstatus}&bom=$form->{bom}&l_linetotal=$form->{l_linetotal}&warehouse=$warehouse&partsgroup=$partsgroup&title=$title&method=$form->{method}";
-
-
- # if we have a serialnumber limit search
- if ($form->{serialnumber} || $form->{l_serialnumber}) {
- $form->{l_serialnumber} = "Y";
- unless ($form->{bought} || $form->{sold} || $form->{onorder} || $form->{ordered}) {
- if ($form->{searchitems} eq 'assembly') {
- $form->{sold} = $form->{ordered} = 1;
- } else {
- $form->{bought} = $form->{sold} = $form->{onorder} = $form->{ordered} = 1;
- }
- }
- }
-
-
- if ($form->{itemstatus} eq 'active') {
- $option .= $locale->text('Active')." : ";
- }
- if ($form->{itemstatus} eq 'obsolete') {
- $form->{onhand} = $form->{short} = 0;
- $form->{warehouse} = "";
- $form->{l_warehouse} = 0;
-
- $option .= $locale->text('Obsolete')." : ";
- }
- if ($form->{itemstatus} eq 'orphaned') {
- $form->{onhand} = $form->{short} = 0;
- $form->{bought} = $form->{sold} = 0;
- $form->{onorder} = $form->{ordered} = 0;
- $form->{rfq} = $form->{quoted} = 0;
-
- $form->{warehouse} = "";
- $form->{l_warehouse} = 0;
-
- $form->{transdatefrom} = $form->{transdateto} = "";
-
- $option .= $locale->text('Orphaned')." : ";
- }
- if ($form->{itemstatus} eq 'onhand') {
- $option .= $locale->text('On Hand')." : ";
- $form->{l_onhand} = "Y";
- }
- if ($form->{itemstatus} eq 'short') {
- $option .= $locale->text('Short')." : ";
- $form->{l_onhand} = "Y";
- $form->{l_rop} = "Y" unless $form->{searchitems} eq 'labor';
-
- $form->{warehouse} = "";
- $form->{l_warehouse} = 0;
- }
- if ($form->{onorder}) {
- $form->{l_ordnumber} = "Y";
- $callback .= "&onorder=$form->{onorder}";
- $option .= $locale->text('Purchase Order')." : ";
- }
- if ($form->{ordered}) {
- $form->{l_ordnumber} = "Y";
- $callback .= "&ordered=$form->{ordered}";
- $option .= $locale->text('Sales Order')." : ";
- }
- if ($form->{rfq}) {
- $form->{l_quonumber} = "Y";
- $callback .= "&rfq=$form->{rfq}";
- $option .= $locale->text('RFQ')." : ";
- }
- if ($form->{quoted}) {
- $form->{l_quonumber} = "Y";
- $callback .= "&quoted=$form->{quoted}";
- $option .= $locale->text('Quotation')." : ";
- }
- if ($form->{bought}) {
- $form->{l_invnumber} = "Y";
- $callback .= "&bought=$form->{bought}";
- $option .= $locale->text('Vendor Invoice')." : ";
- }
- if ($form->{sold}) {
- $form->{l_invnumber} = "Y";
- $callback .= "&sold=$form->{sold}";
- $option .= $locale->text('Sales Invoice')." : ";
- }
- if ($form->{sold} || $form->{bought}) {
- $label = ucfirst $form->{method};
- $option .= $locale->text($label) ." : ";
- }
-
- if ($form->{bought} || $form->{sold} || $form->{onorder} || $form->{ordered} || $form->{rfq} || $form->{quoted}) {
-
- # warehouse stuff is meaningless
- $form->{warehouse} = "";
- $form->{l_warehouse} = 0;
-
- $form->{l_lastcost} = "";
- $form->{l_name} = "Y";
- $form->{l_employee} = "Y";
-
-
- if ($form->{open}) {
- $callback .= "&open=$form->{open}";
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $callback .= "&closed=$form->{closed}";
- if ($form->{open}) {
- $option .= " : ".$locale->text('Closed');
- } else {
- $option .= $locale->text('Closed');
- }
- }
-
- if ($form->{transdatefrom}) {
- $callback .= "&transdatefrom=$form->{transdatefrom}";
- $option .= "\n<br>".$locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $callback .= "&transdateto=$form->{transdateto}";
- $option .= "\n<br>".$locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- }
-
- if ($form->{warehouse}) {
- ($warehouse) = split /--/, $form->{warehouse};
- $option .= "<br>".$locale->text('Warehouse')." : $warehouse";
- $form->{l_warehouse} = 0;
- }
-
- $option .= "<br>";
-
- if ($form->{partnumber}) {
- $callback .= "&partnumber=".$form->escape($form->{partnumber},1);
- $option .= $locale->text('Number').qq| : $form->{partnumber}<br>|;
- }
- if ($form->{partsgroup}) {
- ($partsgroup) = split /--/, $form->{partsgroup};
- $option .= $locale->text('Group').qq| : $partsgroup<br>|;
- }
- if ($form->{serialnumber}) {
- $callback .= "&serialnumber=".$form->escape($form->{serialnumber},1);
- $option .= $locale->text('Serial Number').qq| : $form->{serialnumber}<br>|;
- }
- if ($form->{description}) {
- $callback .= "&description=".$form->escape($form->{description},1);
- $description = $form->{description};
- $description =~ s/ /<br>/g;
- $option .= $locale->text('Description').qq| : $form->{description}<br>|;
- }
- if ($form->{make}) {
- $callback .= "&make=".$form->escape($form->{make},1);
- $option .= $locale->text('Make').qq| : $form->{make}<br>|;
- }
- if ($form->{model}) {
- $callback .= "&model=".$form->escape($form->{model},1);
- $option .= $locale->text('Model').qq| : $form->{model}<br>|;
- }
- if ($form->{drawing}) {
- $callback .= "&drawing=".$form->escape($form->{drawing},1);
- $option .= $locale->text('Drawing').qq| : $form->{drawing}<br>|;
- }
- if ($form->{microfiche}) {
- $callback .= "&microfiche=".$form->escape($form->{microfiche},1);
- $option .= $locale->text('Microfiche').qq| : $form->{microfiche}<br>|;
- }
-
-
- @columns = $form->sort_columns(qw(partnumber description assemblypartnumber partsgroup make model bin onhand rop unit listprice linetotallistprice sellprice linetotalsellprice lastcost linetotallastcost curr priceupdate weight image drawing microfiche invnumber ordnumber quonumber name employee serialnumber warehouse));
-
- if ($form->{l_linetotal}) {
- $form->{l_onhand} = "Y";
- $form->{l_linetotalsellprice} = "Y" if $form->{l_sellprice};
- $form->{l_linetotallastcost} = "Y" if $form->{l_lastcost};
- $form->{l_linetotallistprice} = "Y" if $form->{l_listprice};
- }
-
- if ($form->{searchitems} eq 'service') {
- # remove bin, weight and rop from list
- map { $form->{"l_$_"} = "" } qw(bin weight rop);
-
- $form->{l_onhand} = "";
- # qty is irrelevant unless bought or sold
- if ($form->{bought} || $form->{sold} || $form->{onorder} ||
- $form->{ordered} || $form->{rfq} || $form->{quoted}) {
- $form->{l_onhand} = "Y";
- } else {
- $form->{l_linetotalsellprice} = "";
- $form->{l_linetotallastcost} = "";
- }
- }
-
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to callback
- $callback .= "&l_$item=Y";
- }
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- }
-
-
- IC->all_parts(\%myconfig, \%$form);
-
- $callback .= "&direction=$form->{direction}&oldsort=$form->{oldsort}";
-
- $href = $callback;
-
- $form->sort_order();
-
- $callback =~ s/(direction=).*\&{1}/$1$form->{direction}\&/;
-
-
- if ($form->{searchitems} eq 'assembly' && $form->{l_partnumber}) {
- # replace partnumber with partnumber_
- $ndx = 0;
- foreach $item (@column_index) {
- $ndx++;
- last if $item eq 'partnumber';
- }
-
- splice @column_index, $ndx, 0, map { "partnumber_$_" } (1 .. $form->{pncol});
- $colspan = $form->{pncol} + 1;
- }
-
- if ($form->{searchitems} eq 'component') {
- if ($form->{l_partnumber}) {
- # splice it in after the partnumber
- $ndx = 0;
- foreach $item (@column_index) {
- $ndx++;
- last if $item eq 'partnumber';
- }
-
- @a = splice @column_index, 0, $ndx;
- unshift @column_index, "assemblypartnumber";
- unshift @column_index, @a;
- }
- }
-
- $column_header{partnumber} = qq|<th nowrap colspan=$colspan><a class=listheading href=$href&sort=partnumber>|.$locale->text('Number').qq|</a></th>|;
- $column_header{description} = qq|<th nowrap><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
- $column_header{partsgroup} = qq|<th nowrap><a class=listheading href=$href&sort=partsgroup>|.$locale->text('Group').qq|</a></th>|;
- $column_header{bin} = qq|<th><a class=listheading href=$href&sort=bin>|.$locale->text('Bin').qq|</a></th>|;
- $column_header{priceupdate} = qq|<th nowrap><a class=listheading href=$href&sort=priceupdate>|.$locale->text('Updated').qq|</a></th>|;
- $column_header{onhand} = qq|<th class=listheading nowrap>|.$locale->text('Qty').qq|</th>|;
- $column_header{unit} = qq|<th class=listheading nowrap>|.$locale->text('Unit').qq|</th>|;
- $column_header{listprice} = qq|<th class=listheading nowrap>|.$locale->text('List Price').qq|</th>|;
- $column_header{lastcost} = qq|<th class=listheading nowrap>|.$locale->text('Cost').qq|</th>|;
- $column_header{rop} = qq|<th class=listheading nowrap>|.$locale->text('ROP').qq|</th>|;
- $column_header{weight} = qq|<th class=listheading nowrap>|.$locale->text('Weight').qq|</th>|;
-
- $column_header{make} = qq|<th nowrap><a class=listheading href=$href&sort=make>|.$locale->text('Make').qq|</a></th>|;
- $column_header{model} = qq|<th nowrap><a class=listheading href=$href&sort=model>|.$locale->text('Model').qq|</a></th>|;
-
- $column_header{invnumber} = qq|<th nowrap><a class=listheading href=$href&sort=invnumber>|.$locale->text('Invoice Number').qq|</a></th>|;
- $column_header{ordnumber} = qq|<th nowrap><a class=listheading href=$href&sort=ordnumber>|.$locale->text('Order Number').qq|</a></th>|;
- $column_header{quonumber} = qq|<th nowrap><a class=listheading href=$href&sort=quonumber>|.$locale->text('Quotation').qq|</a></th>|;
-
- $column_header{name} = qq|<th nowrap><a class=listheading href=$href&sort=name>|.$locale->text('Name').qq|</a></th>|;
-
- $column_header{employee} = qq|<th nowrap><a class=listheading href=$href&sort=employee>|.$locale->text('Employee').qq|</a></th>|;
-
- $column_header{sellprice} = qq|<th class=listheading nowrap>|;
- $column_header{sellprice} .= ($form->{searchitems} ne 'labor') ? $locale->text('Sell Price') : $locale->text('Amount');
- $column_header{sellprice} .= qq|</th>|;
-
- $column_header{linetotalsellprice} = qq|<th class=listheading nowrap>|.$locale->text('Extended').qq|</th>|;
- $column_header{linetotallastcost} = qq|<th class=listheading nowrap>|.$locale->text('Extended').qq|</th>|;
- $column_header{linetotallistprice} = qq|<th class=listheading nowrap>|.$locale->text('Extended').qq|</th>|;
-
- $column_header{curr} = qq|<th class=listheading nowrap>|.$locale->text('Curr').qq|</th>|;
-
- $column_header{image} = qq|<th class=listheading nowrap>|.$locale->text('Image').qq|</a></th>|;
- $column_header{drawing} = qq|<th nowrap><a class=listheading href=$href&sort=drawing>|.$locale->text('Drawing').qq|</a></th>|;
- $column_header{microfiche} = qq|<th nowrap><a class=listheading href=$href&sort=microfiche>|.$locale->text('Microfiche').qq|</a></th>|;
-
- $column_header{serialnumber} = qq|<th nowrap><a class=listheading href=$href&sort=serialnumber>|.$locale->text('Serial Number').qq|</a></th>|;
-
- $column_header{assemblypartnumber} = qq|<th nowrap><a class=listheading href=$href&sort=assemblypartnumber>|.$locale->text('Assembly').qq|</a></th>|;
-
- $column_header{warehouse} = qq|<th nowrap class=listheading>|.$locale->text('Warehouse').qq|</th>|;
-
-
- $form->header;
-
- $i = 1;
- if ($form->{searchitems} eq 'part') {
- $button{'Goods & Services--Add Part'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Part').qq|"> |;
- $button{'Goods & Services--Add Part'}{order} = $i++;
- }
- if ($form->{searchitems} eq 'service') {
- $button{'Goods & Services--Add Service'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Service').qq|"> |;
- $button{'Goods & Services--Add Service'}{order} = $i++;
- }
- if ($form->{searchitems} eq 'assembly') {
- $button{'Goods & Services--Add Assembly'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Assembly').qq|"> |;
- $button{'Goods & Services--Add Assembly'}{order} = $i++;
- }
- if ($form->{searchitems} eq 'labor') {
- $button{'Goods & Services--Add Labor/Overhead'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Labor/Overhead').qq|"> |;
- $button{'Goods & Services--Add Labor/Overhead'}{order} = $i++;
- }
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
-
- <tr><td>$option</td></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
- |;
-
-
- # add order to callback
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- if (@{ $form->{parts} }) {
- $sameitem = $form->{parts}->[0]->{$form->{sort}};
- }
-
-
- foreach $ref (@{ $form->{parts} }) {
-
- if ($form->{l_subtotal} eq 'Y' && !$ref->{assemblyitem}) {
- if ($sameitem ne $ref->{$form->{sort}}) {
- &parts_subtotal;
- $sameitem = $ref->{$form->{sort}};
- }
- }
-
- $ref->{exchangerate} = 1 unless $ref->{exchangerate};
- $ref->{discount} *= 1;
- $ref->{sellprice} = $ref->{sellprice} * (1 - $ref->{discount});
- if ($form->{l_curr}) {
- if ($ref->{module} ne 'oe') {
- map { $ref->{$_} = $form->round_amount($ref->{$_} / $ref->{exchangerate}, 2) } qw(sellprice listprice lastcost);
- }
- } else {
- if ($ref->{module} eq 'oe') {
- map { $ref->{$_} = $form->round_amount($ref->{$_} * $ref->{exchangerate}, 2) } qw(sellprice listprice lastcost);
- }
- }
-
- # use this for assemblies
- $onhand = $ref->{onhand};
-
- $ref->{description} =~ s/ /<br>/g;
-
- map { $column_data{"partnumber_$_"} = "<td>&nbsp;</td>" } (1 .. $form->{pncol});
-
- $column_data{partnumber} = "<td><a href=$form->{script}?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partnumber}&nbsp;</a></td>";
-
- $column_data{assemblypartnumber} = "<td><a href=$form->{script}?action=edit&id=$ref->{assembly_id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{assemblypartnumber}&nbsp;</a></td>";
-
- if ($ref->{assemblyitem}) {
- $onhand = 0 if ($form->{sold});
-
- $column_data{partnumber} = "<td>&nbsp;</td>";
-
- $column_data{"partnumber_$ref->{stagger}"} = "<td><a href=$form->{script}?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partnumber}&nbsp;</a></td>";
-
- }
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } qw(description partsgroup employee curr);
-
- $column_data{onhand} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{onhand}, '', "&nbsp;")."</td>";
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{$_}, 2, "&nbsp;") . "</td>" } qw(sellprice listprice lastcost);
-
- $column_data{linetotalsellprice} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{onhand} * $ref->{sellprice}, 2, "&nbsp;")."</td>";
- $column_data{linetotallastcost} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{onhand} * $ref->{lastcost}, 2, "&nbsp;")."</td>";
- $column_data{linetotallistprice} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{onhand} * $ref->{listprice}, 2, "&nbsp;")."</td>";
-
- if ($ref->{assemblyitem} && $ref->{stagger} > 1) {
- map { $column_data{$_} = "<td>&nbsp;</td>" } qw(linetotalsellprice linetotallastcost linetotallistprice);
- }
-
- if (!$ref->{assemblyitem}) {
- $totalsellprice += $onhand * $ref->{sellprice};
- $totallastcost += $onhand * $ref->{lastcost};
- $totallistprice += $onhand * $ref->{listprice};
-
- $subtotalonhand += $onhand;
- $subtotalsellprice += $onhand * $ref->{sellprice};
- $subtotallastcost += $onhand * $ref->{lastcost};
- $subtotallistprice += $onhand * $ref->{listprice};
- }
-
- $column_data{rop} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{rop}, '', "&nbsp;")."</td>";
- $column_data{weight} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{weight}, '', "&nbsp;")."</td>";
- $column_data{unit} = "<td>$ref->{unit}&nbsp;</td>";
- $column_data{bin} = "<td>$ref->{bin}&nbsp;</td>";
- $column_data{priceupdate} = "<td>$ref->{priceupdate}&nbsp;</td>";
-
- $ref->{module} = 'ps' if $ref->{till};
- $column_data{invnumber} = ($ref->{module} ne 'oe') ? "<td><a href=$ref->{module}.pl?action=edit&type=invoice&id=$ref->{trans_id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{invnumber}&nbsp;</a></td>" : "<td>$ref->{invnumber}&nbsp;</td>";
- $column_data{ordnumber} = ($ref->{module} eq 'oe') ? "<td><a href=$ref->{module}.pl?action=edit&type=$ref->{type}&id=$ref->{trans_id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{ordnumber}&nbsp;</a></td>" : "<td>$ref->{ordnumber}&nbsp;</td>";
- $column_data{quonumber} = ($ref->{module} eq 'oe' && !$ref->{ordnumber}) ? "<td><a href=$ref->{module}.pl?action=edit&type=$ref->{type}&id=$ref->{trans_id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{quonumber}&nbsp;</a></td>" : "<td>$ref->{quonumber}&nbsp;</td>";
-
- $column_data{name} = "<td>$ref->{name}&nbsp;</td>";
-
- $column_data{image} = ($ref->{image}) ? "<td><a href=$ref->{image}><img src=$ref->{image} height=32 border=0></a></td>" : "<td>&nbsp;</td>";
- $column_data{drawing} = ($ref->{drawing}) ? "<td><a href=$ref->{drawing}>$ref->{drawing}</a></td>" : "<td>&nbsp;</td>";
- $column_data{microfiche} = ($ref->{microfiche}) ? "<td><a href=$ref->{microfiche}>$ref->{microfiche}</a></td>" : "<td>&nbsp;</td>";
-
- $column_data{make} = "<td>$ref->{make}&nbsp;</td>";
- $column_data{model} = "<td>$ref->{model}&nbsp;</td>";
-
- $column_data{serialnumber} = "<td>$ref->{serialnumber}&nbsp;</td>";
- $column_data{warehouse} = "<td>$ref->{warehouse}&nbsp;</td>";
-
- $i++; $i %= 2;
- print "<tr class=listrow$i>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
-
- if ($form->{l_subtotal} eq 'Y') {
- &parts_subtotal;
- }
-
- if ($form->{"l_linetotal"}) {
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- $column_data{linetotalsellprice} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalsellprice, 2, "&nbsp;")."</th>";
- $column_data{linetotallastcost} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totallastcost, 2, "&nbsp;")."</th>";
- $column_data{linetotallistprice} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totallistprice, 2, "&nbsp;")."</th>";
-
- print "<tr class=listtotal>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|</tr>
- |;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr><td><hr size=3 noshade></td></tr>
-</table>
-
-|;
-
- print qq|
-
-<br>
-
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=item value=$form->{searchitems}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub parts_subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
- $subtotalonhand = 0 if ($form->{searchitems} eq 'assembly' && $form->{bom});
-
- $column_data{onhand} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalonhand, '', "&nbsp;")."</th>";
-
- $column_data{linetotalsellprice} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalsellprice, 2, "&nbsp;")."</th>";
- $column_data{linetotallistprice} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotallistprice, 2, "&nbsp;")."</th>";
- $column_data{linetotallastcost} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotallastcost, 2, "&nbsp;")."</th>";
-
- $subtotalonhand = 0;
- $subtotalsellprice = 0;
- $subtotallistprice = 0;
- $subtotallastcost = 0;
-
- print "<tr class=listsubtotal>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-}
-
-
-
-sub edit {
-
- %label = ( part => 'Part',
- service => 'Service',
- assembly => 'Assembly',
- labor => 'Labor/Overhead' );
-
-# $locale->text('Edit Part')
-# $locale->text('Edit Service')
-# $locale->text('Edit Assembly')
-# $locale->text('Edit Labor/Overhead')
-
- IC->get_part(\%myconfig, \%$form);
-
- $label = "Edit $label{$form->{item}}";
- $form->{title} = $locale->text($label);
-
- &link_part;
-
- $form->{previousform} = $form->escape($form->{previousform}, 1) if $form->{previousform};
-
- &display_form;
-
-}
-
-
-
-sub link_part {
-
- IC->create_links("IC", \%myconfig, \%$form);
-
- # currencies
- map { $form->{selectcurrency} .= "<option>$_\n" } split /:/, $form->{currencies};
-
- # parts and assemblies have the same links
- $item = $form->{item};
-
- # readonly
- if ($form->{item} eq 'part') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Goods \& Services--Add Part/;
- }
- if ($form->{item} eq 'service') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Goods \& Services--Add Service/;
- }
- if ($form->{item} eq 'assembly') {
- $item = 'part';
- $form->{readonly} = 1 if $myconfig{acs} =~ /Goods \& Services--Add Assembly/;
- }
- if ($form->{item} eq 'labor') {
- $item = 'labor';
- $form->{readonly} = 1 if $myconfig{acs} =~ /Goods \& Services--Add Labor\/Overhead/;
- }
-
- # build the popup menus
- $form->{taxaccounts} = "";
- foreach $key (keys %{ $form->{IC_links} }) {
- foreach $ref (@{ $form->{IC_links}{$key} }) {
- # if this is a tax field
- if ($key =~ /IC_tax/) {
- if ($key =~ /$item/) {
- $form->{taxaccounts} .= "$ref->{accno} ";
- $form->{"IC_tax_$ref->{accno}_description"} = "$ref->{accno}--$ref->{description}";
-
- if ($form->{id}) {
- if ($form->{amount}{$ref->{accno}}) {
- $form->{"IC_tax_$ref->{accno}"} = "checked";
- }
- } else {
- $form->{"IC_tax_$ref->{accno}"} = "checked";
- }
- }
- } else {
-
- $form->{"select$key"} .= "<option>$ref->{accno}--$ref->{description}\n";
- if ($form->{amount}{$key} eq $ref->{accno}) {
- $form->{$key} = "$ref->{accno}--$ref->{description}";
- }
-
- }
- }
- }
- chop $form->{taxaccounts};
-
- if ($form->{item} !~ /service/) {
- $form->{selectIC_income} = $form->{selectIC_sale};
- $form->{selectIC_expense} = $form->{selectIC_cogs};
- $form->{IC_income} = $form->{IC_sale};
- $form->{IC_expense} = $form->{IC_cogs};
- }
-
- delete $form->{IC_links};
- delete $form->{amount};
-
- $form->get_partsgroup(\%myconfig, {all => 1});
- $form->{partsgroup} = "$form->{partsgroup}--$form->{partsgroup_id}";
-
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = qq|<option>\n|;
-
- map { $form->{selectpartsgroup} .= qq|<option value="$_->{partsgroup}--$_->{id}">$_->{partsgroup}\n| } @{ $form->{all_partsgroup} };
- }
-
- if ($form->{item} eq 'assembly') {
-
- foreach $i (1 .. $form->{assembly_rows}) {
- if ($form->{"partsgroup_id_$i"}) {
- $form->{"partsgroup_$i"} = qq|$form->{"partsgroup_$i"}--$form->{"partsgroup_id_$i"}|;
- }
- }
-
- $form->get_partsgroup(\%myconfig);
-
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectassemblypartsgroup} = qq|<option>\n|;
-
- map { $form->{selectassemblypartsgroup} .= qq|<option value="$_->{partsgroup}--$_->{id}">$_->{partsgroup}\n| } @{ $form->{all_partsgroup} };
- }
- }
-
- # setup make and models
- $i = 1;
- foreach $ref (@{ $form->{makemodels} }) {
- map { $form->{"${_}_$i"} = $ref->{$_} } qw(make model);
- $i++;
- }
- $form->{makemodel_rows} = $i - 1;
-
-
- # setup vendors
- if (@{ $form->{all_vendor} }) {
- $form->{selectvendor} = "<option>\n";
- map { $form->{selectvendor} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_vendor} };
- }
-
- # vendor matrix
- $i = 1;
- foreach $ref (@{ $form->{vendormatrix} }) {
- $form->{"vendor_$i"} = qq|$ref->{name}--$ref->{id}|;
-
- map { $form->{"${_}_$i"} = $ref->{$_} } qw(partnumber lastcost leadtime vendorcurr);
- $i++;
- }
- $form->{vendor_rows} = $i - 1;
-
- # setup customers and groups
- if (@{ $form->{all_customer} }) {
- $form->{selectcustomer} = "<option>\n";
- map { $form->{selectcustomer} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{all_customer} };
- }
-
- if (@{ $form->{all_pricegroup} }) {
- $form->{selectpricegroup} = "<option>\n";
- map { $form->{selectpricegroup} .= qq|<option value="$_->{pricegroup}--$_->{id}">$_->{pricegroup}\n| } @{ $form->{all_pricegroup} };
- }
-
- $i = 1;
- # customer matrix
- foreach $ref (@{ $form->{customermatrix} }) {
-
- $form->{"customer_$i"} = "$ref->{name}--$ref->{cid}" if $ref->{cid};
- $form->{"pricegroup_$i"} = "$ref->{pricegroup}--$ref->{gid}" if $ref->{gid};
-
- map { $form->{"${_}_$i"} = $ref->{$_} } qw(validfrom validto pricebreak customerprice customercurr);
-
- $i++;
-
- }
- $form->{customer_rows} = $i - 1;
-
-}
-
-
-
-sub form_header {
-
- ($dec) = ($form->{sellprice} =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if ($form->{lastcost} > 0) {
- $markup = $form->round_amount((($form->{sellprice}/$form->{lastcost} - 1) * 100), 1);
- $form->{markup} = $form->format_amount(\%myconfig, $markup, 1);
- }
-
- map { $form->{$_} = $form->format_amount(\%myconfig, $form->{$_}, $decimalplaces)} qw(listprice sellprice);
-
- ($dec) = ($form->{lastcost} =~ /\.(\d+)/);
- $dec = length $dec;
- my $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{lastcost} = $form->format_amount(\%myconfig, $form->{lastcost}, $decimalplaces);
-
- map { $form->{$_} = $form->format_amount(\%myconfig, $form->{$_}) } qw(weight rop stock);
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(partnumber description unit notes);
-
- if (($rows = $form->numtextrows($form->{notes}, 40)) < 2) {
- $rows = 2;
- }
-
- $notes = qq|<textarea name=notes rows=$rows cols=40 wrap=soft>$form->{notes}</textarea>|;
-
- if (($rows = $form->numtextrows($form->{description}, 40)) > 1) {
- $description = qq|<textarea name="description" rows=$rows cols=40 wrap=soft>$form->{description}</textarea>|;
- } else {
- $description = qq|<input name=description size=40 value="$form->{description}">|;
- }
-
- foreach $item (split / /, $form->{taxaccounts}) {
- $form->{"IC_tax_$item"} = ($form->{"IC_tax_$item"}) ? "checked" : "";
- }
-
-
- # set option
- foreach $item (qw(IC IC_income IC_expense)) {
- if ($form->{$item}) {
- if ($form->{orphaned}) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- } else {
- $form->{"select$item"} = qq|<option selected>$form->{$item}|;
- }
- }
- }
-
- if ($form->{selectpartsgroup}) {
- $form->{selectpartsgroup} = $form->unescape($form->{selectpartsgroup});
-
- $partsgroup = qq|<input type=hidden name=selectpartsgroup value="|.$form->escape($form->{selectpartsgroup},1).qq|">|;
-
- $form->{selectpartsgroup} =~ s/(<option value="\Q$form->{partsgroup}\E")/$1 selected/;
-
- $partsgroup .= qq|<select name=partsgroup>$form->{selectpartsgroup}</select>|;
- $group = $locale->text('Group');
- }
-
- # tax fields
- foreach $item (split / /, $form->{taxaccounts}) {
- $tax .= qq|
- <input class=checkbox type=checkbox name="IC_tax_$item" value=1 $form->{"IC_tax_$item"}>&nbsp;<b>$form->{"IC_tax_${item}_description"}</b>
- <br><input type=hidden name=IC_tax_${item}_description value="$form->{"IC_tax_${item}_description"}">
-|;
- }
-
- $form->{obsolete} = "checked" if $form->{obsolete};
-
- $sellprice = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('List Price').qq|</th>
- <td><input name=listprice size=11 value=$form->{listprice}></td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Sell Price').qq|</th>
- <td><input name=sellprice size=11 value=$form->{sellprice}></td>
- </tr>
-|;
-
- $lastcost = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Cost').qq|</th>
- <td><input name=lastcost size=11 value=$form->{lastcost}></td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Markup').qq| %</th>
- <td><input name=markup size=5 value=$form->{markup}></td>
- <input type=hidden name=oldmarkup value=$markup>
- </tr>
-|;
-
- if ($form->{item} eq "part") {
-
- $linkaccounts = qq|
- <tr>
- <th align=right>|.$locale->text('Inventory').qq|</th>
- <td><select name=IC>$form->{selectIC}</select></td>
- <input name=selectIC type=hidden value="$form->{selectIC}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Income').qq|</th>
- <td><select name=IC_income>$form->{selectIC_income}</select></td>
- <input name=selectIC_income type=hidden value="$form->{selectIC_income}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('COGS').qq|</th>
- <td><select name=IC_expense>$form->{selectIC_expense}</select></td>
- <input name=selectIC_expense type=hidden value="$form->{selectIC_expense}">
- </tr>
-|;
-
- if ($tax) {
- $linkaccounts .= qq|
- <tr>
- <th align=right>|.$locale->text('Tax').qq|</th>
- <td>$tax</td>
- </tr>
-|;
- }
-
- $weight = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Weight').qq|</th>
- <td>
- <table>
- <tr>
- <td>
- <input name=weight size=10 value=$form->{weight}>
- </td>
- <th>
- &nbsp;
- $form->{weightunit}
- <input type=hidden name=weightunit value=$form->{weightunit}>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- }
-
-
- if ($form->{item} eq "assembly") {
-
- $lastcost = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Cost').qq|</th>
- <td><input type=hidden name=lastcost value=$form->{lastcost}>$form->{lastcost}</td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Markup').qq| %</th>
- <td><input name=markup size=5 value=$form->{markup}></td>
- <input type=hidden name=oldmarkup value=$markup>
- </tr>
-|;
-
- $linkaccounts = qq|
-<!--
- <tr>
- <th align=right>|.$locale->text('Inventory').qq|</th>
- <td><select name=IC>$form->{selectIC}</select></td>
- <input name=selectIC type=hidden value="$form->{selectIC}">
- </tr>
--->
- <tr>
- <th align=right>|.$locale->text('Income').qq|</th>
- <td><select name=IC_income>$form->{selectIC_income}</select></td>
- <input name=selectIC_income type=hidden value="$form->{selectIC_income}">
- </tr>
-|;
-
- if ($tax) {
- $linkaccounts .= qq|
- <tr>
- <th align=right>|.$locale->text('Tax').qq|</th>
- <td>$tax</td>
- </tr>
-|;
- }
-
- $weight = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Weight').qq|</th>
- <td>
- <table>
- <tr>
- <td>
- &nbsp;$form->{weight}
- <input type=hidden name=weight value=$form->{weight}>
- </td>
- <th>
- &nbsp;
- $form->{weightunit}
- <input type=hidden name=weightunit value=$form->{weightunit}>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- }
-
-
- if ($form->{item} eq "service") {
-
- $linkaccounts = qq|
- <tr>
- <th align=right>|.$locale->text('Income').qq|</th>
- <td><select name=IC_income>$form->{selectIC_income}</select></td>
- <input name=selectIC_income type=hidden value="$form->{selectIC_income}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Expense').qq|</th>
- <td><select name=IC_expense>$form->{selectIC_expense}</select></td>
- <input name=selectIC_expense type=hidden value="$form->{selectIC_expense}">
- </tr>
-|;
-
- if ($tax) {
- $linkaccounts .= qq|
- <tr>
- <th align=right>|.$locale->text('Tax').qq|</th>
- <td>$tax</td>
- </tr>
-|;
- }
-
- }
-
- if ($form->{item} eq "labor") {
- $lastcost = "";
- $sellprice = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Amount').qq|</th>
- <td><input name=sellprice size=11 value=$form->{sellprice}></td>
- </tr>
-|;
-
- $linkaccounts = qq|
- <tr>
- <th align=right>|.$locale->text('Labor/Overhead').qq|</th>
- <td><select name=IC>$form->{selectIC}</select></td>
- <input name=selectIC type=hidden value="$form->{selectIC}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Expense').qq|</th>
- <td><select name=IC_expense>$form->{selectIC_expense}</select></td>
- <input name=selectIC_expense type=hidden value="$form->{selectIC_expense}">
- </tr>
-|;
-
- }
-
-
- if ($form->{item} =~ /(part|assembly)/) {
- $n = ($form->{onhand} > 0) ? "1" : "0";
- $rop = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('On Hand').qq|</th>
- <th align=left nowrap class="plus$n">&nbsp;|.$form->format_amount(\%myconfig, $form->{onhand}).qq|</th>
- </tr>
-|;
-
- if ($form->{item} eq 'assembly') {
- $rop .= qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Stock').qq|</th>
- <td><input name=stock size=10 value=$form->{stock}></td>
- </tr>
-|;
- }
-
- $rop .= qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('ROP').qq|</th>
- <td><input name=rop size=10 value=$form->{rop}></td>
- </tr>
-|;
-
- $bin = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Bin').qq|</th>
- <td><input name=bin size=10 value=$form->{bin}></td>
- </tr>
-|;
-
- $imagelinks = qq|
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right nowrap>|.$locale->text('Image').qq|</th>
- <td><input name=image size=40 value="$form->{image}"></td>
- <th align=right nowrap>|.$locale->text('Microfiche').qq|</th>
- <td><input name=microfiche size=20 value="$form->{microfiche}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Drawing').qq|</th>
- <td><input name=drawing size=40 value="$form->{drawing}"></td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- }
-
- if ($form->{id}) {
- $obsolete = qq|
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Obsolete').qq|</th>
- <td><input name=obsolete type=checkbox class=checkbox value=1 $form->{obsolete}></td>
- </tr>
-|;
- }
-
-
-# type=submit $locale->text('Edit Part')
-# type=submit $locale->text('Edit Service')
-# type=submit $locale->text('Edit Assembly')
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=item value=$form->{item}>
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=makemodel value="$form->{makemodel}">
-<input type=hidden name=alternate value="$form->{alternate}">
-<input type=hidden name=onhand value=$form->{onhand}>
-<input type=hidden name=orphaned value=$form->{orphaned}>
-<input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-<input type=hidden name=rowcount value=$form->{rowcount}>
-<input type=hidden name=baseassembly value=$form->{baseassembly}>
-
-<table width="100%">
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width="100%">
- <tr valign=top>
- <th align=left>|.$locale->text('Number').qq|</th>
- <th align=left>|.$locale->text('Description').qq|</th>
- <th align=left>$group</th>
- </tr>
- <tr valign=top>
- <td><input name=partnumber value="$form->{partnumber}" size=20></td>
- <td>$description</td>
- <td>$partsgroup</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width="100%" height="100%">
- <tr valign=top>
- <td width=70%>
- <table width="100%" height="100%">
- <tr class="listheading">
- <th class="listheading" align="center" colspan=2>|.$locale->text('Link Accounts').qq|</th>
- </tr>
- $linkaccounts
- <tr>
- <th align="left">|.$locale->text('Notes').qq|</th>
- </tr>
- <tr>
- <td colspan=2>
- $notes
- </td>
- </tr>
- </table>
- </td>
- <td width="30%">
- <table width="100%">
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Updated').qq|</th>
- <td><input name=priceupdate size=11 title="$myconfig{dateformat}" value=$form->{priceupdate}></td>
- </tr>
- $sellprice
- $lastcost
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Unit').qq|</th>
- <td><input name=unit size=5 value="$form->{unit}"></td>
- </tr>
- $weight
- $rop
- $bin
- $obsolete
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- $imagelinks
-|;
-}
-
-
-sub form_footer {
-
- print qq|
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=customer_rows value=$form->{customer_rows}>
-|;
-
-
- if ($form->{item} =~ /(part|assembly)/) {
- print qq|
- <input type=hidden name=makemodel_rows value=$form->{makemodel_rows}>
-|;
- }
-
- if ($form->{item} =~ /(part|service)/) {
- print qq|
- <input type=hidden name=vendor_rows value=$form->{vendor_rows}>
-|;
- }
-
-
- if (! $form->{readonly}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Save').qq|">|;
-
- if ($form->{id}) {
-
- if (!$form->{isassemblyitem}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Save as new').qq|">|;
- }
-
- if ($form->{orphaned}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- &assembly_row(++$form->{assembly_rows}) if $form->{item} eq 'assembly';
-
- print qq|
-
- <input type=hidden name=path value=$form->{path}>
- <input type=hidden name=login value=$form->{login}>
- <input type=hidden name=sessionid value=$form->{sessionid}>
- <input type=hidden name=callback value="$form->{callback}">
- <input type=hidden name=previousform value="$form->{previousform}">
- <input type=hidden name=isassemblyitem value=$form->{isassemblyitem}>
-
-</form>
-
-<a name="end"></a>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub makemodel_row {
- my ($numrows) = @_;
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(make model);
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th class="listheading">|.$locale->text('Make').qq|</th>
- <th class="listheading">|.$locale->text('Model').qq|</th>
- </tr>
-|;
-
- for $i (1 .. $numrows) {
- print qq|
- <tr>
- <td><input name="make_$i" size=30 value="$form->{"make_$i"}"></td>
- <td><input name="model_$i" size=30 value="$form->{"model_$i"}"></td>
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub vendor_row {
- my ($numrows) = @_;
-
- $form->{selectvendor} = $form->unescape($form->{selectvendor});
- print qq|
- <input type=hidden name=selectvendor value="|.$form->escape($form->{selectvendor},1).qq|">
-
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th class="listheading">|.$locale->text('Vendor').qq|</th>
- <th class="listheading">|.$locale->text('Number').qq|</th>
- <th class="listheading">|.$locale->text('Cost').qq|</th>
- <th class="listheading">|.$locale->text('Curr').qq|</th>
- <th class="listheading">|.$locale->text('Leadtime').qq|</th>
- </tr>
-|;
-
- for $i (1 .. $numrows) {
-
- $form->{selectcurrency} =~ s/ selected//;
-
- if ($i == $numrows) {
-
- $vendor = qq|
- <td><input name="vendor_$i" size=35 value="$form->{"vendor_$i"}"></td>
-|;
-
- if ($form->{selectvendor}) {
- $vendor = qq|
- <td width=99%><select name="vendor_$i">$form->{selectvendor}</select></td>
-|;
- }
-
- } else {
-
- $form->{selectcurrency} =~ s/option>$form->{"vendorcurr_$i"}/option selected>$form->{"vendorcurr_$i"}/;
-
- ($vendor) = split /--/, $form->{"vendor_$i"};
- $vendor = qq|
- <td>$vendor
- <input type=hidden name="vendor_$i" value="$form->{"vendor_$i"}">
- </td>
-|;
-
- }
-
- print qq|
- <tr>
- $vendor
- <td><input name="partnumber_$i" size=20 value="$form->{"partnumber_$i"}"></td>
- <td><input name="lastcost_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"lastcost_$i"}, 2).qq|></td>
- <td><select name="vendorcurr_$i">$form->{selectcurrency}</select></td>
- <td nowrap><input name="leadtime_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"leadtime_$i"}).qq|> <b>|.$locale->text('days').qq|</b></td>
- </tr>
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-sub customer_row {
- my ($numrows) = @_;
-
- if ($form->{selectpricegroup}) {
- $pricegroup = qq|
- <th class="listheading">|.$locale->text('Pricegroup').qq|
- </th>
-|;
- }
-
- $form->{selectcustomer} = $form->unescape($form->{selectcustomer});
- $form->{selectpricegroup} = $form->unescape($form->{selectpricegroup});
-
- print qq|
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=selectcustomer value="|.$form->escape($form->{selectcustomer},1).qq|">
- <input type=hidden name=selectpricegroup value="|.$form->escape($form->{selectpricegroup},1).qq|">
-
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th class="listheading">|.$locale->text('Customer').qq|</th>
- $pricegroup
- <th class="listheading">|.$locale->text('Break').qq|</th>
- <th class="listheading">|.$locale->text('Sell Price').qq|</th>
- <th class="listheading">|.$locale->text('Curr').qq|</th>
- <th class="listheading">|.$locale->text('From').qq|</th>
- <th class="listheading">|.$locale->text('To').qq|</th>
- </tr>
-|;
-
- for $i (1 .. $numrows) {
-
- $form->{selectcurrency} =~ s/ selected//;
- $form->{selectcurrency} =~ s/option>$form->{"customercurr_$i"}/option selected>$form->{"customercurr_$i"}/;
-
- if ($i == $numrows) {
- $customer = qq|
- <td><input name="customer_$i" size=35 value="$form->{"customer_$i"}"></td>
- |;
-
- if ($form->{selectcustomer}) {
- $customer = qq|
- <td><select name="customer_$i">$form->{selectcustomer}</select></td>
-|;
- }
-
- if ($form->{selectpricegroup}) {
- $pricegroup = qq|
- <td><select name="pricegroup_$i">$form->{selectpricegroup}</select></td>
-|;
- }
-
- } else {
- ($customer) = split /--/, $form->{"customer_$i"};
- $customer = qq|
- <td>$customer</td>
- <input type=hidden name="customer_$i" value="$form->{"customer_$i"}">
- |;
-
- if ($form->{selectpricegroup}) {
- ($pricegroup) = split /--/, $form->{"pricegroup_$i"};
- $pricegroup = qq|
- <td>$pricegroup</td>
- <input type=hidden name="pricegroup_$i" value="$form->{"pricegroup_$i"}">
-|;
- }
- }
-
-
- print qq|
- <tr>
- $customer
- $pricegroup
-
- <td><input name="pricebreak_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"pricebreak_$i"}).qq|></td>
- <td><input name="customerprice_$i" size=10 value=|.$form->format_amount(\%myconfig, $form->{"customerprice_$i"}, 2).qq|></td>
- <td><select name="customercurr_$i">$form->{selectcurrency}</select></td>
- <td><input name="validfrom_$i" size=11 title="$myconfig{dateformat}" value="$form->{"validfrom_$i"}"></td>
- <td><input name="validto_$i" size=11 title="$myconfig{dateformat}" value="$form->{"validto_$i"}"></td>
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
-|;
-
-}
-
-
-
-sub assembly_row {
- my ($numrows) = @_;
-
- @column_index = qw(runningnumber qty unit bom adj partnumber description listprice sellprice lastcost);
-
- if ($form->{selectassemblypartsgroup}) {
- $form->{selectassemblypartsgroup} = $form->unescape($form->{selectassemblypartsgroup});
- @column_index = qw(runningnumber qty unit bom adj partnumber description partsgroup listprice sellprice lastcost);
- }
-
- delete $form->{previousform};
-
- # change callback
- $form->{old_callback} = $form->{callback};
- $callback = $form->{callback};
- $form->{callback} = "$form->{script}?action=display_form";
-
- # delete action
- map { delete $form->{$_} } qw(action header);
-
- $form->{baseassembly} = 0;
- $previousform = "";
- # save form variables in a previousform variable
- foreach $key (sort keys %$form) {
- # escape ampersands
- $form->{$key} =~ s/&/%26/g;
- $previousform .= qq|$key=$form->{$key}&|;
- }
- chop $previousform;
- $form->{previousform} = $form->escape($previousform, 1);
-
- $form->{sellprice} = 0;
- $form->{listprice} = 0;
- $form->{lastcost} = 0;
- $form->{weight} = 0;
-
- $form->{callback} = $callback;
-
-
- $column_header{runningnumber} = qq|<th nowrap width=5%>|.$locale->text('No.').qq|</th>|;
- $column_header{qty} = qq|<th align=left nowrap width=10%>|.$locale->text('Qty').qq|</th>|;
- $column_header{unit} = qq|<th align=left nowrap width=5%>|.$locale->text('Unit').qq|</th>|;
- $column_header{partnumber} = qq|<th align=left nowrap width=20%>|.$locale->text('Number').qq|</th>|;
- $column_header{description} = qq|<th nowrap width=50%>|.$locale->text('Description').qq|</th>|;
- $column_header{sellprice} = qq|<th align=right nowrap>|.$locale->text('Sell').qq|</th>|;
- $column_header{listprice} = qq|<th align=right nowrap>|.$locale->text('List').qq|</th>|;
- $column_header{lastcost} = qq|<th align=right nowrap>|.$locale->text('Cost').qq|</th>|;
- $column_header{bom} = qq|<th>|.$locale->text('BOM').qq|</th>|;
- $column_header{adj} = qq|<th>|.$locale->text('A').qq|</th>|;
- $column_header{partsgroup} = qq|<th>|.$locale->text('Group').qq|</th>|;
-
- print qq|
- <p>
-
- <table width=100%>
- <tr class=listheading>
- <th class=listheading>|.$locale->text('Individual Items').qq|</th>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- for $i (1 .. $numrows) {
- $form->{"partnumber_$i"} = $form->quote($form->{"partnumber_$i"});
-
- $linetotalsellprice = $form->round_amount($form->{"sellprice_$i"} * $form->{"qty_$i"}, 2);
- $form->{sellprice} += $linetotalsellprice;
-
- $linetotallistprice = $form->round_amount($form->{"listprice_$i"} * $form->{"qty_$i"}, 2);
- $form->{listprice} += $linetotallistprice;
-
- $linetotallastcost = $form->round_amount($form->{"lastcost_$i"} * $form->{"qty_$i"}, 2);
- $form->{lastcost} += $linetotallastcost;
-
-
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
-
- $linetotalsellprice = $form->format_amount(\%myconfig, $linetotalsellprice, 2);
- $linetotallistprice = $form->format_amount(\%myconfig, $linetotallistprice, 2);
- $linetotallastcost = $form->format_amount(\%myconfig, $linetotallastcost, 2);
-
- if ($i == $numrows) {
-
- map { $column_data{$_} = qq|<td></td>| } qw(runningnumber unit bom adj);
-
- $column_data{qty} = qq|<td><input name="qty_$i" size=5 value="$form->{"qty_$i"}"></td>|;
- $column_data{partnumber} = qq|<td><input name="partnumber_$i" size=15 value="$form->{"partnumber_$i"}"></td>|;
- $column_data{description} = qq|<td><input name="description_$i" size=30 value="$form->{"description_$i"}"></td>|;
- $column_data{partsgroup} = qq|<td><select name="partsgroup_$i">$form->{selectassemblypartsgroup}</select></td>|;
-
- } else {
-
- $column_data{partnumber} = qq|<td><input class=submit type=submit name=action value=" $form->{"partnumber_$i"}"></td>
- <input type=hidden name="partnumber_$i" value="$form->{"partnumber_$i"}">|;
-
- $column_data{runningnumber} = qq|<td><input name="runningnumber_$i" size=3 value="$i"></td>|;
- $column_data{qty} = qq|<td><input name="qty_$i" size=5 value="$form->{"qty_$i"}"></td>|;
-
- map { $form->{"${_}_$i"} = ($form->{"${_}_$i"}) ? "checked" : "" } qw(bom adj);
- $column_data{bom} = qq|<td align=center><input name="bom_$i" type=checkbox class=checkbox value=1 $form->{"bom_$i"}></td>|;
- $column_data{adj} = qq|<td align=center><input name="adj_$i" type=checkbox class=checkbox value=1 $form->{"adj_$i"}></td>|;
-
- ($partsgroup) = split /--/, $form->{"partsgroup_$i"};
- $column_data{partsgroup} = qq|<td><input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}">$partsgroup</td>|;
-
- $column_data{unit} = qq|<td><input type=hidden name="unit_$i" value="$form->{"unit_$i"}">$form->{"unit_$i"}</td>|;
- $column_data{description} = qq|<td><input type=hidden name="description_$i" value="$form->{"description_$i"}">$form->{"description_$i"}</td>|;
-
- }
-
- $column_data{sellprice} = qq|<td align=right>$linetotalsellprice</td>|;
- $column_data{listprice} = qq|<td align=right>$linetotallistprice</td>|;
- $column_data{lastcost} = qq|<td align=right>$linetotallastcost</td>|;
-
- print qq|
- <tr>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
- <input type=hidden name="id_$i" value=$form->{"id_$i"}>
- <input type=hidden name="sellprice_$i" value=$form->{"sellprice_$i"}>
- <input type=hidden name="listprice_$i" value=$form->{"listprice_$i"}>
- <input type=hidden name="lastcost_$i" value=$form->{"lastcost_$i"}>
- <input type=hidden name="weight_$i" value=$form->{"weight_$i"}>
- <input type=hidden name="assembly_$i" value=$form->{"assembly_$i"}>
-|;
- }
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{sellprice} = "<th align=right>".$form->format_amount(\%myconfig, $form->{sellprice}, 2)."</th>";
- $column_data{listprice} = "<th align=right>".$form->format_amount(\%myconfig, $form->{listprice}, 2)."</th>";
- $column_data{lastcost} = "<th align=right>".$form->format_amount(\%myconfig, $form->{lastcost}, 2)."</th>";
-
- print qq|
- <tr>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
- </table>
- <input type=hidden name=assembly_rows value=$form->{assembly_rows}>
- <input type=hidden name=nextsub value=edit_assemblyitem>
- <input type=hidden name=selectassemblypartsgroup value="|.$form->escape($form->{selectassemblypartsgroup},1).qq|">
-|;
-
-}
-
-
-sub edit_assemblyitem {
-
- $pn = substr($form->{action}, 1);
-
- for ($i = 1; $i < $form->{assembly_rows}; $i++) {
- last if $form->{"partnumber_$i"} eq $pn;
- }
-
- $form->error($local->text('unexpected error!')) unless $i;
-
- $form->{baseassembly} = ($form->{baseassembly}) ? $form->{baseassembly} : $form->{"assembly_$i"};
-
- $form->{callback} = qq|$form->{script}?action=edit&id=$form->{"id_$i"}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&rowcount=$i&baseassembly=$form->{baseassembly}&isassemblyitem=1&previousform=$form->{previousform}|;
-
- $form->redirect;
-
-}
-
-
-sub update {
-
- if ($form->{item} eq "assembly") {
-
- $i = $form->{assembly_rows};
-
- # if last row is empty check the form otherwise retrieve item
- if (($form->{"partnumber_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq "")) {
-
- &check_form;
-
- } else {
-
- IC->assembly_item(\%myconfig, \%$form);
-
- $rows = scalar @{ $form->{item_list} };
-
- if ($rows) {
- $form->{"qty_$i"} = 1 unless ($form->{"qty_$i"});
- $form->{"adj_$i"} = 1;
-
- if ($rows > 1) {
- $form->{makemodel_rows}--;
- $form->{customer_rows}--;
- &select_item;
- exit;
- } else {
- map { $form->{item_list}[$i]{$_} = $form->quote($form->{item_list}[$i]{$_}) } qw(partnumber description unit);
- map { $form->{"${_}_$i"} = $form->{item_list}[0]{$_} } keys %{ $form->{item_list}[0] };
-
- if ($form->{item_list}[0]{partsgroup_id}) {
- $form->{"partsgroup_$i"} = qq|$form->{item_list}[0]{partsgroup}--$form->{item_list}[0]{partsgroup_id}|;
- }
-
- $form->{"runningnumber_$i"} = $form->{assembly_rows};
- $form->{assembly_rows}++;
-
- &check_form;
-
- }
-
- } else {
-
- $form->{rowcount} = $i;
- $form->{assembly_rows}++;
-
- &new_item;
-
- }
- }
-
- } else {
-
- &check_form;
-
- }
-
-}
-
-
-sub check_vendor {
-
- @flds = qw(vendor partnumber lastcost leadtime);
- @a = ();
- $count = 0;
-
- map { $form->{"${_}_$form->{vendor_rows}"} = $form->parse_amount(\%myconfig, $form->{"${_}_$form->{vendor_rows}"}) } qw(lastcost leadtime);
-
- for $i (1 .. $form->{vendor_rows} - 1) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(lastcost leadtime);
-
- if ($form->{"lastcost_$i"} || $form->{"partnumber_$i"}) {
-
- push @a, {};
- $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
-
- }
- }
-
- $i = $form->{vendor_rows};
-
- if (!$form->{selectvendor}) {
-
- if ($form->{"vendor_$i"}) {
- ($form->{vendor}) = split /--/, $form->{"vendor_$i"};
- if (($j = $form->get_name(\%myconfig, vendor)) > 1) {
- &select_name(vendor, $i);
- exit;
- }
-
- if ($j == 1) {
- # we got one name
- $form->{"vendor_$i"} = qq|$form->{name_list}[0]->{name}--$form->{name_list}[0]->{id}|;
- } else {
- # name is not on file
- $form->error(qq|$form->{"vendor_$i"} : |.$locale->text('Vendor not on file!'));
- }
- }
- }
-
- if ($form->{"vendor_$i"}) {
- push @a, {};
- $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{vendor_rows});
- $form->{vendor_rows} = $count;
-
-}
-
-
-sub check_customer {
-
- @flds = qw(customer validfrom validto pricebreak customerprice pricegroup);
- @a = ();
- $count = 0;
-
- map { $form->{"${_}_$form->{customer_rows}"} = $form->parse_amount(\%myconfig, $form->{"${_}_$form->{customer_rows}"}) } qw(customerprice pricebreak);
-
- for $i (1 .. $form->{customer_rows} - 1) {
-
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(customerprice pricebreak);
-
- if ($form->{"customerprice_$i"}) {
- if ($form->{"pricebreak_$i"} || $form->{"customer_$i"} || $form->{"pricegroup_$i"}) {
-
- push @a, {};
- $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
-
- }
- }
- }
-
- $i = $form->{customer_rows};
-
- if (!$form->{selectcustomer}) {
-
- if ($form->{"customer_$i"}) {
- ($form->{customer}) = split /--/, $form->{"customer_$i"};
-
- if (($j = $form->get_name(\%myconfig, customer)) > 1) {
- &select_name(customer, $i);
- exit;
- }
-
- if ($j == 1) {
- # we got one name
- $form->{"customer_$i"} = qq|$form->{name_list}[0]->{name}--$form->{name_list}[0]->{id}|;
- } else {
- # name is not on file
- $form->error(qq|$form->{customer} : |.$locale->text('Customer not on file!'));
- }
- }
- }
-
- if ($form->{"customer_$i"} || $form->{"pricegroup_$i"} || ($form->{"customerprice_$i"} || $form->{"pricebreak_$i"})) {
- push @a, {};
- $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{customer_rows});
- $form->{customer_rows} = $count;
-
-}
-
-
-
-sub select_name {
- my ($table, $vr) = @_;
-
- @column_index = qw(ndx name address);
-
- $label = ucfirst $table;
- $column_data{ndx} = qq|<th>&nbsp;</th>|;
- $column_data{name} = qq|<th class=listheading>|.$locale->text($label).qq|</th>|;
- $column_data{address} = qq|<th class=listheading>|.$locale->text('Address').qq|</th>|;
-
- # list items with radio button on a form
- $form->header;
-
- $title = $locale->text('Select from one of the names below');
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<input type=hidden name=vr value=$vr>
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr space=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- my $i = 0;
- foreach $ref (@{ $form->{name_list} }) {
- $checked = ($i++) ? "" : "checked";
-
- $ref->{name} = $form->quote($ref->{name});
-
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
- $column_data{name} = qq|<td><input name="new_name_$i" type=hidden value="$ref->{name}">$ref->{name}</td>|;
- $column_data{address} = qq|<td>$ref->{address1} $ref->{address2} $ref->{city} $ref->{state} $ref->{zipcode} $ref->{country}</td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input name="new_id_$i" type=hidden value=$ref->{id}>
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input name=lastndx type=hidden value=$i>
-
-|;
-
- # delete variables
- map { delete $form->{$_} } qw(action name_list header);
-
- $form->hide_form();
-
- print qq|
-<input type=hidden name=nextsub value=name_selected>
-
-<input type=hidden name=vc value=$table>
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub name_selected {
-
- # replace the variable with the one checked
-
- # index for new item
- $i = $form->{ndx};
-
- $form->{"$form->{vc}_$form->{vr}"} = qq|$form->{"new_name_$i"}--$form->{"new_id_$i"}|;
- $form->{"$form->{vc}_id_$form->{vr}"} = $form->{"new_id_$i"};
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } (id, name);
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- &update;
-
-}
-
-
-sub save {
-
- if ($form->{obsolete}) {
- $form->error($locale->text("Inventory quantity must be zero before you can set this $form->{item} obsolete!")) if ($form->{onhand});
- }
-
-# expand dynamic strings
-# $locale->text('Inventory quantity must be zero before you can set this part obsolete!')
-# $locale->text('Inventory quantity must be zero before you can set this assembly obsolete!')
-
- $olditem = $form->{id};
-
- # save part
- $rc = IC->save(\%myconfig, \%$form);
-
- $parts_id = $form->{id};
-
- # load previous variables
- if ($form->{previousform} && !$form->{callback}) {
- # save the new form variables before splitting previousform
- map { $newform{$_} = $form->{$_} } keys %$form;
-
- $previousform = $form->unescape($form->{previousform});
- $baseassembly = $form->{baseassembly};
-
- # don't trample on previous variables
- map { delete $form->{$_} } keys %newform;
-
- # now take it apart and restore original values
- foreach $item (split /&/, $previousform) {
- ($key, $value) = split /=/, $item, 2;
- $value =~ s/%26/&/g;
- $form->{$key} = $value;
- }
-
-
- if ($form->{item} eq 'assembly') {
-
- if ($baseassembly) {
- #redo the assembly
- $previousform =~ /\&id=(\d+)/;
- $form->{id} = $1;
-
- # restore original callback
- $form->{callback} = $form->unescape($form->{old_callback});
-
- &edit;
- exit;
- }
-
- # undo number formatting
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(weight listprice sellprice lastcost rop);
-
- $form->{assembly_rows}-- if $olditem;
- $i = $newform{rowcount};
- $form->{"qty_$i"} = 1 unless ($form->{"qty_$i"});
-
- ($dec) = ($form->{listprice} =~ /\.(\d+)/);
- $dec = length $dec;
- $dec1 = ($dec > 2) ? $dec : 2;
-
- ($dec) = ($form->{sellprice} =~ /\.(\d+)/);
- $dec = length $dec;
- $dec2 = ($dec > 2) ? $dec : 2;
-
- ($dec) = ($form->{lastcost} =~ /\.(\d+)/);
- $dec = length $dec;
- $dec3 = ($dec > 2) ? $dec : 2;
-
- $form->{listprice} -= $form->{"listprice_$i"} * $form->{"qty_$i"};
- $form->{sellprice} -= $form->{"sellprice_$i"} * $form->{"qty_$i"};
- $form->{lastcost} -= $form->{"lastcost_$i"} * $form->{"qty_$i"};
- $form->{weight} -= $form->{"weight_$i"} * $form->{"qty_$i"};
-
- # change/add values for assembly item
- map { $form->{"${_}_$i"} = $newform{$_} } qw(partnumber description bin unit weight listprice sellprice lastcost inventory_accno income_accno expense_accno);
-
- $form->{listprice} += $form->{"listprice_$i"} * $form->{"qty_$i"};
- $form->{listprice} = $form->round_amount($form->{listprice}, $dec1);
-
- $form->{sellprice} += $form->{"sellprice_$i"} * $form->{"qty_$i"};
- $form->{sellprice} = $form->round_amount($form->{sellprice}, $dec2);
-
- $form->{lastcost} += $form->{"lastcost_$i"} * $form->{"qty_$i"};
- $form->{lastcost} = $form->round_amount($form->{lastcost}, $dec3);
-
- $form->{weight} += $form->{"weight_$i"} * $form->{"qty_$i"};
-
- $form->{"adj_$i"} = 1 if !$olditem;
-
- $form->{customer_rows}--;
-
- } else {
- # set values for last invoice/order item
- $i = $form->{rowcount};
- $form->{"qty_$i"} = 1 unless ($form->{"qty_$i"});
-
- map { $form->{"${_}_$i"} = $newform{$_} } qw(partnumber description bin unit listprice inventory_accno income_accno expense_accno sellprice partsgroup);
- $form->{"sellprice_$i"} = $newform{lastcost} if ($form->{vendor_id});
-
- if ($form->{exchangerate} != 0) {
- ($dec) = ($newform{sellprice} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"} / $form->{exchangerate}, $decimalplaces);
- }
-
- map { $form->{"taxaccounts_$i"} .= "$_ " if ($newform{"IC_tax_$_"}) } split / /, $newform{taxaccounts};
- chop $form->{"taxaccounts_$i"};
-
- # credit remaining calculation
- $amount = $form->{"sellprice_$i"} * (1 - $form->{"discount_$i"} / 100) * $form->{"qty_$i"};
- map { $form->{"${_}_base"} += $amount } (split / /, $form->{"taxaccounts_$i"});
- map { $amount += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } split / /, $form->{"taxaccounts_$i"} if !$form->{taxincluded};
-
- $form->{creditremaining} -= $amount;
-
- }
-
- $form->{"id_$i"} = $parts_id;
- delete $form->{action};
-
- # restore original callback
- $callback = $form->unescape($form->{callback});
- $form->{callback} = $form->unescape($form->{old_callback});
- delete $form->{old_callback};
-
- $form->{makemodel_rows}--;
-
- # put callback together
- foreach $key (keys %$form) {
- # do single escape for Apache 2.0
- $value = $form->escape($form->{$key}, 1);
- $callback .= qq|&$key=$value|;
- }
- $form->{callback} = $callback;
- }
-
- # redirect
- $form->redirect;
-
-}
-
-
-sub save_as_new {
-
- $form->{id} = 0;
- &save;
-
-}
-
-
-sub delete {
-
- $rc = IC->delete(\%myconfig, \%$form);
-
- # redirect
- $form->redirect($locale->text('Item deleted!')) if ($rc > 0);
- $form->error($locale->text('Cannot delete item!'));
-
-}
-
-
-
-sub stock_assembly {
-
- $form->{title} = $locale->text('Stock Assembly');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width="100%">
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Number').qq|</th>
- <td><input name=partnumber size=20></td>
- <td>&nbsp;</td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Description').qq|</th>
- <td><input name=description size=40></td>
- </tr>
- <tr>
- <td></td>
- <td><input name=checkinventory class=checkbox type=checkbox value=1>&nbsp;|.$locale->text('Check Inventory').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td><hr size=3 noshade></td></tr>
-</table>
-
-<input type=hidden name=sort value=partnumber>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=list_assemblies>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-
-sub list_assemblies {
-
- IC->retrieve_assemblies(\%myconfig, \%$form);
-
- $callback = "$form->{script}?action=list_assemblies&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&checkinventory=$form->{checkinventory}";
-
- $form->sort_order();
- $href = "$form->{script}?action=list_assemblies&direction=$form->{direction}&oldsort=$form->{oldsort}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&checkinventory=$form->{checkinventory}";
-
- if ($form->{partnumber}) {
- $callback .= "&partnumber=".$form->escape($form->{partnumber},1);
- $href .= "&partnumber=".$form->escape($form->{partnumber});
- $form->{sort} = "partnumber" unless $form->{sort};
- }
- if ($form->{description}) {
- $callback .= "&description=".$form->escape($form->{description},1);
- $href .= "&description=".$form->escape($form->{description});
- $form->{sort} = "description" unless $form->{sort};
- }
-
- $column_header{partnumber} = qq|<th><a class=listheading href=$href&sort=partnumber>|.$locale->text('Number').qq|</th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</th>|;
- $column_header{bin} = qq|<th><a class=listheading href=$href&sort=bin>|.$locale->text('Bin').qq|</th>|;
- $column_header{onhand} = qq|<th class=listheading>|.$locale->text('Qty').qq|</th>|;
- $column_header{rop} = qq|<th class=listheading>|.$locale->text('ROP').qq|</th>|;
- $column_header{stock} = qq|<th class=listheading>|.$locale->text('Add').qq|</th>|;
-
- @column_index = $form->sort_columns(qw(partnumber description bin onhand rop stock));
-
- $form->{title} = $locale->text('Stock Assembly');
-
-
- $form->header;
-
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr size=5></tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # add sort and escape callback
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
-
- $i = 1;
- foreach $ref (@{ $form->{assembly_items} }) {
-
- map { $ref->{$_} = $form->quote($ref->{$_}) } qw(partnumber description);
-
- $column_data{partnumber} = "<td width=20%><a href=$form->{script}?action=edit&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partnumber}&nbsp;</a></td>";
-
- $column_data{description} = qq|<td width=50%>$ref->{description}&nbsp;</td>|;
- $column_data{bin} = qq|<td>$ref->{bin}&nbsp;</td>|;
- $column_data{onhand} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{onhand}, "", "&nbsp;").qq|</td>|;
- $column_data{rop} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{rop}, '', "&nbsp;").qq|</td>|;
- $column_data{stock} = qq|<td width=10%><input name="qty_$i" size=10 value=|.$form->format_amount(\%myconfig, $ref->{stock}).qq|></td>
- <input type=hidden name="stock_$i" value=$ref->{stock}>|;
-
- $j++; $j %= 2;
- print qq|<tr class=listrow$j><input name="id_$i" type=hidden value=$ref->{id}>\n|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $i++;
-
- }
-
- $i--;
- print qq|
- </td>
- </table>
- <tr>
- <td><hr size=3 noshade>
- </tr>
-</table>
-
-<input name=rowcount type=hidden value="$i">
-<input type=hidden name=checkinventory value=$form->{checkinventory}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=nextsub value=restock_assemblies>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub restock_assemblies {
-
-
- if ($form->{checkinventory}) {
- map { $form->error($locale->text('Quantity exceeds available units to stock!')) if $form->parse_amount($myconfig, $form->{"qty_$_"}) > $form->{"stock_$_"} }(1 .. $form->{rowcount});
- }
-
- $form->redirect($locale->text('Assemblies restocked!')) if (IC->restock_assemblies(\%myconfig, \%$form));
- $form->error($locale->text('Cannot stock assemblies!'));
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
-sub add_part { &add };
-sub add_service { &add };
-sub add_assembly { &add };
-sub add_labor_overhead { &add };
-
-
diff --git a/sql-ledger/bin/mozilla/io.pl b/sql-ledger/bin/mozilla/io.pl
deleted file mode 100644
index 22228a9..0000000
--- a/sql-ledger/bin/mozilla/io.pl
+++ /dev/null
@@ -1,1637 +0,0 @@
-######################################################################
-# SQL-Ledger, Accounting
-# Copyright (c) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-#
-# common routines used in is, ir, oe
-#
-#######################################################################
-
-# any custom scripts for this one
-if (-f "$form->{path}/custom_io.pl") {
- eval { require "$form->{path}/custom_io.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_io.pl") {
- eval { require "$form->{path}/$form->{login}_io.pl"; };
-}
-
-
-1;
-# end of main
-
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub display_row {
- my $numrows = shift;
-
- @column_index = qw(runningnumber partnumber description qty);
-
- if ($form->{type} eq "sales_order") {
- push @column_index, "ship";
- $column_data{ship} = qq|<th class=listheading align=center width="auto">|.$locale->text('Ship').qq|</th>|;
- }
- if ($form->{type} eq "purchase_order") {
- push @column_index, "ship";
- $column_data{ship} = qq|<th class=listheading align=center width="auto">|.$locale->text('Recd').qq|</th>|;
- }
-
- foreach $item (qw(projectnumber partsgroup)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"}) if $form->{"select$item"};
- }
-
- if ($form->{language_code} ne $form->{oldlanguage_code}) {
- # rebuild partsgroup
- $form->get_partsgroup(\%myconfig, { language_code => $form->{language_code} });
- if (@ { $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- foreach $ref (@ { $form->{all_partsgroup} }) {
- if ($ref->{translation}) {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{translation}\n|;
- } else {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{partsgroup}\n|;
- }
- }
- }
- $form->{oldlanguage_code} = $form->{language_code};
- }
-
-
- push @column_index, qw(unit sellprice discount linetotal);
-
- my $colspan = $#column_index + 1;
-
- $form->{invsubtotal} = 0;
- map { $form->{"${_}_base"} = 0 } (split / /, $form->{taxaccounts});
-
- $column_data{runningnumber} = qq|<th class=listheading nowrap>|.$locale->text('No.').qq|</th>|;
- $column_data{partnumber} = qq|<th class=listheading nowrap>|.$locale->text('Number').qq|</th>|;
- $column_data{description} = qq|<th class=listheading nowrap>|.$locale->text('Description').qq|</th>|;
- $column_data{qty} = qq|<th class=listheading nowrap>|.$locale->text('Qty').qq|</th>|;
- $column_data{unit} = qq|<th class=listheading nowrap>|.$locale->text('Unit').qq|</th>|;
- $column_data{sellprice} = qq|<th class=listheading nowrap>|.$locale->text('Price').qq|</th>|;
- $column_data{discount} = qq|<th class=listheading>%</th>|;
- $column_data{linetotal} = qq|<th class=listheading nowrap>|.$locale->text('Extended').qq|</th>|;
- $column_data{bin} = qq|<th class=listheading nowrap>|.$locale->text('Bin').qq|</th>|;
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- $deliverydate = $locale->text('Delivery Date');
- $serialnumber = $locale->text('Serial No.');
- $projectnumber = $locale->text('Project');
- $group = $locale->text('Group');
- $sku = $locale->text('SKU');
-
- $delvar = 'deliverydate';
-
- if ($form->{type} =~ /_(order|quotation)$/) {
- $reqdate = $locale->text('Required by');
- $delvar = 'reqdate';
- }
-
- $exchangerate = $form->parse_amount(\%myconfig, $form->{exchangerate});
- $exchangerate = ($exchangerate) ? $exchangerate : 1;
-
- for $i (1 .. $numrows) {
- # undo formatting
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty ship discount sellprice);
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if (($form->{"qty_$i"} != $form->{"oldqty_$i"}) || ($form->{currency} ne $form->{oldcurrency})) {
- # check for a pricematrix
- @a = split / /, $form->{"pricematrix_$i"};
- if ((scalar @a) > 2 || $form->{currency} ne $form->{oldcurrency}) {
- foreach $item (@a) {
- ($q, $p) = split /:/, $item;
- if ($p != 0 && $form->{"qty_$i"} > $q) {
- $form->{"sellprice_$i"} = $form->round_amount($p / $exchangerate, $decimalplaces);
- }
- }
- }
- }
-
- $discount = $form->round_amount($form->{"sellprice_$i"} * $form->{"discount_$i"}/100, $decimalplaces);
- $linetotal = $form->round_amount($form->{"sellprice_$i"} - $discount, $decimalplaces);
- $linetotal = $form->round_amount($linetotal * $form->{"qty_$i"}, 2);
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description unit);
-
- $skunumber = qq|
- <p><b>$sku</b> $form->{"sku_$i"}| if ($form->{vc} eq 'vendor' && $form->{"sku_$i"});
-
-
- if ($form->{selectpartsgroup}) {
- if ($i < $numrows) {
- $partsgroup = qq|
- <p><b>$group</b>
- <input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}">|;
- ($form->{"partsgroup_$i"}) = split /--/, $form->{"partsgroup_$i"};
- $partsgroup .= $form->{"partsgroup_$i"};
- $partsgroup = "" unless $form->{"partsgroup_$i"};
- }
- }
-
- $delivery = qq|
- <b>${$delvar}</b>
- <input name="${delvar}_$i" size=11 title="$myconfig{dateformat}" value="$form->{"${delvar}_$i"}">
-|;
-
- $column_data{runningnumber} = qq|<td><input name="runningnumber_$i" size=3 value=$i></td>|;
- $column_data{partnumber} = qq|<td><input name="partnumber_$i" size=15 value="$form->{"partnumber_$i"}">$skunumber</td>|;
-
- if (($rows = $form->numtextrows($form->{"description_$i"}, 25, 6)) > 1) {
- $column_data{description} = qq|<td><textarea name="description_$i" rows=$rows cols=25 wrap=soft>$form->{"description_$i"}</textarea>$partsgroup</td>|;
- } else {
- $column_data{description} = qq|<td><input name="description_$i" size=30 value="$form->{"description_$i"}">$partsgroup</td>|;
- }
-
- $column_data{qty} = qq|<td align=right><input name="qty_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"qty_$i"}).qq|></td>|;
- $column_data{ship} = qq|<td align=right><input name="ship_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"ship_$i"}).qq|></td>|;
- $column_data{unit} = qq|<td><input name="unit_$i" size=5 value="$form->{"unit_$i"}"></td>|;
- $column_data{sellprice} = qq|<td align=right><input name="sellprice_$i" size=9 value=|.$form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces).qq|></td>|;
- $column_data{discount} = qq|<td align=right><input name="discount_$i" size=3 value=|.$form->format_amount(\%myconfig, $form->{"discount_$i"}).qq|></td>|;
- $column_data{linetotal} = qq|<td align=right>|.$form->format_amount(\%myconfig, $linetotal, 2).qq|</td>|;
- $column_data{bin} = qq|<td>$form->{"bin_$i"}</td>|;
-
- print qq|
- <tr valign=top>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input type=hidden name="orderitems_id_$i" value=$form->{"orderitems_id_$i"}>
-
-<input type=hidden name="id_$i" value=$form->{"id_$i"}>
-<input type=hidden name="inventory_accno_$i" value=$form->{"inventory_accno_$i"}>
-<input type=hidden name="bin_$i" value="$form->{"bin_$i"}">
-<input type=hidden name="weight_$i" value="$form->{"weight_$i"}">
-<input type=hidden name="income_accno_$i" value=$form->{"income_accno_$i"}>
-<input type=hidden name="expense_accno_$i" value=$form->{"expense_accno_$i"}>
-<input type=hidden name="listprice_$i" value="$form->{"listprice_$i"}">
-<input type=hidden name="assembly_$i" value="$form->{"assembly_$i"}">
-<input type=hidden name="taxaccounts_$i" value="$form->{"taxaccounts_$i"}">
-<input type=hidden name="pricematrix_$i" value="$form->{"pricematrix_$i"}">
-<input type=hidden name="oldqty_$i" value="$form->{"qty_$i"}">
-<input type=hidden name="sku_$i" value="$form->{"sku_$i"}">
-
-|;
-
- $form->{selectprojectnumber} =~ s/ selected//;
- $form->{selectprojectnumber} =~ s/(<option value="\Q$form->{"projectnumber_$i"}\E")/$1 selected/;
-
- $project = qq|
- <b>$projectnumber</b>
- <select name="projectnumber_$i">$form->{selectprojectnumber}</select>
-| if $form->{selectprojectnumber};
-
- $serial = qq|
- <b>$serialnumber</b> <input name="serialnumber_$i" size=15 value="$form->{"serialnumber_$i"}">| if $form->{type} !~ /_quotation/;
-
- $partsgroup = "";
- if ($i == $numrows) {
- if ($form->{selectpartsgroup}) {
- $partsgroup = qq|
- <b>$group</b>
- <select name="partsgroup_$i">$form->{selectpartsgroup}</select>
-|;
- }
-
- $serial = "";
- $project = "";
- $delivery = ""
- }
-
-
- # print second row
- print qq|
- <tr>
- <td colspan=$colspan>
- $delivery
- $serial
- $project
- $partsgroup
- </td>
- </tr>
- <tr>
- <td colspan=$colspan><hr size=1 noshade></td>
- </tr>
-|;
-
- $skunumber = "";
-
- map { $form->{"${_}_base"} += $linetotal } (split / /, $form->{"taxaccounts_$i"});
-
- $form->{invsubtotal} += $linetotal;
- }
-
- print qq|
- </table>
- </td>
- </tr>
-|;
-
- print qq|
-
-<input type=hidden name=oldcurrency value=$form->{currency}>
-<input type=hidden name=audittrail value="$form->{audittrail}">
-
-<input type=hidden name=selectpartsgroup value="|.$form->escape($form->{selectpartsgroup},1).qq|">
-<input type=hidden name=selectprojectnumber value="|.$form->escape($form->{selectprojectnumber},1).qq|">
-|;
-
-}
-
-
-sub select_item {
-
- if ($form->{vc} eq "vendor") {
- @column_index = qw(ndx partnumber sku description partsgroup onhand sellprice);
- } else {
- @column_index = qw(ndx partnumber description partsgroup onhand sellprice);
- }
-
- $column_data{ndx} = qq|<th>&nbsp;</th>|;
- $column_data{partnumber} = qq|<th class=listheading>|.$locale->text('Number').qq|</th>|;
- $column_data{sku} = qq|<th class=listheading>|.$locale->text('SKU').qq|</th>|;
- $column_data{description} = qq|<th class=listheading>|.$locale->text('Description').qq|</th>|;
- $column_data{partsgroup} = qq|<th class=listheading>|.$locale->text('Group').qq|</th>|;
- $column_data{sellprice} = qq|<th class=listheading>|.$locale->text('Price').qq|</th>|;
- $column_data{onhand} = qq|<th class=listheading>|.$locale->text('Qty').qq|</th>|;
-
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- # list items with radio button on a form
- $form->header;
-
- $title = $locale->text('Select from one of the items below');
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<table width=100%>
- <tr>
- <th class=listtop>$title</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- my $i = 0;
- foreach $ref (@{ $form->{item_list} }) {
- $checked = ($i++) ? "" : "checked";
-
- map { $ref->{$_} = $form->quote($ref->{$_}) } qw(sku partnumber description unit);
-
- $ref->{sellprice} = $form->round_amount($ref->{sellprice} * (1 - $form->{tradediscount}), 2);
-
- $column_data{ndx} = qq|<td><input name=ndx class=radio type=radio value=$i $checked></td>|;
- $column_data{partnumber} = qq|<td>$ref->{partnumber}</td>|;
- $column_data{sku} = qq|<td>$ref->{sku}</td>|;
- $column_data{description} = qq|<td>$ref->{description}</td>|;
- $column_data{partsgroup} = qq|<td>$ref->{partsgroup}</td>|;
- $column_data{sellprice} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{sellprice} / $exchangerate, 2, "&nbsp;").qq|</td>|;
- $column_data{onhand} = qq|<td align=right>|.$form->format_amount(\%myconfig, $ref->{onhand}, '', "&nbsp;").qq|</td>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input name="new_partnumber_$i" type=hidden value="$ref->{partnumber}">
-<input name="new_sku_$i" type=hidden value="$ref->{sku}">
-<input name="new_description_$i" type=hidden value="$ref->{description}">
-<input name="new_partsgroup_$i" type=hidden value="$ref->{partsgroup}">
-<input name="new_partsgroup_id_$i" type=hidden value="$ref->{partsgroup_id}">
-<input name="new_bin_$i" type=hidden value="$ref->{bin}">
-<input name="new_weight_$i" type=hidden value=$ref->{weight}>
-<input name="new_sellprice_$i" type=hidden value=$ref->{sellprice}>
-<input name="new_listprice_$i" type=hidden value=$ref->{listprice}>
-<input name="new_lastcost_$i" type=hidden value=$ref->{lastcost}>
-<input name="new_onhand_$i" type=hidden value=$ref->{onhand}>
-<input name="new_inventory_accno_$i" type=hidden value=$ref->{inventory_accno}>
-<input name="new_income_accno_$i" type=hidden value=$ref->{income_accno}>
-<input name="new_expense_accno_$i" type=hidden value=$ref->{expense_accno}>
-<input name="new_unit_$i" type=hidden value="$ref->{unit}">
-<input name="new_weight_$i" type=hidden value="$ref->{weight}">
-<input name="new_assembly_$i" type=hidden value="$ref->{assembly}">
-<input name="new_taxaccounts_$i" type=hidden value="$ref->{taxaccounts}">
-<input name="new_pricematrix_$i" type=hidden value="$ref->{pricematrix}">
-
-<input name="new_id_$i" type=hidden value=$ref->{id}>
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input name=lastndx type=hidden value=$i>
-
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action item_list header);
-
- $form->hide_form();
-
- print qq|
-<input type=hidden name=nextsub value=item_selected>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub item_selected {
-
- # replace the last row with the checked row
- $i = $form->{rowcount};
- $i = $form->{assembly_rows} if ($form->{item} eq 'assembly');
-
- # index for new item
- $j = $form->{ndx};
-
- # if there was a price entered, override it
- $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"});
-
- map { $form->{"${_}_$i"} = $form->{"new_${_}_$j"} } qw(id partnumber sku description sellprice listprice lastcost inventory_accno income_accno expense_accno bin unit weight assembly taxaccounts pricematrix);
-
- $form->{"partsgroup_$i"} = qq|$form->{"new_partsgroup_$j"}--$form->{"new_partsgroup_id_$j"}|;
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if ($sellprice) {
- $form->{"sellprice_$i"} = $sellprice;
- } else {
- # if there is an exchange rate adjust sellprice
- if (($form->{exchangerate} * 1) != 0) {
- $form->{"sellprice_$i"} /= $form->{exchangerate};
- $form->{"sellprice_$i"} = $form->round_amount($form->{"sellprice_$i"}, $decimalplaces);
- }
- }
-
- if (($form->{exchangerate} * 1) != 0) {
- map { $form->{"${_}_$i"} /= $form->{exchangerate} } qw(listprice lastcost);
- }
-
- # this is for the assembly
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(sellprice listprice weight);
-
- $form->{sellprice} += ($form->{"sellprice_$i"} * $form->{"qty_$i"});
- $form->{weight} += ($form->{"weight_$i"} * $form->{"qty_$i"});
-
- $amount = $form->{"sellprice_$i"} * (1 - $form->{"discount_$i"} / 100) * $form->{"qty_$i"};
- map { $form->{"${_}_base"} += $amount } (split / /, $form->{"taxaccounts_$i"});
- map { $amount += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } split / /, $form->{"taxaccounts_$i"} if !$form->{taxincluded};
-
- $form->{creditremaining} -= $amount;
-
- $form->{"runningnumber_$i"} = $i;
-
- # delete all the new_ variables
- for $i (1 .. $form->{lastndx}) {
- map { delete $form->{"new_${_}_$i"} } qw(partnumber sku description sellprice bin listprice lastcost inventory_accno income_accno expense_accno unit assembly taxaccounts id pricematrix weight);
- }
-
- map { delete $form->{$_} } qw(ndx lastndx nextsub);
-
- # format amounts
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, $decimalplaces) } qw(sellprice listprice lastcost) if $form->{item} ne 'assembly';
-
- &display_form;
-
-}
-
-
-sub new_item {
-
- if ($form->{language_code} && $form->{"description_$form->{rowcount}"}) {
- $form->error($locale->text('Translation not on file!'));
- }
-
- # change callback
- $form->{old_callback} = $form->escape($form->{callback},1);
- $form->{callback} = $form->escape("$form->{script}?action=display_form",1);
-
- # delete action
- delete $form->{action};
-
- # save all other form variables in a previousform variable
- if (!$form->{previousform}) {
- foreach $key (keys %$form) {
- # escape ampersands
- $form->{$key} =~ s/&/%26/g;
- $form->{previousform} .= qq|$key=$form->{$key}&|;
- }
- chop $form->{previousform};
- $form->{previousform} = $form->escape($form->{previousform}, 1);
- }
-
- $i = $form->{rowcount};
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber description);
-
- $form->header;
-
- print qq|
-<body>
-
-<h4 class=error>|.$locale->text('Item not on file!').qq|</h4>|;
-
- if ($myconfig{acs} !~ /(Goods \& Services--Add Part|Goods \& Services--Add Service)/) {
-
- print qq|
-<h4>|.$locale->text('What type of item is this?').qq|</h4>
-
-<form method=post action=ic.pl>
-
-<p>
-
- <input class=radio type=radio name=item value=part checked>&nbsp;|.$locale->text('Part')
-.qq|<br>
- <input class=radio type=radio name=item value=service>&nbsp;|.$locale->text('Service')
-
-.qq|
-<input type=hidden name=previousform value="$form->{previousform}">
-<input type=hidden name=partnumber value="$form->{"partnumber_$i"}">
-<input type=hidden name=description value="$form->{"description_$i"}">
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=nextsub value=add>
-
-<p>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-|;
- }
-
- print qq|
-</body>
-</html>
-|;
-
-}
-
-
-
-sub display_form {
-
- # if we have a display_form
- if ($form->{display_form}) {
- &{ "$form->{display_form}" };
- exit;
- }
-
- &form_header;
-
- $numrows = ++$form->{rowcount};
- $subroutine = "display_row";
-
- if ($form->{item} eq 'part') {
- # create makemodel rows
- &makemodel_row(++$form->{makemodel_rows});
-
- &vendor_row(++$form->{vendor_rows});
-
- $numrows = ++$form->{customer_rows};
- $subroutine = "customer_row";
- }
- if ($form->{item} eq 'assembly') {
- # create makemodel rows
- &makemodel_row(++$form->{makemodel_rows});
-
- $numrows = ++$form->{customer_rows};
- $subroutine = "customer_row";
- }
- if ($form->{item} eq 'service') {
- &vendor_row(++$form->{vendor_rows});
-
- $numrows = ++$form->{customer_rows};
- $subroutine = "customer_row";
- }
- if ($form->{item} eq 'labor') {
- $numrows = 0;
- }
-
- # create rows
- &{ $subroutine }($numrows) if $numrows;
-
- &form_footer;
-
-}
-
-
-
-sub check_form {
-
- my @a = ();
- my $count = 0;
- my $i;
- my $j;
- my @flds = qw(id partnumber sku description qty ship sellprice unit discount inventory_accno income_accno expense_accno listprice taxaccounts bin assembly weight projectnumber runningnumber serialnumber partsgroup reqdate pricematrix);
-
- # remove any makes or model rows
- if ($form->{item} eq 'part') {
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(listprice sellprice lastcost weight rop markup);
-
- &calc_markup;
-
- @flds = qw(make model);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{makemodel_rows}) {
- if (($form->{"make_$i"} ne "") || ($form->{"model_$i"} ne "")) {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{makemodel_rows});
- $form->{makemodel_rows} = $count;
-
- &check_vendor;
- &check_customer;
-
- } elsif ($form->{item} eq 'service') {
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(sellprice listprice lastcost markup);
-
- &calc_markup;
- &check_vendor;
- &check_customer;
-
- } elsif ($form->{item} eq 'assembly') {
-
- $form->{sellprice} = 0;
- $form->{weight} = 0;
- $form->{lastcost} = 0;
- $form->{listprice} = 0;
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(rop stock markup);
-
-
- @flds = qw(id qty unit bom adj partnumber description sellprice listprice weight runningnumber partsgroup);
- $count = 0;
- @a = ();
-
- for my $i (1 .. ($form->{assembly_rows} - 1)) {
- if ($form->{"qty_$i"}) {
- push @a, {};
- my $j = $#a;
-
- $form->{"qty_$i"} = $form->parse_amount(\%myconfig, $form->{"qty_$i"});
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
-
- map { $form->{$_} += ($form->{"${_}_$i"} * $form->{"qty_$i"}) } qw(sellprice listprice weight lastcost);
-
- $count++;
- }
- }
-
- if ($form->{markup} && $form->{markup} != $form->{oldmarkup}) {
- $form->{sellprice} = 0;
- &calc_markup;
- }
-
- map { $form->{$_} = $form->round_amount($form->{$_}, 2) } qw(sellprice lastcost listprice);
-
- $form->redo_rows(\@flds, \@a, $count, $form->{assembly_rows});
- $form->{assembly_rows} = $count;
-
- $count = 0;
- @flds = qw(make model);
- @a = ();
-
- for my $i (1 .. ($form->{makemodel_rows})) {
- if (($form->{"make_$i"} ne "") || ($form->{"model_$i"} ne "")) {
- push @a, {};
- my $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{makemodel_rows});
- $form->{makemodel_rows} = $count;
-
- &check_customer;
-
- } else {
-
- # this section applies to invoices and orders
- # remove any empty numbers
-
- $count = 0;
- @a = ();
- if ($form->{rowcount}) {
- for my $i (1 .. $form->{rowcount} - 1) {
- if ($form->{"partnumber_$i"}) {
- push @a, {};
- my $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count;
-
- $form->{creditremaining} -= &invoicetotal;
-
- }
- }
-
- &display_form;
-
-}
-
-
-sub calc_markup {
-
- if ($form->{markup}) {
- if ($form->{markup} != $form->{oldmarkup}) {
- if ($form->{lastcost}) {
- $form->{sellprice} = $form->{lastcost} * (1 + $form->{markup}/100);
- $form->{sellprice} = $form->round_amount($form->{sellprice}, 2);
- } else {
- $form->{lastcost} = $form->{sellprice} / (1 + $form->{markup}/100);
- $form->{lastcost} = $form->round_amount($form->{lastcost}, 2);
- }
- }
- } else {
- if ($form->{lastcost}) {
- $form->{markup} = $form->round_amount(((1 - $form->{sellprice} / $form->{lastcost}) * 100), 1);
- }
- $form->{markup} = "" if $form->{markup} == 0;
- }
-
-}
-
-
-sub invoicetotal {
-
- $form->{oldinvtotal} = 0;
- # add all parts and deduct paid
- map { $form->{"${_}_base"} = 0 } split / /, $form->{taxaccounts};
-
- my ($amount, $sellprice, $discount, $qty);
-
- for my $i (1 .. $form->{rowcount}) {
- $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"});
- $discount = $form->parse_amount(\%myconfig, $form->{"discount_$i"});
- $qty = $form->parse_amount(\%myconfig, $form->{"qty_$i"});
-
- $amount = $sellprice * (1 - $discount / 100) * $qty;
- map { $form->{"${_}_base"} += $amount } (split / /, $form->{"taxaccounts_$i"});
- $form->{oldinvtotal} += $amount;
- }
-
- map { $form->{oldinvtotal} += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } split / /, $form->{taxaccounts} if !$form->{taxincluded};
-
- $form->{oldtotalpaid} = 0;
- for $i (1 .. $form->{paidaccounts}) {
- $form->{oldtotalpaid} += $form->{"paid_$i"};
- }
-
- # return total
- ($form->{oldinvtotal} - $form->{oldtotalpaid});
-
-}
-
-
-sub validate_items {
-
- # check if items are valid
- if ($form->{rowcount} == 1) {
- &update;
- exit;
- }
-
- for $i (1 .. $form->{rowcount} - 1) {
- $form->isblank("partnumber_$i", $locale->text('Number missing in Row') . " $i");
- }
-
-}
-
-
-
-sub purchase_order {
-
- $form->{title} = $locale->text('Add Purchase Order');
- $form->{vc} = 'vendor';
- $form->{type} = 'purchase_order';
- $buysell = 'sell';
-
- &create_form;
-
-}
-
-
-sub sales_order {
-
- $form->{title} = $locale->text('Add Sales Order');
- $form->{vc} = 'customer';
- $form->{type} = 'sales_order';
- $buysell = 'buy';
-
- &create_form;
-
-}
-
-
-sub rfq {
-
- $form->{title} = $locale->text('Add Request for Quotation');
- $form->{vc} = 'vendor';
- $form->{type} = 'request_quotation';
- $buysell = 'sell';
-
- &create_form;
-
-}
-
-
-sub quotation {
-
- $form->{title} = $locale->text('Add Quotation');
- $form->{vc} = 'customer';
- $form->{type} = 'sales_quotation';
- $buysell = 'buy';
-
- &create_form;
-
-}
-
-
-sub create_form {
-
- map { delete $form->{$_} } qw(id printed emailed queued);
-
- $form->{script} = 'oe.pl';
-
- $form->{shipto} = 1;
-
- $form->{rowcount}-- if $form->{rowcount};
-
- require "$form->{path}/$form->{script}";
-
- map { $form->{"select$_"} = "" } ($form->{vc}, currency);
-
- map { $temp{$_} = $form->{$_} } qw(currency employee department intnotes notes language_code);
-
- &order_links;
-
- map { $form->{$_} = $temp{$_} if $temp{$_} } keys %temp;
-
- $form->{exchangerate} = "";
- $form->{forex} = "";
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, $buysell)));
- }
-
- &prepare_order;
-
- &display_form;
-
-}
-
-
-
-sub e_mail {
-
- $bcc = qq|<input type=hidden name=bcc value="$form->{bcc}">|;
- if ($myconfig{role} =~ /(admin|manager)/) {
- $bcc = qq|
- <th align=right nowrap=true>|.$locale->text('Bcc').qq|</th>
- <td><input name=bcc size=30 value="$form->{bcc}"></td>
-|;
- }
-
- if ($form->{formname} =~ /(pick|packing|bin)_list/) {
- $form->{email} = $form->{shiptoemail} if $form->{shiptoemail};
- }
-
- $name = $form->{$form->{vc}};
- $name =~ s/--.*//g;
- $title = $locale->text('E-mail')." $name";
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$title</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=30 value="$form->{email}"></td>
- <th align=right nowrap>|.$locale->text('Cc').qq|</th>
- <td><input name=cc size=30 value="$form->{cc}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Subject').qq|</th>
- <td><input name=subject size=30 value="$form->{subject}"></td>
- $bcc
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=left nowrap>|.$locale->text('Message').qq|</th>
- </tr>
- <tr>
- <td><textarea name=message rows=15 cols=60 wrap=soft>$form->{message}</textarea></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
-|;
-
- $form->{oldmedia} = $form->{media};
- $form->{media} = "email";
- $form->{format} = "pdf";
-
- &print_options;
-
- map { delete $form->{$_} } qw(action email cc bcc subject message formname sendmode format header);
-
- $form->hide_form();
-
- print qq|
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=send_email>
-
-<br>
-<input name=action class=submit type=submit value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub send_email {
-
- $old_form = new Form;
-
- map { $old_form->{$_} = $form->{$_} } keys %$form;
- $old_form->{media} = $old_form->{oldmedia};
-
- &print_form($old_form);
-
-}
-
-
-
-sub print_options {
-
- $form->{sendmode} = "attachment";
- $form->{copies} = 1 unless $form->{copies};
-
- $form->{PD}{$form->{formname}} = "selected";
- $form->{DF}{$form->{format}} = "selected";
- $form->{SM}{$form->{sendmode}} = "selected";
-
- if ($form->{selectlanguage}) {
- $form->{"selectlanguage"} = $form->unescape($form->{"selectlanguage"});
- $form->{"selectlanguage"} =~ s/ selected//;
- $form->{"selectlanguage"} =~ s/(<option value="\Q$form->{language_code}\E")/$1 selected/;
- $lang = qq|<td><select name=language_code>$form->{selectlanguage}</select></td>
- <input type=hidden name=oldlanguage_code value=$form->{oldlanguage_code}>
- <input type=hidden name=selectlanguage value="|.
- $form->escape($form->{selectlanguage},1).qq|">|;
- }
-
- if ($form->{type} eq 'purchase_order') {
- $type = qq|<td><select name=formname>
- <option value=purchase_order $form->{PD}{purchase_order}>|.$locale->text('Purchase Order').qq|
- <option value=bin_list $form->{PD}{bin_list}>|.$locale->text('Bin List').qq|</select></td>|;
- }
-
- if ($form->{type} eq 'sales_order') {
- $type = qq|<td><select name=formname>
- <option value=sales_order $form->{PD}{sales_order}>|.$locale->text('Sales Order').qq|
- <option value=work_order $form->{PD}{work_order}>|.$locale->text('Work Order').qq|
- <option value=pick_list $form->{PD}{pick_list}>|.$locale->text('Pick List').qq|
- <option value=packing_list $form->{PD}{packing_list}>|.$locale->text('Packing List').qq|</select></td>|;
- }
-
- if ($form->{type} =~ /_quotation$/) {
- $type = qq|<td><select name=formname>
- <option value="$`_quotation" $form->{PD}{"$`_quotation"}>|.$locale->text('Quotation').qq|</select></td>|;
- }
-
- if ($form->{type} eq 'invoice') {
- $type = qq|<td><select name=formname>
- <option value=invoice $form->{PD}{invoice}>|.$locale->text('Invoice').qq|
- <option value=pick_list $form->{PD}{pick_list}>|.$locale->text('Pick List').qq|
- <option value=packing_list $form->{PD}{packing_list}>|.$locale->text('Packing List').qq|</select></td>|;
- }
-
- if ($form->{type} eq 'ship_order') {
- $type = qq|<td><select name=formname>
- <option value=pick_list $form->{PD}{pick_list}>|.$locale->text('Pick List').qq|
- <option value=packing_list $form->{PD}{packing_list}>|.$locale->text('Packing List').qq|</select></td>|;
- }
-
- if ($form->{type} eq 'receive_order') {
- $type = qq|<td><select name=formname>
- <option value=bin_list $form->{PD}{bin_list}>|.$locale->text('Bin List').qq|</select></td>|;
- }
-
- if ($form->{media} eq 'email') {
- $media = qq|<td><select name=sendmode>
- <option value=attachment $form->{SM}{attachment}>|.$locale->text('Attachment').qq|
- <option value=inline $form->{SM}{inline}>|.$locale->text('In-line').qq|</select></td>|;
- } else {
- $media = qq|<td><select name=media>
- <option value=screen>|.$locale->text('Screen');
- if (%printer && $latex) {
- map { $media .= qq|
- <option value="$_">$_| } sort keys %printer;
- }
- if ($latex) {
- $media .= qq|
- <option value="queue">|.$locale->text('Queue');
- }
- $media .= qq|</select></td>|;
-
- # set option selected
- $media =~ s/(<option value="\Q$form->{media}\E")/$1 selected/;
-
- }
-
- $format = qq|<td><select name=format>
- <option value=html $form->{DF}{html}>html|;
-
-# <option value=txt $form->{DF}{txt}>txt|;
-
- if ($latex) {
- $format .= qq|
- <option value=postscript $form->{DF}{postscript}>|.$locale->text('Postscript').qq|
- <option value=pdf $form->{DF}{pdf}>|.$locale->text('PDF');
- }
- $format .= qq|</select></td>|;
-
- print qq|
-<table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table>
- <tr>
- $type
- $lang
- $format
- $media
-|;
-
- if (%printer && $latex && $form->{media} ne 'email') {
- print qq|
- <td>|.$locale->text('Copies').qq|
- <input name=copies size=2 value=$form->{copies}></td>
-|;
- }
-
- $form->{groupprojectnumber} = "checked" if $form->{groupprojectnumber};
- $form->{grouppartsgroup} = "checked" if $form->{grouppartsgroup};
-
- print qq|
- <td>|.$locale->text('Group Items').qq|</td>
- <td>
- <input name=groupprojectnumber type=checkbox class=checkbox $form->{groupprojectnumber}>
- |.$locale->text('Project').qq|
- <input name=grouppartsgroup type=checkbox class=checkbox $form->{grouppartsgroup}>
- |.$locale->text('Group').qq|
- </td>
- </tr>
- </table>
- </td>
- <td align=right>
-|;
-
- if ($form->{printed} =~ /$form->{formname}/) {
- print $locale->text('Printed').qq|<br>|;
- }
-
- if ($form->{emailed} =~ /$form->{formname}/) {
- print $locale->text('E-mailed').qq|<br>|;
- }
-
- if ($form->{queued} =~ /$form->{formname}/) {
- print $locale->text('Queued');
- }
-
- print qq|
- </td>
- </tr>
-</table>
-|;
-
-
-}
-
-
-
-sub print {
-
- # if this goes to the printer pass through
- if ($form->{media} !~ /(screen|email)/) {
- $form->error($locale->text('Select txt, postscript or PDF!')) if ($form->{format} !~ /(txt|postscript|pdf)/);
-
- $old_form = new Form;
- map { $old_form->{$_} = $form->{$_} } keys %$form;
-
- }
-
- &print_form($old_form);
-
-}
-
-
-sub print_form {
- my ($old_form) = @_;
-
- $inv = "inv";
- $due = "due";
-
- $numberfld = "sinumber";
-
- $display_form = ($form->{display_form}) ? $form->{display_form} : "display_form";
-
- if ($form->{formname} eq "invoice") {
- $form->{label} = $locale->text('Invoice');
- }
- if ($form->{formname} eq 'sales_order') {
- $inv = "ord";
- $due = "req";
- $form->{label} = $locale->text('Sales Order');
- $numberfld = "sonumber";
- $order = 1;
- }
- if ($form->{formname} eq 'work_order') {
- $inv = "ord";
- $due = "req";
- $form->{label} = $locale->text('Work Order');
- $numberfld = "sonumber";
- $order = 1;
- }
- if ($form->{formname} eq 'packing_list') {
- # we use the same packing list as from an invoice
- $form->{label} = $locale->text('Packing List');
-
- if ($form->{type} ne 'invoice') {
- $inv = "ord";
- $due = "req";
- $numberfld = "sonumber";
- $order = 1;
- }
- }
- if ($form->{formname} eq 'pick_list') {
- $form->{label} = $locale->text('Pick List');
- if ($form->{type} ne 'invoice') {
- $inv = "ord";
- $due = "req";
- $order = 1;
- $numberfld = "sonumber";
- }
- }
- if ($form->{formname} eq 'purchase_order') {
- $inv = "ord";
- $due = "req";
- $form->{label} = $locale->text('Purchase Order');
- $numberfld = "ponumber";
- $order = 1;
- }
- if ($form->{formname} eq 'bin_list') {
- $inv = "ord";
- $due = "req";
- $form->{label} = $locale->text('Bin List');
- $numberfld = "ponumber";
- $order = 1;
- }
- if ($form->{formname} eq 'sales_quotation') {
- $inv = "quo";
- $due = "req";
- $form->{label} = $locale->text('Quotation');
- $numberfld = "sqnumber";
- $order = 1;
- }
- if ($form->{formname} eq 'request_quotation') {
- $inv = "quo";
- $due = "req";
- $form->{label} = $locale->text('Quotation');
- $numberfld = "rfqnumber";
- $order = 1;
- }
-
- $form->{"${inv}date"} = $form->{transdate};
-
- $form->isblank("email", $locale->text('E-mail address missing!')) if ($form->{media} eq 'email');
- $form->isblank("${inv}date", $locale->text($form->{label} .' Date missing!'));
-
- # get next number
- if (! $form->{"${inv}number"}) {
- $form->{"${inv}number"} = $form->update_defaults(\%myconfig, $numberfld);
- if ($form->{media} eq 'screen') {
- &update;
- exit;
- }
- }
-
-
-# $locale->text('Invoice Number missing!')
-# $locale->text('Invoice Date missing!')
-# $locale->text('Packing List Number missing!')
-# $locale->text('Packing List Date missing!')
-# $locale->text('Order Number missing!')
-# $locale->text('Order Date missing!')
-# $locale->text('Quotation Number missing!')
-# $locale->text('Quotation Date missing!')
-
- &validate_items;
-
- &{ "$form->{vc}_details" };
-
- @a = ();
- foreach $i (1 .. $form->{rowcount}) {
- push @a, ("partnumber_$i", "description_$i", "projectnumber_$i", "partsgroup_$i", "serialnumber_$i", "bin_$i", "unit_$i");
- }
- map { push @a, "${_}_description" } split / /, $form->{taxaccounts};
-
- $ARAP = ($form->{vc} eq 'customer') ? "AR" : "AP";
- push @a, $ARAP;
-
- # format payment dates
- for $i (1 .. $form->{paidaccounts} - 1) {
- if (exists $form->{longformat}) {
- $form->{"datepaid_$i"} = $locale->date(\%myconfig, $form->{"datepaid_$i"}, $form->{longformat});
- }
-
- push @a, "${ARAP}_paid_$i", "source_$i", "memo_$i";
- }
-
- $form->format_string(@a);
-
- ($form->{employee}) = split /--/, $form->{employee};
- ($form->{warehouse}, $form->{warehouse_id}) = split /--/, $form->{warehouse};
-
- # this is a label for the subtotals
- $form->{groupsubtotaldescription} = $locale->text('Subtotal') if not exists $form->{groupsubtotaldescription};
- delete $form->{groupsubtotaldescription} if $form->{deletegroupsubtotal};
-
- # create the form variables
- if ($order) {
- OE->order_details(\%myconfig, \%$form);
- } else {
- IS->invoice_details(\%myconfig, \%$form);
- }
-
- if (exists $form->{longformat}) {
- map { $form->{$_} = $locale->date(\%myconfig, $form->{$_}, $form->{longformat}) } ("${inv}date", "${due}date", "shippingdate", "transdate");
- }
-
- @a = qw(name address1 address2 city state zipcode country);
-
- $shipto = 1;
- # if there is no shipto fill it in from billto
- foreach $item (@a) {
- if ($form->{"shipto$item"}) {
- $shipto = 0;
- last;
- }
- }
-
- if ($shipto) {
- if ($form->{formname} eq 'purchase_order' || $form->{formname} eq 'request_quotation') {
- $form->{shiptoname} = $myconfig{company};
- $form->{shiptoaddress1} = $myconfig{address};
- } else {
- if ($form->{formname} !~ /bin_list/) {
- map { $form->{"shipto$_"} = $form->{$_} } @a;
- }
- }
- }
-
- $form->{notes} =~ s/^\s+//g;
-
- # some of the stuff could have umlauts so we translate them
- push @a, qw(contact shiptoname shiptoaddress1 shiptoaddress2 shiptocity shiptostate shiptozipcode shiptocountry shiptocontact shiptoemail shippingpoint shipvia notes employee warehouse);
-
- push @a, ("${inv}number", "${inv}date", "${due}date", "email", "cc", "bcc");
-
- map { $form->{$_} = $myconfig{$_} } (qw(company address tel fax signature businessnumber));
- map { $form->{"user$_"} = $myconfig{$_} } qw(name email);
- push @a, qw(company address tel fax signature businessnumber username useremail);
-
- $form->format_string(@a);
-
-
- $form->{templates} = "$myconfig{templates}";
- $form->{IN} = "$form->{formname}.$form->{format}";
-
- if ($form->{format} =~ /(postscript|pdf)/) {
- $form->{IN} =~ s/$&$/tex/;
- }
-
- $form->{pre} = "<body bgcolor=#ffffff>\n<pre>" if $form->{format} eq 'txt';
-
- if ($form->{media} !~ /(screen|queue|email)/) {
- $form->{OUT} = "| $printer{$form->{media}}";
-
- if ($form->{printed} !~ /$form->{formname}/) {
-
- $form->{printed} .= " $form->{formname}";
- $form->{printed} =~ s/^ //;
-
- $form->update_status(\%myconfig);
- }
-
- $old_form->{printed} = $form->{printed};
-
- %audittrail = ( tablename => ($order) ? 'oe' : lc $ARAP,
- reference => $form->{"${inv}number"},
- formname => $form->{formname},
- action => 'printed',
- id => $form->{id} );
-
- $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
-
- if ($form->{media} eq 'email') {
- $form->{subject} = qq|$form->{label} $form->{"${inv}number"}| unless $form->{subject};
-
- $form->{plainpaper} = 1;
- $form->{OUT} = "$sendmail";
-
- if ($form->{emailed} !~ /$form->{formname}/) {
- $form->{emailed} .= " $form->{formname}";
- $form->{emailed} =~ s/^ //;
-
- # save status
- $form->update_status(\%myconfig);
- }
-
- $now = scalar localtime;
- $cc = $locale->text('Cc').qq|: $form->{cc}\n| if $form->{cc};
- $bcc = $locale->text('Bcc').qq|: $form->{bcc}\n| if $form->{bcc};
-
- $old_form->{intnotes} = qq|$old_form->{intnotes}\n\n| if $old_form->{intnotes};
- $old_form->{intnotes} .= qq|[email]
-|.$locale->text('Date').qq|: $now
-|.$locale->text('To').qq|: $form->{email}
-$cc${bcc}|.$locale->text('Subject').qq|: $form->{subject}\n|;
-
- $old_form->{intnotes} .= qq|\n|.$locale->text('Message').qq|: |;
- $old_form->{intnotes} .= ($form->{message}) ? $form->{message} : $locale->text('sent');
-
- $old_form->{message} = $form->{message};
- $old_form->{emailed} = $form->{emailed};
-
- $old_form->{format} = "postscript" if $myconfig{printer};
- $old_form->{media} = $myconfig{printer};
-
- $old_form->save_intnotes(\%myconfig, ($order) ? 'oe' : lc $ARAP);
-
- %audittrail = ( tablename => ($order) ? 'oe' : lc $ARAP,
- reference => $form->{"${inv}number"},
- formname => $form->{formname},
- action => 'emailed',
- id => $form->{id} );
-
- $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
- }
-
-
- if ($form->{media} eq 'queue') {
- %queued = split / /, $form->{queued};
-
- if ($filename = $queued{$form->{formname}}) {
- $form->{queued} =~ s/$form->{formname} $filename//;
- unlink "$spool/$filename";
- $filename =~ s/\..*$//g;
- } else {
- $filename = time;
- $filename .= $$;
- }
-
- $filename .= ($form->{format} eq 'postscript') ? '.ps' : '.pdf';
- $form->{OUT} = ">$spool/$filename";
-
- $form->{queued} .= " $form->{formname} $filename";
- $form->{queued} =~ s/^ //;
-
- # save status
- $form->update_status(\%myconfig);
-
- $old_form->{queued} = $form->{queued};
-
- %audittrail = ( tablename => ($order) ? 'oe' : lc $ARAP,
- reference => $form->{"${inv}number"},
- formname => $form->{formname},
- action => 'queued',
- id => $form->{id} );
-
- $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail);
-
- }
-
-
- $form->{fileid} = $form->{"${inv}number"};
- $form->{fileid} =~ s/(\s|\W)+//g;
-
- $form->parse_template(\%myconfig, $userspath);
-
- # if we got back here restore the previous form
- if ($old_form) {
-
- $old_form->{"${inv}number"} = $form->{"${inv}number"};
-
- # restore and display form
- map { $form->{$_} = $old_form->{$_} } keys %$old_form;
- delete $form->{pre};
-
- $form->{rowcount}--;
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate creditlimit creditremaining);
-
- for $i (1 .. $form->{paidaccounts}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
- }
-
- &{ "$display_form" };
-
- }
-
-}
-
-
-sub customer_details {
-
- IS->customer_details(\%myconfig, \%$form);
-
-}
-
-
-sub vendor_details {
-
- IR->vendor_details(\%myconfig, \%$form);
-
-}
-
-
-sub post_as_new {
-
- $form->{postasnew} = 1;
- map { delete $form->{$_} } qw(printed emailed queued);
-
- &post;
-
-}
-
-
-sub ship_to {
-
- $title = $form->{title};
- $form->{title} = $locale->text('Ship to');
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate creditlimit creditremaining);
-
- # get details for name
- &{ "$form->{vc}_details" };
-
- $number = ($form->{vc} eq 'customer') ? $locale->text('Customer Number') : $locale->text('Vendor Number');
-
- $nextsub = ($form->{display_form}) ? $form->{display_form} : "display_form";
-
- $form->{rowcount}--;
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <td>
- <table>
- <tr class=listheading>
- <th class=listheading colspan=2 width=50%>|.$locale->text('Billing Address').qq|</th>
- <th class=listheading width=50%>|.$locale->text('Shipping Address').qq|</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <th align=right nowrap>$number</th>
- <td>$form->{"$form->{vc}number"}</td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Company Name').qq|</th>
- <td>$form->{name}</td>
- <td><input name=shiptoname size=35 maxlength=64 value="$form->{shiptoname}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Address').qq|</th>
- <td>$form->{address1}</td>
- <td><input name=shiptoaddress1 size=35 maxlength=32 value="$form->{shiptoaddress1}"></td>
- </tr>
- <tr>
- <th></th>
- <td>$form->{address2}</td>
- <td><input name=shiptoaddress2 size=35 maxlength=32 value="$form->{shiptoaddress2}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('City').qq|</th>
- <td>$form->{city}</td>
- <td><input name=shiptocity size=35 maxlength=32 value="$form->{shiptocity}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('State/Province').qq|</th>
- <td>$form->{state}</td>
- <td><input name=shiptostate size=35 maxlength=32 value="$form->{shiptostate}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Zip/Postal Code').qq|</th>
- <td>$form->{zipcode}</td>
- <td><input name=shiptozipcode size=10 maxlength=10 value="$form->{shiptozipcode}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Country').qq|</th>
- <td>$form->{country}</td>
- <td><input name=shiptocountry size=35 maxlength=32 value="$form->{shiptocountry}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Contact').qq|</th>
- <td>$form->{contact}</td>
- <td><input name=shiptocontact size=35 maxlength=64 value="$form->{shiptocontact}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Phone').qq|</th>
- <td>$form->{"$form->{vc}phone"}</td>
- <td><input name=shiptophone size=20 value="$form->{shiptophone}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Fax').qq|</th>
- <td>$form->{"$form->{vc}fax"}</td>
- <td><input name=shiptofax size=20 value="$form->{shiptofax}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td>$form->{email}</td>
- <td><input name=shiptoemail size=35 value="$form->{shiptoemail}"></td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=$nextsub>
-|;
-
- # delete shipto
- map { delete $form->{$_} } qw(shiptoname shiptoaddress1 shiptoaddress2 shiptocity shiptostate shiptozipcode shiptocountry shiptocontact shiptophone shiptofax shiptoemail header);
- $form->{title} = $title;
-
- $form->hide_form();
-
- print qq|
-
-<hr size=3 noshade>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ir.pl b/sql-ledger/bin/mozilla/ir.pl
deleted file mode 100644
index 080ac24..0000000
--- a/sql-ledger/bin/mozilla/ir.pl
+++ /dev/null
@@ -1,806 +0,0 @@
-#=====================================================================
-# SQL-Ledger, Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory received module
-#
-#======================================================================
-
-
-use SL::IR;
-use SL::PE;
-
-require "$form->{path}/io.pl";
-require "$form->{path}/arap.pl";
-
-1;
-# end of main
-
-
-
-sub add {
-
- $form->{title} = $locale->text('Add Vendor Invoice');
-
- $form->{callback} = "$form->{script}?action=add&type=$form->{type}&login=$form->{login}&path=$form->{path}&sessionid=$form->{sessionid}" unless $form->{callback};
- &invoice_links;
- &prepare_invoice;
- &display_form;
-
-}
-
-
-sub edit {
-
- $form->{title} = $locale->text('Edit Vendor Invoice');
-
- &invoice_links;
- &prepare_invoice;
- &display_form;
-
-}
-
-
-sub invoice_links {
-
- $form->{vc} = "vendor";
-
- # create links
- $form->create_links("AP", \%myconfig, "vendor");
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
-
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- if ($form->{all_vendor}) {
- unless ($form->{vendor_id}) {
- $form->{vendor_id} = $form->{all_vendor}->[0]->{id};
- }
- }
-
- IR->get_vendor(\%myconfig, \%$form);
- delete $form->{notes};
- IR->retrieve_invoice(\%myconfig, \%$form);
-
- $form->{oldlanguage_code} = $form->{language_code};
-
- $form->get_partsgroup(\%myconfig, { language_code => $form->{language_code} });
- if (@ { $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- foreach $ref (@ { $form->{all_partsgroup} }) {
- if ($ref->{translation}) {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{translation}\n|;
- } else {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{partsgroup}\n|;
- }
- }
- }
-
- if (@{ $form->{all_projects} }) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
- }
-
- $form->{oldvendor} = "$form->{vendor}--$form->{vendor_id}";
- $form->{oldtransdate} = $form->{transdate};
-
- # vendors
- if ($form->{all_vendor}) {
- $form->{vendor} = "$form->{vendor}--$form->{vendor_id}";
- map { $form->{selectvendor} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_vendor} });
- }
-
- # departments
- if ($form->{all_departments}) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- # forex
- $form->{forex} = $form->{exchangerate};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $key (keys %{ $form->{AP_links} }) {
-
- foreach $ref (@{ $form->{AP_links}{$key} }) {
- $form->{"select$key"} .= "<option>$ref->{accno}--$ref->{description}\n";
- }
-
- if ($key eq "AP_paid") {
- for $i (1 .. scalar @{ $form->{acc_trans}{$key} }) {
- $form->{"AP_paid_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- # reverse paid
- $form->{"paid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{amount};
- $form->{"datepaid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{transdate};
- $form->{"forex_$i"} = $form->{"exchangerate_$i"} = $form->{acc_trans}{$key}->[$i-1]->{exchangerate};
- $form->{"source_$i"} = $form->{acc_trans}{$key}->[$i-1]->{source};
- $form->{"memo_$i"} = $form->{acc_trans}{$key}->[$i-1]->{memo};
-
- $form->{paidaccounts} = $i;
- }
- } else {
- $form->{$key} = "$form->{acc_trans}{$key}->[0]->{accno}--$form->{acc_trans}{$key}->[0]->{description}";
- }
-
- }
-
- $form->{paidaccounts} = 1 unless (exists $form->{paidaccounts});
-
- $form->{AP} = $form->{AP_1} unless $form->{id};
-
- $form->{locked} = ($form->{revtrans}) ? '1' : ($form->datetonum($form->{transdate}, \%myconfig) <= $form->datetonum($form->{closedto}, \%myconfig));
-
- $form->{readonly} = 1 if $myconfig{acs} =~ /AP--Vendor Invoice/;
-
-}
-
-
-
-sub prepare_invoice {
-
- $form->{type} = "invoice";
- $form->{oldcurrency} = $form->{currency};
-
- if ($form->{id}) {
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(invnumber ordnumber quonumber);
-
- foreach $ref (@{ $form->{invoice_details} }) {
- $i++;
- map { $form->{"${_}_$i"} = $ref->{$_} } keys %{ $ref };
-
- $form->{"projectnumber_$i"} = qq|$ref->{projectnumber}--$ref->{project_id}|;
- $form->{"partsgroup_$i"} = qq|$ref->{partsgroup}--$ref->{partsgroup_id}|;
-
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * 100);
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- $form->{"oldqty_$i"} = $form->{"qty_$i"};
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description unit);
-
- $form->{rowcount} = $i;
- }
- }
-
-}
-
-
-
-sub form_header {
-
- # set option selected
- foreach $item (qw(AP currency)) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- foreach $item (qw(vendor department)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- if ($form->{selectlanguage}) {
- $form->{"selectlanguage"} = $form->unescape($form->{"selectlanguage"});
- $form->{"selectlanguage"} =~ s/ selected//;
- $form->{"selectlanguage"} =~ s/(<option value="\Q$form->{language_code}\E")/$1 selected/;
-
- $lang = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Language').qq|</th>
- <td><select name=language_code>$form->{selectlanguage}</select></td>
- <input type=hidden name=oldlanguage_code value=$form->{oldlanguage_code}>
- <input type=hidden name="selectlanguage" value="|.
- $form->escape($form->{selectlanguage},1).qq|">
- </tr>
-|;
-
- }
-
-
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
- $exchangerate = "";
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|
- <th align=right nowrap>|.$locale->text('Exchange Rate').qq|</th>
- <td>$form->{exchangerate}<input type=hidden name=exchangerate value=$form->{exchangerate}></td>
-|;
- } else {
- $exchangerate .= qq|
- <th align=right nowrap>|.$locale->text('Exchange Rate').qq|</th>
- <td><input name=exchangerate size=10 value=$form->{exchangerate}></td>
-|;
- }
- }
- $exchangerate .= qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
-
- if ($form->{selectvendor}) {
- $vendor = qq|<select name=vendor>$form->{selectvendor}</select>
- <input type=hidden name="selectvendor" value="|.
- $form->escape($form->{selectvendor},1).qq|">|;
- } else {
- $vendor = qq|<input name=vendor value="$form->{vendor}" size=35>|;
- }
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.
- $form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=vc value="vendor">
-<input type=hidden name=type value=$form->{type}>
-
-<input type=hidden name=terms value=$form->{terms}>
-
-<input type=hidden name=creditlimit value=$form->{creditlimit}>
-<input type=hidden name=creditremaining value=$form->{creditremaining}>
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-
-<input type=hidden name=shipped value=$form->{shipped}>
-
-<input type=hidden name=oldtransdate value=$form->{oldtransdate}>
-
-<table width=100%>
- <tr class=listtop>
- <th>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Vendor').qq|</th>
- <td colspan=3>$vendor</td>
-
- <input type=hidden name=vendor_id value=$form->{vendor_id}>
- <input type=hidden name=oldvendor value="$form->{oldvendor}">
-
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <th nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>|.$form->format_amount(\%myconfig, $form->{creditlimit}, 0, "0").qq|</td>
- <td width=20%></td>
- <th nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n" nowrap>|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</td>
- </tr>
- </table>
- </td>
- <tr>
- <th align=right>|.$locale->text('Record in').qq|</th>
- <td colspan=3><select name=AP>$form->{selectAP}</select></td>
- <input type=hidden name=selectAP value="$form->{selectAP}">
- </tr>
- $department
- <tr>
- <th align=right nowrap>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- $exchangerate
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td><input name=invnumber size=20 value="$form->{invnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td><input name=ordnumber size=20 value="$form->{ordnumber}"></td>
-<input type=hidden name=quonumber value="$form->{quonumber}">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{dateformat}" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Due Date').qq|</th>
- <td><input name=duedate size=11 title="$myconfig{dateformat}" value=$form->{duedate}></td>
- </tr>
- $lang
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-<input type=hidden name=selectcurrency value="$form->{selectcurrency}">
-<input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
-<input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
-<input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
-
-<input type=hidden name=taxpart value="$form->{taxpart}">
-<input type=hidden name=taxservice value="$form->{taxservice}">
-
-<input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-|;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- print qq|
-<input type=hidden name="${item}_rate" value=$form->{"${item}_rate"}>
-<input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
-|;
- }
-
-}
-
-
-
-sub form_footer {
-
- $form->{invtotal} = $form->{invsubtotal};
-
- if (($rows = $form->numtextrows($form->{notes}, 25, 8)) < 2) {
- $rows = 2;
- }
- if (($introws = $form->numtextrows($form->{intnotes}, 35, 8)) < 2) {
- $introws = 2;
- }
- $rows = ($rows > $introws) ? $rows : $introws;
- $notes = qq|<textarea name=notes rows=$rows cols=25 wrap=soft>$form->{notes}</textarea>|;
- $intnotes = qq|<textarea name=intnotes rows=$rows cols=35 wrap=soft>$form->{intnotes}</textarea>|;
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
-
- $taxincluded = "";
- if ($form->{taxaccounts}) {
- $taxincluded = qq|
- <input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}> <b>|.$locale->text('Tax Included').qq|</b>
-|;
- }
-
- if (!$form->{taxincluded}) {
-
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"${item}_base"}) {
- $form->{invtotal} += $form->{"${item}_total"} = $form->round_amount($form->{"${item}_base"} * $form->{"${item}_rate"}, 2);
- $form->{"${item}_total"} = $form->format_amount(\%myconfig, $form->{"${item}_total"}, 2);
-
- $tax .= qq|
- <tr>
- <th align=right>$form->{"${item}_description"}</th>
- <td align=right>$form->{"${item}_total"}</td>
- </tr>
-|;
- }
- }
-
- $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0);
-
- $subtotal = qq|
- <tr>
- <th align=right>|.$locale->text('Subtotal').qq|</th>
- <td align=right>$form->{invsubtotal}</td>
- </tr>
-|;
-
- }
-
-
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2, 0);
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <table>
- <tr>
- <th align=left>|.$locale->text('Notes').qq|</th>
- <th align=left>|.$locale->text('Internal Notes').qq|</th>
- </tr>
- <tr valign=top>
- <td>$notes</td>
- <td>$intnotes</td>
- </tr>
- </table>
- </td>
- <td align=right>
- $taxincluded
- <br>
- <table>
- $subtotal
- $tax
- <tr>
- <th align=right>|.$locale->text('Total').qq|</th>
- <td align=right>$form->{invtotal}</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th colspan=6 class=listheading>|.$locale->text('Payments').qq|</th>
- </tr>
-|;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- @column_index = qw(datepaid source memo paid AP_paid);
- } else {
- @column_index = qw(datepaid source memo paid exchangerate AP_paid);
- }
-
- $column_data{datepaid} = "<th>".$locale->text('Date')."</th>";
- $column_data{paid} = "<th>".$locale->text('Amount')."</th>";
- $column_data{exchangerate} = "<th>".$locale->text('Exch')."</th>";
- $column_data{AP_paid} = "<th>".$locale->text('Account')."</th>";
- $column_data{source} = "<th>".$locale->text('Source')."</th>";
- $column_data{memo} = "<th>".$locale->text('Memo')."</th>";
-
- print qq|
- <tr>
-|;
- map { print "$column_data{$_}\n" } @column_index;
- print qq|
- </tr>
-|;
-
- $form->{paidaccounts}++ if ($form->{"paid_$form->{paidaccounts}"});
- for $i (1 .. $form->{paidaccounts}) {
-
- print qq|
- <tr>
-|;
-
- $form->{"selectAP_paid_$i"} = $form->{selectAP_paid};
- $form->{"selectAP_paid_$i"} =~ s/option>\Q$form->{"AP_paid_$i"}\E/option selected>$form->{"AP_paid_$i"}/;
-
- # format amounts
- $form->{"paid_$i"} = $form->format_amount(\%myconfig, $form->{"paid_$i"}, 2);
- $form->{"exchangerate_$i"} = $form->format_amount(\%myconfig, $form->{"exchangerate_$i"});
-
- $exchangerate = qq|&nbsp;|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{"forex_$i"}) {
- $exchangerate = qq|<input type=hidden name="exchangerate_$i" value=$form->{"exchangerate_$i"}>$form->{"exchangerate_$i"}|;
- } else {
- $exchangerate = qq|<input name="exchangerate_$i" size=10 value=$form->{"exchangerate_$i"}>|;
- }
- }
- $exchangerate .= qq|
-<input type=hidden name="forex_$i" value=$form->{"forex_$i"}>
-|;
-
- $column_data{"paid_$i"} = qq|<td align=center><input name="paid_$i" size=11 value=$form->{"paid_$i"}></td>|;
- $column_data{"exchangerate_$i"} = qq|<td align=center>$exchangerate</td>|;
- $column_data{"AP_paid_$i"} = qq|<td align=center><select name="AP_paid_$i">$form->{"selectAP_paid_$i"}</select></td>|;
- $column_data{"datepaid_$i"} = qq|<td align=center><input name="datepaid_$i" size=11 title="$myconfig{dateformat}" value=$form->{"datepaid_$i"}></td>|;
- $column_data{"source_$i"} = qq|<td align=center><input name="source_$i" size=11 value="$form->{"source_$i"}"></td>|;
- $column_data{"memo_$i"} = qq|<td align=center><input name="memo_$i" size=11 value=$form->{"memo_$i"}></td>|;
-
- map { print qq|$column_data{"${_}_$i"}\n| } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- print qq|
- <input type=hidden name=paidaccounts value=$form->{paidaccounts}>
- <input type=hidden name=selectAP_paid value="$form->{selectAP_paid}">
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-<br>
-|;
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
- if ($form->{id}) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-|;
-
- if (!$form->{locked}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
-|;
- }
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post as new').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Purchase Order').qq|">
-|;
-
- } else {
- if ($transdate > $closedto) {
- print qq|<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
-print qq|
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-</form>
-
-<a name="end"></a>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub update {
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- &check_name(vendor);
-
- if ($form->{transdate} ne $form->{oldtransdate}) {
- $form->{duedate} = $form->current_date(\%myconfig, $form->{transdate}, $form->{terms} * 1);
- $form->{oldtransdate} = $form->{transdate};
- }
-
-
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, 'sell')));
-
- $j = 1;
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- map { $form->{"${_}_$j"} = $form->{"${_}_$i"} } qw(datepaid source memo);
- map { $form->{"${_}_$j"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
-
- $form->{"exchangerate_$j"} = $exchangerate if ($form->{"forex_$j"} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{"datepaid_$j"}, 'sell')));
- map { delete $form->{"${_}_$i"} } qw(datepaid source memo paid exchangerate forex) if $j != $i;
- } else {
- map { delete $form->{"${_}_$i"} } qw(datepaid source memo paid exchangerate forex);
- }
- $form->{paidaccounts} = $j;
- }
-
- $i = $form->{rowcount};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $item (qw(partsgroup projectnumber)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"}) if $form->{"select$item"};
- }
-
- if (($form->{"partnumber_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq "")) {
-
- &check_form;
-
- } else {
-
- $form->{transdate} = $form->{oldtransdate};
- IR->retrieve_item(\%myconfig, \%$form);
-
- my $rows = scalar @{ $form->{item_list} };
-
- if ($rows) {
- $form->{"qty_$i"} = 1 unless ($form->{"qty_$i"});
-
- if ($rows > 1) {
-
- &select_item;
- exit;
-
- } else {
- # override sellprice if there is one entered
- $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"});
-
- map { $form->{item_list}[$i]{$_} = $form->quote($form->{item_list}[$i]{$_}) } qw(partnumber description unit);
-
- map { $form->{"${_}_$i"} = $form->{item_list}[0]{$_} } keys %{ $form->{item_list}[0] };
-
- $s = ($sellprice) ? $sellprice : $form->{"sellprice_$i"};
-
- ($dec) = ($s =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if ($sellprice) {
- $form->{"sellprice_$i"} = $sellprice;
- } else {
- # if there is an exchange rate adjust sellprice
- $form->{"sellprice_$i"} /= $exchangerate;
- }
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- }
-
- &display_form;
-
- } else {
- # ok, so this is a new part
- # ask if it is a part or service item
-
- if ($form->{"partsgroup_$i"} && ($form->{"partsnumber_$i"} eq "") && ($form->{"description_$i"} eq "")) {
- $form->{rowcount}--;
- $form->{"discount_$i"} = "";
- &display_form;
- } else {
-
- $form->{"id_$i"} = 0;
- $form->{"unit_$i"} = $locale->text('ea');
-
- &new_item;
-
- }
- }
- }
-}
-
-
-
-sub post {
-
- $form->isblank("transdate", $locale->text('Invoice Date missing!'));
- $form->isblank("vendor", $locale->text('Vendor missing!'));
-
- # if the vendor changed get new values
- if (&check_name(vendor)) {
- &update;
- exit;
- }
-
- &validate_items;
-
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
-
- $form->error($locale->text('Cannot post invoice for a closed period!')) if ($transdate <= $closedto);
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- $datepaid = $form->datetonum($form->{"datepaid_$i"}, \%myconfig);
-
- $form->isblank("datepaid_$i", $locale->text('Payment date missing!'));
-
- $form->error($locale->text('Cannot post payment for a closed period!')) if ($datepaid <= $closedto);
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = $form->{exchangerate} if ($transdate == $datepaid);
- $form->isblank("exchangerate_$i", $locale->text('Exchange rate for payment missing!'));
- }
- }
- }
-
-
- ($form->{AP}) = split /--/, $form->{AP};
- ($form->{AP_paid}) = split /--/, $form->{AP_paid};
-
- $form->{id} = 0 if $form->{postasnew};
-
- $form->{invnumber} = $form->update_defaults(\%myconfig, "vinumber") unless $form->{invnumber};
-
- $form->redirect($locale->text('Invoice')." $form->{invnumber} ".$locale->text('posted!')) if (IR->post_invoice(\%myconfig, \%$form));
- $form->error($locale->text('Cannot post invoice!'));
-
-}
-
-
-
-sub delete {
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action header);
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>|.$locale->text('Confirm!').qq|</h2>
-
-<h4>|.$locale->text('Are you sure you want to delete Invoice Number').qq| $form->{invnumber}</h4>
-<p>
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-|;
-
-
-}
-
-
-
-sub yes {
-
- $form->redirect($locale->text('Invoice deleted!')) if (IR->delete_invoice(\%myconfig, \%$form));
- $form->error($locale->text('Cannot delete invoice!'));
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/is.pl b/sql-ledger/bin/mozilla/is.pl
deleted file mode 100644
index 605380d..0000000
--- a/sql-ledger/bin/mozilla/is.pl
+++ /dev/null
@@ -1,932 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Inventory invoicing module
-#
-#======================================================================
-
-
-use SL::IS;
-use SL::PE;
-
-require "$form->{path}/arap.pl";
-require "$form->{path}/io.pl";
-
-
-1;
-# end of main
-
-
-
-sub add {
-
- $form->{title} = $locale->text('Add Sales Invoice');
-
- $form->{callback} = "$form->{script}?action=add&type=$form->{type}&login=$form->{login}&path=$form->{path}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &invoice_links;
- &prepare_invoice;
- &display_form;
-
-}
-
-
-sub edit {
-
- $form->{title} = $locale->text('Edit Sales Invoice');
-
- &invoice_links;
- &prepare_invoice;
- &display_form;
-
-}
-
-
-sub invoice_links {
-
- $form->{vc} = 'customer';
-
- # create links
- $form->create_links("AR", \%myconfig, "customer");
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
-
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- if ($form->{all_customer}) {
- unless ($form->{customer_id}) {
- $form->{customer_id} = $form->{all_customer}->[0]->{id};
- }
- }
-
- IS->get_customer(\%myconfig, \%$form);
- delete $form->{notes};
- IS->retrieve_invoice(\%myconfig, \%$form);
-
- $form->{oldlanguage_code} = $form->{language_code};
-
- $form->get_partsgroup(\%myconfig, { language_code => $form->{language_code} });
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- foreach $ref (@ { $form->{all_partsgroup} }) {
- if ($ref->{translation}) {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{translation}\n|;
- } else {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{partsgroup}\n|;
- }
- }
- }
-
- if (@{ $form->{all_projects} }) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
- }
-
- $form->{oldcustomer} = "$form->{customer}--$form->{customer_id}";
- $form->{oldtransdate} = $form->{transdate};
-
- if ($form->{all_customer}) {
- $form->{customer} = "$form->{customer}--$form->{customer_id}";
- map { $form->{selectcustomer} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_customer} });
- }
-
- # departments
- if ($form->{all_departments}) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $form->{employee} = "$form->{employee}--$form->{employee_id}";
- # sales staff
- if ($form->{all_employees}) {
- $form->{selectemployee} = "";
- map { $form->{selectemployee} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_employees} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- # forex
- $form->{forex} = $form->{exchangerate};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $key (keys %{ $form->{AR_links} }) {
- foreach $ref (@{ $form->{AR_links}{$key} }) {
- $form->{"select$key"} .= "<option>$ref->{accno}--$ref->{description}\n";
- }
-
- if ($key eq "AR_paid") {
- for $i (1 .. scalar @{ $form->{acc_trans}{$key} }) {
- $form->{"AR_paid_$i"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}";
- # reverse paid
- $form->{"paid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{amount} * -1;
- $form->{"datepaid_$i"} = $form->{acc_trans}{$key}->[$i-1]->{transdate};
- $form->{"forex_$i"} = $form->{"exchangerate_$i"} = $form->{acc_trans}{$key}->[$i-1]->{exchangerate};
- $form->{"source_$i"} = $form->{acc_trans}{$key}->[$i-1]->{source};
- $form->{"memo_$i"} = $form->{acc_trans}{$key}->[$i-1]->{memo};
-
- $form->{paidaccounts} = $i;
- }
- } else {
- $form->{$key} = "$form->{acc_trans}{$key}->[0]->{accno}--$form->{acc_trans}{$key}->[0]->{description}";
- }
-
- }
-
- $form->{paidaccounts} = 1 unless (exists $form->{paidaccounts});
-
- $form->{AR} = $form->{AR_1} unless $form->{id};
-
- $form->{locked} = ($form->{revtrans}) ? '1' : ($form->datetonum($form->{transdate}, \%myconfig) <= $form->datetonum($form->{closedto}, \%myconfig));
-
- $form->{readonly} = 1 if $myconfig{acs} =~ /AR--Sales Invoice/;
-
-}
-
-
-sub prepare_invoice {
-
- $form->{type} = "invoice";
- $form->{formname} = "invoice";
- $form->{format} = "postscript" if $myconfig{printer};
- $form->{media} = $myconfig{printer};
-
- $form->{oldcurrency} = $form->{currency};
-
- if ($form->{id}) {
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(invnumber ordnumber quonumber shippingpoint shipvia notes intnotes);
-
- foreach $ref (@{ $form->{invoice_details} } ) {
- $i++;
- map { $form->{"${_}_$i"} = $ref->{$_} } keys %{ $ref };
-
- $form->{"projectnumber_$i"} = qq|$ref->{projectnumber}--$ref->{project_id}|;
- $form->{"partsgroup_$i"} = qq|$ref->{partsgroup}--$ref->{partsgroup_id}|;
-
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * 100);
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- $form->{"oldqty_$i"} = $form->{"qty_$i"};
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description unit);
- $form->{rowcount} = $i;
- }
- }
-
-}
-
-
-
-sub form_header {
-
- # set option selected
- foreach $item (qw(AR currency)) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- foreach $item (qw(customer department employee)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
-
- $exchangerate = "";
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td>$form->{exchangerate}<input type=hidden name=exchangerate value=$form->{exchangerate}></td>|;
- } else {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td><input name=exchangerate size=10 value=$form->{exchangerate}></td>|;
- }
- }
- $exchangerate .= qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
-
- if ($form->{selectcustomer}) {
- $customer = qq|<select name=customer>$form->{selectcustomer}</select>
- <input type=hidden name="selectcustomer" value="|.
- $form->escape($form->{selectcustomer},1).qq|">|;
- } else {
- $customer = qq|<input name=customer value="$form->{customer}" size=35>|;
- }
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.
- $form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
-
- if ($form->{business}) {
- $business = qq|
- <tr>
- <th align=right>|.$locale->text('Business').qq|</th>
- <td>$form->{business}</td>
- <th align=right>|.$locale->text('Trade Discount').qq|</th>
- <td>|.$form->format_amount(\%myconfig, $form->{tradediscount} * 100).qq| %</td>
- </tr>
-|;
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=media value=$form->{media}>
-<input type=hidden name=format value=$form->{format}>
-
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=printed value="$form->{printed}">
-<input type=hidden name=emailed value="$form->{emailed}">
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=vc value=$form->{vc}>
-
-<input type=hidden name=terms value=$form->{terms}>
-
-<input type=hidden name=discount value=$form->{discount}>
-<input type=hidden name=creditlimit value=$form->{creditlimit}>
-<input type=hidden name=creditremaining value=$form->{creditremaining}>
-
-<input type=hidden name=tradediscount value=$form->{tradediscount}>
-<input type=hidden name=business value="$form->{business}">
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-
-<input type=hidden name=shipped value=$form->{shipped}>
-
-<input type=hidden name=oldtransdate value=$form->{oldtransdate}>
-
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Customer').qq|</th>
- <td colspan=3>$customer</td>
- <input type=hidden name=customer_id value=$form->{customer_id}>
- <input type=hidden name=oldcustomer value="$form->{oldcustomer}">
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <th nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>|.$form->format_amount(\%myconfig, $form->{creditlimit}, 0, "0").qq|</td>
- <td width=20%></td>
- <th nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n" nowrap>|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- $business
- <tr>
- <th align=right nowrap>|.$locale->text('Record in').qq|</th>
- <td colspan=3><select name=AR>$form->{selectAR}</select></td>
- <input type=hidden name=selectAR value="$form->{selectAR}">
- </tr>
- $department
- <tr>
- <th align=right nowrap>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
- <input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
- <input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
- $exchangerate
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Shipping Point').qq|</th>
- <td colspan=3><input name=shippingpoint size=35 value="$form->{shippingpoint}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Ship via').qq|</th>
- <td colspan=3><input name=shipvia size=35 value="$form->{shipvia}"></td>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Salesperson').qq|</th>
- <td><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.
- $form->escape($form->{selectemployee},1).qq|">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Invoice Number').qq|</th>
- <td><input name=invnumber size=20 value="$form->{invnumber}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td><input name=ordnumber size=20 value="$form->{ordnumber}"></td>
-<input type=hidden name=quonumber value="$form->{quonumber}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Invoice Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{dateformat}" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Due Date').qq|</th>
- <td><input name=duedate size=11 title="$myconfig{dateformat}" value=$form->{duedate}></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- </td>
- </tr>
-<!-- shipto are in hidden variables -->
-
-<input type=hidden name=shiptoname value="$form->{shiptoname}">
-<input type=hidden name=shiptoaddress1 value="$form->{shiptoaddress1}">
-<input type=hidden name=shiptoaddress2 value="$form->{shiptoaddress2}">
-<input type=hidden name=shiptocity value="$form->{shiptocity}">
-<input type=hidden name=shiptostate value="$form->{shiptostate}">
-<input type=hidden name=shiptozipcode value="$form->{shiptozipcode}">
-<input type=hidden name=shiptocountry value="$form->{shiptocountry}">
-<input type=hidden name=shiptocontact value="$form->{shiptocontact}">
-<input type=hidden name=shiptophone value="$form->{shiptophone}">
-<input type=hidden name=shiptofax value="$form->{shiptofax}">
-<input type=hidden name=shiptoemail value="$form->{shiptoemail}">
-
-<!-- email variables -->
-<input type=hidden name=message value="$form->{message}">
-<input type=hidden name=email value="$form->{email}">
-<input type=hidden name=subject value="$form->{subject}">
-<input type=hidden name=cc value="$form->{cc}">
-<input type=hidden name=bcc value="$form->{bcc}">
-
-<input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-|;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- print qq|
-<input type=hidden name="${item}_rate" value="$form->{"${item}_rate"}">
-<input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
-<input type=hidden name="${item}_taxnumber" value="$form->{"${item}_taxnumber"}">
-|;
- }
-
-}
-
-
-
-sub form_footer {
-
- $form->{invtotal} = $form->{invsubtotal};
-
- if (($rows = $form->numtextrows($form->{notes}, 26, 8)) < 2) {
- $rows = 2;
- }
- if (($introws = $form->numtextrows($form->{intnotes}, 35, 8)) < 2) {
- $introws = 2;
- }
- $rows = ($rows > $introws) ? $rows : $introws;
- $notes = qq|<textarea name=notes rows=$rows cols=26 wrap=soft>$form->{notes}</textarea>|;
- $intnotes = qq|<textarea name=intnotes rows=$rows cols=35 wrap=soft>$form->{intnotes}</textarea>|;
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
-
- $taxincluded = "";
- if ($form->{taxaccounts}) {
- $taxincluded = qq|
- <tr height="5"></tr>
- <tr>
- <td align=right>
- <input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}></td><th align=left>|.$locale->text('Tax Included').qq|</th>
- </tr>
-|;
- }
-
- if (!$form->{taxincluded}) {
-
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"${item}_base"}) {
- $form->{"${item}_total"} = $form->round_amount($form->{"${item}_base"} * $form->{"${item}_rate"}, 2);
- $form->{invtotal} += $form->{"${item}_total"};
- $form->{"${item}_total"} = $form->format_amount(\%myconfig, $form->{"${item}_total"}, 2);
-
- $tax .= qq|
- <tr>
- <th align=right>$form->{"${item}_description"}</th>
- <td align=right>$form->{"${item}_total"}</td>
- </tr>
-|;
- }
- }
-
- $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0);
-
- $subtotal = qq|
- <tr>
- <th align=right>|.$locale->text('Subtotal').qq|</th>
- <td align=right>$form->{invsubtotal}</td>
- </tr>
-|;
-
- }
-
- $form->{oldinvtotal} = $form->{invtotal};
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2, 0);
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <table>
- <tr>
- <th align=left>|.$locale->text('Notes').qq|</th>
- <th align=left>|.$locale->text('Internal Notes').qq|</th>
- </tr>
- <tr valign=top>
- <td>$notes</td>
- <td>$intnotes</td>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- $subtotal
- $tax
- <tr>
- <th align=right>|.$locale->text('Total').qq|</th>
- <td align=right>$form->{invtotal}</td>
- </tr>
- $taxincluded
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
- <th colspan=6 class=listheading>|.$locale->text('Payments')
- .qq|</th>
- </tr>
-|;
-
- if ($form->{currency} eq $form->{defaultcurrency}) {
- @column_index = qw(datepaid source memo paid AR_paid);
- } else {
- @column_index = qw(datepaid source memo paid exchangerate AR_paid);
- }
-
- $column_data{datepaid} = "<th>".$locale->text('Date')."</th>";
- $column_data{paid} = "<th>".$locale->text('Amount')."</th>";
- $column_data{exchangerate} = "<th>".$locale->text('Exch')."</th>";
- $column_data{AR_paid} = "<th>".$locale->text('Account')."</th>";
- $column_data{source} = "<th>".$locale->text('Source')."</th>";
- $column_data{memo} = "<th>".$locale->text('Memo')."</th>";
-
- print "
- <tr>
-";
- map { print "$column_data{$_}\n" } @column_index;
- print "
- </tr>
-";
-
- $form->{paidaccounts}++ if ($form->{"paid_$form->{paidaccounts}"});
- for $i (1 .. $form->{paidaccounts}) {
-
- print "
- <tr>\n";
-
- $form->{"selectAR_paid_$i"} = $form->{selectAR_paid};
- $form->{"selectAR_paid_$i"} =~ s/option>\Q$form->{"AR_paid_$i"}\E/option selected>$form->{"AR_paid_$i"}/;
-
- # format amounts
- $totalpaid += $form->{"paid_$i"};
- $form->{"paid_$i"} = $form->format_amount(\%myconfig, $form->{"paid_$i"}, 2);
- $form->{"exchangerate_$i"} = $form->format_amount(\%myconfig, $form->{"exchangerate_$i"});
-
- $exchangerate = qq|&nbsp;|;
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{"forex_$i"}) {
- $exchangerate = qq|<input type=hidden name="exchangerate_$i" value=$form->{"exchangerate_$i"}>$form->{"exchangerate_$i"}|;
- } else {
- $exchangerate = qq|<input name="exchangerate_$i" size=10 value=$form->{"exchangerate_$i"}>|;
- }
- }
-
- $exchangerate .= qq|
-<input type=hidden name="forex_$i" value=$form->{"forex_$i"}>
-|;
-
- $column_data{"paid_$i"} = qq|<td align=center><input name="paid_$i" size=11 value=$form->{"paid_$i"}></td>|;
- $column_data{"exchangerate_$i"} = qq|<td align=center>$exchangerate</td>|;
- $column_data{"AR_paid_$i"} = qq|<td align=center><select name="AR_paid_$i">$form->{"selectAR_paid_$i"}</select></td>|;
- $column_data{"datepaid_$i"} = qq|<td align=center><input name="datepaid_$i" size=11 title="$myconfig{dateformat}" value=$form->{"datepaid_$i"}></td>|;
- $column_data{"source_$i"} = qq|<td align=center><input name="source_$i" size=11 value="$form->{"source_$i"}"></td>|;
- $column_data{"memo_$i"} = qq|<td align=center><input name="memo_$i" size=11 value="$form->{"memo_$i"}"></td>|;
-
- map { print qq|$column_data{"${_}_$i"}\n| } @column_index;
- print "
- </tr>\n";
- }
-
- print qq|
-<input type=hidden name=paidaccounts value=$form->{paidaccounts}>
-<input type=hidden name=selectAR_paid value="$form->{selectAR_paid}">
-<input type=hidden name=oldinvtotal value=$form->{oldinvtotal}>
-<input type=hidden name=oldtotalpaid value=$totalpaid>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
- <tr>
- <td>
-|;
-
- &print_options;
-
- print qq|
- </td>
- </tr>
-</table>
-<br>
-|;
-
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
-
- if ($form->{id}) {
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Ship to').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('E-mail').qq|">
-|;
-
- if (! $form->{locked}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
-
- if ($latex) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">|;
- }
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
-|;
- }
-
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Post as new').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Sales Order').qq|">
-|;
-
- } else {
-
- if ($transdate > $closedto) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Ship to').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('E-mail').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
-
- if ($latex) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Print and Post').qq|">|;
- }
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-</form>
-
-<a name="end"></a>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update {
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- &check_name(customer);
-
- if ($form->{transdate} ne $form->{oldtransdate}) {
- $form->{duedate} = $form->current_date(\%myconfig, $form->{transdate}, $form->{terms} * 1);
- $form->{oldtransdate} = $form->{transdate};
- }
-
-
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, 'buy')));
-
- $j = 1;
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- map { $form->{"${_}_$j"} = $form->{"${_}_$i"} } qw(datepaid source memo);
- map { $form->{"${_}_$j"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
-
- $form->{"exchangerate_$j"} = $exchangerate if ($form->{"forex_$j"} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{"datepaid_$j"}, 'buy')));
- map { delete $form->{"${_}_$i"} } qw(datepaid source memo paid exchangerate forex) if $j != $i;
- $j++;
- } else {
- map { delete $form->{"${_}_$i"} } qw(datepaid source memo paid exchangerate forex);
- }
- $form->{paidaccounts} = $j;
- }
-
- $i = $form->{rowcount};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $item (qw(partsgroup projectnumber)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"}) if $form->{"select$item"};
- }
-
- # if last row empty, check the form otherwise retrieve new item
- if (($form->{"partnumber_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq "")) {
-
- $form->{creditremaining} += ($form->{oldinvtotal} - $form->{oldtotalpaid});
- &check_form;
-
- } else {
-
- IS->retrieve_item(\%myconfig, \%$form);
-
- $rows = scalar @{ $form->{item_list} };
-
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{discount} * 100);
-
- if ($rows > 0) {
- $form->{"qty_$i"} = ($form->{"qty_$i"} * 1) ? $form->{"qty_$i"} : 1;
-
- if ($rows > 1) {
-
- &select_item;
- exit;
-
- } else {
-
- $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"});
-
- map { $form->{item_list}[$i]{$_} = $form->quote($form->{item_list}[$i]{$_}) } qw(partnumber description unit);
- map { $form->{"${_}_$i"} = $form->{item_list}[0]{$_} } keys %{ $form->{item_list}[0] };
-
- $form->{"discount_$i"} = $form->{discount} * 100;
-
- $s = ($sellprice) ? $sellprice : $form->{"sellprice_$i"};
- ($dec) = ($s =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if ($sellprice) {
- $form->{"sellprice_$i"} = $sellprice;
- } else {
- # if there is an exchange rate adjust sellprice
- $form->{"sellprice_$i"} *= (1 - $form->{tradediscount});
- $form->{"sellprice_$i"} /= $exchangerate;
- }
-
- map { $form->{"${_}_$i"} /= $exchangerate } qw(listprice lastcost);
-
- $amount = $form->{"sellprice_$i"} * $form->{"qty_$i"} * (1 - $form->{"discount_$i"} / 100);
- map { $form->{"${_}_base"} = 0 } (split / /, $form->{taxaccounts});
- map { $form->{"${_}_base"} += $amount } (split / /, $form->{"taxaccounts_$i"});
- map { $amount += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } split / /, $form->{"taxaccounts_$i"} if !$form->{taxincluded};
-
- $form->{creditremaining} -= $amount;
-
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, $decimalplaces) } qw(sellprice listprice lastcost);
-
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- }
-
- &display_form;
-
- } else {
- # ok, so this is a new part
- # ask if it is a part or service item
-
- if ($form->{"partsgroup_$i"} && ($form->{"partsnumber_$i"} eq "") && ($form->{"description_$i"} eq "")) {
- $form->{rowcount}--;
- $form->{"discount_$i"} = "";
- &display_form;
- } else {
-
- $form->{"id_$i"} = 0;
- $form->{"unit_$i"} = $locale->text('ea');
-
- &new_item;
-
- }
- }
- }
-}
-
-
-
-sub post {
-
- $form->isblank("transdate", $locale->text('Invoice Date missing!'));
- $form->isblank("customer", $locale->text('Customer missing!'));
-
- # if oldcustomer ne customer redo form
- if (&check_name(customer)) {
- &update;
- exit;
- }
-
- &validate_items;
-
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
-
- $form->error($locale->text('Cannot post invoice for a closed period!')) if ($transdate <= $closedto);
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- for $i (1 .. $form->{paidaccounts}) {
- if ($form->{"paid_$i"}) {
- $datepaid = $form->datetonum($form->{"datepaid_$i"}, \%myconfig);
-
- $form->isblank("datepaid_$i", $locale->text('Payment date missing!'));
-
- $form->error($locale->text('Cannot post payment for a closed period!')) if ($datepaid <= $closedto);
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- $form->{"exchangerate_$i"} = $form->{exchangerate} if ($transdate == $datepaid);
- $form->isblank("exchangerate_$i", $locale->text('Exchange rate for payment missing!'));
- }
- }
- }
-
-
- ($form->{AR}) = split /--/, $form->{AR};
- ($form->{AR_paid}) = split /--/, $form->{AR_paid};
-
- $form->{label} = $locale->text('Invoice');
-
- $form->{id} = 0 if $form->{postasnew};
-
- $form->{invnumber} = $form->update_defaults(\%myconfig, "sinumber") unless $form->{invnumber};
-
- $form->redirect($locale->text('Invoice posted!')) if (IS->post_invoice(\%myconfig, \%$form));
- $form->error($locale->text('Cannot post invoice!'));
-
-}
-
-
-sub print_and_post {
-
- $form->error($locale->text('Select postscript or PDF!')) if $form->{format} !~ /(postscript|pdf)/;
- $form->error($locale->text('Select Printer or Queue!')) if $form->{media} eq 'screen';
-
- $old_form = new Form;
- $form->{display_form} = "post";
- map { $old_form->{$_} = $form->{$_} } keys %$form;
- $old_form->{rowcount}++;
-
- &print_form($old_form);
-
-}
-
-
-
-sub delete {
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action header);
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>|.$locale->text('Confirm!').qq|</h2>
-
-<h4>|.$locale->text('Are you sure you want to delete Invoice Number').qq| $form->{invnumber}
-</h4>
-
-<p>
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-|;
-
-
-}
-
-
-
-sub yes {
-
- $form->redirect($locale->text('Invoice deleted!')) if (IS->delete_invoice(\%myconfig, \%$form, $spool));
- $form->error($locale->text('Cannot delete invoice!'));
-
-}
-
-
-sub redirect {
-
- $form->redirect;
- $form->error($locale->text('Invoice processed!'));
-
-}
-
diff --git a/sql-ledger/bin/mozilla/login.pl b/sql-ledger/bin/mozilla/login.pl
deleted file mode 100644
index 1cf1f72..0000000
--- a/sql-ledger/bin/mozilla/login.pl
+++ /dev/null
@@ -1,325 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2000
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-######################################################################
-#
-# login frontend
-#
-#######################################################################
-
-
-use DBI;
-use SL::User;
-use SL::Form;
-
-
-$form = new Form;
-
-$locale = new Locale $language, "login";
-
-# customization
-if (-f "$form->{path}/custom_$form->{script}") {
- eval { require "$form->{path}/custom_$form->{script}"; };
- $form->error($@) if ($@);
-}
-
-# per login customization
-if (-f "$form->{path}/$form->{login}_$form->{script}") {
- eval { require "$form->{path}/$form->{login}_$form->{script}"; };
- $form->error($@) if ($@);
-}
-
-# window title bar, user info
-$form->{titlebar} = "SQL-Ledger ".$locale->text('Version'). " $form->{version}";
-
-if ($form->{action}) {
- $form->{titlebar} .= " - $myconfig{name} - $myconfig{dbname}";
- &{ $locale->findsub($form->{action}) };
-} else {
- &login_screen;
-}
-
-
-1;
-
-
-sub login_screen {
-
- $form->{stylesheet} = "sql-ledger.css";
- $form->{favicon} = "sql-ledger.ico";
-
- $form->{endsession} = 1;
- $form->header(1);
-
- if ($form->{login}) {
- $sf = qq|function sf() { document.login.password.focus(); }|;
- } else {
- $sf = qq|function sf() { document.login.login.focus(); }|;
- }
-
- if ($form->{jsc} && -d 'bin/js') {
- print qq|
-<script language="JavaScript" type="text/javascript">
-<!--
-var agt = navigator.userAgent.toLowerCase();
-var is_major = parseInt(navigator.appVersion);
-var is_nav = ((agt.indexOf('mozilla') != -1) && (agt.indexOf('spoofer') == -1)
- && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera') == -1)
- && (agt.indexOf('webtv') == -1));
-var is_nav4lo = (is_nav && (is_major <= 4));
-
-function jsp() {
- if (is_nav4lo)
- document.login.path.value = "bin/mozilla"
- else
- document.login.path.value = "bin/js"
-}
-$sf
-// End -->
-</script>
-|;
- }
-
- print qq|
-
-<body class=login onload="jsp(); sf()">
-
-<pre>
-
-</pre>
-
-<center>
-<table class=login border=3 cellpadding=20>
- <tr>
- <td class=login align=center><a href="http://www.sql-ledger.org" target=_top><img src=sql-ledger.gif border=0></a>
-<h1 class=login align=center>|.$locale->text('Version').qq| $form->{version}
-</h1>
-
-<p>
-
-<form method=post action=$form->{script} name=login>
-
- <table width=100%>
- <tr>
- <td align=center>
- <table>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td><input class=login name=login size=30 value=$form->{login}></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input class=login type=password name=password size=30></td>
- </tr>
- <input type=hidden name=path value=$form->{path}>
- </table>
-
- <br>
- <input type=submit name=action value="|.$locale->text('Login').qq|">
- </td>
- </tr>
- </table>
-
-</form>
-
- </td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub selectdataset {
- my ($login) = @_;
-
- if (-f "css/sql-ledger.css") {
- $form->{stylesheet} = "sql-ledger.css";
- }
-
- $form->header;
-
- print qq|
-<body class=login>
-
-<pre>
-
-</pre>
-
-<center>
-<table class=login border=3 cellpadding=20>
- <tr>
- <td class=login align=center><a href="http://www.sql-ledger.org" target=_top><img src=sql-ledger.gif border=0></a>
-<h1 class=login align=center>|.$locale->text('Version').qq| $form->{version}
-</h1>
-
-<p>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=beenthere value=1>
-
- <table width=100%>
- <tr>
- <td align=center>
- <table>
- <tr>
- <th align=right>|.$locale->text('Name').qq|</th>
- <td>$form->{login}</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input class=login type=password name=password size=30 value=$form->{password}></td>
- </tr>
- <input type=hidden name=path value=$form->{path}>
- <tr>
- <th align=right>|.$locale->text('Company').qq|</th>
- <td>|;
-
- $checked = "checked";
- foreach $login (sort { $login{$a} cmp $login{$b} } keys %{ $login }) {
- print qq|
- <br><input class=login type=radio name=login value=$login $checked>$login{$login}
- |;
- $checked = "";
- }
-
- print qq|
- </td>
- </tr>
- </table>
- <br>
- <input type=submit name=action value="|.$locale->text('Login').qq|">
- </td>
- </tr>
- </table>
-
-</form>
-
- </td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub login {
-
- $form->{stylesheet} = "sql-ledger.css";
- $form->{favicon} = "sql-ledger.ico";
-
- $form->error($locale->text('You did not enter a name!')) unless ($form->{login});
-
- if (! $form->{beenthere}) {
- open(FH, "$memberfile") or $form->error("$memberfile : $!");
- @a = <FH>;
- close(FH);
-
- @login = grep { s/\[(.*)\]/$1/ } @a;
- @company = grep { s/company=(.*)/$1/ } @a;
- shift @login;
-
- for ($i = 0; $i <= $#login; $i++) {
- chop $login[$i];
- if (($form->{login} eq $login[$i]) || ($login[$i] =~ /$form->{login}@/)) {
- chop $company[$i];
- $login{$login[$i]} = $company[$i];
- }
- }
-
- if (keys %login > 1) {
- &selectdataset(\%login);
- exit;
- }
- }
-
-
- $user = new User $memberfile, $form->{login};
-
- # if we get an error back, bale out
- if (($errno = $user->login(\%$form, $userspath)) <= -1) {
-
- $errno *= -1;
- $err[1] = $locale->text('Incorrect Password!');
- $err[2] = $locale->text('Incorrect Dataset version!');
- $err[3] = qq|$form->{login} |.$locale->text('is not a member!');
- $err[4] = $locale->text('Dataset is newer than version!');
-
- if ($errno == 5) {
- # upgrade dataset and log in again
- open FH, ">$userspath/nologin" or $form->error($!);
-
- map { $form->{$_} = $user->{$_} } qw(dbname dbhost dbport dbdriver dbuser dbpasswd);
-
- $form->{dbpasswd} = unpack 'u', $form->{dbpasswd};
-
- $form->{dbupdate} = "db$user->{dbname}";
- $form->{$form->{dbupdate}} = 1;
-
- $form->header;
- print $locale->text('Upgrading to Version')." $form->{version} ... ";
-
- # required for Oracle
- $form->{dbdefault} = $sid;
-
- $user->dbupdate(\%$form);
-
- # remove lock file
- unlink "$userspath/nologin";
-
- print $locale->text('done');
-
- print "<p><a href=menu.pl?login=$form->{login}&sessionid=$form->{sessionid}&path=$form->{path}&action=display>".$locale->text('Continue')."</a>";
-
- exit;
- }
-
- $form->error($err[$errno]);
- }
-
-
- # made it this far, execute the menu
- $form->{callback} = "menu.pl?login=$form->{login}&path=$form->{path}&action=display";
-
- $form->redirect;
-
-}
-
-
-
-sub logout {
-
- $jsc = $form->{path} =~ /js/;
- $form->{callback} = "$form->{script}?path=$form->{path}&login=$form->{login}&jsc=$jsc";
-
- $form->redirect;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/menu.pl b/sql-ledger/bin/mozilla/menu.pl
deleted file mode 100644
index fab2905..0000000
--- a/sql-ledger/bin/mozilla/menu.pl
+++ /dev/null
@@ -1,158 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Christopher Browne
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-#
-# two frame layout with refractured menu
-#
-#######################################################################
-
-$menufile = "menu.ini";
-use SL::Menu;
-
-
-1;
-# end of main
-
-
-sub display {
-
- $menuwidth = ($ENV{HTTP_USER_AGENT} =~ /links/i) ? "240" : "155";
- $menuwidth = $myconfig{menuwidth} if $myconfig{menuwidth};
-
- $form->header(1);
-
- print qq|
-
-<FRAMESET COLS="$menuwidth,*" BORDER="1">
-
- <FRAME NAME="acc_menu" SRC="$form->{script}?login=$form->{login}&sessionid=$form->{sessionid}&action=acc_menu&path=$form->{path}">
- <FRAME NAME="main_window" SRC="am.pl?login=$form->{login}&sessionid=$form->{sessionid}&action=company_logo&path=$form->{path}">
-
-</FRAMESET>
-
-</BODY>
-</HTML>
-|;
-
-}
-
-
-
-sub acc_menu {
-
- my $menu = new Menu "$menufile";
- $menu = new Menu "custom_$menufile" if (-f "custom_$menufile");
- $menu = new Menu "$form->{login}_$menufile" if (-f "$form->{login}_$menufile");
-
- $form->{title} = $locale->text('Accounting Menu');
-
- $form->header;
-
- print qq|
-<body class=menu>
-
-|;
-
- &section_menu($menu);
-
- print qq|
-</body>
-</html>
-|;
-
-}
-
-
-sub section_menu {
- my ($menu, $level) = @_;
-
- # build tiered menus
- my @menuorder = $menu->access_control(\%myconfig, $level);
-
- while (@menuorder) {
- $item = shift @menuorder;
- $label = $item;
- $label =~ s/$level--//g;
-
- my $spacer = "&nbsp;" x (($item =~ s/--/--/g) * 2);
-
- $label =~ s/.*--//g;
- $label = $locale->text($label);
- $label =~ s/ /&nbsp;/g if $label !~ /<img /i;
-
- $menu->{$item}{target} = "main_window" unless $menu->{$item}{target};
-
- if ($menu->{$item}{submenu}) {
-
- $menu->{$item}{$item} = !$form->{$item};
-
- if ($form->{level} && $item =~ $form->{level}) {
-
- # expand menu
- print qq|<br>\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label</a>|;
-
- # remove same level items
- map { shift @menuorder } grep /^$item/, @menuorder;
-
- &section_menu($menu, $item);
-
- print qq|<br>\n|;
-
- } else {
-
- print qq|<br>\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label&nbsp;...</a>|;
-
- # remove same level items
- map { shift @menuorder } grep /^$item/, @menuorder;
-
- }
-
- } else {
-
- if ($menu->{$item}{module}) {
-
- print qq|<br>\n$spacer|.$menu->menuitem(\%myconfig, \%$form, $item, $level).qq|$label</a>|;
-
- } else {
-
- $form->{tag}++;
- print qq|<a name="id$form->{tag}"></a>
- <p><b>$label</b>|;
-
- &section_menu($menu, $item);
-
- print qq|<br>\n|;
-
- }
- }
- }
-}
-
-
-sub menubar {
-
- 1;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/oe.pl b/sql-ledger/bin/mozilla/oe.pl
deleted file mode 100644
index 1c494c1..0000000
--- a/sql-ledger/bin/mozilla/oe.pl
+++ /dev/null
@@ -1,2470 +0,0 @@
-#=====================================================================
-# SQL-Ledger, Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Order entry module
-# Quotation module
-#
-#======================================================================
-
-
-use SL::OE;
-use SL::IR;
-use SL::IS;
-use SL::PE;
-
-require "$form->{path}/arap.pl";
-require "$form->{path}/io.pl";
-
-
-1;
-# end of main
-
-
-sub add {
-
- if ($form->{type} eq 'purchase_order') {
- $form->{title} = $locale->text('Add Purchase Order');
- $form->{vc} = 'vendor';
- }
- if ($form->{type} eq 'sales_order') {
- $form->{title} = $locale->text('Add Sales Order');
- $form->{vc} = 'customer';
- }
- if ($form->{type} eq 'request_quotation') {
- $form->{title} = $locale->text('Add Request for Quotation');
- $form->{vc} = 'vendor';
- }
- if ($form->{type} eq 'sales_quotation') {
- $form->{title} = $locale->text('Add Quotation');
- $form->{vc} = 'customer';
- }
-
- $form->{callback} = "$form->{script}?action=add&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&path=$form->{path}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &order_links;
- &prepare_order;
- &display_form;
-
-}
-
-
-sub edit {
-
- if ($form->{type} =~ /(purchase_order|bin_list)/) {
- $form->{title} = $locale->text('Edit Purchase Order');
- $form->{vc} = 'vendor';
- $form->{type} = 'purchase_order';
- }
- if ($form->{type} =~ /((sales|work)_order|(packing|pick)_list)/) {
- $form->{title} = $locale->text('Edit Sales Order');
- $form->{vc} = 'customer';
- $form->{type} = 'sales_order';
- }
- if ($form->{type} eq 'request_quotation') {
- $form->{title} = $locale->text('Edit Request for Quotation');
- $form->{vc} = 'vendor';
- }
- if ($form->{type} eq 'sales_quotation') {
- $form->{title} = $locale->text('Edit Quotation');
- $form->{vc} = 'customer';
- }
-
- &order_links;
- &prepare_order;
- &display_form;
-
-}
-
-
-
-sub order_links {
-
- # get customer/vendor
- $form->all_vc(\%myconfig, $form->{vc}, ($form->{vc} eq 'customer') ? "AR" : "AP");
-
- $form->get_partsgroup(\%myconfig);
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- map { $form->{selectpartsgroup} .= qq|<option value="$_->{partsgroup}--$_->{id}">$_->{partsgroup}\n| } @{ $form->{all_partsgroup} };
- }
-
- # retrieve order/quotation
- OE->retrieve(\%myconfig, \%$form);
-
- # currencies
- @curr = split /:/, $form->{currencies};
- chomp $curr[0];
- $form->{defaultcurrency} = $curr[0];
- $form->{currency} = $form->{defaultcurrency} unless $form->{currency};
-
- map { $form->{selectcurrency} .= "<option>$_\n" } @curr;
-
- $form->{oldlanguage_code} = $form->{language_code};
-
- $form->get_partsgroup(\%myconfig, { language_code => $form->{language_code} });
-
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- foreach $ref (@ { $form->{all_partsgroup} }) {
- if ($ref->{translation}) {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{translation}\n|;
- } else {
- $form->{selectpartsgroup} .= qq|<option value="$ref->{partsgroup}--$ref->{id}">$ref->{partsgroup}\n|;
- }
- }
- }
-
- if (@{ $form->{all_projects} }) {
- $form->{selectprojectnumber} = "<option>\n";
- map { $form->{selectprojectnumber} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
- }
-
- $form->{shipto} = 1 if $form->{id};
-
- if (@{ $form->{"all_$form->{vc}"} }) {
- unless ($form->{"$form->{vc}_id"}) {
- $form->{"$form->{vc}_id"} = $form->{"all_$form->{vc}"}->[0]->{id};
- }
- }
-
- # get customer / vendor
- if ($form->{type} =~ /(purchase_order|request_quotation|receive_order)/ ) {
- IR->get_vendor(\%myconfig, \%$form);
- }
- if ($form->{type} =~ /(sales|ship)_(order|quotation)/) {
- IS->get_customer(\%myconfig, \%$form);
- }
-
- ($form->{$form->{vc}}) = split /--/, $form->{$form->{vc}};
- $form->{"old$form->{vc}"} = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|;
-
- # build selection list
- if (@{ $form->{"all_$form->{vc}"} }) {
- $form->{$form->{vc}} = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|;
- map { $form->{"select$form->{vc}"} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{"all_$form->{vc}"} });
- }
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
- $form->{department} = "$form->{department}--$form->{department_id}";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $form->{employee} = "$form->{employee}--$form->{employee_id}";
-
- # sales staff
- if (@{ $form->{all_employees} }) {
- $form->{selectemployee} = "";
- map { $form->{selectemployee} .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } (@{ $form->{all_employees} });
- }
-
- if (@{ $form->{all_languages} }) {
- $form->{selectlanguage} = "<option>\n";
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_languages} };
- }
-
- # forex
- $form->{forex} = $form->{exchangerate};
-
-}
-
-
-sub prepare_order {
-
- $form->{format} = "postscript" if $myconfig{printer};
- $form->{media} = $myconfig{printer};
- $form->{formname} = $form->{type};
- $form->{oldcurrency} = $form->{currency};
-
- if ($form->{id}) {
-
- map { $form->{$_} = $form->quote($form->{$_}) } qw(ordnumber quonumber shippingpoint shipvia notes intnotes shiptoname shiptoaddress1 shiptoaddress2 shiptocity shiptostate shiptozipcode shiptocountry shiptocontact);
-
- foreach $ref (@{ $form->{form_details} } ) {
- $i++;
- map { $form->{"${_}_$i"} = $ref->{$_} } keys %{ $ref };
-
- $form->{"projectnumber_$i"} = qq|$ref->{projectnumber}--$ref->{project_id}|;
- $form->{"partsgroup_$i"} = qq|$ref->{partsgroup}--$ref->{partsgroup_id}|;
-
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * 100);
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- $form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces);
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- $form->{"oldqty_$i"} = $form->{"qty_$i"};
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description unit);
- $form->{rowcount} = $i;
- }
- }
-
- if ($form->{type} eq 'sales_quotation') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Quotations--Quotation/;
- }
- if ($form->{type} eq 'request_quotation') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Quotations--RFQ/;
- }
- if ($form->{type} eq 'sales_order') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Order Entry--Sales Order/;
- }
- if ($form->{type} eq 'purchase_order') {
- $form->{readonly} = 1 if $myconfig{acs} =~ /Order Entry--Purchase Order/;
- }
-
-}
-
-
-sub form_header {
-
- $checkedopen = ($form->{closed}) ? "" : "checked";
- $checkedclosed = ($form->{closed}) ? "checked" : "";
-
- if ($form->{id}) {
- $openclosed = qq|
- <tr>
- <th nowrap align=right><input name=closed type=radio class=radio value=0 $checkedopen> |.$locale->text('Open').qq|</th>
- <th nowrap align=left><input name=closed type=radio class=radio value=1 $checkedclosed> |.$locale->text('Closed').qq|</th>
- </tr>
-|;
- }
-
- # set option selected
- $form->{selectcurrency} =~ s/ selected//;
- $form->{selectcurrency} =~ s/option>\Q$form->{currency}\E/option selected>$form->{currency}/;
-
- foreach $item ($form->{vc}, department, employee) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
-
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
- $exchangerate = qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
-
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td>$form->{exchangerate}</td>
- <input type=hidden name=exchangerate value=$form->{exchangerate}>
-|;
- } else {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td><input name=exchangerate size=10 value=$form->{exchangerate}></td>|;
- }
- }
-
-
- $vclabel = ucfirst $form->{vc};
- $vclabel = $locale->text($vclabel);
-
- $terms = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Terms').qq|</th>
- <td nowrap><input name=terms size="3" maxlength="3" value=$form->{terms}> |.$locale->text('days').qq|</td>
- </tr>
-|;
-
-
- if ($form->{business}) {
- $business = qq|
- <tr>
- <th align=right>|.$locale->text('Business').qq|</th>
- <td>$form->{business}</td>
- <th align=right>|.$locale->text('Trade Discount').qq|</th>
- <td>|.$form->format_amount(\%myconfig, $form->{tradediscount} * 100).qq| %</td>
- </tr>
-|;
- }
-
- if ($form->{type} !~ /_quotation$/) {
- $ordnumber = qq|
- <tr>
- <th width=70% align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td><input name=ordnumber size=20 value="$form->{ordnumber}"></td>
- <input type=hidden name=quonumber value="$form->{quonumber}">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{dateformat}" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right nowrap=true>|.$locale->text('Required by').qq|</th>
- <td><input name=reqdate size=11 title="$myconfig{dateformat}" value=$form->{reqdate}></td>
- </tr>
-|;
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
- $creditremaining = qq|
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <th nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>|.$form->format_amount(\%myconfig, $form->{creditlimit}, 0, "0").qq|</td>
- <td width=20%></td>
- <th nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n" nowrap>|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-|;
- } else {
- $reqlabel = ($form->{type} eq 'sales_quotation') ? $locale->text('Valid until') : $locale->text('Required by');
- if ($form->{type} eq 'sales_quotation') {
- $ordnumber = qq|
- <tr>
- <th width=70% align=right nowrap>|.$locale->text('Quotation Number').qq|</th>
- <td><input name=quonumber size=20 value="$form->{quonumber}"></td>
- <input type=hidden name=ordnumber value="$form->{ordnumber}">
- </tr>
-|;
- } else {
- $ordnumber = qq|
- <tr>
- <th width=70% align=right nowrap>|.$locale->text('RFQ Number').qq|</th>
- <td><input name=quonumber size=20 value="$form->{quonumber}"></td>
- <input type=hidden name=ordnumber value="$form->{ordnumber}">
- </tr>
-|;
-
- $terms = "";
- }
-
-
- $ordnumber .= qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Quotation Date').qq|</th>
- <td><input name=transdate size=11 title="$myconfig{dateformat}" value=$form->{transdate}></td>
- </tr>
- <tr>
- <th align=right nowrap=true>$reqlabel</th>
- <td><input name=reqdate size=11 title="$myconfig{dateformat}" value=$form->{reqdate}></td>
- </tr>
-|;
-
- }
-
- if ($form->{"select$form->{vc}"}) {
- $vc = qq|<select name=$form->{vc}>$form->{"select$form->{vc}"}</select>
- <input type=hidden name="select$form->{vc}" value="|
- .$form->escape($form->{"select$form->{vc}"},1).qq|">|;
- } else {
- $vc = qq|<input name=$form->{vc} value="$form->{$form->{vc}}" size=35>|;
- }
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|
- .$form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
- $employee = qq|
- <input type=hidden name=employee value="$form->{employee}">
-|;
-
- if ($form->{type} eq 'sales_order') {
- if ($form->{selectemployee}) {
- $employee = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Salesperson').qq|</th>
- <td><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.
- $form->escape($form->{selectemployee},1).qq|"
- </tr>
-|;
- }
- } else {
- $employee = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Employee').qq|</th>
- <td><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.
- $form->escape($form->{selectemployee},1).qq|"
- </tr>
-|;
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action="$form->{script}#end">
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=formname value=$form->{formname}>
-<input type=hidden name=media value=$form->{media}>
-<input type=hidden name=format value=$form->{format}>
-
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=printed value="$form->{printed}">
-<input type=hidden name=emailed value="$form->{emailed}">
-
-<input type=hidden name=vc value=$form->{vc}>
-
-<input type=hidden name=title value="$form->{title}">
-
-<input type=hidden name=discount value=$form->{discount}>
-<input type=hidden name=creditlimit value=$form->{creditlimit}>
-<input type=hidden name=creditremaining value=$form->{creditremaining}>
-
-<input type=hidden name=tradediscount value=$form->{tradediscount}>
-<input type=hidden name=business value="$form->{business}">
-
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width="100%">
- <tr valign=top>
- <td>
- <table width=100%>
- <tr>
- <th align=right>$vclabel</th>
- <td colspan=3>$vc</td>
- <input type=hidden name=$form->{vc}_id value=$form->{"$form->{vc}_id"}>
- <input type=hidden name="old$form->{vc}" value="$form->{"old$form->{vc}"}">
- </tr>
- $creditremaining
- $business
- $department
- <tr>
- <th align=right>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
- $exchangerate
- </tr>
- <tr>
- <th align=right>|.$locale->text('Shipping Point').qq|</th>
- <td colspan=3><input name=shippingpoint size=35 value="$form->{shippingpoint}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Ship via').qq|</th>
- <td colspan=3><input name=shipvia size=35 value="$form->{shipvia}"></td>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- $openclosed
- $employee
- $ordnumber
- $terms
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
-<!-- shipto are in hidden variables -->
-
-<input type=hidden name=shiptoname value="$form->{shiptoname}">
-<input type=hidden name=shiptoaddress1 value="$form->{shiptoaddress1}">
-<input type=hidden name=shiptoaddress2 value="$form->{shiptoaddress2}">
-<input type=hidden name=shiptocity value="$form->{shiptocity}">
-<input type=hidden name=shiptostate value="$form->{shiptostate}">
-<input type=hidden name=shiptozipcode value="$form->{shiptozipcode}">
-<input type=hidden name=shiptocountry value="$form->{shiptocountry}">
-<input type=hidden name=shiptocontact value="$form->{shiptocontact}">
-<input type=hidden name=shiptophone value="$form->{shiptophone}">
-<input type=hidden name=shiptofax value="$form->{shiptofax}">
-<input type=hidden name=shiptoemail value="$form->{shiptoemail}">
-
-<!-- email variables -->
-<input type=hidden name=message value="$form->{message}">
-<input type=hidden name=email value="$form->{email}">
-<input type=hidden name=subject value="$form->{subject}">
-<input type=hidden name=cc value="$form->{cc}">
-<input type=hidden name=bcc value="$form->{bcc}">
-
-<input type=hidden name=taxpart value="$form->{taxpart}">
-<input type=hidden name=taxservice value="$form->{taxservice}">
-
-<input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-|;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- print qq|
-<input type=hidden name="${item}_rate" value=$form->{"${item}_rate"}>
-<input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
-|;
- }
-
-}
-
-
-sub form_footer {
-
- $form->{invtotal} = $form->{invsubtotal};
-
- if (($rows = $form->numtextrows($form->{notes}, 25, 8)) < 2) {
- $rows = 2;
- }
- if (($introws = $form->numtextrows($form->{intnotes}, 35, 8)) < 2) {
- $introws = 2;
- }
- $rows = ($rows > $introws) ? $rows : $introws;
- $notes = qq|<textarea name=notes rows=$rows cols=25 wrap=soft>$form->{notes}</textarea>|;
- $intnotes = qq|<textarea name=intnotes rows=$rows cols=35 wrap=soft>$form->{intnotes}</textarea>|;
-
-
- $form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
-
- $taxincluded = "";
- if ($form->{taxaccounts}) {
- $taxincluded = qq|
- <tr height="5"></tr>
- <tr>
- <td align=right>
- <input name=taxincluded class=checkbox type=checkbox value=1 $form->{taxincluded}></td>
- <th align=left>|.$locale->text('Tax Included').qq|</th>
- </tr>
-|;
- }
-
- if (!$form->{taxincluded}) {
-
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"${item}_base"}) {
- $form->{invtotal} += $form->{"${item}_total"} = $form->round_amount($form->{"${item}_base"} * $form->{"${item}_rate"}, 2);
- $form->{"${item}_total"} = $form->format_amount(\%myconfig, $form->{"${item}_total"}, 2);
-
- $tax .= qq|
- <tr>
- <th align=right>$form->{"${item}_description"}</th>
- <td align=right>$form->{"${item}_total"}</td>
- </tr>
-|;
- }
- }
-
- $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0);
-
- $subtotal = qq|
- <tr>
- <th align=right>|.$locale->text('Subtotal').qq|</th>
- <td align=right>$form->{invsubtotal}</td>
- </tr>
-|;
-
- }
-
- $form->{oldinvtotal} = $form->{invtotal};
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2, 0);
-
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=left>|.$locale->text('Notes').qq|</th>
- <th align=left>|.$locale->text('Internal Notes').qq|</th>
- </tr>
- <tr valign=top>
- <td>$notes</td>
- <td>$intnotes</td>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- $subtotal
- $tax
- <tr>
- <th align=right>|.$locale->text('Total').qq|</th>
- <td align=right>$form->{invtotal}</td>
- </tr>
- $taxincluded
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-<input type=hidden name=oldinvtotal value=$form->{oldinvtotal}>
-<input type=hidden name=oldtotalpaid value=$totalpaid>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
- <tr>
- <td>
-|;
-
- &print_options;
-
- print qq|
- </td>
- </tr>
-</table>
-
-<br>
-|;
-
- if (! $form->{readonly}) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Ship to').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('E-mail').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($latex) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Print and Save').qq|">|;
- }
-
- if ($form->{id}) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Save as new').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">|;
-
- if ($form->{type} =~ /sales_/) {
- if ($myconfig{acs} !~ /AP--Sales Invoice/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Sales Invoice').qq|">
-|;
- }
- } else {
- if ($myconfig{acs} !~ /AR--Vendor Invoice/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Vendor Invoice').qq|">
-|;
- }
- }
-
- if ($form->{type} eq 'sales_order') {
- if ($myconfig{acs} !~ /Quotations--RFQ/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Quotation').qq|">
-|;
- }
- }
-
- if ($form->{type} eq 'purchase_order') {
- if ($myconfig{acs} !~ /Quotations--RFQ/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('RFQ').qq|">
-|;
- }
- }
-
- if ($form->{type} eq 'sales_quotation') {
- if ($myconfig{acs} !~ /Order Entry--Sales Order/) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Sales Order').qq|">
-|;
- }
- }
-
- if ($myconfig{acs} !~ /Order Entry--Purchase Order/) {
- if ($form->{type} eq 'request_quotation') {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Purchase Order').qq|">
-|;
- }
- }
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-</form>
-
-<a name=end></a>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update {
-
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- &check_name($form->{vc});
-
-
- $buysell = 'buy';
- $buysell = 'sell' if ($form->{vc} eq 'vendor');
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, $buysell)));
-
- my $i = $form->{rowcount};
- $exchangerate = ($form->{exchangerate}) ? $form->{exchangerate} : 1;
-
- foreach $item (qw(partsgroup projectnumber)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"}) if $form->{"select$item"};
- }
-
- if (($form->{"partnumber_$i"} eq "") && ($form->{"description_$i"} eq "") && ($form->{"partsgroup_$i"} eq "")) {
-
- $form->{creditremaining} += ($form->{oldinvtotal} - $form->{oldtotalpaid});
- &check_form;
-
- } else {
-
- if ($form->{type} eq 'purchase_order' || $form->{type} eq 'request_quotation') {
- IR->retrieve_item(\%myconfig, \%$form);
- }
- if ($form->{type} eq 'sales_order' || $form->{type} eq 'sales_quotation') {
- IS->retrieve_item(\%myconfig, \%$form);
- }
-
- $rows = scalar @{ $form->{item_list} };
-
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{discount} * 100);
-
- if ($rows) {
- $form->{"qty_$i"} = 1;
- if ($form->{type} !~ /_quotation/) {
- $form->{"reqdate_$i"} = $form->{reqdate} unless $form->{"reqdate_$i"};
- }
-
- if ($rows > 1) {
-
- &select_item;
- exit;
-
- } else {
-
- $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"});
-
- map { $form->{item_list}[$i]{$_} = $form->quote($form->{item_list}[$i]{$_}) } qw(partnumber description unit);
- map { $form->{"${_}_$i"} = $form->{item_list}[0]{$_} } keys %{ $form->{item_list}[0] };
-
- $s = ($sellprice) ? $sellprice : $form->{"sellprice_$i"};
-
- ($dec) = ($s =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if ($sellprice) {
- $form->{"sellprice_$i"} = $sellprice;
- } else {
- # if there is an exchange rate adjust prices
- $form->{"sellprice_$i"} *= (1 - $form->{tradediscount});
- $form->{"sellprice_$i"} /= $exchangerate;
- }
-
- map { $form->{"${_}_$i"} /= $exchangerate } qw(listprice lastcost);
-
- $amount = $form->{"sellprice_$i"} * $form->{"qty_$i"} * (1 - $form->{"discount_$i"} / 100);
- map { $form->{"${_}_base"} = 0 } (split / /, $form->{taxaccounts});
- map { $form->{"${_}_base"} += $amount } (split / /, $form->{"taxaccounts_$i"});
- map { $amount += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } split / /, $form->{taxaccounts} if !$form->{taxincluded};
-
- $form->{creditremaining} -= $amount;
-
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}, $decimalplaces) } qw(sellprice listprice lastcost);
-
- $form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
- }
-
- &display_form;
-
- } else {
- # ok, so this is a new part
- # ask if it is a part or service item
-
- if ($form->{"partsgroup_$i"} && ($form->{"partsnumber_$i"} eq "") && ($form->{"description_$i"} eq "")) {
- $form->{rowcount}--;
- $form->{"discount_$i"} = "";
- &display_form;
- } else {
-
- $form->{"id_$i"} = 0;
- $form->{"unit_$i"} = $locale->text('ea');
- $form->{"reqdate_$i"} = $form->{reqdate} if $form->{type} !~ /_quotation/;
-
- &new_item;
-
- }
- }
- }
-
-}
-
-
-
-sub search {
-
- if ($form->{type} eq 'purchase_order') {
- $form->{title} = $locale->text('Purchase Orders');
- $form->{vc} = 'vendor';
- $ordlabel = $locale->text('Order Number');
- $ordnumber = 'ordnumber';
- $employee = $locale->text('Employee');
- }
- if ($form->{type} eq 'request_quotation') {
- $form->{title} = $locale->text('Request for Quotations');
- $form->{vc} = 'vendor';
- $ordlabel = $locale->text('RFQ Number');
- $ordnumber = 'quonumber';
- $employee = $locale->text('Employee');
- }
- if ($form->{type} eq 'receive_order') {
- $form->{title} = $locale->text('Receive Merchandise');
- $form->{vc} = 'vendor';
- $ordlabel = $locale->text('Order Number');
- $ordnumber = 'ordnumber';
- $employee = $locale->text('Employee');
- }
- if ($form->{type} eq 'sales_order') {
- $form->{title} = $locale->text('Sales Orders');
- $form->{vc} = 'customer';
- $ordlabel = $locale->text('Order Number');
- $ordnumber = 'ordnumber';
- $employee = $locale->text('Salesperson');
- }
- if ($form->{type} eq 'ship_order') {
- $form->{title} = $locale->text('Ship Merchandise');
- $form->{vc} = 'customer';
- $ordlabel = $locale->text('Order Number');
- $ordnumber = 'ordnumber';
- $employee = $locale->text('Salesperson');
-
- }
-
- if ($form->{type} eq 'sales_quotation') {
- $form->{title} = $locale->text('Quotations');
- $form->{vc} = 'customer';
- $ordlabel = $locale->text('Quotation Number');
- $ordnumber = 'quonumber';
- $employee = $locale->text('Employee');
- }
-
- $manager = qq|
- <td><input name="l_manager" class=checkbox type=checkbox value=Y> |.$locale->text('Manager').qq|</td>|;
-
- if ($form->{type} =~ /(ship|receive)_order/) {
- OE->get_warehouses(\%myconfig, \%$form);
-
- $manager = "";
-
- # warehouse
- if (@{ $form->{all_warehouses} }) {
- $form->{selectwarehouse} = "<option>\n";
- $form->{warehouse} = qq|$form->{warehouse}--$form->{warehouse_id}|;
-
- map { $form->{selectwarehouse} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_warehouses} });
-
- $warehouse = qq|
- <tr>
- <th align=right>|.$locale->text('Warehouse').qq|</th>
- <td><select name=warehouse>$form->{selectwarehouse}</select></td>
- <input type=hidden name=selectwarehouse value="|.
- $form->escape($form->{selectwarehouse},1).qq|">
- </tr>
-|;
-
- }
- }
-
- # setup vendor / customer selection
- $form->all_vc(\%myconfig, $form->{vc}, ($form->{vc} eq 'customer') ? "AR" : "AP");
-
- map { $vc .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{"all_$form->{vc}"} };
-
- $vclabel = ucfirst $form->{vc};
- $vclabel = $locale->text($vclabel);
-
-# $locale->text('Vendor')
-# $locale->text('Customer')
-
- $vc = ($vc) ? qq|<select name=$form->{vc}><option>\n$vc</select>| : qq|<input name=$form->{vc} size=35>|;
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-| if $form->{selectdepartment};
-
- if ($form->{type} !~ /(ship|receive)_order/) {
- $openclosed = qq|
- <tr>
- <td><input name="open" class=checkbox type=checkbox value=1 checked> |.$locale->text('Open').qq|</td>
- <td><input name="closed" class=checkbox type=checkbox value=1 $form->{closed}> |.$locale->text('Closed').qq|</td>
- </tr>
-|;
- } else {
-
- $openclosed = qq|
- <input type=hidden name="open" value=1>
-|;
- }
-
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>$vclabel</th>
- <td colspan=3>$vc</td>
- </tr>
- $warehouse
- $department
- <tr>
- <th align=right>$ordlabel</th>
- <td colspan=3><input name="$ordnumber" size=20></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Ship via').qq|</th>
- <td colspan=3><input name="shipvia" size=40></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=transdatefrom size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=transdateto size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <input type=hidden name=sort value=transdate>
- $selectfrom
- <tr>
- <th align=right>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <table>
- $openclosed
- <tr>
- <td><input name="l_id" class=checkbox type=checkbox value=Y>
- |.$locale->text('ID').qq|</td>
- <td><input name="l_$ordnumber" class=checkbox type=checkbox value=Y checked> $ordlabel</td>
- <td><input name="l_transdate" class=checkbox type=checkbox value=Y checked> |.$locale->text('Date').qq|</td>
- <td><input name="l_reqdate" class=checkbox type=checkbox value=Y checked> |.$locale->text('Required by').qq|</td>
- </tr>
- <tr>
- <td><input name="l_name" class=checkbox type=checkbox value=Y checked> $vclabel</td>
- <td><input name="l_employee" class=checkbox type=checkbox value=Y checked> $employee</td>
- $manager
- <td><input name="l_shipvia" class=checkbox type=checkbox value=Y> |.$locale->text('Ship via').qq|</td>
- </tr>
- <tr>
- <td><input name="l_netamount" class=checkbox type=checkbox value=Y> |.$locale->text('Amount').qq|</td>
- <td><input name="l_tax" class=checkbox type=checkbox value=Y> |.$locale->text('Tax').qq|</td>
- <td><input name="l_amount" class=checkbox type=checkbox value=Y checked> |.$locale->text('Total').qq|</td>
- <td><input name="l_curr" class=checkbox type=checkbox value=Y checked> |.$locale->text('Currency').qq|</td>
- </tr>
- <tr>
- <td><input name="l_subtotal" class=checkbox type=checkbox value=Y> |.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td colspan=4><hr size=3 noshade></td></tr>
-</table>
-
-<br>
-<input type=hidden name=nextsub value=transactions>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=vc value=$form->{vc}>
-<input type=hidden name=type value=$form->{type}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub transactions {
-
- # split vendor / customer
- ($form->{$form->{vc}}, $form->{"$form->{vc}_id"}) = split(/--/, $form->{$form->{vc}});
-
- $ordnumber = ($form->{type} =~ /_order/) ? 'ordnumber' : 'quonumber';
-
- OE->transactions(\%myconfig, \%$form);
-
- $number = $form->escape($form->{$ordnumber});
- $name = $form->escape($form->{$form->{vc}});
- $department = $form->escape($form->{department});
- $warehouse = $form->escape($form->{warehouse});
- $shipvia = $form->escape($form->{shipvia});
-
- # construct href
- $href = qq|$form->{script}?oldsort=$form->{oldsort}&direction=$form->{direction}&path=$form->{path}&action=transactions&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&sessionid=$form->{sessionid}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}&$ordnumber=$number&$form->{vc}=$name--$form->{"$form->{vc}_id"}&department=$department&warehouse=$warehouse&shipvia=$shipvia|;
-
- # construct callback
- $number = $form->escape($form->{$ordnumber},1);
- $name = $form->escape($form->{$form->{vc}},1);
- $department = $form->escape($form->{department},1);
- $warehouse = $form->escape($form->{warehouse},1);
- $shipvia = $form->escape($form->{shipvia},1);
-
- # flip direction
- $form->sort_order();
-
- $callback = qq|$form->{script}?oldsort=$form->{oldsort}&direction=$form->{direction}&path=$form->{path}&action=transactions&type=$form->{type}&vc=$form->{vc}&login=$form->{login}&sessionid=$form->{sessionid}&transdatefrom=$form->{transdatefrom}&transdateto=$form->{transdateto}&open=$form->{open}&closed=$form->{closed}&$ordnumber=$number&$form->{vc}=$name--$form->{"$form->{vc}_id"}&department=$department&warehouse=$warehouse&shipvia=$shipvia|;
-
- @columns = $form->sort_columns("transdate", "reqdate", "id", "$ordnumber", "name", "netamount", "tax", "amount", "curr", "employee", "manager", "shipvia", "open", "closed");
-
- $form->{l_open} = $form->{l_closed} = "Y" if ($form->{open} && $form->{closed}) ;
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- if ($form->{l_curr} && $item =~ /(amount|tax)/) {
- push @column_index, "fx_$item";
- }
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- $href .= "&l_subtotal=Y";
- }
-
-
- $i = 1;
- if ($form->{vc} eq 'vendor') {
- if ($form->{type} eq 'receive_order') {
- $form->{title} = $locale->text('Receive Merchandise');
- } elsif ($form->{type} eq 'purchase_order') {
- $form->{title} = $locale->text('Purchase Orders');
-
- if ($myconfig{acs} !~ /Order Entry--Order Entry/) {
- $button{'Order Entry--Purchase Order'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Purchase Order').qq|"> |;
- $button{'Order Entry--Sales Order'}{order} = $i++;
- }
-
- } else {
- $form->{title} = $locale->text('Request for Quotations');
-
- if ($myconfig{acs} !~ /Quotations--Quotations/) {
- $button{'Quotations--RFQ'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('RFQ ').qq|"> |;
- $button{'Quotations--RFQ'}{order} = $i++;
- }
-
- }
- $name = $locale->text('Vendor');
- $employee = $locale->text('Employee');
- }
- if ($form->{vc} eq 'customer') {
- if ($form->{type} eq 'sales_order') {
- $form->{title} = $locale->text('Sales Orders');
- $employee = $locale->text('Salesperson');
-
- if ($myconfig{acs} !~ /Order Entry--Order Entry/) {
- $button{'Order Entry--Sales Order'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Sales Order').qq|"> |;
- $button{'Order Entry--Sales Order'}{order} = $i++;
- }
-
- } elsif ($form->{type} eq 'ship_order') {
- $form->{title} = $locale->text('Ship Merchandise');
- $employee = $locale->text('Salesperson');
- } else {
- $form->{title} = $locale->text('Quotations');
- $employee = $locale->text('Employee');
-
- if ($myconfig{acs} !~ /Quotations--Quotations/) {
- $button{'Quotations--Quotation'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Quotation ').qq|"> |;
- $button{'Quotations--Quotation'}{order} = $i++;
- }
-
- }
- $name = $locale->text('Customer');
- }
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
-
- $column_header{id} = qq|<th><a class=listheading href=$href&sort=id>|.$locale->text('ID').qq|</a></th>|;
- $column_header{transdate} = qq|<th><a class=listheading href=$href&sort=transdate>|.$locale->text('Date').qq|</a></th>|;
- $column_header{reqdate} = qq|<th><a class=listheading href=$href&sort=reqdate>|.$locale->text('Required by').qq|</a></th>|;
- $column_header{ordnumber} = qq|<th><a class=listheading href=$href&sort=ordnumber>|.$locale->text('Order').qq|</a></th>|;
- $column_header{quonumber} = qq|<th><a class=listheading href=$href&sort=quonumber>|.$locale->text('Quotation').qq|</a></th>|;
- $column_header{name} = qq|<th><a class=listheading href=$href&sort=name>$name</a></th>|;
- $column_header{netamount} = qq|<th class=listheading>|.$locale->text('Amount').qq|</th>|;
- $column_header{tax} = qq|<th class=listheading>|.$locale->text('Tax').qq|</th>|;
- $column_header{amount} = qq|<th class=listheading>|.$locale->text('Total').qq|</th>|;
- $column_header{curr} = qq|<th><a class=listheading href=$href&sort=curr>|.$locale->text('Curr').qq|</a></th>|;
- $column_header{shipvia} = qq|<th><a class=listheading href=$href&sort=shipvia>|.$locale->text('Ship via').qq|</a></th>|;
- $column_header{open} = qq|<th class=listheading>|.$locale->text('O').qq|</th>|;
- $column_header{closed} = qq|<th class=listheading>|.$locale->text('C').qq|</th>|;
-
- $column_header{employee} = qq|<th><a class=listheading href=$href&sort=employee>$employee</a></th>|;
- $column_header{manager} = qq|<th><a class=listheading href=$href&sort=manager>|.$locale->text('Manager').qq|</a></th>|;
-
- map { $column_header{"fx_$_"} = "<th>&nbsp;</th>" } qw(amount tax netamount);
-
- if ($form->{$form->{vc}}) {
- $option = $locale->text(ucfirst $form->{vc});
- $option .= " : $form->{$form->{vc}}";
- }
- if ($form->{warehouse}) {
- ($warehouse) = split /--/, $form->{warehouse};
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Warehouse');
- $option .= " : $warehouse";
- }
- if ($form->{department}) {
- $option .= "\n<br>" if ($option);
- ($department) = split /--/, $form->{department};
- $option .= $locale->text('Department')." : $department";
- }
- if ($form->{transdatefrom}) {
- $option .= "\n<br>".$locale->text('From')." ".$locale->date(\%myconfig, $form->{transdatefrom}, 1);
- }
- if ($form->{transdateto}) {
- $option .= "\n<br>".$locale->text('To')." ".$locale->date(\%myconfig, $form->{transdateto}, 1);
- }
- if ($form->{open}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Open');
- }
- if ($form->{closed}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Closed');
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # add sort and escape callback
- $callback .= "&sort=$form->{sort}";
- $form->{callback} = $callback;
- $callback = $form->escape($callback);
-
- # flip direction
- $direction = ($form->{direction} eq 'ASC') ? "ASC" : "DESC";
- $href =~ s/&direction=(\w+)&/&direction=$direction&/;
-
- if (@{ $form->{OE} }) {
- $sameitem = $form->{OE}->[0]->{$form->{sort}};
- }
-
- $action = "edit";
- $action = "ship_receive" if ($form->{type} =~ /(ship|receive)_order/);
-
- $warehouse = $form->escape($form->{warehouse});
-
- foreach $oe (@{ $form->{OE} }) {
-
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $oe->{$form->{sort}}) {
- &subtotal;
- $sameitem = $oe->{$form->{sort}};
- }
- }
-
- if ($form->{l_curr}) {
- map { $oe->{"fx_$_"} = $oe->{$_} } (qw(netamount amount));
- $oe->{fx_tax} = $oe->{fx_amount} - $oe->{fx_netamount};
- map { $oe->{$_} *= $oe->{exchangerate} } (qw(netamount amount));
-
- map { $column_data{"fx_$_"} = "<td align=right>".$form->format_amount(\%myconfig, $oe->{"fx_$_"}, 2, "&nbsp;")."</td>" } qw(netamount amount);
- $column_data{fx_tax} = "<td align=right>".$form->format_amount(\%myconfig, $oe->{fx_amount} - $oe->{fx_netamount}, 2, "&nbsp;")."</td>";
-
- $totalfxnetamount += $oe->{fx_netamount};
- $totalfxamount += $oe->{fx_amount};
-
- $subtotalfxnetamount += $oe->{fx_netamount};
- $subtotalfxamount += $oe->{fx_amount};
- }
-
- map { $column_data{$_} = "<td align=right>".$form->format_amount(\%myconfig, $oe->{$_}, 2, "&nbsp;")."</td>" } qw(netamount amount);
- $column_data{tax} = "<td align=right>".$form->format_amount(\%myconfig, $oe->{amount} - $oe->{netamount}, 2, "&nbsp;")."</td>";
-
- $totalnetamount += $oe->{netamount};
- $totalamount += $oe->{amount};
-
- $subtotalnetamount += $oe->{netamount};
- $subtotalamount += $oe->{amount};
-
-
- $column_data{id} = "<td>$oe->{id}</td>";
- $column_data{transdate} = "<td>$oe->{transdate}&nbsp;</td>";
- $column_data{reqdate} = "<td>$oe->{reqdate}&nbsp;</td>";
-
- $column_data{$ordnumber} = "<td><a href=oe.pl?path=$form->{path}&action=$action&type=$form->{type}&id=$oe->{id}&warehouse=$warehouse&vc=$form->{vc}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$oe->{$ordnumber}</a></td>";
-
- $name = $form->escape($oe->{name});
- $column_data{name} = qq|<td><a href=$href&$form->{vc}=$name--$oe->{"$form->{vc}_id"}&sort=$form->{sort}>$oe->{name}</a></td>|;
-
- map { $column_data{$_} = "<td>$oe->{$_}&nbsp;</td>" } qw(employee manager shipvia curr);
-
- if ($oe->{closed}) {
- $column_data{closed} = "<td align=center>*</td>";
- $column_data{open} = "<td>&nbsp;</td>";
- } else {
- $column_data{closed} = "<td>&nbsp;</td>";
- $column_data{open} = "<td align=center>*</td>";
- }
-
- $i++; $i %= 2;
- print "
- <tr class=listrow$i>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- &subtotal;
- }
-
- # print totals
- print qq|
- <tr class=listtotal>|;
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount - $totalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalamount, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_netamount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_tax} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount - $totalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalfxamount, 2, "&nbsp;")."</th>";
- }
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
- </td>
- </table>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=$form->{type}>
-
-<input type=hidden name=$form->{vc} value="$form->{$form->{vc}}">
-<input type=hidden name="$form->{vc}_id" value=$form->{"$form->{vc}_id"}>
-<input type=hidden name=vc value=$form->{vc}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- if ($form->{type} !~ /(ship|receive)_order/) {
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{netamount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalnetamount, 2, "&nbsp;")."</th>";
- $column_data{tax} = "<td class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount - $subtotalnetamount, 2, "&nbsp;")."</th>";
- $column_data{amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalamount, 2, "&nbsp;")."</th>";
-
- if ($form->{l_curr} && $form->{sort} eq 'curr' && $form->{l_subtotal}) {
- $column_data{fx_netamount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_tax} = "<td class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount - $subtotalfxnetamount, 2, "&nbsp;")."</th>";
- $column_data{fx_amount} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalfxamount, 2, "&nbsp;")."</th>";
- }
-
- $subtotalnetamount = 0;
- $subtotalamount = 0;
-
- $subtotalfxnetamount = 0;
- $subtotalfxamount = 0;
-
- print "
- <tr class=listsubtotal>
-";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-}
-
-
-sub save {
-
- if ($form->{type} =~ /_order$/) {
- $form->isblank("transdate", $locale->text('Order Date missing!'));
- } else {
- $form->isblank("transdate", $locale->text('Quotation Date missing!'));
- }
-
- $msg = ucfirst $form->{vc};
- $form->isblank($form->{vc}, $locale->text($msg . " missing!"));
-
-# $locale->text('Customer missing!');
-# $locale->text('Vendor missing!');
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- &validate_items;
-
- # if the name changed get new values
- if (&check_name($form->{vc})) {
- &update;
- exit;
- }
-
-
- # this is for the internal notes section for the [email] Subject
- if ($form->{type} =~ /_order$/) {
- if ($form->{type} eq 'sales_order') {
- $form->{label} = $locale->text('Sales Order');
-
- $numberfld = "sonumber";
- $ordnumber = "ordnumber";
- } else {
- $form->{label} = $locale->text('Purchase Order');
-
- $numberfld = "ponumber";
- $ordnumber = "ordnumber";
- }
-
- $err = $locale->text('Cannot save order!');
-
- } else {
- if ($form->{type} eq 'sales_quotation') {
- $form->{label} = $locale->text('Quotation');
-
- $numberfld = "sqnumber";
- $ordnumber = "quonumber";
- } else {
- $form->{label} = $locale->text('Request for Quotation');
-
- $numberfld = "rfqnumber";
- $ordnumber = "quonumber";
- }
-
- $err = $locale->text('Cannot save quotation!');
-
- }
-
-
- $form->{id} = 0 if $form->{saveasnew};
-
- $form->{$ordnumber} = $form->update_defaults(\%myconfig, $numberfld) unless $form->{$ordnumber};
-
- $form->redirect($locale->text('Order saved!')) if (OE->save(\%myconfig, \%$form));
- $form->error($err);
-
-}
-
-
-sub print_and_save {
-
- $form->error($locale->text('Select postscript or PDF!')) if $form->{format} !~ /(postscript|pdf)/;
- $form->error($locale->text('Select Printer or Queue!')) if $form->{media} eq 'screen';
-
- $old_form = new Form;
- $form->{display_form} = "save";
- map { $old_form->{$_} = $form->{$_} } keys %$form;
- $old_form->{rowcount}++;
-
- &print_form($old_form);
-
-}
-
-
-sub delete {
-
- $form->header;
-
- if ($form->{type} =~ /_order$/) {
- $msg = $locale->text('Are you sure you want to delete Order Number');
- $ordnumber = 'ordnumber';
- } else {
- $msg = $locale->text('Are you sure you want to delete Quotation Number');
- $ordnumber = 'quonumber';
- }
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action header);
-
- $form->hide_form();
-
- print qq|
-<h2 class=confirm>|.$locale->text('Confirm!').qq|</h2>
-
-<h4>$msg $form->{$ordnumber}</h4>
-<p>
-<input name=action class=submit type=submit value="|.$locale->text('Yes').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-
-sub yes {
-
- if ($form->{type} =~ /_order$/) {
- $msg = $locale->text('Order deleted!');
- $err = $locale->text('Cannot delete order!');
- } else {
- $msg = $locale->text('Quotation deleted!');
- $err = $locale->text('Cannot delete quotation!');
- }
-
- $form->redirect($msg) if (OE->delete(\%myconfig, \%$form, $spool));
- $form->error($err);
-
-}
-
-
-sub vendor_invoice { &invoice };
-sub sales_invoice { &invoice };
-
-sub invoice {
-
- if ($form->{type} =~ /_order$/) {
- $form->isblank("ordnumber", $locale->text('Order Number missing!'));
- $form->isblank("transdate", $locale->text('Order Date missing!'));
-
- } else {
- $form->isblank("quonumber", $locale->text('Quotation Number missing!'));
- $form->isblank("transdate", $locale->text('Quotation Date missing!'));
- $form->{ordnumber} = "";
- }
-
- # if the name changed get new values
- if (&check_name($form->{vc})) {
- &update;
- exit;
- }
-
-
- if ($form->{type} =~ /_order/ && $form->{currency} ne $form->{defaultcurrency}) {
- # check if we need a new exchangerate
- $buysell = ($form->{type} eq 'sales_order') ? "buy" : "sell";
-
- $orddate = $form->current_date(\%myconfig);
- $exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $orddate, $buysell);
-
- if (!$exchangerate) {
- &backorder_exchangerate($orddate, $buysell);
- exit;
- }
- }
-
-
- # close orders/quotations
- $form->{closed} = 1;
-
- OE->save(\%myconfig, \%$form);
-
- $form->{transdate} = $form->current_date(\%myconfig);
- $form->{duedate} = $form->current_date(\%myconfig, $form->{transdate}, $form->{terms} * 1);
-
- $form->{id} = '';
- $form->{closed} = 0;
- $form->{rowcount}--;
- $form->{shipto} = 1;
-
-
- if ($form->{type} =~ /_order$/) {
- $form->{exchangerate} = $exchangerate;
- &create_backorder;
- }
-
-
- if ($form->{type} eq 'purchase_order' || $form->{type} eq 'request_quotation') {
- $form->{title} = $locale->text('Add Vendor Invoice');
- $form->{script} = 'ir.pl';
- $script = "ir";
- $buysell = 'sell';
- }
- if ($form->{type} eq 'sales_order' || $form->{type} eq 'sales_quotation') {
- $form->{title} = $locale->text('Add Sales Invoice');
- $form->{script} = 'is.pl';
- $script = "is";
- $buysell = 'buy';
- }
-
- map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued);
- $form->{$form->{vc}} =~ s/--.*//g;
- $form->{type} = "invoice";
-
- # locale messages
- $locale = new Locale "$myconfig{countrycode}", "$script";
-
- require "$form->{path}/$form->{script}";
-
- # customized scripts
- if (-f "$form->{path}/custom_$form->{script}") {
- eval { require "$form->{path}/custom_$form->{script}"; };
- }
-
- # customized scripts for login
- if (-f "$form->{path}/$form->{login}_$form->{script}") {
- eval { require "$form->{path}/$form->{login}_$form->{script}"; };
- }
-
- map { $form->{"select$_"} = "" } ($form->{vc}, currency);
- map { $temp{$_} = $form->{$_} } qw(currency oldcurrency employee department intnotes notes);
-
- &invoice_links;
-
- $form->{creditremaining} -= ($form->{oldinvtotal} - $form->{ordtotal});
-
- &prepare_invoice;
-
- map { $form->{$_} = $temp{$_} } keys %temp;
-
- $form->{exchangerate} = "";
- $form->{forex} = "";
- $form->{exchangerate} = $exchangerate if ($form->{forex} = ($exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, $buysell)));
-
- for $i (1 .. $form->{rowcount}) {
- $form->{"deliverydate_$i"} = $form->{"reqdate_$i"};
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty sellprice discount);
- }
-
- map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued audittrail);
-
- &display_form;
-
-}
-
-
-
-sub backorder_exchangerate {
- my ($orddate, $buysell) = @_;
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-|;
-
- # delete action variable
- map { delete $form->{$_} } qw(action header exchangerate);
-
- $form->hide_form();
-
- $form->{title} = $locale->text('Add Exchange Rate');
-
- print qq|
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=exchangeratedate value=$orddate>
-<input type=hidden name=buysell value=$buysell>
-
-<table width=100%>
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Currency').qq|</th>
- <td>$form->{currency}</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Date').qq|</th>
- <td>$orddate</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Exchange Rate').qq|</th>
- <td><input name=exchangerate size=11></td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
-
-<hr size=3 noshade>
-
-<br>
-<input type=hidden name=nextsub value=save_exchangerate>
-
-<input name=action class=submit type=submit value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub save_exchangerate {
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!'));
- $form->{exchangerate} = $form->parse_amount(\%myconfig, $form->{exchangerate});
- $form->save_exchangerate(\%myconfig, $form->{currency}, $form->{exchangeratedate}, $form->{exchangerate}, $form->{buysell});
-
- &invoice;
-
-}
-
-
-sub create_backorder {
-
- $form->{shipped} = 1;
-
- # figure out if we need to create a backorder
- # items aren't saved if qty != 0
-
- $dec1 = $dec2 = 0;
- for $i (1 .. $form->{rowcount}) {
- ($dec) = ($form->{"qty_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $dec1 = ($dec > $dec1) ? $dec : $dec1;
-
- ($dec) = ($form->{"ship_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $dec2 = ($dec > $dec2) ? $dec : $dec2;
-
- $totalqty += $qty = $form->{"qty_$i"};
- $totalship += $ship = $form->{"ship_$i"};
-
- $form->{"qty_$i"} = $qty - $ship;
- }
-
- $totalqty = $form->round_amount($totalqty, $dec1);
- $totalship = $form->round_amount($totalship, $dec2);
-
- if ($totalship == 0) {
- map { $form->{"ship_$_"} = $form->{"qty_$_"} } (1 .. $form->{rowcount});
- $form->{ordtotal} = 0;
- $form->{shipped} = 0;
- return;
- }
-
- if ($totalqty == $totalship) {
- map { $form->{"qty_$_"} = $form->{"ship_$_"} } (1 .. $form->{rowcount});
- $form->{ordtotal} = 0;
- return;
- }
-
- @flds = qw(partnumber sku description qty oldqty ship unit sellprice discount id inventory_accno bin income_accno expense_accno listprice assembly taxaccounts partsgroup reqdate pricematrix);
-
- for $i (1 .. $form->{rowcount}) {
- map { $form->{"${_}_$i"} = $form->format_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty sellprice discount);
-
- $form->{"oldship_$i"} = $form->{"ship_$i"};
- $form->{"ship_$i"} = 0;
- }
-
- # clear flags
- map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued audittrail);
-
- OE->save(\%myconfig, \%$form);
-
- # rebuild rows for invoice
- @a = ();
- $count = 0;
-
- for $i (1 .. $form->{rowcount}) {
- $form->{"qty_$i"} = $form->{"oldship_$i"};
- $form->{"oldqty_$i"} = $form->{"qty_$i"};
-
- $form->{"orderitems_id_$i"} = "";
-
- if ($form->{"qty_$i"}) {
- push @a, {};
- $j = $#a;
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count;
-
-}
-
-
-
-sub save_as_new {
-
- $form->{saveasnew} = 1;
- $form->{closed} = 0;
- map { delete $form->{$_} } qw(printed emailed queued);
-
- &save;
-
-}
-
-
-sub ship_receive {
-
- &order_links;
-
- &prepare_order;
-
- OE->get_warehouses(\%myconfig, \%$form);
-
- # warehouse
- if (@{ $form->{all_warehouses} }) {
- $form->{selectwarehouse} = "<option>\n";
-
- map { $form->{selectwarehouse} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_warehouses} });
-
- if ($form->{warehouse}) {
- $form->{selectwarehouse} = qq|<option value="$form->{warehouse}">|;
- $form->{warehouse} =~ s/--.*//;
- $form->{selectwarehouse} .= $form->{warehouse};
- }
- }
-
- $form->{shippingdate} = $form->current_date(\%myconfig);
- $form->{"$form->{vc}"} =~ s/--.*//;
- $form->{"old$form->{vc}"} = qq|$form->{"$form->{vc}"}--$form->{"$form->{vc}_id"}|;
-
- @flds = ();
- @a = ();
- $count = 0;
- foreach $key (keys %$form) {
- if ($key =~ /_1$/) {
- $key =~ s/_1//;
- push @flds, $key;
- }
- }
-
- for $i (1 .. $form->{rowcount}) {
- # undo formatting from prepare_order
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty ship);
- $n = ($form->{"qty_$i"} -= $form->{"ship_$i"});
- if (abs($n) > 0 && ($form->{"inventory_accno_$i"} || $form->{"assembly_$i"})) {
- $form->{"ship_$i"} = "";
- $form->{"serialnumber_$i"} = "";
-
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
-
- $form->redo_rows(\@flds, \@a, $count, $form->{rowcount});
- $form->{rowcount} = $count;
-
- &display_ship_receive;
-
-}
-
-
-sub display_ship_receive {
-
- $vclabel = ucfirst $form->{vc};
- $vclabel = $locale->text($vclabel);
-
- $form->{rowcount}++;
-
- if ($form->{vc} eq 'customer') {
- $form->{title} = $locale->text('Ship Merchandise');
- $shipped = $locale->text('Shipping Date');
- } else {
- $form->{title} = $locale->text('Receive Merchandise');
- $shipped = $locale->text('Date Received');
- }
-
- # set option selected
- foreach $item (warehouse, employee) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
-
- $warehouse = qq|
- <tr>
- <th align=right>|.$locale->text('Warehouse').qq|</th>
- <td><select name=warehouse>$form->{selectwarehouse}</select></td>
- <input type=hidden name=selectwarehouse value="|.
- $form->escape($form->{selectwarehouse},1).qq|">
- </tr>
-| if $form->{selectwarehouse};
-
- $employee = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Contact').qq|</th>
- <td><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.
- $form->escape($form->{selectemployee},1).qq|">
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=display_form value=display_ship_receive>
-
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=media value=$form->{media}>
-<input type=hidden name=format value=$form->{format}>
-
-<input type=hidden name=queued value="$form->{queued}">
-<input type=hidden name=printed value="$form->{printed}">
-<input type=hidden name=emailed value="$form->{emailed}">
-
-<input type=hidden name=vc value=$form->{vc}>
-<input type=hidden name="old$form->{vc}" value="$form->{"old$form->{vc}"}">
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width="100%">
- <tr valign=top>
- <td>
- <table width=100%>
- <tr>
- <th align=right>$vclabel</th>
- <td colspan=3>$form->{$form->{vc}}</td>
- <input type=hidden name=$form->{vc} value="$form->{$form->{vc}}">
- <input type=hidden name="$form->{vc}_id" value=$form->{"$form->{vc}_id"}>
- </tr>
- $department
- <tr>
- <th align=right>|.$locale->text('Shipping Point').qq|</th>
- <td colspan=3>
- <input name=shippingpoint size=35 value="$form->{shippingpoint}">
- </tr>
- <tr>
- <th align=right>|.$locale->text('Ship via').qq|</th>
- <td colspan=3>
- <input name=shipvia size=35 value="$form->{shipvia}">
- </tr>
- $warehouse
- </table>
- </td>
- <td align=right>
- <table>
- $employee
- <tr>
- <th align=right nowrap>|.$locale->text('Order Number').qq|</th>
- <td>$form->{ordnumber}</td>
- <input type=hidden name=ordnumber value="$form->{ordnumber}">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Order Date').qq|</th>
- <td>$form->{transdate}</td>
- <input type=hidden name=transdate value=$form->{transdate}>
- </tr>
- <tr>
- <th align=right nowrap>$shipped</th>
- <td><input name=shippingdate size=11 value=$form->{shippingdate}></td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
-<!-- shipto are in hidden variables -->
-
-<input type=hidden name=shiptoname value="$form->{shiptoname}">
-<input type=hidden name=shiptoaddress1 value="$form->{shiptoaddress1}">
-<input type=hidden name=shiptoaddress2 value="$form->{shiptoaddress2}">
-<input type=hidden name=shiptocity value="$form->{shiptocity}">
-<input type=hidden name=shiptostate value="$form->{shiptostate}">
-<input type=hidden name=shiptozipcode value="$form->{shiptozipcode}">
-<input type=hidden name=shiptocountry value="$form->{shiptocountry}">
-<input type=hidden name=shiptocontact value="$form->{shiptocontact}">
-<input type=hidden name=shiptophone value="$form->{shiptophone}">
-<input type=hidden name=shiptofax value="$form->{shiptofax}">
-<input type=hidden name=shiptoemail value="$form->{shiptoemail}">
-
-<!-- email variables -->
-<input type=hidden name=message value="$form->{message}">
-<input type=hidden name=email value="$form->{email}">
-<input type=hidden name=subject value="$form->{subject}">
-<input type=hidden name=cc value="$form->{cc}">
-<input type=hidden name=bcc value="$form->{bcc}">
-
-|;
-
- @column_index = qw(partnumber);
-
- if ($form->{type} eq "ship_order") {
- $column_data{ship} = qq|<th class=listheading>|.$locale->text('Ship').qq|</th>|;
- }
- if ($form->{type} eq "receive_order") {
- $column_data{ship} = qq|<th class=listheading>|.$locale->text('Recd').qq|</th>|;
- $column_data{sku} = qq|<th class=listheading>|.$locale->text('SKU').qq|</th>|;
- push @column_index, "sku";
- }
- push @column_index, qw(description qty ship unit bin serialnumber);
-
- my $colspan = $#column_index + 1;
-
- $column_data{partnumber} = qq|<th class=listheading nowrap>|.$locale->text('Number').qq|</th>|;
- $column_data{description} = qq|<th class=listheading nowrap>|.$locale->text('Description').qq|</th>|;
- $column_data{qty} = qq|<th class=listheading nowrap>|.$locale->text('Qty').qq|</th>|;
- $column_data{unit} = qq|<th class=listheading nowrap>|.$locale->text('Unit').qq|</th>|;
- $column_data{bin} = qq|<th class=listheading nowrap>|.$locale->text('Bin').qq|</th>|;
- $column_data{serialnumber} = qq|<th class=listheading nowrap>|.$locale->text('Serial No.').qq|</th>|;
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- for $i (1 .. $form->{rowcount} - 1) {
-
- # undo formatting
- $form->{"ship_$i"} = $form->parse_amount(\%myconfig, $form->{"ship_$i"});
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description unit bin serialnumber);
-
- $description = $form->{"description_$i"};
- $description =~ s/ /<br>/g;
-
- $column_data{partnumber} = qq|<td>$form->{"partnumber_$i"}<input type=hidden name="partnumber_$i" value="$form->{"partnumber_$i"}"></td>|;
- $column_data{sku} = qq|<td>$form->{"sku_$i"}<input type=hidden name="sku_$i" value="$form->{"sku_$i"}"></td>|;
- $column_data{description} = qq|<td>$description<input type=hidden name="description_$i" value="$form->{"description_$i"}"></td>|;
- $column_data{qty} = qq|<td align=right>|.$form->format_amount(\%myconfig, $form->{"qty_$i"}).qq|<input type=hidden name="qty_$i" value="$form->{"qty_$i"}"></td>|;
- $column_data{ship} = qq|<td align=right><input name="ship_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"ship_$i"}).qq|></td>|;
- $column_data{unit} = qq|<td>$form->{"unit_$i"}<input type=hidden name="unit_$i" value="$form->{"unit_$i"}"></td>|;
- $column_data{bin} = qq|<td>$form->{"bin_$i"}<input type=hidden name="bin_$i" value="$form->{"bin_$i"}"></td>|;
-
- $column_data{serialnumber} = qq|<td><input name="serialnumber_$i" size=15 value="$form->{"serialnumber_$i"}"></td>|;
-
- print qq|
- <tr valign=top>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input type=hidden name="orderitems_id_$i" value=$form->{"orderitems_id_$i"}>
-<input type=hidden name="id_$i" value=$form->{"id_$i"}>
-<input type=hidden name="assembly_$i" value="$form->{"assembly_$i"}">
-<input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}">
-
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
- <tr>
- <td>
-|;
-
- $form->{copies} = 1;
-
- &print_options;
-
- print qq|
- </td>
- </tr>
-</table>
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
-|;
-
- if ($form->{type} eq 'ship_order') {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Ship to').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('E-mail').qq|">
-|;
- }
-
- print qq|
-
-<input class=submit type=submit name=action value="|.$locale->text('Done').qq|">
-|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-</form>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub done {
-
- if ($form->{type} eq 'ship_order') {
- $form->isblank("shippingdate", $locale->text('Shipping Date missing!'));
- } else {
- $form->isblank("shippingdate", $locale->text('Date received missing!'));
- }
-
- $total = 0;
- map { $total += $form->{"ship_$_"} = $form->parse_amount(\%myconfig, $form->{"ship_$_"}) } (1 .. $form->{rowcount} - 1);
-
- $form->error($locale->text('Nothing entered!')) unless $total;
-
- $form->redirect($locale->text('Inventory saved!')) if OE->save_inventory(\%myconfig, \%$form);
- $form->error($locale->text('Could not save!'));
-
-}
-
-
-sub search_transfer {
-
- OE->get_warehouses(\%myconfig, \%$form);
-
- # warehouse
- if (@{ $form->{all_warehouses} }) {
- $form->{selectwarehouse} = "<option>\n";
- $form->{warehouse} = qq|$form->{warehouse}--$form->{warehouse_id}|;
-
- map { $form->{selectwarehouse} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_warehouses} });
- } else {
- $form->error($locale->text('Nothing to transfer!'));
- }
-
- $form->get_partsgroup(\%myconfig, { all => 0, searchitems => 'part'});
- if (@{ $form->{all_partsgroup} }) {
- $form->{selectpartsgroup} = "<option>\n";
- map { $form->{selectpartsgroup} .= qq|<option value="$_->{partsgroup}--$_->{id}">$_->{partsgroup}\n| } @{ $form->{all_partsgroup} };
- }
-
- $form->{title} = $locale->text('Transfer Inventory');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Transfer to').qq|</th>
- <td><select name=warehouse>$form->{selectwarehouse}</select></td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Part Number').qq|</th>
- <td><input name=partnumber size=20></td>
- </tr>
- <tr>
- <th align="right" nowrap="true">|.$locale->text('Description').qq|</th>
- <td><input name=description size=40></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Group').qq|</th>
- <td><select name=partsgroup><select>$form->{selectpartsgroup}</select></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<input type=hidden name=sort value=partnumber>
-<input type=hidden name=nextsub value=list_transfer>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list_transfer {
-
- OE->get_inventory(\%myconfig, \%$form);
-
- $partnumber = $form->escape($form->{partnumber});
- $warehouse = $form->escape($form->{warehouse});
- $description = $form->escape($form->{description});
- $partsgroup = $form->escape($form->{partsgroup});
-
- # construct href
- $href = "$form->{script}?path=$form->{path}&action=list_transfer&partnumber=$partnumber&warehouse=$warehouse&description=$description&partsgroup=$partsgroup&login=$form->{login}&sessionid=$form->{sessionid}";
-
- # construct callback
- $partnumber = $form->escape($form->{partnumber},1);
- $warehouse = $form->escape($form->{warehouse},1);
- $description = $form->escape($form->{description},1);
- $partsgroup = $form->escape($form->{partsgroup},1);
-
- $callback = "$form->{script}?path=$form->{path}&action=list_transfer&partnumber=$partnumber&warehouse=$warehouse&description=$description&partsgroup=$partsgroup&login=$form->{login}&sessionid=$form->{sessionid}";
-
- @column_index = $form->sort_columns(qw(partnumber description partsgroup make model warehouse qty transfer));
-
-
- $column_header{partnumber} = qq|<th><a class=listheading href=$href&sort=partnumber>|.$locale->text('Part Number').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
- $column_header{partsgroup} = qq|<th><a class=listheading href=$href&sort=partsgroup>|.$locale->text('Group').qq|</a></th>|;
- $column_header{warehouse} = qq|<th><a class=listheading href=$href&sort=warehouse>|.$locale->text('From').qq|</a></th>|;
- $column_header{qty} = qq|<th class=listheading>|.$locale->text('Qty').qq|</a></th>|;
- $column_header{transfer} = qq|<th class=listheading>|.$locale->text('Transfer').qq|</a></th>|;
-
-
- $option = $locale->text('Transfer to');
-
- ($warehouse, $warehouse_id) = split /--/, $form->{warehouse};
-
- if ($form->{warehouse}) {
- $option .= " : $warehouse";
- }
- if ($form->{partnumber}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Part Number')." : $form->{partnumber}";
- }
- if ($form->{description}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Description')." : $form->{description}";
- }
- if ($form->{partsgroup}) {
- ($partsgroup) = split /--/, $form->{partsgroup};
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('Group')." : $partsgroup";
- }
-
- $form->{title} = $locale->text('Transfer Inventory');
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=warehouse_id value=$warehouse_id>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
-map { print "\n$column_header{$_}" } @column_index;
-
-print qq|
- </tr>
-|;
-
-
- if (@{ $form->{all_inventory} }) {
- $sameitem = $form->{all_inventory}->[0]->{$form->{sort}};
- }
-
- $i = 0;
- foreach $ref (@{ $form->{all_inventory} }) {
-
- $i++;
-
- $column_data{partnumber} = qq|<td><input type=hidden name="id_$i" value=$ref->{id}>$ref->{partnumber}</td>|;
- $column_data{description} = "<td>$ref->{description}&nbsp;</td>";
- $column_data{partsgroup} = "<td>$ref->{partsgroup}&nbsp;</td>";
- $column_data{warehouse} = qq|<td><input type=hidden name="warehouse_id_$i" value=$ref->{warehouse_id}>$ref->{warehouse}&nbsp;</td>|;
- $column_data{qty} = qq|<td><input type=hidden name="qty_$i" value=$ref->{qty}>|.$form->format_amount(\%myconfig, $ref->{qty}).qq|</td>|;
- $column_data{transfer} = qq|<td><input name="transfer_$i" size=4></td>|;
-
- $j++; $j %= 2;
- print "
- <tr class=listrow$j>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
-
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-
-<input name=callback type=hidden value="$callback">
-
-<input type=hidden name=rowcount value=$i>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input class=submit type=submit name=action value="|.$locale->text('Transfer').qq|">|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-
-}
-
-
-sub transfer {
-
- $form->redirect($locale->text('Inventory transferred!')) if OE->transfer(\%myconfig, \%$form);
- $form->error($locale->text('Could not transfer Inventory!'));
-
-}
-
-
-sub rfq_ { &add };
-sub quotation_ { &add };
-
-
-sub redirect {
-
- $form->redirect;
- $form->error($locale->text('Order processed!'));
-
-}
-
diff --git a/sql-ledger/bin/mozilla/pe.pl b/sql-ledger/bin/mozilla/pe.pl
deleted file mode 100644
index 841c3fe..0000000
--- a/sql-ledger/bin/mozilla/pe.pl
+++ /dev/null
@@ -1,1236 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# project administration
-# partsgroup administration
-# translation maintainance
-#
-#======================================================================
-
-
-use SL::PE;
-
-1;
-# end of main
-
-
-
-sub add {
-
- $form->{title} = "Add";
-
- # construct callback
- $form->{callback} = "$form->{script}?action=add&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &{ "$form->{type}_header" };
- &{ "$form->{type}_footer" };
-
-}
-
-
-sub edit {
-
- $form->{title} = "Edit";
-
- &{ "PE::get_$form->{type}" }("", \%myconfig, \%$form);
- &{ "$form->{type}_header" };
- &{ "$form->{type}_footer" };
-
-}
-
-
-sub search {
-
- if ($form->{type} eq 'project') {
- $report = "project_report";
- $sort = 'projectnumber';
- $form->{title} = $locale->text('Projects');
-
- $number = qq|
- <tr>
- <th align=right width=1%>|.$locale->text('Number').qq|</th>
- <td><input name=projectnumber size=20></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td><input name=description size=60></td>
- </tr>
-|;
-
- }
- if ($form->{type} eq 'partsgroup') {
- $report = "partsgroup_report";
- $sort = 'partsgroup';
- $form->{title} = $locale->text('Groups');
-
- $number = qq|
- <tr>
- <th align=right width=1%>|.$locale->text('Group').qq|</th>
- <td><input name=partsgroup size=20></td>
- </tr>
-|;
-
- }
- if ($form->{type} eq 'pricegroup') {
- $report = "pricegroup_report";
- $sort = 'pricegroup';
- $form->{title} = $locale->text('Pricegroups');
-
- $number = qq|
- <tr>
- <th align=right width=1%>|.$locale->text('Pricegroup').qq|</th>
- <td><input name=pricegroup size=20></td>
- </tr>
-|;
-
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=sort value=$sort>
-<input type=hidden name=type value=$form->{type}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- $number
- <tr>
- <td></td>
- <td><input name=status class=radio type=radio value=all checked>&nbsp;|.$locale->text('All').qq|
- <input name=status class=radio type=radio value=orphaned>&nbsp;|.$locale->text('Orphaned').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=$report>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-
-sub project_report {
-
- map { $form->{$_} = $form->unescape($form->{$_}) } (projectnumber, description);
- PE->projects(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=project_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=project_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- if ($form->{status} eq 'all') {
- $option = $locale->text('All');
- }
- if ($form->{status} eq 'orphaned') {
- $option .= $locale->text('Orphaned');
- }
- if ($form->{projectnumber}) {
- $href .= "&projectnumber=".$form->escape($form->{projectnumber});
- $callback .= "&projectnumber=$form->{projectnumber}";
- $option .= "\n<br>".$locale->text('Project')." : $form->{projectnumber}";
- }
- if ($form->{description}) {
- $href .= "&description=".$form->escape($form->{description});
- $callback .= "&description=$form->{description}";
- $option .= "\n<br>".$locale->text('Description')." : $form->{description}";
- }
-
-
- @column_index = $form->sort_columns(qw(projectnumber description));
-
- $column_header{projectnumber} = qq|<th><a class=listheading href=$href&sort=projectnumber>|.$locale->text('Number').qq|</a></th>|;
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
-
- $form->{title} = $locale->text('Projects');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # escape callback
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- foreach $ref (@{ $form->{project_list} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{projectnumber} = qq|<td><a href=$form->{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{projectnumber}</td>|;
- $column_data{description} = qq|<td>$ref->{description}&nbsp;</td>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print "
- </tr>
-";
- }
-
- $i = 1;
- if ($myconfig{acs} !~ /Projects--Projects/) {
- $button{'Projects--Add Project'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Project').qq|"> |;
- $button{'Projects--Add Project'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=$form->{type}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub project_header {
-
- $form->{title} = $locale->text("$form->{title} Project");
-
-# $locale->text('Add Project')
-# $locale->text('Edit Project')
-
- $form->{description} = $form->quote($form->{description});
-
- if (($rows = $form->numtextrows($form->{description}, 60)) > 1) {
- $description = qq|<textarea name="description" rows=$rows cols=60 style="width: 100%" wrap=soft>$form->{description}</textarea>|;
- } else {
- $description = qq|<input name=description size=60 value="$form->{description}">|;
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=project>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Number').qq|</th>
- <td><input name=projectnumber size=20 value="$form->{projectnumber}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Description').qq|</th>
- <td>$description</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub project_footer {
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-<br>
-|;
-
- if ($myconfig{acs} !~ /Projects--Add Project/) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{id} && $form->{orphaned}) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub save {
-
- if ($form->{type} eq 'project') {
- $form->isblank("projectnumber", $locale->text('Project Number missing!'));
- PE->save_project(\%myconfig, \%$form);
- $form->redirect($locale->text('Project saved!'));
- }
- if ($form->{type} eq 'partsgroup') {
- $form->isblank("partsgroup", $locale->text('Group missing!'));
- PE->save_partsgroup(\%myconfig, \%$form);
- $form->redirect($locale->text('Group saved!'));
- }
- if ($form->{type} eq 'pricegroup') {
- $form->isblank("pricegroup", $locale->text('Pricegroup missing!'));
- PE->save_pricegroup(\%myconfig, \%$form);
- $form->redirect($locale->text('Pricegroup saved!'));
- }
- if ($form->{translation}) {
- PE->save_translation(\%myconfig, \%$form);
- $form->redirect($locale->text('Translations saved!'));
- }
-
-}
-
-
-sub delete {
-
- if ($form->{translation}) {
- PE->delete_translation(\%myconfig, \%$form);
- $form->redirect($locale->text('Translation deleted!'));
-
- } else {
-
- PE->delete_tuple(\%myconfig, \%$form);
-
- if ($form->{type} eq 'project') {
- $form->redirect($locale->text('Project deleted!'));
- }
- if ($form->{type} eq 'partsgroup') {
- $form->redirect($locale->text('Group deleted!'));
- }
- if ($form->{type} eq 'pricegroup') {
- $form->redirect($locale->text('Pricegroup deleted!'));
- }
- }
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
-
-sub partsgroup_report {
-
- map { $form->{$_} = $form->unescape($form->{$_}) } (partsgroup);
- PE->partsgroups(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=partsgroup_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=partsgroup_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- if ($form->{status} eq 'all') {
- $option = $locale->text('All');
- }
- if ($form->{status} eq 'orphaned') {
- $option .= $locale->text('Orphaned');
- }
- if ($form->{partsgroup}) {
- $callback .= "&partsgroup=$form->{partsgroup}";
- $option .= "\n<br>".$locale->text('Group')." : $form->{partsgroup}";
- }
-
-
- @column_index = $form->sort_columns(qw(partsgroup));
-
- $column_header{partsgroup} = qq|<th><a class=listheading href=$href&sort=partsgroup width=90%>|.$locale->text('Group').qq|</a></th>|;
-
- $form->{title} = $locale->text('Groups');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # escape callback
- $form->{callback} = $callback;
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- foreach $ref (@{ $form->{item_list} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{partsgroup} = qq|<td><a href=$form->{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{partsgroup}</td>|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print "
- </tr>
-";
- }
-
- $i = 1;
- if ($myconfig{acs} !~ /Goods \& Services--Goods \& Services/) {
- $button{'Goods & Services--Add Group'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Group').qq|"> |;
- $button{'Goods & Services--Add Group'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=$form->{type}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub partsgroup_header {
-
- $form->{title} = $locale->text("$form->{title} Group");
-
-# $locale->text('Edit Group')
-
- $form->{partsgroup} = $form->quote($form->{partsgroup});
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=$form->{type}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right>|.$locale->text('Group').qq|</th>
-
- <td><input name=partsgroup size=30 value="$form->{partsgroup}"></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub partsgroup_footer {
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-<br>
-|;
-
- if ($myconfig{acs} !~ /Goods \& Services--Add Group/) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{id} && $form->{orphaned}) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub pricegroup_report {
-
- map { $form->{$_} = $form->unescape($form->{$_}) } (pricegroup);
- PE->pricegroups(\%myconfig, \%$form);
-
- $href = "$form->{script}?action=pricegroup_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- $form->sort_order();
-
- $callback = "$form->{script}?action=pricegroup_report&direction=$form->{direction}&oldsort=$form->{oldsort}&type=$form->{type}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&status=$form->{status}";
-
- if ($form->{status} eq 'all') {
- $option = $locale->text('All');
- }
- if ($form->{status} eq 'orphaned') {
- $option .= $locale->text('Orphaned');
- }
- if ($form->{pricegroup}) {
- $callback .= "&pricegroup=$form->{pricegroup}";
- $option .= "\n<br>".$locale->text('Pricegroup')." : $form->{pricegroup}";
- }
-
-
- @column_index = $form->sort_columns(qw(pricegroup));
-
- $column_header{pricegroup} = qq|<th><a class=listheading href=$href&sort=pricegroup width=90%>|.$locale->text('Pricegroup').qq|</th>|;
-
- $form->{title} = $locale->text('Pricegroups');
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # escape callback
- $form->{callback} = $callback;
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- foreach $ref (@{ $form->{item_list} }) {
-
- $i++; $i %= 2;
-
- print qq|
- <tr valign=top class=listrow$i>
-|;
-
- $column_data{pricegroup} = qq|<td><a href=$form->{script}?action=edit&type=$form->{type}&status=$form->{status}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{pricegroup}</td>|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print "
- </tr>
-";
- }
-
- $i = 1;
- if ($myconfig{acs} !~ /Goods \& Services--Goods \& Services/) {
- $button{'Goods & Services--Add Pricegroup'}{code} = qq|<input class=submit type=submit name=action value="|.$locale->text('Add Pricegroup').qq|"> |;
- $button{'Goods & Services--Add Pricegroup'}{order} = $i++;
-
- foreach $item (split /;/, $myconfig{acs}) {
- delete $button{$item};
- }
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=type value=$form->{type}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- foreach $item (sort { $a->{order} <=> $b->{order} } %button) {
- print $item->{code};
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub pricegroup_header {
-
- $form->{title} = $locale->text("$form->{title} Pricegroup");
-
-# $locale->text('Edit Pricegroup')
-
- $form->{pricegroup} = $form->quote($form->{pricegroup});
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-<input type=hidden name=type value=$form->{type}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right>|.$locale->text('Pricegroup').qq|</th>
-
- <td><input name=pricegroup size=30 value="$form->{pricegroup}"></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td colspan=2><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub pricegroup_footer {
-
- print qq|
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-<br>
-|;
-
- if ($myconfig{acs} !~ /Goods \& Services--Add Pricegroup/) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{id} && $form->{orphaned}) {
- print qq|
-<input type=submit class=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub translation {
-
- if ($form->{translation} eq 'description') {
- $form->{title} = $locale->text('Description Translations');
- $sort = qq|<input type=hidden name=sort value=partnumber>|;
- $form->{number} = "partnumber";
- $number = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Number').qq|</th>
- <td><input name=partnumber size=20></td>
- </tr>
-|;
- }
-
- if ($form->{translation} eq 'partsgroup') {
- $form->{title} = $locale->text('Group Translations');
- $sort = qq|<input type=hidden name=sort value=partsgroup>|;
- }
-
- if ($form->{translation} eq 'project') {
- $form->{title} = $locale->text('Project Description Translations');
- $form->{number} = "projectnumber";
- $sort = qq|<input type=hidden name=sort value=projectnumber>|;
- $number = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Project Number').qq|</th>
- <td><input name=projectnumber size=20></td>
- </tr>
-|;
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=translation value=$form->{translation}>
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=number value=$form->{number}>
-
-<table width="100%">
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table>
- $number
- <tr>
- <th align=right nowrap>|.$locale->text('Description').qq|</th>
- <td colspan=3><input name=description size=40></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr><td><hr size=3 noshade></td></tr>
-</table>
-
-<input type=hidden name=nextsub value=list_translations>
-$sort
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub list_translations {
-
- $title = $form->escape($form->{title},1);
-
- $callback = "$form->{script}?action=list_translations&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&translation=$form->{translation}&number=$form->{number}&title=$title";
-
- if ($form->{"$form->{number}"}) {
- $callback .= qq|&$form->{number}=$form->{"$form->{number}"}|;
- $option .= $locale->text('Number').qq| : $form->{"$form->{number}"}<br>|;
- }
- if ($form->{description}) {
- $callback .= "&description=$form->{description}";
- $description = $form->{description};
- $description =~ s/ /<br>/g;
- $option .= $locale->text('Description').qq| : $form->{description}<br>|;
- }
-
- if ($form->{translation} eq 'partsgroup') {
- @column_index = qw(description language translation);
- $form->{sort} = "";
- } else {
- @column_index = $form->sort_columns("$form->{number}", "description", "language", "translation");
- }
-
- &{ "PE::$form->{translation}_translations" }("", \%myconfig, \%$form);
-
- $callback .= "&direction=$form->{direction}&oldsort=$form->{oldsort}";
-
- $href = $callback;
-
- $form->sort_order();
-
- $callback =~ s/(direction=).*\&{1}/$1$form->{direction}\&/;
-
- $column_header{"$form->{number}"} = qq|<th nowrap><a class=listheading href=$href&sort=$form->{number}>|.$locale->text('Number').qq|</a></th>|;
- $column_header{description} = qq|<th nowrap width=40%><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</a></th>|;
- $column_header{language} = qq|<th nowrap class=listheading>|.$locale->text('Language').qq|</a></th>|;
- $column_header{translation} = qq|<th nowrap width=40% class=listheading>|.$locale->text('Translation').qq|</a></th>|;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
-
- <tr><td>$option</td></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
- |;
-
-
- # add order to callback
- $form->{callback} = $callback .= "&sort=$form->{sort}";
-
- # escape callback for href
- $callback = $form->escape($callback);
-
- if (@{ $form->{translations} }) {
- $sameitem = $form->{translations}->[0]->{$form->{sort}};
- }
-
- foreach $ref (@{ $form->{translations} }) {
-
- $ref->{description} =~ s/ /<br>/g;
-
- map { $column_data{$_} = "<td>$ref->{$_}&nbsp;</td>" } @column_index;
-
- $column_data{description} = "<td><a href=$form->{script}?action=edit_translation&translation=$form->{translation}&number=$form->{number}&id=$ref->{id}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{description}&nbsp;</a></td>";
-
- $i++; $i %= 2;
- print "<tr class=listrow$i>";
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr><td><hr size=3 noshade></td></tr>
-</table>
-
-|;
-
- print qq|
-
-<br>
-
-<form method=post action=$form->{script}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-|;
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub edit_translation {
-
- &{ "PE::$form->{translation}_translations" }("", \%myconfig, \%$form);
-
- $form->error($locale->text('Languages not defined!')) unless $form->{all_language};
-
- $form->{selectlanguage} = qq|<option>\n|;
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_language} };
-
- $form->{"$form->{number}"} = $form->{translations}->[0]->{"$form->{number}"};
- $form->{description} = $form->{translations}->[0]->{description};
- $form->{description} =~ s/ /<br>/g;
-
- shift @{ $form->{translations} };
-
- $i = 1;
- foreach $row (@{ $form->{translations} }) {
- $form->{"language_code_$i"} = $row->{code};
- $form->{"translation_$i"} = $row->{translation};
- $i++;
- }
- $form->{translation_rows} = $i - 1;
-
- $form->{title} = $locale->text('Edit Description Translations');
-
- &translation_header;
- &translation_footer;
-
-}
-
-
-sub translation_header {
-
- $form->{translation_rows}++;
-
- $form->{selectlanguage} = $form->unescape($form->{selectlanguage});
- for ($i = 1; $i <= $form->{translation_rows}; $i++) {
- $form->{"selectlanguage_$i"} = $form->{selectlanguage};
- if ($form->{"language_code_$i"}) {
- $form->{"selectlanguage_$i"} =~ s/(<option value="\Q$form->{"language_code_$i"}\E")/$1 selected/;
- }
- }
-
- $form->{selectlanguage} = $form->escape($form->{selectlanguage},1);
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input name=id type=hidden value=$form->{id}>
-<input name=trans_id type=hidden value=$form->{trans_id}>
-
-<input type=hidden name=selectlanguage value="$form->{selectlanguage}">
-<input type=hidden name=translation_rows value=$form->{translation_rows}>
-
-<input type=hidden name=number value=$form->{number}>
-<input type=hidden name=$form->{number} value="|.$form->quote($form->{"$form->{number}"}).qq|">
-<input type=hidden name=description value="|.$form->quote($form->{description}).qq|">
-
-<input type=hidden name=translation value=$form->{translation}>
-<input type=hidden name=title value="$form->{title}">
-
-<table width="100%">
- <tr><th class=listtop>$form->{title}</th></tr>
- <tr height="5"></tr>
- <tr valign=top>
- <td>
- <table width=100%>
- <tr>
- <td align=left>$form->{"$form->{number}"}</th>
- <td align=left>$form->{description}</th>
- </tr>
- <tr>
- <tr>
- <th class=listheading>|.$locale->text('Language').qq|</th>
- <th class=listheading>|.$locale->text('Translation').qq|</th>
- </tr>
-|;
-
- for ($i = 1; $i <= $form->{translation_rows}; $i++) {
-
- if (($rows = $form->numtextrows($form->{"translation_$i"}, 40)) > 1) {
- $translation = qq|<textarea name="translation_$i" rows=$rows cols=40 wrap=soft>$form->{"translation_$i"}</textarea>|;
- } else {
- $translation = qq|<input name="translation_$i" size=40 value="$form->{"translation_$i"}">|;
- }
-
- print qq|
- <tr valign=top>
- <td><select name="language_code_$i">$form->{"selectlanguage_$i"}</select></td>
- <td>$translation</td>
- </tr>
-|;
- }
-
- print qq|
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
-}
-
-
-sub translation_footer {
-
- print qq|
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=hidden name=callback value="$form->{callback}">
-
-<br>
-
-<input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Save').qq|">
-|;
-
- if ($form->{trans_id}) {
- print qq|
-<input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">
-|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-
- </form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update {
-
- @flds = qw(language translation);
- $count = 0;
- @a = ();
- for $i (1 .. $form->{translation_rows}) {
- if ($form->{"language_code_$i"} ne "") {
- push @a, {};
- $j = $#a;
-
- map { $a[$j]->{$_} = $form->{"${_}_$i"} } @flds;
- $count++;
- }
- }
- $form->redo_rows(\@flds, \@a, $count, $form->{translation_rows});
- $form->{translation_rows} = $count;
-
- &translation_header;
- &translation_footer;
-
-}
-
-
-sub add_group { &add };
-sub add_project { &add };
-sub add_pricegroup { &add };
-
diff --git a/sql-ledger/bin/mozilla/pos.pl b/sql-ledger/bin/mozilla/pos.pl
deleted file mode 100644
index e9416f6..0000000
--- a/sql-ledger/bin/mozilla/pos.pl
+++ /dev/null
@@ -1,878 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Steve Doerr <sdoerr907@everestkc.net>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# POS
-#
-#=====================================================================
-
-
-1;
-# end
-
-
-sub add {
-
- $form->{title} = $locale->text('Add POS Invoice');
-
- $form->{callback} = "$form->{script}?action=$form->{nextsub}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &invoice_links;
-
- $form->{type} = "pos_invoice";
- $form->{format} = "txt";
- $form->{media} = ($myconfig{printer}) ? $myconfig{printer} : "screen";
- $form->{rowcount} = 0;
-
- $form->{readonly} = ($myconfig{acs} =~ /POS--Sale/) ? 1 : 0;
-
- $ENV{REMOTE_ADDR} =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/;
- $form->{till} = $4;
-
- map { $form->{partsgroup} .= "$_->{partsgroup}--$_->{translation}\n" } @{ $form->{all_partsgroup} };
-
- &display_form;
-
-}
-
-
-sub openinvoices {
-
- $ENV{REMOTE_ADDR} =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/;
- $form->{till} = $4;
-
- $form->{sort} = 'transdate';
-
- map { $form->{$_} = 'Y' } qw(open l_invnumber l_transdate l_name l_amount l_curr l_till l_subtotal);
-
- if ($myconfig{role} ne 'user') {
- $form->{l_employee} = 'Y';
- }
-
- $form->{title} = $locale->text('Open');
- &ar_transactions;
-
-}
-
-
-sub edit {
-
- $form->{title} = $locale->text('Edit POS Invoice');
-
- $form->{callback} = "$form->{script}?action=$form->{nextsub}&path=$form->{path}&login=$form->{login}&sessionid=$form->{sessionid}" unless $form->{callback};
-
- &invoice_links;
- &prepare_invoice;
-
- $form->{type} = "pos_invoice";
- $form->{format} = "txt";
- $form->{media} = ($myconfig{printer}) ? $myconfig{printer} : "screen";
-
- $form->{readonly} = ($myconfig{acs} =~ /POS--Sale/) ? 1 : 0;
-
- map { $form->{partsgroup} .= "$_->{partsgroup}--$_->{translation}\n" } @{ $form->{all_partsgroup} };
-
- &display_form;
-
-}
-
-
-sub form_header {
-
- # set option selected
- foreach $item (qw(AR currency)) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- foreach $item (qw(customer department employee)) {
- $form->{"select$item"} = $form->unescape($form->{"select$item"});
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/(<option value="\Q$form->{$item}\E")/$1 selected/;
- }
-
- $form->{exchangerate} = $form->format_amount(\%myconfig, $form->{exchangerate});
-
- if ($form->{oldtotalpaid} > $form->{oldinvtotal}) {
- $adj = $form->{oldtotalpaid} - $form->{oldinvtotal};
- }
- $form->{creditremaining} = $form->{creditremaining} - $adj + $form->{oldchange};
-
- $exchangerate = "";
- if ($form->{currency} ne $form->{defaultcurrency}) {
- if ($form->{forex}) {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td>$form->{exchangerate}<input type=hidden name=exchangerate value=$form->{exchangerate}></td>|;
- } else {
- $exchangerate .= qq|<th align=right>|.$locale->text('Exchange Rate').qq|</th><td><input name=exchangerate size=10 value=$form->{exchangerate}></td>|;
- }
- }
- $exchangerate .= qq|
-<input type=hidden name=forex value=$form->{forex}>
-|;
-
- if ($form->{selectcustomer}) {
- $customer = qq|<select name=customer>$form->{selectcustomer}</select>
- <input type=hidden name="selectcustomer" value="|.
- $form->escape($form->{selectcustomer},1).qq|">|;
- } else {
- $customer = qq|<input name=customer value="$form->{customer}" size=35>|;
- }
-
- $department = qq|
- <tr>
- <th align="right" nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="|.
- $form->escape($form->{selectdepartment},1).qq|">
- </td>
- </tr>
-| if $form->{selectdepartment};
-
- $n = ($form->{creditremaining} < 0) ? "0" : "1";
-
- if ($form->{selectlanguage}) {
- if ($form->{language_code} ne $form->{oldlanguage_code}) {
- # rebuild partsgroup
- $form->get_partsgroup(\%myconfig, { language_code => $form->{language_code} });
- $form->{partsgroup} = "";
- map { $form->{partsgroup} .= "$_->{partsgroup}--$_->{translation}\n" } @{ $form->{all_partsgroup} };
- $form->{oldlanguage_code} = $form->{language_code};
- }
-
-
- $form->{"selectlanguage"} = $form->unescape($form->{"selectlanguage"});
- $form->{"selectlanguage"} =~ s/ selected//;
- $form->{"selectlanguage"} =~ s/(<option value="\Q$form->{language_code}\E")/$1 selected/;
- $lang = qq|
- <tr>
- <th align=right>|.$locale->text('Language').qq|</th>
- <td colspan=3><select name=language_code>$form->{selectlanguage}</select></td>
- </tr>
- <input type=hidden name=oldlanguage_code value=$form->{oldlanguage_code}>
- <input type=hidden name=selectlanguage value="|.
- $form->escape($form->{selectlanguage},1).qq|">|;
- }
-
-
- $form->header;
-
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=id value=$form->{id}>
-
-<input type=hidden name=till value=$form->{till}>
-
-<input type=hidden name=type value=$form->{type}>
-<input type=hidden name=media value=$form->{media}>
-<input type=hidden name=format value=$form->{format}>
-
-<input type=hidden name=printed value="$form->{printed}">
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=vc value="customer">
-
-<input type=hidden name=discount value=$form->{discount}>
-<input type=hidden name=creditlimit value=$form->{creditlimit}>
-<input type=hidden name=creditremaining value=$form->{creditremaining}>
-
-<input type=hidden name=closedto value=$form->{closedto}>
-<input type=hidden name=locked value=$form->{locked}>
-
-
-<table width=100%>
- <tr class=listtop>
- <th class=listtop>$form->{title}</font></th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Customer').qq|</th>
- <td>$customer</td>
- <input type=hidden name=customer_id value=$form->{customer_id}>
- <input type=hidden name=oldcustomer value="$form->{oldcustomer}">
- </tr>
- <tr>
- <td></td>
- <td colspan=3>
- <table>
- <tr>
- <th nowrap>|.$locale->text('Credit Limit').qq|</th>
- <td>$form->{creditlimit}</td>
- <th nowrap>|.$locale->text('Remaining').qq|</th>
- <td class="plus$n">|.$form->format_amount(\%myconfig, $form->{creditremaining}, 0, "0").qq|</font></td>
- </tr>
- </table>
- </td>
- </tr>
- $discount
- <tr>
- <th align=right nowrap>|.$locale->text('Record in').qq|</th>
- <td><select name=AR>$form->{selectAR}</select></td>
- <input type=hidden name=selectAR value="$form->{selectAR}">
- </tr>
- $department
- </table>
- </td>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Salesperson').qq|</th>
- <td colspan=3><select name=employee>$form->{selectemployee}</select></td>
- <input type=hidden name=selectemployee value="|.
- $form->escape($form->{selectemployee},1).qq|">
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Currency').qq|</th>
- <td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
- <input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
- <input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
- <input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
- $exchangerate
- </tr>
- $lang
- </table>
- </td>
- <input type=hidden name=invnumber value=$form->{invnumber}>
- <input type=hidden name=transdate value=$form->{transdate}>
- <input type=hidden name=duedate value=$form->{duedate}>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- </td>
- </tr>
-
-
-<input type=hidden name=taxaccounts value="$form->{taxaccounts}">
-|;
-
- foreach $item (split / /, $form->{taxaccounts}) {
- print qq|
-<input type=hidden name="${item}_rate" value="$form->{"${item}_rate"}">
-<input type=hidden name="${item}_description" value="$form->{"${item}_description"}">
-<input type=hidden name="${item}_taxnumber" value="$form->{"${item}_taxnumber"}">
-|;
- }
-
-}
-
-
-
-sub form_footer {
-
- $form->{invtotal} = $form->{invsubtotal};
-
- foreach $item (split / /, $form->{taxaccounts}) {
- if ($form->{"${item}_base"}) {
- $form->{"${item}_total"} = $form->round_amount($form->{"${item}_base"} * $form->{"${item}_rate"}, 2);
- $form->{invtotal} += $form->{"${item}_total"};
- $form->{"${item}_total"} = $form->format_amount(\%myconfig, $form->{"${item}_total"}, 2, 0);
-
- $tax .= qq|
- <tr>
- <th align=right>$form->{"${item}_description"}</th>
- <td align=right>$form->{"${item}_total"}</td>
- </tr>
-|;
- }
- }
-
-
-
- $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0);
-
- $subtotal = qq|
- <tr>
- <th align=right>|.$locale->text('Subtotal').qq|</th>
- <td align=right>$form->{invsubtotal}</td>
- </tr>
-|;
-
-
- $totalpaid = 0;
-
- $form->{paidaccounts} = 1;
- $i = 1;
-
- $form->{"selectAR_paid_$i"} = $form->{selectAR_paid};
- $form->{"selectAR_paid_$i"} =~ s/option>\Q$form->{"AR_paid_$i"}\E/option selected>$form->{"AR_paid_$i"}/;
-
- # format amounts
- $totalpaid += $form->{"paid_$i"};
- $form->{"paid_$i"} = $form->format_amount(\%myconfig, $form->{"paid_$i"}, 2);
- $form->{"exchangerate_$i"} = $form->format_amount(\%myconfig, $form->{"exchangerate_$i"});
-
- $form->{change} = 0;
- if ($totalpaid > $form->{invtotal}) {
- $form->{change} = $totalpaid - $form->{invtotal};
- }
- $form->{oldchange} = $form->{change};
- $form->{change} = $form->format_amount(\%myconfig, $form->{change}, 2, 0);
- $form->{totalpaid} = $form->format_amount(\%myconfig, $totalpaid, 2);
-
-
- $form->{oldinvtotal} = $form->{invtotal};
- $form->{invtotal} = $form->format_amount(\%myconfig, $form->{invtotal}, 2, 0);
-
-
- print qq|
-
-<input type=hidden name="exchangerate_$i" value=$form->{"exchangerate"}>
-<input type=hidden name="forex_$i" value=$form->{"forex_$i"}>
-
- <tr>
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <table>
- <tr>
- <td></td>
- <th>|.$locale->text('Paid').qq|</th>
- <th>|.$locale->text('Source').qq|</th>
- <th>|.$locale->text('Memo').qq|</th>
- <th>|.$locale->text('Account').qq|</th>
- </tr>
- <tr>
- <td></td>
- <td><input name="paid_$i" size=11 value=$form->{"paid_$i"}></td>
- <td><input name="source_$i" size=10 value="$form->{"source_$i"}"></td>
- <td><input name="memo_$i" size=10 value="$form->{"memo_$i"}"></td>
- <td><select name="AR_paid_$i">$form->{"selectAR_paid_$i"}</select></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Change').qq|</th>
- <th>$form->{change}</th>
- </tr>
- </table>
- </td>
- <td align=right>
- <table>
- $subtotal
- $tax
- <tr>
- <th align=right>|.$locale->text('Total').qq|</th>
- <td align=right>$form->{invtotal}</td>
- </tr>
- $taxincluded
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
-<input type=hidden name=paidaccounts value=$form->{paidaccounts}>
-<input type=hidden name=selectAR_paid value="$form->{selectAR_paid}">
-<input type=hidden name=oldinvtotal value=$form->{oldinvtotal}>
-<input type=hidden name=oldtotalpaid value=$totalpaid>
-
-<input type=hidden name=change value=$form->{change}>
-<input type=hidden name=oldchange value=$form->{oldchange}>
-
-<input type=hidden name=datepaid value=$form->{transdate}>
-<input type=hidden name=invtotal value=$form->{invtotal}>
-
-<tr>
- <td>
-|;
-
- &print_options;
-
- print qq|
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
- $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- $closedto = $form->datetonum($form->{closedto}, \%myconfig);
-
- if (! $form->{readonly}) {
- if ($transdate > $closedto) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Update').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
- <input class=submit type=submit name=action value="|.$locale->text('Post').qq|">|;
-
- if ($form->{id}) {
- print qq|
- <input class=submit type=submit name=action value="|.$locale->text('Delete').qq|">|;
- }
-
-
- print "<p>\n";
-
- if ($form->{partsgroup}) {
- print qq|
-<input type=hidden name=nextsub value=lookup_partsgroup>
-<input type=hidden name=partsgroup value="$form->{partsgroup}">|;
-
- foreach $item (split /\n/, $form->{partsgroup}) {
- $item =~ s/ //;
- ($partsgroup, $translation) = split /--/, $item;
- $item = ($translation) ? $translation : $partsgroup;
- print qq| <input class=submit type=submit name=action value=".$item">\n|;
- }
- }
- }
- }
-
- print qq|
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-
-<input name=callback type=hidden value="$form->{callback}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub post {
-
- $form->isblank("customer", $locale->text('Customer missing!'));
-
- # if oldcustomer ne customer redo form
- $customer = $form->{customer};
- $customer =~ s/--.*//g;
- $customer .= "--$form->{customer_id}";
- if ($customer ne $form->{oldcustomer}) {
- &update;
- exit;
- }
-
- &validate_items;
-
- $form->isblank("exchangerate", $locale->text('Exchange rate missing!')) if ($form->{currency} ne $form->{defaultcurrency});
-
- $paid = $form->parse_amount(\%myconfig, $form->{"paid_1"});
- $total = $form->parse_amount(\%myconfig, $form->{invtotal});
-
- $form->{"paid_1"} = $form->{invtotal} if $paid > $total;
-
- ($form->{AR}) = split /--/, $form->{AR};
-
- $form->{invnumber} = $form->update_defaults(\%myconfig, "sinumber") unless $form->{invnumber};
-
- $form->redirect($locale->text('Posted!')) if (IS->post_invoice(\%myconfig, \%$form));
- $form->error($locale->text('Cannot post transaction!'));
-
-}
-
-
-sub display_row {
- my $numrows = shift;
-
- @column_index = qw(partnumber description partsgroup qty unit sellprice discount linetotal);
-
- $form->{invsubtotal} = 0;
-
- map { $form->{"${_}_base"} = 0 } (split / /, $form->{taxaccounts});
-
- $column_data{partnumber} = qq|<th class=listheading nowrap>|.$locale->text('Number').qq|</th>|;
- $column_data{description} = qq|<th class=listheading nowrap>|.$locale->text('Description').qq|</th>|;
- $column_data{qty} = qq|<th class=listheading nowrap>|.$locale->text('Qty').qq|</th>|;
- $column_data{unit} = qq|<th class=listheading nowrap>|.$locale->text('Unit').qq|</th>|;
- $column_data{sellprice} = qq|<th class=listheading nowrap>|.$locale->text('Price').qq|</th>|;
- $column_data{linetotal} = qq|<th class=listheading nowrap>|.$locale->text('Extended').qq|</th>|;
- $column_data{discount} = qq|<th class=listheading nowrap>%</th>|;
-
- print qq|
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $exchangerate = $form->parse_amount(\%myconfig, $form->{exchangerate});
- $exchangerate = ($exchangerate) ? $exchangerate : 1;
-
- for $i (1 .. $numrows) {
- # undo formatting
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(qty discount sellprice);
-
- ($dec) = ($form->{"sellprice_$i"} =~ /\.(\d+)/);
- $dec = length $dec;
- $decimalplaces = ($dec > 2) ? $dec : 2;
-
- if (($form->{"qty_$i"} != $form->{"oldqty_$i"}) || ($form->{currency} ne $form->{oldcurrency})) {
-# check for a pricematrix
- foreach $item (split / /, $form->{"pricematrix_$i"}) {
- ($q, $p) = split /:/, $item;
- if ($p && $form->{"qty_$i"} > $q) {
- $form->{"sellprice_$i"} = $form->round_amount($p / $exchangerate, $decimalplaces);
- }
- }
- }
-
- if ($i < $numrows) {
- if ($form->{"discount_$i"} != $form->{discount} * 100) {
- $form->{"discount_$i"} = $form->{discount} * 100;
- }
- }
-
- $discount = $form->round_amount($form->{"sellprice_$i"} * $form->{"discount_$i"}/100, $decimalplaces);
- $linetotal = $form->round_amount($form->{"sellprice_$i"} - $discount, $decimalplaces);
- $linetotal = $form->round_amount($linetotal * $form->{"qty_$i"}, 2);
-
- map { $form->{"${_}_$i"} = $form->quote($form->{"${_}_$i"}) } qw(partnumber sku description partsgroup unit);
-
- $column_data{partnumber} = qq|<td><input name="partnumber_$i" size=20 value="$form->{"partnumber_$i"}"></td>|;
-
- if (($rows = $form->numtextrows($form->{"description_$i"}, 25, 6)) > 1) {
- $column_data{description} = qq|<td><textarea name="description_$i" rows=$rows cols=25 wrap=soft>$form->{"description_$i"}</textarea></td>|;
- } else {
- $column_data{description} = qq|<td><input name="description_$i" size=30 value="$form->{"description_$i"}"></td>|;
- }
-
- $column_data{partsgroup} = qq|<input type=hidden name="partsgroup_$i" value="$form->{"partsgroup_$i"}">|;
-
- $column_data{qty} = qq|<td align=right><input name="qty_$i" size=5 value=|.$form->format_amount(\%myconfig, $form->{"qty_$i"}).qq|></td>|;
- $column_data{unit} = qq|<td><input type=hidden name="unit_$i" value="$form->{"unit_$i"}">$form->{"unit_$i"}</td>|;
- $column_data{sellprice} = qq|<td align=right><input name="sellprice_$i" size=9 value=|.$form->format_amount(\%myconfig, $form->{"sellprice_$i"}, $decimalplaces).qq|></td>|;
- $column_data{linetotal} = qq|<td align=right>|.$form->format_amount(\%myconfig, $linetotal, 2).qq|</td>|;
-
-
- $discount = $form->format_amount(\%myconfig, $form->{"discount_$i"});
- $column_data{discount} = qq|<td align=right>$discount</td>
- <input type=hidden name="discount_$i" value=$discount>|;
-
- print qq|
- <tr valign=top>|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
-<input type=hidden name="id_$i" value=$form->{"id_$i"}>
-<input type=hidden name="inventory_accno_$i" value=$form->{"inventory_accno_$i"}>
-<input type=hidden name="income_accno_$i" value=$form->{"income_accno_$i"}>
-<input type=hidden name="expense_accno_$i" value=$form->{"expense_accno_$i"}>
-<input type=hidden name="listprice_$i" value="$form->{"listprice_$i"}">
-<input type=hidden name="assembly_$i" value="$form->{"assembly_$i"}">
-<input type=hidden name="taxaccounts_$i" value="$form->{"taxaccounts_$i"}">
-<input type=hidden name="pricematrix_$i" value="$form->{"pricematrix_$i"}">
-<input type=hidden name="oldqty_$i" value="$form->{"qty_$i"}">
-<input type=hidden name="sku_$i" value="$form->{"sku_$i"}">
-
-|;
-
- map { $form->{"${_}_base"} += $linetotal } (split / /, $form->{"taxaccounts_$i"});
-
- $form->{invsubtotal} += $linetotal;
- }
-
- print qq|
- </table>
- </td>
- </tr>
-
-<input type=hidden name=oldcurrency value=$form->{currency}>
-
-|;
-
-}
-
-
-sub print {
-
- $paid = $form->parse_amount(\%myconfig, $form->{"paid_1"});
- $total = $form->parse_amount(\%myconfig, $form->{invtotal});
-
- $form->{change} = 0;
- if ($paid > $total) {
- $form->{paid} = $total - $paid;
- $form->{"paid_1"} = $form->format_amount(\%myconfig, $paid, 2, 0);
- $form->{change} = $form->format_amount(\%myconfig, $paid - $total, 2, 0);
- }
-
- $old_form = new Form;
- map { $old_form->{$_} = $form->{$_} } keys %$form;
-
- map { $form->{$_} =~ s/--.*//g } qw(employee department);
- $form->{invdate} = $form->{transdate};
- $form->{invtime} = scalar localtime;
-
- &print_form($old_form);
-
-}
-
-
-sub print_form {
- my $old_form = shift;
-
- # if oldcustomer ne customer redo form
- $customer = $form->{customer};
- $customer =~ s/--.*//g;
- $customer .= "--$form->{customer_id}";
- if ($customer ne $form->{oldcustomer}) {
- &update;
- exit;
- }
-
-
- &validate_items;
-
- &{ "$form->{vc}_details" };
-
- @a = ();
- map { push @a, ("partnumber_$_", "description_$_") } (1 .. $form->{rowcount});
- map { push @a, "${_}_description" } split / /, $form->{taxaccounts};
- $form->format_string(@a);
-
- # format payment dates
- map { $form->{"datepaid_$_"} = $locale->date(\%myconfig, $form->{"datepaid_$_"}) } (1 .. $form->{paidaccounts});
-
- IS->invoice_details(\%myconfig, \%$form);
-
- map { $form->{$_} = $myconfig{$_} } (qw(company address tel fax businessnumber));
- $form->{username} = $myconfig{name};
- map { $form->{$_} =~ s/\\n/ /g } qw(company address);
-
- $form->{templates} = "$myconfig{templates}";
- $form->{IN} = "$form->{type}.$form->{format}";
-
- if ($form->{media} !~ /screen/) {
- $form->{OUT} = "| $printer{$form->{media}}";
- }
-
- $form->{discount} = $form->format_amount(\%myconfig, $form->{discount} * 100);
-
- $form->{rowcount}--;
- $form->{pre} = "<body bgcolor=#ffffff>\n<pre>";
- delete $form->{stylesheet};
-
- $form->parse_template(\%myconfig, $userspath);
-
- if ($form->{printed} !~ /$form->{formname}/) {
- $form->{printed} .= " $form->{formname}";
- $form->{printed} =~ s/^ //;
-
- $form->update_status(\%myconfig);
- }
- $old_form->{printed} = $form->{printed};
-
- # if we got back here restore the previous form
- if ($form->{media} !~ /screen/) {
- # restore and display form
- map { $form->{$_} = $old_form->{$_} } keys %$old_form;
- map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate);
-
- $form->{rowcount}--;
- for $i (1 .. $form->{paidaccounts}) {
- map { $form->{"${_}_$i"} = $form->parse_amount(\%myconfig, $form->{"${_}_$i"}) } qw(paid exchangerate);
- }
-
- delete $form->{pre};
-
- &display_form;
- exit;
- }
-
-}
-
-
-sub lookup_partsgroup {
-
- $form->{action} =~ s/ //;
- $form->{action} = substr($form->{action}, 1);
-
- if ($form->{language_code}) {
- # get english
- foreach $item (split /\n/, $form->{partsgroup}) {
- if ($item =~ /$form->{action}/) {
- ($partsgroup, $translation) = split /--/, $item;
- $form->{action} = $partsgroup;
- last;
- }
- }
- }
-
- $form->{"partsgroup_$form->{rowcount}"} = $form->{action};
-
- &update;
-
-}
-
-
-
-sub print_options {
-
- $form->{PD}{$form->{type}} = "checked";
-
- print qq|
-<input type=hidden name=format value=$form->{format}>
-<input type=hidden name=formname value=$form->{type}>
-
-<table width=100%>
- <tr>
-|;
-
-
- $media = qq|
- <td><input class=radio type=radio name=media value="screen"></td>
- <td>|.$locale->text('Screen').qq|</td>|;
-
- if (%printer) {
- map { $media .= qq|
- <td><input class=radio type=radio name=media value="$_"></td>
- <td nowrap>$_</td>
-| } keys %printer;
- }
-
- $media =~ s/(value="\Q$form->{media}\E")/$1 checked/;
-
- print qq|
- $media
-
- <td width=99%>&nbsp;</td>|;
-
- if ($form->{printed} =~ /$form->{type}/) {
- print qq|
- <th>\||.$locale->text('Printed').qq|\|</th>|;
- }
-
- print qq|
- </tr>
-</table>
-|;
-
-}
-
-
-sub receipts {
-
- $form->{title} = $locale->text('Receipts');
-
- $form->{db} = 'ar';
- RP->paymentaccounts(\%myconfig, \%$form);
-
- map { $paymentaccounts .= "$_->{accno} " } @{ $form->{PR} };
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=paymentaccounts value="$paymentaccounts">
-
-<input type=hidden name=till value=1>
-<input type=hidden name=subtotal value=1>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
-
- <input type=hidden name=nextsub value=list_payments>
-
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- <input type=hidden name=sort value=transdate>
- <input type=hidden name=db value=$form->{db}>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/ps.pl b/sql-ledger/bin/mozilla/ps.pl
deleted file mode 100644
index 81ffaa4..0000000
--- a/sql-ledger/bin/mozilla/ps.pl
+++ /dev/null
@@ -1,42 +0,0 @@
-# point of sale script
-
-use SL::AR;
-use SL::IS;
-use SL::RP;
-
-require "$form->{path}/ar.pl";
-require "$form->{path}/is.pl";
-require "$form->{path}/rp.pl";
-require "$form->{path}/pos.pl";
-
-# customizations
-if (-f "$form->{path}/custom_ar.pl") {
- eval { require "$form->{path}/custom_ar.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_ar.pl") {
- eval { require "$form->{path}/$form->{login}_ar.pl"; };
-}
-
-if (-f "$form->{path}/custom_is.pl") {
- eval { require "$form->{path}/custom_is.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_is.pl") {
- eval { require "$form->{path}/$form->{login}_is.pl"; };
-}
-
-if (-f "$form->{path}/custom_rp.pl") {
- eval { require "$form->{path}/custom_rp.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_rp.pl") {
- eval { require "$form->{path}/$form->{login}_rp.pl"; };
-}
-
-if (-f "$form->{path}/custom_pos.pl") {
- eval { require "$form->{path}/custom_pos.pl"; };
-}
-if (-f "$form->{path}/$form->{login}_pos.pl") {
- eval { require "$form->{path}/$form->{login}_pos.pl"; };
-}
-
-1;
-# end
diff --git a/sql-ledger/bin/mozilla/pw.pl b/sql-ledger/bin/mozilla/pw.pl
deleted file mode 100644
index 6f73190..0000000
--- a/sql-ledger/bin/mozilla/pw.pl
+++ /dev/null
@@ -1,73 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Author: Dieter Simader
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-
-
-1;
-# end of main
-
-
-sub getpassword {
- my ($s) = @_;
-
- $form->{endsession} = 1;
- $form->header;
-
- $sessionexpired = qq|<b><font color=red><blink>|.$locale->text('Session expired!').qq|</blink></font></b><p>| if $s;
-
- print qq|
-<script language="JavaScript" type="text/javascript">
-<!--
-function sf(){
- document.pw.password.focus();
-}
-// End -->
-</script>
-
-<body onload="sf()">
-
- $sessionexpired
-
-<form method=post action=$form->{script} name=pw>
-
-<table>
- <tr>
- <th align=right>|.$locale->text('Password').qq|</th>
- <td><input type=password name=password size=30></td>
- <td><input type=submit value="|.$locale->text('Continue').qq|"></td>
- </tr>
-</table>
-
-|;
-
- map { delete $form->{$_} } qw(header script endsession password);
- $form->hide_form;
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/rc.pl b/sql-ledger/bin/mozilla/rc.pl
deleted file mode 100644
index ee6d867..0000000
--- a/sql-ledger/bin/mozilla/rc.pl
+++ /dev/null
@@ -1,509 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# Account reconciliation module
-#
-#======================================================================
-
-use SL::RC;
-
-1;
-# end of main
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-
-sub reconciliation {
-
- RC->paymentaccounts(\%myconfig, \%$form);
-
- $selection = "";
- map { $selection .= "<option>$_->{accno}--$_->{description}\n" } @{ $form->{PR} };
-
- $form->{title} = $locale->text('Reconciliation');
-
- if ($form->{report}) {
- $form->{title} = $locale->text('Reconciliation Report');
- $cleared = qq|
- <input type=hidden name=report value=1>
- <tr>
- <td align=right><input type=checkbox style=checkbox name=outstanding value=1 checked></td>
- <td>|.$locale->text('Outstanding').qq|</td>
- <td align=right><input type=checkbox style=checkbox name=cleared value=1></td>
- <td>|.$locale->text('Cleared').qq|</td>
- </tr>
-|;
-
- }
-
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Account').qq|</th>
- <td colspan=3><select name=accno>$selection</select>
- </td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- $cleared
- <tr>
- <td align=right><input type=radio style=radio name=summary value=1 checked></td>
- <td>|.$locale->text('Summary').qq|</td>
- <td align=right><input type=radio style=radio name=summary value=0></td>
- <td>|.$locale->text('Detail').qq|</td>
- </tr>
- <tr>
- <td align=right><input type=checkbox style=checkbox name=fx_transaction value=1 checked></td>
- <td colspan=3>|.$locale->text('Include Exchange Rate Difference').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<input type=hidden name=nextsub value=get_payments>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub continue { &{ $form->{nextsub} } };
-
-
-sub get_payments {
-
- ($form->{accno}, $form->{account}) = split /--/, $form->{accno};
-
- RC->payment_transactions(\%myconfig, \%$form);
-
- $ml = ($form->{category} eq 'A') ? -1 : 1;
- $form->{statementbalance} = $form->{endingbalance} * $ml;
- if (! $form->{fx_transaction}) {
- $form->{statementbalance} = ($form->{endingbalance} - $form->{fx_endingbalance}) * $ml;
- }
-
- $form->{statementbalance} = $form->format_amount(\%myconfig, $form->{statementbalance}, 2, 0);
-
- &display_form;
-
-}
-
-
-sub display_form {
-
- if ($form->{report}) {
- @column_index = qw(transdate source name cleared credit debit);
- } else {
- @column_index = qw(transdate source name cleared credit debit balance);
- }
-
- $column_header{cleared} = qq|<th>|.$locale->text('R').qq|</th>|;
- $column_header{source} = "<th class=listheading>".$locale->text('Source')."</a></th>";
- $column_header{name} = "<th class=listheading>".$locale->text('Description')."</a></th>";
- $column_header{transdate} = "<th class=listheading>".$locale->text('Date')."</a></th>";
-
- if ($form->{category} eq 'A') {
- $column_header{debit} = "<th class=listheading>".$locale->text('Deposit')."</a></th>";
- $column_header{credit} = "<th class=listheading>".$locale->text('Payment')."</a></th>";
- } else {
- $column_header{debit} = "<th class=listheading>".$locale->text('Decrease')."</a></th>";
- $column_header{credit} = "<th class=listheading>".$locale->text('Increase')."</a></th>";
- }
-
- $column_header{balance} = "<th class=listheading>".$locale->text('Balance')."</a></th>";
-
- if ($form->{fromdate}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{fromdate}, 1);
- }
- if ($form->{todate}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{todate}, 1);
- }
-
- $form->{title} = "$form->{accno}--$form->{account}";
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $ml = ($form->{category} eq 'A') ? -1 : 1;
- $form->{beginningbalance} *= $ml;
- $form->{fx_balance} *= $ml;
-
- if (! $form->{fx_transaction}) {
- $form->{beginningbalance} -= $form->{fx_balance};
- }
- $balance = $form->{beginningbalance};
-
- $i = 0;
- $j = 0;
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } qw(cleared transdate source debit credit);
-
- if (! $form->{report}) {
- $column_data{name} = qq|<td>|.$locale->text('Beginning Balance').qq|</td>|;
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $balance, 2, 0)."</td>";
- print qq|
- <tr class=listrow$j>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
-
- foreach $ref (@{ $form->{PR} }) {
-
- $i++;
-
- if (! $form->{fx_transaction}) {
- next if $ref->{fx_transaction};
- }
-
- $checked = ($ref->{cleared}) ? "checked" : "";
-
- $column_data{name} = "<td>";
- map { $column_data{name} .= "$_<br>" } @{ $ref->{name} };
- $column_data{name} .= "</td>";
- $column_data{source} = qq|<td>$ref->{source}&nbsp;</td>
- <input type=hidden name="id_$i" value=$ref->{id}>|;
-
- $column_data{debit} = "<td>&nbsp;</td>";
- $column_data{credit} = "<td>&nbsp;</td>";
-
- $balance += $ref->{amount} * $ml;
-
- if ($ref->{amount} < 0) {
-
- $totaldebits += $ref->{amount} * -1;
-
- $column_data{debit} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount} * -1, 2, "&nbsp;")."</td>";
-
- } else {
-
- $totalcredits += $ref->{amount};
-
- $column_data{credit} = "<td align=right>".$form->format_amount(\%myconfig, $ref->{amount}, 2, "&nbsp;")."</td>";
-
- }
-
- $column_data{balance} = "<td align=right>".$form->format_amount(\%myconfig, $balance, 2, 0)."</td>";
-
- if ($ref->{fx_transaction}) {
-
- $column_data{cleared} = ($clearfx) ? qq|<td align=center>*</td>| : qq|<td>&nbsp;</td>|;
- $cleared += $ref->{amount} * $ml if $clearfx;
-
- } else {
-
- if ($form->{report}) {
-
- if ($ref->{cleared}) {
- $column_data{cleared} = qq|<td align=center>*</td>|;
- $clearfx = 1;
- } else {
- $column_data{cleared} = qq|<td>&nbsp;</td>|;
- $clearfx = 0;
- }
-
- } else {
-
- if ($ref->{oldcleared}) {
- $cleared += $ref->{amount} * $ml;
- $clearfx = 1;
- $column_data{cleared} = qq|<td align=center>*</td>
- <input type=hidden name="cleared_$i" value=$ref->{cleared}>
- <input type=hidden name="oldcleared_$i" value=$ref->{oldcleared}>
- <input type=hidden name="source_$i" value="$ref->{source}">|;
- } else {
- $cleared += $ref->{amount} * $ml if $checked;
- $clearfx = ($checked) ? 1 : 0;
- $column_data{cleared} = qq|<td align=center><input name="cleared_$i" type=checkbox class=checkbox value=1 $checked>
- <input type=hidden name="source_$i" value="$ref->{source}"></td>|;
- }
-
- }
- }
-
- $column_data{transdate} = qq|<td>$ref->{transdate}&nbsp;</td>
- <input type=hidden name="transdate_$i" value=$ref->{transdate}>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- $form->{rowcount} = $i;
-
- # print totals
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{debit} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totaldebits, 2, "&nbsp;")."</th>";
- $column_data{credit} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalcredits, 2, "&nbsp;")."</th>";
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- $form->{statementbalance} = $form->parse_amount(\%myconfig, $form->{statementbalance});
- $difference = $form->format_amount(\%myconfig, $form->{beginningbalance} + $cleared - $form->{statementbalance}, 2, 0);
- $form->{statementbalance} = $form->format_amount(\%myconfig, $form->{statementbalance}, 2, 0);
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
-|;
-
-
- if ($form->{report}) {
-
- print qq|
- </tr>
- </table>
-|;
-
- } else {
-
- print qq|
-
- <tr>
- <td>
- <table width=100%>
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Statement Balance').qq|</th>
- <td width=10%></td>
- <td align=right><input name=statementbalance size=11 value=$form->{statementbalance}></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Difference').qq|</th>
- <td width=10%></td>
- <td align=right><input name=null size=11 value=$difference></td>
- <input type=hidden name=difference value=$difference>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=fx_transaction value=$form->{fx_transaction}>
-<input type=hidden name=summary value=$form->{summary}>
-
-<input type=hidden name=rowcount value=$form->{rowcount}>
-<input type=hidden name=accno value="$form->{accno}">
-<input type=hidden name=account value="$form->{account}">
-
-<input type=hidden name=fromdate value=$form->{fromdate}>
-<input type=hidden name=todate value=$form->{todate}>
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input type=submit class=submit name=action value="|.$locale->text('Update').qq|">
-<input type=submit class=submit name=action value="|.$locale->text('Select all').qq|">
-<input type=submit class=submit name=action value="|.$locale->text('Done').qq|">|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub update {
-
- RC->payment_transactions(\%myconfig, \%$form);
-
- $i = 0;
- foreach $ref (@{ $form->{PR} }) {
- $i++;
- $ref->{cleared} = ($form->{"cleared_$i"}) ? 1 : 0;
- }
-
- &display_form;
-
-}
-
-
-sub select_all {
-
- RC->payment_transactions(\%myconfig, \%$form);
-
- map { $_->{cleared} = 1 } @{ $form->{PR} };
-
- &display_form;
-
-}
-
-
-sub done {
-
- $form->{callback} = "$form->{script}?path=$form->{path}&action=reconciliation&login=$form->{login}&sessionid=$form->{sessionid}";
-
- $form->error($locale->text('Out of balance!')) if ($form->{difference} *= 1);
-
- RC->reconcile(\%myconfig, \%$form);
- $form->redirect;
-
-}
-
-
diff --git a/sql-ledger/bin/mozilla/rp.pl b/sql-ledger/bin/mozilla/rp.pl
deleted file mode 100644
index 795ed37..0000000
--- a/sql-ledger/bin/mozilla/rp.pl
+++ /dev/null
@@ -1,2167 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Antonio Gallardo <agssa@ibw.com.ni>
-# Benjamin Lee <benjaminlee@consultant.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# module for preparing Income Statement and Balance Sheet
-#
-#======================================================================
-
-require "$form->{path}/arap.pl";
-
-use SL::PE;
-use SL::RP;
-
-1;
-# end of main
-
-# this is for our long dates
-# $locale->text('January')
-# $locale->text('February')
-# $locale->text('March')
-# $locale->text('April')
-# $locale->text('May ')
-# $locale->text('June')
-# $locale->text('July')
-# $locale->text('August')
-# $locale->text('September')
-# $locale->text('October')
-# $locale->text('November')
-# $locale->text('December')
-
-# this is for our short month
-# $locale->text('Jan')
-# $locale->text('Feb')
-# $locale->text('Mar')
-# $locale->text('Apr')
-# $locale->text('May')
-# $locale->text('Jun')
-# $locale->text('Jul')
-# $locale->text('Aug')
-# $locale->text('Sep')
-# $locale->text('Oct')
-# $locale->text('Nov')
-# $locale->text('Dec')
-
-# $locale->text('Balance Sheet')
-# $locale->text('Income Statement')
-# $locale->text('Trial Balance')
-# $locale->text('AR Aging')
-# $locale->text('AP Aging')
-# $locale->text('Tax collected')
-# $locale->text('Tax paid')
-# $locale->text('Receipts')
-# $locale->text('Payments')
-# $locale->text('Project Transactions')
-# $locale->text('Non-taxable Sales')
-# $locale->text('Non-taxable Purchases')
-
-
-sub report {
-
- %title = ( balance_sheet => 'Balance Sheet',
- income_statement => 'Income Statement',
- trial_balance => 'Trial Balance',
- ar_aging => 'AR Aging',
- ap_aging => 'AP Aging',
- tax_collected => 'Tax collected',
- tax_paid => 'Tax paid',
- nontaxable_sales => 'Non-taxable Sales',
- nontaxable_purchases => 'Non-taxable Purchases',
- receipts => 'Receipts',
- payments => 'Payments',
- projects => 'Project Transactions',
- );
-
- $form->{title} = $locale->text($title{$form->{report}});
-
- $gifi = qq|
-<tr>
- <th align=right>|.$locale->text('Accounts').qq|</th>
- <td><input name=accounttype class=radio type=radio value=standard checked> |.$locale->text('Standard').qq|
-
- <input name=accounttype class=radio type=radio value=gifi> |.$locale->text('GIFI').qq|
- </td>
-</tr>
-|;
-
- # get departments
- $form->all_departments(\%myconfig);
- if (@{ $form->{all_departments} }) {
- $form->{selectdepartment} = "<option>\n";
-
- map { $form->{selectdepartment} .= qq|<option value="$_->{description}--$_->{id}">$_->{description}\n| } (@{ $form->{all_departments} });
- }
-
- $department = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Department').qq|</th>
- <td colspan=3><select name=department>$form->{selectdepartment}</select></td>
- </tr>
-| if $form->{selectdepartment};
-
- # accounting years
- $form->{selectaccountingyear} = "<option>\n";
- map { $form->{selectaccountingyear} .= qq|<option>$_\n| } @{ $form->{all_years} };
-
- $form->{selectaccountingmonth} = "<option>\n";
- map { $form->{selectaccountingmonth} .= qq|<option value=$_>|.$locale->text($form->{all_month}{$_}).qq|\n| } sort keys %{ $form->{all_month} };
-
- $selectfrom = qq|
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
-|;
-
- $selectto = qq|
- <tr>
- <th align=right></th>
- <td>
- <select name=month>$form->{selectaccountingmonth}</select>
- <select name=year>$form->{selectaccountingyear}</select>
- </td>
- </tr>
-|;
-
-
- $summary = qq|
- <tr>
- <th></th>
- <td><input name=summary type=radio class=radio value=1 checked> |.$locale->text('Summary').qq|
- <input name=summary type=radio class=radio value=0> |.$locale->text('Detail').qq|
- </td>
- </tr>
-|;
-
- # get projects
- $form->all_projects(\%myconfig);
- if (@{ $form->{all_projects} }) {
- $form->{selectproject} = "<option>\n";
- map { $form->{selectproject} .= qq|<option value="$_->{projectnumber}--$_->{id}">$_->{projectnumber}\n| } @{ $form->{all_projects} };
-
- $project = qq|
- <tr>
- <th align=right nowrap>|.$locale->text('Project').qq|</th>
- <td colspan=3><select name=projectnumber>$form->{selectproject}</select></td>
- </tr>|;
-
- }
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<input type=hidden name=title value="$form->{title}">
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- $department
-|;
-
- if ($form->{report} eq "projects") {
- print qq|
- $project
- <input type=hidden name=nextsub value=generate_projects>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td><input name=l_heading class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Heading').qq|
- <input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|</td>
- </tr>
-|;
- }
-
- if ($form->{report} eq "income_statement") {
- print qq|
- $project
- <input type=hidden name=nextsub value=generate_income_statement>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td colspan=3>
- <select name=frommonth>$form->{selectaccountingmonth}</select>
- <select name=fromyear>$form->{selectaccountingyear}</select>
- <input name=interval class=radio type=radio value=0 checked>|.$locale->text('Current').qq|
- <input name=interval class=radio type=radio value=1>|.$locale->text('Month').qq|
- <input name=interval class=radio type=radio value=3>|.$locale->text('Quarter').qq|
- <input name=interval class=radio type=radio value=12>|.$locale->text('Year').qq|
- </td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Compare to').qq|</th>
- </tr>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=comparefromdate size=11 title="$myconfig{dateformat}"></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=comparetodate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Period').qq|</th>
- <td>
- <select name=comparemonth>$form->{selectaccountingmonth}</select>
- <select name=compareyear>$form->{selectaccountingyear}</select>
- </td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Decimalplaces').qq|</th>
- <td><input name=decimalplaces size=3 value=2></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Method').qq|</th>
- <td colspan=3><input name=method class=radio type=radio value=accrual checked>|.$locale->text('Accrual').qq|
- &nbsp;<input name=method class=radio type=radio value=cash>|.$locale->text('Cash').qq|</td>
- </tr>
-
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3><input name=l_heading class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Heading').qq|
- <input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|
- <input name=l_accno class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Account Number').qq|</td>
- </tr>
-|;
- }
-
-
- if ($form->{report} eq "balance_sheet") {
- print qq|
- <input type=hidden name=nextsub value=generate_balance_sheet>
- <tr>
- <th align=right>|.$locale->text('as at').qq|</th>
- <td><input name=asofdate size=11 title="$myconfig{dateformat}" value=$form->{asofdate}></td>
- <td>
- <select name=asofmonth>$form->{selectaccountingmonth}</select>
- <select name=asofyear>$form->{selectaccountingyear}</select>
- </td>
- </tr>
-
- <th align=right nowrap>|.$locale->text('Compare to').qq|</th>
- <td><input name=compareasofdate size=11 title="$myconfig{dateformat}"></td>
- <td>
- <select name=compareasofmonth>$form->{selectaccountingmonth}</select>
- <select name=compareasofyear>$form->{selectaccountingyear}</select>
- </td>
-
- </tr>
- <tr>
- <th align=right>|.$locale->text('Decimalplaces').qq|</th>
- <td><input name=decimalplaces size=3 value=2></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Method').qq|</th>
- <td colspan=3><input name=method class=radio type=radio value=accrual checked>|.$locale->text('Accrual').qq|
- &nbsp;<input name=method class=radio type=radio value=cash>|.$locale->text('Cash').qq|</td>
- </tr>
-
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td><input name=l_heading class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Heading').qq|
- <input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|
- <input name=l_accno class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Account Number').qq|</td>
- </tr>
-|;
- }
-
-
- if ($form->{report} eq "trial_balance") {
- print qq|
- <input type=hidden name=nextsub value=generate_trial_balance>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right nowrap>|.$locale->text('Include in Report').qq|</th>
- <td><input name=l_heading class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Heading').qq|
- <input name=l_subtotal class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('Subtotal').qq|
- <input name=all_accounts class=checkbox type=checkbox value=Y>&nbsp;|.$locale->text('All Accounts').qq|</td>
- </tr>
-|;
- }
-
-
- if ($form->{report} =~ /^tax_/) {
- $gifi = "";
-
- $form->{db} = ($form->{report} =~ /_collected/) ? "ar" : "ap";
-
- RP->get_taxaccounts(\%myconfig, \%$form);
-
- print qq|
- <input type=hidden name=nextsub value=generate_tax_report>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- $summary
- <tr>
- <th align=right>|.$locale->text('Report for').qq|</th>
- <td colspan=3>
-|;
-
- $checked = "checked";
- foreach $ref (@{ $form->{taxaccounts} }) {
-
- print qq|<input name=accno class=radio type=radio value=$ref->{accno} $checked>&nbsp;$ref->{description}
-
- <input name="$ref->{accno}_description" type=hidden value="$ref->{description}">
- <input name="$ref->{accno}_rate" type=hidden value="$ref->{rate}">|;
-
- $checked = "";
-
- }
-
- print qq|
- <input type=hidden name=db value=$form->{db}>
- <input type=hidden name=sort value=transdate>
-
- </td>
- </tr>
-|;
-
-
- if (@{ $form->{gifi_taxaccounts} }) {
- print qq|
- <tr>
- <th align=right>|.$locale->text('GIFI').qq|</th>
- <td colspan=3>
-|;
-
- foreach $ref (@{ $form->{gifi_taxaccounts} }) {
-
- print qq|<input name=accno class=radio type=radio value="gifi_$ref->{accno}">&nbsp;$ref->{description}
-
- <input name="gifi_$ref->{accno}_description" type=hidden value="$ref->{description}">
- <input name="gifi_$ref->{accno}_rate" type=hidden value="$ref->{rate}">|;
-
- }
-
- print qq|
- </td>
- </tr>
-|;
- }
-
-
-print qq|
- <tr>
- <th align=right>|.$locale->text('Method').qq|</th>
- <td colspan=3><input name=method class=radio type=radio value=accrual checked>|.$locale->text('Accrual').qq|
- &nbsp;<input name=method class=radio type=radio value=cash>|.$locale->text('Cash').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align=right>|.$locale->text('Include in Report').qq|</th>
- <td>
- <table>
- <tr>
- <td><input name="l_id" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('ID').qq|</td>
- <td><input name="l_invnumber" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Invoice').qq|</td>
- <td><input name="l_transdate" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Date').qq|</td>
- </tr>
- <tr>
- <td><input name="l_name" class=checkbox type=checkbox value=Y checked></td>
-|;
-
- if ($form->{db} eq 'ar') {
- print qq|<td>|.$locale->text('Customer').qq|</td>|;
- }
- if ($form->{db} eq 'ap') {
- print qq|<td>|.$locale->text('Vendor').qq|</td>|;
- }
-
- print qq|
- <td><input name="l_description" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Description').qq|</td>
- <td><input name="l_netamount" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Amount').qq|</td>
-
- <td><input name="l_tax" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Tax').qq|</td>
-
- <td><input name="l_total" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Total').qq|</td>
- </tr>
- <tr>
- </tr>
- <tr>
- <td><input name="l_subtotal" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- }
-
-
- if ($form->{report} =~ /^nontaxable_/) {
- $gifi = "";
-
- $form->{db} = ($form->{report} =~ /_sales/) ? "ar" : "ap";
-
- print qq|
- <input type=hidden name=nextsub value=generate_tax_report>
-
- <input type=hidden name=db value=$form->{db}>
- <input type=hidden name=sort value=transdate>
- <input type=hidden name=report value=$form->{report}>
-
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- $summary
- <tr>
- <th align=right>|.$locale->text('Method').qq|</th>
- <td colspan=3><input name=method class=radio type=radio value=accrual checked>|.$locale->text('Accrual').qq|
- &nbsp;<input name=method class=radio type=radio value=cash>|.$locale->text('Cash').qq|</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('Include in Report').qq|</th>
- <td colspan=3>
- <table>
- <tr>
- <td><input name="l_id" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('ID').qq|</td>
- <td><input name="l_invnumber" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Invoice').qq|</td>
- <td><input name="l_transdate" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Date').qq|</td>
- </tr>
- <tr>
- <td><input name="l_name" class=checkbox type=checkbox value=Y checked></td>
-|;
-
- if ($form->{db} eq 'ar') {
- print qq|<td>|.$locale->text('Customer').qq|</td>|;
- }
- if ($form->{db} eq 'ap') {
- print qq|<td>|.$locale->text('Vendor').qq|</td>|;
- }
-
- print qq|
- <td><input name="l_description" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Description').qq|</td>
- <td><input name="l_netamount" class=checkbox type=checkbox value=Y checked></td>
- <td>|.$locale->text('Amount').qq|</td>
- </tr>
- <tr>
- <td><input name="l_subtotal" class=checkbox type=checkbox value=Y></td>
- <td>|.$locale->text('Subtotal').qq|</td>
- </tr>
- </table>
- </td>
- </tr>
-|;
-
- }
-
-
- if (($form->{report} eq "ar_aging") || ($form->{report} eq "ap_aging")) {
- $gifi = "";
-
- if ($form->{report} eq 'ar_aging') {
- $label = $locale->text('Customer');
- $form->{vc} = 'customer';
- } else {
- $label = $locale->text('Vendor');
- $form->{vc} = 'vendor';
- }
-
- $nextsub = "generate_$form->{report}";
-
- # setup vc selection
- $form->all_vc(\%myconfig, $form->{vc}, ($form->{vc} eq 'customer') ? "AR" : "AP");
-
- map { $vc .= qq|<option value="$_->{name}--$_->{id}">$_->{name}\n| } @{ $form->{"all_$form->{vc}"} };
-
- $vc = ($vc) ? qq|<select name=$form->{vc}><option>\n$vc</select>| : qq|<input name=$form->{vc} size=35>|;
-
- $postscript = "postscript" if $myconfig{printer};
-
- print qq|
- <tr>
- <th align=right>|.$locale->text($label).qq|</th>
- <td>$vc</td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectto
- <input type=hidden name=type value=statement>
- <input type=hidden name=format value=$postscript>
- <input type=hidden name=media value="$myconfig{printer}">
-
- <input type=hidden name=nextsub value=$nextsub>
- <input type=hidden name=action value=$nextsub>
- $summary
-|;
- }
-
-# above action can be removed if there is more than one input field
-
-
- if ($form->{report} =~ /(receipts|payments)$/) {
- $gifi = "";
-
- $form->{db} = ($form->{report} =~ /payments$/) ? "ap" : "ar";
-
- RP->paymentaccounts(\%myconfig, \%$form);
-
- $selection = "<option>\n";
- foreach $ref (@{ $form->{PR} }) {
- $paymentaccounts .= "$ref->{accno} ";
- $selection .= "<option>$ref->{accno}--$ref->{description}\n";
- }
-
- chop $paymentaccounts;
-
- print qq|
- <input type=hidden name=nextsub value=list_payments>
- <tr>
- <th align=right nowrap>|.$locale->text('Account').qq|</th>
- <td colspan=3><select name=account>$selection</select>
- <input type=hidden name=paymentaccounts value="$paymentaccounts">
- </td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Description').qq|</th>
- <td colspan=3><input name=description size=35></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Source').qq|</th>
- <td colspan=3><input name=source></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Memo').qq|</th>
- <td colspan=3><input name=memo size=30></td>
- </tr>
- <tr>
- <th align=right>|.$locale->text('From').qq|</th>
- <td><input name=fromdate size=11 title="$myconfig{dateformat}" value=$form->{fromdate}></td>
- <th align=right>|.$locale->text('To').qq|</th>
- <td><input name=todate size=11 title="$myconfig{dateformat}"></td>
- </tr>
- $selectfrom
- <tr>
- <td align=right><input type=checkbox style=checkbox name=fx_transaction value=1 checked></td>
- <td colspan=3>|.$locale->text('Include Exchange Rate Difference').qq|</td>
- </tr>
- <tr>
- <td align=right><input name=l_subtotal class=checkbox type=checkbox value=Y></td>
- <td align=left colspan=3>|.$locale->text('Subtotal').qq|</th>
- </tr>
-
- <input type=hidden name=db value=$form->{db}>
- <input type=hidden name=sort value=transdate>
-|;
-
- }
-
-
- print qq|
-
-$gifi
-
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<br>
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<input type=submit class=submit name=action value="|.$locale->text('Continue').qq|">
-
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub continue { &{$form->{nextsub}} };
-
-
-sub generate_income_statement {
-
- $form->{padding} = "&nbsp;&nbsp;";
- $form->{bold} = "<b>";
- $form->{endbold} = "</b>";
- $form->{br} = "<br>";
-
- RP->income_statement(\%myconfig, \%$form);
-
- ($form->{department}) = split /--/, $form->{department};
- ($form->{projectnumber}) = split /--/, $form->{projectnumber};
-
- $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig), 1);
- $form->{todate} = $form->current_date(\%myconfig) unless $form->{todate};
-
- # if there are any dates construct a where
- if ($form->{fromdate} || $form->{todate}) {
-
- unless ($form->{todate}) {
- $form->{todate} = $form->current_date(\%myconfig);
- }
-
- $longtodate = $locale->date(\%myconfig, $form->{todate}, 1);
- $shorttodate = $locale->date(\%myconfig, $form->{todate}, 0);
-
- $longfromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
- $shortfromdate = $locale->date(\%myconfig, $form->{fromdate}, 0);
-
- $form->{this_period} = "$shortfromdate<br>\n$shorttodate";
- $form->{period} = $locale->text('for Period').qq|<br>\n$longfromdate |.$locale->text('To').qq| $longtodate|;
- }
-
- if ($form->{comparefromdate} || $form->{comparetodate}) {
- $longcomparefromdate = $locale->date(\%myconfig, $form->{comparefromdate}, 1);
- $shortcomparefromdate = $locale->date(\%myconfig, $form->{comparefromdate}, 0);
-
- $longcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 1);
- $shortcomparetodate = $locale->date(\%myconfig, $form->{comparetodate}, 0);
-
- $form->{last_period} = "$shortcomparefromdate<br>\n$shortcomparetodate";
- $form->{period} .= "<br>\n$longcomparefromdate ".$locale->text('To').qq| $longcomparetodate|;
- }
-
- # setup variables for the form
- @a = qw(company address businessnumber);
- map { $form->{$_} = $myconfig{$_} } @a;
- $form->{address} =~ s/\\n/<br>/g;
-
- $form->{templates} = $myconfig{templates};
-
- $form->{IN} = "income_statement.html";
-
- $form->parse_template;
-
-}
-
-
-sub generate_balance_sheet {
-
- $form->{padding} = "&nbsp;&nbsp;";
- $form->{bold} = "<b>";
- $form->{endbold} = "</b>";
- $form->{br} = "<br>";
-
- RP->balance_sheet(\%myconfig, \%$form);
-
- $form->{asofdate} = $form->current_date(\%myconfig) unless $form->{asofdate};
- $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig), 1);
-
- ($form->{department}) = split /--/, $form->{department};
-
- # define Current Earnings account
- $padding = ($form->{l_heading}) ? $form->{padding} : "";
- push(@{$form->{equity_account}}, $padding.$locale->text('Current Earnings'));
-
- $form->{this_period} = $locale->date(\%myconfig, $form->{asofdate}, 0);
- $form->{last_period} = $locale->date(\%myconfig, $form->{compareasofdate}, 0);
-
- $form->{IN} = "balance_sheet.html";
-
- # setup company variables for the form
- map { $form->{$_} = $myconfig{$_} } (qw(company address businessnumber nativecurr));
- $form->{address} =~ s/\\n/<br>/g;
-
- $form->{templates} = $myconfig{templates};
-
- $form->parse_template;
-
-}
-
-
-sub generate_projects {
-
- $form->{nextsub} = "generate_projects";
- $form->{title} = $locale->text('Project Transactions');
- RP->trial_balance(\%myconfig, \%$form);
-
- &list_accounts;
-
-}
-
-
-# Antonio Gallardo
-#
-# D.S. Feb 16, 2001
-# included links to display transactions for period entered
-# added headers and subtotals
-#
-sub generate_trial_balance {
-
- # get for each account initial balance, debits and credits
- RP->trial_balance(\%myconfig, \%$form);
-
- $form->{nextsub} = "generate_trial_balance";
- $form->{title} = $locale->text('Trial Balance');
- &list_accounts;
-
-}
-
-
-sub list_accounts {
-
- $title = $form->escape($form->{title});
-
- if ($form->{department}) {
- ($department) = split /--/, $form->{department};
- $options = $locale->text('Department')." : $department<br>";
- $department = $form->escape($form->{department});
- }
- if ($form->{projectnumber}) {
- ($projectnumber) = split /--/, $form->{projectnumber};
- $options .= $locale->text('Project Number')." : $projectnumber<br>";
- $projectnumber = $form->escape($form->{projectnumber});
- }
-
- # if there are any dates
- if ($form->{fromdate} || $form->{todate}) {
- if ($form->{fromdate}) {
- $fromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
- }
- if ($form->{todate}) {
- $todate = $locale->date(\%myconfig, $form->{todate}, 1);
- }
-
- $form->{period} = "$fromdate - $todate";
- } else {
- $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig), 1);
-
- }
- $options .= $form->{period};
-
- @column_index = qw(accno description begbalance debit credit endbalance);
-
- $column_header{accno} = qq|<th class=listheading>|.$locale->text('Account').qq|</th>|;
- $column_header{description} = qq|<th class=listheading>|.$locale->text('Description').qq|</th>|;
- $column_header{debit} = qq|<th class=listheading>|.$locale->text('Debit').qq|</th>|;
- $column_header{credit} = qq|<th class=listheading>|.$locale->text('Credit').qq|</th>|;
- $column_header{begbalance} = qq|<th class=listheading>|.$locale->text('Balance').qq|</th>|;
- $column_header{endbalance} = qq|<th class=listheading>|.$locale->text('Balance').qq|</th>|;
-
-
- if ($form->{accounttype} eq 'gifi') {
- $column_header{accno} = qq|<th class=listheading>|.$locale->text('GIFI').qq|</th>|;
- }
-
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$options</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr>|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
-
- # sort the whole thing by account numbers and display
- foreach $ref (sort { $a->{accno} cmp $b->{accno} } @{ $form->{TB} }) {
-
- $description = $form->escape($ref->{description});
-
- $href = qq|ca.pl?path=$form->{path}&action=list_transactions&accounttype=$form->{accounttype}&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&sort=transdate&l_heading=$form->{l_heading}&l_subtotal=$form->{l_subtotal}&department=$department&projectnumber=$projectnumber&project_id=$form->{project_id}&title=$title&nextsub=$form->{nextsub}|;
-
- if ($form->{accounttype} eq 'gifi') {
- $href .= "&gifi_accno=$ref->{accno}&gifi_description=$description";
- $na = $locale->text('N/A');
- map { $ref->{$_} = $na } qw(accno description) unless $ref->{accno};
- } else {
- $href .= "&accno=$ref->{accno}&description=$description";
- }
-
- $ml = ($ref->{category} =~ /(A|E)/) ? -1 : 1;
-
- $debit = $form->format_amount(\%myconfig, $ref->{debit}, 2, "&nbsp;");
- $credit = $form->format_amount(\%myconfig, $ref->{credit}, 2, "&nbsp;");
- $begbalance = $form->format_amount(\%myconfig, $ref->{balance} * $ml, 2, "&nbsp;");
- $endbalance = $form->format_amount(\%myconfig, ($ref->{balance} + $ref->{amount}) * $ml, 2, "&nbsp;");
-
-
- if ($ref->{charttype} eq "H" && $subtotal && $form->{l_subtotal}) {
-
- if ($subtotal) {
-
- map { $column_data{$_} = "<th>&nbsp;</th>" } qw(accno begbalance endbalance);
-
- $subtotalbegbalance = $form->format_amount(\%myconfig, $subtotalbegbalance, 2, "&nbsp;");
- $subtotalendbalance = $form->format_amount(\%myconfig, $subtotalendbalance, 2, "&nbsp;");
- $subtotaldebit = $form->format_amount(\%myconfig, $subtotaldebit, 2, "&nbsp;");
- $subtotalcredit = $form->format_amount(\%myconfig, $subtotalcredit, 2, "&nbsp;");
-
- $column_data{description} = "<th class=listsubtotal>$subtotaldescription</th>";
- $column_data{begbalance} = "<th align=right class=listsubtotal>$subtotalbegbalance</th>";
- $column_data{endbalance} = "<th align=right class=listsubtotal>$subtotalendbalance</th>";
- $column_data{debit} = "<th align=right class=listsubtotal>$subtotaldebit</th>";
- $column_data{credit} = "<th align=right class=listsubtotal>$subtotalcredit</th>";
-
- print qq|
- <tr class=listsubtotal>
-|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
- }
-
- if ($ref->{charttype} eq "H") {
- $subtotal = 1;
- $subtotaldescription = $ref->{description};
- $subtotaldebit = $ref->{debit};
- $subtotalcredit = $ref->{credit};
- $subtotalbegbalance = 0;
- $subtotalendbalance = 0;
-
- if ($form->{l_heading}) {
- if (! $form->{all_accounts}) {
- if (($subtotaldebit + $subtotalcredit) == 0) {
- $subtotal = 0;
- next;
- }
- }
- } else {
- $subtotal = 0;
- if ($form->{all_accounts} || ($form->{l_subtotal} && (($subtotaldebit + $subtotalcredit) != 0))) {
- $subtotal = 1;
- }
- next;
- }
-
- map { $column_data{$_} = "<th>&nbsp;</th>" } qw(accno debit credit begbalance endbalance);
- $column_data{description} = "<th class=listheading>$ref->{description}</th>";
- }
-
- if ($ref->{charttype} eq "A") {
- $column_data{accno} = "<td><a href=$href>$ref->{accno}</a></td>";
- $column_data{description} = "<td>$ref->{description}</td>";
- $column_data{debit} = "<td align=right>$debit</td>";
- $column_data{credit} = "<td align=right>$credit</td>";
- $column_data{begbalance} = "<td align=right>$begbalance</td>";
- $column_data{endbalance} = "<td align=right>$endbalance</td>";
-
- $totaldebit += $ref->{debit};
- $totalcredit += $ref->{credit};
-
- $cml = ($ref->{category} eq 'C') ? -1 : 1;
- $subtotalbegbalance += $ref->{balance} * $ml * $cml;
- $subtotalendbalance += ($ref->{balance} + $ref->{amount}) * $ml * $cml;
-
- }
-
-
- if ($ref->{charttype} eq "H") {
- print qq|
- <tr class=listheading>
-|;
- }
- if ($ref->{charttype} eq "A") {
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
- }
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
-
- # print last subtotal
- if ($subtotal && $form->{l_subtotal}) {
- map { $column_data{$_} = "<th>&nbsp;</th>" } qw(accno begbalance endbalance);
- $subtotalbegbalance = $form->format_amount(\%myconfig, $subtotalbegbalance, 2, "&nbsp;");
- $subtotalendbalance = $form->format_amount(\%myconfig, $subtotalendbalance, 2, "&nbsp;");
- $subtotaldebit = $form->format_amount(\%myconfig, $subtotaldebit, 2, "&nbsp;");
- $subtotalcredit = $form->format_amount(\%myconfig, $subtotalcredit, 2, "&nbsp;");
- $column_data{description} = "<th class=listsubtotal>$subtotaldescription</th>";
- $column_data{begbalance} = "<th align=right class=listsubtotal>$subtotalbegbalance</th>";
- $column_data{endbalance} = "<th align=right class=listsubtotal>$subtotalendbalance</th>";
- $column_data{debit} = "<th align=right class=listsubtotal>$subtotaldebit</th>";
- $column_data{credit} = "<th align=right class=listsubtotal>$subtotalcredit</th>";
-
- print qq|
- <tr class=listsubtotal>
-|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- $totaldebit = $form->format_amount(\%myconfig, $totaldebit, 2, "&nbsp;");
- $totalcredit = $form->format_amount(\%myconfig, $totalcredit, 2, "&nbsp;");
-
- map { $column_data{$_} = "<th>&nbsp;</th>" } qw(accno description begbalance endbalance);
-
- $column_data{debit} = qq|<th align=right class=listtotal>$totaldebit</th>|;
- $column_data{credit} = qq|<th align=right class=listtotal>$totalcredit</th>|;
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub generate_ar_aging {
-
- # split customer
- ($form->{customer}) = split(/--/, $form->{customer});
- $customer = $form->escape($form->{customer},1);
- $title = $form->escape($form->{title},1);
- $media = $form->escape($form->{media},1);
-
- $form->{ct} = "customer";
- $form->{arap} = "ar";
-
- RP->aging(\%myconfig, \%$form);
-
- $form->{callback} = qq|$form->{script}?path=$form->{path}&action=generate_ar_aging&login=$form->{login}&sessionid=$form->{sessionid}&todate=$form->{todate}&customer=$customer&title=$title&type=$form->{type}&format=$form->{format}&media=$media&summary=$form->{summary}|;
-
- &aging;
-
-}
-
-
-sub generate_ap_aging {
-
- # split vendor
- ($form->{vendor}) = split(/--/, $form->{vendor});
- $vendor = $form->escape($form->{vendor},1);
- $title = $form->escape($form->{title},1);
- $media = $form->escape($form->{media},1);
-
- $form->{ct} = "vendor";
- $form->{arap} = "ap";
-
- RP->aging(\%myconfig, \%$form);
-
- $form->{callback} = qq|$form->{script}?path=$form->{path}&action=generate_ap_aging&login=$form->{login}&sessionid=$form->{sessionid}&todate=$form->{todate}&vendor=$vendor&title=$title&type=$form->{type}&format=$form->{format}&media=$media&summary=$form->{summary}|;
-
- &aging;
-
-}
-
-
-sub aging {
-
- $form->header;
-
- $column_header{statement} = qq|<th class=listheading width=1%>&nbsp;</th>|;
- $column_header{ct} = qq|<th class=listheading width=60%>|.$locale->text(ucfirst $form->{ct}).qq|</th>|;
- $column_header{language} = qq|<th class=listheading>|.$locale->text('Language').qq|</th>|;
- $column_header{invnumber} = qq|<th class=listheading>|.$locale->text('Invoice').qq|</th>|;
- $column_header{ordnumber} = qq|<th class=listheading>|.$locale->text('Order').qq|</th>|;
- $column_header{transdate} = qq|<th class=listheading nowrap>|.$locale->text('Date').qq|</th>|;
- $column_header{duedate} = qq|<th class=listheading nowrap>|.$locale->text('Due Date').qq|</th>|;
- $column_header{c0} = qq|<th class=listheading width=10%>|.$locale->text('Current').qq|</th>|;
- $column_header{c30} = qq|<th class=listheading width=10%>30</th>|;
- $column_header{c60} = qq|<th class=listheading width=10%>60</th>|;
- $column_header{c90} = qq|<th class=listheading width=10%>90</th>|;
-
- @column_index = qw(statement ct);
-
- if (@{ $form->{all_language} } && $form->{arap} eq 'ar') {
- push @column_index, "language";
- $form->{selectlanguage} = qq|<option>\n|;
-
- map { $form->{selectlanguage} .= qq|<option value="$_->{code}">$_->{description}\n| } @{ $form->{all_language} };
- }
-
- if ($form->{summary}) {
- push @column_index, qw(c0 c30 c60 c90);
- } else {
- push @column_index, qw(invnumber ordnumber transdate duedate c0 c30 c60 c90);
- }
-
- if ($form->{department}) {
- $option .= "\n<br>" if $option;
- ($department) = split /--/, $form->{department};
- $option .= $locale->text('Department')." : $department";
- $department = $form->escape($form->{department},1);
- $form->{callback} .= "&department=$department";
- }
-
- if ($form->{arap} eq 'ar') {
- if ($form->{customer}) {
- $option .= "\n<br>" if $option;
- $option .= $form->{customer};
- }
- }
- if ($form->{arap} eq 'ap') {
- shift @column_index;
- if ($form->{vendor}) {
- $option .= "\n<br>" if $option;
- $option .= $form->{vendor};
- }
- }
-
- $todate = $locale->date(\%myconfig, $form->{todate}, 1);
- $option .= "\n<br>" if $option;
- $option .= $locale->text('for Period')." ".$locale->text('To')." $todate";
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- $ctid = 0;
- $i = 0;
- $k = 0;
- $l = $#{ $form->{AG} };
-
- foreach $ref (@{ $form->{AG} }) {
-
- $k++;
-
- if ($ctid != $ref->{ctid}) {
-
- $i++;
-
- $column_data{ct} = qq|<td>$ref->{name}</td>|;
-
- if ($form->{selectlanguage}) {
- $form->{"selectlanguage_$i"} = $form->{selectlanguage};
- $form->{"selectlanguage_$i"} =~ s/(<option value="\Q$ref->{language_code}\E")/$1 selected/;
- $column_data{language} = qq|<td><select name="language_code_$i">$form->{"selectlanguage_$i"}</select></td>|;
- }
-
- $column_data{statement} = qq|<td><input name="statement_$i" type=checkbox class=checkbox value=1 $ref->{checked}>
- <input type=hidden name="$form->{ct}_id_$i" value=$ref->{ctid}>
- </td>|;
-
- }
-
- $ctid = $ref->{ctid};
-
- $c0subtotal += $ref->{c0};
- $c30subtotal += $ref->{c30};
- $c60subtotal += $ref->{c60};
- $c90subtotal += $ref->{c90};
-
- $c0total += $ref->{c0};
- $c30total += $ref->{c30};
- $c60total += $ref->{c60};
- $c90total += $ref->{c90};
-
- $ref->{c0} = $form->format_amount(\%myconfig, $ref->{c0}, 2, "&nbsp;");
- $ref->{c30} = $form->format_amount(\%myconfig, $ref->{c30}, 2, "&nbsp;");
- $ref->{c60} = $form->format_amount(\%myconfig, $ref->{c60}, 2, "&nbsp;");
- $ref->{c90} = $form->format_amount(\%myconfig, $ref->{c90}, 2, "&nbsp;");
-
- $href = qq|$ref->{module}.pl?path=$form->{path}&action=edit&id=$ref->{id}&login=$form->{login}&sessionid=$form->{sessionid}&callback=|.$form->escape($form->{callback});
-
- $column_data{invnumber} = qq|<td><a href=$href>$ref->{invnumber}</a></td>|;
- map { $column_data{$_} = qq|<td>$ref->{$_}</td>| } qw(ordnumber transdate duedate);
- map { $column_data{$_} = qq|<td align=right>$ref->{$_}</td>| } qw(c0 c30 c60 c90);
-
- if (!$form->{summary}) {
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- map { $column_data{$_} = qq|<td>&nbsp;</td>| } qw(ct statement language);
-
- }
-
- # print subtotal
- $nextid = ($k <= $l) ? $form->{AG}->[$k]->{ctid} : 0;
- if ($ctid != $nextid) {
-
- $c0subtotal = $form->format_amount(\%myconfig, $c0subtotal, 2, "&nbsp");
- $c30subtotal = $form->format_amount(\%myconfig, $c30subtotal, 2, "&nbsp");
- $c60subtotal = $form->format_amount(\%myconfig, $c60subtotal, 2, "&nbsp");
- $c90subtotal = $form->format_amount(\%myconfig, $c90subtotal, 2, "&nbsp");
-
- if ($form->{summary}) {
- $column_data{c0} = qq|<td align=right>$c0subtotal</th>|;
- $column_data{c30} = qq|<td align=right>$c30subtotal</th>|;
- $column_data{c60} = qq|<td align=right>$c60subtotal</th>|;
- $column_data{c90} = qq|<td align=right>$c90subtotal</th>|;
-
- $j++; $j %= 2;
- print qq|
- <tr class=listrow$j>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- } else {
-
- map { $column_data{$_} = qq|<th>&nbsp;</th>| } @column_index;
-
- $column_data{c0} = qq|<th class=listsubtotal align=right>$c0subtotal</th>|;
- $column_data{c30} = qq|<th class=listsubtotal align=right>$c30subtotal</th>|;
- $column_data{c60} = qq|<th class=listsubtotal align=right>$c60subtotal</th>|;
- $column_data{c90} = qq|<th class=listsubtotal align=right>$c90subtotal</th>|;
-
- # print subtotals
- print qq|
- <tr class=listsubtotal>
-|;
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- $c0subtotal = 0;
- $c30subtotal = 0;
- $c60subtotal = 0;
- $c90subtotal = 0;
-
- }
- }
-
- print qq|
- </tr>
- <tr class=listtotal>
-|;
-
- map { $column_data{$_} = qq|<th>&nbsp;</th>| } @column_index;
-
- $c0total = $form->format_amount(\%myconfig, $c0total, 2, "&nbsp;");
- $c30total = $form->format_amount(\%myconfig, $c30total, 2, "&nbsp;");
- $c60total = $form->format_amount(\%myconfig, $c60total, 2, "&nbsp;");
- $c90total = $form->format_amount(\%myconfig, $c90total, 2, "&nbsp;");
-
- $column_data{c0} = qq|<th align=right class=listtotal>$c0total</th>|;
- $column_data{c30} = qq|<th align=right class=listtotal>$c30total</th>|;
- $column_data{c60} = qq|<th align=right class=listtotal>$c60total</th>|;
- $column_data{c90} = qq|<th align=right class=listtotal>$c90total</th>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- <input type=hidden name=rowcount value=$i>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
-|;
-
- &print_options if ($form->{arap} eq 'ar');
-
- print qq|
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-|;
-
- if ($form->{arap} eq 'ar') {
- print qq|
-<input type=hidden name=todate value=$form->{todate}>
-
-<input type=hidden name=title value="$form->{title}">
-<input type=hidden name=summary value=$form->{summary}>
-
-<input type=hidden name=callback value=$form->{callback}>
-
-<input type=hidden name=arap value=$form->{arap}>
-<input type=hidden name=ct value=$form->{ct}>
-<input type=hidden name=$form->{ct} value="$form->{$form->{ct}}">
-
-<input type=hidden name=department value="$form->{department}">
-
-<input type=hidden name=path value=$form->{path}>
-<input type=hidden name=login value=$form->{login}>
-<input type=hidden name=sessionid value=$form->{sessionid}>
-
-<br>
-<input class=submit type=submit name=action value="|.$locale->text('Select all').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('Print').qq|">
-<input class=submit type=submit name=action value="|.$locale->text('E-mail').qq|">
-|;
- }
-
- if ($form->{menubar}) {
- require "$form->{path}/menu.pl";
- &menubar;
- }
-
- print qq|
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub select_all {
-
- RP->aging(\%myconfig, \%$form);
-
- map { $_->{checked} = "checked" } @{ $form->{AG} };
-
- &aging;
-
-}
-
-
-sub print_options {
-
- $form->{sendmode} = "attachment";
- $form->{copies} = 1 unless $form->{copies};
-
- $form->{PD}{$form->{type}} = "selected";
- $form->{DF}{$form->{format}} = "selected";
- $form->{SM}{$form->{sendmode}} = "selected";
-
- $format = qq|
- <option value=html $form->{PD}{format}>html|;
-
- $type = qq|
- <option value=statement $form->{PD}{statement}>|.$locale->text('Statement');
-
-
- if ($form->{media} eq 'email') {
- $media = qq|
- <td><select name=sendmode>
- <option value=attachment $form->{SM}{attachment}>|.$locale->text('Attachment').qq|
- <option value=inline $form->{SM}{inline}>|.$locale->text('In-line');
- } else {
- $media = qq|
- <td><select name=media>
- <option value=screen>|.$locale->text('Screen');
- if (%printer && $latex) {
- map { $media .= qq|
- <option value="$_">$_| } keys %printer;
- }
- }
-
- $media =~ s/(<option value="\Q$form->{media}\E")/$1 selected/;
- $media .= qq|</select></td>|;
-
- if ($latex) {
- $format .= qq|
- <option value=postscript $form->{DF}{postscript}>|.$locale->text('Postscript').qq|
- <option value=pdf $form->{DF}{pdf}>|.$locale->text('PDF');
- }
-
- print qq|
-<table>
- <tr>
- <td><select name=type>$type</select></td>
- <td><select name=format>$format</select></td>
- $media
-|;
-
- if (%printer && $latex && $form->{media} ne 'email') {
- print qq|
- <td>|.$locale->text('Copies').qq|
- <input name=copies size=2 value=$form->{copies}></td>
-|;
- }
-
- print qq|
- </tr>
-</table>
-|;
-
-}
-
-
-sub e_mail {
-
- # get name and email addresses
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"statement_$i"}) {
- $form->{"$form->{ct}_id"} = $form->{"$form->{ct}_id_$i"};
- RP->get_customer(\%myconfig, \%$form);
- $selected = 1;
- last;
- }
- }
-
- $form->error($locale->text('Nothing selected!')) unless $selected;
-
- if ($myconfig{role} =~ /(admin|manager)/) {
- $bcc = qq|
- <th align=right nowrap=true>|.$locale->text('Bcc').qq|</th>
- <td><input name=bcc size=30 value="$form->{bcc}"></td>
-|;
- }
-
- $title = $locale->text('E-mail Statement to')." $form->{$form->{ct}}";
-
- $form->{media} = "email";
-
- $form->header;
-
- print qq|
-<body>
-
-<form method=post action=$form->{script}>
-
-<table width=100%>
- <tr class=listtop>
- <th>$title</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=right nowrap>|.$locale->text('E-mail').qq|</th>
- <td><input name=email size=30 value="$form->{email}"></td>
- <th align=right nowrap>|.$locale->text('Cc').qq|</th>
- <td><input name=cc size=30 value="$form->{cc}"></td>
- </tr>
- <tr>
- <th align=right nowrap>|.$locale->text('Subject').qq|</th>
- <td><input name=subject size=30 value="$form->{subject}"></td>
- $bcc
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr>
- <th align=left nowrap>|.$locale->text('Message').qq|</th>
- </tr>
- <tr>
- <td><textarea name=message rows=15 cols=60 wrap=soft>$form->{message}</textarea></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
-|;
-
- &print_options;
-
- map { delete $form->{$_} } qw(action email cc bcc subject message type sendmode format header);
-
- $form->hide_form();
-
- print qq|
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-<input type=hidden name=nextsub value=send_email>
-
-<br>
-<input name=action class=submit type=submit value="|.$locale->text('Continue').qq|">
-</form>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub send_email {
-
- $form->{OUT} = "$sendmail";
-
- $form->{subject} = $locale->text('Statement').qq| - $form->{todate}| unless $form->{subject};
- $form->isblank("email", $locale->text('E-mail address missing!'));
-
- RP->aging(\%myconfig, \%$form);
-
- $form->{"statement_1"} = 1;
-
- &print_form;
-
- $form->redirect($locale->text('Statement sent to')." $form->{$form->{ct}}");
-
-}
-
-
-
-sub print {
-
- if ($form->{media} !~ /(screen|email)/) {
- $form->error($locale->text('Select postscript or PDF!')) if ($form->{format} !~ /(postscript|pdf)/);
- }
-
- for $i (1 .. $form->{rowcount}) {
- if ($form->{"statement_$i"}) {
- $form->{"$form->{ct}_id"} = $form->{"$form->{ct}_id_$i"};
- $language_code = $form->{"language_code_$i"};
- $selected = 1;
- last;
- }
- }
-
- $form->error($locale->text('Nothing selected!')) unless $selected;
-
-
- if ($form->{media} !~ /(screen|email)/) {
- $form->{OUT} = "| $printer{$form->{media}}";
- $form->{"$form->{ct}_id"} = "";
- $SIG{INT} = 'IGNORE';
- } else {
- $form->{"statement_1"} = 1;
- $form->{"language_code_1"} = $language_code;
- }
-
- RP->aging(\%myconfig, \%$form);
-
- &print_form;
-
- $form->redirect($locale->text('Statements sent to printer!')) if ($form->{media} !~ /(screen|email)/);
-
-}
-
-
-sub print_form {
-
- $form->{statementdate} = $locale->date(\%myconfig, $form->{todate}, 1);
-
- $form->{templates} = "$myconfig{templates}";
-
- # setup variables for the form
- @a = qw(company address businessnumber tel fax);
- map { $form->{$_} = $myconfig{$_} } @a;
- $form->format_string(@a);
-
- $form->{IN} = "$form->{type}.html";
-
- if ($form->{format} eq 'postscript') {
- $form->{IN} =~ s/html$/tex/;
- }
- if ($form->{format} eq 'pdf') {
- $form->{IN} =~ s/html$/tex/;
- }
-
- @a = qw(name address1 address2 city state zipcode country contact);
- push @a, "$form->{ct}phone", "$form->{ct}fax";
- push @a, 'email' if ! $form->{media} eq 'email';
-
- $i = 0;
- while (@{ $form->{AG} }) {
-
- $ref = shift @{ $form->{AG} };
-
- if ($ctid != $ref->{ctid}) {
-
- $ctid = $ref->{ctid};
- $i++;
-
- if ($form->{"statement_$i"}) {
-
- map { $form->{$_} = $ref->{$_} } @a;
- $form->format_string(@a);
-
- $form->{$form->{ct}} = $form->{name};
- $form->{"$form->{ct}_id"} = $ref->{ctid};
- $form->{language_code} = $form->{"language_code_$i"};
-
- map { $form->{$_} = () } qw(invnumber ordnumber notes invdate duedate);
- $form->{total} = 0;
- foreach $item (qw(c0 c30 c60 c90)) {
- $form->{$item} = ();
- $form->{"${item}total"} = 0;
- }
-
- &statement_details($ref);
-
- while ($ref) {
-
- if (scalar (@{ $form->{AG} }) > 0) {
- # one or more left to go
- if ($ctid == $form->{AG}->[0]->{ctid}) {
- $ref = shift @{ $form->{AG} };
- &statement_details($ref);
- # any more?
- $ref = scalar (@{ $form->{AG} });
- } else {
- $ref = 0;
- }
- } else {
- # set initial ref to 0
- $ref = 0;
- }
-
- }
-
- map { $form->{"${_}total"} = $form->format_amount(\%myconfig, $form->{"${_}total"}, 2) } (c0, c30, c60, c90, "");
-
- $form->parse_template(\%myconfig, $userspath);
-
- }
- }
- }
-
-}
-
-
-sub statement_details {
- my ($ref) = @_;
-
- $ref->{invdate} = $ref->{transdate};
- my @a = qw(invnumber ordnumber notes invdate duedate);
- map { $form->{"${_}_1"} = $ref->{$_} } @a;
- $form->format_string(qw(invnumber_1 ordnumber_1 notes_1));
- map { push @{ $form->{$_} }, $form->{"${_}_1"} } @a;
-
- foreach $item (qw(c0 c30 c60 c90)) {
- eval { $ref->{$item} = $form->round_amount($ref->{$item} / $ref->{exchangerate}, 2) };
- $form->{"${item}total"} += $ref->{$item};
- $form->{total} += $ref->{$item};
- push @{ $form->{$item} }, $form->format_amount(\%myconfig, $ref->{$item}, 2);
- }
-
-}
-
-
-sub generate_tax_report {
-
- RP->tax_report(\%myconfig, \%$form);
-
- $descvar = "$form->{accno}_description";
- $description = $form->escape($form->{$descvar});
- $ratevar = "$form->{accno}_rate";
- $taxrate = $form->{"$form->{accno}_rate"};
-
- if ($form->{accno} =~ /^gifi_/) {
- $descvar = "gifi_$form->{accno}_description";
- $description = $form->escape($form->{$descvar});
- $ratevar = "gifi_$form->{accno}_rate";
- $taxrate = $form->{"gifi_$form->{accno}_rate"};
- }
-
- $department = $form->escape($form->{department});
-
- # construct href
- $href = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=generate_tax_report&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&summary=$form->{summary}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
-
- # construct callback
- $description = $form->escape($form->{$descvar},1);
- $department = $form->escape($form->{department},1);
-
- $form->sort_order();
-
- $callback = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=generate_tax_report&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&db=$form->{db}&method=$form->{method}&summary=$form->{summary}&accno=$form->{accno}&$descvar=$description&department=$department&$ratevar=$taxrate&report=$form->{report}";
-
- $form->{title} = $locale->text('GIFI')." - " if ($form->{accno} =~ /^gifi_/);
-
- $title = $form->escape($form->{title});
- $href .= "&title=$title";
- $title = $form->escape($form->{title},1);
- $callback .= "&title=$title";
-
- $form->{title} = qq|$form->{title} $form->{"$form->{accno}_description"} |;
-
- @columns = $form->sort_columns(qw(id transdate invnumber name description netamount tax total));
-
- $form->{"l_description"} = "" if $form->{summary};
-
- foreach $item (@columns) {
- if ($form->{"l_$item"} eq "Y") {
- push @column_index, $item;
-
- # add column to href and callback
- $callback .= "&l_$item=Y";
- $href .= "&l_$item=Y";
- }
- }
-
-
- if ($form->{l_subtotal} eq 'Y') {
- $callback .= "&l_subtotal=Y";
- $href .= "&l_subtotal=Y";
- }
-
-
- if ($form->{department}) {
- ($department) = split /--/, $form->{department};
- $option = $locale->text('Department')." : $department";
- }
-
- # if there are any dates
- if ($form->{fromdate} || $form->{todate}) {
- if ($form->{fromdate}) {
- $fromdate = $locale->date(\%myconfig, $form->{fromdate}, 1);
- }
- if ($form->{todate}) {
- $todate = $locale->date(\%myconfig, $form->{todate}, 1);
- }
-
- $form->{period} = "$fromdate - $todate";
- } else {
- $form->{period} = $locale->date(\%myconfig, $form->current_date(\%myconfig), 1);
- }
-
-
- if ($form->{db} eq 'ar') {
- $name = $locale->text('Customer');
- $invoice = 'is.pl';
- $arap = 'ar.pl';
- }
- if ($form->{db} eq 'ap') {
- $name = $locale->text('Vendor');
- $invoice = 'ir.pl';
- $arap = 'ap.pl';
- }
-
- $option .= "<br>" if $option;
- $option .= "$form->{period}";
-
-
- $column_header{id} = qq|<th><a class=listheading href=$href&sort=id>|.$locale->text('ID').qq|</th>|;
- $column_header{invnumber} = qq|<th><a class=listheading href=$href&sort=invnumber>|.$locale->text('Invoice').qq|</th>|;
- $column_header{transdate} = qq|<th><a class=listheading href=$href&sort=transdate>|.$locale->text('Date').qq|</th>|;
- $column_header{netamount} = qq|<th class=listheading>|.$locale->text('Amount').qq|</th>|;
- $column_header{tax} = qq|<th class=listheading>|.$locale->text('Tax').qq|</th>|;
- $column_header{total} = qq|<th class=listheading>|.$locale->text('Total').qq|</th>|;
-
- $column_header{name} = qq|<th><a class=listheading href=$href&sort=name>$name</th>|;
-
- $column_header{description} = qq|<th><a class=listheading href=$href&sort=description>|.$locale->text('Description').qq|</th>|;
-
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop colspan=$colspan>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "$column_header{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- # add sort and escape callback
- $callback = $form->escape($callback . "&sort=$form->{sort}");
-
- if (@{ $form->{TR} }) {
- $sameitem = $form->{TR}->[0]->{$form->{sort}};
- }
-
- foreach $ref (@{ $form->{TR} }) {
-
- $module = ($ref->{invoice}) ? $invoice : $arap;
- $module = 'ps.pl' if $ref->{till};
-
- if ($form->{l_subtotal} eq 'Y') {
- if ($sameitem ne $ref->{$form->{sort}}) {
- &tax_subtotal;
- $sameitem = $ref->{$form->{sort}};
- }
- }
-
- $totalnetamount += $ref->{netamount};
- $totaltax += $ref->{tax};
- $ref->{total} = $ref->{netamount} + $ref->{tax};
-
- $subtotalnetamount += $ref->{netamount};
- $subtotaltax += $ref->{tax};
-
- map { $ref->{$_} = $form->format_amount(\%myconfig, $ref->{$_}, 2, "&nbsp;"); } qw(netamount tax total);
-
- $column_data{id} = qq|<td>$ref->{id}</td>|;
- $column_data{invnumber} = qq|<td><a href=$module?path=$form->{path}&action=edit&id=$ref->{id}&login=$form->{login}&sessionid=$form->{sessionid}&callback=$callback>$ref->{invnumber}</a></td>|;
-
- map { $column_data{$_} = qq|<td>$ref->{$_}</td>| } qw(id transdate name partnumber description);
-
- map { $column_data{$_} = qq|<td align=right>$ref->{$_}</td>| } qw(netamount tax total);
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
- print qq|
- </tr>
-|;
-
- }
-
- if ($form->{l_subtotal} eq 'Y') {
- &tax_subtotal;
- }
-
-
- map { $column_data{$_} = qq|<th>&nbsp;</th>| } @column_index;
-
- print qq|
- </tr>
- <tr class=listtotal>
-|;
-
- $total = $form->format_amount(\%myconfig, $totalnetamount + $totaltax, 2, "&nbsp;");
- $totalnetamount = $form->format_amount(\%myconfig, $totalnetamount, 2, "&nbsp;");
- $totaltax = $form->format_amount(\%myconfig, $totaltax, 2, "&nbsp;");
-
- $column_data{netamount} = qq|<th class=listtotal align=right>$totalnetamount</th>|;
- $column_data{tax} = qq|<th class=listtotal align=right>$totaltax</th>|;
- $column_data{total} = qq|<th class=listtotal align=right>$total</th>|;
-
- map { print "$column_data{$_}\n" } @column_index;
-
-
- print qq|
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub tax_subtotal {
-
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $subtotal = $form->format_amount(\%myconfig, $subtotalnetamount + $subtotaltax, 2, "&nbsp;");
- $subtotalnetamount = $form->format_amount(\%myconfig, $subtotalnetamount, 2, "&nbsp;");
- $subtotaltax = $form->format_amount(\%myconfig, $subtotaltax, 2, "&nbsp;");
-
- $column_data{netamount} = "<th class=listsubtotal align=right>$subtotalnetamount</th>";
- $column_data{tax} = "<th class=listsubtotal align=right>$subtotaltax</th>";
- $column_data{total} = "<th class=listsubtotal align=right>$subtotal</th>";
-
- $subtotalnetamount = 0;
- $subtotaltax = 0;
-
- print qq|
- <tr class=listsubtotal>
-|;
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-}
-
-
-
-sub list_payments {
-
-
- if ($form->{account}) {
- ($form->{paymentaccounts}) = split /--/, $form->{account};
- }
- if ($form->{department}) {
- ($department, $form->{department_id}) = split /--/, $form->{department};
- $option = $locale->text('Department')." : $department";
- }
-
- RP->payments(\%myconfig, \%$form);
-
- @columns = $form->sort_columns(qw(transdate name paid source memo));
-
- if ($form->{till}) {
- @columns = $form->sort_columns(qw(transdate name paid curr source till));
- if ($myconfig{role} ne 'user') {
- @columns = $form->sort_columns(qw(transdate name paid curr source till employee));
- }
- }
-
- # construct href
- $account = $form->escape($form->{account});
- $title = $form->escape($form->{title});
- $department = $form->escape($form->{department});
- $form->{paymentaccounts} =~ s/ /%20/g;
- $source = $form->escape($form->{source});
- $memo = $form->escape($form->{memo});
-
- $href = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=list_payments&till=$form->{till}&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&l_subtotal=$form->{l_cubtotal}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&source=$source&memo=$memo";
-
- # construct callback
- $account = $form->escape($form->{account},1);
- $title = $form->escape($form->{title},1);
- $department = $form->escape($form->{department},1);
- $source = $form->escape($form->{source},1);
- $memo = $form->escape($form->{memo},1);
-
- $form->sort_order();
-
- $form->{callback} = "$form->{script}?path=$form->{path}&direction=$form->{direction}&oldsort=$form->{oldsort}&action=list_payments&till=$form->{till}&login=$form->{login}&sessionid=$form->{sessionid}&fromdate=$form->{fromdate}&todate=$form->{todate}&fx_transaction=$form->{fx_transaction}&db=$form->{db}&l_subtotal=$form->{l_subtotal}&prepayment=$form->{prepayment}&title=$title&account=$account&department=$department&paymentaccounts=$form->{paymentaccounts}&source=$source&memo=$memo&sort=$form->{sort}";
- $callback = $form->escape($form->{callback});
-
-
- $column_header{name} = "<th><a class=listheading href=$href&sort=name>".$locale->text('Description')."</a></th>";
- $column_header{transdate} = "<th><a class=listheading href=$href&sort=transdate>".$locale->text('Date')."</a></th>";
- $column_header{paid} = "<th class=listheading>".$locale->text('Amount')."</a></th>";
- $column_header{curr} = "<th class=listheading>".$locale->text('Curr')."</a></th>";
- $column_header{source} = "<th><a class=listheading href=$href&sort=source>".$locale->text('Source')."</a></th>";
- $column_header{memo} = "<th><a class=listheading href=$href&sort=memo>".$locale->text('Memo')."</a></th>";
-
- $column_header{employee} = "<th><a class=listheading href=$href&sort=employee>".$locale->text('Salesperson')."</a></th>";
- $column_header{till} = "<th><a class=listheading href=$href&sort=till>".$locale->text('Till')."</a></th>";
-
-
- if ($form->{fromdate}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('From')."&nbsp;".$locale->date(\%myconfig, $form->{fromdate}, 1);
- }
- if ($form->{todate}) {
- $option .= "\n<br>" if ($option);
- $option .= $locale->text('To')."&nbsp;".$locale->date(\%myconfig, $form->{todate}, 1);
- }
-
- @column_index = @columns;
- $colspan = $#column_index + 1;
-
- $form->header;
-
- print qq|
-<body>
-
-<table width=100%>
- <tr>
- <th class=listtop>$form->{title}</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>$option</td>
- </tr>
- <tr>
- <td>
- <table width=100%>
- <tr class=listheading>
-|;
-
- map { print "\n$column_header{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
-
- foreach $ref (sort { $a->{accno} cmp $b->{accno} } @{ $form->{PR} }) {
-
- next unless @{ $form->{$ref->{id}} };
-
- print qq|
- <tr>
- <th colspan=$colspan align=left>$ref->{accno}--$ref->{description}</th>
- </tr>
-|;
-
- if (@{ $form->{$ref->{id}} }) {
- $sameitem = $form->{$ref->{id}}[0]->{$form->{sort}};
- }
-
- foreach $payment (@{ $form->{$ref->{id}} }) {
-
- if ($form->{l_subtotal}) {
- if ($payment->{$form->{sort}} ne $sameitem) {
- # print subtotal
- &payment_subtotal;
- }
- }
-
- next if ($form->{till} && ! $payment->{till});
-
- $column_data{name} = "<td>$payment->{name}&nbsp;</td>";
- $column_data{transdate} = "<td>$payment->{transdate}&nbsp;</td>";
- $column_data{paid} = "<td align=right>".$form->format_amount(\%myconfig, $payment->{paid}, 2, "&nbsp;")."</td>";
- $column_data{curr} = "<td>$payment->{curr}</td>";
- $column_data{source} = "<td>$payment->{source}&nbsp;</td>";
- $column_data{memo} = "<td>$payment->{memo}&nbsp;</td>";
- $column_data{employee} = "<td>$payment->{employee}&nbsp;</td>";
- $column_data{till} = "<td>$payment->{till}&nbsp;</td>";
-
- $subtotalpaid += $payment->{paid};
- $accounttotalpaid += $payment->{paid};
- $totalpaid += $payment->{paid};
-
- $i++; $i %= 2;
- print qq|
- <tr class=listrow$i>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $sameitem = $payment->{$form->{sort}};
-
- }
-
- &payment_subtotal if $form->{l_subtotal};
-
- # print account totals
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $accounttotalpaid, 2, "&nbsp;")."</th>";
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
-
- $accounttotalpaid = 0;
-
- }
-
-
- # print total
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{paid} = "<th class=listtotal align=right>".$form->format_amount(\%myconfig, $totalpaid, 2, "&nbsp;")."</th>";
-
- print qq|
- <tr class=listtotal>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-
- </table>
- </td>
- </tr>
- <tr>
- <td><hr size=3 noshade></td>
- </tr>
-</table>
-
-</body>
-</html>
-|;
-
-}
-
-
-sub payment_subtotal {
-
- if ($subtotalpaid != 0) {
- map { $column_data{$_} = "<td>&nbsp;</td>" } @column_index;
-
- $column_data{paid} = "<th class=listsubtotal align=right>".$form->format_amount(\%myconfig, $subtotalpaid, 2, "&nbsp;")."</th>";
-
- print qq|
- <tr class=listsubtotal>
-|;
-
- map { print "\n$column_data{$_}" } @column_index;
-
- print qq|
- </tr>
-|;
- }
-
- $subtotalpaid = 0;
-
-}
-
-
diff --git a/sql-ledger/css/sql-ledger.css b/sql-ledger/css/sql-ledger.css
deleted file mode 100644
index 936f401..0000000
--- a/sql-ledger/css/sql-ledger.css
+++ /dev/null
@@ -1,193 +0,0 @@
-/* stylesheet for sql-ledger */
-
-/* general stuff */
-A:link { color: #a0522d; text-decoration: none; }
-A:visited { color: #a0522d; text-decoration: none; }
-A:active { color: #a0522d; text-decoration: underline; }
-A:hover { color: white;
- background-color: #bbbbbb;
- text-decoration: none;
-}
-
-body {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
- background-color: white;
- color: black
-}
-
-td {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-th {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-/* login and admin */
-.login {
- font-family: Verdana, Arial, Helvetica;
-}
-body.login {
- background: #5a7d9b;
- color: black;
-}
-h1.login {
- font-size: 18pt;
-}
-table.login {
- background-color: #FBFFE7;
- padding: 20px;
-}
-td.login {
- text-align: center;
-}
-th.login {
- text-align: right;
-}
-
-body.admin {
- background-color: #FBFFE7;
- color: black;
-}
-
-body.menu {
- background-color: #FBFFE7;
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
- color: black;
-}
-
-.menuOut {
- cursor: pointer;
- background-color: #FBFFE7;
- font-size: 10px;
- color: #000084;
- border: 1px solid #FBFFE7;
- padding: 2px;
- text-align: left;
- font-weight: bold;
-}
-
-.menuOver {
- cursor: pointer;
- background-color: #5a7d9b;
- font-size: 10px;
- color: #ffffff;
- border: 1px solid #FBFFE7;
- padding: 2px;
- text-align: left;
- font-weight: bold;
-}
-
-.submenu {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10px;
- padding-left: 5px;
-}
-
-.menuOut a {
- cursor: pointer;
- margin: 0px;
- background-color: #FBFFE7;
- font-size: 10px;
- color: #000084;
- border: 0px solid #000000;
- padding: 0px;
- text-align: left;
- font-weight: bold;
-}
-
-.menuOver a {
- cursor: pointer;
- margin: 0px;
- background-color: #5a7d9b;
- font-size: 10px;
- color: #ffffff;
- border: 0px solid #000000;
- padding: 0px;
- text-align: left;
- font-weight: bold;
-}
-
-.submenu a {
- color: #a0522d;
- text-decoration: none;
-}
-
-.submenu a:hover {
- color: #a0522d;
- text-decoration: none;
-}
-
-.listtop { font-size: 10pt; background-color: black; color: white; }
-.listheading { font-size: 10pt; background-color: #336666; color: white; }
-A.listheading:link, A.listheading:active, A.listheading:visited {
- color: white;
- text-decoration: none; }
-.listrow1 { font-size: 10pt; background-color: #e6e6fa; color: black; vertical-align: top; }
-.listrow0 { font-size: 10pt; background-color: #ffe4e1; color: black; vertical-align: top; }
-.listsubtotal { font-size: 10pt; background-color: #5a7d9b; color: white; }
-.listtotal { font-size: 10pt; background-color: black; color: white; }
-
-textarea {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-input {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-select {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-.submit {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
- color: #000080;
-}
-
-.checkbox, .radio {
- font-family: Verdana, Arial, Helvetica;
- font-size: 10pt;
-}
-
-.plus0 { /* font color for negative numbers */
- color: red;
-}
-
-.plus1 {
- color: green;
-}
-
-h2.confirm {
- color: blue;
- font-size: 14pt;
-}
-
-h2.error {
- color: red;
- font-size: 14pt;
-}
-
-
-/* media stuff */
-
-@media screen {
- .noscreen { /* items with this class won't display */
- display: none;
- }
-}
-
-@media print {
- .noprint { /* items with this class won't print */
- display: none;
- }
-}
-
diff --git a/sql-ledger/doc/COPYING b/sql-ledger/doc/COPYING
deleted file mode 100644
index 083bb41..0000000
--- a/sql-ledger/doc/COPYING
+++ /dev/null
@@ -1,355 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-<HEAD>
-<TITLE>GNU General Public License</TITLE>
-</HEAD>
-
-<BODY BGCOLOR=ffffff>
-
-
-<pre>
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
-
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
- Appendix: How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- &lt;one line to give the program's name and a brief idea of what it does.&gt;
- Copyright (C) 19yy &lt;name of author&gt;
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- &lt;signature of Ty Coon&gt;, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
-
-
-</BODY>
-</HTML>
-
diff --git a/sql-ledger/doc/COPYRIGHT b/sql-ledger/doc/COPYRIGHT
deleted file mode 100644
index d493a3d..0000000
--- a/sql-ledger/doc/COPYRIGHT
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003, Dieter Simader
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/doc/README b/sql-ledger/doc/README
deleted file mode 100644
index 2050e85..0000000
--- a/sql-ledger/doc/README
+++ /dev/null
@@ -1,290 +0,0 @@
- SQL-Ledger Accounting
- Version 2.4
-
-
-DESCRIPTION:
-------------
-SQL-Ledger is a double-entry accounting system written
-in perl. It has been tested with PostgreSQL, Apache,
-Netscape, Mozilla, Galeon, Explorer, Links, Lynx,
-Konqueror, Voyager, W3M and Opera clients on Linux,
-FreeBSD, Solaris, Windows, Mac computers and PDA's.
-
-Data is stored in a SQL server, either locally or remote,
-the display is through a text or GUI web browser. The system
-is linked by a chart of accounts. All transactions for AR,
-AP and GL are stored in a transaction table. Hyper-links
-from the chart of accounts let you view transactions posted
-through AR, AP and GL.
-
-Configuration files let you specify to which SQL server
-to connect to, personal preferences such as company name,
-language, number and date format, etc.
-
-With the admin script you can create, edit or delete users,
-create and delete datasets and setup the Chart of Accounts
-and templates needed for the system.
-
-You can have a group of users using the same dataset and
-templates for generating Invoices, Income Statements and
-Balance Sheets or a different set altogether.
-
-Templates are supplied in html and tex format to generate
-most of the forms. Forms can be printed to screen, sent
-to a printer or e-mailed.
-
-
-COPYRIGHT:
-----------
-Licensed under the terms of the GPL.
-
-
-LATEST VERSION:
----------------
-available from http://www.sql-ledger.org
-
-
-PLATFORMS:
-----------
-Non specific, see requirements.
-
-
-REQUIREMENTS:
--------------
-1 - Perl, 5+
-2 - http server (Apache, NCSA, httpi, thttpd, ...)
-3 - SQL Server (PostgreSQL 7.1+)
-4 - DBD (DBD-Pg)
-5 - DBI
-6 - LaTeX (optional)
-
-
-FOREIGN LANGUAGE SUPPORT:
--------------------------
-25 languages are supported. Language files are
-ordinary text files, no special software is
-required to change or add new translations.
-
-Some of the translation files are not 100% complete.
-If strings are missing, English is used instead.
-
-
-INSTALLATION WITH setup.pl:
----------------------------
-Make a directory
-
- mkdir /usr/local/sql-ledger
-
-Copy setup.pl to /usr/local/sql-ledger
-
-run setup.pl as root and follow the prompts.
-
- perl setup.pl
-
-Go to the next step, "PREPARE YOUR SQL SERVER".
-
-NOTE: If you are behind a firewall and cannot download
-the code with setup.pl, download the source code file
-and specify the filename on the command line.
-
- perl setup.pl sql-ledger-2.4.0.tar.gz
-
-
-INSTALLATION WITHOUT setup.pl:
-------------------------------
-unpack the tar.gz file in /usr/local
-
- tar xzvf sql-ledger-x.x.x.tar.gz
-
-you should now have everything in /usr/local/sql-ledger
-
-copy sql-ledger.conf.default to sql-ledger.conf
-
-edit sql-ledger.conf
-
-create a file sql-ledger-httpd.conf in the same location
-where your httpd.conf is and copy the next section into the file
-
- Alias /sql-ledger/ /usr/local/sql-ledger/
- <Directory /usr/local/sql-ledger>
- AllowOverride All
- AddHandler cgi-script .pl
- Options ExecCGI Includes FollowSymlinks
- Order Allow,Deny
- Allow from All
- </Directory>
-
- <Directory /usr/local/sql-ledger/users>
- Order Deny,Allow
- Deny from All
- </Directory>
-
-edit httpd.conf and add
-
- # SQL-Ledger
- Include /config_directory/sql-ledger-httpd.conf
-
-Note: use an absolute or relative path to include
-the configuration in your httpd.conf file.
-
-i.e. /etc/httpd/sql-ledger-httpd.conf
- etc/apache2/sql-ledger-httpd.conf
-
-restart your web server.
-
-Note: /usr/local/sql-ledger is only a suggested
-path, you may install in any directory.
-
-
-SET PERMISSION:
----------------
-change directory to /usr/local/sql-ledger
-
-# chown -R nobody:nogroup users templates css spool
-
-replace nobody:nogroup with the web server
-user and group of your system. Some systems use
-apache:apache, www, www-data, ...
-
-
-PREPARE YOUR SQL SERVER:
-------------------------
-
- PostgreSQL:
- -----------
- add one database user with create database and
- create user privileges to manage the datasets
- and tables for SQL-Ledger
-
- # su postgres
- $ createuser -d sql-ledger
- Shall the new user be allowed to create databases? (y/n) y
- Shall the new user be allowed to create more new users? (y/n) y
-
- if you use passwords to access postgres use this command
- $ createuser -d -P sql-ledger
-
- Install PL/PGSQL in template1
-
- # su postgres
- $ createlang plpgsql template1
-
-
- ORACLE:
- -------
- not supported yet
-
- DB2:
- ----
- not supported yet
-
-
-SETUP A DATABASE AND THE TABLES:
---------------------------------
-Load your web browser and connect to
-http://localhost/sql-ledger/admin.pl
-
-Select the "Database Administration" link,
-enter a host, port and the user you created
-in the previous step.
-
-The "Create Dataset" link queries the server
-for existing datasets and displays them in a
-table. Enter a name for the new dataset (use
-lowercase letters only!) and select one of the
-Chart of Accounts and click on Continue.
-Your new dataset and the tables will be created
-and the selected Chart of Accounts loaded. The
-owner of the tables will be the user you entered
-in the previous screen as the "User".
-
-The "Delete Dataset" link queries the server
-for datasets which are in use by SQL-Ledger
-and are not used by any members. This may
-take a while to figure out. "Be patient".
-If there are any datasets not in use, you get
-a screen with the datasets listed where you
-select the one you want to delete.
-
-You cannot manage any other datasets from this
-interface, only the datasets used by SQL-Ledger.
-
-POSTGRESQL: template1 is only used to query
-the server, none of the information stored
-in template1 is manipulated in any way.
-
-
-SETUP A USER:
--------------
-Load your web browser and connect to
-http://localhost/sql-ledger/admin.pl
-
-Click on "Add User". In the Database
-section select the driver and enter
-the user you used to create the dataset.
-
-
-LOAD THE ACCOUNTING PROGRAM:
-----------------------------
-Load your web browser and connect to
-http://localhost/sql-ledger/login.pl
-
-
-UPGRADING TO A NEWER VERSION:
------------------------------
-1. load admin.pl and lock the system
-2. untar the new version over top
-3. check the doc directory for specific notes
-4. load admin.pl and unlock the system
-5. log in
-
-NOTE: datasets are upgraded when you log in for
-the first time. If an error occurs the system
-will remain locked. Track down the error, fix it,
-load admin.pl, unlock the system and log in again.
-
-
-UPGRADING WITH setup.pl:
-------------------------
-run setup.pl from the command line and follow
-the prompts.
-
-
-INSTALLATION CHECKLIST:
------------------------
-1. untar SL somewhere
-2. change permission for the users, templates, css and spool directory
-3. edit httpd.conf
-4. edit sql-ledger.conf
-5. add the database user sql-ledger
-6. load admin.pl
-7. create datasets for the companies
-8. add users
-
- In the Database section enter
-
- a) PostgreSQL
-
- Host: for local connections leave blank
- Dataset: the dataset created in step 7
- Port: for local connections leave blank
- User: sql-ledger
- Password: password for sql-ledger
-
-
-IF SOMETHING DOESN'T WORK:
---------------------------
-There is a FAQ at http://www.sql-ledger.org/misc/faq.html
-or read the one included in the doc directory.
-
-There are also several mailing lists at
-http://www.sql-ledger.org/misc/mailinglist.html
-where you can seek free help.
-
-To order commercial support see
-http://www.sql-ledger.com/misc/support.html
-
-
-=====================================================================
-September 4, 2004
-
diff --git a/sql-ledger/doc/README.DB2 b/sql-ledger/doc/README.DB2
deleted file mode 100644
index 2e5230a..0000000
--- a/sql-ledger/doc/README.DB2
+++ /dev/null
@@ -1,82 +0,0 @@
-To build and install the DBD::DB2 module, you need the following:
-
-*Perl 5.004_04 or later
-*DBI 0.93 or later
-*DB2 Application Development Client
-*A supported C compiler as documented under
- 'Supported Operating Systems'
- at the DB2 Application Development Web page:
-
-http://www-3.ibm.com/software/data/db2/udb/ad/index.html
-
-Install Notes:
-
-http://www.perl.com/CPAN-local/modules/by-module/DBD/DBD-DB2-0.76.readme
-
-Module:
-
-http://www.perl.com/CPAN-local/modules/by-module/DBD/DBD-DB2-0.76.tar.gz
-
-Notes:
------------------------------
-
-SQL-Ledger tested with IBM DB2 v7.2 and v8.1.
-Compiled for use with DBI 1.18 for all testing.
-
-DB2 Application Development Client used was with
-the DB2 Personal Developer's Edition (PDE). All
-databases and application code tested under RedHat
-Linux 7.2 kernel 2.4.7-10.
-
-ADDITIONAL NOTES: DB2 specific
-------------------------------
-
-1. DB2 installed under default owner, and group:
- db2inst1 and db2grp1.
-
-2. SQL-Ledger app owner (ledger) was added to DB2 group db2grp1
- thereby given SYSADM authority.
-
-3. SQL-Ledger app owner has same ENV variables as the db2inst1 user.
- This can be added, or have:
- . $DB_HOME/sqllib/db2profile in the SQL-Ledger app owner .(bash_)profile.
-
-4. SQL-Ledger app owner must have environment variable
- DB2INSTANCE set.
-
-5. SQL-Ledger app owner, now with SYSADM authority and PATH
- containing DB2's bin should run the following:
-
- prompt>: db2set -all # To view instance and registry variables
- prompt>: db2set DB2DBDFT=your_default_database_name i.e. LEDGER
- prompt>: db2set DB2CLIINIPATH=set_to_usually $DB_HOME/sqllib/cfg
-
- Now, cd to the DB2CLIINIPATH directory and edit the db2cli.ini
- file. Continuing with our use of LEDGER as the database that
- will be created and used, add:
-
- [LEDGER]
- AUTOCOMMIT=1
- LONGDATACOMPAT=1
- DBALIAS=LEDGER
- DEFERREDPREPARE=1
-
- If DEFERREDPREPARE=1 is the last line, add a blank line. A blank
- line must be the last line.
-
-6. Create the database, objects, and initialize by moving to the directory:
- /where_you_installed_SQL-Ledger/sql , and review the file
- DB2-sql-ledger.order. The commands outlined are in the required order,
- create a database called LEDGER using default SMS tablespaces. The
- last command-line creates the "Default" Chart-of-Accounts.
-
- *Modify the files at will to:
- create a different named database (make sure you review the
- step where you -> db2set DB2DBDFT=your_default_database_name)
-
- create DMS tablespaces
-
- different Chart-of-Accounts.
-
- If a 'gifi' sql script needs to be run, make sure the
- "db2 -tvf" is used so the ';' are accepted as command terminators.
diff --git a/sql-ledger/doc/UPGRADE-1.6-1.8 b/sql-ledger/doc/UPGRADE-1.6-1.8
deleted file mode 100644
index b5631b2..0000000
--- a/sql-ledger/doc/UPGRADE-1.6-1.8
+++ /dev/null
@@ -1,61 +0,0 @@
-Upgrading from version 1.6 to 1.8
-
-1. make a backup copy of your databases and SQL-Ledger, just in case!
- $ cd /usr/local/www/sql-ledger
- $ pg_dump database > db.out
- $ tar cvf ~/sql-ledger.tar .
-
-2. install SQL-Ledger over top of your old installation
- $ cd /usr/local/www
- $ tar zxvf sql-ledger-1.8.0.tar.gz
-
-3. change the tables to the new layout
- $ cd sql-ledger/sql
- $ psql database < upgrade-1.6-1.8.sql
-
-4. copy the new master templates to your template directory
- $ cd ../templates
-
- $ cp Default-email_purchase_order.html your_template_dir/email_purchase_order.html
- $ cp Default-purchase_order.html your_template_dir/purchase_order.html
- $ cp Default-email_sales_order.html your_template_dir/email_sales_order.html
- $ cp Default-sales_order.html your_template_dir/sales_order.html
-
-5. Two new accounts were hopefully added to your chart of accounts
- One account for Foreign Exchange Gains and one for
- Foreign Exchange Losses
- edit and change to suit your COA. You can safely change
- the account number too.
-
-6. Edit your preferences
-
- In field 'Stylesheet' enter -> sql-ledger.css
- Stylesheet is in the css directory
-
- Add your foreign currencies in the Currencies field
- The first currency in the list is your default
- i.e CDN:USD:EUR:YEN
- If you used a nativecurr than it should be listed in the
- new currencies field.
-
-7. <%nativecurr%> has changed to <%currency%>
- edit all your templates and change nativecurr to currency
-
-8. I also added four more variables which can be used in your templates.
- <%contact%>, <%shiptocontact%>, <%shiptophone%>, <%shiptofax%>
-
-9. Nameing convention for templates has changed from an
- underscore to a minus sign. If you designed your own
- master templates rename the templates from
- industry_invoice.html to industry-invoice.html,
- industry_packing_list.html to industry-packing_list.html, etc.
- The minus sign is used to separate the name and list them in
- the setup screen.
-
- This change only applies to the master templates in the
- templates root directory NOT the individual templates which
- are used by users.
-
-It looks more than it really is. Steps 1 to 4 are important,
-the rest is for fine tuning and info.
-
diff --git a/sql-ledger/doc/UPGRADE-1.8-1.8.3 b/sql-ledger/doc/UPGRADE-1.8-1.8.3
deleted file mode 100644
index babed37..0000000
--- a/sql-ledger/doc/UPGRADE-1.8-1.8.3
+++ /dev/null
@@ -1,23 +0,0 @@
-Upgrading from version 1.8.(0-2) to 1.8.3
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-1.8.3.tar.gz
-
-2. copy sql-ledger.conf.default to sql-ledger.conf
- $ cp sql-ledger.conf.default sql-ledger.conf
-
- if you modified sql-ledger.conf merge the changes from the
- .default file rather than copying over top.
-
-3. copy the new master templates to your template directory
- $ cd ../templates
-
- $ cp Default-invoice.tex your_template_dir/invoice.tex
- $ cp Default-packing_list.tex your_template_dir/packing_list.tex
- $ cp Default-purchase_order.tex your_template_dir/purchase_order.tex
- $ cp Default-sales_order.tex your_template_dir/sales_order.tex
-
-4. edit sql-ledger.conf
- instructions are in the file
-
diff --git a/sql-ledger/doc/UPGRADE-1.8.3-1.8.4 b/sql-ledger/doc/UPGRADE-1.8.3-1.8.4
deleted file mode 100644
index c3ecdf5..0000000
--- a/sql-ledger/doc/UPGRADE-1.8.3-1.8.4
+++ /dev/null
@@ -1,10 +0,0 @@
-Upgrading from version 1.8.3 to 1.8.4
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-1.8.4.tar.gz
-
-2. update the tables with the admin script
-
- You will not be able to log in until you upgraded the tables.
-
diff --git a/sql-ledger/doc/UPGRADE-1.8.4-1.8.5 b/sql-ledger/doc/UPGRADE-1.8.4-1.8.5
deleted file mode 100644
index e8c32e1..0000000
--- a/sql-ledger/doc/UPGRADE-1.8.4-1.8.5
+++ /dev/null
@@ -1,18 +0,0 @@
-Upgrading from version 1.8.4 to 1.8.5
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-1.8.5.tar.gz
-
-2. update the tables with the admin script
-
- You will not be able to log in until you upgraded the tables.
-
-
-There are two new variables (<%customernumber%> and <%vendornumber%>)
-which can be used in the forms. These may be used instead of the
-internally generated customer_id and vendor_id.
-
-Typically these numbers are used to retrieve a customer, vendor
-by some ID. In most counter operations the phone number is used.
-
diff --git a/sql-ledger/doc/UPGRADE-1.8.5-1.8.7 b/sql-ledger/doc/UPGRADE-1.8.5-1.8.7
deleted file mode 100644
index 992238c..0000000
--- a/sql-ledger/doc/UPGRADE-1.8.5-1.8.7
+++ /dev/null
@@ -1,6 +0,0 @@
-Upgrading from version 1.8.5 to 1.8.7
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-1.8.7.tar.gz
-
diff --git a/sql-ledger/doc/UPGRADE-1.8.7-2.0.0 b/sql-ledger/doc/UPGRADE-1.8.7-2.0.0
deleted file mode 100644
index e16ba75..0000000
--- a/sql-ledger/doc/UPGRADE-1.8.7-2.0.0
+++ /dev/null
@@ -1,20 +0,0 @@
-Upgrading to Version 2.0.0
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-2.0.0.tar.gz
-
-2. load admin.pl and update the tables
-
- You will not be able to log in until the tables are up to date.
-
-3. copy the new templates to your personal template directory
-
- $ cd templates
- $ cp Default-check.tex dir/check.tex
- $ cp Default-receipt.tex dir/receipt.tex
- $ cp Default-statement.html dir/statement.html
- $ cp Default-statement.tex dir/statement.tex
-
- replace 'dir' with your directory name
-
diff --git a/sql-ledger/doc/UPGRADE-2.0-2.0.8 b/sql-ledger/doc/UPGRADE-2.0-2.0.8
deleted file mode 100644
index 6ddff62..0000000
--- a/sql-ledger/doc/UPGRADE-2.0-2.0.8
+++ /dev/null
@@ -1,8 +0,0 @@
-Upgrading from version 2.0.[0-7] to 2.0.8
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-2.0.8.tar.gz
-
-2. update your datasets with the admin script
-
diff --git a/sql-ledger/doc/UPGRADE-2.0.8-2.0.9 b/sql-ledger/doc/UPGRADE-2.0.8-2.0.9
deleted file mode 100644
index 0bdb7a0..0000000
--- a/sql-ledger/doc/UPGRADE-2.0.8-2.0.9
+++ /dev/null
@@ -1,6 +0,0 @@
-Upgrading from version 2.0.8 to 2.0.9
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-2.0.9.tar.gz
-
diff --git a/sql-ledger/doc/UPGRADE-2.0.9-2.2.0 b/sql-ledger/doc/UPGRADE-2.0.9-2.2.0
deleted file mode 100644
index 9f9d779..0000000
--- a/sql-ledger/doc/UPGRADE-2.0.9-2.2.0
+++ /dev/null
@@ -1,12 +0,0 @@
-Upgrading from version 2.0.9 to 2.2.0
-
-1. backup your datasets. Always a good idea!
-
-2. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-2.2.0.tar.gz
-
-3. copy Default-pos_invoice.txt to
- templates/your_private_directory/pos_invoice.txt
- and edit to suit.
-
diff --git a/sql-ledger/doc/UPGRADE-2.2.0-2.2.7 b/sql-ledger/doc/UPGRADE-2.2.0-2.2.7
deleted file mode 100644
index 2a973a7..0000000
--- a/sql-ledger/doc/UPGRADE-2.2.0-2.2.7
+++ /dev/null
@@ -1,11 +0,0 @@
-Upgrading to version 2.2.7
-
-1. install SQL-Ledger over top
- # cd /usr/local
- # tar zxvf sql-ledger-2.2.7.tar.gz
-
-2. fix permissions
- # chown -R nobody:nogroup *
- # chmod 711 templates users
-
-Note: replace nobody:nogroup with your web server user and group
diff --git a/sql-ledger/doc/UPGRADE-2.2.7-2.4.0 b/sql-ledger/doc/UPGRADE-2.2.7-2.4.0
deleted file mode 100644
index c10bcbe..0000000
--- a/sql-ledger/doc/UPGRADE-2.2.7-2.4.0
+++ /dev/null
@@ -1,84 +0,0 @@
-Upgrading to version 2.4.0
-
-1. install SQL-Ledger over top
- # cd /usr/local
- # tar zxvf sql-ledger-2.4.0.tar.gz
-
-2. fix permissions
- # chown -hR nobody:nogroup *
- # chmod 711 templates users spool
-
-replace nobody:nogroup with your web server user and group
-
-3. install the plpgsql language compiler for PostgreSQL
- # createlang plpgsql <dataset>
-
-4. install plpgsql in template1
- # createlang plpgsql template1
-
-5. Edit your templates! The old address fields are obsolete.
-
-The new fields are:
- address1
- address2
- city
- state
- zipcode
- country
-
-The same applies to the "shipto" addresses.
-
-Before you log in edit Pg-upgrade-2.3.4-2.3.5.sql and change the
-way addresses are rewritten if you don't want US style addresses.
-
-North-american addresses are usually in the form of
-
-Five Star Stables
-123 Horsehoe Blvd.
-Sweetgrass, MT 19867
-U.S.A
-
-addr1 --> address1
-addr2 --> city
-addr3 --> country
-addr4 --> state
-
-addr4 was put into the state field to bring the field forward
-to the new layout. To check if there is something in the field run
-a report and sort by the "State" field.
-
-Either edit the records or run the SQL queries below to take them apart.
-
-If you have anything in the "state" field change the records to match
-the others before you run the following queries.
-
-dbname=# update customer set state = substr(city,strpos(city,' ')+1);
-dbname=# update customer set zipcode = substr(state,strpos(state,' ')+1);
-dbname=# update customer set state = substr(state,1,strpos(state,' ')-1);
-dbname=# update customer set city = substr(city,1,strpos(city,',')-1);
-
-do the same with the vendor and shipto table.
-
-6. create a new set of templates
-
- * load admin.pl and edit one of the user's
- * in the "New Templates" field enter "new" and save the user
- * go back in your browser so you have the same screen again
- as before
- * change the template directory back to what it was before
- the change and save the user
-
- * drop into a shell window
- * cd to sql-ledger/templates/new
- * copy the additional templates to your private template directory
-
-7. Printers
-
-printer setup has changed to multiple printers which allow
-users to choose a printer. Printers can be defined in sql-ledger.conf
-
-
-Oracle and DB2:
-===============
-There is no upgrade available for Oracle and DB2 yet.
-
diff --git a/sql-ledger/doc/UPGRADE-2.4.0-2.4.1 b/sql-ledger/doc/UPGRADE-2.4.0-2.4.1
deleted file mode 100644
index 82b1ec4..0000000
--- a/sql-ledger/doc/UPGRADE-2.4.0-2.4.1
+++ /dev/null
@@ -1,12 +0,0 @@
-Upgrading to version 2.4.1
-
-1. install SQL-Ledger over top
- # cd /usr/local
- # tar zxvf sql-ledger-2.4.1.tar.gz
-
-2. fix permissions
- # chown -hR nobody:nogroup *
- # chmod 711 templates users css spool
-
-Note: replace nobody:nogroup with your web server user and group
-
diff --git a/sql-ledger/doc/UPGRADE-2.4.1-2.4.2 b/sql-ledger/doc/UPGRADE-2.4.1-2.4.2
deleted file mode 100644
index 09aae92..0000000
--- a/sql-ledger/doc/UPGRADE-2.4.1-2.4.2
+++ /dev/null
@@ -1,12 +0,0 @@
-Upgrading to version 2.4.2
-
-1. install SQL-Ledger over top
- # cd /usr/local
- # tar zxvf sql-ledger-2.4.2.tar.gz
-
-2. fix permissions
- # chown -hR nobody:nogroup *
- # chmod 711 templates users css spool
-
-Note: replace nobody:nogroup with your web server user and group
-
diff --git a/sql-ledger/doc/UPGRADE-2.4.2-2.4.3 b/sql-ledger/doc/UPGRADE-2.4.2-2.4.3
deleted file mode 100644
index 48d8496..0000000
--- a/sql-ledger/doc/UPGRADE-2.4.2-2.4.3
+++ /dev/null
@@ -1,22 +0,0 @@
-Upgrading from version 2.4.(0-2) to 2.4.3
-
-1. install SQL-Ledger over top of your old installation
- $ cd /usr/local
- $ tar zxvf sql-ledger-2.4.3.tar.gz
-
-2. fix permissions
- # chown -hR nobody:nogroup *
- # chmod 711 templates users css spool
-
- Note: replace nobody:nogroup with your web server user and group
-
-3. copy the following templates to your template directory
- $ cd templates
-
- $ cp Default-ar_transaction.html your_template_dir/ar_transaction.html
- $ cp Default-ar_transaction.tex your_template_dir/ar_transaction.tex
- $ cp Default-ap_transaction.html your_template_dir/ap_transaction.html
- $ cp Default-ap_transaction.tex your_template_dir/ap_transaction.tex
-
-4. log in
-
diff --git a/sql-ledger/doc/UPGRADE-2.4.3-2.4.4 b/sql-ledger/doc/UPGRADE-2.4.3-2.4.4
deleted file mode 100644
index a845e87..0000000
--- a/sql-ledger/doc/UPGRADE-2.4.3-2.4.4
+++ /dev/null
@@ -1,12 +0,0 @@
-Upgrading to version 2.4.4
-
-1. install SQL-Ledger over top
- # cd /usr/local
- # tar zxvf sql-ledger-2.4.4.tar.gz
-
-2. fix permissions
- # chown -hR nobody:nogroup *
- # chmod 711 templates users css spool
-
-Note: replace nobody:nogroup with your web server user and group
-
diff --git a/sql-ledger/doc/faq.html b/sql-ledger/doc/faq.html
deleted file mode 100644
index 5a26f64..0000000
--- a/sql-ledger/doc/faq.html
+++ /dev/null
@@ -1,556 +0,0 @@
-<ul>
-<p><li><h4>lineitems not printing</h4>
-Templates designed on a *NIX platform don't work on a DOS platform.
-To make them work load the template either with the builtin template editor
-or a text editor and save. Templates designed on a Windows platform have the
-same problem and won't work on a *NIX platform. Once you strip the ^M's
-the'll work just fine.
-
-<p>Everybody now, "Who do we thank for this schlamassl".
-
-<p><li><h4>UTF-8 character encoding</h4>
-Most of the translations are in ISO format. To convert the translations
-change directory to locale/cc and convert the files with iconv to UTF-8.
-You should also convert the COAs too and make sure you select UTF-8
-encoding when you setup a new dataset.
-
-
-<p><li><h4>characterset problems</h4>
-If you have problems displaying the correct characterset try adding
-<pre>
- AddDefaultCharset On</pre>
-in your httpd.conf file.
-
-<p><li><h4>About installation</h4>
-The easiest is to use the setup.pl script as root.
-You don't need to know very much about your system, just login as root,
-run 'perl setup.pl' and follow the prompts.
-<p>setup.pl does not check for missing software packages and it is your
-responsibilite to make sure you have the required software
-installed either from source or from a package supplied with your distro.
-
-<p>Requirements are clearly indicated in the README file and on the
-download page.
-
-
-<p><li><h4>cannot create function</h4>
-<ol>
-<li>either run createlang and install the plpgsql language handler or
-install yourself. For more information how to do that, visit
-<a href=http://www.postgresql.org/docs/>PostgreSQL</a> and
-read the interactive documentation for procedural languages.
-
-<li>load admin.pl
-<li>unlock the system
-<li>login
-</ol>
-
-
-<p><li><h4>The requested URL /sql-ledger/admin.pl was not found</h4>
-Your webserver doesn't know where to find the script. Most commonly this
-is from distributions hiding webserver configuration files in different
-locations or files and setup.pl wasn't able to configure the location for
-you. Find out which file (httpd.conf, httpdcommon.conf, ...)
-controls your webserver configuration and add
-<pre>
- # SQL-Ledger
- Include /etc/httpd/sql-ledger-httpd.conf</pre>
-
-Create a file 'sql-ledger-httpd.conf' in /etc/httpd and copy the next part
-into the file.
-
-<pre>
- AddHandler cgi-script .pl
- Alias /sql-ledger/ /var/www/sql-ledger/
- &lt;Directory /var/www/sql-ledger&gt;
- Options ExecCGI Includes FollowSymlinks
- &lt;/Directory&gt;
-
- &lt;Directory /var/www/sql-ledger/users&gt;
- Order Deny,Allow
- Deny from All
- &lt;/Directory&gt;</pre>
-replace '/etc/httpd' and '/var/www' with the appropriate directories.
-
-
-<p><li><h4>users/members : Permission denied</h4>
-Your webserver must have write access to the users directory.
-If your server runs as user/group 'apache:apache' then set the
-users directory to owner/group apache:apache.
-<pre>
- # chown -R apache:apache users</pre>
-
-
-<p><li><h4>Dataset newer than version</h4>
-You are trying to use an older version with a dataset which was
-created with a newer version.
-
-
-<p><li><h4>PDF option not working</h4>
-Check if you have latex and pdflatex installed.
-
-
-<p><li><h4>Apache 2.0 "error 500"</h4>
-Some of the early versions of Apache 2.0 (< patchlevel 44) had a rewrite engine
-which decoded escaped strings. This created a lot of problems and I worked
-around it by escaping strings twice.
-If you get a server 500 error 'filename too long' or if collapsed menus
-don't expand you may have to adjusted the following code in
-SL/Form.pm and change the number (44) on line 84.
-<pre>
- # for Apache 2 we escape strings twice
- if (($ENV{SERVER_SIGNATURE} =~ /Apache\/2\.(\d+)\.(\d+)/) && !$beenthere) {
- $str = $self->escape($str, 1) if $2 < 44;
- }</pre>
-
-
-<p><li><h4>IDENT Authentication failed for user "sql-ledger"</h4>
-Edit pg_hba.conf and change authentication to
-
-<pre>
- local all trust</pre>
-
-The file is in the 'data' directory of your postgresql installation.
-This is different with every distribution so look for it.
-<pre>
- # find / -name 'pg_hba.conf'</pre>
-
-
-<p><li><h4>DBD-Pg for Mandrake 9.0</h4>
-Mandrake did not package a compiled DBD-Pg package again, so install DBD-Pg
-from the source package.
-Install perl-DBD-Pg-1.01-4mdk.i586.rpm from the 'contrib' area.
-(Mandrake / 9.0 / contrib / RPMS)
-
-
-<p><li><h4>LaTeX error</h4>
-If for some reason LaTeX produces an error message check for strange
-characters in your account description and parts description
-and use \usepackage[latin1]{inputenc} in the preamble.
-
-
-<p><li><h4>LaTeX templates</h4>
-If you don't want to edit tex code by hand,
-you could use Lyx, Abiword, or any WYSIWYG editor capable of exporting
-latex code.
-To do that you must change the tokens for the variables <% and %> to something
-like << and >>. % is the comment character in tex. There is also a
-pagebreak block which must be commented out.
-When you are done with the changes
-replace << and >> with <% and %> and uncomment the pagebreak block.
-
-<p>LaTeX is difficult but it also offers a much superior environment
-to produce professionally looking forms in postscript and PDF format.
-Unfortunately with all that power there is also a steep learning curve.
-
-
-<p><li><h4>W3M</h4>
-pass terminal=mozilla when you start w3m
-<pre>
- $ w3m -F http://localhost/sql-ledger/login.pl?terminal=mozilla</pre>
-
-To use without frames
-<pre>
- $ w3m http://localhost/sql-ledger/login.pl?terminal=lynx</pre>
-
-<p><li><h4>PDF option disappeared</h4>
-Edit sql-ledger.conf and set $latex = 1;
-<br>sql-ledger.conf is perl code, check if it compiles, if it does not,
-the internal defaults are used which turn off $latex, hence no PDF option.
-
-<p><li><h4>SQL-Ledger installation Mac Os X 10.3 (Panther)</h4>
-Paul J. Teeter put together
-<a href="http://paulteeter.net/writing/technical/howto-sql-ledger-osx.htm">
-installation instructions</a> to run SL on a Mac.
-<br>The instructions are for SL 2.2 but the will work for any of the later
-releases too.
-
-<p><li><h4>Installation on Windows (WIN32)</h4>
-<ul>
-<li>install Apache, perl,
-<a href=http://techdocs.postgresql.org/guides/InstallingOnWindows>Postgres</a>
-or Oracle, DBI and the appropriate DBD
-module
-<br>if you can't compile DBD-Pg here is a precompiled
-<a href=http://www.edmund-mergl.de/export/>DBD-Pg module</a>
-<li>download the latest version of <a href=/cgi-bin/nav.pl?page=source/index.html&title=Download>SQL-Ledger</a>
-<li>extract the files to c:\apache\sql-ledger
-<li>run 'perl shebang' to change the first line of the scripts. If perl
-is not in c:\perl\bin' change '#!c:\\perl\\bin\\perl' to the location where
-your perl binary is.
-<li>edit c:\apache\conf\httpd.conf and add
-<pre>
-Alias /sql-ledger/ "c:/apache/sql-ledger/"
-&lt;Directory "c:/apache/sql-ledger"&gt;
- AllowOverride All
- AddHandler cgi-script .pl
- Options +ExecCGI
- Order Allow,Deny
- Allow from All
-&lt;/Directory&gt;
-
-&lt;Directory "c:/apache/sql-ledger/users"&gt;
- Order Deny,Allow
- Deny from All
-&lt;/Directory&gt;
-</pre>
-
-<li>start Apache
-<li>start Postgres|Oracle|DB2
-<li>connect to http://localhost/sql-ledger/admin.pl and setup users
-and datasets
-<li>connect to http://localhost/sql-ledger/login.pl and login
-
-</ul>
-
-<p><li><h4>Installation on Windows /w cygwin</h4>
-<ul>
-<li>install <a href=http://sources.redhat.com/cygwin/>cygwin</a>
-Apache, perl, postgres, gcc and lynx
-<li>install <a href=http://search.cpan.org/search?module=DBI>DBI</a>
-<li>tar zxvf DBI-1.30.tar.gz
-<li>cd DBI-1.30
-<li>perl Makefile.PL
-<li>make install
-<li>install <a href=http://search.cpan.org/search?dist=DBD-Pg>DBD-Pg</a>
-<li>tar -zxvf DBD-Pg-1.13.tar.gz
-<li>export POSTGRES_INCLUDE=/usr/include/postgresql
-<li>export POSTGRES_LIB=/usr/lib/postgresql
-<li>cd DBD-Pg-1.13
-<li>perl Makefile.PL
-<li>make install
-<li>edit /etc/apache/httpd.conf and add
-<pre>
-AddHandler cgi-script .pl
-Alias /sql-ledger/ /var/www/sql-ledger/
-&lt;Directory /var/www/sql-ledger&gt;
- Options +ExecCGI
-&lt;/Directory&gt;
-
-&lt;Directory /var/www/sql-ledger/users&gt;
- Order Deny,Allow
- Deny from All
-&lt/Directory&gt;
-</pre>
-<li>install SQL-Ledger
-<li>cd /var/www
-<li>mkdir sql-ledger
-<li>download <a href=/cgi-bin/download.pl?setup.pl>setup.pl</a> and save the file
-in /var/www/sql-ledger
-<li>cd /var/www/sql-ledger
-<li>perl setup.pl
-</ul>
-
-<p><li><h4>What do I enter for the language</h4>
-If you use English, nothing, if you want to use a foreign language for
-the login screen and admin stuff enter the language code, this is the
-directory in the locale directory.
-
-
-<p><li><h4>printing to a printer</h4>
-Printers are defined in sql-ledger.conf
-
-<pre>
-%printers = ( 'Default' => 'lpr', 'Color' => 'lpr -PEpson' );</pre>
-
-Check in your /etc/printcap file for the names of available printers.
-
-<p>If you have LaTeX installed set
-<pre>
- $latex = 1</pre> in sql-ledger.conf
-
-<p>To send the document to the printer check the "Postscript" or "PDF" format,
-enter the number of copies and click on the "Print" button.
-
-<p>The printer you enter in your preferences is the default printer.
-You can choose any other available printer. This makes it possible
-to print from anywhere on the network to any printer.
-
-<p>Note: html format is for screen preview. Use the "Print" option from your
-browser to print to a printer.
-
-
-<p><li><h4>Using samba to send printjobs to a printer attached to a Windows XP workstation</h4>
-The next part applies to roll your own printfilters only. If you use CUPS or
-LPRng your milage may vary but you can still use this as a guide how it works.
-I use the printer 'Epson' as an example which is
-attached to a XP workstation called Raven, no password to log on.
-
-<pre>
-/etc/printcap entry on the server which runs lpd
-
-epson:Epson\
- :sh:\
- :lp=/dev/null:\
- :sd=/var/spool/output/epson:\
- :if=/usr/libexec/lpr/epson/prnfilter:\
-
-# end of entry in /etc/printcap
-
-
-# pnrfilter shell script
-#!/bin/sh
-# Filter for Epson Stylus
-
-PATH="$PATH:/usr/local/bin"
-
-#read first_line
-read tmp
-first_line=`echo $tmp | cut -b1-2 | sed -n '1p'`
-
-first_chr=`expr "$first_line" : '\(.\)'`
-first_two=`expr "$first_line" : '\(..\)'`
-rewindstdin
-
-if [ "$first_two" = "%!" ]; then # Postscript file
- gs @st640p.upp -dSAFER -dNOPAUSE -q -sOutputFile=/tmp/$$ -
-else
- # text file
- cat &gt; /tmp/$$
- echo -n "^L" &gt;&gt; /tmp/$$
- smbclient '\\Raven\Epson' "" -c 'printmode text'
-fi
-
-smbclient '\\Raven\Epson' "" -P -c "print /tmp/$$"
-rm /tmp/$$
-
-# EOF
-
-
-rewindstdin is a small program to rewind the filehandle for STDIN
-save the next part up to EOF to a file rewindstdin.c and compile
-
-#include &lt;sys/types.h&gt;
-#include &lt;unistd.h&gt;
-extern int errno;
-main()
-{
- if( lseek(0,0,0) == 0 ){
- errno = 0;
- }
- return( errno );
-}
-
-# EOF
-
-compile to an executable
-
-gcc -o /usr/local/bin/rewindstdin rewindstdin.c
-</pre>
-
-
-<p><li><h4>beginning balances</h4>
-Add a GL Journal entry and enter the beginning balance for your accounts.
-Beginning balances are the balances from your last balance sheet. If you also
-add open invoices to account for COGS for inventory, add the invoices
-and make the appropriate adjustments.
-
-
-<p><li><h4>establish a beginning inventory</h4>
-add the parts with a vendor invoice. Use the <b>real cost</b> for the items,
-not zero. If you use zero cost then the cost of goods will be zero when you
-sell the item.
-
-
-<p><li><h4>Assemblies</h4>
-Assemblies are manufactured goods assembled from parts, services and
-assemblies. Because you do not buy assemblies you 'stock assemblies' by
-adding assembled units to your inventory. The quantity for individual parts
-is reduced and the quantity for the assembly increased. To disassemble an
-assembly you simply return the parts to inventory by entering a negative
-quantity for the number of assemblies to stock.
-
-
-<p><li><h4>customizing SQL-Ledger</h4>
-The <a href=/cgi-bin/nav.pl?page=feature/api.html&title=Application%20Interface>application interface</a>
-consists of a global and private interface.
-
-
-<p><li><h4>DBD-Pg not installed</h4>
-
-Most modern distributions now package DBD-Pg. If it is
-not packaged follow this recipe to get it working.
-
-<ul>
- <li>check if you have the header files for PostgreSQL
- <br>$ find / -name 'libpq-fe.h'
- <br>if nothing shows up install the development package for PostgreSQL
- <li>download and untar DBD-Pg
- <li>set the environment variables POSTGRES_LIB and POSTGRES_INCLUDE
- <li>cd to DBD-Pg directory
- <br>as ordinary user
- <br>$ perl Makefile.PL
- <br>$ make
- <br>$ make test
- <br>if all went well su to root
- <br># make install
- <li>remove DBD-Pg
-</ul>
-
-
-<p><li><h4>login.pl has compilation error</h4>
-
-This could be because of a missing configuration file in the users directory
-
-<p>check the permission for the users directory. The directory must be
-set writeable for the webserver. If your webserver runs ias user/group
-nobody.nogroup set the directory to
-<pre>
-drwx--x--x 2 nobody nogroup 1024 May 26 16:49 users
-
-or
-
-drwxrwx--x 2 johndoe nogroup 1024 May 26 16:49 users</pre>
-
-
-<p><li><h4>script not executing, shows in browser instead</h4>
-
-Add
-<pre>
- AddHandler cgi-script .pl</pre>
-in your httpd.conf file.
-
-
-<p><li><h4>unknown terminal!</h4>
-the frontend script couldn't figure out which browser you are using
-<p>include the terminal variable on the URL
-<pre>
- http://localhost/sql-ledger/login.pl?terminal=lynx</pre>
-Valid terminal variables are lynx and mozilla
-
-
-<p><li><h4>permission denied</h4>
-
-Check if your web server has write permission to write to the following
-files and directories:
-<pre>
- users/
- templates/
- users/members
-
- # chown nobody:nogroup users templates users/members
-</pre>
-
-
-<p><li><h4>permission denied to access tables</h4>
-The user you entered in the "Database section" must be a valid
-database user who has rights to access the tables.
-
-<p>If the tables are owned by 'joe' and you enter 'mary' as the dba
-you might run into this problem if mary doesn't have the rights to
-access tables owned by joe.
-
-
-<p><li><h4>html and graphics files don't show up on screen</h4>
-
-Enable Includes and FollowSymlinks Options in your httpd.conf file
-<pre>
- &lt;Directory /usr/local/sql-ledger&gt;
- Options ExecCGI Includes FollowSymlinks
- &lt;/Directory&gt;
-</pre>
-
-
-<p><li><h4>Can I use mySQL</h4>
-
-mySQL lacks certain features required by SQL-Ledger.
-
-
-<p><li><h4>switch display to a foreign language</h4>
-
-Load your preferences and select the language.
-<br>Language selection is in accordance to
-<a href=http://www.unece.org/cefact/locode/service/main.htm>
-ISO 3166-1</a> standards.
-
-
-<p><li><h4>Text shows in English when I use a foreign language</h4>
-
-This is because the corresponding hash entry is missing.
-Add the missing text in the locale/cc/all or locale/cc/missing
-file and run 'perl locales.pl' from the command line to rebuild
-the individual files.
-
-<br>cc refers to the country code.
-
-
-<p><li><h4>switch to a foreign language for the login and admin screen</h4>
-
-Edit sql-ledger.conf and enter the code for the $language variable
-<pre>
- $language = "de";</pre>
-
-<p>This is a global change and applies to all logins, individual settings
-may be changed by setting the language in your Preferences.
-
-
-</ul>
-
-<p>
-<hr>
-<a name=security>
-<h1>SQL-Ledger security</h1>
-</a>
-
-<ul>
-<li>The security features built into SQL-Ledger provide encrypted passwords
-and access control which makes it fairly safe out of the box to run even in
-front of a firewall.
-Some precautions which are out of our control must be taken though.
-It matters where you install SL and how you configure your web server and
-SQL server.
-
-<pre>
- Typical setups:
-
- /usr/local/vh/www <- DocumentRoot for virtual host
- /usr/local/vh/sql-ledger <- Alias for sql-ledger
- /usr/local/vh/users <- users directory out of reach
-
-<hr width=60% align=left>
- /usr/local/vh/www <- DocumentRoot for virtual host
- /usr/local/vh/www/sql-ledger <- Alias for sql-ledger
- /usr/local/vh/www/sql-ledger/users <- users configuration files and tmp space
-
- &lt;Directory /usr/local/vh/www/sql-ledger/users&gt; <- disable webserver access
- Order Deny,Allow for users directory
- Deny from All
- &lt;/Directory&gt;
-
-</pre>
-
-The location for the users directory can be specified in sql-ledger.conf
-
-<p><li>Set permission for the users and templates directory to 711
-
-<p><li>If you do not want anyone to change the templates with the built-in
-editor set the files in templates/directory/ to read only or disable
-the menu item to edit the templates.
-
-<p><li>You may setup a read-only environment if you disable the menu items
-to add data. i.e 'Add Transaction' if unchecked you will not be able to add
-a transaction or repost a transaction. You may look at it but nothing else.
-
-<p><li>There are various settings for audit control and you may disable
-reposting entirely or up to a certain date.
-
-<p><li>For PostgreSQL you may also set who has access to the server in the file
-pg_hba.conf
-<br>Authentication crypt does not work because not all SQL servers
-accept encrypted passwords.
-
-<p><li>in addition you can secure the tables from unauthorized access by
-setting up a different database user and GRANT rights. For instance,
-users without DELETE rights will still be able to use the program, change
-customers and vendors, add transactions but will not be able to delete or
-repost transactions.
-<br>To lock all the tables to create a RO system GRANT SELECT rights only.
-
-<p><li>Other security options include a secure shell, your webserver's
-authentication system, SSL, encrypted tunnels, ...
-
-</ul>
-
-</BODY>
-</HTML>
-
diff --git a/sql-ledger/favicon.ico b/sql-ledger/favicon.ico
deleted file mode 100644
index 43578f4..0000000
--- a/sql-ledger/favicon.ico
+++ /dev/null
Binary files differ
diff --git a/sql-ledger/index.html b/sql-ledger/index.html
deleted file mode 100644
index 2642e10..0000000
--- a/sql-ledger/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<head>
- <title>SQL-Ledger</title>
- <meta http-equiv="refresh" content="0; URL=login.pl">
-</head>
-
-<body>
-<h2>SQL-Ledger</h2>
-
-<a href=login.pl>Login</a><br>
-
-</body>
-</html>
-
diff --git a/sql-ledger/locale/be_nl/COPYING b/sql-ledger/locale/be_nl/COPYING
deleted file mode 100644
index 42a22c6..0000000
--- a/sql-ledger/locale/be_nl/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Belgian Dutch texts:
-#
-# Author:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/be_nl/LANGUAGE b/sql-ledger/locale/be_nl/LANGUAGE
deleted file mode 100644
index 1d337d0..0000000
--- a/sql-ledger/locale/be_nl/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Dutch (Belgium)
diff --git a/sql-ledger/locale/be_nl/Num2text b/sql-ledger/locale/be_nl/Num2text
deleted file mode 100644
index d86a188..0000000
--- a/sql-ledger/locale/be_nl/Num2text
+++ /dev/null
@@ -1,161 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Paul Tammes <finance@bermuda-holding.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# this is a variation of the Lingua package
-# written for check and receipt printing
-# it returns a properly formatted text string
-# for a number up to 10**12
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'nul',
- 1 => 'een',
- 2 => 'twee',
- 3 => 'drie',
- 4 => 'vier',
- 5 => 'vijf',
- 6 => 'zes',
- 7 => 'zeven',
- 8 => 'acht',
- 9 => 'negen',
- 10 => 'tien',
- 11 => 'elf',
- 12 => 'twalf',
- 13 => 'dertien',
- 14 => 'veertien',
- 15 => 'vijftien',
- 16 => 'zestien',
- 17 => 'zeventien',
- 18 => 'achtien',
- 19 => 'negentien',
- 20 => 'twintig',
- 30 => 'dertig',
- 40 => 'veertig',
- 50 => 'vijftig',
- 60 => 'zestig',
- 70 => 'zeventig',
- 80 => 'tachtig',
- 90 => 'negentig',
- 10**2 => 'honderd',
- 10**3 => 'duizend',
- 10**6 => 'miljoen',
- 10**9 => 'miljard',
- 10**12 => 'biljoen'
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ('**');
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my ($i, $appendn);
- my @a = ();
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } else {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
-
- # add thousand, million
- if ($i) {
- $amount = 10**($i * 3);
- push @textnumber, $self->{numbername}{$amount};
- }
-
- pop @numblock;
-
- }
-
- push @textnumber, '**';
- join '', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- # reverse one and ten and glue together with 'en'
- $amount = $num[0] * 10;
- $textnumber = $self->{numbername}{$num[1]}.'en'.$self->{numbername}{$amount};
- } else {
- $textnumber = $self->{numbername}{$amount};
- }
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/be_nl/admin b/sql-ledger/locale/be_nl/admin
deleted file mode 100644
index 6568cf4..0000000
--- a/sql-ledger/locale/be_nl/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Toegangsbeheer',
- 'Accounting' => 'Boekhouding',
- 'Add User' => 'Gebruiker toevoegen',
- 'Address' => 'Adres',
- 'Administration' => 'Administratie',
- 'Administrator' => 'Beheerder',
- 'All Datasets up to date!' => 'Alle Datasets actueel',
- 'Cannot create Lock!' => 'Kan geen exclusieve toegang krijgen!',
- 'Change Admin Password' => 'Admin wachtwoord veranderen',
- 'Change Password' => 'Verander wachtwoord',
- 'Character Set' => 'Karakter set',
- 'Click on login name to edit!' => 'Klik op login naam om deze te bewerken.',
- 'Company' => 'Bedrijf',
- 'Connect to' => 'Verbinden met',
- 'Continue' => 'Verder',
- 'Create Chart of Accounts' => 'Maak rekeningstelsel',
- 'Create Dataset' => 'Maak dataset',
- 'DBI not installed!' => 'DBI niet geinstalleerd',
- 'Database' => 'Database',
- 'Database Administration' => 'Database administratie',
- 'Database Driver not checked!' => 'Database Driver niet aangevinkt',
- 'Database User missing!' => 'Geen database gebruiker aanwezig!',
- 'Dataset' => 'Dataset',
- 'Dataset missing!' => 'Geen dataset aanwezig',
- 'Dataset updated!' => 'Dataset aangepast aan nieuwe versie!',
- 'Date Format' => 'Datum formaat',
- 'Delete' => 'Verwijder',
- 'Delete Dataset' => 'Verwijder dataset',
- 'Directory' => 'Directory',
- 'Driver' => 'Besturings programma',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Gebruiker wijzigen',
- 'Existing Datasets' => 'Bestaande datasets',
- 'Fax' => 'Fax',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Geen hostnaam!',
- 'Language' => 'Taal',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laat host en port veld leeg, tenzij u een netwerk connectie wilt opzetten.',
- 'Lock System' => 'Vergrendel het systeem',
- 'Lockfile created!' => 'Blokkeerbestand aangemaakt!',
- 'Lockfile removed!' => 'Blokkeerbestand verwijderd!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login naam ontbreekt!',
- 'Logout' => 'Logout',
- 'Manager' => 'Manager',
- 'Menu Width' => 'Menu Breedte',
- 'Multibyte Encoding' => 'Unicode',
- 'Name' => 'Naam',
- 'New Templates' => 'Nieuwe templates',
- 'No Database Drivers available!' => 'Geen database besturings programma aanwezig',
- 'No Dataset selected!' => 'Geen dataset geselecteerd',
- 'Nothing to delete!' => 'Niets te verwijderen!',
- 'Number Format' => 'Nummeraanduiding',
- 'Oracle Database Administration' => 'Oracle Database Administratie',
- 'Password' => 'Wachtwoord',
- 'Password changed!' => 'Wachtwoord gewijzigd!',
- 'Pg Database Administration' => 'Pg Database Administratie',
- 'PgPP Database Administration' => 'PgPP Database Administratie',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Geen port aanwezig',
- 'Printer' => 'Printer',
- 'Save' => 'Opslaan',
- 'Setup Templates' => 'Setup templates',
- 'Signature' => 'Handtekening',
- 'Stylesheet' => 'Stylesheet',
- 'Templates' => 'Templates',
- 'The following Datasets are not in use and can be deleted' => 'De volgende datasets zijn niet ingebruik en kunnen worder verwijderd.',
- 'The following Datasets need to be updated' => 'De volgende datasets moeten worden bijgewerkt',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dit is een eerste controle. Er wordt niks gecreéerd of verwijderd.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Om een gebruiker aan een groep toe te voegen, een naam te wijzigen, een login naam te wijzigen en op te slaan. Een nieuwe gebruiker zal dan worder opgeslagen met dezelfde gegevens onder de nieuwe login naam.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Dataset bijwerken',
- 'Use Templates' => 'Gebruik templates',
- 'User' => 'Gebruiker',
- 'User deleted!' => 'Gebruiker verwijderd!',
- 'User saved!' => 'Gebruiker opgeslagen!',
- 'Version' => 'Versie',
- 'You must enter a host and port for local and remote connections!' => 'Vul een "host" en een "port" voor netwerk connecties!',
- 'does not exist' => 'bestaat niet',
- 'is already a member!' => 'is al een gebruiker',
- 'localhost' => 'localhost',
- 'locked!' => 'Geblokeerd!',
- 'successfully created!' => 'Met succes aangemaakt!',
- 'successfully deleted!' => 'Met succes verwijderd!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'gebruiker_toevoegen' => 'add_user',
- 'admin_wachtwoord_veranderen' => 'change_admin_password',
- 'verander_wachtwoord' => 'change_password',
- 'verder' => 'continue',
- 'maak_dataset' => 'create_dataset',
- 'verwijder' => 'delete',
- 'verwijder_dataset' => 'delete_dataset',
- 'vergrendel_het_systeem' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'oracle_database_administratie' => 'oracle_database_administration',
- 'pg_database_administratie' => 'pg_database_administration',
- 'pgpp_database_administratie' => 'pgpp_database_administration',
- 'opslaan' => 'save',
- 'unlock_system' => 'unlock_system',
- 'dataset_bijwerken' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/all b/sql-ledger/locale/be_nl/all
deleted file mode 100644
index 9a5d314..0000000
--- a/sql-ledger/locale/be_nl/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Crediteuren',
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AP Outstanding' => 'Openstaande Crediteuren',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'AR' => 'Debiteuren',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'About' => 'Over',
- 'Above' => 'Boven',
- 'Access Control' => 'Toegangsbeheer',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Account Number missing!' => 'Rekeningnummer ontbreekt!',
- 'Account Type' => 'Rekeningtype',
- 'Account Type missing!' => 'Rekeningtype ontbreekt!',
- 'Account deleted!' => 'Rekening verwijderd',
- 'Account does not exist!' => 'Rekening bestaat niet',
- 'Account saved!' => 'Rekening opgeslagen',
- 'Accounting' => 'Boekhouding',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Activate Audit trails' => 'Activeer Accountants opsporing',
- 'Active' => 'Actief',
- 'Add' => 'Toevoegen',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Business' => 'Zaaktype toevoegen',
- 'Add Cash Transfer Transaction' => 'Geldoverboeking toevoegen',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Deduction' => 'Korting toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Add Exchange Rate' => 'Wisselkoers toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add General Ledger Transaction' => 'Journaalpost toevoegen',
- 'Add Group' => 'Groep toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Language' => 'Taal toevoegen',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Add Transaction' => 'Boeking toevoegen',
- 'Add User' => 'Gebruiker toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'Address' => 'Adres',
- 'Administration' => 'Administratie',
- 'Administrator' => 'Beheerder',
- 'After Deduction' => 'Na korting',
- 'All' => 'Allemaal',
- 'All Accounts' => 'Alle Rekeningen',
- 'All Datasets up to date!' => 'Alle Datasets actueel',
- 'All Items' => 'Alle onderdelen',
- 'Allowances' => 'Toelagen',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Amount missing!' => 'Bedrag ontbreekt',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Are you sure you want to delete Order Number' => 'Weet u zeker dat u dit ordernummer wilt verwijderen?',
- 'Are you sure you want to delete Quotation Number' => 'Weet u zeker dat u dit offertenummer wilt verwijderen?',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Weet us zeker dat u de gemarkeerde stukken wil verwijderen uit de wachtrij?',
- 'Assemblies' => 'Assemblages',
- 'Assemblies restocked!' => 'Assemblage naar voorraad geboekt',
- 'Assembly' => 'Assemblage',
- 'Asset' => 'Activa (bezittingen)',
- 'Attachment' => 'Bijlage',
- 'Audit Control' => 'Accountants Controle',
- 'Audit trail removed up to' => 'Accountants opsporing verwijderd tot',
- 'Audit trails disabled' => 'Accountants opsporing onbruikbaar',
- 'Audit trails enabled' => 'Accountants opsporing toegelaten',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'BIC' => 'BIC',
- 'BOM' => 'Onderdelenlijst',
- 'Backup' => 'Backup',
- 'Backup sent to' => 'Backup gezonden aan',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Based on' => 'Gebaseerd op',
- 'Batch Printing' => 'Batch-printing',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Before Deduction' => 'Voor korting',
- 'Beginning Balance' => 'Begin Balans',
- 'Below' => 'Onder',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Books are open' => 'Boekingsperiode is open',
- 'Break' => 'Onderbreking',
- 'Business' => 'Zaaktype',
- 'Business Number' => 'Kamer van Koophandel nummer',
- 'Business deleted!' => 'Zaaktype verwijderd!',
- 'Business saved!' => 'Zaaktype opgeslagen',
- 'C' => 'C',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot create Lock!' => 'Kan geen exclusieve toegang krijgen!',
- 'Cannot delete account!' => 'Kan bedrag niet verwijderen!',
- 'Cannot delete customer!' => 'Kan klant niet verwijderen!',
- 'Cannot delete default account!' => 'Kan standaardrekening niet verwijderen!',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot delete item!' => 'Kan onderdeel niet verwijderen!',
- 'Cannot delete order!' => 'Kan order niet verwijderen!',
- 'Cannot delete quotation!' => 'Kan offerte niet verwijderen!',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot delete vendor!' => 'Kan leverancier niet verwijderen!',
- 'Cannot post Payment!' => 'Kan betaling niet boeken!',
- 'Cannot post Receipt!' => 'Kan ontvangst niet boeken!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Cannot process payment for a closed period!' => 'Kan geen betaling verwerken voor afgesloten periode!',
- 'Cannot remove files!' => 'Kan bestanden niet verwijderen!',
- 'Cannot save account!' => 'Kan rekening niet opslaan!',
- 'Cannot save defaults!' => 'Kan de standaard niet opslaan!',
- 'Cannot save order!' => 'Kan order niet opslaan!',
- 'Cannot save preferences!' => 'Kan voorkeuren niet opslaan!',
- 'Cannot save quotation!' => 'Kan offerte niet opslaan!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan rekening niet toekennen aan meer dan één debiteuren-, crediteuren- of inventarisrekening',
- 'Cannot set multiple options for' => 'Kan de meerdere opties voor niet instellen',
- 'Cannot set multiple options for Parts Inventory' => 'Kan de meerder opties voor de Artikelvoorraad niet instellen',
- 'Cannot set multiple options for Service Items' => 'Kan de meerder opties voor Dienst Onderdelen niet instellen',
- 'Cannot stock assemblies!' => 'Kan assemblages niet in voorraad nemen!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Change' => 'Wijzig',
- 'Change Admin Password' => 'Admin wachtwoord veranderen',
- 'Change Password' => 'Verander wachtwoord',
- 'Character Set' => 'Karakter set',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Inventaris controleren',
- 'Checks' => 'Cheques',
- 'City' => 'Stad',
- 'Cleared' => 'Opgeschoond',
- 'Click on login name to edit!' => 'Klik op login naam om deze te bewerken.',
- 'Close Books up to' => 'Boeken afsluiten tot',
- 'Closed' => 'Afgesloten',
- 'Code' => 'Code',
- 'Code missing!' => 'Code ontbreekt!',
- 'Company' => 'Bedrijf',
- 'Company Name' => 'Bedrijfsnaam',
- 'Compare to' => 'Vergelijk met',
- 'Components' => 'Componenten',
- 'Confirm' => '',
- 'Confirm!' => 'Bevestig!',
- 'Connect to' => 'Verbinden met',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Copies' => 'Kopieën',
- 'Copy to COA' => 'Kopieër naar rekeningstelsel',
- 'Cost' => 'Kost',
- 'Cost Center' => 'Kostenpost',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Kon niet opslaan!',
- 'Could not transfer Inventory!' => 'Kon geen inventaris overboeken!',
- 'Country' => 'Land',
- 'Create Chart of Accounts' => 'Maak rekeningstelsel',
- 'Create Dataset' => 'Maak dataset',
- 'Credit' => 'Credit',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Huidige winst',
- 'Customer' => 'Klant',
- 'Customer History' => 'Klant Historie',
- 'Customer Number' => 'Klantnummer',
- 'Customer deleted!' => 'Klant verwijderd!',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Customer saved!' => 'Klant opgeslagen!',
- 'Customers' => 'Klanten',
- 'DBI not installed!' => 'DBI niet geinstalleerd',
- 'DOB' => '',
- 'Database' => 'Database',
- 'Database Administration' => 'Database administratie',
- 'Database Driver not checked!' => 'Database Driver niet aangevinkt',
- 'Database Host' => 'Database computer',
- 'Database User missing!' => 'Geen database gebruiker aanwezig!',
- 'Dataset' => 'Dataset',
- 'Dataset is newer than version!' => 'Dataset is nieuwer dan de versie!',
- 'Dataset missing!' => 'Geen dataset aanwezig',
- 'Dataset updated!' => 'Dataset aangepast aan nieuwe versie!',
- 'Date' => 'Datum',
- 'Date Format' => 'Datum formaat',
- 'Date Paid' => 'Betaaldatum',
- 'Date Received' => 'Ontvangstdatum',
- 'Date missing!' => 'Datum ontbreekt!',
- 'Date received missing!' => 'Ontvangstdatum ontbreekt!',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Decrease' => 'Vermindering',
- 'Deduct after' => 'Verminder na',
- 'Deduction deleted!' => 'Korting verwijderd!',
- 'Deduction saved!' => 'Korting opgeslagen!',
- 'Deductions' => 'Kortingen',
- 'Defaults' => 'Standaard',
- 'Defaults saved!' => 'Standaarden bewaard!',
- 'Delete' => 'Verwijder',
- 'Delete Account' => 'Rekening verwijderen',
- 'Delete Dataset' => 'Verwijder dataset',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Department deleted!' => 'Afdeling verwijderd!',
- 'Department saved!' => 'Afdeling opgeslagen!',
- 'Departments' => 'Afdelingen',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Description Translations' => 'Omschrijving Vertaling',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'Detail' => 'Detail',
- 'Difference' => 'Verschil',
- 'Directory' => 'Directory',
- 'Discount' => 'Korting',
- 'Done' => 'Klaar',
- 'Drawing' => 'Tekening',
- 'Driver' => 'Besturings programma',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit' => 'Wijzig',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Rekening wijzigen',
- 'Edit Assembly' => 'Assemblage wijzigen',
- 'Edit Business' => 'Zaaktype wijzigen',
- 'Edit Cash Transfer Transaction' => 'Kasoverboeking wijzigen',
- 'Edit Customer' => 'Klant wijzigen',
- 'Edit Deduction' => 'Korting wijzigen',
- 'Edit Department' => 'Afdeling wijzigen',
- 'Edit Description Translations' => 'Wijzig Omschrijving Vertaling',
- 'Edit Employee' => 'Werknemer wijzigen',
- 'Edit GIFI' => 'Wijzig GIFI',
- 'Edit General Ledger Transaction' => 'Boeking in grootboek wijzigen',
- 'Edit Group' => 'Groep wijzigen',
- 'Edit Labor/Overhead' => 'Arbeid/Overheadskosten wijzigen',
- 'Edit Language' => 'Taal Wijzigen',
- 'Edit POS Invoice' => 'Directe verkooporder wijzigen',
- 'Edit Part' => 'Artikel wijzigen',
- 'Edit Preferences for' => 'Instellingen wijzigen voor',
- 'Edit Pricegroup' => 'Prijsgroep wijzigen ',
- 'Edit Project' => 'Project wijzigen',
- 'Edit Purchase Order' => 'Inkooporder wijzigen',
- 'Edit Quotation' => 'Offerte wijzigen',
- 'Edit Request for Quotation' => 'Offerteaanvraag wijzigen',
- 'Edit SIC' => 'SIC wijzigen',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Edit Sales Order' => 'Verkoop order wijzigen',
- 'Edit Service' => 'Dienst wijzigen',
- 'Edit Template' => 'Template wijzigen',
- 'Edit User' => 'Gebruiker wijzigen',
- 'Edit Vendor' => 'Leverancier wijzigen',
- 'Edit Vendor Invoice' => 'Inkoop factuur wijzigen',
- 'Edit Warehouse' => 'Magazijn wijzigen',
- 'Employee' => 'Werknemer',
- 'Employee Name' => 'Werknemernaam',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Werknemer verwijderd',
- 'Employee pays' => 'Werknemerbetalingen',
- 'Employee saved!' => 'Werknemer opgeslagen!',
- 'Employees' => 'Werknemers',
- 'Employer' => 'Werkgever',
- 'Employer pays' => 'Werkgeverbetalingen',
- 'Enddate' => 'Einddatum',
- 'Enforce transaction reversal for all dates' => 'Boeking terugdraaien voor alle data',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vul max drie karakters in, gescheiden door een dubbelepunt (b.v. EUR:USD:GBP:CAD) voor lokale en buitenlandse valuta',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Excempt age <' => '',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Existing Datasets' => 'Bestaande datasets',
- 'Expense' => 'Onkosten',
- 'Expense Account' => 'Onkostenrekening',
- 'Expense/Asset' => 'Uitgaven',
- 'Extended' => 'Uitgebreid',
- 'FX' => 'FX',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Foreign Exchange Gain' => 'Wisselkoers winst',
- 'Foreign Exchange Loss' => 'Wisselkoers verlies',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI verwijderd!',
- 'GIFI missing!' => 'GIFI ontbreekt!',
- 'GIFI saved!' => 'GIFI opgeslagen!',
- 'GL Transaction' => 'Grootboekboeking (memoriaal) ',
- 'General Ledger' => 'Grootboek',
- 'Goods & Services' => 'Goederen & Diensten',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Group Translations' => 'Groep vertaling',
- 'Group deleted!' => 'Groep verwijderd!',
- 'Group missing!' => 'Groep ontbreekt!',
- 'Group saved!' => 'Groep opgeslagen!',
- 'Groups' => 'Groepen',
- 'HR' => 'Personeel',
- 'HTML Templates' => 'HTML Sjablonen',
- 'Heading' => 'Kopregel',
- 'History' => 'Geschiedenis',
- 'Home Phone' => 'Thuistelefoon',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Geen hostnaam!',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Plaatje',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Include in drop-down menus' => 'Toevoegen aan drop-down menus',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Deze rekening gebruiken op klant/leverancier formulieren om deze als belastbaar aan te duiden?',
- 'Income' => 'Inkomsten',
- 'Income Account' => 'Inkomstenrekening',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Incorrect Dataset version!' => 'Ongeldige versie Dataset!!',
- 'Incorrect Password!' => 'Verkeerd paswoord',
- 'Increase' => 'Toename',
- 'Individual Items' => 'Onderliggende onderdelen',
- 'Internal Notes' => 'Interne notities',
- 'Inventory' => 'Voorraad',
- 'Inventory Account' => 'Voorraadrekening',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een assemblage als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een product als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory saved!' => 'Voorraad opgeslagen',
- 'Inventory transferred!' => 'Voorraad overgeheveld',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Invoices' => 'Facturen',
- 'Is this a summary account to record' => 'Totaalrekening voor',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Onderdeel verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Items' => 'Onderdelen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'LaTeX Templates' => 'Latex Sjablonen',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'Language deleted!' => 'Taal verwijderd!',
- 'Language saved!' => 'Taal opgeslagen!',
- 'Languages' => 'Talen',
- 'Languages not defined!' => 'Taal niet gedefinieerd!',
- 'Last Numbers & Default Accounts' => 'Laatst toegekende nummers & Standaard Rekeningen',
- 'Leadtime' => 'Levertijd',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laat host en port veld leeg, tenzij u een netwerk connectie wilt opzetten.',
- 'Liability' => 'Passiva',
- 'Licensed to' => 'Gelicenseerd aan',
- 'Line Total' => 'Totaal Regel',
- 'Link' => 'Verbinding',
- 'Link Accounts' => 'Rekeningen verbinden',
- 'List' => '',
- 'List Accounts' => 'Rekeningen weergeven',
- 'List Businesses' => 'Zaaktypes weergeven',
- 'List Departments' => 'Afdelingen weergeven',
- 'List GIFI' => 'GIFI weergeven',
- 'List Languages' => 'Talen weergeven',
- 'List Price' => 'Catalogusprijs',
- 'List Projects' => 'Projecten weergeven',
- 'List SIC' => 'SIC weergeven',
- 'List Transactions' => 'Boekingen tonen',
- 'List Warehouses' => 'Magazijnen weergeven',
- 'Lock System' => 'Vergrendel het systeem',
- 'Lockfile created!' => 'Blokkeerbestand aangemaakt!',
- 'Lockfile removed!' => 'Blokkeerbestand verwijderd!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login naam ontbreekt!',
- 'Logout' => 'Logout',
- 'Make' => 'Fabrikant',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'Marked entries printed!' => 'Gemarkeerde delen afgedrukt!',
- 'Markup' => 'Winstmarge',
- 'Maximum' => 'Maximum',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Menu Breedte',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Type',
- 'Month' => '',
- 'Multibyte Encoding' => 'Unicode',
- 'N/A' => 'N/A',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'New Templates' => 'Nieuwe templates',
- 'No' => 'Nee',
- 'No Database Drivers available!' => 'Geen database besturings programma aanwezig',
- 'No Dataset selected!' => 'Geen dataset geselecteerd',
- 'No email address for' => 'Geen email adres voor',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Onbelast',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Notes' => 'Opmerkingen',
- 'Nothing entered!' => 'Niets ingevuld!',
- 'Nothing outstanding for ' => 'Niets openstaand voor',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nothing to delete!' => 'Niets te verwijderen!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Niets over te boeken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummeraanduiding',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'O' => 'O',
- 'Obsolete' => 'Niet actief',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'Op voorraad',
- 'Open' => 'Open',
- 'Oracle Database Administration' => 'Oracle Database Administratie',
- 'Order' => 'Bestelling',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Entry' => 'Order invoer',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Order deleted!' => 'Order verwijderd!',
- 'Order processed!' => 'Order verwerkt!',
- 'Order saved!' => 'Order opgeslagen!',
- 'Orphaned' => 'Wees',
- 'Out of balance transaction!' => 'Boeking is niet in evenwicht',
- 'Out of balance!' => 'Niet in evenwicht!',
- 'Outstanding' => 'Openstaand',
- 'PDF' => 'PDF',
- 'POS' => 'Verkooppunt',
- 'POS Invoice' => 'Verkooppunt Rekening',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Packing Lists' => 'Pakbonnen',
- 'Paid' => 'Betaald',
- 'Part' => 'Artikel',
- 'Part Number' => 'Artikel Nummer',
- 'Partnumber' => '',
- 'Parts' => 'Artikelen',
- 'Parts Inventory' => 'Artikelenvoorraad',
- 'Password' => 'Wachtwoord',
- 'Password changed!' => 'Wachtwoord gewijzigd!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Betalingen',
- 'Payment' => 'Betaling',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payment posted!' => 'Betaling geboekt!',
- 'Payments' => 'Betalingen',
- 'Payroll Deduction' => 'Loonkorting',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Database Administratie',
- 'PgPP Database Administration' => 'PgPP Database Administratie',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Pick Lists' => 'Pick lijsten',
- 'Port' => 'Port',
- 'Port missing!' => 'Geen port aanwezig',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Posted!' => 'Geboekt!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Instellingen',
- 'Preferences saved!' => 'Instellingen bewaard!',
- 'Prepayment' => 'Voorschot',
- 'Price' => 'Prijs',
- 'Pricegroup' => 'Prijsgroep',
- 'Pricegroup deleted!' => 'Prijsgroep verwijderd!',
- 'Pricegroup missing!' => 'Prijsgroep mist!',
- 'Pricegroup saved!' => 'Prijsgroep opgeslagen!',
- 'Pricegroups' => 'Prijsgroepen',
- 'Pricelist' => '',
- 'Print' => 'Afdrukken',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => 'Afgedrukt',
- 'Printer' => 'Printer',
- 'Printing ... ' => 'Afdrukken ...',
- 'Profit Center' => 'Inkomstenpost',
- 'Project' => 'Project',
- 'Project Description Translations' => 'Project Omschrijving Vertaling',
- 'Project Number' => 'Projectnummer',
- 'Project Number missing!' => 'Projectnummer ontbreekt!',
- 'Project Transactions' => 'Projectboekingen',
- 'Project deleted!' => 'Project verwijderd!',
- 'Project not on file!' => 'Onbekend project!',
- 'Project saved!' => 'Project opgeslagen!',
- 'Projects' => 'Projecten',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quantity exceeds available units to stock!' => 'Aantal is hoger dan de aanwezige voorraad!',
- 'Quarter' => '',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation ' => '',
- 'Quotation Date' => 'Offertedatum',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number' => 'Offertenummer',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotation deleted!' => 'Offerte verwijderd!',
- 'Quotations' => 'Offertes',
- 'R' => 'R',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQ ' => '',
- 'RFQ Number' => 'Offerteaanvraagnummer',
- 'RFQs' => 'Offerteaanvragen',
- 'ROP' => 'Minimum voorraad',
- 'Rate' => 'Percentage',
- 'Rate missing!' => 'Percentage ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipt posted!' => 'Ontvangstbewijs geboekt',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Receivables' => 'Vorderingen',
- 'Receive' => 'Inkomende zending',
- 'Receive Merchandise' => 'Goederen Ontvangen',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reconciliation Report' => 'Reconcilidatie rapport',
- 'Record in' => 'Boeken op',
- 'Reference' => 'Referentie',
- 'Reference missing!' => 'Referentie ontbreekt!',
- 'Remaining' => 'Resterend',
- 'Remove' => 'Verwijder',
- 'Remove Audit trails up to' => 'Verwijder Accountants opsporing tot',
- 'Removed spoolfiles!' => 'Spoolfiles verwijderd!',
- 'Removing marked entries from queue ...' => 'Gemarkeerde stukken uit de wachtrij aan het verwijderen',
- 'Report for' => 'Rapport voor',
- 'Reports' => 'Rapporten',
- 'Request for Quotation' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'Required by' => 'Nodig voor',
- 'Retained Earnings' => 'Winstreserve',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC verwijderd!',
- 'SIC saved!' => 'SIC opgeslagen!',
- 'SKU' => 'SKU',
- 'SSN' => 'Pers.nr.',
- 'Sale' => 'Verkoopfactuur',
- 'Sales' => 'Verkoop',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Verkooporders',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Save Pricelist' => '',
- 'Save as new' => 'Opslaan als nieuw',
- 'Save to File' => 'Opslaan als bestand',
- 'Screen' => 'Scherm',
- 'Search' => 'Zoek',
- 'Select' => 'Selecteer',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Verkoopprijs',
- 'Send by E-Mail' => 'Verzenden per E-mail',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Dienst',
- 'Service Items' => 'Dienst Onderdelen',
- 'Services' => 'Diensten',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Setup templates',
- 'Ship' => 'Verzenden',
- 'Ship Merchandise' => 'Goederen Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping' => 'Zendingen',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Date' => 'Verzenddatum',
- 'Shipping Date missing!' => 'Verzenddatum ontbreekt!',
- 'Shipping Point' => 'Verzendpunt',
- 'Short' => 'Kort',
- 'Signature' => 'Handtekening',
- 'Source' => 'Herkomst',
- 'Spoolfile' => 'Spoolfile',
- 'Standard' => 'Standaard',
- 'Standard Industrial Codes' => 'Standaard Industiële Codes',
- 'Startdate' => 'Begindatum',
- 'State' => '',
- 'State/Province' => 'Staat/Provincie',
- 'Statement' => 'Overzicht',
- 'Statement Balance' => 'Saldo Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Stock' => 'Voorraad',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Stylesheet' => 'Stylesheet',
- 'Sub-contract GIFI' => 'GIFI Onderaannemer',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Supervisor' => '',
- 'System' => 'Systeem',
- 'System Defaults' => 'Systeem Standaard',
- 'Tax' => 'Belasting',
- 'Tax Accounts' => 'Belasting Rekeningen',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax Number' => 'Belastingnummer',
- 'Tax Number / SSN' => 'Belastingnummer / Pers.nr.',
- 'Tax collected' => 'Belasting verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Taxable' => 'Belastbaar percentage',
- 'Template saved!' => 'Template opgeslagen!',
- 'Templates' => 'Templates',
- 'Terms' => 'Termijn',
- 'Text Templates' => 'Tekst templates',
- 'The following Datasets are not in use and can be deleted' => 'De volgende datasets zijn niet ingebruik en kunnen worder verwijderd.',
- 'The following Datasets need to be updated' => 'De volgende datasets moeten worden bijgewerkt',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dit is een eerste controle. Er wordt niks gecreéerd of verwijderd.',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Om een gebruiker aan een groep toe te voegen, een naam te wijzigen, een login naam te wijzigen en op te slaan. Een nieuwe gebruiker zal dan worder opgeslagen met dezelfde gegevens onder de nieuwe login naam.',
- 'Top Level' => 'Top Niveau',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Boekingsdatum ontbreekt!',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Transaction reversal enforced for all dates' => 'Boekingen verplicht terugdraaien voor alle datums',
- 'Transaction reversal enforced up to' => 'Boekingen verplicht terugdraaien tot aan',
- 'Transactions' => 'Boekingen',
- 'Transfer' => 'Overboeking',
- 'Transfer Inventory' => 'Inventaris overboeken',
- 'Transfer to' => 'Overboeken naar',
- 'Translation' => 'Vertaling',
- 'Translation deleted!' => 'Vertaling verwijderd!',
- 'Translation not on file!' => '',
- 'Translations' => 'Vertalingen',
- 'Translations saved!' => 'Vertalingen opgeslagen!',
- 'Trial Balance' => 'Proefbalans',
- 'Type of Business' => 'Zaaktype',
- 'Unit' => 'Eenheid',
- 'Unit of measure' => 'Rekeneenheid',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Bijwerken',
- 'Update Dataset' => 'Dataset bijwerken',
- 'Updated' => 'Bijgewerkt',
- 'Upgrading to Version' => 'Opwaarderen naar Versie',
- 'Use Templates' => 'Gebruik templates',
- 'User' => 'Gebruiker',
- 'User deleted!' => 'Gebruiker verwijderd!',
- 'User saved!' => 'Gebruiker opgeslagen!',
- 'Valid until' => 'Geldig tot',
- 'Vendor' => 'Leverancier',
- 'Vendor History' => 'Leverancier Historie',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Leverancier inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor deleted!' => 'Leverancier verwijderd!',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Vendor saved!' => 'Leverancier opgeslagen!',
- 'Vendors' => 'Leveranciers',
- 'Version' => 'Versie',
- 'Warehouse' => 'Magazijn',
- 'Warehouse deleted!' => 'Magazijn verwijderd!',
- 'Warehouse saved!' => 'Magazijn opgeslagen',
- 'Warehouses' => 'Magazijnen',
- 'Warning!' => 'Waarschuwing!',
- 'Weight' => 'Gewicht',
- 'Weight Unit' => 'Gewichtseenheid',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'Work Orders' => 'Werk orders',
- 'Work Phone' => 'Bedrijfstelefoon',
- 'Year' => '',
- 'Yearend' => 'Jaareinde',
- 'Yearend date missing!' => 'Jaareinde ontbreekt!',
- 'Yearend posted!' => 'Jaareinde geboekt!',
- 'Yearend posting failed!' => 'Boeking jaareinde mislukt!',
- 'Yes' => 'Ja',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'U heeft geen naam gegeven!',
- 'You must enter a host and port for local and remote connections!' => 'Vul een "host" en een "port" voor netwerk connecties!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'Rekening kan niet omgezet worden naar ander type Rekening',
- 'as at' => 'per',
- 'days' => 'dagen',
- 'does not exist' => 'bestaat niet',
- 'done' => 'gebeurd',
- 'ea' => 'voor',
- 'for Period' => 'voor periode',
- 'is already a member!' => 'is al een gebruiker',
- 'is not a member!' => 'is geen gebruiker',
- 'localhost' => 'localhost',
- 'locked!' => 'Geblokeerd!',
- 'posted!' => 'opgeslagen!',
- 'sent' => 'verzonden',
- 'successfully created!' => 'Met succes aangemaakt!',
- 'successfully deleted!' => 'Met succes verwijderd!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/am b/sql-ledger/locale/be_nl/am
deleted file mode 100644
index f08bae8..0000000
--- a/sql-ledger/locale/be_nl/am
+++ /dev/null
@@ -1,249 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AR' => 'Debiteuren',
- 'About' => 'Over',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Account Number missing!' => 'Rekeningnummer ontbreekt!',
- 'Account Type' => 'Rekeningtype',
- 'Account Type missing!' => 'Rekeningtype ontbreekt!',
- 'Account deleted!' => 'Rekening verwijderd',
- 'Account does not exist!' => 'Rekening bestaat niet',
- 'Account saved!' => 'Rekening opgeslagen',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accrual' => 'Opeengestapeld',
- 'Activate Audit trails' => 'Activeer Accountants opsporing',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Business' => 'Zaaktype toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add Language' => 'Taal toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'Address' => 'Adres',
- 'Asset' => 'Activa (bezittingen)',
- 'Audit Control' => 'Accountants Controle',
- 'Audit trail removed up to' => 'Accountants opsporing verwijderd tot',
- 'Audit trails disabled' => 'Accountants opsporing onbruikbaar',
- 'Audit trails enabled' => 'Accountants opsporing toegelaten',
- 'Backup sent to' => 'Backup gezonden aan',
- 'Books are open' => 'Boekingsperiode is open',
- 'Business Number' => 'Kamer van Koophandel nummer',
- 'Business deleted!' => 'Zaaktype verwijderd!',
- 'Business saved!' => 'Zaaktype opgeslagen',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot delete account!' => 'Kan bedrag niet verwijderen!',
- 'Cannot delete default account!' => 'Kan standaardrekening niet verwijderen!',
- 'Cannot save account!' => 'Kan rekening niet opslaan!',
- 'Cannot save defaults!' => 'Kan de standaard niet opslaan!',
- 'Cannot save preferences!' => 'Kan voorkeuren niet opslaan!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan rekening niet toekennen aan meer dan één debiteuren-, crediteuren- of inventarisrekening',
- 'Cannot set multiple options for' => 'Kan de meerdere opties voor niet instellen',
- 'Cannot set multiple options for Parts Inventory' => 'Kan de meerder opties voor de Artikelvoorraad niet instellen',
- 'Cannot set multiple options for Service Items' => 'Kan de meerder opties voor Dienst Onderdelen niet instellen',
- 'Cash' => 'Kas (contant)',
- 'Character Set' => 'Karakter set',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Close Books up to' => 'Boeken afsluiten tot',
- 'Code' => 'Code',
- 'Code missing!' => 'Code ontbreekt!',
- 'Company' => 'Bedrijf',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Copy to COA' => 'Kopieër naar rekeningstelsel',
- 'Cost Center' => 'Kostenpost',
- 'Credit' => 'Credit',
- 'Customer Number' => 'Klantnummer',
- 'Database Host' => 'Database computer',
- 'Dataset' => 'Dataset',
- 'Date Format' => 'Datum formaat',
- 'Debit' => 'Debet',
- 'Defaults saved!' => 'Standaarden bewaard!',
- 'Delete' => 'Verwijder',
- 'Delete Account' => 'Rekening verwijderen',
- 'Department deleted!' => 'Afdeling verwijderd!',
- 'Department saved!' => 'Afdeling opgeslagen!',
- 'Departments' => 'Afdelingen',
- 'Description' => 'Omschrijving',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'Discount' => 'Korting',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Wijzig',
- 'Edit Account' => 'Rekening wijzigen',
- 'Edit Business' => 'Zaaktype wijzigen',
- 'Edit Department' => 'Afdeling wijzigen',
- 'Edit GIFI' => 'Wijzig GIFI',
- 'Edit Language' => 'Taal Wijzigen',
- 'Edit Preferences for' => 'Instellingen wijzigen voor',
- 'Edit SIC' => 'SIC wijzigen',
- 'Edit Template' => 'Template wijzigen',
- 'Edit Warehouse' => 'Magazijn wijzigen',
- 'Enforce transaction reversal for all dates' => 'Boeking terugdraaien voor alle data',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vul max drie karakters in, gescheiden door een dubbelepunt (b.v. EUR:USD:GBP:CAD) voor lokale en buitenlandse valuta',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Expense' => 'Onkosten',
- 'Expense Account' => 'Onkostenrekening',
- 'Expense/Asset' => 'Uitgaven',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Wisselkoers winst',
- 'Foreign Exchange Loss' => 'Wisselkoers verlies',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI verwijderd!',
- 'GIFI missing!' => 'GIFI ontbreekt!',
- 'GIFI saved!' => 'GIFI opgeslagen!',
- 'Heading' => 'Kopregel',
- 'Include in drop-down menus' => 'Toevoegen aan drop-down menus',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Deze rekening gebruiken op klant/leverancier formulieren om deze als belastbaar aan te duiden?',
- 'Income' => 'Inkomsten',
- 'Income Account' => 'Inkomstenrekening',
- 'Inventory' => 'Voorraad',
- 'Inventory Account' => 'Voorraadrekening',
- 'Is this a summary account to record' => 'Totaalrekening voor',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'Language deleted!' => 'Taal verwijderd!',
- 'Language saved!' => 'Taal opgeslagen!',
- 'Languages' => 'Talen',
- 'Last Numbers & Default Accounts' => 'Laatst toegekende nummers & Standaard Rekeningen',
- 'Liability' => 'Passiva',
- 'Licensed to' => 'Gelicenseerd aan',
- 'Link' => 'Verbinding',
- 'Menu Width' => 'Menu Breedte',
- 'Method' => 'Methode',
- 'Name' => 'Naam',
- 'No' => 'Nee',
- 'No email address for' => 'Geen email adres voor',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummeraanduiding',
- 'Parts Inventory' => 'Artikelenvoorraad',
- 'Password' => 'Wachtwoord',
- 'Payables' => 'Betalingen',
- 'Payment' => 'Betaling',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Instellingen bewaard!',
- 'Printer' => 'Printer',
- 'Profit Center' => 'Inkomstenpost',
- 'RFQ Number' => 'Offerteaanvraagnummer',
- 'Rate' => 'Percentage',
- 'Receivables' => 'Vorderingen',
- 'Reference' => 'Referentie',
- 'Remove Audit trails up to' => 'Verwijder Accountants opsporing tot',
- 'Retained Earnings' => 'Winstreserve',
- 'SIC deleted!' => 'SIC verwijderd!',
- 'SIC saved!' => 'SIC opgeslagen!',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Service Items' => 'Dienst Onderdelen',
- 'Signature' => 'Handtekening',
- 'Standard Industrial Codes' => 'Standaard Industiële Codes',
- 'Stylesheet' => 'Stylesheet',
- 'System Defaults' => 'Systeem Standaard',
- 'Tax' => 'Belasting',
- 'Tax Accounts' => 'Belasting Rekeningen',
- 'Template saved!' => 'Template opgeslagen!',
- 'Transaction reversal enforced for all dates' => 'Boekingen verplicht terugdraaien voor alle datums',
- 'Transaction reversal enforced up to' => 'Boekingen verplicht terugdraaien tot aan',
- 'Type of Business' => 'Zaaktype',
- 'User' => 'Gebruiker',
- 'Vendor Number' => 'Leveranciernummer',
- 'Version' => 'Versie',
- 'Warehouse deleted!' => 'Magazijn verwijderd!',
- 'Warehouse saved!' => 'Magazijn opgeslagen',
- 'Warehouses' => 'Magazijnen',
- 'Weight Unit' => 'Gewichtseenheid',
- 'Yearend' => 'Jaareinde',
- 'Yearend date missing!' => 'Jaareinde ontbreekt!',
- 'Yearend posted!' => 'Jaareinde geboekt!',
- 'Yearend posting failed!' => 'Boeking jaareinde mislukt!',
- 'Yes' => 'Ja',
- 'account cannot be set to any other type of account' => 'Rekening kan niet omgezet worden naar ander type Rekening',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'rekening_toevoegen' => 'add_account',
- 'zaaktype_toevoegen' => 'add_business',
- 'afdeling_toevoegen' => 'add_department',
- 'taal_toevoegen' => 'add_language',
- 'sic_toevoegen' => 'add_sic',
- 'magazijn_toevoegen' => 'add_warehouse',
- 'verder' => 'continue',
- 'kopieër_naar_rekeningstelsel' => 'copy_to_coa',
- 'verwijder' => 'delete',
- 'wijzig' => 'edit',
- 'rekening_wijzigen' => 'edit_account',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ap b/sql-ledger/locale/be_nl/ap
deleted file mode 100644
index d13dca9..0000000
--- a/sql-ledger/locale/be_nl/ap
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Openstaande Crediteuren',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Check' => 'Cheque',
- 'Closed' => 'Afgesloten',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'Employee' => 'Werknemer',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'PDF' => 'PDF',
- 'Paid' => 'Betaald',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Project not on file!' => 'Onbekend project!',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Remaining' => 'Resterend',
- 'Screen' => 'Scherm',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'crediteurenboeking' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'print_and_post' => 'print_and_post',
- 'bijwerken' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ar b/sql-ledger/locale/be_nl/ar
deleted file mode 100644
index 513ac39..0000000
--- a/sql-ledger/locale/be_nl/ar
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Check' => 'Cheque',
- 'Closed' => 'Afgesloten',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'PDF' => 'PDF',
- 'Paid' => 'Betaald',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Project not on file!' => 'Onbekend project!',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Remaining' => 'Resterend',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Ship via' => 'Verzenden via',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/arap b/sql-ledger/locale/be_nl/arap
deleted file mode 100644
index 19da2c6..0000000
--- a/sql-ledger/locale/be_nl/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adres',
- 'Continue' => 'Verder',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Description' => 'Omschrijving',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Onbekend project!',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/arapprn b/sql-ledger/locale/be_nl/arapprn
deleted file mode 100644
index 17b0e26..0000000
--- a/sql-ledger/locale/be_nl/arapprn
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Amount' => 'Bedrag',
- 'Check' => 'Cheque',
- 'Continue' => 'Verder',
- 'Date' => 'Datum',
- 'Memo' => 'Memo',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Afgedrukt',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Screen' => 'Scherm',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Source' => 'Herkomst',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/bp b/sql-ledger/locale/be_nl/bp
deleted file mode 100644
index 9c9a0c0..0000000
--- a/sql-ledger/locale/be_nl/bp
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Weet us zeker dat u de gemarkeerde stukken wil verwijderen uit de wachtrij?',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Cannot remove files!' => 'Kan bestanden niet verwijderen!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Date' => 'Datum',
- 'From' => 'Van',
- 'Invoice' => 'Factuur',
- 'Invoice Number' => 'Factuurnummer',
- 'Marked entries printed!' => 'Gemarkeerde delen afgedrukt!',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'Packing Lists' => 'Pakbonnen',
- 'Pick Lists' => 'Pick lijsten',
- 'Print' => 'Afdrukken',
- 'Printing ... ' => 'Afdrukken ...',
- 'Purchase Orders' => 'Inkooporders',
- 'Quotation' => 'Offerte',
- 'Quotation Number' => 'Offertenummer',
- 'Quotations' => 'Offertes',
- 'RFQs' => 'Offerteaanvragen',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Reference' => 'Referentie',
- 'Remove' => 'Verwijder',
- 'Removed spoolfiles!' => 'Spoolfiles verwijderd!',
- 'Removing marked entries from queue ...' => 'Gemarkeerde stukken uit de wachtrij aan het verwijderen',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Orders' => 'Verkooporders',
- 'Select all' => 'Selecteer alles',
- 'Spoolfile' => 'Spoolfile',
- 'To' => 'Tot',
- 'Vendor' => 'Leverancier',
- 'Work Orders' => 'Werk orders',
- 'Yes' => 'Ja',
- 'done' => 'gebeurd',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'afdrukken' => 'print',
- 'verwijder' => 'remove',
- 'selecteer_alles' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ca b/sql-ledger/locale/be_nl/ca
deleted file mode 100644
index 04d0949..0000000
--- a/sql-ledger/locale/be_nl/ca
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Credit' => 'Credit',
- 'Current' => 'Huidig',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'List Transactions' => 'Boekingen tonen',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Project Number' => 'Projectnummer',
- 'R' => 'R',
- 'Reference' => 'Referentie',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'boekingen_tonen' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/cp b/sql-ledger/locale/be_nl/cp
deleted file mode 100644
index 89a0592..0000000
--- a/sql-ledger/locale/be_nl/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AR' => 'Debiteuren',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Cannot post Payment!' => 'Kan betaling niet boeken!',
- 'Cannot post Receipt!' => 'Kan ontvangst niet boeken!',
- 'Cannot process payment for a closed period!' => 'Kan geen betaling verwerken voor afgesloten periode!',
- 'Continue' => 'Verder',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date missing!' => 'Datum ontbreekt!',
- 'Department' => 'Afdeling',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Invoice' => 'Factuur',
- 'Invoices' => 'Facturen',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Niets openstaand voor',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Betaling',
- 'Payment posted!' => 'Betaling geboekt!',
- 'Post' => 'Boek',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Voorschot',
- 'Print' => 'Afdrukken',
- 'Project not on file!' => 'Onbekend project!',
- 'Queue' => 'Wachtrij',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipt posted!' => 'Ontvangstbewijs geboekt',
- 'Screen' => 'Scherm',
- 'Select' => 'Selecteer',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Source' => 'Herkomst',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
- 'boek' => 'post',
- 'afdrukken' => 'print',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ct b/sql-ledger/locale/be_nl/ct
deleted file mode 100644
index e5621e4..0000000
--- a/sql-ledger/locale/be_nl/ct
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'BIC' => 'BIC',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Break' => 'Onderbreking',
- 'Cannot delete customer!' => 'Kan klant niet verwijderen!',
- 'Cannot delete vendor!' => 'Kan leverancier niet verwijderen!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Cost' => 'Kost',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Customer History' => 'Klant Historie',
- 'Customer Number' => 'Klantnummer',
- 'Customer deleted!' => 'Klant verwijderd!',
- 'Customer saved!' => 'Klant opgeslagen!',
- 'Customers' => 'Klanten',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Discount' => 'Korting',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Klant wijzigen',
- 'Edit Vendor' => 'Leverancier wijzigen',
- 'Employee' => 'Werknemer',
- 'Enddate' => 'Einddatum',
- 'Fax' => 'Fax',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Group' => 'Groep',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Language' => 'Taal',
- 'Leadtime' => 'Levertijd',
- 'Manager' => 'Manager',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'Notes' => 'Opmerkingen',
- 'Number' => 'Nummer',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Orphaned' => 'Wees',
- 'Part Number' => 'Artikel Nummer',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Prijsgroep',
- 'Project Number' => 'Projectnummer',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quotation' => 'Offerte',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Search' => 'Zoek',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Sell Price' => 'Verkoopprijs',
- 'Serial Number' => 'Serienummer',
- 'Shipping Address' => 'Verzendadres',
- 'Startdate' => 'Begindatum',
- 'State/Province' => 'Staat/Provincie',
- 'Sub-contract GIFI' => 'GIFI Onderaannemer',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax Number' => 'Belastingnummer',
- 'Tax Number / SSN' => 'Belastingnummer / Pers.nr.',
- 'Taxable' => 'Belastbaar percentage',
- 'Terms' => 'Termijn',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Type of Business' => 'Zaaktype',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor History' => 'Leverancier Historie',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoices' => 'Leverancier inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor deleted!' => 'Leverancier verwijderd!',
- 'Vendor saved!' => 'Leverancier opgeslagen!',
- 'Vendors' => 'Leveranciers',
- 'days' => 'dagen',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'crediteurenboeking' => 'ap_transaction',
- 'debiteurenboeking' => 'ar_transaction',
- 'klant_toevoegen' => 'add_customer',
- 'leverancier_toevoegen' => 'add_vendor',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'pricelist' => 'pricelist',
- 'inkooporder' => 'purchase_order',
- 'offerte' => 'quotation',
- 'offerteaanvraag' => 'rfq',
- 'verkoopfactuur' => 'sales_invoice',
- 'verkooporder' => 'sales_order',
- 'opslaan' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'bijwerken' => 'update',
- 'inkoopfaktuur' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/gl b/sql-ledger/locale/be_nl/gl
deleted file mode 100644
index 5209219..0000000
--- a/sql-ledger/locale/be_nl/gl
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Crediteurenboeking',
- 'AR Transaction' => 'Debiteurenboeking',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Cash Transfer Transaction' => 'Geldoverboeking toevoegen',
- 'Add General Ledger Transaction' => 'Journaalpost toevoegen',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Asset' => 'Activa (bezittingen)',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Credit' => 'Credit',
- 'Current' => 'Huidig',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Edit Cash Transfer Transaction' => 'Kasoverboeking wijzigen',
- 'Edit General Ledger Transaction' => 'Boeking in grootboek wijzigen',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Expense' => 'Onkosten',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Grootboekboeking (memoriaal) ',
- 'General Ledger' => 'Grootboek',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income' => 'Inkomsten',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Liability' => 'Passiva',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance transaction!' => 'Boeking is niet in evenwicht',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'R' => 'R',
- 'Reference' => 'Referentie',
- 'Reference missing!' => 'Referentie ontbreekt!',
- 'Reports' => 'Rapporten',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Transaction Date missing!' => 'Boekingsdatum ontbreekt!',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warning!' => 'Waarschuwing!',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'crediteurenboeking' => 'ap_transaction',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'grootboekboeking_(memoriaal)_' => 'gl_transaction',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'bijwerken' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/hr b/sql-ledger/locale/be_nl/hr
deleted file mode 100644
index 4ee9792..0000000
--- a/sql-ledger/locale/be_nl/hr
+++ /dev/null
@@ -1,108 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'Above' => 'Boven',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Deduction' => 'Korting toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Address' => 'Adres',
- 'Administrator' => 'Beheerder',
- 'After Deduction' => 'Na korting',
- 'All' => 'Allemaal',
- 'Allowances' => 'Toelagen',
- 'Amount' => 'Bedrag',
- 'Amount missing!' => 'Bedrag ontbreekt',
- 'BIC' => 'BIC',
- 'Based on' => 'Gebaseerd op',
- 'Before Deduction' => 'Voor korting',
- 'Below' => 'Onder',
- 'City' => 'Stad',
- 'Continue' => 'Verder',
- 'Country' => 'Land',
- 'Deduct after' => 'Verminder na',
- 'Deduction deleted!' => 'Korting verwijderd!',
- 'Deduction saved!' => 'Korting opgeslagen!',
- 'Deductions' => 'Kortingen',
- 'Delete' => 'Verwijder',
- 'Description' => 'Omschrijving',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Korting wijzigen',
- 'Edit Employee' => 'Werknemer wijzigen',
- 'Employee' => 'Werknemer',
- 'Employee Name' => 'Werknemernaam',
- 'Employee deleted!' => 'Werknemer verwijderd',
- 'Employee pays' => 'Werknemerbetalingen',
- 'Employee saved!' => 'Werknemer opgeslagen!',
- 'Employees' => 'Werknemers',
- 'Employer' => 'Werkgever',
- 'Employer pays' => 'Werkgeverbetalingen',
- 'Enddate' => 'Einddatum',
- 'Expense' => 'Onkosten',
- 'Home Phone' => 'Thuistelefoon',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Login' => 'Login',
- 'Manager' => 'Manager',
- 'Maximum' => 'Maximum',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'Notes' => 'Opmerkingen',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Wees',
- 'Payroll Deduction' => 'Loonkorting',
- 'Rate' => 'Percentage',
- 'Rate missing!' => 'Percentage ontbreekt!',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SSN' => 'Pers.nr.',
- 'Sales' => 'Verkoop',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Startdate' => 'Begindatum',
- 'State/Province' => 'Staat/Provincie',
- 'Update' => 'Bijwerken',
- 'User' => 'Gebruiker',
- 'Work Phone' => 'Bedrijfstelefoon',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'korting_toevoegen' => 'add_deduction',
- 'werknemer_toevoegen' => 'add_employee',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ic b/sql-ledger/locale/be_nl/ic
deleted file mode 100644
index 8afff92..0000000
--- a/sql-ledger/locale/be_nl/ic
+++ /dev/null
@@ -1,269 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accrual' => 'Opeengestapeld',
- 'Active' => 'Actief',
- 'Add' => 'Toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Assemblies' => 'Assemblages',
- 'Assemblies restocked!' => 'Assemblage naar voorraad geboekt',
- 'Assembly' => 'Assemblage',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'BOM' => 'Onderdelenlijst',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Break' => 'Onderbreking',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot delete item!' => 'Kan onderdeel niet verwijderen!',
- 'Cannot stock assemblies!' => 'Kan assemblages niet in voorraad nemen!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Check Inventory' => 'Inventaris controleren',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Components' => 'Componenten',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Cost' => 'Kost',
- 'Country' => 'Land',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'Drawing' => 'Tekening',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Assembly' => 'Assemblage wijzigen',
- 'Edit Labor/Overhead' => 'Arbeid/Overheadskosten wijzigen',
- 'Edit Part' => 'Artikel wijzigen',
- 'Edit Service' => 'Dienst wijzigen',
- 'Employee' => 'Werknemer',
- 'Expense' => 'Onkosten',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Image' => 'Plaatje',
- 'In-line' => 'In Lijn',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income' => 'Inkomsten',
- 'Individual Items' => 'Onderliggende onderdelen',
- 'Inventory' => 'Voorraad',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een assemblage als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een product als \'niet actief\' kan worden gemarkeerd.',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item deleted!' => 'Onderdeel verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Items' => 'Onderdelen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Leadtime' => 'Levertijd',
- 'Line Total' => 'Totaal Regel',
- 'Link Accounts' => 'Rekeningen verbinden',
- 'List Price' => 'Catalogusprijs',
- 'Make' => 'Fabrikant',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'Markup' => 'Winstmarge',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Type',
- 'Name' => 'Naam',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Obsolete' => 'Niet actief',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'Op voorraad',
- 'Open' => 'Open',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Orphaned' => 'Wees',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Parts' => 'Artikelen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Pricegroup' => 'Prijsgroep',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quantity exceeds available units to stock!' => 'Aantal is hoger dan de aanwezige voorraad!',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'ROP' => 'Minimum voorraad',
- 'Recd' => 'Ontvangen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Sell Price' => 'Verkoopprijs',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Dienst',
- 'Services' => 'Diensten',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'Short' => 'Kort',
- 'State/Province' => 'Staat/Provincie',
- 'Stock' => 'Voorraad',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'To' => 'Tot',
- 'Top Level' => 'Top Niveau',
- 'Unit' => 'Eenheid',
- 'Unit of measure' => 'Rekeneenheid',
- 'Update' => 'Bijwerken',
- 'Updated' => 'Bijgewerkt',
- 'Vendor' => 'Leverancier',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoices' => 'Leverancier inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warehouse' => 'Magazijn',
- 'Weight' => 'Gewicht',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'days' => 'dagen',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'assemblage_toevoegen' => 'add_assembly',
- 'arbeid/overheadskosten_toevoegen' => 'add_labor/overhead',
- 'artikel_toevoegen' => 'add_part',
- 'dienst_toevoegen' => 'add_service',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'assemblage_wijzigen' => 'edit_assembly',
- 'artikel_wijzigen' => 'edit_part',
- 'dienst_wijzigen' => 'edit_service',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/io b/sql-ledger/locale/be_nl/io
deleted file mode 100644
index cadb969..0000000
--- a/sql-ledger/locale/be_nl/io
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Customer Number' => 'Klantnummer',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Unit' => 'Eenheid',
- 'Vendor Number' => 'Leveranciernummer',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ir b/sql-ledger/locale/be_nl/ir
deleted file mode 100644
index 88aae09..0000000
--- a/sql-ledger/locale/be_nl/ir
+++ /dev/null
@@ -1,213 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Customer Number' => 'Klantnummer',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Vendor Invoice' => 'Inkoop factuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'Source' => 'Herkomst',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'Yes' => 'Ja',
- 'ea' => 'voor',
- 'posted!' => 'opgeslagen!',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'inkooporder' => 'purchase_order',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/is b/sql-ledger/locale/be_nl/is
deleted file mode 100644
index 6d3faaf..0000000
--- a/sql-ledger/locale/be_nl/is
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Zaaktype',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'Yes' => 'Ja',
- 'ea' => 'voor',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'e_mail' => 'e_mail',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'print_and_post' => 'print_and_post',
- 'verkooporder' => 'sales_order',
- 'verzenden_aan' => 'ship_to',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/login b/sql-ledger/locale/be_nl/login
deleted file mode 100644
index bf6dcc4..0000000
--- a/sql-ledger/locale/be_nl/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Bedrijf',
- 'Continue' => 'Verder',
- 'Dataset is newer than version!' => 'Dataset is nieuwer dan de versie!',
- 'Incorrect Dataset version!' => 'Ongeldige versie Dataset!!',
- 'Incorrect Password!' => 'Verkeerd paswoord',
- 'Login' => 'Login',
- 'Name' => 'Naam',
- 'Password' => 'Wachtwoord',
- 'Upgrading to Version' => 'Opwaarderen naar Versie',
- 'Version' => 'Versie',
- 'You did not enter a name!' => 'U heeft geen naam gegeven!',
- 'done' => 'gebeurd',
- 'is not a member!' => 'is geen gebruiker',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/menu b/sql-ledger/locale/be_nl/menu
deleted file mode 100644
index d26ea94..0000000
--- a/sql-ledger/locale/be_nl/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AR' => 'Debiteuren',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Transaction' => 'Debiteurenboeking',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Business' => 'Zaaktype toevoegen',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add Group' => 'Groep toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Language' => 'Taal toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Add Transaction' => 'Boeking toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'All Items' => 'Alle onderdelen',
- 'Assemblies' => 'Assemblages',
- 'Audit Control' => 'Accountants Controle',
- 'Backup' => 'Backup',
- 'Balance Sheet' => 'Balans',
- 'Batch Printing' => 'Batch-printing',
- 'Bin List' => 'Locatielijst',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Cash' => 'Kas (contant)',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componenten',
- 'Customers' => 'Klanten',
- 'Defaults' => 'Standaard',
- 'Departments' => 'Afdelingen',
- 'Description' => 'Omschrijving',
- 'Employees' => 'Werknemers',
- 'General Ledger' => 'Grootboek',
- 'Goods & Services' => 'Goederen & Diensten',
- 'Groups' => 'Groepen',
- 'HR' => 'Personeel',
- 'HTML Templates' => 'HTML Sjablonen',
- 'History' => 'Geschiedenis',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Invoice' => 'Factuur',
- 'LaTeX Templates' => 'Latex Sjablonen',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'List Accounts' => 'Rekeningen weergeven',
- 'List Businesses' => 'Zaaktypes weergeven',
- 'List Departments' => 'Afdelingen weergeven',
- 'List GIFI' => 'GIFI weergeven',
- 'List Languages' => 'Talen weergeven',
- 'List Projects' => 'Projecten weergeven',
- 'List SIC' => 'SIC weergeven',
- 'List Warehouses' => 'Magazijnen weergeven',
- 'Logout' => 'Logout',
- 'Non-taxable' => 'Onbelast',
- 'Open' => 'Open',
- 'Order Entry' => 'Order invoer',
- 'Outstanding' => 'Openstaand',
- 'POS' => 'Verkooppunt',
- 'POS Invoice' => 'Verkooppunt Rekening',
- 'Packing List' => 'Pakbon',
- 'Packing Lists' => 'Pakbonnen',
- 'Parts' => 'Artikelen',
- 'Payment' => 'Betaling',
- 'Payments' => 'Betalingen',
- 'Pick List' => 'Uitzoeklijst',
- 'Pick Lists' => 'Pick lijsten',
- 'Preferences' => 'Instellingen',
- 'Pricegroups' => 'Prijsgroepen',
- 'Print' => 'Afdrukken',
- 'Projects' => 'Projecten',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Quotation' => 'Offerte',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQs' => 'Offerteaanvragen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Receive' => 'Inkomende zending',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reports' => 'Rapporten',
- 'SIC' => 'SIC',
- 'Sale' => 'Verkoopfactuur',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Save to File' => 'Opslaan als bestand',
- 'Search' => 'Zoek',
- 'Send by E-Mail' => 'Verzenden per E-mail',
- 'Services' => 'Diensten',
- 'Ship' => 'Verzenden',
- 'Shipping' => 'Zendingen',
- 'Statement' => 'Overzicht',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Stylesheet' => 'Stylesheet',
- 'System' => 'Systeem',
- 'Tax collected' => 'Belasting verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Text Templates' => 'Tekst templates',
- 'Transactions' => 'Boekingen',
- 'Transfer' => 'Overboeking',
- 'Translations' => 'Vertalingen',
- 'Trial Balance' => 'Proefbalans',
- 'Type of Business' => 'Zaaktype',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendors' => 'Leveranciers',
- 'Version' => 'Versie',
- 'Warehouses' => 'Magazijnen',
- 'Work Order' => 'Bedrijfs order',
- 'Work Orders' => 'Werk orders',
- 'Yearend' => 'Jaareinde',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/oe b/sql-ledger/locale/be_nl/oe
deleted file mode 100644
index e0de9b4..0000000
--- a/sql-ledger/locale/be_nl/oe
+++ /dev/null
@@ -1,297 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Exchange Rate' => 'Wisselkoers toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Order Number' => 'Weet u zeker dat u dit ordernummer wilt verwijderen?',
- 'Are you sure you want to delete Quotation Number' => 'Weet u zeker dat u dit offertenummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Zaaktype',
- 'C' => 'C',
- 'Cannot delete order!' => 'Kan order niet verwijderen!',
- 'Cannot delete quotation!' => 'Kan offerte niet verwijderen!',
- 'Cannot save order!' => 'Kan order niet opslaan!',
- 'Cannot save quotation!' => 'Kan offerte niet opslaan!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Could not save!' => 'Kon niet opslaan!',
- 'Could not transfer Inventory!' => 'Kon geen inventaris overboeken!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Received' => 'Ontvangstdatum',
- 'Date received missing!' => 'Ontvangstdatum ontbreekt!',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Done' => 'Klaar',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Purchase Order' => 'Inkooporder wijzigen',
- 'Edit Quotation' => 'Offerte wijzigen',
- 'Edit Request for Quotation' => 'Offerteaanvraag wijzigen',
- 'Edit Sales Order' => 'Verkoop order wijzigen',
- 'Employee' => 'Werknemer',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Internal Notes' => 'Interne notities',
- 'Inventory saved!' => 'Voorraad opgeslagen',
- 'Inventory transferred!' => 'Voorraad overgeheveld',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nothing entered!' => 'Niets ingevuld!',
- 'Nothing to transfer!' => 'Niets over te boeken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'O' => 'O',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Order deleted!' => 'Order verwijderd!',
- 'Order processed!' => 'Order verwerkt!',
- 'Order saved!' => 'Order opgeslagen!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Part Number' => 'Artikel Nummer',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date' => 'Offertedatum',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number' => 'Offertenummer',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotation deleted!' => 'Offerte verwijderd!',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQ Number' => 'Offerteaanvraagnummer',
- 'Recd' => 'Ontvangen',
- 'Receive Merchandise' => 'Goederen Ontvangen',
- 'Remaining' => 'Resterend',
- 'Request for Quotation' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship Merchandise' => 'Goederen Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Date' => 'Verzenddatum',
- 'Shipping Date missing!' => 'Verzenddatum ontbreekt!',
- 'Shipping Point' => 'Verzendpunt',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Terms' => 'Termijn',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transfer' => 'Overboeking',
- 'Transfer Inventory' => 'Inventaris overboeken',
- 'Transfer to' => 'Overboeken naar',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Valid until' => 'Geldig tot',
- 'Vendor' => 'Leverancier',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warehouse' => 'Magazijn',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'Yes' => 'Ja',
- 'days' => 'dagen',
- 'ea' => 'voor',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'klaar' => 'done',
- 'e_mail' => 'e_mail',
- 'afdrukken' => 'print',
- 'print_and_save' => 'print_and_save',
- 'inkooporder' => 'purchase_order',
- 'offerte' => 'quotation',
- 'quotation_' => 'quotation_',
- 'offerteaanvraag' => 'rfq',
- 'rfq_' => 'rfq_',
- 'verkoopfactuur' => 'sales_invoice',
- 'verkooporder' => 'sales_order',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'verzenden_aan' => 'ship_to',
- 'overboeking' => 'transfer',
- 'bijwerken' => 'update',
- 'inkoopfaktuur' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/pe b/sql-ledger/locale/be_nl/pe
deleted file mode 100644
index ebe9013..0000000
--- a/sql-ledger/locale/be_nl/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Group' => 'Groep toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'All' => 'Allemaal',
- 'Continue' => 'Verder',
- 'Delete' => 'Verwijder',
- 'Description' => 'Omschrijving',
- 'Description Translations' => 'Omschrijving Vertaling',
- 'Edit Description Translations' => 'Wijzig Omschrijving Vertaling',
- 'Edit Group' => 'Groep wijzigen',
- 'Edit Pricegroup' => 'Prijsgroep wijzigen ',
- 'Edit Project' => 'Project wijzigen',
- 'Group' => 'Groep',
- 'Group Translations' => 'Groep vertaling',
- 'Group deleted!' => 'Groep verwijderd!',
- 'Group missing!' => 'Groep ontbreekt!',
- 'Group saved!' => 'Groep opgeslagen!',
- 'Groups' => 'Groepen',
- 'Language' => 'Taal',
- 'Languages not defined!' => 'Taal niet gedefinieerd!',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Wees',
- 'Pricegroup' => 'Prijsgroep',
- 'Pricegroup deleted!' => 'Prijsgroep verwijderd!',
- 'Pricegroup missing!' => 'Prijsgroep mist!',
- 'Pricegroup saved!' => 'Prijsgroep opgeslagen!',
- 'Pricegroups' => 'Prijsgroepen',
- 'Project' => 'Project',
- 'Project Description Translations' => 'Project Omschrijving Vertaling',
- 'Project Number' => 'Projectnummer',
- 'Project Number missing!' => 'Projectnummer ontbreekt!',
- 'Project deleted!' => 'Project verwijderd!',
- 'Project saved!' => 'Project opgeslagen!',
- 'Projects' => 'Projecten',
- 'Save' => 'Opslaan',
- 'Translation' => 'Vertaling',
- 'Translation deleted!' => 'Vertaling verwijderd!',
- 'Translations saved!' => 'Vertalingen opgeslagen!',
- 'Update' => 'Bijwerken',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'groep_toevoegen' => 'add_group',
- 'prijsgroep_toevoegen' => 'add_pricegroup',
- 'project_toevoegen' => 'add_project',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'opslaan' => 'save',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/pos b/sql-ledger/locale/be_nl/pos
deleted file mode 100644
index 580d094..0000000
--- a/sql-ledger/locale/be_nl/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Change' => 'Wijzig',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Edit POS Invoice' => 'Directe verkooporder wijzigen',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'From' => 'Van',
- 'Language' => 'Taal',
- 'Memo' => 'Memo',
- 'Number' => 'Nummer',
- 'Open' => 'Open',
- 'Paid' => 'Betaald',
- 'Post' => 'Boek',
- 'Posted!' => 'Geboekt!',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Qty' => 'Aantal',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'afdrukken' => 'print',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/ps b/sql-ledger/locale/be_nl/ps
deleted file mode 100644
index fe9e4f4..0000000
--- a/sql-ledger/locale/be_nl/ps
+++ /dev/null
@@ -1,328 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'All Accounts' => 'Alle Rekeningen',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Zaaktype',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Change' => 'Wijzig',
- 'Check' => 'Cheque',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Compare to' => 'Vergelijk met',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit' => 'Credit',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Huidige winst',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit POS Invoice' => 'Directe verkooporder wijzigen',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Heading' => 'Kopregel',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'N/A' => 'N/A',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Notes' => 'Opmerkingen',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Paid' => 'Betaald',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Uitzoeklijst',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Posted!' => 'Geboekt!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project Number' => 'Projectnummer',
- 'Project Transactions' => 'Projectboekingen',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Report for' => 'Rapport voor',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'Standard' => 'Standaard',
- 'State/Province' => 'Staat/Provincie',
- 'Statement' => 'Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax collected' => 'Belasting verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Trial Balance' => 'Proefbalans',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Bedrijfs order',
- 'Yes' => 'Ja',
- 'as at' => 'per',
- 'ea' => 'voor',
- 'for Period' => 'voor periode',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'e_mail' => 'e_mail',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'verkooporder' => 'sales_order',
- 'selecteer_alles' => 'select_all',
- 'verzenden_aan' => 'ship_to',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/pw b/sql-ledger/locale/be_nl/pw
deleted file mode 100644
index a0d3a13..0000000
--- a/sql-ledger/locale/be_nl/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Verder',
- 'Password' => 'Wachtwoord',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/rc b/sql-ledger/locale/be_nl/rc
deleted file mode 100644
index f14d7bf..0000000
--- a/sql-ledger/locale/be_nl/rc
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Beginning Balance' => 'Begin Balans',
- 'Cleared' => 'Opgeschoond',
- 'Continue' => 'Verder',
- 'Current' => 'Huidig',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decrease' => 'Vermindering',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Difference' => 'Verschil',
- 'Done' => 'Klaar',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Increase' => 'Toename',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance!' => 'Niet in evenwicht!',
- 'Outstanding' => 'Openstaand',
- 'Payment' => 'Betaling',
- 'R' => 'R',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reconciliation Report' => 'Reconcilidatie rapport',
- 'Select all' => 'Selecteer alles',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Statement Balance' => 'Saldo Overzicht',
- 'Summary' => 'Overzicht',
- 'To' => 'Tot',
- 'Update' => 'Bijwerken',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'verder' => 'continue',
- 'klaar' => 'done',
- 'selecteer_alles' => 'select_all',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/be_nl/rp b/sql-ledger/locale/be_nl/rp
deleted file mode 100644
index 3e91a7f..0000000
--- a/sql-ledger/locale/be_nl/rp
+++ /dev/null
@@ -1,161 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Address' => 'Adres',
- 'All Accounts' => 'Alle Rekeningen',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Compare to' => 'Vergelijk met',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Credit' => 'Credit',
- 'Curr' => 'Val.',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Huidige winst',
- 'Customer' => 'Klant',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Kopregel',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Invoice' => 'Factuur',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'N/A' => 'N/A',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order' => 'Bestelling',
- 'PDF' => 'PDF',
- 'Payments' => 'Betalingen',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Project' => 'Project',
- 'Project Number' => 'Projectnummer',
- 'Project Transactions' => 'Projectboekingen',
- 'Project not on file!' => 'Onbekend project!',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Report for' => 'Rapport voor',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Standard' => 'Standaard',
- 'Statement' => 'Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax collected' => 'Belasting verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trial Balance' => 'Proefbalans',
- 'Vendor' => 'Leverancier',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'as at' => 'per',
- 'for Period' => 'voor periode',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
- 'e_mail' => 'e_mail',
- 'afdrukken' => 'print',
- 'selecteer_alles' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/br/COPYING b/sql-ledger/locale/br/COPYING
deleted file mode 100644
index 133af7d..0000000
--- a/sql-ledger/locale/br/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Brazilian texts:
-#
-# Author: Andre Felipe Machado <andremachado@techforce.com.br>
-# Miguel Koren O'Brien de Lacy <miguelk@konsultex.com.br>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/br/LANGUAGE b/sql-ledger/locale/br/LANGUAGE
deleted file mode 100644
index ead7a06..0000000
--- a/sql-ledger/locale/br/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Portuguese (Brazil)
diff --git a/sql-ledger/locale/br/admin b/sql-ledger/locale/br/admin
deleted file mode 100644
index e93ddae..0000000
--- a/sql-ledger/locale/br/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Controle de Acesso',
- 'Accounting' => 'Contabilidade',
- 'Add User' => 'Adicionar Usuário',
- 'Address' => 'Endereço',
- 'Administration' => 'Administração',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todos grupos de dados atualizados!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Trocar senha de administração',
- 'Change Password' => 'Trocar senha',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => 'Clique no nome de acesso para editar',
- 'Company' => 'Companhia',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Criar Carta de Contas',
- 'Create Dataset' => 'Criar conjunto de dados',
- 'DBI not installed!' => 'Driver de Interface de Banco de dados NÃO INSTALADO!',
- 'Database' => 'Banco de Dados',
- 'Database Administration' => 'Administração da Base de Dados',
- 'Database Driver not checked!' => 'Driver do banco de dados não selecionado!',
- 'Database User missing!' => 'Usuário da base de dados faltando!',
- 'Dataset' => 'Conjunto de dados',
- 'Dataset missing!' => 'Conjunto de dados faltando!',
- 'Dataset updated!' => 'Conjunto de dados atualizado',
- 'Date Format' => 'Formato de Data',
- 'Delete' => 'Apagar',
- 'Delete Dataset' => 'Apagar conjunto de dados',
- 'Directory' => 'Diretório',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Limite de dropdown',
- 'E-mail' => 'E-Mail',
- 'Edit User' => 'Editar Usuário',
- 'Existing Datasets' => 'Conjunto de dados existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor',
- 'Hostname missing!' => 'Nome do servidor faltando!',
- 'Language' => 'Idioma',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deixe os campos de servidor e porta vazios a menos que você queira fazer uma conexão remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Acessar/login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout (sair)',
- 'Manager' => 'Gerente',
- 'Menu Width' => 'Largura do Menu',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nome',
- 'New Templates' => 'Novos Modelos',
- 'No Database Drivers available!' => 'Nenhum driver de banco de dados disponível!',
- 'No Dataset selected!' => 'Nenhum conjunto de dados selecionado!',
- 'Nothing to delete!' => 'Nada para apagar!',
- 'Number Format' => 'Formato de números',
- 'Oracle Database Administration' => 'Administração da Base de Dados Oracle',
- 'Password' => 'Senha',
- 'Password changed!' => 'Senha trocada!',
- 'Pg Database Administration' => 'Administração da Base de Dados PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Porta',
- 'Port missing!' => 'Porta faltando!',
- 'Printer' => 'Impressora',
- 'Save' => 'Salvar',
- 'Setup Templates' => 'Modelos de Configuração',
- 'Signature' => 'Assinatura',
- 'Stylesheet' => 'Folha de estilos',
- 'Templates' => 'Modelos',
- 'The following Datasets are not in use and can be deleted' => 'Os seguintes conjuntos de dados NÃO estão em uso e PODEM ser apagados',
- 'The following Datasets need to be updated' => 'Os seguintes grupos de dados precisam ser atualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta é uma verificação preliminar por fontes existentes. Nada será criado ou apagado neste estágio!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para adicionar um usuário a um grupo edite um nome, troque o nome de acesso/login e salve. Um novo usuário com as mesmas variáveis será então salvo sob o novo nome de acesso/login.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Atualizar grupo de dados',
- 'Use Templates' => 'Use Modelos',
- 'User' => 'Usuário',
- 'User deleted!' => 'Usuário apagado!',
- 'User saved!' => 'Usuário salvo',
- 'Version' => 'Versão',
- 'You must enter a host and port for local and remote connections!' => 'Você precisa entrar um servidor e uma porta para conexões locais e remotas!',
- 'does not exist' => 'Não existe',
- 'is already a member!' => 'já é um membro!',
- 'localhost' => 'localhost /servidor local',
- 'locked!' => 'travado!',
- 'successfully created!' => 'Criado com sucesso!',
- 'successfully deleted!' => 'Apagado com sucesso!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'adicionar_usuário' => 'add_user',
- 'trocar_senha_de_administração' => 'change_admin_password',
- 'trocar_senha' => 'change_password',
- 'continuar' => 'continue',
- 'criar_conjunto_de_dados' => 'create_dataset',
- 'apagar' => 'delete',
- 'apagar_conjunto_de_dados' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'acessar/login' => 'login',
- 'logout_(sair)' => 'logout',
- 'administração_da_base_de_dados_oracle' => 'oracle_database_administration',
- 'administração_da_base_de_dados_postgresql' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'salvar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'atualizar_grupo_de_dados' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/br/all b/sql-ledger/locale/br/all
deleted file mode 100644
index c82a4a2..0000000
--- a/sql-ledger/locale/br/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Contas a Pagar',
- 'AP Aging' => 'Contas a Pagar Vencidas',
- 'AP Outstanding' => 'Contas a Pagar Destacadas',
- 'AP Transaction' => 'Transação - Contas a Pagar',
- 'AP Transactions' => 'Transações - Contas a Pagar',
- 'AR' => 'Contas a Receber',
- 'AR Aging' => 'Contas a Receber Vencidas',
- 'AR Outstanding' => 'Contas a Receber Destacadas',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'AR Transactions' => 'Transações - Contas a Receber',
- 'About' => 'Sobre',
- 'Above' => 'Acima',
- 'Access Control' => 'Controle de Acesso',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Account Number missing!' => 'Número da Conta não encontrado!',
- 'Account Type' => 'Tipo de Conta',
- 'Account Type missing!' => 'Tipo de Conta não encontrado!',
- 'Account deleted!' => 'Conta apagada!',
- 'Account does not exist!' => 'Conta inexistente!',
- 'Account saved!' => 'Conta salva!',
- 'Accounting' => 'Contabilidade',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Accrual' => 'Resultado final',
- 'Activate Audit trails' => 'Ativar registros de Auditoria',
- 'Active' => 'Ativa',
- 'Add' => 'Adicionar',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Adicionar Conta',
- 'Add Assembly' => 'Adicionar Conjunto',
- 'Add Business' => 'Adicionar Atividade Comercial',
- 'Add Cash Transfer Transaction' => 'Adicionar Transação de Transferência de Fundos',
- 'Add Customer' => 'Adicionar Cliente',
- 'Add Deduction' => 'Adicionar Dedução',
- 'Add Department' => 'Adicionar Departamento',
- 'Add Employee' => 'Adicionar Empregado',
- 'Add Exchange Rate' => 'Adicionar Taxa de Câmbio',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Add General Ledger Transaction' => 'Adicionar Transação Livro Razão',
- 'Add Group' => 'Adicionar Grupo',
- 'Add Labor/Overhead' => 'Adicionar Trabalho/Sobretaxa',
- 'Add Language' => 'Adicionar Idioma',
- 'Add POS Invoice' => 'Adicionar Fatura Ponto de Venda',
- 'Add Part' => 'Adicionar Parte',
- 'Add Pricegroup' => 'Adicionar Grupo de Preços',
- 'Add Project' => 'Adicionar projeto',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Adicionar Fatura de Venda',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Add Service' => 'Adicionar Serviço',
- 'Add Transaction' => 'Adicionar Transação',
- 'Add User' => 'Adicionar Usuário',
- 'Add Vendor' => 'Adicionar Distribuidor',
- 'Add Vendor Invoice' => 'Adicionar Fatura de Compra',
- 'Add Warehouse' => 'Adicionar Depósito / Armazém',
- 'Address' => 'Endereço',
- 'Administration' => 'Administração',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Após Dedução',
- 'All' => 'Todas',
- 'All Accounts' => 'Todas Contas',
- 'All Datasets up to date!' => 'Todos grupos de dados atualizados!',
- 'All Items' => 'Todos Ítens',
- 'Allowances' => 'Permissões',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total Devido',
- 'Amount missing!' => 'Total faltando!',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem certeza que quer APAGAR a Fatura Número',
- 'Are you sure you want to delete Order Number' => 'Tem certeza que quer APAGAR tal número de Pedido?',
- 'Are you sure you want to delete Quotation Number' => 'Tem certeza que quer APAGAR tal número de Cotação?',
- 'Are you sure you want to delete Transaction' => 'Tem certeza que quer APAGAR a Transação',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Tem certeza que quer REMOVER da fila as entradas marcadas?',
- 'Assemblies' => 'Conjuntos',
- 'Assemblies restocked!' => 'Conjuntos re estocados',
- 'Assembly' => 'Conjunto',
- 'Asset' => 'Ativo',
- 'Attachment' => 'Anexo',
- 'Audit Control' => 'Controle de Auditoria',
- 'Audit trail removed up to' => 'Registro de Auditoria memovido até',
- 'Audit trails disabled' => 'Registro de Auditoria desabilitado',
- 'Audit trails enabled' => 'Registro de Auditoria habilitado',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => 'Lista de Material',
- 'Backup' => 'Cópia de reserva',
- 'Backup sent to' => 'Cópia reserva enviada para',
- 'Balance' => 'Balanço',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Based on' => 'Baseado em',
- 'Batch Printing' => 'Impressão em lote',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes da Dedução',
- 'Beginning Balance' => 'Balanço Inicial',
- 'Below' => 'Abaixo',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Bin Lists' => '',
- 'Books are open' => 'Livros estão abertos',
- 'Break' => 'Quebra',
- 'Business' => 'Negócio',
- 'Business Number' => 'Número de negócio',
- 'Business deleted!' => 'Negócio apagado',
- 'Business saved!' => 'Negócio salvo',
- 'C' => 'F',
- 'COGS' => 'Custo de Vendas',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Não pode apagar conta!',
- 'Cannot delete customer!' => 'Não pode apagar cliente!',
- 'Cannot delete default account!' => 'Não pode apagar conta padrão!',
- 'Cannot delete invoice!' => 'Não pode apagar fatura!',
- 'Cannot delete item!' => 'Não pode apagar item!',
- 'Cannot delete order!' => 'Não pode apagar pedido!',
- 'Cannot delete quotation!' => 'Não pode apagar cotação',
- 'Cannot delete transaction!' => 'Não pode apagar transação!',
- 'Cannot delete vendor!' => 'Não pode apagar fornecedor!',
- 'Cannot post Payment!' => 'Não pode lançar Pagamento!',
- 'Cannot post Receipt!' => 'Não pode lançar Recebimento!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar fatura em período fechado!',
- 'Cannot post invoice!' => 'Não pode lançar fatura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não pode lançar transação para um período já encerrado!',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Cannot process payment for a closed period!' => 'Não pode processar pagamento para um pedíodo já encerrado!',
- 'Cannot remove files!' => 'Não pode remover arquivos!',
- 'Cannot save account!' => 'Não pode salvar conta!',
- 'Cannot save defaults!' => 'Não pode salvar configurações padrão!',
- 'Cannot save order!' => 'Não pode salvar pedido!',
- 'Cannot save preferences!' => 'Não pode salvar preferências!',
- 'Cannot save quotation!' => 'Não pode salvar cotação!',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Não pode estocar conjuntos!',
- 'Cash' => 'Caixa',
- 'Cc' => 'Cc',
- 'Change' => 'Trocar',
- 'Change Admin Password' => 'Trocar senha de administração',
- 'Change Password' => 'Trocar senha',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Código de Contas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Inventário de cheques',
- 'Checks' => 'Cheques',
- 'City' => 'Cidade',
- 'Cleared' => 'Limpo',
- 'Click on login name to edit!' => 'Clique no nome de acesso para editar',
- 'Close Books up to' => 'Encerrar livros até',
- 'Closed' => 'Fechado',
- 'Code' => 'Código',
- 'Code missing!' => 'Código faltando!',
- 'Company' => 'Companhia',
- 'Company Name' => 'Nome da Companhia',
- 'Compare to' => 'Comparar a',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar!',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Cópias',
- 'Copy to COA' => 'Copiar para Plano de Contas',
- 'Cost' => 'Custo',
- 'Cost Center' => 'Centro de Custos',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Não pode salvar!',
- 'Could not transfer Inventory!' => 'Não pode transferir inventário!',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Criar Carta de Contas',
- 'Create Dataset' => 'Criar conjunto de dados',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Current Earnings' => 'Salário Corrente',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Histórico do Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer deleted!' => 'Cliente apagado!',
- 'Customer missing!' => 'Cliente faltando!',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Customer saved!' => 'Cliente salvo',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'Driver de Interface de Banco de dados NÃO INSTALADO!',
- 'DOB' => '',
- 'Database' => 'Banco de Dados',
- 'Database Administration' => 'Administração da Base de Dados',
- 'Database Driver not checked!' => 'Driver do banco de dados não selecionado!',
- 'Database Host' => 'Servidor de Base de Dados',
- 'Database User missing!' => 'Usuário da base de dados faltando!',
- 'Dataset' => 'Conjunto de dados',
- 'Dataset is newer than version!' => 'Conjunto de dados é mais novo que a versão!',
- 'Dataset missing!' => 'Conjunto de dados faltando!',
- 'Dataset updated!' => 'Conjunto de dados atualizado',
- 'Date' => 'Data',
- 'Date Format' => 'Formato de Data',
- 'Date Paid' => 'Data de pagamento',
- 'Date Received' => 'Data de recebimento',
- 'Date missing!' => 'Data faltando!',
- 'Date received missing!' => 'Data de recebimento faltando!',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Decrease' => 'Decrementar',
- 'Deduct after' => 'Deduzir após',
- 'Deduction deleted!' => 'Dedução apagada!',
- 'Deduction saved!' => 'Dedução salva!',
- 'Deductions' => 'Deduções',
- 'Defaults' => 'Configurações padrão',
- 'Defaults saved!' => 'Configurações padrão salvas!',
- 'Delete' => 'Apagar',
- 'Delete Account' => 'Apagar Conta',
- 'Delete Dataset' => 'Apagar conjunto de dados',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => 'Departamento',
- 'Department deleted!' => 'Departamento apagado!',
- 'Department saved!' => 'Departamento salvo!',
- 'Departments' => 'Departamentos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Description Translations' => 'Descrições Traduzidas',
- 'Description missing!' => 'Descrição faltando!',
- 'Detail' => 'Detalhe',
- 'Difference' => 'Diferença',
- 'Directory' => 'Diretório',
- 'Discount' => 'Desconto',
- 'Done' => 'Feito',
- 'Drawing' => 'Desenho',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Limite de dropdown',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Data de Vencimento faltando!',
- 'E-mail' => 'E-Mail',
- 'E-mail Statement to' => 'Declaração enviada por email para',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar Conta',
- 'Edit Assembly' => 'Editar Conjunto',
- 'Edit Business' => 'Editar Negócio',
- 'Edit Cash Transfer Transaction' => 'Editar transação de transferência de fundos',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => 'Editar Dedução',
- 'Edit Department' => 'Editar Departamento',
- 'Edit Description Translations' => 'Editar Traduções de Descrições',
- 'Edit Employee' => 'Editar Empregado',
- 'Edit GIFI' => 'Editar CFOP',
- 'Edit General Ledger Transaction' => 'Editar Transação Livro Razão',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => 'Editar Trabalho/sobretaxa',
- 'Edit Language' => 'Editar Idioma',
- 'Edit POS Invoice' => 'Editar Fatura de Ponto de Venda',
- 'Edit Part' => 'Editar Parte',
- 'Edit Preferences for' => 'Editar Preferências para',
- 'Edit Pricegroup' => 'Editar Grupo de Preços',
- 'Edit Project' => 'Editar Projeto',
- 'Edit Purchase Order' => 'Editar Pedido de Compra',
- 'Edit Quotation' => 'Editar Cotação',
- 'Edit Request for Quotation' => 'Editar Requisição para Cotação',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Editar Fatura de Venda',
- 'Edit Sales Order' => 'Editar Pedido de Venda',
- 'Edit Service' => 'Editar Serviço',
- 'Edit Template' => 'Editar Modelo',
- 'Edit User' => 'Editar Usuário',
- 'Edit Vendor' => 'Editar Fornecedor',
- 'Edit Vendor Invoice' => 'Editar Fatura de Compra',
- 'Edit Warehouse' => 'Editar Depósito / Armazém',
- 'Employee' => 'Empregado',
- 'Employee Name' => 'Nome do Empregado',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Empregado apagado!',
- 'Employee pays' => 'Pagamentos do Empregado',
- 'Employee saved!' => 'Empregado salvo!',
- 'Employees' => 'Empregados',
- 'Employer' => 'Empregador',
- 'Employer pays' => 'Pagamentos do Empregador',
- 'Enddate' => 'Data Final',
- 'Enforce transaction reversal for all dates' => 'Forçar execução de reversão de transação para todas as datas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entre com até 3 letras separadas por dois pontos (i.e CAD:USD:EUR) para sua moeda local e estrangeira',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Existing Datasets' => 'Conjunto de dados existentes',
- 'Expense' => 'Despesa',
- 'Expense Account' => 'Conta de Despesas',
- 'Expense/Asset' => 'Despesa/Ativo',
- 'Extended' => 'Extendida',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'Foreign Exchange Gain' => 'Ganho com câmbio estrangeiro',
- 'Foreign Exchange Loss' => 'Perda com câmbio estrangeiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GIFI deleted!' => 'CFOP apagado!',
- 'GIFI missing!' => 'CFOP faltando!',
- 'GIFI saved!' => 'CFOP salvo!',
- 'GL Transaction' => 'Transação do Livro Razão',
- 'General Ledger' => 'Livro Razão',
- 'Goods & Services' => 'Produtos e Serviços',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'Group Translations' => 'Traduções de Grupo',
- 'Group deleted!' => 'Grupo apagado!',
- 'Group missing!' => 'Grupo faltando!',
- 'Group saved!' => 'Grupo salvo!',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Modelos HTML',
- 'Heading' => 'Cabeçalho',
- 'History' => 'Histórico',
- 'Home Phone' => 'Fone residencial',
- 'Host' => 'Servidor',
- 'Hostname missing!' => 'Nome do servidor faltando!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Imagem',
- 'In-line' => 'em linha',
- 'Include Exchange Rate Difference' => 'Incluir diferença de taxa de câmbio',
- 'Include in Report' => 'Incluir no Relatório',
- 'Include in drop-down menus' => 'Incluir nos menus drop-down (tipo cortina)',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluir esta conta nos formulários de cliente/fornecedor para marcar cliente/fornecedor como sujeito a impostos.',
- 'Income' => 'Receita',
- 'Income Account' => 'Conta de Receitas',
- 'Income Statement' => 'Estado de Receitas',
- 'Incorrect Dataset version!' => 'Versão incorreta de grupos de dados!',
- 'Incorrect Password!' => 'Senha incorreta!',
- 'Increase' => 'Incrementar',
- 'Individual Items' => 'Ítens individuais',
- 'Internal Notes' => 'Notas internas',
- 'Inventory' => 'Estoque',
- 'Inventory Account' => 'Conta de Estoque',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Quantidade em estoque TEM de ser zero ANTES que você possa tornar este conjunto obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Quantidade em estoque TEM de ser zero ANTES que você possa tornar esta parte/peça obsoleta!',
- 'Inventory saved!' => 'Estoque salvo!',
- 'Inventory transferred!' => 'Estoque transferido!',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Invoice deleted!' => 'Fatura apagada!',
- 'Invoice posted!' => 'Fatura lançada!',
- 'Invoice processed!' => 'Fatura processada!',
- 'Invoices' => 'Faturas',
- 'Is this a summary account to record' => 'Esta é uma conta sumária a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Item apagado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Items' => 'Ítens',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'LaTeX Templates' => 'Modelos LaTeX',
- 'Labor/Overhead' => 'Tabalho/Sobretaxa',
- 'Language' => 'Idioma',
- 'Language deleted!' => 'Idioma apagado1',
- 'Language saved!' => 'Idioma salvo!',
- 'Languages' => 'Idiomas',
- 'Languages not defined!' => 'Idiomas não definidos!',
- 'Last Numbers & Default Accounts' => 'Últimos números e Contas Padrão',
- 'Leadtime' => 'Pré prazo',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deixe os campos de servidor e porta vazios a menos que você queira fazer uma conexão remota',
- 'Liability' => 'Passivo',
- 'Licensed to' => 'Licenciado a',
- 'Line Total' => 'Total da linha',
- 'Link' => 'Ligar',
- 'Link Accounts' => 'Ligar Contas',
- 'List' => '',
- 'List Accounts' => 'Listar Contas',
- 'List Businesses' => 'Listar Negócios',
- 'List Departments' => 'Listar Departamentos',
- 'List GIFI' => 'Listar CFOP',
- 'List Languages' => 'Listar Idiomas',
- 'List Price' => 'Preço de lista',
- 'List Projects' => 'Listar Projetos',
- 'List SIC' => '',
- 'List Transactions' => 'Listar Transações',
- 'List Warehouses' => 'Listar Depósitos / Armazéns',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Acessar/login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout (sair)',
- 'Make' => 'Marca',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'Marked entries printed!' => 'Entradas marcadas impressas!',
- 'Markup' => 'Adicional',
- 'Maximum' => 'Máximo',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Menu Width' => 'Largura do Menu',
- 'Message' => 'Mensagem',
- 'Method' => 'Método',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'N/D',
- 'Name' => 'Nome',
- 'Name missing!' => 'Nome faltando!',
- 'New Templates' => 'Novos Modelos',
- 'No' => 'Não',
- 'No Database Drivers available!' => 'Nenhum driver de banco de dados disponível!',
- 'No Dataset selected!' => 'Nenhum conjunto de dados selecionado!',
- 'No email address for' => 'Sem endereço de email para',
- 'No.' => 'Nro.',
- 'Non-taxable' => 'Isentas',
- 'Non-taxable Purchases' => 'Compras Isentas',
- 'Non-taxable Sales' => 'Vendas Isentas',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Nada entrou!',
- 'Nothing outstanding for ' => 'Nada destacado para ',
- 'Nothing selected!' => 'Nada foi selecionado!',
- 'Nothing to delete!' => 'Nada para apagar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Nada a transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de números',
- 'Number missing in Row' => 'Número faltando na linha',
- 'O' => 'A',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'On Hand' => 'Em Mãos',
- 'Open' => 'Abrir',
- 'Oracle Database Administration' => 'Administração da Base de Dados Oracle',
- 'Order' => 'Pedido',
- 'Order Date' => 'Data de Pedido',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Entry' => 'Entrada de Pedido',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'Order deleted!' => 'Pedido apagado!',
- 'Order processed!' => 'Pedido processado!',
- 'Order saved!' => 'Pedido salvo!',
- 'Orphaned' => 'Ficaram órfãs',
- 'Out of balance transaction!' => 'Transação fora de balanço!',
- 'Out of balance!' => 'Fora de balanço!',
- 'Outstanding' => 'Destacado',
- 'PDF' => 'PDF',
- 'POS' => 'Ponto de Venda',
- 'POS Invoice' => 'Fatura de Ponto de Venda',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Packing Lists' => 'Listas de Empacotamento',
- 'Paid' => 'Total Efetuado',
- 'Part' => 'Parte',
- 'Part Number' => 'Número da Parte',
- 'Partnumber' => '',
- 'Parts' => 'Partes',
- 'Parts Inventory' => 'Estoque de Partes',
- 'Password' => 'Senha',
- 'Password changed!' => 'Senha trocada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'A Pagar',
- 'Payment' => 'Pagamento',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payment posted!' => 'Pagamento Lançado',
- 'Payments' => 'Pagamentos',
- 'Payroll Deduction' => 'Dedução da Folha de Pagamento',
- 'Period' => '',
- 'Pg Database Administration' => 'Administração da Base de Dados PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Pick Lists' => '',
- 'Port' => 'Porta',
- 'Port missing!' => 'Porta faltando!',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Posted!' => 'Lançado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferências',
- 'Preferences saved!' => 'Preferências Salvas!',
- 'Prepayment' => 'Pré-pagamento',
- 'Price' => 'Preço',
- 'Pricegroup' => 'Grupo de Preço',
- 'Pricegroup deleted!' => 'Grupo de Preço apagado!',
- 'Pricegroup missing!' => 'Grupo de Preço faltando!',
- 'Pricegroup saved!' => 'Grupo de Preço salvo!',
- 'Pricegroups' => 'Grupos de Preços',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => 'Impresso',
- 'Printer' => 'Impressora',
- 'Printing ... ' => 'Imprimindo...',
- 'Profit Center' => 'Centro de lucros',
- 'Project' => 'Projeto',
- 'Project Description Translations' => 'Traduções de Descrição de Projeto',
- 'Project Number' => 'Número de Projeto',
- 'Project Number missing!' => 'Número do Projeto faltando!',
- 'Project Transactions' => 'Transações de Projeto',
- 'Project deleted!' => 'Projeto apagado!',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Project saved!' => 'Projeto salvo!',
- 'Projects' => 'Projetos',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtde',
- 'Quantity exceeds available units to stock!' => 'Quantidade excede unidades disponíveis para estocar!',
- 'Quarter' => '',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation ' => '',
- 'Quotation Date' => 'Data de Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number' => 'Número de Cotação',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Quotation deleted!' => 'Cotação apagada!',
- 'Quotations' => 'Cotações',
- 'R' => '',
- 'RFQ' => 'Requisição para Cotação',
- 'RFQ ' => '',
- 'RFQ Number' => 'Número de Requisição para Cotação',
- 'RFQs' => 'Números de Requisições para Cotação',
- 'ROP' => 'Nível mínimo de estoque',
- 'Rate' => 'Taxa',
- 'Rate missing!' => 'Taxa faltando!',
- 'Recd' => 'Recebidos',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo lançado!',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'A Receber',
- 'Receive' => 'Receber',
- 'Receive Merchandise' => 'Receber mercadoria',
- 'Reconciliation' => 'Reconciliação',
- 'Reconciliation Report' => 'Relatório de Reconciliação',
- 'Record in' => 'Registrar em',
- 'Reference' => 'Referência',
- 'Reference missing!' => 'Referência faltando!',
- 'Remaining' => 'Restante',
- 'Remove' => 'Remover',
- 'Remove Audit trails up to' => 'Remover registros de auditoria até ',
- 'Removed spoolfiles!' => 'Remover arquivos temporários',
- 'Removing marked entries from queue ...' => 'Removendo entradas marcadas da fila ...',
- 'Report for' => 'Relatório para',
- 'Reports' => 'Relatórios',
- 'Request for Quotation' => 'Requisição para Cotação',
- 'Request for Quotations' => 'Requisição para Cotações',
- 'Required by' => 'Requerido por',
- 'Retained Earnings' => 'Lucros Retidos',
- 'Role' => 'Papel / Perfil',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'Venda',
- 'Sales' => 'Vendas',
- 'Sales Invoice' => 'Fatura de Venda',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Faturas de Venda',
- 'Sales Order' => 'Pedido de Venda',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Salvar como novo',
- 'Save to File' => 'Salvar para Arquivo',
- 'Screen' => 'Tela',
- 'Search' => 'Buscar',
- 'Select' => 'Selecionar',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Selecionar todos',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Preço de Venda',
- 'Send by E-Mail' => 'Enviar por E-mail',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Serial Number' => 'Número de Série',
- 'Service' => 'Serviço',
- 'Service Items' => 'Ítens de Serviço',
- 'Services' => 'Serviços',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Modelos de Configuração',
- 'Ship' => 'Transportar',
- 'Ship Merchandise' => 'Transportar mercadoria',
- 'Ship to' => 'Transportar para',
- 'Ship via' => 'Transportar via',
- 'Shipping' => 'Transporte',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Shipping Date' => 'Data de transporte',
- 'Shipping Date missing!' => 'Data de transporte faltando!',
- 'Shipping Point' => 'Ponto de Transporte',
- 'Short' => 'Curto',
- 'Signature' => 'Assinatura',
- 'Source' => 'Fonte',
- 'Spoolfile' => 'Arquivo temporário',
- 'Standard' => 'Padrão',
- 'Standard Industrial Codes' => 'Códigos Industriais Padrão',
- 'Startdate' => 'Data inicial',
- 'State' => '',
- 'State/Province' => 'Estado / Província',
- 'Statement' => 'Declaração',
- 'Statement Balance' => 'Declaração de Balanço',
- 'Statement sent to' => 'Declaração enviada para',
- 'Statements sent to printer!' => 'Declaração enviada para impressora!',
- 'Stock' => 'Estoque',
- 'Stock Assembly' => 'Conjunto normal de estoque',
- 'Stylesheet' => 'Folha de estilos',
- 'Sub-contract GIFI' => 'CFOP do sub contrato',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Summary' => 'Sumário',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Configurações Padrão do Sistema',
- 'Tax' => 'Imposto',
- 'Tax Accounts' => 'Contas de Impostos',
- 'Tax Included' => 'Impostos incluídos',
- 'Tax Number' => 'Número do Imposto',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Taxable' => 'Sujeito a impostos',
- 'Template saved!' => 'Modelo salvo!',
- 'Templates' => 'Modelos',
- 'Terms' => 'Crédito Líquido',
- 'Text Templates' => 'Modelos de texto',
- 'The following Datasets are not in use and can be deleted' => 'Os seguintes conjuntos de dados NÃO estão em uso e PODEM ser apagados',
- 'The following Datasets need to be updated' => 'Os seguintes grupos de dados precisam ser atualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta é uma verificação preliminar por fontes existentes. Nada será criado ou apagado neste estágio!',
- 'Till' => 'Até',
- 'To' => 'Para',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para adicionar um usuário a um grupo edite um nome, troque o nome de acesso/login e salve. Um novo usuário com as mesmas variáveis será então salvo sob o novo nome de acesso/login.',
- 'Top Level' => 'Nível superior',
- 'Total' => 'Total',
- 'Trade Discount' => 'Desconto de comércio',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Data de transação faltando!',
- 'Transaction deleted!' => 'Transação apagada!',
- 'Transaction posted!' => 'Transação lançada',
- 'Transaction reversal enforced for all dates' => 'Reversão de transação forçada para todas as datas.',
- 'Transaction reversal enforced up to' => 'Reversão de transação forçada até ',
- 'Transactions' => 'Tansações',
- 'Transfer' => 'Transferência',
- 'Transfer Inventory' => 'Inventário de transferência',
- 'Transfer to' => 'Transferir para',
- 'Translation' => 'Tradução',
- 'Translation deleted!' => 'Tradução apagada!',
- 'Translation not on file!' => '',
- 'Translations' => 'Traduções',
- 'Translations saved!' => 'Traduções salvas!',
- 'Trial Balance' => 'Balanço Preliminar',
- 'Type of Business' => 'Tipo de Negócio',
- 'Unit' => 'Unidade',
- 'Unit of measure' => 'Unidade de medida',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Atualizar',
- 'Update Dataset' => 'Atualizar grupo de dados',
- 'Updated' => 'Atualizado',
- 'Upgrading to Version' => 'Atualizado para versão',
- 'Use Templates' => 'Use Modelos',
- 'User' => 'Usuário',
- 'User deleted!' => 'Usuário apagado!',
- 'User saved!' => 'Usuário salvo',
- 'Valid until' => 'Válido até',
- 'Vendor' => 'Distribuidor',
- 'Vendor History' => 'Histórico do Distribuidor',
- 'Vendor Invoice' => 'Fatura de compra',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Faturas de distribuiror',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor deleted!' => 'Distribuidor apagado!',
- 'Vendor missing!' => 'Distribuidor faltando!',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Vendor saved!' => 'Distribuidor salvo!',
- 'Vendors' => 'Distribuidores',
- 'Version' => 'Versão',
- 'Warehouse' => 'Depósito / Armazém',
- 'Warehouse deleted!' => 'Depósito / Armazém apagado!',
- 'Warehouse saved!' => 'Depósito / Armazém salvo!',
- 'Warehouses' => 'Depósitos / Armazéns',
- 'Warning!' => 'Cuidado!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidade de Peso',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'Work Orders' => '',
- 'Work Phone' => 'Fone comercial',
- 'Year' => '',
- 'Yearend' => 'Fim do ano',
- 'Yearend date missing!' => 'Data do fim do ano faltando!',
- 'Yearend posted!' => 'Fim do ano lançado!',
- 'Yearend posting failed!' => 'Lançamento do fim do ano falhou!',
- 'Yes' => 'Sim',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Você não entrou com um nome',
- 'You must enter a host and port for local and remote connections!' => 'Você precisa entrar um servidor e uma porta para conexões locais e remotas!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'conta não pode ser configurada para qualquer outro tipo de conta',
- 'as at' => 'como em',
- 'days' => 'Dias',
- 'does not exist' => 'Não existe',
- 'done' => 'feito',
- 'ea' => 'cada',
- 'for Period' => 'pelo período',
- 'is already a member!' => 'já é um membro!',
- 'is not a member!' => 'não é um membro!',
- 'localhost' => 'localhost /servidor local',
- 'locked!' => 'travado!',
- 'posted!' => 'lançado!',
- 'sent' => 'enviado',
- 'successfully created!' => 'Criado com sucesso!',
- 'successfully deleted!' => 'Apagado com sucesso!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/br/am b/sql-ledger/locale/br/am
deleted file mode 100644
index e9c7b03..0000000
--- a/sql-ledger/locale/br/am
+++ /dev/null
@@ -1,240 +0,0 @@
-$self{texts} = {
- 'AP' => 'Contas a Pagar',
- 'AR' => 'Contas a Receber',
- 'About' => 'Sobre',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Account Number missing!' => 'Número da Conta não encontrado!',
- 'Account Type' => 'Tipo de Conta',
- 'Account Type missing!' => 'Tipo de Conta não encontrado!',
- 'Account deleted!' => 'Conta apagada!',
- 'Account does not exist!' => 'Conta inexistente!',
- 'Account saved!' => 'Conta salva!',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accrual' => 'Resultado final',
- 'Activate Audit trails' => 'Ativar registros de Auditoria',
- 'Add Account' => 'Adicionar Conta',
- 'Add Business' => 'Adicionar Atividade Comercial',
- 'Add Department' => 'Adicionar Departamento',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Add Language' => 'Adicionar Idioma',
- 'Add Warehouse' => 'Adicionar Depósito / Armazém',
- 'Address' => 'Endereço',
- 'Asset' => 'Ativo',
- 'Audit Control' => 'Controle de Auditoria',
- 'Audit trail removed up to' => 'Registro de Auditoria memovido até',
- 'Audit trails disabled' => 'Registro de Auditoria desabilitado',
- 'Audit trails enabled' => 'Registro de Auditoria habilitado',
- 'Backup sent to' => 'Cópia reserva enviada para',
- 'Books are open' => 'Livros estão abertos',
- 'Business Number' => 'Número de negócio',
- 'Business deleted!' => 'Negócio apagado',
- 'Business saved!' => 'Negócio salvo',
- 'COGS' => 'Custo de Vendas',
- 'Cannot delete account!' => 'Não pode apagar conta!',
- 'Cannot delete default account!' => 'Não pode apagar conta padrão!',
- 'Cannot save account!' => 'Não pode salvar conta!',
- 'Cannot save defaults!' => 'Não pode salvar configurações padrão!',
- 'Cannot save preferences!' => 'Não pode salvar preferências!',
- 'Cash' => 'Caixa',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Código de Contas',
- 'Close Books up to' => 'Encerrar livros até',
- 'Code' => 'Código',
- 'Code missing!' => 'Código faltando!',
- 'Company' => 'Companhia',
- 'Continue' => 'Continuar',
- 'Copy to COA' => 'Copiar para Plano de Contas',
- 'Cost Center' => 'Centro de Custos',
- 'Credit' => 'Crédito',
- 'Customer Number' => 'Número do Cliente',
- 'Database Host' => 'Servidor de Base de Dados',
- 'Dataset' => 'Conjunto de dados',
- 'Date Format' => 'Formato de Data',
- 'Debit' => 'Débito',
- 'Defaults saved!' => 'Configurações padrão salvas!',
- 'Delete' => 'Apagar',
- 'Delete Account' => 'Apagar Conta',
- 'Department deleted!' => 'Departamento apagado!',
- 'Department saved!' => 'Departamento salvo!',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descrição',
- 'Description missing!' => 'Descrição faltando!',
- 'Discount' => 'Desconto',
- 'Dropdown Limit' => 'Limite de dropdown',
- 'E-mail' => 'E-Mail',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar Conta',
- 'Edit Business' => 'Editar Negócio',
- 'Edit Department' => 'Editar Departamento',
- 'Edit GIFI' => 'Editar CFOP',
- 'Edit Language' => 'Editar Idioma',
- 'Edit Preferences for' => 'Editar Preferências para',
- 'Edit Template' => 'Editar Modelo',
- 'Edit Warehouse' => 'Editar Depósito / Armazém',
- 'Enforce transaction reversal for all dates' => 'Forçar execução de reversão de transação para todas as datas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entre com até 3 letras separadas por dois pontos (i.e CAD:USD:EUR) para sua moeda local e estrangeira',
- 'Equity' => 'Capital',
- 'Expense' => 'Despesa',
- 'Expense Account' => 'Conta de Despesas',
- 'Expense/Asset' => 'Despesa/Ativo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganho com câmbio estrangeiro',
- 'Foreign Exchange Loss' => 'Perda com câmbio estrangeiro',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GIFI deleted!' => 'CFOP apagado!',
- 'GIFI missing!' => 'CFOP faltando!',
- 'GIFI saved!' => 'CFOP salvo!',
- 'Heading' => 'Cabeçalho',
- 'Include in drop-down menus' => 'Incluir nos menus drop-down (tipo cortina)',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluir esta conta nos formulários de cliente/fornecedor para marcar cliente/fornecedor como sujeito a impostos.',
- 'Income' => 'Receita',
- 'Income Account' => 'Conta de Receitas',
- 'Inventory' => 'Estoque',
- 'Inventory Account' => 'Conta de Estoque',
- 'Is this a summary account to record' => 'Esta é uma conta sumária a registrar?',
- 'Labor/Overhead' => 'Tabalho/Sobretaxa',
- 'Language' => 'Idioma',
- 'Language deleted!' => 'Idioma apagado1',
- 'Language saved!' => 'Idioma salvo!',
- 'Languages' => 'Idiomas',
- 'Last Numbers & Default Accounts' => 'Últimos números e Contas Padrão',
- 'Liability' => 'Passivo',
- 'Licensed to' => 'Licenciado a',
- 'Link' => 'Ligar',
- 'Menu Width' => 'Largura do Menu',
- 'Method' => 'Método',
- 'Name' => 'Nome',
- 'No' => 'Não',
- 'No email address for' => 'Sem endereço de email para',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de números',
- 'Parts Inventory' => 'Estoque de Partes',
- 'Password' => 'Senha',
- 'Payables' => 'A Pagar',
- 'Payment' => 'Pagamento',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Preferências Salvas!',
- 'Printer' => 'Impressora',
- 'Profit Center' => 'Centro de lucros',
- 'RFQ Number' => 'Número de Requisição para Cotação',
- 'Rate' => 'Taxa',
- 'Receivables' => 'A Receber',
- 'Reference' => 'Referência',
- 'Remove Audit trails up to' => 'Remover registros de auditoria até ',
- 'Retained Earnings' => 'Lucros Retidos',
- 'Save' => 'Salvar',
- 'Save as new' => 'Salvar como novo',
- 'Service Items' => 'Ítens de Serviço',
- 'Signature' => 'Assinatura',
- 'Standard Industrial Codes' => 'Códigos Industriais Padrão',
- 'Stylesheet' => 'Folha de estilos',
- 'System Defaults' => 'Configurações Padrão do Sistema',
- 'Tax' => 'Imposto',
- 'Tax Accounts' => 'Contas de Impostos',
- 'Template saved!' => 'Modelo salvo!',
- 'Transaction reversal enforced for all dates' => 'Reversão de transação forçada para todas as datas.',
- 'Transaction reversal enforced up to' => 'Reversão de transação forçada até ',
- 'Type of Business' => 'Tipo de Negócio',
- 'User' => 'Usuário',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Version' => 'Versão',
- 'Warehouse deleted!' => 'Depósito / Armazém apagado!',
- 'Warehouse saved!' => 'Depósito / Armazém salvo!',
- 'Warehouses' => 'Depósitos / Armazéns',
- 'Weight Unit' => 'Unidade de Peso',
- 'Yearend' => 'Fim do ano',
- 'Yearend date missing!' => 'Data do fim do ano faltando!',
- 'Yearend posted!' => 'Fim do ano lançado!',
- 'Yearend posting failed!' => 'Lançamento do fim do ano falhou!',
- 'Yes' => 'Sim',
- 'account cannot be set to any other type of account' => 'conta não pode ser configurada para qualquer outro tipo de conta',
- 'localhost' => 'localhost /servidor local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'adicionar_conta' => 'add_account',
- 'adicionar_atividade_comercial' => 'add_business',
- 'adicionar_departamento' => 'add_department',
- 'adicionar_idioma' => 'add_language',
- 'add_sic' => 'add_sic',
- 'adicionar_depósito_/_armazém' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_para_plano_de_contas' => 'copy_to_coa',
- 'apagar' => 'delete',
- 'editar' => 'edit',
- 'editar_conta' => 'edit_account',
- 'salvar' => 'save',
- 'salvar_como_novo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ap b/sql-ledger/locale/br/ap
deleted file mode 100644
index c6794d3..0000000
--- a/sql-ledger/locale/br/ap
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Contas a Pagar Destacadas',
- 'AP Transaction' => 'Transação - Contas a Pagar',
- 'AP Transactions' => 'Transações - Contas a Pagar',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total Devido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem certeza que quer APAGAR a Transação',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Não pode apagar transação!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não pode lançar transação para um período já encerrado!',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Check' => 'Cheque',
- 'Closed' => 'Fechado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Data de Vencimento faltando!',
- 'Employee' => 'Empregado',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Pedido',
- 'Order Number' => 'Pedido Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Efetuado',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payments' => 'Pagamentos',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Restante',
- 'Screen' => 'Tela',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Fonte',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transação apagada!',
- 'Transaction posted!' => 'Transação lançada',
- 'Update' => 'Atualizar',
- 'Vendor' => 'Distribuidor',
- 'Vendor missing!' => 'Distribuidor faltando!',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transação___contas_a_pagar' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'atualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ar b/sql-ledger/locale/br/ar
deleted file mode 100644
index 3de824a..0000000
--- a/sql-ledger/locale/br/ar
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Contas a Receber Destacadas',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'AR Transactions' => 'Transações - Contas a Receber',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total Devido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem certeza que quer APAGAR a Transação',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Não pode apagar transação!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não pode lançar transação para um período já encerrado!',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Check' => 'Cheque',
- 'Closed' => 'Fechado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente faltando!',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Data de Vencimento faltando!',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Pedido',
- 'Order Number' => 'Pedido Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Efetuado',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payments' => 'Pagamentos',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Restante',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Tela',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Ship via' => 'Transportar via',
- 'Shipping Point' => 'Ponto de Transporte',
- 'Source' => 'Fonte',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Till' => 'Até',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transação apagada!',
- 'Transaction posted!' => 'Transação lançada',
- 'Update' => 'Atualizar',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transação___contas_a_receber' => 'ar_transaction',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'atualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/arap b/sql-ledger/locale/br/arap
deleted file mode 100644
index e68b5eb..0000000
--- a/sql-ledger/locale/br/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Endereço',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Description' => 'Descrição',
- 'Number' => 'Número',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/br/arapprn b/sql-ledger/locale/br/arapprn
deleted file mode 100644
index bdcd766..0000000
--- a/sql-ledger/locale/br/arapprn
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Data',
- 'Memo' => 'Memorando',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impresso',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Tela',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Source' => 'Fonte',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/br/bp b/sql-ledger/locale/br/bp
deleted file mode 100644
index 95faf8b..0000000
--- a/sql-ledger/locale/br/bp
+++ /dev/null
@@ -1,60 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Tem certeza que quer REMOVER da fila as entradas marcadas?',
- 'Cannot remove files!' => 'Não pode remover arquivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Date' => 'Data',
- 'From' => 'De',
- 'Invoice' => 'Fatura',
- 'Invoice Number' => 'Número de Fatura',
- 'Marked entries printed!' => 'Entradas marcadas impressas!',
- 'Order' => 'Pedido',
- 'Order Number' => 'Pedido Número',
- 'Packing Lists' => 'Listas de Empacotamento',
- 'Print' => 'Imprimir',
- 'Printing ... ' => 'Imprimindo...',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Quotation' => 'Cotação',
- 'Quotation Number' => 'Número de Cotação',
- 'Quotations' => 'Cotações',
- 'RFQs' => 'Números de Requisições para Cotação',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referência',
- 'Remove' => 'Remover',
- 'Removed spoolfiles!' => 'Remover arquivos temporários',
- 'Removing marked entries from queue ...' => 'Removendo entradas marcadas da fila ...',
- 'Sales Invoices' => 'Faturas de Venda',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Select all' => 'Selecionar todos',
- 'Spoolfile' => 'Arquivo temporário',
- 'To' => 'Para',
- 'Vendor' => 'Distribuidor',
- 'Yes' => 'Sim',
- 'done' => 'feito',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'remover' => 'remove',
- 'selecionar_todos' => 'select_all',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ca b/sql-ledger/locale/br/ca
deleted file mode 100644
index 2ddddf4..0000000
--- a/sql-ledger/locale/br/ca
+++ /dev/null
@@ -1,53 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balanço',
- 'Chart of Accounts' => 'Código de Contas',
- 'Credit' => 'Crédito',
- 'Current' => 'Corrente',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Include in Report' => 'Incluir no Relatório',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'List Transactions' => 'Listar Transações',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Project Number' => 'Número de Projeto',
- 'Reference' => 'Referência',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Para',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transações' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/br/cp b/sql-ledger/locale/br/cp
deleted file mode 100644
index e4e6763..0000000
--- a/sql-ledger/locale/br/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Contas a Pagar',
- 'AR' => 'Contas a Receber',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'All' => 'Todas',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total Devido',
- 'Cannot post Payment!' => 'Não pode lançar Pagamento!',
- 'Cannot post Receipt!' => 'Não pode lançar Recebimento!',
- 'Cannot process payment for a closed period!' => 'Não pode processar pagamento para um pedíodo já encerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Date missing!' => 'Data faltando!',
- 'Department' => 'Departamento',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Invoice' => 'Fatura',
- 'Invoices' => 'Faturas',
- 'Memo' => 'Memorando',
- 'Nothing outstanding for ' => 'Nada destacado para ',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Pagamento',
- 'Payment posted!' => 'Pagamento Lançado',
- 'Post' => 'Lançar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Pré-pagamento',
- 'Print' => 'Imprimir',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Queue' => 'Fila',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo lançado!',
- 'Screen' => 'Tela',
- 'Select' => 'Selecionar',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Source' => 'Fonte',
- 'Update' => 'Atualizar',
- 'Vendor' => 'Distribuidor',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'lançar' => 'post',
- 'imprimir' => 'print',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ct b/sql-ledger/locale/br/ct
deleted file mode 100644
index 294451a..0000000
--- a/sql-ledger/locale/br/ct
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transação - Contas a Pagar',
- 'AP Transactions' => 'Transações - Contas a Pagar',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'AR Transactions' => 'Transações - Contas a Receber',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Customer' => 'Adicionar Cliente',
- 'Add Vendor' => 'Adicionar Distribuidor',
- 'Address' => 'Endereço',
- 'All' => 'Todas',
- 'Amount' => 'Total',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Break' => 'Quebra',
- 'Cannot delete customer!' => 'Não pode apagar cliente!',
- 'Cannot delete vendor!' => 'Não pode apagar fornecedor!',
- 'Cc' => 'Cc',
- 'City' => 'Cidade',
- 'Closed' => 'Fechado',
- 'Company Name' => 'Nome da Companhia',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Cost' => 'Custo',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer History' => 'Histórico do Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer deleted!' => 'Cliente apagado!',
- 'Customer saved!' => 'Cliente salvo',
- 'Customers' => 'Clientes',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Detail' => 'Detalhe',
- 'Discount' => 'Desconto',
- 'E-mail' => 'E-Mail',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Fornecedor',
- 'Employee' => 'Empregado',
- 'Enddate' => 'Data Final',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Group' => 'Grupo',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Fatura',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Language' => 'Idioma',
- 'Leadtime' => 'Pré prazo',
- 'Manager' => 'Gerente',
- 'Name' => 'Nome',
- 'Name missing!' => 'Nome faltando!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abrir',
- 'Order' => 'Pedido',
- 'Orphaned' => 'Ficaram órfãs',
- 'Part Number' => 'Número da Parte',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Grupo de Preço',
- 'Project Number' => 'Número de Projeto',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtde',
- 'Quotation' => 'Cotação',
- 'Quotations' => 'Cotações',
- 'RFQ' => 'Requisição para Cotação',
- 'Request for Quotations' => 'Requisição para Cotações',
- 'Sales Invoice' => 'Fatura de Venda',
- 'Sales Invoices' => 'Faturas de Venda',
- 'Sales Order' => 'Pedido de Venda',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Search' => 'Buscar',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Sell Price' => 'Preço de Venda',
- 'Serial Number' => 'Número de Série',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Startdate' => 'Data inicial',
- 'State/Province' => 'Estado / Província',
- 'Sub-contract GIFI' => 'CFOP do sub contrato',
- 'Subtotal' => 'Sub-total',
- 'Summary' => 'Sumário',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Tax Number' => 'Número do Imposto',
- 'Taxable' => 'Sujeito a impostos',
- 'Terms' => 'Crédito Líquido',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Type of Business' => 'Tipo de Negócio',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
- 'Vendor History' => 'Histórico do Distribuidor',
- 'Vendor Invoice' => 'Fatura de compra',
- 'Vendor Invoices' => 'Faturas de distribuiror',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor deleted!' => 'Distribuidor apagado!',
- 'Vendor saved!' => 'Distribuidor salvo!',
- 'Vendors' => 'Distribuidores',
- 'days' => 'Dias',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transação___contas_a_pagar' => 'ap_transaction',
- 'transação___contas_a_receber' => 'ar_transaction',
- 'adicionar_cliente' => 'add_customer',
- 'adicionar_distribuidor' => 'add_vendor',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'pricelist' => 'pricelist',
- 'ordem_de_compra' => 'purchase_order',
- 'cotação' => 'quotation',
- 'requisição_para_cotação' => 'rfq',
- 'fatura_de_venda' => 'sales_invoice',
- 'pedido_de_venda' => 'sales_order',
- 'salvar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'atualizar' => 'update',
- 'fatura_de_compra' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/br/gl b/sql-ledger/locale/br/gl
deleted file mode 100644
index cf80e89..0000000
--- a/sql-ledger/locale/br/gl
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transação - Contas a Pagar',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Cash Transfer Transaction' => 'Adicionar Transação de Transferência de Fundos',
- 'Add General Ledger Transaction' => 'Adicionar Transação Livro Razão',
- 'Address' => 'Endereço',
- 'All' => 'Todas',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem certeza que quer APAGAR a Transação',
- 'Asset' => 'Ativo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balanço',
- 'Cannot delete transaction!' => 'Não pode apagar transação!',
- 'Cannot post transaction for a closed period!' => 'Não pode lançar transação para um período já encerrado!',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crédito',
- 'Current' => 'Corrente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Edit Cash Transfer Transaction' => 'Editar transação de transferência de fundos',
- 'Edit General Ledger Transaction' => 'Editar Transação Livro Razão',
- 'Equity' => 'Capital',
- 'Expense' => 'Despesa',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GL Transaction' => 'Transação do Livro Razão',
- 'General Ledger' => 'Livro Razão',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income' => 'Receita',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Liability' => 'Passivo',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Out of balance transaction!' => 'Transação fora de balanço!',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Project' => 'Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Reference' => 'Referência',
- 'Reference missing!' => 'Referência faltando!',
- 'Reports' => 'Relatórios',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Fonte',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Para',
- 'Transaction Date missing!' => 'Data de transação faltando!',
- 'Transaction deleted!' => 'Transação apagada!',
- 'Transaction posted!' => 'Transação lançada',
- 'Update' => 'Atualizar',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Warning!' => 'Cuidado!',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transação___contas_a_pagar' => 'ap_transaction',
- 'transação___contas_a_receber' => 'ar_transaction',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'transação_do_livro_razão' => 'gl_transaction',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'atualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/hr b/sql-ledger/locale/br/hr
deleted file mode 100644
index d77f581..0000000
--- a/sql-ledger/locale/br/hr
+++ /dev/null
@@ -1,103 +0,0 @@
-$self{texts} = {
- 'AP' => 'Contas a Pagar',
- 'Above' => 'Acima',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Deduction' => 'Adicionar Dedução',
- 'Add Employee' => 'Adicionar Empregado',
- 'Address' => 'Endereço',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Após Dedução',
- 'All' => 'Todas',
- 'Allowances' => 'Permissões',
- 'Amount' => 'Total',
- 'Amount missing!' => 'Total faltando!',
- 'Based on' => 'Baseado em',
- 'Before Deduction' => 'Antes da Dedução',
- 'Below' => 'Abaixo',
- 'City' => 'Cidade',
- 'Continue' => 'Continuar',
- 'Deduct after' => 'Deduzir após',
- 'Deduction deleted!' => 'Dedução apagada!',
- 'Deduction saved!' => 'Dedução salva!',
- 'Deductions' => 'Deduções',
- 'Delete' => 'Apagar',
- 'Description' => 'Descrição',
- 'Description missing!' => 'Descrição faltando!',
- 'E-mail' => 'E-Mail',
- 'Edit Deduction' => 'Editar Dedução',
- 'Edit Employee' => 'Editar Empregado',
- 'Employee' => 'Empregado',
- 'Employee Name' => 'Nome do Empregado',
- 'Employee deleted!' => 'Empregado apagado!',
- 'Employee pays' => 'Pagamentos do Empregado',
- 'Employee saved!' => 'Empregado salvo!',
- 'Employees' => 'Empregados',
- 'Employer' => 'Empregador',
- 'Employer pays' => 'Pagamentos do Empregador',
- 'Enddate' => 'Data Final',
- 'Expense' => 'Despesa',
- 'Home Phone' => 'Fone residencial',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Login' => 'Acessar/login',
- 'Manager' => 'Gerente',
- 'Maximum' => 'Máximo',
- 'Name' => 'Nome',
- 'Name missing!' => 'Nome faltando!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Ficaram órfãs',
- 'Payroll Deduction' => 'Dedução da Folha de Pagamento',
- 'Rate' => 'Taxa',
- 'Rate missing!' => 'Taxa faltando!',
- 'Role' => 'Papel / Perfil',
- 'Sales' => 'Vendas',
- 'Save' => 'Salvar',
- 'Save as new' => 'Salvar como novo',
- 'Startdate' => 'Data inicial',
- 'State/Province' => 'Estado / Província',
- 'Update' => 'Atualizar',
- 'User' => 'Usuário',
- 'Work Phone' => 'Fone comercial',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'adicionar_dedução' => 'add_deduction',
- 'adicionar_empregado' => 'add_employee',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'salvar' => 'save',
- 'salvar_como_novo' => 'save_as_new',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ic b/sql-ledger/locale/br/ic
deleted file mode 100644
index 9b5528c..0000000
--- a/sql-ledger/locale/br/ic
+++ /dev/null
@@ -1,266 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accrual' => 'Resultado final',
- 'Active' => 'Ativa',
- 'Add' => 'Adicionar',
- 'Add Assembly' => 'Adicionar Conjunto',
- 'Add Labor/Overhead' => 'Adicionar Trabalho/Sobretaxa',
- 'Add Part' => 'Adicionar Parte',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Add Service' => 'Adicionar Serviço',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Conjuntos',
- 'Assemblies restocked!' => 'Conjuntos re estocados',
- 'Assembly' => 'Conjunto',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Lista de Material',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Break' => 'Quebra',
- 'COGS' => 'Custo de Vendas',
- 'Cannot delete item!' => 'Não pode apagar item!',
- 'Cannot stock assemblies!' => 'Não pode estocar conjuntos!',
- 'Cash' => 'Caixa',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Inventário de cheques',
- 'City' => 'Cidade',
- 'Closed' => 'Fechado',
- 'Company Name' => 'Nome da Companhia',
- 'Components' => 'Componentes',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Cost' => 'Custo',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Drawing' => 'Desenho',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit Assembly' => 'Editar Conjunto',
- 'Edit Labor/Overhead' => 'Editar Trabalho/sobretaxa',
- 'Edit Part' => 'Editar Parte',
- 'Edit Service' => 'Editar Serviço',
- 'Employee' => 'Empregado',
- 'Expense' => 'Despesa',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'Image' => 'Imagem',
- 'In-line' => 'em linha',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income' => 'Receita',
- 'Individual Items' => 'Ítens individuais',
- 'Inventory' => 'Estoque',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Quantidade em estoque TEM de ser zero ANTES que você possa tornar este conjunto obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Quantidade em estoque TEM de ser zero ANTES que você possa tornar esta parte/peça obsoleta!',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Item deleted!' => 'Item apagado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Items' => 'Ítens',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Labor/Overhead' => 'Tabalho/Sobretaxa',
- 'Leadtime' => 'Pré prazo',
- 'Line Total' => 'Total da linha',
- 'Link Accounts' => 'Ligar Contas',
- 'List Price' => 'Preço de lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'Markup' => 'Adicional',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nome',
- 'No.' => 'Nro.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'On Hand' => 'Em Mãos',
- 'Open' => 'Abrir',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'Orphaned' => 'Ficaram órfãs',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Part' => 'Parte',
- 'Parts' => 'Partes',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Pricegroup' => 'Grupo de Preço',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtde',
- 'Quantity exceeds available units to stock!' => 'Quantidade excede unidades disponíveis para estocar!',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Quotations' => 'Cotações',
- 'RFQ' => 'Requisição para Cotação',
- 'ROP' => 'Nível mínimo de estoque',
- 'Recd' => 'Recebidos',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Fatura de Venda',
- 'Sales Invoices' => 'Faturas de Venda',
- 'Sales Order' => 'Pedido de Venda',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Save' => 'Salvar',
- 'Save as new' => 'Salvar como novo',
- 'Screen' => 'Tela',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Sell Price' => 'Preço de Venda',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Serial Number' => 'Número de Série',
- 'Service' => 'Serviço',
- 'Services' => 'Serviços',
- 'Ship' => 'Transportar',
- 'Ship to' => 'Transportar para',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Short' => 'Curto',
- 'State/Province' => 'Estado / Província',
- 'Stock' => 'Estoque',
- 'Stock Assembly' => 'Conjunto normal de estoque',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'To' => 'Para',
- 'Top Level' => 'Nível superior',
- 'Unit' => 'Unidade',
- 'Unit of measure' => 'Unidade de medida',
- 'Update' => 'Atualizar',
- 'Updated' => 'Atualizado',
- 'Vendor' => 'Distribuidor',
- 'Vendor Invoice' => 'Fatura de compra',
- 'Vendor Invoices' => 'Faturas de distribuiror',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Warehouse' => 'Depósito / Armazém',
- 'Weight' => 'Peso',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'days' => 'Dias',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'adicionar_conjunto' => 'add_assembly',
- 'adicionar_trabalho/sobretaxa' => 'add_labor/overhead',
- 'adicionar_parte' => 'add_part',
- 'adicionar_serviço' => 'add_service',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'editar_conjunto' => 'edit_assembly',
- 'editar_parte' => 'edit_part',
- 'editar_serviço' => 'edit_service',
- 'salvar' => 'save',
- 'salvar_como_novo' => 'save_as_new',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/io b/sql-ledger/locale/br/io
deleted file mode 100644
index acc61b9..0000000
--- a/sql-ledger/locale/br/io
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Address' => 'Endereço',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Cc' => 'Cc',
- 'City' => 'Cidade',
- 'Company Name' => 'Nome da Companhia',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Customer Number' => 'Número do Cliente',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'In-line' => 'em linha',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'No.' => 'Nro.',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Part' => 'Parte',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtde',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Recd' => 'Recebidos',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Pedido de Venda',
- 'Screen' => 'Tela',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Service' => 'Serviço',
- 'Ship' => 'Transportar',
- 'Ship to' => 'Transportar para',
- 'Shipping Address' => 'Endereço para Transporte',
- 'State/Province' => 'Estado / Província',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Para',
- 'Unit' => 'Unidade',
- 'Vendor Number' => 'Número de Distribuidor',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ir b/sql-ledger/locale/br/ir
deleted file mode 100644
index f756d68..0000000
--- a/sql-ledger/locale/br/ir
+++ /dev/null
@@ -1,211 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Add Vendor Invoice' => 'Adicionar Fatura de Compra',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem certeza que quer APAGAR a Fatura Número',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Cannot delete invoice!' => 'Não pode apagar fatura!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar fatura em período fechado!',
- 'Cannot post invoice!' => 'Não pode lançar fatura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cc' => 'Cc',
- 'City' => 'Cidade',
- 'Company Name' => 'Nome da Companhia',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Customer Number' => 'Número do Cliente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit Vendor Invoice' => 'Editar Fatura de Compra',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'In-line' => 'em linha',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Invoice deleted!' => 'Fatura apagada!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Message' => 'Mensagem',
- 'No.' => 'Nro.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtde',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Recd' => 'Recebidos',
- 'Record in' => 'Registrar em',
- 'Remaining' => 'Restante',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Pedido de Venda',
- 'Screen' => 'Tela',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Service' => 'Serviço',
- 'Ship' => 'Transportar',
- 'Ship to' => 'Transportar para',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Source' => 'Fonte',
- 'State/Province' => 'Estado / Província',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
- 'Vendor' => 'Distribuidor',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor missing!' => 'Distribuidor faltando!',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'Yes' => 'Sim',
- 'ea' => 'cada',
- 'posted!' => 'lançado!',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'ordem_de_compra' => 'purchase_order',
- 'atualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/is b/sql-ledger/locale/br/is
deleted file mode 100644
index 84c5f85..0000000
--- a/sql-ledger/locale/br/is
+++ /dev/null
@@ -1,224 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Invoice' => 'Adicionar Fatura de Venda',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem certeza que quer APAGAR a Fatura Número',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Business' => 'Negócio',
- 'Cannot delete invoice!' => 'Não pode apagar fatura!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar fatura em período fechado!',
- 'Cannot post invoice!' => 'Não pode lançar fatura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cc' => 'Cc',
- 'City' => 'Cidade',
- 'Company Name' => 'Nome da Companhia',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer missing!' => 'Cliente faltando!',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit Sales Invoice' => 'Editar Fatura de Venda',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'In-line' => 'em linha',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Invoice deleted!' => 'Fatura apagada!',
- 'Invoice posted!' => 'Fatura lançada!',
- 'Invoice processed!' => 'Fatura processada!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Message' => 'Mensagem',
- 'No.' => 'Nro.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtde',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Recd' => 'Recebidos',
- 'Record in' => 'Registrar em',
- 'Remaining' => 'Restante',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Pedido de Venda',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Tela',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Service' => 'Serviço',
- 'Ship' => 'Transportar',
- 'Ship to' => 'Transportar para',
- 'Ship via' => 'Transportar via',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Shipping Point' => 'Ponto de Transporte',
- 'Source' => 'Fonte',
- 'State/Province' => 'Estado / Província',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Trade Discount' => 'Desconto de comércio',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'Yes' => 'Sim',
- 'ea' => 'cada',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'e_mail' => 'e_mail',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'pedido_de_venda' => 'sales_order',
- 'transportar_para' => 'ship_to',
- 'atualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/login b/sql-ledger/locale/br/login
deleted file mode 100644
index 98fadaf..0000000
--- a/sql-ledger/locale/br/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Companhia',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'Conjunto de dados é mais novo que a versão!',
- 'Incorrect Dataset version!' => 'Versão incorreta de grupos de dados!',
- 'Incorrect Password!' => 'Senha incorreta!',
- 'Login' => 'Acessar/login',
- 'Name' => 'Nome',
- 'Password' => 'Senha',
- 'Upgrading to Version' => 'Atualizado para versão',
- 'Version' => 'Versão',
- 'You did not enter a name!' => 'Você não entrou com um nome',
- 'done' => 'feito',
- 'is not a member!' => 'não é um membro!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'acessar/login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/br/menu b/sql-ledger/locale/br/menu
deleted file mode 100644
index 510810c..0000000
--- a/sql-ledger/locale/br/menu
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP' => 'Contas a Pagar',
- 'AP Aging' => 'Contas a Pagar Vencidas',
- 'AP Transaction' => 'Transação - Contas a Pagar',
- 'AR' => 'Contas a Receber',
- 'AR Aging' => 'Contas a Receber Vencidas',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Account' => 'Adicionar Conta',
- 'Add Assembly' => 'Adicionar Conjunto',
- 'Add Business' => 'Adicionar Atividade Comercial',
- 'Add Customer' => 'Adicionar Cliente',
- 'Add Department' => 'Adicionar Departamento',
- 'Add Employee' => 'Adicionar Empregado',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Add Group' => 'Adicionar Grupo',
- 'Add Labor/Overhead' => 'Adicionar Trabalho/Sobretaxa',
- 'Add Language' => 'Adicionar Idioma',
- 'Add Part' => 'Adicionar Parte',
- 'Add Pricegroup' => 'Adicionar Grupo de Preços',
- 'Add Project' => 'Adicionar projeto',
- 'Add Service' => 'Adicionar Serviço',
- 'Add Transaction' => 'Adicionar Transação',
- 'Add Vendor' => 'Adicionar Distribuidor',
- 'Add Warehouse' => 'Adicionar Depósito / Armazém',
- 'All Items' => 'Todos Ítens',
- 'Assemblies' => 'Conjuntos',
- 'Audit Control' => 'Controle de Auditoria',
- 'Backup' => 'Cópia de reserva',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Batch Printing' => 'Impressão em lote',
- 'Bin List' => 'Lista de bandeja',
- 'Cash' => 'Caixa',
- 'Chart of Accounts' => 'Código de Contas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Configurações padrão',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descrição',
- 'Employees' => 'Empregados',
- 'General Ledger' => 'Livro Razão',
- 'Goods & Services' => 'Produtos e Serviços',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Modelos HTML',
- 'History' => 'Histórico',
- 'Income Statement' => 'Estado de Receitas',
- 'Invoice' => 'Fatura',
- 'LaTeX Templates' => 'Modelos LaTeX',
- 'Labor/Overhead' => 'Tabalho/Sobretaxa',
- 'Language' => 'Idioma',
- 'List Accounts' => 'Listar Contas',
- 'List Businesses' => 'Listar Negócios',
- 'List Departments' => 'Listar Departamentos',
- 'List GIFI' => 'Listar CFOP',
- 'List Languages' => 'Listar Idiomas',
- 'List Projects' => 'Listar Projetos',
- 'List Warehouses' => 'Listar Depósitos / Armazéns',
- 'Logout' => 'Logout (sair)',
- 'Non-taxable' => 'Isentas',
- 'Open' => 'Abrir',
- 'Order Entry' => 'Entrada de Pedido',
- 'Outstanding' => 'Destacado',
- 'POS' => 'Ponto de Venda',
- 'POS Invoice' => 'Fatura de Ponto de Venda',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing Lists' => 'Listas de Empacotamento',
- 'Parts' => 'Partes',
- 'Payment' => 'Pagamento',
- 'Payments' => 'Pagamentos',
- 'Pick List' => 'Lista de Seleção',
- 'Preferences' => 'Preferências',
- 'Pricegroups' => 'Grupos de Preços',
- 'Print' => 'Imprimir',
- 'Projects' => 'Projetos',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Quotation' => 'Cotação',
- 'Quotations' => 'Cotações',
- 'RFQ' => 'Requisição para Cotação',
- 'RFQs' => 'Números de Requisições para Cotação',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Receive' => 'Receber',
- 'Reconciliation' => 'Reconciliação',
- 'Reports' => 'Relatórios',
- 'Sale' => 'Venda',
- 'Sales Invoice' => 'Fatura de Venda',
- 'Sales Invoices' => 'Faturas de Venda',
- 'Sales Order' => 'Pedido de Venda',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Save to File' => 'Salvar para Arquivo',
- 'Search' => 'Buscar',
- 'Send by E-Mail' => 'Enviar por E-mail',
- 'Services' => 'Serviços',
- 'Ship' => 'Transportar',
- 'Shipping' => 'Transporte',
- 'Statement' => 'Declaração',
- 'Stock Assembly' => 'Conjunto normal de estoque',
- 'Stylesheet' => 'Folha de estilos',
- 'System' => 'Sistema',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Text Templates' => 'Modelos de texto',
- 'Transactions' => 'Tansações',
- 'Transfer' => 'Transferência',
- 'Translations' => 'Traduções',
- 'Trial Balance' => 'Balanço Preliminar',
- 'Type of Business' => 'Tipo de Negócio',
- 'Vendor Invoice' => 'Fatura de compra',
- 'Vendors' => 'Distribuidores',
- 'Version' => 'Versão',
- 'Warehouses' => 'Depósitos / Armazéns',
- 'Work Order' => 'Ordem de Trabalho',
- 'Yearend' => 'Fim do ano',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/br/oe b/sql-ledger/locale/br/oe
deleted file mode 100644
index 37bef3f..0000000
--- a/sql-ledger/locale/br/oe
+++ /dev/null
@@ -1,295 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Exchange Rate' => 'Adicionar Taxa de Câmbio',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Invoice' => 'Adicionar Fatura de Venda',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Add Vendor Invoice' => 'Adicionar Fatura de Compra',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => 'Tem certeza que quer APAGAR tal número de Pedido?',
- 'Are you sure you want to delete Quotation Number' => 'Tem certeza que quer APAGAR tal número de Cotação?',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Business' => 'Negócio',
- 'C' => 'F',
- 'Cannot delete order!' => 'Não pode apagar pedido!',
- 'Cannot delete quotation!' => 'Não pode apagar cotação',
- 'Cannot save order!' => 'Não pode salvar pedido!',
- 'Cannot save quotation!' => 'Não pode salvar cotação!',
- 'Cc' => 'Cc',
- 'City' => 'Cidade',
- 'Closed' => 'Fechado',
- 'Company Name' => 'Nome da Companhia',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Could not save!' => 'Não pode salvar!',
- 'Could not transfer Inventory!' => 'Não pode transferir inventário!',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer missing!' => 'Cliente faltando!',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Date Received' => 'Data de recebimento',
- 'Date received missing!' => 'Data de recebimento faltando!',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Done' => 'Feito',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit Purchase Order' => 'Editar Pedido de Compra',
- 'Edit Quotation' => 'Editar Cotação',
- 'Edit Request for Quotation' => 'Editar Requisição para Cotação',
- 'Edit Sales Order' => 'Editar Pedido de Venda',
- 'Employee' => 'Empregado',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'ID' => 'ID',
- 'In-line' => 'em linha',
- 'Include in Report' => 'Incluir no Relatório',
- 'Internal Notes' => 'Notas internas',
- 'Inventory saved!' => 'Estoque salvo!',
- 'Inventory transferred!' => 'Estoque transferido!',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'No.' => 'Nro.',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Nada entrou!',
- 'Nothing to transfer!' => 'Nada a transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'O' => 'A',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Pedido',
- 'Order Date' => 'Data de Pedido',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'Order deleted!' => 'Pedido apagado!',
- 'Order processed!' => 'Pedido processado!',
- 'Order saved!' => 'Pedido salvo!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Part' => 'Parte',
- 'Part Number' => 'Número da Parte',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtde',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date' => 'Data de Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number' => 'Número de Cotação',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Quotation deleted!' => 'Cotação apagada!',
- 'Quotations' => 'Cotações',
- 'RFQ' => 'Requisição para Cotação',
- 'RFQ Number' => 'Número de Requisição para Cotação',
- 'Recd' => 'Recebidos',
- 'Receive Merchandise' => 'Receber mercadoria',
- 'Remaining' => 'Restante',
- 'Request for Quotation' => 'Requisição para Cotação',
- 'Request for Quotations' => 'Requisição para Cotações',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Fatura de Venda',
- 'Sales Order' => 'Pedido de Venda',
- 'Sales Orders' => 'Pedidos de Venda',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Save as new' => 'Salvar como novo',
- 'Screen' => 'Tela',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Service' => 'Serviço',
- 'Ship' => 'Transportar',
- 'Ship Merchandise' => 'Transportar mercadoria',
- 'Ship to' => 'Transportar para',
- 'Ship via' => 'Transportar via',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Shipping Date' => 'Data de transporte',
- 'Shipping Date missing!' => 'Data de transporte faltando!',
- 'Shipping Point' => 'Ponto de Transporte',
- 'State/Province' => 'Estado / Província',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Terms' => 'Crédito Líquido',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Trade Discount' => 'Desconto de comércio',
- 'Transfer' => 'Transferência',
- 'Transfer Inventory' => 'Inventário de transferência',
- 'Transfer to' => 'Transferir para',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
- 'Valid until' => 'Válido até',
- 'Vendor' => 'Distribuidor',
- 'Vendor Invoice' => 'Fatura de compra',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor missing!' => 'Distribuidor faltando!',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'Warehouse' => 'Depósito / Armazém',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'Yes' => 'Sim',
- 'days' => 'Dias',
- 'ea' => 'cada',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'feito' => 'done',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ordem_de_compra' => 'purchase_order',
- 'cotação' => 'quotation',
- 'quotation_' => 'quotation_',
- 'requisição_para_cotação' => 'rfq',
- 'rfq_' => 'rfq_',
- 'fatura_de_venda' => 'sales_invoice',
- 'pedido_de_venda' => 'sales_order',
- 'salvar' => 'save',
- 'salvar_como_novo' => 'save_as_new',
- 'transportar_para' => 'ship_to',
- 'transferência' => 'transfer',
- 'atualizar' => 'update',
- 'fatura_de_compra' => 'vendor_invoice',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/pe b/sql-ledger/locale/br/pe
deleted file mode 100644
index 24cbeed..0000000
--- a/sql-ledger/locale/br/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Group' => 'Adicionar Grupo',
- 'Add Pricegroup' => 'Adicionar Grupo de Preços',
- 'Add Project' => 'Adicionar projeto',
- 'All' => 'Todas',
- 'Continue' => 'Continuar',
- 'Delete' => 'Apagar',
- 'Description' => 'Descrição',
- 'Description Translations' => 'Descrições Traduzidas',
- 'Edit Description Translations' => 'Editar Traduções de Descrições',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Pricegroup' => 'Editar Grupo de Preços',
- 'Edit Project' => 'Editar Projeto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traduções de Grupo',
- 'Group deleted!' => 'Grupo apagado!',
- 'Group missing!' => 'Grupo faltando!',
- 'Group saved!' => 'Grupo salvo!',
- 'Groups' => 'Grupos',
- 'Language' => 'Idioma',
- 'Languages not defined!' => 'Idiomas não definidos!',
- 'Number' => 'Número',
- 'Orphaned' => 'Ficaram órfãs',
- 'Pricegroup' => 'Grupo de Preço',
- 'Pricegroup deleted!' => 'Grupo de Preço apagado!',
- 'Pricegroup missing!' => 'Grupo de Preço faltando!',
- 'Pricegroup saved!' => 'Grupo de Preço salvo!',
- 'Pricegroups' => 'Grupos de Preços',
- 'Project' => 'Projeto',
- 'Project Description Translations' => 'Traduções de Descrição de Projeto',
- 'Project Number' => 'Número de Projeto',
- 'Project Number missing!' => 'Número do Projeto faltando!',
- 'Project deleted!' => 'Projeto apagado!',
- 'Project saved!' => 'Projeto salvo!',
- 'Projects' => 'Projetos',
- 'Save' => 'Salvar',
- 'Translation' => 'Tradução',
- 'Translation deleted!' => 'Tradução apagada!',
- 'Translations saved!' => 'Traduções salvas!',
- 'Update' => 'Atualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'adicionar_grupo' => 'add_group',
- 'adicionar_grupo_de_preços' => 'add_pricegroup',
- 'adicionar_projeto' => 'add_project',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'salvar' => 'save',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/pos b/sql-ledger/locale/br/pos
deleted file mode 100644
index bada7d2..0000000
--- a/sql-ledger/locale/br/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Add POS Invoice' => 'Adicionar Fatura Ponto de Venda',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Change' => 'Trocar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente faltando!',
- 'Delete' => 'Apagar',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Edit POS Invoice' => 'Editar Fatura de Ponto de Venda',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Extended' => 'Extendida',
- 'From' => 'De',
- 'Language' => 'Idioma',
- 'Memo' => 'Memorando',
- 'Number' => 'Número',
- 'Open' => 'Abrir',
- 'Paid' => 'Total Efetuado',
- 'Post' => 'Lançar',
- 'Posted!' => 'Lançado!',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Qty' => 'Qtde',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar em',
- 'Remaining' => 'Restante',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Tela',
- 'Source' => 'Fonte',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'lançar' => 'post',
- 'imprimir' => 'print',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/ps b/sql-ledger/locale/br/ps
deleted file mode 100644
index d84db72..0000000
--- a/sql-ledger/locale/br/ps
+++ /dev/null
@@ -1,326 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Contas a Pagar Vencidas',
- 'AR Aging' => 'Contas a Receber Vencidas',
- 'AR Outstanding' => 'Contas a Receber Destacadas',
- 'AR Transaction' => 'Transação - Contas a Receber',
- 'AR Transactions' => 'Transações - Contas a Receber',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Accrual' => 'Resultado final',
- 'Add POS Invoice' => 'Adicionar Fatura Ponto de Venda',
- 'Add Purchase Order' => 'Adicionar Pedido de Compra',
- 'Add Quotation' => 'Adicionar Cotação',
- 'Add Request for Quotation' => 'Adicionar Requisição para Cotação',
- 'Add Sales Invoice' => 'Adicionar Fatura de Venda',
- 'Add Sales Order' => 'Adicionar Pedido de Venda',
- 'Address' => 'Endereço',
- 'All Accounts' => 'Todas Contas',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total Devido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem certeza que quer APAGAR a Fatura Número',
- 'Are you sure you want to delete Transaction' => 'Tem certeza que quer APAGAR a Transação',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balanço',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Endereço de Cobrança',
- 'Bin' => 'Bandeja',
- 'Bin List' => 'Lista de bandeja',
- 'Business' => 'Negócio',
- 'Cannot delete invoice!' => 'Não pode apagar fatura!',
- 'Cannot delete transaction!' => 'Não pode apagar transação!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar fatura em período fechado!',
- 'Cannot post invoice!' => 'Não pode lançar fatura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não pode lançar transação para um período já encerrado!',
- 'Cannot post transaction!' => 'Não pode lançar transação!',
- 'Cash' => 'Caixa',
- 'Cc' => 'Cc',
- 'Change' => 'Trocar',
- 'Check' => 'Cheque',
- 'City' => 'Cidade',
- 'Closed' => 'Fechado',
- 'Company Name' => 'Nome da Companhia',
- 'Compare to' => 'Comparar a',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contato',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => 'Corrente',
- 'Current Earnings' => 'Salário Corrente',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número do Cliente',
- 'Customer missing!' => 'Cliente faltando!',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Delete' => 'Apagar',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Detail' => 'Detalhe',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Data de Vencimento faltando!',
- 'E-mail' => 'E-Mail',
- 'E-mail Statement to' => 'Declaração enviada por email para',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'E-mailed' => 'Enviado por e-mail',
- 'Edit POS Invoice' => 'Editar Fatura de Ponto de Venda',
- 'Edit Sales Invoice' => 'Editar Fatura de Venda',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Extended' => 'Extendida',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Group' => 'Grupo',
- 'Group Items' => 'Ítens do Grupo',
- 'Heading' => 'Cabeçalho',
- 'ID' => 'ID',
- 'In-line' => 'em linha',
- 'Include Exchange Rate Difference' => 'Incluir diferença de taxa de câmbio',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income Statement' => 'Estado de Receitas',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Data de Fatura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Fatura',
- 'Invoice Number missing!' => 'Número de Fatura não encontrado!',
- 'Invoice deleted!' => 'Fatura apagada!',
- 'Invoice posted!' => 'Fatura lançada!',
- 'Invoice processed!' => 'Fatura processada!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Idioma',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Message' => 'Mensagem',
- 'Method' => 'Método',
- 'N/A' => 'N/D',
- 'No.' => 'Nro.',
- 'Non-taxable Purchases' => 'Compras Isentas',
- 'Non-taxable Sales' => 'Vendas Isentas',
- 'Notes' => 'Notas',
- 'Nothing selected!' => 'Nada foi selecionado!',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Número faltando na linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Pedido',
- 'Order Date missing!' => 'Data de Pedido Faltando',
- 'Order Number' => 'Pedido Número',
- 'Order Number missing!' => 'Número de pedido faltando!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empacotamento',
- 'Packing List Date missing!' => 'Data da lista de empacotamento faltando!',
- 'Packing List Number missing!' => 'Número da lista de empacotamento faltando!',
- 'Paid' => 'Total Efetuado',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Data de pagamento faltando!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista de Seleção',
- 'Post' => 'Lançar',
- 'Post as new' => 'Lançar como novo',
- 'Posted!' => 'Lançado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impresso',
- 'Project' => 'Projeto',
- 'Project Number' => 'Número de Projeto',
- 'Project Transactions' => 'Transações de Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtde',
- 'Queue' => 'Fila',
- 'Queued' => 'Enfileirado',
- 'Quotation' => 'Cotação',
- 'Quotation Date missing!' => 'Data de Cotação faltando!',
- 'Quotation Number missing!' => 'Número de Cotação faltando!',
- 'Recd' => 'Recebidos',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar em',
- 'Remaining' => 'Restante',
- 'Report for' => 'Relatório para',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Pedido de Venda',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Tela',
- 'Select all' => 'Selecionar todos',
- 'Select from one of the items below' => 'Selecione um dos ítens abaixo',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => 'Nro. Série',
- 'Service' => 'Serviço',
- 'Ship' => 'Transportar',
- 'Ship to' => 'Transportar para',
- 'Ship via' => 'Transportar via',
- 'Shipping Address' => 'Endereço para Transporte',
- 'Shipping Point' => 'Ponto de Transporte',
- 'Source' => 'Fonte',
- 'Standard' => 'Padrão',
- 'State/Province' => 'Estado / Província',
- 'Statement' => 'Declaração',
- 'Statement sent to' => 'Declaração enviada para',
- 'Statements sent to printer!' => 'Declaração enviada para impressora!',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Summary' => 'Sumário',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Till' => 'Até',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Trade Discount' => 'Desconto de comércio',
- 'Transaction deleted!' => 'Transação apagada!',
- 'Transaction posted!' => 'Transação lançada',
- 'Trial Balance' => 'Balanço Preliminar',
- 'Unit' => 'Unidade',
- 'Update' => 'Atualizar',
- 'Vendor' => 'Distribuidor',
- 'Vendor Number' => 'Número de Distribuidor',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => 'Ordem de Trabalho',
- 'Yes' => 'Sim',
- 'as at' => 'como em',
- 'ea' => 'cada',
- 'for Period' => 'pelo período',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transação___contas_a_receber' => 'ar_transaction',
- 'continuar' => 'continue',
- 'apagar' => 'delete',
- 'e_mail' => 'e_mail',
- 'lançar' => 'post',
- 'lançar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'pedido_de_venda' => 'sales_order',
- 'selecionar_todos' => 'select_all',
- 'transportar_para' => 'ship_to',
- 'atualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/br/pw b/sql-ledger/locale/br/pw
deleted file mode 100644
index f434cf3..0000000
--- a/sql-ledger/locale/br/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Senha',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/br/rc b/sql-ledger/locale/br/rc
deleted file mode 100644
index ba924c9..0000000
--- a/sql-ledger/locale/br/rc
+++ /dev/null
@@ -1,74 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balanço',
- 'Beginning Balance' => 'Balanço Inicial',
- 'Cleared' => 'Limpo',
- 'Continue' => 'Continuar',
- 'Current' => 'Corrente',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decrease' => 'Decrementar',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Detail' => 'Detalhe',
- 'Difference' => 'Diferença',
- 'Done' => 'Feito',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'Include Exchange Rate Difference' => 'Incluir diferença de taxa de câmbio',
- 'Increase' => 'Incrementar',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Out of balance!' => 'Fora de balanço!',
- 'Outstanding' => 'Destacado',
- 'Payment' => 'Pagamento',
- 'Reconciliation' => 'Reconciliação',
- 'Reconciliation Report' => 'Relatório de Reconciliação',
- 'Select all' => 'Selecionar todos',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Fonte',
- 'Statement Balance' => 'Declaração de Balanço',
- 'Summary' => 'Sumário',
- 'To' => 'Para',
- 'Update' => 'Atualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'feito' => 'done',
- 'selecionar_todos' => 'select_all',
- 'atualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/br/rp b/sql-ledger/locale/br/rp
deleted file mode 100644
index e5f5a04..0000000
--- a/sql-ledger/locale/br/rp
+++ /dev/null
@@ -1,161 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Contas a Pagar Vencidas',
- 'AR Aging' => 'Contas a Receber Vencidas',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Accrual' => 'Resultado final',
- 'Address' => 'Endereço',
- 'All Accounts' => 'Todas Contas',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balanço',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Caixa',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar a',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Moeda',
- 'Current' => 'Corrente',
- 'Current Earnings' => 'Salário Corrente',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente não está no arquivo!',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Department' => 'Departamento',
- 'Description' => 'Descrição',
- 'Detail' => 'Detalhe',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail Statement to' => 'Declaração enviada por email para',
- 'E-mail address missing!' => 'Endereço de E-mail faltando!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Heading' => 'Cabeçalho',
- 'ID' => 'ID',
- 'In-line' => 'em linha',
- 'Include Exchange Rate Difference' => 'Incluir diferença de taxa de câmbio',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income Statement' => 'Estado de Receitas',
- 'Invoice' => 'Fatura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => 'Memorando',
- 'Message' => 'Mensagem',
- 'Method' => 'Método',
- 'N/A' => 'N/D',
- 'Non-taxable Purchases' => 'Compras Isentas',
- 'Non-taxable Sales' => 'Vendas Isentas',
- 'Nothing selected!' => 'Nada foi selecionado!',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order' => 'Pedido',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagamentos',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Projeto',
- 'Project Number' => 'Número de Projeto',
- 'Project Transactions' => 'Transações de Projeto',
- 'Project not on file!' => 'Projeto não está no arquivo!',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Relatório para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Tela',
- 'Select all' => 'Selecionar todos',
- 'Select from one of the names below' => 'Selecione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Selecione um dos projetos abaixo',
- 'Select postscript or PDF!' => 'Selecionar Postscript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Fonte',
- 'Standard' => 'Padrão',
- 'Statement' => 'Declaração',
- 'Statement sent to' => 'Declaração enviada para',
- 'Statements sent to printer!' => 'Declaração enviada para impressora!',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Summary' => 'Sumário',
- 'Tax' => 'Imposto',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Till' => 'Até',
- 'To' => 'Para',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balanço Preliminar',
- 'Vendor' => 'Distribuidor',
- 'Vendor not on file!' => 'Distribuidor não está no arquivo!',
- 'as at' => 'como em',
- 'for Period' => 'pelo período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'selecionar_todos' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/COPYING b/sql-ledger/locale/cn_utf/COPYING
deleted file mode 100644
index 13376ff..0000000
--- a/sql-ledger/locale/cn_utf/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Simplified Chinese (UTF-8) texts:
-#
-# BIG5 translation by: Carfield Yim <carfield@carfield.com.hk>
-# Converted to GB and then UTF-8 by: Edmund Lian <elian@inbrief.net>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/cn_utf/LANGUAGE b/sql-ledger/locale/cn_utf/LANGUAGE
deleted file mode 100644
index ecdb4ed..0000000
--- a/sql-ledger/locale/cn_utf/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Chinese UTF-8 (Simplified)
diff --git a/sql-ledger/locale/cn_utf/admin b/sql-ledger/locale/cn_utf/admin
deleted file mode 100644
index 9137923..0000000
--- a/sql-ledger/locale/cn_utf/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'æƒé™æŽ§åˆ¶',
- 'Accounting' => '会计',
- 'Add User' => '新增使用者',
- 'Address' => '地å€',
- 'Administration' => '系统管ç†',
- 'Administrator' => '管ç†äºº',
- 'All Datasets up to date!' => '所有资料皆已更新!',
- 'Cannot create Lock!' => 'ä¸èƒ½å»ºç«‹é”',
- 'Change Admin Password' => '更改管ç†å‘˜å¯†ç ',
- 'Change Password' => '更改密ç ',
- 'Character Set' => '字元集',
- 'Click on login name to edit!' => '请按登入å称以进行修改!',
- 'Company' => 'å…¬å¸',
- 'Connect to' => '连结到',
- 'Continue' => '继续',
- 'Create Chart of Accounts' => '建立å¸æˆ·å›¾è¡¨',
- 'Create Dataset' => '建立资料集',
- 'DBI not installed!' => '未安装 DBI 模组!',
- 'Database' => '资料库',
- 'Database Administration' => '资料库管ç†',
- 'Database Driver not checked!' => '未选定资料库驱动程å¼!',
- 'Database User missing!' => '未指明资料库使用者!',
- 'Dataset' => '资料集',
- 'Dataset missing!' => '未指明资料集!',
- 'Dataset updated!' => '巳更新资料集',
- 'Date Format' => '日期格å¼',
- 'Delete' => '删除',
- 'Delete Dataset' => '删除资料集',
- 'Directory' => '目录',
- 'Driver' => '驱动程å¼',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'E-mail' => '电å­é‚®ä»¶',
- 'Edit User' => '编辑使用者',
- 'Existing Datasets' => '既有的资料集',
- 'Fax' => '传真',
- 'Host' => '主机',
- 'Hostname missing!' => '未指明主机å称!',
- 'Language' => '语言',
- 'Leave host and port field empty unless you want to make a remote connection.' => '除éžæ‚¨æƒ³è¦è¿›è¡Œè¿œç«¯è¿žçº¿, å¦åˆ™è¯·å°†ä¸»æœºåŠåŸ å·ç•™ç™½.',
- 'Lock System' => '系统é”上',
- 'Lockfile created!' => '巳建立上é”档案!',
- 'Lockfile removed!' => '巳移除上é”档案!',
- 'Login' => '登入',
- 'Login name missing!' => '未指明登入åå­—',
- 'Logout' => '登出',
- 'Manager' => 'ç»ç†',
- 'Menu Width' => '选择å•å®½åº¦',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'å称',
- 'New Templates' => '新增模版',
- 'No Database Drivers available!' => '没有å¯ç”¨çš„驱动程å¼!',
- 'No Dataset selected!' => '未选定资料集!',
- 'Nothing to delete!' => '没有å¯åˆ é™¤çš„项目',
- 'Number Format' => 'æ•°å­—æ ¼å¼',
- 'Oracle Database Administration' => 'Oracle 资料库管ç†',
- 'Password' => '密ç ',
- 'Password changed!' => '密ç å·³æ”¹',
- 'Pg Database Administration' => 'Pg 资料库管ç†',
- 'PgPP Database Administration' => 'PgPP资料库管ç†',
- 'Phone' => '电è¯å·ç ',
- 'Port' => '埠å·',
- 'Port missing!' => '未指明埠å·!',
- 'Printer' => 'å°è¡¨æœº',
- 'Save' => '储存',
- 'Setup Templates' => '设定模版',
- 'Signature' => 'ç­¾å',
- 'Stylesheet' => 'æ ·å¼è¡¨',
- 'Templates' => '模版',
- 'The following Datasets are not in use and can be deleted' => '下列资料集并未使用, å¯ä»¥åˆ é™¤',
- 'The following Datasets need to be updated' => '下列资料集需è¦æ›´æ–°',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '这是对既存资料æ¥æºçš„åˆæ­¥æ£€æŸ¥. 在此阶段, ä¸ä¼šåˆ é™¤æˆ–新增任何资料!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'è‹¥è¦æ–°å¢žç¾¤ç»„内的使用者, 请编辑å称, 更改登入å, 然åŽå‚¨å­˜. 这样一æ¥, 新使用者会ä¿ç•™ç›¸åŒçš„å˜æ•°, 并以新的登入å存入.',
- 'Unlock System' => 'å¼€å¯ç³»ç»Ÿ',
- 'Update Dataset' => '更新资料集',
- 'Use Templates' => '使用模版',
- 'User' => '使用者',
- 'User deleted!' => '巳删除使用者',
- 'User saved!' => '巳储存使用者',
- 'Version' => '版本',
- 'You must enter a host and port for local and remote connections!' => '您必需键入主机åŠåŸ å·, 以进行本机或远端连线!',
- 'does not exist' => 'ä¸å­˜åœ¨',
- 'is already a member!' => 'å·²ç»æ˜¯æˆå‘˜äº†!',
- 'localhost' => '本地寄主',
- 'locked!' => 'å·³é”上',
- 'successfully created!' => 'æˆåŠŸå»ºç«‹!',
- 'successfully deleted!' => 'æˆåŠŸåˆ é™¤!',
- 'website' => '网站',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- '新增使用者' => 'add_user',
- '更改管ç†å‘˜å¯†ç ' => 'change_admin_password',
- '更改密ç ' => 'change_password',
- '继续' => 'continue',
- '建立资料集' => 'create_dataset',
- '删除' => 'delete',
- '删除资料集' => 'delete_dataset',
- '系统é”上' => 'lock_system',
- '登入' => 'login',
- '登出' => 'logout',
- 'oracle_资料库管ç†' => 'oracle_database_administration',
- 'pg_资料库管ç†' => 'pg_database_administration',
- 'pgpp资料库管ç†' => 'pgpp_database_administration',
- '储存' => 'save',
- 'å¼€å¯ç³»ç»Ÿ' => 'unlock_system',
- '更新资料集' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/all b/sql-ledger/locale/cn_utf/all
deleted file mode 100644
index cc4c976..0000000
--- a/sql-ledger/locale/cn_utf/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => '应付å¸æ¬¾',
- 'AP Aging' => '应付å¸é¾„分æž',
- 'AP Outstanding' => '应付未付',
- 'AP Transaction' => '应付交易',
- 'AP Transactions' => '应付交易',
- 'AR' => '应收å¸æ¬¾',
- 'AR Aging' => '应收å¸é¾„分æž',
- 'AR Outstanding' => '应收未收',
- 'AR Transaction' => '应收交易',
- 'AR Transactions' => '应收交易',
- 'About' => '关于',
- 'Above' => '上文',
- 'Access Control' => 'æƒé™æŽ§åˆ¶',
- 'Account' => 'å¸æˆ·',
- 'Account Number' => 'å¸æˆ·ç¼–å·',
- 'Account Number missing!' => '未指明å¸æˆ·ç¼–å·!',
- 'Account Type' => 'å¸æˆ·ç±»åˆ«',
- 'Account Type missing!' => '未指明å¸æˆ·ç±»åˆ«!',
- 'Account deleted!' => '巳删除å¸æˆ·',
- 'Account does not exist!' => 'ä¸å­˜åœ¨å¸æˆ·',
- 'Account saved!' => '巳储存å¸æˆ·',
- 'Accounting' => '会计',
- 'Accounting Menu' => '会计选å•',
- 'Accounts' => 'å¸æˆ·',
- 'Accrual' => '累积',
- 'Activate Audit trails' => '活跃的审计线索',
- 'Active' => '活跃',
- 'Add' => '新增',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => '新增å¸æˆ·',
- 'Add Assembly' => '新增商å“',
- 'Add Business' => '新增业务',
- 'Add Cash Transfer Transaction' => '新增现金转移å¸ç›®',
- 'Add Customer' => '新增客户',
- 'Add Deduction' => '新增扣除',
- 'Add Department' => '新增部门',
- 'Add Employee' => '新增èŒå‘˜',
- 'Add Exchange Rate' => '新增外汇率',
- 'Add GIFI' => '新增 GIFI',
- 'Add General Ledger Transaction' => '新增总å¸',
- 'Add Group' => '新增组',
- 'Add Labor/Overhead' => '新增劳工/ç»å¸¸è´¹ç”¨',
- 'Add Language' => '新增语言',
- 'Add POS Invoice' => '新增POSå‘票',
- 'Add Part' => '新增原料',
- 'Add Pricegroup' => '新增价格组',
- 'Add Project' => '新增方案',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add SIC' => '新增原文',
- 'Add Sales Invoice' => '新增销售å‘票',
- 'Add Sales Order' => '新增销货å•',
- 'Add Service' => '新增æœåŠ¡',
- 'Add Transaction' => '新增交易',
- 'Add User' => '新增使用者',
- 'Add Vendor' => '新增供应商',
- 'Add Vendor Invoice' => '新增供应商å‘票',
- 'Add Warehouse' => '新增仓库',
- 'Address' => '地å€',
- 'Administration' => '系统管ç†',
- 'Administrator' => '管ç†äºº',
- 'After Deduction' => '扣除以åŽ',
- 'All' => '全部',
- 'All Accounts' => '全部å¸æˆ·',
- 'All Datasets up to date!' => '所有资料皆已更新!',
- 'All Items' => '全部项目',
- 'Allowances' => '津贴',
- 'Amount' => '总计',
- 'Amount Due' => '应得的总计',
- 'Amount missing!' => 'æ¼å¡«çš„总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您确定è¦åˆ é™¤å‘票编å·',
- 'Are you sure you want to delete Order Number' => '您是å¦ç¡®å®šè¦åˆ é™¤è®¢å•ç¼–å·',
- 'Are you sure you want to delete Quotation Number' => '您是å¦ç¡®å®šè¦åˆ é™¤æŠ¥ä»·å•ç¼–å·',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¡®å®šè¦åˆ é™¤äº¤æ˜“',
- 'Are you sure you want to remove the marked entries from the queue?' => '您是å¦ç¡®å®šè¦æ¶ˆé™¤æœ‰è®°å·çš„æ¡ç›®',
- 'Assemblies' => '商å“',
- 'Assemblies restocked!' => 'å·³é‡æ–°è¿›è´§çš„商å“',
- 'Assembly' => '商å“',
- 'Asset' => '资产',
- 'Attachment' => '附档',
- 'Audit Control' => '稽核控制',
- 'Audit trail removed up to' => '移除到此为止的审计线索',
- 'Audit trails disabled' => '有效的审计线索',
- 'Audit trails enabled' => '无效的审计线索',
- 'Aug' => '八月',
- 'August' => '八月',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => '备份',
- 'Backup sent to' => '备份寄é€åˆ°',
- 'Balance' => 'ä½™é¢',
- 'Balance Sheet' => '资产负债表',
- 'Based on' => '基于',
- 'Batch Printing' => '整批å°åˆ·',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Before Deduction' => '扣除之å‰',
- 'Beginning Balance' => '起始余é¢',
- 'Below' => '以下',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Bin Lists' => '',
- 'Books are open' => 'å¸ç°¿å·²å¼€å¯',
- 'Break' => '休æ¯',
- 'Business' => '业务',
- 'Business Number' => '业务编å·',
- 'Business deleted!' => '巳删除业务',
- 'Business saved!' => '巳储存业务',
- 'C' => '',
- 'COGS' => '货销æˆæœ¬',
- 'Cannot create Lock!' => 'ä¸èƒ½å»ºç«‹é”',
- 'Cannot delete account!' => 'ä¸èƒ½åˆ é™¤å¸æˆ·',
- 'Cannot delete customer!' => 'ä¸èƒ½åˆ é™¤å®¢æˆ·',
- 'Cannot delete default account!' => 'ä¸èƒ½åˆ é™¤é¢„设å¸æˆ·',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆ é™¤å‘票',
- 'Cannot delete item!' => 'ä¸èƒ½åˆ é™¤é¡¹ç›®',
- 'Cannot delete order!' => 'ä¸èƒ½åˆ é™¤å®šå•',
- 'Cannot delete quotation!' => 'ä¸èƒ½åˆ é™¤æŠ¥ä»·å•',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆ é™¤äº¤æ˜“',
- 'Cannot delete vendor!' => 'ä¸èƒ½åˆ é™¤ä¾›åº”商',
- 'Cannot post Payment!' => 'ä¸èƒ½åŠ å…¥æ¬¾é¡¹',
- 'Cannot post Receipt!' => 'ä¸èƒ½åŠ å…¥æ”¶æ®',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入å‘票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥å‘票',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Cannot process payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内处ç†æ¬¾é¡¹',
- 'Cannot remove files!' => 'ä¸èƒ½ç§»é™¤æ¡£æ¡ˆ',
- 'Cannot save account!' => 'ä¸èƒ½å‚¨å­˜å¸æˆ·',
- 'Cannot save defaults!' => 'ä¸èƒ½å‚¨å­˜é¢„设',
- 'Cannot save order!' => 'ä¸èƒ½å‚¨å­˜å®šå•',
- 'Cannot save preferences!' => 'ä¸èƒ½å‚¨å­˜ä¼˜å…ˆé€‰æ‹© ',
- 'Cannot save quotation!' => 'ä¸èƒ½å‚¨å­˜æŠ¥ä»·å•',
- 'Cannot set account for more than one of AR, AP or IC' => 'ä¸èƒ½è®¾ç½®å¤šäºŽä¸€ä¸ªåº”收å¸æ¬¾, 应付å¸æ¬¾æˆ–IC',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'ä¸èƒ½å¸¸å¤‡çš„商å“',
- 'Cash' => '现金',
- 'Cc' => '抄é€',
- 'Change' => '更改',
- 'Change Admin Password' => '更改管ç†å‘˜å¯†ç ',
- 'Change Password' => '更改密ç ',
- 'Character Set' => '字元集',
- 'Chart of Accounts' => '会计科目表',
- 'Check' => '检查',
- 'Check Inventory' => '检查存货清å•',
- 'Checks' => '检查',
- 'City' => '城市',
- 'Cleared' => '已清除',
- 'Click on login name to edit!' => '请按登入å称以进行修改!',
- 'Close Books up to' => '关闭到此为止的å¸ç°¿',
- 'Closed' => '已关闭',
- 'Code' => 'ç¼–ç ',
- 'Code missing!' => '未指明编ç ',
- 'Company' => 'å…¬å¸',
- 'Company Name' => 'å…¬å¸å称',
- 'Compare to' => '对照',
- 'Components' => '零件',
- 'Confirm' => '',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Connect to' => '连结到',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Contra' => '相å',
- 'Copies' => '副本',
- 'Copy to COA' => 'å¤åˆ¶åˆ° COA',
- 'Cost' => 'æˆæœ¬',
- 'Cost Center' => 'æˆæœ¬ä¸­å¿ƒ',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'ä¸èƒ½å‚¨å­˜',
- 'Could not transfer Inventory!' => '存货清å•ä¸èƒ½è½¬ç§»',
- 'Country' => '国家',
- 'Create Chart of Accounts' => '建立å¸æˆ·å›¾è¡¨',
- 'Create Dataset' => '建立资料集',
- 'Credit' => 'è´·æ–¹',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Current Earnings' => '现有收益',
- 'Customer' => '客户',
- 'Customer History' => '客户历å²',
- 'Customer Number' => '客户编å·',
- 'Customer deleted!' => '巳删除客户',
- 'Customer missing!' => '未指明客户',
- 'Customer not on file!' => '客户未存档',
- 'Customer saved!' => '巳储存客户',
- 'Customers' => '客户',
- 'DBI not installed!' => '未安装 DBI 模组!',
- 'DOB' => '',
- 'Database' => '资料库',
- 'Database Administration' => '资料库管ç†',
- 'Database Driver not checked!' => '未选定资料库驱动程å¼!',
- 'Database Host' => '资料库主机',
- 'Database User missing!' => '未指明资料库使用者!',
- 'Dataset' => '资料集',
- 'Dataset is newer than version!' => '较新资料集',
- 'Dataset missing!' => '未指明资料集!',
- 'Dataset updated!' => '巳更新资料集',
- 'Date' => '日期',
- 'Date Format' => '日期格å¼',
- 'Date Paid' => '付款日期',
- 'Date Received' => '收款日期',
- 'Date missing!' => '未指明日期',
- 'Date received missing!' => '未指明收款日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•°çš„ä½ç½®',
- 'Decrease' => 'å‡å°‘',
- 'Deduct after' => 'å‡å°‘以åŽ',
- 'Deduction deleted!' => '巳删除å‡å°‘',
- 'Deduction saved!' => '巳储存å‡å°‘',
- 'Deductions' => 'å‡é™¤é¢',
- 'Defaults' => '预设',
- 'Defaults saved!' => '巳储存预设',
- 'Delete' => '删除',
- 'Delete Account' => '删除å¸æˆ·',
- 'Delete Dataset' => '删除资料集',
- 'Delivery Date' => '到期日',
- 'Department' => '部门',
- 'Department deleted!' => '巳删除部门',
- 'Department saved!' => '巳储存部门',
- 'Departments' => '部门',
- 'Deposit' => '存款',
- 'Description' => '说明',
- 'Description Translations' => '翻译æè¿°',
- 'Description missing!' => '未指明æè¿°',
- 'Detail' => '详情',
- 'Difference' => '差异',
- 'Directory' => '目录',
- 'Discount' => '折扣',
- 'Done' => '巳完æˆ',
- 'Drawing' => '图画',
- 'Driver' => '驱动程å¼',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail Statement to' => '电邮会计账到',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit' => '编辑',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => '编辑å¸æˆ·',
- 'Edit Assembly' => '编辑商å“',
- 'Edit Business' => '编辑业务',
- 'Edit Cash Transfer Transaction' => '编辑现金转移',
- 'Edit Customer' => '编辑客户',
- 'Edit Deduction' => '编辑å‡é™¤é¢',
- 'Edit Department' => '编辑部门',
- 'Edit Description Translations' => '编辑翻译æè¿°',
- 'Edit Employee' => '编辑èŒå‘˜',
- 'Edit GIFI' => '编辑 GIFI',
- 'Edit General Ledger Transaction' => '编辑总å¸',
- 'Edit Group' => '编辑组',
- 'Edit Labor/Overhead' => '编辑劳工/ç»å¸¸è´¹ç”¨',
- 'Edit Language' => '编辑语言',
- 'Edit POS Invoice' => '编辑POS',
- 'Edit Part' => '编辑原料',
- 'Edit Preferences for' => '设定使用者',
- 'Edit Pricegroup' => '编辑价格组',
- 'Edit Project' => '编辑方案',
- 'Edit Purchase Order' => '编辑采购å•',
- 'Edit Quotation' => '编辑报价å•',
- 'Edit Request for Quotation' => '编辑报价å•è¦æ±‚',
- 'Edit SIC' => '编辑原文',
- 'Edit Sales Invoice' => '编辑销售å‘票',
- 'Edit Sales Order' => '编辑销货å•',
- 'Edit Service' => '编辑æœåŠ¡',
- 'Edit Template' => '编辑模版',
- 'Edit User' => '编辑使用者',
- 'Edit Vendor' => '编辑供应商',
- 'Edit Vendor Invoice' => '编辑供应商å‘票',
- 'Edit Warehouse' => '编辑仓库',
- 'Employee' => 'èŒå‘˜',
- 'Employee Name' => 'èŒå‘˜å§“å',
- 'Employee Number' => '',
- 'Employee deleted!' => '巳删除èŒå‘˜',
- 'Employee pays' => '付款给èŒå‘˜',
- 'Employee saved!' => '巳储存èŒå‘˜',
- 'Employees' => 'èŒå‘˜',
- 'Employer' => '雇主',
- 'Employer pays' => '付款给雇主',
- 'Enddate' => '结æŸæ—¥',
- 'Enforce transaction reversal for all dates' => '强制所有日期的交易回å¤',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '请键入以冒å·åˆ†éš”的英文字æ¯, æ¯é¡¹ä¸è¶…过三个字 (如 CAD:USD:EUR), 作为您的本国åŠå¤–国货å¸',
- 'Equity' => 'è‚¡æƒ',
- 'Excempt age <' => '',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Existing Datasets' => '既有的资料集',
- 'Expense' => '费用',
- 'Expense Account' => '费用科目',
- 'Expense/Asset' => '费用/资产',
- 'Extended' => '巳扩大',
- 'FX' => '',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Foreign Exchange Gain' => '外汇收益',
- 'Foreign Exchange Loss' => '外汇æŸå¤±',
- 'From' => '从',
- 'GIFI' => '',
- 'GIFI deleted!' => '巳删除',
- 'GIFI missing!' => '未指明 GIFI!',
- 'GIFI saved!' => '巳储存',
- 'GL Transaction' => 'GL交易',
- 'General Ledger' => '总å¸',
- 'Goods & Services' => '货物åŠæœåŠ¡',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'Group Translations' => '组的翻译',
- 'Group deleted!' => '巳删除的组',
- 'Group missing!' => '未指明的组',
- 'Group saved!' => '巳储存的组',
- 'Groups' => '组',
- 'HR' => '人事管ç†',
- 'HTML Templates' => 'HTML 表å•',
- 'Heading' => '标题, ',
- 'History' => '历å²',
- 'Home Phone' => 'ä½å®…电è¯',
- 'Host' => '主机',
- 'Hostname missing!' => '未指明主机å称!',
- 'IBAN' => '',
- 'ID' => 'ç¼–å·',
- 'Image' => 'å½¢åƒ',
- 'In-line' => '行内',
- 'Include Exchange Rate Difference' => '包å«å¤–汇差è·',
- 'Include in Report' => '一并显示',
- 'Include in drop-down menus' => '包å«åœ¨ä¸‹æ‹‰å¼é€‰å•ä¸­',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'è¦å°†è¿™ä¸ªå®¢æˆ·/厂商加入应加税清å•?',
- 'Income' => '收入',
- 'Income Account' => '收入å¸æˆ·',
- 'Income Statement' => 'æŸç›Šè¡¨',
- 'Incorrect Dataset version!' => '资料集版本错误!',
- 'Incorrect Password!' => '密ç é”™è¯¯!',
- 'Increase' => '增加',
- 'Individual Items' => '个别的项目',
- 'Internal Notes' => '内部备忘录',
- 'Inventory' => '库存',
- 'Inventory Account' => '存货å¸æˆ·',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '在åœç”¨æ­¤é¡¹ç»„åˆå“之å‰, 存货数é‡å¿…需为零!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'åœç”¨æ­¤é¡¹é›¶ä»¶ä¹‹å‰, 存货数é‡å¿…需为零!',
- 'Inventory saved!' => '巳储存存货',
- 'Inventory transferred!' => '转移的存货',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Invoice deleted!' => '巳删除å‘票',
- 'Invoice posted!' => '巳加入å‘票',
- 'Invoice processed!' => '巳处ç†å‘票',
- 'Invoices' => 'å‘票',
- 'Is this a summary account to record' => '此为总结科目�',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '巳删除项目',
- 'Item not on file!' => '查无此项目',
- 'Items' => '项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'LaTeX Templates' => 'LaTex 模版',
- 'Labor/Overhead' => '劳工/ç»å¸¸è´¹ç”¨',
- 'Language' => '语言',
- 'Language deleted!' => '巳删除语言',
- 'Language saved!' => '巳储存语言',
- 'Languages' => '语言',
- 'Languages not defined!' => 'ä¸èƒ½è¾¨è®¤è¯­è¨€',
- 'Last Numbers & Default Accounts' => '上一笔编å·åŠé¢„设å¸æˆ·',
- 'Leadtime' => '总需时',
- 'Leave host and port field empty unless you want to make a remote connection.' => '除éžæ‚¨æƒ³è¦è¿›è¡Œè¿œç«¯è¿žçº¿, å¦åˆ™è¯·å°†ä¸»æœºåŠåŸ å·ç•™ç™½.',
- 'Liability' => '负债',
- 'Licensed to' => '授æƒäºˆ',
- 'Line Total' => '总列数',
- 'Link' => '连结',
- 'Link Accounts' => '连结å¸æˆ·',
- 'List' => '',
- 'List Accounts' => '列出å¸å·',
- 'List Businesses' => '列出业务',
- 'List Departments' => '列出部门',
- 'List GIFI' => '列出 GIFI',
- 'List Languages' => '列出语言',
- 'List Price' => '列出价',
- 'List Projects' => '列出方案',
- 'List SIC' => '列出SIC',
- 'List Transactions' => '列出交易',
- 'List Warehouses' => '列出仓库',
- 'Lock System' => '系统é”上',
- 'Lockfile created!' => '巳建立上é”档案!',
- 'Lockfile removed!' => '巳移除上é”档案!',
- 'Login' => '登入',
- 'Login name missing!' => '未指明登入åå­—',
- 'Logout' => '登出',
- 'Make' => '制造',
- 'Manager' => 'ç»ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'Marked entries printed!' => '巳列å°æœ‰è®°å·çš„会计项目',
- 'Markup' => '涨价',
- 'Maximum' => '最大',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Menu Width' => '选择å•å®½åº¦',
- 'Message' => '讯æ¯',
- 'Method' => '方法',
- 'Microfiche' => 'å•ç‰‡ç¼©å½±èƒ¶ç‰‡',
- 'Model' => 'åž‹å·',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'ä¸é€‚用',
- 'Name' => 'å称',
- 'Name missing!' => '未指明åå­—',
- 'New Templates' => '新增模版',
- 'No' => 'å¦',
- 'No Database Drivers available!' => '没有å¯ç”¨çš„驱动程å¼!',
- 'No Dataset selected!' => '未选定资料集!',
- 'No email address for' => '未指明电å­é‚®ä»¶ä½ç½®',
- 'No.' => 'å¦',
- 'Non-taxable' => 'ä¸åº”课税',
- 'Non-taxable Purchases' => 'ä¸åº”课税的采购',
- 'Non-taxable Sales' => 'ä¸åº”课税的销售',
- 'Notes' => '备注',
- 'Nothing entered!' => '没有巳输入',
- 'Nothing outstanding for ' => '没有未付æ¥æº',
- 'Nothing selected!' => '没有巳选择',
- 'Nothing to delete!' => '没有å¯åˆ é™¤çš„项目',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '没有å¯è½¬ç§»çš„项目',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number Format' => 'æ•°å­—æ ¼å¼',
- 'Number missing in Row' => '此列中缺少数值',
- 'O' => '',
- 'Obsolete' => 'åœç”¨',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'On Hand' => '巳有存é‡',
- 'Open' => 'å¼€å¯',
- 'Oracle Database Administration' => 'Oracle 资料库管ç†',
- 'Order' => '订å•',
- 'Order Date' => '下å•æ—¥æœŸ',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Entry' => '下å•é¡¹ç›®',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Order deleted!' => '巳删除订å•',
- 'Order processed!' => '巳处ç†è®¢å•',
- 'Order saved!' => '巳储存订å•',
- 'Orphaned' => '无主',
- 'Out of balance transaction!' => 'ä¸å调交易',
- 'Out of balance!' => 'ä¸åè°ƒ',
- 'Outstanding' => '未付',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => 'POSå‘票',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Packing Lists' => '出货å•',
- 'Paid' => '已付',
- 'Part' => '原料',
- 'Part Number' => '原料编å·',
- 'Partnumber' => '',
- 'Parts' => '原料',
- 'Parts Inventory' => '库存原料',
- 'Password' => '密ç ',
- 'Password changed!' => '密ç å·³æ”¹',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => '应付科目',
- 'Payment' => '付款',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payment posted!' => '巳加入付款',
- 'Payments' => '付款',
- 'Payroll Deduction' => '薪金å‡é™¤é¢',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg 资料库管ç†',
- 'PgPP Database Administration' => 'PgPP资料库管ç†',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Pick Lists' => '',
- 'Port' => '埠å·',
- 'Port missing!' => '未指明埠å·!',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Posted!' => '巳加入',
- 'Postscript' => '附言',
- 'Preferences' => '个人设定',
- 'Preferences saved!' => '个人设定已储存!',
- 'Prepayment' => '预缴',
- 'Price' => 'ä»·æ ¼',
- 'Pricegroup' => '价格组',
- 'Pricegroup deleted!' => '巳删除价格组',
- 'Pricegroup missing!' => '未指明价格组',
- 'Pricegroup saved!' => '巳储存价格组',
- 'Pricegroups' => '价格组',
- 'Pricelist' => '',
- 'Print' => '列å°',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '巳列å°',
- 'Printer' => 'å°è¡¨æœº',
- 'Printing ... ' => '正列å°',
- 'Profit Center' => '利润中心',
- 'Project' => '方案',
- 'Project Description Translations' => '方案æ述的翻译',
- 'Project Number' => '方案å·ç ',
- 'Project Number missing!' => '未指明方案å·ç ',
- 'Project Transactions' => '方案交易',
- 'Project deleted!' => '巳删除方案',
- 'Project not on file!' => '方案内无此档案',
- 'Project saved!' => '巳储存方案',
- 'Projects' => '方案',
- 'Purchase Order' => '采购å•',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Quantity exceeds available units to stock!' => '超过å¯åº“存的数é‡',
- 'Quarter' => '',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation ' => '',
- 'Quotation Date' => '报价å•æ—¥æœŸ',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number' => '报价å•å·ç ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Quotation deleted!' => '巳删除报价å•',
- 'Quotations' => '报价å•',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => 'RFDå·ç ',
- 'RFQs' => '',
- 'ROP' => 'å†è®¢ç‚¹',
- 'Rate' => '税率',
- 'Rate missing!' => '未指明税率',
- 'Recd' => '巳收到',
- 'Receipt' => '收æ®',
- 'Receipt posted!' => '巳加入收æ®',
- 'Receipts' => '收æ®',
- 'Receivables' => '应收å¸æˆ·',
- 'Receive' => '收到',
- 'Receive Merchandise' => '收到货物',
- 'Reconciliation' => '调和',
- 'Reconciliation Report' => '调和报告',
- 'Record in' => '记录ã€â—ŽFix:◎于;◎於】',
- 'Reference' => 'å‚考资料',
- 'Reference missing!' => '未指明å‚考资料',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Remove' => '移除',
- 'Remove Audit trails up to' => '移除审核线索直至',
- 'Removed spoolfiles!' => '移除线轴档案',
- 'Removing marked entries from queue ...' => '正从长队中移除有记å·çš„会计项目',
- 'Report for' => '报表æ¥æº',
- 'Reports' => '报表',
- 'Request for Quotation' => 'è¦æ±‚报价å•',
- 'Request for Quotations' => 'è¦æ±‚报价å•',
- 'Required by' => '需è¦è€…',
- 'Retained Earnings' => 'ä¿ç•™ç›ˆä½™',
- 'Role' => '任务',
- 'S' => '',
- 'SIC' => '原文',
- 'SIC deleted!' => '巳删除原文',
- 'SIC saved!' => '巳储存原文',
- 'SKU' => '被指定的数é‡',
- 'SSN' => '',
- 'Sale' => '销售',
- 'Sales' => '销售',
- 'Sales Invoice' => '销售å‘票',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '销售å‘票',
- 'Sales Order' => '销货å•',
- 'Sales Order Number' => '',
- 'Sales Orders' => '销货å•',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '销售人员',
- 'Save' => '储存',
- 'Save Pricelist' => '',
- 'Save as new' => '当新的储存',
- 'Save to File' => '储存至档案',
- 'Screen' => 'è¤å¹•',
- 'Search' => 'æœå¯»',
- 'Select' => '选择',
- 'Select Printer or Queue!' => '',
- 'Select all' => '全选',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '售价',
- 'Send by E-Mail' => '以电å­é‚®ä»¶å¯„é€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Serial Number' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Service Items' => 'æœåŠ¡é¡¹ç›®',
- 'Services' => 'æœåŠ¡',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => '设定模版',
- 'Ship' => '船',
- 'Ship Merchandise' => 'æµ·è¿è´§ç‰©',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Ship via' => '由海è¿',
- 'Shipping' => 'æµ·è¿',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Shipping Date' => 'æµ·è¿æ—¥æœŸ',
- 'Shipping Date missing!' => '未指明海è¿æ—¥æœŸ',
- 'Shipping Point' => 'æµ·è¿åœ°ç‚¹',
- 'Short' => '短',
- 'Signature' => 'ç­¾å',
- 'Source' => 'æ¥æº',
- 'Spoolfile' => '线轴档案',
- 'Standard' => '标准',
- 'Standard Industrial Codes' => '标准工业编ç ',
- 'Startdate' => '开始日期',
- 'State' => '',
- 'State/Province' => 'çœ',
- 'Statement' => '会计å¸',
- 'Statement Balance' => '会计å¸ä½™é¢',
- 'Statement sent to' => 'é€ä¼šè®¡å¸è‡³',
- 'Statements sent to printer!' => 'é€ä¼šè®¡å¸è‡³åˆ—å°æœº',
- 'Stock' => '库存',
- 'Stock Assembly' => '盘点',
- 'Stylesheet' => 'æ ·å¼è¡¨',
- 'Sub-contract GIFI' => '细åˆçº¦GIFI',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Summary' => '摘è¦',
- 'Supervisor' => '',
- 'System' => '系统',
- 'System Defaults' => '预设系统',
- 'Tax' => '税金',
- 'Tax Accounts' => '税金科目',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'Tax Number' => '税å·',
- 'Tax Number / SSN' => '税å·',
- 'Tax collected' => '巳收税金',
- 'Tax paid' => '巳付税金',
- 'Taxable' => '应税',
- 'Template saved!' => '巳储存模版',
- 'Templates' => '模版',
- 'Terms' => '票期淨计',
- 'Text Templates' => '文字模版',
- 'The following Datasets are not in use and can be deleted' => '下列资料集并未使用, å¯ä»¥åˆ é™¤',
- 'The following Datasets need to be updated' => '下列资料集需è¦æ›´æ–°',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '这是对既存资料æ¥æºçš„åˆæ­¥æ£€æŸ¥. 在此阶段, ä¸ä¼šåˆ é™¤æˆ–新增任何资料!',
- 'Till' => '直到',
- 'To' => '至',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'è‹¥è¦æ–°å¢žç¾¤ç»„内的使用者, 请编辑å称, 更改登入å, 然åŽå‚¨å­˜. 这样一æ¥, 新使用者会ä¿ç•™ç›¸åŒçš„å˜æ•°, 并以新的登入å存入.',
- 'Top Level' => '高水准',
- 'Total' => '总计',
- 'Trade Discount' => '贸易折扣',
- 'Transaction' => '',
- 'Transaction Date missing!' => '未指明交易日期!',
- 'Transaction deleted!' => '巳删除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Transaction reversal enforced for all dates' => '强制回å¤æ‰€æœ‰æ—¥æœŸçš„交易',
- 'Transaction reversal enforced up to' => '强制回å¤äº¤æ˜“直到',
- 'Transactions' => '交易',
- 'Transfer' => '转移',
- 'Transfer Inventory' => '转移存货',
- 'Transfer to' => '存货至',
- 'Translation' => '翻译',
- 'Translation deleted!' => '巳删除翻译',
- 'Translation not on file!' => '',
- 'Translations' => '翻译',
- 'Translations saved!' => '巳储存翻译',
- 'Trial Balance' => '试算表',
- 'Type of Business' => '业务ç§ç±»',
- 'Unit' => 'å•ä½',
- 'Unit of measure' => '度é‡å•ä½',
- 'Unlock System' => 'å¼€å¯ç³»ç»Ÿ',
- 'Update' => 'æ›´æ–°',
- 'Update Dataset' => '更新资料集',
- 'Updated' => '巳更新',
- 'Upgrading to Version' => 'æ­£å‡çº§è‡³æ–°ç‰ˆ',
- 'Use Templates' => '使用模版',
- 'User' => '使用者',
- 'User deleted!' => '巳删除使用者',
- 'User saved!' => '巳储存使用者',
- 'Valid until' => '有效至',
- 'Vendor' => '供应商',
- 'Vendor History' => '供应商历å²',
- 'Vendor Invoice' => '供应商å‘票',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '供应商å‘票',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor deleted!' => '巳删除供应商',
- 'Vendor missing!' => '未指明供应商',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Vendor saved!' => '巳储存供应商',
- 'Vendors' => '供应商',
- 'Version' => '版本',
- 'Warehouse' => '仓库',
- 'Warehouse deleted!' => '巳删除仓库',
- 'Warehouse saved!' => '巳储存仓库',
- 'Warehouses' => '仓库',
- 'Warning!' => '警告',
- 'Weight' => 'é‡é‡',
- 'Weight Unit' => 'é‡é‡å•ä½',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'Work Orders' => '',
- 'Work Phone' => '工作电è¯',
- 'Year' => '',
- 'Yearend' => '年结',
- 'Yearend date missing!' => '未指明年结日期',
- 'Yearend posted!' => '巳加入年结',
- 'Yearend posting failed!' => '年结加入失败',
- 'Yes' => '是',
- 'You are logged out' => '',
- 'You did not enter a name!' => '你并未键入å称!',
- 'You must enter a host and port for local and remote connections!' => '您必需键入主机åŠåŸ å·, 以进行本机或远端连线!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'å¸æˆ·ä¸èƒ½é€åŽ»å…¶ä»–类型å¸æˆ·',
- 'as at' => '截至',
- 'days' => 'æ—¥',
- 'does not exist' => 'ä¸å­˜åœ¨',
- 'done' => '完æˆ',
- 'ea' => '个',
- 'for Period' => '期间',
- 'is already a member!' => 'å·²ç»æ˜¯æˆå‘˜äº†!',
- 'is not a member!' => '并ä¸æ˜¯æˆå‘˜!',
- 'localhost' => '本地寄主',
- 'locked!' => 'å·³é”上',
- 'posted!' => '巳加入',
- 'sent' => 'å·³é€å‡º',
- 'successfully created!' => 'æˆåŠŸå»ºç«‹!',
- 'successfully deleted!' => 'æˆåŠŸåˆ é™¤!',
- 'website' => '网站',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/am b/sql-ledger/locale/cn_utf/am
deleted file mode 100644
index 102341f..0000000
--- a/sql-ledger/locale/cn_utf/am
+++ /dev/null
@@ -1,245 +0,0 @@
-$self{texts} = {
- 'AP' => '应付å¸æ¬¾',
- 'AR' => '应收å¸æ¬¾',
- 'About' => '关于',
- 'Account' => 'å¸æˆ·',
- 'Account Number' => 'å¸æˆ·ç¼–å·',
- 'Account Number missing!' => '未指明å¸æˆ·ç¼–å·!',
- 'Account Type' => 'å¸æˆ·ç±»åˆ«',
- 'Account Type missing!' => '未指明å¸æˆ·ç±»åˆ«!',
- 'Account deleted!' => '巳删除å¸æˆ·',
- 'Account does not exist!' => 'ä¸å­˜åœ¨å¸æˆ·',
- 'Account saved!' => '巳储存å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Accrual' => '累积',
- 'Activate Audit trails' => '活跃的审计线索',
- 'Add Account' => '新增å¸æˆ·',
- 'Add Business' => '新增业务',
- 'Add Department' => '新增部门',
- 'Add GIFI' => '新增 GIFI',
- 'Add Language' => '新增语言',
- 'Add SIC' => '新增原文',
- 'Add Warehouse' => '新增仓库',
- 'Address' => '地å€',
- 'Asset' => '资产',
- 'Audit Control' => '稽核控制',
- 'Audit trail removed up to' => '移除到此为止的审计线索',
- 'Audit trails disabled' => '有效的审计线索',
- 'Audit trails enabled' => '无效的审计线索',
- 'Backup sent to' => '备份寄é€åˆ°',
- 'Books are open' => 'å¸ç°¿å·²å¼€å¯',
- 'Business Number' => '业务编å·',
- 'Business deleted!' => '巳删除业务',
- 'Business saved!' => '巳储存业务',
- 'COGS' => '货销æˆæœ¬',
- 'Cannot delete account!' => 'ä¸èƒ½åˆ é™¤å¸æˆ·',
- 'Cannot delete default account!' => 'ä¸èƒ½åˆ é™¤é¢„设å¸æˆ·',
- 'Cannot save account!' => 'ä¸èƒ½å‚¨å­˜å¸æˆ·',
- 'Cannot save defaults!' => 'ä¸èƒ½å‚¨å­˜é¢„设',
- 'Cannot save preferences!' => 'ä¸èƒ½å‚¨å­˜ä¼˜å…ˆé€‰æ‹© ',
- 'Cannot set account for more than one of AR, AP or IC' => 'ä¸èƒ½è®¾ç½®å¤šäºŽä¸€ä¸ªåº”收å¸æ¬¾, 应付å¸æ¬¾æˆ–IC',
- 'Cash' => '现金',
- 'Character Set' => '字元集',
- 'Chart of Accounts' => '会计科目表',
- 'Close Books up to' => '关闭到此为止的å¸ç°¿',
- 'Code' => 'ç¼–ç ',
- 'Code missing!' => '未指明编ç ',
- 'Company' => 'å…¬å¸',
- 'Continue' => '继续',
- 'Contra' => '相å',
- 'Copy to COA' => 'å¤åˆ¶åˆ° COA',
- 'Cost Center' => 'æˆæœ¬ä¸­å¿ƒ',
- 'Credit' => 'è´·æ–¹',
- 'Customer Number' => '客户编å·',
- 'Database Host' => '资料库主机',
- 'Dataset' => '资料集',
- 'Date Format' => '日期格å¼',
- 'Debit' => '借方',
- 'Defaults saved!' => '巳储存预设',
- 'Delete' => '删除',
- 'Delete Account' => '删除å¸æˆ·',
- 'Department deleted!' => '巳删除部门',
- 'Department saved!' => '巳储存部门',
- 'Departments' => '部门',
- 'Description' => '说明',
- 'Description missing!' => '未指明æè¿°',
- 'Discount' => '折扣',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'E-mail' => '电å­é‚®ä»¶',
- 'Edit' => '编辑',
- 'Edit Account' => '编辑å¸æˆ·',
- 'Edit Business' => '编辑业务',
- 'Edit Department' => '编辑部门',
- 'Edit GIFI' => '编辑 GIFI',
- 'Edit Language' => '编辑语言',
- 'Edit Preferences for' => '设定使用者',
- 'Edit SIC' => '编辑原文',
- 'Edit Template' => '编辑模版',
- 'Edit Warehouse' => '编辑仓库',
- 'Enforce transaction reversal for all dates' => '强制所有日期的交易回å¤',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '请键入以冒å·åˆ†éš”的英文字æ¯, æ¯é¡¹ä¸è¶…过三个字 (如 CAD:USD:EUR), 作为您的本国åŠå¤–国货å¸',
- 'Equity' => 'è‚¡æƒ',
- 'Expense' => '费用',
- 'Expense Account' => '费用科目',
- 'Expense/Asset' => '费用/资产',
- 'Fax' => '传真',
- 'Foreign Exchange Gain' => '外汇收益',
- 'Foreign Exchange Loss' => '外汇æŸå¤±',
- 'GIFI deleted!' => '巳删除',
- 'GIFI missing!' => '未指明 GIFI!',
- 'GIFI saved!' => '巳储存',
- 'Heading' => '标题, ',
- 'Include in drop-down menus' => '包å«åœ¨ä¸‹æ‹‰å¼é€‰å•ä¸­',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'è¦å°†è¿™ä¸ªå®¢æˆ·/厂商加入应加税清å•?',
- 'Income' => '收入',
- 'Income Account' => '收入å¸æˆ·',
- 'Inventory' => '库存',
- 'Inventory Account' => '存货å¸æˆ·',
- 'Is this a summary account to record' => '此为总结科目�',
- 'Labor/Overhead' => '劳工/ç»å¸¸è´¹ç”¨',
- 'Language' => '语言',
- 'Language deleted!' => '巳删除语言',
- 'Language saved!' => '巳储存语言',
- 'Languages' => '语言',
- 'Last Numbers & Default Accounts' => '上一笔编å·åŠé¢„设å¸æˆ·',
- 'Liability' => '负债',
- 'Licensed to' => '授æƒäºˆ',
- 'Link' => '连结',
- 'Menu Width' => '选择å•å®½åº¦',
- 'Method' => '方法',
- 'Name' => 'å称',
- 'No' => 'å¦',
- 'No email address for' => '未指明电å­é‚®ä»¶ä½ç½®',
- 'Number' => 'ç¼–å·',
- 'Number Format' => 'æ•°å­—æ ¼å¼',
- 'Parts Inventory' => '库存原料',
- 'Password' => '密ç ',
- 'Payables' => '应付科目',
- 'Payment' => '付款',
- 'Phone' => '电è¯å·ç ',
- 'Preferences saved!' => '个人设定已储存!',
- 'Printer' => 'å°è¡¨æœº',
- 'Profit Center' => '利润中心',
- 'RFQ Number' => 'RFDå·ç ',
- 'Rate' => '税率',
- 'Receivables' => '应收å¸æˆ·',
- 'Reference' => 'å‚考资料',
- 'Remove Audit trails up to' => '移除审核线索直至',
- 'Retained Earnings' => 'ä¿ç•™ç›ˆä½™',
- 'SIC deleted!' => '巳删除原文',
- 'SIC saved!' => '巳储存原文',
- 'Save' => '储存',
- 'Save as new' => '当新的储存',
- 'Service Items' => 'æœåŠ¡é¡¹ç›®',
- 'Signature' => 'ç­¾å',
- 'Standard Industrial Codes' => '标准工业编ç ',
- 'Stylesheet' => 'æ ·å¼è¡¨',
- 'System Defaults' => '预设系统',
- 'Tax' => '税金',
- 'Tax Accounts' => '税金科目',
- 'Template saved!' => '巳储存模版',
- 'Transaction reversal enforced for all dates' => '强制回å¤æ‰€æœ‰æ—¥æœŸçš„交易',
- 'Transaction reversal enforced up to' => '强制回å¤äº¤æ˜“直到',
- 'Type of Business' => '业务ç§ç±»',
- 'User' => '使用者',
- 'Vendor Number' => '供应商å·ç ',
- 'Version' => '版本',
- 'Warehouse deleted!' => '巳删除仓库',
- 'Warehouse saved!' => '巳储存仓库',
- 'Warehouses' => '仓库',
- 'Weight Unit' => 'é‡é‡å•ä½',
- 'Yearend' => '年结',
- 'Yearend date missing!' => '未指明年结日期',
- 'Yearend posted!' => '巳加入年结',
- 'Yearend posting failed!' => '年结加入失败',
- 'Yes' => '是',
- 'account cannot be set to any other type of account' => 'å¸æˆ·ä¸èƒ½é€åŽ»å…¶ä»–类型å¸æˆ·',
- 'localhost' => '本地寄主',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- '新增å¸æˆ·' => 'add_account',
- '新增业务' => 'add_business',
- '新增部门' => 'add_department',
- '新增语言' => 'add_language',
- '新增原文' => 'add_sic',
- '新增仓库' => 'add_warehouse',
- '继续' => 'continue',
- 'å¤åˆ¶åˆ°_coa' => 'copy_to_coa',
- '删除' => 'delete',
- '编辑' => 'edit',
- '编辑å¸æˆ·' => 'edit_account',
- '储存' => 'save',
- '当新的储存' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ap b/sql-ledger/locale/cn_utf/ap
deleted file mode 100644
index 4893538..0000000
--- a/sql-ledger/locale/cn_utf/ap
+++ /dev/null
@@ -1,162 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => '应付未付',
- 'AP Transaction' => '应付交易',
- 'AP Transactions' => '应付交易',
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Amount Due' => '应得的总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¡®å®šè¦åˆ é™¤äº¤æ˜“',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆ é™¤äº¤æ˜“',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Check' => '检查',
- 'Closed' => '已关闭',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Continue' => '继续',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'Employee' => 'èŒå‘˜',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'ID' => 'ç¼–å·',
- 'Include in Report' => '一并显示',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => 'ç»ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'å¼€å¯',
- 'Order' => '订å•',
- 'Order Number' => '订å•ç¼–å·',
- 'Paid' => '已付',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project not on file!' => '方案内无此档案',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Receipt' => '收æ®',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => 'æ¥æº',
- 'Subtotal' => 'å°è®¡',
- 'Tax' => '税金',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'To' => '至',
- 'Total' => '总计',
- 'Transaction deleted!' => '巳删除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供应商',
- 'Vendor missing!' => '未指明供应商',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '应付交易' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- '继续' => 'continue',
- '删除' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'æ›´æ–°' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ar b/sql-ledger/locale/cn_utf/ar
deleted file mode 100644
index 162abca..0000000
--- a/sql-ledger/locale/cn_utf/ar
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => '应收未收',
- 'AR Transaction' => '应收交易',
- 'AR Transactions' => '应收交易',
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Amount Due' => '应得的总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¡®å®šè¦åˆ é™¤äº¤æ˜“',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆ é™¤äº¤æ˜“',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Check' => '检查',
- 'Closed' => '已关闭',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Continue' => '继续',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Customer' => '客户',
- 'Customer missing!' => '未指明客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'ID' => 'ç¼–å·',
- 'Include in Report' => '一并显示',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => 'ç»ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'å¼€å¯',
- 'Order' => '订å•',
- 'Order Number' => '订å•ç¼–å·',
- 'Paid' => '已付',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project not on file!' => '方案内无此档案',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Receipt' => '收æ®',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Salesperson' => '销售人员',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Ship via' => '由海è¿',
- 'Shipping Point' => 'æµ·è¿åœ°ç‚¹',
- 'Source' => 'æ¥æº',
- 'Subtotal' => 'å°è®¡',
- 'Tax' => '税金',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '总计',
- 'Transaction deleted!' => '巳删除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '应收交易' => 'ar_transaction',
- '继续' => 'continue',
- '删除' => 'delete',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/arap b/sql-ledger/locale/cn_utf/arap
deleted file mode 100644
index 85cac39..0000000
--- a/sql-ledger/locale/cn_utf/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => '地å€',
- 'Continue' => '继续',
- 'Customer not on file!' => '客户未存档',
- 'Description' => '说明',
- 'Number' => 'ç¼–å·',
- 'Project not on file!' => '方案内无此档案',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Vendor not on file!' => '档案没有此供应商',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- '继续' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/arapprn b/sql-ledger/locale/cn_utf/arapprn
deleted file mode 100644
index 270931b..0000000
--- a/sql-ledger/locale/cn_utf/arapprn
+++ /dev/null
@@ -1,32 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Amount' => '总计',
- 'Check' => '检查',
- 'Continue' => '继续',
- 'Date' => '日期',
- 'Memo' => '备忘录',
- 'Postscript' => '附言',
- 'Printed' => '巳列å°',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Receipt' => '收æ®',
- 'Screen' => 'è¤å¹•',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Source' => 'æ¥æº',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- '继续' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/bp b/sql-ledger/locale/cn_utf/bp
deleted file mode 100644
index 04308e0..0000000
--- a/sql-ledger/locale/cn_utf/bp
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Are you sure you want to remove the marked entries from the queue?' => '您是å¦ç¡®å®šè¦æ¶ˆé™¤æœ‰è®°å·çš„æ¡ç›®',
- 'Cannot remove files!' => 'ä¸èƒ½ç§»é™¤æ¡£æ¡ˆ',
- 'Checks' => '检查',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Continue' => '继续',
- 'Current' => '现有',
- 'Customer' => '客户',
- 'Date' => '日期',
- 'From' => '从',
- 'Invoice' => 'å‘票',
- 'Invoice Number' => 'å‘票编å·',
- 'Marked entries printed!' => '巳列å°æœ‰è®°å·çš„会计项目',
- 'Order' => '订å•',
- 'Order Number' => '订å•ç¼–å·',
- 'Packing Lists' => '出货å•',
- 'Print' => '列å°',
- 'Printing ... ' => '正列å°',
- 'Purchase Orders' => '采购å•',
- 'Quotation' => '报价å•',
- 'Quotation Number' => '报价å•å·ç ',
- 'Quotations' => '报价å•',
- 'Receipts' => '收æ®',
- 'Reference' => 'å‚考资料',
- 'Remove' => '移除',
- 'Removed spoolfiles!' => '移除线轴档案',
- 'Removing marked entries from queue ...' => '正从长队中移除有记å·çš„会计项目',
- 'Sales Invoices' => '销售å‘票',
- 'Sales Orders' => '销货å•',
- 'Select all' => '全选',
- 'Spoolfile' => '线轴档案',
- 'To' => '至',
- 'Vendor' => '供应商',
- 'Yes' => '是',
- 'done' => '完æˆ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- '继续' => 'continue',
- '列å°' => 'print',
- '移除' => 'remove',
- '全选' => 'select_all',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ca b/sql-ledger/locale/cn_utf/ca
deleted file mode 100644
index 94f47b1..0000000
--- a/sql-ledger/locale/cn_utf/ca
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => 'ä½™é¢',
- 'Chart of Accounts' => '会计科目表',
- 'Credit' => 'è´·æ–¹',
- 'Current' => '现有',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Include in Report' => '一并显示',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'List Transactions' => '列出交易',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Project Number' => '方案å·ç ',
- 'Reference' => 'å‚考资料',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Subtotal' => 'å°è®¡',
- 'To' => '至',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- '列出交易' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/cp b/sql-ledger/locale/cn_utf/cp
deleted file mode 100644
index 946c3ed..0000000
--- a/sql-ledger/locale/cn_utf/cp
+++ /dev/null
@@ -1,83 +0,0 @@
-$self{texts} = {
- 'AP' => '应付å¸æ¬¾',
- 'AR' => '应收å¸æ¬¾',
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '总计',
- 'Amount Due' => '应得的总计',
- 'Cannot post Payment!' => 'ä¸èƒ½åŠ å…¥æ¬¾é¡¹',
- 'Cannot post Receipt!' => 'ä¸èƒ½åŠ å…¥æ”¶æ®',
- 'Cannot process payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内处ç†æ¬¾é¡¹',
- 'Continue' => '继续',
- 'Currency' => 'å¸åˆ«',
- 'Customer' => '客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Date missing!' => '未指明日期',
- 'Department' => '部门',
- 'Deposit' => '存款',
- 'Description' => '说明',
- 'Exchange Rate' => '汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Invoice' => 'å‘票',
- 'Invoices' => 'å‘票',
- 'Memo' => '备忘录',
- 'Nothing outstanding for ' => '没有未付æ¥æº',
- 'Number' => 'ç¼–å·',
- 'Payment' => '付款',
- 'Payment posted!' => '巳加入付款',
- 'Post' => '加入',
- 'Postscript' => '附言',
- 'Prepayment' => '预缴',
- 'Print' => '列å°',
- 'Project not on file!' => '方案内无此档案',
- 'Queue' => '长队',
- 'Receipt' => '收æ®',
- 'Receipt posted!' => '巳加入收æ®',
- 'Screen' => 'è¤å¹•',
- 'Select' => '选择',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Source' => 'æ¥æº',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供应商',
- 'Vendor not on file!' => '档案没有此供应商',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- '继续' => 'continue',
- '加入' => 'post',
- '列å°' => 'print',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ct b/sql-ledger/locale/cn_utf/ct
deleted file mode 100644
index 31223f6..0000000
--- a/sql-ledger/locale/cn_utf/ct
+++ /dev/null
@@ -1,167 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => '应付交易',
- 'AP Transactions' => '应付交易',
- 'AR Transaction' => '应收交易',
- 'AR Transactions' => '应收交易',
- 'Accounting Menu' => '会计选å•',
- 'Add Customer' => '新增客户',
- 'Add Vendor' => '新增供应商',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '总计',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Break' => '休æ¯',
- 'Cannot delete customer!' => 'ä¸èƒ½åˆ é™¤å®¢æˆ·',
- 'Cannot delete vendor!' => 'ä¸èƒ½åˆ é™¤ä¾›åº”商',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Closed' => '已关闭',
- 'Company Name' => 'å…¬å¸å称',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Cost' => 'æˆæœ¬',
- 'Country' => '国家',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Customer History' => '客户历å²',
- 'Customer Number' => '客户编å·',
- 'Customer deleted!' => '巳删除客户',
- 'Customer saved!' => '巳储存客户',
- 'Customers' => '客户',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Description' => '说明',
- 'Detail' => '详情',
- 'Discount' => '折扣',
- 'E-mail' => '电å­é‚®ä»¶',
- 'Edit Customer' => '编辑客户',
- 'Edit Vendor' => '编辑供应商',
- 'Employee' => 'èŒå‘˜',
- 'Enddate' => '结æŸæ—¥',
- 'Fax' => '传真',
- 'From' => '从',
- 'Group' => '组',
- 'ID' => 'ç¼–å·',
- 'Include in Report' => '一并显示',
- 'Invoice' => 'å‘票',
- 'Item not on file!' => '查无此项目',
- 'Language' => '语言',
- 'Leadtime' => '总需时',
- 'Manager' => 'ç»ç†',
- 'Name' => 'å称',
- 'Name missing!' => '未指明åå­—',
- 'Notes' => '备注',
- 'Number' => 'ç¼–å·',
- 'Open' => 'å¼€å¯',
- 'Order' => '订å•',
- 'Orphaned' => '无主',
- 'Part Number' => '原料编å·',
- 'Phone' => '电è¯å·ç ',
- 'Pricegroup' => '价格组',
- 'Project Number' => '方案å·ç ',
- 'Purchase Order' => '采购å•',
- 'Purchase Orders' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Quotation' => '报价å•',
- 'Quotations' => '报价å•',
- 'Request for Quotations' => 'è¦æ±‚报价å•',
- 'SIC' => '原文',
- 'SKU' => '被指定的数é‡',
- 'Sales Invoice' => '销售å‘票',
- 'Sales Invoices' => '销售å‘票',
- 'Sales Order' => '销货å•',
- 'Sales Orders' => '销货å•',
- 'Salesperson' => '销售人员',
- 'Save' => '储存',
- 'Search' => 'æœå¯»',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Sell Price' => '售价',
- 'Serial Number' => 'åºå·',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Startdate' => '开始日期',
- 'State/Province' => 'çœ',
- 'Sub-contract GIFI' => '细åˆçº¦GIFI',
- 'Subtotal' => 'å°è®¡',
- 'Summary' => '摘è¦',
- 'Tax' => '税金',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'Tax Number' => '税å·',
- 'Tax Number / SSN' => '税å·',
- 'Taxable' => '应税',
- 'Terms' => '票期淨计',
- 'To' => '至',
- 'Total' => '总计',
- 'Type of Business' => '业务ç§ç±»',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor History' => '供应商历å²',
- 'Vendor Invoice' => '供应商å‘票',
- 'Vendor Invoices' => '供应商å‘票',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor deleted!' => '巳删除供应商',
- 'Vendor saved!' => '巳储存供应商',
- 'Vendors' => '供应商',
- 'days' => 'æ—¥',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- '应付交易' => 'ap_transaction',
- '应收交易' => 'ar_transaction',
- '新增客户' => 'add_customer',
- '新增供应商' => 'add_vendor',
- '继续' => 'continue',
- '删除' => 'delete',
- 'pricelist' => 'pricelist',
- '采购å•' => 'purchase_order',
- '报价å•' => 'quotation',
- 'rfq' => 'rfq',
- '销售å‘票' => 'sales_invoice',
- '销货å•' => 'sales_order',
- '储存' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'æ›´æ–°' => 'update',
- '供应商å‘票' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/gl b/sql-ledger/locale/cn_utf/gl
deleted file mode 100644
index 7af887d..0000000
--- a/sql-ledger/locale/cn_utf/gl
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => '应付交易',
- 'AR Transaction' => '应收交易',
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Add Cash Transfer Transaction' => '新增现金转移å¸ç›®',
- 'Add General Ledger Transaction' => '新增总å¸',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¡®å®šè¦åˆ é™¤äº¤æ˜“',
- 'Asset' => '资产',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => 'ä½™é¢',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆ é™¤äº¤æ˜“',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Continue' => '继续',
- 'Contra' => '相å',
- 'Credit' => 'è´·æ–¹',
- 'Current' => '现有',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Edit Cash Transfer Transaction' => '编辑现金转移',
- 'Edit General Ledger Transaction' => '编辑总å¸',
- 'Equity' => 'è‚¡æƒ',
- 'Expense' => '费用',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'GL Transaction' => 'GL交易',
- 'General Ledger' => '总å¸',
- 'ID' => 'ç¼–å·',
- 'Include in Report' => '一并显示',
- 'Income' => '收入',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Liability' => '负债',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Out of balance transaction!' => 'ä¸å调交易',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Project' => '方案',
- 'Project not on file!' => '方案内无此档案',
- 'Reference' => 'å‚考资料',
- 'Reference missing!' => '未指明å‚考资料',
- 'Reports' => '报表',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => 'æ¥æº',
- 'Subtotal' => 'å°è®¡',
- 'To' => '至',
- 'Transaction Date missing!' => '未指明交易日期!',
- 'Transaction deleted!' => '巳删除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Warning!' => '警告',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '应付交易' => 'ap_transaction',
- '应收交易' => 'ar_transaction',
- '继续' => 'continue',
- '删除' => 'delete',
- 'gl交易' => 'gl_transaction',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'æ›´æ–°' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/hr b/sql-ledger/locale/cn_utf/hr
deleted file mode 100644
index 1c90549..0000000
--- a/sql-ledger/locale/cn_utf/hr
+++ /dev/null
@@ -1,104 +0,0 @@
-$self{texts} = {
- 'AP' => '应付å¸æ¬¾',
- 'Above' => '上文',
- 'Accounting Menu' => '会计选å•',
- 'Add Deduction' => '新增扣除',
- 'Add Employee' => '新增èŒå‘˜',
- 'Address' => '地å€',
- 'Administrator' => '管ç†äºº',
- 'After Deduction' => '扣除以åŽ',
- 'All' => '全部',
- 'Allowances' => '津贴',
- 'Amount' => '总计',
- 'Amount missing!' => 'æ¼å¡«çš„总计',
- 'Based on' => '基于',
- 'Before Deduction' => '扣除之å‰',
- 'Below' => '以下',
- 'City' => '城市',
- 'Continue' => '继续',
- 'Country' => '国家',
- 'Deduct after' => 'å‡å°‘以åŽ',
- 'Deduction deleted!' => '巳删除å‡å°‘',
- 'Deduction saved!' => '巳储存å‡å°‘',
- 'Deductions' => 'å‡é™¤é¢',
- 'Delete' => '删除',
- 'Description' => '说明',
- 'Description missing!' => '未指明æè¿°',
- 'E-mail' => '电å­é‚®ä»¶',
- 'Edit Deduction' => '编辑å‡é™¤é¢',
- 'Edit Employee' => '编辑èŒå‘˜',
- 'Employee' => 'èŒå‘˜',
- 'Employee Name' => 'èŒå‘˜å§“å',
- 'Employee deleted!' => '巳删除èŒå‘˜',
- 'Employee pays' => '付款给èŒå‘˜',
- 'Employee saved!' => '巳储存èŒå‘˜',
- 'Employees' => 'èŒå‘˜',
- 'Employer' => '雇主',
- 'Employer pays' => '付款给雇主',
- 'Enddate' => '结æŸæ—¥',
- 'Expense' => '费用',
- 'Home Phone' => 'ä½å®…电è¯',
- 'ID' => 'ç¼–å·',
- 'Include in Report' => '一并显示',
- 'Login' => '登入',
- 'Manager' => 'ç»ç†',
- 'Maximum' => '最大',
- 'Name' => 'å称',
- 'Name missing!' => '未指明åå­—',
- 'Notes' => '备注',
- 'Number' => 'ç¼–å·',
- 'Orphaned' => '无主',
- 'Payroll Deduction' => '薪金å‡é™¤é¢',
- 'Rate' => '税率',
- 'Rate missing!' => '未指明税率',
- 'Role' => '任务',
- 'Sales' => '销售',
- 'Save' => '储存',
- 'Save as new' => '当新的储存',
- 'Startdate' => '开始日期',
- 'State/Province' => 'çœ',
- 'Update' => 'æ›´æ–°',
- 'User' => '使用者',
- 'Work Phone' => '工作电è¯',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- '新增扣除' => 'add_deduction',
- '新增èŒå‘˜' => 'add_employee',
- '继续' => 'continue',
- '删除' => 'delete',
- '储存' => 'save',
- '当新的储存' => 'save_as_new',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ic b/sql-ledger/locale/cn_utf/ic
deleted file mode 100644
index 3eac4c1..0000000
--- a/sql-ledger/locale/cn_utf/ic
+++ /dev/null
@@ -1,265 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '会计选å•',
- 'Accrual' => '累积',
- 'Active' => '活跃',
- 'Add' => '新增',
- 'Add Assembly' => '新增商å“',
- 'Add Labor/Overhead' => '新增劳工/ç»å¸¸è´¹ç”¨',
- 'Add Part' => '新增原料',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Order' => '新增销货å•',
- 'Add Service' => '新增æœåŠ¡',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Assemblies' => '商å“',
- 'Assemblies restocked!' => 'å·³é‡æ–°è¿›è´§çš„商å“',
- 'Assembly' => '商å“',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Break' => '休æ¯',
- 'COGS' => '货销æˆæœ¬',
- 'Cannot delete item!' => 'ä¸èƒ½åˆ é™¤é¡¹ç›®',
- 'Cannot stock assemblies!' => 'ä¸èƒ½å¸¸å¤‡çš„商å“',
- 'Cash' => '现金',
- 'Cc' => '抄é€',
- 'Check Inventory' => '检查存货清å•',
- 'City' => '城市',
- 'Closed' => '已关闭',
- 'Company Name' => 'å…¬å¸å称',
- 'Components' => '零件',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Cost' => 'æˆæœ¬',
- 'Country' => '国家',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Customer' => '客户',
- 'Customer Number' => '客户编å·',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Description' => '说明',
- 'Drawing' => '图画',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit Assembly' => '编辑商å“',
- 'Edit Labor/Overhead' => '编辑劳工/ç»å¸¸è´¹ç”¨',
- 'Edit Part' => '编辑原料',
- 'Edit Service' => '编辑æœåŠ¡',
- 'Employee' => 'èŒå‘˜',
- 'Expense' => '费用',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'Image' => 'å½¢åƒ',
- 'In-line' => '行内',
- 'Include in Report' => '一并显示',
- 'Income' => '收入',
- 'Individual Items' => '个别的项目',
- 'Inventory' => '库存',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '在åœç”¨æ­¤é¡¹ç»„åˆå“之å‰, 存货数é‡å¿…需为零!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'åœç”¨æ­¤é¡¹é›¶ä»¶ä¹‹å‰, 存货数é‡å¿…需为零!',
- 'Invoice' => 'å‘票',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Item deleted!' => '巳删除项目',
- 'Item not on file!' => '查无此项目',
- 'Items' => '项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Labor/Overhead' => '劳工/ç»å¸¸è´¹ç”¨',
- 'Leadtime' => '总需时',
- 'Line Total' => '总列数',
- 'Link Accounts' => '连结å¸æˆ·',
- 'List Price' => '列出价',
- 'Make' => '制造',
- 'Mar' => '三月',
- 'March' => '三月',
- 'Markup' => '涨价',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '讯æ¯',
- 'Microfiche' => 'å•ç‰‡ç¼©å½±èƒ¶ç‰‡',
- 'Model' => 'åž‹å·',
- 'Name' => 'å称',
- 'No.' => 'å¦',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Obsolete' => 'åœç”¨',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'On Hand' => '巳有存é‡',
- 'Open' => 'å¼€å¯',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Orphaned' => '无主',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Part' => '原料',
- 'Parts' => '原料',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Pricegroup' => '价格组',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Purchase Order' => '采购å•',
- 'Purchase Orders' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Quantity exceeds available units to stock!' => '超过å¯åº“存的数é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Quotations' => '报价å•',
- 'ROP' => 'å†è®¢ç‚¹',
- 'Recd' => '巳收到',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Invoice' => '销售å‘票',
- 'Sales Invoices' => '销售å‘票',
- 'Sales Order' => '销货å•',
- 'Sales Orders' => '销货å•',
- 'Save' => '储存',
- 'Save as new' => '当新的储存',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Sell Price' => '售价',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Serial Number' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Services' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Short' => '短',
- 'State/Province' => 'çœ',
- 'Stock' => '库存',
- 'Stock Assembly' => '盘点',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Tax' => '税金',
- 'To' => '至',
- 'Top Level' => '高水准',
- 'Unit' => 'å•ä½',
- 'Unit of measure' => '度é‡å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Updated' => '巳更新',
- 'Vendor' => '供应商',
- 'Vendor Invoice' => '供应商å‘票',
- 'Vendor Invoices' => '供应商å‘票',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Warehouse' => '仓库',
- 'Weight' => 'é‡é‡',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'days' => 'æ—¥',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- '新增商å“' => 'add_assembly',
- '新增劳工/ç»å¸¸è´¹ç”¨' => 'add_labor/overhead',
- '新增原料' => 'add_part',
- '新增æœåŠ¡' => 'add_service',
- '继续' => 'continue',
- '删除' => 'delete',
- '编辑商å“' => 'edit_assembly',
- '编辑原料' => 'edit_part',
- '编辑æœåŠ¡' => 'edit_service',
- '储存' => 'save',
- '当新的储存' => 'save_as_new',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/io b/sql-ledger/locale/cn_utf/io
deleted file mode 100644
index a6f023d..0000000
--- a/sql-ledger/locale/cn_utf/io
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Order' => '新增销货å•',
- 'Address' => '地å€',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å称',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Country' => '国家',
- 'Customer Number' => '客户编å·',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delivery Date' => '到期日',
- 'Description' => '说明',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'In-line' => '行内',
- 'Invoice' => 'å‘票',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Item not on file!' => '查无此项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '讯æ¯',
- 'No.' => 'å¦',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Part' => '原料',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Purchase Order' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Recd' => '巳收到',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Order' => '销货å•',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'State/Province' => 'çœ',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'To' => '至',
- 'Unit' => 'å•ä½',
- 'Vendor Number' => '供应商å·ç ',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- '继续' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ir b/sql-ledger/locale/cn_utf/ir
deleted file mode 100644
index 6f1b4c5..0000000
--- a/sql-ledger/locale/cn_utf/ir
+++ /dev/null
@@ -1,212 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Order' => '新增销货å•',
- 'Add Vendor Invoice' => '新增供应商å‘票',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您确定è¦åˆ é™¤å‘票编å·',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆ é™¤å‘票',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入å‘票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥å‘票',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å称',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Country' => '国家',
- 'Credit Limit' => '信用é¢åº¦',
- 'Currency' => 'å¸åˆ«',
- 'Customer Number' => '客户编å·',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Due Date' => '到期日',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit Vendor Invoice' => '编辑供应商å‘票',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'In-line' => '行内',
- 'Internal Notes' => '内部备忘录',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Invoice deleted!' => '巳删除å‘票',
- 'Item not on file!' => '查无此项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '语言',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Message' => '讯æ¯',
- 'No.' => 'å¦',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案内无此档案',
- 'Purchase Order' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Recd' => '巳收到',
- 'Record in' => '记录ã€â—ŽFix:◎于;◎於】',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Order' => '销货å•',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Source' => 'æ¥æº',
- 'State/Province' => 'çœ',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'To' => '至',
- 'Total' => '总计',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供应商',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor missing!' => '未指明供应商',
- 'Vendor not on file!' => '档案没有此供应商',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'Yes' => '是',
- 'ea' => '个',
- 'posted!' => '巳加入',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '继续' => 'continue',
- '删除' => 'delete',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- '采购å•' => 'purchase_order',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/is b/sql-ledger/locale/cn_utf/is
deleted file mode 100644
index c1139cc..0000000
--- a/sql-ledger/locale/cn_utf/is
+++ /dev/null
@@ -1,225 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Invoice' => '新增销售å‘票',
- 'Add Sales Order' => '新增销货å•',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您确定è¦åˆ é™¤å‘票编å·',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Business' => '业务',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆ é™¤å‘票',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入å‘票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥å‘票',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å称',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Country' => '国家',
- 'Credit Limit' => '信用é¢åº¦',
- 'Currency' => 'å¸åˆ«',
- 'Customer' => '客户',
- 'Customer Number' => '客户编å·',
- 'Customer missing!' => '未指明客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Due Date' => '到期日',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit Sales Invoice' => '编辑销售å‘票',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'In-line' => '行内',
- 'Internal Notes' => '内部备忘录',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Invoice deleted!' => '巳删除å‘票',
- 'Invoice posted!' => '巳加入å‘票',
- 'Invoice processed!' => '巳处ç†å‘票',
- 'Item not on file!' => '查无此项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Message' => '讯æ¯',
- 'No.' => 'å¦',
- 'Notes' => '备注',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案内无此档案',
- 'Purchase Order' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Recd' => '巳收到',
- 'Record in' => '记录ã€â—ŽFix:◎于;◎於】',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Order' => '销货å•',
- 'Salesperson' => '销售人员',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Ship via' => '由海è¿',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Shipping Point' => 'æµ·è¿åœ°ç‚¹',
- 'Source' => 'æ¥æº',
- 'State/Province' => 'çœ',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'To' => '至',
- 'Total' => '总计',
- 'Trade Discount' => '贸易折扣',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor not on file!' => '档案没有此供应商',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'Yes' => '是',
- 'ea' => '个',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '继续' => 'continue',
- '删除' => 'delete',
- '电å­é‚®ä»¶' => 'e_mail',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- '销货å•' => 'sales_order',
- 'æµ·è¿è‡³' => 'ship_to',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/login b/sql-ledger/locale/cn_utf/login
deleted file mode 100644
index 16ed440..0000000
--- a/sql-ledger/locale/cn_utf/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'å…¬å¸',
- 'Continue' => '继续',
- 'Dataset is newer than version!' => '较新资料集',
- 'Incorrect Dataset version!' => '资料集版本错误!',
- 'Incorrect Password!' => '密ç é”™è¯¯!',
- 'Login' => '登入',
- 'Name' => 'å称',
- 'Password' => '密ç ',
- 'Upgrading to Version' => 'æ­£å‡çº§è‡³æ–°ç‰ˆ',
- 'Version' => '版本',
- 'You did not enter a name!' => '你并未键入å称!',
- 'done' => '完æˆ',
- 'is not a member!' => '并ä¸æ˜¯æˆå‘˜!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- '登入' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/menu b/sql-ledger/locale/cn_utf/menu
deleted file mode 100644
index 3dc30d1..0000000
--- a/sql-ledger/locale/cn_utf/menu
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP' => '应付å¸æ¬¾',
- 'AP Aging' => '应付å¸é¾„分æž',
- 'AP Transaction' => '应付交易',
- 'AR' => '应收å¸æ¬¾',
- 'AR Aging' => '应收å¸é¾„分æž',
- 'AR Transaction' => '应收交易',
- 'Accounting Menu' => '会计选å•',
- 'Add Account' => '新增å¸æˆ·',
- 'Add Assembly' => '新增商å“',
- 'Add Business' => '新增业务',
- 'Add Customer' => '新增客户',
- 'Add Department' => '新增部门',
- 'Add Employee' => '新增èŒå‘˜',
- 'Add GIFI' => '新增 GIFI',
- 'Add Group' => '新增组',
- 'Add Labor/Overhead' => '新增劳工/ç»å¸¸è´¹ç”¨',
- 'Add Language' => '新增语言',
- 'Add Part' => '新增原料',
- 'Add Pricegroup' => '新增价格组',
- 'Add Project' => '新增方案',
- 'Add SIC' => '新增原文',
- 'Add Service' => '新增æœåŠ¡',
- 'Add Transaction' => '新增交易',
- 'Add Vendor' => '新增供应商',
- 'Add Warehouse' => '新增仓库',
- 'All Items' => '全部项目',
- 'Assemblies' => '商å“',
- 'Audit Control' => '稽核控制',
- 'Backup' => '备份',
- 'Balance Sheet' => '资产负债表',
- 'Batch Printing' => '整批å°åˆ·',
- 'Bin List' => '箱的明细表',
- 'Cash' => '现金',
- 'Chart of Accounts' => '会计科目表',
- 'Check' => '检查',
- 'Checks' => '检查',
- 'Components' => '零件',
- 'Customers' => '客户',
- 'Defaults' => '预设',
- 'Departments' => '部门',
- 'Description' => '说明',
- 'Employees' => 'èŒå‘˜',
- 'General Ledger' => '总å¸',
- 'Goods & Services' => '货物åŠæœåŠ¡',
- 'Groups' => '组',
- 'HR' => '人事管ç†',
- 'HTML Templates' => 'HTML 表å•',
- 'History' => '历å²',
- 'Income Statement' => 'æŸç›Šè¡¨',
- 'Invoice' => 'å‘票',
- 'LaTeX Templates' => 'LaTex 模版',
- 'Labor/Overhead' => '劳工/ç»å¸¸è´¹ç”¨',
- 'Language' => '语言',
- 'List Accounts' => '列出å¸å·',
- 'List Businesses' => '列出业务',
- 'List Departments' => '列出部门',
- 'List GIFI' => '列出 GIFI',
- 'List Languages' => '列出语言',
- 'List Projects' => '列出方案',
- 'List SIC' => '列出SIC',
- 'List Warehouses' => '列出仓库',
- 'Logout' => '登出',
- 'Non-taxable' => 'ä¸åº”课税',
- 'Open' => 'å¼€å¯',
- 'Order Entry' => '下å•é¡¹ç›®',
- 'Outstanding' => '未付',
- 'POS Invoice' => 'POSå‘票',
- 'Packing List' => '出货å•',
- 'Packing Lists' => '出货å•',
- 'Parts' => '原料',
- 'Payment' => '付款',
- 'Payments' => '付款',
- 'Pick List' => '选择å•',
- 'Preferences' => '个人设定',
- 'Pricegroups' => '价格组',
- 'Print' => '列å°',
- 'Projects' => '方案',
- 'Purchase Order' => '采购å•',
- 'Purchase Orders' => '采购å•',
- 'Quotation' => '报价å•',
- 'Quotations' => '报价å•',
- 'Receipt' => '收æ®',
- 'Receipts' => '收æ®',
- 'Receive' => '收到',
- 'Reconciliation' => '调和',
- 'Reports' => '报表',
- 'SIC' => '原文',
- 'Sale' => '销售',
- 'Sales Invoice' => '销售å‘票',
- 'Sales Invoices' => '销售å‘票',
- 'Sales Order' => '销货å•',
- 'Sales Orders' => '销货å•',
- 'Save to File' => '储存至档案',
- 'Search' => 'æœå¯»',
- 'Send by E-Mail' => '以电å­é‚®ä»¶å¯„é€',
- 'Services' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Shipping' => 'æµ·è¿',
- 'Statement' => '会计å¸',
- 'Stock Assembly' => '盘点',
- 'Stylesheet' => 'æ ·å¼è¡¨',
- 'System' => '系统',
- 'Tax collected' => '巳收税金',
- 'Tax paid' => '巳付税金',
- 'Text Templates' => '文字模版',
- 'Transactions' => '交易',
- 'Transfer' => '转移',
- 'Translations' => '翻译',
- 'Trial Balance' => '试算表',
- 'Type of Business' => '业务ç§ç±»',
- 'Vendor Invoice' => '供应商å‘票',
- 'Vendors' => '供应商',
- 'Version' => '版本',
- 'Warehouses' => '仓库',
- 'Work Order' => '工作å•',
- 'Yearend' => '年结',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/oe b/sql-ledger/locale/cn_utf/oe
deleted file mode 100644
index b5114dc..0000000
--- a/sql-ledger/locale/cn_utf/oe
+++ /dev/null
@@ -1,293 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '会计选å•',
- 'Add Exchange Rate' => '新增外汇率',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Invoice' => '新增销售å‘票',
- 'Add Sales Order' => '新增销货å•',
- 'Add Vendor Invoice' => '新增供应商å‘票',
- 'Address' => '地å€',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Order Number' => '您是å¦ç¡®å®šè¦åˆ é™¤è®¢å•ç¼–å·',
- 'Are you sure you want to delete Quotation Number' => '您是å¦ç¡®å®šè¦åˆ é™¤æŠ¥ä»·å•ç¼–å·',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Business' => '业务',
- 'Cannot delete order!' => 'ä¸èƒ½åˆ é™¤å®šå•',
- 'Cannot delete quotation!' => 'ä¸èƒ½åˆ é™¤æŠ¥ä»·å•',
- 'Cannot save order!' => 'ä¸èƒ½å‚¨å­˜å®šå•',
- 'Cannot save quotation!' => 'ä¸èƒ½å‚¨å­˜æŠ¥ä»·å•',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Closed' => '已关闭',
- 'Company Name' => 'å…¬å¸å称',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Could not save!' => 'ä¸èƒ½å‚¨å­˜',
- 'Could not transfer Inventory!' => '存货清å•ä¸èƒ½è½¬ç§»',
- 'Country' => '国家',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Customer' => '客户',
- 'Customer Number' => '客户编å·',
- 'Customer missing!' => '未指明客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Date Received' => '收款日期',
- 'Date received missing!' => '未指明收款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Done' => '巳完æˆ',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit Purchase Order' => '编辑采购å•',
- 'Edit Quotation' => '编辑报价å•',
- 'Edit Request for Quotation' => '编辑报价å•è¦æ±‚',
- 'Edit Sales Order' => '编辑销货å•',
- 'Employee' => 'èŒå‘˜',
- 'Exchange Rate' => '汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'ID' => 'ç¼–å·',
- 'In-line' => '行内',
- 'Include in Report' => '一并显示',
- 'Internal Notes' => '内部备忘录',
- 'Inventory saved!' => '巳储存存货',
- 'Inventory transferred!' => '转移的存货',
- 'Invoice' => 'å‘票',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Item not on file!' => '查无此项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => 'ç»ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '讯æ¯',
- 'No.' => 'å¦',
- 'Notes' => '备注',
- 'Nothing entered!' => '没有巳输入',
- 'Nothing to transfer!' => '没有å¯è½¬ç§»çš„项目',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'å¼€å¯',
- 'Order' => '订å•',
- 'Order Date' => '下å•æ—¥æœŸ',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Order deleted!' => '巳删除订å•',
- 'Order processed!' => '巳处ç†è®¢å•',
- 'Order saved!' => '巳储存订å•',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Part' => '原料',
- 'Part Number' => '原料编å·',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案内无此档案',
- 'Purchase Order' => '采购å•',
- 'Purchase Orders' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date' => '报价å•æ—¥æœŸ',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number' => '报价å•å·ç ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Quotation deleted!' => '巳删除报价å•',
- 'Quotations' => '报价å•',
- 'RFQ Number' => 'RFDå·ç ',
- 'Recd' => '巳收到',
- 'Receive Merchandise' => '收到货物',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Request for Quotation' => 'è¦æ±‚报价å•',
- 'Request for Quotations' => 'è¦æ±‚报价å•',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Invoice' => '销售å‘票',
- 'Sales Order' => '销货å•',
- 'Sales Orders' => '销货å•',
- 'Salesperson' => '销售人员',
- 'Save' => '储存',
- 'Save as new' => '当新的储存',
- 'Screen' => 'è¤å¹•',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship Merchandise' => 'æµ·è¿è´§ç‰©',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Ship via' => '由海è¿',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Shipping Date' => 'æµ·è¿æ—¥æœŸ',
- 'Shipping Date missing!' => '未指明海è¿æ—¥æœŸ',
- 'Shipping Point' => 'æµ·è¿åœ°ç‚¹',
- 'State/Province' => 'çœ',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Tax' => '税金',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'Terms' => '票期淨计',
- 'To' => '至',
- 'Total' => '总计',
- 'Trade Discount' => '贸易折扣',
- 'Transfer' => '转移',
- 'Transfer Inventory' => '转移存货',
- 'Transfer to' => '存货至',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Valid until' => '有效至',
- 'Vendor' => '供应商',
- 'Vendor Invoice' => '供应商å‘票',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor missing!' => '未指明供应商',
- 'Vendor not on file!' => '档案没有此供应商',
- 'Warehouse' => '仓库',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'Yes' => '是',
- 'days' => 'æ—¥',
- 'ea' => '个',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '继续' => 'continue',
- '删除' => 'delete',
- '巳完æˆ' => 'done',
- '电å­é‚®ä»¶' => 'e_mail',
- '列å°' => 'print',
- 'print_and_save' => 'print_and_save',
- '采购å•' => 'purchase_order',
- '报价å•' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- '销售å‘票' => 'sales_invoice',
- '销货å•' => 'sales_order',
- '储存' => 'save',
- '当新的储存' => 'save_as_new',
- 'æµ·è¿è‡³' => 'ship_to',
- '转移' => 'transfer',
- 'æ›´æ–°' => 'update',
- '供应商å‘票' => 'vendor_invoice',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/pe b/sql-ledger/locale/cn_utf/pe
deleted file mode 100644
index b265697..0000000
--- a/sql-ledger/locale/cn_utf/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '会计选å•',
- 'Add Group' => '新增组',
- 'Add Pricegroup' => '新增价格组',
- 'Add Project' => '新增方案',
- 'All' => '全部',
- 'Continue' => '继续',
- 'Delete' => '删除',
- 'Description' => '说明',
- 'Description Translations' => '翻译æè¿°',
- 'Edit Description Translations' => '编辑翻译æè¿°',
- 'Edit Group' => '编辑组',
- 'Edit Pricegroup' => '编辑价格组',
- 'Edit Project' => '编辑方案',
- 'Group' => '组',
- 'Group Translations' => '组的翻译',
- 'Group deleted!' => '巳删除的组',
- 'Group missing!' => '未指明的组',
- 'Group saved!' => '巳储存的组',
- 'Groups' => '组',
- 'Language' => '语言',
- 'Languages not defined!' => 'ä¸èƒ½è¾¨è®¤è¯­è¨€',
- 'Number' => 'ç¼–å·',
- 'Orphaned' => '无主',
- 'Pricegroup' => '价格组',
- 'Pricegroup deleted!' => '巳删除价格组',
- 'Pricegroup missing!' => '未指明价格组',
- 'Pricegroup saved!' => '巳储存价格组',
- 'Pricegroups' => '价格组',
- 'Project' => '方案',
- 'Project Description Translations' => '方案æ述的翻译',
- 'Project Number' => '方案å·ç ',
- 'Project Number missing!' => '未指明方案å·ç ',
- 'Project deleted!' => '巳删除方案',
- 'Project saved!' => '巳储存方案',
- 'Projects' => '方案',
- 'Save' => '储存',
- 'Translation' => '翻译',
- 'Translation deleted!' => '巳删除翻译',
- 'Translations saved!' => '巳储存翻译',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- '新增组' => 'add_group',
- '新增价格组' => 'add_pricegroup',
- '新增方案' => 'add_project',
- '继续' => 'continue',
- '删除' => 'delete',
- '储存' => 'save',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/pos b/sql-ledger/locale/cn_utf/pos
deleted file mode 100644
index 4bf1cbe..0000000
--- a/sql-ledger/locale/cn_utf/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Add POS Invoice' => '新增POSå‘票',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Change' => '更改',
- 'Continue' => '继续',
- 'Credit Limit' => '信用é¢åº¦',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Customer' => '客户',
- 'Customer missing!' => '未指明客户',
- 'Delete' => '删除',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Edit POS Invoice' => '编辑POS',
- 'Exchange Rate' => '汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Extended' => '巳扩大',
- 'From' => '从',
- 'Language' => '语言',
- 'Memo' => '备忘录',
- 'Number' => 'ç¼–å·',
- 'Open' => 'å¼€å¯',
- 'Paid' => '已付',
- 'Post' => '加入',
- 'Posted!' => '巳加入',
- 'Price' => 'ä»·æ ¼',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Qty' => 'æ•°é‡',
- 'Receipts' => '收æ®',
- 'Record in' => '记录ã€â—ŽFix:◎于;◎於】',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Salesperson' => '销售人员',
- 'Screen' => 'è¤å¹•',
- 'Source' => 'æ¥æº',
- 'Subtotal' => 'å°è®¡',
- 'To' => '至',
- 'Total' => '总计',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- '继续' => 'continue',
- '删除' => 'delete',
- '加入' => 'post',
- '列å°' => 'print',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/ps b/sql-ledger/locale/cn_utf/ps
deleted file mode 100644
index eb288d7..0000000
--- a/sql-ledger/locale/cn_utf/ps
+++ /dev/null
@@ -1,326 +0,0 @@
-$self{texts} = {
- 'AP Aging' => '应付å¸é¾„分æž',
- 'AR Aging' => '应收å¸é¾„分æž',
- 'AR Outstanding' => '应收未收',
- 'AR Transaction' => '应收交易',
- 'AR Transactions' => '应收交易',
- 'Account' => 'å¸æˆ·',
- 'Account Number' => 'å¸æˆ·ç¼–å·',
- 'Accounting Menu' => '会计选å•',
- 'Accounts' => 'å¸æˆ·',
- 'Accrual' => '累积',
- 'Add POS Invoice' => '新增POSå‘票',
- 'Add Purchase Order' => '新增采购å•',
- 'Add Quotation' => '新增报价å•',
- 'Add Request for Quotation' => '新增报价å•è¦æ±‚',
- 'Add Sales Invoice' => '新增销售å‘票',
- 'Add Sales Order' => '新增销货å•',
- 'Address' => '地å€',
- 'All Accounts' => '全部å¸æˆ·',
- 'Amount' => '总计',
- 'Amount Due' => '应得的总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您确定è¦åˆ é™¤å‘票编å·',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¡®å®šè¦åˆ é™¤äº¤æ˜“',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => 'ä½™é¢',
- 'Balance Sheet' => '资产负债表',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Billing Address' => 'å¸å•åœ°å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明细表',
- 'Business' => '业务',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆ é™¤å‘票',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆ é™¤äº¤æ˜“',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入å‘票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥å‘票',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入款项',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²å…³é—­çš„时段内加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Cash' => '现金',
- 'Cc' => '抄é€',
- 'Change' => '更改',
- 'Check' => '检查',
- 'City' => '城市',
- 'Closed' => '已关闭',
- 'Company Name' => 'å…¬å¸å称',
- 'Compare to' => '对照',
- 'Confirm!' => 'å…¥å¸æˆåŠŸ!',
- 'Contact' => '连络人',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Country' => '国家',
- 'Credit' => 'è´·æ–¹',
- 'Credit Limit' => '信用é¢åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => 'å¸åˆ«',
- 'Current' => '现有',
- 'Current Earnings' => '现有收益',
- 'Customer' => '客户',
- 'Customer Number' => '客户编å·',
- 'Customer missing!' => '未指明客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•°çš„ä½ç½®',
- 'Delete' => '删除',
- 'Delivery Date' => '到期日',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Detail' => '详情',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail Statement to' => '电邮会计账到',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'E-mailed' => '巳电邮',
- 'Edit POS Invoice' => '编辑POS',
- 'Edit Sales Invoice' => '编辑销售å‘票',
- 'Exch' => '汇率',
- 'Exchange Rate' => '汇率',
- 'Exchange rate for payment missing!' => '未指明付款的汇率',
- 'Exchange rate missing!' => '未指明汇率',
- 'Extended' => '巳扩大',
- 'Fax' => '传真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Group' => '组',
- 'Group Items' => '组的项目',
- 'Heading' => '标题, ',
- 'ID' => 'ç¼–å·',
- 'In-line' => '行内',
- 'Include Exchange Rate Difference' => '包å«å¤–汇差è·',
- 'Include in Report' => '一并显示',
- 'Income Statement' => 'æŸç›Šè¡¨',
- 'Internal Notes' => '内部备忘录',
- 'Invoice' => 'å‘票',
- 'Invoice Date' => 'å‘票日期',
- 'Invoice Date missing!' => '未指明å‘票日期!',
- 'Invoice Number' => 'å‘票编å·',
- 'Invoice Number missing!' => '未指明å‘票编å·!',
- 'Invoice deleted!' => '巳删除å‘票',
- 'Invoice posted!' => '巳加入å‘票',
- 'Invoice processed!' => '巳处ç†å‘票',
- 'Item not on file!' => '查无此项目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '语言',
- 'Manager' => 'ç»ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Message' => '讯æ¯',
- 'Method' => '方法',
- 'N/A' => 'ä¸é€‚用',
- 'No.' => 'å¦',
- 'Non-taxable Purchases' => 'ä¸åº”课税的采购',
- 'Non-taxable Sales' => 'ä¸åº”课税的销售',
- 'Notes' => '备注',
- 'Nothing selected!' => '没有巳选择',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Number missing in Row' => '此列中缺少数值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'å¼€å¯',
- 'Order' => '订å•',
- 'Order Date missing!' => '未指明下å•æ—¥æœŸ!',
- 'Order Number' => '订å•ç¼–å·',
- 'Order Number missing!' => '未指明订å•ç¼–å·!',
- 'Packing List' => '出货å•',
- 'Packing List Date missing!' => '未指明包装清å•æ—¥æœŸ!',
- 'Packing List Number missing!' => '未指明包装清å•ç¼–å·!',
- 'Paid' => '已付',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '电è¯å·ç ',
- 'Pick List' => '选择å•',
- 'Post' => '加入',
- 'Post as new' => '当新的加入',
- 'Posted!' => '巳加入',
- 'Postscript' => '附言',
- 'Price' => 'ä»·æ ¼',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project Number' => '方案å·ç ',
- 'Project Transactions' => '方案交易',
- 'Project not on file!' => '方案内无此档案',
- 'Purchase Order' => '采购å•',
- 'Qty' => 'æ•°é‡',
- 'Queue' => '长队',
- 'Queued' => '巳排队',
- 'Quotation' => '报价å•',
- 'Quotation Date missing!' => '未指明报价å•æ—¥æœŸ',
- 'Quotation Number missing!' => '未指明报价å•å·ç ',
- 'Recd' => '巳收到',
- 'Receipt' => '收æ®',
- 'Receipts' => '收æ®',
- 'Record in' => '记录ã€â—ŽFix:◎于;◎於】',
- 'Remaining' => 'å°šã€â—ŽFix:â—Žä½™;◎馀】',
- 'Report for' => '报表æ¥æº',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的数é‡',
- 'Sales Order' => '销货å•',
- 'Salesperson' => '销售人员',
- 'Screen' => 'è¤å¹•',
- 'Select all' => '全选',
- 'Select from one of the items below' => '于下列项目中选择一项',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºå·',
- 'Service' => 'æœåŠ¡',
- 'Ship' => '船',
- 'Ship to' => 'æµ·è¿è‡³',
- 'Ship via' => '由海è¿',
- 'Shipping Address' => 'æµ·è¿åœ°å€',
- 'Shipping Point' => 'æµ·è¿åœ°ç‚¹',
- 'Source' => 'æ¥æº',
- 'Standard' => '标准',
- 'State/Province' => 'çœ',
- 'Statement' => '会计å¸',
- 'Statement sent to' => 'é€ä¼šè®¡å¸è‡³',
- 'Statements sent to printer!' => 'é€ä¼šè®¡å¸è‡³åˆ—å°æœº',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Summary' => '摘è¦',
- 'Tax' => '税金',
- 'Tax Included' => 'å·³å«ç¨Žé‡‘',
- 'Tax collected' => '巳收税金',
- 'Tax paid' => '巳付税金',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '总计',
- 'Trade Discount' => '贸易折扣',
- 'Transaction deleted!' => '巳删除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Trial Balance' => '试算表',
- 'Unit' => 'å•ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供应商',
- 'Vendor Number' => '供应商å·ç ',
- 'Vendor not on file!' => '档案没有此供应商',
- 'What type of item is this?' => '此项目的型�',
- 'Work Order' => '工作å•',
- 'Yes' => '是',
- 'as at' => '截至',
- 'ea' => '个',
- 'for Period' => '期间',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '应收交易' => 'ar_transaction',
- '继续' => 'continue',
- '删除' => 'delete',
- '电å­é‚®ä»¶' => 'e_mail',
- '加入' => 'post',
- '当新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- '销货å•' => 'sales_order',
- '全选' => 'select_all',
- 'æµ·è¿è‡³' => 'ship_to',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/pw b/sql-ledger/locale/cn_utf/pw
deleted file mode 100644
index 34784e6..0000000
--- a/sql-ledger/locale/cn_utf/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => '继续',
- 'Password' => '密ç ',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- '继续' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/rc b/sql-ledger/locale/cn_utf/rc
deleted file mode 100644
index d11a597..0000000
--- a/sql-ledger/locale/cn_utf/rc
+++ /dev/null
@@ -1,74 +0,0 @@
-$self{texts} = {
- 'Account' => 'å¸æˆ·',
- 'Accounting Menu' => '会计选å•',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => 'ä½™é¢',
- 'Beginning Balance' => '起始余é¢',
- 'Cleared' => '已清除',
- 'Continue' => '继续',
- 'Current' => '现有',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decrease' => 'å‡å°‘',
- 'Deposit' => '存款',
- 'Description' => '说明',
- 'Detail' => '详情',
- 'Difference' => '差异',
- 'Done' => '巳完æˆ',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Include Exchange Rate Difference' => '包å«å¤–汇差è·',
- 'Increase' => '增加',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Out of balance!' => 'ä¸åè°ƒ',
- 'Outstanding' => '未付',
- 'Payment' => '付款',
- 'Reconciliation' => '调和',
- 'Reconciliation Report' => '调和报告',
- 'Select all' => '全选',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => 'æ¥æº',
- 'Statement Balance' => '会计å¸ä½™é¢',
- 'Summary' => '摘è¦',
- 'To' => '至',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- '继续' => 'continue',
- '巳完æˆ' => 'done',
- '全选' => 'select_all',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cn_utf/rp b/sql-ledger/locale/cn_utf/rp
deleted file mode 100644
index 185e6dd..0000000
--- a/sql-ledger/locale/cn_utf/rp
+++ /dev/null
@@ -1,159 +0,0 @@
-$self{texts} = {
- 'AP Aging' => '应付å¸é¾„分æž',
- 'AR Aging' => '应收å¸é¾„分æž',
- 'Account' => 'å¸æˆ·',
- 'Account Number' => 'å¸æˆ·ç¼–å·',
- 'Accounting Menu' => '会计选å•',
- 'Accounts' => 'å¸æˆ·',
- 'Accrual' => '累积',
- 'Address' => '地å€',
- 'All Accounts' => '全部å¸æˆ·',
- 'Amount' => '总计',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Attachment' => '附档',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => 'ä½™é¢',
- 'Balance Sheet' => '资产负债表',
- 'Bcc' => 'ä¸æ˜¾ç¤ºæŠ„é€',
- 'Cash' => '现金',
- 'Cc' => '抄é€',
- 'Compare to' => '对照',
- 'Continue' => '继续',
- 'Copies' => '副本',
- 'Credit' => 'è´·æ–¹',
- 'Curr' => 'ç›®å‰',
- 'Current' => '现有',
- 'Current Earnings' => '现有收益',
- 'Customer' => '客户',
- 'Customer not on file!' => '客户未存档',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•°çš„ä½ç½®',
- 'Department' => '部门',
- 'Description' => '说明',
- 'Detail' => '详情',
- 'Due Date' => '到期日',
- 'E-mail' => '电å­é‚®ä»¶',
- 'E-mail Statement to' => '电邮会计账到',
- 'E-mail address missing!' => '未指明电å­é‚®ä»¶ä½å€!',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '从',
- 'Heading' => '标题, ',
- 'ID' => 'ç¼–å·',
- 'In-line' => '行内',
- 'Include Exchange Rate Difference' => '包å«å¤–汇差è·',
- 'Include in Report' => '一并显示',
- 'Income Statement' => 'æŸç›Šè¡¨',
- 'Invoice' => 'å‘票',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '语言',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '备忘录',
- 'Message' => '讯æ¯',
- 'Method' => '方法',
- 'N/A' => 'ä¸é€‚用',
- 'Non-taxable Purchases' => 'ä¸åº”课税的采购',
- 'Non-taxable Sales' => 'ä¸åº”课税的销售',
- 'Nothing selected!' => '没有巳选择',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => 'ç¼–å·',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order' => '订å•',
- 'Payments' => '付款',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Project' => '方案',
- 'Project Number' => '方案å·ç ',
- 'Project Transactions' => '方案交易',
- 'Project not on file!' => '方案内无此档案',
- 'Receipts' => '收æ®',
- 'Report for' => '报表æ¥æº',
- 'Salesperson' => '销售人员',
- 'Screen' => 'è¤å¹•',
- 'Select all' => '全选',
- 'Select from one of the names below' => '于下列姓å中选择一个',
- 'Select from one of the projects below' => '于下列方案中选择一个',
- 'Select postscript or PDF!' => 'ã€â—ŽFix:◎于;◎於】附言或PDF中选一',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => 'æ¥æº',
- 'Standard' => '标准',
- 'Statement' => '会计å¸',
- 'Statement sent to' => 'é€ä¼šè®¡å¸è‡³',
- 'Statements sent to printer!' => 'é€ä¼šè®¡å¸è‡³åˆ—å°æœº',
- 'Subject' => '标题',
- 'Subtotal' => 'å°è®¡',
- 'Summary' => '摘è¦',
- 'Tax' => '税金',
- 'Tax collected' => '巳收税金',
- 'Tax paid' => '巳付税金',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '总计',
- 'Trial Balance' => '试算表',
- 'Vendor' => '供应商',
- 'Vendor not on file!' => '档案没有此供应商',
- 'as at' => '截至',
- 'for Period' => '期间',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- '继续' => 'continue',
- '电å­é‚®ä»¶' => 'e_mail',
- '列å°' => 'print',
- '全选' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/co/COPYING b/sql-ledger/locale/co/COPYING
deleted file mode 100644
index 45dd237..0000000
--- a/sql-ledger/locale/co/COPYING
+++ /dev/null
@@ -1,32 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Spanish texts:
-#
-# Author: Maria Gabriela Fong <mgfong@maga.tzo.org>
-# John Stoddart <jstypo@imagencolor.com.ve>
-# Federico Montesino Pouzols <fedemp@arrok.com>
-# Tomás Pereira <topec@percar.com>
-#
-# Adoption to Colombian Accounting Terms:
-#
-# Authors: Dirk Enrique Seiffert <info@caribenet.com>
-# Lourdes Mejía Martinez <lourdes@caribenet.com>
-# Silfredo Godoy Chavez <silfredo@caribenet.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/co/LANGUAGE b/sql-ledger/locale/co/LANGUAGE
deleted file mode 100644
index 4277d95..0000000
--- a/sql-ledger/locale/co/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (Colombia)
diff --git a/sql-ledger/locale/co/Num2text b/sql-ledger/locale/co/Num2text
deleted file mode 100644
index 70d4db6..0000000
--- a/sql-ledger/locale/co/Num2text
+++ /dev/null
@@ -1,210 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'cero',
- 1 => 'un',
- '1o' => 'uno',
- 2 => 'dos',
- 3 => 'tres',
- 4 => 'cuatro',
- 5 => 'cinco',
- 6 => 'seis',
- 7 => 'siete',
- 8 => 'ocho',
- 9 => 'nueve',
- 10 => 'diez',
- 11 => 'once',
- 12 => 'doce',
- 13 => 'trece',
- 14 => 'catorce',
- 15 => 'quince',
- 16 => 'dieciséis',
- 17 => 'diecisiete',
- 18 => 'dieciocho',
- 19 => 'diecinueve',
- 20 => 'veinte',
- 21 => 'veintiún',
- '21o' => 'veintiuno',
- 22 => 'veintidós',
- 23 => 'veintitrés',
- 24 => 'veinticuatro',
- 25 => 'veinticinco',
- 26 => 'veintiséis',
- 27 => 'veintisiete',
- 28 => 'veintiocho',
- 29 => 'veintinueve',
- 30 => 'treinta',
- 40 => 'cuarenta',
- 50 => 'cincuenta',
- 60 => 'sesenta',
- 70 => 'setenta',
- 80 => 'ochenta',
- 90 => 'noventa',
- 500 => 'quinientos',
- 700 => 'setecientos',
- 900 => 'novecientos',
- 10**2 => 'ciento',
- 10**3 => 'mil',
- 10**6 => 'millón',
- 10**12 => 'billón',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, $amount;
- my @numblock = ();
- my $stripun = 0;
- my @a = ();
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- # special case for 1000
- if ($numblock[1] eq '1' && $numblock[0] gt '000') {
- # remove first array element from textnumber
- $stripun = 1;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- if ($num[0] == 1) {
- push @textnumber, $self->{numbername}{10**2};
- } else {
- # special case for 500, 700, 900
- if (grep /$num[0]/, (5,7,9)) {
- push @textnumber, $self->{numbername}{"${num[0]}00"};
-
- } else {
-
- # the one from hundreds, append cientos
- push @textnumber, $self->{numbername}{$num[0]}.$self->{numbername}{10**2}.'s';
-
- }
- }
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i], $i);
- } elsif ($numblock[$i] > 0) {
- # ones
- $num = $numblock[$i];
- $num .= 'o' if ($num == 1 && $i == 0);
- push @textnumber, $self->{numbername}{$num};
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- if ($numblock[$i] > 1) {
- if ($i == 2 || $i == 4) {
- $a = $self->{numbername}{$num}."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } elsif ($i == 3) {
- $num = 10**($i * 2);
- $a = "$self->{10**3} $self->{numbername}{$num}"."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } else {
- if ($i == 1) {
- push @textnumber, $self->{numbername}{$num};
- } else {
- push @textnumber, $self->{numbername}{$num}.'s';
- }
- }
- } else {
- push @textnumber, $self->{numbername}{$num};
- }
- }
-
- pop @numblock;
-
- }
-
- shift @textnumber if $stripun;
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount, $i) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 30) {
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $amount .= 'o' if ($num[1] == 1 && $i == 0);
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= " y ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/co/admin b/sql-ledger/locale/co/admin
deleted file mode 100644
index 39190a7..0000000
--- a/sql-ledger/locale/co/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Añadir usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todas las Bases de Datos están actualizadas',
- 'Cannot create Lock!' => 'No puedo crear lock-file',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por editar',
- 'Company' => 'Empresa',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear plan de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date Format' => 'Formato de fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit User' => 'Editar Usuario',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'Language' => 'Idioma',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Bloquear sistema',
- 'Lockfile created!' => 'Sistema bloqueado',
- 'Lockfile removed!' => 'Desbloqueado!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Falta Nombre del Usuario',
- 'Logout' => 'Salir',
- 'Manager' => 'Administrador',
- 'Menu Width' => 'Ancho del Menu',
- 'Multibyte Encoding' => 'Codificación Multibyte',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas plantillas',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Number Format' => 'Formato de número',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PostGres Admin',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el Puerto',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilo',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Unlock System' => 'Unlock sistema',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'does not exist' => 'no existe',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'localhost' => 'máquina local',
- 'locked!' => 'Bloqueado!',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'añadir_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_base_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_base_de_datos' => 'delete_dataset',
- 'bloquear_sistema' => 'lock_system',
- 'entrar' => 'login',
- 'salir' => 'logout',
- 'administración_de_la_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_la_base_de_datos_postgresql' => 'pg_database_administration',
- 'postgres_admin' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_sistema' => 'unlock_system',
- 'actualizar_base_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/co/all b/sql-ledger/locale/co/all
deleted file mode 100644
index 1acc12e..0000000
--- a/sql-ledger/locale/co/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Facturas de Proveedores',
- 'AP Aging' => 'Cartera',
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR' => 'Factura de Ventas',
- 'AR Aging' => 'Cartera ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'About' => 'Acerca de',
- 'Above' => 'Encima de',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro Auditoría',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Agregar Empresa',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add Customer' => 'Añadir cliente',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add GIFI' => 'Añadir cuenta PUC',
- 'Add General Ledger Transaction' => 'Añadir Nota de Contabilidad',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Honorarios',
- 'Add Language' => 'Agregar Idioma',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add SIC' => 'Agregar SIC',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir Transacción',
- 'Add User' => 'Añadir usuario',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Add Warehouse' => 'Agregar Bodega',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Despues Deducción',
- 'All' => 'Todos',
- 'All Accounts' => 'Todas las Cuentas',
- 'All Datasets up to date!' => 'Todas las Bases de Datos están actualizadas',
- 'All Items' => 'Todo',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Amount missing!' => 'Falta suma',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => 'Seguro que quiere borrar la cotización número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Seguro que quieres remover las entradas seleccionadas de la cola?',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Compuesto',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => 'BIC',
- 'BOM' => 'Listado de piezas',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Based on' => 'Basado en',
- 'Batch Printing' => 'Impresión en serie',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Beginning Balance' => 'Balance Inicial',
- 'Below' => 'Debajo',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Bin Lists' => 'Listas Empaque',
- 'Books are open' => 'Los libros están abiertos',
- 'Break' => 'Pausa',
- 'Business' => 'Empresa',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => 'Empresa eliminada!',
- 'Business saved!' => 'Empresa guardada!',
- 'C' => 'C',
- 'COGS' => 'Costo de los artículos',
- 'Cannot create Lock!' => 'No puedo crear lock-file',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => 'No puedo borrar cotización!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cannot post Payment!' => 'No puedo guardar pago',
- 'Cannot post Receipt!' => 'No puedo guardar recibo',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Cannot remove files!' => 'No puedo borrar archivos!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => 'No puedo guardar preferencias!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot save quotation!' => 'No puedo guardar cotización!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No puedo crear multiples opciones para',
- 'Cannot set multiple options for Parts Inventory' => 'No puedo crear multiples opciones para Inventario',
- 'Cannot set multiple options for Service Items' => 'No puedo crear multiples opciones para Servicios',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Revisar Inventario',
- 'Checks' => 'Cheques',
- 'City' => 'Ciudad',
- 'Cleared' => 'Borrado',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por editar',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta código',
- 'Company' => 'Empresa',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar con',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al plan de cuentas',
- 'Cost' => 'Costo',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'No pude guardar',
- 'Could not transfer Inventory!' => 'No puedo transferir inventario!',
- 'Country' => 'País',
- 'Create Chart of Accounts' => 'Crear plan de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => 'Fecha recibido',
- 'Date missing!' => '¡Falta la fecha!',
- 'Date received missing!' => 'Faltas datos',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Decrease' => 'Reducir',
- 'Deduct after' => 'Deducir despues de',
- 'Deduction deleted!' => 'Deducción borrado!',
- 'Deduction saved!' => 'Deducción guardado',
- 'Deductions' => 'Deducciones',
- 'Defaults' => 'Preferencias',
- 'Defaults saved!' => 'Guardado!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Department deleted!' => 'Centro de Costos borrado!',
- 'Department saved!' => 'Centro de Costos guardado!',
- 'Departments' => 'Centro de Costos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Descripción Traducción',
- 'Description missing!' => 'Falta Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Hecho',
- 'Drawing' => 'Reintegro',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Business' => 'Editar empresa',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit Description Translations' => 'Editar Descripción Traducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Edit GIFI' => 'Editar PUC',
- 'Edit General Ledger Transaction' => 'Editar Notas Contables',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => 'Editar Honorario',
- 'Edit Language' => 'Editar Idioma',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar Proyecto',
- 'Edit Purchase Order' => 'Editar Pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Edit Sales Order' => 'Editar Cotización',
- 'Edit Service' => 'Editar Servicio',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit User' => 'Editar Usuario',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Edit Vendor Invoice' => 'Editar Factura de Proveedor',
- 'Edit Warehouse' => 'Editar Bodega',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado cancela',
- 'Employee saved!' => 'Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador cancela',
- 'Enddate' => 'Fecha final',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'Tasa de Cambio',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GIFI deleted!' => '¡Borrado el código PUC!',
- 'GIFI missing!' => 'No se ha definido el código PUC',
- 'GIFI saved!' => '¡Guardado el código PUC!',
- 'GL Transaction' => 'Nota de Contabilidad',
- 'General Ledger' => 'Notas de Contabilidad',
- 'Goods & Services' => 'Bienes y servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Group Translations' => 'Traducción Grupos',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Historial',
- 'Home Phone' => 'Teléfono residencia',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Income Statement' => 'Estado de Resultados',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Increase' => 'Aumentar',
- 'Individual Items' => 'Artículos individuales',
- 'Internal Notes' => 'Notas internas',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => '¿Es esta una cuenta de Cartera por Cobrar/Pagar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Productos/Servicios',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Honorarios',
- 'Language' => 'Idioma',
- 'Language deleted!' => 'Idioma Borrada!',
- 'Language saved!' => 'Idioma Guardada!',
- 'Languages' => 'Idiomas',
- 'Languages not defined!' => 'Idiomas no configuradas!',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Line Total' => 'Total de la línea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => '',
- 'List Accounts' => 'Mostrar Plan Único de Cuentas',
- 'List Businesses' => 'Mostrar empresas',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Mostrar PUC',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Price' => 'Precio de Lista',
- 'List Projects' => 'Mostrar Projectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Transactions' => 'Mostrar Transacciones',
- 'List Warehouses' => 'Mostar bodegas',
- 'Lock System' => 'Bloquear sistema',
- 'Lockfile created!' => 'Sistema bloqueado',
- 'Lockfile removed!' => 'Desbloqueado!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Falta Nombre del Usuario',
- 'Logout' => 'Salir',
- 'Make' => 'Marca',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => 'Selección impresa',
- 'Markup' => 'Margen',
- 'Maximum' => 'Maximo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Ancho del Menu',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => 'Mes',
- 'Multibyte Encoding' => 'Codificación Multibyte',
- 'N/A' => 'Sin respuesta',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'New Templates' => 'Nuevas plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'No.' => 'No.',
- 'Non-taxable' => 'Sin Impuestos',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Información Incompleta',
- 'Nothing outstanding for ' => 'Nada en Cartera para',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Nada para transferir',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Entry' => 'Cotizaciones y pedidos',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => 'Pedido procesado',
- 'Order saved!' => 'Pedido guardado',
- 'Orphaned' => 'Huérfano',
- 'Out of balance transaction!' => 'Transacción fuera de Balance!',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'PDF' => 'PDF',
- 'POS' => 'Punto de Venta',
- 'POS Invoice' => 'Factura Punto de Venta',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Packing Lists' => 'Lista de empaque',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número parte',
- 'Partnumber' => '',
- 'Parts' => 'Artículos',
- 'Parts Inventory' => 'Inventario de Artículos',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Comprobante de Egreso',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Pagos',
- 'Payroll Deduction' => 'Deducciones Nómina',
- 'Period' => 'Periodo',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PostGres Admin',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Pick Lists' => 'Listas de Empaque',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el Puerto',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Prepayment' => 'Anticipio',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => 'Grupo Borrado!',
- 'Pricegroup missing!' => 'Falta Grupo!',
- 'Pricegroup saved!' => 'Guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Print and Save' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Printer' => 'Impresora',
- 'Printing ... ' => 'Imprimiendo...',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Descripción Traducción del Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Number missing!' => '¡Falta el Número de Proyecto!',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => 'No hay esta cantidad disponible en el Inventario!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => '',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotation deleted!' => 'Cotización borrado',
- 'Quotations' => 'Cotizaciones',
- 'R' => 'R',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQ ' => '',
- 'RFQ Number' => 'Número de Cotización',
- 'RFQs' => 'Cotizaciones solicitados',
- 'ROP' => 'Tope de envio',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa!',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo agregado',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'Cobros',
- 'Receive' => 'Recibir',
- 'Receive Merchandise' => 'Recibir mercancia',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Remaining' => 'Resto',
- 'Remove' => 'Eliminar',
- 'Remove Audit trails up to' => 'Remover Rastro de Auditoría hasta',
- 'Removed spoolfiles!' => 'Archivos eliminados de la cola',
- 'Removing marked entries from queue ...' => 'Removiendo entradas sellecionads de la cola...',
- 'Report for' => 'Informe para',
- 'Reports' => 'Informes',
- 'Request for Quotation' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'Required by' => 'Aceptado el',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'Role' => 'Función',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC borrado!',
- 'SIC saved!' => 'SIC guardado!',
- 'SKU' => 'SKU',
- 'SSN' => '',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Factura de Venta',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en un archivo',
- 'Screen' => 'Pantalla',
- 'Search' => 'Búsqueda',
- 'Select' => 'Seleccionar',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de venta',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Serial Number' => 'Número del Serial',
- 'Service' => 'Servicio',
- 'Service Items' => 'Servicios',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar plantillas',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping' => 'Envio',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Date' => 'Fecha del Envio',
- 'Shipping Date missing!' => 'Falta Fecha del Envio',
- 'Shipping Point' => 'Destino',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => 'Cola de Impresión',
- 'Standard' => 'Estándard',
- 'Standard Industrial Codes' => 'Standard Industrial Codes (Código estandardizado)',
- 'Startdate' => 'Fecha inicial',
- 'State' => '',
- 'State/Province' => 'Departamento',
- 'Statement' => 'Estado de cuenta',
- 'Statement Balance' => 'Balance de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'Sub-contract GIFI' => 'Sub-Contrato PUC',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuestos',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'NIT/CC',
- 'Tax Number / SSN' => 'NIT./CC./CE.',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Taxable' => 'Impuestos gravables',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Condiciones',
- 'Text Templates' => 'Plantillas de Texto',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Top Level' => 'Nivel superior',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción Borrada!',
- 'Translation not on file!' => 'No hay traducción',
- 'Translations' => 'Traducciones',
- 'Translations saved!' => 'Guardado',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Type of Business' => 'Clase de Negocio',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Unlock sistema',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Updated' => '¡Actualizado!',
- 'Upgrading to Version' => 'Actulaizando a versión',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => 'Historial Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => 'Bodega',
- 'Warehouse deleted!' => 'Bodega borrado',
- 'Warehouse saved!' => 'Bodegas guardado',
- 'Warehouses' => 'Bodegas',
- 'Warning!' => 'Alerta!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Work Phone' => 'Teléfono (Oficina)',
- 'Year' => 'Año',
- 'Yearend' => 'Fin del Año',
- 'Yearend date missing!' => 'Falta fecha del Fin del Año',
- 'Yearend posted!' => 'Fin del Año guardado!',
- 'Yearend posting failed!' => 'No se puede guardar Fin del Año',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'as at' => 'al',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => 'hecho',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'is not a member!' => 'no es miembro',
- 'localhost' => 'máquina local',
- 'locked!' => 'Bloqueado!',
- 'posted!' => 'Guardado',
- 'sent' => 'Enviado',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/co/am b/sql-ledger/locale/co/am
deleted file mode 100644
index 30470a0..0000000
--- a/sql-ledger/locale/co/am
+++ /dev/null
@@ -1,249 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AR' => 'Factura de Ventas',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro Auditoría',
- 'Add Account' => 'Añadir cuenta',
- 'Add Business' => 'Agregar Empresa',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add GIFI' => 'Añadir cuenta PUC',
- 'Add Language' => 'Agregar Idioma',
- 'Add SIC' => 'Agregar SIC',
- 'Add Warehouse' => 'Agregar Bodega',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Books are open' => 'Los libros están abiertos',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => 'Empresa eliminada!',
- 'Business saved!' => 'Empresa guardada!',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => 'No puedo guardar preferencias!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No puedo crear multiples opciones para',
- 'Cannot set multiple options for Parts Inventory' => 'No puedo crear multiples opciones para Inventario',
- 'Cannot set multiple options for Service Items' => 'No puedo crear multiples opciones para Servicios',
- 'Cash' => 'Efectivo',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta código',
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Copy to COA' => 'Copiar al plan de cuentas',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Credit' => 'Crédito',
- 'Customer Number' => 'Número del cliente',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Dataset' => 'Base de datos',
- 'Date Format' => 'Formato de fecha',
- 'Debit' => 'Débito',
- 'Defaults saved!' => 'Guardado!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Department deleted!' => 'Centro de Costos borrado!',
- 'Department saved!' => 'Centro de Costos guardado!',
- 'Departments' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Description missing!' => 'Falta Descripción',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Business' => 'Editar empresa',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit GIFI' => 'Editar PUC',
- 'Edit Language' => 'Editar Idioma',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit Warehouse' => 'Editar Bodega',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GIFI deleted!' => '¡Borrado el código PUC!',
- 'GIFI missing!' => 'No se ha definido el código PUC',
- 'GIFI saved!' => '¡Guardado el código PUC!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Is this a summary account to record' => '¿Es esta una cuenta de Cartera por Cobrar/Pagar?',
- 'Labor/Overhead' => 'Honorarios',
- 'Language' => 'Idioma',
- 'Language deleted!' => 'Idioma Borrada!',
- 'Language saved!' => 'Idioma Guardada!',
- 'Languages' => 'Idiomas',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Link' => 'Enlaces',
- 'Menu Width' => 'Ancho del Menu',
- 'Method' => 'Metódo',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Parts Inventory' => 'Inventario de Artículos',
- 'Password' => 'Contraseña',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Comprobante de Egreso',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Printer' => 'Impresora',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'RFQ Number' => 'Número de Cotización',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Cobros',
- 'Reference' => 'Referencia',
- 'Remove Audit trails up to' => 'Remover Rastro de Auditoría hasta',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'SIC deleted!' => 'SIC borrado!',
- 'SIC saved!' => 'SIC guardado!',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Servicios',
- 'Signature' => 'Firma',
- 'Standard Industrial Codes' => 'Standard Industrial Codes (Código estandardizado)',
- 'Stylesheet' => 'Hoja de estilo',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuestos',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Type of Business' => 'Clase de Negocio',
- 'User' => 'Usuario',
- 'Vendor Number' => 'Código Vendedor',
- 'Version' => 'Versión',
- 'Warehouse deleted!' => 'Bodega borrado',
- 'Warehouse saved!' => 'Bodegas guardado',
- 'Warehouses' => 'Bodegas',
- 'Weight Unit' => 'Unidad de peso',
- 'Yearend' => 'Fin del Año',
- 'Yearend date missing!' => 'Falta fecha del Fin del Año',
- 'Yearend posted!' => 'Fin del Año guardado!',
- 'Yearend posting failed!' => 'No se puede guardar Fin del Año',
- 'Yes' => 'Si',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'localhost' => 'máquina local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'añadir_cuenta' => 'add_account',
- 'agregar_empresa' => 'add_business',
- 'agregar_centro_de_costos' => 'add_department',
- 'agregar_idioma' => 'add_language',
- 'agregar_sic' => 'add_sic',
- 'agregar_bodega' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_plan_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ap b/sql-ledger/locale/co/ap
deleted file mode 100644
index b61026d..0000000
--- a/sql-ledger/locale/co/ap
+++ /dev/null
@@ -1,169 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Employee' => 'Colaborador/Empleado',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Periodo',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion_proveedor' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ar b/sql-ledger/locale/co/ar
deleted file mode 100644
index e8a65a4..0000000
--- a/sql-ledger/locale/co/ar
+++ /dev/null
@@ -1,170 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Periodo',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Envio por',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/arap b/sql-ledger/locale/co/arap
deleted file mode 100644
index 2cecdad..0000000
--- a/sql-ledger/locale/co/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/co/arapprn b/sql-ledger/locale/co/arapprn
deleted file mode 100644
index a88783e..0000000
--- a/sql-ledger/locale/co/arapprn
+++ /dev/null
@@ -1,34 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Memo' => 'Memo',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impreso',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/co/bp b/sql-ledger/locale/co/bp
deleted file mode 100644
index 01efd9e..0000000
--- a/sql-ledger/locale/co/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Seguro que quieres remover las entradas seleccionadas de la cola?',
- 'Bin Lists' => 'Listas Empaque',
- 'Cannot remove files!' => 'No puedo borrar archivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'De',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Number' => 'Número de factura',
- 'Marked entries printed!' => 'Selección impresa',
- 'Month' => 'Mes',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Packing Lists' => 'Lista de empaque',
- 'Period' => 'Periodo',
- 'Pick Lists' => 'Listas de Empaque',
- 'Print' => 'Imprimir',
- 'Printing ... ' => 'Imprimiendo...',
- 'Purchase Orders' => 'Pedidos',
- 'Quarter' => 'Trimestre',
- 'Quotation' => 'Cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQs' => 'Cotizaciones solicitados',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referencia',
- 'Remove' => 'Eliminar',
- 'Removed spoolfiles!' => 'Archivos eliminados de la cola',
- 'Removing marked entries from queue ...' => 'Removiendo entradas sellecionads de la cola...',
- 'Sales Invoices' => 'Factura de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Select all' => 'Guardar todo',
- 'Spoolfile' => 'Cola de Impresión',
- 'To' => 'Hasta ',
- 'Vendor' => 'Proveedor',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'done' => 'hecho',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'eliminar' => 'remove',
- 'guardar_todo' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ca b/sql-ledger/locale/co/ca
deleted file mode 100644
index 291c536..0000000
--- a/sql-ledger/locale/co/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Include in Report' => 'Incluir en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Mostrar Transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Period' => 'Periodo',
- 'Project Number' => 'Número del Proyecto',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'mostrar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/co/cp b/sql-ledger/locale/co/cp
deleted file mode 100644
index 291cce1..0000000
--- a/sql-ledger/locale/co/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AR' => 'Factura de Ventas',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Cannot post Payment!' => 'No puedo guardar pago',
- 'Cannot post Receipt!' => 'No puedo guardar recibo',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta la fecha!',
- 'Department' => 'Centro de Costos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Invoice' => 'Factura de Venta',
- 'Invoices' => 'Facturas',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Nada en Cartera para',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Comprobante de Egreso',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Anticipio',
- 'Print' => 'Imprimir',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Queue' => 'Cola',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo agregado',
- 'Screen' => 'Pantalla',
- 'Select' => 'Seleccionar',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Source' => 'Fuente',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ct b/sql-ledger/locale/co/ct
deleted file mode 100644
index 2f88970..0000000
--- a/sql-ledger/locale/co/ct
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Accounting Menu' => 'Menú general',
- 'Add Customer' => 'Añadir cliente',
- 'Add Vendor' => 'Añadir proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Break' => 'Pausa',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo electrónico',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Employee' => 'Colaborador/Empleado',
- 'Enddate' => 'Fecha final',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Group' => 'Grupo',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Language' => 'Idioma',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Manager' => 'Administrador',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huérfano',
- 'Part Number' => 'Número parte',
- 'Phone' => 'Teléfono',
- 'Pricegroup' => 'Grupo de Precios',
- 'Project Number' => 'Número del Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de Venta',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Search' => 'Búsqueda',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sell Price' => 'Precio de venta',
- 'Serial Number' => 'Número del Serial',
- 'Shipping Address' => 'Dirección del envio',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Departamento',
- 'Sub-contract GIFI' => 'Sub-Contrato PUC',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'NIT/CC',
- 'Tax Number / SSN' => 'NIT./CC./CE.',
- 'Taxable' => 'Impuestos gravables',
- 'Terms' => 'Condiciones',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Type of Business' => 'Clase de Negocio',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor History' => 'Historial Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transaccion_proveedor' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'añadir_cliente' => 'add_customer',
- 'añadir_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'solicitar_cotización' => 'rfq',
- 'facturas_de_ventas' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/co/gl b/sql-ledger/locale/co/gl
deleted file mode 100644
index ccf9838..0000000
--- a/sql-ledger/locale/co/gl
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AR Transaction' => 'Gestión de cobro',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add General Ledger Transaction' => 'Añadir Nota de Contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit General Ledger Transaction' => 'Editar Notas Contables',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'FX' => 'Tasa de Cambio',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GL Transaction' => 'Nota de Contabilidad',
- 'General Ledger' => 'Notas de Contabilidad',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingreso',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance transaction!' => 'Transacción fuera de Balance!',
- 'Period' => 'Periodo',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Reports' => 'Informes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warning!' => 'Alerta!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion_proveedor' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'nota_de_contabilidad' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/hr b/sql-ledger/locale/co/hr
deleted file mode 100644
index 7416050..0000000
--- a/sql-ledger/locale/co/hr
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'Above' => 'Encima de',
- 'Accounting Menu' => 'Menú general',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Employee' => 'Agregar Empleado',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Despues Deducción',
- 'All' => 'Todos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount missing!' => 'Falta suma',
- 'BIC' => 'BIC',
- 'Based on' => 'Basado en',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Below' => 'Debajo',
- 'City' => 'Ciudad',
- 'Continue' => 'Continuar',
- 'Country' => 'País',
- 'Deduct after' => 'Deducir despues de',
- 'Deduction deleted!' => 'Deducción borrado!',
- 'Deduction saved!' => 'Deducción guardado',
- 'Deductions' => 'Deducciones',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description missing!' => 'Falta Descripción',
- 'E-mail' => 'Correo electrónico',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado cancela',
- 'Employee saved!' => 'Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador cancela',
- 'Enddate' => 'Fecha final',
- 'Expense' => 'Gastos',
- 'Home Phone' => 'Teléfono residencia',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Login' => 'Entrar',
- 'Manager' => 'Administrador',
- 'Maximum' => 'Maximo',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Payroll Deduction' => 'Deducciones Nómina',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa!',
- 'Role' => 'Función',
- 'S' => 'S',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Departamento',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
- 'Work Phone' => 'Teléfono (Oficina)',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'agregar_deducción' => 'add_deduction',
- 'agregar_empleado' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ic b/sql-ledger/locale/co/ic
deleted file mode 100644
index 4630920..0000000
--- a/sql-ledger/locale/co/ic
+++ /dev/null
@@ -1,270 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Labor/Overhead' => 'Agregar Honorarios',
- 'Add Part' => 'Añadir artículo',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Service' => 'Añadir servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Compuesto',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Listado de piezas',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Break' => 'Pausa',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Revisar Inventario',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Components' => 'Componentes',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Reintegro',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Labor/Overhead' => 'Editar Honorario',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Service' => 'Editar Servicio',
- 'Employee' => 'Colaborador/Empleado',
- 'Expense' => 'Gastos',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingreso',
- 'Individual Items' => 'Artículos individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Productos/Servicios',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Labor/Overhead' => 'Honorarios',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Line Total' => 'Total de la línea',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List Price' => 'Precio de Lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Markup' => 'Margen',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Orphaned' => 'Huérfano',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Parts' => 'Artículos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => 'No hay esta cantidad disponible en el Inventario!',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'ROP' => 'Tope de envio',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de Venta',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Sell Price' => 'Precio de venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Serial Number' => 'Número del Serial',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'Short' => 'Corto',
- 'State/Province' => 'Departamento',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'To' => 'Hasta ',
- 'Top Level' => 'Nivel superior',
- 'Translation not on file!' => 'No hay traducción',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => '¡Actualizado!',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'days' => 'días',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'añadir_compuesto' => 'add_assembly',
- 'agregar_honorarios' => 'add_labor/overhead',
- 'añadir_artículo' => 'add_part',
- 'añadir_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_compuesto' => 'edit_assembly',
- 'editar_compuesto' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/io b/sql-ledger/locale/co/io
deleted file mode 100644
index c1ffd6c..0000000
--- a/sql-ledger/locale/co/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Customer Number' => 'Número del cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de Venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Translation not on file!' => 'No hay traducción',
- 'Unit' => 'Unidad',
- 'Vendor Number' => 'Código Vendedor',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ir b/sql-ledger/locale/co/ir
deleted file mode 100644
index 60b4f3b..0000000
--- a/sql-ledger/locale/co/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer Number' => 'Número del cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Vendor Invoice' => 'Editar Factura de Proveedor',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de Venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'Source' => 'Fuente',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Translation not on file!' => 'No hay traducción',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'posted!' => 'Guardado',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'pedido' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/is b/sql-ledger/locale/co/is
deleted file mode 100644
index 854730f..0000000
--- a/sql-ledger/locale/co/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de Venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Translation not on file!' => 'No hay traducción',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'orden_de_venta' => 'sales_order',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/login b/sql-ledger/locale/co/login
deleted file mode 100644
index e5cabb1..0000000
--- a/sql-ledger/locale/co/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Login' => 'Entrar',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Upgrading to Version' => 'Actulaizando a versión',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'done' => 'hecho',
- 'is not a member!' => 'no es miembro',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrar' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/co/menu b/sql-ledger/locale/co/menu
deleted file mode 100644
index 98ee755..0000000
--- a/sql-ledger/locale/co/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AP Aging' => 'Cartera',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AR' => 'Factura de Ventas',
- 'AR Aging' => 'Cartera ',
- 'AR Transaction' => 'Gestión de cobro',
- 'Accounting Menu' => 'Menú general',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Agregar Empresa',
- 'Add Customer' => 'Añadir cliente',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add GIFI' => 'Añadir cuenta PUC',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Honorarios',
- 'Add Language' => 'Agregar Idioma',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'Add SIC' => 'Agregar SIC',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir Transacción',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Warehouse' => 'Agregar Bodega',
- 'All Items' => 'Todo',
- 'Assemblies' => 'Compuestos',
- 'Audit Control' => 'Control de auditoría',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Balance Sheet' => 'Hoja de balance',
- 'Batch Printing' => 'Impresión en serie',
- 'Bin List' => 'Lista Empaque',
- 'Bin Lists' => 'Listas Empaque',
- 'Cash' => 'Efectivo',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Preferencias',
- 'Departments' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Employees' => 'Empleados',
- 'General Ledger' => 'Notas de Contabilidad',
- 'Goods & Services' => 'Bienes y servicios',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Historial',
- 'Income Statement' => 'Estado de Resultados',
- 'Invoice' => 'Factura de Venta',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Honorarios',
- 'Language' => 'Idioma',
- 'List Accounts' => 'Mostrar Plan Único de Cuentas',
- 'List Businesses' => 'Mostrar empresas',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Mostrar PUC',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Projects' => 'Mostrar Projectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Warehouses' => 'Mostar bodegas',
- 'Logout' => 'Salir',
- 'Non-taxable' => 'Sin Impuestos',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Cotizaciones y pedidos',
- 'Outstanding' => 'Impagados',
- 'POS' => 'Punto de Venta',
- 'POS Invoice' => 'Factura Punto de Venta',
- 'Packing List' => 'Albarán',
- 'Packing Lists' => 'Lista de empaque',
- 'Parts' => 'Artículos',
- 'Payment' => 'Comprobante de Egreso',
- 'Payments' => 'Pagos',
- 'Pick List' => 'Lista de Empaque',
- 'Pick Lists' => 'Listas de Empaque',
- 'Preferences' => 'Preferencias',
- 'Pricegroups' => 'Grupos de Precios',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQs' => 'Cotizaciones solicitados',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Receive' => 'Recibir',
- 'Reconciliation' => 'Reconciliación',
- 'Reports' => 'Informes',
- 'SIC' => 'SIC',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de Venta',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Save to File' => 'Guardar en un archivo',
- 'Search' => 'Búsqueda',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Shipping' => 'Envio',
- 'Statement' => 'Estado de cuenta',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Text Templates' => 'Plantillas de Texto',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Translations' => 'Traducciones',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Type of Business' => 'Clase de Negocio',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouses' => 'Bodegas',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Yearend' => 'Fin del Año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/co/oe b/sql-ledger/locale/co/oe
deleted file mode 100644
index 1d8b9bd..0000000
--- a/sql-ledger/locale/co/oe
+++ /dev/null
@@ -1,304 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => 'Seguro que quiere borrar la cotización número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'C' => 'C',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => 'No puedo borrar cotización!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save quotation!' => 'No puedo guardar cotización!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Could not save!' => 'No pude guardar',
- 'Could not transfer Inventory!' => 'No puedo transferir inventario!',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Received' => 'Fecha recibido',
- 'Date received missing!' => 'Faltas datos',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Done' => 'Hecho',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Purchase Order' => 'Editar Pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit Sales Order' => 'Editar Cotización',
- 'Employee' => 'Colaborador/Empleado',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Internal Notes' => 'Notas internas',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Month' => 'Mes',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Información Incompleta',
- 'Nothing to transfer!' => 'Nada para transferir',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => 'Pedido procesado',
- 'Order saved!' => 'Pedido guardado',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número parte',
- 'Period' => 'Periodo',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Save' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotation deleted!' => 'Cotización borrado',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQ Number' => 'Número de Cotización',
- 'Recd' => 'Cobrado',
- 'Receive Merchandise' => 'Recibir mercancia',
- 'Remaining' => 'Resto',
- 'Request for Quotation' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Date' => 'Fecha del Envio',
- 'Shipping Date missing!' => 'Falta Fecha del Envio',
- 'Shipping Point' => 'Destino',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Terms' => 'Condiciones',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation not on file!' => 'No hay traducción',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'days' => 'días',
- 'ea' => 'unid.',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'hecho' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_save',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'quotation_' => 'quotation_',
- 'solicitar_cotización' => 'rfq',
- 'rfq_' => 'rfq_',
- 'facturas_de_ventas' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'destino' => 'ship_to',
- 'transferencia' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/pe b/sql-ledger/locale/co/pe
deleted file mode 100644
index f292624..0000000
--- a/sql-ledger/locale/co/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Group' => 'Agregar Grupo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Descripción Traducción',
- 'Edit Description Translations' => 'Editar Descripción Traducción',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar Proyecto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traducción Grupos',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Language' => 'Idioma',
- 'Languages not defined!' => 'Idiomas no configuradas!',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => 'Grupo Borrado!',
- 'Pricegroup missing!' => 'Falta Grupo!',
- 'Pricegroup saved!' => 'Guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Descripción Traducción del Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Number missing!' => '¡Falta el Número de Proyecto!',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción Borrada!',
- 'Translations saved!' => 'Guardado',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'agregar_grupo' => 'add_group',
- 'añadir_grupo_de_precios' => 'add_pricegroup',
- 'añadir_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/pos b/sql-ledger/locale/co/pos
deleted file mode 100644
index 43b2080..0000000
--- a/sql-ledger/locale/co/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Change' => 'Cambiar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Extended' => 'Extendido',
- 'From' => 'De',
- 'Language' => 'Idioma',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Period' => 'Periodo',
- 'Post' => 'Registrar',
- 'Posted!' => 'Agregado!',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/ps b/sql-ledger/locale/co/ps
deleted file mode 100644
index 68f4297..0000000
--- a/sql-ledger/locale/co/ps
+++ /dev/null
@@ -1,335 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Cartera',
- 'AR Aging' => 'Cartera ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Empaque',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Check' => 'Cheque',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar con',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => 'Falta Tasa de Cambio',
- 'Exchange rate missing!' => 'Falta Tasa de Cambio',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Estado de Resultados',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Idioma',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Month' => 'Mes',
- 'N/A' => 'Sin respuesta',
- 'No.' => 'No.',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Periodo',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como Nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Report for' => 'Informe para',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de Venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola!',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'State/Province' => 'Departamento',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Translation not on file!' => 'No hay traducción',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'as at' => 'al',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'orden_de_venta' => 'sales_order',
- 'guardar_todo' => 'select_all',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/co/pw b/sql-ledger/locale/co/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/co/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/co/rc b/sql-ledger/locale/co/rc
deleted file mode 100644
index faee8d3..0000000
--- a/sql-ledger/locale/co/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Balance Inicial',
- 'Cleared' => 'Borrado',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decrease' => 'Reducir',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Hecho',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Increase' => 'Aumentar',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'Payment' => 'Comprobante de Egreso',
- 'Period' => 'Periodo',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Select all' => 'Guardar todo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Statement Balance' => 'Balance de cuenta',
- 'Summary' => 'Résumen',
- 'To' => 'Hasta ',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'hecho' => 'done',
- 'guardar_todo' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/co/rp b/sql-ledger/locale/co/rp
deleted file mode 100644
index e3fd9cf..0000000
--- a/sql-ledger/locale/co/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Cartera',
- 'AR Aging' => 'Cartera ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar con',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Estado de Resultados',
- 'Invoice' => 'Factura de Venta',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Month' => 'Mes',
- 'N/A' => 'Sin respuesta',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagos',
- 'Period' => 'Periodo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project not on file!' => 'Proyecto no existe!',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Informe para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Guardar todo',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Selecciona uno de los proyectos abajo',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuestos',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'as at' => 'al',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'guardar_todo' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/COPYING b/sql-ledger/locale/ct/COPYING
deleted file mode 100644
index fbb7b61..0000000
--- a/sql-ledger/locale/ct/COPYING
+++ /dev/null
@@ -1,21 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Catalan Translation:
-#
-# Author: Jaume Teixi <teixi@rocacorbit.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-######################################################################
diff --git a/sql-ledger/locale/ct/LANGUAGE b/sql-ledger/locale/ct/LANGUAGE
deleted file mode 100644
index f37af43..0000000
--- a/sql-ledger/locale/ct/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Catalan
diff --git a/sql-ledger/locale/ct/admin b/sql-ledger/locale/ct/admin
deleted file mode 100644
index 1bc677a..0000000
--- a/sql-ledger/locale/ct/admin
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control d\'Accés',
- 'Accounting' => 'Comptabilitat',
- 'Add User' => 'Afegir Usuari',
- 'Address' => 'Adreça',
- 'Administration' => 'Administració',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'Totes les Base de Dades Actualitzades!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Canviar la contrasenya de l\'administrador',
- 'Change Password' => 'Canviar contrasenya',
- 'Character Set' => 'Canviar Tipus Caràcters',
- 'Click on login name to edit!' => 'Clicar en el nom d\'accés per editar',
- 'Company' => 'Empresa',
- 'Connect to' => 'Connectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear la Taula de Comptes',
- 'Create Dataset' => 'Crear el Conjunt de Dades',
- 'DBI not installed!' => 'DBI no instal.lat',
- 'Database' => 'Base de Dades',
- 'Database Administration' => 'Administrar Base de Dades',
- 'Database Driver not checked!' => 'Mòdul de la Base de Dades no comprovat!',
- 'Database User missing!' => 'Falta el usuari de la Base de Dades!',
- 'Dataset' => 'Conjunt de Dades',
- 'Dataset missing!' => 'Falta el Conjunt de Dades',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'Format Data',
- 'Delete' => 'Esborrar',
- 'Delete Dataset' => 'Esborrar Conjunt de Dades',
- 'Directory' => 'Directori',
- 'Driver' => 'Mòdul',
- 'E-mail' => 'Email',
- 'Edit User' => 'Editar Usuari',
- 'Existing Datasets' => 'Conjunt de Dades Existents',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor',
- 'Hostname missing!' => 'Falta el Nom del Servidor!',
- 'Language' => 'Idioma',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deixar en blanc el servidor i el port excepte per fer una connexió remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Desconnectar',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nom',
- 'New Templates' => 'Noves Plantilles',
- 'No Database Drivers available!' => 'Cap Mòdul de Base de Dades disponible!',
- 'No Dataset selected!' => 'No hi ha cap Conjunt de Dades seleccionat!',
- 'Nothing to delete!' => 'No hi ha res per esborrar!',
- 'Number Format' => 'Format Número',
- 'Oracle Database Administration' => 'Administració Base de Dades Oracle',
- 'Password' => 'Contrasenya',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Administració Base de Dades PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel',
- 'Port' => 'Port',
- 'Port missing!' => 'Falta Port!',
- 'Printer' => 'Impressora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar Plantilles',
- 'Signature' => 'Signatura',
- 'Stylesheet' => 'Fulla Estils',
- 'Templates' => 'Plantilles',
- 'The following Datasets are not in use and can be deleted' => 'Els següents conjunt de dades no s\'usen i poden esborrar-se',
- 'The following Datasets need to be updated' => 'Cal actualitzar els següents conjunt de dades',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Comprovació preliminar de les fonts existents. No es crearà ni s\'esborrra res en aquest punt!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Per afegir un usuari a un grup, editar el nom, canviar el nom d\'accés i guardar. Un nou usuari amb les mateixes variables es guardarà amb el nou nom d\«accés',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Actualitzar Conjut de Dades',
- 'Use Templates' => 'Emprar Plantilles',
- 'User' => 'Usuari',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Version' => 'Versió',
- 'You must enter a host and port for local and remote connections!' => 'Heu d\'entrar el servidor i el port per les connexions locals i remotes!',
- 'does not exist' => 'no existeix',
- 'is already a member!' => 'ja és membre!',
- 'localhost' => 'màquina local',
- 'successfully created!' => 'creat correctament!',
- 'successfully deleted!' => 'esborrat correctament!',
- 'website' => 'web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'afegir_usuari' => 'add_user',
- 'canviar_la_contrasenya_de_l\'administrador' => 'change_admin_password',
- 'canviar_contrasenya' => 'change_password',
- 'continuar' => 'continue',
- 'crear_el_conjunt_de_dades' => 'create_dataset',
- 'esborrar' => 'delete',
- 'esborrar_conjunt_de_dades' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'entrar' => 'login',
- 'desconnectar' => 'logout',
- 'administració_base_de_dades_oracle' => 'oracle_database_administration',
- 'administració_base_de_dades_postgresql' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'actualitzar_conjut_de_dades' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/all b/sql-ledger/locale/ct/all
deleted file mode 100644
index 6a9f31e..0000000
--- a/sql-ledger/locale/ct/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Despeses',
- 'AP Aging' => 'Diari de Despeses',
- 'AP Outstanding' => '',
- 'AP Transaction' => '',
- 'AP Transactions' => 'Transaccions de Despeses',
- 'AR' => 'Ingressos',
- 'AR Aging' => 'Diari d\'Ingressos',
- 'AR Outstanding' => '',
- 'AR Transaction' => '',
- 'AR Transactions' => 'Transaccions d\'Ingressos',
- 'About' => 'Referent',
- 'Above' => '',
- 'Access Control' => 'Control d\'Accés',
- 'Account' => 'Compta',
- 'Account Number' => 'Num. Compta',
- 'Account Number missing!' => 'Falta el Num. Compta!',
- 'Account Type' => 'Tipus de Compta',
- 'Account Type missing!' => 'Falta el Tipus de Compta!',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Comptabilitat',
- 'Accounting Menu' => 'Menú Comptable',
- 'Accounts' => '',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => 'Afegir',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Afegir Compta',
- 'Add Assembly' => 'Afegir Compost',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Afegir Client',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => '',
- 'Add General Ledger Transaction' => 'Afegir Transacció Llibre Major',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Afegir Article',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Add Service' => 'Afegir Servei',
- 'Add Transaction' => 'Afegir Transacció',
- 'Add User' => 'Afegir Usuari',
- 'Add Vendor' => 'Afegir Proveïdor',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'Adreça',
- 'Administration' => 'Administració',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => 'Tots',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Totes les Base de Dades Actualitzades!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Total',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Segur que voleu esborrar la Fra. Num.',
- 'Are you sure you want to delete Order Number' => 'Segur que voleu esborrar l\'Ordre',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Segur que voleu esborrar la Transacció',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Compostos',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'Activat',
- 'Attachment' => 'Adjunt',
- 'Audit Control' => 'Control Auditoria',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'Còpia de Seguretat',
- 'Backup sent to' => 'Còpia de Seguretat enviada a',
- 'Balance' => '',
- 'Balance Sheet' => 'Fulla de Balanç',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Els Llibres estan Oberts',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Núm. Negoci',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'Cost de Preu',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => '',
- 'Cannot delete default account!' => 'No es pot esborrar la compta per defecte!',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => '',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => '',
- 'Cannot post transaction for a closed period!' => 'No es pot registrar una transacció per un període tancat',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Canviar la contrasenya de l\'administrador',
- 'Change Password' => 'Canviar contrasenya',
- 'Character Set' => 'Canviar Tipus Caràcters',
- 'Chart of Accounts' => 'Taula de Comptes',
- 'Check' => '',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Clicar en el nom d\'accés per editar',
- 'Close Books up to' => 'Tancar els llibres fins',
- 'Closed' => 'Tancat',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Empresa',
- 'Company Name' => '',
- 'Compare to' => 'Comparar amb',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar!',
- 'Connect to' => 'Connectar a',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Còpies',
- 'Copy to COA' => '',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Crear la Taula de Comptes',
- 'Create Dataset' => 'Crear el Conjunt de Dades',
- 'Credit' => 'Crèdit',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Curr' => '',
- 'Currency' => 'Moneda',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Client',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '',
- 'Customer missing!' => '',
- 'Customer not on file!' => '',
- 'Customer saved!' => '',
- 'Customers' => '',
- 'DBI not installed!' => 'DBI no instal.lat',
- 'DOB' => '',
- 'Database' => 'Base de Dades',
- 'Database Administration' => 'Administrar Base de Dades',
- 'Database Driver not checked!' => 'Mòdul de la Base de Dades no comprovat!',
- 'Database Host' => 'Servidor Base de Dades',
- 'Database User missing!' => 'Falta el usuari de la Base de Dades!',
- 'Dataset' => 'Conjunt de Dades',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Falta el Conjunt de Dades',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'Data',
- 'Date Format' => 'Format Data',
- 'Date Paid' => 'Data Pagament',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => 'Dèbit',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Esborrar',
- 'Delete Account' => 'Esborrar Compta',
- 'Delete Dataset' => 'Esborrar Conjunt de Dades',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => 'Descripció',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'Directori',
- 'Discount' => 'Descompte',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Mòdul',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Data Venciment',
- 'Due Date missing!' => 'Falta la Data Venciment!',
- 'E-mail' => 'Email',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'Falta Email!',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar Compta',
- 'Edit Assembly' => 'Editar Compost',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => '',
- 'Edit General Ledger Transaction' => 'Editar Transacció del LLibre Major',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Editar Article',
- 'Edit Preferences for' => 'Editar Preferències per',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => 'Editar Ordre Compra',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => 'Editar Pressupost',
- 'Edit Service' => 'Editar Servei',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit User' => 'Editar Usuari',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Forçar l\'anul.lació de transaccions per totes les dates',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entrar fins a 3 caràcters separats per dos punts (p.e. EUR:USD:CAD) per les monedes nacionals i estrangeres',
- 'Equity' => 'Balanç',
- 'Excempt age <' => '',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Exchange rate for payment missing!' => '',
- 'Exchange rate missing!' => '',
- 'Existing Datasets' => 'Conjunt de Dades Existents',
- 'Expense' => 'Despeses',
- 'Expense Account' => 'Compta Despeses',
- 'Expense/Asset' => 'Despesa/Activa',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'Foreign Exchange Gain' => 'Guany en Bescanvi Moneda',
- 'Foreign Exchange Loss' => 'Pèrdua en Bescanvi Moneda',
- 'From' => 'De',
- 'GIFI' => '',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => '',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => 'Llibre Major',
- 'Goods & Services' => 'Bèns i Serveis',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'Plantilles HTML',
- 'Heading' => 'Capçalera',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Servidor',
- 'Hostname missing!' => 'Falta el Nom del Servidor!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => '',
- 'In-line' => 'Afegit',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Include in drop-down menus' => 'Incloure en Menús Desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incloure aquesta compta en els formularis client/proveïdor per marcar els impostos aplicables client/proveïdor?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Balanç Situació',
- 'Incorrect Dataset version!' => 'Versió Incorrecta del Conjunt de Dades!',
- 'Incorrect Password!' => 'Contrasenya no Vàlida!',
- 'Increase' => '',
- 'Individual Items' => 'Elements Individuals',
- 'Internal Notes' => '',
- 'Inventory' => 'Inventari',
- 'Inventory Account' => 'Compta Inventari',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantitat en l\'inventari ha de ser zero abans de marcar-lo com obsolet',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantitat en l\'inventari ha de ser zero abans de marcar-lo com obsolet',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => 'És una compta resum a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Items' => '',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'LaTeX Templates' => 'Plantilles LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'Idioma',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Darrers Núms & Comptes per Defecte',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deixar en blanc el servidor i el port excepte per fer una connexió remota',
- 'Liability' => 'Passiu',
- 'Licensed to' => 'Adaptat per',
- 'Line Total' => 'Total Línia',
- 'Link' => 'Enllaç',
- 'Link Accounts' => 'Enllaçar Comptes',
- 'List' => '',
- 'List Accounts' => 'Llistar Comptes',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => '',
- 'List Languages' => '',
- 'List Price' => 'Llistar Preu',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Llistar Transaccions',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Desconnectar',
- 'Make' => 'Fer',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => '',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => 'Model',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '',
- 'Name' => 'Nom',
- 'Name missing!' => '',
- 'New Templates' => 'Noves Plantilles',
- 'No' => 'No',
- 'No Database Drivers available!' => 'Cap Mòdul de Base de Dades disponible!',
- 'No Dataset selected!' => 'No hi ha cap Conjunt de Dades seleccionat!',
- 'No email address for' => 'Falta adreça email de',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notes',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'No hi ha res per esborrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number Format' => 'Format Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'O' => '',
- 'Obsolete' => 'Obsolet',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Obert',
- 'Oracle Database Administration' => 'Administració Base de Dades Oracle',
- 'Order' => 'Ordre',
- 'Order Date' => 'Data Ordre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Entry' => 'Pressupostos i Comandes',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => 'Orfe',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Packing Lists' => '',
- 'Paid' => 'Pagat',
- 'Part' => 'Article',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Articles',
- 'Parts Inventory' => 'Inventari Articles',
- 'Password' => 'Contrasenya',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Pagables',
- 'Payment' => 'Pagament',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payment posted!' => '',
- 'Payments' => 'Pagaments',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administració Base de Dades PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Falta Port!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Preferències',
- 'Preferences saved!' => 'Preferències Guardades!',
- 'Prepayment' => '',
- 'Price' => 'Preu',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Impressora',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => 'Ordre de Compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Qty' => 'Quantitat',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => 'Cobraments',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registar en',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => 'Remanent',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Registrar per',
- 'Reports' => 'Informes',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Soliciat per',
- 'Retained Earnings' => 'Guanys Retinguts',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Vendes',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Pressupost',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Pressupostos',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => 'Guardar a Fitxer',
- 'Screen' => 'Pantalla',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Preu Venta',
- 'Send by E-Mail' => 'Enviar per Email',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Servei',
- 'Service Items' => 'Elements Servei',
- 'Services' => 'Serveis',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar Plantilles',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Curt',
- 'Signature' => 'Signatura',
- 'Source' => 'Font',
- 'Spoolfile' => '',
- 'Standard' => '',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Inventari Compost',
- 'Stylesheet' => 'Fulla Estils',
- 'Sub-contract GIFI' => '',
- 'Subject' => '',
- 'Subtotal' => 'Subtotal',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Impost',
- 'Tax Accounts' => 'Comptes Impostos',
- 'Tax Included' => 'Impostos Inclosos',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => 'Imponible',
- 'Template saved!' => '',
- 'Templates' => 'Plantilles',
- 'Terms' => 'Terms:Net',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Els següents conjunt de dades no s\'usen i poden esborrar-se',
- 'The following Datasets need to be updated' => 'Cal actualitzar els següents conjunt de dades',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Comprovació preliminar de les fonts existents. No es crearà ni s\'esborrra res en aquest punt!',
- 'Till' => '',
- 'To' => 'Fins',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Per afegir un usuari a un grup, editar el nom, canviar el nom d\'accés i guardar. Un nou usuari amb les mateixes variables es guardarà amb el nou nom d\«accés',
- 'Top Level' => '',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Falta Data Transacció!',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => 'Anul.lació transaccions forçada per totes les dates',
- 'Transaction reversal enforced up to' => 'Anul.lació transaccions forçada a',
- 'Transactions' => 'Transaccions',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Balanç de Comprovació',
- 'Type of Business' => '',
- 'Unit' => 'Unitat',
- 'Unit of measure' => 'Unitat de Mesura',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Actualitzar Conjut de Dades',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Emprar Plantilles',
- 'User' => 'Usuari',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Proveïdor',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '',
- 'Vendor missing!' => '',
- 'Vendor not on file!' => '',
- 'Vendor saved!' => '',
- 'Vendors' => '',
- 'Version' => 'Versió',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Pes',
- 'Weight Unit' => 'Unitat Pes',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Sí',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No heu entrat cap nom!',
- 'You must enter a host and port for local and remote connections!' => 'Heu d\'entrar el servidor i el port per les connexions locals i remotes!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'dies',
- 'does not exist' => 'no existeix',
- 'done' => '',
- 'ea' => 'unit.',
- 'for Period' => 'pel període',
- 'is already a member!' => 'ja és membre!',
- 'is not a member!' => 'no és membre!',
- 'localhost' => 'màquina local',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'creat correctament!',
- 'successfully deleted!' => 'esborrat correctament!',
- 'website' => 'web',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/am b/sql-ledger/locale/ct/am
deleted file mode 100644
index a048569..0000000
--- a/sql-ledger/locale/ct/am
+++ /dev/null
@@ -1,173 +0,0 @@
-$self{texts} = {
- 'AP' => 'Despeses',
- 'AR' => 'Ingressos',
- 'About' => 'Referent',
- 'Account' => 'Compta',
- 'Account Number' => 'Num. Compta',
- 'Account Number missing!' => 'Falta el Num. Compta!',
- 'Account Type' => 'Tipus de Compta',
- 'Account Type missing!' => 'Falta el Tipus de Compta!',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Account' => 'Afegir Compta',
- 'Address' => 'Adreça',
- 'Asset' => 'Activat',
- 'Audit Control' => 'Control Auditoria',
- 'Backup sent to' => 'Còpia de Seguretat enviada a',
- 'Books are open' => 'Els Llibres estan Oberts',
- 'Business Number' => 'Núm. Negoci',
- 'COGS' => 'Cost de Preu',
- 'Cannot delete default account!' => 'No es pot esborrar la compta per defecte!',
- 'Character Set' => 'Canviar Tipus Caràcters',
- 'Chart of Accounts' => 'Taula de Comptes',
- 'Close Books up to' => 'Tancar els llibres fins',
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crèdit',
- 'Database Host' => 'Servidor Base de Dades',
- 'Dataset' => 'Conjunt de Dades',
- 'Date Format' => 'Format Data',
- 'Debit' => 'Dèbit',
- 'Delete' => 'Esborrar',
- 'Delete Account' => 'Esborrar Compta',
- 'Description' => 'Descripció',
- 'Discount' => 'Descompte',
- 'E-mail' => 'Email',
- 'Edit Account' => 'Editar Compta',
- 'Edit Preferences for' => 'Editar Preferències per',
- 'Edit Template' => 'Editar Plantilla',
- 'Enforce transaction reversal for all dates' => 'Forçar l\'anul.lació de transaccions per totes les dates',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entrar fins a 3 caràcters separats per dos punts (p.e. EUR:USD:CAD) per les monedes nacionals i estrangeres',
- 'Equity' => 'Balanç',
- 'Expense' => 'Despeses',
- 'Expense Account' => 'Compta Despeses',
- 'Expense/Asset' => 'Despesa/Activa',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Guany en Bescanvi Moneda',
- 'Foreign Exchange Loss' => 'Pèrdua en Bescanvi Moneda',
- 'Heading' => 'Capçalera',
- 'Include in drop-down menus' => 'Incloure en Menús Desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incloure aquesta compta en els formularis client/proveïdor per marcar els impostos aplicables client/proveïdor?',
- 'Inventory' => 'Inventari',
- 'Inventory Account' => 'Compta Inventari',
- 'Is this a summary account to record' => 'És una compta resum a registrar?',
- 'Language' => 'Idioma',
- 'Last Numbers & Default Accounts' => 'Darrers Núms & Comptes per Defecte',
- 'Liability' => 'Passiu',
- 'Licensed to' => 'Adaptat per',
- 'Link' => 'Enllaç',
- 'Name' => 'Nom',
- 'No' => 'No',
- 'No email address for' => 'Falta adreça email de',
- 'Number' => 'Número',
- 'Number Format' => 'Format Número',
- 'Parts Inventory' => 'Inventari Articles',
- 'Password' => 'Contrasenya',
- 'Payables' => 'Pagables',
- 'Payment' => 'Pagament',
- 'Phone' => 'Tel',
- 'Preferences saved!' => 'Preferències Guardades!',
- 'Printer' => 'Impressora',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Cobraments',
- 'Retained Earnings' => 'Guanys Retinguts',
- 'Save' => 'Guardar',
- 'Service Items' => 'Elements Servei',
- 'Signature' => 'Signatura',
- 'Stylesheet' => 'Fulla Estils',
- 'Tax' => 'Impost',
- 'Tax Accounts' => 'Comptes Impostos',
- 'Transaction reversal enforced for all dates' => 'Anul.lació transaccions forçada per totes les dates',
- 'Transaction reversal enforced up to' => 'Anul.lació transaccions forçada a',
- 'User' => 'Usuari',
- 'Version' => 'Versió',
- 'Weight Unit' => 'Unitat Pes',
- 'Yes' => 'Sí',
- 'localhost' => 'màquina local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'afegir_compta' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'esborrar' => 'delete',
- 'edit' => 'edit',
- 'editar_compta' => 'edit_account',
- 'guardar' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ap b/sql-ledger/locale/ct/ap
deleted file mode 100644
index ee8f709..0000000
--- a/sql-ledger/locale/ct/ap
+++ /dev/null
@@ -1,129 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Transaccions de Despeses',
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Segur que voleu esborrar la Transacció',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Cannot post transaction for a closed period!' => 'No es pot registrar una transacció per un període tancat',
- 'Closed' => 'Tancat',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Pagament',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'Due Date missing!' => 'Falta la Data Venciment!',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Obert',
- 'Order' => 'Ordre',
- 'Order Number' => 'Número Ordre',
- 'Paid' => 'Pagat',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payments' => 'Pagaments',
- 'Remaining' => 'Remanent',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'Tax Included' => 'Impostos Inclosos',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Vendor' => 'Proveïdor',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ar b/sql-ledger/locale/ct/ar
deleted file mode 100644
index 63a66eb..0000000
--- a/sql-ledger/locale/ct/ar
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AR Transactions' => 'Transaccions d\'Ingressos',
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Segur que voleu esborrar la Transacció',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Cannot post transaction for a closed period!' => 'No es pot registrar una transacció per un període tancat',
- 'Closed' => 'Tancat',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Pagament',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'Due Date missing!' => 'Falta la Data Venciment!',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Obert',
- 'Order' => 'Ordre',
- 'Order Number' => 'Número Ordre',
- 'Paid' => 'Pagat',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payments' => 'Pagaments',
- 'Remaining' => 'Remanent',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'Tax Included' => 'Impostos Inclosos',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/arap b/sql-ledger/locale/ct/arap
deleted file mode 100644
index 606d13c..0000000
--- a/sql-ledger/locale/ct/arap
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adreça',
- 'Continue' => 'Continuar',
- 'Description' => 'Descripció',
- 'Number' => 'Número',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/arapprn b/sql-ledger/locale/ct/arapprn
deleted file mode 100644
index 14b79e9..0000000
--- a/sql-ledger/locale/ct/arapprn
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Date' => 'Data',
- 'Screen' => 'Pantalla',
- 'Source' => 'Font',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/bp b/sql-ledger/locale/ct/bp
deleted file mode 100644
index eee2518..0000000
--- a/sql-ledger/locale/ct/bp
+++ /dev/null
@@ -1,39 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'From' => 'De',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Núm Fra.',
- 'Order' => 'Ordre',
- 'Order Number' => 'Número Ordre',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Sales Orders' => 'Pressupostos',
- 'To' => 'Fins',
- 'Vendor' => 'Proveïdor',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ca b/sql-ledger/locale/ct/ca
deleted file mode 100644
index bfc59e3..0000000
--- a/sql-ledger/locale/ct/ca
+++ /dev/null
@@ -1,47 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Chart of Accounts' => 'Taula de Comptes',
- 'Credit' => 'Crèdit',
- 'Date' => 'Data',
- 'Debit' => 'Dèbit',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Description' => 'Descripció',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'List Transactions' => 'Llistar Transaccions',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Fins',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'llistar_transaccions' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/cp b/sql-ledger/locale/ct/cp
deleted file mode 100644
index 60053d7..0000000
--- a/sql-ledger/locale/ct/cp
+++ /dev/null
@@ -1,57 +0,0 @@
-$self{texts} = {
- 'AP' => 'Despeses',
- 'AR' => 'Ingressos',
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Address' => 'Adreça',
- 'All' => 'Tots',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Description' => 'Descripció',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Invoice' => 'Factura',
- 'Number' => 'Número',
- 'Payment' => 'Pagament',
- 'Screen' => 'Pantalla',
- 'Source' => 'Font',
- 'Vendor' => 'Proveïdor',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ct b/sql-ledger/locale/ct/ct
deleted file mode 100644
index 420ba7a..0000000
--- a/sql-ledger/locale/ct/ct
+++ /dev/null
@@ -1,110 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Transaccions de Despeses',
- 'AR Transactions' => 'Transaccions d\'Ingressos',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Customer' => 'Afegir Client',
- 'Add Vendor' => 'Afegir Proveïdor',
- 'Address' => 'Adreça',
- 'All' => 'Tots',
- 'Amount' => 'Total',
- 'Closed' => 'Tancat',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Discount' => 'Descompte',
- 'E-mail' => 'Email',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Invoice' => 'Factura',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Language' => 'Idioma',
- 'Name' => 'Nom',
- 'Notes' => 'Notes',
- 'Number' => 'Número',
- 'Open' => 'Obert',
- 'Order' => 'Ordre',
- 'Orphaned' => 'Orfe',
- 'Phone' => 'Tel',
- 'Purchase Order' => 'Ordre de Compra',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Qty' => 'Quantitat',
- 'Sales Order' => 'Pressupost',
- 'Sales Orders' => 'Pressupostos',
- 'Save' => 'Guardar',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sell Price' => 'Preu Venta',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'Tax Included' => 'Impostos Inclosos',
- 'Taxable' => 'Imponible',
- 'Terms' => 'Terms:Net',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Unit' => 'Unitat',
- 'days' => 'dies',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'afegir_client' => 'add_customer',
- 'afegir_proveïdor' => 'add_vendor',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'ordre_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'pressupost' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/gl b/sql-ledger/locale/ct/gl
deleted file mode 100644
index e71679f..0000000
--- a/sql-ledger/locale/ct/gl
+++ /dev/null
@@ -1,106 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add General Ledger Transaction' => 'Afegir Transacció Llibre Major',
- 'Address' => 'Adreça',
- 'All' => 'Tots',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Segur que voleu esborrar la Transacció',
- 'Asset' => 'Activat',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Cannot post transaction for a closed period!' => 'No es pot registrar una transacció per un període tancat',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crèdit',
- 'Date' => 'Data',
- 'Debit' => 'Dèbit',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Edit General Ledger Transaction' => 'Editar Transacció del LLibre Major',
- 'Equity' => 'Balanç',
- 'Expense' => 'Despeses',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'General Ledger' => 'Llibre Major',
- 'ID' => 'ID',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Liability' => 'Passiu',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Reports' => 'Informes',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Fins',
- 'Transaction Date missing!' => 'Falta Data Transacció!',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/hr b/sql-ledger/locale/ct/hr
deleted file mode 100644
index b3a18a2..0000000
--- a/sql-ledger/locale/ct/hr
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'AP' => 'Despeses',
- 'Accounting Menu' => 'Menú Comptable',
- 'Address' => 'Adreça',
- 'Administrator' => 'Administrator',
- 'All' => 'Tots',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'E-mail' => 'Email',
- 'Expense' => 'Despeses',
- 'ID' => 'ID',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Login' => 'Entrar',
- 'Name' => 'Nom',
- 'Notes' => 'Notes',
- 'Number' => 'Número',
- 'Orphaned' => 'Orfe',
- 'Rate' => 'Tarifa',
- 'Sales' => 'Vendes',
- 'Save' => 'Guardar',
- 'User' => 'Usuari',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'guardar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ic b/sql-ledger/locale/ct/ic
deleted file mode 100644
index e2b24e7..0000000
--- a/sql-ledger/locale/ct/ic
+++ /dev/null
@@ -1,187 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú Comptable',
- 'Add' => 'Afegir',
- 'Add Assembly' => 'Afegir Compost',
- 'Add Part' => 'Afegir Article',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Add Service' => 'Afegir Servei',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Compostos',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Bin' => 'Bin',
- 'COGS' => 'Cost de Preu',
- 'Closed' => 'Tancat',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Edit Assembly' => 'Editar Compost',
- 'Edit Part' => 'Editar Article',
- 'Edit Service' => 'Editar Servei',
- 'Expense' => 'Despeses',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'In-line' => 'Afegit',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Individual Items' => 'Elements Individuals',
- 'Inventory' => 'Inventari',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantitat en l\'inventari ha de ser zero abans de marcar-lo com obsolet',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantitat en l\'inventari ha de ser zero abans de marcar-lo com obsolet',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Line Total' => 'Total Línia',
- 'Link Accounts' => 'Enllaçar Comptes',
- 'List Price' => 'Llistar Preu',
- 'Make' => 'Fer',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Model' => 'Model',
- 'Name' => 'Nom',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Obsolete' => 'Obsolet',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Obert',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Orphaned' => 'Orfe',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Part' => 'Article',
- 'Parts' => 'Articles',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Qty' => 'Quantitat',
- 'ROP' => 'ROP',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Sales Orders' => 'Pressupostos',
- 'Save' => 'Guardar',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sell Price' => 'Preu Venta',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Services' => 'Serveis',
- 'Short' => 'Curt',
- 'Stock Assembly' => 'Inventari Compost',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'To' => 'Fins',
- 'Unit' => 'Unitat',
- 'Unit of measure' => 'Unitat de Mesura',
- 'Vendor' => 'Proveïdor',
- 'Weight' => 'Pes',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'days' => 'dies',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'afegir_compost' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'afegir_article' => 'add_part',
- 'afegir_servei' => 'add_service',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'editar_compost' => 'edit_assembly',
- 'editar_article' => 'edit_part',
- 'editar_servei' => 'edit_service',
- 'guardar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/io b/sql-ledger/locale/ct/io
deleted file mode 100644
index 9046a0c..0000000
--- a/sql-ledger/locale/ct/io
+++ /dev/null
@@ -1,94 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Address' => 'Adreça',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Bin' => 'Bin',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Description' => 'Descripció',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'In-line' => 'Afegit',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Part' => 'Article',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Qty' => 'Quantitat',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Fins',
- 'Unit' => 'Unitat',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ir b/sql-ledger/locale/ct/ir
deleted file mode 100644
index 07ddee0..0000000
--- a/sql-ledger/locale/ct/ir
+++ /dev/null
@@ -1,153 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Segur que voleu esborrar la Fra. Num.',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Bin' => 'Bin',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'In-line' => 'Afegit',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Part' => 'Article',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payments' => 'Pagaments',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Qty' => 'Quantitat',
- 'Record in' => 'Registar en',
- 'Remaining' => 'Remanent',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impostos Inclosos',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Unit' => 'Unitat',
- 'Vendor' => 'Proveïdor',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'Yes' => 'Sí',
- 'ea' => 'unit.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'ordre_de_compra' => 'purchase_order',
- 'update' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/is b/sql-ledger/locale/ct/is
deleted file mode 100644
index 55580dc..0000000
--- a/sql-ledger/locale/ct/is
+++ /dev/null
@@ -1,158 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Segur que voleu esborrar la Fra. Num.',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Bin' => 'Bin',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'In-line' => 'Afegit',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Part' => 'Article',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payments' => 'Pagaments',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Qty' => 'Quantitat',
- 'Record in' => 'Registar en',
- 'Remaining' => 'Remanent',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impostos Inclosos',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Unit' => 'Unitat',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'Yes' => 'Sí',
- 'ea' => 'unit.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'email' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'pressupost' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/login b/sql-ledger/locale/ct/login
deleted file mode 100644
index ee6d502..0000000
--- a/sql-ledger/locale/ct/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Incorrect Dataset version!' => 'Versió Incorrecta del Conjunt de Dades!',
- 'Incorrect Password!' => 'Contrasenya no Vàlida!',
- 'Login' => 'Entrar',
- 'Name' => 'Nom',
- 'Password' => 'Contrasenya',
- 'Version' => 'Versió',
- 'You did not enter a name!' => 'No heu entrat cap nom!',
- 'is not a member!' => 'no és membre!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrar' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/menu b/sql-ledger/locale/ct/menu
deleted file mode 100644
index ec9617c..0000000
--- a/sql-ledger/locale/ct/menu
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'AP' => 'Despeses',
- 'AP Aging' => 'Diari de Despeses',
- 'AR' => 'Ingressos',
- 'AR Aging' => 'Diari d\'Ingressos',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Account' => 'Afegir Compta',
- 'Add Assembly' => 'Afegir Compost',
- 'Add Customer' => 'Afegir Client',
- 'Add Part' => 'Afegir Article',
- 'Add Service' => 'Afegir Servei',
- 'Add Transaction' => 'Afegir Transacció',
- 'Add Vendor' => 'Afegir Proveïdor',
- 'Assemblies' => 'Compostos',
- 'Audit Control' => 'Control Auditoria',
- 'Backup' => 'Còpia de Seguretat',
- 'Balance Sheet' => 'Fulla de Balanç',
- 'Chart of Accounts' => 'Taula de Comptes',
- 'Description' => 'Descripció',
- 'General Ledger' => 'Llibre Major',
- 'Goods & Services' => 'Bèns i Serveis',
- 'HTML Templates' => 'Plantilles HTML',
- 'Income Statement' => 'Balanç Situació',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantilles LaTeX',
- 'Language' => 'Idioma',
- 'List Accounts' => 'Llistar Comptes',
- 'Logout' => 'Desconnectar',
- 'Open' => 'Obert',
- 'Order Entry' => 'Pressupostos i Comandes',
- 'Packing List' => 'Albarà',
- 'Parts' => 'Articles',
- 'Payment' => 'Pagament',
- 'Payments' => 'Pagaments',
- 'Preferences' => 'Preferències',
- 'Purchase Order' => 'Ordre de Compra',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Reports' => 'Informes',
- 'Sales Order' => 'Pressupost',
- 'Sales Orders' => 'Pressupostos',
- 'Save to File' => 'Guardar a Fitxer',
- 'Send by E-Mail' => 'Enviar per Email',
- 'Services' => 'Serveis',
- 'Stock Assembly' => 'Inventari Compost',
- 'Stylesheet' => 'Fulla Estils',
- 'System' => 'Sistema',
- 'Transactions' => 'Transaccions',
- 'Trial Balance' => 'Balanç de Comprovació',
- 'Version' => 'Versió',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/oe b/sql-ledger/locale/ct/oe
deleted file mode 100644
index 885ecea..0000000
--- a/sql-ledger/locale/ct/oe
+++ /dev/null
@@ -1,192 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => 'Segur que voleu esborrar l\'Ordre',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Bin' => 'Bin',
- 'Closed' => 'Tancat',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Edit Purchase Order' => 'Editar Ordre Compra',
- 'Edit Sales Order' => 'Editar Pressupost',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'ID' => 'ID',
- 'In-line' => 'Afegit',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Obert',
- 'Order' => 'Ordre',
- 'Order Date' => 'Data Ordre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Part' => 'Article',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Purchase Orders' => 'Ordres de Compra',
- 'Qty' => 'Quantitat',
- 'Remaining' => 'Remanent',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Sales Orders' => 'Pressupostos',
- 'Save' => 'Guardar',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'Tax Included' => 'Impostos Inclosos',
- 'Terms' => 'Terms:Net',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Unit' => 'Unitat',
- 'Vendor' => 'Proveïdor',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'Yes' => 'Sí',
- 'days' => 'dies',
- 'ea' => 'unit.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'done' => 'done',
- 'email' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ordre_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'pressupost' => 'sales_order',
- 'guardar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/pe b/sql-ledger/locale/ct/pe
deleted file mode 100644
index 53c2e34..0000000
--- a/sql-ledger/locale/ct/pe
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú Comptable',
- 'All' => 'Tots',
- 'Continue' => 'Continuar',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Language' => 'Idioma',
- 'Number' => 'Número',
- 'Orphaned' => 'Orfe',
- 'Save' => 'Guardar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'guardar' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/pos b/sql-ledger/locale/ct/pos
deleted file mode 100644
index 9f6d1f8..0000000
--- a/sql-ledger/locale/ct/pos
+++ /dev/null
@@ -1,47 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'From' => 'De',
- 'Language' => 'Idioma',
- 'Number' => 'Número',
- 'Open' => 'Obert',
- 'Paid' => 'Pagat',
- 'Price' => 'Preu',
- 'Qty' => 'Quantitat',
- 'Record in' => 'Registar en',
- 'Remaining' => 'Remanent',
- 'Screen' => 'Pantalla',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Unit' => 'Unitat',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/ps b/sql-ledger/locale/ct/ps
deleted file mode 100644
index fb72ed3..0000000
--- a/sql-ledger/locale/ct/ps
+++ /dev/null
@@ -1,215 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diari de Despeses',
- 'AR Aging' => 'Diari d\'Ingressos',
- 'AR Transactions' => 'Transaccions d\'Ingressos',
- 'Account' => 'Compta',
- 'Account Number' => 'Num. Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Add Purchase Order' => 'Afegir Ordre Compra',
- 'Add Sales Order' => 'Afegir Pressupost',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Segur que voleu esborrar la Fra. Num.',
- 'Are you sure you want to delete Transaction' => 'Segur que voleu esborrar la Transacció',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Balance Sheet' => 'Fulla de Balanç',
- 'Bin' => 'Bin',
- 'Cannot post transaction for a closed period!' => 'No es pot registrar una transacció per un període tancat',
- 'Closed' => 'Tancat',
- 'Compare to' => 'Comparar amb',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacte',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Credit' => 'Crèdit',
- 'Credit Limit' => 'Límit de Crèdit',
- 'Currency' => 'Moneda',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Pagament',
- 'Debit' => 'Dèbit',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Delete' => 'Esborrar',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'Due Date missing!' => 'Falta la Data Venciment!',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Exch' => 'Canvi',
- 'Exchange Rate' => 'Taxa de Canvi',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'Heading' => 'Capçalera',
- 'ID' => 'ID',
- 'In-line' => 'Afegit',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Income Statement' => 'Balanç Situació',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data Fra.',
- 'Invoice Date missing!' => 'Falta Data Fra.!',
- 'Invoice Number' => 'Núm Fra.',
- 'Invoice Number missing!' => 'Falta Núm Fra.!',
- 'Item not on file!' => 'No es troba cap arxiu amb aquest element!',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta en número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Obert',
- 'Order' => 'Ordre',
- 'Order Date missing!' => 'Falta Data Ordre!',
- 'Order Number' => 'Número Ordre',
- 'Order Number missing!' => 'Falta Número Ordre!',
- 'Packing List' => 'Albarà',
- 'Packing List Date missing!' => 'Falta Data Albarà!',
- 'Packing List Number missing!' => 'Falta Número Albarà!',
- 'Paid' => 'Pagat',
- 'Part' => 'Article',
- 'Payment date missing!' => 'Falta Data Pagament!',
- 'Payments' => 'Pagaments',
- 'Phone' => 'Tel',
- 'Price' => 'Preu',
- 'Purchase Order' => 'Ordre de Compra',
- 'Qty' => 'Quantitat',
- 'Record in' => 'Registar en',
- 'Remaining' => 'Remanent',
- 'Report for' => 'Registrar per',
- 'Required by' => 'Soliciat per',
- 'Sales Order' => 'Pressupost',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccionar d\'un dels elements de sota',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Service' => 'Servei',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'Tax Included' => 'Impostos Inclosos',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balanç de Comprovació',
- 'Unit' => 'Unitat',
- 'Vendor' => 'Proveïdor',
- 'What type of item is this?' => 'Quin tipus d\'element és?',
- 'Yes' => 'Sí',
- 'ea' => 'unit.',
- 'for Period' => 'pel període',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'esborrar' => 'delete',
- 'email' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'pressupost' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/pw b/sql-ledger/locale/ct/pw
deleted file mode 100644
index 8d0d42a..0000000
--- a/sql-ledger/locale/ct/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contrasenya',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/rc b/sql-ledger/locale/ct/rc
deleted file mode 100644
index 18966b3..0000000
--- a/sql-ledger/locale/ct/rc
+++ /dev/null
@@ -1,55 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Continue' => 'Continuar',
- 'Date' => 'Data',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Description' => 'Descripció',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Payment' => 'Pagament',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Source' => 'Font',
- 'To' => 'Fins',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ct/rp b/sql-ledger/locale/ct/rp
deleted file mode 100644
index 67b5e53..0000000
--- a/sql-ledger/locale/ct/rp
+++ /dev/null
@@ -1,113 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diari de Despeses',
- 'AR Aging' => 'Diari d\'Ingressos',
- 'Account' => 'Compta',
- 'Account Number' => 'Num. Compta',
- 'Accounting Menu' => 'Menú Comptable',
- 'Address' => 'Adreça',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunt',
- 'Aug' => 'Ago',
- 'August' => 'Agost',
- 'Balance Sheet' => 'Fulla de Balanç',
- 'Compare to' => 'Comparar amb',
- 'Continue' => 'Continuar',
- 'Copies' => 'Còpies',
- 'Credit' => 'Crèdit',
- 'Customer' => 'Client',
- 'Date' => 'Data',
- 'Debit' => 'Dèbit',
- 'Dec' => 'Des',
- 'December' => 'Desembre',
- 'Description' => 'Descripció',
- 'Due Date' => 'Data Venciment',
- 'E-mail' => 'Email',
- 'E-mail address missing!' => 'Falta Email!',
- 'Feb' => 'Feb',
- 'February' => 'Febrer',
- 'From' => 'De',
- 'Heading' => 'Capçalera',
- 'ID' => 'ID',
- 'In-line' => 'Afegit',
- 'Include in Report' => 'Incloure en l\'Informe',
- 'Income Statement' => 'Balanç Situació',
- 'Invoice' => 'Factura',
- 'Jan' => 'Gen',
- 'January' => 'Gener',
- 'Jul' => 'Jul',
- 'July' => 'Juliol',
- 'Jun' => 'Jun',
- 'June' => 'Juny',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'Març',
- 'May' => 'Mai',
- 'May ' => 'Maig',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Ordre',
- 'Payments' => 'Pagaments',
- 'Report for' => 'Registrar per',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Set',
- 'September' => 'Setembre',
- 'Source' => 'Font',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impost',
- 'To' => 'Fins',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balanç de Comprovació',
- 'Vendor' => 'Proveïdor',
- 'for Period' => 'pel període',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'email' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/COPYING b/sql-ledger/locale/cz/COPYING
deleted file mode 100644
index 64c58a2..0000000
--- a/sql-ledger/locale/cz/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Czech texts:
-#
-# Author: Tomas Fencl <tomas.fencl@centrum.cz>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/cz/LANGUAGE b/sql-ledger/locale/cz/LANGUAGE
deleted file mode 100644
index 618b7f5..0000000
--- a/sql-ledger/locale/cz/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Czech
diff --git a/sql-ledger/locale/cz/admin b/sql-ledger/locale/cz/admin
deleted file mode 100644
index 34c8e78..0000000
--- a/sql-ledger/locale/cz/admin
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Pøístupová práva',
- 'Accounting' => 'Úèetnictví',
- 'Add User' => 'Nový u¾ivatel',
- 'Address' => 'Adresa',
- 'Administration' => 'Administrace',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'V¹echna data jsou aktualizována',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Zmìnit heslo administrátora',
- 'Change Password' => 'Zmìnit heslo',
- 'Character Set' => 'Znaková sada',
- 'Click on login name to edit!' => 'Pro úpravy kliknìte na jméno u¾ivatele',
- 'Company' => 'Firma',
- 'Connect to' => 'Pøipojit k serveru',
- 'Continue' => 'Pokraèování',
- 'Create Chart of Accounts' => 'Vytvoøit úètový rozvrh',
- 'Create Dataset' => 'Vytvoøit dataset',
- 'DBI not installed!' => 'DBI není nainstalováno',
- 'Database' => 'Databáze',
- 'Database Administration' => 'Správa databáze',
- 'Database Driver not checked!' => 'Nepodaøilo se zkontrolovat ovladaè databáze',
- 'Database User missing!' => 'Chybí jméno pro pøihlá¹ení k databázi!',
- 'Dataset' => 'Dataset',
- 'Dataset missing!' => 'Není zadán dataset',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'Formát data',
- 'Delete' => 'Vymazat',
- 'Delete Dataset' => 'Zru¹it dataset',
- 'Directory' => 'Adresáø',
- 'Driver' => 'Øidiè',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Upravit u¾ivatele',
- 'Existing Datasets' => 'Datasety',
- 'Fax' => 'Fax',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Chybí jméno serveru!',
- 'Language' => 'Jazyk',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Pro lokální databázi, nezadávejte adresu serveru a port.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'U¾ivatelské jméno',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Odhlásit',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Jméno',
- 'New Templates' => 'Nové ¹ablony',
- 'No Database Drivers available!' => 'Není instalován ¾ádný ovladaè databáze!',
- 'No Dataset selected!' => 'Není zvolen ¾ádný dataset!',
- 'Nothing to delete!' => 'Nejsou polo¾ky k vymazání!',
- 'Number Format' => 'Èíselný formát',
- 'Oracle Database Administration' => 'Oracle Správa databáze',
- 'Password' => 'Heslo',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Pg Správa databáze',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Port' => 'Port',
- 'Port missing!' => 'Chybí èíslo portu!',
- 'Printer' => 'Tiskárna',
- 'Save' => 'Ulo¾it',
- 'Setup Templates' => 'Nastavení ¹ablon',
- 'Signature' => 'Podpis',
- 'Stylesheet' => 'Stylesheet',
- 'Templates' => '©ablony',
- 'The following Datasets are not in use and can be deleted' => 'Uvedené datasety nejsou vyu¾ívány a mohou být vymazány',
- 'The following Datasets need to be updated' => 'Následující data musí být aktualizována',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Toto je pøedbì¾ná kontrola existence zdrojových dokumentù. V této fázi nebude databáze aktualizována.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Pro pøidání u¾ivatele do skupiny otevøete existujícího u¾ivatele a ulo¾te jej s jiným u¾ivatelským jménem. Nový u¾ivatel bude vytvoøen s toto¾ným nastavením v¹ech promìnných.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Aktualizovat data',
- 'Use Templates' => 'Vyu¾ít ¹ablony',
- 'User' => 'U¾ivatel',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Version' => 'Verze',
- 'You must enter a host and port for local and remote connections!' => 'Pro lokální i vzdálené pøipojení je nutné zadat adresu serveru a port!',
- 'does not exist' => 'neexistuje',
- 'is already a member!' => 'ji¾ existuje!',
- 'localhost' => 'lokální server',
- 'successfully created!' => 'úspì¹nì vytvoøen!',
- 'successfully deleted!' => 'úspì¹nì smazán!',
- 'website' => 'www adresa',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'nový_u¾ivatel' => 'add_user',
- 'zmìnit_heslo_administrátora' => 'change_admin_password',
- 'zmìnit_heslo' => 'change_password',
- 'pokraèování' => 'continue',
- 'vytvoøit_dataset' => 'create_dataset',
- 'vymazat' => 'delete',
- 'zru¹it_dataset' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'u¾ivatelské_jméno' => 'login',
- 'odhlásit' => 'logout',
- 'oracle_správa_databáze' => 'oracle_database_administration',
- 'pg_správa_databáze' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'ulo¾it' => 'save',
- 'unlock_system' => 'unlock_system',
- 'aktualizovat_data' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/all b/sql-ledger/locale/cz/all
deleted file mode 100644
index 141c7b6..0000000
--- a/sql-ledger/locale/cz/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Závazky',
- 'AP Aging' => 'Analýza splatnosti',
- 'AP Outstanding' => '',
- 'AP Transaction' => '',
- 'AP Transactions' => 'Faktury pøijaté',
- 'AR' => 'Pohledávky',
- 'AR Aging' => 'Analýza splatnosti',
- 'AR Outstanding' => '',
- 'AR Transaction' => '',
- 'AR Transactions' => 'Faktury vydané',
- 'About' => 'O programu',
- 'Above' => '',
- 'Access Control' => 'Pøístupová práva',
- 'Account' => 'Úèet',
- 'Account Number' => 'Èíslo úètu',
- 'Account Number missing!' => 'Chybí èíslo úètu!',
- 'Account Type' => 'Typ úètu',
- 'Account Type missing!' => 'Chybí typ úètu!',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Úèetnictví',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Accounts' => 'Úèty',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => 'Pøidat',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Zalo¾it úèet',
- 'Add Assembly' => 'Nový výrobek',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Nový zákazník',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Doplnit úètovací øetìzec',
- 'Add General Ledger Transaction' => 'Nový zápis do hlavní knihy',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Pøíjem zbo¾í',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Add Service' => 'Nový druh slu¾by',
- 'Add Transaction' => 'Nová transakce',
- 'Add User' => 'Nový u¾ivatel',
- 'Add Vendor' => 'Nový dodavatel',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'Adresa',
- 'Administration' => 'Administrace',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => 'V¹e',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'V¹echna data jsou aktualizována',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Èástka',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Invoice Number' => 'Opravdu chcete vymazat fakturu èíslo',
- 'Are you sure you want to delete Order Number' => 'Opravdu chcete vymazat objednávku èíslo',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Opravdu chcete vymazat transakci?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Výrobky',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'Aktiva',
- 'Attachment' => 'Pøílohy',
- 'Audit Control' => 'Kontrola pøístupù',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'Záloha',
- 'Backup sent to' => 'Záloha odeslána na adresu',
- 'Balance' => '',
- 'Balance Sheet' => 'Rozvaha',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Paleta',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => '¡Uèetní knihy jsou otevøeny',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'IÈO',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'Náklady na prodané zbo¾í',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => '',
- 'Cannot delete default account!' => 'Úèet je nastaven jako defaultní, nelze jej proto vymamazat!',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => '',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => '',
- 'Cannot post transaction for a closed period!' => 'Do uzavøeného období nelze úètovat!',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Zmìnit heslo administrátora',
- 'Change Password' => 'Zmìnit heslo',
- 'Character Set' => 'Znaková sada',
- 'Chart of Accounts' => 'Úètový rozvrh',
- 'Check' => '',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Pro úpravy kliknìte na jméno u¾ivatele',
- 'Close Books up to' => 'Uzavøít úèetní knihy do',
- 'Closed' => 'Zaplaceno',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Firma',
- 'Company Name' => '',
- 'Compare to' => 'Porovnáno k',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Podtvrïte!',
- 'Connect to' => 'Pøipojit k serveru',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Contra' => '',
- 'Copies' => 'Kopie',
- 'Copy to COA' => 'Zkopírovat do úètového rozvrhu',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Vytvoøit úètový rozvrh',
- 'Create Dataset' => 'Vytvoøit dataset',
- 'Credit' => 'Dal',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Odbìratel',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '',
- 'Customer missing!' => '',
- 'Customer not on file!' => '',
- 'Customer saved!' => '',
- 'Customers' => '',
- 'DBI not installed!' => 'DBI není nainstalováno',
- 'DOB' => '',
- 'Database' => 'Databáze',
- 'Database Administration' => 'Správa databáze',
- 'Database Driver not checked!' => 'Nepodaøilo se zkontrolovat ovladaè databáze',
- 'Database Host' => 'Databázový server',
- 'Database User missing!' => 'Chybí jméno pro pøihlá¹ení k databázi!',
- 'Dataset' => 'Dataset',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Není zadán dataset',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'Datum',
- 'Date Format' => 'Formát data',
- 'Date Paid' => 'Zaplaceno',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => 'Má dáti',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Vymazat',
- 'Delete Account' => 'Vymazat úèet',
- 'Delete Dataset' => 'Zru¹it dataset',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => 'Popis',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'Adresáø',
- 'Discount' => 'Sleva',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Øidiè',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Datum splatnosti',
- 'Due Date missing!' => 'Chybí datum splatnosti!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Upravit úèet',
- 'Edit Assembly' => 'Upravit výrobek',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Upravit úètovací øetìzec',
- 'Edit General Ledger Transaction' => 'Opravit záznam v hlavní knize',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Upravit zbo¾í',
- 'Edit Preferences for' => 'Nastavení pro',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => 'Upravit vystavenou objednávku',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => 'Upravit pøijatou objednávku',
- 'Edit Service' => 'Upravit slu¾bu',
- 'Edit Template' => 'Upravit ¹ablonu',
- 'Edit User' => 'Upravit u¾ivatele',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Zakázat editaci v¹ech úèetních polo¾ek',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vlo¾te zkratky mìn (max. 3 znaky) oddìlené dvojteèkou pro domácí i cizí mìny (napø. CZK:USD:EUR)',
- 'Equity' => 'Vlastní jmìní',
- 'Excempt age <' => '',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Exchange rate for payment missing!' => '',
- 'Exchange rate missing!' => '',
- 'Existing Datasets' => 'Datasety',
- 'Expense' => 'Náklady',
- 'Expense Account' => 'Nákladový úèet',
- 'Expense/Asset' => 'Náklad',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'Foreign Exchange Gain' => 'Kurzový zisk',
- 'Foreign Exchange Loss' => 'Kurzová ztráta',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => 'Chybí úètovací øetìzec!',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => 'Hlavní kniha',
- 'Goods & Services' => 'Zbo¾í a slu¾by',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML ¹ablony',
- 'Heading' => 'Nadpis',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Chybí jméno serveru!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => '',
- 'In-line' => 'Vlo¾ené',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Include in drop-down menus' => 'Ukazovat v drop-down menu',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Zahrnovat tento úèet ve formuláøích odbìratelù/dodavatelù, aby bylo mo¾né oznaèit je za zdanitelné?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Výsledovka',
- 'Incorrect Dataset version!' => '©patná verze dat!',
- 'Incorrect Password!' => 'Nesprávné heslo!',
- 'Increase' => '',
- 'Individual Items' => 'Komponenty výrobku',
- 'Internal Notes' => '',
- 'Inventory' => 'Zásoby',
- 'Inventory Account' => 'Úèet zásob',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Pøed vyøazením výrobu, musí být stav na skladì nulový!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Pøed vyøazením zbo¾í musí být mno¾ství na skladì nulové',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => 'Øídící úèet pro',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Items' => '',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'LaTeX Templates' => 'LaTeX ¹ablony',
- 'Labor/Overhead' => '',
- 'Language' => 'Jazyk',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Poslední èísla a standardní èísla úètù',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Pro lokální databázi, nezadávejte adresu serveru a port.',
- 'Liability' => 'Závazek',
- 'Licensed to' => 'Licencováno pro',
- 'Line Total' => 'Øádek celkem',
- 'Link' => 'Vazby',
- 'Link Accounts' => 'Vazby mezi úèty',
- 'List' => '',
- 'List Accounts' => 'Seznam úètù',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Vypsat úètovací øetìzce',
- 'List Languages' => '',
- 'List Price' => 'Výrobní cena',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Vypsat transakce',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'U¾ivatelské jméno',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Odhlásit',
- 'Make' => 'Výrobce',
- 'Manager' => '',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Zpráva',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => 'Model',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '---',
- 'Name' => 'Jméno',
- 'Name missing!' => '',
- 'New Templates' => 'Nové ¹ablony',
- 'No' => 'Ne',
- 'No Database Drivers available!' => 'Není instalován ¾ádný ovladaè databáze!',
- 'No Dataset selected!' => 'Není zvolen ¾ádný dataset!',
- 'No email address for' => 'Chybí emailová adresy pro',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Poznámky',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'Nejsou polo¾ky k vymazání!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number Format' => 'Èíselný formát',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'O' => '',
- 'Obsolete' => 'Vyøazené',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'On Hand' => 'K dispozici',
- 'Open' => 'Otevøené',
- 'Oracle Database Administration' => 'Oracle Správa databáze',
- 'Order' => 'Objednávka',
- 'Order Date' => 'Datum objednávky',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Entry' => 'Zadání objednávky',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => 'Neprodejné',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Packing Lists' => '',
- 'Paid' => 'Zaplaceno',
- 'Part' => 'Zbo¾í',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Díly',
- 'Parts Inventory' => 'Zbo¾í',
- 'Password' => 'Heslo',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Závazky',
- 'Payment' => 'Platba',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payment posted!' => '',
- 'Payments' => 'Platby',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Správa databáze',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Chybí èíslo portu!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Nastavení',
- 'Preferences saved!' => 'Nastavení bylo ulo¾eno!',
- 'Prepayment' => '',
- 'Price' => 'Cena',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Tiskárna',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Qty' => 'Mno¾ství',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'Sazba',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => 'Pohledávky',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'Zaúètovat do',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => 'Zbývá',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Výkaz za',
- 'Reports' => 'Sestavy',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Po¾adováno do',
- 'Retained Earnings' => 'Nerozdìlený zisk',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Pøíjmy z prodeje',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Ulo¾it',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => 'Ulo¾it do souboru',
- 'Screen' => 'Na obrazovku',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Prodejní cena',
- 'Send by E-Mail' => 'Poslat e-mailem',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Slu¾ba',
- 'Service Items' => 'Polo¾ky slu¾eb',
- 'Services' => 'Slu¾by',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Nastavení ¹ablon',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Krátký výpis',
- 'Signature' => 'Podpis',
- 'Source' => 'Zdroj',
- 'Spoolfile' => '',
- 'Standard' => 'Standardní',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Výrobky',
- 'Stylesheet' => 'Stylesheet',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Systém',
- 'System Defaults' => '',
- 'Tax' => 'Daò',
- 'Tax Accounts' => 'Daòové úèty',
- 'Tax Included' => 'Cena vèetnì danì',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => 'Zdanitelné',
- 'Template saved!' => '',
- 'Templates' => '©ablony',
- 'Terms' => 'Netto',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Uvedené datasety nejsou vyu¾ívány a mohou být vymazány',
- 'The following Datasets need to be updated' => 'Následující data musí být aktualizována',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Toto je pøedbì¾ná kontrola existence zdrojových dokumentù. V této fázi nebude databáze aktualizována.',
- 'Till' => '',
- 'To' => 'do',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Pro pøidání u¾ivatele do skupiny otevøete existujícího u¾ivatele a ulo¾te jej s jiným u¾ivatelským jménem. Nový u¾ivatel bude vytvoøen s toto¾ným nastavením v¹ech promìnných.',
- 'Top Level' => '',
- 'Total' => 'Celkem',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Chybí datum!',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => 'Editace v¹ech polo¾ek zakázána (je nutné provést storno a nové zadání)',
- 'Transaction reversal enforced up to' => 'Editace polo¾ek zakázána do',
- 'Transactions' => 'Polo¾ky',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Obratová pøedvaha',
- 'Type of Business' => '',
- 'Unit' => 'Jednotka',
- 'Unit of measure' => 'Mìrná jednotka',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Aktualizovat data',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Vyu¾ít ¹ablony',
- 'User' => 'U¾ivatel',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Dodavatel',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '',
- 'Vendor missing!' => '',
- 'Vendor not on file!' => '',
- 'Vendor saved!' => '',
- 'Vendors' => '',
- 'Version' => 'Verze',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Váha',
- 'Weight Unit' => 'Jednotka váhy',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Ano',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nezadal jste jméno!',
- 'You must enter a host and port for local and remote connections!' => 'Pro lokální i vzdálené pøipojení je nutné zadat adresu serveru a port!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'dní',
- 'does not exist' => 'neexistuje',
- 'done' => '',
- 'ea' => 'm.j.',
- 'for Period' => 'za období',
- 'is already a member!' => 'ji¾ existuje!',
- 'is not a member!' => 'není platným u¾ivatelem',
- 'localhost' => 'lokální server',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'úspì¹nì vytvoøen!',
- 'successfully deleted!' => 'úspì¹nì smazán!',
- 'website' => 'www adresa',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/am b/sql-ledger/locale/cz/am
deleted file mode 100644
index dcd10c4..0000000
--- a/sql-ledger/locale/cz/am
+++ /dev/null
@@ -1,178 +0,0 @@
-$self{texts} = {
- 'AP' => 'Závazky',
- 'AR' => 'Pohledávky',
- 'About' => 'O programu',
- 'Account' => 'Úèet',
- 'Account Number' => 'Èíslo úètu',
- 'Account Number missing!' => 'Chybí èíslo úètu!',
- 'Account Type' => 'Typ úètu',
- 'Account Type missing!' => 'Chybí typ úètu!',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Account' => 'Zalo¾it úèet',
- 'Add GIFI' => 'Doplnit úètovací øetìzec',
- 'Address' => 'Adresa',
- 'Asset' => 'Aktiva',
- 'Audit Control' => 'Kontrola pøístupù',
- 'Backup sent to' => 'Záloha odeslána na adresu',
- 'Books are open' => '¡Uèetní knihy jsou otevøeny',
- 'Business Number' => 'IÈO',
- 'COGS' => 'Náklady na prodané zbo¾í',
- 'Cannot delete default account!' => 'Úèet je nastaven jako defaultní, nelze jej proto vymamazat!',
- 'Character Set' => 'Znaková sada',
- 'Chart of Accounts' => 'Úètový rozvrh',
- 'Close Books up to' => 'Uzavøít úèetní knihy do',
- 'Company' => 'Firma',
- 'Continue' => 'Pokraèování',
- 'Copy to COA' => 'Zkopírovat do úètového rozvrhu',
- 'Credit' => 'Dal',
- 'Database Host' => 'Databázový server',
- 'Dataset' => 'Dataset',
- 'Date Format' => 'Formát data',
- 'Debit' => 'Má dáti',
- 'Delete' => 'Vymazat',
- 'Delete Account' => 'Vymazat úèet',
- 'Description' => 'Popis',
- 'Discount' => 'Sleva',
- 'E-mail' => 'E-mail',
- 'Edit Account' => 'Upravit úèet',
- 'Edit GIFI' => 'Upravit úètovací øetìzec',
- 'Edit Preferences for' => 'Nastavení pro',
- 'Edit Template' => 'Upravit ¹ablonu',
- 'Enforce transaction reversal for all dates' => 'Zakázat editaci v¹ech úèetních polo¾ek',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vlo¾te zkratky mìn (max. 3 znaky) oddìlené dvojteèkou pro domácí i cizí mìny (napø. CZK:USD:EUR)',
- 'Equity' => 'Vlastní jmìní',
- 'Expense' => 'Náklady',
- 'Expense Account' => 'Nákladový úèet',
- 'Expense/Asset' => 'Náklad',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Kurzový zisk',
- 'Foreign Exchange Loss' => 'Kurzová ztráta',
- 'GIFI' => 'Úètovací øetìzec',
- 'GIFI missing!' => 'Chybí úètovací øetìzec!',
- 'Heading' => 'Nadpis',
- 'Include in drop-down menus' => 'Ukazovat v drop-down menu',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Zahrnovat tento úèet ve formuláøích odbìratelù/dodavatelù, aby bylo mo¾né oznaèit je za zdanitelné?',
- 'Inventory' => 'Zásoby',
- 'Inventory Account' => 'Úèet zásob',
- 'Is this a summary account to record' => 'Øídící úèet pro',
- 'Language' => 'Jazyk',
- 'Last Numbers & Default Accounts' => 'Poslední èísla a standardní èísla úètù',
- 'Liability' => 'Závazek',
- 'Licensed to' => 'Licencováno pro',
- 'Link' => 'Vazby',
- 'Name' => 'Jméno',
- 'No' => 'Ne',
- 'No email address for' => 'Chybí emailová adresy pro',
- 'Number' => 'Èíslo',
- 'Number Format' => 'Èíselný formát',
- 'Parts Inventory' => 'Zbo¾í',
- 'Password' => 'Heslo',
- 'Payables' => 'Závazky',
- 'Payment' => 'Platba',
- 'Phone' => 'Telefon',
- 'Preferences saved!' => 'Nastavení bylo ulo¾eno!',
- 'Printer' => 'Tiskárna',
- 'Rate' => 'Sazba',
- 'Receivables' => 'Pohledávky',
- 'Retained Earnings' => 'Nerozdìlený zisk',
- 'Save' => 'Ulo¾it',
- 'Service Items' => 'Polo¾ky slu¾eb',
- 'Signature' => 'Podpis',
- 'Stylesheet' => 'Stylesheet',
- 'Tax' => 'Daò',
- 'Tax Accounts' => 'Daòové úèty',
- 'Transaction reversal enforced for all dates' => 'Editace v¹ech polo¾ek zakázána (je nutné provést storno a nové zadání)',
- 'Transaction reversal enforced up to' => 'Editace polo¾ek zakázána do',
- 'User' => 'U¾ivatel',
- 'Version' => 'Verze',
- 'Weight Unit' => 'Jednotka váhy',
- 'Yes' => 'Ano',
- 'localhost' => 'lokální server',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'zalo¾it_úèet' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'pokraèování' => 'continue',
- 'zkopírovat_do_úètového_rozvrhu' => 'copy_to_coa',
- 'vymazat' => 'delete',
- 'edit' => 'edit',
- 'upravit_úèet' => 'edit_account',
- 'ulo¾it' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ap b/sql-ledger/locale/cz/ap
deleted file mode 100644
index 681a171..0000000
--- a/sql-ledger/locale/cz/ap
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Faktury pøijaté',
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Transaction' => 'Opravdu chcete vymazat transakci?',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Cannot post transaction for a closed period!' => 'Do uzavøeného období nelze úètovat!',
- 'Closed' => 'Zaplaceno',
- 'Confirm!' => 'Podtvrïte!',
- 'Continue' => 'Pokraèování',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zaplaceno',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'Due Date missing!' => 'Chybí datum splatnosti!',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'ID' => 'ID',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Open' => 'Otevøené',
- 'Order' => 'Objednávka',
- 'Order Number' => 'Objednávka èíslo',
- 'Paid' => 'Zaplaceno',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payments' => 'Platby',
- 'Remaining' => 'Zbývá',
- 'Screen' => 'Na obrazovku',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Source' => 'Zdroj',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'Tax Included' => 'Cena vèetnì danì',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Vendor' => 'Dodavatel',
- 'Yes' => 'Ano',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ar b/sql-ledger/locale/cz/ar
deleted file mode 100644
index 167fdce..0000000
--- a/sql-ledger/locale/cz/ar
+++ /dev/null
@@ -1,128 +0,0 @@
-$self{texts} = {
- 'AR Transactions' => 'Faktury vydané',
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Transaction' => 'Opravdu chcete vymazat transakci?',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Cannot post transaction for a closed period!' => 'Do uzavøeného období nelze úètovat!',
- 'Closed' => 'Zaplaceno',
- 'Confirm!' => 'Podtvrïte!',
- 'Continue' => 'Pokraèování',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zaplaceno',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'Due Date missing!' => 'Chybí datum splatnosti!',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'ID' => 'ID',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Open' => 'Otevøené',
- 'Order' => 'Objednávka',
- 'Order Number' => 'Objednávka èíslo',
- 'Paid' => 'Zaplaceno',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payments' => 'Platby',
- 'Remaining' => 'Zbývá',
- 'Screen' => 'Na obrazovku',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Source' => 'Zdroj',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'Tax Included' => 'Cena vèetnì danì',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Yes' => 'Ano',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/arap b/sql-ledger/locale/cz/arap
deleted file mode 100644
index a4b8179..0000000
--- a/sql-ledger/locale/cz/arap
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresa',
- 'Continue' => 'Pokraèování',
- 'Description' => 'Popis',
- 'Number' => 'Èíslo',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'pokraèování' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/arapprn b/sql-ledger/locale/cz/arapprn
deleted file mode 100644
index 898cdbb..0000000
--- a/sql-ledger/locale/cz/arapprn
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Amount' => 'Èástka',
- 'Continue' => 'Pokraèování',
- 'Date' => 'Datum',
- 'Screen' => 'Na obrazovku',
- 'Source' => 'Zdroj',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'pokraèování' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/bp b/sql-ledger/locale/cz/bp
deleted file mode 100644
index 893d06c..0000000
--- a/sql-ledger/locale/cz/bp
+++ /dev/null
@@ -1,39 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Confirm!' => 'Podtvrïte!',
- 'Continue' => 'Pokraèování',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'From' => 'z',
- 'Invoice' => 'Faktura',
- 'Invoice Number' => 'Èíslo faktury',
- 'Order' => 'Objednávka',
- 'Order Number' => 'Objednávka èíslo',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'To' => 'do',
- 'Vendor' => 'Dodavatel',
- 'Yes' => 'Ano',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'pokraèování' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ca b/sql-ledger/locale/cz/ca
deleted file mode 100644
index 936274d..0000000
--- a/sql-ledger/locale/cz/ca
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Chart of Accounts' => 'Úètový rozvrh',
- 'Credit' => 'Dal',
- 'Date' => 'Datum',
- 'Debit' => 'Má dáti',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Description' => 'Popis',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'List Transactions' => 'Vypsat transakce',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Subtotal' => 'Mezisouèet',
- 'To' => 'do',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'vypsat_transakce' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/cp b/sql-ledger/locale/cz/cp
deleted file mode 100644
index 99545b2..0000000
--- a/sql-ledger/locale/cz/cp
+++ /dev/null
@@ -1,57 +0,0 @@
-$self{texts} = {
- 'AP' => 'Závazky',
- 'AR' => 'Pohledávky',
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Address' => 'Adresa',
- 'All' => 'V¹e',
- 'Amount' => 'Èástka',
- 'Continue' => 'Pokraèování',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Description' => 'Popis',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Invoice' => 'Faktura',
- 'Number' => 'Èíslo',
- 'Payment' => 'Platba',
- 'Screen' => 'Na obrazovku',
- 'Source' => 'Zdroj',
- 'Vendor' => 'Dodavatel',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'pokraèování' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ct b/sql-ledger/locale/cz/ct
deleted file mode 100644
index dc309c9..0000000
--- a/sql-ledger/locale/cz/ct
+++ /dev/null
@@ -1,112 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Faktury pøijaté',
- 'AR Transactions' => 'Faktury vydané',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Customer' => 'Nový zákazník',
- 'Add Vendor' => 'Nový dodavatel',
- 'Address' => 'Adresa',
- 'All' => 'V¹e',
- 'Amount' => 'Èástka',
- 'Closed' => 'Zaplaceno',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Discount' => 'Sleva',
- 'E-mail' => 'E-mail',
- 'Fax' => 'Fax',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'ID' => 'ID',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Invoice' => 'Faktura',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Language' => 'Jazyk',
- 'Name' => 'Jméno',
- 'Notes' => 'Poznámky',
- 'Number' => 'Èíslo',
- 'Open' => 'Otevøené',
- 'Order' => 'Objednávka',
- 'Orphaned' => 'Neprodejné',
- 'Phone' => 'Telefon',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Qty' => 'Mno¾ství',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'Save' => 'Ulo¾it',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sell Price' => 'Prodejní cena',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'Tax Included' => 'Cena vèetnì danì',
- 'Taxable' => 'Zdanitelné',
- 'Terms' => 'Netto',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Unit' => 'Jednotka',
- 'days' => 'dní',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'nový_zákazník' => 'add_customer',
- 'nový_dodavatel' => 'add_vendor',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'pricelist' => 'pricelist',
- 'vystavená_objednávka' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'pøijatá_objednávka' => 'sales_order',
- 'ulo¾it' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/gl b/sql-ledger/locale/cz/gl
deleted file mode 100644
index 0624e58..0000000
--- a/sql-ledger/locale/cz/gl
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add General Ledger Transaction' => 'Nový zápis do hlavní knihy',
- 'Address' => 'Adresa',
- 'All' => 'V¹e',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Transaction' => 'Opravdu chcete vymazat transakci?',
- 'Asset' => 'Aktiva',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Cannot post transaction for a closed period!' => 'Do uzavøeného období nelze úètovat!',
- 'Confirm!' => 'Podtvrïte!',
- 'Continue' => 'Pokraèování',
- 'Credit' => 'Dal',
- 'Date' => 'Datum',
- 'Debit' => 'Má dáti',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Edit General Ledger Transaction' => 'Opravit záznam v hlavní knize',
- 'Equity' => 'Vlastní jmìní',
- 'Expense' => 'Náklady',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'General Ledger' => 'Hlavní kniha',
- 'ID' => 'ID',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Liability' => 'Závazek',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Reports' => 'Sestavy',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Source' => 'Zdroj',
- 'Subtotal' => 'Mezisouèet',
- 'To' => 'do',
- 'Transaction Date missing!' => 'Chybí datum!',
- 'Yes' => 'Ano',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/hr b/sql-ledger/locale/cz/hr
deleted file mode 100644
index 91be120..0000000
--- a/sql-ledger/locale/cz/hr
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'AP' => 'Závazky',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Address' => 'Adresa',
- 'Administrator' => 'Administrator',
- 'All' => 'V¹e',
- 'Amount' => 'Èástka',
- 'Continue' => 'Pokraèování',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'E-mail' => 'E-mail',
- 'Expense' => 'Náklady',
- 'ID' => 'ID',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Login' => 'U¾ivatelské jméno',
- 'Name' => 'Jméno',
- 'Notes' => 'Poznámky',
- 'Number' => 'Èíslo',
- 'Orphaned' => 'Neprodejné',
- 'Rate' => 'Sazba',
- 'Sales' => 'Pøíjmy z prodeje',
- 'Save' => 'Ulo¾it',
- 'User' => 'U¾ivatel',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'ulo¾it' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ic b/sql-ledger/locale/cz/ic
deleted file mode 100644
index 053fa4a..0000000
--- a/sql-ledger/locale/cz/ic
+++ /dev/null
@@ -1,190 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add' => 'Pøidat',
- 'Add Assembly' => 'Nový výrobek',
- 'Add Part' => 'Pøíjem zbo¾í',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Add Service' => 'Nový druh slu¾by',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Assemblies' => 'Výrobky',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Bin' => 'Paleta',
- 'COGS' => 'Náklady na prodané zbo¾í',
- 'Closed' => 'Zaplaceno',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Edit Assembly' => 'Upravit výrobek',
- 'Edit Part' => 'Upravit zbo¾í',
- 'Edit Service' => 'Upravit slu¾bu',
- 'Expense' => 'Náklady',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'In-line' => 'Vlo¾ené',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Individual Items' => 'Komponenty výrobku',
- 'Inventory' => 'Zásoby',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Pøed vyøazením výrobu, musí být stav na skladì nulový!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Pøed vyøazením zbo¾í musí být mno¾ství na skladì nulové',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Line Total' => 'Øádek celkem',
- 'Link Accounts' => 'Vazby mezi úèty',
- 'List Price' => 'Výrobní cena',
- 'Make' => 'Výrobce',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'Model' => 'Model',
- 'Name' => 'Jméno',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Obsolete' => 'Vyøazené',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'On Hand' => 'K dispozici',
- 'Open' => 'Otevøené',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Orphaned' => 'Neprodejné',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Part' => 'Zbo¾í',
- 'Parts' => 'Díly',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Qty' => 'Mno¾ství',
- 'ROP' => 'ROP',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'Save' => 'Ulo¾it',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sell Price' => 'Prodejní cena',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Services' => 'Slu¾by',
- 'Short' => 'Krátký výpis',
- 'Stock Assembly' => 'Výrobky',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'To' => 'do',
- 'Unit' => 'Jednotka',
- 'Unit of measure' => 'Mìrná jednotka',
- 'Vendor' => 'Dodavatel',
- 'Weight' => 'Váha',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'days' => 'dní',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'nový_výrobek' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'pøíjem_zbo¾í' => 'add_part',
- 'nový_druh_slu¾by' => 'add_service',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'upravit_výrobek' => 'edit_assembly',
- 'upravit_zbo¾í' => 'edit_part',
- 'upravit_slu¾bu' => 'edit_service',
- 'ulo¾it' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/io b/sql-ledger/locale/cz/io
deleted file mode 100644
index 2761451..0000000
--- a/sql-ledger/locale/cz/io
+++ /dev/null
@@ -1,96 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Address' => 'Adresa',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Bin' => 'Paleta',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Description' => 'Popis',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'In-line' => 'Vlo¾ené',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Part' => 'Zbo¾í',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Qty' => 'Mno¾ství',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'To' => 'do',
- 'Unit' => 'Jednotka',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'pokraèování' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ir b/sql-ledger/locale/cz/ir
deleted file mode 100644
index 945b25d..0000000
--- a/sql-ledger/locale/cz/ir
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Invoice Number' => 'Opravdu chcete vymazat fakturu èíslo',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Bin' => 'Paleta',
- 'Confirm!' => 'Podtvrïte!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Credit Limit' => 'Úvìrový limit',
- 'Currency' => 'Mìna',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'In-line' => 'Vlo¾ené',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Language' => 'Jazyk',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Part' => 'Zbo¾í',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payments' => 'Platby',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Qty' => 'Mno¾ství',
- 'Record in' => 'Zaúètovat do',
- 'Remaining' => 'Zbývá',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Source' => 'Zdroj',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax Included' => 'Cena vèetnì danì',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Unit' => 'Jednotka',
- 'Vendor' => 'Dodavatel',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'Yes' => 'Ano',
- 'ea' => 'm.j.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'vystavená_objednávka' => 'purchase_order',
- 'update' => 'update',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/is b/sql-ledger/locale/cz/is
deleted file mode 100644
index 2a10726..0000000
--- a/sql-ledger/locale/cz/is
+++ /dev/null
@@ -1,160 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Invoice Number' => 'Opravdu chcete vymazat fakturu èíslo',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Bin' => 'Paleta',
- 'Confirm!' => 'Podtvrïte!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Credit Limit' => 'Úvìrový limit',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'In-line' => 'Vlo¾ené',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Part' => 'Zbo¾í',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payments' => 'Platby',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Qty' => 'Mno¾ství',
- 'Record in' => 'Zaúètovat do',
- 'Remaining' => 'Zbývá',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Source' => 'Zdroj',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax Included' => 'Cena vèetnì danì',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Unit' => 'Jednotka',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'Yes' => 'Ano',
- 'ea' => 'm.j.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'pøijatá_objednávka' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/login b/sql-ledger/locale/cz/login
deleted file mode 100644
index f6a1d8f..0000000
--- a/sql-ledger/locale/cz/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Pokraèování',
- 'Incorrect Dataset version!' => '©patná verze dat!',
- 'Incorrect Password!' => 'Nesprávné heslo!',
- 'Login' => 'U¾ivatelské jméno',
- 'Name' => 'Jméno',
- 'Password' => 'Heslo',
- 'Version' => 'Verze',
- 'You did not enter a name!' => 'Nezadal jste jméno!',
- 'is not a member!' => 'není platným u¾ivatelem',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'u¾ivatelské_jméno' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/menu b/sql-ledger/locale/cz/menu
deleted file mode 100644
index 9290dd5..0000000
--- a/sql-ledger/locale/cz/menu
+++ /dev/null
@@ -1,61 +0,0 @@
-$self{texts} = {
- 'AP' => 'Závazky',
- 'AP Aging' => 'Analýza splatnosti',
- 'AR' => 'Pohledávky',
- 'AR Aging' => 'Analýza splatnosti',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Account' => 'Zalo¾it úèet',
- 'Add Assembly' => 'Nový výrobek',
- 'Add Customer' => 'Nový zákazník',
- 'Add GIFI' => 'Doplnit úètovací øetìzec',
- 'Add Part' => 'Pøíjem zbo¾í',
- 'Add Service' => 'Nový druh slu¾by',
- 'Add Transaction' => 'Nová transakce',
- 'Add Vendor' => 'Nový dodavatel',
- 'Assemblies' => 'Výrobky',
- 'Audit Control' => 'Kontrola pøístupù',
- 'Backup' => 'Záloha',
- 'Balance Sheet' => 'Rozvaha',
- 'Chart of Accounts' => 'Úètový rozvrh',
- 'Description' => 'Popis',
- 'General Ledger' => 'Hlavní kniha',
- 'Goods & Services' => 'Zbo¾í a slu¾by',
- 'HTML Templates' => 'HTML ¹ablony',
- 'Income Statement' => 'Výsledovka',
- 'Invoice' => 'Faktura',
- 'LaTeX Templates' => 'LaTeX ¹ablony',
- 'Language' => 'Jazyk',
- 'List Accounts' => 'Seznam úètù',
- 'List GIFI' => 'Vypsat úètovací øetìzce',
- 'Logout' => 'Odhlásit',
- 'Open' => 'Otevøené',
- 'Order Entry' => 'Zadání objednávky',
- 'Packing List' => 'Dodací list',
- 'Parts' => 'Díly',
- 'Payment' => 'Platba',
- 'Payments' => 'Platby',
- 'Preferences' => 'Nastavení',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Reports' => 'Sestavy',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'Save to File' => 'Ulo¾it do souboru',
- 'Send by E-Mail' => 'Poslat e-mailem',
- 'Services' => 'Slu¾by',
- 'Stock Assembly' => 'Výrobky',
- 'Stylesheet' => 'Stylesheet',
- 'System' => 'Systém',
- 'Transactions' => 'Polo¾ky',
- 'Trial Balance' => 'Obratová pøedvaha',
- 'Version' => 'Verze',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/oe b/sql-ledger/locale/cz/oe
deleted file mode 100644
index b55ea53..0000000
--- a/sql-ledger/locale/cz/oe
+++ /dev/null
@@ -1,195 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Order Number' => 'Opravdu chcete vymazat objednávku èíslo',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Bin' => 'Paleta',
- 'Closed' => 'Zaplaceno',
- 'Confirm!' => 'Podtvrïte!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Edit Purchase Order' => 'Upravit vystavenou objednávku',
- 'Edit Sales Order' => 'Upravit pøijatou objednávku',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'ID' => 'ID',
- 'In-line' => 'Vlo¾ené',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Open' => 'Otevøené',
- 'Order' => 'Objednávka',
- 'Order Date' => 'Datum objednávky',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Part' => 'Zbo¾í',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Purchase Orders' => 'Vystavené objednávky',
- 'Qty' => 'Mno¾ství',
- 'Remaining' => 'Zbývá',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Sales Orders' => 'Pøijaté objednávky',
- 'Save' => 'Ulo¾it',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'Tax Included' => 'Cena vèetnì danì',
- 'Terms' => 'Netto',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Unit' => 'Jednotka',
- 'Vendor' => 'Dodavatel',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'Yes' => 'Ano',
- 'days' => 'dní',
- 'ea' => 'm.j.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'vystavená_objednávka' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'pøijatá_objednávka' => 'sales_order',
- 'ulo¾it' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/pe b/sql-ledger/locale/cz/pe
deleted file mode 100644
index 789f228..0000000
--- a/sql-ledger/locale/cz/pe
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu úèetnictví',
- 'All' => 'V¹e',
- 'Continue' => 'Pokraèování',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Language' => 'Jazyk',
- 'Number' => 'Èíslo',
- 'Orphaned' => 'Neprodejné',
- 'Save' => 'Ulo¾it',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'ulo¾it' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/pos b/sql-ledger/locale/cz/pos
deleted file mode 100644
index 6d32402..0000000
--- a/sql-ledger/locale/cz/pos
+++ /dev/null
@@ -1,47 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Continue' => 'Pokraèování',
- 'Credit Limit' => 'Úvìrový limit',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Exchange Rate' => 'Mìnový kurz',
- 'From' => 'z',
- 'Language' => 'Jazyk',
- 'Number' => 'Èíslo',
- 'Open' => 'Otevøené',
- 'Paid' => 'Zaplaceno',
- 'Price' => 'Cena',
- 'Qty' => 'Mno¾ství',
- 'Record in' => 'Zaúètovat do',
- 'Remaining' => 'Zbývá',
- 'Screen' => 'Na obrazovku',
- 'Source' => 'Zdroj',
- 'Subtotal' => 'Mezisouèet',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Unit' => 'Jednotka',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/ps b/sql-ledger/locale/cz/ps
deleted file mode 100644
index 5447763..0000000
--- a/sql-ledger/locale/cz/ps
+++ /dev/null
@@ -1,222 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Analýza splatnosti',
- 'AR Aging' => 'Analýza splatnosti',
- 'AR Transactions' => 'Faktury vydané',
- 'Account' => 'Úèet',
- 'Account Number' => 'Èíslo úètu',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Accounts' => 'Úèty',
- 'Add Purchase Order' => 'Nová objednávka (nákup)',
- 'Add Sales Order' => 'Nová objednávka (pøíjem)',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Are you sure you want to delete Invoice Number' => 'Opravdu chcete vymazat fakturu èíslo',
- 'Are you sure you want to delete Transaction' => 'Opravdu chcete vymazat transakci?',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Balance Sheet' => 'Rozvaha',
- 'Bin' => 'Paleta',
- 'Cannot post transaction for a closed period!' => 'Do uzavøeného období nelze úètovat!',
- 'Closed' => 'Zaplaceno',
- 'Compare to' => 'Porovnáno k',
- 'Confirm!' => 'Podtvrïte!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Credit' => 'Dal',
- 'Credit Limit' => 'Úvìrový limit',
- 'Curr' => 'Mìna',
- 'Currency' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zaplaceno',
- 'Debit' => 'Má dáti',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Delete' => 'Vymazat',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'Due Date missing!' => 'Chybí datum splatnosti!',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Exch' => 'Kurz',
- 'Exchange Rate' => 'Mìnový kurz',
- 'Fax' => 'Fax',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'Heading' => 'Nadpis',
- 'ID' => 'ID',
- 'In-line' => 'Vlo¾ené',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Income Statement' => 'Výsledovka',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Datum vystavení',
- 'Invoice Date missing!' => 'Chybí datum vystavení!',
- 'Invoice Number' => 'Èíslo faktury',
- 'Invoice Number missing!' => 'Chybí èíslo faktury!',
- 'Item not on file!' => 'Tato polo¾ka není v databázi!',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Language' => 'Jazyk',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'N/A' => '---',
- 'Notes' => 'Poznámky',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Number missing in Row' => 'Chybìjící èíslo na øádku',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Open' => 'Otevøené',
- 'Order' => 'Objednávka',
- 'Order Date missing!' => 'Chybí datum objednávky!',
- 'Order Number' => 'Objednávka èíslo',
- 'Order Number missing!' => 'Chybí èíslo objednávky!',
- 'Packing List' => 'Dodací list',
- 'Packing List Date missing!' => 'Chybí datum dodacího listu',
- 'Packing List Number missing!' => 'Chybí èíslo dodacího listu',
- 'Paid' => 'Zaplaceno',
- 'Part' => 'Zbo¾í',
- 'Payment date missing!' => 'Chybí datum platby!',
- 'Payments' => 'Platby',
- 'Phone' => 'Telefon',
- 'Price' => 'Cena',
- 'Purchase Order' => 'Vystavená objednávka',
- 'Qty' => 'Mno¾ství',
- 'Record in' => 'Zaúètovat do',
- 'Remaining' => 'Zbývá',
- 'Report for' => 'Výkaz za',
- 'Required by' => 'Po¾adováno do',
- 'Sales Order' => 'Pøijatá objednávka',
- 'Screen' => 'Na obrazovku',
- 'Select from one of the items below' => 'Zvolte z ní¾e uvedených polo¾ek',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Service' => 'Slu¾ba',
- 'Source' => 'Zdroj',
- 'Standard' => 'Standardní',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'Tax Included' => 'Cena vèetnì danì',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Trial Balance' => 'Obratová pøedvaha',
- 'Unit' => 'Jednotka',
- 'Vendor' => 'Dodavatel',
- 'What type of item is this?' => 'O jaký typ polo¾ky se jedná?',
- 'Yes' => 'Ano',
- 'ea' => 'm.j.',
- 'for Period' => 'za období',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'pokraèování' => 'continue',
- 'vymazat' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'pøijatá_objednávka' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'ano' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/pw b/sql-ledger/locale/cz/pw
deleted file mode 100644
index 10184a3..0000000
--- a/sql-ledger/locale/cz/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Pokraèování',
- 'Password' => 'Heslo',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'pokraèování' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/rc b/sql-ledger/locale/cz/rc
deleted file mode 100644
index 50366a4..0000000
--- a/sql-ledger/locale/cz/rc
+++ /dev/null
@@ -1,55 +0,0 @@
-$self{texts} = {
- 'Account' => 'Úèet',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Continue' => 'Pokraèování',
- 'Date' => 'Datum',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Description' => 'Popis',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Payment' => 'Platba',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Source' => 'Zdroj',
- 'To' => 'do',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'pokraèování' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/cz/rp b/sql-ledger/locale/cz/rp
deleted file mode 100644
index ffc5d94..0000000
--- a/sql-ledger/locale/cz/rp
+++ /dev/null
@@ -1,120 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Analýza splatnosti',
- 'AR Aging' => 'Analýza splatnosti',
- 'Account' => 'Úèet',
- 'Account Number' => 'Èíslo úètu',
- 'Accounting Menu' => 'Menu úèetnictví',
- 'Accounts' => 'Úèty',
- 'Address' => 'Adresa',
- 'Amount' => 'Èástka',
- 'Apr' => 'Dub',
- 'April' => 'Duben',
- 'Attachment' => 'Pøílohy',
- 'Aug' => 'Srp',
- 'August' => 'Srpen',
- 'Balance Sheet' => 'Rozvaha',
- 'Compare to' => 'Porovnáno k',
- 'Continue' => 'Pokraèování',
- 'Copies' => 'Kopie',
- 'Credit' => 'Dal',
- 'Curr' => 'Mìna',
- 'Customer' => 'Odbìratel',
- 'Date' => 'Datum',
- 'Debit' => 'Má dáti',
- 'Dec' => 'Pro',
- 'December' => 'Prosinec',
- 'Description' => 'Popis',
- 'Due Date' => 'Datum splatnosti',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Chybí E-mailová adresa!',
- 'Feb' => 'Úno',
- 'February' => 'Únor',
- 'From' => 'z',
- 'GIFI' => 'Úètovací øetìzec',
- 'Heading' => 'Nadpis',
- 'ID' => 'ID',
- 'In-line' => 'Vlo¾ené',
- 'Include in Report' => 'Zahrnovat v sestavì',
- 'Income Statement' => 'Výsledovka',
- 'Invoice' => 'Faktura',
- 'Jan' => 'Led',
- 'January' => 'Leden',
- 'Jul' => 'Èec',
- 'July' => 'Èervenec',
- 'Jun' => 'Èer',
- 'June' => 'Èerven',
- 'Language' => 'Jazyk',
- 'Mar' => 'Bøe',
- 'March' => 'Bøezen',
- 'May' => 'Kvìten',
- 'May ' => 'Kvì',
- 'Message' => 'Zpráva',
- 'N/A' => '---',
- 'Nov' => 'Lis',
- 'November' => 'Listopad',
- 'Number' => 'Èíslo',
- 'Oct' => 'Øíj',
- 'October' => 'Øíjen',
- 'Order' => 'Objednávka',
- 'Payments' => 'Platby',
- 'Report for' => 'Výkaz za',
- 'Screen' => 'Na obrazovku',
- 'Sep' => 'Záø',
- 'September' => 'Záøí',
- 'Source' => 'Zdroj',
- 'Standard' => 'Standardní',
- 'Subject' => 'Pøedmìt',
- 'Subtotal' => 'Mezisouèet',
- 'Tax' => 'Daò',
- 'To' => 'do',
- 'Total' => 'Celkem',
- 'Trial Balance' => 'Obratová pøedvaha',
- 'Vendor' => 'Dodavatel',
- 'for Period' => 'za období',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'pokraèování' => 'continue',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/de/COPYING b/sql-ledger/locale/de/COPYING
deleted file mode 100644
index f158464..0000000
--- a/sql-ledger/locale/de/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# German texts:
-#
-# Author: Thomas Bayen <tbayen@bayen.de>
-# Gunter Ohrner <G.Ohrner@post.rwth-aachen.de>
-# Jens Koerner <jens@kleinflintbek.net>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-######################################################################
diff --git a/sql-ledger/locale/de/LANGUAGE b/sql-ledger/locale/de/LANGUAGE
deleted file mode 100644
index fc0b977..0000000
--- a/sql-ledger/locale/de/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-German
diff --git a/sql-ledger/locale/de/Num2text b/sql-ledger/locale/de/Num2text
deleted file mode 100644
index 960baa7..0000000
--- a/sql-ledger/locale/de/Num2text
+++ /dev/null
@@ -1,185 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# this is a variation of the Lingua package
-# written for check and receipt printing
-# it returns a properly formatted text string
-# for a number up to 10**12
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'Null',
- 1 => 'ein',
- 2 => 'zwei',
- 3 => 'drei',
- 4 => 'vier',
- 5 => 'fünf',
- 6 => 'sechs',
- 7 => 'sieben',
- 8 => 'acht',
- 9 => 'neun',
- 10 => 'zehn',
- 11 => 'elf',
- 12 => 'zwölf',
- 13 => 'dreizehn',
- 14 => 'vierzehn',
- 15 => 'fünfzehn',
- 16 => 'sechzehn',
- 17 => 'siebzehn',
- 18 => 'achtzehn',
- 19 => 'neunzehn',
- 20 => 'zwanzig',
- 30 => 'dreissig',
- 40 => 'vierzig',
- 50 => 'fünfzig',
- 60 => 'sechzig',
- 70 => 'siebzig',
- 80 => 'achtzig',
- 90 => 'neunzig',
- 10**2 => 'hundert',
- 10**3 => 'tausend',
- 10**6 => 'million',
- 10**9 => 'milliarde',
- 10**12 => 'billion'
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my ($i, $appendn);
- my @a = ();
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- my $belowhundred = !$#numblock;
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
- $appendn = "";
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- $appendn = 'en' if ($i == 2);
- $appendn = 'n' if ($i > 2);
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i], $belowhundred);
- } elsif ($numblock[$i] > 1) {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- } elsif ($numblock[$i] == 1) {
- if ($i == 0) {
- push @textnumber, $self->{numbername}{$numblock[$i]}.'s';
- } else {
- if ($i >= 2) {
- push @textnumber, $self->{numbername}{$numblock[$i]}.'e';
- } else {
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
- }
- $appendn = "";
- }
-
- # add thousand, million
- if ($i) {
- $amount = 10**($i * 3);
- push @textnumber, $self->{numbername}{$amount}.$appendn;
- }
-
- pop @numblock;
-
- }
-
- join '', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount, $belowhundred) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- if ($num[1] == 0) {
- $textnumber = $self->{numbername}{$amount};
- } else {
- if ($belowhundred) {
- $amount = $num[0] * 10;
- $textnumber = $self->{numbername}{$num[1]}.'und'.$self->{numbername}{$amount};
- } else {
- $amount = $num[0] * 10;
- $textnumber = $self->{numbername}{$amount}.$self->{numbername}{$num[1]};
- $textnumber .= 's' if ($num[1] == 1);
- }
- }
- } else {
- $textnumber = $self->{numbername}{$amount};
- }
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/de/admin b/sql-ledger/locale/de/admin
deleted file mode 100644
index 08c899d..0000000
--- a/sql-ledger/locale/de/admin
+++ /dev/null
@@ -1,139 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Zugriffkontrolle',
- 'Accounting' => 'Buchhaltung',
- 'Add User' => 'Benutzer anlegen',
- 'Address' => 'Adresse',
- 'Administration' => 'Verwaltung',
- 'Administrator' => 'Verwalter',
- 'All Datasets up to date!' => 'Alle Datenbanken sind auf aktuellem Stand.',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Verwalterpasswort ändern',
- 'Change Password' => 'Passwort ändern',
- 'Character Set' => 'Zeichensatz',
- 'Click on login name to edit!' => 'Zum Bearbeiten den Benutzernamen anklicken!',
- 'Company' => 'Firma',
- 'Connect to' => 'Als Vorlage verwenden',
- 'Continue' => 'Weiter',
- 'Create Chart of Accounts' => 'Kontenplan anlegen',
- 'Create Dataset' => 'Datenbank anlegen',
- 'DBI not installed!' => 'DBI ist nicht installiert!',
- 'Database' => 'Datenbank',
- 'Database Administration' => 'Datenbankverwaltung',
- 'Database Driver not checked!' => 'Kein Datenbanktreiber ausgewählt!',
- 'Database User missing!' => 'Datenbankbenutzer fehlt!',
- 'Dataset' => 'Datenbank',
- 'Dataset missing!' => 'Datenbank fehlt!',
- 'Dataset updated!' => 'Datenbank erneuert!',
- 'Date Format' => 'Datumsformat',
- 'Delete' => 'Löschen',
- 'Delete Dataset' => 'Datenbank löschen',
- 'Directory' => 'Verzeichnis',
- 'Driver' => 'Treiber',
- 'Dropdown Limit' => 'Auswahllistenlimit',
- 'E-mail' => 'eMail',
- 'Edit User' => 'Benutzerdaten bearbeiten',
- 'Existing Datasets' => 'Existierende Datenbanken',
- 'Fax' => 'Fax',
- 'Host' => 'Datenbank-Rechner',
- 'Hostname missing!' => 'Rechnername fehlt!',
- 'Language' => 'Sprache',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Für lokale Verbindungen "Rechner" und "Port" freilassen.',
- 'Lock System' => 'System sperren',
- 'Lockfile created!' => 'gesichert!',
- 'Lockfile removed!' => 'entsichert!',
- 'Login' => 'Anmelden',
- 'Login name missing!' => 'Benutzername fehlt!',
- 'Manager' => 'Geschäftsführer',
- 'Menu Width' => 'Menübreite',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Name',
- 'New Templates' => 'Neue Vorlagen',
- 'No Database Drivers available!' => 'Kein Datenbanktreiber verfügbar!',
- 'No Dataset selected!' => 'Keine Datenbank ausgewählt!',
- 'Nothing to delete!' => 'Es konnte nichts gelöscht werden!',
- 'Number Format' => 'Zahlenformat',
- 'Oracle Database Administration' => 'Oracle Datenbankverwaltung',
- 'Password' => 'Passwort',
- 'Password changed!' => 'Passwort geändert!',
- 'Pg Database Administration' => 'Pg Datenbankverwaltung',
- 'PgPP Database Administration' => 'PgPP Datenbankverwaltung',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Portangabe fehlt!',
- 'Printer' => 'Drucker',
- 'Save' => 'Speichern',
- 'Setup Templates' => 'Vorlagen auswählen',
- 'Signature' => 'Unterschrift',
- 'Stylesheet' => 'Stilvorlage',
- 'Templates' => 'Vorlagen',
- 'The following Datasets are not in use and can be deleted' => 'Die folgenden Datenbanken sind nicht in Verwendung und können gelöscht werden',
- 'The following Datasets need to be updated' => 'Folgende Datenbanken müssen aktualisiert werden',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'In diesem Schritt werden bestehende Datenbanken gesucht. Es werden noch keine Änderungen vorgenommen!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Um einer Gruppe einen neuen Benutzer hinzuzufügen, ändern und speichern Sie am einfachsten einen bestehenden Zugriffsnamen. Unter dem neuen Namen wird dann ein Benutzer mit denselben Einstellungen angelegt.',
- 'Unlock System' => 'System entsperren',
- 'Update Dataset' => 'Datenbank aktualisieren',
- 'Use Templates' => 'Benutze Vorlagen',
- 'User' => 'Benutzer',
- 'User deleted!' => 'Benutzer gelöscht!',
- 'User saved!' => 'Benutzer gespeichert!',
- 'Version' => 'Version',
- 'You must enter a host and port for local and remote connections!' => '"Rechner" und "Port" müssen für lokale und externe Verbindungen eingetragen werden!',
- 'does not exist' => 'existiert nicht',
- 'is already a member!' => 'ist bereits ein Mitglied!',
- 'localhost' => 'lokaler Rechner',
- 'locked!' => 'gesperrt!',
- 'successfully created!' => 'wurde erfolgreich erstellt',
- 'successfully deleted!' => 'wurde erfolgreich gelöscht',
- 'website' => 'Webseite',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'benutzer_anlegen' => 'add_user',
- 'verwalterpasswort_ändern' => 'change_admin_password',
- 'passwort_ändern' => 'change_password',
- 'weiter' => 'continue',
- 'datenbank_anlegen' => 'create_dataset',
- 'löschen' => 'delete',
- 'datenbank_löschen' => 'delete_dataset',
- 'system_sperren' => 'lock_system',
- 'anmelden' => 'login',
- 'logout' => 'logout',
- 'oracle_datenbankverwaltung' => 'oracle_database_administration',
- 'pg_datenbankverwaltung' => 'pg_database_administration',
- 'pgpp_datenbankverwaltung' => 'pgpp_database_administration',
- 'speichern' => 'save',
- 'system_entsperren' => 'unlock_system',
- 'datenbank_aktualisieren' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/de/am b/sql-ledger/locale/de/am
deleted file mode 100644
index 92acc6c..0000000
--- a/sql-ledger/locale/de/am
+++ /dev/null
@@ -1,238 +0,0 @@
-$self{texts} = {
- 'AP' => 'Verbindlichkeiten',
- 'AR' => 'Forderungen',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer fehlt!',
- 'Account Type' => 'Kontoart',
- 'Account Type missing!' => 'Kontoart fehlt!',
- 'Account deleted!' => 'Konto gelöscht!',
- 'Account does not exist!' => 'Konto existiert nicht!',
- 'Account saved!' => 'Konto gespeichert!',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Accrual' => 'Laufend',
- 'Activate Audit trails' => 'Revisionsnachfolge aktivieren',
- 'Add Account' => 'Konto anlegen',
- 'Add Business' => 'Gewerbe anlegen',
- 'Add Department' => 'Abteilung anlegen',
- 'Add GIFI' => 'GIFI anlegen',
- 'Add Language' => 'Sprache anlegen',
- 'Add SIC' => 'SIC anlegen',
- 'Add Warehouse' => 'Warenlager anlegen',
- 'Address' => 'Adresse',
- 'Asset' => 'Aktiva/Mittelverwendung',
- 'Audit Control' => 'Bücherkontrolle',
- 'Audit trail removed up to' => 'Revisionsnachfolge gelöscht bis zu',
- 'Audit trails disabled' => 'Revisionsnachfolge nicht aktiviert',
- 'Audit trails enabled' => 'Revisionsnachfolge aktiviert',
- 'Backup sent to' => 'Eine Sicherungskopie wurde gesandt an',
- 'Books are open' => 'Die Bücher sind geöffnet.',
- 'Business Number' => 'Firmennummer',
- 'Business deleted!' => 'Gewerbe gelöscht!',
- 'Business saved!' => 'Gewerbe gespeichert!',
- 'COGS' => 'Umsatzkosten',
- 'Cannot delete account!' => 'Konto kann nicht gelöscht werden!',
- 'Cannot delete default account!' => 'Das Standard-Konto kann nicht gelöscht werden!',
- 'Cannot save account!' => 'Konto kann nicht gespeichert werden!',
- 'Cannot save defaults!' => 'Einstellungen konnten nicht gespeichert werden!',
- 'Cannot save preferences!' => 'Benutzereinstellungen können nicht gespeichert werden!',
- 'Cannot set account for more than one of AR, AP or IC' => 'AR, AP und IC Konten können nicht auf andere Konten gleichzeitig eingestellt werden',
- 'Cannot set multiple options for' => 'Mehr als eine Optionen nicht erlaubt für : ',
- 'Cannot set multiple options for Parts Inventory' => 'Für das Inventarkonto sind mehrere Option nicht erlaubt',
- 'Cannot set multiple options for Service Items' => 'Für das Dienstleistungskonto sind mehrere Optionen nicht erlaubt',
- 'Cash' => 'Kasse',
- 'Character Set' => 'Zeichensatz',
- 'Chart of Accounts' => 'Kontenübersicht',
- 'Close Books up to' => 'Die Bücher abschließen bis zum',
- 'Code' => 'Kodex',
- 'Code missing!' => 'Kodex fehlt!',
- 'Company' => 'Firma',
- 'Continue' => 'Weiter',
- 'Contra' => 'Gegenkonto',
- 'Copy to COA' => 'Auf COA kopieren',
- 'Cost Center' => 'Kostenverwaltung',
- 'Credit' => 'Haben',
- 'Date Format' => 'Datumsformat',
- 'Debit' => 'Soll',
- 'Defaults saved!' => 'Einstellungen gespeichert!',
- 'Delete' => 'Löschen',
- 'Delete Account' => 'Konto löschen',
- 'Department deleted!' => 'Abteilung gelöscht!',
- 'Department saved!' => 'Abteilung gespeichert!',
- 'Departments' => 'Abteilungen',
- 'Description' => 'Beschreibung',
- 'Description missing!' => 'Beschreibung fehlt!',
- 'Discount' => 'Rabatt',
- 'Dropdown Limit' => 'Auswahllistenlimit',
- 'E-mail' => 'eMail',
- 'Edit' => 'Bearbeiten',
- 'Edit Account' => 'Kontodaten bearbeiten',
- 'Edit Business' => 'Gewerbe bearbeiten',
- 'Edit Department' => 'Abteilung bearbeiten',
- 'Edit GIFI' => 'GIFI editieren',
- 'Edit Language' => 'Sprache bearbeiten',
- 'Edit Preferences for' => 'Benutzereinstellungen für',
- 'Edit SIC' => 'SIC editieren',
- 'Edit Template' => 'Vorlage bearbeiten',
- 'Edit Warehouse' => 'Warenlager bearbeiten',
- 'Enforce transaction reversal for all dates' => 'Kontraeintragungen für jeden Zeitraum aktualisieren',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Durch Doppelpunkte getrennte Währungskürzel mit maximal 3 Buchstaben aufführen; Ihre eigene Landeswährung zuerst (z.B. EUR:USD:CAD)',
- 'Equity' => 'Passiva/Eigenkapital',
- 'Expense' => 'Aufwand',
- 'Expense Account' => 'Aufwandskonto',
- 'Expense/Asset' => 'Aufwand/Anlagen',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Wechselkurserträge',
- 'Foreign Exchange Loss' => 'Wechselkursaufwendungen',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI gelöscht!',
- 'GIFI missing!' => 'GIFI fehlt!',
- 'GIFI saved!' => 'GIFI gespeichert!',
- 'Heading' => 'Überschrift',
- 'Include in drop-down menus' => 'In Aufklapp-Menü aufnehmen',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Soll dieses Konto auf dem Kunden- und Lieferantenformular angezeigt werden um den Kunden/Lieferanten als steuerplichtig zu markieren?',
- 'Income' => 'Einnahmen',
- 'Income Account' => 'Einnahmenkonto',
- 'Inventory' => 'Inventar',
- 'Inventory Account' => 'Warenbestand',
- 'Is this a summary account to record' => 'Summenkonto für',
- 'Labor/Overhead' => 'Gestehungskosten',
- 'Language' => 'Sprache',
- 'Language deleted!' => 'Sprache gelöscht!',
- 'Language saved!' => 'Sprache gespeichert!',
- 'Languages' => 'Sprachen',
- 'Last Numbers & Default Accounts' => 'Laufende Zähler und Standardkonten',
- 'Liability' => 'Passiva/Mittelherkunft',
- 'Link' => 'Verknüpfungen',
- 'Menu Width' => 'Menübreite',
- 'Method' => 'Methode',
- 'Name' => 'Name',
- 'No' => 'Nein',
- 'No email address for' => 'Keine eMailadresse für',
- 'Number' => 'Nummer',
- 'Number Format' => 'Zahlenformat',
- 'Parts Inventory' => 'Warenliste',
- 'Password' => 'Passwort',
- 'Payables' => 'Verbindlichkeiten',
- 'Payment' => 'Belastung',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Einstellungen gespeichert!',
- 'Printer' => 'Drucker',
- 'Profit Center' => 'Gewinnverwaltung',
- 'Rate' => 'Prozentsatz',
- 'Receivables' => 'Forderungen',
- 'Reference' => 'Referenz',
- 'Remove Audit trails up to' => 'Revisionsnachfolge löschen bis zu',
- 'Retained Earnings' => 'Verbliebenes Einkommen',
- 'SIC deleted!' => 'SIC gelöscht!',
- 'SIC saved!' => 'SIC gespeichert!',
- 'Save' => 'Speichern',
- 'Service Items' => 'Dienstleistungen',
- 'Signature' => 'Unterschrift',
- 'Standard Industrial Codes' => 'Standard Industrie Norm',
- 'Stylesheet' => 'Stilvorlage',
- 'System Defaults' => 'Systemeinstellungen',
- 'Tax' => 'Steuer',
- 'Tax Accounts' => 'Steuerkonto',
- 'Template saved!' => 'Schablone gespeichert!',
- 'Transaction reversal enforced for all dates' => 'Fehleintragungen müssen für jeden Zeitraum mit einer Kontraeintragung ausgebessert werden',
- 'Transaction reversal enforced up to' => 'Fehleintragungen können bis zu dem angenebenen Zeitraum nur mit einer Kontraeintragung ausgebessert werden',
- 'Type of Business' => 'Gewerbe',
- 'Warehouse deleted!' => 'Warenlager gelöscht!',
- 'Warehouse saved!' => 'Warenlager gespeichert!',
- 'Warehouses' => 'Warenlager',
- 'Weight Unit' => 'Gewichtseinh.',
- 'Yearend' => 'Jahresabschluss',
- 'Yearend date missing!' => 'Datum für Jahresabschluss fehlt!',
- 'Yearend posted!' => 'Jahresabschluss gespeichert!',
- 'Yearend posting failed!' => 'Buchung Jahresabschluss missglückt!',
- 'Yes' => 'Ja',
- 'account cannot be set to any other type of account' => 'Dieses Konto kann nicht auf andere Typen eingestellt werden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'konto_anlegen' => 'add_account',
- 'gewerbe_anlegen' => 'add_business',
- 'abteilung_anlegen' => 'add_department',
- 'sprache_anlegen' => 'add_language',
- 'sic_anlegen' => 'add_sic',
- 'warenlager_anlegen' => 'add_warehouse',
- 'weiter' => 'continue',
- 'auf_coa_kopieren' => 'copy_to_coa',
- 'löschen' => 'delete',
- 'bearbeiten' => 'edit',
- 'kontodaten_bearbeiten' => 'edit_account',
- 'speichern' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ap b/sql-ledger/locale/de/ap
deleted file mode 100644
index c837500..0000000
--- a/sql-ledger/locale/de/ap
+++ /dev/null
@@ -1,157 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Offene Verbindlichkeiten',
- 'AP Transaction' => 'Eingangsbuchung',
- 'AP Transactions' => 'Eingangsbuchungen',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Amount Due' => 'Betrag fällig',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Buchung wirklich löschen?',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Cannot delete transaction!' => 'Buchung kann nicht gelöscht werden!',
- 'Cannot post payment for a closed period!' => 'Es können keine Zahlungen für abgeschlossene Bücher gebucht werden!',
- 'Cannot post transaction for a closed period!' => 'Für einen bereits abgeschlossenen Zeitraum kann keine Buchung angelegt werden!',
- 'Cannot post transaction!' => 'Rechnung kann nicht gebucht werden!',
- 'Closed' => 'Geschlossen',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Continue' => 'Weiter',
- 'Credit Limit' => 'Kreditlimit',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Current' => 'Aktuell',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zahlungsdatum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Due Date' => 'Fälligkeitsdatum',
- 'Due Date missing!' => 'Fälligkeitsdatum fehlt!',
- 'Employee' => 'Arbeitnehmer',
- 'Exch' => 'Wkurs.',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate for payment missing!' => 'Wechselkurs für Bezahlung fehlt!',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'ID' => 'Nr.',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date' => 'Rechnungsdatum',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Geschäftsführer',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Month' => 'Monat',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Offen',
- 'Order' => 'Bestellung',
- 'Order Number' => 'Bestellnummer',
- 'Paid' => 'Bezahlt',
- 'Payment date missing!' => 'Tag der Zahlung fehlt!',
- 'Payments' => 'Zahlungen',
- 'Period' => 'Zeitraum',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Quarter' => 'Quartal',
- 'Remaining' => 'Rest',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Beleg',
- 'Subtotal' => 'Zwischensumme',
- 'Tax' => 'Steuer',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Transaction deleted!' => 'Buchung gelöscht!',
- 'Transaction posted!' => 'Buchung getätigt!',
- 'Update' => 'Erneuern',
- 'Vendor' => 'Lieferant',
- 'Vendor missing!' => 'Lieferant fehlt!',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'eingangsbuchung' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'erneuern' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ar b/sql-ledger/locale/de/ar
deleted file mode 100644
index c8f0129..0000000
--- a/sql-ledger/locale/de/ar
+++ /dev/null
@@ -1,158 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Offene Forderungen.',
- 'AR Transaction' => 'Ausgangsrechnung',
- 'AR Transactions' => 'Ausgangsrechnungen',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Amount Due' => 'Betrag fällig',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Buchung wirklich löschen?',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Cannot delete transaction!' => 'Buchung kann nicht gelöscht werden!',
- 'Cannot post payment for a closed period!' => 'Es können keine Zahlungen für abgeschlossene Bücher gebucht werden!',
- 'Cannot post transaction for a closed period!' => 'Für einen bereits abgeschlossenen Zeitraum kann keine Buchung angelegt werden!',
- 'Cannot post transaction!' => 'Rechnung kann nicht gebucht werden!',
- 'Closed' => 'Geschlossen',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Continue' => 'Weiter',
- 'Credit Limit' => 'Kreditlimit',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Current' => 'Aktuell',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kundenname fehlt!',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zahlungsdatum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Due Date' => 'Zahlungsziel',
- 'Due Date missing!' => 'Zahlungsziel fehlt!',
- 'Exch' => 'Wkurs.',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate for payment missing!' => 'Wechselkurs für Bezahlung fehlt!',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'ID' => 'Nr.',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date' => 'Rechnungsdatum',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Geschäftsführer',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Month' => 'Monat',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Offen',
- 'Order' => 'Bestellung',
- 'Order Number' => 'Bestellnummer',
- 'Paid' => 'Bezahlt',
- 'Payment date missing!' => 'Tag der Zahlung fehlt!',
- 'Payments' => 'Zahlungen',
- 'Period' => 'Zeitraum',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Quarter' => 'Quartal',
- 'Remaining' => 'Restbetrag',
- 'Salesperson' => 'Verkäufer',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Ship via' => 'Versandweg',
- 'Shipping Point' => 'Zielort',
- 'Source' => 'Beleg',
- 'Subtotal' => 'Zwischensumme',
- 'Tax' => 'Steuer',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'Till' => 'Kassa',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Transaction deleted!' => 'Buchung gelöscht!',
- 'Transaction posted!' => 'Buchung getätigt!',
- 'Update' => 'Erneuern',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ausgangsrechnung' => 'ar_transaction',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'erneuern' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/arap b/sql-ledger/locale/de/arap
deleted file mode 100644
index 9d72c24..0000000
--- a/sql-ledger/locale/de/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresse',
- 'Continue' => 'Weiter',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Description' => 'Beschreibung',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'weiter' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/de/arapprn b/sql-ledger/locale/de/arapprn
deleted file mode 100644
index bf1c749..0000000
--- a/sql-ledger/locale/de/arapprn
+++ /dev/null
@@ -1,20 +0,0 @@
-$self{texts} = {
- 'Amount' => 'Betrag',
- 'Continue' => 'Weiter',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'weiter' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/de/bp b/sql-ledger/locale/de/bp
deleted file mode 100644
index 78d4233..0000000
--- a/sql-ledger/locale/de/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Bitte bestätigen Sie ob Sie die markierten Eintragungen löschen wollen',
- 'Bin Lists' => 'Lagerlisten',
- 'Cannot remove files!' => 'Löschen der Dateien hat fehlgeschlagen!',
- 'Checks' => 'Schecks',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Continue' => 'Weiter',
- 'Current' => 'Aktuell',
- 'Customer' => 'Kunde',
- 'Date' => 'Datum',
- 'From' => 'Von',
- 'Invoice' => 'Rechnung',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Marked entries printed!' => 'Markierte Einträge gedruckt! ',
- 'Month' => 'Monat',
- 'Order' => 'Bestellung',
- 'Order Number' => 'Bestellnummer',
- 'Packing Lists' => 'Verpackungslisten',
- 'Period' => 'Zeitraum',
- 'Pick Lists' => 'Lagerlisten',
- 'Print' => 'Drucken',
- 'Printing ... ' => 'Druckt ... ',
- 'Purchase Orders' => 'Einkaufsbestellungen',
- 'Quarter' => 'Quartal',
- 'Quotation' => 'Angebot',
- 'Quotation Number' => 'Angebotsnummer',
- 'Quotations' => 'Angebote',
- 'RFQs' => 'Anfragen',
- 'Receipts' => 'Quittungen',
- 'Reference' => 'Referenz',
- 'Remove' => 'Entfernen',
- 'Removed spoolfiles!' => 'Spoolfiles gelöscht!',
- 'Removing marked entries from queue ...' => 'Markierte Einträge entfernt ...',
- 'Sales Invoices' => 'Ausgangsrechnungen',
- 'Sales Orders' => 'Verkaufsbelege',
- 'Select all' => 'Alle auswählen',
- 'Spoolfile' => 'Spoolfile',
- 'To' => 'An',
- 'Vendor' => 'Lieferant',
- 'Work Orders' => 'Arbeitsblätter',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
- 'done' => 'fertig',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'weiter' => 'continue',
- 'drucken' => 'print',
- 'entfernen' => 'remove',
- 'alle_auswählen' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ca b/sql-ledger/locale/de/ca
deleted file mode 100644
index 1f2014e..0000000
--- a/sql-ledger/locale/de/ca
+++ /dev/null
@@ -1,57 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanz',
- 'Chart of Accounts' => 'Kontenübersicht',
- 'Credit' => 'Haben',
- 'Date' => 'Datum',
- 'Debit' => 'Soll',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'List Transactions' => 'Buchungsliste',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Month' => 'Monat',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Period' => 'Zeitraum',
- 'Project Number' => 'Projektnummer',
- 'Quarter' => 'Quartal',
- 'R' => 'R',
- 'Reference' => 'Referenz',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Subtotal' => 'Zwischensumme',
- 'To' => 'An',
- 'Year' => 'Jahr',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'buchungsliste' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/de/cp b/sql-ledger/locale/de/cp
deleted file mode 100644
index 2881481..0000000
--- a/sql-ledger/locale/de/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Verbindlichkeiten',
- 'AR' => 'Forderungen',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Betrag',
- 'Amount Due' => 'Betrag fällig',
- 'Cannot post Payment!' => 'Bezahlung kann nicht verbucht werden!',
- 'Cannot post Receipt!' => 'Einnahme kann nicht verbucht werden!',
- 'Cannot process payment for a closed period!' => 'Es kann keine Zahlung in einem abgeschlossenen Zeitraum verbucht werden!',
- 'Continue' => 'Weiter',
- 'Currency' => 'Währung',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Date missing!' => 'Datum fehlt!',
- 'Department' => 'Abteilung',
- 'Deposit' => 'Gutschrift',
- 'Description' => 'Beschreibung',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Invoice' => 'Rechnung',
- 'Invoices' => 'Rechnungen',
- 'Memo' => 'Vermerk',
- 'Nothing outstanding for ' => 'Es gibt keine offenen Rechnungsposten für ',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Belastung',
- 'Payment posted!' => 'Zahlung gebucht!',
- 'Post' => 'Buchen',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Anzahlung',
- 'Print' => 'Drucken',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Queue' => 'Netzwerkdrucker',
- 'Receipt' => 'Quittung',
- 'Receipt posted!' => 'Einnahme verbucht!',
- 'Screen' => 'Bildschirm',
- 'Select' => 'Auswählen',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Source' => 'Beleg',
- 'Update' => 'Erneuern',
- 'Vendor' => 'Lieferant',
- 'Vendor not on file!' => 'Lieferant nicht gelistet!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'weiter' => 'continue',
- 'buchen' => 'post',
- 'drucken' => 'print',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ct b/sql-ledger/locale/de/ct
deleted file mode 100644
index cb21f1c..0000000
--- a/sql-ledger/locale/de/ct
+++ /dev/null
@@ -1,160 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Eingangsbuchung',
- 'AP Transactions' => 'Eingangsbuchungen',
- 'AR Transaction' => 'Ausgangsrechnung',
- 'AR Transactions' => 'Ausgangsrechnungen',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Customer' => 'Kunde anlegen',
- 'Add Vendor' => 'Lieferant anlegen',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Betrag',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Cannot delete customer!' => 'Kunde kann nicht gelöscht werden!',
- 'Cannot delete vendor!' => 'Lieferant kann nicht gelöscht werden!',
- 'Cc' => 'Cc',
- 'City' => 'Stadt',
- 'Closed' => 'Geschlossen',
- 'Company Name' => 'Firmenname',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditlimit',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Customer History' => 'Alle Belege für Kunde',
- 'Customer Number' => 'Kundennummer',
- 'Customer deleted!' => 'Kunde gelöscht!',
- 'Customer saved!' => 'Kunde gespeichert!',
- 'Customers' => 'Kunden',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Description' => 'Beschreibung',
- 'Detail' => 'Einzelheiten',
- 'Discount' => 'Rabatt',
- 'E-mail' => 'eMail',
- 'Edit Customer' => 'Kundendaten bearbeiten',
- 'Edit Vendor' => 'Lieferantendaten bearbeiten',
- 'Employee' => 'Arbeitnehmer',
- 'Fax' => 'Fax',
- 'From' => 'Von',
- 'GIFI' => 'GIFI',
- 'IBAN' => 'IBAN',
- 'ID' => 'Nr.',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Invoice' => 'Rechnung',
- 'Language' => 'Sprache',
- 'Manager' => 'Geschäftsführer',
- 'Name' => 'Name',
- 'Name missing!' => 'Name fehlt!',
- 'Notes' => 'Bemerkungen',
- 'Number' => 'Nummer',
- 'Open' => 'Offen',
- 'Order' => 'Bestellung',
- 'Orphaned' => 'nie benutzt',
- 'Part Number' => 'Warennummer',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Preisgruppe',
- 'Project Number' => 'Projektnummer',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Purchase Orders' => 'Einkaufsbestellungen',
- 'Qty' => 'Menge',
- 'Quotation' => 'Angebot',
- 'Quotations' => 'Angebote',
- 'RFQ' => 'Anfrage',
- 'Request for Quotations' => 'Anfragen',
- 'SIC' => 'SIC',
- 'Sales Invoice' => 'Ausgangsrechnung',
- 'Sales Invoices' => 'Ausgangsrechnungen',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Sales Orders' => 'Verkaufsbelege',
- 'Salesperson' => 'Verkäufer',
- 'Save' => 'Speichern',
- 'Search' => 'Suchen',
- 'Serial Number' => 'Seriennummer',
- 'Shipping Address' => 'Lieferanschrift',
- 'State/Province' => 'Bundesland',
- 'Sub-contract GIFI' => 'Unterlieferant GIFI',
- 'Subtotal' => 'Zwischensumme',
- 'Summary' => 'Zusammenfassung',
- 'Tax' => 'Steuer',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'Tax Number' => 'Steuernummer',
- 'Tax Number / SSN' => 'Steuernummer / SSN',
- 'Taxable' => 'Steuerpflichtig',
- 'Terms' => 'Zahlungsbedingungen',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Type of Business' => 'Gewerbe',
- 'Unit' => 'Einh',
- 'Vendor History' => 'Alle Belege für Lieferant',
- 'Vendor Invoice' => 'Einkaufsrechnung',
- 'Vendor Invoices' => 'Einkaufsrechnungen',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor deleted!' => 'Lieferant gelöscht!',
- 'Vendor saved!' => 'Lieferant gespeichert!',
- 'Vendors' => 'Lieferanten',
- 'days' => 'Tage',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'eingangsbuchung' => 'ap_transaction',
- 'ausgangsrechnung' => 'ar_transaction',
- 'kunde_anlegen' => 'add_customer',
- 'lieferant_anlegen' => 'add_vendor',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'pricelist' => 'pricelist',
- 'einkaufsbestellung' => 'purchase_order',
- 'angebot' => 'quotation',
- 'anfrage' => 'rfq',
- 'ausgangsrechnung' => 'sales_invoice',
- 'verkaufsbeleg' => 'sales_order',
- 'speichern' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'einkaufsrechnung' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/de/gl b/sql-ledger/locale/de/gl
deleted file mode 100644
index 42dc400..0000000
--- a/sql-ledger/locale/de/gl
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Eingangsbuchung',
- 'AR Transaction' => 'Ausgangsrechnung',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Cash Transfer Transaction' => 'Zahlungseingang vermerken',
- 'Add General Ledger Transaction' => 'Hinzufügen einer Buchung zum Hauptbuch',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Betrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Buchung wirklich löschen?',
- 'Asset' => 'Aktiva/Mittelverwendung',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanz',
- 'Cannot delete transaction!' => 'Buchung kann nicht gelöscht werden!',
- 'Cannot post transaction for a closed period!' => 'Für einen bereits abgeschlossenen Zeitraum kann keine Buchung angelegt werden!',
- 'Cannot post transaction!' => 'Rechnung kann nicht gebucht werden!',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Continue' => 'Weiter',
- 'Contra' => 'Gegenkonto',
- 'Credit' => 'Haben',
- 'Current' => 'Aktuell',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Debit' => 'Soll',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Edit Cash Transfer Transaction' => 'Überweisung bearbeiten',
- 'Edit General Ledger Transaction' => 'Buchung im Hauptbuch bearbeiten',
- 'Equity' => 'Passiva/Eigenkapital',
- 'Expense' => 'Aufwand',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Hauptbucheintragung',
- 'General Ledger' => 'Hauptbuch',
- 'ID' => 'Nr.',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Income' => 'Einnahmen',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Liability' => 'Passiva/Mittelherkunft',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Month' => 'Monat',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance transaction!' => 'Soll und Haben sind nicht gleich!',
- 'Period' => 'Zeitraum',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Quarter' => 'Quartal',
- 'R' => 'R',
- 'Reference' => 'Referenz',
- 'Reference missing!' => 'Referenz fehlt!',
- 'Reports' => 'Berichte',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Beleg',
- 'Subtotal' => 'Zwischensumme',
- 'To' => 'An',
- 'Transaction Date missing!' => 'Buchungsdatum fehlt!',
- 'Transaction deleted!' => 'Buchung gelöscht!',
- 'Transaction posted!' => 'Buchung getätigt!',
- 'Update' => 'Erneuern',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Warning!' => 'Warnung!',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'eingangsbuchung' => 'ap_transaction',
- 'ausgangsrechnung' => 'ar_transaction',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'hauptbucheintragung' => 'gl_transaction',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'erneuern' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/hr b/sql-ledger/locale/de/hr
deleted file mode 100644
index 8d72599..0000000
--- a/sql-ledger/locale/de/hr
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP' => 'Verbindlichkeiten',
- 'Above' => 'Über',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Deduction' => 'Abzug festlegen',
- 'Add Employee' => 'Arbeitnehmer anlegen',
- 'Address' => 'Adresse',
- 'Administrator' => 'Verwalter',
- 'After Deduction' => 'Nach Abzug',
- 'All' => 'Alle',
- 'Allowances' => 'Freibeträge',
- 'Amount' => 'Betrag',
- 'Amount missing!' => 'Betrag fehlt!',
- 'BIC' => 'BIC',
- 'Based on' => 'Begründung',
- 'Before Deduction' => 'Vor Abzug',
- 'Below' => 'Unter',
- 'City' => 'Stadt',
- 'Continue' => 'Weiter',
- 'Country' => 'Land',
- 'Deduct after' => 'Abzug nach',
- 'Deduction deleted!' => 'Abzug gelöscht!',
- 'Deduction saved!' => 'Abzug gespeichert!',
- 'Deductions' => 'Abzüge',
- 'Delete' => 'Löschen',
- 'Description' => 'Beschreibung',
- 'Description missing!' => 'Beschreibung fehlt!',
- 'E-mail' => 'eMail',
- 'Edit Deduction' => 'Abzug bearbeiten',
- 'Edit Employee' => 'Arbeitnehmer bearbeiten',
- 'Employee' => 'Arbeitnehmer',
- 'Employee Name' => 'Name',
- 'Employee deleted!' => 'Arbeitnehmer gelöscht!',
- 'Employee pays' => 'Arbeitnehmer bezahlt',
- 'Employee saved!' => 'Arbeitnehmer gespeichert!',
- 'Employees' => 'Arbeitnehmer',
- 'Employer' => 'Arbeitgeber',
- 'Employer pays' => 'Arbeitgeber bezahlt',
- 'Enddate' => 'Ausgeschieden am',
- 'Expense' => 'Aufwand',
- 'Home Phone' => 'Tel. privat',
- 'IBAN' => 'IBAN',
- 'ID' => 'Nr.',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Login' => 'Benutzername',
- 'Manager' => 'Geschäftsführer',
- 'Maximum' => 'Höchstens',
- 'Name' => 'Name',
- 'Name missing!' => 'Name fehlt!',
- 'Notes' => 'Bemerkungen',
- 'Orphaned' => 'nie benutzt',
- 'Payroll Deduction' => 'Lohnabzug',
- 'Rate' => 'Prozentsatz',
- 'Rate missing!' => 'Prozentsatz fehlt!',
- 'Role' => 'Stellung',
- 'S' => 'A',
- 'SSN' => 'Steuernummer',
- 'Sales' => 'Warenverkauf',
- 'Save' => 'Speichern',
- 'Save as new' => 'als neu speichern',
- 'Startdate' => 'Beschäftigt seit',
- 'State/Province' => 'Bundesland',
- 'Update' => 'Erneuern',
- 'User' => 'Benutzer',
- 'Work Phone' => 'Tel. Arbeit',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'abzug_festlegen' => 'add_deduction',
- 'arbeitnehmer_anlegen' => 'add_employee',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'speichern' => 'save',
- 'als_neu_speichern' => 'save_as_new',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ic b/sql-ledger/locale/de/ic
deleted file mode 100644
index d8f57cf..0000000
--- a/sql-ledger/locale/de/ic
+++ /dev/null
@@ -1,270 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Accrual' => 'Anfallende Zinsen',
- 'Active' => 'Aktiv',
- 'Add' => 'Hinzufügen',
- 'Add Assembly' => 'Erzeugnis anlegen',
- 'Add Labor/Overhead' => 'Gestehungskosten',
- 'Add Part' => 'Ware anlegen',
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Add Service' => 'Dienstleistung anlegen',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Assemblies' => 'Erzeugnisse',
- 'Assemblies restocked!' => 'Erzeugnisse eingelagert!',
- 'Assembly' => 'Erzeugnis',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'BOM' => 'Stückliste',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Break' => 'Übergang',
- 'COGS' => 'Umsatzkosten',
- 'Cannot delete item!' => 'Artikel kann nicht gelöscht werden!',
- 'Cannot stock assemblies!' => 'Erzeugnisse können nicht ins Lager!',
- 'Cash' => 'Kasse',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Inventar prüfen',
- 'City' => 'Stadt',
- 'Closed' => 'Geschlossen',
- 'Company Name' => 'Firmenname',
- 'Components' => 'Einzelteile',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Cost' => 'Kosten',
- 'Country' => 'Land',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundennummer',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Description' => 'Beschreibung',
- 'Drawing' => 'Zeichnung',
- 'E-mail' => 'eMail',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Edit Assembly' => 'Erzeugnis bearbeiten',
- 'Edit Labor/Overhead' => 'Gestehungskostenkosten bearbeiten',
- 'Edit Part' => 'Ware bearbeiten',
- 'Edit Service' => 'Dienstleistung bearbeiten',
- 'Employee' => 'Arbeitnehmer',
- 'Expense' => 'Aufwand',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'Image' => 'Bild',
- 'In-line' => 'im Textkörper (Inline)',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Income' => 'Einnahmen',
- 'Individual Items' => 'Einzelteile',
- 'Inventory' => 'Inventar',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Bevor dieses Erzeugnis als ungültig markiert werden kann muß das Inventar auf Null sein!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Bevor diese Ware als ungültig markiert werden kann muß das Inventar Null sein!',
- 'Invoice' => 'Rechnung',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Item deleted!' => 'Artikel gelöscht!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Items' => 'Artikel',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Labor/Overhead' => 'Gestehungskosten',
- 'Leadtime' => 'Anlaufzeit',
- 'Line Total' => 'Zeilensumme',
- 'Link Accounts' => 'Konten verknüpfen',
- 'List Price' => 'Listenpreis',
- 'Make' => 'Hersteller',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'Markup' => 'Aufschlag',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Message' => 'Nachricht',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Modell',
- 'Name' => 'Name',
- 'No.' => 'Nr.',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'Obsolete' => 'Ungültig',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'am Lager',
- 'Open' => 'Offen',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number' => 'Bestellnummer',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'Orphaned' => 'nie benutzt',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Part' => 'Ware',
- 'Parts' => 'Waren',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Pricegroup' => 'Preisgruppe',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Purchase Orders' => 'Einkaufsbestellungen',
- 'Qty' => 'Anz',
- 'Quantity exceeds available units to stock!' => 'Anzahl ist mehr als vorhanden!',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Quotations' => 'Angebote',
- 'RFQ' => 'Anfrage',
- 'ROP' => 'UAB',
- 'Recd' => 'Erh',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Ausgangsrechnung',
- 'Sales Invoices' => 'Ausgangsrechnungen',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Sales Orders' => 'Verkaufsbelege',
- 'Save' => 'Speichern',
- 'Save as new' => 'als neu speichern',
- 'Screen' => 'Bildschirm',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Sell Price' => 'Verkaufspreis',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Serial Number' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Services' => 'Leistungen',
- 'Ship' => 'Versenden',
- 'Ship to' => 'Lieferung an',
- 'Shipping Address' => 'Lieferanschrift',
- 'Short' => 'Kurz',
- 'State/Province' => 'Bundesland',
- 'Stock' => 'Einlagern',
- 'Stock Assembly' => 'Erzeugnis einlagern',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Tax' => 'Steuer',
- 'To' => 'An',
- 'Top Level' => 'Hauptbeschreibung',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Unit' => 'Einh',
- 'Unit of measure' => 'Maßeinheit',
- 'Update' => 'Erneuern',
- 'Updated' => 'Erneuert am',
- 'Vendor' => 'Lieferant',
- 'Vendor Invoice' => 'Einkaufsrechnung',
- 'Vendor Invoices' => 'Einkaufsrechnungen',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Warehouse' => 'Warenlager',
- 'Weight' => 'Gewicht',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'days' => 'Tage',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'erzeugnis_anlegen' => 'add_assembly',
- 'gestehungskosten' => 'add_labor/overhead',
- 'ware_anlegen' => 'add_part',
- 'dienstleistung_anlegen' => 'add_service',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'erzeugnis_bearbeiten' => 'edit_assembly',
- 'ware_bearbeiten' => 'edit_part',
- 'dienstleistung_bearbeiten' => 'edit_service',
- 'speichern' => 'save',
- 'als_neu_speichern' => 'save_as_new',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/io b/sql-ledger/locale/de/io
deleted file mode 100644
index 846b2f9..0000000
--- a/sql-ledger/locale/de/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Address' => 'Adresse',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Cc' => 'Cc',
- 'City' => 'Stadt',
- 'Company Name' => 'Firmenname',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Country' => 'Land',
- 'Customer Number' => 'Kundennummer',
- 'Date' => 'Datum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delivery Date' => 'Lieferung',
- 'Description' => 'Beschreibung',
- 'E-mail' => 'eMail',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'In-line' => 'im Textkörper (Inline)',
- 'Invoice' => 'Rechnung',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Message' => 'Nachricht',
- 'No.' => 'Nr.',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Part' => 'Ware',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Qty' => 'Anz',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Recd' => 'Erh',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Screen' => 'Bildschirm',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Ship' => 'Versenden',
- 'Ship to' => 'Lieferung an',
- 'Shipping Address' => 'Lieferanschrift',
- 'State/Province' => 'Bundesland',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'To' => 'An',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Unit' => 'Einh',
- 'Vendor Number' => 'Lieferantennummer',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'weiter' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ir b/sql-ledger/locale/de/ir
deleted file mode 100644
index 48db082..0000000
--- a/sql-ledger/locale/de/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Add Vendor Invoice' => 'Eingangsrechnung anlegen',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Soll die Rechnung mit folgender Nummer wirklich gelöscht werden:',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Cannot delete invoice!' => 'Rechnung kann nicht gelöscht werden!',
- 'Cannot post invoice for a closed period!' => 'Das Rechnungsdatum fällt in einen abgeschlossen Zeitraum!',
- 'Cannot post invoice!' => 'Rechnung kann nicht gebucht werden!',
- 'Cannot post payment for a closed period!' => 'Es können keine Zahlungen für abgeschlossene Bücher gebucht werden!',
- 'Cc' => 'Cc',
- 'City' => 'Stadt',
- 'Company Name' => 'Firmenname',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditlimit',
- 'Currency' => 'Währung',
- 'Customer Number' => 'Kundennummer',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Due Date' => 'Fälligkeitsdatum',
- 'E-mail' => 'eMail',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Edit Vendor Invoice' => 'Einkaufsrechnung bearbeiten',
- 'Exch' => 'Wkurs.',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate for payment missing!' => 'Wechselkurs für Bezahlung fehlt!',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'In-line' => 'im Textkörper (Inline)',
- 'Internal Notes' => 'Interne Notizen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date' => 'Rechnungsdatum',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Invoice deleted!' => 'Rechung gelöscht!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Sprache',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Message' => 'Nachricht',
- 'No.' => 'Nr.',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number' => 'Bestellnummer',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Part' => 'Ware',
- 'Payment date missing!' => 'Tag der Zahlung fehlt!',
- 'Payments' => 'Zahlungen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Qty' => 'Anz',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Recd' => 'Erh',
- 'Record in' => 'Buchen auf',
- 'Remaining' => 'Rest',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Screen' => 'Bildschirm',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Ship' => 'Versenden',
- 'Ship to' => 'Lieferung an',
- 'Shipping Address' => 'Lieferanschrift',
- 'Source' => 'Beleg',
- 'State/Province' => 'Bundesland',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Unit' => 'Einh',
- 'Update' => 'Erneuern',
- 'Vendor' => 'Lieferant',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor missing!' => 'Lieferant fehlt!',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'Yes' => 'Ja',
- 'ea' => 'pro',
- 'posted!' => 'gebucht!',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'einkaufsbestellung' => 'purchase_order',
- 'erneuern' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/is b/sql-ledger/locale/de/is
deleted file mode 100644
index 5605a7b..0000000
--- a/sql-ledger/locale/de/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Invoice' => 'Ausgangsrechnung anlegen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Soll die Rechnung mit folgender Nummer wirklich gelöscht werden:',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Business' => 'Gewerbe',
- 'Cannot delete invoice!' => 'Rechnung kann nicht gelöscht werden!',
- 'Cannot post invoice for a closed period!' => 'Das Rechnungsdatum fällt in einen abgeschlossen Zeitraum!',
- 'Cannot post invoice!' => 'Rechnung kann nicht gebucht werden!',
- 'Cannot post payment for a closed period!' => 'Es können keine Zahlungen für abgeschlossene Bücher gebucht werden!',
- 'Cc' => 'Cc',
- 'City' => 'Stadt',
- 'Company Name' => 'Firmenname',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditlimit',
- 'Currency' => 'Währung',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundennummer',
- 'Customer missing!' => 'Kundenname fehlt!',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Due Date' => 'Zahlungsziel',
- 'E-mail' => 'eMail',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Edit Sales Invoice' => 'Ausgangsrechnung bearbeiten',
- 'Exch' => 'Wkurs.',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate for payment missing!' => 'Wechselkurs für Bezahlung fehlt!',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'In-line' => 'im Textkörper (Inline)',
- 'Internal Notes' => 'Interne Notizen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date' => 'Rechnungsdatum',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Invoice deleted!' => 'Rechung gelöscht!',
- 'Invoice posted!' => 'Rechunung verbucht!',
- 'Invoice processed!' => 'Rechnung bearbeitet!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Message' => 'Nachricht',
- 'No.' => 'Nr.',
- 'Notes' => 'Bemerkungen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number' => 'Bestellnummer',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Part' => 'Ware',
- 'Payment date missing!' => 'Tag der Zahlung fehlt!',
- 'Payments' => 'Zahlungen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Print' => 'Drucken',
- 'Print and Post' => 'Drucken und buchen',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Qty' => 'Anz',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Recd' => 'Erh',
- 'Record in' => 'Buchen auf',
- 'Remaining' => 'Rest',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Salesperson' => 'Verkäufer',
- 'Screen' => 'Bildschirm',
- 'Select Printer or Queue!' => 'Drucker oder Druckschleife auswählen',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Select postscript or PDF!' => 'Postscript oder PDF auswählen!',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Ship' => 'Versenden',
- 'Ship to' => 'Lieferung an',
- 'Ship via' => 'Versandweg',
- 'Shipping Address' => 'Lieferanschrift',
- 'Shipping Point' => 'Versandort',
- 'Source' => 'Beleg',
- 'State/Province' => 'Bundesland',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Trade Discount' => 'Handelsrabatt',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Unit' => 'Einh',
- 'Update' => 'Erneuern',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'Yes' => 'Ja',
- 'ea' => 'pro',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'email' => 'e_mail',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'drucken' => 'print',
- 'drucken_und_buchen' => 'print_and_post',
- 'verkaufsbeleg' => 'sales_order',
- 'lieferung_an' => 'ship_to',
- 'erneuern' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/locales.pl b/sql-ledger/locale/de/locales.pl
deleted file mode 100755
index 5b6e79f..0000000
--- a/sql-ledger/locale/de/locales.pl
+++ /dev/null
@@ -1,299 +0,0 @@
-#!/usr/bin/perl
-
-# -n do not include custom_ scripts
-# -a build all file
-
-use FileHandle;
-
-
-$basedir = "../..";
-$bindir = "$basedir/bin/mozilla";
-$menufile = "menu.ini";
-
-foreach $item (@ARGV) {
- $item =~ s/-//g;
- $arg{$item} = 1;
-}
-
-opendir DIR, "$bindir" or die "$!";
-@progfiles = grep { /\.pl/; !/(_|^\.)/ } readdir DIR;
-seekdir DIR, 0;
-@customfiles = grep /_/, readdir DIR;
-closedir DIR;
-
-# put customized files into @customfiles
-@customfiles = () if ($arg{n});
-
-if ($arg{n}) {
- @menufiles = ($menufile);
-} else {
- opendir DIR, "$basedir" or die "$!";
- @menufiles = grep { /.*?_$menufile$/ } readdir DIR;
- closedir DIR;
- unshift @menufiles, $menufile;
-}
-
-
-if (-f 'all') { # use the old all file
- require "all";
- %oldall = %{ $self{texts} };
-}
-
-# remove the old missing file
-if (-f 'missing') {
- unlink "missing";
-}
-
-foreach $file (@progfiles) {
-
- %locale = ();
- %submit = ();
- %subrt = ();
- @missing = ();
- %missing = ();
-
- $file =~ s/\.pl//;
-
- # read $file if it exists
- eval { require "$file"; };
-
- &scanfile("$bindir/${file}.pl");
-
- # scan custom_{module}.pl or {login}_{module}.pl files
- foreach $customfile (@customfiles) {
- if ($customfile =~ /_${file}\.pl/) {
- if (-f "$bindir/$customfile") {
- &scanfile("$bindir/$customfile");
- }
- }
- }
-
- # if this is the menu.pl file
- if ($file eq 'menu') {
- foreach $item (@menufiles) {
- &scanmenu("$basedir/$item");
- }
- }
-
- eval { require "$file.missing"; };
- unlink "$file.missing";
-
- if (%oldall) { # use the old all file
- %{ $self{texts} } = %oldall;
- }
-
- map { $self{texts}{$_} = $missing->{$_} if $missing->{$_} } keys %$missing;
-
- open FH, ">$file" or die "$! : $file";
-
- print FH q|$self{texts} = {
-|;
-
- foreach $key (sort keys %locale) {
- $text = $self{texts}{$key};
- $count++;
-
- $text =~ s/'/\\'/g;
- $text =~ s/\\$/\\\\/;
-
- $keytext = $key;
- $keytext =~ s/'/\\'/g;
- $keytext =~ s/\\$/\\\\/;
-
- $all{$keytext} = $text;
-
- if (!$text) {
- $notext++;
- push @missing, $keytext;
- next;
- }
-
- print FH qq| '$keytext'|.(' ' x (27-length($keytext))).qq| => '$text',\n|;
- }
-
- print FH q|};
-
-$self{subs} = {
-|;
-
- foreach $key (sort keys %subrt) {
- $text = $key;
- $text =~ s/'/\\'/g;
- $text =~ s/\\$/\\\\/;
- print FH qq| '$text'|.(' ' x (27-length($text))).qq| => '$text',\n|;
- }
-
- foreach $key (sort keys %submit) {
- $text = ($self{texts}{$key}) ? $self{texts}{$key} : $key;
- $text =~ s/'/\\'/g;
- $text =~ s/\\$/\\\\/;
-
- $english_sub = $key;
- $english_sub =~ s/'/\\'/g;
- $english_sub =~ s/\\$/\\\\/;
- $english_sub = lc $key;
-
- $translated_sub = lc $text;
- $english_sub =~ s/( |-|,)/_/g;
- $translated_sub =~ s/( |-|,)/_/g;
- print FH qq| '$translated_sub'|.(' ' x (27-length($translated_sub))).qq| => '$english_sub',\n|;
- }
-
- print FH q|};
-
-1;
-|;
-
- close FH;
-
-
- if (@missing) {
- open FH, ">$file.missing" or die "$! : missing";
-
- print FH qq|# module $file
-# add the missing texts and run locales.pl to rebuild
-
-\$missing = {
-|;
-
- foreach $text (@missing) {
- print FH qq| '$text'|.(' ' x (27-length($text))).qq| => '',\n|;
- }
-
- print FH q|};
-
-1;
-|;
-
- close FH;
-
- }
-
-
- # redo the old all file
- if ($arg{a}) {
- open FH, ">all" or die "$! : all";
-
- print FH qq|# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-\$self{texts} = {
-|;
-
- foreach $text (sort keys %all) {
- print FH qq| '$text'|.(' ' x (27-length($text))).qq| => '$all{$text}',\n|;
- }
-
- print FH q|};
-
-1;
-|;
-
- close FH;
-
- }
-
-}
-
-open(FH, "LANGUAGE");
-@language = <FH>;
-close(FH);
-$trlanguage = $language[0];
-chomp $trlanguage;
-
-$per = sprintf("%.1f", ($count - $notext) / $count * 100);
-print "\n$trlanguage - ${per}%\n";
-
-exit;
-# eom
-
-
-sub scanfile {
- my $file = shift;
-
- return unless (-f "$file");
-
- my $fh = new FileHandle;
- open $fh, "$file" or die "$! : $file";
-
- while (<$fh>) {
- # is this another file
- if (/require\s+\W.*\.pl/) {
- my $newfile = $&;
- $newfile =~ s/require\s+\W//;
- $newfile =~ s/\$form->{path}\///;
- &scanfile("$bindir/$newfile");
- }
-
- # is this a sub ?
- if (/^sub /) {
- ($null, $subrt) = split / +/;
- $subrt{$subrt} = 1;
- next;
- }
-
- my $rc = 1;
-
- while ($rc) {
- if (/Locale/) {
- if (!/^use /) {
- my ($null, $country) = split /,/;
- $country =~ s/^ +["']//;
- $country =~ s/["'].*//;
- }
- }
-
- if (/\$locale->text.*?\W\)/) {
- my $string = $&;
- $string =~ s/\$locale->text\(\s*['"(q|qq)]['\/\\\|~]*//;
- $string =~ s/\W\)+.*$//;
-
- # if there is no $ in the string record it
- unless ($string =~ /\$\D.*/) {
- # this guarantees one instance of string
- $locale{$string} = 1;
-
- # is it a submit button before $locale->
- if (/type=submit/i) {
- $submit{$string} = 1;
- }
- }
- }
-
- # exit loop if there are no more locales on this line
- ($rc) = ($' =~ /\$locale->text/);
- # strip text
- s/^.*?\$locale->text.*?\)//;
- }
- }
-
- close($fh);
-
-}
-
-
-sub scanmenu {
- my $file = shift;
-
- my $fh = new FileHandle;
- open $fh, "$file" or die "$! : $file";
-
- my @a = grep /^\[/, <$fh>;
- close($fh);
-
- # strip []
- grep { s/(\[|\])//g } @a;
-
- foreach my $item (@a) {
- $item =~ s/ *$//;
- @b = split /--/, $item;
- foreach $string (@b) {
- chomp $string;
- $locale{$string} = 1 if $string !~ /^\s*$/;
- }
- }
-
-}
-
-
diff --git a/sql-ledger/locale/de/login b/sql-ledger/locale/de/login
deleted file mode 100644
index 023d6f2..0000000
--- a/sql-ledger/locale/de/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Weiter',
- 'Dataset is newer than version!' => 'Datensatz ist jünger als installierte Version',
- 'Incorrect Dataset version!' => 'Ungültigige Datensatzversion',
- 'Incorrect Password!' => 'Ungültiges Passwort!',
- 'Login' => 'Anmelden',
- 'Name' => 'Name',
- 'Password' => 'Passwort',
- 'Upgrading to Version' => 'Datensatz wird erneuert auf Version',
- 'Version' => 'Version',
- 'You did not enter a name!' => 'Sie haben keinen Namen eingegeben!',
- 'done' => 'fertig',
- 'is not a member!' => 'ist kein Mitglied!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'anmelden' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/de/menu b/sql-ledger/locale/de/menu
deleted file mode 100644
index 54d4688..0000000
--- a/sql-ledger/locale/de/menu
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'AP' => 'Verbindlichkeiten',
- 'AP Aging' => 'Offene Verbindl.',
- 'AR' => 'Forderungen',
- 'AR Aging' => 'Offene Forderungen',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Account' => 'Konto anlegen',
- 'Add Assembly' => 'Erzeugnis anlegen',
- 'Add Business' => 'Gewerbe anlegen',
- 'Add Customer' => 'Kunde anlegen',
- 'Add Department' => 'Abteilung anlegen',
- 'Add Employee' => 'Arbeitnehmer anlegen',
- 'Add GIFI' => 'GIFI anlegen',
- 'Add Group' => 'Gruppe anlegen',
- 'Add Labor/Overhead' => 'Gestehungskosten',
- 'Add Language' => 'Sprache anlegen',
- 'Add Part' => 'Ware anlegen',
- 'Add Pricegroup' => 'Preisgruppe anlegen',
- 'Add Project' => 'Projekt anlegen',
- 'Add SIC' => 'SIC anlegen',
- 'Add Service' => 'Dienstleistung anlegen',
- 'Add Transaction' => 'Buchung anlegen',
- 'Add Vendor' => 'Lieferant anlegen',
- 'Add Warehouse' => 'Warenlager anlegen',
- 'All Items' => 'Alle Artikeln',
- 'Assemblies' => 'Erzeugnisse',
- 'Audit Control' => 'Bücherkontrolle',
- 'Backup' => 'Datensicherung',
- 'Balance Sheet' => 'Bilanz',
- 'Batch Printing' => 'Stapeldruck',
- 'Bin List' => 'Lagerliste',
- 'Bin Lists' => 'Lagerlisten',
- 'Cash' => 'Kasse',
- 'Chart of Accounts' => 'Kontenübersicht',
- 'Check' => 'Scheck',
- 'Checks' => 'Schecks',
- 'Components' => 'Einzelteile',
- 'Customers' => 'Kunden',
- 'Defaults' => 'Einstellungen',
- 'Departments' => 'Abteilungen',
- 'Description' => 'Beschreibung',
- 'Employees' => 'Arbeitnehmer',
- 'General Ledger' => 'Hauptbuch',
- 'Goods & Services' => 'Waren & Dienstleistungen',
- 'Groups' => 'Gruppen',
- 'HR' => 'Personal',
- 'HTML Templates' => 'HTML Vorlagen',
- 'History' => 'Statistik',
- 'Income Statement' => 'G & V',
- 'Invoice' => 'Rechnung',
- 'LaTeX Templates' => 'LaTeX Vorlagen',
- 'Labor/Overhead' => 'Gestehungskosten',
- 'Language' => 'Sprache',
- 'List Accounts' => 'Kontenliste',
- 'List Businesses' => 'Gewerbe aufzeigen',
- 'List Departments' => 'Abteilungen aufzeigen',
- 'List GIFI' => 'GIFI aufzeigen',
- 'List Languages' => 'Sprachen aufzeigen',
- 'List Projects' => 'Projekte aufzeigen',
- 'List SIC' => 'SIC aufzeigen',
- 'List Warehouses' => 'Lagerorte aufzeigen',
- 'Logout' => 'Abmelden',
- 'Non-taxable' => 'Steuerfrei',
- 'Open' => 'Offen',
- 'Order Entry' => 'Bestellungen',
- 'Outstanding' => 'Offen',
- 'POS' => 'Kassa',
- 'POS Invoice' => 'Kassarechnung',
- 'Packing List' => 'Packliste',
- 'Packing Lists' => 'Packlisten',
- 'Parts' => 'Waren',
- 'Payment' => 'Belastung',
- 'Payments' => 'Zahlungen',
- 'Pick List' => 'Lagerliste',
- 'Pick Lists' => 'Lagerlisten',
- 'Preferences' => 'Benutzereinstellungen',
- 'Pricegroups' => 'Preisgruppen',
- 'Print' => 'Drucken',
- 'Projects' => 'Projekte',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Purchase Orders' => 'Einkaufsbestellungen',
- 'Quotation' => 'Angebot',
- 'Quotations' => 'Angebote',
- 'RFQ' => 'Anfrage',
- 'RFQs' => 'Anfragen',
- 'Receipt' => 'Quittung',
- 'Receipts' => 'Quittungen',
- 'Receive' => 'Einlagern',
- 'Reconciliation' => 'Kontenabgleich',
- 'Reports' => 'Berichte',
- 'SIC' => 'SIC',
- 'Sale' => 'Verkauf',
- 'Sales Invoice' => 'Ausgangsrechnung',
- 'Sales Invoices' => 'Ausgangsrechnungen',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Sales Orders' => 'Verkaufsbelege',
- 'Save to File' => 'Auf Festplatte speichern',
- 'Search' => 'Suchen',
- 'Send by E-Mail' => 'Per eMail schicken',
- 'Services' => 'Leistungen',
- 'Ship' => 'Versenden',
- 'Shipping' => 'Versand',
- 'Statement' => 'Zahlungserinnerung',
- 'Stock Assembly' => 'Erzeugnis einlagern',
- 'Stylesheet' => 'Stilvorlage',
- 'System' => 'System',
- 'Tax collected' => 'vereinnahmte Steuer',
- 'Tax paid' => 'Vorsteuer',
- 'Text Templates' => 'Text Schablonen',
- 'Transactions' => 'Buchungen',
- 'Transfer' => 'Übertrag',
- 'Translations' => 'Übersetzungen',
- 'Trial Balance' => 'Vergleichsbilanz',
- 'Type of Business' => 'Gewerbe',
- 'Vendor Invoice' => 'Einkaufsrechnung',
- 'Vendors' => 'Lieferanten',
- 'Version' => 'Version',
- 'Warehouses' => 'Warenlager',
- 'Work Order' => 'Arbeitsblatt',
- 'Work Orders' => 'Arbeitsblätter',
- 'Yearend' => 'Jahresabschluss',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/de/oe b/sql-ledger/locale/de/oe
deleted file mode 100644
index c0c7cca..0000000
--- a/sql-ledger/locale/de/oe
+++ /dev/null
@@ -1,304 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Exchange Rate' => 'Wechselkurs anlegen',
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Invoice' => 'Ausgangsrechnung anlegen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Add Vendor Invoice' => 'Eingangsrechnung anlegen',
- 'Address' => 'Adresse',
- 'Amount' => 'Betrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Order Number' => 'Soll die Bestellung mit folgender Nummer wirklich gelöscht werden:',
- 'Are you sure you want to delete Quotation Number' => 'Soll das Angebot mit folgender Nummer wirklich gelöscht werden:',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Business' => 'Gewerbe',
- 'C' => 'G',
- 'Cannot delete order!' => 'Bestellung kann nicht gelöscht werden!',
- 'Cannot delete quotation!' => 'Anfrage kann nicht gelöscht werden!',
- 'Cannot save order!' => 'Bestellung kann nicht gespeichert werden!',
- 'Cannot save quotation!' => 'Angebot kann nicht gespeichert werden!',
- 'Cc' => 'Cc',
- 'City' => 'Stadt',
- 'Closed' => 'Geschlossen',
- 'Company Name' => 'Firmenname',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Could not save!' => 'Kann nicht gespeichert werden!',
- 'Could not transfer Inventory!' => 'Inventar wurde nicht übertragen!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditlimit',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Current' => 'Aktuell',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundennummer',
- 'Customer missing!' => 'Kundenname fehlt!',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Date Received' => 'Erhalten',
- 'Date received missing!' => 'Datum wenn erhalten fehlt!',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Done' => 'Fertig',
- 'E-mail' => 'eMail',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Edit Purchase Order' => 'Einkaufsbeleg bearbeiten',
- 'Edit Quotation' => 'Angebot bearbeiten',
- 'Edit Request for Quotation' => 'Anfrage bearbeiten',
- 'Edit Sales Order' => 'Verkaufsbeleg bearbeiten',
- 'Employee' => 'Arbeitnehmer',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'ID' => 'Nr.',
- 'In-line' => 'im Textkörper (Inline)',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Internal Notes' => 'Interne Notizen',
- 'Inventory saved!' => 'Inventar gespeichert!',
- 'Inventory transferred!' => 'Inventar übertragen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Geschäftsführer',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Message' => 'Nachricht',
- 'Month' => 'Monat',
- 'No.' => 'Nr.',
- 'Notes' => 'Bemerkungen',
- 'Nothing entered!' => 'Es wurde nichts eingetragen!',
- 'Nothing to transfer!' => 'Es gibt nichts zum Übergeben!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'O' => 'O',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Offen',
- 'Order' => 'Bestellung',
- 'Order Date' => 'Bestelldatum',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number' => 'Bestellnummer',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'Order deleted!' => 'Bestellung gelöscht!',
- 'Order processed!' => 'Bestellung bearbeitet!',
- 'Order saved!' => 'Bestellung gespeichert!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Part' => 'Ware',
- 'Part Number' => 'Warennummer',
- 'Period' => 'Zeitraum',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Print' => 'Drucken',
- 'Print and Save' => 'Drucken und speichern',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Purchase Orders' => 'Einkaufsbestellungen',
- 'Qty' => 'Anz',
- 'Quarter' => 'Quartal',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date' => 'Angebotsdatum',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number' => 'Angebotsnummer',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Quotation deleted!' => 'Angebot gelöscht!',
- 'Quotations' => 'Angebote',
- 'RFQ' => 'Anfrage',
- 'RFQ Number' => 'Anfragenummer',
- 'Recd' => 'Erh',
- 'Receive Merchandise' => 'Artikeln einlagern',
- 'Remaining' => 'Rest',
- 'Request for Quotation' => 'Anfrage',
- 'Request for Quotations' => 'Anfragen',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Ausgangsrechnung',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Sales Orders' => 'Verkaufsbelege',
- 'Salesperson' => 'Verkäufer',
- 'Save' => 'Speichern',
- 'Save as new' => 'als neu speichern',
- 'Screen' => 'Bildschirm',
- 'Select Printer or Queue!' => 'Drucker oder Druckerschleife auswählen',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Select postscript or PDF!' => 'Postscript oder PDF auswählen!',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Ship' => 'Versenden',
- 'Ship Merchandise' => 'Waren verschicken',
- 'Ship to' => 'Lieferung an',
- 'Ship via' => 'Versandweg',
- 'Shipping Address' => 'Lieferanschrift',
- 'Shipping Date' => 'Versandsdatum',
- 'Shipping Date missing!' => 'Versandsdatum fehlt!',
- 'Shipping Point' => 'Versandort',
- 'State/Province' => 'Bundesland',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Tax' => 'Steuer',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'Terms' => 'Zahlungsziel',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Trade Discount' => 'Handelsrabatt',
- 'Transfer' => 'Übertrag',
- 'Transfer Inventory' => 'Inventarübertrag',
- 'Transfer to' => 'Übergabe an',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Unit' => 'Einh',
- 'Update' => 'Erneuern',
- 'Valid until' => 'Gültig bis',
- 'Vendor' => 'Lieferant',
- 'Vendor Invoice' => 'Einkaufsrechnung',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor missing!' => 'Lieferant fehlt!',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Warehouse' => 'Warenlager',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
- 'days' => 'Tage',
- 'ea' => 'pro',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'fertig' => 'done',
- 'email' => 'e_mail',
- 'drucken' => 'print',
- 'drucken_und_speichern' => 'print_and_save',
- 'einkaufsbestellung' => 'purchase_order',
- 'angebot' => 'quotation',
- 'quotation_' => 'quotation_',
- 'anfrage' => 'rfq',
- 'rfq_' => 'rfq_',
- 'ausgangsrechnung' => 'sales_invoice',
- 'verkaufsbeleg' => 'sales_order',
- 'speichern' => 'save',
- 'als_neu_speichern' => 'save_as_new',
- 'lieferung_an' => 'ship_to',
- 'Übertrag' => 'transfer',
- 'erneuern' => 'update',
- 'einkaufsrechnung' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/pe b/sql-ledger/locale/de/pe
deleted file mode 100644
index 238765a..0000000
--- a/sql-ledger/locale/de/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Add Group' => 'Gruppe anlegen',
- 'Add Pricegroup' => 'Preisgruppe anlegen',
- 'Add Project' => 'Projekt anlegen',
- 'All' => 'Alle',
- 'Continue' => 'Weiter',
- 'Delete' => 'Löschen',
- 'Description' => 'Beschreibung',
- 'Description Translations' => 'Bescreibungsübersetzungen',
- 'Edit Description Translations' => 'Beschreibungsübersetzungen bearbeiten',
- 'Edit Group' => 'Gruppe bearbeiten',
- 'Edit Pricegroup' => 'Preisgruppe bearbeiten',
- 'Edit Project' => 'Projekt bearbeiten',
- 'Group' => 'Gruppe',
- 'Group Translations' => 'Gruppenübersetzung',
- 'Group deleted!' => 'Gruppe gelöscht!',
- 'Group missing!' => 'Gruppe fehlt!',
- 'Group saved!' => 'Gruppe gespeichert!',
- 'Groups' => 'Gruppen',
- 'Language' => 'Sprache',
- 'Languages not defined!' => 'Keine Sprachen definiert!',
- 'Number' => 'Nummer',
- 'Orphaned' => 'nie benutzt',
- 'Pricegroup' => 'Preisgruppe',
- 'Pricegroup deleted!' => 'Preisgruppe gelöscht!',
- 'Pricegroup missing!' => 'Preisgruppe fehlt!',
- 'Pricegroup saved!' => 'Preisgruppe gespeichert!',
- 'Pricegroups' => 'Preisgruppen',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'Übersetzung für Projektbeschreibungen',
- 'Project Number' => 'Projektnummer',
- 'Project Number missing!' => 'Projektnummer fehlt!',
- 'Project deleted!' => 'Projekt gelöscht!',
- 'Project saved!' => 'Projekt gespeichert!',
- 'Projects' => 'Projekte',
- 'Save' => 'Speichern',
- 'Translation' => 'Übersetzung',
- 'Translation deleted!' => 'Übersetzung gelöscht!',
- 'Translations saved!' => 'Übersetzung gespeichert!',
- 'Update' => 'Erneuern',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'gruppe_anlegen' => 'add_group',
- 'preisgruppe_anlegen' => 'add_pricegroup',
- 'projekt_anlegen' => 'add_project',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'speichern' => 'save',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/pos b/sql-ledger/locale/de/pos
deleted file mode 100644
index e914c42..0000000
--- a/sql-ledger/locale/de/pos
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Add POS Invoice' => 'Kassarechnung anlegen',
- 'Cannot post transaction!' => 'Rechnung kann nicht gebucht werden!',
- 'Change' => 'Wechselgeld',
- 'Continue' => 'Weiter',
- 'Credit Limit' => 'Kreditlimit',
- 'Currency' => 'Währung',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kundenname fehlt!',
- 'Delete' => 'Löschen',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Edit POS Invoice' => 'Kassarechnung bearbeiten',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Extended' => 'Summe',
- 'From' => 'Von',
- 'Language' => 'Sprache',
- 'Memo' => 'Vermerk',
- 'Month' => 'Monat',
- 'Number' => 'Nummer',
- 'Open' => 'Offen',
- 'Paid' => 'Bezahlt',
- 'Period' => 'Zeitraum',
- 'Post' => 'Buchen',
- 'Posted!' => 'Verbucht!',
- 'Price' => 'Preis',
- 'Print' => 'Drucken',
- 'Printed' => 'Gedruckt',
- 'Qty' => 'Anz',
- 'Quarter' => 'Quartal',
- 'Receipts' => 'Quittungen',
- 'Record in' => 'Buchen auf',
- 'Remaining' => 'Rest',
- 'Salesperson' => 'Verkäufer',
- 'Screen' => 'Bildschirm',
- 'Source' => 'Beleg',
- 'Subtotal' => 'Zwischensumme',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Unit' => 'Einh',
- 'Update' => 'Erneuern',
- 'Year' => 'Jahr',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'buchen' => 'post',
- 'drucken' => 'print',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/ps b/sql-ledger/locale/de/ps
deleted file mode 100644
index 93aacc4..0000000
--- a/sql-ledger/locale/de/ps
+++ /dev/null
@@ -1,333 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Offene Verbindl.',
- 'AR Aging' => 'Offene Forderungen',
- 'AR Outstanding' => 'Offene Forderungen.',
- 'AR Transaction' => 'Ausgangsrechnung',
- 'AR Transactions' => 'Ausgangsrechnungen',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Accounts' => 'Konten',
- 'Accrual' => 'Laufend',
- 'Add POS Invoice' => 'Kassarechnung anlegen',
- 'Add Purchase Order' => 'Einkaufsbeleg anlegen',
- 'Add Quotation' => 'Angebot erstellen',
- 'Add Request for Quotation' => 'Anfrage erstellen',
- 'Add Sales Invoice' => 'Ausgangsrechnung anlegen',
- 'Add Sales Order' => 'Verkaufsbeleg anlegen',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle Konten',
- 'Amount' => 'Betrag',
- 'Amount Due' => 'Betrag fällig',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Soll die Rechnung mit folgender Nummer wirklich gelöscht werden:',
- 'Are you sure you want to delete Transaction' => 'Buchung wirklich löschen?',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanz',
- 'Balance Sheet' => 'Bilanz',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rechnungsanschrift',
- 'Bin' => 'Stellage',
- 'Bin List' => 'Lagerliste',
- 'Business' => 'Gewerbe',
- 'Cannot delete invoice!' => 'Rechnung kann nicht gelöscht werden!',
- 'Cannot delete transaction!' => 'Buchung kann nicht gelöscht werden!',
- 'Cannot post invoice for a closed period!' => 'Das Rechnungsdatum fällt in einen abgeschlossen Zeitraum!',
- 'Cannot post invoice!' => 'Rechnung kann nicht gebucht werden!',
- 'Cannot post payment for a closed period!' => 'Es können keine Zahlungen für abgeschlossene Bücher gebucht werden!',
- 'Cannot post transaction for a closed period!' => 'Für einen bereits abgeschlossenen Zeitraum kann keine Buchung angelegt werden!',
- 'Cannot post transaction!' => 'Rechnung kann nicht gebucht werden!',
- 'Cash' => 'Kasse',
- 'Cc' => 'Cc',
- 'Change' => 'Wechselgeld',
- 'City' => 'Stadt',
- 'Closed' => 'Geschlossen',
- 'Company Name' => 'Firmenname',
- 'Compare to' => 'Gegenüberstellen zu',
- 'Confirm!' => 'Bestätigen Sie!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Country' => 'Land',
- 'Credit' => 'Haben',
- 'Credit Limit' => 'Kreditlimit',
- 'Curr' => 'Währung',
- 'Currency' => 'Währung',
- 'Current' => 'Aktuell',
- 'Current Earnings' => 'Aktuelles Einkommen',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundennummer',
- 'Customer missing!' => 'Kundenname fehlt!',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Zahlungsdatum',
- 'Debit' => 'Soll',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Decimalplaces' => 'Dezimalstellen',
- 'Delete' => 'Löschen',
- 'Delivery Date' => 'Lieferung',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Detail' => 'Einzelheiten',
- 'Due Date' => 'Fälligkeitsdatum',
- 'Due Date missing!' => 'Fälligkeitsdatum fehlt!',
- 'E-mail' => 'eMail',
- 'E-mail Statement to' => 'Kontoauszug per eMail an',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'E-mailed' => 'eMail gesendet',
- 'Edit POS Invoice' => 'Kassarechnung bearbeiten',
- 'Edit Sales Invoice' => 'Ausgangsrechnung bearbeiten',
- 'Exch' => 'Wkurs.',
- 'Exchange Rate' => 'Wechselkurs',
- 'Exchange rate for payment missing!' => 'Wechselkurs für Bezahlung fehlt!',
- 'Exchange rate missing!' => 'Wechselkurs fehlt!',
- 'Extended' => 'Summe',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'GIFI' => 'GIFI',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Artikel sortieren',
- 'Heading' => 'Überschrift',
- 'ID' => 'Nr.',
- 'In-line' => 'im Textkörper (Inline)',
- 'Include Exchange Rate Difference' => 'Wechselkursunterschied aufnehmen',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Income Statement' => 'G & V',
- 'Internal Notes' => 'Interne Notizen',
- 'Invoice' => 'Rechnung',
- 'Invoice Date' => 'Rechnungsdatum',
- 'Invoice Date missing!' => 'Rechnungsdatum fehlt!',
- 'Invoice Number' => 'Rechnungsnummer',
- 'Invoice Number missing!' => 'Rechnungsnummer fehlt!',
- 'Invoice deleted!' => 'Rechung gelöscht!',
- 'Invoice posted!' => 'Rechunung verbucht!',
- 'Invoice processed!' => 'Rechnung bearbeitet!',
- 'Item not on file!' => 'Dieser Artikel ist nicht in der Datenbank!',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Sprache',
- 'Manager' => 'Geschäftsführer',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Message' => 'Nachricht',
- 'Method' => 'Methode',
- 'Month' => 'Monat',
- 'N/A' => 'N.Z.',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Steuerfreie Einkäufe',
- 'Non-taxable Sales' => 'Steuerfreie Verkäufe',
- 'Notes' => 'Bemerkungen',
- 'Nothing selected!' => 'Es wurde nichts ausgewählt!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer fehlt in Zeile',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Offen',
- 'Order' => 'Bestellung',
- 'Order Date missing!' => 'Bestelldatum fehlt!',
- 'Order Number' => 'Bestellnummer',
- 'Order Number missing!' => 'Bestellnummer fehlt!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Verpackungsliste',
- 'Packing List Date missing!' => 'Datum für Verpackungsliste fehlt!',
- 'Packing List Number missing!' => 'Verpackungslistennummer fehlt!',
- 'Paid' => 'Bezahlt',
- 'Part' => 'Ware',
- 'Payment date missing!' => 'Tag der Zahlung fehlt!',
- 'Payments' => 'Zahlungen',
- 'Period' => 'Zeitraum',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lagerliste',
- 'Post' => 'Buchen',
- 'Post as new' => 'Neu buchen',
- 'Posted!' => 'Verbucht!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Preis',
- 'Print' => 'Drucken',
- 'Print and Post' => 'Drucken und buchen',
- 'Printed' => 'Gedruckt',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projektnummer',
- 'Project Transactions' => 'Projektbuchungen',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Purchase Order' => 'Einkaufsbestellung',
- 'Qty' => 'Anz',
- 'Quarter' => 'Quartal',
- 'Queue' => 'Netzwerkdrucker',
- 'Queued' => 'An Netzwerkdrucker gesendet',
- 'Quotation' => 'Angebot',
- 'Quotation Date missing!' => 'Angebotsdatum fehlt!',
- 'Quotation Number missing!' => 'Angebotsnummer fehlt!',
- 'Recd' => 'Erh',
- 'Receipts' => 'Quittungen',
- 'Record in' => 'Buchen auf',
- 'Remaining' => 'Rest',
- 'Report for' => 'Bericht für',
- 'Required by' => 'Erforderlich am',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkaufsbeleg',
- 'Salesperson' => 'Verkäufer',
- 'Screen' => 'Bildschirm',
- 'Select Printer or Queue!' => 'Drucker oder Druckerschleife auswählen',
- 'Select all' => 'Alle auswählen',
- 'Select from one of the items below' => 'Wählen Sie einen der untenstehenden Einträge',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Select postscript or PDF!' => 'Postscript oder PDF auswählen!',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Seriennummer',
- 'Service' => 'Dienstleistung',
- 'Ship' => 'Versenden',
- 'Ship to' => 'Lieferung an',
- 'Ship via' => 'Transportmittel',
- 'Shipping Address' => 'Lieferanschrift',
- 'Shipping Point' => 'Versandort',
- 'Source' => 'Beleg',
- 'Standard' => 'Standard',
- 'State/Province' => 'Bundesland',
- 'Statement' => 'Zahlungserinnerung',
- 'Statement sent to' => 'Zahlungserinnerung verschickt an',
- 'Statements sent to printer!' => 'Zahlungsserinnerungen gedruckt!',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Summary' => 'Zusammenfassung',
- 'Tax' => 'Steuer',
- 'Tax Included' => 'Steuer im Preis enthalten',
- 'Tax collected' => 'vereinnahmte Steuer',
- 'Tax paid' => 'Vorsteuer',
- 'Till' => 'Kassa',
- 'To' => 'An',
- 'Total' => 'Betrag',
- 'Trade Discount' => 'Handelsrabatt',
- 'Transaction deleted!' => 'Buchung gelöscht!',
- 'Transaction posted!' => 'Buchung verbucht!',
- 'Translation not on file!' => 'Übersetzung nicht verfügbar',
- 'Trial Balance' => 'Vergleichsbilanz',
- 'Unit' => 'Einh',
- 'Update' => 'Erneuern',
- 'Vendor' => 'Lieferant',
- 'Vendor Number' => 'Lieferantennummer',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'What type of item is this?' => 'Welche Artikelart ist das?',
- 'Work Order' => 'Arbeitsblatt',
- 'Year' => 'Jahr',
- 'Yes' => 'Ja',
- 'as at' => 'zum Stand',
- 'ea' => 'pro',
- 'for Period' => 'für den Zeitraum',
- 'sent' => 'verschickt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ausgangsrechnung' => 'ar_transaction',
- 'weiter' => 'continue',
- 'löschen' => 'delete',
- 'email' => 'e_mail',
- 'buchen' => 'post',
- 'neu_buchen' => 'post_as_new',
- 'drucken' => 'print',
- 'drucken_und_buchen' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'verkaufsbeleg' => 'sales_order',
- 'alle_auswählen' => 'select_all',
- 'lieferung_an' => 'ship_to',
- 'erneuern' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/de/pw b/sql-ledger/locale/de/pw
deleted file mode 100644
index db6c087..0000000
--- a/sql-ledger/locale/de/pw
+++ /dev/null
@@ -1,10 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Weiter',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'weiter' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/de/rc b/sql-ledger/locale/de/rc
deleted file mode 100644
index 4d217ba..0000000
--- a/sql-ledger/locale/de/rc
+++ /dev/null
@@ -1,76 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanz',
- 'Beginning Balance' => 'Anfangsbilanz',
- 'Cleared' => 'Entlastet',
- 'Continue' => 'Weiter',
- 'Date' => 'Datum',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Decrease' => 'Verminderung',
- 'Deposit' => 'Gutschrift',
- 'Description' => 'Beschreibung',
- 'Difference' => 'Differenz',
- 'Done' => 'Fertig',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'Include Exchange Rate Difference' => 'Wechselkursunterschied aufnehmen',
- 'Increase' => 'Erhöhen',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Month' => 'Monat',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance!' => 'Summen stimmen nicht überein!',
- 'Outstanding' => 'Offen',
- 'Payment' => 'Belastung',
- 'Period' => 'Zeitraum',
- 'Quarter' => 'Quartal',
- 'R' => 'R',
- 'Reconciliation' => 'Kontenabgleich',
- 'Reconciliation Report' => 'Kontenabgleichungsreport',
- 'Select all' => 'Alle auswählen',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Beleg',
- 'Statement Balance' => 'Auszugsbilanz',
- 'To' => 'An',
- 'Update' => 'Erneuern',
- 'Year' => 'Jahr',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'weiter' => 'continue',
- 'fertig' => 'done',
- 'alle_auswählen' => 'select_all',
- 'erneuern' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/de/rp b/sql-ledger/locale/de/rp
deleted file mode 100644
index 8de92cf..0000000
--- a/sql-ledger/locale/de/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Offene Verbindl.',
- 'AR Aging' => 'Offene Forderungen',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Kontoverwaltung',
- 'Accounts' => 'Konten',
- 'Accrual' => 'Laufend',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle Konten',
- 'Amount' => 'Netto',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'als Anhang',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanz',
- 'Balance Sheet' => 'Bilanz',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Kasse',
- 'Cc' => 'Cc',
- 'Compare to' => 'Gegenüberstellen zu',
- 'Continue' => 'Weiter',
- 'Copies' => 'Kopien',
- 'Credit' => 'Haben',
- 'Curr' => 'Währung',
- 'Current' => 'Aktuell',
- 'Current Earnings' => 'Aktuelles Einkommen',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde ist nicht in der Datenbank!',
- 'Date' => 'Datum',
- 'Debit' => 'Soll',
- 'Dec' => 'Dez',
- 'December' => 'Dezember',
- 'Decimalplaces' => 'Dezimalstellen',
- 'Department' => 'Abteilung',
- 'Description' => 'Beschreibung',
- 'Detail' => 'Einzelheiten',
- 'Due Date' => 'Zahlungsziel',
- 'E-mail' => 'eMail',
- 'E-mail Statement to' => 'Zahlungserinnerung per eMail an',
- 'E-mail address missing!' => 'eMailadresse fehlt!',
- 'Feb' => 'Feb',
- 'February' => 'Februar',
- 'From' => 'Von',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Überschrift',
- 'ID' => 'Nr.',
- 'In-line' => 'im Textkörper (Inline)',
- 'Include Exchange Rate Difference' => 'Wechselkursunterschied aufnehmen',
- 'Include in Report' => 'In Bericht aufnehmen',
- 'Income Statement' => 'G & V',
- 'Invoice' => 'Rechnung',
- 'Jan' => 'Jan',
- 'January' => 'Januar',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Sprache',
- 'Mar' => 'Mär',
- 'March' => 'März',
- 'May' => 'Mai',
- 'May ' => 'Mai',
- 'Memo' => 'Vermerk',
- 'Message' => 'Nachricht',
- 'Method' => 'Methode',
- 'Month' => 'Monat',
- 'N/A' => 'N.Z.',
- 'Non-taxable Purchases' => 'Steuerfreie Einkäufe',
- 'Non-taxable Sales' => 'Steuerfreie Verkäufe',
- 'Nothing selected!' => 'Es wurde nichts ausgewählt!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order' => 'Auftrag',
- 'PDF' => 'PDF',
- 'Payments' => 'Zahlungen',
- 'Period' => 'Zeitraum',
- 'Postscript' => 'Postscript',
- 'Print' => 'Drucken',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projektnummer',
- 'Project Transactions' => 'Projektbuchungen',
- 'Project not on file!' => 'Dieses Projekt ist nicht in der Datenbank!',
- 'Quarter' => 'Quartal',
- 'Receipts' => 'Quittungen',
- 'Report for' => 'Bericht für',
- 'Salesperson' => 'Verkäufer',
- 'Screen' => 'Bildschirm',
- 'Select all' => 'Alle auswählen',
- 'Select from one of the names below' => 'Wählen Sie einen der untenstehenden Namen',
- 'Select from one of the projects below' => 'Wählen Sie eines der untenstehenden Projekte',
- 'Select postscript or PDF!' => 'Postscript oder PDF auswählen!',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Beleg',
- 'Standard' => 'Standard',
- 'Statement' => 'Zahlungserinnerung',
- 'Statement sent to' => 'Zahlungserinnerung verschickt an',
- 'Statements sent to printer!' => 'Zahlungserinnerungen gedruckt!',
- 'Subject' => 'Betreff',
- 'Subtotal' => 'Zwischensumme',
- 'Summary' => 'Zusammenfassung',
- 'Tax' => 'Steuer',
- 'Tax collected' => 'vereinnahmte Steuer',
- 'Tax paid' => 'Vorsteuer',
- 'Till' => 'Kassa',
- 'To' => 'An',
- 'Total' => 'Brutto',
- 'Trial Balance' => 'Vergleichsbilanz',
- 'Vendor' => 'Lieferant',
- 'Vendor not on file!' => 'Lieferant ist nicht in der Datenbank!',
- 'Year' => 'Jahr',
- 'as at' => 'zum Stand',
- 'for Period' => 'für den Zeitraum',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'weiter' => 'continue',
- 'email' => 'e_mail',
- 'drucken' => 'print',
- 'alle_auswählen' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/COPYING b/sql-ledger/locale/dk/COPYING
deleted file mode 100644
index e010710..0000000
--- a/sql-ledger/locale/dk/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Danish texts:
-#
-# Author: Keld Jørn Simonsen <keld@dkuug.dk>
-# Jonas Smedegaard <jonas@jones.dk>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/dk/LANGUAGE b/sql-ledger/locale/dk/LANGUAGE
deleted file mode 100644
index bd082a2..0000000
--- a/sql-ledger/locale/dk/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Danish
diff --git a/sql-ledger/locale/dk/admin b/sql-ledger/locale/dk/admin
deleted file mode 100644
index 5868ea9..0000000
--- a/sql-ledger/locale/dk/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Adgangskontrol',
- 'Accounting' => 'Bogføring',
- 'Add User' => 'Ny bruger',
- 'Address' => 'Adresse',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'Alle datasæt opdaterede',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Ændr adgangskode for administrator',
- 'Change Password' => 'Ændr adgangskode',
- 'Character Set' => 'Tegnsæt',
- 'Click on login name to edit!' => 'Klik på brugernavn for at redigere',
- 'Company' => 'Firma',
- 'Connect to' => 'Forbind til',
- 'Continue' => 'Fortsæt',
- 'Create Chart of Accounts' => 'Opret kontoplan',
- 'Create Dataset' => 'Opret datasæt',
- 'DBI not installed!' => 'DBI ikke installeret',
- 'Database' => 'Database',
- 'Database Administration' => 'Administration af database',
- 'Database Driver not checked!' => 'Databasedriver ikke kontrolleret',
- 'Database User missing!' => 'Bruger af database mangler!',
- 'Dataset' => 'Datasæt',
- 'Dataset missing!' => 'Datasæt mangler!',
- 'Dataset updated!' => 'Datasæt opdateret!',
- 'Date Format' => 'Datoformat',
- 'Delete' => 'Fjern',
- 'Delete Dataset' => 'Fjern datasæt',
- 'Directory' => 'Katalog',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Grænse for nedtræk',
- 'E-mail' => 'E-post',
- 'Edit User' => 'Redigér bruger',
- 'Existing Datasets' => 'Eksisterende datasæt',
- 'Fax' => 'Fax',
- 'Host' => 'Vært',
- 'Hostname missing!' => 'Værtsnavn mangler',
- 'Language' => 'Sprog',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lad felterne "vært" og "port" være tomme medmindre du vil etablere en ekstern forbindelse.',
- 'Lock System' => 'Lås system',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Log på',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Log af',
- 'Manager' => 'Leder',
- 'Menu Width' => 'Menubredde',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Navn',
- 'New Templates' => 'Nye skabeloner',
- 'No Database Drivers available!' => 'Ingen databasedrivere tilgængelige',
- 'No Dataset selected!' => 'Intet datasæt valgt',
- 'Nothing to delete!' => 'Intet at slette!',
- 'Number Format' => 'Numerisk format',
- 'Oracle Database Administration' => 'Oracle Administration af database',
- 'Password' => 'Adgangskode',
- 'Password changed!' => 'Adgangskode ændret',
- 'Pg Database Administration' => 'Pg Administration af database',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Port mangler',
- 'Printer' => 'Printer',
- 'Save' => 'Gem',
- 'Setup Templates' => 'Skabeloner for opsætning',
- 'Signature' => 'Underskrift',
- 'Stylesheet' => 'Stilark',
- 'Templates' => 'Skabeloner',
- 'The following Datasets are not in use and can be deleted' => 'De følgende datasæt er ikke i brug og kan slettes',
- 'The following Datasets need to be updated' => 'De følgende datasæt skal opdateres',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dette er en indledende kontrol af eksisterende kilder. Ingenting vil blive oprettet eller slettet på dette trin',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Skift brugernavnet for en eksisterende bruger og gem for at tilføje en ny bruger til en gruppe. Den nye bruger vil så bive gemt med de samme indstillinger under det nye brugernavn.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Opdatér datasæt',
- 'Use Templates' => 'Brug skabeloner',
- 'User' => 'Bruger',
- 'User deleted!' => 'Bruger slettet!',
- 'User saved!' => 'Bruger gemt!',
- 'Version' => 'Version',
- 'You must enter a host and port for local and remote connections!' => 'Du skal angive en vært og en port for lokale og eksterne forbindelser!',
- 'does not exist' => 'eksisterer ikke',
- 'is already a member!' => 'er allerede et medlem',
- 'localhost' => 'lokalt',
- 'locked!' => 'låst',
- 'successfully created!' => 'oprettet!',
- 'successfully deleted!' => 'slettet!',
- 'website' => 'på Internet',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'ny_bruger' => 'add_user',
- 'Ændr_adgangskode_for_administrator' => 'change_admin_password',
- 'Ændr_adgangskode' => 'change_password',
- 'fortsæt' => 'continue',
- 'opret_datasæt' => 'create_dataset',
- 'fjern' => 'delete',
- 'fjern_datasæt' => 'delete_dataset',
- 'lås_system' => 'lock_system',
- 'log_på' => 'login',
- 'log_af' => 'logout',
- 'oracle_administration_af_database' => 'oracle_database_administration',
- 'pg_administration_af_database' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'gem' => 'save',
- 'unlock_system' => 'unlock_system',
- 'opdatér_datasæt' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/all b/sql-ledger/locale/dk/all
deleted file mode 100644
index 9ded102..0000000
--- a/sql-ledger/locale/dk/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Kreditorer',
- 'AP Aging' => 'Aldersfordeling',
- 'AP Outstanding' => 'Udestående kreditorer',
- 'AP Transaction' => 'Leverandørfaktura',
- 'AP Transactions' => 'Leverandørfakturaer',
- 'AR' => 'Debitorer',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Outstanding' => 'Udestående debitorer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'About' => 'Om',
- 'Above' => 'Over',
- 'Access Control' => 'Adgangskontrol',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer mangler!',
- 'Account Type' => 'Kontotype',
- 'Account Type missing!' => 'Kontotype mangler!',
- 'Account deleted!' => 'Konto slettet!',
- 'Account does not exist!' => 'Konto eksisterer ikke!',
- 'Account saved!' => 'Konto gemt!',
- 'Accounting' => 'Bogføring',
- 'Accounting Menu' => 'Konto-menu',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Påløbet',
- 'Activate Audit trails' => 'Aktivér revisionssporing',
- 'Active' => 'Aktiv',
- 'Add' => 'Tilføj',
- 'Add AP Transaction' => 'Ny kreditorpostering',
- 'Add AR Transaction' => 'Ny debitorpostering',
- 'Add Account' => 'Ny konto',
- 'Add Assembly' => 'Ny sammensætning',
- 'Add Business' => 'Ny forretning',
- 'Add Cash Transfer Transaction' => 'Ny kontantoverførsel',
- 'Add Customer' => 'Ny kunde',
- 'Add Deduction' => 'Nyt fradrag',
- 'Add Department' => 'Ny afdeling',
- 'Add Employee' => 'Ny medarbejder',
- 'Add Exchange Rate' => 'Ny vekselkurs',
- 'Add GIFI' => 'Ny GIFI',
- 'Add General Ledger Transaction' => 'Ny postering i hovedbog',
- 'Add Group' => 'Ny gruppe',
- 'Add Labor/Overhead' => 'Nyt arbejde/overhead',
- 'Add Language' => 'Nyt sprog',
- 'Add POS Invoice' => 'Ny POS faktura',
- 'Add Part' => 'Ny vare',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nyt projekt',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add SIC' => 'Ny SIC',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Service' => 'Ny tjeneste',
- 'Add Transaction' => 'Ny postering',
- 'Add User' => 'Ny bruger',
- 'Add Vendor' => 'Ny leverandør',
- 'Add Vendor Invoice' => 'Ny indkøbsfaktura',
- 'Add Warehouse' => 'Nyt varehus',
- 'Address' => 'Adresse',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Efter fradrag',
- 'All' => 'Alt',
- 'All Accounts' => 'Alle konti',
- 'All Datasets up to date!' => 'Alle datasæt opdaterede',
- 'All Items' => 'Alle dele',
- 'Allowances' => 'Fradrag',
- 'Amount' => 'Beløb',
- 'Amount Due' => 'Forfaldent',
- 'Amount missing!' => 'Beløb mangler!',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på du vil fjerne fakturanummer',
- 'Are you sure you want to delete Order Number' => 'Er du sikker på at du vil fjerne ordrenummer',
- 'Are you sure you want to delete Quotation Number' => 'Er du sikker på at du vil slette tilbudsnummer',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på du vil fjerne postering',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Er du sikker på at du vil fjerne de markerede poster fra køen?',
- 'Assemblies' => 'Sammensætninger',
- 'Assemblies restocked!' => 'Sammensætninger genlagret',
- 'Assembly' => 'Sammensætning',
- 'Asset' => 'Aktiv',
- 'Attachment' => 'Bilag',
- 'Audit Control' => 'Revisionskontrol',
- 'Audit trail removed up to' => 'Revisionssporing fjernet indtil',
- 'Audit trails disabled' => 'Revisionssporing deaktiveret',
- 'Audit trails enabled' => 'Revisionssporing aktiveret',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'BIC' => 'BIC',
- 'BOM' => 'BOM',
- 'Backup' => 'Sikkerheskopi',
- 'Backup sent to' => 'Sikkerhedskopier sendt til',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Status',
- 'Based on' => 'Baseret på',
- 'Batch Printing' => 'Udskrivning i baggrunden',
- 'Bcc' => 'Blind kopi',
- 'Before Deduction' => 'Før fradrag',
- 'Beginning Balance' => 'Åbningsbalance',
- 'Below' => 'Under',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Bin Lists' => 'Sendings-lister',
- 'Books are open' => 'Bogføringen er åben for rettelser',
- 'Break' => 'Bryd',
- 'Business' => 'Forretning',
- 'Business Number' => 'CVR-nummer',
- 'Business deleted!' => 'Forretning slettet',
- 'Business saved!' => 'Forretning gemt',
- 'C' => 'C',
- 'COGS' => 'Indkøb',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Kan ikke slette konto!',
- 'Cannot delete customer!' => 'Kan ikke slette kunde!',
- 'Cannot delete default account!' => 'Kan ikke slette standardkonto!',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot delete item!' => 'Kan ikke slette enhed!',
- 'Cannot delete order!' => 'Kan ikke slette ordre!',
- 'Cannot delete quotation!' => 'Kan ikke slette tilbud',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot delete vendor!' => 'Kan ikke slette leverandør!',
- 'Cannot post Payment!' => 'Kan ikke postere udbetaling',
- 'Cannot post Receipt!' => 'kan ikke postere indbetaling',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bogføre faktura for en afsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bogføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bogføre postering for en afsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Cannot process payment for a closed period!' => 'Kan ikke behandle betaling for en afsluttet periode!',
- 'Cannot remove files!' => 'Kan ikke fjerne filer!',
- 'Cannot save account!' => 'Kan ikke gemme konto!',
- 'Cannot save defaults!' => 'Kan ikke gemme standardopsætning',
- 'Cannot save order!' => 'Kan ikke gemme ordre!',
- 'Cannot save preferences!' => 'Kan ikke gemme præferencer!',
- 'Cannot save quotation!' => 'Kan ikke gemme tilbud',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan ikke sætte konto for mere end én af AR, AP eller IC',
- 'Cannot set multiple options for' => 'Kan ikke sætte flere muligheder for',
- 'Cannot set multiple options for Parts Inventory' => 'Kan ikke sætte flere muligheder for vareoversigt',
- 'Cannot set multiple options for Service Items' => 'Kan ikke sætte flere muligheder for tjenestedele',
- 'Cannot stock assemblies!' => 'Kan ikke genbesætte sammensætninger',
- 'Cash' => 'Kontanter',
- 'Cc' => 'Kopi',
- 'Change' => 'Ændr',
- 'Change Admin Password' => 'Ændr adgangskode for administrator',
- 'Change Password' => 'Ændr adgangskode',
- 'Character Set' => 'Tegnsæt',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Check',
- 'Check Inventory' => 'Kontrollér lager',
- 'Checks' => 'Kontroller',
- 'City' => 'By',
- 'Cleared' => 'Udlignet',
- 'Click on login name to edit!' => 'Klik på brugernavn for at redigere',
- 'Close Books up to' => 'Afslut bogføring op til',
- 'Closed' => 'Afsluttet',
- 'Code' => 'Kode',
- 'Code missing!' => 'Kode mangler!',
- 'Company' => 'Firma',
- 'Company Name' => 'Firmanavn',
- 'Compare to' => 'Sammenlign med',
- 'Components' => 'Komponenter',
- 'Confirm' => '',
- 'Confirm!' => 'Bekræft!',
- 'Connect to' => 'Forbind til',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Contra' => 'Kontra',
- 'Copies' => 'Kopier',
- 'Copy to COA' => 'Kopiér til COA',
- 'Cost' => 'Udgifter',
- 'Cost Center' => 'Kostcenter',
- 'Could not save pricelist!' => 'Kunne ikke gemme prisliste!',
- 'Could not save!' => 'Kunne ikke gemme!',
- 'Could not transfer Inventory!' => 'Kunne ikke overføre lager!',
- 'Country' => 'Land',
- 'Create Chart of Accounts' => 'Opret kontoplan',
- 'Create Dataset' => 'Opret datasæt',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Current Earnings' => 'Aktuelle indtægter',
- 'Customer' => 'Kunde',
- 'Customer History' => 'Kundehistorik',
- 'Customer Number' => 'Kundenummer',
- 'Customer deleted!' => 'Kunde slettet!',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Customer saved!' => 'Kunde gemt!',
- 'Customers' => 'Kunder',
- 'DBI not installed!' => 'DBI ikke installeret',
- 'DOB' => '',
- 'Database' => 'Database',
- 'Database Administration' => 'Administration af database',
- 'Database Driver not checked!' => 'Databasedriver ikke kontrolleret',
- 'Database Host' => 'Database-vært',
- 'Database User missing!' => 'Bruger af database mangler!',
- 'Dataset' => 'Datasæt',
- 'Dataset is newer than version!' => 'Datasæt er nyere end version!',
- 'Dataset missing!' => 'Datasæt mangler!',
- 'Dataset updated!' => 'Datasæt opdateret!',
- 'Date' => 'Dato',
- 'Date Format' => 'Datoformat',
- 'Date Paid' => 'Betalingsdato',
- 'Date Received' => 'Modtagelsesdato',
- 'Date missing!' => 'Dato mangler!',
- 'Date received missing!' => 'Modtagelsesdato mangler!',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalpladser',
- 'Decrease' => 'Formindsk',
- 'Deduct after' => 'Fratræk efter',
- 'Deduction deleted!' => 'Fradrag slettet!',
- 'Deduction saved!' => 'Fradrag gemt!',
- 'Deductions' => 'Fradrag',
- 'Defaults' => 'Standardopsætning',
- 'Defaults saved!' => 'Standardopsætning gemt!',
- 'Delete' => 'Fjern',
- 'Delete Account' => 'Fjern konto',
- 'Delete Dataset' => 'Fjern datasæt',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Afdeling',
- 'Department deleted!' => 'Afdeling slettet!',
- 'Department saved!' => 'Afdeling gemt!',
- 'Departments' => 'Afdelinger',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Description Translations' => 'Oversættelser af beskrivelse',
- 'Description missing!' => 'Beskrivelse mangler!',
- 'Detail' => 'Detalje',
- 'Difference' => 'Difference',
- 'Directory' => 'Katalog',
- 'Discount' => 'Rabat',
- 'Done' => 'Færdig',
- 'Drawing' => 'Træk',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Grænse for nedtræk',
- 'Due Date' => 'Forfaldsdato',
- 'Due Date missing!' => 'Forfaldsdato mangler!',
- 'E-mail' => 'E-post',
- 'E-mail Statement to' => 'Send opgørelse til',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit' => 'Redigér',
- 'Edit AP Transaction' => 'Redigér kreditorpostering',
- 'Edit AR Transaction' => 'Redigér debitorpostering',
- 'Edit Account' => 'Redigér konto',
- 'Edit Assembly' => 'Redigér sammensætning',
- 'Edit Business' => 'Redigér forretning',
- 'Edit Cash Transfer Transaction' => 'Redigér kontantoverførsel',
- 'Edit Customer' => 'Redigér kunde',
- 'Edit Deduction' => 'Redigér fradrag',
- 'Edit Department' => 'Redigér afdeling',
- 'Edit Description Translations' => 'Redigér oversættelser af beskrivelser',
- 'Edit Employee' => 'Redigér medarbejder',
- 'Edit GIFI' => 'Redigér GIFI',
- 'Edit General Ledger Transaction' => 'Redigér en postering i hovedbog',
- 'Edit Group' => 'Redigér gruppe',
- 'Edit Labor/Overhead' => 'Redigér arbejde/overhead',
- 'Edit Language' => 'Redigér sprog',
- 'Edit POS Invoice' => 'Redigér POS faktura',
- 'Edit Part' => 'Redigér vare',
- 'Edit Preferences for' => 'Redigér opsætning for',
- 'Edit Pricegroup' => 'Redigér prisgruppe',
- 'Edit Project' => 'Redigér præferencer for',
- 'Edit Purchase Order' => 'Redigér indkøbsordre',
- 'Edit Quotation' => 'Redigér tilbud',
- 'Edit Request for Quotation' => 'Redigér ønske om tilbud',
- 'Edit SIC' => 'Redigér SIC',
- 'Edit Sales Invoice' => 'Redigér salgsfaktura',
- 'Edit Sales Order' => 'Redigér salgsordre',
- 'Edit Service' => 'Redigér tjeneste',
- 'Edit Template' => 'Redigér skabelon',
- 'Edit User' => 'Redigér bruger',
- 'Edit Vendor' => 'Redigér leverandør',
- 'Edit Vendor Invoice' => 'Redigér projekt',
- 'Edit Warehouse' => 'Redigér varehus',
- 'Employee' => 'Medarbejder',
- 'Employee Name' => 'Navn for medarbejder',
- 'Employee Number' => 'Medarbejdernummer',
- 'Employee deleted!' => 'Medarbejder slettet!',
- 'Employee pays' => 'Medarbejder betaler',
- 'Employee saved!' => 'Medarbejder gemt!',
- 'Employees' => 'Medarbejdere',
- 'Employer' => 'Arbejdsgiver',
- 'Employer pays' => 'Arbejdsgiver betaler',
- 'Enddate' => 'Slutdato',
- 'Enforce transaction reversal for all dates' => 'Gennemtving explicitte rettelser af posteringer for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Angiv op til 3 bogstaver adskilt med kolon (fx DKK:EUR:USD) for dine indenlandske og udenlandske valutaer',
- 'Equity' => 'Egenkapital',
- 'Excempt age <' => '',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Existing Datasets' => 'Eksisterende datasæt',
- 'Expense' => 'Udgift',
- 'Expense Account' => 'Udgiftskonto',
- 'Expense/Asset' => 'Udgift/Aktiv',
- 'Extended' => 'Udvidet',
- 'FX' => 'FX',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Foreign Exchange Gain' => 'Gevinst på valutahandel',
- 'Foreign Exchange Loss' => 'Tab på valutahandel',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI slettet!',
- 'GIFI missing!' => 'GIFI mangler!',
- 'GIFI saved!' => 'GIFI gemt!',
- 'GL Transaction' => 'Postering i hovedbog',
- 'General Ledger' => 'Hovedbog',
- 'Goods & Services' => 'Varer og tjenester',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'Group Translations' => 'Gruppeoversættelser',
- 'Group deleted!' => 'Gruppe slettet!',
- 'Group missing!' => 'Gruppe mangler!',
- 'Group saved!' => 'Gruppe gemt!',
- 'Groups' => 'Grupper',
- 'HR' => 'HR',
- 'HTML Templates' => 'HTML-skabeloner',
- 'Heading' => 'Overskrift',
- 'History' => 'Historik',
- 'Home Phone' => 'Telefon privat',
- 'Host' => 'Vært',
- 'Hostname missing!' => 'Værtsnavn mangler',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Billede',
- 'In-line' => 'Indlejret',
- 'Include Exchange Rate Difference' => 'Inkludér difference i vekselkurs',
- 'Include in Report' => 'Inkludér i rapport',
- 'Include in drop-down menus' => 'Inkludér i rullegardin-menuer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Skal denne konto kunne vælges som afgifts- eller momskonto ved oprettelsen af kunder/leverandører?',
- 'Income' => 'Indtægt',
- 'Income Account' => 'Indtægtskonto',
- 'Income Statement' => 'Driftsregnskab',
- 'Incorrect Dataset version!' => 'Forkert version af datasæt!',
- 'Incorrect Password!' => 'Forkert adgangskode',
- 'Increase' => 'Forøg',
- 'Individual Items' => 'Individuelle enheder',
- 'Internal Notes' => 'Interne noter',
- 'Inventory' => 'Artikler',
- 'Inventory Account' => 'Lagerkonto',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne sammensætning',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne enhed',
- 'Inventory saved!' => 'Lager gemt!',
- 'Inventory transferred!' => 'Lager overført!',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bogført!',
- 'Invoice processed!' => 'Fakturaer behandlet!',
- 'Invoices' => 'Fakturaer',
- 'Is this a summary account to record' => 'Samlekonto for',
- 'Item already on pricelist!' => 'Enkeltdel allerede på prisliste!',
- 'Item deleted!' => 'Enkeltdel slettet!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Items' => 'Enkeltdele',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'LaTeX Templates' => 'LaTeX-skabeloner',
- 'Labor/Overhead' => 'Arbejde/overhead',
- 'Language' => 'Sprog',
- 'Language deleted!' => 'Sprog slettet!',
- 'Language saved!' => 'Sprog gemt!',
- 'Languages' => 'Sprog',
- 'Languages not defined!' => 'Sprog ikke definerede!',
- 'Last Numbers & Default Accounts' => 'Løbenumre og standardkonti',
- 'Leadtime' => 'forsinkelsestid',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lad felterne "vært" og "port" være tomme medmindre du vil etablere en ekstern forbindelse.',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Udført for',
- 'Line Total' => 'Antal linjer',
- 'Link' => 'Referencer',
- 'Link Accounts' => 'Forbind konti',
- 'List' => 'Vís',
- 'List Accounts' => 'Vís konti',
- 'List Businesses' => 'Vís forretninger',
- 'List Departments' => 'Vís afdelinger',
- 'List GIFI' => 'Vís GIFI',
- 'List Languages' => 'Vís sprog',
- 'List Price' => 'Listepris',
- 'List Projects' => 'Vís projekter',
- 'List SIC' => 'Vís SIC',
- 'List Transactions' => 'Vís bogføringer',
- 'List Warehouses' => 'Vís varehuse',
- 'Lock System' => 'Lås system',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Log på',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Log af',
- 'Make' => 'Fabrikat',
- 'Manager' => 'Leder',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'Marked entries printed!' => 'Markerede poster udskrevet!',
- 'Markup' => 'Markup',
- 'Maximum' => 'Maksimum',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Menu Width' => 'Menubredde',
- 'Message' => 'Besked',
- 'Method' => 'Metode',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Month' => 'Måned',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'I/T',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'New Templates' => 'Nye skabeloner',
- 'No' => 'Nej',
- 'No Database Drivers available!' => 'Ingen databasedrivere tilgængelige',
- 'No Dataset selected!' => 'Intet datasæt valgt',
- 'No email address for' => 'Ingen epostadresse for',
- 'No.' => 'Nummer',
- 'Non-taxable' => 'Ikke-beskattet',
- 'Non-taxable Purchases' => 'Ikke-beskattede køb',
- 'Non-taxable Sales' => 'Ikke-beskattede salg',
- 'Notes' => 'Bemærkninger',
- 'Nothing entered!' => 'Ingenting indtastet!',
- 'Nothing outstanding for ' => 'Ingenting udestående for',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nothing to delete!' => 'Intet at slette!',
- 'Nothing to print!' => 'Ingenting at udskrive!',
- 'Nothing to transfer!' => 'Intet at overføre!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number Format' => 'Numerisk format',
- 'Number missing in Row' => 'Tal mangler i række',
- 'O' => 'O',
- 'Obsolete' => 'Forældet',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'On Hand' => 'På lager',
- 'Open' => 'Åbn',
- 'Oracle Database Administration' => 'Oracle Administration af database',
- 'Order' => 'Ordre',
- 'Order Date' => 'Ordredato',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Entry' => 'Ordreindgang',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'Order deleted!' => 'Ordre slettet',
- 'Order processed!' => 'Ordre behandlet!',
- 'Order saved!' => 'Ordre gemt',
- 'Orphaned' => 'Fritstående',
- 'Out of balance transaction!' => 'Ubalanceret overførsel',
- 'Out of balance!' => 'Ikke i balance!',
- 'Outstanding' => 'Udestående',
- 'PDF' => 'PDF',
- 'POS' => 'POS',
- 'POS Invoice' => 'POS faktura',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Packing Lists' => 'Følgesedler',
- 'Paid' => 'Betalt',
- 'Part' => 'Vare',
- 'Part Number' => 'Varenummer',
- 'Partnumber' => 'Varenummer',
- 'Parts' => 'Dele',
- 'Parts Inventory' => 'Vareliste',
- 'Password' => 'Adgangskode',
- 'Password changed!' => 'Adgangskode ændret',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Udeståender',
- 'Payment' => 'Betaling',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payment posted!' => 'Betaling bogført!',
- 'Payments' => 'Betalinger',
- 'Payroll Deduction' => 'Fradrag i løn',
- 'Period' => 'Periode',
- 'Pg Database Administration' => 'Pg Administration af database',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Pick Lists' => 'Pakkelister',
- 'Port' => 'Port',
- 'Port missing!' => 'Port mangler',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Posted!' => 'Bogført!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Præferencer',
- 'Preferences saved!' => 'Indstillinger gemt!',
- 'Prepayment' => 'Forudbetaling',
- 'Price' => 'Pris',
- 'Pricegroup' => 'Prisgruppe',
- 'Pricegroup deleted!' => 'Prisgruppe slettet!',
- 'Pricegroup missing!' => 'Prisgruppe mangler!',
- 'Pricegroup saved!' => 'Prisgruppe gemt!',
- 'Pricegroups' => 'Prisgrupper',
- 'Pricelist' => 'Prisliste',
- 'Print' => 'Udskriv',
- 'Print and Post' => 'Udskriv og send',
- 'Print and Save' => 'Udskriv og gem',
- 'Printed' => 'Udskrevet',
- 'Printer' => 'Printer',
- 'Printing ... ' => 'Udskriver ... ',
- 'Profit Center' => 'Profitcenter',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'Oversættelser af projektbeskrivelse',
- 'Project Number' => 'Projektnummer',
- 'Project Number missing!' => 'Projektnummer mangler!',
- 'Project Transactions' => 'Projektposteringer',
- 'Project deleted!' => 'Projekt slettet!',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Project saved!' => 'Projekt gemt!',
- 'Projects' => 'Projekter',
- 'Purchase Order' => 'Indkøbsordre',
- 'Purchase Order Number' => 'Nummer på indkøbsordre',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Qty' => 'Mængde',
- 'Quantity exceeds available units to stock!' => 'Mængde overstiger tilgægeligt antal på lager!',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation ' => 'Tilbud ',
- 'Quotation Date' => 'Tilbudsdato',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Quotation deleted!' => 'Tilbud slettet!',
- 'Quotations' => 'Tilbud',
- 'R' => 'R',
- 'RFQ' => 'Tilbudsønske',
- 'RFQ ' => 'Tilbudsønske ',
- 'RFQ Number' => 'Nummer for tilbudsønske',
- 'RFQs' => 'Tilbudsønsker',
- 'ROP' => 'Genbestil ved',
- 'Rate' => 'Sats',
- 'Rate missing!' => 'Sats mangler!',
- 'Recd' => 'Modtaget',
- 'Receipt' => 'Kvittering',
- 'Receipt posted!' => 'Modtagelse posteret',
- 'Receipts' => 'Kvitteringer',
- 'Receivables' => 'Indbetalinger',
- 'Receive' => 'Modtagelse',
- 'Receive Merchandise' => 'Modtagelse af varer',
- 'Reconciliation' => 'Afstemning',
- 'Reconciliation Report' => 'Afstemningsrapport',
- 'Record in' => 'Bogfør på',
- 'Reference' => 'Reference',
- 'Reference missing!' => 'Reference mangler',
- 'Remaining' => 'Resterer',
- 'Remove' => 'Fjern',
- 'Remove Audit trails up to' => 'Fjern revisionssporing indtil',
- 'Removed spoolfiles!' => 'Fjernede køfiler!',
- 'Removing marked entries from queue ...' => 'Fjerner markerede poster fra kø ...',
- 'Report for' => 'Rapport for',
- 'Reports' => 'Rapporter',
- 'Request for Quotation' => 'Ønske om tilbud',
- 'Request for Quotations' => 'Ønske om tilbud',
- 'Required by' => 'Bestilt af',
- 'Retained Earnings' => 'Realiseret overskud',
- 'Role' => 'Rolle',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC slettet!',
- 'SIC saved!' => 'SIC gemt!',
- 'SKU' => 'SKU',
- 'SSN' => 'CIR',
- 'Sale' => 'Salg',
- 'Sales' => 'Salg',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoice ' => 'Salgsfaktura ',
- 'Sales Invoice Number' => 'Salgsfakturanummer',
- 'Sales Invoice.' => 'Salgsfaktura.',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Order Number' => 'Salgsordrenummer',
- 'Sales Orders' => 'Salgsordrer',
- 'Sales Quotation Number' => 'Salgstilbudsnummer',
- 'Salesperson' => 'Sælger',
- 'Save' => 'Gem',
- 'Save Pricelist' => 'Gem prisliste',
- 'Save as new' => 'Gem som ny',
- 'Save to File' => 'Gem i fil',
- 'Screen' => 'Skærm',
- 'Search' => 'Søg',
- 'Select' => 'Vælg',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select all' => 'Vælg alt',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select payment' => 'Vælg betaling',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Sælg',
- 'Sell Price' => 'Salgspris',
- 'Send by E-Mail' => 'Sendt med epost',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Service Items' => 'Tjenester',
- 'Services' => 'Tjenester',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Skabeloner for opsætning',
- 'Ship' => 'Afsend',
- 'Ship Merchandise' => 'Afsend varer',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping' => 'Afsendelse',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Shipping Date' => 'Afsendelsesdato',
- 'Shipping Date missing!' => 'Afsendelsesdato mangler!',
- 'Shipping Point' => 'Afsendelsessted',
- 'Short' => 'Kort',
- 'Signature' => 'Underskrift',
- 'Source' => 'Bilag',
- 'Spoolfile' => 'køfil',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => 'Standard industrikoder (SIC)',
- 'Startdate' => 'Startdato',
- 'State' => 'Stat',
- 'State/Province' => 'Stat/provins',
- 'Statement' => 'Opgørelse',
- 'Statement Balance' => 'Balanceopgørelse',
- 'Statement sent to' => 'Opgørelse sendt til',
- 'Statements sent to printer!' => 'Opgørelser sendt til printer',
- 'Stock' => 'Lager',
- 'Stock Assembly' => 'Lagr sammensætning',
- 'Stylesheet' => 'Stilark',
- 'Sub-contract GIFI' => 'Kode for underleverandør',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oversigt',
- 'Supervisor' => '',
- 'System' => 'System',
- 'System Defaults' => 'Standardopsætning for system',
- 'Tax' => 'Afgift/Moms',
- 'Tax Accounts' => 'Afgift/Momskonti',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'Tax Number' => 'Skattenummer',
- 'Tax Number / SSN' => 'Skattenumme/CIR',
- 'Tax collected' => 'Skat opkrævet',
- 'Tax paid' => 'Skat betalt',
- 'Taxable' => 'Afgifts/momspligtig',
- 'Template saved!' => 'Skabelon gemt!',
- 'Templates' => 'Skabeloner',
- 'Terms' => 'Netto',
- 'Text Templates' => 'Skabeloner for tekst',
- 'The following Datasets are not in use and can be deleted' => 'De følgende datasæt er ikke i brug og kan slettes',
- 'The following Datasets need to be updated' => 'De følgende datasæt skal opdateres',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dette er en indledende kontrol af eksisterende kilder. Ingenting vil blive oprettet eller slettet på dette trin',
- 'Till' => 'Indtil',
- 'To' => 'til',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Skift brugernavnet for en eksisterende bruger og gem for at tilføje en ny bruger til en gruppe. Den nye bruger vil så bive gemt med de samme indstillinger under det nye brugernavn.',
- 'Top Level' => 'Topniveau',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabat',
- 'Transaction' => 'Postering',
- 'Transaction Date missing!' => 'Posteringsdato mangler!',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bogført!',
- 'Transaction reversal enforced for all dates' => 'Rettelser af posteringer skal altid bogføres explicit',
- 'Transaction reversal enforced up to' => 'Rettelser af posteringer skal bogføres explicit indtil',
- 'Transactions' => 'Posteringer',
- 'Transfer' => 'Overførsel',
- 'Transfer Inventory' => 'Oversigt over overførsler',
- 'Transfer to' => 'Overfør til',
- 'Translation' => 'Oversættelse',
- 'Translation deleted!' => 'Oversættelser slettet!',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Translations' => 'Oversættelser',
- 'Translations saved!' => 'Oversættelser gemt!',
- 'Trial Balance' => 'Foreløbig status',
- 'Type of Business' => 'Type forretning',
- 'Unit' => 'Enhed',
- 'Unit of measure' => 'Måleenhed',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Opdatér',
- 'Update Dataset' => 'Opdatér datasæt',
- 'Updated' => 'Opdateret',
- 'Upgrading to Version' => 'Opgraderer til version',
- 'Use Templates' => 'Brug skabeloner',
- 'User' => 'Bruger',
- 'User deleted!' => 'Bruger slettet!',
- 'User saved!' => 'Bruger gemt!',
- 'Valid until' => 'Gældende indtil',
- 'Vendor' => 'Leverandør',
- 'Vendor History' => 'Leverandørhistorik',
- 'Vendor Invoice' => 'Indkøbsfaktura',
- 'Vendor Invoice ' => 'Indkøbsfaktura ',
- 'Vendor Invoice Number' => 'Indkøbsfakturanummer',
- 'Vendor Invoice.' => 'Indkøbsfaktura.',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor deleted!' => 'Leverandør slettet!',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Vendor saved!' => 'Leverandør gemt!',
- 'Vendors' => 'Leverandører',
- 'Version' => 'Version',
- 'Warehouse' => 'Varehus',
- 'Warehouse deleted!' => 'Varehus slettet!',
- 'Warehouse saved!' => 'Varehus gemt!',
- 'Warehouses' => 'Varehuse',
- 'Warning!' => 'Advarsel!',
- 'Weight' => 'Vægt',
- 'Weight Unit' => 'Vægtenhed',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'Work Orders' => 'Arbejdsordrer',
- 'Work Phone' => 'Telefon arbejde',
- 'Year' => 'År',
- 'Yearend' => 'Årsslutning',
- 'Yearend date missing!' => 'Dato for årsslutning mangler!',
- 'Yearend posted!' => 'Årsslutning posteret!',
- 'Yearend posting failed!' => 'Postering af årsslutning mislykkedes!',
- 'Yes' => 'Ja',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Du angav ikke et navn',
- 'You must enter a host and port for local and remote connections!' => 'Du skal angive en vært og en port for lokale og eksterne forbindelser!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'konto kan ikke sættes til nogen anden type konto',
- 'as at' => 'som ved',
- 'days' => 'dage',
- 'does not exist' => 'eksisterer ikke',
- 'done' => 'færdig',
- 'ea' => 'stk',
- 'for Period' => 'for perioden',
- 'is already a member!' => 'er allerede et medlem',
- 'is not a member!' => 'er ikke et medlem!',
- 'localhost' => 'lokalt',
- 'locked!' => 'låst',
- 'posted!' => 'bogført!',
- 'sent' => 'sendt',
- 'successfully created!' => 'oprettet!',
- 'successfully deleted!' => 'slettet!',
- 'website' => 'på Internet',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/am b/sql-ledger/locale/dk/am
deleted file mode 100644
index 3cec9f0..0000000
--- a/sql-ledger/locale/dk/am
+++ /dev/null
@@ -1,256 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AR' => 'Debitorer',
- 'About' => 'Om',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer mangler!',
- 'Account Type' => 'Kontotype',
- 'Account Type missing!' => 'Kontotype mangler!',
- 'Account deleted!' => 'Konto slettet!',
- 'Account does not exist!' => 'Konto eksisterer ikke!',
- 'Account saved!' => 'Konto gemt!',
- 'Accounting Menu' => 'Konto-menu',
- 'Accrual' => 'Påløbet',
- 'Activate Audit trails' => 'Aktivér revisionssporing',
- 'Add Account' => 'Ny konto',
- 'Add Business' => 'Ny forretning',
- 'Add Department' => 'Ny afdeling',
- 'Add GIFI' => 'Ny GIFI',
- 'Add Language' => 'Nyt sprog',
- 'Add SIC' => 'Ny SIC',
- 'Add Warehouse' => 'Nyt varehus',
- 'Address' => 'Adresse',
- 'Asset' => 'Aktiv',
- 'Audit Control' => 'Revisionskontrol',
- 'Audit trail removed up to' => 'Revisionssporing fjernet indtil',
- 'Audit trails disabled' => 'Revisionssporing deaktiveret',
- 'Audit trails enabled' => 'Revisionssporing aktiveret',
- 'Backup sent to' => 'Sikkerhedskopier sendt til',
- 'Books are open' => 'Bogføringen er åben for rettelser',
- 'Business Number' => 'CVR-nummer',
- 'Business deleted!' => 'Forretning slettet',
- 'Business saved!' => 'Forretning gemt',
- 'COGS' => 'Indkøb',
- 'Cannot delete account!' => 'Kan ikke slette konto!',
- 'Cannot delete default account!' => 'Kan ikke slette standardkonto!',
- 'Cannot save account!' => 'Kan ikke gemme konto!',
- 'Cannot save defaults!' => 'Kan ikke gemme standardopsætning',
- 'Cannot save preferences!' => 'Kan ikke gemme præferencer!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan ikke sætte konto for mere end én af AR, AP eller IC',
- 'Cannot set multiple options for' => 'Kan ikke sætte flere muligheder for',
- 'Cannot set multiple options for Parts Inventory' => 'Kan ikke sætte flere muligheder for vareoversigt',
- 'Cannot set multiple options for Service Items' => 'Kan ikke sætte flere muligheder for tjenestedele',
- 'Cash' => 'Kontanter',
- 'Character Set' => 'Tegnsæt',
- 'Chart of Accounts' => 'Kontoplan',
- 'Close Books up to' => 'Afslut bogføring op til',
- 'Code' => 'Kode',
- 'Code missing!' => 'Kode mangler!',
- 'Company' => 'Firma',
- 'Continue' => 'Fortsæt',
- 'Contra' => 'Kontra',
- 'Copy to COA' => 'Kopiér til COA',
- 'Cost Center' => 'Kostcenter',
- 'Credit' => 'Kredit',
- 'Customer Number' => 'Kundenummer',
- 'Database Host' => 'Database-vært',
- 'Dataset' => 'Datasæt',
- 'Date Format' => 'Datoformat',
- 'Debit' => 'Debet',
- 'Defaults saved!' => 'Standardopsætning gemt!',
- 'Delete' => 'Fjern',
- 'Delete Account' => 'Fjern konto',
- 'Department deleted!' => 'Afdeling slettet!',
- 'Department saved!' => 'Afdeling gemt!',
- 'Departments' => 'Afdelinger',
- 'Description' => 'Beskrivelse',
- 'Description missing!' => 'Beskrivelse mangler!',
- 'Discount' => 'Rabat',
- 'Dropdown Limit' => 'Grænse for nedtræk',
- 'E-mail' => 'E-post',
- 'Edit' => 'Redigér',
- 'Edit Account' => 'Redigér konto',
- 'Edit Business' => 'Redigér forretning',
- 'Edit Department' => 'Redigér afdeling',
- 'Edit GIFI' => 'Redigér GIFI',
- 'Edit Language' => 'Redigér sprog',
- 'Edit Preferences for' => 'Redigér opsætning for',
- 'Edit SIC' => 'Redigér SIC',
- 'Edit Template' => 'Redigér skabelon',
- 'Edit Warehouse' => 'Redigér varehus',
- 'Employee Number' => 'Medarbejdernummer',
- 'Enforce transaction reversal for all dates' => 'Gennemtving explicitte rettelser af posteringer for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Angiv op til 3 bogstaver adskilt med kolon (fx DKK:EUR:USD) for dine indenlandske og udenlandske valutaer',
- 'Equity' => 'Egenkapital',
- 'Expense' => 'Udgift',
- 'Expense Account' => 'Udgiftskonto',
- 'Expense/Asset' => 'Udgift/Aktiv',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Gevinst på valutahandel',
- 'Foreign Exchange Loss' => 'Tab på valutahandel',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI slettet!',
- 'GIFI missing!' => 'GIFI mangler!',
- 'GIFI saved!' => 'GIFI gemt!',
- 'Heading' => 'Overskrift',
- 'Include in drop-down menus' => 'Inkludér i rullegardin-menuer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Skal denne konto kunne vælges som afgifts- eller momskonto ved oprettelsen af kunder/leverandører?',
- 'Income' => 'Indtægt',
- 'Income Account' => 'Indtægtskonto',
- 'Inventory' => 'Artikler',
- 'Inventory Account' => 'Lagerkonto',
- 'Is this a summary account to record' => 'Samlekonto for',
- 'Labor/Overhead' => 'Arbejde/overhead',
- 'Language' => 'Sprog',
- 'Language deleted!' => 'Sprog slettet!',
- 'Language saved!' => 'Sprog gemt!',
- 'Languages' => 'Sprog',
- 'Last Numbers & Default Accounts' => 'Løbenumre og standardkonti',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Udført for',
- 'Link' => 'Referencer',
- 'Menu Width' => 'Menubredde',
- 'Method' => 'Metode',
- 'Name' => 'Navn',
- 'No' => 'Nej',
- 'No email address for' => 'Ingen epostadresse for',
- 'Number' => 'Nummer',
- 'Number Format' => 'Numerisk format',
- 'Partnumber' => 'Varenummer',
- 'Parts Inventory' => 'Vareliste',
- 'Password' => 'Adgangskode',
- 'Payables' => 'Udeståender',
- 'Payment' => 'Betaling',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Indstillinger gemt!',
- 'Printer' => 'Printer',
- 'Profit Center' => 'Profitcenter',
- 'Purchase Order Number' => 'Nummer på indkøbsordre',
- 'RFQ Number' => 'Nummer for tilbudsønske',
- 'Rate' => 'Sats',
- 'Receivables' => 'Indbetalinger',
- 'Reference' => 'Reference',
- 'Remove Audit trails up to' => 'Fjern revisionssporing indtil',
- 'Retained Earnings' => 'Realiseret overskud',
- 'SIC deleted!' => 'SIC slettet!',
- 'SIC saved!' => 'SIC gemt!',
- 'Sales Invoice Number' => 'Salgsfakturanummer',
- 'Sales Order Number' => 'Salgsordrenummer',
- 'Sales Quotation Number' => 'Salgstilbudsnummer',
- 'Save' => 'Gem',
- 'Save as new' => 'Gem som ny',
- 'Service Items' => 'Tjenester',
- 'Signature' => 'Underskrift',
- 'Standard Industrial Codes' => 'Standard industrikoder (SIC)',
- 'Stylesheet' => 'Stilark',
- 'System Defaults' => 'Standardopsætning for system',
- 'Tax' => 'Afgift/Moms',
- 'Tax Accounts' => 'Afgift/Momskonti',
- 'Template saved!' => 'Skabelon gemt!',
- 'Transaction reversal enforced for all dates' => 'Rettelser af posteringer skal altid bogføres explicit',
- 'Transaction reversal enforced up to' => 'Rettelser af posteringer skal bogføres explicit indtil',
- 'Type of Business' => 'Type forretning',
- 'User' => 'Bruger',
- 'Vendor Invoice Number' => 'Indkøbsfakturanummer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Version' => 'Version',
- 'Warehouse deleted!' => 'Varehus slettet!',
- 'Warehouse saved!' => 'Varehus gemt!',
- 'Warehouses' => 'Varehuse',
- 'Weight Unit' => 'Vægtenhed',
- 'Yearend' => 'Årsslutning',
- 'Yearend date missing!' => 'Dato for årsslutning mangler!',
- 'Yearend posted!' => 'Årsslutning posteret!',
- 'Yearend posting failed!' => 'Postering af årsslutning mislykkedes!',
- 'Yes' => 'Ja',
- 'account cannot be set to any other type of account' => 'konto kan ikke sættes til nogen anden type konto',
- 'localhost' => 'lokalt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'ny_konto' => 'add_account',
- 'ny_forretning' => 'add_business',
- 'ny_afdeling' => 'add_department',
- 'nyt_sprog' => 'add_language',
- 'ny_sic' => 'add_sic',
- 'nyt_varehus' => 'add_warehouse',
- 'fortsæt' => 'continue',
- 'kopiér_til_coa' => 'copy_to_coa',
- 'fjern' => 'delete',
- 'redigér' => 'edit',
- 'redigér_konto' => 'edit_account',
- 'gem' => 'save',
- 'gem_som_ny' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ap b/sql-ledger/locale/dk/ap
deleted file mode 100644
index 190f2ff..0000000
--- a/sql-ledger/locale/dk/ap
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Udestående kreditorer',
- 'AP Transaction' => 'Leverandørfaktura',
- 'AP Transactions' => 'Leverandørfakturaer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Add AP Transaction' => 'Ny kreditorpostering',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Amount Due' => 'Forfaldent',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på du vil fjerne postering',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bogføre postering for en afsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Check' => 'Check',
- 'Closed' => 'Afsluttet',
- 'Confirm!' => 'Bekræft!',
- 'Continue' => 'Fortsæt',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfaldsdato',
- 'Due Date missing!' => 'Forfaldsdato mangler!',
- 'Edit AP Transaction' => 'Redigér kreditorpostering',
- 'Employee' => 'Medarbejder',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Leder',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Month' => 'Måned',
- 'Notes' => 'Bemærkninger',
- 'Nothing to print!' => 'Ingenting at udskrive!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åbn',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Udskriv',
- 'Print and Post' => 'Udskriv og send',
- 'Printed' => 'Udskrevet',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Receipt' => 'Kvittering',
- 'Remaining' => 'Resterer',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select payment' => 'Vælg betaling',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Afgift/Moms',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Transaction' => 'Postering',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bogført!',
- 'Update' => 'Opdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor Invoice.' => 'Indkøbsfaktura.',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'leverandørfaktura' => 'ap_transaction',
- 'ny_kreditorpostering' => 'add_ap_transaction',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'redigér_kreditorpostering' => 'edit_ap_transaction',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'udskriv' => 'print',
- 'udskriv_og_send' => 'print_and_post',
- 'opdatér' => 'update',
- 'indkøbsfaktura.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ar b/sql-ledger/locale/dk/ar
deleted file mode 100644
index 600f5cb..0000000
--- a/sql-ledger/locale/dk/ar
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Udestående debitorer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Add AR Transaction' => 'Ny debitorpostering',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Amount Due' => 'Forfaldent',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på du vil fjerne postering',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bogføre postering for en afsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Check' => 'Check',
- 'Closed' => 'Afsluttet',
- 'Confirm!' => 'Bekræft!',
- 'Continue' => 'Fortsæt',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfaldsdato',
- 'Due Date missing!' => 'Forfaldsdato mangler!',
- 'Edit AR Transaction' => 'Redigér debitorpostering',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Leder',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Month' => 'Måned',
- 'Notes' => 'Bemærkninger',
- 'Nothing to print!' => 'Ingenting at udskrive!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åbn',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Udskriv',
- 'Print and Post' => 'Udskriv og send',
- 'Printed' => 'Udskrevet',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Receipt' => 'Kvittering',
- 'Remaining' => 'Resterer',
- 'Sales Invoice.' => 'Salgsfaktura.',
- 'Salesperson' => 'Sælger',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select payment' => 'Vælg betaling',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Ship via' => 'Send via',
- 'Shipping Point' => 'Afsendelsessted',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Afgift/Moms',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'Till' => 'Indtil',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Transaction' => 'Postering',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bogført!',
- 'Update' => 'Opdatér',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debitorpostering' => 'ar_transaction',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'udskriv' => 'print',
- 'udskriv_og_send' => 'print_and_post',
- 'salgsfaktura.' => 'sales_invoice.',
- 'opdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/arap b/sql-ledger/locale/dk/arap
deleted file mode 100644
index 1e7d80a..0000000
--- a/sql-ledger/locale/dk/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresse',
- 'Continue' => 'Fortsæt',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Description' => 'Beskrivelse',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsæt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/arapprn b/sql-ledger/locale/dk/arapprn
deleted file mode 100644
index f987624..0000000
--- a/sql-ledger/locale/dk/arapprn
+++ /dev/null
@@ -1,37 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Amount' => 'Beløb',
- 'Check' => 'Check',
- 'Continue' => 'Fortsæt',
- 'Date' => 'Dato',
- 'Memo' => 'Note',
- 'Nothing to print!' => 'Ingenting at udskrive!',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Udskrevet',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Receipt' => 'Kvittering',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select payment' => 'Vælg betaling',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Source' => 'Bilag',
- 'Transaction' => 'Postering',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'fortsæt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/bp b/sql-ledger/locale/dk/bp
deleted file mode 100644
index 9793a9f..0000000
--- a/sql-ledger/locale/dk/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Er du sikker på at du vil fjerne de markerede poster fra køen?',
- 'Bin Lists' => 'Sendings-lister',
- 'Cannot remove files!' => 'Kan ikke fjerne filer!',
- 'Checks' => 'Kontroller',
- 'Confirm!' => 'Bekræft!',
- 'Continue' => 'Fortsæt',
- 'Current' => 'Aktuel',
- 'Customer' => 'Kunde',
- 'Date' => 'Dato',
- 'From' => 'Fra',
- 'Invoice' => 'Faktura',
- 'Invoice Number' => 'Fakturanummer',
- 'Marked entries printed!' => 'Markerede poster udskrevet!',
- 'Month' => 'Måned',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'Packing Lists' => 'Følgesedler',
- 'Period' => 'Periode',
- 'Pick Lists' => 'Pakkelister',
- 'Print' => 'Udskriv',
- 'Printing ... ' => 'Udskriver ... ',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Quarter' => 'Kvartal',
- 'Quotation' => 'Tilbud',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotations' => 'Tilbud',
- 'RFQs' => 'Tilbudsønsker',
- 'Receipts' => 'Kvitteringer',
- 'Reference' => 'Reference',
- 'Remove' => 'Fjern',
- 'Removed spoolfiles!' => 'Fjernede køfiler!',
- 'Removing marked entries from queue ...' => 'Fjerner markerede poster fra kø ...',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Orders' => 'Salgsordrer',
- 'Select all' => 'Vælg alt',
- 'Spoolfile' => 'køfil',
- 'To' => 'til',
- 'Vendor' => 'Leverandør',
- 'Work Orders' => 'Arbejdsordrer',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'done' => 'færdig',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'fortsæt' => 'continue',
- 'udskriv' => 'print',
- 'fjern' => 'remove',
- 'vælg_alt' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ca b/sql-ledger/locale/dk/ca
deleted file mode 100644
index 1f329a7..0000000
--- a/sql-ledger/locale/dk/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Kontoplan',
- 'Credit' => 'Kredit',
- 'Current' => 'Aktuel',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Inkludér i rapport',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'List Transactions' => 'Vís bogføringer',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Month' => 'Måned',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Period' => 'Periode',
- 'Project Number' => 'Projektnummer',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reference' => 'Reference',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Subtotal' => 'Subtotal',
- 'To' => 'til',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'vís_bogføringer' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/cp b/sql-ledger/locale/dk/cp
deleted file mode 100644
index 5e7c9d8..0000000
--- a/sql-ledger/locale/dk/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AR' => 'Debitorer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Address' => 'Adresse',
- 'All' => 'Alt',
- 'Amount' => 'Beløb',
- 'Amount Due' => 'Forfaldent',
- 'Cannot post Payment!' => 'Kan ikke postere udbetaling',
- 'Cannot post Receipt!' => 'kan ikke postere indbetaling',
- 'Cannot process payment for a closed period!' => 'Kan ikke behandle betaling for en afsluttet periode!',
- 'Continue' => 'Fortsæt',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Date missing!' => 'Dato mangler!',
- 'Department' => 'Afdeling',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Invoice' => 'Faktura',
- 'Invoices' => 'Fakturaer',
- 'Memo' => 'Note',
- 'Nothing outstanding for ' => 'Ingenting udestående for',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Betaling',
- 'Payment posted!' => 'Betaling bogført!',
- 'Post' => 'Bogfør',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Forudbetaling',
- 'Print' => 'Udskriv',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Queue' => 'Kø',
- 'Receipt' => 'Kvittering',
- 'Receipt posted!' => 'Modtagelse posteret',
- 'Screen' => 'Skærm',
- 'Select' => 'Vælg',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Source' => 'Bilag',
- 'Update' => 'Opdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsæt' => 'continue',
- 'bogfør' => 'post',
- 'udskriv' => 'print',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ct b/sql-ledger/locale/dk/ct
deleted file mode 100644
index d8d9832..0000000
--- a/sql-ledger/locale/dk/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Leverandørfaktura',
- 'AP Transactions' => 'Leverandørfakturaer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Customer' => 'Ny kunde',
- 'Add Vendor' => 'Ny leverandør',
- 'Address' => 'Adresse',
- 'All' => 'Alt',
- 'Amount' => 'Beløb',
- 'BIC' => 'BIC',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Break' => 'Bryd',
- 'Cannot delete customer!' => 'Kan ikke slette kunde!',
- 'Cannot delete vendor!' => 'Kan ikke slette leverandør!',
- 'Cc' => 'Kopi',
- 'City' => 'By',
- 'Closed' => 'Afsluttet',
- 'Company Name' => 'Firmanavn',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Cost' => 'Udgifter',
- 'Could not save pricelist!' => 'Kunne ikke gemme prisliste!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer History' => 'Kundehistorik',
- 'Customer Number' => 'Kundenummer',
- 'Customer deleted!' => 'Kunde slettet!',
- 'Customer saved!' => 'Kunde gemt!',
- 'Customers' => 'Kunder',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalje',
- 'Discount' => 'Rabat',
- 'E-mail' => 'E-post',
- 'Edit Customer' => 'Redigér kunde',
- 'Edit Vendor' => 'Redigér leverandør',
- 'Employee' => 'Medarbejder',
- 'Enddate' => 'Slutdato',
- 'Fax' => 'Fax',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Group' => 'Gruppe',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Item already on pricelist!' => 'Enkeltdel allerede på prisliste!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Language' => 'Sprog',
- 'Leadtime' => 'forsinkelsestid',
- 'Manager' => 'Leder',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'Notes' => 'Bemærkninger',
- 'Number' => 'Nummer',
- 'Open' => 'Åbn',
- 'Order' => 'Ordre',
- 'Orphaned' => 'Fritstående',
- 'Part Number' => 'Varenummer',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Prisgruppe',
- 'Pricelist' => 'Prisliste',
- 'Project Number' => 'Projektnummer',
- 'Purchase Order' => 'Indkøbsordre',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Qty' => 'Mængde',
- 'Quotation' => 'Tilbud',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsønske',
- 'Request for Quotations' => 'Ønske om tilbud',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Salesperson' => 'Sælger',
- 'Save' => 'Gem',
- 'Save Pricelist' => 'Gem prisliste',
- 'Search' => 'Søg',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Sell Price' => 'Salgspris',
- 'Serial Number' => 'Serienummer',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Startdate' => 'Startdato',
- 'State' => 'Stat',
- 'State/Province' => 'Stat/provins',
- 'Sub-contract GIFI' => 'Kode for underleverandør',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oversigt',
- 'Tax' => 'Afgift/Moms',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'Tax Number' => 'Skattenummer',
- 'Tax Number / SSN' => 'Skattenumme/CIR',
- 'Taxable' => 'Afgifts/momspligtig',
- 'Terms' => 'Netto',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Type of Business' => 'Type forretning',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Vendor History' => 'Leverandørhistorik',
- 'Vendor Invoice' => 'Indkøbsfaktura',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor deleted!' => 'Leverandør slettet!',
- 'Vendor saved!' => 'Leverandør gemt!',
- 'Vendors' => 'Leverandører',
- 'days' => 'dage',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'leverandørfaktura' => 'ap_transaction',
- 'debitorpostering' => 'ar_transaction',
- 'ny_kunde' => 'add_customer',
- 'ny_leverandør' => 'add_vendor',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'prisliste' => 'pricelist',
- 'indkøbsordre' => 'purchase_order',
- 'tilbud' => 'quotation',
- 'tilbudsønske' => 'rfq',
- 'salgsfaktura' => 'sales_invoice',
- 'salgsordre' => 'sales_order',
- 'gem' => 'save',
- 'gem_prisliste' => 'save_pricelist',
- 'opdatér' => 'update',
- 'indkøbsfaktura' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/gl b/sql-ledger/locale/dk/gl
deleted file mode 100644
index db6f6ca..0000000
--- a/sql-ledger/locale/dk/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Leverandørfaktura',
- 'AR Transaction' => 'Debitorpostering',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Cash Transfer Transaction' => 'Ny kontantoverførsel',
- 'Add General Ledger Transaction' => 'Ny postering i hovedbog',
- 'Address' => 'Adresse',
- 'All' => 'Alt',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på du vil fjerne postering',
- 'Asset' => 'Aktiv',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bogføre postering for en afsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Confirm!' => 'Bekræft!',
- 'Continue' => 'Fortsæt',
- 'Contra' => 'Kontra',
- 'Credit' => 'Kredit',
- 'Current' => 'Aktuel',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Edit Cash Transfer Transaction' => 'Redigér kontantoverførsel',
- 'Edit General Ledger Transaction' => 'Redigér en postering i hovedbog',
- 'Equity' => 'Egenkapital',
- 'Expense' => 'Udgift',
- 'FX' => 'FX',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Postering i hovedbog',
- 'General Ledger' => 'Hovedbog',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income' => 'Indtægt',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Liability' => 'Passiv',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Month' => 'Måned',
- 'Notes' => 'Bemærkninger',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Out of balance transaction!' => 'Ubalanceret overførsel',
- 'Period' => 'Periode',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reference' => 'Reference',
- 'Reference missing!' => 'Reference mangler',
- 'Reports' => 'Rapporter',
- 'Sales Invoice ' => 'Salgsfaktura ',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'To' => 'til',
- 'Transaction Date missing!' => 'Posteringsdato mangler!',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bogført!',
- 'Update' => 'Opdatér',
- 'Vendor Invoice ' => 'Indkøbsfaktura ',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Warning!' => 'Advarsel!',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'leverandørfaktura' => 'ap_transaction',
- 'debitorpostering' => 'ar_transaction',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'postering_i_hovedbog' => 'gl_transaction',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'salgsfaktura_' => 'sales_invoice_',
- 'opdatér' => 'update',
- 'indkøbsfaktura_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/hr b/sql-ledger/locale/dk/hr
deleted file mode 100644
index 3480ab2..0000000
--- a/sql-ledger/locale/dk/hr
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'Above' => 'Over',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Deduction' => 'Nyt fradrag',
- 'Add Employee' => 'Ny medarbejder',
- 'Address' => 'Adresse',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Efter fradrag',
- 'All' => 'Alt',
- 'Allowances' => 'Fradrag',
- 'Amount' => 'Beløb',
- 'Amount missing!' => 'Beløb mangler!',
- 'BIC' => 'BIC',
- 'Based on' => 'Baseret på',
- 'Before Deduction' => 'Før fradrag',
- 'Below' => 'Under',
- 'City' => 'By',
- 'Continue' => 'Fortsæt',
- 'Country' => 'Land',
- 'Deduct after' => 'Fratræk efter',
- 'Deduction deleted!' => 'Fradrag slettet!',
- 'Deduction saved!' => 'Fradrag gemt!',
- 'Deductions' => 'Fradrag',
- 'Delete' => 'Fjern',
- 'Description' => 'Beskrivelse',
- 'Description missing!' => 'Beskrivelse mangler!',
- 'E-mail' => 'E-post',
- 'Edit Deduction' => 'Redigér fradrag',
- 'Edit Employee' => 'Redigér medarbejder',
- 'Employee' => 'Medarbejder',
- 'Employee Name' => 'Navn for medarbejder',
- 'Employee Number' => 'Medarbejdernummer',
- 'Employee deleted!' => 'Medarbejder slettet!',
- 'Employee pays' => 'Medarbejder betaler',
- 'Employee saved!' => 'Medarbejder gemt!',
- 'Employees' => 'Medarbejdere',
- 'Employer' => 'Arbejdsgiver',
- 'Employer pays' => 'Arbejdsgiver betaler',
- 'Enddate' => 'Slutdato',
- 'Expense' => 'Udgift',
- 'Home Phone' => 'Telefon privat',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Login' => 'Log på',
- 'Manager' => 'Leder',
- 'Maximum' => 'Maksimum',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'Notes' => 'Bemærkninger',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Fritstående',
- 'Payroll Deduction' => 'Fradrag i løn',
- 'Rate' => 'Sats',
- 'Rate missing!' => 'Sats mangler!',
- 'Role' => 'Rolle',
- 'S' => 'S',
- 'SSN' => 'CIR',
- 'Sales' => 'Salg',
- 'Save' => 'Gem',
- 'Save as new' => 'Gem som ny',
- 'Startdate' => 'Startdato',
- 'State/Province' => 'Stat/provins',
- 'Update' => 'Opdatér',
- 'User' => 'Bruger',
- 'Work Phone' => 'Telefon arbejde',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'nyt_fradrag' => 'add_deduction',
- 'ny_medarbejder' => 'add_employee',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'gem' => 'save',
- 'gem_som_ny' => 'save_as_new',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ic b/sql-ledger/locale/dk/ic
deleted file mode 100644
index 5d5f84b..0000000
--- a/sql-ledger/locale/dk/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Konto-menu',
- 'Accrual' => 'Påløbet',
- 'Active' => 'Aktiv',
- 'Add' => 'Tilføj',
- 'Add Assembly' => 'Ny sammensætning',
- 'Add Labor/Overhead' => 'Nyt arbejde/overhead',
- 'Add Part' => 'Ny vare',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Service' => 'Ny tjeneste',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Assemblies' => 'Sammensætninger',
- 'Assemblies restocked!' => 'Sammensætninger genlagret',
- 'Assembly' => 'Sammensætning',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'BOM' => 'BOM',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Break' => 'Bryd',
- 'COGS' => 'Indkøb',
- 'Cannot delete item!' => 'Kan ikke slette enhed!',
- 'Cannot stock assemblies!' => 'Kan ikke genbesætte sammensætninger',
- 'Cash' => 'Kontanter',
- 'Cc' => 'Kopi',
- 'Check Inventory' => 'Kontrollér lager',
- 'City' => 'By',
- 'Closed' => 'Afsluttet',
- 'Company Name' => 'Firmanavn',
- 'Components' => 'Komponenter',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Cost' => 'Udgifter',
- 'Country' => 'Land',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'Drawing' => 'Træk',
- 'E-mail' => 'E-post',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit Assembly' => 'Redigér sammensætning',
- 'Edit Labor/Overhead' => 'Redigér arbejde/overhead',
- 'Edit Part' => 'Redigér vare',
- 'Edit Service' => 'Redigér tjeneste',
- 'Employee' => 'Medarbejder',
- 'Expense' => 'Udgift',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'Image' => 'Billede',
- 'In-line' => 'Indlejret',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income' => 'Indtægt',
- 'Individual Items' => 'Individuelle enheder',
- 'Inventory' => 'Artikler',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne sammensætning',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne enhed',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item deleted!' => 'Enkeltdel slettet!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Items' => 'Enkeltdele',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Labor/Overhead' => 'Arbejde/overhead',
- 'Leadtime' => 'forsinkelsestid',
- 'Line Total' => 'Antal linjer',
- 'Link Accounts' => 'Forbind konti',
- 'List' => 'Vís',
- 'List Price' => 'Listepris',
- 'Make' => 'Fabrikat',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'Markup' => 'Markup',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Message' => 'Besked',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Name' => 'Navn',
- 'No.' => 'Nummer',
- 'Notes' => 'Bemærkninger',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'Obsolete' => 'Forældet',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'On Hand' => 'På lager',
- 'Open' => 'Åbn',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'Orphaned' => 'Fritstående',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Part' => 'Vare',
- 'Parts' => 'Dele',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Pricegroup' => 'Prisgruppe',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Indkøbsordre',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Qty' => 'Mængde',
- 'Quantity exceeds available units to stock!' => 'Mængde overstiger tilgægeligt antal på lager!',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsønske',
- 'ROP' => 'Genbestil ved',
- 'Recd' => 'Modtaget',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Save' => 'Gem',
- 'Save as new' => 'Gem som ny',
- 'Screen' => 'Skærm',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Sell' => 'Sælg',
- 'Sell Price' => 'Salgspris',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Services' => 'Tjenester',
- 'Ship' => 'Afsend',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Short' => 'Kort',
- 'State/Province' => 'Stat/provins',
- 'Stock' => 'Lager',
- 'Stock Assembly' => 'Lagr sammensætning',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Afgift/Moms',
- 'To' => 'til',
- 'Top Level' => 'Topniveau',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Unit' => 'Enhed',
- 'Unit of measure' => 'Måleenhed',
- 'Update' => 'Opdatér',
- 'Updated' => 'Opdateret',
- 'Vendor' => 'Leverandør',
- 'Vendor Invoice' => 'Indkøbsfaktura',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Warehouse' => 'Varehus',
- 'Weight' => 'Vægt',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'days' => 'dage',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'ny_sammensætning' => 'add_assembly',
- 'nyt_arbejde/overhead' => 'add_labor/overhead',
- 'ny_vare' => 'add_part',
- 'ny_tjeneste' => 'add_service',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'redigér_sammensætning' => 'edit_assembly',
- 'redigér_vare' => 'edit_part',
- 'redigér_tjeneste' => 'edit_service',
- 'gem' => 'save',
- 'gem_som_ny' => 'save_as_new',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/io b/sql-ledger/locale/dk/io
deleted file mode 100644
index d93e3a2..0000000
--- a/sql-ledger/locale/dk/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Cc' => 'Kopi',
- 'City' => 'By',
- 'Company Name' => 'Firmanavn',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Customer Number' => 'Kundenummer',
- 'Date' => 'Dato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'E-mail' => 'E-post',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'In-line' => 'Indlejret',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Message' => 'Besked',
- 'No.' => 'Nummer',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Part' => 'Vare',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Indkøbsordre',
- 'Qty' => 'Mængde',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Recd' => 'Modtaget',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Salgsordre',
- 'Screen' => 'Skærm',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Afsend',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'State/Province' => 'Stat/provins',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'To' => 'til',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Unit' => 'Enhed',
- 'Vendor Number' => 'Leverandørnummer',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'fortsæt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ir b/sql-ledger/locale/dk/ir
deleted file mode 100644
index 8762f3b..0000000
--- a/sql-ledger/locale/dk/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Vendor Invoice' => 'Ny indkøbsfaktura',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på du vil fjerne fakturanummer',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bogføre faktura for en afsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bogføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cc' => 'Kopi',
- 'City' => 'By',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekræft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrænse',
- 'Currency' => 'Valuta',
- 'Customer Number' => 'Kundenummer',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfaldsdato',
- 'E-mail' => 'E-post',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit Vendor Invoice' => 'Redigér projekt',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'In-line' => 'Indlejret',
- 'Internal Notes' => 'Interne noter',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Sprog',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Message' => 'Besked',
- 'No.' => 'Nummer',
- 'Notes' => 'Bemærkninger',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Part' => 'Vare',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Purchase Order' => 'Indkøbsordre',
- 'Qty' => 'Mængde',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Recd' => 'Modtaget',
- 'Record in' => 'Bogfør på',
- 'Remaining' => 'Resterer',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Salgsordre',
- 'Screen' => 'Skærm',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Afsend',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Source' => 'Bilag',
- 'State/Province' => 'Stat/provins',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'Yes' => 'Ja',
- 'ea' => 'stk',
- 'posted!' => 'bogført!',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'indkøbsordre' => 'purchase_order',
- 'opdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/is b/sql-ledger/locale/dk/is
deleted file mode 100644
index d76553a..0000000
--- a/sql-ledger/locale/dk/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på du vil fjerne fakturanummer',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Business' => 'Forretning',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bogføre faktura for en afsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bogføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cc' => 'Kopi',
- 'City' => 'By',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekræft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrænse',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfaldsdato',
- 'E-mail' => 'E-post',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit Sales Invoice' => 'Redigér salgsfaktura',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'In-line' => 'Indlejret',
- 'Internal Notes' => 'Interne noter',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bogført!',
- 'Invoice processed!' => 'Fakturaer behandlet!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Message' => 'Besked',
- 'No.' => 'Nummer',
- 'Notes' => 'Bemærkninger',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Part' => 'Vare',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Udskriv',
- 'Print and Post' => 'Udskriv og send',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Purchase Order' => 'Indkøbsordre',
- 'Qty' => 'Mængde',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Recd' => 'Modtaget',
- 'Record in' => 'Bogfør på',
- 'Remaining' => 'Resterer',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Salgsordre',
- 'Salesperson' => 'Sælger',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Afsend',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Shipping Point' => 'Afsendelsessted',
- 'Source' => 'Bilag',
- 'State/Province' => 'Stat/provins',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabat',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'Yes' => 'Ja',
- 'ea' => 'stk',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'e_post' => 'e_mail',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'udskriv' => 'print',
- 'udskriv_og_send' => 'print_and_post',
- 'salgsordre' => 'sales_order',
- 'send_til' => 'ship_to',
- 'opdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/login b/sql-ledger/locale/dk/login
deleted file mode 100644
index 10b9496..0000000
--- a/sql-ledger/locale/dk/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Fortsæt',
- 'Dataset is newer than version!' => 'Datasæt er nyere end version!',
- 'Incorrect Dataset version!' => 'Forkert version af datasæt!',
- 'Incorrect Password!' => 'Forkert adgangskode',
- 'Login' => 'Log på',
- 'Name' => 'Navn',
- 'Password' => 'Adgangskode',
- 'Upgrading to Version' => 'Opgraderer til version',
- 'Version' => 'Version',
- 'You did not enter a name!' => 'Du angav ikke et navn',
- 'done' => 'færdig',
- 'is not a member!' => 'er ikke et medlem!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'log_på' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/menu b/sql-ledger/locale/dk/menu
deleted file mode 100644
index 2cdfd85..0000000
--- a/sql-ledger/locale/dk/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AP Aging' => 'Aldersfordeling',
- 'AP Transaction' => 'Leverandørfaktura',
- 'AR' => 'Debitorer',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Transaction' => 'Debitorpostering',
- 'Accounting Menu' => 'Konto-menu',
- 'Add Account' => 'Ny konto',
- 'Add Assembly' => 'Ny sammensætning',
- 'Add Business' => 'Ny forretning',
- 'Add Customer' => 'Ny kunde',
- 'Add Department' => 'Ny afdeling',
- 'Add Employee' => 'Ny medarbejder',
- 'Add GIFI' => 'Ny GIFI',
- 'Add Group' => 'Ny gruppe',
- 'Add Labor/Overhead' => 'Nyt arbejde/overhead',
- 'Add Language' => 'Nyt sprog',
- 'Add Part' => 'Ny vare',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nyt projekt',
- 'Add SIC' => 'Ny SIC',
- 'Add Service' => 'Ny tjeneste',
- 'Add Transaction' => 'Ny postering',
- 'Add Vendor' => 'Ny leverandør',
- 'Add Warehouse' => 'Nyt varehus',
- 'All Items' => 'Alle dele',
- 'Assemblies' => 'Sammensætninger',
- 'Audit Control' => 'Revisionskontrol',
- 'Backup' => 'Sikkerheskopi',
- 'Balance Sheet' => 'Status',
- 'Batch Printing' => 'Udskrivning i baggrunden',
- 'Bin List' => 'Sendings-list',
- 'Bin Lists' => 'Sendings-lister',
- 'Cash' => 'Kontanter',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Check',
- 'Checks' => 'Kontroller',
- 'Components' => 'Komponenter',
- 'Customers' => 'Kunder',
- 'Defaults' => 'Standardopsætning',
- 'Departments' => 'Afdelinger',
- 'Description' => 'Beskrivelse',
- 'Employees' => 'Medarbejdere',
- 'General Ledger' => 'Hovedbog',
- 'Goods & Services' => 'Varer og tjenester',
- 'Groups' => 'Grupper',
- 'HR' => 'HR',
- 'HTML Templates' => 'HTML-skabeloner',
- 'History' => 'Historik',
- 'Income Statement' => 'Driftsregnskab',
- 'Invoice' => 'Faktura',
- 'LaTeX Templates' => 'LaTeX-skabeloner',
- 'Labor/Overhead' => 'Arbejde/overhead',
- 'Language' => 'Sprog',
- 'List Accounts' => 'Vís konti',
- 'List Businesses' => 'Vís forretninger',
- 'List Departments' => 'Vís afdelinger',
- 'List GIFI' => 'Vís GIFI',
- 'List Languages' => 'Vís sprog',
- 'List Projects' => 'Vís projekter',
- 'List SIC' => 'Vís SIC',
- 'List Warehouses' => 'Vís varehuse',
- 'Logout' => 'Log af',
- 'Non-taxable' => 'Ikke-beskattet',
- 'Open' => 'Åbn',
- 'Order Entry' => 'Ordreindgang',
- 'Outstanding' => 'Udestående',
- 'POS' => 'POS',
- 'POS Invoice' => 'POS faktura',
- 'Packing List' => 'Følgeseddel',
- 'Packing Lists' => 'Følgesedler',
- 'Parts' => 'Dele',
- 'Payment' => 'Betaling',
- 'Payments' => 'Betalinger',
- 'Pick List' => 'Pakkeliste',
- 'Pick Lists' => 'Pakkelister',
- 'Preferences' => 'Præferencer',
- 'Pricegroups' => 'Prisgrupper',
- 'Print' => 'Udskriv',
- 'Projects' => 'Projekter',
- 'Purchase Order' => 'Indkøbsordre',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Quotation' => 'Tilbud',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsønske',
- 'RFQs' => 'Tilbudsønsker',
- 'Receipt' => 'Kvittering',
- 'Receipts' => 'Kvitteringer',
- 'Receive' => 'Modtagelse',
- 'Reconciliation' => 'Afstemning',
- 'Reports' => 'Rapporter',
- 'SIC' => 'SIC',
- 'Sale' => 'Salg',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Save to File' => 'Gem i fil',
- 'Search' => 'Søg',
- 'Send by E-Mail' => 'Sendt med epost',
- 'Services' => 'Tjenester',
- 'Ship' => 'Afsend',
- 'Shipping' => 'Afsendelse',
- 'Statement' => 'Opgørelse',
- 'Stock Assembly' => 'Lagr sammensætning',
- 'Stylesheet' => 'Stilark',
- 'System' => 'System',
- 'Tax collected' => 'Skat opkrævet',
- 'Tax paid' => 'Skat betalt',
- 'Text Templates' => 'Skabeloner for tekst',
- 'Transactions' => 'Posteringer',
- 'Transfer' => 'Overførsel',
- 'Translations' => 'Oversættelser',
- 'Trial Balance' => 'Foreløbig status',
- 'Type of Business' => 'Type forretning',
- 'Vendor Invoice' => 'Indkøbsfaktura',
- 'Vendors' => 'Leverandører',
- 'Version' => 'Version',
- 'Warehouses' => 'Varehuse',
- 'Work Order' => 'Arbejdsnummer',
- 'Work Orders' => 'Arbejdsordrer',
- 'Yearend' => 'Årsslutning',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/oe b/sql-ledger/locale/dk/oe
deleted file mode 100644
index 2e6c30e..0000000
--- a/sql-ledger/locale/dk/oe
+++ /dev/null
@@ -1,306 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-menu',
- 'Add Exchange Rate' => 'Ny vekselkurs',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Vendor Invoice' => 'Ny indkøbsfaktura',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Order Number' => 'Er du sikker på at du vil fjerne ordrenummer',
- 'Are you sure you want to delete Quotation Number' => 'Er du sikker på at du vil slette tilbudsnummer',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Business' => 'Forretning',
- 'C' => 'C',
- 'Cannot delete order!' => 'Kan ikke slette ordre!',
- 'Cannot delete quotation!' => 'Kan ikke slette tilbud',
- 'Cannot save order!' => 'Kan ikke gemme ordre!',
- 'Cannot save quotation!' => 'Kan ikke gemme tilbud',
- 'Cc' => 'Kopi',
- 'City' => 'By',
- 'Closed' => 'Afsluttet',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekræft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Could not save!' => 'Kunne ikke gemme!',
- 'Could not transfer Inventory!' => 'Kunne ikke overføre lager!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Date Received' => 'Modtagelsesdato',
- 'Date received missing!' => 'Modtagelsesdato mangler!',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Done' => 'Færdig',
- 'E-mail' => 'E-post',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit Purchase Order' => 'Redigér indkøbsordre',
- 'Edit Quotation' => 'Redigér tilbud',
- 'Edit Request for Quotation' => 'Redigér ønske om tilbud',
- 'Edit Sales Order' => 'Redigér salgsordre',
- 'Employee' => 'Medarbejder',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'ID' => 'ID',
- 'In-line' => 'Indlejret',
- 'Include in Report' => 'Inkludér i rapport',
- 'Internal Notes' => 'Interne noter',
- 'Inventory saved!' => 'Lager gemt!',
- 'Inventory transferred!' => 'Lager overført!',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Leder',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Message' => 'Besked',
- 'Month' => 'Måned',
- 'No.' => 'Nummer',
- 'Notes' => 'Bemærkninger',
- 'Nothing entered!' => 'Ingenting indtastet!',
- 'Nothing to transfer!' => 'Intet at overføre!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'O' => 'O',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åbn',
- 'Order' => 'Ordre',
- 'Order Date' => 'Ordredato',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'Order deleted!' => 'Ordre slettet',
- 'Order processed!' => 'Ordre behandlet!',
- 'Order saved!' => 'Ordre gemt',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Part' => 'Vare',
- 'Part Number' => 'Varenummer',
- 'Period' => 'Periode',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Udskriv',
- 'Print and Save' => 'Udskriv og gem',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Purchase Order' => 'Indkøbsordre',
- 'Purchase Orders' => 'Indkøbsordrer',
- 'Qty' => 'Mængde',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation ' => 'Tilbud ',
- 'Quotation Date' => 'Tilbudsdato',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Quotation deleted!' => 'Tilbud slettet!',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsønske',
- 'RFQ ' => 'Tilbudsønske ',
- 'RFQ Number' => 'Nummer for tilbudsønske',
- 'Recd' => 'Modtaget',
- 'Receive Merchandise' => 'Modtagelse af varer',
- 'Remaining' => 'Resterer',
- 'Request for Quotation' => 'Ønske om tilbud',
- 'Request for Quotations' => 'Ønske om tilbud',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Salesperson' => 'Sælger',
- 'Save' => 'Gem',
- 'Save as new' => 'Gem som ny',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Afsend',
- 'Ship Merchandise' => 'Afsend varer',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Shipping Date' => 'Afsendelsesdato',
- 'Shipping Date missing!' => 'Afsendelsesdato mangler!',
- 'Shipping Point' => 'Afsendelsessted',
- 'State/Province' => 'Stat/provins',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Afgift/Moms',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'Terms' => 'Netto',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabat',
- 'Transfer' => 'Overførsel',
- 'Transfer Inventory' => 'Oversigt over overførsler',
- 'Transfer to' => 'Overfør til',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Valid until' => 'Gældende indtil',
- 'Vendor' => 'Leverandør',
- 'Vendor Invoice' => 'Indkøbsfaktura',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Warehouse' => 'Varehus',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'days' => 'dage',
- 'ea' => 'stk',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'færdig' => 'done',
- 'e_post' => 'e_mail',
- 'udskriv' => 'print',
- 'udskriv_og_gem' => 'print_and_save',
- 'indkøbsordre' => 'purchase_order',
- 'tilbud' => 'quotation',
- 'tilbud_' => 'quotation_',
- 'tilbudsønske' => 'rfq',
- 'tilbudsønske_' => 'rfq_',
- 'salgsfaktura' => 'sales_invoice',
- 'salgsordre' => 'sales_order',
- 'gem' => 'save',
- 'gem_som_ny' => 'save_as_new',
- 'send_til' => 'ship_to',
- 'overførsel' => 'transfer',
- 'opdatér' => 'update',
- 'indkøbsfaktura' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/pe b/sql-ledger/locale/dk/pe
deleted file mode 100644
index 54c4606..0000000
--- a/sql-ledger/locale/dk/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-menu',
- 'Add Group' => 'Ny gruppe',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nyt projekt',
- 'All' => 'Alt',
- 'Continue' => 'Fortsæt',
- 'Delete' => 'Fjern',
- 'Description' => 'Beskrivelse',
- 'Description Translations' => 'Oversættelser af beskrivelse',
- 'Edit Description Translations' => 'Redigér oversættelser af beskrivelser',
- 'Edit Group' => 'Redigér gruppe',
- 'Edit Pricegroup' => 'Redigér prisgruppe',
- 'Edit Project' => 'Redigér præferencer for',
- 'Group' => 'Gruppe',
- 'Group Translations' => 'Gruppeoversættelser',
- 'Group deleted!' => 'Gruppe slettet!',
- 'Group missing!' => 'Gruppe mangler!',
- 'Group saved!' => 'Gruppe gemt!',
- 'Groups' => 'Grupper',
- 'Language' => 'Sprog',
- 'Languages not defined!' => 'Sprog ikke definerede!',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Fritstående',
- 'Pricegroup' => 'Prisgruppe',
- 'Pricegroup deleted!' => 'Prisgruppe slettet!',
- 'Pricegroup missing!' => 'Prisgruppe mangler!',
- 'Pricegroup saved!' => 'Prisgruppe gemt!',
- 'Pricegroups' => 'Prisgrupper',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'Oversættelser af projektbeskrivelse',
- 'Project Number' => 'Projektnummer',
- 'Project Number missing!' => 'Projektnummer mangler!',
- 'Project deleted!' => 'Projekt slettet!',
- 'Project saved!' => 'Projekt gemt!',
- 'Projects' => 'Projekter',
- 'Save' => 'Gem',
- 'Translation' => 'Oversættelse',
- 'Translation deleted!' => 'Oversættelser slettet!',
- 'Translations saved!' => 'Oversættelser gemt!',
- 'Update' => 'Opdatér',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'ny_gruppe' => 'add_group',
- 'ny_prisgruppe' => 'add_pricegroup',
- 'nyt_projekt' => 'add_project',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'gem' => 'save',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/pos b/sql-ledger/locale/dk/pos
deleted file mode 100644
index e2b7673..0000000
--- a/sql-ledger/locale/dk/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Add POS Invoice' => 'Ny POS faktura',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Change' => 'Ændr',
- 'Continue' => 'Fortsæt',
- 'Credit Limit' => 'Kreditgrænse',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kunde mangler!',
- 'Delete' => 'Fjern',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Edit POS Invoice' => 'Redigér POS faktura',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Extended' => 'Udvidet',
- 'From' => 'Fra',
- 'Language' => 'Sprog',
- 'Memo' => 'Note',
- 'Month' => 'Måned',
- 'Number' => 'Nummer',
- 'Open' => 'Åbn',
- 'Paid' => 'Betalt',
- 'Period' => 'Periode',
- 'Post' => 'Bogfør',
- 'Posted!' => 'Bogført!',
- 'Price' => 'Pris',
- 'Print' => 'Udskriv',
- 'Printed' => 'Udskrevet',
- 'Qty' => 'Mængde',
- 'Quarter' => 'Kvartal',
- 'Receipts' => 'Kvitteringer',
- 'Record in' => 'Bogfør på',
- 'Remaining' => 'Resterer',
- 'Salesperson' => 'Sælger',
- 'Screen' => 'Skærm',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'bogfør' => 'post',
- 'udskriv' => 'print',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/ps b/sql-ledger/locale/dk/ps
deleted file mode 100644
index ca38539..0000000
--- a/sql-ledger/locale/dk/ps
+++ /dev/null
@@ -1,341 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldersfordeling',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Outstanding' => 'Udestående debitorer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-menu',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Påløbet',
- 'Add AR Transaction' => 'Ny debitorpostering',
- 'Add POS Invoice' => 'Ny POS faktura',
- 'Add Purchase Order' => 'Ny indkøbsordre',
- 'Add Quotation' => 'Nyt tilbud',
- 'Add Request for Quotation' => 'Nyt tilbudsønske',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle konti',
- 'Amount' => 'Beløb',
- 'Amount Due' => 'Forfaldent',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på du vil fjerne fakturanummer',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på du vil fjerne postering',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Status',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Varelager',
- 'Bin List' => 'Sendings-list',
- 'Business' => 'Forretning',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bogføre faktura for en afsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bogføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bogføre betaling for en afsluttet periode',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bogføre postering for en afsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bogføre postering!',
- 'Cash' => 'Kontanter',
- 'Cc' => 'Kopi',
- 'Change' => 'Ændr',
- 'Check' => 'Check',
- 'City' => 'By',
- 'Closed' => 'Afsluttet',
- 'Company Name' => 'Firmanavn',
- 'Compare to' => 'Sammenlign med',
- 'Confirm!' => 'Bekræft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgrænse',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Aktuel',
- 'Current Earnings' => 'Aktuelle indtægter',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalpladser',
- 'Delete' => 'Fjern',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalje',
- 'Due Date' => 'Forfaldsdato',
- 'Due Date missing!' => 'Forfaldsdato mangler!',
- 'E-mail' => 'E-post',
- 'E-mail Statement to' => 'Send opgørelse til',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'E-mailed' => 'Sendt per e-post',
- 'Edit AR Transaction' => 'Redigér debitorpostering',
- 'Edit POS Invoice' => 'Redigér POS faktura',
- 'Edit Sales Invoice' => 'Redigér salgsfaktura',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekselkurs',
- 'Exchange rate for payment missing!' => 'Valutakurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekselkurs mangler!',
- 'Extended' => 'Udvidet',
- 'Fax' => 'Fax',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Gruppedele',
- 'Heading' => 'Overskrift',
- 'ID' => 'ID',
- 'In-line' => 'Indlejret',
- 'Include Exchange Rate Difference' => 'Inkludér difference i vekselkurs',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income Statement' => 'Driftsregnskab',
- 'Internal Notes' => 'Interne noter',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bogført!',
- 'Invoice processed!' => 'Fakturaer behandlet!',
- 'Item not on file!' => 'Enkeltdel er ikke i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Sprog',
- 'Manager' => 'Leder',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Message' => 'Besked',
- 'Method' => 'Metode',
- 'Month' => 'Måned',
- 'N/A' => 'I/T',
- 'No.' => 'Nummer',
- 'Non-taxable Purchases' => 'Ikke-beskattede køb',
- 'Non-taxable Sales' => 'Ikke-beskattede salg',
- 'Notes' => 'Bemærkninger',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nothing to print!' => 'Ingenting at udskrive!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tal mangler i række',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åbn',
- 'Order' => 'Ordre',
- 'Order Date missing!' => 'Ordredato mangler',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for pakkeliste mangler!',
- 'Packing List Number missing!' => 'Nummer for pakkeliste mangler!',
- 'Paid' => 'Betalt',
- 'Part' => 'Vare',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakkeliste',
- 'Post' => 'Bogfør',
- 'Post as new' => 'Bogfør som ny',
- 'Posted!' => 'Bogført!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Udskriv',
- 'Print and Post' => 'Udskriv og send',
- 'Printed' => 'Udskrevet',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projektnummer',
- 'Project Transactions' => 'Projektposteringer',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Purchase Order' => 'Indkøbsordre',
- 'Qty' => 'Mængde',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Køet',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Tilbudsdato mangler!',
- 'Quotation Number missing!' => 'Tilbudsnummer mangler!',
- 'Recd' => 'Modtaget',
- 'Receipt' => 'Kvittering',
- 'Receipts' => 'Kvitteringer',
- 'Record in' => 'Bogfør på',
- 'Remaining' => 'Resterer',
- 'Report for' => 'Rapport for',
- 'Required by' => 'Bestilt af',
- 'SKU' => 'SKU',
- 'Sales Invoice.' => 'Salgsfaktura.',
- 'Sales Order' => 'Salgsordre',
- 'Salesperson' => 'Sælger',
- 'Screen' => 'Skærm',
- 'Select Printer or Queue!' => 'Vælg printer eller kø',
- 'Select all' => 'Vælg alt',
- 'Select from one of the items below' => 'Vælg fra en af tingene nedenfor, og tryk "Fortsæt"',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select payment' => 'Vælg betaling',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Afsend',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Afsendelsesadresse',
- 'Shipping Point' => 'Afsendelsessted',
- 'Source' => 'Bilag',
- 'Standard' => 'Standard',
- 'State/Province' => 'Stat/provins',
- 'Statement' => 'Opgørelse',
- 'Statement sent to' => 'Opgørelse sendt til',
- 'Statements sent to printer!' => 'Opgørelser sendt til printer',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oversigt',
- 'Tax' => 'Afgift/Moms',
- 'Tax Included' => 'Inkl. afgifter og moms',
- 'Tax collected' => 'Skat opkrævet',
- 'Tax paid' => 'Skat betalt',
- 'Till' => 'Indtil',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabat',
- 'Transaction' => 'Postering',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bogført!',
- 'Translation not on file!' => 'Oversættelse ikke tilgængelig',
- 'Trial Balance' => 'Foreløbig status',
- 'Unit' => 'Enhed',
- 'Update' => 'Opdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbejdsnummer',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'as at' => 'som ved',
- 'ea' => 'stk',
- 'for Period' => 'for perioden',
- 'sent' => 'sendt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debitorpostering' => 'ar_transaction',
- 'fortsæt' => 'continue',
- 'fjern' => 'delete',
- 'e_post' => 'e_mail',
- 'bogfør' => 'post',
- 'bogfør_som_ny' => 'post_as_new',
- 'udskriv' => 'print',
- 'udskriv_og_send' => 'print_and_post',
- 'salgsfaktura.' => 'sales_invoice.',
- 'salgsordre' => 'sales_order',
- 'vælg_alt' => 'select_all',
- 'send_til' => 'ship_to',
- 'opdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/pw b/sql-ledger/locale/dk/pw
deleted file mode 100644
index 50cbd6f..0000000
--- a/sql-ledger/locale/dk/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Fortsæt',
- 'Password' => 'Adgangskode',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'fortsæt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/rc b/sql-ledger/locale/dk/rc
deleted file mode 100644
index 19c5ebf..0000000
--- a/sql-ledger/locale/dk/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-menu',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Åbningsbalance',
- 'Cleared' => 'Udlignet',
- 'Continue' => 'Fortsæt',
- 'Current' => 'Aktuel',
- 'Date' => 'Dato',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decrease' => 'Formindsk',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalje',
- 'Difference' => 'Difference',
- 'Done' => 'Færdig',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Include Exchange Rate Difference' => 'Inkludér difference i vekselkurs',
- 'Increase' => 'Forøg',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Month' => 'Måned',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Out of balance!' => 'Ikke i balance!',
- 'Outstanding' => 'Udestående',
- 'Payment' => 'Betaling',
- 'Period' => 'Periode',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reconciliation' => 'Afstemning',
- 'Reconciliation Report' => 'Afstemningsrapport',
- 'Select all' => 'Vælg alt',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Statement Balance' => 'Balanceopgørelse',
- 'Summary' => 'Oversigt',
- 'To' => 'til',
- 'Update' => 'Opdatér',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'fortsæt' => 'continue',
- 'færdig' => 'done',
- 'vælg_alt' => 'select_all',
- 'opdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/dk/rp b/sql-ledger/locale/dk/rp
deleted file mode 100644
index 94d5636..0000000
--- a/sql-ledger/locale/dk/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldersfordeling',
- 'AR Aging' => 'Aldersfordeling',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-menu',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Påløbet',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle konti',
- 'Amount' => 'Beløb',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Bilag',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Status',
- 'Bcc' => 'Blind kopi',
- 'Cash' => 'Kontanter',
- 'Cc' => 'Kopi',
- 'Compare to' => 'Sammenlign med',
- 'Continue' => 'Fortsæt',
- 'Copies' => 'Kopier',
- 'Credit' => 'Kredit',
- 'Curr' => 'Val',
- 'Current' => 'Aktuel',
- 'Current Earnings' => 'Aktuelle indtægter',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde ikke i databasen!',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalpladser',
- 'Department' => 'Afdeling',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalje',
- 'Due Date' => 'Forfaldsdato',
- 'E-mail' => 'E-post',
- 'E-mail Statement to' => 'Send opgørelse til',
- 'E-mail address missing!' => 'E-post-adresse mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Overskrift',
- 'ID' => 'ID',
- 'In-line' => 'Indlejret',
- 'Include Exchange Rate Difference' => 'Inkludér difference i vekselkurs',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income Statement' => 'Driftsregnskab',
- 'Invoice' => 'Faktura',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Sprog',
- 'Mar' => 'mar',
- 'March' => 'marts',
- 'May' => 'maj',
- 'May ' => 'maj ',
- 'Memo' => 'Note',
- 'Message' => 'Besked',
- 'Method' => 'Metode',
- 'Month' => 'Måned',
- 'N/A' => 'I/T',
- 'Non-taxable Purchases' => 'Ikke-beskattede køb',
- 'Non-taxable Sales' => 'Ikke-beskattede salg',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order' => 'Ordre',
- 'PDF' => 'PDF',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Postscript' => 'Postscript',
- 'Print' => 'Udskriv',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projektnummer',
- 'Project Transactions' => 'Projektposteringer',
- 'Project not on file!' => 'Projekt ikke i databasen!',
- 'Quarter' => 'Kvartal',
- 'Receipts' => 'Kvitteringer',
- 'Report for' => 'Rapport for',
- 'Salesperson' => 'Sælger',
- 'Screen' => 'Skærm',
- 'Select all' => 'Vælg alt',
- 'Select from one of the names below' => 'Vælg en af navnene nedenfor',
- 'Select from one of the projects below' => 'Vælg et af projekterne nedenfor',
- 'Select postscript or PDF!' => 'Vælg postscript eller PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Standard' => 'Standard',
- 'Statement' => 'Opgørelse',
- 'Statement sent to' => 'Opgørelse sendt til',
- 'Statements sent to printer!' => 'Opgørelser sendt til printer',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oversigt',
- 'Tax' => 'Afgift/Moms',
- 'Tax collected' => 'Skat opkrævet',
- 'Tax paid' => 'Skat betalt',
- 'Till' => 'Indtil',
- 'To' => 'til',
- 'Total' => 'I alt',
- 'Trial Balance' => 'Foreløbig status',
- 'Vendor' => 'Leverandør',
- 'Vendor not on file!' => 'Leverandør ikke i databasen!',
- 'Year' => 'År',
- 'as at' => 'som ved',
- 'for Period' => 'for perioden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsæt' => 'continue',
- 'e_post' => 'e_mail',
- 'udskriv' => 'print',
- 'vælg_alt' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/COPYING b/sql-ledger/locale/ec/COPYING
deleted file mode 100644
index f28fd49..0000000
--- a/sql-ledger/locale/ec/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Spanish (Ecuador) texts:
-#
-# Author: Technical <tech@mundomovil.us>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/ec/LANGUAGE b/sql-ledger/locale/ec/LANGUAGE
deleted file mode 100644
index 141347f..0000000
--- a/sql-ledger/locale/ec/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (Ecuador)
diff --git a/sql-ledger/locale/ec/Num2text b/sql-ledger/locale/ec/Num2text
deleted file mode 100644
index 70d4db6..0000000
--- a/sql-ledger/locale/ec/Num2text
+++ /dev/null
@@ -1,210 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'cero',
- 1 => 'un',
- '1o' => 'uno',
- 2 => 'dos',
- 3 => 'tres',
- 4 => 'cuatro',
- 5 => 'cinco',
- 6 => 'seis',
- 7 => 'siete',
- 8 => 'ocho',
- 9 => 'nueve',
- 10 => 'diez',
- 11 => 'once',
- 12 => 'doce',
- 13 => 'trece',
- 14 => 'catorce',
- 15 => 'quince',
- 16 => 'dieciséis',
- 17 => 'diecisiete',
- 18 => 'dieciocho',
- 19 => 'diecinueve',
- 20 => 'veinte',
- 21 => 'veintiún',
- '21o' => 'veintiuno',
- 22 => 'veintidós',
- 23 => 'veintitrés',
- 24 => 'veinticuatro',
- 25 => 'veinticinco',
- 26 => 'veintiséis',
- 27 => 'veintisiete',
- 28 => 'veintiocho',
- 29 => 'veintinueve',
- 30 => 'treinta',
- 40 => 'cuarenta',
- 50 => 'cincuenta',
- 60 => 'sesenta',
- 70 => 'setenta',
- 80 => 'ochenta',
- 90 => 'noventa',
- 500 => 'quinientos',
- 700 => 'setecientos',
- 900 => 'novecientos',
- 10**2 => 'ciento',
- 10**3 => 'mil',
- 10**6 => 'millón',
- 10**12 => 'billón',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, $amount;
- my @numblock = ();
- my $stripun = 0;
- my @a = ();
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- # special case for 1000
- if ($numblock[1] eq '1' && $numblock[0] gt '000') {
- # remove first array element from textnumber
- $stripun = 1;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- if ($num[0] == 1) {
- push @textnumber, $self->{numbername}{10**2};
- } else {
- # special case for 500, 700, 900
- if (grep /$num[0]/, (5,7,9)) {
- push @textnumber, $self->{numbername}{"${num[0]}00"};
-
- } else {
-
- # the one from hundreds, append cientos
- push @textnumber, $self->{numbername}{$num[0]}.$self->{numbername}{10**2}.'s';
-
- }
- }
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i], $i);
- } elsif ($numblock[$i] > 0) {
- # ones
- $num = $numblock[$i];
- $num .= 'o' if ($num == 1 && $i == 0);
- push @textnumber, $self->{numbername}{$num};
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- if ($numblock[$i] > 1) {
- if ($i == 2 || $i == 4) {
- $a = $self->{numbername}{$num}."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } elsif ($i == 3) {
- $num = 10**($i * 2);
- $a = "$self->{10**3} $self->{numbername}{$num}"."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } else {
- if ($i == 1) {
- push @textnumber, $self->{numbername}{$num};
- } else {
- push @textnumber, $self->{numbername}{$num}.'s';
- }
- }
- } else {
- push @textnumber, $self->{numbername}{$num};
- }
- }
-
- pop @numblock;
-
- }
-
- shift @textnumber if $stripun;
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount, $i) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 30) {
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $amount .= 'o' if ($num[1] == 1 && $i == 0);
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= " y ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/ec/admin b/sql-ledger/locale/ec/admin
deleted file mode 100644
index 1af5bd9..0000000
--- a/sql-ledger/locale/ec/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Añadir usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'Cannot create Lock!' => 'No se puede crear seguro',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por editar',
- 'Company' => 'Empresa',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear plan de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date Format' => 'Formato de fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit User' => 'Editar usuario',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'Language' => 'Lenguaje',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Bloquear sistema',
- 'Lockfile created!' => 'Sistema bloqueado',
- 'Lockfile removed!' => 'Lockfile removido',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Falta nombre del usuario',
- 'Logout' => 'Salir',
- 'Manager' => 'Gerente',
- 'Menu Width' => 'Ancho de Menú',
- 'Multibyte Encoding' => 'Codificación Multibyte',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas plantillas',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Number Format' => 'Formato de número',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PostGres Admin',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilo',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Unlock System' => 'Unlock sistema',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'does not exist' => 'no existe',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'localhost' => 'máquina local',
- 'locked!' => '¡Asegurado!',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'añadir_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_base_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_base_de_datos' => 'delete_dataset',
- 'bloquear_sistema' => 'lock_system',
- 'entrar' => 'login',
- 'salir' => 'logout',
- 'administración_de_la_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_la_base_de_datos_postgresql' => 'pg_database_administration',
- 'postgres_admin' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_sistema' => 'unlock_system',
- 'actualizar_base_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/all b/sql-ledger/locale/ec/all
deleted file mode 100644
index f9714c5..0000000
--- a/sql-ledger/locale/ec/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Facturas de Proveedores',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR' => 'Facturas de Ventas',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'About' => 'Acerca de',
- 'Above' => 'Arriba',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => '¡Cuenta inexistente!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar rastros Auditables',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Adicionar Negocio',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add Customer' => 'Añadir cliente',
- 'Add Deduction' => 'Añadir Deducción',
- 'Add Department' => 'Adicionar Departamento',
- 'Add Employee' => 'Añadir Empleado',
- 'Add Exchange Rate' => 'Añadir Tasa de Cambio',
- 'Add GIFI' => 'Añadir cuenta RUC',
- 'Add General Ledger Transaction' => 'Añadir Nota de Contabilidad',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Adicionar Mano de Obra',
- 'Add Language' => 'Adicionar lenguage',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Preciogrupal',
- 'Add Project' => 'Añadir proyecto',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add SIC' => 'Adicionar SIC',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir Transacción',
- 'Add User' => 'Añadir usuario',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Add Warehouse' => 'Adicionar Bodega',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de Deducción',
- 'All' => 'Todos',
- 'All Accounts' => 'Todas las Cuentas',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'All Items' => 'Todos los Artículos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Amount missing!' => 'Valor faltante',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => '¿Está seguro que quiere borrar el número de la Cotización?',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está seguro de que quiere borrar las entradas señaladas de la cola?',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Ensamblaje',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro Auditorial removido hasta',
- 'Audit trails disabled' => 'Desabilitados rastros Audiotoriales',
- 'Audit trails enabled' => '¡Iniciado rastros Auditoriales',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => 'Swift',
- 'BOM' => 'Listado de piezas',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Based on' => 'Basado en',
- 'Batch Printing' => 'Sequencia de Impresión',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Beginning Balance' => 'Balance Inicial',
- 'Below' => 'Abajo',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Bin Lists' => 'Listas de Compatimiento',
- 'Books are open' => 'Los libros están abiertos',
- 'Break' => '¡Roto!',
- 'Business' => 'Negocio',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => '¡Negocio borrado!',
- 'Business saved!' => '¡Negocio guardado!',
- 'C' => 'C',
- 'COGS' => 'Costo de los artículos',
- 'Cannot create Lock!' => 'No se puede crear seguro',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No se puede borrar la cotización!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cannot post Payment!' => 'No se puede desplegar Pago',
- 'Cannot post Receipt!' => 'No se puede desplegar Recibo',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Cannot remove files!' => '¡No se puede remover archivos!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '¡No se puede grabar predeterminados!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot save quotation!' => '¡No se puede guardar cotización!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No se puede iniciar opciones multiples para',
- 'Cannot set multiple options for Parts Inventory' => '¡No se puede establecer opciones múltiples para Inventario de Partes',
- 'Cannot set multiple options for Service Items' => '¡No se puede establecer opciones múltiples para Artículos de Servicio!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Revisar Inventario',
- 'Checks' => 'Cheques',
- 'City' => 'Ciudad',
- 'Cleared' => '¡Limpiado!',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por editar',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => 'Código',
- 'Code missing!' => '¡Falta Código!',
- 'Company' => 'Empresa',
- 'Company Name' => 'Nombre de Compañía',
- 'Compare to' => 'Comparar con',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al plan de cuentas',
- 'Cost' => 'Costo',
- 'Cost Center' => 'Centro de Costos',
- 'Could not save pricelist!' => '¡No se puede grabar lista de precios!',
- 'Could not save!' => '¡No se puede grabar!',
- 'Could not transfer Inventory!' => '¡No se puede transferir el Inventario!',
- 'Country' => 'País',
- 'Create Chart of Accounts' => 'Crear plan de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Ganacias Actuales',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => 'Fecha de Recepción',
- 'Date missing!' => '¡Falta la fecha!',
- 'Date received missing!' => '¡Falta Fecha de recepción!',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Decrease' => 'Reducir',
- 'Deduct after' => 'Deducir luego',
- 'Deduction deleted!' => '¡Deducción borrada!',
- 'Deduction saved!' => '¡Guardada Deducción!',
- 'Deductions' => 'Deducciones',
- 'Defaults' => 'Pre-estableciodos',
- 'Defaults saved!' => '¡Guardados Predeterminados!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Department deleted!' => '¡Departamento borrado!',
- 'Department saved!' => '¡Guardado Departamento!',
- 'Departments' => 'Departamentos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducciónes de Descripción',
- 'Description missing!' => '¡Falta descripción!',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Hecho',
- 'Drawing' => 'Reintegro',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Business' => 'Editar Negocio',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Department' => 'Editar Departamento',
- 'Edit Description Translations' => 'Editar Descripciones de Traducciones',
- 'Edit Employee' => 'Editar Empleado',
- 'Edit GIFI' => 'Editar PUC',
- 'Edit General Ledger Transaction' => 'Editar Notas Contables',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra',
- 'Edit Language' => 'Editar Idioma',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit Pricegroup' => 'Editar Precio de Grupo',
- 'Edit Project' => 'Editar proyecto',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Petición de Cotizacion',
- 'Edit SIC' => 'Edita CIS',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Edit Sales Order' => 'Editar cotización',
- 'Edit Service' => 'Editar servicio',
- 'Edit Template' => 'Editar plantilla',
- 'Edit User' => 'Editar usuario',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Edit Vendor Invoice' => 'Editar factura de Proveedor',
- 'Edit Warehouse' => 'Editar bodega',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Empleado',
- 'Employee Number' => '',
- 'Employee deleted!' => '¡Empleado borrado!',
- 'Employee pays' => 'Empleado paga',
- 'Employee saved!' => '¡Empleado salvado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador paga',
- 'Enddate' => 'Fecha Final',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'Tasa de Cambio',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GIFI deleted!' => '¡Borrado el código PUC!',
- 'GIFI missing!' => 'No se ha definido el código PUC',
- 'GIFI saved!' => '¡Guardado el código PUC!',
- 'GL Transaction' => 'Nota de Contabilidad',
- 'General Ledger' => 'Notas de Contabilidad',
- 'Goods & Services' => 'Bienes y servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'Group Translations' => 'Traducciones de Grupo',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Historia',
- 'Home Phone' => 'Teléfono del Hogar',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia de Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingresos',
- 'Income Account' => 'Cuenta de Ingresos',
- 'Income Statement' => 'Estado de Resultados',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Increase' => 'Aumentar',
- 'Individual Items' => 'Artículos individuales',
- 'Internal Notes' => 'Notas Internas',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Inventory saved!' => '¡Inventario salvado!',
- 'Inventory transferred!' => '¡Inventario transferido!',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => '¡Factura Procesada!',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Item already on pricelist!' => '¡Artículo existe en lista de precios!',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Artículos',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '¡Idiocmas borrados!',
- 'Language saved!' => '¡Idiomas grabados!',
- 'Languages' => 'Idiomas',
- 'Languages not defined!' => '¡Idiomas no definidos!',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Leadtime' => 'Plazo',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Line Total' => 'Total de la línea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => 'Lista',
- 'List Accounts' => 'Listar Plan Único de Cuentas',
- 'List Businesses' => 'Lista de Negocios',
- 'List Departments' => 'Lista de Departamentos',
- 'List GIFI' => 'Listar PUC',
- 'List Languages' => 'Lista de Lenguages',
- 'List Price' => 'Precio de lista',
- 'List Projects' => 'Lista de Proyectos',
- 'List SIC' => 'Lista SIC',
- 'List Transactions' => 'Listar transacciones',
- 'List Warehouses' => 'Lista de Bodegas',
- 'Lock System' => 'Bloquear sistema',
- 'Lockfile created!' => 'Sistema bloqueado',
- 'Lockfile removed!' => 'Lockfile removido',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Falta nombre del usuario',
- 'Logout' => 'Salir',
- 'Make' => 'Marca',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '¡Impresas las entradas marcadas!',
- 'Markup' => 'Margen de Beneficio',
- 'Maximum' => 'Máximo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Ancho de Menú',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => 'Mes',
- 'Multibyte Encoding' => 'Codificación Multibyte',
- 'N/A' => 'Sin respuesta',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'New Templates' => 'Nuevas plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'No.' => 'No',
- 'Non-taxable' => 'No Grabable',
- 'Non-taxable Purchases' => 'Compras excentas de Impuestos',
- 'Non-taxable Sales' => 'Ventas excentas de Impuestos',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '¡Nada ingresado!',
- 'Nothing outstanding for ' => 'Nada inusual para',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '¡Nada para Transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Entry' => 'Cotizaciones y pedidos',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden Procesada!',
- 'Order saved!' => 'Pedido guardado',
- 'Orphaned' => 'Independiente',
- 'Out of balance transaction!' => '¡Transacción Fuera de BAlance',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'PDF' => 'PDF',
- 'POS' => 'PdV',
- 'POS Invoice' => 'Factura PdV',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Packing Lists' => 'Lista de Empaque',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número de Parte',
- 'Partnumber' => '',
- 'Parts' => 'Artículos',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Pagos',
- 'Payment' => 'Comprobante de Egreso',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Vencimientos impagados',
- 'Payroll Deduction' => 'Descuento del Rol de Pagos',
- 'Period' => 'Período',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PostGres Admin',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Pick Lists' => 'Listas de Selección',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Prepayment' => 'Prepago',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Preciogrupo',
- 'Pricegroup deleted!' => '¡Preciogrupo borrado!',
- 'Pricegroup missing!' => '¡Preciogrupo desaparecido!',
- 'Pricegroup saved!' => '¡Preciogrupo salvado',
- 'Pricegroups' => 'Preciogrupos',
- 'Pricelist' => 'Lista de Precios',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Muestre',
- 'Print and Save' => 'Imprimir y Salve',
- 'Printed' => 'Impreso',
- 'Printer' => 'Impresora',
- 'Printing ... ' => 'Imprimiendo...',
- 'Profit Center' => 'Centro de Ganancias',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducciones de Descripción de Proyecto',
- 'Project Number' => 'número del projecto',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project Transactions' => 'Traducciones de Proyecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '¡La cantidad exede la unidades disponibles en inventario!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => 'Cotización ',
- 'Quotation Date' => 'Fecha de Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'R' => 'Reconciliado',
- 'RFQ' => 'Requerimiento de Cotización',
- 'RFQ ' => 'Requerimiento de Cotización ',
- 'RFQ Number' => 'Número de Requerimiento de Cotización',
- 'RFQs' => 'Requerimiento de Cotizaciónes',
- 'ROP' => 'Tope de envio',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => '¡Recibo desplegado!',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'Cobros',
- 'Receive' => 'Cobro',
- 'Receive Merchandise' => 'Recepción de Mercadería',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Remaining' => 'Resto',
- 'Remove' => 'Remover',
- 'Remove Audit trails up to' => 'Remover rastros de Audición hasta',
- 'Removed spoolfiles!' => 'Archivos de ',
- 'Removing marked entries from queue ...' => 'Removiendo entradas marcadas de la cola...',
- 'Report for' => 'Informe para',
- 'Reports' => 'Informes',
- 'Request for Quotation' => 'Pedido de Cotización',
- 'Request for Quotations' => 'Pedido de Cotizaciónes',
- 'Required by' => 'Solicitado por',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SIC' => 'Código Industrial Estandard',
- 'SIC deleted!' => '¡CIS borrado!',
- 'SIC saved!' => '¡CIS grabado!',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'SSN' => 'Número de Seguro Social',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoice ' => 'Factura de venta ',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => 'Factura de venta.',
- 'Sales Invoices' => 'Facturas de Ventas',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => 'Lista de Precios Guardada',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en un archivo',
- 'Screen' => 'Pantalla',
- 'Search' => 'Buscar',
- 'Select' => 'Seleccione',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select all' => 'Seleccione todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Venta',
- 'Sell Price' => 'Precio de venta',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Serial Number' => 'Número Serie',
- 'Service' => 'Servicio',
- 'Service Items' => 'Servicios',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar plantillas',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Envío de Mercadería',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping' => 'Despacho',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Shipping Date' => 'Fecha de Embarque',
- 'Shipping Date missing!' => '¡Falta Fecha de Embarque!',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => 'Archivo de carrete',
- 'Standard' => 'Estándard',
- 'Standard Industrial Codes' => 'Códigos Standart Industriales',
- 'Startdate' => 'FechaInicio',
- 'State' => 'Estado',
- 'State/Province' => 'Estado/Provincia',
- 'Statement' => 'Estado de cuenta',
- 'Statement Balance' => 'Balance de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'Sub-contract GIFI' => 'RUC',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resúmen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuestos',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'Número de Impuesto',
- 'Tax Number / SSN' => 'Número de Impuesto / SSN',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Taxable' => 'Impuestos gravables',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Términos',
- 'Text Templates' => 'Plantillas de Texto',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Top Level' => 'Nivel superior',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento por Intercambio',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => '¡Traducción borrada!',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Translations' => 'Traducciones',
- 'Translations saved!' => 'Traducciones guardadas',
- 'Trial Balance' => 'Balance de comprobación',
- 'Type of Business' => 'Tipo de Negocio',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Unlock sistema',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Updated' => '¡Actualizado!',
- 'Upgrading to Version' => 'Actualizando a Versión',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => 'Historia de Proveedor',
- 'Vendor Invoice' => 'Factura de proveedor',
- 'Vendor Invoice ' => 'Factura de proveedor ',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => 'Factura de proveedor.',
- 'Vendor Invoices' => 'Facturas de proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => 'Bodega',
- 'Warehouse deleted!' => '¡Bodega borrada',
- 'Warehouse saved!' => '¡Bodega grabada!',
- 'Warehouses' => 'Bodegas',
- 'Warning!' => '¡Precaución!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Work Phone' => 'Teléfono del trabajo',
- 'Year' => 'Año',
- 'Yearend' => 'Fin de año',
- 'Yearend date missing!' => '¡Falta Fecha de Fin de Año!',
- 'Yearend posted!' => '¡Fin de Año fijado!',
- 'Yearend posting failed!' => '¡Falló fijación de Fin de año',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No ha introducido un nombre',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'as at' => 'al',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => 'hecho',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'is not a member!' => 'no es miembro',
- 'localhost' => 'máquina local',
- 'locked!' => '¡Asegurado!',
- 'posted!' => 'fijado',
- 'sent' => 'enviado',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/am b/sql-ledger/locale/ec/am
deleted file mode 100644
index 3219415..0000000
--- a/sql-ledger/locale/ec/am
+++ /dev/null
@@ -1,249 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AR' => 'Facturas de Ventas',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => '¡Cuenta inexistente!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar rastros Auditables',
- 'Add Account' => 'Añadir cuenta',
- 'Add Business' => 'Adicionar Negocio',
- 'Add Department' => 'Adicionar Departamento',
- 'Add GIFI' => 'Añadir cuenta RUC',
- 'Add Language' => 'Adicionar lenguage',
- 'Add SIC' => 'Adicionar SIC',
- 'Add Warehouse' => 'Adicionar Bodega',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro Auditorial removido hasta',
- 'Audit trails disabled' => 'Desabilitados rastros Audiotoriales',
- 'Audit trails enabled' => '¡Iniciado rastros Auditoriales',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Books are open' => 'Los libros están abiertos',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => '¡Negocio borrado!',
- 'Business saved!' => '¡Negocio guardado!',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '¡No se puede grabar predeterminados!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No se puede iniciar opciones multiples para',
- 'Cannot set multiple options for Parts Inventory' => '¡No se puede establecer opciones múltiples para Inventario de Partes',
- 'Cannot set multiple options for Service Items' => '¡No se puede establecer opciones múltiples para Artículos de Servicio!',
- 'Cash' => 'Efectivo',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Code' => 'Código',
- 'Code missing!' => '¡Falta Código!',
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Copy to COA' => 'Copiar al plan de cuentas',
- 'Cost Center' => 'Centro de Costos',
- 'Credit' => 'Crédito',
- 'Customer Number' => 'Número de Cliente',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Dataset' => 'Base de datos',
- 'Date Format' => 'Formato de fecha',
- 'Debit' => 'Débito',
- 'Defaults saved!' => '¡Guardados Predeterminados!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Department deleted!' => '¡Departamento borrado!',
- 'Department saved!' => '¡Guardado Departamento!',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta descripción!',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Business' => 'Editar Negocio',
- 'Edit Department' => 'Editar Departamento',
- 'Edit GIFI' => 'Editar PUC',
- 'Edit Language' => 'Editar Idioma',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit SIC' => 'Edita CIS',
- 'Edit Template' => 'Editar plantilla',
- 'Edit Warehouse' => 'Editar bodega',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GIFI deleted!' => '¡Borrado el código PUC!',
- 'GIFI missing!' => 'No se ha definido el código PUC',
- 'GIFI saved!' => '¡Guardado el código PUC!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingresos',
- 'Income Account' => 'Cuenta de Ingresos',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '¡Idiocmas borrados!',
- 'Language saved!' => '¡Idiomas grabados!',
- 'Languages' => 'Idiomas',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Link' => 'Enlaces',
- 'Menu Width' => 'Ancho de Menú',
- 'Method' => 'Método',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Payables' => 'Pagos',
- 'Payment' => 'Comprobante de Egreso',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Printer' => 'Impresora',
- 'Profit Center' => 'Centro de Ganancias',
- 'RFQ Number' => 'Número de Requerimiento de Cotización',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Cobros',
- 'Reference' => 'Referencia',
- 'Remove Audit trails up to' => 'Remover rastros de Audición hasta',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'SIC deleted!' => '¡CIS borrado!',
- 'SIC saved!' => '¡CIS grabado!',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Servicios',
- 'Signature' => 'Firma',
- 'Standard Industrial Codes' => 'Códigos Standart Industriales',
- 'Stylesheet' => 'Hoja de estilo',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuestos',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Type of Business' => 'Tipo de Negocio',
- 'User' => 'Usuario',
- 'Vendor Number' => 'Número de Proveedor',
- 'Version' => 'Versión',
- 'Warehouse deleted!' => '¡Bodega borrada',
- 'Warehouse saved!' => '¡Bodega grabada!',
- 'Warehouses' => 'Bodegas',
- 'Weight Unit' => 'Unidad de peso',
- 'Yearend' => 'Fin de año',
- 'Yearend date missing!' => '¡Falta Fecha de Fin de Año!',
- 'Yearend posted!' => '¡Fin de Año fijado!',
- 'Yearend posting failed!' => '¡Falló fijación de Fin de año',
- 'Yes' => 'Si',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'localhost' => 'máquina local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'añadir_cuenta' => 'add_account',
- 'adicionar_negocio' => 'add_business',
- 'adicionar_departamento' => 'add_department',
- 'adicionar_lenguage' => 'add_language',
- 'adicionar_sic' => 'add_sic',
- 'adicionar_bodega' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_plan_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ap b/sql-ledger/locale/ec/ap
deleted file mode 100644
index 39d6ec6..0000000
--- a/sql-ledger/locale/ec/ap
+++ /dev/null
@@ -1,170 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Employee' => 'Colaborador/Empleado',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Muestre',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice.' => 'Factura de proveedor.',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion_proveedor' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_muestre' => 'print_and_post',
- 'actualizar' => 'update',
- 'factura_de_proveedor.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ar b/sql-ledger/locale/ec/ar
deleted file mode 100644
index 5e9500e..0000000
--- a/sql-ledger/locale/ec/ar
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Muestre',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Sales Invoice.' => 'Factura de venta.',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Envio por',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_muestre' => 'print_and_post',
- 'factura_de_venta.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/arap b/sql-ledger/locale/ec/arap
deleted file mode 100644
index 2295bc1..0000000
--- a/sql-ledger/locale/ec/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/arapprn b/sql-ledger/locale/ec/arapprn
deleted file mode 100644
index 678d5b0..0000000
--- a/sql-ledger/locale/ec/arapprn
+++ /dev/null
@@ -1,34 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Memo' => 'Memo',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impreso',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/bp b/sql-ledger/locale/ec/bp
deleted file mode 100644
index b96660f..0000000
--- a/sql-ledger/locale/ec/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está seguro de que quiere borrar las entradas señaladas de la cola?',
- 'Bin Lists' => 'Listas de Compatimiento',
- 'Cannot remove files!' => '¡No se puede remover archivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Number' => 'Número de factura',
- 'Marked entries printed!' => '¡Impresas las entradas marcadas!',
- 'Month' => 'Mes',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Packing Lists' => 'Lista de Empaque',
- 'Period' => 'Período',
- 'Pick Lists' => 'Listas de Selección',
- 'Print' => 'Imprimir',
- 'Printing ... ' => 'Imprimiendo...',
- 'Purchase Orders' => 'Pedidos',
- 'Quarter' => 'Trimestre',
- 'Quotation' => 'Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQs' => 'Requerimiento de Cotizaciónes',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referencia',
- 'Remove' => 'Remover',
- 'Removed spoolfiles!' => 'Archivos de ',
- 'Removing marked entries from queue ...' => 'Removiendo entradas marcadas de la cola...',
- 'Sales Invoices' => 'Facturas de Ventas',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Select all' => 'Seleccione todo',
- 'Spoolfile' => 'Archivo de carrete',
- 'To' => 'Hasta ',
- 'Vendor' => 'Proveedor',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'done' => 'hecho',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'remover' => 'remove',
- 'seleccione_todo' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ca b/sql-ledger/locale/ec/ca
deleted file mode 100644
index b4b2533..0000000
--- a/sql-ledger/locale/ec/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Include in Report' => 'Incluir en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Listar transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Period' => 'Período',
- 'Project Number' => 'número del projecto',
- 'Quarter' => 'Trimestre',
- 'R' => 'Reconciliado',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/cp b/sql-ledger/locale/ec/cp
deleted file mode 100644
index fd79cf6..0000000
--- a/sql-ledger/locale/ec/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AR' => 'Facturas de Ventas',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Cannot post Payment!' => 'No se puede desplegar Pago',
- 'Cannot post Receipt!' => 'No se puede desplegar Recibo',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta la fecha!',
- 'Department' => 'Departamento',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Invoice' => 'Factura de Venta',
- 'Invoices' => 'Facturas',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Nada inusual para',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Comprobante de Egreso',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Prepago',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Queue' => 'Cola',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => '¡Recibo desplegado!',
- 'Screen' => 'Pantalla',
- 'Select' => 'Seleccione',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Source' => 'Fuente',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ct b/sql-ledger/locale/ec/ct
deleted file mode 100644
index d9fcf4b..0000000
--- a/sql-ledger/locale/ec/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Accounting Menu' => 'Menú general',
- 'Add Customer' => 'Añadir cliente',
- 'Add Vendor' => 'Añadir proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'BIC' => 'Swift',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Break' => '¡Roto!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de Compañía',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Cost' => 'Costo',
- 'Could not save pricelist!' => '¡No se puede grabar lista de precios!',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo electrónico',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Employee' => 'Colaborador/Empleado',
- 'Enddate' => 'Fecha Final',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Group' => 'Grupo',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura de Venta',
- 'Item already on pricelist!' => '¡Artículo existe en lista de precios!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Language' => 'Lenguaje',
- 'Leadtime' => 'Plazo',
- 'Manager' => 'Gerente',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Independiente',
- 'Part Number' => 'Número de Parte',
- 'Phone' => 'Teléfono',
- 'Pricegroup' => 'Preciogrupo',
- 'Pricelist' => 'Lista de Precios',
- 'Project Number' => 'número del projecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Requerimiento de Cotización',
- 'Request for Quotations' => 'Pedido de Cotizaciónes',
- 'SIC' => 'Código Industrial Estandard',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de Ventas',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => 'Lista de Precios Guardada',
- 'Search' => 'Buscar',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sell Price' => 'Precio de venta',
- 'Serial Number' => 'Número Serie',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Startdate' => 'FechaInicio',
- 'State' => 'Estado',
- 'State/Province' => 'Estado/Provincia',
- 'Sub-contract GIFI' => 'RUC',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resúmen',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'Número de Impuesto',
- 'Tax Number / SSN' => 'Número de Impuesto / SSN',
- 'Taxable' => 'Impuestos gravables',
- 'Terms' => 'Términos',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Type of Business' => 'Tipo de Negocio',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor History' => 'Historia de Proveedor',
- 'Vendor Invoice' => 'Factura de proveedor',
- 'Vendor Invoices' => 'Facturas de proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transaccion_proveedor' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'añadir_cliente' => 'add_customer',
- 'añadir_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'lista_de_precios' => 'pricelist',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'requerimiento_de_cotización' => 'rfq',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'lista_de_precios_guardada' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/gl b/sql-ledger/locale/ec/gl
deleted file mode 100644
index d9d3feb..0000000
--- a/sql-ledger/locale/ec/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AR Transaction' => 'Gestión de cobro',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add General Ledger Transaction' => 'Añadir Nota de Contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit General Ledger Transaction' => 'Editar Notas Contables',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'FX' => 'Tasa de Cambio',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'GL Transaction' => 'Nota de Contabilidad',
- 'General Ledger' => 'Notas de Contabilidad',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingresos',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance transaction!' => '¡Transacción Fuera de BAlance',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Quarter' => 'Trimestre',
- 'R' => 'Reconciliado',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Reports' => 'Informes',
- 'Sales Invoice ' => 'Factura de venta ',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor Invoice ' => 'Factura de proveedor ',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warning!' => '¡Precaución!',
- 'Year' => 'Año',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion_proveedor' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'nota_de_contabilidad' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'factura_de_venta_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'factura_de_proveedor_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/hr b/sql-ledger/locale/ec/hr
deleted file mode 100644
index 4a35145..0000000
--- a/sql-ledger/locale/ec/hr
+++ /dev/null
@@ -1,108 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'Above' => 'Arriba',
- 'Accounting Menu' => 'Menú general',
- 'Add Deduction' => 'Añadir Deducción',
- 'Add Employee' => 'Añadir Empleado',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de Deducción',
- 'All' => 'Todos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount missing!' => 'Valor faltante',
- 'BIC' => 'Swift',
- 'Based on' => 'Basado en',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Below' => 'Abajo',
- 'City' => 'Ciudad',
- 'Continue' => 'Continuar',
- 'Country' => 'País',
- 'Deduct after' => 'Deducir luego',
- 'Deduction deleted!' => '¡Deducción borrada!',
- 'Deduction saved!' => '¡Guardada Deducción!',
- 'Deductions' => 'Deducciones',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta descripción!',
- 'E-mail' => 'Correo electrónico',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Empleado',
- 'Employee deleted!' => '¡Empleado borrado!',
- 'Employee pays' => 'Empleado paga',
- 'Employee saved!' => '¡Empleado salvado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador paga',
- 'Enddate' => 'Fecha Final',
- 'Expense' => 'Gastos',
- 'Home Phone' => 'Teléfono del Hogar',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Login' => 'Entrar',
- 'Manager' => 'Gerente',
- 'Maximum' => 'Máximo',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Independiente',
- 'Payroll Deduction' => 'Descuento del Rol de Pagos',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SSN' => 'Número de Seguro Social',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Startdate' => 'FechaInicio',
- 'State/Province' => 'Estado/Provincia',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
- 'Work Phone' => 'Teléfono del trabajo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'añadir_deducción' => 'add_deduction',
- 'añadir_empleado' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ic b/sql-ledger/locale/ec/ic
deleted file mode 100644
index bfc1ff9..0000000
--- a/sql-ledger/locale/ec/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Labor/Overhead' => 'Adicionar Mano de Obra',
- 'Add Part' => 'Añadir artículo',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Service' => 'Añadir servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Ensamblaje',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Listado de piezas',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Break' => '¡Roto!',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Revisar Inventario',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de Compañía',
- 'Components' => 'Componentes',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Reintegro',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Service' => 'Editar servicio',
- 'Employee' => 'Colaborador/Empleado',
- 'Expense' => 'Gastos',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingresos',
- 'Individual Items' => 'Artículos individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Artículos',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Leadtime' => 'Plazo',
- 'Line Total' => 'Total de la línea',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => 'Lista',
- 'List Price' => 'Precio de lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Markup' => 'Margen de Beneficio',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => 'No',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Orphaned' => 'Independiente',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Parts' => 'Artículos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Preciogrupo',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '¡La cantidad exede la unidades disponibles en inventario!',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Requerimiento de Cotización',
- 'ROP' => 'Tope de envio',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de Ventas',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Sell' => 'Venta',
- 'Sell Price' => 'Precio de venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Serial Number' => 'Número Serie',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Short' => 'Corto',
- 'State/Province' => 'Estado/Provincia',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'To' => 'Hasta ',
- 'Top Level' => 'Nivel superior',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => '¡Actualizado!',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de proveedor',
- 'Vendor Invoices' => 'Facturas de proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'days' => 'días',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'añadir_compuesto' => 'add_assembly',
- 'adicionar_mano_de_obra' => 'add_labor/overhead',
- 'añadir_artículo' => 'add_part',
- 'añadir_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_compuesto' => 'edit_assembly',
- 'editar_compuesto' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/io b/sql-ledger/locale/ec/io
deleted file mode 100644
index d3c5b64..0000000
--- a/sql-ledger/locale/ec/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de Compañía',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Customer Number' => 'Número de Cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'No',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Order' => 'Orden de Venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Embarque',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Unit' => 'Unidad',
- 'Vendor Number' => 'Número de Proveedor',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ir b/sql-ledger/locale/ec/ir
deleted file mode 100644
index 272fc47..0000000
--- a/sql-ledger/locale/ec/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de Compañía',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer Number' => 'Número de Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit Vendor Invoice' => 'Editar factura de Proveedor',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas Internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Order' => 'Orden de Venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Source' => 'Fuente',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'posted!' => 'fijado',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'pedido' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/is b/sql-ledger/locale/ec/is
deleted file mode 100644
index 5602386..0000000
--- a/sql-ledger/locale/ec/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de Compañía',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas Internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => '¡Factura Procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Muestre',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Order' => 'Orden de Venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'Fuente',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento por Intercambio',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_muestre' => 'print_and_post',
- 'orden_de_venta' => 'sales_order',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/login b/sql-ledger/locale/ec/login
deleted file mode 100644
index 59aad8f..0000000
--- a/sql-ledger/locale/ec/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Login' => 'Entrar',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Upgrading to Version' => 'Actualizando a Versión',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No ha introducido un nombre',
- 'done' => 'hecho',
- 'is not a member!' => 'no es miembro',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrar' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/menu b/sql-ledger/locale/ec/menu
deleted file mode 100644
index 5a27ad2..0000000
--- a/sql-ledger/locale/ec/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Facturas de Proveedores',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Transaction' => 'Transaccion Proveedor',
- 'AR' => 'Facturas de Ventas',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Transaction' => 'Gestión de cobro',
- 'Accounting Menu' => 'Menú general',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Adicionar Negocio',
- 'Add Customer' => 'Añadir cliente',
- 'Add Department' => 'Adicionar Departamento',
- 'Add Employee' => 'Añadir Empleado',
- 'Add GIFI' => 'Añadir cuenta RUC',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Adicionar Mano de Obra',
- 'Add Language' => 'Adicionar lenguage',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Preciogrupal',
- 'Add Project' => 'Añadir proyecto',
- 'Add SIC' => 'Adicionar SIC',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir Transacción',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Warehouse' => 'Adicionar Bodega',
- 'All Items' => 'Todos los Artículos',
- 'Assemblies' => 'Compuestos',
- 'Audit Control' => 'Control de auditoría',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Balance Sheet' => 'Hoja de balance',
- 'Batch Printing' => 'Sequencia de Impresión',
- 'Bin List' => 'Lista de Compatimiento',
- 'Bin Lists' => 'Listas de Compatimiento',
- 'Cash' => 'Efectivo',
- 'Chart of Accounts' => 'Plan de cuentas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Pre-estableciodos',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descripción',
- 'Employees' => 'Empleados',
- 'General Ledger' => 'Notas de Contabilidad',
- 'Goods & Services' => 'Bienes y servicios',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Historia',
- 'Income Statement' => 'Estado de Resultados',
- 'Invoice' => 'Factura de Venta',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'List Accounts' => 'Listar Plan Único de Cuentas',
- 'List Businesses' => 'Lista de Negocios',
- 'List Departments' => 'Lista de Departamentos',
- 'List GIFI' => 'Listar PUC',
- 'List Languages' => 'Lista de Lenguages',
- 'List Projects' => 'Lista de Proyectos',
- 'List SIC' => 'Lista SIC',
- 'List Warehouses' => 'Lista de Bodegas',
- 'Logout' => 'Salir',
- 'Non-taxable' => 'No Grabable',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Cotizaciones y pedidos',
- 'Outstanding' => 'Impagados',
- 'POS' => 'PdV',
- 'POS Invoice' => 'Factura PdV',
- 'Packing List' => 'Lista de Empaque',
- 'Packing Lists' => 'Lista de Empaque',
- 'Parts' => 'Artículos',
- 'Payment' => 'Comprobante de Egreso',
- 'Payments' => 'Vencimientos impagados',
- 'Pick List' => 'Lista de Selección',
- 'Pick Lists' => 'Listas de Selección',
- 'Preferences' => 'Preferencias',
- 'Pricegroups' => 'Preciogrupos',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Requerimiento de Cotización',
- 'RFQs' => 'Requerimiento de Cotizaciónes',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Receive' => 'Cobro',
- 'Reconciliation' => 'Reconciliación',
- 'Reports' => 'Informes',
- 'SIC' => 'Código Industrial Estandard',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de Ventas',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Save to File' => 'Guardar en un archivo',
- 'Search' => 'Buscar',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Shipping' => 'Despacho',
- 'Statement' => 'Estado de cuenta',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Text Templates' => 'Plantillas de Texto',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Translations' => 'Traducciones',
- 'Trial Balance' => 'Balance de comprobación',
- 'Type of Business' => 'Tipo de Negocio',
- 'Vendor Invoice' => 'Factura de proveedor',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouses' => 'Bodegas',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Yearend' => 'Fin de año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/oe b/sql-ledger/locale/ec/oe
deleted file mode 100644
index 34a5816..0000000
--- a/sql-ledger/locale/ec/oe
+++ /dev/null
@@ -1,306 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Exchange Rate' => 'Añadir Tasa de Cambio',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => '¿Está seguro que quiere borrar el número de la Cotización?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Business' => 'Negocio',
- 'C' => 'C',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No se puede borrar la cotización!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save quotation!' => '¡No se puede guardar cotización!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de Compañía',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Could not save!' => '¡No se puede grabar!',
- 'Could not transfer Inventory!' => '¡No se puede transferir el Inventario!',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Received' => 'Fecha de Recepción',
- 'Date received missing!' => '¡Falta Fecha de recepción!',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Done' => 'Hecho',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Petición de Cotizacion',
- 'Edit Sales Order' => 'Editar cotización',
- 'Employee' => 'Colaborador/Empleado',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Internal Notes' => 'Notas Internas',
- 'Inventory saved!' => '¡Inventario salvado!',
- 'Inventory transferred!' => '¡Inventario transferido!',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Month' => 'Mes',
- 'No.' => 'No',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '¡Nada ingresado!',
- 'Nothing to transfer!' => '¡Nada para Transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden Procesada!',
- 'Order saved!' => 'Pedido guardado',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número de Parte',
- 'Period' => 'Período',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Save' => 'Imprimir y Salve',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => 'Cotización ',
- 'Quotation Date' => 'Fecha de Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Requerimiento de Cotización',
- 'RFQ ' => 'Requerimiento de Cotización ',
- 'RFQ Number' => 'Número de Requerimiento de Cotización',
- 'Recd' => 'Cobrado',
- 'Receive Merchandise' => 'Recepción de Mercadería',
- 'Remaining' => 'Resto',
- 'Request for Quotation' => 'Pedido de Cotización',
- 'Request for Quotations' => 'Pedido de Cotizaciónes',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Order' => 'Orden de Venta',
- 'Sales Orders' => 'Ordenes de Venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Envío de Mercadería',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Shipping Date' => 'Fecha de Embarque',
- 'Shipping Date missing!' => '¡Falta Fecha de Embarque!',
- 'Shipping Point' => 'Puerto de Embarque',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Terms' => 'Términos',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento por Intercambio',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'days' => 'días',
- 'ea' => 'unid.',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'hecho' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'imprimir_y_salve' => 'print_and_save',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'cotización_' => 'quotation_',
- 'requerimiento_de_cotización' => 'rfq',
- 'requerimiento_de_cotización_' => 'rfq_',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'destino' => 'ship_to',
- 'transferencia' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/pe b/sql-ledger/locale/ec/pe
deleted file mode 100644
index d31fb8e..0000000
--- a/sql-ledger/locale/ec/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Group' => 'Agregar Grupo',
- 'Add Pricegroup' => 'Añadir Preciogrupal',
- 'Add Project' => 'Añadir proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducciónes de Descripción',
- 'Edit Description Translations' => 'Editar Descripciones de Traducciones',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Pricegroup' => 'Editar Precio de Grupo',
- 'Edit Project' => 'Editar proyecto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traducciones de Grupo',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Language' => 'Lenguaje',
- 'Languages not defined!' => '¡Idiomas no definidos!',
- 'Number' => 'Número',
- 'Orphaned' => 'Independiente',
- 'Pricegroup' => 'Preciogrupo',
- 'Pricegroup deleted!' => '¡Preciogrupo borrado!',
- 'Pricegroup missing!' => '¡Preciogrupo desaparecido!',
- 'Pricegroup saved!' => '¡Preciogrupo salvado',
- 'Pricegroups' => 'Preciogrupos',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducciones de Descripción de Proyecto',
- 'Project Number' => 'número del projecto',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => '¡Traducción borrada!',
- 'Translations saved!' => 'Traducciones guardadas',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'agregar_grupo' => 'add_group',
- 'añadir_preciogrupal' => 'add_pricegroup',
- 'añadir_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/pos b/sql-ledger/locale/ec/pos
deleted file mode 100644
index 62b8a04..0000000
--- a/sql-ledger/locale/ec/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Change' => 'Cambiar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Extended' => 'Extendido',
- 'From' => 'Desde',
- 'Language' => 'Lenguaje',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Posted!' => 'Agregado!',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/ps b/sql-ledger/locale/ec/ps
deleted file mode 100644
index d930c21..0000000
--- a/sql-ledger/locale/ec/ps
+++ /dev/null
@@ -1,336 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Añadir Cotización',
- 'Add Request for Quotation' => 'Añadir Pedido de Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir cotización',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Cobro',
- 'Bin' => 'Compatimiento',
- 'Bin List' => 'Lista de Compatimiento',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Check' => 'Cheque',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de Compañía',
- 'Compare to' => 'Comparar con',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Ganacias Actuales',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '¡Enviado por Correo-e!',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta tasa de Cambio para pago!',
- 'Exchange rate missing!' => '¡Falta Tasa de Cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar artículos',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia de Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Estado de Resultados',
- 'Internal Notes' => 'Notas Internas',
- 'Invoice' => 'Factura de Venta',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => 'Factura guadada!',
- 'Invoice processed!' => '¡Factura Procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Manager' => 'Gerente',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'Month' => 'Mes',
- 'N/A' => 'Sin respuesta',
- 'No.' => 'No',
- 'Non-taxable Purchases' => 'Compras excentas de Impuestos',
- 'Non-taxable Sales' => 'Ventas excentas de Impuestos',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Period' => 'Período',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Muestre',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project Number' => 'número del projecto',
- 'Project Transactions' => 'Traducciones de Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'en cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => 'Falta número de Cotización',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Report for' => 'Informe para',
- 'Required by' => 'Solicitado por',
- 'SKU' => 'Unidad de Mantenimiento de Stock',
- 'Sales Invoice.' => 'Factura de venta.',
- 'Sales Order' => 'Orden de Venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => 'Seleccione Impresora o Cola',
- 'Select all' => 'Seleccione todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Nº de Serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección de Embarque',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'State/Province' => 'Estado/Provincia',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resúmen',
- 'Tax' => 'Impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento por Intercambio',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Translation not on file!' => '¡Traducción no en archivo!',
- 'Trial Balance' => 'Balance de comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Número de Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Si',
- 'as at' => 'al',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_muestre' => 'print_and_post',
- 'factura_de_venta.' => 'sales_invoice.',
- 'orden_de_venta' => 'sales_order',
- 'seleccione_todo' => 'select_all',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/pw b/sql-ledger/locale/ec/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/ec/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/rc b/sql-ledger/locale/ec/rc
deleted file mode 100644
index 83678a9..0000000
--- a/sql-ledger/locale/ec/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Balance Inicial',
- 'Cleared' => '¡Limpiado!',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decrease' => 'Reducir',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Hecho',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia de Tasa de Cambio',
- 'Increase' => 'Aumentar',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'Payment' => 'Comprobante de Egreso',
- 'Period' => 'Período',
- 'Quarter' => 'Trimestre',
- 'R' => 'Reconciliado',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Select all' => 'Seleccione todo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Statement Balance' => 'Balance de cuenta',
- 'Summary' => 'Resúmen',
- 'To' => 'Hasta ',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'hecho' => 'done',
- 'seleccione_todo' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ec/rp b/sql-ledger/locale/ec/rp
deleted file mode 100644
index 0aa7a75..0000000
--- a/sql-ledger/locale/ec/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar con',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Ganacias Actuales',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Plan Único de Cuentas (PUC)',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia de Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Estado de Resultados',
- 'Invoice' => 'Factura de Venta',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mayo',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'Month' => 'Mes',
- 'N/A' => 'Sin respuesta',
- 'Non-taxable Purchases' => 'Compras excentas de Impuestos',
- 'Non-taxable Sales' => 'Ventas excentas de Impuestos',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Vencimientos impagados',
- 'Period' => 'Período',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'número del projecto',
- 'Project Transactions' => 'Traducciones de Proyecto',
- 'Project not on file!' => '¡Proyecto no en archivo!',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Informe para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccione todo',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione de uno de los proyectos siguientes',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resúmen',
- 'Tax' => 'Impuestos',
- 'Tax collected' => 'Impuestos cobrados Clientes',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance de comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Year' => 'Año',
- 'as at' => 'al',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'seleccione_todo' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/COPYING b/sql-ledger/locale/ee/COPYING
deleted file mode 100644
index fe5ef7d..0000000
--- a/sql-ledger/locale/ee/COPYING
+++ /dev/null
@@ -1,25 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Estonian texts:
-#
-# Author: Martin Lillepuu <martin@lillepuu.com>
-# Lauri Jesmin <jesmin@ut.ee>
-# Tanel Kurvits <rauge@hot.ee>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/ee/LANGUAGE b/sql-ledger/locale/ee/LANGUAGE
deleted file mode 100644
index 5d88c2d..0000000
--- a/sql-ledger/locale/ee/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Estonian
diff --git a/sql-ledger/locale/ee/Num2text b/sql-ledger/locale/ee/Num2text
deleted file mode 100644
index 1e8975b..0000000
--- a/sql-ledger/locale/ee/Num2text
+++ /dev/null
@@ -1,134 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2003
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Mario R. Pizzolanti <mario@zavood.ee>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# written for check and receipt printing
-# it returns a properly formatted text string
-# for a number up to 10**9
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'null',
- 1 => 'üks',
- 2 => 'kaks',
- 3 => 'kolm',
- 4 => 'neli',
- 5 => 'viis',
- 6 => 'kuus',
- 7 => 'seitse',
- 8 => 'kaheksa',
- 9 => 'üheksa',
- 10 => 'kümme',
- 10**2 => 'sada',
- 10**3 => 'tuhat',
- 10**6 => 'miljon',
- 10**9 => 'miljard',
- 10**12 => 'biljon'
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my ($i, $appendit);
- my @a = ();
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- $appendit = "it";
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, "$self->{numbername}{$num[0]}$self->{numbername}{10**2}";
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 19) {
- # 20 - 99
- push @textnumber, "$self->{numbername}{$num[1]}kümmend";
- @num = split //, $numblock[$i];
- push @textnumber, $self->{numbername}{$num[1]} if $num[1] > 0;
-
- } elsif ($numblock[$i] > 10) {
- # 11 - 19
- push @textnumber, "$self->{numbername}{$num[1]}teist";
-
- } elsif ($numblock[$i] > 1) {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
-
- } elsif ($numblock[$i] == 1) {
- push @textnumber, $self->{numbername}{$num[0]};
- $appendit = "";
-
- }
-
- # add thousand, million
- if ($i) {
- $amount = 10**($i * 3);
- $appendit = ($i == 1) ? "" : $appendit;
- push @textnumber, "$self->{numbername}{$amount}$appendit";
- }
-
- pop @numblock;
-
- }
-
- join ' ', @textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/ee/admin b/sql-ledger/locale/ee/admin
deleted file mode 100644
index fea1e21..0000000
--- a/sql-ledger/locale/ee/admin
+++ /dev/null
@@ -1,139 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Ligipääsukontroll',
- 'Accounting' => 'Raamatupidamine',
- 'Add User' => 'Lisa kasutaja',
- 'Address' => 'Aadress',
- 'Administration' => 'Administreerimine',
- 'Administrator' => 'Administraator',
- 'All Datasets up to date!' => 'Kõik andmebaasid on uuendatud',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Muuda admini parool',
- 'Change Password' => 'Muuda parool',
- 'Character Set' => 'Kooditabel',
- 'Click on login name to edit!' => 'Redigeerimiseks kliki kasutajanimel',
- 'Company' => 'Ettevõte',
- 'Connect to' => 'Ühenda',
- 'Continue' => 'Edasi',
- 'Create Chart of Accounts' => 'Uus kontoplaan',
- 'Create Dataset' => 'Uus andmebaas',
- 'DBI not installed!' => 'DBI on installeerimata',
- 'Database' => 'Andmebaas',
- 'Database Administration' => 'Andmebaasi administreerimine',
- 'Database Driver not checked!' => 'Andmebaasi draiver valimata!',
- 'Database User missing!' => 'Andmebaasi kasutaja puudub!',
- 'Dataset' => 'Andmekogu',
- 'Dataset missing!' => 'Andmekogu puudub!',
- 'Dataset updated!' => 'Andmekogu uuendatud!',
- 'Date Format' => 'Kuupäeva formaat',
- 'Delete' => 'Kustuta',
- 'Delete Dataset' => 'Kustuta andmebaas',
- 'Directory' => 'Kataloog',
- 'Driver' => 'Draiver',
- 'Dropdown Limit' => 'Hüppikmenüü Piirang',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Kasutajaandmete muutmine',
- 'Existing Datasets' => 'Olemasolevad andmebaasid',
- 'Fax' => 'Faks',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Serveri nimi puudub!',
- 'Language' => 'Keel',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Jäta serveri ja pordi väljad tühjaks kui sa ei soovi kaugühendust luua',
- 'Lock System' => 'Süstemi lukustamine',
- 'Lockfile created!' => 'Lukustusfail loodud!',
- 'Lockfile removed!' => 'Lukustusfail eemaldatud!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Kasutajanimi puudub!',
- 'Logout' => 'Logi välja',
- 'Menu Width' => 'Menüü Laius',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nimi',
- 'New Templates' => 'Uued dokumendipõhjad',
- 'No Database Drivers available!' => 'Ühtegi andmebaasidraiverit ei leitud!',
- 'No Dataset selected!' => 'Andmekogu valimata!',
- 'Nothing to delete!' => 'Midagi ei ole kustutada!',
- 'Number Format' => 'Numbri formaat',
- 'Oracle Database Administration' => 'Oracle Andmebaasi administreerimine',
- 'Password' => 'Parool',
- 'Password changed!' => 'Parool muudetud!',
- 'Pg Database Administration' => 'Pg Andmebaasi administreerimine',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Port' => 'Port',
- 'Port missing!' => 'Port puudub!',
- 'Printer' => 'Printer',
- 'Save' => 'Salvesta',
- 'Setup Templates' => 'Dokumendipõhjade seadistamine',
- 'Signature' => 'Allkiri',
- 'Stylesheet' => 'Laaditabel',
- 'Templates' => 'Dokumendipõhjad',
- 'The following Datasets are not in use and can be deleted' => 'Järgnevad andmebaasid ei ole kasutusel ning võib kustutada',
- 'The following Datasets need to be updated' => 'Järgmised andmebaasid vajavad uuendamist',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Olemasolevate allikate eelkontroll. Praeguses staadiumis ei toimu andmete lisamist ega kustutamist.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Kasutaja gruppi lisamiseks redigeeri nime, muuda kasutajanimi ja salvesta. Luuakse samade parameetritega uus kasutaja',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Uuenda andmebaas',
- 'Use Templates' => 'Kasuta dokumendipõhjad',
- 'User' => 'Kasutaja',
- 'User deleted!' => 'Kasutaja kustutatud!',
- 'User saved!' => 'Kasutaja salvestatud!',
- 'Version' => 'Versioon',
- 'You must enter a host and port for local and remote connections!' => 'Ühenduse loomiseks palun sisesta serveri nimi ja port',
- 'does not exist' => 'ei eksisteeri',
- 'is already a member!' => 'on juba kasutaja!',
- 'localhost' => 'localhost',
- 'locked!' => 'lukustatud!',
- 'successfully created!' => 'loodud!',
- 'successfully deleted!' => 'kustutatud!',
- 'website' => 'kodulehekülg',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'lisa_kasutaja' => 'add_user',
- 'muuda_admini_parool' => 'change_admin_password',
- 'muuda_parool' => 'change_password',
- 'edasi' => 'continue',
- 'uus_andmebaas' => 'create_dataset',
- 'kustuta' => 'delete',
- 'kustuta_andmebaas' => 'delete_dataset',
- 'süstemi_lukustamine' => 'lock_system',
- 'login' => 'login',
- 'logi_välja' => 'logout',
- 'oracle_andmebaasi_administreerimine' => 'oracle_database_administration',
- 'pg_andmebaasi_administreerimine' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'salvesta' => 'save',
- 'unlock_system' => 'unlock_system',
- 'uuenda_andmebaas' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/all b/sql-ledger/locale/ee/all
deleted file mode 100644
index adf3342..0000000
--- a/sql-ledger/locale/ee/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Kohustused',
- 'AP Aging' => 'Võlad',
- 'AP Outstanding' => 'Tasumata kohustused',
- 'AP Transaction' => 'Kohustuste kanne',
- 'AP Transactions' => 'Kohustuste kanded',
- 'AR' => 'Nõuded',
- 'AR Aging' => 'Võlglased',
- 'AR Outstanding' => 'Tasumata nõued',
- 'AR Transaction' => 'Nõuete kanne',
- 'AR Transactions' => 'Nõuete kanded',
- 'About' => 'Programmi Info',
- 'Above' => 'Ülal',
- 'Access Control' => 'Ligipääsukontroll',
- 'Account' => 'Konto',
- 'Account Number' => 'Konto number',
- 'Account Number missing!' => 'Konto number puudub',
- 'Account Type' => 'Konto tüüp',
- 'Account Type missing!' => 'Konto tüüp puudub!',
- 'Account deleted!' => 'Konto on kustutatud!',
- 'Account does not exist!' => 'Konto ei eksisteeri',
- 'Account saved!' => 'Konto on salvestatud',
- 'Accounting' => 'Raamatupidamine',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Accounts' => 'Kontod',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Aktiva',
- 'Add' => 'Lisa',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Lisa konto',
- 'Add Assembly' => 'Lisa komplekt',
- 'Add Business' => 'Lisa Ettevõtte',
- 'Add Cash Transfer Transaction' => 'Lisa sularaha ülekanne',
- 'Add Customer' => 'Lisa klient',
- 'Add Deduction' => 'Lisa mahaarvamine',
- 'Add Department' => 'Lisa Osakond',
- 'Add Employee' => 'Lisa töötaja',
- 'Add Exchange Rate' => 'Lisa vahetuskurss',
- 'Add GIFI' => 'Lisa GIFI',
- 'Add General Ledger Transaction' => 'Lisa pearaamatu kanne',
- 'Add Group' => 'Lisa Grupp',
- 'Add Labor/Overhead' => 'Lisa Tööjõukulu',
- 'Add Language' => 'Lisa Keel',
- 'Add POS Invoice' => 'Lisa Sularahamüügi Kviitung',
- 'Add Part' => 'Lisa Toote',
- 'Add Pricegroup' => 'Lisa Hinnagrupp',
- 'Add Project' => 'Lisa Projekt',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add SIC' => 'Lisa Standardiseeritud Tööstuskood',
- 'Add Sales Invoice' => 'Lisa Müügiarve',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Add Service' => 'Lisa teenus',
- 'Add Transaction' => 'Lisa kanne',
- 'Add User' => 'Lisa kasutaja',
- 'Add Vendor' => 'Lisa tarnija',
- 'Add Vendor Invoice' => 'Lisa Ostuarve',
- 'Add Warehouse' => 'Lisa Ladu',
- 'Address' => 'Aadress',
- 'Administration' => 'Administreerimine',
- 'Administrator' => 'Administraator',
- 'After Deduction' => 'Peale mahaarvamist',
- 'All' => 'Kõik',
- 'All Accounts' => 'Koik kontod',
- 'All Datasets up to date!' => 'Kõik andmebaasid on uuendatud',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Võlaosa',
- 'Amount missing!' => 'Summa puudub!',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Invoice Number' => 'Kas oled kindel, et soovid kustutada arve',
- 'Are you sure you want to delete Order Number' => 'Kas oled kindel, et soovid kustutada tellimuse',
- 'Are you sure you want to delete Quotation Number' => 'Kas oled kindel, et soovid kustutada pakkumise',
- 'Are you sure you want to delete Transaction' => 'Kas oled kindel, et soovid kustutada kande',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Komplektid',
- 'Assemblies restocked!' => 'Komplektid lattu tagastatud!',
- 'Assembly' => 'Komplekt',
- 'Asset' => 'Vara',
- 'Attachment' => 'Kaasatud fail',
- 'Audit Control' => 'Audit',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'BIC' => 'BIC (Rahvusvaheline pangakood - S.W.I.F.T)',
- 'BOM' => '',
- 'Backup' => 'Varukoopia',
- 'Backup sent to' => 'Varukoopia saadetakse',
- 'Balance' => 'Bilanss',
- 'Balance Sheet' => 'Bilansitabel',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Enne mahaarvamisi',
- 'Beginning Balance' => 'Algsaldo',
- 'Below' => 'All',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Kanded on avatud',
- 'Break' => '',
- 'Business' => 'Ettevõtte',
- 'Business Number' => 'Ettevõtte kood',
- 'Business deleted!' => 'Ettevõtte kustutatud',
- 'Business saved!' => 'Ettevõtte salvestatud',
- 'C' => 'C',
- 'COGS' => 'COGS',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Kontot ei saa kustutada!',
- 'Cannot delete customer!' => 'Kienti ei saa kustutada!',
- 'Cannot delete default account!' => 'Vaikimisi kontot ei saa kustutada!',
- 'Cannot delete invoice!' => 'Arvet ei saa kustutada',
- 'Cannot delete item!' => 'Toodet ei saa kustutada!',
- 'Cannot delete order!' => 'Tellimust ei saa kustutada!',
- 'Cannot delete quotation!' => 'Hinnapakkumist ei saa kustutada!',
- 'Cannot delete transaction!' => 'Kannet ei saa kustutada!',
- 'Cannot delete vendor!' => 'Tarnijat ei saa kustutada!',
- 'Cannot post Payment!' => 'Makset ei saa salvestada!',
- 'Cannot post Receipt!' => 'Sisetulekuarderit ei saa salvestada!',
- 'Cannot post invoice for a closed period!' => 'Arvet ei saa salvestada suletud perioodile!',
- 'Cannot post invoice!' => 'Arvet ei saa salvestada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cannot post transaction for a closed period!' => 'Kannet ei saa salvestada suletud perioodile!',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Cannot process payment for a closed period!' => 'Laekumist ei saa salvestada suletud periodile!',
- 'Cannot remove files!' => 'Faili ei saa kustutada!',
- 'Cannot save account!' => 'Kontot ei saa salvestada!',
- 'Cannot save defaults!' => 'Ei saa salvestada vaikimisi maarangud!',
- 'Cannot save order!' => 'Arvet ei saa salvestada!',
- 'Cannot save preferences!' => 'Maaranguid ei saa salvestada!',
- 'Cannot save quotation!' => 'Hinnapakkumist ei saa salvestada!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Konto saab olla, kas Nõue, Kohustuse või Tulu/Kulu tüüpi',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => 'Kassa',
- 'Cc' => 'Cc',
- 'Change' => 'Muuda',
- 'Change Admin Password' => 'Muuda admini parool',
- 'Change Password' => 'Muuda parool',
- 'Character Set' => 'Kooditabel',
- 'Chart of Accounts' => 'Kontoplaan',
- 'Check' => 'Tshekk',
- 'Check Inventory' => 'Kontrolli ladu',
- 'Checks' => '',
- 'City' => 'Linn',
- 'Cleared' => 'Laekunud',
- 'Click on login name to edit!' => 'Redigeerimiseks kliki kasutajanimel',
- 'Close Books up to' => 'Sulge kanded kuni',
- 'Closed' => 'Suletud',
- 'Code' => 'Kood',
- 'Code missing!' => 'Kood pole leitav',
- 'Company' => 'Ettevõte',
- 'Company Name' => 'Ettevõtte nimi',
- 'Compare to' => 'Võrdlus perioodiga',
- 'Components' => 'Komponendid',
- 'Confirm' => '',
- 'Confirm!' => 'Kinnita!',
- 'Connect to' => 'Ühenda',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Contra' => 'Ammortisatsioon',
- 'Copies' => 'koopiat',
- 'Copy to COA' => 'Kopeeri kontoplaani',
- 'Cost' => 'Kulu',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Ei saa salvestada!',
- 'Could not transfer Inventory!' => 'Laoartiklit ei saa üle viia!',
- 'Country' => 'Riik',
- 'Create Chart of Accounts' => 'Uus kontoplaan',
- 'Create Dataset' => 'Uus andmebaas',
- 'Credit' => 'Kreedit',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Current Earnings' => 'Käesoleva aasta kasum (kahjum)',
- 'Customer' => 'Klient',
- 'Customer History' => 'Kliendi ajalugu',
- 'Customer Number' => 'Kliendi number',
- 'Customer deleted!' => 'Klient on kustutatud!',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Customer saved!' => 'Klient salvestatud!',
- 'Customers' => 'Kliendid',
- 'DBI not installed!' => 'DBI on installeerimata',
- 'DOB' => '',
- 'Database' => 'Andmebaas',
- 'Database Administration' => 'Andmebaasi administreerimine',
- 'Database Driver not checked!' => 'Andmebaasi draiver valimata!',
- 'Database Host' => 'Andmebaasiserver',
- 'Database User missing!' => 'Andmebaasi kasutaja puudub!',
- 'Dataset' => 'Andmekogu',
- 'Dataset is newer than version!' => 'Andmekogu versioon, on uuem süsteemi omast!',
- 'Dataset missing!' => 'Andmekogu puudub!',
- 'Dataset updated!' => 'Andmekogu uuendatud!',
- 'Date' => 'Kuupäev',
- 'Date Format' => 'Kuupäeva formaat',
- 'Date Paid' => 'Maksekuupäev',
- 'Date Received' => 'Kättesaamise kuupäev',
- 'Date missing!' => 'Kuupäev puudub!',
- 'Date received missing!' => 'Kattesaamise kuupäev puudub!',
- 'Debit' => 'Deebet',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Decimalplaces' => 'Komakohad',
- 'Decrease' => 'Allanda',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => 'Vaikimisi määrangud',
- 'Defaults saved!' => 'Vaikimisi määrangud salvestatud',
- 'Delete' => 'Kustuta',
- 'Delete Account' => 'Kustuta konto',
- 'Delete Dataset' => 'Kustuta andmebaas',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Department' => 'Osakond',
- 'Department deleted!' => 'Osakond kustutatud!',
- 'Department saved!' => 'Osakond salvestatud!',
- 'Departments' => 'Osakonnad',
- 'Deposit' => '',
- 'Description' => 'Selgitus',
- 'Description Translations' => 'Selgituse tõlged',
- 'Description missing!' => 'Selgitus puudub!',
- 'Detail' => '',
- 'Difference' => 'Vahe',
- 'Directory' => 'Kataloog',
- 'Discount' => 'Allahindlus',
- 'Done' => 'Teostatud',
- 'Drawing' => 'Pildid',
- 'Driver' => 'Draiver',
- 'Dropdown Limit' => 'Hüppikmenüü Piirang',
- 'Due Date' => 'Maksetähtaeg',
- 'Due Date missing!' => 'Maksetähtaeg puudub!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mailiga teatamine',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit' => 'Muudatused',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Konto muudatused',
- 'Edit Assembly' => 'Muuda Komplekti',
- 'Edit Business' => 'Muuda Ettevõtte',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Muuda Kliendi Andmeid',
- 'Edit Deduction' => 'Muuda Mahaarvamine',
- 'Edit Department' => 'Muuda osakonna andmed',
- 'Edit Description Translations' => 'Muuda Selgituse Tõlged',
- 'Edit Employee' => 'Muuda Töötaja andmed',
- 'Edit GIFI' => 'Muuda GIFI',
- 'Edit General Ledger Transaction' => 'Muuda Pearaamatu kande',
- 'Edit Group' => 'Muuda Gruppi andmed',
- 'Edit Labor/Overhead' => 'Muuda tööjõukulu',
- 'Edit Language' => 'Muuda Keel',
- 'Edit POS Invoice' => 'Muuda Sularahamüügi Kviitung',
- 'Edit Part' => 'Muuda Toote',
- 'Edit Preferences for' => 'Määrangute muutmine: ',
- 'Edit Pricegroup' => 'Muuda Hinnagrupi andmed',
- 'Edit Project' => 'Muuda Projekti andmed',
- 'Edit Purchase Order' => 'Muuda Ostutellimuse',
- 'Edit Quotation' => 'Muuda Hinnapakkumise',
- 'Edit Request for Quotation' => 'Muuda Hinnapakkumise Taotluse',
- 'Edit SIC' => 'Muuda Standardiseeritud Tööstuskood',
- 'Edit Sales Invoice' => 'Müügiarve muutmine',
- 'Edit Sales Order' => 'Müügitellimuse muutmine',
- 'Edit Service' => 'Teenuse muutmine',
- 'Edit Template' => 'Dokumendipõhja muutmine',
- 'Edit User' => 'Kasutajaandmete muutmine',
- 'Edit Vendor' => 'Muuda Tarnija andmeid',
- 'Edit Vendor Invoice' => 'Ostuarve muutmine',
- 'Edit Warehouse' => 'Muuda Lao andmed',
- 'Employee' => 'Töötaja',
- 'Employee Name' => 'Töötaja nimi',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Töötaja kustutatud',
- 'Employee pays' => 'Töötaja tasub',
- 'Employee saved!' => 'Töötaja salvestatud',
- 'Employees' => 'Töötajad',
- 'Employer' => 'Tööandja',
- 'Employer pays' => 'Tööandja tasub',
- 'Enddate' => 'Lõppkuupäev',
- 'Enforce transaction reversal for all dates' => 'Muuda kannete pööramine kõikide kuupäevade ulatuses kohustuslikuks',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Sisesta kohalikud- ja välisvaluutad (kuni 3 tähemärki, koolonitega eraltatud, nt. CAD:USD:EUR)',
- 'Equity' => 'Omakapital',
- 'Excempt age <' => '',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Existing Datasets' => 'Olemasolevad andmebaasid',
- 'Expense' => 'Kulu',
- 'Expense Account' => 'Kulukonto',
- 'Expense/Asset' => 'Kulu/Vara',
- 'Extended' => 'Summa',
- 'FX' => 'Valuutavahetus',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'Foreign Exchange Gain' => 'Valuutakursside vahe kasum',
- 'Foreign Exchange Loss' => 'Valuutakursside vahe kahjum',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI kustutatud!',
- 'GIFI missing!' => 'GIFI puudub!',
- 'GIFI saved!' => 'GIFI salvestatud!',
- 'GL Transaction' => 'Pearaamatu kanne',
- 'General Ledger' => 'Pearaamat',
- 'Goods & Services' => 'Tooted ja teenused',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'Group Translations' => '',
- 'Group deleted!' => 'Grupp kustutatud!',
- 'Group missing!' => 'Grupp puudub!',
- 'Group saved!' => 'Grupp salvestatud!',
- 'Groups' => 'Grupid',
- 'HR' => 'Personal',
- 'HTML Templates' => 'HTML dokumendipõhjad',
- 'Heading' => 'Päis',
- 'History' => 'Ajalugu',
- 'Home Phone' => 'Kodune telefoninumber',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Serveri nimi puudub!',
- 'IBAN' => 'IBAN - Rahvusvaheline Pangakonto Number',
- 'ID' => 'ID',
- 'Image' => 'Pilt',
- 'In-line' => 'Dokumendisisene',
- 'Include Exchange Rate Difference' => 'Kaasa valuutavahetuskursside vahe',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Include in drop-down menus' => 'Kaasa valikmenüüdes',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Kaasa antud konto klient/tarnija vormides, et märkida klient/tarnija maksustatavaks',
- 'Income' => 'Kasum',
- 'Income Account' => 'Kasumikonto',
- 'Income Statement' => 'Kasumiaruanne',
- 'Incorrect Dataset version!' => 'Vale andmebaasi versioon',
- 'Incorrect Password!' => 'Vale parool!',
- 'Increase' => 'Suurenda',
- 'Individual Items' => 'Komponendid',
- 'Internal Notes' => 'Sisemärkused',
- 'Inventory' => 'Laoarvestus',
- 'Inventory Account' => 'Laokonto',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Enne komplekti aegunuks märkimist peab laoseis null olema!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Enne toote aegunuks märkimist peab laoseis null olema!',
- 'Inventory saved!' => 'Laoarvestus salvestatud!',
- 'Inventory transferred!' => 'Laoartiklid yleviidud!',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Invoice deleted!' => 'Arve kustutatud!',
- 'Invoice posted!' => 'Arve salvestatud!',
- 'Invoice processed!' => 'Arve töödeldud!',
- 'Invoices' => 'Arved',
- 'Is this a summary account to record' => 'Kirje summaarne konto',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Toode kustutatud!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Items' => 'Tooted',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'LaTeX Templates' => 'LaTeX dokumendipõhjad',
- 'Labor/Overhead' => 'Tööjõukulu',
- 'Language' => 'Keel',
- 'Language deleted!' => 'Keel kustutatud!',
- 'Language saved!' => 'Keel salvestatud!',
- 'Languages' => 'Keeled',
- 'Languages not defined!' => 'Keeled pole defineeritud!',
- 'Last Numbers & Default Accounts' => 'Viimased numbrid ja vaikimisi kontod',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Jäta serveri ja pordi väljad tühjaks kui sa ei soovi kaugühendust luua',
- 'Liability' => 'Kohustus',
- 'Licensed to' => 'Kasutaja andmed:',
- 'Line Total' => 'Rea summa',
- 'Link' => 'Seosed',
- 'Link Accounts' => 'Seosta kontod',
- 'List' => '',
- 'List Accounts' => 'Kontode nimekiri',
- 'List Businesses' => 'Ettevõttede nimekiri',
- 'List Departments' => 'Osakondade nimekiri',
- 'List GIFI' => 'GIFI nimekiri',
- 'List Languages' => 'Keelte nimekiri',
- 'List Price' => 'Hinnakirja hind',
- 'List Projects' => 'Projektide nimekiri',
- 'List SIC' => 'Standardiseeritud Tööstuskoodide Nimekiri',
- 'List Transactions' => 'Kannete sirvimine',
- 'List Warehouses' => 'Ladude nimekiri',
- 'Lock System' => 'Süstemi lukustamine',
- 'Lockfile created!' => 'Lukustusfail loodud!',
- 'Lockfile removed!' => 'Lukustusfail eemaldatud!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Kasutajanimi puudub!',
- 'Logout' => 'Logi välja',
- 'Make' => 'Tootja',
- 'Manager' => '',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'Marked entries printed!' => 'Märgitud kanded väljatrükitud!',
- 'Markup' => '',
- 'Maximum' => 'Maksimum',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Menüü Laius',
- 'Message' => 'Teade',
- 'Method' => 'Meetod',
- 'Microfiche' => 'Microkaart',
- 'Model' => 'Mudel',
- 'Month' => 'Kuu',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'Puudub',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puudub!',
- 'New Templates' => 'Uued dokumendipõhjad',
- 'No' => 'Ei',
- 'No Database Drivers available!' => 'Ühtegi andmebaasidraiverit ei leitud!',
- 'No Dataset selected!' => 'Andmekogu valimata!',
- 'No email address for' => 'E-maili aadress puudub',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Maksuvaba',
- 'Non-taxable Purchases' => 'Maksuvaba ostud',
- 'Non-taxable Sales' => 'Maksuvaba müük',
- 'Notes' => 'Märkused',
- 'Nothing entered!' => 'Midagi pole sisestatud!',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Valik puudub!',
- 'Nothing to delete!' => 'Midagi ei ole kustutada!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number Format' => 'Numbri formaat',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'O' => '',
- 'Obsolete' => 'Aegunud',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'On Hand' => 'Laos',
- 'Open' => 'Avatud',
- 'Oracle Database Administration' => 'Oracle Andmebaasi administreerimine',
- 'Order' => 'Tellimus',
- 'Order Date' => 'Tellimuse kuupäev',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Entry' => 'Tellimuse sisestamine',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'Order deleted!' => 'Tellimus kustutatud!',
- 'Order processed!' => 'Tellimus teostatud!',
- 'Order saved!' => 'Tellimus salvestatud!',
- 'Orphaned' => 'Seosteta',
- 'Out of balance transaction!' => 'Kanne ei ole balanseeritud!',
- 'Out of balance!' => 'Bilanss ei klapi!',
- 'Outstanding' => 'Tasumata nõued',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => 'POS arve',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Packing Lists' => 'Saatelehed',
- 'Paid' => 'Makstud',
- 'Part' => 'Toode',
- 'Part Number' => 'Toote kood',
- 'Partnumber' => '',
- 'Parts' => 'Osad',
- 'Parts Inventory' => 'Tooted',
- 'Password' => 'Parool',
- 'Password changed!' => 'Parool muudetud!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Kohustused',
- 'Payment' => 'Maksmine',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payment posted!' => 'Makse saadetud!',
- 'Payments' => 'Maksed',
- 'Payroll Deduction' => 'Palgamahaarvamine',
- 'Period' => 'Periood',
- 'Pg Database Administration' => 'Pg Andmebaasi administreerimine',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port puudub!',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Posted!' => 'Salvestatud!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Määrangud',
- 'Preferences saved!' => 'Määrangud salvestatud!',
- 'Prepayment' => 'Ettemaksud',
- 'Price' => 'Hind',
- 'Pricegroup' => 'Hinnagrupp',
- 'Pricegroup deleted!' => 'Hinnagrupp kustutatud!',
- 'Pricegroup missing!' => 'Hinnagrupp puudub!',
- 'Pricegroup saved!' => 'Hinnagrup salvestatud!',
- 'Pricegroups' => 'Hinnagrupid',
- 'Pricelist' => '',
- 'Print' => 'Trüki',
- 'Print and Post' => 'Trüki ja salvesta',
- 'Print and Save' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Printer' => 'Printer',
- 'Printing ... ' => 'Trükin',
- 'Profit Center' => '',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'Projekti Selgituse Tõlged',
- 'Project Number' => 'Projekti number',
- 'Project Number missing!' => 'Projekti number puudub!',
- 'Project Transactions' => 'Projekti Kanded',
- 'Project deleted!' => 'Projekt kustutatud!',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Project saved!' => 'Projekt salvestatud!',
- 'Projects' => 'Projektid',
- 'Purchase Order' => 'Ostutellimus',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ostutellimused',
- 'Qty' => 'Kogus',
- 'Quantity exceeds available units to stock!' => 'Kogus on suurem, kui laos olev hulk!',
- 'Quarter' => 'Trimester',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation ' => '',
- 'Quotation Date' => 'Hinnapakkumise kuupäev',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number' => 'Hinnapakkumise number',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Quotation deleted!' => 'Hinnapakkumine kustutatud!',
- 'Quotations' => 'Hinnapakkumised',
- 'R' => '',
- 'RFQ' => 'Hinnapakkumise Taotlus',
- 'RFQ ' => '',
- 'RFQ Number' => 'Hinnapakkumise Taotluse nr.',
- 'RFQs' => 'Hinnapakkumise Taotlused',
- 'ROP' => 'TM',
- 'Rate' => 'Määr',
- 'Rate missing!' => 'Määr puudub!',
- 'Recd' => 'Kattesaadud',
- 'Receipt' => 'Maksekviitung',
- 'Receipt posted!' => 'Maksekviitung salvestatud',
- 'Receipts' => 'Sissetulek',
- 'Receivables' => 'Nõuded',
- 'Receive' => 'Võtta vastu',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'Sihtkonto',
- 'Reference' => 'Referenss',
- 'Reference missing!' => 'Referenss puudub!',
- 'Remaining' => 'Kasutamata',
- 'Remove' => 'Eemalda',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => 'Trükijärjekorra failid eemaldatud!',
- 'Removing marked entries from queue ...' => 'Eemaldan märgitud kanded trükijärjekorrast...',
- 'Report for' => 'Aruanne',
- 'Reports' => 'Aruanded',
- 'Request for Quotation' => 'Hinnapakkumise Taotlus',
- 'Request for Quotations' => 'Hinnapakkumise Taotlused',
- 'Required by' => 'Tarneaeg',
- 'Retained Earnings' => 'Jaotamata kasum',
- 'Role' => '',
- 'S' => '',
- 'SIC' => 'Standardiseeritud Tööstuskood',
- 'SIC deleted!' => 'Standardiseeritud Tööstuskood Kustutatud!',
- 'SIC saved!' => 'Standardiseeritud Tööstuskood Salvestatud!',
- 'SKU' => '',
- 'SSN' => 'IK',
- 'Sale' => 'Müük',
- 'Sales' => 'Müük',
- 'Sales Invoice' => 'Müügiarve',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Müügiarved',
- 'Sales Order' => 'Müügitellimus',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Müügitellimused',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Müügiesindaja',
- 'Save' => 'Salvesta',
- 'Save Pricelist' => '',
- 'Save as new' => 'Salvesta uuena',
- 'Save to File' => 'Salvesta faili',
- 'Screen' => 'Ekraan',
- 'Search' => 'Otsi',
- 'Select' => 'Vali',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select all' => 'Vali kõik',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Müügihind',
- 'Send by E-Mail' => 'Saada e-postiga',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Serial Number' => 'Seerianumber',
- 'Service' => 'Teenus',
- 'Service Items' => 'Teenused',
- 'Services' => 'Teenused',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Dokumendipõhjade seadistamine',
- 'Ship' => 'Tarnimine',
- 'Ship Merchandise' => 'Tarni kaubad',
- 'Ship to' => 'Tarneaadress',
- 'Ship via' => 'Tarneviis',
- 'Shipping' => 'Tarned',
- 'Shipping Address' => 'Tarneaadress',
- 'Shipping Date' => 'Tarne kuupäev',
- 'Shipping Date missing!' => 'Tarne kuupäev puudub',
- 'Shipping Point' => '',
- 'Short' => 'Lühike',
- 'Signature' => 'Allkiri',
- 'Source' => 'Allikas',
- 'Spoolfile' => 'Trükijärjekorra fail',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => 'Standardiseeritud Tööstuskood',
- 'Startdate' => 'Algus Kuupäev',
- 'State' => '',
- 'State/Province' => 'Maakond',
- 'Statement' => 'Aruanne',
- 'Statement Balance' => 'Bilansiaruanne',
- 'Statement sent to' => 'Saata aruanne aadressil',
- 'Statements sent to printer!' => 'Saata aruanne printerile',
- 'Stock' => 'Ladu',
- 'Stock Assembly' => 'Komplekti lattu võtmine',
- 'Stylesheet' => 'Laaditabel',
- 'Sub-contract GIFI' => 'Allhange GIFI',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Summary' => 'Kokkuvõtte',
- 'Supervisor' => '',
- 'System' => 'Süsteem',
- 'System Defaults' => 'Süsteemi vaikimisi seadistused',
- 'Tax' => 'Maks',
- 'Tax Accounts' => 'Maksukontod',
- 'Tax Included' => 'Koos maksuga',
- 'Tax Number' => 'Registrinumber',
- 'Tax Number / SSN' => 'Registrinumber / Isikukood',
- 'Tax collected' => 'Kogutud maksud',
- 'Tax paid' => 'Makstud maksud',
- 'Taxable' => 'Maksustatav',
- 'Template saved!' => 'Dokumendipõhjad salvestatud!',
- 'Templates' => 'Dokumendipõhjad',
- 'Terms' => 'Maksetingimus',
- 'Text Templates' => 'Tekstipõhised Dokumendipõhjad',
- 'The following Datasets are not in use and can be deleted' => 'Järgnevad andmebaasid ei ole kasutusel ning võib kustutada',
- 'The following Datasets need to be updated' => 'Järgmised andmebaasid vajavad uuendamist',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Olemasolevate allikate eelkontroll. Praeguses staadiumis ei toimu andmete lisamist ega kustutamist.',
- 'Till' => 'Müügipunkt',
- 'To' => 'Kuni',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Kasutaja gruppi lisamiseks redigeeri nime, muuda kasutajanimi ja salvesta. Luuakse samade parameetritega uus kasutaja',
- 'Top Level' => '',
- 'Total' => 'Kokku',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Kande kuupäev puudub!',
- 'Transaction deleted!' => 'Kanne kustutatud!',
- 'Transaction posted!' => 'Kanne saadetud!',
- 'Transaction reversal enforced for all dates' => 'Kannete pööramine on kohustuslik kõikide kuupäevade ulatuses',
- 'Transaction reversal enforced up to' => 'Kannete pööramine on kohustuslik kuni',
- 'Transactions' => 'Kanded',
- 'Transfer' => '',
- 'Transfer Inventory' => 'Vii laoartiklid teisse lattu',
- 'Transfer to' => '',
- 'Translation' => 'Tõlge',
- 'Translation deleted!' => 'Tõlge kustutatud',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Translations' => 'Tõlked',
- 'Translations saved!' => 'Tõlked salvestatud',
- 'Trial Balance' => 'Proovibilanss',
- 'Type of Business' => 'Ettevõtte tüüp',
- 'Unit' => 'Ühik',
- 'Unit of measure' => 'Mõõtühik',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Uuendus',
- 'Update Dataset' => 'Uuenda andmebaas',
- 'Updated' => 'Uuendatud',
- 'Upgrading to Version' => 'Viin vastavusse Versiooniga',
- 'Use Templates' => 'Kasuta dokumendipõhjad',
- 'User' => 'Kasutaja',
- 'User deleted!' => 'Kasutaja kustutatud!',
- 'User saved!' => 'Kasutaja salvestatud!',
- 'Valid until' => 'Kehtiv kuni',
- 'Vendor' => 'Hankija',
- 'Vendor History' => 'Hankija ajalugu',
- 'Vendor Invoice' => 'Ostuarve',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Ostuarved',
- 'Vendor Number' => 'Hankija number',
- 'Vendor deleted!' => 'Hankija kustutatud!',
- 'Vendor missing!' => 'Hankija puudub!',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Vendor saved!' => 'Hankija salvestatud!',
- 'Vendors' => 'Hankijad',
- 'Version' => 'Versioon',
- 'Warehouse' => 'Ladu',
- 'Warehouse deleted!' => 'Ladu kustutatud!',
- 'Warehouse saved!' => 'Ladu salvestatud!',
- 'Warehouses' => 'Laod',
- 'Warning!' => 'Tähelepanu!',
- 'Weight' => 'Kaal',
- 'Weight Unit' => 'Kaaluühik',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'Work Orders' => 'Töökäsud',
- 'Work Phone' => 'Töötelefon',
- 'Year' => 'Aasta',
- 'Yearend' => 'Kasumi eraldamine',
- 'Yearend date missing!' => 'Kasumi eraldamise kuupäev puudub!',
- 'Yearend posted!' => 'Kasumi eraldamine salvestatud!',
- 'Yearend posting failed!' => 'Kasumi eraldamise teostamine ebaõnnestus',
- 'Yes' => 'Jah',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nimi sisestamata!',
- 'You must enter a host and port for local and remote connections!' => 'Ühenduse loomiseks palun sisesta serveri nimi ja port',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'konto tüüpi ei saa muuta',
- 'as at' => 'seisuga',
- 'days' => 'päeva',
- 'does not exist' => 'ei eksisteeri',
- 'done' => 'tehtud',
- 'ea' => 'tk',
- 'for Period' => 'Periood',
- 'is already a member!' => 'on juba kasutaja!',
- 'is not a member!' => 'ei ole kasutaja!',
- 'localhost' => 'localhost',
- 'locked!' => 'lukustatud!',
- 'posted!' => 'salvestatud!',
- 'sent' => 'saadetud',
- 'successfully created!' => 'loodud!',
- 'successfully deleted!' => 'kustutatud!',
- 'website' => 'kodulehekülg',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/am b/sql-ledger/locale/ee/am
deleted file mode 100644
index 5eba056..0000000
--- a/sql-ledger/locale/ee/am
+++ /dev/null
@@ -1,238 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kohustused',
- 'AR' => 'Nõuded',
- 'About' => 'Programmi Info',
- 'Account' => 'Konto',
- 'Account Number' => 'Konto number',
- 'Account Number missing!' => 'Konto number puudub',
- 'Account Type' => 'Konto tüüp',
- 'Account Type missing!' => 'Konto tüüp puudub!',
- 'Account deleted!' => 'Konto on kustutatud!',
- 'Account does not exist!' => 'Konto ei eksisteeri',
- 'Account saved!' => 'Konto on salvestatud',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Account' => 'Lisa konto',
- 'Add Business' => 'Lisa Ettevõtte',
- 'Add Department' => 'Lisa Osakond',
- 'Add GIFI' => 'Lisa GIFI',
- 'Add Language' => 'Lisa Keel',
- 'Add SIC' => 'Lisa Standardiseeritud Tööstuskood',
- 'Add Warehouse' => 'Lisa Ladu',
- 'Address' => 'Aadress',
- 'Asset' => 'Vara',
- 'Audit Control' => 'Audit',
- 'Backup sent to' => 'Varukoopia saadetakse',
- 'Books are open' => 'Kanded on avatud',
- 'Business Number' => 'Ettevõtte kood',
- 'Business deleted!' => 'Ettevõtte kustutatud',
- 'Business saved!' => 'Ettevõtte salvestatud',
- 'COGS' => 'COGS',
- 'Cannot delete account!' => 'Kontot ei saa kustutada!',
- 'Cannot delete default account!' => 'Vaikimisi kontot ei saa kustutada!',
- 'Cannot save account!' => 'Kontot ei saa salvestada!',
- 'Cannot save defaults!' => 'Ei saa salvestada vaikimisi maarangud!',
- 'Cannot save preferences!' => 'Maaranguid ei saa salvestada!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Konto saab olla, kas Nõue, Kohustuse või Tulu/Kulu tüüpi',
- 'Cash' => 'Kassa',
- 'Character Set' => 'Kooditabel',
- 'Chart of Accounts' => 'Kontoplaan',
- 'Close Books up to' => 'Sulge kanded kuni',
- 'Code' => 'Kood',
- 'Code missing!' => 'Kood pole leitav',
- 'Company' => 'Ettevõte',
- 'Continue' => 'Edasi',
- 'Contra' => 'Ammortisatsioon',
- 'Copy to COA' => 'Kopeeri kontoplaani',
- 'Credit' => 'Kreedit',
- 'Customer Number' => 'Kliendi number',
- 'Database Host' => 'Andmebaasiserver',
- 'Dataset' => 'Andmekogu',
- 'Date Format' => 'Kuupäeva formaat',
- 'Debit' => 'Deebet',
- 'Defaults saved!' => 'Vaikimisi määrangud salvestatud',
- 'Delete' => 'Kustuta',
- 'Delete Account' => 'Kustuta konto',
- 'Department deleted!' => 'Osakond kustutatud!',
- 'Department saved!' => 'Osakond salvestatud!',
- 'Departments' => 'Osakonnad',
- 'Description' => 'Selgitus',
- 'Description missing!' => 'Selgitus puudub!',
- 'Discount' => 'Allahindlus',
- 'Dropdown Limit' => 'Hüppikmenüü Piirang',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Muudatused',
- 'Edit Account' => 'Konto muudatused',
- 'Edit Business' => 'Muuda Ettevõtte',
- 'Edit Department' => 'Muuda osakonna andmed',
- 'Edit GIFI' => 'Muuda GIFI',
- 'Edit Language' => 'Muuda Keel',
- 'Edit Preferences for' => 'Määrangute muutmine: ',
- 'Edit SIC' => 'Muuda Standardiseeritud Tööstuskood',
- 'Edit Template' => 'Dokumendipõhja muutmine',
- 'Edit Warehouse' => 'Muuda Lao andmed',
- 'Enforce transaction reversal for all dates' => 'Muuda kannete pööramine kõikide kuupäevade ulatuses kohustuslikuks',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Sisesta kohalikud- ja välisvaluutad (kuni 3 tähemärki, koolonitega eraltatud, nt. CAD:USD:EUR)',
- 'Equity' => 'Omakapital',
- 'Expense' => 'Kulu',
- 'Expense Account' => 'Kulukonto',
- 'Expense/Asset' => 'Kulu/Vara',
- 'Fax' => 'Faks',
- 'Foreign Exchange Gain' => 'Valuutakursside vahe kasum',
- 'Foreign Exchange Loss' => 'Valuutakursside vahe kahjum',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI kustutatud!',
- 'GIFI missing!' => 'GIFI puudub!',
- 'GIFI saved!' => 'GIFI salvestatud!',
- 'Heading' => 'Päis',
- 'Include in drop-down menus' => 'Kaasa valikmenüüdes',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Kaasa antud konto klient/tarnija vormides, et märkida klient/tarnija maksustatavaks',
- 'Income' => 'Kasum',
- 'Income Account' => 'Kasumikonto',
- 'Inventory' => 'Laoarvestus',
- 'Inventory Account' => 'Laokonto',
- 'Is this a summary account to record' => 'Kirje summaarne konto',
- 'Labor/Overhead' => 'Tööjõukulu',
- 'Language' => 'Keel',
- 'Language deleted!' => 'Keel kustutatud!',
- 'Language saved!' => 'Keel salvestatud!',
- 'Languages' => 'Keeled',
- 'Last Numbers & Default Accounts' => 'Viimased numbrid ja vaikimisi kontod',
- 'Liability' => 'Kohustus',
- 'Licensed to' => 'Kasutaja andmed:',
- 'Link' => 'Seosed',
- 'Menu Width' => 'Menüü Laius',
- 'Method' => 'Meetod',
- 'Name' => 'Nimi',
- 'No' => 'Ei',
- 'No email address for' => 'E-maili aadress puudub',
- 'Number' => 'Kood',
- 'Number Format' => 'Numbri formaat',
- 'Parts Inventory' => 'Tooted',
- 'Password' => 'Parool',
- 'Payables' => 'Kohustused',
- 'Payment' => 'Maksmine',
- 'Phone' => 'Telefon',
- 'Preferences saved!' => 'Määrangud salvestatud!',
- 'Printer' => 'Printer',
- 'RFQ Number' => 'Hinnapakkumise Taotluse nr.',
- 'Rate' => 'Määr',
- 'Receivables' => 'Nõuded',
- 'Reference' => 'Referenss',
- 'Retained Earnings' => 'Jaotamata kasum',
- 'SIC deleted!' => 'Standardiseeritud Tööstuskood Kustutatud!',
- 'SIC saved!' => 'Standardiseeritud Tööstuskood Salvestatud!',
- 'Save' => 'Salvesta',
- 'Save as new' => 'Salvesta uuena',
- 'Service Items' => 'Teenused',
- 'Signature' => 'Allkiri',
- 'Standard Industrial Codes' => 'Standardiseeritud Tööstuskood',
- 'Stylesheet' => 'Laaditabel',
- 'System Defaults' => 'Süsteemi vaikimisi seadistused',
- 'Tax' => 'Maks',
- 'Tax Accounts' => 'Maksukontod',
- 'Template saved!' => 'Dokumendipõhjad salvestatud!',
- 'Transaction reversal enforced for all dates' => 'Kannete pööramine on kohustuslik kõikide kuupäevade ulatuses',
- 'Transaction reversal enforced up to' => 'Kannete pööramine on kohustuslik kuni',
- 'Type of Business' => 'Ettevõtte tüüp',
- 'User' => 'Kasutaja',
- 'Vendor Number' => 'Hankija number',
- 'Version' => 'Versioon',
- 'Warehouse deleted!' => 'Ladu kustutatud!',
- 'Warehouse saved!' => 'Ladu salvestatud!',
- 'Warehouses' => 'Laod',
- 'Weight Unit' => 'Kaaluühik',
- 'Yearend' => 'Kasumi eraldamine',
- 'Yearend date missing!' => 'Kasumi eraldamise kuupäev puudub!',
- 'Yearend posted!' => 'Kasumi eraldamine salvestatud!',
- 'Yearend posting failed!' => 'Kasumi eraldamise teostamine ebaõnnestus',
- 'Yes' => 'Jah',
- 'account cannot be set to any other type of account' => 'konto tüüpi ei saa muuta',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'lisa_konto' => 'add_account',
- 'lisa_ettevõtte' => 'add_business',
- 'lisa_osakond' => 'add_department',
- 'lisa_keel' => 'add_language',
- 'lisa_standardiseeritud_tööstuskood' => 'add_sic',
- 'lisa_ladu' => 'add_warehouse',
- 'edasi' => 'continue',
- 'kopeeri_kontoplaani' => 'copy_to_coa',
- 'kustuta' => 'delete',
- 'muudatused' => 'edit',
- 'konto_muudatused' => 'edit_account',
- 'salvesta' => 'save',
- 'salvesta_uuena' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ap b/sql-ledger/locale/ee/ap
deleted file mode 100644
index ff97b58..0000000
--- a/sql-ledger/locale/ee/ap
+++ /dev/null
@@ -1,168 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Tasumata kohustused',
- 'AP Transaction' => 'Kohustuste kanne',
- 'AP Transactions' => 'Kohustuste kanded',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Võlaosa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Transaction' => 'Kas oled kindel, et soovid kustutada kande',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Cannot delete transaction!' => 'Kannet ei saa kustutada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cannot post transaction for a closed period!' => 'Kannet ei saa salvestada suletud perioodile!',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Check' => 'Tshekk',
- 'Closed' => 'Suletud',
- 'Confirm!' => 'Kinnita!',
- 'Continue' => 'Edasi',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Date Paid' => 'Maksekuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'Due Date missing!' => 'Maksetähtaeg puudub!',
- 'Employee' => 'Töötaja',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'ID' => 'ID',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Month' => 'Kuu',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Open' => 'Avatud',
- 'Order' => 'Tellimus',
- 'Order Number' => 'Tellimuse number',
- 'PDF' => 'PDF',
- 'Paid' => 'Makstud',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payments' => 'Maksed',
- 'Period' => 'Periood',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Postscript' => 'Postscript',
- 'Print' => 'Trüki',
- 'Print and Post' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Quarter' => 'Trimester',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Receipt' => 'Maksekviitung',
- 'Remaining' => 'Kasutamata',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Source' => 'Allikas',
- 'Subtotal' => 'Vahesumma',
- 'Tax' => 'Maks',
- 'Tax Included' => 'Koos maksuga',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Transaction deleted!' => 'Kanne kustutatud!',
- 'Transaction posted!' => 'Kanne saadetud!',
- 'Update' => 'Uuendus',
- 'Vendor' => 'Hankija',
- 'Vendor missing!' => 'Hankija puudub!',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kohustuste_kanne' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'trüki' => 'print',
- 'trüki_ja_salvesta' => 'print_and_post',
- 'uuendus' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ar b/sql-ledger/locale/ee/ar
deleted file mode 100644
index dfc2601..0000000
--- a/sql-ledger/locale/ee/ar
+++ /dev/null
@@ -1,168 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Tasumata nõued',
- 'AR Transaction' => 'Nõuete kanne',
- 'AR Transactions' => 'Nõuete kanded',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Võlaosa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Transaction' => 'Kas oled kindel, et soovid kustutada kande',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Cannot delete transaction!' => 'Kannet ei saa kustutada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cannot post transaction for a closed period!' => 'Kannet ei saa salvestada suletud perioodile!',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Check' => 'Tshekk',
- 'Closed' => 'Suletud',
- 'Confirm!' => 'Kinnita!',
- 'Continue' => 'Edasi',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Customer' => 'Klient',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Date Paid' => 'Maksekuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'Due Date missing!' => 'Maksetähtaeg puudub!',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'ID' => 'ID',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Month' => 'Kuu',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Open' => 'Avatud',
- 'Order' => 'Tellimus',
- 'Order Number' => 'Tellimuse number',
- 'PDF' => 'PDF',
- 'Paid' => 'Makstud',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payments' => 'Maksed',
- 'Period' => 'Periood',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Postscript' => 'Postscript',
- 'Print' => 'Trüki',
- 'Print and Post' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Quarter' => 'Trimester',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Receipt' => 'Maksekviitung',
- 'Remaining' => 'Kasutamata',
- 'Salesperson' => 'Müügiesindaja',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Ship via' => 'Tarneviis',
- 'Source' => 'Allikas',
- 'Subtotal' => 'Vahesumma',
- 'Tax' => 'Maks',
- 'Tax Included' => 'Koos maksuga',
- 'Till' => 'Müügipunkt',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Transaction deleted!' => 'Kanne kustutatud!',
- 'Transaction posted!' => 'Kanne saadetud!',
- 'Update' => 'Uuendus',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'nõuete_kanne' => 'ar_transaction',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'trüki' => 'print',
- 'trüki_ja_salvesta' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'uuendus' => 'update',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/arap b/sql-ledger/locale/ee/arap
deleted file mode 100644
index 4c00f02..0000000
--- a/sql-ledger/locale/ee/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Aadress',
- 'Continue' => 'Edasi',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Description' => 'Selgitus',
- 'Number' => 'Kood',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Vendor not on file!' => 'Hankijat pole failis!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'edasi' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/arapprn b/sql-ledger/locale/ee/arapprn
deleted file mode 100644
index a53c3fb..0000000
--- a/sql-ledger/locale/ee/arapprn
+++ /dev/null
@@ -1,34 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Amount' => 'Summa',
- 'Check' => 'Tshekk',
- 'Continue' => 'Edasi',
- 'Date' => 'Kuupäev',
- 'Memo' => 'Memo',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Trükitud',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Receipt' => 'Maksekviitung',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Source' => 'Allikas',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'edasi' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/bp b/sql-ledger/locale/ee/bp
deleted file mode 100644
index bf37d14..0000000
--- a/sql-ledger/locale/ee/bp
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Cannot remove files!' => 'Faili ei saa kustutada!',
- 'Confirm!' => 'Kinnita!',
- 'Continue' => 'Edasi',
- 'Current' => 'Käesolev',
- 'Customer' => 'Klient',
- 'Date' => 'Kuupäev',
- 'From' => 'Alates',
- 'Invoice' => 'Arve',
- 'Invoice Number' => 'Arve number',
- 'Marked entries printed!' => 'Märgitud kanded väljatrükitud!',
- 'Month' => 'Kuu',
- 'Order' => 'Tellimus',
- 'Order Number' => 'Tellimuse number',
- 'Packing Lists' => 'Saatelehed',
- 'Period' => 'Periood',
- 'Print' => 'Trüki',
- 'Printing ... ' => 'Trükin',
- 'Purchase Orders' => 'Ostutellimused',
- 'Quarter' => 'Trimester',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Number' => 'Hinnapakkumise number',
- 'Quotations' => 'Hinnapakkumised',
- 'RFQs' => 'Hinnapakkumise Taotlused',
- 'Receipts' => 'Sissetulek',
- 'Reference' => 'Referenss',
- 'Remove' => 'Eemalda',
- 'Removed spoolfiles!' => 'Trükijärjekorra failid eemaldatud!',
- 'Removing marked entries from queue ...' => 'Eemaldan märgitud kanded trükijärjekorrast...',
- 'Sales Invoices' => 'Müügiarved',
- 'Sales Orders' => 'Müügitellimused',
- 'Select all' => 'Vali kõik',
- 'Spoolfile' => 'Trükijärjekorra fail',
- 'To' => 'Kuni',
- 'Vendor' => 'Hankija',
- 'Work Orders' => 'Töökäsud',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
- 'done' => 'tehtud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'edasi' => 'continue',
- 'trüki' => 'print',
- 'eemalda' => 'remove',
- 'vali_kõik' => 'select_all',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ca b/sql-ledger/locale/ee/ca
deleted file mode 100644
index 538a00a..0000000
--- a/sql-ledger/locale/ee/ca
+++ /dev/null
@@ -1,57 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanss',
- 'Chart of Accounts' => 'Kontoplaan',
- 'Credit' => 'Kreedit',
- 'Current' => 'Käesolev',
- 'Date' => 'Kuupäev',
- 'Debit' => 'Deebet',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'List Transactions' => 'Kannete sirvimine',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Kuu',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Period' => 'Periood',
- 'Project Number' => 'Projekti number',
- 'Quarter' => 'Trimester',
- 'Reference' => 'Referenss',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Subtotal' => 'Vahesumma',
- 'To' => 'Kuni',
- 'Year' => 'Aasta',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'kannete_sirvimine' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/cp b/sql-ledger/locale/ee/cp
deleted file mode 100644
index 7dcbcf7..0000000
--- a/sql-ledger/locale/ee/cp
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kohustused',
- 'AR' => 'Nõuded',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Address' => 'Aadress',
- 'All' => 'Kõik',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Võlaosa',
- 'Cannot post Payment!' => 'Makset ei saa salvestada!',
- 'Cannot post Receipt!' => 'Sisetulekuarderit ei saa salvestada!',
- 'Cannot process payment for a closed period!' => 'Laekumist ei saa salvestada suletud periodile!',
- 'Continue' => 'Edasi',
- 'Currency' => 'Valuuta',
- 'Customer' => 'Klient',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Date missing!' => 'Kuupäev puudub!',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Invoice' => 'Arve',
- 'Invoices' => 'Arved',
- 'Memo' => 'Memo',
- 'Number' => 'Kood',
- 'PDF' => 'PDF',
- 'Payment' => 'Maksmine',
- 'Payment posted!' => 'Makse saadetud!',
- 'Post' => 'Salvesta',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Ettemaksud',
- 'Print' => 'Trüki',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Queue' => 'Trükijärjekord',
- 'Receipt' => 'Maksekviitung',
- 'Receipt posted!' => 'Maksekviitung salvestatud',
- 'Screen' => 'Ekraan',
- 'Select' => 'Vali',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Source' => 'Allikas',
- 'Update' => 'Uuendus',
- 'Vendor' => 'Hankija',
- 'Vendor not on file!' => 'Hankijat pole failis!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'edasi' => 'continue',
- 'salvesta' => 'post',
- 'trüki' => 'print',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ct b/sql-ledger/locale/ee/ct
deleted file mode 100644
index 42627cc..0000000
--- a/sql-ledger/locale/ee/ct
+++ /dev/null
@@ -1,166 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kohustuste kanne',
- 'AP Transactions' => 'Kohustuste kanded',
- 'AR Transaction' => 'Nõuete kanne',
- 'AR Transactions' => 'Nõuete kanded',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Customer' => 'Lisa klient',
- 'Add Vendor' => 'Lisa tarnija',
- 'Address' => 'Aadress',
- 'All' => 'Kõik',
- 'Amount' => 'Summa',
- 'BIC' => 'BIC (Rahvusvaheline pangakood - S.W.I.F.T)',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Cannot delete customer!' => 'Kienti ei saa kustutada!',
- 'Cannot delete vendor!' => 'Tarnijat ei saa kustutada!',
- 'Cc' => 'Cc',
- 'City' => 'Linn',
- 'Closed' => 'Suletud',
- 'Company Name' => 'Ettevõtte nimi',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Cost' => 'Kulu',
- 'Country' => 'Riik',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Customer History' => 'Kliendi ajalugu',
- 'Customer Number' => 'Kliendi number',
- 'Customer deleted!' => 'Klient on kustutatud!',
- 'Customer saved!' => 'Klient salvestatud!',
- 'Customers' => 'Kliendid',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Description' => 'Selgitus',
- 'Discount' => 'Allahindlus',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Muuda Kliendi Andmeid',
- 'Edit Vendor' => 'Muuda Tarnija andmeid',
- 'Employee' => 'Töötaja',
- 'Enddate' => 'Lõppkuupäev',
- 'Fax' => 'Faks',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupp',
- 'IBAN' => 'IBAN - Rahvusvaheline Pangakonto Number',
- 'ID' => 'ID',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Invoice' => 'Arve',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Language' => 'Keel',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puudub!',
- 'Notes' => 'Märkused',
- 'Number' => 'Kood',
- 'Open' => 'Avatud',
- 'Order' => 'Tellimus',
- 'Orphaned' => 'Seosteta',
- 'Part Number' => 'Toote kood',
- 'Phone' => 'Telefon',
- 'Pricegroup' => 'Hinnagrupp',
- 'Project Number' => 'Projekti number',
- 'Purchase Order' => 'Ostutellimus',
- 'Purchase Orders' => 'Ostutellimused',
- 'Qty' => 'Kogus',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotations' => 'Hinnapakkumised',
- 'RFQ' => 'Hinnapakkumise Taotlus',
- 'Request for Quotations' => 'Hinnapakkumise Taotlused',
- 'SIC' => 'Standardiseeritud Tööstuskood',
- 'Sales Invoice' => 'Müügiarve',
- 'Sales Invoices' => 'Müügiarved',
- 'Sales Order' => 'Müügitellimus',
- 'Sales Orders' => 'Müügitellimused',
- 'Salesperson' => 'Müügiesindaja',
- 'Save' => 'Salvesta',
- 'Search' => 'Otsi',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Sell Price' => 'Müügihind',
- 'Serial Number' => 'Seerianumber',
- 'Shipping Address' => 'Tarneaadress',
- 'Startdate' => 'Algus Kuupäev',
- 'State/Province' => 'Maakond',
- 'Sub-contract GIFI' => 'Allhange GIFI',
- 'Subtotal' => 'Vahesumma',
- 'Summary' => 'Kokkuvõtte',
- 'Tax' => 'Maks',
- 'Tax Included' => 'Koos maksuga',
- 'Tax Number' => 'Registrinumber',
- 'Tax Number / SSN' => 'Registrinumber / Isikukood',
- 'Taxable' => 'Maksustatav',
- 'Terms' => 'Maksetingimus',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Type of Business' => 'Ettevõtte tüüp',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Vendor History' => 'Hankija ajalugu',
- 'Vendor Invoice' => 'Ostuarve',
- 'Vendor Invoices' => 'Ostuarved',
- 'Vendor Number' => 'Hankija number',
- 'Vendor deleted!' => 'Hankija kustutatud!',
- 'Vendor saved!' => 'Hankija salvestatud!',
- 'Vendors' => 'Hankijad',
- 'days' => 'päeva',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'kohustuste_kanne' => 'ap_transaction',
- 'nõuete_kanne' => 'ar_transaction',
- 'lisa_klient' => 'add_customer',
- 'lisa_tarnija' => 'add_vendor',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'pricelist' => 'pricelist',
- 'ostutellimus' => 'purchase_order',
- 'hinnapakkumine' => 'quotation',
- 'hinnapakkumise_taotlus' => 'rfq',
- 'müügiarve' => 'sales_invoice',
- 'müügitellimus' => 'sales_order',
- 'salvesta' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'uuendus' => 'update',
- 'ostuarve' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/gl b/sql-ledger/locale/ee/gl
deleted file mode 100644
index e9bd885..0000000
--- a/sql-ledger/locale/ee/gl
+++ /dev/null
@@ -1,138 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kohustuste kanne',
- 'AR Transaction' => 'Nõuete kanne',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Cash Transfer Transaction' => 'Lisa sularaha ülekanne',
- 'Add General Ledger Transaction' => 'Lisa pearaamatu kanne',
- 'Address' => 'Aadress',
- 'All' => 'Kõik',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Transaction' => 'Kas oled kindel, et soovid kustutada kande',
- 'Asset' => 'Vara',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanss',
- 'Cannot delete transaction!' => 'Kannet ei saa kustutada!',
- 'Cannot post transaction for a closed period!' => 'Kannet ei saa salvestada suletud perioodile!',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Confirm!' => 'Kinnita!',
- 'Continue' => 'Edasi',
- 'Contra' => 'Ammortisatsioon',
- 'Credit' => 'Kreedit',
- 'Current' => 'Käesolev',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Debit' => 'Deebet',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Edit General Ledger Transaction' => 'Muuda Pearaamatu kande',
- 'Equity' => 'Omakapital',
- 'Expense' => 'Kulu',
- 'FX' => 'Valuutavahetus',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Pearaamatu kanne',
- 'General Ledger' => 'Pearaamat',
- 'ID' => 'ID',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Income' => 'Kasum',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Liability' => 'Kohustus',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Kuu',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Out of balance transaction!' => 'Kanne ei ole balanseeritud!',
- 'Period' => 'Periood',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Quarter' => 'Trimester',
- 'Reference' => 'Referenss',
- 'Reference missing!' => 'Referenss puudub!',
- 'Reports' => 'Aruanded',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Source' => 'Allikas',
- 'Subtotal' => 'Vahesumma',
- 'To' => 'Kuni',
- 'Transaction Date missing!' => 'Kande kuupäev puudub!',
- 'Transaction deleted!' => 'Kanne kustutatud!',
- 'Transaction posted!' => 'Kanne saadetud!',
- 'Update' => 'Uuendus',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Warning!' => 'Tähelepanu!',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kohustuste_kanne' => 'ap_transaction',
- 'nõuete_kanne' => 'ar_transaction',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'pearaamatu_kanne' => 'gl_transaction',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'uuendus' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/hr b/sql-ledger/locale/ee/hr
deleted file mode 100644
index f1dd838..0000000
--- a/sql-ledger/locale/ee/hr
+++ /dev/null
@@ -1,99 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kohustused',
- 'Above' => 'Ülal',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Deduction' => 'Lisa mahaarvamine',
- 'Add Employee' => 'Lisa töötaja',
- 'Address' => 'Aadress',
- 'Administrator' => 'Administraator',
- 'After Deduction' => 'Peale mahaarvamist',
- 'All' => 'Kõik',
- 'Amount' => 'Summa',
- 'Amount missing!' => 'Summa puudub!',
- 'BIC' => 'BIC (Rahvusvaheline pangakood - S.W.I.F.T)',
- 'Before Deduction' => 'Enne mahaarvamisi',
- 'Below' => 'All',
- 'City' => 'Linn',
- 'Continue' => 'Edasi',
- 'Country' => 'Riik',
- 'Delete' => 'Kustuta',
- 'Description' => 'Selgitus',
- 'Description missing!' => 'Selgitus puudub!',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Muuda Mahaarvamine',
- 'Edit Employee' => 'Muuda Töötaja andmed',
- 'Employee' => 'Töötaja',
- 'Employee Name' => 'Töötaja nimi',
- 'Employee deleted!' => 'Töötaja kustutatud',
- 'Employee pays' => 'Töötaja tasub',
- 'Employee saved!' => 'Töötaja salvestatud',
- 'Employees' => 'Töötajad',
- 'Employer' => 'Tööandja',
- 'Employer pays' => 'Tööandja tasub',
- 'Enddate' => 'Lõppkuupäev',
- 'Expense' => 'Kulu',
- 'Home Phone' => 'Kodune telefoninumber',
- 'IBAN' => 'IBAN - Rahvusvaheline Pangakonto Number',
- 'ID' => 'ID',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Login' => 'Login',
- 'Maximum' => 'Maksimum',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puudub!',
- 'Notes' => 'Märkused',
- 'Number' => 'Kood',
- 'Orphaned' => 'Seosteta',
- 'Payroll Deduction' => 'Palgamahaarvamine',
- 'Rate' => 'Määr',
- 'Rate missing!' => 'Määr puudub!',
- 'SSN' => 'IK',
- 'Sales' => 'Müük',
- 'Save' => 'Salvesta',
- 'Save as new' => 'Salvesta uuena',
- 'Startdate' => 'Algus Kuupäev',
- 'State/Province' => 'Maakond',
- 'Update' => 'Uuendus',
- 'User' => 'Kasutaja',
- 'Work Phone' => 'Töötelefon',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'lisa_mahaarvamine' => 'add_deduction',
- 'lisa_töötaja' => 'add_employee',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'salvesta' => 'save',
- 'salvesta_uuena' => 'save_as_new',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ic b/sql-ledger/locale/ee/ic
deleted file mode 100644
index 024f957..0000000
--- a/sql-ledger/locale/ee/ic
+++ /dev/null
@@ -1,260 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Active' => 'Aktiva',
- 'Add' => 'Lisa',
- 'Add Assembly' => 'Lisa komplekt',
- 'Add Labor/Overhead' => 'Lisa Tööjõukulu',
- 'Add Part' => 'Lisa Toote',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Add Service' => 'Lisa teenus',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Assemblies' => 'Komplektid',
- 'Assemblies restocked!' => 'Komplektid lattu tagastatud!',
- 'Assembly' => 'Komplekt',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'COGS' => 'COGS',
- 'Cannot delete item!' => 'Toodet ei saa kustutada!',
- 'Cash' => 'Kassa',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Kontrolli ladu',
- 'City' => 'Linn',
- 'Closed' => 'Suletud',
- 'Company Name' => 'Ettevõtte nimi',
- 'Components' => 'Komponendid',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Cost' => 'Kulu',
- 'Country' => 'Riik',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Customer' => 'Klient',
- 'Customer Number' => 'Kliendi number',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Description' => 'Selgitus',
- 'Drawing' => 'Pildid',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit Assembly' => 'Muuda Komplekti',
- 'Edit Labor/Overhead' => 'Muuda tööjõukulu',
- 'Edit Part' => 'Muuda Toote',
- 'Edit Service' => 'Teenuse muutmine',
- 'Employee' => 'Töötaja',
- 'Expense' => 'Kulu',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'Image' => 'Pilt',
- 'In-line' => 'Dokumendisisene',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Income' => 'Kasum',
- 'Individual Items' => 'Komponendid',
- 'Inventory' => 'Laoarvestus',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Enne komplekti aegunuks märkimist peab laoseis null olema!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Enne toote aegunuks märkimist peab laoseis null olema!',
- 'Invoice' => 'Arve',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Item deleted!' => 'Toode kustutatud!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Items' => 'Tooted',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Labor/Overhead' => 'Tööjõukulu',
- 'Line Total' => 'Rea summa',
- 'Link Accounts' => 'Seosta kontod',
- 'List Price' => 'Hinnakirja hind',
- 'Make' => 'Tootja',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Teade',
- 'Microfiche' => 'Microkaart',
- 'Model' => 'Mudel',
- 'Name' => 'Nimi',
- 'No.' => 'Nr.',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Obsolete' => 'Aegunud',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'On Hand' => 'Laos',
- 'Open' => 'Avatud',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'Orphaned' => 'Seosteta',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Part' => 'Toode',
- 'Parts' => 'Osad',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Pricegroup' => 'Hinnagrupp',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Ostutellimus',
- 'Purchase Orders' => 'Ostutellimused',
- 'Qty' => 'Kogus',
- 'Quantity exceeds available units to stock!' => 'Kogus on suurem, kui laos olev hulk!',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Quotations' => 'Hinnapakkumised',
- 'RFQ' => 'Hinnapakkumise Taotlus',
- 'ROP' => 'TM',
- 'Recd' => 'Kattesaadud',
- 'Required by' => 'Tarneaeg',
- 'Sales Invoice' => 'Müügiarve',
- 'Sales Invoices' => 'Müügiarved',
- 'Sales Order' => 'Müügitellimus',
- 'Sales Orders' => 'Müügitellimused',
- 'Save' => 'Salvesta',
- 'Save as new' => 'Salvesta uuena',
- 'Screen' => 'Ekraan',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Sell Price' => 'Müügihind',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Serial Number' => 'Seerianumber',
- 'Service' => 'Teenus',
- 'Services' => 'Teenused',
- 'Ship' => 'Tarnimine',
- 'Ship to' => 'Tarneaadress',
- 'Shipping Address' => 'Tarneaadress',
- 'Short' => 'Lühike',
- 'State/Province' => 'Maakond',
- 'Stock' => 'Ladu',
- 'Stock Assembly' => 'Komplekti lattu võtmine',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Tax' => 'Maks',
- 'To' => 'Kuni',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Unit' => 'Ühik',
- 'Unit of measure' => 'Mõõtühik',
- 'Update' => 'Uuendus',
- 'Updated' => 'Uuendatud',
- 'Vendor' => 'Hankija',
- 'Vendor Invoice' => 'Ostuarve',
- 'Vendor Invoices' => 'Ostuarved',
- 'Vendor Number' => 'Hankija number',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Warehouse' => 'Ladu',
- 'Weight' => 'Kaal',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'days' => 'päeva',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'lisa_komplekt' => 'add_assembly',
- 'lisa_tööjõukulu' => 'add_labor/overhead',
- 'lisa_toote' => 'add_part',
- 'lisa_teenus' => 'add_service',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'muuda_komplekti' => 'edit_assembly',
- 'muuda_toote' => 'edit_part',
- 'teenuse_muutmine' => 'edit_service',
- 'salvesta' => 'save',
- 'salvesta_uuena' => 'save_as_new',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/io b/sql-ledger/locale/ee/io
deleted file mode 100644
index a5c0f1b..0000000
--- a/sql-ledger/locale/ee/io
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Address' => 'Aadress',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Cc' => 'Cc',
- 'City' => 'Linn',
- 'Company Name' => 'Ettevõtte nimi',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Country' => 'Riik',
- 'Customer Number' => 'Kliendi number',
- 'Date' => 'Kuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Description' => 'Selgitus',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'In-line' => 'Dokumendisisene',
- 'Invoice' => 'Arve',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Teade',
- 'No.' => 'Nr.',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Part' => 'Toode',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Ostutellimus',
- 'Qty' => 'Kogus',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Recd' => 'Kattesaadud',
- 'Required by' => 'Tarneaeg',
- 'Sales Order' => 'Müügitellimus',
- 'Screen' => 'Ekraan',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Service' => 'Teenus',
- 'Ship' => 'Tarnimine',
- 'Ship to' => 'Tarneaadress',
- 'Shipping Address' => 'Tarneaadress',
- 'State/Province' => 'Maakond',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'To' => 'Kuni',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Unit' => 'Ühik',
- 'Vendor Number' => 'Hankija number',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'edasi' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ir b/sql-ledger/locale/ee/ir
deleted file mode 100644
index 611e813..0000000
--- a/sql-ledger/locale/ee/ir
+++ /dev/null
@@ -1,211 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Add Vendor Invoice' => 'Lisa Ostuarve',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Invoice Number' => 'Kas oled kindel, et soovid kustutada arve',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Cannot delete invoice!' => 'Arvet ei saa kustutada',
- 'Cannot post invoice for a closed period!' => 'Arvet ei saa salvestada suletud perioodile!',
- 'Cannot post invoice!' => 'Arvet ei saa salvestada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cc' => 'Cc',
- 'City' => 'Linn',
- 'Company Name' => 'Ettevõtte nimi',
- 'Confirm!' => 'Kinnita!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Country' => 'Riik',
- 'Credit Limit' => 'Krediidilimiit',
- 'Currency' => 'Valuuta',
- 'Customer Number' => 'Kliendi number',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit Vendor Invoice' => 'Ostuarve muutmine',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'In-line' => 'Dokumendisisene',
- 'Internal Notes' => 'Sisemärkused',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Invoice deleted!' => 'Arve kustutatud!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Language' => 'Keel',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Message' => 'Teade',
- 'No.' => 'Nr.',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Part' => 'Toode',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payments' => 'Maksed',
- 'Phone' => 'Telefon',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Purchase Order' => 'Ostutellimus',
- 'Qty' => 'Kogus',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Recd' => 'Kattesaadud',
- 'Record in' => 'Sihtkonto',
- 'Remaining' => 'Kasutamata',
- 'Required by' => 'Tarneaeg',
- 'Sales Order' => 'Müügitellimus',
- 'Screen' => 'Ekraan',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Service' => 'Teenus',
- 'Ship' => 'Tarnimine',
- 'Ship to' => 'Tarneaadress',
- 'Shipping Address' => 'Tarneaadress',
- 'Source' => 'Allikas',
- 'State/Province' => 'Maakond',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Tax Included' => 'Koos maksuga',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Vendor' => 'Hankija',
- 'Vendor Number' => 'Hankija number',
- 'Vendor missing!' => 'Hankija puudub!',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'Yes' => 'Jah',
- 'ea' => 'tk',
- 'posted!' => 'salvestatud!',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'ostutellimus' => 'purchase_order',
- 'uuendus' => 'update',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/is b/sql-ledger/locale/ee/is
deleted file mode 100644
index a6e7da5..0000000
--- a/sql-ledger/locale/ee/is
+++ /dev/null
@@ -1,224 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Invoice' => 'Lisa Müügiarve',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Invoice Number' => 'Kas oled kindel, et soovid kustutada arve',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Business' => 'Ettevõtte',
- 'Cannot delete invoice!' => 'Arvet ei saa kustutada',
- 'Cannot post invoice for a closed period!' => 'Arvet ei saa salvestada suletud perioodile!',
- 'Cannot post invoice!' => 'Arvet ei saa salvestada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cc' => 'Cc',
- 'City' => 'Linn',
- 'Company Name' => 'Ettevõtte nimi',
- 'Confirm!' => 'Kinnita!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Country' => 'Riik',
- 'Credit Limit' => 'Krediidilimiit',
- 'Currency' => 'Valuuta',
- 'Customer' => 'Klient',
- 'Customer Number' => 'Kliendi number',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit Sales Invoice' => 'Müügiarve muutmine',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'In-line' => 'Dokumendisisene',
- 'Internal Notes' => 'Sisemärkused',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Invoice deleted!' => 'Arve kustutatud!',
- 'Invoice posted!' => 'Arve salvestatud!',
- 'Invoice processed!' => 'Arve töödeldud!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Message' => 'Teade',
- 'No.' => 'Nr.',
- 'Notes' => 'Märkused',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Part' => 'Toode',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payments' => 'Maksed',
- 'Phone' => 'Telefon',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Print' => 'Trüki',
- 'Print and Post' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Purchase Order' => 'Ostutellimus',
- 'Qty' => 'Kogus',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Recd' => 'Kattesaadud',
- 'Record in' => 'Sihtkonto',
- 'Remaining' => 'Kasutamata',
- 'Required by' => 'Tarneaeg',
- 'Sales Order' => 'Müügitellimus',
- 'Salesperson' => 'Müügiesindaja',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Service' => 'Teenus',
- 'Ship' => 'Tarnimine',
- 'Ship to' => 'Tarneaadress',
- 'Ship via' => 'Tarneviis',
- 'Shipping Address' => 'Tarneaadress',
- 'Source' => 'Allikas',
- 'State/Province' => 'Maakond',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Tax Included' => 'Koos maksuga',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Vendor Number' => 'Hankija number',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'Yes' => 'Jah',
- 'ea' => 'tk',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'e_mail' => 'e_mail',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'trüki' => 'print',
- 'trüki_ja_salvesta' => 'print_and_post',
- 'müügitellimus' => 'sales_order',
- 'tarneaadress' => 'ship_to',
- 'uuendus' => 'update',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/login b/sql-ledger/locale/ee/login
deleted file mode 100644
index 34c4cd7..0000000
--- a/sql-ledger/locale/ee/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Ettevõte',
- 'Continue' => 'Edasi',
- 'Dataset is newer than version!' => 'Andmekogu versioon, on uuem süsteemi omast!',
- 'Incorrect Dataset version!' => 'Vale andmebaasi versioon',
- 'Incorrect Password!' => 'Vale parool!',
- 'Login' => 'Login',
- 'Name' => 'Nimi',
- 'Password' => 'Parool',
- 'Upgrading to Version' => 'Viin vastavusse Versiooniga',
- 'Version' => 'Versioon',
- 'You did not enter a name!' => 'Nimi sisestamata!',
- 'done' => 'tehtud',
- 'is not a member!' => 'ei ole kasutaja!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/menu b/sql-ledger/locale/ee/menu
deleted file mode 100644
index 3398a8b..0000000
--- a/sql-ledger/locale/ee/menu
+++ /dev/null
@@ -1,123 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kohustused',
- 'AP Aging' => 'Võlad',
- 'AP Transaction' => 'Kohustuste kanne',
- 'AR' => 'Nõuded',
- 'AR Aging' => 'Võlglased',
- 'AR Transaction' => 'Nõuete kanne',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Account' => 'Lisa konto',
- 'Add Assembly' => 'Lisa komplekt',
- 'Add Business' => 'Lisa Ettevõtte',
- 'Add Customer' => 'Lisa klient',
- 'Add Department' => 'Lisa Osakond',
- 'Add Employee' => 'Lisa töötaja',
- 'Add GIFI' => 'Lisa GIFI',
- 'Add Group' => 'Lisa Grupp',
- 'Add Labor/Overhead' => 'Lisa Tööjõukulu',
- 'Add Language' => 'Lisa Keel',
- 'Add Part' => 'Lisa Toote',
- 'Add Pricegroup' => 'Lisa Hinnagrupp',
- 'Add Project' => 'Lisa Projekt',
- 'Add SIC' => 'Lisa Standardiseeritud Tööstuskood',
- 'Add Service' => 'Lisa teenus',
- 'Add Transaction' => 'Lisa kanne',
- 'Add Vendor' => 'Lisa tarnija',
- 'Add Warehouse' => 'Lisa Ladu',
- 'Assemblies' => 'Komplektid',
- 'Audit Control' => 'Audit',
- 'Backup' => 'Varukoopia',
- 'Balance Sheet' => 'Bilansitabel',
- 'Cash' => 'Kassa',
- 'Chart of Accounts' => 'Kontoplaan',
- 'Check' => 'Tshekk',
- 'Components' => 'Komponendid',
- 'Customers' => 'Kliendid',
- 'Defaults' => 'Vaikimisi määrangud',
- 'Departments' => 'Osakonnad',
- 'Description' => 'Selgitus',
- 'Employees' => 'Töötajad',
- 'General Ledger' => 'Pearaamat',
- 'Goods & Services' => 'Tooted ja teenused',
- 'Groups' => 'Grupid',
- 'HR' => 'Personal',
- 'HTML Templates' => 'HTML dokumendipõhjad',
- 'History' => 'Ajalugu',
- 'Income Statement' => 'Kasumiaruanne',
- 'Invoice' => 'Arve',
- 'LaTeX Templates' => 'LaTeX dokumendipõhjad',
- 'Labor/Overhead' => 'Tööjõukulu',
- 'Language' => 'Keel',
- 'List Accounts' => 'Kontode nimekiri',
- 'List Businesses' => 'Ettevõttede nimekiri',
- 'List Departments' => 'Osakondade nimekiri',
- 'List GIFI' => 'GIFI nimekiri',
- 'List Languages' => 'Keelte nimekiri',
- 'List Projects' => 'Projektide nimekiri',
- 'List SIC' => 'Standardiseeritud Tööstuskoodide Nimekiri',
- 'List Warehouses' => 'Ladude nimekiri',
- 'Logout' => 'Logi välja',
- 'Non-taxable' => 'Maksuvaba',
- 'Open' => 'Avatud',
- 'Order Entry' => 'Tellimuse sisestamine',
- 'Outstanding' => 'Tasumata nõued',
- 'POS Invoice' => 'POS arve',
- 'Packing List' => 'Saateleht',
- 'Packing Lists' => 'Saatelehed',
- 'Parts' => 'Osad',
- 'Payment' => 'Maksmine',
- 'Payments' => 'Maksed',
- 'Preferences' => 'Määrangud',
- 'Pricegroups' => 'Hinnagrupid',
- 'Print' => 'Trüki',
- 'Projects' => 'Projektid',
- 'Purchase Order' => 'Ostutellimus',
- 'Purchase Orders' => 'Ostutellimused',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotations' => 'Hinnapakkumised',
- 'RFQ' => 'Hinnapakkumise Taotlus',
- 'RFQs' => 'Hinnapakkumise Taotlused',
- 'Receipt' => 'Maksekviitung',
- 'Receipts' => 'Sissetulek',
- 'Receive' => 'Võtta vastu',
- 'Reports' => 'Aruanded',
- 'SIC' => 'Standardiseeritud Tööstuskood',
- 'Sale' => 'Müük',
- 'Sales Invoice' => 'Müügiarve',
- 'Sales Invoices' => 'Müügiarved',
- 'Sales Order' => 'Müügitellimus',
- 'Sales Orders' => 'Müügitellimused',
- 'Save to File' => 'Salvesta faili',
- 'Search' => 'Otsi',
- 'Send by E-Mail' => 'Saada e-postiga',
- 'Services' => 'Teenused',
- 'Ship' => 'Tarnimine',
- 'Shipping' => 'Tarned',
- 'Statement' => 'Aruanne',
- 'Stock Assembly' => 'Komplekti lattu võtmine',
- 'Stylesheet' => 'Laaditabel',
- 'System' => 'Süsteem',
- 'Tax collected' => 'Kogutud maksud',
- 'Tax paid' => 'Makstud maksud',
- 'Text Templates' => 'Tekstipõhised Dokumendipõhjad',
- 'Transactions' => 'Kanded',
- 'Translations' => 'Tõlked',
- 'Trial Balance' => 'Proovibilanss',
- 'Type of Business' => 'Ettevõtte tüüp',
- 'Vendor Invoice' => 'Ostuarve',
- 'Vendors' => 'Hankijad',
- 'Version' => 'Versioon',
- 'Warehouses' => 'Laod',
- 'Work Order' => 'Töökäsk',
- 'Work Orders' => 'Töökäsud',
- 'Yearend' => 'Kasumi eraldamine',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/oe b/sql-ledger/locale/ee/oe
deleted file mode 100644
index 916391b..0000000
--- a/sql-ledger/locale/ee/oe
+++ /dev/null
@@ -1,293 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Exchange Rate' => 'Lisa vahetuskurss',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Invoice' => 'Lisa Müügiarve',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Add Vendor Invoice' => 'Lisa Ostuarve',
- 'Address' => 'Aadress',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Order Number' => 'Kas oled kindel, et soovid kustutada tellimuse',
- 'Are you sure you want to delete Quotation Number' => 'Kas oled kindel, et soovid kustutada pakkumise',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Business' => 'Ettevõtte',
- 'C' => 'C',
- 'Cannot delete order!' => 'Tellimust ei saa kustutada!',
- 'Cannot delete quotation!' => 'Hinnapakkumist ei saa kustutada!',
- 'Cannot save order!' => 'Arvet ei saa salvestada!',
- 'Cannot save quotation!' => 'Hinnapakkumist ei saa salvestada!',
- 'Cc' => 'Cc',
- 'City' => 'Linn',
- 'Closed' => 'Suletud',
- 'Company Name' => 'Ettevõtte nimi',
- 'Confirm!' => 'Kinnita!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Could not save!' => 'Ei saa salvestada!',
- 'Could not transfer Inventory!' => 'Laoartiklit ei saa üle viia!',
- 'Country' => 'Riik',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Customer' => 'Klient',
- 'Customer Number' => 'Kliendi number',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Date Received' => 'Kättesaamise kuupäev',
- 'Date received missing!' => 'Kattesaamise kuupäev puudub!',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Done' => 'Teostatud',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit Purchase Order' => 'Muuda Ostutellimuse',
- 'Edit Quotation' => 'Muuda Hinnapakkumise',
- 'Edit Request for Quotation' => 'Muuda Hinnapakkumise Taotluse',
- 'Edit Sales Order' => 'Müügitellimuse muutmine',
- 'Employee' => 'Töötaja',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'ID' => 'ID',
- 'In-line' => 'Dokumendisisene',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Internal Notes' => 'Sisemärkused',
- 'Inventory saved!' => 'Laoarvestus salvestatud!',
- 'Inventory transferred!' => 'Laoartiklid yleviidud!',
- 'Invoice' => 'Arve',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Teade',
- 'Month' => 'Kuu',
- 'No.' => 'Nr.',
- 'Notes' => 'Märkused',
- 'Nothing entered!' => 'Midagi pole sisestatud!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Open' => 'Avatud',
- 'Order' => 'Tellimus',
- 'Order Date' => 'Tellimuse kuupäev',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'Order deleted!' => 'Tellimus kustutatud!',
- 'Order processed!' => 'Tellimus teostatud!',
- 'Order saved!' => 'Tellimus salvestatud!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Part' => 'Toode',
- 'Part Number' => 'Toote kood',
- 'Period' => 'Periood',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Print' => 'Trüki',
- 'Print and Save' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Purchase Order' => 'Ostutellimus',
- 'Purchase Orders' => 'Ostutellimused',
- 'Qty' => 'Kogus',
- 'Quarter' => 'Trimester',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date' => 'Hinnapakkumise kuupäev',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number' => 'Hinnapakkumise number',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Quotation deleted!' => 'Hinnapakkumine kustutatud!',
- 'Quotations' => 'Hinnapakkumised',
- 'RFQ' => 'Hinnapakkumise Taotlus',
- 'RFQ Number' => 'Hinnapakkumise Taotluse nr.',
- 'Recd' => 'Kattesaadud',
- 'Remaining' => 'Kasutamata',
- 'Request for Quotation' => 'Hinnapakkumise Taotlus',
- 'Request for Quotations' => 'Hinnapakkumise Taotlused',
- 'Required by' => 'Tarneaeg',
- 'Sales Invoice' => 'Müügiarve',
- 'Sales Order' => 'Müügitellimus',
- 'Sales Orders' => 'Müügitellimused',
- 'Salesperson' => 'Müügiesindaja',
- 'Save' => 'Salvesta',
- 'Save as new' => 'Salvesta uuena',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Service' => 'Teenus',
- 'Ship' => 'Tarnimine',
- 'Ship Merchandise' => 'Tarni kaubad',
- 'Ship to' => 'Tarneaadress',
- 'Ship via' => 'Tarneviis',
- 'Shipping Address' => 'Tarneaadress',
- 'Shipping Date' => 'Tarne kuupäev',
- 'Shipping Date missing!' => 'Tarne kuupäev puudub',
- 'State/Province' => 'Maakond',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Tax' => 'Maks',
- 'Tax Included' => 'Koos maksuga',
- 'Terms' => 'Maksetingimus',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Transfer Inventory' => 'Vii laoartiklid teisse lattu',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Valid until' => 'Kehtiv kuni',
- 'Vendor' => 'Hankija',
- 'Vendor Invoice' => 'Ostuarve',
- 'Vendor Number' => 'Hankija number',
- 'Vendor missing!' => 'Hankija puudub!',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Warehouse' => 'Ladu',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
- 'days' => 'päeva',
- 'ea' => 'tk',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'teostatud' => 'done',
- 'e_mail' => 'e_mail',
- 'trüki' => 'print',
- 'trüki_ja_salvesta' => 'print_and_save',
- 'ostutellimus' => 'purchase_order',
- 'hinnapakkumine' => 'quotation',
- 'quotation_' => 'quotation_',
- 'hinnapakkumise_taotlus' => 'rfq',
- 'rfq_' => 'rfq_',
- 'müügiarve' => 'sales_invoice',
- 'müügitellimus' => 'sales_order',
- 'salvesta' => 'save',
- 'salvesta_uuena' => 'save_as_new',
- 'tarneaadress' => 'ship_to',
- 'transfer' => 'transfer',
- 'uuendus' => 'update',
- 'ostuarve' => 'vendor_invoice',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/pe b/sql-ledger/locale/ee/pe
deleted file mode 100644
index 1773ab3..0000000
--- a/sql-ledger/locale/ee/pe
+++ /dev/null
@@ -1,81 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Add Group' => 'Lisa Grupp',
- 'Add Pricegroup' => 'Lisa Hinnagrupp',
- 'Add Project' => 'Lisa Projekt',
- 'All' => 'Kõik',
- 'Continue' => 'Edasi',
- 'Delete' => 'Kustuta',
- 'Description' => 'Selgitus',
- 'Description Translations' => 'Selgituse tõlged',
- 'Edit Description Translations' => 'Muuda Selgituse Tõlged',
- 'Edit Group' => 'Muuda Gruppi andmed',
- 'Edit Pricegroup' => 'Muuda Hinnagrupi andmed',
- 'Edit Project' => 'Muuda Projekti andmed',
- 'Group' => 'Grupp',
- 'Group deleted!' => 'Grupp kustutatud!',
- 'Group missing!' => 'Grupp puudub!',
- 'Group saved!' => 'Grupp salvestatud!',
- 'Groups' => 'Grupid',
- 'Language' => 'Keel',
- 'Languages not defined!' => 'Keeled pole defineeritud!',
- 'Number' => 'Kood',
- 'Orphaned' => 'Seosteta',
- 'Pricegroup' => 'Hinnagrupp',
- 'Pricegroup deleted!' => 'Hinnagrupp kustutatud!',
- 'Pricegroup missing!' => 'Hinnagrupp puudub!',
- 'Pricegroup saved!' => 'Hinnagrup salvestatud!',
- 'Pricegroups' => 'Hinnagrupid',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'Projekti Selgituse Tõlged',
- 'Project Number' => 'Projekti number',
- 'Project Number missing!' => 'Projekti number puudub!',
- 'Project deleted!' => 'Projekt kustutatud!',
- 'Project saved!' => 'Projekt salvestatud!',
- 'Projects' => 'Projektid',
- 'Save' => 'Salvesta',
- 'Translation' => 'Tõlge',
- 'Translation deleted!' => 'Tõlge kustutatud',
- 'Translations saved!' => 'Tõlked salvestatud',
- 'Update' => 'Uuendus',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'lisa_grupp' => 'add_group',
- 'lisa_hinnagrupp' => 'add_pricegroup',
- 'lisa_projekt' => 'add_project',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'salvesta' => 'save',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/pos b/sql-ledger/locale/ee/pos
deleted file mode 100644
index 46f4417..0000000
--- a/sql-ledger/locale/ee/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Add POS Invoice' => 'Lisa Sularahamüügi Kviitung',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Change' => 'Muuda',
- 'Continue' => 'Edasi',
- 'Credit Limit' => 'Krediidilimiit',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Customer' => 'Klient',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Delete' => 'Kustuta',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Edit POS Invoice' => 'Muuda Sularahamüügi Kviitung',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Extended' => 'Summa',
- 'From' => 'Alates',
- 'Language' => 'Keel',
- 'Memo' => 'Memo',
- 'Month' => 'Kuu',
- 'Number' => 'Kood',
- 'Open' => 'Avatud',
- 'Paid' => 'Makstud',
- 'Period' => 'Periood',
- 'Post' => 'Salvesta',
- 'Posted!' => 'Salvestatud!',
- 'Price' => 'Hind',
- 'Print' => 'Trüki',
- 'Printed' => 'Trükitud',
- 'Qty' => 'Kogus',
- 'Quarter' => 'Trimester',
- 'Receipts' => 'Sissetulek',
- 'Record in' => 'Sihtkonto',
- 'Remaining' => 'Kasutamata',
- 'Salesperson' => 'Müügiesindaja',
- 'Screen' => 'Ekraan',
- 'Source' => 'Allikas',
- 'Subtotal' => 'Vahesumma',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Year' => 'Aasta',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'salvesta' => 'post',
- 'trüki' => 'print',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/ps b/sql-ledger/locale/ee/ps
deleted file mode 100644
index cad788d..0000000
--- a/sql-ledger/locale/ee/ps
+++ /dev/null
@@ -1,327 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Võlad',
- 'AR Aging' => 'Võlglased',
- 'AR Outstanding' => 'Tasumata nõued',
- 'AR Transaction' => 'Nõuete kanne',
- 'AR Transactions' => 'Nõuete kanded',
- 'Account' => 'Konto',
- 'Account Number' => 'Konto number',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Accounts' => 'Kontod',
- 'Add POS Invoice' => 'Lisa Sularahamüügi Kviitung',
- 'Add Purchase Order' => 'Lisa Ostutellimus',
- 'Add Quotation' => 'Lisa Pakkumine',
- 'Add Request for Quotation' => 'Lisa Hinnapakkumise taotlus',
- 'Add Sales Invoice' => 'Lisa Müügiarve',
- 'Add Sales Order' => 'Lisa Müügitellimus',
- 'Address' => 'Aadress',
- 'All Accounts' => 'Koik kontod',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Võlaosa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Are you sure you want to delete Invoice Number' => 'Kas oled kindel, et soovid kustutada arve',
- 'Are you sure you want to delete Transaction' => 'Kas oled kindel, et soovid kustutada kande',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanss',
- 'Balance Sheet' => 'Bilansitabel',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Arve aadress',
- 'Bin' => 'Kast',
- 'Business' => 'Ettevõtte',
- 'Cannot delete invoice!' => 'Arvet ei saa kustutada',
- 'Cannot delete transaction!' => 'Kannet ei saa kustutada!',
- 'Cannot post invoice for a closed period!' => 'Arvet ei saa salvestada suletud perioodile!',
- 'Cannot post invoice!' => 'Arvet ei saa salvestada!',
- 'Cannot post payment for a closed period!' => 'Makset ei saa salvestada suletud perioodile!',
- 'Cannot post transaction for a closed period!' => 'Kannet ei saa salvestada suletud perioodile!',
- 'Cannot post transaction!' => 'Kannet ei saa salvestada!',
- 'Cash' => 'Kassa',
- 'Cc' => 'Cc',
- 'Change' => 'Muuda',
- 'Check' => 'Tshekk',
- 'City' => 'Linn',
- 'Closed' => 'Suletud',
- 'Company Name' => 'Ettevõtte nimi',
- 'Compare to' => 'Võrdlus perioodiga',
- 'Confirm!' => 'Kinnita!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Country' => 'Riik',
- 'Credit' => 'Kreedit',
- 'Credit Limit' => 'Krediidilimiit',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuuta',
- 'Current' => 'Käesolev',
- 'Current Earnings' => 'Käesoleva aasta kasum (kahjum)',
- 'Customer' => 'Klient',
- 'Customer Number' => 'Kliendi number',
- 'Customer missing!' => 'Klienti pole määratud!',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Date Paid' => 'Maksekuupäev',
- 'Debit' => 'Deebet',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Decimalplaces' => 'Komakohad',
- 'Delete' => 'Kustuta',
- 'Delivery Date' => 'Kättetoimetamise kuupäev',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'Due Date missing!' => 'Maksetähtaeg puudub!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mailiga teatamine',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'E-mailed' => 'E-mailiga saadetud',
- 'Edit POS Invoice' => 'Muuda Sularahamüügi Kviitung',
- 'Edit Sales Invoice' => 'Müügiarve muutmine',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valuutakurss',
- 'Exchange rate for payment missing!' => 'Maksel ei ole valuutakurssi!',
- 'Exchange rate missing!' => 'Valuutakurssi ei ole',
- 'Extended' => 'Summa',
- 'Fax' => 'Faks',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupp',
- 'Group Items' => 'Grupi liikmed',
- 'Heading' => 'Päis',
- 'ID' => 'ID',
- 'In-line' => 'Dokumendisisene',
- 'Include Exchange Rate Difference' => 'Kaasa valuutavahetuskursside vahe',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Income Statement' => 'Kasumiaruanne',
- 'Internal Notes' => 'Sisemärkused',
- 'Invoice' => 'Arve',
- 'Invoice Date' => 'Arve kuupäev',
- 'Invoice Date missing!' => 'Arve kuupäev puudub!',
- 'Invoice Number' => 'Arve number',
- 'Invoice Number missing!' => 'Arve number puudub!',
- 'Invoice deleted!' => 'Arve kustutatud!',
- 'Invoice posted!' => 'Arve salvestatud!',
- 'Invoice processed!' => 'Arve töödeldud!',
- 'Item not on file!' => 'Toode puudub andmebaasist!',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Language' => 'Keel',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Message' => 'Teade',
- 'Method' => 'Meetod',
- 'Month' => 'Kuu',
- 'N/A' => 'Puudub',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Maksuvaba ostud',
- 'Non-taxable Sales' => 'Maksuvaba müük',
- 'Notes' => 'Märkused',
- 'Nothing selected!' => 'Valik puudub!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Number missing in Row' => 'Antud real puudub kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Open' => 'Avatud',
- 'Order' => 'Tellimus',
- 'Order Date missing!' => 'Tellimuse kuupäev puudub!',
- 'Order Number' => 'Tellimuse number',
- 'Order Number missing!' => 'Tellimuse number puudub',
- 'PDF' => 'PDF',
- 'Packing List' => 'Saateleht',
- 'Packing List Date missing!' => 'Saatelehe kuupäev puudub!',
- 'Packing List Number missing!' => 'Saatelehe number puudub!',
- 'Paid' => 'Makstud',
- 'Part' => 'Toode',
- 'Payment date missing!' => 'Maksekuupäev puudub!',
- 'Payments' => 'Maksed',
- 'Period' => 'Periood',
- 'Phone' => 'Telefon',
- 'Post' => 'Salvesta',
- 'Post as new' => 'Salvesta uuena',
- 'Posted!' => 'Salvestatud!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hind',
- 'Print' => 'Trüki',
- 'Print and Post' => 'Trüki ja salvesta',
- 'Printed' => 'Trükitud',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projekti number',
- 'Project Transactions' => 'Projekti Kanded',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Purchase Order' => 'Ostutellimus',
- 'Qty' => 'Kogus',
- 'Quarter' => 'Trimester',
- 'Queue' => 'Trükijärjekord',
- 'Queued' => 'Trükijärjekorda pandud',
- 'Quotation' => 'Hinnapakkumine',
- 'Quotation Date missing!' => 'Hinnapakkumise kuupäev puudub!',
- 'Quotation Number missing!' => 'Hinnapakkumise number puudub!',
- 'Recd' => 'Kattesaadud',
- 'Receipt' => 'Maksekviitung',
- 'Receipts' => 'Sissetulek',
- 'Record in' => 'Sihtkonto',
- 'Remaining' => 'Kasutamata',
- 'Report for' => 'Aruanne',
- 'Required by' => 'Tarneaeg',
- 'Sales Order' => 'Müügitellimus',
- 'Salesperson' => 'Müügiesindaja',
- 'Screen' => 'Ekraan',
- 'Select Printer or Queue!' => 'Vali Printerit või Trükijärjekorda',
- 'Select all' => 'Vali kõik',
- 'Select from one of the items below' => 'Vali üks alltoodud toodetest',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Serial No.' => 'Seerianr.',
- 'Service' => 'Teenus',
- 'Ship' => 'Tarnimine',
- 'Ship to' => 'Tarneaadress',
- 'Ship via' => 'Tarneviis',
- 'Shipping Address' => 'Tarneaadress',
- 'Source' => 'Allikas',
- 'Standard' => 'Standard',
- 'State/Province' => 'Maakond',
- 'Statement' => 'Aruanne',
- 'Statement sent to' => 'Saata aruanne aadressil',
- 'Statements sent to printer!' => 'Saata aruanne printerile',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Summary' => 'Kokkuvõtte',
- 'Tax' => 'Maks',
- 'Tax Included' => 'Koos maksuga',
- 'Tax collected' => 'Kogutud maksud',
- 'Tax paid' => 'Makstud maksud',
- 'Till' => 'Müügipunkt',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Transaction deleted!' => 'Kanne kustutatud!',
- 'Transaction posted!' => 'Kanne saadetud!',
- 'Translation not on file!' => 'Tõlget pole andmebaasis olemas',
- 'Trial Balance' => 'Proovibilanss',
- 'Unit' => 'Ühik',
- 'Update' => 'Uuendus',
- 'Vendor' => 'Hankija',
- 'Vendor Number' => 'Hankija number',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'What type of item is this?' => 'Mis tüüpi tootega on tegemist?',
- 'Work Order' => 'Töökäsk',
- 'Year' => 'Aasta',
- 'Yes' => 'Jah',
- 'as at' => 'seisuga',
- 'ea' => 'tk',
- 'for Period' => 'Periood',
- 'sent' => 'saadetud',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'nõuete_kanne' => 'ar_transaction',
- 'edasi' => 'continue',
- 'kustuta' => 'delete',
- 'e_mail' => 'e_mail',
- 'salvesta' => 'post',
- 'salvesta_uuena' => 'post_as_new',
- 'trüki' => 'print',
- 'trüki_ja_salvesta' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'müügitellimus' => 'sales_order',
- 'vali_kõik' => 'select_all',
- 'tarneaadress' => 'ship_to',
- 'uuendus' => 'update',
- 'jah' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/pw b/sql-ledger/locale/ee/pw
deleted file mode 100644
index 5928861..0000000
--- a/sql-ledger/locale/ee/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Edasi',
- 'Password' => 'Parool',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'edasi' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/rc b/sql-ledger/locale/ee/rc
deleted file mode 100644
index 5171d84..0000000
--- a/sql-ledger/locale/ee/rc
+++ /dev/null
@@ -1,74 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanss',
- 'Beginning Balance' => 'Algsaldo',
- 'Cleared' => 'Laekunud',
- 'Continue' => 'Edasi',
- 'Current' => 'Käesolev',
- 'Date' => 'Kuupäev',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Decrease' => 'Allanda',
- 'Description' => 'Selgitus',
- 'Difference' => 'Vahe',
- 'Done' => 'Teostatud',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'Include Exchange Rate Difference' => 'Kaasa valuutavahetuskursside vahe',
- 'Increase' => 'Suurenda',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Kuu',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Out of balance!' => 'Bilanss ei klapi!',
- 'Outstanding' => 'Tasumata nõued',
- 'Payment' => 'Maksmine',
- 'Period' => 'Periood',
- 'Quarter' => 'Trimester',
- 'Select all' => 'Vali kõik',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Source' => 'Allikas',
- 'Statement Balance' => 'Bilansiaruanne',
- 'Summary' => 'Kokkuvõtte',
- 'To' => 'Kuni',
- 'Update' => 'Uuendus',
- 'Year' => 'Aasta',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'edasi' => 'continue',
- 'teostatud' => 'done',
- 'vali_kõik' => 'select_all',
- 'uuendus' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ee/rp b/sql-ledger/locale/ee/rp
deleted file mode 100644
index ac25d85..0000000
--- a/sql-ledger/locale/ee/rp
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Võlad',
- 'AR Aging' => 'Võlglased',
- 'Account' => 'Konto',
- 'Account Number' => 'Konto number',
- 'Accounting Menu' => 'Raamatupidamise Menüü',
- 'Accounts' => 'Kontod',
- 'Address' => 'Aadress',
- 'All Accounts' => 'Koik kontod',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprill',
- 'Attachment' => 'Kaasatud fail',
- 'Aug' => 'Aug',
- 'August' => 'August',
- 'Balance' => 'Bilanss',
- 'Balance Sheet' => 'Bilansitabel',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Kassa',
- 'Cc' => 'Cc',
- 'Compare to' => 'Võrdlus perioodiga',
- 'Continue' => 'Edasi',
- 'Copies' => 'koopiat',
- 'Credit' => 'Kreedit',
- 'Curr' => 'Val.',
- 'Current' => 'Käesolev',
- 'Current Earnings' => 'Käesoleva aasta kasum (kahjum)',
- 'Customer' => 'Klient',
- 'Customer not on file!' => 'Klienti pole failis!',
- 'Date' => 'Kuupäev',
- 'Debit' => 'Deebet',
- 'Dec' => 'Dets',
- 'December' => 'Detsember',
- 'Decimalplaces' => 'Komakohad',
- 'Department' => 'Osakond',
- 'Description' => 'Selgitus',
- 'Due Date' => 'Maksetähtaeg',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mailiga teatamine',
- 'E-mail address missing!' => 'E-maili aadress puudub',
- 'Feb' => 'Veebr',
- 'February' => 'Veebruar',
- 'From' => 'Alates',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Päis',
- 'ID' => 'ID',
- 'In-line' => 'Dokumendisisene',
- 'Include Exchange Rate Difference' => 'Kaasa valuutavahetuskursside vahe',
- 'Include in Report' => 'Kaasa aruandesse',
- 'Income Statement' => 'Kasumiaruanne',
- 'Invoice' => 'Arve',
- 'Jan' => 'Jaan',
- 'January' => 'Jaanuar',
- 'Jul' => 'Juul',
- 'July' => 'Juuli',
- 'Jun' => 'Juun',
- 'June' => 'Juuni',
- 'Language' => 'Keel',
- 'Mar' => 'Mär',
- 'March' => 'Märts',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Memo',
- 'Message' => 'Teade',
- 'Method' => 'Meetod',
- 'Month' => 'Kuu',
- 'N/A' => 'Puudub',
- 'Non-taxable Purchases' => 'Maksuvaba ostud',
- 'Non-taxable Sales' => 'Maksuvaba müük',
- 'Nothing selected!' => 'Valik puudub!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Kood',
- 'Oct' => 'Okt',
- 'October' => 'Oktoober',
- 'Order' => 'Tellimus',
- 'PDF' => 'PDF',
- 'Payments' => 'Maksed',
- 'Period' => 'Periood',
- 'Postscript' => 'Postscript',
- 'Print' => 'Trüki',
- 'Project' => 'Projekt',
- 'Project Number' => 'Projekti number',
- 'Project Transactions' => 'Projekti Kanded',
- 'Project not on file!' => 'Projekti pole failis!',
- 'Quarter' => 'Trimester',
- 'Receipts' => 'Sissetulek',
- 'Report for' => 'Aruanne',
- 'Salesperson' => 'Müügiesindaja',
- 'Screen' => 'Ekraan',
- 'Select all' => 'Vali kõik',
- 'Select from one of the names below' => 'Vali üks alltoodud nimedest',
- 'Select from one of the projects below' => 'Vali üks alltoodud projektidest',
- 'Select postscript or PDF!' => 'Vali kas postscript või PDF',
- 'Sep' => 'Sept',
- 'September' => 'September',
- 'Source' => 'Allikas',
- 'Standard' => 'Standard',
- 'Statement' => 'Aruanne',
- 'Statement sent to' => 'Saata aruanne aadressil',
- 'Statements sent to printer!' => 'Saata aruanne printerile',
- 'Subject' => 'Pealkiri',
- 'Subtotal' => 'Vahesumma',
- 'Summary' => 'Kokkuvõtte',
- 'Tax' => 'Maks',
- 'Tax collected' => 'Kogutud maksud',
- 'Tax paid' => 'Makstud maksud',
- 'Till' => 'Müügipunkt',
- 'To' => 'Kuni',
- 'Total' => 'Kokku',
- 'Trial Balance' => 'Proovibilanss',
- 'Vendor' => 'Hankija',
- 'Vendor not on file!' => 'Hankijat pole failis!',
- 'Year' => 'Aasta',
- 'as at' => 'seisuga',
- 'for Period' => 'Periood',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'edasi' => 'continue',
- 'e_mail' => 'e_mail',
- 'trüki' => 'print',
- 'vali_kõik' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/COPYING b/sql-ledger/locale/eg/COPYING
deleted file mode 100644
index 1499401..0000000
--- a/sql-ledger/locale/eg/COPYING
+++ /dev/null
@@ -1,28 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Egypt Arabic texts:
-#
-# Author: Omar BaheyEldin <o@ab2.com>
-# Rania Tayel
-#---- Please Use UTF-8 encoding
-#---- For some web servers you have to enable UTF-8
-#---- For Knoquere you have to edit the font and use an arabic font
-# --- Good Luck
-#--- Omar BaheyEldin
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/eg/LANGUAGE b/sql-ledger/locale/eg/LANGUAGE
deleted file mode 100644
index 3fa28c8..0000000
--- a/sql-ledger/locale/eg/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Arabic (Egypt) UTF-8
diff --git a/sql-ledger/locale/eg/admin b/sql-ledger/locale/eg/admin
deleted file mode 100644
index 988e579..0000000
--- a/sql-ledger/locale/eg/admin
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Accounting' => 'الحسابات',
- 'Add User' => 'اضاÙØ© مستخدم',
- 'Address' => 'العنوان',
- 'Administration' => 'الادارة',
- 'Administrator' => 'المدير',
- 'All Datasets up to date!' => 'كل البيانات حديثة',
- 'Change Password' => 'تغيير كلمة السر',
- 'Company' => 'شركة',
- 'Connect to' => 'صل',
- 'Continue' => 'تابع',
- 'Create Chart of Accounts' => 'انشاء قائمة حسابات',
- 'Create Dataset' => 'انشاء مجموعة بيانات',
- 'Database' => 'قواعد البيانات',
- 'Database Administration' => 'ادارة قواعد البيانات',
- 'Database User missing!' => ' مستخدم قواعد البيانات غير موجود',
- 'Dataset' => 'مجموعة بيانات',
- 'Dataset missing!' => 'مجموعة بيانات غير موجودة',
- 'Dataset updated!' => 'مجموعة بيانات معدلة',
- 'Date Format' => 'تنسيق البيانات',
- 'Delete' => 'الغاء',
- 'Delete Dataset' => 'الغاء مجموعة البيانات',
- 'E-mail' => 'بريد الكتروني',
- 'Edit User' => 'تعديل مستخدم ',
- 'Existing Datasets' => 'قاعدةالبيانات الحالية',
- 'Fax' => 'الÙاكس',
- 'Host' => 'المضيÙ',
- 'Hostname missing!' => 'اسم المضي٠غير موجود',
- 'Language' => 'اللغة',
- 'Login' => 'دخول',
- 'Login name missing!' => 'اسم مستخدم غير موجود ',
- 'Logout' => 'خروج',
- 'Manager' => 'مدير',
- 'Name' => 'الاسم',
- 'New Templates' => 'عينة جديدة',
- 'Nothing to delete!' => 'لم يتم الالغاء',
- 'Password' => 'كلمة السر',
- 'Password changed!' => 'تغيير كلمة السر',
- 'Phone' => 'تليÙون',
- 'Printer' => 'طابعة',
- 'Save' => 'تخزين',
- 'Signature' => 'امضاء',
- 'Templates' => 'العينات',
- 'The following Datasets are not in use and can be deleted' => 'هذة المجموعة من البيانات لا يتم استخدامها و يمكن الغائها',
- 'The following Datasets need to be updated' => 'هذة المجموعة من البيانات تحتاج إلى تحديث',
- 'Use Templates' => 'استخدم العينات',
- 'User' => 'مستخدم',
- 'User deleted!' => 'الغي المستخدم',
- 'User saved!' => 'خزن المستخدم',
- 'Version' => 'نسخة',
- 'does not exist' => 'لا يوجد',
- 'is already a member!' => 'عضو موجود',
- 'successfully created!' => 'انشأ بنجاح',
- 'successfully deleted!' => 'الغي بنجاح',
- 'website' => 'موقع انترنت',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'اضاÙØ©_مستخدم' => 'add_user',
- 'change_admin_password' => 'change_admin_password',
- 'تغيير_كلمة_السر' => 'change_password',
- 'تابع' => 'continue',
- 'انشاء_مجموعة_بيانات' => 'create_dataset',
- 'الغاء' => 'delete',
- 'الغاء_مجموعة_البيانات' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'دخول' => 'login',
- 'خروج' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'تخزين' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/all b/sql-ledger/locale/eg/all
deleted file mode 100644
index 4da6f40..0000000
--- a/sql-ledger/locale/eg/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'موردين',
- 'AP Aging' => 'كش٠حساب موردين',
- 'AP Outstanding' => 'ارصدة موردين متبقية',
- 'AP Transaction' => 'حركة حساب مورد',
- 'AP Transactions' => 'حركات حساب الموردين',
- 'AR' => 'عملاء',
- 'AR Aging' => 'كشوÙات حسابات العملاء',
- 'AR Outstanding' => 'ارصدة عملاء ',
- 'AR Transaction' => 'حركة حساب عميل',
- 'AR Transactions' => 'حركات حساب العملاء',
- 'About' => 'عن',
- 'Above' => '',
- 'Access Control' => '',
- 'Account' => 'حساب',
- 'Account Number' => 'رقم حساب',
- 'Account Number missing!' => 'رقم الحساب غير موجود',
- 'Account Type' => 'نوع الحساب',
- 'Account Type missing!' => 'نوع الحساب غير موجود',
- 'Account deleted!' => 'ألغي الحساب',
- 'Account does not exist!' => 'الحساب غير موجود',
- 'Account saved!' => 'خزن الحساب',
- 'Accounting' => 'الحسابات',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Accounts' => 'حسابات',
- 'Accrual' => 'المجمعة',
- 'Activate Audit trails' => '',
- 'Active' => 'Ùعال',
- 'Add' => 'اضاÙØ©',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'اضاÙØ© حساب',
- 'Add Assembly' => 'اضاÙØ© تجميع',
- 'Add Business' => 'اضاÙØ© نوع عمل',
- 'Add Cash Transfer Transaction' => 'اضاÙØ© حركة تحويل النقدية',
- 'Add Customer' => 'اضاÙØ© عميل',
- 'Add Deduction' => '',
- 'Add Department' => 'اضاÙØ© قسم',
- 'Add Employee' => 'اضاÙØ© موظÙ',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => '',
- 'Add General Ledger Transaction' => 'اضاÙØ© حركة الأستاذ العام',
- 'Add Group' => 'اضاÙØ© مجموعة',
- 'Add Labor/Overhead' => 'اضاÙØ© تكلÙØ© عمالة',
- 'Add Language' => 'اضاÙØ© لغة',
- 'Add POS Invoice' => 'اضاÙØ© Ùاتورة نقطة بيع',
- 'Add Part' => 'اضاÙØ© جزء',
- 'Add Pricegroup' => '',
- 'Add Project' => 'اضاÙØ© مشروع',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add SIC' => 'اضاÙØ© كود صناعى قياسى',
- 'Add Sales Invoice' => 'اضاÙØ© Ùاتورة بيع',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Add Service' => 'اضاÙØ© خدمة',
- 'Add Transaction' => 'اضاÙØ© حركة',
- 'Add User' => 'اضاÙØ© مستخدم',
- 'Add Vendor' => 'اضاÙØ© مورد',
- 'Add Vendor Invoice' => 'اضاÙØ© Ùاتورة المورد',
- 'Add Warehouse' => 'اضاÙØ© مخزن',
- 'Address' => 'العنوان',
- 'Administration' => 'الادارة',
- 'Administrator' => 'المدير',
- 'After Deduction' => '',
- 'All' => 'الكل',
- 'All Accounts' => 'كل الحسابات',
- 'All Datasets up to date!' => 'كل البيانات حديثة',
- 'All Items' => 'الكل',
- 'Allowances' => '',
- 'Amount' => 'الكمية',
- 'Amount Due' => 'الرصيد ',
- 'Amount missing!' => 'الكمية غير موجودة',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Invoice Number' => 'هل انت متأكد انك تريد الغاء رقم الÙاتروة ',
- 'Are you sure you want to delete Order Number' => 'هل انت متأكد انك تريد الغاء رقم الطلب',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'هل انت متأكد انك تريد الغاء الحركة',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'مجمعات',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'أصول',
- 'Attachment' => 'مرÙقات',
- 'Audit Control' => 'التحكم ÙÙŠ المراجعة',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'نسخة احتياطية ',
- 'Backup sent to' => 'نسخة احتياطية ارسلت الى',
- 'Balance' => 'رصيد',
- 'Balance Sheet' => 'الميزانية',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'نسخة غير مرئية',
- 'Before Deduction' => '',
- 'Beginning Balance' => 'بداية الميزانية',
- 'Below' => '',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Bin' => '',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => '',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'الرقم الضريبى',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'تكلÙØ© البضاعة المباعة',
- 'Cannot create Lock!' => '',
- 'Cannot delete account!' => 'لا يمكن الغاء الحساب ',
- 'Cannot delete customer!' => 'لا يمكن الغاء العميل',
- 'Cannot delete default account!' => 'لا يمكن الغاء الحساب الاساسي',
- 'Cannot delete invoice!' => 'لا يمكن الغاء الÙاتورة',
- 'Cannot delete item!' => 'لا يمكن الغاء الوحدة',
- 'Cannot delete order!' => 'لا يمكن الغاء الطلب',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'لا يمكن الغاء الحركة',
- 'Cannot delete vendor!' => 'لا يمكن الغاء المورد',
- 'Cannot post Payment!' => 'لا يمكن تسجيل المدÙوعات',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => 'لا يمكن تسجيل الÙاتورة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cannot post transaction for a closed period!' => 'لا يمكن تسجيل الحركة Ù„Ùترة مغلقة',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Cannot process payment for a closed period!' => 'لا يمكن تشغيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'لا يمكن تخزين الحساب',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'لا يمكن تخزين الطلب',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => 'النقدية',
- 'Cc' => 'نسخة اخرى',
- 'Change' => 'تغيير',
- 'Change Admin Password' => '',
- 'Change Password' => 'تغيير كلمة السر',
- 'Character Set' => '',
- 'Chart of Accounts' => 'قائمة الحسابات',
- 'Check' => 'شيك',
- 'Check Inventory' => 'مراجعة مخزون',
- 'Checks' => 'الشيكات',
- 'City' => 'مدينة',
- 'Cleared' => 'مغلق',
- 'Click on login name to edit!' => '',
- 'Close Books up to' => 'اقÙال الدÙاتر حتى',
- 'Closed' => 'مغلق',
- 'Code' => 'كود',
- 'Code missing!' => '',
- 'Company' => 'شركة',
- 'Company Name' => 'اسم الشركة',
- 'Compare to' => 'مقارنة ',
- 'Components' => 'مكونات',
- 'Confirm' => '',
- 'Confirm!' => 'تاكيد',
- 'Connect to' => 'صل',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Contra' => '',
- 'Copies' => 'نسخ',
- 'Copy to COA' => '',
- 'Cost' => 'تكلÙØ©',
- 'Cost Center' => 'مركز تكلÙØ©',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => 'دولة',
- 'Create Chart of Accounts' => 'انشاء قائمة حسابات',
- 'Create Dataset' => 'انشاء مجموعة بيانات',
- 'Credit' => 'دائن',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Current Earnings' => '',
- 'Customer' => 'العميل',
- 'Customer History' => 'بيانات تاريخية للعميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer deleted!' => 'الغي العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Customer saved!' => 'خزن العميل',
- 'Customers' => 'العملاء',
- 'DBI not installed!' => '',
- 'DOB' => '',
- 'Database' => 'قواعد البيانات',
- 'Database Administration' => 'ادارة قواعد البيانات',
- 'Database Driver not checked!' => '',
- 'Database Host' => 'مضي٠قواعد البيانات',
- 'Database User missing!' => ' مستخدم قواعد البيانات غير موجود',
- 'Dataset' => 'مجموعة بيانات',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'مجموعة بيانات غير موجودة',
- 'Dataset updated!' => 'مجموعة بيانات معدلة',
- 'Date' => 'التاريخ',
- 'Date Format' => 'تنسيق البيانات',
- 'Date Paid' => 'تاريخ الدÙع',
- 'Date Received' => '',
- 'Date missing!' => 'التاريخ غير موجود',
- 'Date received missing!' => '',
- 'Debit' => 'مدين',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Decimalplaces' => 'علامات عشرية',
- 'Decrease' => 'تناقص',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => 'معطيات النظام',
- 'Defaults saved!' => '',
- 'Delete' => 'الغاء',
- 'Delete Account' => 'الغاء الحساب',
- 'Delete Dataset' => 'الغاء مجموعة البيانات',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Department' => 'قسم',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => 'اقسام',
- 'Deposit' => 'إيداع',
- 'Description' => 'وصÙ',
- 'Description Translations' => 'ترجمة مواصÙات',
- 'Description missing!' => '',
- 'Detail' => 'تÙصيلى',
- 'Difference' => 'اختلاÙات',
- 'Directory' => '',
- 'Discount' => 'خصم',
- 'Done' => 'Ù†ÙØ°',
- 'Drawing' => 'رسم',
- 'Driver' => '',
- 'Dropdown Limit' => '',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'Due Date missing!' => 'تاريخ الاستحقاق غير موجود',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'E-mailed' => '',
- 'Edit' => 'تعديل',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'تعديل الحساب',
- 'Edit Assembly' => '',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => 'تعديل حركة تحويل النقدية',
- 'Edit Customer' => 'تعديل بيانات العميل',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => '',
- 'Edit General Ledger Transaction' => 'تعديل حركة الأستاذ العام',
- 'Edit Group' => 'تعديل مجموعة',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => 'تعديل Ùاتورة أمر الشراء',
- 'Edit Part' => 'تعديل جزء',
- 'Edit Preferences for' => '',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'تعديل مشروع',
- 'Edit Purchase Order' => 'تعديل امر شراء',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'تعديل Ùاتورة مبيعات',
- 'Edit Sales Order' => 'تعديل امر مبيعات',
- 'Edit Service' => 'تعديل خدمة',
- 'Edit Template' => 'تعديل عينة',
- 'Edit User' => 'تعديل مستخدم ',
- 'Edit Vendor' => 'تعديل مورد',
- 'Edit Vendor Invoice' => 'تعديل Ùاتورة مورد',
- 'Edit Warehouse' => '',
- 'Employee' => 'الموظÙ',
- 'Employee Name' => 'اسم الموظÙ',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => 'العاملين',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => 'تاريخ نهاية العمل',
- 'Enforce transaction reversal for all dates' => '',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'ادخل 3 حرو٠للعملة Ù…Ùصولة ":" )CAD:USD:EUR) للعملة المحلية Ùˆ العملات الاجنبية',
- 'Equity' => 'رأس المال',
- 'Excempt age <' => '',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Existing Datasets' => 'قاعدةالبيانات الحالية',
- 'Expense' => 'المصروÙات',
- 'Expense Account' => 'حساب المصروÙات',
- 'Expense/Asset' => 'الخصوم/الأصول',
- 'Extended' => 'اجمالى',
- 'FX' => '',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'Foreign Exchange Gain' => 'ارباح التحويل الاجنبي',
- 'Foreign Exchange Loss' => 'خسائر التحويل الاجنبي',
- 'From' => 'من',
- 'GIFI' => '',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => '',
- 'GIFI saved!' => '',
- 'GL Transaction' => 'حركات الاستاذ العام',
- 'General Ledger' => 'الاستاذ العام',
- 'Goods & Services' => 'البضاعة و الخدمات',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'Group Translations' => 'ترجمة مجوعات',
- 'Group deleted!' => 'الغيت المجموعة',
- 'Group missing!' => 'مجموعة غير موجودة',
- 'Group saved!' => 'تخزين المجموعة',
- 'Groups' => 'مجموعات',
- 'HR' => 'موارد بشرية',
- 'HTML Templates' => '',
- 'Heading' => 'عنوان',
- 'History' => 'تاريخى',
- 'Home Phone' => 'تلÙون المنزل',
- 'Host' => 'المضيÙ',
- 'Hostname missing!' => 'اسم المضي٠غير موجود',
- 'IBAN' => '',
- 'ID' => 'البطاقة الشخصية',
- 'Image' => 'صورة',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Include Exchange Rate Difference' => 'اظهار تغيير سعر العملة',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Include in drop-down menus' => 'ضع الحساب ÙÙ‰ قائمة الخيارات ---',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'ارÙÙ‚ هذا الحساب ÙÙ‰ استمارةالمورد-العميل لكى يعتبر العميل خاضع للضرائب------',
- 'Income' => 'الربح',
- 'Income Account' => 'حساب الارباح',
- 'Income Statement' => 'قائمة الدخل',
- 'Incorrect Dataset version!' => 'نسخة غير صحيحة من مجموعة البيانات',
- 'Incorrect Password!' => 'كلمة السر غير صحيحة',
- 'Increase' => 'زيادة',
- 'Individual Items' => 'وحدات Ùردية',
- 'Internal Notes' => 'ملاحظات داخلية',
- 'Inventory' => 'مخزون',
- 'Inventory Account' => 'حساب المخزون',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Invoice deleted!' => 'الغيت القاتورة',
- 'Invoice posted!' => 'سجلت الÙاتورة',
- 'Invoice processed!' => '',
- 'Invoices' => 'Ùواتير',
- 'Is this a summary account to record' => 'هل هذا الحساب ملخص لحساب لكى يتم تسجيله ----',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'الغيت الوحدة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Items' => '',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'LaTeX Templates' => '',
- 'Labor/Overhead' => 'تكلÙØ© عمالة',
- 'Language' => 'اللغة',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => 'اللغات',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'اخر رقم و الحساب الرئيسي',
- 'Leadtime' => 'مدة التسليم',
- 'Leave host and port field empty unless you want to make a remote connection.' => '',
- 'Liability' => 'التزامات',
- 'Licensed to' => 'ترخيص',
- 'Line Total' => 'اجمالى السطر',
- 'Link' => 'ربط',
- 'Link Accounts' => 'ربط الحسابات',
- 'List' => '',
- 'List Accounts' => 'قائمة الحسابات',
- 'List Businesses' => 'قائمةانواع العمل',
- 'List Departments' => 'قائمة الاقسام',
- 'List GIFI' => '',
- 'List Languages' => 'قائمة اللغات',
- 'List Price' => 'قائمة الاسعار',
- 'List Projects' => 'قائمة المشروعات',
- 'List SIC' => 'قائمة الاكواد الصناعية القياسية',
- 'List Transactions' => 'قائمة الحركات',
- 'List Warehouses' => 'قائمة المخازن',
- 'Lock System' => '',
- 'Lockfile created!' => '',
- 'Lockfile removed!' => '',
- 'Login' => 'دخول',
- 'Login name missing!' => 'اسم مستخدم غير موجود ',
- 'Logout' => 'خروج',
- 'Make' => 'اÙعل',
- 'Manager' => 'مدير',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'Marked entries printed!' => '',
- 'Markup' => 'نسبة الربح',
- 'Maximum' => '',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Menu Width' => '',
- 'Message' => 'رسالة',
- 'Method' => 'طريقة',
- 'Microfiche' => '',
- 'Model' => 'موديل',
- 'Month' => '',
- 'Multibyte Encoding' => '',
- 'N/A' => 'غير موجود',
- 'Name' => 'الاسم',
- 'Name missing!' => 'اسم غير موجود',
- 'New Templates' => 'عينة جديدة',
- 'No' => 'لا',
- 'No Database Drivers available!' => '',
- 'No Dataset selected!' => '',
- 'No email address for' => '',
- 'No.' => 'رقم',
- 'Non-taxable' => 'غير خاضع للضريبة',
- 'Non-taxable Purchases' => 'المبيعات المعÙاة من الضرائب',
- 'Non-taxable Sales' => 'المبيعات المعÙاة من الضرائب',
- 'Notes' => 'ملاحظات',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'لم يتم الاختيار',
- 'Nothing to delete!' => 'لم يتم الالغاء',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number Format' => '',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'O' => '',
- 'Obsolete' => '',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'On Hand' => 'بالمخزن',
- 'Open' => 'Ùتح',
- 'Oracle Database Administration' => '',
- 'Order' => 'امر',
- 'Order Date' => 'تاريخ الامر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Entry' => 'ادخال الامر',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Order deleted!' => 'الغي الامر',
- 'Order processed!' => '',
- 'Order saved!' => 'خزن الامر',
- 'Orphaned' => '',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => 'ارصدة',
- 'PDF' => '',
- 'POS' => 'نقطة بيع',
- 'POS Invoice' => 'Ùاتورة امر الشراء',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Packing Lists' => 'قوائم تعبئة',
- 'Paid' => 'المدÙوع',
- 'Part' => 'جزء',
- 'Part Number' => 'رقم الصنÙ',
- 'Partnumber' => '',
- 'Parts' => 'الاجزاء',
- 'Parts Inventory' => 'مخزن الاجزاء',
- 'Password' => 'كلمة السر',
- 'Password changed!' => 'تغيير كلمة السر',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'المدÙوعات',
- 'Payment' => 'الدÙع النقدى',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payment posted!' => 'تم ترحيل مدÙوعات',
- 'Payments' => 'المدÙوعات',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => '',
- 'PgPP Database Administration' => '',
- 'Phone' => 'تليÙون',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => '',
- 'Port missing!' => '',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Posted!' => 'سجل',
- 'Postscript' => '',
- 'Preferences' => '',
- 'Preferences saved!' => '',
- 'Prepayment' => '',
- 'Price' => 'سعر',
- 'Pricegroup' => 'مجموعة سعرية',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => 'مجموعات سعرية',
- 'Pricelist' => '',
- 'Print' => 'طباعة',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'طابعة',
- 'Printing ... ' => '',
- 'Profit Center' => 'مركز ربح',
- 'Project' => 'مشروع',
- 'Project Description Translations' => 'ترجمة وص٠المشروع',
- 'Project Number' => 'رقم المشروع',
- 'Project Number missing!' => 'رقم المشروع غير موجود',
- 'Project Transactions' => 'حركات المشروع',
- 'Project deleted!' => 'الغي المشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Project saved!' => 'خزن المشروع',
- 'Projects' => 'مشروعات',
- 'Purchase Order' => 'امر شراء',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'اوامر شراء',
- 'Qty' => 'الكمية',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotation ' => '',
- 'Quotation Date' => 'تاريخ عرض السعر',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => 'رقم عرض السعر',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => 'عروض اسعار',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => 'رقم عرض السعر',
- 'RFQs' => 'عروض اسعار موردين',
- 'ROP' => '',
- 'Rate' => 'النسبة',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => 'الوارد',
- 'Receipt posted!' => '',
- 'Receipts' => 'الواردات',
- 'Receivables' => 'المقبوضات',
- 'Receive' => 'شحن وارد',
- 'Receive Merchandise' => 'استلام بضاعة',
- 'Reconciliation' => 'تسويات',
- 'Reconciliation Report' => 'تقرير التسويات',
- 'Record in' => 'ÙÙŠ السجل',
- 'Reference' => 'مرجع',
- 'Reference missing!' => 'مرجع غير موجود',
- 'Remaining' => 'متبقى',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'تقرير لاجل',
- 'Reports' => 'تقارير',
- 'Request for Quotation' => '',
- 'Request for Quotations' => 'عروض اسعار مطلوبة',
- 'Required by' => 'مطلوب من قبل',
- 'Retained Earnings' => 'ارباح محجوزة',
- 'Role' => 'الوظيÙØ©',
- 'S' => '',
- 'SIC' => 'الاكواد الصناعية القياسية',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'بيع',
- 'Sales' => 'مبيعات',
- 'Sales Invoice' => 'Ùاتورة المبيعات',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Ùواتير المبيعات',
- 'Sales Order' => 'امر بيع',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'اوامر بيع',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'مندوب مبيعات',
- 'Save' => 'تخزين',
- 'Save Pricelist' => '',
- 'Save as new' => 'خزن كجديد',
- 'Save to File' => 'خزن كملÙ',
- 'Screen' => 'الشاشة',
- 'Search' => 'بحث',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'اختر الكل',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'سعر البيع',
- 'Send by E-Mail' => 'ارسل بالبريد الالكتروني',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Serial No.' => '',
- 'Serial Number' => 'رقم مسلسل',
- 'Service' => 'خدمة',
- 'Service Items' => 'وحدات الخدمة',
- 'Services' => 'خدمات',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => '',
- 'Ship' => 'شحن صادر',
- 'Ship Merchandise' => 'شحن بضاعة للخارج',
- 'Ship to' => 'شحن الى',
- 'Ship via' => 'شحن من خلال',
- 'Shipping' => 'شحن',
- 'Shipping Address' => 'عنوان الشحن',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => 'نقطة الشحن',
- 'Short' => 'قصير',
- 'Signature' => 'امضاء',
- 'Source' => 'مصدر',
- 'Spoolfile' => '',
- 'Standard' => 'اساس',
- 'Standard Industrial Codes' => 'الاكواد الصناعية القياسية',
- 'Startdate' => 'تاريخ يدء العمل',
- 'State' => '',
- 'State/Province' => 'محاÙظة',
- 'Statement' => 'كش٠حساب',
- 'Statement Balance' => 'رصيد كش٠حساب',
- 'Statement sent to' => 'كش٠حساب مرسل الى',
- 'Statements sent to printer!' => 'كش٠حساب مرسل الى الطابعة',
- 'Stock' => 'مخزون',
- 'Stock Assembly' => 'تجميع مخزون',
- 'Stylesheet' => '',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Summary' => 'ملخص',
- 'Supervisor' => '',
- 'System' => 'نظام',
- 'System Defaults' => 'معطيات النظام',
- 'Tax' => 'ضريبة',
- 'Tax Accounts' => 'الحسابات الضريبية',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'Tax Number' => 'رقم ضريبى',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'الضريبة المجمعة',
- 'Tax paid' => 'الضريبة المدÙوعة',
- 'Taxable' => 'خاضع للضريبة',
- 'Template saved!' => 'خزنت العينة',
- 'Templates' => 'العينات',
- 'Terms' => 'شروط ',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'هذة المجموعة من البيانات لا يتم استخدامها و يمكن الغائها',
- 'The following Datasets need to be updated' => 'هذة المجموعة من البيانات تحتاج إلى تحديث',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '',
- 'Till' => 'إلى',
- 'To' => 'إلى',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '',
- 'Top Level' => 'المستوى الاعلى',
- 'Total' => 'مجموع',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'تاريخ الحركة غير موجود',
- 'Transaction deleted!' => 'الغيت الحركة',
- 'Transaction posted!' => 'سجلت الحركة',
- 'Transaction reversal enforced for all dates' => '',
- 'Transaction reversal enforced up to' => '',
- 'Transactions' => 'حركات',
- 'Transfer' => 'تحويل',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => 'ترجمات',
- 'Translations saved!' => '',
- 'Trial Balance' => 'ميزان المراجعة',
- 'Type of Business' => 'نوع العمل',
- 'Unit' => 'وحدة',
- 'Unit of measure' => 'وحدة القياس',
- 'Unlock System' => '',
- 'Update' => 'تعديل',
- 'Update Dataset' => '',
- 'Updated' => 'معدل',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'استخدم العينات',
- 'User' => 'مستخدم',
- 'User deleted!' => 'الغي المستخدم',
- 'User saved!' => 'خزن المستخدم',
- 'Valid until' => 'سارى حتى',
- 'Vendor' => 'المورد',
- 'Vendor History' => 'بيانات تاريخية عن مورد',
- 'Vendor Invoice' => 'Ùاتورة المورد ',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Ùواتير الموردين',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor deleted!' => 'الغي المورد',
- 'Vendor missing!' => 'مورد غير موجود',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'Vendor saved!' => 'خزن المورد',
- 'Vendors' => 'الموردين',
- 'Version' => 'نسخة',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => 'مخازن',
- 'Warning!' => '',
- 'Weight' => 'وزن',
- 'Weight Unit' => 'وزن الوحدة',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'Work Orders' => '',
- 'Work Phone' => 'تلÙون العمل',
- 'Year' => '',
- 'Yearend' => 'نهاية العام المالى',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'نعم',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'لم يتم ادخال الاسم',
- 'You must enter a host and port for local and remote connections!' => '',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'من',
- 'days' => 'ايام',
- 'does not exist' => 'لا يوجد',
- 'done' => 'Ù†ÙØ°',
- 'ea' => 'قطعة',
- 'for Period' => 'للÙترة',
- 'is already a member!' => 'عضو موجود',
- 'is not a member!' => 'ليس عضوا',
- 'localhost' => '',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'انشأ بنجاح',
- 'successfully deleted!' => 'الغي بنجاح',
- 'website' => 'موقع انترنت',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/am b/sql-ledger/locale/eg/am
deleted file mode 100644
index 6fb1f8b..0000000
--- a/sql-ledger/locale/eg/am
+++ /dev/null
@@ -1,195 +0,0 @@
-$self{texts} = {
- 'AP' => 'موردين',
- 'AR' => 'عملاء',
- 'About' => 'عن',
- 'Account' => 'حساب',
- 'Account Number' => 'رقم حساب',
- 'Account Number missing!' => 'رقم الحساب غير موجود',
- 'Account Type' => 'نوع الحساب',
- 'Account Type missing!' => 'نوع الحساب غير موجود',
- 'Account deleted!' => 'ألغي الحساب',
- 'Account does not exist!' => 'الحساب غير موجود',
- 'Account saved!' => 'خزن الحساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Accrual' => 'المجمعة',
- 'Add Account' => 'اضاÙØ© حساب',
- 'Add Business' => 'اضاÙØ© نوع عمل',
- 'Add Department' => 'اضاÙØ© قسم',
- 'Add Language' => 'اضاÙØ© لغة',
- 'Add SIC' => 'اضاÙØ© كود صناعى قياسى',
- 'Add Warehouse' => 'اضاÙØ© مخزن',
- 'Address' => 'العنوان',
- 'Asset' => 'أصول',
- 'Audit Control' => 'التحكم ÙÙŠ المراجعة',
- 'Backup sent to' => 'نسخة احتياطية ارسلت الى',
- 'Business Number' => 'الرقم الضريبى',
- 'COGS' => 'تكلÙØ© البضاعة المباعة',
- 'Cannot delete account!' => 'لا يمكن الغاء الحساب ',
- 'Cannot delete default account!' => 'لا يمكن الغاء الحساب الاساسي',
- 'Cannot save account!' => 'لا يمكن تخزين الحساب',
- 'Cash' => 'النقدية',
- 'Chart of Accounts' => 'قائمة الحسابات',
- 'Close Books up to' => 'اقÙال الدÙاتر حتى',
- 'Code' => 'كود',
- 'Company' => 'شركة',
- 'Continue' => 'تابع',
- 'Cost Center' => 'مركز تكلÙØ©',
- 'Credit' => 'دائن',
- 'Customer Number' => 'رقم العميل',
- 'Database Host' => 'مضي٠قواعد البيانات',
- 'Dataset' => 'مجموعة بيانات',
- 'Date Format' => 'تنسيق البيانات',
- 'Debit' => 'مدين',
- 'Delete' => 'الغاء',
- 'Delete Account' => 'الغاء الحساب',
- 'Departments' => 'اقسام',
- 'Description' => 'وصÙ',
- 'Discount' => 'خصم',
- 'E-mail' => 'بريد الكتروني',
- 'Edit' => 'تعديل',
- 'Edit Account' => 'تعديل الحساب',
- 'Edit Template' => 'تعديل عينة',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'ادخل 3 حرو٠للعملة Ù…Ùصولة ":" )CAD:USD:EUR) للعملة المحلية Ùˆ العملات الاجنبية',
- 'Equity' => 'رأس المال',
- 'Expense' => 'المصروÙات',
- 'Expense Account' => 'حساب المصروÙات',
- 'Expense/Asset' => 'الخصوم/الأصول',
- 'Fax' => 'الÙاكس',
- 'Foreign Exchange Gain' => 'ارباح التحويل الاجنبي',
- 'Foreign Exchange Loss' => 'خسائر التحويل الاجنبي',
- 'Heading' => 'عنوان',
- 'Include in drop-down menus' => 'ضع الحساب ÙÙ‰ قائمة الخيارات ---',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'ارÙÙ‚ هذا الحساب ÙÙ‰ استمارةالمورد-العميل لكى يعتبر العميل خاضع للضرائب------',
- 'Income' => 'الربح',
- 'Income Account' => 'حساب الارباح',
- 'Inventory' => 'مخزون',
- 'Inventory Account' => 'حساب المخزون',
- 'Is this a summary account to record' => 'هل هذا الحساب ملخص لحساب لكى يتم تسجيله ----',
- 'Labor/Overhead' => 'تكلÙØ© عمالة',
- 'Language' => 'اللغة',
- 'Languages' => 'اللغات',
- 'Last Numbers & Default Accounts' => 'اخر رقم و الحساب الرئيسي',
- 'Liability' => 'التزامات',
- 'Licensed to' => 'ترخيص',
- 'Link' => 'ربط',
- 'Method' => 'طريقة',
- 'Name' => 'الاسم',
- 'No' => 'لا',
- 'Number' => 'الرقم',
- 'Parts Inventory' => 'مخزن الاجزاء',
- 'Password' => 'كلمة السر',
- 'Payables' => 'المدÙوعات',
- 'Payment' => 'الدÙع النقدى',
- 'Phone' => 'تليÙون',
- 'Printer' => 'طابعة',
- 'Profit Center' => 'مركز ربح',
- 'RFQ Number' => 'رقم عرض السعر',
- 'Rate' => 'النسبة',
- 'Receivables' => 'المقبوضات',
- 'Reference' => 'مرجع',
- 'Retained Earnings' => 'ارباح محجوزة',
- 'Save' => 'تخزين',
- 'Save as new' => 'خزن كجديد',
- 'Service Items' => 'وحدات الخدمة',
- 'Signature' => 'امضاء',
- 'Standard Industrial Codes' => 'الاكواد الصناعية القياسية',
- 'System Defaults' => 'معطيات النظام',
- 'Tax' => 'ضريبة',
- 'Tax Accounts' => 'الحسابات الضريبية',
- 'Template saved!' => 'خزنت العينة',
- 'Type of Business' => 'نوع العمل',
- 'User' => 'مستخدم',
- 'Vendor Number' => 'رقم المورد',
- 'Version' => 'نسخة',
- 'Warehouses' => 'مخازن',
- 'Weight Unit' => 'وزن الوحدة',
- 'Yearend' => 'نهاية العام المالى',
- 'Yes' => 'نعم',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'اضاÙØ©_حساب' => 'add_account',
- 'اضاÙØ©_نوع_عمل' => 'add_business',
- 'اضاÙØ©_قسم' => 'add_department',
- 'اضاÙØ©_لغة' => 'add_language',
- 'اضاÙØ©_كود_صناعى_قياسى' => 'add_sic',
- 'اضاÙØ©_مخزن' => 'add_warehouse',
- 'تابع' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'الغاء' => 'delete',
- 'تعديل' => 'edit',
- 'تعديل_الحساب' => 'edit_account',
- 'تخزين' => 'save',
- 'خزن_كجديد' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ap b/sql-ledger/locale/eg/ap
deleted file mode 100644
index 8d8267e..0000000
--- a/sql-ledger/locale/eg/ap
+++ /dev/null
@@ -1,157 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'ارصدة موردين متبقية',
- 'AP Transaction' => 'حركة حساب مورد',
- 'AP Transactions' => 'حركات حساب الموردين',
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Amount Due' => 'الرصيد ',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Transaction' => 'هل انت متأكد انك تريد الغاء الحركة',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Cannot delete transaction!' => 'لا يمكن الغاء الحركة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cannot post transaction for a closed period!' => 'لا يمكن تسجيل الحركة Ù„Ùترة مغلقة',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Check' => 'شيك',
- 'Closed' => 'مغلق',
- 'Confirm!' => 'تاكيد',
- 'Continue' => 'تابع',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Date Paid' => 'تاريخ الدÙع',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'Due Date missing!' => 'تاريخ الاستحقاق غير موجود',
- 'Employee' => 'الموظÙ',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'ID' => 'البطاقة الشخصية',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Manager' => 'مدير',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Open' => 'Ùتح',
- 'Order' => 'امر',
- 'Order Number' => 'رقم الامر',
- 'Paid' => 'المدÙوع',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payments' => 'المدÙوعات',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Print' => 'طباعة',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Receipt' => 'الوارد',
- 'Remaining' => 'متبقى',
- 'Screen' => 'الشاشة',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Source' => 'مصدر',
- 'Subtotal' => 'اجمالى',
- 'Tax' => 'ضريبة',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Transaction deleted!' => 'الغيت الحركة',
- 'Transaction posted!' => 'سجلت الحركة',
- 'Update' => 'تعديل',
- 'Vendor' => 'المورد',
- 'Vendor missing!' => 'مورد غير موجود',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'Yes' => 'نعم',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'حركة_حساب_مورد' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'طباعة' => 'print',
- 'print_and_post' => 'print_and_post',
- 'تعديل' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ar b/sql-ledger/locale/eg/ar
deleted file mode 100644
index b9d53fb..0000000
--- a/sql-ledger/locale/eg/ar
+++ /dev/null
@@ -1,158 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'ارصدة عملاء ',
- 'AR Transaction' => 'حركة حساب عميل',
- 'AR Transactions' => 'حركات حساب العملاء',
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Amount Due' => 'الرصيد ',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Transaction' => 'هل انت متأكد انك تريد الغاء الحركة',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Cannot delete transaction!' => 'لا يمكن الغاء الحركة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cannot post transaction for a closed period!' => 'لا يمكن تسجيل الحركة Ù„Ùترة مغلقة',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Check' => 'شيك',
- 'Closed' => 'مغلق',
- 'Confirm!' => 'تاكيد',
- 'Continue' => 'تابع',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Date Paid' => 'تاريخ الدÙع',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'Due Date missing!' => 'تاريخ الاستحقاق غير موجود',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'ID' => 'البطاقة الشخصية',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Manager' => 'مدير',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Open' => 'Ùتح',
- 'Order' => 'امر',
- 'Order Number' => 'رقم الامر',
- 'Paid' => 'المدÙوع',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payments' => 'المدÙوعات',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Print' => 'طباعة',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Receipt' => 'الوارد',
- 'Remaining' => 'متبقى',
- 'Salesperson' => 'مندوب مبيعات',
- 'Screen' => 'الشاشة',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Ship via' => 'شحن من خلال',
- 'Shipping Point' => 'نقطة الشحن',
- 'Source' => 'مصدر',
- 'Subtotal' => 'اجمالى',
- 'Tax' => 'ضريبة',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'Till' => 'إلى',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Transaction deleted!' => 'الغيت الحركة',
- 'Transaction posted!' => 'سجلت الحركة',
- 'Update' => 'تعديل',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'Yes' => 'نعم',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'حركة_حساب_عميل' => 'ar_transaction',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'طباعة' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'تعديل' => 'update',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/arap b/sql-ledger/locale/eg/arap
deleted file mode 100644
index ccba452..0000000
--- a/sql-ledger/locale/eg/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'العنوان',
- 'Continue' => 'تابع',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Description' => 'وصÙ',
- 'Number' => 'الرقم',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'تابع' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/arapprn b/sql-ledger/locale/eg/arapprn
deleted file mode 100644
index df0ad23..0000000
--- a/sql-ledger/locale/eg/arapprn
+++ /dev/null
@@ -1,27 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Amount' => 'الكمية',
- 'Check' => 'شيك',
- 'Continue' => 'تابع',
- 'Date' => 'التاريخ',
- 'Memo' => 'ملاحظات',
- 'Receipt' => 'الوارد',
- 'Screen' => 'الشاشة',
- 'Source' => 'مصدر',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'تابع' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/bp b/sql-ledger/locale/eg/bp
deleted file mode 100644
index a651641..0000000
--- a/sql-ledger/locale/eg/bp
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Checks' => 'الشيكات',
- 'Confirm!' => 'تاكيد',
- 'Continue' => 'تابع',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Date' => 'التاريخ',
- 'From' => 'من',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Order' => 'امر',
- 'Order Number' => 'رقم الامر',
- 'Packing Lists' => 'قوائم تعبئة',
- 'Print' => 'طباعة',
- 'Purchase Orders' => 'اوامر شراء',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotation Number' => 'رقم عرض السعر',
- 'Quotations' => 'عروض اسعار',
- 'RFQs' => 'عروض اسعار موردين',
- 'Receipts' => 'الواردات',
- 'Reference' => 'مرجع',
- 'Sales Invoices' => 'Ùواتير المبيعات',
- 'Sales Orders' => 'اوامر بيع',
- 'Select all' => 'اختر الكل',
- 'To' => 'إلى',
- 'Vendor' => 'المورد',
- 'Yes' => 'نعم',
- 'done' => 'Ù†ÙØ°',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'تابع' => 'continue',
- 'طباعة' => 'print',
- 'remove' => 'remove',
- 'اختر_الكل' => 'select_all',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ca b/sql-ledger/locale/eg/ca
deleted file mode 100644
index e7c9d83..0000000
--- a/sql-ledger/locale/eg/ca
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Balance' => 'رصيد',
- 'Chart of Accounts' => 'قائمة الحسابات',
- 'Credit' => 'دائن',
- 'Current' => 'الحالي',
- 'Date' => 'التاريخ',
- 'Debit' => 'مدين',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'List Transactions' => 'قائمة الحركات',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Project Number' => 'رقم المشروع',
- 'Reference' => 'مرجع',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Subtotal' => 'اجمالى',
- 'To' => 'إلى',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'قائمة_الحركات' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/cp b/sql-ledger/locale/eg/cp
deleted file mode 100644
index c1b8daa..0000000
--- a/sql-ledger/locale/eg/cp
+++ /dev/null
@@ -1,76 +0,0 @@
-$self{texts} = {
- 'AP' => 'موردين',
- 'AR' => 'عملاء',
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Address' => 'العنوان',
- 'All' => 'الكل',
- 'Amount' => 'الكمية',
- 'Amount Due' => 'الرصيد ',
- 'Cannot post Payment!' => 'لا يمكن تسجيل المدÙوعات',
- 'Cannot process payment for a closed period!' => 'لا يمكن تشغيل المدÙوعات Ù„Ùترة مغلقة',
- 'Continue' => 'تابع',
- 'Currency' => 'عملة',
- 'Customer' => 'العميل',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Date missing!' => 'التاريخ غير موجود',
- 'Department' => 'قسم',
- 'Deposit' => 'إيداع',
- 'Description' => 'وصÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Invoice' => 'Ùاتورة',
- 'Invoices' => 'Ùواتير',
- 'Memo' => 'ملاحظات',
- 'Number' => 'الرقم',
- 'Payment' => 'الدÙع النقدى',
- 'Payment posted!' => 'تم ترحيل مدÙوعات',
- 'Post' => 'تسجيل',
- 'Print' => 'طباعة',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Receipt' => 'الوارد',
- 'Screen' => 'الشاشة',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Source' => 'مصدر',
- 'Update' => 'تعديل',
- 'Vendor' => 'المورد',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'تابع' => 'continue',
- 'تسجيل' => 'post',
- 'طباعة' => 'print',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ct b/sql-ledger/locale/eg/ct
deleted file mode 100644
index b60830c..0000000
--- a/sql-ledger/locale/eg/ct
+++ /dev/null
@@ -1,162 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'حركة حساب مورد',
- 'AP Transactions' => 'حركات حساب الموردين',
- 'AR Transaction' => 'حركة حساب عميل',
- 'AR Transactions' => 'حركات حساب العملاء',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Customer' => 'اضاÙØ© عميل',
- 'Add Vendor' => 'اضاÙØ© مورد',
- 'Address' => 'العنوان',
- 'All' => 'الكل',
- 'Amount' => 'الكمية',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cannot delete customer!' => 'لا يمكن الغاء العميل',
- 'Cannot delete vendor!' => 'لا يمكن الغاء المورد',
- 'Cc' => 'نسخة اخرى',
- 'City' => 'مدينة',
- 'Closed' => 'مغلق',
- 'Company Name' => 'اسم الشركة',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Cost' => 'تكلÙØ©',
- 'Country' => 'دولة',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Customer History' => 'بيانات تاريخية للعميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer deleted!' => 'الغي العميل',
- 'Customer saved!' => 'خزن العميل',
- 'Customers' => 'العملاء',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Description' => 'وصÙ',
- 'Detail' => 'تÙصيلى',
- 'Discount' => 'خصم',
- 'E-mail' => 'بريد الكتروني',
- 'Edit Customer' => 'تعديل بيانات العميل',
- 'Edit Vendor' => 'تعديل مورد',
- 'Employee' => 'الموظÙ',
- 'Enddate' => 'تاريخ نهاية العمل',
- 'Fax' => 'الÙاكس',
- 'From' => 'من',
- 'Group' => 'مجموعة',
- 'ID' => 'البطاقة الشخصية',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Invoice' => 'Ùاتورة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Language' => 'اللغة',
- 'Leadtime' => 'مدة التسليم',
- 'Manager' => 'مدير',
- 'Name' => 'الاسم',
- 'Name missing!' => 'اسم غير موجود',
- 'Notes' => 'ملاحظات',
- 'Number' => 'الرقم',
- 'Open' => 'Ùتح',
- 'Order' => 'امر',
- 'Part Number' => 'رقم الصنÙ',
- 'Phone' => 'تليÙون',
- 'Pricegroup' => 'مجموعة سعرية',
- 'Project Number' => 'رقم المشروع',
- 'Purchase Order' => 'امر شراء',
- 'Purchase Orders' => 'اوامر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotations' => 'عروض اسعار',
- 'Request for Quotations' => 'عروض اسعار مطلوبة',
- 'SIC' => 'الاكواد الصناعية القياسية',
- 'Sales Invoice' => 'Ùاتورة المبيعات',
- 'Sales Invoices' => 'Ùواتير المبيعات',
- 'Sales Order' => 'امر بيع',
- 'Sales Orders' => 'اوامر بيع',
- 'Salesperson' => 'مندوب مبيعات',
- 'Save' => 'تخزين',
- 'Search' => 'بحث',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Sell Price' => 'سعر البيع',
- 'Serial Number' => 'رقم مسلسل',
- 'Shipping Address' => 'عنوان الشحن',
- 'Startdate' => 'تاريخ يدء العمل',
- 'State/Province' => 'محاÙظة',
- 'Subtotal' => 'اجمالى',
- 'Summary' => 'ملخص',
- 'Tax' => 'ضريبة',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'Tax Number' => 'رقم ضريبى',
- 'Taxable' => 'خاضع للضريبة',
- 'Terms' => 'شروط ',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Type of Business' => 'نوع العمل',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
- 'Vendor History' => 'بيانات تاريخية عن مورد',
- 'Vendor Invoice' => 'Ùاتورة المورد ',
- 'Vendor Invoices' => 'Ùواتير الموردين',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor deleted!' => 'الغي المورد',
- 'Vendor saved!' => 'خزن المورد',
- 'Vendors' => 'الموردين',
- 'days' => 'ايام',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'حركة_حساب_مورد' => 'ap_transaction',
- 'حركة_حساب_عميل' => 'ar_transaction',
- 'اضاÙØ©_عميل' => 'add_customer',
- 'اضاÙØ©_مورد' => 'add_vendor',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'pricelist' => 'pricelist',
- 'امر_شراء' => 'purchase_order',
- 'عروض_اسعار_للعملاء' => 'quotation',
- 'rfq' => 'rfq',
- 'Ùاتورة_المبيعات' => 'sales_invoice',
- 'امر_بيع' => 'sales_order',
- 'تخزين' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'تعديل' => 'update',
- 'Ùاتورة_المورد_' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/gl b/sql-ledger/locale/eg/gl
deleted file mode 100644
index 35b4c8c..0000000
--- a/sql-ledger/locale/eg/gl
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'حركة حساب مورد',
- 'AR Transaction' => 'حركة حساب عميل',
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Cash Transfer Transaction' => 'اضاÙØ© حركة تحويل النقدية',
- 'Add General Ledger Transaction' => 'اضاÙØ© حركة الأستاذ العام',
- 'Address' => 'العنوان',
- 'All' => 'الكل',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Transaction' => 'هل انت متأكد انك تريد الغاء الحركة',
- 'Asset' => 'أصول',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Balance' => 'رصيد',
- 'Cannot delete transaction!' => 'لا يمكن الغاء الحركة',
- 'Cannot post transaction for a closed period!' => 'لا يمكن تسجيل الحركة Ù„Ùترة مغلقة',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Confirm!' => 'تاكيد',
- 'Continue' => 'تابع',
- 'Credit' => 'دائن',
- 'Current' => 'الحالي',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Debit' => 'مدين',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Edit Cash Transfer Transaction' => 'تعديل حركة تحويل النقدية',
- 'Edit General Ledger Transaction' => 'تعديل حركة الأستاذ العام',
- 'Equity' => 'رأس المال',
- 'Expense' => 'المصروÙات',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'GL Transaction' => 'حركات الاستاذ العام',
- 'General Ledger' => 'الاستاذ العام',
- 'ID' => 'البطاقة الشخصية',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Income' => 'الربح',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Liability' => 'التزامات',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Project' => 'مشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Reference' => 'مرجع',
- 'Reference missing!' => 'مرجع غير موجود',
- 'Reports' => 'تقارير',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Source' => 'مصدر',
- 'Subtotal' => 'اجمالى',
- 'To' => 'إلى',
- 'Transaction Date missing!' => 'تاريخ الحركة غير موجود',
- 'Transaction deleted!' => 'الغيت الحركة',
- 'Transaction posted!' => 'سجلت الحركة',
- 'Update' => 'تعديل',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'Yes' => 'نعم',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'حركة_حساب_مورد' => 'ap_transaction',
- 'حركة_حساب_عميل' => 'ar_transaction',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'حركات_الاستاذ_العام' => 'gl_transaction',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'تعديل' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/hr b/sql-ledger/locale/eg/hr
deleted file mode 100644
index ce87f7c..0000000
--- a/sql-ledger/locale/eg/hr
+++ /dev/null
@@ -1,81 +0,0 @@
-$self{texts} = {
- 'AP' => 'موردين',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Employee' => 'اضاÙØ© موظÙ',
- 'Address' => 'العنوان',
- 'Administrator' => 'المدير',
- 'All' => 'الكل',
- 'Amount' => 'الكمية',
- 'Amount missing!' => 'الكمية غير موجودة',
- 'City' => 'مدينة',
- 'Continue' => 'تابع',
- 'Country' => 'دولة',
- 'Delete' => 'الغاء',
- 'Description' => 'وصÙ',
- 'E-mail' => 'بريد الكتروني',
- 'Employee' => 'الموظÙ',
- 'Employee Name' => 'اسم الموظÙ',
- 'Employees' => 'العاملين',
- 'Enddate' => 'تاريخ نهاية العمل',
- 'Expense' => 'المصروÙات',
- 'Home Phone' => 'تلÙون المنزل',
- 'ID' => 'البطاقة الشخصية',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Login' => 'دخول',
- 'Manager' => 'مدير',
- 'Name' => 'الاسم',
- 'Name missing!' => 'اسم غير موجود',
- 'Notes' => 'ملاحظات',
- 'Number' => 'الرقم',
- 'Rate' => 'النسبة',
- 'Role' => 'الوظيÙØ©',
- 'Sales' => 'مبيعات',
- 'Save' => 'تخزين',
- 'Save as new' => 'خزن كجديد',
- 'Startdate' => 'تاريخ يدء العمل',
- 'State/Province' => 'محاÙظة',
- 'Update' => 'تعديل',
- 'User' => 'مستخدم',
- 'Work Phone' => 'تلÙون العمل',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'اضاÙØ©_موظÙ' => 'add_employee',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'تخزين' => 'save',
- 'خزن_كجديد' => 'save_as_new',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ic b/sql-ledger/locale/eg/ic
deleted file mode 100644
index 1dbb481..0000000
--- a/sql-ledger/locale/eg/ic
+++ /dev/null
@@ -1,236 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Accrual' => 'المجمعة',
- 'Active' => 'Ùعال',
- 'Add' => 'اضاÙØ©',
- 'Add Assembly' => 'اضاÙØ© تجميع',
- 'Add Labor/Overhead' => 'اضاÙØ© تكلÙØ© عمالة',
- 'Add Part' => 'اضاÙØ© جزء',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Add Service' => 'اضاÙØ© خدمة',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Assemblies' => 'مجمعات',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'COGS' => 'تكلÙØ© البضاعة المباعة',
- 'Cannot delete item!' => 'لا يمكن الغاء الوحدة',
- 'Cash' => 'النقدية',
- 'Cc' => 'نسخة اخرى',
- 'Check Inventory' => 'مراجعة مخزون',
- 'City' => 'مدينة',
- 'Closed' => 'مغلق',
- 'Company Name' => 'اسم الشركة',
- 'Components' => 'مكونات',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Cost' => 'تكلÙØ©',
- 'Country' => 'دولة',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Customer' => 'العميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Description' => 'وصÙ',
- 'Drawing' => 'رسم',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Edit Part' => 'تعديل جزء',
- 'Edit Service' => 'تعديل خدمة',
- 'Employee' => 'الموظÙ',
- 'Expense' => 'المصروÙات',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'Image' => 'صورة',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Income' => 'الربح',
- 'Individual Items' => 'وحدات Ùردية',
- 'Inventory' => 'مخزون',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Item deleted!' => 'الغيت الوحدة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Labor/Overhead' => 'تكلÙØ© عمالة',
- 'Leadtime' => 'مدة التسليم',
- 'Line Total' => 'اجمالى السطر',
- 'Link Accounts' => 'ربط الحسابات',
- 'List Price' => 'قائمة الاسعار',
- 'Make' => 'اÙعل',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'Markup' => 'نسبة الربح',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Message' => 'رسالة',
- 'Model' => 'موديل',
- 'Name' => 'الاسم',
- 'No.' => 'رقم',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'On Hand' => 'بالمخزن',
- 'Open' => 'Ùتح',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Part' => 'جزء',
- 'Parts' => 'الاجزاء',
- 'Phone' => 'تليÙون',
- 'Price' => 'سعر',
- 'Pricegroup' => 'مجموعة سعرية',
- 'Project' => 'مشروع',
- 'Purchase Order' => 'امر شراء',
- 'Purchase Orders' => 'اوامر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotations' => 'عروض اسعار',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Invoice' => 'Ùاتورة المبيعات',
- 'Sales Invoices' => 'Ùواتير المبيعات',
- 'Sales Order' => 'امر بيع',
- 'Sales Orders' => 'اوامر بيع',
- 'Save' => 'تخزين',
- 'Save as new' => 'خزن كجديد',
- 'Screen' => 'الشاشة',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Sell Price' => 'سعر البيع',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Serial Number' => 'رقم مسلسل',
- 'Service' => 'خدمة',
- 'Services' => 'خدمات',
- 'Ship' => 'شحن صادر',
- 'Ship to' => 'شحن الى',
- 'Shipping Address' => 'عنوان الشحن',
- 'Short' => 'قصير',
- 'State/Province' => 'محاÙظة',
- 'Stock' => 'مخزون',
- 'Stock Assembly' => 'تجميع مخزون',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Tax' => 'ضريبة',
- 'To' => 'إلى',
- 'Top Level' => 'المستوى الاعلى',
- 'Unit' => 'وحدة',
- 'Unit of measure' => 'وحدة القياس',
- 'Update' => 'تعديل',
- 'Updated' => 'معدل',
- 'Vendor' => 'المورد',
- 'Vendor Invoice' => 'Ùاتورة المورد ',
- 'Vendor Invoices' => 'Ùواتير الموردين',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'Weight' => 'وزن',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'days' => 'ايام',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'اضاÙØ©_تجميع' => 'add_assembly',
- 'اضاÙØ©_تكلÙØ©_عمالة' => 'add_labor/overhead',
- 'اضاÙØ©_جزء' => 'add_part',
- 'اضاÙØ©_خدمة' => 'add_service',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'edit_assembly' => 'edit_assembly',
- 'تعديل_جزء' => 'edit_part',
- 'تعديل_خدمة' => 'edit_service',
- 'تخزين' => 'save',
- 'خزن_كجديد' => 'save_as_new',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/io b/sql-ledger/locale/eg/io
deleted file mode 100644
index a2b1c75..0000000
--- a/sql-ledger/locale/eg/io
+++ /dev/null
@@ -1,117 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Address' => 'العنوان',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cc' => 'نسخة اخرى',
- 'City' => 'مدينة',
- 'Company Name' => 'اسم الشركة',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Country' => 'دولة',
- 'Customer Number' => 'رقم العميل',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Description' => 'وصÙ',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Message' => 'رسالة',
- 'No.' => 'رقم',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Part' => 'جزء',
- 'Phone' => 'تليÙون',
- 'Price' => 'سعر',
- 'Project' => 'مشروع',
- 'Purchase Order' => 'امر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Order' => 'امر بيع',
- 'Screen' => 'الشاشة',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Service' => 'خدمة',
- 'Ship' => 'شحن صادر',
- 'Ship to' => 'شحن الى',
- 'Shipping Address' => 'عنوان الشحن',
- 'State/Province' => 'محاÙظة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'To' => 'إلى',
- 'Unit' => 'وحدة',
- 'Vendor Number' => 'رقم المورد',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'تابع' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ir b/sql-ledger/locale/eg/ir
deleted file mode 100644
index 76bed0f..0000000
--- a/sql-ledger/locale/eg/ir
+++ /dev/null
@@ -1,196 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Add Vendor Invoice' => 'اضاÙØ© Ùاتورة المورد',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Invoice Number' => 'هل انت متأكد انك تريد الغاء رقم الÙاتروة ',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cannot delete invoice!' => 'لا يمكن الغاء الÙاتورة',
- 'Cannot post invoice!' => 'لا يمكن تسجيل الÙاتورة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cc' => 'نسخة اخرى',
- 'City' => 'مدينة',
- 'Company Name' => 'اسم الشركة',
- 'Confirm!' => 'تاكيد',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Country' => 'دولة',
- 'Credit Limit' => 'حد الائتمان',
- 'Currency' => 'عملة',
- 'Customer Number' => 'رقم العميل',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Edit Vendor Invoice' => 'تعديل Ùاتورة مورد',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Internal Notes' => 'ملاحظات داخلية',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Invoice deleted!' => 'الغيت القاتورة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Language' => 'اللغة',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Message' => 'رسالة',
- 'No.' => 'رقم',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Part' => 'جزء',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payments' => 'المدÙوعات',
- 'Phone' => 'تليÙون',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Price' => 'سعر',
- 'Project' => 'مشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Purchase Order' => 'امر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Record in' => 'ÙÙŠ السجل',
- 'Remaining' => 'متبقى',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Order' => 'امر بيع',
- 'Screen' => 'الشاشة',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Service' => 'خدمة',
- 'Ship' => 'شحن صادر',
- 'Ship to' => 'شحن الى',
- 'Shipping Address' => 'عنوان الشحن',
- 'Source' => 'مصدر',
- 'State/Province' => 'محاÙظة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
- 'Vendor' => 'المورد',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor missing!' => 'مورد غير موجود',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'Yes' => 'نعم',
- 'ea' => 'قطعة',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'امر_شراء' => 'purchase_order',
- 'تعديل' => 'update',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/is b/sql-ledger/locale/eg/is
deleted file mode 100644
index b8451d2..0000000
--- a/sql-ledger/locale/eg/is
+++ /dev/null
@@ -1,206 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Invoice' => 'اضاÙØ© Ùاتورة بيع',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Invoice Number' => 'هل انت متأكد انك تريد الغاء رقم الÙاتروة ',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cannot delete invoice!' => 'لا يمكن الغاء الÙاتورة',
- 'Cannot post invoice!' => 'لا يمكن تسجيل الÙاتورة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cc' => 'نسخة اخرى',
- 'City' => 'مدينة',
- 'Company Name' => 'اسم الشركة',
- 'Confirm!' => 'تاكيد',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Country' => 'دولة',
- 'Credit Limit' => 'حد الائتمان',
- 'Currency' => 'عملة',
- 'Customer' => 'العميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Edit Sales Invoice' => 'تعديل Ùاتورة مبيعات',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Internal Notes' => 'ملاحظات داخلية',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Invoice deleted!' => 'الغيت القاتورة',
- 'Invoice posted!' => 'سجلت الÙاتورة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Message' => 'رسالة',
- 'No.' => 'رقم',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Part' => 'جزء',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payments' => 'المدÙوعات',
- 'Phone' => 'تليÙون',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Price' => 'سعر',
- 'Print' => 'طباعة',
- 'Project' => 'مشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Purchase Order' => 'امر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Record in' => 'ÙÙŠ السجل',
- 'Remaining' => 'متبقى',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Order' => 'امر بيع',
- 'Salesperson' => 'مندوب مبيعات',
- 'Screen' => 'الشاشة',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Service' => 'خدمة',
- 'Ship' => 'شحن صادر',
- 'Ship to' => 'شحن الى',
- 'Ship via' => 'شحن من خلال',
- 'Shipping Address' => 'عنوان الشحن',
- 'Shipping Point' => 'نقطة الشحن',
- 'Source' => 'مصدر',
- 'State/Province' => 'محاÙظة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'Yes' => 'نعم',
- 'ea' => 'قطعة',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'بريد_الكتروني' => 'e_mail',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'طباعة' => 'print',
- 'print_and_post' => 'print_and_post',
- 'امر_بيع' => 'sales_order',
- 'شحن_الى' => 'ship_to',
- 'تعديل' => 'update',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/login b/sql-ledger/locale/eg/login
deleted file mode 100644
index b1c59a1..0000000
--- a/sql-ledger/locale/eg/login
+++ /dev/null
@@ -1,23 +0,0 @@
-$self{texts} = {
- 'Company' => 'شركة',
- 'Continue' => 'تابع',
- 'Incorrect Dataset version!' => 'نسخة غير صحيحة من مجموعة البيانات',
- 'Incorrect Password!' => 'كلمة السر غير صحيحة',
- 'Login' => 'دخول',
- 'Name' => 'الاسم',
- 'Password' => 'كلمة السر',
- 'Version' => 'نسخة',
- 'You did not enter a name!' => 'لم يتم ادخال الاسم',
- 'done' => 'Ù†ÙØ°',
- 'is not a member!' => 'ليس عضوا',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'دخول' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/menu b/sql-ledger/locale/eg/menu
deleted file mode 100644
index 2c02ee0..0000000
--- a/sql-ledger/locale/eg/menu
+++ /dev/null
@@ -1,118 +0,0 @@
-$self{texts} = {
- 'AP' => 'موردين',
- 'AP Aging' => 'كش٠حساب موردين',
- 'AP Transaction' => 'حركة حساب مورد',
- 'AR' => 'عملاء',
- 'AR Aging' => 'كشوÙات حسابات العملاء',
- 'AR Transaction' => 'حركة حساب عميل',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Account' => 'اضاÙØ© حساب',
- 'Add Assembly' => 'اضاÙØ© تجميع',
- 'Add Business' => 'اضاÙØ© نوع عمل',
- 'Add Customer' => 'اضاÙØ© عميل',
- 'Add Department' => 'اضاÙØ© قسم',
- 'Add Employee' => 'اضاÙØ© موظÙ',
- 'Add Group' => 'اضاÙØ© مجموعة',
- 'Add Labor/Overhead' => 'اضاÙØ© تكلÙØ© عمالة',
- 'Add Language' => 'اضاÙØ© لغة',
- 'Add Part' => 'اضاÙØ© جزء',
- 'Add Project' => 'اضاÙØ© مشروع',
- 'Add SIC' => 'اضاÙØ© كود صناعى قياسى',
- 'Add Service' => 'اضاÙØ© خدمة',
- 'Add Transaction' => 'اضاÙØ© حركة',
- 'Add Vendor' => 'اضاÙØ© مورد',
- 'Add Warehouse' => 'اضاÙØ© مخزن',
- 'All Items' => 'الكل',
- 'Assemblies' => 'مجمعات',
- 'Audit Control' => 'التحكم ÙÙŠ المراجعة',
- 'Backup' => 'نسخة احتياطية ',
- 'Balance Sheet' => 'الميزانية',
- 'Cash' => 'النقدية',
- 'Chart of Accounts' => 'قائمة الحسابات',
- 'Check' => 'شيك',
- 'Checks' => 'الشيكات',
- 'Components' => 'مكونات',
- 'Customers' => 'العملاء',
- 'Defaults' => 'معطيات النظام',
- 'Departments' => 'اقسام',
- 'Description' => 'وصÙ',
- 'Employees' => 'العاملين',
- 'General Ledger' => 'الاستاذ العام',
- 'Goods & Services' => 'البضاعة و الخدمات',
- 'Groups' => 'مجموعات',
- 'HR' => 'موارد بشرية',
- 'History' => 'تاريخى',
- 'Income Statement' => 'قائمة الدخل',
- 'Invoice' => 'Ùاتورة',
- 'Labor/Overhead' => 'تكلÙØ© عمالة',
- 'Language' => 'اللغة',
- 'List Accounts' => 'قائمة الحسابات',
- 'List Businesses' => 'قائمةانواع العمل',
- 'List Departments' => 'قائمة الاقسام',
- 'List Languages' => 'قائمة اللغات',
- 'List Projects' => 'قائمة المشروعات',
- 'List SIC' => 'قائمة الاكواد الصناعية القياسية',
- 'List Warehouses' => 'قائمة المخازن',
- 'Logout' => 'خروج',
- 'Non-taxable' => 'غير خاضع للضريبة',
- 'Open' => 'Ùتح',
- 'Order Entry' => 'ادخال الامر',
- 'Outstanding' => 'ارصدة',
- 'POS' => 'نقطة بيع',
- 'POS Invoice' => 'Ùاتورة امر الشراء',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing Lists' => 'قوائم تعبئة',
- 'Parts' => 'الاجزاء',
- 'Payment' => 'الدÙع النقدى',
- 'Payments' => 'المدÙوعات',
- 'Pricegroups' => 'مجموعات سعرية',
- 'Print' => 'طباعة',
- 'Projects' => 'مشروعات',
- 'Purchase Order' => 'امر شراء',
- 'Purchase Orders' => 'اوامر شراء',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotations' => 'عروض اسعار',
- 'RFQs' => 'عروض اسعار موردين',
- 'Receipt' => 'الوارد',
- 'Receipts' => 'الواردات',
- 'Receive' => 'شحن وارد',
- 'Reconciliation' => 'تسويات',
- 'Reports' => 'تقارير',
- 'SIC' => 'الاكواد الصناعية القياسية',
- 'Sale' => 'بيع',
- 'Sales Invoice' => 'Ùاتورة المبيعات',
- 'Sales Invoices' => 'Ùواتير المبيعات',
- 'Sales Order' => 'امر بيع',
- 'Sales Orders' => 'اوامر بيع',
- 'Save to File' => 'خزن كملÙ',
- 'Search' => 'بحث',
- 'Send by E-Mail' => 'ارسل بالبريد الالكتروني',
- 'Services' => 'خدمات',
- 'Ship' => 'شحن صادر',
- 'Shipping' => 'شحن',
- 'Statement' => 'كش٠حساب',
- 'Stock Assembly' => 'تجميع مخزون',
- 'System' => 'نظام',
- 'Tax collected' => 'الضريبة المجمعة',
- 'Tax paid' => 'الضريبة المدÙوعة',
- 'Transactions' => 'حركات',
- 'Transfer' => 'تحويل',
- 'Translations' => 'ترجمات',
- 'Trial Balance' => 'ميزان المراجعة',
- 'Type of Business' => 'نوع العمل',
- 'Vendor Invoice' => 'Ùاتورة المورد ',
- 'Vendors' => 'الموردين',
- 'Version' => 'نسخة',
- 'Warehouses' => 'مخازن',
- 'Work Order' => 'امر شغل',
- 'Yearend' => 'نهاية العام المالى',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/oe b/sql-ledger/locale/eg/oe
deleted file mode 100644
index aa5a384..0000000
--- a/sql-ledger/locale/eg/oe
+++ /dev/null
@@ -1,254 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Invoice' => 'اضاÙØ© Ùاتورة بيع',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Add Vendor Invoice' => 'اضاÙØ© Ùاتورة المورد',
- 'Address' => 'العنوان',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Order Number' => 'هل انت متأكد انك تريد الغاء رقم الطلب',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cannot delete order!' => 'لا يمكن الغاء الطلب',
- 'Cannot save order!' => 'لا يمكن تخزين الطلب',
- 'Cc' => 'نسخة اخرى',
- 'City' => 'مدينة',
- 'Closed' => 'مغلق',
- 'Company Name' => 'اسم الشركة',
- 'Confirm!' => 'تاكيد',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Country' => 'دولة',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Done' => 'Ù†ÙØ°',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Edit Purchase Order' => 'تعديل امر شراء',
- 'Edit Sales Order' => 'تعديل امر مبيعات',
- 'Employee' => 'الموظÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'ID' => 'البطاقة الشخصية',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Internal Notes' => 'ملاحظات داخلية',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Manager' => 'مدير',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Message' => 'رسالة',
- 'No.' => 'رقم',
- 'Notes' => 'ملاحظات',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Open' => 'Ùتح',
- 'Order' => 'امر',
- 'Order Date' => 'تاريخ الامر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Order deleted!' => 'الغي الامر',
- 'Order saved!' => 'خزن الامر',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Part' => 'جزء',
- 'Part Number' => 'رقم الصنÙ',
- 'Phone' => 'تليÙون',
- 'Price' => 'سعر',
- 'Print' => 'طباعة',
- 'Project' => 'مشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Purchase Order' => 'امر شراء',
- 'Purchase Orders' => 'اوامر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Quotation Date' => 'تاريخ عرض السعر',
- 'Quotation Number' => 'رقم عرض السعر',
- 'Quotations' => 'عروض اسعار',
- 'RFQ Number' => 'رقم عرض السعر',
- 'Receive Merchandise' => 'استلام بضاعة',
- 'Remaining' => 'متبقى',
- 'Request for Quotations' => 'عروض اسعار مطلوبة',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Invoice' => 'Ùاتورة المبيعات',
- 'Sales Order' => 'امر بيع',
- 'Sales Orders' => 'اوامر بيع',
- 'Salesperson' => 'مندوب مبيعات',
- 'Save' => 'تخزين',
- 'Save as new' => 'خزن كجديد',
- 'Screen' => 'الشاشة',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Service' => 'خدمة',
- 'Ship' => 'شحن صادر',
- 'Ship Merchandise' => 'شحن بضاعة للخارج',
- 'Ship to' => 'شحن الى',
- 'Ship via' => 'شحن من خلال',
- 'Shipping Address' => 'عنوان الشحن',
- 'Shipping Point' => 'نقطة الشحن',
- 'State/Province' => 'محاÙظة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Tax' => 'ضريبة',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'Terms' => 'شروط ',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Transfer' => 'تحويل',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
- 'Valid until' => 'سارى حتى',
- 'Vendor' => 'المورد',
- 'Vendor Invoice' => 'Ùاتورة المورد ',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor missing!' => 'مورد غير موجود',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'Yes' => 'نعم',
- 'days' => 'ايام',
- 'ea' => 'قطعة',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'Ù†ÙØ°' => 'done',
- 'بريد_الكتروني' => 'e_mail',
- 'طباعة' => 'print',
- 'print_and_save' => 'print_and_save',
- 'امر_شراء' => 'purchase_order',
- 'عروض_اسعار_للعملاء' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'Ùاتورة_المبيعات' => 'sales_invoice',
- 'امر_بيع' => 'sales_order',
- 'تخزين' => 'save',
- 'خزن_كجديد' => 'save_as_new',
- 'شحن_الى' => 'ship_to',
- 'تحويل' => 'transfer',
- 'تعديل' => 'update',
- 'Ùاتورة_المورد_' => 'vendor_invoice',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/pe b/sql-ledger/locale/eg/pe
deleted file mode 100644
index 39c32db..0000000
--- a/sql-ledger/locale/eg/pe
+++ /dev/null
@@ -1,71 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Add Group' => 'اضاÙØ© مجموعة',
- 'Add Project' => 'اضاÙØ© مشروع',
- 'All' => 'الكل',
- 'Continue' => 'تابع',
- 'Delete' => 'الغاء',
- 'Description' => 'وصÙ',
- 'Description Translations' => 'ترجمة مواصÙات',
- 'Edit Group' => 'تعديل مجموعة',
- 'Edit Project' => 'تعديل مشروع',
- 'Group' => 'مجموعة',
- 'Group Translations' => 'ترجمة مجوعات',
- 'Group deleted!' => 'الغيت المجموعة',
- 'Group missing!' => 'مجموعة غير موجودة',
- 'Group saved!' => 'تخزين المجموعة',
- 'Groups' => 'مجموعات',
- 'Language' => 'اللغة',
- 'Number' => 'الرقم',
- 'Pricegroup' => 'مجموعة سعرية',
- 'Pricegroups' => 'مجموعات سعرية',
- 'Project' => 'مشروع',
- 'Project Description Translations' => 'ترجمة وص٠المشروع',
- 'Project Number' => 'رقم المشروع',
- 'Project Number missing!' => 'رقم المشروع غير موجود',
- 'Project deleted!' => 'الغي المشروع',
- 'Project saved!' => 'خزن المشروع',
- 'Projects' => 'مشروعات',
- 'Save' => 'تخزين',
- 'Update' => 'تعديل',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'اضاÙØ©_مجموعة' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'اضاÙØ©_مشروع' => 'add_project',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'تخزين' => 'save',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/pos b/sql-ledger/locale/eg/pos
deleted file mode 100644
index 0e6cc4e..0000000
--- a/sql-ledger/locale/eg/pos
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Add POS Invoice' => 'اضاÙØ© Ùاتورة نقطة بيع',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Change' => 'تغيير',
- 'Continue' => 'تابع',
- 'Credit Limit' => 'حد الائتمان',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Delete' => 'الغاء',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Edit POS Invoice' => 'تعديل Ùاتورة أمر الشراء',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Extended' => 'اجمالى',
- 'From' => 'من',
- 'Language' => 'اللغة',
- 'Memo' => 'ملاحظات',
- 'Number' => 'الرقم',
- 'Open' => 'Ùتح',
- 'Paid' => 'المدÙوع',
- 'Post' => 'تسجيل',
- 'Posted!' => 'سجل',
- 'Price' => 'سعر',
- 'Print' => 'طباعة',
- 'Qty' => 'الكمية',
- 'Receipts' => 'الواردات',
- 'Record in' => 'ÙÙŠ السجل',
- 'Remaining' => 'متبقى',
- 'Salesperson' => 'مندوب مبيعات',
- 'Screen' => 'الشاشة',
- 'Source' => 'مصدر',
- 'Subtotal' => 'اجمالى',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'تسجيل' => 'post',
- 'طباعة' => 'print',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/ps b/sql-ledger/locale/eg/ps
deleted file mode 100644
index 135ac7f..0000000
--- a/sql-ledger/locale/eg/ps
+++ /dev/null
@@ -1,305 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'كش٠حساب موردين',
- 'AR Aging' => 'كشوÙات حسابات العملاء',
- 'AR Outstanding' => 'ارصدة عملاء ',
- 'AR Transaction' => 'حركة حساب عميل',
- 'AR Transactions' => 'حركات حساب العملاء',
- 'Account' => 'حساب',
- 'Account Number' => 'رقم حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Accounts' => 'حسابات',
- 'Accrual' => 'المجمعة',
- 'Add POS Invoice' => 'اضاÙØ© Ùاتورة نقطة بيع',
- 'Add Purchase Order' => 'اضاÙØ© طلب شراء',
- 'Add Quotation' => 'اضاÙØ© عرض سعر ',
- 'Add Request for Quotation' => 'اضاÙØ© عرض سعر مورد',
- 'Add Sales Invoice' => 'اضاÙØ© Ùاتورة بيع',
- 'Add Sales Order' => 'اضاÙØ© طلب بيع',
- 'Address' => 'العنوان',
- 'All Accounts' => 'كل الحسابات',
- 'Amount' => 'الكمية',
- 'Amount Due' => 'الرصيد ',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Are you sure you want to delete Invoice Number' => 'هل انت متأكد انك تريد الغاء رقم الÙاتروة ',
- 'Are you sure you want to delete Transaction' => 'هل انت متأكد انك تريد الغاء الحركة',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Balance' => 'رصيد',
- 'Balance Sheet' => 'الميزانية',
- 'Bcc' => 'نسخة غير مرئية',
- 'Billing Address' => 'عنوان ارسال الÙواتير',
- 'Cannot delete invoice!' => 'لا يمكن الغاء الÙاتورة',
- 'Cannot delete transaction!' => 'لا يمكن الغاء الحركة',
- 'Cannot post invoice!' => 'لا يمكن تسجيل الÙاتورة',
- 'Cannot post payment for a closed period!' => 'لا يمكن تسجيل المدÙوعات Ù„Ùترة مغلقة',
- 'Cannot post transaction for a closed period!' => 'لا يمكن تسجيل الحركة Ù„Ùترة مغلقة',
- 'Cannot post transaction!' => 'لا يمكن تسجيل الحركة',
- 'Cash' => 'النقدية',
- 'Cc' => 'نسخة اخرى',
- 'Change' => 'تغيير',
- 'Check' => 'شيك',
- 'City' => 'مدينة',
- 'Closed' => 'مغلق',
- 'Company Name' => 'اسم الشركة',
- 'Compare to' => 'مقارنة ',
- 'Confirm!' => 'تاكيد',
- 'Contact' => 'شخص الاتصال',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Country' => 'دولة',
- 'Credit' => 'دائن',
- 'Credit Limit' => 'حد الائتمان',
- 'Curr' => 'عملة',
- 'Currency' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Customer Number' => 'رقم العميل',
- 'Customer missing!' => 'عميل غير موجود',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Date Paid' => 'تاريخ الدÙع',
- 'Debit' => 'مدين',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Decimalplaces' => 'علامات عشرية',
- 'Delete' => 'الغاء',
- 'Delivery Date' => 'تاريخ الوصول',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Detail' => 'تÙصيلى',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'Due Date missing!' => 'تاريخ الاستحقاق غير موجود',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Edit POS Invoice' => 'تعديل Ùاتورة أمر الشراء',
- 'Edit Sales Invoice' => 'تعديل Ùاتورة مبيعات',
- 'Exch' => 'سعر الصرÙ',
- 'Exchange Rate' => 'سعر الصرÙ',
- 'Exchange rate for payment missing!' => 'سعر الصر٠للمدÙوعات غير موجود',
- 'Exchange rate missing!' => 'سعر الصر٠غير موجود',
- 'Extended' => 'اجمالى',
- 'Fax' => 'الÙاكس',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Group' => 'مجموعة',
- 'Group Items' => 'مجموعة الوحدات',
- 'Heading' => 'عنوان',
- 'ID' => 'البطاقة الشخصية',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Include Exchange Rate Difference' => 'اظهار تغيير سعر العملة',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Income Statement' => 'قائمة الدخل',
- 'Internal Notes' => 'ملاحظات داخلية',
- 'Invoice' => 'Ùاتورة',
- 'Invoice Date' => 'تاريخ الÙاتورة',
- 'Invoice Date missing!' => 'تاريخ الÙاتورة غير موجود',
- 'Invoice Number' => 'رقم الÙاتورة',
- 'Invoice Number missing!' => 'رقم الÙاتورة غير موجود',
- 'Invoice deleted!' => 'الغيت القاتورة',
- 'Invoice posted!' => 'سجلت الÙاتورة',
- 'Item not on file!' => 'الوحدة غير موجودة ÙÙŠ الملÙ',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Language' => 'اللغة',
- 'Manager' => 'مدير',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Message' => 'رسالة',
- 'Method' => 'طريقة',
- 'N/A' => 'غير موجود',
- 'No.' => 'رقم',
- 'Non-taxable Purchases' => 'المبيعات المعÙاة من الضرائب',
- 'Non-taxable Sales' => 'المبيعات المعÙاة من الضرائب',
- 'Notes' => 'ملاحظات',
- 'Nothing selected!' => 'لم يتم الاختيار',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Number missing in Row' => 'رقم غير موجود ÙÙŠ الصÙ',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Open' => 'Ùتح',
- 'Order' => 'امر',
- 'Order Date missing!' => 'تاريخ الامر غير موجود',
- 'Order Number' => 'رقم الامر',
- 'Order Number missing!' => 'رقم الامر غير موجود',
- 'Packing List' => 'قائمة تعبئة',
- 'Packing List Date missing!' => 'تاريخ بوليصة الشحن غير موجود',
- 'Packing List Number missing!' => 'رقم بوليصة الشحن غير موجود',
- 'Paid' => 'المدÙوع',
- 'Part' => 'جزء',
- 'Payment date missing!' => 'تاريخ الدÙع غير موجود',
- 'Payments' => 'المدÙوعات',
- 'Phone' => 'تليÙون',
- 'Post' => 'تسجيل',
- 'Post as new' => 'سجل كجديد',
- 'Posted!' => 'سجل',
- 'Price' => 'سعر',
- 'Print' => 'طباعة',
- 'Project' => 'مشروع',
- 'Project Number' => 'رقم المشروع',
- 'Project Transactions' => 'حركات المشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Purchase Order' => 'امر شراء',
- 'Qty' => 'الكمية',
- 'Quotation' => 'عروض اسعار للعملاء',
- 'Receipt' => 'الوارد',
- 'Receipts' => 'الواردات',
- 'Record in' => 'ÙÙŠ السجل',
- 'Remaining' => 'متبقى',
- 'Report for' => 'تقرير لاجل',
- 'Required by' => 'مطلوب من قبل',
- 'Sales Order' => 'امر بيع',
- 'Salesperson' => 'مندوب مبيعات',
- 'Screen' => 'الشاشة',
- 'Select all' => 'اختر الكل',
- 'Select from one of the items below' => 'اختر وحدة من الوحدات',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Service' => 'خدمة',
- 'Ship' => 'شحن صادر',
- 'Ship to' => 'شحن الى',
- 'Ship via' => 'شحن من خلال',
- 'Shipping Address' => 'عنوان الشحن',
- 'Shipping Point' => 'نقطة الشحن',
- 'Source' => 'مصدر',
- 'Standard' => 'اساس',
- 'State/Province' => 'محاÙظة',
- 'Statement' => 'كش٠حساب',
- 'Statement sent to' => 'كش٠حساب مرسل الى',
- 'Statements sent to printer!' => 'كش٠حساب مرسل الى الطابعة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Summary' => 'ملخص',
- 'Tax' => 'ضريبة',
- 'Tax Included' => 'الضريبة المضاÙØ©',
- 'Tax collected' => 'الضريبة المجمعة',
- 'Tax paid' => 'الضريبة المدÙوعة',
- 'Till' => 'إلى',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Transaction deleted!' => 'الغيت الحركة',
- 'Transaction posted!' => 'سجلت الحركة',
- 'Trial Balance' => 'ميزان المراجعة',
- 'Unit' => 'وحدة',
- 'Update' => 'تعديل',
- 'Vendor' => 'المورد',
- 'Vendor Number' => 'رقم المورد',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'What type of item is this?' => 'ما نوع هذة الوحدة؟',
- 'Work Order' => 'امر شغل',
- 'Yes' => 'نعم',
- 'as at' => 'من',
- 'ea' => 'قطعة',
- 'for Period' => 'للÙترة',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'حركة_حساب_عميل' => 'ar_transaction',
- 'تابع' => 'continue',
- 'الغاء' => 'delete',
- 'بريد_الكتروني' => 'e_mail',
- 'تسجيل' => 'post',
- 'سجل_كجديد' => 'post_as_new',
- 'طباعة' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'امر_بيع' => 'sales_order',
- 'اختر_الكل' => 'select_all',
- 'شحن_الى' => 'ship_to',
- 'تعديل' => 'update',
- 'نعم' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/pw b/sql-ledger/locale/eg/pw
deleted file mode 100644
index 02c57e1..0000000
--- a/sql-ledger/locale/eg/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'تابع',
- 'Password' => 'كلمة السر',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'تابع' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/rc b/sql-ledger/locale/eg/rc
deleted file mode 100644
index 80b8add..0000000
--- a/sql-ledger/locale/eg/rc
+++ /dev/null
@@ -1,73 +0,0 @@
-$self{texts} = {
- 'Account' => 'حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Balance' => 'رصيد',
- 'Beginning Balance' => 'بداية الميزانية',
- 'Cleared' => 'مغلق',
- 'Continue' => 'تابع',
- 'Current' => 'الحالي',
- 'Date' => 'التاريخ',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Decrease' => 'تناقص',
- 'Deposit' => 'إيداع',
- 'Description' => 'وصÙ',
- 'Detail' => 'تÙصيلى',
- 'Difference' => 'اختلاÙات',
- 'Done' => 'Ù†ÙØ°',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Include Exchange Rate Difference' => 'اظهار تغيير سعر العملة',
- 'Increase' => 'زيادة',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Outstanding' => 'ارصدة',
- 'Payment' => 'الدÙع النقدى',
- 'Reconciliation' => 'تسويات',
- 'Reconciliation Report' => 'تقرير التسويات',
- 'Select all' => 'اختر الكل',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Source' => 'مصدر',
- 'Statement Balance' => 'رصيد كش٠حساب',
- 'Summary' => 'ملخص',
- 'To' => 'إلى',
- 'Update' => 'تعديل',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'تابع' => 'continue',
- 'Ù†ÙØ°' => 'done',
- 'اختر_الكل' => 'select_all',
- 'تعديل' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/eg/rp b/sql-ledger/locale/eg/rp
deleted file mode 100644
index 013fbc9..0000000
--- a/sql-ledger/locale/eg/rp
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'كش٠حساب موردين',
- 'AR Aging' => 'كشوÙات حسابات العملاء',
- 'Account' => 'حساب',
- 'Account Number' => 'رقم حساب',
- 'Accounting Menu' => 'قائمة الحسابات',
- 'Accounts' => 'حسابات',
- 'Accrual' => 'المجمعة',
- 'Address' => 'العنوان',
- 'All Accounts' => 'كل الحسابات',
- 'Amount' => 'الكمية',
- 'Apr' => 'ابريل',
- 'April' => 'ابريل',
- 'Attachment' => 'مرÙقات',
- 'Aug' => 'اغسطس',
- 'August' => 'اغسطس',
- 'Balance' => 'رصيد',
- 'Balance Sheet' => 'الميزانية',
- 'Bcc' => 'نسخة غير مرئية',
- 'Cash' => 'النقدية',
- 'Cc' => 'نسخة اخرى',
- 'Compare to' => 'مقارنة ',
- 'Continue' => 'تابع',
- 'Copies' => 'نسخ',
- 'Credit' => 'دائن',
- 'Curr' => 'عملة',
- 'Current' => 'الحالي',
- 'Customer' => 'العميل',
- 'Customer not on file!' => ' عميل غير موجود ÙÙŠ الملÙ',
- 'Date' => 'التاريخ',
- 'Debit' => 'مدين',
- 'Dec' => 'ديسمبر',
- 'December' => 'ديسمبر',
- 'Decimalplaces' => 'علامات عشرية',
- 'Department' => 'قسم',
- 'Description' => 'وصÙ',
- 'Detail' => 'تÙصيلى',
- 'Due Date' => 'تاريخ الاستحقاق',
- 'E-mail' => 'بريد الكتروني',
- 'E-mail address missing!' => 'عنوان البريد الالكتروني غير موجود',
- 'Feb' => 'Ùبراير',
- 'February' => 'Ùبراير',
- 'From' => 'من',
- 'Heading' => 'عنوان',
- 'ID' => 'البطاقة الشخصية',
- 'In-line' => 'ÙÙŠ الصÙ',
- 'Include Exchange Rate Difference' => 'اظهار تغيير سعر العملة',
- 'Include in Report' => 'ارÙÙ‚ ÙÙŠ التقرير ------',
- 'Income Statement' => 'قائمة الدخل',
- 'Invoice' => 'Ùاتورة',
- 'Jan' => 'يناير',
- 'January' => 'يناير',
- 'Jul' => 'يولية',
- 'July' => 'يولية',
- 'Jun' => 'يونية',
- 'June' => 'يونية',
- 'Language' => 'اللغة',
- 'Mar' => 'مارس',
- 'March' => 'مارس',
- 'May' => 'مايو',
- 'May ' => 'مايو',
- 'Memo' => 'ملاحظات',
- 'Message' => 'رسالة',
- 'Method' => 'طريقة',
- 'N/A' => 'غير موجود',
- 'Non-taxable Purchases' => 'المبيعات المعÙاة من الضرائب',
- 'Non-taxable Sales' => 'المبيعات المعÙاة من الضرائب',
- 'Nothing selected!' => 'لم يتم الاختيار',
- 'Nov' => 'نوÙمبر',
- 'November' => 'نوÙمبر',
- 'Number' => 'الرقم',
- 'Oct' => 'اكتوبر',
- 'October' => 'اكتوبر',
- 'Order' => 'امر',
- 'Payments' => 'المدÙوعات',
- 'Print' => 'طباعة',
- 'Project' => 'مشروع',
- 'Project Number' => 'رقم المشروع',
- 'Project Transactions' => 'حركات المشروع',
- 'Project not on file!' => 'المشروع ليس ÙÙ‰ الملÙات',
- 'Receipts' => 'الواردات',
- 'Report for' => 'تقرير لاجل',
- 'Salesperson' => 'مندوب مبيعات',
- 'Screen' => 'الشاشة',
- 'Select all' => 'اختر الكل',
- 'Select from one of the names below' => 'اختر اسم من الاسماء',
- 'Select from one of the projects below' => 'اختر مشروع من المشروعات التالية',
- 'Sep' => 'سبتمبر',
- 'September' => 'سبتمبر',
- 'Source' => 'مصدر',
- 'Standard' => 'اساس',
- 'Statement' => 'كش٠حساب',
- 'Statement sent to' => 'كش٠حساب مرسل الى',
- 'Statements sent to printer!' => 'كش٠حساب مرسل الى الطابعة',
- 'Subject' => 'موضوع',
- 'Subtotal' => 'اجمالى',
- 'Summary' => 'ملخص',
- 'Tax' => 'ضريبة',
- 'Tax collected' => 'الضريبة المجمعة',
- 'Tax paid' => 'الضريبة المدÙوعة',
- 'Till' => 'إلى',
- 'To' => 'إلى',
- 'Total' => 'مجموع',
- 'Trial Balance' => 'ميزان المراجعة',
- 'Vendor' => 'المورد',
- 'Vendor not on file!' => 'مورد غير موجود ÙÙŠ الملÙ',
- 'as at' => 'من',
- 'for Period' => 'للÙترة',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'تابع' => 'continue',
- 'بريد_الكتروني' => 'e_mail',
- 'طباعة' => 'print',
- 'اختر_الكل' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/COPYING b/sql-ledger/locale/en_GB/COPYING
deleted file mode 100644
index ceaa769..0000000
--- a/sql-ledger/locale/en_GB/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# British English texts:
-#
-# Author:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/en_GB/LANGUAGE b/sql-ledger/locale/en_GB/LANGUAGE
deleted file mode 100644
index 8db5039..0000000
--- a/sql-ledger/locale/en_GB/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-English (British)
diff --git a/sql-ledger/locale/en_GB/admin b/sql-ledger/locale/en_GB/admin
deleted file mode 100644
index b6fe06e..0000000
--- a/sql-ledger/locale/en_GB/admin
+++ /dev/null
@@ -1,113 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Access Control',
- 'Accounting' => 'Accounting',
- 'Add User' => 'Add User',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Change Admin Password',
- 'Change Password' => 'Change Password',
- 'Click on login name to edit!' => 'Click on login name to edit!',
- 'Connect to' => 'Connect to',
- 'Create Chart of Accounts' => 'Create Chart of Accounts',
- 'Create Dataset' => 'Create Dataset',
- 'DBI not installed!' => 'DBI not installed!',
- 'Database' => 'Database',
- 'Database Administration' => 'Database Administration',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database User missing!' => 'Database User missing!',
- 'Dataset missing!' => 'Dataset missing!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Delete Dataset' => 'Delete Dataset',
- 'Directory' => 'Directory',
- 'Driver' => 'Driver',
- 'Edit User' => 'Edit User',
- 'Existing Datasets' => 'Existing Datasets',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Hostname missing!',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Leave host and port field empty unless you want to make a remote connection.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login name missing!' => 'Login name missing!',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'New Templates' => 'New Templates',
- 'No Database Drivers available!' => 'No Database Drivers available!',
- 'No Dataset selected!' => 'No Dataset selected!',
- 'Nothing to delete!' => 'Nothing to delete!',
- 'Oracle Database Administration' => 'Oracle Database Administration',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Pg Database Administration',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Port' => 'Port',
- 'Port missing!' => 'Port missing!',
- 'Setup Templates' => 'Setup Templates',
- 'Templates' => 'Templates',
- 'The following Datasets are not in use and can be deleted' => 'The following Datasets are not in use and can be deleted',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Update Dataset',
- 'Use Templates' => 'Use Templates',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'You must enter a host and port for local and remote connections!' => 'You must enter a host and port for local and remote connections!',
- 'does not exist' => 'does not exist',
- 'is already a member!' => 'is already a member!',
- 'successfully created!' => 'successfully created!',
- 'successfully deleted!' => 'successfully deleted!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'add_user' => 'add_user',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/all b/sql-ledger/locale/en_GB/all
deleted file mode 100644
index 80e09f3..0000000
--- a/sql-ledger/locale/en_GB/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Purchases',
- 'AP Aging' => 'Creditor Aging',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Purchase Transaction',
- 'AP Transactions' => 'Purchase Transactions',
- 'AR' => 'Sales',
- 'AR Aging' => 'Debtor Aging',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Sales Transaction',
- 'AR Transactions' => 'Sales Transactions',
- 'About' => '',
- 'Above' => '',
- 'Access Control' => 'Access Control',
- 'Account' => '',
- 'Account Number' => '',
- 'Account Number missing!' => '',
- 'Account Type' => '',
- 'Account Type missing!' => '',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Accounting',
- 'Accounting Menu' => '',
- 'Accounts' => '',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => '',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => '',
- 'Add Assembly' => '',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Add Debtor',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => '',
- 'Add General Ledger Transaction' => '',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => '',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => '',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => '',
- 'Add Service' => '',
- 'Add Transaction' => '',
- 'Add User' => 'Add User',
- 'Add Vendor' => 'Add Creditor',
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Add Warehouse' => '',
- 'Address' => '',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => '',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => '',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => '',
- 'April' => '',
- 'Are you sure you want to delete Invoice Number' => '',
- 'Are you sure you want to delete Order Number' => '',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => '',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => '',
- 'Attachment' => '',
- 'Audit Control' => '',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => '',
- 'August' => '',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => '',
- 'Backup sent to' => '',
- 'Balance' => '',
- 'Balance Sheet' => '',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => '',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => '',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => '',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => '',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => 'Cannot delete debtor!',
- 'Cannot delete default account!' => '',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => 'Cannot delete creditor',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => '',
- 'Cannot post transaction for a closed period!' => '',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Change Admin Password',
- 'Change Password' => 'Change Password',
- 'Character Set' => '',
- 'Chart of Accounts' => '',
- 'Check' => 'Cheque',
- 'Check Inventory' => '',
- 'Checks' => 'Cheques',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Click on login name to edit!',
- 'Close Books up to' => '',
- 'Closed' => '',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => '',
- 'Company Name' => '',
- 'Compare to' => '',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => '',
- 'Connect to' => 'Connect to',
- 'Contact' => '',
- 'Continue' => '',
- 'Contra' => '',
- 'Copies' => '',
- 'Copy to COA' => '',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Create Chart of Accounts',
- 'Create Dataset' => 'Create Dataset',
- 'Credit' => '',
- 'Credit Limit' => '',
- 'Curr' => '',
- 'Currency' => '',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Debtor',
- 'Customer History' => '',
- 'Customer Number' => 'Debtor Number',
- 'Customer deleted!' => 'Debtor deleted!',
- 'Customer missing!' => 'Debtor missing!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Customer saved!' => 'Debtor saved!',
- 'Customers' => 'Debtors',
- 'DBI not installed!' => 'DBI not installed!',
- 'DOB' => '',
- 'Database' => 'Database',
- 'Database Administration' => 'Database Administration',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database Host' => '',
- 'Database User missing!' => 'Database User missing!',
- 'Dataset' => '',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Dataset missing!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => '',
- 'Date Format' => '',
- 'Date Paid' => '',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => '',
- 'Dec' => '',
- 'December' => '',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => '',
- 'Delete Account' => '',
- 'Delete Dataset' => 'Delete Dataset',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => '',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'Directory',
- 'Discount' => '',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => '',
- 'Due Date' => '',
- 'Due Date missing!' => '',
- 'E-mail' => '',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => '',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => '',
- 'Edit Assembly' => '',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Edit Debtor',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => '',
- 'Edit General Ledger Transaction' => '',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => '',
- 'Edit Preferences for' => '',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => '',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => '',
- 'Edit Service' => '',
- 'Edit Template' => '',
- 'Edit User' => 'Edit User',
- 'Edit Vendor' => 'Edit Creditor',
- 'Edit Vendor Invoice' => 'Edit Creditor Invoice',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => '',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '',
- 'Equity' => '',
- 'Excempt age <' => '',
- 'Exch' => '',
- 'Exchange Rate' => '',
- 'Exchange rate for payment missing!' => '',
- 'Exchange rate missing!' => '',
- 'Existing Datasets' => 'Existing Datasets',
- 'Expense' => '',
- 'Expense Account' => '',
- 'Expense/Asset' => '',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => '',
- 'Feb' => '',
- 'February' => '',
- 'Foreign Exchange Gain' => '',
- 'Foreign Exchange Loss' => '',
- 'From' => '',
- 'GIFI' => '',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => '',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => '',
- 'Goods & Services' => '',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => '',
- 'Heading' => '',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Hostname missing!',
- 'IBAN' => '',
- 'ID' => '',
- 'Image' => '',
- 'In-line' => '',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => '',
- 'Include in drop-down menus' => '',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Include this account on debtor/creditor forms to set debtor/creditor taxable?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => '',
- 'Incorrect Dataset version!' => '',
- 'Incorrect Password!' => '',
- 'Increase' => '',
- 'Individual Items' => '',
- 'Internal Notes' => '',
- 'Inventory' => '',
- 'Inventory Account' => '',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => '',
- 'Invoice Date' => '',
- 'Invoice Date missing!' => '',
- 'Invoice Number' => '',
- 'Invoice Number missing!' => '',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => '',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => '',
- 'Items' => '',
- 'Jan' => '',
- 'January' => '',
- 'Jul' => '',
- 'July' => '',
- 'Jun' => '',
- 'June' => '',
- 'LaTeX Templates' => '',
- 'Labor/Overhead' => '',
- 'Language' => '',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => '',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Leave host and port field empty unless you want to make a remote connection.',
- 'Liability' => '',
- 'Licensed to' => '',
- 'Line Total' => '',
- 'Link' => '',
- 'Link Accounts' => '',
- 'List' => '',
- 'List Accounts' => '',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => '',
- 'List Languages' => '',
- 'List Price' => '',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => '',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => '',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => '',
- 'Make' => '',
- 'Manager' => '',
- 'Mar' => '',
- 'March' => '',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => '',
- 'May ' => '',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => '',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => '',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '',
- 'Name' => '',
- 'Name missing!' => '',
- 'New Templates' => 'New Templates',
- 'No' => '',
- 'No Database Drivers available!' => 'No Database Drivers available!',
- 'No Dataset selected!' => 'No Dataset selected!',
- 'No email address for' => '',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => '',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'Nothing to delete!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => '',
- 'November' => '',
- 'Number' => '',
- 'Number Format' => '',
- 'Number missing in Row' => '',
- 'O' => '',
- 'Obsolete' => '',
- 'Oct' => '',
- 'October' => '',
- 'On Hand' => '',
- 'Open' => '',
- 'Oracle Database Administration' => 'Oracle Database Administration',
- 'Order' => '',
- 'Order Date' => '',
- 'Order Date missing!' => '',
- 'Order Entry' => '',
- 'Order Number' => '',
- 'Order Number missing!' => '',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => '',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => '',
- 'Packing List Date missing!' => '',
- 'Packing List Number missing!' => '',
- 'Packing Lists' => '',
- 'Paid' => '',
- 'Part' => '',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => '',
- 'Parts Inventory' => '',
- 'Password' => '',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => '',
- 'Payment' => '',
- 'Payment date missing!' => '',
- 'Payment posted!' => '',
- 'Payments' => '',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Database Administration',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => '',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port missing!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => '',
- 'Preferences saved!' => '',
- 'Prepayment' => '',
- 'Price' => '',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => '',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => '',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => '',
- 'Qty' => '',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => '',
- 'Rate' => '',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => '',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => '',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => '',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => '',
- 'Reports' => '',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => '',
- 'Retained Earnings' => '',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => '',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => '',
- 'Sales Order Number' => '',
- 'Sales Orders' => '',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => '',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => '',
- 'Screen' => '',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => '',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '',
- 'Send by E-Mail' => '',
- 'Sep' => '',
- 'September' => '',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => '',
- 'Service Items' => '',
- 'Services' => '',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Setup Templates',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => '',
- 'Signature' => '',
- 'Source' => '',
- 'Spoolfile' => '',
- 'Standard' => '',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => '',
- 'Stylesheet' => '',
- 'Sub-contract GIFI' => '',
- 'Subject' => '',
- 'Subtotal' => '',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => '',
- 'System Defaults' => '',
- 'Tax' => '',
- 'Tax Accounts' => '',
- 'Tax Included' => '',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => '',
- 'Template saved!' => '',
- 'Templates' => 'Templates',
- 'Terms' => '',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'The following Datasets are not in use and can be deleted',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!',
- 'Till' => '',
- 'To' => '',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.',
- 'Top Level' => '',
- 'Total' => '',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => '',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => '',
- 'Transaction reversal enforced up to' => '',
- 'Transactions' => '',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => '',
- 'Type of Business' => '',
- 'Unit' => '',
- 'Unit of measure' => '',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Update Dataset',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Use Templates',
- 'User' => '',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Creditor',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor deleted!' => 'Creditor deleted!',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
- 'Vendor saved!' => 'Creditor saved!',
- 'Vendors' => 'Creditors',
- 'Version' => '',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => '',
- 'Weight Unit' => '',
- 'What type of item is this?' => '',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => '',
- 'You are logged out' => '',
- 'You did not enter a name!' => '',
- 'You must enter a host and port for local and remote connections!' => 'You must enter a host and port for local and remote connections!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => '',
- 'does not exist' => 'does not exist',
- 'done' => '',
- 'ea' => '',
- 'for Period' => '',
- 'is already a member!' => 'is already a member!',
- 'is not a member!' => '',
- 'localhost' => '',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'successfully created!',
- 'successfully deleted!' => 'successfully deleted!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/am b/sql-ledger/locale/en_GB/am
deleted file mode 100644
index 5a5cadc..0000000
--- a/sql-ledger/locale/en_GB/am
+++ /dev/null
@@ -1,94 +0,0 @@
-$self{texts} = {
- 'AP' => 'Purchases',
- 'AR' => 'Sales',
- 'Customer Number' => 'Debtor Number',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Include this account on debtor/creditor forms to set debtor/creditor taxable?',
- 'Vendor Number' => 'Creditor Number',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'delete' => 'delete',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ap b/sql-ledger/locale/en_GB/ap
deleted file mode 100644
index 15230d9..0000000
--- a/sql-ledger/locale/en_GB/ap
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Purchase Transaction',
- 'AP Transactions' => 'Purchase Transactions',
- 'Check' => 'Cheque',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'purchase_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ar b/sql-ledger/locale/en_GB/ar
deleted file mode 100644
index 998695e..0000000
--- a/sql-ledger/locale/en_GB/ar
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Sales Transaction',
- 'AR Transactions' => 'Sales Transactions',
- 'Check' => 'Cheque',
- 'Customer' => 'Debtor',
- 'Customer missing!' => 'Debtor missing!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'sales_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/arap b/sql-ledger/locale/en_GB/arap
deleted file mode 100644
index df15acb..0000000
--- a/sql-ledger/locale/en_GB/arap
+++ /dev/null
@@ -1,23 +0,0 @@
-$self{texts} = {
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continue' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/arapprn b/sql-ledger/locale/en_GB/arapprn
deleted file mode 100644
index c7a734c..0000000
--- a/sql-ledger/locale/en_GB/arapprn
+++ /dev/null
@@ -1,19 +0,0 @@
-$self{texts} = {
- 'Check' => 'Cheque',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continue' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/bp b/sql-ledger/locale/en_GB/bp
deleted file mode 100644
index 80869fb..0000000
--- a/sql-ledger/locale/en_GB/bp
+++ /dev/null
@@ -1,26 +0,0 @@
-$self{texts} = {
- 'Checks' => 'Cheques',
- 'Customer' => 'Debtor',
- 'Vendor' => 'Creditor',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continue' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ca b/sql-ledger/locale/en_GB/ca
deleted file mode 100644
index a74fd6c..0000000
--- a/sql-ledger/locale/en_GB/ca
+++ /dev/null
@@ -1,12 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'list_transactions' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/cp b/sql-ledger/locale/en_GB/cp
deleted file mode 100644
index adb3ddc..0000000
--- a/sql-ledger/locale/en_GB/cp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'AP' => 'Purchases',
- 'AR' => 'Sales',
- 'Customer' => 'Debtor',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continue' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ct b/sql-ledger/locale/en_GB/ct
deleted file mode 100644
index 351e1ac..0000000
--- a/sql-ledger/locale/en_GB/ct
+++ /dev/null
@@ -1,81 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Purchase Transaction',
- 'AP Transactions' => 'Purchase Transactions',
- 'AR Transaction' => 'Sales Transaction',
- 'AR Transactions' => 'Sales Transactions',
- 'Add Customer' => 'Add Debtor',
- 'Add Vendor' => 'Add Creditor',
- 'Cannot delete customer!' => 'Cannot delete debtor!',
- 'Cannot delete vendor!' => 'Cannot delete creditor',
- 'Customer Number' => 'Debtor Number',
- 'Customer deleted!' => 'Debtor deleted!',
- 'Customer saved!' => 'Debtor saved!',
- 'Customers' => 'Debtors',
- 'Edit Customer' => 'Edit Debtor',
- 'Edit Vendor' => 'Edit Creditor',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor deleted!' => 'Creditor deleted!',
- 'Vendor saved!' => 'Creditor saved!',
- 'Vendors' => 'Creditors',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'purchase_transaction' => 'ap_transaction',
- 'sales_transaction' => 'ar_transaction',
- 'add_debtor' => 'add_customer',
- 'add_creditor' => 'add_vendor',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'pricelist' => 'pricelist',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'creditor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/gl b/sql-ledger/locale/en_GB/gl
deleted file mode 100644
index bf5c563..0000000
--- a/sql-ledger/locale/en_GB/gl
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Purchase Transaction',
- 'AR Transaction' => 'Sales Transaction',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'purchase_transaction' => 'ap_transaction',
- 'sales_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/hr b/sql-ledger/locale/en_GB/hr
deleted file mode 100644
index e24f22b..0000000
--- a/sql-ledger/locale/en_GB/hr
+++ /dev/null
@@ -1,45 +0,0 @@
-$self{texts} = {
- 'AP' => 'Purchases',
- 'Administrator' => 'Administrator',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ic b/sql-ledger/locale/en_GB/ic
deleted file mode 100644
index 387caa8..0000000
--- a/sql-ledger/locale/en_GB/ic
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Customer' => 'Debtor',
- 'Customer Number' => 'Debtor Number',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'add_assembly' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'edit_assembly' => 'edit_assembly',
- 'edit_part' => 'edit_part',
- 'edit_service' => 'edit_service',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/io b/sql-ledger/locale/en_GB/io
deleted file mode 100644
index 606f687..0000000
--- a/sql-ledger/locale/en_GB/io
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Customer Number' => 'Debtor Number',
- 'Vendor Number' => 'Creditor Number',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continue' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ir b/sql-ledger/locale/en_GB/ir
deleted file mode 100644
index 0500910..0000000
--- a/sql-ledger/locale/en_GB/ir
+++ /dev/null
@@ -1,72 +0,0 @@
-$self{texts} = {
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Customer Number' => 'Debtor Number',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Edit Vendor Invoice' => 'Edit Creditor Invoice',
- 'Vendor' => 'Creditor',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'purchase_order' => 'purchase_order',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/is b/sql-ledger/locale/en_GB/is
deleted file mode 100644
index cef203b..0000000
--- a/sql-ledger/locale/en_GB/is
+++ /dev/null
@@ -1,76 +0,0 @@
-$self{texts} = {
- 'Customer' => 'Debtor',
- 'Customer Number' => 'Debtor Number',
- 'Customer missing!' => 'Debtor missing!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_order' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/login b/sql-ledger/locale/en_GB/login
deleted file mode 100644
index 462788f..0000000
--- a/sql-ledger/locale/en_GB/login
+++ /dev/null
@@ -1,12 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/menu b/sql-ledger/locale/en_GB/menu
deleted file mode 100644
index e22491e..0000000
--- a/sql-ledger/locale/en_GB/menu
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'AP' => 'Purchases',
- 'AP Aging' => 'Creditor Aging',
- 'AP Transaction' => 'Purchase Transaction',
- 'AR' => 'Sales',
- 'AR Aging' => 'Debtor Aging',
- 'AR Transaction' => 'Sales Transaction',
- 'Add Customer' => 'Add Debtor',
- 'Add Vendor' => 'Add Creditor',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Customers' => 'Debtors',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendors' => 'Creditors',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/oe b/sql-ledger/locale/en_GB/oe
deleted file mode 100644
index 8dbf58a..0000000
--- a/sql-ledger/locale/en_GB/oe
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Customer' => 'Debtor',
- 'Customer Number' => 'Debtor Number',
- 'Customer missing!' => 'Debtor missing!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'creditor_invoice' => 'vendor_invoice',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/pe b/sql-ledger/locale/en_GB/pe
deleted file mode 100644
index 7c8e75a..0000000
--- a/sql-ledger/locale/en_GB/pe
+++ /dev/null
@@ -1,42 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'save' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/pos b/sql-ledger/locale/en_GB/pos
deleted file mode 100644
index 7be2aba..0000000
--- a/sql-ledger/locale/en_GB/pos
+++ /dev/null
@@ -1,26 +0,0 @@
-$self{texts} = {
- 'Customer' => 'Debtor',
- 'Customer missing!' => 'Debtor missing!',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/ps b/sql-ledger/locale/en_GB/ps
deleted file mode 100644
index ff92328..0000000
--- a/sql-ledger/locale/en_GB/ps
+++ /dev/null
@@ -1,112 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Creditor Aging',
- 'AR Aging' => 'Debtor Aging',
- 'AR Transaction' => 'Sales Transaction',
- 'AR Transactions' => 'Sales Transactions',
- 'Check' => 'Cheque',
- 'Customer' => 'Debtor',
- 'Customer Number' => 'Debtor Number',
- 'Customer missing!' => 'Debtor missing!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'sales_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'sales_order' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/pw b/sql-ledger/locale/en_GB/pw
deleted file mode 100644
index 4a0b2b5..0000000
--- a/sql-ledger/locale/en_GB/pw
+++ /dev/null
@@ -1,9 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continue' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/rc b/sql-ledger/locale/en_GB/rc
deleted file mode 100644
index a363887..0000000
--- a/sql-ledger/locale/en_GB/rc
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continue' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/en_GB/rp b/sql-ledger/locale/en_GB/rp
deleted file mode 100644
index b50f48c..0000000
--- a/sql-ledger/locale/en_GB/rp
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Creditor Aging',
- 'AR Aging' => 'Debtor Aging',
- 'Customer' => 'Debtor',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Vendor' => 'Creditor',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continue' => 'continue',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/COPYING b/sql-ledger/locale/es_iso/COPYING
deleted file mode 100644
index bf7ca4b..0000000
--- a/sql-ledger/locale/es_iso/COPYING
+++ /dev/null
@@ -1,26 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Spanish texts:
-#
-# Author: Maria Gabriela Fong <mgfong@maga.tzo.org>
-# John Stoddart <jstypo@imagencolor.com.ve>
-# Federico Montesino Pouzols <fedemp@arrok.com>
-# Tomás Pereira <topec@percar.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/es_iso/LANGUAGE b/sql-ledger/locale/es_iso/LANGUAGE
deleted file mode 100644
index 1b864b9..0000000
--- a/sql-ledger/locale/es_iso/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish ISO
diff --git a/sql-ledger/locale/es_iso/Num2text b/sql-ledger/locale/es_iso/Num2text
deleted file mode 100644
index c903224..0000000
--- a/sql-ledger/locale/es_iso/Num2text
+++ /dev/null
@@ -1,211 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Language: Spanish
-# Contributors: John Christian Stoddart
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'cero',
- 1 => 'un',
- '1o' => 'uno',
- 2 => 'dos',
- 3 => 'tres',
- 4 => 'cuatro',
- 5 => 'cinco',
- 6 => 'seis',
- 7 => 'siete',
- 8 => 'ocho',
- 9 => 'nueve',
- 10 => 'diez',
- 11 => 'once',
- 12 => 'doce',
- 13 => 'trece',
- 14 => 'catorce',
- 15 => 'quince',
- 16 => 'dieciséis',
- 17 => 'diecisiete',
- 18 => 'dieciocho',
- 19 => 'diecinueve',
- 20 => 'veinte',
- 21 => 'veintiún',
- '21o' => 'veintiuno',
- 22 => 'veintidós',
- 23 => 'veintitrés',
- 24 => 'veinticuatro',
- 25 => 'veinticinco',
- 26 => 'veintiséis',
- 27 => 'veintisiete',
- 28 => 'veintiocho',
- 29 => 'veintinueve',
- 30 => 'treinta',
- 40 => 'cuarenta',
- 50 => 'cincuenta',
- 60 => 'sesenta',
- 70 => 'setenta',
- 80 => 'ochenta',
- 90 => 'noventa',
- 500 => 'quinientos',
- 700 => 'setecientos',
- 900 => 'novecientos',
- 10**2 => 'ciento',
- 10**3 => 'mil',
- 10**6 => 'millón',
- 10**12 => 'billón',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my $stripun = 0;
- my @a = ();
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- # special case for 1000
- if ($numblock[1] eq '1' && $numblock[0] gt '000') {
- # remove first array element from textnumber
- $stripun = 1;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- if ($num[0] == 1) {
- push @textnumber, $self->{numbername}{10**2};
- } else {
- # special case for 500, 700, 900
- if (grep /$num[0]/, (5,7,9)) {
- push @textnumber, $self->{numbername}{"${num[0]}00"};
-
- } else {
-
- # the one from hundreds, append cientos
- push @textnumber, $self->{numbername}{$num[0]}.$self->{numbername}{10**2}.'s';
-
- }
- }
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i], $i);
- } elsif ($numblock[$i] > 0) {
- # ones
- $num = $numblock[$i];
- $num .= 'o' if ($num == 1 && $i == 0);
- push @textnumber, $self->{numbername}{$num};
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- if ($numblock[$i] > 1) {
- if ($i == 2 || $i == 4) {
- $a = $self->{numbername}{$num}."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } elsif ($i == 3) {
- $num = 10**($i * 2);
- $a = "$self->{10**3} $self->{numbername}{$num}"."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } else {
- if ($i == 1) {
- push @textnumber, $self->{numbername}{$num};
- } else {
- push @textnumber, $self->{numbername}{$num}.'s';
- }
- }
- } else {
- push @textnumber, $self->{numbername}{$num};
- }
- }
-
- pop @numblock;
-
- }
-
- shift @textnumber if $stripun;
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount, $i) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 30) {
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $amount .= 'o' if ($num[1] == 1 && $i == 0);
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= " y ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/es_iso/admin b/sql-ledger/locale/es_iso/admin
deleted file mode 100644
index bcf52dd..0000000
--- a/sql-ledger/locale/es_iso/admin
+++ /dev/null
@@ -1,141 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Añadir usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Company' => 'Compañía',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date Format' => 'Formato de fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit User' => 'Editar usuario',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'Language' => 'Lenguaje',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Salir',
- 'Manager' => 'Administrador',
- 'Menu Width' => 'Ancho del Menu',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas plantillas',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Number Format' => 'Formato de número',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilo',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'does not exist' => 'no existe',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'localhost' => 'máquina local',
- 'locked!' => 'Bloqueado!',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'añadir_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_base_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_base_de_datos' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'entrar' => 'login',
- 'salir' => 'logout',
- 'administración_de_la_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_la_base_de_datos_postgresql' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'actualizar_base_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/all b/sql-ledger/locale/es_iso/all
deleted file mode 100644
index c16f458..0000000
--- a/sql-ledger/locale/es_iso/all
+++ /dev/null
@@ -1,768 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Cartera de pagos',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR' => 'Cartera de cobros',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'About' => 'Acerca de',
- 'Above' => 'Encima de',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro Auditoría',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Agregar Empresa',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add Customer' => 'Añadir cliente',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Add General Ledger Transaction' => 'Añadir transacción al libro mayor general',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra',
- 'Add Language' => 'Agregar Idioma',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add SIC' => 'Agregar SIC',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir',
- 'Add User' => 'Añadir usuario',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Add Warehouse' => 'Agregar Bodega',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Despues Deducción',
- 'All' => 'Todos',
- 'All Accounts' => 'Todas las Cuentas',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'All Items' => 'Todo',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Amount missing!' => 'Falta suma',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => 'Seguro que quiere borrar la cotización número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Seguro que quieres remover las entradas seleccionadas de la cola?',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Compuesto',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => 'BIC',
- 'BOM' => 'Listado de piezas',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Based on' => 'Basado en',
- 'Batch Printing' => 'Impresión en serie',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Beginning Balance' => 'Balance Inicial',
- 'Below' => 'Debajo',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Bin Lists' => 'Listas Empaque',
- 'Books are open' => 'Los libros están abiertos',
- 'Break' => 'Pausa',
- 'Business' => 'Empresa',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => 'Empresa eliminada!',
- 'Business saved!' => 'Empresa guardada!',
- 'C' => 'C',
- 'COGS' => 'Costo de los artículos',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No puedo borrar cotización!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cannot post Payment!' => 'No puedo guardar pago',
- 'Cannot post Receipt!' => 'No puedo guardar recibo',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Cannot remove files!' => 'No puedo borrar archivos!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => 'No puedo guardar preferencias!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot save quotation!' => 'No puedo guardar cotización!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No puedo crear multiples opciones para',
- 'Cannot set multiple options for Parts Inventory' => 'No puedo crear multiples opciones para Inventario',
- 'Cannot set multiple options for Service Items' => 'No puedo crear multiples opciones para Servicios',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Revisar Inventario',
- 'Checks' => 'Cheques',
- 'City' => 'Ciudad',
- 'Cleared' => 'Borrado',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta código',
- 'Company' => 'Compañía',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar con',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Cost' => 'Costo',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'No pude guardar',
- 'Could not transfer Inventory!' => 'No puedo transferir inventario!',
- 'Country' => 'País',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => 'Fecha recibido',
- 'Date missing!' => '¡Falta la fecha!',
- 'Date received missing!' => 'Faltas datos',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Decrease' => 'Reducir',
- 'Deduct after' => 'Deducir despues de',
- 'Deduction deleted!' => 'Deducción borrado!',
- 'Deduction saved!' => 'Deducción guardado',
- 'Deductions' => 'Deducciones',
- 'Defaults' => 'Preferencias',
- 'Defaults saved!' => 'Guardado!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Department deleted!' => 'Centro de Costos borrado!',
- 'Department saved!' => 'Centro de Costos guardado!',
- 'Departments' => 'Centro de Costos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Descripción Traducción',
- 'Description missing!' => 'Falta Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Hecho',
- 'Drawing' => 'Reintegro',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Business' => 'Editar empresa',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit Description Translations' => 'Editar Descripción Traducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit General Ledger Transaction' => 'Editar transacción del libro mayor general',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra',
- 'Edit Language' => 'Editar Idioma',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar proyecto',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Edit Sales Order' => 'Editar presupuesto',
- 'Edit Service' => 'Editar servicio',
- 'Edit Template' => 'Editar plantilla',
- 'Edit User' => 'Editar usuario',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Edit Vendor Invoice' => 'Editar factura de compra',
- 'Edit Warehouse' => 'Editar Bodega',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado cancela',
- 'Employee saved!' => 'Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador cancela',
- 'Enddate' => 'Fecha final',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'TC',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => '¡Guardado el código GIFI!',
- 'GL Transaction' => 'Transacción en el libro mayor',
- 'General Ledger' => 'Libro mayor general',
- 'Goods & Services' => 'Bienes y servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Group Translations' => 'Traducción Grupos',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Historial',
- 'Home Phone' => 'Teléfono residencia',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Income Statement' => 'Balance de situación',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Increase' => 'Aumentar',
- 'Individual Items' => 'Artículos individuales',
- 'Internal Notes' => 'Notas internas',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Productos/Servicios',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => 'Idioma Borrada!',
- 'Language saved!' => 'Idioma Guardada!',
- 'Languages' => 'Idiomas',
- 'Languages not defined!' => 'Idiomas no configuradas!',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Line Total' => 'Total de la línea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => '',
- 'List Accounts' => 'Listar cuentas',
- 'List Businesses' => 'Mostrar empresas',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Listar código GIFI',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Price' => 'Precio de lista',
- 'List Projects' => 'Mostrar Projectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Transactions' => 'Listar transacciones',
- 'List Warehouses' => 'Mostar bodegas',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Salir',
- 'Make' => 'Marca',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => 'Selección impresa',
- 'Markup' => 'Margen',
- 'Maximum' => 'Maximo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Ancho del Menu',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'Sin respuesta',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'New Templates' => 'Nuevas plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'No.' => 'No.',
- 'Non-taxable' => 'Sin Impuestos',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Información Incompleta',
- 'Nothing outstanding for ' => 'Nada en Cartera para',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Nada para transferir',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Entry' => 'Presupuestos y pedidos',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => 'Pedido procesado',
- 'Order saved!' => 'Pedido guardado',
- 'Orphaned' => 'Huérfano',
- 'Out of balance transaction!' => 'Transacción fuera de Balance!',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'PDF' => 'PDF',
- 'POS' => 'Punto de Venta',
- 'POS Invoice' => 'Factura Punto de Venta',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Packing Lists' => 'Lista de empaque',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número parte',
- 'Partnumber' => '',
- 'Parts' => 'Artículos',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Pagos',
- 'Payment' => 'Pago',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Vencimientos impagados',
- 'Payroll Deduction' => 'Deducciones Nómina',
- 'Period' => '',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Pick Lists' => 'Listas de Empaque',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Prepayment' => 'Prepago',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => 'Grupo Borrado!',
- 'Pricegroup missing!' => 'Falta Grupo!',
- 'Pricegroup saved!' => 'Guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => 'Impreso',
- 'Printer' => 'Impresora',
- 'Printing ... ' => 'Imprimiendo...',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Descripción Traducción del Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => 'No hay esta cantidad disponible en el Inventario!',
- 'Quarter' => '',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => '',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotation deleted!' => 'Cotización borrado',
- 'Quotations' => 'Cotizaciones',
- 'R' => 'R',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQ ' => '',
- 'RFQ Number' => 'Número de Cotización',
- 'RFQs' => 'Cotizaciones solicitados',
- 'ROP' => 'Tope de envio',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa!',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo agregado',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'Cobros',
- 'Receive' => 'Recibir',
- 'Receive Merchandise' => 'Recibir mercancia',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Remaining' => 'Resto',
- 'Remove' => 'Eliminar',
- 'Remove Audit trails up to' => 'Remover Rastro de Auditoría hasta',
- 'Removed spoolfiles!' => 'Archivos eliminados de la cola',
- 'Removing marked entries from queue ...' => 'Removiendo entradas sellecionads de la cola...',
- 'Report for' => 'Informe para',
- 'Reports' => 'Informes',
- 'Request for Quotation' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'Required by' => 'Aceptado el',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'Role' => 'Función',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC borrado!',
- 'SIC saved!' => 'SIC guardado!',
- 'SKU' => 'SKU',
- 'SSN' => '',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Factura de venta',
- 'Sales Order' => 'Presupuesto',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Presupuestos',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en un archivo',
- 'Screen' => 'Pantalla',
- 'Search' => 'Búsqueda',
- 'Select' => 'Seleccionar',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de venta',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Serial Number' => 'Número del Serial',
- 'Service' => 'Servicio',
- 'Service Items' => 'Servicios',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar plantillas',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping' => 'Envio',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Date' => 'Fecha del Envio',
- 'Shipping Date missing!' => 'Falta Fecha del Envio',
- 'Shipping Point' => 'Destino',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => 'Cola de Impresión',
- 'Standard' => 'Estándard',
- 'Standard Industrial Codes' => 'Standard Industrial Codes (Código estandardizado)',
- 'Startdate' => 'Fecha inicial',
- 'State' => '',
- 'State/Province' => 'Departamento',
- 'Statement' => 'Estado de cuenta',
- 'Statement Balance' => 'Balance de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'Sub-contract GIFI' => 'Sub-Contrato PUC',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'Numero de Impuesto',
- 'Tax Number / SSN' => 'NIT./CC./CE.',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Taxable' => 'Impuestos gravables',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Crédito',
- 'Text Templates' => 'Plantillas de Texto',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Top Level' => 'Nivel superior',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Transactions' => 'Impagados',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción Borrada!',
- 'Translation not on file!' => '',
- 'Translations' => 'Traducciones',
- 'Translations saved!' => 'Guardado',
- 'Trial Balance' => 'Balance de comprobación',
- 'Type of Business' => 'Clase de Negocio',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Updated' => '¡Actualizado!',
- 'Upgrading to Version' => 'Actulaizando a versión',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => 'Historial Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => 'Bodega',
- 'Warehouse deleted!' => 'Bodega borrado',
- 'Warehouse saved!' => 'Bodegas guardado',
- 'Warehouses' => 'Bodegas',
- 'Warning!' => 'Alerta!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Work Phone' => 'Teléfono (Oficina)',
- 'Year' => '',
- 'Yearend' => 'Fin del Año',
- 'Yearend date missing!' => 'Falta fecha del Fin del Año',
- 'Yearend posted!' => 'Fin del Año guardado!',
- 'Yearend posting failed!' => 'No se puede guardar Fin del Año',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'as at' => 'al',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => 'hecho',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'is not a member!' => 'no es miembro',
- 'localhost' => 'máquina local',
- 'locked!' => 'Bloqueado!',
- 'posted!' => 'Guardado',
- 'sent' => 'Enviado',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/am b/sql-ledger/locale/es_iso/am
deleted file mode 100644
index 7e409e2..0000000
--- a/sql-ledger/locale/es_iso/am
+++ /dev/null
@@ -1,249 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AR' => 'Cartera de cobros',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro Auditoría',
- 'Add Account' => 'Añadir cuenta',
- 'Add Business' => 'Agregar Empresa',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Add Language' => 'Agregar Idioma',
- 'Add SIC' => 'Agregar SIC',
- 'Add Warehouse' => 'Agregar Bodega',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Books are open' => 'Los libros están abiertos',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => 'Empresa eliminada!',
- 'Business saved!' => 'Empresa guardada!',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => 'No puedo guardar preferencias!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Tiene que seleccionar cuenta!',
- 'Cannot set multiple options for' => 'No puedo crear multiples opciones para',
- 'Cannot set multiple options for Parts Inventory' => 'No puedo crear multiples opciones para Inventario',
- 'Cannot set multiple options for Service Items' => 'No puedo crear multiples opciones para Servicios',
- 'Cash' => 'Efectivo',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta código',
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Credit' => 'Crédito',
- 'Customer Number' => 'Número del cliente',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Dataset' => 'Base de datos',
- 'Date Format' => 'Formato de fecha',
- 'Debit' => 'Débito',
- 'Defaults saved!' => 'Guardado!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Department deleted!' => 'Centro de Costos borrado!',
- 'Department saved!' => 'Centro de Costos guardado!',
- 'Departments' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Description missing!' => 'Falta Descripción',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Business' => 'Editar empresa',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit Language' => 'Editar Idioma',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Template' => 'Editar plantilla',
- 'Edit Warehouse' => 'Editar Bodega',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => '¡Guardado el código GIFI!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => 'Idioma Borrada!',
- 'Language saved!' => 'Idioma Guardada!',
- 'Languages' => 'Idiomas',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Link' => 'Enlaces',
- 'Menu Width' => 'Ancho del Menu',
- 'Method' => 'Metódo',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Payables' => 'Pagos',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Printer' => 'Impresora',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'RFQ Number' => 'Número de Cotización',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Cobros',
- 'Reference' => 'Referencia',
- 'Remove Audit trails up to' => 'Remover Rastro de Auditoría hasta',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'SIC deleted!' => 'SIC borrado!',
- 'SIC saved!' => 'SIC guardado!',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Servicios',
- 'Signature' => 'Firma',
- 'Standard Industrial Codes' => 'Standard Industrial Codes (Código estandardizado)',
- 'Stylesheet' => 'Hoja de estilo',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Type of Business' => 'Clase de Negocio',
- 'User' => 'Usuario',
- 'Vendor Number' => 'Código Vendedor',
- 'Version' => 'Versión',
- 'Warehouse deleted!' => 'Bodega borrado',
- 'Warehouse saved!' => 'Bodegas guardado',
- 'Warehouses' => 'Bodegas',
- 'Weight Unit' => 'Unidad de peso',
- 'Yearend' => 'Fin del Año',
- 'Yearend date missing!' => 'Falta fecha del Fin del Año',
- 'Yearend posted!' => 'Fin del Año guardado!',
- 'Yearend posting failed!' => 'No se puede guardar Fin del Año',
- 'Yes' => 'Si',
- 'account cannot be set to any other type of account' => 'No se puede cambiar a otro tipo de cuenta',
- 'localhost' => 'máquina local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'añadir_cuenta' => 'add_account',
- 'agregar_empresa' => 'add_business',
- 'agregar_centro_de_costos' => 'add_department',
- 'agregar_idioma' => 'add_language',
- 'agregar_sic' => 'add_sic',
- 'agregar_bodega' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_catálogo_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ap b/sql-ledger/locale/es_iso/ap
deleted file mode 100644
index e768575..0000000
--- a/sql-ledger/locale/es_iso/ap
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Impagados Proveedores',
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Employee' => 'Colaborador/Empleado',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_se_pago' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ar b/sql-ledger/locale/es_iso/ar
deleted file mode 100644
index 265366c..0000000
--- a/sql-ledger/locale/es_iso/ar
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Envio por',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/arap b/sql-ledger/locale/es_iso/arap
deleted file mode 100644
index 578e113..0000000
--- a/sql-ledger/locale/es_iso/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/arapprn b/sql-ledger/locale/es_iso/arapprn
deleted file mode 100644
index 165c342..0000000
--- a/sql-ledger/locale/es_iso/arapprn
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Memo' => 'Memo',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impreso',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/bp b/sql-ledger/locale/es_iso/bp
deleted file mode 100644
index b48fc31..0000000
--- a/sql-ledger/locale/es_iso/bp
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Seguro que quieres remover las entradas seleccionadas de la cola?',
- 'Bin Lists' => 'Listas Empaque',
- 'Cannot remove files!' => 'No puedo borrar archivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de factura',
- 'Marked entries printed!' => 'Selección impresa',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Packing Lists' => 'Lista de empaque',
- 'Pick Lists' => 'Listas de Empaque',
- 'Print' => 'Imprimir',
- 'Printing ... ' => 'Imprimiendo...',
- 'Purchase Orders' => 'Pedidos',
- 'Quotation' => 'Cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQs' => 'Cotizaciones solicitados',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referencia',
- 'Remove' => 'Eliminar',
- 'Removed spoolfiles!' => 'Archivos eliminados de la cola',
- 'Removing marked entries from queue ...' => 'Removiendo entradas sellecionads de la cola...',
- 'Sales Invoices' => 'Factura de venta',
- 'Sales Orders' => 'Presupuestos',
- 'Select all' => 'Guardar todo',
- 'Spoolfile' => 'Cola de Impresión',
- 'To' => 'Hasta',
- 'Vendor' => 'Proveedor',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Yes' => 'Si',
- 'done' => 'hecho',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'eliminar' => 'remove',
- 'guardar_todo' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ca b/sql-ledger/locale/es_iso/ca
deleted file mode 100644
index 751ddb3..0000000
--- a/sql-ledger/locale/es_iso/ca
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Include in Report' => 'Incluir en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Listar transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Project Number' => 'Número del Proyecto',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/cp b/sql-ledger/locale/es_iso/cp
deleted file mode 100644
index 69d47da..0000000
--- a/sql-ledger/locale/es_iso/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AR' => 'Cartera de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Cannot post Payment!' => 'No puedo guardar pago',
- 'Cannot post Receipt!' => 'No puedo guardar recibo',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta la fecha!',
- 'Department' => 'Centro de Costos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Nada en Cartera para',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Prepago',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Queue' => 'Cola',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => 'Recibo agregado',
- 'Screen' => 'Pantalla',
- 'Select' => 'Seleccionar',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Source' => 'Fuente',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ct b/sql-ledger/locale/es_iso/ct
deleted file mode 100644
index 44acff0..0000000
--- a/sql-ledger/locale/es_iso/ct
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Accounting Menu' => 'Menú general',
- 'Add Customer' => 'Añadir cliente',
- 'Add Vendor' => 'Añadir proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Break' => 'Pausa',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer History' => 'Historial del Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo electrónico',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Employee' => 'Colaborador/Empleado',
- 'Enddate' => 'Fecha final',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Language' => 'Lenguaje',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Manager' => 'Administrador',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huérfano',
- 'Part Number' => 'Número parte',
- 'Phone' => 'Teléfono',
- 'Pricegroup' => 'Grupo de Precios',
- 'Project Number' => 'Número del Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de venta',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Search' => 'Búsqueda',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sell Price' => 'Precio de venta',
- 'Serial Number' => 'Número del Serial',
- 'Shipping Address' => 'Dirección del envio',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Departamento',
- 'Sub-contract GIFI' => 'Sub-Contrato PUC',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => 'Numero de Impuesto',
- 'Tax Number / SSN' => 'NIT./CC./CE.',
- 'Taxable' => 'Impuestos gravables',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Type of Business' => 'Clase de Negocio',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor History' => 'Historial Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'gestión_se_pago' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'añadir_cliente' => 'add_customer',
- 'añadir_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'solicitar_cotización' => 'rfq',
- 'facturas_de_ventas' => 'sales_invoice',
- 'presupuesto' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_compras' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/gl b/sql-ledger/locale/es_iso/gl
deleted file mode 100644
index 89c777c..0000000
--- a/sql-ledger/locale/es_iso/gl
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Gestión se pago',
- 'AR Transaction' => 'Gestión de cobro',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Cash Transfer Transaction' => 'Agregar transacción',
- 'Add General Ledger Transaction' => 'Añadir transacción al libro mayor general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas del Orden',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Editar Transacción en Effectivo',
- 'Edit General Ledger Transaction' => 'Editar transacción del libro mayor general',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'FX' => 'TC',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GL Transaction' => 'Transacción en el libro mayor',
- 'General Ledger' => 'Libro mayor general',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingreso',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance transaction!' => 'Transacción fuera de Balance!',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Reports' => 'Informes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warning!' => 'Alerta!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_se_pago' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'transacción_en_el_libro_mayor' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/hr b/sql-ledger/locale/es_iso/hr
deleted file mode 100644
index f3dd853..0000000
--- a/sql-ledger/locale/es_iso/hr
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'Above' => 'Encima de',
- 'Accounting Menu' => 'Menú general',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Employee' => 'Agregar Empleado',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Despues Deducción',
- 'All' => 'Todos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Total',
- 'Amount missing!' => 'Falta suma',
- 'BIC' => 'BIC',
- 'Based on' => 'Basado en',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Below' => 'Debajo',
- 'City' => 'Ciudad',
- 'Continue' => 'Continuar',
- 'Country' => 'País',
- 'Deduct after' => 'Deducir despues de',
- 'Deduction deleted!' => 'Deducción borrado!',
- 'Deduction saved!' => 'Deducción guardado',
- 'Deductions' => 'Deducciones',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description missing!' => 'Falta Descripción',
- 'E-mail' => 'Correo electrónico',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado cancela',
- 'Employee saved!' => 'Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador cancela',
- 'Enddate' => 'Fecha final',
- 'Expense' => 'Gastos',
- 'Home Phone' => 'Teléfono residencia',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Login' => 'Entrar',
- 'Manager' => 'Administrador',
- 'Maximum' => 'Maximo',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Payroll Deduction' => 'Deducciones Nómina',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => 'Falta Tarifa!',
- 'Role' => 'Función',
- 'S' => 'S',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Departamento',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
- 'Work Phone' => 'Teléfono (Oficina)',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'agregar_deducción' => 'add_deduction',
- 'agregar_empleado' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ic b/sql-ledger/locale/es_iso/ic
deleted file mode 100644
index c261995..0000000
--- a/sql-ledger/locale/es_iso/ic
+++ /dev/null
@@ -1,269 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menú general',
- 'Accrual' => 'Acumulado',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra',
- 'Add Part' => 'Añadir artículo',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Service' => 'Añadir servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => 'Compuesto',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Listado de piezas',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Break' => 'Pausa',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Revisar Inventario',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Components' => 'Componentes',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Reintegro',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Service' => 'Editar servicio',
- 'Employee' => 'Colaborador/Empleado',
- 'Expense' => 'Gastos',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Income' => 'Ingreso',
- 'Individual Items' => 'Artículos individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => 'Productos/Servicios',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Line Total' => 'Total de la línea',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List Price' => 'Precio de lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Markup' => 'Margen',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Orphaned' => 'Huérfano',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Parts' => 'Artículos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => 'No hay esta cantidad disponible en el Inventario!',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'ROP' => 'Tope de envio',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de venta',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Sell Price' => 'Precio de venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Serial Number' => 'Número del Serial',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'Short' => 'Corto',
- 'State/Province' => 'Departamento',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta',
- 'Top Level' => 'Nivel superior',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => '¡Actualizado!',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor Invoices' => 'Facturas de Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'days' => 'días',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'añadir_compuesto' => 'add_assembly',
- 'agregar_mano_de_obra' => 'add_labor/overhead',
- 'añadir_artículo' => 'add_part',
- 'añadir_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_compuesto' => 'edit_assembly',
- 'editar_compuesto' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/io b/sql-ledger/locale/es_iso/io
deleted file mode 100644
index 30eb472..0000000
--- a/sql-ledger/locale/es_iso/io
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Customer Number' => 'Número del cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Unit' => 'Unidad',
- 'Vendor Number' => 'Código Vendedor',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ir b/sql-ledger/locale/es_iso/ir
deleted file mode 100644
index 4c7d885..0000000
--- a/sql-ledger/locale/es_iso/ir
+++ /dev/null
@@ -1,213 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer Number' => 'Número del cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Vendor Invoice' => 'Editar factura de compra',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección del envio',
- 'Source' => 'Fuente',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'posted!' => 'Guardado',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'pedido' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/is b/sql-ledger/locale/es_iso/is
deleted file mode 100644
index 345eba6..0000000
--- a/sql-ledger/locale/es_iso/is
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Presupuesto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'presupuesto' => 'sales_order',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/login b/sql-ledger/locale/es_iso/login
deleted file mode 100644
index a351573..0000000
--- a/sql-ledger/locale/es_iso/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'La base de datos está más actual que la versión del programa',
- 'Incorrect Dataset version!' => 'Versión de base de datos incorrecta',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Login' => 'Entrar',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Upgrading to Version' => 'Actulaizando a versión',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'done' => 'hecho',
- 'is not a member!' => 'no es miembro',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrar' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/menu b/sql-ledger/locale/es_iso/menu
deleted file mode 100644
index 16d09a2..0000000
--- a/sql-ledger/locale/es_iso/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Transaction' => 'Gestión se pago',
- 'AR' => 'Cartera de cobros',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Transaction' => 'Gestión de cobro',
- 'Accounting Menu' => 'Menú general',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => 'Agregar Empresa',
- 'Add Customer' => 'Añadir cliente',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra',
- 'Add Language' => 'Agregar Idioma',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'Add SIC' => 'Agregar SIC',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Warehouse' => 'Agregar Bodega',
- 'All Items' => 'Todo',
- 'Assemblies' => 'Compuestos',
- 'Audit Control' => 'Control de auditoría',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Balance Sheet' => 'Hoja de balance',
- 'Batch Printing' => 'Impresión en serie',
- 'Bin List' => 'Lista Empaque',
- 'Bin Lists' => 'Listas Empaque',
- 'Cash' => 'Efectivo',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Preferencias',
- 'Departments' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Employees' => 'Empleados',
- 'General Ledger' => 'Libro mayor general',
- 'Goods & Services' => 'Bienes y servicios',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Historial',
- 'Income Statement' => 'Balance de situación',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra',
- 'Language' => 'Lenguaje',
- 'List Accounts' => 'Listar cuentas',
- 'List Businesses' => 'Mostrar empresas',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Listar código GIFI',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Projects' => 'Mostrar Projectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Warehouses' => 'Mostar bodegas',
- 'Logout' => 'Salir',
- 'Non-taxable' => 'Sin Impuestos',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Presupuestos y pedidos',
- 'Outstanding' => 'Impagados',
- 'POS' => 'Punto de Venta',
- 'POS Invoice' => 'Factura Punto de Venta',
- 'Packing List' => 'Albarán',
- 'Packing Lists' => 'Lista de empaque',
- 'Parts' => 'Artículos',
- 'Payment' => 'Pago',
- 'Payments' => 'Vencimientos impagados',
- 'Pick List' => 'Lista de Empaque',
- 'Pick Lists' => 'Listas de Empaque',
- 'Preferences' => 'Preferencias',
- 'Pricegroups' => 'Grupos de Precios',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQs' => 'Cotizaciones solicitados',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Receive' => 'Recibir',
- 'Reconciliation' => 'Reconciliación',
- 'Reports' => 'Informes',
- 'SIC' => 'SIC',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoices' => 'Factura de venta',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save to File' => 'Guardar en un archivo',
- 'Search' => 'Búsqueda',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Shipping' => 'Envio',
- 'Statement' => 'Estado de cuenta',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Text Templates' => 'Plantillas de Texto',
- 'Transactions' => 'Impagados',
- 'Transfer' => 'Transferencia',
- 'Translations' => 'Traducciones',
- 'Trial Balance' => 'Balance de comprobación',
- 'Type of Business' => 'Clase de Negocio',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouses' => 'Bodegas',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Ordenes de Trabajo',
- 'Yearend' => 'Fin del Año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/oe b/sql-ledger/locale/es_iso/oe
deleted file mode 100644
index 44deeb7..0000000
--- a/sql-ledger/locale/es_iso/oe
+++ /dev/null
@@ -1,298 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => 'Seguro que quiere borrar la cotización número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'C' => 'C',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No puedo borrar cotización!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save quotation!' => 'No puedo guardar cotización!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Could not save!' => 'No pude guardar',
- 'Could not transfer Inventory!' => 'No puedo transferir inventario!',
- 'Country' => 'País',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Received' => 'Fecha recibido',
- 'Date received missing!' => 'Faltas datos',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Done' => 'Hecho',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit Sales Order' => 'Editar presupuesto',
- 'Employee' => 'Colaborador/Empleado',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Internal Notes' => 'Notas internas',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'No.',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'Información Incompleta',
- 'Nothing to transfer!' => 'Nada para transferir',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => 'O',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => 'Pedido procesado',
- 'Order saved!' => 'Pedido guardado',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Part Number' => 'Número parte',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number' => 'Número cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Quotation deleted!' => 'Cotización borrado',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitar Cotización',
- 'RFQ Number' => 'Número de Cotización',
- 'Recd' => 'Cobrado',
- 'Receive Merchandise' => 'Recibir mercancia',
- 'Remaining' => 'Resto',
- 'Request for Quotation' => 'Solicitar Cotización',
- 'Request for Quotations' => 'Solicitar Cotizaciones',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Date' => 'Fecha del Envio',
- 'Shipping Date missing!' => 'Falta Fecha del Envio',
- 'Shipping Point' => 'Destino',
- 'State/Province' => 'Departamento',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Warehouse' => 'Bodega',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'days' => 'días',
- 'ea' => 'unid.',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'hecho' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'print_and_save' => 'print_and_save',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'quotation_' => 'quotation_',
- 'solicitar_cotización' => 'rfq',
- 'rfq_' => 'rfq_',
- 'facturas_de_ventas' => 'sales_invoice',
- 'presupuesto' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'destino' => 'ship_to',
- 'transferencia' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_compras' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/pe b/sql-ledger/locale/es_iso/pe
deleted file mode 100644
index 9bb6bab..0000000
--- a/sql-ledger/locale/es_iso/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Group' => 'Agregar Grupo',
- 'Add Pricegroup' => 'Añadir Grupo de Precios',
- 'Add Project' => 'Añadir proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Descripción Traducción',
- 'Edit Description Translations' => 'Editar Descripción Traducción',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar proyecto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traducción Grupos',
- 'Group deleted!' => 'Grupo eleminado!',
- 'Group missing!' => 'Falta el grupo',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Language' => 'Lenguaje',
- 'Languages not defined!' => 'Idiomas no configuradas!',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => 'Grupo Borrado!',
- 'Pricegroup missing!' => 'Falta Grupo!',
- 'Pricegroup saved!' => 'Guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Descripción Traducción del Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción Borrada!',
- 'Translations saved!' => 'Guardado',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'agregar_grupo' => 'add_group',
- 'añadir_grupo_de_precios' => 'add_pricegroup',
- 'añadir_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/pos b/sql-ledger/locale/es_iso/pos
deleted file mode 100644
index 0a34f00..0000000
--- a/sql-ledger/locale/es_iso/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Change' => 'Cambiar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'From' => 'Desde',
- 'Language' => 'Lenguaje',
- 'Memo' => 'Memo',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Post' => 'Registrar',
- 'Posted!' => 'Agregado!',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Qty' => 'Cantidad',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/ps b/sql-ledger/locale/es_iso/ps
deleted file mode 100644
index 267d851..0000000
--- a/sql-ledger/locale/es_iso/ps
+++ /dev/null
@@ -1,328 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Outstanding' => 'Impagados Cartera',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Pedir Cotización',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección Factura',
- 'Bin' => 'Bin',
- 'Bin List' => 'Lista Empaque',
- 'Business' => 'Empresa',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Check' => 'Cheque',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar con',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número del cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => 'Enviado por mail',
- 'Edit POS Invoice' => 'Editar Factura Punto de Venta',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar itemes',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Balance de situación',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => 'Factura procesada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'N/A' => 'Sin respuesta',
- 'No.' => 'No.',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'PDF' => 'PDF',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Empaque',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Agregado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta fecha de cotización',
- 'Quotation Number missing!' => 'Falta número de cotización',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Report for' => 'Informe para',
- 'Required by' => 'Aceptado el',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Presupuesto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'No de Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping Address' => 'Dirección del envio',
- 'Shipping Point' => 'Destino',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'State/Province' => 'Departamento',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Trial Balance' => 'Balance de comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código Vendedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'as at' => 'al',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'sent' => 'Enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'presupuesto' => 'sales_order',
- 'guardar_todo' => 'select_all',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/pw b/sql-ledger/locale/es_iso/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/es_iso/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/rc b/sql-ledger/locale/es_iso/rc
deleted file mode 100644
index 3dace12..0000000
--- a/sql-ledger/locale/es_iso/rc
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Balance Inicial',
- 'Cleared' => 'Borrado',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decrease' => 'Reducir',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Hecho',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Increase' => 'Aumentar',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Impagados',
- 'Payment' => 'Pago',
- 'R' => 'R',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => 'Reporte de Reconciliación',
- 'Select all' => 'Guardar todo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Statement Balance' => 'Balance de cuenta',
- 'Summary' => 'Résumen',
- 'To' => 'Hasta',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'hecho' => 'done',
- 'guardar_todo' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_iso/rp b/sql-ledger/locale/es_iso/rp
deleted file mode 100644
index 86e4b1d..0000000
--- a/sql-ledger/locale/es_iso/rp
+++ /dev/null
@@ -1,161 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Efectivo',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar con',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del periodo',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencia por Tasa de Cambio',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Balance de situación',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'N/A' => 'Sin respuesta',
- 'Non-taxable Purchases' => 'Compras sin Impuestos',
- 'Non-taxable Sales' => 'Ventas sin Impuestos',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Vencimientos impagados',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número del Proyecto',
- 'Project Transactions' => 'Transacciones del Projecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Informe para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Guardar todo',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Résumen',
- 'Tax' => 'Impuesto',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance de comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'as at' => 'al',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'guardar_todo' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/COPYING b/sql-ledger/locale/es_utf/COPYING
deleted file mode 100644
index ebe4009..0000000
--- a/sql-ledger/locale/es_utf/COPYING
+++ /dev/null
@@ -1,26 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Spanish texts:
-#
-# Author: Maria Gabriela Fong <mgfong@maga.tzo.org>
-# John Stoddart <jstypo@imagencolor.com.ve>
-# Federico Montesino Pouzols <fedemp@arrok.com>
-# Tomás Pereira <topec@percar.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/es_utf/LANGUAGE b/sql-ledger/locale/es_utf/LANGUAGE
deleted file mode 100644
index 9abe944..0000000
--- a/sql-ledger/locale/es_utf/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish UTF-8
diff --git a/sql-ledger/locale/es_utf/Num2text b/sql-ledger/locale/es_utf/Num2text
deleted file mode 100644
index aa453ec..0000000
--- a/sql-ledger/locale/es_utf/Num2text
+++ /dev/null
@@ -1,211 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Language: Spanish UTF-8
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'cero',
- 1 => 'un',
- '1o' => 'uno',
- 2 => 'dos',
- 3 => 'tres',
- 4 => 'cuatro',
- 5 => 'cinco',
- 6 => 'seis',
- 7 => 'siete',
- 8 => 'ocho',
- 9 => 'nueve',
- 10 => 'diez',
- 11 => 'once',
- 12 => 'doce',
- 13 => 'trece',
- 14 => 'catorce',
- 15 => 'quince',
- 16 => 'dieciséis',
- 17 => 'diecisiete',
- 18 => 'dieciocho',
- 19 => 'diecinueve',
- 20 => 'veinte',
- 21 => 'veintiún',
- '21o' => 'veintiuno',
- 22 => 'veintidós',
- 23 => 'veintitrés',
- 24 => 'veinticuatro',
- 25 => 'veinticinco',
- 26 => 'veintiséis',
- 27 => 'veintisiete',
- 28 => 'veintiocho',
- 29 => 'veintinueve',
- 30 => 'treinta',
- 40 => 'cuarenta',
- 50 => 'cincuenta',
- 60 => 'sesenta',
- 70 => 'setenta',
- 80 => 'ochenta',
- 90 => 'noventa',
- 500 => 'quinientos',
- 700 => 'setecientos',
- 900 => 'novecientos',
- 10**2 => 'ciento',
- 10**3 => 'mil',
- 10**6 => 'millón',
- 10**12 => 'billón',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my $stripun = 0;
- my @a = ();
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- # special case for 1000
- if ($numblock[1] eq '1' && $numblock[0] gt '000') {
- # remove first array element from textnumber
- $stripun = 1;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- if ($num[0] == 1) {
- push @textnumber, $self->{numbername}{10**2};
- } else {
- # special case for 500, 700, 900
- if (grep /$num[0]/, (5,7,9)) {
- push @textnumber, $self->{numbername}{"${num[0]}00"};
-
- } else {
-
- # the one from hundreds, append cientos
- push @textnumber, $self->{numbername}{$num[0]}.$self->{numbername}{10**2}.'s';
-
- }
- }
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i], $i);
- } elsif ($numblock[$i] > 0) {
- # ones
- $num = $numblock[$i];
- $num .= 'o' if ($num == 1 && $i == 0);
- push @textnumber, $self->{numbername}{$num};
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- if ($numblock[$i] > 1) {
- if ($i == 2 || $i == 4) {
- $a = $self->{numbername}{$num}."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } elsif ($i == 3) {
- $num = 10**($i * 2);
- $a = "$self->{10**3} $self->{numbername}{$num}"."es";
- $a =~ s/ó/o/;
- push @textnumber, $a;
- } else {
- if ($i == 1) {
- push @textnumber, $self->{numbername}{$num};
- } else {
- push @textnumber, $self->{numbername}{$num}.'s';
- }
- }
- } else {
- push @textnumber, $self->{numbername}{$num};
- }
- }
-
- pop @numblock;
-
- }
-
- shift @textnumber if $stripun;
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount, $i) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 30) {
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $amount .= 'o' if ($num[1] == 1 && $i == 0);
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= " y ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/es_utf/admin b/sql-ledger/locale/es_utf/admin
deleted file mode 100644
index fe1cf2f..0000000
--- a/sql-ledger/locale/es_utf/admin
+++ /dev/null
@@ -1,138 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Añadir usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Company' => 'Compañía',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date Format' => 'Formato de fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit User' => 'Editar usuario',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'Language' => 'Lenguaje',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Salir',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas plantillas',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Number Format' => 'Formato de número',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilo',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'does not exist' => 'no existe',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'localhost' => 'máquina local',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'añadir_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_base_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_base_de_datos' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'entrar' => 'login',
- 'salir' => 'logout',
- 'administración_de_la_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_la_base_de_datos_postgresql' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'actualizar_base_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/all b/sql-ledger/locale/es_utf/all
deleted file mode 100644
index 9922099..0000000
--- a/sql-ledger/locale/es_utf/all
+++ /dev/null
@@ -1,768 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Cartera de pagos',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR' => 'Cartera de cobros',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'About' => 'Acerca de',
- 'Above' => '',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account does not exist!' => '',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Añadir cliente',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Add General Ledger Transaction' => 'Añadir transacción al libro mayor general',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Añadir artículo',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Añadir proyecto',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir',
- 'Add User' => 'Añadir usuario',
- 'Add Vendor' => 'Añadir proveedor',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Add Warehouse' => '',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => '',
- 'All' => 'Todos',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Todas las bases de datos están actualizadas',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Amount missing!' => '',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la orden número?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Assembly' => '',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => 'Listado de piezas',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Los libros están abiertos',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Numero de negocio',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'Costo de los artículos',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Compañía',
- 'Company Name' => '',
- 'Compare to' => 'Comparar con',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear base de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => '',
- 'Customer' => 'Cliente',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'No se ha instalado DBI',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de las bases de datos',
- 'Database Driver not checked!' => 'No se ha podido verificar el gestor de la base de datos',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Database User missing!' => 'No se ha definido el usuario de la base de datos',
- 'Dataset' => 'Base de datos',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'No se ha definido la base de datos',
- 'Dataset updated!' => 'Base de datos actualizada',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => '',
- 'Date missing!' => '¡Falta la fecha!',
- 'Date received missing!' => '',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Delete Dataset' => 'Borrar base de datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Hecho',
- 'Drawing' => 'Reintegro',
- 'Driver' => 'Gestor',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'E-mailed' => '',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar cuenta',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit General Ledger Transaction' => 'Editar transacción del libro mayor general',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Editar proyecto',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Edit Sales Order' => 'Editar presupuesto',
- 'Edit Service' => 'Editar servicio',
- 'Edit Template' => 'Editar plantilla',
- 'Edit User' => 'Editar usuario',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => 'Editar factura de compra',
- 'Edit Warehouse' => '',
- 'Employee' => 'Colaborador/Empleado',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Existing Datasets' => 'Bases de datos existentes',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Extended' => 'Extendido',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => '¡Guardado el código GIFI!',
- 'GL Transaction' => 'Transacción en el libro mayor',
- 'General Ledger' => 'Libro mayor general',
- 'Goods & Services' => 'Bienes y servicios',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Máquina servidor de base de datos',
- 'Hostname missing!' => 'No se ha definido la máquina servidor de base de datos',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Incluir en informe',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Balance de situación',
- 'Incorrect Dataset version!' => '',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Increase' => '',
- 'Individual Items' => 'Artículos individuales',
- 'Internal Notes' => '',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Items' => '',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de máquina servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Line Total' => 'Total de la línea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => '',
- 'List Accounts' => 'Listar cuentas',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Listar código GIFI',
- 'List Languages' => '',
- 'List Price' => 'Precio de lista',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Listar transacciones',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Entrar',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Salir',
- 'Make' => 'Marca',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Mensaje',
- 'Method' => '',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'Sin respuesta',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'New Templates' => 'Nuevas plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay ningún gestor de base de datos disponible',
- 'No Dataset selected!' => 'No se ha seleccionado ninguna base de datos',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nothing to delete!' => '¡No hay nada para borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'O' => '',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de la base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Entry' => 'Presupuestos y pedidos',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => 'Huérfano',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Packing Lists' => '',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Artículos',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Pagos',
- 'Payment' => 'Pago',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Vencimientos impagados',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administración de la base de datos PostgreSQL',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se ha definido el puerto',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Prepayment' => '',
- 'Price' => 'Precio',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Impresora',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project Transactions' => '',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Tope de envio',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => '',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'Cobros',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Reconciliación',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Remaining' => 'Resto',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Informe para',
- 'Reports' => 'Informes',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Aceptado el',
- 'Retained Earnings' => '',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Presupuesto',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Presupuestos',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en un archivo',
- 'Screen' => 'Pantalla',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de venta',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Servicio',
- 'Service Items' => 'Servicios',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar plantillas',
- 'Ship' => 'Envio',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => '',
- 'Standard' => 'Estándard',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Estado de cuenta',
- 'Statement Balance' => 'Balance de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Stock' => '',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Taxable' => 'Impuestos gravables',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Crédito',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Las siguientes bases de datos no están en uso y se pueden borrar',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'Till' => '',
- 'To' => 'Hasta ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Top Level' => '',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Transactions' => 'Impagados',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Balance de comprobación',
- 'Type of Business' => '',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar base de datos',
- 'Updated' => '¡Actualizado!',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Plantillas de usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => '',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir una máquina servidor de bases de datos y un puerto para conexiones locales y remotas',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'al',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => '',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
- 'is already a member!' => 'ya es actualmente un miembro',
- 'is not a member!' => 'no es miembro',
- 'localhost' => 'máquina local',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'creado satisfactoriamente',
- 'successfully deleted!' => 'borrado satisfactoriamente',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/am b/sql-ledger/locale/es_utf/am
deleted file mode 100644
index 9d40aa2..0000000
--- a/sql-ledger/locale/es_utf/am
+++ /dev/null
@@ -1,190 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AR' => 'Cartera de cobros',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => 'No se ha definido el número de la cuenta',
- 'Account Type' => 'Categoría de cuenta',
- 'Account Type missing!' => 'No se ha definido el tipo de la cuenta',
- 'Account deleted!' => '¡Cuenta borraba!',
- 'Account saved!' => '¡Cuenta guardada!',
- 'Accounting Menu' => 'Menú general',
- 'Add Account' => 'Añadir cuenta',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoría',
- 'Backup sent to' => 'Copia de seguridad enviada a',
- 'Books are open' => 'Los libros están abiertos',
- 'Business Number' => 'Numero de negocio',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => 'No se puede borrar la cuenta por omisión',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save preferences!' => '¡No se puede guardar las preferencias!',
- 'Cash' => 'Efectivo',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Credit' => 'Crédito',
- 'Database Host' => 'Máquina servidor de base de datos',
- 'Dataset' => 'Base de datos',
- 'Date Format' => 'Formato de fecha',
- 'Debit' => 'Débito',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Description' => 'Descripción',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite de efectivo',
- 'E-mail' => 'Correo electrónico',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar cuenta',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit Preferences for' => 'Editar preferencias de',
- 'Edit Template' => 'Editar plantilla',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en moneda extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en moneda extranjera',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => '¡Guardado el código GIFI!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en menúes desplegables:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para seleccionar si hay que aplicar impuestos al cliente/proveedor?',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Is this a summary account to record' => '¿Es esta una cuenta de resumen a registrar?',
- 'Language' => 'Lenguaje',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas por omisión',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Adaptado para',
- 'Link' => 'Enlaces',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta la dirección de correo electrónico de',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Parts Inventory' => 'Inventario de artículos',
- 'Password' => 'Contraseña',
- 'Payables' => 'Pagos',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas',
- 'Printer' => 'Impresora',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Cobros',
- 'Reference' => 'Referencia',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Servicios',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilo',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuestos',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'User' => 'Usuario',
- 'Version' => 'Versión',
- 'Weight Unit' => 'Unidad de peso',
- 'Yes' => 'Si',
- 'localhost' => 'máquina local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'añadir_cuenta' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_catálogo_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ap b/sql-ledger/locale/es_utf/ap
deleted file mode 100644
index 95e0a0c..0000000
--- a/sql-ledger/locale/es_utf/ap
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Employee' => 'Colaborador/Empleado',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_se_pago' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ar b/sql-ledger/locale/es_utf/ar
deleted file mode 100644
index a1b0c22..0000000
--- a/sql-ledger/locale/es_utf/ar
+++ /dev/null
@@ -1,152 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Envio por',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/arap b/sql-ledger/locale/es_utf/arap
deleted file mode 100644
index e6e3272..0000000
--- a/sql-ledger/locale/es_utf/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/arapprn b/sql-ledger/locale/es_utf/arapprn
deleted file mode 100644
index df1a3c6..0000000
--- a/sql-ledger/locale/es_utf/arapprn
+++ /dev/null
@@ -1,27 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/bp b/sql-ledger/locale/es_utf/bp
deleted file mode 100644
index 42da59d..0000000
--- a/sql-ledger/locale/es_utf/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de factura',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de orden',
- 'Print' => 'Imprimir',
- 'Purchase Orders' => 'Pedidos',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referencia',
- 'Sales Orders' => 'Presupuestos',
- 'Select all' => 'Guardar todo',
- 'To' => 'Hasta ',
- 'Vendor' => 'Proveedor',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'remove' => 'remove',
- 'guardar_todo' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ca b/sql-ledger/locale/es_utf/ca
deleted file mode 100644
index f8c9131..0000000
--- a/sql-ledger/locale/es_utf/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Include in Report' => 'Incluir en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Listar transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/cp b/sql-ledger/locale/es_utf/cp
deleted file mode 100644
index f0858a0..0000000
--- a/sql-ledger/locale/es_utf/cp
+++ /dev/null
@@ -1,73 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AR' => 'Cartera de cobros',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo ya cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta la fecha!',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Number' => 'Número',
- 'Payment' => 'Pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Source' => 'Fuente',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ct b/sql-ledger/locale/es_utf/ct
deleted file mode 100644
index 16632ef..0000000
--- a/sql-ledger/locale/es_utf/ct
+++ /dev/null
@@ -1,128 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Gestión se pago',
- 'AP Transactions' => 'Gestiones de pagos',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Accounting Menu' => 'Menú general',
- 'Add Customer' => 'Añadir cliente',
- 'Add Vendor' => 'Añadir proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo electrónico',
- 'Employee' => 'Colaborador/Empleado',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Language' => 'Lenguaje',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huérfano',
- 'Phone' => 'Teléfono',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save' => 'Guardar',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sell Price' => 'Precio de venta',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Taxable' => 'Impuestos gravables',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'gestión_se_pago' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'añadir_cliente' => 'add_customer',
- 'añadir_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'pedido' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'facturas_de_ventas' => 'sales_invoice',
- 'presupuesto' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_compras' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/gl b/sql-ledger/locale/es_utf/gl
deleted file mode 100644
index a7440b9..0000000
--- a/sql-ledger/locale/es_utf/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Gestión se pago',
- 'AR Transaction' => 'Gestión de cobro',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add General Ledger Transaction' => 'Añadir transacción al libro mayor general',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Confirm!' => 'Confirmar',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit General Ledger Transaction' => 'Editar transacción del libro mayor general',
- 'Equity' => 'Balance',
- 'Expense' => 'Gastos',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GL Transaction' => 'Transacción en el libro mayor',
- 'General Ledger' => 'Libro mayor general',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Reports' => 'Informes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Transaction Date missing!' => 'No se ha definido la fecha de la transacción',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_se_pago' => 'ap_transaction',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'transacción_en_el_libro_mayor' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/hr b/sql-ledger/locale/es_utf/hr
deleted file mode 100644
index 13e99f3..0000000
--- a/sql-ledger/locale/es_utf/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'Accounting Menu' => 'Menú general',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo electrónico',
- 'Employee' => 'Colaborador/Empleado',
- 'Expense' => 'Gastos',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir en informe',
- 'Login' => 'Entrar',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Rate' => 'Tarifa',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ic b/sql-ledger/locale/es_utf/ic
deleted file mode 100644
index e3fdbce..0000000
--- a/sql-ledger/locale/es_utf/ic
+++ /dev/null
@@ -1,215 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Active' => 'Activo',
- 'Add' => 'Añadir',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Part' => 'Añadir artículo',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Service' => 'Añadir servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Compuestos',
- 'Assemblies restocked!' => '¡Compuestos actualizados en almacen!',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Listado de piezas',
- 'Bin' => 'Bin',
- 'COGS' => 'Costo de los artículos',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los compuestos!',
- 'Cash' => 'Efectivo',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Reintegro',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Edit Assembly' => 'Editar compuesto',
- 'Edit Part' => 'Editar compuesto',
- 'Edit Service' => 'Editar servicio',
- 'Employee' => 'Colaborador/Empleado',
- 'Expense' => 'Gastos',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Individual Items' => 'Artículos individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este compuesto a obsoleto',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este artículo a obsoleto',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item deleted!' => '¡Concepto borrado!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Line Total' => 'Total de la línea',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List Price' => 'Precio de lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Orphaned' => 'Huérfano',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Parts' => 'Artículos',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'ROP' => 'Tope de envio',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Sell Price' => 'Precio de venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Short' => 'Corto',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta ',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => '¡Actualizado!',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'añadir_compuesto' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'añadir_artículo' => 'add_part',
- 'añadir_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_compuesto' => 'edit_assembly',
- 'editar_compuesto' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/io b/sql-ledger/locale/es_utf/io
deleted file mode 100644
index 7e23df8..0000000
--- a/sql-ledger/locale/es_utf/io
+++ /dev/null
@@ -1,102 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Recd' => 'Cobrado',
- 'Required by' => 'Aceptado el',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Unit' => 'Unidad',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ir b/sql-ledger/locale/es_utf/ir
deleted file mode 100644
index 256be6b..0000000
--- a/sql-ledger/locale/es_utf/ir
+++ /dev/null
@@ -1,179 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Edit Vendor Invoice' => 'Editar factura de compra',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Source' => 'Fuente',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'pedido' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/is b/sql-ledger/locale/es_utf/is
deleted file mode 100644
index 46f51bf..0000000
--- a/sql-ledger/locale/es_utf/is
+++ /dev/null
@@ -1,188 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Recd' => 'Cobrado',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Source' => 'Fuente',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Yes' => 'Si',
- 'ea' => 'unid.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'presupuesto' => 'sales_order',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/login b/sql-ledger/locale/es_utf/login
deleted file mode 100644
index fbd2e42..0000000
--- a/sql-ledger/locale/es_utf/login
+++ /dev/null
@@ -1,21 +0,0 @@
-$self{texts} = {
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Incorrect Password!' => 'Contraseña incorrecta',
- 'Login' => 'Entrar',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No ha introducido el nombre',
- 'is not a member!' => 'no es miembro',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrar' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/menu b/sql-ledger/locale/es_utf/menu
deleted file mode 100644
index d6e9c1b..0000000
--- a/sql-ledger/locale/es_utf/menu
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'AP' => 'Cartera de pagos',
- 'AP Aging' => 'Diario resumido de pagos',
- 'AP Transaction' => 'Gestión se pago',
- 'AR' => 'Cartera de cobros',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Transaction' => 'Gestión de cobro',
- 'Accounting Menu' => 'Menú general',
- 'Add Account' => 'Añadir cuenta',
- 'Add Assembly' => 'Añadir compuesto',
- 'Add Customer' => 'Añadir cliente',
- 'Add GIFI' => 'Añadir código GIFI',
- 'Add Part' => 'Añadir artículo',
- 'Add Project' => 'Añadir proyecto',
- 'Add Service' => 'Añadir servicio',
- 'Add Transaction' => 'Añadir',
- 'Add Vendor' => 'Añadir proveedor',
- 'Assemblies' => 'Compuestos',
- 'Audit Control' => 'Control de auditoría',
- 'Backup' => 'Copia de seguridad de los datos',
- 'Balance Sheet' => 'Hoja de balance',
- 'Cash' => 'Efectivo',
- 'Chart of Accounts' => 'Cuadro de cuentas',
- 'Check' => 'Cheque',
- 'Customers' => 'Clientes',
- 'Description' => 'Descripción',
- 'General Ledger' => 'Libro mayor general',
- 'Goods & Services' => 'Bienes y servicios',
- 'HTML Templates' => 'Plantillas HTML',
- 'Income Statement' => 'Balance de situación',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Language' => 'Lenguaje',
- 'List Accounts' => 'Listar cuentas',
- 'List GIFI' => 'Listar código GIFI',
- 'Logout' => 'Salir',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Presupuestos y pedidos',
- 'Packing List' => 'Albarán',
- 'Parts' => 'Artículos',
- 'Payment' => 'Pago',
- 'Payments' => 'Vencimientos impagados',
- 'Preferences' => 'Preferencias',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Reconciliation' => 'Reconciliación',
- 'Reports' => 'Informes',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save to File' => 'Guardar en un archivo',
- 'Send by E-Mail' => 'Enviar por correo electrónico',
- 'Services' => 'Servicios',
- 'Ship' => 'Envio',
- 'Statement' => 'Estado de cuenta',
- 'Stock Assembly' => 'Inventariar compuesto',
- 'Stylesheet' => 'Hoja de estilo',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'Transactions' => 'Impagados',
- 'Trial Balance' => 'Balance de comprobación',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/oe b/sql-ledger/locale/es_utf/oe
deleted file mode 100644
index dce2a7a..0000000
--- a/sql-ledger/locale/es_utf/oe
+++ /dev/null
@@ -1,225 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Add Vendor Invoice' => 'Añadir factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la orden número?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Done' => 'Hecho',
- 'E-mail' => 'Correo electrónico',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Edit Purchase Order' => 'Editar pedido',
- 'Edit Sales Order' => 'Editar presupuesto',
- 'Employee' => 'Colaborador/Empleado',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de elaboración',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Order deleted!' => '¡Orden borrada!',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Part' => 'Artículo',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Recd' => 'Cobrado',
- 'Remaining' => 'Resto',
- 'Required by' => 'Aceptado el',
- 'Sales Invoice' => 'Facturas de ventas',
- 'Sales Order' => 'Presupuesto',
- 'Sales Orders' => 'Presupuestos',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compras',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Yes' => 'Si',
- 'days' => 'días',
- 'ea' => 'unid.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'hecho' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'print_and_save' => 'print_and_save',
- 'pedido' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'facturas_de_ventas' => 'sales_invoice',
- 'presupuesto' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'destino' => 'ship_to',
- 'transfer' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_compras' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/pe b/sql-ledger/locale/es_utf/pe
deleted file mode 100644
index 07515d4..0000000
--- a/sql-ledger/locale/es_utf/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú general',
- 'Add Project' => 'Añadir proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit Project' => 'Editar proyecto',
- 'Language' => 'Lenguaje',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Project' => 'Proyecto',
- 'Project Number missing!' => '¡Falta el número de proyecto!',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto guardado ',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'añadir_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/pos b/sql-ledger/locale/es_utf/pos
deleted file mode 100644
index 5cfc03d..0000000
--- a/sql-ledger/locale/es_utf/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de credito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'From' => 'Desde',
- 'Language' => 'Lenguaje',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Post' => 'Registrar',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Qty' => 'Cantidad',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/ps b/sql-ledger/locale/es_utf/ps
deleted file mode 100644
index 73380a6..0000000
--- a/sql-ledger/locale/es_utf/ps
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'AR Transaction' => 'Gestión de cobro',
- 'AR Transactions' => 'Gestiones de cobros',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Add Purchase Order' => 'Añadir pedido',
- 'Add Sales Invoice' => 'Añadir factura',
- 'Add Sales Order' => 'Añadir presupuesto',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Cantidad adeudada',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la factura número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro de que desea borrar la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar la transacción!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo ya cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo ya cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar la transacción',
- 'Cash' => 'Efectivo',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Compare to' => 'Comparar con',
- 'Confirm!' => 'Confirmar',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta la fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Edit Sales Invoice' => 'Edirar factura de venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta la tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Balance de situación',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => 'No se ha definido la fecha de la factura',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'No se ha definido el número de la factura',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Item not on file!' => 'El concepto no se encuentra en ningún archivo',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'Sin respuesta',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se ha definido el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se ha definido la fecha de la elaboración',
- 'Order Number' => 'Número de orden',
- 'Order Number missing!' => 'No se ha definido el número de la orden',
- 'Packing List' => 'Albarán',
- 'Packing List Date missing!' => 'No se ha definido la fecha del albarán',
- 'Packing List Number missing!' => 'No se ha definido el número del albarán',
- 'Paid' => 'Pagado',
- 'Part' => 'Artículo',
- 'Payment date missing!' => 'No se encuentra la fecha de pago',
- 'Payments' => 'Vencimientos impagados',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Recd' => 'Cobrado',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Report for' => 'Informe para',
- 'Required by' => 'Aceptado el',
- 'Sales Order' => 'Presupuesto',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Guardar todo',
- 'Select from one of the items below' => 'Seleccione uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envio',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envio por',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuestos incluidos en el precio',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Transacción borrada!',
- 'Transaction posted!' => '¡Transacción registrada!',
- 'Trial Balance' => 'Balance de comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'What type of item is this?' => '¿De qué tipo es este concepto?',
- 'Yes' => 'Si',
- 'as at' => 'al',
- 'ea' => 'unid.',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'gestión_de_cobro' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'presupuesto' => 'sales_order',
- 'guardar_todo' => 'select_all',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/pw b/sql-ledger/locale/es_utf/pw
deleted file mode 100644
index cbd93f9..0000000
--- a/sql-ledger/locale/es_utf/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/rc b/sql-ledger/locale/es_utf/rc
deleted file mode 100644
index 0159842..0000000
--- a/sql-ledger/locale/es_utf/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Difference' => 'Diferencia',
- 'Done' => 'Hecho',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Payment' => 'Pago',
- 'Reconciliation' => 'Reconciliación',
- 'Select all' => 'Guardar todo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Statement Balance' => 'Balance de cuenta',
- 'To' => 'Hasta ',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'hecho' => 'done',
- 'guardar_todo' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/es_utf/rp b/sql-ledger/locale/es_utf/rp
deleted file mode 100644
index a33d43d..0000000
--- a/sql-ledger/locale/es_utf/rp
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario resumido de pagos',
- 'AR Aging' => 'Diario resumido de cobros ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú general',
- 'Accounts' => 'Cuentas',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de balance',
- 'Cash' => 'Efectivo',
- 'Compare to' => 'Comparar con',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Lugar de los decimales',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo electrónico',
- 'E-mail Statement to' => 'Enviar comprobante por correo electrónico a',
- 'E-mail address missing!' => 'No se ha definido el correo electrónico',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en informe',
- 'Income Statement' => 'Balance de situación',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'Sin respuesta',
- 'Nothing selected!' => '¡No es seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'Payments' => 'Vencimientos impagados',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡No se encuentra el proyecto en la base de datos!',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Informe para',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Guardar todo',
- 'Select from one of the names below' => 'Seleccione uno de los nombres de la lista',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax collected' => 'Impuestos cobrados',
- 'Tax paid' => 'Impuestos pagados',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance de comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡No se encuentra el proveedor en la base de datos!',
- 'as at' => 'al',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'guardar_todo' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/COPYING b/sql-ledger/locale/fi/COPYING
deleted file mode 100644
index 823094c..0000000
--- a/sql-ledger/locale/fi/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Finish texts:
-#
-# Author: Petri Leppänen <mpj@mail.htk.fi>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/fi/LANGUAGE b/sql-ledger/locale/fi/LANGUAGE
deleted file mode 100644
index 3435014..0000000
--- a/sql-ledger/locale/fi/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Finnish
diff --git a/sql-ledger/locale/fi/admin b/sql-ledger/locale/fi/admin
deleted file mode 100644
index bcfbba8..0000000
--- a/sql-ledger/locale/fi/admin
+++ /dev/null
@@ -1,138 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Kulunvalvonta',
- 'Accounting' => 'Kirjanpito',
- 'Add User' => 'Lisää käyttäjä',
- 'Address' => 'Osoite',
- 'Administration' => 'Ylläpito',
- 'Administrator' => 'Pääkäyttäjä',
- 'All Datasets up to date!' => 'Kaikki tietolähteet ajan tasalla',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Muuta pääkäyttäjän salasana',
- 'Change Password' => 'Muuta salasana',
- 'Character Set' => 'Näppäimistökartta ',
- 'Click on login name to edit!' => 'Klikkaa kirjautumisnimeä muokataksesi sitä!',
- 'Company' => 'Yritys',
- 'Connect to' => 'Yhdistä',
- 'Continue' => 'Jatka',
- 'Create Chart of Accounts' => 'Luo tilikartta',
- 'Create Dataset' => 'Luo tietolähteet',
- 'DBI not installed!' => 'DBI ei ole asennettu!',
- 'Database' => 'Tietokanta',
- 'Database Administration' => 'Tietokannan ylläpito',
- 'Database Driver not checked!' => 'Tietokanta-ajuria ei ole tarkastettu',
- 'Database User missing!' => 'Tietokannan käyttäjä puuttuu',
- 'Dataset' => 'Tietolähde',
- 'Dataset missing!' => 'Tietolähde puuttuu',
- 'Dataset updated!' => 'Tietolähde päivitetty',
- 'Date Format' => 'Päiväyksen muoto',
- 'Delete' => 'Poista',
- 'Delete Dataset' => 'Poista tietolähde',
- 'Directory' => 'Hakemisto',
- 'Driver' => 'Ajuri',
- 'Dropdown Limit' => 'Pudotusvalikkon rivimäärä',
- 'E-mail' => 'Sähköposti',
- 'Edit User' => 'Muokkaa käyttäjää',
- 'Existing Datasets' => 'Nykyiset tietolähteet',
- 'Fax' => 'Faksi',
- 'Host' => 'Isäntätietokone',
- 'Hostname missing!' => 'Isäntätietokoneen nimi puuttuu',
- 'Language' => 'Kieli',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Jätä isäntä- ja porttikentät tyhjiksi mikäli et halua ottaa etäyhteyttä.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Kirjaudu',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Kirjaudu ulos',
- 'Multibyte Encoding' => 'Itämaisten kielten tuki',
- 'Name' => 'Nimi',
- 'New Templates' => 'Uusi malli',
- 'No Database Drivers available!' => 'Tietokanta-ajuria ei saatavilla!',
- 'No Dataset selected!' => 'Ei tietolähdettä valittuna!',
- 'Nothing to delete!' => 'Ei poistettavaa!',
- 'Number Format' => 'Numeron muoto',
- 'Oracle Database Administration' => 'Oracle-tietokannan ylläpito',
- 'Password' => 'Salasana',
- 'Password changed!' => 'Salasana muutettu!',
- 'Pg Database Administration' => 'Postgres tietokannan ylläpito',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Puhelin',
- 'Port' => 'Portti',
- 'Port missing!' => 'Portti puuttuu!',
- 'Printer' => 'Kirjoitin',
- 'Save' => 'Tallenna',
- 'Setup Templates' => 'Aseta mallit',
- 'Signature' => 'Allekirjoitus',
- 'Stylesheet' => 'Tyylimalli',
- 'Templates' => 'Mallit',
- 'The following Datasets are not in use and can be deleted' => 'Seuraavat tietolähteet
-eivät ole käytössä ja voidaan poistaa',
- 'The following Datasets need to be updated' => 'Seuraavat tietolähteet päivitettävä',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Tämä on olemassa olevien lähteiden ennakkotarkistus. Mitään ei luoda tai poisteta tässä vaiheessa!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Lisätäksesi käyttäjän ryhmään muokkaa nimeä, muuta kirjautumisnimi ja tallenna.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Päivitä tietolähde',
- 'Use Templates' => 'Käytä mallia',
- 'User' => 'Käyttäjä',
- 'User deleted!' => 'Käyttäjä poistettu!',
- 'User saved!' => 'Käyttäjä tallennettu!',
- 'Version' => 'Versio',
- 'You must enter a host and port for local and remote connections!' => 'Sinun täytyy antaa isäntäkone ja portti paikallisille ja etäyhteyksille!',
- 'does not exist' => 'ei löydy',
- 'is already a member!' => 'on jo käyttäjä',
- 'localhost' => 'paikallinen tietokone',
- 'successfully created!' => 'onnistuneesti luotu',
- 'successfully deleted!' => 'onnistuneesti poistettu',
- 'website' => 'www-sivu',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'lisää_käyttäjä' => 'add_user',
- 'muuta_pääkäyttäjän_salasana' => 'change_admin_password',
- 'muuta_salasana' => 'change_password',
- 'jatka' => 'continue',
- 'luo_tietolähteet' => 'create_dataset',
- 'poista' => 'delete',
- 'poista_tietolähde' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'kirjaudu' => 'login',
- 'kirjaudu_ulos' => 'logout',
- 'oracle_tietokannan_ylläpito' => 'oracle_database_administration',
- 'postgres_tietokannan_ylläpito' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'tallenna' => 'save',
- 'unlock_system' => 'unlock_system',
- 'päivitä_tietolähde' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/all b/sql-ledger/locale/fi/all
deleted file mode 100644
index 3d73a45..0000000
--- a/sql-ledger/locale/fi/all
+++ /dev/null
@@ -1,768 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Ostot',
- 'AP Aging' => 'Erääntyvät ostolaskut',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Ostotapahtuma',
- 'AP Transactions' => 'Ostotapahtumat',
- 'AR' => 'Myynnit',
- 'AR Aging' => 'Erääntyvät myyntilaskut',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Myyntitapahtuma',
- 'AR Transactions' => 'Myyntitapahtumat',
- 'About' => 'Lisätietoja',
- 'Above' => '',
- 'Access Control' => 'Kulunvalvonta',
- 'Account' => 'Tili',
- 'Account Number' => 'Tilinumero',
- 'Account Number missing!' => 'Tilinumero puuttuu',
- 'Account Type' => 'Tilityyppi',
- 'Account Type missing!' => 'Tilityyppi puuttuu',
- 'Account deleted!' => 'Tili poistettu',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Tili lisätty',
- 'Accounting' => 'Kirjanpito',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Accounts' => 'Tilit',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Avoin',
- 'Add' => 'Lisää',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Lisää tili',
- 'Add Assembly' => 'Lisää tuote',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Lisää asiakas',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Lisää GIFI',
- 'Add General Ledger Transaction' => 'Lisää pääkirjatapahtuma',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Lisää raaka-aine/tarvike',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Lisää projekti',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Lisää myyntilasku',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Add Service' => 'Lisää palvelu',
- 'Add Transaction' => 'Lisää tapahtuma',
- 'Add User' => 'Lisää käyttäjä',
- 'Add Vendor' => 'Lisää toimittaja',
- 'Add Vendor Invoice' => 'Lisää ostolasku',
- 'Add Warehouse' => '',
- 'Address' => 'Osoite',
- 'Administration' => 'Ylläpito',
- 'Administrator' => 'Pääkäyttäjä',
- 'After Deduction' => '',
- 'All' => 'Kaikki',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Kaikki tietolähteet ajan tasalla',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Erääntyvä summa',
- 'Amount missing!' => '',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Invoice Number' => 'Haluatko poistaa laskun numero?',
- 'Are you sure you want to delete Order Number' => 'Haluatko poistaa tilauksen numero',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Haluatko poistaa viennin?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Tuotteet',
- 'Assemblies restocked!' => 'Tuotteet viety varastoon',
- 'Assembly' => '',
- 'Asset' => 'Vastaavaa',
- 'Attachment' => 'Liite',
- 'Audit Control' => 'Tilien tarkistus',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'BIC' => '',
- 'BOM' => 'Materiaalilista',
- 'Backup' => 'Varmuuskopio',
- 'Backup sent to' => 'Varmuuskopio lähetetty',
- 'Balance' => 'Tase',
- 'Balance Sheet' => 'Taselaskelma',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Näkymätön kopio',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Varastopaikka',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Kirjat ovat avoinna',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Y-numero',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'Myydyn tuotteen kulut',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Tiliä ei voi poistaa!',
- 'Cannot delete customer!' => 'Asiakasta ei voi poistaa!',
- 'Cannot delete default account!' => 'Oletustiliä ei voi poistaa!',
- 'Cannot delete invoice!' => 'Laskua ei voi poistaa!',
- 'Cannot delete item!' => 'Nimikettä ei voi poistaa!',
- 'Cannot delete order!' => 'Tilausta ei voi poistaa!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Vientiä ei voi poistaa',
- 'Cannot delete vendor!' => 'Toimittajaa ei voi poistaa!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Laskun kirjaus suljetulle ajanjaksolle kielletty!',
- 'Cannot post invoice!' => 'Laskua ei voi kirjata!',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cannot post transaction for a closed period!' => 'Viennin kirjaus suljetulle ajanjaksolle kielletty',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Cannot process payment for a closed period!' => 'Suljetun ajanjakson maksua ei voi käsitellä',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Tilin tallennus ei onnistu!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Tilauksen tallennus ei onnistu!',
- 'Cannot save preferences!' => 'Asetuksien tallennus ei onnistu!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Tuotteiden varastointi ei onnistu!',
- 'Cash' => 'Käteiskauppa',
- 'Cc' => 'Kopio',
- 'Change' => '',
- 'Change Admin Password' => 'Muuta pääkäyttäjän salasana',
- 'Change Password' => 'Muuta salasana',
- 'Character Set' => 'Näppäimistökartta ',
- 'Chart of Accounts' => 'Tilikartta',
- 'Check' => 'Sekki',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Klikkaa kirjautumisnimeä muokataksesi sitä!',
- 'Close Books up to' => 'Sulje kirjat hetkeen',
- 'Closed' => 'Suljettu',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Yritys',
- 'Company Name' => '',
- 'Compare to' => 'verrattuna',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Vahvista!',
- 'Connect to' => 'Yhdistä',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Contra' => '',
- 'Copies' => 'Kopiot',
- 'Copy to COA' => 'Kopioi tilikarttaan',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Luo tilikartta',
- 'Create Dataset' => 'Luo tietolähteet',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Current Earnings' => '',
- 'Customer' => 'Asiakas',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Asiakas poistettu!',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Customer saved!' => 'Asiakas tallennettu!',
- 'Customers' => 'Asiakkaat',
- 'DBI not installed!' => 'DBI ei ole asennettu!',
- 'DOB' => '',
- 'Database' => 'Tietokanta',
- 'Database Administration' => 'Tietokannan ylläpito',
- 'Database Driver not checked!' => 'Tietokanta-ajuria ei ole tarkastettu',
- 'Database Host' => 'Tietokannan isäntä',
- 'Database User missing!' => 'Tietokannan käyttäjä puuttuu',
- 'Dataset' => 'Tietolähde',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Tietolähde puuttuu',
- 'Dataset updated!' => 'Tietolähde päivitetty',
- 'Date' => 'Päiväys',
- 'Date Format' => 'Päiväyksen muoto',
- 'Date Paid' => 'Maksupäivä',
- 'Date Received' => '',
- 'Date missing!' => 'Päiväys puuttuu',
- 'Date received missing!' => '',
- 'Debit' => 'Debet',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Decimalplaces' => 'Desimaalipaikkoja',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Poista',
- 'Delete Account' => 'Poista tili',
- 'Delete Dataset' => 'Poista tietolähde',
- 'Delivery Date' => 'Toimituspäivä',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Rahatallennus',
- 'Description' => 'Kuvaus',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Ero',
- 'Directory' => 'Hakemisto',
- 'Discount' => 'Alennus',
- 'Done' => 'Suoritettu!',
- 'Drawing' => 'Piirros',
- 'Driver' => 'Ajuri',
- 'Dropdown Limit' => 'Pudotusvalikkon rivimäärä',
- 'Due Date' => 'Eräpäivä',
- 'Due Date missing!' => 'Eräpäivä puuttuu!',
- 'E-mail' => 'Sähköposti',
- 'E-mail Statement to' => 'Sähköpostilla tiliote kenelle',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'E-mailed' => '',
- 'Edit' => 'Muokkaa',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Muokkaa tiliä',
- 'Edit Assembly' => 'Muokkaa tuotetta',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Muokkaa asiakas',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Muokkaa GIFI',
- 'Edit General Ledger Transaction' => 'Muokkaa pääkirjavientiä',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Muokkaa raaka-ainetta/tarviketta',
- 'Edit Preferences for' => 'Muokkaa asetuksia',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Muokkaa projektia',
- 'Edit Purchase Order' => 'Muokkaa ostotilausta',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Muokkaa myyntilaskua',
- 'Edit Sales Order' => 'Muokkaa myyntitilausta',
- 'Edit Service' => 'Muokkaa palvelua',
- 'Edit Template' => 'Muokkaa mallia',
- 'Edit User' => 'Muokkaa käyttäjää',
- 'Edit Vendor' => 'Muokkaa ',
- 'Edit Vendor Invoice' => 'Muokkaa ostolaskua',
- 'Edit Warehouse' => '',
- 'Employee' => 'Työntekijä',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Pakota muunnos kaikille viennille',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Merkitse käyttämäsi valuutat 3 kirjaimella ja erota ne kaksoispisteellä, esim.(EUR:USD:SEK).',
- 'Equity' => 'Oma pääoma',
- 'Excempt age <' => '',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Existing Datasets' => 'Nykyiset tietolähteet',
- 'Expense' => 'Menot',
- 'Expense Account' => 'Menotili',
- 'Expense/Asset' => 'Menot/Varat',
- 'Extended' => 'Pidennetty',
- 'FX' => '',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'Foreign Exchange Gain' => 'Vaihtokurssivoitto',
- 'Foreign Exchange Loss' => 'Vaihtokurssitappio',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI poistettu!',
- 'GIFI missing!' => 'GIFI puuttuu!',
- 'GIFI saved!' => 'GIFI tallennettu!',
- 'GL Transaction' => 'Pääkirjavienti',
- 'General Ledger' => 'Pääkirja',
- 'Goods & Services' => 'Hyödykkeet ja palvelut',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML mallit',
- 'Heading' => 'Otsikko',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Isäntätietokone',
- 'Hostname missing!' => 'Isäntätietokoneen nimi puuttuu',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Kuva',
- 'In-line' => 'Linjalla',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Include in drop-down menus' => 'Sisällytä pudotusvalikkoon',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Liitetäänkö tämä tili
-asiakas/toimittaja-lomakkeisiin merkitäkseen hänet verokelpoiseksi!',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Tuloslaskelma',
- 'Incorrect Dataset version!' => 'Väärä tietolähdeversio!',
- 'Incorrect Password!' => 'Väärä salasana!',
- 'Increase' => '',
- 'Individual Items' => 'Yksittäiset nimikkeet',
- 'Internal Notes' => '',
- 'Inventory' => 'Varasto',
- 'Inventory Account' => 'Varastotili',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Tuotteen varaston on oltava nolla ennen asettamista epäkurantiksi!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Raaka-aineen/tarvikkeen varaston määrä on oltava nolla ennen asettamista epäkurantiksi!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Invoice deleted!' => 'Lasku poistettu!',
- 'Invoice posted!' => 'Lasku kirjattu!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Laskut',
- 'Is this a summary account to record' => 'Onko tämä tallennettava yhteenvetotili?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Nimike poistettu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Items' => '',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'LaTeX Templates' => 'LaTeX mallit',
- 'Labor/Overhead' => '',
- 'Language' => 'Kieli',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Edelliset numerot ja oletustilit',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Jätä isäntä- ja porttikentät tyhjiksi mikäli et halua ottaa etäyhteyttä.',
- 'Liability' => 'Vastattavaa',
- 'Licensed to' => 'Lisenssin omistaja',
- 'Line Total' => 'Rivi yhteensä',
- 'Link' => 'Linkki',
- 'Link Accounts' => 'Linkkaa tilit',
- 'List' => '',
- 'List Accounts' => 'Listaa tilit',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Listaa GIFI',
- 'List Languages' => '',
- 'List Price' => 'Listaa hinnat',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Listaa viennit',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Kirjaudu',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Kirjaudu ulos',
- 'Make' => 'Valmistaja',
- 'Manager' => '',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Viesti',
- 'Method' => '',
- 'Microfiche' => 'Mikrokuva',
- 'Model' => 'Tuotenimi',
- 'Month' => '',
- 'Multibyte Encoding' => 'Itämaisten kielten tuki',
- 'N/A' => 'Ei saatavilla',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puuttuu!',
- 'New Templates' => 'Uusi malli',
- 'No' => 'Ei',
- 'No Database Drivers available!' => 'Tietokanta-ajuria ei saatavilla!',
- 'No Dataset selected!' => 'Ei tietolähdettä valittuna!',
- 'No email address for' => 'Sähköpostiosoite puuttuu',
- 'No.' => 'no',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Lisätietoja',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Mitään valitsematta!',
- 'Nothing to delete!' => 'Ei poistettavaa!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number Format' => 'Numeron muoto',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'O' => 'O',
- 'Obsolete' => 'Epäkurantti',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'On Hand' => 'Varastossa',
- 'Open' => 'Avoinna',
- 'Oracle Database Administration' => 'Oracle-tietokannan ylläpito',
- 'Order' => 'Tilaus',
- 'Order Date' => 'Tilauspäivämäärä',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Entry' => 'Tilauksen kirjaus',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'Order deleted!' => 'Tilaus poistettu!',
- 'Order processed!' => '',
- 'Order saved!' => 'Tilaus tallennettu!',
- 'Orphaned' => 'Hylätyt',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Ei tasapainossa',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Packing Lists' => '',
- 'Paid' => 'Maksettu',
- 'Part' => 'Raaka-aine/tarvike',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Raaka-aineet/tarvikkeet',
- 'Parts Inventory' => 'Raaka-aine/tarvikevarasto',
- 'Password' => 'Salasana',
- 'Password changed!' => 'Salasana muutettu!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Maksettavaa',
- 'Payment' => 'Maksu',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payment posted!' => 'Maksu kirjattu!',
- 'Payments' => 'Maksut',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Postgres tietokannan ylläpito',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Puhelin',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Portti',
- 'Port missing!' => 'Portti puuttuu!',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Posted!' => '',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Asetukset',
- 'Preferences saved!' => 'Asetukset tallennettu!',
- 'Prepayment' => '',
- 'Price' => 'Hinta',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Tulosta',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Kirjoitin',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Projekti',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'Projektinumero puuttuu!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Projekti poistettu!',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Project saved!' => 'Projekti tallennettu!',
- 'Projects' => 'Projektit',
- 'Purchase Order' => 'Ostotilaus',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Qty' => 'Määrä',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Uudelleentilausraja',
- 'Rate' => 'Kurssi',
- 'Rate missing!' => '',
- 'Recd' => 'Vastaanotettu',
- 'Receipt' => 'Kuitti',
- 'Receipt posted!' => '',
- 'Receipts' => 'Kuitit',
- 'Receivables' => 'Saamiset',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Sovitus',
- 'Reconciliation Report' => '',
- 'Record in' => 'Talleta tilille',
- 'Reference' => 'Viite',
- 'Reference missing!' => 'Viite puuttuu',
- 'Remaining' => 'Jäljellä',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Raportti',
- 'Reports' => 'Raportit',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Toimituspäivä',
- 'Retained Earnings' => 'Käyttörahasto\jakamaton voitto',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Myynti',
- 'Sales Invoice' => 'Myyntilasku',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Tilausvahvistus',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Tallenna',
- 'Save Pricelist' => '',
- 'Save as new' => 'Tallenna uutena',
- 'Save to File' => 'Tallenna tiedostoon',
- 'Screen' => 'Näyttö',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Valitse kaikki',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Myyntihinta',
- 'Send by E-Mail' => 'Lähetä sähköpostilla',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Palvelu',
- 'Service Items' => 'Palvelun nimikkeet',
- 'Services' => 'Palvelut',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Aseta mallit',
- 'Ship' => 'Lähetä',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Toimitusosoite',
- 'Ship via' => 'Lähetä kautta',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Lyhytaikaiset',
- 'Signature' => 'Allekirjoitus',
- 'Source' => 'Lähde',
- 'Spoolfile' => '',
- 'Standard' => 'Vakio',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Tiliote',
- 'Statement Balance' => 'Tiliotteen tase',
- 'Statement sent to' => 'Tiliote lähetetty',
- 'Statements sent to printer!' => 'Tiliotteet lähetetty tulostimelle!',
- 'Stock' => '',
- 'Stock Assembly' => 'Varastoi tuote',
- 'Stylesheet' => 'Tyylimalli',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Järjestelmä',
- 'System Defaults' => '',
- 'Tax' => 'Vero',
- 'Tax Accounts' => 'Verotilit',
- 'Tax Included' => 'ALV sisältyy ',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Veroa kerätty',
- 'Tax paid' => 'Veroa maksettu ',
- 'Taxable' => 'Verotettavaa',
- 'Template saved!' => 'Malli tallennettu',
- 'Templates' => 'Mallit',
- 'Terms' => 'Maksuehto',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Seuraavat tietolähteet
-eivät ole käytössä ja voidaan poistaa',
- 'The following Datasets need to be updated' => 'Seuraavat tietolähteet päivitettävä',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Tämä on olemassa olevien lähteiden ennakkotarkistus. Mitään ei luoda tai poisteta tässä vaiheessa!',
- 'Till' => '',
- 'To' => 'Hetkeen',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Lisätäksesi käyttäjän ryhmään muokkaa nimeä, muuta kirjautumisnimi ja tallenna.',
- 'Top Level' => 'Ylin taso',
- 'Total' => 'Yhteensä',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Viennin päiväys puuttuu!',
- 'Transaction deleted!' => 'Vienti poistettu!',
- 'Transaction posted!' => 'Vienti kirjattu!',
- 'Transaction reversal enforced for all dates' => 'Kirjaukset muunnettu kaikille päiväyksille',
- 'Transaction reversal enforced up to' => 'Kirjaukset muunnnettu hetkeen ',
- 'Transactions' => 'Tapahtumat',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Saldolista',
- 'Type of Business' => '',
- 'Unit' => 'Yksikkö',
- 'Unit of measure' => 'mittayksikkö',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Päivitä',
- 'Update Dataset' => 'Päivitä tietolähde',
- 'Updated' => 'Päivitetty',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Käytä mallia',
- 'User' => 'Käyttäjä',
- 'User deleted!' => 'Käyttäjä poistettu!',
- 'User saved!' => 'Käyttäjä tallennettu!',
- 'Valid until' => '',
- 'Vendor' => 'Toimittaja',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Ostolasku',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Toimittaja poistettu!',
- 'Vendor missing!' => 'Toimittaja puuttuu!',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'Vendor saved!' => 'Toimittaja tallennettu',
- 'Vendors' => 'Toimittajat',
- 'Version' => 'Versio',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Paino',
- 'Weight Unit' => 'Painoyksikkö',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Kyllä',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Et kirjoittanut nimeä',
- 'You must enter a host and port for local and remote connections!' => 'Sinun täytyy antaa isäntäkone ja portti paikallisille ja etäyhteyksille!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'päivänä ',
- 'days' => 'päivää',
- 'does not exist' => 'ei löydy',
- 'done' => '',
- 'ea' => 'kpl',
- 'for Period' => 'jaksolta',
- 'is already a member!' => 'on jo käyttäjä',
- 'is not a member!' => 'ei ole käyttäjä',
- 'localhost' => 'paikallinen tietokone',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'onnistuneesti luotu',
- 'successfully deleted!' => 'onnistuneesti poistettu',
- 'website' => 'www-sivu',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/am b/sql-ledger/locale/fi/am
deleted file mode 100644
index 7162b89..0000000
--- a/sql-ledger/locale/fi/am
+++ /dev/null
@@ -1,192 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ostot',
- 'AR' => 'Myynnit',
- 'About' => 'Lisätietoja',
- 'Account' => 'Tili',
- 'Account Number' => 'Tilinumero',
- 'Account Number missing!' => 'Tilinumero puuttuu',
- 'Account Type' => 'Tilityyppi',
- 'Account Type missing!' => 'Tilityyppi puuttuu',
- 'Account deleted!' => 'Tili poistettu',
- 'Account saved!' => 'Tili lisätty',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Account' => 'Lisää tili',
- 'Add GIFI' => 'Lisää GIFI',
- 'Address' => 'Osoite',
- 'Asset' => 'Vastaavaa',
- 'Audit Control' => 'Tilien tarkistus',
- 'Backup sent to' => 'Varmuuskopio lähetetty',
- 'Books are open' => 'Kirjat ovat avoinna',
- 'Business Number' => 'Y-numero',
- 'COGS' => 'Myydyn tuotteen kulut',
- 'Cannot delete account!' => 'Tiliä ei voi poistaa!',
- 'Cannot delete default account!' => 'Oletustiliä ei voi poistaa!',
- 'Cannot save account!' => 'Tilin tallennus ei onnistu!',
- 'Cannot save preferences!' => 'Asetuksien tallennus ei onnistu!',
- 'Cash' => 'Käteiskauppa',
- 'Character Set' => 'Näppäimistökartta ',
- 'Chart of Accounts' => 'Tilikartta',
- 'Close Books up to' => 'Sulje kirjat hetkeen',
- 'Company' => 'Yritys',
- 'Continue' => 'Jatka',
- 'Copy to COA' => 'Kopioi tilikarttaan',
- 'Credit' => 'Kredit',
- 'Database Host' => 'Tietokannan isäntä',
- 'Dataset' => 'Tietolähde',
- 'Date Format' => 'Päiväyksen muoto',
- 'Debit' => 'Debet',
- 'Delete' => 'Poista',
- 'Delete Account' => 'Poista tili',
- 'Description' => 'Kuvaus',
- 'Discount' => 'Alennus',
- 'Dropdown Limit' => 'Pudotusvalikkon rivimäärä',
- 'E-mail' => 'Sähköposti',
- 'Edit' => 'Muokkaa',
- 'Edit Account' => 'Muokkaa tiliä',
- 'Edit GIFI' => 'Muokkaa GIFI',
- 'Edit Preferences for' => 'Muokkaa asetuksia',
- 'Edit Template' => 'Muokkaa mallia',
- 'Enforce transaction reversal for all dates' => 'Pakota muunnos kaikille viennille',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Merkitse käyttämäsi valuutat 3 kirjaimella ja erota ne kaksoispisteellä, esim.(EUR:USD:SEK).',
- 'Equity' => 'Oma pääoma',
- 'Expense' => 'Menot',
- 'Expense Account' => 'Menotili',
- 'Expense/Asset' => 'Menot/Varat',
- 'Fax' => 'Faksi',
- 'Foreign Exchange Gain' => 'Vaihtokurssivoitto',
- 'Foreign Exchange Loss' => 'Vaihtokurssitappio',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI poistettu!',
- 'GIFI missing!' => 'GIFI puuttuu!',
- 'GIFI saved!' => 'GIFI tallennettu!',
- 'Heading' => 'Otsikko',
- 'Include in drop-down menus' => 'Sisällytä pudotusvalikkoon',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Liitetäänkö tämä tili
-asiakas/toimittaja-lomakkeisiin merkitäkseen hänet verokelpoiseksi!',
- 'Inventory' => 'Varasto',
- 'Inventory Account' => 'Varastotili',
- 'Is this a summary account to record' => 'Onko tämä tallennettava yhteenvetotili?',
- 'Language' => 'Kieli',
- 'Last Numbers & Default Accounts' => 'Edelliset numerot ja oletustilit',
- 'Liability' => 'Vastattavaa',
- 'Licensed to' => 'Lisenssin omistaja',
- 'Link' => 'Linkki',
- 'Name' => 'Nimi',
- 'No' => 'Ei',
- 'No email address for' => 'Sähköpostiosoite puuttuu',
- 'Number' => 'Numero',
- 'Number Format' => 'Numeron muoto',
- 'Parts Inventory' => 'Raaka-aine/tarvikevarasto',
- 'Password' => 'Salasana',
- 'Payables' => 'Maksettavaa',
- 'Payment' => 'Maksu',
- 'Phone' => 'Puhelin',
- 'Preferences saved!' => 'Asetukset tallennettu!',
- 'Printer' => 'Kirjoitin',
- 'Rate' => 'Kurssi',
- 'Receivables' => 'Saamiset',
- 'Reference' => 'Viite',
- 'Retained Earnings' => 'Käyttörahasto\jakamaton voitto',
- 'Save' => 'Tallenna',
- 'Save as new' => 'Tallenna uutena',
- 'Service Items' => 'Palvelun nimikkeet',
- 'Signature' => 'Allekirjoitus',
- 'Stylesheet' => 'Tyylimalli',
- 'Tax' => 'Vero',
- 'Tax Accounts' => 'Verotilit',
- 'Template saved!' => 'Malli tallennettu',
- 'Transaction reversal enforced for all dates' => 'Kirjaukset muunnettu kaikille päiväyksille',
- 'Transaction reversal enforced up to' => 'Kirjaukset muunnnettu hetkeen ',
- 'User' => 'Käyttäjä',
- 'Version' => 'Versio',
- 'Weight Unit' => 'Painoyksikkö',
- 'Yes' => 'Kyllä',
- 'localhost' => 'paikallinen tietokone',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'lisää_tili' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'jatka' => 'continue',
- 'kopioi_tilikarttaan' => 'copy_to_coa',
- 'poista' => 'delete',
- 'muokkaa' => 'edit',
- 'muokkaa_tiliä' => 'edit_account',
- 'tallenna' => 'save',
- 'tallenna_uutena' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ap b/sql-ledger/locale/fi/ap
deleted file mode 100644
index ba35143..0000000
--- a/sql-ledger/locale/fi/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Ostotapahtuma',
- 'AP Transactions' => 'Ostotapahtumat',
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Erääntyvä summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Transaction' => 'Haluatko poistaa viennin?',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Cannot delete transaction!' => 'Vientiä ei voi poistaa',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cannot post transaction for a closed period!' => 'Viennin kirjaus suljetulle ajanjaksolle kielletty',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Check' => 'Sekki',
- 'Closed' => 'Suljettu',
- 'Confirm!' => 'Vahvista!',
- 'Continue' => 'Jatka',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Date Paid' => 'Maksupäivä',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'Due Date missing!' => 'Eräpäivä puuttuu!',
- 'Employee' => 'Työntekijä',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'ID' => 'ID',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Open' => 'Avoinna',
- 'Order' => 'Tilaus',
- 'Order Number' => 'Tilausnumero',
- 'PDF' => 'PDF',
- 'Paid' => 'Maksettu',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payments' => 'Maksut',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Postscript' => 'Postscript',
- 'Print' => 'Tulosta',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Receipt' => 'Kuitti',
- 'Remaining' => 'Jäljellä',
- 'Screen' => 'Näyttö',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Source' => 'Lähde',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax Included' => 'ALV sisältyy ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Transaction deleted!' => 'Vienti poistettu!',
- 'Transaction posted!' => 'Vienti kirjattu!',
- 'Update' => 'Päivitä',
- 'Vendor' => 'Toimittaja',
- 'Vendor missing!' => 'Toimittaja puuttuu!',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'Yes' => 'Kyllä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ostotapahtuma' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'tulosta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'päivitä' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ar b/sql-ledger/locale/fi/ar
deleted file mode 100644
index 5fb1a67..0000000
--- a/sql-ledger/locale/fi/ar
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Myyntitapahtuma',
- 'AR Transactions' => 'Myyntitapahtumat',
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Erääntyvä summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Transaction' => 'Haluatko poistaa viennin?',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Cannot delete transaction!' => 'Vientiä ei voi poistaa',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cannot post transaction for a closed period!' => 'Viennin kirjaus suljetulle ajanjaksolle kielletty',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Check' => 'Sekki',
- 'Closed' => 'Suljettu',
- 'Confirm!' => 'Vahvista!',
- 'Continue' => 'Jatka',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Date Paid' => 'Maksupäivä',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'Due Date missing!' => 'Eräpäivä puuttuu!',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'ID' => 'ID',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Open' => 'Avoinna',
- 'Order' => 'Tilaus',
- 'Order Number' => 'Tilausnumero',
- 'PDF' => 'PDF',
- 'Paid' => 'Maksettu',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payments' => 'Maksut',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Postscript' => 'Postscript',
- 'Print' => 'Tulosta',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Receipt' => 'Kuitti',
- 'Remaining' => 'Jäljellä',
- 'Screen' => 'Näyttö',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Ship via' => 'Lähetä kautta',
- 'Source' => 'Lähde',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax Included' => 'ALV sisältyy ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Transaction deleted!' => 'Vienti poistettu!',
- 'Transaction posted!' => 'Vienti kirjattu!',
- 'Update' => 'Päivitä',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'Yes' => 'Kyllä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'myyntitapahtuma' => 'ar_transaction',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'tulosta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'päivitä' => 'update',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/arap b/sql-ledger/locale/fi/arap
deleted file mode 100644
index 56b838f..0000000
--- a/sql-ledger/locale/fi/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Osoite',
- 'Continue' => 'Jatka',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Description' => 'Kuvaus',
- 'Number' => 'Numero',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'jatka' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/arapprn b/sql-ledger/locale/fi/arapprn
deleted file mode 100644
index 8fe112d..0000000
--- a/sql-ledger/locale/fi/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Amount' => 'Summa',
- 'Check' => 'Sekki',
- 'Continue' => 'Jatka',
- 'Date' => 'Päiväys',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'Kuitti',
- 'Screen' => 'Näyttö',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Source' => 'Lähde',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'jatka' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/bp b/sql-ledger/locale/fi/bp
deleted file mode 100644
index 6aeb6aa..0000000
--- a/sql-ledger/locale/fi/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Confirm!' => 'Vahvista!',
- 'Continue' => 'Jatka',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Date' => 'Päiväys',
- 'From' => 'Alkaen',
- 'Invoice' => 'Lasku',
- 'Invoice Number' => 'Laskun numero',
- 'Order' => 'Tilaus',
- 'Order Number' => 'Tilausnumero',
- 'Print' => 'Tulosta',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Receipts' => 'Kuitit',
- 'Reference' => 'Viite',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Select all' => 'Valitse kaikki',
- 'To' => 'Hetkeen',
- 'Vendor' => 'Toimittaja',
- 'Yes' => 'Kyllä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'jatka' => 'continue',
- 'tulosta' => 'print',
- 'remove' => 'remove',
- 'valitse_kaikki' => 'select_all',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ca b/sql-ledger/locale/fi/ca
deleted file mode 100644
index fa79102..0000000
--- a/sql-ledger/locale/fi/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Balance' => 'Tase',
- 'Chart of Accounts' => 'Tilikartta',
- 'Credit' => 'Kredit',
- 'Current' => 'Erääntyy',
- 'Date' => 'Päiväys',
- 'Debit' => 'Debet',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Description' => 'Kuvaus',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'List Transactions' => 'Listaa viennit',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Reference' => 'Viite',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Subtotal' => 'Välisumma',
- 'To' => 'Hetkeen',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listaa_viennit' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/cp b/sql-ledger/locale/fi/cp
deleted file mode 100644
index 1282fea..0000000
--- a/sql-ledger/locale/fi/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ostot',
- 'AR' => 'Myynnit',
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Address' => 'Osoite',
- 'All' => 'Kaikki',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Erääntyvä summa',
- 'Cannot process payment for a closed period!' => 'Suljetun ajanjakson maksua ei voi käsitellä',
- 'Continue' => 'Jatka',
- 'Currency' => 'Valuutta',
- 'Customer' => 'Asiakas',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Date missing!' => 'Päiväys puuttuu',
- 'Deposit' => 'Rahatallennus',
- 'Description' => 'Kuvaus',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Invoice' => 'Lasku',
- 'Invoices' => 'Laskut',
- 'Number' => 'Numero',
- 'PDF' => 'PDF',
- 'Payment' => 'Maksu',
- 'Payment posted!' => 'Maksu kirjattu!',
- 'Post' => 'Kirjaa',
- 'Postscript' => 'Postscript',
- 'Print' => 'Tulosta',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Receipt' => 'Kuitti',
- 'Screen' => 'Näyttö',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Source' => 'Lähde',
- 'Update' => 'Päivitä',
- 'Vendor' => 'Toimittaja',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'jatka' => 'continue',
- 'kirjaa' => 'post',
- 'tulosta' => 'print',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ct b/sql-ledger/locale/fi/ct
deleted file mode 100644
index 43e1c2a..0000000
--- a/sql-ledger/locale/fi/ct
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Ostotapahtuma',
- 'AP Transactions' => 'Ostotapahtumat',
- 'AR Transaction' => 'Myyntitapahtuma',
- 'AR Transactions' => 'Myyntitapahtumat',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Customer' => 'Lisää asiakas',
- 'Add Vendor' => 'Lisää toimittaja',
- 'Address' => 'Osoite',
- 'All' => 'Kaikki',
- 'Amount' => 'Summa',
- 'Bcc' => 'Näkymätön kopio',
- 'Cannot delete customer!' => 'Asiakasta ei voi poistaa!',
- 'Cannot delete vendor!' => 'Toimittajaa ei voi poistaa!',
- 'Cc' => 'Kopio',
- 'Closed' => 'Suljettu',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Customer deleted!' => 'Asiakas poistettu!',
- 'Customer saved!' => 'Asiakas tallennettu!',
- 'Customers' => 'Asiakkaat',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Discount' => 'Alennus',
- 'E-mail' => 'Sähköposti',
- 'Edit Customer' => 'Muokkaa asiakas',
- 'Edit Vendor' => 'Muokkaa ',
- 'Employee' => 'Työntekijä',
- 'Fax' => 'Faksi',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Invoice' => 'Lasku',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Language' => 'Kieli',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puuttuu!',
- 'Notes' => 'Lisätietoja',
- 'Number' => 'Numero',
- 'Open' => 'Avoinna',
- 'Order' => 'Tilaus',
- 'Orphaned' => 'Hylätyt',
- 'Phone' => 'Puhelin',
- 'Purchase Order' => 'Ostotilaus',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Qty' => 'Määrä',
- 'Sales Invoice' => 'Myyntilasku',
- 'Sales Order' => 'Tilausvahvistus',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Save' => 'Tallenna',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Sell Price' => 'Myyntihinta',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax Included' => 'ALV sisältyy ',
- 'Taxable' => 'Verotettavaa',
- 'Terms' => 'Maksuehto',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
- 'Vendor Invoice' => 'Ostolasku',
- 'Vendor deleted!' => 'Toimittaja poistettu!',
- 'Vendor saved!' => 'Toimittaja tallennettu',
- 'Vendors' => 'Toimittajat',
- 'days' => 'päivää',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ostotapahtuma' => 'ap_transaction',
- 'myyntitapahtuma' => 'ar_transaction',
- 'lisää_asiakas' => 'add_customer',
- 'lisää_toimittaja' => 'add_vendor',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'pricelist' => 'pricelist',
- 'ostotilaus' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'myyntilasku' => 'sales_invoice',
- 'tilausvahvistus' => 'sales_order',
- 'tallenna' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'päivitä' => 'update',
- 'ostolasku' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/gl b/sql-ledger/locale/fi/gl
deleted file mode 100644
index 54abc7b..0000000
--- a/sql-ledger/locale/fi/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Ostotapahtuma',
- 'AR Transaction' => 'Myyntitapahtuma',
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add General Ledger Transaction' => 'Lisää pääkirjatapahtuma',
- 'Address' => 'Osoite',
- 'All' => 'Kaikki',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Transaction' => 'Haluatko poistaa viennin?',
- 'Asset' => 'Vastaavaa',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Balance' => 'Tase',
- 'Cannot delete transaction!' => 'Vientiä ei voi poistaa',
- 'Cannot post transaction for a closed period!' => 'Viennin kirjaus suljetulle ajanjaksolle kielletty',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Confirm!' => 'Vahvista!',
- 'Continue' => 'Jatka',
- 'Credit' => 'Kredit',
- 'Current' => 'Erääntyy',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Debit' => 'Debet',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'Edit General Ledger Transaction' => 'Muokkaa pääkirjavientiä',
- 'Equity' => 'Oma pääoma',
- 'Expense' => 'Menot',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Pääkirjavienti',
- 'General Ledger' => 'Pääkirja',
- 'ID' => 'ID',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Liability' => 'Vastattavaa',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Reference' => 'Viite',
- 'Reference missing!' => 'Viite puuttuu',
- 'Reports' => 'Raportit',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Source' => 'Lähde',
- 'Subtotal' => 'Välisumma',
- 'To' => 'Hetkeen',
- 'Transaction Date missing!' => 'Viennin päiväys puuttuu!',
- 'Transaction deleted!' => 'Vienti poistettu!',
- 'Transaction posted!' => 'Vienti kirjattu!',
- 'Update' => 'Päivitä',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'Yes' => 'Kyllä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ostotapahtuma' => 'ap_transaction',
- 'myyntitapahtuma' => 'ar_transaction',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'pääkirjavienti' => 'gl_transaction',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'päivitä' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/hr b/sql-ledger/locale/fi/hr
deleted file mode 100644
index 0ca4820..0000000
--- a/sql-ledger/locale/fi/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ostot',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Address' => 'Osoite',
- 'Administrator' => 'Pääkäyttäjä',
- 'All' => 'Kaikki',
- 'Amount' => 'Summa',
- 'Continue' => 'Jatka',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'E-mail' => 'Sähköposti',
- 'Employee' => 'Työntekijä',
- 'Expense' => 'Menot',
- 'ID' => 'ID',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Login' => 'Kirjaudu',
- 'Name' => 'Nimi',
- 'Name missing!' => 'Nimi puuttuu!',
- 'Notes' => 'Lisätietoja',
- 'Number' => 'Numero',
- 'Orphaned' => 'Hylätyt',
- 'Rate' => 'Kurssi',
- 'Sales' => 'Myynti',
- 'Save' => 'Tallenna',
- 'Save as new' => 'Tallenna uutena',
- 'Update' => 'Päivitä',
- 'User' => 'Käyttäjä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'tallenna' => 'save',
- 'tallenna_uutena' => 'save_as_new',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ic b/sql-ledger/locale/fi/ic
deleted file mode 100644
index c184abf..0000000
--- a/sql-ledger/locale/fi/ic
+++ /dev/null
@@ -1,221 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Active' => 'Avoin',
- 'Add' => 'Lisää',
- 'Add Assembly' => 'Lisää tuote',
- 'Add Part' => 'Lisää raaka-aine/tarvike',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Add Service' => 'Lisää palvelu',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Assemblies' => 'Tuotteet',
- 'Assemblies restocked!' => 'Tuotteet viety varastoon',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'BOM' => 'Materiaalilista',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'COGS' => 'Myydyn tuotteen kulut',
- 'Cannot delete item!' => 'Nimikettä ei voi poistaa!',
- 'Cannot stock assemblies!' => 'Tuotteiden varastointi ei onnistu!',
- 'Cash' => 'Käteiskauppa',
- 'Cc' => 'Kopio',
- 'Closed' => 'Suljettu',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Customer' => 'Asiakas',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Drawing' => 'Piirros',
- 'E-mail' => 'Sähköposti',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Edit Assembly' => 'Muokkaa tuotetta',
- 'Edit Part' => 'Muokkaa raaka-ainetta/tarviketta',
- 'Edit Service' => 'Muokkaa palvelua',
- 'Employee' => 'Työntekijä',
- 'Expense' => 'Menot',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'Image' => 'Kuva',
- 'In-line' => 'Linjalla',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Individual Items' => 'Yksittäiset nimikkeet',
- 'Inventory' => 'Varasto',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Tuotteen varaston on oltava nolla ennen asettamista epäkurantiksi!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Raaka-aineen/tarvikkeen varaston määrä on oltava nolla ennen asettamista epäkurantiksi!',
- 'Invoice' => 'Lasku',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Item deleted!' => 'Nimike poistettu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Line Total' => 'Rivi yhteensä',
- 'Link Accounts' => 'Linkkaa tilit',
- 'List Price' => 'Listaa hinnat',
- 'Make' => 'Valmistaja',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'Microfiche' => 'Mikrokuva',
- 'Model' => 'Tuotenimi',
- 'Name' => 'Nimi',
- 'No.' => 'no',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'Obsolete' => 'Epäkurantti',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'On Hand' => 'Varastossa',
- 'Open' => 'Avoinna',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'Orphaned' => 'Hylätyt',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Part' => 'Raaka-aine/tarvike',
- 'Parts' => 'Raaka-aineet/tarvikkeet',
- 'Phone' => 'Puhelin',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Project' => 'Projekti',
- 'Purchase Order' => 'Ostotilaus',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Qty' => 'Määrä',
- 'ROP' => 'Uudelleentilausraja',
- 'Recd' => 'Vastaanotettu',
- 'Required by' => 'Toimituspäivä',
- 'Sales Invoice' => 'Myyntilasku',
- 'Sales Order' => 'Tilausvahvistus',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Save' => 'Tallenna',
- 'Save as new' => 'Tallenna uutena',
- 'Screen' => 'Näyttö',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Sell Price' => 'Myyntihinta',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Services' => 'Palvelut',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Short' => 'Lyhytaikaiset',
- 'Stock Assembly' => 'Varastoi tuote',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'To' => 'Hetkeen',
- 'Top Level' => 'Ylin taso',
- 'Unit' => 'Yksikkö',
- 'Unit of measure' => 'mittayksikkö',
- 'Update' => 'Päivitä',
- 'Updated' => 'Päivitetty',
- 'Vendor' => 'Toimittaja',
- 'Vendor Invoice' => 'Ostolasku',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'Weight' => 'Paino',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'days' => 'päivää',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'lisää_tuote' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'lisää_raaka_aine/tarvike' => 'add_part',
- 'lisää_palvelu' => 'add_service',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'muokkaa_tuotetta' => 'edit_assembly',
- 'muokkaa_raaka_ainetta/tarviketta' => 'edit_part',
- 'muokkaa_palvelua' => 'edit_service',
- 'tallenna' => 'save',
- 'tallenna_uutena' => 'save_as_new',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/io b/sql-ledger/locale/fi/io
deleted file mode 100644
index 54f2b6a..0000000
--- a/sql-ledger/locale/fi/io
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Address' => 'Osoite',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'Cc' => 'Kopio',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'E-mail' => 'Sähköposti',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'In-line' => 'Linjalla',
- 'Invoice' => 'Lasku',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'No.' => 'no',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Part' => 'Raaka-aine/tarvike',
- 'Phone' => 'Puhelin',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Project' => 'Projekti',
- 'Purchase Order' => 'Ostotilaus',
- 'Qty' => 'Määrä',
- 'Recd' => 'Vastaanotettu',
- 'Required by' => 'Toimituspäivä',
- 'Sales Order' => 'Tilausvahvistus',
- 'Screen' => 'Näyttö',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'To' => 'Hetkeen',
- 'Unit' => 'Yksikkö',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'jatka' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ir b/sql-ledger/locale/fi/ir
deleted file mode 100644
index 6178218..0000000
--- a/sql-ledger/locale/fi/ir
+++ /dev/null
@@ -1,184 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Add Vendor Invoice' => 'Lisää ostolasku',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Invoice Number' => 'Haluatko poistaa laskun numero?',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'Cannot delete invoice!' => 'Laskua ei voi poistaa!',
- 'Cannot post invoice for a closed period!' => 'Laskun kirjaus suljetulle ajanjaksolle kielletty!',
- 'Cannot post invoice!' => 'Laskua ei voi kirjata!',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cc' => 'Kopio',
- 'Confirm!' => 'Vahvista!',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Credit Limit' => 'Luottoraja',
- 'Currency' => 'Valuutta',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'E-mail' => 'Sähköposti',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Edit Vendor Invoice' => 'Muokkaa ostolaskua',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'In-line' => 'Linjalla',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Invoice deleted!' => 'Lasku poistettu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Language' => 'Kieli',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'No.' => 'no',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Part' => 'Raaka-aine/tarvike',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payments' => 'Maksut',
- 'Phone' => 'Puhelin',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Purchase Order' => 'Ostotilaus',
- 'Qty' => 'Määrä',
- 'Recd' => 'Vastaanotettu',
- 'Record in' => 'Talleta tilille',
- 'Remaining' => 'Jäljellä',
- 'Required by' => 'Toimituspäivä',
- 'Sales Order' => 'Tilausvahvistus',
- 'Screen' => 'Näyttö',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Source' => 'Lähde',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax Included' => 'ALV sisältyy ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
- 'Vendor' => 'Toimittaja',
- 'Vendor missing!' => 'Toimittaja puuttuu!',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'Yes' => 'Kyllä',
- 'ea' => 'kpl',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'ostotilaus' => 'purchase_order',
- 'päivitä' => 'update',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/is b/sql-ledger/locale/fi/is
deleted file mode 100644
index 29641d9..0000000
--- a/sql-ledger/locale/fi/is
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Invoice' => 'Lisää myyntilasku',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Invoice Number' => 'Haluatko poistaa laskun numero?',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'Cannot delete invoice!' => 'Laskua ei voi poistaa!',
- 'Cannot post invoice for a closed period!' => 'Laskun kirjaus suljetulle ajanjaksolle kielletty!',
- 'Cannot post invoice!' => 'Laskua ei voi kirjata!',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cc' => 'Kopio',
- 'Confirm!' => 'Vahvista!',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Credit Limit' => 'Luottoraja',
- 'Currency' => 'Valuutta',
- 'Customer' => 'Asiakas',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'E-mail' => 'Sähköposti',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Edit Sales Invoice' => 'Muokkaa myyntilaskua',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'In-line' => 'Linjalla',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Invoice deleted!' => 'Lasku poistettu!',
- 'Invoice posted!' => 'Lasku kirjattu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'No.' => 'no',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Part' => 'Raaka-aine/tarvike',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payments' => 'Maksut',
- 'Phone' => 'Puhelin',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Print' => 'Tulosta',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Purchase Order' => 'Ostotilaus',
- 'Qty' => 'Määrä',
- 'Recd' => 'Vastaanotettu',
- 'Record in' => 'Talleta tilille',
- 'Remaining' => 'Jäljellä',
- 'Required by' => 'Toimituspäivä',
- 'Sales Order' => 'Tilausvahvistus',
- 'Screen' => 'Näyttö',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Ship via' => 'Lähetä kautta',
- 'Source' => 'Lähde',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax Included' => 'ALV sisältyy ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'Yes' => 'Kyllä',
- 'ea' => 'kpl',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'sähköposti' => 'e_mail',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'tulosta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'tilausvahvistus' => 'sales_order',
- 'toimitusosoite' => 'ship_to',
- 'päivitä' => 'update',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/login b/sql-ledger/locale/fi/login
deleted file mode 100644
index f68a145..0000000
--- a/sql-ledger/locale/fi/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Yritys',
- 'Continue' => 'Jatka',
- 'Incorrect Dataset version!' => 'Väärä tietolähdeversio!',
- 'Incorrect Password!' => 'Väärä salasana!',
- 'Login' => 'Kirjaudu',
- 'Name' => 'Nimi',
- 'Password' => 'Salasana',
- 'Version' => 'Versio',
- 'You did not enter a name!' => 'Et kirjoittanut nimeä',
- 'is not a member!' => 'ei ole käyttäjä',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'kirjaudu' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/menu b/sql-ledger/locale/fi/menu
deleted file mode 100644
index 5c5678b..0000000
--- a/sql-ledger/locale/fi/menu
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ostot',
- 'AP Aging' => 'Erääntyvät ostolaskut',
- 'AP Transaction' => 'Ostotapahtuma',
- 'AR' => 'Myynnit',
- 'AR Aging' => 'Erääntyvät myyntilaskut',
- 'AR Transaction' => 'Myyntitapahtuma',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Account' => 'Lisää tili',
- 'Add Assembly' => 'Lisää tuote',
- 'Add Customer' => 'Lisää asiakas',
- 'Add GIFI' => 'Lisää GIFI',
- 'Add Part' => 'Lisää raaka-aine/tarvike',
- 'Add Project' => 'Lisää projekti',
- 'Add Service' => 'Lisää palvelu',
- 'Add Transaction' => 'Lisää tapahtuma',
- 'Add Vendor' => 'Lisää toimittaja',
- 'Assemblies' => 'Tuotteet',
- 'Audit Control' => 'Tilien tarkistus',
- 'Backup' => 'Varmuuskopio',
- 'Balance Sheet' => 'Taselaskelma',
- 'Cash' => 'Käteiskauppa',
- 'Chart of Accounts' => 'Tilikartta',
- 'Check' => 'Sekki',
- 'Customers' => 'Asiakkaat',
- 'Description' => 'Kuvaus',
- 'General Ledger' => 'Pääkirja',
- 'Goods & Services' => 'Hyödykkeet ja palvelut',
- 'HTML Templates' => 'HTML mallit',
- 'Income Statement' => 'Tuloslaskelma',
- 'Invoice' => 'Lasku',
- 'LaTeX Templates' => 'LaTeX mallit',
- 'Language' => 'Kieli',
- 'List Accounts' => 'Listaa tilit',
- 'List GIFI' => 'Listaa GIFI',
- 'Logout' => 'Kirjaudu ulos',
- 'Open' => 'Avoinna',
- 'Order Entry' => 'Tilauksen kirjaus',
- 'Packing List' => 'Pakkauslista',
- 'Parts' => 'Raaka-aineet/tarvikkeet',
- 'Payment' => 'Maksu',
- 'Payments' => 'Maksut',
- 'Preferences' => 'Asetukset',
- 'Print' => 'Tulosta',
- 'Projects' => 'Projektit',
- 'Purchase Order' => 'Ostotilaus',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Receipt' => 'Kuitti',
- 'Receipts' => 'Kuitit',
- 'Reconciliation' => 'Sovitus',
- 'Reports' => 'Raportit',
- 'Sales Invoice' => 'Myyntilasku',
- 'Sales Order' => 'Tilausvahvistus',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Save to File' => 'Tallenna tiedostoon',
- 'Send by E-Mail' => 'Lähetä sähköpostilla',
- 'Services' => 'Palvelut',
- 'Ship' => 'Lähetä',
- 'Statement' => 'Tiliote',
- 'Stock Assembly' => 'Varastoi tuote',
- 'Stylesheet' => 'Tyylimalli',
- 'System' => 'Järjestelmä',
- 'Tax collected' => 'Veroa kerätty',
- 'Tax paid' => 'Veroa maksettu ',
- 'Transactions' => 'Tapahtumat',
- 'Trial Balance' => 'Saldolista',
- 'Vendor Invoice' => 'Ostolasku',
- 'Vendors' => 'Toimittajat',
- 'Version' => 'Versio',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/oe b/sql-ledger/locale/fi/oe
deleted file mode 100644
index d7ca73b..0000000
--- a/sql-ledger/locale/fi/oe
+++ /dev/null
@@ -1,232 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Invoice' => 'Lisää myyntilasku',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Add Vendor Invoice' => 'Lisää ostolasku',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Order Number' => 'Haluatko poistaa tilauksen numero',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'C' => 'C',
- 'Cannot delete order!' => 'Tilausta ei voi poistaa!',
- 'Cannot save order!' => 'Tilauksen tallennus ei onnistu!',
- 'Cc' => 'Kopio',
- 'Closed' => 'Suljettu',
- 'Confirm!' => 'Vahvista!',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Done' => 'Suoritettu!',
- 'E-mail' => 'Sähköposti',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Edit Purchase Order' => 'Muokkaa ostotilausta',
- 'Edit Sales Order' => 'Muokkaa myyntitilausta',
- 'Employee' => 'Työntekijä',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'ID' => 'ID',
- 'In-line' => 'Linjalla',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Invoice' => 'Lasku',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'No.' => 'no',
- 'Notes' => 'Lisätietoja',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'O' => 'O',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Open' => 'Avoinna',
- 'Order' => 'Tilaus',
- 'Order Date' => 'Tilauspäivämäärä',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'Order deleted!' => 'Tilaus poistettu!',
- 'Order saved!' => 'Tilaus tallennettu!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Part' => 'Raaka-aine/tarvike',
- 'Phone' => 'Puhelin',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Print' => 'Tulosta',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Purchase Order' => 'Ostotilaus',
- 'Purchase Orders' => 'Ostotilaukset',
- 'Qty' => 'Määrä',
- 'Recd' => 'Vastaanotettu',
- 'Remaining' => 'Jäljellä',
- 'Required by' => 'Toimituspäivä',
- 'Sales Invoice' => 'Myyntilasku',
- 'Sales Order' => 'Tilausvahvistus',
- 'Sales Orders' => 'Tilausvahvistukset',
- 'Save' => 'Tallenna',
- 'Save as new' => 'Tallenna uutena',
- 'Screen' => 'Näyttö',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Ship via' => 'Lähetä kautta',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax Included' => 'ALV sisältyy ',
- 'Terms' => 'Maksuehto',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
- 'Vendor' => 'Toimittaja',
- 'Vendor Invoice' => 'Ostolasku',
- 'Vendor missing!' => 'Toimittaja puuttuu!',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'Yes' => 'Kyllä',
- 'days' => 'päivää',
- 'ea' => 'kpl',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'suoritettu!' => 'done',
- 'sähköposti' => 'e_mail',
- 'tulosta' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ostotilaus' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'myyntilasku' => 'sales_invoice',
- 'tilausvahvistus' => 'sales_order',
- 'tallenna' => 'save',
- 'tallenna_uutena' => 'save_as_new',
- 'toimitusosoite' => 'ship_to',
- 'transfer' => 'transfer',
- 'päivitä' => 'update',
- 'ostolasku' => 'vendor_invoice',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/pe b/sql-ledger/locale/fi/pe
deleted file mode 100644
index 914ac92..0000000
--- a/sql-ledger/locale/fi/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Add Project' => 'Lisää projekti',
- 'All' => 'Kaikki',
- 'Continue' => 'Jatka',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'Edit Project' => 'Muokkaa projektia',
- 'Language' => 'Kieli',
- 'Number' => 'Numero',
- 'Orphaned' => 'Hylätyt',
- 'Project' => 'Projekti',
- 'Project Number missing!' => 'Projektinumero puuttuu!',
- 'Project deleted!' => 'Projekti poistettu!',
- 'Project saved!' => 'Projekti tallennettu!',
- 'Projects' => 'Projektit',
- 'Save' => 'Tallenna',
- 'Update' => 'Päivitä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'lisää_projekti' => 'add_project',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'tallenna' => 'save',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/pos b/sql-ledger/locale/fi/pos
deleted file mode 100644
index 32832ad..0000000
--- a/sql-ledger/locale/fi/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Continue' => 'Jatka',
- 'Credit Limit' => 'Luottoraja',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Delete' => 'Poista',
- 'Description' => 'Kuvaus',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Extended' => 'Pidennetty',
- 'From' => 'Alkaen',
- 'Language' => 'Kieli',
- 'Number' => 'Numero',
- 'Open' => 'Avoinna',
- 'Paid' => 'Maksettu',
- 'Post' => 'Kirjaa',
- 'Price' => 'Hinta',
- 'Print' => 'Tulosta',
- 'Qty' => 'Määrä',
- 'Receipts' => 'Kuitit',
- 'Record in' => 'Talleta tilille',
- 'Remaining' => 'Jäljellä',
- 'Screen' => 'Näyttö',
- 'Source' => 'Lähde',
- 'Subtotal' => 'Välisumma',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'kirjaa' => 'post',
- 'tulosta' => 'print',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/ps b/sql-ledger/locale/fi/ps
deleted file mode 100644
index 464cc03..0000000
--- a/sql-ledger/locale/fi/ps
+++ /dev/null
@@ -1,277 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Erääntyvät ostolaskut',
- 'AR Aging' => 'Erääntyvät myyntilaskut',
- 'AR Transaction' => 'Myyntitapahtuma',
- 'AR Transactions' => 'Myyntitapahtumat',
- 'Account' => 'Tili',
- 'Account Number' => 'Tilinumero',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Accounts' => 'Tilit',
- 'Add Purchase Order' => 'Ostotilaus',
- 'Add Sales Invoice' => 'Lisää myyntilasku',
- 'Add Sales Order' => 'Lisää tilausvahvistus',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Erääntyvä summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Are you sure you want to delete Invoice Number' => 'Haluatko poistaa laskun numero?',
- 'Are you sure you want to delete Transaction' => 'Haluatko poistaa viennin?',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Balance' => 'Tase',
- 'Balance Sheet' => 'Taselaskelma',
- 'Bcc' => 'Näkymätön kopio',
- 'Bin' => 'Varastopaikka',
- 'Cannot delete invoice!' => 'Laskua ei voi poistaa!',
- 'Cannot delete transaction!' => 'Vientiä ei voi poistaa',
- 'Cannot post invoice for a closed period!' => 'Laskun kirjaus suljetulle ajanjaksolle kielletty!',
- 'Cannot post invoice!' => 'Laskua ei voi kirjata!',
- 'Cannot post payment for a closed period!' => 'Maksun kirjaus suljetulle ajanjaksolle kielletty ',
- 'Cannot post transaction for a closed period!' => 'Viennin kirjaus suljetulle ajanjaksolle kielletty',
- 'Cannot post transaction!' => 'Vientiä ei voi kirjata',
- 'Cash' => 'Käteiskauppa',
- 'Cc' => 'Kopio',
- 'Check' => 'Sekki',
- 'Closed' => 'Suljettu',
- 'Compare to' => 'verrattuna',
- 'Confirm!' => 'Vahvista!',
- 'Contact' => 'Yhteyshenkilö',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Luottoraja',
- 'Curr' => 'Valuutta',
- 'Currency' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Customer missing!' => 'Asiakas puuttuu!',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Date Paid' => 'Maksupäivä',
- 'Debit' => 'Debet',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Decimalplaces' => 'Desimaalipaikkoja',
- 'Delete' => 'Poista',
- 'Delivery Date' => 'Toimituspäivä',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'Due Date missing!' => 'Eräpäivä puuttuu!',
- 'E-mail' => 'Sähköposti',
- 'E-mail Statement to' => 'Sähköpostilla tiliote kenelle',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Edit Sales Invoice' => 'Muokkaa myyntilaskua',
- 'Exch' => 'Vaihtokurssi',
- 'Exchange Rate' => 'Vaihtokurssi',
- 'Exchange rate for payment missing!' => 'Maksun vaihtokurssi puuttuu',
- 'Exchange rate missing!' => 'Vaihtokurssi puuttuu',
- 'Extended' => 'Pidennetty',
- 'Fax' => 'Faksi',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Otsikko',
- 'ID' => 'ID',
- 'In-line' => 'Linjalla',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Income Statement' => 'Tuloslaskelma',
- 'Invoice' => 'Lasku',
- 'Invoice Date' => 'Laskun päiväys',
- 'Invoice Date missing!' => 'Laskun päiväys puuttuu!',
- 'Invoice Number' => 'Laskun numero',
- 'Invoice Number missing!' => 'Laskun numero puuttuu!',
- 'Invoice deleted!' => 'Lasku poistettu!',
- 'Invoice posted!' => 'Lasku kirjattu!',
- 'Item not on file!' => 'Nimikettä ei ole järjestelmässä!',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Language' => 'Kieli',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'N/A' => 'Ei saatavilla',
- 'No.' => 'no',
- 'Notes' => 'Lisätietoja',
- 'Nothing selected!' => 'Mitään valitsematta!',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Number missing in Row' => 'Numero puuttuu kannan riviltä',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Open' => 'Avoinna',
- 'Order' => 'Tilaus',
- 'Order Date missing!' => 'Tilauspäivämäärä puuttuu!',
- 'Order Number' => 'Tilausnumero',
- 'Order Number missing!' => 'Tilausnumero puuttuu!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakkauslista',
- 'Packing List Date missing!' => 'Pakkauslistan päiväys puuttuu!',
- 'Packing List Number missing!' => 'Pakkauslistan numero puuttuu!',
- 'Paid' => 'Maksettu',
- 'Part' => 'Raaka-aine/tarvike',
- 'Payment date missing!' => 'Maksupäivä puuttuu!',
- 'Payments' => 'Maksut',
- 'Phone' => 'Puhelin',
- 'Post' => 'Kirjaa',
- 'Post as new' => 'Kirjaa uutena',
- 'Postscript' => 'Postscript',
- 'Price' => 'Hinta',
- 'Print' => 'Tulosta',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Purchase Order' => 'Ostotilaus',
- 'Qty' => 'Määrä',
- 'Recd' => 'Vastaanotettu',
- 'Receipt' => 'Kuitti',
- 'Receipts' => 'Kuitit',
- 'Record in' => 'Talleta tilille',
- 'Remaining' => 'Jäljellä',
- 'Report for' => 'Raportti',
- 'Required by' => 'Toimituspäivä',
- 'Sales Order' => 'Tilausvahvistus',
- 'Screen' => 'Näyttö',
- 'Select all' => 'Valitse kaikki',
- 'Select from one of the items below' => 'Valitse yksi nimike alapuolelta',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Service' => 'Palvelu',
- 'Ship' => 'Lähetä',
- 'Ship to' => 'Toimitusosoite',
- 'Ship via' => 'Lähetä kautta',
- 'Source' => 'Lähde',
- 'Standard' => 'Vakio',
- 'Statement' => 'Tiliote',
- 'Statement sent to' => 'Tiliote lähetetty',
- 'Statements sent to printer!' => 'Tiliotteet lähetetty tulostimelle!',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax Included' => 'ALV sisältyy ',
- 'Tax collected' => 'Veroa kerätty',
- 'Tax paid' => 'Veroa maksettu ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Transaction deleted!' => 'Vienti poistettu!',
- 'Transaction posted!' => 'Vienti kirjattu!',
- 'Trial Balance' => 'Saldolista',
- 'Unit' => 'Yksikkö',
- 'Update' => 'Päivitä',
- 'Vendor' => 'Toimittaja',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'What type of item is this?' => 'Minkä tyyppinen nimike tämä on?',
- 'Yes' => 'Kyllä',
- 'as at' => 'päivänä ',
- 'ea' => 'kpl',
- 'for Period' => 'jaksolta',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'myyntitapahtuma' => 'ar_transaction',
- 'jatka' => 'continue',
- 'poista' => 'delete',
- 'sähköposti' => 'e_mail',
- 'kirjaa' => 'post',
- 'kirjaa_uutena' => 'post_as_new',
- 'tulosta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'tilausvahvistus' => 'sales_order',
- 'valitse_kaikki' => 'select_all',
- 'toimitusosoite' => 'ship_to',
- 'päivitä' => 'update',
- 'kyllä' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/pw b/sql-ledger/locale/fi/pw
deleted file mode 100644
index 61ee049..0000000
--- a/sql-ledger/locale/fi/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Jatka',
- 'Password' => 'Salasana',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'jatka' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/rc b/sql-ledger/locale/fi/rc
deleted file mode 100644
index f11b84d..0000000
--- a/sql-ledger/locale/fi/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Tili',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Balance' => 'Tase',
- 'Continue' => 'Jatka',
- 'Current' => 'Erääntyy',
- 'Date' => 'Päiväys',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Deposit' => 'Rahatallennus',
- 'Description' => 'Kuvaus',
- 'Difference' => 'Ero',
- 'Done' => 'Suoritettu!',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Out of balance!' => 'Ei tasapainossa',
- 'Payment' => 'Maksu',
- 'Reconciliation' => 'Sovitus',
- 'Select all' => 'Valitse kaikki',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Source' => 'Lähde',
- 'Statement Balance' => 'Tiliotteen tase',
- 'To' => 'Hetkeen',
- 'Update' => 'Päivitä',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'jatka' => 'continue',
- 'suoritettu!' => 'done',
- 'valitse_kaikki' => 'select_all',
- 'päivitä' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fi/rp b/sql-ledger/locale/fi/rp
deleted file mode 100644
index 8e181e9..0000000
--- a/sql-ledger/locale/fi/rp
+++ /dev/null
@@ -1,146 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Erääntyvät ostolaskut',
- 'AR Aging' => 'Erääntyvät myyntilaskut',
- 'Account' => 'Tili',
- 'Account Number' => 'Tilinumero',
- 'Accounting Menu' => 'Kirjanpitovalikko',
- 'Accounts' => 'Tilit',
- 'Address' => 'Osoite',
- 'Amount' => 'Summa',
- 'Apr' => 'Huh',
- 'April' => 'Huhtikuu',
- 'Attachment' => 'Liite',
- 'Aug' => 'Elo',
- 'August' => 'Elokuu',
- 'Balance' => 'Tase',
- 'Balance Sheet' => 'Taselaskelma',
- 'Bcc' => 'Näkymätön kopio',
- 'Cash' => 'Käteiskauppa',
- 'Cc' => 'Kopio',
- 'Compare to' => 'verrattuna',
- 'Continue' => 'Jatka',
- 'Copies' => 'Kopiot',
- 'Credit' => 'Kredit',
- 'Curr' => 'Valuutta',
- 'Current' => 'Erääntyy',
- 'Customer' => 'Asiakas',
- 'Customer not on file!' => 'Asiakas ei järjestelmässä!',
- 'Date' => 'Päiväys',
- 'Debit' => 'Debet',
- 'Dec' => 'Jou',
- 'December' => 'Joulukuu',
- 'Decimalplaces' => 'Desimaalipaikkoja',
- 'Description' => 'Kuvaus',
- 'Due Date' => 'Eräpäivä',
- 'E-mail' => 'Sähköposti',
- 'E-mail Statement to' => 'Sähköpostilla tiliote kenelle',
- 'E-mail address missing!' => 'Sähköpostiosoite puuttuu!',
- 'Feb' => 'Hel',
- 'February' => 'Helmikuu',
- 'From' => 'Alkaen',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Otsikko',
- 'ID' => 'ID',
- 'In-line' => 'Linjalla',
- 'Include in Report' => 'Sisällytä raporttiin',
- 'Income Statement' => 'Tuloslaskelma',
- 'Invoice' => 'Lasku',
- 'Jan' => 'Tam',
- 'January' => 'Tammikuu',
- 'Jul' => 'Hei',
- 'July' => 'Heinäkuu',
- 'Jun' => 'Kes',
- 'June' => 'Kesäkuu',
- 'Language' => 'Kieli',
- 'Mar' => 'Maa',
- 'March' => 'Maaliskuu',
- 'May' => 'Tou',
- 'May ' => 'Toukokuu',
- 'Message' => 'Viesti',
- 'N/A' => 'Ei saatavilla',
- 'Nothing selected!' => 'Mitään valitsematta!',
- 'Nov' => 'Mar',
- 'November' => 'Marraskuu',
- 'Number' => 'Numero',
- 'Oct' => 'Lok',
- 'October' => 'Lokakuu',
- 'Order' => 'Tilaus',
- 'PDF' => 'PDF',
- 'Payments' => 'Maksut',
- 'Postscript' => 'Postscript',
- 'Print' => 'Tulosta',
- 'Project' => 'Projekti',
- 'Project not on file!' => 'Projekti ei ole järjestelmässä!',
- 'Receipts' => 'Kuitit',
- 'Report for' => 'Raportti',
- 'Screen' => 'Näyttö',
- 'Select all' => 'Valitse kaikki',
- 'Select from one of the names below' => 'Valitse yksi nimi alapuolelta',
- 'Select from one of the projects below' => 'Valitse yksi projekti alapuolelta',
- 'Select postscript or PDF!' => 'Valitse postscript tai PDF',
- 'Sep' => 'Syy',
- 'September' => 'Syyskuu',
- 'Source' => 'Lähde',
- 'Standard' => 'Vakio',
- 'Statement' => 'Tiliote',
- 'Statement sent to' => 'Tiliote lähetetty',
- 'Statements sent to printer!' => 'Tiliotteet lähetetty tulostimelle!',
- 'Subject' => 'Aihe',
- 'Subtotal' => 'Välisumma',
- 'Tax' => 'Vero',
- 'Tax collected' => 'Veroa kerätty',
- 'Tax paid' => 'Veroa maksettu ',
- 'To' => 'Hetkeen',
- 'Total' => 'Yhteensä',
- 'Trial Balance' => 'Saldolista',
- 'Vendor' => 'Toimittaja',
- 'Vendor not on file!' => 'Toimittajaa ei järjestelmässä!',
- 'as at' => 'päivänä ',
- 'for Period' => 'jaksolta',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'jatka' => 'continue',
- 'sähköposti' => 'e_mail',
- 'tulosta' => 'print',
- 'valitse_kaikki' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/COPYING b/sql-ledger/locale/fr/COPYING
deleted file mode 100644
index 75dc25f..0000000
--- a/sql-ledger/locale/fr/COPYING
+++ /dev/null
@@ -1,28 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# French texts:
-#
-# Author: Sèbastien Brassard <sbrassar.cgocable.ca>
-# Oscar Buijten <oscar@elbie.com>
-# Wolfgang Sourdeau <wolfgang@contre.com>
-# Aguibou KONE <aguibou.kone@rocketmail.com>
-# Jens-Ingo Brodesser <jens-ingo@all2all.org>
-# Mathieu Chappuis <mathieu.chappuis@nchp.net>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/fr/LANGUAGE b/sql-ledger/locale/fr/LANGUAGE
deleted file mode 100644
index 744b2c3..0000000
--- a/sql-ledger/locale/fr/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-French
diff --git a/sql-ledger/locale/fr/Num2text b/sql-ledger/locale/fr/Num2text
deleted file mode 100644
index cb8b2a5..0000000
--- a/sql-ledger/locale/fr/Num2text
+++ /dev/null
@@ -1,198 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Bruno Leveque <bruno.leveque@net6d.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# this is the french code for printing numbers in text
-#
-#=====================================================================
-
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'Zero',
- 1 => 'Un',
- 2 => 'Deux',
- 3 => 'Trois',
- 4 => 'Quatre',
- 5 => 'Cinq',
- 6 => 'Six',
- 7 => 'Sept',
- 8 => 'Huit',
- 9 => 'Neuf',
- 10 => 'Dix',
- 11 => 'Onze',
- 12 => 'Douze',
- 13 => 'Treize',
- 14 => 'Quatorze',
- 15 => 'Quinze',
- 16 => 'Seize',
- 17 => 'Dix-sept',
- 18 => 'Dix-huit',
- 19 => 'Dix-neuf',
- 20 => 'Vingt',
- 30 => 'Trente',
- 40 => 'Quarante',
- 50 => 'Cinquante',
- 60 => 'Soixante',
- 70 => 'Soixante-dix',
- 80 => 'Quatre-vingt',
- 90 => 'Quatre-vingt-dix',
- 10**2 => 'Cent',
- 10**3 => 'Mille',
- 10**6 => 'Million',
- 10**9 => 'Milliard',
- 10**12 => 'Billion',
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my @a;
- my $i;
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- my $cent=0;
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- $cent=1;
-
- # the one from hundreds
-
- if ($num[0] > 1) {
- push @textnumber, $self->{numbername}{$num[0]};
- }
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
-
- # add hundred designation
- if ($num[0] > 1) {
- if($numblock[$i] > 0) {
- push @textnumber, $self->{numbername}{10**2};
- } else {
- push @textnumber, "$self->{numbername}{10**2}s";
- }
- } else {
- push @textnumber, $self->{numbername}{10**2};
- }
-
- }
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } elsif ($numblock[$i] > 0) {
- # ones
- if ($i == 1) {
- if ($cent == 1) {
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
- $cent = 0;
- } else {
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
- }
-
- # add thousand, million
- if ($i) {
- $num = 10**($i * 3);
- if ($i == 1) {
- push @textnumber, $self->{numbername}{$num};
- } elsif ($numblock[$i] > 1) {
- push @textnumber, "$self->{numbername}{$num}s";
- } else {
- push @textnumber, "$self->{numbername}{$num}";
- }
- }
-
- pop @numblock;
-
- }
-
- join ' ', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- if ($num[0] == 8) {
- if ($num[1] > 0) {
- $textnumber = $self->{numbername}{$num[0]*10};
- } else {
- $textnumber = "$self->{numbername}{$num[0]*10}s";
- }
- } else {
- $textnumber = $self->{numbername}{$num[0]*10};
- }
- $amount = $num[1];
- } else {
- $textnumber = "$self->{numbername}{$amount}I";
- $amount = 0;
- }
-
- $textnumber .= " ".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/fr/admin b/sql-ledger/locale/fr/admin
deleted file mode 100644
index ca9ef01..0000000
--- a/sql-ledger/locale/fr/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Contrôle d\'accès',
- 'Accounting' => 'Comptabilité',
- 'Add User' => 'Ajouter utilisateur',
- 'Address' => 'Adresse',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrateur',
- 'All Datasets up to date!' => 'Tous les fichiers de données sont à jour!',
- 'Cannot create Lock!' => 'Impossible de verrouiller le fichier!',
- 'Change Admin Password' => 'Modifier mot de passe administrateur',
- 'Change Password' => 'Modifier mot de passe',
- 'Character Set' => 'Encodage des caractères',
- 'Click on login name to edit!' => 'Cliquer sur votre identifiant pour editer!',
- 'Company' => 'Société',
- 'Connect to' => 'Connecter à',
- 'Continue' => 'Continuer',
- 'Create Chart of Accounts' => 'Créer le plan comptable',
- 'Create Dataset' => 'Créer fichier de données',
- 'DBI not installed!' => 'DBI non installée!',
- 'Database' => 'Base de données',
- 'Database Administration' => 'Gérer base de données',
- 'Database Driver not checked!' => 'Pilotes de base de données non verifiés!',
- 'Database User missing!' => 'Utilisateur base de données manquant!',
- 'Dataset' => 'Fichier de données',
- 'Dataset missing!' => 'Fichier de données manquant!',
- 'Dataset updated!' => 'Base de données mise à jour!',
- 'Date Format' => 'Format de date',
- 'Delete' => 'Supprimer',
- 'Delete Dataset' => 'Supprimer fichier de données',
- 'Directory' => 'Répertoire',
- 'Driver' => 'Pilote',
- 'Dropdown Limit' => 'Limite de déroulement',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Modifier utilisateur',
- 'Existing Datasets' => 'Fichiers de données existants',
- 'Fax' => 'Fax',
- 'Host' => 'Hôte',
- 'Hostname missing!' => 'Nom de l\'hôte manquant',
- 'Language' => 'Langue',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laisser "port" et "hôte" vide, sauf si vous voulez vous connecter à distance (par réseau)',
- 'Lock System' => 'Verrouiller le système',
- 'Lockfile created!' => 'Verrouillage en place!',
- 'Lockfile removed!' => 'Verrouillage enlevé!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Nom d\'utilisateur manquant!',
- 'Logout' => 'Déconnexion',
- 'Manager' => 'Gestionnaire',
- 'Menu Width' => 'Largeur menu',
- 'Multibyte Encoding' => 'Encodage multibyte',
- 'Name' => 'Nom',
- 'New Templates' => 'Nouveaux squelettes',
- 'No Database Drivers available!' => 'Pas de pilote de base de données disponible!',
- 'No Dataset selected!' => 'Pas de fichier de données sélectionné!',
- 'Nothing to delete!' => 'Rien à supprimer',
- 'Number Format' => 'Format des numéros',
- 'Oracle Database Administration' => 'Administration de base de données Oracle',
- 'Password' => 'Mot de passe',
- 'Password changed!' => 'Mot de passe modifié!',
- 'Pg Database Administration' => 'Administration base de données PostgreSQL',
- 'PgPP Database Administration' => 'Administration base de données PgPP',
- 'Phone' => 'Tél.',
- 'Port' => 'Port',
- 'Port missing!' => 'Port manquant!',
- 'Printer' => 'Imprimante',
- 'Save' => 'Enregistrer',
- 'Setup Templates' => 'Configuration des squelettes',
- 'Signature' => 'Signature',
- 'Stylesheet' => 'Feuille de style',
- 'Templates' => 'Squelettes',
- 'The following Datasets are not in use and can be deleted' => 'Les fichiers de données suivants ne sont pas utilisés et peuvent être supprimés.',
- 'The following Datasets need to be updated' => 'Les fichiers de données suivants doivent être mis à jour',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Ceci est un test préliminaire des sources existantes. Aucune modification à ce stade!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Pour ajouter un utilisateur à un groupe, editer un "nom", changer le "login" et enregistrer. Un nouvel utilisateur avec les mêmes données sera enregistré avec le nouveau "login".',
- 'Unlock System' => 'Déverrouiller le système',
- 'Update Dataset' => 'Mise à jour de la base de données',
- 'Use Templates' => 'Utiliser les squelettes',
- 'User' => 'Utilisateur',
- 'User deleted!' => 'Utilisateur supprimé!',
- 'User saved!' => 'Utilisateur enregistré!',
- 'Version' => 'Version',
- 'You must enter a host and port for local and remote connections!' => 'Vous devez saisir un "hôte" et un "port" pour les connexions distantes!',
- 'does not exist' => 'n\'existe pas!',
- 'is already a member!' => 'est déjà un membre!',
- 'localhost' => 'hôte local',
- 'locked!' => 'verrouillé!',
- 'successfully created!' => 'créé avec succès',
- 'successfully deleted!' => 'supprimé avec succès',
- 'website' => 'site web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'ajouter_utilisateur' => 'add_user',
- 'modifier_mot_de_passe_administrateur' => 'change_admin_password',
- 'modifier_mot_de_passe' => 'change_password',
- 'continuer' => 'continue',
- 'créer_fichier_de_données' => 'create_dataset',
- 'supprimer' => 'delete',
- 'supprimer_fichier_de_données' => 'delete_dataset',
- 'verrouiller_le_système' => 'lock_system',
- 'login' => 'login',
- 'déconnexion' => 'logout',
- 'administration_de_base_de_données_oracle' => 'oracle_database_administration',
- 'administration_base_de_données_postgresql' => 'pg_database_administration',
- 'administration_base_de_données_pgpp' => 'pgpp_database_administration',
- 'enregistrer' => 'save',
- 'déverrouiller_le_système' => 'unlock_system',
- 'mise_à_jour_de_la_base_de_données' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/all b/sql-ledger/locale/fr/all
deleted file mode 100644
index ebb5ebe..0000000
--- a/sql-ledger/locale/fr/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Dépenses',
- 'AP Aging' => 'Dépenses exigibles',
- 'AP Outstanding' => 'Dépenses en retard',
- 'AP Transaction' => 'Écriture dépenses',
- 'AP Transactions' => 'Mouvements - Dépenses',
- 'AR' => 'Recettes',
- 'AR Aging' => 'Recettes exigibles',
- 'AR Outstanding' => 'Recettes en retard',
- 'AR Transaction' => 'Écriture recettes',
- 'AR Transactions' => 'Mouvements - Recettes',
- 'About' => 'À propos',
- 'Above' => 'En dessus',
- 'Access Control' => 'Contrôle d\'accès',
- 'Account' => 'Compte',
- 'Account Number' => 'Numéro de compte',
- 'Account Number missing!' => 'Numéro de compte manquant!',
- 'Account Type' => 'Type de compte',
- 'Account Type missing!' => 'Type de compte manquant!',
- 'Account deleted!' => 'Compte supprimé',
- 'Account does not exist!' => 'Compte non existant!',
- 'Account saved!' => 'Compte enregistré',
- 'Accounting' => 'Comptabilité',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Accounts' => 'Comptes',
- 'Accrual' => 'Accumulation',
- 'Activate Audit trails' => 'Activer clôture',
- 'Active' => 'Actif',
- 'Add' => 'Ajouter',
- 'Add AP Transaction' => 'Ajouter une dépense',
- 'Add AR Transaction' => 'Ajouter une recette',
- 'Add Account' => 'Ajouter compte',
- 'Add Assembly' => 'Ajouter produit',
- 'Add Business' => 'Ajouter type d\'affaire',
- 'Add Cash Transfer Transaction' => 'Saisie d\'écriture - Virements internes',
- 'Add Customer' => 'Ajouter client',
- 'Add Deduction' => 'Ajouter prélèvement',
- 'Add Department' => 'Ajouter service',
- 'Add Employee' => 'Ajouter employé',
- 'Add Exchange Rate' => 'Ajouter taux de change',
- 'Add GIFI' => 'Ajouter code d\'identification comptable ou fiscale',
- 'Add General Ledger Transaction' => 'Ajouter une écriture au grand-livre',
- 'Add Group' => 'Ajouter groupe',
- 'Add Labor/Overhead' => 'Ajouter coût de production',
- 'Add Language' => 'Ajouter langue',
- 'Add POS Invoice' => 'Saisie ticket de caisse',
- 'Add Part' => 'Ajouter marchandise',
- 'Add Pricegroup' => 'Ajouter groupe de prix',
- 'Add Project' => 'Ajouter projet',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add SIC' => 'Ajouter code secteur économique',
- 'Add Sales Invoice' => 'Établir facture de vente',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Add Service' => 'Ajouter prestation',
- 'Add Transaction' => 'Saisie d\'écriture',
- 'Add User' => 'Ajouter utilisateur',
- 'Add Vendor' => 'Ajouter fournisseur',
- 'Add Vendor Invoice' => 'Établir facture d\'achat',
- 'Add Warehouse' => 'Ajouter entrepôt',
- 'Address' => 'Adresse',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administrateur',
- 'After Deduction' => 'Après prélèvement',
- 'All' => 'Tous',
- 'All Accounts' => 'Afficher tous les comptes',
- 'All Datasets up to date!' => 'Tous les fichiers de données sont à jour!',
- 'All Items' => 'Tout objet',
- 'Allowances' => 'Indemnités',
- 'Amount' => 'Montant',
- 'Amount Due' => 'Montant dû',
- 'Amount missing!' => 'Montant manquant!',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Invoice Number' => 'Êtes-vous sûr de vouloir supprimer la facture n°',
- 'Are you sure you want to delete Order Number' => 'Êtes vous sûr de vouloir supprimer la commande n°',
- 'Are you sure you want to delete Quotation Number' => 'Êtes vous sûr de vouloir supprimer le devis n°',
- 'Are you sure you want to delete Transaction' => 'Êtes vous sûr de vouloir effacer la saisie?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Êtes vous sûr de vouloir enlever les objets sélectionnés de la queue?',
- 'Assemblies' => 'Produits finis',
- 'Assemblies restocked!' => 'Renvoyer produits vers stock!',
- 'Assembly' => 'Produit fini',
- 'Asset' => 'Actif',
- 'Attachment' => 'Pièce jointe',
- 'Audit Control' => 'Clôture périodique',
- 'Audit trail removed up to' => 'Clôture annulée jusqu\'au',
- 'Audit trails disabled' => 'Clôture desactivée',
- 'Audit trails enabled' => 'Clôture activée',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'BIC' => 'BIC',
- 'BOM' => 'Nomenclature composantes',
- 'Backup' => 'Sauvegarder',
- 'Backup sent to' => 'Sauvegarde envoyée à',
- 'Balance' => 'Solde',
- 'Balance Sheet' => 'Bilan',
- 'Based on' => 'Basé sur',
- 'Batch Printing' => 'Impression groupée',
- 'Bcc' => 'Copie cachée',
- 'Before Deduction' => 'Avant prélèvement',
- 'Beginning Balance' => 'Solde du départ',
- 'Below' => 'En dessous',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Bin Lists' => 'Liste des emplacements',
- 'Books are open' => 'Début exercice',
- 'Break' => 'Rupture',
- 'Business' => 'Type d\'affaire',
- 'Business Number' => 'Numéro d\'enregistrement société',
- 'Business deleted!' => 'Type d\'affaire effacé!',
- 'Business saved!' => 'Type d\'affaire enregistré!',
- 'C' => 'C',
- 'COGS' => 'Coût des produits vendus',
- 'Cannot create Lock!' => 'Impossible de verrouiller le fichier!',
- 'Cannot delete account!' => 'Impossible de supprimer le compte!',
- 'Cannot delete customer!' => 'Impossible de supprimer le client!',
- 'Cannot delete default account!' => 'Impossible de supprimer le compte par défaut!',
- 'Cannot delete invoice!' => 'Impossible de supprimer la facture!',
- 'Cannot delete item!' => 'Impossible de supprimer l\'objet!',
- 'Cannot delete order!' => 'Impossible de supprimer la commande!',
- 'Cannot delete quotation!' => 'Impossible de supprimer le devis!',
- 'Cannot delete transaction!' => 'Impossible de supprimer la saisie!',
- 'Cannot delete vendor!' => 'Impossible de supprimer le fournisseur!',
- 'Cannot post Payment!' => 'Impossible d\'enregistrer le paiement!',
- 'Cannot post Receipt!' => 'Impossible d\'enregistrer le reçu!',
- 'Cannot post invoice for a closed period!' => 'Impossible d\'enregistrer la facture sur un exercice clos!',
- 'Cannot post invoice!' => 'Impossible d\'enregistrer la facture!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cannot post transaction for a closed period!' => 'Impossible d\'enregistrer l\'écriture sur un exercice clos!',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Cannot process payment for a closed period!' => 'Impossible de faire un paiement sur un exercice clos!',
- 'Cannot remove files!' => 'Impossible d\'effacer les fichiers!',
- 'Cannot save account!' => 'Impossible d\'enregistrer le compte!',
- 'Cannot save defaults!' => 'Impossible d\'enregistrer les valeurs par défaut!',
- 'Cannot save order!' => 'Impossible d\'enregistrer la commande!',
- 'Cannot save preferences!' => 'Impossible d\'enregistrer les préférences',
- 'Cannot save quotation!' => 'Impossible d\'enregistrer le devis!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Impossible d\'enregistrer le compte simultanément en tant que compte de recettes, dépenses ou service',
- 'Cannot set multiple options for' => 'Impossible de choisir plusieurs options pour',
- 'Cannot set multiple options for Parts Inventory' => 'Impossible de choisir plusieurs options pour l\'inventaire marchandises',
- 'Cannot set multiple options for Service Items' => 'Impossible de choisir plusieurs options pour les types prestations',
- 'Cannot stock assemblies!' => 'Impossible de stocker l\'assemblage!',
- 'Cash' => 'Financier',
- 'Cc' => 'Copie',
- 'Change' => 'Retour monnaie',
- 'Change Admin Password' => 'Modifier mot de passe administrateur',
- 'Change Password' => 'Modifier mot de passe',
- 'Character Set' => 'Encodage des caractères',
- 'Chart of Accounts' => 'Plan Comptable',
- 'Check' => 'Chèque',
- 'Check Inventory' => 'Listing chèques',
- 'Checks' => 'Chèques',
- 'City' => 'Ville',
- 'Cleared' => 'Lettré',
- 'Click on login name to edit!' => 'Cliquer sur votre identifiant pour editer!',
- 'Close Books up to' => 'Clôturer l\'exercice jusqu\'au',
- 'Closed' => 'Clôturé',
- 'Code' => 'Code',
- 'Code missing!' => 'Code manquant!',
- 'Company' => 'Société',
- 'Company Name' => 'Nom de société',
- 'Compare to' => 'Comparer à',
- 'Components' => 'Composants',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmer!',
- 'Connect to' => 'Connecter à',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Contra' => 'Contrepartie',
- 'Copies' => 'Copies',
- 'Copy to COA' => 'Copier dans le plan comptable',
- 'Cost' => 'Coût',
- 'Cost Center' => 'Axé coûts',
- 'Could not save pricelist!' => 'Enregistrement de la liste de prix impossible!',
- 'Could not save!' => 'Enregistrement impossible!',
- 'Could not transfer Inventory!' => 'Impossible de transférer l\'inventaire!',
- 'Country' => 'Pays',
- 'Create Chart of Accounts' => 'Créer le plan comptable',
- 'Create Dataset' => 'Créer fichier de données',
- 'Credit' => 'Crédit',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Current Earnings' => 'Bénéfice de l\'exercice',
- 'Customer' => 'Client',
- 'Customer History' => 'Historique client',
- 'Customer Number' => 'Numéro de client',
- 'Customer deleted!' => 'Client supprimé!',
- 'Customer missing!' => 'Client manquant!',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Customer saved!' => 'Client enregistré!',
- 'Customers' => 'Clients',
- 'DBI not installed!' => 'DBI non installée!',
- 'DOB' => '',
- 'Database' => 'Base de données',
- 'Database Administration' => 'Gérer base de données',
- 'Database Driver not checked!' => 'Pilotes de base de données non verifiés!',
- 'Database Host' => 'Hôte de base de données',
- 'Database User missing!' => 'Utilisateur base de données manquant!',
- 'Dataset' => 'Fichier de données',
- 'Dataset is newer than version!' => 'Fichier de données plus récent que le logiciel!',
- 'Dataset missing!' => 'Fichier de données manquant!',
- 'Dataset updated!' => 'Base de données mise à jour!',
- 'Date' => 'Date',
- 'Date Format' => 'Format de date',
- 'Date Paid' => 'Date de paiement',
- 'Date Received' => 'Date de réception',
- 'Date missing!' => 'Date manquante!',
- 'Date received missing!' => 'Date de réception manquante!',
- 'Debit' => 'Débit',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Decimalplaces' => 'Décimales',
- 'Decrease' => 'Diminution',
- 'Deduct after' => 'Prélèver après',
- 'Deduction deleted!' => 'Prélèvement supprimé!',
- 'Deduction saved!' => 'Prélèvement enrégistré!',
- 'Deductions' => 'Prélèvements',
- 'Defaults' => 'Valeurs par défaut',
- 'Defaults saved!' => 'Valeurs par défaut enrégistrées!',
- 'Delete' => 'Supprimer',
- 'Delete Account' => 'Supprimer compte',
- 'Delete Dataset' => 'Supprimer fichier de données',
- 'Delivery Date' => 'Date de livraison',
- 'Department' => 'Service',
- 'Department deleted!' => 'Service effacé!',
- 'Department saved!' => 'Service enregistré!',
- 'Departments' => 'Services',
- 'Deposit' => 'Dépôt',
- 'Description' => 'Description',
- 'Description Translations' => 'Description traductions',
- 'Description missing!' => 'Description manquante!',
- 'Detail' => 'Détail',
- 'Difference' => 'Différence',
- 'Directory' => 'Répertoire',
- 'Discount' => 'Remise',
- 'Done' => 'Fait!',
- 'Drawing' => 'Dessin',
- 'Driver' => 'Pilote',
- 'Dropdown Limit' => 'Limite de déroulement',
- 'Due Date' => 'Échéance',
- 'Due Date missing!' => 'Date d\'échéance manquante!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Message éléctronique à',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit' => 'Modifier',
- 'Edit AP Transaction' => 'Modifier une dépense',
- 'Edit AR Transaction' => 'Modifier une recette',
- 'Edit Account' => 'Modifier le compte',
- 'Edit Assembly' => 'Modifier produit fini / transformé',
- 'Edit Business' => 'Modifier type d\'affaire',
- 'Edit Cash Transfer Transaction' => 'Modifier virements internes',
- 'Edit Customer' => 'Modifier client',
- 'Edit Deduction' => 'Modifier prélèvement',
- 'Edit Department' => 'Modifier service de l\'entreprise',
- 'Edit Description Translations' => 'Modifier traductions description',
- 'Edit Employee' => 'Modifier employé',
- 'Edit GIFI' => 'Modifier code d\'identification comptable ou fiscale',
- 'Edit General Ledger Transaction' => 'Modifier écriture grand-livre',
- 'Edit Group' => 'Modifier groupe',
- 'Edit Labor/Overhead' => 'Modifier coût de production',
- 'Edit Language' => 'Modifier langue',
- 'Edit POS Invoice' => 'Modifier ticket de caisse',
- 'Edit Part' => 'Modifier marchandise',
- 'Edit Preferences for' => 'Modifier les préférences pour',
- 'Edit Pricegroup' => 'Modifier groupe de prix',
- 'Edit Project' => 'Modifier projet',
- 'Edit Purchase Order' => 'Modifier commande d\'achat',
- 'Edit Quotation' => 'Modifier devis',
- 'Edit Request for Quotation' => 'Modifier demande de devis',
- 'Edit SIC' => 'Modifier code de secteur économique',
- 'Edit Sales Invoice' => 'Modifier facture de vente',
- 'Edit Sales Order' => 'Modifier commande de vente',
- 'Edit Service' => 'Modifier service',
- 'Edit Template' => 'Modifier squelette',
- 'Edit User' => 'Modifier utilisateur',
- 'Edit Vendor' => 'Modifier fournisseur',
- 'Edit Vendor Invoice' => 'Modifier facture de fournisseur',
- 'Edit Warehouse' => 'Modifier entrepôt',
- 'Employee' => 'Employé',
- 'Employee Name' => 'Nom employé',
- 'Employee Number' => 'Numéro d\'employé',
- 'Employee deleted!' => 'Employé effacé!',
- 'Employee pays' => 'Employé pays',
- 'Employee saved!' => 'Employé enregistré',
- 'Employees' => 'Employés',
- 'Employer' => 'Employeur',
- 'Employer pays' => 'Employeur pays',
- 'Enddate' => 'Date de fin',
- 'Enforce transaction reversal for all dates' => 'Appliquer l\'inversion des écritures pour toutes les dates',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entrer le nom de la monnaie nationale et des monnaies étrangères en 3 lettres séparées par (:) (Ex: EUR:USD:CAD)',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Existing Datasets' => 'Fichiers de données existants',
- 'Expense' => 'Dépenses',
- 'Expense Account' => 'Compte de dépenses',
- 'Expense/Asset' => 'Dépenses/actif',
- 'Extended' => 'Prix total',
- 'FX' => 'Devises',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'Foreign Exchange Gain' => 'Produit conversion devises',
- 'Foreign Exchange Loss' => 'Perte conversion devises',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'GIFI deleted!' => 'Code d\'identification comptable ou fiscale supprimé!',
- 'GIFI missing!' => 'Code d\'identification comptable ou fiscale manquant!',
- 'GIFI saved!' => 'Code d\'identification comptable ou fiscale enregistré!',
- 'GL Transaction' => 'Transaction grand-livre',
- 'General Ledger' => 'Grand-livre',
- 'Goods & Services' => 'Articles & Prestations',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'Group Translations' => 'Grouper traductions',
- 'Group deleted!' => 'Groupe effacé!',
- 'Group missing!' => 'Groupe absent!',
- 'Group saved!' => 'Groupe enregistré!',
- 'Groups' => 'Groupes',
- 'HR' => 'Ressources humaines',
- 'HTML Templates' => 'Squelettes HTML',
- 'Heading' => 'En-tête',
- 'History' => 'Historique',
- 'Home Phone' => 'Téléphone privé',
- 'Host' => 'Hôte',
- 'Hostname missing!' => 'Nom de l\'hôte manquant',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Image',
- 'In-line' => 'En ligne',
- 'Include Exchange Rate Difference' => 'Inclure différence conversion devises',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Include in drop-down menus' => 'Inclure dans les menus déroulants',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Afficher ce compte sur les formulaires de client/fournisseur pour marquer le client/fournisseur comme imposable?',
- 'Income' => 'Recettes',
- 'Income Account' => 'Compte de recettes',
- 'Income Statement' => 'Compte de résultat',
- 'Incorrect Dataset version!' => 'Fichier de données incorrect!',
- 'Incorrect Password!' => 'Mot de passe incorrect!',
- 'Increase' => 'Augmentation',
- 'Individual Items' => 'Composition en marchandises individuelles',
- 'Internal Notes' => 'Notes internes',
- 'Inventory' => 'Inventaire',
- 'Inventory Account' => 'Compte de stock',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantité en stock doit être zéro avant de pouvoir annuler cet assemblage!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantité en stock doit être zero avant de pouvoir annuler cette pièce!',
- 'Inventory saved!' => 'Inventaire enregistré!',
- 'Inventory transferred!' => 'Inventaire transféré!',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Invoice deleted!' => 'Facture supprimée!',
- 'Invoice posted!' => 'Facture enregistrée!',
- 'Invoice processed!' => 'Facture passée!',
- 'Invoices' => 'Factures',
- 'Is this a summary account to record' => 'Est-ce que c\'est un compte sommaire à enregistrer?',
- 'Item already on pricelist!' => 'Objet déjà présent dans la liste des prix',
- 'Item deleted!' => 'Objet supprimé!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Items' => 'Objets',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'LaTeX Templates' => 'Squelettes LaTeX',
- 'Labor/Overhead' => 'Coût de production',
- 'Language' => 'Langue',
- 'Language deleted!' => 'Langue effacée!',
- 'Language saved!' => 'Langue enregistrée!',
- 'Languages' => 'Langues',
- 'Languages not defined!' => 'Langues non définis!',
- 'Last Numbers & Default Accounts' => 'Derniers numéros et comptes par défauts',
- 'Leadtime' => 'Délai',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laisser "port" et "hôte" vide, sauf si vous voulez vous connecter à distance (par réseau)',
- 'Liability' => 'Passif',
- 'Licensed to' => 'Licence à',
- 'Line Total' => 'Total ligne',
- 'Link' => 'Liens',
- 'Link Accounts' => 'Lier comptes',
- 'List' => 'Liste',
- 'List Accounts' => 'Liste des comptes',
- 'List Businesses' => 'Liste types d\'affaire',
- 'List Departments' => 'Liste des services',
- 'List GIFI' => 'Afficher la liste des codes d\'identification comptable ou fiscale',
- 'List Languages' => 'Liste des langues',
- 'List Price' => 'Prix de revient',
- 'List Projects' => 'Liste des projets',
- 'List SIC' => 'Liste des codes secteur économique',
- 'List Transactions' => 'Afficher écritures',
- 'List Warehouses' => 'Liste des entrepôts',
- 'Lock System' => 'Verrouiller le système',
- 'Lockfile created!' => 'Verrouillage en place!',
- 'Lockfile removed!' => 'Verrouillage enlevé!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Nom d\'utilisateur manquant!',
- 'Logout' => 'Déconnexion',
- 'Make' => 'Marque',
- 'Manager' => 'Gestionnaire',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'Marked entries printed!' => 'Éléments marqués imprimés!',
- 'Markup' => 'Majoration',
- 'Maximum' => 'Maximum',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Menu Width' => 'Largeur menu',
- 'Message' => 'Message',
- 'Method' => 'Méthode',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modèle',
- 'Month' => 'Mois',
- 'Multibyte Encoding' => 'Encodage multibyte',
- 'N/A' => 'Non applicable',
- 'Name' => 'Nom',
- 'Name missing!' => 'Nom manquant!',
- 'New Templates' => 'Nouveaux squelettes',
- 'No' => 'Non',
- 'No Database Drivers available!' => 'Pas de pilote de base de données disponible!',
- 'No Dataset selected!' => 'Pas de fichier de données sélectionné!',
- 'No email address for' => 'Pas d\'adresse email pour',
- 'No.' => 'N°',
- 'Non-taxable' => 'Non imposable',
- 'Non-taxable Purchases' => 'Achats hors taxe',
- 'Non-taxable Sales' => 'Ventes hors taxe',
- 'Notes' => 'Notes',
- 'Nothing entered!' => 'Rien n\'a été saisi!',
- 'Nothing outstanding for ' => 'Aucun rétard concernant ',
- 'Nothing selected!' => 'Pas de sélection!',
- 'Nothing to delete!' => 'Rien à supprimer',
- 'Nothing to print!' => 'Rien à imprimer',
- 'Nothing to transfer!' => 'Rien à transférer!',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number Format' => 'Format des numéros',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'O' => 'O',
- 'Obsolete' => 'Obsolète',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'On Hand' => 'En Stock / disponible',
- 'Open' => 'Ouvert',
- 'Oracle Database Administration' => 'Administration de base de données Oracle',
- 'Order' => 'Commande',
- 'Order Date' => 'Date de commande',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Entry' => 'Commandes',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'Order deleted!' => 'Commande supprimée!',
- 'Order processed!' => 'Commande passée!',
- 'Order saved!' => 'Commande enregistrée!',
- 'Orphaned' => 'Orphelin',
- 'Out of balance transaction!' => 'Écriture non-soldée!',
- 'Out of balance!' => 'Non-soldée!',
- 'Outstanding' => 'En retard',
- 'PDF' => 'PDF',
- 'POS' => 'Point de vente',
- 'POS Invoice' => 'Ticket de caisse',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Packing Lists' => 'Listes d\'envoi',
- 'Paid' => 'Total payé',
- 'Part' => 'Marchandise',
- 'Part Number' => 'Numéro de marchandise',
- 'Partnumber' => 'Numéro de marchandise',
- 'Parts' => 'Marchandises',
- 'Parts Inventory' => 'Inventaire marchandises',
- 'Password' => 'Mot de passe',
- 'Password changed!' => 'Mot de passe modifié!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'À payer',
- 'Payment' => 'Paiement',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payment posted!' => 'Paiement enregistré!',
- 'Payments' => 'Paiements',
- 'Payroll Deduction' => 'Prélèvement salaire',
- 'Period' => 'Période',
- 'Pg Database Administration' => 'Administration base de données PostgreSQL',
- 'PgPP Database Administration' => 'Administration base de données PgPP',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Pick Lists' => 'Liste de sélection',
- 'Port' => 'Port',
- 'Port missing!' => 'Port manquant!',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Posted!' => 'Enregistré!',
- 'Postscript' => 'Postcript',
- 'Preferences' => 'Préférences',
- 'Preferences saved!' => 'Préférences enregistrées!',
- 'Prepayment' => 'Paiement à l\'avance',
- 'Price' => 'Prix',
- 'Pricegroup' => 'Groupe de prix',
- 'Pricegroup deleted!' => 'Groupe de prix supprimé!',
- 'Pricegroup missing!' => 'Groupe de prix manquant!',
- 'Pricegroup saved!' => 'Groupe de prix enregistré!',
- 'Pricegroups' => 'Groupes de prix',
- 'Pricelist' => 'Liste de prix',
- 'Print' => 'Imprimer',
- 'Print and Post' => 'Imprimer et imputer',
- 'Print and Save' => 'Imprimer et sauver',
- 'Printed' => 'Imprimé',
- 'Printer' => 'Imprimante',
- 'Printing ... ' => 'Impression en cours ... ',
- 'Profit Center' => 'Axé profit',
- 'Project' => 'Projet',
- 'Project Description Translations' => 'Traductions description de projet',
- 'Project Number' => 'Numéro de projet',
- 'Project Number missing!' => 'Numéro du projet manquant!',
- 'Project Transactions' => 'Mouvements - Projet',
- 'Project deleted!' => 'Projet supprimé!',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Project saved!' => 'Projet enregistré!',
- 'Projects' => 'Projets',
- 'Purchase Order' => 'Commande d\'achat',
- 'Purchase Order Number' => 'Numéro de commande',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Qty' => 'Qté',
- 'Quantity exceeds available units to stock!' => 'La quantité dépasse le nombred\'unités en stock',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation ' => 'Devis ',
- 'Quotation Date' => 'Date de devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number' => 'Numéro de devis',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Quotation deleted!' => 'Devis effacé!',
- 'Quotations' => 'Devis',
- 'R' => 'R',
- 'RFQ' => 'Demande de devis',
- 'RFQ ' => 'Demande de devis ',
- 'RFQ Number' => 'Numéro de demande de devis',
- 'RFQs' => 'Demandes de devis',
- 'ROP' => 'Seuil réapprovisionnement',
- 'Rate' => 'Taux',
- 'Rate missing!' => 'Taux manquant!',
- 'Recd' => 'Reçu',
- 'Receipt' => 'Reçu',
- 'Receipt posted!' => 'Reçu enregistré!',
- 'Receipts' => 'Reçus',
- 'Receivables' => 'À recevoir',
- 'Receive' => 'Réception',
- 'Receive Merchandise' => 'Réception marchandise',
- 'Reconciliation' => 'Rapprochement',
- 'Reconciliation Report' => 'Rapport de rapprochement',
- 'Record in' => 'Enregistrer dans',
- 'Reference' => 'Référence',
- 'Reference missing!' => 'Référence manquante!',
- 'Remaining' => 'Restant',
- 'Remove' => 'Effacer',
- 'Remove Audit trails up to' => 'Annuler clôture jusqu\'au',
- 'Removed spoolfiles!' => 'File d\'attente impression effacée!',
- 'Removing marked entries from queue ...' => 'Suppression des éléments sélectionnés de la file d\'attente ...',
- 'Report for' => 'Rapport de',
- 'Reports' => 'Rapports',
- 'Request for Quotation' => 'Demande de devis',
- 'Request for Quotations' => 'Demandes de devis',
- 'Required by' => 'Requis pour',
- 'Retained Earnings' => 'Éxcédents non distribués',
- 'Role' => 'Rôle',
- 'S' => 'S',
- 'SIC' => 'Code secteur économique',
- 'SIC deleted!' => 'Code secteur économique effacé!',
- 'SIC saved!' => 'Code secteur économique enregistré!',
- 'SKU' => 'SKU',
- 'SSN' => 'Numéro sécurité sociale',
- 'Sale' => 'Vente',
- 'Sales' => 'Ventes',
- 'Sales Invoice' => 'Facture de vente',
- 'Sales Invoice ' => 'Facture de vente ',
- 'Sales Invoice Number' => 'Numéro de facture de vente',
- 'Sales Invoice.' => 'Facture de vente.',
- 'Sales Invoices' => 'Factures de vente',
- 'Sales Order' => 'Commande de vente',
- 'Sales Order Number' => 'Numéro de commande de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Sales Quotation Number' => 'Numéro de devis de vente',
- 'Salesperson' => 'Vendeur',
- 'Save' => 'Enregistrer',
- 'Save Pricelist' => 'Enregistrer la liste de prix',
- 'Save as new' => 'Enregistrer comme nouveau',
- 'Save to File' => 'Enregistrer dans un fichier',
- 'Screen' => 'Écran',
- 'Search' => 'Recherche',
- 'Select' => 'Sélectionner',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select all' => 'Tout sélectionner',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select payment' => 'Sélectionner le payement',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Vente',
- 'Sell Price' => 'Prix de vente',
- 'Send by E-Mail' => 'Envoyer par e-mail',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Serial Number' => 'Numéro de série',
- 'Service' => 'Prestation de service',
- 'Service Items' => 'Type prestations',
- 'Services' => 'Prestations de services',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configuration des squelettes',
- 'Ship' => 'Expédier',
- 'Ship Merchandise' => 'Expédier marchandise',
- 'Ship to' => 'Expédier à',
- 'Ship via' => 'Expédier via',
- 'Shipping' => 'Expédition',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Shipping Date' => 'Date d\'expédition',
- 'Shipping Date missing!' => 'Date d\'expédition manquante!',
- 'Shipping Point' => 'Expéditeur',
- 'Short' => 'Court',
- 'Signature' => 'Signature',
- 'Source' => 'Source',
- 'Spoolfile' => 'Fichier file d\'attente impression',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => 'Code secteur économique',
- 'Startdate' => 'Date de début',
- 'State' => 'Etat',
- 'State/Province' => 'Région/État',
- 'Statement' => 'Relevé',
- 'Statement Balance' => 'Solde relevé de compte',
- 'Statement sent to' => 'Relevé envoyé à',
- 'Statements sent to printer!' => 'Relevés envoyés à l\'imprimante!',
- 'Stock' => 'Stock',
- 'Stock Assembly' => 'Stock de produits',
- 'Stylesheet' => 'Feuille de style',
- 'Sub-contract GIFI' => 'Code d\'identification comptable ou fiscale - Sous-traitance',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Summary' => 'Résumé',
- 'Supervisor' => '',
- 'System' => 'Système',
- 'System Defaults' => 'Préférences système',
- 'Tax' => 'Taxe',
- 'Tax Accounts' => 'Comptes de taxe',
- 'Tax Included' => 'Taxe incluse',
- 'Tax Number' => 'Numéro de TVA',
- 'Tax Number / SSN' => 'Numéro de TVA / Sécurité Sociale',
- 'Tax collected' => 'Taxe collectée',
- 'Tax paid' => 'Taxe payée',
- 'Taxable' => 'Imposable',
- 'Template saved!' => 'Squelette enregistré!',
- 'Templates' => 'Squelettes',
- 'Terms' => 'Crédit limité à',
- 'Text Templates' => 'Squelettes texte',
- 'The following Datasets are not in use and can be deleted' => 'Les fichiers de données suivants ne sont pas utilisés et peuvent être supprimés.',
- 'The following Datasets need to be updated' => 'Les fichiers de données suivants doivent être mis à jour',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Ceci est un test préliminaire des sources existantes. Aucune modification à ce stade!',
- 'Till' => 'Caisse',
- 'To' => 'au',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Pour ajouter un utilisateur à un groupe, editer un "nom", changer le "login" et enregistrer. Un nouvel utilisateur avec les mêmes données sera enregistré avec le nouveau "login".',
- 'Top Level' => 'Description principale',
- 'Total' => 'Total',
- 'Trade Discount' => 'Escompte commercial',
- 'Transaction' => 'Écriture',
- 'Transaction Date missing!' => 'Date d\'écriture manquante!',
- 'Transaction deleted!' => 'Écriture supprimée!',
- 'Transaction posted!' => 'Écriture enregistrée!',
- 'Transaction reversal enforced for all dates' => 'Inversion des écritures exécutée pour toutes les dates',
- 'Transaction reversal enforced up to' => 'Inversion des écritures exécutée jusqu\'au',
- 'Transactions' => 'Mouvements',
- 'Transfer' => 'Transfert',
- 'Transfer Inventory' => 'Transfert inventaire',
- 'Transfer to' => 'Transférer vers',
- 'Translation' => 'Traduction',
- 'Translation deleted!' => 'Traduction supprimée!',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Translations' => 'Traductions',
- 'Translations saved!' => 'Traductions enregistrées',
- 'Trial Balance' => 'Balance Globale',
- 'Type of Business' => 'Type d\'affaire',
- 'Unit' => 'Unité',
- 'Unit of measure' => 'Unité de mesure',
- 'Unlock System' => 'Déverrouiller le système',
- 'Update' => 'Mettre à jour',
- 'Update Dataset' => 'Mise à jour de la base de données',
- 'Updated' => 'Mis à jour',
- 'Upgrading to Version' => 'Mise à jour à la version',
- 'Use Templates' => 'Utiliser les squelettes',
- 'User' => 'Utilisateur',
- 'User deleted!' => 'Utilisateur supprimé!',
- 'User saved!' => 'Utilisateur enregistré!',
- 'Valid until' => 'Valable jusqu\'au',
- 'Vendor' => 'Fournisseur',
- 'Vendor History' => 'Historique fournisseurs',
- 'Vendor Invoice' => 'Facture d\'achat',
- 'Vendor Invoice ' => 'Facture d\'achat ',
- 'Vendor Invoice Number' => 'Numéro de facture d\'achat ',
- 'Vendor Invoice.' => 'Facture d\'achat.',
- 'Vendor Invoices' => 'Factures d\'achat',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor deleted!' => 'Fournisseur supprimé!',
- 'Vendor missing!' => 'Fournisseur manquant!',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Vendor saved!' => 'Fournisseur enregistré!',
- 'Vendors' => 'Fournisseurs',
- 'Version' => 'Version',
- 'Warehouse' => 'Entrepôt',
- 'Warehouse deleted!' => 'Entrepôt supprimé',
- 'Warehouse saved!' => 'Entrepôt enregistré',
- 'Warehouses' => 'Entrepôts',
- 'Warning!' => 'Attention!',
- 'Weight' => 'Poids',
- 'Weight Unit' => 'Unité de poids',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'Work Orders' => 'Fiche de traitement',
- 'Work Phone' => 'Téléphone travail',
- 'Year' => 'Année',
- 'Yearend' => 'Écriture de fin d\'exercice',
- 'Yearend date missing!' => 'Écriture de fin d\'exercice - date manquante',
- 'Yearend posted!' => 'Écriture de fin d\'exercice enregistrée',
- 'Yearend posting failed!' => 'Échec enregistrement écriture fin d\'exercice!',
- 'Yes' => 'Oui',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Vous n\'avez pas saisi de nom!',
- 'You must enter a host and port for local and remote connections!' => 'Vous devez saisir un "hôte" et un "port" pour les connexions distantes!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'compte ne peut pas être changé vers un autre type de compte',
- 'as at' => 'au',
- 'days' => 'jours',
- 'does not exist' => 'n\'existe pas!',
- 'done' => 'fait',
- 'ea' => 'ch',
- 'for Period' => 'pour la période',
- 'is already a member!' => 'est déjà un membre!',
- 'is not a member!' => 'n\'est pas un membre!',
- 'localhost' => 'hôte local',
- 'locked!' => 'verrouillé!',
- 'posted!' => 'enregistré!',
- 'sent' => 'envoyé',
- 'successfully created!' => 'créé avec succès',
- 'successfully deleted!' => 'supprimé avec succès',
- 'website' => 'site web',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/am b/sql-ledger/locale/fr/am
deleted file mode 100644
index acdda9d..0000000
--- a/sql-ledger/locale/fr/am
+++ /dev/null
@@ -1,256 +0,0 @@
-$self{texts} = {
- 'AP' => 'Dépenses',
- 'AR' => 'Recettes',
- 'About' => 'À propos',
- 'Account' => 'Compte',
- 'Account Number' => 'Numéro de compte',
- 'Account Number missing!' => 'Numéro de compte manquant!',
- 'Account Type' => 'Type de compte',
- 'Account Type missing!' => 'Type de compte manquant!',
- 'Account deleted!' => 'Compte supprimé',
- 'Account does not exist!' => 'Compte non existant!',
- 'Account saved!' => 'Compte enregistré',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Accrual' => 'Accumulation',
- 'Activate Audit trails' => 'Activer clôture',
- 'Add Account' => 'Ajouter compte',
- 'Add Business' => 'Ajouter type d\'affaire',
- 'Add Department' => 'Ajouter service',
- 'Add GIFI' => 'Ajouter code d\'identification comptable ou fiscale',
- 'Add Language' => 'Ajouter langue',
- 'Add SIC' => 'Ajouter code secteur économique',
- 'Add Warehouse' => 'Ajouter entrepôt',
- 'Address' => 'Adresse',
- 'Asset' => 'Actif',
- 'Audit Control' => 'Clôture périodique',
- 'Audit trail removed up to' => 'Clôture annulée jusqu\'au',
- 'Audit trails disabled' => 'Clôture desactivée',
- 'Audit trails enabled' => 'Clôture activée',
- 'Backup sent to' => 'Sauvegarde envoyée à',
- 'Books are open' => 'Début exercice',
- 'Business Number' => 'Numéro d\'enregistrement société',
- 'Business deleted!' => 'Type d\'affaire effacé!',
- 'Business saved!' => 'Type d\'affaire enregistré!',
- 'COGS' => 'Coût des produits vendus',
- 'Cannot delete account!' => 'Impossible de supprimer le compte!',
- 'Cannot delete default account!' => 'Impossible de supprimer le compte par défaut!',
- 'Cannot save account!' => 'Impossible d\'enregistrer le compte!',
- 'Cannot save defaults!' => 'Impossible d\'enregistrer les valeurs par défaut!',
- 'Cannot save preferences!' => 'Impossible d\'enregistrer les préférences',
- 'Cannot set account for more than one of AR, AP or IC' => 'Impossible d\'enregistrer le compte simultanément en tant que compte de recettes, dépenses ou service',
- 'Cannot set multiple options for' => 'Impossible de choisir plusieurs options pour',
- 'Cannot set multiple options for Parts Inventory' => 'Impossible de choisir plusieurs options pour l\'inventaire marchandises',
- 'Cannot set multiple options for Service Items' => 'Impossible de choisir plusieurs options pour les types prestations',
- 'Cash' => 'Financier',
- 'Character Set' => 'Encodage des caractères',
- 'Chart of Accounts' => 'Plan Comptable',
- 'Close Books up to' => 'Clôturer l\'exercice jusqu\'au',
- 'Code' => 'Code',
- 'Code missing!' => 'Code manquant!',
- 'Company' => 'Société',
- 'Continue' => 'Continuer',
- 'Contra' => 'Contrepartie',
- 'Copy to COA' => 'Copier dans le plan comptable',
- 'Cost Center' => 'Axé coûts',
- 'Credit' => 'Crédit',
- 'Customer Number' => 'Numéro de client',
- 'Database Host' => 'Hôte de base de données',
- 'Dataset' => 'Fichier de données',
- 'Date Format' => 'Format de date',
- 'Debit' => 'Débit',
- 'Defaults saved!' => 'Valeurs par défaut enrégistrées!',
- 'Delete' => 'Supprimer',
- 'Delete Account' => 'Supprimer compte',
- 'Department deleted!' => 'Service effacé!',
- 'Department saved!' => 'Service enregistré!',
- 'Departments' => 'Services',
- 'Description' => 'Description',
- 'Description missing!' => 'Description manquante!',
- 'Discount' => 'Remise',
- 'Dropdown Limit' => 'Limite de déroulement',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Modifier',
- 'Edit Account' => 'Modifier le compte',
- 'Edit Business' => 'Modifier type d\'affaire',
- 'Edit Department' => 'Modifier service de l\'entreprise',
- 'Edit GIFI' => 'Modifier code d\'identification comptable ou fiscale',
- 'Edit Language' => 'Modifier langue',
- 'Edit Preferences for' => 'Modifier les préférences pour',
- 'Edit SIC' => 'Modifier code de secteur économique',
- 'Edit Template' => 'Modifier squelette',
- 'Edit Warehouse' => 'Modifier entrepôt',
- 'Employee Number' => 'Numéro d\'employé',
- 'Enforce transaction reversal for all dates' => 'Appliquer l\'inversion des écritures pour toutes les dates',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Entrer le nom de la monnaie nationale et des monnaies étrangères en 3 lettres séparées par (:) (Ex: EUR:USD:CAD)',
- 'Equity' => 'Capital',
- 'Expense' => 'Dépenses',
- 'Expense Account' => 'Compte de dépenses',
- 'Expense/Asset' => 'Dépenses/actif',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Produit conversion devises',
- 'Foreign Exchange Loss' => 'Perte conversion devises',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'GIFI deleted!' => 'Code d\'identification comptable ou fiscale supprimé!',
- 'GIFI missing!' => 'Code d\'identification comptable ou fiscale manquant!',
- 'GIFI saved!' => 'Code d\'identification comptable ou fiscale enregistré!',
- 'Heading' => 'En-tête',
- 'Include in drop-down menus' => 'Inclure dans les menus déroulants',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Afficher ce compte sur les formulaires de client/fournisseur pour marquer le client/fournisseur comme imposable?',
- 'Income' => 'Recettes',
- 'Income Account' => 'Compte de recettes',
- 'Inventory' => 'Inventaire',
- 'Inventory Account' => 'Compte de stock',
- 'Is this a summary account to record' => 'Est-ce que c\'est un compte sommaire à enregistrer?',
- 'Labor/Overhead' => 'Coût de production',
- 'Language' => 'Langue',
- 'Language deleted!' => 'Langue effacée!',
- 'Language saved!' => 'Langue enregistrée!',
- 'Languages' => 'Langues',
- 'Last Numbers & Default Accounts' => 'Derniers numéros et comptes par défauts',
- 'Liability' => 'Passif',
- 'Licensed to' => 'Licence à',
- 'Link' => 'Liens',
- 'Menu Width' => 'Largeur menu',
- 'Method' => 'Méthode',
- 'Name' => 'Nom',
- 'No' => 'Non',
- 'No email address for' => 'Pas d\'adresse email pour',
- 'Number' => 'Numéro',
- 'Number Format' => 'Format des numéros',
- 'Partnumber' => 'Numéro de marchandise',
- 'Parts Inventory' => 'Inventaire marchandises',
- 'Password' => 'Mot de passe',
- 'Payables' => 'À payer',
- 'Payment' => 'Paiement',
- 'Phone' => 'Tél.',
- 'Preferences saved!' => 'Préférences enregistrées!',
- 'Printer' => 'Imprimante',
- 'Profit Center' => 'Axé profit',
- 'Purchase Order Number' => 'Numéro de commande',
- 'RFQ Number' => 'Numéro de demande de devis',
- 'Rate' => 'Taux',
- 'Receivables' => 'À recevoir',
- 'Reference' => 'Référence',
- 'Remove Audit trails up to' => 'Annuler clôture jusqu\'au',
- 'Retained Earnings' => 'Éxcédents non distribués',
- 'SIC deleted!' => 'Code secteur économique effacé!',
- 'SIC saved!' => 'Code secteur économique enregistré!',
- 'Sales Invoice Number' => 'Numéro de facture de vente',
- 'Sales Order Number' => 'Numéro de commande de vente',
- 'Sales Quotation Number' => 'Numéro de devis de vente',
- 'Save' => 'Enregistrer',
- 'Save as new' => 'Enregistrer comme nouveau',
- 'Service Items' => 'Type prestations',
- 'Signature' => 'Signature',
- 'Standard Industrial Codes' => 'Code secteur économique',
- 'Stylesheet' => 'Feuille de style',
- 'System Defaults' => 'Préférences système',
- 'Tax' => 'Taxe',
- 'Tax Accounts' => 'Comptes de taxe',
- 'Template saved!' => 'Squelette enregistré!',
- 'Transaction reversal enforced for all dates' => 'Inversion des écritures exécutée pour toutes les dates',
- 'Transaction reversal enforced up to' => 'Inversion des écritures exécutée jusqu\'au',
- 'Type of Business' => 'Type d\'affaire',
- 'User' => 'Utilisateur',
- 'Vendor Invoice Number' => 'Numéro de facture d\'achat ',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Version' => 'Version',
- 'Warehouse deleted!' => 'Entrepôt supprimé',
- 'Warehouse saved!' => 'Entrepôt enregistré',
- 'Warehouses' => 'Entrepôts',
- 'Weight Unit' => 'Unité de poids',
- 'Yearend' => 'Écriture de fin d\'exercice',
- 'Yearend date missing!' => 'Écriture de fin d\'exercice - date manquante',
- 'Yearend posted!' => 'Écriture de fin d\'exercice enregistrée',
- 'Yearend posting failed!' => 'Échec enregistrement écriture fin d\'exercice!',
- 'Yes' => 'Oui',
- 'account cannot be set to any other type of account' => 'compte ne peut pas être changé vers un autre type de compte',
- 'localhost' => 'hôte local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'ajouter_compte' => 'add_account',
- 'ajouter_type_d\'affaire' => 'add_business',
- 'ajouter_service' => 'add_department',
- 'ajouter_langue' => 'add_language',
- 'ajouter_code_secteur_économique' => 'add_sic',
- 'ajouter_entrepôt' => 'add_warehouse',
- 'continuer' => 'continue',
- 'copier_dans_le_plan_comptable' => 'copy_to_coa',
- 'supprimer' => 'delete',
- 'modifier' => 'edit',
- 'modifier_le_compte' => 'edit_account',
- 'enregistrer' => 'save',
- 'enregistrer_comme_nouveau' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ap b/sql-ledger/locale/fr/ap
deleted file mode 100644
index a00d330..0000000
--- a/sql-ledger/locale/fr/ap
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Dépenses en retard',
- 'AP Transaction' => 'Écriture dépenses',
- 'AP Transactions' => 'Mouvements - Dépenses',
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add AP Transaction' => 'Ajouter une dépense',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Amount Due' => 'Montant dû',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Transaction' => 'Êtes vous sûr de vouloir effacer la saisie?',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Cannot delete transaction!' => 'Impossible de supprimer la saisie!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cannot post transaction for a closed period!' => 'Impossible d\'enregistrer l\'écriture sur un exercice clos!',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Check' => 'Chèque',
- 'Closed' => 'Clôturé',
- 'Confirm!' => 'Confirmer!',
- 'Continue' => 'Continuer',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Date Paid' => 'Date de paiement',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Due Date' => 'Échéance',
- 'Due Date missing!' => 'Date d\'échéance manquante!',
- 'Edit AP Transaction' => 'Modifier une dépense',
- 'Employee' => 'Employé',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Manager' => 'Gestionnaire',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Month' => 'Mois',
- 'Notes' => 'Notes',
- 'Nothing to print!' => 'Rien à imprimer',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Open' => 'Ouvert',
- 'Order' => 'Commande',
- 'Order Number' => 'Numéro de commande',
- 'PDF' => 'PDF',
- 'Paid' => 'Total payé',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payments' => 'Paiements',
- 'Period' => 'Période',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Postscript' => 'Postcript',
- 'Print' => 'Imprimer',
- 'Print and Post' => 'Imprimer et imputer',
- 'Printed' => 'Imprimé',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Receipt' => 'Reçu',
- 'Remaining' => 'Restant',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select payment' => 'Sélectionner le payement',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Source' => 'Source',
- 'Subtotal' => 'Sous total',
- 'Tax' => 'Taxe',
- 'Tax Included' => 'Taxe incluse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Transaction' => 'Écriture',
- 'Transaction deleted!' => 'Écriture supprimée!',
- 'Transaction posted!' => 'Écriture enregistrée!',
- 'Update' => 'Mettre à jour',
- 'Vendor' => 'Fournisseur',
- 'Vendor Invoice.' => 'Facture d\'achat.',
- 'Vendor missing!' => 'Fournisseur manquant!',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Écriture_dépenses' => 'ap_transaction',
- 'ajouter_une_dépense' => 'add_ap_transaction',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'modifier_une_dépense' => 'edit_ap_transaction',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'imprimer' => 'print',
- 'imprimer_et_imputer' => 'print_and_post',
- 'mettre_à_jour' => 'update',
- 'facture_d\'achat.' => 'vendor_invoice.',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ar b/sql-ledger/locale/fr/ar
deleted file mode 100644
index 2402d7c..0000000
--- a/sql-ledger/locale/fr/ar
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Recettes en retard',
- 'AR Transaction' => 'Écriture recettes',
- 'AR Transactions' => 'Mouvements - Recettes',
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add AR Transaction' => 'Ajouter une recette',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Amount Due' => 'Montant dû',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Transaction' => 'Êtes vous sûr de vouloir effacer la saisie?',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Cannot delete transaction!' => 'Impossible de supprimer la saisie!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cannot post transaction for a closed period!' => 'Impossible d\'enregistrer l\'écriture sur un exercice clos!',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Check' => 'Chèque',
- 'Closed' => 'Clôturé',
- 'Confirm!' => 'Confirmer!',
- 'Continue' => 'Continuer',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Customer' => 'Client',
- 'Customer missing!' => 'Client manquant!',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Date Paid' => 'Date de paiement',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Due Date' => 'Échéance',
- 'Due Date missing!' => 'Date d\'échéance manquante!',
- 'Edit AR Transaction' => 'Modifier une recette',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Manager' => 'Gestionnaire',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Month' => 'Mois',
- 'Notes' => 'Notes',
- 'Nothing to print!' => 'Rien à imprimer',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Open' => 'Ouvert',
- 'Order' => 'Commande',
- 'Order Number' => 'Numéro de commande',
- 'PDF' => 'PDF',
- 'Paid' => 'Total payé',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payments' => 'Paiements',
- 'Period' => 'Période',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Postscript' => 'Postcript',
- 'Print' => 'Imprimer',
- 'Print and Post' => 'Imprimer et imputer',
- 'Printed' => 'Imprimé',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Receipt' => 'Reçu',
- 'Remaining' => 'Restant',
- 'Sales Invoice.' => 'Facture de vente.',
- 'Salesperson' => 'Vendeur',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select payment' => 'Sélectionner le payement',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Ship via' => 'Expédier via',
- 'Shipping Point' => 'Expéditeur',
- 'Source' => 'Source',
- 'Subtotal' => 'Sous total',
- 'Tax' => 'Taxe',
- 'Tax Included' => 'Taxe incluse',
- 'Till' => 'Caisse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Transaction' => 'Écriture',
- 'Transaction deleted!' => 'Écriture supprimée!',
- 'Transaction posted!' => 'Écriture enregistrée!',
- 'Update' => 'Mettre à jour',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Écriture_recettes' => 'ar_transaction',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'imprimer' => 'print',
- 'imprimer_et_imputer' => 'print_and_post',
- 'facture_de_vente.' => 'sales_invoice.',
- 'mettre_à_jour' => 'update',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/arap b/sql-ledger/locale/fr/arap
deleted file mode 100644
index 879bfa6..0000000
--- a/sql-ledger/locale/fr/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresse',
- 'Continue' => 'Continuer',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Description' => 'Description',
- 'Number' => 'Numéro',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuer' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/arapprn b/sql-ledger/locale/fr/arapprn
deleted file mode 100644
index b496558..0000000
--- a/sql-ledger/locale/fr/arapprn
+++ /dev/null
@@ -1,37 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Amount' => 'Montant',
- 'Check' => 'Chèque',
- 'Continue' => 'Continuer',
- 'Date' => 'Date',
- 'Memo' => 'Mémo',
- 'Nothing to print!' => 'Rien à imprimer',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postcript',
- 'Printed' => 'Imprimé',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Receipt' => 'Reçu',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select payment' => 'Sélectionner le payement',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Source' => 'Source',
- 'Transaction' => 'Écriture',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuer' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/bp b/sql-ledger/locale/fr/bp
deleted file mode 100644
index bb8be87..0000000
--- a/sql-ledger/locale/fr/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Êtes vous sûr de vouloir enlever les objets sélectionnés de la queue?',
- 'Bin Lists' => 'Liste des emplacements',
- 'Cannot remove files!' => 'Impossible d\'effacer les fichiers!',
- 'Checks' => 'Chèques',
- 'Confirm!' => 'Confirmer!',
- 'Continue' => 'Continuer',
- 'Current' => 'En cours',
- 'Customer' => 'Client',
- 'Date' => 'Date',
- 'From' => 'De',
- 'Invoice' => 'Facture',
- 'Invoice Number' => 'Numéro de facture',
- 'Marked entries printed!' => 'Éléments marqués imprimés!',
- 'Month' => 'Mois',
- 'Order' => 'Commande',
- 'Order Number' => 'Numéro de commande',
- 'Packing Lists' => 'Listes d\'envoi',
- 'Period' => 'Période',
- 'Pick Lists' => 'Liste de sélection',
- 'Print' => 'Imprimer',
- 'Printing ... ' => 'Impression en cours ... ',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Quarter' => 'Trimestre',
- 'Quotation' => 'Devis',
- 'Quotation Number' => 'Numéro de devis',
- 'Quotations' => 'Devis',
- 'RFQs' => 'Demandes de devis',
- 'Receipts' => 'Reçus',
- 'Reference' => 'Référence',
- 'Remove' => 'Effacer',
- 'Removed spoolfiles!' => 'File d\'attente impression effacée!',
- 'Removing marked entries from queue ...' => 'Suppression des éléments sélectionnés de la file d\'attente ...',
- 'Sales Invoices' => 'Factures de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Select all' => 'Tout sélectionner',
- 'Spoolfile' => 'Fichier file d\'attente impression',
- 'To' => 'au',
- 'Vendor' => 'Fournisseur',
- 'Work Orders' => 'Fiche de traitement',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
- 'done' => 'fait',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuer' => 'continue',
- 'imprimer' => 'print',
- 'effacer' => 'remove',
- 'tout_sélectionner' => 'select_all',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ca b/sql-ledger/locale/fr/ca
deleted file mode 100644
index 02e7a14..0000000
--- a/sql-ledger/locale/fr/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Balance' => 'Solde',
- 'Chart of Accounts' => 'Plan Comptable',
- 'Credit' => 'Crédit',
- 'Current' => 'En cours',
- 'Date' => 'Date',
- 'Debit' => 'Débit',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'List Transactions' => 'Afficher écritures',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Mois',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Period' => 'Période',
- 'Project Number' => 'Numéro de projet',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Référence',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Subtotal' => 'Sous total',
- 'To' => 'au',
- 'Year' => 'Année',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'afficher_écritures' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/cp b/sql-ledger/locale/fr/cp
deleted file mode 100644
index 48dad0e..0000000
--- a/sql-ledger/locale/fr/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Dépenses',
- 'AR' => 'Recettes',
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Address' => 'Adresse',
- 'All' => 'Tous',
- 'Amount' => 'Montant',
- 'Amount Due' => 'Montant dû',
- 'Cannot post Payment!' => 'Impossible d\'enregistrer le paiement!',
- 'Cannot post Receipt!' => 'Impossible d\'enregistrer le reçu!',
- 'Cannot process payment for a closed period!' => 'Impossible de faire un paiement sur un exercice clos!',
- 'Continue' => 'Continuer',
- 'Currency' => 'Devise',
- 'Customer' => 'Client',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Date missing!' => 'Date manquante!',
- 'Department' => 'Service',
- 'Deposit' => 'Dépôt',
- 'Description' => 'Description',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Invoice' => 'Facture',
- 'Invoices' => 'Factures',
- 'Memo' => 'Mémo',
- 'Nothing outstanding for ' => 'Aucun rétard concernant ',
- 'Number' => 'Numéro',
- 'PDF' => 'PDF',
- 'Payment' => 'Paiement',
- 'Payment posted!' => 'Paiement enregistré!',
- 'Post' => 'Enregistrer',
- 'Postscript' => 'Postcript',
- 'Prepayment' => 'Paiement à l\'avance',
- 'Print' => 'Imprimer',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Queue' => 'File d\'attente',
- 'Receipt' => 'Reçu',
- 'Receipt posted!' => 'Reçu enregistré!',
- 'Screen' => 'Écran',
- 'Select' => 'Sélectionner',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Source' => 'Source',
- 'Update' => 'Mettre à jour',
- 'Vendor' => 'Fournisseur',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuer' => 'continue',
- 'enregistrer' => 'post',
- 'imprimer' => 'print',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ct b/sql-ledger/locale/fr/ct
deleted file mode 100644
index d564f66..0000000
--- a/sql-ledger/locale/fr/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Écriture dépenses',
- 'AP Transactions' => 'Mouvements - Dépenses',
- 'AR Transaction' => 'Écriture recettes',
- 'AR Transactions' => 'Mouvements - Recettes',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Customer' => 'Ajouter client',
- 'Add Vendor' => 'Ajouter fournisseur',
- 'Address' => 'Adresse',
- 'All' => 'Tous',
- 'Amount' => 'Montant',
- 'BIC' => 'BIC',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Break' => 'Rupture',
- 'Cannot delete customer!' => 'Impossible de supprimer le client!',
- 'Cannot delete vendor!' => 'Impossible de supprimer le fournisseur!',
- 'Cc' => 'Copie',
- 'City' => 'Ville',
- 'Closed' => 'Clôturé',
- 'Company Name' => 'Nom de société',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Cost' => 'Coût',
- 'Could not save pricelist!' => 'Enregistrement de la liste de prix impossible!',
- 'Country' => 'Pays',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Customer History' => 'Historique client',
- 'Customer Number' => 'Numéro de client',
- 'Customer deleted!' => 'Client supprimé!',
- 'Customer saved!' => 'Client enregistré!',
- 'Customers' => 'Clients',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Description' => 'Description',
- 'Detail' => 'Détail',
- 'Discount' => 'Remise',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Modifier client',
- 'Edit Vendor' => 'Modifier fournisseur',
- 'Employee' => 'Employé',
- 'Enddate' => 'Date de fin',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'Group' => 'Groupe',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Invoice' => 'Facture',
- 'Item already on pricelist!' => 'Objet déjà présent dans la liste des prix',
- 'Item not on file!' => 'Objet non-listé!',
- 'Language' => 'Langue',
- 'Leadtime' => 'Délai',
- 'Manager' => 'Gestionnaire',
- 'Name' => 'Nom',
- 'Name missing!' => 'Nom manquant!',
- 'Notes' => 'Notes',
- 'Number' => 'Numéro',
- 'Open' => 'Ouvert',
- 'Order' => 'Commande',
- 'Orphaned' => 'Orphelin',
- 'Part Number' => 'Numéro de marchandise',
- 'Phone' => 'Tél.',
- 'Pricegroup' => 'Groupe de prix',
- 'Pricelist' => 'Liste de prix',
- 'Project Number' => 'Numéro de projet',
- 'Purchase Order' => 'Commande d\'achat',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Qty' => 'Qté',
- 'Quotation' => 'Devis',
- 'Quotations' => 'Devis',
- 'RFQ' => 'Demande de devis',
- 'Request for Quotations' => 'Demandes de devis',
- 'SIC' => 'Code secteur économique',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facture de vente',
- 'Sales Invoices' => 'Factures de vente',
- 'Sales Order' => 'Commande de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Salesperson' => 'Vendeur',
- 'Save' => 'Enregistrer',
- 'Save Pricelist' => 'Enregistrer la liste de prix',
- 'Search' => 'Recherche',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Sell Price' => 'Prix de vente',
- 'Serial Number' => 'Numéro de série',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Startdate' => 'Date de début',
- 'State' => 'Etat',
- 'State/Province' => 'Région/État',
- 'Sub-contract GIFI' => 'Code d\'identification comptable ou fiscale - Sous-traitance',
- 'Subtotal' => 'Sous total',
- 'Summary' => 'Résumé',
- 'Tax' => 'Taxe',
- 'Tax Included' => 'Taxe incluse',
- 'Tax Number' => 'Numéro de TVA',
- 'Tax Number / SSN' => 'Numéro de TVA / Sécurité Sociale',
- 'Taxable' => 'Imposable',
- 'Terms' => 'Crédit limité à',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Type of Business' => 'Type d\'affaire',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Vendor History' => 'Historique fournisseurs',
- 'Vendor Invoice' => 'Facture d\'achat',
- 'Vendor Invoices' => 'Factures d\'achat',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor deleted!' => 'Fournisseur supprimé!',
- 'Vendor saved!' => 'Fournisseur enregistré!',
- 'Vendors' => 'Fournisseurs',
- 'days' => 'jours',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'Écriture_dépenses' => 'ap_transaction',
- 'Écriture_recettes' => 'ar_transaction',
- 'ajouter_client' => 'add_customer',
- 'ajouter_fournisseur' => 'add_vendor',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'liste_de_prix' => 'pricelist',
- 'commande_d\'achat' => 'purchase_order',
- 'devis' => 'quotation',
- 'demande_de_devis' => 'rfq',
- 'facture_de_vente' => 'sales_invoice',
- 'commande_de_vente' => 'sales_order',
- 'enregistrer' => 'save',
- 'enregistrer_la_liste_de_prix' => 'save_pricelist',
- 'mettre_à_jour' => 'update',
- 'facture_d\'achat' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/gl b/sql-ledger/locale/fr/gl
deleted file mode 100644
index ef4218b..0000000
--- a/sql-ledger/locale/fr/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Écriture dépenses',
- 'AR Transaction' => 'Écriture recettes',
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Cash Transfer Transaction' => 'Saisie d\'écriture - Virements internes',
- 'Add General Ledger Transaction' => 'Ajouter une écriture au grand-livre',
- 'Address' => 'Adresse',
- 'All' => 'Tous',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Transaction' => 'Êtes vous sûr de vouloir effacer la saisie?',
- 'Asset' => 'Actif',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Balance' => 'Solde',
- 'Cannot delete transaction!' => 'Impossible de supprimer la saisie!',
- 'Cannot post transaction for a closed period!' => 'Impossible d\'enregistrer l\'écriture sur un exercice clos!',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Confirm!' => 'Confirmer!',
- 'Continue' => 'Continuer',
- 'Contra' => 'Contrepartie',
- 'Credit' => 'Crédit',
- 'Current' => 'En cours',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Debit' => 'Débit',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Edit Cash Transfer Transaction' => 'Modifier virements internes',
- 'Edit General Ledger Transaction' => 'Modifier écriture grand-livre',
- 'Equity' => 'Capital',
- 'Expense' => 'Dépenses',
- 'FX' => 'Devises',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'GL Transaction' => 'Transaction grand-livre',
- 'General Ledger' => 'Grand-livre',
- 'ID' => 'ID',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Income' => 'Recettes',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Liability' => 'Passif',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Mois',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Out of balance transaction!' => 'Écriture non-soldée!',
- 'Period' => 'Période',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Project' => 'Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Référence',
- 'Reference missing!' => 'Référence manquante!',
- 'Reports' => 'Rapports',
- 'Sales Invoice ' => 'Facture de vente ',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Source' => 'Source',
- 'Subtotal' => 'Sous total',
- 'To' => 'au',
- 'Transaction Date missing!' => 'Date d\'écriture manquante!',
- 'Transaction deleted!' => 'Écriture supprimée!',
- 'Transaction posted!' => 'Écriture enregistrée!',
- 'Update' => 'Mettre à jour',
- 'Vendor Invoice ' => 'Facture d\'achat ',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Warning!' => 'Attention!',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Écriture_dépenses' => 'ap_transaction',
- 'Écriture_recettes' => 'ar_transaction',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'transaction_grand_livre' => 'gl_transaction',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'facture_de_vente_' => 'sales_invoice_',
- 'mettre_à_jour' => 'update',
- 'facture_d\'achat_' => 'vendor_invoice_',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/hr b/sql-ledger/locale/fr/hr
deleted file mode 100644
index 83ce029..0000000
--- a/sql-ledger/locale/fr/hr
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'AP' => 'Dépenses',
- 'Above' => 'En dessus',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Deduction' => 'Ajouter prélèvement',
- 'Add Employee' => 'Ajouter employé',
- 'Address' => 'Adresse',
- 'Administrator' => 'Administrateur',
- 'After Deduction' => 'Après prélèvement',
- 'All' => 'Tous',
- 'Allowances' => 'Indemnités',
- 'Amount' => 'Montant',
- 'Amount missing!' => 'Montant manquant!',
- 'BIC' => 'BIC',
- 'Based on' => 'Basé sur',
- 'Before Deduction' => 'Avant prélèvement',
- 'Below' => 'En dessous',
- 'City' => 'Ville',
- 'Continue' => 'Continuer',
- 'Country' => 'Pays',
- 'Deduct after' => 'Prélèver après',
- 'Deduction deleted!' => 'Prélèvement supprimé!',
- 'Deduction saved!' => 'Prélèvement enrégistré!',
- 'Deductions' => 'Prélèvements',
- 'Delete' => 'Supprimer',
- 'Description' => 'Description',
- 'Description missing!' => 'Description manquante!',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Modifier prélèvement',
- 'Edit Employee' => 'Modifier employé',
- 'Employee' => 'Employé',
- 'Employee Name' => 'Nom employé',
- 'Employee Number' => 'Numéro d\'employé',
- 'Employee deleted!' => 'Employé effacé!',
- 'Employee pays' => 'Employé pays',
- 'Employee saved!' => 'Employé enregistré',
- 'Employees' => 'Employés',
- 'Employer' => 'Employeur',
- 'Employer pays' => 'Employeur pays',
- 'Enddate' => 'Date de fin',
- 'Expense' => 'Dépenses',
- 'Home Phone' => 'Téléphone privé',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Login' => 'Login',
- 'Manager' => 'Gestionnaire',
- 'Maximum' => 'Maximum',
- 'Name' => 'Nom',
- 'Name missing!' => 'Nom manquant!',
- 'Notes' => 'Notes',
- 'Number' => 'Numéro',
- 'Orphaned' => 'Orphelin',
- 'Payroll Deduction' => 'Prélèvement salaire',
- 'Rate' => 'Taux',
- 'Rate missing!' => 'Taux manquant!',
- 'Role' => 'Rôle',
- 'S' => 'S',
- 'SSN' => 'Numéro sécurité sociale',
- 'Sales' => 'Ventes',
- 'Save' => 'Enregistrer',
- 'Save as new' => 'Enregistrer comme nouveau',
- 'Startdate' => 'Date de début',
- 'State/Province' => 'Région/État',
- 'Update' => 'Mettre à jour',
- 'User' => 'Utilisateur',
- 'Work Phone' => 'Téléphone travail',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'ajouter_prélèvement' => 'add_deduction',
- 'ajouter_employé' => 'add_employee',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'enregistrer' => 'save',
- 'enregistrer_comme_nouveau' => 'save_as_new',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ic b/sql-ledger/locale/fr/ic
deleted file mode 100644
index 56832dc..0000000
--- a/sql-ledger/locale/fr/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Accrual' => 'Accumulation',
- 'Active' => 'Actif',
- 'Add' => 'Ajouter',
- 'Add Assembly' => 'Ajouter produit',
- 'Add Labor/Overhead' => 'Ajouter coût de production',
- 'Add Part' => 'Ajouter marchandise',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Add Service' => 'Ajouter prestation',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Assemblies' => 'Produits finis',
- 'Assemblies restocked!' => 'Renvoyer produits vers stock!',
- 'Assembly' => 'Produit fini',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'BOM' => 'Nomenclature composantes',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Break' => 'Rupture',
- 'COGS' => 'Coût des produits vendus',
- 'Cannot delete item!' => 'Impossible de supprimer l\'objet!',
- 'Cannot stock assemblies!' => 'Impossible de stocker l\'assemblage!',
- 'Cash' => 'Financier',
- 'Cc' => 'Copie',
- 'Check Inventory' => 'Listing chèques',
- 'City' => 'Ville',
- 'Closed' => 'Clôturé',
- 'Company Name' => 'Nom de société',
- 'Components' => 'Composants',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Cost' => 'Coût',
- 'Country' => 'Pays',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Customer' => 'Client',
- 'Customer Number' => 'Numéro de client',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Description' => 'Description',
- 'Drawing' => 'Dessin',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit Assembly' => 'Modifier produit fini / transformé',
- 'Edit Labor/Overhead' => 'Modifier coût de production',
- 'Edit Part' => 'Modifier marchandise',
- 'Edit Service' => 'Modifier service',
- 'Employee' => 'Employé',
- 'Expense' => 'Dépenses',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'Image' => 'Image',
- 'In-line' => 'En ligne',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Income' => 'Recettes',
- 'Individual Items' => 'Composition en marchandises individuelles',
- 'Inventory' => 'Inventaire',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantité en stock doit être zéro avant de pouvoir annuler cet assemblage!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantité en stock doit être zero avant de pouvoir annuler cette pièce!',
- 'Invoice' => 'Facture',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Item deleted!' => 'Objet supprimé!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Items' => 'Objets',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Labor/Overhead' => 'Coût de production',
- 'Leadtime' => 'Délai',
- 'Line Total' => 'Total ligne',
- 'Link Accounts' => 'Lier comptes',
- 'List' => 'Liste',
- 'List Price' => 'Prix de revient',
- 'Make' => 'Marque',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'Markup' => 'Majoration',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Message',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modèle',
- 'Name' => 'Nom',
- 'No.' => 'N°',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'Obsolete' => 'Obsolète',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'On Hand' => 'En Stock / disponible',
- 'Open' => 'Ouvert',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'Orphaned' => 'Orphelin',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Part' => 'Marchandise',
- 'Parts' => 'Marchandises',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Pricegroup' => 'Groupe de prix',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Purchase Order' => 'Commande d\'achat',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Qty' => 'Qté',
- 'Quantity exceeds available units to stock!' => 'La quantité dépasse le nombred\'unités en stock',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Quotations' => 'Devis',
- 'RFQ' => 'Demande de devis',
- 'ROP' => 'Seuil réapprovisionnement',
- 'Recd' => 'Reçu',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facture de vente',
- 'Sales Invoices' => 'Factures de vente',
- 'Sales Order' => 'Commande de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Save' => 'Enregistrer',
- 'Save as new' => 'Enregistrer comme nouveau',
- 'Screen' => 'Écran',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Sell' => 'Vente',
- 'Sell Price' => 'Prix de vente',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Serial Number' => 'Numéro de série',
- 'Service' => 'Prestation de service',
- 'Services' => 'Prestations de services',
- 'Ship' => 'Expédier',
- 'Ship to' => 'Expédier à',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Short' => 'Court',
- 'State/Province' => 'Région/État',
- 'Stock' => 'Stock',
- 'Stock Assembly' => 'Stock de produits',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Tax' => 'Taxe',
- 'To' => 'au',
- 'Top Level' => 'Description principale',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Unit' => 'Unité',
- 'Unit of measure' => 'Unité de mesure',
- 'Update' => 'Mettre à jour',
- 'Updated' => 'Mis à jour',
- 'Vendor' => 'Fournisseur',
- 'Vendor Invoice' => 'Facture d\'achat',
- 'Vendor Invoices' => 'Factures d\'achat',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Warehouse' => 'Entrepôt',
- 'Weight' => 'Poids',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'days' => 'jours',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'ajouter_produit' => 'add_assembly',
- 'ajouter_coût_de_production' => 'add_labor/overhead',
- 'ajouter_marchandise' => 'add_part',
- 'ajouter_prestation' => 'add_service',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'modifier_produit_fini_/_transformé' => 'edit_assembly',
- 'modifier_marchandise' => 'edit_part',
- 'modifier_service' => 'edit_service',
- 'enregistrer' => 'save',
- 'enregistrer_comme_nouveau' => 'save_as_new',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/io b/sql-ledger/locale/fr/io
deleted file mode 100644
index f33da97..0000000
--- a/sql-ledger/locale/fr/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Address' => 'Adresse',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Cc' => 'Copie',
- 'City' => 'Ville',
- 'Company Name' => 'Nom de société',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Country' => 'Pays',
- 'Customer Number' => 'Numéro de client',
- 'Date' => 'Date',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delivery Date' => 'Date de livraison',
- 'Description' => 'Description',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'In-line' => 'En ligne',
- 'Invoice' => 'Facture',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Message',
- 'No.' => 'N°',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Part' => 'Marchandise',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Purchase Order' => 'Commande d\'achat',
- 'Qty' => 'Qté',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Recd' => 'Reçu',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Commande de vente',
- 'Screen' => 'Écran',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Service' => 'Prestation de service',
- 'Ship' => 'Expédier',
- 'Ship to' => 'Expédier à',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'State/Province' => 'Région/État',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'To' => 'au',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Unit' => 'Unité',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuer' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ir b/sql-ledger/locale/fr/ir
deleted file mode 100644
index b04c268..0000000
--- a/sql-ledger/locale/fr/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Add Vendor Invoice' => 'Établir facture d\'achat',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Invoice Number' => 'Êtes-vous sûr de vouloir supprimer la facture n°',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Cannot delete invoice!' => 'Impossible de supprimer la facture!',
- 'Cannot post invoice for a closed period!' => 'Impossible d\'enregistrer la facture sur un exercice clos!',
- 'Cannot post invoice!' => 'Impossible d\'enregistrer la facture!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cc' => 'Copie',
- 'City' => 'Ville',
- 'Company Name' => 'Nom de société',
- 'Confirm!' => 'Confirmer!',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Country' => 'Pays',
- 'Credit Limit' => 'Encours autorisé',
- 'Currency' => 'Devise',
- 'Customer Number' => 'Numéro de client',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Due Date' => 'Échéance',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit Vendor Invoice' => 'Modifier facture de fournisseur',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'In-line' => 'En ligne',
- 'Internal Notes' => 'Notes internes',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Invoice deleted!' => 'Facture supprimée!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Language' => 'Langue',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Message' => 'Message',
- 'No.' => 'N°',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Part' => 'Marchandise',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payments' => 'Paiements',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Purchase Order' => 'Commande d\'achat',
- 'Qty' => 'Qté',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Recd' => 'Reçu',
- 'Record in' => 'Enregistrer dans',
- 'Remaining' => 'Restant',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Commande de vente',
- 'Screen' => 'Écran',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Service' => 'Prestation de service',
- 'Ship' => 'Expédier',
- 'Ship to' => 'Expédier à',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Source' => 'Source',
- 'State/Province' => 'Région/État',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Tax Included' => 'Taxe incluse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Vendor' => 'Fournisseur',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor missing!' => 'Fournisseur manquant!',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'Yes' => 'Oui',
- 'ea' => 'ch',
- 'posted!' => 'enregistré!',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'commande_d\'achat' => 'purchase_order',
- 'mettre_à_jour' => 'update',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/is b/sql-ledger/locale/fr/is
deleted file mode 100644
index 0dfc1ec..0000000
--- a/sql-ledger/locale/fr/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Invoice' => 'Établir facture de vente',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Invoice Number' => 'Êtes-vous sûr de vouloir supprimer la facture n°',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Business' => 'Type d\'affaire',
- 'Cannot delete invoice!' => 'Impossible de supprimer la facture!',
- 'Cannot post invoice for a closed period!' => 'Impossible d\'enregistrer la facture sur un exercice clos!',
- 'Cannot post invoice!' => 'Impossible d\'enregistrer la facture!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cc' => 'Copie',
- 'City' => 'Ville',
- 'Company Name' => 'Nom de société',
- 'Confirm!' => 'Confirmer!',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Country' => 'Pays',
- 'Credit Limit' => 'Encours autorisé',
- 'Currency' => 'Devise',
- 'Customer' => 'Client',
- 'Customer Number' => 'Numéro de client',
- 'Customer missing!' => 'Client manquant!',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Due Date' => 'Échéance',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit Sales Invoice' => 'Modifier facture de vente',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'In-line' => 'En ligne',
- 'Internal Notes' => 'Notes internes',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Invoice deleted!' => 'Facture supprimée!',
- 'Invoice posted!' => 'Facture enregistrée!',
- 'Invoice processed!' => 'Facture passée!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Message' => 'Message',
- 'No.' => 'N°',
- 'Notes' => 'Notes',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Part' => 'Marchandise',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payments' => 'Paiements',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Print' => 'Imprimer',
- 'Print and Post' => 'Imprimer et imputer',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Purchase Order' => 'Commande d\'achat',
- 'Qty' => 'Qté',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Recd' => 'Reçu',
- 'Record in' => 'Enregistrer dans',
- 'Remaining' => 'Restant',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Commande de vente',
- 'Salesperson' => 'Vendeur',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Service' => 'Prestation de service',
- 'Ship' => 'Expédier',
- 'Ship to' => 'Expédier à',
- 'Ship via' => 'Expédier via',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Shipping Point' => 'Expéditeur',
- 'Source' => 'Source',
- 'State/Province' => 'Région/État',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Tax Included' => 'Taxe incluse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Trade Discount' => 'Escompte commercial',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'Yes' => 'Oui',
- 'ea' => 'ch',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'e_mail' => 'e_mail',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'imprimer' => 'print',
- 'imprimer_et_imputer' => 'print_and_post',
- 'commande_de_vente' => 'sales_order',
- 'expédier_à' => 'ship_to',
- 'mettre_à_jour' => 'update',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/login b/sql-ledger/locale/fr/login
deleted file mode 100644
index c4c3d19..0000000
--- a/sql-ledger/locale/fr/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Société',
- 'Continue' => 'Continuer',
- 'Dataset is newer than version!' => 'Fichier de données plus récent que le logiciel!',
- 'Incorrect Dataset version!' => 'Fichier de données incorrect!',
- 'Incorrect Password!' => 'Mot de passe incorrect!',
- 'Login' => 'Login',
- 'Name' => 'Nom',
- 'Password' => 'Mot de passe',
- 'Upgrading to Version' => 'Mise à jour à la version',
- 'Version' => 'Version',
- 'You did not enter a name!' => 'Vous n\'avez pas saisi de nom!',
- 'done' => 'fait',
- 'is not a member!' => 'n\'est pas un membre!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/menu b/sql-ledger/locale/fr/menu
deleted file mode 100644
index f21da94..0000000
--- a/sql-ledger/locale/fr/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Dépenses',
- 'AP Aging' => 'Dépenses exigibles',
- 'AP Transaction' => 'Écriture dépenses',
- 'AR' => 'Recettes',
- 'AR Aging' => 'Recettes exigibles',
- 'AR Transaction' => 'Écriture recettes',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Account' => 'Ajouter compte',
- 'Add Assembly' => 'Ajouter produit',
- 'Add Business' => 'Ajouter type d\'affaire',
- 'Add Customer' => 'Ajouter client',
- 'Add Department' => 'Ajouter service',
- 'Add Employee' => 'Ajouter employé',
- 'Add GIFI' => 'Ajouter code d\'identification comptable ou fiscale',
- 'Add Group' => 'Ajouter groupe',
- 'Add Labor/Overhead' => 'Ajouter coût de production',
- 'Add Language' => 'Ajouter langue',
- 'Add Part' => 'Ajouter marchandise',
- 'Add Pricegroup' => 'Ajouter groupe de prix',
- 'Add Project' => 'Ajouter projet',
- 'Add SIC' => 'Ajouter code secteur économique',
- 'Add Service' => 'Ajouter prestation',
- 'Add Transaction' => 'Saisie d\'écriture',
- 'Add Vendor' => 'Ajouter fournisseur',
- 'Add Warehouse' => 'Ajouter entrepôt',
- 'All Items' => 'Tout objet',
- 'Assemblies' => 'Produits finis',
- 'Audit Control' => 'Clôture périodique',
- 'Backup' => 'Sauvegarder',
- 'Balance Sheet' => 'Bilan',
- 'Batch Printing' => 'Impression groupée',
- 'Bin List' => 'Liste des emplacements',
- 'Bin Lists' => 'Liste des emplacements',
- 'Cash' => 'Financier',
- 'Chart of Accounts' => 'Plan Comptable',
- 'Check' => 'Chèque',
- 'Checks' => 'Chèques',
- 'Components' => 'Composants',
- 'Customers' => 'Clients',
- 'Defaults' => 'Valeurs par défaut',
- 'Departments' => 'Services',
- 'Description' => 'Description',
- 'Employees' => 'Employés',
- 'General Ledger' => 'Grand-livre',
- 'Goods & Services' => 'Articles & Prestations',
- 'Groups' => 'Groupes',
- 'HR' => 'Ressources humaines',
- 'HTML Templates' => 'Squelettes HTML',
- 'History' => 'Historique',
- 'Income Statement' => 'Compte de résultat',
- 'Invoice' => 'Facture',
- 'LaTeX Templates' => 'Squelettes LaTeX',
- 'Labor/Overhead' => 'Coût de production',
- 'Language' => 'Langue',
- 'List Accounts' => 'Liste des comptes',
- 'List Businesses' => 'Liste types d\'affaire',
- 'List Departments' => 'Liste des services',
- 'List GIFI' => 'Afficher la liste des codes d\'identification comptable ou fiscale',
- 'List Languages' => 'Liste des langues',
- 'List Projects' => 'Liste des projets',
- 'List SIC' => 'Liste des codes secteur économique',
- 'List Warehouses' => 'Liste des entrepôts',
- 'Logout' => 'Déconnexion',
- 'Non-taxable' => 'Non imposable',
- 'Open' => 'Ouvert',
- 'Order Entry' => 'Commandes',
- 'Outstanding' => 'En retard',
- 'POS' => 'Point de vente',
- 'POS Invoice' => 'Ticket de caisse',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing Lists' => 'Listes d\'envoi',
- 'Parts' => 'Marchandises',
- 'Payment' => 'Paiement',
- 'Payments' => 'Paiements',
- 'Pick List' => 'Liste de sélection',
- 'Pick Lists' => 'Liste de sélection',
- 'Preferences' => 'Préférences',
- 'Pricegroups' => 'Groupes de prix',
- 'Print' => 'Imprimer',
- 'Projects' => 'Projets',
- 'Purchase Order' => 'Commande d\'achat',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Quotation' => 'Devis',
- 'Quotations' => 'Devis',
- 'RFQ' => 'Demande de devis',
- 'RFQs' => 'Demandes de devis',
- 'Receipt' => 'Reçu',
- 'Receipts' => 'Reçus',
- 'Receive' => 'Réception',
- 'Reconciliation' => 'Rapprochement',
- 'Reports' => 'Rapports',
- 'SIC' => 'Code secteur économique',
- 'Sale' => 'Vente',
- 'Sales Invoice' => 'Facture de vente',
- 'Sales Invoices' => 'Factures de vente',
- 'Sales Order' => 'Commande de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Save to File' => 'Enregistrer dans un fichier',
- 'Search' => 'Recherche',
- 'Send by E-Mail' => 'Envoyer par e-mail',
- 'Services' => 'Prestations de services',
- 'Ship' => 'Expédier',
- 'Shipping' => 'Expédition',
- 'Statement' => 'Relevé',
- 'Stock Assembly' => 'Stock de produits',
- 'Stylesheet' => 'Feuille de style',
- 'System' => 'Système',
- 'Tax collected' => 'Taxe collectée',
- 'Tax paid' => 'Taxe payée',
- 'Text Templates' => 'Squelettes texte',
- 'Transactions' => 'Mouvements',
- 'Transfer' => 'Transfert',
- 'Translations' => 'Traductions',
- 'Trial Balance' => 'Balance Globale',
- 'Type of Business' => 'Type d\'affaire',
- 'Vendor Invoice' => 'Facture d\'achat',
- 'Vendors' => 'Fournisseurs',
- 'Version' => 'Version',
- 'Warehouses' => 'Entrepôts',
- 'Work Order' => 'Fiche de traitement',
- 'Work Orders' => 'Fiche de traitement',
- 'Yearend' => 'Écriture de fin d\'exercice',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/oe b/sql-ledger/locale/fr/oe
deleted file mode 100644
index ac14eb2..0000000
--- a/sql-ledger/locale/fr/oe
+++ /dev/null
@@ -1,306 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Exchange Rate' => 'Ajouter taux de change',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Invoice' => 'Établir facture de vente',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Add Vendor Invoice' => 'Établir facture d\'achat',
- 'Address' => 'Adresse',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Order Number' => 'Êtes vous sûr de vouloir supprimer la commande n°',
- 'Are you sure you want to delete Quotation Number' => 'Êtes vous sûr de vouloir supprimer le devis n°',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Business' => 'Type d\'affaire',
- 'C' => 'C',
- 'Cannot delete order!' => 'Impossible de supprimer la commande!',
- 'Cannot delete quotation!' => 'Impossible de supprimer le devis!',
- 'Cannot save order!' => 'Impossible d\'enregistrer la commande!',
- 'Cannot save quotation!' => 'Impossible d\'enregistrer le devis!',
- 'Cc' => 'Copie',
- 'City' => 'Ville',
- 'Closed' => 'Clôturé',
- 'Company Name' => 'Nom de société',
- 'Confirm!' => 'Confirmer!',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Could not save!' => 'Enregistrement impossible!',
- 'Could not transfer Inventory!' => 'Impossible de transférer l\'inventaire!',
- 'Country' => 'Pays',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Customer' => 'Client',
- 'Customer Number' => 'Numéro de client',
- 'Customer missing!' => 'Client manquant!',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Date Received' => 'Date de réception',
- 'Date received missing!' => 'Date de réception manquante!',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Done' => 'Fait!',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit Purchase Order' => 'Modifier commande d\'achat',
- 'Edit Quotation' => 'Modifier devis',
- 'Edit Request for Quotation' => 'Modifier demande de devis',
- 'Edit Sales Order' => 'Modifier commande de vente',
- 'Employee' => 'Employé',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'ID' => 'ID',
- 'In-line' => 'En ligne',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Internal Notes' => 'Notes internes',
- 'Inventory saved!' => 'Inventaire enregistré!',
- 'Inventory transferred!' => 'Inventaire transféré!',
- 'Invoice' => 'Facture',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Manager' => 'Gestionnaire',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Message' => 'Message',
- 'Month' => 'Mois',
- 'No.' => 'N°',
- 'Notes' => 'Notes',
- 'Nothing entered!' => 'Rien n\'a été saisi!',
- 'Nothing to transfer!' => 'Rien à transférer!',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'O' => 'O',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Open' => 'Ouvert',
- 'Order' => 'Commande',
- 'Order Date' => 'Date de commande',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'Order deleted!' => 'Commande supprimée!',
- 'Order processed!' => 'Commande passée!',
- 'Order saved!' => 'Commande enregistrée!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Part' => 'Marchandise',
- 'Part Number' => 'Numéro de marchandise',
- 'Period' => 'Période',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Print' => 'Imprimer',
- 'Print and Save' => 'Imprimer et sauver',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Purchase Order' => 'Commande d\'achat',
- 'Purchase Orders' => 'Commandes d\'achat',
- 'Qty' => 'Qté',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation ' => 'Devis ',
- 'Quotation Date' => 'Date de devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number' => 'Numéro de devis',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Quotation deleted!' => 'Devis effacé!',
- 'Quotations' => 'Devis',
- 'RFQ' => 'Demande de devis',
- 'RFQ ' => 'Demande de devis ',
- 'RFQ Number' => 'Numéro de demande de devis',
- 'Recd' => 'Reçu',
- 'Receive Merchandise' => 'Réception marchandise',
- 'Remaining' => 'Restant',
- 'Request for Quotation' => 'Demande de devis',
- 'Request for Quotations' => 'Demandes de devis',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Facture de vente',
- 'Sales Order' => 'Commande de vente',
- 'Sales Orders' => 'Commandes de vente',
- 'Salesperson' => 'Vendeur',
- 'Save' => 'Enregistrer',
- 'Save as new' => 'Enregistrer comme nouveau',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Service' => 'Prestation de service',
- 'Ship' => 'Expédier',
- 'Ship Merchandise' => 'Expédier marchandise',
- 'Ship to' => 'Expédier à',
- 'Ship via' => 'Expédier via',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Shipping Date' => 'Date d\'expédition',
- 'Shipping Date missing!' => 'Date d\'expédition manquante!',
- 'Shipping Point' => 'Expéditeur',
- 'State/Province' => 'Région/État',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Tax' => 'Taxe',
- 'Tax Included' => 'Taxe incluse',
- 'Terms' => 'Crédit limité à',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Trade Discount' => 'Escompte commercial',
- 'Transfer' => 'Transfert',
- 'Transfer Inventory' => 'Transfert inventaire',
- 'Transfer to' => 'Transférer vers',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Valid until' => 'Valable jusqu\'au',
- 'Vendor' => 'Fournisseur',
- 'Vendor Invoice' => 'Facture d\'achat',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor missing!' => 'Fournisseur manquant!',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Warehouse' => 'Entrepôt',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
- 'days' => 'jours',
- 'ea' => 'ch',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'fait!' => 'done',
- 'e_mail' => 'e_mail',
- 'imprimer' => 'print',
- 'imprimer_et_sauver' => 'print_and_save',
- 'commande_d\'achat' => 'purchase_order',
- 'devis' => 'quotation',
- 'devis_' => 'quotation_',
- 'demande_de_devis' => 'rfq',
- 'demande_de_devis_' => 'rfq_',
- 'facture_de_vente' => 'sales_invoice',
- 'commande_de_vente' => 'sales_order',
- 'enregistrer' => 'save',
- 'enregistrer_comme_nouveau' => 'save_as_new',
- 'expédier_à' => 'ship_to',
- 'transfert' => 'transfer',
- 'mettre_à_jour' => 'update',
- 'facture_d\'achat' => 'vendor_invoice',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/pe b/sql-ledger/locale/fr/pe
deleted file mode 100644
index 7db972c..0000000
--- a/sql-ledger/locale/fr/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Add Group' => 'Ajouter groupe',
- 'Add Pricegroup' => 'Ajouter groupe de prix',
- 'Add Project' => 'Ajouter projet',
- 'All' => 'Tous',
- 'Continue' => 'Continuer',
- 'Delete' => 'Supprimer',
- 'Description' => 'Description',
- 'Description Translations' => 'Description traductions',
- 'Edit Description Translations' => 'Modifier traductions description',
- 'Edit Group' => 'Modifier groupe',
- 'Edit Pricegroup' => 'Modifier groupe de prix',
- 'Edit Project' => 'Modifier projet',
- 'Group' => 'Groupe',
- 'Group Translations' => 'Grouper traductions',
- 'Group deleted!' => 'Groupe effacé!',
- 'Group missing!' => 'Groupe absent!',
- 'Group saved!' => 'Groupe enregistré!',
- 'Groups' => 'Groupes',
- 'Language' => 'Langue',
- 'Languages not defined!' => 'Langues non définis!',
- 'Number' => 'Numéro',
- 'Orphaned' => 'Orphelin',
- 'Pricegroup' => 'Groupe de prix',
- 'Pricegroup deleted!' => 'Groupe de prix supprimé!',
- 'Pricegroup missing!' => 'Groupe de prix manquant!',
- 'Pricegroup saved!' => 'Groupe de prix enregistré!',
- 'Pricegroups' => 'Groupes de prix',
- 'Project' => 'Projet',
- 'Project Description Translations' => 'Traductions description de projet',
- 'Project Number' => 'Numéro de projet',
- 'Project Number missing!' => 'Numéro du projet manquant!',
- 'Project deleted!' => 'Projet supprimé!',
- 'Project saved!' => 'Projet enregistré!',
- 'Projects' => 'Projets',
- 'Save' => 'Enregistrer',
- 'Translation' => 'Traduction',
- 'Translation deleted!' => 'Traduction supprimée!',
- 'Translations saved!' => 'Traductions enregistrées',
- 'Update' => 'Mettre à jour',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'ajouter_groupe' => 'add_group',
- 'ajouter_groupe_de_prix' => 'add_pricegroup',
- 'ajouter_projet' => 'add_project',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'enregistrer' => 'save',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/pos b/sql-ledger/locale/fr/pos
deleted file mode 100644
index 2ddf0dd..0000000
--- a/sql-ledger/locale/fr/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Add POS Invoice' => 'Saisie ticket de caisse',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Change' => 'Retour monnaie',
- 'Continue' => 'Continuer',
- 'Credit Limit' => 'Encours autorisé',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Customer' => 'Client',
- 'Customer missing!' => 'Client manquant!',
- 'Delete' => 'Supprimer',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Edit POS Invoice' => 'Modifier ticket de caisse',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Extended' => 'Prix total',
- 'From' => 'De',
- 'Language' => 'Langue',
- 'Memo' => 'Mémo',
- 'Month' => 'Mois',
- 'Number' => 'Numéro',
- 'Open' => 'Ouvert',
- 'Paid' => 'Total payé',
- 'Period' => 'Période',
- 'Post' => 'Enregistrer',
- 'Posted!' => 'Enregistré!',
- 'Price' => 'Prix',
- 'Print' => 'Imprimer',
- 'Printed' => 'Imprimé',
- 'Qty' => 'Qté',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Reçus',
- 'Record in' => 'Enregistrer dans',
- 'Remaining' => 'Restant',
- 'Salesperson' => 'Vendeur',
- 'Screen' => 'Écran',
- 'Source' => 'Source',
- 'Subtotal' => 'Sous total',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Year' => 'Année',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'enregistrer' => 'post',
- 'imprimer' => 'print',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/ps b/sql-ledger/locale/fr/ps
deleted file mode 100644
index 6c4f0a0..0000000
--- a/sql-ledger/locale/fr/ps
+++ /dev/null
@@ -1,341 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Dépenses exigibles',
- 'AR Aging' => 'Recettes exigibles',
- 'AR Outstanding' => 'Recettes en retard',
- 'AR Transaction' => 'Écriture recettes',
- 'AR Transactions' => 'Mouvements - Recettes',
- 'Account' => 'Compte',
- 'Account Number' => 'Numéro de compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Accounts' => 'Comptes',
- 'Accrual' => 'Accumulation',
- 'Add AR Transaction' => 'Ajouter une recette',
- 'Add POS Invoice' => 'Saisie ticket de caisse',
- 'Add Purchase Order' => 'Établir commande d\'achat',
- 'Add Quotation' => 'Établir devis',
- 'Add Request for Quotation' => 'Établir demande de devis',
- 'Add Sales Invoice' => 'Établir facture de vente',
- 'Add Sales Order' => 'Établir commande de vente',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Afficher tous les comptes',
- 'Amount' => 'Montant',
- 'Amount Due' => 'Montant dû',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Are you sure you want to delete Invoice Number' => 'Êtes-vous sûr de vouloir supprimer la facture n°',
- 'Are you sure you want to delete Transaction' => 'Êtes vous sûr de vouloir effacer la saisie?',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Balance' => 'Solde',
- 'Balance Sheet' => 'Bilan',
- 'Bcc' => 'Copie cachée',
- 'Billing Address' => 'Adresse de facturation',
- 'Bin' => 'Lieu stockage',
- 'Bin List' => 'Liste des emplacements',
- 'Business' => 'Type d\'affaire',
- 'Cannot delete invoice!' => 'Impossible de supprimer la facture!',
- 'Cannot delete transaction!' => 'Impossible de supprimer la saisie!',
- 'Cannot post invoice for a closed period!' => 'Impossible d\'enregistrer la facture sur un exercice clos!',
- 'Cannot post invoice!' => 'Impossible d\'enregistrer la facture!',
- 'Cannot post payment for a closed period!' => 'Impossible d\'enregistrer le paiement sur un exercice clos!',
- 'Cannot post transaction for a closed period!' => 'Impossible d\'enregistrer l\'écriture sur un exercice clos!',
- 'Cannot post transaction!' => 'Impossible d\'enregistrer l\'écriture!',
- 'Cash' => 'Financier',
- 'Cc' => 'Copie',
- 'Change' => 'Retour monnaie',
- 'Check' => 'Chèque',
- 'City' => 'Ville',
- 'Closed' => 'Clôturé',
- 'Company Name' => 'Nom de société',
- 'Compare to' => 'Comparer à',
- 'Confirm!' => 'Confirmer!',
- 'Contact' => 'Contact',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Country' => 'Pays',
- 'Credit' => 'Crédit',
- 'Credit Limit' => 'Encours autorisé',
- 'Curr' => 'Dev.',
- 'Currency' => 'Devise',
- 'Current' => 'En cours',
- 'Current Earnings' => 'Bénéfice de l\'exercice',
- 'Customer' => 'Client',
- 'Customer Number' => 'Numéro de client',
- 'Customer missing!' => 'Client manquant!',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Date Paid' => 'Date de paiement',
- 'Debit' => 'Débit',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Decimalplaces' => 'Décimales',
- 'Delete' => 'Supprimer',
- 'Delivery Date' => 'Date de livraison',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Detail' => 'Détail',
- 'Due Date' => 'Échéance',
- 'Due Date missing!' => 'Date d\'échéance manquante!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Message éléctronique à',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'E-mailed' => 'E-mail envoyé',
- 'Edit AR Transaction' => 'Modifier une recette',
- 'Edit POS Invoice' => 'Modifier ticket de caisse',
- 'Edit Sales Invoice' => 'Modifier facture de vente',
- 'Exch' => 'Change',
- 'Exchange Rate' => 'Taux de change',
- 'Exchange rate for payment missing!' => 'Taux de change manquant pour le paiement!',
- 'Exchange rate missing!' => 'Taux de change manquant!',
- 'Extended' => 'Prix total',
- 'Fax' => 'Fax',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'Group' => 'Groupe',
- 'Group Items' => 'Grouper objets',
- 'Heading' => 'En-tête',
- 'ID' => 'ID',
- 'In-line' => 'En ligne',
- 'Include Exchange Rate Difference' => 'Inclure différence conversion devises',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Income Statement' => 'Compte de résultat',
- 'Internal Notes' => 'Notes internes',
- 'Invoice' => 'Facture',
- 'Invoice Date' => 'Date de facturation',
- 'Invoice Date missing!' => 'Date de facture manquante!',
- 'Invoice Number' => 'Numéro de facture',
- 'Invoice Number missing!' => 'Numéro de facture manquant!',
- 'Invoice deleted!' => 'Facture supprimée!',
- 'Invoice posted!' => 'Facture enregistrée!',
- 'Invoice processed!' => 'Facture passée!',
- 'Item not on file!' => 'Objet non-listé!',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Language' => 'Langue',
- 'Manager' => 'Gestionnaire',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Message' => 'Message',
- 'Method' => 'Méthode',
- 'Month' => 'Mois',
- 'N/A' => 'Non applicable',
- 'No.' => 'N°',
- 'Non-taxable Purchases' => 'Achats hors taxe',
- 'Non-taxable Sales' => 'Ventes hors taxe',
- 'Notes' => 'Notes',
- 'Nothing selected!' => 'Pas de sélection!',
- 'Nothing to print!' => 'Rien à imprimer',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Number missing in Row' => 'Numéro manquant dans ligne',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Open' => 'Ouvert',
- 'Order' => 'Commande',
- 'Order Date missing!' => 'Date de commande manquante!',
- 'Order Number' => 'Numéro de commande',
- 'Order Number missing!' => 'Numéro de commande manquant!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Liste d\'envoi',
- 'Packing List Date missing!' => 'La liste d\'envoi n\'a pas de date!',
- 'Packing List Number missing!' => 'Le numéro de la liste d\'envoi est manquant!',
- 'Paid' => 'Total payé',
- 'Part' => 'Marchandise',
- 'Payment date missing!' => 'Date de paiement manquante!',
- 'Payments' => 'Paiements',
- 'Period' => 'Période',
- 'Phone' => 'Tél.',
- 'Pick List' => 'Liste de sélection',
- 'Post' => 'Enregistrer',
- 'Post as new' => 'Enregistrer comme nouveau',
- 'Posted!' => 'Enregistré!',
- 'Postscript' => 'Postcript',
- 'Price' => 'Prix',
- 'Print' => 'Imprimer',
- 'Print and Post' => 'Imprimer et imputer',
- 'Printed' => 'Imprimé',
- 'Project' => 'Projet',
- 'Project Number' => 'Numéro de projet',
- 'Project Transactions' => 'Mouvements - Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Purchase Order' => 'Commande d\'achat',
- 'Qty' => 'Qté',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'File d\'attente',
- 'Queued' => 'Mis en file d\'attente',
- 'Quotation' => 'Devis',
- 'Quotation Date missing!' => 'Date de devis manqante!',
- 'Quotation Number missing!' => 'Numéro de devis manquant!',
- 'Recd' => 'Reçu',
- 'Receipt' => 'Reçu',
- 'Receipts' => 'Reçus',
- 'Record in' => 'Enregistrer dans',
- 'Remaining' => 'Restant',
- 'Report for' => 'Rapport de',
- 'Required by' => 'Requis pour',
- 'SKU' => 'SKU',
- 'Sales Invoice.' => 'Facture de vente.',
- 'Sales Order' => 'Commande de vente',
- 'Salesperson' => 'Vendeur',
- 'Screen' => 'Écran',
- 'Select Printer or Queue!' => 'Sélectionner une imprimante ou une file!',
- 'Select all' => 'Tout sélectionner',
- 'Select from one of the items below' => 'Sélectionner un des objets ci-dessous',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select payment' => 'Sélectionner le payement',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Serial No.' => 'N° série',
- 'Service' => 'Prestation de service',
- 'Ship' => 'Expédier',
- 'Ship to' => 'Expédier à',
- 'Ship via' => 'Expédier via',
- 'Shipping Address' => 'Adresse d\'envoi',
- 'Shipping Point' => 'Expéditeur',
- 'Source' => 'Source',
- 'Standard' => 'Standard',
- 'State/Province' => 'Région/État',
- 'Statement' => 'Relevé',
- 'Statement sent to' => 'Relevé envoyé à',
- 'Statements sent to printer!' => 'Relevés envoyés à l\'imprimante!',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Summary' => 'Résumé',
- 'Tax' => 'Taxe',
- 'Tax Included' => 'Taxe incluse',
- 'Tax collected' => 'Taxe collectée',
- 'Tax paid' => 'Taxe payée',
- 'Till' => 'Caisse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Trade Discount' => 'Escompte commercial',
- 'Transaction' => 'Écriture',
- 'Transaction deleted!' => 'Écriture supprimée!',
- 'Transaction posted!' => 'Écriture enregistrée!',
- 'Translation not on file!' => 'Pas de traduction dans le fichier',
- 'Trial Balance' => 'Balance Globale',
- 'Unit' => 'Unité',
- 'Update' => 'Mettre à jour',
- 'Vendor' => 'Fournisseur',
- 'Vendor Number' => 'Numéro de fournisseur',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'What type of item is this?' => 'De quel type est cet objet?',
- 'Work Order' => 'Fiche de traitement',
- 'Year' => 'Année',
- 'Yes' => 'Oui',
- 'as at' => 'au',
- 'ea' => 'ch',
- 'for Period' => 'pour la période',
- 'sent' => 'envoyé',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Écriture_recettes' => 'ar_transaction',
- 'continuer' => 'continue',
- 'supprimer' => 'delete',
- 'e_mail' => 'e_mail',
- 'enregistrer' => 'post',
- 'enregistrer_comme_nouveau' => 'post_as_new',
- 'imprimer' => 'print',
- 'imprimer_et_imputer' => 'print_and_post',
- 'facture_de_vente.' => 'sales_invoice.',
- 'commande_de_vente' => 'sales_order',
- 'tout_sélectionner' => 'select_all',
- 'expédier_à' => 'ship_to',
- 'mettre_à_jour' => 'update',
- 'oui' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/pw b/sql-ledger/locale/fr/pw
deleted file mode 100644
index 130bffb..0000000
--- a/sql-ledger/locale/fr/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuer',
- 'Password' => 'Mot de passe',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuer' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/rc b/sql-ledger/locale/fr/rc
deleted file mode 100644
index b11a39d..0000000
--- a/sql-ledger/locale/fr/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Balance' => 'Solde',
- 'Beginning Balance' => 'Solde du départ',
- 'Cleared' => 'Lettré',
- 'Continue' => 'Continuer',
- 'Current' => 'En cours',
- 'Date' => 'Date',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Decrease' => 'Diminution',
- 'Deposit' => 'Dépôt',
- 'Description' => 'Description',
- 'Detail' => 'Détail',
- 'Difference' => 'Différence',
- 'Done' => 'Fait!',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'Include Exchange Rate Difference' => 'Inclure différence conversion devises',
- 'Increase' => 'Augmentation',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Month' => 'Mois',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Out of balance!' => 'Non-soldée!',
- 'Outstanding' => 'En retard',
- 'Payment' => 'Paiement',
- 'Period' => 'Période',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reconciliation' => 'Rapprochement',
- 'Reconciliation Report' => 'Rapport de rapprochement',
- 'Select all' => 'Tout sélectionner',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Source' => 'Source',
- 'Statement Balance' => 'Solde relevé de compte',
- 'Summary' => 'Résumé',
- 'To' => 'au',
- 'Update' => 'Mettre à jour',
- 'Year' => 'Année',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuer' => 'continue',
- 'fait!' => 'done',
- 'tout_sélectionner' => 'select_all',
- 'mettre_à_jour' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/fr/rp b/sql-ledger/locale/fr/rp
deleted file mode 100644
index f84f98a..0000000
--- a/sql-ledger/locale/fr/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Dépenses exigibles',
- 'AR Aging' => 'Recettes exigibles',
- 'Account' => 'Compte',
- 'Account Number' => 'Numéro de compte',
- 'Accounting Menu' => 'Menu de comptabilité',
- 'Accounts' => 'Comptes',
- 'Accrual' => 'Accumulation',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Afficher tous les comptes',
- 'Amount' => 'Montant',
- 'Apr' => 'Avril',
- 'April' => 'Avril',
- 'Attachment' => 'Pièce jointe',
- 'Aug' => 'Août',
- 'August' => 'Août',
- 'Balance' => 'Solde',
- 'Balance Sheet' => 'Bilan',
- 'Bcc' => 'Copie cachée',
- 'Cash' => 'Financier',
- 'Cc' => 'Copie',
- 'Compare to' => 'Comparer à',
- 'Continue' => 'Continuer',
- 'Copies' => 'Copies',
- 'Credit' => 'Crédit',
- 'Curr' => 'Dev.',
- 'Current' => 'En cours',
- 'Current Earnings' => 'Bénéfice de l\'exercice',
- 'Customer' => 'Client',
- 'Customer not on file!' => 'Client absent du fichier!',
- 'Date' => 'Date',
- 'Debit' => 'Débit',
- 'Dec' => 'Déc.',
- 'December' => 'Décembre',
- 'Decimalplaces' => 'Décimales',
- 'Department' => 'Service',
- 'Description' => 'Description',
- 'Detail' => 'Détail',
- 'Due Date' => 'Échéance',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Message éléctronique à',
- 'E-mail address missing!' => 'Adresse e-mail manquante!',
- 'Feb' => 'Fév.',
- 'February' => 'Février',
- 'From' => 'De',
- 'GIFI' => 'Code d\'identification comptable ou fiscale',
- 'Heading' => 'En-tête',
- 'ID' => 'ID',
- 'In-line' => 'En ligne',
- 'Include Exchange Rate Difference' => 'Inclure différence conversion devises',
- 'Include in Report' => 'Inclure dans l\'état',
- 'Income Statement' => 'Compte de résultat',
- 'Invoice' => 'Facture',
- 'Jan' => 'Jan.',
- 'January' => 'Janvier',
- 'Jul' => 'Juill.',
- 'July' => 'Juillet',
- 'Jun' => 'Juin',
- 'June' => 'Juin',
- 'Language' => 'Langue',
- 'Mar' => 'Mars',
- 'March' => 'Mars',
- 'May' => 'Mai',
- 'May ' => 'Mai ',
- 'Memo' => 'Mémo',
- 'Message' => 'Message',
- 'Method' => 'Méthode',
- 'Month' => 'Mois',
- 'N/A' => 'Non applicable',
- 'Non-taxable Purchases' => 'Achats hors taxe',
- 'Non-taxable Sales' => 'Ventes hors taxe',
- 'Nothing selected!' => 'Pas de sélection!',
- 'Nov' => 'Nov.',
- 'November' => 'Novembre',
- 'Number' => 'Numéro',
- 'Oct' => 'Oct.',
- 'October' => 'Octobre',
- 'Order' => 'Commande',
- 'PDF' => 'PDF',
- 'Payments' => 'Paiements',
- 'Period' => 'Période',
- 'Postscript' => 'Postcript',
- 'Print' => 'Imprimer',
- 'Project' => 'Projet',
- 'Project Number' => 'Numéro de projet',
- 'Project Transactions' => 'Mouvements - Projet',
- 'Project not on file!' => 'Projet absent du fichier!',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Reçus',
- 'Report for' => 'Rapport de',
- 'Salesperson' => 'Vendeur',
- 'Screen' => 'Écran',
- 'Select all' => 'Tout sélectionner',
- 'Select from one of the names below' => 'Sélectionner un des noms ci-dessous',
- 'Select from one of the projects below' => 'Sélectionner un des projets ci-dessous',
- 'Select postscript or PDF!' => 'Sélectionner Postscript ou PDF!',
- 'Sep' => 'Sept.',
- 'September' => 'Septembre',
- 'Source' => 'Source',
- 'Standard' => 'Standard',
- 'Statement' => 'Relevé',
- 'Statement sent to' => 'Relevé envoyé à',
- 'Statements sent to printer!' => 'Relevés envoyés à l\'imprimante!',
- 'Subject' => 'Objet',
- 'Subtotal' => 'Sous total',
- 'Summary' => 'Résumé',
- 'Tax' => 'Taxe',
- 'Tax collected' => 'Taxe collectée',
- 'Tax paid' => 'Taxe payée',
- 'Till' => 'Caisse',
- 'To' => 'au',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance Globale',
- 'Vendor' => 'Fournisseur',
- 'Vendor not on file!' => 'Fournisseur absent du fichier!',
- 'Year' => 'Année',
- 'as at' => 'au',
- 'for Period' => 'pour la période',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuer' => 'continue',
- 'e_mail' => 'e_mail',
- 'imprimer' => 'print',
- 'tout_sélectionner' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/COPYING b/sql-ledger/locale/gr/COPYING
deleted file mode 100644
index 4c08607..0000000
--- a/sql-ledger/locale/gr/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Greek texts:
-#
-# Author: Dimitris Andavoglou <dimitrisand@nortech.gr>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/gr/LANGUAGE b/sql-ledger/locale/gr/LANGUAGE
deleted file mode 100644
index 8f5de0b..0000000
--- a/sql-ledger/locale/gr/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Greek
diff --git a/sql-ledger/locale/gr/admin b/sql-ledger/locale/gr/admin
deleted file mode 100644
index 7f5b21f..0000000
--- a/sql-ledger/locale/gr/admin
+++ /dev/null
@@ -1,129 +0,0 @@
-$self{texts} = {
- 'Access Control' => '¸ëåã÷ïò ðñüóâáóçò',
- 'Accounting' => 'ËïãéóôéêÞ',
- 'Add User' => 'ÐñïóèÞêç ÷ñÞóôç',
- 'Address' => 'ÄéÝõèõíóç',
- 'Administration' => 'Äéá÷åßñéóç',
- 'Administrator' => 'Äéá÷åéñéóôÞò',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Change Admin Password',
- 'Change Password' => 'ÁëëáãÞ êùäéêïý',
- 'Character Set' => 'Êùäéêïðïßçóç',
- 'Click on login name to edit!' => 'Click on login name to edit!',
- 'Company' => 'Åôáéñßá',
- 'Connect to' => 'Óýíäåóç ìå',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Create Chart of Accounts' => 'Create Chart of Accounts',
- 'Create Dataset' => 'Create Dataset',
- 'DBI not installed!' => 'DBI äåí Ý÷åé åãêáôáóôáèåß!',
- 'Database' => 'ÂÜóç äåäïìÝíùí',
- 'Database Administration' => 'Äéá÷åéñéóôÞò âÜóçò äåäïìÝíùí',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database User missing!' => 'Database User missing!',
- 'Dataset missing!' => 'Dataset missing!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'ÌïñöÞ çìåñïìçíßáò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Delete Dataset' => 'Delete Dataset',
- 'Directory' => 'Directory',
- 'Driver' => 'Driver',
- 'Edit User' => 'Åðåîåñãáóßá ÷ñÞóôç',
- 'Existing Datasets' => 'Existing Datasets',
- 'Fax' => 'Öáî',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Hostname missing!',
- 'Language' => 'Ãëþóóá',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Leave host and port field empty unless you want to make a remote connection.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'ÅéóáãùãÞ',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'ÅîáãùãÞ',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => '¼íïìá',
- 'New Templates' => 'New Templates',
- 'No Database Drivers available!' => 'No Database Drivers available!',
- 'No Dataset selected!' => 'No Dataset selected!',
- 'Nothing to delete!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá äéáãñáöÞ!',
- 'Oracle Database Administration' => 'Oracle Database Administration',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Pg Database Administration',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'ÔçëÝöùíï',
- 'Port' => 'Port',
- 'Port missing!' => 'Port missing!',
- 'Printer' => 'ÅêôõðùôÞò',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Setup Templates' => 'Setup Templates',
- 'Signature' => 'ÕðïãñáöÞ',
- 'Templates' => 'Templates',
- 'The following Datasets are not in use and can be deleted' => 'The following Datasets are not in use and can be deleted',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Update Dataset',
- 'Use Templates' => 'Use Templates',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'You must enter a host and port for local and remote connections!' => 'You must enter a host and port for local and remote connections!',
- 'does not exist' => 'does not exist',
- 'is already a member!' => 'is already a member!',
- 'successfully created!' => 'successfully created!',
- 'successfully deleted!' => 'successfully deleted!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'ÐñïóèÞêç_÷ñÞóôç' => 'add_user',
- 'change_admin_password' => 'change_admin_password',
- 'ÁëëáãÞ_êùäéêïý' => 'change_password',
- 'ÓõíÝ÷åéá' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'ÄéáãñáöÞ' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'ÅéóáãùãÞ' => 'login',
- 'ÅîáãùãÞ' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'ÁðïèÞêåõóç' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/all b/sql-ledger/locale/gr/all
deleted file mode 100644
index 0daefc0..0000000
--- a/sql-ledger/locale/gr/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'ÁãïñÝò',
- 'AP Aging' => 'Creditor Aging',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'ÊéíÞóç ÁãïñÜò',
- 'AP Transactions' => 'ÊéíÞóåéò Áãïñþí',
- 'AR' => 'ÐùëÞóåéò',
- 'AR Aging' => 'Debtor Aging',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'AR Transactions' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'About' => '',
- 'Above' => '',
- 'Access Control' => '¸ëåã÷ïò ðñüóâáóçò',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Account Number' => 'Êùäéêüò Ëïãáñéáóìïý',
- 'Account Number missing!' => 'Ï êùäéêüò ëïãáñéáóìïý ëåßðåé',
- 'Account Type' => 'Ôýðïò Êùäéêïý',
- 'Account Type missing!' => 'Ï ôýðïò ôïõ êùäéêïý ëåßðåé',
- 'Account deleted!' => 'Ï ëïãáñéáóìüò äéáãñÜöçêå',
- 'Account does not exist!' => 'Ï ëïãáñéáóìüò äåí õðÜñ÷åé',
- 'Account saved!' => 'Ï ëïãáñéóìüò áðïèçêåýôçêå',
- 'Accounting' => 'ËïãéóôéêÞ',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Accounts' => 'Ëïãáñéáóìïß',
- 'Accrual' => 'Áýîçóç',
- 'Activate Audit trails' => '',
- 'Active' => 'Åíåñãüò',
- 'Add' => 'ÐñïóèÞêç',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'ÐñïóèÞêç ëïãáñéáóìïý',
- 'Add Assembly' => '',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'ÐñïóèÞêç ÐåëÜôç',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => 'ÐñïóèÞêç õðáëëÞëïõ',
- 'Add Exchange Rate' => 'ÐñïóèÞêç ôéìÞò óõíáëÜãìáôïò',
- 'Add GIFI' => '',
- 'Add General Ledger Transaction' => '',
- 'Add Group' => 'ÐñïóèÞêç ïìÜäáò',
- 'Add Labor/Overhead' => '',
- 'Add Language' => 'ÐñïóèÞêç ãëþóóáò',
- 'Add POS Invoice' => 'ÐñïóèÞêç áðüäçîçò ÔáìåéáêÞò ìç÷áíÞò',
- 'Add Part' => '',
- 'Add Pricegroup' => '',
- 'Add Project' => 'ÐñïóèÞêç Ýñãïõ',
- 'Add Purchase Order' => '',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'ÐñïóèÞêç Ôéìïëïãßïõ ðþëçóçò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Add Service' => 'ÐñïóèÞêç õðçñåóßáò',
- 'Add Transaction' => 'ÐñïóèÞêç óõíáëëáãÞò',
- 'Add User' => 'ÐñïóèÞêç ÷ñÞóôç',
- 'Add Vendor' => 'ÐñïóèÞêç ÐéóôùôÞ',
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Add Warehouse' => 'ÐñïóèÞêç ÁðïèÞêçò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Administration' => 'Äéá÷åßñéóç',
- 'Administrator' => 'Äéá÷åéñéóôÞò',
- 'After Deduction' => 'ÌåôÜ ¸êðôùóéò',
- 'All' => '¼ëá',
- 'All Accounts' => '¼ëïé ïé ëïãáñéáóìïß',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'All Items' => 'ÐñïóèÞêç åßäïõò',
- 'Allowances' => 'Ðáñï÷Ýò',
- 'Amount' => 'Ðïóü',
- 'Amount Due' => '',
- 'Amount missing!' => 'Ðïóü ðïõ ëåßðåé',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Invoice Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôï áñéèìü ôéìïëïãßïõ',
- 'Are you sure you want to delete Order Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôïí áñéèìü ðáñáããåëßáò',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Åßóáé óßãïõñïò üôé èÝëåéò íá äéáãñÜøåéò ôçí êßíçóç',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'ÓõíáñìïëïãÞóåéò',
- 'Assemblies restocked!' => '',
- 'Assembly' => 'Óõíáñìïëüãçóç',
- 'Asset' => 'ÐÜãéï',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Audit Control' => 'Åëåã÷ïò',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'Áíôßãñáöï áóöáëåßáò',
- 'Backup sent to' => 'ÁðïóôïëÞ áíôéãñÜöïõ áóöáëåßáò óå..',
- 'Balance' => 'Éóïæýãéï',
- 'Balance Sheet' => 'Éóïæýãéï',
- 'Based on' => 'ÂáóéóìÝíï óå',
- 'Batch Printing' => 'ÌáæéêÞ åêôýðùóç',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => 'Éóïæýãéï ¸íáñîçò',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => '',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Ôá âéâëßá åßíáé áíïé÷ôÜ',
- 'Break' => 'ÄéÜëåõììá',
- 'Business' => 'Åðé÷åßñçóç',
- 'Business Number' => 'Êùäéêüò Åðé÷åßñçóçò',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => '',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => 'Cannot delete debtor!',
- 'Cannot delete default account!' => '',
- 'Cannot delete invoice!' => 'Äåí ìðïñåß íá äéáãñáöåß ôï ôéìïëüãéï',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => 'Äåí ìðïñåß íá äéáãñáöåß ç ðáñáããåëßá',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Äåí ìðïñåß íá äéáãñáöåß ç êßíçóç',
- 'Cannot delete vendor!' => 'Äåí ìðïñåß íá äéáãñáöåß ï ðéóôùôÞò',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => 'Äåí ìðïñåß íá åêäïèåß áðüäåéîç',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => '',
- 'Cannot post transaction for a closed period!' => '',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => 'Äåí ìðïñïýí íá äéáãñáöïýí áñ÷åßá',
- 'Cannot save account!' => 'Äåí ìðïñïýí íá áðïèçêåõôïýí ïé ëïãáñéáìïß',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Äåí ìðïñåß íá áðïèçêåõôåß ç ðáñáããåëßá',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => 'ÑåõóôÜ',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Change Admin Password',
- 'Change Password' => 'ÁëëáãÞ êùäéêïý',
- 'Character Set' => 'Êùäéêïðïßçóç',
- 'Chart of Accounts' => 'ÃñÜöçìá ôùí Êùäéêþí',
- 'Check' => 'ÅðéôáãÞ',
- 'Check Inventory' => '¸ëåã÷ïò ÁðïãñáöÞò',
- 'Checks' => 'ÅðéôáãÝò',
- 'City' => 'Ðüëç',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Click on login name to edit!',
- 'Close Books up to' => 'Êëåßóéìï âéâëßùí ìÝ÷ñé',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Code' => 'Êùäéêüò',
- 'Code missing!' => 'Ï Êùäéêüò ëåßðåé',
- 'Company' => 'Åôáéñßá',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Compare to' => '',
- 'Components' => 'ÓõóôáôéêÜ',
- 'Confirm' => '',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Connect to' => 'Óýíäåóç ìå',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Contra' => '',
- 'Copies' => 'Áíôßãñáöá',
- 'Copy to COA' => '',
- 'Cost' => 'Êüóôïò',
- 'Cost Center' => 'ÊÝíôñï Êüóôïò',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Ç áðïèÞêåõóç äåí åßíáé äõíáôÞ',
- 'Could not transfer Inventory!' => '',
- 'Country' => '×þñá',
- 'Create Chart of Accounts' => 'Create Chart of Accounts',
- 'Create Dataset' => 'Create Dataset',
- 'Credit' => 'Ðßóôùóç',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Curr' => '',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Current Earnings' => 'ÔñÝ÷ùíôá êÝñäç',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer History' => 'Éóôïñéêü ÐåëÜôç',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer deleted!' => 'Ï ðåëÜôçò äéáãñÜöçêå!',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Customer saved!' => 'Ï ÐåëÜôçò áðïèçêåýôçêå!',
- 'Customers' => 'ÐåëÜôåò',
- 'DBI not installed!' => 'DBI äåí Ý÷åé åãêáôáóôáèåß!',
- 'DOB' => '',
- 'Database' => 'ÂÜóç äåäïìÝíùí',
- 'Database Administration' => 'Äéá÷åéñéóôÞò âÜóçò äåäïìÝíùí',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database Host' => '',
- 'Database User missing!' => 'Database User missing!',
- 'Dataset' => '',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Dataset missing!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'Çìåñïìçíßá',
- 'Date Format' => 'ÌïñöÞ çìåñïìçíßáò',
- 'Date Paid' => 'Çì. ÐëçñùìÞò',
- 'Date Received' => '',
- 'Date missing!' => 'Äåí õðÜñ÷åé ç çìåñïìçíßá',
- 'Date received missing!' => '',
- 'Debit' => '×ñÝïò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Decimalplaces' => 'ÄåêáäéêÜ',
- 'Decrease' => 'Ìåßùóç',
- 'Deduct after' => 'ÐáñáêñÜôçóç ìåôÜ',
- 'Deduction deleted!' => 'ÐáñáêñÜôçóç äéáãñÜöçêå',
- 'Deduction saved!' => 'ÐáñáêñÜôçóç áðïèçêåýôçêå',
- 'Deductions' => 'ÐáñáêñáôÞóåéò',
- 'Defaults' => 'ÐñïåðéëïãÝò',
- 'Defaults saved!' => 'ÐñïåðéëïãÝò áðïèçêåýôçêáí',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Delete Account' => 'ÄéáãñáöÞ Ëïãáñéáóìïý',
- 'Delete Dataset' => 'Delete Dataset',
- 'Delivery Date' => '',
- 'Department' => 'ÔìÞìá',
- 'Department deleted!' => 'ÔìÞìá äéáãñÜöçêå',
- 'Department saved!' => 'ÔìÞìá áðïèçêåýôçêå',
- 'Departments' => 'ÔìÞìáôá',
- 'Deposit' => 'ÊáôÜèåóç',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Description Translations' => 'ÐåñéãñáöÞ ÌåôáöñÜóåùí',
- 'Description missing!' => 'ÐåñéãñáöÞ ëåßðåé',
- 'Detail' => 'ËåðôïìÝñåéá',
- 'Difference' => 'ÄéáöïñÜ',
- 'Directory' => 'Directory',
- 'Discount' => '¸êðôùóç',
- 'Done' => 'ÅíôÜîåé',
- 'Drawing' => 'Ó÷Ýäéï',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Due Date missing!' => 'Ç çìåñïìçíßá ëÞîçò ëåßðåé',
- 'E-mail' => '',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => '',
- 'E-mailed' => '',
- 'Edit' => 'Åðåîåñãáóßá',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Åðåîåñãáóßá ëïãáñéáóìïý',
- 'Edit Assembly' => 'Åðåîåñãáóßá óõíáñìïëüãçóçò',
- 'Edit Business' => 'Åðåîåñãáóßá åðé÷åßñçóçò',
- 'Edit Cash Transfer Transaction' => 'Åðåîåñãáóßá êßíçóçò ìåôáöïñÜò ÷ñçìÜôùí',
- 'Edit Customer' => 'Åðåîåñãáóßá ÐåëÜôç',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => 'Åðåîåñãáóßá ÅñãáæïìÝíïõ',
- 'Edit GIFI' => '',
- 'Edit General Ledger Transaction' => '',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => 'Åðåîåñãáóßá ãëþóóáò',
- 'Edit POS Invoice' => 'Åðåîåñãáóßá áðüäåéîçò ôáìåéáêÞò',
- 'Edit Part' => '',
- 'Edit Preferences for' => 'Åðåîåñãáóßá ðñïôéìÞóåùí ãéá',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Åðåîåñãáóßá Ýñãïõ',
- 'Edit Purchase Order' => '',
- 'Edit Quotation' => 'Åðåîåñãáóßá ðñïóöïñÜò',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Åðåîåñãáóßá ôéìïëïãßïõ',
- 'Edit Sales Order' => '',
- 'Edit Service' => 'Åðåîåñãáóßá õðçñåóßáò',
- 'Edit Template' => '',
- 'Edit User' => 'Åðåîåñãáóßá ÷ñÞóôç',
- 'Edit Vendor' => 'Edit Creditor',
- 'Edit Vendor Invoice' => 'Edit Creditor Invoice',
- 'Edit Warehouse' => '',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Employee Name' => '¼íïìá ÕðáëëÞëïõ',
- 'Employee Number' => 'Áñ. ÕðáëëÞëïõ',
- 'Employee deleted!' => 'Ï ÕðÜëëçëïò ÄéáãñÜöçêå',
- 'Employee pays' => '',
- 'Employee saved!' => 'Ï ÕðÜëëçëïò áðïèçêåýôçêå',
- 'Employees' => 'ÕðÜëëçëïé',
- 'Employer' => 'Åñãïäüôçò',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => '',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'ÅÕÑ',
- 'Equity' => 'Åðéåßêéá',
- 'Excempt age <' => '',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Exchange rate missing!' => '',
- 'Existing Datasets' => 'Existing Datasets',
- 'Expense' => '¸îïäá',
- 'Expense Account' => 'Ëïãáñéáóìüò åîüäùí',
- 'Expense/Asset' => '¸îïäï/ÐÜãéï',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'Foreign Exchange Gain' => 'ÊÝñäïò áðü óõííáëáãìáôéêÞ äéáöïñÜ ',
- 'Foreign Exchange Loss' => 'Æçìßá áðü óõíáëëáãìáôéêÞ äéáöïñÜ',
- 'From' => 'Áðü',
- 'GIFI' => '',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => '',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => '',
- 'Goods & Services' => '',
- 'Group' => 'ÏìÜäá',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => 'ÄÐ',
- 'HTML Templates' => '',
- 'Heading' => '',
- 'History' => 'Éóôïñéêü',
- 'Home Phone' => 'Ôçë. Óðéôéïý',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Hostname missing!',
- 'IBAN' => '',
- 'ID' => '',
- 'Image' => 'Åéêüíá',
- 'In-line' => '',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => '',
- 'Include in drop-down menus' => '',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Include this account on debtor/creditor forms to set debtor/creditor taxable?',
- 'Income' => 'Åéóüäçìá',
- 'Income Account' => '',
- 'Income Statement' => '',
- 'Incorrect Dataset version!' => '',
- 'Incorrect Password!' => 'ËÜèïò êùäéêüò',
- 'Increase' => 'Áýîçóç',
- 'Individual Items' => '',
- 'Internal Notes' => '',
- 'Inventory' => 'ÁðïãñáöÞ',
- 'Inventory Account' => 'Ëïãáñéáóìüò ÁðïãñáöÞò',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '',
- 'Inventory saved!' => 'Ç ÁðïãñáöÞ áðïèçêåýôçêå',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Date missing!' => '',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => 'Ôéìïëüãéá',
- 'Is this a summary account to record' => '',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Ôï ôåìÜ÷éï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Items' => 'ÔåìÜ÷éá',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'LaTeX Templates' => '',
- 'Labor/Overhead' => '',
- 'Language' => 'Ãëþóóá',
- 'Language deleted!' => 'Ç ãëþóóá äéáãñÜöêò',
- 'Language saved!' => 'Ç ãëþóóá áðïèçêÝõôçêå',
- 'Languages' => 'Ãëþóóåó',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => '',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Leave host and port field empty unless you want to make a remote connection.',
- 'Liability' => 'Ðáèçôéêü',
- 'Licensed to' => 'Áäåéá óå',
- 'Line Total' => '',
- 'Link' => 'Óýíäåóìïò',
- 'Link Accounts' => '',
- 'List' => 'Ëßóôá',
- 'List Accounts' => 'Ëßóôá Ëïãáñéáóìþí',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => '',
- 'List Languages' => 'Ëßóôá ãëùóóþí',
- 'List Price' => 'Ëßóôá ôéìþí',
- 'List Projects' => 'Ëßóôá ¸ñãùí',
- 'List SIC' => '',
- 'List Transactions' => 'Ëßóôá ÊéíÞóåùí',
- 'List Warehouses' => 'Ëßóôá áðïèçêþí',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'ÅéóáãùãÞ',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'ÅîáãùãÞ',
- 'Make' => '',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => 'ÌÝãéóôï',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Ìýíçìá',
- 'Method' => 'ÌÝèïäïò',
- 'Microfiche' => '',
- 'Model' => 'ÌïíôÝëï',
- 'Month' => 'ÌÞíáò',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '',
- 'Name' => '¼íïìá',
- 'Name missing!' => 'Ôï üíïìá äåí õðÜñ÷åé',
- 'New Templates' => 'New Templates',
- 'No' => '¼÷é',
- 'No Database Drivers available!' => 'No Database Drivers available!',
- 'No Dataset selected!' => 'No Dataset selected!',
- 'No email address for' => '',
- 'No.' => '',
- 'Non-taxable' => 'Äåí åßíáé öïñïëïãßóéìï',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nothing entered!' => 'Äåí å÷åé ãßíåé åéóáãùãÞ',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Äåí Ý÷å åðéëå÷èåß ôßðïôá',
- 'Nothing to delete!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá äéáãñáöÞ!',
- 'Nothing to print!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá åêôýðùóç',
- 'Nothing to transfer!' => '',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Number Format' => '',
- 'Number missing in Row' => '',
- 'O' => 'Ï',
- 'Obsolete' => 'Áðáñ÷áéùìÝíïò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'On Hand' => '',
- 'Open' => '¢íïéãìá',
- 'Oracle Database Administration' => 'Oracle Database Administration',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Date' => 'Çì. Ðáñáããåëßáò',
- 'Order Date missing!' => '',
- 'Order Entry' => '',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Order Number missing!' => '',
- 'Order deleted!' => 'Ç Ðáñáããåëßá äéáãñÜöçêå',
- 'Order processed!' => '',
- 'Order saved!' => 'Ç Ðáñáããåëßá áðïèçêåýôçêå',
- 'Orphaned' => '',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => 'Áîéïóçìåßùôï',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => '',
- 'Packing List Date missing!' => '',
- 'Packing List Number missing!' => '',
- 'Packing Lists' => '',
- 'Paid' => '',
- 'Part' => '',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => '',
- 'Parts Inventory' => '',
- 'Password' => '',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => '',
- 'Payment' => '',
- 'Payment date missing!' => '',
- 'Payment posted!' => '',
- 'Payments' => '',
- 'Payroll Deduction' => 'ÊñÜôçóç ìéóèïý',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Database Administration',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'ÔçëÝöùíï',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port missing!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'ÅðéëïãÝò',
- 'Preferences saved!' => 'ÅðéëïãÝò áðïèçêåýôçêáí',
- 'Prepayment' => 'ÐñïðëçñùìÞ',
- 'Price' => 'ÔéìÞ',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Åêôýðùóç',
- 'Print and Post' => '¸êôýðùóç êáé áðïóôïëÞ',
- 'Print and Save' => 'Åêôýðùóç êáé áðïèÞêåõóç',
- 'Printed' => 'Åêôõðþèçêå',
- 'Printer' => 'ÅêôõðùôÞò',
- 'Printing ... ' => 'Åêôõðþíåôáé...',
- 'Profit Center' => '',
- 'Project' => '¸ñãï',
- 'Project Description Translations' => '',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '¸ñãá',
- 'Purchase Order' => '',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => '',
- 'Qty' => 'Ðïó.',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => '',
- 'Rate' => '',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => 'Áðüäåéîç',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => '',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => '',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => '',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => '',
- 'Reports' => '',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => '',
- 'Retained Earnings' => '',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'Ðþëçóç',
- 'Sales' => '',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => '',
- 'Sales Order Number' => '',
- 'Sales Orders' => '',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => '',
- 'Screen' => 'Ïèüíç',
- 'Search' => 'ÁíáæÞôçóç',
- 'Select' => 'ÅðéëïãÞ',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Select all' => 'ÅðéëïãÞ üëùí',
- 'Select from one of the items below' => '',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '',
- 'Send by E-Mail' => '',
- 'Sep' => '',
- 'September' => '',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Õðçñåóßá',
- 'Service Items' => 'Õðçñåóßåò',
- 'Services' => '',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Setup Templates',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => '',
- 'Signature' => 'ÕðïãñáöÞ',
- 'Source' => 'ÐçãÞ',
- 'Spoolfile' => '',
- 'Standard' => '',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => '',
- 'Stylesheet' => '',
- 'Sub-contract GIFI' => '',
- 'Subject' => '',
- 'Subtotal' => '',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => '',
- 'System Defaults' => '',
- 'Tax' => 'Öüñïò',
- 'Tax Accounts' => '',
- 'Tax Included' => '',
- 'Tax Number' => '',
- 'Tax Number / SSN' => 'Á.Ö.Ì.',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => '',
- 'Template saved!' => '',
- 'Templates' => 'Templates',
- 'Terms' => '',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'The following Datasets are not in use and can be deleted',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!',
- 'Till' => '',
- 'To' => '',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.',
- 'Top Level' => '',
- 'Total' => '',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => '',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => '',
- 'Transaction reversal enforced up to' => '',
- 'Transactions' => '',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => '',
- 'Type of Business' => '',
- 'Unit' => '',
- 'Unit of measure' => '',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Update Dataset',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Use Templates',
- 'User' => '',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Creditor',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor deleted!' => 'Creditor deleted!',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
- 'Vendor saved!' => 'Creditor saved!',
- 'Vendors' => 'Creditors',
- 'Version' => '',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => '',
- 'Weight Unit' => '',
- 'What type of item is this?' => '',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => '',
- 'You are logged out' => '',
- 'You did not enter a name!' => '',
- 'You must enter a host and port for local and remote connections!' => 'You must enter a host and port for local and remote connections!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => '',
- 'does not exist' => 'does not exist',
- 'done' => '',
- 'ea' => '',
- 'for Period' => '',
- 'is already a member!' => 'is already a member!',
- 'is not a member!' => '',
- 'localhost' => '',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'successfully created!',
- 'successfully deleted!' => 'successfully deleted!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/am b/sql-ledger/locale/gr/am
deleted file mode 100644
index 3ef81b0..0000000
--- a/sql-ledger/locale/gr/am
+++ /dev/null
@@ -1,170 +0,0 @@
-$self{texts} = {
- 'AP' => 'ÁãïñÝò',
- 'AR' => 'ÐùëÞóåéò',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Account Number' => 'Êùäéêüò Ëïãáñéáóìïý',
- 'Account Number missing!' => 'Ï êùäéêüò ëïãáñéáóìïý ëåßðåé',
- 'Account Type' => 'Ôýðïò Êùäéêïý',
- 'Account Type missing!' => 'Ï ôýðïò ôïõ êùäéêïý ëåßðåé',
- 'Account deleted!' => 'Ï ëïãáñéáóìüò äéáãñÜöçêå',
- 'Account does not exist!' => 'Ï ëïãáñéáóìüò äåí õðÜñ÷åé',
- 'Account saved!' => 'Ï ëïãáñéóìüò áðïèçêåýôçêå',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Accrual' => 'Áýîçóç',
- 'Add Account' => 'ÐñïóèÞêç ëïãáñéáóìïý',
- 'Add Language' => 'ÐñïóèÞêç ãëþóóáò',
- 'Add Warehouse' => 'ÐñïóèÞêç ÁðïèÞêçò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Asset' => 'ÐÜãéï',
- 'Audit Control' => 'Åëåã÷ïò',
- 'Backup sent to' => 'ÁðïóôïëÞ áíôéãñÜöïõ áóöáëåßáò óå..',
- 'Books are open' => 'Ôá âéâëßá åßíáé áíïé÷ôÜ',
- 'Business Number' => 'Êùäéêüò Åðé÷åßñçóçò',
- 'Cannot save account!' => 'Äåí ìðïñïýí íá áðïèçêåõôïýí ïé ëïãáñéáìïß',
- 'Cash' => 'ÑåõóôÜ',
- 'Character Set' => 'Êùäéêïðïßçóç',
- 'Chart of Accounts' => 'ÃñÜöçìá ôùí Êùäéêþí',
- 'Close Books up to' => 'Êëåßóéìï âéâëßùí ìÝ÷ñé',
- 'Code' => 'Êùäéêüò',
- 'Code missing!' => 'Ï Êùäéêüò ëåßðåé',
- 'Company' => 'Åôáéñßá',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Cost Center' => 'ÊÝíôñï Êüóôïò',
- 'Credit' => 'Ðßóôùóç',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Date Format' => 'ÌïñöÞ çìåñïìçíßáò',
- 'Debit' => '×ñÝïò',
- 'Defaults saved!' => 'ÐñïåðéëïãÝò áðïèçêåýôçêáí',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Delete Account' => 'ÄéáãñáöÞ Ëïãáñéáóìïý',
- 'Department deleted!' => 'ÔìÞìá äéáãñÜöçêå',
- 'Department saved!' => 'ÔìÞìá áðïèçêåýôçêå',
- 'Departments' => 'ÔìÞìáôá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Description missing!' => 'ÐåñéãñáöÞ ëåßðåé',
- 'Discount' => '¸êðôùóç',
- 'Edit' => 'Åðåîåñãáóßá',
- 'Edit Account' => 'Åðåîåñãáóßá ëïãáñéáóìïý',
- 'Edit Business' => 'Åðåîåñãáóßá åðé÷åßñçóçò',
- 'Edit Language' => 'Åðåîåñãáóßá ãëþóóáò',
- 'Edit Preferences for' => 'Åðåîåñãáóßá ðñïôéìÞóåùí ãéá',
- 'Employee Number' => 'Áñ. ÕðáëëÞëïõ',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'ÅÕÑ',
- 'Equity' => 'Åðéåßêéá',
- 'Expense' => '¸îïäá',
- 'Expense Account' => 'Ëïãáñéáóìüò åîüäùí',
- 'Expense/Asset' => '¸îïäï/ÐÜãéï',
- 'Fax' => 'Öáî',
- 'Foreign Exchange Gain' => 'ÊÝñäïò áðü óõííáëáãìáôéêÞ äéáöïñÜ ',
- 'Foreign Exchange Loss' => 'Æçìßá áðü óõíáëëáãìáôéêÞ äéáöïñÜ',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Include this account on debtor/creditor forms to set debtor/creditor taxable?',
- 'Income' => 'Åéóüäçìá',
- 'Inventory' => 'ÁðïãñáöÞ',
- 'Inventory Account' => 'Ëïãáñéáóìüò ÁðïãñáöÞò',
- 'Language' => 'Ãëþóóá',
- 'Language deleted!' => 'Ç ãëþóóá äéáãñÜöêò',
- 'Language saved!' => 'Ç ãëþóóá áðïèçêÝõôçêå',
- 'Languages' => 'Ãëþóóåó',
- 'Liability' => 'Ðáèçôéêü',
- 'Licensed to' => 'Áäåéá óå',
- 'Link' => 'Óýíäåóìïò',
- 'Method' => 'ÌÝèïäïò',
- 'Name' => '¼íïìá',
- 'No' => '¼÷é',
- 'Number' => 'Áñéèìüò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Preferences saved!' => 'ÅðéëïãÝò áðïèçêåýôçêáí',
- 'Printer' => 'ÅêôõðùôÞò',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Service Items' => 'Õðçñåóßåò',
- 'Signature' => 'ÕðïãñáöÞ',
- 'Tax' => 'Öüñïò',
- 'Vendor Number' => 'Creditor Number',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'ÐñïóèÞêç_ëïãáñéáóìïý' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'ÐñïóèÞêç_ãëþóóáò' => 'add_language',
- 'add_sic' => 'add_sic',
- 'ÐñïóèÞêç_ÁðïèÞêçò' => 'add_warehouse',
- 'ÓõíÝ÷åéá' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'ÄéáãñáöÞ' => 'delete',
- 'Åðåîåñãáóßá' => 'edit',
- 'Åðåîåñãáóßá_ëïãáñéáóìïý' => 'edit_account',
- 'ÁðïèÞêåõóç' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ap b/sql-ledger/locale/gr/ap
deleted file mode 100644
index 5d0fc7f..0000000
--- a/sql-ledger/locale/gr/ap
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ÊéíÞóç ÁãïñÜò',
- 'AP Transactions' => 'ÊéíÞóåéò Áãïñþí',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Transaction' => 'Åßóáé óßãïõñïò üôé èÝëåéò íá äéáãñÜøåéò ôçí êßíçóç',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Cannot delete transaction!' => 'Äåí ìðïñåß íá äéáãñáöåß ç êßíçóç',
- 'Check' => 'ÅðéôáãÞ',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Date Paid' => 'Çì. ÐëçñùìÞò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Due Date missing!' => 'Ç çìåñïìçíßá ëÞîçò ëåßðåé',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Month' => 'ÌÞíáò',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nothing to print!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá åêôýðùóç',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Open' => '¢íïéãìá',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Print' => 'Åêôýðùóç',
- 'Print and Post' => '¸êôýðùóç êáé áðïóôïëÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Receipt' => 'Áðüäåéîç',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Source' => 'ÐçãÞ',
- 'Tax' => 'Öüñïò',
- 'Vendor' => 'Creditor',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÊéíÞóç_ÁãïñÜò' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'Åêôýðùóç' => 'print',
- '¸êôýðùóç_êáé_áðïóôïëÞ' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ar b/sql-ledger/locale/gr/ar
deleted file mode 100644
index 304f3f1..0000000
--- a/sql-ledger/locale/gr/ar
+++ /dev/null
@@ -1,129 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'AR Transactions' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Transaction' => 'Åßóáé óßãïõñïò üôé èÝëåéò íá äéáãñÜøåéò ôçí êßíçóç',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Cannot delete transaction!' => 'Äåí ìðïñåß íá äéáãñáöåß ç êßíçóç',
- 'Check' => 'ÅðéôáãÞ',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Date Paid' => 'Çì. ÐëçñùìÞò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Due Date missing!' => 'Ç çìåñïìçíßá ëÞîçò ëåßðåé',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Month' => 'ÌÞíáò',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nothing to print!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá åêôýðùóç',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Open' => '¢íïéãìá',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Print' => 'Åêôýðùóç',
- 'Print and Post' => '¸êôýðùóç êáé áðïóôïëÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Receipt' => 'Áðüäåéîç',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Source' => 'ÐçãÞ',
- 'Tax' => 'Öüñïò',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÊéíÞóåéò_ÐùëÞóåùí' => 'ar_transaction',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'Åêôýðùóç' => 'print',
- '¸êôýðùóç_êáé_áðïóôïëÞ' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/arap b/sql-ledger/locale/gr/arap
deleted file mode 100644
index 410bf80..0000000
--- a/sql-ledger/locale/gr/arap
+++ /dev/null
@@ -1,27 +0,0 @@
-$self{texts} = {
- 'Address' => 'ÄéÝõèõíóç',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Number' => 'Áñéèìüò',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ÓõíÝ÷åéá' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/arapprn b/sql-ledger/locale/gr/arapprn
deleted file mode 100644
index d4c4125..0000000
--- a/sql-ledger/locale/gr/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Amount' => 'Ðïóü',
- 'Check' => 'ÅðéôáãÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Date' => 'Çìåñïìçíßá',
- 'Nothing to print!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá åêôýðùóç',
- 'Printed' => 'Åêôõðþèçêå',
- 'Receipt' => 'Áðüäåéîç',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Source' => 'ÐçãÞ',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'ÓõíÝ÷åéá' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/bp b/sql-ledger/locale/gr/bp
deleted file mode 100644
index a48089f..0000000
--- a/sql-ledger/locale/gr/bp
+++ /dev/null
@@ -1,42 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Cannot remove files!' => 'Äåí ìðïñïýí íá äéáãñáöïýí áñ÷åßá',
- 'Checks' => 'ÅðéôáãÝò',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer' => 'ÐåëÜôçò',
- 'Date' => 'Çìåñïìçíßá',
- 'From' => 'Áðü',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Month' => 'ÌÞíáò',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Print' => 'Åêôýðùóç',
- 'Printing ... ' => 'Åêôõðþíåôáé...',
- 'Select all' => 'ÅðéëïãÞ üëùí',
- 'Vendor' => 'Creditor',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'ÓõíÝ÷åéá' => 'continue',
- 'Åêôýðùóç' => 'print',
- 'remove' => 'remove',
- 'ÅðéëïãÞ_üëùí' => 'select_all',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ca b/sql-ledger/locale/gr/ca
deleted file mode 100644
index 7ee994e..0000000
--- a/sql-ledger/locale/gr/ca
+++ /dev/null
@@ -1,47 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Balance' => 'Éóïæýãéï',
- 'Chart of Accounts' => 'ÃñÜöçìá ôùí Êùäéêþí',
- 'Credit' => 'Ðßóôùóç',
- 'Current' => 'ÔñÝ÷ùí',
- 'Date' => 'Çìåñïìçíßá',
- 'Debit' => '×ñÝïò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'List Transactions' => 'Ëßóôá ÊéíÞóåùí',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Month' => 'ÌÞíáò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'Ëßóôá_ÊéíÞóåùí' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/cp b/sql-ledger/locale/gr/cp
deleted file mode 100644
index 635ac2e..0000000
--- a/sql-ledger/locale/gr/cp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'AP' => 'ÁãïñÝò',
- 'AR' => 'ÐùëÞóåéò',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Address' => 'ÄéÝõèõíóç',
- 'All' => '¼ëá',
- 'Amount' => 'Ðïóü',
- 'Cannot post Receipt!' => 'Äåí ìðïñåß íá åêäïèåß áðüäåéîç',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Date missing!' => 'Äåí õðÜñ÷åé ç çìåñïìçíßá',
- 'Department' => 'ÔìÞìá',
- 'Deposit' => 'ÊáôÜèåóç',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoices' => 'Ôéìïëüãéá',
- 'Number' => 'Áñéèìüò',
- 'Prepayment' => 'ÐñïðëçñùìÞ',
- 'Print' => 'Åêôýðùóç',
- 'Receipt' => 'Áðüäåéîç',
- 'Screen' => 'Ïèüíç',
- 'Select' => 'ÅðéëïãÞ',
- 'Source' => 'ÐçãÞ',
- 'Vendor' => 'Creditor',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ÓõíÝ÷åéá' => 'continue',
- 'post' => 'post',
- 'Åêôýðùóç' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ct b/sql-ledger/locale/gr/ct
deleted file mode 100644
index ac308f2..0000000
--- a/sql-ledger/locale/gr/ct
+++ /dev/null
@@ -1,121 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ÊéíÞóç ÁãïñÜò',
- 'AP Transactions' => 'ÊéíÞóåéò Áãïñþí',
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'AR Transactions' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Customer' => 'ÐñïóèÞêç ÐåëÜôç',
- 'Add Vendor' => 'ÐñïóèÞêç ÐéóôùôÞ',
- 'Address' => 'ÄéÝõèõíóç',
- 'All' => '¼ëá',
- 'Amount' => 'Ðïóü',
- 'Break' => 'ÄéÜëåõììá',
- 'Cannot delete customer!' => 'Cannot delete debtor!',
- 'Cannot delete vendor!' => 'Äåí ìðïñåß íá äéáãñáöåß ï ðéóôùôÞò',
- 'City' => 'Ðüëç',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Cost' => 'Êüóôïò',
- 'Country' => '×þñá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Customer History' => 'Éóôïñéêü ÐåëÜôç',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer deleted!' => 'Ï ðåëÜôçò äéáãñÜöçêå!',
- 'Customer saved!' => 'Ï ÐåëÜôçò áðïèçêåýôçêå!',
- 'Customers' => 'ÐåëÜôåò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Detail' => 'ËåðôïìÝñåéá',
- 'Discount' => '¸êðôùóç',
- 'Edit Customer' => 'Åðåîåñãáóßá ÐåëÜôç',
- 'Edit Vendor' => 'Edit Creditor',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Fax' => 'Öáî',
- 'From' => 'Áðü',
- 'Group' => 'ÏìÜäá',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Language' => 'Ãëþóóá',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Name' => '¼íïìá',
- 'Name missing!' => 'Ôï üíïìá äåí õðÜñ÷åé',
- 'Notes' => 'Óçìåéþóåéò',
- 'Number' => 'Áñéèìüò',
- 'Open' => '¢íïéãìá',
- 'Order' => 'Ðáñáããåëßá',
- 'Phone' => 'ÔçëÝöùíï',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
- 'Qty' => 'Ðïó.',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Search' => 'ÁíáæÞôçóç',
- 'Tax' => 'Öüñïò',
- 'Tax Number / SSN' => 'Á.Ö.Ì.',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor deleted!' => 'Creditor deleted!',
- 'Vendor saved!' => 'Creditor saved!',
- 'Vendors' => 'Creditors',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ÊéíÞóç_ÁãïñÜò' => 'ap_transaction',
- 'ÊéíÞóåéò_ÐùëÞóåùí' => 'ar_transaction',
- 'ÐñïóèÞêç_ÐåëÜôç' => 'add_customer',
- 'ÐñïóèÞêç_ÐéóôùôÞ' => 'add_vendor',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'pricelist' => 'pricelist',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'ÁðïèÞêåõóç' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'creditor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/gl b/sql-ledger/locale/gr/gl
deleted file mode 100644
index 42fea34..0000000
--- a/sql-ledger/locale/gr/gl
+++ /dev/null
@@ -1,105 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ÊéíÞóç ÁãïñÜò',
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Address' => 'ÄéÝõèõíóç',
- 'All' => '¼ëá',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Transaction' => 'Åßóáé óßãïõñïò üôé èÝëåéò íá äéáãñÜøåéò ôçí êßíçóç',
- 'Asset' => 'ÐÜãéï',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Balance' => 'Éóïæýãéï',
- 'Cannot delete transaction!' => 'Äåí ìðïñåß íá äéáãñáöåß ç êßíçóç',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Credit' => 'Ðßóôùóç',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Debit' => '×ñÝïò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Edit Cash Transfer Transaction' => 'Åðåîåñãáóßá êßíçóçò ìåôáöïñÜò ÷ñçìÜôùí',
- 'Equity' => 'Åðéåßêéá',
- 'Expense' => '¸îïäá',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Income' => 'Åéóüäçìá',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Liability' => 'Ðáèçôéêü',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Month' => 'ÌÞíáò',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Project' => '¸ñãï',
- 'Source' => 'ÐçãÞ',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÊéíÞóç_ÁãïñÜò' => 'ap_transaction',
- 'ÊéíÞóåéò_ÐùëÞóåùí' => 'ar_transaction',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/hr b/sql-ledger/locale/gr/hr
deleted file mode 100644
index cbae78b..0000000
--- a/sql-ledger/locale/gr/hr
+++ /dev/null
@@ -1,83 +0,0 @@
-$self{texts} = {
- 'AP' => 'ÁãïñÝò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Employee' => 'ÐñïóèÞêç õðáëëÞëïõ',
- 'Address' => 'ÄéÝõèõíóç',
- 'Administrator' => 'Äéá÷åéñéóôÞò',
- 'After Deduction' => 'ÌåôÜ ¸êðôùóéò',
- 'All' => '¼ëá',
- 'Allowances' => 'Ðáñï÷Ýò',
- 'Amount' => 'Ðïóü',
- 'Amount missing!' => 'Ðïóü ðïõ ëåßðåé',
- 'Based on' => 'ÂáóéóìÝíï óå',
- 'City' => 'Ðüëç',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Country' => '×þñá',
- 'Deduct after' => 'ÐáñáêñÜôçóç ìåôÜ',
- 'Deduction deleted!' => 'ÐáñáêñÜôçóç äéáãñÜöçêå',
- 'Deduction saved!' => 'ÐáñáêñÜôçóç áðïèçêåýôçêå',
- 'Deductions' => 'ÐáñáêñáôÞóåéò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Description missing!' => 'ÐåñéãñáöÞ ëåßðåé',
- 'Edit Employee' => 'Åðåîåñãáóßá ÅñãáæïìÝíïõ',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Employee Name' => '¼íïìá ÕðáëëÞëïõ',
- 'Employee Number' => 'Áñ. ÕðáëëÞëïõ',
- 'Employee deleted!' => 'Ï ÕðÜëëçëïò ÄéáãñÜöçêå',
- 'Employee saved!' => 'Ï ÕðÜëëçëïò áðïèçêåýôçêå',
- 'Employees' => 'ÕðÜëëçëïé',
- 'Employer' => 'Åñãïäüôçò',
- 'Expense' => '¸îïäá',
- 'Home Phone' => 'Ôçë. Óðéôéïý',
- 'Login' => 'ÅéóáãùãÞ',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Maximum' => 'ÌÝãéóôï',
- 'Name' => '¼íïìá',
- 'Name missing!' => 'Ôï üíïìá äåí õðÜñ÷åé',
- 'Notes' => 'Óçìåéþóåéò',
- 'Number' => 'Áñéèìüò',
- 'Payroll Deduction' => 'ÊñÜôçóç ìéóèïý',
- 'Save' => 'ÁðïèÞêåõóç',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'ÐñïóèÞêç_õðáëëÞëïõ' => 'add_employee',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'ÁðïèÞêåõóç' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ic b/sql-ledger/locale/gr/ic
deleted file mode 100644
index af5d735..0000000
--- a/sql-ledger/locale/gr/ic
+++ /dev/null
@@ -1,168 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Accrual' => 'Áýîçóç',
- 'Active' => 'Åíåñãüò',
- 'Add' => 'ÐñïóèÞêç',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Add Service' => 'ÐñïóèÞêç õðçñåóßáò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Assemblies' => 'ÓõíáñìïëïãÞóåéò',
- 'Assembly' => 'Óõíáñìïëüãçóç',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Break' => 'ÄéÜëåõììá',
- 'Cash' => 'ÑåõóôÜ',
- 'Check Inventory' => '¸ëåã÷ïò ÁðïãñáöÞò',
- 'City' => 'Ðüëç',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Components' => 'ÓõóôáôéêÜ',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Cost' => 'Êüóôïò',
- 'Country' => '×þñá',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Drawing' => 'Ó÷Ýäéï',
- 'Edit Assembly' => 'Åðåîåñãáóßá óõíáñìïëüãçóçò',
- 'Edit Service' => 'Åðåîåñãáóßá õðçñåóßáò',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Expense' => '¸îïäá',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Group' => 'ÏìÜäá',
- 'Image' => 'Åéêüíá',
- 'Income' => 'Åéóüäçìá',
- 'Inventory' => 'ÁðïãñáöÞ',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item deleted!' => 'Ôï ôåìÜ÷éï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Items' => 'ÔåìÜ÷éá',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'List' => 'Ëßóôá',
- 'List Price' => 'Ëßóôá ôéìþí',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Model' => 'ÌïíôÝëï',
- 'Name' => '¼íïìá',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Obsolete' => 'Áðáñ÷áéùìÝíïò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Open' => '¢íïéãìá',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Qty' => 'Ðïó.',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Screen' => 'Ïèüíç',
- 'Service' => 'Õðçñåóßá',
- 'Tax' => 'Öüñïò',
- 'Vendor' => 'Creditor',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'add_assembly' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'add_part' => 'add_part',
- 'ÐñïóèÞêç_õðçñåóßáò' => 'add_service',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'Åðåîåñãáóßá_óõíáñìïëüãçóçò' => 'edit_assembly',
- 'edit_part' => 'edit_part',
- 'Åðåîåñãáóßá_õðçñåóßáò' => 'edit_service',
- 'ÁðïèÞêåõóç' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/io b/sql-ledger/locale/gr/io
deleted file mode 100644
index f29a2a6..0000000
--- a/sql-ledger/locale/gr/io
+++ /dev/null
@@ -1,81 +0,0 @@
-$self{texts} = {
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'City' => 'Ðüëç',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Country' => '×þñá',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'Group' => 'ÏìÜäá',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Qty' => 'Ðïó.',
- 'Screen' => 'Ïèüíç',
- 'Service' => 'Õðçñåóßá',
- 'Vendor Number' => 'Creditor Number',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'ÓõíÝ÷åéá' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ir b/sql-ledger/locale/gr/ir
deleted file mode 100644
index a31f89d..0000000
--- a/sql-ledger/locale/gr/ir
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Invoice Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôï áñéèìü ôéìïëïãßïõ',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Cannot delete invoice!' => 'Äåí ìðïñåß íá äéáãñáöåß ôï ôéìïëüãéï',
- 'City' => 'Ðüëç',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Country' => '×þñá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Edit Vendor Invoice' => 'Edit Creditor Invoice',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'Group' => 'ÏìÜäá',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Language' => 'Ãëþóóá',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Qty' => 'Ðïó.',
- 'Screen' => 'Ïèüíç',
- 'Service' => 'Õðçñåóßá',
- 'Source' => 'ÐçãÞ',
- 'Vendor' => 'Creditor',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'purchase_order' => 'purchase_order',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/is b/sql-ledger/locale/gr/is
deleted file mode 100644
index 1fc9c7c..0000000
--- a/sql-ledger/locale/gr/is
+++ /dev/null
@@ -1,149 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Invoice' => 'ÐñïóèÞêç Ôéìïëïãßïõ ðþëçóçò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Invoice Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôï áñéèìü ôéìïëïãßïõ',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Business' => 'Åðé÷åßñçóç',
- 'Cannot delete invoice!' => 'Äåí ìðïñåß íá äéáãñáöåß ôï ôéìïëüãéï',
- 'City' => 'Ðüëç',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Country' => '×þñá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Edit Sales Invoice' => 'Åðåîåñãáóßá ôéìïëïãßïõ',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'Group' => 'ÏìÜäá',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Print' => 'Åêôýðùóç',
- 'Print and Post' => '¸êôýðùóç êáé áðïóôïëÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Qty' => 'Ðïó.',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Service' => 'Õðçñåóßá',
- 'Source' => 'ÐçãÞ',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'Åêôýðùóç' => 'print',
- '¸êôýðùóç_êáé_áðïóôïëÞ' => 'print_and_post',
- 'sales_order' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/login b/sql-ledger/locale/gr/login
deleted file mode 100644
index 5bbf335..0000000
--- a/sql-ledger/locale/gr/login
+++ /dev/null
@@ -1,17 +0,0 @@
-$self{texts} = {
- 'Company' => 'Åôáéñßá',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Incorrect Password!' => 'ËÜèïò êùäéêüò',
- 'Login' => 'ÅéóáãùãÞ',
- 'Name' => '¼íïìá',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'ÅéóáãùãÞ' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/menu b/sql-ledger/locale/gr/menu
deleted file mode 100644
index 9291ef3..0000000
--- a/sql-ledger/locale/gr/menu
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'AP' => 'ÁãïñÝò',
- 'AP Aging' => 'Creditor Aging',
- 'AP Transaction' => 'ÊéíÞóç ÁãïñÜò',
- 'AR' => 'ÐùëÞóåéò',
- 'AR Aging' => 'Debtor Aging',
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Account' => 'ÐñïóèÞêç ëïãáñéáóìïý',
- 'Add Customer' => 'ÐñïóèÞêç ÐåëÜôç',
- 'Add Employee' => 'ÐñïóèÞêç õðáëëÞëïõ',
- 'Add Group' => 'ÐñïóèÞêç ïìÜäáò',
- 'Add Language' => 'ÐñïóèÞêç ãëþóóáò',
- 'Add Project' => 'ÐñïóèÞêç Ýñãïõ',
- 'Add Service' => 'ÐñïóèÞêç õðçñåóßáò',
- 'Add Transaction' => 'ÐñïóèÞêç óõíáëëáãÞò',
- 'Add Vendor' => 'ÐñïóèÞêç ÐéóôùôÞ',
- 'Add Warehouse' => 'ÐñïóèÞêç ÁðïèÞêçò',
- 'All Items' => 'ÐñïóèÞêç åßäïõò',
- 'Assemblies' => 'ÓõíáñìïëïãÞóåéò',
- 'Audit Control' => 'Åëåã÷ïò',
- 'Backup' => 'Áíôßãñáöï áóöáëåßáò',
- 'Balance Sheet' => 'Éóïæýãéï',
- 'Batch Printing' => 'ÌáæéêÞ åêôýðùóç',
- 'Cash' => 'ÑåõóôÜ',
- 'Chart of Accounts' => 'ÃñÜöçìá ôùí Êùäéêþí',
- 'Check' => 'ÅðéôáãÞ',
- 'Checks' => 'ÅðéôáãÝò',
- 'Components' => 'ÓõóôáôéêÜ',
- 'Customers' => 'ÐåëÜôåò',
- 'Defaults' => 'ÐñïåðéëïãÝò',
- 'Departments' => 'ÔìÞìáôá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Employees' => 'ÕðÜëëçëïé',
- 'HR' => 'ÄÐ',
- 'History' => 'Éóôïñéêü',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Language' => 'Ãëþóóá',
- 'List Accounts' => 'Ëßóôá Ëïãáñéáóìþí',
- 'List Languages' => 'Ëßóôá ãëùóóþí',
- 'List Projects' => 'Ëßóôá ¸ñãùí',
- 'List Warehouses' => 'Ëßóôá áðïèçêþí',
- 'Logout' => 'ÅîáãùãÞ',
- 'Non-taxable' => 'Äåí åßíáé öïñïëïãßóéìï',
- 'Open' => '¢íïéãìá',
- 'Outstanding' => 'Áîéïóçìåßùôï',
- 'Preferences' => 'ÅðéëïãÝò',
- 'Print' => 'Åêôýðùóç',
- 'Projects' => '¸ñãá',
- 'Receipt' => 'Áðüäåéîç',
- 'Sale' => 'Ðþëçóç',
- 'Search' => 'ÁíáæÞôçóç',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendors' => 'Creditors',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/oe b/sql-ledger/locale/gr/oe
deleted file mode 100644
index 5be1ad4..0000000
--- a/sql-ledger/locale/gr/oe
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Exchange Rate' => 'ÐñïóèÞêç ôéìÞò óõíáëÜãìáôïò',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Invoice' => 'ÐñïóèÞêç Ôéìïëïãßïõ ðþëçóçò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Add Vendor Invoice' => 'Add Creditor Invoice',
- 'Address' => 'ÄéÝõèõíóç',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Order Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôïí áñéèìü ðáñáããåëßáò',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Business' => 'Åðé÷åßñçóç',
- 'Cannot delete order!' => 'Äåí ìðïñåß íá äéáãñáöåß ç ðáñáããåëßá',
- 'Cannot save order!' => 'Äåí ìðïñåß íá áðïèçêåõôåß ç ðáñáããåëßá',
- 'City' => 'Ðüëç',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Could not save!' => 'Ç áðïèÞêåõóç äåí åßíáé äõíáôÞ',
- 'Country' => '×þñá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Done' => 'ÅíôÜîåé',
- 'Edit Quotation' => 'Åðåîåñãáóßá ðñïóöïñÜò',
- 'Employee' => 'ÕðÜëëçëïò',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Group' => 'ÏìÜäá',
- 'Inventory saved!' => 'Ç ÁðïãñáöÞ áðïèçêåýôçêå',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Month' => 'ÌÞíáò',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nothing entered!' => 'Äåí å÷åé ãßíåé åéóáãùãÞ',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'O' => 'Ï',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Open' => '¢íïéãìá',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Date' => 'Çì. Ðáñáããåëßáò',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Order deleted!' => 'Ç Ðáñáããåëßá äéáãñÜöçêå',
- 'Order saved!' => 'Ç Ðáñáããåëßá áðïèçêåýôçêå',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Print' => 'Åêôýðùóç',
- 'Print and Save' => 'Åêôýðùóç êáé áðïèÞêåõóç',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Qty' => 'Ðïó.',
- 'Save' => 'ÁðïèÞêåõóç',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Service' => 'Õðçñåóßá',
- 'Tax' => 'Öüñïò',
- 'Vendor' => 'Creditor',
- 'Vendor Invoice' => 'Creditor Invoice',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor missing!' => 'Creditor missing!',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'ÅíôÜîåé' => 'done',
- 'e_mail' => 'e_mail',
- 'Åêôýðùóç' => 'print',
- 'Åêôýðùóç_êáé_áðïèÞêåõóç' => 'print_and_save',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'ÁðïèÞêåõóç' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'creditor_invoice' => 'vendor_invoice',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/pe b/sql-ledger/locale/gr/pe
deleted file mode 100644
index bfcf98e..0000000
--- a/sql-ledger/locale/gr/pe
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Add Group' => 'ÐñïóèÞêç ïìÜäáò',
- 'Add Project' => 'ÐñïóèÞêç Ýñãïõ',
- 'All' => '¼ëá',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Description Translations' => 'ÐåñéãñáöÞ ÌåôáöñÜóåùí',
- 'Edit Project' => 'Åðåîåñãáóßá Ýñãïõ',
- 'Group' => 'ÏìÜäá',
- 'Language' => 'Ãëþóóá',
- 'Number' => 'Áñéèìüò',
- 'Project' => '¸ñãï',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
- 'Projects' => '¸ñãá',
- 'Save' => 'ÁðïèÞêåõóç',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'ÐñïóèÞêç_ïìÜäáò' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'ÐñïóèÞêç_Ýñãïõ' => 'add_project',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'ÁðïèÞêåõóç' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/pos b/sql-ledger/locale/gr/pos
deleted file mode 100644
index b39079e..0000000
--- a/sql-ledger/locale/gr/pos
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Add POS Invoice' => 'ÐñïóèÞêç áðüäçîçò ÔáìåéáêÞò ìç÷áíÞò',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Edit POS Invoice' => 'Åðåîåñãáóßá áðüäåéîçò ôáìåéáêÞò',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'From' => 'Áðü',
- 'Language' => 'Ãëþóóá',
- 'Month' => 'ÌÞíáò',
- 'Number' => 'Áñéèìüò',
- 'Open' => '¢íïéãìá',
- 'Price' => 'ÔéìÞ',
- 'Print' => 'Åêôýðùóç',
- 'Printed' => 'Åêôõðþèçêå',
- 'Qty' => 'Ðïó.',
- 'Screen' => 'Ïèüíç',
- 'Source' => 'ÐçãÞ',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'post' => 'post',
- 'Åêôýðùóç' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/ps b/sql-ledger/locale/gr/ps
deleted file mode 100644
index cd78641..0000000
--- a/sql-ledger/locale/gr/ps
+++ /dev/null
@@ -1,218 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Creditor Aging',
- 'AR Aging' => 'Debtor Aging',
- 'AR Transaction' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'AR Transactions' => 'ÊéíÞóåéò ÐùëÞóåùí',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Account Number' => 'Êùäéêüò Ëïãáñéáóìïý',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Accounts' => 'Ëïãáñéáóìïß',
- 'Accrual' => 'Áýîçóç',
- 'Add POS Invoice' => 'ÐñïóèÞêç áðüäçîçò ÔáìåéáêÞò ìç÷áíÞò',
- 'Add Quotation' => 'ÐñïóèÞêç ðñïóöïñÜò',
- 'Add Sales Invoice' => 'ÐñïóèÞêç Ôéìïëïãßïõ ðþëçóçò',
- 'Add Sales Order' => 'ÐñïóèÞêç Ðáñáããåëßáò',
- 'Address' => 'ÄéÝõèõíóç',
- 'All Accounts' => '¼ëïé ïé ëïãáñéáóìïß',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Are you sure you want to delete Invoice Number' => 'Åßóáé óßãïõñïò ðùò èÝëåéò íá äéáãñÜøåéò ôï áñéèìü ôéìïëïãßïõ',
- 'Are you sure you want to delete Transaction' => 'Åßóáé óßãïõñïò üôé èÝëåéò íá äéáãñÜøåéò ôçí êßíçóç',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Balance' => 'Éóïæýãéï',
- 'Balance Sheet' => 'Éóïæýãéï',
- 'Business' => 'Åðé÷åßñçóç',
- 'Cannot delete invoice!' => 'Äåí ìðïñåß íá äéáãñáöåß ôï ôéìïëüãéï',
- 'Cannot delete transaction!' => 'Äåí ìðïñåß íá äéáãñáöåß ç êßíçóç',
- 'Cash' => 'ÑåõóôÜ',
- 'Check' => 'ÅðéôáãÞ',
- 'City' => 'Ðüëç',
- 'Closed' => 'ÊëåéóìÝíï',
- 'Company Name' => '¼íïìá åôáéñßáò',
- 'Confirm!' => 'Åðéâåâáßùóç!',
- 'Contact' => 'ÅðáöÞ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Country' => '×þñá',
- 'Credit' => 'Ðßóôùóç',
- 'Credit Limit' => '¼ñéï Ðßóôùóçò',
- 'Currency' => 'ÓõíÜëëáãìá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Current Earnings' => 'ÔñÝ÷ùíôá êÝñäç',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer Number' => 'Êùäéêüò ÐåëÜôç',
- 'Customer missing!' => 'Ï ÐåëÜôçò ëåßðåé!',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Date Paid' => 'Çì. ÐëçñùìÞò',
- 'Debit' => '×ñÝïò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Decimalplaces' => 'ÄåêáäéêÜ',
- 'Delete' => 'ÄéáãñáöÞ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Detail' => 'ËåðôïìÝñåéá',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Due Date missing!' => 'Ç çìåñïìçíßá ëÞîçò ëåßðåé',
- 'Edit POS Invoice' => 'Åðåîåñãáóßá áðüäåéîçò ôáìåéáêÞò',
- 'Edit Sales Invoice' => 'Åðåîåñãáóßá ôéìïëïãßïõ',
- 'Exch' => 'Óõíáëë',
- 'Exchange Rate' => 'ÔéìÞ óõíáëëÜãìáôïò',
- 'Exchange rate for payment missing!' => 'Ç ôéìÞ óõíáëëÜãìáôïò ëåßðåé',
- 'Fax' => 'Öáî',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Group' => 'ÏìÜäá',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Invoice Date' => 'Çì. ôéìïëïãßïõ',
- 'Invoice Number' => 'Áñ. ôéìïëïãßïõ',
- 'Invoice Number missing!' => 'Ôï ôéìïëüãéï äéáãñÜöçêå',
- 'Item not on file!' => 'ÔåìÜ÷éï äåí åßíáé óå áñ÷åßï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Language' => 'Ãëþóóá',
- 'Manager' => 'ÄéåõèõíôÞò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Method' => 'ÌÝèïäïò',
- 'Month' => 'ÌÞíáò',
- 'Notes' => 'Óçìåéþóåéò',
- 'Nothing selected!' => 'Äåí Ý÷å åðéëå÷èåß ôßðïôá',
- 'Nothing to print!' => 'Äåí õðÜñ÷åé ôßðïôá ãéá åêôýðùóç',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Open' => '¢íïéãìá',
- 'Order' => 'Ðáñáããåëßá',
- 'Order Number' => 'Áñ. Ðáñáããåëßáò',
- 'Phone' => 'ÔçëÝöùíï',
- 'Price' => 'ÔéìÞ',
- 'Print' => 'Åêôýðùóç',
- 'Print and Post' => '¸êôýðùóç êáé áðïóôïëÞ',
- 'Printed' => 'Åêôõðþèçêå',
- 'Project' => '¸ñãï',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
- 'Qty' => 'Ðïó.',
- 'Receipt' => 'Áðüäåéîç',
- 'Screen' => 'Ïèüíç',
- 'Select Printer or Queue!' => 'ÅðéëïãÞ åêôõðùôÞ Þ ïõñÜò',
- 'Select all' => 'ÅðéëïãÞ üëùí',
- 'Service' => 'Õðçñåóßá',
- 'Source' => 'ÐçãÞ',
- 'Tax' => 'Öüñïò',
- 'Vendor' => 'Creditor',
- 'Vendor Number' => 'Creditor Number',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ÊéíÞóåéò_ÐùëÞóåùí' => 'ar_transaction',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÄéáãñáöÞ' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'Åêôýðùóç' => 'print',
- '¸êôýðùóç_êáé_áðïóôïëÞ' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'sales_order' => 'sales_order',
- 'ÅðéëïãÞ_üëùí' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'yes' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/pw b/sql-ledger/locale/gr/pw
deleted file mode 100644
index be82b9e..0000000
--- a/sql-ledger/locale/gr/pw
+++ /dev/null
@@ -1,10 +0,0 @@
-$self{texts} = {
- 'Continue' => 'ÓõíÝ÷åéá',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'ÓõíÝ÷åéá' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/rc b/sql-ledger/locale/gr/rc
deleted file mode 100644
index 02838c5..0000000
--- a/sql-ledger/locale/gr/rc
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'Account' => 'Ëïãáñéáóìüò',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Balance' => 'Éóïæýãéï',
- 'Beginning Balance' => 'Éóïæýãéï ¸íáñîçò',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Current' => 'ÔñÝ÷ùí',
- 'Date' => 'Çìåñïìçíßá',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Decrease' => 'Ìåßùóç',
- 'Deposit' => 'ÊáôÜèåóç',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Detail' => 'ËåðôïìÝñåéá',
- 'Difference' => 'ÄéáöïñÜ',
- 'Done' => 'ÅíôÜîåé',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Increase' => 'Áýîçóç',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Month' => 'ÌÞíáò',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Outstanding' => 'Áîéïóçìåßùôï',
- 'Select all' => 'ÅðéëïãÞ üëùí',
- 'Source' => 'ÐçãÞ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'ÓõíÝ÷åéá' => 'continue',
- 'ÅíôÜîåé' => 'done',
- 'ÅðéëïãÞ_üëùí' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/gr/rp b/sql-ledger/locale/gr/rp
deleted file mode 100644
index ad34eab..0000000
--- a/sql-ledger/locale/gr/rp
+++ /dev/null
@@ -1,116 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Creditor Aging',
- 'AR Aging' => 'Debtor Aging',
- 'Account' => 'Ëïãáñéáóìüò',
- 'Account Number' => 'Êùäéêüò Ëïãáñéáóìïý',
- 'Accounting Menu' => 'Ìåíðý ËïãéóôéêÞò',
- 'Accounts' => 'Ëïãáñéáóìïß',
- 'Accrual' => 'Áýîçóç',
- 'Address' => 'ÄéÝõèõíóç',
- 'All Accounts' => '¼ëïé ïé ëïãáñéáóìïß',
- 'Amount' => 'Ðïóü',
- 'Apr' => 'Áðñ',
- 'April' => 'Áðñßëéïò',
- 'Attachment' => 'ÅîÜñôçìá',
- 'Aug' => 'Áõã',
- 'August' => 'Áýãïõóôïò',
- 'Balance' => 'Éóïæýãéï',
- 'Balance Sheet' => 'Éóïæýãéï',
- 'Cash' => 'ÑåõóôÜ',
- 'Continue' => 'ÓõíÝ÷åéá',
- 'Copies' => 'Áíôßãñáöá',
- 'Credit' => 'Ðßóôùóç',
- 'Current' => 'ÔñÝ÷ùí',
- 'Current Earnings' => 'ÔñÝ÷ùíôá êÝñäç',
- 'Customer' => 'ÐåëÜôçò',
- 'Customer not on file!' => 'Debtor not on file!',
- 'Date' => 'Çìåñïìçíßá',
- 'Debit' => '×ñÝïò',
- 'Dec' => 'Äåê',
- 'December' => 'ÄåêÝìâñéïò',
- 'Decimalplaces' => 'ÄåêáäéêÜ',
- 'Department' => 'ÔìÞìá',
- 'Description' => 'ÐåñéãñáöÞ',
- 'Detail' => 'ËåðôïìÝñåéá',
- 'Due Date' => 'Çìåñïìçíßá ëÞîçò',
- 'Feb' => 'Öåâ',
- 'February' => 'ÖåâñïõÜñéïò',
- 'From' => 'Áðü',
- 'Invoice' => 'Ôéìïëüãéï',
- 'Jan' => 'ÉÜí',
- 'January' => 'ÉáíïõÜñéïò',
- 'Jul' => 'Éïýë',
- 'July' => 'Éïýëéïò',
- 'Jun' => 'Éïýí',
- 'June' => 'Éïýíéïò',
- 'Language' => 'Ãëþóóá',
- 'Mar' => 'Ìáñ',
- 'March' => 'ÌÜñôéïò',
- 'May' => 'ÌÜúïò',
- 'May ' => 'ÌÜúïò',
- 'Message' => 'Ìýíçìá',
- 'Method' => 'ÌÝèïäïò',
- 'Month' => 'ÌÞíáò',
- 'Nothing selected!' => 'Äåí Ý÷å åðéëå÷èåß ôßðïôá',
- 'Nov' => 'ÍïÝ',
- 'November' => 'ÍïÝìâñéïò',
- 'Number' => 'Áñéèìüò',
- 'Oct' => 'Ïêô',
- 'October' => 'Ïêôþâñéïò',
- 'Order' => 'Ðáñáããåëßá',
- 'Print' => 'Åêôýðùóç',
- 'Project' => '¸ñãï',
- 'Project Number' => 'Áñéèìüò Ýñãïõ',
- 'Screen' => 'Ïèüíç',
- 'Select all' => 'ÅðéëïãÞ üëùí',
- 'Source' => 'ÐçãÞ',
- 'Tax' => 'Öüñïò',
- 'Vendor' => 'Creditor',
- 'Vendor not on file!' => 'Creditor not on file!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ÓõíÝ÷åéá' => 'continue',
- 'e_mail' => 'e_mail',
- 'Åêôýðùóç' => 'print',
- 'ÅðéëïãÞ_üëùí' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/COPYING b/sql-ledger/locale/hu/COPYING
deleted file mode 100644
index 890d2e8..0000000
--- a/sql-ledger/locale/hu/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Hungarian texts:
-#
-# Author: Kabai József <kabai@investor.hu>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/hu/LANGUAGE b/sql-ledger/locale/hu/LANGUAGE
deleted file mode 100644
index 3459bb2..0000000
--- a/sql-ledger/locale/hu/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Hungarian
diff --git a/sql-ledger/locale/hu/Num2text b/sql-ledger/locale/hu/Num2text
deleted file mode 100644
index 82b1c70..0000000
--- a/sql-ledger/locale/hu/Num2text
+++ /dev/null
@@ -1,232 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-# Modified by: Medgyesi Aniko
-# **********************************
-# *#MEA1 * Hungarian version *
-# **********************************
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#=====================================================================
-#
-# this is the default code for the Check package
-#
-#=====================================================================
-
-sub init {
- my $self = shift;
-#MEA1 English number ignored
-# %{ $self->{numbername} } =
-# (0 => 'Zero',
-# 1 => 'One',
-# 2 => 'Two',
-# 3 => 'Three',
-# 4 => 'Four',
-# 5 => 'Five',
-# 6 => 'Six',
-# 7 => 'Seven',
-# 8 => 'Eight',
-# 9 => 'Nine',
-# 10 => 'Ten',
-# 11 => 'Eleven',
-# 12 => 'Twelve',
-# 13 => 'Thirteen',
-# 14 => 'Fourteen',
-# 15 => 'Fifteen',
-# 16 => 'Sixteen',
-# 17 => 'Seventeen',
-# 18 => 'Eighteen',
-# 19 => 'Nineteen',
-# 20 => 'Twenty',
-# 30 => 'Thirty',
-# 40 => 'Forty',
-# 50 => 'Fifty',
-# 60 => 'Sixty',
-# 70 => 'Seventy',
-# 80 => 'Eighty',
-# 90 => 'Ninety',
-# 10**2 => 'Hundred',
-# 10**3 => 'Thousand',
-# 10**6 => 'Million',
-# 10**9 => 'Billion',
-# 10**12 => 'Trillion',
-# );
-#MEA1BEG Hungarian numbers
- %{ $self->{numbername} } =
- (0 => 'Nulla',
- 1 => 'egy',
- 2 => 'kettõ',
- 3 => 'három',
- 4 => 'négy',
- 5 => 'öt',
- 6 => 'hat',
- 7 => 'hét',
- 8 => 'nyolc',
- 9 => 'kilenc',
- 10 => 'tíz',
- 11 => 'tizenegy',
- 12 => 'tizenkettõ',
- 13 => 'tizenhárom',
- 14 => 'tizennégy',
- 15 => 'tizenöt',
- 16 => 'tizenhat',
- 17 => 'tizenhét',
- 18 => 'tizennyolc',
- 19 => 'tizenkilenc',
- 20 => 'húsz',
- 21 => 'huszonegy',
- 22 => 'huszonkettõ',
- 23 => 'huszonhárom',
- 24 => 'huszonnégy',
- 25 => 'huszonöt',
- 26 => 'huszonhat',
- 27 => 'huszonhét',
- 28 => 'huszonnyolc',
- 29 => 'huszonkilenc',
- 30 => 'harminc',
- 40 => 'negyven',
- 50 => 'ötven',
- 60 => 'hatvan',
- 70 => 'hetven',
- 80 => 'nyolcvan',
- 90 => 'kilencven',
- 10**2 => 'száz',
- 10**3 => 'ezer',
- 10**6 => 'millió',
- 10**9 => 'milliárd',
- 10**12 => 'billió',
- );
-#MEA1END
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my @a;
- my $i;
-#MEA1BEG
- my $res;
-#MEA1END
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
- while (@numblock) {
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
- if ($numblock[$i] > 99) {
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
-
- }
-
- $numblock[$i] *= 1;
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } elsif ($numblock[$i] > 0) {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
-
- # add thousand, million
- if ($i) {
-#MEA1BEG above 2000 need hyphen between treegroups
-# if ($numblock[$i] > 9) {
-# push @textnumber, $self->format_ten($numblock[$i]);
-# } elsif ($numblock[$i] > 0) {
-# push @textnumber, $self->{numbername}{$numblock[$i]};
-# }
- if ($i==1 && $amount < 2000){
-
- $num = 10**($i * 3);
- push @textnumber, $self->{numbername}{$num};
- } else {
-
- $num = 10**($i * 3);
- push @textnumber, $self->{numbername}{$num}."-";
- }
-#MEA1END
- }
-
- pop @numblock;
-
- }
-#MEA1BEG First charachter is uppercase
-# join '', @textnumber;
- $res=ucfirst join '', @textnumber;
-#MEA1END
-#MEA1BEG remove last hyphen
- $res=~s/(\-)$//;
- return $res;
-#MEA1END
-
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-#MEA1BEG above 30 not above 20
-# if ($amount > 30) {
- if ($amount > 30) {
-#MEA1END
- $textnumber = $self->{numbername}{$num[0]*10};
- $amount = $num[1];
- } else {
- $textnumber = $self->{numbername}{$amount};
- $amount = 0;
- }
-
- $textnumber .= "".$self->{numbername}{$amount} if $amount;
-
- $textnumber;
-
-}
-
-
-1;
-
-
-
diff --git a/sql-ledger/locale/hu/admin b/sql-ledger/locale/hu/admin
deleted file mode 100644
index 8e406d8..0000000
--- a/sql-ledger/locale/hu/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Hozzáférési jogok',
- 'Accounting' => 'Könyvelés',
- 'Add User' => 'Új felhasználó',
- 'Address' => 'Cím',
- 'Administration' => 'Rendszerfelügyelet',
- 'Administrator' => 'Rendszergazda',
- 'All Datasets up to date!' => 'Összes ügyféladatbázis frissítve!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Rendszergazda jelszavának megváltoztatása',
- 'Change Password' => 'Jelszó megváltoztatása',
- 'Character Set' => 'Betû kódlap',
- 'Click on login name to edit!' => 'Módosításhoz klikkeljen a felhasználó nevére!',
- 'Company' => 'Társaság',
- 'Connect to' => 'Csatlakozva ehhez:',
- 'Continue' => 'Folytatás',
- 'Create Chart of Accounts' => 'Számlatükör készítése',
- 'Create Dataset' => 'Új cégadatbázis',
- 'DBI not installed!' => 'DBI program nincs installálva!',
- 'Database' => 'Adatbázis',
- 'Database Administration' => 'Adatbázis felügyelet',
- 'Database Driver not checked!' => 'Nincs kijelölve az adatbázismotor típusa!',
- 'Database User missing!' => 'Adatbázis felhasználója hiányzik!',
- 'Dataset' => 'Cégadatbázis',
- 'Dataset missing!' => 'Cégadatbázis hiányzik!',
- 'Dataset updated!' => 'Cégadatbázis frissítve!',
- 'Date Format' => 'Dátumformátum',
- 'Delete' => 'Törlés',
- 'Delete Dataset' => 'Cégadatbázis törlése',
- 'Directory' => 'Könyvtár',
- 'Driver' => 'Meghajtó',
- 'Dropdown Limit' => 'Lenyíló ablak limit',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Felhasználó módosítása',
- 'Existing Datasets' => 'Létezõ cégadatbázisok',
- 'Fax' => 'Fax',
- 'Host' => 'Adatbázis helye:',
- 'Hostname missing!' => 'Adatbázis helye hiányzik!',
- 'Language' => 'Nyelv',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Hagyja üresen a Hely és a Port mezõket, hacsak nem akar távoli kapcsolatot létesíteni',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Belépés',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Kilépés',
- 'Multibyte Encoding' => 'Multibyte kódolás',
- 'Name' => 'Név',
- 'New Templates' => 'Új sablonok',
- 'No Database Drivers available!' => 'Nincs elérhetõ adatbázismeghajtó!',
- 'No Dataset selected!' => 'Nincs kiválasztott cégadatbázis!',
- 'Nothing to delete!' => 'Nincs mit törölni!',
- 'Number Format' => 'Számformátum',
- 'Oracle Database Administration' => 'Oracle adatbázis felügyelet',
- 'Password' => 'Jelszó',
- 'Password changed!' => 'Jelszó megváltozott!',
- 'Pg Database Administration' => 'Postgresql adatbázis felügyelet',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Port' => 'Port száma',
- 'Port missing!' => 'Port száma hiányzik!',
- 'Printer' => 'Nyomtató',
- 'Save' => 'Mentés',
- 'Setup Templates' => 'Sablonok beállítása',
- 'Signature' => 'Aláírás',
- 'Stylesheet' => 'Stíluslap',
- 'Templates' => 'Sablonok',
- 'The following Datasets are not in use and can be deleted' => 'Az alábbi cégadatbázisok üresek, és törölhetõk',
- 'The following Datasets need to be updated' => 'Az alábbi cégadatbázisokat frissíteni kell',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'A meglévõ adatbázisok elõzetes ellenõrzése. A program itt még nem töröl és nem hoz létre semmit!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Új felhasználót úgy hozhat létre egy meglévõ cégadatbázishoz, hogy egy létezõ felhasználóra kattint, és a belépési nevet és a jelszót megváltoztatja és elmenti. Az új felhasználó örökli a beállításokat.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Cégadatbázis frissítése',
- 'Use Templates' => 'Sablon használata',
- 'User' => 'Felhasználó',
- 'User deleted!' => 'Felhasználó törölve!',
- 'User saved!' => 'Felhasználó elmentve!',
- 'Version' => 'Verzió',
- 'You must enter a host and port for local and remote connections!' => 'A helyi és távoli kapcsolat eléréséhez írjon be helyet, és portszámot!',
- 'does not exist' => 'nem létezik',
- 'is already a member!' => 'már tag!',
- 'localhost' => 'localhost',
- 'successfully created!' => 'sikeresen létrehozva!',
- 'successfully deleted!' => 'sikeresen törölve!',
- 'website' => 'honlap',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'Új_felhasználó' => 'add_user',
- 'rendszergazda_jelszavának_megváltoztatása' => 'change_admin_password',
- 'jelszó_megváltoztatása' => 'change_password',
- 'folytatás' => 'continue',
- 'Új_cégadatbázis' => 'create_dataset',
- 'törlés' => 'delete',
- 'cégadatbázis_törlése' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'belépés' => 'login',
- 'kilépés' => 'logout',
- 'oracle_adatbázis_felügyelet' => 'oracle_database_administration',
- 'postgresql_adatbázis_felügyelet' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'mentés' => 'save',
- 'unlock_system' => 'unlock_system',
- 'cégadatbázis_frissítése' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/all b/sql-ledger/locale/hu/all
deleted file mode 100644
index a52a388..0000000
--- a/sql-ledger/locale/hu/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Szállítók',
- 'AP Aging' => 'Szállító lejárati lista',
- 'AP Outstanding' => 'Kifizetetlen szállítószámlák',
- 'AP Transaction' => 'Szállító tranzakció',
- 'AP Transactions' => 'Szállító tranzakciók',
- 'AR' => 'Vevõk',
- 'AR Aging' => 'Vevõ lejárati lista',
- 'AR Outstanding' => 'Kifizetetlen vevõszámlák',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'AR Transactions' => 'Vevõ tranzakciók',
- 'About' => ' ',
- 'Above' => '',
- 'Access Control' => 'Hozzáférési jogok',
- 'Account' => 'Számla',
- 'Account Number' => 'Számlaszám',
- 'Account Number missing!' => 'Számlaszám hiányzik!',
- 'Account Type' => 'Számlatípus',
- 'Account Type missing!' => 'Számlatípus hiányzik!',
- 'Account deleted!' => 'Számla törölve!',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Számla elmentve!',
- 'Accounting' => 'Könyvelés',
- 'Accounting Menu' => 'Menü',
- 'Accounts' => 'Számlák',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Aktív',
- 'Add' => 'Új',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Új számla',
- 'Add Assembly' => 'Új saját termék',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => 'Új számlák közötti pénzmozgás',
- 'Add Customer' => 'Új vevõ',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Új gyûjtõkód',
- 'Add General Ledger Transaction' => 'Új fõkönyvi könyvelés',
- 'Add Group' => 'Új csoport',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => 'Új Nyugta',
- 'Add Part' => 'Új cikk',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Új munkaszám',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Új vevõszámla',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Add Service' => 'Új szolgáltatás',
- 'Add Transaction' => 'Új tranzakció',
- 'Add User' => 'Új felhasználó',
- 'Add Vendor' => 'Új szállító',
- 'Add Vendor Invoice' => 'Új beszerzési számla',
- 'Add Warehouse' => '',
- 'Address' => 'Cím',
- 'Administration' => 'Rendszerfelügyelet',
- 'Administrator' => 'Rendszergazda',
- 'After Deduction' => '',
- 'All' => 'Összes',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Összes ügyféladatbázis frissítve!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Összeg',
- 'Amount Due' => 'Esedékes összeg',
- 'Amount missing!' => 'Összeg hiányzik!',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Invoice Number' => 'Biztos, hogy törölni akarja? Számlaszám:',
- 'Are you sure you want to delete Order Number' => 'Biztos, hogy törölni akarja? Megrendelésszám:',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Biztos, hogy törölni akarja? Tranzakció:',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Saját termékek',
- 'Assemblies restocked!' => 'Saját termékek készletre véve',
- 'Assembly' => '',
- 'Asset' => 'Eszköz',
- 'Attachment' => 'Csatolás',
- 'Audit Control' => 'Audit Kontroll',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'BIC' => '',
- 'BOM' => 'Anyagjegyzék',
- 'Backup' => 'Biztonsági másolat',
- 'Backup sent to' => 'Biztonsági másolat elküldve:',
- 'Balance' => 'Egyenleg',
- 'Balance Sheet' => 'Mérleg',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Titkos másolat',
- 'Before Deduction' => '',
- 'Beginning Balance' => 'Nyitóegyenleg',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Raktárhely',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Az ügyféladatbázisban bármit lehet törölni, módosítani',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Adószám',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'ELÁBÉ',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'A számlát nem lehet törölni',
- 'Cannot delete customer!' => 'A vevõt nem lehet törölni!',
- 'Cannot delete default account!' => 'Az alapbeállítású számlát nem lehet törölni!',
- 'Cannot delete invoice!' => 'A partnerszámlát nem lehet törölni!',
- 'Cannot delete item!' => 'A tételt nem lehet törölni!',
- 'Cannot delete order!' => 'A rendelést nem lehet törölni!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'A tranzakciót nem lehet törölni!',
- 'Cannot delete vendor!' => 'Szállítót nem lehet törölni!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'A lezárt idõszakban nem lehet számlát kiállítani!',
- 'Cannot post invoice!' => 'A partnerszámlát nem lehet kiállítani',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cannot post transaction for a closed period!' => 'A lezárt idõszakban nem lehet tranzakciót rögzíteni!!',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Cannot process payment for a closed period!' => 'A pénzmozgást nem lehet lezárt idõszakban rögzíteni!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'A számlát nem lehet elmenteni!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'A rendelést nem lehet elmenteni!',
- 'Cannot save preferences!' => 'A beállításokat nem lehet elmenteni',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => 'Gyûjtõszámla nem lehet egyszerre Vevõk, Szállítók vagy Készlet',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'A saját terméket nem lehet készletre venni!',
- 'Cash' => 'Pénzmozgások',
- 'Cc' => 'Másolat',
- 'Change' => 'Visszajáró',
- 'Change Admin Password' => 'Rendszergazda jelszavának megváltoztatása',
- 'Change Password' => 'Jelszó megváltoztatása',
- 'Character Set' => 'Betû kódlap',
- 'Chart of Accounts' => 'Számlatükör',
- 'Check' => 'Csekk',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Módosításhoz klikkeljen a felhasználó nevére!',
- 'Close Books up to' => 'Könyvelés lezárása eddig az idõpontig:',
- 'Closed' => 'Lezárt',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Társaság',
- 'Company Name' => '',
- 'Compare to' => 'Összehasonlítva:',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Megerõsítés:',
- 'Connect to' => 'Csatlakozva ehhez:',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Contra' => '',
- 'Copies' => 'Másolatok',
- 'Copy to COA' => 'Másolás a számlatükörbe',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Számlatükör készítése',
- 'Create Dataset' => 'Új cégadatbázis',
- 'Credit' => 'Követel',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Current Earnings' => '',
- 'Customer' => 'Vevõ',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Vevõ törölve!',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Customer saved!' => 'Vevõ elmentve!',
- 'Customers' => 'Vevõadatok',
- 'DBI not installed!' => 'DBI program nincs installálva!',
- 'DOB' => '',
- 'Database' => 'Adatbázis',
- 'Database Administration' => 'Adatbázis felügyelet',
- 'Database Driver not checked!' => 'Nincs kijelölve az adatbázismotor típusa!',
- 'Database Host' => 'Adatbázis helye',
- 'Database User missing!' => 'Adatbázis felhasználója hiányzik!',
- 'Dataset' => 'Cégadatbázis',
- 'Dataset is newer than version!' => 'A Cégadatbázis verziója újabb, mint a programé!',
- 'Dataset missing!' => 'Cégadatbázis hiányzik!',
- 'Dataset updated!' => 'Cégadatbázis frissítve!',
- 'Date' => 'Dátum',
- 'Date Format' => 'Dátumformátum',
- 'Date Paid' => 'Fizetés napja',
- 'Date Received' => '',
- 'Date missing!' => 'Dátum hiányzik',
- 'Date received missing!' => '',
- 'Debit' => 'Tartozik',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Decimalplaces' => 'Tizedeshelyek',
- 'Decrease' => 'Csökkenés',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Törlés',
- 'Delete Account' => 'Számla törlése',
- 'Delete Dataset' => 'Cégadatbázis törlése',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Jóváírás',
- 'Description' => 'Szöveges leírás',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Eltérés',
- 'Directory' => 'Könyvtár',
- 'Discount' => 'Engedmény',
- 'Done' => 'Elvégezve',
- 'Drawing' => 'Rajz',
- 'Driver' => 'Meghajtó',
- 'Dropdown Limit' => 'Lenyíló ablak limit',
- 'Due Date' => 'Esedékesség',
- 'Due Date missing!' => 'Esedékesség hiányzik!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Kimutatás küldése e-mail-ben:',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'E-mailed' => '',
- 'Edit' => 'Módosítás',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Számlaszám módosítása',
- 'Edit Assembly' => 'Saját termék módosítása',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => 'Számlák közötti pénzmozgás módosítása',
- 'Edit Customer' => 'Vevõ módosítása',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Gyûjtõkód módosítása',
- 'Edit General Ledger Transaction' => 'Vegyes könyvelési tétel módosítása',
- 'Edit Group' => 'Csoport módosítása',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => 'Nyugta módosítása',
- 'Edit Part' => 'Cikk módosítása',
- 'Edit Preferences for' => 'Felhasználói paraméterek módosítása:',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Projekt módosítása',
- 'Edit Purchase Order' => 'Beszerzési rendelés módosítása',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Vevõszámla módosítása',
- 'Edit Sales Order' => 'Vevõrendelés módosítása',
- 'Edit Service' => 'Szolgáltatás módosítása',
- 'Edit Template' => 'Sablon módosítása',
- 'Edit User' => 'Felhasználó módosítása',
- 'Edit Vendor' => 'Szállító módosítása',
- 'Edit Vendor Invoice' => 'Beszerzési számla módosítása',
- 'Edit Warehouse' => '',
- 'Employee' => 'Alkalmazott',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Minden dátum esetében csak ellentétes elõjelû tranzakcióval lehet stornózni?',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'A saját és külföldi devizákat jelölje 3 betûvel kettõsponttal elválasztva! (pl. HUF:EUR:USD)',
- 'Equity' => 'Tõke',
- 'Excempt age <' => '',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Existing Datasets' => 'Létezõ cégadatbázisok',
- 'Expense' => 'Költség',
- 'Expense Account' => 'Költségszámla',
- 'Expense/Asset' => 'Költség/Eszköz',
- 'Extended' => 'Összeg',
- 'FX' => 'Deviza',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'Foreign Exchange Gain' => 'Árfolyamnyereség',
- 'Foreign Exchange Loss' => 'Árfolyamveszteség',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'GIFI deleted!' => 'Gyûjtõkód törölve!',
- 'GIFI missing!' => 'Gyûjtõkód hiányzik!',
- 'GIFI saved!' => 'Gyûjtõkód elmentve!',
- 'GL Transaction' => 'Fõkönyvi tranzakció!',
- 'General Ledger' => 'Fõkönyvi könyvelés',
- 'Goods & Services' => 'Áruk & Szolgáltatások',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'Group Translations' => '',
- 'Group deleted!' => 'Csoport törölve!',
- 'Group missing!' => 'Csoport hiányzik!',
- 'Group saved!' => 'Csoport elmentve!',
- 'Groups' => 'Csoportok',
- 'HR' => '',
- 'HTML Templates' => 'HTML sablonok',
- 'Heading' => 'Fejléc',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Adatbázis helye:',
- 'Hostname missing!' => 'Adatbázis helye hiányzik!',
- 'IBAN' => '',
- 'ID' => 'Azonosító',
- 'Image' => 'Kép',
- 'In-line' => 'Beágyazva',
- 'Include Exchange Rate Difference' => 'Árfolyamkülönbséget tartalmazza',
- 'Include in Report' => 'Oszlopok:',
- 'Include in drop-down menus' => 'Mely tranzakció(k)-nál lehessen kiválasztani?:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Kiválasztható legyen a vevõ/szállító ûrlapokon, mint adószámla?',
- 'Income' => 'Árbevétel',
- 'Income Account' => 'Árbevételszámla',
- 'Income Statement' => 'Eredménykimutatás',
- 'Incorrect Dataset version!' => 'Érvénytelen adatbázisverzió!',
- 'Incorrect Password!' => 'Érvénytelen jelszó!',
- 'Increase' => 'Növekedés',
- 'Individual Items' => 'Összetevõk',
- 'Internal Notes' => '',
- 'Inventory' => 'Készlet',
- 'Inventory Account' => 'Készletszámla',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Mielõtt ezt a saját terméket elévültnek nyilvánítja,a mennyiségnek nullának kell lennie!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Mielõtt ezt az anyagot/árut elévültnek nyilvánítja,a mennyiségnek nullának kell lennie!!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Invoice deleted!' => 'Számla törölve!',
- 'Invoice posted!' => 'Számla rögzítve!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Számlák',
- 'Is this a summary account to record' => 'Gyûjtõszámlaként szerepeljen ezeknél a tranzakcióknál:',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Tétel törölve!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Items' => '',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'LaTeX Templates' => 'LaTeX sablonok',
- 'Labor/Overhead' => '',
- 'Language' => 'Nyelv',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Legutolsó számok & Alapszámlák',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Hagyja üresen a Hely és a Port mezõket, hacsak nem akar távoli kapcsolatot létesíteni',
- 'Liability' => 'Kötelezettség',
- 'Licensed to' => 'Cég:',
- 'Line Total' => 'Sor összesen',
- 'Link' => 'Kapcsolat',
- 'Link Accounts' => 'Számlakapcsolatok',
- 'List' => '',
- 'List Accounts' => 'Számlák listázása',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Gyûjtõkódok listázása',
- 'List Languages' => '',
- 'List Price' => 'Listaár',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Tranzakciók listázása',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Belépés',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Kilépés',
- 'Make' => 'Gyártmány',
- 'Manager' => '',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Üzenet',
- 'Method' => '',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Modell',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte kódolás',
- 'N/A' => 'N/A',
- 'Name' => 'Név',
- 'Name missing!' => 'Név hiányzik',
- 'New Templates' => 'Új sablonok',
- 'No' => 'Nem',
- 'No Database Drivers available!' => 'Nincs elérhetõ adatbázismeghajtó!',
- 'No Dataset selected!' => 'Nincs kiválasztott cégadatbázis!',
- 'No email address for' => 'Nincs e-mail címe:',
- 'No.' => 'Sz.',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Megjegyzés',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Nincs semmi kiválasztva!',
- 'Nothing to delete!' => 'Nincs mit törölni!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number Format' => 'Számformátum',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'O' => 'Ny.',
- 'Obsolete' => 'Elévült',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'On Hand' => 'Készleten',
- 'Open' => 'Nyitott',
- 'Oracle Database Administration' => 'Oracle adatbázis felügyelet',
- 'Order' => 'Rendelés',
- 'Order Date' => 'Rendelés dátuma',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Entry' => 'Rendelések',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'Order deleted!' => 'Rendelés törölve!',
- 'Order processed!' => '',
- 'Order saved!' => 'Rendelés elmentve!',
- 'Orphaned' => 'Tranzakció nélküli',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Az egyenleg nem stimmel!',
- 'Outstanding' => 'Kifizetetlen',
- 'PDF' => 'PDF',
- 'POS' => 'Nyugta',
- 'POS Invoice' => '',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Packing Lists' => '',
- 'Paid' => 'Fizetve',
- 'Part' => 'Cikk',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Cikkek',
- 'Parts Inventory' => 'Cikkek készlete',
- 'Password' => 'Jelszó',
- 'Password changed!' => 'Jelszó megváltozott!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Szállítók',
- 'Payment' => 'Kifizetés',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payment posted!' => 'Pénzmozgás rögzítve',
- 'Payments' => 'Kifizetések',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Postgresql adatbázis felügyelet',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port száma',
- 'Port missing!' => 'Port száma hiányzik!',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Posted!' => 'Rögzítve',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Beállítások',
- 'Preferences saved!' => 'Beállítások elmentve!',
- 'Prepayment' => '',
- 'Price' => 'Ár',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Nyomtatás',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Nyomtató',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Munkaszám',
- 'Project Description Translations' => '',
- 'Project Number' => 'Munkaszám',
- 'Project Number missing!' => 'Munkaszám száma hiányzik!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Munkaszám törölve!',
- 'Project not on file!' => '',
- 'Project saved!' => 'Munkaszám elmentve!',
- 'Projects' => 'Munkaszámok',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Qty' => 'Menny.',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => 'E',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Rendelési pont',
- 'Rate' => 'Árfolyam',
- 'Rate missing!' => '',
- 'Recd' => 'Kapott',
- 'Receipt' => 'Befizetés',
- 'Receipt posted!' => '',
- 'Receipts' => 'Befizetések',
- 'Receivables' => 'Vevõk',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Egyeztetés',
- 'Reconciliation Report' => '',
- 'Record in' => 'Feladás:',
- 'Reference' => 'Hivatkozás',
- 'Reference missing!' => 'Hivatkozás hiányzik',
- 'Remaining' => 'Maradék',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Jelentés:',
- 'Reports' => 'Jelentések',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Leszállítás',
- 'Retained Earnings' => 'Adózás elõtti eredmény',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'Eladás',
- 'Sales' => 'Eladás',
- 'Sales Invoice' => 'Vevõszámla',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Vevõrendelés',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Vevõrendelések',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Ügynök',
- 'Save' => 'Mentés',
- 'Save Pricelist' => '',
- 'Save as new' => 'Mentés újként',
- 'Save to File' => 'Másolat File-ba',
- 'Screen' => 'Képernyõre',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Mindent kijelöl',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Eladási ár',
- 'Send by E-Mail' => 'Másolat E-mail-ben',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Szolgáltatás',
- 'Service Items' => 'Szolgáltatás tételek',
- 'Services' => 'Szolgáltatások',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Sablonok beállítása',
- 'Ship' => 'Szállítás',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Szállítási cím',
- 'Ship via' => 'Fizetési mód',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Hiányzó',
- 'Signature' => 'Aláírás',
- 'Source' => 'Bizonylatszám',
- 'Spoolfile' => '',
- 'Standard' => 'Sztenderd',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Kimutatás',
- 'Statement Balance' => 'Kimutatás egyenlege',
- 'Statement sent to' => 'Kimutatás elküldve:',
- 'Statements sent to printer!' => 'Kimutatás kinyomtatva!',
- 'Stock' => 'Készletre vesz',
- 'Stock Assembly' => 'Saját termék bevételezése',
- 'Stylesheet' => 'Stíluslap',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Törzsadatok',
- 'System Defaults' => '',
- 'Tax' => 'Adó',
- 'Tax Accounts' => 'Adószámlák',
- 'Tax Included' => 'Adót tartalmazza',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Fizetendõ ÁFA',
- 'Tax paid' => 'Levonható ÁFA',
- 'Taxable' => 'Adó:',
- 'Template saved!' => 'Sablon elmentve!',
- 'Templates' => 'Sablonok',
- 'Terms' => 'Határidõ',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Az alábbi cégadatbázisok üresek, és törölhetõk',
- 'The following Datasets need to be updated' => 'Az alábbi cégadatbázisokat frissíteni kell',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'A meglévõ adatbázisok elõzetes ellenõrzése. A program itt még nem töröl és nem hoz létre semmit!',
- 'Till' => 'Kassza',
- 'To' => 'Meddig:',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Új felhasználót úgy hozhat létre egy meglévõ cégadatbázishoz, hogy egy létezõ felhasználóra kattint, és a belépési nevet és a jelszót megváltoztatja és elmenti. Az új felhasználó örökli a beállításokat.',
- 'Top Level' => 'Legfelsõ szint',
- 'Total' => 'Végösszeg',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Tranzakció dátuma hiányzik!',
- 'Transaction deleted!' => 'Tranzakció törölve!',
- 'Transaction posted!' => 'Tranzakció rögzítve!',
- 'Transaction reversal enforced for all dates' => 'Bármilyen dátumú tranzakciót csak ellentétes elõjelû tranzakcióval lehet stornózni',
- 'Transaction reversal enforced up to' => 'E dátumig csak ellentétes elõjelû tranzakcióval lehet stornózni:',
- 'Transactions' => 'Tranzakciók',
- 'Transfer' => 'Számlák közötti',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Fõkönyvi kivonat',
- 'Type of Business' => '',
- 'Unit' => 'Egység',
- 'Unit of measure' => 'Mértékegység',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Frissítés',
- 'Update Dataset' => 'Cégadatbázis frissítése',
- 'Updated' => 'Frissítve',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Sablon használata',
- 'User' => 'Felhasználó',
- 'User deleted!' => 'Felhasználó törölve!',
- 'User saved!' => 'Felhasználó elmentve!',
- 'Valid until' => '',
- 'Vendor' => 'Szállító',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Beszerzési számla',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Szállító törölve!',
- 'Vendor missing!' => 'Szállító hiányzik!',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'Vendor saved!' => 'Szállító elmentve!',
- 'Vendors' => 'Szállítók',
- 'Version' => 'Verzió',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Súly',
- 'Weight Unit' => 'Súlyegység',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Igen',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nem írt be nevet!',
- 'You must enter a host and port for local and remote connections!' => 'A helyi és távoli kapcsolat eléréséhez írjon be helyet, és portszámot!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'gyûjtõszámlát nem lehet más típusú tranzakcióhoz beállítani',
- 'as at' => 'Fordulónap:',
- 'days' => 'nap',
- 'does not exist' => 'nem létezik',
- 'done' => 'elvégezve',
- 'ea' => 'db',
- 'for Period' => 'Idõszak:',
- 'is already a member!' => 'már tag!',
- 'is not a member!' => 'nem tag!',
- 'localhost' => 'localhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'sikeresen létrehozva!',
- 'successfully deleted!' => 'sikeresen törölve!',
- 'website' => 'honlap',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/am b/sql-ledger/locale/hu/am
deleted file mode 100644
index dd93f89..0000000
--- a/sql-ledger/locale/hu/am
+++ /dev/null
@@ -1,195 +0,0 @@
-$self{texts} = {
- 'AP' => 'Szállítók',
- 'AR' => 'Vevõk',
- 'About' => ' ',
- 'Account' => 'Számla',
- 'Account Number' => 'Számlaszám',
- 'Account Number missing!' => 'Számlaszám hiányzik!',
- 'Account Type' => 'Számlatípus',
- 'Account Type missing!' => 'Számlatípus hiányzik!',
- 'Account deleted!' => 'Számla törölve!',
- 'Account saved!' => 'Számla elmentve!',
- 'Accounting Menu' => 'Menü',
- 'Add Account' => 'Új számla',
- 'Add GIFI' => 'Új gyûjtõkód',
- 'Address' => 'Cím',
- 'Asset' => 'Eszköz',
- 'Audit Control' => 'Audit Kontroll',
- 'Backup sent to' => 'Biztonsági másolat elküldve:',
- 'Books are open' => 'Az ügyféladatbázisban bármit lehet törölni, módosítani',
- 'Business Number' => 'Adószám',
- 'COGS' => 'ELÁBÉ',
- 'Cannot delete account!' => 'A számlát nem lehet törölni',
- 'Cannot delete default account!' => 'Az alapbeállítású számlát nem lehet törölni!',
- 'Cannot save account!' => 'A számlát nem lehet elmenteni!',
- 'Cannot save preferences!' => 'A beállításokat nem lehet elmenteni',
- 'Cannot set account for more than one of AR, AP or IC' => 'Gyûjtõszámla nem lehet egyszerre Vevõk, Szállítók vagy Készlet',
- 'Cash' => 'Pénzmozgások',
- 'Character Set' => 'Betû kódlap',
- 'Chart of Accounts' => 'Számlatükör',
- 'Close Books up to' => 'Könyvelés lezárása eddig az idõpontig:',
- 'Company' => 'Társaság',
- 'Continue' => 'Folytatás',
- 'Copy to COA' => 'Másolás a számlatükörbe',
- 'Credit' => 'Követel',
- 'Database Host' => 'Adatbázis helye',
- 'Dataset' => 'Cégadatbázis',
- 'Date Format' => 'Dátumformátum',
- 'Debit' => 'Tartozik',
- 'Delete' => 'Törlés',
- 'Delete Account' => 'Számla törlése',
- 'Description' => 'Szöveges leírás',
- 'Discount' => 'Engedmény',
- 'Dropdown Limit' => 'Lenyíló ablak limit',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Módosítás',
- 'Edit Account' => 'Számlaszám módosítása',
- 'Edit GIFI' => 'Gyûjtõkód módosítása',
- 'Edit Preferences for' => 'Felhasználói paraméterek módosítása:',
- 'Edit Template' => 'Sablon módosítása',
- 'Enforce transaction reversal for all dates' => 'Minden dátum esetében csak ellentétes elõjelû tranzakcióval lehet stornózni?',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'A saját és külföldi devizákat jelölje 3 betûvel kettõsponttal elválasztva! (pl. HUF:EUR:USD)',
- 'Equity' => 'Tõke',
- 'Expense' => 'Költség',
- 'Expense Account' => 'Költségszámla',
- 'Expense/Asset' => 'Költség/Eszköz',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Árfolyamnyereség',
- 'Foreign Exchange Loss' => 'Árfolyamveszteség',
- 'GIFI' => 'Gyûjtõkód',
- 'GIFI deleted!' => 'Gyûjtõkód törölve!',
- 'GIFI missing!' => 'Gyûjtõkód hiányzik!',
- 'GIFI saved!' => 'Gyûjtõkód elmentve!',
- 'Heading' => 'Fejléc',
- 'Include in drop-down menus' => 'Mely tranzakció(k)-nál lehessen kiválasztani?:',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Kiválasztható legyen a vevõ/szállító ûrlapokon, mint adószámla?',
- 'Income' => 'Árbevétel',
- 'Income Account' => 'Árbevételszámla',
- 'Inventory' => 'Készlet',
- 'Inventory Account' => 'Készletszámla',
- 'Is this a summary account to record' => 'Gyûjtõszámlaként szerepeljen ezeknél a tranzakcióknál:',
- 'Language' => 'Nyelv',
- 'Last Numbers & Default Accounts' => 'Legutolsó számok & Alapszámlák',
- 'Liability' => 'Kötelezettség',
- 'Licensed to' => 'Cég:',
- 'Link' => 'Kapcsolat',
- 'Name' => 'Név',
- 'No' => 'Nem',
- 'No email address for' => 'Nincs e-mail címe:',
- 'Number' => 'Szám',
- 'Number Format' => 'Számformátum',
- 'Parts Inventory' => 'Cikkek készlete',
- 'Password' => 'Jelszó',
- 'Payables' => 'Szállítók',
- 'Payment' => 'Kifizetés',
- 'Phone' => 'Telefon',
- 'Preferences saved!' => 'Beállítások elmentve!',
- 'Printer' => 'Nyomtató',
- 'Rate' => 'Árfolyam',
- 'Receivables' => 'Vevõk',
- 'Reference' => 'Hivatkozás',
- 'Retained Earnings' => 'Adózás elõtti eredmény',
- 'Save' => 'Mentés',
- 'Save as new' => 'Mentés újként',
- 'Service Items' => 'Szolgáltatás tételek',
- 'Signature' => 'Aláírás',
- 'Stylesheet' => 'Stíluslap',
- 'Tax' => 'Adó',
- 'Tax Accounts' => 'Adószámlák',
- 'Template saved!' => 'Sablon elmentve!',
- 'Transaction reversal enforced for all dates' => 'Bármilyen dátumú tranzakciót csak ellentétes elõjelû tranzakcióval lehet stornózni',
- 'Transaction reversal enforced up to' => 'E dátumig csak ellentétes elõjelû tranzakcióval lehet stornózni:',
- 'User' => 'Felhasználó',
- 'Version' => 'Verzió',
- 'Weight Unit' => 'Súlyegység',
- 'Yes' => 'Igen',
- 'account cannot be set to any other type of account' => 'gyûjtõszámlát nem lehet más típusú tranzakcióhoz beállítani',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'Új_számla' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'folytatás' => 'continue',
- 'másolás_a_számlatükörbe' => 'copy_to_coa',
- 'törlés' => 'delete',
- 'módosítás' => 'edit',
- 'számlaszám_módosítása' => 'edit_account',
- 'mentés' => 'save',
- 'mentés_újként' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ap b/sql-ledger/locale/hu/ap
deleted file mode 100644
index b6b8841..0000000
--- a/sql-ledger/locale/hu/ap
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Kifizetetlen szállítószámlák',
- 'AP Transaction' => 'Szállító tranzakció',
- 'AP Transactions' => 'Szállító tranzakciók',
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Amount Due' => 'Esedékes összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Transaction' => 'Biztos, hogy törölni akarja? Tranzakció:',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Cannot delete transaction!' => 'A tranzakciót nem lehet törölni!',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cannot post transaction for a closed period!' => 'A lezárt idõszakban nem lehet tranzakciót rögzíteni!!',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Check' => 'Csekk',
- 'Closed' => 'Lezárt',
- 'Confirm!' => 'Megerõsítés:',
- 'Continue' => 'Folytatás',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Date Paid' => 'Fizetés napja',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'Due Date missing!' => 'Esedékesség hiányzik!',
- 'Employee' => 'Alkalmazott',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'ID' => 'Azonosító',
- 'Include in Report' => 'Oszlopok:',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Open' => 'Nyitott',
- 'Order' => 'Rendelés',
- 'Order Number' => 'Rendelés száma',
- 'PDF' => 'PDF',
- 'Paid' => 'Fizetve',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payments' => 'Kifizetések',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Postscript' => 'Postscript',
- 'Print' => 'Nyomtatás',
- 'Receipt' => 'Befizetés',
- 'Remaining' => 'Maradék',
- 'Screen' => 'Képernyõre',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Source' => 'Bizonylatszám',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax Included' => 'Adót tartalmazza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Transaction deleted!' => 'Tranzakció törölve!',
- 'Transaction posted!' => 'Tranzakció rögzítve!',
- 'Update' => 'Frissítés',
- 'Vendor' => 'Szállító',
- 'Vendor missing!' => 'Szállító hiányzik!',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'Yes' => 'Igen',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'szállító_tranzakció' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'nyomtatás' => 'print',
- 'print_and_post' => 'print_and_post',
- 'frissítés' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ar b/sql-ledger/locale/hu/ar
deleted file mode 100644
index bc20c76..0000000
--- a/sql-ledger/locale/hu/ar
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Kifizetetlen vevõszámlák',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'AR Transactions' => 'Vevõ tranzakciók',
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Amount Due' => 'Esedékes összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Transaction' => 'Biztos, hogy törölni akarja? Tranzakció:',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Cannot delete transaction!' => 'A tranzakciót nem lehet törölni!',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cannot post transaction for a closed period!' => 'A lezárt idõszakban nem lehet tranzakciót rögzíteni!!',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Check' => 'Csekk',
- 'Closed' => 'Lezárt',
- 'Confirm!' => 'Megerõsítés:',
- 'Continue' => 'Folytatás',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Date Paid' => 'Fizetés napja',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'Due Date missing!' => 'Esedékesség hiányzik!',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'ID' => 'Azonosító',
- 'Include in Report' => 'Oszlopok:',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Open' => 'Nyitott',
- 'Order' => 'Rendelés',
- 'Order Number' => 'Rendelés száma',
- 'PDF' => 'PDF',
- 'Paid' => 'Fizetve',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payments' => 'Kifizetések',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Postscript' => 'Postscript',
- 'Print' => 'Nyomtatás',
- 'Receipt' => 'Befizetés',
- 'Remaining' => 'Maradék',
- 'Salesperson' => 'Ügynök',
- 'Screen' => 'Képernyõre',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Ship via' => 'Fizetési mód',
- 'Source' => 'Bizonylatszám',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax Included' => 'Adót tartalmazza',
- 'Till' => 'Kassza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Transaction deleted!' => 'Tranzakció törölve!',
- 'Transaction posted!' => 'Tranzakció rögzítve!',
- 'Update' => 'Frissítés',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'Yes' => 'Igen',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'vevõ_tranzakció' => 'ar_transaction',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'nyomtatás' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'frissítés' => 'update',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/arap b/sql-ledger/locale/hu/arap
deleted file mode 100644
index d6cd462..0000000
--- a/sql-ledger/locale/hu/arap
+++ /dev/null
@@ -1,28 +0,0 @@
-$self{texts} = {
- 'Address' => 'Cím',
- 'Continue' => 'Folytatás',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Description' => 'Szöveges leírás',
- 'Number' => 'Szám',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'folytatás' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/arapprn b/sql-ledger/locale/hu/arapprn
deleted file mode 100644
index 54517d2..0000000
--- a/sql-ledger/locale/hu/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Amount' => 'Összeg',
- 'Check' => 'Csekk',
- 'Continue' => 'Folytatás',
- 'Date' => 'Dátum',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'Befizetés',
- 'Screen' => 'Képernyõre',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Source' => 'Bizonylatszám',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'folytatás' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/bp b/sql-ledger/locale/hu/bp
deleted file mode 100644
index 3198b3a..0000000
--- a/sql-ledger/locale/hu/bp
+++ /dev/null
@@ -1,45 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Confirm!' => 'Megerõsítés:',
- 'Continue' => 'Folytatás',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Date' => 'Dátum',
- 'From' => 'Mikortól:',
- 'Invoice' => 'Számla',
- 'Invoice Number' => 'Számlaszám',
- 'Order' => 'Rendelés',
- 'Order Number' => 'Rendelés száma',
- 'Print' => 'Nyomtatás',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Receipts' => 'Befizetések',
- 'Reference' => 'Hivatkozás',
- 'Sales Orders' => 'Vevõrendelések',
- 'Select all' => 'Mindent kijelöl',
- 'To' => 'Meddig:',
- 'Vendor' => 'Szállító',
- 'Yes' => 'Igen',
- 'done' => 'elvégezve',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'folytatás' => 'continue',
- 'nyomtatás' => 'print',
- 'remove' => 'remove',
- 'mindent_kijelöl' => 'select_all',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ca b/sql-ledger/locale/hu/ca
deleted file mode 100644
index 8ca0ca7..0000000
--- a/sql-ledger/locale/hu/ca
+++ /dev/null
@@ -1,53 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Balance' => 'Egyenleg',
- 'Chart of Accounts' => 'Számlatükör',
- 'Credit' => 'Követel',
- 'Current' => '0-30',
- 'Date' => 'Dátum',
- 'Debit' => 'Tartozik',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Description' => 'Szöveges leírás',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'Include in Report' => 'Oszlopok:',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'List Transactions' => 'Tranzakciók listázása',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Project Number' => 'Munkaszám',
- 'R' => 'E',
- 'Reference' => 'Hivatkozás',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Subtotal' => 'Részösszeg',
- 'To' => 'Meddig:',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'tranzakciók_listázása' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/cp b/sql-ledger/locale/hu/cp
deleted file mode 100644
index a46a034..0000000
--- a/sql-ledger/locale/hu/cp
+++ /dev/null
@@ -1,73 +0,0 @@
-$self{texts} = {
- 'AP' => 'Szállítók',
- 'AR' => 'Vevõk',
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Address' => 'Cím',
- 'All' => 'Összes',
- 'Amount' => 'Összeg',
- 'Amount Due' => 'Esedékes összeg',
- 'Cannot process payment for a closed period!' => 'A pénzmozgást nem lehet lezárt idõszakban rögzíteni!',
- 'Continue' => 'Folytatás',
- 'Currency' => 'Deviza',
- 'Customer' => 'Vevõ',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Date missing!' => 'Dátum hiányzik',
- 'Deposit' => 'Jóváírás',
- 'Description' => 'Szöveges leírás',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Invoice' => 'Számla',
- 'Invoices' => 'Számlák',
- 'Number' => 'Szám',
- 'PDF' => 'PDF',
- 'Payment' => 'Kifizetés',
- 'Payment posted!' => 'Pénzmozgás rögzítve',
- 'Post' => 'Rögzítés',
- 'Postscript' => 'Postscript',
- 'Print' => 'Nyomtatás',
- 'Receipt' => 'Befizetés',
- 'Screen' => 'Képernyõre',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Source' => 'Bizonylatszám',
- 'Update' => 'Frissítés',
- 'Vendor' => 'Szállító',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'folytatás' => 'continue',
- 'rögzítés' => 'post',
- 'nyomtatás' => 'print',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ct b/sql-ledger/locale/hu/ct
deleted file mode 100644
index 5e1462f..0000000
--- a/sql-ledger/locale/hu/ct
+++ /dev/null
@@ -1,135 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Szállító tranzakció',
- 'AP Transactions' => 'Szállító tranzakciók',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'AR Transactions' => 'Vevõ tranzakciók',
- 'Accounting Menu' => 'Menü',
- 'Add Customer' => 'Új vevõ',
- 'Add Vendor' => 'Új szállító',
- 'Address' => 'Cím',
- 'All' => 'Összes',
- 'Amount' => 'Összeg',
- 'Bcc' => 'Titkos másolat',
- 'Cannot delete customer!' => 'A vevõt nem lehet törölni!',
- 'Cannot delete vendor!' => 'Szállítót nem lehet törölni!',
- 'Cc' => 'Másolat',
- 'Closed' => 'Lezárt',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Customer deleted!' => 'Vevõ törölve!',
- 'Customer saved!' => 'Vevõ elmentve!',
- 'Customers' => 'Vevõadatok',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Discount' => 'Engedmény',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Vevõ módosítása',
- 'Edit Vendor' => 'Szállító módosítása',
- 'Employee' => 'Alkalmazott',
- 'Fax' => 'Fax',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'Group' => 'Csoport',
- 'ID' => 'Azonosító',
- 'Include in Report' => 'Oszlopok:',
- 'Invoice' => 'Számla',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Language' => 'Nyelv',
- 'Name' => 'Név',
- 'Name missing!' => 'Név hiányzik',
- 'Notes' => 'Megjegyzés',
- 'Number' => 'Szám',
- 'Open' => 'Nyitott',
- 'Order' => 'Rendelés',
- 'Orphaned' => 'Tranzakció nélküli',
- 'Phone' => 'Telefon',
- 'Project Number' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Qty' => 'Menny.',
- 'Sales Invoice' => 'Vevõszámla',
- 'Sales Order' => 'Vevõrendelés',
- 'Sales Orders' => 'Vevõrendelések',
- 'Salesperson' => 'Ügynök',
- 'Save' => 'Mentés',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Sell Price' => 'Eladási ár',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax Included' => 'Adót tartalmazza',
- 'Taxable' => 'Adó:',
- 'Terms' => 'Határidõ',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
- 'Vendor Invoice' => 'Beszerzési számla',
- 'Vendor deleted!' => 'Szállító törölve!',
- 'Vendor saved!' => 'Szállító elmentve!',
- 'Vendors' => 'Szállítók',
- 'days' => 'nap',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'szállító_tranzakció' => 'ap_transaction',
- 'vevõ_tranzakció' => 'ar_transaction',
- 'Új_vevõ' => 'add_customer',
- 'Új_szállító' => 'add_vendor',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'pricelist' => 'pricelist',
- 'beszerzési_rendelés' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'vevõszámla' => 'sales_invoice',
- 'vevõrendelés' => 'sales_order',
- 'mentés' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'frissítés' => 'update',
- 'beszerzési_számla' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/gl b/sql-ledger/locale/hu/gl
deleted file mode 100644
index 9888d78..0000000
--- a/sql-ledger/locale/hu/gl
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Szállító tranzakció',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Add Cash Transfer Transaction' => 'Új számlák közötti pénzmozgás',
- 'Add General Ledger Transaction' => 'Új fõkönyvi könyvelés',
- 'Address' => 'Cím',
- 'All' => 'Összes',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Transaction' => 'Biztos, hogy törölni akarja? Tranzakció:',
- 'Asset' => 'Eszköz',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Balance' => 'Egyenleg',
- 'Cannot delete transaction!' => 'A tranzakciót nem lehet törölni!',
- 'Cannot post transaction for a closed period!' => 'A lezárt idõszakban nem lehet tranzakciót rögzíteni!!',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Confirm!' => 'Megerõsítés:',
- 'Continue' => 'Folytatás',
- 'Credit' => 'Követel',
- 'Current' => '0-30',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Debit' => 'Tartozik',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'Edit Cash Transfer Transaction' => 'Számlák közötti pénzmozgás módosítása',
- 'Edit General Ledger Transaction' => 'Vegyes könyvelési tétel módosítása',
- 'Equity' => 'Tõke',
- 'Expense' => 'Költség',
- 'FX' => 'Deviza',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'GL Transaction' => 'Fõkönyvi tranzakció!',
- 'General Ledger' => 'Fõkönyvi könyvelés',
- 'ID' => 'Azonosító',
- 'Include in Report' => 'Oszlopok:',
- 'Income' => 'Árbevétel',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Liability' => 'Kötelezettség',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Project' => 'Munkaszám',
- 'R' => 'E',
- 'Reference' => 'Hivatkozás',
- 'Reference missing!' => 'Hivatkozás hiányzik',
- 'Reports' => 'Jelentések',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Source' => 'Bizonylatszám',
- 'Subtotal' => 'Részösszeg',
- 'To' => 'Meddig:',
- 'Transaction Date missing!' => 'Tranzakció dátuma hiányzik!',
- 'Transaction deleted!' => 'Tranzakció törölve!',
- 'Transaction posted!' => 'Tranzakció rögzítve!',
- 'Update' => 'Frissítés',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'Yes' => 'Igen',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'szállító_tranzakció' => 'ap_transaction',
- 'vevõ_tranzakció' => 'ar_transaction',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'fõkönyvi_tranzakció!' => 'gl_transaction',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'frissítés' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/hr b/sql-ledger/locale/hu/hr
deleted file mode 100644
index a5effcc..0000000
--- a/sql-ledger/locale/hu/hr
+++ /dev/null
@@ -1,70 +0,0 @@
-$self{texts} = {
- 'AP' => 'Szállítók',
- 'Accounting Menu' => 'Menü',
- 'Address' => 'Cím',
- 'Administrator' => 'Rendszergazda',
- 'All' => 'Összes',
- 'Amount' => 'Összeg',
- 'Amount missing!' => 'Összeg hiányzik!',
- 'Continue' => 'Folytatás',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'E-mail' => 'E-mail',
- 'Employee' => 'Alkalmazott',
- 'Expense' => 'Költség',
- 'ID' => 'Azonosító',
- 'Include in Report' => 'Oszlopok:',
- 'Login' => 'Belépés',
- 'Name' => 'Név',
- 'Name missing!' => 'Név hiányzik',
- 'Notes' => 'Megjegyzés',
- 'Number' => 'Szám',
- 'Orphaned' => 'Tranzakció nélküli',
- 'Rate' => 'Árfolyam',
- 'Sales' => 'Eladás',
- 'Save' => 'Mentés',
- 'Save as new' => 'Mentés újként',
- 'Update' => 'Frissítés',
- 'User' => 'Felhasználó',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'mentés' => 'save',
- 'mentés_újként' => 'save_as_new',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ic b/sql-ledger/locale/hu/ic
deleted file mode 100644
index 956dc96..0000000
--- a/sql-ledger/locale/hu/ic
+++ /dev/null
@@ -1,225 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menü',
- 'Active' => 'Aktív',
- 'Add' => 'Új',
- 'Add Assembly' => 'Új saját termék',
- 'Add Part' => 'Új cikk',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Add Service' => 'Új szolgáltatás',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Assemblies' => 'Saját termékek',
- 'Assemblies restocked!' => 'Saját termékek készletre véve',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'BOM' => 'Anyagjegyzék',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'COGS' => 'ELÁBÉ',
- 'Cannot delete item!' => 'A tételt nem lehet törölni!',
- 'Cannot stock assemblies!' => 'A saját terméket nem lehet készletre venni!',
- 'Cash' => 'Pénzmozgások',
- 'Cc' => 'Másolat',
- 'Closed' => 'Lezárt',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Customer' => 'Vevõ',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Drawing' => 'Rajz',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Edit Assembly' => 'Saját termék módosítása',
- 'Edit Part' => 'Cikk módosítása',
- 'Edit Service' => 'Szolgáltatás módosítása',
- 'Employee' => 'Alkalmazott',
- 'Expense' => 'Költség',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'Image' => 'Kép',
- 'In-line' => 'Beágyazva',
- 'Include in Report' => 'Oszlopok:',
- 'Income' => 'Árbevétel',
- 'Individual Items' => 'Összetevõk',
- 'Inventory' => 'Készlet',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Mielõtt ezt a saját terméket elévültnek nyilvánítja,a mennyiségnek nullának kell lennie!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Mielõtt ezt az anyagot/árut elévültnek nyilvánítja,a mennyiségnek nullának kell lennie!!',
- 'Invoice' => 'Számla',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Item deleted!' => 'Tétel törölve!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Line Total' => 'Sor összesen',
- 'Link Accounts' => 'Számlakapcsolatok',
- 'List Price' => 'Listaár',
- 'Make' => 'Gyártmány',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Modell',
- 'Name' => 'Név',
- 'No.' => 'Sz.',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'Obsolete' => 'Elévült',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'On Hand' => 'Készleten',
- 'Open' => 'Nyitott',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'Orphaned' => 'Tranzakció nélküli',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Part' => 'Cikk',
- 'Parts' => 'Cikkek',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Project' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Qty' => 'Menny.',
- 'ROP' => 'Rendelési pont',
- 'Recd' => 'Kapott',
- 'Required by' => 'Leszállítás',
- 'Sales Invoice' => 'Vevõszámla',
- 'Sales Order' => 'Vevõrendelés',
- 'Sales Orders' => 'Vevõrendelések',
- 'Save' => 'Mentés',
- 'Save as new' => 'Mentés újként',
- 'Screen' => 'Képernyõre',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Sell Price' => 'Eladási ár',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Services' => 'Szolgáltatások',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Short' => 'Hiányzó',
- 'Stock' => 'Készletre vesz',
- 'Stock Assembly' => 'Saját termék bevételezése',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'To' => 'Meddig:',
- 'Top Level' => 'Legfelsõ szint',
- 'Unit' => 'Egység',
- 'Unit of measure' => 'Mértékegység',
- 'Update' => 'Frissítés',
- 'Updated' => 'Frissítve',
- 'Vendor' => 'Szállító',
- 'Vendor Invoice' => 'Beszerzési számla',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'Weight' => 'Súly',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'days' => 'nap',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'Új_saját_termék' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'Új_cikk' => 'add_part',
- 'Új_szolgáltatás' => 'add_service',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'saját_termék_módosítása' => 'edit_assembly',
- 'cikk_módosítása' => 'edit_part',
- 'szolgáltatás_módosítása' => 'edit_service',
- 'mentés' => 'save',
- 'mentés_újként' => 'save_as_new',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/io b/sql-ledger/locale/hu/io
deleted file mode 100644
index 71f500a..0000000
--- a/sql-ledger/locale/hu/io
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Address' => 'Cím',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'Cc' => 'Másolat',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'In-line' => 'Beágyazva',
- 'Invoice' => 'Számla',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'No.' => 'Sz.',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Part' => 'Cikk',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Project' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Qty' => 'Menny.',
- 'Recd' => 'Kapott',
- 'Required by' => 'Leszállítás',
- 'Sales Order' => 'Vevõrendelés',
- 'Screen' => 'Képernyõre',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'To' => 'Meddig:',
- 'Unit' => 'Egység',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'folytatás' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ir b/sql-ledger/locale/hu/ir
deleted file mode 100644
index 33a84cf..0000000
--- a/sql-ledger/locale/hu/ir
+++ /dev/null
@@ -1,184 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Add Vendor Invoice' => 'Új beszerzési számla',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Invoice Number' => 'Biztos, hogy törölni akarja? Számlaszám:',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'Cannot delete invoice!' => 'A partnerszámlát nem lehet törölni!',
- 'Cannot post invoice for a closed period!' => 'A lezárt idõszakban nem lehet számlát kiállítani!',
- 'Cannot post invoice!' => 'A partnerszámlát nem lehet kiállítani',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cc' => 'Másolat',
- 'Confirm!' => 'Megerõsítés:',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Credit Limit' => 'Hitelkeret',
- 'Currency' => 'Deviza',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Edit Vendor Invoice' => 'Beszerzési számla módosítása',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'In-line' => 'Beágyazva',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Invoice deleted!' => 'Számla törölve!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Language' => 'Nyelv',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'No.' => 'Sz.',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Part' => 'Cikk',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payments' => 'Kifizetések',
- 'Phone' => 'Telefon',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Project' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Qty' => 'Menny.',
- 'Recd' => 'Kapott',
- 'Record in' => 'Feladás:',
- 'Remaining' => 'Maradék',
- 'Required by' => 'Leszállítás',
- 'Sales Order' => 'Vevõrendelés',
- 'Screen' => 'Képernyõre',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Source' => 'Bizonylatszám',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax Included' => 'Adót tartalmazza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
- 'Vendor' => 'Szállító',
- 'Vendor missing!' => 'Szállító hiányzik!',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'Yes' => 'Igen',
- 'ea' => 'db',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'beszerzési_rendelés' => 'purchase_order',
- 'frissítés' => 'update',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/is b/sql-ledger/locale/hu/is
deleted file mode 100644
index 7b2f8c7..0000000
--- a/sql-ledger/locale/hu/is
+++ /dev/null
@@ -1,194 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Invoice' => 'Új vevõszámla',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Invoice Number' => 'Biztos, hogy törölni akarja? Számlaszám:',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'Cannot delete invoice!' => 'A partnerszámlát nem lehet törölni!',
- 'Cannot post invoice for a closed period!' => 'A lezárt idõszakban nem lehet számlát kiállítani!',
- 'Cannot post invoice!' => 'A partnerszámlát nem lehet kiállítani',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cc' => 'Másolat',
- 'Confirm!' => 'Megerõsítés:',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Credit Limit' => 'Hitelkeret',
- 'Currency' => 'Deviza',
- 'Customer' => 'Vevõ',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Edit Sales Invoice' => 'Vevõszámla módosítása',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'In-line' => 'Beágyazva',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Invoice deleted!' => 'Számla törölve!',
- 'Invoice posted!' => 'Számla rögzítve!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'No.' => 'Sz.',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Part' => 'Cikk',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payments' => 'Kifizetések',
- 'Phone' => 'Telefon',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Print' => 'Nyomtatás',
- 'Project' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Qty' => 'Menny.',
- 'Recd' => 'Kapott',
- 'Record in' => 'Feladás:',
- 'Remaining' => 'Maradék',
- 'Required by' => 'Leszállítás',
- 'Sales Order' => 'Vevõrendelés',
- 'Salesperson' => 'Ügynök',
- 'Screen' => 'Képernyõre',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Ship via' => 'Fizetési mód',
- 'Source' => 'Bizonylatszám',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax Included' => 'Adót tartalmazza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'Yes' => 'Igen',
- 'ea' => 'db',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'e_mail' => 'e_mail',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'nyomtatás' => 'print',
- 'print_and_post' => 'print_and_post',
- 'vevõrendelés' => 'sales_order',
- 'szállítási_cím' => 'ship_to',
- 'frissítés' => 'update',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/login b/sql-ledger/locale/hu/login
deleted file mode 100644
index 541b63b..0000000
--- a/sql-ledger/locale/hu/login
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Company' => 'Társaság',
- 'Continue' => 'Folytatás',
- 'Dataset is newer than version!' => 'A Cégadatbázis verziója újabb, mint a programé!',
- 'Incorrect Dataset version!' => 'Érvénytelen adatbázisverzió!',
- 'Incorrect Password!' => 'Érvénytelen jelszó!',
- 'Login' => 'Belépés',
- 'Name' => 'Név',
- 'Password' => 'Jelszó',
- 'Version' => 'Verzió',
- 'You did not enter a name!' => 'Nem írt be nevet!',
- 'done' => 'elvégezve',
- 'is not a member!' => 'nem tag!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'belépés' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/menu b/sql-ledger/locale/hu/menu
deleted file mode 100644
index 1d88a7c..0000000
--- a/sql-ledger/locale/hu/menu
+++ /dev/null
@@ -1,85 +0,0 @@
-$self{texts} = {
- 'AP' => 'Szállítók',
- 'AP Aging' => 'Szállító lejárati lista',
- 'AP Transaction' => 'Szállító tranzakció',
- 'AR' => 'Vevõk',
- 'AR Aging' => 'Vevõ lejárati lista',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'Accounting Menu' => 'Menü',
- 'Add Account' => 'Új számla',
- 'Add Assembly' => 'Új saját termék',
- 'Add Customer' => 'Új vevõ',
- 'Add GIFI' => 'Új gyûjtõkód',
- 'Add Group' => 'Új csoport',
- 'Add Part' => 'Új cikk',
- 'Add Project' => 'Új munkaszám',
- 'Add Service' => 'Új szolgáltatás',
- 'Add Transaction' => 'Új tranzakció',
- 'Add Vendor' => 'Új szállító',
- 'Assemblies' => 'Saját termékek',
- 'Audit Control' => 'Audit Kontroll',
- 'Backup' => 'Biztonsági másolat',
- 'Balance Sheet' => 'Mérleg',
- 'Cash' => 'Pénzmozgások',
- 'Chart of Accounts' => 'Számlatükör',
- 'Check' => 'Csekk',
- 'Customers' => 'Vevõadatok',
- 'Description' => 'Szöveges leírás',
- 'General Ledger' => 'Fõkönyvi könyvelés',
- 'Goods & Services' => 'Áruk & Szolgáltatások',
- 'Groups' => 'Csoportok',
- 'HTML Templates' => 'HTML sablonok',
- 'Income Statement' => 'Eredménykimutatás',
- 'Invoice' => 'Számla',
- 'LaTeX Templates' => 'LaTeX sablonok',
- 'Language' => 'Nyelv',
- 'List Accounts' => 'Számlák listázása',
- 'List GIFI' => 'Gyûjtõkódok listázása',
- 'Logout' => 'Kilépés',
- 'Open' => 'Nyitott',
- 'Order Entry' => 'Rendelések',
- 'Outstanding' => 'Kifizetetlen',
- 'POS' => 'Nyugta',
- 'Packing List' => 'Szállítólevél',
- 'Parts' => 'Cikkek',
- 'Payment' => 'Kifizetés',
- 'Payments' => 'Kifizetések',
- 'Preferences' => 'Beállítások',
- 'Print' => 'Nyomtatás',
- 'Projects' => 'Munkaszámok',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Receipt' => 'Befizetés',
- 'Receipts' => 'Befizetések',
- 'Reconciliation' => 'Egyeztetés',
- 'Reports' => 'Jelentések',
- 'Sale' => 'Eladás',
- 'Sales Invoice' => 'Vevõszámla',
- 'Sales Order' => 'Vevõrendelés',
- 'Sales Orders' => 'Vevõrendelések',
- 'Save to File' => 'Másolat File-ba',
- 'Send by E-Mail' => 'Másolat E-mail-ben',
- 'Services' => 'Szolgáltatások',
- 'Ship' => 'Szállítás',
- 'Statement' => 'Kimutatás',
- 'Stock Assembly' => 'Saját termék bevételezése',
- 'Stylesheet' => 'Stíluslap',
- 'System' => 'Törzsadatok',
- 'Tax collected' => 'Fizetendõ ÁFA',
- 'Tax paid' => 'Levonható ÁFA',
- 'Transactions' => 'Tranzakciók',
- 'Transfer' => 'Számlák közötti',
- 'Trial Balance' => 'Fõkönyvi kivonat',
- 'Vendor Invoice' => 'Beszerzési számla',
- 'Vendors' => 'Szállítók',
- 'Version' => 'Verzió',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/oe b/sql-ledger/locale/hu/oe
deleted file mode 100644
index 009f20e..0000000
--- a/sql-ledger/locale/hu/oe
+++ /dev/null
@@ -1,234 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menü',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Invoice' => 'Új vevõszámla',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Add Vendor Invoice' => 'Új beszerzési számla',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Order Number' => 'Biztos, hogy törölni akarja? Megrendelésszám:',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'C' => 'C',
- 'Cannot delete order!' => 'A rendelést nem lehet törölni!',
- 'Cannot save order!' => 'A rendelést nem lehet elmenteni!',
- 'Cc' => 'Másolat',
- 'Closed' => 'Lezárt',
- 'Confirm!' => 'Megerõsítés:',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Done' => 'Elvégezve',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Edit Purchase Order' => 'Beszerzési rendelés módosítása',
- 'Edit Sales Order' => 'Vevõrendelés módosítása',
- 'Employee' => 'Alkalmazott',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'ID' => 'Azonosító',
- 'In-line' => 'Beágyazva',
- 'Include in Report' => 'Oszlopok:',
- 'Invoice' => 'Számla',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'No.' => 'Sz.',
- 'Notes' => 'Megjegyzés',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'O' => 'Ny.',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Open' => 'Nyitott',
- 'Order' => 'Rendelés',
- 'Order Date' => 'Rendelés dátuma',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'Order deleted!' => 'Rendelés törölve!',
- 'Order saved!' => 'Rendelés elmentve!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Part' => 'Cikk',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Print' => 'Nyomtatás',
- 'Project' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Purchase Orders' => 'Beszerzési rendelések',
- 'Qty' => 'Menny.',
- 'Recd' => 'Kapott',
- 'Remaining' => 'Maradék',
- 'Required by' => 'Leszállítás',
- 'Sales Invoice' => 'Vevõszámla',
- 'Sales Order' => 'Vevõrendelés',
- 'Sales Orders' => 'Vevõrendelések',
- 'Salesperson' => 'Ügynök',
- 'Save' => 'Mentés',
- 'Save as new' => 'Mentés újként',
- 'Screen' => 'Képernyõre',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Ship via' => 'Fizetési mód',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax Included' => 'Adót tartalmazza',
- 'Terms' => 'Határidõ',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Transfer' => 'Számlák közötti',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
- 'Vendor' => 'Szállító',
- 'Vendor Invoice' => 'Beszerzési számla',
- 'Vendor missing!' => 'Szállító hiányzik!',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'Yes' => 'Igen',
- 'days' => 'nap',
- 'ea' => 'db',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'elvégezve' => 'done',
- 'e_mail' => 'e_mail',
- 'nyomtatás' => 'print',
- 'print_and_save' => 'print_and_save',
- 'beszerzési_rendelés' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'vevõszámla' => 'sales_invoice',
- 'vevõrendelés' => 'sales_order',
- 'mentés' => 'save',
- 'mentés_újként' => 'save_as_new',
- 'szállítási_cím' => 'ship_to',
- 'számlák_közötti' => 'transfer',
- 'frissítés' => 'update',
- 'beszerzési_számla' => 'vendor_invoice',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/pe b/sql-ledger/locale/hu/pe
deleted file mode 100644
index 1524d56..0000000
--- a/sql-ledger/locale/hu/pe
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menü',
- 'Add Group' => 'Új csoport',
- 'Add Project' => 'Új munkaszám',
- 'All' => 'Összes',
- 'Continue' => 'Folytatás',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'Edit Group' => 'Csoport módosítása',
- 'Edit Project' => 'Projekt módosítása',
- 'Group' => 'Csoport',
- 'Group deleted!' => 'Csoport törölve!',
- 'Group missing!' => 'Csoport hiányzik!',
- 'Group saved!' => 'Csoport elmentve!',
- 'Groups' => 'Csoportok',
- 'Language' => 'Nyelv',
- 'Number' => 'Szám',
- 'Orphaned' => 'Tranzakció nélküli',
- 'Project' => 'Munkaszám',
- 'Project Number' => 'Munkaszám',
- 'Project Number missing!' => 'Munkaszám száma hiányzik!',
- 'Project deleted!' => 'Munkaszám törölve!',
- 'Project saved!' => 'Munkaszám elmentve!',
- 'Projects' => 'Munkaszámok',
- 'Save' => 'Mentés',
- 'Update' => 'Frissítés',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'Új_csoport' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'Új_munkaszám' => 'add_project',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'mentés' => 'save',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/pos b/sql-ledger/locale/hu/pos
deleted file mode 100644
index 407929f..0000000
--- a/sql-ledger/locale/hu/pos
+++ /dev/null
@@ -1,61 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Add POS Invoice' => 'Új Nyugta',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Change' => 'Visszajáró',
- 'Continue' => 'Folytatás',
- 'Credit Limit' => 'Hitelkeret',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Delete' => 'Törlés',
- 'Description' => 'Szöveges leírás',
- 'Edit POS Invoice' => 'Nyugta módosítása',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Extended' => 'Összeg',
- 'From' => 'Mikortól:',
- 'Language' => 'Nyelv',
- 'Number' => 'Szám',
- 'Open' => 'Nyitott',
- 'Paid' => 'Fizetve',
- 'Post' => 'Rögzítés',
- 'Posted!' => 'Rögzítve',
- 'Price' => 'Ár',
- 'Print' => 'Nyomtatás',
- 'Qty' => 'Menny.',
- 'Receipts' => 'Befizetések',
- 'Record in' => 'Feladás:',
- 'Remaining' => 'Maradék',
- 'Salesperson' => 'Ügynök',
- 'Screen' => 'Képernyõre',
- 'Source' => 'Bizonylatszám',
- 'Subtotal' => 'Részösszeg',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'rögzítés' => 'post',
- 'nyomtatás' => 'print',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/ps b/sql-ledger/locale/hu/ps
deleted file mode 100644
index 72b31b4..0000000
--- a/sql-ledger/locale/hu/ps
+++ /dev/null
@@ -1,286 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Szállító lejárati lista',
- 'AR Aging' => 'Vevõ lejárati lista',
- 'AR Outstanding' => 'Kifizetetlen vevõszámlák',
- 'AR Transaction' => 'Vevõ tranzakció',
- 'AR Transactions' => 'Vevõ tranzakciók',
- 'Account' => 'Számla',
- 'Account Number' => 'Számlaszám',
- 'Accounting Menu' => 'Menü',
- 'Accounts' => 'Számlák',
- 'Add POS Invoice' => 'Új Nyugta',
- 'Add Purchase Order' => 'Új beszerzési rendelés',
- 'Add Sales Invoice' => 'Új vevõszámla',
- 'Add Sales Order' => 'Új vevõrendelés',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Amount Due' => 'Esedékes összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Are you sure you want to delete Invoice Number' => 'Biztos, hogy törölni akarja? Számlaszám:',
- 'Are you sure you want to delete Transaction' => 'Biztos, hogy törölni akarja? Tranzakció:',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Balance' => 'Egyenleg',
- 'Balance Sheet' => 'Mérleg',
- 'Bcc' => 'Titkos másolat',
- 'Bin' => 'Raktárhely',
- 'Cannot delete invoice!' => 'A partnerszámlát nem lehet törölni!',
- 'Cannot delete transaction!' => 'A tranzakciót nem lehet törölni!',
- 'Cannot post invoice for a closed period!' => 'A lezárt idõszakban nem lehet számlát kiállítani!',
- 'Cannot post invoice!' => 'A partnerszámlát nem lehet kiállítani',
- 'Cannot post payment for a closed period!' => 'A lezárt idõszakban nem lehet fizetést rögzíteni!',
- 'Cannot post transaction for a closed period!' => 'A lezárt idõszakban nem lehet tranzakciót rögzíteni!!',
- 'Cannot post transaction!' => 'A tranzakciót nem lehet rögzíteni!',
- 'Cash' => 'Pénzmozgások',
- 'Cc' => 'Másolat',
- 'Change' => 'Visszajáró',
- 'Check' => 'Csekk',
- 'Closed' => 'Lezárt',
- 'Compare to' => 'Összehasonlítva:',
- 'Confirm!' => 'Megerõsítés:',
- 'Contact' => 'Kapcsolat',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Credit' => 'Követel',
- 'Credit Limit' => 'Hitelkeret',
- 'Curr' => 'Dev',
- 'Currency' => 'Deviza',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Customer missing!' => 'Vevõ hiányzik!',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Date Paid' => 'Fizetés napja',
- 'Debit' => 'Tartozik',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Decimalplaces' => 'Tizedeshelyek',
- 'Delete' => 'Törlés',
- 'Delivery Date' => 'Szállítás dátuma',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'Due Date missing!' => 'Esedékesség hiányzik!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Kimutatás küldése e-mail-ben:',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Edit POS Invoice' => 'Nyugta módosítása',
- 'Edit Sales Invoice' => 'Vevõszámla módosítása',
- 'Exch' => 'Árf',
- 'Exchange Rate' => 'Átváltási árfolyam',
- 'Exchange rate for payment missing!' => 'A fizetett összeg átváltási árfolyama hiányzik!',
- 'Exchange rate missing!' => 'Átváltási árfolyam hiányzik!',
- 'Extended' => 'Összeg',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'Group' => 'Csoport',
- 'Group Items' => 'Tételek rendezése csoport alapján',
- 'Heading' => 'Fejléc',
- 'ID' => 'Azonosító',
- 'In-line' => 'Beágyazva',
- 'Include Exchange Rate Difference' => 'Árfolyamkülönbséget tartalmazza',
- 'Include in Report' => 'Oszlopok:',
- 'Income Statement' => 'Eredménykimutatás',
- 'Invoice' => 'Számla',
- 'Invoice Date' => 'Teljesítés dátuma',
- 'Invoice Date missing!' => 'Teljesítés dátuma hiányzik!',
- 'Invoice Number' => 'Számlaszám',
- 'Invoice Number missing!' => 'Számlaszám hiányzik!',
- 'Invoice deleted!' => 'Számla törölve!',
- 'Invoice posted!' => 'Számla rögzítve!',
- 'Item not on file!' => 'A tétel nincs az adatbázisban!',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Language' => 'Nyelv',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'N/A' => 'N/A',
- 'No.' => 'Sz.',
- 'Notes' => 'Megjegyzés',
- 'Nothing selected!' => 'Nincs semmi kiválasztva!',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Number missing in Row' => 'Ebbõl a sorból hiányzik a szám:',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Open' => 'Nyitott',
- 'Order' => 'Rendelés',
- 'Order Date missing!' => 'Rendelés dátuma hiányzik!',
- 'Order Number' => 'Rendelés száma',
- 'Order Number missing!' => 'Rendelés száma hiányzik!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Szállítólevél',
- 'Packing List Date missing!' => 'Szállítólevél dátuma hiányzik!',
- 'Packing List Number missing!' => 'Szállítólevél száma hiányzik!',
- 'Paid' => 'Fizetve',
- 'Part' => 'Cikk',
- 'Payment date missing!' => 'Pénzmozgás dátuma hiányzik!',
- 'Payments' => 'Kifizetések',
- 'Phone' => 'Telefon',
- 'Post' => 'Rögzítés',
- 'Post as new' => 'Rögzítés új tranzakcióként',
- 'Posted!' => 'Rögzítve',
- 'Postscript' => 'Postscript',
- 'Price' => 'Ár',
- 'Print' => 'Nyomtatás',
- 'Project' => 'Munkaszám',
- 'Project Number' => 'Munkaszám',
- 'Purchase Order' => 'Beszerzési rendelés',
- 'Qty' => 'Menny.',
- 'Recd' => 'Kapott',
- 'Receipt' => 'Befizetés',
- 'Receipts' => 'Befizetések',
- 'Record in' => 'Feladás:',
- 'Remaining' => 'Maradék',
- 'Report for' => 'Jelentés:',
- 'Required by' => 'Leszállítás',
- 'Sales Order' => 'Vevõrendelés',
- 'Salesperson' => 'Ügynök',
- 'Screen' => 'Képernyõre',
- 'Select all' => 'Mindent kijelöl',
- 'Select from one of the items below' => 'Válasszon ki egyet az alábbi tételek közül',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Service' => 'Szolgáltatás',
- 'Ship' => 'Szállítás',
- 'Ship to' => 'Szállítási cím',
- 'Ship via' => 'Fizetési mód',
- 'Source' => 'Bizonylatszám',
- 'Standard' => 'Sztenderd',
- 'Statement' => 'Kimutatás',
- 'Statement sent to' => 'Kimutatás elküldve:',
- 'Statements sent to printer!' => 'Kimutatás kinyomtatva!',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax Included' => 'Adót tartalmazza',
- 'Tax collected' => 'Fizetendõ ÁFA',
- 'Tax paid' => 'Levonható ÁFA',
- 'Till' => 'Kassza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Transaction deleted!' => 'Tranzakció törölve!',
- 'Transaction posted!' => 'Tranzakció rögzítve!',
- 'Trial Balance' => 'Fõkönyvi kivonat',
- 'Unit' => 'Egység',
- 'Update' => 'Frissítés',
- 'Vendor' => 'Szállító',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'What type of item is this?' => 'Ez milyen típusú tétel?',
- 'Yes' => 'Igen',
- 'as at' => 'Fordulónap:',
- 'ea' => 'db',
- 'for Period' => 'Idõszak:',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'vevõ_tranzakció' => 'ar_transaction',
- 'folytatás' => 'continue',
- 'törlés' => 'delete',
- 'e_mail' => 'e_mail',
- 'rögzítés' => 'post',
- 'rögzítés_új_tranzakcióként' => 'post_as_new',
- 'nyomtatás' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'vevõrendelés' => 'sales_order',
- 'mindent_kijelöl' => 'select_all',
- 'szállítási_cím' => 'ship_to',
- 'frissítés' => 'update',
- 'igen' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/pw b/sql-ledger/locale/hu/pw
deleted file mode 100644
index b4f86fe..0000000
--- a/sql-ledger/locale/hu/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Folytatás',
- 'Password' => 'Jelszó',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'folytatás' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/rc b/sql-ledger/locale/hu/rc
deleted file mode 100644
index 5aee89f..0000000
--- a/sql-ledger/locale/hu/rc
+++ /dev/null
@@ -1,71 +0,0 @@
-$self{texts} = {
- 'Account' => 'Számla',
- 'Accounting Menu' => 'Menü',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Balance' => 'Egyenleg',
- 'Beginning Balance' => 'Nyitóegyenleg',
- 'Continue' => 'Folytatás',
- 'Current' => '0-30',
- 'Date' => 'Dátum',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Decrease' => 'Csökkenés',
- 'Deposit' => 'Jóváírás',
- 'Description' => 'Szöveges leírás',
- 'Difference' => 'Eltérés',
- 'Done' => 'Elvégezve',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'Include Exchange Rate Difference' => 'Árfolyamkülönbséget tartalmazza',
- 'Increase' => 'Növekedés',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Out of balance!' => 'Az egyenleg nem stimmel!',
- 'Outstanding' => 'Kifizetetlen',
- 'Payment' => 'Kifizetés',
- 'R' => 'E',
- 'Reconciliation' => 'Egyeztetés',
- 'Select all' => 'Mindent kijelöl',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Source' => 'Bizonylatszám',
- 'Statement Balance' => 'Kimutatás egyenlege',
- 'To' => 'Meddig:',
- 'Update' => 'Frissítés',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'folytatás' => 'continue',
- 'elvégezve' => 'done',
- 'mindent_kijelöl' => 'select_all',
- 'frissítés' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/hu/rp b/sql-ledger/locale/hu/rp
deleted file mode 100644
index 27e2ff5..0000000
--- a/sql-ledger/locale/hu/rp
+++ /dev/null
@@ -1,148 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Szállító lejárati lista',
- 'AR Aging' => 'Vevõ lejárati lista',
- 'Account' => 'Számla',
- 'Account Number' => 'Számlaszám',
- 'Accounting Menu' => 'Menü',
- 'Accounts' => 'Számlák',
- 'Address' => 'Cím',
- 'Amount' => 'Összeg',
- 'Apr' => 'Ápr.',
- 'April' => 'Április',
- 'Attachment' => 'Csatolás',
- 'Aug' => 'Aug.',
- 'August' => 'Augusztus',
- 'Balance' => 'Egyenleg',
- 'Balance Sheet' => 'Mérleg',
- 'Bcc' => 'Titkos másolat',
- 'Cash' => 'Pénzmozgások',
- 'Cc' => 'Másolat',
- 'Compare to' => 'Összehasonlítva:',
- 'Continue' => 'Folytatás',
- 'Copies' => 'Másolatok',
- 'Credit' => 'Követel',
- 'Curr' => 'Dev',
- 'Current' => '0-30',
- 'Customer' => 'Vevõ',
- 'Customer not on file!' => 'A vevõ hiányzik az adatbázisból!',
- 'Date' => 'Dátum',
- 'Debit' => 'Tartozik',
- 'Dec' => 'Dec.',
- 'December' => 'December',
- 'Decimalplaces' => 'Tizedeshelyek',
- 'Description' => 'Szöveges leírás',
- 'Due Date' => 'Esedékesség',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Kimutatás küldése e-mail-ben:',
- 'E-mail address missing!' => 'E-mail cím hiányzik!',
- 'Feb' => 'Feb.',
- 'February' => 'Február',
- 'From' => 'Mikortól:',
- 'GIFI' => 'Gyûjtõkód',
- 'Heading' => 'Fejléc',
- 'ID' => 'Azonosító',
- 'In-line' => 'Beágyazva',
- 'Include Exchange Rate Difference' => 'Árfolyamkülönbséget tartalmazza',
- 'Include in Report' => 'Oszlopok:',
- 'Income Statement' => 'Eredménykimutatás',
- 'Invoice' => 'Számla',
- 'Jan' => 'Jan.',
- 'January' => 'Január',
- 'Jul' => 'Júl.',
- 'July' => 'Július',
- 'Jun' => 'Jún.',
- 'June' => 'Június',
- 'Language' => 'Nyelv',
- 'Mar' => 'Márc.',
- 'March' => 'Március',
- 'May' => 'Máj.',
- 'May ' => 'Május',
- 'Message' => 'Üzenet',
- 'N/A' => 'N/A',
- 'Nothing selected!' => 'Nincs semmi kiválasztva!',
- 'Nov' => 'Nov.',
- 'November' => 'November',
- 'Number' => 'Szám',
- 'Oct' => 'Okt.',
- 'October' => 'Október',
- 'Order' => 'Rendelés',
- 'PDF' => 'PDF',
- 'Payments' => 'Kifizetések',
- 'Postscript' => 'Postscript',
- 'Print' => 'Nyomtatás',
- 'Project' => 'Munkaszám',
- 'Project Number' => 'Munkaszám',
- 'Receipts' => 'Befizetések',
- 'Report for' => 'Jelentés:',
- 'Salesperson' => 'Ügynök',
- 'Screen' => 'Képernyõre',
- 'Select all' => 'Mindent kijelöl',
- 'Select from one of the names below' => 'Válasszon ki egyet az alábbi nevek közül',
- 'Select postscript or PDF!' => 'Válassza ki a postscript vagy a PDF formátumot!',
- 'Sep' => 'Szept.',
- 'September' => 'Szeptember',
- 'Source' => 'Bizonylatszám',
- 'Standard' => 'Sztenderd',
- 'Statement' => 'Kimutatás',
- 'Statement sent to' => 'Kimutatás elküldve:',
- 'Statements sent to printer!' => 'Kimutatás kinyomtatva!',
- 'Subject' => 'Tárgy',
- 'Subtotal' => 'Részösszeg',
- 'Tax' => 'Adó',
- 'Tax collected' => 'Fizetendõ ÁFA',
- 'Tax paid' => 'Levonható ÁFA',
- 'Till' => 'Kassza',
- 'To' => 'Meddig:',
- 'Total' => 'Végösszeg',
- 'Trial Balance' => 'Fõkönyvi kivonat',
- 'Vendor' => 'Szállító',
- 'Vendor not on file!' => 'Szállító nincs az adatbázisban!',
- 'as at' => 'Fordulónap:',
- 'for Period' => 'Idõszak:',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'folytatás' => 'continue',
- 'e_mail' => 'e_mail',
- 'nyomtatás' => 'print',
- 'mindent_kijelöl' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/is/COPYING b/sql-ledger/locale/is/COPYING
deleted file mode 100644
index 1992b50..0000000
--- a/sql-ledger/locale/is/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Icelandic texts:
-#
-# Author: Margeir Reynisson <margeir@met.is>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/is/LANGUAGE b/sql-ledger/locale/is/LANGUAGE
deleted file mode 100644
index b91caef..0000000
--- a/sql-ledger/locale/is/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Icelandic
diff --git a/sql-ledger/locale/is/admin b/sql-ledger/locale/is/admin
deleted file mode 100644
index fd7d005..0000000
--- a/sql-ledger/locale/is/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Aðgangsheimildir',
- 'Accounting' => 'Bókhald',
- 'Add User' => 'Nýr notandi',
- 'Address' => 'Heimilisfang',
- 'Administration' => 'Kerfisstjórnun',
- 'Administrator' => 'Kerfisstjóri',
- 'All Datasets up to date!' => 'Öll gagnasöfn uppfærð',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Breyta kerfisstjóra lykilorði',
- 'Change Password' => 'Breyta lykilorði',
- 'Character Set' => 'Stafaset',
- 'Click on login name to edit!' => 'Smellið á notendanafn til þess að breyta',
- 'Company' => 'Fyritæki',
- 'Connect to' => 'Tengjast við',
- 'Continue' => 'Áfram',
- 'Create Chart of Accounts' => 'Búa til lykklasett',
- 'Create Dataset' => 'Búa til gagnasafn',
- 'DBI not installed!' => 'DBI ekki virkt',
- 'Database' => 'Gagnagrunnur',
- 'Database Administration' => 'Kerfisstjórn gagnagrunns',
- 'Database Driver not checked!' => 'Gagnagrunnstengi ekki athugað',
- 'Database User missing!' => 'Gagnagrunns notanda vantar!',
- 'Dataset' => 'Gagnasafn',
- 'Dataset missing!' => 'Gagnasafn vantar!',
- 'Dataset updated!' => 'gagnasafn uppfært!',
- 'Date Format' => 'Dagsetningarform',
- 'Delete' => 'Eyða',
- 'Delete Dataset' => 'Eyða gagnasafni',
- 'Directory' => 'Mapa',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Takmörk fyrir valmynd',
- 'E-mail' => 'R-póstur',
- 'Edit User' => 'Breyta notanda',
- 'Existing Datasets' => 'Hætta með gagnasafn',
- 'Fax' => 'Símbréf',
- 'Host' => 'Netþjónn',
- 'Hostname missing!' => 'Nafn netþjóns vantar',
- 'Language' => 'Túngumál',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Setjið engar upplýsingar í netþjónn og port nema um sé að ræða annan netþjón.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Tengjast',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Aftengjast',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nafn',
- 'New Templates' => 'Nýtt skabalón',
- 'No Database Drivers available!' => 'Engin gagnagrunnstengin til',
- 'No Dataset selected!' => 'Ekkert gagnasafn valið',
- 'Nothing to delete!' => 'Ekkert til þess að eyða!',
- 'Number Format' => 'Númera útlit',
- 'Oracle Database Administration' => 'Oracle kerfisstjórnun á gagnagrunni',
- 'Password' => 'Aðgangsorð',
- 'Password changed!' => 'Aðgangsorði breytt',
- 'Pg Database Administration' => 'Pg kerfisstjórnun gagnarunns',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Sími.',
- 'Port' => 'Port',
- 'Port missing!' => 'Port vantar',
- 'Printer' => 'Prentari',
- 'Save' => 'Geyma',
- 'Setup Templates' => 'Skabalón fyrir uppsetningu',
- 'Signature' => 'Undirskrift',
- 'Stylesheet' => 'Stílblað',
- 'Templates' => 'Skabalón',
- 'The following Datasets are not in use and can be deleted' => 'Eftirfarandi gagnasöfn eru ekki í notkunn og er því ekki hægt að eyða þeim',
- 'The following Datasets need to be updated' => 'Eftirfarandi gagnasafn þarfnast uppfærslu',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Engu verður eytt eða breytt með þessu ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Þú getur notað notanda sem til er til þess að útbúa nýjan notanda með þvi að breyta bara notendanafninu.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Uppfæra gagnasafn',
- 'Use Templates' => 'Nota skabalón',
- 'User' => 'Notandi',
- 'User deleted!' => 'Notanda eytt!',
- 'User saved!' => 'Notandi geymdur!',
- 'Version' => 'Útgáfa',
- 'You must enter a host and port for local and remote connections!' => 'Þú verður að gefa upp netþjón of port til þess að geta tengst!',
- 'does not exist' => 'er ekki til',
- 'is already a member!' => 'er þegar meðlimur',
- 'localhost' => 'lokal',
- 'successfully created!' => 'uppfært!',
- 'successfully deleted!' => 'eytt!',
- 'website' => 'á Internetinu',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'nýr_notandi' => 'add_user',
- 'breyta_kerfisstjóra_lykilorði' => 'change_admin_password',
- 'breyta_lykilorði' => 'change_password',
- 'Áfram' => 'continue',
- 'búa_til_gagnasafn' => 'create_dataset',
- 'eyða' => 'delete',
- 'eyða_gagnasafni' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'tengjast' => 'login',
- 'aftengjast' => 'logout',
- 'oracle_kerfisstjórnun_á_gagnagrunni' => 'oracle_database_administration',
- 'pg_kerfisstjórnun_gagnarunns' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'geyma' => 'save',
- 'unlock_system' => 'unlock_system',
- 'uppfæra_gagnasafn' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/is/all b/sql-ledger/locale/is/all
deleted file mode 100644
index 0b85767..0000000
--- a/sql-ledger/locale/is/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Innkaupakerfi',
- 'AP Aging' => 'Aldursgreining',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Innkaupafærsla',
- 'AP Transactions' => 'Innkaupafærslur',
- 'AR' => 'Sölukerfi',
- 'AR Aging' => 'Aldursgreining',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Sölufærsla',
- 'AR Transactions' => 'Sölufærslur',
- 'About' => 'Um',
- 'Above' => '',
- 'Access Control' => 'Aðgangsheimildir',
- 'Account' => 'Reikningur',
- 'Account Number' => 'Reikningsnúmer',
- 'Account Number missing!' => 'Reikningsnúmer vantar!',
- 'Account Type' => 'Reikningstegund',
- 'Account Type missing!' => 'Reikningstegund vantar!',
- 'Account deleted!' => 'Reikningi eytt!',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Reikningur geymdur!',
- 'Accounting' => 'Bókhald',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Accounts' => 'Reikningar',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Virkja',
- 'Add' => 'Nýr',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Nýr reikningur',
- 'Add Assembly' => 'Ný samsetning',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Nýr viðskiptavinur',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Ný GIFI',
- 'Add General Ledger Transaction' => 'Ný höfuðfærsla',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Ný vara',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Nýt verkefni',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Nýr sölureikningur',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Add Service' => 'Ný þjónusta',
- 'Add Transaction' => 'Ný bókhaldsfærsla',
- 'Add User' => 'Nýr notandi',
- 'Add Vendor' => 'Nýr byrgir',
- 'Add Vendor Invoice' => 'Nýr innkaupsreikningur',
- 'Add Warehouse' => '',
- 'Address' => 'Heimilisfang',
- 'Administration' => 'Kerfisstjórnun',
- 'Administrator' => 'Kerfisstjóri',
- 'After Deduction' => '',
- 'All' => 'Allt',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Öll gagnasöfn uppfærð',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Upphæð',
- 'Amount Due' => 'Eindagi',
- 'Amount missing!' => '',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Invoice Number' => 'Ert þú viss um að þú viljir eyða reikningi númer',
- 'Are you sure you want to delete Order Number' => 'Ert þú viss um að þú viljir eyða pöntun númer',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Ert þú viss um að þú viljir eyða færslunni',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Samsetningar',
- 'Assemblies restocked!' => 'Samsetningar endurunnar',
- 'Assembly' => '',
- 'Asset' => 'Eignir',
- 'Attachment' => 'Hjálagt',
- 'Audit Control' => 'Yfirlit stjórnun',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'Afrit',
- 'Backup sent to' => 'Afrit sendist til',
- 'Balance' => 'Afstemming',
- 'Balance Sheet' => 'Staða',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Blint afrit',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Vörulager',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Bókhald er opið fyrir leiðréttingar',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Viðskiptanúmer',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'Innkaup',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Get ekki eytt reikningi!',
- 'Cannot delete customer!' => 'Get ekki eytt viðskiptavini!',
- 'Cannot delete default account!' => 'Get ekki eytt grunnreikningi!',
- 'Cannot delete invoice!' => 'Get ekki eytt sölureikningi!',
- 'Cannot delete item!' => 'Get ekki eytt hlut!',
- 'Cannot delete order!' => 'Get ekki eytt pöntun!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Get ekki eytt færslu!',
- 'Cannot delete vendor!' => 'Get ekki eytt framleiðanda!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Get ekki bókað á lokað tímabil!',
- 'Cannot post invoice!' => 'Get ekki bókað sölureikning!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cannot post transaction for a closed period!' => 'Get ekki bókað færslu á lokað tímabil!',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Cannot process payment for a closed period!' => 'Get ekki meðhöndlað greiðslu fyrir lokað tímabil!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Get ekki geymt reikning!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Get ekki geymt pöntun!',
- 'Cannot save preferences!' => 'Get ekki geymt uppsetningu!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Get ekki fært samsetningar',
- 'Cash' => 'Reiðufé',
- 'Cc' => 'Afrit',
- 'Change' => '',
- 'Change Admin Password' => 'Breyta kerfisstjóra lykilorði',
- 'Change Password' => 'Breyta lykilorði',
- 'Character Set' => 'Stafaset',
- 'Chart of Accounts' => 'Listi yfir lykkla/reikninga',
- 'Check' => 'Ávísun',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Smellið á notendanafn til þess að breyta',
- 'Close Books up to' => 'Loka bókhaldi til dags',
- 'Closed' => 'Lokað',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Fyritæki',
- 'Company Name' => '',
- 'Compare to' => 'Bera saman við',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Staðfesta!',
- 'Connect to' => 'Tengjast við',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Contra' => '',
- 'Copies' => 'Afrit',
- 'Copy to COA' => 'Afrita í COA',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Búa til lykklasett',
- 'Create Dataset' => 'Búa til gagnasafn',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Current Earnings' => '',
- 'Customer' => 'Viðskiptavinur',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Viðskiptavini eytt!',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Customer saved!' => 'Viðskiptavinur geymdur!',
- 'Customers' => 'Viðskiptavinir',
- 'DBI not installed!' => 'DBI ekki virkt',
- 'DOB' => '',
- 'Database' => 'Gagnagrunnur',
- 'Database Administration' => 'Kerfisstjórn gagnagrunns',
- 'Database Driver not checked!' => 'Gagnagrunnstengi ekki athugað',
- 'Database Host' => 'Gagnagrunns-netþjónn',
- 'Database User missing!' => 'Gagnagrunns notanda vantar!',
- 'Dataset' => 'Gagnasafn',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Gagnasafn vantar!',
- 'Dataset updated!' => 'gagnasafn uppfært!',
- 'Date' => 'Dagsetning',
- 'Date Format' => 'Dagsetningarform',
- 'Date Paid' => 'Greiðsludagur',
- 'Date Received' => '',
- 'Date missing!' => 'Dagsetningu vantar!',
- 'Date received missing!' => '',
- 'Debit' => 'Debit',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Aukastafir',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Eyða',
- 'Delete Account' => 'Eyða reikningi',
- 'Delete Dataset' => 'Eyða gagnasafni',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Innlagt',
- 'Description' => 'Skýringar',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Mismunur',
- 'Directory' => 'Mapa',
- 'Discount' => 'Afsláttur',
- 'Done' => 'Búið',
- 'Drawing' => 'Dregið',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Takmörk fyrir valmynd',
- 'Due Date' => 'Dags. lokið',
- 'Due Date missing!' => 'Vantar dags. lokið!',
- 'E-mail' => 'R-póstur',
- 'E-mail Statement to' => 'Senda yfirlit til',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'E-mailed' => '',
- 'Edit' => 'Breyta',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Breyta reikningi',
- 'Edit Assembly' => 'Breyta samsetningu',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Breyta viðskiptavini',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Breyta GIFI',
- 'Edit General Ledger Transaction' => 'Breyta yfitbókunar færslum',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Breyta vöru',
- 'Edit Preferences for' => 'Breyta uppsetningu fyrir',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Breyta verkefni',
- 'Edit Purchase Order' => 'Breyta innkaupapöntun',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Breyta sölureikningi',
- 'Edit Sales Order' => 'Breyta sölupöntun',
- 'Edit Service' => 'Breyta þjónustu',
- 'Edit Template' => 'Breyta skabalóni',
- 'Edit User' => 'Breyta notanda',
- 'Edit Vendor' => 'Breyta byrgja',
- 'Edit Vendor Invoice' => 'Breyta innkaupareikningi',
- 'Edit Warehouse' => '',
- 'Employee' => 'Starfsmenn',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Gennemtving explicitte rettelser af posteringer for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vinsamlega sláið inn 3 stafa nafn á gjaldeyri sem á að nota setji tvípúnkt á milli.',
- 'Equity' => 'Eigiðfé',
- 'Excempt age <' => '',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Existing Datasets' => 'Hætta með gagnasafn',
- 'Expense' => 'Kostnaður',
- 'Expense Account' => 'Kostnaðarreikningur',
- 'Expense/Asset' => 'Kostnaður/Eignir',
- 'Extended' => 'Framlengt',
- 'FX' => '',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'Foreign Exchange Gain' => 'Gengishagnaður',
- 'Foreign Exchange Loss' => 'Gengistap',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI eytt!',
- 'GIFI missing!' => 'GIFI vantar!',
- 'GIFI saved!' => 'GIFI geymt!',
- 'GL Transaction' => 'Færslur í aðalbók',
- 'General Ledger' => 'Aðalbók',
- 'Goods & Services' => 'Vörur og þjónusta',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML-skabalón',
- 'Heading' => 'Yfirskriftir',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Netþjónn',
- 'Hostname missing!' => 'Nafn netþjóns vantar',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Mynd',
- 'In-line' => 'Inndregið',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Include in drop-down menus' => 'Innifela í fellivalmynd',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Innifela þennan lykil hjá viðskiptavinum til þess að geta gert hann vask skildan',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Inn yfirlýsing',
- 'Incorrect Dataset version!' => 'Röng útgáfa af gagnasfni!',
- 'Incorrect Password!' => 'Rangt lykilorð',
- 'Increase' => '',
- 'Individual Items' => 'Sjálfstæðir hlutir',
- 'Internal Notes' => '',
- 'Inventory' => 'Lager',
- 'Inventory Account' => 'Lagerlykill',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne sammensætning',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne enhed',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Invoice deleted!' => 'Sölureikningi eytt!',
- 'Invoice posted!' => 'Sölureikningur bókfærður!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Sölureikningar',
- 'Is this a summary account to record' => 'Söfnunarreikningur fyrir',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Hlut eytt!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Items' => '',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'LaTeX Templates' => 'LaTeX-skabalón',
- 'Labor/Overhead' => '',
- 'Language' => 'Túngumál',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Síðasta númer og sjálfgefin reikningur',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Setjið engar upplýsingar í netþjónn og port nema um sé að ræða annan netþjón.',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Skráð á',
- 'Line Total' => 'Samtals línur',
- 'Link' => 'Tenglar',
- 'Link Accounts' => 'Tengja lykla',
- 'List' => '',
- 'List Accounts' => 'Sýna lykla',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Sýna GIFI',
- 'List Languages' => '',
- 'List Price' => 'Sýna verð',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Sýna færslur',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Tengjast',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Aftengjast',
- 'Make' => 'Tegund',
- 'Manager' => '',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Skilaboð',
- 'Method' => '',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '',
- 'Name' => 'Nafn',
- 'Name missing!' => 'Nafn vantar!',
- 'New Templates' => 'Nýtt skabalón',
- 'No' => 'Nei',
- 'No Database Drivers available!' => 'Engin gagnagrunnstengin til',
- 'No Dataset selected!' => 'Ekkert gagnasafn valið',
- 'No email address for' => 'Ekkert netfang fyrir',
- 'No.' => 'Nr.',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Upplýsinar',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Ekkert valið!',
- 'Nothing to delete!' => 'Ekkert til þess að eyða!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number Format' => 'Númera útlit',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'O' => 'O',
- 'Obsolete' => 'Úrelt',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'On Hand' => 'Á lager',
- 'Open' => 'opna',
- 'Oracle Database Administration' => 'Oracle kerfisstjórnun á gagnagrunni',
- 'Order' => 'Pöntun',
- 'Order Date' => 'Pöntunar dags.',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Entry' => 'Pöntunarblað',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'Order deleted!' => 'Pöntun eytt',
- 'Order processed!' => '',
- 'Order saved!' => 'Pöntun geymd',
- 'Orphaned' => 'Sjáfstætt',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Ekki jafnvægi!',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Packing Lists' => '',
- 'Paid' => 'Greitt',
- 'Part' => 'Vara',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Vörur',
- 'Parts Inventory' => 'Vörulisti',
- 'Password' => 'Aðgangsorð',
- 'Password changed!' => 'Aðgangsorði breytt',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Útistandandi',
- 'Payment' => 'Greislur',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payment posted!' => 'Greiðsla bókuð',
- 'Payments' => 'Greiðslur',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg kerfisstjórnun gagnarunns',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Sími.',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port vantar',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Posted!' => '',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Uppsetningar',
- 'Preferences saved!' => 'Uppsetningar geymdar!',
- 'Prepayment' => '',
- 'Price' => 'Verð',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Prenta',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Prentari',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Verkefni',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'Verkefnisnúmer vantar!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Verkefni eytt!',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Project saved!' => 'verkefni geymt!',
- 'Projects' => 'Verkefni',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Qty' => 'Magn',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => '',
- 'Rate' => 'Taxti',
- 'Rate missing!' => '',
- 'Recd' => 'Mótt:',
- 'Receipt' => 'Kvittun',
- 'Receipt posted!' => '',
- 'Receipts' => 'Kvittanir',
- 'Receivables' => 'Innborganir',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Afstemingar',
- 'Reconciliation Report' => '',
- 'Record in' => 'Bóka á',
- 'Reference' => 'Fylgiskjal',
- 'Reference missing!' => 'Fylgiskjal vantar',
- 'Remaining' => 'Eftir',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Skýrsla fyrir',
- 'Reports' => 'Skýrslur',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Pantað af',
- 'Retained Earnings' => 'Realiseret overskud',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Sala',
- 'Sales Invoice' => 'Sölureikningur',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Sölupöntun',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Sölupantanir',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Geyma',
- 'Save Pricelist' => '',
- 'Save as new' => 'Geyma sem nýtt',
- 'Save to File' => 'Geyma í skrá',
- 'Screen' => 'Skjá',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Velja allt',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Söluverð',
- 'Send by E-Mail' => 'Senda með rafpósti',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Þjónusta',
- 'Service Items' => 'Þjónustu hlutur',
- 'Services' => 'Þjónustur',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Skabalón fyrir uppsetningu',
- 'Ship' => 'Senda',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Senda til',
- 'Ship via' => 'Senda með',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Stutt',
- 'Signature' => 'Undirskrift',
- 'Source' => 'Frálag',
- 'Spoolfile' => '',
- 'Standard' => 'Standart',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Uppgjör',
- 'Statement Balance' => 'jöfnunaruppgjör',
- 'Statement sent to' => 'Uppgjör sendist til',
- 'Statements sent to printer!' => 'Uppgjör sendist á prentara',
- 'Stock' => '',
- 'Stock Assembly' => 'Lager samsetning',
- 'Stylesheet' => 'Stílblað',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Kerfi',
- 'System Defaults' => '',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Accounts' => 'VSK lykill',
- 'Tax Included' => 'Taka með VSK',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'VSK samtals',
- 'Tax paid' => 'VSK greitt',
- 'Taxable' => 'Skatskildur',
- 'Template saved!' => 'Skabalón geymt!',
- 'Templates' => 'Skabalón',
- 'Terms' => 'Nettó',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Eftirfarandi gagnasöfn eru ekki í notkunn og er því ekki hægt að eyða þeim',
- 'The following Datasets need to be updated' => 'Eftirfarandi gagnasafn þarfnast uppfærslu',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Engu verður eytt eða breytt með þessu ',
- 'Till' => '',
- 'To' => 'til',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Þú getur notað notanda sem til er til þess að útbúa nýjan notanda með þvi að breyta bara notendanafninu.',
- 'Top Level' => 'Efsta þrep',
- 'Total' => 'Samtals',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Dags. vantar!',
- 'Transaction deleted!' => 'Færslu eytt!',
- 'Transaction posted!' => 'Færsla bókfærð!',
- 'Transaction reversal enforced for all dates' => 'Rettelser af posteringer skal altid bogføres explicit',
- 'Transaction reversal enforced up to' => 'Rettelser af posteringer skal bogføres explicit indtil',
- 'Transactions' => 'Færslur',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Prufu staða',
- 'Type of Business' => '',
- 'Unit' => 'Einingar',
- 'Unit of measure' => 'Mælieining',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Uppfærsla',
- 'Update Dataset' => 'Uppfæra gagnasafn',
- 'Updated' => 'Uppfæra',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Nota skabalón',
- 'User' => 'Notandi',
- 'User deleted!' => 'Notanda eytt!',
- 'User saved!' => 'Notandi geymdur!',
- 'Valid until' => '',
- 'Vendor' => 'Byrgir',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Innkaupsreikningur',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Byrgja eytt!',
- 'Vendor missing!' => 'Byrgja vantar!',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'Vendor saved!' => 'Byrgir geymdur!',
- 'Vendors' => 'Byrgjar',
- 'Version' => 'Útgáfa',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Vigt',
- 'Weight Unit' => 'Vigtareining',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Já',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Þú gafst ekki upp nafn',
- 'You must enter a host and port for local and remote connections!' => 'Þú verður að gefa upp netþjón of port til þess að geta tengst!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'líkt og með',
- 'days' => 'dagar',
- 'does not exist' => 'er ekki til',
- 'done' => '',
- 'ea' => 'stk',
- 'for Period' => 'fyrir tímabilið',
- 'is already a member!' => 'er þegar meðlimur',
- 'is not a member!' => 'er ekki meðlimur!',
- 'localhost' => 'lokal',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'uppfært!',
- 'successfully deleted!' => 'eytt!',
- 'website' => 'á Internetinu',
-};
-
-1;
diff --git a/sql-ledger/locale/is/am b/sql-ledger/locale/is/am
deleted file mode 100644
index b3d7ce7..0000000
--- a/sql-ledger/locale/is/am
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'AP' => 'Innkaupakerfi',
- 'AR' => 'Sölukerfi',
- 'About' => 'Um',
- 'Account' => 'Reikningur',
- 'Account Number' => 'Reikningsnúmer',
- 'Account Number missing!' => 'Reikningsnúmer vantar!',
- 'Account Type' => 'Reikningstegund',
- 'Account Type missing!' => 'Reikningstegund vantar!',
- 'Account deleted!' => 'Reikningi eytt!',
- 'Account saved!' => 'Reikningur geymdur!',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Account' => 'Nýr reikningur',
- 'Add GIFI' => 'Ný GIFI',
- 'Address' => 'Heimilisfang',
- 'Asset' => 'Eignir',
- 'Audit Control' => 'Yfirlit stjórnun',
- 'Backup sent to' => 'Afrit sendist til',
- 'Books are open' => 'Bókhald er opið fyrir leiðréttingar',
- 'Business Number' => 'Viðskiptanúmer',
- 'COGS' => 'Innkaup',
- 'Cannot delete account!' => 'Get ekki eytt reikningi!',
- 'Cannot delete default account!' => 'Get ekki eytt grunnreikningi!',
- 'Cannot save account!' => 'Get ekki geymt reikning!',
- 'Cannot save preferences!' => 'Get ekki geymt uppsetningu!',
- 'Cash' => 'Reiðufé',
- 'Character Set' => 'Stafaset',
- 'Chart of Accounts' => 'Listi yfir lykkla/reikninga',
- 'Close Books up to' => 'Loka bókhaldi til dags',
- 'Company' => 'Fyritæki',
- 'Continue' => 'Áfram',
- 'Copy to COA' => 'Afrita í COA',
- 'Credit' => 'Kredit',
- 'Database Host' => 'Gagnagrunns-netþjónn',
- 'Dataset' => 'Gagnasafn',
- 'Date Format' => 'Dagsetningarform',
- 'Debit' => 'Debit',
- 'Delete' => 'Eyða',
- 'Delete Account' => 'Eyða reikningi',
- 'Description' => 'Skýringar',
- 'Discount' => 'Afsláttur',
- 'Dropdown Limit' => 'Takmörk fyrir valmynd',
- 'E-mail' => 'R-póstur',
- 'Edit' => 'Breyta',
- 'Edit Account' => 'Breyta reikningi',
- 'Edit GIFI' => 'Breyta GIFI',
- 'Edit Preferences for' => 'Breyta uppsetningu fyrir',
- 'Edit Template' => 'Breyta skabalóni',
- 'Enforce transaction reversal for all dates' => 'Gennemtving explicitte rettelser af posteringer for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vinsamlega sláið inn 3 stafa nafn á gjaldeyri sem á að nota setji tvípúnkt á milli.',
- 'Equity' => 'Eigiðfé',
- 'Expense' => 'Kostnaður',
- 'Expense Account' => 'Kostnaðarreikningur',
- 'Expense/Asset' => 'Kostnaður/Eignir',
- 'Fax' => 'Símbréf',
- 'Foreign Exchange Gain' => 'Gengishagnaður',
- 'Foreign Exchange Loss' => 'Gengistap',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI eytt!',
- 'GIFI missing!' => 'GIFI vantar!',
- 'GIFI saved!' => 'GIFI geymt!',
- 'Heading' => 'Yfirskriftir',
- 'Include in drop-down menus' => 'Innifela í fellivalmynd',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Innifela þennan lykil hjá viðskiptavinum til þess að geta gert hann vask skildan',
- 'Inventory' => 'Lager',
- 'Inventory Account' => 'Lagerlykill',
- 'Is this a summary account to record' => 'Söfnunarreikningur fyrir',
- 'Language' => 'Túngumál',
- 'Last Numbers & Default Accounts' => 'Síðasta númer og sjálfgefin reikningur',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Skráð á',
- 'Link' => 'Tenglar',
- 'Name' => 'Nafn',
- 'No' => 'Nei',
- 'No email address for' => 'Ekkert netfang fyrir',
- 'Number' => 'Númer',
- 'Number Format' => 'Númera útlit',
- 'Parts Inventory' => 'Vörulisti',
- 'Password' => 'Aðgangsorð',
- 'Payables' => 'Útistandandi',
- 'Payment' => 'Greislur',
- 'Phone' => 'Sími.',
- 'Preferences saved!' => 'Uppsetningar geymdar!',
- 'Printer' => 'Prentari',
- 'Rate' => 'Taxti',
- 'Receivables' => 'Innborganir',
- 'Reference' => 'Fylgiskjal',
- 'Retained Earnings' => 'Realiseret overskud',
- 'Save' => 'Geyma',
- 'Save as new' => 'Geyma sem nýtt',
- 'Service Items' => 'Þjónustu hlutur',
- 'Signature' => 'Undirskrift',
- 'Stylesheet' => 'Stílblað',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Accounts' => 'VSK lykill',
- 'Template saved!' => 'Skabalón geymt!',
- 'Transaction reversal enforced for all dates' => 'Rettelser af posteringer skal altid bogføres explicit',
- 'Transaction reversal enforced up to' => 'Rettelser af posteringer skal bogføres explicit indtil',
- 'User' => 'Notandi',
- 'Version' => 'Útgáfa',
- 'Weight Unit' => 'Vigtareining',
- 'Yes' => 'Já',
- 'localhost' => 'lokal',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'nýr_reikningur' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'Áfram' => 'continue',
- 'afrita_í_coa' => 'copy_to_coa',
- 'eyða' => 'delete',
- 'breyta' => 'edit',
- 'breyta_reikningi' => 'edit_account',
- 'geyma' => 'save',
- 'geyma_sem_nýtt' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ap b/sql-ledger/locale/is/ap
deleted file mode 100644
index bc1e49b..0000000
--- a/sql-ledger/locale/is/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Innkaupafærsla',
- 'AP Transactions' => 'Innkaupafærslur',
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Amount Due' => 'Eindagi',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Transaction' => 'Ert þú viss um að þú viljir eyða færslunni',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Cannot delete transaction!' => 'Get ekki eytt færslu!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cannot post transaction for a closed period!' => 'Get ekki bókað færslu á lokað tímabil!',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Check' => 'Ávísun',
- 'Closed' => 'Lokað',
- 'Confirm!' => 'Staðfesta!',
- 'Continue' => 'Áfram',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Date Paid' => 'Greiðsludagur',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'Due Date missing!' => 'Vantar dags. lokið!',
- 'Employee' => 'Starfsmenn',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'ID' => 'ID',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Open' => 'opna',
- 'Order' => 'Pöntun',
- 'Order Number' => 'Pöntun númer',
- 'PDF' => 'PDF',
- 'Paid' => 'Greitt',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payments' => 'Greiðslur',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Postscript' => 'Postscript',
- 'Print' => 'Prenta',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Receipt' => 'Kvittun',
- 'Remaining' => 'Eftir',
- 'Screen' => 'Skjá',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Frálag',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Included' => 'Taka með VSK',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Transaction deleted!' => 'Færslu eytt!',
- 'Transaction posted!' => 'Færsla bókfærð!',
- 'Update' => 'Uppfærsla',
- 'Vendor' => 'Byrgir',
- 'Vendor missing!' => 'Byrgja vantar!',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'Yes' => 'Já',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'innkaupafærsla' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'prenta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'uppfærsla' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ar b/sql-ledger/locale/is/ar
deleted file mode 100644
index c7d8870..0000000
--- a/sql-ledger/locale/is/ar
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Sölufærsla',
- 'AR Transactions' => 'Sölufærslur',
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Amount Due' => 'Eindagi',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Transaction' => 'Ert þú viss um að þú viljir eyða færslunni',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Cannot delete transaction!' => 'Get ekki eytt færslu!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cannot post transaction for a closed period!' => 'Get ekki bókað færslu á lokað tímabil!',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Check' => 'Ávísun',
- 'Closed' => 'Lokað',
- 'Confirm!' => 'Staðfesta!',
- 'Continue' => 'Áfram',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Date Paid' => 'Greiðsludagur',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'Due Date missing!' => 'Vantar dags. lokið!',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'ID' => 'ID',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Open' => 'opna',
- 'Order' => 'Pöntun',
- 'Order Number' => 'Pöntun númer',
- 'PDF' => 'PDF',
- 'Paid' => 'Greitt',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payments' => 'Greiðslur',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Postscript' => 'Postscript',
- 'Print' => 'Prenta',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Receipt' => 'Kvittun',
- 'Remaining' => 'Eftir',
- 'Screen' => 'Skjá',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Ship via' => 'Senda með',
- 'Source' => 'Frálag',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Included' => 'Taka með VSK',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Transaction deleted!' => 'Færslu eytt!',
- 'Transaction posted!' => 'Færsla bókfærð!',
- 'Update' => 'Uppfærsla',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'Yes' => 'Já',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'sölufærsla' => 'ar_transaction',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'prenta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'uppfærsla' => 'update',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/arap b/sql-ledger/locale/is/arap
deleted file mode 100644
index 8f09b2d..0000000
--- a/sql-ledger/locale/is/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Heimilisfang',
- 'Continue' => 'Áfram',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Description' => 'Skýringar',
- 'Number' => 'Númer',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Áfram' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/is/arapprn b/sql-ledger/locale/is/arapprn
deleted file mode 100644
index 2334ff7..0000000
--- a/sql-ledger/locale/is/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Amount' => 'Upphæð',
- 'Check' => 'Ávísun',
- 'Continue' => 'Áfram',
- 'Date' => 'Dagsetning',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'Kvittun',
- 'Screen' => 'Skjá',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Source' => 'Frálag',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'Áfram' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/is/bp b/sql-ledger/locale/is/bp
deleted file mode 100644
index 0ace789..0000000
--- a/sql-ledger/locale/is/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Confirm!' => 'Staðfesta!',
- 'Continue' => 'Áfram',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Date' => 'Dagsetning',
- 'From' => 'Frá',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Order' => 'Pöntun',
- 'Order Number' => 'Pöntun númer',
- 'Print' => 'Prenta',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Receipts' => 'Kvittanir',
- 'Reference' => 'Fylgiskjal',
- 'Sales Orders' => 'Sölupantanir',
- 'Select all' => 'Velja allt',
- 'To' => 'til',
- 'Vendor' => 'Byrgir',
- 'Yes' => 'Já',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'Áfram' => 'continue',
- 'prenta' => 'print',
- 'remove' => 'remove',
- 'velja_allt' => 'select_all',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ca b/sql-ledger/locale/is/ca
deleted file mode 100644
index 78be854..0000000
--- a/sql-ledger/locale/is/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Balance' => 'Afstemming',
- 'Chart of Accounts' => 'Listi yfir lykkla/reikninga',
- 'Credit' => 'Kredit',
- 'Current' => 'Núvirði',
- 'Date' => 'Dagsetning',
- 'Debit' => 'Debit',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Description' => 'Skýringar',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'List Transactions' => 'Sýna færslur',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Reference' => 'Fylgiskjal',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Subtotal' => 'Samtala',
- 'To' => 'til',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'sýna_færslur' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/is/cp b/sql-ledger/locale/is/cp
deleted file mode 100644
index a3eea63..0000000
--- a/sql-ledger/locale/is/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Innkaupakerfi',
- 'AR' => 'Sölukerfi',
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Address' => 'Heimilisfang',
- 'All' => 'Allt',
- 'Amount' => 'Upphæð',
- 'Amount Due' => 'Eindagi',
- 'Cannot process payment for a closed period!' => 'Get ekki meðhöndlað greiðslu fyrir lokað tímabil!',
- 'Continue' => 'Áfram',
- 'Currency' => 'Gjaldmiðill',
- 'Customer' => 'Viðskiptavinur',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Date missing!' => 'Dagsetningu vantar!',
- 'Deposit' => 'Innlagt',
- 'Description' => 'Skýringar',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Invoice' => 'Sölureikningur',
- 'Invoices' => 'Sölureikningar',
- 'Number' => 'Númer',
- 'PDF' => 'PDF',
- 'Payment' => 'Greislur',
- 'Payment posted!' => 'Greiðsla bókuð',
- 'Post' => 'Bókfæra',
- 'Postscript' => 'Postscript',
- 'Print' => 'Prenta',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Receipt' => 'Kvittun',
- 'Screen' => 'Skjá',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Source' => 'Frálag',
- 'Update' => 'Uppfærsla',
- 'Vendor' => 'Byrgir',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Áfram' => 'continue',
- 'bókfæra' => 'post',
- 'prenta' => 'print',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ct b/sql-ledger/locale/is/ct
deleted file mode 100644
index 5e12c89..0000000
--- a/sql-ledger/locale/is/ct
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Innkaupafærsla',
- 'AP Transactions' => 'Innkaupafærslur',
- 'AR Transaction' => 'Sölufærsla',
- 'AR Transactions' => 'Sölufærslur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Customer' => 'Nýr viðskiptavinur',
- 'Add Vendor' => 'Nýr byrgir',
- 'Address' => 'Heimilisfang',
- 'All' => 'Allt',
- 'Amount' => 'Upphæð',
- 'Bcc' => 'Blint afrit',
- 'Cannot delete customer!' => 'Get ekki eytt viðskiptavini!',
- 'Cannot delete vendor!' => 'Get ekki eytt framleiðanda!',
- 'Cc' => 'Afrit',
- 'Closed' => 'Lokað',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Customer deleted!' => 'Viðskiptavini eytt!',
- 'Customer saved!' => 'Viðskiptavinur geymdur!',
- 'Customers' => 'Viðskiptavinir',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Discount' => 'Afsláttur',
- 'E-mail' => 'R-póstur',
- 'Edit Customer' => 'Breyta viðskiptavini',
- 'Edit Vendor' => 'Breyta byrgja',
- 'Employee' => 'Starfsmenn',
- 'Fax' => 'Símbréf',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Invoice' => 'Sölureikningur',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Language' => 'Túngumál',
- 'Name' => 'Nafn',
- 'Name missing!' => 'Nafn vantar!',
- 'Notes' => 'Upplýsinar',
- 'Number' => 'Númer',
- 'Open' => 'opna',
- 'Order' => 'Pöntun',
- 'Orphaned' => 'Sjáfstætt',
- 'Phone' => 'Sími.',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Qty' => 'Magn',
- 'Sales Invoice' => 'Sölureikningur',
- 'Sales Order' => 'Sölupöntun',
- 'Sales Orders' => 'Sölupantanir',
- 'Save' => 'Geyma',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Sell Price' => 'Söluverð',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Included' => 'Taka með VSK',
- 'Taxable' => 'Skatskildur',
- 'Terms' => 'Nettó',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
- 'Vendor Invoice' => 'Innkaupsreikningur',
- 'Vendor deleted!' => 'Byrgja eytt!',
- 'Vendor saved!' => 'Byrgir geymdur!',
- 'Vendors' => 'Byrgjar',
- 'days' => 'dagar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'innkaupafærsla' => 'ap_transaction',
- 'sölufærsla' => 'ar_transaction',
- 'nýr_viðskiptavinur' => 'add_customer',
- 'nýr_byrgir' => 'add_vendor',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'pricelist' => 'pricelist',
- 'innkaupspöntun' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sölureikningur' => 'sales_invoice',
- 'sölupöntun' => 'sales_order',
- 'geyma' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'uppfærsla' => 'update',
- 'innkaupsreikningur' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/is/gl b/sql-ledger/locale/is/gl
deleted file mode 100644
index add34ed..0000000
--- a/sql-ledger/locale/is/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Innkaupafærsla',
- 'AR Transaction' => 'Sölufærsla',
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add General Ledger Transaction' => 'Ný höfuðfærsla',
- 'Address' => 'Heimilisfang',
- 'All' => 'Allt',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Transaction' => 'Ert þú viss um að þú viljir eyða færslunni',
- 'Asset' => 'Eignir',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Balance' => 'Afstemming',
- 'Cannot delete transaction!' => 'Get ekki eytt færslu!',
- 'Cannot post transaction for a closed period!' => 'Get ekki bókað færslu á lokað tímabil!',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Confirm!' => 'Staðfesta!',
- 'Continue' => 'Áfram',
- 'Credit' => 'Kredit',
- 'Current' => 'Núvirði',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Debit' => 'Debit',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'Edit General Ledger Transaction' => 'Breyta yfitbókunar færslum',
- 'Equity' => 'Eigiðfé',
- 'Expense' => 'Kostnaður',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Færslur í aðalbók',
- 'General Ledger' => 'Aðalbók',
- 'ID' => 'ID',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Liability' => 'Passiv',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Reference' => 'Fylgiskjal',
- 'Reference missing!' => 'Fylgiskjal vantar',
- 'Reports' => 'Skýrslur',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Frálag',
- 'Subtotal' => 'Samtala',
- 'To' => 'til',
- 'Transaction Date missing!' => 'Dags. vantar!',
- 'Transaction deleted!' => 'Færslu eytt!',
- 'Transaction posted!' => 'Færsla bókfærð!',
- 'Update' => 'Uppfærsla',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'Yes' => 'Já',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'innkaupafærsla' => 'ap_transaction',
- 'sölufærsla' => 'ar_transaction',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'færslur_í_aðalbók' => 'gl_transaction',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'uppfærsla' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/hr b/sql-ledger/locale/is/hr
deleted file mode 100644
index 0554a77..0000000
--- a/sql-ledger/locale/is/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Innkaupakerfi',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Address' => 'Heimilisfang',
- 'Administrator' => 'Kerfisstjóri',
- 'All' => 'Allt',
- 'Amount' => 'Upphæð',
- 'Continue' => 'Áfram',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'E-mail' => 'R-póstur',
- 'Employee' => 'Starfsmenn',
- 'Expense' => 'Kostnaður',
- 'ID' => 'ID',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Login' => 'Tengjast',
- 'Name' => 'Nafn',
- 'Name missing!' => 'Nafn vantar!',
- 'Notes' => 'Upplýsinar',
- 'Number' => 'Númer',
- 'Orphaned' => 'Sjáfstætt',
- 'Rate' => 'Taxti',
- 'Sales' => 'Sala',
- 'Save' => 'Geyma',
- 'Save as new' => 'Geyma sem nýtt',
- 'Update' => 'Uppfærsla',
- 'User' => 'Notandi',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'geyma' => 'save',
- 'geyma_sem_nýtt' => 'save_as_new',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ic b/sql-ledger/locale/is/ic
deleted file mode 100644
index 8b5f205..0000000
--- a/sql-ledger/locale/is/ic
+++ /dev/null
@@ -1,220 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Active' => 'Virkja',
- 'Add' => 'Nýr',
- 'Add Assembly' => 'Ný samsetning',
- 'Add Part' => 'Ný vara',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Add Service' => 'Ný þjónusta',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Assemblies' => 'Samsetningar',
- 'Assemblies restocked!' => 'Samsetningar endurunnar',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'BOM' => 'BOM',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'COGS' => 'Innkaup',
- 'Cannot delete item!' => 'Get ekki eytt hlut!',
- 'Cannot stock assemblies!' => 'Get ekki fært samsetningar',
- 'Cash' => 'Reiðufé',
- 'Cc' => 'Afrit',
- 'Closed' => 'Lokað',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Customer' => 'Viðskiptavinur',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Drawing' => 'Dregið',
- 'E-mail' => 'R-póstur',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Edit Assembly' => 'Breyta samsetningu',
- 'Edit Part' => 'Breyta vöru',
- 'Edit Service' => 'Breyta þjónustu',
- 'Employee' => 'Starfsmenn',
- 'Expense' => 'Kostnaður',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'Image' => 'Mynd',
- 'In-line' => 'Inndregið',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Individual Items' => 'Sjálfstæðir hlutir',
- 'Inventory' => 'Lager',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne sammensætning',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerbeholdning skal være nul for at du kan forælde denne enhed',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Item deleted!' => 'Hlut eytt!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Line Total' => 'Samtals línur',
- 'Link Accounts' => 'Tengja lykla',
- 'List Price' => 'Sýna verð',
- 'Make' => 'Tegund',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Name' => 'Nafn',
- 'No.' => 'Nr.',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'Obsolete' => 'Úrelt',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'On Hand' => 'Á lager',
- 'Open' => 'opna',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'Orphaned' => 'Sjáfstætt',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Part' => 'Vara',
- 'Parts' => 'Vörur',
- 'Phone' => 'Sími.',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Project' => 'Verkefni',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Required by' => 'Pantað af',
- 'Sales Invoice' => 'Sölureikningur',
- 'Sales Order' => 'Sölupöntun',
- 'Sales Orders' => 'Sölupantanir',
- 'Save' => 'Geyma',
- 'Save as new' => 'Geyma sem nýtt',
- 'Screen' => 'Skjá',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Sell Price' => 'Söluverð',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Services' => 'Þjónustur',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Short' => 'Stutt',
- 'Stock Assembly' => 'Lager samsetning',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'To' => 'til',
- 'Top Level' => 'Efsta þrep',
- 'Unit' => 'Einingar',
- 'Unit of measure' => 'Mælieining',
- 'Update' => 'Uppfærsla',
- 'Updated' => 'Uppfæra',
- 'Vendor' => 'Byrgir',
- 'Vendor Invoice' => 'Innkaupsreikningur',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'Weight' => 'Vigt',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'days' => 'dagar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'ný_samsetning' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'ný_vara' => 'add_part',
- 'ný_þjónusta' => 'add_service',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'breyta_samsetningu' => 'edit_assembly',
- 'breyta_vöru' => 'edit_part',
- 'breyta_þjónustu' => 'edit_service',
- 'geyma' => 'save',
- 'geyma_sem_nýtt' => 'save_as_new',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/io b/sql-ledger/locale/is/io
deleted file mode 100644
index 8efebe6..0000000
--- a/sql-ledger/locale/is/io
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Address' => 'Heimilisfang',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'Cc' => 'Afrit',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'E-mail' => 'R-póstur',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'In-line' => 'Inndregið',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'No.' => 'Nr.',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Part' => 'Vara',
- 'Phone' => 'Sími.',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Project' => 'Verkefni',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Required by' => 'Pantað af',
- 'Sales Order' => 'Sölupöntun',
- 'Screen' => 'Skjá',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'To' => 'til',
- 'Unit' => 'Einingar',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'Áfram' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ir b/sql-ledger/locale/is/ir
deleted file mode 100644
index c048f1d..0000000
--- a/sql-ledger/locale/is/ir
+++ /dev/null
@@ -1,184 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Add Vendor Invoice' => 'Nýr innkaupsreikningur',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Invoice Number' => 'Ert þú viss um að þú viljir eyða reikningi númer',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'Cannot delete invoice!' => 'Get ekki eytt sölureikningi!',
- 'Cannot post invoice for a closed period!' => 'Get ekki bókað á lokað tímabil!',
- 'Cannot post invoice!' => 'Get ekki bókað sölureikning!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cc' => 'Afrit',
- 'Confirm!' => 'Staðfesta!',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Credit Limit' => 'Kreditmörk',
- 'Currency' => 'Gjaldmiðill',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'E-mail' => 'R-póstur',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Edit Vendor Invoice' => 'Breyta innkaupareikningi',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'In-line' => 'Inndregið',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Invoice deleted!' => 'Sölureikningi eytt!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Language' => 'Túngumál',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'No.' => 'Nr.',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payments' => 'Greiðslur',
- 'Phone' => 'Sími.',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Record in' => 'Bóka á',
- 'Remaining' => 'Eftir',
- 'Required by' => 'Pantað af',
- 'Sales Order' => 'Sölupöntun',
- 'Screen' => 'Skjá',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Source' => 'Frálag',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax Included' => 'Taka með VSK',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
- 'Vendor' => 'Byrgir',
- 'Vendor missing!' => 'Byrgja vantar!',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'Yes' => 'Já',
- 'ea' => 'stk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'innkaupspöntun' => 'purchase_order',
- 'uppfærsla' => 'update',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/is b/sql-ledger/locale/is/is
deleted file mode 100644
index e64d678..0000000
--- a/sql-ledger/locale/is/is
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Invoice' => 'Nýr sölureikningur',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Invoice Number' => 'Ert þú viss um að þú viljir eyða reikningi númer',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'Cannot delete invoice!' => 'Get ekki eytt sölureikningi!',
- 'Cannot post invoice for a closed period!' => 'Get ekki bókað á lokað tímabil!',
- 'Cannot post invoice!' => 'Get ekki bókað sölureikning!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cc' => 'Afrit',
- 'Confirm!' => 'Staðfesta!',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Credit Limit' => 'Kreditmörk',
- 'Currency' => 'Gjaldmiðill',
- 'Customer' => 'Viðskiptavinur',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'E-mail' => 'R-póstur',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Edit Sales Invoice' => 'Breyta sölureikningi',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'In-line' => 'Inndregið',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Invoice deleted!' => 'Sölureikningi eytt!',
- 'Invoice posted!' => 'Sölureikningur bókfærður!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'No.' => 'Nr.',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payments' => 'Greiðslur',
- 'Phone' => 'Sími.',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Print' => 'Prenta',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Record in' => 'Bóka á',
- 'Remaining' => 'Eftir',
- 'Required by' => 'Pantað af',
- 'Sales Order' => 'Sölupöntun',
- 'Screen' => 'Skjá',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Ship via' => 'Senda með',
- 'Source' => 'Frálag',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax Included' => 'Taka með VSK',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'Yes' => 'Já',
- 'ea' => 'stk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'r_póstur' => 'e_mail',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'prenta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sölupöntun' => 'sales_order',
- 'senda_til' => 'ship_to',
- 'uppfærsla' => 'update',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/login b/sql-ledger/locale/is/login
deleted file mode 100644
index 75d4d8f..0000000
--- a/sql-ledger/locale/is/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Fyritæki',
- 'Continue' => 'Áfram',
- 'Incorrect Dataset version!' => 'Röng útgáfa af gagnasfni!',
- 'Incorrect Password!' => 'Rangt lykilorð',
- 'Login' => 'Tengjast',
- 'Name' => 'Nafn',
- 'Password' => 'Aðgangsorð',
- 'Version' => 'Útgáfa',
- 'You did not enter a name!' => 'Þú gafst ekki upp nafn',
- 'is not a member!' => 'er ekki meðlimur!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'tengjast' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/is/menu b/sql-ledger/locale/is/menu
deleted file mode 100644
index 3a82370..0000000
--- a/sql-ledger/locale/is/menu
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'AP' => 'Innkaupakerfi',
- 'AP Aging' => 'Aldursgreining',
- 'AP Transaction' => 'Innkaupafærsla',
- 'AR' => 'Sölukerfi',
- 'AR Aging' => 'Aldursgreining',
- 'AR Transaction' => 'Sölufærsla',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Account' => 'Nýr reikningur',
- 'Add Assembly' => 'Ný samsetning',
- 'Add Customer' => 'Nýr viðskiptavinur',
- 'Add GIFI' => 'Ný GIFI',
- 'Add Part' => 'Ný vara',
- 'Add Project' => 'Nýt verkefni',
- 'Add Service' => 'Ný þjónusta',
- 'Add Transaction' => 'Ný bókhaldsfærsla',
- 'Add Vendor' => 'Nýr byrgir',
- 'Assemblies' => 'Samsetningar',
- 'Audit Control' => 'Yfirlit stjórnun',
- 'Backup' => 'Afrit',
- 'Balance Sheet' => 'Staða',
- 'Cash' => 'Reiðufé',
- 'Chart of Accounts' => 'Listi yfir lykkla/reikninga',
- 'Check' => 'Ávísun',
- 'Customers' => 'Viðskiptavinir',
- 'Description' => 'Skýringar',
- 'General Ledger' => 'Aðalbók',
- 'Goods & Services' => 'Vörur og þjónusta',
- 'HTML Templates' => 'HTML-skabalón',
- 'Income Statement' => 'Inn yfirlýsing',
- 'Invoice' => 'Sölureikningur',
- 'LaTeX Templates' => 'LaTeX-skabalón',
- 'Language' => 'Túngumál',
- 'List Accounts' => 'Sýna lykla',
- 'List GIFI' => 'Sýna GIFI',
- 'Logout' => 'Aftengjast',
- 'Open' => 'opna',
- 'Order Entry' => 'Pöntunarblað',
- 'Packing List' => 'Fylgiseðill',
- 'Parts' => 'Vörur',
- 'Payment' => 'Greislur',
- 'Payments' => 'Greiðslur',
- 'Preferences' => 'Uppsetningar',
- 'Print' => 'Prenta',
- 'Projects' => 'Verkefni',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Receipt' => 'Kvittun',
- 'Receipts' => 'Kvittanir',
- 'Reconciliation' => 'Afstemingar',
- 'Reports' => 'Skýrslur',
- 'Sales Invoice' => 'Sölureikningur',
- 'Sales Order' => 'Sölupöntun',
- 'Sales Orders' => 'Sölupantanir',
- 'Save to File' => 'Geyma í skrá',
- 'Send by E-Mail' => 'Senda með rafpósti',
- 'Services' => 'Þjónustur',
- 'Ship' => 'Senda',
- 'Statement' => 'Uppgjör',
- 'Stock Assembly' => 'Lager samsetning',
- 'Stylesheet' => 'Stílblað',
- 'System' => 'Kerfi',
- 'Tax collected' => 'VSK samtals',
- 'Tax paid' => 'VSK greitt',
- 'Transactions' => 'Færslur',
- 'Trial Balance' => 'Prufu staða',
- 'Vendor Invoice' => 'Innkaupsreikningur',
- 'Vendors' => 'Byrgjar',
- 'Version' => 'Útgáfa',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/is/oe b/sql-ledger/locale/is/oe
deleted file mode 100644
index 77bcc5d..0000000
--- a/sql-ledger/locale/is/oe
+++ /dev/null
@@ -1,232 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Invoice' => 'Nýr sölureikningur',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Add Vendor Invoice' => 'Nýr innkaupsreikningur',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Order Number' => 'Ert þú viss um að þú viljir eyða pöntun númer',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'C' => 'C',
- 'Cannot delete order!' => 'Get ekki eytt pöntun!',
- 'Cannot save order!' => 'Get ekki geymt pöntun!',
- 'Cc' => 'Afrit',
- 'Closed' => 'Lokað',
- 'Confirm!' => 'Staðfesta!',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Done' => 'Búið',
- 'E-mail' => 'R-póstur',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Edit Purchase Order' => 'Breyta innkaupapöntun',
- 'Edit Sales Order' => 'Breyta sölupöntun',
- 'Employee' => 'Starfsmenn',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'ID' => 'ID',
- 'In-line' => 'Inndregið',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'No.' => 'Nr.',
- 'Notes' => 'Upplýsinar',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'O' => 'O',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Open' => 'opna',
- 'Order' => 'Pöntun',
- 'Order Date' => 'Pöntunar dags.',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'Order deleted!' => 'Pöntun eytt',
- 'Order saved!' => 'Pöntun geymd',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Part' => 'Vara',
- 'Phone' => 'Sími.',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Print' => 'Prenta',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Purchase Orders' => 'Innkaupspantanir',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Remaining' => 'Eftir',
- 'Required by' => 'Pantað af',
- 'Sales Invoice' => 'Sölureikningur',
- 'Sales Order' => 'Sölupöntun',
- 'Sales Orders' => 'Sölupantanir',
- 'Save' => 'Geyma',
- 'Save as new' => 'Geyma sem nýtt',
- 'Screen' => 'Skjá',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Ship via' => 'Senda með',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Included' => 'Taka með VSK',
- 'Terms' => 'Nettó',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
- 'Vendor' => 'Byrgir',
- 'Vendor Invoice' => 'Innkaupsreikningur',
- 'Vendor missing!' => 'Byrgja vantar!',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'Yes' => 'Já',
- 'days' => 'dagar',
- 'ea' => 'stk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'búið' => 'done',
- 'r_póstur' => 'e_mail',
- 'prenta' => 'print',
- 'print_and_save' => 'print_and_save',
- 'innkaupspöntun' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sölureikningur' => 'sales_invoice',
- 'sölupöntun' => 'sales_order',
- 'geyma' => 'save',
- 'geyma_sem_nýtt' => 'save_as_new',
- 'senda_til' => 'ship_to',
- 'transfer' => 'transfer',
- 'uppfærsla' => 'update',
- 'innkaupsreikningur' => 'vendor_invoice',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/pe b/sql-ledger/locale/is/pe
deleted file mode 100644
index 775d0d8..0000000
--- a/sql-ledger/locale/is/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Add Project' => 'Nýt verkefni',
- 'All' => 'Allt',
- 'Continue' => 'Áfram',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'Edit Project' => 'Breyta verkefni',
- 'Language' => 'Túngumál',
- 'Number' => 'Númer',
- 'Orphaned' => 'Sjáfstætt',
- 'Project' => 'Verkefni',
- 'Project Number missing!' => 'Verkefnisnúmer vantar!',
- 'Project deleted!' => 'Verkefni eytt!',
- 'Project saved!' => 'verkefni geymt!',
- 'Projects' => 'Verkefni',
- 'Save' => 'Geyma',
- 'Update' => 'Uppfærsla',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'nýt_verkefni' => 'add_project',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'geyma' => 'save',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/pos b/sql-ledger/locale/is/pos
deleted file mode 100644
index 2905e78..0000000
--- a/sql-ledger/locale/is/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Continue' => 'Áfram',
- 'Credit Limit' => 'Kreditmörk',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Delete' => 'Eyða',
- 'Description' => 'Skýringar',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Extended' => 'Framlengt',
- 'From' => 'Frá',
- 'Language' => 'Túngumál',
- 'Number' => 'Númer',
- 'Open' => 'opna',
- 'Paid' => 'Greitt',
- 'Post' => 'Bókfæra',
- 'Price' => 'Verð',
- 'Print' => 'Prenta',
- 'Qty' => 'Magn',
- 'Receipts' => 'Kvittanir',
- 'Record in' => 'Bóka á',
- 'Remaining' => 'Eftir',
- 'Screen' => 'Skjá',
- 'Source' => 'Frálag',
- 'Subtotal' => 'Samtala',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'bókfæra' => 'post',
- 'prenta' => 'print',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/ps b/sql-ledger/locale/is/ps
deleted file mode 100644
index 70b8c1e..0000000
--- a/sql-ledger/locale/is/ps
+++ /dev/null
@@ -1,276 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldursgreining',
- 'AR Aging' => 'Aldursgreining',
- 'AR Transaction' => 'Sölufærsla',
- 'AR Transactions' => 'Sölufærslur',
- 'Account' => 'Reikningur',
- 'Account Number' => 'Reikningsnúmer',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Accounts' => 'Reikningar',
- 'Add Purchase Order' => 'Ný innkaupspöntun',
- 'Add Sales Invoice' => 'Nýr sölureikningur',
- 'Add Sales Order' => 'Ný sölupöntun',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Amount Due' => 'Eindagi',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Are you sure you want to delete Invoice Number' => 'Ert þú viss um að þú viljir eyða reikningi númer',
- 'Are you sure you want to delete Transaction' => 'Ert þú viss um að þú viljir eyða færslunni',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Balance' => 'Afstemming',
- 'Balance Sheet' => 'Staða',
- 'Bcc' => 'Blint afrit',
- 'Bin' => 'Vörulager',
- 'Cannot delete invoice!' => 'Get ekki eytt sölureikningi!',
- 'Cannot delete transaction!' => 'Get ekki eytt færslu!',
- 'Cannot post invoice for a closed period!' => 'Get ekki bókað á lokað tímabil!',
- 'Cannot post invoice!' => 'Get ekki bókað sölureikning!',
- 'Cannot post payment for a closed period!' => 'Get ekki bókað greiðslu á lokað tímabil',
- 'Cannot post transaction for a closed period!' => 'Get ekki bókað færslu á lokað tímabil!',
- 'Cannot post transaction!' => 'Get ekki bókað færslu!',
- 'Cash' => 'Reiðufé',
- 'Cc' => 'Afrit',
- 'Check' => 'Ávísun',
- 'Closed' => 'Lokað',
- 'Compare to' => 'Bera saman við',
- 'Confirm!' => 'Staðfesta!',
- 'Contact' => 'Talsmaður',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditmörk',
- 'Curr' => 'Gjaldm',
- 'Currency' => 'Gjaldmiðill',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Customer missing!' => 'Viðskiptavin vantar!',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Date Paid' => 'Greiðsludagur',
- 'Debit' => 'Debit',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Aukastafir',
- 'Delete' => 'Eyða',
- 'Delivery Date' => 'Afgreiðsludags.',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'Due Date missing!' => 'Vantar dags. lokið!',
- 'E-mail' => 'R-póstur',
- 'E-mail Statement to' => 'Senda yfirlit til',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Edit Sales Invoice' => 'Breyta sölureikningi',
- 'Exch' => 'Vx',
- 'Exchange Rate' => 'Vextir',
- 'Exchange rate for payment missing!' => 'Vextir fyrir greiðslu vantar!',
- 'Exchange rate missing!' => 'Vantar vexti!',
- 'Extended' => 'Framlengt',
- 'Fax' => 'Símbréf',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Yfirskriftir',
- 'ID' => 'ID',
- 'In-line' => 'Inndregið',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Income Statement' => 'Inn yfirlýsing',
- 'Invoice' => 'Sölureikningur',
- 'Invoice Date' => 'Sölureikningur dags.',
- 'Invoice Date missing!' => 'Sölureiknings dags. vantar!',
- 'Invoice Number' => 'Sölureikningur Númer',
- 'Invoice Number missing!' => 'Sölureikningsnúmer vantar!',
- 'Invoice deleted!' => 'Sölureikningi eytt!',
- 'Invoice posted!' => 'Sölureikningur bókfærður!',
- 'Item not on file!' => 'Hlutur ekki á skrá!',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Language' => 'Túngumál',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'No.' => 'Nr.',
- 'Notes' => 'Upplýsinar',
- 'Nothing selected!' => 'Ekkert valið!',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Number missing in Row' => 'Tölu vantar í röð',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Open' => 'opna',
- 'Order' => 'Pöntun',
- 'Order Date missing!' => 'Pöntunar dags. vantar',
- 'Order Number' => 'Pöntun númer',
- 'Order Number missing!' => 'Númer pöntunar vantar',
- 'PDF' => 'PDF',
- 'Packing List' => 'Fylgiseðill',
- 'Packing List Date missing!' => 'Dags. fylgiseðils vantar!',
- 'Packing List Number missing!' => 'Númer fylgiseðils vantar!',
- 'Paid' => 'Greitt',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Greiðsudags. vantar!',
- 'Payments' => 'Greiðslur',
- 'Phone' => 'Sími.',
- 'Post' => 'Bókfæra',
- 'Post as new' => 'Bókfæra sem nýjan',
- 'Postscript' => 'Postscript',
- 'Price' => 'Verð',
- 'Print' => 'Prenta',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Purchase Order' => 'Innkaupspöntun',
- 'Qty' => 'Magn',
- 'Recd' => 'Mótt:',
- 'Receipt' => 'Kvittun',
- 'Receipts' => 'Kvittanir',
- 'Record in' => 'Bóka á',
- 'Remaining' => 'Eftir',
- 'Report for' => 'Skýrsla fyrir',
- 'Required by' => 'Pantað af',
- 'Sales Order' => 'Sölupöntun',
- 'Screen' => 'Skjá',
- 'Select all' => 'Velja allt',
- 'Select from one of the items below' => 'Veljið einhver að neðangreindum hlutum, og ýtið á "Áfram"',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Service' => 'Þjónusta',
- 'Ship' => 'Senda',
- 'Ship to' => 'Senda til',
- 'Ship via' => 'Senda með',
- 'Source' => 'Frálag',
- 'Standard' => 'Standart',
- 'Statement' => 'Uppgjör',
- 'Statement sent to' => 'Uppgjör sendist til',
- 'Statements sent to printer!' => 'Uppgjör sendist á prentara',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax Included' => 'Taka með VSK',
- 'Tax collected' => 'VSK samtals',
- 'Tax paid' => 'VSK greitt',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Transaction deleted!' => 'Færslu eytt!',
- 'Transaction posted!' => 'Færsla bókfærð!',
- 'Trial Balance' => 'Prufu staða',
- 'Unit' => 'Einingar',
- 'Update' => 'Uppfærsla',
- 'Vendor' => 'Byrgir',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'What type of item is this?' => 'Hvernig hlutur er þetta?',
- 'Yes' => 'Já',
- 'as at' => 'líkt og með',
- 'ea' => 'stk',
- 'for Period' => 'fyrir tímabilið',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'sölufærsla' => 'ar_transaction',
- 'Áfram' => 'continue',
- 'eyða' => 'delete',
- 'r_póstur' => 'e_mail',
- 'bókfæra' => 'post',
- 'bókfæra_sem_nýjan' => 'post_as_new',
- 'prenta' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'sölupöntun' => 'sales_order',
- 'velja_allt' => 'select_all',
- 'senda_til' => 'ship_to',
- 'uppfærsla' => 'update',
- 'já' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/is/pw b/sql-ledger/locale/is/pw
deleted file mode 100644
index fcb4831..0000000
--- a/sql-ledger/locale/is/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Áfram',
- 'Password' => 'Aðgangsorð',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'Áfram' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/is/rc b/sql-ledger/locale/is/rc
deleted file mode 100644
index 3a405c4..0000000
--- a/sql-ledger/locale/is/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Reikningur',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Balance' => 'Afstemming',
- 'Continue' => 'Áfram',
- 'Current' => 'Núvirði',
- 'Date' => 'Dagsetning',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Deposit' => 'Innlagt',
- 'Description' => 'Skýringar',
- 'Difference' => 'Mismunur',
- 'Done' => 'Búið',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Out of balance!' => 'Ekki jafnvægi!',
- 'Payment' => 'Greislur',
- 'Reconciliation' => 'Afstemingar',
- 'Select all' => 'Velja allt',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Frálag',
- 'Statement Balance' => 'jöfnunaruppgjör',
- 'To' => 'til',
- 'Update' => 'Uppfærsla',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'Áfram' => 'continue',
- 'búið' => 'done',
- 'velja_allt' => 'select_all',
- 'uppfærsla' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/is/rp b/sql-ledger/locale/is/rp
deleted file mode 100644
index 0ffeb8a..0000000
--- a/sql-ledger/locale/is/rp
+++ /dev/null
@@ -1,145 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldursgreining',
- 'AR Aging' => 'Aldursgreining',
- 'Account' => 'Reikningur',
- 'Account Number' => 'Reikningsnúmer',
- 'Accounting Menu' => 'Bókhalds valmynd',
- 'Accounts' => 'Reikningar',
- 'Address' => 'Heimilisfang',
- 'Amount' => 'Upphæð',
- 'Apr' => 'apr',
- 'April' => 'apríl',
- 'Attachment' => 'Hjálagt',
- 'Aug' => 'ágú',
- 'August' => 'ágúst',
- 'Balance' => 'Afstemming',
- 'Balance Sheet' => 'Staða',
- 'Bcc' => 'Blint afrit',
- 'Cash' => 'Reiðufé',
- 'Cc' => 'Afrit',
- 'Compare to' => 'Bera saman við',
- 'Continue' => 'Áfram',
- 'Copies' => 'Afrit',
- 'Credit' => 'Kredit',
- 'Curr' => 'Gjaldm',
- 'Current' => 'Núvirði',
- 'Customer' => 'Viðskiptavinur',
- 'Customer not on file!' => 'Viðskiptavinur ekki á skrá!',
- 'Date' => 'Dagsetning',
- 'Debit' => 'Debit',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Aukastafir',
- 'Description' => 'Skýringar',
- 'Due Date' => 'Dags. lokið',
- 'E-mail' => 'R-póstur',
- 'E-mail Statement to' => 'Senda yfirlit til',
- 'E-mail address missing!' => 'R-póst vantar!',
- 'Feb' => 'feb',
- 'February' => 'febrúar',
- 'From' => 'Frá',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Yfirskriftir',
- 'ID' => 'ID',
- 'In-line' => 'Inndregið',
- 'Include in Report' => 'Innifela í skýrslu',
- 'Income Statement' => 'Inn yfirlýsing',
- 'Invoice' => 'Sölureikningur',
- 'Jan' => 'jan',
- 'January' => 'janúar',
- 'Jul' => 'júl',
- 'July' => 'júlí',
- 'Jun' => 'jún',
- 'June' => 'júní',
- 'Language' => 'Túngumál',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'maí',
- 'May ' => 'maí',
- 'Message' => 'Skilaboð',
- 'Nothing selected!' => 'Ekkert valið!',
- 'Nov' => 'nóv',
- 'November' => 'nóvember',
- 'Number' => 'Númer',
- 'Oct' => 'ókt',
- 'October' => 'óktóber',
- 'Order' => 'Pöntun',
- 'PDF' => 'PDF',
- 'Payments' => 'Greiðslur',
- 'Postscript' => 'Postscript',
- 'Print' => 'Prenta',
- 'Project' => 'Verkefni',
- 'Project not on file!' => 'Verkefni ekki á skrá!',
- 'Receipts' => 'Kvittanir',
- 'Report for' => 'Skýrsla fyrir',
- 'Screen' => 'Skjá',
- 'Select all' => 'Velja allt',
- 'Select from one of the names below' => 'Veljið einhvað að neðangreindum nöfnum',
- 'Select from one of the projects below' => 'Veljið einhvað að neðangreindum verkefnum',
- 'Select postscript or PDF!' => 'Veljið postscript eða PDF',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Frálag',
- 'Standard' => 'Standart',
- 'Statement' => 'Uppgjör',
- 'Statement sent to' => 'Uppgjör sendist til',
- 'Statements sent to printer!' => 'Uppgjör sendist á prentara',
- 'Subject' => 'Efni',
- 'Subtotal' => 'Samtala',
- 'Tax' => 'Virðisaukaskattur',
- 'Tax collected' => 'VSK samtals',
- 'Tax paid' => 'VSK greitt',
- 'To' => 'til',
- 'Total' => 'Samtals',
- 'Trial Balance' => 'Prufu staða',
- 'Vendor' => 'Byrgir',
- 'Vendor not on file!' => 'Byrgir ekki til í gagnagrunni!',
- 'as at' => 'líkt og með',
- 'for Period' => 'fyrir tímabilið',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Áfram' => 'continue',
- 'r_póstur' => 'e_mail',
- 'prenta' => 'print',
- 'velja_allt' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/it/COPYING b/sql-ledger/locale/it/COPYING
deleted file mode 100644
index 6e7041a..0000000
--- a/sql-ledger/locale/it/COPYING
+++ /dev/null
@@ -1,26 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001-2003
-#
-# Italian texts:
-#
-# Author: Paolo Bizzarri <p.bizzarri@icube.it>
-# Luca Venturini <luca@yepa.com>
-# Alessandro Pasotti <apasotti@isoleborromee.it>
-# Daniele Giacomini <daniele@swlibero.org> 2003.09.28-2003.11.05
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/it/LANGUAGE b/sql-ledger/locale/it/LANGUAGE
deleted file mode 100644
index 4e07e7e..0000000
--- a/sql-ledger/locale/it/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Italian
diff --git a/sql-ledger/locale/it/Num2text b/sql-ledger/locale/it/Num2text
deleted file mode 100644
index 1ec24ea..0000000
--- a/sql-ledger/locale/it/Num2text
+++ /dev/null
@@ -1,162 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Luca Venturini <luca@yepa.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# this is a variation of the Lingua package
-# written for check and receipt printing
-# it returns a properly formatted text string
-# for a number up to 10**12
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'Zero',
- 1 => 'uno',
- 2 => 'due',
- 3 => 'tre',
- 4 => 'quattro',
- 5 => 'cinque',
- 6 => 'sei',
- 7 => 'sette',
- 8 => 'otto',
- 9 => 'nove',
- 10 => 'dieci',
- 11 => 'undici',
- 12 => 'dodici',
- 13 => 'tredici',
- 14 => 'quattrodici',
- 15 => 'quindici',
- 16 => 'sedici',
- 17 => 'diciassette',
- 18 => 'diciotto',
- 19 => 'diciannove',
- 20 => 'venti',
- 30 => 'trenta',
- 40 => 'quaranta',
- 50 => 'cinquanta',
- 60 => 'sessanta',
- 70 => 'settanta',
- 80 => 'ottanta',
- 90 => 'novanta',
- 10**2 => 'cento',
- 10**3 => 'mille',
- 10**6 => 'milione',
- 10**9 => 'miliardo',
- 10**12 => 'mille miliardi'
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ();
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my ($i, $appendn);
- my @a = ();
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } elsif ($numblock[$i] > 1) {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
-
- # add thousand, million
- if ($i) {
- $amount = 10**($i * 3);
- push @textnumber, $self->{numbername}{$amount};
- }
-
- pop @numblock;
-
- }
-
- join '', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- if ($num[1] == 0) {
- $textnumber = $self->{numbername}{$amount};
- } else {
- $amount = $num[0] * 10;
- $textnumber = $self->{numbername}{$amount}.$self->{numbername}{$num[1]};
- }
- } else {
- $textnumber = $self->{numbername}{$amount};
- }
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/it/admin b/sql-ledger/locale/it/admin
deleted file mode 100644
index 8d4a756..0000000
--- a/sql-ledger/locale/it/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Controllo degli accessi',
- 'Accounting' => 'Contabilità',
- 'Add User' => 'Inserimento utente',
- 'Address' => 'Indirizzo',
- 'Administration' => 'Amministrazione',
- 'Administrator' => 'Amministratore',
- 'All Datasets up to date!' => 'Tutti gli insiemi di dati sono aggiornati!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Cambia la parola d\'ordine dell\'amministratore',
- 'Change Password' => 'Cambia la parola d\'ordine',
- 'Character Set' => 'Insieme di caratteri',
- 'Click on login name to edit!' => 'Clicca sul nome per effettuare modifiche',
- 'Company' => 'Ragione sociale',
- 'Connect to' => 'Connetti a',
- 'Continue' => 'Continua',
- 'Create Chart of Accounts' => 'Crea piano dei conti',
- 'Create Dataset' => 'Crea insieme di dati',
- 'DBI not installed!' => 'Modulo DBI non installato',
- 'Database' => 'Base di dati',
- 'Database Administration' => 'Amministratore della base di dati',
- 'Database Driver not checked!' => 'Il driver della base di dati non e\' stato controllato!',
- 'Database User missing!' => 'Manca l\'utente della base di dati!',
- 'Dataset' => 'Insieme di dati',
- 'Dataset missing!' => 'Insieme di dati mancante!',
- 'Dataset updated!' => 'Insieme di dati aggiornato!',
- 'Date Format' => 'Formato della data',
- 'Delete' => 'Cancella',
- 'Delete Dataset' => 'Cancella insieme di dati',
- 'Directory' => 'Directory',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Limite per i menù a discesa',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Modifica utente',
- 'Existing Datasets' => 'Insiemi di dati esistenti',
- 'Fax' => 'Fax',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Manca il nome del servente',
- 'Language' => 'Lingua',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lascia in bianco il servente e la porta a meno che tu non voglia fare una connessione remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Nominativo di accesso mancante',
- 'Logout' => 'Logout',
- 'Multibyte Encoding' => 'Codifica',
- 'Name' => 'Nome',
- 'New Templates' => 'Nuovi modelli',
- 'No Database Drivers available!' => 'Nessun gestore di base di dati disponibile!',
- 'No Dataset selected!' => 'Nessun insieme di dati selezionato!',
- 'Nothing to delete!' => 'Nulla da cancellare!',
- 'Number Format' => 'Formato numerico',
- 'Oracle Database Administration' => 'Amministratore della base di dati Oracle',
- 'Password' => 'Parola d\'ordine',
- 'Password changed!' => 'Parola d\'ordine aggiornata!',
- 'Pg Database Administration' => 'Amministratore della base di dati Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Porta',
- 'Port missing!' => 'Manca la porta',
- 'Printer' => 'Stampante',
- 'Save' => 'Salva',
- 'Setup Templates' => 'Configurazione dei modelli',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Foglio di stile',
- 'Templates' => 'Modelli',
- 'The following Datasets are not in use and can be deleted' => 'I seguenti insiemi di dati non sono in uso e possono essere cancellati',
- 'The following Datasets need to be updated' => 'I seguenti insiemi di dati devono essere aggiornati',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Questo è un controllo preliminare per verificare le risorse esistenti. Nulla verrà creato o cancellato in questa fase!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Per aggiungere un utente ad un gruppo, modifica i dati dell\'utente, cambia lo username e salva. Un nuovo utente con gli stessi dati verrà salvato con il nuovo username.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Aggiorna l\'insieme di dati',
- 'Use Templates' => 'Usa modelli',
- 'User' => 'Utente',
- 'User deleted!' => 'Utente cancellato!',
- 'User saved!' => 'Utente salvato!',
- 'Version' => 'Versione',
- 'You must enter a host and port for local and remote connections!' => 'Si deve inserire un servente e una porta per le connessioni locali e remote!',
- 'does not exist' => 'non esiste',
- 'is already a member!' => 'è già utente della procedura!',
- 'localhost' => 'localhost',
- 'successfully created!' => 'creato!',
- 'successfully deleted!' => 'cancellato!',
- 'website' => 'sito web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'inserimento_utente' => 'add_user',
- 'cambia_la_parola_d\'ordine_dell\'amministratore' => 'change_admin_password',
- 'cambia_la_parola_d\'ordine' => 'change_password',
- 'continua' => 'continue',
- 'crea_insieme_di_dati' => 'create_dataset',
- 'cancella' => 'delete',
- 'cancella_insieme_di_dati' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'amministratore_della_base_di_dati_oracle' => 'oracle_database_administration',
- 'amministratore_della_base_di_dati_pg' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'salva' => 'save',
- 'unlock_system' => 'unlock_system',
- 'aggiorna_l\'insieme_di_dati' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/it/all b/sql-ledger/locale/it/all
deleted file mode 100644
index e40e44b..0000000
--- a/sql-ledger/locale/it/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Debiti verso fornitori',
- 'AP Aging' => 'Partite aperte',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Scrittura fornitore',
- 'AP Transactions' => 'Scritture fornitori',
- 'AR' => 'Crediti verso clienti',
- 'AR Aging' => 'Partite aperte',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Scrittura cliente',
- 'AR Transactions' => 'Scritture clienti',
- 'About' => 'Informazioni',
- 'Above' => '',
- 'Access Control' => 'Controllo degli accessi',
- 'Account' => 'Conto',
- 'Account Number' => 'Numero di conto',
- 'Account Number missing!' => 'Manca il numero di conto!',
- 'Account Type' => 'Tipo di conto',
- 'Account Type missing!' => 'Manca il tipo del conto!',
- 'Account deleted!' => 'Conto cancellato!',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Conto salvato!',
- 'Accounting' => 'Contabilità',
- 'Accounting Menu' => 'Menù contabilità',
- 'Accounts' => 'Conti',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Attivi',
- 'Add' => 'Inserimento',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Inserimento conto',
- 'Add Assembly' => 'Inserimento assemblato',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Inserimento cliente',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Inserimento codice GIFI',
- 'Add General Ledger Transaction' => 'Inserimento scrittura di contabilità generale',
- 'Add Group' => 'Inserimento gruppo',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Inserimento articolo',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Inserimento progetto',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Inserimento fattura di vendita',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Add Service' => 'Inserimento servizio',
- 'Add Transaction' => 'Inserimento scrittura',
- 'Add User' => 'Inserimento utente',
- 'Add Vendor' => 'Inserimento fornitore',
- 'Add Vendor Invoice' => 'Inserimento fattura di acquisto',
- 'Add Warehouse' => '',
- 'Address' => 'Indirizzo',
- 'Administration' => 'Amministrazione',
- 'Administrator' => 'Amministratore',
- 'After Deduction' => '',
- 'All' => 'Tutti',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Tutti gli insiemi di dati sono aggiornati!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Importo',
- 'Amount Due' => 'Importo dovuto',
- 'Amount missing!' => '',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Invoice Number' => 'Sei sicuro di voler cancellare la fattura numero',
- 'Are you sure you want to delete Order Number' => 'Sei sicuro di voler cancellare l\'ordine numero',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Sei sicuro di voler cancellare la scrittura',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Assemblati',
- 'Assemblies restocked!' => 'Assemblati ricaricati!',
- 'Assembly' => '',
- 'Asset' => 'Attività',
- 'Attachment' => 'Allegato',
- 'Audit Control' => 'Controllo delle revisioni',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => '"BOM"',
- 'Backup' => 'Copia di sicurezza',
- 'Backup sent to' => 'Copia di sicurezza inviata a',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Stato patrimoniale',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Codice BIN',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Le scritture possono essere modificate',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Partita IVA',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'Ch.',
- 'COGS' => '"Cost of goods sold"',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Non si può cancellare il conto!',
- 'Cannot delete customer!' => 'Non si può cancellare il cliente!',
- 'Cannot delete default account!' => 'Non si può cancellare il conto predefinito!',
- 'Cannot delete invoice!' => 'Non si può cancellare la fattura!',
- 'Cannot delete item!' => 'Non si può cancellare l\'articolo',
- 'Cannot delete order!' => 'Non si può cancellare l\'ordine',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Non si può cancellare la scrittura',
- 'Cannot delete vendor!' => 'Non si può cancellare il fornitore',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post invoice!' => 'Non si può salvare la fattura!',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cannot post transaction for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Cannot process payment for a closed period!' => 'Non si può elaborare un pagamento per un periodo chiuso!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Non si può salvare il conto!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Non si può salvare l\'ordine!',
- 'Cannot save preferences!' => 'Non si possono salvare le preferenze!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Non si possono caricare gli assemblati!',
- 'Cash' => 'Cassa',
- 'Cc' => 'Cc',
- 'Change' => '',
- 'Change Admin Password' => 'Cambia la parola d\'ordine dell\'amministratore',
- 'Change Password' => 'Cambia la parola d\'ordine',
- 'Character Set' => 'Insieme di caratteri',
- 'Chart of Accounts' => 'Piano dei conti',
- 'Check' => 'Assegno',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Clicca sul nome per effettuare modifiche',
- 'Close Books up to' => 'Blocca le scritture fino al',
- 'Closed' => 'Chiuso',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Ragione sociale',
- 'Company Name' => '',
- 'Compare to' => 'Confronta con',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Conferma!',
- 'Connect to' => 'Connetti a',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Contra' => '',
- 'Copies' => 'Copie',
- 'Copy to COA' => 'Inserire come conto',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Crea piano dei conti',
- 'Create Dataset' => 'Crea insieme di dati',
- 'Credit' => 'Avere',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Current Earnings' => '',
- 'Customer' => 'Cliente',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Cliente cancellato!',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Customer saved!' => 'Cliente salvato!',
- 'Customers' => 'Clienti',
- 'DBI not installed!' => 'Modulo DBI non installato',
- 'DOB' => '',
- 'Database' => 'Base di dati',
- 'Database Administration' => 'Amministratore della base di dati',
- 'Database Driver not checked!' => 'Il driver della base di dati non e\' stato controllato!',
- 'Database Host' => 'Servente della base di dati',
- 'Database User missing!' => 'Manca l\'utente della base di dati!',
- 'Dataset' => 'Insieme di dati',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Insieme di dati mancante!',
- 'Dataset updated!' => 'Insieme di dati aggiornato!',
- 'Date' => 'Data',
- 'Date Format' => 'Formato della data',
- 'Date Paid' => 'Data di pagamento',
- 'Date Received' => '',
- 'Date missing!' => 'Manca la data!',
- 'Date received missing!' => '',
- 'Debit' => 'Dare',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Decimalplaces' => 'Numero di decimali',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Cancella',
- 'Delete Account' => 'Cancella conto',
- 'Delete Dataset' => 'Cancella insieme di dati',
- 'Delivery Date' => 'Data di spedizione',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Deposito',
- 'Description' => 'Descrizione',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Differenza',
- 'Directory' => 'Directory',
- 'Discount' => 'Sconto',
- 'Done' => 'Fatto',
- 'Drawing' => 'Disegno',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Limite per i menù a discesa',
- 'Due Date' => 'Scadenza fattura',
- 'Due Date missing!' => 'Data di scadenza mancante!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Manda il sollecito via e-mail a',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'E-mailed' => '',
- 'Edit' => 'Modifica',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Modifica conto',
- 'Edit Assembly' => 'Modifica assemblato',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Modifica cliente',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Modifica codice GIFI',
- 'Edit General Ledger Transaction' => 'Modifica scrittura di contabilità generale',
- 'Edit Group' => 'Modifica gruppo',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Modifica articolo',
- 'Edit Preferences for' => 'Modifica preferenze di',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Modifica progetto',
- 'Edit Purchase Order' => 'Modifica ordine di acquisto',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Modifica fattura di vendita',
- 'Edit Sales Order' => 'Modifica ordine di vendita',
- 'Edit Service' => 'Modifica servizio',
- 'Edit Template' => 'Modifica modello',
- 'Edit User' => 'Modifica utente',
- 'Edit Vendor' => 'Modifica fornitore',
- 'Edit Vendor Invoice' => 'Modifica fattura di acquisto',
- 'Edit Warehouse' => '',
- 'Employee' => 'Dipendente',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Impedisce la modifica delle scritture per tutte le date',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Valute (si possono inserire sigle di tre lettere separate da due punti, per esempio "EUR:USD:CAD"; è necessario indicare anche la valuta locale):',
- 'Equity' => 'Capitale netto',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Existing Datasets' => 'Insiemi di dati esistenti',
- 'Expense' => 'Costi',
- 'Expense Account' => 'Costi per prestazione di servizi',
- 'Expense/Asset' => 'Acquisti/Attività',
- 'Extended' => 'Totale riga',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'Foreign Exchange Gain' => 'Proventi da cambio valuta',
- 'Foreign Exchange Loss' => 'Oneri da cambio valuta',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'GIFI deleted!' => 'Codice GIFI cancellato!',
- 'GIFI missing!' => 'Codice GIFI mancante!',
- 'GIFI saved!' => 'Codice GIFI salvato!',
- 'GL Transaction' => 'Scrittura di contabilità generale',
- 'General Ledger' => 'Contabilità generale',
- 'Goods & Services' => 'Beni e servizi',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'Group Translations' => '',
- 'Group deleted!' => 'Gruppo cancellato',
- 'Group missing!' => 'Gruppo mancante',
- 'Group saved!' => 'Gruppo salvato',
- 'Groups' => 'Gruppi',
- 'HR' => '',
- 'HTML Templates' => 'Modelli HTML',
- 'Heading' => 'Intestazione',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Manca il nome del servente',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Immagine',
- 'In-line' => 'In-line',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Includere nel prospetto',
- 'Include in drop-down menus' => 'Da includere nei menù a discesa dei modelli seguenti',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Includere questo conto nei modelli di inserimento di clienti e fornitori, per l\'inserimento successivo dell\'imposta nelle scritture?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Conto economico',
- 'Incorrect Dataset version!' => 'Versione dell\'insieme di dati non corretta!',
- 'Incorrect Password!' => 'Parola d\'ordine errata!',
- 'Increase' => '',
- 'Individual Items' => 'Articoli individuali',
- 'Internal Notes' => '',
- 'Inventory' => 'Rimanenze/Acquisti',
- 'Inventory Account' => 'Conto degli acquisti',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantità in rimanenza deve essere zero per poter mettere l\'assemblato come obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantità in rimamenza deve essere zero per poter mettere l\'articolo come obsoleto!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Invoice deleted!' => 'Fattura cancellata!',
- 'Invoice posted!' => 'Fattura salvata!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Fatture',
- 'Is this a summary account to record' => 'Questo conto è una contropartita corrispondente a:',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Articolo cancellato!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Items' => '',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'LaTeX Templates' => 'Modelli LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'Lingua',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Ultimi numeri e conti predefiniti',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lascia in bianco il servente e la porta a meno che tu non voglia fare una connessione remota',
- 'Liability' => 'Passività',
- 'Licensed to' => 'Dato in licenza a',
- 'Line Total' => 'Totale riga',
- 'Link' => 'Collegamenti',
- 'Link Accounts' => 'Collegamenti tra conti',
- 'List' => '',
- 'List Accounts' => 'Lista conti',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Lista codici GIFI',
- 'List Languages' => '',
- 'List Price' => 'Prezzo suggerito per la vendita al dettaglio',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Lista scritture',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Nominativo di accesso mancante',
- 'Logout' => 'Logout',
- 'Make' => 'Produttore',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Messaggio',
- 'Method' => '',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modello',
- 'Month' => '',
- 'Multibyte Encoding' => 'Codifica',
- 'N/A' => 'N/A',
- 'Name' => 'Nome',
- 'Name missing!' => 'Manca il nome!',
- 'New Templates' => 'Nuovi modelli',
- 'No' => 'No',
- 'No Database Drivers available!' => 'Nessun gestore di base di dati disponibile!',
- 'No Dataset selected!' => 'Nessun insieme di dati selezionato!',
- 'No email address for' => 'Manca l\'indirizzo e-mail per',
- 'No.' => 'No.',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Note',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Non hai selezionato nulla!',
- 'Nothing to delete!' => 'Nulla da cancellare!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number Format' => 'Formato numerico',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'O' => 'Ap.',
- 'Obsolete' => 'Obsoleto/i',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'On Hand' => 'Disponibile/i',
- 'Open' => 'Aperto/i',
- 'Oracle Database Administration' => 'Amministratore della base di dati Oracle',
- 'Order' => 'Ordine',
- 'Order Date' => 'Data dell\'ordine',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Entry' => 'Ordini',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'Order deleted!' => 'Ordine cancellato!',
- 'Order processed!' => '',
- 'Order saved!' => 'Ordine salvato!',
- 'Orphaned' => 'Inutilizzati',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Non conciliato!',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Packing Lists' => '',
- 'Paid' => 'Importo pagato',
- 'Part' => 'Componente',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Articoli',
- 'Parts Inventory' => 'Magazzino degli articoli',
- 'Password' => 'Parola d\'ordine',
- 'Password changed!' => 'Parola d\'ordine aggiornata!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Debiti verso fornitori',
- 'Payment' => 'Pagamento',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payment posted!' => 'Pagamento salvato',
- 'Payments' => 'Pagamenti',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Amministratore della base di dati Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Porta',
- 'Port missing!' => 'Manca la porta',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Posted!' => '',
- 'Postscript' => 'PostScript',
- 'Preferences' => 'Preferenze',
- 'Preferences saved!' => 'Preferenze salvate!',
- 'Prepayment' => '',
- 'Price' => 'Prezzo',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Stampa',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Stampante',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Progetto',
- 'Project Description Translations' => '',
- 'Project Number' => 'Numero progetto',
- 'Project Number missing!' => 'Manca il codice del progetto!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Progetto cancellato!',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Project saved!' => 'Progetto salvato!',
- 'Projects' => 'Progetti',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Qty' => 'Q.tà',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Soglia di riordino',
- 'Rate' => 'Tasso',
- 'Rate missing!' => '',
- 'Recd' => 'Ricevuto',
- 'Receipt' => 'Riscossione',
- 'Receipt posted!' => '',
- 'Receipts' => 'Riscossioni',
- 'Receivables' => 'Crediti verso clienti',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Conciliazione',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registra in',
- 'Reference' => 'Documento',
- 'Reference missing!' => 'Manca il documento!',
- 'Remaining' => 'Rimanente',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Prospetto per',
- 'Reports' => 'Prospetti',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Consegna',
- 'Retained Earnings' => 'Proventi',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Vendite',
- 'Sales Invoice' => 'Fattura di vendita',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordini di vendita',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Addetto alle vendite',
- 'Save' => 'Salva',
- 'Save Pricelist' => '',
- 'Save as new' => 'Salva come nuovo',
- 'Save to File' => 'Salva su file',
- 'Screen' => 'Schermo',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Seleziona tutto',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Prezzo di listino',
- 'Send by E-Mail' => 'Spedisci via e-mail',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Servizio',
- 'Service Items' => 'Inventario dei servizi',
- 'Services' => 'Servizi',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurazione dei modelli',
- 'Ship' => 'Invio',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Spedire a',
- 'Ship via' => 'Porto',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Scaricati oltre la disponibilità',
- 'Signature' => 'Firma',
- 'Source' => 'Riferimento',
- 'Spoolfile' => '',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Sollecito',
- 'Statement Balance' => 'Saldo',
- 'Statement sent to' => 'Sollecito mandato a',
- 'Statements sent to printer!' => 'Solleciti mandati in stampa!',
- 'Stock' => 'Magazzino',
- 'Stock Assembly' => 'Magazzino assemblati',
- 'Stylesheet' => 'Foglio di stile',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Imposta',
- 'Tax Accounts' => 'Conti relativi a imposte',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Debito IVA',
- 'Tax paid' => 'Credito IVA',
- 'Taxable' => 'Conti di imposta applicabili',
- 'Template saved!' => 'Modello salvato!',
- 'Templates' => 'Modelli',
- 'Terms' => 'Pagamento a ',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'I seguenti insiemi di dati non sono in uso e possono essere cancellati',
- 'The following Datasets need to be updated' => 'I seguenti insiemi di dati devono essere aggiornati',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Questo è un controllo preliminare per verificare le risorse esistenti. Nulla verrà creato o cancellato in questa fase!',
- 'Till' => '',
- 'To' => 'A',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Per aggiungere un utente ad un gruppo, modifica i dati dell\'utente, cambia lo username e salva. Un nuovo utente con gli stessi dati verrà salvato con il nuovo username.',
- 'Top Level' => 'Livello Top',
- 'Total' => 'Totale',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Manca la data della scrittura!',
- 'Transaction deleted!' => 'Scrittura cancellata!',
- 'Transaction posted!' => 'Scrittura salvata!',
- 'Transaction reversal enforced for all dates' => 'Uso della partita doppia forzato per tutte le date',
- 'Transaction reversal enforced up to' => 'Uso della partita doppia forzato fino a',
- 'Transactions' => 'scritture',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Bilancio di verifica',
- 'Type of Business' => '',
- 'Unit' => 'Unità',
- 'Unit of measure' => 'Unità di misura',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Aggiorna',
- 'Update Dataset' => 'Aggiorna l\'insieme di dati',
- 'Updated' => 'Aggiornato',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Usa modelli',
- 'User' => 'Utente',
- 'User deleted!' => 'Utente cancellato!',
- 'User saved!' => 'Utente salvato!',
- 'Valid until' => '',
- 'Vendor' => 'Fornitore',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Fattura di acquisto',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Fornitore cancellato!',
- 'Vendor missing!' => 'Manca il fornitore!',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'Vendor saved!' => 'Fornitore salvato!',
- 'Vendors' => 'Fornitori',
- 'Version' => 'Versione',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unità di misura',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Sì',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Non hai inserito il nome!',
- 'You must enter a host and port for local and remote connections!' => 'Si deve inserire un servente e una porta per le connessioni locali e remote!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'Al',
- 'days' => 'giorni',
- 'does not exist' => 'non esiste',
- 'done' => '',
- 'ea' => 'ci',
- 'for Period' => 'nel periodo',
- 'is already a member!' => 'è già utente della procedura!',
- 'is not a member!' => 'non è un utente della procedura!',
- 'localhost' => 'localhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'creato!',
- 'successfully deleted!' => 'cancellato!',
- 'website' => 'sito web',
-};
-
-1;
diff --git a/sql-ledger/locale/it/am b/sql-ledger/locale/it/am
deleted file mode 100644
index cd9d37a..0000000
--- a/sql-ledger/locale/it/am
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'AP' => 'Debiti verso fornitori',
- 'AR' => 'Crediti verso clienti',
- 'About' => 'Informazioni',
- 'Account' => 'Conto',
- 'Account Number' => 'Numero di conto',
- 'Account Number missing!' => 'Manca il numero di conto!',
- 'Account Type' => 'Tipo di conto',
- 'Account Type missing!' => 'Manca il tipo del conto!',
- 'Account deleted!' => 'Conto cancellato!',
- 'Account saved!' => 'Conto salvato!',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Account' => 'Inserimento conto',
- 'Add GIFI' => 'Inserimento codice GIFI',
- 'Address' => 'Indirizzo',
- 'Asset' => 'Attività',
- 'Audit Control' => 'Controllo delle revisioni',
- 'Backup sent to' => 'Copia di sicurezza inviata a',
- 'Books are open' => 'Le scritture possono essere modificate',
- 'Business Number' => 'Partita IVA',
- 'COGS' => '"Cost of goods sold"',
- 'Cannot delete account!' => 'Non si può cancellare il conto!',
- 'Cannot delete default account!' => 'Non si può cancellare il conto predefinito!',
- 'Cannot save account!' => 'Non si può salvare il conto!',
- 'Cannot save preferences!' => 'Non si possono salvare le preferenze!',
- 'Cash' => 'Cassa',
- 'Character Set' => 'Insieme di caratteri',
- 'Chart of Accounts' => 'Piano dei conti',
- 'Close Books up to' => 'Blocca le scritture fino al',
- 'Company' => 'Ragione sociale',
- 'Continue' => 'Continua',
- 'Copy to COA' => 'Inserire come conto',
- 'Credit' => 'Avere',
- 'Database Host' => 'Servente della base di dati',
- 'Dataset' => 'Insieme di dati',
- 'Date Format' => 'Formato della data',
- 'Debit' => 'Dare',
- 'Delete' => 'Cancella',
- 'Delete Account' => 'Cancella conto',
- 'Description' => 'Descrizione',
- 'Discount' => 'Sconto',
- 'Dropdown Limit' => 'Limite per i menù a discesa',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Modifica',
- 'Edit Account' => 'Modifica conto',
- 'Edit GIFI' => 'Modifica codice GIFI',
- 'Edit Preferences for' => 'Modifica preferenze di',
- 'Edit Template' => 'Modifica modello',
- 'Enforce transaction reversal for all dates' => 'Impedisce la modifica delle scritture per tutte le date',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Valute (si possono inserire sigle di tre lettere separate da due punti, per esempio "EUR:USD:CAD"; è necessario indicare anche la valuta locale):',
- 'Equity' => 'Capitale netto',
- 'Expense' => 'Costi',
- 'Expense Account' => 'Costi per prestazione di servizi',
- 'Expense/Asset' => 'Acquisti/Attività',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Proventi da cambio valuta',
- 'Foreign Exchange Loss' => 'Oneri da cambio valuta',
- 'GIFI' => 'Codice GIFI',
- 'GIFI deleted!' => 'Codice GIFI cancellato!',
- 'GIFI missing!' => 'Codice GIFI mancante!',
- 'GIFI saved!' => 'Codice GIFI salvato!',
- 'Heading' => 'Intestazione',
- 'Include in drop-down menus' => 'Da includere nei menù a discesa dei modelli seguenti',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Includere questo conto nei modelli di inserimento di clienti e fornitori, per l\'inserimento successivo dell\'imposta nelle scritture?',
- 'Inventory' => 'Rimanenze/Acquisti',
- 'Inventory Account' => 'Conto degli acquisti',
- 'Is this a summary account to record' => 'Questo conto è una contropartita corrispondente a:',
- 'Language' => 'Lingua',
- 'Last Numbers & Default Accounts' => 'Ultimi numeri e conti predefiniti',
- 'Liability' => 'Passività',
- 'Licensed to' => 'Dato in licenza a',
- 'Link' => 'Collegamenti',
- 'Name' => 'Nome',
- 'No' => 'No',
- 'No email address for' => 'Manca l\'indirizzo e-mail per',
- 'Number' => 'Codice',
- 'Number Format' => 'Formato numerico',
- 'Parts Inventory' => 'Magazzino degli articoli',
- 'Password' => 'Parola d\'ordine',
- 'Payables' => 'Debiti verso fornitori',
- 'Payment' => 'Pagamento',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Preferenze salvate!',
- 'Printer' => 'Stampante',
- 'Rate' => 'Tasso',
- 'Receivables' => 'Crediti verso clienti',
- 'Reference' => 'Documento',
- 'Retained Earnings' => 'Proventi',
- 'Save' => 'Salva',
- 'Save as new' => 'Salva come nuovo',
- 'Service Items' => 'Inventario dei servizi',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Foglio di stile',
- 'Tax' => 'Imposta',
- 'Tax Accounts' => 'Conti relativi a imposte',
- 'Template saved!' => 'Modello salvato!',
- 'Transaction reversal enforced for all dates' => 'Uso della partita doppia forzato per tutte le date',
- 'Transaction reversal enforced up to' => 'Uso della partita doppia forzato fino a',
- 'User' => 'Utente',
- 'Version' => 'Versione',
- 'Weight Unit' => 'Unità di misura',
- 'Yes' => 'Sì',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'inserimento_conto' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continua' => 'continue',
- 'inserire_come_conto' => 'copy_to_coa',
- 'cancella' => 'delete',
- 'modifica' => 'edit',
- 'modifica_conto' => 'edit_account',
- 'salva' => 'save',
- 'salva_come_nuovo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ap b/sql-ledger/locale/it/ap
deleted file mode 100644
index ea1ae1d..0000000
--- a/sql-ledger/locale/it/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Scrittura fornitore',
- 'AP Transactions' => 'Scritture fornitori',
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Amount Due' => 'Importo dovuto',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Transaction' => 'Sei sicuro di voler cancellare la scrittura',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Non si può cancellare la scrittura',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cannot post transaction for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Check' => 'Assegno',
- 'Closed' => 'Chiuso',
- 'Confirm!' => 'Conferma!',
- 'Continue' => 'Continua',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data di pagamento',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'Due Date missing!' => 'Data di scadenza mancante!',
- 'Employee' => 'Dipendente',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'ID' => 'ID',
- 'Include in Report' => 'Includere nel prospetto',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Open' => 'Aperto/i',
- 'Order' => 'Ordine',
- 'Order Number' => 'Ordine numero',
- 'PDF' => 'PDF',
- 'Paid' => 'Importo pagato',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payments' => 'Pagamenti',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Postscript' => 'PostScript',
- 'Print' => 'Stampa',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Receipt' => 'Riscossione',
- 'Remaining' => 'Rimanente',
- 'Screen' => 'Schermo',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Source' => 'Riferimento',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Transaction deleted!' => 'Scrittura cancellata!',
- 'Transaction posted!' => 'Scrittura salvata!',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor missing!' => 'Manca il fornitore!',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'Yes' => 'Sì',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'scrittura_fornitore' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'stampa' => 'print',
- 'print_and_post' => 'print_and_post',
- 'aggiorna' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ar b/sql-ledger/locale/it/ar
deleted file mode 100644
index b30c62e..0000000
--- a/sql-ledger/locale/it/ar
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Scrittura cliente',
- 'AR Transactions' => 'Scritture clienti',
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Amount Due' => 'Importo dovuto',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Transaction' => 'Sei sicuro di voler cancellare la scrittura',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Non si può cancellare la scrittura',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cannot post transaction for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Check' => 'Assegno',
- 'Closed' => 'Chiuso',
- 'Confirm!' => 'Conferma!',
- 'Continue' => 'Continua',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data di pagamento',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'Due Date missing!' => 'Data di scadenza mancante!',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'ID' => 'ID',
- 'Include in Report' => 'Includere nel prospetto',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Open' => 'Aperto/i',
- 'Order' => 'Ordine',
- 'Order Number' => 'Ordine numero',
- 'PDF' => 'PDF',
- 'Paid' => 'Importo pagato',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payments' => 'Pagamenti',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Postscript' => 'PostScript',
- 'Print' => 'Stampa',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Receipt' => 'Riscossione',
- 'Remaining' => 'Rimanente',
- 'Salesperson' => 'Addetto alle vendite',
- 'Screen' => 'Schermo',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Ship via' => 'Porto',
- 'Source' => 'Riferimento',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Transaction deleted!' => 'Scrittura cancellata!',
- 'Transaction posted!' => 'Scrittura salvata!',
- 'Update' => 'Aggiorna',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'Yes' => 'Sì',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'scrittura_cliente' => 'ar_transaction',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'stampa' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'aggiorna' => 'update',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/arap b/sql-ledger/locale/it/arap
deleted file mode 100644
index e65606c..0000000
--- a/sql-ledger/locale/it/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Indirizzo',
- 'Continue' => 'Continua',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Description' => 'Descrizione',
- 'Number' => 'Codice',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continua' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/it/arapprn b/sql-ledger/locale/it/arapprn
deleted file mode 100644
index e5e6059..0000000
--- a/sql-ledger/locale/it/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Amount' => 'Importo',
- 'Check' => 'Assegno',
- 'Continue' => 'Continua',
- 'Date' => 'Data',
- 'PDF' => 'PDF',
- 'Postscript' => 'PostScript',
- 'Receipt' => 'Riscossione',
- 'Screen' => 'Schermo',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Source' => 'Riferimento',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continua' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/it/bp b/sql-ledger/locale/it/bp
deleted file mode 100644
index b583383..0000000
--- a/sql-ledger/locale/it/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Confirm!' => 'Conferma!',
- 'Continue' => 'Continua',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Date' => 'Data',
- 'From' => 'Dal',
- 'Invoice' => 'Fattura',
- 'Invoice Number' => 'Fattura numero',
- 'Order' => 'Ordine',
- 'Order Number' => 'Ordine numero',
- 'Print' => 'Stampa',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Receipts' => 'Riscossioni',
- 'Reference' => 'Documento',
- 'Sales Orders' => 'Ordini di vendita',
- 'Select all' => 'Seleziona tutto',
- 'To' => 'A',
- 'Vendor' => 'Fornitore',
- 'Yes' => 'Sì',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continua' => 'continue',
- 'stampa' => 'print',
- 'remove' => 'remove',
- 'seleziona_tutto' => 'select_all',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ca b/sql-ledger/locale/it/ca
deleted file mode 100644
index 9c35f41..0000000
--- a/sql-ledger/locale/it/ca
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Piano dei conti',
- 'Credit' => 'Avere',
- 'Current' => 'Corrente',
- 'Date' => 'Data',
- 'Debit' => 'Dare',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Description' => 'Descrizione',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'Include in Report' => 'Includere nel prospetto',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'List Transactions' => 'Lista scritture',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Project Number' => 'Numero progetto',
- 'Reference' => 'Documento',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Subtotal' => 'Totale parziale',
- 'To' => 'A',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'lista_scritture' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/it/cp b/sql-ledger/locale/it/cp
deleted file mode 100644
index 66cdfa9..0000000
--- a/sql-ledger/locale/it/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Debiti verso fornitori',
- 'AR' => 'Crediti verso clienti',
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Address' => 'Indirizzo',
- 'All' => 'Tutti',
- 'Amount' => 'Importo',
- 'Amount Due' => 'Importo dovuto',
- 'Cannot process payment for a closed period!' => 'Non si può elaborare un pagamento per un periodo chiuso!',
- 'Continue' => 'Continua',
- 'Currency' => 'Valuta',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Date missing!' => 'Manca la data!',
- 'Deposit' => 'Deposito',
- 'Description' => 'Descrizione',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Invoice' => 'Fattura',
- 'Invoices' => 'Fatture',
- 'Number' => 'Codice',
- 'PDF' => 'PDF',
- 'Payment' => 'Pagamento',
- 'Payment posted!' => 'Pagamento salvato',
- 'Post' => 'Salva',
- 'Postscript' => 'PostScript',
- 'Print' => 'Stampa',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Receipt' => 'Riscossione',
- 'Screen' => 'Schermo',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Source' => 'Riferimento',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continua' => 'continue',
- 'salva' => 'post',
- 'stampa' => 'print',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ct b/sql-ledger/locale/it/ct
deleted file mode 100644
index 03a6ff2..0000000
--- a/sql-ledger/locale/it/ct
+++ /dev/null
@@ -1,135 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Scrittura fornitore',
- 'AP Transactions' => 'Scritture fornitori',
- 'AR Transaction' => 'Scrittura cliente',
- 'AR Transactions' => 'Scritture clienti',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Customer' => 'Inserimento cliente',
- 'Add Vendor' => 'Inserimento fornitore',
- 'Address' => 'Indirizzo',
- 'All' => 'Tutti',
- 'Amount' => 'Importo',
- 'Bcc' => 'Bcc',
- 'Cannot delete customer!' => 'Non si può cancellare il cliente!',
- 'Cannot delete vendor!' => 'Non si può cancellare il fornitore',
- 'Cc' => 'Cc',
- 'Closed' => 'Chiuso',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Customer deleted!' => 'Cliente cancellato!',
- 'Customer saved!' => 'Cliente salvato!',
- 'Customers' => 'Clienti',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Discount' => 'Sconto',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Modifica cliente',
- 'Edit Vendor' => 'Modifica fornitore',
- 'Employee' => 'Dipendente',
- 'Fax' => 'Fax',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'Group' => 'Gruppo',
- 'ID' => 'ID',
- 'Include in Report' => 'Includere nel prospetto',
- 'Invoice' => 'Fattura',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Language' => 'Lingua',
- 'Name' => 'Nome',
- 'Name missing!' => 'Manca il nome!',
- 'Notes' => 'Note',
- 'Number' => 'Codice',
- 'Open' => 'Aperto/i',
- 'Order' => 'Ordine',
- 'Orphaned' => 'Inutilizzati',
- 'Phone' => 'Tel.',
- 'Project Number' => 'Numero progetto',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Qty' => 'Q.tà',
- 'Sales Invoice' => 'Fattura di vendita',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Orders' => 'Ordini di vendita',
- 'Salesperson' => 'Addetto alle vendite',
- 'Save' => 'Salva',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Sell Price' => 'Prezzo di listino',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'Taxable' => 'Conti di imposta applicabili',
- 'Terms' => 'Pagamento a ',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
- 'Vendor Invoice' => 'Fattura di acquisto',
- 'Vendor deleted!' => 'Fornitore cancellato!',
- 'Vendor saved!' => 'Fornitore salvato!',
- 'Vendors' => 'Fornitori',
- 'days' => 'giorni',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'scrittura_fornitore' => 'ap_transaction',
- 'scrittura_cliente' => 'ar_transaction',
- 'inserimento_cliente' => 'add_customer',
- 'inserimento_fornitore' => 'add_vendor',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'pricelist' => 'pricelist',
- 'ordine_di_acquisto' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'fattura_di_vendita' => 'sales_invoice',
- 'ordine_di_vendita' => 'sales_order',
- 'salva' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'aggiorna' => 'update',
- 'fattura_di_acquisto' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/it/gl b/sql-ledger/locale/it/gl
deleted file mode 100644
index 23e14d3..0000000
--- a/sql-ledger/locale/it/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Scrittura fornitore',
- 'AR Transaction' => 'Scrittura cliente',
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add General Ledger Transaction' => 'Inserimento scrittura di contabilità generale',
- 'Address' => 'Indirizzo',
- 'All' => 'Tutti',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Transaction' => 'Sei sicuro di voler cancellare la scrittura',
- 'Asset' => 'Attività',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => 'Non si può cancellare la scrittura',
- 'Cannot post transaction for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Confirm!' => 'Conferma!',
- 'Continue' => 'Continua',
- 'Credit' => 'Avere',
- 'Current' => 'Corrente',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Debit' => 'Dare',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'Edit General Ledger Transaction' => 'Modifica scrittura di contabilità generale',
- 'Equity' => 'Capitale netto',
- 'Expense' => 'Costi',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'GL Transaction' => 'Scrittura di contabilità generale',
- 'General Ledger' => 'Contabilità generale',
- 'ID' => 'ID',
- 'Include in Report' => 'Includere nel prospetto',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Liability' => 'Passività',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Project' => 'Progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Reference' => 'Documento',
- 'Reference missing!' => 'Manca il documento!',
- 'Reports' => 'Prospetti',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Source' => 'Riferimento',
- 'Subtotal' => 'Totale parziale',
- 'To' => 'A',
- 'Transaction Date missing!' => 'Manca la data della scrittura!',
- 'Transaction deleted!' => 'Scrittura cancellata!',
- 'Transaction posted!' => 'Scrittura salvata!',
- 'Update' => 'Aggiorna',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'Yes' => 'Sì',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'scrittura_fornitore' => 'ap_transaction',
- 'scrittura_cliente' => 'ar_transaction',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'scrittura_di_contabilità_generale' => 'gl_transaction',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'aggiorna' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/hr b/sql-ledger/locale/it/hr
deleted file mode 100644
index 44ca740..0000000
--- a/sql-ledger/locale/it/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Debiti verso fornitori',
- 'Accounting Menu' => 'Menù contabilità',
- 'Address' => 'Indirizzo',
- 'Administrator' => 'Amministratore',
- 'All' => 'Tutti',
- 'Amount' => 'Importo',
- 'Continue' => 'Continua',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'E-mail' => 'E-mail',
- 'Employee' => 'Dipendente',
- 'Expense' => 'Costi',
- 'ID' => 'ID',
- 'Include in Report' => 'Includere nel prospetto',
- 'Login' => 'Login',
- 'Name' => 'Nome',
- 'Name missing!' => 'Manca il nome!',
- 'Notes' => 'Note',
- 'Number' => 'Codice',
- 'Orphaned' => 'Inutilizzati',
- 'Rate' => 'Tasso',
- 'Sales' => 'Vendite',
- 'Save' => 'Salva',
- 'Save as new' => 'Salva come nuovo',
- 'Update' => 'Aggiorna',
- 'User' => 'Utente',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'salva' => 'save',
- 'salva_come_nuovo' => 'save_as_new',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ic b/sql-ledger/locale/it/ic
deleted file mode 100644
index 442fb43..0000000
--- a/sql-ledger/locale/it/ic
+++ /dev/null
@@ -1,224 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menù contabilità',
- 'Active' => 'Attivi',
- 'Add' => 'Inserimento',
- 'Add Assembly' => 'Inserimento assemblato',
- 'Add Part' => 'Inserimento articolo',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Add Service' => 'Inserimento servizio',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Assemblies' => 'Assemblati',
- 'Assemblies restocked!' => 'Assemblati ricaricati!',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => '"BOM"',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'COGS' => '"Cost of goods sold"',
- 'Cannot delete item!' => 'Non si può cancellare l\'articolo',
- 'Cannot stock assemblies!' => 'Non si possono caricare gli assemblati!',
- 'Cash' => 'Cassa',
- 'Cc' => 'Cc',
- 'Closed' => 'Chiuso',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Drawing' => 'Disegno',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Assembly' => 'Modifica assemblato',
- 'Edit Part' => 'Modifica articolo',
- 'Edit Service' => 'Modifica servizio',
- 'Employee' => 'Dipendente',
- 'Expense' => 'Costi',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'Image' => 'Immagine',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Includere nel prospetto',
- 'Individual Items' => 'Articoli individuali',
- 'Inventory' => 'Rimanenze/Acquisti',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La quantità in rimanenza deve essere zero per poter mettere l\'assemblato come obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La quantità in rimamenza deve essere zero per poter mettere l\'articolo come obsoleto!',
- 'Invoice' => 'Fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Item deleted!' => 'Articolo cancellato!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Line Total' => 'Totale riga',
- 'Link Accounts' => 'Collegamenti tra conti',
- 'List Price' => 'Prezzo suggerito per la vendita al dettaglio',
- 'Make' => 'Produttore',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modello',
- 'Name' => 'Nome',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'Obsolete' => 'Obsoleto/i',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'On Hand' => 'Disponibile/i',
- 'Open' => 'Aperto/i',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'Orphaned' => 'Inutilizzati',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Part' => 'Componente',
- 'Parts' => 'Articoli',
- 'Phone' => 'Tel.',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Project' => 'Progetto',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Qty' => 'Q.tà',
- 'ROP' => 'Soglia di riordino',
- 'Recd' => 'Ricevuto',
- 'Required by' => 'Consegna',
- 'Sales Invoice' => 'Fattura di vendita',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Orders' => 'Ordini di vendita',
- 'Save' => 'Salva',
- 'Save as new' => 'Salva come nuovo',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Sell Price' => 'Prezzo di listino',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Services' => 'Servizi',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Short' => 'Scaricati oltre la disponibilità',
- 'Stock' => 'Magazzino',
- 'Stock Assembly' => 'Magazzino assemblati',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'To' => 'A',
- 'Top Level' => 'Livello Top',
- 'Unit' => 'Unità',
- 'Unit of measure' => 'Unità di misura',
- 'Update' => 'Aggiorna',
- 'Updated' => 'Aggiornato',
- 'Vendor' => 'Fornitore',
- 'Vendor Invoice' => 'Fattura di acquisto',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'Weight' => 'Peso',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'days' => 'giorni',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'inserimento_assemblato' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'inserimento_articolo' => 'add_part',
- 'inserimento_servizio' => 'add_service',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'modifica_assemblato' => 'edit_assembly',
- 'modifica_articolo' => 'edit_part',
- 'modifica_servizio' => 'edit_service',
- 'salva' => 'save',
- 'salva_come_nuovo' => 'save_as_new',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/io b/sql-ledger/locale/it/io
deleted file mode 100644
index 16623fc..0000000
--- a/sql-ledger/locale/it/io
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Address' => 'Indirizzo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'Cc' => 'Cc',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'In-line' => 'In-line',
- 'Invoice' => 'Fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'No.' => 'No.',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Part' => 'Componente',
- 'Phone' => 'Tel.',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Project' => 'Progetto',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Qty' => 'Q.tà',
- 'Recd' => 'Ricevuto',
- 'Required by' => 'Consegna',
- 'Sales Order' => 'Ordine di vendita',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'To' => 'A',
- 'Unit' => 'Unità',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continua' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ir b/sql-ledger/locale/it/ir
deleted file mode 100644
index 5551339..0000000
--- a/sql-ledger/locale/it/ir
+++ /dev/null
@@ -1,186 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Add Vendor Invoice' => 'Inserimento fattura di acquisto',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Invoice Number' => 'Sei sicuro di voler cancellare la fattura numero',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'Cannot delete invoice!' => 'Non si può cancellare la fattura!',
- 'Cannot post invoice for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post invoice!' => 'Non si può salvare la fattura!',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Conferma!',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit Limit' => 'Fido',
- 'Currency' => 'Valuta',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Vendor Invoice' => 'Modifica fattura di acquisto',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'In-line' => 'In-line',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Invoice deleted!' => 'Fattura cancellata!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Language' => 'Lingua',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Part' => 'Componente',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payments' => 'Pagamenti',
- 'Phone' => 'Tel.',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Project' => 'Progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Qty' => 'Q.tà',
- 'Recd' => 'Ricevuto',
- 'Record in' => 'Registra in',
- 'Remaining' => 'Rimanente',
- 'Required by' => 'Consegna',
- 'Sales Order' => 'Ordine di vendita',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Source' => 'Riferimento',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor missing!' => 'Manca il fornitore!',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'Yes' => 'Sì',
- 'ea' => 'ci',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'ordine_di_acquisto' => 'purchase_order',
- 'aggiorna' => 'update',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/is b/sql-ledger/locale/it/is
deleted file mode 100644
index 7a60dae..0000000
--- a/sql-ledger/locale/it/is
+++ /dev/null
@@ -1,196 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Invoice' => 'Inserimento fattura di vendita',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Invoice Number' => 'Sei sicuro di voler cancellare la fattura numero',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'Cannot delete invoice!' => 'Non si può cancellare la fattura!',
- 'Cannot post invoice for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post invoice!' => 'Non si può salvare la fattura!',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Conferma!',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit Limit' => 'Fido',
- 'Currency' => 'Valuta',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Sales Invoice' => 'Modifica fattura di vendita',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'In-line' => 'In-line',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Invoice deleted!' => 'Fattura cancellata!',
- 'Invoice posted!' => 'Fattura salvata!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Part' => 'Componente',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payments' => 'Pagamenti',
- 'Phone' => 'Tel.',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Print' => 'Stampa',
- 'Project' => 'Progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Qty' => 'Q.tà',
- 'Recd' => 'Ricevuto',
- 'Record in' => 'Registra in',
- 'Remaining' => 'Rimanente',
- 'Required by' => 'Consegna',
- 'Sales Order' => 'Ordine di vendita',
- 'Salesperson' => 'Addetto alle vendite',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Ship via' => 'Porto',
- 'Source' => 'Riferimento',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'Yes' => 'Sì',
- 'ea' => 'ci',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'e_mail' => 'e_mail',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'stampa' => 'print',
- 'print_and_post' => 'print_and_post',
- 'ordine_di_vendita' => 'sales_order',
- 'spedire_a' => 'ship_to',
- 'aggiorna' => 'update',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/login b/sql-ledger/locale/it/login
deleted file mode 100644
index 690354f..0000000
--- a/sql-ledger/locale/it/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Ragione sociale',
- 'Continue' => 'Continua',
- 'Incorrect Dataset version!' => 'Versione dell\'insieme di dati non corretta!',
- 'Incorrect Password!' => 'Parola d\'ordine errata!',
- 'Login' => 'Login',
- 'Name' => 'Nome',
- 'Password' => 'Parola d\'ordine',
- 'Version' => 'Versione',
- 'You did not enter a name!' => 'Non hai inserito il nome!',
- 'is not a member!' => 'non è un utente della procedura!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/it/menu b/sql-ledger/locale/it/menu
deleted file mode 100644
index b41b139..0000000
--- a/sql-ledger/locale/it/menu
+++ /dev/null
@@ -1,81 +0,0 @@
-$self{texts} = {
- 'AP' => 'Debiti verso fornitori',
- 'AP Aging' => 'Partite aperte',
- 'AP Transaction' => 'Scrittura fornitore',
- 'AR' => 'Crediti verso clienti',
- 'AR Aging' => 'Partite aperte',
- 'AR Transaction' => 'Scrittura cliente',
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Account' => 'Inserimento conto',
- 'Add Assembly' => 'Inserimento assemblato',
- 'Add Customer' => 'Inserimento cliente',
- 'Add GIFI' => 'Inserimento codice GIFI',
- 'Add Group' => 'Inserimento gruppo',
- 'Add Part' => 'Inserimento articolo',
- 'Add Project' => 'Inserimento progetto',
- 'Add Service' => 'Inserimento servizio',
- 'Add Transaction' => 'Inserimento scrittura',
- 'Add Vendor' => 'Inserimento fornitore',
- 'Assemblies' => 'Assemblati',
- 'Audit Control' => 'Controllo delle revisioni',
- 'Backup' => 'Copia di sicurezza',
- 'Balance Sheet' => 'Stato patrimoniale',
- 'Cash' => 'Cassa',
- 'Chart of Accounts' => 'Piano dei conti',
- 'Check' => 'Assegno',
- 'Customers' => 'Clienti',
- 'Description' => 'Descrizione',
- 'General Ledger' => 'Contabilità generale',
- 'Goods & Services' => 'Beni e servizi',
- 'Groups' => 'Gruppi',
- 'HTML Templates' => 'Modelli HTML',
- 'Income Statement' => 'Conto economico',
- 'Invoice' => 'Fattura',
- 'LaTeX Templates' => 'Modelli LaTeX',
- 'Language' => 'Lingua',
- 'List Accounts' => 'Lista conti',
- 'List GIFI' => 'Lista codici GIFI',
- 'Logout' => 'Logout',
- 'Open' => 'Aperto/i',
- 'Order Entry' => 'Ordini',
- 'Packing List' => 'Lista etichette',
- 'Parts' => 'Articoli',
- 'Payment' => 'Pagamento',
- 'Payments' => 'Pagamenti',
- 'Preferences' => 'Preferenze',
- 'Print' => 'Stampa',
- 'Projects' => 'Progetti',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Receipt' => 'Riscossione',
- 'Receipts' => 'Riscossioni',
- 'Reconciliation' => 'Conciliazione',
- 'Reports' => 'Prospetti',
- 'Sales Invoice' => 'Fattura di vendita',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Orders' => 'Ordini di vendita',
- 'Save to File' => 'Salva su file',
- 'Send by E-Mail' => 'Spedisci via e-mail',
- 'Services' => 'Servizi',
- 'Ship' => 'Invio',
- 'Statement' => 'Sollecito',
- 'Stock Assembly' => 'Magazzino assemblati',
- 'Stylesheet' => 'Foglio di stile',
- 'System' => 'Sistema',
- 'Tax collected' => 'Debito IVA',
- 'Tax paid' => 'Credito IVA',
- 'Transactions' => 'scritture',
- 'Trial Balance' => 'Bilancio di verifica',
- 'Vendor Invoice' => 'Fattura di acquisto',
- 'Vendors' => 'Fornitori',
- 'Version' => 'Versione',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/it/oe b/sql-ledger/locale/it/oe
deleted file mode 100644
index 6d0c3d4..0000000
--- a/sql-ledger/locale/it/oe
+++ /dev/null
@@ -1,235 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Invoice' => 'Inserimento fattura di vendita',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Add Vendor Invoice' => 'Inserimento fattura di acquisto',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Order Number' => 'Sei sicuro di voler cancellare l\'ordine numero',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'C' => 'Ch.',
- 'Cannot delete order!' => 'Non si può cancellare l\'ordine',
- 'Cannot save order!' => 'Non si può salvare l\'ordine!',
- 'Cc' => 'Cc',
- 'Closed' => 'Chiuso',
- 'Confirm!' => 'Conferma!',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Done' => 'Fatto',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Purchase Order' => 'Modifica ordine di acquisto',
- 'Edit Sales Order' => 'Modifica ordine di vendita',
- 'Employee' => 'Dipendente',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Includere nel prospetto',
- 'Invoice' => 'Fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'O' => 'Ap.',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Open' => 'Aperto/i',
- 'Order' => 'Ordine',
- 'Order Date' => 'Data dell\'ordine',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'Order deleted!' => 'Ordine cancellato!',
- 'Order saved!' => 'Ordine salvato!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Part' => 'Componente',
- 'Phone' => 'Tel.',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Print' => 'Stampa',
- 'Project' => 'Progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Qty' => 'Q.tà',
- 'Recd' => 'Ricevuto',
- 'Remaining' => 'Rimanente',
- 'Required by' => 'Consegna',
- 'Sales Invoice' => 'Fattura di vendita',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Orders' => 'Ordini di vendita',
- 'Salesperson' => 'Addetto alle vendite',
- 'Save' => 'Salva',
- 'Save as new' => 'Salva come nuovo',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Ship via' => 'Porto',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'Terms' => 'Pagamento a ',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor Invoice' => 'Fattura di acquisto',
- 'Vendor missing!' => 'Manca il fornitore!',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'Yes' => 'Sì',
- 'days' => 'giorni',
- 'ea' => 'ci',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'fatto' => 'done',
- 'e_mail' => 'e_mail',
- 'stampa' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ordine_di_acquisto' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'fattura_di_vendita' => 'sales_invoice',
- 'ordine_di_vendita' => 'sales_order',
- 'salva' => 'save',
- 'salva_come_nuovo' => 'save_as_new',
- 'spedire_a' => 'ship_to',
- 'transfer' => 'transfer',
- 'aggiorna' => 'update',
- 'fattura_di_acquisto' => 'vendor_invoice',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/pe b/sql-ledger/locale/it/pe
deleted file mode 100644
index eef434c..0000000
--- a/sql-ledger/locale/it/pe
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menù contabilità',
- 'Add Group' => 'Inserimento gruppo',
- 'Add Project' => 'Inserimento progetto',
- 'All' => 'Tutti',
- 'Continue' => 'Continua',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'Edit Group' => 'Modifica gruppo',
- 'Edit Project' => 'Modifica progetto',
- 'Group' => 'Gruppo',
- 'Group deleted!' => 'Gruppo cancellato',
- 'Group missing!' => 'Gruppo mancante',
- 'Group saved!' => 'Gruppo salvato',
- 'Groups' => 'Gruppi',
- 'Language' => 'Lingua',
- 'Number' => 'Codice',
- 'Orphaned' => 'Inutilizzati',
- 'Project' => 'Progetto',
- 'Project Number' => 'Numero progetto',
- 'Project Number missing!' => 'Manca il codice del progetto!',
- 'Project deleted!' => 'Progetto cancellato!',
- 'Project saved!' => 'Progetto salvato!',
- 'Projects' => 'Progetti',
- 'Save' => 'Salva',
- 'Update' => 'Aggiorna',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'inserimento_gruppo' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'inserimento_progetto' => 'add_project',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'salva' => 'save',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/pos b/sql-ledger/locale/it/pos
deleted file mode 100644
index a49e13e..0000000
--- a/sql-ledger/locale/it/pos
+++ /dev/null
@@ -1,57 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Continue' => 'Continua',
- 'Credit Limit' => 'Fido',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Delete' => 'Cancella',
- 'Description' => 'Descrizione',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Extended' => 'Totale riga',
- 'From' => 'Dal',
- 'Language' => 'Lingua',
- 'Number' => 'Codice',
- 'Open' => 'Aperto/i',
- 'Paid' => 'Importo pagato',
- 'Post' => 'Salva',
- 'Price' => 'Prezzo',
- 'Print' => 'Stampa',
- 'Qty' => 'Q.tà',
- 'Receipts' => 'Riscossioni',
- 'Record in' => 'Registra in',
- 'Remaining' => 'Rimanente',
- 'Salesperson' => 'Addetto alle vendite',
- 'Screen' => 'Schermo',
- 'Source' => 'Riferimento',
- 'Subtotal' => 'Totale parziale',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'salva' => 'post',
- 'stampa' => 'print',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/ps b/sql-ledger/locale/it/ps
deleted file mode 100644
index 8d3a980..0000000
--- a/sql-ledger/locale/it/ps
+++ /dev/null
@@ -1,281 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Partite aperte',
- 'AR Aging' => 'Partite aperte',
- 'AR Transaction' => 'Scrittura cliente',
- 'AR Transactions' => 'Scritture clienti',
- 'Account' => 'Conto',
- 'Account Number' => 'Numero di conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Accounts' => 'Conti',
- 'Add Purchase Order' => 'Inserimento ordine di acquisto',
- 'Add Sales Invoice' => 'Inserimento fattura di vendita',
- 'Add Sales Order' => 'Inserimento ordine di vendita',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Amount Due' => 'Importo dovuto',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Invoice Number' => 'Sei sicuro di voler cancellare la fattura numero',
- 'Are you sure you want to delete Transaction' => 'Sei sicuro di voler cancellare la scrittura',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Stato patrimoniale',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'Cannot delete invoice!' => 'Non si può cancellare la fattura!',
- 'Cannot delete transaction!' => 'Non si può cancellare la scrittura',
- 'Cannot post invoice for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post invoice!' => 'Non si può salvare la fattura!',
- 'Cannot post payment for a closed period!' => 'Non si possono salvare pagamenti per un periodo chiuso!',
- 'Cannot post transaction for a closed period!' => 'Non si può salvare una scrittura per un periodo chiuso!',
- 'Cannot post transaction!' => 'Non si può salvare la scrittura!',
- 'Cash' => 'Cassa',
- 'Cc' => 'Cc',
- 'Check' => 'Assegno',
- 'Closed' => 'Chiuso',
- 'Compare to' => 'Confronta con',
- 'Confirm!' => 'Conferma!',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit' => 'Avere',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data di pagamento',
- 'Debit' => 'Dare',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Decimalplaces' => 'Numero di decimali',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'Due Date missing!' => 'Data di scadenza mancante!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Manda il sollecito via e-mail a',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Sales Invoice' => 'Modifica fattura di vendita',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasso di cambio',
- 'Exchange rate for payment missing!' => 'Manca il tasso di cambio per il pagamento!',
- 'Exchange rate missing!' => 'Manca il tasso di cambio!',
- 'Extended' => 'Totale riga',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'Group' => 'Gruppo',
- 'Group Items' => 'Articoli del gruppo',
- 'Heading' => 'Intestazione',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Includere nel prospetto',
- 'Income Statement' => 'Conto economico',
- 'Invoice' => 'Fattura',
- 'Invoice Date' => 'Data fattura',
- 'Invoice Date missing!' => 'Manca la data della fattura!',
- 'Invoice Number' => 'Fattura numero',
- 'Invoice Number missing!' => 'Manca il numero della fattura!',
- 'Invoice deleted!' => 'Fattura cancellata!',
- 'Invoice posted!' => 'Fattura salvata!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Language' => 'Lingua',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'N/A' => 'N/A',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nothing selected!' => 'Non hai selezionato nulla!',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Open' => 'Aperto/i',
- 'Order' => 'Ordine',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista etichette',
- 'Packing List Date missing!' => 'Manca la data della "Packing List"!',
- 'Packing List Number missing!' => 'Manca il codice della "Packing List"!',
- 'Paid' => 'Importo pagato',
- 'Part' => 'Componente',
- 'Payment date missing!' => 'Manca la data del pagamento!',
- 'Payments' => 'Pagamenti',
- 'Phone' => 'Tel.',
- 'Post' => 'Salva',
- 'Post as new' => 'Salva come nuovo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Prezzo',
- 'Print' => 'Stampa',
- 'Project' => 'Progetto',
- 'Project Number' => 'Numero progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Qty' => 'Q.tà',
- 'Recd' => 'Ricevuto',
- 'Receipt' => 'Riscossione',
- 'Receipts' => 'Riscossioni',
- 'Record in' => 'Registra in',
- 'Remaining' => 'Rimanente',
- 'Report for' => 'Prospetto per',
- 'Required by' => 'Consegna',
- 'Sales Order' => 'Ordine di vendita',
- 'Salesperson' => 'Addetto alle vendite',
- 'Screen' => 'Schermo',
- 'Select all' => 'Seleziona tutto',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Ship via' => 'Porto',
- 'Source' => 'Riferimento',
- 'Standard' => 'Standard',
- 'Statement' => 'Sollecito',
- 'Statement sent to' => 'Sollecito mandato a',
- 'Statements sent to printer!' => 'Solleciti mandati in stampa!',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax Included' => 'Fatturazione con scorporo (imposte incluse)',
- 'Tax collected' => 'Debito IVA',
- 'Tax paid' => 'Credito IVA',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Transaction deleted!' => 'Scrittura cancellata!',
- 'Transaction posted!' => 'Scrittura salvata!',
- 'Trial Balance' => 'Bilancio di verifica',
- 'Unit' => 'Unità',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'What type of item is this?' => 'Che tipo di articolo è questo?',
- 'Yes' => 'Sì',
- 'as at' => 'Al',
- 'ea' => 'ci',
- 'for Period' => 'nel periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'scrittura_cliente' => 'ar_transaction',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'e_mail' => 'e_mail',
- 'salva' => 'post',
- 'salva_come_nuovo' => 'post_as_new',
- 'stampa' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'ordine_di_vendita' => 'sales_order',
- 'seleziona_tutto' => 'select_all',
- 'spedire_a' => 'ship_to',
- 'aggiorna' => 'update',
- 'sì' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/pw b/sql-ledger/locale/it/pw
deleted file mode 100644
index 711507d..0000000
--- a/sql-ledger/locale/it/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continua',
- 'Password' => 'Parola d\'ordine',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continua' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/it/qe b/sql-ledger/locale/it/qe
deleted file mode 100644
index 7153d1e..0000000
--- a/sql-ledger/locale/it/qe
+++ /dev/null
@@ -1,199 +0,0 @@
-$self{texts} = {
- 'Add' => 'Aggiungi',
- 'Add Purchase Invoice' => 'Aggiungi Fattura di acquisto',
- 'Add Purchase Order' => 'Aggiungi Ordine di acquisto',
- 'Add Sales Invoice' => 'Aggiungi Fattura di vendita',
- 'Add Sales Order' => 'Aggiungi Ordine di vendita',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Are you sure you want to delete Order Number' => 'Sei sicuro di volre cancellare l\'ordine numero',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Codice BIN',
- 'C' => 'C',
- 'Cannot delete order!' => 'Non puoi cancellare l\'ordine',
- 'Cannot save order!' => 'Non puoi salvare l\'ordine!',
- 'Cc' => 'Cc',
- 'Closed' => 'Chiuso',
- 'Confirm!' => 'Conferma!',
- 'Contact' => 'Contatto',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit Limit' => 'Fido',
- 'Curr' => 'Valuta',
- 'Currency' => 'Valuta',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Cliente mancante!',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Delete' => 'Cancella',
- 'Delivery Date' => 'Data di spedizione',
- 'Description' => 'Descrizione',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Edit Purchase Order' => 'Modifica Ordine di acquisto',
- 'Edit Sales Order' => 'Modifica Ordine di vendita',
- 'Exchangerate' => 'Tasso di Cambio',
- 'Exchangerate missing!' => 'Manca il Tasso di Cambio!',
- 'Extended' => 'Esteso',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Includi nel Prospetto',
- 'Invoice' => 'Fattura',
- 'Invoice Date missing!' => 'Manca la data della Fattura!',
- 'Invoice Number missing!' => 'Manca il numero della Fattura!',
- 'Item not on file!' => 'Articolo non in archivio!',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'Name' => 'Nome',
- 'No.' => 'No.',
- 'Notes' => 'Note',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Partita IVA',
- 'Number missing in Row' => 'Manca il codice nella riga',
- 'O' => 'O',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Open' => 'Aperto',
- 'Order' => 'Ordine',
- 'Order Date' => 'Data dell\'ordine',
- 'Order Date missing!' => 'Manca la data dell\'ordine',
- 'Order Number' => 'Ordine Numero',
- 'Order Number missing!' => 'Manca il numero dell\'ordine!',
- 'Order deleted!' => 'Ordine Cancellato!',
- 'Order saved!' => 'Ordine Salvato!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Etichette',
- 'Packing List Date missing!' => 'Manca la data della Packing List!',
- 'Packing List Number missing!' => 'Manca il codice della Packing List!',
- 'Part' => 'Articolo',
- 'Phone' => 'Tel.',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prezzo',
- 'Print' => 'Stampa',
- 'Printer' => 'Stampante',
- 'Project' => 'Progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Purchase Order' => 'Ordine di acquisto',
- 'Purchase Orders' => 'Ordini di acquisto',
- 'Qty' => 'Q.t&agrave;',
- 'Recd' => 'Ricevuto',
- 'Remaining' => 'Rimanente',
- 'Required by' => 'Necessario dal',
- 'Sales Order' => 'Ordine di vendita',
- 'Sales Orders' => 'Ordini di vendita',
- 'Save' => 'Salva',
- 'Save as new' => 'Salva come nuovo',
- 'Screen' => 'Schermo',
- 'Select from one of the items below' => 'Seleziona uno dei seguenti Articoli',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra postscript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Service' => 'Servizio',
- 'Ship' => 'Invio',
- 'Ship to' => 'Spedire a',
- 'Ship via' => 'Porto',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale Parziale',
- 'Tax' => 'Tassa',
- 'Tax Included' => 'Tasse Incluse',
- 'Terms' => 'Termini: Netto',
- 'To' => 'Al',
- 'Total' => 'Totale',
- 'Unit' => 'Unit&agrave;',
- 'Update' => 'Aggiorna',
- 'Vendor' => 'Fornitore',
- 'Vendor missing!' => 'Manca il fornitore!',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'What type of item is this?' => 'Che tipo di Articolo &egrave; questo?',
- 'Yes' => 'Si',
- 'days' => 'giorni',
- 'ea' => 'ci',
- 'emailed to' => 'Mandato via e-mail a',
- 'sent to printer' => 'mandato in stampa',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order' => 'order',
- 'order_links' => 'order_links',
- 'orders' => 'orders',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_invoice' => 'purchase_invoice',
- 'sales_invoice' => 'sales_invoice',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'yes' => 'yes',
- 'aggiungi' => 'add',
- 'continua' => 'continue',
- 'cancella' => 'delete',
- 'e_mail' => 'e_mail',
- 'fattura' => 'invoice',
- 'stampa' => 'print',
- 'salva' => 'save',
- 'salva_come_nuovo' => 'save_as_new',
- 'spedire_a' => 'ship_to',
- 'aggiorna' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/it/rc b/sql-ledger/locale/it/rc
deleted file mode 100644
index 51c09a1..0000000
--- a/sql-ledger/locale/it/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Continue' => 'Continua',
- 'Current' => 'Corrente',
- 'Date' => 'Data',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Deposit' => 'Deposito',
- 'Description' => 'Descrizione',
- 'Difference' => 'Differenza',
- 'Done' => 'Fatto',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Out of balance!' => 'Non conciliato!',
- 'Payment' => 'Pagamento',
- 'Reconciliation' => 'Conciliazione',
- 'Select all' => 'Seleziona tutto',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Source' => 'Riferimento',
- 'Statement Balance' => 'Saldo',
- 'To' => 'A',
- 'Update' => 'Aggiorna',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continua' => 'continue',
- 'fatto' => 'done',
- 'seleziona_tutto' => 'select_all',
- 'aggiorna' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/it/rp b/sql-ledger/locale/it/rp
deleted file mode 100644
index af9b148..0000000
--- a/sql-ledger/locale/it/rp
+++ /dev/null
@@ -1,148 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Partite aperte',
- 'AR Aging' => 'Partite aperte',
- 'Account' => 'Conto',
- 'Account Number' => 'Numero di conto',
- 'Accounting Menu' => 'Menù contabilità',
- 'Accounts' => 'Conti',
- 'Address' => 'Indirizzo',
- 'Amount' => 'Importo',
- 'Apr' => 'Apr',
- 'April' => 'Aprile',
- 'Attachment' => 'Allegato',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Stato patrimoniale',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Cassa',
- 'Cc' => 'Cc',
- 'Compare to' => 'Confronta con',
- 'Continue' => 'Continua',
- 'Copies' => 'Copie',
- 'Credit' => 'Avere',
- 'Curr' => 'Valuta',
- 'Current' => 'Corrente',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente non sul file!',
- 'Date' => 'Data',
- 'Debit' => 'Dare',
- 'Dec' => 'Dic',
- 'December' => 'Dicembre',
- 'Decimalplaces' => 'Numero di decimali',
- 'Description' => 'Descrizione',
- 'Due Date' => 'Scadenza fattura',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Manda il sollecito via e-mail a',
- 'E-mail address missing!' => 'Indirizzo e-mail mancante!',
- 'Feb' => 'Feb',
- 'February' => 'Febbraio',
- 'From' => 'Dal',
- 'GIFI' => 'Codice GIFI',
- 'Heading' => 'Intestazione',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Includere nel prospetto',
- 'Income Statement' => 'Conto economico',
- 'Invoice' => 'Fattura',
- 'Jan' => 'Gen',
- 'January' => 'Gennaio',
- 'Jul' => 'Lug',
- 'July' => 'Luglio',
- 'Jun' => 'Giu',
- 'June' => 'Giugno',
- 'Language' => 'Lingua',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'Mag',
- 'May ' => 'Mag ',
- 'Message' => 'Messaggio',
- 'N/A' => 'N/A',
- 'Nothing selected!' => 'Non hai selezionato nulla!',
- 'Nov' => 'Nov',
- 'November' => 'Novembre',
- 'Number' => 'Codice',
- 'Oct' => 'Ott',
- 'October' => 'Ottobre',
- 'Order' => 'Ordine',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagamenti',
- 'Postscript' => 'PostScript',
- 'Print' => 'Stampa',
- 'Project' => 'Progetto',
- 'Project Number' => 'Numero progetto',
- 'Project not on file!' => 'Progetto non archiviato!',
- 'Receipts' => 'Riscossioni',
- 'Report for' => 'Prospetto per',
- 'Salesperson' => 'Addetto alle vendite',
- 'Screen' => 'Schermo',
- 'Select all' => 'Seleziona tutto',
- 'Select from one of the names below' => 'Seleziona uno dei seguenti nomi',
- 'Select from one of the projects below' => 'Seleziona uno dei seguenti progetti',
- 'Select postscript or PDF!' => 'Scegli tra PostScript e PDF!',
- 'Sep' => 'Set',
- 'September' => 'Settembre',
- 'Source' => 'Riferimento',
- 'Standard' => 'Standard',
- 'Statement' => 'Sollecito',
- 'Statement sent to' => 'Sollecito mandato a',
- 'Statements sent to printer!' => 'Solleciti mandati in stampa!',
- 'Subject' => 'Oggetto',
- 'Subtotal' => 'Totale parziale',
- 'Tax' => 'Imposta',
- 'Tax collected' => 'Debito IVA',
- 'Tax paid' => 'Credito IVA',
- 'To' => 'A',
- 'Total' => 'Totale',
- 'Trial Balance' => 'Bilancio di verifica',
- 'Vendor' => 'Fornitore',
- 'Vendor not on file!' => 'Fornitore non in archivio!',
- 'as at' => 'Al',
- 'for Period' => 'nel periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continua' => 'continue',
- 'e_mail' => 'e_mail',
- 'stampa' => 'print',
- 'seleziona_tutto' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/COPYING b/sql-ledger/locale/lt/COPYING
deleted file mode 100644
index 763715b..0000000
--- a/sql-ledger/locale/lt/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Lithuanian texts:
-#
-# Author:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/lt/LANGUAGE b/sql-ledger/locale/lt/LANGUAGE
deleted file mode 100644
index dc243c5..0000000
--- a/sql-ledger/locale/lt/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Lithuanian
diff --git a/sql-ledger/locale/lt/admin b/sql-ledger/locale/lt/admin
deleted file mode 100644
index 7253fe5..0000000
--- a/sql-ledger/locale/lt/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Priëjimo kontrolë',
- 'Accounting' => 'Apskaita',
- 'Add User' => 'Pridëti Vartotojà',
- 'Address' => 'Adresas',
- 'Administration' => 'Administracija',
- 'Administrator' => 'Administratorius',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Pakeisti Administratoriaus slaptaþodá',
- 'Change Password' => 'Pakeisti slaptaþodá',
- 'Character Set' => 'Simboliø aibë',
- 'Click on login name to edit!' => 'Paspauskit prisijungimo vardà redagavimui!',
- 'Company' => 'Firma',
- 'Connect to' => 'Prisijungti prie',
- 'Continue' => 'Tæsti',
- 'Create Chart of Accounts' => 'Sukûrti sàskaitø planà',
- 'Create Dataset' => 'Sukûrti duomenø aibæ',
- 'DBI not installed!' => 'DBI ne instaliuotas!',
- 'Database' => 'Duomenø bazë',
- 'Database Administration' => 'Duomenø bazës administravimas',
- 'Database Driver not checked!' => 'Duomenø bazës tvarkiklë nepatikrinta!',
- 'Database User missing!' => 'Duomenø bazës vartotojo nëra!',
- 'Dataset' => 'Duomenø aibë',
- 'Dataset missing!' => 'Duomenø aibës nëra!',
- 'Dataset updated!' => 'Duomenø aibë atnaujinta!',
- 'Date Format' => 'Datos Formatas',
- 'Delete' => 'Iðtrinti',
- 'Delete Dataset' => 'Iðtrinti Duomenø aibë',
- 'Directory' => 'Direktorija',
- 'Driver' => 'Tvarkyklë',
- 'Dropdown Limit' => 'Iðsiskleidþianèio meniu riba',
- 'E-mail' => 'E-paðtas',
- 'Edit User' => 'Redaguoti vartotojà',
- 'Existing Datasets' => 'Egzistuojanèios duomenø aibës',
- 'Fax' => 'Faksas',
- 'Host' => 'Hostas',
- 'Hostname missing!' => 'Hosto vardo nëra!',
- 'Language' => 'Kalba',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lokaliam prisijungimui palikite hosto ir porto laukelius tuðèiais',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Prisijungimas',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Iðsijungti',
- 'Multibyte Encoding' => 'Multibaitinë kodiruotë',
- 'Name' => 'Vardas',
- 'New Templates' => 'Nauji ðablonai',
- 'No Database Drivers available!' => 'Nëra Duomenø baziø tvarkykliø!',
- 'No Dataset selected!' => 'Duomenø aibë neiðrinkta!',
- 'Nothing to delete!' => 'Nëra ko trinti!',
- 'Number Format' => 'Skaièiaus formatas',
- 'Oracle Database Administration' => 'Oracle Duomenø bazës Administravimas',
- 'Password' => 'Slaptaþodis',
- 'Password changed!' => 'Slaptaþodis pakeistas!',
- 'Pg Database Administration' => 'Pg Duomenø bazës Administravimas',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Portas',
- 'Port missing!' => 'Porto numerio nëra!',
- 'Printer' => 'Spausdintuvas',
- 'Save' => 'Iðsaugoti',
- 'Setup Templates' => 'Nustatyti ðablonus',
- 'Signature' => 'Paraðas',
- 'Stylesheet' => 'Stiliø lentelë',
- 'Templates' => 'Ðablonai',
- 'The following Datasets are not in use and can be deleted' => 'Ðios duomenø aibës nëra naudojamos ir gali bûti iðtrintos',
- 'The following Datasets need to be updated' => 'Ðios duomenø aibës turi bûti atnaujintos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Èia preliminarus egzistuojanèiø ðaltiniø patikrinimas. Niekas negali bûti sukurta arba iðtrinta ðioje stadijoje.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Kad pridëti vartotojà á grupæ redaguokite vardà, pakeiskite prisijungimo vardà ir iðsaugokite. Bus sukurtas naujas vartotojas su tais paèiais kintamaisiais ir nauju prisijungimo vardu',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Atnaujinti Duomenø Aibæ',
- 'Use Templates' => 'Naudoti ðablonus',
- 'User' => 'Vartotojas',
- 'User deleted!' => 'Vartotojas iðtrintas!',
- 'User saved!' => 'Vartotojas iðsaugotas!',
- 'Version' => 'Versija',
- 'You must enter a host and port for local and remote connections!' => 'Turite ávesti hostà ir portà lokalioms ir nuotoliniams prisijungimams!',
- 'does not exist' => 'ne egzistuoja',
- 'is already a member!' => 'jau narys',
- 'localhost' => 'lokalhostas',
- 'successfully created!' => 'sëkmingai sukurta',
- 'successfully deleted!' => 'sëkmingai iðtrinta',
- 'website' => 'Websaitas',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'pridëti_vartotojà' => 'add_user',
- 'pakeisti_administratoriaus_slaptaþodá' => 'change_admin_password',
- 'pakeisti_slaptaþodá' => 'change_password',
- 'tæsti' => 'continue',
- 'sukûrti_duomenø_aibæ' => 'create_dataset',
- 'iðtrinti' => 'delete',
- 'iðtrinti_duomenø_aibë' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'prisijungimas' => 'login',
- 'iðsijungti' => 'logout',
- 'oracle_duomenø_bazës_administravimas' => 'oracle_database_administration',
- 'pg_duomenø_bazës_administravimas' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'iðsaugoti' => 'save',
- 'unlock_system' => 'unlock_system',
- 'atnaujinti_duomenø_aibæ' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/all b/sql-ledger/locale/lt/all
deleted file mode 100644
index 07cedfd..0000000
--- a/sql-ledger/locale/lt/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Pirkimai',
- 'AP Aging' => 'Pirkimo Skolos',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Pirkimo Operacijà',
- 'AP Transactions' => 'Pirkimo Operacijos',
- 'AR' => 'Pardavimai',
- 'AR Aging' => 'Pardavimo Skolos',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'AR Transactions' => 'Pardavimo Operacijos',
- 'About' => 'Apie...',
- 'Above' => '',
- 'Access Control' => 'Priëjimo kontrolë',
- 'Account' => 'Sàskaita',
- 'Account Number' => 'Sàskaitos numeris',
- 'Account Number missing!' => 'Sàskaitos numerio nëra!',
- 'Account Type' => 'Sàskaitos tipas',
- 'Account Type missing!' => 'Sàskaitos tipo nëra!',
- 'Account deleted!' => 'Sàskaitos iðtrintos',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Sàskaitos iðsaugotos',
- 'Accounting' => 'Apskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Accounts' => 'Sàskaitos',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Aktyvus',
- 'Add' => 'Pridëti',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Pridëti sàskaità',
- 'Add Assembly' => 'Pridëti rinkiná',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Pridëti klientà',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Pridëti GIFI',
- 'Add General Ledger Transaction' => 'Pridëti Bendroji Þurnalo Operacijà',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Pridëti prekæ',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Pridëti proektà',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Pridëti Pardavimo sàskaità-faktûrà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Add Service' => 'Pridëti Paslaugà',
- 'Add Transaction' => 'Pridëti Operacijà',
- 'Add User' => 'Pridëti Vartotojà',
- 'Add Vendor' => 'Pridëti Tiekëja',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'Adresas',
- 'Administration' => 'Administracija',
- 'Administrator' => 'Administratorius',
- 'After Deduction' => '',
- 'All' => 'Visi',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Suma',
- 'Amount Due' => 'Suma iki',
- 'Amount missing!' => '',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Invoice Number' => 'Ar Jus tikrai norite iðtrinti saskaitu-fakturos numeris:',
- 'Are you sure you want to delete Order Number' => 'Ar Jus tikrai norite iðtrinti uzsakimas numeris:',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Ar Jus tikrai norite iðtrinti operacijà?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Rinkiniai',
- 'Assemblies restocked!' => 'Rinkiniai persandeliuoti!',
- 'Assembly' => '',
- 'Asset' => 'Turtas',
- 'Attachment' => 'Prisegta',
- 'Audit Control' => 'Audito kontrolë',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'Reservinë kopija',
- 'Backup sent to' => 'Reservinë kopija iðsiusta á',
- 'Balance' => 'Balansas',
- 'Balance Sheet' => 'Balanso lëntelë',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Dëþë',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Þurnalai atidaryti',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Ámonës kodas',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'PPS',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Neámanoma iðtrinti sàskaitos!',
- 'Cannot delete customer!' => 'Neámanoma iðtrinti kliento!',
- 'Cannot delete default account!' => 'Neámanoma iðtrinti sàskaitos pagal nutylejimà!',
- 'Cannot delete invoice!' => 'Neámanoma iðtrinti sàskaitos-faktûros!',
- 'Cannot delete item!' => 'Neámanoma iðtrinti prekës!',
- 'Cannot delete order!' => 'Neámanoma iðtrinti uþsakymo!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Neámanoma iðtrinti operacijos!',
- 'Cannot delete vendor!' => 'Neámanoma iðtrinti tiekëjo!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Neámanoma patvirtinti sàskaitos-faktûros uþdarajam periodui!',
- 'Cannot post invoice!' => 'Neámanoma patvirtinti sàskaitos-faktûros!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cannot post transaction for a closed period!' => 'Neámanoma patvirtinti operacijos uþdarajam periodui!',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Cannot process payment for a closed period!' => 'Neámanoma vykdyti mokëjimo uþdarajam periodui!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Neámanoma iðsaugoti sàskaitos!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Neámanoma iðsaugoti uþsakymo!',
- 'Cannot save preferences!' => 'Neámanoma iðsaugoti nuostatø!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Neámanoma sandelioti rinkinius!',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Change' => '',
- 'Change Admin Password' => 'Pakeisti Administratoriaus slaptaþodá',
- 'Change Password' => 'Pakeisti slaptaþodá',
- 'Character Set' => 'Simboliø aibë',
- 'Chart of Accounts' => 'Sàskaitø planas',
- 'Check' => 'Èekis',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Paspauskit prisijungimo vardà redagavimui!',
- 'Close Books up to' => 'Uþdaryti þurnalus iki',
- 'Closed' => 'Uþdaryta',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Firma',
- 'Company Name' => '',
- 'Compare to' => 'Palyginti su',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Patvirtinti!',
- 'Connect to' => 'Prisijungti prie',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Contra' => '',
- 'Copies' => 'Kopijos',
- 'Copy to COA' => 'Kopijuoti á SP',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Sukûrti sàskaitø planà',
- 'Create Dataset' => 'Sukûrti duomenø aibæ',
- 'Credit' => 'Kreditas',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Current Earnings' => '',
- 'Customer' => 'Klientas',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Klientas iðtrintas!',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Customer saved!' => 'Klientas iðsaugotas!',
- 'Customers' => 'Klientai',
- 'DBI not installed!' => 'DBI ne instaliuotas!',
- 'DOB' => '',
- 'Database' => 'Duomenø bazë',
- 'Database Administration' => 'Duomenø bazës administravimas',
- 'Database Driver not checked!' => 'Duomenø bazës tvarkiklë nepatikrinta!',
- 'Database Host' => 'Duomenø bazës hostas',
- 'Database User missing!' => 'Duomenø bazës vartotojo nëra!',
- 'Dataset' => 'Duomenø aibë',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Duomenø aibës nëra!',
- 'Dataset updated!' => 'Duomenø aibë atnaujinta!',
- 'Date' => 'Data',
- 'Date Format' => 'Datos Formatas',
- 'Date Paid' => 'Mokëjimo Data',
- 'Date Received' => '',
- 'Date missing!' => 'Datos nëra!',
- 'Date received missing!' => '',
- 'Debit' => 'Debetas',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Decimalplaces' => 'Skaièiø po taðko',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Iðtrinti',
- 'Delete Account' => 'Iðtrinti sàskaità',
- 'Delete Dataset' => 'Iðtrinti Duomenø aibë',
- 'Delivery Date' => 'Prystatimo Data',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Depozitas',
- 'Description' => 'Apraðymas',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Skirtumas',
- 'Directory' => 'Direktorija',
- 'Discount' => 'Nuolaidos',
- 'Done' => 'Ávykdyta',
- 'Drawing' => 'Brieþinys',
- 'Driver' => 'Tvarkyklë',
- 'Dropdown Limit' => 'Iðsiskleidþianèio meniu riba',
- 'Due Date' => 'Iki Data',
- 'Due Date missing!' => 'Nëra Iki Datos!',
- 'E-mail' => 'E-paðtas',
- 'E-mail Statement to' => 'Suvestinæ suisti per e-pastà á',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'E-mailed' => '',
- 'Edit' => 'Redaguoti',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Redaguoti sàskaità',
- 'Edit Assembly' => 'Redaguoti rinkiná',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Redaguoti Klientà',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Redaguoti GIFI',
- 'Edit General Ledger Transaction' => 'Redaguoti Bendrojo Þurnalo operacijà',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Redaguoti prekæ',
- 'Edit Preferences for' => 'Redaguoti nuostatas...',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Redaguoti projektà',
- 'Edit Purchase Order' => 'Redaguoti pirkimo uþsakymà',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Redaguoti pardavimo sàskaità-faktûrà',
- 'Edit Sales Order' => 'Redaguoti pardavimo uþsakymà',
- 'Edit Service' => 'Redaguoti paslaugà',
- 'Edit Template' => 'Redaguoti ðablonà',
- 'Edit User' => 'Redaguoti vartotojà',
- 'Edit Vendor' => 'Redaguoti Tiekijà',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => 'Darbuotojas',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Reversuoti operacijas visoms datoms',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Áveskite iki 3-jø raidþiø, iðskirtø taðkais (Pvz. LTL:EUR:USD:YEN) savo ir uþsienio valiutoms paþymëti',
- 'Equity' => 'Turtas/Nuosavybë',
- 'Excempt age <' => '',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Existing Datasets' => 'Egzistuojanèios duomenø aibës',
- 'Expense' => 'Sànaudos',
- 'Expense Account' => 'Sànaudø sàskaita',
- 'Expense/Asset' => 'Sànaudos/Aktyvai',
- 'Extended' => 'Iðplësta',
- 'FX' => '',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'Foreign Exchange Gain' => 'Valiûtos keitimo pelnas',
- 'Foreign Exchange Loss' => 'Valiûtos keitimo nuostolis',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI iðtrintas!',
- 'GIFI missing!' => 'GIFI nëra!',
- 'GIFI saved!' => 'GIFI iðsaugotas!',
- 'GL Transaction' => 'BÞ operacija',
- 'General Ledger' => 'Bendrasis þurnalas',
- 'Goods & Services' => 'Prekës ir Paslaugos',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML ðablonai',
- 'Heading' => 'Antraðtë',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Hostas',
- 'Hostname missing!' => 'Hosto vardo nëra!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Pieðinys',
- 'In-line' => 'Vienaeilis',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Include in drop-down menus' => 'Ádëti á iðsáskleidþianèius meniu',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Ádëti ðià sàskaità á kliento/tiekëjo formas, kad paþymëti klientà/tiekëjà kaip apmokestinamà?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Pelno/nuostolio ataskaita',
- 'Incorrect Dataset version!' => 'Neteisinga duomenø aibës versija!',
- 'Incorrect Password!' => 'Neteisingas slaptaþodis!',
- 'Increase' => '',
- 'Individual Items' => 'Individualios prekës',
- 'Internal Notes' => '',
- 'Inventory' => 'Prekës',
- 'Inventory Account' => 'Prekës sàskaita',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Prekës kiekis turi bûti lygus nuliui prieð paþymint rinkiná pasenusiu!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Prekës kiekis turi bûti lygus nuliui prieð paþymint ðià dalá pasenusia!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Invoice deleted!' => 'Sàskaitos-faktûra iðtrintos!',
- 'Invoice posted!' => 'Sàskaitos-faktûra patvirtintos!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Sàskaitos-faktûros',
- 'Is this a summary account to record' => 'Ar èia apibendrinta áraðo sàskaita',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Vienetas iðtrintas!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Items' => '',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'LaTeX Templates' => 'LaTeX ðablonai',
- 'Labor/Overhead' => '',
- 'Language' => 'Kalba',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Paskutinieji numeriai ir sàskaitos pagal nutylëjimà',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lokaliam prisijungimui palikite hosto ir porto laukelius tuðèiais',
- 'Liability' => 'Nuosavybë',
- 'Licensed to' => 'Licenzijuota...',
- 'Line Total' => 'Viso eilutëje',
- 'Link' => 'Ryðys',
- 'Link Accounts' => 'Suriðti sàskaitas',
- 'List' => '',
- 'List Accounts' => 'Sàskaitø sàraðas',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'GIFI sàraðas',
- 'List Languages' => '',
- 'List Price' => 'Pirkimo kaina',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Parodyti operacijas',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Prisijungimas',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Iðsijungti',
- 'Make' => 'Gamintojas',
- 'Manager' => '',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Þinutë',
- 'Method' => '',
- 'Microfiche' => 'Mikrofiða',
- 'Model' => 'Modelis',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibaitinë kodiruotë',
- 'N/A' => 'N/A',
- 'Name' => 'Vardas',
- 'Name missing!' => 'Pavadinimo nëra',
- 'New Templates' => 'Nauji ðablonai',
- 'No' => 'Ne',
- 'No Database Drivers available!' => 'Nëra Duomenø baziø tvarkykliø!',
- 'No Dataset selected!' => 'Duomenø aibë neiðrinkta!',
- 'No email address for' => 'Nëra e-paðto adreso...',
- 'No.' => 'Num',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Pastaba',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Nieko neiðrinkta!',
- 'Nothing to delete!' => 'Nëra ko trinti!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number Format' => 'Skaièiaus formatas',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'O' => 'O',
- 'Obsolete' => 'Pasenæ',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'On Hand' => 'Likutis',
- 'Open' => 'Atidaryti',
- 'Oracle Database Administration' => 'Oracle Duomenø bazës Administravimas',
- 'Order' => 'Uþsakymas',
- 'Order Date' => 'Uþsakymo data',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Entry' => 'Uþsakymo áraðas',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'Order deleted!' => 'Uþsakymai iðtrinti!',
- 'Order processed!' => '',
- 'Order saved!' => 'Uþsakymas iðsaugotas!',
- 'Orphaned' => 'Naðlaitinis',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Nesubalansuota!',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Packing Lists' => '',
- 'Paid' => 'Apmokëta',
- 'Part' => 'Prekë',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Prekës',
- 'Parts Inventory' => 'Prekiø saraðas',
- 'Password' => 'Slaptaþodis',
- 'Password changed!' => 'Slaptaþodis pakeistas!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Pirkimai',
- 'Payment' => 'Mokëjimas',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payment posted!' => 'Mokëjimas patvirtintas!',
- 'Payments' => 'Mokëjimai',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Duomenø bazës Administravimas',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Portas',
- 'Port missing!' => 'Porto numerio nëra!',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Posted!' => '',
- 'Postscript' => 'Postscript(TM)',
- 'Preferences' => 'Nuostatos',
- 'Preferences saved!' => 'Nuostatos iðsaugotos!',
- 'Prepayment' => '',
- 'Price' => 'Kaina',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Spausdinti',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Spausdintuvas',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Projektas',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'Projekto numerio nëra!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Projektas iðtrintas!',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Project saved!' => 'Projektas iðsaugotas!',
- 'Projects' => 'Projektai',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Qty' => 'Kks',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'Kursas',
- 'Rate missing!' => '',
- 'Recd' => 'Gaut',
- 'Receipt' => 'Kasos orderis',
- 'Receipt posted!' => '',
- 'Receipts' => 'Kasos orderiai',
- 'Receivables' => 'Pardavimai',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Sutaikinimas',
- 'Reconciliation Report' => '',
- 'Record in' => 'Áraðyti á',
- 'Reference' => 'Nuorodos',
- 'Reference missing!' => 'Nuorodos nëra!',
- 'Remaining' => 'Likutis',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Ataskaita...',
- 'Reports' => 'Ataskaitos',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Iki kada',
- 'Retained Earnings' => 'Turimi uþdarbiai',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Pardavimai',
- 'Sales Invoice' => 'Pardavimo SF',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Iðsaugoti',
- 'Save Pricelist' => '',
- 'Save as new' => 'Iðsaugoti kaip naujà',
- 'Save to File' => 'Iðsaugoti á failà',
- 'Screen' => 'Ekranas',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Iðrinkti viskà',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Pardavimo kaina',
- 'Send by E-Mail' => 'Iðsiûsti e-paðtu',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Paslauga',
- 'Service Items' => 'Paslaugø sàraðas',
- 'Services' => 'Paslaugos',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Nustatyti ðablonus',
- 'Ship' => 'Pristatymas',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Pristatyti á',
- 'Ship via' => 'Pristatyti per',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Stoka',
- 'Signature' => 'Paraðas',
- 'Source' => 'Dokumentas',
- 'Spoolfile' => '',
- 'Standard' => 'Standartas',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Suvestinë',
- 'Statement Balance' => 'Balanso suvestinë',
- 'Statement sent to' => 'Siusti suvestinæ á',
- 'Statements sent to printer!' => 'Siusti suvestinæ á spausdintuvà!',
- 'Stock' => '',
- 'Stock Assembly' => 'Rinkiniai sandëlyje',
- 'Stylesheet' => 'Stiliø lentelë',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Mokëstis',
- 'Tax Accounts' => 'Mokesèiø sàskaitos',
- 'Tax Included' => 'su mokesèiais',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Mokesèiai surinkti',
- 'Tax paid' => 'Mokesèiai sumokëti',
- 'Taxable' => 'Apmokestinama',
- 'Template saved!' => 'Ðablonai iðsaugoti!',
- 'Templates' => 'Ðablonai',
- 'Terms' => 'Terminas: ',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Ðios duomenø aibës nëra naudojamos ir gali bûti iðtrintos',
- 'The following Datasets need to be updated' => 'Ðios duomenø aibës turi bûti atnaujintos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Èia preliminarus egzistuojanèiø ðaltiniø patikrinimas. Niekas negali bûti sukurta arba iðtrinta ðioje stadijoje.',
- 'Till' => '',
- 'To' => 'iki',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Kad pridëti vartotojà á grupæ redaguokite vardà, pakeiskite prisijungimo vardà ir iðsaugokite. Bus sukurtas naujas vartotojas su tais paèiais kintamaisiais ir nauju prisijungimo vardu',
- 'Top Level' => 'Aukðèiausias lygis',
- 'Total' => 'Ið viso',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Operacijos datos nëra!',
- 'Transaction deleted!' => 'Operacija iðtrinta!',
- 'Transaction posted!' => 'Operacija patvirtinta!',
- 'Transaction reversal enforced for all dates' => 'Operacijos bus reversuojamos visoms datoms',
- 'Transaction reversal enforced up to' => 'Operacijos bus reversuojamos iki',
- 'Transactions' => 'Operacijos',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Bandomasis balansas',
- 'Type of Business' => '',
- 'Unit' => 'Vienetas',
- 'Unit of measure' => 'Matavimo vienetas',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Atnaujinti',
- 'Update Dataset' => 'Atnaujinti Duomenø Aibæ',
- 'Updated' => 'Atnaujinta',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Naudoti ðablonus',
- 'User' => 'Vartotojas',
- 'User deleted!' => 'Vartotojas iðtrintas!',
- 'User saved!' => 'Vartotojas iðsaugotas!',
- 'Valid until' => '',
- 'Vendor' => 'Tiekëjas',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Tiekëjas iðtrintas!',
- 'Vendor missing!' => 'Tiekëjo Vardo nëra!',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'Vendor saved!' => 'Tiekëjai iðsaugoti',
- 'Vendors' => 'Tiekëjai',
- 'Version' => 'Versija',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Svoris',
- 'Weight Unit' => 'Svorio vienetas.',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Taip',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Neávedëte vardo!',
- 'You must enter a host and port for local and remote connections!' => 'Turite ávesti hostà ir portà lokalioms ir nuotoliniams prisijungimams!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'kaip',
- 'days' => 'dienos',
- 'does not exist' => 'ne egzistuoja',
- 'done' => '',
- 'ea' => 'kk',
- 'for Period' => 'periodui',
- 'is already a member!' => 'jau narys',
- 'is not a member!' => 'nëra narys!',
- 'localhost' => 'lokalhostas',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'sëkmingai sukurta',
- 'successfully deleted!' => 'sëkmingai iðtrinta',
- 'website' => 'Websaitas',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/am b/sql-ledger/locale/lt/am
deleted file mode 100644
index ed7abb8..0000000
--- a/sql-ledger/locale/lt/am
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'AP' => 'Pirkimai',
- 'AR' => 'Pardavimai',
- 'About' => 'Apie...',
- 'Account' => 'Sàskaita',
- 'Account Number' => 'Sàskaitos numeris',
- 'Account Number missing!' => 'Sàskaitos numerio nëra!',
- 'Account Type' => 'Sàskaitos tipas',
- 'Account Type missing!' => 'Sàskaitos tipo nëra!',
- 'Account deleted!' => 'Sàskaitos iðtrintos',
- 'Account saved!' => 'Sàskaitos iðsaugotos',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Account' => 'Pridëti sàskaità',
- 'Add GIFI' => 'Pridëti GIFI',
- 'Address' => 'Adresas',
- 'Asset' => 'Turtas',
- 'Audit Control' => 'Audito kontrolë',
- 'Backup sent to' => 'Reservinë kopija iðsiusta á',
- 'Books are open' => 'Þurnalai atidaryti',
- 'Business Number' => 'Ámonës kodas',
- 'COGS' => 'PPS',
- 'Cannot delete account!' => 'Neámanoma iðtrinti sàskaitos!',
- 'Cannot delete default account!' => 'Neámanoma iðtrinti sàskaitos pagal nutylejimà!',
- 'Cannot save account!' => 'Neámanoma iðsaugoti sàskaitos!',
- 'Cannot save preferences!' => 'Neámanoma iðsaugoti nuostatø!',
- 'Cash' => 'Kasa',
- 'Character Set' => 'Simboliø aibë',
- 'Chart of Accounts' => 'Sàskaitø planas',
- 'Close Books up to' => 'Uþdaryti þurnalus iki',
- 'Company' => 'Firma',
- 'Continue' => 'Tæsti',
- 'Copy to COA' => 'Kopijuoti á SP',
- 'Credit' => 'Kreditas',
- 'Database Host' => 'Duomenø bazës hostas',
- 'Dataset' => 'Duomenø aibë',
- 'Date Format' => 'Datos Formatas',
- 'Debit' => 'Debetas',
- 'Delete' => 'Iðtrinti',
- 'Delete Account' => 'Iðtrinti sàskaità',
- 'Description' => 'Apraðymas',
- 'Discount' => 'Nuolaidos',
- 'Dropdown Limit' => 'Iðsiskleidþianèio meniu riba',
- 'E-mail' => 'E-paðtas',
- 'Edit' => 'Redaguoti',
- 'Edit Account' => 'Redaguoti sàskaità',
- 'Edit GIFI' => 'Redaguoti GIFI',
- 'Edit Preferences for' => 'Redaguoti nuostatas...',
- 'Edit Template' => 'Redaguoti ðablonà',
- 'Enforce transaction reversal for all dates' => 'Reversuoti operacijas visoms datoms',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Áveskite iki 3-jø raidþiø, iðskirtø taðkais (Pvz. LTL:EUR:USD:YEN) savo ir uþsienio valiutoms paþymëti',
- 'Equity' => 'Turtas/Nuosavybë',
- 'Expense' => 'Sànaudos',
- 'Expense Account' => 'Sànaudø sàskaita',
- 'Expense/Asset' => 'Sànaudos/Aktyvai',
- 'Fax' => 'Faksas',
- 'Foreign Exchange Gain' => 'Valiûtos keitimo pelnas',
- 'Foreign Exchange Loss' => 'Valiûtos keitimo nuostolis',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI iðtrintas!',
- 'GIFI missing!' => 'GIFI nëra!',
- 'GIFI saved!' => 'GIFI iðsaugotas!',
- 'Heading' => 'Antraðtë',
- 'Include in drop-down menus' => 'Ádëti á iðsáskleidþianèius meniu',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Ádëti ðià sàskaità á kliento/tiekëjo formas, kad paþymëti klientà/tiekëjà kaip apmokestinamà?',
- 'Inventory' => 'Prekës',
- 'Inventory Account' => 'Prekës sàskaita',
- 'Is this a summary account to record' => 'Ar èia apibendrinta áraðo sàskaita',
- 'Language' => 'Kalba',
- 'Last Numbers & Default Accounts' => 'Paskutinieji numeriai ir sàskaitos pagal nutylëjimà',
- 'Liability' => 'Nuosavybë',
- 'Licensed to' => 'Licenzijuota...',
- 'Link' => 'Ryðys',
- 'Name' => 'Vardas',
- 'No' => 'Ne',
- 'No email address for' => 'Nëra e-paðto adreso...',
- 'Number' => 'Numeris',
- 'Number Format' => 'Skaièiaus formatas',
- 'Parts Inventory' => 'Prekiø saraðas',
- 'Password' => 'Slaptaþodis',
- 'Payables' => 'Pirkimai',
- 'Payment' => 'Mokëjimas',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Nuostatos iðsaugotos!',
- 'Printer' => 'Spausdintuvas',
- 'Rate' => 'Kursas',
- 'Receivables' => 'Pardavimai',
- 'Reference' => 'Nuorodos',
- 'Retained Earnings' => 'Turimi uþdarbiai',
- 'Save' => 'Iðsaugoti',
- 'Save as new' => 'Iðsaugoti kaip naujà',
- 'Service Items' => 'Paslaugø sàraðas',
- 'Signature' => 'Paraðas',
- 'Stylesheet' => 'Stiliø lentelë',
- 'Tax' => 'Mokëstis',
- 'Tax Accounts' => 'Mokesèiø sàskaitos',
- 'Template saved!' => 'Ðablonai iðsaugoti!',
- 'Transaction reversal enforced for all dates' => 'Operacijos bus reversuojamos visoms datoms',
- 'Transaction reversal enforced up to' => 'Operacijos bus reversuojamos iki',
- 'User' => 'Vartotojas',
- 'Version' => 'Versija',
- 'Weight Unit' => 'Svorio vienetas.',
- 'Yes' => 'Taip',
- 'localhost' => 'lokalhostas',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'pridëti_sàskaità' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'tæsti' => 'continue',
- 'kopijuoti_á_sp' => 'copy_to_coa',
- 'iðtrinti' => 'delete',
- 'redaguoti' => 'edit',
- 'redaguoti_sàskaità' => 'edit_account',
- 'iðsaugoti' => 'save',
- 'iðsaugoti_kaip_naujà' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ap b/sql-ledger/locale/lt/ap
deleted file mode 100644
index 6af405b..0000000
--- a/sql-ledger/locale/lt/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Pirkimo Operacijà',
- 'AP Transactions' => 'Pirkimo Operacijos',
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Amount Due' => 'Suma iki',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Transaction' => 'Ar Jus tikrai norite iðtrinti operacijà?',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Cannot delete transaction!' => 'Neámanoma iðtrinti operacijos!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cannot post transaction for a closed period!' => 'Neámanoma patvirtinti operacijos uþdarajam periodui!',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Check' => 'Èekis',
- 'Closed' => 'Uþdaryta',
- 'Confirm!' => 'Patvirtinti!',
- 'Continue' => 'Tæsti',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Date Paid' => 'Mokëjimo Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'Due Date missing!' => 'Nëra Iki Datos!',
- 'Employee' => 'Darbuotojas',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'ID' => 'ID',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Open' => 'Atidaryti',
- 'Order' => 'Uþsakymas',
- 'Order Number' => 'Uþsakymo numeris',
- 'PDF' => 'PDF',
- 'Paid' => 'Apmokëta',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payments' => 'Mokëjimai',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Postscript' => 'Postscript(TM)',
- 'Print' => 'Spausdinti',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Receipt' => 'Kasos orderis',
- 'Remaining' => 'Likutis',
- 'Screen' => 'Ekranas',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Source' => 'Dokumentas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax Included' => 'su mokesèiais',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Transaction deleted!' => 'Operacija iðtrinta!',
- 'Transaction posted!' => 'Operacija patvirtinta!',
- 'Update' => 'Atnaujinti',
- 'Vendor' => 'Tiekëjas',
- 'Vendor missing!' => 'Tiekëjo Vardo nëra!',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'Yes' => 'Taip',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pirkimo_operacijà' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'spausdinti' => 'print',
- 'print_and_post' => 'print_and_post',
- 'atnaujinti' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ar b/sql-ledger/locale/lt/ar
deleted file mode 100644
index 78a6a24..0000000
--- a/sql-ledger/locale/lt/ar
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'AR Transactions' => 'Pardavimo Operacijos',
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Amount Due' => 'Suma iki',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Transaction' => 'Ar Jus tikrai norite iðtrinti operacijà?',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Cannot delete transaction!' => 'Neámanoma iðtrinti operacijos!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cannot post transaction for a closed period!' => 'Neámanoma patvirtinti operacijos uþdarajam periodui!',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Check' => 'Èekis',
- 'Closed' => 'Uþdaryta',
- 'Confirm!' => 'Patvirtinti!',
- 'Continue' => 'Tæsti',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Date Paid' => 'Mokëjimo Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'Due Date missing!' => 'Nëra Iki Datos!',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'ID' => 'ID',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Open' => 'Atidaryti',
- 'Order' => 'Uþsakymas',
- 'Order Number' => 'Uþsakymo numeris',
- 'PDF' => 'PDF',
- 'Paid' => 'Apmokëta',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payments' => 'Mokëjimai',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Postscript' => 'Postscript(TM)',
- 'Print' => 'Spausdinti',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Receipt' => 'Kasos orderis',
- 'Remaining' => 'Likutis',
- 'Screen' => 'Ekranas',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Ship via' => 'Pristatyti per',
- 'Source' => 'Dokumentas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax Included' => 'su mokesèiais',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Transaction deleted!' => 'Operacija iðtrinta!',
- 'Transaction posted!' => 'Operacija patvirtinta!',
- 'Update' => 'Atnaujinti',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'Yes' => 'Taip',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pardavimo_operacijà' => 'ar_transaction',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'spausdinti' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'atnaujinti' => 'update',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/arap b/sql-ledger/locale/lt/arap
deleted file mode 100644
index db1ed92..0000000
--- a/sql-ledger/locale/lt/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresas',
- 'Continue' => 'Tæsti',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Description' => 'Apraðymas',
- 'Number' => 'Numeris',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'tæsti' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/arapprn b/sql-ledger/locale/lt/arapprn
deleted file mode 100644
index a205f38..0000000
--- a/sql-ledger/locale/lt/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Amount' => 'Suma',
- 'Check' => 'Èekis',
- 'Continue' => 'Tæsti',
- 'Date' => 'Data',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript(TM)',
- 'Receipt' => 'Kasos orderis',
- 'Screen' => 'Ekranas',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Source' => 'Dokumentas',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'tæsti' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/bp b/sql-ledger/locale/lt/bp
deleted file mode 100644
index a42e188..0000000
--- a/sql-ledger/locale/lt/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Confirm!' => 'Patvirtinti!',
- 'Continue' => 'Tæsti',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Date' => 'Data',
- 'From' => 'Nuo',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Order' => 'Uþsakymas',
- 'Order Number' => 'Uþsakymo numeris',
- 'Print' => 'Spausdinti',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Receipts' => 'Kasos orderiai',
- 'Reference' => 'Nuorodos',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Select all' => 'Iðrinkti viskà',
- 'To' => 'iki',
- 'Vendor' => 'Tiekëjas',
- 'Yes' => 'Taip',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'tæsti' => 'continue',
- 'spausdinti' => 'print',
- 'remove' => 'remove',
- 'iðrinkti_viskà' => 'select_all',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ca b/sql-ledger/locale/lt/ca
deleted file mode 100644
index 89f9081..0000000
--- a/sql-ledger/locale/lt/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Balance' => 'Balansas',
- 'Chart of Accounts' => 'Sàskaitø planas',
- 'Credit' => 'Kreditas',
- 'Current' => 'Dabartinis',
- 'Date' => 'Data',
- 'Debit' => 'Debetas',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Description' => 'Apraðymas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'List Transactions' => 'Parodyti operacijas',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Reference' => 'Nuorodos',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Subtotal' => 'Viso',
- 'To' => 'iki',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'parodyti_operacijas' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/cp b/sql-ledger/locale/lt/cp
deleted file mode 100644
index b9bead3..0000000
--- a/sql-ledger/locale/lt/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Pirkimai',
- 'AR' => 'Pardavimai',
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Address' => 'Adresas',
- 'All' => 'Visi',
- 'Amount' => 'Suma',
- 'Amount Due' => 'Suma iki',
- 'Cannot process payment for a closed period!' => 'Neámanoma vykdyti mokëjimo uþdarajam periodui!',
- 'Continue' => 'Tæsti',
- 'Currency' => 'Valiûta',
- 'Customer' => 'Klientas',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Date missing!' => 'Datos nëra!',
- 'Deposit' => 'Depozitas',
- 'Description' => 'Apraðymas',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoices' => 'Sàskaitos-faktûros',
- 'Number' => 'Numeris',
- 'PDF' => 'PDF',
- 'Payment' => 'Mokëjimas',
- 'Payment posted!' => 'Mokëjimas patvirtintas!',
- 'Post' => 'Patvirtinti',
- 'Postscript' => 'Postscript(TM)',
- 'Print' => 'Spausdinti',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Receipt' => 'Kasos orderis',
- 'Screen' => 'Ekranas',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Source' => 'Dokumentas',
- 'Update' => 'Atnaujinti',
- 'Vendor' => 'Tiekëjas',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'tæsti' => 'continue',
- 'patvirtinti' => 'post',
- 'spausdinti' => 'print',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ct b/sql-ledger/locale/lt/ct
deleted file mode 100644
index 5033dc0..0000000
--- a/sql-ledger/locale/lt/ct
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Pirkimo Operacijà',
- 'AP Transactions' => 'Pirkimo Operacijos',
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'AR Transactions' => 'Pardavimo Operacijos',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Customer' => 'Pridëti klientà',
- 'Add Vendor' => 'Pridëti Tiekëja',
- 'Address' => 'Adresas',
- 'All' => 'Visi',
- 'Amount' => 'Suma',
- 'Bcc' => 'Bcc',
- 'Cannot delete customer!' => 'Neámanoma iðtrinti kliento!',
- 'Cannot delete vendor!' => 'Neámanoma iðtrinti tiekëjo!',
- 'Cc' => 'Cc',
- 'Closed' => 'Uþdaryta',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Customer deleted!' => 'Klientas iðtrintas!',
- 'Customer saved!' => 'Klientas iðsaugotas!',
- 'Customers' => 'Klientai',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Discount' => 'Nuolaidos',
- 'E-mail' => 'E-paðtas',
- 'Edit Customer' => 'Redaguoti Klientà',
- 'Edit Vendor' => 'Redaguoti Tiekijà',
- 'Employee' => 'Darbuotojas',
- 'Fax' => 'Faksas',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Language' => 'Kalba',
- 'Name' => 'Vardas',
- 'Name missing!' => 'Pavadinimo nëra',
- 'Notes' => 'Pastaba',
- 'Number' => 'Numeris',
- 'Open' => 'Atidaryti',
- 'Order' => 'Uþsakymas',
- 'Orphaned' => 'Naðlaitinis',
- 'Phone' => 'Tel.',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Qty' => 'Kks',
- 'Sales Invoice' => 'Pardavimo SF',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Save' => 'Iðsaugoti',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Sell Price' => 'Pardavimo kaina',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax Included' => 'su mokesèiais',
- 'Taxable' => 'Apmokestinama',
- 'Terms' => 'Terminas: ',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
- 'Vendor deleted!' => 'Tiekëjas iðtrintas!',
- 'Vendor saved!' => 'Tiekëjai iðsaugoti',
- 'Vendors' => 'Tiekëjai',
- 'days' => 'dienos',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'pirkimo_operacijà' => 'ap_transaction',
- 'pardavimo_operacijà' => 'ar_transaction',
- 'pridëti_klientà' => 'add_customer',
- 'pridëti_tiekëja' => 'add_vendor',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'pricelist' => 'pricelist',
- 'pirkimo_uþsakymas' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'pardavimo_sf' => 'sales_invoice',
- 'pardavimø_uþsakymas' => 'sales_order',
- 'iðsaugoti' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'atnaujinti' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/gl b/sql-ledger/locale/lt/gl
deleted file mode 100644
index e61e573..0000000
--- a/sql-ledger/locale/lt/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Pirkimo Operacijà',
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add General Ledger Transaction' => 'Pridëti Bendroji Þurnalo Operacijà',
- 'Address' => 'Adresas',
- 'All' => 'Visi',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Transaction' => 'Ar Jus tikrai norite iðtrinti operacijà?',
- 'Asset' => 'Turtas',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Balance' => 'Balansas',
- 'Cannot delete transaction!' => 'Neámanoma iðtrinti operacijos!',
- 'Cannot post transaction for a closed period!' => 'Neámanoma patvirtinti operacijos uþdarajam periodui!',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Confirm!' => 'Patvirtinti!',
- 'Continue' => 'Tæsti',
- 'Credit' => 'Kreditas',
- 'Current' => 'Dabartinis',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Debit' => 'Debetas',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'Edit General Ledger Transaction' => 'Redaguoti Bendrojo Þurnalo operacijà',
- 'Equity' => 'Turtas/Nuosavybë',
- 'Expense' => 'Sànaudos',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'BÞ operacija',
- 'General Ledger' => 'Bendrasis þurnalas',
- 'ID' => 'ID',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Liability' => 'Nuosavybë',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Reference' => 'Nuorodos',
- 'Reference missing!' => 'Nuorodos nëra!',
- 'Reports' => 'Ataskaitos',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Source' => 'Dokumentas',
- 'Subtotal' => 'Viso',
- 'To' => 'iki',
- 'Transaction Date missing!' => 'Operacijos datos nëra!',
- 'Transaction deleted!' => 'Operacija iðtrinta!',
- 'Transaction posted!' => 'Operacija patvirtinta!',
- 'Update' => 'Atnaujinti',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'Yes' => 'Taip',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pirkimo_operacijà' => 'ap_transaction',
- 'pardavimo_operacijà' => 'ar_transaction',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'bÞ_operacija' => 'gl_transaction',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'atnaujinti' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/hr b/sql-ledger/locale/lt/hr
deleted file mode 100644
index f8f56e6..0000000
--- a/sql-ledger/locale/lt/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Pirkimai',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Address' => 'Adresas',
- 'Administrator' => 'Administratorius',
- 'All' => 'Visi',
- 'Amount' => 'Suma',
- 'Continue' => 'Tæsti',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'E-mail' => 'E-paðtas',
- 'Employee' => 'Darbuotojas',
- 'Expense' => 'Sànaudos',
- 'ID' => 'ID',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Login' => 'Prisijungimas',
- 'Name' => 'Vardas',
- 'Name missing!' => 'Pavadinimo nëra',
- 'Notes' => 'Pastaba',
- 'Number' => 'Numeris',
- 'Orphaned' => 'Naðlaitinis',
- 'Rate' => 'Kursas',
- 'Sales' => 'Pardavimai',
- 'Save' => 'Iðsaugoti',
- 'Save as new' => 'Iðsaugoti kaip naujà',
- 'Update' => 'Atnaujinti',
- 'User' => 'Vartotojas',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'iðsaugoti' => 'save',
- 'iðsaugoti_kaip_naujà' => 'save_as_new',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ic b/sql-ledger/locale/lt/ic
deleted file mode 100644
index b5d9164..0000000
--- a/sql-ledger/locale/lt/ic
+++ /dev/null
@@ -1,220 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Active' => 'Aktyvus',
- 'Add' => 'Pridëti',
- 'Add Assembly' => 'Pridëti rinkiná',
- 'Add Part' => 'Pridëti prekæ',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Add Service' => 'Pridëti Paslaugà',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Assemblies' => 'Rinkiniai',
- 'Assemblies restocked!' => 'Rinkiniai persandeliuoti!',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'BOM' => 'BOM',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'COGS' => 'PPS',
- 'Cannot delete item!' => 'Neámanoma iðtrinti prekës!',
- 'Cannot stock assemblies!' => 'Neámanoma sandelioti rinkinius!',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Closed' => 'Uþdaryta',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Customer' => 'Klientas',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Drawing' => 'Brieþinys',
- 'E-mail' => 'E-paðtas',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Edit Assembly' => 'Redaguoti rinkiná',
- 'Edit Part' => 'Redaguoti prekæ',
- 'Edit Service' => 'Redaguoti paslaugà',
- 'Employee' => 'Darbuotojas',
- 'Expense' => 'Sànaudos',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'Image' => 'Pieðinys',
- 'In-line' => 'Vienaeilis',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Individual Items' => 'Individualios prekës',
- 'Inventory' => 'Prekës',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Prekës kiekis turi bûti lygus nuliui prieð paþymint rinkiná pasenusiu!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Prekës kiekis turi bûti lygus nuliui prieð paþymint ðià dalá pasenusia!',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Item deleted!' => 'Vienetas iðtrintas!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Line Total' => 'Viso eilutëje',
- 'Link Accounts' => 'Suriðti sàskaitas',
- 'List Price' => 'Pirkimo kaina',
- 'Make' => 'Gamintojas',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'Microfiche' => 'Mikrofiða',
- 'Model' => 'Modelis',
- 'Name' => 'Vardas',
- 'No.' => 'Num',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'Obsolete' => 'Pasenæ',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'On Hand' => 'Likutis',
- 'Open' => 'Atidaryti',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'Orphaned' => 'Naðlaitinis',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Part' => 'Prekë',
- 'Parts' => 'Prekës',
- 'Phone' => 'Tel.',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Project' => 'Projektas',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Qty' => 'Kks',
- 'ROP' => 'ROP',
- 'Recd' => 'Gaut',
- 'Required by' => 'Iki kada',
- 'Sales Invoice' => 'Pardavimo SF',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Save' => 'Iðsaugoti',
- 'Save as new' => 'Iðsaugoti kaip naujà',
- 'Screen' => 'Ekranas',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Sell Price' => 'Pardavimo kaina',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Services' => 'Paslaugos',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Short' => 'Stoka',
- 'Stock Assembly' => 'Rinkiniai sandëlyje',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'To' => 'iki',
- 'Top Level' => 'Aukðèiausias lygis',
- 'Unit' => 'Vienetas',
- 'Unit of measure' => 'Matavimo vienetas',
- 'Update' => 'Atnaujinti',
- 'Updated' => 'Atnaujinta',
- 'Vendor' => 'Tiekëjas',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'Weight' => 'Svoris',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'days' => 'dienos',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'pridëti_rinkiná' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'pridëti_prekæ' => 'add_part',
- 'pridëti_paslaugà' => 'add_service',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'redaguoti_rinkiná' => 'edit_assembly',
- 'redaguoti_prekæ' => 'edit_part',
- 'redaguoti_paslaugà' => 'edit_service',
- 'iðsaugoti' => 'save',
- 'iðsaugoti_kaip_naujà' => 'save_as_new',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/io b/sql-ledger/locale/lt/io
deleted file mode 100644
index c949ff5..0000000
--- a/sql-ledger/locale/lt/io
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Address' => 'Adresas',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'Cc' => 'Cc',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'E-mail' => 'E-paðtas',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'In-line' => 'Vienaeilis',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'No.' => 'Num',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Part' => 'Prekë',
- 'Phone' => 'Tel.',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Project' => 'Projektas',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Qty' => 'Kks',
- 'Recd' => 'Gaut',
- 'Required by' => 'Iki kada',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Screen' => 'Ekranas',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'To' => 'iki',
- 'Unit' => 'Vienetas',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'tæsti' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ir b/sql-ledger/locale/lt/ir
deleted file mode 100644
index d5d0686..0000000
--- a/sql-ledger/locale/lt/ir
+++ /dev/null
@@ -1,182 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Invoice Number' => 'Ar Jus tikrai norite iðtrinti saskaitu-fakturos numeris:',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'Cannot delete invoice!' => 'Neámanoma iðtrinti sàskaitos-faktûros!',
- 'Cannot post invoice for a closed period!' => 'Neámanoma patvirtinti sàskaitos-faktûros uþdarajam periodui!',
- 'Cannot post invoice!' => 'Neámanoma patvirtinti sàskaitos-faktûros!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Patvirtinti!',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Credit Limit' => 'Kredito riba',
- 'Currency' => 'Valiûta',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'E-mail' => 'E-paðtas',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'In-line' => 'Vienaeilis',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Invoice deleted!' => 'Sàskaitos-faktûra iðtrintos!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Language' => 'Kalba',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'No.' => 'Num',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Part' => 'Prekë',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payments' => 'Mokëjimai',
- 'Phone' => 'Tel.',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Qty' => 'Kks',
- 'Recd' => 'Gaut',
- 'Record in' => 'Áraðyti á',
- 'Remaining' => 'Likutis',
- 'Required by' => 'Iki kada',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Screen' => 'Ekranas',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Source' => 'Dokumentas',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax Included' => 'su mokesèiais',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
- 'Vendor' => 'Tiekëjas',
- 'Vendor missing!' => 'Tiekëjo Vardo nëra!',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'Yes' => 'Taip',
- 'ea' => 'kk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'pirkimo_uþsakymas' => 'purchase_order',
- 'atnaujinti' => 'update',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/is b/sql-ledger/locale/lt/is
deleted file mode 100644
index 275782a..0000000
--- a/sql-ledger/locale/lt/is
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Invoice' => 'Pridëti Pardavimo sàskaità-faktûrà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Invoice Number' => 'Ar Jus tikrai norite iðtrinti saskaitu-fakturos numeris:',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'Cannot delete invoice!' => 'Neámanoma iðtrinti sàskaitos-faktûros!',
- 'Cannot post invoice for a closed period!' => 'Neámanoma patvirtinti sàskaitos-faktûros uþdarajam periodui!',
- 'Cannot post invoice!' => 'Neámanoma patvirtinti sàskaitos-faktûros!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Patvirtinti!',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Credit Limit' => 'Kredito riba',
- 'Currency' => 'Valiûta',
- 'Customer' => 'Klientas',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'E-mail' => 'E-paðtas',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Edit Sales Invoice' => 'Redaguoti pardavimo sàskaità-faktûrà',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'In-line' => 'Vienaeilis',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Invoice deleted!' => 'Sàskaitos-faktûra iðtrintos!',
- 'Invoice posted!' => 'Sàskaitos-faktûra patvirtintos!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'No.' => 'Num',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Part' => 'Prekë',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payments' => 'Mokëjimai',
- 'Phone' => 'Tel.',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Print' => 'Spausdinti',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Qty' => 'Kks',
- 'Recd' => 'Gaut',
- 'Record in' => 'Áraðyti á',
- 'Remaining' => 'Likutis',
- 'Required by' => 'Iki kada',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Screen' => 'Ekranas',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Ship via' => 'Pristatyti per',
- 'Source' => 'Dokumentas',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax Included' => 'su mokesèiais',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'Yes' => 'Taip',
- 'ea' => 'kk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'e_paðtas' => 'e_mail',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'spausdinti' => 'print',
- 'print_and_post' => 'print_and_post',
- 'pardavimø_uþsakymas' => 'sales_order',
- 'pristatyti_á' => 'ship_to',
- 'atnaujinti' => 'update',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/login b/sql-ledger/locale/lt/login
deleted file mode 100644
index b794c63..0000000
--- a/sql-ledger/locale/lt/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Tæsti',
- 'Incorrect Dataset version!' => 'Neteisinga duomenø aibës versija!',
- 'Incorrect Password!' => 'Neteisingas slaptaþodis!',
- 'Login' => 'Prisijungimas',
- 'Name' => 'Vardas',
- 'Password' => 'Slaptaþodis',
- 'Version' => 'Versija',
- 'You did not enter a name!' => 'Neávedëte vardo!',
- 'is not a member!' => 'nëra narys!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'prisijungimas' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/menu b/sql-ledger/locale/lt/menu
deleted file mode 100644
index 47f51cb..0000000
--- a/sql-ledger/locale/lt/menu
+++ /dev/null
@@ -1,78 +0,0 @@
-$self{texts} = {
- 'AP' => 'Pirkimai',
- 'AP Aging' => 'Pirkimo Skolos',
- 'AP Transaction' => 'Pirkimo Operacijà',
- 'AR' => 'Pardavimai',
- 'AR Aging' => 'Pardavimo Skolos',
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Account' => 'Pridëti sàskaità',
- 'Add Assembly' => 'Pridëti rinkiná',
- 'Add Customer' => 'Pridëti klientà',
- 'Add GIFI' => 'Pridëti GIFI',
- 'Add Part' => 'Pridëti prekæ',
- 'Add Project' => 'Pridëti proektà',
- 'Add Service' => 'Pridëti Paslaugà',
- 'Add Transaction' => 'Pridëti Operacijà',
- 'Add Vendor' => 'Pridëti Tiekëja',
- 'Assemblies' => 'Rinkiniai',
- 'Audit Control' => 'Audito kontrolë',
- 'Backup' => 'Reservinë kopija',
- 'Balance Sheet' => 'Balanso lëntelë',
- 'Cash' => 'Kasa',
- 'Chart of Accounts' => 'Sàskaitø planas',
- 'Check' => 'Èekis',
- 'Customers' => 'Klientai',
- 'Description' => 'Apraðymas',
- 'General Ledger' => 'Bendrasis þurnalas',
- 'Goods & Services' => 'Prekës ir Paslaugos',
- 'HTML Templates' => 'HTML ðablonai',
- 'Income Statement' => 'Pelno/nuostolio ataskaita',
- 'Invoice' => 'Sàskaita-faktûra',
- 'LaTeX Templates' => 'LaTeX ðablonai',
- 'Language' => 'Kalba',
- 'List Accounts' => 'Sàskaitø sàraðas',
- 'List GIFI' => 'GIFI sàraðas',
- 'Logout' => 'Iðsijungti',
- 'Open' => 'Atidaryti',
- 'Order Entry' => 'Uþsakymo áraðas',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Parts' => 'Prekës',
- 'Payment' => 'Mokëjimas',
- 'Payments' => 'Mokëjimai',
- 'Preferences' => 'Nuostatos',
- 'Print' => 'Spausdinti',
- 'Projects' => 'Projektai',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Receipt' => 'Kasos orderis',
- 'Receipts' => 'Kasos orderiai',
- 'Reconciliation' => 'Sutaikinimas',
- 'Reports' => 'Ataskaitos',
- 'Sales Invoice' => 'Pardavimo SF',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Save to File' => 'Iðsaugoti á failà',
- 'Send by E-Mail' => 'Iðsiûsti e-paðtu',
- 'Services' => 'Paslaugos',
- 'Ship' => 'Pristatymas',
- 'Statement' => 'Suvestinë',
- 'Stock Assembly' => 'Rinkiniai sandëlyje',
- 'Stylesheet' => 'Stiliø lentelë',
- 'System' => 'Sistema',
- 'Tax collected' => 'Mokesèiai surinkti',
- 'Tax paid' => 'Mokesèiai sumokëti',
- 'Transactions' => 'Operacijos',
- 'Trial Balance' => 'Bandomasis balansas',
- 'Vendors' => 'Tiekëjai',
- 'Version' => 'Versija',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/oe b/sql-ledger/locale/lt/oe
deleted file mode 100644
index 2cb5232..0000000
--- a/sql-ledger/locale/lt/oe
+++ /dev/null
@@ -1,230 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Invoice' => 'Pridëti Pardavimo sàskaità-faktûrà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Order Number' => 'Ar Jus tikrai norite iðtrinti uzsakimas numeris:',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'C' => 'C',
- 'Cannot delete order!' => 'Neámanoma iðtrinti uþsakymo!',
- 'Cannot save order!' => 'Neámanoma iðsaugoti uþsakymo!',
- 'Cc' => 'Cc',
- 'Closed' => 'Uþdaryta',
- 'Confirm!' => 'Patvirtinti!',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Done' => 'Ávykdyta',
- 'E-mail' => 'E-paðtas',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Edit Purchase Order' => 'Redaguoti pirkimo uþsakymà',
- 'Edit Sales Order' => 'Redaguoti pardavimo uþsakymà',
- 'Employee' => 'Darbuotojas',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'ID' => 'ID',
- 'In-line' => 'Vienaeilis',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'No.' => 'Num',
- 'Notes' => 'Pastaba',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'O' => 'O',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Open' => 'Atidaryti',
- 'Order' => 'Uþsakymas',
- 'Order Date' => 'Uþsakymo data',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'Order deleted!' => 'Uþsakymai iðtrinti!',
- 'Order saved!' => 'Uþsakymas iðsaugotas!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Part' => 'Prekë',
- 'Phone' => 'Tel.',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Print' => 'Spausdinti',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Purchase Orders' => 'Pirkimo uþsakymai',
- 'Qty' => 'Kks',
- 'Recd' => 'Gaut',
- 'Remaining' => 'Likutis',
- 'Required by' => 'Iki kada',
- 'Sales Invoice' => 'Pardavimo SF',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Sales Orders' => 'Pardavimø uþsakymai',
- 'Save' => 'Iðsaugoti',
- 'Save as new' => 'Iðsaugoti kaip naujà',
- 'Screen' => 'Ekranas',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Ship via' => 'Pristatyti per',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax Included' => 'su mokesèiais',
- 'Terms' => 'Terminas: ',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
- 'Vendor' => 'Tiekëjas',
- 'Vendor missing!' => 'Tiekëjo Vardo nëra!',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'Yes' => 'Taip',
- 'days' => 'dienos',
- 'ea' => 'kk',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'Ávykdyta' => 'done',
- 'e_paðtas' => 'e_mail',
- 'spausdinti' => 'print',
- 'print_and_save' => 'print_and_save',
- 'pirkimo_uþsakymas' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'pardavimo_sf' => 'sales_invoice',
- 'pardavimø_uþsakymas' => 'sales_order',
- 'iðsaugoti' => 'save',
- 'iðsaugoti_kaip_naujà' => 'save_as_new',
- 'pristatyti_á' => 'ship_to',
- 'transfer' => 'transfer',
- 'atnaujinti' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/pe b/sql-ledger/locale/lt/pe
deleted file mode 100644
index ea80d9c..0000000
--- a/sql-ledger/locale/lt/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Add Project' => 'Pridëti proektà',
- 'All' => 'Visi',
- 'Continue' => 'Tæsti',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'Edit Project' => 'Redaguoti projektà',
- 'Language' => 'Kalba',
- 'Number' => 'Numeris',
- 'Orphaned' => 'Naðlaitinis',
- 'Project' => 'Projektas',
- 'Project Number missing!' => 'Projekto numerio nëra!',
- 'Project deleted!' => 'Projektas iðtrintas!',
- 'Project saved!' => 'Projektas iðsaugotas!',
- 'Projects' => 'Projektai',
- 'Save' => 'Iðsaugoti',
- 'Update' => 'Atnaujinti',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'pridëti_proektà' => 'add_project',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'iðsaugoti' => 'save',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/pos b/sql-ledger/locale/lt/pos
deleted file mode 100644
index 94ab4ed..0000000
--- a/sql-ledger/locale/lt/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Continue' => 'Tæsti',
- 'Credit Limit' => 'Kredito riba',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Delete' => 'Iðtrinti',
- 'Description' => 'Apraðymas',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Extended' => 'Iðplësta',
- 'From' => 'Nuo',
- 'Language' => 'Kalba',
- 'Number' => 'Numeris',
- 'Open' => 'Atidaryti',
- 'Paid' => 'Apmokëta',
- 'Post' => 'Patvirtinti',
- 'Price' => 'Kaina',
- 'Print' => 'Spausdinti',
- 'Qty' => 'Kks',
- 'Receipts' => 'Kasos orderiai',
- 'Record in' => 'Áraðyti á',
- 'Remaining' => 'Likutis',
- 'Screen' => 'Ekranas',
- 'Source' => 'Dokumentas',
- 'Subtotal' => 'Viso',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'patvirtinti' => 'post',
- 'spausdinti' => 'print',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/ps b/sql-ledger/locale/lt/ps
deleted file mode 100644
index 9d90cfa..0000000
--- a/sql-ledger/locale/lt/ps
+++ /dev/null
@@ -1,277 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Pirkimo Skolos',
- 'AR Aging' => 'Pardavimo Skolos',
- 'AR Transaction' => 'Pardavimo Operacijà',
- 'AR Transactions' => 'Pardavimo Operacijos',
- 'Account' => 'Sàskaita',
- 'Account Number' => 'Sàskaitos numeris',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Accounts' => 'Sàskaitos',
- 'Add Purchase Order' => 'Pridëti Pirkimo uþsakymà',
- 'Add Sales Invoice' => 'Pridëti Pardavimo sàskaità-faktûrà',
- 'Add Sales Order' => 'Pridëti Pardavimo uþsakymà',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Amount Due' => 'Suma iki',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Are you sure you want to delete Invoice Number' => 'Ar Jus tikrai norite iðtrinti saskaitu-fakturos numeris:',
- 'Are you sure you want to delete Transaction' => 'Ar Jus tikrai norite iðtrinti operacijà?',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Balance' => 'Balansas',
- 'Balance Sheet' => 'Balanso lëntelë',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Dëþë',
- 'Cannot delete invoice!' => 'Neámanoma iðtrinti sàskaitos-faktûros!',
- 'Cannot delete transaction!' => 'Neámanoma iðtrinti operacijos!',
- 'Cannot post invoice for a closed period!' => 'Neámanoma patvirtinti sàskaitos-faktûros uþdarajam periodui!',
- 'Cannot post invoice!' => 'Neámanoma patvirtinti sàskaitos-faktûros!',
- 'Cannot post payment for a closed period!' => 'Neámanoma patvirtinti mokëjimo uþdarajam periodui!',
- 'Cannot post transaction for a closed period!' => 'Neámanoma patvirtinti operacijos uþdarajam periodui!',
- 'Cannot post transaction!' => 'Neámanoma patvirtinti operacijos!',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Check' => 'Èekis',
- 'Closed' => 'Uþdaryta',
- 'Compare to' => 'Palyginti su',
- 'Confirm!' => 'Patvirtinti!',
- 'Contact' => 'Kontaktas',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Credit' => 'Kreditas',
- 'Credit Limit' => 'Kredito riba',
- 'Curr' => 'Val.',
- 'Currency' => 'Valiûta',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Customer missing!' => 'Kliento vardo nëra!',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Date Paid' => 'Mokëjimo Data',
- 'Debit' => 'Debetas',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Decimalplaces' => 'Skaièiø po taðko',
- 'Delete' => 'Iðtrinti',
- 'Delivery Date' => 'Prystatimo Data',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'Due Date missing!' => 'Nëra Iki Datos!',
- 'E-mail' => 'E-paðtas',
- 'E-mail Statement to' => 'Suvestinæ suisti per e-pastà á',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Edit Sales Invoice' => 'Redaguoti pardavimo sàskaità-faktûrà',
- 'Exch' => 'Kurs.',
- 'Exchange Rate' => 'Keitimo kursas',
- 'Exchange rate for payment missing!' => 'Mokëjimo keitimo kurso nëra!',
- 'Exchange rate missing!' => 'Keitimo kurso nëra!',
- 'Extended' => 'Iðplësta',
- 'Fax' => 'Faksas',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Antraðtë',
- 'ID' => 'ID',
- 'In-line' => 'Vienaeilis',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Income Statement' => 'Pelno/nuostolio ataskaita',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Invoice Date' => 'Sàskaitos-faktûros data',
- 'Invoice Date missing!' => 'Sàskaitos-faktûros datos nëra!',
- 'Invoice Number' => 'Sàskaitos-faktûros numeris',
- 'Invoice Number missing!' => 'Sàskaitos-faktûra numerio nëra!',
- 'Invoice deleted!' => 'Sàskaitos-faktûra iðtrintos!',
- 'Invoice posted!' => 'Sàskaitos-faktûra patvirtintos!',
- 'Item not on file!' => 'Vieneto nëra áraðuose!',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Language' => 'Kalba',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'N/A' => 'N/A',
- 'No.' => 'Num',
- 'Notes' => 'Pastaba',
- 'Nothing selected!' => 'Nieko neiðrinkta!',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Number missing in Row' => 'Numerio nëra eilëje',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Open' => 'Atidaryti',
- 'Order' => 'Uþsakymas',
- 'Order Date missing!' => 'Uþsakymo datos nëra!',
- 'Order Number' => 'Uþsakymo numeris',
- 'Order Number missing!' => 'Uþsakymo numerio nëra!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Ápakavimo sàraðas',
- 'Packing List Date missing!' => 'Ápakavimo sàraðo datos nëra!',
- 'Packing List Number missing!' => 'Ápakavimo sàraðo numerio nëra!',
- 'Paid' => 'Apmokëta',
- 'Part' => 'Prekë',
- 'Payment date missing!' => 'Mokëjimo datos nëra',
- 'Payments' => 'Mokëjimai',
- 'Phone' => 'Tel.',
- 'Post' => 'Patvirtinti',
- 'Post as new' => 'Patvirtinti kaip naujà',
- 'Postscript' => 'Postscript(TM)',
- 'Price' => 'Kaina',
- 'Print' => 'Spausdinti',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Purchase Order' => 'Pirkimo uþsakymas',
- 'Qty' => 'Kks',
- 'Recd' => 'Gaut',
- 'Receipt' => 'Kasos orderis',
- 'Receipts' => 'Kasos orderiai',
- 'Record in' => 'Áraðyti á',
- 'Remaining' => 'Likutis',
- 'Report for' => 'Ataskaita...',
- 'Required by' => 'Iki kada',
- 'Sales Order' => 'Pardavimø uþsakymas',
- 'Screen' => 'Ekranas',
- 'Select all' => 'Iðrinkti viskà',
- 'Select from one of the items below' => 'Iðrinkite vienà ið prekiø apaèioje',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Service' => 'Paslauga',
- 'Ship' => 'Pristatymas',
- 'Ship to' => 'Pristatyti á',
- 'Ship via' => 'Pristatyti per',
- 'Source' => 'Dokumentas',
- 'Standard' => 'Standartas',
- 'Statement' => 'Suvestinë',
- 'Statement sent to' => 'Siusti suvestinæ á',
- 'Statements sent to printer!' => 'Siusti suvestinæ á spausdintuvà!',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax Included' => 'su mokesèiais',
- 'Tax collected' => 'Mokesèiai surinkti',
- 'Tax paid' => 'Mokesèiai sumokëti',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Transaction deleted!' => 'Operacija iðtrinta!',
- 'Transaction posted!' => 'Operacija patvirtinta!',
- 'Trial Balance' => 'Bandomasis balansas',
- 'Unit' => 'Vienetas',
- 'Update' => 'Atnaujinti',
- 'Vendor' => 'Tiekëjas',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'What type of item is this?' => 'Koks ðio dalyko tipas?',
- 'Yes' => 'Taip',
- 'as at' => 'kaip',
- 'ea' => 'kk',
- 'for Period' => 'periodui',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'pardavimo_operacijà' => 'ar_transaction',
- 'tæsti' => 'continue',
- 'iðtrinti' => 'delete',
- 'e_paðtas' => 'e_mail',
- 'patvirtinti' => 'post',
- 'patvirtinti_kaip_naujà' => 'post_as_new',
- 'spausdinti' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'pardavimø_uþsakymas' => 'sales_order',
- 'iðrinkti_viskà' => 'select_all',
- 'pristatyti_á' => 'ship_to',
- 'atnaujinti' => 'update',
- 'taip' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/pw b/sql-ledger/locale/lt/pw
deleted file mode 100644
index b9790d9..0000000
--- a/sql-ledger/locale/lt/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Tæsti',
- 'Password' => 'Slaptaþodis',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'tæsti' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/rc b/sql-ledger/locale/lt/rc
deleted file mode 100644
index 0c3ae61..0000000
--- a/sql-ledger/locale/lt/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Sàskaita',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Balance' => 'Balansas',
- 'Continue' => 'Tæsti',
- 'Current' => 'Dabartinis',
- 'Date' => 'Data',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Deposit' => 'Depozitas',
- 'Description' => 'Apraðymas',
- 'Difference' => 'Skirtumas',
- 'Done' => 'Ávykdyta',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Out of balance!' => 'Nesubalansuota!',
- 'Payment' => 'Mokëjimas',
- 'Reconciliation' => 'Sutaikinimas',
- 'Select all' => 'Iðrinkti viskà',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Source' => 'Dokumentas',
- 'Statement Balance' => 'Balanso suvestinë',
- 'To' => 'iki',
- 'Update' => 'Atnaujinti',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'tæsti' => 'continue',
- 'Ávykdyta' => 'done',
- 'iðrinkti_viskà' => 'select_all',
- 'atnaujinti' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lt/rp b/sql-ledger/locale/lt/rp
deleted file mode 100644
index 172a4ef..0000000
--- a/sql-ledger/locale/lt/rp
+++ /dev/null
@@ -1,146 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Pirkimo Skolos',
- 'AR Aging' => 'Pardavimo Skolos',
- 'Account' => 'Sàskaita',
- 'Account Number' => 'Sàskaitos numeris',
- 'Accounting Menu' => 'Apskaitos Menu',
- 'Accounts' => 'Sàskaitos',
- 'Address' => 'Adresas',
- 'Amount' => 'Suma',
- 'Apr' => 'Bal',
- 'April' => 'Balandis',
- 'Attachment' => 'Prisegta',
- 'Aug' => 'Rug',
- 'August' => 'Rugpjûtis',
- 'Balance' => 'Balansas',
- 'Balance Sheet' => 'Balanso lëntelë',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Compare to' => 'Palyginti su',
- 'Continue' => 'Tæsti',
- 'Copies' => 'Kopijos',
- 'Credit' => 'Kreditas',
- 'Curr' => 'Val.',
- 'Current' => 'Dabartinis',
- 'Customer' => 'Klientas',
- 'Customer not on file!' => 'Tokio kliento nëra!',
- 'Date' => 'Data',
- 'Debit' => 'Debetas',
- 'Dec' => 'Grd',
- 'December' => 'Gruodis',
- 'Decimalplaces' => 'Skaièiø po taðko',
- 'Description' => 'Apraðymas',
- 'Due Date' => 'Iki Data',
- 'E-mail' => 'E-paðtas',
- 'E-mail Statement to' => 'Suvestinæ suisti per e-pastà á',
- 'E-mail address missing!' => 'E-paðto adreso nëra!',
- 'Feb' => 'Vas',
- 'February' => 'Vasaris',
- 'From' => 'Nuo',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Antraðtë',
- 'ID' => 'ID',
- 'In-line' => 'Vienaeilis',
- 'Include in Report' => 'Ádëti á ataskaità',
- 'Income Statement' => 'Pelno/nuostolio ataskaita',
- 'Invoice' => 'Sàskaita-faktûra',
- 'Jan' => 'Sau',
- 'January' => 'Sausis',
- 'Jul' => 'Lie',
- 'July' => 'Liepa',
- 'Jun' => 'Bir',
- 'June' => 'Birþelis',
- 'Language' => 'Kalba',
- 'Mar' => 'Kov',
- 'March' => 'Kovas',
- 'May' => 'Geg',
- 'May ' => 'Geguþë',
- 'Message' => 'Þinutë',
- 'N/A' => 'N/A',
- 'Nothing selected!' => 'Nieko neiðrinkta!',
- 'Nov' => 'Lap',
- 'November' => 'Lapkritis',
- 'Number' => 'Numeris',
- 'Oct' => 'Spa',
- 'October' => 'Spalis',
- 'Order' => 'Uþsakymas',
- 'PDF' => 'PDF',
- 'Payments' => 'Mokëjimai',
- 'Postscript' => 'Postscript(TM)',
- 'Print' => 'Spausdinti',
- 'Project' => 'Projektas',
- 'Project not on file!' => 'Nëra tokio projekto!',
- 'Receipts' => 'Kasos orderiai',
- 'Report for' => 'Ataskaita...',
- 'Screen' => 'Ekranas',
- 'Select all' => 'Iðrinkti viskà',
- 'Select from one of the names below' => 'Iðrinkite vienà ið pavadinimø apaèioje',
- 'Select from one of the projects below' => 'Iðrinkite vienà ið projektø apaèioje',
- 'Select postscript or PDF!' => 'Iðrinkite postscript arba PDF!',
- 'Sep' => 'Rgs',
- 'September' => 'Rûgsëjis',
- 'Source' => 'Dokumentas',
- 'Standard' => 'Standartas',
- 'Statement' => 'Suvestinë',
- 'Statement sent to' => 'Siusti suvestinæ á',
- 'Statements sent to printer!' => 'Siusti suvestinæ á spausdintuvà!',
- 'Subject' => 'Dalykas',
- 'Subtotal' => 'Viso',
- 'Tax' => 'Mokëstis',
- 'Tax collected' => 'Mokesèiai surinkti',
- 'Tax paid' => 'Mokesèiai sumokëti',
- 'To' => 'iki',
- 'Total' => 'Ið viso',
- 'Trial Balance' => 'Bandomasis balansas',
- 'Vendor' => 'Tiekëjas',
- 'Vendor not on file!' => 'Tokio tiekëjo nëra!',
- 'as at' => 'kaip',
- 'for Period' => 'periodui',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'tæsti' => 'continue',
- 'e_paðtas' => 'e_mail',
- 'spausdinti' => 'print',
- 'iðrinkti_viskà' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/COPYING b/sql-ledger/locale/lv/COPYING
deleted file mode 100644
index 37042cd..0000000
--- a/sql-ledger/locale/lv/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Latvian texts:
-#
-# Author: Kaspars Melkis <info@isolis.lv>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/lv/LANGUAGE b/sql-ledger/locale/lv/LANGUAGE
deleted file mode 100644
index 9cd7ffb..0000000
--- a/sql-ledger/locale/lv/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Latvian
diff --git a/sql-ledger/locale/lv/admin b/sql-ledger/locale/lv/admin
deleted file mode 100644
index 931c0c7..0000000
--- a/sql-ledger/locale/lv/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Piekïuves kontrole',
- 'Accounting' => 'Kontçðana',
- 'Add User' => 'Pievienot lietotâju',
- 'Address' => 'Adrese',
- 'Administration' => 'Administrâcija',
- 'Administrator' => 'Administrators',
- 'All Datasets up to date!' => 'Visas datu kopas ir atjauninâtas!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Nomainît administratora paroli',
- 'Change Password' => 'Nomainît paroli',
- 'Character Set' => 'Zîmju kopa',
- 'Click on login name to edit!' => 'Noklikðíinât uz lietotâjvârda, lai mainîtu!',
- 'Company' => 'Uzòçmums',
- 'Connect to' => 'Pievienoties',
- 'Continue' => 'Turpinât',
- 'Create Chart of Accounts' => 'Izveidot kontu plânu',
- 'Create Dataset' => 'Izveidot datu kopu',
- 'DBI not installed!' => 'Nav instalçts DBI!',
- 'Database' => 'Datubâze',
- 'Database Administration' => 'Datubâzes administrators',
- 'Database Driver not checked!' => 'Datubâzes draiveris nav atzîmçts!',
- 'Database User missing!' => 'Nav norâdîts datubâzes lietotâjs!',
- 'Dataset' => 'Datukopa',
- 'Dataset missing!' => 'Nav atrasta datukopa!',
- 'Dataset updated!' => 'Datukopa atjauninâta!',
- 'Date Format' => 'Datuma formâts',
- 'Delete' => 'Dzçst',
- 'Delete Dataset' => 'Izdzçst datukopu',
- 'Directory' => 'Direktorija',
- 'Driver' => 'Draiveris',
- 'Dropdown Limit' => 'Maks. rindu skaits izvçlnç',
- 'E-mail' => 'E-pasts',
- 'Edit User' => 'Labot lietotâju',
- 'Existing Datasets' => 'Esoðâs datukopas',
- 'Fax' => 'Fakss',
- 'Host' => 'Serveris',
- 'Hostname missing!' => 'Nav norâdîts servera nosaukums!',
- 'Language' => 'Valoda',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Servera un porta laukus var atstât tukðus, ja nevçlaties izveidot attâlinâtu konekciju',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Pieteikties',
- 'Login name missing!' => 'Nav norâdîts pieteikumvârds',
- 'Logout' => 'Beigt darbu',
- 'Manager' => 'Vadîtâjs',
- 'Menu Width' => 'Izvçlnes Platums',
- 'Multibyte Encoding' => 'Multibaitu kodçðana',
- 'Name' => 'Nosaukums',
- 'New Templates' => 'Jauni ðabloni',
- 'No Database Drivers available!' => 'Nav pieejams datubâzes draiveris!',
- 'No Dataset selected!' => 'Nav iezîmçta datukopa!',
- 'Nothing to delete!' => 'Nav nekâ dzçðama!',
- 'Number Format' => 'Skaitïa formâts',
- 'Oracle Database Administration' => 'Oracle datubâzes administrçðana',
- 'Password' => 'Parole',
- 'Password changed!' => 'Mainît paroli!',
- 'Pg Database Administration' => 'Pg datubâzes administrçðana',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Ports',
- 'Port missing!' => 'Nareizs porta numurs!',
- 'Printer' => 'Printeris',
- 'Save' => 'Saglabât',
- 'Setup Templates' => 'Ðablonu izveidoðana',
- 'Signature' => 'Paraksts',
- 'Stylesheet' => 'Stila lapa',
- 'Templates' => 'Ðabloni',
- 'The following Datasets are not in use and can be deleted' => 'Sekojoðâs datukopas netiek lietotas un tâs var izdzçst',
- 'The following Datasets need to be updated' => 'Sekojoðâs datukopas nepiecieðams atjauninât',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Ðî ir sagatavoðanâs pârbaude esoðiem datiem. Nekas netiks izveidots vai izdzçsts.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Lai pievienotu lietotâju grupai, izmainiet lietotâjvârdu un saglabâjiet.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Atjauninât datu kopu',
- 'Use Templates' => 'Lietot ðablonu',
- 'User' => 'Lietotâjs',
- 'User deleted!' => 'Lietotâjs izdzçsts!',
- 'User saved!' => 'Lietotâjs saglabâts!',
- 'Version' => 'Versija',
- 'You must enter a host and port for local and remote connections!' => 'Lokâlam un attâlinâtam savienojumam jâievada vçrtîbas servera un porta laukos!',
- 'does not exist' => 'neeksistç',
- 'is already a member!' => 'jau eksistç ',
- 'localhost' => 'localhost',
- 'locked!' => 'slçgts!',
- 'successfully created!' => 'veiksmîgi izveidots!',
- 'successfully deleted!' => 'veiksmîgi izdzçsts!',
- 'website' => 'interneta lapa',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'pievienot_lietotâju' => 'add_user',
- 'nomainît_administratora_paroli' => 'change_admin_password',
- 'nomainît_paroli' => 'change_password',
- 'turpinât' => 'continue',
- 'izveidot_datu_kopu' => 'create_dataset',
- 'dzçst' => 'delete',
- 'izdzçst_datukopu' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'pieteikties' => 'login',
- 'beigt_darbu' => 'logout',
- 'oracle_datubâzes_administrçðana' => 'oracle_database_administration',
- 'pg_datubâzes_administrçðana' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'saglabât' => 'save',
- 'unlock_system' => 'unlock_system',
- 'atjauninât_datu_kopu' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/all b/sql-ledger/locale/lv/all
deleted file mode 100644
index af2e3c1..0000000
--- a/sql-ledger/locale/lv/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Kreditoru parâdi',
- 'AP Aging' => 'KP novecojums',
- 'AP Outstanding' => 'KP Neapmaksâtie',
- 'AP Transaction' => 'KP transakcija',
- 'AP Transactions' => 'KP transakcijas',
- 'AR' => 'Debitoru parâdi',
- 'AR Aging' => 'DP novecojums',
- 'AR Outstanding' => 'DP Neapmaksâtie',
- 'AR Transaction' => 'DP transakcija',
- 'AR Transactions' => 'DP transakcijas',
- 'About' => 'Par',
- 'Above' => 'Iepriekð',
- 'Access Control' => 'Piekïuves kontrole',
- 'Account' => 'Konts',
- 'Account Number' => 'Konta numurs',
- 'Account Number missing!' => 'Nav norâdîts konta numurs!',
- 'Account Type' => 'Konta tips',
- 'Account Type missing!' => 'Nav norâdîts konta tips!',
- 'Account deleted!' => 'Kots izdzçsts!',
- 'Account does not exist!' => 'Konts neeksistç',
- 'Account saved!' => 'Konts saglabâts!',
- 'Accounting' => 'Kontçðana',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Uzkrâðana',
- 'Activate Audit trails' => 'Aktivizçt audita atzîmes',
- 'Active' => 'Aktîvs',
- 'Add' => 'Pievienot',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Pievienot kontu',
- 'Add Assembly' => 'Pievienot komplektâciju',
- 'Add Business' => 'Pievienot komercdarbîbu',
- 'Add Cash Transfer Transaction' => 'Pievienot naudas transakciju',
- 'Add Customer' => 'Pievienot klientu',
- 'Add Deduction' => 'Pievienot atlaidi',
- 'Add Department' => 'Pievienot nodaïu',
- 'Add Employee' => 'Pievienot darbinieku',
- 'Add Exchange Rate' => 'Pievienot valûtas maiòas kursu',
- 'Add GIFI' => 'Pievienot GIFI',
- 'Add General Ledger Transaction' => 'Pievienot virsgrâmatas transakciju',
- 'Add Group' => 'Pievienot grupu',
- 'Add Labor/Overhead' => 'Pievienot darbu/izmaksas',
- 'Add Language' => 'Pievienot valodu',
- 'Add POS Invoice' => 'Pievienot POS rçíinu',
- 'Add Part' => 'Pievienot daïu',
- 'Add Pricegroup' => 'Pieviento cenu grupu',
- 'Add Project' => 'Pievienot projektu',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add SIC' => 'Pievienot SIC',
- 'Add Sales Invoice' => 'Pievienot preèu rçíinu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Add Service' => 'Pievienot pakalpojumu',
- 'Add Transaction' => 'Pievienot transakciju',
- 'Add User' => 'Pievienot lietotâju',
- 'Add Vendor' => 'Pievienot pârdevçju',
- 'Add Vendor Invoice' => 'Pievienot pârdevçja rçíinu',
- 'Add Warehouse' => 'Pievienot noliktavu',
- 'Address' => 'Adrese',
- 'Administration' => 'Administrâcija',
- 'Administrator' => 'Administrators',
- 'After Deduction' => 'Pçc atlaides',
- 'All' => 'Visi',
- 'All Accounts' => 'Visi konti',
- 'All Datasets up to date!' => 'Visas datu kopas ir atjauninâtas!',
- 'All Items' => 'Visi ',
- 'Allowances' => 'Kabatas nauda',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Nesamaksâtâ summa',
- 'Amount missing!' => 'Nav norâdîta summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Invoice Number' => 'Vai jûs patieðâm vçlaties dzçst rçíina numuru',
- 'Are you sure you want to delete Order Number' => 'Vai jûs patieðâm vçlaties dzçst ordera numuru',
- 'Are you sure you want to delete Quotation Number' => 'Vai jûs patieðâm vçlaties dzçst tâmes numuru',
- 'Are you sure you want to delete Transaction' => 'Vai jûs patieðâm vçlaties dzçst transakciju',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Vai jûs patieðâm vçlaties dzçst atzîmçtos ierakstus rindâ',
- 'Assemblies' => 'Komplektâcijas',
- 'Assemblies restocked!' => 'Komplektâcijas papildinâtas!',
- 'Assembly' => 'Komplektâcija',
- 'Asset' => 'Aktîvs',
- 'Attachment' => 'Pielikums',
- 'Audit Control' => 'Audita kontrole',
- 'Audit trail removed up to' => 'Audita atzîmes novâktas lîdz',
- 'Audit trails disabled' => 'Audita atzîmes atslçgtas',
- 'Audit trails enabled' => 'Audita atzîmes ieslçgtas',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'BIC' => 'BIC',
- 'BOM' => 'Materiâlu uzskaite',
- 'Backup' => 'Rezerves kopija',
- 'Backup sent to' => 'Rezerves kopija nosûtîta uz',
- 'Balance' => 'Bilance',
- 'Balance Sheet' => 'Bilances pârskats',
- 'Based on' => 'Pamatojoties uz',
- 'Batch Printing' => 'Grupas drukâðana',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Pirms atlaides',
- 'Beginning Balance' => 'Sâkuma atlikums',
- 'Below' => 'Zemâk',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Bin Lists' => '',
- 'Books are open' => 'Ieraksti ir atvçrti',
- 'Break' => 'Pârtraukums',
- 'Business' => 'Komercdarbîba',
- 'Business Number' => 'Reìistrâcijas numurs',
- 'Business deleted!' => 'Komercdarbîba izdzçsta',
- 'Business saved!' => 'Komercdarbîba saglabâta',
- 'C' => 'cena',
- 'COGS' => 'Paðizmaksa',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Kontu nevar izdzçst!',
- 'Cannot delete customer!' => 'Klientu nevar izdzçst!',
- 'Cannot delete default account!' => 'Noklusçto kontu nevar izdzçst!',
- 'Cannot delete invoice!' => 'Rçíinu nevar izdzçst!',
- 'Cannot delete item!' => 'Vienîbu nevar izdzçst!',
- 'Cannot delete order!' => 'Orderi nevar izdzçst!',
- 'Cannot delete quotation!' => 'Tâmi nevar izdzçst!',
- 'Cannot delete transaction!' => 'Transakciju nevar izdzçst!',
- 'Cannot delete vendor!' => 'Pârdevçju nevar izdzçst!',
- 'Cannot post Payment!' => 'Maksâjumu nevar iegrâmatot!',
- 'Cannot post Receipt!' => 'Kvîti nevar iegrâmatot!',
- 'Cannot post invoice for a closed period!' => 'Nevar iegrâmatot rçíinu par slçgtu periodu!',
- 'Cannot post invoice!' => 'Nevar iegrâmatot rçíinu!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cannot post transaction for a closed period!' => 'Nevar iegrâmatot transakciju par slçgtu periodu!',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Cannot process payment for a closed period!' => 'Nevar apstrâdât maksâjumu par slçgtu periodu!',
- 'Cannot remove files!' => 'Nevar izdzçst failus',
- 'Cannot save account!' => 'Kontu nevar saglabât!',
- 'Cannot save defaults!' => 'Nevar saglabât noklusçtâs vçrtîbas',
- 'Cannot save order!' => 'Maksâjuma uzdevumu nevar saglabât!',
- 'Cannot save preferences!' => 'Nevar saglabât izvçles!',
- 'Cannot save quotation!' => 'Nevar saglabât tâmi',
- 'Cannot set account for more than one of AR, AP or IC' => 'Konta nevar piesaistît vairâk kâ vienam DP, KP vai IC',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Nevar papildinât komplektâciju!',
- 'Cash' => 'Nauda',
- 'Cc' => 'Cc',
- 'Change' => 'Izmainît',
- 'Change Admin Password' => 'Nomainît administratora paroli',
- 'Change Password' => 'Nomainît paroli',
- 'Character Set' => 'Zîmju kopa',
- 'Chart of Accounts' => 'Kontu plâns',
- 'Check' => 'Èeks',
- 'Check Inventory' => 'Èeku inventûra',
- 'Checks' => 'Èeki',
- 'City' => 'Pilsçta',
- 'Cleared' => 'Apmaksâts',
- 'Click on login name to edit!' => 'Noklikðíinât uz lietotâjvârda, lai mainîtu!',
- 'Close Books up to' => 'Aizvçrt ierakstus lîdz',
- 'Closed' => 'Aizvçrts',
- 'Code' => 'Kods',
- 'Code missing!' => 'Nav norâdîts kods',
- 'Company' => 'Uzòçmums',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Compare to' => 'Salîdzinât ar',
- 'Components' => 'Komponentes',
- 'Confirm' => '',
- 'Confirm!' => 'Apstiprinât!',
- 'Connect to' => 'Pievienoties',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Contra' => 'Kontrârais konts',
- 'Copies' => 'Kopijas',
- 'Copy to COA' => 'Kopçt uz kontu plânu',
- 'Cost' => 'Izmaksas',
- 'Cost Center' => 'Galvenâs izmaksas',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Nevarçja saglabât',
- 'Could not transfer Inventory!' => 'Nevarçja pârsûtît krâjumu',
- 'Country' => 'Valsts',
- 'Create Chart of Accounts' => 'Izveidot kontu plânu',
- 'Create Dataset' => 'Izveidot datu kopu',
- 'Credit' => 'Kredîts',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Current Earnings' => 'Paðreizçjie ienâkumi',
- 'Customer' => 'Klients',
- 'Customer History' => 'Klienta vçsture',
- 'Customer Number' => 'Klienta numurs',
- 'Customer deleted!' => 'Klients izdzçsts!',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Customer saved!' => 'Klients ir saglabâts!',
- 'Customers' => 'Klienti',
- 'DBI not installed!' => 'Nav instalçts DBI!',
- 'DOB' => '',
- 'Database' => 'Datubâze',
- 'Database Administration' => 'Datubâzes administrators',
- 'Database Driver not checked!' => 'Datubâzes draiveris nav atzîmçts!',
- 'Database Host' => 'Datubâzes serveris',
- 'Database User missing!' => 'Nav norâdîts datubâzes lietotâjs!',
- 'Dataset' => 'Datukopa',
- 'Dataset is newer than version!' => 'Datukopa ir jaunâka par versiju!',
- 'Dataset missing!' => 'Nav atrasta datukopa!',
- 'Dataset updated!' => 'Datukopa atjauninâta!',
- 'Date' => 'Datums',
- 'Date Format' => 'Datuma formâts',
- 'Date Paid' => 'Maksâjuma datums',
- 'Date Received' => 'Saòemðanas datums',
- 'Date missing!' => 'Nav norâdîts datums!',
- 'Date received missing!' => 'Nav norâdîts saòemðanas datums',
- 'Debit' => 'Debets',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Decimalplaces' => 'decimâldaïa',
- 'Decrease' => 'Samazinât',
- 'Deduct after' => 'Pieðíirt atlaidi pçc',
- 'Deduction deleted!' => 'Atlaide izdzçsta',
- 'Deduction saved!' => 'Atlaide saglabâta',
- 'Deductions' => 'Atlaides',
- 'Defaults' => 'Noklusçtâs vçrtîbas',
- 'Defaults saved!' => 'Noklusçtâs vçrtîbas saglabâtas',
- 'Delete' => 'Dzçst',
- 'Delete Account' => 'Izdzçst Kontu',
- 'Delete Dataset' => 'Izdzçst datukopu',
- 'Delivery Date' => 'Piegâdes datums',
- 'Department' => 'Nodaïa',
- 'Department deleted!' => 'Nodaïa izdzçsta',
- 'Department saved!' => 'Nodaïa saglabâta',
- 'Departments' => 'Nodaïas',
- 'Deposit' => 'Depozîts',
- 'Description' => 'Apraksts',
- 'Description Translations' => 'Apraksta tulkojumi',
- 'Description missing!' => 'Nav norâdîts apraksts',
- 'Detail' => 'Sîks apraksts',
- 'Difference' => 'Starpîba',
- 'Directory' => 'Direktorija',
- 'Discount' => 'Atlaide',
- 'Done' => 'Izdarîts',
- 'Drawing' => 'Èeku izrakstîðana',
- 'Driver' => 'Draiveris',
- 'Dropdown Limit' => 'Maks. rindu skaits izvçlnç',
- 'Due Date' => 'Apmaksas termiòð',
- 'Due Date missing!' => 'Nav norâdîts apmaksas termiòð!',
- 'E-mail' => 'E-pasts',
- 'E-mail Statement to' => 'Nosûtît atskaiti pa e-pastu uz ',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit' => 'Labot',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Labot kontu',
- 'Edit Assembly' => 'Labot komplektâciju',
- 'Edit Business' => 'Izmainît komercdarbîbu',
- 'Edit Cash Transfer Transaction' => 'Labot naudas pârsûtîðanas transakciju',
- 'Edit Customer' => 'Labot klientu',
- 'Edit Deduction' => 'Labot atlaidi',
- 'Edit Department' => 'Labot nodaïu',
- 'Edit Description Translations' => 'Labot tulkojumu aprakstus',
- 'Edit Employee' => 'Labot darbinieku',
- 'Edit GIFI' => 'Labot GIFI',
- 'Edit General Ledger Transaction' => 'Labot transakciju virsgrâmatâ',
- 'Edit Group' => 'Labot grupu',
- 'Edit Labor/Overhead' => 'Labot darbu/izmaksas',
- 'Edit Language' => 'Labot valodu',
- 'Edit POS Invoice' => 'Labot POS rçíinu',
- 'Edit Part' => 'Labot daïu',
- 'Edit Preferences for' => 'Labot izvçles',
- 'Edit Pricegroup' => 'Labot cenu grupu',
- 'Edit Project' => 'Labot projektu',
- 'Edit Purchase Order' => 'Labot pirkuma orderi',
- 'Edit Quotation' => 'Labot tâmi',
- 'Edit Request for Quotation' => 'Labot tâmes pieprasîjumu',
- 'Edit SIC' => 'Labot SIC',
- 'Edit Sales Invoice' => 'Labot pârdoðanas rçíinu',
- 'Edit Sales Order' => 'Labot pârdoðanas orderi',
- 'Edit Service' => 'Labot pakalpojumu',
- 'Edit Template' => 'Labot ðablonu',
- 'Edit User' => 'Labot lietotâju',
- 'Edit Vendor' => 'Labot pârdevçju',
- 'Edit Vendor Invoice' => 'Labot pârdevçja rçíinu',
- 'Edit Warehouse' => 'Labot noliktavu',
- 'Employee' => 'Darbinieks',
- 'Employee Name' => 'Darbinieka vârds',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Darbinieks izdzçsts',
- 'Employee pays' => 'Darbinieku izmaksas',
- 'Employee saved!' => 'Darbinieks saglabâts',
- 'Employees' => 'Darbinieki',
- 'Employer' => 'Nodarbinâtâjs',
- 'Employer pays' => 'Nodarbinâtâju izmaksas',
- 'Enddate' => 'Beigu datums',
- 'Enforce transaction reversal for all dates' => 'Izpildît transakciju atcelðanu visos datumos',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ierakstît 3 simbolus kolonâs (USD:LVL:EUR), lai definçtu valûtas',
- 'Equity' => 'Paðu kapitâls',
- 'Excempt age <' => '',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Existing Datasets' => 'Esoðâs datukopas',
- 'Expense' => 'Izdevumi',
- 'Expense Account' => 'Izdevumu konti',
- 'Expense/Asset' => 'Izdevumi/Aktîvi',
- 'Extended' => 'Kopâ',
- 'FX' => 'FX',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'Foreign Exchange Gain' => 'Ienâkumi no valûtas maiòas',
- 'Foreign Exchange Loss' => 'Zaudçjumi no valûtas maiòas',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI izdzçsts',
- 'GIFI missing!' => 'Nav norâdîts GIFI!',
- 'GIFI saved!' => 'GIFI saglabâts!',
- 'GL Transaction' => 'Virsgrâmatas transakcija',
- 'General Ledger' => 'Virsgrâmata',
- 'Goods & Services' => 'Preces un Pakalpojumi',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'Group Translations' => 'Grupu transakcijas',
- 'Group deleted!' => 'Grupa izdzçsta!',
- 'Group missing!' => 'Grupa nav norâdîta!',
- 'Group saved!' => 'Grupa saglabâta!',
- 'Groups' => 'Grupas',
- 'HR' => 'Personâldaïa',
- 'HTML Templates' => 'HTML ðabloni',
- 'Heading' => 'Virsraksts',
- 'History' => 'Vçsture',
- 'Home Phone' => 'Mâjas telefons',
- 'Host' => 'Serveris',
- 'Hostname missing!' => 'Nav norâdîts servera nosaukums!',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Attçls',
- 'In-line' => 'Iekïauts',
- 'Include Exchange Rate Difference' => 'Iekïaut valûtas kursu atðíirîbas',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Include in drop-down menus' => 'Iekïaut nolaiþamo izvçlni',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Iekïaut ðo kontu klienta/pârdevçja formâ, lai atzîmçtu klientu/pârdevçju kâ nodokïu maksâtâju?',
- 'Income' => 'Ienâkums',
- 'Income Account' => 'Ienâkumu konts',
- 'Income Statement' => 'Peïòas vai zaudçjuma aprçíins',
- 'Incorrect Dataset version!' => 'Nepareiza datukopas versija!',
- 'Incorrect Password!' => 'Nepareiza parole!',
- 'Increase' => 'Pieaugums',
- 'Individual Items' => 'Individuâli ieraksti',
- 'Internal Notes' => 'Iekðçjâs piezîmes',
- 'Inventory' => 'Krâjumi',
- 'Inventory Account' => 'Krâjumu konts',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Krâjuma daudzumam jâbût nullei pirms jûs varat atcelt ðo komplektâciju!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Krâjuma daudzumam jâbût nullei pirms jûs varat atcelt ðo preci!',
- 'Inventory saved!' => 'Krâjums saglabâts',
- 'Inventory transferred!' => 'Krâjums pârsûtîts',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Invoice deleted!' => 'Rçíins izdzçsts!',
- 'Invoice posted!' => 'Rçíins iegrâmatots!',
- 'Invoice processed!' => 'Rçíins apstrâdâts',
- 'Invoices' => 'Rçíini',
- 'Is this a summary account to record' => 'Vai ðis ir summârais konts ierakstam',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Vienîba izdzçsts!',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Items' => 'Vienîbas',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'LaTeX Templates' => 'LaTeX ðablons',
- 'Labor/Overhead' => 'Darbs/izmaksas',
- 'Language' => 'Valoda',
- 'Language deleted!' => 'Valoda izdzçsta',
- 'Language saved!' => 'Valoda saglabâta',
- 'Languages' => 'Valodas',
- 'Languages not defined!' => 'Valodas nav definçtas',
- 'Last Numbers & Default Accounts' => 'Pçdçjais numurs un noklusçtais konts',
- 'Leadtime' => 'Izlaides termiòð',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Servera un porta laukus var atstât tukðus, ja nevçlaties izveidot attâlinâtu konekciju',
- 'Liability' => 'Saistîbas',
- 'Licensed to' => 'Licencçts firmai',
- 'Line Total' => 'Kopsumma',
- 'Link' => 'Saite',
- 'Link Accounts' => 'Piesaistît kontus',
- 'List' => '',
- 'List Accounts' => 'Kontu saraksts',
- 'List Businesses' => 'Komerdarbîbu saraksts',
- 'List Departments' => 'Nodaïu saraksts',
- 'List GIFI' => 'GIFI saraksts',
- 'List Languages' => 'Valodu saraksts',
- 'List Price' => 'Cenrâþa cena',
- 'List Projects' => 'Projektu saraksts',
- 'List SIC' => 'SIC saraksts',
- 'List Transactions' => 'Transakciju saraksts',
- 'List Warehouses' => 'Noliktavu saraksts',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Pieteikties',
- 'Login name missing!' => 'Nav norâdîts pieteikumvârds',
- 'Logout' => 'Beigt darbu',
- 'Make' => 'Izveidot',
- 'Manager' => 'Vadîtâjs',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'Marked entries printed!' => 'Atzîmçtie ieraksti izdrukâti',
- 'Markup' => 'Uzcenojums',
- 'Maximum' => 'Maksimâlais',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Menu Width' => 'Izvçlnes Platums',
- 'Message' => 'Paziòojums',
- 'Method' => 'Metode',
- 'Microfiche' => 'Mikrofilma',
- 'Model' => 'Modelis',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibaitu kodçðana',
- 'N/A' => 'Nav',
- 'Name' => 'Nosaukums',
- 'Name missing!' => 'Nepareizs nosaukums',
- 'New Templates' => 'Jauni ðabloni',
- 'No' => 'Nç',
- 'No Database Drivers available!' => 'Nav pieejams datubâzes draiveris!',
- 'No Dataset selected!' => 'Nav iezîmçta datukopa!',
- 'No email address for' => 'Nav e-pasta adrese',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Neapliekams ar nodokïiem',
- 'Non-taxable Purchases' => 'Pirkumi, kas nav apliekami ar nodokïiem',
- 'Non-taxable Sales' => 'Tirgoðana, kas nav apliekama ar nodokïiem',
- 'Notes' => 'Piezîmes',
- 'Nothing entered!' => 'Nekas nav ievadîts',
- 'Nothing outstanding for ' => 'Nav nesamaksâto rçíinu par ',
- 'Nothing selected!' => 'Nekas nav iezîmçts!',
- 'Nothing to delete!' => 'Nav nekâ dzçðama!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Nav nekâ pârsûtîðanai',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number Format' => 'Skaitïa formâts',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'O' => 'O',
- 'Obsolete' => 'Novecojis',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'On Hand' => 'Pieejams',
- 'Open' => 'Atvçrts',
- 'Oracle Database Administration' => 'Oracle datubâzes administrçðana',
- 'Order' => 'Orderis',
- 'Order Date' => 'Ordera datums',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Entry' => 'Ordera ieraksts',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'Order deleted!' => 'Orderis izdzçsts',
- 'Order processed!' => 'Orderis apstrâdâts',
- 'Order saved!' => 'Orderis saglabâts!',
- 'Orphaned' => 'Bez atbilstoðâ pâra',
- 'Out of balance transaction!' => 'Transakcija bez bilances',
- 'Out of balance!' => 'Nav bilances!',
- 'Outstanding' => 'Neapmaksâtais',
- 'PDF' => 'PDF',
- 'POS' => 'POS',
- 'POS Invoice' => 'POS rçíins',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Packing Lists' => 'Iesaiòojumu saraksti',
- 'Paid' => 'Apmaksâts',
- 'Part' => 'Prece',
- 'Part Number' => 'Daïas numurs',
- 'Partnumber' => 'Daïas numurs',
- 'Parts' => 'Daïas',
- 'Parts Inventory' => 'Preèu inventûra',
- 'Password' => 'Parole',
- 'Password changed!' => 'Mainît paroli!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Kreditoru parâdi',
- 'Payment' => 'Maksâjums',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payment posted!' => 'Maksâjums iegrâmatots!',
- 'Payments' => 'Maksâjumi',
- 'Payroll Deduction' => 'Algu atlaides',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg datubâzes administrçðana',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Pick Lists' => '',
- 'Port' => 'Ports',
- 'Port missing!' => 'Nareizs porta numurs!',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Posted!' => 'Iegrâmatots!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Izvçles',
- 'Preferences saved!' => 'Izvçles saglabâtas!',
- 'Prepayment' => 'Avansa maksâjums',
- 'Price' => 'Cena',
- 'Pricegroup' => 'Cenu grupa',
- 'Pricegroup deleted!' => 'Cenu grupa izdzçsta',
- 'Pricegroup missing!' => 'Cenu grupa nav norâdîta',
- 'Pricegroup saved!' => 'Cenu grupa saglabâta',
- 'Pricegroups' => 'Cenu grupas',
- 'Pricelist' => '',
- 'Print' => 'Drukât',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => 'Izdrukâts',
- 'Printer' => 'Printeris',
- 'Printing ... ' => 'Drukâ ...',
- 'Profit Center' => 'Galvenie ienâkumi',
- 'Project' => 'Projekts',
- 'Project Description Translations' => 'Projekta apraksta tulkojumi',
- 'Project Number' => 'Projekta numurs',
- 'Project Number missing!' => 'Nav norâdîts projekta numurs!',
- 'Project Transactions' => 'Projekta transakcijas',
- 'Project deleted!' => 'Projekts izdzçsts!',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Project saved!' => 'Projekts saglabâts',
- 'Projects' => 'Projekti',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Qty' => 'Skaits',
- 'Quantity exceeds available units to stock!' => 'Skaits pârsniedz noliktavâ esoðo priekðmetu skaitu',
- 'Quarter' => '',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation ' => '',
- 'Quotation Date' => 'Tâmes datums',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number' => 'Tâmes numurs',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Quotation deleted!' => 'Tâme izdzçsta',
- 'Quotations' => 'Tâmes',
- 'R' => 'R',
- 'RFQ' => 'Tâmes pieprasîjums',
- 'RFQ ' => '',
- 'RFQ Number' => 'Tâmes pieprasîjuma numurs',
- 'RFQs' => 'Tâmes pieprasîjumu',
- 'ROP' => 'Pasûtîðanas limits',
- 'Rate' => 'Likme',
- 'Rate missing!' => 'Likme nav norâdîta',
- 'Recd' => 'Saòemts',
- 'Receipt' => 'Kvîts',
- 'Receipt posted!' => 'Kvîtis iegrâmatotas',
- 'Receipts' => 'Kvîtis',
- 'Receivables' => 'Ienâkoðie maksâjumi',
- 'Receive' => 'Saòemt',
- 'Receive Merchandise' => 'Saòemt preces',
- 'Reconciliation' => 'Izlîdzinâðana',
- 'Reconciliation Report' => 'Izlîdzinâðanas atskaite',
- 'Record in' => 'Ierakstît',
- 'Reference' => 'Norâde',
- 'Reference missing!' => 'Trûkst norâdes!',
- 'Remaining' => 'Atlikums',
- 'Remove' => 'Izdzçst',
- 'Remove Audit trails up to' => 'Izdzçst audita atzîmes lîdz',
- 'Removed spoolfiles!' => 'Izdzçst printera rindas failus',
- 'Removing marked entries from queue ...' => 'Izdzçðu atzîmçtos ierakstus no rindas ...',
- 'Report for' => 'Atskaite par',
- 'Reports' => 'Atskaites',
- 'Request for Quotation' => 'Tâmes pieprasîjums',
- 'Request for Quotations' => 'Tâmju pieprasîjums',
- 'Required by' => 'Pieprasîja',
- 'Retained Earnings' => 'Nesadalîtâ peïòa',
- 'Role' => 'Loma',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC izdzçsts',
- 'SIC saved!' => 'SIC saglabâts',
- 'SKU' => 'SKU',
- 'SSN' => '',
- 'Sale' => 'Pârdoðana',
- 'Sales' => 'Pârdoðanas',
- 'Sales Invoice' => 'Pârdoðanas rçíins',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Pârdoðanas rçíini',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Pârdevçjs',
- 'Save' => 'Saglabât',
- 'Save Pricelist' => '',
- 'Save as new' => 'Saglabât kâ jaunu',
- 'Save to File' => 'Saglabât failâ',
- 'Screen' => 'Ekrâns',
- 'Search' => 'Meklçt',
- 'Select' => 'Atlasît',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Atlasît visu',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Pârdoðanas cena',
- 'Send by E-Mail' => 'Nosûtît pa e-pastu',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Serial Number' => 'Seriâlais numurs',
- 'Service' => 'Pakalpojums',
- 'Service Items' => 'Pakalpojumu veidi',
- 'Services' => 'Pakalpojumi',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Ðablonu izveidoðana',
- 'Ship' => 'Piegâdât',
- 'Ship Merchandise' => 'Piegâdât preces',
- 'Ship to' => 'Piegâdes adrese',
- 'Ship via' => 'Piegâdât caur',
- 'Shipping' => 'Piegâde',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Shipping Date' => 'Nosûtîðanas datums',
- 'Shipping Date missing!' => 'Nav norâdîts nosûtîðanas datums',
- 'Shipping Point' => 'Nosûtîðanas vietas',
- 'Short' => 'Aizdoðana',
- 'Signature' => 'Paraksts',
- 'Source' => 'Dokuments',
- 'Spoolfile' => 'Printera rindas fails',
- 'Standard' => 'Standarts',
- 'Standard Industrial Codes' => 'Standarta industrijas kodi',
- 'Startdate' => 'Sâkuma datums',
- 'State' => '',
- 'State/Province' => 'Ðtats/Province',
- 'Statement' => 'Pârskats',
- 'Statement Balance' => 'Bilances atskaite',
- 'Statement sent to' => 'Nosûtît pârskatu uz',
- 'Statements sent to printer!' => 'Nosûtît pârskatu uz drukâðanu!',
- 'Stock' => 'Krâjums',
- 'Stock Assembly' => 'Komplektâcijas krâjumâ',
- 'Stylesheet' => 'Stila lapa',
- 'Sub-contract GIFI' => 'Subkontrakta GIFI',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Summary' => 'Kopçjais',
- 'Supervisor' => '',
- 'System' => 'Sistçma',
- 'System Defaults' => 'Sistçmas noklusçtâs vçrtîbas',
- 'Tax' => 'Nodokïi',
- 'Tax Accounts' => 'Nodokïu konti',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'Tax Number' => 'Nodokïu maksâtâja kods',
- 'Tax Number / SSN' => 'Nodokïu maksâtâja kods / SSN',
- 'Tax collected' => 'Ieòemtie nodokïi',
- 'Tax paid' => 'Samaksâtie nodokïi',
- 'Taxable' => 'Apliekams ar nodokli',
- 'Template saved!' => 'Ðablons saglabâts!',
- 'Templates' => 'Ðabloni',
- 'Terms' => 'Noteikumi: termiòð',
- 'Text Templates' => 'Teksta ðabloni',
- 'The following Datasets are not in use and can be deleted' => 'Sekojoðâs datukopas netiek lietotas un tâs var izdzçst',
- 'The following Datasets need to be updated' => 'Sekojoðâs datukopas nepiecieðams atjauninât',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Ðî ir sagatavoðanâs pârbaude esoðiem datiem. Nekas netiks izveidots vai izdzçsts.',
- 'Till' => 'lîdz',
- 'To' => 'uz',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Lai pievienotu lietotâju grupai, izmainiet lietotâjvârdu un saglabâjiet.',
- 'Top Level' => 'Augðçjais lîmenis',
- 'Total' => 'Pavisam Kopâ',
- 'Trade Discount' => 'Vairumtirgotâja atlaide',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Nav norâdîts transakcijas datums!',
- 'Transaction deleted!' => 'Transakcija izdzçsta!',
- 'Transaction posted!' => 'Transakcija iegrâmatota!',
- 'Transaction reversal enforced for all dates' => 'Veikt transakciju atcelðanu visiem datumiem',
- 'Transaction reversal enforced up to' => 'Transakcijas bûs izmainîtas lîdz',
- 'Transactions' => 'Transakcijas',
- 'Transfer' => 'Pârsûtîðana',
- 'Transfer Inventory' => 'Krâjuma pârsûtîðana',
- 'Transfer to' => 'Pârsûtît uz',
- 'Translation' => 'Tulkojums',
- 'Translation deleted!' => 'Tulkojums izdzçsts',
- 'Translation not on file!' => '',
- 'Translations' => 'Tulkojumi',
- 'Translations saved!' => 'Tulkojumi saglabâti',
- 'Trial Balance' => 'Kontu bilance',
- 'Type of Business' => 'Komercdarbîbas veids',
- 'Unit' => 'Vienîba',
- 'Unit of measure' => 'Preces mçrvienîba',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Atjauninât',
- 'Update Dataset' => 'Atjauninât datu kopu',
- 'Updated' => 'Atjauninâts',
- 'Upgrading to Version' => 'Uzlabot lîdz versijai',
- 'Use Templates' => 'Lietot ðablonu',
- 'User' => 'Lietotâjs',
- 'User deleted!' => 'Lietotâjs izdzçsts!',
- 'User saved!' => 'Lietotâjs saglabâts!',
- 'Valid until' => 'Derîgs lîdz',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor History' => 'Pârdevçja vçsture',
- 'Vendor Invoice' => 'Pârdevçja rçíins',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Pârdevçja rçíini',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor deleted!' => 'Pârdevçjs izdzçsts!',
- 'Vendor missing!' => 'Pârdevçjs nav norâdîts!',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Vendor saved!' => 'Pârdevçjs saglabâts',
- 'Vendors' => 'Pârdevçji',
- 'Version' => 'Versija',
- 'Warehouse' => 'Noliktava',
- 'Warehouse deleted!' => 'Noliktava izdzçsta',
- 'Warehouse saved!' => 'Noliktava saglabâta',
- 'Warehouses' => 'Noliktavas',
- 'Warning!' => 'Brîdinâjums!',
- 'Weight' => 'Svars',
- 'Weight Unit' => 'Svara mçrvienîba',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'Work Orders' => '',
- 'Work Phone' => 'Darba telefons',
- 'Year' => '',
- 'Yearend' => 'Finanðu gada beigas',
- 'Yearend date missing!' => 'Nav norâdîts pârskata finanðu gada beigu datums',
- 'Yearend posted!' => 'Finanðu gada beigas iegrâmatotas',
- 'Yearend posting failed!' => 'Finanðu gada beigu iegrâmatoðana neizdevâs',
- 'Yes' => 'Jâ',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nav ievadîts vârds',
- 'You must enter a host and port for local and remote connections!' => 'Lokâlam un attâlinâtam savienojumam jâievada vçrtîbas servera un porta laukos!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'kontu nevar nomainît uz jebkuru citu konta tipu',
- 'as at' => 'uz',
- 'days' => 'dienas',
- 'does not exist' => 'neeksistç',
- 'done' => 'izdarîts',
- 'ea' => 'gb',
- 'for Period' => 'periodam',
- 'is already a member!' => 'jau eksistç ',
- 'is not a member!' => 'nav dalîbnieks',
- 'localhost' => 'localhost',
- 'locked!' => 'slçgts!',
- 'posted!' => 'iegrâmatots!',
- 'sent' => 'nosûtîts',
- 'successfully created!' => 'veiksmîgi izveidots!',
- 'successfully deleted!' => 'veiksmîgi izdzçsts!',
- 'website' => 'interneta lapa',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/am b/sql-ledger/locale/lv/am
deleted file mode 100644
index 0b8727e..0000000
--- a/sql-ledger/locale/lv/am
+++ /dev/null
@@ -1,247 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditoru parâdi',
- 'AR' => 'Debitoru parâdi',
- 'About' => 'Par',
- 'Account' => 'Konts',
- 'Account Number' => 'Konta numurs',
- 'Account Number missing!' => 'Nav norâdîts konta numurs!',
- 'Account Type' => 'Konta tips',
- 'Account Type missing!' => 'Nav norâdîts konta tips!',
- 'Account deleted!' => 'Kots izdzçsts!',
- 'Account does not exist!' => 'Konts neeksistç',
- 'Account saved!' => 'Konts saglabâts!',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Accrual' => 'Uzkrâðana',
- 'Activate Audit trails' => 'Aktivizçt audita atzîmes',
- 'Add Account' => 'Pievienot kontu',
- 'Add Business' => 'Pievienot komercdarbîbu',
- 'Add Department' => 'Pievienot nodaïu',
- 'Add GIFI' => 'Pievienot GIFI',
- 'Add Language' => 'Pievienot valodu',
- 'Add SIC' => 'Pievienot SIC',
- 'Add Warehouse' => 'Pievienot noliktavu',
- 'Address' => 'Adrese',
- 'Asset' => 'Aktîvs',
- 'Audit Control' => 'Audita kontrole',
- 'Audit trail removed up to' => 'Audita atzîmes novâktas lîdz',
- 'Audit trails disabled' => 'Audita atzîmes atslçgtas',
- 'Audit trails enabled' => 'Audita atzîmes ieslçgtas',
- 'Backup sent to' => 'Rezerves kopija nosûtîta uz',
- 'Books are open' => 'Ieraksti ir atvçrti',
- 'Business Number' => 'Reìistrâcijas numurs',
- 'Business deleted!' => 'Komercdarbîba izdzçsta',
- 'Business saved!' => 'Komercdarbîba saglabâta',
- 'COGS' => 'Paðizmaksa',
- 'Cannot delete account!' => 'Kontu nevar izdzçst!',
- 'Cannot delete default account!' => 'Noklusçto kontu nevar izdzçst!',
- 'Cannot save account!' => 'Kontu nevar saglabât!',
- 'Cannot save defaults!' => 'Nevar saglabât noklusçtâs vçrtîbas',
- 'Cannot save preferences!' => 'Nevar saglabât izvçles!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Konta nevar piesaistît vairâk kâ vienam DP, KP vai IC',
- 'Cash' => 'Nauda',
- 'Character Set' => 'Zîmju kopa',
- 'Chart of Accounts' => 'Kontu plâns',
- 'Close Books up to' => 'Aizvçrt ierakstus lîdz',
- 'Code' => 'Kods',
- 'Code missing!' => 'Nav norâdîts kods',
- 'Company' => 'Uzòçmums',
- 'Continue' => 'Turpinât',
- 'Contra' => 'Kontrârais konts',
- 'Copy to COA' => 'Kopçt uz kontu plânu',
- 'Cost Center' => 'Galvenâs izmaksas',
- 'Credit' => 'Kredîts',
- 'Customer Number' => 'Klienta numurs',
- 'Database Host' => 'Datubâzes serveris',
- 'Dataset' => 'Datukopa',
- 'Date Format' => 'Datuma formâts',
- 'Debit' => 'Debets',
- 'Defaults saved!' => 'Noklusçtâs vçrtîbas saglabâtas',
- 'Delete' => 'Dzçst',
- 'Delete Account' => 'Izdzçst Kontu',
- 'Department deleted!' => 'Nodaïa izdzçsta',
- 'Department saved!' => 'Nodaïa saglabâta',
- 'Departments' => 'Nodaïas',
- 'Description' => 'Apraksts',
- 'Description missing!' => 'Nav norâdîts apraksts',
- 'Discount' => 'Atlaide',
- 'Dropdown Limit' => 'Maks. rindu skaits izvçlnç',
- 'E-mail' => 'E-pasts',
- 'Edit' => 'Labot',
- 'Edit Account' => 'Labot kontu',
- 'Edit Business' => 'Izmainît komercdarbîbu',
- 'Edit Department' => 'Labot nodaïu',
- 'Edit GIFI' => 'Labot GIFI',
- 'Edit Language' => 'Labot valodu',
- 'Edit Preferences for' => 'Labot izvçles',
- 'Edit SIC' => 'Labot SIC',
- 'Edit Template' => 'Labot ðablonu',
- 'Edit Warehouse' => 'Labot noliktavu',
- 'Enforce transaction reversal for all dates' => 'Izpildît transakciju atcelðanu visos datumos',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ierakstît 3 simbolus kolonâs (USD:LVL:EUR), lai definçtu valûtas',
- 'Equity' => 'Paðu kapitâls',
- 'Expense' => 'Izdevumi',
- 'Expense Account' => 'Izdevumu konti',
- 'Expense/Asset' => 'Izdevumi/Aktîvi',
- 'Fax' => 'Fakss',
- 'Foreign Exchange Gain' => 'Ienâkumi no valûtas maiòas',
- 'Foreign Exchange Loss' => 'Zaudçjumi no valûtas maiòas',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI izdzçsts',
- 'GIFI missing!' => 'Nav norâdîts GIFI!',
- 'GIFI saved!' => 'GIFI saglabâts!',
- 'Heading' => 'Virsraksts',
- 'Include in drop-down menus' => 'Iekïaut nolaiþamo izvçlni',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Iekïaut ðo kontu klienta/pârdevçja formâ, lai atzîmçtu klientu/pârdevçju kâ nodokïu maksâtâju?',
- 'Income' => 'Ienâkums',
- 'Income Account' => 'Ienâkumu konts',
- 'Inventory' => 'Krâjumi',
- 'Inventory Account' => 'Krâjumu konts',
- 'Is this a summary account to record' => 'Vai ðis ir summârais konts ierakstam',
- 'Labor/Overhead' => 'Darbs/izmaksas',
- 'Language' => 'Valoda',
- 'Language deleted!' => 'Valoda izdzçsta',
- 'Language saved!' => 'Valoda saglabâta',
- 'Languages' => 'Valodas',
- 'Last Numbers & Default Accounts' => 'Pçdçjais numurs un noklusçtais konts',
- 'Liability' => 'Saistîbas',
- 'Licensed to' => 'Licencçts firmai',
- 'Link' => 'Saite',
- 'Menu Width' => 'Izvçlnes Platums',
- 'Method' => 'Metode',
- 'Name' => 'Nosaukums',
- 'No' => 'Nç',
- 'No email address for' => 'Nav e-pasta adrese',
- 'Number' => 'Numurs',
- 'Number Format' => 'Skaitïa formâts',
- 'Partnumber' => 'Daïas numurs',
- 'Parts Inventory' => 'Preèu inventûra',
- 'Password' => 'Parole',
- 'Payables' => 'Kreditoru parâdi',
- 'Payment' => 'Maksâjums',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Izvçles saglabâtas!',
- 'Printer' => 'Printeris',
- 'Profit Center' => 'Galvenie ienâkumi',
- 'RFQ Number' => 'Tâmes pieprasîjuma numurs',
- 'Rate' => 'Likme',
- 'Receivables' => 'Ienâkoðie maksâjumi',
- 'Reference' => 'Norâde',
- 'Remove Audit trails up to' => 'Izdzçst audita atzîmes lîdz',
- 'Retained Earnings' => 'Nesadalîtâ peïòa',
- 'SIC deleted!' => 'SIC izdzçsts',
- 'SIC saved!' => 'SIC saglabâts',
- 'Save' => 'Saglabât',
- 'Save as new' => 'Saglabât kâ jaunu',
- 'Service Items' => 'Pakalpojumu veidi',
- 'Signature' => 'Paraksts',
- 'Standard Industrial Codes' => 'Standarta industrijas kodi',
- 'Stylesheet' => 'Stila lapa',
- 'System Defaults' => 'Sistçmas noklusçtâs vçrtîbas',
- 'Tax' => 'Nodokïi',
- 'Tax Accounts' => 'Nodokïu konti',
- 'Template saved!' => 'Ðablons saglabâts!',
- 'Transaction reversal enforced for all dates' => 'Veikt transakciju atcelðanu visiem datumiem',
- 'Transaction reversal enforced up to' => 'Transakcijas bûs izmainîtas lîdz',
- 'Type of Business' => 'Komercdarbîbas veids',
- 'User' => 'Lietotâjs',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Version' => 'Versija',
- 'Warehouse deleted!' => 'Noliktava izdzçsta',
- 'Warehouse saved!' => 'Noliktava saglabâta',
- 'Warehouses' => 'Noliktavas',
- 'Weight Unit' => 'Svara mçrvienîba',
- 'Yearend' => 'Finanðu gada beigas',
- 'Yearend date missing!' => 'Nav norâdîts pârskata finanðu gada beigu datums',
- 'Yearend posted!' => 'Finanðu gada beigas iegrâmatotas',
- 'Yearend posting failed!' => 'Finanðu gada beigu iegrâmatoðana neizdevâs',
- 'Yes' => 'Jâ',
- 'account cannot be set to any other type of account' => 'kontu nevar nomainît uz jebkuru citu konta tipu',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'pievienot_kontu' => 'add_account',
- 'pievienot_komercdarbîbu' => 'add_business',
- 'pievienot_nodaïu' => 'add_department',
- 'pievienot_valodu' => 'add_language',
- 'pievienot_sic' => 'add_sic',
- 'pievienot_noliktavu' => 'add_warehouse',
- 'turpinât' => 'continue',
- 'kopçt_uz_kontu_plânu' => 'copy_to_coa',
- 'dzçst' => 'delete',
- 'labot' => 'edit',
- 'labot_kontu' => 'edit_account',
- 'saglabât' => 'save',
- 'saglabât_kâ_jaunu' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ap b/sql-ledger/locale/lv/ap
deleted file mode 100644
index 2e93d40..0000000
--- a/sql-ledger/locale/lv/ap
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'KP Neapmaksâtie',
- 'AP Transaction' => 'KP transakcija',
- 'AP Transactions' => 'KP transakcijas',
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Nesamaksâtâ summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Transaction' => 'Vai jûs patieðâm vçlaties dzçst transakciju',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Cannot delete transaction!' => 'Transakciju nevar izdzçst!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cannot post transaction for a closed period!' => 'Nevar iegrâmatot transakciju par slçgtu periodu!',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Check' => 'Èeks',
- 'Closed' => 'Aizvçrts',
- 'Confirm!' => 'Apstiprinât!',
- 'Continue' => 'Turpinât',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Date Paid' => 'Maksâjuma datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'Due Date missing!' => 'Nav norâdîts apmaksas termiòð!',
- 'Employee' => 'Darbinieks',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'ID' => 'ID',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Manager' => 'Vadîtâjs',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Open' => 'Atvçrts',
- 'Order' => 'Orderis',
- 'Order Number' => 'Ordera Nr.',
- 'PDF' => 'PDF',
- 'Paid' => 'Apmaksâts',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payments' => 'Maksâjumi',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Postscript' => 'Postscript',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Receipt' => 'Kvîts',
- 'Remaining' => 'Atlikums',
- 'Screen' => 'Ekrâns',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Source' => 'Dokuments',
- 'Subtotal' => 'Kopâ',
- 'Tax' => 'Nodokïi',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Transaction deleted!' => 'Transakcija izdzçsta!',
- 'Transaction posted!' => 'Transakcija iegrâmatota!',
- 'Update' => 'Atjauninât',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor missing!' => 'Pârdevçjs nav norâdîts!',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Yes' => 'Jâ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kp_transakcija' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'drukât' => 'print',
- 'print_and_post' => 'print_and_post',
- 'atjauninât' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ar b/sql-ledger/locale/lv/ar
deleted file mode 100644
index f0da964..0000000
--- a/sql-ledger/locale/lv/ar
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'DP Neapmaksâtie',
- 'AR Transaction' => 'DP transakcija',
- 'AR Transactions' => 'DP transakcijas',
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Nesamaksâtâ summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Transaction' => 'Vai jûs patieðâm vçlaties dzçst transakciju',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Cannot delete transaction!' => 'Transakciju nevar izdzçst!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cannot post transaction for a closed period!' => 'Nevar iegrâmatot transakciju par slçgtu periodu!',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Check' => 'Èeks',
- 'Closed' => 'Aizvçrts',
- 'Confirm!' => 'Apstiprinât!',
- 'Continue' => 'Turpinât',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Customer' => 'Klients',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Date Paid' => 'Maksâjuma datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'Due Date missing!' => 'Nav norâdîts apmaksas termiòð!',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'ID' => 'ID',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Manager' => 'Vadîtâjs',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Open' => 'Atvçrts',
- 'Order' => 'Orderis',
- 'Order Number' => 'Ordera Nr.',
- 'PDF' => 'PDF',
- 'Paid' => 'Apmaksâts',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payments' => 'Maksâjumi',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Postscript' => 'Postscript',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Receipt' => 'Kvîts',
- 'Remaining' => 'Atlikums',
- 'Salesperson' => 'Pârdevçjs',
- 'Screen' => 'Ekrâns',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Ship via' => 'Piegâdât caur',
- 'Shipping Point' => 'Nosûtîðanas vietas',
- 'Source' => 'Dokuments',
- 'Subtotal' => 'Kopâ',
- 'Tax' => 'Nodokïi',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'Till' => 'lîdz',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Transaction deleted!' => 'Transakcija izdzçsta!',
- 'Transaction posted!' => 'Transakcija iegrâmatota!',
- 'Update' => 'Atjauninât',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Yes' => 'Jâ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'dp_transakcija' => 'ar_transaction',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'drukât' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'atjauninât' => 'update',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/arap b/sql-ledger/locale/lv/arap
deleted file mode 100644
index 53a0893..0000000
--- a/sql-ledger/locale/lv/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adrese',
- 'Continue' => 'Turpinât',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Description' => 'Apraksts',
- 'Number' => 'Numurs',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'turpinât' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/arapprn b/sql-ledger/locale/lv/arapprn
deleted file mode 100644
index 9e6a321..0000000
--- a/sql-ledger/locale/lv/arapprn
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Amount' => 'Summa',
- 'Check' => 'Èeks',
- 'Continue' => 'Turpinât',
- 'Date' => 'Datums',
- 'Memo' => 'Memorands',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Izdrukâts',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Receipt' => 'Kvîts',
- 'Screen' => 'Ekrâns',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Source' => 'Dokuments',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'turpinât' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/bp b/sql-ledger/locale/lv/bp
deleted file mode 100644
index 6f29663..0000000
--- a/sql-ledger/locale/lv/bp
+++ /dev/null
@@ -1,60 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Vai jûs patieðâm vçlaties dzçst atzîmçtos ierakstus rindâ',
- 'Cannot remove files!' => 'Nevar izdzçst failus',
- 'Checks' => 'Èeki',
- 'Confirm!' => 'Apstiprinât!',
- 'Continue' => 'Turpinât',
- 'Current' => 'Paðreizçjs',
- 'Customer' => 'Klients',
- 'Date' => 'Datums',
- 'From' => 'No',
- 'Invoice' => 'Rçíins',
- 'Invoice Number' => 'Rçíina numurs',
- 'Marked entries printed!' => 'Atzîmçtie ieraksti izdrukâti',
- 'Order' => 'Orderis',
- 'Order Number' => 'Ordera Nr.',
- 'Packing Lists' => 'Iesaiòojumu saraksti',
- 'Print' => 'Drukât',
- 'Printing ... ' => 'Drukâ ...',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Quotation' => 'Tâme',
- 'Quotation Number' => 'Tâmes numurs',
- 'Quotations' => 'Tâmes',
- 'RFQs' => 'Tâmes pieprasîjumu',
- 'Receipts' => 'Kvîtis',
- 'Reference' => 'Norâde',
- 'Remove' => 'Izdzçst',
- 'Removed spoolfiles!' => 'Izdzçst printera rindas failus',
- 'Removing marked entries from queue ...' => 'Izdzçðu atzîmçtos ierakstus no rindas ...',
- 'Sales Invoices' => 'Pârdoðanas rçíini',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Select all' => 'Atlasît visu',
- 'Spoolfile' => 'Printera rindas fails',
- 'To' => 'uz',
- 'Vendor' => 'Pârdevçjs',
- 'Yes' => 'Jâ',
- 'done' => 'izdarîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'turpinât' => 'continue',
- 'drukât' => 'print',
- 'izdzçst' => 'remove',
- 'atlasît_visu' => 'select_all',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ca b/sql-ledger/locale/lv/ca
deleted file mode 100644
index dfa84ee..0000000
--- a/sql-ledger/locale/lv/ca
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Balance' => 'Bilance',
- 'Chart of Accounts' => 'Kontu plâns',
- 'Credit' => 'Kredîts',
- 'Current' => 'Paðreizçjs',
- 'Date' => 'Datums',
- 'Debit' => 'Debets',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'List Transactions' => 'Transakciju saraksts',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Project Number' => 'Projekta numurs',
- 'R' => 'R',
- 'Reference' => 'Norâde',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Subtotal' => 'Kopâ',
- 'To' => 'uz',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'transakciju_saraksts' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/cp b/sql-ledger/locale/lv/cp
deleted file mode 100644
index 6f07d45..0000000
--- a/sql-ledger/locale/lv/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditoru parâdi',
- 'AR' => 'Debitoru parâdi',
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Address' => 'Adrese',
- 'All' => 'Visi',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Nesamaksâtâ summa',
- 'Cannot post Payment!' => 'Maksâjumu nevar iegrâmatot!',
- 'Cannot post Receipt!' => 'Kvîti nevar iegrâmatot!',
- 'Cannot process payment for a closed period!' => 'Nevar apstrâdât maksâjumu par slçgtu periodu!',
- 'Continue' => 'Turpinât',
- 'Currency' => 'Valûta',
- 'Customer' => 'Klients',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Date missing!' => 'Nav norâdîts datums!',
- 'Department' => 'Nodaïa',
- 'Deposit' => 'Depozîts',
- 'Description' => 'Apraksts',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Invoice' => 'Rçíins',
- 'Invoices' => 'Rçíini',
- 'Memo' => 'Memorands',
- 'Nothing outstanding for ' => 'Nav nesamaksâto rçíinu par ',
- 'Number' => 'Numurs',
- 'PDF' => 'PDF',
- 'Payment' => 'Maksâjums',
- 'Payment posted!' => 'Maksâjums iegrâmatots!',
- 'Post' => 'Iegrâmatot',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Avansa maksâjums',
- 'Print' => 'Drukât',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Queue' => 'Rinda',
- 'Receipt' => 'Kvîts',
- 'Receipt posted!' => 'Kvîtis iegrâmatotas',
- 'Screen' => 'Ekrâns',
- 'Select' => 'Atlasît',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Source' => 'Dokuments',
- 'Update' => 'Atjauninât',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'turpinât' => 'continue',
- 'iegrâmatot' => 'post',
- 'drukât' => 'print',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ct b/sql-ledger/locale/lv/ct
deleted file mode 100644
index 2407ef9..0000000
--- a/sql-ledger/locale/lv/ct
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'KP transakcija',
- 'AP Transactions' => 'KP transakcijas',
- 'AR Transaction' => 'DP transakcija',
- 'AR Transactions' => 'DP transakcijas',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Customer' => 'Pievienot klientu',
- 'Add Vendor' => 'Pievienot pârdevçju',
- 'Address' => 'Adrese',
- 'All' => 'Visi',
- 'Amount' => 'Summa',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Break' => 'Pârtraukums',
- 'Cannot delete customer!' => 'Klientu nevar izdzçst!',
- 'Cannot delete vendor!' => 'Pârdevçju nevar izdzçst!',
- 'Cc' => 'Cc',
- 'City' => 'Pilsçta',
- 'Closed' => 'Aizvçrts',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Cost' => 'Izmaksas',
- 'Country' => 'Valsts',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Customer History' => 'Klienta vçsture',
- 'Customer Number' => 'Klienta numurs',
- 'Customer deleted!' => 'Klients izdzçsts!',
- 'Customer saved!' => 'Klients ir saglabâts!',
- 'Customers' => 'Klienti',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Description' => 'Apraksts',
- 'Detail' => 'Sîks apraksts',
- 'Discount' => 'Atlaide',
- 'E-mail' => 'E-pasts',
- 'Edit Customer' => 'Labot klientu',
- 'Edit Vendor' => 'Labot pârdevçju',
- 'Employee' => 'Darbinieks',
- 'Enddate' => 'Beigu datums',
- 'Fax' => 'Fakss',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupa',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Invoice' => 'Rçíins',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Language' => 'Valoda',
- 'Leadtime' => 'Izlaides termiòð',
- 'Manager' => 'Vadîtâjs',
- 'Name' => 'Nosaukums',
- 'Name missing!' => 'Nepareizs nosaukums',
- 'Notes' => 'Piezîmes',
- 'Number' => 'Numurs',
- 'Open' => 'Atvçrts',
- 'Order' => 'Orderis',
- 'Orphaned' => 'Bez atbilstoðâ pâra',
- 'Part Number' => 'Daïas numurs',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Cenu grupa',
- 'Project Number' => 'Projekta numurs',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Qty' => 'Skaits',
- 'Quotation' => 'Tâme',
- 'Quotations' => 'Tâmes',
- 'RFQ' => 'Tâmes pieprasîjums',
- 'Request for Quotations' => 'Tâmju pieprasîjums',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Pârdoðanas rçíins',
- 'Sales Invoices' => 'Pârdoðanas rçíini',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Salesperson' => 'Pârdevçjs',
- 'Save' => 'Saglabât',
- 'Search' => 'Meklçt',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Sell Price' => 'Pârdoðanas cena',
- 'Serial Number' => 'Seriâlais numurs',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Startdate' => 'Sâkuma datums',
- 'State/Province' => 'Ðtats/Province',
- 'Sub-contract GIFI' => 'Subkontrakta GIFI',
- 'Subtotal' => 'Kopâ',
- 'Summary' => 'Kopçjais',
- 'Tax' => 'Nodokïi',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'Tax Number' => 'Nodokïu maksâtâja kods',
- 'Tax Number / SSN' => 'Nodokïu maksâtâja kods / SSN',
- 'Taxable' => 'Apliekams ar nodokli',
- 'Terms' => 'Noteikumi: termiòð',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Type of Business' => 'Komercdarbîbas veids',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
- 'Vendor History' => 'Pârdevçja vçsture',
- 'Vendor Invoice' => 'Pârdevçja rçíins',
- 'Vendor Invoices' => 'Pârdevçja rçíini',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor deleted!' => 'Pârdevçjs izdzçsts!',
- 'Vendor saved!' => 'Pârdevçjs saglabâts',
- 'Vendors' => 'Pârdevçji',
- 'days' => 'dienas',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'kp_transakcija' => 'ap_transaction',
- 'dp_transakcija' => 'ar_transaction',
- 'pievienot_klientu' => 'add_customer',
- 'pievienot_pârdevçju' => 'add_vendor',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'pricelist' => 'pricelist',
- 'pirkðanas_orderis' => 'purchase_order',
- 'tâme' => 'quotation',
- 'tâmes_pieprasîjums' => 'rfq',
- 'pârdoðanas_rçíins' => 'sales_invoice',
- 'pârdoðanas_orderis' => 'sales_order',
- 'saglabât' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'atjauninât' => 'update',
- 'pârdevçja_rçíins' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/gl b/sql-ledger/locale/lv/gl
deleted file mode 100644
index b094145..0000000
--- a/sql-ledger/locale/lv/gl
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'KP transakcija',
- 'AR Transaction' => 'DP transakcija',
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Cash Transfer Transaction' => 'Pievienot naudas transakciju',
- 'Add General Ledger Transaction' => 'Pievienot virsgrâmatas transakciju',
- 'Address' => 'Adrese',
- 'All' => 'Visi',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Transaction' => 'Vai jûs patieðâm vçlaties dzçst transakciju',
- 'Asset' => 'Aktîvs',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Balance' => 'Bilance',
- 'Cannot delete transaction!' => 'Transakciju nevar izdzçst!',
- 'Cannot post transaction for a closed period!' => 'Nevar iegrâmatot transakciju par slçgtu periodu!',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Confirm!' => 'Apstiprinât!',
- 'Continue' => 'Turpinât',
- 'Contra' => 'Kontrârais konts',
- 'Credit' => 'Kredîts',
- 'Current' => 'Paðreizçjs',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Debit' => 'Debets',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Edit Cash Transfer Transaction' => 'Labot naudas pârsûtîðanas transakciju',
- 'Edit General Ledger Transaction' => 'Labot transakciju virsgrâmatâ',
- 'Equity' => 'Paðu kapitâls',
- 'Expense' => 'Izdevumi',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Virsgrâmatas transakcija',
- 'General Ledger' => 'Virsgrâmata',
- 'ID' => 'ID',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Income' => 'Ienâkums',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Liability' => 'Saistîbas',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Out of balance transaction!' => 'Transakcija bez bilances',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Project' => 'Projekts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'R' => 'R',
- 'Reference' => 'Norâde',
- 'Reference missing!' => 'Trûkst norâdes!',
- 'Reports' => 'Atskaites',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Source' => 'Dokuments',
- 'Subtotal' => 'Kopâ',
- 'To' => 'uz',
- 'Transaction Date missing!' => 'Nav norâdîts transakcijas datums!',
- 'Transaction deleted!' => 'Transakcija izdzçsta!',
- 'Transaction posted!' => 'Transakcija iegrâmatota!',
- 'Update' => 'Atjauninât',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Warning!' => 'Brîdinâjums!',
- 'Yes' => 'Jâ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kp_transakcija' => 'ap_transaction',
- 'dp_transakcija' => 'ar_transaction',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'virsgrâmatas_transakcija' => 'gl_transaction',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'atjauninât' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/hr b/sql-ledger/locale/lv/hr
deleted file mode 100644
index c3ebb63..0000000
--- a/sql-ledger/locale/lv/hr
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditoru parâdi',
- 'Above' => 'Iepriekð',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Deduction' => 'Pievienot atlaidi',
- 'Add Employee' => 'Pievienot darbinieku',
- 'Address' => 'Adrese',
- 'Administrator' => 'Administrators',
- 'After Deduction' => 'Pçc atlaides',
- 'All' => 'Visi',
- 'Allowances' => 'Kabatas nauda',
- 'Amount' => 'Summa',
- 'Amount missing!' => 'Nav norâdîta summa',
- 'BIC' => 'BIC',
- 'Based on' => 'Pamatojoties uz',
- 'Before Deduction' => 'Pirms atlaides',
- 'Below' => 'Zemâk',
- 'City' => 'Pilsçta',
- 'Continue' => 'Turpinât',
- 'Country' => 'Valsts',
- 'Deduct after' => 'Pieðíirt atlaidi pçc',
- 'Deduction deleted!' => 'Atlaide izdzçsta',
- 'Deduction saved!' => 'Atlaide saglabâta',
- 'Deductions' => 'Atlaides',
- 'Delete' => 'Dzçst',
- 'Description' => 'Apraksts',
- 'Description missing!' => 'Nav norâdîts apraksts',
- 'E-mail' => 'E-pasts',
- 'Edit Deduction' => 'Labot atlaidi',
- 'Edit Employee' => 'Labot darbinieku',
- 'Employee' => 'Darbinieks',
- 'Employee Name' => 'Darbinieka vârds',
- 'Employee deleted!' => 'Darbinieks izdzçsts',
- 'Employee pays' => 'Darbinieku izmaksas',
- 'Employee saved!' => 'Darbinieks saglabâts',
- 'Employees' => 'Darbinieki',
- 'Employer' => 'Nodarbinâtâjs',
- 'Employer pays' => 'Nodarbinâtâju izmaksas',
- 'Enddate' => 'Beigu datums',
- 'Expense' => 'Izdevumi',
- 'Home Phone' => 'Mâjas telefons',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Login' => 'Pieteikties',
- 'Manager' => 'Vadîtâjs',
- 'Maximum' => 'Maksimâlais',
- 'Name' => 'Nosaukums',
- 'Name missing!' => 'Nepareizs nosaukums',
- 'Notes' => 'Piezîmes',
- 'Number' => 'Numurs',
- 'Orphaned' => 'Bez atbilstoðâ pâra',
- 'Payroll Deduction' => 'Algu atlaides',
- 'Rate' => 'Likme',
- 'Rate missing!' => 'Likme nav norâdîta',
- 'Role' => 'Loma',
- 'S' => 'S',
- 'Sales' => 'Pârdoðanas',
- 'Save' => 'Saglabât',
- 'Save as new' => 'Saglabât kâ jaunu',
- 'Startdate' => 'Sâkuma datums',
- 'State/Province' => 'Ðtats/Province',
- 'Update' => 'Atjauninât',
- 'User' => 'Lietotâjs',
- 'Work Phone' => 'Darba telefons',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'pievienot_atlaidi' => 'add_deduction',
- 'pievienot_darbinieku' => 'add_employee',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'saglabât' => 'save',
- 'saglabât_kâ_jaunu' => 'save_as_new',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ic b/sql-ledger/locale/lv/ic
deleted file mode 100644
index 26fc46a..0000000
--- a/sql-ledger/locale/lv/ic
+++ /dev/null
@@ -1,269 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Accrual' => 'Uzkrâðana',
- 'Active' => 'Aktîvs',
- 'Add' => 'Pievienot',
- 'Add Assembly' => 'Pievienot komplektâciju',
- 'Add Labor/Overhead' => 'Pievienot darbu/izmaksas',
- 'Add Part' => 'Pievienot daïu',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Add Service' => 'Pievienot pakalpojumu',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Assemblies' => 'Komplektâcijas',
- 'Assemblies restocked!' => 'Komplektâcijas papildinâtas!',
- 'Assembly' => 'Komplektâcija',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'BOM' => 'Materiâlu uzskaite',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Break' => 'Pârtraukums',
- 'COGS' => 'Paðizmaksa',
- 'Cannot delete item!' => 'Vienîbu nevar izdzçst!',
- 'Cannot stock assemblies!' => 'Nevar papildinât komplektâciju!',
- 'Cash' => 'Nauda',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Èeku inventûra',
- 'City' => 'Pilsçta',
- 'Closed' => 'Aizvçrts',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Components' => 'Komponentes',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Cost' => 'Izmaksas',
- 'Country' => 'Valsts',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Customer' => 'Klients',
- 'Customer Number' => 'Klienta numurs',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Description' => 'Apraksts',
- 'Drawing' => 'Èeku izrakstîðana',
- 'E-mail' => 'E-pasts',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit Assembly' => 'Labot komplektâciju',
- 'Edit Labor/Overhead' => 'Labot darbu/izmaksas',
- 'Edit Part' => 'Labot daïu',
- 'Edit Service' => 'Labot pakalpojumu',
- 'Employee' => 'Darbinieks',
- 'Expense' => 'Izdevumi',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'Image' => 'Attçls',
- 'In-line' => 'Iekïauts',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Income' => 'Ienâkums',
- 'Individual Items' => 'Individuâli ieraksti',
- 'Inventory' => 'Krâjumi',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Krâjuma daudzumam jâbût nullei pirms jûs varat atcelt ðo komplektâciju!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Krâjuma daudzumam jâbût nullei pirms jûs varat atcelt ðo preci!',
- 'Invoice' => 'Rçíins',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Item deleted!' => 'Vienîba izdzçsts!',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Items' => 'Vienîbas',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Labor/Overhead' => 'Darbs/izmaksas',
- 'Leadtime' => 'Izlaides termiòð',
- 'Line Total' => 'Kopsumma',
- 'Link Accounts' => 'Piesaistît kontus',
- 'List Price' => 'Cenrâþa cena',
- 'Make' => 'Izveidot',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'Markup' => 'Uzcenojums',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Message' => 'Paziòojums',
- 'Microfiche' => 'Mikrofilma',
- 'Model' => 'Modelis',
- 'Name' => 'Nosaukums',
- 'No.' => 'Nr.',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'Obsolete' => 'Novecojis',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'On Hand' => 'Pieejams',
- 'Open' => 'Atvçrts',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'Orphaned' => 'Bez atbilstoðâ pâra',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Part' => 'Prece',
- 'Parts' => 'Daïas',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Pricegroup' => 'Cenu grupa',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Qty' => 'Skaits',
- 'Quantity exceeds available units to stock!' => 'Skaits pârsniedz noliktavâ esoðo priekðmetu skaitu',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Quotations' => 'Tâmes',
- 'RFQ' => 'Tâmes pieprasîjums',
- 'ROP' => 'Pasûtîðanas limits',
- 'Recd' => 'Saòemts',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Pârdoðanas rçíins',
- 'Sales Invoices' => 'Pârdoðanas rçíini',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Save' => 'Saglabât',
- 'Save as new' => 'Saglabât kâ jaunu',
- 'Screen' => 'Ekrâns',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Sell Price' => 'Pârdoðanas cena',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Serial Number' => 'Seriâlais numurs',
- 'Service' => 'Pakalpojums',
- 'Services' => 'Pakalpojumi',
- 'Ship' => 'Piegâdât',
- 'Ship to' => 'Piegâdes adrese',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Short' => 'Aizdoðana',
- 'State/Province' => 'Ðtats/Province',
- 'Stock' => 'Krâjums',
- 'Stock Assembly' => 'Komplektâcijas krâjumâ',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Tax' => 'Nodokïi',
- 'To' => 'uz',
- 'Top Level' => 'Augðçjais lîmenis',
- 'Unit' => 'Vienîba',
- 'Unit of measure' => 'Preces mçrvienîba',
- 'Update' => 'Atjauninât',
- 'Updated' => 'Atjauninâts',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor Invoice' => 'Pârdevçja rçíins',
- 'Vendor Invoices' => 'Pârdevçja rçíini',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Warehouse' => 'Noliktava',
- 'Weight' => 'Svars',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'days' => 'dienas',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'pievienot_komplektâciju' => 'add_assembly',
- 'pievienot_darbu/izmaksas' => 'add_labor/overhead',
- 'pievienot_daïu' => 'add_part',
- 'pievienot_pakalpojumu' => 'add_service',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'labot_komplektâciju' => 'edit_assembly',
- 'labot_daïu' => 'edit_part',
- 'labot_pakalpojumu' => 'edit_service',
- 'saglabât' => 'save',
- 'saglabât_kâ_jaunu' => 'save_as_new',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/io b/sql-ledger/locale/lv/io
deleted file mode 100644
index 8ebfe46..0000000
--- a/sql-ledger/locale/lv/io
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Address' => 'Adrese',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Cc' => 'Cc',
- 'City' => 'Pilsçta',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Country' => 'Valsts',
- 'Customer Number' => 'Klienta numurs',
- 'Date' => 'Datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delivery Date' => 'Piegâdes datums',
- 'Description' => 'Apraksts',
- 'E-mail' => 'E-pasts',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'In-line' => 'Iekïauts',
- 'Invoice' => 'Rçíins',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Message' => 'Paziòojums',
- 'No.' => 'Nr.',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Part' => 'Prece',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Qty' => 'Skaits',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Recd' => 'Saòemts',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Screen' => 'Ekrâns',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Service' => 'Pakalpojums',
- 'Ship' => 'Piegâdât',
- 'Ship to' => 'Piegâdes adrese',
- 'Shipping Address' => 'Piegâdes adrese',
- 'State/Province' => 'Ðtats/Province',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'To' => 'uz',
- 'Unit' => 'Vienîba',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'turpinât' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ir b/sql-ledger/locale/lv/ir
deleted file mode 100644
index fb07558..0000000
--- a/sql-ledger/locale/lv/ir
+++ /dev/null
@@ -1,213 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Add Vendor Invoice' => 'Pievienot pârdevçja rçíinu',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Invoice Number' => 'Vai jûs patieðâm vçlaties dzçst rçíina numuru',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Cannot delete invoice!' => 'Rçíinu nevar izdzçst!',
- 'Cannot post invoice for a closed period!' => 'Nevar iegrâmatot rçíinu par slçgtu periodu!',
- 'Cannot post invoice!' => 'Nevar iegrâmatot rçíinu!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cc' => 'Cc',
- 'City' => 'Pilsçta',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Confirm!' => 'Apstiprinât!',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Country' => 'Valsts',
- 'Credit Limit' => 'Kredîta limits',
- 'Currency' => 'Valûta',
- 'Customer Number' => 'Klienta numurs',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'E-mail' => 'E-pasts',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit Vendor Invoice' => 'Labot pârdevçja rçíinu',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'In-line' => 'Iekïauts',
- 'Internal Notes' => 'Iekðçjâs piezîmes',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Invoice deleted!' => 'Rçíins izdzçsts!',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Language' => 'Valoda',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Message' => 'Paziòojums',
- 'No.' => 'Nr.',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Part' => 'Prece',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payments' => 'Maksâjumi',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Qty' => 'Skaits',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Recd' => 'Saòemts',
- 'Record in' => 'Ierakstît',
- 'Remaining' => 'Atlikums',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Screen' => 'Ekrâns',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Service' => 'Pakalpojums',
- 'Ship' => 'Piegâdât',
- 'Ship to' => 'Piegâdes adrese',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Source' => 'Dokuments',
- 'State/Province' => 'Ðtats/Province',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor missing!' => 'Pârdevçjs nav norâdîts!',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'Yes' => 'Jâ',
- 'ea' => 'gb',
- 'posted!' => 'iegrâmatots!',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'pirkðanas_orderis' => 'purchase_order',
- 'atjauninât' => 'update',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/is b/sql-ledger/locale/lv/is
deleted file mode 100644
index 00f4636..0000000
--- a/sql-ledger/locale/lv/is
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Invoice' => 'Pievienot preèu rçíinu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Invoice Number' => 'Vai jûs patieðâm vçlaties dzçst rçíina numuru',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Business' => 'Komercdarbîba',
- 'Cannot delete invoice!' => 'Rçíinu nevar izdzçst!',
- 'Cannot post invoice for a closed period!' => 'Nevar iegrâmatot rçíinu par slçgtu periodu!',
- 'Cannot post invoice!' => 'Nevar iegrâmatot rçíinu!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cc' => 'Cc',
- 'City' => 'Pilsçta',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Confirm!' => 'Apstiprinât!',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Country' => 'Valsts',
- 'Credit Limit' => 'Kredîta limits',
- 'Currency' => 'Valûta',
- 'Customer' => 'Klients',
- 'Customer Number' => 'Klienta numurs',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'E-mail' => 'E-pasts',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit Sales Invoice' => 'Labot pârdoðanas rçíinu',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'In-line' => 'Iekïauts',
- 'Internal Notes' => 'Iekðçjâs piezîmes',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Invoice deleted!' => 'Rçíins izdzçsts!',
- 'Invoice posted!' => 'Rçíins iegrâmatots!',
- 'Invoice processed!' => 'Rçíins apstrâdâts',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Message' => 'Paziòojums',
- 'No.' => 'Nr.',
- 'Notes' => 'Piezîmes',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Part' => 'Prece',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payments' => 'Maksâjumi',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Qty' => 'Skaits',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Recd' => 'Saòemts',
- 'Record in' => 'Ierakstît',
- 'Remaining' => 'Atlikums',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Salesperson' => 'Pârdevçjs',
- 'Screen' => 'Ekrâns',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Service' => 'Pakalpojums',
- 'Ship' => 'Piegâdât',
- 'Ship to' => 'Piegâdes adrese',
- 'Ship via' => 'Piegâdât caur',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Shipping Point' => 'Nosûtîðanas vietas',
- 'Source' => 'Dokuments',
- 'State/Province' => 'Ðtats/Province',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Trade Discount' => 'Vairumtirgotâja atlaide',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'Yes' => 'Jâ',
- 'ea' => 'gb',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'e_pasts' => 'e_mail',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'drukât' => 'print',
- 'print_and_post' => 'print_and_post',
- 'pârdoðanas_orderis' => 'sales_order',
- 'piegâdes_adrese' => 'ship_to',
- 'atjauninât' => 'update',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/login b/sql-ledger/locale/lv/login
deleted file mode 100644
index d5666b1..0000000
--- a/sql-ledger/locale/lv/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Uzòçmums',
- 'Continue' => 'Turpinât',
- 'Dataset is newer than version!' => 'Datukopa ir jaunâka par versiju!',
- 'Incorrect Dataset version!' => 'Nepareiza datukopas versija!',
- 'Incorrect Password!' => 'Nepareiza parole!',
- 'Login' => 'Pieteikties',
- 'Name' => 'Nosaukums',
- 'Password' => 'Parole',
- 'Upgrading to Version' => 'Uzlabot lîdz versijai',
- 'Version' => 'Versija',
- 'You did not enter a name!' => 'Nav ievadîts vârds',
- 'done' => 'izdarîts',
- 'is not a member!' => 'nav dalîbnieks',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'pieteikties' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/menu b/sql-ledger/locale/lv/menu
deleted file mode 100644
index 4a6242d..0000000
--- a/sql-ledger/locale/lv/menu
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditoru parâdi',
- 'AP Aging' => 'KP novecojums',
- 'AP Transaction' => 'KP transakcija',
- 'AR' => 'Debitoru parâdi',
- 'AR Aging' => 'DP novecojums',
- 'AR Transaction' => 'DP transakcija',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Account' => 'Pievienot kontu',
- 'Add Assembly' => 'Pievienot komplektâciju',
- 'Add Business' => 'Pievienot komercdarbîbu',
- 'Add Customer' => 'Pievienot klientu',
- 'Add Department' => 'Pievienot nodaïu',
- 'Add Employee' => 'Pievienot darbinieku',
- 'Add GIFI' => 'Pievienot GIFI',
- 'Add Group' => 'Pievienot grupu',
- 'Add Labor/Overhead' => 'Pievienot darbu/izmaksas',
- 'Add Language' => 'Pievienot valodu',
- 'Add Part' => 'Pievienot daïu',
- 'Add Pricegroup' => 'Pieviento cenu grupu',
- 'Add Project' => 'Pievienot projektu',
- 'Add SIC' => 'Pievienot SIC',
- 'Add Service' => 'Pievienot pakalpojumu',
- 'Add Transaction' => 'Pievienot transakciju',
- 'Add Vendor' => 'Pievienot pârdevçju',
- 'Add Warehouse' => 'Pievienot noliktavu',
- 'All Items' => 'Visi ',
- 'Assemblies' => 'Komplektâcijas',
- 'Audit Control' => 'Audita kontrole',
- 'Backup' => 'Rezerves kopija',
- 'Balance Sheet' => 'Bilances pârskats',
- 'Batch Printing' => 'Grupas drukâðana',
- 'Bin List' => 'Bin saraksts',
- 'Cash' => 'Nauda',
- 'Chart of Accounts' => 'Kontu plâns',
- 'Check' => 'Èeks',
- 'Checks' => 'Èeki',
- 'Components' => 'Komponentes',
- 'Customers' => 'Klienti',
- 'Defaults' => 'Noklusçtâs vçrtîbas',
- 'Departments' => 'Nodaïas',
- 'Description' => 'Apraksts',
- 'Employees' => 'Darbinieki',
- 'General Ledger' => 'Virsgrâmata',
- 'Goods & Services' => 'Preces un Pakalpojumi',
- 'Groups' => 'Grupas',
- 'HR' => 'Personâldaïa',
- 'HTML Templates' => 'HTML ðabloni',
- 'History' => 'Vçsture',
- 'Income Statement' => 'Peïòas vai zaudçjuma aprçíins',
- 'Invoice' => 'Rçíins',
- 'LaTeX Templates' => 'LaTeX ðablons',
- 'Labor/Overhead' => 'Darbs/izmaksas',
- 'Language' => 'Valoda',
- 'List Accounts' => 'Kontu saraksts',
- 'List Businesses' => 'Komerdarbîbu saraksts',
- 'List Departments' => 'Nodaïu saraksts',
- 'List GIFI' => 'GIFI saraksts',
- 'List Languages' => 'Valodu saraksts',
- 'List Projects' => 'Projektu saraksts',
- 'List SIC' => 'SIC saraksts',
- 'List Warehouses' => 'Noliktavu saraksts',
- 'Logout' => 'Beigt darbu',
- 'Non-taxable' => 'Neapliekams ar nodokïiem',
- 'Open' => 'Atvçrts',
- 'Order Entry' => 'Ordera ieraksts',
- 'Outstanding' => 'Neapmaksâtais',
- 'POS' => 'POS',
- 'POS Invoice' => 'POS rçíins',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing Lists' => 'Iesaiòojumu saraksti',
- 'Parts' => 'Daïas',
- 'Payment' => 'Maksâjums',
- 'Payments' => 'Maksâjumi',
- 'Pick List' => 'Izvçles saraksts',
- 'Preferences' => 'Izvçles',
- 'Pricegroups' => 'Cenu grupas',
- 'Print' => 'Drukât',
- 'Projects' => 'Projekti',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Quotation' => 'Tâme',
- 'Quotations' => 'Tâmes',
- 'RFQ' => 'Tâmes pieprasîjums',
- 'RFQs' => 'Tâmes pieprasîjumu',
- 'Receipt' => 'Kvîts',
- 'Receipts' => 'Kvîtis',
- 'Receive' => 'Saòemt',
- 'Reconciliation' => 'Izlîdzinâðana',
- 'Reports' => 'Atskaites',
- 'SIC' => 'SIC',
- 'Sale' => 'Pârdoðana',
- 'Sales Invoice' => 'Pârdoðanas rçíins',
- 'Sales Invoices' => 'Pârdoðanas rçíini',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Save to File' => 'Saglabât failâ',
- 'Search' => 'Meklçt',
- 'Send by E-Mail' => 'Nosûtît pa e-pastu',
- 'Services' => 'Pakalpojumi',
- 'Ship' => 'Piegâdât',
- 'Shipping' => 'Piegâde',
- 'Statement' => 'Pârskats',
- 'Stock Assembly' => 'Komplektâcijas krâjumâ',
- 'Stylesheet' => 'Stila lapa',
- 'System' => 'Sistçma',
- 'Tax collected' => 'Ieòemtie nodokïi',
- 'Tax paid' => 'Samaksâtie nodokïi',
- 'Text Templates' => 'Teksta ðabloni',
- 'Transactions' => 'Transakcijas',
- 'Transfer' => 'Pârsûtîðana',
- 'Translations' => 'Tulkojumi',
- 'Trial Balance' => 'Kontu bilance',
- 'Type of Business' => 'Komercdarbîbas veids',
- 'Vendor Invoice' => 'Pârdevçja rçíins',
- 'Vendors' => 'Pârdevçji',
- 'Version' => 'Versija',
- 'Warehouses' => 'Noliktavas',
- 'Work Order' => 'Darba orderis',
- 'Yearend' => 'Finanðu gada beigas',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/oe b/sql-ledger/locale/lv/oe
deleted file mode 100644
index 3b71870..0000000
--- a/sql-ledger/locale/lv/oe
+++ /dev/null
@@ -1,297 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Exchange Rate' => 'Pievienot valûtas maiòas kursu',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Invoice' => 'Pievienot preèu rçíinu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Add Vendor Invoice' => 'Pievienot pârdevçja rçíinu',
- 'Address' => 'Adrese',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Order Number' => 'Vai jûs patieðâm vçlaties dzçst ordera numuru',
- 'Are you sure you want to delete Quotation Number' => 'Vai jûs patieðâm vçlaties dzçst tâmes numuru',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Business' => 'Komercdarbîba',
- 'C' => 'cena',
- 'Cannot delete order!' => 'Orderi nevar izdzçst!',
- 'Cannot delete quotation!' => 'Tâmi nevar izdzçst!',
- 'Cannot save order!' => 'Maksâjuma uzdevumu nevar saglabât!',
- 'Cannot save quotation!' => 'Nevar saglabât tâmi',
- 'Cc' => 'Cc',
- 'City' => 'Pilsçta',
- 'Closed' => 'Aizvçrts',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Confirm!' => 'Apstiprinât!',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Could not save!' => 'Nevarçja saglabât',
- 'Could not transfer Inventory!' => 'Nevarçja pârsûtît krâjumu',
- 'Country' => 'Valsts',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Customer' => 'Klients',
- 'Customer Number' => 'Klienta numurs',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Date Received' => 'Saòemðanas datums',
- 'Date received missing!' => 'Nav norâdîts saòemðanas datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Done' => 'Izdarîts',
- 'E-mail' => 'E-pasts',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit Purchase Order' => 'Labot pirkuma orderi',
- 'Edit Quotation' => 'Labot tâmi',
- 'Edit Request for Quotation' => 'Labot tâmes pieprasîjumu',
- 'Edit Sales Order' => 'Labot pârdoðanas orderi',
- 'Employee' => 'Darbinieks',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'ID' => 'ID',
- 'In-line' => 'Iekïauts',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Internal Notes' => 'Iekðçjâs piezîmes',
- 'Inventory saved!' => 'Krâjums saglabâts',
- 'Inventory transferred!' => 'Krâjums pârsûtîts',
- 'Invoice' => 'Rçíins',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Manager' => 'Vadîtâjs',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Message' => 'Paziòojums',
- 'No.' => 'Nr.',
- 'Notes' => 'Piezîmes',
- 'Nothing entered!' => 'Nekas nav ievadîts',
- 'Nothing to transfer!' => 'Nav nekâ pârsûtîðanai',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'O' => 'O',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Open' => 'Atvçrts',
- 'Order' => 'Orderis',
- 'Order Date' => 'Ordera datums',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'Order deleted!' => 'Orderis izdzçsts',
- 'Order processed!' => 'Orderis apstrâdâts',
- 'Order saved!' => 'Orderis saglabâts!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Part' => 'Prece',
- 'Part Number' => 'Daïas numurs',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Purchase Orders' => 'Pirkðanas orderi',
- 'Qty' => 'Skaits',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date' => 'Tâmes datums',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number' => 'Tâmes numurs',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Quotation deleted!' => 'Tâme izdzçsta',
- 'Quotations' => 'Tâmes',
- 'RFQ' => 'Tâmes pieprasîjums',
- 'RFQ Number' => 'Tâmes pieprasîjuma numurs',
- 'Recd' => 'Saòemts',
- 'Receive Merchandise' => 'Saòemt preces',
- 'Remaining' => 'Atlikums',
- 'Request for Quotation' => 'Tâmes pieprasîjums',
- 'Request for Quotations' => 'Tâmju pieprasîjums',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Pârdoðanas rçíins',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Sales Orders' => 'Pârdoðanas orderi',
- 'Salesperson' => 'Pârdevçjs',
- 'Save' => 'Saglabât',
- 'Save as new' => 'Saglabât kâ jaunu',
- 'Screen' => 'Ekrâns',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Service' => 'Pakalpojums',
- 'Ship' => 'Piegâdât',
- 'Ship Merchandise' => 'Piegâdât preces',
- 'Ship to' => 'Piegâdes adrese',
- 'Ship via' => 'Piegâdât caur',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Shipping Date' => 'Nosûtîðanas datums',
- 'Shipping Date missing!' => 'Nav norâdîts nosûtîðanas datums',
- 'Shipping Point' => 'Nosûtîðanas vietas',
- 'State/Province' => 'Ðtats/Province',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Tax' => 'Nodokïi',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'Terms' => 'Noteikumi: termiòð',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Trade Discount' => 'Vairumtirgotâja atlaide',
- 'Transfer' => 'Pârsûtîðana',
- 'Transfer Inventory' => 'Krâjuma pârsûtîðana',
- 'Transfer to' => 'Pârsûtît uz',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
- 'Valid until' => 'Derîgs lîdz',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor Invoice' => 'Pârdevçja rçíins',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor missing!' => 'Pârdevçjs nav norâdîts!',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'Warehouse' => 'Noliktava',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'Yes' => 'Jâ',
- 'days' => 'dienas',
- 'ea' => 'gb',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'izdarîts' => 'done',
- 'e_pasts' => 'e_mail',
- 'drukât' => 'print',
- 'print_and_save' => 'print_and_save',
- 'pirkðanas_orderis' => 'purchase_order',
- 'tâme' => 'quotation',
- 'quotation_' => 'quotation_',
- 'tâmes_pieprasîjums' => 'rfq',
- 'rfq_' => 'rfq_',
- 'pârdoðanas_rçíins' => 'sales_invoice',
- 'pârdoðanas_orderis' => 'sales_order',
- 'saglabât' => 'save',
- 'saglabât_kâ_jaunu' => 'save_as_new',
- 'piegâdes_adrese' => 'ship_to',
- 'pârsûtîðana' => 'transfer',
- 'atjauninât' => 'update',
- 'pârdevçja_rçíins' => 'vendor_invoice',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/pe b/sql-ledger/locale/lv/pe
deleted file mode 100644
index 0e6a94d..0000000
--- a/sql-ledger/locale/lv/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Add Group' => 'Pievienot grupu',
- 'Add Pricegroup' => 'Pieviento cenu grupu',
- 'Add Project' => 'Pievienot projektu',
- 'All' => 'Visi',
- 'Continue' => 'Turpinât',
- 'Delete' => 'Dzçst',
- 'Description' => 'Apraksts',
- 'Description Translations' => 'Apraksta tulkojumi',
- 'Edit Description Translations' => 'Labot tulkojumu aprakstus',
- 'Edit Group' => 'Labot grupu',
- 'Edit Pricegroup' => 'Labot cenu grupu',
- 'Edit Project' => 'Labot projektu',
- 'Group' => 'Grupa',
- 'Group Translations' => 'Grupu transakcijas',
- 'Group deleted!' => 'Grupa izdzçsta!',
- 'Group missing!' => 'Grupa nav norâdîta!',
- 'Group saved!' => 'Grupa saglabâta!',
- 'Groups' => 'Grupas',
- 'Language' => 'Valoda',
- 'Languages not defined!' => 'Valodas nav definçtas',
- 'Number' => 'Numurs',
- 'Orphaned' => 'Bez atbilstoðâ pâra',
- 'Pricegroup' => 'Cenu grupa',
- 'Pricegroup deleted!' => 'Cenu grupa izdzçsta',
- 'Pricegroup missing!' => 'Cenu grupa nav norâdîta',
- 'Pricegroup saved!' => 'Cenu grupa saglabâta',
- 'Pricegroups' => 'Cenu grupas',
- 'Project' => 'Projekts',
- 'Project Description Translations' => 'Projekta apraksta tulkojumi',
- 'Project Number' => 'Projekta numurs',
- 'Project Number missing!' => 'Nav norâdîts projekta numurs!',
- 'Project deleted!' => 'Projekts izdzçsts!',
- 'Project saved!' => 'Projekts saglabâts',
- 'Projects' => 'Projekti',
- 'Save' => 'Saglabât',
- 'Translation' => 'Tulkojums',
- 'Translation deleted!' => 'Tulkojums izdzçsts',
- 'Translations saved!' => 'Tulkojumi saglabâti',
- 'Update' => 'Atjauninât',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'pievienot_grupu' => 'add_group',
- 'pieviento_cenu_grupu' => 'add_pricegroup',
- 'pievienot_projektu' => 'add_project',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'saglabât' => 'save',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/pos b/sql-ledger/locale/lv/pos
deleted file mode 100644
index 08ad7ea..0000000
--- a/sql-ledger/locale/lv/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Add POS Invoice' => 'Pievienot POS rçíinu',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Change' => 'Izmainît',
- 'Continue' => 'Turpinât',
- 'Credit Limit' => 'Kredîta limits',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Customer' => 'Klients',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Delete' => 'Dzçst',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Edit POS Invoice' => 'Labot POS rçíinu',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Extended' => 'Kopâ',
- 'From' => 'No',
- 'Language' => 'Valoda',
- 'Memo' => 'Memorands',
- 'Number' => 'Numurs',
- 'Open' => 'Atvçrts',
- 'Paid' => 'Apmaksâts',
- 'Post' => 'Iegrâmatot',
- 'Posted!' => 'Iegrâmatots!',
- 'Price' => 'Cena',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Qty' => 'Skaits',
- 'Receipts' => 'Kvîtis',
- 'Record in' => 'Ierakstît',
- 'Remaining' => 'Atlikums',
- 'Salesperson' => 'Pârdevçjs',
- 'Screen' => 'Ekrâns',
- 'Source' => 'Dokuments',
- 'Subtotal' => 'Kopâ',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'iegrâmatot' => 'post',
- 'drukât' => 'print',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/ps b/sql-ledger/locale/lv/ps
deleted file mode 100644
index a43e2fd..0000000
--- a/sql-ledger/locale/lv/ps
+++ /dev/null
@@ -1,328 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'KP novecojums',
- 'AR Aging' => 'DP novecojums',
- 'AR Outstanding' => 'DP Neapmaksâtie',
- 'AR Transaction' => 'DP transakcija',
- 'AR Transactions' => 'DP transakcijas',
- 'Account' => 'Konts',
- 'Account Number' => 'Konta numurs',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Uzkrâðana',
- 'Add POS Invoice' => 'Pievienot POS rçíinu',
- 'Add Purchase Order' => 'Pievienot pirkuma orderi',
- 'Add Quotation' => 'Pievienot tâmi',
- 'Add Request for Quotation' => 'Pievienot tâmes pieprasîjumu',
- 'Add Sales Invoice' => 'Pievienot preèu rçíinu',
- 'Add Sales Order' => 'Pievienot preèu orderi',
- 'Address' => 'Adrese',
- 'All Accounts' => 'Visi konti',
- 'Amount' => 'Summa',
- 'Amount Due' => 'Nesamaksâtâ summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Are you sure you want to delete Invoice Number' => 'Vai jûs patieðâm vçlaties dzçst rçíina numuru',
- 'Are you sure you want to delete Transaction' => 'Vai jûs patieðâm vçlaties dzçst transakciju',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Balance' => 'Bilance',
- 'Balance Sheet' => 'Bilances pârskats',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Rçíina adrese',
- 'Bin' => 'Bin',
- 'Bin List' => 'Bin saraksts',
- 'Business' => 'Komercdarbîba',
- 'Cannot delete invoice!' => 'Rçíinu nevar izdzçst!',
- 'Cannot delete transaction!' => 'Transakciju nevar izdzçst!',
- 'Cannot post invoice for a closed period!' => 'Nevar iegrâmatot rçíinu par slçgtu periodu!',
- 'Cannot post invoice!' => 'Nevar iegrâmatot rçíinu!',
- 'Cannot post payment for a closed period!' => 'Nevar iegrâmatot maksâjumu par slçgtu periodu!',
- 'Cannot post transaction for a closed period!' => 'Nevar iegrâmatot transakciju par slçgtu periodu!',
- 'Cannot post transaction!' => 'Nevar iegrâmatot transakciju!',
- 'Cash' => 'Nauda',
- 'Cc' => 'Cc',
- 'Change' => 'Izmainît',
- 'Check' => 'Èeks',
- 'City' => 'Pilsçta',
- 'Closed' => 'Aizvçrts',
- 'Company Name' => 'Uzòçmuma nosaukums',
- 'Compare to' => 'Salîdzinât ar',
- 'Confirm!' => 'Apstiprinât!',
- 'Contact' => 'Kontaktpersona',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Country' => 'Valsts',
- 'Credit' => 'Kredîts',
- 'Credit Limit' => 'Kredîta limits',
- 'Curr' => 'Val.',
- 'Currency' => 'Valûta',
- 'Current' => 'Paðreizçjs',
- 'Current Earnings' => 'Paðreizçjie ienâkumi',
- 'Customer' => 'Klients',
- 'Customer Number' => 'Klienta numurs',
- 'Customer missing!' => 'Nav norâdîts klients!',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Date Paid' => 'Maksâjuma datums',
- 'Debit' => 'Debets',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Decimalplaces' => 'decimâldaïa',
- 'Delete' => 'Dzçst',
- 'Delivery Date' => 'Piegâdes datums',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Detail' => 'Sîks apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'Due Date missing!' => 'Nav norâdîts apmaksas termiòð!',
- 'E-mail' => 'E-pasts',
- 'E-mail Statement to' => 'Nosûtît atskaiti pa e-pastu uz ',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'E-mailed' => 'Nosûtîts pa e-pastu',
- 'Edit POS Invoice' => 'Labot POS rçíinu',
- 'Edit Sales Invoice' => 'Labot pârdoðanas rçíinu',
- 'Exch' => 'Kurss',
- 'Exchange Rate' => 'Valûtas maiòas kurss',
- 'Exchange rate for payment missing!' => 'Nav norâdîts valûtas maiòas kurss maksâjumâ!',
- 'Exchange rate missing!' => 'Nav norâdîts valûtas maiòas kurss!',
- 'Extended' => 'Kopâ',
- 'Fax' => 'Fakss',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupa',
- 'Group Items' => 'Ierakstu grupa',
- 'Heading' => 'Virsraksts',
- 'ID' => 'ID',
- 'In-line' => 'Iekïauts',
- 'Include Exchange Rate Difference' => 'Iekïaut valûtas kursu atðíirîbas',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Income Statement' => 'Peïòas vai zaudçjuma aprçíins',
- 'Internal Notes' => 'Iekðçjâs piezîmes',
- 'Invoice' => 'Rçíins',
- 'Invoice Date' => 'Rçíina datums',
- 'Invoice Date missing!' => 'Nav norâdîts rçíina datums!',
- 'Invoice Number' => 'Rçíina numurs',
- 'Invoice Number missing!' => 'Nepareizs rçíina numurs',
- 'Invoice deleted!' => 'Rçíins izdzçsts!',
- 'Invoice posted!' => 'Rçíins iegrâmatots!',
- 'Invoice processed!' => 'Rçíins apstrâdâts',
- 'Item not on file!' => 'Nav tâdas vienîbas!',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Language' => 'Valoda',
- 'Manager' => 'Vadîtâjs',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Message' => 'Paziòojums',
- 'Method' => 'Metode',
- 'N/A' => 'Nav',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Pirkumi, kas nav apliekami ar nodokïiem',
- 'Non-taxable Sales' => 'Tirgoðana, kas nav apliekama ar nodokïiem',
- 'Notes' => 'Piezîmes',
- 'Nothing selected!' => 'Nekas nav iezîmçts!',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Number missing in Row' => 'Rindâ nav norâdîts numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Open' => 'Atvçrts',
- 'Order' => 'Orderis',
- 'Order Date missing!' => 'Nav norâdîts ordera datums!',
- 'Order Number' => 'Ordera Nr.',
- 'Order Number missing!' => 'Nav norâdîts ordera numurs!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Iesaiòojumu saraksts',
- 'Packing List Date missing!' => 'Nav norâdîts iesaiòojumu datums!',
- 'Packing List Number missing!' => 'Nav norâdîts iesaiòojumu numurs!',
- 'Paid' => 'Apmaksâts',
- 'Part' => 'Prece',
- 'Payment date missing!' => 'Nav norâdîts maksâjuma datums',
- 'Payments' => 'Maksâjumi',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Izvçles saraksts',
- 'Post' => 'Iegrâmatot',
- 'Post as new' => 'Iegrâmatot kâ jaunu',
- 'Posted!' => 'Iegrâmatots!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena',
- 'Print' => 'Drukât',
- 'Printed' => 'Izdrukâts',
- 'Project' => 'Projekts',
- 'Project Number' => 'Projekta numurs',
- 'Project Transactions' => 'Projekta transakcijas',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Purchase Order' => 'Pirkðanas orderis',
- 'Qty' => 'Skaits',
- 'Queue' => 'Rinda',
- 'Queued' => 'Iekïauts rindâ',
- 'Quotation' => 'Tâme',
- 'Quotation Date missing!' => 'Nav norâdîts tâmes datums',
- 'Quotation Number missing!' => 'Nav norâdîts tâmes numurs',
- 'Recd' => 'Saòemts',
- 'Receipt' => 'Kvîts',
- 'Receipts' => 'Kvîtis',
- 'Record in' => 'Ierakstît',
- 'Remaining' => 'Atlikums',
- 'Report for' => 'Atskaite par',
- 'Required by' => 'Pieprasîja',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Pârdoðanas orderis',
- 'Salesperson' => 'Pârdevçjs',
- 'Screen' => 'Ekrâns',
- 'Select all' => 'Atlasît visu',
- 'Select from one of the items below' => 'Atlasît vienu no sekojoðiem ierakstiem',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Serial No.' => 'Seriâlais Nr.',
- 'Service' => 'Pakalpojums',
- 'Ship' => 'Piegâdât',
- 'Ship to' => 'Piegâdes adrese',
- 'Ship via' => 'Piegâdât caur',
- 'Shipping Address' => 'Piegâdes adrese',
- 'Shipping Point' => 'Nosûtîðanas vietas',
- 'Source' => 'Dokuments',
- 'Standard' => 'Standarts',
- 'State/Province' => 'Ðtats/Province',
- 'Statement' => 'Pârskats',
- 'Statement sent to' => 'Nosûtît pârskatu uz',
- 'Statements sent to printer!' => 'Nosûtît pârskatu uz drukâðanu!',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Summary' => 'Kopçjais',
- 'Tax' => 'Nodokïi',
- 'Tax Included' => 'Kopâ ar nodokïiem',
- 'Tax collected' => 'Ieòemtie nodokïi',
- 'Tax paid' => 'Samaksâtie nodokïi',
- 'Till' => 'lîdz',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Trade Discount' => 'Vairumtirgotâja atlaide',
- 'Transaction deleted!' => 'Transakcija izdzçsta!',
- 'Transaction posted!' => 'Transakcija iegrâmatota!',
- 'Trial Balance' => 'Kontu bilance',
- 'Unit' => 'Vienîba',
- 'Update' => 'Atjauninât',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor Number' => 'Pârdevçja numurs',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'What type of item is this?' => 'Kâda veida vienîba tâ ir?',
- 'Work Order' => 'Darba orderis',
- 'Yes' => 'Jâ',
- 'as at' => 'uz',
- 'ea' => 'gb',
- 'for Period' => 'periodam',
- 'sent' => 'nosûtîts',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'dp_transakcija' => 'ar_transaction',
- 'turpinât' => 'continue',
- 'dzçst' => 'delete',
- 'e_pasts' => 'e_mail',
- 'iegrâmatot' => 'post',
- 'iegrâmatot_kâ_jaunu' => 'post_as_new',
- 'drukât' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'pârdoðanas_orderis' => 'sales_order',
- 'atlasît_visu' => 'select_all',
- 'piegâdes_adrese' => 'ship_to',
- 'atjauninât' => 'update',
- 'jâ' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/pw b/sql-ledger/locale/lv/pw
deleted file mode 100644
index 660c1c1..0000000
--- a/sql-ledger/locale/lv/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Turpinât',
- 'Password' => 'Parole',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'turpinât' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/rc b/sql-ledger/locale/lv/rc
deleted file mode 100644
index 04a8a85..0000000
--- a/sql-ledger/locale/lv/rc
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konts',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Balance' => 'Bilance',
- 'Beginning Balance' => 'Sâkuma atlikums',
- 'Cleared' => 'Apmaksâts',
- 'Continue' => 'Turpinât',
- 'Current' => 'Paðreizçjs',
- 'Date' => 'Datums',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Decrease' => 'Samazinât',
- 'Deposit' => 'Depozîts',
- 'Description' => 'Apraksts',
- 'Detail' => 'Sîks apraksts',
- 'Difference' => 'Starpîba',
- 'Done' => 'Izdarîts',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'Include Exchange Rate Difference' => 'Iekïaut valûtas kursu atðíirîbas',
- 'Increase' => 'Pieaugums',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Out of balance!' => 'Nav bilances!',
- 'Outstanding' => 'Neapmaksâtais',
- 'Payment' => 'Maksâjums',
- 'R' => 'R',
- 'Reconciliation' => 'Izlîdzinâðana',
- 'Reconciliation Report' => 'Izlîdzinâðanas atskaite',
- 'Select all' => 'Atlasît visu',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Source' => 'Dokuments',
- 'Statement Balance' => 'Bilances atskaite',
- 'Summary' => 'Kopçjais',
- 'To' => 'uz',
- 'Update' => 'Atjauninât',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'turpinât' => 'continue',
- 'izdarîts' => 'done',
- 'atlasît_visu' => 'select_all',
- 'atjauninât' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/lv/rp b/sql-ledger/locale/lv/rp
deleted file mode 100644
index 0a2c124..0000000
--- a/sql-ledger/locale/lv/rp
+++ /dev/null
@@ -1,161 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'KP novecojums',
- 'AR Aging' => 'DP novecojums',
- 'Account' => 'Konts',
- 'Account Number' => 'Konta numurs',
- 'Accounting Menu' => 'Kontçðanas izvçlne',
- 'Accounts' => 'Konti',
- 'Accrual' => 'Uzkrâðana',
- 'Address' => 'Adrese',
- 'All Accounts' => 'Visi konti',
- 'Amount' => 'Summa',
- 'Apr' => 'Apr',
- 'April' => 'Aprîlî',
- 'Attachment' => 'Pielikums',
- 'Aug' => 'Aug',
- 'August' => 'Augustâ',
- 'Balance' => 'Bilance',
- 'Balance Sheet' => 'Bilances pârskats',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Nauda',
- 'Cc' => 'Cc',
- 'Compare to' => 'Salîdzinât ar',
- 'Continue' => 'Turpinât',
- 'Copies' => 'Kopijas',
- 'Credit' => 'Kredîts',
- 'Curr' => 'Val.',
- 'Current' => 'Paðreizçjs',
- 'Current Earnings' => 'Paðreizçjie ienâkumi',
- 'Customer' => 'Klients',
- 'Customer not on file!' => 'Nav tâda klienta!',
- 'Date' => 'Datums',
- 'Debit' => 'Debets',
- 'Dec' => 'Dec',
- 'December' => 'Decembrî',
- 'Decimalplaces' => 'decimâldaïa',
- 'Department' => 'Nodaïa',
- 'Description' => 'Apraksts',
- 'Detail' => 'Sîks apraksts',
- 'Due Date' => 'Apmaksas termiòð',
- 'E-mail' => 'E-pasts',
- 'E-mail Statement to' => 'Nosûtît atskaiti pa e-pastu uz ',
- 'E-mail address missing!' => 'Nepareiza E-pasta adrese!',
- 'Feb' => 'Feb',
- 'February' => 'Februârî',
- 'From' => 'No',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Virsraksts',
- 'ID' => 'ID',
- 'In-line' => 'Iekïauts',
- 'Include Exchange Rate Difference' => 'Iekïaut valûtas kursu atðíirîbas',
- 'Include in Report' => 'Iekïaut atskaitç',
- 'Income Statement' => 'Peïòas vai zaudçjuma aprçíins',
- 'Invoice' => 'Rçíins',
- 'Jan' => 'Jan',
- 'January' => 'Janvârî',
- 'Jul' => 'Jûl',
- 'July' => 'Jûlijâ',
- 'Jun' => 'Jûn',
- 'June' => 'Jûnijâ',
- 'Language' => 'Valoda',
- 'Mar' => 'Mar',
- 'March' => 'Martâ',
- 'May' => 'Mai',
- 'May ' => 'Maijâ ',
- 'Memo' => 'Memorands',
- 'Message' => 'Paziòojums',
- 'Method' => 'Metode',
- 'N/A' => 'Nav',
- 'Non-taxable Purchases' => 'Pirkumi, kas nav apliekami ar nodokïiem',
- 'Non-taxable Sales' => 'Tirgoðana, kas nav apliekama ar nodokïiem',
- 'Nothing selected!' => 'Nekas nav iezîmçts!',
- 'Nov' => 'Nov',
- 'November' => 'Novembrî',
- 'Number' => 'Numurs',
- 'Oct' => 'Okt',
- 'October' => 'Oktobrî',
- 'Order' => 'Orderis',
- 'PDF' => 'PDF',
- 'Payments' => 'Maksâjumi',
- 'Postscript' => 'Postscript',
- 'Print' => 'Drukât',
- 'Project' => 'Projekts',
- 'Project Number' => 'Projekta numurs',
- 'Project Transactions' => 'Projekta transakcijas',
- 'Project not on file!' => 'Nav tâda projekta!',
- 'Receipts' => 'Kvîtis',
- 'Report for' => 'Atskaite par',
- 'Salesperson' => 'Pârdevçjs',
- 'Screen' => 'Ekrâns',
- 'Select all' => 'Atlasît visu',
- 'Select from one of the names below' => 'Atlasît vienu no sekojoðiem nosaukumiem',
- 'Select from one of the projects below' => 'Atlasît vienu no sekojoðiem projektiem',
- 'Select postscript or PDF!' => 'Izvçlçties postscript vai PDF!',
- 'Sep' => 'Sep',
- 'September' => 'Septembrî',
- 'Source' => 'Dokuments',
- 'Standard' => 'Standarts',
- 'Statement' => 'Pârskats',
- 'Statement sent to' => 'Nosûtît pârskatu uz',
- 'Statements sent to printer!' => 'Nosûtît pârskatu uz drukâðanu!',
- 'Subject' => 'Temats',
- 'Subtotal' => 'Kopâ',
- 'Summary' => 'Kopçjais',
- 'Tax' => 'Nodokïi',
- 'Tax collected' => 'Ieòemtie nodokïi',
- 'Tax paid' => 'Samaksâtie nodokïi',
- 'Till' => 'lîdz',
- 'To' => 'uz',
- 'Total' => 'Pavisam Kopâ',
- 'Trial Balance' => 'Kontu bilance',
- 'Vendor' => 'Pârdevçjs',
- 'Vendor not on file!' => 'Nav tâda pârdevçja!',
- 'as at' => 'uz',
- 'for Period' => 'periodam',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'turpinât' => 'continue',
- 'e_pasts' => 'e_mail',
- 'drukât' => 'print',
- 'atlasît_visu' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/COPYING b/sql-ledger/locale/mx/COPYING
deleted file mode 100644
index 314fc90..0000000
--- a/sql-ledger/locale/mx/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Spanish texts (Mexico):
-#
-# Author: Alberto Ladron <h@grupoh.com.mx>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/mx/LANGUAGE b/sql-ledger/locale/mx/LANGUAGE
deleted file mode 100644
index 6e19feb..0000000
--- a/sql-ledger/locale/mx/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (Mexico)
diff --git a/sql-ledger/locale/mx/admin b/sql-ledger/locale/mx/admin
deleted file mode 100644
index 74cb999..0000000
--- a/sql-ledger/locale/mx/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Nuevo usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => '¡Todos los conjunto de datos están actualizados!',
- 'Cannot create Lock!' => '¡No se puede crear el archivo de bloqueo!',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Click on login name to edit!' => '¡Seleccione el nombre del usuario que desea modificar!',
- 'Company' => 'Empresa',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear conjunto de datos',
- 'DBI not installed!' => '¡DBI no está instalado!',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => '¡No selecciono un manejador de bases de datos!',
- 'Database User missing!' => '¡Falta el usuario de base de datos!',
- 'Dataset' => 'Conjunto de datos',
- 'Dataset missing!' => '¡Falta el conjunto de datos!',
- 'Dataset updated!' => '¡Conjunto de datos actualizado!',
- 'Date Format' => 'Formato de fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar conjunto de datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Limite en listas desplegables',
- 'E-mail' => 'Correo-e',
- 'Edit User' => 'Modificar usuario',
- 'Existing Datasets' => 'Conjuntos de datos existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor',
- 'Hostname missing!' => '¡Falta el nombre del servidor',
- 'Language' => 'Lenguaje',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de servidor y puerto vacíos a menos que quiera hacer una conexión remota',
- 'Lock System' => 'Bloquear el sistema',
- 'Lockfile created!' => '¡Archivo de bloqueo creado!',
- 'Lockfile removed!' => '¡Archivo de bloqueo borrado!',
- 'Login' => 'Entrada al sistema',
- 'Login name missing!' => '¡Falta el nombre del usuario!',
- 'Logout' => 'Salida del sistema',
- 'Manager' => 'Administrador',
- 'Menu Width' => 'Anchura del menú',
- 'Multibyte Encoding' => 'Codificación multibyte',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas plantillas',
- 'No Database Drivers available!' => '¡No hay manejadores de bases de datos disponibles!',
- 'No Dataset selected!' => '¡No ha seleccionado el conjunto de datos!',
- 'Nothing to delete!' => '¡Nada que borrar!',
- 'Number Format' => 'Formato de número',
- 'Oracle Database Administration' => 'Administración de base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de base de datos PostgreSQL',
- 'PgPP Database Administration' => 'Administración de base de datos PgPP',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => '¡Falta el puerto!',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Plantillas de inicio',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de estilos',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Los siguientes conjuntos de datos no están en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Es necesario actualizar los siguientes conjuntos de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificación preliminar de fuentes existentes. ¡Nada será creado o borrado en esta etapa!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, selecciónelo, cambie el nombre de usuario y guarde los cambios. Un nuevo usuario, con las mismas variables se guardará con el nuevo nombre de usuario.',
- 'Unlock System' => 'Desbloquear el sistema',
- 'Update Dataset' => 'Actualizar conjunto de datos',
- 'Use Templates' => 'Usar Plantillas',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe ingresar un servidor y un puerto para conexiones locales y remotas!',
- 'does not exist' => 'no existe',
- 'is already a member!' => '¡ya es miembro!',
- 'localhost' => 'localhost',
- 'locked!' => '¡bloqueado!',
- 'successfully created!' => '¡creado con éxito!',
- 'successfully deleted!' => '¡borrado con éxito!',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'nuevo_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_conjunto_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_conjunto_de_datos' => 'delete_dataset',
- 'bloquear_el_sistema' => 'lock_system',
- 'entrada_al_sistema' => 'login',
- 'salida_del_sistema' => 'logout',
- 'administración_de_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_base_de_datos_postgresql' => 'pg_database_administration',
- 'administración_de_base_de_datos_pgpp' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'desbloquear_el_sistema' => 'unlock_system',
- 'actualizar_conjunto_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/all b/sql-ledger/locale/mx/all
deleted file mode 100644
index ef5bb95..0000000
--- a/sql-ledger/locale/mx/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'E',
- 'AP' => 'Ctas. x pagar',
- 'AP Aging' => 'Vencimiento CxP',
- 'AP Outstanding' => 'CxP pendientes',
- 'AP Transaction' => 'Movimiento CxP',
- 'AP Transactions' => 'Movimientos de CxP',
- 'AR' => 'Ctas. x cobrar',
- 'AR Aging' => 'Vencimiento CxC',
- 'AR Outstanding' => 'CxC pendientes',
- 'AR Transaction' => 'Movimiento CxC',
- 'AR Transactions' => 'Movimientos de Ctas. x cobrar',
- 'About' => 'Acerca de',
- 'Above' => 'Sobre de',
- 'Access Control' => 'Control de acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => '¡Falta el número de cuenta!',
- 'Account Type' => 'Tipo de cuenta',
- 'Account Type missing!' => '¡Falta el tipo de cuenta!',
- 'Account deleted!' => '¡Cuenta eliminada!',
- 'Account does not exist!' => '¡El número de cuenta no existe!',
- 'Account saved!' => 'Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar pistas de auditoría',
- 'Active' => 'Activa',
- 'Add' => 'Crear',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Nueva cuenta',
- 'Add Assembly' => 'Nuevo ensamblaje',
- 'Add Business' => 'Nuevo negocio',
- 'Add Cash Transfer Transaction' => 'Nuevo movimiento de transferencia',
- 'Add Customer' => 'Nuevo cliente',
- 'Add Deduction' => 'Nueva deducción',
- 'Add Department' => 'Nuevo departamento',
- 'Add Employee' => 'Nuevo empleado',
- 'Add Exchange Rate' => 'Nuevo tipo de cambio',
- 'Add GIFI' => 'Nuevo GIFI',
- 'Add General Ledger Transaction' => 'Nuevo movimiento de mayor',
- 'Add Group' => 'Nuevo grupo',
- 'Add Labor/Overhead' => 'Nueva mano de obra/indirecto',
- 'Add Language' => 'Nuevo lenguaje',
- 'Add POS Invoice' => 'Nueva factura de Pto. de Vta.',
- 'Add Part' => 'Nueva parte',
- 'Add Pricegroup' => 'Nuevo grupo de precios',
- 'Add Project' => 'Nuevo proyecto',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add SIC' => 'Nuevo SIC',
- 'Add Sales Invoice' => 'Nueva factura de venta',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Add Service' => 'Nuevo servicio',
- 'Add Transaction' => 'Nuevo movimiento',
- 'Add User' => 'Nuevo usuario',
- 'Add Vendor' => 'Nuevo proveedor',
- 'Add Vendor Invoice' => 'Nueva factura de compra',
- 'Add Warehouse' => 'Nuevo almacén',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de deducciones',
- 'All' => 'Todos',
- 'All Accounts' => 'Todas las cuentas',
- 'All Datasets up to date!' => '¡Todos los conjunto de datos están actualizados!',
- 'All Items' => 'Todas las partidas',
- 'Allowances' => 'Prestaciones',
- 'Amount' => 'Importe',
- 'Amount Due' => 'Saldo',
- 'Amount missing!' => '¡Falta el importe!',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está Ud. seguro de querer borrar la factura No.:',
- 'Are you sure you want to delete Order Number' => '¿Está Ud. seguro de querer borrar la orden No.:',
- 'Are you sure you want to delete Quotation Number' => '¿Está Ud. seguro de querer borrar la cotización No.:',
- 'Are you sure you want to delete Transaction' => '¿Está Ud. seguro de querer borrar el movimiento',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está Ud. seguro de querer borrar las entradas seleccionadas de la fila?',
- 'Assemblies' => 'Ensamblajes',
- 'Assemblies restocked!' => 'Ensamblajes inventariados!',
- 'Assembly' => 'Ensamblaje',
- 'Asset' => 'Activo',
- 'Attachment' => 'Anexo',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Pistas de auditoría eliminadas hasta',
- 'Audit trails disabled' => 'Pistas de auditoría desactivadas',
- 'Audit trails enabled' => 'Pistas de auditoría activadas',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => 'BIC',
- 'BOM' => 'L. de Emp.',
- 'Backup' => 'Respaldo',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balance general',
- 'Based on' => 'Basado en',
- 'Batch Printing' => 'Impresión por lotes',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes de deducciones',
- 'Beginning Balance' => 'Balance inicial',
- 'Below' => 'Debajo de',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Bin Lists' => '',
- 'Books are open' => 'Los libros están abiertos',
- 'Break' => 'Romper',
- 'Business' => 'Negocio',
- 'Business Number' => 'RFC',
- 'Business deleted!' => 'Negocio borrado',
- 'Business saved!' => '¡Negocio guardado!',
- 'C' => 'C',
- 'COGS' => 'Costo de Ventas',
- 'Cannot create Lock!' => '¡No se puede crear el archivo de bloqueo!',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => '¡No se puede borrar la cuenta por defecto!',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar la orden!',
- 'Cannot delete quotation!' => '¡No se puede borrar la cotización!',
- 'Cannot delete transaction!' => '¡No se puede borrar el movimiento!',
- 'Cannot delete vendor!' => '¡No se puede borrar el proveedor!',
- 'Cannot post Payment!' => '¡No se puede registrar el pago!',
- 'Cannot post Receipt!' => '¡No se puede registrar el recibo!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura para un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un movimiento para un periodo cerrado!',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago para un periodo cerrado!',
- 'Cannot remove files!' => '¡No se pueden borrar los archivos!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '¡No se pueden borrar los defults!',
- 'Cannot save order!' => '¡No se puede guardar la orden!',
- 'Cannot save preferences!' => '¡No se puede guardar preferencias!',
- 'Cannot save quotation!' => '¡No se puede guardar la cotización!',
- 'Cannot set account for more than one of AR, AP or IC' => '¡No se puede configurar una cuenta para mas de una de las opciones (AR, AP o IC)',
- 'Cannot set multiple options for' => 'No se pueden configurar opciones múltiples para',
- 'Cannot set multiple options for Parts Inventory' => 'No se pueden configurar opciones múltiples para el inventario de partes',
- 'Cannot set multiple options for Service Items' => 'No se pueden configurar opciones múltiples para servicios',
- 'Cannot stock assemblies!' => '¡No se puede guardar e ensamblaje!',
- 'Cash' => 'Bancos',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar contraseña',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Catálogo de cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Verificar inventario',
- 'Checks' => 'Cheques',
- 'City' => 'Cuidad',
- 'Cleared' => 'Aclarado',
- 'Click on login name to edit!' => '¡Seleccione el nombre del usuario que desea modificar!',
- 'Close Books up to' => 'Cerrar libros al',
- 'Closed' => 'Cerrada',
- 'Code' => 'Código',
- 'Code missing!' => '¡Falta el código!',
- 'Company' => 'Empresa',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar al',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => '¡Confirmar!',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al cat. de ctas.',
- 'Cost' => 'Costo',
- 'Cost Center' => 'Centro de costos',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '¡No se pudo guardar!',
- 'Could not transfer Inventory!' => '¡No se pudo transferir el inventario',
- 'Country' => 'País',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear conjunto de datos',
- 'Credit' => 'Abono',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Historia del cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => '¡DBI no está instalado!',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => '¡No selecciono un manejador de bases de datos!',
- 'Database Host' => 'Servidor de base de datos',
- 'Database User missing!' => '¡Falta el usuario de base de datos!',
- 'Dataset' => 'Conjunto de datos',
- 'Dataset is newer than version!' => '¡El conjunto de datos es mas reciente que la versión del programa!',
- 'Dataset missing!' => '¡Falta el conjunto de datos!',
- 'Dataset updated!' => '¡Conjunto de datos actualizado!',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => 'Fecha de recibo',
- 'Date missing!' => '¡Falta la fecha!',
- 'Date received missing!' => '¡Falta la fecha de recibo!',
- 'Debit' => 'Cargo',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'No. de decimales',
- 'Decrease' => 'Reducción',
- 'Deduct after' => 'Deducir después',
- 'Deduction deleted!' => '¡Deducción borrada!',
- 'Deduction saved!' => '¡Deducción guardada!',
- 'Deductions' => 'Decucciones',
- 'Defaults' => 'Defaults',
- 'Defaults saved!' => '¡Defaults guardados!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Delete Dataset' => 'Borrar conjunto de datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Department deleted!' => '¡Departamento borrado!',
- 'Department saved!' => '¡Departamento guardado!',
- 'Departments' => 'Departamentos',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducciones de la descripción',
- 'Description missing!' => '¡Falta la descripción!',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Listo',
- 'Drawing' => 'Plano',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Limite en listas desplegables',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta fecha de vencimiento!',
- 'E-mail' => 'Correo-e',
- 'E-mail Statement to' => 'Enviar estado de cuenta por correo-e a',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit' => 'Modificar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Modificar cuenta',
- 'Edit Assembly' => 'Modificar ensamblaje',
- 'Edit Business' => 'Modificar negocio',
- 'Edit Cash Transfer Transaction' => 'Modificar transferencia',
- 'Edit Customer' => 'Modificar cliente',
- 'Edit Deduction' => 'Modificar deducción',
- 'Edit Department' => 'Modificar departamento',
- 'Edit Description Translations' => 'Modificar traducciones de descripción',
- 'Edit Employee' => 'Modificar empleado',
- 'Edit GIFI' => 'Modificar GIFI',
- 'Edit General Ledger Transaction' => 'Modificar movimiento de mayor',
- 'Edit Group' => 'Modificar grupo',
- 'Edit Labor/Overhead' => 'Modificar mano de obra/indirecto',
- 'Edit Language' => 'Modificar lenguaje',
- 'Edit POS Invoice' => 'Modificar ticket',
- 'Edit Part' => 'Modificar parte',
- 'Edit Preferences for' => 'Modificar preferencias para',
- 'Edit Pricegroup' => 'Modificar precio de grupo',
- 'Edit Project' => 'Modificar proyecto',
- 'Edit Purchase Order' => 'Modificar orden de compra',
- 'Edit Quotation' => 'Modificar cotización',
- 'Edit Request for Quotation' => 'Modificar solicitud de cotización',
- 'Edit SIC' => 'Modificar SIC',
- 'Edit Sales Invoice' => 'Modificar factura de venta',
- 'Edit Sales Order' => 'Modificar orden de venta',
- 'Edit Service' => 'Modificar servicio',
- 'Edit Template' => 'Modificar plantilla',
- 'Edit User' => 'Modificar usuario',
- 'Edit Vendor' => 'Modificar proveedor',
- 'Edit Vendor Invoice' => 'Modificar factura de compra',
- 'Edit Warehouse' => 'Modificar almacén',
- 'Employee' => 'Empleado',
- 'Employee Name' => 'Nombre del empleado',
- 'Employee Number' => '',
- 'Employee deleted!' => '¡Empleado borrado!',
- 'Employee pays' => 'El empleado paga',
- 'Employee saved!' => '¡Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Patrón',
- 'Employer pays' => 'El patrón paga',
- 'Enddate' => 'Fecha final',
- 'Enforce transaction reversal for all dates' => 'Activar la reversión de movimientos para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Proporcionar hasta tres letras separadas por dos puntos (ej.: MXP:USD) para las monedas local y extranjeras',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Existing Datasets' => 'Conjuntos de datos existentes',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'FX',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Utilidad cambiaria',
- 'Foreign Exchange Loss' => 'Perdida cambiaria',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡GIFI borrado!',
- 'GIFI missing!' => '¡Falta el código GIFI',
- 'GIFI saved!' => '¡GIFI guardado!',
- 'GL Transaction' => 'Movimiento de mayor',
- 'General Ledger' => 'Mayor',
- 'Goods & Services' => 'Partes y servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'Group Translations' => 'Traducciones de grupo',
- 'Group deleted!' => '¡Grupo borrado!',
- 'Group missing!' => '¡Falta el grupo!',
- 'Group saved!' => '¡Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => 'RH',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Historia',
- 'Home Phone' => 'Teléfono de casa',
- 'Host' => 'Servidor',
- 'Hostname missing!' => '¡Falta el nombre del servidor',
- 'IBAN' => 'IBAN',
- 'ID' => 'Id.',
- 'Image' => 'Imagen',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluír la diferencia por tipo de cambio',
- 'Include in Report' => 'Incluir en reporte',
- 'Include in drop-down menus' => 'Incluir en listas desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => '¿Incluir esta cuenta en las formas de cliente/proveedor para señalarlo como gravable?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de ingreso',
- 'Income Statement' => 'Estado de resultados',
- 'Incorrect Dataset version!' => '¡La Versión del conjunto de datos es incorrecta!',
- 'Incorrect Password!' => '¡La contraseña es incorrecta!',
- 'Increase' => 'Aumento',
- 'Individual Items' => 'Artículos individuales',
- 'Internal Notes' => 'Notas internas',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¡Las existencias deben ser cero antes de poder cambiar el ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '¡Las existencias deben ser cero antes de poder cambiar esta parte a obsoleta!',
- 'Inventory saved!' => '¡Existencias guardadas!',
- 'Inventory transferred!' => '¡Existencias transferidas!',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => 'Es ésta una cuenta de resumen a registrar',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '¡Articulo borrado!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Items' => 'Partidas',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de obra/Indirecto',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '¡Lenguaje borrado!',
- 'Language saved!' => '¡Lenguaje guardado!',
- 'Languages' => 'Lenguajes',
- 'Languages not defined!' => '¡Lenguajes no definido!',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas de default',
- 'Leadtime' => 'Duración del proceso',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de servidor y puerto vacíos a menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a',
- 'Line Total' => 'Existencia',
- 'Link' => 'Enlace',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List' => '',
- 'List Accounts' => 'Enlistar cuentas',
- 'List Businesses' => 'Enlistar negocios',
- 'List Departments' => 'Enlistar departamentos',
- 'List GIFI' => 'Enlistar GIFI',
- 'List Languages' => 'Enlistar lenguajes',
- 'List Price' => 'Precio de lista',
- 'List Projects' => 'Enlistar proyectos',
- 'List SIC' => 'Enlistar SIC',
- 'List Transactions' => 'Enlistar movimientos',
- 'List Warehouses' => 'Enlistar almacenes',
- 'Lock System' => 'Bloquear el sistema',
- 'Lockfile created!' => '¡Archivo de bloqueo creado!',
- 'Lockfile removed!' => '¡Archivo de bloqueo borrado!',
- 'Login' => 'Entrada al sistema',
- 'Login name missing!' => '¡Falta el nombre del usuario!',
- 'Logout' => 'Salida del sistema',
- 'Make' => 'Marca',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '¡Entradas seleccionadas impresas!',
- 'Markup' => 'Marcar',
- 'Maximum' => 'Máximo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Menu Width' => 'Anchura del menú',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Codificación multibyte',
- 'N/A' => 'N/A',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'New Templates' => 'Nuevas plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => '¡No hay manejadores de bases de datos disponibles!',
- 'No Dataset selected!' => '¡No ha seleccionado el conjunto de datos!',
- 'No email address for' => 'Falta dirección de correo-e para',
- 'No.' => 'Num.',
- 'Non-taxable' => 'Exento',
- 'Non-taxable Purchases' => 'Compras exentas',
- 'Non-taxable Sales' => 'Ventas exentas',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '¡No se suministro nada!',
- 'Nothing outstanding for ' => 'No hay nada pendiente para',
- 'Nothing selected!' => '¡No se seleccionó nada!',
- 'Nothing to delete!' => '¡Nada que borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '¡Nada que transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'O' => 'A',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Existencias',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de la orden',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Entry' => 'Ordenes',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden procesada!',
- 'Order saved!' => '¡Orden guardada!',
- 'Orphaned' => 'Huérfano',
- 'Out of balance transaction!' => '¡Movimiento desbalanceado!',
- 'Out of balance!' => '¡Desbalanceado!',
- 'Outstanding' => 'Pendiente',
- 'PDF' => 'PDF',
- 'POS' => 'Pto. de Vta.',
- 'POS Invoice' => 'Ticket',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Packing Lists' => 'Listas de empaque',
- 'Paid' => 'Pagado',
- 'Part' => 'Parte',
- 'Part Number' => 'Número de parte',
- 'Partnumber' => '',
- 'Parts' => 'Partes',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Pagos',
- 'Payroll Deduction' => 'Deducciones de nómina',
- 'Period' => '',
- 'Pg Database Administration' => 'Administración de base de datos PostgreSQL',
- 'PgPP Database Administration' => 'Administración de base de datos PgPP',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Pick Lists' => '',
- 'Port' => 'Puerto',
- 'Port missing!' => '¡Falta el puerto!',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => '¡Registrado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => '¡Preferencias guardadas!',
- 'Prepayment' => 'Prepago',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de precios',
- 'Pricegroup deleted!' => '¡Grupo de precios borrado!',
- 'Pricegroup missing!' => '¡Falta el grupo de precios!',
- 'Pricegroup saved!' => '¡Grupo de precios guardado!',
- 'Pricegroups' => 'Grupos de precios',
- 'Pricelist' => '',
- 'Print' => 'Vista Preliminar',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => 'Impreso',
- 'Printer' => 'Impresora',
- 'Printing ... ' => 'Imprimiendo ...',
- 'Profit Center' => 'Centro de Ingresos',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducciones de descripción de proyecto',
- 'Project Number' => 'Número de proyecto',
- 'Project Number missing!' => 'Falta número de proyecto',
- 'Project Transactions' => 'Movimientos de proyecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Project saved!' => '¡Proyecto registrado!',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Orden de compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Qty' => 'Cant.',
- 'Quantity exceeds available units to stock!' => '¡La cantidad excede al inventario disponible!',
- 'Quarter' => '',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation ' => '',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number' => 'Número de cotización',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'R' => 'C',
- 'RFQ' => 'Sol. de Cot.',
- 'RFQ ' => '',
- 'RFQ Number' => 'Número de Sol. de Cot.',
- 'RFQs' => 'Sols. de Cots.',
- 'ROP' => 'Pto. de Reord.',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '¡Falta la tarifa!',
- 'Recd' => 'Recb.',
- 'Receipt' => 'Cobro',
- 'Receipt posted!' => '¡Cobro registrado!',
- 'Receipts' => 'Cobros',
- 'Receivables' => 'Por cobrar',
- 'Receive' => 'Recibir',
- 'Receive Merchandise' => 'Recibir mercancía',
- 'Reconciliation' => 'Conciliación',
- 'Reconciliation Report' => 'Reporte de conciliación',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Remaining' => 'Disponible',
- 'Remove' => 'Eliminar',
- 'Remove Audit trails up to' => 'Eliminar pistas de auditoría hasta',
- 'Removed spoolfiles!' => '¡Archivos de fila eliminados!',
- 'Removing marked entries from queue ...' => 'Eliminado entradas seleccionadas de la fila ...',
- 'Report for' => 'Reporte para',
- 'Reports' => 'Reportes',
- 'Request for Quotation' => 'Solicitud de cotización',
- 'Request for Quotations' => 'Solicitudes de cotización',
- 'Required by' => 'Vencimiento',
- 'Retained Earnings' => 'Resultado',
- 'Role' => 'Rol',
- 'S' => 'V',
- 'SIC' => 'SIC',
- 'SIC deleted!' => '¡SIC borrado!',
- 'SIC saved!' => '¡SIC guardado!',
- 'SKU' => 'SKU',
- 'SSN' => '',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Facturas de venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordenes de venta',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en un archivo',
- 'Screen' => 'Pantalla',
- 'Search' => 'Buscar',
- 'Select' => 'Seleccionar',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Seleccionar todo',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de venta',
- 'Send by E-Mail' => 'Enviar por correo-e',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Serial Number' => 'Número de serie',
- 'Service' => 'Servicio',
- 'Service Items' => 'Artículos de servicio',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Plantillas de inicio',
- 'Ship' => 'Enviar',
- 'Ship Merchandise' => 'Enviar mercancías',
- 'Ship to' => 'Enviar a',
- 'Ship via' => 'Enviar por',
- 'Shipping' => 'Envío',
- 'Shipping Address' => 'Dirección de envío',
- 'Shipping Date' => 'Fecha de envío',
- 'Shipping Date missing!' => '¡Falta la fecha de envío!',
- 'Shipping Point' => 'Punto de envío',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Referencia',
- 'Spoolfile' => 'Archivo de fila de impresión',
- 'Standard' => 'Estándar',
- 'Standard Industrial Codes' => 'Standard Industrial Codes',
- 'Startdate' => 'Fecha inicial',
- 'State' => '',
- 'State/Province' => 'Estado',
- 'Statement' => 'Estado de cuenta',
- 'Statement Balance' => 'Saldo bancario',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar ensamblaje',
- 'Stylesheet' => 'Hoja de estilos',
- 'Sub-contract GIFI' => 'GIFI del subcontrato',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Defaults del sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax Number' => 'Número de impuesto',
- 'Tax Number / SSN' => 'Número de impuesto / SSN',
- 'Tax collected' => 'Impuesto Retenido',
- 'Tax paid' => 'Impuesto Pagado',
- 'Taxable' => 'Gravable',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Condiciones',
- 'Text Templates' => 'Plantillas de texto',
- 'The following Datasets are not in use and can be deleted' => 'Los siguientes conjuntos de datos no están en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Es necesario actualizar los siguientes conjuntos de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificación preliminar de fuentes existentes. ¡Nada será creado o borrado en esta etapa!',
- 'Till' => 'Hasta',
- 'To' => 'A',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, selecciónelo, cambie el nombre de usuario y guarde los cambios. Un nuevo usuario, con las mismas variables se guardará con el nuevo nombre de usuario.',
- 'Top Level' => 'Nivel Superior',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento comercial',
- 'Transaction' => '',
- 'Transaction Date missing!' => '¡Falta la fecha del movimiento!',
- 'Transaction deleted!' => '¡Movimiento borrado!',
- 'Transaction posted!' => '¡Movimiento registrado!',
- 'Transaction reversal enforced for all dates' => 'Reversión de movimientos activado para todas las fechas',
- 'Transaction reversal enforced up to' => 'Reversión de movimientos activado hasta',
- 'Transactions' => 'Movimientos',
- 'Transfer' => 'Transferir',
- 'Transfer Inventory' => 'Transferir inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => '¡Traducción borrada!',
- 'Translation not on file!' => '',
- 'Translations' => 'Traducciones',
- 'Translations saved!' => '¡Traducciones guardadas!',
- 'Trial Balance' => 'Balanza de comprobación',
- 'Type of Business' => 'Tipo de negocio',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Desbloquear el sistema',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar conjunto de datos',
- 'Updated' => 'Actualizado',
- 'Upgrading to Version' => 'Actualizando a versión',
- 'Use Templates' => 'Usar Plantillas',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => 'Historia de proveedor',
- 'Vendor Invoice' => 'Factura de compra',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Facturas de compra',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => 'Almacén',
- 'Warehouse deleted!' => '¡Almacén borrado!',
- 'Warehouse saved!' => '¡Almacén guardado!',
- 'Warehouses' => 'Almacenes',
- 'Warning!' => '¡Advertencia!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de Peso',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => '',
- 'Work Phone' => 'Teléfono de oficina',
- 'Year' => '',
- 'Yearend' => 'Cierre de periodo',
- 'Yearend date missing!' => '¡Falta el cierre de periodo!',
- 'Yearend posted!' => '¡Cierre de periodo registrado!',
- 'Yearend posting failed!' => '¡Falló el registro de cierre de periodo!',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => '¡No ingresó un nombre!',
- 'You must enter a host and port for local and remote connections!' => 'Debe ingresar un servidor y un puerto para conexiones locales y remotas!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'El tipo de cuenta no puede ser configurado como otro tipo de cuenta',
- 'as at' => 'como a',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => 'listo',
- 'ea' => 'pza',
- 'for Period' => 'para el periodo',
- 'is already a member!' => '¡ya es miembro!',
- 'is not a member!' => '¡no es miembro!',
- 'localhost' => 'localhost',
- 'locked!' => '¡bloqueado!',
- 'posted!' => '¡registrado!',
- 'sent' => 'enviado',
- 'successfully created!' => '¡creado con éxito!',
- 'successfully deleted!' => '¡borrado con éxito!',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/am b/sql-ledger/locale/mx/am
deleted file mode 100644
index 57d3f93..0000000
--- a/sql-ledger/locale/mx/am
+++ /dev/null
@@ -1,249 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas. x pagar',
- 'AR' => 'Ctas. x cobrar',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Account Number missing!' => '¡Falta el número de cuenta!',
- 'Account Type' => 'Tipo de cuenta',
- 'Account Type missing!' => '¡Falta el tipo de cuenta!',
- 'Account deleted!' => '¡Cuenta eliminada!',
- 'Account does not exist!' => '¡El número de cuenta no existe!',
- 'Account saved!' => 'Cuenta guardada!',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar pistas de auditoría',
- 'Add Account' => 'Nueva cuenta',
- 'Add Business' => 'Nuevo negocio',
- 'Add Department' => 'Nuevo departamento',
- 'Add GIFI' => 'Nuevo GIFI',
- 'Add Language' => 'Nuevo lenguaje',
- 'Add SIC' => 'Nuevo SIC',
- 'Add Warehouse' => 'Nuevo almacén',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoría',
- 'Audit trail removed up to' => 'Pistas de auditoría eliminadas hasta',
- 'Audit trails disabled' => 'Pistas de auditoría desactivadas',
- 'Audit trails enabled' => 'Pistas de auditoría activadas',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Books are open' => 'Los libros están abiertos',
- 'Business Number' => 'RFC',
- 'Business deleted!' => 'Negocio borrado',
- 'Business saved!' => '¡Negocio guardado!',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => '¡No se puede borrar la cuenta por defecto!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '¡No se pueden borrar los defults!',
- 'Cannot save preferences!' => '¡No se puede guardar preferencias!',
- 'Cannot set account for more than one of AR, AP or IC' => '¡No se puede configurar una cuenta para mas de una de las opciones (AR, AP o IC)',
- 'Cannot set multiple options for' => 'No se pueden configurar opciones múltiples para',
- 'Cannot set multiple options for Parts Inventory' => 'No se pueden configurar opciones múltiples para el inventario de partes',
- 'Cannot set multiple options for Service Items' => 'No se pueden configurar opciones múltiples para servicios',
- 'Cash' => 'Bancos',
- 'Character Set' => 'Conjunto de caracteres',
- 'Chart of Accounts' => 'Catálogo de cuentas',
- 'Close Books up to' => 'Cerrar libros al',
- 'Code' => 'Código',
- 'Code missing!' => '¡Falta el código!',
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Copy to COA' => 'Copiar al cat. de ctas.',
- 'Cost Center' => 'Centro de costos',
- 'Credit' => 'Abono',
- 'Customer Number' => 'Número de cliente',
- 'Database Host' => 'Servidor de base de datos',
- 'Dataset' => 'Conjunto de datos',
- 'Date Format' => 'Formato de fecha',
- 'Debit' => 'Cargo',
- 'Defaults saved!' => '¡Defaults guardados!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar cuenta',
- 'Department deleted!' => '¡Departamento borrado!',
- 'Department saved!' => '¡Departamento guardado!',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta la descripción!',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Limite en listas desplegables',
- 'E-mail' => 'Correo-e',
- 'Edit' => 'Modificar',
- 'Edit Account' => 'Modificar cuenta',
- 'Edit Business' => 'Modificar negocio',
- 'Edit Department' => 'Modificar departamento',
- 'Edit GIFI' => 'Modificar GIFI',
- 'Edit Language' => 'Modificar lenguaje',
- 'Edit Preferences for' => 'Modificar preferencias para',
- 'Edit SIC' => 'Modificar SIC',
- 'Edit Template' => 'Modificar plantilla',
- 'Edit Warehouse' => 'Modificar almacén',
- 'Enforce transaction reversal for all dates' => 'Activar la reversión de movimientos para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Proporcionar hasta tres letras separadas por dos puntos (ej.: MXP:USD) para las monedas local y extranjeras',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Utilidad cambiaria',
- 'Foreign Exchange Loss' => 'Perdida cambiaria',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡GIFI borrado!',
- 'GIFI missing!' => '¡Falta el código GIFI',
- 'GIFI saved!' => '¡GIFI guardado!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en listas desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => '¿Incluir esta cuenta en las formas de cliente/proveedor para señalarlo como gravable?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de ingreso',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de inventario',
- 'Is this a summary account to record' => 'Es ésta una cuenta de resumen a registrar',
- 'Labor/Overhead' => 'Mano de obra/Indirecto',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '¡Lenguaje borrado!',
- 'Language saved!' => '¡Lenguaje guardado!',
- 'Languages' => 'Lenguajes',
- 'Last Numbers & Default Accounts' => 'Últimos números y cuentas de default',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a',
- 'Link' => 'Enlace',
- 'Menu Width' => 'Anchura del menú',
- 'Method' => 'Método',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta dirección de correo-e para',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de número',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => '¡Preferencias guardadas!',
- 'Printer' => 'Impresora',
- 'Profit Center' => 'Centro de Ingresos',
- 'RFQ Number' => 'Número de Sol. de Cot.',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Por cobrar',
- 'Reference' => 'Referencia',
- 'Remove Audit trails up to' => 'Eliminar pistas de auditoría hasta',
- 'Retained Earnings' => 'Resultado',
- 'SIC deleted!' => '¡SIC borrado!',
- 'SIC saved!' => '¡SIC guardado!',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Artículos de servicio',
- 'Signature' => 'Firma',
- 'Standard Industrial Codes' => 'Standard Industrial Codes',
- 'Stylesheet' => 'Hoja de estilos',
- 'System Defaults' => 'Defaults del sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de impuesto',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Reversión de movimientos activado para todas las fechas',
- 'Transaction reversal enforced up to' => 'Reversión de movimientos activado hasta',
- 'Type of Business' => 'Tipo de negocio',
- 'User' => 'Usuario',
- 'Vendor Number' => 'Número de proveedor',
- 'Version' => 'Versión',
- 'Warehouse deleted!' => '¡Almacén borrado!',
- 'Warehouse saved!' => '¡Almacén guardado!',
- 'Warehouses' => 'Almacenes',
- 'Weight Unit' => 'Unidad de Peso',
- 'Yearend' => 'Cierre de periodo',
- 'Yearend date missing!' => '¡Falta el cierre de periodo!',
- 'Yearend posted!' => '¡Cierre de periodo registrado!',
- 'Yearend posting failed!' => '¡Falló el registro de cierre de periodo!',
- 'Yes' => 'Si',
- 'account cannot be set to any other type of account' => 'El tipo de cuenta no puede ser configurado como otro tipo de cuenta',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'nueva_cuenta' => 'add_account',
- 'nuevo_negocio' => 'add_business',
- 'nuevo_departamento' => 'add_department',
- 'nuevo_lenguaje' => 'add_language',
- 'nuevo_sic' => 'add_sic',
- 'nuevo_almacén' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_cat._de_ctas.' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'modificar' => 'edit',
- 'modificar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ap b/sql-ledger/locale/mx/ap
deleted file mode 100644
index e395ee1..0000000
--- a/sql-ledger/locale/mx/ap
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'CxP pendientes',
- 'AP Transaction' => 'Movimiento CxP',
- 'AP Transactions' => 'Movimientos de CxP',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Amount Due' => 'Saldo',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está Ud. seguro de querer borrar el movimiento',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar el movimiento!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un movimiento para un periodo cerrado!',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrada',
- 'Confirm!' => '¡Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta fecha de vencimiento!',
- 'Employee' => 'Empleado',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'ID' => 'Id.',
- 'Include in Report' => 'Incluir en reporte',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de la orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payments' => 'Pagos',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Receipt' => 'Cobro',
- 'Remaining' => 'Disponible',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Referencia',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Movimiento borrado!',
- 'Transaction posted!' => '¡Movimiento registrado!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'movimiento_cxp' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'vista_preliminar' => 'print',
- 'print_and_post' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ar b/sql-ledger/locale/mx/ar
deleted file mode 100644
index 5749cfc..0000000
--- a/sql-ledger/locale/mx/ar
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'CxC pendientes',
- 'AR Transaction' => 'Movimiento CxC',
- 'AR Transactions' => 'Movimientos de Ctas. x cobrar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Amount Due' => 'Saldo',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está Ud. seguro de querer borrar el movimiento',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar el movimiento!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un movimiento para un periodo cerrado!',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrada',
- 'Confirm!' => '¡Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta fecha de vencimiento!',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'ID' => 'Id.',
- 'Include in Report' => 'Incluir en reporte',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de la orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payments' => 'Pagos',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Receipt' => 'Cobro',
- 'Remaining' => 'Disponible',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Enviar por',
- 'Shipping Point' => 'Punto de envío',
- 'Source' => 'Referencia',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Till' => 'Hasta',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Transaction deleted!' => '¡Movimiento borrado!',
- 'Transaction posted!' => '¡Movimiento registrado!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'movimiento_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'vista_preliminar' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/arap b/sql-ledger/locale/mx/arap
deleted file mode 100644
index e341388..0000000
--- a/sql-ledger/locale/mx/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/arapprn b/sql-ledger/locale/mx/arapprn
deleted file mode 100644
index 9f9ae81..0000000
--- a/sql-ledger/locale/mx/arapprn
+++ /dev/null
@@ -1,33 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Importe',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Memo' => 'Nota',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impreso',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Receipt' => 'Cobro',
- 'Screen' => 'Pantalla',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Source' => 'Referencia',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/bp b/sql-ledger/locale/mx/bp
deleted file mode 100644
index 79b72cd..0000000
--- a/sql-ledger/locale/mx/bp
+++ /dev/null
@@ -1,60 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está Ud. seguro de querer borrar las entradas seleccionadas de la fila?',
- 'Cannot remove files!' => '¡No se pueden borrar los archivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => '¡Confirmar!',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'De',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de factura',
- 'Marked entries printed!' => '¡Entradas seleccionadas impresas!',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de la orden',
- 'Packing Lists' => 'Listas de empaque',
- 'Print' => 'Vista Preliminar',
- 'Printing ... ' => 'Imprimiendo ...',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Quotation' => 'Cotización',
- 'Quotation Number' => 'Número de cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQs' => 'Sols. de Cots.',
- 'Receipts' => 'Cobros',
- 'Reference' => 'Referencia',
- 'Remove' => 'Eliminar',
- 'Removed spoolfiles!' => '¡Archivos de fila eliminados!',
- 'Removing marked entries from queue ...' => 'Eliminado entradas seleccionadas de la fila ...',
- 'Sales Invoices' => 'Facturas de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Select all' => 'Seleccionar todo',
- 'Spoolfile' => 'Archivo de fila de impresión',
- 'To' => 'A',
- 'Vendor' => 'Proveedor',
- 'Yes' => 'Si',
- 'done' => 'listo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'vista_preliminar' => 'print',
- 'eliminar' => 'remove',
- 'seleccionar_todo' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ca b/sql-ledger/locale/mx/ca
deleted file mode 100644
index 0ecc4cf..0000000
--- a/sql-ledger/locale/mx/ca
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Catálogo de cuentas',
- 'Credit' => 'Abono',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Cargo',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'Include in Report' => 'Incluir en reporte',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Enlistar movimientos',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Project Number' => 'Número de proyecto',
- 'R' => 'C',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'A',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'enlistar_movimientos' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/cp b/sql-ledger/locale/mx/cp
deleted file mode 100644
index 3b1bd64..0000000
--- a/sql-ledger/locale/mx/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas. x pagar',
- 'AR' => 'Ctas. x cobrar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Importe',
- 'Amount Due' => 'Saldo',
- 'Cannot post Payment!' => '¡No se puede registrar el pago!',
- 'Cannot post Receipt!' => '¡No se puede registrar el recibo!',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago para un periodo cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta la fecha!',
- 'Department' => 'Departamento',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Memo' => 'Nota',
- 'Nothing outstanding for ' => 'No hay nada pendiente para',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Prepago',
- 'Print' => 'Vista Preliminar',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Queue' => 'Fila',
- 'Receipt' => 'Cobro',
- 'Receipt posted!' => '¡Cobro registrado!',
- 'Screen' => 'Pantalla',
- 'Select' => 'Seleccionar',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Source' => 'Referencia',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'vista_preliminar' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ct b/sql-ledger/locale/mx/ct
deleted file mode 100644
index ae6e95b..0000000
--- a/sql-ledger/locale/mx/ct
+++ /dev/null
@@ -1,171 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Movimiento CxP',
- 'AP Transactions' => 'Movimientos de CxP',
- 'AR Transaction' => 'Movimiento CxC',
- 'AR Transactions' => 'Movimientos de Ctas. x cobrar',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Customer' => 'Nuevo cliente',
- 'Add Vendor' => 'Nuevo proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Importe',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Break' => 'Romper',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el proveedor!',
- 'Cc' => 'Cc',
- 'City' => 'Cuidad',
- 'Closed' => 'Cerrada',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer History' => 'Historia del cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo-e',
- 'Edit Customer' => 'Modificar cliente',
- 'Edit Vendor' => 'Modificar proveedor',
- 'Employee' => 'Empleado',
- 'Enddate' => 'Fecha final',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'IBAN' => 'IBAN',
- 'ID' => 'Id.',
- 'Include in Report' => 'Incluir en reporte',
- 'Invoice' => 'Factura',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Language' => 'Lenguaje',
- 'Leadtime' => 'Duración del proceso',
- 'Manager' => 'Administrador',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huérfano',
- 'Part Number' => 'Número de parte',
- 'Phone' => 'Teléfono',
- 'Pricegroup' => 'Grupo de precios',
- 'Project Number' => 'Número de proyecto',
- 'Purchase Order' => 'Orden de compra',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Qty' => 'Cant.',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Sol. de Cot.',
- 'Request for Quotations' => 'Solicitudes de cotización',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Search' => 'Buscar',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Sell Price' => 'Precio de venta',
- 'Serial Number' => 'Número de serie',
- 'Shipping Address' => 'Dirección de envío',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Estado',
- 'Sub-contract GIFI' => 'GIFI del subcontrato',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax Number' => 'Número de impuesto',
- 'Tax Number / SSN' => 'Número de impuesto / SSN',
- 'Taxable' => 'Gravable',
- 'Terms' => 'Condiciones',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Type of Business' => 'Tipo de negocio',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor History' => 'Historia de proveedor',
- 'Vendor Invoice' => 'Factura de compra',
- 'Vendor Invoices' => 'Facturas de compra',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'movimiento_cxp' => 'ap_transaction',
- 'movimiento_cxc' => 'ar_transaction',
- 'nuevo_cliente' => 'add_customer',
- 'nuevo_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'orden_de_compra' => 'purchase_order',
- 'cotización' => 'quotation',
- 'sol._de_cot.' => 'rfq',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/gl b/sql-ledger/locale/mx/gl
deleted file mode 100644
index 948efdf..0000000
--- a/sql-ledger/locale/mx/gl
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Movimiento CxP',
- 'AR Transaction' => 'Movimiento CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Cash Transfer Transaction' => 'Nuevo movimiento de transferencia',
- 'Add General Ledger Transaction' => 'Nuevo movimiento de mayor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está Ud. seguro de querer borrar el movimiento',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => '¡No se puede borrar el movimiento!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un movimiento para un periodo cerrado!',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Confirm!' => '¡Confirmar!',
- 'Continue' => 'Continuar',
- 'Contra' => 'Contra',
- 'Credit' => 'Abono',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Debit' => 'Cargo',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Modificar transferencia',
- 'Edit General Ledger Transaction' => 'Modificar movimiento de mayor',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'GL Transaction' => 'Movimiento de mayor',
- 'General Ledger' => 'Mayor',
- 'ID' => 'Id.',
- 'Include in Report' => 'Incluir en reporte',
- 'Income' => 'Ingreso',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance transaction!' => '¡Movimiento desbalanceado!',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'R' => 'C',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta la referencia!',
- 'Reports' => 'Reportes',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Referencia',
- 'Subtotal' => 'Subtotal',
- 'To' => 'A',
- 'Transaction Date missing!' => '¡Falta la fecha del movimiento!',
- 'Transaction deleted!' => '¡Movimiento borrado!',
- 'Transaction posted!' => '¡Movimiento registrado!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Warning!' => '¡Advertencia!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'movimiento_cxp' => 'ap_transaction',
- 'movimiento_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'movimiento_de_mayor' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/hr b/sql-ledger/locale/mx/hr
deleted file mode 100644
index b3ae078..0000000
--- a/sql-ledger/locale/mx/hr
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas. x pagar',
- 'Above' => 'Sobre de',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Deduction' => 'Nueva deducción',
- 'Add Employee' => 'Nuevo empleado',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de deducciones',
- 'All' => 'Todos',
- 'Allowances' => 'Prestaciones',
- 'Amount' => 'Importe',
- 'Amount missing!' => '¡Falta el importe!',
- 'BIC' => 'BIC',
- 'Based on' => 'Basado en',
- 'Before Deduction' => 'Antes de deducciones',
- 'Below' => 'Debajo de',
- 'City' => 'Cuidad',
- 'Continue' => 'Continuar',
- 'Country' => 'País',
- 'Deduct after' => 'Deducir después',
- 'Deduction deleted!' => '¡Deducción borrada!',
- 'Deduction saved!' => '¡Deducción guardada!',
- 'Deductions' => 'Decucciones',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta la descripción!',
- 'E-mail' => 'Correo-e',
- 'Edit Deduction' => 'Modificar deducción',
- 'Edit Employee' => 'Modificar empleado',
- 'Employee' => 'Empleado',
- 'Employee Name' => 'Nombre del empleado',
- 'Employee deleted!' => '¡Empleado borrado!',
- 'Employee pays' => 'El empleado paga',
- 'Employee saved!' => '¡Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Patrón',
- 'Employer pays' => 'El patrón paga',
- 'Enddate' => 'Fecha final',
- 'Expense' => 'Egreso',
- 'Home Phone' => 'Teléfono de casa',
- 'IBAN' => 'IBAN',
- 'ID' => 'Id.',
- 'Include in Report' => 'Incluir en reporte',
- 'Login' => 'Entrada al sistema',
- 'Manager' => 'Administrador',
- 'Maximum' => 'Máximo',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta el nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Payroll Deduction' => 'Deducciones de nómina',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '¡Falta la tarifa!',
- 'Role' => 'Rol',
- 'S' => 'V',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Startdate' => 'Fecha inicial',
- 'State/Province' => 'Estado',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
- 'Work Phone' => 'Teléfono de oficina',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'nueva_deducción' => 'add_deduction',
- 'nuevo_empleado' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ic b/sql-ledger/locale/mx/ic
deleted file mode 100644
index b6d666f..0000000
--- a/sql-ledger/locale/mx/ic
+++ /dev/null
@@ -1,269 +0,0 @@
-$self{texts} = {
- 'A' => 'E',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Accrual' => 'Acumulado',
- 'Active' => 'Activa',
- 'Add' => 'Crear',
- 'Add Assembly' => 'Nuevo ensamblaje',
- 'Add Labor/Overhead' => 'Nueva mano de obra/indirecto',
- 'Add Part' => 'Nueva parte',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Add Service' => 'Nuevo servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Ensamblajes',
- 'Assemblies restocked!' => 'Ensamblajes inventariados!',
- 'Assembly' => 'Ensamblaje',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'L. de Emp.',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Break' => 'Romper',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se puede guardar e ensamblaje!',
- 'Cash' => 'Bancos',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Verificar inventario',
- 'City' => 'Cuidad',
- 'Closed' => 'Cerrada',
- 'Company Name' => 'Nombre de la empresa',
- 'Components' => 'Componentes',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Plano',
- 'E-mail' => 'Correo-e',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit Assembly' => 'Modificar ensamblaje',
- 'Edit Labor/Overhead' => 'Modificar mano de obra/indirecto',
- 'Edit Part' => 'Modificar parte',
- 'Edit Service' => 'Modificar servicio',
- 'Employee' => 'Empleado',
- 'Expense' => 'Egreso',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'Image' => 'Imagen',
- 'In-line' => 'En linea',
- 'Include in Report' => 'Incluir en reporte',
- 'Income' => 'Ingreso',
- 'Individual Items' => 'Artículos individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¡Las existencias deben ser cero antes de poder cambiar el ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '¡Las existencias deben ser cero antes de poder cambiar esta parte a obsoleta!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Item deleted!' => '¡Articulo borrado!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Items' => 'Partidas',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Labor/Overhead' => 'Mano de obra/Indirecto',
- 'Leadtime' => 'Duración del proceso',
- 'Line Total' => 'Existencia',
- 'Link Accounts' => 'Enlazar cuentas',
- 'List Price' => 'Precio de lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Markup' => 'Marcar',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => 'Num.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'Existencias',
- 'Open' => 'Abierto',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'Orphaned' => 'Huérfano',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Part' => 'Parte',
- 'Parts' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de precios',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de compra',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Qty' => 'Cant.',
- 'Quantity exceeds available units to stock!' => '¡La cantidad excede al inventario disponible!',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Sol. de Cot.',
- 'ROP' => 'Pto. de Reord.',
- 'Recd' => 'Recb.',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Sell Price' => 'Precio de venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Serial Number' => 'Número de serie',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Enviar',
- 'Ship to' => 'Enviar a',
- 'Shipping Address' => 'Dirección de envío',
- 'Short' => 'Corto',
- 'State/Province' => 'Estado',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar ensamblaje',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'A',
- 'Top Level' => 'Nivel Superior',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => 'Actualizado',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compra',
- 'Vendor Invoices' => 'Facturas de compra',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Warehouse' => 'Almacén',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'days' => 'días',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'nuevo_ensamblaje' => 'add_assembly',
- 'nueva_mano_de_obra/indirecto' => 'add_labor/overhead',
- 'nueva_parte' => 'add_part',
- 'nuevo_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'modificar_ensamblaje' => 'edit_assembly',
- 'modificar_parte' => 'edit_part',
- 'modificar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/io b/sql-ledger/locale/mx/io
deleted file mode 100644
index 45c4924..0000000
--- a/sql-ledger/locale/mx/io
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Cc' => 'Cc',
- 'City' => 'Cuidad',
- 'Company Name' => 'Nombre de la empresa',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Customer Number' => 'Número de cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo-e',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'In-line' => 'En linea',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'Num.',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Part' => 'Parte',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de compra',
- 'Qty' => 'Cant.',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Recd' => 'Recb.',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Enviar',
- 'Ship to' => 'Enviar a',
- 'Shipping Address' => 'Dirección de envío',
- 'State/Province' => 'Estado',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'A',
- 'Unit' => 'Unidad',
- 'Vendor Number' => 'Número de proveedor',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ir b/sql-ledger/locale/mx/ir
deleted file mode 100644
index 2bc73ec..0000000
--- a/sql-ledger/locale/mx/ir
+++ /dev/null
@@ -1,213 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Add Vendor Invoice' => 'Nueva factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está Ud. seguro de querer borrar la factura No.:',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura para un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Cuidad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => '¡Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de crédito',
- 'Currency' => 'Moneda',
- 'Customer Number' => 'Número de cliente',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo-e',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit Vendor Invoice' => 'Modificar factura de compra',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'In-line' => 'En linea',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Message' => 'Mensaje',
- 'No.' => 'Num.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Part' => 'Parte',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Purchase Order' => 'Orden de compra',
- 'Qty' => 'Cant.',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Recd' => 'Recb.',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Disponible',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Enviar',
- 'Ship to' => 'Enviar a',
- 'Shipping Address' => 'Dirección de envío',
- 'Source' => 'Referencia',
- 'State/Province' => 'Estado',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'pza',
- 'posted!' => '¡registrado!',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'orden_de_compra' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/is b/sql-ledger/locale/mx/is
deleted file mode 100644
index ffb1723..0000000
--- a/sql-ledger/locale/mx/is
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Invoice' => 'Nueva factura de venta',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está Ud. seguro de querer borrar la factura No.:',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura para un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Cuidad',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => '¡Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de crédito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo-e',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit Sales Invoice' => 'Modificar factura de venta',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'In-line' => 'En linea',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Message' => 'Mensaje',
- 'No.' => 'Num.',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Part' => 'Parte',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Purchase Order' => 'Orden de compra',
- 'Qty' => 'Cant.',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Recd' => 'Recb.',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Disponible',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Enviar',
- 'Ship to' => 'Enviar a',
- 'Ship via' => 'Enviar por',
- 'Shipping Address' => 'Dirección de envío',
- 'Shipping Point' => 'Punto de envío',
- 'Source' => 'Referencia',
- 'State/Province' => 'Estado',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento comercial',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'ea' => 'pza',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_e' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'vista_preliminar' => 'print',
- 'print_and_post' => 'print_and_post',
- 'orden_de_venta' => 'sales_order',
- 'enviar_a' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/login b/sql-ledger/locale/mx/login
deleted file mode 100644
index 0030a05..0000000
--- a/sql-ledger/locale/mx/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Empresa',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => '¡El conjunto de datos es mas reciente que la versión del programa!',
- 'Incorrect Dataset version!' => '¡La Versión del conjunto de datos es incorrecta!',
- 'Incorrect Password!' => '¡La contraseña es incorrecta!',
- 'Login' => 'Entrada al sistema',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Upgrading to Version' => 'Actualizando a versión',
- 'Version' => 'Versión',
- 'You did not enter a name!' => '¡No ingresó un nombre!',
- 'done' => 'listo',
- 'is not a member!' => '¡no es miembro!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'entrada_al_sistema' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/menu b/sql-ledger/locale/mx/menu
deleted file mode 100644
index f82f37d..0000000
--- a/sql-ledger/locale/mx/menu
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas. x pagar',
- 'AP Aging' => 'Vencimiento CxP',
- 'AP Transaction' => 'Movimiento CxP',
- 'AR' => 'Ctas. x cobrar',
- 'AR Aging' => 'Vencimiento CxC',
- 'AR Transaction' => 'Movimiento CxC',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Account' => 'Nueva cuenta',
- 'Add Assembly' => 'Nuevo ensamblaje',
- 'Add Business' => 'Nuevo negocio',
- 'Add Customer' => 'Nuevo cliente',
- 'Add Department' => 'Nuevo departamento',
- 'Add Employee' => 'Nuevo empleado',
- 'Add GIFI' => 'Nuevo GIFI',
- 'Add Group' => 'Nuevo grupo',
- 'Add Labor/Overhead' => 'Nueva mano de obra/indirecto',
- 'Add Language' => 'Nuevo lenguaje',
- 'Add Part' => 'Nueva parte',
- 'Add Pricegroup' => 'Nuevo grupo de precios',
- 'Add Project' => 'Nuevo proyecto',
- 'Add SIC' => 'Nuevo SIC',
- 'Add Service' => 'Nuevo servicio',
- 'Add Transaction' => 'Nuevo movimiento',
- 'Add Vendor' => 'Nuevo proveedor',
- 'Add Warehouse' => 'Nuevo almacén',
- 'All Items' => 'Todas las partidas',
- 'Assemblies' => 'Ensamblajes',
- 'Audit Control' => 'Control de auditoría',
- 'Backup' => 'Respaldo',
- 'Balance Sheet' => 'Balance general',
- 'Batch Printing' => 'Impresión por lotes',
- 'Bin List' => 'Lista de ubicaciones',
- 'Cash' => 'Bancos',
- 'Chart of Accounts' => 'Catálogo de cuentas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Defaults',
- 'Departments' => 'Departamentos',
- 'Description' => 'Descripción',
- 'Employees' => 'Empleados',
- 'General Ledger' => 'Mayor',
- 'Goods & Services' => 'Partes y servicios',
- 'Groups' => 'Grupos',
- 'HR' => 'RH',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Historia',
- 'Income Statement' => 'Estado de resultados',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de obra/Indirecto',
- 'Language' => 'Lenguaje',
- 'List Accounts' => 'Enlistar cuentas',
- 'List Businesses' => 'Enlistar negocios',
- 'List Departments' => 'Enlistar departamentos',
- 'List GIFI' => 'Enlistar GIFI',
- 'List Languages' => 'Enlistar lenguajes',
- 'List Projects' => 'Enlistar proyectos',
- 'List SIC' => 'Enlistar SIC',
- 'List Warehouses' => 'Enlistar almacenes',
- 'Logout' => 'Salida del sistema',
- 'Non-taxable' => 'Exento',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Ordenes',
- 'Outstanding' => 'Pendiente',
- 'POS' => 'Pto. de Vta.',
- 'POS Invoice' => 'Ticket',
- 'Packing List' => 'Lista de empaque',
- 'Packing Lists' => 'Listas de empaque',
- 'Parts' => 'Partes',
- 'Payment' => 'Pago',
- 'Payments' => 'Pagos',
- 'Pick List' => 'Lista de Selección',
- 'Preferences' => 'Preferencias',
- 'Pricegroups' => 'Grupos de precios',
- 'Print' => 'Vista Preliminar',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Orden de compra',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Sol. de Cot.',
- 'RFQs' => 'Sols. de Cots.',
- 'Receipt' => 'Cobro',
- 'Receipts' => 'Cobros',
- 'Receive' => 'Recibir',
- 'Reconciliation' => 'Conciliación',
- 'Reports' => 'Reportes',
- 'SIC' => 'SIC',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Invoices' => 'Facturas de venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save to File' => 'Guardar en un archivo',
- 'Search' => 'Buscar',
- 'Send by E-Mail' => 'Enviar por correo-e',
- 'Services' => 'Servicios',
- 'Ship' => 'Enviar',
- 'Shipping' => 'Envío',
- 'Statement' => 'Estado de cuenta',
- 'Stock Assembly' => 'Inventariar ensamblaje',
- 'Stylesheet' => 'Hoja de estilos',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuesto Retenido',
- 'Tax paid' => 'Impuesto Pagado',
- 'Text Templates' => 'Plantillas de texto',
- 'Transactions' => 'Movimientos',
- 'Transfer' => 'Transferir',
- 'Translations' => 'Traducciones',
- 'Trial Balance' => 'Balanza de comprobación',
- 'Type of Business' => 'Tipo de negocio',
- 'Vendor Invoice' => 'Factura de compra',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouses' => 'Almacenes',
- 'Work Order' => 'Orden de Trabajo',
- 'Yearend' => 'Cierre de periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/oe b/sql-ledger/locale/mx/oe
deleted file mode 100644
index 40ab510..0000000
--- a/sql-ledger/locale/mx/oe
+++ /dev/null
@@ -1,297 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Exchange Rate' => 'Nuevo tipo de cambio',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Invoice' => 'Nueva factura de venta',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Add Vendor Invoice' => 'Nueva factura de compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Está Ud. seguro de querer borrar la orden No.:',
- 'Are you sure you want to delete Quotation Number' => '¿Está Ud. seguro de querer borrar la cotización No.:',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Business' => 'Negocio',
- 'C' => 'C',
- 'Cannot delete order!' => '¡No se puede borrar la orden!',
- 'Cannot delete quotation!' => '¡No se puede borrar la cotización!',
- 'Cannot save order!' => '¡No se puede guardar la orden!',
- 'Cannot save quotation!' => '¡No se puede guardar la cotización!',
- 'Cc' => 'Cc',
- 'City' => 'Cuidad',
- 'Closed' => 'Cerrada',
- 'Company Name' => 'Nombre de la empresa',
- 'Confirm!' => '¡Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Could not save!' => '¡No se pudo guardar!',
- 'Could not transfer Inventory!' => '¡No se pudo transferir el inventario',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Date Received' => 'Fecha de recibo',
- 'Date received missing!' => '¡Falta la fecha de recibo!',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Done' => 'Listo',
- 'E-mail' => 'Correo-e',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit Purchase Order' => 'Modificar orden de compra',
- 'Edit Quotation' => 'Modificar cotización',
- 'Edit Request for Quotation' => 'Modificar solicitud de cotización',
- 'Edit Sales Order' => 'Modificar orden de venta',
- 'Employee' => 'Empleado',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'ID' => 'Id.',
- 'In-line' => 'En linea',
- 'Include in Report' => 'Incluir en reporte',
- 'Internal Notes' => 'Notas internas',
- 'Inventory saved!' => '¡Existencias guardadas!',
- 'Inventory transferred!' => '¡Existencias transferidas!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'Num.',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '¡No se suministro nada!',
- 'Nothing to transfer!' => '¡Nada que transferir!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'O' => 'A',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de la orden',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden procesada!',
- 'Order saved!' => '¡Orden guardada!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Part' => 'Parte',
- 'Part Number' => 'Número de parte',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Purchase Order' => 'Orden de compra',
- 'Purchase Orders' => 'Ordenes de compra',
- 'Qty' => 'Cant.',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date' => 'Fecha de cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number' => 'Número de cotización',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Sol. de Cot.',
- 'RFQ Number' => 'Número de Sol. de Cot.',
- 'Recd' => 'Recb.',
- 'Receive Merchandise' => 'Recibir mercancía',
- 'Remaining' => 'Disponible',
- 'Request for Quotation' => 'Solicitud de cotización',
- 'Request for Quotations' => 'Solicitudes de cotización',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Factura de venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Enviar',
- 'Ship Merchandise' => 'Enviar mercancías',
- 'Ship to' => 'Enviar a',
- 'Ship via' => 'Enviar por',
- 'Shipping Address' => 'Dirección de envío',
- 'Shipping Date' => 'Fecha de envío',
- 'Shipping Date missing!' => '¡Falta la fecha de envío!',
- 'Shipping Point' => 'Punto de envío',
- 'State/Province' => 'Estado',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Terms' => 'Condiciones',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento comercial',
- 'Transfer' => 'Transferir',
- 'Transfer Inventory' => 'Transferir inventario',
- 'Transfer to' => 'Transferir a',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de compra',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor missing!' => '¡Falta el proveedor!',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'Warehouse' => 'Almacén',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'days' => 'días',
- 'ea' => 'pza',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'listo' => 'done',
- 'correo_e' => 'e_mail',
- 'vista_preliminar' => 'print',
- 'print_and_save' => 'print_and_save',
- 'orden_de_compra' => 'purchase_order',
- 'cotización' => 'quotation',
- 'quotation_' => 'quotation_',
- 'sol._de_cot.' => 'rfq',
- 'rfq_' => 'rfq_',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'enviar_a' => 'ship_to',
- 'transferir' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/pe b/sql-ledger/locale/mx/pe
deleted file mode 100644
index cb15d56..0000000
--- a/sql-ledger/locale/mx/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Add Group' => 'Nuevo grupo',
- 'Add Pricegroup' => 'Nuevo grupo de precios',
- 'Add Project' => 'Nuevo proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducciones de la descripción',
- 'Edit Description Translations' => 'Modificar traducciones de descripción',
- 'Edit Group' => 'Modificar grupo',
- 'Edit Pricegroup' => 'Modificar precio de grupo',
- 'Edit Project' => 'Modificar proyecto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traducciones de grupo',
- 'Group deleted!' => '¡Grupo borrado!',
- 'Group missing!' => '¡Falta el grupo!',
- 'Group saved!' => '¡Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Language' => 'Lenguaje',
- 'Languages not defined!' => '¡Lenguajes no definido!',
- 'Number' => 'Número',
- 'Orphaned' => 'Huérfano',
- 'Pricegroup' => 'Grupo de precios',
- 'Pricegroup deleted!' => '¡Grupo de precios borrado!',
- 'Pricegroup missing!' => '¡Falta el grupo de precios!',
- 'Pricegroup saved!' => '¡Grupo de precios guardado!',
- 'Pricegroups' => 'Grupos de precios',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducciones de descripción de proyecto',
- 'Project Number' => 'Número de proyecto',
- 'Project Number missing!' => 'Falta número de proyecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto registrado!',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => '¡Traducción borrada!',
- 'Translations saved!' => '¡Traducciones guardadas!',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'nuevo_grupo' => 'add_group',
- 'nuevo_grupo_de_precios' => 'add_pricegroup',
- 'nuevo_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/pos b/sql-ledger/locale/mx/pos
deleted file mode 100644
index c748030..0000000
--- a/sql-ledger/locale/mx/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Nueva factura de Pto. de Vta.',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Change' => 'Cambiar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de crédito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Modificar ticket',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Extended' => 'Extendido',
- 'From' => 'De',
- 'Language' => 'Lenguaje',
- 'Memo' => 'Nota',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Post' => 'Registrar',
- 'Posted!' => '¡Registrado!',
- 'Price' => 'Precio',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Qty' => 'Cant.',
- 'Receipts' => 'Cobros',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Disponible',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'Referencia',
- 'Subtotal' => 'Subtotal',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'vista_preliminar' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/ps b/sql-ledger/locale/mx/ps
deleted file mode 100644
index 67baf33..0000000
--- a/sql-ledger/locale/mx/ps
+++ /dev/null
@@ -1,328 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Vencimiento CxP',
- 'AR Aging' => 'Vencimiento CxC',
- 'AR Outstanding' => 'CxC pendientes',
- 'AR Transaction' => 'Movimiento CxC',
- 'AR Transactions' => 'Movimientos de Ctas. x cobrar',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Add POS Invoice' => 'Nueva factura de Pto. de Vta.',
- 'Add Purchase Order' => 'Nueva orden de compra',
- 'Add Quotation' => 'Nueva cotización',
- 'Add Request for Quotation' => 'Nueva solicitud de cotización',
- 'Add Sales Invoice' => 'Nueva factura de venta',
- 'Add Sales Order' => 'Nueva orden de venta',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las cuentas',
- 'Amount' => 'Importe',
- 'Amount Due' => 'Saldo',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está Ud. seguro de querer borrar la factura No.:',
- 'Are you sure you want to delete Transaction' => '¿Está Ud. seguro de querer borrar el movimiento',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balance general',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de facturación',
- 'Bin' => 'Ubicación',
- 'Bin List' => 'Lista de ubicaciones',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar el movimiento!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura para un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago para un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un movimiento para un periodo cerrado!',
- 'Cannot post transaction!' => '¡No se puede registrar el movimiento!',
- 'Cash' => 'Bancos',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Check' => 'Cheque',
- 'City' => 'Cuidad',
- 'Closed' => 'Cerrada',
- 'Company Name' => 'Nombre de la empresa',
- 'Compare to' => 'Comparar al',
- 'Confirm!' => '¡Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit' => 'Abono',
- 'Credit Limit' => 'Límite de crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Número de cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Cargo',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'No. de decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'Due Date missing!' => 'Falta fecha de vencimiento!',
- 'E-mail' => 'Correo-e',
- 'E-mail Statement to' => 'Enviar estado de cuenta por correo-e a',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'E-mailed' => 'Enviado por correo-e',
- 'Edit POS Invoice' => 'Modificar ticket',
- 'Edit Sales Invoice' => 'Modificar factura de venta',
- 'Exch' => 'T. de C.',
- 'Exchange Rate' => 'Tipo de cambio',
- 'Exchange rate for payment missing!' => '¡Falta el tipo de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta el tipo de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'Group Items' => 'Componentes de grupo',
- 'Heading' => 'Encabezado',
- 'ID' => 'Id.',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluír la diferencia por tipo de cambio',
- 'Include in Report' => 'Incluir en reporte',
- 'Income Statement' => 'Estado de resultados',
- 'Internal Notes' => 'Notas internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de factura',
- 'Invoice Date missing!' => '¡Falta la fecha de la factura!',
- 'Invoice Number' => 'Número de factura',
- 'Invoice Number missing!' => 'Falta el número de factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Item not on file!' => '¡El artículo no está registrado!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'N/A' => 'N/A',
- 'No.' => 'Num.',
- 'Non-taxable Purchases' => 'Compras exentas',
- 'Non-taxable Sales' => 'Ventas exentas',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No se seleccionó nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta el número en el renglón',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => '¡Falta la fecha de la orden!',
- 'Order Number' => 'Número de la orden',
- 'Order Number missing!' => 'Falta el número de la orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de empaque',
- 'Packing List Date missing!' => '¡Falta la fecha en la lista de empaque!',
- 'Packing List Number missing!' => '¡Falta le número en la lista de empaque!',
- 'Paid' => 'Pagado',
- 'Part' => 'Parte',
- 'Payment date missing!' => '¡Falta la fecha del pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Selección',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => '¡Registrado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Vista Preliminar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número de proyecto',
- 'Project Transactions' => 'Movimientos de proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Purchase Order' => 'Orden de compra',
- 'Qty' => 'Cant.',
- 'Queue' => 'Fila',
- 'Queued' => 'Puesto en la fila',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => '¡Falta la fecha de la cotización!',
- 'Quotation Number missing!' => '¡Falta el número de la cotización!',
- 'Recd' => 'Recb.',
- 'Receipt' => 'Cobro',
- 'Receipts' => 'Cobros',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Disponible',
- 'Report for' => 'Reporte para',
- 'Required by' => 'Vencimiento',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Orden de venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccionar todo',
- 'Select from one of the items below' => 'Seleccione uno de los siguientes artículos',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => 'Núm. de serie',
- 'Service' => 'Servicio',
- 'Ship' => 'Enviar',
- 'Ship to' => 'Enviar a',
- 'Ship via' => 'Enviar por',
- 'Shipping Address' => 'Dirección de envío',
- 'Shipping Point' => 'Punto de envío',
- 'Source' => 'Referencia',
- 'Standard' => 'Estándar',
- 'State/Province' => 'Estado',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax collected' => 'Impuesto Retenido',
- 'Tax paid' => 'Impuesto Pagado',
- 'Till' => 'Hasta',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento comercial',
- 'Transaction deleted!' => '¡Movimiento borrado!',
- 'Transaction posted!' => '¡Movimiento registrado!',
- 'Trial Balance' => 'Balanza de comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Número de proveedor',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'What type of item is this?' => '¿Que tipo de articulo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Si',
- 'as at' => 'como a',
- 'ea' => 'pza',
- 'for Period' => 'para el periodo',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'movimiento_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_e' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'vista_preliminar' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'orden_de_venta' => 'sales_order',
- 'seleccionar_todo' => 'select_all',
- 'enviar_a' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/pw b/sql-ledger/locale/mx/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/mx/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/rc b/sql-ledger/locale/mx/rc
deleted file mode 100644
index 2a88f44..0000000
--- a/sql-ledger/locale/mx/rc
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Beginning Balance' => 'Balance inicial',
- 'Cleared' => 'Aclarado',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decrease' => 'Reducción',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Listo',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'Include Exchange Rate Difference' => 'Incluír la diferencia por tipo de cambio',
- 'Increase' => 'Aumento',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => '¡Desbalanceado!',
- 'Outstanding' => 'Pendiente',
- 'Payment' => 'Pago',
- 'R' => 'C',
- 'Reconciliation' => 'Conciliación',
- 'Reconciliation Report' => 'Reporte de conciliación',
- 'Select all' => 'Seleccionar todo',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Referencia',
- 'Statement Balance' => 'Saldo bancario',
- 'Summary' => 'Resumen',
- 'To' => 'A',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'listo' => 'done',
- 'seleccionar_todo' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/mx/rp b/sql-ledger/locale/mx/rp
deleted file mode 100644
index 239d182..0000000
--- a/sql-ledger/locale/mx/rp
+++ /dev/null
@@ -1,161 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Vencimiento CxP',
- 'AR Aging' => 'Vencimiento CxC',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de cuenta',
- 'Accounting Menu' => 'Menú de contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las cuentas',
- 'Amount' => 'Importe',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Anexo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balance general',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Bancos',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar al',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Abono',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no está registrado!',
- 'Date' => 'Fecha',
- 'Debit' => 'Cargo',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'No. de decimales',
- 'Department' => 'Departamento',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de vencimiento',
- 'E-mail' => 'Correo-e',
- 'E-mail Statement to' => 'Enviar estado de cuenta por correo-e a',
- 'E-mail address missing!' => '¡Falta la dirección de correo-e!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'De',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'Id.',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluír la diferencia por tipo de cambio',
- 'Include in Report' => 'Incluir en reporte',
- 'Income Statement' => 'Estado de resultados',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => 'Nota',
- 'Message' => 'Mensaje',
- 'Method' => 'Método',
- 'N/A' => 'N/A',
- 'Non-taxable Purchases' => 'Compras exentas',
- 'Non-taxable Sales' => 'Ventas exentas',
- 'Nothing selected!' => '¡No se seleccionó nada!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagos',
- 'Postscript' => 'Postscript',
- 'Print' => 'Vista Preliminar',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número de proyecto',
- 'Project Transactions' => 'Movimientos de proyecto',
- 'Project not on file!' => '¡Proyecto no registrado!',
- 'Receipts' => 'Cobros',
- 'Report for' => 'Reporte para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccionar todo',
- 'Select from one of the names below' => 'Seleccione uno de los siguientes nombres',
- 'Select from one of the projects below' => 'Seleccione uno de los siguientes proyectos',
- 'Select postscript or PDF!' => 'Seleccione Postcript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Referencia',
- 'Standard' => 'Estándar',
- 'Statement' => 'Estado de cuenta',
- 'Statement sent to' => 'Estado de cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax collected' => 'Impuesto Retenido',
- 'Tax paid' => 'Impuesto Pagado',
- 'Till' => 'Hasta',
- 'To' => 'A',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balanza de comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡Proveedor no registrado!',
- 'as at' => 'como a',
- 'for Period' => 'para el periodo',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_e' => 'e_mail',
- 'vista_preliminar' => 'print',
- 'seleccionar_todo' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/COPYING b/sql-ledger/locale/nb/COPYING
deleted file mode 100644
index 02c8ec4..0000000
--- a/sql-ledger/locale/nb/COPYING
+++ /dev/null
@@ -1,27 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Norwegian Bokmål texts:
-#
-# Author: Keld Jørn Simonsen <keld@dkuug.dk>
-# Morten Pedersen <morten@workzone.no>
-# Finn-Arne Johansen <faj@bzz.no>
-# Petter Reinholdtsen <pere@hungry.com>
-# Erik Inge Bolsø <knan@tvilsom.org>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/nb/LANGUAGE b/sql-ledger/locale/nb/LANGUAGE
deleted file mode 100644
index d06bc82..0000000
--- a/sql-ledger/locale/nb/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Norwegian Bokmål
diff --git a/sql-ledger/locale/nb/admin b/sql-ledger/locale/nb/admin
deleted file mode 100644
index 57f3752..0000000
--- a/sql-ledger/locale/nb/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Aksesskontroll',
- 'Accounting' => 'Bokføring',
- 'Add User' => 'Ny bruker',
- 'Address' => 'Adresse',
- 'Administration' => 'Administrasjon',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'Alle datasett oppdatert!',
- 'Cannot create Lock!' => 'Kan ikke opprette lås',
- 'Change Admin Password' => 'Endre passord for admin',
- 'Change Password' => 'Endre passord',
- 'Character Set' => 'Tegnsett',
- 'Click on login name to edit!' => 'Klikk på brukernavn for å redigere!',
- 'Company' => 'Firma',
- 'Connect to' => 'Forbind til',
- 'Continue' => 'Fortsett',
- 'Create Chart of Accounts' => 'Opprett kontoplan',
- 'Create Dataset' => 'Opprett datasett',
- 'DBI not installed!' => 'DBI ikke installert!',
- 'Database' => 'Database',
- 'Database Administration' => 'Administrasjon av database',
- 'Database Driver not checked!' => 'Databasedriver ikke kontrollert!',
- 'Database User missing!' => 'Bruker av database mangler!',
- 'Dataset' => 'Datasett',
- 'Dataset missing!' => 'Datasett mangler!',
- 'Dataset updated!' => 'Datasett oppdatert!',
- 'Date Format' => 'Datoformat',
- 'Delete' => 'Slett',
- 'Delete Dataset' => 'Fjern datasett',
- 'Directory' => 'Katalog',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Grense for dropdown',
- 'E-mail' => 'Epost',
- 'Edit User' => 'Endre bruker',
- 'Existing Datasets' => 'Eksisterende datasett',
- 'Fax' => 'Faks',
- 'Host' => 'Vert',
- 'Hostname missing!' => 'Vertsnavn mangler!',
- 'Language' => 'Språk',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'La vert- og port-felt være tomme med mindre du vil lage en ekstern forbindelse.',
- 'Lock System' => 'Lås systemet',
- 'Lockfile created!' => 'Låsefil opprettet!',
- 'Lockfile removed!' => 'Låsefil fjernet!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Mangler innloggingsnavn',
- 'Logout' => 'Logg ut',
- 'Manager' => 'Behandler',
- 'Menu Width' => 'Menyvidde',
- 'Multibyte Encoding' => 'Tegnsett',
- 'Name' => 'Navn',
- 'New Templates' => 'Nye maler',
- 'No Database Drivers available!' => 'Ingen databasedrivere tilgjengelige!',
- 'No Dataset selected!' => 'Ingen datasett valgt!',
- 'Nothing to delete!' => 'Ingenting å slette!',
- 'Number Format' => 'Numerisk format',
- 'Oracle Database Administration' => 'Administrasjon av database Oracle',
- 'Password' => 'Passord',
- 'Password changed!' => 'Passord endret!',
- 'Pg Database Administration' => 'Administrasjon av database Pg',
- 'PgPP Database Administration' => 'Administrasjon av database PgPP',
- 'Phone' => 'Tlf',
- 'Port' => 'Port',
- 'Port missing!' => 'Port mangler!',
- 'Printer' => 'Skriver',
- 'Save' => 'Lagre',
- 'Setup Templates' => 'Oppsett av maler',
- 'Signature' => 'Underskrift',
- 'Stylesheet' => 'Stílark',
- 'Templates' => 'Maler',
- 'The following Datasets are not in use and can be deleted' => 'De følgende datasettene er ikke i bruk og kan slettes',
- 'The following Datasets need to be updated' => 'De følgende datasettene skal oppdateres',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dette er en innledende kontroll for eksisterende kilder. Ingenting vil bli opprettet eller slettet på dette trinnet!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'For å tilføye en bruker til en gruppe må du endre et brukernavn og så lagre. Den nye brukeren vil så bli lagret med de samme variablene under det nye loginnavnet.',
- 'Unlock System' => 'Lås opp systemet',
- 'Update Dataset' => 'Oppdatér datasett',
- 'Use Templates' => 'Bruk maler',
- 'User' => 'Bruker',
- 'User deleted!' => 'Bruker slettet!',
- 'User saved!' => 'Bruker lagret!',
- 'Version' => 'Versjon',
- 'You must enter a host and port for local and remote connections!' => 'Du må oppgi en vert og en port for lokale og eksterne forbindelser!',
- 'does not exist' => 'eksisterer ikke',
- 'is already a member!' => 'er allerede et medlem!',
- 'localhost' => 'localhost',
- 'locked!' => 'Låst!',
- 'successfully created!' => 'opprettet!',
- 'successfully deleted!' => 'fjernet!',
- 'website' => 'nettsted',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'ny_bruker' => 'add_user',
- 'endre_passord_for_admin' => 'change_admin_password',
- 'endre_passord' => 'change_password',
- 'fortsett' => 'continue',
- 'opprett_datasett' => 'create_dataset',
- 'slett' => 'delete',
- 'fjern_datasett' => 'delete_dataset',
- 'lås_systemet' => 'lock_system',
- 'login' => 'login',
- 'logg_ut' => 'logout',
- 'administrasjon_av_database_oracle' => 'oracle_database_administration',
- 'administrasjon_av_database_pg' => 'pg_database_administration',
- 'administrasjon_av_database_pgpp' => 'pgpp_database_administration',
- 'lagre' => 'save',
- 'lås_opp_systemet' => 'unlock_system',
- 'oppdatér_datasett' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/all b/sql-ledger/locale/nb/all
deleted file mode 100644
index d342a06..0000000
--- a/sql-ledger/locale/nb/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Kreditorer',
- 'AP Aging' => 'Aldersfordeling',
- 'AP Outstanding' => 'Ubetalte fakturaer',
- 'AP Transaction' => 'Kreditorpostering',
- 'AP Transactions' => 'Kreditorpostering',
- 'AR' => 'Debitorer',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Outstanding' => 'Utestående fordringer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'About' => 'Om',
- 'Above' => 'Over',
- 'Access Control' => 'Aksesskontroll',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer mangler!',
- 'Account Type' => 'Kontotype',
- 'Account Type missing!' => 'Kontotype mangler!',
- 'Account deleted!' => 'Konto slettet!',
- 'Account does not exist!' => 'Konto finnes ikke!',
- 'Account saved!' => 'Konto lagret!',
- 'Accounting' => 'Bokføring',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Kontoer',
- 'Accrual' => 'Kostnad',
- 'Activate Audit trails' => 'Aktiviser revisjonssporing',
- 'Active' => 'Aktiv',
- 'Add' => 'Ny',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Ny konto',
- 'Add Assembly' => 'Ny sammensetning',
- 'Add Business' => 'Ny organisasjon',
- 'Add Cash Transfer Transaction' => 'Nytt kontantsalg',
- 'Add Customer' => 'Ny kunde',
- 'Add Deduction' => 'Nytt fradrag',
- 'Add Department' => 'Ny avdeling',
- 'Add Employee' => 'Ny ansatt',
- 'Add Exchange Rate' => 'Ny vekslingskurs',
- 'Add GIFI' => 'Ny GIFI',
- 'Add General Ledger Transaction' => 'Ny postering i hovedbok',
- 'Add Group' => 'Ny gruppe',
- 'Add Labor/Overhead' => 'Nytt arbeide/overhead',
- 'Add Language' => 'Nytt språk',
- 'Add POS Invoice' => 'Ny kontantfaktura',
- 'Add Part' => 'Ny vare',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nytt prosjekt',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add SIC' => 'Ny SIC',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Service' => 'Ny tjeneste',
- 'Add Transaction' => 'Ny postering',
- 'Add User' => 'Ny bruker',
- 'Add Vendor' => 'Ny leverandør',
- 'Add Vendor Invoice' => 'Ny leverandørfaktura',
- 'Add Warehouse' => 'Nytt lager',
- 'Address' => 'Adresse',
- 'Administration' => 'Administrasjon',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Etter fradrag',
- 'All' => 'Alle',
- 'All Accounts' => 'Alle kontoer',
- 'All Datasets up to date!' => 'Alle datasett oppdatert!',
- 'All Items' => 'Alle elementer',
- 'Allowances' => 'Fradrag',
- 'Amount' => 'Beløp',
- 'Amount Due' => 'Forfalt beløp',
- 'Amount missing!' => 'Konto mangler!',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på at du vil fjerne fakturanummer',
- 'Are you sure you want to delete Order Number' => 'Er du sikker på at du vil fjerne ordrenummer',
- 'Are you sure you want to delete Quotation Number' => 'Er du sikker på at du vil fjerne tilbudsnummer',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på at du vil fjerne postering',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Er du sikker på at du ønsker å fjerne de markerte oppføringene fra køen?',
- 'Assemblies' => 'Sammensetninger',
- 'Assemblies restocked!' => 'Sammensetninger omplassert!',
- 'Assembly' => 'Sammensetning',
- 'Asset' => 'Aktiv',
- 'Attachment' => 'Vedlegg',
- 'Audit Control' => 'Revisjonskontroll',
- 'Audit trail removed up to' => 'Revisjonssporing fjernet inntil',
- 'Audit trails disabled' => 'Revisjonssporing ikke aktivisert',
- 'Audit trails enabled' => 'Revisjonssporing aktivisert',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'Sikkerhetskopi',
- 'Backup sent to' => 'Sikkerhetskopier sendt til',
- 'Balance' => 'Balanse',
- 'Balance Sheet' => 'Balanse',
- 'Based on' => 'Basert på',
- 'Batch Printing' => 'Samlet utskrift',
- 'Bcc' => 'Blind kopi',
- 'Before Deduction' => 'Før fradrag',
- 'Beginning Balance' => 'Startbalanse',
- 'Below' => 'Under',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Bin Lists' => 'Bokslister',
- 'Books are open' => 'Bokføringen er åpen for rettelser',
- 'Break' => '',
- 'Business' => 'Organisasjon',
- 'Business Number' => 'Organisasjonsnummer',
- 'Business deleted!' => 'Organisasjon fjernet!',
- 'Business saved!' => 'Organisasjon lagret!',
- 'C' => 'C',
- 'COGS' => 'Innkjøp',
- 'Cannot create Lock!' => 'Kan ikke opprette lås',
- 'Cannot delete account!' => 'Kan ikke slette konto!',
- 'Cannot delete customer!' => 'Kan ikke slette kunde!',
- 'Cannot delete default account!' => 'Kan ikke slette standardkonto!',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot delete item!' => 'Kan ikke slette enkeltdel!',
- 'Cannot delete order!' => 'Kan ikke slette ordre!',
- 'Cannot delete quotation!' => 'Kan ikke slette tilbud!',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot delete vendor!' => 'Kan ikke slette leverandør!',
- 'Cannot post Payment!' => 'Kan ikke bokføre betaling',
- 'Cannot post Receipt!' => 'Kan ikke bokføre kvittering',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bokføre faktura for en avsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bokføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bokføre postering for en avsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Cannot process payment for a closed period!' => 'Kan ikke behandle betaling for avsluttet periode!',
- 'Cannot remove files!' => 'Kan ikke slette filer!',
- 'Cannot save account!' => 'Kan ikke lagre konto!',
- 'Cannot save defaults!' => 'Kan ikke lagre defaults!',
- 'Cannot save order!' => 'Kan ikke lagre ordre!',
- 'Cannot save preferences!' => 'Kan ikke lagre preferanser!',
- 'Cannot save quotation!' => 'Kan ikke lagre tilbud!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan ikke sette konto for mer enn en av Kunde, Leverandør eller Intern',
- 'Cannot set multiple options for' => 'Kan ikke sette flere valg for',
- 'Cannot set multiple options for Parts Inventory' => 'Kan ikke sette flere valg for delelagerbeholding',
- 'Cannot set multiple options for Service Items' => 'Kan ikke sette flere valg på tjenesteelementer',
- 'Cannot stock assemblies!' => 'Kan ikke plasere sammensetninger!',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopi til',
- 'Change' => 'Endre',
- 'Change Admin Password' => 'Endre passord for admin',
- 'Change Password' => 'Endre passord',
- 'Character Set' => 'Tegnsett',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Sjekk',
- 'Check Inventory' => 'Sjekk varebeholdning',
- 'Checks' => 'Sjekker',
- 'City' => 'Poststed',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Klikk på brukernavn for å redigere!',
- 'Close Books up to' => 'Avslutt bokføring opp til',
- 'Closed' => 'Avsluttet',
- 'Code' => 'Kode',
- 'Code missing!' => 'Mangler kode',
- 'Company' => 'Firma',
- 'Company Name' => 'Firmanavn',
- 'Compare to' => 'Sammenlign med',
- 'Components' => 'Komponenter',
- 'Confirm' => '',
- 'Confirm!' => 'Bekreft!',
- 'Connect to' => 'Forbind til',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Contra' => 'Kontra',
- 'Copies' => 'Kopier',
- 'Copy to COA' => 'Kopiér til kontoplan',
- 'Cost' => 'Kostpris',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'Kunne ikke lagre',
- 'Could not transfer Inventory!' => 'Kunne ikke overføre varebeholdning!',
- 'Country' => 'Land',
- 'Create Chart of Accounts' => 'Opprett kontoplan',
- 'Create Dataset' => 'Opprett datasett',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Current Earnings' => 'Aktuelle inntekter',
- 'Customer' => 'Kunde',
- 'Customer History' => 'Kundehistorikk',
- 'Customer Number' => 'Kundenummer',
- 'Customer deleted!' => 'Kunde slettet!',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Customer saved!' => 'Kunde lagret!',
- 'Customers' => 'Kunder',
- 'DBI not installed!' => 'DBI ikke installert!',
- 'DOB' => '',
- 'Database' => 'Database',
- 'Database Administration' => 'Administrasjon av database',
- 'Database Driver not checked!' => 'Databasedriver ikke kontrollert!',
- 'Database Host' => 'Database-vert',
- 'Database User missing!' => 'Bruker av database mangler!',
- 'Dataset' => 'Datasett',
- 'Dataset is newer than version!' => 'Datasettet er nyere enn versjonen!',
- 'Dataset missing!' => 'Datasett mangler!',
- 'Dataset updated!' => 'Datasett oppdatert!',
- 'Date' => 'Dato',
- 'Date Format' => 'Datoformat',
- 'Date Paid' => 'Betalingsdato',
- 'Date Received' => 'Mottaksdato',
- 'Date missing!' => 'Dato mangler!',
- 'Date received missing!' => 'Mangler mottaksdato',
- 'Debit' => 'Debet',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Desimalplasser',
- 'Decrease' => 'Reduksjon',
- 'Deduct after' => 'Fratrekk etter',
- 'Deduction deleted!' => 'Slettet fradrag',
- 'Deduction saved!' => 'Fradrag lagret',
- 'Deductions' => 'Fradrag',
- 'Defaults' => 'Standardinnstillinger',
- 'Defaults saved!' => 'Standardinnstillinger lagret',
- 'Delete' => 'Slett',
- 'Delete Account' => 'Fjern konto',
- 'Delete Dataset' => 'Fjern datasett',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Avdeling',
- 'Department deleted!' => 'Avdeling slettet!',
- 'Department saved!' => 'Avdeling lagret',
- 'Departments' => 'Avdelinger',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Description Translations' => 'Beskrivelsesoversettelser',
- 'Description missing!' => 'Mangler beskrivelse!',
- 'Detail' => 'Detalj',
- 'Difference' => 'Forskjell',
- 'Directory' => 'Katalog',
- 'Discount' => 'Rabatt',
- 'Done' => 'Ferdig',
- 'Drawing' => 'Tegning',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Grense for dropdown',
- 'Due Date' => 'Forfallsdato',
- 'Due Date missing!' => 'Forfallsdato mangler!',
- 'E-mail' => 'Epost',
- 'E-mail Statement to' => 'Send oppgjør til',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit' => 'Endre',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Endre konto',
- 'Edit Assembly' => 'Endre sammensetning',
- 'Edit Business' => 'Endre organisasjon',
- 'Edit Cash Transfer Transaction' => 'Endre kontant overførsel',
- 'Edit Customer' => 'Endre kundeopplysninger',
- 'Edit Deduction' => 'Endre fradrag',
- 'Edit Department' => 'Endre avdeling',
- 'Edit Description Translations' => 'Endre beskrivelsesoversettelser',
- 'Edit Employee' => 'Endre ansatt',
- 'Edit GIFI' => 'Endre GIFI',
- 'Edit General Ledger Transaction' => 'Endre en postering i hovedbok',
- 'Edit Group' => 'Endre gruppe',
- 'Edit Labor/Overhead' => 'Endre arbeide/overhead',
- 'Edit Language' => 'Endre språk',
- 'Edit POS Invoice' => 'Endre kontantfaktura',
- 'Edit Part' => 'Endre vare',
- 'Edit Preferences for' => 'Endre innstillinger for',
- 'Edit Pricegroup' => 'Endre prisgruppe',
- 'Edit Project' => 'Endre prosjekt',
- 'Edit Purchase Order' => 'Endre innkjøpsordre',
- 'Edit Quotation' => 'Endre tilbud',
- 'Edit Request for Quotation' => 'Endre ønske om tilbud',
- 'Edit SIC' => 'Endre SIC',
- 'Edit Sales Invoice' => 'Endre salgsfaktura',
- 'Edit Sales Order' => 'Endre salgsordre',
- 'Edit Service' => 'Endre tjeneste',
- 'Edit Template' => 'Endre mal',
- 'Edit User' => 'Endre bruker',
- 'Edit Vendor' => 'Endre leverandør',
- 'Edit Vendor Invoice' => 'Endre leverandørfaktura',
- 'Edit Warehouse' => 'Endre lager',
- 'Employee' => 'Ansatt',
- 'Employee Name' => 'Navn på ansatt',
- 'Employee Number' => '',
- 'Employee deleted!' => 'Ansatt slettet',
- 'Employee pays' => 'Ansatt betaler',
- 'Employee saved!' => 'Ansatt lagret',
- 'Employees' => 'Ansatte',
- 'Employer' => 'Arbeidsgiver',
- 'Employer pays' => 'Arbeidsgiver betaler',
- 'Enddate' => 'Sluttdato',
- 'Enforce transaction reversal for all dates' => 'Tving eksplisitte transaksjonsrettelser for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Angi opp til 3 bokstaver adskilt med kolon (fx NOK:EUR:USD:JPY) for innenlandske og utenlandske valutaer',
- 'Equity' => 'Egenkapital',
- 'Excempt age <' => '',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Existing Datasets' => 'Eksisterende datasett',
- 'Expense' => 'Utgift',
- 'Expense Account' => 'Utgiftskonto',
- 'Expense/Asset' => 'Utgift/Aktiv',
- 'Extended' => 'Sum',
- 'FX' => 'Faks',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Foreign Exchange Gain' => 'Gevinst på valutahandel',
- 'Foreign Exchange Loss' => 'Tap på valutahandel',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI slettet!',
- 'GIFI missing!' => 'GIFI mangler!',
- 'GIFI saved!' => 'GIFI lagret!',
- 'GL Transaction' => 'Postering i hovedbok',
- 'General Ledger' => 'Hovedbok',
- 'Goods & Services' => 'Varer og tjenester',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'Group Translations' => 'Grupper oversettelser',
- 'Group deleted!' => 'Slettet gruppe!',
- 'Group missing!' => 'Mangler gruppe!',
- 'Group saved!' => 'Lagret gruppe!',
- 'Groups' => 'Grupper',
- 'HR' => 'Personal',
- 'HTML Templates' => 'HTML-maler',
- 'Heading' => 'Overskrift',
- 'History' => 'Historikk',
- 'Home Phone' => 'Hjemmetelefon',
- 'Host' => 'Vert',
- 'Hostname missing!' => 'Vertsnavn mangler!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Bilde',
- 'In-line' => 'Inne i',
- 'Include Exchange Rate Difference' => 'Inkluder forskjell i vekslingsrate',
- 'Include in Report' => 'Inkludér i rapport',
- 'Include in drop-down menus' => 'Inkludér i rullegardin-menyer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Skal denne konto kunne velges som avgifts- eller mva-konto ved opprettelsen av kunder/leverandører?',
- 'Income' => 'Inntekt',
- 'Income Account' => 'Inntektskonto',
- 'Income Statement' => 'Driftsregnskap',
- 'Incorrect Dataset version!' => 'Gal versjon av datasett!',
- 'Incorrect Password!' => 'Galt passord!',
- 'Increase' => 'Økning',
- 'Individual Items' => 'Individuelle elementer',
- 'Internal Notes' => 'Interne notater',
- 'Inventory' => 'Varebeholdning',
- 'Inventory Account' => 'Varebeholdningskonto',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Varebeholdning må være null for at du kan sette denne sammensetningen som foreldet!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Varebeholdning må være null for at du kan sette denne enhet som foreldet!',
- 'Inventory saved!' => 'Varebeholdning lagret',
- 'Inventory transferred!' => 'Varebeholdning overført',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bokført!',
- 'Invoice processed!' => 'Faktura behandlet!',
- 'Invoices' => 'Fakturaer',
- 'Is this a summary account to record' => 'Samlekonto for',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Elementet slettet!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Items' => 'Elementer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'LaTeX Templates' => 'LaTeX-maler',
- 'Labor/Overhead' => 'Arbeide/overhead',
- 'Language' => 'Språk',
- 'Language deleted!' => 'Språk slettet!',
- 'Language saved!' => 'Språk lagret!',
- 'Languages' => 'Språk',
- 'Languages not defined!' => 'Språkene er ikke definert!',
- 'Last Numbers & Default Accounts' => 'Løpenumre og standardkontoer',
- 'Leadtime' => 'forsinkelsestid',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'La vert- og port-felt være tomme med mindre du vil lage en ekstern forbindelse.',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Utført for',
- 'Line Total' => 'Antall linjer',
- 'Link' => 'Referanse',
- 'Link Accounts' => 'Kople kontoer',
- 'List' => '',
- 'List Accounts' => 'List kontoer',
- 'List Businesses' => 'Vis organisasjoner',
- 'List Departments' => 'Vis avdelinger',
- 'List GIFI' => 'List GIFI',
- 'List Languages' => 'Vis språk',
- 'List Price' => 'Listepris',
- 'List Projects' => 'Vis prosjekter',
- 'List SIC' => 'List SIC',
- 'List Transactions' => 'Vis bokføringer',
- 'List Warehouses' => 'Vis lager',
- 'Lock System' => 'Lås systemet',
- 'Lockfile created!' => 'Låsefil opprettet!',
- 'Lockfile removed!' => 'Låsefil fjernet!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Mangler innloggingsnavn',
- 'Logout' => 'Logg ut',
- 'Make' => 'Fabrikat',
- 'Manager' => 'Behandler',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'Marked entries printed!' => 'Markerte oppføringer er skrevet ut!',
- 'Markup' => 'Markup',
- 'Maximum' => 'Maksimum',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Menu Width' => 'Menyvidde',
- 'Message' => 'Melding',
- 'Method' => 'Metode',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Modell',
- 'Month' => 'Måned',
- 'Multibyte Encoding' => 'Tegnsett',
- 'N/A' => 'I/T',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'New Templates' => 'Nye maler',
- 'No' => 'Nei',
- 'No Database Drivers available!' => 'Ingen databasedrivere tilgjengelige!',
- 'No Dataset selected!' => 'Ingen datasett valgt!',
- 'No email address for' => 'Ingen emailadresse for',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Avgiftsfrie',
- 'Non-taxable Purchases' => 'Avgiftsfrie kjøp',
- 'Non-taxable Sales' => 'Avgiftsfrie salg',
- 'Notes' => 'Merknader',
- 'Nothing entered!' => 'Ingenting lagt inn!',
- 'Nothing outstanding for ' => 'Ingenting utestående for ',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nothing to delete!' => 'Ingenting å slette!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => 'Ingenting å overføre!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number Format' => 'Numerisk format',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'O' => 'O',
- 'Obsolete' => 'Foreldet',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'On Hand' => 'På lager',
- 'Open' => 'Åpne',
- 'Oracle Database Administration' => 'Administrasjon av database Oracle',
- 'Order' => 'Ordre',
- 'Order Date' => 'Ordredato',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Entry' => 'Ordreinngang',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'Order deleted!' => 'Ordre slettet!',
- 'Order processed!' => 'Ordre behandlet!',
- 'Order saved!' => 'Ordre lagret!',
- 'Orphaned' => 'Frittstående',
- 'Out of balance transaction!' => 'Transaksjonen er i ubalanse!',
- 'Out of balance!' => 'Ute av balanse!',
- 'Outstanding' => 'Utestående',
- 'PDF' => 'PDF',
- 'POS' => 'Kontantsalg',
- 'POS Invoice' => 'Kontantsalg faktura',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Packing Lists' => 'Følgesedler',
- 'Paid' => 'Betalt',
- 'Part' => 'Del',
- 'Part Number' => 'Delenummer',
- 'Partnumber' => '',
- 'Parts' => 'Deler',
- 'Parts Inventory' => 'Delelagerbeholdning',
- 'Password' => 'Passord',
- 'Password changed!' => 'Passord endret!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Utbetalinger',
- 'Payment' => 'Betaling',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payment posted!' => 'Betaling bokført!',
- 'Payments' => 'Betalinger',
- 'Payroll Deduction' => 'Fradrag i lønn',
- 'Period' => 'Periode',
- 'Pg Database Administration' => 'Administrasjon av database Pg',
- 'PgPP Database Administration' => 'Administrasjon av database PgPP',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Pick Lists' => 'Plukklister',
- 'Port' => 'Port',
- 'Port missing!' => 'Port mangler!',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Posted!' => 'Bokført!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Innstillinger',
- 'Preferences saved!' => 'Innstillinger lagret!',
- 'Prepayment' => 'Forskuddsbetaling',
- 'Price' => 'Pris',
- 'Pricegroup' => 'Prisgruppe',
- 'Pricegroup deleted!' => 'Prisgruppe slettet!',
- 'Pricegroup missing!' => 'Prisgruppe mangler!',
- 'Pricegroup saved!' => 'Prisgruppe langret',
- 'Pricegroups' => 'Prisgrupper',
- 'Pricelist' => '',
- 'Print' => 'Skriv ut',
- 'Print and Post' => 'Skriv ut og bokfør',
- 'Print and Save' => 'Skriv ut og lagre',
- 'Printed' => 'Skrevet ut',
- 'Printer' => 'Skriver',
- 'Printing ... ' => 'Skriver ut',
- 'Profit Center' => '',
- 'Project' => 'Prosjekt',
- 'Project Description Translations' => 'Oversettelser av prosjektbeskrivelser',
- 'Project Number' => 'Prosjektnummer',
- 'Project Number missing!' => 'Prosjektnummer mangler!',
- 'Project Transactions' => 'Prosjektposteringer',
- 'Project deleted!' => 'Prosjekt slettet!',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Project saved!' => 'Prosjekt lagret!',
- 'Projects' => 'Prosjekter',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Qty' => 'Antall',
- 'Quantity exceeds available units to stock!' => 'Antallet overstiger tilgjengelig varebeholdning',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation ' => '',
- 'Quotation Date' => 'Tilbudsdato',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Quotation deleted!' => 'Tilbud slettet!',
- 'Quotations' => 'Tilbud',
- 'R' => 'R',
- 'RFQ' => 'Tilbudsforespørsel',
- 'RFQ ' => '',
- 'RFQ Number' => 'Tilbudsforespørslelsnummer',
- 'RFQs' => 'Tilbudsforespørsler',
- 'ROP' => 'Etterbestill ved',
- 'Rate' => 'Rate',
- 'Rate missing!' => 'Mangler rate!',
- 'Recd' => 'Mottatt',
- 'Receipt' => 'Kvittering',
- 'Receipt posted!' => 'Kvittering bokført',
- 'Receipts' => 'Kvitteringer',
- 'Receivables' => 'Innbetalinger',
- 'Receive' => 'Motta',
- 'Receive Merchandise' => 'Motta varer',
- 'Reconciliation' => 'Bankoppgjør',
- 'Reconciliation Report' => 'Bankoppgjørsrapport',
- 'Record in' => 'Bokfør på',
- 'Reference' => 'Referanse',
- 'Reference missing!' => 'Referanser mangler!',
- 'Remaining' => 'Resterende',
- 'Remove' => 'Fjern',
- 'Remove Audit trails up to' => 'Fjern revisjonssporing inntil',
- 'Removed spoolfiles!' => 'Fjernet køfiler!',
- 'Removing marked entries from queue ...' => 'Fjernet de markerte oppføringer fra køen...',
- 'Report for' => 'Rapport for',
- 'Reports' => 'Rapporter',
- 'Request for Quotation' => 'Tilbudsforespørsel',
- 'Request for Quotations' => 'Tilbudsforespørsler',
- 'Required by' => 'Leveringsdato',
- 'Retained Earnings' => 'Realisert overskudd',
- 'Role' => 'Rolle',
- 'S' => 'S',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'Salg',
- 'Sales' => 'Salg',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Salgsordrer',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Selger',
- 'Save' => 'Lagre',
- 'Save Pricelist' => '',
- 'Save as new' => 'Lagre som ny',
- 'Save to File' => 'Lagre i fil',
- 'Screen' => 'Skjerm',
- 'Search' => 'Søk',
- 'Select' => 'Velg',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select all' => 'Velg alt',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Salgspris',
- 'Send by E-Mail' => 'Send per email',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Service Items' => 'Tjeneste-elementer',
- 'Services' => 'Tjenester',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Oppsett av maler',
- 'Ship' => 'Send',
- 'Ship Merchandise' => 'Send varer',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping' => 'Frakt',
- 'Shipping Address' => 'Leveringsadresse',
- 'Shipping Date' => 'Leveringsdato',
- 'Shipping Date missing!' => 'Mangler leveringsdato',
- 'Shipping Point' => 'Sendes fra',
- 'Short' => 'Kort',
- 'Signature' => 'Underskrift',
- 'Source' => 'Bilag',
- 'Spoolfile' => 'Køfil',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => 'Standard industrikoder (SIC)',
- 'Startdate' => 'Startdato',
- 'State' => '',
- 'State/Province' => 'Delstat/område',
- 'Statement' => 'Oppgjør',
- 'Statement Balance' => 'Balanseoppgjør',
- 'Statement sent to' => 'Oppgjør sendt til',
- 'Statements sent to printer!' => 'Oppgjør sendt til skriver!',
- 'Stock' => 'Lager',
- 'Stock Assembly' => 'Lagersammensetning',
- 'Stylesheet' => 'Stílark',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oppsummert',
- 'Supervisor' => '',
- 'System' => 'System',
- 'System Defaults' => 'Systemets standardinnstillinger',
- 'Tax' => 'Avgift/mva',
- 'Tax Accounts' => 'Avgift/mva-kontoer',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'Tax Number' => 'Org.nr.',
- 'Tax Number / SSN' => 'Org.nr.',
- 'Tax collected' => 'Inngående avgift',
- 'Tax paid' => 'Betalt avgift',
- 'Taxable' => 'Avgifts/mvapliktig',
- 'Template saved!' => 'Mal lagret!',
- 'Templates' => 'Maler',
- 'Terms' => 'Vilkår',
- 'Text Templates' => 'Tekstmaler',
- 'The following Datasets are not in use and can be deleted' => 'De følgende datasettene er ikke i bruk og kan slettes',
- 'The following Datasets need to be updated' => 'De følgende datasettene skal oppdateres',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dette er en innledende kontroll for eksisterende kilder. Ingenting vil bli opprettet eller slettet på dette trinnet!',
- 'Till' => 'Kasse',
- 'To' => 'Til',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'For å tilføye en bruker til en gruppe må du endre et brukernavn og så lagre. Den nye brukeren vil så bli lagret med de samme variablene under det nye loginnavnet.',
- 'Top Level' => 'Toppnivå',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabatt',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Transaksjonsdato mangler!',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bokført!',
- 'Transaction reversal enforced for all dates' => 'Transaksjonsrettelser skal alltid bokføres eksplisitt',
- 'Transaction reversal enforced up to' => 'Transaksjonsrettelser skal bokføres eksplisitt inntil',
- 'Transactions' => 'Posteringer',
- 'Transfer' => 'Overfør',
- 'Transfer Inventory' => 'Overfør varebeholdning',
- 'Transfer to' => 'Overfør til',
- 'Translation' => 'Oversettelse',
- 'Translation deleted!' => 'Oversettelse slettet',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Translations' => 'Oversettelser',
- 'Translations saved!' => 'Oversettelser lagret!',
- 'Trial Balance' => 'Foreløpig balanse',
- 'Type of Business' => 'Organisasjonstype',
- 'Unit' => 'Enhet',
- 'Unit of measure' => 'Måleenhet',
- 'Unlock System' => 'Lås opp systemet',
- 'Update' => 'Oppdatér',
- 'Update Dataset' => 'Oppdatér datasett',
- 'Updated' => 'Oppdateret',
- 'Upgrading to Version' => 'Oppgrader til version',
- 'Use Templates' => 'Bruk maler',
- 'User' => 'Bruker',
- 'User deleted!' => 'Bruker slettet!',
- 'User saved!' => 'Bruker lagret!',
- 'Valid until' => 'Gyldig til',
- 'Vendor' => 'Leverandør',
- 'Vendor History' => 'Leverandørhistorikk',
- 'Vendor Invoice' => 'Leverandørfaktura',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor deleted!' => 'Leverandør slettet!',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Vendor saved!' => 'Leverandør lagret!',
- 'Vendors' => 'Leverandører',
- 'Version' => 'Versjon',
- 'Warehouse' => 'Lager',
- 'Warehouse deleted!' => 'Lager slettet!',
- 'Warehouse saved!' => 'Lager lagret!',
- 'Warehouses' => 'Lager',
- 'Warning!' => 'Advarsel',
- 'Weight' => 'Vekt',
- 'Weight Unit' => 'Vektenhet',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'Work Orders' => 'Arbeidsordrer',
- 'Work Phone' => 'Jobbtelefon',
- 'Year' => 'År',
- 'Yearend' => 'Årsavslutning',
- 'Yearend date missing!' => 'Mangler årsavslutningsdato!',
- 'Yearend posted!' => 'Årsavslutning bokført',
- 'Yearend posting failed!' => 'Bokføring av årsavslutning feilet!',
- 'Yes' => 'Ja',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Du gav ikke et navn!',
- 'You must enter a host and port for local and remote connections!' => 'Du må oppgi en vert og en port for lokale og eksterne forbindelser!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'konto kan ikke settes til en annen kontotype',
- 'as at' => 'som ved',
- 'days' => 'dager',
- 'does not exist' => 'eksisterer ikke',
- 'done' => 'gjort',
- 'ea' => 'stk',
- 'for Period' => 'for periode',
- 'is already a member!' => 'er allerede et medlem!',
- 'is not a member!' => 'er ikke et medlem!',
- 'localhost' => 'localhost',
- 'locked!' => 'Låst!',
- 'posted!' => 'bokført!',
- 'sent' => 'sent',
- 'successfully created!' => 'opprettet!',
- 'successfully deleted!' => 'fjernet!',
- 'website' => 'nettsted',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/am b/sql-ledger/locale/nb/am
deleted file mode 100644
index 6a7ec56..0000000
--- a/sql-ledger/locale/nb/am
+++ /dev/null
@@ -1,245 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AR' => 'Debitorer',
- 'About' => 'Om',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer mangler!',
- 'Account Type' => 'Kontotype',
- 'Account Type missing!' => 'Kontotype mangler!',
- 'Account deleted!' => 'Konto slettet!',
- 'Account does not exist!' => 'Konto finnes ikke!',
- 'Account saved!' => 'Konto lagret!',
- 'Accounting Menu' => 'Konto-meny',
- 'Accrual' => 'Kostnad',
- 'Activate Audit trails' => 'Aktiviser revisjonssporing',
- 'Add Account' => 'Ny konto',
- 'Add Business' => 'Ny organisasjon',
- 'Add Department' => 'Ny avdeling',
- 'Add GIFI' => 'Ny GIFI',
- 'Add Language' => 'Nytt språk',
- 'Add SIC' => 'Ny SIC',
- 'Add Warehouse' => 'Nytt lager',
- 'Address' => 'Adresse',
- 'Asset' => 'Aktiv',
- 'Audit Control' => 'Revisjonskontroll',
- 'Audit trail removed up to' => 'Revisjonssporing fjernet inntil',
- 'Audit trails disabled' => 'Revisjonssporing ikke aktivisert',
- 'Audit trails enabled' => 'Revisjonssporing aktivisert',
- 'Backup sent to' => 'Sikkerhetskopier sendt til',
- 'Books are open' => 'Bokføringen er åpen for rettelser',
- 'Business Number' => 'Organisasjonsnummer',
- 'Business deleted!' => 'Organisasjon fjernet!',
- 'Business saved!' => 'Organisasjon lagret!',
- 'COGS' => 'Innkjøp',
- 'Cannot delete account!' => 'Kan ikke slette konto!',
- 'Cannot delete default account!' => 'Kan ikke slette standardkonto!',
- 'Cannot save account!' => 'Kan ikke lagre konto!',
- 'Cannot save defaults!' => 'Kan ikke lagre defaults!',
- 'Cannot save preferences!' => 'Kan ikke lagre preferanser!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan ikke sette konto for mer enn en av Kunde, Leverandør eller Intern',
- 'Cannot set multiple options for' => 'Kan ikke sette flere valg for',
- 'Cannot set multiple options for Parts Inventory' => 'Kan ikke sette flere valg for delelagerbeholding',
- 'Cannot set multiple options for Service Items' => 'Kan ikke sette flere valg på tjenesteelementer',
- 'Cash' => 'Kontant',
- 'Character Set' => 'Tegnsett',
- 'Chart of Accounts' => 'Kontoplan',
- 'Close Books up to' => 'Avslutt bokføring opp til',
- 'Code' => 'Kode',
- 'Code missing!' => 'Mangler kode',
- 'Company' => 'Firma',
- 'Continue' => 'Fortsett',
- 'Contra' => 'Kontra',
- 'Copy to COA' => 'Kopiér til kontoplan',
- 'Credit' => 'Kredit',
- 'Customer Number' => 'Kundenummer',
- 'Database Host' => 'Database-vert',
- 'Dataset' => 'Datasett',
- 'Date Format' => 'Datoformat',
- 'Debit' => 'Debet',
- 'Defaults saved!' => 'Standardinnstillinger lagret',
- 'Delete' => 'Slett',
- 'Delete Account' => 'Fjern konto',
- 'Department deleted!' => 'Avdeling slettet!',
- 'Department saved!' => 'Avdeling lagret',
- 'Departments' => 'Avdelinger',
- 'Description' => 'Beskrivelse',
- 'Description missing!' => 'Mangler beskrivelse!',
- 'Discount' => 'Rabatt',
- 'Dropdown Limit' => 'Grense for dropdown',
- 'E-mail' => 'Epost',
- 'Edit' => 'Endre',
- 'Edit Account' => 'Endre konto',
- 'Edit Business' => 'Endre organisasjon',
- 'Edit Department' => 'Endre avdeling',
- 'Edit GIFI' => 'Endre GIFI',
- 'Edit Language' => 'Endre språk',
- 'Edit Preferences for' => 'Endre innstillinger for',
- 'Edit SIC' => 'Endre SIC',
- 'Edit Template' => 'Endre mal',
- 'Edit Warehouse' => 'Endre lager',
- 'Enforce transaction reversal for all dates' => 'Tving eksplisitte transaksjonsrettelser for alle datoer',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Angi opp til 3 bokstaver adskilt med kolon (fx NOK:EUR:USD:JPY) for innenlandske og utenlandske valutaer',
- 'Equity' => 'Egenkapital',
- 'Expense' => 'Utgift',
- 'Expense Account' => 'Utgiftskonto',
- 'Expense/Asset' => 'Utgift/Aktiv',
- 'Fax' => 'Faks',
- 'Foreign Exchange Gain' => 'Gevinst på valutahandel',
- 'Foreign Exchange Loss' => 'Tap på valutahandel',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI slettet!',
- 'GIFI missing!' => 'GIFI mangler!',
- 'GIFI saved!' => 'GIFI lagret!',
- 'Heading' => 'Overskrift',
- 'Include in drop-down menus' => 'Inkludér i rullegardin-menyer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Skal denne konto kunne velges som avgifts- eller mva-konto ved opprettelsen av kunder/leverandører?',
- 'Income' => 'Inntekt',
- 'Income Account' => 'Inntektskonto',
- 'Inventory' => 'Varebeholdning',
- 'Inventory Account' => 'Varebeholdningskonto',
- 'Is this a summary account to record' => 'Samlekonto for',
- 'Labor/Overhead' => 'Arbeide/overhead',
- 'Language' => 'Språk',
- 'Language deleted!' => 'Språk slettet!',
- 'Language saved!' => 'Språk lagret!',
- 'Languages' => 'Språk',
- 'Last Numbers & Default Accounts' => 'Løpenumre og standardkontoer',
- 'Liability' => 'Passiv',
- 'Licensed to' => 'Utført for',
- 'Link' => 'Referanse',
- 'Menu Width' => 'Menyvidde',
- 'Method' => 'Metode',
- 'Name' => 'Navn',
- 'No' => 'Nei',
- 'No email address for' => 'Ingen emailadresse for',
- 'Number' => 'Nummer',
- 'Number Format' => 'Numerisk format',
- 'Parts Inventory' => 'Delelagerbeholdning',
- 'Password' => 'Passord',
- 'Payables' => 'Utbetalinger',
- 'Payment' => 'Betaling',
- 'Phone' => 'Tlf',
- 'Preferences saved!' => 'Innstillinger lagret!',
- 'Printer' => 'Skriver',
- 'RFQ Number' => 'Tilbudsforespørslelsnummer',
- 'Rate' => 'Rate',
- 'Receivables' => 'Innbetalinger',
- 'Reference' => 'Referanse',
- 'Remove Audit trails up to' => 'Fjern revisjonssporing inntil',
- 'Retained Earnings' => 'Realisert overskudd',
- 'Save' => 'Lagre',
- 'Save as new' => 'Lagre som ny',
- 'Service Items' => 'Tjeneste-elementer',
- 'Signature' => 'Underskrift',
- 'Standard Industrial Codes' => 'Standard industrikoder (SIC)',
- 'Stylesheet' => 'Stílark',
- 'System Defaults' => 'Systemets standardinnstillinger',
- 'Tax' => 'Avgift/mva',
- 'Tax Accounts' => 'Avgift/mva-kontoer',
- 'Template saved!' => 'Mal lagret!',
- 'Transaction reversal enforced for all dates' => 'Transaksjonsrettelser skal alltid bokføres eksplisitt',
- 'Transaction reversal enforced up to' => 'Transaksjonsrettelser skal bokføres eksplisitt inntil',
- 'Type of Business' => 'Organisasjonstype',
- 'User' => 'Bruker',
- 'Vendor Number' => 'Leverandørnummer',
- 'Version' => 'Versjon',
- 'Warehouse deleted!' => 'Lager slettet!',
- 'Warehouse saved!' => 'Lager lagret!',
- 'Warehouses' => 'Lager',
- 'Weight Unit' => 'Vektenhet',
- 'Yearend' => 'Årsavslutning',
- 'Yearend date missing!' => 'Mangler årsavslutningsdato!',
- 'Yearend posted!' => 'Årsavslutning bokført',
- 'Yearend posting failed!' => 'Bokføring av årsavslutning feilet!',
- 'Yes' => 'Ja',
- 'account cannot be set to any other type of account' => 'konto kan ikke settes til en annen kontotype',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'ny_konto' => 'add_account',
- 'ny_organisasjon' => 'add_business',
- 'ny_avdeling' => 'add_department',
- 'nytt_språk' => 'add_language',
- 'ny_sic' => 'add_sic',
- 'nytt_lager' => 'add_warehouse',
- 'fortsett' => 'continue',
- 'kopiér_til_kontoplan' => 'copy_to_coa',
- 'slett' => 'delete',
- 'endre' => 'edit',
- 'endre_konto' => 'edit_account',
- 'lagre' => 'save',
- 'lagre_som_ny' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ap b/sql-ledger/locale/nb/ap
deleted file mode 100644
index b99fa66..0000000
--- a/sql-ledger/locale/nb/ap
+++ /dev/null
@@ -1,169 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Ubetalte fakturaer',
- 'AP Transaction' => 'Kreditorpostering',
- 'AP Transactions' => 'Kreditorpostering',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Amount Due' => 'Forfalt beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på at du vil fjerne postering',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bokføre postering for en avsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Check' => 'Sjekk',
- 'Closed' => 'Avsluttet',
- 'Confirm!' => 'Bekreft!',
- 'Continue' => 'Fortsett',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfallsdato',
- 'Due Date missing!' => 'Forfallsdato mangler!',
- 'Employee' => 'Ansatt',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Behandler',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Month' => 'Måned',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åpne',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Print and Post' => 'Skriv ut og bokfør',
- 'Printed' => 'Skrevet ut',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Receipt' => 'Kvittering',
- 'Remaining' => 'Resterende',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Avgift/mva',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bokført!',
- 'Update' => 'Oppdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kreditorpostering' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'skriv_ut_og_bokfør' => 'print_and_post',
- 'oppdatér' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ar b/sql-ledger/locale/nb/ar
deleted file mode 100644
index a4dc23e..0000000
--- a/sql-ledger/locale/nb/ar
+++ /dev/null
@@ -1,170 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Utestående fordringer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Amount Due' => 'Forfalt beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på at du vil fjerne postering',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bokføre postering for en avsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Check' => 'Sjekk',
- 'Closed' => 'Avsluttet',
- 'Confirm!' => 'Bekreft!',
- 'Continue' => 'Fortsett',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfallsdato',
- 'Due Date missing!' => 'Forfallsdato mangler!',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Behandler',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Month' => 'Måned',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åpne',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Print and Post' => 'Skriv ut og bokfør',
- 'Printed' => 'Skrevet ut',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Receipt' => 'Kvittering',
- 'Remaining' => 'Resterende',
- 'Salesperson' => 'Selger',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Ship via' => 'Send via',
- 'Shipping Point' => 'Sendes fra',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Avgift/mva',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'Till' => 'Kasse',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bokført!',
- 'Update' => 'Oppdatér',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debitorpostering' => 'ar_transaction',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'skriv_ut_og_bokfør' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'oppdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/arap b/sql-ledger/locale/nb/arap
deleted file mode 100644
index 57daa30..0000000
--- a/sql-ledger/locale/nb/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adresse',
- 'Continue' => 'Fortsett',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Description' => 'Beskrivelse',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsett' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/arapprn b/sql-ledger/locale/nb/arapprn
deleted file mode 100644
index c714122..0000000
--- a/sql-ledger/locale/nb/arapprn
+++ /dev/null
@@ -1,34 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Amount' => 'Beløp',
- 'Check' => 'Sjekk',
- 'Continue' => 'Fortsett',
- 'Date' => 'Dato',
- 'Memo' => 'Notat',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Skrevet ut',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Receipt' => 'Kvittering',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Source' => 'Bilag',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'fortsett' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/bp b/sql-ledger/locale/nb/bp
deleted file mode 100644
index 7777843..0000000
--- a/sql-ledger/locale/nb/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Er du sikker på at du ønsker å fjerne de markerte oppføringene fra køen?',
- 'Bin Lists' => 'Bokslister',
- 'Cannot remove files!' => 'Kan ikke slette filer!',
- 'Checks' => 'Sjekker',
- 'Confirm!' => 'Bekreft!',
- 'Continue' => 'Fortsett',
- 'Current' => 'Nåværende',
- 'Customer' => 'Kunde',
- 'Date' => 'Dato',
- 'From' => 'Fra',
- 'Invoice' => 'Faktura',
- 'Invoice Number' => 'Fakturanummer',
- 'Marked entries printed!' => 'Markerte oppføringer er skrevet ut!',
- 'Month' => 'Måned',
- 'Order' => 'Ordre',
- 'Order Number' => 'Ordrenummer',
- 'Packing Lists' => 'Følgesedler',
- 'Period' => 'Periode',
- 'Pick Lists' => 'Plukklister',
- 'Print' => 'Skriv ut',
- 'Printing ... ' => 'Skriver ut',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Quarter' => 'Kvartal',
- 'Quotation' => 'Tilbud',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotations' => 'Tilbud',
- 'RFQs' => 'Tilbudsforespørsler',
- 'Receipts' => 'Kvitteringer',
- 'Reference' => 'Referanse',
- 'Remove' => 'Fjern',
- 'Removed spoolfiles!' => 'Fjernet køfiler!',
- 'Removing marked entries from queue ...' => 'Fjernet de markerte oppføringer fra køen...',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Orders' => 'Salgsordrer',
- 'Select all' => 'Velg alt',
- 'Spoolfile' => 'Køfil',
- 'To' => 'Til',
- 'Vendor' => 'Leverandør',
- 'Work Orders' => 'Arbeidsordrer',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'done' => 'gjort',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'fortsett' => 'continue',
- 'skriv_ut' => 'print',
- 'fjern' => 'remove',
- 'velg_alt' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ca b/sql-ledger/locale/nb/ca
deleted file mode 100644
index 96ae130..0000000
--- a/sql-ledger/locale/nb/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balanse',
- 'Chart of Accounts' => 'Kontoplan',
- 'Credit' => 'Kredit',
- 'Current' => 'Nåværende',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Inkludér i rapport',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'List Transactions' => 'Vis bokføringer',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Month' => 'Måned',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Period' => 'Periode',
- 'Project Number' => 'Prosjektnummer',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reference' => 'Referanse',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Til',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'vis_bokføringer' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/cp b/sql-ledger/locale/nb/cp
deleted file mode 100644
index 4d8e2af..0000000
--- a/sql-ledger/locale/nb/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AR' => 'Debitorer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Beløp',
- 'Amount Due' => 'Forfalt beløp',
- 'Cannot post Payment!' => 'Kan ikke bokføre betaling',
- 'Cannot post Receipt!' => 'Kan ikke bokføre kvittering',
- 'Cannot process payment for a closed period!' => 'Kan ikke behandle betaling for avsluttet periode!',
- 'Continue' => 'Fortsett',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Date missing!' => 'Dato mangler!',
- 'Department' => 'Avdeling',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Invoice' => 'Faktura',
- 'Invoices' => 'Fakturaer',
- 'Memo' => 'Notat',
- 'Nothing outstanding for ' => 'Ingenting utestående for ',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Betaling',
- 'Payment posted!' => 'Betaling bokført!',
- 'Post' => 'Bokfør',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Forskuddsbetaling',
- 'Print' => 'Skriv ut',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Queue' => 'Kø',
- 'Receipt' => 'Kvittering',
- 'Receipt posted!' => 'Kvittering bokført',
- 'Screen' => 'Skjerm',
- 'Select' => 'Velg',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Source' => 'Bilag',
- 'Update' => 'Oppdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsett' => 'continue',
- 'bokfør' => 'post',
- 'skriv_ut' => 'print',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ct b/sql-ledger/locale/nb/ct
deleted file mode 100644
index 3d6b20a..0000000
--- a/sql-ledger/locale/nb/ct
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kreditorpostering',
- 'AP Transactions' => 'Kreditorpostering',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Customer' => 'Ny kunde',
- 'Add Vendor' => 'Ny leverandør',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Beløp',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Cannot delete customer!' => 'Kan ikke slette kunde!',
- 'Cannot delete vendor!' => 'Kan ikke slette leverandør!',
- 'Cc' => 'Kopi til',
- 'City' => 'Poststed',
- 'Closed' => 'Avsluttet',
- 'Company Name' => 'Firmanavn',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Cost' => 'Kostpris',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer History' => 'Kundehistorikk',
- 'Customer Number' => 'Kundenummer',
- 'Customer deleted!' => 'Kunde slettet!',
- 'Customer saved!' => 'Kunde lagret!',
- 'Customers' => 'Kunder',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalj',
- 'Discount' => 'Rabatt',
- 'E-mail' => 'Epost',
- 'Edit Customer' => 'Endre kundeopplysninger',
- 'Edit Vendor' => 'Endre leverandør',
- 'Employee' => 'Ansatt',
- 'Enddate' => 'Sluttdato',
- 'Fax' => 'Faks',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Group' => 'Gruppe',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Invoice' => 'Faktura',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Language' => 'Språk',
- 'Leadtime' => 'forsinkelsestid',
- 'Manager' => 'Behandler',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'Notes' => 'Merknader',
- 'Number' => 'Nummer',
- 'Open' => 'Åpne',
- 'Order' => 'Ordre',
- 'Orphaned' => 'Frittstående',
- 'Part Number' => 'Delenummer',
- 'Phone' => 'Tlf',
- 'Pricegroup' => 'Prisgruppe',
- 'Project Number' => 'Prosjektnummer',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Qty' => 'Antall',
- 'Quotation' => 'Tilbud',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsforespørsel',
- 'Request for Quotations' => 'Tilbudsforespørsler',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Salesperson' => 'Selger',
- 'Save' => 'Lagre',
- 'Search' => 'Søk',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Sell Price' => 'Salgspris',
- 'Serial Number' => 'Serienummer',
- 'Shipping Address' => 'Leveringsadresse',
- 'Startdate' => 'Startdato',
- 'State/Province' => 'Delstat/område',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oppsummert',
- 'Tax' => 'Avgift/mva',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'Tax Number' => 'Org.nr.',
- 'Tax Number / SSN' => 'Org.nr.',
- 'Taxable' => 'Avgifts/mvapliktig',
- 'Terms' => 'Vilkår',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Type of Business' => 'Organisasjonstype',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Vendor History' => 'Leverandørhistorikk',
- 'Vendor Invoice' => 'Leverandørfaktura',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor deleted!' => 'Leverandør slettet!',
- 'Vendor saved!' => 'Leverandør lagret!',
- 'Vendors' => 'Leverandører',
- 'days' => 'dager',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'kreditorpostering' => 'ap_transaction',
- 'debitorpostering' => 'ar_transaction',
- 'ny_kunde' => 'add_customer',
- 'ny_leverandør' => 'add_vendor',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'pricelist' => 'pricelist',
- 'innkjøpsordre' => 'purchase_order',
- 'tilbud' => 'quotation',
- 'tilbudsforespørsel' => 'rfq',
- 'salgsfaktura' => 'sales_invoice',
- 'salgsordre' => 'sales_order',
- 'lagre' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'oppdatér' => 'update',
- 'leverandørfaktura' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/gl b/sql-ledger/locale/nb/gl
deleted file mode 100644
index cbeadee..0000000
--- a/sql-ledger/locale/nb/gl
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kreditorpostering',
- 'AR Transaction' => 'Debitorpostering',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Cash Transfer Transaction' => 'Nytt kontantsalg',
- 'Add General Ledger Transaction' => 'Ny postering i hovedbok',
- 'Address' => 'Adresse',
- 'All' => 'Alle',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på at du vil fjerne postering',
- 'Asset' => 'Aktiv',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balanse',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bokføre postering for en avsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Confirm!' => 'Bekreft!',
- 'Continue' => 'Fortsett',
- 'Contra' => 'Kontra',
- 'Credit' => 'Kredit',
- 'Current' => 'Nåværende',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Edit Cash Transfer Transaction' => 'Endre kontant overførsel',
- 'Edit General Ledger Transaction' => 'Endre en postering i hovedbok',
- 'Equity' => 'Egenkapital',
- 'Expense' => 'Utgift',
- 'FX' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Postering i hovedbok',
- 'General Ledger' => 'Hovedbok',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income' => 'Inntekt',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Liability' => 'Passiv',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Month' => 'Måned',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Out of balance transaction!' => 'Transaksjonen er i ubalanse!',
- 'Period' => 'Periode',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Project' => 'Prosjekt',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reference' => 'Referanse',
- 'Reference missing!' => 'Referanser mangler!',
- 'Reports' => 'Rapporter',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Til',
- 'Transaction Date missing!' => 'Transaksjonsdato mangler!',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bokført!',
- 'Update' => 'Oppdatér',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Warning!' => 'Advarsel',
- 'Year' => 'År',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kreditorpostering' => 'ap_transaction',
- 'debitorpostering' => 'ar_transaction',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'postering_i_hovedbok' => 'gl_transaction',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'oppdatér' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/hr b/sql-ledger/locale/nb/hr
deleted file mode 100644
index bff560b..0000000
--- a/sql-ledger/locale/nb/hr
+++ /dev/null
@@ -1,105 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'Above' => 'Over',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Deduction' => 'Nytt fradrag',
- 'Add Employee' => 'Ny ansatt',
- 'Address' => 'Adresse',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Etter fradrag',
- 'All' => 'Alle',
- 'Allowances' => 'Fradrag',
- 'Amount' => 'Beløp',
- 'Amount missing!' => 'Konto mangler!',
- 'Based on' => 'Basert på',
- 'Before Deduction' => 'Før fradrag',
- 'Below' => 'Under',
- 'City' => 'Poststed',
- 'Continue' => 'Fortsett',
- 'Country' => 'Land',
- 'Deduct after' => 'Fratrekk etter',
- 'Deduction deleted!' => 'Slettet fradrag',
- 'Deduction saved!' => 'Fradrag lagret',
- 'Deductions' => 'Fradrag',
- 'Delete' => 'Slett',
- 'Description' => 'Beskrivelse',
- 'Description missing!' => 'Mangler beskrivelse!',
- 'E-mail' => 'Epost',
- 'Edit Deduction' => 'Endre fradrag',
- 'Edit Employee' => 'Endre ansatt',
- 'Employee' => 'Ansatt',
- 'Employee Name' => 'Navn på ansatt',
- 'Employee deleted!' => 'Ansatt slettet',
- 'Employee pays' => 'Ansatt betaler',
- 'Employee saved!' => 'Ansatt lagret',
- 'Employees' => 'Ansatte',
- 'Employer' => 'Arbeidsgiver',
- 'Employer pays' => 'Arbeidsgiver betaler',
- 'Enddate' => 'Sluttdato',
- 'Expense' => 'Utgift',
- 'Home Phone' => 'Hjemmetelefon',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludér i rapport',
- 'Login' => 'Login',
- 'Manager' => 'Behandler',
- 'Maximum' => 'Maksimum',
- 'Name' => 'Navn',
- 'Name missing!' => 'Navn mangler!',
- 'Notes' => 'Merknader',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Frittstående',
- 'Payroll Deduction' => 'Fradrag i lønn',
- 'Rate' => 'Rate',
- 'Rate missing!' => 'Mangler rate!',
- 'Role' => 'Rolle',
- 'S' => 'S',
- 'Sales' => 'Salg',
- 'Save' => 'Lagre',
- 'Save as new' => 'Lagre som ny',
- 'Startdate' => 'Startdato',
- 'State/Province' => 'Delstat/område',
- 'Update' => 'Oppdatér',
- 'User' => 'Bruker',
- 'Work Phone' => 'Jobbtelefon',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'nytt_fradrag' => 'add_deduction',
- 'ny_ansatt' => 'add_employee',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'lagre' => 'save',
- 'lagre_som_ny' => 'save_as_new',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ic b/sql-ledger/locale/nb/ic
deleted file mode 100644
index 1788c8a..0000000
--- a/sql-ledger/locale/nb/ic
+++ /dev/null
@@ -1,268 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Konto-meny',
- 'Accrual' => 'Kostnad',
- 'Active' => 'Aktiv',
- 'Add' => 'Ny',
- 'Add Assembly' => 'Ny sammensetning',
- 'Add Labor/Overhead' => 'Nytt arbeide/overhead',
- 'Add Part' => 'Ny vare',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Service' => 'Ny tjeneste',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Assemblies' => 'Sammensetninger',
- 'Assemblies restocked!' => 'Sammensetninger omplassert!',
- 'Assembly' => 'Sammensetning',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'BOM' => 'BOM',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'COGS' => 'Innkjøp',
- 'Cannot delete item!' => 'Kan ikke slette enkeltdel!',
- 'Cannot stock assemblies!' => 'Kan ikke plasere sammensetninger!',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopi til',
- 'Check Inventory' => 'Sjekk varebeholdning',
- 'City' => 'Poststed',
- 'Closed' => 'Avsluttet',
- 'Company Name' => 'Firmanavn',
- 'Components' => 'Komponenter',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Cost' => 'Kostpris',
- 'Country' => 'Land',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'Drawing' => 'Tegning',
- 'E-mail' => 'Epost',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit Assembly' => 'Endre sammensetning',
- 'Edit Labor/Overhead' => 'Endre arbeide/overhead',
- 'Edit Part' => 'Endre vare',
- 'Edit Service' => 'Endre tjeneste',
- 'Employee' => 'Ansatt',
- 'Expense' => 'Utgift',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'Image' => 'Bilde',
- 'In-line' => 'Inne i',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income' => 'Inntekt',
- 'Individual Items' => 'Individuelle elementer',
- 'Inventory' => 'Varebeholdning',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Varebeholdning må være null for at du kan sette denne sammensetningen som foreldet!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Varebeholdning må være null for at du kan sette denne enhet som foreldet!',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item deleted!' => 'Elementet slettet!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Items' => 'Elementer',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Labor/Overhead' => 'Arbeide/overhead',
- 'Leadtime' => 'forsinkelsestid',
- 'Line Total' => 'Antall linjer',
- 'Link Accounts' => 'Kople kontoer',
- 'List Price' => 'Listepris',
- 'Make' => 'Fabrikat',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'Markup' => 'Markup',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Message' => 'Melding',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Modell',
- 'Name' => 'Navn',
- 'No.' => 'Nr.',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'Obsolete' => 'Foreldet',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'On Hand' => 'På lager',
- 'Open' => 'Åpne',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'Orphaned' => 'Frittstående',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Part' => 'Del',
- 'Parts' => 'Deler',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Pricegroup' => 'Prisgruppe',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Qty' => 'Antall',
- 'Quantity exceeds available units to stock!' => 'Antallet overstiger tilgjengelig varebeholdning',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsforespørsel',
- 'ROP' => 'Etterbestill ved',
- 'Recd' => 'Mottatt',
- 'Required by' => 'Leveringsdato',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Save' => 'Lagre',
- 'Save as new' => 'Lagre som ny',
- 'Screen' => 'Skjerm',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Sell Price' => 'Salgspris',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Services' => 'Tjenester',
- 'Ship' => 'Send',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Leveringsadresse',
- 'Short' => 'Kort',
- 'State/Province' => 'Delstat/område',
- 'Stock' => 'Lager',
- 'Stock Assembly' => 'Lagersammensetning',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Avgift/mva',
- 'To' => 'Til',
- 'Top Level' => 'Toppnivå',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Unit' => 'Enhet',
- 'Unit of measure' => 'Måleenhet',
- 'Update' => 'Oppdatér',
- 'Updated' => 'Oppdateret',
- 'Vendor' => 'Leverandør',
- 'Vendor Invoice' => 'Leverandørfaktura',
- 'Vendor Invoices' => 'Leverandørfakturaer',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Warehouse' => 'Lager',
- 'Weight' => 'Vekt',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'days' => 'dager',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'ny_sammensetning' => 'add_assembly',
- 'nytt_arbeide/overhead' => 'add_labor/overhead',
- 'ny_vare' => 'add_part',
- 'ny_tjeneste' => 'add_service',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'endre_sammensetning' => 'edit_assembly',
- 'endre_vare' => 'edit_part',
- 'endre_tjeneste' => 'edit_service',
- 'lagre' => 'save',
- 'lagre_som_ny' => 'save_as_new',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/io b/sql-ledger/locale/nb/io
deleted file mode 100644
index 1a68d22..0000000
--- a/sql-ledger/locale/nb/io
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Cc' => 'Kopi til',
- 'City' => 'Poststed',
- 'Company Name' => 'Firmanavn',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Customer Number' => 'Kundenummer',
- 'Date' => 'Dato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delivery Date' => 'Leveringsdato',
- 'Description' => 'Beskrivelse',
- 'E-mail' => 'Epost',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'In-line' => 'Inne i',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Message' => 'Melding',
- 'No.' => 'Nr.',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Part' => 'Del',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Qty' => 'Antall',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Recd' => 'Mottatt',
- 'Required by' => 'Leveringsdato',
- 'Sales Order' => 'Salgsordre',
- 'Screen' => 'Skjerm',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Send',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Leveringsadresse',
- 'State/Province' => 'Delstat/område',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Til',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Unit' => 'Enhet',
- 'Vendor Number' => 'Leverandørnummer',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'fortsett' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ir b/sql-ledger/locale/nb/ir
deleted file mode 100644
index c09fb20..0000000
--- a/sql-ledger/locale/nb/ir
+++ /dev/null
@@ -1,213 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Vendor Invoice' => 'Ny leverandørfaktura',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på at du vil fjerne fakturanummer',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bokføre faktura for en avsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bokføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cc' => 'Kopi til',
- 'City' => 'Poststed',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekreft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrense',
- 'Currency' => 'Valuta',
- 'Customer Number' => 'Kundenummer',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfallsdato',
- 'E-mail' => 'Epost',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit Vendor Invoice' => 'Endre leverandørfaktura',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'In-line' => 'Inne i',
- 'Internal Notes' => 'Interne notater',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Språk',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Message' => 'Melding',
- 'No.' => 'Nr.',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Part' => 'Del',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Qty' => 'Antall',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Recd' => 'Mottatt',
- 'Record in' => 'Bokfør på',
- 'Remaining' => 'Resterende',
- 'Required by' => 'Leveringsdato',
- 'Sales Order' => 'Salgsordre',
- 'Screen' => 'Skjerm',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Send',
- 'Ship to' => 'Send til',
- 'Shipping Address' => 'Leveringsadresse',
- 'Source' => 'Bilag',
- 'State/Province' => 'Delstat/område',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'Yes' => 'Ja',
- 'ea' => 'stk',
- 'posted!' => 'bokført!',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'innkjøpsordre' => 'purchase_order',
- 'oppdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/is b/sql-ledger/locale/nb/is
deleted file mode 100644
index dc39b7a..0000000
--- a/sql-ledger/locale/nb/is
+++ /dev/null
@@ -1,228 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på at du vil fjerne fakturanummer',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Business' => 'Organisasjon',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bokføre faktura for en avsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bokføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cc' => 'Kopi til',
- 'City' => 'Poststed',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekreft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrense',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Due Date' => 'Forfallsdato',
- 'E-mail' => 'Epost',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit Sales Invoice' => 'Endre salgsfaktura',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'In-line' => 'Inne i',
- 'Internal Notes' => 'Interne notater',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bokført!',
- 'Invoice processed!' => 'Faktura behandlet!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Message' => 'Melding',
- 'No.' => 'Nr.',
- 'Notes' => 'Merknader',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Part' => 'Del',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Print and Post' => 'Skriv ut og bokfør',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Qty' => 'Antall',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Recd' => 'Mottatt',
- 'Record in' => 'Bokfør på',
- 'Remaining' => 'Resterende',
- 'Required by' => 'Leveringsdato',
- 'Sales Order' => 'Salgsordre',
- 'Salesperson' => 'Selger',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Send',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Leveringsadresse',
- 'Shipping Point' => 'Sendes fra',
- 'Source' => 'Bilag',
- 'State/Province' => 'Delstat/område',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabatt',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'Yes' => 'Ja',
- 'ea' => 'stk',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'epost' => 'e_mail',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'skriv_ut_og_bokfør' => 'print_and_post',
- 'salgsordre' => 'sales_order',
- 'send_til' => 'ship_to',
- 'oppdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/login b/sql-ledger/locale/nb/login
deleted file mode 100644
index c25d111..0000000
--- a/sql-ledger/locale/nb/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Fortsett',
- 'Dataset is newer than version!' => 'Datasettet er nyere enn versjonen!',
- 'Incorrect Dataset version!' => 'Gal versjon av datasett!',
- 'Incorrect Password!' => 'Galt passord!',
- 'Login' => 'Login',
- 'Name' => 'Navn',
- 'Password' => 'Passord',
- 'Upgrading to Version' => 'Oppgrader til version',
- 'Version' => 'Versjon',
- 'You did not enter a name!' => 'Du gav ikke et navn!',
- 'done' => 'gjort',
- 'is not a member!' => 'er ikke et medlem!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/menu b/sql-ledger/locale/nb/menu
deleted file mode 100644
index 4276df6..0000000
--- a/sql-ledger/locale/nb/menu
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kreditorer',
- 'AP Aging' => 'Aldersfordeling',
- 'AP Transaction' => 'Kreditorpostering',
- 'AR' => 'Debitorer',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Transaction' => 'Debitorpostering',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Account' => 'Ny konto',
- 'Add Assembly' => 'Ny sammensetning',
- 'Add Business' => 'Ny organisasjon',
- 'Add Customer' => 'Ny kunde',
- 'Add Department' => 'Ny avdeling',
- 'Add Employee' => 'Ny ansatt',
- 'Add GIFI' => 'Ny GIFI',
- 'Add Group' => 'Ny gruppe',
- 'Add Labor/Overhead' => 'Nytt arbeide/overhead',
- 'Add Language' => 'Nytt språk',
- 'Add Part' => 'Ny vare',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nytt prosjekt',
- 'Add SIC' => 'Ny SIC',
- 'Add Service' => 'Ny tjeneste',
- 'Add Transaction' => 'Ny postering',
- 'Add Vendor' => 'Ny leverandør',
- 'Add Warehouse' => 'Nytt lager',
- 'All Items' => 'Alle elementer',
- 'Assemblies' => 'Sammensetninger',
- 'Audit Control' => 'Revisjonskontroll',
- 'Backup' => 'Sikkerhetskopi',
- 'Balance Sheet' => 'Balanse',
- 'Batch Printing' => 'Samlet utskrift',
- 'Bin List' => 'Boksliste',
- 'Bin Lists' => 'Bokslister',
- 'Cash' => 'Kontant',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Sjekk',
- 'Checks' => 'Sjekker',
- 'Components' => 'Komponenter',
- 'Customers' => 'Kunder',
- 'Defaults' => 'Standardinnstillinger',
- 'Departments' => 'Avdelinger',
- 'Description' => 'Beskrivelse',
- 'Employees' => 'Ansatte',
- 'General Ledger' => 'Hovedbok',
- 'Goods & Services' => 'Varer og tjenester',
- 'Groups' => 'Grupper',
- 'HR' => 'Personal',
- 'HTML Templates' => 'HTML-maler',
- 'History' => 'Historikk',
- 'Income Statement' => 'Driftsregnskap',
- 'Invoice' => 'Faktura',
- 'LaTeX Templates' => 'LaTeX-maler',
- 'Labor/Overhead' => 'Arbeide/overhead',
- 'Language' => 'Språk',
- 'List Accounts' => 'List kontoer',
- 'List Businesses' => 'Vis organisasjoner',
- 'List Departments' => 'Vis avdelinger',
- 'List GIFI' => 'List GIFI',
- 'List Languages' => 'Vis språk',
- 'List Projects' => 'Vis prosjekter',
- 'List SIC' => 'List SIC',
- 'List Warehouses' => 'Vis lager',
- 'Logout' => 'Logg ut',
- 'Non-taxable' => 'Avgiftsfrie',
- 'Open' => 'Åpne',
- 'Order Entry' => 'Ordreinngang',
- 'Outstanding' => 'Utestående',
- 'POS' => 'Kontantsalg',
- 'POS Invoice' => 'Kontantsalg faktura',
- 'Packing List' => 'Følgeseddel',
- 'Packing Lists' => 'Følgesedler',
- 'Parts' => 'Deler',
- 'Payment' => 'Betaling',
- 'Payments' => 'Betalinger',
- 'Pick List' => 'Plukkliste',
- 'Pick Lists' => 'Plukklister',
- 'Preferences' => 'Innstillinger',
- 'Pricegroups' => 'Prisgrupper',
- 'Print' => 'Skriv ut',
- 'Projects' => 'Prosjekter',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Quotation' => 'Tilbud',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsforespørsel',
- 'RFQs' => 'Tilbudsforespørsler',
- 'Receipt' => 'Kvittering',
- 'Receipts' => 'Kvitteringer',
- 'Receive' => 'Motta',
- 'Reconciliation' => 'Bankoppgjør',
- 'Reports' => 'Rapporter',
- 'Sale' => 'Salg',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Invoices' => 'Salgsfakturaer',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Save to File' => 'Lagre i fil',
- 'Search' => 'Søk',
- 'Send by E-Mail' => 'Send per email',
- 'Services' => 'Tjenester',
- 'Ship' => 'Send',
- 'Shipping' => 'Frakt',
- 'Statement' => 'Oppgjør',
- 'Stock Assembly' => 'Lagersammensetning',
- 'Stylesheet' => 'Stílark',
- 'System' => 'System',
- 'Tax collected' => 'Inngående avgift',
- 'Tax paid' => 'Betalt avgift',
- 'Text Templates' => 'Tekstmaler',
- 'Transactions' => 'Posteringer',
- 'Transfer' => 'Overfør',
- 'Translations' => 'Oversettelser',
- 'Trial Balance' => 'Foreløpig balanse',
- 'Type of Business' => 'Organisasjonstype',
- 'Vendor Invoice' => 'Leverandørfaktura',
- 'Vendors' => 'Leverandører',
- 'Version' => 'Versjon',
- 'Warehouses' => 'Lager',
- 'Work Order' => 'Arbeidsordre',
- 'Work Orders' => 'Arbeidsordrer',
- 'Yearend' => 'Årsavslutning',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/oe b/sql-ledger/locale/nb/oe
deleted file mode 100644
index ec383ca..0000000
--- a/sql-ledger/locale/nb/oe
+++ /dev/null
@@ -1,303 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-meny',
- 'Add Exchange Rate' => 'Ny vekslingskurs',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Add Vendor Invoice' => 'Ny leverandørfaktura',
- 'Address' => 'Adresse',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Order Number' => 'Er du sikker på at du vil fjerne ordrenummer',
- 'Are you sure you want to delete Quotation Number' => 'Er du sikker på at du vil fjerne tilbudsnummer',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Business' => 'Organisasjon',
- 'C' => 'C',
- 'Cannot delete order!' => 'Kan ikke slette ordre!',
- 'Cannot delete quotation!' => 'Kan ikke slette tilbud!',
- 'Cannot save order!' => 'Kan ikke lagre ordre!',
- 'Cannot save quotation!' => 'Kan ikke lagre tilbud!',
- 'Cc' => 'Kopi til',
- 'City' => 'Poststed',
- 'Closed' => 'Avsluttet',
- 'Company Name' => 'Firmanavn',
- 'Confirm!' => 'Bekreft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Could not save!' => 'Kunne ikke lagre',
- 'Could not transfer Inventory!' => 'Kunne ikke overføre varebeholdning!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Date Received' => 'Mottaksdato',
- 'Date received missing!' => 'Mangler mottaksdato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Done' => 'Ferdig',
- 'E-mail' => 'Epost',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit Purchase Order' => 'Endre innkjøpsordre',
- 'Edit Quotation' => 'Endre tilbud',
- 'Edit Request for Quotation' => 'Endre ønske om tilbud',
- 'Edit Sales Order' => 'Endre salgsordre',
- 'Employee' => 'Ansatt',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'ID' => 'ID',
- 'In-line' => 'Inne i',
- 'Include in Report' => 'Inkludér i rapport',
- 'Internal Notes' => 'Interne notater',
- 'Inventory saved!' => 'Varebeholdning lagret',
- 'Inventory transferred!' => 'Varebeholdning overført',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Manager' => 'Behandler',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Message' => 'Melding',
- 'Month' => 'Måned',
- 'No.' => 'Nr.',
- 'Notes' => 'Merknader',
- 'Nothing entered!' => 'Ingenting lagt inn!',
- 'Nothing to transfer!' => 'Ingenting å overføre!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'O' => 'O',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åpne',
- 'Order' => 'Ordre',
- 'Order Date' => 'Ordredato',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'Order deleted!' => 'Ordre slettet!',
- 'Order processed!' => 'Ordre behandlet!',
- 'Order saved!' => 'Ordre lagret!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Part' => 'Del',
- 'Part Number' => 'Delenummer',
- 'Period' => 'Periode',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Print and Save' => 'Skriv ut og lagre',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Purchase Orders' => 'Innkjøpsordrer',
- 'Qty' => 'Antall',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date' => 'Tilbudsdato',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number' => 'Tilbudsnummer',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Quotation deleted!' => 'Tilbud slettet!',
- 'Quotations' => 'Tilbud',
- 'RFQ' => 'Tilbudsforespørsel',
- 'RFQ Number' => 'Tilbudsforespørslelsnummer',
- 'Recd' => 'Mottatt',
- 'Receive Merchandise' => 'Motta varer',
- 'Remaining' => 'Resterende',
- 'Request for Quotation' => 'Tilbudsforespørsel',
- 'Request for Quotations' => 'Tilbudsforespørsler',
- 'Required by' => 'Leveringsdato',
- 'Sales Invoice' => 'Salgsfaktura',
- 'Sales Order' => 'Salgsordre',
- 'Sales Orders' => 'Salgsordrer',
- 'Salesperson' => 'Selger',
- 'Save' => 'Lagre',
- 'Save as new' => 'Lagre som ny',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Send',
- 'Ship Merchandise' => 'Send varer',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Leveringsadresse',
- 'Shipping Date' => 'Leveringsdato',
- 'Shipping Date missing!' => 'Mangler leveringsdato',
- 'Shipping Point' => 'Sendes fra',
- 'State/Province' => 'Delstat/område',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Avgift/mva',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'Terms' => 'Vilkår',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabatt',
- 'Transfer' => 'Overfør',
- 'Transfer Inventory' => 'Overfør varebeholdning',
- 'Transfer to' => 'Overfør til',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Valid until' => 'Gyldig til',
- 'Vendor' => 'Leverandør',
- 'Vendor Invoice' => 'Leverandørfaktura',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor missing!' => 'Leverandør mangler!',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Warehouse' => 'Lager',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'days' => 'dager',
- 'ea' => 'stk',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'ferdig' => 'done',
- 'epost' => 'e_mail',
- 'skriv_ut' => 'print',
- 'skriv_ut_og_lagre' => 'print_and_save',
- 'innkjøpsordre' => 'purchase_order',
- 'tilbud' => 'quotation',
- 'quotation_' => 'quotation_',
- 'tilbudsforespørsel' => 'rfq',
- 'rfq_' => 'rfq_',
- 'salgsfaktura' => 'sales_invoice',
- 'salgsordre' => 'sales_order',
- 'lagre' => 'save',
- 'lagre_som_ny' => 'save_as_new',
- 'send_til' => 'ship_to',
- 'overfør' => 'transfer',
- 'oppdatér' => 'update',
- 'leverandørfaktura' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/pe b/sql-ledger/locale/nb/pe
deleted file mode 100644
index 0d54c44..0000000
--- a/sql-ledger/locale/nb/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-meny',
- 'Add Group' => 'Ny gruppe',
- 'Add Pricegroup' => 'Ny prisgruppe',
- 'Add Project' => 'Nytt prosjekt',
- 'All' => 'Alle',
- 'Continue' => 'Fortsett',
- 'Delete' => 'Slett',
- 'Description' => 'Beskrivelse',
- 'Description Translations' => 'Beskrivelsesoversettelser',
- 'Edit Description Translations' => 'Endre beskrivelsesoversettelser',
- 'Edit Group' => 'Endre gruppe',
- 'Edit Pricegroup' => 'Endre prisgruppe',
- 'Edit Project' => 'Endre prosjekt',
- 'Group' => 'Gruppe',
- 'Group Translations' => 'Grupper oversettelser',
- 'Group deleted!' => 'Slettet gruppe!',
- 'Group missing!' => 'Mangler gruppe!',
- 'Group saved!' => 'Lagret gruppe!',
- 'Groups' => 'Grupper',
- 'Language' => 'Språk',
- 'Languages not defined!' => 'Språkene er ikke definert!',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Frittstående',
- 'Pricegroup' => 'Prisgruppe',
- 'Pricegroup deleted!' => 'Prisgruppe slettet!',
- 'Pricegroup missing!' => 'Prisgruppe mangler!',
- 'Pricegroup saved!' => 'Prisgruppe langret',
- 'Pricegroups' => 'Prisgrupper',
- 'Project' => 'Prosjekt',
- 'Project Description Translations' => 'Oversettelser av prosjektbeskrivelser',
- 'Project Number' => 'Prosjektnummer',
- 'Project Number missing!' => 'Prosjektnummer mangler!',
- 'Project deleted!' => 'Prosjekt slettet!',
- 'Project saved!' => 'Prosjekt lagret!',
- 'Projects' => 'Prosjekter',
- 'Save' => 'Lagre',
- 'Translation' => 'Oversettelse',
- 'Translation deleted!' => 'Oversettelse slettet',
- 'Translations saved!' => 'Oversettelser lagret!',
- 'Update' => 'Oppdatér',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'ny_gruppe' => 'add_group',
- 'ny_prisgruppe' => 'add_pricegroup',
- 'nytt_prosjekt' => 'add_project',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'lagre' => 'save',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/pos b/sql-ledger/locale/nb/pos
deleted file mode 100644
index 6a51cd4..0000000
--- a/sql-ledger/locale/nb/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Add POS Invoice' => 'Ny kontantfaktura',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Change' => 'Endre',
- 'Continue' => 'Fortsett',
- 'Credit Limit' => 'Kreditgrense',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Customer' => 'Kunde',
- 'Customer missing!' => 'Kunde mangler!',
- 'Delete' => 'Slett',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Edit POS Invoice' => 'Endre kontantfaktura',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Extended' => 'Sum',
- 'From' => 'Fra',
- 'Language' => 'Språk',
- 'Memo' => 'Notat',
- 'Month' => 'Måned',
- 'Number' => 'Nummer',
- 'Open' => 'Åpne',
- 'Paid' => 'Betalt',
- 'Period' => 'Periode',
- 'Post' => 'Bokfør',
- 'Posted!' => 'Bokført!',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Printed' => 'Skrevet ut',
- 'Qty' => 'Antall',
- 'Quarter' => 'Kvartal',
- 'Receipts' => 'Kvitteringer',
- 'Record in' => 'Bokfør på',
- 'Remaining' => 'Resterende',
- 'Salesperson' => 'Selger',
- 'Screen' => 'Skjerm',
- 'Source' => 'Bilag',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'bokfør' => 'post',
- 'skriv_ut' => 'print',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/ps b/sql-ledger/locale/nb/ps
deleted file mode 100644
index 8978c4b..0000000
--- a/sql-ledger/locale/nb/ps
+++ /dev/null
@@ -1,334 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldersfordeling',
- 'AR Aging' => 'Aldersfordeling',
- 'AR Outstanding' => 'Utestående fordringer',
- 'AR Transaction' => 'Debitorpostering',
- 'AR Transactions' => 'Debitorposteringer',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Kontoer',
- 'Accrual' => 'Kostnad',
- 'Add POS Invoice' => 'Ny kontantfaktura',
- 'Add Purchase Order' => 'Ny innkjøpsordre',
- 'Add Quotation' => 'Nytt tilbud',
- 'Add Request for Quotation' => 'Ny tilbudsforespørsel',
- 'Add Sales Invoice' => 'Ny salgsfaktura',
- 'Add Sales Order' => 'Ny salgsordre',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle kontoer',
- 'Amount' => 'Beløp',
- 'Amount Due' => 'Forfalt beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Er du sikker på at du vil fjerne fakturanummer',
- 'Are you sure you want to delete Transaction' => 'Er du sikker på at du vil fjerne postering',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balanse',
- 'Balance Sheet' => 'Balanse',
- 'Bcc' => 'Blind kopi',
- 'Billing Address' => 'Fakturaadresse',
- 'Bin' => 'Boks',
- 'Bin List' => 'Boksliste',
- 'Business' => 'Organisasjon',
- 'Cannot delete invoice!' => 'Kan ikke slette faktura!',
- 'Cannot delete transaction!' => 'Kan ikke slette postering!',
- 'Cannot post invoice for a closed period!' => 'Kan ikke bokføre faktura for en avsluttet periode!',
- 'Cannot post invoice!' => 'Kan ikke bokføre faktura!',
- 'Cannot post payment for a closed period!' => 'Kan ikke bokføre betaling for en avsluttet periode!',
- 'Cannot post transaction for a closed period!' => 'Kan ikke bokføre postering for en avsluttet periode!',
- 'Cannot post transaction!' => 'Kan ikke bokføre postering!',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopi til',
- 'Change' => 'Endre',
- 'Check' => 'Sjekk',
- 'City' => 'Poststed',
- 'Closed' => 'Avsluttet',
- 'Company Name' => 'Firmanavn',
- 'Compare to' => 'Sammenlign med',
- 'Confirm!' => 'Bekreft!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Country' => 'Land',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgrense',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nåværende',
- 'Current Earnings' => 'Aktuelle inntekter',
- 'Customer' => 'Kunde',
- 'Customer Number' => 'Kundenummer',
- 'Customer missing!' => 'Kunde mangler!',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Date Paid' => 'Betalingsdato',
- 'Debit' => 'Debet',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Desimalplasser',
- 'Delete' => 'Slett',
- 'Delivery Date' => 'Leveringsdato',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalj',
- 'Due Date' => 'Forfallsdato',
- 'Due Date missing!' => 'Forfallsdato mangler!',
- 'E-mail' => 'Epost',
- 'E-mail Statement to' => 'Send oppgjør til',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'E-mailed' => 'Epost sendt',
- 'Edit POS Invoice' => 'Endre kontantfaktura',
- 'Edit Sales Invoice' => 'Endre salgsfaktura',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Vekslingskurs',
- 'Exchange rate for payment missing!' => 'Vekslingskurs for betaling mangler!',
- 'Exchange rate missing!' => 'Vekslingskurs mangler!',
- 'Extended' => 'Sum',
- 'Fax' => 'Faks',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Group' => 'Gruppe',
- 'Group Items' => 'Grupper elementer',
- 'Heading' => 'Overskrift',
- 'ID' => 'ID',
- 'In-line' => 'Inne i',
- 'Include Exchange Rate Difference' => 'Inkluder forskjell i vekslingsrate',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income Statement' => 'Driftsregnskap',
- 'Internal Notes' => 'Interne notater',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadato',
- 'Invoice Date missing!' => 'Fakturadato mangler!',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer mangler!',
- 'Invoice deleted!' => 'Faktura slettet!',
- 'Invoice posted!' => 'Faktura bokført!',
- 'Invoice processed!' => 'Faktura behandlet!',
- 'Item not on file!' => 'Elementet mangler i databasen!',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Språk',
- 'Manager' => 'Behandler',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Message' => 'Melding',
- 'Method' => 'Metode',
- 'Month' => 'Måned',
- 'N/A' => 'I/T',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Avgiftsfrie kjøp',
- 'Non-taxable Sales' => 'Avgiftsfrie salg',
- 'Notes' => 'Merknader',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Tall mangler i rad',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Open' => 'Åpne',
- 'Order' => 'Ordre',
- 'Order Date missing!' => 'Ordredato mangler!',
- 'Order Number' => 'Ordrenummer',
- 'Order Number missing!' => 'Ordrenummer mangler!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Følgeseddel',
- 'Packing List Date missing!' => 'Dato for følgeseddel mangler!',
- 'Packing List Number missing!' => 'Nummer for følgeseddel mangler!',
- 'Paid' => 'Betalt',
- 'Part' => 'Del',
- 'Payment date missing!' => 'Betalingsdato mangler!',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Phone' => 'Tlf',
- 'Pick List' => 'Plukkliste',
- 'Post' => 'Bokfør',
- 'Post as new' => 'Bokfør som ny',
- 'Posted!' => 'Bokført!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Print and Post' => 'Skriv ut og bokfør',
- 'Printed' => 'Skrevet ut',
- 'Project' => 'Prosjekt',
- 'Project Number' => 'Prosjektnummer',
- 'Project Transactions' => 'Prosjektposteringer',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Purchase Order' => 'Innkjøpsordre',
- 'Qty' => 'Antall',
- 'Quarter' => 'Kvartal',
- 'Queue' => 'Kø',
- 'Queued' => 'Lagt i kø',
- 'Quotation' => 'Tilbud',
- 'Quotation Date missing!' => 'Mangler tilbudsdato',
- 'Quotation Number missing!' => 'Mangler tilbudsnummer',
- 'Recd' => 'Mottatt',
- 'Receipt' => 'Kvittering',
- 'Receipts' => 'Kvitteringer',
- 'Record in' => 'Bokfør på',
- 'Remaining' => 'Resterende',
- 'Report for' => 'Rapport for',
- 'Required by' => 'Leveringsdato',
- 'Sales Order' => 'Salgsordre',
- 'Salesperson' => 'Selger',
- 'Screen' => 'Skjerm',
- 'Select Printer or Queue!' => 'Velg skriver eller kø!',
- 'Select all' => 'Velg alt',
- 'Select from one of the items below' => 'Velg en fra listen under, og trykk "Fortsett"',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Serial No.' => 'Serienummer',
- 'Service' => 'Tjeneste',
- 'Ship' => 'Send',
- 'Ship to' => 'Send til',
- 'Ship via' => 'Send via',
- 'Shipping Address' => 'Leveringsadresse',
- 'Shipping Point' => 'Sendes fra',
- 'Source' => 'Bilag',
- 'Standard' => 'Standard',
- 'State/Province' => 'Delstat/område',
- 'Statement' => 'Oppgjør',
- 'Statement sent to' => 'Oppgjør sendt til',
- 'Statements sent to printer!' => 'Oppgjør sendt til skriver!',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oppsummert',
- 'Tax' => 'Avgift/mva',
- 'Tax Included' => 'Inkl. avgifter og mva',
- 'Tax collected' => 'Inngående avgift',
- 'Tax paid' => 'Betalt avgift',
- 'Till' => 'Kasse',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Trade Discount' => 'Handelsrabatt',
- 'Transaction deleted!' => 'Postering slettet!',
- 'Transaction posted!' => 'Postering bokført!',
- 'Translation not on file!' => 'Oversettelsen mangler i databasen!',
- 'Trial Balance' => 'Foreløpig balanse',
- 'Unit' => 'Enhet',
- 'Update' => 'Oppdatér',
- 'Vendor' => 'Leverandør',
- 'Vendor Number' => 'Leverandørnummer',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'What type of item is this?' => 'Hvilken type ting er dette?',
- 'Work Order' => 'Arbeidsordre',
- 'Year' => 'År',
- 'Yes' => 'Ja',
- 'as at' => 'som ved',
- 'ea' => 'stk',
- 'for Period' => 'for periode',
- 'sent' => 'sent',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debitorpostering' => 'ar_transaction',
- 'fortsett' => 'continue',
- 'slett' => 'delete',
- 'epost' => 'e_mail',
- 'bokfør' => 'post',
- 'bokfør_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'skriv_ut_og_bokfør' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'salgsordre' => 'sales_order',
- 'velg_alt' => 'select_all',
- 'send_til' => 'ship_to',
- 'oppdatér' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/pw b/sql-ledger/locale/nb/pw
deleted file mode 100644
index 383a680..0000000
--- a/sql-ledger/locale/nb/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Fortsett',
- 'Password' => 'Passord',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'fortsett' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/rc b/sql-ledger/locale/nb/rc
deleted file mode 100644
index b01cbb1..0000000
--- a/sql-ledger/locale/nb/rc
+++ /dev/null
@@ -1,78 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balanse',
- 'Beginning Balance' => 'Startbalanse',
- 'Continue' => 'Fortsett',
- 'Current' => 'Nåværende',
- 'Date' => 'Dato',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decrease' => 'Reduksjon',
- 'Deposit' => 'Depositum',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalj',
- 'Difference' => 'Forskjell',
- 'Done' => 'Ferdig',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'Include Exchange Rate Difference' => 'Inkluder forskjell i vekslingsrate',
- 'Increase' => 'Økning',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Month' => 'Måned',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Out of balance!' => 'Ute av balanse!',
- 'Outstanding' => 'Utestående',
- 'Payment' => 'Betaling',
- 'Period' => 'Periode',
- 'Quarter' => 'Kvartal',
- 'R' => 'R',
- 'Reconciliation' => 'Bankoppgjør',
- 'Reconciliation Report' => 'Bankoppgjørsrapport',
- 'Select all' => 'Velg alt',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Statement Balance' => 'Balanseoppgjør',
- 'Summary' => 'Oppsummert',
- 'To' => 'Til',
- 'Update' => 'Oppdatér',
- 'Year' => 'År',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'fortsett' => 'continue',
- 'ferdig' => 'done',
- 'velg_alt' => 'select_all',
- 'oppdatér' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nb/rp b/sql-ledger/locale/nb/rp
deleted file mode 100644
index 5208ac4..0000000
--- a/sql-ledger/locale/nb/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Aldersfordeling',
- 'AR Aging' => 'Aldersfordeling',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Kontoer',
- 'Accrual' => 'Kostnad',
- 'Address' => 'Adresse',
- 'All Accounts' => 'Alle kontoer',
- 'Amount' => 'Beløp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Vedlegg',
- 'Aug' => 'aug',
- 'August' => 'august',
- 'Balance' => 'Balanse',
- 'Balance Sheet' => 'Balanse',
- 'Bcc' => 'Blind kopi',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopi til',
- 'Compare to' => 'Sammenlign med',
- 'Continue' => 'Fortsett',
- 'Copies' => 'Kopier',
- 'Credit' => 'Kredit',
- 'Curr' => 'Val',
- 'Current' => 'Nåværende',
- 'Current Earnings' => 'Aktuelle inntekter',
- 'Customer' => 'Kunde',
- 'Customer not on file!' => 'Kunde mangler i databasen!',
- 'Date' => 'Dato',
- 'Debit' => 'Debet',
- 'Dec' => 'des',
- 'December' => 'desember',
- 'Decimalplaces' => 'Desimalplasser',
- 'Department' => 'Avdeling',
- 'Description' => 'Beskrivelse',
- 'Detail' => 'Detalj',
- 'Due Date' => 'Forfallsdato',
- 'E-mail' => 'Epost',
- 'E-mail Statement to' => 'Send oppgjør til',
- 'E-mail address missing!' => 'Epost-adresse mangler!',
- 'Feb' => 'feb',
- 'February' => 'februar',
- 'From' => 'Fra',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Overskrift',
- 'ID' => 'ID',
- 'In-line' => 'Inne i',
- 'Include Exchange Rate Difference' => 'Inkluder forskjell i vekslingsrate',
- 'Include in Report' => 'Inkludér i rapport',
- 'Income Statement' => 'Driftsregnskap',
- 'Invoice' => 'Faktura',
- 'Jan' => 'jan',
- 'January' => 'januar',
- 'Jul' => 'jul',
- 'July' => 'juli',
- 'Jun' => 'jun',
- 'June' => 'juni',
- 'Language' => 'Språk',
- 'Mar' => 'mar',
- 'March' => 'mars',
- 'May' => 'mai',
- 'May ' => 'mai ',
- 'Memo' => 'Notat',
- 'Message' => 'Melding',
- 'Method' => 'Metode',
- 'Month' => 'Måned',
- 'N/A' => 'I/T',
- 'Non-taxable Purchases' => 'Avgiftsfrie kjøp',
- 'Non-taxable Sales' => 'Avgiftsfrie salg',
- 'Nothing selected!' => 'Ingenting valgt!',
- 'Nov' => 'nov',
- 'November' => 'november',
- 'Number' => 'Nummer',
- 'Oct' => 'okt',
- 'October' => 'oktober',
- 'Order' => 'Ordre',
- 'PDF' => 'PDF',
- 'Payments' => 'Betalinger',
- 'Period' => 'Periode',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Project' => 'Prosjekt',
- 'Project Number' => 'Prosjektnummer',
- 'Project Transactions' => 'Prosjektposteringer',
- 'Project not on file!' => 'Prosjektet mangler i databasen!',
- 'Quarter' => 'Kvartal',
- 'Receipts' => 'Kvitteringer',
- 'Report for' => 'Rapport for',
- 'Salesperson' => 'Selger',
- 'Screen' => 'Skjerm',
- 'Select all' => 'Velg alt',
- 'Select from one of the names below' => 'Velg ett av navnene under',
- 'Select from one of the projects below' => 'Velg ett av prosjektene under',
- 'Select postscript or PDF!' => 'Velg postscript eller PDF!',
- 'Sep' => 'sep',
- 'September' => 'september',
- 'Source' => 'Bilag',
- 'Standard' => 'Standard',
- 'Statement' => 'Oppgjør',
- 'Statement sent to' => 'Oppgjør sendt til',
- 'Statements sent to printer!' => 'Oppgjør sendt til skriver!',
- 'Subject' => 'Emne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Oppsummert',
- 'Tax' => 'Avgift/mva',
- 'Tax collected' => 'Inngående avgift',
- 'Tax paid' => 'Betalt avgift',
- 'Till' => 'Kasse',
- 'To' => 'Til',
- 'Total' => 'I alt',
- 'Trial Balance' => 'Foreløpig balanse',
- 'Vendor' => 'Leverandør',
- 'Vendor not on file!' => 'Leverandør mangler i database!',
- 'Year' => 'År',
- 'as at' => 'som ved',
- 'for Period' => 'for periode',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsett' => 'continue',
- 'epost' => 'e_mail',
- 'skriv_ut' => 'print',
- 'velg_alt' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/COPYING b/sql-ledger/locale/nl/COPYING
deleted file mode 100644
index c5dd519..0000000
--- a/sql-ledger/locale/nl/COPYING
+++ /dev/null
@@ -1,26 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Dutch texts:
-#
-# Author: AJ Hettema <Ignite@ecosse.net>
-# Oscar Buijten <oscar@elbie.com>
-# Bert Tijhuis <domino@dse.nl>
-# Paul Tammes <ptammes@home.nl>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/nl/LANGUAGE b/sql-ledger/locale/nl/LANGUAGE
deleted file mode 100644
index 890d7d5..0000000
--- a/sql-ledger/locale/nl/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Dutch
diff --git a/sql-ledger/locale/nl/Num2text b/sql-ledger/locale/nl/Num2text
deleted file mode 100644
index d86a188..0000000
--- a/sql-ledger/locale/nl/Num2text
+++ /dev/null
@@ -1,161 +0,0 @@
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (C) 2002
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors: Paul Tammes <finance@bermuda-holding.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# this is a variation of the Lingua package
-# written for check and receipt printing
-# it returns a properly formatted text string
-# for a number up to 10**12
-
-sub init {
- my $self = shift;
-
- %{ $self->{numbername} } =
- (0 => 'nul',
- 1 => 'een',
- 2 => 'twee',
- 3 => 'drie',
- 4 => 'vier',
- 5 => 'vijf',
- 6 => 'zes',
- 7 => 'zeven',
- 8 => 'acht',
- 9 => 'negen',
- 10 => 'tien',
- 11 => 'elf',
- 12 => 'twalf',
- 13 => 'dertien',
- 14 => 'veertien',
- 15 => 'vijftien',
- 16 => 'zestien',
- 17 => 'zeventien',
- 18 => 'achtien',
- 19 => 'negentien',
- 20 => 'twintig',
- 30 => 'dertig',
- 40 => 'veertig',
- 50 => 'vijftig',
- 60 => 'zestig',
- 70 => 'zeventig',
- 80 => 'tachtig',
- 90 => 'negentig',
- 10**2 => 'honderd',
- 10**3 => 'duizend',
- 10**6 => 'miljoen',
- 10**9 => 'miljard',
- 10**12 => 'biljoen'
- );
-
-}
-
-
-sub num2text {
- my ($self, $amount) = @_;
-
- return $self->{numbername}{0} unless $amount;
-
- my @textnumber = ('**');
-
- # split amount into chunks of 3
- my @num = reverse split //, abs($amount);
- my @numblock = ();
- my ($i, $appendn);
- my @a = ();
-
- while (@num) {
- @a = ();
- for (1 .. 3) {
- push @a, shift @num;
- }
- push @numblock, join / /, reverse @a;
- }
-
-
- while (@numblock) {
-
- $i = $#numblock;
- @num = split //, $numblock[$i];
-
- $numblock[$i] *= 1;
-
- if ($numblock[$i] == 0) {
- pop @numblock;
- next;
- }
-
- if ($numblock[$i] > 99) {
- # the one from hundreds
- push @textnumber, $self->{numbername}{$num[0]};
-
- # add hundred designation
- push @textnumber, $self->{numbername}{10**2};
-
- # reduce numblock
- $numblock[$i] -= $num[0] * 100;
- }
-
- if ($numblock[$i] > 9) {
- # tens
- push @textnumber, $self->format_ten($numblock[$i]);
- } else {
- # ones
- push @textnumber, $self->{numbername}{$numblock[$i]};
- }
-
- # add thousand, million
- if ($i) {
- $amount = 10**($i * 3);
- push @textnumber, $self->{numbername}{$amount};
- }
-
- pop @numblock;
-
- }
-
- push @textnumber, '**';
- join '', @textnumber;
-
-}
-
-
-sub format_ten {
- my ($self, $amount) = @_;
-
- my $textnumber = "";
- my @num = split //, $amount;
-
- if ($amount > 20) {
- # reverse one and ten and glue together with 'en'
- $amount = $num[0] * 10;
- $textnumber = $self->{numbername}{$num[1]}.'en'.$self->{numbername}{$amount};
- } else {
- $textnumber = $self->{numbername}{$amount};
- }
-
- $textnumber;
-
-}
-
-
-1;
-
diff --git a/sql-ledger/locale/nl/admin b/sql-ledger/locale/nl/admin
deleted file mode 100644
index 6e2e28c..0000000
--- a/sql-ledger/locale/nl/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Toegangsbeheer',
- 'Accounting' => 'Boekhouding',
- 'Add User' => 'Gebruiker toevoegen',
- 'Address' => 'Adres',
- 'Administration' => 'Administratie',
- 'Administrator' => 'Beheerder',
- 'All Datasets up to date!' => 'Alle Datasets actueel',
- 'Cannot create Lock!' => 'Kan geen exclusieve toegang krijgen!',
- 'Change Admin Password' => 'Admin wachtwoord veranderen',
- 'Change Password' => 'Verander wachtwoord',
- 'Character Set' => 'Karakter set',
- 'Click on login name to edit!' => 'Klik op login naam om deze te bewerken.',
- 'Company' => 'Bedrijf',
- 'Connect to' => 'Verbinden met',
- 'Continue' => 'Verder',
- 'Create Chart of Accounts' => 'Maak rekeningstelsel',
- 'Create Dataset' => 'Maak dataset',
- 'DBI not installed!' => 'DBI niet geinstalleerd',
- 'Database' => 'Database',
- 'Database Administration' => 'Database administratie',
- 'Database Driver not checked!' => 'Database Driver niet aangevinkt',
- 'Database User missing!' => 'Geen database gebruiker aanwezig!',
- 'Dataset' => 'Dataset',
- 'Dataset missing!' => 'Geen dataset aanwezig',
- 'Dataset updated!' => 'Dataset aangepast aan nieuwe versie!',
- 'Date Format' => 'Datum formaat',
- 'Delete' => 'Verwijder',
- 'Delete Dataset' => 'Verwijder dataset',
- 'Directory' => 'Directory',
- 'Driver' => 'Besturings programma',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Gebruiker wijzigen',
- 'Existing Datasets' => 'Bestaande datasets',
- 'Fax' => 'Fax',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Geen hostnaam!',
- 'Language' => 'Taal',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laat host en port veld leeg, tenzij u een netwerk connectie wilt opzetten.',
- 'Lock System' => 'Blokkeer het systeem',
- 'Lockfile created!' => 'Blokkeerbestand aangemaakt!',
- 'Lockfile removed!' => 'Blokkeerbestand verwijderd!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login naam ontbreekt!',
- 'Logout' => 'Logout',
- 'Manager' => 'Manager',
- 'Menu Width' => 'Menu Breedte',
- 'Multibyte Encoding' => 'Unicode',
- 'Name' => 'Naam',
- 'New Templates' => 'Nieuwe templates',
- 'No Database Drivers available!' => 'Geen database besturings programma aanwezig',
- 'No Dataset selected!' => 'Geen dataset geselecteerd',
- 'Nothing to delete!' => 'Niets te verwijderen!',
- 'Number Format' => 'Nummeraanduiding',
- 'Oracle Database Administration' => 'Oracle Database Administratie',
- 'Password' => 'Wachtwoord',
- 'Password changed!' => 'Wachtwoord gewijzigd!',
- 'Pg Database Administration' => 'Pg Database Administratie',
- 'PgPP Database Administration' => 'PgPP Database Administratie',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Geen port aanwezig',
- 'Printer' => 'Printer',
- 'Save' => 'Opslaan',
- 'Setup Templates' => 'Setup templates',
- 'Signature' => 'Handtekening',
- 'Stylesheet' => 'Stylesheet',
- 'Templates' => 'Templates',
- 'The following Datasets are not in use and can be deleted' => 'De volgende datasets zijn niet ingebruik en kunnen worder verwijderd.',
- 'The following Datasets need to be updated' => 'De volgende datasets moeten worden bijgewerkt',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dit is een eerste controle. Er wordt niks gecreéerd of verwijderd.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Om een gebruiker aan een groep toe te voegen, een naam te wijzigen, een login naam te wijzigen en op te slaan. Een nieuwe gebruiker zal dan worder opgeslagen met dezelfde gegevens onder de nieuwe login naam.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Dataset bijwerken',
- 'Use Templates' => 'Gebruik templates',
- 'User' => 'Gebruiker',
- 'User deleted!' => 'Gebruiker verwijderd!',
- 'User saved!' => 'Gebruiker opgeslagen!',
- 'Version' => 'Versie',
- 'You must enter a host and port for local and remote connections!' => 'Vul een "host" en een "port" in voor netwerk connecties!',
- 'does not exist' => 'bestaat niet',
- 'is already a member!' => 'is al een gebruiker',
- 'localhost' => 'localhost',
- 'locked!' => 'Geblokeerd!',
- 'successfully created!' => 'Met succes aangemaakt!',
- 'successfully deleted!' => 'Met succes verwijderd!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'gebruiker_toevoegen' => 'add_user',
- 'admin_wachtwoord_veranderen' => 'change_admin_password',
- 'verander_wachtwoord' => 'change_password',
- 'verder' => 'continue',
- 'maak_dataset' => 'create_dataset',
- 'verwijder' => 'delete',
- 'verwijder_dataset' => 'delete_dataset',
- 'blokkeer_het_systeem' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'oracle_database_administratie' => 'oracle_database_administration',
- 'pg_database_administratie' => 'pg_database_administration',
- 'pgpp_database_administratie' => 'pgpp_database_administration',
- 'opslaan' => 'save',
- 'unlock_system' => 'unlock_system',
- 'dataset_bijwerken' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/all b/sql-ledger/locale/nl/all
deleted file mode 100644
index e639d99..0000000
--- a/sql-ledger/locale/nl/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Crediteuren',
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AP Outstanding' => 'Openstaande Crediteuren',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'AR' => 'Debiteuren',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'About' => 'Over',
- 'Above' => 'Boven',
- 'Access Control' => 'Toegangsbeheer',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Account Number missing!' => 'Rekeningnummer ontbreekt!',
- 'Account Type' => 'Rekeningtype',
- 'Account Type missing!' => 'Rekeningtype ontbreekt!',
- 'Account deleted!' => 'Rekening verwijderd',
- 'Account does not exist!' => 'Rekening bestaat niet',
- 'Account saved!' => 'Rekening opgeslagen',
- 'Accounting' => 'Boekhouding',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Activate Audit trails' => 'Activeer Accountants opsporing',
- 'Active' => 'Actief',
- 'Add' => 'Toevoegen',
- 'Add AP Transaction' => 'Crediteurenboeking Toevoegen',
- 'Add AR Transaction' => 'Debiteurenboeking Toevoegen',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Business' => 'Branche toevoegen',
- 'Add Cash Transfer Transaction' => 'Geldoverboeking toevoegen',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Deduction' => 'Korting toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Add Exchange Rate' => 'Wisselkoers toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add General Ledger Transaction' => 'Journaalpost toevoegen',
- 'Add Group' => 'Groep toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Language' => 'Taal toevoegen',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Add Transaction' => 'Boeking toevoegen',
- 'Add User' => 'Gebruiker toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'Address' => 'Adres',
- 'Administration' => 'Administratie',
- 'Administrator' => 'Beheerder',
- 'After Deduction' => 'Na korting',
- 'All' => 'Allemaal',
- 'All Accounts' => 'Alle Rekeningen',
- 'All Datasets up to date!' => 'Alle Datasets actueel',
- 'All Items' => 'Alle onderdelen',
- 'Allowances' => 'Toelagen',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Amount missing!' => 'Bedrag ontbreekt',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Are you sure you want to delete Order Number' => 'Weet u zeker dat u dit ordernummer wilt verwijderen?',
- 'Are you sure you want to delete Quotation Number' => 'Weet u zeker dat u dit offertenummer wilt verwijderen?',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Weet us zeker dat u de gemarkeerde stukken wil verwijderen uit de wachtrij?',
- 'Assemblies' => 'Assemblages',
- 'Assemblies restocked!' => 'Assemblage naar voorraad geboekt',
- 'Assembly' => 'Assemblage',
- 'Asset' => 'Activa (bezittingen)',
- 'Attachment' => 'Bijlage',
- 'Audit Control' => 'Accountants Controle',
- 'Audit trail removed up to' => 'Accountants Controle verwijderd tot',
- 'Audit trails disabled' => 'Accountants Controle uitgeschakeld',
- 'Audit trails enabled' => 'Accountants Controle ingeschakeld',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'BIC' => 'BIC',
- 'BOM' => 'Onderdelenlijst',
- 'Backup' => 'Backup',
- 'Backup sent to' => 'Backup gezonden aan',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Based on' => 'Gebaseerd op',
- 'Batch Printing' => 'Batch-printing',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Before Deduction' => 'Voor korting',
- 'Beginning Balance' => 'Begin Balans',
- 'Below' => 'Onder',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Books are open' => 'Boekingsperiode is open',
- 'Break' => 'Onderbreking',
- 'Business' => 'Branche',
- 'Business Number' => 'Kamer van Koophandel nummer',
- 'Business deleted!' => 'Branche verwijderd!',
- 'Business saved!' => 'Branche opgeslagen',
- 'C' => 'C',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot create Lock!' => 'Kan geen exclusieve toegang krijgen!',
- 'Cannot delete account!' => 'Kan bedrag niet verwijderen!',
- 'Cannot delete customer!' => 'Kan klant niet verwijderen!',
- 'Cannot delete default account!' => 'Kan standaardrekening niet verwijderen!',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot delete item!' => 'Kan onderdeel niet verwijderen!',
- 'Cannot delete order!' => 'Kan order niet verwijderen!',
- 'Cannot delete quotation!' => 'Kan offerte niet verwijderen!',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot delete vendor!' => 'Kan leverancier niet verwijderen!',
- 'Cannot post Payment!' => 'Kan betaling niet boeken!',
- 'Cannot post Receipt!' => 'Kan ontvangst niet boeken!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Cannot process payment for a closed period!' => 'Kan geen betaling verwerken voor afgesloten periode!',
- 'Cannot remove files!' => 'Kan bestanden niet verwijderen!',
- 'Cannot save account!' => 'Kan rekening niet opslaan!',
- 'Cannot save defaults!' => 'Kan de standaard niet opslaan!',
- 'Cannot save order!' => 'Kan order niet opslaan!',
- 'Cannot save preferences!' => 'Kan voorkeuren niet opslaan!',
- 'Cannot save quotation!' => 'Kan offerte niet opslaan!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan rekening niet toekennen aan meer dan één debiteuren-, crediteuren- of inventarisrekening',
- 'Cannot set multiple options for' => 'Kan de meerdere opties voor niet instellen',
- 'Cannot set multiple options for Parts Inventory' => 'Kan de meerder opties voor de Artikelvoorraad niet instellen',
- 'Cannot set multiple options for Service Items' => 'Kan de meerder opties voor Dienst Onderdelen niet instellen',
- 'Cannot stock assemblies!' => 'Kan assemblages niet in voorraad nemen!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Change' => 'Wijzig',
- 'Change Admin Password' => 'Admin wachtwoord veranderen',
- 'Change Password' => 'Verander wachtwoord',
- 'Character Set' => 'Karakter set',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Inventaris controleren',
- 'Checks' => 'Cheques',
- 'City' => 'Stad',
- 'Cleared' => 'Opgeschoond',
- 'Click on login name to edit!' => 'Klik op login naam om deze te bewerken.',
- 'Close Books up to' => 'Boeken afsluiten tot',
- 'Closed' => 'Afgesloten',
- 'Code' => 'Code',
- 'Code missing!' => 'Code ontbreekt!',
- 'Company' => 'Bedrijf',
- 'Company Name' => 'Bedrijfsnaam',
- 'Compare to' => 'Vergelijk met',
- 'Components' => 'Componenten',
- 'Confirm' => '',
- 'Confirm!' => 'Bevestig!',
- 'Connect to' => 'Verbinden met',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Copies' => 'Kopieën',
- 'Copy to COA' => 'Kopieër naar rekeningstelsel',
- 'Cost' => 'Kost',
- 'Cost Center' => 'Kostenpost',
- 'Could not save pricelist!' => 'Kon prijslijst niet opslaan!',
- 'Could not save!' => 'Kon niet opslaan!',
- 'Could not transfer Inventory!' => 'Kon geen inventaris overboeken!',
- 'Country' => 'Land',
- 'Create Chart of Accounts' => 'Maak rekeningstelsel',
- 'Create Dataset' => 'Maak dataset',
- 'Credit' => 'Credit',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Onverdeeld Resultaat Boekjaar',
- 'Customer' => 'Klant',
- 'Customer History' => 'Klant Historie',
- 'Customer Number' => 'Klantnummer',
- 'Customer deleted!' => 'Klant verwijderd!',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Customer saved!' => 'Klant opgeslagen!',
- 'Customers' => 'Klanten',
- 'DBI not installed!' => 'DBI niet geinstalleerd',
- 'DOB' => '',
- 'Database' => 'Database',
- 'Database Administration' => 'Database administratie',
- 'Database Driver not checked!' => 'Database Driver niet aangevinkt',
- 'Database Host' => 'Database computer',
- 'Database User missing!' => 'Geen database gebruiker aanwezig!',
- 'Dataset' => 'Dataset',
- 'Dataset is newer than version!' => 'Dataset is nieuwer dan de versie!',
- 'Dataset missing!' => 'Geen dataset aanwezig',
- 'Dataset updated!' => 'Dataset aangepast aan nieuwe versie!',
- 'Date' => 'Datum',
- 'Date Format' => 'Datum formaat',
- 'Date Paid' => 'Betaaldatum',
- 'Date Received' => 'Ontvangstdatum',
- 'Date missing!' => 'Datum ontbreekt!',
- 'Date received missing!' => 'Ontvangstdatum ontbreekt!',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Decrease' => 'Vermindering',
- 'Deduct after' => 'Verminder na',
- 'Deduction deleted!' => 'Korting verwijderd!',
- 'Deduction saved!' => 'Korting opgeslagen!',
- 'Deductions' => 'Kortingen',
- 'Defaults' => 'Standaard',
- 'Defaults saved!' => 'Standaarden bewaard!',
- 'Delete' => 'Verwijder',
- 'Delete Account' => 'Rekening verwijderen',
- 'Delete Dataset' => 'Verwijder dataset',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Department deleted!' => 'Afdeling verwijderd!',
- 'Department saved!' => 'Afdeling opgeslagen!',
- 'Departments' => 'Afdelingen',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Description Translations' => 'Omschrijving Vertaling',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'Detail' => 'Detail',
- 'Difference' => 'Verschil',
- 'Directory' => 'Directory',
- 'Discount' => 'Korting',
- 'Done' => 'Klaar',
- 'Drawing' => 'Tekening',
- 'Driver' => 'Besturings programma',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit' => 'Wijzig',
- 'Edit AP Transaction' => 'Wijzig Crediteurenboeking',
- 'Edit AR Transaction' => 'Wijzig Debieteurenboeking',
- 'Edit Account' => 'Rekening wijzigen',
- 'Edit Assembly' => 'Assemblage wijzigen',
- 'Edit Business' => 'Branche wijzigen',
- 'Edit Cash Transfer Transaction' => 'Kasoverboeking wijzigen',
- 'Edit Customer' => 'Klant wijzigen',
- 'Edit Deduction' => 'Korting wijzigen',
- 'Edit Department' => 'Afdeling wijzigen',
- 'Edit Description Translations' => 'Wijzig Omschrijving Vertaling',
- 'Edit Employee' => 'Werknemer wijzigen',
- 'Edit GIFI' => 'Wijzig GIFI',
- 'Edit General Ledger Transaction' => 'Boeking in grootboek wijzigen',
- 'Edit Group' => 'Groep wijzigen',
- 'Edit Labor/Overhead' => 'Arbeid/Overheadskosten wijzigen',
- 'Edit Language' => 'Taal Wijzigen',
- 'Edit POS Invoice' => 'Kassabon wijzigen',
- 'Edit Part' => 'Artikel wijzigen',
- 'Edit Preferences for' => 'Instellingen wijzigen voor',
- 'Edit Pricegroup' => 'Prijsgroep wijzigen ',
- 'Edit Project' => 'Project wijzigen',
- 'Edit Purchase Order' => 'Inkooporder wijzigen',
- 'Edit Quotation' => 'Offerte wijzigen',
- 'Edit Request for Quotation' => 'Offerteaanvraag wijzigen',
- 'Edit SIC' => 'SIC wijzigen',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Edit Sales Order' => 'Verkooporder wijzigen',
- 'Edit Service' => 'Dienst wijzigen',
- 'Edit Template' => 'Template wijzigen',
- 'Edit User' => 'Gebruiker wijzigen',
- 'Edit Vendor' => 'Leverancier wijzigen',
- 'Edit Vendor Invoice' => 'Inkoopfactuur wijzigen',
- 'Edit Warehouse' => 'Magazijn wijzigen',
- 'Employee' => 'Werknemer',
- 'Employee Name' => 'Werknemer Naam',
- 'Employee Number' => 'Werknemer Nummer',
- 'Employee deleted!' => 'Werknemer verwijderd',
- 'Employee pays' => 'Werknemers betalingen',
- 'Employee saved!' => 'Werknemer opgeslagen!',
- 'Employees' => 'Werknemers',
- 'Employer' => 'Werkgever',
- 'Employer pays' => 'Werkgever betalingen',
- 'Enddate' => 'Einddatum',
- 'Enforce transaction reversal for all dates' => 'Boeking terugdraaien voor alle data',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vul max drie karakters in, gescheiden door een dubbelepunt (b.v. EUR:USD:GBP:CAD) voor lokale en buitenlandse valuta',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Excempt age <' => '',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Existing Datasets' => 'Bestaande datasets',
- 'Expense' => 'Onkosten',
- 'Expense Account' => 'Onkostenrekening',
- 'Expense/Asset' => 'Uitgaven',
- 'Extended' => 'Uitgebreid',
- 'FX' => 'FX',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Foreign Exchange Gain' => 'Wisselkoers winst',
- 'Foreign Exchange Loss' => 'Wisselkoers verlies',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI verwijderd!',
- 'GIFI missing!' => 'GIFI ontbreekt!',
- 'GIFI saved!' => 'GIFI opgeslagen!',
- 'GL Transaction' => 'Grootboekboeking (memoriaal) ',
- 'General Ledger' => 'Grootboek',
- 'Goods & Services' => 'Goederen & Diensten',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Group Translations' => 'Groep vertaling',
- 'Group deleted!' => 'Groep verwijderd!',
- 'Group missing!' => 'Groep ontbreekt!',
- 'Group saved!' => 'Groep opgeslagen!',
- 'Groups' => 'Groepen',
- 'HR' => 'Personeel',
- 'HTML Templates' => 'HTML Sjablonen',
- 'Heading' => 'Kopregel',
- 'History' => 'Geschiedenis',
- 'Home Phone' => 'Thuistelefoon',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Geen hostnaam!',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Image' => 'Plaatje',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Include in drop-down menus' => 'Toevoegen aan drop-down menus',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Deze rekening gebruiken op klant/leverancier formulieren om deze als belastbaar aan te duiden?',
- 'Income' => 'Inkomsten',
- 'Income Account' => 'Inkomstenrekening',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Incorrect Dataset version!' => 'Ongeldige versie Dataset!!',
- 'Incorrect Password!' => 'Verkeerd paswoord',
- 'Increase' => 'Toename',
- 'Individual Items' => 'Onderliggende onderdelen',
- 'Internal Notes' => 'Interne notities',
- 'Inventory' => 'Voorraad',
- 'Inventory Account' => 'Voorraadrekening',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een assemblage als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een product als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory saved!' => 'Voorraad opgeslagen',
- 'Inventory transferred!' => 'Voorraad overgeheveld',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Invoices' => 'Facturen',
- 'Is this a summary account to record' => 'Totaalrekening voor',
- 'Item already on pricelist!' => 'Onderdeel al op prijslijst!',
- 'Item deleted!' => 'Onderdeel verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Items' => 'Onderdelen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'LaTeX Templates' => 'LaTeX Sjablonen',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'Language deleted!' => 'Taal verwijderd!',
- 'Language saved!' => 'Taal opgeslagen!',
- 'Languages' => 'Talen',
- 'Languages not defined!' => 'Taal niet gedefinieerd!',
- 'Last Numbers & Default Accounts' => 'Laatst toegekende nummers & Standaard Rekeningen',
- 'Leadtime' => 'Levertijd',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Laat host en port veld leeg, tenzij u een netwerk connectie wilt opzetten.',
- 'Liability' => 'Passiva',
- 'Licensed to' => 'Gelicenseerd aan',
- 'Line Total' => 'Totaal Regel',
- 'Link' => 'Verbinding',
- 'Link Accounts' => 'Rekeningen verbinden',
- 'List' => 'Weergeven',
- 'List Accounts' => 'Rekeningen weergeven',
- 'List Businesses' => 'Zaaktypes weergeven',
- 'List Departments' => 'Afdelingen weergeven',
- 'List GIFI' => 'GIFI weergeven',
- 'List Languages' => 'Talen weergeven',
- 'List Price' => 'Catalogusprijs',
- 'List Projects' => 'Projecten weergeven',
- 'List SIC' => 'SIC weergeven',
- 'List Transactions' => 'Boekingen tonen',
- 'List Warehouses' => 'Magazijnen weergeven',
- 'Lock System' => 'Blokkeer het systeem',
- 'Lockfile created!' => 'Blokkeerbestand aangemaakt!',
- 'Lockfile removed!' => 'Blokkeerbestand verwijderd!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login naam ontbreekt!',
- 'Logout' => 'Logout',
- 'Make' => 'Fabrikant',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'Marked entries printed!' => 'Gemarkeerde delen afgedrukt!',
- 'Markup' => 'Winstmarge',
- 'Maximum' => 'Maximum',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Menu Breedte',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Type',
- 'Month' => 'Maand',
- 'Multibyte Encoding' => 'Unicode',
- 'N/A' => 'N/A',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'New Templates' => 'Nieuwe templates',
- 'No' => 'Nee',
- 'No Database Drivers available!' => 'Geen database besturings programma aanwezig',
- 'No Dataset selected!' => 'Geen dataset geselecteerd',
- 'No email address for' => 'Geen email adres voor',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Onbelast',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Notes' => 'Opmerkingen',
- 'Nothing entered!' => 'Niets ingevuld!',
- 'Nothing outstanding for ' => 'Niets openstaand voor',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nothing to delete!' => 'Niets te verwijderen!',
- 'Nothing to print!' => 'Niets af te drukken!',
- 'Nothing to transfer!' => 'Niets over te boeken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummeraanduiding',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'O' => 'O',
- 'Obsolete' => 'Niet actief',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'Op voorraad',
- 'Open' => 'Open',
- 'Oracle Database Administration' => 'Oracle Database Administratie',
- 'Order' => 'Bestelling',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Entry' => 'Order invoer',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Order deleted!' => 'Order verwijderd!',
- 'Order processed!' => 'Order verwerkt!',
- 'Order saved!' => 'Order opgeslagen!',
- 'Orphaned' => 'Wees',
- 'Out of balance transaction!' => 'Boeking is niet in evenwicht',
- 'Out of balance!' => 'Niet in evenwicht!',
- 'Outstanding' => 'Openstaand',
- 'PDF' => 'PDF',
- 'POS' => 'Kassa',
- 'POS Invoice' => 'Kassabon',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Packing Lists' => 'Pakbonnen',
- 'Paid' => 'Betaald',
- 'Part' => 'Artikel',
- 'Part Number' => 'Artikel Nummer',
- 'Partnumber' => 'Artikelnummer',
- 'Parts' => 'Artikelen',
- 'Parts Inventory' => 'Artikelenvoorraad',
- 'Password' => 'Wachtwoord',
- 'Password changed!' => 'Wachtwoord gewijzigd!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Betalingen',
- 'Payment' => 'Betaling',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payment posted!' => 'Betaling geboekt!',
- 'Payments' => 'Betalingen',
- 'Payroll Deduction' => 'Loonkorting',
- 'Period' => 'Periode',
- 'Pg Database Administration' => 'Pg Database Administratie',
- 'PgPP Database Administration' => 'PgPP Database Administratie',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Pick Lists' => 'Pakbonnen',
- 'Port' => 'Port',
- 'Port missing!' => 'Geen port aanwezig',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Posted!' => 'Geboekt!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Instellingen',
- 'Preferences saved!' => 'Instellingen bewaard!',
- 'Prepayment' => 'Voorschot',
- 'Price' => 'Prijs',
- 'Pricegroup' => 'Prijsgroep',
- 'Pricegroup deleted!' => 'Prijsgroep verwijderd!',
- 'Pricegroup missing!' => 'Prijsgroep mist!',
- 'Pricegroup saved!' => 'Prijsgroep opgeslagen!',
- 'Pricegroups' => 'Prijsgroepen',
- 'Pricelist' => 'Prijslijst',
- 'Print' => 'Afdrukken',
- 'Print and Post' => 'Afdrukken en Boeken',
- 'Print and Save' => 'Afdrukken en Opslaan',
- 'Printed' => 'Afgedrukt',
- 'Printer' => 'Printer',
- 'Printing ... ' => 'Afdrukken ...',
- 'Profit Center' => 'Kostenplaats',
- 'Project' => 'Project',
- 'Project Description Translations' => 'Project Omschrijving Vertaling',
- 'Project Number' => 'Projectnummer',
- 'Project Number missing!' => 'Projectnummer ontbreekt!',
- 'Project Transactions' => 'Projectboekingen',
- 'Project deleted!' => 'Project verwijderd!',
- 'Project not on file!' => 'Onbekend project!',
- 'Project saved!' => 'Project opgeslagen!',
- 'Projects' => 'Projecten',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Order Number' => 'Inkooporder Nummer',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quantity exceeds available units to stock!' => 'Aantal is hoger dan de aanwezige voorraad!',
- 'Quarter' => 'Kwartaal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation ' => 'Offerte ',
- 'Quotation Date' => 'Offertedatum',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number' => 'Offertenummer',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotation deleted!' => 'Offerte verwijderd!',
- 'Quotations' => 'Offertes',
- 'R' => 'R',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQ ' => 'Offerteaanvraag ',
- 'RFQ Number' => 'Offerteaanvraag nummer',
- 'RFQs' => 'Offerteaanvragen',
- 'ROP' => 'Minimum voorraad',
- 'Rate' => 'Percentage',
- 'Rate missing!' => 'Percentage ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipt posted!' => 'Ontvangstbewijs geboekt',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Receivables' => 'Vorderingen',
- 'Receive' => 'Inkomende zending',
- 'Receive Merchandise' => 'Goederen Ontvangen',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reconciliation Report' => 'Reconciliatie rapport',
- 'Record in' => 'Boeken op',
- 'Reference' => 'Referentie',
- 'Reference missing!' => 'Referentie ontbreekt!',
- 'Remaining' => 'Resterend',
- 'Remove' => 'Verwijder',
- 'Remove Audit trails up to' => 'Verwijder Accountants Controle tot',
- 'Removed spoolfiles!' => 'Spoolfiles verwijderd!',
- 'Removing marked entries from queue ...' => 'Gemarkeerde stukken uit de wachtrij aan het verwijderen',
- 'Report for' => 'Rapport voor',
- 'Reports' => 'Rapporten',
- 'Request for Quotation' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'Required by' => 'Nodig voor',
- 'Retained Earnings' => 'Winstreserve',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SIC' => 'SIC',
- 'SIC deleted!' => 'SIC verwijderd!',
- 'SIC saved!' => 'SIC opgeslagen!',
- 'SKU' => 'SKU',
- 'SSN' => 'Pers.nr.',
- 'Sale' => 'Verkoopfactuur',
- 'Sales' => 'Verkoop',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoice ' => 'Verkoopfactuur ',
- 'Sales Invoice Number' => 'Verkoopfactuur Nummer',
- 'Sales Invoice.' => 'Verkoopfactuur.',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Order Number' => 'Verkooporder Nummer',
- 'Sales Orders' => 'Verkooporders',
- 'Sales Quotation Number' => 'Verkoop Offerte Nummer',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Save Pricelist' => 'Prijslijst Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Save to File' => 'Opslaan als bestand',
- 'Screen' => 'Scherm',
- 'Search' => 'Zoek',
- 'Select' => 'Selecteer',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select payment' => 'Kies betaling',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Verkoop',
- 'Sell Price' => 'Verkoopprijs',
- 'Send by E-Mail' => 'Verzenden per E-mail',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Dienst',
- 'Service Items' => 'Dienst Onderdelen',
- 'Services' => 'Diensten',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Setup templates',
- 'Ship' => 'Verzenden',
- 'Ship Merchandise' => 'Goederen Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping' => 'Zendingen',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Date' => 'Verzenddatum',
- 'Shipping Date missing!' => 'Verzenddatum ontbreekt!',
- 'Shipping Point' => 'Verzendpunt',
- 'Short' => 'Kort',
- 'Signature' => 'Handtekening',
- 'Source' => 'Herkomst',
- 'Spoolfile' => 'Spoolfile',
- 'Standard' => 'Standaard',
- 'Standard Industrial Codes' => 'Standaard Industiële Codes',
- 'Startdate' => 'Begindatum',
- 'State' => 'Provincie',
- 'State/Province' => 'Staat/Provincie',
- 'Statement' => 'Overzicht',
- 'Statement Balance' => 'Saldo Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Stock' => 'Voorraad',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Stylesheet' => 'Stylesheet',
- 'Sub-contract GIFI' => 'GIFI Onderaannemer',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Supervisor' => '',
- 'System' => 'Systeem',
- 'System Defaults' => 'Systeem Standaard',
- 'Tax' => 'Belasting',
- 'Tax Accounts' => 'Belasting Rekeningen',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax Number' => 'Belastingnummer',
- 'Tax Number / SSN' => 'Belastingnummer / Pers.nr.',
- 'Tax collected' => 'Belasting Verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Taxable' => 'Belastbaar',
- 'Template saved!' => 'Template opgeslagen!',
- 'Templates' => 'Templates',
- 'Terms' => 'Termijn',
- 'Text Templates' => 'Tekst Sjablonen',
- 'The following Datasets are not in use and can be deleted' => 'De volgende datasets zijn niet ingebruik en kunnen worder verwijderd.',
- 'The following Datasets need to be updated' => 'De volgende datasets moeten worden bijgewerkt',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Dit is een eerste controle. Er wordt niks gecreéerd of verwijderd.',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Om een gebruiker aan een groep toe te voegen, een naam te wijzigen, een login naam te wijzigen en op te slaan. Een nieuwe gebruiker zal dan worder opgeslagen met dezelfde gegevens onder de nieuwe login naam.',
- 'Top Level' => 'Top Niveau',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transaction' => 'Boeking',
- 'Transaction Date missing!' => 'Boekingsdatum ontbreekt!',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Transaction reversal enforced for all dates' => 'Boekingen verplicht terugdraaien voor alle datums',
- 'Transaction reversal enforced up to' => 'Boekingen verplicht terugdraaien tot aan',
- 'Transactions' => 'Boekingen',
- 'Transfer' => 'Overboeking',
- 'Transfer Inventory' => 'Inventaris overboeken',
- 'Transfer to' => 'Overboeken naar',
- 'Translation' => 'Vertaling',
- 'Translation deleted!' => 'Vertaling verwijderd!',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Translations' => 'Vertalingen',
- 'Translations saved!' => 'Vertalingen opgeslagen!',
- 'Trial Balance' => 'Proefbalans',
- 'Type of Business' => 'Branche',
- 'Unit' => 'Eenheid',
- 'Unit of measure' => 'Rekeneenheid',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Bijwerken',
- 'Update Dataset' => 'Dataset bijwerken',
- 'Updated' => 'Bijgewerkt',
- 'Upgrading to Version' => 'Opwaarderen naar Versie',
- 'Use Templates' => 'Gebruik templates',
- 'User' => 'Gebruiker',
- 'User deleted!' => 'Gebruiker verwijderd!',
- 'User saved!' => 'Gebruiker opgeslagen!',
- 'Valid until' => 'Geldig tot',
- 'Vendor' => 'Leverancier',
- 'Vendor History' => 'Leverancier Historie',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoice ' => 'Inkoopfaktuur ',
- 'Vendor Invoice Number' => 'Inkoopfaktuur Nummer',
- 'Vendor Invoice.' => 'Inkoopfaktuur.',
- 'Vendor Invoices' => 'Inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor deleted!' => 'Leverancier verwijderd!',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Vendor saved!' => 'Leverancier opgeslagen!',
- 'Vendors' => 'Leveranciers',
- 'Version' => 'Versie',
- 'Warehouse' => 'Magazijn',
- 'Warehouse deleted!' => 'Magazijn verwijderd!',
- 'Warehouse saved!' => 'Magazijn opgeslagen',
- 'Warehouses' => 'Magazijnen',
- 'Warning!' => 'Waarschuwing!',
- 'Weight' => 'Gewicht',
- 'Weight Unit' => 'Gewichtseenheid',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'Work Orders' => 'Werkbonnen',
- 'Work Phone' => 'Bedrijfstelefoon',
- 'Year' => 'Jaar',
- 'Yearend' => 'Jaareinde',
- 'Yearend date missing!' => 'Jaareinde ontbreekt!',
- 'Yearend posted!' => 'Jaareinde geboekt!',
- 'Yearend posting failed!' => 'Boeking jaareinde mislukt!',
- 'Yes' => 'Ja',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'U heeft geen naam gegeven!',
- 'You must enter a host and port for local and remote connections!' => 'Vul een "host" en een "port" in voor netwerk connecties!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'Rekening kan niet omgezet worden naar ander type Rekening',
- 'as at' => 'per',
- 'days' => 'dagen',
- 'does not exist' => 'bestaat niet',
- 'done' => 'gebeurd',
- 'ea' => 'voor',
- 'for Period' => 'voor periode',
- 'is already a member!' => 'is al een gebruiker',
- 'is not a member!' => 'is geen gebruiker',
- 'localhost' => 'localhost',
- 'locked!' => 'Geblokeerd!',
- 'posted!' => 'Geboekt!',
- 'sent' => 'verzonden',
- 'successfully created!' => 'Met succes aangemaakt!',
- 'successfully deleted!' => 'Met succes verwijderd!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/am b/sql-ledger/locale/nl/am
deleted file mode 100644
index bda711f..0000000
--- a/sql-ledger/locale/nl/am
+++ /dev/null
@@ -1,256 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AR' => 'Debiteuren',
- 'About' => 'Over',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Account Number missing!' => 'Rekeningnummer ontbreekt!',
- 'Account Type' => 'Rekeningtype',
- 'Account Type missing!' => 'Rekeningtype ontbreekt!',
- 'Account deleted!' => 'Rekening verwijderd',
- 'Account does not exist!' => 'Rekening bestaat niet',
- 'Account saved!' => 'Rekening opgeslagen',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accrual' => 'Opeengestapeld',
- 'Activate Audit trails' => 'Activeer Accountants opsporing',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Business' => 'Branche toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add Language' => 'Taal toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'Address' => 'Adres',
- 'Asset' => 'Activa (bezittingen)',
- 'Audit Control' => 'Accountants Controle',
- 'Audit trail removed up to' => 'Accountants Controle verwijderd tot',
- 'Audit trails disabled' => 'Accountants Controle uitgeschakeld',
- 'Audit trails enabled' => 'Accountants Controle ingeschakeld',
- 'Backup sent to' => 'Backup gezonden aan',
- 'Books are open' => 'Boekingsperiode is open',
- 'Business Number' => 'Kamer van Koophandel nummer',
- 'Business deleted!' => 'Branche verwijderd!',
- 'Business saved!' => 'Branche opgeslagen',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot delete account!' => 'Kan bedrag niet verwijderen!',
- 'Cannot delete default account!' => 'Kan standaardrekening niet verwijderen!',
- 'Cannot save account!' => 'Kan rekening niet opslaan!',
- 'Cannot save defaults!' => 'Kan de standaard niet opslaan!',
- 'Cannot save preferences!' => 'Kan voorkeuren niet opslaan!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Kan rekening niet toekennen aan meer dan één debiteuren-, crediteuren- of inventarisrekening',
- 'Cannot set multiple options for' => 'Kan de meerdere opties voor niet instellen',
- 'Cannot set multiple options for Parts Inventory' => 'Kan de meerder opties voor de Artikelvoorraad niet instellen',
- 'Cannot set multiple options for Service Items' => 'Kan de meerder opties voor Dienst Onderdelen niet instellen',
- 'Cash' => 'Kas (contant)',
- 'Character Set' => 'Karakter set',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Close Books up to' => 'Boeken afsluiten tot',
- 'Code' => 'Code',
- 'Code missing!' => 'Code ontbreekt!',
- 'Company' => 'Bedrijf',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Copy to COA' => 'Kopieër naar rekeningstelsel',
- 'Cost Center' => 'Kostenpost',
- 'Credit' => 'Credit',
- 'Customer Number' => 'Klantnummer',
- 'Database Host' => 'Database computer',
- 'Dataset' => 'Dataset',
- 'Date Format' => 'Datum formaat',
- 'Debit' => 'Debet',
- 'Defaults saved!' => 'Standaarden bewaard!',
- 'Delete' => 'Verwijder',
- 'Delete Account' => 'Rekening verwijderen',
- 'Department deleted!' => 'Afdeling verwijderd!',
- 'Department saved!' => 'Afdeling opgeslagen!',
- 'Departments' => 'Afdelingen',
- 'Description' => 'Omschrijving',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'Discount' => 'Korting',
- 'Dropdown Limit' => 'Maximum in dropdown-lijst',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Wijzig',
- 'Edit Account' => 'Rekening wijzigen',
- 'Edit Business' => 'Branche wijzigen',
- 'Edit Department' => 'Afdeling wijzigen',
- 'Edit GIFI' => 'Wijzig GIFI',
- 'Edit Language' => 'Taal Wijzigen',
- 'Edit Preferences for' => 'Instellingen wijzigen voor',
- 'Edit SIC' => 'SIC wijzigen',
- 'Edit Template' => 'Template wijzigen',
- 'Edit Warehouse' => 'Magazijn wijzigen',
- 'Employee Number' => 'Werknemer Nummer',
- 'Enforce transaction reversal for all dates' => 'Boeking terugdraaien voor alle data',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Vul max drie karakters in, gescheiden door een dubbelepunt (b.v. EUR:USD:GBP:CAD) voor lokale en buitenlandse valuta',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Expense' => 'Onkosten',
- 'Expense Account' => 'Onkostenrekening',
- 'Expense/Asset' => 'Uitgaven',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Wisselkoers winst',
- 'Foreign Exchange Loss' => 'Wisselkoers verlies',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI verwijderd!',
- 'GIFI missing!' => 'GIFI ontbreekt!',
- 'GIFI saved!' => 'GIFI opgeslagen!',
- 'Heading' => 'Kopregel',
- 'Include in drop-down menus' => 'Toevoegen aan drop-down menus',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Deze rekening gebruiken op klant/leverancier formulieren om deze als belastbaar aan te duiden?',
- 'Income' => 'Inkomsten',
- 'Income Account' => 'Inkomstenrekening',
- 'Inventory' => 'Voorraad',
- 'Inventory Account' => 'Voorraadrekening',
- 'Is this a summary account to record' => 'Totaalrekening voor',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'Language deleted!' => 'Taal verwijderd!',
- 'Language saved!' => 'Taal opgeslagen!',
- 'Languages' => 'Talen',
- 'Last Numbers & Default Accounts' => 'Laatst toegekende nummers & Standaard Rekeningen',
- 'Liability' => 'Passiva',
- 'Licensed to' => 'Gelicenseerd aan',
- 'Link' => 'Verbinding',
- 'Menu Width' => 'Menu Breedte',
- 'Method' => 'Methode',
- 'Name' => 'Naam',
- 'No' => 'Nee',
- 'No email address for' => 'Geen email adres voor',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummeraanduiding',
- 'Partnumber' => 'Artikelnummer',
- 'Parts Inventory' => 'Artikelenvoorraad',
- 'Password' => 'Wachtwoord',
- 'Payables' => 'Betalingen',
- 'Payment' => 'Betaling',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Instellingen bewaard!',
- 'Printer' => 'Printer',
- 'Profit Center' => 'Kostenplaats',
- 'Purchase Order Number' => 'Inkooporder Nummer',
- 'RFQ Number' => 'Offerteaanvraag nummer',
- 'Rate' => 'Percentage',
- 'Receivables' => 'Vorderingen',
- 'Reference' => 'Referentie',
- 'Remove Audit trails up to' => 'Verwijder Accountants Controle tot',
- 'Retained Earnings' => 'Winstreserve',
- 'SIC deleted!' => 'SIC verwijderd!',
- 'SIC saved!' => 'SIC opgeslagen!',
- 'Sales Invoice Number' => 'Verkoopfactuur Nummer',
- 'Sales Order Number' => 'Verkooporder Nummer',
- 'Sales Quotation Number' => 'Verkoop Offerte Nummer',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Service Items' => 'Dienst Onderdelen',
- 'Signature' => 'Handtekening',
- 'Standard Industrial Codes' => 'Standaard Industiële Codes',
- 'Stylesheet' => 'Stylesheet',
- 'System Defaults' => 'Systeem Standaard',
- 'Tax' => 'Belasting',
- 'Tax Accounts' => 'Belasting Rekeningen',
- 'Template saved!' => 'Template opgeslagen!',
- 'Transaction reversal enforced for all dates' => 'Boekingen verplicht terugdraaien voor alle datums',
- 'Transaction reversal enforced up to' => 'Boekingen verplicht terugdraaien tot aan',
- 'Type of Business' => 'Branche',
- 'User' => 'Gebruiker',
- 'Vendor Invoice Number' => 'Inkoopfaktuur Nummer',
- 'Vendor Number' => 'Leveranciernummer',
- 'Version' => 'Versie',
- 'Warehouse deleted!' => 'Magazijn verwijderd!',
- 'Warehouse saved!' => 'Magazijn opgeslagen',
- 'Warehouses' => 'Magazijnen',
- 'Weight Unit' => 'Gewichtseenheid',
- 'Yearend' => 'Jaareinde',
- 'Yearend date missing!' => 'Jaareinde ontbreekt!',
- 'Yearend posted!' => 'Jaareinde geboekt!',
- 'Yearend posting failed!' => 'Boeking jaareinde mislukt!',
- 'Yes' => 'Ja',
- 'account cannot be set to any other type of account' => 'Rekening kan niet omgezet worden naar ander type Rekening',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'rekening_toevoegen' => 'add_account',
- 'branche_toevoegen' => 'add_business',
- 'afdeling_toevoegen' => 'add_department',
- 'taal_toevoegen' => 'add_language',
- 'sic_toevoegen' => 'add_sic',
- 'magazijn_toevoegen' => 'add_warehouse',
- 'verder' => 'continue',
- 'kopieër_naar_rekeningstelsel' => 'copy_to_coa',
- 'verwijder' => 'delete',
- 'wijzig' => 'edit',
- 'rekening_wijzigen' => 'edit_account',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ap b/sql-ledger/locale/nl/ap
deleted file mode 100644
index 6bbfd6e..0000000
--- a/sql-ledger/locale/nl/ap
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Openstaande Crediteuren',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add AP Transaction' => 'Crediteurenboeking Toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Check' => 'Cheque',
- 'Closed' => 'Afgesloten',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'Edit AP Transaction' => 'Wijzig Crediteurenboeking',
- 'Employee' => 'Werknemer',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Month' => 'Maand',
- 'Notes' => 'Opmerkingen',
- 'Nothing to print!' => 'Niets af te drukken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'PDF' => 'PDF',
- 'Paid' => 'Betaald',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Period' => 'Periode',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Print and Post' => 'Afdrukken en Boeken',
- 'Printed' => 'Afgedrukt',
- 'Project not on file!' => 'Onbekend project!',
- 'Quarter' => 'Kwartaal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Remaining' => 'Resterend',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select payment' => 'Kies betaling',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Transaction' => 'Boeking',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor Invoice.' => 'Inkoopfaktuur.',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'crediteurenboeking' => 'ap_transaction',
- 'crediteurenboeking_toevoegen' => 'add_ap_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'wijzig_crediteurenboeking' => 'edit_ap_transaction',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'afdrukken_en_boeken' => 'print_and_post',
- 'bijwerken' => 'update',
- 'inkoopfaktuur.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ar b/sql-ledger/locale/nl/ar
deleted file mode 100644
index d0c4f12..0000000
--- a/sql-ledger/locale/nl/ar
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add AR Transaction' => 'Debiteurenboeking Toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Check' => 'Cheque',
- 'Closed' => 'Afgesloten',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'Edit AR Transaction' => 'Wijzig Debieteurenboeking',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Month' => 'Maand',
- 'Notes' => 'Opmerkingen',
- 'Nothing to print!' => 'Niets af te drukken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'PDF' => 'PDF',
- 'Paid' => 'Betaald',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Period' => 'Periode',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Print and Post' => 'Afdrukken en Boeken',
- 'Printed' => 'Afgedrukt',
- 'Project not on file!' => 'Onbekend project!',
- 'Quarter' => 'Kwartaal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Remaining' => 'Resterend',
- 'Sales Invoice.' => 'Verkoopfactuur.',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select payment' => 'Kies betaling',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Ship via' => 'Verzenden via',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Transaction' => 'Boeking',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'afdrukken_en_boeken' => 'print_and_post',
- 'verkoopfactuur.' => 'sales_invoice.',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/arap b/sql-ledger/locale/nl/arap
deleted file mode 100644
index 19da2c6..0000000
--- a/sql-ledger/locale/nl/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adres',
- 'Continue' => 'Verder',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Description' => 'Omschrijving',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Onbekend project!',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/arapprn b/sql-ledger/locale/nl/arapprn
deleted file mode 100644
index c30deb3..0000000
--- a/sql-ledger/locale/nl/arapprn
+++ /dev/null
@@ -1,37 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Amount' => 'Bedrag',
- 'Check' => 'Cheque',
- 'Continue' => 'Verder',
- 'Date' => 'Datum',
- 'Memo' => 'Memo',
- 'Nothing to print!' => 'Niets af te drukken!',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Afgedrukt',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Receipt' => 'Ontvangstbewijs',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select payment' => 'Kies betaling',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Source' => 'Herkomst',
- 'Transaction' => 'Boeking',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/bp b/sql-ledger/locale/nl/bp
deleted file mode 100644
index d1ce6e3..0000000
--- a/sql-ledger/locale/nl/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Weet us zeker dat u de gemarkeerde stukken wil verwijderen uit de wachtrij?',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Cannot remove files!' => 'Kan bestanden niet verwijderen!',
- 'Checks' => 'Cheques',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Date' => 'Datum',
- 'From' => 'Van',
- 'Invoice' => 'Factuur',
- 'Invoice Number' => 'Factuurnummer',
- 'Marked entries printed!' => 'Gemarkeerde delen afgedrukt!',
- 'Month' => 'Maand',
- 'Order' => 'Bestelling',
- 'Order Number' => 'Referentie',
- 'Packing Lists' => 'Pakbonnen',
- 'Period' => 'Periode',
- 'Pick Lists' => 'Pakbonnen',
- 'Print' => 'Afdrukken',
- 'Printing ... ' => 'Afdrukken ...',
- 'Purchase Orders' => 'Inkooporders',
- 'Quarter' => 'Kwartaal',
- 'Quotation' => 'Offerte',
- 'Quotation Number' => 'Offertenummer',
- 'Quotations' => 'Offertes',
- 'RFQs' => 'Offerteaanvragen',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Reference' => 'Referentie',
- 'Remove' => 'Verwijder',
- 'Removed spoolfiles!' => 'Spoolfiles verwijderd!',
- 'Removing marked entries from queue ...' => 'Gemarkeerde stukken uit de wachtrij aan het verwijderen',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Orders' => 'Verkooporders',
- 'Select all' => 'Selecteer alles',
- 'Spoolfile' => 'Spoolfile',
- 'To' => 'Tot',
- 'Vendor' => 'Leverancier',
- 'Work Orders' => 'Werkbonnen',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
- 'done' => 'gebeurd',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'afdrukken' => 'print',
- 'verwijder' => 'remove',
- 'selecteer_alles' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ca b/sql-ledger/locale/nl/ca
deleted file mode 100644
index 7e5ff8c..0000000
--- a/sql-ledger/locale/nl/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Credit' => 'Credit',
- 'Current' => 'Huidig',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'List Transactions' => 'Boekingen tonen',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Month' => 'Maand',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Period' => 'Periode',
- 'Project Number' => 'Projectnummer',
- 'Quarter' => 'Kwartaal',
- 'R' => 'R',
- 'Reference' => 'Referentie',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Year' => 'Jaar',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'boekingen_tonen' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/cp b/sql-ledger/locale/nl/cp
deleted file mode 100644
index 89a0592..0000000
--- a/sql-ledger/locale/nl/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AR' => 'Debiteuren',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Cannot post Payment!' => 'Kan betaling niet boeken!',
- 'Cannot post Receipt!' => 'Kan ontvangst niet boeken!',
- 'Cannot process payment for a closed period!' => 'Kan geen betaling verwerken voor afgesloten periode!',
- 'Continue' => 'Verder',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date missing!' => 'Datum ontbreekt!',
- 'Department' => 'Afdeling',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Invoice' => 'Factuur',
- 'Invoices' => 'Facturen',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Niets openstaand voor',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Betaling',
- 'Payment posted!' => 'Betaling geboekt!',
- 'Post' => 'Boek',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Voorschot',
- 'Print' => 'Afdrukken',
- 'Project not on file!' => 'Onbekend project!',
- 'Queue' => 'Wachtrij',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipt posted!' => 'Ontvangstbewijs geboekt',
- 'Screen' => 'Scherm',
- 'Select' => 'Selecteer',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Source' => 'Herkomst',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
- 'boek' => 'post',
- 'afdrukken' => 'print',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ct b/sql-ledger/locale/nl/ct
deleted file mode 100644
index 8bda20e..0000000
--- a/sql-ledger/locale/nl/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Crediteurenboeking',
- 'AP Transactions' => 'Crediteurenboekingen',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'BIC' => 'BIC',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Break' => 'Onderbreking',
- 'Cannot delete customer!' => 'Kan klant niet verwijderen!',
- 'Cannot delete vendor!' => 'Kan leverancier niet verwijderen!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Cost' => 'Kost',
- 'Could not save pricelist!' => 'Kon prijslijst niet opslaan!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Customer History' => 'Klant Historie',
- 'Customer Number' => 'Klantnummer',
- 'Customer deleted!' => 'Klant verwijderd!',
- 'Customer saved!' => 'Klant opgeslagen!',
- 'Customers' => 'Klanten',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Discount' => 'Korting',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Klant wijzigen',
- 'Edit Vendor' => 'Leverancier wijzigen',
- 'Employee' => 'Werknemer',
- 'Enddate' => 'Einddatum',
- 'Fax' => 'Fax',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Group' => 'Groep',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Invoice' => 'Factuur',
- 'Item already on pricelist!' => 'Onderdeel al op prijslijst!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Language' => 'Taal',
- 'Leadtime' => 'Levertijd',
- 'Manager' => 'Manager',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'Notes' => 'Opmerkingen',
- 'Number' => 'Nummer',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Orphaned' => 'Wees',
- 'Part Number' => 'Artikel Nummer',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Prijsgroep',
- 'Pricelist' => 'Prijslijst',
- 'Project Number' => 'Projectnummer',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quotation' => 'Offerte',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'SIC' => 'SIC',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Save Pricelist' => 'Prijslijst Opslaan',
- 'Search' => 'Zoek',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Sell Price' => 'Verkoopprijs',
- 'Serial Number' => 'Serienummer',
- 'Shipping Address' => 'Verzendadres',
- 'Startdate' => 'Begindatum',
- 'State' => 'Provincie',
- 'State/Province' => 'Staat/Provincie',
- 'Sub-contract GIFI' => 'GIFI Onderaannemer',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax Number' => 'Belastingnummer',
- 'Tax Number / SSN' => 'Belastingnummer / Pers.nr.',
- 'Taxable' => 'Belastbaar',
- 'Terms' => 'Termijn',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Type of Business' => 'Branche',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor History' => 'Leverancier Historie',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoices' => 'Inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor deleted!' => 'Leverancier verwijderd!',
- 'Vendor saved!' => 'Leverancier opgeslagen!',
- 'Vendors' => 'Leveranciers',
- 'days' => 'dagen',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'crediteurenboeking' => 'ap_transaction',
- 'debiteurenboeking' => 'ar_transaction',
- 'klant_toevoegen' => 'add_customer',
- 'leverancier_toevoegen' => 'add_vendor',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'prijslijst' => 'pricelist',
- 'inkooporder' => 'purchase_order',
- 'offerte' => 'quotation',
- 'offerteaanvraag' => 'rfq',
- 'verkoopfactuur' => 'sales_invoice',
- 'verkooporder' => 'sales_order',
- 'opslaan' => 'save',
- 'prijslijst_opslaan' => 'save_pricelist',
- 'bijwerken' => 'update',
- 'inkoopfaktuur' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/gl b/sql-ledger/locale/nl/gl
deleted file mode 100644
index 82a5eab..0000000
--- a/sql-ledger/locale/nl/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Crediteurenboeking',
- 'AR Transaction' => 'Debiteurenboeking',
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Cash Transfer Transaction' => 'Geldoverboeking toevoegen',
- 'Add General Ledger Transaction' => 'Journaalpost toevoegen',
- 'Address' => 'Adres',
- 'All' => 'Allemaal',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Asset' => 'Activa (bezittingen)',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Confirm!' => 'Bevestig!',
- 'Continue' => 'Verder',
- 'Contra' => 'Tegen',
- 'Credit' => 'Credit',
- 'Current' => 'Huidig',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Edit Cash Transfer Transaction' => 'Kasoverboeking wijzigen',
- 'Edit General Ledger Transaction' => 'Boeking in grootboek wijzigen',
- 'Equity' => 'Passiva/Eigen Vermogen',
- 'Expense' => 'Onkosten',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Grootboekboeking (memoriaal) ',
- 'General Ledger' => 'Grootboek',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income' => 'Inkomsten',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Liability' => 'Passiva',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Month' => 'Maand',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance transaction!' => 'Boeking is niet in evenwicht',
- 'Period' => 'Periode',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Quarter' => 'Kwartaal',
- 'R' => 'R',
- 'Reference' => 'Referentie',
- 'Reference missing!' => 'Referentie ontbreekt!',
- 'Reports' => 'Rapporten',
- 'Sales Invoice ' => 'Verkoopfactuur ',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Transaction Date missing!' => 'Boekingsdatum ontbreekt!',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Update' => 'Bijwerken',
- 'Vendor Invoice ' => 'Inkoopfaktuur ',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warning!' => 'Waarschuwing!',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'crediteurenboeking' => 'ap_transaction',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'grootboekboeking_(memoriaal)_' => 'gl_transaction',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'verkoopfactuur_' => 'sales_invoice_',
- 'bijwerken' => 'update',
- 'inkoopfaktuur_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/hr b/sql-ledger/locale/nl/hr
deleted file mode 100644
index 7c4abfe..0000000
--- a/sql-ledger/locale/nl/hr
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'Above' => 'Boven',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Deduction' => 'Korting toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Address' => 'Adres',
- 'Administrator' => 'Beheerder',
- 'After Deduction' => 'Na korting',
- 'All' => 'Allemaal',
- 'Allowances' => 'Toelagen',
- 'Amount' => 'Bedrag',
- 'Amount missing!' => 'Bedrag ontbreekt',
- 'BIC' => 'BIC',
- 'Based on' => 'Gebaseerd op',
- 'Before Deduction' => 'Voor korting',
- 'Below' => 'Onder',
- 'City' => 'Stad',
- 'Continue' => 'Verder',
- 'Country' => 'Land',
- 'Deduct after' => 'Verminder na',
- 'Deduction deleted!' => 'Korting verwijderd!',
- 'Deduction saved!' => 'Korting opgeslagen!',
- 'Deductions' => 'Kortingen',
- 'Delete' => 'Verwijder',
- 'Description' => 'Omschrijving',
- 'Description missing!' => 'Omschrijving ontbreekt',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Korting wijzigen',
- 'Edit Employee' => 'Werknemer wijzigen',
- 'Employee' => 'Werknemer',
- 'Employee Name' => 'Werknemer Naam',
- 'Employee Number' => 'Werknemer Nummer',
- 'Employee deleted!' => 'Werknemer verwijderd',
- 'Employee pays' => 'Werknemers betalingen',
- 'Employee saved!' => 'Werknemer opgeslagen!',
- 'Employees' => 'Werknemers',
- 'Employer' => 'Werkgever',
- 'Employer pays' => 'Werkgever betalingen',
- 'Enddate' => 'Einddatum',
- 'Expense' => 'Onkosten',
- 'Home Phone' => 'Thuistelefoon',
- 'IBAN' => 'IBAN',
- 'ID' => 'ID',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Login' => 'Login',
- 'Manager' => 'Manager',
- 'Maximum' => 'Maximum',
- 'Name' => 'Naam',
- 'Name missing!' => 'Naam ontbreekt!',
- 'Notes' => 'Opmerkingen',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Wees',
- 'Payroll Deduction' => 'Loonkorting',
- 'Rate' => 'Percentage',
- 'Rate missing!' => 'Percentage ontbreekt!',
- 'Role' => 'Rol',
- 'S' => 'S',
- 'SSN' => 'Pers.nr.',
- 'Sales' => 'Verkoop',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Startdate' => 'Begindatum',
- 'State/Province' => 'Staat/Provincie',
- 'Update' => 'Bijwerken',
- 'User' => 'Gebruiker',
- 'Work Phone' => 'Bedrijfstelefoon',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'korting_toevoegen' => 'add_deduction',
- 'werknemer_toevoegen' => 'add_employee',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ic b/sql-ledger/locale/nl/ic
deleted file mode 100644
index f594c9f..0000000
--- a/sql-ledger/locale/nl/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accrual' => 'Opeengestapeld',
- 'Active' => 'Actief',
- 'Add' => 'Toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Assemblies' => 'Assemblages',
- 'Assemblies restocked!' => 'Assemblage naar voorraad geboekt',
- 'Assembly' => 'Assemblage',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'BOM' => 'Onderdelenlijst',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Break' => 'Onderbreking',
- 'COGS' => 'Kostprijs Verkopen',
- 'Cannot delete item!' => 'Kan onderdeel niet verwijderen!',
- 'Cannot stock assemblies!' => 'Kan assemblages niet in voorraad nemen!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Check Inventory' => 'Inventaris controleren',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Components' => 'Componenten',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Cost' => 'Kost',
- 'Country' => 'Land',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'Drawing' => 'Tekening',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Assembly' => 'Assemblage wijzigen',
- 'Edit Labor/Overhead' => 'Arbeid/Overheadskosten wijzigen',
- 'Edit Part' => 'Artikel wijzigen',
- 'Edit Service' => 'Dienst wijzigen',
- 'Employee' => 'Werknemer',
- 'Expense' => 'Onkosten',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Image' => 'Plaatje',
- 'In-line' => 'In Lijn',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income' => 'Inkomsten',
- 'Individual Items' => 'Onderliggende onderdelen',
- 'Inventory' => 'Voorraad',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een assemblage als \'niet actief\' kan worden gemarkeerd.',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Aanwezige voorraad moet nul zijn voordat een product als \'niet actief\' kan worden gemarkeerd.',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item deleted!' => 'Onderdeel verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Items' => 'Onderdelen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Leadtime' => 'Levertijd',
- 'Line Total' => 'Totaal Regel',
- 'Link Accounts' => 'Rekeningen verbinden',
- 'List' => 'Weergeven',
- 'List Price' => 'Catalogusprijs',
- 'Make' => 'Fabrikant',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'Markup' => 'Winstmarge',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Type',
- 'Name' => 'Naam',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Obsolete' => 'Niet actief',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'Op voorraad',
- 'Open' => 'Open',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Orphaned' => 'Wees',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Parts' => 'Artikelen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Pricegroup' => 'Prijsgroep',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quantity exceeds available units to stock!' => 'Aantal is hoger dan de aanwezige voorraad!',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'ROP' => 'Minimum voorraad',
- 'Recd' => 'Ontvangen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Sell' => 'Verkoop',
- 'Sell Price' => 'Verkoopprijs',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Serial Number' => 'Serienummer',
- 'Service' => 'Dienst',
- 'Services' => 'Diensten',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'Short' => 'Kort',
- 'State/Province' => 'Staat/Provincie',
- 'Stock' => 'Voorraad',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'To' => 'Tot',
- 'Top Level' => 'Top Niveau',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Unit' => 'Eenheid',
- 'Unit of measure' => 'Rekeneenheid',
- 'Update' => 'Bijwerken',
- 'Updated' => 'Bijgewerkt',
- 'Vendor' => 'Leverancier',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Invoices' => 'Inkoopfacturen',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warehouse' => 'Magazijn',
- 'Weight' => 'Gewicht',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'days' => 'dagen',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'assemblage_toevoegen' => 'add_assembly',
- 'arbeid/overheadskosten_toevoegen' => 'add_labor/overhead',
- 'artikel_toevoegen' => 'add_part',
- 'dienst_toevoegen' => 'add_service',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'assemblage_wijzigen' => 'edit_assembly',
- 'artikel_wijzigen' => 'edit_part',
- 'dienst_wijzigen' => 'edit_service',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/io b/sql-ledger/locale/nl/io
deleted file mode 100644
index 703973e..0000000
--- a/sql-ledger/locale/nl/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Customer Number' => 'Klantnummer',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delivery Date' => 'Leverdatum',
- 'Description' => 'Omschrijving',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Unit' => 'Eenheid',
- 'Vendor Number' => 'Leveranciernummer',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ir b/sql-ledger/locale/nl/ir
deleted file mode 100644
index 1749fcf..0000000
--- a/sql-ledger/locale/nl/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Customer Number' => 'Klantnummer',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Vendor Invoice' => 'Inkoopfactuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Screen' => 'Scherm',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Shipping Address' => 'Verzendadres',
- 'Source' => 'Herkomst',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'Yes' => 'Ja',
- 'ea' => 'voor',
- 'posted!' => 'Geboekt!',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'inkooporder' => 'purchase_order',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/is b/sql-ledger/locale/nl/is
deleted file mode 100644
index e0ead13..0000000
--- a/sql-ledger/locale/nl/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Branche',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'In-line' => 'In Lijn',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Print and Post' => 'Afdrukken en Boeken',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Order' => 'Verkooporder',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax Included' => 'Inclusief Belasting',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'Yes' => 'Ja',
- 'ea' => 'voor',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'e_mail' => 'e_mail',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'afdrukken_en_boeken' => 'print_and_post',
- 'verkooporder' => 'sales_order',
- 'verzenden_aan' => 'ship_to',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/login b/sql-ledger/locale/nl/login
deleted file mode 100644
index bf6dcc4..0000000
--- a/sql-ledger/locale/nl/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Bedrijf',
- 'Continue' => 'Verder',
- 'Dataset is newer than version!' => 'Dataset is nieuwer dan de versie!',
- 'Incorrect Dataset version!' => 'Ongeldige versie Dataset!!',
- 'Incorrect Password!' => 'Verkeerd paswoord',
- 'Login' => 'Login',
- 'Name' => 'Naam',
- 'Password' => 'Wachtwoord',
- 'Upgrading to Version' => 'Opwaarderen naar Versie',
- 'Version' => 'Versie',
- 'You did not enter a name!' => 'U heeft geen naam gegeven!',
- 'done' => 'gebeurd',
- 'is not a member!' => 'is geen gebruiker',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/menu b/sql-ledger/locale/nl/menu
deleted file mode 100644
index a2d53ba..0000000
--- a/sql-ledger/locale/nl/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Crediteuren',
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AP Transaction' => 'Crediteurenboeking',
- 'AR' => 'Debiteuren',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Transaction' => 'Debiteurenboeking',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Account' => 'Rekening toevoegen',
- 'Add Assembly' => 'Assemblage toevoegen',
- 'Add Business' => 'Branche toevoegen',
- 'Add Customer' => 'Klant toevoegen',
- 'Add Department' => 'Afdeling toevoegen',
- 'Add Employee' => 'Werknemer toevoegen',
- 'Add GIFI' => 'Toevoegen GIFI',
- 'Add Group' => 'Groep toevoegen',
- 'Add Labor/Overhead' => 'Arbeid/Overheadskosten toevoegen',
- 'Add Language' => 'Taal toevoegen',
- 'Add Part' => 'Artikel toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'Add SIC' => 'SIC toevoegen',
- 'Add Service' => 'Dienst toevoegen',
- 'Add Transaction' => 'Boeking toevoegen',
- 'Add Vendor' => 'Leverancier toevoegen',
- 'Add Warehouse' => 'Magazijn toevoegen',
- 'All Items' => 'Alle onderdelen',
- 'Assemblies' => 'Assemblages',
- 'Audit Control' => 'Accountants Controle',
- 'Backup' => 'Backup',
- 'Balance Sheet' => 'Balans',
- 'Batch Printing' => 'Batch-printing',
- 'Bin List' => 'Locatielijst',
- 'Bin Lists' => 'Verzamel lijsten',
- 'Cash' => 'Kas (contant)',
- 'Chart of Accounts' => 'Rekeningstelsel',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componenten',
- 'Customers' => 'Klanten',
- 'Defaults' => 'Standaard',
- 'Departments' => 'Afdelingen',
- 'Description' => 'Omschrijving',
- 'Employees' => 'Werknemers',
- 'General Ledger' => 'Grootboek',
- 'Goods & Services' => 'Goederen & Diensten',
- 'Groups' => 'Groepen',
- 'HR' => 'Personeel',
- 'HTML Templates' => 'HTML Sjablonen',
- 'History' => 'Geschiedenis',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Invoice' => 'Factuur',
- 'LaTeX Templates' => 'LaTeX Sjablonen',
- 'Labor/Overhead' => 'Arbeid/Overheadskosten',
- 'Language' => 'Taal',
- 'List Accounts' => 'Rekeningen weergeven',
- 'List Businesses' => 'Zaaktypes weergeven',
- 'List Departments' => 'Afdelingen weergeven',
- 'List GIFI' => 'GIFI weergeven',
- 'List Languages' => 'Talen weergeven',
- 'List Projects' => 'Projecten weergeven',
- 'List SIC' => 'SIC weergeven',
- 'List Warehouses' => 'Magazijnen weergeven',
- 'Logout' => 'Logout',
- 'Non-taxable' => 'Onbelast',
- 'Open' => 'Open',
- 'Order Entry' => 'Order invoer',
- 'Outstanding' => 'Openstaand',
- 'POS' => 'Kassa',
- 'POS Invoice' => 'Kassabon',
- 'Packing List' => 'Pakbon',
- 'Packing Lists' => 'Pakbonnen',
- 'Parts' => 'Artikelen',
- 'Payment' => 'Betaling',
- 'Payments' => 'Betalingen',
- 'Pick List' => 'Pakbon',
- 'Pick Lists' => 'Pakbonnen',
- 'Preferences' => 'Instellingen',
- 'Pricegroups' => 'Prijsgroepen',
- 'Print' => 'Afdrukken',
- 'Projects' => 'Projecten',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Quotation' => 'Offerte',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQs' => 'Offerteaanvragen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Receive' => 'Inkomende zending',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reports' => 'Rapporten',
- 'SIC' => 'SIC',
- 'Sale' => 'Verkoopfactuur',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Invoices' => 'Verkoopfacturen',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Save to File' => 'Opslaan als bestand',
- 'Search' => 'Zoek',
- 'Send by E-Mail' => 'Verzenden per E-mail',
- 'Services' => 'Diensten',
- 'Ship' => 'Verzenden',
- 'Shipping' => 'Zendingen',
- 'Statement' => 'Overzicht',
- 'Stock Assembly' => 'Assemblage voorraad',
- 'Stylesheet' => 'Stylesheet',
- 'System' => 'Systeem',
- 'Tax collected' => 'Belasting Verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Text Templates' => 'Tekst Sjablonen',
- 'Transactions' => 'Boekingen',
- 'Transfer' => 'Overboeking',
- 'Translations' => 'Vertalingen',
- 'Trial Balance' => 'Proefbalans',
- 'Type of Business' => 'Branche',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendors' => 'Leveranciers',
- 'Version' => 'Versie',
- 'Warehouses' => 'Magazijnen',
- 'Work Order' => 'Werkbon',
- 'Work Orders' => 'Werkbonnen',
- 'Yearend' => 'Jaareinde',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/oe b/sql-ledger/locale/nl/oe
deleted file mode 100644
index 1741597..0000000
--- a/sql-ledger/locale/nl/oe
+++ /dev/null
@@ -1,306 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Exchange Rate' => 'Wisselkoers toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Add Vendor Invoice' => 'Inkoop factuur toevoegen',
- 'Address' => 'Adres',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Order Number' => 'Weet u zeker dat u dit ordernummer wilt verwijderen?',
- 'Are you sure you want to delete Quotation Number' => 'Weet u zeker dat u dit offertenummer wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Branche',
- 'C' => 'C',
- 'Cannot delete order!' => 'Kan order niet verwijderen!',
- 'Cannot delete quotation!' => 'Kan offerte niet verwijderen!',
- 'Cannot save order!' => 'Kan order niet opslaan!',
- 'Cannot save quotation!' => 'Kan offerte niet opslaan!',
- 'Cc' => 'Kopie aan',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Could not save!' => 'Kon niet opslaan!',
- 'Could not transfer Inventory!' => 'Kon geen inventaris overboeken!',
- 'Country' => 'Land',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Received' => 'Ontvangstdatum',
- 'Date received missing!' => 'Ontvangstdatum ontbreekt!',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Done' => 'Klaar',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit Purchase Order' => 'Inkooporder wijzigen',
- 'Edit Quotation' => 'Offerte wijzigen',
- 'Edit Request for Quotation' => 'Offerteaanvraag wijzigen',
- 'Edit Sales Order' => 'Verkooporder wijzigen',
- 'Employee' => 'Werknemer',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Internal Notes' => 'Interne notities',
- 'Inventory saved!' => 'Voorraad opgeslagen',
- 'Inventory transferred!' => 'Voorraad overgeheveld',
- 'Invoice' => 'Factuur',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Message' => 'Boodschap',
- 'Month' => 'Maand',
- 'No.' => 'Nr.',
- 'Notes' => 'Opmerkingen',
- 'Nothing entered!' => 'Niets ingevuld!',
- 'Nothing to transfer!' => 'Niets over te boeken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'O' => 'O',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'Order deleted!' => 'Order verwijderd!',
- 'Order processed!' => 'Order verwerkt!',
- 'Order saved!' => 'Order opgeslagen!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Part' => 'Artikel',
- 'Part Number' => 'Artikel Nummer',
- 'Period' => 'Periode',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Print and Save' => 'Afdrukken en Opslaan',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Purchase Orders' => 'Inkooporders',
- 'Qty' => 'Aantal',
- 'Quarter' => 'Kwartaal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation ' => 'Offerte ',
- 'Quotation Date' => 'Offertedatum',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number' => 'Offertenummer',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Quotation deleted!' => 'Offerte verwijderd!',
- 'Quotations' => 'Offertes',
- 'RFQ' => 'Offerteaanvraag',
- 'RFQ ' => 'Offerteaanvraag ',
- 'RFQ Number' => 'Offerteaanvraag nummer',
- 'Recd' => 'Ontvangen',
- 'Receive Merchandise' => 'Goederen Ontvangen',
- 'Remaining' => 'Resterend',
- 'Request for Quotation' => 'Offerteaanvraag',
- 'Request for Quotations' => 'Offerteaanvragen',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Invoice' => 'Verkoopfactuur',
- 'Sales Order' => 'Verkooporder',
- 'Sales Orders' => 'Verkooporders',
- 'Salesperson' => 'Verkoper',
- 'Save' => 'Opslaan',
- 'Save as new' => 'Opslaan als nieuw',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship Merchandise' => 'Goederen Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Date' => 'Verzenddatum',
- 'Shipping Date missing!' => 'Verzenddatum ontbreekt!',
- 'Shipping Point' => 'Verzendpunt',
- 'State/Province' => 'Staat/Provincie',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Terms' => 'Termijn',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transfer' => 'Overboeking',
- 'Transfer Inventory' => 'Inventaris overboeken',
- 'Transfer to' => 'Overboeken naar',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Valid until' => 'Geldig tot',
- 'Vendor' => 'Leverancier',
- 'Vendor Invoice' => 'Inkoopfaktuur',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor missing!' => 'Leverancier ontbreekt!',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Warehouse' => 'Magazijn',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
- 'days' => 'dagen',
- 'ea' => 'voor',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'klaar' => 'done',
- 'e_mail' => 'e_mail',
- 'afdrukken' => 'print',
- 'afdrukken_en_opslaan' => 'print_and_save',
- 'inkooporder' => 'purchase_order',
- 'offerte' => 'quotation',
- 'offerte_' => 'quotation_',
- 'offerteaanvraag' => 'rfq',
- 'offerteaanvraag_' => 'rfq_',
- 'verkoopfactuur' => 'sales_invoice',
- 'verkooporder' => 'sales_order',
- 'opslaan' => 'save',
- 'opslaan_als_nieuw' => 'save_as_new',
- 'verzenden_aan' => 'ship_to',
- 'overboeking' => 'transfer',
- 'bijwerken' => 'update',
- 'inkoopfaktuur' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/pe b/sql-ledger/locale/nl/pe
deleted file mode 100644
index ebe9013..0000000
--- a/sql-ledger/locale/nl/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Add Group' => 'Groep toevoegen',
- 'Add Pricegroup' => 'Prijsgroep toevoegen',
- 'Add Project' => 'Project toevoegen',
- 'All' => 'Allemaal',
- 'Continue' => 'Verder',
- 'Delete' => 'Verwijder',
- 'Description' => 'Omschrijving',
- 'Description Translations' => 'Omschrijving Vertaling',
- 'Edit Description Translations' => 'Wijzig Omschrijving Vertaling',
- 'Edit Group' => 'Groep wijzigen',
- 'Edit Pricegroup' => 'Prijsgroep wijzigen ',
- 'Edit Project' => 'Project wijzigen',
- 'Group' => 'Groep',
- 'Group Translations' => 'Groep vertaling',
- 'Group deleted!' => 'Groep verwijderd!',
- 'Group missing!' => 'Groep ontbreekt!',
- 'Group saved!' => 'Groep opgeslagen!',
- 'Groups' => 'Groepen',
- 'Language' => 'Taal',
- 'Languages not defined!' => 'Taal niet gedefinieerd!',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Wees',
- 'Pricegroup' => 'Prijsgroep',
- 'Pricegroup deleted!' => 'Prijsgroep verwijderd!',
- 'Pricegroup missing!' => 'Prijsgroep mist!',
- 'Pricegroup saved!' => 'Prijsgroep opgeslagen!',
- 'Pricegroups' => 'Prijsgroepen',
- 'Project' => 'Project',
- 'Project Description Translations' => 'Project Omschrijving Vertaling',
- 'Project Number' => 'Projectnummer',
- 'Project Number missing!' => 'Projectnummer ontbreekt!',
- 'Project deleted!' => 'Project verwijderd!',
- 'Project saved!' => 'Project opgeslagen!',
- 'Projects' => 'Projecten',
- 'Save' => 'Opslaan',
- 'Translation' => 'Vertaling',
- 'Translation deleted!' => 'Vertaling verwijderd!',
- 'Translations saved!' => 'Vertalingen opgeslagen!',
- 'Update' => 'Bijwerken',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'groep_toevoegen' => 'add_group',
- 'prijsgroep_toevoegen' => 'add_pricegroup',
- 'project_toevoegen' => 'add_project',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'opslaan' => 'save',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/pos b/sql-ledger/locale/nl/pos
deleted file mode 100644
index 485a1d0..0000000
--- a/sql-ledger/locale/nl/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Change' => 'Wijzig',
- 'Continue' => 'Verder',
- 'Credit Limit' => 'Kredietlimiet',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Customer' => 'Klant',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Delete' => 'Verwijder',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Edit POS Invoice' => 'Kassabon wijzigen',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'From' => 'Van',
- 'Language' => 'Taal',
- 'Memo' => 'Memo',
- 'Month' => 'Maand',
- 'Number' => 'Nummer',
- 'Open' => 'Open',
- 'Paid' => 'Betaald',
- 'Period' => 'Periode',
- 'Post' => 'Boek',
- 'Posted!' => 'Geboekt!',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Printed' => 'Afgedrukt',
- 'Qty' => 'Aantal',
- 'Quarter' => 'Kwartaal',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Source' => 'Herkomst',
- 'Subtotal' => 'Subtotaal',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Year' => 'Jaar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'boek' => 'post',
- 'afdrukken' => 'print',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/ps b/sql-ledger/locale/nl/ps
deleted file mode 100644
index 4e1a794..0000000
--- a/sql-ledger/locale/nl/ps
+++ /dev/null
@@ -1,341 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'AR Outstanding' => 'Openstaande Debiteuren',
- 'AR Transaction' => 'Debiteurenboeking',
- 'AR Transactions' => 'Debiteurenboekingen',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Add AR Transaction' => 'Debiteurenboeking Toevoegen',
- 'Add POS Invoice' => 'Directe verkooporder toevoegen',
- 'Add Purchase Order' => 'Inkooporder toevoegen',
- 'Add Quotation' => 'Offerte toevoegen',
- 'Add Request for Quotation' => 'Offerteaanvraag toevoegen',
- 'Add Sales Invoice' => 'Verkoopfactuur toevoegen',
- 'Add Sales Order' => 'Verkooporder toevoegen',
- 'Address' => 'Adres',
- 'All Accounts' => 'Alle Rekeningen',
- 'Amount' => 'Bedrag',
- 'Amount Due' => 'Verschuldigd bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Are you sure you want to delete Invoice Number' => 'Weet u zeker dat u dit factuurnummer wilt verwijderen?',
- 'Are you sure you want to delete Transaction' => 'Weet u zeker dat u deze boeking wilt verwijderen?',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Billing Address' => 'Facturatieadres',
- 'Bin' => 'Locatie',
- 'Bin List' => 'Locatielijst',
- 'Business' => 'Branche',
- 'Cannot delete invoice!' => 'Kan factuur niet verwijderen!',
- 'Cannot delete transaction!' => 'Kan boeking niet verwijderen!',
- 'Cannot post invoice for a closed period!' => 'Kan geen factuur boeken in afgesloten periode!',
- 'Cannot post invoice!' => 'Kan factuur niet boeken!',
- 'Cannot post payment for a closed period!' => 'Kan geen betaling boeken voor afgesloten periode!',
- 'Cannot post transaction for a closed period!' => 'Kan geen boeking maken in afgesloten periode',
- 'Cannot post transaction!' => 'Kan transactie niet boeken!',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Change' => 'Wijzig',
- 'Check' => 'Cheque',
- 'City' => 'Stad',
- 'Closed' => 'Afgesloten',
- 'Company Name' => 'Bedrijfsnaam',
- 'Compare to' => 'Vergelijk met',
- 'Confirm!' => 'Bevestig!',
- 'Contact' => 'Contact',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Country' => 'Land',
- 'Credit' => 'Credit',
- 'Credit Limit' => 'Kredietlimiet',
- 'Curr' => 'Val.',
- 'Currency' => 'Valuta',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Onverdeeld Resultaat Boekjaar',
- 'Customer' => 'Klant',
- 'Customer Number' => 'Klantnummer',
- 'Customer missing!' => 'Klant ontbreekt!',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betaaldatum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Delete' => 'Verwijder',
- 'Delivery Date' => 'Leverdatum',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Due Date' => 'Vervaldatum',
- 'Due Date missing!' => 'Vervaldatum ontbreekt!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'E-mailed' => 'Gemaild',
- 'Edit AR Transaction' => 'Wijzig Debieteurenboeking',
- 'Edit POS Invoice' => 'Kassabon wijzigen',
- 'Edit Sales Invoice' => 'Verkoopfactuur wijzigen',
- 'Exch' => 'Wisselkoers',
- 'Exchange Rate' => 'Wisselkoers',
- 'Exchange rate for payment missing!' => 'Wisselkoers voor Betaling ontbreekt!',
- 'Exchange rate missing!' => 'Wisselkoers ontbreekt!',
- 'Extended' => 'Uitgebreid',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Group' => 'Groep',
- 'Group Items' => 'Groepeer Onderdelen',
- 'Heading' => 'Kopregel',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Internal Notes' => 'Interne notities',
- 'Invoice' => 'Factuur',
- 'Invoice Date' => 'Factuurdatum',
- 'Invoice Date missing!' => 'Factuurdatum ontbreekt!',
- 'Invoice Number' => 'Factuurnummer',
- 'Invoice Number missing!' => 'Factuurnummer ontbreekt!',
- 'Invoice deleted!' => 'Factuur verwijderd!',
- 'Invoice posted!' => 'Factuur geboekt!',
- 'Invoice processed!' => 'Factuur verwerkt',
- 'Item not on file!' => 'Dit onderdeel is niet in de database gevonden!',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Manager' => 'Manager',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'Month' => 'Maand',
- 'N/A' => 'N/A',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Notes' => 'Opmerkingen',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nothing to print!' => 'Niets af te drukken!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Getal ontbreekt in Regel',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Open',
- 'Order' => 'Bestelling',
- 'Order Date missing!' => 'Geen order datum aanwezig',
- 'Order Number' => 'Referentie',
- 'Order Number missing!' => 'Geen ordernummer aanwezig',
- 'PDF' => 'PDF',
- 'Packing List' => 'Pakbon',
- 'Packing List Date missing!' => 'Pakbon datum ontbreekt!',
- 'Packing List Number missing!' => 'Pakbon nummer ontbreekt!',
- 'Paid' => 'Betaald',
- 'Part' => 'Artikel',
- 'Payment date missing!' => 'Geen betalingsdatum aanwezig!',
- 'Payments' => 'Betalingen',
- 'Period' => 'Periode',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Pakbon',
- 'Post' => 'Boek',
- 'Post as new' => 'Boek als nieuw',
- 'Posted!' => 'Geboekt!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Prijs',
- 'Print' => 'Afdrukken',
- 'Print and Post' => 'Afdrukken en Boeken',
- 'Printed' => 'Afgedrukt',
- 'Project' => 'Project',
- 'Project Number' => 'Projectnummer',
- 'Project Transactions' => 'Projectboekingen',
- 'Project not on file!' => 'Onbekend project!',
- 'Purchase Order' => 'Inkooporder',
- 'Qty' => 'Aantal',
- 'Quarter' => 'Kwartaal',
- 'Queue' => 'Wachtrij',
- 'Queued' => 'In de wachtrij gezet',
- 'Quotation' => 'Offerte',
- 'Quotation Date missing!' => 'Offertedatum ontbreekt!',
- 'Quotation Number missing!' => 'Offertenummer ontbreekt!',
- 'Recd' => 'Ontvangen',
- 'Receipt' => 'Ontvangstbewijs',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Record in' => 'Boeken op',
- 'Remaining' => 'Resterend',
- 'Report for' => 'Rapport voor',
- 'Required by' => 'Nodig voor',
- 'SKU' => 'SKU',
- 'Sales Invoice.' => 'Verkoopfactuur.',
- 'Sales Order' => 'Verkooporder',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select Printer or Queue!' => 'Selecteer Printer of Wachtrij',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the items below' => 'Kies een van de onderstaande onderdelen',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select payment' => 'Kies betaling',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => 'Serienr',
- 'Service' => 'Dienst',
- 'Ship' => 'Verzenden',
- 'Ship to' => 'Verzenden aan',
- 'Ship via' => 'Verzenden via',
- 'Shipping Address' => 'Verzendadres',
- 'Shipping Point' => 'Verzendpunt',
- 'Source' => 'Herkomst',
- 'Standard' => 'Standaard',
- 'State/Province' => 'Staat/Provincie',
- 'Statement' => 'Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax Included' => 'Inclusief Belasting',
- 'Tax collected' => 'Belasting Verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trade Discount' => 'Handelskorting',
- 'Transaction' => 'Boeking',
- 'Transaction deleted!' => 'Boeking verwijderd!',
- 'Transaction posted!' => 'Boeking opgeslagen!',
- 'Translation not on file!' => 'Vertaling niet aanwezig!',
- 'Trial Balance' => 'Proefbalans',
- 'Unit' => 'Eenheid',
- 'Update' => 'Bijwerken',
- 'Vendor' => 'Leverancier',
- 'Vendor Number' => 'Leveranciernummer',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'What type of item is this?' => 'Wat voor soort artikel is dit?',
- 'Work Order' => 'Werkbon',
- 'Year' => 'Jaar',
- 'Yes' => 'Ja',
- 'as at' => 'per',
- 'ea' => 'voor',
- 'for Period' => 'voor periode',
- 'sent' => 'verzonden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debiteurenboeking' => 'ar_transaction',
- 'verder' => 'continue',
- 'verwijder' => 'delete',
- 'e_mail' => 'e_mail',
- 'boek' => 'post',
- 'boek_als_nieuw' => 'post_as_new',
- 'afdrukken' => 'print',
- 'afdrukken_en_boeken' => 'print_and_post',
- 'verkoopfactuur.' => 'sales_invoice.',
- 'verkooporder' => 'sales_order',
- 'selecteer_alles' => 'select_all',
- 'verzenden_aan' => 'ship_to',
- 'bijwerken' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/pw b/sql-ledger/locale/nl/pw
deleted file mode 100644
index a0d3a13..0000000
--- a/sql-ledger/locale/nl/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Verder',
- 'Password' => 'Wachtwoord',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'verder' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/rc b/sql-ledger/locale/nl/rc
deleted file mode 100644
index cc78f64..0000000
--- a/sql-ledger/locale/nl/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Rekening',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Beginning Balance' => 'Begin Balans',
- 'Cleared' => 'Opgeschoond',
- 'Continue' => 'Verder',
- 'Current' => 'Huidig',
- 'Date' => 'Datum',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decrease' => 'Vermindering',
- 'Deposit' => 'Storting',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Difference' => 'Verschil',
- 'Done' => 'Klaar',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Increase' => 'Toename',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Month' => 'Maand',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance!' => 'Niet in evenwicht!',
- 'Outstanding' => 'Openstaand',
- 'Payment' => 'Betaling',
- 'Period' => 'Periode',
- 'Quarter' => 'Kwartaal',
- 'R' => 'R',
- 'Reconciliation' => 'Boekingen Verwerken',
- 'Reconciliation Report' => 'Reconciliatie rapport',
- 'Select all' => 'Selecteer alles',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Statement Balance' => 'Saldo Overzicht',
- 'Summary' => 'Overzicht',
- 'To' => 'Tot',
- 'Update' => 'Bijwerken',
- 'Year' => 'Jaar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'verder' => 'continue',
- 'klaar' => 'done',
- 'selecteer_alles' => 'select_all',
- 'bijwerken' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/nl/rp b/sql-ledger/locale/nl/rp
deleted file mode 100644
index 037d19d..0000000
--- a/sql-ledger/locale/nl/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Crediteuren Ouderdomsoverzicht',
- 'AR Aging' => 'Debiteuren Ouderdomsoverzicht',
- 'Account' => 'Rekening',
- 'Account Number' => 'Rekeningnummer',
- 'Accounting Menu' => 'Boekhoudmenu',
- 'Accounts' => 'Rekeningen',
- 'Accrual' => 'Opeengestapeld',
- 'Address' => 'Adres',
- 'All Accounts' => 'Alle Rekeningen',
- 'Amount' => 'Bedrag',
- 'Apr' => 'Apr',
- 'April' => 'April',
- 'Attachment' => 'Bijlage',
- 'Aug' => 'Aug',
- 'August' => 'Augustus',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Balans',
- 'Bcc' => 'Onzichtbare kopie aan',
- 'Cash' => 'Kas (contant)',
- 'Cc' => 'Kopie aan',
- 'Compare to' => 'Vergelijk met',
- 'Continue' => 'Verder',
- 'Copies' => 'Kopieën',
- 'Credit' => 'Credit',
- 'Curr' => 'Val.',
- 'Current' => 'Huidig',
- 'Current Earnings' => 'Onverdeeld Resultaat Boekjaar',
- 'Customer' => 'Klant',
- 'Customer not on file!' => 'Klant bestaat niet!',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'Dec',
- 'December' => 'December',
- 'Decimalplaces' => 'Aantal Decimalen',
- 'Department' => 'Afdeling',
- 'Description' => 'Omschrijving',
- 'Detail' => 'Detail',
- 'Due Date' => 'Vervaldatum',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Overzicht aan',
- 'E-mail address missing!' => 'E-mailadres ontbreekt!',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Van',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Kopregel',
- 'ID' => 'ID',
- 'In-line' => 'In Lijn',
- 'Include Exchange Rate Difference' => 'Inclusief wisselkoersverschil',
- 'Include in Report' => 'Toevoegen aan Uitvoer',
- 'Income Statement' => 'Inkomstenoverzicht',
- 'Invoice' => 'Factuur',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Taal',
- 'Mar' => 'Mrt',
- 'March' => 'Maart',
- 'May' => 'Mei',
- 'May ' => 'Mei',
- 'Memo' => 'Memo',
- 'Message' => 'Boodschap',
- 'Method' => 'Methode',
- 'Month' => 'Maand',
- 'N/A' => 'N/A',
- 'Non-taxable Purchases' => 'Onbelaste aankopen',
- 'Non-taxable Sales' => 'Onbelaste verkopen',
- 'Nothing selected!' => 'Niets geselecteerd!',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order' => 'Bestelling',
- 'PDF' => 'PDF',
- 'Payments' => 'Betalingen',
- 'Period' => 'Periode',
- 'Postscript' => 'Postscript',
- 'Print' => 'Afdrukken',
- 'Project' => 'Project',
- 'Project Number' => 'Projectnummer',
- 'Project Transactions' => 'Projectboekingen',
- 'Project not on file!' => 'Onbekend project!',
- 'Quarter' => 'Kwartaal',
- 'Receipts' => 'Ontvangstbewijzen',
- 'Report for' => 'Rapport voor',
- 'Salesperson' => 'Verkoper',
- 'Screen' => 'Scherm',
- 'Select all' => 'Selecteer alles',
- 'Select from one of the names below' => 'Kies een van de onderstaande namen',
- 'Select from one of the projects below' => 'Kies een van de onderstaande projecten',
- 'Select postscript or PDF!' => 'Kies postscript of PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Herkomst',
- 'Standard' => 'Standaard',
- 'Statement' => 'Overzicht',
- 'Statement sent to' => 'Overzicht verzonden aan',
- 'Statements sent to printer!' => 'Overzichten afgedrukt',
- 'Subject' => 'Onderwerp',
- 'Subtotal' => 'Subtotaal',
- 'Summary' => 'Overzicht',
- 'Tax' => 'Belasting',
- 'Tax collected' => 'Belasting Verschuldigd',
- 'Tax paid' => 'Belasting Betaald',
- 'Till' => 'Kassa',
- 'To' => 'Tot',
- 'Total' => 'Totaal',
- 'Trial Balance' => 'Proefbalans',
- 'Vendor' => 'Leverancier',
- 'Vendor not on file!' => 'Leverancier bestaat niet!',
- 'Year' => 'Jaar',
- 'as at' => 'per',
- 'for Period' => 'voor periode',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'verder' => 'continue',
- 'e_mail' => 'e_mail',
- 'afdrukken' => 'print',
- 'selecteer_alles' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/COPYING b/sql-ledger/locale/pa/COPYING
deleted file mode 100644
index 44b6a93..0000000
--- a/sql-ledger/locale/pa/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Spanish texts:
-#
-# Author: Maria Gabriela Fong <mgfong@maga.tzo.org>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/pa/LANGUAGE b/sql-ledger/locale/pa/LANGUAGE
deleted file mode 100644
index aea94ff..0000000
--- a/sql-ledger/locale/pa/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (Panama)
diff --git a/sql-ledger/locale/pa/admin b/sql-ledger/locale/pa/admin
deleted file mode 100644
index b29480b..0000000
--- a/sql-ledger/locale/pa/admin
+++ /dev/null
@@ -1,141 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Agregar Usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'Todos los datasets actualizados',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Cambiar Contraseña de Administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Tabla de Caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de entrada a
-editar',
- 'Company' => 'Compañía',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear set de datos',
- 'DBI not installed!' => 'DBI no instalado!',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => 'Driver de base de datos no revisado',
- 'Database User missing!' => 'No se encuentra usuario de base de datos',
- 'Dataset' => 'Set de datos',
- 'Dataset missing!' => 'No se encuentra Set de datos!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'Formato de Fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar Set de Datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Manejador',
- 'E-mail' => 'Correo Electrónico',
- 'Edit User' => 'Editar Usuario',
- 'Existing Datasets' => 'Sets de dato existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor base de datos',
- 'Hostname missing!' => 'No se encuentra servidor de base de datos',
- 'Language' => 'Lenguaje',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas Plantillas',
- 'No Database Drivers available!' => 'No hay manejador de base de datos
-disponible!',
- 'No Dataset selected!' => 'No se ha seleccionado el set de datos',
- 'Nothing to delete!' => 'Noda que borrar',
- 'Number Format' => 'Formato de Numero',
- 'Oracle Database Administration' => 'Administración de base de datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Administración de base de datos Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se encuentra el Puerto!',
- 'Printer' => 'Impresora',
- 'Save' => 'Salvar',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Estilo de hoja',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Los
-siguientes sets de datos no estan en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Los siguientes datasets necesitan ser actualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. Nada será creado o borrado en esta etapa!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, edite un nombre, cambie el nombre de entrada (login) y guarde los cambios. Un nuevo usuario, con las mismas variables será guardado bajo el nuevo nombre de entrada. (login)',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Actualizar Dataset',
- 'Use Templates' => 'Plantillas de Usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe
-introducir un servidor de base de datos y un puerto para conexiones locales y
-remotas!',
- 'does not exist' => 'No existe',
- 'is already a member!' => 'ya es miembro!',
- 'localhost' => 'servidor local',
- 'successfully created!' => 'creado con éxito!',
- 'successfully deleted!' => 'creado con éxito!',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'agregar_usuario' => 'add_user',
- 'cambiar_contraseña_de_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_set_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_set_de_datos' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'administración_de_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_base_de_datos_pg' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'salvar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'actualizar_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/all b/sql-ledger/locale/pa/all
deleted file mode 100644
index 36d1a94..0000000
--- a/sql-ledger/locale/pa/all
+++ /dev/null
@@ -1,772 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Ctas X Pagar',
- 'AP Aging' => 'Envejecimiento - CxP',
- 'AP Outstanding' => '',
- 'AP Transaction' => '',
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'AR Aging' => 'Envejecimiento - CxC ',
- 'AR Outstanding' => '',
- 'AR Transaction' => '',
- 'AR Transactions' => 'Transacciones de Cuentas por Cobrar',
- 'About' => 'Acerca',
- 'Above' => '',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'No existe el número de cuenta!',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'No existe el tipo de la cuenta!',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => 'Agregar',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Ensamblaje',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Agregar GIFI',
- 'Add General Ledger Transaction' => 'Agregar Transacción - Mayor General',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Agregar Parte',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Transaccion',
- 'Add User' => 'Agregar Usuario',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => 'Todos',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Todos los datasets actualizados',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Total',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la Orden No.:?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Ensamblajes',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de Audito',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'Respaldar datos',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Balance' => '',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Libros estan abiertos',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Numero de Negocio',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'Costo de Ventas',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => '',
- 'Cannot delete default account!' => 'No se puede borrar cuenta por defecto!',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => '',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No puede guardar transaccion para un periodo cerrado',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Cambiar Contraseña de Administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Tabla de Caracteres',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Check' => '',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Haga clic en el nombre de entrada a
-editar',
- 'Close Books up to' => 'Cerrar libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Compañía',
- 'Company Name' => '',
- 'Compare to' => 'Comparar a',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar!',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar a catálogo de cuentas',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear set de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Cliente',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '',
- 'Customer missing!' => '',
- 'Customer not on file!' => '',
- 'Customer saved!' => '',
- 'Customers' => '',
- 'DBI not installed!' => 'DBI no instalado!',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => 'Driver de base de datos no revisado',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Database User missing!' => 'No se encuentra usuario de base de datos',
- 'Dataset' => 'Set de datos',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'No se encuentra Set de datos!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Delete Dataset' => 'Borrar Set de Datos',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => 'Descripción',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit Assembly' => 'Editar Ensamblaje',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit General Ledger Transaction' => 'Editar Transacción de Mayor General',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Editar Parte',
- 'Edit Preferences for' => 'Editar Preferencias para',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => 'Editar Orden de Compra',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => 'Editar Orden de Venta',
- 'Edit Service' => 'Editar Servicio',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit User' => 'Editar Usuario',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Forzar reversión de transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Existing Datasets' => 'Sets de dato existentes',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de Egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en Moneda Extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en Moneda Extranjera',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => 'No se encuentra GIFI',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => 'Mayor General',
- 'Goods & Services' => 'Partes y Servicios',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Servidor base de datos',
- 'Hostname missing!' => 'No se encuentra servidor de base de datos',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => '',
- 'In-line' => 'En-linea',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Incluya en informe',
- 'Include in drop-down menus' => 'Incluya en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluya esta cuenta en las formas del cliente/proveedor para señalar al cliente/proveedor como gravable de impuesto?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Estado de Cuentas',
- 'Incorrect Dataset version!' => 'Version de dataset Incorrecta',
- 'Incorrect Password!' => 'Contraseña Incorrecta!',
- 'Increase' => '',
- 'Individual Items' => 'Items Individuales',
- 'Internal Notes' => '',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar esta parte a obsoleto',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => 'Es esta una cuenta de resumen a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Items' => '',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'Lenguaje',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Últimos Números y Cuentas por Defecto',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos de servidor de base de datos y puerto vacíos al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a',
- 'Line Total' => 'Total de Línea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List' => '',
- 'List Accounts' => 'Listar Cuentas',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Listar GIFI',
- 'List Languages' => '',
- 'List Price' => 'Precio de Lista',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Listar Transacciones',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout',
- 'Make' => 'Marca',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Mensaje',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'N/D',
- 'Name' => 'Nombre',
- 'Name missing!' => '',
- 'New Templates' => 'Nuevas Plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay manejador de base de datos
-disponible!',
- 'No Dataset selected!' => 'No se ha seleccionado el set de datos',
- 'No email address for' => 'Falta dirección email para',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'Noda que borrar',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de Numero',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'O' => '',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'En Existencia',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de base de datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Entry' => 'Orden de Entrada',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => 'Huerfano',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Packing Lists' => '',
- 'Paid' => 'Total Pagado',
- 'Part' => 'Partes',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Partes',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payment posted!' => '',
- 'Payments' => 'Pagos',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administración de base de datos Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Teléfono',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se encuentra el Puerto!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas!',
- 'Prepayment' => '',
- 'Price' => 'Precio',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Impresora',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => 'Por Cobrar',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registrar en',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => 'Remanente',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Reportar por',
- 'Reports' => 'Reportes',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Requerido por',
- 'Retained Earnings' => 'Ganacias Retenidas',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Orden de venta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordenes de venta',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Salvar',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => 'Respaldar a Archivo',
- 'Screen' => 'Pantalla',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de Venta',
- 'Send by E-Mail' => 'Enviar por E-Mail',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Servicio',
- 'Service Items' => 'Items de Servicio',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => '',
- 'Standard' => 'Estandar',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Stylesheet' => 'Estilo de hoja',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas De Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => 'Gravable de Impuesto',
- 'Template saved!' => '',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Crédito',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Los
-siguientes sets de datos no estan en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Los siguientes datasets necesitan ser actualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. Nada será creado o borrado en esta etapa!',
- 'Till' => '',
- 'To' => 'Hasta ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, edite un nombre, cambie el nombre de entrada (login) y guarde los cambios. Un nuevo usuario, con las mismas variables será guardado bajo el nuevo nombre de entrada. (login)',
- 'Top Level' => '',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Falta la fecha de la transacción!',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => 'Retorno de transacciones forzado para todas las fechas',
- 'Transaction reversal enforced up to' => 'Reversal de transacciones forzado hasta ',
- 'Transactions' => 'Transacciones',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Type of Business' => '',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Actualizar Dataset',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Plantillas de Usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '',
- 'Vendor missing!' => '',
- 'Vendor not on file!' => '',
- 'Vendor saved!' => '',
- 'Vendors' => '',
- 'Version' => 'Versión',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de Peso',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No introdujo un nombre!',
- 'You must enter a host and port for local and remote connections!' => 'Debe
-introducir un servidor de base de datos y un puerto para conexiones locales y
-remotas!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'Días',
- 'does not exist' => 'No existe',
- 'done' => '',
- 'ea' => 'c/u',
- 'for Period' => 'para el período',
- 'is already a member!' => 'ya es miembro!',
- 'is not a member!' => 'no es un miembro!',
- 'localhost' => 'servidor local',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'creado con éxito!',
- 'successfully deleted!' => 'creado con éxito!',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/am b/sql-ledger/locale/pa/am
deleted file mode 100644
index 31664e5..0000000
--- a/sql-ledger/locale/pa/am
+++ /dev/null
@@ -1,177 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'About' => 'Acerca',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'No existe el número de cuenta!',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'No existe el tipo de la cuenta!',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Account' => 'Agregar Cuenta',
- 'Add GIFI' => 'Agregar GIFI',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de Audito',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Books are open' => 'Libros estan abiertos',
- 'Business Number' => 'Numero de Negocio',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete default account!' => 'No se puede borrar cuenta por defecto!',
- 'Character Set' => 'Tabla de Caracteres',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Close Books up to' => 'Cerrar libros hasta',
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Copy to COA' => 'Copiar a catálogo de cuentas',
- 'Credit' => 'Crédito',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Dataset' => 'Set de datos',
- 'Date Format' => 'Formato de Fecha',
- 'Debit' => 'Débito',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Description' => 'Descripción',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo Electrónico',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit Preferences for' => 'Editar Preferencias para',
- 'Edit Template' => 'Editar Plantilla',
- 'Enforce transaction reversal for all dates' => 'Forzar reversión de transacciones para todas las fechas',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de Egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en Moneda Extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en Moneda Extranjera',
- 'GIFI' => 'GIFI',
- 'GIFI missing!' => 'No se encuentra GIFI',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluya en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluya esta cuenta en las formas del cliente/proveedor para señalar al cliente/proveedor como gravable de impuesto?',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Is this a summary account to record' => 'Es esta una cuenta de resumen a registrar?',
- 'Language' => 'Lenguaje',
- 'Last Numbers & Default Accounts' => 'Últimos Números y Cuentas por Defecto',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a',
- 'Link' => 'Enlaces',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta dirección email para',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de Numero',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas!',
- 'Printer' => 'Impresora',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Por Cobrar',
- 'Retained Earnings' => 'Ganacias Retenidas',
- 'Save' => 'Salvar',
- 'Service Items' => 'Items de Servicio',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Estilo de hoja',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas De Impuesto',
- 'Transaction reversal enforced for all dates' => 'Retorno de transacciones forzado para todas las fechas',
- 'Transaction reversal enforced up to' => 'Reversal de transacciones forzado hasta ',
- 'User' => 'Usuario',
- 'Version' => 'Versión',
- 'Weight Unit' => 'Unidad de Peso',
- 'Yes' => 'Si',
- 'localhost' => 'servidor local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'agregar_cuenta' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_a_catálogo_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'edit' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'salvar' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ap b/sql-ledger/locale/pa/ap
deleted file mode 100644
index a5e6a0c..0000000
--- a/sql-ledger/locale/pa/ap
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No puede guardar transaccion para un periodo cerrado',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'Paid' => 'Total Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Remaining' => 'Remanente',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Vendor' => 'Proveedor',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ar b/sql-ledger/locale/pa/ar
deleted file mode 100644
index 6b95952..0000000
--- a/sql-ledger/locale/pa/ar
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'AR Transactions' => 'Transacciones de Cuentas por Cobrar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No puede guardar transaccion para un periodo cerrado',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'Paid' => 'Total Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Remaining' => 'Remanente',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/arap b/sql-ledger/locale/pa/arap
deleted file mode 100644
index 92b3b96..0000000
--- a/sql-ledger/locale/pa/arap
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/arapprn b/sql-ledger/locale/pa/arapprn
deleted file mode 100644
index 3f84431..0000000
--- a/sql-ledger/locale/pa/arapprn
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/bp b/sql-ledger/locale/pa/bp
deleted file mode 100644
index abdebdd..0000000
--- a/sql-ledger/locale/pa/bp
+++ /dev/null
@@ -1,39 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de Factura',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Sales Orders' => 'Ordenes de venta',
- 'To' => 'Hasta ',
- 'Vendor' => 'Proveedor',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ca b/sql-ledger/locale/pa/ca
deleted file mode 100644
index fda6aea..0000000
--- a/sql-ledger/locale/pa/ca
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Credit' => 'Crédito',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Incluya en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Listar Transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/cp b/sql-ledger/locale/pa/cp
deleted file mode 100644
index 1c25918..0000000
--- a/sql-ledger/locale/pa/cp
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Invoice' => 'Factura',
- 'Number' => 'Número',
- 'Payment' => 'Pago',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Vendor' => 'Proveedor',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ct b/sql-ledger/locale/pa/ct
deleted file mode 100644
index fb2ac09..0000000
--- a/sql-ledger/locale/pa/ct
+++ /dev/null
@@ -1,112 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'AR Transactions' => 'Transacciones de Cuentas por Cobrar',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo Electrónico',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Language' => 'Lenguaje',
- 'Name' => 'Nombre',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huerfano',
- 'Phone' => 'Teléfono',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cantidad',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save' => 'Salvar',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sell Price' => 'Precio de Venta',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Taxable' => 'Gravable de Impuesto',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'days' => 'Días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'agregar_cliente' => 'add_customer',
- 'agregar_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'orden_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'salvar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/gl b/sql-ledger/locale/pa/gl
deleted file mode 100644
index 4bc238a..0000000
--- a/sql-ledger/locale/pa/gl
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add General Ledger Transaction' => 'Agregar Transacción - Mayor General',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot post transaction for a closed period!' => 'No puede guardar transaccion para un periodo cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crédito',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit General Ledger Transaction' => 'Editar Transacción de Mayor General',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'General Ledger' => 'Mayor General',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Reports' => 'Reportes',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Transaction Date missing!' => 'Falta la fecha de la transacción!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/hr b/sql-ledger/locale/pa/hr
deleted file mode 100644
index 346548d..0000000
--- a/sql-ledger/locale/pa/hr
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrator',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'Expense' => 'Egreso',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Login' => 'Login',
- 'Name' => 'Nombre',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huerfano',
- 'Rate' => 'Tarifa',
- 'Sales' => 'Ventas',
- 'Save' => 'Salvar',
- 'User' => 'Usuario',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'salvar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ic b/sql-ledger/locale/pa/ic
deleted file mode 100644
index 28101ca..0000000
--- a/sql-ledger/locale/pa/ic
+++ /dev/null
@@ -1,190 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add' => 'Agregar',
- 'Add Assembly' => 'Agregar Ensamblaje',
- 'Add Part' => 'Agregar Parte',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Add Service' => 'Agregar Servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Ensamblajes',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'COGS' => 'Costo de Ventas',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Assembly' => 'Editar Ensamblaje',
- 'Edit Part' => 'Editar Parte',
- 'Edit Service' => 'Editar Servicio',
- 'Expense' => 'Egreso',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'In-line' => 'En-linea',
- 'Include in Report' => 'Incluya en informe',
- 'Individual Items' => 'Items Individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar esta parte a obsoleto',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Line Total' => 'Total de Línea',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List Price' => 'Precio de Lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'En Existencia',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Orphaned' => 'Huerfano',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Part' => 'Partes',
- 'Parts' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cantidad',
- 'ROP' => 'ROP',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save' => 'Salvar',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sell Price' => 'Precio de Venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Short' => 'Corto',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta ',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Vendor' => 'Proveedor',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'days' => 'Días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'agregar_ensamblaje' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'agregar_parte' => 'add_part',
- 'agregar_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_ensamblaje' => 'edit_assembly',
- 'editar_parte' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'salvar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/io b/sql-ledger/locale/pa/io
deleted file mode 100644
index a4d63b6..0000000
--- a/sql-ledger/locale/pa/io
+++ /dev/null
@@ -1,96 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'En-linea',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Part' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cantidad',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Unit' => 'Unidad',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ir b/sql-ledger/locale/pa/ir
deleted file mode 100644
index a7f7244..0000000
--- a/sql-ledger/locale/pa/ir
+++ /dev/null
@@ -1,159 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'En-linea',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cantidad',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Remanente',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Source' => 'Fuente',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Vendor' => 'Proveedor',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'orden_de_compra' => 'purchase_order',
- 'update' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/is b/sql-ledger/locale/pa/is
deleted file mode 100644
index c6a8b13..0000000
--- a/sql-ledger/locale/pa/is
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'In-line' => 'En-linea',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cantidad',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Remanente',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Source' => 'Fuente',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'orden_de_venta' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/login b/sql-ledger/locale/pa/login
deleted file mode 100644
index 33ecfd7..0000000
--- a/sql-ledger/locale/pa/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Incorrect Dataset version!' => 'Version de dataset Incorrecta',
- 'Incorrect Password!' => 'Contraseña Incorrecta!',
- 'Login' => 'Login',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No introdujo un nombre!',
- 'is not a member!' => 'no es un miembro!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/menu b/sql-ledger/locale/pa/menu
deleted file mode 100644
index c721ce3..0000000
--- a/sql-ledger/locale/pa/menu
+++ /dev/null
@@ -1,61 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AP Aging' => 'Envejecimiento - CxP',
- 'AR' => 'Ctas X Cobrar',
- 'AR Aging' => 'Envejecimiento - CxC ',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Ensamblaje',
- 'Add Customer' => 'Agregar Cliente',
- 'Add GIFI' => 'Agregar GIFI',
- 'Add Part' => 'Agregar Parte',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Transaccion',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Assemblies' => 'Ensamblajes',
- 'Audit Control' => 'Control de Audito',
- 'Backup' => 'Respaldar datos',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Description' => 'Descripción',
- 'General Ledger' => 'Mayor General',
- 'Goods & Services' => 'Partes y Servicios',
- 'HTML Templates' => 'Plantillas HTML',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Language' => 'Lenguaje',
- 'List Accounts' => 'Listar Cuentas',
- 'List GIFI' => 'Listar GIFI',
- 'Logout' => 'Logout',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Orden de Entrada',
- 'Packing List' => 'Lista de Empaque',
- 'Parts' => 'Partes',
- 'Payment' => 'Pago',
- 'Payments' => 'Pagos',
- 'Preferences' => 'Preferencias',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Reports' => 'Reportes',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save to File' => 'Respaldar a Archivo',
- 'Send by E-Mail' => 'Enviar por E-Mail',
- 'Services' => 'Servicios',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Stylesheet' => 'Estilo de hoja',
- 'System' => 'Sistema',
- 'Transactions' => 'Transacciones',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Version' => 'Versión',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/oe b/sql-ledger/locale/pa/oe
deleted file mode 100644
index b8470af..0000000
--- a/sql-ledger/locale/pa/oe
+++ /dev/null
@@ -1,197 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la Orden No.:?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bin' => 'Bin',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Purchase Order' => 'Editar Orden de Compra',
- 'Edit Sales Order' => 'Editar Orden de Venta',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'In-line' => 'En-linea',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Part' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cantidad',
- 'Remaining' => 'Remanente',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save' => 'Salvar',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Terms' => 'Crédito',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Vendor' => 'Proveedor',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'days' => 'Días',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'done' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'orden_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'salvar' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/pe b/sql-ledger/locale/pa/pe
deleted file mode 100644
index 7709d97..0000000
--- a/sql-ledger/locale/pa/pe
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Language' => 'Lenguaje',
- 'Number' => 'Número',
- 'Orphaned' => 'Huerfano',
- 'Save' => 'Salvar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'salvar' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/pos b/sql-ledger/locale/pa/pos
deleted file mode 100644
index d5ebd2a..0000000
--- a/sql-ledger/locale/pa/pos
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'From' => 'Desde',
- 'Language' => 'Lenguaje',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Total Pagado',
- 'Price' => 'Precio',
- 'Qty' => 'Cantidad',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Remanente',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/ps b/sql-ledger/locale/pa/ps
deleted file mode 100644
index c18dcfa..0000000
--- a/sql-ledger/locale/pa/ps
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Envejecimiento - CxP',
- 'AR Aging' => 'Envejecimiento - CxC ',
- 'AR Transactions' => 'Transacciones de Cuentas por Cobrar',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Orden de Venta',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No puede guardar transaccion para un periodo cerrado',
- 'Closed' => 'Cerrado',
- 'Compare to' => 'Comparar a',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => '$',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'En-linea',
- 'Include in Report' => 'Incluya en informe',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => 'El item no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'N/D',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => 'No se encuentra fecha de Lista de Empaque',
- 'Packing List Number missing!' => 'No se encuentra Número de Lista de Empaque',
- 'Paid' => 'Total Pagado',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Price' => 'Precio',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cantidad',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Remanente',
- 'Report for' => 'Reportar por',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los items',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Source' => 'Fuente',
- 'Standard' => 'Estandar',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Unit' => 'Unidad',
- 'Vendor' => 'Proveedor',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'ea' => 'c/u',
- 'for Period' => 'para el período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'orden_de_venta' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/pw b/sql-ledger/locale/pa/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/pa/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/rc b/sql-ledger/locale/pa/rc
deleted file mode 100644
index 86d2530..0000000
--- a/sql-ledger/locale/pa/rc
+++ /dev/null
@@ -1,55 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Payment' => 'Pago',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'To' => 'Hasta ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pa/rp b/sql-ledger/locale/pa/rp
deleted file mode 100644
index cc1f7df..0000000
--- a/sql-ledger/locale/pa/rp
+++ /dev/null
@@ -1,120 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Envejecimiento - CxP',
- 'AR Aging' => 'Envejecimiento - CxC ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Compare to' => 'Comparar a',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => '$',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'En-linea',
- 'Include in Report' => 'Incluya en informe',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Language' => 'Lenguaje',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'N/D',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'Payments' => 'Pagos',
- 'Report for' => 'Reportar por',
- 'Screen' => 'Pantalla',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estandar',
- 'Subject' => 'Sujeto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Vendor' => 'Proveedor',
- 'for Period' => 'para el período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/COPYING b/sql-ledger/locale/pl/COPYING
deleted file mode 100644
index e8ae224..0000000
--- a/sql-ledger/locale/pl/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Polish texts:
-#
-# Author: Peter Dabrowski <meritage@mail.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/pl/LANGUAGE b/sql-ledger/locale/pl/LANGUAGE
deleted file mode 100644
index 692d024..0000000
--- a/sql-ledger/locale/pl/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Polish
diff --git a/sql-ledger/locale/pl/admin b/sql-ledger/locale/pl/admin
deleted file mode 100644
index 8540ec3..0000000
--- a/sql-ledger/locale/pl/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Kontrola Dostêpu',
- 'Accounting' => 'Ksiêgowo¶æ',
- 'Add User' => 'Dodaj U¿ytkownika',
- 'Address' => 'Adres',
- 'Administration' => 'Administracja',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'Zbiory Danych uzupe³nione!',
- 'Cannot create Lock!' => 'Nie mo¿esz stworzyæ pliku blokuj±cego!!',
- 'Change Admin Password' => 'Zmiana Has³a Administratora',
- 'Change Password' => 'Zmieñ Has³o',
- 'Character Set' => 'Zestaw Znaków',
- 'Click on login name to edit!' => 'Kliknij nazwê u¿ytkownika ¿eby dokonaæ zmian!',
- 'Company' => 'Firma',
- 'Connect to' => 'Pod³±cz do',
- 'Continue' => 'Kontynuj',
- 'Create Chart of Accounts' => 'Utwórz Wzór Kont',
- 'Create Dataset' => 'Utwórz Zbiór Danych',
- 'DBI not installed!' => 'Nie zainstalowane DBI!',
- 'Database' => 'Baza Danych',
- 'Database Administration' => 'Administracja Bazy Danych',
- 'Database Driver not checked!' => 'Sterownik Bazy Danych nie zaznaczony!',
- 'Database User missing!' => 'Brak U¿ytkownika Bazy Danych!',
- 'Dataset' => 'Zbiór Danych',
- 'Dataset missing!' => 'Brak Zbioru Danych',
- 'Dataset updated!' => 'Zbiór Danych uzupe³niony!',
- 'Date Format' => 'Format Daty',
- 'Delete' => 'Usuñ',
- 'Delete Dataset' => 'Usuñ Zbior Danych',
- 'Directory' => 'Katalog',
- 'Driver' => 'Sterownik',
- 'Dropdown Limit' => 'Limit Rozwiniêcia',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Zmiany U¿ytkownika',
- 'Existing Datasets' => 'Istniej±cy Zbiór Danych',
- 'Fax' => 'Fax',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Brak Nazwy Serwera',
- 'Language' => 'Jêzyk',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Opu¶æ pole serwera i portu, chyba ¿e chcesz mieæ zdalne po³±czenie',
- 'Lock System' => 'Zablokuj System',
- 'Lockfile created!' => 'Plik blokuj±cy utworzony!',
- 'Lockfile removed!' => 'Plik blokuj±cy usuniêty!',
- 'Login' => 'Zarejestrój siê',
- 'Login name missing!' => 'Brak nazwy!',
- 'Logout' => 'Wyrejestrój siê',
- 'Manager' => 'Kierownik',
- 'Menu Width' => 'Szeroko¶æ Menu',
- 'Multibyte Encoding' => 'Kodowanie Wielobajtowe',
- 'Name' => 'Nazwa',
- 'New Templates' => 'Nowe Szablony',
- 'No Database Drivers available!' => 'Sterownik Bazy Danych jest niedostêpny',
- 'No Dataset selected!' => 'Nie jest zaznaczony Zbiór Danych',
- 'Nothing to delete!' => 'Niema nic do usuniêcia!',
- 'Number Format' => 'Format Numeru',
- 'Oracle Database Administration' => 'Administracja Bazy Danych Oracle',
- 'Password' => 'Has³o',
- 'Password changed!' => 'Has³o zmienione',
- 'Pg Database Administration' => 'Administracja Bazy Danych Pg',
- 'PgPP Database Administration' => 'Administracja Bazy Danych PgPP',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Brak Portu',
- 'Printer' => 'Drukarka',
- 'Save' => 'Zapisz',
- 'Setup Templates' => 'Ustaw Szablony',
- 'Signature' => 'Podpis',
- 'Stylesheet' => 'Strona Stylowa',
- 'Templates' => 'Szablony',
- 'The following Datasets are not in use and can be deleted' => 'Te Zbiory Danych s± nieu¿ywane i mo¿na je usun±æ',
- 'The following Datasets need to be updated' => 'Zbiory Danych do uzupe³nienia',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Jest to wstêpne sprawdzenie istniej±cych ¿róde³. Narazie nic nie bêdzie utworzone lub usuniête.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '¯eby dodaæ do grupy u¿ytkownika zmieñ nazwê, nazwê zarejestrowania i zapisz. Nowy u¿ytkownik z tymi samymi zmiennymi warto¶ciami bêdzie zapisany pod now± nazw± rejestruj±c±',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Uzupe³nij Zbiór Danych',
- 'Use Templates' => 'U¿yj Szablony',
- 'User' => 'U¿ytkownik',
- 'User deleted!' => 'U¿ytkownik usuniêty',
- 'User saved!' => 'U¿ytkownik zapisany',
- 'Version' => 'Wersja',
- 'You must enter a host and port for local and remote connections!' => 'Wstaw nazwê serwera i portu dla lokalnego i zdalnego po³±czenia',
- 'does not exist' => 'nie istnieje',
- 'is already a member!' => 'Jest ju¿ cz³onkiem',
- 'localhost' => 'serwer lokalny',
- 'locked!' => 'zablokowane',
- 'successfully created!' => 'stworzone z powodzeniem',
- 'successfully deleted!' => 'usuniête z powodzeniem',
- 'website' => 'witryna WWW',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'dodaj_u¿ytkownika' => 'add_user',
- 'zmiana_has³a_administratora' => 'change_admin_password',
- 'zmieñ_has³o' => 'change_password',
- 'kontynuj' => 'continue',
- 'utwórz_zbiór_danych' => 'create_dataset',
- 'usuñ' => 'delete',
- 'usuñ_zbior_danych' => 'delete_dataset',
- 'zablokuj_system' => 'lock_system',
- 'zarejestrój_siê' => 'login',
- 'wyrejestrój_siê' => 'logout',
- 'administracja_bazy_danych_oracle' => 'oracle_database_administration',
- 'administracja_bazy_danych_pg' => 'pg_database_administration',
- 'administracja_bazy_danych_pgpp' => 'pgpp_database_administration',
- 'zapisz' => 'save',
- 'unlock_system' => 'unlock_system',
- 'uzupe³nij_zbiór_danych' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/all b/sql-ledger/locale/pl/all
deleted file mode 100644
index c176d6b..0000000
--- a/sql-ledger/locale/pl/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'Ksiêga Zobowi±zañ',
- 'AP Aging' => 'Plan P³atno¶ci Zobowi±zañ',
- 'AP Outstanding' => 'Zobowi±zania Nieuregulowane',
- 'AP Transaction' => 'Transakcja Zobowi±zañ',
- 'AP Transactions' => 'Transakcje Zobowi±zañ',
- 'AR' => 'Ksiêga Nale¿no¶ci',
- 'AR Aging' => 'Plan P³atno¶ci Nale¿no¶ci',
- 'AR Outstanding' => 'Nale¿no¶ci Nieuregulowane',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'AR Transactions' => 'Transakcje Nale¿no¶ci',
- 'About' => 'Na Temat',
- 'Above' => 'Powy¿szy',
- 'Access Control' => 'Kontrola Dostêpu',
- 'Account' => 'Konto',
- 'Account Number' => 'Numer Konta',
- 'Account Number missing!' => 'Brak Numeru Konta!',
- 'Account Type' => 'Rodzaj Konta',
- 'Account Type missing!' => 'Brak Rodzaju Konta!',
- 'Account deleted!' => 'Usuniêto Konto',
- 'Account does not exist!' => 'Konto nie istnieje!',
- 'Account saved!' => 'Zapisano Konto',
- 'Accounting' => 'Ksiêgowo¶æ',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Accounts' => 'Konta',
- 'Accrual' => 'Memoria³owa',
- 'Activate Audit trails' => 'Uaktywnij ¶lady Audytu',
- 'Active' => 'Aktywne',
- 'Add' => 'Dodaj',
- 'Add AP Transaction' => 'Rejestr w Ksiêdze Zobowi±zañ',
- 'Add AR Transaction' => 'Rejestr w Ksiêdze Nale¿no¶ci',
- 'Add Account' => 'Dodaj Konto',
- 'Add Assembly' => 'Dodaj Zestaw',
- 'Add Business' => 'Dodaj Dzia³alno¶æ',
- 'Add Cash Transfer Transaction' => 'Dokonaj Przelewu',
- 'Add Customer' => 'Dodaj Odbiorcê',
- 'Add Deduction' => 'Dodaj Odliczenie',
- 'Add Department' => 'Dodaj Wydzia³',
- 'Add Employee' => 'Dodaj Pracownika',
- 'Add Exchange Rate' => 'Dodaj Kurs Walut',
- 'Add GIFI' => 'Dodaj GIFI',
- 'Add General Ledger Transaction' => 'Dodaj Transakcjê w Ksiêdze G³ównej',
- 'Add Group' => 'Dodaj Grupê',
- 'Add Labor/Overhead' => 'Dodaj wydatki Pracownicze/Administracyjne',
- 'Add Language' => 'Dodaj Jêzyk',
- 'Add POS Invoice' => 'Dodaj Fakturê w Punkcie Sprzeda¿y',
- 'Add Part' => 'Dodaj Produkt',
- 'Add Pricegroup' => 'Dodaj Grupê Cenow±',
- 'Add Project' => 'Dodaj Projekt',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add SIC' => 'Dodaj EKD',
- 'Add Sales Invoice' => 'Zarejestrój Fakturê VAT Sprzeda¿y',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Add Service' => 'Dodaj Us³ugi',
- 'Add Transaction' => 'Dodaj Transakcjê',
- 'Add User' => 'Dodaj U¿ytkownika',
- 'Add Vendor' => 'Dodaj Dostawcê',
- 'Add Vendor Invoice' => 'Zarejestrój Fakturê VAT Zakupu',
- 'Add Warehouse' => 'Dodaj Magazyn',
- 'Address' => 'Adres',
- 'Administration' => 'Administracja',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Po Odliczeniu',
- 'All' => 'Wszystko',
- 'All Accounts' => 'Wszystkie Konta',
- 'All Datasets up to date!' => 'Zbiory Danych uzupe³nione!',
- 'All Items' => 'Wszystkie Pozycje',
- 'Allowances' => 'Dodatki',
- 'Amount' => 'Kwota',
- 'Amount Due' => 'Kwota Nale¿na',
- 'Amount missing!' => 'Brakuje kwoty!',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Invoice Number' => 'Czy chcesz usun±æ Numer Faktury?',
- 'Are you sure you want to delete Order Number' => 'Czy chcesz usun±æ Numer Zamówienia?',
- 'Are you sure you want to delete Quotation Number' => 'Czy chcesz usun±æ Numer Oferty?',
- 'Are you sure you want to delete Transaction' => 'Czy chcesz usun±æ Transakcjê?',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Czy chcesz usun±æ oznaczone wej¶cia z kolejki?',
- 'Assemblies' => 'Zestawy',
- 'Assemblies restocked!' => 'Zestawy uzupe³nione',
- 'Assembly' => 'Zestaw',
- 'Asset' => 'Aktywy',
- 'Attachment' => 'Za³±cznik',
- 'Audit Control' => 'Kontrola Audytu',
- 'Audit trail removed up to' => '¦lad Audytu przesuniêty do',
- 'Audit trails disabled' => '¦lad Audytu unieruchomiony',
- 'Audit trails enabled' => '¦lad Audytu umo¿liwiony',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'BIC' => 'SWIFT',
- 'BOM' => 'Struktura Wyrobu',
- 'Backup' => 'Kopia Zapasowa',
- 'Backup sent to' => 'Kopia Zapasowa wys³ana do',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Bilans',
- 'Based on' => 'Bazowany na',
- 'Batch Printing' => 'Wydruki',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Przed Odliczeniem',
- 'Beginning Balance' => 'Saldo Pocz±tkowe',
- 'Below' => 'Poni¿ej',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Bin Lists' => 'Wykazy Koszy',
- 'Books are open' => 'Ksiêgi otwarte',
- 'Break' => 'Próg Rentowno¶ci',
- 'Business' => 'Dzia³alno¶æ',
- 'Business Number' => 'NIP',
- 'Business deleted!' => 'REGON',
- 'Business saved!' => 'Dzia³alno¶æ zapisana',
- 'C' => 'C',
- 'COGS' => 'Koszta Sprzeda¿y',
- 'Cannot create Lock!' => 'Nie mo¿esz stworzyæ pliku blokuj±cego!!',
- 'Cannot delete account!' => 'Nie mo¿esz usun±æ konta!',
- 'Cannot delete customer!' => 'Nie mo¿esz usun±æ odbiorcy!',
- 'Cannot delete default account!' => 'Konto Domy¶lne nie mo¿e byæ usuniête!',
- 'Cannot delete invoice!' => 'Nie mo¿esz usun±æ factury!',
- 'Cannot delete item!' => 'Nie mo¿esz usun±æ pozycji!',
- 'Cannot delete order!' => 'Nie mo¿esz usun±æ zamówienia!',
- 'Cannot delete quotation!' => 'Nie mo¿esz usun±æ oferty',
- 'Cannot delete transaction!' => 'Nie mo¿esz usun±æ transakcji!',
- 'Cannot delete vendor!' => 'Nie mo¿esz usun±æ dostawcy!',
- 'Cannot post Payment!' => 'Nie mo¿esz zatwierdziæ Op³aty!',
- 'Cannot post Receipt!' => 'Nie mo¿esz zatwierdziæ Wp³aty!',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury po zamkniêciu okresu!',
- 'Cannot post invoice!' => 'Nie mo¿esz zatwierdziæ faktury!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji po zamkniêciu okresu!',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Cannot process payment for a closed period!' => 'Niemo¿na przetworzyæ p³atno¶ci po zamkniêciu okresu',
- 'Cannot remove files!' => 'Nie mo¿esz usun±æ pliku!',
- 'Cannot save account!' => 'Nie mo¿na zapisaæ konta!',
- 'Cannot save defaults!' => 'Nie mo¿na zapisa ustawieñ domy¶lnych!',
- 'Cannot save order!' => 'Nie mo¿na zapisaæ zamowienia!',
- 'Cannot save preferences!' => 'Nie mo¿na zapisaæ preferencji!',
- 'Cannot save quotation!' => 'Nie mo¿na zapisaæ oferty!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Nie mo¿na ustawiæ konta na wiêcej ni¿ jeden rodzaj',
- 'Cannot set multiple options for' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla',
- 'Cannot set multiple options for Parts Inventory' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla Inventarza',
- 'Cannot set multiple options for Service Items' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla Us³ug',
- 'Cannot stock assemblies!' => 'Nie mo¿na wstawiæ z³o¿enia',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Change' => 'Reszta',
- 'Change Admin Password' => 'Zmiana Has³a Administratora',
- 'Change Password' => 'Zmieñ Has³o',
- 'Character Set' => 'Zestaw Znaków',
- 'Chart of Accounts' => 'Plan Kont',
- 'Check' => 'Czek',
- 'Check Inventory' => 'Kontrola Inwentarza',
- 'Checks' => 'Czeki',
- 'City' => 'Miasto',
- 'Cleared' => 'Rozliczone',
- 'Click on login name to edit!' => 'Kliknij nazwê u¿ytkownika ¿eby dokonaæ zmian!',
- 'Close Books up to' => 'Zamkniêcie Ksi±g do',
- 'Closed' => 'Zamkniêto',
- 'Code' => 'Kod',
- 'Code missing!' => 'Brak Kodu',
- 'Company' => 'Firma',
- 'Company Name' => 'Nazwa Firmy',
- 'Compare to' => 'Porównaj z',
- 'Components' => 'Sk³adniki',
- 'Confirm' => '',
- 'Confirm!' => 'Potwierd¿!',
- 'Connect to' => 'Pod³±cz do',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Contra' => 'Konto Przeciwstawne',
- 'Copies' => 'Kopie',
- 'Copy to COA' => 'Skopiuj do Planu Kont',
- 'Cost' => 'Koszt',
- 'Cost Center' => 'Centrum Kosztów',
- 'Could not save pricelist!' => 'Nie mo¿e zapisaæ cennika!',
- 'Could not save!' => 'Nie mo¿e zapisaæ!',
- 'Could not transfer Inventory!' => 'Nie mo¿e przesun±æ Inwentarza',
- 'Country' => 'Kraj',
- 'Create Chart of Accounts' => 'Utwórz Wzór Kont',
- 'Create Dataset' => 'Utwórz Zbiór Danych',
- 'Credit' => 'Kredyt',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Current Earnings' => 'Acdtualny Dochód',
- 'Customer' => 'Odbiorca',
- 'Customer History' => 'Statystyka Sprzeda¿y',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer deleted!' => 'Odbiorca usuniêty',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Customer saved!' => 'Odbiorca zapisany!',
- 'Customers' => 'Odbiorcy',
- 'DBI not installed!' => 'Nie zainstalowane DBI!',
- 'DOB' => '',
- 'Database' => 'Baza Danych',
- 'Database Administration' => 'Administracja Bazy Danych',
- 'Database Driver not checked!' => 'Sterownik Bazy Danych nie zaznaczony!',
- 'Database Host' => 'Serwer Bazy Danych',
- 'Database User missing!' => 'Brak U¿ytkownika Bazy Danych!',
- 'Dataset' => 'Zbiór Danych',
- 'Dataset is newer than version!' => 'Baza Danych jest nowsza ni¿ wersja!',
- 'Dataset missing!' => 'Brak Zbioru Danych',
- 'Dataset updated!' => 'Zbiór Danych uzupe³niony!',
- 'Date' => 'Data',
- 'Date Format' => 'Format Daty',
- 'Date Paid' => 'Data Zap³aty',
- 'Date Received' => 'Data Wp³aty',
- 'Date missing!' => 'Brak Daty',
- 'Date received missing!' => 'Brak Daty Wp³aty',
- 'Debit' => 'Debet',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Decimalplaces' => 'Miejsca Dziesiêtne',
- 'Decrease' => 'Zmniejszenie',
- 'Deduct after' => 'Potr±æ po',
- 'Deduction deleted!' => 'Potr±cenie usuniête',
- 'Deduction saved!' => 'Potr±cenie zapisane',
- 'Deductions' => 'Potr±cenia',
- 'Defaults' => 'Ustawienia',
- 'Defaults saved!' => 'Ustawienia zapisane!',
- 'Delete' => 'Usuñ',
- 'Delete Account' => 'Usuñ Konto',
- 'Delete Dataset' => 'Usuñ Zbior Danych',
- 'Delivery Date' => 'Data Dostawy',
- 'Department' => 'Wydzia³',
- 'Department deleted!' => 'Wydzia³ usuniêty',
- 'Department saved!' => 'Wydzia³ zapisany',
- 'Departments' => 'Wydzia³y',
- 'Deposit' => 'Kasa Przyjmie',
- 'Description' => 'Opis',
- 'Description Translations' => 'T³umaczenie Opisu',
- 'Description missing!' => 'Brak Opisu!',
- 'Detail' => 'Wyszczególnienie',
- 'Difference' => 'Ró¿nica',
- 'Directory' => 'Katalog',
- 'Discount' => 'Rabat',
- 'Done' => 'Zrobione',
- 'Drawing' => 'Rysunek',
- 'Driver' => 'Sterownik',
- 'Dropdown Limit' => 'Limit Rozwiniêcia',
- 'Due Date' => 'Termin P³atno¶ci',
- 'Due Date missing!' => 'Brak Terminu P³atno¶ci!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Wykaz do',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit' => 'Zmieñ',
- 'Edit AP Transaction' => 'Zmiany Transakcji Konta Zobowi±zañ',
- 'Edit AR Transaction' => 'Zmiany Transakcji Konta Nale¿no¶ci',
- 'Edit Account' => 'Zmiany Konta',
- 'Edit Assembly' => 'Zmiany Zestawieñ',
- 'Edit Business' => 'Zmieñ Dzia³alno¶æ',
- 'Edit Cash Transfer Transaction' => 'Zmiana Transakcji Kasowej',
- 'Edit Customer' => 'Zmiany Odbiorcy',
- 'Edit Deduction' => 'Zmieñ Potr±cenie',
- 'Edit Department' => 'Zmiany Wydzia³u',
- 'Edit Description Translations' => 'Zmieñ T³umaczenie Opisu',
- 'Edit Employee' => 'Zmiany Pracownika',
- 'Edit GIFI' => 'Zmieñ GIFI',
- 'Edit General Ledger Transaction' => 'Zmiany w Ksiêdze G³ównej',
- 'Edit Group' => 'Zmieñ Grupê',
- 'Edit Labor/Overhead' => 'Zmieñ wydatki Pracownicze/Administracyjne',
- 'Edit Language' => 'Zmien Jêzyk',
- 'Edit POS Invoice' => 'Zmieñ Fakturê Punktu Sprzeda¿y',
- 'Edit Part' => 'Zmiany Produktu',
- 'Edit Preferences for' => 'Zmiany Preferencji dla',
- 'Edit Pricegroup' => 'Zmieñ Grupê Cenow±',
- 'Edit Project' => 'Zmiany Projektu',
- 'Edit Purchase Order' => 'Zmiany Zlecenia Zakupu',
- 'Edit Quotation' => 'Zmieñ Ofertê',
- 'Edit Request for Quotation' => 'Zmieñ Pro¶bê o Ofertê',
- 'Edit SIC' => 'Zmieñ SIC',
- 'Edit Sales Invoice' => 'Zmiany Faktury Sprzeda¿y',
- 'Edit Sales Order' => 'Zmiany Zlecenia Sprzedazy',
- 'Edit Service' => 'Zmiany Us³ug',
- 'Edit Template' => 'Zmiany Wzorca',
- 'Edit User' => 'Zmiany U¿ytkownika',
- 'Edit Vendor' => 'Zmiany Dostawcy',
- 'Edit Vendor Invoice' => 'Zmiany Faktury Zamówienia',
- 'Edit Warehouse' => 'Zmiany Magazynu',
- 'Employee' => 'Pracownik',
- 'Employee Name' => 'Nazwisko Pracownika',
- 'Employee Number' => 'Numer Pracownika',
- 'Employee deleted!' => 'Pracownik usuniêty!',
- 'Employee pays' => 'Pracownik p³aci',
- 'Employee saved!' => 'Pracownik zapisany',
- 'Employees' => 'Pracownicy',
- 'Employer' => 'Pracodawca',
- 'Employer pays' => 'Pracodawca p³aci',
- 'Enddate' => 'Dzieñ Zwolnienia',
- 'Enforce transaction reversal for all dates' => 'Egzekwój zmiany transakcji dla wszystkich okresów',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Wpisz symbole (nap. PLN:USD:EUR:YEN) krajowych i zagranicznych walut',
- 'Equity' => 'Kapita³',
- 'Excempt age <' => '',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Existing Datasets' => 'Istniej±cy Zbiór Danych',
- 'Expense' => 'Koszt',
- 'Expense Account' => 'Konto Kosztów',
- 'Expense/Asset' => 'Koszt/Aktywy',
- 'Extended' => 'Warto¶æ Netto',
- 'FX' => 'Kurs Walut',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'Foreign Exchange Gain' => 'Zysk przy Zamianie Walut',
- 'Foreign Exchange Loss' => 'Strata przy Zamianie Walut',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI usuniête',
- 'GIFI missing!' => 'Brakuje GIFI',
- 'GIFI saved!' => 'GIFI zapisane',
- 'GL Transaction' => 'Transakcja Ksiêgi G³ównej',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'Goods & Services' => 'Produkty i Us³ugi',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'Group Translations' => 'Grupój T³umaczenia',
- 'Group deleted!' => 'Grupa usuniêta',
- 'Group missing!' => 'Brakuje Grupy',
- 'Group saved!' => 'Grupa zapisana',
- 'Groups' => 'Grupy',
- 'HR' => 'Kadry',
- 'HTML Templates' => 'Szablony HTML',
- 'Heading' => 'Nag³ówek',
- 'History' => 'Statystyka',
- 'Home Phone' => 'Telefon domowy',
- 'Host' => 'Server',
- 'Hostname missing!' => 'Brak Nazwy Serwera',
- 'IBAN' => 'IBAN/NRB',
- 'ID' => 'Identyfikator',
- 'Image' => 'Grafika',
- 'In-line' => 'W³±czony',
- 'Include Exchange Rate Difference' => 'Za³±cz Ró¿nice Wymiany Walut',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Include in drop-down menus' => 'Do³±cz w menu rozwijanym',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Do³±cz Konto w formularzach Kontrachentów ¿eby wskazaæ ¿e podlegaj± opodatkowaniu',
- 'Income' => 'Przychód',
- 'Income Account' => 'Konto Przychodów',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Incorrect Dataset version!' => 'Nieprawid³owa wersja Zbioru Danych',
- 'Incorrect Password!' => 'Nieprawid³owe Has³o',
- 'Increase' => 'Zwiêkszenie',
- 'Individual Items' => 'Indywidualne Czê¶ci',
- 'Internal Notes' => 'Noty Wewnêtrzne',
- 'Inventory' => 'Inwentarz',
- 'Inventory Account' => 'Konto Materia³owe',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Ilo¶æ Inventarza musi byæ równa zero zanim bêdzie mozna zdezaktualizowaæ ten zestaw!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Ilo¶æ inventarza musi byæ równa zero zanim bêdzie mo¿na zdezaktualizowaæ t± czê¶æ!',
- 'Inventory saved!' => 'Inwentarz zapisany!',
- 'Inventory transferred!' => 'Inwentarz przeniesiony!',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Invoice deleted!' => 'Faktura usuniêta',
- 'Invoice posted!' => 'Faktura zatwierdzona',
- 'Invoice processed!' => 'Faktura wykonana!',
- 'Invoices' => 'Faktury',
- 'Is this a summary account to record' => 'Czy jest to konto sumaryczne?',
- 'Item already on pricelist!' => 'Produkt ju¿ zawarty w cenniku!',
- 'Item deleted!' => 'Pozycja usuniêta',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Items' => 'Pozycje',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'LaTeX Templates' => 'Szablony LaTeX',
- 'Labor/Overhead' => 'Koszty Pracownicze/Administracyjne',
- 'Language' => 'Jêzyk',
- 'Language deleted!' => 'Jêzyk usuniêty',
- 'Language saved!' => 'Jêzyk zapisany',
- 'Languages' => 'Jêzyki',
- 'Languages not defined!' => 'Jêzyk nie zdefiniowany!',
- 'Last Numbers & Default Accounts' => 'Ostatnie Numery i Konta Domy¶lne',
- 'Leadtime' => 'Cykl',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Opu¶æ pole serwera i portu, chyba ¿e chcesz mieæ zdalne po³±czenie',
- 'Liability' => 'Zobowi±zania',
- 'Licensed to' => 'Licencja nale¿y do:',
- 'Line Total' => 'Suma ca³kowita',
- 'Link' => 'Dowi±zanie',
- 'Link Accounts' => 'Konta dowi±zane',
- 'List' => 'Spis',
- 'List Accounts' => 'Spis Kont',
- 'List Businesses' => 'Wykaz Dzia³alno¶ci',
- 'List Departments' => 'Wykaz Wydzia³ów',
- 'List GIFI' => 'Wykaz GIFI',
- 'List Languages' => 'Wykaz Jêzyków',
- 'List Price' => 'Cena',
- 'List Projects' => 'Wykaz Projektów',
- 'List SIC' => 'Wykaz EKD',
- 'List Transactions' => 'Wykaz Transakcji',
- 'List Warehouses' => 'Wykaz Magazynów',
- 'Lock System' => 'Zablokuj System',
- 'Lockfile created!' => 'Plik blokuj±cy utworzony!',
- 'Lockfile removed!' => 'Plik blokuj±cy usuniêty!',
- 'Login' => 'Zarejestrój siê',
- 'Login name missing!' => 'Brak nazwy!',
- 'Logout' => 'Wyrejestrój siê',
- 'Make' => 'Marka',
- 'Manager' => 'Kierownik',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'Marked entries printed!' => 'Zaznaczone wpisy wydrukowane',
- 'Markup' => 'Mar¿a',
- 'Maximum' => 'Maxymalna',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Menu Width' => 'Szeroko¶æ Menu',
- 'Message' => 'Wiadomo¶æ',
- 'Method' => 'Metoda',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Month' => 'Miesi±c',
- 'Multibyte Encoding' => 'Kodowanie Wielobajtowe',
- 'N/A' => 'N/A',
- 'Name' => 'Nazwa',
- 'Name missing!' => 'Brak Nazwy',
- 'New Templates' => 'Nowe Szablony',
- 'No' => 'Nie',
- 'No Database Drivers available!' => 'Sterownik Bazy Danych jest niedostêpny',
- 'No Dataset selected!' => 'Nie jest zaznaczony Zbiór Danych',
- 'No email address for' => 'Brak adresu email',
- 'No.' => 'Nr.',
- 'Non-taxable' => 'Rejestr VAT - Nieopodatkowane',
- 'Non-taxable Purchases' => 'Rejestr VAT - Zakupy',
- 'Non-taxable Sales' => 'Rejestr VAT - Sprzeda¿',
- 'Notes' => 'Noty',
- 'Nothing entered!' => 'Nic nie wprowadzono!',
- 'Nothing outstanding for ' => 'Nic nie brakuje',
- 'Nothing selected!' => 'Nic nie zaznaczone!',
- 'Nothing to delete!' => 'Niema nic do usuniêcia!',
- 'Nothing to print!' => 'Nic do wydrukowania!',
- 'Nothing to transfer!' => 'Nie ma nic do przeniesienia!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number Format' => 'Format Numeru',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'O' => 'O',
- 'Obsolete' => 'Przestarza³e',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'On Hand' => 'Stan Zapasu Podrêcznego',
- 'Open' => 'Otworzono',
- 'Oracle Database Administration' => 'Administracja Bazy Danych Oracle',
- 'Order' => 'Zlecenie',
- 'Order Date' => 'Data Zlecenia',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Entry' => 'Wystawianie Zleceñ',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'Order deleted!' => 'Zlecenie usuniête',
- 'Order processed!' => 'Zlecenie wykonane',
- 'Order saved!' => 'Zlecenie zapisane',
- 'Orphaned' => 'Zbêdne',
- 'Out of balance transaction!' => 'Niezgodne Saldo Transakcji!',
- 'Out of balance!' => 'Niezgodne Saldo',
- 'Outstanding' => 'Transakcje Nieuregulowane',
- 'PDF' => 'PDF',
- 'POS' => 'Punkt Sprzeda¿y',
- 'POS Invoice' => 'Faktura Punktu Sprzeda¿y',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Packing Lists' => 'Listy Pakunkowe',
- 'Paid' => 'Zap³acono',
- 'Part' => 'Produkt',
- 'Part Number' => 'Symbol',
- 'Partnumber' => 'Symbol',
- 'Parts' => 'Produkty',
- 'Parts Inventory' => 'Inwentarz',
- 'Password' => 'Has³o',
- 'Password changed!' => 'Has³o zmienione',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Zobowi±zania',
- 'Payment' => 'Kasa Wyp³aci',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payment posted!' => 'Wyp³ata zatwierdzona',
- 'Payments' => 'Wyp³aty',
- 'Payroll Deduction' => 'Lista P³ac - Potr±cenia',
- 'Period' => 'Okres',
- 'Pg Database Administration' => 'Administracja Bazy Danych Pg',
- 'PgPP Database Administration' => 'Administracja Bazy Danych PgPP',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Pick Lists' => 'Listy Pobrania',
- 'Port' => 'Port',
- 'Port missing!' => 'Brak Portu',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Posted!' => 'Zatwierdzone!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencje',
- 'Preferences saved!' => 'Preferencje Zapisane!',
- 'Prepayment' => 'Przedp³ata',
- 'Price' => 'Cena Netto',
- 'Pricegroup' => 'Grupa cenowa',
- 'Pricegroup deleted!' => 'Grupa cenowa usuniêta',
- 'Pricegroup missing!' => 'Brakuje Grupy cenowej',
- 'Pricegroup saved!' => 'Grupa cenowa zapisana',
- 'Pricegroups' => 'Grupy cenowa',
- 'Pricelist' => 'Cennik',
- 'Print' => 'Wydrukuj',
- 'Print and Post' => 'Wydrukuj i Zatwierd¿',
- 'Print and Save' => 'Wydrukuj i Zapisz',
- 'Printed' => 'Wydrukowane',
- 'Printer' => 'Drukarka',
- 'Printing ... ' => 'Drukuje ...',
- 'Profit Center' => 'Centrum Zysków',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'T³umaczenie Opisu Projektu',
- 'Project Number' => 'Numer Projektu',
- 'Project Number missing!' => 'Brak Numeru Projektu',
- 'Project Transactions' => 'Transakcje Projektów',
- 'Project deleted!' => 'Projekt usuniêty',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Project saved!' => 'Projekt zapisany',
- 'Projects' => 'Projekty',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Purchase Order Number' => 'Numer Zlecenia Zakupu',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quantity exceeds available units to stock!' => 'Ilo¶æ przewy¿sza dostêpne jednostki zasobów!',
- 'Quarter' => 'Kwarta³',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation ' => 'Oferta',
- 'Quotation Date' => 'Data Oferty',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number' => 'Numer Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Quotation deleted!' => 'Oferta usuniêta',
- 'Quotations' => 'Oferty',
- 'R' => 'R',
- 'RFQ' => 'Pro¶ba o Ofertê',
- 'RFQ ' => 'Prpo¶ba o Ofertê',
- 'RFQ Number' => 'Numer Pro¶by o Ofertê',
- 'RFQs' => 'Pro¶by o Ofertê',
- 'ROP' => 'PPZ',
- 'Rate' => 'Stawka',
- 'Rate missing!' => 'Brakuje Stawki',
- 'Recd' => 'Otrzymano',
- 'Receipt' => 'Kasa Przyjmie',
- 'Receipt posted!' => 'Wp³ata zapisana!',
- 'Receipts' => 'Wp³aty',
- 'Receivables' => 'Nale¿no¶ci',
- 'Receive' => 'Dostawy',
- 'Receive Merchandise' => 'Dostawy Towarów',
- 'Reconciliation' => 'Zbalansowanie Kont',
- 'Reconciliation Report' => 'Sprawozdanie Zbalansowania Kont',
- 'Record in' => 'Zapisz w',
- 'Reference' => 'Odno¶nik',
- 'Reference missing!' => 'Brak Odno¶nika',
- 'Remaining' => 'Pozosta³e',
- 'Remove' => 'Usuñ',
- 'Remove Audit trails up to' => 'Usuñ ¦lady Audytu do',
- 'Removed spoolfiles!' => 'plik kolejki wydruków',
- 'Removing marked entries from queue ...' => 'Zaznaczone wpisy usuwane z kolejki ...',
- 'Report for' => 'Raport dla',
- 'Reports' => 'Sprawozdania',
- 'Request for Quotation' => 'Pro¶ba o Ofertê',
- 'Request for Quotations' => 'Pro¶ba o Oferty',
- 'Required by' => 'Termin Dostawy',
- 'Retained Earnings' => 'Zysk',
- 'Role' => 'Funkcja',
- 'S' => 'S',
- 'SIC' => 'EKD',
- 'SIC deleted!' => 'EKD usuniêty!',
- 'SIC saved!' => 'EKD zapisany!',
- 'SKU' => 'SWW',
- 'SSN' => 'PESEL',
- 'Sale' => 'Sprzeda¿',
- 'Sales' => 'Sprzeda¿',
- 'Sales Invoice' => 'Faktura VAT Sprzeda¿y',
- 'Sales Invoice ' => 'Faktura VAT Sprzeda¿y',
- 'Sales Invoice Number' => 'Numer Faktury VAT Sprzeda¿y',
- 'Sales Invoice.' => 'Faktura VAT Sprzeda¿y.',
- 'Sales Invoices' => 'Faktury VAT Sprzeda¿y',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Sales Order Number' => 'Numer Zlecenia Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Sales Quotation Number' => 'Numer Oferty Sprzeda¿y',
- 'Salesperson' => 'Sprzedawca',
- 'Save' => 'Zapisz',
- 'Save Pricelist' => 'Zapisz Cennik',
- 'Save as new' => 'Zapisz jako nowe',
- 'Save to File' => 'Zapisz w zbiorze',
- 'Screen' => 'Ekran',
- 'Search' => 'Znajd¿',
- 'Select' => 'Wybierz',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select all' => 'Wybierz wszystko',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select payment' => 'Wybierz p³atno¶æ',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Sprzeda¿',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Send by E-Mail' => 'Wys³ano przez E-Mail',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Serial Number' => 'Numer Seryjny',
- 'Service' => 'Us³ugi',
- 'Service Items' => 'Us³ugi',
- 'Services' => 'Us³ugi',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Ustaw Szablony',
- 'Ship' => 'Wysy³ka',
- 'Ship Merchandise' => 'Wysy³ka Produktów',
- 'Ship to' => 'Wy¶lij do',
- 'Ship via' => 'Wy¶lij przez',
- 'Shipping' => 'Spedycja',
- 'Shipping Address' => 'Adres Dostawy',
- 'Shipping Date' => 'Dzieñ Dostawy',
- 'Shipping Date missing!' => 'Brak Dnia Dostawy!',
- 'Shipping Point' => 'Punkt Dostawy',
- 'Short' => 'Niedobór',
- 'Signature' => 'Podpis',
- 'Source' => '¯ród³o',
- 'Spoolfile' => 'Plik Kolejki Wydruków',
- 'Standard' => 'Standartowe',
- 'Standard Industrial Codes' => 'Europejska Klasyfikacja Dzia³alno¶ci',
- 'Startdate' => 'Dzieñ Zatrudnienia',
- 'State' => 'Rejon',
- 'State/Province' => 'Województwo',
- 'Statement' => 'Wykaz',
- 'Statement Balance' => 'Wykaz Salda',
- 'Statement sent to' => 'Wykaz wys³any do',
- 'Statements sent to printer!' => 'Wykaz wys³any do drukarki',
- 'Stock' => 'Zapas',
- 'Stock Assembly' => 'Wstaw Zestaw',
- 'Stylesheet' => 'Strona Stylowa',
- 'Sub-contract GIFI' => 'Subkontrakt GIFI',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Summary' => 'Skrót',
- 'Supervisor' => '',
- 'System' => 'System',
- 'System Defaults' => 'Ustawienia Domy¶lne',
- 'Tax' => 'Podatek',
- 'Tax Accounts' => 'Konta Podatkowe',
- 'Tax Included' => 'Podatek Wliczony',
- 'Tax Number' => 'NIP',
- 'Tax Number / SSN' => 'NIP / PESEL',
- 'Tax collected' => 'Rejestr VAT - Sprzeda¿',
- 'Tax paid' => 'Rejestr VAT - Zakupy',
- 'Taxable' => 'Opodatkowane',
- 'Template saved!' => 'Szablon zapisany',
- 'Templates' => 'Szablony',
- 'Terms' => 'Warunki: Netto',
- 'Text Templates' => 'Szablony',
- 'The following Datasets are not in use and can be deleted' => 'Te Zbiory Danych s± nieu¿ywane i mo¿na je usun±æ',
- 'The following Datasets need to be updated' => 'Zbiory Danych do uzupe³nienia',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Jest to wstêpne sprawdzenie istniej±cych ¿róde³. Narazie nic nie bêdzie utworzone lub usuniête.',
- 'Till' => 'Kasa',
- 'To' => 'do',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '¯eby dodaæ do grupy u¿ytkownika zmieñ nazwê, nazwê zarejestrowania i zapisz. Nowy u¿ytkownik z tymi samymi zmiennymi warto¶ciami bêdzie zapisany pod now± nazw± rejestruj±c±',
- 'Top Level' => 'Najwy¿szy Poziom',
- 'Total' => 'Warto¶æ Brutto',
- 'Trade Discount' => 'Rabat Handlowy',
- 'Transaction' => 'Transakcja',
- 'Transaction Date missing!' => 'Brak Daty Transakcji!',
- 'Transaction deleted!' => 'Transakcja usuniêta',
- 'Transaction posted!' => 'Transakcja zatwierdzona',
- 'Transaction reversal enforced for all dates' => 'Zmiana transakcji narzucona dla wszystkich okresów',
- 'Transaction reversal enforced up to' => 'Zmiana transakcji narzucona do',
- 'Transactions' => 'Zestawienia Transakcji',
- 'Transfer' => 'Przelewy',
- 'Transfer Inventory' => 'Przeniesienie Inventarza',
- 'Transfer to' => 'Przenie¶ do',
- 'Translation' => 'T³umaczenie',
- 'Translation deleted!' => 'T³umaczenie usuniête!',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Translations' => 'T³umaczenia',
- 'Translations saved!' => 'T³umaczenia zapisane!',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Type of Business' => 'Rodzaj Dzia³alno¶ci',
- 'Unit' => 'Jednostka',
- 'Unit of measure' => 'Jednostka miary',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Uzupe³nij',
- 'Update Dataset' => 'Uzupe³nij Zbiór Danych',
- 'Updated' => 'Uzupe³nione',
- 'Upgrading to Version' => 'Uaktualnienie do nowej wersji',
- 'Use Templates' => 'U¿yj Szablony',
- 'User' => 'U¿ytkownik',
- 'User deleted!' => 'U¿ytkownik usuniêty',
- 'User saved!' => 'U¿ytkownik zapisany',
- 'Valid until' => 'Wa¿ne do',
- 'Vendor' => 'Dostawca',
- 'Vendor History' => 'Statystyka Dostaw',
- 'Vendor Invoice' => 'Faktura VAT Zakupu',
- 'Vendor Invoice ' => 'Faktura VAT Zakupu',
- 'Vendor Invoice Number' => 'Numer Faktury VAT Zakupu',
- 'Vendor Invoice.' => 'Faktura VAT Zakupu.',
- 'Vendor Invoices' => 'Faktury VAT Zakupu',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor deleted!' => 'Dostawca usuniêty',
- 'Vendor missing!' => 'Brak Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Vendor saved!' => 'Dostawca zapisany',
- 'Vendors' => 'Dostawcy',
- 'Version' => 'Wersja',
- 'Warehouse' => 'Magazyn',
- 'Warehouse deleted!' => 'Magazyn usuniêty',
- 'Warehouse saved!' => 'Magazyn zapisany!',
- 'Warehouses' => 'Magazyny',
- 'Warning!' => 'Ostrze¿enie',
- 'Weight' => 'Waga',
- 'Weight Unit' => 'Jednostka Wagi',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'Work Orders' => 'Zlecenia Robocze',
- 'Work Phone' => 'Telefon-praca',
- 'Year' => 'Rok',
- 'Yearend' => 'Koniec Roku Finansowego',
- 'Yearend date missing!' => 'Brakuje Dnia Koñca Roku Finansowge!',
- 'Yearend posted!' => 'Rok Finansowy Zatwierdzony!',
- 'Yearend posting failed!' => 'Zatwierdzenie Roku Finansowego niedokonane!',
- 'Yes' => 'Tak',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nie wstawiono nazwy!',
- 'You must enter a host and port for local and remote connections!' => 'Wstaw nazwê serwera i portu dla lokalnego i zdalnego po³±czenia',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'konto nie mo¿e byæ ustawione do wszelkich innych kont',
- 'as at' => 'na dzieñ',
- 'days' => 'dni',
- 'does not exist' => 'nie istnieje',
- 'done' => 'wykonane',
- 'ea' => 'szt',
- 'for Period' => 'za Okres',
- 'is already a member!' => 'Jest ju¿ cz³onkiem',
- 'is not a member!' => 'Nie jest cz³onkiem',
- 'localhost' => 'serwer lokalny',
- 'locked!' => 'zablokowane',
- 'posted!' => 'zatwierdzone!',
- 'sent' => 'wys³ane',
- 'successfully created!' => 'stworzone z powodzeniem',
- 'successfully deleted!' => 'usuniête z powodzeniem',
- 'website' => 'witryna WWW',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/am b/sql-ledger/locale/pl/am
deleted file mode 100644
index 0ae8efd..0000000
--- a/sql-ledger/locale/pl/am
+++ /dev/null
@@ -1,256 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ksiêga Zobowi±zañ',
- 'AR' => 'Ksiêga Nale¿no¶ci',
- 'About' => 'Na Temat',
- 'Account' => 'Konto',
- 'Account Number' => 'Numer Konta',
- 'Account Number missing!' => 'Brak Numeru Konta!',
- 'Account Type' => 'Rodzaj Konta',
- 'Account Type missing!' => 'Brak Rodzaju Konta!',
- 'Account deleted!' => 'Usuniêto Konto',
- 'Account does not exist!' => 'Konto nie istnieje!',
- 'Account saved!' => 'Zapisano Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Accrual' => 'Memoria³owa',
- 'Activate Audit trails' => 'Uaktywnij ¶lady Audytu',
- 'Add Account' => 'Dodaj Konto',
- 'Add Business' => 'Dodaj Dzia³alno¶æ',
- 'Add Department' => 'Dodaj Wydzia³',
- 'Add GIFI' => 'Dodaj GIFI',
- 'Add Language' => 'Dodaj Jêzyk',
- 'Add SIC' => 'Dodaj EKD',
- 'Add Warehouse' => 'Dodaj Magazyn',
- 'Address' => 'Adres',
- 'Asset' => 'Aktywy',
- 'Audit Control' => 'Kontrola Audytu',
- 'Audit trail removed up to' => '¦lad Audytu przesuniêty do',
- 'Audit trails disabled' => '¦lad Audytu unieruchomiony',
- 'Audit trails enabled' => '¦lad Audytu umo¿liwiony',
- 'Backup sent to' => 'Kopia Zapasowa wys³ana do',
- 'Books are open' => 'Ksiêgi otwarte',
- 'Business Number' => 'NIP',
- 'Business deleted!' => 'REGON',
- 'Business saved!' => 'Dzia³alno¶æ zapisana',
- 'COGS' => 'Koszta Sprzeda¿y',
- 'Cannot delete account!' => 'Nie mo¿esz usun±æ konta!',
- 'Cannot delete default account!' => 'Konto Domy¶lne nie mo¿e byæ usuniête!',
- 'Cannot save account!' => 'Nie mo¿na zapisaæ konta!',
- 'Cannot save defaults!' => 'Nie mo¿na zapisa ustawieñ domy¶lnych!',
- 'Cannot save preferences!' => 'Nie mo¿na zapisaæ preferencji!',
- 'Cannot set account for more than one of AR, AP or IC' => 'Nie mo¿na ustawiæ konta na wiêcej ni¿ jeden rodzaj',
- 'Cannot set multiple options for' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla',
- 'Cannot set multiple options for Parts Inventory' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla Inventarza',
- 'Cannot set multiple options for Service Items' => 'Nie mo¿na umieszczaæ wielokrotnego wyboru dla Us³ug',
- 'Cash' => 'Kasa',
- 'Character Set' => 'Zestaw Znaków',
- 'Chart of Accounts' => 'Plan Kont',
- 'Close Books up to' => 'Zamkniêcie Ksi±g do',
- 'Code' => 'Kod',
- 'Code missing!' => 'Brak Kodu',
- 'Company' => 'Firma',
- 'Continue' => 'Kontynuj',
- 'Contra' => 'Konto Przeciwstawne',
- 'Copy to COA' => 'Skopiuj do Planu Kont',
- 'Cost Center' => 'Centrum Kosztów',
- 'Credit' => 'Kredyt',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Database Host' => 'Serwer Bazy Danych',
- 'Dataset' => 'Zbiór Danych',
- 'Date Format' => 'Format Daty',
- 'Debit' => 'Debet',
- 'Defaults saved!' => 'Ustawienia zapisane!',
- 'Delete' => 'Usuñ',
- 'Delete Account' => 'Usuñ Konto',
- 'Department deleted!' => 'Wydzia³ usuniêty',
- 'Department saved!' => 'Wydzia³ zapisany',
- 'Departments' => 'Wydzia³y',
- 'Description' => 'Opis',
- 'Description missing!' => 'Brak Opisu!',
- 'Discount' => 'Rabat',
- 'Dropdown Limit' => 'Limit Rozwiniêcia',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Zmieñ',
- 'Edit Account' => 'Zmiany Konta',
- 'Edit Business' => 'Zmieñ Dzia³alno¶æ',
- 'Edit Department' => 'Zmiany Wydzia³u',
- 'Edit GIFI' => 'Zmieñ GIFI',
- 'Edit Language' => 'Zmien Jêzyk',
- 'Edit Preferences for' => 'Zmiany Preferencji dla',
- 'Edit SIC' => 'Zmieñ SIC',
- 'Edit Template' => 'Zmiany Wzorca',
- 'Edit Warehouse' => 'Zmiany Magazynu',
- 'Employee Number' => 'Numer Pracownika',
- 'Enforce transaction reversal for all dates' => 'Egzekwój zmiany transakcji dla wszystkich okresów',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Wpisz symbole (nap. PLN:USD:EUR:YEN) krajowych i zagranicznych walut',
- 'Equity' => 'Kapita³',
- 'Expense' => 'Koszt',
- 'Expense Account' => 'Konto Kosztów',
- 'Expense/Asset' => 'Koszt/Aktywy',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Zysk przy Zamianie Walut',
- 'Foreign Exchange Loss' => 'Strata przy Zamianie Walut',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI usuniête',
- 'GIFI missing!' => 'Brakuje GIFI',
- 'GIFI saved!' => 'GIFI zapisane',
- 'Heading' => 'Nag³ówek',
- 'Include in drop-down menus' => 'Do³±cz w menu rozwijanym',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Do³±cz Konto w formularzach Kontrachentów ¿eby wskazaæ ¿e podlegaj± opodatkowaniu',
- 'Income' => 'Przychód',
- 'Income Account' => 'Konto Przychodów',
- 'Inventory' => 'Inwentarz',
- 'Inventory Account' => 'Konto Materia³owe',
- 'Is this a summary account to record' => 'Czy jest to konto sumaryczne?',
- 'Labor/Overhead' => 'Koszty Pracownicze/Administracyjne',
- 'Language' => 'Jêzyk',
- 'Language deleted!' => 'Jêzyk usuniêty',
- 'Language saved!' => 'Jêzyk zapisany',
- 'Languages' => 'Jêzyki',
- 'Last Numbers & Default Accounts' => 'Ostatnie Numery i Konta Domy¶lne',
- 'Liability' => 'Zobowi±zania',
- 'Licensed to' => 'Licencja nale¿y do:',
- 'Link' => 'Dowi±zanie',
- 'Menu Width' => 'Szeroko¶æ Menu',
- 'Method' => 'Metoda',
- 'Name' => 'Nazwa',
- 'No' => 'Nie',
- 'No email address for' => 'Brak adresu email',
- 'Number' => 'Numer Katalogu',
- 'Number Format' => 'Format Numeru',
- 'Partnumber' => 'Symbol',
- 'Parts Inventory' => 'Inwentarz',
- 'Password' => 'Has³o',
- 'Payables' => 'Zobowi±zania',
- 'Payment' => 'Kasa Wyp³aci',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Preferencje Zapisane!',
- 'Printer' => 'Drukarka',
- 'Profit Center' => 'Centrum Zysków',
- 'Purchase Order Number' => 'Numer Zlecenia Zakupu',
- 'RFQ Number' => 'Numer Pro¶by o Ofertê',
- 'Rate' => 'Stawka',
- 'Receivables' => 'Nale¿no¶ci',
- 'Reference' => 'Odno¶nik',
- 'Remove Audit trails up to' => 'Usuñ ¦lady Audytu do',
- 'Retained Earnings' => 'Zysk',
- 'SIC deleted!' => 'EKD usuniêty!',
- 'SIC saved!' => 'EKD zapisany!',
- 'Sales Invoice Number' => 'Numer Faktury VAT Sprzeda¿y',
- 'Sales Order Number' => 'Numer Zlecenia Sprzeda¿y',
- 'Sales Quotation Number' => 'Numer Oferty Sprzeda¿y',
- 'Save' => 'Zapisz',
- 'Save as new' => 'Zapisz jako nowe',
- 'Service Items' => 'Us³ugi',
- 'Signature' => 'Podpis',
- 'Standard Industrial Codes' => 'Europejska Klasyfikacja Dzia³alno¶ci',
- 'Stylesheet' => 'Strona Stylowa',
- 'System Defaults' => 'Ustawienia Domy¶lne',
- 'Tax' => 'Podatek',
- 'Tax Accounts' => 'Konta Podatkowe',
- 'Template saved!' => 'Szablon zapisany',
- 'Transaction reversal enforced for all dates' => 'Zmiana transakcji narzucona dla wszystkich okresów',
- 'Transaction reversal enforced up to' => 'Zmiana transakcji narzucona do',
- 'Type of Business' => 'Rodzaj Dzia³alno¶ci',
- 'User' => 'U¿ytkownik',
- 'Vendor Invoice Number' => 'Numer Faktury VAT Zakupu',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Version' => 'Wersja',
- 'Warehouse deleted!' => 'Magazyn usuniêty',
- 'Warehouse saved!' => 'Magazyn zapisany!',
- 'Warehouses' => 'Magazyny',
- 'Weight Unit' => 'Jednostka Wagi',
- 'Yearend' => 'Koniec Roku Finansowego',
- 'Yearend date missing!' => 'Brakuje Dnia Koñca Roku Finansowge!',
- 'Yearend posted!' => 'Rok Finansowy Zatwierdzony!',
- 'Yearend posting failed!' => 'Zatwierdzenie Roku Finansowego niedokonane!',
- 'Yes' => 'Tak',
- 'account cannot be set to any other type of account' => 'konto nie mo¿e byæ ustawione do wszelkich innych kont',
- 'localhost' => 'serwer lokalny',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'dodaj_konto' => 'add_account',
- 'dodaj_dzia³alno¶æ' => 'add_business',
- 'dodaj_wydzia³' => 'add_department',
- 'dodaj_jêzyk' => 'add_language',
- 'dodaj_ekd' => 'add_sic',
- 'dodaj_magazyn' => 'add_warehouse',
- 'kontynuj' => 'continue',
- 'skopiuj_do_planu_kont' => 'copy_to_coa',
- 'usuñ' => 'delete',
- 'zmieñ' => 'edit',
- 'zmiany_konta' => 'edit_account',
- 'zapisz' => 'save',
- 'zapisz_jako_nowe' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ap b/sql-ledger/locale/pl/ap
deleted file mode 100644
index 6744057..0000000
--- a/sql-ledger/locale/pl/ap
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Zobowi±zania Nieuregulowane',
- 'AP Transaction' => 'Transakcja Zobowi±zañ',
- 'AP Transactions' => 'Transakcje Zobowi±zañ',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add AP Transaction' => 'Rejestr w Ksiêdze Zobowi±zañ',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Amount Due' => 'Kwota Nale¿na',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Transaction' => 'Czy chcesz usun±æ Transakcjê?',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Cannot delete transaction!' => 'Nie mo¿esz usun±æ transakcji!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji po zamkniêciu okresu!',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Check' => 'Czek',
- 'Closed' => 'Zamkniêto',
- 'Confirm!' => 'Potwierd¿!',
- 'Continue' => 'Kontynuj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Zap³aty',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Due Date' => 'Termin P³atno¶ci',
- 'Due Date missing!' => 'Brak Terminu P³atno¶ci!',
- 'Edit AP Transaction' => 'Zmiany Transakcji Konta Zobowi±zañ',
- 'Employee' => 'Pracownik',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Manager' => 'Kierownik',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Month' => 'Miesi±c',
- 'Notes' => 'Noty',
- 'Nothing to print!' => 'Nic do wydrukowania!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otworzono',
- 'Order' => 'Zlecenie',
- 'Order Number' => 'Numer ZLecenia',
- 'PDF' => 'PDF',
- 'Paid' => 'Zap³acono',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payments' => 'Wyp³aty',
- 'Period' => 'Okres',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Postscript' => 'Postscript',
- 'Print' => 'Wydrukuj',
- 'Print and Post' => 'Wydrukuj i Zatwierd¿',
- 'Printed' => 'Wydrukowane',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Quarter' => 'Kwarta³',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Receipt' => 'Kasa Przyjmie',
- 'Remaining' => 'Pozosta³e',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select payment' => 'Wybierz p³atno¶æ',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax' => 'Podatek',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Transaction' => 'Transakcja',
- 'Transaction deleted!' => 'Transakcja usuniêta',
- 'Transaction posted!' => 'Transakcja zatwierdzona',
- 'Update' => 'Uzupe³nij',
- 'Vendor' => 'Dostawca',
- 'Vendor Invoice.' => 'Faktura VAT Zakupu.',
- 'Vendor missing!' => 'Brak Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transakcja_zobowi±zañ' => 'ap_transaction',
- 'rejestr_w_ksiêdze_zobowi±zañ' => 'add_ap_transaction',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zmiany_transakcji_konta_zobowi±zañ' => 'edit_ap_transaction',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'wydrukuj' => 'print',
- 'wydrukuj_i_zatwierd¿' => 'print_and_post',
- 'uzupe³nij' => 'update',
- 'faktura_vat_zakupu.' => 'vendor_invoice.',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ar b/sql-ledger/locale/pl/ar
deleted file mode 100644
index 700bcf2..0000000
--- a/sql-ledger/locale/pl/ar
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Nale¿no¶ci Nieuregulowane',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'AR Transactions' => 'Transakcje Nale¿no¶ci',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add AR Transaction' => 'Rejestr w Ksiêdze Nale¿no¶ci',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Amount Due' => 'Kwota Nale¿na',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Transaction' => 'Czy chcesz usun±æ Transakcjê?',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Cannot delete transaction!' => 'Nie mo¿esz usun±æ transakcji!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji po zamkniêciu okresu!',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Check' => 'Czek',
- 'Closed' => 'Zamkniêto',
- 'Confirm!' => 'Potwierd¿!',
- 'Continue' => 'Kontynuj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Customer' => 'Odbiorca',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Zap³aty',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Due Date' => 'Termin P³atno¶ci',
- 'Due Date missing!' => 'Brak Terminu P³atno¶ci!',
- 'Edit AR Transaction' => 'Zmiany Transakcji Konta Nale¿no¶ci',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Manager' => 'Kierownik',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Month' => 'Miesi±c',
- 'Notes' => 'Noty',
- 'Nothing to print!' => 'Nic do wydrukowania!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otworzono',
- 'Order' => 'Zlecenie',
- 'Order Number' => 'Numer ZLecenia',
- 'PDF' => 'PDF',
- 'Paid' => 'Zap³acono',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payments' => 'Wyp³aty',
- 'Period' => 'Okres',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Postscript' => 'Postscript',
- 'Print' => 'Wydrukuj',
- 'Print and Post' => 'Wydrukuj i Zatwierd¿',
- 'Printed' => 'Wydrukowane',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Quarter' => 'Kwarta³',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Receipt' => 'Kasa Przyjmie',
- 'Remaining' => 'Pozosta³e',
- 'Sales Invoice.' => 'Faktura VAT Sprzeda¿y.',
- 'Salesperson' => 'Sprzedawca',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select payment' => 'Wybierz p³atno¶æ',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Ship via' => 'Wy¶lij przez',
- 'Shipping Point' => 'Punkt Dostawy',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax' => 'Podatek',
- 'Tax Included' => 'Podatek Wliczony',
- 'Till' => 'Kasa',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Transaction' => 'Transakcja',
- 'Transaction deleted!' => 'Transakcja usuniêta',
- 'Transaction posted!' => 'Transakcja zatwierdzona',
- 'Update' => 'Uzupe³nij',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transakcja_nale¿no¶ci' => 'ar_transaction',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'wydrukuj' => 'print',
- 'wydrukuj_i_zatwierd¿' => 'print_and_post',
- 'faktura_vat_sprzeda¿y.' => 'sales_invoice.',
- 'uzupe³nij' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/arap b/sql-ledger/locale/pl/arap
deleted file mode 100644
index 250894c..0000000
--- a/sql-ledger/locale/pl/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adres',
- 'Continue' => 'Kontynuj',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Description' => 'Opis',
- 'Number' => 'Numer Katalogu',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'kontynuj' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/arapprn b/sql-ledger/locale/pl/arapprn
deleted file mode 100644
index 9873dde..0000000
--- a/sql-ledger/locale/pl/arapprn
+++ /dev/null
@@ -1,37 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Amount' => 'Kwota',
- 'Check' => 'Czek',
- 'Continue' => 'Kontynuj',
- 'Date' => 'Data',
- 'Memo' => 'Notatka',
- 'Nothing to print!' => 'Nic do wydrukowania!',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Wydrukowane',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Receipt' => 'Kasa Przyjmie',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select payment' => 'Wybierz p³atno¶æ',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Source' => '¯ród³o',
- 'Transaction' => 'Transakcja',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'kontynuj' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/bp b/sql-ledger/locale/pl/bp
deleted file mode 100644
index 7ecf75d..0000000
--- a/sql-ledger/locale/pl/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Are you sure you want to remove the marked entries from the queue?' => 'Czy chcesz usun±æ oznaczone wej¶cia z kolejki?',
- 'Bin Lists' => 'Wykazy Koszy',
- 'Cannot remove files!' => 'Nie mo¿esz usun±æ pliku!',
- 'Checks' => 'Czeki',
- 'Confirm!' => 'Potwierd¿!',
- 'Continue' => 'Kontynuj',
- 'Current' => 'Bie¿±cy',
- 'Customer' => 'Odbiorca',
- 'Date' => 'Data',
- 'From' => 'Od',
- 'Invoice' => 'Faktura',
- 'Invoice Number' => 'Numer Faktury',
- 'Marked entries printed!' => 'Zaznaczone wpisy wydrukowane',
- 'Month' => 'Miesi±c',
- 'Order' => 'Zlecenie',
- 'Order Number' => 'Numer ZLecenia',
- 'Packing Lists' => 'Listy Pakunkowe',
- 'Period' => 'Okres',
- 'Pick Lists' => 'Listy Pobrania',
- 'Print' => 'Wydrukuj',
- 'Printing ... ' => 'Drukuje ...',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Quarter' => 'Kwarta³',
- 'Quotation' => 'Oferta',
- 'Quotation Number' => 'Numer Oferty',
- 'Quotations' => 'Oferty',
- 'RFQs' => 'Pro¶by o Ofertê',
- 'Receipts' => 'Wp³aty',
- 'Reference' => 'Odno¶nik',
- 'Remove' => 'Usuñ',
- 'Removed spoolfiles!' => 'plik kolejki wydruków',
- 'Removing marked entries from queue ...' => 'Zaznaczone wpisy usuwane z kolejki ...',
- 'Sales Invoices' => 'Faktury VAT Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Select all' => 'Wybierz wszystko',
- 'Spoolfile' => 'Plik Kolejki Wydruków',
- 'To' => 'do',
- 'Vendor' => 'Dostawca',
- 'Work Orders' => 'Zlecenia Robocze',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
- 'done' => 'wykonane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'kontynuj' => 'continue',
- 'wydrukuj' => 'print',
- 'usuñ' => 'remove',
- 'wybierz_wszystko' => 'select_all',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ca b/sql-ledger/locale/pl/ca
deleted file mode 100644
index cdd9026..0000000
--- a/sql-ledger/locale/pl/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Plan Kont',
- 'Credit' => 'Kredyt',
- 'Current' => 'Bie¿±cy',
- 'Date' => 'Data',
- 'Debit' => 'Debet',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'List Transactions' => 'Wykaz Transakcji',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Month' => 'Miesi±c',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Period' => 'Okres',
- 'Project Number' => 'Numer Projektu',
- 'Quarter' => 'Kwarta³',
- 'R' => 'R',
- 'Reference' => 'Odno¶nik',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'To' => 'do',
- 'Year' => 'Rok',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'wykaz_transakcji' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/cp b/sql-ledger/locale/pl/cp
deleted file mode 100644
index 3d1299d..0000000
--- a/sql-ledger/locale/pl/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ksiêga Zobowi±zañ',
- 'AR' => 'Ksiêga Nale¿no¶ci',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Address' => 'Adres',
- 'All' => 'Wszystko',
- 'Amount' => 'Kwota',
- 'Amount Due' => 'Kwota Nale¿na',
- 'Cannot post Payment!' => 'Nie mo¿esz zatwierdziæ Op³aty!',
- 'Cannot post Receipt!' => 'Nie mo¿esz zatwierdziæ Wp³aty!',
- 'Cannot process payment for a closed period!' => 'Niemo¿na przetworzyæ p³atno¶ci po zamkniêciu okresu',
- 'Continue' => 'Kontynuj',
- 'Currency' => 'Waluta',
- 'Customer' => 'Odbiorca',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Date missing!' => 'Brak Daty',
- 'Department' => 'Wydzia³',
- 'Deposit' => 'Kasa Przyjmie',
- 'Description' => 'Opis',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Invoice' => 'Faktura',
- 'Invoices' => 'Faktury',
- 'Memo' => 'Notatka',
- 'Nothing outstanding for ' => 'Nic nie brakuje',
- 'Number' => 'Numer Katalogu',
- 'PDF' => 'PDF',
- 'Payment' => 'Kasa Wyp³aci',
- 'Payment posted!' => 'Wyp³ata zatwierdzona',
- 'Post' => 'Zatwierd¿',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Przedp³ata',
- 'Print' => 'Wydrukuj',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Queue' => 'Kolejka',
- 'Receipt' => 'Kasa Przyjmie',
- 'Receipt posted!' => 'Wp³ata zapisana!',
- 'Screen' => 'Ekran',
- 'Select' => 'Wybierz',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Source' => '¯ród³o',
- 'Update' => 'Uzupe³nij',
- 'Vendor' => 'Dostawca',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'kontynuj' => 'continue',
- 'zatwierd¿' => 'post',
- 'wydrukuj' => 'print',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ct b/sql-ledger/locale/pl/ct
deleted file mode 100644
index bf9494b..0000000
--- a/sql-ledger/locale/pl/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transakcja Zobowi±zañ',
- 'AP Transactions' => 'Transakcje Zobowi±zañ',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'AR Transactions' => 'Transakcje Nale¿no¶ci',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Customer' => 'Dodaj Odbiorcê',
- 'Add Vendor' => 'Dodaj Dostawcê',
- 'Address' => 'Adres',
- 'All' => 'Wszystko',
- 'Amount' => 'Kwota',
- 'BIC' => 'SWIFT',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Break' => 'Próg Rentowno¶ci',
- 'Cannot delete customer!' => 'Nie mo¿esz usun±æ odbiorcy!',
- 'Cannot delete vendor!' => 'Nie mo¿esz usun±æ dostawcy!',
- 'Cc' => 'Cc',
- 'City' => 'Miasto',
- 'Closed' => 'Zamkniêto',
- 'Company Name' => 'Nazwa Firmy',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Cost' => 'Koszt',
- 'Could not save pricelist!' => 'Nie mo¿e zapisaæ cennika!',
- 'Country' => 'Kraj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Customer History' => 'Statystyka Sprzeda¿y',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer deleted!' => 'Odbiorca usuniêty',
- 'Customer saved!' => 'Odbiorca zapisany!',
- 'Customers' => 'Odbiorcy',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Description' => 'Opis',
- 'Detail' => 'Wyszczególnienie',
- 'Discount' => 'Rabat',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Zmiany Odbiorcy',
- 'Edit Vendor' => 'Zmiany Dostawcy',
- 'Employee' => 'Pracownik',
- 'Enddate' => 'Dzieñ Zwolnienia',
- 'Fax' => 'Fax',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupa',
- 'IBAN' => 'IBAN/NRB',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'Faktura',
- 'Item already on pricelist!' => 'Produkt ju¿ zawarty w cenniku!',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Language' => 'Jêzyk',
- 'Leadtime' => 'Cykl',
- 'Manager' => 'Kierownik',
- 'Name' => 'Nazwa',
- 'Name missing!' => 'Brak Nazwy',
- 'Notes' => 'Noty',
- 'Number' => 'Numer Katalogu',
- 'Open' => 'Otworzono',
- 'Order' => 'Zlecenie',
- 'Orphaned' => 'Zbêdne',
- 'Part Number' => 'Symbol',
- 'Phone' => 'Tel.',
- 'Pricegroup' => 'Grupa cenowa',
- 'Pricelist' => 'Cennik',
- 'Project Number' => 'Numer Projektu',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quotation' => 'Oferta',
- 'Quotations' => 'Oferty',
- 'RFQ' => 'Pro¶ba o Ofertê',
- 'Request for Quotations' => 'Pro¶ba o Oferty',
- 'SIC' => 'EKD',
- 'SKU' => 'SWW',
- 'Sales Invoice' => 'Faktura VAT Sprzeda¿y',
- 'Sales Invoices' => 'Faktury VAT Sprzeda¿y',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Salesperson' => 'Sprzedawca',
- 'Save' => 'Zapisz',
- 'Save Pricelist' => 'Zapisz Cennik',
- 'Search' => 'Znajd¿',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Serial Number' => 'Numer Seryjny',
- 'Shipping Address' => 'Adres Dostawy',
- 'Startdate' => 'Dzieñ Zatrudnienia',
- 'State' => 'Rejon',
- 'State/Province' => 'Województwo',
- 'Sub-contract GIFI' => 'Subkontrakt GIFI',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Summary' => 'Skrót',
- 'Tax' => 'Podatek',
- 'Tax Included' => 'Podatek Wliczony',
- 'Tax Number' => 'NIP',
- 'Tax Number / SSN' => 'NIP / PESEL',
- 'Taxable' => 'Opodatkowane',
- 'Terms' => 'Warunki: Netto',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Type of Business' => 'Rodzaj Dzia³alno¶ci',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Vendor History' => 'Statystyka Dostaw',
- 'Vendor Invoice' => 'Faktura VAT Zakupu',
- 'Vendor Invoices' => 'Faktury VAT Zakupu',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor deleted!' => 'Dostawca usuniêty',
- 'Vendor saved!' => 'Dostawca zapisany',
- 'Vendors' => 'Dostawcy',
- 'days' => 'dni',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transakcja_zobowi±zañ' => 'ap_transaction',
- 'transakcja_nale¿no¶ci' => 'ar_transaction',
- 'dodaj_odbiorcê' => 'add_customer',
- 'dodaj_dostawcê' => 'add_vendor',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'cennik' => 'pricelist',
- 'zlecenie_zakupu' => 'purchase_order',
- 'oferta' => 'quotation',
- 'pro¶ba_o_ofertê' => 'rfq',
- 'faktura_vat_sprzeda¿y' => 'sales_invoice',
- 'zlecenie_sprzeda¿y' => 'sales_order',
- 'zapisz' => 'save',
- 'zapisz_cennik' => 'save_pricelist',
- 'uzupe³nij' => 'update',
- 'faktura_vat_zakupu' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/gl b/sql-ledger/locale/pl/gl
deleted file mode 100644
index 323fa41..0000000
--- a/sql-ledger/locale/pl/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transakcja Zobowi±zañ',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Cash Transfer Transaction' => 'Dokonaj Przelewu',
- 'Add General Ledger Transaction' => 'Dodaj Transakcjê w Ksiêdze G³ównej',
- 'Address' => 'Adres',
- 'All' => 'Wszystko',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Transaction' => 'Czy chcesz usun±æ Transakcjê?',
- 'Asset' => 'Aktywy',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => 'Nie mo¿esz usun±æ transakcji!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji po zamkniêciu okresu!',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Confirm!' => 'Potwierd¿!',
- 'Continue' => 'Kontynuj',
- 'Contra' => 'Konto Przeciwstawne',
- 'Credit' => 'Kredyt',
- 'Current' => 'Bie¿±cy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Debit' => 'Debet',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Edit Cash Transfer Transaction' => 'Zmiana Transakcji Kasowej',
- 'Edit General Ledger Transaction' => 'Zmiany w Ksiêdze G³ównej',
- 'Equity' => 'Kapita³',
- 'Expense' => 'Koszt',
- 'FX' => 'Kurs Walut',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'Transakcja Ksiêgi G³ównej',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income' => 'Przychód',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Liability' => 'Zobowi±zania',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Month' => 'Miesi±c',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Out of balance transaction!' => 'Niezgodne Saldo Transakcji!',
- 'Period' => 'Okres',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Quarter' => 'Kwarta³',
- 'R' => 'R',
- 'Reference' => 'Odno¶nik',
- 'Reference missing!' => 'Brak Odno¶nika',
- 'Reports' => 'Sprawozdania',
- 'Sales Invoice ' => 'Faktura VAT Sprzeda¿y',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'Warto¶æ Netto',
- 'To' => 'do',
- 'Transaction Date missing!' => 'Brak Daty Transakcji!',
- 'Transaction deleted!' => 'Transakcja usuniêta',
- 'Transaction posted!' => 'Transakcja zatwierdzona',
- 'Update' => 'Uzupe³nij',
- 'Vendor Invoice ' => 'Faktura VAT Zakupu',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Warning!' => 'Ostrze¿enie',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transakcja_zobowi±zañ' => 'ap_transaction',
- 'transakcja_nale¿no¶ci' => 'ar_transaction',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'transakcja_ksiêgi_g³ównej' => 'gl_transaction',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'faktura_vat_sprzeda¿y' => 'sales_invoice_',
- 'uzupe³nij' => 'update',
- 'faktura_vat_zakupu' => 'vendor_invoice_',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/hr b/sql-ledger/locale/pl/hr
deleted file mode 100644
index ed0c021..0000000
--- a/sql-ledger/locale/pl/hr
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ksiêga Zobowi±zañ',
- 'Above' => 'Powy¿szy',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Deduction' => 'Dodaj Odliczenie',
- 'Add Employee' => 'Dodaj Pracownika',
- 'Address' => 'Adres',
- 'Administrator' => 'Administrator',
- 'After Deduction' => 'Po Odliczeniu',
- 'All' => 'Wszystko',
- 'Allowances' => 'Dodatki',
- 'Amount' => 'Kwota',
- 'Amount missing!' => 'Brakuje kwoty!',
- 'BIC' => 'SWIFT',
- 'Based on' => 'Bazowany na',
- 'Before Deduction' => 'Przed Odliczeniem',
- 'Below' => 'Poni¿ej',
- 'City' => 'Miasto',
- 'Continue' => 'Kontynuj',
- 'Country' => 'Kraj',
- 'Deduct after' => 'Potr±æ po',
- 'Deduction deleted!' => 'Potr±cenie usuniête',
- 'Deduction saved!' => 'Potr±cenie zapisane',
- 'Deductions' => 'Potr±cenia',
- 'Delete' => 'Usuñ',
- 'Description' => 'Opis',
- 'Description missing!' => 'Brak Opisu!',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Zmieñ Potr±cenie',
- 'Edit Employee' => 'Zmiany Pracownika',
- 'Employee' => 'Pracownik',
- 'Employee Name' => 'Nazwisko Pracownika',
- 'Employee Number' => 'Numer Pracownika',
- 'Employee deleted!' => 'Pracownik usuniêty!',
- 'Employee pays' => 'Pracownik p³aci',
- 'Employee saved!' => 'Pracownik zapisany',
- 'Employees' => 'Pracownicy',
- 'Employer' => 'Pracodawca',
- 'Employer pays' => 'Pracodawca p³aci',
- 'Enddate' => 'Dzieñ Zwolnienia',
- 'Expense' => 'Koszt',
- 'Home Phone' => 'Telefon domowy',
- 'IBAN' => 'IBAN/NRB',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Login' => 'Zarejestrój siê',
- 'Manager' => 'Kierownik',
- 'Maximum' => 'Maxymalna',
- 'Name' => 'Nazwa',
- 'Name missing!' => 'Brak Nazwy',
- 'Notes' => 'Noty',
- 'Number' => 'Numer Katalogu',
- 'Orphaned' => 'Zbêdne',
- 'Payroll Deduction' => 'Lista P³ac - Potr±cenia',
- 'Rate' => 'Stawka',
- 'Rate missing!' => 'Brakuje Stawki',
- 'Role' => 'Funkcja',
- 'S' => 'S',
- 'SSN' => 'PESEL',
- 'Sales' => 'Sprzeda¿',
- 'Save' => 'Zapisz',
- 'Save as new' => 'Zapisz jako nowe',
- 'Startdate' => 'Dzieñ Zatrudnienia',
- 'State/Province' => 'Województwo',
- 'Update' => 'Uzupe³nij',
- 'User' => 'U¿ytkownik',
- 'Work Phone' => 'Telefon-praca',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'dodaj_odliczenie' => 'add_deduction',
- 'dodaj_pracownika' => 'add_employee',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zapisz' => 'save',
- 'zapisz_jako_nowe' => 'save_as_new',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ic b/sql-ledger/locale/pl/ic
deleted file mode 100644
index 67a9e58..0000000
--- a/sql-ledger/locale/pl/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Accrual' => 'Memoria³owa',
- 'Active' => 'Aktywne',
- 'Add' => 'Dodaj',
- 'Add Assembly' => 'Dodaj Zestaw',
- 'Add Labor/Overhead' => 'Dodaj wydatki Pracownicze/Administracyjne',
- 'Add Part' => 'Dodaj Produkt',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Add Service' => 'Dodaj Us³ugi',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Assemblies' => 'Zestawy',
- 'Assemblies restocked!' => 'Zestawy uzupe³nione',
- 'Assembly' => 'Zestaw',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'BOM' => 'Struktura Wyrobu',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Break' => 'Próg Rentowno¶ci',
- 'COGS' => 'Koszta Sprzeda¿y',
- 'Cannot delete item!' => 'Nie mo¿esz usun±æ pozycji!',
- 'Cannot stock assemblies!' => 'Nie mo¿na wstawiæ z³o¿enia',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Kontrola Inwentarza',
- 'City' => 'Miasto',
- 'Closed' => 'Zamkniêto',
- 'Company Name' => 'Nazwa Firmy',
- 'Components' => 'Sk³adniki',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Cost' => 'Koszt',
- 'Country' => 'Kraj',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Customer' => 'Odbiorca',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Description' => 'Opis',
- 'Drawing' => 'Rysunek',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit Assembly' => 'Zmiany Zestawieñ',
- 'Edit Labor/Overhead' => 'Zmieñ wydatki Pracownicze/Administracyjne',
- 'Edit Part' => 'Zmiany Produktu',
- 'Edit Service' => 'Zmiany Us³ug',
- 'Employee' => 'Pracownik',
- 'Expense' => 'Koszt',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'Image' => 'Grafika',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income' => 'Przychód',
- 'Individual Items' => 'Indywidualne Czê¶ci',
- 'Inventory' => 'Inwentarz',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Ilo¶æ Inventarza musi byæ równa zero zanim bêdzie mozna zdezaktualizowaæ ten zestaw!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Ilo¶æ inventarza musi byæ równa zero zanim bêdzie mo¿na zdezaktualizowaæ t± czê¶æ!',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Item deleted!' => 'Pozycja usuniêta',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Items' => 'Pozycje',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Labor/Overhead' => 'Koszty Pracownicze/Administracyjne',
- 'Leadtime' => 'Cykl',
- 'Line Total' => 'Suma ca³kowita',
- 'Link Accounts' => 'Konta dowi±zane',
- 'List' => 'Spis',
- 'List Price' => 'Cena',
- 'Make' => 'Marka',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'Markup' => 'Mar¿a',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Microfiche' => 'Mikrofilm',
- 'Model' => 'Model',
- 'Name' => 'Nazwa',
- 'No.' => 'Nr.',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Obsolete' => 'Przestarza³e',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'On Hand' => 'Stan Zapasu Podrêcznego',
- 'Open' => 'Otworzono',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'Orphaned' => 'Zbêdne',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Part' => 'Produkt',
- 'Parts' => 'Produkty',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Pricegroup' => 'Grupa cenowa',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quantity exceeds available units to stock!' => 'Ilo¶æ przewy¿sza dostêpne jednostki zasobów!',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Quotations' => 'Oferty',
- 'RFQ' => 'Pro¶ba o Ofertê',
- 'ROP' => 'PPZ',
- 'Recd' => 'Otrzymano',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Invoice' => 'Faktura VAT Sprzeda¿y',
- 'Sales Invoices' => 'Faktury VAT Sprzeda¿y',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Save' => 'Zapisz',
- 'Save as new' => 'Zapisz jako nowe',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Sell' => 'Sprzeda¿',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Serial Number' => 'Numer Seryjny',
- 'Service' => 'Us³ugi',
- 'Services' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship to' => 'Wy¶lij do',
- 'Shipping Address' => 'Adres Dostawy',
- 'Short' => 'Niedobór',
- 'State/Province' => 'Województwo',
- 'Stock' => 'Zapas',
- 'Stock Assembly' => 'Wstaw Zestaw',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax' => 'Podatek',
- 'To' => 'do',
- 'Top Level' => 'Najwy¿szy Poziom',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Unit' => 'Jednostka',
- 'Unit of measure' => 'Jednostka miary',
- 'Update' => 'Uzupe³nij',
- 'Updated' => 'Uzupe³nione',
- 'Vendor' => 'Dostawca',
- 'Vendor Invoice' => 'Faktura VAT Zakupu',
- 'Vendor Invoices' => 'Faktury VAT Zakupu',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Warehouse' => 'Magazyn',
- 'Weight' => 'Waga',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'days' => 'dni',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'dodaj_zestaw' => 'add_assembly',
- 'dodaj_wydatki_pracownicze/administracyjne' => 'add_labor/overhead',
- 'dodaj_produkt' => 'add_part',
- 'dodaj_us³ugi' => 'add_service',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zmiany_zestawieñ' => 'edit_assembly',
- 'zmiany_produktu' => 'edit_part',
- 'zmiany_us³ug' => 'edit_service',
- 'zapisz' => 'save',
- 'zapisz_jako_nowe' => 'save_as_new',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/io b/sql-ledger/locale/pl/io
deleted file mode 100644
index 8af1121..0000000
--- a/sql-ledger/locale/pl/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Address' => 'Adres',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Cc' => 'Cc',
- 'City' => 'Miasto',
- 'Company Name' => 'Nazwa Firmy',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Country' => 'Kraj',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Date' => 'Data',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Description' => 'Opis',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'In-line' => 'W³±czony',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'No.' => 'Nr.',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Part' => 'Produkt',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Recd' => 'Otrzymano',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Service' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship to' => 'Wy¶lij do',
- 'Shipping Address' => 'Adres Dostawy',
- 'State/Province' => 'Województwo',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'To' => 'do',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Unit' => 'Jednostka',
- 'Vendor Number' => 'Numer Dostawcy',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'kontynuj' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ir b/sql-ledger/locale/pl/ir
deleted file mode 100644
index 6d3e647..0000000
--- a/sql-ledger/locale/pl/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Add Vendor Invoice' => 'Zarejestrój Fakturê VAT Zakupu',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Invoice Number' => 'Czy chcesz usun±æ Numer Faktury?',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Cannot delete invoice!' => 'Nie mo¿esz usun±æ factury!',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury po zamkniêciu okresu!',
- 'Cannot post invoice!' => 'Nie mo¿esz zatwierdziæ faktury!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cc' => 'Cc',
- 'City' => 'Miasto',
- 'Company Name' => 'Nazwa Firmy',
- 'Confirm!' => 'Potwierd¿!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Country' => 'Kraj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Currency' => 'Waluta',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Due Date' => 'Termin P³atno¶ci',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit Vendor Invoice' => 'Zmiany Faktury Zamówienia',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'In-line' => 'W³±czony',
- 'Internal Notes' => 'Noty Wewnêtrzne',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Invoice deleted!' => 'Faktura usuniêta',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Language' => 'Jêzyk',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Message' => 'Wiadomo¶æ',
- 'No.' => 'Nr.',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payments' => 'Wyp³aty',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Recd' => 'Otrzymano',
- 'Record in' => 'Zapisz w',
- 'Remaining' => 'Pozosta³e',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Service' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship to' => 'Wy¶lij do',
- 'Shipping Address' => 'Adres Dostawy',
- 'Source' => '¯ród³o',
- 'State/Province' => 'Województwo',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Vendor' => 'Dostawca',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor missing!' => 'Brak Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'Yes' => 'Tak',
- 'ea' => 'szt',
- 'posted!' => 'zatwierdzone!',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'zlecenie_zakupu' => 'purchase_order',
- 'uzupe³nij' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/is b/sql-ledger/locale/pl/is
deleted file mode 100644
index f6d1508..0000000
--- a/sql-ledger/locale/pl/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Invoice' => 'Zarejestrój Fakturê VAT Sprzeda¿y',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Invoice Number' => 'Czy chcesz usun±æ Numer Faktury?',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Business' => 'Dzia³alno¶æ',
- 'Cannot delete invoice!' => 'Nie mo¿esz usun±æ factury!',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury po zamkniêciu okresu!',
- 'Cannot post invoice!' => 'Nie mo¿esz zatwierdziæ faktury!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cc' => 'Cc',
- 'City' => 'Miasto',
- 'Company Name' => 'Nazwa Firmy',
- 'Confirm!' => 'Potwierd¿!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Country' => 'Kraj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Currency' => 'Waluta',
- 'Customer' => 'Odbiorca',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Due Date' => 'Termin P³atno¶ci',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit Sales Invoice' => 'Zmiany Faktury Sprzeda¿y',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'In-line' => 'W³±czony',
- 'Internal Notes' => 'Noty Wewnêtrzne',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Invoice deleted!' => 'Faktura usuniêta',
- 'Invoice posted!' => 'Faktura zatwierdzona',
- 'Invoice processed!' => 'Faktura wykonana!',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Message' => 'Wiadomo¶æ',
- 'No.' => 'Nr.',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payments' => 'Wyp³aty',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Print' => 'Wydrukuj',
- 'Print and Post' => 'Wydrukuj i Zatwierd¿',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Recd' => 'Otrzymano',
- 'Record in' => 'Zapisz w',
- 'Remaining' => 'Pozosta³e',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Salesperson' => 'Sprzedawca',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Service' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship to' => 'Wy¶lij do',
- 'Ship via' => 'Wy¶lij przez',
- 'Shipping Address' => 'Adres Dostawy',
- 'Shipping Point' => 'Punkt Dostawy',
- 'Source' => '¯ród³o',
- 'State/Province' => 'Województwo',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trade Discount' => 'Rabat Handlowy',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'Yes' => 'Tak',
- 'ea' => 'szt',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'e_mail' => 'e_mail',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'wydrukuj' => 'print',
- 'wydrukuj_i_zatwierd¿' => 'print_and_post',
- 'zlecenie_sprzeda¿y' => 'sales_order',
- 'wy¶lij_do' => 'ship_to',
- 'uzupe³nij' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/login b/sql-ledger/locale/pl/login
deleted file mode 100644
index b5ecce8..0000000
--- a/sql-ledger/locale/pl/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Firma',
- 'Continue' => 'Kontynuj',
- 'Dataset is newer than version!' => 'Baza Danych jest nowsza ni¿ wersja!',
- 'Incorrect Dataset version!' => 'Nieprawid³owa wersja Zbioru Danych',
- 'Incorrect Password!' => 'Nieprawid³owe Has³o',
- 'Login' => 'Zarejestrój siê',
- 'Name' => 'Nazwa',
- 'Password' => 'Has³o',
- 'Upgrading to Version' => 'Uaktualnienie do nowej wersji',
- 'Version' => 'Wersja',
- 'You did not enter a name!' => 'Nie wstawiono nazwy!',
- 'done' => 'wykonane',
- 'is not a member!' => 'Nie jest cz³onkiem',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'zarejestrój_siê' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/menu b/sql-ledger/locale/pl/menu
deleted file mode 100644
index ed24b37..0000000
--- a/sql-ledger/locale/pl/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ksiêga Zobowi±zañ',
- 'AP Aging' => 'Plan P³atno¶ci Zobowi±zañ',
- 'AP Transaction' => 'Transakcja Zobowi±zañ',
- 'AR' => 'Ksiêga Nale¿no¶ci',
- 'AR Aging' => 'Plan P³atno¶ci Nale¿no¶ci',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Account' => 'Dodaj Konto',
- 'Add Assembly' => 'Dodaj Zestaw',
- 'Add Business' => 'Dodaj Dzia³alno¶æ',
- 'Add Customer' => 'Dodaj Odbiorcê',
- 'Add Department' => 'Dodaj Wydzia³',
- 'Add Employee' => 'Dodaj Pracownika',
- 'Add GIFI' => 'Dodaj GIFI',
- 'Add Group' => 'Dodaj Grupê',
- 'Add Labor/Overhead' => 'Dodaj wydatki Pracownicze/Administracyjne',
- 'Add Language' => 'Dodaj Jêzyk',
- 'Add Part' => 'Dodaj Produkt',
- 'Add Pricegroup' => 'Dodaj Grupê Cenow±',
- 'Add Project' => 'Dodaj Projekt',
- 'Add SIC' => 'Dodaj EKD',
- 'Add Service' => 'Dodaj Us³ugi',
- 'Add Transaction' => 'Dodaj Transakcjê',
- 'Add Vendor' => 'Dodaj Dostawcê',
- 'Add Warehouse' => 'Dodaj Magazyn',
- 'All Items' => 'Wszystkie Pozycje',
- 'Assemblies' => 'Zestawy',
- 'Audit Control' => 'Kontrola Audytu',
- 'Backup' => 'Kopia Zapasowa',
- 'Balance Sheet' => 'Bilans',
- 'Batch Printing' => 'Wydruki',
- 'Bin List' => 'Wykaz Kosza',
- 'Bin Lists' => 'Wykazy Koszy',
- 'Cash' => 'Kasa',
- 'Chart of Accounts' => 'Plan Kont',
- 'Check' => 'Czek',
- 'Checks' => 'Czeki',
- 'Components' => 'Sk³adniki',
- 'Customers' => 'Odbiorcy',
- 'Defaults' => 'Ustawienia',
- 'Departments' => 'Wydzia³y',
- 'Description' => 'Opis',
- 'Employees' => 'Pracownicy',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'Goods & Services' => 'Produkty i Us³ugi',
- 'Groups' => 'Grupy',
- 'HR' => 'Kadry',
- 'HTML Templates' => 'Szablony HTML',
- 'History' => 'Statystyka',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Invoice' => 'Faktura',
- 'LaTeX Templates' => 'Szablony LaTeX',
- 'Labor/Overhead' => 'Koszty Pracownicze/Administracyjne',
- 'Language' => 'Jêzyk',
- 'List Accounts' => 'Spis Kont',
- 'List Businesses' => 'Wykaz Dzia³alno¶ci',
- 'List Departments' => 'Wykaz Wydzia³ów',
- 'List GIFI' => 'Wykaz GIFI',
- 'List Languages' => 'Wykaz Jêzyków',
- 'List Projects' => 'Wykaz Projektów',
- 'List SIC' => 'Wykaz EKD',
- 'List Warehouses' => 'Wykaz Magazynów',
- 'Logout' => 'Wyrejestrój siê',
- 'Non-taxable' => 'Rejestr VAT - Nieopodatkowane',
- 'Open' => 'Otworzono',
- 'Order Entry' => 'Wystawianie Zleceñ',
- 'Outstanding' => 'Transakcje Nieuregulowane',
- 'POS' => 'Punkt Sprzeda¿y',
- 'POS Invoice' => 'Faktura Punktu Sprzeda¿y',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing Lists' => 'Listy Pakunkowe',
- 'Parts' => 'Produkty',
- 'Payment' => 'Kasa Wyp³aci',
- 'Payments' => 'Wyp³aty',
- 'Pick List' => 'Lista Pobrania',
- 'Pick Lists' => 'Listy Pobrania',
- 'Preferences' => 'Preferencje',
- 'Pricegroups' => 'Grupy cenowa',
- 'Print' => 'Wydrukuj',
- 'Projects' => 'Projekty',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Quotation' => 'Oferta',
- 'Quotations' => 'Oferty',
- 'RFQ' => 'Pro¶ba o Ofertê',
- 'RFQs' => 'Pro¶by o Ofertê',
- 'Receipt' => 'Kasa Przyjmie',
- 'Receipts' => 'Wp³aty',
- 'Receive' => 'Dostawy',
- 'Reconciliation' => 'Zbalansowanie Kont',
- 'Reports' => 'Sprawozdania',
- 'SIC' => 'EKD',
- 'Sale' => 'Sprzeda¿',
- 'Sales Invoice' => 'Faktura VAT Sprzeda¿y',
- 'Sales Invoices' => 'Faktury VAT Sprzeda¿y',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Save to File' => 'Zapisz w zbiorze',
- 'Search' => 'Znajd¿',
- 'Send by E-Mail' => 'Wys³ano przez E-Mail',
- 'Services' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Shipping' => 'Spedycja',
- 'Statement' => 'Wykaz',
- 'Stock Assembly' => 'Wstaw Zestaw',
- 'Stylesheet' => 'Strona Stylowa',
- 'System' => 'System',
- 'Tax collected' => 'Rejestr VAT - Sprzeda¿',
- 'Tax paid' => 'Rejestr VAT - Zakupy',
- 'Text Templates' => 'Szablony',
- 'Transactions' => 'Zestawienia Transakcji',
- 'Transfer' => 'Przelewy',
- 'Translations' => 'T³umaczenia',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Type of Business' => 'Rodzaj Dzia³alno¶ci',
- 'Vendor Invoice' => 'Faktura VAT Zakupu',
- 'Vendors' => 'Dostawcy',
- 'Version' => 'Wersja',
- 'Warehouses' => 'Magazyny',
- 'Work Order' => 'Zlecenie Robocze',
- 'Work Orders' => 'Zlecenia Robocze',
- 'Yearend' => 'Koniec Roku Finansowego',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/oe b/sql-ledger/locale/pl/oe
deleted file mode 100644
index 650dce6..0000000
--- a/sql-ledger/locale/pl/oe
+++ /dev/null
@@ -1,306 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Exchange Rate' => 'Dodaj Kurs Walut',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Invoice' => 'Zarejestrój Fakturê VAT Sprzeda¿y',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Add Vendor Invoice' => 'Zarejestrój Fakturê VAT Zakupu',
- 'Address' => 'Adres',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Order Number' => 'Czy chcesz usun±æ Numer Zamówienia?',
- 'Are you sure you want to delete Quotation Number' => 'Czy chcesz usun±æ Numer Oferty?',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Business' => 'Dzia³alno¶æ',
- 'C' => 'C',
- 'Cannot delete order!' => 'Nie mo¿esz usun±æ zamówienia!',
- 'Cannot delete quotation!' => 'Nie mo¿esz usun±æ oferty',
- 'Cannot save order!' => 'Nie mo¿na zapisaæ zamowienia!',
- 'Cannot save quotation!' => 'Nie mo¿na zapisaæ oferty!',
- 'Cc' => 'Cc',
- 'City' => 'Miasto',
- 'Closed' => 'Zamkniêto',
- 'Company Name' => 'Nazwa Firmy',
- 'Confirm!' => 'Potwierd¿!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Could not save!' => 'Nie mo¿e zapisaæ!',
- 'Could not transfer Inventory!' => 'Nie mo¿e przesun±æ Inwentarza',
- 'Country' => 'Kraj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Customer' => 'Odbiorca',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Date Received' => 'Data Wp³aty',
- 'Date received missing!' => 'Brak Daty Wp³aty',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Done' => 'Zrobione',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit Purchase Order' => 'Zmiany Zlecenia Zakupu',
- 'Edit Quotation' => 'Zmieñ Ofertê',
- 'Edit Request for Quotation' => 'Zmieñ Pro¶bê o Ofertê',
- 'Edit Sales Order' => 'Zmiany Zlecenia Sprzedazy',
- 'Employee' => 'Pracownik',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Internal Notes' => 'Noty Wewnêtrzne',
- 'Inventory saved!' => 'Inwentarz zapisany!',
- 'Inventory transferred!' => 'Inwentarz przeniesiony!',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Manager' => 'Kierownik',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Month' => 'Miesi±c',
- 'No.' => 'Nr.',
- 'Notes' => 'Noty',
- 'Nothing entered!' => 'Nic nie wprowadzono!',
- 'Nothing to transfer!' => 'Nie ma nic do przeniesienia!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'O' => 'O',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otworzono',
- 'Order' => 'Zlecenie',
- 'Order Date' => 'Data Zlecenia',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'Order deleted!' => 'Zlecenie usuniête',
- 'Order processed!' => 'Zlecenie wykonane',
- 'Order saved!' => 'Zlecenie zapisane',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Part' => 'Produkt',
- 'Part Number' => 'Symbol',
- 'Period' => 'Okres',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Print' => 'Wydrukuj',
- 'Print and Save' => 'Wydrukuj i Zapisz',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Purchase Orders' => 'Zlecenia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quarter' => 'Kwarta³',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation ' => 'Oferta',
- 'Quotation Date' => 'Data Oferty',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number' => 'Numer Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Quotation deleted!' => 'Oferta usuniêta',
- 'Quotations' => 'Oferty',
- 'RFQ' => 'Pro¶ba o Ofertê',
- 'RFQ ' => 'Prpo¶ba o Ofertê',
- 'RFQ Number' => 'Numer Pro¶by o Ofertê',
- 'Recd' => 'Otrzymano',
- 'Receive Merchandise' => 'Dostawy Towarów',
- 'Remaining' => 'Pozosta³e',
- 'Request for Quotation' => 'Pro¶ba o Ofertê',
- 'Request for Quotations' => 'Pro¶ba o Oferty',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Invoice' => 'Faktura VAT Sprzeda¿y',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Sales Orders' => 'Zlecenia Sprzeda¿y',
- 'Salesperson' => 'Sprzedawca',
- 'Save' => 'Zapisz',
- 'Save as new' => 'Zapisz jako nowe',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Service' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship Merchandise' => 'Wysy³ka Produktów',
- 'Ship to' => 'Wy¶lij do',
- 'Ship via' => 'Wy¶lij przez',
- 'Shipping Address' => 'Adres Dostawy',
- 'Shipping Date' => 'Dzieñ Dostawy',
- 'Shipping Date missing!' => 'Brak Dnia Dostawy!',
- 'Shipping Point' => 'Punkt Dostawy',
- 'State/Province' => 'Województwo',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Tax' => 'Podatek',
- 'Tax Included' => 'Podatek Wliczony',
- 'Terms' => 'Warunki: Netto',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trade Discount' => 'Rabat Handlowy',
- 'Transfer' => 'Przelewy',
- 'Transfer Inventory' => 'Przeniesienie Inventarza',
- 'Transfer to' => 'Przenie¶ do',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Valid until' => 'Wa¿ne do',
- 'Vendor' => 'Dostawca',
- 'Vendor Invoice' => 'Faktura VAT Zakupu',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor missing!' => 'Brak Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Warehouse' => 'Magazyn',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
- 'days' => 'dni',
- 'ea' => 'szt',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zrobione' => 'done',
- 'e_mail' => 'e_mail',
- 'wydrukuj' => 'print',
- 'wydrukuj_i_zapisz' => 'print_and_save',
- 'zlecenie_zakupu' => 'purchase_order',
- 'oferta' => 'quotation',
- 'oferta' => 'quotation_',
- 'pro¶ba_o_ofertê' => 'rfq',
- 'prpo¶ba_o_ofertê' => 'rfq_',
- 'faktura_vat_sprzeda¿y' => 'sales_invoice',
- 'zlecenie_sprzeda¿y' => 'sales_order',
- 'zapisz' => 'save',
- 'zapisz_jako_nowe' => 'save_as_new',
- 'wy¶lij_do' => 'ship_to',
- 'przelewy' => 'transfer',
- 'uzupe³nij' => 'update',
- 'faktura_vat_zakupu' => 'vendor_invoice',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/pe b/sql-ledger/locale/pl/pe
deleted file mode 100644
index 6229392..0000000
--- a/sql-ledger/locale/pl/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Add Group' => 'Dodaj Grupê',
- 'Add Pricegroup' => 'Dodaj Grupê Cenow±',
- 'Add Project' => 'Dodaj Projekt',
- 'All' => 'Wszystko',
- 'Continue' => 'Kontynuj',
- 'Delete' => 'Usuñ',
- 'Description' => 'Opis',
- 'Description Translations' => 'T³umaczenie Opisu',
- 'Edit Description Translations' => 'Zmieñ T³umaczenie Opisu',
- 'Edit Group' => 'Zmieñ Grupê',
- 'Edit Pricegroup' => 'Zmieñ Grupê Cenow±',
- 'Edit Project' => 'Zmiany Projektu',
- 'Group' => 'Grupa',
- 'Group Translations' => 'Grupój T³umaczenia',
- 'Group deleted!' => 'Grupa usuniêta',
- 'Group missing!' => 'Brakuje Grupy',
- 'Group saved!' => 'Grupa zapisana',
- 'Groups' => 'Grupy',
- 'Language' => 'Jêzyk',
- 'Languages not defined!' => 'Jêzyk nie zdefiniowany!',
- 'Number' => 'Numer Katalogu',
- 'Orphaned' => 'Zbêdne',
- 'Pricegroup' => 'Grupa cenowa',
- 'Pricegroup deleted!' => 'Grupa cenowa usuniêta',
- 'Pricegroup missing!' => 'Brakuje Grupy cenowej',
- 'Pricegroup saved!' => 'Grupa cenowa zapisana',
- 'Pricegroups' => 'Grupy cenowa',
- 'Project' => 'Projekt',
- 'Project Description Translations' => 'T³umaczenie Opisu Projektu',
- 'Project Number' => 'Numer Projektu',
- 'Project Number missing!' => 'Brak Numeru Projektu',
- 'Project deleted!' => 'Projekt usuniêty',
- 'Project saved!' => 'Projekt zapisany',
- 'Projects' => 'Projekty',
- 'Save' => 'Zapisz',
- 'Translation' => 'T³umaczenie',
- 'Translation deleted!' => 'T³umaczenie usuniête!',
- 'Translations saved!' => 'T³umaczenia zapisane!',
- 'Update' => 'Uzupe³nij',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'dodaj_grupê' => 'add_group',
- 'dodaj_grupê_cenow±' => 'add_pricegroup',
- 'dodaj_projekt' => 'add_project',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zapisz' => 'save',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/pos b/sql-ledger/locale/pl/pos
deleted file mode 100644
index 035483d..0000000
--- a/sql-ledger/locale/pl/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Add POS Invoice' => 'Dodaj Fakturê w Punkcie Sprzeda¿y',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Change' => 'Reszta',
- 'Continue' => 'Kontynuj',
- 'Credit Limit' => 'Limit Kredytu',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Customer' => 'Odbiorca',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Delete' => 'Usuñ',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Edit POS Invoice' => 'Zmieñ Fakturê Punktu Sprzeda¿y',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Extended' => 'Warto¶æ Netto',
- 'From' => 'Od',
- 'Language' => 'Jêzyk',
- 'Memo' => 'Notatka',
- 'Month' => 'Miesi±c',
- 'Number' => 'Numer Katalogu',
- 'Open' => 'Otworzono',
- 'Paid' => 'Zap³acono',
- 'Period' => 'Okres',
- 'Post' => 'Zatwierd¿',
- 'Posted!' => 'Zatwierdzone!',
- 'Price' => 'Cena Netto',
- 'Print' => 'Wydrukuj',
- 'Printed' => 'Wydrukowane',
- 'Qty' => 'Ilo¶æ',
- 'Quarter' => 'Kwarta³',
- 'Receipts' => 'Wp³aty',
- 'Record in' => 'Zapisz w',
- 'Remaining' => 'Pozosta³e',
- 'Salesperson' => 'Sprzedawca',
- 'Screen' => 'Ekran',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'Warto¶æ Netto',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Year' => 'Rok',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'zatwierd¿' => 'post',
- 'wydrukuj' => 'print',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/ps b/sql-ledger/locale/pl/ps
deleted file mode 100644
index 810fd99..0000000
--- a/sql-ledger/locale/pl/ps
+++ /dev/null
@@ -1,341 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Plan P³atno¶ci Zobowi±zañ',
- 'AR Aging' => 'Plan P³atno¶ci Nale¿no¶ci',
- 'AR Outstanding' => 'Nale¿no¶ci Nieuregulowane',
- 'AR Transaction' => 'Transakcja Nale¿no¶ci',
- 'AR Transactions' => 'Transakcje Nale¿no¶ci',
- 'Account' => 'Konto',
- 'Account Number' => 'Numer Konta',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Accounts' => 'Konta',
- 'Accrual' => 'Memoria³owa',
- 'Add AR Transaction' => 'Rejestr w Ksiêdze Nale¿no¶ci',
- 'Add POS Invoice' => 'Dodaj Fakturê w Punkcie Sprzeda¿y',
- 'Add Purchase Order' => 'Dodaj Zamówienie Zakupu',
- 'Add Quotation' => 'Dodaj Ofertê',
- 'Add Request for Quotation' => 'Dodaj Pro¶bê o Ofertê',
- 'Add Sales Invoice' => 'Zarejestrój Fakturê VAT Sprzeda¿y',
- 'Add Sales Order' => 'Dodaj Zlecenie Sprzeda¿y',
- 'Address' => 'Adres',
- 'All Accounts' => 'Wszystkie Konta',
- 'Amount' => 'Kwota',
- 'Amount Due' => 'Kwota Nale¿na',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Are you sure you want to delete Invoice Number' => 'Czy chcesz usun±æ Numer Faktury?',
- 'Are you sure you want to delete Transaction' => 'Czy chcesz usun±æ Transakcjê?',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Bilans',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Adres Korespondencji',
- 'Bin' => 'Kosz',
- 'Bin List' => 'Wykaz Kosza',
- 'Business' => 'Dzia³alno¶æ',
- 'Cannot delete invoice!' => 'Nie mo¿esz usun±æ factury!',
- 'Cannot delete transaction!' => 'Nie mo¿esz usun±æ transakcji!',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury po zamkniêciu okresu!',
- 'Cannot post invoice!' => 'Nie mo¿esz zatwierdziæ faktury!',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji po zamkniêciu okresu!',
- 'Cannot post transaction!' => 'Nie mo¿esz zatwierdziæ transakcji!',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Change' => 'Reszta',
- 'Check' => 'Czek',
- 'City' => 'Miasto',
- 'Closed' => 'Zamkniêto',
- 'Company Name' => 'Nazwa Firmy',
- 'Compare to' => 'Porównaj z',
- 'Confirm!' => 'Potwierd¿!',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Country' => 'Kraj',
- 'Credit' => 'Kredyt',
- 'Credit Limit' => 'Limit Kredytu',
- 'Curr' => 'Waluta',
- 'Currency' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Current Earnings' => 'Acdtualny Dochód',
- 'Customer' => 'Odbiorca',
- 'Customer Number' => 'Numer Odbiorcy',
- 'Customer missing!' => 'Brak Odbiorcy',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Date Paid' => 'Data Zap³aty',
- 'Debit' => 'Debet',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Decimalplaces' => 'Miejsca Dziesiêtne',
- 'Delete' => 'Usuñ',
- 'Delivery Date' => 'Data Dostawy',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Detail' => 'Wyszczególnienie',
- 'Due Date' => 'Termin P³atno¶ci',
- 'Due Date missing!' => 'Brak Terminu P³atno¶ci!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Wykaz do',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'E-mailed' => 'Wys³ano',
- 'Edit AR Transaction' => 'Zmiany Transakcji Konta Nale¿no¶ci',
- 'Edit POS Invoice' => 'Zmieñ Fakturê Punktu Sprzeda¿y',
- 'Edit Sales Invoice' => 'Zmiany Faktury Sprzeda¿y',
- 'Exch' => 'Kurs Walut',
- 'Exchange Rate' => 'Kurs Walut',
- 'Exchange rate for payment missing!' => 'Brakuje Kursu Walut dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje Kursu Walut',
- 'Extended' => 'Warto¶æ Netto',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Group' => 'Grupa',
- 'Group Items' => 'Grupój pozycje',
- 'Heading' => 'Nag³ówek',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include Exchange Rate Difference' => 'Za³±cz Ró¿nice Wymiany Walut',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Internal Notes' => 'Noty Wewnêtrzne',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Data Wystawienia',
- 'Invoice Date missing!' => 'Brak Daty Wystawienia',
- 'Invoice Number' => 'Numer Faktury',
- 'Invoice Number missing!' => 'Brak Numeru Faktury',
- 'Invoice deleted!' => 'Faktura usuniêta',
- 'Invoice posted!' => 'Faktura zatwierdzona',
- 'Invoice processed!' => 'Faktura wykonana!',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Language' => 'Jêzyk',
- 'Manager' => 'Kierownik',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Message' => 'Wiadomo¶æ',
- 'Method' => 'Metoda',
- 'Month' => 'Miesi±c',
- 'N/A' => 'N/A',
- 'No.' => 'Nr.',
- 'Non-taxable Purchases' => 'Rejestr VAT - Zakupy',
- 'Non-taxable Sales' => 'Rejestr VAT - Sprzeda¿',
- 'Notes' => 'Noty',
- 'Nothing selected!' => 'Nic nie zaznaczone!',
- 'Nothing to print!' => 'Nic do wydrukowania!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otworzono',
- 'Order' => 'Zlecenie',
- 'Order Date missing!' => 'Brak Daty Zlecenia',
- 'Order Number' => 'Numer ZLecenia',
- 'Order Number missing!' => 'Brak Numeru Zlecenia',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista Pakunkowa',
- 'Packing List Date missing!' => 'Brak Daty Listy Pakunkowej',
- 'Packing List Number missing!' => 'Brak Numeru Listy Pakunkowej',
- 'Paid' => 'Zap³acono',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty Wyp³aty',
- 'Payments' => 'Wyp³aty',
- 'Period' => 'Okres',
- 'Phone' => 'Tel.',
- 'Pick List' => 'Lista Pobrania',
- 'Post' => 'Zatwierd¿',
- 'Post as new' => 'Zatwierd¿ jako nowe',
- 'Posted!' => 'Zatwierdzone!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Cena Netto',
- 'Print' => 'Wydrukuj',
- 'Print and Post' => 'Wydrukuj i Zatwierd¿',
- 'Printed' => 'Wydrukowane',
- 'Project' => 'Projekt',
- 'Project Number' => 'Numer Projektu',
- 'Project Transactions' => 'Transakcje Projektów',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Purchase Order' => 'Zlecenie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quarter' => 'Kwarta³',
- 'Queue' => 'Kolejka',
- 'Queued' => 'Dane Kolejkowe',
- 'Quotation' => 'Oferta',
- 'Quotation Date missing!' => 'Brak Daty Oferty',
- 'Quotation Number missing!' => 'Brak Numeru Oferty',
- 'Recd' => 'Otrzymano',
- 'Receipt' => 'Kasa Przyjmie',
- 'Receipts' => 'Wp³aty',
- 'Record in' => 'Zapisz w',
- 'Remaining' => 'Pozosta³e',
- 'Report for' => 'Raport dla',
- 'Required by' => 'Termin Dostawy',
- 'SKU' => 'SWW',
- 'Sales Invoice.' => 'Faktura VAT Sprzeda¿y.',
- 'Sales Order' => 'Zlecenie Sprzeda¿y',
- 'Salesperson' => 'Sprzedawca',
- 'Screen' => 'Ekran',
- 'Select Printer or Queue!' => 'Wybierz Drukarkê lub Kolejkê',
- 'Select all' => 'Wybierz wszystko',
- 'Select from one of the items below' => 'Wybierz jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select payment' => 'Wybierz p³atno¶æ',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Serial No.' => 'Nr. Sr.',
- 'Service' => 'Us³ugi',
- 'Ship' => 'Wysy³ka',
- 'Ship to' => 'Wy¶lij do',
- 'Ship via' => 'Wy¶lij przez',
- 'Shipping Address' => 'Adres Dostawy',
- 'Shipping Point' => 'Punkt Dostawy',
- 'Source' => '¯ród³o',
- 'Standard' => 'Standartowe',
- 'State/Province' => 'Województwo',
- 'Statement' => 'Wykaz',
- 'Statement sent to' => 'Wykaz wys³any do',
- 'Statements sent to printer!' => 'Wykaz wys³any do drukarki',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Summary' => 'Skrót',
- 'Tax' => 'Podatek',
- 'Tax Included' => 'Podatek Wliczony',
- 'Tax collected' => 'Rejestr VAT - Sprzeda¿',
- 'Tax paid' => 'Rejestr VAT - Zakupy',
- 'Till' => 'Kasa',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trade Discount' => 'Rabat Handlowy',
- 'Transaction' => 'Transakcja',
- 'Transaction deleted!' => 'Transakcja usuniêta',
- 'Transaction posted!' => 'Transakcja zatwierdzona',
- 'Translation not on file!' => 'Brak t³umaczenia w zbiorze',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Unit' => 'Jednostka',
- 'Update' => 'Uzupe³nij',
- 'Vendor' => 'Dostawca',
- 'Vendor Number' => 'Numer Dostawcy',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => 'Zlecenie Robocze',
- 'Year' => 'Rok',
- 'Yes' => 'Tak',
- 'as at' => 'na dzieñ',
- 'ea' => 'szt',
- 'for Period' => 'za Okres',
- 'sent' => 'wys³ane',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transakcja_nale¿no¶ci' => 'ar_transaction',
- 'kontynuj' => 'continue',
- 'usuñ' => 'delete',
- 'e_mail' => 'e_mail',
- 'zatwierd¿' => 'post',
- 'zatwierd¿_jako_nowe' => 'post_as_new',
- 'wydrukuj' => 'print',
- 'wydrukuj_i_zatwierd¿' => 'print_and_post',
- 'faktura_vat_sprzeda¿y.' => 'sales_invoice.',
- 'zlecenie_sprzeda¿y' => 'sales_order',
- 'wybierz_wszystko' => 'select_all',
- 'wy¶lij_do' => 'ship_to',
- 'uzupe³nij' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/pw b/sql-ledger/locale/pl/pw
deleted file mode 100644
index ab02ded..0000000
--- a/sql-ledger/locale/pl/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Kontynuj',
- 'Password' => 'Has³o',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'kontynuj' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/rc b/sql-ledger/locale/pl/rc
deleted file mode 100644
index ca56c6c..0000000
--- a/sql-ledger/locale/pl/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Balance' => 'Saldo',
- 'Beginning Balance' => 'Saldo Pocz±tkowe',
- 'Cleared' => 'Rozliczone',
- 'Continue' => 'Kontynuj',
- 'Current' => 'Bie¿±cy',
- 'Date' => 'Data',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Decrease' => 'Zmniejszenie',
- 'Deposit' => 'Kasa Przyjmie',
- 'Description' => 'Opis',
- 'Detail' => 'Wyszczególnienie',
- 'Difference' => 'Ró¿nica',
- 'Done' => 'Zrobione',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'Include Exchange Rate Difference' => 'Za³±cz Ró¿nice Wymiany Walut',
- 'Increase' => 'Zwiêkszenie',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Month' => 'Miesi±c',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Out of balance!' => 'Niezgodne Saldo',
- 'Outstanding' => 'Transakcje Nieuregulowane',
- 'Payment' => 'Kasa Wyp³aci',
- 'Period' => 'Okres',
- 'Quarter' => 'Kwarta³',
- 'R' => 'R',
- 'Reconciliation' => 'Zbalansowanie Kont',
- 'Reconciliation Report' => 'Sprawozdanie Zbalansowania Kont',
- 'Select all' => 'Wybierz wszystko',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Source' => '¯ród³o',
- 'Statement Balance' => 'Wykaz Salda',
- 'Summary' => 'Skrót',
- 'To' => 'do',
- 'Update' => 'Uzupe³nij',
- 'Year' => 'Rok',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'kontynuj' => 'continue',
- 'zrobione' => 'done',
- 'wybierz_wszystko' => 'select_all',
- 'uzupe³nij' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pl/rp b/sql-ledger/locale/pl/rp
deleted file mode 100644
index 8d3fcca..0000000
--- a/sql-ledger/locale/pl/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Plan P³atno¶ci Zobowi±zañ',
- 'AR Aging' => 'Plan P³atno¶ci Nale¿no¶ci',
- 'Account' => 'Konto',
- 'Account Number' => 'Numer Konta',
- 'Accounting Menu' => 'Menu Ksiêgowo¶ci',
- 'Accounts' => 'Konta',
- 'Accrual' => 'Memoria³owa',
- 'Address' => 'Adres',
- 'All Accounts' => 'Wszystkie Konta',
- 'Amount' => 'Kwota',
- 'Apr' => 'Kwiecieñ',
- 'April' => 'Kwiecieñ',
- 'Attachment' => 'Za³±cznik',
- 'Aug' => 'Sierpieñ',
- 'August' => 'Sierpieñ',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Bilans',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Kasa',
- 'Cc' => 'Cc',
- 'Compare to' => 'Porównaj z',
- 'Continue' => 'Kontynuj',
- 'Copies' => 'Kopie',
- 'Credit' => 'Kredyt',
- 'Curr' => 'Waluta',
- 'Current' => 'Bie¿±cy',
- 'Current Earnings' => 'Acdtualny Dochód',
- 'Customer' => 'Odbiorca',
- 'Customer not on file!' => 'Brak Odbiorcy w bazie danych',
- 'Date' => 'Data',
- 'Debit' => 'Debet',
- 'Dec' => 'Grudzieñ',
- 'December' => 'Grudzieñ',
- 'Decimalplaces' => 'Miejsca Dziesiêtne',
- 'Department' => 'Wydzia³',
- 'Description' => 'Opis',
- 'Detail' => 'Wyszczególnienie',
- 'Due Date' => 'Termin P³atno¶ci',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'E-mail Wykaz do',
- 'E-mail address missing!' => 'Brak adresu E-mail!',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Nag³ówek',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include Exchange Rate Difference' => 'Za³±cz Ró¿nice Wymiany Walut',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Invoice' => 'Faktura',
- 'Jan' => 'Styczeñ',
- 'January' => 'Styczeñ',
- 'Jul' => 'Lipiec',
- 'July' => 'Lipiec',
- 'Jun' => 'Czerwiec',
- 'June' => 'Czerwiec',
- 'Language' => 'Jêzyk',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => 'Notatka',
- 'Message' => 'Wiadomo¶æ',
- 'Method' => 'Metoda',
- 'Month' => 'Miesi±c',
- 'N/A' => 'N/A',
- 'Non-taxable Purchases' => 'Rejestr VAT - Zakupy',
- 'Non-taxable Sales' => 'Rejestr VAT - Sprzeda¿',
- 'Nothing selected!' => 'Nic nie zaznaczone!',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order' => 'Zlecenie',
- 'PDF' => 'PDF',
- 'Payments' => 'Wyp³aty',
- 'Period' => 'Okres',
- 'Postscript' => 'Postscript',
- 'Print' => 'Wydrukuj',
- 'Project' => 'Projekt',
- 'Project Number' => 'Numer Projektu',
- 'Project Transactions' => 'Transakcje Projektów',
- 'Project not on file!' => 'Brak Projektu w zbiorze danych!',
- 'Quarter' => 'Kwarta³',
- 'Receipts' => 'Wp³aty',
- 'Report for' => 'Raport dla',
- 'Salesperson' => 'Sprzedawca',
- 'Screen' => 'Ekran',
- 'Select all' => 'Wybierz wszystko',
- 'Select from one of the names below' => 'Wybierz nazwê z poni¿szych',
- 'Select from one of the projects below' => 'Wybierz z projektów',
- 'Select postscript or PDF!' => 'Wybierz postscript lub PDF',
- 'Sep' => 'Wrzesieñ',
- 'September' => 'Wrzesieñ',
- 'Source' => '¯ród³o',
- 'Standard' => 'Standartowe',
- 'Statement' => 'Wykaz',
- 'Statement sent to' => 'Wykaz wys³any do',
- 'Statements sent to printer!' => 'Wykaz wys³any do drukarki',
- 'Subject' => 'Tre¶æ',
- 'Subtotal' => 'Warto¶æ Netto',
- 'Summary' => 'Skrót',
- 'Tax' => 'Podatek',
- 'Tax collected' => 'Rejestr VAT - Sprzeda¿',
- 'Tax paid' => 'Rejestr VAT - Zakupy',
- 'Till' => 'Kasa',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Vendor' => 'Dostawca',
- 'Vendor not on file!' => 'Brak Dostawcy w bazie danych',
- 'Year' => 'Rok',
- 'as at' => 'na dzieñ',
- 'for Period' => 'za Okres',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'kontynuj' => 'continue',
- 'e_mail' => 'e_mail',
- 'wydrukuj' => 'print',
- 'wybierz_wszystko' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/COPYING b/sql-ledger/locale/pt/COPYING
deleted file mode 100644
index bd508c5..0000000
--- a/sql-ledger/locale/pt/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Portugese texts:
-#
-# Author: Paulo Rodrigues <prodrigues@vianetworks.pt>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/pt/LANGUAGE b/sql-ledger/locale/pt/LANGUAGE
deleted file mode 100644
index 3d5f0c1..0000000
--- a/sql-ledger/locale/pt/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Portuguese
diff --git a/sql-ledger/locale/pt/admin b/sql-ledger/locale/pt/admin
deleted file mode 100644
index 65ce472..0000000
--- a/sql-ledger/locale/pt/admin
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Controlo de Acessos',
- 'Accounting' => 'Contabilidade',
- 'Add User' => 'Novo Utilizador',
- 'Address' => 'Endereço',
- 'Administration' => 'Administração',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Todos os Datasets estão Actualizados!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Mudar Password Admin',
- 'Change Password' => 'Mudar Password',
- 'Character Set' => 'Character Set',
- 'Click on login name to edit!' => 'Clique no login para editar!',
- 'Company' => 'Companhia',
- 'Connect to' => 'Ligar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Criar Plano de Contas',
- 'Create Dataset' => 'Criar Dataset',
- 'DBI not installed!' => 'DBI não está instalado!',
- 'Database' => 'Base de Dados',
- 'Database Administration' => 'Administração de Base de Dados',
- 'Database Driver not checked!' => 'Não seleccionou Driver Base de Dados',
- 'Database User missing!' => 'Não existe Utilizador de Base de Dados',
- 'Dataset' => 'Dataset',
- 'Dataset missing!' => 'Dataset não existe!',
- 'Dataset updated!' => 'Dataset actualizado!',
- 'Date Format' => 'Formato de Data',
- 'Delete' => 'Remover',
- 'Delete Dataset' => 'Remover Dataset',
- 'Directory' => 'Directoria',
- 'Driver' => 'Driver',
- 'E-mail' => 'E-Mail',
- 'Edit User' => 'Editar Utilizador',
- 'Existing Datasets' => 'Datasets Existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Não indicou Hostname!',
- 'Language' => 'Língua',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Não indique host nem port, a não ser que deseje efectuar uma ligação remota',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nome',
- 'New Templates' => 'Novos Modelos',
- 'No Database Drivers available!' => 'Não há Drivers de Base de Dados disponiveis!',
- 'No Dataset selected!' => 'Não seleccionou Dataset!',
- 'Nothing to delete!' => 'Nada para remover!',
- 'Number Format' => 'Formato numérico',
- 'Oracle Database Administration' => 'Administração Base de Dados Oracle',
- 'Password' => 'Password',
- 'Password changed!' => 'Password alterada',
- 'Pg Database Administration' => 'Administração Base de Dados Postgres',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel',
- 'Port' => 'Port',
- 'Port missing!' => 'Falta o port!',
- 'Printer' => 'Impressora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar Modelos',
- 'Signature' => 'Assinatura',
- 'Stylesheet' => 'Stylesheet',
- 'Templates' => 'Modelos',
- 'The following Datasets are not in use and can be deleted' => 'Os seguintes Datasets estão em uso e não podem ser removidos',
- 'The following Datasets need to be updated' => 'Os seguintes Datasets necessitam ser actualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta é uma validação preliminar. Nada será criado nem removido neste ponto!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para adicionar um utilizador a um grupo, edite um nome, mude o login e guarde. O novo utilizador com as mesmas variáveis será guardado sob o novo login',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Actualizar Dataset',
- 'Use Templates' => 'Usar Templates',
- 'User' => 'Utilizador',
- 'User deleted!' => 'Utilizador removido',
- 'User saved!' => 'Utilizador guardado',
- 'Version' => 'Versão',
- 'You must enter a host and port for local and remote connections!' => 'Tem de indicar host e port para ligações locais e remotas!',
- 'does not exist' => 'não existe',
- 'is already a member!' => 'já é membro!',
- 'localhost' => 'localhost',
- 'successfully created!' => 'criado com sucesso!',
- 'successfully deleted!' => 'removido com sucesso!',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'novo_utilizador' => 'add_user',
- 'mudar_password_admin' => 'change_admin_password',
- 'mudar_password' => 'change_password',
- 'continuar' => 'continue',
- 'criar_dataset' => 'create_dataset',
- 'remover' => 'delete',
- 'remover_dataset' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'logout' => 'logout',
- 'administração_base_de_dados_oracle' => 'oracle_database_administration',
- 'administração_base_de_dados_postgres' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'unlock_system' => 'unlock_system',
- 'actualizar_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/all b/sql-ledger/locale/pt/all
deleted file mode 100644
index 551c5f6..0000000
--- a/sql-ledger/locale/pt/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Fornecedores',
- 'AP Aging' => 'Idade Saldos Fornecedores',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Transacção Fornecedores',
- 'AP Transactions' => 'Transacções Fornecedores',
- 'AR' => 'Clientes',
- 'AR Aging' => 'Idade Saldos Clientes',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Transacção Clientes',
- 'AR Transactions' => 'Transacções Clientes',
- 'About' => 'Acerca',
- 'Above' => '',
- 'Access Control' => 'Controlo de Acessos',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Account Number missing!' => 'Número da Conta não encontrado!',
- 'Account Type' => 'Tipo de Conta',
- 'Account Type missing!' => 'Tipo de Conta não encontrado!',
- 'Account deleted!' => 'Conta apagada',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Conta guardada',
- 'Accounting' => 'Contabilidade',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Activo',
- 'Add' => 'Novo',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Nova Conta',
- 'Add Assembly' => 'Novo Conjunto',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Novo Cliente',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Add General Ledger Transaction' => 'Nova Transacção Livro Razão',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Novo Produto',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Novo Projecto',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Nova Factura de Venda',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Add Service' => 'Novo Serviço',
- 'Add Transaction' => 'Nova Transacção',
- 'Add User' => 'Novo Utilizador',
- 'Add Vendor' => 'Novo Fornecedor',
- 'Add Vendor Invoice' => 'Nova Factura de Compra',
- 'Add Warehouse' => '',
- 'Address' => 'Endereço',
- 'Administration' => 'Administração',
- 'Administrator' => 'Administrador',
- 'After Deduction' => '',
- 'All' => 'Todos',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Todos os Datasets estão Actualizados!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total em dívida',
- 'Amount missing!' => '',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem a certeza que quer APAGAR a Factura Número',
- 'Are you sure you want to delete Order Number' => 'Confirma a remoção da Encomenda?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Tem a certeza que quer APAGAR a Transacção',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Conjuntos',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'Activo',
- 'Attachment' => 'Attachment',
- 'Audit Control' => 'Controlo de Auditoria',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'Backup',
- 'Backup sent to' => 'Backup enviado para',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Livros Abertos',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Número de negócio',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'Custo de Vendas',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Não é possivel apagar a conta!',
- 'Cannot delete customer!' => 'Não é possivel apagar o cliente!',
- 'Cannot delete default account!' => 'Não é possível apagar a conta por defeito!',
- 'Cannot delete invoice!' => 'Não é possivel apagar a factura!',
- 'Cannot delete item!' => 'Não é possivel apagar o item!',
- 'Cannot delete order!' => 'Não é possivel apagar a encomenda!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Não é possivel apagar a transacção',
- 'Cannot delete vendor!' => 'Não é possivel apagar o fornecedor',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar factura em período fechado!',
- 'Cannot post invoice!' => 'Não é possivel lançar factura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não é possivel lançar transacção para um periodo fechado!',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Cannot process payment for a closed period!' => 'Não é possivel lançar pagamento para um período fechado',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Não é possível guardar conta!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Não é possível guardar encomenda!',
- 'Cannot save preferences!' => 'Não é possível guardar preferências!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => 'Dinheiro',
- 'Cc' => 'Cc',
- 'Change' => '',
- 'Change Admin Password' => 'Mudar Password Admin',
- 'Change Password' => 'Mudar Password',
- 'Character Set' => 'Character Set',
- 'Chart of Accounts' => 'Plano de Contas',
- 'Check' => 'Cheque',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Clique no login para editar!',
- 'Close Books up to' => 'Fechar Livros até',
- 'Closed' => 'Fechado',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Companhia',
- 'Company Name' => '',
- 'Compare to' => 'Comparar com',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar!',
- 'Connect to' => 'Ligar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Cópias',
- 'Copy to COA' => 'Copiar para Plano de Contas',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Criar Plano de Contas',
- 'Create Dataset' => 'Criar Dataset',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Cliente',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Cliente apagado!',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Customer saved!' => 'Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'DBI não está instalado!',
- 'DOB' => '',
- 'Database' => 'Base de Dados',
- 'Database Administration' => 'Administração de Base de Dados',
- 'Database Driver not checked!' => 'Não seleccionou Driver Base de Dados',
- 'Database Host' => 'Servidor de Base de Dados',
- 'Database User missing!' => 'Não existe Utilizador de Base de Dados',
- 'Dataset' => 'Dataset',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Dataset não existe!',
- 'Dataset updated!' => 'Dataset actualizado!',
- 'Date' => 'Data',
- 'Date Format' => 'Formato de Data',
- 'Date Paid' => 'Data de pagamento',
- 'Date Received' => '',
- 'Date missing!' => 'Falta a data!',
- 'Date received missing!' => '',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Remover',
- 'Delete Account' => 'Apagar Conta',
- 'Delete Dataset' => 'Remover Dataset',
- 'Delivery Date' => 'Data de entrega',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Diferença',
- 'Directory' => 'Directoria',
- 'Discount' => 'Desconto',
- 'Done' => 'Pronto',
- 'Drawing' => '',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Falta Data de Vencimento!',
- 'E-mail' => 'E-Mail',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'E-mailed' => '',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar Conta',
- 'Edit Assembly' => 'Editar Conjunto',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Editar CFOP',
- 'Edit General Ledger Transaction' => 'Editar Transacção Livro Razão',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Editar Produto',
- 'Edit Preferences for' => 'Editar Preferências para',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Editar Projecto',
- 'Edit Purchase Order' => 'Editar Ordem de Compra',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Editar Factura de Venda',
- 'Edit Sales Order' => 'Editar Encomenda',
- 'Edit Service' => 'Editar Serviço',
- 'Edit Template' => 'Editar Modelo',
- 'Edit User' => 'Editar Utilizador',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => 'Editar Factura de Compra',
- 'Edit Warehouse' => '',
- 'Employee' => 'Funcionário',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Forçar anulação das transacções para todas as datas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Indique as suas moedas nativa e estrangeiras usando os códigos de 3 letras (p.ex. EUR:USD:CAD)',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Existing Datasets' => 'Datasets Existentes',
- 'Expense' => 'Despesa',
- 'Expense Account' => 'Conta de Despesas',
- 'Expense/Asset' => 'Despesa/Activo',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'Foreign Exchange Gain' => 'Diferenças de Câmbio - Proveitos',
- 'Foreign Exchange Loss' => 'Diferenças de Câmbio - Prejuizos',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GIFI deleted!' => 'CFOP apagado',
- 'GIFI missing!' => 'Falta CFOP!',
- 'GIFI saved!' => 'CFOP guardado',
- 'GL Transaction' => 'Transacção Livro Razão',
- 'General Ledger' => 'Livro Razão',
- 'Goods & Services' => 'Bens e Serviços',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'Templates HTML',
- 'Heading' => 'Cabeçalho',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Não indicou Hostname!',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Imagem',
- 'In-line' => 'Inline',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Incluir no Relatório',
- 'Include in drop-down menus' => 'Incluir nos menus drop-down',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluir esta conta nos formulários de cliente/fornecedor para marcar cliente/fornecedor como sujeito a impostos.',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Estado de Receitas',
- 'Incorrect Dataset version!' => 'Versão Dataset incorrecta!',
- 'Incorrect Password!' => 'Password Incorrecta!',
- 'Increase' => '',
- 'Individual Items' => 'Produtos Individuais',
- 'Internal Notes' => '',
- 'Inventory' => 'Inventário',
- 'Inventory Account' => 'Conta de Inventário',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Quantidade em Stock tem de ser zero para poder declarar este conjunto obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Quantidade em Stock tem de ser zero para poder declarar esta peça obsoleta!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Invoice deleted!' => 'Factura apagada',
- 'Invoice posted!' => 'Factura processada',
- 'Invoice processed!' => '',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => 'Esta é uma conta sumária a registar',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Item apagado',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Items' => '',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'LaTeX Templates' => 'Modelos LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'Língua',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Últimos números e Contas por defeito',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Não indique host nem port, a não ser que deseje efectuar uma ligação remota',
- 'Liability' => 'Passivo',
- 'Licensed to' => 'Licenciado a',
- 'Line Total' => 'Total da Linha',
- 'Link' => 'Ligar',
- 'Link Accounts' => 'Ligar Contas',
- 'List' => '',
- 'List Accounts' => 'Listar Contas',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Listar CFOP',
- 'List Languages' => '',
- 'List Price' => 'Listar Preço',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Listar Transacções',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Login',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logout',
- 'Make' => 'Marca',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Mensagem',
- 'Method' => '',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'N/D',
- 'Name' => 'Nome',
- 'Name missing!' => 'Falta o nome!',
- 'New Templates' => 'Novos Modelos',
- 'No' => 'Não',
- 'No Database Drivers available!' => 'Não há Drivers de Base de Dados disponiveis!',
- 'No Dataset selected!' => 'Não seleccionou Dataset!',
- 'No email address for' => 'Não existe endereço de email para',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Nada seleccionado',
- 'Nothing to delete!' => 'Nada para remover!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number Format' => 'Formato numérico',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'O' => '',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'On Hand' => 'Em Stock',
- 'Open' => 'Abrir',
- 'Oracle Database Administration' => 'Administração Base de Dados Oracle',
- 'Order' => 'Encomenda',
- 'Order Date' => 'Data da Encomenda',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Entry' => 'Encomendas de Clientes',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'Order deleted!' => 'Encomenda apagada',
- 'Order processed!' => '',
- 'Order saved!' => 'Encomenda guardada',
- 'Orphaned' => 'Órfão',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Packing Lists' => '',
- 'Paid' => 'Total Pago',
- 'Part' => 'Produto',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Produtos',
- 'Parts Inventory' => 'Inventário',
- 'Password' => 'Password',
- 'Password changed!' => 'Password alterada',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Fornecedores',
- 'Payment' => 'Pagamento',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payment posted!' => 'Pagamento processado',
- 'Payments' => 'Pagamentos',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administração Base de Dados Postgres',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Falta o port!',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Posted!' => '',
- 'Postscript' => 'PostScript',
- 'Preferences' => 'Preferências',
- 'Preferences saved!' => 'Preferências Guardadas!',
- 'Prepayment' => '',
- 'Price' => 'Preço',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Impressora',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Projecto',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'Falta o número do projecto',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Projecto apagado',
- 'Project not on file!' => 'Projecto não existe',
- 'Project saved!' => 'Projecto guardado',
- 'Projects' => 'Projectos',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtd',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Nível mínimo de stock',
- 'Rate' => 'Taxa',
- 'Rate missing!' => '',
- 'Recd' => 'Recebido',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => '',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'Clientes',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Reconciliação',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registar em',
- 'Reference' => 'Referência',
- 'Reference missing!' => 'Falta referência',
- 'Remaining' => 'Sobram',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Relatório para',
- 'Reports' => 'Relatórios',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Requerido por',
- 'Retained Earnings' => 'Lucros Retidos',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Vendas',
- 'Sales Invoice' => 'Factura de Venda',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Encomenda de Venda',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Guardar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como novo',
- 'Save to File' => 'Guardar em Ficheiro',
- 'Screen' => 'Ecran',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Preço de Venda',
- 'Send by E-Mail' => 'Enviar por Email',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Serviço',
- 'Service Items' => 'Items de Serviço',
- 'Services' => 'Serviços',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar Modelos',
- 'Ship' => 'Expedir',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Expedir para',
- 'Ship via' => 'Expedir via',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Curta',
- 'Signature' => 'Assinatura',
- 'Source' => 'Origem',
- 'Spoolfile' => '',
- 'Standard' => 'Padrão',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Conjunto em stock',
- 'Stylesheet' => 'Stylesheet',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Imposto',
- 'Tax Accounts' => 'Contas de Impostos',
- 'Tax Included' => 'Impostos incluídos',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Taxable' => 'Sujeito a impostos',
- 'Template saved!' => 'Modelo guardado',
- 'Templates' => 'Modelos',
- 'Terms' => 'Termos: A pronto',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Os seguintes Datasets estão em uso e não podem ser removidos',
- 'The following Datasets need to be updated' => 'Os seguintes Datasets necessitam ser actualizados',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta é uma validação preliminar. Nada será criado nem removido neste ponto!',
- 'Till' => '',
- 'To' => 'Até',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para adicionar um utilizador a um grupo, edite um nome, mude o login e guarde. O novo utilizador com as mesmas variáveis será guardado sob o novo login',
- 'Top Level' => 'Nivel de topo',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Falta Data de transacção!',
- 'Transaction deleted!' => 'Transacção apagada',
- 'Transaction posted!' => 'Transacção processada',
- 'Transaction reversal enforced for all dates' => 'Cancelamento de transacção forçado para todas as datas',
- 'Transaction reversal enforced up to' => 'Cancelamento de transacção forçado até',
- 'Transactions' => 'Transacções',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Balancete',
- 'Type of Business' => '',
- 'Unit' => 'Unidade',
- 'Unit of measure' => 'Unidade de medida',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar Dataset',
- 'Updated' => 'Actualizado',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Usar Templates',
- 'User' => 'Utilizador',
- 'User deleted!' => 'Utilizador removido',
- 'User saved!' => 'Utilizador guardado',
- 'Valid until' => '',
- 'Vendor' => 'Fornecedor',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Fornecedor apagado',
- 'Vendor missing!' => 'Falta fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'Vendor saved!' => 'Fornecedor guardado',
- 'Vendors' => 'Fornecedores',
- 'Version' => 'Versão',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidade de Peso',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Sim',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Não indicou nome!',
- 'You must enter a host and port for local and remote connections!' => 'Tem de indicar host e port para ligações locais e remotas!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'dias',
- 'does not exist' => 'não existe',
- 'done' => '',
- 'ea' => 'cd',
- 'for Period' => 'pelo período',
- 'is already a member!' => 'já é membro!',
- 'is not a member!' => 'não é membro!',
- 'localhost' => 'localhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'criado com sucesso!',
- 'successfully deleted!' => 'removido com sucesso!',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/am b/sql-ledger/locale/pt/am
deleted file mode 100644
index f37030e..0000000
--- a/sql-ledger/locale/pt/am
+++ /dev/null
@@ -1,190 +0,0 @@
-$self{texts} = {
- 'AP' => 'Fornecedores',
- 'AR' => 'Clientes',
- 'About' => 'Acerca',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Account Number missing!' => 'Número da Conta não encontrado!',
- 'Account Type' => 'Tipo de Conta',
- 'Account Type missing!' => 'Tipo de Conta não encontrado!',
- 'Account deleted!' => 'Conta apagada',
- 'Account saved!' => 'Conta guardada',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Account' => 'Nova Conta',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Address' => 'Endereço',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Controlo de Auditoria',
- 'Backup sent to' => 'Backup enviado para',
- 'Books are open' => 'Livros Abertos',
- 'Business Number' => 'Número de negócio',
- 'COGS' => 'Custo de Vendas',
- 'Cannot delete account!' => 'Não é possivel apagar a conta!',
- 'Cannot delete default account!' => 'Não é possível apagar a conta por defeito!',
- 'Cannot save account!' => 'Não é possível guardar conta!',
- 'Cannot save preferences!' => 'Não é possível guardar preferências!',
- 'Cash' => 'Dinheiro',
- 'Character Set' => 'Character Set',
- 'Chart of Accounts' => 'Plano de Contas',
- 'Close Books up to' => 'Fechar Livros até',
- 'Company' => 'Companhia',
- 'Continue' => 'Continuar',
- 'Copy to COA' => 'Copiar para Plano de Contas',
- 'Credit' => 'Crédito',
- 'Database Host' => 'Servidor de Base de Dados',
- 'Dataset' => 'Dataset',
- 'Date Format' => 'Formato de Data',
- 'Debit' => 'Débito',
- 'Delete' => 'Remover',
- 'Delete Account' => 'Apagar Conta',
- 'Description' => 'Descrição',
- 'Discount' => 'Desconto',
- 'E-mail' => 'E-Mail',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar Conta',
- 'Edit GIFI' => 'Editar CFOP',
- 'Edit Preferences for' => 'Editar Preferências para',
- 'Edit Template' => 'Editar Modelo',
- 'Enforce transaction reversal for all dates' => 'Forçar anulação das transacções para todas as datas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Indique as suas moedas nativa e estrangeiras usando os códigos de 3 letras (p.ex. EUR:USD:CAD)',
- 'Equity' => 'Capital',
- 'Expense' => 'Despesa',
- 'Expense Account' => 'Conta de Despesas',
- 'Expense/Asset' => 'Despesa/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Diferenças de Câmbio - Proveitos',
- 'Foreign Exchange Loss' => 'Diferenças de Câmbio - Prejuizos',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GIFI deleted!' => 'CFOP apagado',
- 'GIFI missing!' => 'Falta CFOP!',
- 'GIFI saved!' => 'CFOP guardado',
- 'Heading' => 'Cabeçalho',
- 'Include in drop-down menus' => 'Incluir nos menus drop-down',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluir esta conta nos formulários de cliente/fornecedor para marcar cliente/fornecedor como sujeito a impostos.',
- 'Inventory' => 'Inventário',
- 'Inventory Account' => 'Conta de Inventário',
- 'Is this a summary account to record' => 'Esta é uma conta sumária a registar',
- 'Language' => 'Língua',
- 'Last Numbers & Default Accounts' => 'Últimos números e Contas por defeito',
- 'Liability' => 'Passivo',
- 'Licensed to' => 'Licenciado a',
- 'Link' => 'Ligar',
- 'Name' => 'Nome',
- 'No' => 'Não',
- 'No email address for' => 'Não existe endereço de email para',
- 'Number' => 'Número',
- 'Number Format' => 'Formato numérico',
- 'Parts Inventory' => 'Inventário',
- 'Password' => 'Password',
- 'Payables' => 'Fornecedores',
- 'Payment' => 'Pagamento',
- 'Phone' => 'Tel',
- 'Preferences saved!' => 'Preferências Guardadas!',
- 'Printer' => 'Impressora',
- 'Rate' => 'Taxa',
- 'Receivables' => 'Clientes',
- 'Reference' => 'Referência',
- 'Retained Earnings' => 'Lucros Retidos',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como novo',
- 'Service Items' => 'Items de Serviço',
- 'Signature' => 'Assinatura',
- 'Stylesheet' => 'Stylesheet',
- 'Tax' => 'Imposto',
- 'Tax Accounts' => 'Contas de Impostos',
- 'Template saved!' => 'Modelo guardado',
- 'Transaction reversal enforced for all dates' => 'Cancelamento de transacção forçado para todas as datas',
- 'Transaction reversal enforced up to' => 'Cancelamento de transacção forçado até',
- 'User' => 'Utilizador',
- 'Version' => 'Versão',
- 'Weight Unit' => 'Unidade de Peso',
- 'Yes' => 'Sim',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'nova_conta' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_para_plano_de_contas' => 'copy_to_coa',
- 'remover' => 'delete',
- 'editar' => 'edit',
- 'editar_conta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_novo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ap b/sql-ledger/locale/pt/ap
deleted file mode 100644
index 28954d6..0000000
--- a/sql-ledger/locale/pt/ap
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transacção Fornecedores',
- 'AP Transactions' => 'Transacções Fornecedores',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total em dívida',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem a certeza que quer APAGAR a Transacção',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Não é possivel apagar a transacção',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não é possivel lançar transacção para um periodo fechado!',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Check' => 'Cheque',
- 'Closed' => 'Fechado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Falta Data de Vencimento!',
- 'Employee' => 'Funcionário',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Pago',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payments' => 'Pagamentos',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Postscript' => 'PostScript',
- 'Print' => 'Imprimir',
- 'Project not on file!' => 'Projecto não existe',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Sobram',
- 'Screen' => 'Ecran',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Origem',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacção apagada',
- 'Transaction posted!' => 'Transacção processada',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Fornecedor',
- 'Vendor missing!' => 'Falta fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transacção_fornecedores' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ar b/sql-ledger/locale/pt/ar
deleted file mode 100644
index 5776dc9..0000000
--- a/sql-ledger/locale/pt/ar
+++ /dev/null
@@ -1,153 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Transacção Clientes',
- 'AR Transactions' => 'Transacções Clientes',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total em dívida',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem a certeza que quer APAGAR a Transacção',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'Não é possivel apagar a transacção',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não é possivel lançar transacção para um periodo fechado!',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Check' => 'Cheque',
- 'Closed' => 'Fechado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Falta Data de Vencimento!',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Pago',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payments' => 'Pagamentos',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Postscript' => 'PostScript',
- 'Print' => 'Imprimir',
- 'Project not on file!' => 'Projecto não existe',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Sobram',
- 'Screen' => 'Ecran',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Ship via' => 'Expedir via',
- 'Source' => 'Origem',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacção apagada',
- 'Transaction posted!' => 'Transacção processada',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transacção_clientes' => 'ar_transaction',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/arap b/sql-ledger/locale/pt/arap
deleted file mode 100644
index 39cca94..0000000
--- a/sql-ledger/locale/pt/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Endereço',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Description' => 'Descrição',
- 'Number' => 'Número',
- 'Project not on file!' => 'Projecto não existe',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Vendor not on file!' => 'Fornecedor não existe',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/arapprn b/sql-ledger/locale/pt/arapprn
deleted file mode 100644
index db95ef7..0000000
--- a/sql-ledger/locale/pt/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Data',
- 'PDF' => 'PDF',
- 'Postscript' => 'PostScript',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Ecran',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Source' => 'Origem',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/bp b/sql-ledger/locale/pt/bp
deleted file mode 100644
index 8061959..0000000
--- a/sql-ledger/locale/pt/bp
+++ /dev/null
@@ -1,43 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Customer' => 'Cliente',
- 'Date' => 'Data',
- 'From' => 'De',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de Factura',
- 'Order' => 'Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Print' => 'Imprimir',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referência',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Select all' => 'Seleccionar todos',
- 'To' => 'Até',
- 'Vendor' => 'Fornecedor',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'remove' => 'remove',
- 'seleccionar_todos' => 'select_all',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ca b/sql-ledger/locale/pt/ca
deleted file mode 100644
index 01ea0fe..0000000
--- a/sql-ledger/locale/pt/ca
+++ /dev/null
@@ -1,50 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Chart of Accounts' => 'Plano de Contas',
- 'Credit' => 'Crédito',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Description' => 'Descrição',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Include in Report' => 'Incluir no Relatório',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'List Transactions' => 'Listar Transacções',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Reference' => 'Referência',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Até',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacções' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/cp b/sql-ledger/locale/pt/cp
deleted file mode 100644
index e6c5167..0000000
--- a/sql-ledger/locale/pt/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Fornecedores',
- 'AR' => 'Clientes',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total em dívida',
- 'Cannot process payment for a closed period!' => 'Não é possivel lançar pagamento para um período fechado',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Date missing!' => 'Falta a data!',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Pagamento',
- 'Payment posted!' => 'Pagamento processado',
- 'Post' => 'Processar',
- 'Postscript' => 'PostScript',
- 'Print' => 'Imprimir',
- 'Project not on file!' => 'Projecto não existe',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Ecran',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Source' => 'Origem',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'processar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ct b/sql-ledger/locale/pt/ct
deleted file mode 100644
index 1f33fae..0000000
--- a/sql-ledger/locale/pt/ct
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transacção Fornecedores',
- 'AP Transactions' => 'Transacções Fornecedores',
- 'AR Transaction' => 'Transacção Clientes',
- 'AR Transactions' => 'Transacções Clientes',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Customer' => 'Novo Cliente',
- 'Add Vendor' => 'Novo Fornecedor',
- 'Address' => 'Endereço',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Bcc' => 'Bcc',
- 'Cannot delete customer!' => 'Não é possivel apagar o cliente!',
- 'Cannot delete vendor!' => 'Não é possivel apagar o fornecedor',
- 'Cc' => 'Cc',
- 'Closed' => 'Fechado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer deleted!' => 'Cliente apagado!',
- 'Customer saved!' => 'Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Discount' => 'Desconto',
- 'E-mail' => 'E-Mail',
- 'Employee' => 'Funcionário',
- 'Fax' => 'Fax',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Factura',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Language' => 'Língua',
- 'Name' => 'Nome',
- 'Name missing!' => 'Falta o nome!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abrir',
- 'Order' => 'Encomenda',
- 'Orphaned' => 'Órfão',
- 'Phone' => 'Tel',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtd',
- 'Sales Invoice' => 'Factura de Venda',
- 'Sales Order' => 'Encomenda de Venda',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Save' => 'Guardar',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Sell Price' => 'Preço de Venda',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Taxable' => 'Sujeito a impostos',
- 'Terms' => 'Termos: A pronto',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor deleted!' => 'Fornecedor apagado',
- 'Vendor saved!' => 'Fornecedor guardado',
- 'Vendors' => 'Fornecedores',
- 'days' => 'dias',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transacção_fornecedores' => 'ap_transaction',
- 'transacção_clientes' => 'ar_transaction',
- 'novo_cliente' => 'add_customer',
- 'novo_fornecedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'pricelist' => 'pricelist',
- 'ordem_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'factura_de_venda' => 'sales_invoice',
- 'encomenda_de_venda' => 'sales_order',
- 'guardar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/gl b/sql-ledger/locale/pt/gl
deleted file mode 100644
index 6870bad..0000000
--- a/sql-ledger/locale/pt/gl
+++ /dev/null
@@ -1,126 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transacção Fornecedores',
- 'AR Transaction' => 'Transacção Clientes',
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add General Ledger Transaction' => 'Nova Transacção Livro Razão',
- 'Address' => 'Endereço',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => 'Tem a certeza que quer APAGAR a Transacção',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Cannot delete transaction!' => 'Não é possivel apagar a transacção',
- 'Cannot post transaction for a closed period!' => 'Não é possivel lançar transacção para um periodo fechado!',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crédito',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'Edit General Ledger Transaction' => 'Editar Transacção Livro Razão',
- 'Equity' => 'Capital',
- 'Expense' => 'Despesa',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'GL Transaction' => 'Transacção Livro Razão',
- 'General Ledger' => 'Livro Razão',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Liability' => 'Passivo',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Reference' => 'Referência',
- 'Reference missing!' => 'Falta referência',
- 'Reports' => 'Relatórios',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Origem',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Até',
- 'Transaction Date missing!' => 'Falta Data de transacção!',
- 'Transaction deleted!' => 'Transacção apagada',
- 'Transaction posted!' => 'Transacção processada',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'Yes' => 'Sim',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transacção_fornecedores' => 'ap_transaction',
- 'transacção_clientes' => 'ar_transaction',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'transacção_livro_razão' => 'gl_transaction',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/hr b/sql-ledger/locale/pt/hr
deleted file mode 100644
index d2e7621..0000000
--- a/sql-ledger/locale/pt/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Fornecedores',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Address' => 'Endereço',
- 'Administrator' => 'Administrador',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Continue' => 'Continuar',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'E-mail' => 'E-Mail',
- 'Employee' => 'Funcionário',
- 'Expense' => 'Despesa',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluir no Relatório',
- 'Login' => 'Login',
- 'Name' => 'Nome',
- 'Name missing!' => 'Falta o nome!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Órfão',
- 'Rate' => 'Taxa',
- 'Sales' => 'Vendas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como novo',
- 'Update' => 'Actualizar',
- 'User' => 'Utilizador',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_novo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ic b/sql-ledger/locale/pt/ic
deleted file mode 100644
index 884b622..0000000
--- a/sql-ledger/locale/pt/ic
+++ /dev/null
@@ -1,216 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Active' => 'Activo',
- 'Add' => 'Novo',
- 'Add Assembly' => 'Novo Conjunto',
- 'Add Part' => 'Novo Produto',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Add Service' => 'Novo Serviço',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Conjuntos',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'BOM',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'COGS' => 'Custo de Vendas',
- 'Cannot delete item!' => 'Não é possivel apagar o item!',
- 'Cash' => 'Dinheiro',
- 'Cc' => 'Cc',
- 'Closed' => 'Fechado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Edit Assembly' => 'Editar Conjunto',
- 'Edit Part' => 'Editar Produto',
- 'Edit Service' => 'Editar Serviço',
- 'Employee' => 'Funcionário',
- 'Expense' => 'Despesa',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'Image' => 'Imagem',
- 'In-line' => 'Inline',
- 'Include in Report' => 'Incluir no Relatório',
- 'Individual Items' => 'Produtos Individuais',
- 'Inventory' => 'Inventário',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Quantidade em Stock tem de ser zero para poder declarar este conjunto obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Quantidade em Stock tem de ser zero para poder declarar esta peça obsoleta!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Item deleted!' => 'Item apagado',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Line Total' => 'Total da Linha',
- 'Link Accounts' => 'Ligar Contas',
- 'List Price' => 'Listar Preço',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nome',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'On Hand' => 'Em Stock',
- 'Open' => 'Abrir',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'Orphaned' => 'Órfão',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Part' => 'Produto',
- 'Parts' => 'Produtos',
- 'Phone' => 'Tel',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Project' => 'Projecto',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtd',
- 'ROP' => 'Nível mínimo de stock',
- 'Recd' => 'Recebido',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Factura de Venda',
- 'Sales Order' => 'Encomenda de Venda',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como novo',
- 'Screen' => 'Ecran',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Sell Price' => 'Preço de Venda',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Services' => 'Serviços',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Short' => 'Curta',
- 'Stock Assembly' => 'Conjunto em stock',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'To' => 'Até',
- 'Top Level' => 'Nivel de topo',
- 'Unit' => 'Unidade',
- 'Unit of measure' => 'Unidade de medida',
- 'Update' => 'Actualizar',
- 'Updated' => 'Actualizado',
- 'Vendor' => 'Fornecedor',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'Weight' => 'Peso',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'days' => 'dias',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'novo_conjunto' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'novo_produto' => 'add_part',
- 'novo_serviço' => 'add_service',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'editar_conjunto' => 'edit_assembly',
- 'editar_produto' => 'edit_part',
- 'editar_serviço' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_novo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/io b/sql-ledger/locale/pt/io
deleted file mode 100644
index aceb7b2..0000000
--- a/sql-ledger/locale/pt/io
+++ /dev/null
@@ -1,105 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Address' => 'Endereço',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cc' => 'Cc',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'In-line' => 'Inline',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Part' => 'Produto',
- 'Phone' => 'Tel',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Project' => 'Projecto',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtd',
- 'Recd' => 'Recebido',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Encomenda de Venda',
- 'Screen' => 'Ecran',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Até',
- 'Unit' => 'Unidade',
- 'What type of item is this?' => 'Que tipo de Item é este?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ir b/sql-ledger/locale/pt/ir
deleted file mode 100644
index 39d7f87..0000000
--- a/sql-ledger/locale/pt/ir
+++ /dev/null
@@ -1,182 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Add Vendor Invoice' => 'Nova Factura de Compra',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem a certeza que quer APAGAR a Factura Número',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'Não é possivel apagar a factura!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar factura em período fechado!',
- 'Cannot post invoice!' => 'Não é possivel lançar factura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Edit Vendor Invoice' => 'Editar Factura de Compra',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'In-line' => 'Inline',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Invoice deleted!' => 'Factura apagada',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Língua',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Part' => 'Produto',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtd',
- 'Recd' => 'Recebido',
- 'Record in' => 'Registar em',
- 'Remaining' => 'Sobram',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Encomenda de Venda',
- 'Screen' => 'Ecran',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Source' => 'Origem',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Fornecedor',
- 'Vendor missing!' => 'Falta fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Yes' => 'Sim',
- 'ea' => 'cd',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'ordem_de_compra' => 'purchase_order',
- 'actualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/is b/sql-ledger/locale/pt/is
deleted file mode 100644
index d48365a..0000000
--- a/sql-ledger/locale/pt/is
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Invoice' => 'Nova Factura de Venda',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem a certeza que quer APAGAR a Factura Número',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'Não é possivel apagar a factura!',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar factura em período fechado!',
- 'Cannot post invoice!' => 'Não é possivel lançar factura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Edit Sales Invoice' => 'Editar Factura de Venda',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'In-line' => 'Inline',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Invoice deleted!' => 'Factura apagada',
- 'Invoice posted!' => 'Factura processada',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Part' => 'Produto',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtd',
- 'Recd' => 'Recebido',
- 'Record in' => 'Registar em',
- 'Remaining' => 'Sobram',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Encomenda de Venda',
- 'Screen' => 'Ecran',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Ship via' => 'Expedir via',
- 'Source' => 'Origem',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax Included' => 'Impostos incluídos',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Yes' => 'Sim',
- 'ea' => 'cd',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'e_mail' => 'e_mail',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'encomenda_de_venda' => 'sales_order',
- 'expedir_para' => 'ship_to',
- 'actualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/login b/sql-ledger/locale/pt/login
deleted file mode 100644
index fb1507d..0000000
--- a/sql-ledger/locale/pt/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Companhia',
- 'Continue' => 'Continuar',
- 'Incorrect Dataset version!' => 'Versão Dataset incorrecta!',
- 'Incorrect Password!' => 'Password Incorrecta!',
- 'Login' => 'Login',
- 'Name' => 'Nome',
- 'Password' => 'Password',
- 'Version' => 'Versão',
- 'You did not enter a name!' => 'Não indicou nome!',
- 'is not a member!' => 'não é membro!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/menu b/sql-ledger/locale/pt/menu
deleted file mode 100644
index a832f79..0000000
--- a/sql-ledger/locale/pt/menu
+++ /dev/null
@@ -1,78 +0,0 @@
-$self{texts} = {
- 'AP' => 'Fornecedores',
- 'AP Aging' => 'Idade Saldos Fornecedores',
- 'AP Transaction' => 'Transacção Fornecedores',
- 'AR' => 'Clientes',
- 'AR Aging' => 'Idade Saldos Clientes',
- 'AR Transaction' => 'Transacção Clientes',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Account' => 'Nova Conta',
- 'Add Assembly' => 'Novo Conjunto',
- 'Add Customer' => 'Novo Cliente',
- 'Add GIFI' => 'Adicionar CFOP',
- 'Add Part' => 'Novo Produto',
- 'Add Project' => 'Novo Projecto',
- 'Add Service' => 'Novo Serviço',
- 'Add Transaction' => 'Nova Transacção',
- 'Add Vendor' => 'Novo Fornecedor',
- 'Assemblies' => 'Conjuntos',
- 'Audit Control' => 'Controlo de Auditoria',
- 'Backup' => 'Backup',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Cash' => 'Dinheiro',
- 'Chart of Accounts' => 'Plano de Contas',
- 'Check' => 'Cheque',
- 'Customers' => 'Clientes',
- 'Description' => 'Descrição',
- 'General Ledger' => 'Livro Razão',
- 'Goods & Services' => 'Bens e Serviços',
- 'HTML Templates' => 'Templates HTML',
- 'Income Statement' => 'Estado de Receitas',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Modelos LaTeX',
- 'Language' => 'Língua',
- 'List Accounts' => 'Listar Contas',
- 'List GIFI' => 'Listar CFOP',
- 'Logout' => 'Logout',
- 'Open' => 'Abrir',
- 'Order Entry' => 'Encomendas de Clientes',
- 'Packing List' => 'Lista de Expedição',
- 'Parts' => 'Produtos',
- 'Payment' => 'Pagamento',
- 'Payments' => 'Pagamentos',
- 'Preferences' => 'Preferências',
- 'Print' => 'Imprimir',
- 'Projects' => 'Projectos',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Reconciliation' => 'Reconciliação',
- 'Reports' => 'Relatórios',
- 'Sales Invoice' => 'Factura de Venda',
- 'Sales Order' => 'Encomenda de Venda',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Save to File' => 'Guardar em Ficheiro',
- 'Send by E-Mail' => 'Enviar por Email',
- 'Services' => 'Serviços',
- 'Ship' => 'Expedir',
- 'Stock Assembly' => 'Conjunto em stock',
- 'Stylesheet' => 'Stylesheet',
- 'System' => 'Sistema',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'Transactions' => 'Transacções',
- 'Trial Balance' => 'Balancete',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendors' => 'Fornecedores',
- 'Version' => 'Versão',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/oe b/sql-ledger/locale/pt/oe
deleted file mode 100644
index 6828bb0..0000000
--- a/sql-ledger/locale/pt/oe
+++ /dev/null
@@ -1,227 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Invoice' => 'Nova Factura de Venda',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Add Vendor Invoice' => 'Nova Factura de Compra',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => 'Confirma a remoção da Encomenda?',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete order!' => 'Não é possivel apagar a encomenda!',
- 'Cannot save order!' => 'Não é possível guardar encomenda!',
- 'Cc' => 'Cc',
- 'Closed' => 'Fechado',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Done' => 'Pronto',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Edit Purchase Order' => 'Editar Ordem de Compra',
- 'Edit Sales Order' => 'Editar Encomenda',
- 'Employee' => 'Funcionário',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'ID' => 'ID',
- 'In-line' => 'Inline',
- 'Include in Report' => 'Incluir no Relatório',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Encomenda',
- 'Order Date' => 'Data da Encomenda',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'Order deleted!' => 'Encomenda apagada',
- 'Order saved!' => 'Encomenda guardada',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Part' => 'Produto',
- 'Phone' => 'Tel',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Purchase Order' => 'Ordem de Compra',
- 'Purchase Orders' => 'Ordens de Compra',
- 'Qty' => 'Qtd',
- 'Recd' => 'Recebido',
- 'Remaining' => 'Sobram',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Factura de Venda',
- 'Sales Order' => 'Encomenda de Venda',
- 'Sales Orders' => 'Encomendas de Venda',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como novo',
- 'Screen' => 'Ecran',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Ship via' => 'Expedir via',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Terms' => 'Termos: A pronto',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Fornecedor',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor missing!' => 'Falta fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Yes' => 'Sim',
- 'days' => 'dias',
- 'ea' => 'cd',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'pronto' => 'done',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ordem_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'factura_de_venda' => 'sales_invoice',
- 'encomenda_de_venda' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_novo' => 'save_as_new',
- 'expedir_para' => 'ship_to',
- 'transfer' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/pe b/sql-ledger/locale/pt/pe
deleted file mode 100644
index 534ee52..0000000
--- a/sql-ledger/locale/pt/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Add Project' => 'Novo Projecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'Edit Project' => 'Editar Projecto',
- 'Language' => 'Língua',
- 'Number' => 'Número',
- 'Orphaned' => 'Órfão',
- 'Project' => 'Projecto',
- 'Project Number missing!' => 'Falta o número do projecto',
- 'Project deleted!' => 'Projecto apagado',
- 'Project saved!' => 'Projecto guardado',
- 'Projects' => 'Projectos',
- 'Save' => 'Guardar',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'novo_projecto' => 'add_project',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/pos b/sql-ledger/locale/pt/pos
deleted file mode 100644
index faf337a..0000000
--- a/sql-ledger/locale/pt/pos
+++ /dev/null
@@ -1,54 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Crédito',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Delete' => 'Remover',
- 'Description' => 'Descrição',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'From' => 'De',
- 'Language' => 'Língua',
- 'Number' => 'Número',
- 'Open' => 'Abrir',
- 'Paid' => 'Total Pago',
- 'Post' => 'Processar',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Qty' => 'Qtd',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registar em',
- 'Remaining' => 'Sobram',
- 'Screen' => 'Ecran',
- 'Source' => 'Origem',
- 'Subtotal' => 'Sub-total',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'processar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/ps b/sql-ledger/locale/pt/ps
deleted file mode 100644
index be7372b..0000000
--- a/sql-ledger/locale/pt/ps
+++ /dev/null
@@ -1,269 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Idade Saldos Fornecedores',
- 'AR Aging' => 'Idade Saldos Clientes',
- 'AR Transaction' => 'Transacção Clientes',
- 'AR Transactions' => 'Transacções Clientes',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Add Purchase Order' => 'Nova Ordem de Compra',
- 'Add Sales Invoice' => 'Nova Factura de Venda',
- 'Add Sales Order' => 'Nova Encomenda de Cliente',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Amount Due' => 'Total em dívida',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => 'Tem a certeza que quer APAGAR a Factura Número',
- 'Are you sure you want to delete Transaction' => 'Tem a certeza que quer APAGAR a Transacção',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'Não é possivel apagar a factura!',
- 'Cannot delete transaction!' => 'Não é possivel apagar a transacção',
- 'Cannot post invoice for a closed period!' => 'Não pode lançar factura em período fechado!',
- 'Cannot post invoice!' => 'Não é possivel lançar factura!',
- 'Cannot post payment for a closed period!' => 'Não pode lançar pagamento em período fechado!',
- 'Cannot post transaction for a closed period!' => 'Não é possivel lançar transacção para um periodo fechado!',
- 'Cannot post transaction!' => 'Não é possivel lançar transacção',
- 'Cash' => 'Dinheiro',
- 'Cc' => 'Cc',
- 'Check' => 'Cheque',
- 'Closed' => 'Fechado',
- 'Compare to' => 'Comparar com',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Crédito',
- 'Curr' => 'Moeda',
- 'Currency' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Date Paid' => 'Data de pagamento',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Delete' => 'Remover',
- 'Delivery Date' => 'Data de entrega',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'Due Date missing!' => 'Falta Data de Vencimento!',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Edit Sales Invoice' => 'Editar Factura de Venda',
- 'Exch' => 'Câmbio',
- 'Exchange Rate' => 'Taxa de Câmbio',
- 'Exchange rate for payment missing!' => 'Falta a taxa de câmbio para o pagamento!',
- 'Exchange rate missing!' => 'Falta a taxa de câmbio!',
- 'Fax' => 'Fax',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Heading' => 'Cabeçalho',
- 'ID' => 'ID',
- 'In-line' => 'Inline',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income Statement' => 'Estado de Receitas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Data de Factura',
- 'Invoice Date missing!' => 'Data de Factura não encontrada!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Número de Factura não encontrado!',
- 'Invoice deleted!' => 'Factura apagada',
- 'Invoice posted!' => 'Factura processada',
- 'Item not on file!' => 'Item não está no arquivo!',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Língua',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'N/A' => 'N/D',
- 'Notes' => 'Notas',
- 'Nothing selected!' => 'Nada seleccionado',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Number missing in Row' => 'Falta numero na Linha',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Open' => 'Abrir',
- 'Order' => 'Encomenda',
- 'Order Date missing!' => 'Falta data da Encomenda',
- 'Order Number' => 'Encomenda Número',
- 'Order Number missing!' => 'Falta numero da Encomenda!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Expedição',
- 'Packing List Date missing!' => 'Falta Data da Lista de Expedição',
- 'Packing List Number missing!' => 'Falta Numero de Lista de Expedição',
- 'Paid' => 'Total Pago',
- 'Part' => 'Produto',
- 'Payment date missing!' => 'Falta Data de Pagamento!',
- 'Payments' => 'Pagamentos',
- 'Phone' => 'Tel',
- 'Post' => 'Processar',
- 'Post as new' => 'Processar como novo',
- 'Postscript' => 'PostScript',
- 'Price' => 'Preço',
- 'Print' => 'Imprimir',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Purchase Order' => 'Ordem de Compra',
- 'Qty' => 'Qtd',
- 'Recd' => 'Recebido',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registar em',
- 'Remaining' => 'Sobram',
- 'Report for' => 'Relatório para',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Encomenda de Venda',
- 'Screen' => 'Ecran',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the items below' => 'Seleccione um dos items abaixo',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Service' => 'Serviço',
- 'Ship' => 'Expedir',
- 'Ship to' => 'Expedir para',
- 'Ship via' => 'Expedir via',
- 'Source' => 'Origem',
- 'Standard' => 'Padrão',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax Included' => 'Impostos incluídos',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacção apagada',
- 'Transaction posted!' => 'Transacção processada',
- 'Trial Balance' => 'Balancete',
- 'Unit' => 'Unidade',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'What type of item is this?' => 'Que tipo de Item é este?',
- 'Yes' => 'Sim',
- 'ea' => 'cd',
- 'for Period' => 'pelo período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transacção_clientes' => 'ar_transaction',
- 'continuar' => 'continue',
- 'remover' => 'delete',
- 'e_mail' => 'e_mail',
- 'processar' => 'post',
- 'processar_como_novo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'encomenda_de_venda' => 'sales_order',
- 'seleccionar_todos' => 'select_all',
- 'expedir_para' => 'ship_to',
- 'actualizar' => 'update',
- 'sim' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/pw b/sql-ledger/locale/pt/pw
deleted file mode 100644
index e4fd07c..0000000
--- a/sql-ledger/locale/pt/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Password',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/rc b/sql-ledger/locale/pt/rc
deleted file mode 100644
index d95987f..0000000
--- a/sql-ledger/locale/pt/rc
+++ /dev/null
@@ -1,62 +0,0 @@
-$self{texts} = {
- 'Account' => 'Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Continue' => 'Continuar',
- 'Date' => 'Data',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Deposit' => 'Depósito',
- 'Description' => 'Descrição',
- 'Difference' => 'Diferença',
- 'Done' => 'Pronto',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Payment' => 'Pagamento',
- 'Reconciliation' => 'Reconciliação',
- 'Select all' => 'Seleccionar todos',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Origem',
- 'To' => 'Até',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'pronto' => 'done',
- 'seleccionar_todos' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/pt/rp b/sql-ledger/locale/pt/rp
deleted file mode 100644
index 629a897..0000000
--- a/sql-ledger/locale/pt/rp
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Idade Saldos Fornecedores',
- 'AR Aging' => 'Idade Saldos Clientes',
- 'Account' => 'Conta',
- 'Account Number' => 'Número da Conta',
- 'Accounting Menu' => 'Menu de Contabilidade',
- 'Accounts' => 'Contas',
- 'Address' => 'Endereço',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Attachment',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Saldo',
- 'Balance Sheet' => 'Folha de Balanço',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Dinheiro',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar com',
- 'Continue' => 'Continuar',
- 'Copies' => 'Cópias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Moeda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente inexistente!',
- 'Date' => 'Data',
- 'Debit' => 'Débito',
- 'Dec' => 'Dez',
- 'December' => 'Dezembro',
- 'Decimalplaces' => 'Casas decimais',
- 'Description' => 'Descrição',
- 'Due Date' => 'Data de Vencimento',
- 'E-mail' => 'E-Mail',
- 'E-mail address missing!' => 'Falta Endereço de E-mail!',
- 'Feb' => 'Fev',
- 'February' => 'Fevereiro',
- 'From' => 'De',
- 'GIFI' => 'CFOP - Código Fiscal da Operação',
- 'Heading' => 'Cabeçalho',
- 'ID' => 'ID',
- 'In-line' => 'Inline',
- 'Include in Report' => 'Incluir no Relatório',
- 'Income Statement' => 'Estado de Receitas',
- 'Invoice' => 'Factura',
- 'Jan' => 'Jan',
- 'January' => 'Janeiro',
- 'Jul' => 'Jul',
- 'July' => 'Julho',
- 'Jun' => 'Jun',
- 'June' => 'Junho',
- 'Language' => 'Língua',
- 'Mar' => 'Mar',
- 'March' => 'Março',
- 'May' => 'Mai',
- 'May ' => 'Maio',
- 'Message' => 'Mensagem',
- 'N/A' => 'N/D',
- 'Nothing selected!' => 'Nada seleccionado',
- 'Nov' => 'Nov',
- 'November' => 'Novembro',
- 'Number' => 'Número',
- 'Oct' => 'Out',
- 'October' => 'Outubro',
- 'Order' => 'Encomenda',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagamentos',
- 'Postscript' => 'PostScript',
- 'Print' => 'Imprimir',
- 'Project' => 'Projecto',
- 'Project not on file!' => 'Projecto não existe',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Relatório para',
- 'Screen' => 'Ecran',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the names below' => 'Seleccione um dos nomes abaixo',
- 'Select from one of the projects below' => 'Seleccione um dos projectos abaixo',
- 'Select postscript or PDF!' => 'Seleccione PostScript ou PDF',
- 'Sep' => 'Set',
- 'September' => 'Setembro',
- 'Source' => 'Origem',
- 'Standard' => 'Padrão',
- 'Subject' => 'Assunto',
- 'Subtotal' => 'Sub-total',
- 'Tax' => 'Imposto',
- 'Tax collected' => 'Imposto recolhido',
- 'Tax paid' => 'Imposto pago',
- 'To' => 'Até',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balancete',
- 'Vendor' => 'Fornecedor',
- 'Vendor not on file!' => 'Fornecedor não existe',
- 'for Period' => 'pelo período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'seleccionar_todos' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/COPYING b/sql-ledger/locale/ru/COPYING
deleted file mode 100644
index 18d5360..0000000
--- a/sql-ledger/locale/ru/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-# Russian texts:
-#
-# Author: Khaimin Vladimir
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/ru/LANGUAGE b/sql-ledger/locale/ru/LANGUAGE
deleted file mode 100644
index 64c9578..0000000
--- a/sql-ledger/locale/ru/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Russian
diff --git a/sql-ledger/locale/ru/admin b/sql-ledger/locale/ru/admin
deleted file mode 100644
index f0257e7..0000000
--- a/sql-ledger/locale/ru/admin
+++ /dev/null
@@ -1,136 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'ëÏÎÔÒÏÌØ ÄÏÓÔÕÐÁ',
- 'Accounting' => 'Accounting',
- 'Add User' => 'îÏ×ÙÊ ÐÏÌØÚÏ×ÁÔÅÌØ',
- 'Address' => 'áÄÒÅÓ',
- 'Administration' => 'áÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÅ',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'éÚÍÅÎÉÔØ ÐÁÒÏÌØ áÄÍÉÎÉÓÔÒÁÔÏÒÁ',
- 'Change Password' => 'éÚÍÅÎÉÔØ ÐÁÒÏÌØ',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Click on login name to edit!' => 'Kliknij nazwê u¿ytkownika ¿eby dokonaæ zmian',
- 'Company' => 'ïÒÇÁÎÉÚÁÃÉÑ',
- 'Connect to' => 'ðÏÄËÌÀÞÉÔØÓÑ Ë',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Create Chart of Accounts' => 'óÏÚÄÁÔØ çðó',
- 'Create Dataset' => 'Utwórz Zbiór Danych',
- 'DBI not installed!' => 'îÅ ÕÓÔÁÎÏ×ÌÅÎ ÄÒÁÊ×ÅÒ DBI!',
- 'Database' => 'âÁÚÁ ÄÁÎÎÙÈ',
- 'Database Administration' => 'áÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÅ ÂÁÚÙ ÄÁÎÎÙÈ',
- 'Database Driver not checked!' => 'Sterownik Bazy Danych nie zaznaczony!',
- 'Database User missing!' => 'Brak U¿ytkownika Bazy Danych!',
- 'Dataset' => 'Zbiór Danych',
- 'Dataset missing!' => 'Brak Zbioru Danych',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÙ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Delete Dataset' => 'Usuñ Zbior Danych',
- 'Directory' => 'ëÁÔÁÌÏÇ',
- 'Driver' => 'Sterownik',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Zmiany U¿ytkownika',
- 'Existing Datasets' => 'Istniej±cy Zbiór Danych',
- 'Fax' => 'Fax',
- 'Host' => 'Wêze³',
- 'Hostname missing!' => 'Brak Nazwy Wêz³a',
- 'Language' => 'ñÚÙË',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Opu¶æ pole wêz³a i portu, chyba ¿e chcesz mieæ zdalne po³±czenie',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Zarejestrój siê',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Wyrejestrój siê',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nazwa',
- 'New Templates' => 'Nowe Szablony',
- 'No Database Drivers available!' => 'Sterownik Bazy Danych jest niedostêpny',
- 'No Dataset selected!' => 'Nie jest zaznaczony Zbiór Danych',
- 'Nothing to delete!' => 'Niema nic do usuniêcia!',
- 'Number Format' => 'Format Numeru',
- 'Oracle Database Administration' => 'Administracja Bazy Danych Oracle',
- 'Password' => 'Has³o',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Administracja Bazy Danych Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Port' => 'Port',
- 'Port missing!' => 'Brak Portu',
- 'Printer' => 'Drukarka',
- 'Save' => 'Zapisz',
- 'Setup Templates' => 'Ustaw Szablony',
- 'Signature' => 'ðÏÄÐÉÓØ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÉÅ',
- 'Templates' => 'æÏÒÍÙ',
- 'The following Datasets are not in use and can be deleted' => 'Te Zbiory Danych s± nieu¿ywane i mo¿na je usun±æ',
- 'The following Datasets need to be updated' => 'Zbiory Danych do uzupe³nienia',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Jest to wstêpne sprawdzenie istniej±cych ¿róde³. Narazie nic nie bêdzie utworzone lub usuniête.',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '¯eby dodaæ do grupy u¿ytkownika zmieñ nazwê, nazwê zarejestrowania i zapisz. Nowy u¿ytkownik z tymi samymi zmiennymi warto¶ciami bêdzie zapisany pod now± nazw± rejestruj±c±',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Uzupe³nij Zbiór Danych',
- 'Use Templates' => 'U¿yj Szablony',
- 'User' => 'U¿ytkownik',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Version' => '÷ÅÒÓÉÑ',
- 'You must enter a host and port for local and remote connections!' => 'Wstaw wêze³ i port dla lokalnego i zdalnego po³±czenia',
- 'does not exist' => 'nie istnieje',
- 'is already a member!' => 'Jest ju¿ cz³onkiem',
- 'localhost' => 'wêze³',
- 'successfully created!' => 'stworzone z powodzeniem',
- 'successfully deleted!' => 'usuniête z powodzeniem',
- 'website' => 'witryna WWW',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'îÏ×ÙÊ_ÐÏÌØÚÏ×ÁÔÅÌØ' => 'add_user',
- 'éÚÍÅÎÉÔØ_ÐÁÒÏÌØ_áÄÍÉÎÉÓÔÒÁÔÏÒÁ' => 'change_admin_password',
- 'éÚÍÅÎÉÔØ_ÐÁÒÏÌØ' => 'change_password',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'utwórz_zbiór_danych' => 'create_dataset',
- 'õÄÁÌÉÔØ' => 'delete',
- 'usuñ_zbior_danych' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'zarejestrój_siê' => 'login',
- 'wyrejestrój_siê' => 'logout',
- 'administracja_bazy_danych_oracle' => 'oracle_database_administration',
- 'administracja_bazy_danych_pg' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'zapisz' => 'save',
- 'unlock_system' => 'unlock_system',
- 'uzupe³nij_zbiór_danych' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/all b/sql-ledger/locale/ru/all
deleted file mode 100644
index eafede7..0000000
--- a/sql-ledger/locale/ru/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'òÁÓÈÏÄ',
- 'AP Aging' => 'AP Aging',
- 'AP Outstanding' => '',
- 'AP Transaction' => '',
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÒÁÓÈÏÄÁ',
- 'AR' => 'äÏÈÏÄ',
- 'AR Aging' => 'AR Aging',
- 'AR Outstanding' => '',
- 'AR Transaction' => '',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ ÄÏÈÏÄÁ',
- 'About' => 'ï ÐÒÏÇÒÁÍÍÅ',
- 'Above' => '',
- 'Access Control' => 'ëÏÎÔÒÏÌØ ÄÏÓÔÕÐÁ',
- 'Account' => 'óÞÅÔ',
- 'Account Number' => 'ëÏÄ ÓÞÅÔÁ',
- 'Account Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ!',
- 'Account Type' => 'ôÉÐ ÓÞÅÔÁ',
- 'Account Type missing!' => 'îÅ ÕËÁÚÁÎ ÔÉÐ ÓÞÅÔÁ!',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Accounting',
- 'Accounting Menu' => 'Accounting Menu',
- 'Accounts' => 'óÞÅÔÁ',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => 'îÏ×ÙÊ',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'îÏ×ÙÊ ÓÞÅÔ',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'îÏ×ÙÊ ËÌÉÅÎÔ',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'îÏ×ÙÊ GIFI',
- 'Add General Ledger Transaction' => 'îÏ×ÁÑ ÐÒÏ×ÏÄËÁ',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'îÏ×ÙÊ ÐÒÏÄÕËÔ',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Add Service' => 'îÏ×ÁÑ ÕÓÌÕÇÁ',
- 'Add Transaction' => 'îÏ×ÁÑ ÐÒÏ×ÏÄËÁ',
- 'Add User' => 'îÏ×ÙÊ ÐÏÌØÚÏ×ÁÔÅÌØ',
- 'Add Vendor' => 'îÏ×ÙÊ ÐÏÓÔÁ×ÝÉË',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'áÄÒÅÓ',
- 'Administration' => 'áÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÅ',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => '÷ÓÅ',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'óÕÍÍÁ',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Invoice Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÓÞÅÔ?',
- 'Are you sure you want to delete Order Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÚÁËÁÚ?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '÷Ù Õ×ÅÒÅÎÙ, ÓÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÕÀ ÐÒÏ×ÏÄËÕ?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÙ',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'áËÔÉ×',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'òÅÚÅÒ×ÎÁÑ ËÏÐÉÑ',
- 'Backup sent to' => 'òÅÚÅÒ×ÎÁÑ ËÏÐÉÑ ÏÔÏÓÌÁÎÁ ÎÁ',
- 'Balance' => '',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'ëÎÉÇÁ ÏÔËÒÙÔÁ',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'òîî',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'COGS',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => '',
- 'Cannot delete default account!' => 'îÅÌØÚÑ ÕÄÁÌÉÔØ ÏÓÎÏ×ÎÏÊ ÓÞÅÔ!',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => '',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury pozamkniêciu okresu',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji w zamkniêtym okresie',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'éÚÍÅÎÉÔØ ÐÁÒÏÌØ áÄÍÉÎÉÓÔÒÁÔÏÒÁ',
- 'Change Password' => 'éÚÍÅÎÉÔØ ÐÁÒÏÌØ',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Chart of Accounts' => 'ðÌÁÎ ÓÞÅÔÏ×',
- 'Check' => '',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Kliknij nazwê u¿ytkownika ¿eby dokonaæ zmian',
- 'Close Books up to' => 'Zamkniêcie Ksi±g do!',
- 'Closed' => 'úÁËÒÙÔ',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'ïÒÇÁÎÉÚÁÃÉÑ',
- 'Company Name' => '',
- 'Compare to' => 'óÒÁ×ÎÉÔØ Ó',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Connect to' => 'ðÏÄËÌÀÞÉÔØÓÑ Ë',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Contra' => '',
- 'Copies' => 'ëÏÐÉÊ',
- 'Copy to COA' => 'ëÏÐÉÒÏ×ÁÔØ × çðó',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'óÏÚÄÁÔØ çðó',
- 'Create Dataset' => 'Utwórz Zbiór Danych',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '',
- 'Customer missing!' => '',
- 'Customer not on file!' => '',
- 'Customer saved!' => '',
- 'Customers' => '',
- 'DBI not installed!' => 'îÅ ÕÓÔÁÎÏ×ÌÅÎ ÄÒÁÊ×ÅÒ DBI!',
- 'DOB' => '',
- 'Database' => 'âÁÚÁ ÄÁÎÎÙÈ',
- 'Database Administration' => 'áÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÅ ÂÁÚÙ ÄÁÎÎÙÈ',
- 'Database Driver not checked!' => 'Sterownik Bazy Danych nie zaznaczony!',
- 'Database Host' => 'Wêze³ Bazy Danych',
- 'Database User missing!' => 'Brak U¿ytkownika Bazy Danych!',
- 'Dataset' => 'Zbiór Danych',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Brak Zbioru Danych',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'äÁÔÁ',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÙ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÙ',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => 'äÅÂÅÔ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Delete Account' => 'õÄÁÌÍÔØ ÓÞÅÔ',
- 'Delete Dataset' => 'Usuñ Zbior Danych',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'ëÁÔÁÌÏÇ',
- 'Discount' => 'óËÉÄËÁ',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Sterownik',
- 'Dropdown Limit' => '',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'Due Date missing!' => 'îÅ ÕËÁÚÁÎ ÓÒÏË ÏÐÌÁÔÙ!',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'éÚÍÅÎÉÔØ ÓÞÅÔ',
- 'Edit Assembly' => 'éÚÍÅÎÉÔØ ËÏÍÐÌÅËÔ',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'éÚÍÅÎÉÔØ GIFI',
- 'Edit General Ledger Transaction' => 'Zmiany w Ksiêdze G³ównej',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Zmiany Produktu',
- 'Edit Preferences for' => 'Zmiany Preferencji dla',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => 'Zmiany Zamówienia Zakupu',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => 'Zmiany Zamówienia Klienta',
- 'Edit Service' => 'éÚÍÅÎÉÔØ ÕÓÌÕÇÕ',
- 'Edit Template' => 'Zmiany Wzorca',
- 'Edit User' => 'Zmiany U¿ytkownika',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Egzekwuj zmiany transakcji dla wszystkich terminów',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '',
- 'Equity' => 'Kapita³',
- 'Excempt age <' => '',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Existing Datasets' => 'Istniej±cy Zbiór Danych',
- 'Expense' => 'òÁÓÈÏÄ',
- 'Expense Account' => 'Konto Kosztów',
- 'Expense/Asset' => 'Koszt/Aktywy',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'Foreign Exchange Gain' => 'Zysk przy Wymianie Walut',
- 'Foreign Exchange Loss' => 'Strata przy Wymianie Walut',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => 'Brakuje GIFI',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'Goods & Services' => 'Produkty i Us³ugi',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'Szablony HTML',
- 'Heading' => 'òÁÚÄÅÌ',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Wêze³',
- 'Hostname missing!' => 'Brak Nazwy Wêz³a',
- 'IBAN' => '',
- 'ID' => 'Identyfikator',
- 'Image' => '',
- 'In-line' => 'W³±czony',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Include in drop-down menus' => 'Do³±cz w menu rozwijanym',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Do³±cz Konto w formularzach Kontrachentów ¿eby wskazaæ ¿e podlegaj± opodatkowaniu',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Incorrect Dataset version!' => 'Nieprawid³owa wersja Zbioru Danych',
- 'Incorrect Password!' => 'Nieprawid³owe Has³o',
- 'Increase' => '',
- 'Individual Items' => 'Indywidualne Czê¶ci',
- 'Internal Notes' => '',
- 'Inventory' => 'éÎ×ÅÎÔÁÒÎÙÊ',
- 'Inventory Account' => 'Konto Materia³owe',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Ilo¶æ Inventarza musi byæ równa zero zanim bêdzie mozna zdezaktualizowaæ to z³o¿enie!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Ilo¶æ inventarza musi byæ równa zero zanim bêdzie mo¿na zdezaktualizowaæ t± czê¶æ!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => 'Czy jest to konto sumaryczne?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Items' => '',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'LaTeX Templates' => 'Szablony LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => 'ñÚÙË',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Ostatnie Numery i Konta Domy¶lne',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Opu¶æ pole wêz³a i portu, chyba ¿e chcesz mieæ zdalne po³±czenie',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Licensed to' => 'ìÉÃÅÎÚÉÅÊ ÏÂÌÁÄÁÅÔ:',
- 'Line Total' => 'Suma ca³kowita',
- 'Link' => 'Dowi±zanie',
- 'Link Accounts' => 'Konta dowi±zane',
- 'List' => '',
- 'List Accounts' => 'Spis Kont',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Wykaz GIFI',
- 'List Languages' => '',
- 'List Price' => 'Cena',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Wykaz Transakcji',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Zarejestrój siê',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Wyrejestrój siê',
- 'Make' => 'Marka',
- 'Manager' => '',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Wiadomo¶æ',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => 'Model',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'N/A',
- 'Name' => 'Nazwa',
- 'Name missing!' => '',
- 'New Templates' => 'Nowe Szablony',
- 'No' => 'Nie',
- 'No Database Drivers available!' => 'Sterownik Bazy Danych jest niedostêpny',
- 'No Dataset selected!' => 'Nie jest zaznaczony Zbiór Danych',
- 'No email address for' => 'Brak adresu email',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Noty',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'Niema nic do usuniêcia!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number Format' => 'Format Numeru',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'O' => '',
- 'Obsolete' => 'Zdezaktualizowany',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'On Hand' => 'Na Stanie',
- 'Open' => 'Otwórz',
- 'Oracle Database Administration' => 'Administracja Bazy Danych Oracle',
- 'Order' => 'Zamówienie',
- 'Order Date' => 'Data Zamówienia',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Entry' => 'Wystawianie Zamówieñ',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => 'Zbêdny',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Packing Lists' => '',
- 'Paid' => 'Zap³acono',
- 'Part' => 'Produkt',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Produkty',
- 'Parts Inventory' => 'Inwentarz',
- 'Password' => 'Has³o',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Zobowi±zania',
- 'Payment' => 'P³atno¶æ',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payment posted!' => '',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administracja Bazy Danych Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Tel.',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Brak Portu',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Preferencje',
- 'Preferences saved!' => 'Preferencje Zapisane!',
- 'Prepayment' => '',
- 'Price' => 'Cena Netto',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Drukarka',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'PPZ',
- 'Rate' => 'Stawka',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => 'Nale¿no¶ci',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'ïÔÎÅÓÔÉ ÎÁ ÓÞÅÔ',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => 'Pozosta³e',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Raport dla',
- 'Reports' => 'Sprawozdania',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Termin Dostawy',
- 'Retained Earnings' => 'Zysk',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Sprzeda¿',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Zapisz',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => 'Zapisz w zbiorze',
- 'Screen' => 'Ekran',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Send by E-Mail' => 'Wys³ano przy u¿yciu E-Mail',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'õÓÌÕÇÁ',
- 'Service Items' => 'Artyku³y Us³ugowe',
- 'Services' => 'õÓÌÕÇÉ',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Ustaw Szablony',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Niedobór',
- 'Signature' => 'ðÏÄÐÉÓØ',
- 'Source' => '¯ród³o',
- 'Spoolfile' => '',
- 'Standard' => 'óÔÁÎÄÁÒÔÎÙÅ',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Wstaw Z³o¿enie',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÉÅ',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'óÉÓÔÅÍÁ',
- 'System Defaults' => '',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Accounts' => 'Konta Podatkowe',
- 'Tax Included' => 'Podatek Wliczony',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => 'Opodatkowane',
- 'Template saved!' => '',
- 'Templates' => 'æÏÒÍÙ',
- 'Terms' => 'Warunki: Netto',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Te Zbiory Danych s± nieu¿ywane i mo¿na je usun±æ',
- 'The following Datasets need to be updated' => 'Zbiory Danych do uzupe³nienia',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Jest to wstêpne sprawdzenie istniej±cych ¿róde³. Narazie nic nie bêdzie utworzone lub usuniête.',
- 'Till' => '',
- 'To' => 'do',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '¯eby dodaæ do grupy u¿ytkownika zmieñ nazwê, nazwê zarejestrowania i zapisz. Nowy u¿ytkownik z tymi samymi zmiennymi warto¶ciami bêdzie zapisany pod now± nazw± rejestruj±c±',
- 'Top Level' => '',
- 'Total' => 'Warto¶æ Brutto',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Brak Daty Transakcji!',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => 'Zmiana transakcji narzucona dla wszystkich okresów',
- 'Transaction reversal enforced up to' => 'Zmiana transakcji narzucona do',
- 'Transactions' => 'Transakcje',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Type of Business' => '',
- 'Unit' => 'Jednostka',
- 'Unit of measure' => 'Jednostka miary',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Uzupe³nij Zbiór Danych',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'U¿yj Szablony',
- 'User' => 'U¿ytkownik',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Dostawca',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '',
- 'Vendor missing!' => '',
- 'Vendor not on file!' => '',
- 'Vendor saved!' => '',
- 'Vendors' => '',
- 'Version' => '÷ÅÒÓÉÑ',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Waga',
- 'Weight Unit' => 'Jednostka Wagi',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Tak',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Nie wstawiono nazwy!',
- 'You must enter a host and port for local and remote connections!' => 'Wstaw wêze³ i port dla lokalnego i zdalnego po³±czenia',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'dni',
- 'does not exist' => 'nie istnieje',
- 'done' => '',
- 'ea' => 'szt',
- 'for Period' => 'za Okres',
- 'is already a member!' => 'Jest ju¿ cz³onkiem',
- 'is not a member!' => 'Nie jest cz³onkiem',
- 'localhost' => 'wêze³',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'stworzone z powodzeniem',
- 'successfully deleted!' => 'usuniête z powodzeniem',
- 'website' => 'witryna WWW',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/am b/sql-ledger/locale/ru/am
deleted file mode 100644
index 7524df3..0000000
--- a/sql-ledger/locale/ru/am
+++ /dev/null
@@ -1,177 +0,0 @@
-$self{texts} = {
- 'AP' => 'òÁÓÈÏÄ',
- 'AR' => 'äÏÈÏÄ',
- 'About' => 'ï ÐÒÏÇÒÁÍÍÅ',
- 'Account' => 'óÞÅÔ',
- 'Account Number' => 'ëÏÄ ÓÞÅÔÁ',
- 'Account Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ!',
- 'Account Type' => 'ôÉÐ ÓÞÅÔÁ',
- 'Account Type missing!' => 'îÅ ÕËÁÚÁÎ ÔÉÐ ÓÞÅÔÁ!',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Account' => 'îÏ×ÙÊ ÓÞÅÔ',
- 'Add GIFI' => 'îÏ×ÙÊ GIFI',
- 'Address' => 'áÄÒÅÓ',
- 'Asset' => 'áËÔÉ×',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Backup sent to' => 'òÅÚÅÒ×ÎÁÑ ËÏÐÉÑ ÏÔÏÓÌÁÎÁ ÎÁ',
- 'Books are open' => 'ëÎÉÇÁ ÏÔËÒÙÔÁ',
- 'Business Number' => 'òîî',
- 'COGS' => 'COGS',
- 'Cannot delete default account!' => 'îÅÌØÚÑ ÕÄÁÌÉÔØ ÏÓÎÏ×ÎÏÊ ÓÞÅÔ!',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Chart of Accounts' => 'ðÌÁÎ ÓÞÅÔÏ×',
- 'Close Books up to' => 'Zamkniêcie Ksi±g do!',
- 'Company' => 'ïÒÇÁÎÉÚÁÃÉÑ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copy to COA' => 'ëÏÐÉÒÏ×ÁÔØ × çðó',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Database Host' => 'Wêze³ Bazy Danych',
- 'Dataset' => 'Zbiór Danych',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÙ',
- 'Debit' => 'äÅÂÅÔ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Delete Account' => 'õÄÁÌÍÔØ ÓÞÅÔ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Discount' => 'óËÉÄËÁ',
- 'E-mail' => 'E-mail',
- 'Edit Account' => 'éÚÍÅÎÉÔØ ÓÞÅÔ',
- 'Edit GIFI' => 'éÚÍÅÎÉÔØ GIFI',
- 'Edit Preferences for' => 'Zmiany Preferencji dla',
- 'Edit Template' => 'Zmiany Wzorca',
- 'Enforce transaction reversal for all dates' => 'Egzekwuj zmiany transakcji dla wszystkich terminów',
- 'Equity' => 'Kapita³',
- 'Expense' => 'òÁÓÈÏÄ',
- 'Expense Account' => 'Konto Kosztów',
- 'Expense/Asset' => 'Koszt/Aktywy',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Zysk przy Wymianie Walut',
- 'Foreign Exchange Loss' => 'Strata przy Wymianie Walut',
- 'GIFI' => 'GIFI',
- 'GIFI missing!' => 'Brakuje GIFI',
- 'Heading' => 'òÁÚÄÅÌ',
- 'Include in drop-down menus' => 'Do³±cz w menu rozwijanym',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Do³±cz Konto w formularzach Kontrachentów ¿eby wskazaæ ¿e podlegaj± opodatkowaniu',
- 'Inventory' => 'éÎ×ÅÎÔÁÒÎÙÊ',
- 'Inventory Account' => 'Konto Materia³owe',
- 'Is this a summary account to record' => 'Czy jest to konto sumaryczne?',
- 'Language' => 'ñÚÙË',
- 'Last Numbers & Default Accounts' => 'Ostatnie Numery i Konta Domy¶lne',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Licensed to' => 'ìÉÃÅÎÚÉÅÊ ÏÂÌÁÄÁÅÔ:',
- 'Link' => 'Dowi±zanie',
- 'Name' => 'Nazwa',
- 'No' => 'Nie',
- 'No email address for' => 'Brak adresu email',
- 'Number' => 'Numer Katalogu',
- 'Number Format' => 'Format Numeru',
- 'Parts Inventory' => 'Inwentarz',
- 'Password' => 'Has³o',
- 'Payables' => 'Zobowi±zania',
- 'Payment' => 'P³atno¶æ',
- 'Phone' => 'Tel.',
- 'Preferences saved!' => 'Preferencje Zapisane!',
- 'Printer' => 'Drukarka',
- 'Rate' => 'Stawka',
- 'Receivables' => 'Nale¿no¶ci',
- 'Retained Earnings' => 'Zysk',
- 'Save' => 'Zapisz',
- 'Service Items' => 'Artyku³y Us³ugowe',
- 'Signature' => 'ðÏÄÐÉÓØ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÉÅ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Accounts' => 'Konta Podatkowe',
- 'Transaction reversal enforced for all dates' => 'Zmiana transakcji narzucona dla wszystkich okresów',
- 'Transaction reversal enforced up to' => 'Zmiana transakcji narzucona do',
- 'User' => 'U¿ytkownik',
- 'Version' => '÷ÅÒÓÉÑ',
- 'Weight Unit' => 'Jednostka Wagi',
- 'Yes' => 'Tak',
- 'localhost' => 'wêze³',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'îÏ×ÙÊ_ÓÞÅÔ' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'ëÏÐÉÒÏ×ÁÔØ_×_çðó' => 'copy_to_coa',
- 'õÄÁÌÉÔØ' => 'delete',
- 'edit' => 'edit',
- 'éÚÍÅÎÉÔØ_ÓÞÅÔ' => 'edit_account',
- 'zapisz' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ap b/sql-ledger/locale/ru/ap
deleted file mode 100644
index 73c6ee7..0000000
--- a/sql-ledger/locale/ru/ap
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÒÁÓÈÏÄÁ',
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Transaction' => '÷Ù Õ×ÅÒÅÎÙ, ÓÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÕÀ ÐÒÏ×ÏÄËÕ?',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji w zamkniêtym okresie',
- 'Closed' => 'úÁËÒÙÔ',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÙ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'Due Date missing!' => 'îÅ ÕËÁÚÁÎ ÓÒÏË ÏÐÌÁÔÙ!',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otwórz',
- 'Order' => 'Zamówienie',
- 'Order Number' => 'Numer Zamówienia',
- 'Paid' => 'Zap³acono',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Remaining' => 'Pozosta³e',
- 'Screen' => 'Ekran',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Vendor' => 'Dostawca',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ar b/sql-ledger/locale/ru/ar
deleted file mode 100644
index 0c1a9c5..0000000
--- a/sql-ledger/locale/ru/ar
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ ÄÏÈÏÄÁ',
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Transaction' => '÷Ù Õ×ÅÒÅÎÙ, ÓÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÕÀ ÐÒÏ×ÏÄËÕ?',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji w zamkniêtym okresie',
- 'Closed' => 'úÁËÒÙÔ',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÙ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'Due Date missing!' => 'îÅ ÕËÁÚÁÎ ÓÒÏË ÏÐÌÁÔÙ!',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otwórz',
- 'Order' => 'Zamówienie',
- 'Order Number' => 'Numer Zamówienia',
- 'Paid' => 'Zap³acono',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Remaining' => 'Pozosta³e',
- 'Screen' => 'Ekran',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/arap b/sql-ledger/locale/ru/arap
deleted file mode 100644
index a694451..0000000
--- a/sql-ledger/locale/ru/arap
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Address' => 'áÄÒÅÓ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Number' => 'Numer Katalogu',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/arapprn b/sql-ledger/locale/ru/arapprn
deleted file mode 100644
index 6895776..0000000
--- a/sql-ledger/locale/ru/arapprn
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Amount' => 'óÕÍÍÁ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Date' => 'äÁÔÁ',
- 'Screen' => 'Ekran',
- 'Source' => '¯ród³o',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/bp b/sql-ledger/locale/ru/bp
deleted file mode 100644
index a881c3c..0000000
--- a/sql-ledger/locale/ru/bp
+++ /dev/null
@@ -1,39 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'From' => 'Od',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Order' => 'Zamówienie',
- 'Order Number' => 'Numer Zamówienia',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'To' => 'do',
- 'Vendor' => 'Dostawca',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ca b/sql-ledger/locale/ru/ca
deleted file mode 100644
index 9fe7aa1..0000000
--- a/sql-ledger/locale/ru/ca
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Chart of Accounts' => 'ðÌÁÎ ÓÞÅÔÏ×',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÅÔ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'List Transactions' => 'Wykaz Transakcji',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'To' => 'do',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'wykaz_transakcji' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/cp b/sql-ledger/locale/ru/cp
deleted file mode 100644
index 4574d00..0000000
--- a/sql-ledger/locale/ru/cp
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'AP' => 'òÁÓÈÏÄ',
- 'AR' => 'äÏÈÏÄ',
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Address' => 'áÄÒÅÓ',
- 'All' => '÷ÓÅ',
- 'Amount' => 'óÕÍÍÁ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Number' => 'Numer Katalogu',
- 'Payment' => 'P³atno¶æ',
- 'Screen' => 'Ekran',
- 'Source' => '¯ród³o',
- 'Vendor' => 'Dostawca',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ct b/sql-ledger/locale/ru/ct
deleted file mode 100644
index e6b7e3e..0000000
--- a/sql-ledger/locale/ru/ct
+++ /dev/null
@@ -1,112 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÒÁÓÈÏÄÁ',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ ÄÏÈÏÄÁ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Customer' => 'îÏ×ÙÊ ËÌÉÅÎÔ',
- 'Add Vendor' => 'îÏ×ÙÊ ÐÏÓÔÁ×ÝÉË',
- 'Address' => 'áÄÒÅÓ',
- 'All' => '÷ÓÅ',
- 'Amount' => 'óÕÍÍÁ',
- 'Closed' => 'úÁËÒÙÔ',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Discount' => 'óËÉÄËÁ',
- 'E-mail' => 'E-mail',
- 'Fax' => 'Fax',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Language' => 'ñÚÙË',
- 'Name' => 'Nazwa',
- 'Notes' => 'Noty',
- 'Number' => 'Numer Katalogu',
- 'Open' => 'Otwórz',
- 'Order' => 'Zamówienie',
- 'Orphaned' => 'Zbêdny',
- 'Phone' => 'Tel.',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'Save' => 'Zapisz',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Included' => 'Podatek Wliczony',
- 'Taxable' => 'Opodatkowane',
- 'Terms' => 'Warunki: Netto',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
- 'days' => 'dni',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'îÏ×ÙÊ_ËÌÉÅÎÔ' => 'add_customer',
- 'îÏ×ÙÊ_ÐÏÓÔÁ×ÝÉË' => 'add_vendor',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'pricelist' => 'pricelist',
- 'zamówienie_zakupu' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'zamówienie_klienta' => 'sales_order',
- 'zapisz' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/gl b/sql-ledger/locale/ru/gl
deleted file mode 100644
index 6263d18..0000000
--- a/sql-ledger/locale/ru/gl
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add General Ledger Transaction' => 'îÏ×ÁÑ ÐÒÏ×ÏÄËÁ',
- 'Address' => 'áÄÒÅÓ',
- 'All' => '÷ÓÅ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Transaction' => '÷Ù Õ×ÅÒÅÎÙ, ÓÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÕÀ ÐÒÏ×ÏÄËÕ?',
- 'Asset' => 'áËÔÉ×',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji w zamkniêtym okresie',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÅÔ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Edit General Ledger Transaction' => 'Zmiany w Ksiêdze G³ównej',
- 'Equity' => 'Kapita³',
- 'Expense' => 'òÁÓÈÏÄ',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Reports' => 'Sprawozdania',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'To' => 'do',
- 'Transaction Date missing!' => 'Brak Daty Transakcji!',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/hr b/sql-ledger/locale/ru/hr
deleted file mode 100644
index 9822e17..0000000
--- a/sql-ledger/locale/ru/hr
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'AP' => 'òÁÓÈÏÄ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Address' => 'áÄÒÅÓ',
- 'Administrator' => 'Administrator',
- 'All' => '÷ÓÅ',
- 'Amount' => 'óÕÍÍÁ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'E-mail' => 'E-mail',
- 'Expense' => 'òÁÓÈÏÄ',
- 'ID' => 'Identyfikator',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Login' => 'Zarejestrój siê',
- 'Name' => 'Nazwa',
- 'Notes' => 'Noty',
- 'Number' => 'Numer Katalogu',
- 'Orphaned' => 'Zbêdny',
- 'Rate' => 'Stawka',
- 'Sales' => 'Sprzeda¿',
- 'Save' => 'Zapisz',
- 'User' => 'U¿ytkownik',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'zapisz' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ic b/sql-ledger/locale/ru/ic
deleted file mode 100644
index 82aee50..0000000
--- a/sql-ledger/locale/ru/ic
+++ /dev/null
@@ -1,190 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Accounting Menu',
- 'Add' => 'îÏ×ÙÊ',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Part' => 'îÏ×ÙÊ ÐÒÏÄÕËÔ',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Add Service' => 'îÏ×ÁÑ ÕÓÌÕÇÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÙ',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Bin' => 'Bin',
- 'COGS' => 'COGS',
- 'Closed' => 'úÁËÒÙÔ',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Edit Assembly' => 'éÚÍÅÎÉÔØ ËÏÍÐÌÅËÔ',
- 'Edit Part' => 'Zmiany Produktu',
- 'Edit Service' => 'éÚÍÅÎÉÔØ ÕÓÌÕÇÕ',
- 'Expense' => 'òÁÓÈÏÄ',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Individual Items' => 'Indywidualne Czê¶ci',
- 'Inventory' => 'éÎ×ÅÎÔÁÒÎÙÊ',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Ilo¶æ Inventarza musi byæ równa zero zanim bêdzie mozna zdezaktualizowaæ to z³o¿enie!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Ilo¶æ inventarza musi byæ równa zero zanim bêdzie mo¿na zdezaktualizowaæ t± czê¶æ!',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Line Total' => 'Suma ca³kowita',
- 'Link Accounts' => 'Konta dowi±zane',
- 'List Price' => 'Cena',
- 'Make' => 'Marka',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Model' => 'Model',
- 'Name' => 'Nazwa',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Obsolete' => 'Zdezaktualizowany',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'On Hand' => 'Na Stanie',
- 'Open' => 'Otwórz',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Orphaned' => 'Zbêdny',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Part' => 'Produkt',
- 'Parts' => 'Produkty',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'ROP' => 'PPZ',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'Save' => 'Zapisz',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sell Price' => 'Cena Sprzeda¿y',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Services' => 'õÓÌÕÇÉ',
- 'Short' => 'Niedobór',
- 'Stock Assembly' => 'Wstaw Z³o¿enie',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'To' => 'do',
- 'Unit' => 'Jednostka',
- 'Unit of measure' => 'Jednostka miary',
- 'Vendor' => 'Dostawca',
- 'Weight' => 'Waga',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'days' => 'dni',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'îÏ×ÙÊ_ËÏÍÐÌÅËÔ' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'îÏ×ÙÊ_ÐÒÏÄÕËÔ' => 'add_part',
- 'îÏ×ÁÑ_ÕÓÌÕÇÁ' => 'add_service',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'éÚÍÅÎÉÔØ_ËÏÍÐÌÅËÔ' => 'edit_assembly',
- 'zmiany_produktu' => 'edit_part',
- 'éÚÍÅÎÉÔØ_ÕÓÌÕÇÕ' => 'edit_service',
- 'zapisz' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/io b/sql-ledger/locale/ru/io
deleted file mode 100644
index b67b35d..0000000
--- a/sql-ledger/locale/ru/io
+++ /dev/null
@@ -1,96 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Bin' => 'Bin',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'In-line' => 'W³±czony',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Part' => 'Produkt',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'To' => 'do',
- 'Unit' => 'Jednostka',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ir b/sql-ledger/locale/ru/ir
deleted file mode 100644
index 3776cdd..0000000
--- a/sql-ledger/locale/ru/ir
+++ /dev/null
@@ -1,159 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Invoice Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÓÞÅÔ?',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury pozamkniêciu okresu',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'In-line' => 'W³±czony',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Language' => 'ñÚÙË',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Record in' => 'ïÔÎÅÓÔÉ ÎÁ ÓÞÅÔ',
- 'Remaining' => 'Pozosta³e',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Source' => '¯ród³o',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
- 'Vendor' => 'Dostawca',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Yes' => 'Tak',
- 'ea' => 'szt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'zamówienie_zakupu' => 'purchase_order',
- 'update' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/is b/sql-ledger/locale/ru/is
deleted file mode 100644
index 4f5f90f..0000000
--- a/sql-ledger/locale/ru/is
+++ /dev/null
@@ -1,164 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Invoice Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÓÞÅÔ?',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury pozamkniêciu okresu',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'In-line' => 'W³±czony',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Record in' => 'ïÔÎÅÓÔÉ ÎÁ ÓÞÅÔ',
- 'Remaining' => 'Pozosta³e',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Source' => '¯ród³o',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Yes' => 'Tak',
- 'ea' => 'szt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'zamówienie_klienta' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/login b/sql-ledger/locale/ru/login
deleted file mode 100644
index 8578ab3..0000000
--- a/sql-ledger/locale/ru/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'ïÒÇÁÎÉÚÁÃÉÑ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Incorrect Dataset version!' => 'Nieprawid³owa wersja Zbioru Danych',
- 'Incorrect Password!' => 'Nieprawid³owe Has³o',
- 'Login' => 'Zarejestrój siê',
- 'Name' => 'Nazwa',
- 'Password' => 'Has³o',
- 'Version' => '÷ÅÒÓÉÑ',
- 'You did not enter a name!' => 'Nie wstawiono nazwy!',
- 'is not a member!' => 'Nie jest cz³onkiem',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'zarejestrój_siê' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/menu b/sql-ledger/locale/ru/menu
deleted file mode 100644
index 482bd8f..0000000
--- a/sql-ledger/locale/ru/menu
+++ /dev/null
@@ -1,61 +0,0 @@
-$self{texts} = {
- 'AP' => 'òÁÓÈÏÄ',
- 'AP Aging' => 'AP Aging',
- 'AR' => 'äÏÈÏÄ',
- 'AR Aging' => 'AR Aging',
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Account' => 'îÏ×ÙÊ ÓÞÅÔ',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Customer' => 'îÏ×ÙÊ ËÌÉÅÎÔ',
- 'Add GIFI' => 'îÏ×ÙÊ GIFI',
- 'Add Part' => 'îÏ×ÙÊ ÐÒÏÄÕËÔ',
- 'Add Service' => 'îÏ×ÁÑ ÕÓÌÕÇÁ',
- 'Add Transaction' => 'îÏ×ÁÑ ÐÒÏ×ÏÄËÁ',
- 'Add Vendor' => 'îÏ×ÙÊ ÐÏÓÔÁ×ÝÉË',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÙ',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Backup' => 'òÅÚÅÒ×ÎÁÑ ËÏÐÉÑ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Chart of Accounts' => 'ðÌÁÎ ÓÞÅÔÏ×',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'General Ledger' => 'Ksiêga G³ówna',
- 'Goods & Services' => 'Produkty i Us³ugi',
- 'HTML Templates' => 'Szablony HTML',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'LaTeX Templates' => 'Szablony LaTeX',
- 'Language' => 'ñÚÙË',
- 'List Accounts' => 'Spis Kont',
- 'List GIFI' => 'Wykaz GIFI',
- 'Logout' => 'Wyrejestrój siê',
- 'Open' => 'Otwórz',
- 'Order Entry' => 'Wystawianie Zamówieñ',
- 'Packing List' => 'Wykaz Dostawy',
- 'Parts' => 'Produkty',
- 'Payment' => 'P³atno¶æ',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Preferences' => 'Preferencje',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Reports' => 'Sprawozdania',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'Save to File' => 'Zapisz w zbiorze',
- 'Send by E-Mail' => 'Wys³ano przy u¿yciu E-Mail',
- 'Services' => 'õÓÌÕÇÉ',
- 'Stock Assembly' => 'Wstaw Z³o¿enie',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÉÅ',
- 'System' => 'óÉÓÔÅÍÁ',
- 'Transactions' => 'Transakcje',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Version' => '÷ÅÒÓÉÑ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/oe b/sql-ledger/locale/ru/oe
deleted file mode 100644
index cbc8985..0000000
--- a/sql-ledger/locale/ru/oe
+++ /dev/null
@@ -1,196 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Accounting Menu',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Order Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÚÁËÁÚ?',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Bin' => 'Bin',
- 'Closed' => 'úÁËÒÙÔ',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Edit Purchase Order' => 'Zmiany Zamówienia Zakupu',
- 'Edit Sales Order' => 'Zmiany Zamówienia Klienta',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otwórz',
- 'Order' => 'Zamówienie',
- 'Order Date' => 'Data Zamówienia',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Part' => 'Produkt',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Purchase Orders' => 'Zamówienia Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Remaining' => 'Pozosta³e',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Sales Orders' => 'Zamówienia Klientów',
- 'Save' => 'Zapisz',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Included' => 'Podatek Wliczony',
- 'Terms' => 'Warunki: Netto',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
- 'Vendor' => 'Dostawca',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Yes' => 'Tak',
- 'days' => 'dni',
- 'ea' => 'szt',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'zamówienie_zakupu' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'zamówienie_klienta' => 'sales_order',
- 'zapisz' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/pe b/sql-ledger/locale/ru/pe
deleted file mode 100644
index aabc316..0000000
--- a/sql-ledger/locale/ru/pe
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Accounting Menu',
- 'All' => '÷ÓÅ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Language' => 'ñÚÙË',
- 'Number' => 'Numer Katalogu',
- 'Orphaned' => 'Zbêdny',
- 'Save' => 'Zapisz',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'zapisz' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/pos b/sql-ledger/locale/ru/pos
deleted file mode 100644
index c627e67..0000000
--- a/sql-ledger/locale/ru/pos
+++ /dev/null
@@ -1,48 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'From' => 'Od',
- 'Language' => 'ñÚÙË',
- 'Number' => 'Numer Katalogu',
- 'Open' => 'Otwórz',
- 'Paid' => 'Zap³acono',
- 'Price' => 'Cena Netto',
- 'Qty' => 'Ilo¶æ',
- 'Record in' => 'ïÔÎÅÓÔÉ ÎÁ ÓÞÅÔ',
- 'Remaining' => 'Pozosta³e',
- 'Screen' => 'Ekran',
- 'Source' => '¯ród³o',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Unit' => 'Jednostka',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/ps b/sql-ledger/locale/ru/ps
deleted file mode 100644
index 2de47da..0000000
--- a/sql-ledger/locale/ru/ps
+++ /dev/null
@@ -1,226 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'AP Aging',
- 'AR Aging' => 'AR Aging',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ ÄÏÈÏÄÁ',
- 'Account' => 'óÞÅÔ',
- 'Account Number' => 'ëÏÄ ÓÞÅÔÁ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Accounts' => 'óÞÅÔÁ',
- 'Add Purchase Order' => 'îÏ×ÙÊ ÚÁËÁÚ ÐÏÓÔÁ×ÝÉËÁ',
- 'Add Sales Order' => 'îÏ×ÙÊ ÚÁËÁÚ ËÌÉÅÎÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Are you sure you want to delete Invoice Number' => '÷Ù Õ×ÅÒÅÎÙ, ÞÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÙÊ ÓÞÅÔ?',
- 'Are you sure you want to delete Transaction' => '÷Ù Õ×ÅÒÅÎÙ, ÓÔÏ ÈÏÔÉÔÅ ÕÄÁÌÉÔØ ÄÁÎÎÕÀ ÐÒÏ×ÏÄËÕ?',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Bin' => 'Bin',
- 'Cannot post invoice for a closed period!' => 'Nie mo¿na zksiêgowaæ faktury pozamkniêciu okresu',
- 'Cannot post payment for a closed period!' => 'Nie mo¿na zaksiêgowaæ p³atno¶ci po zamkniêciu okresu!',
- 'Cannot post transaction for a closed period!' => 'Nie mo¿na zaksiêgowaæ transakcji w zamkniêtym okresie',
- 'Closed' => 'úÁËÒÙÔ',
- 'Compare to' => 'óÒÁ×ÎÉÔØ Ó',
- 'Confirm!' => 'ðÏÄÔ×ÅÒÄÉÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÏÅ ÌÉÃÏ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Credit Limit' => 'ìÉÍÉÔ ËÒÅÄÉÔÁ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÙ',
- 'Debit' => 'äÅÂÅÔ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Delete' => 'õÄÁÌÉÔØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'Due Date missing!' => 'îÅ ÕËÁÚÁÎ ÓÒÏË ÏÐÌÁÔÙ!',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Exch' => 'Kurs',
- 'Exchange Rate' => 'Kurs Wymiany',
- 'Exchange rate for payment missing!' => 'Brakuje kursu wymiany dla p³atno¶ci!',
- 'Exchange rate missing!' => 'Brakuje kursu wymiany',
- 'Fax' => 'Fax',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Heading' => 'òÁÚÄÅÌ',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ',
- 'Invoice Date missing!' => 'îÅ ÕËÁÚÁÎÁ ÄÁÔÁ ×ÙÓÔÁ×ÌÅÎÉÑ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number' => 'îÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Invoice Number missing!' => 'îÅ ÕËÁÚÁÎ ÎÏÍÅÒ ÓÞÅÔÁ-ÆÁËÔÕÒÙ',
- 'Item not on file!' => 'Produkt nie jest w zbiorze!',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Language' => 'ñÚÙË',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'N/A' => 'N/A',
- 'Notes' => 'Noty',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Number missing in Row' => 'Brak Numeru w Rzêdzie',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Open' => 'Otwórz',
- 'Order' => 'Zamówienie',
- 'Order Date missing!' => 'Brak Daty Zamówienia',
- 'Order Number' => 'Numer Zamówienia',
- 'Order Number missing!' => 'Brak Numeru Zamówienia',
- 'Packing List' => 'Wykaz Dostawy',
- 'Packing List Date missing!' => 'Brak Daty Wykazu Dostawy',
- 'Packing List Number missing!' => 'Brak Numeru Wykazu Dostawy',
- 'Paid' => 'Zap³acono',
- 'Part' => 'Produkt',
- 'Payment date missing!' => 'Brak Daty P³atno¶ci',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Phone' => 'Tel.',
- 'Price' => 'Cena Netto',
- 'Purchase Order' => 'Zamówienie Zakupu',
- 'Qty' => 'Ilo¶æ',
- 'Record in' => 'ïÔÎÅÓÔÉ ÎÁ ÓÞÅÔ',
- 'Remaining' => 'Pozosta³e',
- 'Report for' => 'Raport dla',
- 'Required by' => 'Termin Dostawy',
- 'Sales Order' => 'Zamówienie Klienta',
- 'Screen' => 'Ekran',
- 'Select from one of the items below' => 'Wybie¿ jeden z poni¿szych artyku³ów',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Service' => 'õÓÌÕÇÁ',
- 'Source' => '¯ród³o',
- 'Standard' => 'óÔÁÎÄÁÒÔÎÙÅ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'Tax Included' => 'Podatek Wliczony',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Unit' => 'Jednostka',
- 'Vendor' => 'Dostawca',
- 'What type of item is this?' => 'Co to za rodzaj artyku³u',
- 'Yes' => 'Tak',
- 'ea' => 'szt',
- 'for Period' => 'za Okres',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'õÄÁÌÉÔØ' => 'delete',
- 'e_mail' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'zamówienie_klienta' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/pw b/sql-ledger/locale/ru/pw
deleted file mode 100644
index 31c3627..0000000
--- a/sql-ledger/locale/ru/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Password' => 'Has³o',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/rc b/sql-ledger/locale/ru/rc
deleted file mode 100644
index 430fcbb..0000000
--- a/sql-ledger/locale/ru/rc
+++ /dev/null
@@ -1,55 +0,0 @@
-$self{texts} = {
- 'Account' => 'óÞÅÔ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Payment' => 'P³atno¶æ',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Source' => '¯ród³o',
- 'To' => 'do',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ru/rp b/sql-ledger/locale/ru/rp
deleted file mode 100644
index 4218afe..0000000
--- a/sql-ledger/locale/ru/rp
+++ /dev/null
@@ -1,120 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'AP Aging',
- 'AR Aging' => 'AR Aging',
- 'Account' => 'óÞÅÔ',
- 'Account Number' => 'ëÏÄ ÓÞÅÔÁ',
- 'Accounting Menu' => 'Accounting Menu',
- 'Accounts' => 'óÞÅÔÁ',
- 'Address' => 'áÄÒÅÓ',
- 'Amount' => 'óÕÍÍÁ',
- 'Apr' => 'áÐÒ',
- 'April' => 'áÐÒÅÌØ',
- 'Attachment' => '÷ÌÏÖÅÎÉÅ',
- 'Aug' => 'á×Ç',
- 'August' => 'á×ÇÕÓÔ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Compare to' => 'óÒÁ×ÎÉÔØ Ó',
- 'Continue' => 'ðÒÏÄÏÌÖÉÔØ',
- 'Copies' => 'ëÏÐÉÊ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ëÌÉÅÎÔ',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÅÔ',
- 'Dec' => 'äÅË',
- 'December' => 'äÅËÁÂÒØ',
- 'Description' => 'ïÐÉÓÁÎÉÅ',
- 'Due Date' => 'ïÐÌÁÔÉÔØ ÄÏ',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'îÅ ÕËÁÚÁÎ ÁÄÒÅÓ E-mail!',
- 'Feb' => 'Luty',
- 'February' => 'Luty',
- 'From' => 'Od',
- 'GIFI' => 'GIFI',
- 'Heading' => 'òÁÚÄÅÌ',
- 'ID' => 'Identyfikator',
- 'In-line' => 'W³±czony',
- 'Include in Report' => 'Do³±cz w Sprawozdaniu',
- 'Income Statement' => 'Rachunek Zysków i Strat',
- 'Invoice' => 'óÞÅÔ-ÆÁËÔÕÒÁ',
- 'Jan' => 'ñÎ×',
- 'January' => 'ñÎ×ÁÒØ',
- 'Jul' => 'éÀÌ',
- 'July' => 'éÀÌØ',
- 'Jun' => 'éÀÎ',
- 'June' => 'éÀÎØ',
- 'Language' => 'ñÚÙË',
- 'Mar' => 'Marzec',
- 'March' => 'Marzec',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Wiadomo¶æ',
- 'N/A' => 'N/A',
- 'Nov' => 'Listopad',
- 'November' => 'Listopad',
- 'Number' => 'Numer Katalogu',
- 'Oct' => 'Pa¿dziernik',
- 'October' => 'Pa¿dziernik',
- 'Order' => 'Zamówienie',
- 'Payments' => 'Rozliczenia P³atno¶ci',
- 'Report for' => 'Raport dla',
- 'Screen' => 'Ekran',
- 'Sep' => 'óÅÎ',
- 'September' => 'óÅÎÔÑÂÒØ',
- 'Source' => '¯ród³o',
- 'Standard' => 'óÔÁÎÄÁÒÔÎÙÅ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'éÔÏÇÏ ÐÏ ÒÁÚÄÅÌÕ',
- 'Tax' => 'îÁÌÏÇ',
- 'To' => 'do',
- 'Total' => 'Warto¶æ Brutto',
- 'Trial Balance' => 'Bilans Porównawczy',
- 'Vendor' => 'Dostawca',
- 'for Period' => 'za Okres',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏÌÖÉÔØ' => 'continue',
- 'e_mail' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/se/COPYING b/sql-ledger/locale/se/COPYING
deleted file mode 100644
index 8470345..0000000
--- a/sql-ledger/locale/se/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Swedish texts:
-#
-# Author: Jonny Larsson <jonny@lernbo.com>
-# Daniel Andersson <daniel@addelei.nu>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/se/LANGUAGE b/sql-ledger/locale/se/LANGUAGE
deleted file mode 100644
index e375393..0000000
--- a/sql-ledger/locale/se/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Swedish
diff --git a/sql-ledger/locale/se/admin b/sql-ledger/locale/se/admin
deleted file mode 100644
index b2560da..0000000
--- a/sql-ledger/locale/se/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Accesskontroll',
- 'Accounting' => 'Bokföring',
- 'Add User' => 'Ny användare',
- 'Address' => 'Adress',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administratör',
- 'All Datasets up to date!' => 'Alla dataset uppdaterade',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Ändra lösenord för admin',
- 'Change Password' => 'Ändra lösenord',
- 'Character Set' => 'Teckenuppsättning',
- 'Click on login name to edit!' => 'Klicka på användarnamn för att redigera!',
- 'Company' => 'Företag',
- 'Connect to' => 'Anslut till',
- 'Continue' => 'Fortsätt',
- 'Create Chart of Accounts' => 'Skapa kontoplan',
- 'Create Dataset' => 'Skapa dataset',
- 'DBI not installed!' => 'DBI inte installerad',
- 'Database' => 'Databas',
- 'Database Administration' => 'Administration av databas',
- 'Database Driver not checked!' => 'Databasedriver icke kontrollerad',
- 'Database User missing!' => 'Databasanvändare saknas',
- 'Dataset' => 'Dataset',
- 'Dataset missing!' => 'Dataset saknas',
- 'Dataset updated!' => 'Dataset uppdaterat',
- 'Date Format' => 'Datumformat',
- 'Delete' => 'Radera',
- 'Delete Dataset' => 'Radera dataset',
- 'Directory' => 'Katalog',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Dropdown gräns',
- 'E-mail' => 'E-Post',
- 'Edit User' => 'Redigera användare',
- 'Existing Datasets' => 'Existerande Dataset',
- 'Fax' => 'Fax',
- 'Host' => 'Värd',
- 'Hostname missing!' => 'Värdnamn saknas',
- 'Language' => 'Språk',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lämna värd och port fälten tomma om du inte vill göra en fjärranslutning',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Logga in',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logga ut',
- 'Multibyte Encoding' => 'Multibytekodning',
- 'Name' => 'Namn',
- 'New Templates' => 'Ny mall',
- 'No Database Drivers available!' => 'Inga databasdrivers tillgängliga',
- 'No Dataset selected!' => 'Inget Dataset valt',
- 'Nothing to delete!' => 'Inget att radera',
- 'Number Format' => 'Nummerformat',
- 'Oracle Database Administration' => 'Oracle Databasadministration',
- 'Password' => 'Lösenord',
- 'Password changed!' => 'Lösenord ändrat',
- 'Pg Database Administration' => 'Administration av databas PG',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Port' => 'Port',
- 'Port missing!' => 'Port saknas',
- 'Printer' => 'Skrivare',
- 'Save' => 'Spara',
- 'Setup Templates' => 'Sätt upp mallar',
- 'Signature' => 'Signatur',
- 'Stylesheet' => 'Stilmall',
- 'Templates' => 'Mallar',
- 'The following Datasets are not in use and can be deleted' => 'Följande Dataset är inte i bruk och kan raderas',
- 'The following Datasets need to be updated' => 'Följande Dataset behöver uppdateras',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Det här är en preliminär kontroll av existerande källor. Ingenting kommer att sparas eller raderas vid detta tillfälle',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'För att lägga till en användare till en grupp, editera namnet, ändra login namnet och spara. En ny användare med samma variabler sparas då under det nya namnet.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Uppdatera dataset',
- 'Use Templates' => 'Använd mallar',
- 'User' => 'Användare',
- 'User deleted!' => 'Användare raderad',
- 'User saved!' => 'Användare sparad',
- 'Version' => 'Version',
- 'You must enter a host and port for local and remote connections!' => 'Du måste ange en värd och en port för att göra en fjärrsnslutning',
- 'does not exist' => 'finns inte',
- 'is already a member!' => 'är redan medlem!',
- 'localhost' => 'localhost',
- 'successfully created!' => 'skapades',
- 'successfully deleted!' => 'raderades',
- 'website' => 'website',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'ny_användare' => 'add_user',
- 'Ändra_lösenord_för_admin' => 'change_admin_password',
- 'Ändra_lösenord' => 'change_password',
- 'fortsätt' => 'continue',
- 'skapa_dataset' => 'create_dataset',
- 'radera' => 'delete',
- 'radera_dataset' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'logga_in' => 'login',
- 'logga_ut' => 'logout',
- 'oracle_databasadministration' => 'oracle_database_administration',
- 'administration_av_databas_pg' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'spara' => 'save',
- 'unlock_system' => 'unlock_system',
- 'uppdatera_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/se/all b/sql-ledger/locale/se/all
deleted file mode 100644
index 3fb5181..0000000
--- a/sql-ledger/locale/se/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Kredit',
- 'AP Aging' => 'Kredit åldersfördeling',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'Kredit verifikat',
- 'AP Transactions' => 'Kredit verifikationer',
- 'AR' => 'Debet',
- 'AR Aging' => 'Debet åldersfördeling',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'Debet verifikat',
- 'AR Transactions' => 'Debet verifikationer',
- 'About' => 'Om',
- 'Above' => '',
- 'Access Control' => 'Accesskontroll',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer saknas',
- 'Account Type' => 'Kontotyp',
- 'Account Type missing!' => 'Kontotyp saknas!',
- 'Account deleted!' => 'Konto raderat!',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Konto sparat!',
- 'Accounting' => 'Bokföring',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Konton',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Aktiv',
- 'Add' => 'Lägg til',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Nytt konto',
- 'Add Assembly' => 'Ny sammansätting',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Ny kund',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Ny GIFI',
- 'Add General Ledger Transaction' => 'Ny post i huvudbok',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Ny vara',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Nytt projekt',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Ny säljfaktura',
- 'Add Sales Order' => 'Ny säljorder',
- 'Add Service' => 'Ny tjänst',
- 'Add Transaction' => 'Ny post',
- 'Add User' => 'Ny användare',
- 'Add Vendor' => 'Ny leverantör',
- 'Add Vendor Invoice' => 'Ny inköpsfaktura',
- 'Add Warehouse' => '',
- 'Address' => 'Adress',
- 'Administration' => 'Administration',
- 'Administrator' => 'Administratör',
- 'After Deduction' => '',
- 'All' => 'Alla',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'Alla dataset uppdaterade',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Belopp',
- 'Amount Due' => 'Belopp förfallet',
- 'Amount missing!' => '',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Är du säker på att du vill radera Faktura Nummer',
- 'Are you sure you want to delete Order Number' => 'Är du säker på att du vill radera Order Nummer',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Är du säker på att du vill radera Transaktionen',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Sammansättningar',
- 'Assemblies restocked!' => 'Sammansättningar åter i lager',
- 'Assembly' => '',
- 'Asset' => 'Tillgång',
- 'Attachment' => 'Bilaga',
- 'Audit Control' => 'Revisionskontroll',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'Säkerhetkopia',
- 'Backup sent to' => 'Säkerhetskopia har sänts till',
- 'Balance' => 'Balans',
- 'Balance Sheet' => 'Status',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Antal i lager',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Bokföringen är öppen för rättning',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Organisationsnummer',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'Inköp',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'Kan inte radera konto',
- 'Cannot delete customer!' => 'Kan inte radera kund',
- 'Cannot delete default account!' => 'Kan inte radera standardkonto',
- 'Cannot delete invoice!' => 'Kan inte radera faktura',
- 'Cannot delete item!' => 'Kan inte radera vara',
- 'Cannot delete order!' => 'Kan inte radera order',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'Kan inte radera händelse',
- 'Cannot delete vendor!' => 'Kan inte radera Leverantör',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'Kan inte lägga till en faktura för en avslutad period',
- 'Cannot post invoice!' => 'Kan inte lägga till faktura',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cannot post transaction for a closed period!' => 'Kan inte bokföra för en stängd period',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Cannot process payment for a closed period!' => 'Kan inte processa betalning för en avslutad period',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'Kan inte spara konto',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'Kan inte spara order',
- 'Cannot save preferences!' => 'Kan inte spara preferenser',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'Kan lagerföra sammansättningar',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopia',
- 'Change' => '',
- 'Change Admin Password' => 'Ändra lösenord för admin',
- 'Change Password' => 'Ändra lösenord',
- 'Character Set' => 'Teckenuppsättning',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Check',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Klicka på användarnamn för att redigera!',
- 'Close Books up to' => 'Avsluta bokföring fram till och med',
- 'Closed' => 'Avslutad',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Företag',
- 'Company Name' => '',
- 'Compare to' => 'Jämför med',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Bekräfta',
- 'Connect to' => 'Anslut till',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Contra' => '',
- 'Copies' => 'Kopior',
- 'Copy to COA' => 'Kopiera till COA',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Skapa kontoplan',
- 'Create Dataset' => 'Skapa dataset',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Current Earnings' => '',
- 'Customer' => 'Kund',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Kund raderad',
- 'Customer missing!' => 'Kund saknas',
- 'Customer not on file!' => 'Kund finns ej',
- 'Customer saved!' => 'Kund sparad',
- 'Customers' => 'Kunder',
- 'DBI not installed!' => 'DBI inte installerad',
- 'DOB' => '',
- 'Database' => 'Databas',
- 'Database Administration' => 'Administration av databas',
- 'Database Driver not checked!' => 'Databasedriver icke kontrollerad',
- 'Database Host' => 'Databasvärd',
- 'Database User missing!' => 'Databasanvändare saknas',
- 'Dataset' => 'Dataset',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Dataset saknas',
- 'Dataset updated!' => 'Dataset uppdaterat',
- 'Date' => 'Datum',
- 'Date Format' => 'Datumformat',
- 'Date Paid' => 'Betalningsdatum',
- 'Date Received' => '',
- 'Date missing!' => 'Datum saknas',
- 'Date received missing!' => '',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalplaceringar',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Radera',
- 'Delete Account' => 'Radera konto',
- 'Delete Dataset' => 'Radera dataset',
- 'Delivery Date' => 'Leveransdatum',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Säkerhet',
- 'Description' => 'Beskrivning',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'Differens',
- 'Directory' => 'Katalog',
- 'Discount' => 'Rabatt',
- 'Done' => 'Klart',
- 'Drawing' => 'Ritning',
- 'Driver' => 'Driver',
- 'Dropdown Limit' => 'Dropdown gräns',
- 'Due Date' => 'Förfallodatum',
- 'Due Date missing!' => 'Förfallodatum saknas',
- 'E-mail' => 'E-Post',
- 'E-mail Statement to' => 'E-Post anmaning till',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'E-mailed' => '',
- 'Edit' => 'Redigera',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Redigera konto',
- 'Edit Assembly' => 'Redigera sammansättning',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => 'Redigera kund',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Redigera GIFI',
- 'Edit General Ledger Transaction' => 'Redigera en post i Huvudboken',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Redigera vara',
- 'Edit Preferences for' => 'Redigera inställningar för',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Redigera projekt',
- 'Edit Purchase Order' => 'Redigera inköpsorder',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Redigera säljfakturor',
- 'Edit Sales Order' => 'Redigera säljorder',
- 'Edit Service' => 'Redigera tjänster',
- 'Edit Template' => 'Redigera mall',
- 'Edit User' => 'Redigera användare',
- 'Edit Vendor' => 'Redigera Leverantör',
- 'Edit Vendor Invoice' => 'Redigera inköpsfakturor',
- 'Edit Warehouse' => '',
- 'Employee' => 'Anställd',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Tvinga rättelser för alla konton',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ange upp till 3 bokstäver (SEK:EUR:USD) för egen och utländsk valuta',
- 'Equity' => 'Eget kapital',
- 'Excempt age <' => '',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Existing Datasets' => 'Existerande Dataset',
- 'Expense' => 'Utgift',
- 'Expense Account' => 'Utgiftskonto',
- 'Expense/Asset' => 'Utgift/Tillgång',
- 'Extended' => 'Utökad',
- 'FX' => '',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'Foreign Exchange Gain' => 'Vinst på valutahandel',
- 'Foreign Exchange Loss' => 'Förlust på valutahandel',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI raderad',
- 'GIFI missing!' => 'GIFI saknas',
- 'GIFI saved!' => 'GIFI sparad',
- 'GL Transaction' => 'GL händelse',
- 'General Ledger' => 'Huvudbok',
- 'Goods & Services' => 'Varor och Tjänster',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML mallar',
- 'Heading' => 'Överskrift',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Värd',
- 'Hostname missing!' => 'Värdnamn saknas',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Bild',
- 'In-line' => 'In-line',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Inkludera i rapport',
- 'Include in drop-down menus' => 'Inkludera i rullgardinsmenyer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Inkludera det här kontot för kund/leverantör för att markera kund/leverantör som momspliktig',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Inkomstberäkning',
- 'Incorrect Dataset version!' => 'Felaktig databasversion',
- 'Incorrect Password!' => 'Felaktigt lösenord',
- 'Increase' => '',
- 'Individual Items' => 'Individuella enheter',
- 'Internal Notes' => '',
- 'Inventory' => 'Lager',
- 'Inventory Account' => 'Lagerkonto',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerkvantitet måste vara noll innan du kan sätta sammansättningen som utgången!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerkvantitet måste vara noll innan du kan sätta varan som utgången!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Invoice deleted!' => 'Faktura raderad',
- 'Invoice posted!' => 'Faktura postad',
- 'Invoice processed!' => '',
- 'Invoices' => 'Fakturor',
- 'Is this a summary account to record' => 'Samlingskonto för',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Vara raderad',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Items' => '',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'LaTeX Templates' => 'LaTeX Mallar',
- 'Labor/Overhead' => '',
- 'Language' => 'Språk',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Senaste nummer och standardkonto',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Lämna värd och port fälten tomma om du inte vill göra en fjärranslutning',
- 'Liability' => 'Skulder',
- 'Licensed to' => 'Licensierad till',
- 'Line Total' => 'Antal rader',
- 'Link' => 'Referens',
- 'Link Accounts' => 'Koppla konton',
- 'List' => '',
- 'List Accounts' => 'Lista konton',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Lista GIFI',
- 'List Languages' => '',
- 'List Price' => 'Inköpspris',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Lista transaktioner',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Logga in',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'Logga ut',
- 'Make' => 'Skapa',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Meddelande',
- 'Method' => '',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modell',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibytekodning',
- 'N/A' => 'N/A',
- 'Name' => 'Namn',
- 'Name missing!' => 'Namn saknas',
- 'New Templates' => 'Ny mall',
- 'No' => 'Rad',
- 'No Database Drivers available!' => 'Inga databasdrivers tillgängliga',
- 'No Dataset selected!' => 'Inget Dataset valt',
- 'No email address for' => 'Ingen E-Postadress för',
- 'No.' => 'Rad',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Anmärkningar',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Ingenting valt',
- 'Nothing to delete!' => 'Inget att radera',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummerformat',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'O' => 'O',
- 'Obsolete' => 'Utgången',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'I lager',
- 'Open' => 'Öppen',
- 'Oracle Database Administration' => 'Oracle Databasadministration',
- 'Order' => 'Order',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Entry' => 'Orderingång',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'Order deleted!' => 'Order raderad',
- 'Order processed!' => '',
- 'Order saved!' => 'Order sparad',
- 'Orphaned' => 'Fristående',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Ej i balans',
- 'Outstanding' => '',
- 'PDF' => 'PDF',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Packing Lists' => '',
- 'Paid' => 'Betalt',
- 'Part' => 'Vara',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Varor',
- 'Parts Inventory' => 'Artikellista',
- 'Password' => 'Lösenord',
- 'Password changed!' => 'Lösenord ändrat',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Utbetalningar',
- 'Payment' => 'Betalning',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payment posted!' => 'Betalning postad',
- 'Payments' => 'Betalningar',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Administration av databas PG',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port saknas',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Posted!' => '',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Inställningar',
- 'Preferences saved!' => 'Inställningar sparade',
- 'Prepayment' => '',
- 'Price' => 'Pris',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Skriv ut',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Skrivare',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Projekt',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'Projektnummer saknas',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Projekt raderat',
- 'Project not on file!' => 'Projekt finns ej',
- 'Project saved!' => 'Projekt sparat',
- 'Projects' => 'Projekt',
- 'Purchase Order' => 'Inköpsorder',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Qty' => 'Antal',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'Efterbeställning vid',
- 'Rate' => 'Rate',
- 'Rate missing!' => '',
- 'Recd' => 'Mottagen',
- 'Receipt' => 'Kvitto',
- 'Receipt posted!' => '',
- 'Receipts' => 'Kvitton',
- 'Receivables' => 'Inbetalningar',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Bankuppgörelse',
- 'Reconciliation Report' => '',
- 'Record in' => 'Bokför på',
- 'Reference' => 'Referens',
- 'Reference missing!' => 'Referens saknas',
- 'Remaining' => 'Resterar',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Rapport för',
- 'Reports' => 'Rapporter',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Beställt den',
- 'Retained Earnings' => 'Realiserat överskott',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Försäljning',
- 'Sales Invoice' => 'Säljfaktura',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Säljorder',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Säljordrar',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Spara',
- 'Save Pricelist' => '',
- 'Save as new' => 'Spara som ny',
- 'Save to File' => 'Spara till fil',
- 'Screen' => 'Skärm',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Välj alla',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Försäljningspris',
- 'Send by E-Mail' => 'Skicka via E-Post',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Tjänster',
- 'Service Items' => 'Tjänsteartiklar',
- 'Services' => 'Tjänster',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Sätt upp mallar',
- 'Ship' => 'Skicka',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Skicka till',
- 'Ship via' => 'Skicka via',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Kort',
- 'Signature' => 'Signatur',
- 'Source' => 'Källa',
- 'Spoolfile' => '',
- 'Standard' => 'Standard',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Anmärkning',
- 'Statement Balance' => 'Anmärkning status',
- 'Statement sent to' => 'Anmärkning skickad till',
- 'Statements sent to printer!' => 'Anmärkningar skickade till skrivare',
- 'Stock' => '',
- 'Stock Assembly' => 'Lagersammansättning',
- 'Stylesheet' => 'Stilmall',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'System',
- 'System Defaults' => '',
- 'Tax' => 'Moms',
- 'Tax Accounts' => 'Momskonton',
- 'Tax Included' => 'Moms ingår',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Moms total',
- 'Tax paid' => 'Moms betalad',
- 'Taxable' => 'Momspliktigt',
- 'Template saved!' => 'Mall sparad',
- 'Templates' => 'Mallar',
- 'Terms' => 'Netto',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Följande Dataset är inte i bruk och kan raderas',
- 'The following Datasets need to be updated' => 'Följande Dataset behöver uppdateras',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Det här är en preliminär kontroll av existerande källor. Ingenting kommer att sparas eller raderas vid detta tillfälle',
- 'Till' => '',
- 'To' => 'Till',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'För att lägga till en användare till en grupp, editera namnet, ändra login namnet och spara. En ny användare med samma variabler sparas då under det nya namnet.',
- 'Top Level' => 'Toppnivå',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Transaktionsdatum saknas',
- 'Transaction deleted!' => 'Transaktion raderad',
- 'Transaction posted!' => 'Transaktion sparad',
- 'Transaction reversal enforced for all dates' => 'Transaktion påtvingas för alla datum',
- 'Transaction reversal enforced up to' => 'Transaktion påtvingas upp till',
- 'Transactions' => 'Transaktioner',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Provbalans',
- 'Type of Business' => '',
- 'Unit' => 'Enhet',
- 'Unit of measure' => 'Måttenhet',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'Uppdatera',
- 'Update Dataset' => 'Uppdatera dataset',
- 'Updated' => 'Uppdaterad',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Använd mallar',
- 'User' => 'Användare',
- 'User deleted!' => 'Användare raderad',
- 'User saved!' => 'Användare sparad',
- 'Valid until' => '',
- 'Vendor' => 'Leverantör',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Inköpsfaktura',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Leverantör raderad',
- 'Vendor missing!' => 'Leverantör saknas',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'Vendor saved!' => 'Leverantör sparad',
- 'Vendors' => 'Leverantörer',
- 'Version' => 'Version',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Vikt',
- 'Weight Unit' => 'Viktenhet',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Ja',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Du skrev inte in något namn',
- 'You must enter a host and port for local and remote connections!' => 'Du måste ange en värd och en port för att göra en fjärrsnslutning',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'som vid',
- 'days' => 'dagar',
- 'does not exist' => 'finns inte',
- 'done' => '',
- 'ea' => 'st',
- 'for Period' => 'för perioden',
- 'is already a member!' => 'är redan medlem!',
- 'is not a member!' => 'är inte medlem!',
- 'localhost' => 'localhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'skapades',
- 'successfully deleted!' => 'raderades',
- 'website' => 'website',
-};
-
-1;
diff --git a/sql-ledger/locale/se/am b/sql-ledger/locale/se/am
deleted file mode 100644
index 3dab718..0000000
--- a/sql-ledger/locale/se/am
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kredit',
- 'AR' => 'Debet',
- 'About' => 'Om',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Account Number missing!' => 'Kontonummer saknas',
- 'Account Type' => 'Kontotyp',
- 'Account Type missing!' => 'Kontotyp saknas!',
- 'Account deleted!' => 'Konto raderat!',
- 'Account saved!' => 'Konto sparat!',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Account' => 'Nytt konto',
- 'Add GIFI' => 'Ny GIFI',
- 'Address' => 'Adress',
- 'Asset' => 'Tillgång',
- 'Audit Control' => 'Revisionskontroll',
- 'Backup sent to' => 'Säkerhetskopia har sänts till',
- 'Books are open' => 'Bokföringen är öppen för rättning',
- 'Business Number' => 'Organisationsnummer',
- 'COGS' => 'Inköp',
- 'Cannot delete account!' => 'Kan inte radera konto',
- 'Cannot delete default account!' => 'Kan inte radera standardkonto',
- 'Cannot save account!' => 'Kan inte spara konto',
- 'Cannot save preferences!' => 'Kan inte spara preferenser',
- 'Cash' => 'Kontant',
- 'Character Set' => 'Teckenuppsättning',
- 'Chart of Accounts' => 'Kontoplan',
- 'Close Books up to' => 'Avsluta bokföring fram till och med',
- 'Company' => 'Företag',
- 'Continue' => 'Fortsätt',
- 'Copy to COA' => 'Kopiera till COA',
- 'Credit' => 'Kredit',
- 'Database Host' => 'Databasvärd',
- 'Dataset' => 'Dataset',
- 'Date Format' => 'Datumformat',
- 'Debit' => 'Debet',
- 'Delete' => 'Radera',
- 'Delete Account' => 'Radera konto',
- 'Description' => 'Beskrivning',
- 'Discount' => 'Rabatt',
- 'Dropdown Limit' => 'Dropdown gräns',
- 'E-mail' => 'E-Post',
- 'Edit' => 'Redigera',
- 'Edit Account' => 'Redigera konto',
- 'Edit GIFI' => 'Redigera GIFI',
- 'Edit Preferences for' => 'Redigera inställningar för',
- 'Edit Template' => 'Redigera mall',
- 'Enforce transaction reversal for all dates' => 'Tvinga rättelser för alla konton',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ange upp till 3 bokstäver (SEK:EUR:USD) för egen och utländsk valuta',
- 'Equity' => 'Eget kapital',
- 'Expense' => 'Utgift',
- 'Expense Account' => 'Utgiftskonto',
- 'Expense/Asset' => 'Utgift/Tillgång',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Vinst på valutahandel',
- 'Foreign Exchange Loss' => 'Förlust på valutahandel',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI raderad',
- 'GIFI missing!' => 'GIFI saknas',
- 'GIFI saved!' => 'GIFI sparad',
- 'Heading' => 'Överskrift',
- 'Include in drop-down menus' => 'Inkludera i rullgardinsmenyer',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Inkludera det här kontot för kund/leverantör för att markera kund/leverantör som momspliktig',
- 'Inventory' => 'Lager',
- 'Inventory Account' => 'Lagerkonto',
- 'Is this a summary account to record' => 'Samlingskonto för',
- 'Language' => 'Språk',
- 'Last Numbers & Default Accounts' => 'Senaste nummer och standardkonto',
- 'Liability' => 'Skulder',
- 'Licensed to' => 'Licensierad till',
- 'Link' => 'Referens',
- 'Name' => 'Namn',
- 'No' => 'Rad',
- 'No email address for' => 'Ingen E-Postadress för',
- 'Number' => 'Nummer',
- 'Number Format' => 'Nummerformat',
- 'Parts Inventory' => 'Artikellista',
- 'Password' => 'Lösenord',
- 'Payables' => 'Utbetalningar',
- 'Payment' => 'Betalning',
- 'Phone' => 'Telefon',
- 'Preferences saved!' => 'Inställningar sparade',
- 'Printer' => 'Skrivare',
- 'Rate' => 'Rate',
- 'Receivables' => 'Inbetalningar',
- 'Reference' => 'Referens',
- 'Retained Earnings' => 'Realiserat överskott',
- 'Save' => 'Spara',
- 'Save as new' => 'Spara som ny',
- 'Service Items' => 'Tjänsteartiklar',
- 'Signature' => 'Signatur',
- 'Stylesheet' => 'Stilmall',
- 'Tax' => 'Moms',
- 'Tax Accounts' => 'Momskonton',
- 'Template saved!' => 'Mall sparad',
- 'Transaction reversal enforced for all dates' => 'Transaktion påtvingas för alla datum',
- 'Transaction reversal enforced up to' => 'Transaktion påtvingas upp till',
- 'User' => 'Användare',
- 'Version' => 'Version',
- 'Weight Unit' => 'Viktenhet',
- 'Yes' => 'Ja',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'nytt_konto' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'fortsätt' => 'continue',
- 'kopiera_till_coa' => 'copy_to_coa',
- 'radera' => 'delete',
- 'redigera' => 'edit',
- 'redigera_konto' => 'edit_account',
- 'spara' => 'save',
- 'spara_som_ny' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ap b/sql-ledger/locale/se/ap
deleted file mode 100644
index 27d71c4..0000000
--- a/sql-ledger/locale/se/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kredit verifikat',
- 'AP Transactions' => 'Kredit verifikationer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Amount Due' => 'Belopp förfallet',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Är du säker på att du vill radera Transaktionen',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Cannot delete transaction!' => 'Kan inte radera händelse',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cannot post transaction for a closed period!' => 'Kan inte bokföra för en stängd period',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Check' => 'Check',
- 'Closed' => 'Avslutad',
- 'Confirm!' => 'Bekräfta',
- 'Continue' => 'Fortsätt',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betalningsdatum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'Due Date missing!' => 'Förfallodatum saknas',
- 'Employee' => 'Anställd',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludera i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Öppen',
- 'Order' => 'Order',
- 'Order Number' => 'Ordernummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payments' => 'Betalningar',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Project not on file!' => 'Projekt finns ej',
- 'Receipt' => 'Kvitto',
- 'Remaining' => 'Resterar',
- 'Screen' => 'Skärm',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Källa',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax Included' => 'Moms ingår',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transaktion raderad',
- 'Transaction posted!' => 'Transaktion sparad',
- 'Update' => 'Uppdatera',
- 'Vendor' => 'Leverantör',
- 'Vendor missing!' => 'Leverantör saknas',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kredit_verifikat' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'print_and_post' => 'print_and_post',
- 'uppdatera' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ar b/sql-ledger/locale/se/ar
deleted file mode 100644
index 763f44c..0000000
--- a/sql-ledger/locale/se/ar
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'Debet verifikat',
- 'AR Transactions' => 'Debet verifikationer',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Amount Due' => 'Belopp förfallet',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Är du säker på att du vill radera Transaktionen',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Cannot delete transaction!' => 'Kan inte radera händelse',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cannot post transaction for a closed period!' => 'Kan inte bokföra för en stängd period',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Check' => 'Check',
- 'Closed' => 'Avslutad',
- 'Confirm!' => 'Bekräfta',
- 'Continue' => 'Fortsätt',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Customer missing!' => 'Kund saknas',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betalningsdatum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'Due Date missing!' => 'Förfallodatum saknas',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludera i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Öppen',
- 'Order' => 'Order',
- 'Order Number' => 'Ordernummer',
- 'PDF' => 'PDF',
- 'Paid' => 'Betalt',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payments' => 'Betalningar',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Project not on file!' => 'Projekt finns ej',
- 'Receipt' => 'Kvitto',
- 'Remaining' => 'Resterar',
- 'Screen' => 'Skärm',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Ship via' => 'Skicka via',
- 'Source' => 'Källa',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax Included' => 'Moms ingår',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transaktion raderad',
- 'Transaction posted!' => 'Transaktion sparad',
- 'Update' => 'Uppdatera',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debet_verifikat' => 'ar_transaction',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'uppdatera' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/arap b/sql-ledger/locale/se/arap
deleted file mode 100644
index b1b4931..0000000
--- a/sql-ledger/locale/se/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adress',
- 'Continue' => 'Fortsätt',
- 'Customer not on file!' => 'Kund finns ej',
- 'Description' => 'Beskrivning',
- 'Number' => 'Nummer',
- 'Project not on file!' => 'Projekt finns ej',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Vendor not on file!' => 'Leverantör finns ej',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsätt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/se/arapprn b/sql-ledger/locale/se/arapprn
deleted file mode 100644
index 788a563..0000000
--- a/sql-ledger/locale/se/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Amount' => 'Belopp',
- 'Check' => 'Check',
- 'Continue' => 'Fortsätt',
- 'Date' => 'Datum',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'Kvitto',
- 'Screen' => 'Skärm',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Source' => 'Källa',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'fortsätt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/se/bp b/sql-ledger/locale/se/bp
deleted file mode 100644
index ce6aad9..0000000
--- a/sql-ledger/locale/se/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Confirm!' => 'Bekräfta',
- 'Continue' => 'Fortsätt',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Date' => 'Datum',
- 'From' => 'Från',
- 'Invoice' => 'Faktura',
- 'Invoice Number' => 'Fakturanummer',
- 'Order' => 'Order',
- 'Order Number' => 'Ordernummer',
- 'Print' => 'Skriv ut',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Receipts' => 'Kvitton',
- 'Reference' => 'Referens',
- 'Sales Orders' => 'Säljordrar',
- 'Select all' => 'Välj alla',
- 'To' => 'Till',
- 'Vendor' => 'Leverantör',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'fortsätt' => 'continue',
- 'skriv_ut' => 'print',
- 'remove' => 'remove',
- 'välj_alla' => 'select_all',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ca b/sql-ledger/locale/se/ca
deleted file mode 100644
index c241dbb..0000000
--- a/sql-ledger/locale/se/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Balance' => 'Balans',
- 'Chart of Accounts' => 'Kontoplan',
- 'Credit' => 'Kredit',
- 'Current' => 'Nuvarande',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Description' => 'Beskrivning',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'Inkludera i rapport',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'List Transactions' => 'Lista transaktioner',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Reference' => 'Referens',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Till',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'lista_transaktioner' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/se/cp b/sql-ledger/locale/se/cp
deleted file mode 100644
index 45136ef..0000000
--- a/sql-ledger/locale/se/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kredit',
- 'AR' => 'Debet',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adress',
- 'All' => 'Alla',
- 'Amount' => 'Belopp',
- 'Amount Due' => 'Belopp förfallet',
- 'Cannot process payment for a closed period!' => 'Kan inte processa betalning för en avslutad period',
- 'Continue' => 'Fortsätt',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kund',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Date missing!' => 'Datum saknas',
- 'Deposit' => 'Säkerhet',
- 'Description' => 'Beskrivning',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Invoice' => 'Faktura',
- 'Invoices' => 'Fakturor',
- 'Number' => 'Nummer',
- 'PDF' => 'PDF',
- 'Payment' => 'Betalning',
- 'Payment posted!' => 'Betalning postad',
- 'Post' => 'Lägg till',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Project not on file!' => 'Projekt finns ej',
- 'Receipt' => 'Kvitto',
- 'Screen' => 'Skärm',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Source' => 'Källa',
- 'Update' => 'Uppdatera',
- 'Vendor' => 'Leverantör',
- 'Vendor not on file!' => 'Leverantör finns ej',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsätt' => 'continue',
- 'lägg_till' => 'post',
- 'skriv_ut' => 'print',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ct b/sql-ledger/locale/se/ct
deleted file mode 100644
index f3024b5..0000000
--- a/sql-ledger/locale/se/ct
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kredit verifikat',
- 'AP Transactions' => 'Kredit verifikationer',
- 'AR Transaction' => 'Debet verifikat',
- 'AR Transactions' => 'Debet verifikationer',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Customer' => 'Ny kund',
- 'Add Vendor' => 'Ny leverantör',
- 'Address' => 'Adress',
- 'All' => 'Alla',
- 'Amount' => 'Belopp',
- 'Bcc' => 'Bcc',
- 'Cannot delete customer!' => 'Kan inte radera kund',
- 'Cannot delete vendor!' => 'Kan inte radera Leverantör',
- 'Cc' => 'Kopia',
- 'Closed' => 'Avslutad',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer deleted!' => 'Kund raderad',
- 'Customer saved!' => 'Kund sparad',
- 'Customers' => 'Kunder',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Discount' => 'Rabatt',
- 'E-mail' => 'E-Post',
- 'Edit Customer' => 'Redigera kund',
- 'Edit Vendor' => 'Redigera Leverantör',
- 'Employee' => 'Anställd',
- 'Fax' => 'Fax',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludera i rapport',
- 'Invoice' => 'Faktura',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Language' => 'Språk',
- 'Name' => 'Namn',
- 'Name missing!' => 'Namn saknas',
- 'Notes' => 'Anmärkningar',
- 'Number' => 'Nummer',
- 'Open' => 'Öppen',
- 'Order' => 'Order',
- 'Orphaned' => 'Fristående',
- 'Phone' => 'Telefon',
- 'Purchase Order' => 'Inköpsorder',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Qty' => 'Antal',
- 'Sales Invoice' => 'Säljfaktura',
- 'Sales Order' => 'Säljorder',
- 'Sales Orders' => 'Säljordrar',
- 'Save' => 'Spara',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Sell Price' => 'Försäljningspris',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax Included' => 'Moms ingår',
- 'Taxable' => 'Momspliktigt',
- 'Terms' => 'Netto',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
- 'Vendor Invoice' => 'Inköpsfaktura',
- 'Vendor deleted!' => 'Leverantör raderad',
- 'Vendor saved!' => 'Leverantör sparad',
- 'Vendors' => 'Leverantörer',
- 'days' => 'dagar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'kredit_verifikat' => 'ap_transaction',
- 'debet_verifikat' => 'ar_transaction',
- 'ny_kund' => 'add_customer',
- 'ny_leverantör' => 'add_vendor',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'pricelist' => 'pricelist',
- 'inköpsorder' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'säljfaktura' => 'sales_invoice',
- 'säljorder' => 'sales_order',
- 'spara' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'uppdatera' => 'update',
- 'inköpsfaktura' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/se/gl b/sql-ledger/locale/se/gl
deleted file mode 100644
index ad80434..0000000
--- a/sql-ledger/locale/se/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Kredit verifikat',
- 'AR Transaction' => 'Debet verifikat',
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add General Ledger Transaction' => 'Ny post i huvudbok',
- 'Address' => 'Adress',
- 'All' => 'Alla',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Transaction' => 'Är du säker på att du vill radera Transaktionen',
- 'Asset' => 'Tillgång',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Balance' => 'Balans',
- 'Cannot delete transaction!' => 'Kan inte radera händelse',
- 'Cannot post transaction for a closed period!' => 'Kan inte bokföra för en stängd period',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Confirm!' => 'Bekräfta',
- 'Continue' => 'Fortsätt',
- 'Credit' => 'Kredit',
- 'Current' => 'Nuvarande',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'Edit General Ledger Transaction' => 'Redigera en post i Huvudboken',
- 'Equity' => 'Eget kapital',
- 'Expense' => 'Utgift',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'GL händelse',
- 'General Ledger' => 'Huvudbok',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludera i rapport',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Liability' => 'Skulder',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Reference' => 'Referens',
- 'Reference missing!' => 'Referens saknas',
- 'Reports' => 'Rapporter',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Källa',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Till',
- 'Transaction Date missing!' => 'Transaktionsdatum saknas',
- 'Transaction deleted!' => 'Transaktion raderad',
- 'Transaction posted!' => 'Transaktion sparad',
- 'Update' => 'Uppdatera',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'Yes' => 'Ja',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'kredit_verifikat' => 'ap_transaction',
- 'debet_verifikat' => 'ar_transaction',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'gl_händelse' => 'gl_transaction',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'uppdatera' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/hr b/sql-ledger/locale/se/hr
deleted file mode 100644
index 0d821bf..0000000
--- a/sql-ledger/locale/se/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kredit',
- 'Accounting Menu' => 'Konto-meny',
- 'Address' => 'Adress',
- 'Administrator' => 'Administratör',
- 'All' => 'Alla',
- 'Amount' => 'Belopp',
- 'Continue' => 'Fortsätt',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'E-mail' => 'E-Post',
- 'Employee' => 'Anställd',
- 'Expense' => 'Utgift',
- 'ID' => 'ID',
- 'Include in Report' => 'Inkludera i rapport',
- 'Login' => 'Logga in',
- 'Name' => 'Namn',
- 'Name missing!' => 'Namn saknas',
- 'Notes' => 'Anmärkningar',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Fristående',
- 'Rate' => 'Rate',
- 'Sales' => 'Försäljning',
- 'Save' => 'Spara',
- 'Save as new' => 'Spara som ny',
- 'Update' => 'Uppdatera',
- 'User' => 'Användare',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'spara' => 'save',
- 'spara_som_ny' => 'save_as_new',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ic b/sql-ledger/locale/se/ic
deleted file mode 100644
index 18d2330..0000000
--- a/sql-ledger/locale/se/ic
+++ /dev/null
@@ -1,221 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-meny',
- 'Active' => 'Aktiv',
- 'Add' => 'Lägg til',
- 'Add Assembly' => 'Ny sammansätting',
- 'Add Part' => 'Ny vara',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Order' => 'Ny säljorder',
- 'Add Service' => 'Ny tjänst',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Assemblies' => 'Sammansättningar',
- 'Assemblies restocked!' => 'Sammansättningar åter i lager',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'BOM' => 'BOM',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'COGS' => 'Inköp',
- 'Cannot delete item!' => 'Kan inte radera vara',
- 'Cannot stock assemblies!' => 'Kan lagerföra sammansättningar',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopia',
- 'Closed' => 'Avslutad',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kund',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Drawing' => 'Ritning',
- 'E-mail' => 'E-Post',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Edit Assembly' => 'Redigera sammansättning',
- 'Edit Part' => 'Redigera vara',
- 'Edit Service' => 'Redigera tjänster',
- 'Employee' => 'Anställd',
- 'Expense' => 'Utgift',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'Image' => 'Bild',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Inkludera i rapport',
- 'Individual Items' => 'Individuella enheter',
- 'Inventory' => 'Lager',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Lagerkvantitet måste vara noll innan du kan sätta sammansättningen som utgången!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Lagerkvantitet måste vara noll innan du kan sätta varan som utgången!',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Item deleted!' => 'Vara raderad',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Line Total' => 'Antal rader',
- 'Link Accounts' => 'Koppla konton',
- 'List Price' => 'Inköpspris',
- 'Make' => 'Skapa',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'Microfiche' => 'Microfiche',
- 'Model' => 'Modell',
- 'Name' => 'Namn',
- 'No.' => 'Rad',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'Obsolete' => 'Utgången',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'On Hand' => 'I lager',
- 'Open' => 'Öppen',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'Orphaned' => 'Fristående',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Part' => 'Vara',
- 'Parts' => 'Varor',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Inköpsorder',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Qty' => 'Antal',
- 'ROP' => 'Efterbeställning vid',
- 'Recd' => 'Mottagen',
- 'Required by' => 'Beställt den',
- 'Sales Invoice' => 'Säljfaktura',
- 'Sales Order' => 'Säljorder',
- 'Sales Orders' => 'Säljordrar',
- 'Save' => 'Spara',
- 'Save as new' => 'Spara som ny',
- 'Screen' => 'Skärm',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Sell Price' => 'Försäljningspris',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Services' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Short' => 'Kort',
- 'Stock Assembly' => 'Lagersammansättning',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'To' => 'Till',
- 'Top Level' => 'Toppnivå',
- 'Unit' => 'Enhet',
- 'Unit of measure' => 'Måttenhet',
- 'Update' => 'Uppdatera',
- 'Updated' => 'Uppdaterad',
- 'Vendor' => 'Leverantör',
- 'Vendor Invoice' => 'Inköpsfaktura',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'Weight' => 'Vikt',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'days' => 'dagar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'ny_sammansätting' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'ny_vara' => 'add_part',
- 'ny_tjänst' => 'add_service',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'redigera_sammansättning' => 'edit_assembly',
- 'redigera_vara' => 'edit_part',
- 'redigera_tjänster' => 'edit_service',
- 'spara' => 'save',
- 'spara_som_ny' => 'save_as_new',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/io b/sql-ledger/locale/se/io
deleted file mode 100644
index 65432de..0000000
--- a/sql-ledger/locale/se/io
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Order' => 'Ny säljorder',
- 'Address' => 'Adress',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'Cc' => 'Kopia',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'E-mail' => 'E-Post',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'In-line' => 'In-line',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'No.' => 'Rad',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Part' => 'Vara',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Project' => 'Projekt',
- 'Purchase Order' => 'Inköpsorder',
- 'Qty' => 'Antal',
- 'Recd' => 'Mottagen',
- 'Required by' => 'Beställt den',
- 'Sales Order' => 'Säljorder',
- 'Screen' => 'Skärm',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Till',
- 'Unit' => 'Enhet',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'fortsätt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ir b/sql-ledger/locale/se/ir
deleted file mode 100644
index 9e158a4..0000000
--- a/sql-ledger/locale/se/ir
+++ /dev/null
@@ -1,184 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Order' => 'Ny säljorder',
- 'Add Vendor Invoice' => 'Ny inköpsfaktura',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Är du säker på att du vill radera Faktura Nummer',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'Cannot delete invoice!' => 'Kan inte radera faktura',
- 'Cannot post invoice for a closed period!' => 'Kan inte lägga till en faktura för en avslutad period',
- 'Cannot post invoice!' => 'Kan inte lägga till faktura',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cc' => 'Kopia',
- 'Confirm!' => 'Bekräfta',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Credit Limit' => 'Kreditgräns',
- 'Currency' => 'Valuta',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'E-mail' => 'E-Post',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Edit Vendor Invoice' => 'Redigera inköpsfakturor',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'In-line' => 'In-line',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Invoice deleted!' => 'Faktura raderad',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Språk',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'No.' => 'Rad',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payments' => 'Betalningar',
- 'Phone' => 'Telefon',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Purchase Order' => 'Inköpsorder',
- 'Qty' => 'Antal',
- 'Recd' => 'Mottagen',
- 'Record in' => 'Bokför på',
- 'Remaining' => 'Resterar',
- 'Required by' => 'Beställt den',
- 'Sales Order' => 'Säljorder',
- 'Screen' => 'Skärm',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Source' => 'Källa',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Moms ingår',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
- 'Vendor' => 'Leverantör',
- 'Vendor missing!' => 'Leverantör saknas',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'Yes' => 'Ja',
- 'ea' => 'st',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'inköpsorder' => 'purchase_order',
- 'uppdatera' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/is b/sql-ledger/locale/se/is
deleted file mode 100644
index d4bdd90..0000000
--- a/sql-ledger/locale/se/is
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Invoice' => 'Ny säljfaktura',
- 'Add Sales Order' => 'Ny säljorder',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Är du säker på att du vill radera Faktura Nummer',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'Cannot delete invoice!' => 'Kan inte radera faktura',
- 'Cannot post invoice for a closed period!' => 'Kan inte lägga till en faktura för en avslutad period',
- 'Cannot post invoice!' => 'Kan inte lägga till faktura',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cc' => 'Kopia',
- 'Confirm!' => 'Bekräfta',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Credit Limit' => 'Kreditgräns',
- 'Currency' => 'Valuta',
- 'Customer' => 'Kund',
- 'Customer missing!' => 'Kund saknas',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'E-mail' => 'E-Post',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Edit Sales Invoice' => 'Redigera säljfakturor',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'In-line' => 'In-line',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Invoice deleted!' => 'Faktura raderad',
- 'Invoice posted!' => 'Faktura postad',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'No.' => 'Rad',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payments' => 'Betalningar',
- 'Phone' => 'Telefon',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Purchase Order' => 'Inköpsorder',
- 'Qty' => 'Antal',
- 'Recd' => 'Mottagen',
- 'Record in' => 'Bokför på',
- 'Remaining' => 'Resterar',
- 'Required by' => 'Beställt den',
- 'Sales Order' => 'Säljorder',
- 'Screen' => 'Skärm',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Ship via' => 'Skicka via',
- 'Source' => 'Källa',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Moms ingår',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'Yes' => 'Ja',
- 'ea' => 'st',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'e_post' => 'e_mail',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'print_and_post' => 'print_and_post',
- 'säljorder' => 'sales_order',
- 'skicka_till' => 'ship_to',
- 'uppdatera' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/login b/sql-ledger/locale/se/login
deleted file mode 100644
index c1ee27e..0000000
--- a/sql-ledger/locale/se/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'Företag',
- 'Continue' => 'Fortsätt',
- 'Incorrect Dataset version!' => 'Felaktig databasversion',
- 'Incorrect Password!' => 'Felaktigt lösenord',
- 'Login' => 'Logga in',
- 'Name' => 'Namn',
- 'Password' => 'Lösenord',
- 'Version' => 'Version',
- 'You did not enter a name!' => 'Du skrev inte in något namn',
- 'is not a member!' => 'är inte medlem!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'logga_in' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/se/menu b/sql-ledger/locale/se/menu
deleted file mode 100644
index 016a365..0000000
--- a/sql-ledger/locale/se/menu
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'AP' => 'Kredit',
- 'AP Aging' => 'Kredit åldersfördeling',
- 'AP Transaction' => 'Kredit verifikat',
- 'AR' => 'Debet',
- 'AR Aging' => 'Debet åldersfördeling',
- 'AR Transaction' => 'Debet verifikat',
- 'Accounting Menu' => 'Konto-meny',
- 'Add Account' => 'Nytt konto',
- 'Add Assembly' => 'Ny sammansätting',
- 'Add Customer' => 'Ny kund',
- 'Add GIFI' => 'Ny GIFI',
- 'Add Part' => 'Ny vara',
- 'Add Project' => 'Nytt projekt',
- 'Add Service' => 'Ny tjänst',
- 'Add Transaction' => 'Ny post',
- 'Add Vendor' => 'Ny leverantör',
- 'Assemblies' => 'Sammansättningar',
- 'Audit Control' => 'Revisionskontroll',
- 'Backup' => 'Säkerhetkopia',
- 'Balance Sheet' => 'Status',
- 'Cash' => 'Kontant',
- 'Chart of Accounts' => 'Kontoplan',
- 'Check' => 'Check',
- 'Customers' => 'Kunder',
- 'Description' => 'Beskrivning',
- 'General Ledger' => 'Huvudbok',
- 'Goods & Services' => 'Varor och Tjänster',
- 'HTML Templates' => 'HTML mallar',
- 'Income Statement' => 'Inkomstberäkning',
- 'Invoice' => 'Faktura',
- 'LaTeX Templates' => 'LaTeX Mallar',
- 'Language' => 'Språk',
- 'List Accounts' => 'Lista konton',
- 'List GIFI' => 'Lista GIFI',
- 'Logout' => 'Logga ut',
- 'Open' => 'Öppen',
- 'Order Entry' => 'Orderingång',
- 'Packing List' => 'Packsedel',
- 'Parts' => 'Varor',
- 'Payment' => 'Betalning',
- 'Payments' => 'Betalningar',
- 'Preferences' => 'Inställningar',
- 'Print' => 'Skriv ut',
- 'Projects' => 'Projekt',
- 'Purchase Order' => 'Inköpsorder',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Receipt' => 'Kvitto',
- 'Receipts' => 'Kvitton',
- 'Reconciliation' => 'Bankuppgörelse',
- 'Reports' => 'Rapporter',
- 'Sales Invoice' => 'Säljfaktura',
- 'Sales Order' => 'Säljorder',
- 'Sales Orders' => 'Säljordrar',
- 'Save to File' => 'Spara till fil',
- 'Send by E-Mail' => 'Skicka via E-Post',
- 'Services' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Statement' => 'Anmärkning',
- 'Stock Assembly' => 'Lagersammansättning',
- 'Stylesheet' => 'Stilmall',
- 'System' => 'System',
- 'Tax collected' => 'Moms total',
- 'Tax paid' => 'Moms betalad',
- 'Transactions' => 'Transaktioner',
- 'Trial Balance' => 'Provbalans',
- 'Vendor Invoice' => 'Inköpsfaktura',
- 'Vendors' => 'Leverantörer',
- 'Version' => 'Version',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/se/oe b/sql-ledger/locale/se/oe
deleted file mode 100644
index 415accf..0000000
--- a/sql-ledger/locale/se/oe
+++ /dev/null
@@ -1,232 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-meny',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Invoice' => 'Ny säljfaktura',
- 'Add Sales Order' => 'Ny säljorder',
- 'Add Vendor Invoice' => 'Ny inköpsfaktura',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Order Number' => 'Är du säker på att du vill radera Order Nummer',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'C' => 'C',
- 'Cannot delete order!' => 'Kan inte radera order',
- 'Cannot save order!' => 'Kan inte spara order',
- 'Cc' => 'Kopia',
- 'Closed' => 'Avslutad',
- 'Confirm!' => 'Bekräfta',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Customer missing!' => 'Kund saknas',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Done' => 'Klart',
- 'E-mail' => 'E-Post',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Edit Purchase Order' => 'Redigera inköpsorder',
- 'Edit Sales Order' => 'Redigera säljorder',
- 'Employee' => 'Anställd',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Inkludera i rapport',
- 'Invoice' => 'Faktura',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'No.' => 'Rad',
- 'Notes' => 'Anmärkningar',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'O' => 'O',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Öppen',
- 'Order' => 'Order',
- 'Order Date' => 'Orderdatum',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'Order deleted!' => 'Order raderad',
- 'Order saved!' => 'Order sparad',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Part' => 'Vara',
- 'Phone' => 'Telefon',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Purchase Order' => 'Inköpsorder',
- 'Purchase Orders' => 'Inköpsordrar',
- 'Qty' => 'Antal',
- 'Recd' => 'Mottagen',
- 'Remaining' => 'Resterar',
- 'Required by' => 'Beställt den',
- 'Sales Invoice' => 'Säljfaktura',
- 'Sales Order' => 'Säljorder',
- 'Sales Orders' => 'Säljordrar',
- 'Save' => 'Spara',
- 'Save as new' => 'Spara som ny',
- 'Screen' => 'Skärm',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Ship via' => 'Skicka via',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax Included' => 'Moms ingår',
- 'Terms' => 'Netto',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
- 'Vendor' => 'Leverantör',
- 'Vendor Invoice' => 'Inköpsfaktura',
- 'Vendor missing!' => 'Leverantör saknas',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'Yes' => 'Ja',
- 'days' => 'dagar',
- 'ea' => 'st',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'klart' => 'done',
- 'e_post' => 'e_mail',
- 'skriv_ut' => 'print',
- 'print_and_save' => 'print_and_save',
- 'inköpsorder' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'säljfaktura' => 'sales_invoice',
- 'säljorder' => 'sales_order',
- 'spara' => 'save',
- 'spara_som_ny' => 'save_as_new',
- 'skicka_till' => 'ship_to',
- 'transfer' => 'transfer',
- 'uppdatera' => 'update',
- 'inköpsfaktura' => 'vendor_invoice',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/pe b/sql-ledger/locale/se/pe
deleted file mode 100644
index 6de2a0c..0000000
--- a/sql-ledger/locale/se/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Konto-meny',
- 'Add Project' => 'Nytt projekt',
- 'All' => 'Alla',
- 'Continue' => 'Fortsätt',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'Edit Project' => 'Redigera projekt',
- 'Language' => 'Språk',
- 'Number' => 'Nummer',
- 'Orphaned' => 'Fristående',
- 'Project' => 'Projekt',
- 'Project Number missing!' => 'Projektnummer saknas',
- 'Project deleted!' => 'Projekt raderat',
- 'Project saved!' => 'Projekt sparat',
- 'Projects' => 'Projekt',
- 'Save' => 'Spara',
- 'Update' => 'Uppdatera',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'nytt_projekt' => 'add_project',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'spara' => 'save',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/pos b/sql-ledger/locale/se/pos
deleted file mode 100644
index b05f0ea..0000000
--- a/sql-ledger/locale/se/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Continue' => 'Fortsätt',
- 'Credit Limit' => 'Kreditgräns',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Customer missing!' => 'Kund saknas',
- 'Delete' => 'Radera',
- 'Description' => 'Beskrivning',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Extended' => 'Utökad',
- 'From' => 'Från',
- 'Language' => 'Språk',
- 'Number' => 'Nummer',
- 'Open' => 'Öppen',
- 'Paid' => 'Betalt',
- 'Post' => 'Lägg till',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Qty' => 'Antal',
- 'Receipts' => 'Kvitton',
- 'Record in' => 'Bokför på',
- 'Remaining' => 'Resterar',
- 'Screen' => 'Skärm',
- 'Source' => 'Källa',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'lägg_till' => 'post',
- 'skriv_ut' => 'print',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/ps b/sql-ledger/locale/se/ps
deleted file mode 100644
index 2619ecd..0000000
--- a/sql-ledger/locale/se/ps
+++ /dev/null
@@ -1,277 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Kredit åldersfördeling',
- 'AR Aging' => 'Debet åldersfördeling',
- 'AR Transaction' => 'Debet verifikat',
- 'AR Transactions' => 'Debet verifikationer',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Konton',
- 'Add Purchase Order' => 'Ny inköpsorder',
- 'Add Sales Invoice' => 'Ny säljfaktura',
- 'Add Sales Order' => 'Ny säljorder',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Amount Due' => 'Belopp förfallet',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Are you sure you want to delete Invoice Number' => 'Är du säker på att du vill radera Faktura Nummer',
- 'Are you sure you want to delete Transaction' => 'Är du säker på att du vill radera Transaktionen',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Balance' => 'Balans',
- 'Balance Sheet' => 'Status',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Antal i lager',
- 'Cannot delete invoice!' => 'Kan inte radera faktura',
- 'Cannot delete transaction!' => 'Kan inte radera händelse',
- 'Cannot post invoice for a closed period!' => 'Kan inte lägga till en faktura för en avslutad period',
- 'Cannot post invoice!' => 'Kan inte lägga till faktura',
- 'Cannot post payment for a closed period!' => 'Kan inte lägga till en betalning för en stängd period',
- 'Cannot post transaction for a closed period!' => 'Kan inte bokföra för en stängd period',
- 'Cannot post transaction!' => 'Kan inte lägga till händelsen',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopia',
- 'Check' => 'Check',
- 'Closed' => 'Avslutad',
- 'Compare to' => 'Jämför med',
- 'Confirm!' => 'Bekräfta',
- 'Contact' => 'Kontakt',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Credit' => 'Kredit',
- 'Credit Limit' => 'Kreditgräns',
- 'Curr' => 'Val',
- 'Currency' => 'Valuta',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Customer missing!' => 'Kund saknas',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Date Paid' => 'Betalningsdatum',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalplaceringar',
- 'Delete' => 'Radera',
- 'Delivery Date' => 'Leveransdatum',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'Due Date missing!' => 'Förfallodatum saknas',
- 'E-mail' => 'E-Post',
- 'E-mail Statement to' => 'E-Post anmaning till',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Edit Sales Invoice' => 'Redigera säljfakturor',
- 'Exch' => 'Vxl',
- 'Exchange Rate' => 'Växlingskurs',
- 'Exchange rate for payment missing!' => 'Växlingskurs för saknad betalning',
- 'Exchange rate missing!' => 'Växelkurs saknas',
- 'Extended' => 'Utökad',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Överskrift',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Inkludera i rapport',
- 'Income Statement' => 'Inkomstberäkning',
- 'Invoice' => 'Faktura',
- 'Invoice Date' => 'Fakturadatum',
- 'Invoice Date missing!' => 'Fakturadatum saknas',
- 'Invoice Number' => 'Fakturanummer',
- 'Invoice Number missing!' => 'Fakturanummer saknas',
- 'Invoice deleted!' => 'Faktura raderad',
- 'Invoice posted!' => 'Faktura postad',
- 'Item not on file!' => 'Varan finns inte i databasen',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Språk',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'N/A' => 'N/A',
- 'No.' => 'Rad',
- 'Notes' => 'Anmärkningar',
- 'Nothing selected!' => 'Ingenting valt',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Number missing in Row' => 'Nummer saknas i rad',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Open' => 'Öppen',
- 'Order' => 'Order',
- 'Order Date missing!' => 'Orderdatum saknas',
- 'Order Number' => 'Ordernummer',
- 'Order Number missing!' => 'Ordernummer saknas',
- 'PDF' => 'PDF',
- 'Packing List' => 'Packsedel',
- 'Packing List Date missing!' => 'Packsedelsdatum saknas',
- 'Packing List Number missing!' => 'Packsedelsnummer saknas',
- 'Paid' => 'Betalt',
- 'Part' => 'Vara',
- 'Payment date missing!' => 'Betalningsdatum saknas',
- 'Payments' => 'Betalningar',
- 'Phone' => 'Telefon',
- 'Post' => 'Lägg till',
- 'Post as new' => 'Lägg till som ny',
- 'Postscript' => 'Postscript',
- 'Price' => 'Pris',
- 'Print' => 'Skriv ut',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Purchase Order' => 'Inköpsorder',
- 'Qty' => 'Antal',
- 'Recd' => 'Mottagen',
- 'Receipt' => 'Kvitto',
- 'Receipts' => 'Kvitton',
- 'Record in' => 'Bokför på',
- 'Remaining' => 'Resterar',
- 'Report for' => 'Rapport för',
- 'Required by' => 'Beställt den',
- 'Sales Order' => 'Säljorder',
- 'Screen' => 'Skärm',
- 'Select all' => 'Välj alla',
- 'Select from one of the items below' => 'Välj en artikel nedan',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Service' => 'Tjänster',
- 'Ship' => 'Skicka',
- 'Ship to' => 'Skicka till',
- 'Ship via' => 'Skicka via',
- 'Source' => 'Källa',
- 'Standard' => 'Standard',
- 'Statement' => 'Anmärkning',
- 'Statement sent to' => 'Anmärkning skickad till',
- 'Statements sent to printer!' => 'Anmärkningar skickade till skrivare',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax Included' => 'Moms ingår',
- 'Tax collected' => 'Moms total',
- 'Tax paid' => 'Moms betalad',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transaktion raderad',
- 'Transaction posted!' => 'Transaktion sparad',
- 'Trial Balance' => 'Provbalans',
- 'Unit' => 'Enhet',
- 'Update' => 'Uppdatera',
- 'Vendor' => 'Leverantör',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'What type of item is this?' => 'Vilken typ av artikel är detta?',
- 'Yes' => 'Ja',
- 'as at' => 'som vid',
- 'ea' => 'st',
- 'for Period' => 'för perioden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'debet_verifikat' => 'ar_transaction',
- 'fortsätt' => 'continue',
- 'radera' => 'delete',
- 'e_post' => 'e_mail',
- 'lägg_till' => 'post',
- 'lägg_till_som_ny' => 'post_as_new',
- 'skriv_ut' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'säljorder' => 'sales_order',
- 'välj_alla' => 'select_all',
- 'skicka_till' => 'ship_to',
- 'uppdatera' => 'update',
- 'ja' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/se/pw b/sql-ledger/locale/se/pw
deleted file mode 100644
index 5e2aadc..0000000
--- a/sql-ledger/locale/se/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Fortsätt',
- 'Password' => 'Lösenord',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'fortsätt' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/se/rc b/sql-ledger/locale/se/rc
deleted file mode 100644
index c558f6b..0000000
--- a/sql-ledger/locale/se/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'Konto',
- 'Accounting Menu' => 'Konto-meny',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Balance' => 'Balans',
- 'Continue' => 'Fortsätt',
- 'Current' => 'Nuvarande',
- 'Date' => 'Datum',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Deposit' => 'Säkerhet',
- 'Description' => 'Beskrivning',
- 'Difference' => 'Differens',
- 'Done' => 'Klart',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Out of balance!' => 'Ej i balans',
- 'Payment' => 'Betalning',
- 'Reconciliation' => 'Bankuppgörelse',
- 'Select all' => 'Välj alla',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Källa',
- 'Statement Balance' => 'Anmärkning status',
- 'To' => 'Till',
- 'Update' => 'Uppdatera',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'fortsätt' => 'continue',
- 'klart' => 'done',
- 'välj_alla' => 'select_all',
- 'uppdatera' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/se/rp b/sql-ledger/locale/se/rp
deleted file mode 100644
index 3577ec2..0000000
--- a/sql-ledger/locale/se/rp
+++ /dev/null
@@ -1,146 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Kredit åldersfördeling',
- 'AR Aging' => 'Debet åldersfördeling',
- 'Account' => 'Konto',
- 'Account Number' => 'Kontonummer',
- 'Accounting Menu' => 'Konto-meny',
- 'Accounts' => 'Konton',
- 'Address' => 'Adress',
- 'Amount' => 'Belopp',
- 'Apr' => 'apr',
- 'April' => 'april',
- 'Attachment' => 'Bilaga',
- 'Aug' => 'aug',
- 'August' => 'augusti',
- 'Balance' => 'Balans',
- 'Balance Sheet' => 'Status',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Kontant',
- 'Cc' => 'Kopia',
- 'Compare to' => 'Jämför med',
- 'Continue' => 'Fortsätt',
- 'Copies' => 'Kopior',
- 'Credit' => 'Kredit',
- 'Curr' => 'Val',
- 'Current' => 'Nuvarande',
- 'Customer' => 'Kund',
- 'Customer not on file!' => 'Kund finns ej',
- 'Date' => 'Datum',
- 'Debit' => 'Debet',
- 'Dec' => 'dec',
- 'December' => 'december',
- 'Decimalplaces' => 'Decimalplaceringar',
- 'Description' => 'Beskrivning',
- 'Due Date' => 'Förfallodatum',
- 'E-mail' => 'E-Post',
- 'E-mail Statement to' => 'E-Post anmaning till',
- 'E-mail address missing!' => 'E-Postadress saknas',
- 'Feb' => 'Feb',
- 'February' => 'Februari',
- 'From' => 'Från',
- 'GIFI' => 'GIFI',
- 'Heading' => 'Överskrift',
- 'ID' => 'ID',
- 'In-line' => 'In-line',
- 'Include in Report' => 'Inkludera i rapport',
- 'Income Statement' => 'Inkomstberäkning',
- 'Invoice' => 'Faktura',
- 'Jan' => 'Jan',
- 'January' => 'Januari',
- 'Jul' => 'Jul',
- 'July' => 'Juli',
- 'Jun' => 'Jun',
- 'June' => 'Juni',
- 'Language' => 'Språk',
- 'Mar' => 'Mar',
- 'March' => 'Mars',
- 'May' => 'Maj',
- 'May ' => 'Maj',
- 'Message' => 'Meddelande',
- 'N/A' => 'N/A',
- 'Nothing selected!' => 'Ingenting valt',
- 'Nov' => 'Nov',
- 'November' => 'November',
- 'Number' => 'Nummer',
- 'Oct' => 'Okt',
- 'October' => 'Oktober',
- 'Order' => 'Order',
- 'PDF' => 'PDF',
- 'Payments' => 'Betalningar',
- 'Postscript' => 'Postscript',
- 'Print' => 'Skriv ut',
- 'Project' => 'Projekt',
- 'Project not on file!' => 'Projekt finns ej',
- 'Receipts' => 'Kvitton',
- 'Report for' => 'Rapport för',
- 'Screen' => 'Skärm',
- 'Select all' => 'Välj alla',
- 'Select from one of the names below' => 'Välj ett av namnen nedan',
- 'Select from one of the projects below' => 'Välj ett av projekten nedan',
- 'Select postscript or PDF!' => 'Välj Postscript eller PDF',
- 'Sep' => 'Sep',
- 'September' => 'September',
- 'Source' => 'Källa',
- 'Standard' => 'Standard',
- 'Statement' => 'Anmärkning',
- 'Statement sent to' => 'Anmärkning skickad till',
- 'Statements sent to printer!' => 'Anmärkningar skickade till skrivare',
- 'Subject' => 'Ämne',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Moms',
- 'Tax collected' => 'Moms total',
- 'Tax paid' => 'Moms betalad',
- 'To' => 'Till',
- 'Total' => 'Total',
- 'Trial Balance' => 'Provbalans',
- 'Vendor' => 'Leverantör',
- 'Vendor not on file!' => 'Leverantör finns ej',
- 'as at' => 'som vid',
- 'for Period' => 'för perioden',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'fortsätt' => 'continue',
- 'e_post' => 'e_mail',
- 'skriv_ut' => 'print',
- 'välj_alla' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/COPYING b/sql-ledger/locale/sv/COPYING
deleted file mode 100644
index 5f63a3e..0000000
--- a/sql-ledger/locale/sv/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Spanish texts:
-#
-# Author: Carlos López Linares <chlopezl@yahoo.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/sv/LANGUAGE b/sql-ledger/locale/sv/LANGUAGE
deleted file mode 100644
index be12be4..0000000
--- a/sql-ledger/locale/sv/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (El Salvador)
diff --git a/sql-ledger/locale/sv/admin b/sql-ledger/locale/sv/admin
deleted file mode 100644
index 231e16c..0000000
--- a/sql-ledger/locale/sv/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Agregar Usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => '! Todos los conjuntos de datos estan actualizados !',
- 'Change Admin Password' => 'Cambiar Contraseña de Administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Tabla de Caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de acceso a
-editar',
- 'Company' => 'Compañía',
- 'Connect to' => 'Conectar a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear set de datos',
- 'DBI not installed!' => 'DBI no instalado!',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => '!No selecciono driver de base de datos!',
- 'Database User missing!' => 'No se encuentra usuario de base de datos',
- 'Dataset' => 'Set de datos',
- 'Dataset missing!' => 'No se encuentra Set de datos!',
- 'Dataset updated!' => 'Base de datos actualizada!',
- 'Date Format' => 'Formato de Fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar Set de Datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Límite menu dropdown',
- 'E-mail' => 'Correo Electrónico',
- 'Edit User' => 'Editar Usuario',
- 'Existing Datasets' => 'Sets de dato existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor base de datos',
- 'Hostname missing!' => 'No se encuentra servidor de base de datos',
- 'Lock System' => 'Enllavar Sistema',
- 'Lockfile created!' => 'Archivo de Enllavado Creado',
- 'Lockfile removed!' => 'Archivo de enllavado borrado',
- 'Login' => 'Nombre de Acceso',
- 'Login name missing!' => 'Falta nombre de acceso!',
- 'Logout' => 'Salir',
- 'Multibyte Encoding' => 'Codificación conjunto de caracteres',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas Plantillas',
- 'No Database Drivers available!' => 'No hay manejador de base de datos
-disponible!',
- 'No Dataset selected!' => 'No se ha seleccionado el set de datos',
- 'Nothing to delete!' => '!Nada para borrar!',
- 'Number Format' => 'Formato de Numero',
- 'Oracle Database Administration' => 'Oracle Administración de base de datos',
- 'Password' => 'Contraseña',
- 'Password changed!' => 'Contraseña cambiada!',
- 'Pg Database Administration' => 'Pg Administración de base de datos',
- 'PgPP Database Administration' => 'Adminsitracion de base de datos PgPP',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se encuentra el Puerto!',
- 'Printer' => 'Impresora',
- 'Save' => 'Salvar',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Estilo de hoja',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Los
-siguientes conjuntos de datos no estan en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. Nada será creado o borrado en esta etapa!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, edite un nombre, cambie el nombre de entrada (login) y guarde los cambios. Un nuevo usuario, con las mismas variables será guardado bajo el nuevo nombre de entrada. (login)',
- 'Unlock System' => 'Desenllavar sistema',
- 'Update Dataset' => 'Actualizar conjunto de datos',
- 'Use Templates' => 'Plantillas de Usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => 'Usuario borrado!',
- 'User saved!' => 'Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe
-introducir un servidor de base de datos y un puerto para conexiones locales y
-remotas!',
- 'does not exist' => 'No existe',
- 'is already a member!' => 'ya es miembro!',
- 'localhost' => 'servidor local',
- 'locked!' => 'asegurado!',
- 'successfully created!' => 'creado con éxito!',
- 'successfully deleted!' => 'creado con éxito!',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'agregar_usuario' => 'add_user',
- 'cambiar_contraseña_de_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_set_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_set_de_datos' => 'delete_dataset',
- 'enllavar_sistema' => 'lock_system',
- 'nombre_de_acceso' => 'login',
- 'salir' => 'logout',
- 'oracle_administración_de_base_de_datos' => 'oracle_database_administration',
- 'pg_administración_de_base_de_datos' => 'pg_database_administration',
- 'adminsitracion_de_base_de_datos_pgpp' => 'pgpp_database_administration',
- 'salvar' => 'save',
- 'desenllavar_sistema' => 'unlock_system',
- 'actualizar_conjunto_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/all b/sql-ledger/locale/sv/all
deleted file mode 100644
index 6f87d55..0000000
--- a/sql-ledger/locale/sv/all
+++ /dev/null
@@ -1,772 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Ctas X Pagar',
- 'AP Aging' => 'Antiguedad de Saldos - CxP',
- 'AP Outstanding' => 'CxP Extraordinarias',
- 'AP Transaction' => 'Transaccion - CxP',
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'AR Aging' => 'Antiguedad de Saldos - CxC ',
- 'AR Outstanding' => 'CxC Extraordinarias',
- 'AR Transaction' => 'Transaccion - CxC',
- 'AR Transactions' => 'Transacciones - CxC',
- 'About' => 'Acerca',
- 'Above' => '',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'No existe el número de cuenta!',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'No existe el tipo de la cuenta!',
- 'Account deleted!' => 'Cuenta borrada!',
- 'Account does not exist!' => '',
- 'Account saved!' => 'Cuenta guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'Activa',
- 'Add' => 'Agregar',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Ensamble',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => 'Agregar Trans. de Transferencia de efectivo',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'Añadir código G GIFI',
- 'Add General Ledger Transaction' => 'Agregar Transacción - Mayor General',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Part' => 'Agregar Parte',
- 'Add Pricegroup' => '',
- 'Add Project' => 'Agregar Proyecto',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'Agregar Factura de Venta',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Transaccion',
- 'Add User' => 'Agregar Usuario',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Add Vendor Invoice' => 'Agregar Factura Proveedor',
- 'Add Warehouse' => '',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => '',
- 'All' => 'Todos',
- 'All Accounts' => '',
- 'All Datasets up to date!' => '! Todos los conjuntos de datos estan actualizados !',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Total',
- 'Amount Due' => 'Monto Vencido',
- 'Amount missing!' => 'Falta monto!',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la Orden No.:?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Ensamblajes',
- 'Assemblies restocked!' => 'Conjuntos re-inventariados',
- 'Assembly' => '',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de auditoria',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BIC' => '',
- 'BOM' => 'Lista de Materiales',
- 'Backup' => 'Respaldo',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => '',
- 'Beginning Balance' => 'Inicio de balance',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'Los libros estan abiertos',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'Numero de Negocio',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'C',
- 'COGS' => 'Costo de Ventas',
- 'Cannot create Lock!' => '',
- 'Cannot delete account!' => 'No puede borrar cuenta!',
- 'Cannot delete customer!' => 'No puede borrar cliente!',
- 'Cannot delete default account!' => 'No se puede borrar cuenta por defecto!',
- 'Cannot delete invoice!' => 'No puede borraar factura!',
- 'Cannot delete item!' => 'No puede borrar ítem!',
- 'Cannot delete order!' => 'No puede borrar pedido!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'No puede borrar transacción!',
- 'Cannot delete vendor!' => 'No puede borrar proveedor!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post invoice!' => 'No puede registrar factura!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Cannot process payment for a closed period!' => 'No puede procesar pago para ejercicio cerrado!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'No puede guardar cuenta!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'No puede guardar órden!',
- 'Cannot save preferences!' => 'No puede guardar preferencias!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'No puede inventariar conjuntos!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Change' => 'Cambio',
- 'Change Admin Password' => 'Cambiar Contraseña de Administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Tabla de Caracteres',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Check' => 'Cheque',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Haga clic en el nombre de acceso a
-editar',
- 'Close Books up to' => 'Se cerraron los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Compañía',
- 'Company Name' => '',
- 'Compare to' => 'Comparar a',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Confirmar!',
- 'Connect to' => 'Conectar a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => '',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Crear catálogo de cuentas',
- 'Create Dataset' => 'Crear set de datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => '',
- 'Customer' => 'Cliente',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'Cliente borrado!',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Customer saved!' => 'Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => 'DBI no instalado!',
- 'DOB' => '',
- 'Database' => 'Base de datos',
- 'Database Administration' => 'Administración de base de datos',
- 'Database Driver not checked!' => '!No selecciono driver de base de datos!',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Database User missing!' => 'No se encuentra usuario de base de datos',
- 'Dataset' => 'Set de datos',
- 'Dataset is newer than version!' => 'El conjunto de datos es mas nuevo que la version!!',
- 'Dataset missing!' => 'No se encuentra Set de datos!',
- 'Dataset updated!' => 'Base de datos actualizada!',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Date Received' => '',
- 'Date missing!' => 'Falta fecha!',
- 'Date received missing!' => '',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Posiciones decimales',
- 'Decrease' => 'Decrementa',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Delete Dataset' => 'Borrar Set de Datos',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'Deposit',
- 'Description' => 'Descripción',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Listo',
- 'Drawing' => 'Retiro',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Límite menu dropdown',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail Statement to' => 'Enviar estado de cuenta por E-mail a',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'E-mailed' => '',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit Assembly' => 'Editar Ensamblaje',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => 'Editar Transaccion de Transferencia de Efectivo',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit General Ledger Transaction' => 'Editar Transacción de Mayor General',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Edit Part' => 'Editar Parte',
- 'Edit Preferences for' => 'Editar Preferencias para',
- 'Edit Pricegroup' => '',
- 'Edit Project' => 'Editar Proyecto',
- 'Edit Purchase Order' => 'Editar Orden de Compra',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Edit Sales Order' => 'Editar Remisión',
- 'Edit Service' => 'Editar Servicio',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit User' => 'Editar Usuario',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Edit Vendor Invoice' => 'Editar Factura Proveedor',
- 'Edit Warehouse' => '',
- 'Employee' => 'Empleado',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ingrese símbolo de hasta 3 letras para divisas nativa y extranjeras (USD:EUR)',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Existing Datasets' => 'Sets de dato existentes',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de Egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'FX',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Foreign Exchange Gain' => 'Ganancia en Moneda Extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en Moneda Extranjera',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => 'GIFI borrado!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => 'GIFI guardado!',
- 'GL Transaction' => 'Transacción de mayor',
- 'General Ledger' => 'Mayor General',
- 'Goods & Services' => 'Bienes y servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'Group Translations' => '',
- 'Group deleted!' => 'Grupo borrado!',
- 'Group missing!' => 'Falta Grupo!',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => '',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Historico',
- 'Home Phone' => '',
- 'Host' => 'Servidor base de datos',
- 'Hostname missing!' => 'No se encuentra servidor de base de datos',
- 'IBAN' => '',
- 'ID' => 'ID',
- 'Image' => 'Imagen',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluya diferencia de tasa de cambio',
- 'Include in Report' => 'Incluya en informe',
- 'Include in drop-down menus' => 'Incluya en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluya esta cuenta en las formas del cliente/proveedor para señalar al cliente/proveedor como gravable de impuesto?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Income Statement' => 'Estado de Cuentas',
- 'Incorrect Dataset version!' => '!Version incorrecta de conjunto de datos!',
- 'Incorrect Password!' => 'Contraseña Incorrecta!',
- 'Increase' => 'Incrementa',
- 'Individual Items' => 'Items Individuales',
- 'Internal Notes' => '',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar esta parte a obsoleto',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Invoice deleted!' => 'Factura borrada!',
- 'Invoice posted!' => 'Factura registrada!',
- 'Invoice processed!' => '',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => 'Es esta una cuenta de resumen a registrar?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'Item borrado!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Items' => '',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'LaTeX Templates' => 'Plantillas de LaTeX',
- 'Labor/Overhead' => '',
- 'Language' => '',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => '',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => '',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a Moran Mendez y Asociados',
- 'Line Total' => 'Total de la linea',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List' => '',
- 'List Accounts' => 'Listar Cuentas',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'Listar código GIFI',
- 'List Languages' => '',
- 'List Price' => 'Precio de Lista',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Listar Transacciones',
- 'List Warehouses' => '',
- 'Lock System' => 'Enllavar Sistema',
- 'Lockfile created!' => 'Archivo de Enllavado Creado',
- 'Lockfile removed!' => 'Archivo de enllavado borrado',
- 'Login' => 'Nombre de Acceso',
- 'Login name missing!' => 'Falta nombre de acceso!',
- 'Logout' => 'Salir',
- 'Make' => 'Marca',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'Mensaje',
- 'Method' => '',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => '',
- 'Multibyte Encoding' => 'Codificación conjunto de caracteres',
- 'N/A' => 'N/A',
- 'Name' => 'Nombre',
- 'Name missing!' => 'Falta nombre!',
- 'New Templates' => 'Nuevas Plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => 'No hay manejador de base de datos
-disponible!',
- 'No Dataset selected!' => 'No se ha seleccionado el set de datos',
- 'No email address for' => 'Falta email para',
- 'No.' => ' No ',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notas',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'Nada seleccionado!',
- 'Nothing to delete!' => '!Nada para borrar!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de Numero',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'O' => 'O',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'En Existencia',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Oracle Administración de base de datos',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Entry' => 'Orden de Entrada',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Order deleted!' => 'Orden borrada!',
- 'Order processed!' => '',
- 'Order saved!' => 'Orden guardada!',
- 'Orphaned' => 'Huerfano',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'Fuera de balance!',
- 'Outstanding' => 'Extraordinario',
- 'PDF' => 'PDF',
- 'POS' => 'POS',
- 'POS Invoice' => 'Factura POS',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Packing Lists' => '',
- 'Paid' => 'Total Pagado',
- 'Part' => 'Partes',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Partes',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Password changed!' => 'Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payment posted!' => 'Pago registrado!',
- 'Payments' => 'Pagos',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Administración de base de datos',
- 'PgPP Database Administration' => 'Adminsitracion de base de datos PgPP',
- 'Phone' => 'Teléfono',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Puerto',
- 'Port missing!' => 'No se encuentra el Puerto!',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Enviado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => 'Preferencias guardadas!',
- 'Prepayment' => '',
- 'Price' => 'Precio',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'Imprimir',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Impresora',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => '',
- 'Project Number' => 'Número de Proyecto',
- 'Project Number missing!' => 'Falta número de proyecto!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'Proyecto borrado!',
- 'Project not on file!' => '',
- 'Project saved!' => 'Proyecto guardado!',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cant.',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => 'R',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '',
- 'Recd' => 'Rec',
- 'Receipt' => 'Recibo',
- 'Receipt posted!' => '',
- 'Receipts' => 'Ingresos',
- 'Receivables' => 'Por Cobrar',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'Conciliación',
- 'Reconciliation Report' => '',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => 'Falta referencia!',
- 'Remaining' => 'Faltan',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'Informe para',
- 'Reports' => 'Reportes',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Requerido por',
- 'Retained Earnings' => 'Ganacias Retenidas',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Factura de Venta',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Ordenes de venta',
- 'Sales Quotation Number' => '',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Save Pricelist' => '',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Guardar en archivo',
- 'Screen' => 'Pantalla',
- 'Search' => 'Buscar',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'Seleccione todos',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Precio de Venta',
- 'Send by E-Mail' => 'Enviar por E-Mail',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'Servicio',
- 'Service Items' => 'Items de Servicio',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Ship' => 'Envíe',
- 'Ship Merchandise' => '',
- 'Ship to' => 'Envíe a',
- 'Ship via' => 'Envía vía',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'Fuente',
- 'Spoolfile' => '',
- 'Standard' => 'Estandar',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'Estado de Cuenta',
- 'Statement Balance' => 'Balance Estado de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => 'Estados de Cuenta enviados a impresora!',
- 'Stock' => 'Existencia',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Stylesheet' => 'Estilo de hoja',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => '',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas De Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'Impuesto recaudado',
- 'Tax paid' => 'Impuesto pagado',
- 'Taxable' => 'Gravable de Impuesto',
- 'Template saved!' => 'Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => '',
- 'Text Templates' => 'Plantillas de Texto',
- 'The following Datasets are not in use and can be deleted' => 'Los
-siguientes conjuntos de datos no estan en uso y pueden ser borrados',
- 'The following Datasets need to be updated' => 'Es necesario actualizar las siguientes bases de datos',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. Nada será creado o borrado en esta etapa!',
- 'Till' => 'Hasta',
- 'To' => 'Hasta ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para agregar un usuario a un grupo, edite un nombre, cambie el nombre de entrada (login) y guarde los cambios. Un nuevo usuario, con las mismas variables será guardado bajo el nuevo nombre de entrada. (login)',
- 'Top Level' => 'Nivel superior',
- 'Total' => 'Total',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Falta la fecha de la transacción!',
- 'Transaction deleted!' => 'Transacción borrada!',
- 'Transaction posted!' => 'Transacción registrada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Type of Business' => '',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Desenllavar sistema',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar conjunto de datos',
- 'Updated' => 'Actalizado',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Plantillas de Usuarios',
- 'User' => 'Usuario',
- 'User deleted!' => 'Usuario borrado!',
- 'User saved!' => 'Usuario guardado!',
- 'Valid until' => '',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => 'Factura de Proveedor',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'Proveedor borrado!',
- 'Vendor missing!' => 'Falta proveedor!',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'Vendor saved!' => 'Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de Peso',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Si',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'No introdujo un nombre!',
- 'You must enter a host and port for local and remote connections!' => 'Debe
-introducir un servidor de base de datos y un puerto para conexiones locales y
-remotas!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'Cuenta no puede ser establecida a ningun otro tipo',
- 'as at' => 'Al',
- 'days' => 'Días',
- 'does not exist' => 'No existe',
- 'done' => 'Hecho',
- 'ea' => 'c/u',
- 'for Period' => 'para el período',
- 'is already a member!' => 'ya es miembro!',
- 'is not a member!' => '!no es miembro!',
- 'localhost' => 'servidor local',
- 'locked!' => 'asegurado!',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'creado con éxito!',
- 'successfully deleted!' => 'creado con éxito!',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/am b/sql-ledger/locale/sv/am
deleted file mode 100644
index 1ef5bcd..0000000
--- a/sql-ledger/locale/sv/am
+++ /dev/null
@@ -1,192 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'About' => 'Acerca',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'No existe el número de cuenta!',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'No existe el tipo de la cuenta!',
- 'Account deleted!' => 'Cuenta borrada!',
- 'Account saved!' => 'Cuenta guardada!',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Account' => 'Agregar Cuenta',
- 'Add GIFI' => 'Añadir código G GIFI',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de auditoria',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Books are open' => 'Los libros estan abiertos',
- 'Business Number' => 'Numero de Negocio',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete account!' => 'No puede borrar cuenta!',
- 'Cannot delete default account!' => 'No se puede borrar cuenta por defecto!',
- 'Cannot save account!' => 'No puede guardar cuenta!',
- 'Cannot save preferences!' => 'No puede guardar preferencias!',
- 'Cash' => 'Caja',
- 'Character Set' => 'Tabla de Caracteres',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Close Books up to' => 'Se cerraron los libros hasta',
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Copy to COA' => 'Copiar al catálogo de cuentas',
- 'Credit' => 'Crédito',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Dataset' => 'Set de datos',
- 'Date Format' => 'Formato de Fecha',
- 'Debit' => 'Débito',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Description' => 'Descripción',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite menu dropdown',
- 'E-mail' => 'Correo Electrónico',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit Preferences for' => 'Editar Preferencias para',
- 'Edit Template' => 'Editar Plantilla',
- 'Enforce transaction reversal for all dates' => 'Forzar la anulación de las transacciones para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Ingrese símbolo de hasta 3 letras para divisas nativa y extranjeras (USD:EUR)',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'Expense Account' => 'Cuenta de Egreso',
- 'Expense/Asset' => 'Egreso/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia en Moneda Extranjera',
- 'Foreign Exchange Loss' => 'Pérdida en Moneda Extranjera',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => 'GIFI borrado!',
- 'GIFI missing!' => 'No se ha definido el código GIFI',
- 'GIFI saved!' => 'GIFI guardado!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluya en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Incluya esta cuenta en las formas del cliente/proveedor para señalar al cliente/proveedor como gravable de impuesto?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Is this a summary account to record' => 'Es esta una cuenta de resumen a registrar?',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licenciado a Moran Mendez y Asociados',
- 'Link' => 'Enlaces',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta email para',
- 'Number' => 'Número',
- 'Number Format' => 'Formato de Numero',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Payables' => 'Por Pagar',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => 'Preferencias guardadas!',
- 'Printer' => 'Impresora',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'Por Cobrar',
- 'Reference' => 'Referencia',
- 'Retained Earnings' => 'Ganacias Retenidas',
- 'Save' => 'Salvar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Items de Servicio',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Estilo de hoja',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas De Impuesto',
- 'Template saved!' => 'Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado la anulación de las transacciones para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado la anulación de las transacciones hasta',
- 'User' => 'Usuario',
- 'Version' => 'Versión',
- 'Weight Unit' => 'Unidad de Peso',
- 'Yes' => 'Si',
- 'account cannot be set to any other type of account' => 'Cuenta no puede ser establecida a ningun otro tipo',
- 'localhost' => 'servidor local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'agregar_cuenta' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_catálogo_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'salvar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ap b/sql-ledger/locale/sv/ap
deleted file mode 100644
index 522f064..0000000
--- a/sql-ledger/locale/sv/ap
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'CxP Extraordinarias',
- 'AP Transaction' => 'Transaccion - CxP',
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Monto Vencido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'No puede borrar transacción!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'Employee' => 'Empleado',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Faltan',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacción borrada!',
- 'Transaction posted!' => 'Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => 'Falta proveedor!',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion___cxp' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'actualizar' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ar b/sql-ledger/locale/sv/ar
deleted file mode 100644
index 608a571..0000000
--- a/sql-ledger/locale/sv/ar
+++ /dev/null
@@ -1,155 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'CxC Extraordinarias',
- 'AR Transaction' => 'Transaccion - CxC',
- 'AR Transactions' => 'Transacciones - CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Monto Vencido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Cannot delete transaction!' => 'No puede borrar transacción!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'PDF' => 'PDF',
- 'Paid' => 'Total Pagado',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Receipt' => 'Recibo',
- 'Remaining' => 'Faltan',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Ship via' => 'Envía vía',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Till' => 'Hasta',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacción borrada!',
- 'Transaction posted!' => 'Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion___cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/arap b/sql-ledger/locale/sv/arap
deleted file mode 100644
index e5cdd00..0000000
--- a/sql-ledger/locale/sv/arap
+++ /dev/null
@@ -1,28 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Description' => 'Descripción',
- 'Number' => 'Número',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/arapprn b/sql-ledger/locale/sv/arapprn
deleted file mode 100644
index 43a7791..0000000
--- a/sql-ledger/locale/sv/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Total',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Source' => 'Fuente',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/bp b/sql-ledger/locale/sv/bp
deleted file mode 100644
index 8428705..0000000
--- a/sql-ledger/locale/sv/bp
+++ /dev/null
@@ -1,46 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de Factura',
- 'Order' => 'Orden',
- 'Order Number' => 'Orden Número',
- 'Print' => 'Imprimir',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Receipts' => 'Ingresos',
- 'Reference' => 'Referencia',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Select all' => 'Seleccione todos',
- 'To' => 'Hasta ',
- 'Vendor' => 'Proveedor',
- 'Yes' => 'Si',
- 'done' => 'Hecho',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'remove' => 'remove',
- 'seleccione_todos' => 'select_all',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ca b/sql-ledger/locale/sv/ca
deleted file mode 100644
index ec8325f..0000000
--- a/sql-ledger/locale/sv/ca
+++ /dev/null
@@ -1,53 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Include in Report' => 'Incluya en informe',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'List Transactions' => 'Listar Transacciones',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Project Number' => 'Número de Proyecto',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'listar_transacciones' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/cp b/sql-ledger/locale/sv/cp
deleted file mode 100644
index af9a927..0000000
--- a/sql-ledger/locale/sv/cp
+++ /dev/null
@@ -1,73 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AR' => 'Ctas X Cobrar',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount Due' => 'Monto Vencido',
- 'Cannot process payment for a closed period!' => 'No puede procesar pago para ejercicio cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Date missing!' => 'Falta fecha!',
- 'Deposit' => 'Deposit',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Number' => 'Número',
- 'PDF' => 'PDF',
- 'Payment' => 'Pago',
- 'Payment posted!' => 'Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Receipt' => 'Recibo',
- 'Screen' => 'Pantalla',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Source' => 'Fuente',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ct b/sql-ledger/locale/sv/ct
deleted file mode 100644
index 3882b74..0000000
--- a/sql-ledger/locale/sv/ct
+++ /dev/null
@@ -1,138 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion - CxP',
- 'AP Transactions' => 'Transacciones - Cuentas por Pagar',
- 'AR Transaction' => 'Transaccion - CxC',
- 'AR Transactions' => 'Transacciones - CxC',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Bcc' => 'Bcc',
- 'Cannot delete customer!' => 'No puede borrar cliente!',
- 'Cannot delete vendor!' => 'No puede borrar proveedor!',
- 'Cc' => 'Cc',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer deleted!' => 'Cliente borrado!',
- 'Customer saved!' => 'Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'Correo Electrónico',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Employee' => 'Empleado',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Name' => 'Nombre',
- 'Name missing!' => 'Falta nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huerfano',
- 'Phone' => 'Teléfono',
- 'Project Number' => 'Número de Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cant.',
- 'Sales Invoice' => 'Factura de Venta',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Search' => 'Buscar',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Sell Price' => 'Precio de Venta',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Taxable' => 'Gravable de Impuesto',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoices' => 'Factura de Proveedor',
- 'Vendor deleted!' => 'Proveedor borrado!',
- 'Vendor saved!' => 'Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'Días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'transaccion___cxp' => 'ap_transaction',
- 'transaccion___cxc' => 'ar_transaction',
- 'agregar_cliente' => 'add_customer',
- 'agregar_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'pricelist' => 'pricelist',
- 'orden_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'salvar' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/gl b/sql-ledger/locale/sv/gl
deleted file mode 100644
index 5f23127..0000000
--- a/sql-ledger/locale/sv/gl
+++ /dev/null
@@ -1,130 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Transaccion - CxP',
- 'AR Transaction' => 'Transaccion - CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Cash Transfer Transaction' => 'Agregar Trans. de Transferencia de efectivo',
- 'Add General Ledger Transaction' => 'Agregar Transacción - Mayor General',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => 'No puede borrar transacción!',
- 'Cannot post transaction for a closed period!' => 'No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Confirm!' => 'Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Editar Transaccion de Transferencia de Efectivo',
- 'Edit General Ledger Transaction' => 'Editar Transacción de Mayor General',
- 'Equity' => 'Capital',
- 'Expense' => 'Egreso',
- 'FX' => 'FX',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GL Transaction' => 'Transacción de mayor',
- 'General Ledger' => 'Mayor General',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Income' => 'Ingreso',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Reference missing!' => 'Falta referencia!',
- 'Reports' => 'Reportes',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Transaction Date missing!' => 'Falta la fecha de la transacción!',
- 'Transaction deleted!' => 'Transacción borrada!',
- 'Transaction posted!' => 'Transacción registrada!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'Yes' => 'Si',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion___cxp' => 'ap_transaction',
- 'transaccion___cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'transacción_de_mayor' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/hr b/sql-ledger/locale/sv/hr
deleted file mode 100644
index 774ae75..0000000
--- a/sql-ledger/locale/sv/hr
+++ /dev/null
@@ -1,70 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'All' => 'Todos',
- 'Amount' => 'Total',
- 'Amount missing!' => 'Falta monto!',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'Employee' => 'Empleado',
- 'Expense' => 'Egreso',
- 'ID' => 'ID',
- 'Include in Report' => 'Incluya en informe',
- 'Login' => 'Nombre de Acceso',
- 'Name' => 'Nombre',
- 'Name missing!' => 'Falta nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Número',
- 'Orphaned' => 'Huerfano',
- 'Rate' => 'Tarifa',
- 'Sales' => 'Ventas',
- 'Save' => 'Salvar',
- 'Save as new' => 'Guardar como nuevo',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'salvar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ic b/sql-ledger/locale/sv/ic
deleted file mode 100644
index 59918fd..0000000
--- a/sql-ledger/locale/sv/ic
+++ /dev/null
@@ -1,227 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Active' => 'Activa',
- 'Add' => 'Agregar',
- 'Add Assembly' => 'Agregar Ensamble',
- 'Add Part' => 'Agregar Parte',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Add Service' => 'Agregar Servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Assemblies' => 'Ensamblajes',
- 'Assemblies restocked!' => 'Conjuntos re-inventariados',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'BOM' => 'Lista de Materiales',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete item!' => 'No puede borrar ítem!',
- 'Cannot stock assemblies!' => 'No puede inventariar conjuntos!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Closed' => 'Cerrado',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Retiro',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Assembly' => 'Editar Ensamblaje',
- 'Edit Part' => 'Editar Parte',
- 'Edit Service' => 'Editar Servicio',
- 'Employee' => 'Empleado',
- 'Expense' => 'Egreso',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'Image' => 'Imagen',
- 'In-line' => 'En linea',
- 'Include in Report' => 'Incluya en informe',
- 'Income' => 'Ingreso',
- 'Individual Items' => 'Items Individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar este ensamblaje a obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'La cantidad en inventario debe ser cero antes de cambiar esta parte a obsoleto',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item deleted!' => 'Item borrado!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Line Total' => 'Total de la linea',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List Price' => 'Precio de Lista',
- 'Make' => 'Marca',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => ' No ',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'On Hand' => 'En Existencia',
- 'Open' => 'Abierto',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Orphaned' => 'Huerfano',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Part' => 'Partes',
- 'Parts' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cant.',
- 'ROP' => 'ROP',
- 'Recd' => 'Rec',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Factura de Venta',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save' => 'Salvar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Sell Price' => 'Precio de Venta',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Short' => 'Corto',
- 'Stock' => 'Existencia',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta ',
- 'Top Level' => 'Nivel superior',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => 'Actalizado',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor Invoices' => 'Factura de Proveedor',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'days' => 'Días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'agregar_ensamble' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'agregar_parte' => 'add_part',
- 'agregar_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_ensamblaje' => 'edit_assembly',
- 'editar_parte' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'salvar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/io b/sql-ledger/locale/sv/io
deleted file mode 100644
index 3615c68..0000000
--- a/sql-ledger/locale/sv/io
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cc' => 'Cc',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'In-line' => 'En linea',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => ' No ',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Part' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cant.',
- 'Recd' => 'Rec',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Unit' => 'Unidad',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ir b/sql-ledger/locale/sv/ir
deleted file mode 100644
index 1385eff..0000000
--- a/sql-ledger/locale/sv/ir
+++ /dev/null
@@ -1,183 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Add Vendor Invoice' => 'Agregar Factura Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'No puede borraar factura!',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post invoice!' => 'No puede registrar factura!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Vendor Invoice' => 'Editar Factura Proveedor',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'In-line' => 'En linea',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Invoice deleted!' => 'Factura borrada!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => ' No ',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cant.',
- 'Recd' => 'Rec',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Faltan',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Source' => 'Fuente',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor missing!' => 'Falta proveedor!',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'orden_de_compra' => 'purchase_order',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/is b/sql-ledger/locale/sv/is
deleted file mode 100644
index 476c079..0000000
--- a/sql-ledger/locale/sv/is
+++ /dev/null
@@ -1,194 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Invoice' => 'Agregar Factura de Venta',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'No puede borraar factura!',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post invoice!' => 'No puede registrar factura!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cc' => 'Cc',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'In-line' => 'En linea',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Invoice deleted!' => 'Factura borrada!',
- 'Invoice posted!' => 'Factura registrada!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => ' No ',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cant.',
- 'Recd' => 'Rec',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Faltan',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Ship via' => 'Envía vía',
- 'Source' => 'Fuente',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'orden_de_venta' => 'sales_order',
- 'envíe_a' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/login b/sql-ledger/locale/sv/login
deleted file mode 100644
index 5d37d04..0000000
--- a/sql-ledger/locale/sv/login
+++ /dev/null
@@ -1,24 +0,0 @@
-$self{texts} = {
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'El conjunto de datos es mas nuevo que la version!!',
- 'Incorrect Dataset version!' => '!Version incorrecta de conjunto de datos!',
- 'Incorrect Password!' => 'Contraseña Incorrecta!',
- 'Login' => 'Nombre de Acceso',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Version' => 'Versión',
- 'You did not enter a name!' => 'No introdujo un nombre!',
- 'done' => 'Hecho',
- 'is not a member!' => '!no es miembro!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'nombre_de_acceso' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/menu b/sql-ledger/locale/sv/menu
deleted file mode 100644
index 7bbd647..0000000
--- a/sql-ledger/locale/sv/menu
+++ /dev/null
@@ -1,89 +0,0 @@
-$self{texts} = {
- 'AP' => 'Ctas X Pagar',
- 'AP Aging' => 'Antiguedad de Saldos - CxP',
- 'AP Transaction' => 'Transaccion - CxP',
- 'AR' => 'Ctas X Cobrar',
- 'AR Aging' => 'Antiguedad de Saldos - CxC ',
- 'AR Transaction' => 'Transaccion - CxC',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Ensamble',
- 'Add Customer' => 'Agregar Cliente',
- 'Add GIFI' => 'Añadir código G GIFI',
- 'Add Group' => 'Agregar Grupo',
- 'Add Part' => 'Agregar Parte',
- 'Add Project' => 'Agregar Proyecto',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Transaccion',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Assemblies' => 'Ensamblajes',
- 'Audit Control' => 'Control de auditoria',
- 'Backup' => 'Respaldo',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Cash' => 'Caja',
- 'Chart of Accounts' => 'Catálogo Contable',
- 'Check' => 'Cheque',
- 'Customers' => 'Clientes',
- 'Description' => 'Descripción',
- 'General Ledger' => 'Mayor General',
- 'Goods & Services' => 'Bienes y servicios',
- 'Groups' => 'Grupos',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Historico',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas de LaTeX',
- 'List Accounts' => 'Listar Cuentas',
- 'List GIFI' => 'Listar código GIFI',
- 'Logout' => 'Salir',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Orden de Entrada',
- 'Outstanding' => 'Extraordinario',
- 'POS' => 'POS',
- 'POS Invoice' => 'Factura POS',
- 'Packing List' => 'Lista de Empaque',
- 'Parts' => 'Partes',
- 'Payment' => 'Pago',
- 'Payments' => 'Pagos',
- 'Preferences' => 'Preferencias',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Ingresos',
- 'Reconciliation' => 'Conciliación',
- 'Reports' => 'Reportes',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Factura de Venta',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Save to File' => 'Guardar en archivo',
- 'Search' => 'Buscar',
- 'Send by E-Mail' => 'Enviar por E-Mail',
- 'Services' => 'Servicios',
- 'Ship' => 'Envíe',
- 'Statement' => 'Estado de Cuenta',
- 'Stock Assembly' => 'Inventariar Ensamblaje?',
- 'Stylesheet' => 'Estilo de hoja',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuesto recaudado',
- 'Tax paid' => 'Impuesto pagado',
- 'Text Templates' => 'Plantillas de Texto',
- 'Transactions' => 'Transacciones',
- 'Transfer' => 'Transferencia',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/oe b/sql-ledger/locale/sv/oe
deleted file mode 100644
index a367a29..0000000
--- a/sql-ledger/locale/sv/oe
+++ /dev/null
@@ -1,234 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Invoice' => 'Agregar Factura de Venta',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Add Vendor Invoice' => 'Agregar Factura Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Order Number' => '¿Esta seguro de que desea
-borrar la Orden No.:?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'C' => 'C',
- 'Cannot delete order!' => 'No puede borrar pedido!',
- 'Cannot save order!' => 'No puede guardar órden!',
- 'Cc' => 'Cc',
- 'Closed' => 'Cerrado',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Done' => 'Listo',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit Purchase Order' => 'Editar Orden de Compra',
- 'Edit Sales Order' => 'Editar Remisión',
- 'Employee' => 'Empleado',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'ID' => 'ID',
- 'In-line' => 'En linea',
- 'Include in Report' => 'Incluya en informe',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'No.' => ' No ',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'O' => 'O',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'Order deleted!' => 'Orden borrada!',
- 'Order saved!' => 'Orden guardada!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Part' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Purchase Orders' => 'Ordenes de Compra',
- 'Qty' => 'Cant.',
- 'Recd' => 'Rec',
- 'Remaining' => 'Faltan',
- 'Required by' => 'Requerido por',
- 'Sales Invoice' => 'Factura de Venta',
- 'Sales Order' => 'Orden de venta',
- 'Sales Orders' => 'Ordenes de venta',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Salvar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Ship via' => 'Envía vía',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transfer' => 'Transferencia',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Proveedor',
- 'Vendor missing!' => 'Falta proveedor!',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'days' => 'Días',
- 'ea' => 'c/u',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'listo' => 'done',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'print_and_save' => 'print_and_save',
- 'orden_de_compra' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'factura_de_venta' => 'sales_invoice',
- 'orden_de_venta' => 'sales_order',
- 'salvar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'envíe_a' => 'ship_to',
- 'transferencia' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_proveedor' => 'vendor_invoice',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/pe b/sql-ledger/locale/sv/pe
deleted file mode 100644
index d377e06..0000000
--- a/sql-ledger/locale/sv/pe
+++ /dev/null
@@ -1,66 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Group' => 'Agregar Grupo',
- 'Add Project' => 'Agregar Proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Project' => 'Editar Proyecto',
- 'Group' => 'Grupo',
- 'Group deleted!' => 'Grupo borrado!',
- 'Group missing!' => 'Falta Grupo!',
- 'Group saved!' => 'Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Number' => 'Número',
- 'Orphaned' => 'Huerfano',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número de Proyecto',
- 'Project Number missing!' => 'Falta número de proyecto!',
- 'Project deleted!' => 'Proyecto borrado!',
- 'Project saved!' => 'Proyecto guardado!',
- 'Projects' => 'Proyectos',
- 'Save' => 'Salvar',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'agregar_grupo' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'agregar_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'salvar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/pos b/sql-ledger/locale/sv/pos
deleted file mode 100644
index 8ef42b5..0000000
--- a/sql-ledger/locale/sv/pos
+++ /dev/null
@@ -1,60 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Change' => 'Cambio',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Limite de Credito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Extended' => 'Extendido',
- 'From' => 'Desde',
- 'Number' => 'Número',
- 'Open' => 'Abierto',
- 'Paid' => 'Total Pagado',
- 'Post' => 'Registrar',
- 'Posted!' => 'Enviado!',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Qty' => 'Cant.',
- 'Receipts' => 'Ingresos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Faltan',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'Fuente',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/ps b/sql-ledger/locale/sv/ps
deleted file mode 100644
index ba7ee5b..0000000
--- a/sql-ledger/locale/sv/ps
+++ /dev/null
@@ -1,287 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Antiguedad de Saldos - CxP',
- 'AR Aging' => 'Antiguedad de Saldos - CxC ',
- 'AR Outstanding' => 'CxC Extraordinarias',
- 'AR Transaction' => 'Transaccion - CxC',
- 'AR Transactions' => 'Transacciones - CxC',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Add POS Invoice' => 'Agregar Factura POS',
- 'Add Purchase Order' => 'Agregar Orden de Compra',
- 'Add Sales Invoice' => 'Agregar Factura de Venta',
- 'Add Sales Order' => 'Agregar Nota de Remisión',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Amount Due' => 'Monto Vencido',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Are you sure you want to delete Invoice Number' => '¿Esta seguro de que desea borrar la Factura No.:',
- 'Are you sure you want to delete Transaction' => '¿Está usted seguro de que desea suprimir la transacción?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Bcc' => 'Bcc',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'No puede borraar factura!',
- 'Cannot delete transaction!' => 'No puede borrar transacción!',
- 'Cannot post invoice for a closed period!' => 'No se puede registrar factura para un periodo cerrado!',
- 'Cannot post invoice!' => 'No puede registrar factura!',
- 'Cannot post payment for a closed period!' => 'No se puede registrar pago para un periodo cerrado',
- 'Cannot post transaction for a closed period!' => 'No se puede registrar una transacción para un periodo cerrado',
- 'Cannot post transaction!' => 'No puede registrar transacción!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Change' => 'Cambio',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Compare to' => 'Comparar a',
- 'Confirm!' => 'Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Limite de Credito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => 'Falta cliente!',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Posiciones decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de Entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta Fecha de Vencimiento!',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail Statement to' => 'Enviar estado de cuenta por E-mail a',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Edit POS Invoice' => 'Editar Factura POS',
- 'Edit Sales Invoice' => 'Editar Factura de Venta',
- 'Exch' => 'Interc.',
- 'Exchange Rate' => 'Tasa de Intercambio',
- 'Exchange rate for payment missing!' => 'No se encuentra pago por cambio de moneda',
- 'Exchange rate missing!' => 'No se encuentra cambio de moneda',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'Group Items' => 'Elementos de Grupo',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluya diferencia de tasa de cambio',
- 'Include in Report' => 'Incluya en informe',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => 'Falta la Fecha de la Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => 'Falta el Número de Factura!',
- 'Invoice deleted!' => 'Factura borrada!',
- 'Invoice posted!' => 'Factura registrada!',
- 'Item not on file!' => '¡El artículo no se encuentra en archivo!',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'N/A',
- 'No.' => ' No ',
- 'Notes' => 'Notas',
- 'Nothing selected!' => 'Nada seleccionado!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Number missing in Row' => 'No se encuentra el número en la fila',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => 'No se encuentra la fecha de orden!',
- 'Order Number' => 'Orden Número',
- 'Order Number missing!' => 'No se encuentra el número de orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '!Falta fecha en lista de empaque!',
- 'Packing List Number missing!' => '!Falta nzmero en lista de empaque!',
- 'Paid' => 'Total Pagado',
- 'Part' => 'Partes',
- 'Payment date missing!' => 'No se encuentra la fecha de Pago!',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => 'Enviado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número de Proyecto',
- 'Purchase Order' => 'Orden de Compra',
- 'Qty' => 'Cant.',
- 'Recd' => 'Rec',
- 'Receipt' => 'Recibo',
- 'Receipts' => 'Ingresos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Faltan',
- 'Report for' => 'Informe para',
- 'Required by' => 'Requerido por',
- 'Sales Order' => 'Orden de venta',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccione todos',
- 'Select from one of the items below' => 'Seleccione uno de los elementos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Service' => 'Servicio',
- 'Ship' => 'Envíe',
- 'Ship to' => 'Envíe a',
- 'Ship via' => 'Envía vía',
- 'Source' => 'Fuente',
- 'Standard' => 'Estandar',
- 'Statement' => 'Estado de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => 'Estados de Cuenta enviados a impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluido',
- 'Tax collected' => 'Impuesto recaudado',
- 'Tax paid' => 'Impuesto pagado',
- 'Till' => 'Hasta',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Transaction deleted!' => 'Transacción borrada!',
- 'Transaction posted!' => 'Transacción registrada!',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'What type of item is this?' => '¿Que tipo de Item es este?',
- 'Yes' => 'Si',
- 'as at' => 'Al',
- 'ea' => 'c/u',
- 'for Period' => 'para el período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'transaccion___cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'correo_electrónico' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'orden_de_venta' => 'sales_order',
- 'seleccione_todos' => 'select_all',
- 'envíe_a' => 'ship_to',
- 'actualizar' => 'update',
- 'si' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/pw b/sql-ledger/locale/sv/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/sv/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/rc b/sql-ledger/locale/sv/rc
deleted file mode 100644
index 1c7872f..0000000
--- a/sql-ledger/locale/sv/rc
+++ /dev/null
@@ -1,73 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Inicio de balance',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decrease' => 'Decrementa',
- 'Deposit' => 'Deposit',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Listo',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'Include Exchange Rate Difference' => 'Incluya diferencia de tasa de cambio',
- 'Increase' => 'Incrementa',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Out of balance!' => 'Fuera de balance!',
- 'Outstanding' => 'Extraordinario',
- 'Payment' => 'Pago',
- 'R' => 'R',
- 'Reconciliation' => 'Conciliación',
- 'Select all' => 'Seleccione todos',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Statement Balance' => 'Balance Estado de Cuenta',
- 'Summary' => 'Resumen',
- 'To' => 'Hasta ',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'listo' => 'done',
- 'seleccione_todos' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/sv/rp b/sql-ledger/locale/sv/rp
deleted file mode 100644
index a89068e..0000000
--- a/sql-ledger/locale/sv/rp
+++ /dev/null
@@ -1,149 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Antiguedad de Saldos - CxP',
- 'AR Aging' => 'Antiguedad de Saldos - CxC ',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Address' => 'Dirección',
- 'Amount' => 'Total',
- 'Apr' => 'Abr',
- 'April' => 'Abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'Agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar a',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => 'Cliente no existe en archivo!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'Diciembre',
- 'Decimalplaces' => 'Posiciones decimales',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'Correo Electrónico',
- 'E-mail Statement to' => 'Enviar estado de cuenta por E-mail a',
- 'E-mail address missing!' => 'Falta E-mail!',
- 'Feb' => 'Feb',
- 'February' => 'Febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'ID',
- 'In-line' => 'En linea',
- 'Include Exchange Rate Difference' => 'Incluya diferencia de tasa de cambio',
- 'Include in Report' => 'Incluya en informe',
- 'Income Statement' => 'Estado de Cuentas',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'Enero',
- 'Jul' => 'Jul',
- 'July' => 'Julio',
- 'Jun' => 'Jun',
- 'June' => 'Junio',
- 'Mar' => 'Mar',
- 'March' => 'Marzo',
- 'May' => 'May',
- 'May ' => 'Mayo',
- 'Message' => 'Mensaje',
- 'N/A' => 'N/A',
- 'Nothing selected!' => 'Nada seleccionado!',
- 'Nov' => 'Nov',
- 'November' => 'Noviembre',
- 'Number' => 'Número',
- 'Oct' => 'Oct',
- 'October' => 'Octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagos',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Número de Proyecto',
- 'Receipts' => 'Ingresos',
- 'Report for' => 'Informe para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccione todos',
- 'Select from one of the names below' => 'Seleccione uno de los elementos listados',
- 'Select postscript or PDF!' => 'Seleccione postscript o PDF',
- 'Sep' => 'Sep',
- 'September' => 'Septiembre',
- 'Source' => 'Fuente',
- 'Standard' => 'Estandar',
- 'Statement' => 'Estado de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => 'Estados de Cuenta enviados a impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax collected' => 'Impuesto recaudado',
- 'Tax paid' => 'Impuesto pagado',
- 'Till' => 'Hasta',
- 'To' => 'Hasta ',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance De Comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => 'Proveedor no está en archivo!',
- 'as at' => 'Al',
- 'for Period' => 'para el período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'correo_electrónico' => 'e_mail',
- 'imprimir' => 'print',
- 'seleccione_todos' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/COPYING b/sql-ledger/locale/tr/COPYING
deleted file mode 100644
index 523dffa..0000000
--- a/sql-ledger/locale/tr/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2001
-#
-# Turkish texts:
-#
-# Author: Mufit Eribol <meribol@deltagrup.com.tr>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/tr/LANGUAGE b/sql-ledger/locale/tr/LANGUAGE
deleted file mode 100644
index d7b2f1f..0000000
--- a/sql-ledger/locale/tr/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Turkish
diff --git a/sql-ledger/locale/tr/admin b/sql-ledger/locale/tr/admin
deleted file mode 100644
index dab478a..0000000
--- a/sql-ledger/locale/tr/admin
+++ /dev/null
@@ -1,135 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Giriþ Kontrol',
- 'Accounting' => 'Muhasebe',
- 'Add User' => 'Kullanýcý Ekle',
- 'Address' => 'Adres',
- 'Administration' => 'Yönetim',
- 'Administrator' => 'Administrator',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'Yönetici Þifresini Deðiþtir',
- 'Change Password' => 'Þifre Deðiþtir',
- 'Character Set' => 'Karakter Seti',
- 'Click on login name to edit!' => 'Düzenlemek için giriþ ismini týklayýn.',
- 'Company' => 'Þirket',
- 'Connect to' => 'Baðlan',
- 'Continue' => 'Devam',
- 'Create Chart of Accounts' => 'Hesap Planý Oluþtur',
- 'Create Dataset' => 'Veriseti Oluþtur',
- 'DBI not installed!' => 'DBJ kurulu deðil',
- 'Database' => 'Veritabaný',
- 'Database Administration' => 'Veritabani Yonetimi',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database User missing!' => 'Veritabaný Kullanýcýsý yok!',
- 'Dataset' => 'Veriseti',
- 'Dataset missing!' => 'Veriseti Yok!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date Format' => 'Tarih Formatý',
- 'Delete' => 'Sil',
- 'Delete Dataset' => 'Verisetini Sil',
- 'Directory' => 'Dizin',
- 'Driver' => 'Sürücü',
- 'E-mail' => 'Posta',
- 'Edit User' => 'Kullanýcý Bilgilerini Düzenle',
- 'Existing Datasets' => 'Verisetleri',
- 'Fax' => 'Faks',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Host yok!',
- 'Language' => 'Dil',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Uzakta baglantý yapmak istemiyorsanýz host ve port alanlarýný boþ býrakýnýz.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Giriþ',
- 'Login name missing!' => 'Login name missing!',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Ýsim',
- 'New Templates' => 'Yeni Þablonlar',
- 'No Database Drivers available!' => 'Veritabaný Sürücüsü yok!',
- 'No Dataset selected!' => 'Veriseti seçilmedi!',
- 'Nothing to delete!' => 'Nothing to delete!',
- 'Number Format' => 'Rakam Formatý',
- 'Oracle Database Administration' => 'Oracle Veritabaný Yönetimi',
- 'Password' => 'Þifre',
- 'Password changed!' => 'Password changed!',
- 'Pg Database Administration' => 'Pg Veritabaný Yönetimi',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Port' => 'Port',
- 'Port missing!' => 'Port yok!',
- 'Printer' => 'Yazýcý',
- 'Save' => 'Kaydet',
- 'Setup Templates' => 'Þablon Kur',
- 'Signature' => 'Ýmza',
- 'Stylesheet' => 'Düzen Sayfasý',
- 'Templates' => 'Þablonlar',
- 'The following Datasets are not in use and can be deleted' => 'Aþaðýdaki Verisetleri kullanýlmamaktadýr ve silinebilir',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Mevcut fiþ bilgileri için bu bir ön kontroldür. Bu aþamada hiçbirþey oluþturulmaz ve silinemez',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Gruba yeni kullanýcý eklemek için, giriþ ismini deðiþtirin ve kaydedin. Yeni kullanýcý yeni giriþ altýnda ayný parametrelerle kaydedilecektir.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'Update Dataset',
- 'Use Templates' => 'Þablon Kullan',
- 'User' => 'Kullanýcý',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Version' => 'Versiyon',
- 'You must enter a host and port for local and remote connections!' => 'Yerel ve uzak baðlantýlar için bir host ve port girmek zorundasýnýz!',
- 'does not exist' => 'mevcut deðil',
- 'is already a member!' => 'üyedir!',
- 'localhost' => 'Yerelhost',
- 'successfully created!' => 'baþarýyla oluþturuldu!',
- 'successfully deleted!' => 'baþarýyla silindi!',
- 'website' => 'Websitesi',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'kullanýcý_ekle' => 'add_user',
- 'yönetici_Þifresini_deðiþtir' => 'change_admin_password',
- 'Þifre_deðiþtir' => 'change_password',
- 'devam' => 'continue',
- 'veriseti_oluþtur' => 'create_dataset',
- 'sil' => 'delete',
- 'verisetini_sil' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'giriþ' => 'login',
- 'logout' => 'logout',
- 'oracle_veritabaný_yönetimi' => 'oracle_database_administration',
- 'pg_veritabaný_yönetimi' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'kaydet' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/all b/sql-ledger/locale/tr/all
deleted file mode 100644
index 93419d3..0000000
--- a/sql-ledger/locale/tr/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'Borçlar',
- 'AP Aging' => 'Gecikmiþ Borçlar',
- 'AP Outstanding' => '',
- 'AP Transaction' => '',
- 'AP Transactions' => 'Borç Ýþlemleri',
- 'AR' => 'Alacaklar',
- 'AR Aging' => 'Gecikmiþ Alacaklar',
- 'AR Outstanding' => '',
- 'AR Transaction' => '',
- 'AR Transactions' => 'Alacak Ýþlemleri',
- 'About' => 'Program bilgileri',
- 'Above' => '',
- 'Access Control' => 'Giriþ Kontrol',
- 'Account' => 'Hesap',
- 'Account Number' => 'Hesap Numarasý',
- 'Account Number missing!' => 'Hesap Numarasý yok!',
- 'Account Type' => 'Hesap Türü',
- 'Account Type missing!' => 'Hesap Türü yok!',
- 'Account deleted!' => '',
- 'Account does not exist!' => '',
- 'Account saved!' => '',
- 'Accounting' => 'Muhasebe',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Accounts' => '',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => '',
- 'Add' => 'Ekle',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'Hesap Ekle',
- 'Add Assembly' => 'Grup Ekle',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'Alýcý Ekle',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => '',
- 'Add General Ledger Transaction' => 'Defteri Kebire Ýþlem Ekle',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'Parça Ekle',
- 'Add Pricegroup' => '',
- 'Add Project' => '',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => '',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Add Service' => 'Hizmet Ekle',
- 'Add Transaction' => 'Ýþlem Ekle',
- 'Add User' => 'Kullanýcý Ekle',
- 'Add Vendor' => 'Satýcý Ekle',
- 'Add Vendor Invoice' => '',
- 'Add Warehouse' => '',
- 'Address' => 'Adres',
- 'Administration' => 'Yönetim',
- 'Administrator' => 'Administrator',
- 'After Deduction' => '',
- 'All' => 'Hepsi',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'All Datasets up to date!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'Miktar',
- 'Amount Due' => '',
- 'Amount missing!' => '',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Invoice Number' => 'Fatura Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Are you sure you want to delete Order Number' => 'Sipariþ Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => 'Ýþlemi silmek istediðinizden emin misiniz? Fiþ: ',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'Gruplar',
- 'Assemblies restocked!' => '',
- 'Assembly' => '',
- 'Asset' => 'Aktif',
- 'Attachment' => '',
- 'Audit Control' => '',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => 'Yedekleme',
- 'Backup sent to' => '',
- 'Balance' => '',
- 'Balance Sheet' => 'Bilanço',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => '',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => '',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => '',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'ÞirketNo',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => '',
- 'COGS' => 'SMM',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => '',
- 'Cannot delete customer!' => '',
- 'Cannot delete default account!' => 'Öntanýmlý hesap silinmez!',
- 'Cannot delete invoice!' => '',
- 'Cannot delete item!' => '',
- 'Cannot delete order!' => '',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => '',
- 'Cannot delete vendor!' => '',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => '',
- 'Cannot post invoice!' => '',
- 'Cannot post payment for a closed period!' => '',
- 'Cannot post transaction for a closed period!' => '',
- 'Cannot post transaction!' => '',
- 'Cannot process payment for a closed period!' => '',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => '',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => '',
- 'Cannot save preferences!' => '',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '',
- 'Cash' => '',
- 'Cc' => '',
- 'Change' => '',
- 'Change Admin Password' => 'Yönetici Þifresini Deðiþtir',
- 'Change Password' => 'Þifre Deðiþtir',
- 'Character Set' => 'Karakter Seti',
- 'Chart of Accounts' => 'Hesap Planý',
- 'Check' => '',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'Düzenlemek için giriþ ismini týklayýn.',
- 'Close Books up to' => '',
- 'Closed' => '',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'Þirket',
- 'Company Name' => '',
- 'Compare to' => '...kýyasla',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'Onayla!',
- 'Connect to' => 'Baðlan',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Contra' => '',
- 'Copies' => '',
- 'Copy to COA' => '',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'Hesap Planý Oluþtur',
- 'Create Dataset' => 'Veriseti Oluþtur',
- 'Credit' => 'Alacak',
- 'Credit Limit' => 'Kredi Limiti',
- 'Curr' => '',
- 'Currency' => 'Para Birimi',
- 'Current' => '',
- 'Current Earnings' => '',
- 'Customer' => 'Alýcý',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => '',
- 'Customer missing!' => '',
- 'Customer not on file!' => '',
- 'Customer saved!' => '',
- 'Customers' => '',
- 'DBI not installed!' => 'DBJ kurulu deðil',
- 'DOB' => '',
- 'Database' => 'Veritabaný',
- 'Database Administration' => 'Veritabani Yonetimi',
- 'Database Driver not checked!' => 'Database Driver not checked!',
- 'Database Host' => 'Veritabaný Hostu',
- 'Database User missing!' => 'Veritabaný Kullanýcýsý yok!',
- 'Dataset' => 'Veriseti',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'Veriseti Yok!',
- 'Dataset updated!' => 'Dataset updated!',
- 'Date' => 'Tarih',
- 'Date Format' => 'Tarih Formatý',
- 'Date Paid' => 'Ödendiði Tarih',
- 'Date Received' => '',
- 'Date missing!' => '',
- 'Date received missing!' => '',
- 'Debit' => 'Borç',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Decimalplaces' => '',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => 'Sil',
- 'Delete Account' => 'Hesabý Sil',
- 'Delete Dataset' => 'Verisetini Sil',
- 'Delivery Date' => '',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => '',
- 'Description' => 'Açýklama',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => '',
- 'Directory' => 'Dizin',
- 'Discount' => 'Ýndirim',
- 'Done' => '',
- 'Drawing' => '',
- 'Driver' => 'Sürücü',
- 'Dropdown Limit' => '',
- 'Due Date' => 'Vade Tarihi',
- 'Due Date missing!' => 'Vade Tarihi yok!',
- 'E-mail' => 'Posta',
- 'E-mail Statement to' => '',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'E-mailed' => '',
- 'Edit' => '',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => 'Hesabý Düzenle',
- 'Edit Assembly' => 'Grubu Düzenle',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => '',
- 'Edit General Ledger Transaction' => 'Defteri Kebir Ýþlemini Düzenle',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => 'Parçayý Düzenle',
- 'Edit Preferences for' => 'Tercihleri Düzenle: ',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '',
- 'Edit Purchase Order' => 'Alýþ Sipariþini Düzenle',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '',
- 'Edit Sales Order' => 'Satýþ Sipariþini Düzenle',
- 'Edit Service' => 'Hizmeti Düzenle',
- 'Edit Template' => 'Þablonu Düzenle',
- 'Edit User' => 'Kullanýcý Bilgilerini Düzenle',
- 'Edit Vendor' => '',
- 'Edit Vendor Invoice' => '',
- 'Edit Warehouse' => '',
- 'Employee' => '',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => '',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Yerel ve yabancý para birimleri için 3 harfli tanýmlama giriniz yi týklayýnýz (USD:TRL:EUR)',
- 'Equity' => 'Sermaye',
- 'Excempt age <' => '',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Exchange rate for payment missing!' => '',
- 'Exchange rate missing!' => '',
- 'Existing Datasets' => 'Verisetleri',
- 'Expense' => 'Gider',
- 'Expense Account' => 'Gider Hesabý',
- 'Expense/Asset' => 'Gider/Varlýklar',
- 'Extended' => '',
- 'FX' => '',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'Foreign Exchange Gain' => 'Kur Kazancý',
- 'Foreign Exchange Loss' => 'Kur Kaybý',
- 'From' => 'Baþlangýç',
- 'GIFI' => '',
- 'GIFI deleted!' => '',
- 'GIFI missing!' => '',
- 'GIFI saved!' => '',
- 'GL Transaction' => '',
- 'General Ledger' => 'Defteri Kebir',
- 'Goods & Services' => '',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => '',
- 'Heading' => 'Baþlýk',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'Host',
- 'Hostname missing!' => 'Host yok!',
- 'IBAN' => '',
- 'ID' => '',
- 'Image' => '',
- 'In-line' => '',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'Raporla',
- 'Include in drop-down menus' => 'Seçmeli Menüye dahil et',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Vergiye tabi alýcý/satýcý belirlemek için bu hesabý alýcý/aatýcý formlarýna dahil ediniz?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'Gelir Tablosu',
- 'Incorrect Dataset version!' => '',
- 'Incorrect Password!' => 'Yanlýþ Þifre!',
- 'Increase' => '',
- 'Individual Items' => 'Farklý Kalemler',
- 'Internal Notes' => '',
- 'Inventory' => 'Stok',
- 'Inventory Account' => 'Stok Hesabý',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Bu grubu çýkarmadan önce stok miktarý sýfýr olmalýdýr',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Bu Parçayý çýkarmadan önce stok miktarý sýfýr olmalýdýr',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Invoice deleted!' => '',
- 'Invoice posted!' => '',
- 'Invoice processed!' => '',
- 'Invoices' => '',
- 'Is this a summary account to record' => 'Bu kaydedilecek hesap özeti mi',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Items' => '',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'LaTeX Templates' => '',
- 'Labor/Overhead' => '',
- 'Language' => 'Dil',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'Son Numaralar ve Öntanýmlý Hesaplar',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Uzakta baglantý yapmak istemiyorsanýz host ve port alanlarýný boþ býrakýnýz.',
- 'Liability' => 'Pasif',
- 'Licensed to' => 'Lisans Sahibi:',
- 'Line Total' => '',
- 'Link' => 'Baðla',
- 'Link Accounts' => 'Baðlý Hesaplar',
- 'List' => '',
- 'List Accounts' => '',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => '',
- 'List Languages' => '',
- 'List Price' => 'Liste Fiyatý',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'Ýþlemleri Listele',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'Giriþ',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => '',
- 'Make' => 'Marka',
- 'Manager' => '',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => '',
- 'Method' => '',
- 'Microfiche' => '',
- 'Model' => 'Model',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '',
- 'Name' => 'Ýsim',
- 'Name missing!' => '',
- 'New Templates' => 'Yeni Þablonlar',
- 'No' => 'Hayýr',
- 'No Database Drivers available!' => 'Veritabaný Sürücüsü yok!',
- 'No Dataset selected!' => 'Veriseti seçilmedi!',
- 'No email address for' => 'E-posta adresi yok: ',
- 'No.' => '',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'Notlar:',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => '',
- 'Nothing to delete!' => 'Nothing to delete!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number Format' => 'Rakam Formatý',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'O' => '',
- 'Obsolete' => 'Eski',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'On Hand' => 'Stok:',
- 'Open' => '',
- 'Oracle Database Administration' => 'Oracle Veritabaný Yönetimi',
- 'Order' => 'Sipariþ',
- 'Order Date' => 'Sipariþ Tarihi',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Entry' => 'Sipariþ Giriþi',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Order deleted!' => '',
- 'Order processed!' => '',
- 'Order saved!' => '',
- 'Orphaned' => '',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => '',
- 'Outstanding' => '',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'Paketleme Listesi',
- 'Packing List Date missing!' => '',
- 'Packing List Number missing!' => '',
- 'Packing Lists' => '',
- 'Paid' => 'Ödendi',
- 'Part' => 'Parça',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'Parçalar',
- 'Parts Inventory' => 'Parça Stoðu',
- 'Password' => 'Þifre',
- 'Password changed!' => 'Password changed!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'Borçlar',
- 'Payment' => 'Ödeme',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payment posted!' => '',
- 'Payments' => 'Ödemeler',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg Veritabaný Yönetimi',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'Telefon',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'Port',
- 'Port missing!' => 'Port yok!',
- 'Post' => '',
- 'Post as new' => '',
- 'Posted!' => '',
- 'Postscript' => '',
- 'Preferences' => 'Tercihler',
- 'Preferences saved!' => 'Tercihler kaydedildi!',
- 'Prepayment' => '',
- 'Price' => 'Fiyat',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => '',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'Yazýcý',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => '',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => '',
- 'Project Transactions' => '',
- 'Project deleted!' => '',
- 'Project not on file!' => '',
- 'Project saved!' => '',
- 'Projects' => '',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Qty' => 'Adet',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => '',
- 'Rate' => 'Oran',
- 'Rate missing!' => '',
- 'Recd' => '',
- 'Receipt' => '',
- 'Receipt posted!' => '',
- 'Receipts' => '',
- 'Receivables' => 'Alacaklar',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => '',
- 'Reconciliation Report' => '',
- 'Record in' => 'Kaydet',
- 'Reference' => '',
- 'Reference missing!' => '',
- 'Remaining' => '',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => '',
- 'Reports' => 'Raporlar',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'Talep tarihi:',
- 'Retained Earnings' => 'Net Dönem Karý (Zararý)',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'Satýþlar',
- 'Sales Invoice' => '',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'Kaydet',
- 'Save Pricelist' => '',
- 'Save as new' => '',
- 'Save to File' => 'Dosyaya Kaydet',
- 'Screen' => '',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Select from one of the names below' => '',
- 'Select from one of the projects below' => '',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => 'Satýþ Fiyatý',
- 'Send by E-Mail' => 'E-postayla gönder',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'servis',
- 'Service Items' => 'Hizmet Kalemleri',
- 'Services' => 'Servisler',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Þablon Kur',
- 'Ship' => '',
- 'Ship Merchandise' => '',
- 'Ship to' => '',
- 'Ship via' => '',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'Kýsa',
- 'Signature' => 'Ýmza',
- 'Source' => 'Kaynak',
- 'Spoolfile' => '',
- 'Standard' => '',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => '',
- 'Statement Balance' => '',
- 'Statement sent to' => '',
- 'Statements sent to printer!' => '',
- 'Stock' => '',
- 'Stock Assembly' => 'Grubu Stokla',
- 'Stylesheet' => 'Düzen Sayfasý',
- 'Sub-contract GIFI' => '',
- 'Subject' => '',
- 'Subtotal' => 'Aratoplam',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => '',
- 'System Defaults' => '',
- 'Tax' => 'Vergi',
- 'Tax Accounts' => 'Vergi Hesaplarý',
- 'Tax Included' => 'Vergi Dahil',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => '',
- 'Tax paid' => '',
- 'Taxable' => 'Vergiye tabi',
- 'Template saved!' => '',
- 'Templates' => 'Þablonlar',
- 'Terms' => 'Þartlar',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'Aþaðýdaki Verisetleri kullanýlmamaktadýr ve silinebilir',
- 'The following Datasets need to be updated' => 'The following Datasets need to be updated',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Mevcut fiþ bilgileri için bu bir ön kontroldür. Bu aþamada hiçbirþey oluþturulmaz ve silinemez',
- 'Till' => '',
- 'To' => 'Bitiþ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Gruba yeni kullanýcý eklemek için, giriþ ismini deðiþtirin ve kaydedin. Yeni kullanýcý yeni giriþ altýnda ayný parametrelerle kaydedilecektir.',
- 'Top Level' => '',
- 'Total' => 'Toplam',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'Ýþlem Tarihi yok!',
- 'Transaction deleted!' => '',
- 'Transaction posted!' => '',
- 'Transaction reversal enforced for all dates' => '',
- 'Transaction reversal enforced up to' => '',
- 'Transactions' => 'Ýþlemler',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'Proforma Bilanço',
- 'Type of Business' => '',
- 'Unit' => 'Birim',
- 'Unit of measure' => 'Ölçme Birimi',
- 'Unlock System' => 'Unlock System',
- 'Update' => '',
- 'Update Dataset' => 'Update Dataset',
- 'Updated' => '',
- 'Upgrading to Version' => '',
- 'Use Templates' => 'Þablon Kullan',
- 'User' => 'Kullanýcý',
- 'User deleted!' => 'User deleted!',
- 'User saved!' => 'User saved!',
- 'Valid until' => '',
- 'Vendor' => 'Satýcý',
- 'Vendor History' => '',
- 'Vendor Invoice' => '',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => '',
- 'Vendor missing!' => '',
- 'Vendor not on file!' => '',
- 'Vendor saved!' => '',
- 'Vendors' => '',
- 'Version' => 'Versiyon',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => 'Aðýrlýk',
- 'Weight Unit' => 'Aðýrlýk Birimi',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Evet',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'Ýsim girmediniz!',
- 'You must enter a host and port for local and remote connections!' => 'Yerel ve uzak baðlantýlar için bir host ve port girmek zorundasýnýz!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => '',
- 'days' => 'gün. ',
- 'does not exist' => 'mevcut deðil',
- 'done' => '',
- 'ea' => 'ad',
- 'for Period' => 'Dönem:',
- 'is already a member!' => 'üyedir!',
- 'is not a member!' => '',
- 'localhost' => 'Yerelhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'baþarýyla oluþturuldu!',
- 'successfully deleted!' => 'baþarýyla silindi!',
- 'website' => 'Websitesi',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/am b/sql-ledger/locale/tr/am
deleted file mode 100644
index b7dec3c..0000000
--- a/sql-ledger/locale/tr/am
+++ /dev/null
@@ -1,166 +0,0 @@
-$self{texts} = {
- 'AP' => 'Borçlar',
- 'AR' => 'Alacaklar',
- 'About' => 'Program bilgileri',
- 'Account' => 'Hesap',
- 'Account Number' => 'Hesap Numarasý',
- 'Account Number missing!' => 'Hesap Numarasý yok!',
- 'Account Type' => 'Hesap Türü',
- 'Account Type missing!' => 'Hesap Türü yok!',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Account' => 'Hesap Ekle',
- 'Address' => 'Adres',
- 'Asset' => 'Aktif',
- 'Business Number' => 'ÞirketNo',
- 'COGS' => 'SMM',
- 'Cannot delete default account!' => 'Öntanýmlý hesap silinmez!',
- 'Character Set' => 'Karakter Seti',
- 'Chart of Accounts' => 'Hesap Planý',
- 'Company' => 'Þirket',
- 'Continue' => 'Devam',
- 'Credit' => 'Alacak',
- 'Database Host' => 'Veritabaný Hostu',
- 'Dataset' => 'Veriseti',
- 'Date Format' => 'Tarih Formatý',
- 'Debit' => 'Borç',
- 'Delete' => 'Sil',
- 'Delete Account' => 'Hesabý Sil',
- 'Description' => 'Açýklama',
- 'Discount' => 'Ýndirim',
- 'E-mail' => 'Posta',
- 'Edit Account' => 'Hesabý Düzenle',
- 'Edit Preferences for' => 'Tercihleri Düzenle: ',
- 'Edit Template' => 'Þablonu Düzenle',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Yerel ve yabancý para birimleri için 3 harfli tanýmlama giriniz yi týklayýnýz (USD:TRL:EUR)',
- 'Equity' => 'Sermaye',
- 'Expense' => 'Gider',
- 'Expense Account' => 'Gider Hesabý',
- 'Expense/Asset' => 'Gider/Varlýklar',
- 'Fax' => 'Faks',
- 'Foreign Exchange Gain' => 'Kur Kazancý',
- 'Foreign Exchange Loss' => 'Kur Kaybý',
- 'Heading' => 'Baþlýk',
- 'Include in drop-down menus' => 'Seçmeli Menüye dahil et',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Vergiye tabi alýcý/satýcý belirlemek için bu hesabý alýcý/aatýcý formlarýna dahil ediniz?',
- 'Inventory' => 'Stok',
- 'Inventory Account' => 'Stok Hesabý',
- 'Is this a summary account to record' => 'Bu kaydedilecek hesap özeti mi',
- 'Language' => 'Dil',
- 'Last Numbers & Default Accounts' => 'Son Numaralar ve Öntanýmlý Hesaplar',
- 'Liability' => 'Pasif',
- 'Licensed to' => 'Lisans Sahibi:',
- 'Link' => 'Baðla',
- 'Name' => 'Ýsim',
- 'No' => 'Hayýr',
- 'No email address for' => 'E-posta adresi yok: ',
- 'Number' => 'Numara',
- 'Number Format' => 'Rakam Formatý',
- 'Parts Inventory' => 'Parça Stoðu',
- 'Password' => 'Þifre',
- 'Payables' => 'Borçlar',
- 'Payment' => 'Ödeme',
- 'Phone' => 'Telefon',
- 'Preferences saved!' => 'Tercihler kaydedildi!',
- 'Printer' => 'Yazýcý',
- 'Rate' => 'Oran',
- 'Receivables' => 'Alacaklar',
- 'Retained Earnings' => 'Net Dönem Karý (Zararý)',
- 'Save' => 'Kaydet',
- 'Service Items' => 'Hizmet Kalemleri',
- 'Signature' => 'Ýmza',
- 'Stylesheet' => 'Düzen Sayfasý',
- 'Tax' => 'Vergi',
- 'Tax Accounts' => 'Vergi Hesaplarý',
- 'User' => 'Kullanýcý',
- 'Version' => 'Versiyon',
- 'Weight Unit' => 'Aðýrlýk Birimi',
- 'Yes' => 'Evet',
- 'localhost' => 'Yerelhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'hesap_ekle' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'devam' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'sil' => 'delete',
- 'edit' => 'edit',
- 'hesabý_düzenle' => 'edit_account',
- 'kaydet' => 'save',
- 'save_as_new' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ap b/sql-ledger/locale/tr/ap
deleted file mode 100644
index 9619337..0000000
--- a/sql-ledger/locale/tr/ap
+++ /dev/null
@@ -1,123 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Borç Ýþlemleri',
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Transaction' => 'Ýþlemi silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Date' => 'Tarih',
- 'Date Paid' => 'Ödendiði Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'Due Date missing!' => 'Vade Tarihi yok!',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order' => 'Sipariþ',
- 'Order Number' => 'Sipariþ No',
- 'Paid' => 'Ödendi',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payments' => 'Ödemeler',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'Tax Included' => 'Vergi Dahil',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Vendor' => 'Satýcý',
- 'Yes' => 'Evet',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'update' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ar b/sql-ledger/locale/tr/ar
deleted file mode 100644
index 0852f97..0000000
--- a/sql-ledger/locale/tr/ar
+++ /dev/null
@@ -1,121 +0,0 @@
-$self{texts} = {
- 'AR Transactions' => 'Alacak Ýþlemleri',
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Transaction' => 'Ýþlemi silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Date Paid' => 'Ödendiði Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'Due Date missing!' => 'Vade Tarihi yok!',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order' => 'Sipariþ',
- 'Order Number' => 'Sipariþ No',
- 'Paid' => 'Ödendi',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payments' => 'Ödemeler',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'Tax Included' => 'Vergi Dahil',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Yes' => 'Evet',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'update' => 'update',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/arap b/sql-ledger/locale/tr/arap
deleted file mode 100644
index bcc76e4..0000000
--- a/sql-ledger/locale/tr/arap
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Address' => 'Adres',
- 'Continue' => 'Devam',
- 'Description' => 'Açýklama',
- 'Number' => 'Numara',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'devam' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/arapprn b/sql-ledger/locale/tr/arapprn
deleted file mode 100644
index 7c9dcf8..0000000
--- a/sql-ledger/locale/tr/arapprn
+++ /dev/null
@@ -1,23 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Amount' => 'Miktar',
- 'Continue' => 'Devam',
- 'Date' => 'Tarih',
- 'Source' => 'Kaynak',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'devam' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/bp b/sql-ledger/locale/tr/bp
deleted file mode 100644
index 2941d77..0000000
--- a/sql-ledger/locale/tr/bp
+++ /dev/null
@@ -1,39 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Confirm!' => 'Onayla!',
- 'Continue' => 'Devam',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'From' => 'Baþlangýç',
- 'Invoice' => 'Fatura',
- 'Invoice Number' => 'Fatura No',
- 'Order' => 'Sipariþ',
- 'Order Number' => 'Sipariþ No',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'To' => 'Bitiþ',
- 'Vendor' => 'Satýcý',
- 'Yes' => 'Evet',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'devam' => 'continue',
- 'print' => 'print',
- 'remove' => 'remove',
- 'select_all' => 'select_all',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ca b/sql-ledger/locale/tr/ca
deleted file mode 100644
index e9d79fb..0000000
--- a/sql-ledger/locale/tr/ca
+++ /dev/null
@@ -1,47 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Chart of Accounts' => 'Hesap Planý',
- 'Credit' => 'Alacak',
- 'Date' => 'Tarih',
- 'Debit' => 'Borç',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Description' => 'Açýklama',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'List Transactions' => 'Ýþlemleri Listele',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Subtotal' => 'Aratoplam',
- 'To' => 'Bitiþ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'Ýþlemleri_listele' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/cp b/sql-ledger/locale/tr/cp
deleted file mode 100644
index 392302a..0000000
--- a/sql-ledger/locale/tr/cp
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'AP' => 'Borçlar',
- 'AR' => 'Alacaklar',
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Address' => 'Adres',
- 'All' => 'Hepsi',
- 'Amount' => 'Miktar',
- 'Continue' => 'Devam',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Description' => 'Açýklama',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Invoice' => 'Fatura',
- 'Number' => 'Numara',
- 'Payment' => 'Ödeme',
- 'Source' => 'Kaynak',
- 'Vendor' => 'Satýcý',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'devam' => 'continue',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ct b/sql-ledger/locale/tr/ct
deleted file mode 100644
index 92e6844..0000000
--- a/sql-ledger/locale/tr/ct
+++ /dev/null
@@ -1,106 +0,0 @@
-$self{texts} = {
- 'AP Transactions' => 'Borç Ýþlemleri',
- 'AR Transactions' => 'Alacak Ýþlemleri',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Customer' => 'Alýcý Ekle',
- 'Add Vendor' => 'Satýcý Ekle',
- 'Address' => 'Adres',
- 'All' => 'Hepsi',
- 'Amount' => 'Miktar',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Discount' => 'Ýndirim',
- 'E-mail' => 'Posta',
- 'Fax' => 'Faks',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Invoice' => 'Fatura',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Language' => 'Dil',
- 'Name' => 'Ýsim',
- 'Notes' => 'Notlar:',
- 'Number' => 'Numara',
- 'Order' => 'Sipariþ',
- 'Phone' => 'Telefon',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Qty' => 'Adet',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'Save' => 'Kaydet',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sell Price' => 'Satýþ Fiyatý',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'Tax Included' => 'Vergi Dahil',
- 'Taxable' => 'Vergiye tabi',
- 'Terms' => 'Þartlar',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Unit' => 'Birim',
- 'days' => 'gün. ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'alýcý_ekle' => 'add_customer',
- 'satýcý_ekle' => 'add_vendor',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'pricelist' => 'pricelist',
- 'satýnalma_sipariþi' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'satýþ_sipariþi' => 'sales_order',
- 'kaydet' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/gl b/sql-ledger/locale/tr/gl
deleted file mode 100644
index 74152c4..0000000
--- a/sql-ledger/locale/tr/gl
+++ /dev/null
@@ -1,104 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add General Ledger Transaction' => 'Defteri Kebire Ýþlem Ekle',
- 'Address' => 'Adres',
- 'All' => 'Hepsi',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Transaction' => 'Ýþlemi silmek istediðinizden emin misiniz? Fiþ: ',
- 'Asset' => 'Aktif',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Continue' => 'Devam',
- 'Credit' => 'Alacak',
- 'Date' => 'Tarih',
- 'Debit' => 'Borç',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Edit General Ledger Transaction' => 'Defteri Kebir Ýþlemini Düzenle',
- 'Equity' => 'Sermaye',
- 'Expense' => 'Gider',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'General Ledger' => 'Defteri Kebir',
- 'Include in Report' => 'Raporla',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Liability' => 'Pasif',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Reports' => 'Raporlar',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'To' => 'Bitiþ',
- 'Transaction Date missing!' => 'Ýþlem Tarihi yok!',
- 'Yes' => 'Evet',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'gl_transaction' => 'gl_transaction',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/hr b/sql-ledger/locale/tr/hr
deleted file mode 100644
index a66b168..0000000
--- a/sql-ledger/locale/tr/hr
+++ /dev/null
@@ -1,63 +0,0 @@
-$self{texts} = {
- 'AP' => 'Borçlar',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Address' => 'Adres',
- 'Administrator' => 'Administrator',
- 'All' => 'Hepsi',
- 'Amount' => 'Miktar',
- 'Continue' => 'Devam',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'E-mail' => 'Posta',
- 'Expense' => 'Gider',
- 'Include in Report' => 'Raporla',
- 'Login' => 'Giriþ',
- 'Name' => 'Ýsim',
- 'Notes' => 'Notlar:',
- 'Number' => 'Numara',
- 'Rate' => 'Oran',
- 'Sales' => 'Satýþlar',
- 'Save' => 'Kaydet',
- 'User' => 'Kullanýcý',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'kaydet' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ic b/sql-ledger/locale/tr/ic
deleted file mode 100644
index ea90274..0000000
--- a/sql-ledger/locale/tr/ic
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add' => 'Ekle',
- 'Add Assembly' => 'Grup Ekle',
- 'Add Part' => 'Parça Ekle',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Add Service' => 'Hizmet Ekle',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Assemblies' => 'Gruplar',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'COGS' => 'SMM',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Edit Assembly' => 'Grubu Düzenle',
- 'Edit Part' => 'Parçayý Düzenle',
- 'Edit Service' => 'Hizmeti Düzenle',
- 'Expense' => 'Gider',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Individual Items' => 'Farklý Kalemler',
- 'Inventory' => 'Stok',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'Bu grubu çýkarmadan önce stok miktarý sýfýr olmalýdýr',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'Bu Parçayý çýkarmadan önce stok miktarý sýfýr olmalýdýr',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Link Accounts' => 'Baðlý Hesaplar',
- 'List Price' => 'Liste Fiyatý',
- 'Make' => 'Marka',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Model' => 'Model',
- 'Name' => 'Ýsim',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Obsolete' => 'Eski',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'On Hand' => 'Stok:',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Part' => 'Parça',
- 'Parts' => 'Parçalar',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Qty' => 'Adet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'Save' => 'Kaydet',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sell Price' => 'Satýþ Fiyatý',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Services' => 'Servisler',
- 'Short' => 'Kýsa',
- 'Stock Assembly' => 'Grubu Stokla',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'To' => 'Bitiþ',
- 'Unit' => 'Birim',
- 'Unit of measure' => 'Ölçme Birimi',
- 'Vendor' => 'Satýcý',
- 'Weight' => 'Aðýrlýk',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'days' => 'gün. ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'grup_ekle' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'parça_ekle' => 'add_part',
- 'hizmet_ekle' => 'add_service',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'grubu_düzenle' => 'edit_assembly',
- 'parçayý_düzenle' => 'edit_part',
- 'hizmeti_düzenle' => 'edit_service',
- 'kaydet' => 'save',
- 'save_as_new' => 'save_as_new',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/io b/sql-ledger/locale/tr/io
deleted file mode 100644
index e0b330e..0000000
--- a/sql-ledger/locale/tr/io
+++ /dev/null
@@ -1,87 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Address' => 'Adres',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Description' => 'Açýklama',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Part' => 'Parça',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Qty' => 'Adet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Subtotal' => 'Aratoplam',
- 'To' => 'Bitiþ',
- 'Unit' => 'Birim',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'devam' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ir b/sql-ledger/locale/tr/ir
deleted file mode 100644
index 3a2f5fc..0000000
--- a/sql-ledger/locale/tr/ir
+++ /dev/null
@@ -1,145 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Invoice Number' => 'Fatura Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Language' => 'Dil',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Part' => 'Parça',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payments' => 'Ödemeler',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Qty' => 'Adet',
- 'Record in' => 'Kaydet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax Included' => 'Vergi Dahil',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Unit' => 'Birim',
- 'Vendor' => 'Satýcý',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'Yes' => 'Evet',
- 'ea' => 'ad',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'satýnalma_sipariþi' => 'purchase_order',
- 'update' => 'update',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/is b/sql-ledger/locale/tr/is
deleted file mode 100644
index e21ed9f..0000000
--- a/sql-ledger/locale/tr/is
+++ /dev/null
@@ -1,150 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Invoice Number' => 'Fatura Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Part' => 'Parça',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payments' => 'Ödemeler',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Qty' => 'Adet',
- 'Record in' => 'Kaydet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax Included' => 'Vergi Dahil',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Unit' => 'Birim',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'Yes' => 'Evet',
- 'ea' => 'ad',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'posta' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'satýþ_sipariþi' => 'sales_order',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/login b/sql-ledger/locale/tr/login
deleted file mode 100644
index 6cbdf75..0000000
--- a/sql-ledger/locale/tr/login
+++ /dev/null
@@ -1,20 +0,0 @@
-$self{texts} = {
- 'Company' => 'Þirket',
- 'Continue' => 'Devam',
- 'Incorrect Password!' => 'Yanlýþ Þifre!',
- 'Login' => 'Giriþ',
- 'Name' => 'Ýsim',
- 'Password' => 'Þifre',
- 'Version' => 'Versiyon',
- 'You did not enter a name!' => 'Ýsim girmediniz!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'giriþ' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/menu b/sql-ledger/locale/tr/menu
deleted file mode 100644
index f96a40a..0000000
--- a/sql-ledger/locale/tr/menu
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'AP' => 'Borçlar',
- 'AP Aging' => 'Gecikmiþ Borçlar',
- 'AR' => 'Alacaklar',
- 'AR Aging' => 'Gecikmiþ Alacaklar',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Account' => 'Hesap Ekle',
- 'Add Assembly' => 'Grup Ekle',
- 'Add Customer' => 'Alýcý Ekle',
- 'Add Part' => 'Parça Ekle',
- 'Add Service' => 'Hizmet Ekle',
- 'Add Transaction' => 'Ýþlem Ekle',
- 'Add Vendor' => 'Satýcý Ekle',
- 'Assemblies' => 'Gruplar',
- 'Backup' => 'Yedekleme',
- 'Balance Sheet' => 'Bilanço',
- 'Chart of Accounts' => 'Hesap Planý',
- 'Description' => 'Açýklama',
- 'General Ledger' => 'Defteri Kebir',
- 'Income Statement' => 'Gelir Tablosu',
- 'Invoice' => 'Fatura',
- 'Language' => 'Dil',
- 'Order Entry' => 'Sipariþ Giriþi',
- 'Packing List' => 'Paketleme Listesi',
- 'Parts' => 'Parçalar',
- 'Payment' => 'Ödeme',
- 'Payments' => 'Ödemeler',
- 'Preferences' => 'Tercihler',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Reports' => 'Raporlar',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'Save to File' => 'Dosyaya Kaydet',
- 'Send by E-Mail' => 'E-postayla gönder',
- 'Services' => 'Servisler',
- 'Stock Assembly' => 'Grubu Stokla',
- 'Stylesheet' => 'Düzen Sayfasý',
- 'Transactions' => 'Ýþlemler',
- 'Trial Balance' => 'Proforma Bilanço',
- 'Version' => 'Versiyon',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/oe b/sql-ledger/locale/tr/oe
deleted file mode 100644
index 2c49d13..0000000
--- a/sql-ledger/locale/tr/oe
+++ /dev/null
@@ -1,181 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Order Number' => 'Sipariþ Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Confirm!' => 'Onayla!',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Edit Purchase Order' => 'Alýþ Sipariþini Düzenle',
- 'Edit Sales Order' => 'Satýþ Sipariþini Düzenle',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Include in Report' => 'Raporla',
- 'Invoice' => 'Fatura',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order' => 'Sipariþ',
- 'Order Date' => 'Sipariþ Tarihi',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Part' => 'Parça',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Purchase Orders' => 'Satýnalma Sipariþleri',
- 'Qty' => 'Adet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Sales Orders' => 'Satýþ Sipariþleri',
- 'Save' => 'Kaydet',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'Tax Included' => 'Vergi Dahil',
- 'Terms' => 'Þartlar',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Unit' => 'Birim',
- 'Vendor' => 'Satýcý',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'Yes' => 'Evet',
- 'days' => 'gün. ',
- 'ea' => 'ad',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'done' => 'done',
- 'posta' => 'e_mail',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'satýnalma_sipariþi' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'satýþ_sipariþi' => 'sales_order',
- 'kaydet' => 'save',
- 'save_as_new' => 'save_as_new',
- 'ship_to' => 'ship_to',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/pe b/sql-ledger/locale/tr/pe
deleted file mode 100644
index c0d7700..0000000
--- a/sql-ledger/locale/tr/pe
+++ /dev/null
@@ -1,50 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'All' => 'Hepsi',
- 'Continue' => 'Devam',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Language' => 'Dil',
- 'Number' => 'Numara',
- 'Save' => 'Kaydet',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'kaydet' => 'save',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/pos b/sql-ledger/locale/tr/pos
deleted file mode 100644
index 8e1c0b6..0000000
--- a/sql-ledger/locale/tr/pos
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Continue' => 'Devam',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Exchange Rate' => 'Döviz Kuru',
- 'From' => 'Baþlangýç',
- 'Language' => 'Dil',
- 'Number' => 'Numara',
- 'Paid' => 'Ödendi',
- 'Price' => 'Fiyat',
- 'Qty' => 'Adet',
- 'Record in' => 'Kaydet',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Unit' => 'Birim',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'post' => 'post',
- 'print' => 'print',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/ps b/sql-ledger/locale/tr/ps
deleted file mode 100644
index 6324f68..0000000
--- a/sql-ledger/locale/tr/ps
+++ /dev/null
@@ -1,202 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Gecikmiþ Borçlar',
- 'AR Aging' => 'Gecikmiþ Alacaklar',
- 'AR Transactions' => 'Alacak Ýþlemleri',
- 'Account' => 'Hesap',
- 'Account Number' => 'Hesap Numarasý',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Add Purchase Order' => 'Satýnalma Sip. Ekle',
- 'Add Sales Order' => 'Satýþ Sipariþi Ekle',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Are you sure you want to delete Invoice Number' => 'Fatura Numarasýný silmek istediðinizden emin misiniz? Fiþ: ',
- 'Are you sure you want to delete Transaction' => 'Ýþlemi silmek istediðinizden emin misiniz? Fiþ: ',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Balance Sheet' => 'Bilanço',
- 'Compare to' => '...kýyasla',
- 'Confirm!' => 'Onayla!',
- 'Contact' => 'Kontak',
- 'Continue' => 'Devam',
- 'Credit' => 'Alacak',
- 'Credit Limit' => 'Kredi Limiti',
- 'Currency' => 'Para Birimi',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Date Paid' => 'Ödendiði Tarih',
- 'Debit' => 'Borç',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Delete' => 'Sil',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'Due Date missing!' => 'Vade Tarihi yok!',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Exch' => 'D.Kuru',
- 'Exchange Rate' => 'Döviz Kuru',
- 'Fax' => 'Faks',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Heading' => 'Baþlýk',
- 'Include in Report' => 'Raporla',
- 'Income Statement' => 'Gelir Tablosu',
- 'Invoice' => 'Fatura',
- 'Invoice Date' => 'Fatura Tarihi',
- 'Invoice Date missing!' => 'Fatura Tarihi yok!',
- 'Invoice Number' => 'Fatura No',
- 'Invoice Number missing!' => 'Fatura Numarasý yok!',
- 'Item not on file!' => 'Bu kalem dosyada yok!',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Language' => 'Dil',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Notes' => 'Notlar:',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Number missing in Row' => 'Sýrada Numara yok!',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order' => 'Sipariþ',
- 'Order Date missing!' => 'Sipariþ Tarihi yok!',
- 'Order Number' => 'Sipariþ No',
- 'Order Number missing!' => 'Sipariþ Numarasý yok!',
- 'Packing List' => 'Paketleme Listesi',
- 'Paid' => 'Ödendi',
- 'Part' => 'Parça',
- 'Payment date missing!' => 'Ödeme Tarihi yok',
- 'Payments' => 'Ödemeler',
- 'Phone' => 'Telefon',
- 'Price' => 'Fiyat',
- 'Purchase Order' => 'Satýnalma Sipariþi',
- 'Qty' => 'Adet',
- 'Record in' => 'Kaydet',
- 'Required by' => 'Talep tarihi:',
- 'Sales Order' => 'Satýþ Sipariþi',
- 'Select from one of the items below' => 'Aþaðýdaki kalemlerden birini seç',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Service' => 'servis',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'Tax Included' => 'Vergi Dahil',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Trial Balance' => 'Proforma Bilanço',
- 'Unit' => 'Birim',
- 'Vendor' => 'Satýcý',
- 'What type of item is this?' => 'Bu ne çeþit bir kalemdir?',
- 'Yes' => 'Evet',
- 'ea' => 'ad',
- 'for Period' => 'Dönem:',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ar_transaction' => 'ar_transaction',
- 'devam' => 'continue',
- 'sil' => 'delete',
- 'posta' => 'e_mail',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'satýþ_sipariþi' => 'sales_order',
- 'select_all' => 'select_all',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'evet' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/pw b/sql-ledger/locale/tr/pw
deleted file mode 100644
index 298dcb9..0000000
--- a/sql-ledger/locale/tr/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Devam',
- 'Password' => 'Þifre',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'devam' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/rc b/sql-ledger/locale/tr/rc
deleted file mode 100644
index d679afb..0000000
--- a/sql-ledger/locale/tr/rc
+++ /dev/null
@@ -1,55 +0,0 @@
-$self{texts} = {
- 'Account' => 'Hesap',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Continue' => 'Devam',
- 'Date' => 'Tarih',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Description' => 'Açýklama',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Payment' => 'Ödeme',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Source' => 'Kaynak',
- 'To' => 'Bitiþ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'devam' => 'continue',
- 'done' => 'done',
- 'select_all' => 'select_all',
- 'update' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tr/rp b/sql-ledger/locale/tr/rp
deleted file mode 100644
index 6e9e179..0000000
--- a/sql-ledger/locale/tr/rp
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Gecikmiþ Borçlar',
- 'AR Aging' => 'Gecikmiþ Alacaklar',
- 'Account' => 'Hesap',
- 'Account Number' => 'Hesap Numarasý',
- 'Accounting Menu' => 'Muhasebe Menüsü',
- 'Address' => 'Adres',
- 'Amount' => 'Miktar',
- 'Apr' => 'Nis',
- 'April' => 'Nisan',
- 'Aug' => 'Aðu',
- 'August' => 'Aðustos',
- 'Balance Sheet' => 'Bilanço',
- 'Compare to' => '...kýyasla',
- 'Continue' => 'Devam',
- 'Credit' => 'Alacak',
- 'Customer' => 'Alýcý',
- 'Date' => 'Tarih',
- 'Debit' => 'Borç',
- 'Dec' => 'Ara',
- 'December' => 'Aralýk',
- 'Description' => 'Açýklama',
- 'Due Date' => 'Vade Tarihi',
- 'E-mail' => 'Posta',
- 'E-mail address missing!' => 'Posta adresi yok!',
- 'Feb' => 'Þub',
- 'February' => 'Þubat',
- 'From' => 'Baþlangýç',
- 'Heading' => 'Baþlýk',
- 'Include in Report' => 'Raporla',
- 'Income Statement' => 'Gelir Tablosu',
- 'Invoice' => 'Fatura',
- 'Jan' => 'Oca',
- 'January' => 'Ocak',
- 'Jul' => 'Tem',
- 'July' => 'Temmuz',
- 'Jun' => 'Haz',
- 'June' => 'Haziran',
- 'Language' => 'Dil',
- 'Mar' => 'Mar',
- 'March' => 'Mart',
- 'May' => 'May',
- 'May ' => 'Mayýs',
- 'Nov' => 'Kas',
- 'November' => 'Kasým',
- 'Number' => 'Numara',
- 'Oct' => 'Eki',
- 'October' => 'Ekim',
- 'Order' => 'Sipariþ',
- 'Payments' => 'Ödemeler',
- 'Sep' => 'Eyl',
- 'September' => 'Eylül',
- 'Source' => 'Kaynak',
- 'Subtotal' => 'Aratoplam',
- 'Tax' => 'Vergi',
- 'To' => 'Bitiþ',
- 'Total' => 'Toplam',
- 'Trial Balance' => 'Proforma Bilanço',
- 'Vendor' => 'Satýcý',
- 'for Period' => 'Dönem:',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'devam' => 'continue',
- 'posta' => 'e_mail',
- 'print' => 'print',
- 'select_all' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/COPYING b/sql-ledger/locale/tw_big5/COPYING
deleted file mode 100644
index 11f75a2..0000000
--- a/sql-ledger/locale/tw_big5/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Traditional Chinese (Big5) texts:
-#
-# Author: Carfield Yim <carfield@carfield.com.hk>
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/tw_big5/LANGUAGE b/sql-ledger/locale/tw_big5/LANGUAGE
deleted file mode 100644
index 0b77c63..0000000
--- a/sql-ledger/locale/tw_big5/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Chinese BIG5 (Traditional)
diff --git a/sql-ledger/locale/tw_big5/admin b/sql-ledger/locale/tw_big5/admin
deleted file mode 100644
index c33576a..0000000
--- a/sql-ledger/locale/tw_big5/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Åv­­±±¨î',
- 'Accounting' => '·|­p',
- 'Add User' => '·s¼W¨Ï¥ÎªÌ',
- 'Address' => '¦a§}',
- 'Administration' => '¨t²ÎºÞ²z',
- 'Administrator' => 'ºÞ²z¤H',
- 'All Datasets up to date!' => '©Ò¦³¸ê®Æ¬Ò¤w§ó·s!',
- 'Cannot create Lock!' => '¤£¯à«Ø¥ßÂê',
- 'Change Admin Password' => '§ó§ïºÞ²z­û±K½X',
- 'Change Password' => '§ó§ï±K½X',
- 'Character Set' => '¦r¤¸¶°',
- 'Click on login name to edit!' => '½Ð«öµn¤J¦WºÙ¥H¶i¦æ­×§ï!',
- 'Company' => '¤½¥q',
- 'Connect to' => '³sµ²¨ì',
- 'Continue' => 'Ä~Äò',
- 'Create Chart of Accounts' => '«Ø¥ß±b¤á¹Ïªí',
- 'Create Dataset' => '«Ø¥ß¸ê®Æ¶°',
- 'DBI not installed!' => '¥¼¦w¸Ë DBI ¼Ò²Õ!',
- 'Database' => '¸ê®Æ®w',
- 'Database Administration' => '¸ê®Æ®wºÞ²z',
- 'Database Driver not checked!' => '¥¼¿ï©w¸ê®Æ®wÅX°Êµ{¦¡!',
- 'Database User missing!' => '¥¼«ü©ú¸ê®Æ®w¨Ï¥ÎªÌ!',
- 'Dataset' => '¸ê®Æ¶°',
- 'Dataset missing!' => '¥¼«ü©ú¸ê®Æ¶°!',
- 'Dataset updated!' => '¤x§ó·s¸ê®Æ¶°',
- 'Date Format' => '¤é´Á®æ¦¡',
- 'Delete' => '§R°£',
- 'Delete Dataset' => '§R°£¸ê®Æ¶°',
- 'Directory' => '¥Ø¿ý',
- 'Driver' => 'ÅX°Êµ{¦¡',
- 'Dropdown Limit' => '­­¨î',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'Edit User' => '½s¿è¨Ï¥ÎªÌ',
- 'Existing Datasets' => '¬J¦³ªº¸ê®Æ¶°',
- 'Fax' => '¶Ç¯u',
- 'Host' => '¥D¾÷',
- 'Hostname missing!' => '¥¼«ü©ú¥D¾÷¦WºÙ!',
- 'Language' => '»y¨¥',
- 'Leave host and port field empty unless you want to make a remote connection.' => '°£«D±z·Q­n¶i¦æ»·ºÝ³s½u, §_«h½Ð±N¥D¾÷¤Î°ð¸¹¯d¥Õ.',
- 'Lock System' => '¨t²ÎÂê¤W',
- 'Lockfile created!' => '¤x«Ø¥ß¤WÂêÀÉ®×!',
- 'Lockfile removed!' => '¤x²¾°£¤WÂêÀÉ®×!',
- 'Login' => 'µn¤J',
- 'Login name missing!' => '¥¼«ü©úµn¤J¦W¦r',
- 'Logout' => 'µn¥X',
- 'Manager' => '¸g²z',
- 'Menu Width' => '¿ï¾Ü³æ¼e«×',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => '¦WºÙ',
- 'New Templates' => '·s¼W¼Òª©',
- 'No Database Drivers available!' => '¨S¦³¥i¥ÎªºÅX°Êµ{¦¡!',
- 'No Dataset selected!' => '¥¼¿ï©w¸ê®Æ¶°!',
- 'Nothing to delete!' => '¨S¦³¥i§R°£ªº¶µ¥Ø',
- 'Number Format' => '¼Æ¦r®æ¦¡',
- 'Oracle Database Administration' => 'Oracle ¸ê®Æ®wºÞ²z',
- 'Password' => '±K½X',
- 'Password changed!' => '±K½X¤x§ï',
- 'Pg Database Administration' => 'Pg ¸ê®Æ®wºÞ²z',
- 'PgPP Database Administration' => 'PgPP¸ê®Æ®wºÞ²z',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Port' => '°ð¸¹',
- 'Port missing!' => '¥¼«ü©ú°ð¸¹!',
- 'Printer' => '¦Lªí¾÷',
- 'Save' => 'Àx¦s',
- 'Setup Templates' => '³]©w¼Òª©',
- 'Signature' => 'ñ¦W',
- 'Stylesheet' => '¼Ë¦¡ªí',
- 'Templates' => '¼Òª©',
- 'The following Datasets are not in use and can be deleted' => '¤U¦C¸ê®Æ¶°¨Ã¥¼¨Ï¥Î, ¥i¥H§R°£',
- 'The following Datasets need to be updated' => '¤U¦C¸ê®Æ¶°»Ý­n§ó·s',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '³o¬O¹ï¬J¦s¸ê®Æ¨Ó·½ªºªì¨BÀˬd. ¦b¦¹¶¥¬q, ¤£·|§R°£©Î·s¼W¥ô¦ó¸ê®Æ!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '­Y­n·s¼W¸s²Õ¤ºªº¨Ï¥ÎªÌ, ½Ð½s¿è¦WºÙ, §ó§ïµn¤J¦W, µM«áÀx¦s. ³o¼Ë¤@¨Ó, ·s¨Ï¥ÎªÌ·|«O¯d¬Û¦PªºÅܼÆ, ¨Ã¥H·sªºµn¤J¦W¦s¤J.',
- 'Unlock System' => '¶}±Ò¨t²Î',
- 'Update Dataset' => '§ó·s¸ê®Æ¶°',
- 'Use Templates' => '¨Ï¥Î¼Òª©',
- 'User' => '¨Ï¥ÎªÌ',
- 'User deleted!' => '¤x§R°£¨Ï¥ÎªÌ',
- 'User saved!' => '¤xÀx¦s¨Ï¥ÎªÌ',
- 'Version' => 'ª©¥»',
- 'You must enter a host and port for local and remote connections!' => '±z¥²»ÝÁä¤J¥D¾÷¤Î°ð¸¹, ¥H¶i¦æ¥»¾÷©Î»·ºÝ³s½u!',
- 'does not exist' => '¤£¦s¦b',
- 'is already a member!' => '¤w¸g¬O¦¨­û¤F!',
- 'localhost' => '¥»¦a±H¥D',
- 'locked!' => '¤xÂê¤W',
- 'successfully created!' => '¦¨¥\«Ø¥ß!',
- 'successfully deleted!' => '¦¨¥\§R°£!',
- 'website' => 'ºô¯¸',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- '·s¼w¨Ï¥ÎªÌ' => 'add_user',
- '§ó§ïºÞ²z­û±k½x' => 'change_admin_password',
- '§ó§ï±k½x' => 'change_password',
- 'Ä~Äò' => 'continue',
- '«Ø¥ß¸ê®Æ¶°' => 'create_dataset',
- '§r°£' => 'delete',
- '§r°£¸ê®Æ¶°' => 'delete_dataset',
- '¨t²ÎÂê¤w' => 'lock_system',
- 'µn¤j' => 'login',
- 'µn¥x' => 'logout',
- 'oracle_¸ê®Æ®wºÞ²z' => 'oracle_database_administration',
- 'pg_¸ê®Æ®wºÞ²z' => 'pg_database_administration',
- 'pgpp¸ê®Æ®wºÞ²z' => 'pgpp_database_administration',
- 'Àx¦s' => 'save',
- '¶}±Ò¨t²Î' => 'unlock_system',
- '§ó·s¸ê®Æ¶°' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/all b/sql-ledger/locale/tw_big5/all
deleted file mode 100644
index 8ee01f8..0000000
--- a/sql-ledger/locale/tw_big5/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => 'À³¥I±b´Ú',
- 'AP Aging' => 'À³¥I±bÄÖ¤ÀªR',
- 'AP Outstanding' => 'À³¥I¥¼¥I',
- 'AP Transaction' => 'À³¥I¥æ©ö',
- 'AP Transactions' => 'À³¥I¥æ©ö',
- 'AR' => 'À³¦¬±b´Ú',
- 'AR Aging' => 'À³¦¬±bÄÖ¤ÀªR',
- 'AR Outstanding' => 'À³¦¬¥¼¦¬',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'AR Transactions' => 'À³¦¬¥æ©ö',
- 'About' => 'Ãö©ó',
- 'Above' => '¤W¤å',
- 'Access Control' => 'Åv­­±±¨î',
- 'Account' => '±b¤á',
- 'Account Number' => '±b¤á½s¸¹',
- 'Account Number missing!' => '¥¼«ü©ú±b¤á½s¸¹!',
- 'Account Type' => '±b¤áÃþ§O',
- 'Account Type missing!' => '¥¼«ü©ú±b¤áÃþ§O!',
- 'Account deleted!' => '¤x§R°£±b¤á',
- 'Account does not exist!' => '¤£¦s¦b±b¤á',
- 'Account saved!' => '¤xÀx¦s±b¤á',
- 'Accounting' => '·|­p',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Accounts' => '±b¤á',
- 'Accrual' => '²Ö¿n',
- 'Activate Audit trails' => '¬¡ÅDªº¼f­p½u¯Á',
- 'Active' => '¬¡ÅD',
- 'Add' => '·s¼W',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => '·s¼W±b¤á',
- 'Add Assembly' => '·s¼W°Ó«~',
- 'Add Business' => '·s¼W·~°È',
- 'Add Cash Transfer Transaction' => '·s¼W²{ª÷Âಾ±b¥Ø',
- 'Add Customer' => '·s¼W«È¤á',
- 'Add Deduction' => '·s¼W¦©°£',
- 'Add Department' => '·s¼W³¡ªù',
- 'Add Employee' => '·s¼W¾­û',
- 'Add Exchange Rate' => '·s¼W¥~¶×²v',
- 'Add GIFI' => '·s¼W GIFI',
- 'Add General Ledger Transaction' => '·s¼WÁ`±b',
- 'Add Group' => '·s¼W²Õ',
- 'Add Labor/Overhead' => '·s¼W³Ò¤u/¸g±`¶O¥Î',
- 'Add Language' => '·s¼W»y¨¥',
- 'Add POS Invoice' => '·s¼WPOSµo²¼',
- 'Add Part' => '·s¼W­ì®Æ',
- 'Add Pricegroup' => '·s¼W»ù®æ²Õ',
- 'Add Project' => '·s¼W¤è®×',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add SIC' => '·s¼W­ì¤å',
- 'Add Sales Invoice' => '·s¼W¾P°âµo²¼',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Add Service' => '·s¼WªA°È',
- 'Add Transaction' => '·s¼W¥æ©ö',
- 'Add User' => '·s¼W¨Ï¥ÎªÌ',
- 'Add Vendor' => '·s¼W¨ÑÀ³°Ó',
- 'Add Vendor Invoice' => '·s¼W¨ÑÀ³°Óµo²¼',
- 'Add Warehouse' => '·s¼W­Ü®w',
- 'Address' => '¦a§}',
- 'Administration' => '¨t²ÎºÞ²z',
- 'Administrator' => 'ºÞ²z¤H',
- 'After Deduction' => '¦©°£¥H«á',
- 'All' => '¥þ³¡',
- 'All Accounts' => '¥þ³¡±b¤á',
- 'All Datasets up to date!' => '©Ò¦³¸ê®Æ¬Ò¤w§ó·s!',
- 'All Items' => '¥þ³¡¶µ¥Ø',
- 'Allowances' => '¬z¶K',
- 'Amount' => 'Á`­p',
- 'Amount Due' => 'À³±oªºÁ`­p',
- 'Amount missing!' => 'º|¶ñªºÁ`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Invoice Number' => '±z½T©w­n§R°£µo²¼½s¸¹',
- 'Are you sure you want to delete Order Number' => '±z¬O§_½T©w­n§R°£­q³æ½s¸¹',
- 'Are you sure you want to delete Quotation Number' => '±z¬O§_½T©w­n§R°£³ø»ù³æ½s¸¹',
- 'Are you sure you want to delete Transaction' => '±z¬O§_½T©w­n§R°£¥æ©ö',
- 'Are you sure you want to remove the marked entries from the queue?' => '±z¬O§_½T©w­n®ø°£¦³°O¸¹ªº±ø¥Ø',
- 'Assemblies' => '°Ó«~',
- 'Assemblies restocked!' => '¤x­«·s¶i³fªº°Ó«~',
- 'Assembly' => '°Ó«~',
- 'Asset' => '¸ê²£',
- 'Attachment' => 'ªþÀÉ',
- 'Audit Control' => '½]®Ö±±¨î',
- 'Audit trail removed up to' => '²¾°£¨ì¦¹¬°¤îªº¼f­p½u¯Á',
- 'Audit trails disabled' => '¦³®Äªº¼f­p½u¯Á',
- 'Audit trails enabled' => 'µL®Äªº¼f­p½u¯Á',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => '³Æ¥÷',
- 'Backup sent to' => '³Æ¥÷±H°e¨ì',
- 'Balance' => '¾lÃB',
- 'Balance Sheet' => '¸ê²£­t¶Åªí',
- 'Based on' => '°ò©ó',
- 'Batch Printing' => '¾ã§å¦L¨ê',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Before Deduction' => '¦©°£¤§«e',
- 'Beginning Balance' => '°_©l¾lÃB',
- 'Below' => '¥H¤U',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Bin Lists' => '',
- 'Books are open' => '±bï¤w¶}±Ò',
- 'Break' => '¥ð®§',
- 'Business' => '·~°È',
- 'Business Number' => '·~°È½s¸¹',
- 'Business deleted!' => '¤x§R°£·~°È',
- 'Business saved!' => '¤xÀx¦s·~°È',
- 'C' => '',
- 'COGS' => '³f¾P¦¨¥»',
- 'Cannot create Lock!' => '¤£¯à«Ø¥ßÂê',
- 'Cannot delete account!' => '¤£¯à§R°£±b¤á',
- 'Cannot delete customer!' => '¤£¯à§R°£«È¤á',
- 'Cannot delete default account!' => '¤£¯à§R°£¹w³]±b¤á',
- 'Cannot delete invoice!' => '¤£¯à§R°£µo²¼',
- 'Cannot delete item!' => '¤£¯à§R°£¶µ¥Ø',
- 'Cannot delete order!' => '¤£¯à§R°£©w³æ',
- 'Cannot delete quotation!' => '¤£¯à§R°£³ø»ù³æ',
- 'Cannot delete transaction!' => '¤£¯à§R°£¥æ©ö',
- 'Cannot delete vendor!' => '¤£¯à§R°£¨ÑÀ³°Ó',
- 'Cannot post Payment!' => '¤£¯à¥[¤J´Ú¶µ',
- 'Cannot post Receipt!' => '¤£¯à¥[¤J¦¬¾Ú',
- 'Cannot post invoice for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤Jµo²¼',
- 'Cannot post invoice!' => '¤£¯à¥[¤Jµo²¼',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cannot post transaction for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J¥æ©ö!',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Cannot process payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º³B²z´Ú¶µ',
- 'Cannot remove files!' => '¤£¯à²¾°£ÀÉ®×',
- 'Cannot save account!' => '¤£¯àÀx¦s±b¤á',
- 'Cannot save defaults!' => '¤£¯àÀx¦s¹w³]',
- 'Cannot save order!' => '¤£¯àÀx¦s©w³æ',
- 'Cannot save preferences!' => '¤£¯àÀx¦sÀu¥ý¿ï¾Ü ',
- 'Cannot save quotation!' => '¤£¯àÀx¦s³ø»ù³æ',
- 'Cannot set account for more than one of AR, AP or IC' => '¤£¯à³]¸m¦h©ó¤@­ÓÀ³¦¬±b´Ú, À³¥I±b´Ú©ÎIC',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => '¤£¯à±`³Æªº°Ó«~',
- 'Cash' => '²{ª÷',
- 'Cc' => '§Û°e',
- 'Change' => '§ó§ï',
- 'Change Admin Password' => '§ó§ïºÞ²z­û±K½X',
- 'Change Password' => '§ó§ï±K½X',
- 'Character Set' => '¦r¤¸¶°',
- 'Chart of Accounts' => '·|­p¬ì¥Øªí',
- 'Check' => 'Àˬd',
- 'Check Inventory' => 'Àˬd¦s³f²M³æ',
- 'Checks' => 'Àˬd',
- 'City' => '«°¥«',
- 'Cleared' => '¤w²M°£',
- 'Click on login name to edit!' => '½Ð«öµn¤J¦WºÙ¥H¶i¦æ­×§ï!',
- 'Close Books up to' => 'Ãö³¬¨ì¦¹¬°¤îªº±bï',
- 'Closed' => '¤wÃö³¬',
- 'Code' => '½s½X',
- 'Code missing!' => '¥¼«ü©ú½s½X',
- 'Company' => '¤½¥q',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Compare to' => '¹ï·Ó',
- 'Components' => '¹s¥ó',
- 'Confirm' => '',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Connect to' => '³sµ²¨ì',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Contra' => '¬Û¤Ï',
- 'Copies' => '°Æ¥»',
- 'Copy to COA' => '½Æ»s¨ì COA',
- 'Cost' => '¦¨¥»',
- 'Cost Center' => '¦¨¥»¤¤¤ß',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '¤£¯àÀx¦s',
- 'Could not transfer Inventory!' => '¦s³f²M³æ¤£¯àÂಾ',
- 'Country' => '°ê®a',
- 'Create Chart of Accounts' => '«Ø¥ß±b¤á¹Ïªí',
- 'Create Dataset' => '«Ø¥ß¸ê®Æ¶°',
- 'Credit' => '¶U¤è',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Current Earnings' => '²{¦³¦¬¯q',
- 'Customer' => '«È¤á',
- 'Customer History' => '«È¤á¾ú¥v',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer deleted!' => '¤x§R°£«È¤á',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Customer saved!' => '¤xÀx¦s«È¤á',
- 'Customers' => '«È¤á',
- 'DBI not installed!' => '¥¼¦w¸Ë DBI ¼Ò²Õ!',
- 'DOB' => '',
- 'Database' => '¸ê®Æ®w',
- 'Database Administration' => '¸ê®Æ®wºÞ²z',
- 'Database Driver not checked!' => '¥¼¿ï©w¸ê®Æ®wÅX°Êµ{¦¡!',
- 'Database Host' => '¸ê®Æ®w¥D¾÷',
- 'Database User missing!' => '¥¼«ü©ú¸ê®Æ®w¨Ï¥ÎªÌ!',
- 'Dataset' => '¸ê®Æ¶°',
- 'Dataset is newer than version!' => '¸û·s¸ê®Æ¶°',
- 'Dataset missing!' => '¥¼«ü©ú¸ê®Æ¶°!',
- 'Dataset updated!' => '¤x§ó·s¸ê®Æ¶°',
- 'Date' => '¤é´Á',
- 'Date Format' => '¤é´Á®æ¦¡',
- 'Date Paid' => '¥I´Ú¤é´Á',
- 'Date Received' => '¦¬´Ú¤é´Á',
- 'Date missing!' => '¥¼«ü©ú¤é´Á',
- 'Date received missing!' => '¥¼«ü©ú¦¬´Ú¤é´Á',
- 'Debit' => '­É¤è',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Decimalplaces' => '¤p¼Æªº¦ì¸m',
- 'Decrease' => '´î¤Ö',
- 'Deduct after' => '´î¤Ö¥H«á',
- 'Deduction deleted!' => '¤x§R°£´î¤Ö',
- 'Deduction saved!' => '¤xÀx¦s´î¤Ö',
- 'Deductions' => '´î°£ÃB',
- 'Defaults' => '¹w³]',
- 'Defaults saved!' => '¤xÀx¦s¹w³]',
- 'Delete' => '§R°£',
- 'Delete Account' => '§R°£±b¤á',
- 'Delete Dataset' => '§R°£¸ê®Æ¶°',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Department' => '³¡ªù',
- 'Department deleted!' => '¤x§R°£³¡ªù',
- 'Department saved!' => '¤xÀx¦s³¡ªù',
- 'Departments' => '³¡ªù',
- 'Deposit' => '¦s´Ú',
- 'Description' => '»¡©ú',
- 'Description Translations' => '½Ķ´y­z',
- 'Description missing!' => '¥¼«ü©ú´y­z',
- 'Detail' => '¸Ô±¡',
- 'Difference' => '®t²§',
- 'Directory' => '¥Ø¿ý',
- 'Discount' => '§é¦©',
- 'Done' => '¤x§¹¦¨',
- 'Drawing' => '¹Ïµe',
- 'Driver' => 'ÅX°Êµ{¦¡',
- 'Dropdown Limit' => '­­¨î',
- 'Due Date' => '¨ì´Á¤é',
- 'Due Date missing!' => '¥¼«ü©ú¨ì´Á¤é!',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail Statement to' => '¹q¶l·|­p½ã¨ì',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit' => '½s¿è',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => '½s¿è±b¤á',
- 'Edit Assembly' => '½s¿è°Ó«~',
- 'Edit Business' => '½s¿è·~°È',
- 'Edit Cash Transfer Transaction' => '½s¿è²{ª÷Âಾ',
- 'Edit Customer' => '½s¿è«È¤á',
- 'Edit Deduction' => '½s¿è´î°£ÃB',
- 'Edit Department' => '½s¿è³¡ªù',
- 'Edit Description Translations' => '½s¿è½Ķ´y­z',
- 'Edit Employee' => '½s¿è¾­û',
- 'Edit GIFI' => '½s¿è GIFI',
- 'Edit General Ledger Transaction' => '½s¿èÁ`±b',
- 'Edit Group' => '½s¿è²Õ',
- 'Edit Labor/Overhead' => '½s¿è³Ò¤u/¸g±`¶O¥Î',
- 'Edit Language' => '½s¿è»y¨¥',
- 'Edit POS Invoice' => '½s¿èPOS',
- 'Edit Part' => '½s¿è­ì®Æ',
- 'Edit Preferences for' => '³]©w¨Ï¥ÎªÌ',
- 'Edit Pricegroup' => '½s¿è»ù®æ²Õ',
- 'Edit Project' => '½s¿è¤è®×',
- 'Edit Purchase Order' => '½s¿è±ÄÁʳæ',
- 'Edit Quotation' => '½s¿è³ø»ù³æ',
- 'Edit Request for Quotation' => '½s¿è³ø»ù³æ­n¨D',
- 'Edit SIC' => '½s¿è­ì¤å',
- 'Edit Sales Invoice' => '½s¿è¾P°âµo²¼',
- 'Edit Sales Order' => '½s¿è¾P³f³æ',
- 'Edit Service' => '½s¿èªA°È',
- 'Edit Template' => '½s¿è¼Òª©',
- 'Edit User' => '½s¿è¨Ï¥ÎªÌ',
- 'Edit Vendor' => '½s¿è¨ÑÀ³°Ó',
- 'Edit Vendor Invoice' => '½s¿è¨ÑÀ³°Óµo²¼',
- 'Edit Warehouse' => '½s¿è­Ü®w',
- 'Employee' => '¾­û',
- 'Employee Name' => '¾­û©m¦W',
- 'Employee Number' => '',
- 'Employee deleted!' => '¤x§R°£Â¾­û',
- 'Employee pays' => '¥I´Úµ¹Â¾­û',
- 'Employee saved!' => '¤xÀx¦s¾­û',
- 'Employees' => '¾­û',
- 'Employer' => '¶±¥D',
- 'Employer pays' => '¥I´Úµ¹¶±¥D',
- 'Enddate' => 'µ²§ô¤é',
- 'Enforce transaction reversal for all dates' => '±j¨î©Ò¦³¤é´Áªº¥æ©ö¦^´_',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '½ÐÁä¤J¥H«_¸¹¤À¹jªº­^¤å¦r¥À, ¨C¶µ¤£¶W¹L¤T­Ó¦r (¦p CAD:USD:EUR), §@¬°±zªº¥»°ê¤Î¥~°ê³f¹ô',
- 'Equity' => 'ªÑÅv',
- 'Excempt age <' => '',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Existing Datasets' => '¬J¦³ªº¸ê®Æ¶°',
- 'Expense' => '¶O¥Î',
- 'Expense Account' => '¶O¥Î¬ì¥Ø',
- 'Expense/Asset' => '¶O¥Î/¸ê²£',
- 'Extended' => '¤xÂX¤j',
- 'FX' => '',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'Foreign Exchange Gain' => '¥~¶×¦¬¯q',
- 'Foreign Exchange Loss' => '¥~¶×·l¥¢',
- 'From' => '±q',
- 'GIFI' => '',
- 'GIFI deleted!' => '¤x§R°£',
- 'GIFI missing!' => '¥¼«ü©ú GIFI!',
- 'GIFI saved!' => '¤xÀx¦s',
- 'GL Transaction' => 'GL¥æ©ö',
- 'General Ledger' => 'Á`±b',
- 'Goods & Services' => '³fª«¤ÎªA°È',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'Group Translations' => '²ÕªºÂ½Ä¶',
- 'Group deleted!' => '¤x§R°£ªº²Õ',
- 'Group missing!' => '¥¼«ü©úªº²Õ',
- 'Group saved!' => '¤xÀx¦sªº²Õ',
- 'Groups' => '²Õ',
- 'HR' => '¤H¨ÆºÞ²z',
- 'HTML Templates' => 'HTML ªí³æ',
- 'Heading' => '¼ÐÃD, ',
- 'History' => '¾ú¥v',
- 'Home Phone' => '¦í¦v¹q¸Ü',
- 'Host' => '¥D¾÷',
- 'Hostname missing!' => '¥¼«ü©ú¥D¾÷¦WºÙ!',
- 'IBAN' => '',
- 'ID' => '½s¸¹',
- 'Image' => '§Î¹³',
- 'In-line' => '¦æ¤º',
- 'Include Exchange Rate Difference' => '¥]§t¥~¶×®t¶Z',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Include in drop-down menus' => '¥]§t¦b¤U©Ô¦¡¿ï³æ¤¤',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => '­n±N³o­Ó«È¤á/¼t°Ó¥[¤JÀ³¥[µ|²M³æ?',
- 'Income' => '¦¬¤J',
- 'Income Account' => '¦¬¤J±b¤á',
- 'Income Statement' => '·l¯qªí',
- 'Incorrect Dataset version!' => '¸ê®Æ¶°ª©¥»¿ù»~!',
- 'Incorrect Password!' => '±K½X¿ù»~!',
- 'Increase' => '¼W¥[',
- 'Individual Items' => '­Ó§Oªº¶µ¥Ø',
- 'Internal Notes' => '¤º³¡³Æ§Ñ¿ý',
- 'Inventory' => '®w¦s',
- 'Inventory Account' => '¦s³f±b¤á',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¦b°±¥Î¦¹¶µ²Õ¦X«~¤§«e, ¦s³f¼Æ¶q¥²»Ý¬°¹s!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '°±¥Î¦¹¶µ¹s¥ó¤§«e, ¦s³f¼Æ¶q¥²»Ý¬°¹s!',
- 'Inventory saved!' => '¤xÀx¦s¦s³f',
- 'Inventory transferred!' => 'Âಾªº¦s³f',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Invoice deleted!' => '¤x§R°£µo²¼',
- 'Invoice posted!' => '¤x¥[¤Jµo²¼',
- 'Invoice processed!' => '¤x³B²zµo²¼',
- 'Invoices' => 'µo²¼',
- 'Is this a summary account to record' => '¦¹¬°Á`µ²¬ì¥Ø¶Ü?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '¤x§R°£¶µ¥Ø',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Items' => '¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'LaTeX Templates' => 'LaTex ¼Òª©',
- 'Labor/Overhead' => '³Ò¤u/¸g±`¶O¥Î',
- 'Language' => '»y¨¥',
- 'Language deleted!' => '¤x§R°£»y¨¥',
- 'Language saved!' => '¤xÀx¦s»y¨¥',
- 'Languages' => '»y¨¥',
- 'Languages not defined!' => '¤£¯à¿ë»{»y¨¥',
- 'Last Numbers & Default Accounts' => '¤W¤@µ§½s¸¹¤Î¹w³]±b¤á',
- 'Leadtime' => 'Á`»Ý®É',
- 'Leave host and port field empty unless you want to make a remote connection.' => '°£«D±z·Q­n¶i¦æ»·ºÝ³s½u, §_«h½Ð±N¥D¾÷¤Î°ð¸¹¯d¥Õ.',
- 'Liability' => '­t¶Å',
- 'Licensed to' => '±ÂÅv¤©',
- 'Line Total' => 'Á`¦C¼Æ',
- 'Link' => '³sµ²',
- 'Link Accounts' => '³sµ²±b¤á',
- 'List' => '',
- 'List Accounts' => '¦C¥X±b¸¹',
- 'List Businesses' => '¦C¥X·~°È',
- 'List Departments' => '¦C¥X³¡ªù',
- 'List GIFI' => '¦C¥X GIFI',
- 'List Languages' => '¦C¥X»y¨¥',
- 'List Price' => '¦C¥X»ù',
- 'List Projects' => '¦C¥X¤è®×',
- 'List SIC' => '¦C¥XSIC',
- 'List Transactions' => '¦C¥X¥æ©ö',
- 'List Warehouses' => '¦C¥X­Ü®w',
- 'Lock System' => '¨t²ÎÂê¤W',
- 'Lockfile created!' => '¤x«Ø¥ß¤WÂêÀÉ®×!',
- 'Lockfile removed!' => '¤x²¾°£¤WÂêÀÉ®×!',
- 'Login' => 'µn¤J',
- 'Login name missing!' => '¥¼«ü©úµn¤J¦W¦r',
- 'Logout' => 'µn¥X',
- 'Make' => '»s³y',
- 'Manager' => '¸g²z',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'Marked entries printed!' => '¤x¦C¦L¦³°O¸¹ªº·|­p¶µ¥Ø',
- 'Markup' => 'º¦»ù',
- 'Maximum' => '³Ì¤j',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Menu Width' => '¿ï¾Ü³æ¼e«×',
- 'Message' => '°T®§',
- 'Method' => '¤èªk',
- 'Microfiche' => '³æ¤ùÁY¼v½¦¤ù',
- 'Model' => '«¬¸¹',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => '¤£¾A¥Î',
- 'Name' => '¦WºÙ',
- 'Name missing!' => '¥¼«ü©ú¦W¦r',
- 'New Templates' => '·s¼W¼Òª©',
- 'No' => '§_',
- 'No Database Drivers available!' => '¨S¦³¥i¥ÎªºÅX°Êµ{¦¡!',
- 'No Dataset selected!' => '¥¼¿ï©w¸ê®Æ¶°!',
- 'No email address for' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì¸m',
- 'No.' => '§_',
- 'Non-taxable' => '¤£À³½Òµ|',
- 'Non-taxable Purchases' => '¤£À³½Òµ|ªº±ÄÁÊ',
- 'Non-taxable Sales' => '¤£À³½Òµ|ªº¾P°â',
- 'Notes' => '³Æµù',
- 'Nothing entered!' => '¨S¦³¤x¿é¤J',
- 'Nothing outstanding for ' => '¨S¦³¥¼¥I¨Ó·½',
- 'Nothing selected!' => '¨S¦³¤x¿ï¾Ü',
- 'Nothing to delete!' => '¨S¦³¥i§R°£ªº¶µ¥Ø',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '¨S¦³¥iÂಾªº¶µ¥Ø',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number Format' => '¼Æ¦r®æ¦¡',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'O' => '',
- 'Obsolete' => '°±¥Î',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'On Hand' => '¤x¦³¦s¶q',
- 'Open' => '¶}±Ò',
- 'Oracle Database Administration' => 'Oracle ¸ê®Æ®wºÞ²z',
- 'Order' => '­q³æ',
- 'Order Date' => '¤U³æ¤é´Á',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Entry' => '¤U³æ¶µ¥Ø',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Order deleted!' => '¤x§R°£­q³æ',
- 'Order processed!' => '¤x³B²z­q³æ',
- 'Order saved!' => '¤xÀx¦s­q³æ',
- 'Orphaned' => 'µL¥D',
- 'Out of balance transaction!' => '¤£¨ó½Õ¥æ©ö',
- 'Out of balance!' => '¤£¨ó½Õ',
- 'Outstanding' => '¥¼¥I',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => 'POSµo²¼',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Packing Lists' => '¥X³f³æ',
- 'Paid' => '¤w¥I',
- 'Part' => '­ì®Æ',
- 'Part Number' => '­ì®Æ½s¸¹',
- 'Partnumber' => '',
- 'Parts' => '­ì®Æ',
- 'Parts Inventory' => '®w¦s­ì®Æ',
- 'Password' => '±K½X',
- 'Password changed!' => '±K½X¤x§ï',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'À³¥I¬ì¥Ø',
- 'Payment' => '¥I´Ú',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payment posted!' => '¤x¥[¤J¥I´Ú',
- 'Payments' => '¥I´Ú',
- 'Payroll Deduction' => 'Á~ª÷´î°£ÃB',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg ¸ê®Æ®wºÞ²z',
- 'PgPP Database Administration' => 'PgPP¸ê®Æ®wºÞ²z',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Pick Lists' => '',
- 'Port' => '°ð¸¹',
- 'Port missing!' => '¥¼«ü©ú°ð¸¹!',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Posted!' => '¤x¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Preferences' => '­Ó¤H³]©w',
- 'Preferences saved!' => '­Ó¤H³]©w¤wÀx¦s!',
- 'Prepayment' => '¹wú',
- 'Price' => '»ù®æ',
- 'Pricegroup' => '»ù®æ²Õ',
- 'Pricegroup deleted!' => '¤x§R°£»ù®æ²Õ',
- 'Pricegroup missing!' => '¥¼«ü©ú»ù®æ²Õ',
- 'Pricegroup saved!' => '¤xÀx¦s»ù®æ²Õ',
- 'Pricegroups' => '»ù®æ²Õ',
- 'Pricelist' => '',
- 'Print' => '¦C¦L',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '¤x¦C¦L',
- 'Printer' => '¦Lªí¾÷',
- 'Printing ... ' => '¥¿¦C¦L',
- 'Profit Center' => '§Q¼í¤¤¤ß',
- 'Project' => '¤è®×',
- 'Project Description Translations' => '¤è®×´y­zªºÂ½Ä¶',
- 'Project Number' => '¤è®×¸¹½X',
- 'Project Number missing!' => '¥¼«ü©ú¤è®×¸¹½X',
- 'Project Transactions' => '¤è®×¥æ©ö',
- 'Project deleted!' => '¤x§R°£¤è®×',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Project saved!' => '¤xÀx¦s¤è®×',
- 'Projects' => '¤è®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Quantity exceeds available units to stock!' => '¶W¹L¥i®w¦sªº¼Æ¶q',
- 'Quarter' => '',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation ' => '',
- 'Quotation Date' => '³ø»ù³æ¤é´Á',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number' => '³ø»ù³æ¸¹½X',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Quotation deleted!' => '¤x§R°£³ø»ù³æ',
- 'Quotations' => '³ø»ù³æ',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => 'RFD¸¹½X',
- 'RFQs' => '',
- 'ROP' => '¦A­qÂI',
- 'Rate' => 'µ|²v',
- 'Rate missing!' => '¥¼«ü©úµ|²v',
- 'Recd' => '¤x¦¬¨ì',
- 'Receipt' => '¦¬¾Ú',
- 'Receipt posted!' => '¤x¥[¤J¦¬¾Ú',
- 'Receipts' => '¦¬¾Ú',
- 'Receivables' => 'À³¦¬±b¤á',
- 'Receive' => '¦¬¨ì',
- 'Receive Merchandise' => '¦¬¨ì³fª«',
- 'Reconciliation' => '½Õ©M',
- 'Reconciliation Report' => '½Õ©M³ø§i',
- 'Record in' => '°O¿ý©ó',
- 'Reference' => '°Ñ¦Ò¸ê®Æ',
- 'Reference missing!' => '¥¼«ü©ú°Ñ¦Ò¸ê®Æ',
- 'Remaining' => '©|¾l',
- 'Remove' => '²¾°£',
- 'Remove Audit trails up to' => '²¾°£¼f®Ö½u¯Áª½¦Ü',
- 'Removed spoolfiles!' => '²¾°£½u¶bÀÉ®×',
- 'Removing marked entries from queue ...' => '¥¿±qªø¶¤¤¤²¾°£¦³°O¸¹ªº·|­p¶µ¥Ø',
- 'Report for' => '³øªí¨Ó·½',
- 'Reports' => '³øªí',
- 'Request for Quotation' => '­n¨D³ø»ù³æ',
- 'Request for Quotations' => '­n¨D³ø»ù³æ',
- 'Required by' => '»Ý­nªÌ',
- 'Retained Earnings' => '«O¯d¬Õ¾l',
- 'Role' => '¥ô°È',
- 'S' => '',
- 'SIC' => '­ì¤å',
- 'SIC deleted!' => '¤x§R°£­ì¤å',
- 'SIC saved!' => '¤xÀx¦s­ì¤å',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'SSN' => '',
- 'Sale' => '¾P°â',
- 'Sales' => '¾P°â',
- 'Sales Invoice' => '¾P°âµo²¼',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '¾P°âµo²¼',
- 'Sales Order' => '¾P³f³æ',
- 'Sales Order Number' => '',
- 'Sales Orders' => '¾P³f³æ',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '¾P°â¤H­û',
- 'Save' => 'Àx¦s',
- 'Save Pricelist' => '',
- 'Save as new' => '·í·sªºÀx¦s',
- 'Save to File' => 'Àx¦s¦ÜÀÉ®×',
- 'Screen' => '¿Ã¹õ',
- 'Search' => '·j´M',
- 'Select' => '¿ï¾Ü',
- 'Select Printer or Queue!' => '',
- 'Select all' => '¥þ¿ï',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '°â»ù',
- 'Send by E-Mail' => '¥H¹q¤l¶l¥ó±H°e',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Serial Number' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Service Items' => 'ªA°È¶µ¥Ø',
- 'Services' => 'ªA°È',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => '³]©w¼Òª©',
- 'Ship' => '²î',
- 'Ship Merchandise' => '®ü¹B³fª«',
- 'Ship to' => '®ü¹B¦Ü',
- 'Ship via' => '¥Ñ®ü¹B',
- 'Shipping' => '®ü¹B',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Shipping Date' => '®ü¹B¤é´Á',
- 'Shipping Date missing!' => '¥¼«ü©ú®ü¹B¤é´Á',
- 'Shipping Point' => '®ü¹B¦aÂI',
- 'Short' => 'µu',
- 'Signature' => 'ñ¦W',
- 'Source' => '¨Ó·½',
- 'Spoolfile' => '½u¶bÀÉ®×',
- 'Standard' => '¼Ð·Ç',
- 'Standard Industrial Codes' => '¼Ð·Ç¤u·~½s½X',
- 'Startdate' => '¶}©l¤é´Á',
- 'State' => '',
- 'State/Province' => '¬Ù',
- 'Statement' => '·|­p±b',
- 'Statement Balance' => '·|­p±b¾lÃB',
- 'Statement sent to' => '°e·|­p±b¦Ü',
- 'Statements sent to printer!' => '°e·|­p±b¦Ü¦C¦L¾÷',
- 'Stock' => '®w¦s',
- 'Stock Assembly' => '½LÂI',
- 'Stylesheet' => '¼Ë¦¡ªí',
- 'Sub-contract GIFI' => '²Ó¦X¬ùGIFI',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Summary' => 'ºK­n',
- 'Supervisor' => '',
- 'System' => '¨t²Î',
- 'System Defaults' => '¹w³]¨t²Î',
- 'Tax' => 'µ|ª÷',
- 'Tax Accounts' => 'µ|ª÷¬ì¥Ø',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'Tax Number' => 'µ|¸¹',
- 'Tax Number / SSN' => 'µ|¸¹',
- 'Tax collected' => '¤x¦¬µ|ª÷',
- 'Tax paid' => '¤x¥Iµ|ª÷',
- 'Taxable' => 'À³µ|',
- 'Template saved!' => '¤xÀx¦s¼Òª©',
- 'Templates' => '¼Òª©',
- 'Terms' => '²¼´Á²b­p',
- 'Text Templates' => '¤å¦r¼Òª©',
- 'The following Datasets are not in use and can be deleted' => '¤U¦C¸ê®Æ¶°¨Ã¥¼¨Ï¥Î, ¥i¥H§R°£',
- 'The following Datasets need to be updated' => '¤U¦C¸ê®Æ¶°»Ý­n§ó·s',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '³o¬O¹ï¬J¦s¸ê®Æ¨Ó·½ªºªì¨BÀˬd. ¦b¦¹¶¥¬q, ¤£·|§R°£©Î·s¼W¥ô¦ó¸ê®Æ!',
- 'Till' => 'ª½¨ì',
- 'To' => '¦Ü',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => '­Y­n·s¼W¸s²Õ¤ºªº¨Ï¥ÎªÌ, ½Ð½s¿è¦WºÙ, §ó§ïµn¤J¦W, µM«áÀx¦s. ³o¼Ë¤@¨Ó, ·s¨Ï¥ÎªÌ·|«O¯d¬Û¦PªºÅܼÆ, ¨Ã¥H·sªºµn¤J¦W¦s¤J.',
- 'Top Level' => '°ª¤ô·Ç',
- 'Total' => 'Á`­p',
- 'Trade Discount' => '¶T©ö§é¦©',
- 'Transaction' => '',
- 'Transaction Date missing!' => '¥¼«ü©ú¥æ©ö¤é´Á!',
- 'Transaction deleted!' => '¤x§R°£¥æ©ö',
- 'Transaction posted!' => '¤x¥[¤J¥æ©ö',
- 'Transaction reversal enforced for all dates' => '±j¨î¦^´_©Ò¦³¤é´Áªº¥æ©ö',
- 'Transaction reversal enforced up to' => '±j¨î¦^´_¥æ©öª½¨ì',
- 'Transactions' => '¥æ©ö',
- 'Transfer' => 'Âಾ',
- 'Transfer Inventory' => 'Âಾ¦s³f',
- 'Transfer to' => '¦s³f¦Ü',
- 'Translation' => '½Ķ',
- 'Translation deleted!' => '¤x§R°£Â½Ä¶',
- 'Translation not on file!' => '',
- 'Translations' => '½Ķ',
- 'Translations saved!' => '¤xÀx¦s½Ķ',
- 'Trial Balance' => '¸Õºâªí',
- 'Type of Business' => '·~°ÈºØÃþ',
- 'Unit' => '³æ¦ì',
- 'Unit of measure' => '«×¶q³æ¦ì',
- 'Unlock System' => '¶}±Ò¨t²Î',
- 'Update' => '§ó·s',
- 'Update Dataset' => '§ó·s¸ê®Æ¶°',
- 'Updated' => '¤x§ó·s',
- 'Upgrading to Version' => '¥¿¤É¯Å¦Ü·sª©',
- 'Use Templates' => '¨Ï¥Î¼Òª©',
- 'User' => '¨Ï¥ÎªÌ',
- 'User deleted!' => '¤x§R°£¨Ï¥ÎªÌ',
- 'User saved!' => '¤xÀx¦s¨Ï¥ÎªÌ',
- 'Valid until' => '¦³®Ä¦Ü',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor History' => '¨ÑÀ³°Ó¾ú¥v',
- 'Vendor Invoice' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor deleted!' => '¤x§R°£¨ÑÀ³°Ó',
- 'Vendor missing!' => '¥¼«ü©ú¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Vendor saved!' => '¤xÀx¦s¨ÑÀ³°Ó',
- 'Vendors' => '¨ÑÀ³°Ó',
- 'Version' => 'ª©¥»',
- 'Warehouse' => '­Ü®w',
- 'Warehouse deleted!' => '¤x§R°£­Ü®w',
- 'Warehouse saved!' => '¤xÀx¦s­Ü®w',
- 'Warehouses' => '­Ü®w',
- 'Warning!' => 'ĵ§i',
- 'Weight' => '­«¶q',
- 'Weight Unit' => '­«¶q³æ¦ì',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'Work Orders' => '',
- 'Work Phone' => '¤u§@¹q¸Ü',
- 'Year' => '',
- 'Yearend' => '¦~µ²',
- 'Yearend date missing!' => '¥¼«ü©ú¦~µ²¤é´Á',
- 'Yearend posted!' => '¤x¥[¤J¦~µ²',
- 'Yearend posting failed!' => '¦~µ²¥[¤J¥¢±Ñ',
- 'Yes' => '¬O',
- 'You are logged out' => '',
- 'You did not enter a name!' => '§A¨Ã¥¼Áä¤J¦WºÙ!',
- 'You must enter a host and port for local and remote connections!' => '±z¥²»ÝÁä¤J¥D¾÷¤Î°ð¸¹, ¥H¶i¦æ¥»¾÷©Î»·ºÝ³s½u!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '±b¤á¤£¯à°e¥h¨ä¥LÃþ«¬±b¤á',
- 'as at' => 'ºI¦Ü',
- 'days' => '¤é',
- 'does not exist' => '¤£¦s¦b',
- 'done' => '§¹¦¨',
- 'ea' => '­Ó',
- 'for Period' => '´Á¶¡',
- 'is already a member!' => '¤w¸g¬O¦¨­û¤F!',
- 'is not a member!' => '¨Ã¤£¬O¦¨­û!',
- 'localhost' => '¥»¦a±H¥D',
- 'locked!' => '¤xÂê¤W',
- 'posted!' => '¤x¥[¤J',
- 'sent' => '¤x°e¥X',
- 'successfully created!' => '¦¨¥\«Ø¥ß!',
- 'successfully deleted!' => '¦¨¥\§R°£!',
- 'website' => 'ºô¯¸',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/am b/sql-ledger/locale/tw_big5/am
deleted file mode 100644
index af4a782..0000000
--- a/sql-ledger/locale/tw_big5/am
+++ /dev/null
@@ -1,245 +0,0 @@
-$self{texts} = {
- 'AP' => 'À³¥I±b´Ú',
- 'AR' => 'À³¦¬±b´Ú',
- 'About' => 'Ãö©ó',
- 'Account' => '±b¤á',
- 'Account Number' => '±b¤á½s¸¹',
- 'Account Number missing!' => '¥¼«ü©ú±b¤á½s¸¹!',
- 'Account Type' => '±b¤áÃþ§O',
- 'Account Type missing!' => '¥¼«ü©ú±b¤áÃþ§O!',
- 'Account deleted!' => '¤x§R°£±b¤á',
- 'Account does not exist!' => '¤£¦s¦b±b¤á',
- 'Account saved!' => '¤xÀx¦s±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Accrual' => '²Ö¿n',
- 'Activate Audit trails' => '¬¡ÅDªº¼f­p½u¯Á',
- 'Add Account' => '·s¼W±b¤á',
- 'Add Business' => '·s¼W·~°È',
- 'Add Department' => '·s¼W³¡ªù',
- 'Add GIFI' => '·s¼W GIFI',
- 'Add Language' => '·s¼W»y¨¥',
- 'Add SIC' => '·s¼W­ì¤å',
- 'Add Warehouse' => '·s¼W­Ü®w',
- 'Address' => '¦a§}',
- 'Asset' => '¸ê²£',
- 'Audit Control' => '½]®Ö±±¨î',
- 'Audit trail removed up to' => '²¾°£¨ì¦¹¬°¤îªº¼f­p½u¯Á',
- 'Audit trails disabled' => '¦³®Äªº¼f­p½u¯Á',
- 'Audit trails enabled' => 'µL®Äªº¼f­p½u¯Á',
- 'Backup sent to' => '³Æ¥÷±H°e¨ì',
- 'Books are open' => '±bï¤w¶}±Ò',
- 'Business Number' => '·~°È½s¸¹',
- 'Business deleted!' => '¤x§R°£·~°È',
- 'Business saved!' => '¤xÀx¦s·~°È',
- 'COGS' => '³f¾P¦¨¥»',
- 'Cannot delete account!' => '¤£¯à§R°£±b¤á',
- 'Cannot delete default account!' => '¤£¯à§R°£¹w³]±b¤á',
- 'Cannot save account!' => '¤£¯àÀx¦s±b¤á',
- 'Cannot save defaults!' => '¤£¯àÀx¦s¹w³]',
- 'Cannot save preferences!' => '¤£¯àÀx¦sÀu¥ý¿ï¾Ü ',
- 'Cannot set account for more than one of AR, AP or IC' => '¤£¯à³]¸m¦h©ó¤@­ÓÀ³¦¬±b´Ú, À³¥I±b´Ú©ÎIC',
- 'Cash' => '²{ª÷',
- 'Character Set' => '¦r¤¸¶°',
- 'Chart of Accounts' => '·|­p¬ì¥Øªí',
- 'Close Books up to' => 'Ãö³¬¨ì¦¹¬°¤îªº±bï',
- 'Code' => '½s½X',
- 'Code missing!' => '¥¼«ü©ú½s½X',
- 'Company' => '¤½¥q',
- 'Continue' => 'Ä~Äò',
- 'Contra' => '¬Û¤Ï',
- 'Copy to COA' => '½Æ»s¨ì COA',
- 'Cost Center' => '¦¨¥»¤¤¤ß',
- 'Credit' => '¶U¤è',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Database Host' => '¸ê®Æ®w¥D¾÷',
- 'Dataset' => '¸ê®Æ¶°',
- 'Date Format' => '¤é´Á®æ¦¡',
- 'Debit' => '­É¤è',
- 'Defaults saved!' => '¤xÀx¦s¹w³]',
- 'Delete' => '§R°£',
- 'Delete Account' => '§R°£±b¤á',
- 'Department deleted!' => '¤x§R°£³¡ªù',
- 'Department saved!' => '¤xÀx¦s³¡ªù',
- 'Departments' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Description missing!' => '¥¼«ü©ú´y­z',
- 'Discount' => '§é¦©',
- 'Dropdown Limit' => '­­¨î',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'Edit' => '½s¿è',
- 'Edit Account' => '½s¿è±b¤á',
- 'Edit Business' => '½s¿è·~°È',
- 'Edit Department' => '½s¿è³¡ªù',
- 'Edit GIFI' => '½s¿è GIFI',
- 'Edit Language' => '½s¿è»y¨¥',
- 'Edit Preferences for' => '³]©w¨Ï¥ÎªÌ',
- 'Edit SIC' => '½s¿è­ì¤å',
- 'Edit Template' => '½s¿è¼Òª©',
- 'Edit Warehouse' => '½s¿è­Ü®w',
- 'Enforce transaction reversal for all dates' => '±j¨î©Ò¦³¤é´Áªº¥æ©ö¦^´_',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '½ÐÁä¤J¥H«_¸¹¤À¹jªº­^¤å¦r¥À, ¨C¶µ¤£¶W¹L¤T­Ó¦r (¦p CAD:USD:EUR), §@¬°±zªº¥»°ê¤Î¥~°ê³f¹ô',
- 'Equity' => 'ªÑÅv',
- 'Expense' => '¶O¥Î',
- 'Expense Account' => '¶O¥Î¬ì¥Ø',
- 'Expense/Asset' => '¶O¥Î/¸ê²£',
- 'Fax' => '¶Ç¯u',
- 'Foreign Exchange Gain' => '¥~¶×¦¬¯q',
- 'Foreign Exchange Loss' => '¥~¶×·l¥¢',
- 'GIFI deleted!' => '¤x§R°£',
- 'GIFI missing!' => '¥¼«ü©ú GIFI!',
- 'GIFI saved!' => '¤xÀx¦s',
- 'Heading' => '¼ÐÃD, ',
- 'Include in drop-down menus' => '¥]§t¦b¤U©Ô¦¡¿ï³æ¤¤',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => '­n±N³o­Ó«È¤á/¼t°Ó¥[¤JÀ³¥[µ|²M³æ?',
- 'Income' => '¦¬¤J',
- 'Income Account' => '¦¬¤J±b¤á',
- 'Inventory' => '®w¦s',
- 'Inventory Account' => '¦s³f±b¤á',
- 'Is this a summary account to record' => '¦¹¬°Á`µ²¬ì¥Ø¶Ü?',
- 'Labor/Overhead' => '³Ò¤u/¸g±`¶O¥Î',
- 'Language' => '»y¨¥',
- 'Language deleted!' => '¤x§R°£»y¨¥',
- 'Language saved!' => '¤xÀx¦s»y¨¥',
- 'Languages' => '»y¨¥',
- 'Last Numbers & Default Accounts' => '¤W¤@µ§½s¸¹¤Î¹w³]±b¤á',
- 'Liability' => '­t¶Å',
- 'Licensed to' => '±ÂÅv¤©',
- 'Link' => '³sµ²',
- 'Menu Width' => '¿ï¾Ü³æ¼e«×',
- 'Method' => '¤èªk',
- 'Name' => '¦WºÙ',
- 'No' => '§_',
- 'No email address for' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì¸m',
- 'Number' => '½s¸¹',
- 'Number Format' => '¼Æ¦r®æ¦¡',
- 'Parts Inventory' => '®w¦s­ì®Æ',
- 'Password' => '±K½X',
- 'Payables' => 'À³¥I¬ì¥Ø',
- 'Payment' => '¥I´Ú',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Preferences saved!' => '­Ó¤H³]©w¤wÀx¦s!',
- 'Printer' => '¦Lªí¾÷',
- 'Profit Center' => '§Q¼í¤¤¤ß',
- 'RFQ Number' => 'RFD¸¹½X',
- 'Rate' => 'µ|²v',
- 'Receivables' => 'À³¦¬±b¤á',
- 'Reference' => '°Ñ¦Ò¸ê®Æ',
- 'Remove Audit trails up to' => '²¾°£¼f®Ö½u¯Áª½¦Ü',
- 'Retained Earnings' => '«O¯d¬Õ¾l',
- 'SIC deleted!' => '¤x§R°£­ì¤å',
- 'SIC saved!' => '¤xÀx¦s­ì¤å',
- 'Save' => 'Àx¦s',
- 'Save as new' => '·í·sªºÀx¦s',
- 'Service Items' => 'ªA°È¶µ¥Ø',
- 'Signature' => 'ñ¦W',
- 'Standard Industrial Codes' => '¼Ð·Ç¤u·~½s½X',
- 'Stylesheet' => '¼Ë¦¡ªí',
- 'System Defaults' => '¹w³]¨t²Î',
- 'Tax' => 'µ|ª÷',
- 'Tax Accounts' => 'µ|ª÷¬ì¥Ø',
- 'Template saved!' => '¤xÀx¦s¼Òª©',
- 'Transaction reversal enforced for all dates' => '±j¨î¦^´_©Ò¦³¤é´Áªº¥æ©ö',
- 'Transaction reversal enforced up to' => '±j¨î¦^´_¥æ©öª½¨ì',
- 'Type of Business' => '·~°ÈºØÃþ',
- 'User' => '¨Ï¥ÎªÌ',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Version' => 'ª©¥»',
- 'Warehouse deleted!' => '¤x§R°£­Ü®w',
- 'Warehouse saved!' => '¤xÀx¦s­Ü®w',
- 'Warehouses' => '­Ü®w',
- 'Weight Unit' => '­«¶q³æ¦ì',
- 'Yearend' => '¦~µ²',
- 'Yearend date missing!' => '¥¼«ü©ú¦~µ²¤é´Á',
- 'Yearend posted!' => '¤x¥[¤J¦~µ²',
- 'Yearend posting failed!' => '¦~µ²¥[¤J¥¢±Ñ',
- 'Yes' => '¬O',
- 'account cannot be set to any other type of account' => '±b¤á¤£¯à°e¥h¨ä¥LÃþ«¬±b¤á',
- 'localhost' => '¥»¦a±H¥D',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- '·s¼w±b¤á' => 'add_account',
- '·s¼w·~°È' => 'add_business',
- '·s¼w³¡ªù' => 'add_department',
- '·s¼w»y¨¥' => 'add_language',
- '·s¼w­ì¤å' => 'add_sic',
- '·s¼w­Ü®w' => 'add_warehouse',
- 'Ä~Äò' => 'continue',
- '½Æ»s¨ì_coa' => 'copy_to_coa',
- '§r°£' => 'delete',
- '½s¿è' => 'edit',
- '½s¿è±b¤á' => 'edit_account',
- 'Àx¦s' => 'save',
- '·í·sªºÀx¦s' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ap b/sql-ledger/locale/tw_big5/ap
deleted file mode 100644
index 3ed8ea5..0000000
--- a/sql-ledger/locale/tw_big5/ap
+++ /dev/null
@@ -1,162 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'À³¥I¥¼¥I',
- 'AP Transaction' => 'À³¥I¥æ©ö',
- 'AP Transactions' => 'À³¥I¥æ©ö',
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Amount Due' => 'À³±oªºÁ`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Transaction' => '±z¬O§_½T©w­n§R°£¥æ©ö',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Cannot delete transaction!' => '¤£¯à§R°£¥æ©ö',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cannot post transaction for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J¥æ©ö!',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Check' => 'Àˬd',
- 'Closed' => '¤wÃö³¬',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Continue' => 'Ä~Äò',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Date Paid' => '¥I´Ú¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Due Date' => '¨ì´Á¤é',
- 'Due Date missing!' => '¥¼«ü©ú¨ì´Á¤é!',
- 'Employee' => '¾­û',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'ID' => '½s¸¹',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Manager' => '¸g²z',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Open' => '¶}±Ò',
- 'Order' => '­q³æ',
- 'Order Number' => '­q³æ½s¸¹',
- 'Paid' => '¤w¥I',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payments' => '¥I´Ú',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Receipt' => '¦¬¾Ú',
- 'Remaining' => '©|¾l',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Source' => '¨Ó·½',
- 'Subtotal' => '¤p­p',
- 'Tax' => 'µ|ª÷',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Transaction deleted!' => '¤x§R°£¥æ©ö',
- 'Transaction posted!' => '¤x¥[¤J¥æ©ö',
- 'Update' => '§ó·s',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor missing!' => '¥¼«ü©ú¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Yes' => '¬O',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'À³¥i¥æ©ö' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- '¦c¦l' => 'print',
- 'print_and_post' => 'print_and_post',
- '§ó·s' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ar b/sql-ledger/locale/tw_big5/ar
deleted file mode 100644
index f021ca7..0000000
--- a/sql-ledger/locale/tw_big5/ar
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'À³¦¬¥¼¦¬',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'AR Transactions' => 'À³¦¬¥æ©ö',
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Amount Due' => 'À³±oªºÁ`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Transaction' => '±z¬O§_½T©w­n§R°£¥æ©ö',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Cannot delete transaction!' => '¤£¯à§R°£¥æ©ö',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cannot post transaction for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J¥æ©ö!',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Check' => 'Àˬd',
- 'Closed' => '¤wÃö³¬',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Continue' => 'Ä~Äò',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Customer' => '«È¤á',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Date Paid' => '¥I´Ú¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Due Date' => '¨ì´Á¤é',
- 'Due Date missing!' => '¥¼«ü©ú¨ì´Á¤é!',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'ID' => '½s¸¹',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Manager' => '¸g²z',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Open' => '¶}±Ò',
- 'Order' => '­q³æ',
- 'Order Number' => '­q³æ½s¸¹',
- 'Paid' => '¤w¥I',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payments' => '¥I´Ú',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Receipt' => '¦¬¾Ú',
- 'Remaining' => '©|¾l',
- 'Salesperson' => '¾P°â¤H­û',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Ship via' => '¥Ñ®ü¹B',
- 'Shipping Point' => '®ü¹B¦aÂI',
- 'Source' => '¨Ó·½',
- 'Subtotal' => '¤p­p',
- 'Tax' => 'µ|ª÷',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'Till' => 'ª½¨ì',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Transaction deleted!' => '¤x§R°£¥æ©ö',
- 'Transaction posted!' => '¤x¥[¤J¥æ©ö',
- 'Update' => '§ó·s',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Yes' => '¬O',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'À³¦¬¥æ©ö' => 'ar_transaction',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- '¦c¦l' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- '§ó·s' => 'update',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/arap b/sql-ledger/locale/tw_big5/arap
deleted file mode 100644
index 70759a8..0000000
--- a/sql-ledger/locale/tw_big5/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => '¦a§}',
- 'Continue' => 'Ä~Äò',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Description' => '»¡©ú',
- 'Number' => '½s¸¹',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Ä~Äò' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/arapprn b/sql-ledger/locale/tw_big5/arapprn
deleted file mode 100644
index 6dbdb5e..0000000
--- a/sql-ledger/locale/tw_big5/arapprn
+++ /dev/null
@@ -1,32 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Amount' => 'Á`­p',
- 'Check' => 'Àˬd',
- 'Continue' => 'Ä~Äò',
- 'Date' => '¤é´Á',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Postscript' => 'ªþ¨¥',
- 'Printed' => '¤x¦C¦L',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Receipt' => '¦¬¾Ú',
- 'Screen' => '¿Ã¹õ',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Source' => '¨Ó·½',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'Ä~Äò' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/bp b/sql-ledger/locale/tw_big5/bp
deleted file mode 100644
index 0728cab..0000000
--- a/sql-ledger/locale/tw_big5/bp
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Are you sure you want to remove the marked entries from the queue?' => '±z¬O§_½T©w­n®ø°£¦³°O¸¹ªº±ø¥Ø',
- 'Cannot remove files!' => '¤£¯à²¾°£ÀÉ®×',
- 'Checks' => 'Àˬd',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Continue' => 'Ä~Äò',
- 'Current' => '²{¦³',
- 'Customer' => '«È¤á',
- 'Date' => '¤é´Á',
- 'From' => '±q',
- 'Invoice' => 'µo²¼',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Marked entries printed!' => '¤x¦C¦L¦³°O¸¹ªº·|­p¶µ¥Ø',
- 'Order' => '­q³æ',
- 'Order Number' => '­q³æ½s¸¹',
- 'Packing Lists' => '¥X³f³æ',
- 'Print' => '¦C¦L',
- 'Printing ... ' => '¥¿¦C¦L',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Number' => '³ø»ù³æ¸¹½X',
- 'Quotations' => '³ø»ù³æ',
- 'Receipts' => '¦¬¾Ú',
- 'Reference' => '°Ñ¦Ò¸ê®Æ',
- 'Remove' => '²¾°£',
- 'Removed spoolfiles!' => '²¾°£½u¶bÀÉ®×',
- 'Removing marked entries from queue ...' => '¥¿±qªø¶¤¤¤²¾°£¦³°O¸¹ªº·|­p¶µ¥Ø',
- 'Sales Invoices' => '¾P°âµo²¼',
- 'Sales Orders' => '¾P³f³æ',
- 'Select all' => '¥þ¿ï',
- 'Spoolfile' => '½u¶bÀÉ®×',
- 'To' => '¦Ü',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Yes' => '¬O',
- 'done' => '§¹¦¨',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'Ä~Äò' => 'continue',
- '¦c¦l' => 'print',
- '²¾°£' => 'remove',
- '¥þ¿ï' => 'select_all',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ca b/sql-ledger/locale/tw_big5/ca
deleted file mode 100644
index 334cf0b..0000000
--- a/sql-ledger/locale/tw_big5/ca
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Balance' => '¾lÃB',
- 'Chart of Accounts' => '·|­p¬ì¥Øªí',
- 'Credit' => '¶U¤è',
- 'Current' => '²{¦³',
- 'Date' => '¤é´Á',
- 'Debit' => '­É¤è',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'List Transactions' => '¦C¥X¥æ©ö',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Project Number' => '¤è®×¸¹½X',
- 'Reference' => '°Ñ¦Ò¸ê®Æ',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Subtotal' => '¤p­p',
- 'To' => '¦Ü',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- '¦c¥x¥æ©ö' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/cp b/sql-ledger/locale/tw_big5/cp
deleted file mode 100644
index 2c4de78..0000000
--- a/sql-ledger/locale/tw_big5/cp
+++ /dev/null
@@ -1,83 +0,0 @@
-$self{texts} = {
- 'AP' => 'À³¥I±b´Ú',
- 'AR' => 'À³¦¬±b´Ú',
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Address' => '¦a§}',
- 'All' => '¥þ³¡',
- 'Amount' => 'Á`­p',
- 'Amount Due' => 'À³±oªºÁ`­p',
- 'Cannot post Payment!' => '¤£¯à¥[¤J´Ú¶µ',
- 'Cannot post Receipt!' => '¤£¯à¥[¤J¦¬¾Ú',
- 'Cannot process payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º³B²z´Ú¶µ',
- 'Continue' => 'Ä~Äò',
- 'Currency' => '¹ô§O',
- 'Customer' => '«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Date missing!' => '¥¼«ü©ú¤é´Á',
- 'Department' => '³¡ªù',
- 'Deposit' => '¦s´Ú',
- 'Description' => '»¡©ú',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Invoice' => 'µo²¼',
- 'Invoices' => 'µo²¼',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Nothing outstanding for ' => '¨S¦³¥¼¥I¨Ó·½',
- 'Number' => '½s¸¹',
- 'Payment' => '¥I´Ú',
- 'Payment posted!' => '¤x¥[¤J¥I´Ú',
- 'Post' => '¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Prepayment' => '¹wú',
- 'Print' => '¦C¦L',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Queue' => 'ªø¶¤',
- 'Receipt' => '¦¬¾Ú',
- 'Receipt posted!' => '¤x¥[¤J¦¬¾Ú',
- 'Screen' => '¿Ã¹õ',
- 'Select' => '¿ï¾Ü',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Source' => '¨Ó·½',
- 'Update' => '§ó·s',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Ä~Äò' => 'continue',
- '¥[¤j' => 'post',
- '¦c¦l' => 'print',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ct b/sql-ledger/locale/tw_big5/ct
deleted file mode 100644
index 066b253..0000000
--- a/sql-ledger/locale/tw_big5/ct
+++ /dev/null
@@ -1,167 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'À³¥I¥æ©ö',
- 'AP Transactions' => 'À³¥I¥æ©ö',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'AR Transactions' => 'À³¦¬¥æ©ö',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Customer' => '·s¼W«È¤á',
- 'Add Vendor' => '·s¼W¨ÑÀ³°Ó',
- 'Address' => '¦a§}',
- 'All' => '¥þ³¡',
- 'Amount' => 'Á`­p',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Break' => '¥ð®§',
- 'Cannot delete customer!' => '¤£¯à§R°£«È¤á',
- 'Cannot delete vendor!' => '¤£¯à§R°£¨ÑÀ³°Ó',
- 'Cc' => '§Û°e',
- 'City' => '«°¥«',
- 'Closed' => '¤wÃö³¬',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Cost' => '¦¨¥»',
- 'Country' => '°ê®a',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Customer History' => '«È¤á¾ú¥v',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer deleted!' => '¤x§R°£«È¤á',
- 'Customer saved!' => '¤xÀx¦s«È¤á',
- 'Customers' => '«È¤á',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Description' => '»¡©ú',
- 'Detail' => '¸Ô±¡',
- 'Discount' => '§é¦©',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'Edit Customer' => '½s¿è«È¤á',
- 'Edit Vendor' => '½s¿è¨ÑÀ³°Ó',
- 'Employee' => '¾­û',
- 'Enddate' => 'µ²§ô¤é',
- 'Fax' => '¶Ç¯u',
- 'From' => '±q',
- 'Group' => '²Õ',
- 'ID' => '½s¸¹',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Invoice' => 'µo²¼',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Language' => '»y¨¥',
- 'Leadtime' => 'Á`»Ý®É',
- 'Manager' => '¸g²z',
- 'Name' => '¦WºÙ',
- 'Name missing!' => '¥¼«ü©ú¦W¦r',
- 'Notes' => '³Æµù',
- 'Number' => '½s¸¹',
- 'Open' => '¶}±Ò',
- 'Order' => '­q³æ',
- 'Orphaned' => 'µL¥D',
- 'Part Number' => '­ì®Æ½s¸¹',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pricegroup' => '»ù®æ²Õ',
- 'Project Number' => '¤è®×¸¹½X',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Quotation' => '³ø»ù³æ',
- 'Quotations' => '³ø»ù³æ',
- 'Request for Quotations' => '­n¨D³ø»ù³æ',
- 'SIC' => '­ì¤å',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Invoice' => '¾P°âµo²¼',
- 'Sales Invoices' => '¾P°âµo²¼',
- 'Sales Order' => '¾P³f³æ',
- 'Sales Orders' => '¾P³f³æ',
- 'Salesperson' => '¾P°â¤H­û',
- 'Save' => 'Àx¦s',
- 'Search' => '·j´M',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Sell Price' => '°â»ù',
- 'Serial Number' => '§Ç¸¹',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Startdate' => '¶}©l¤é´Á',
- 'State/Province' => '¬Ù',
- 'Sub-contract GIFI' => '²Ó¦X¬ùGIFI',
- 'Subtotal' => '¤p­p',
- 'Summary' => 'ºK­n',
- 'Tax' => 'µ|ª÷',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'Tax Number' => 'µ|¸¹',
- 'Tax Number / SSN' => 'µ|¸¹',
- 'Taxable' => 'À³µ|',
- 'Terms' => '²¼´Á²b­p',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Type of Business' => '·~°ÈºØÃþ',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
- 'Vendor History' => '¨ÑÀ³°Ó¾ú¥v',
- 'Vendor Invoice' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Invoices' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor deleted!' => '¤x§R°£¨ÑÀ³°Ó',
- 'Vendor saved!' => '¤xÀx¦s¨ÑÀ³°Ó',
- 'Vendors' => '¨ÑÀ³°Ó',
- 'days' => '¤é',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'À³¥i¥æ©ö' => 'ap_transaction',
- 'À³¦¬¥æ©ö' => 'ar_transaction',
- '·s¼w«È¤á' => 'add_customer',
- '·s¼w¨ÑÀ³°Ó' => 'add_vendor',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- 'pricelist' => 'pricelist',
- '±ÄÁʳæ' => 'purchase_order',
- '³ø»ù³æ' => 'quotation',
- 'rfq' => 'rfq',
- '¾p°âµo²¼' => 'sales_invoice',
- '¾p³f³æ' => 'sales_order',
- 'Àx¦s' => 'save',
- 'save_pricelist' => 'save_pricelist',
- '§ó·s' => 'update',
- '¨ÑÀ³°Óµo²¼' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/gl b/sql-ledger/locale/tw_big5/gl
deleted file mode 100644
index e59ad7b..0000000
--- a/sql-ledger/locale/tw_big5/gl
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'À³¥I¥æ©ö',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Cash Transfer Transaction' => '·s¼W²{ª÷Âಾ±b¥Ø',
- 'Add General Ledger Transaction' => '·s¼WÁ`±b',
- 'Address' => '¦a§}',
- 'All' => '¥þ³¡',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Transaction' => '±z¬O§_½T©w­n§R°£¥æ©ö',
- 'Asset' => '¸ê²£',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Balance' => '¾lÃB',
- 'Cannot delete transaction!' => '¤£¯à§R°£¥æ©ö',
- 'Cannot post transaction for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J¥æ©ö!',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Continue' => 'Ä~Äò',
- 'Contra' => '¬Û¤Ï',
- 'Credit' => '¶U¤è',
- 'Current' => '²{¦³',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Debit' => '­É¤è',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Edit Cash Transfer Transaction' => '½s¿è²{ª÷Âಾ',
- 'Edit General Ledger Transaction' => '½s¿èÁ`±b',
- 'Equity' => 'ªÑÅv',
- 'Expense' => '¶O¥Î',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'GL Transaction' => 'GL¥æ©ö',
- 'General Ledger' => 'Á`±b',
- 'ID' => '½s¸¹',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Income' => '¦¬¤J',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Liability' => '­t¶Å',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Out of balance transaction!' => '¤£¨ó½Õ¥æ©ö',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Project' => '¤è®×',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Reference' => '°Ñ¦Ò¸ê®Æ',
- 'Reference missing!' => '¥¼«ü©ú°Ñ¦Ò¸ê®Æ',
- 'Reports' => '³øªí',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Source' => '¨Ó·½',
- 'Subtotal' => '¤p­p',
- 'To' => '¦Ü',
- 'Transaction Date missing!' => '¥¼«ü©ú¥æ©ö¤é´Á!',
- 'Transaction deleted!' => '¤x§R°£¥æ©ö',
- 'Transaction posted!' => '¤x¥[¤J¥æ©ö',
- 'Update' => '§ó·s',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Warning!' => 'ĵ§i',
- 'Yes' => '¬O',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'À³¥i¥æ©ö' => 'ap_transaction',
- 'À³¦¬¥æ©ö' => 'ar_transaction',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- 'gl¥æ©ö' => 'gl_transaction',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- '§ó·s' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/hr b/sql-ledger/locale/tw_big5/hr
deleted file mode 100644
index 78e86a8..0000000
--- a/sql-ledger/locale/tw_big5/hr
+++ /dev/null
@@ -1,104 +0,0 @@
-$self{texts} = {
- 'AP' => 'À³¥I±b´Ú',
- 'Above' => '¤W¤å',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Deduction' => '·s¼W¦©°£',
- 'Add Employee' => '·s¼W¾­û',
- 'Address' => '¦a§}',
- 'Administrator' => 'ºÞ²z¤H',
- 'After Deduction' => '¦©°£¥H«á',
- 'All' => '¥þ³¡',
- 'Allowances' => '¬z¶K',
- 'Amount' => 'Á`­p',
- 'Amount missing!' => 'º|¶ñªºÁ`­p',
- 'Based on' => '°ò©ó',
- 'Before Deduction' => '¦©°£¤§«e',
- 'Below' => '¥H¤U',
- 'City' => '«°¥«',
- 'Continue' => 'Ä~Äò',
- 'Country' => '°ê®a',
- 'Deduct after' => '´î¤Ö¥H«á',
- 'Deduction deleted!' => '¤x§R°£´î¤Ö',
- 'Deduction saved!' => '¤xÀx¦s´î¤Ö',
- 'Deductions' => '´î°£ÃB',
- 'Delete' => '§R°£',
- 'Description' => '»¡©ú',
- 'Description missing!' => '¥¼«ü©ú´y­z',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'Edit Deduction' => '½s¿è´î°£ÃB',
- 'Edit Employee' => '½s¿è¾­û',
- 'Employee' => '¾­û',
- 'Employee Name' => '¾­û©m¦W',
- 'Employee deleted!' => '¤x§R°£Â¾­û',
- 'Employee pays' => '¥I´Úµ¹Â¾­û',
- 'Employee saved!' => '¤xÀx¦s¾­û',
- 'Employees' => '¾­û',
- 'Employer' => '¶±¥D',
- 'Employer pays' => '¥I´Úµ¹¶±¥D',
- 'Enddate' => 'µ²§ô¤é',
- 'Expense' => '¶O¥Î',
- 'Home Phone' => '¦í¦v¹q¸Ü',
- 'ID' => '½s¸¹',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Login' => 'µn¤J',
- 'Manager' => '¸g²z',
- 'Maximum' => '³Ì¤j',
- 'Name' => '¦WºÙ',
- 'Name missing!' => '¥¼«ü©ú¦W¦r',
- 'Notes' => '³Æµù',
- 'Number' => '½s¸¹',
- 'Orphaned' => 'µL¥D',
- 'Payroll Deduction' => 'Á~ª÷´î°£ÃB',
- 'Rate' => 'µ|²v',
- 'Rate missing!' => '¥¼«ü©úµ|²v',
- 'Role' => '¥ô°È',
- 'Sales' => '¾P°â',
- 'Save' => 'Àx¦s',
- 'Save as new' => '·í·sªºÀx¦s',
- 'Startdate' => '¶}©l¤é´Á',
- 'State/Province' => '¬Ù',
- 'Update' => '§ó·s',
- 'User' => '¨Ï¥ÎªÌ',
- 'Work Phone' => '¤u§@¹q¸Ü',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- '·s¼w¦©°£' => 'add_deduction',
- '·s¼w¾­û' => 'add_employee',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- 'Àx¦s' => 'save',
- '·í·sªºÀx¦s' => 'save_as_new',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ic b/sql-ledger/locale/tw_big5/ic
deleted file mode 100644
index ed42877..0000000
--- a/sql-ledger/locale/tw_big5/ic
+++ /dev/null
@@ -1,265 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Accrual' => '²Ö¿n',
- 'Active' => '¬¡ÅD',
- 'Add' => '·s¼W',
- 'Add Assembly' => '·s¼W°Ó«~',
- 'Add Labor/Overhead' => '·s¼W³Ò¤u/¸g±`¶O¥Î',
- 'Add Part' => '·s¼W­ì®Æ',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Add Service' => '·s¼WªA°È',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Assemblies' => '°Ó«~',
- 'Assemblies restocked!' => '¤x­«·s¶i³fªº°Ó«~',
- 'Assembly' => '°Ó«~',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Break' => '¥ð®§',
- 'COGS' => '³f¾P¦¨¥»',
- 'Cannot delete item!' => '¤£¯à§R°£¶µ¥Ø',
- 'Cannot stock assemblies!' => '¤£¯à±`³Æªº°Ó«~',
- 'Cash' => '²{ª÷',
- 'Cc' => '§Û°e',
- 'Check Inventory' => 'Àˬd¦s³f²M³æ',
- 'City' => '«°¥«',
- 'Closed' => '¤wÃö³¬',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Components' => '¹s¥ó',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Cost' => '¦¨¥»',
- 'Country' => '°ê®a',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Customer' => '«È¤á',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Description' => '»¡©ú',
- 'Drawing' => '¹Ïµe',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit Assembly' => '½s¿è°Ó«~',
- 'Edit Labor/Overhead' => '½s¿è³Ò¤u/¸g±`¶O¥Î',
- 'Edit Part' => '½s¿è­ì®Æ',
- 'Edit Service' => '½s¿èªA°È',
- 'Employee' => '¾­û',
- 'Expense' => '¶O¥Î',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'Image' => '§Î¹³',
- 'In-line' => '¦æ¤º',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Income' => '¦¬¤J',
- 'Individual Items' => '­Ó§Oªº¶µ¥Ø',
- 'Inventory' => '®w¦s',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¦b°±¥Î¦¹¶µ²Õ¦X«~¤§«e, ¦s³f¼Æ¶q¥²»Ý¬°¹s!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '°±¥Î¦¹¶µ¹s¥ó¤§«e, ¦s³f¼Æ¶q¥²»Ý¬°¹s!',
- 'Invoice' => 'µo²¼',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Item deleted!' => '¤x§R°£¶µ¥Ø',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Items' => '¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Labor/Overhead' => '³Ò¤u/¸g±`¶O¥Î',
- 'Leadtime' => 'Á`»Ý®É',
- 'Line Total' => 'Á`¦C¼Æ',
- 'Link Accounts' => '³sµ²±b¤á',
- 'List Price' => '¦C¥X»ù',
- 'Make' => '»s³y',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'Markup' => 'º¦»ù',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Message' => '°T®§',
- 'Microfiche' => '³æ¤ùÁY¼v½¦¤ù',
- 'Model' => '«¬¸¹',
- 'Name' => '¦WºÙ',
- 'No.' => '§_',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Obsolete' => '°±¥Î',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'On Hand' => '¤x¦³¦s¶q',
- 'Open' => '¶}±Ò',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Orphaned' => 'µL¥D',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Part' => '­ì®Æ',
- 'Parts' => '­ì®Æ',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Pricegroup' => '»ù®æ²Õ',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Quantity exceeds available units to stock!' => '¶W¹L¥i®w¦sªº¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Quotations' => '³ø»ù³æ',
- 'ROP' => '¦A­qÂI',
- 'Recd' => '¤x¦¬¨ì',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Invoice' => '¾P°âµo²¼',
- 'Sales Invoices' => '¾P°âµo²¼',
- 'Sales Order' => '¾P³f³æ',
- 'Sales Orders' => '¾P³f³æ',
- 'Save' => 'Àx¦s',
- 'Save as new' => '·í·sªºÀx¦s',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Sell Price' => '°â»ù',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Serial Number' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Services' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship to' => '®ü¹B¦Ü',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Short' => 'µu',
- 'State/Province' => '¬Ù',
- 'Stock' => '®w¦s',
- 'Stock Assembly' => '½LÂI',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Tax' => 'µ|ª÷',
- 'To' => '¦Ü',
- 'Top Level' => '°ª¤ô·Ç',
- 'Unit' => '³æ¦ì',
- 'Unit of measure' => '«×¶q³æ¦ì',
- 'Update' => '§ó·s',
- 'Updated' => '¤x§ó·s',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor Invoice' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Invoices' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Warehouse' => '­Ü®w',
- 'Weight' => '­«¶q',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'days' => '¤é',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- '·s¼w°Ó«~' => 'add_assembly',
- '·s¼w³Ò¤u/¸g±`¶o¥Î' => 'add_labor/overhead',
- '·s¼w­ì®Æ' => 'add_part',
- '·s¼wªa°È' => 'add_service',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '½s¿è°Ó«~' => 'edit_assembly',
- '½s¿è­ì®Æ' => 'edit_part',
- '½s¿èªa°È' => 'edit_service',
- 'Àx¦s' => 'save',
- '·í·sªºÀx¦s' => 'save_as_new',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/io b/sql-ledger/locale/tw_big5/io
deleted file mode 100644
index 9e6e58a..0000000
--- a/sql-ledger/locale/tw_big5/io
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Address' => '¦a§}',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Cc' => '§Û°e',
- 'City' => '«°¥«',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Country' => '°ê®a',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Date' => '¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Description' => '»¡©ú',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'In-line' => '¦æ¤º',
- 'Invoice' => 'µo²¼',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Message' => '°T®§',
- 'No.' => '§_',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Part' => '­ì®Æ',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Recd' => '¤x¦¬¨ì',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Order' => '¾P³f³æ',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship to' => '®ü¹B¦Ü',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'State/Province' => '¬Ù',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'To' => '¦Ü',
- 'Unit' => '³æ¦ì',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'Ä~Äò' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ir b/sql-ledger/locale/tw_big5/ir
deleted file mode 100644
index 041fddb..0000000
--- a/sql-ledger/locale/tw_big5/ir
+++ /dev/null
@@ -1,212 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Add Vendor Invoice' => '·s¼W¨ÑÀ³°Óµo²¼',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Invoice Number' => '±z½T©w­n§R°£µo²¼½s¸¹',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Cannot delete invoice!' => '¤£¯à§R°£µo²¼',
- 'Cannot post invoice for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤Jµo²¼',
- 'Cannot post invoice!' => '¤£¯à¥[¤Jµo²¼',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cc' => '§Û°e',
- 'City' => '«°¥«',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Country' => '°ê®a',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Currency' => '¹ô§O',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Due Date' => '¨ì´Á¤é',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit Vendor Invoice' => '½s¿è¨ÑÀ³°Óµo²¼',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'In-line' => '¦æ¤º',
- 'Internal Notes' => '¤º³¡³Æ§Ñ¿ý',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Invoice deleted!' => '¤x§R°£µo²¼',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Language' => '»y¨¥',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Message' => '°T®§',
- 'No.' => '§_',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Part' => '­ì®Æ',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payments' => '¥I´Ú',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Recd' => '¤x¦¬¨ì',
- 'Record in' => '°O¿ý©ó',
- 'Remaining' => '©|¾l',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Order' => '¾P³f³æ',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship to' => '®ü¹B¦Ü',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Source' => '¨Ó·½',
- 'State/Province' => '¬Ù',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor missing!' => '¥¼«ü©ú¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'Yes' => '¬O',
- 'ea' => '­Ó',
- 'posted!' => '¤x¥[¤J',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- '±ÄÁʳæ' => 'purchase_order',
- '§ó·s' => 'update',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/is b/sql-ledger/locale/tw_big5/is
deleted file mode 100644
index 5f2e822..0000000
--- a/sql-ledger/locale/tw_big5/is
+++ /dev/null
@@ -1,225 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Invoice' => '·s¼W¾P°âµo²¼',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Invoice Number' => '±z½T©w­n§R°£µo²¼½s¸¹',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Business' => '·~°È',
- 'Cannot delete invoice!' => '¤£¯à§R°£µo²¼',
- 'Cannot post invoice for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤Jµo²¼',
- 'Cannot post invoice!' => '¤£¯à¥[¤Jµo²¼',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cc' => '§Û°e',
- 'City' => '«°¥«',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Country' => '°ê®a',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Currency' => '¹ô§O',
- 'Customer' => '«È¤á',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Due Date' => '¨ì´Á¤é',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit Sales Invoice' => '½s¿è¾P°âµo²¼',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'In-line' => '¦æ¤º',
- 'Internal Notes' => '¤º³¡³Æ§Ñ¿ý',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Invoice deleted!' => '¤x§R°£µo²¼',
- 'Invoice posted!' => '¤x¥[¤Jµo²¼',
- 'Invoice processed!' => '¤x³B²zµo²¼',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Message' => '°T®§',
- 'No.' => '§_',
- 'Notes' => '³Æµù',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Part' => '­ì®Æ',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payments' => '¥I´Ú',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Recd' => '¤x¦¬¨ì',
- 'Record in' => '°O¿ý©ó',
- 'Remaining' => '©|¾l',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Order' => '¾P³f³æ',
- 'Salesperson' => '¾P°â¤H­û',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship to' => '®ü¹B¦Ü',
- 'Ship via' => '¥Ñ®ü¹B',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Shipping Point' => '®ü¹B¦aÂI',
- 'Source' => '¨Ó·½',
- 'State/Province' => '¬Ù',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Trade Discount' => '¶T©ö§é¦©',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'Yes' => '¬O',
- 'ea' => '­Ó',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¹q¤l¶l¥ó' => 'e_mail',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- '¦c¦l' => 'print',
- 'print_and_post' => 'print_and_post',
- '¾p³f³æ' => 'sales_order',
- '®ü¹b¦Ü' => 'ship_to',
- '§ó·s' => 'update',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/login b/sql-ledger/locale/tw_big5/login
deleted file mode 100644
index e6a7228..0000000
--- a/sql-ledger/locale/tw_big5/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => '¤½¥q',
- 'Continue' => 'Ä~Äò',
- 'Dataset is newer than version!' => '¸û·s¸ê®Æ¶°',
- 'Incorrect Dataset version!' => '¸ê®Æ¶°ª©¥»¿ù»~!',
- 'Incorrect Password!' => '±K½X¿ù»~!',
- 'Login' => 'µn¤J',
- 'Name' => '¦WºÙ',
- 'Password' => '±K½X',
- 'Upgrading to Version' => '¥¿¤É¯Å¦Ü·sª©',
- 'Version' => 'ª©¥»',
- 'You did not enter a name!' => '§A¨Ã¥¼Áä¤J¦WºÙ!',
- 'done' => '§¹¦¨',
- 'is not a member!' => '¨Ã¤£¬O¦¨­û!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'µn¤j' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/menu b/sql-ledger/locale/tw_big5/menu
deleted file mode 100644
index be4a94a..0000000
--- a/sql-ledger/locale/tw_big5/menu
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP' => 'À³¥I±b´Ú',
- 'AP Aging' => 'À³¥I±bÄÖ¤ÀªR',
- 'AP Transaction' => 'À³¥I¥æ©ö',
- 'AR' => 'À³¦¬±b´Ú',
- 'AR Aging' => 'À³¦¬±bÄÖ¤ÀªR',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Account' => '·s¼W±b¤á',
- 'Add Assembly' => '·s¼W°Ó«~',
- 'Add Business' => '·s¼W·~°È',
- 'Add Customer' => '·s¼W«È¤á',
- 'Add Department' => '·s¼W³¡ªù',
- 'Add Employee' => '·s¼W¾­û',
- 'Add GIFI' => '·s¼W GIFI',
- 'Add Group' => '·s¼W²Õ',
- 'Add Labor/Overhead' => '·s¼W³Ò¤u/¸g±`¶O¥Î',
- 'Add Language' => '·s¼W»y¨¥',
- 'Add Part' => '·s¼W­ì®Æ',
- 'Add Pricegroup' => '·s¼W»ù®æ²Õ',
- 'Add Project' => '·s¼W¤è®×',
- 'Add SIC' => '·s¼W­ì¤å',
- 'Add Service' => '·s¼WªA°È',
- 'Add Transaction' => '·s¼W¥æ©ö',
- 'Add Vendor' => '·s¼W¨ÑÀ³°Ó',
- 'Add Warehouse' => '·s¼W­Ü®w',
- 'All Items' => '¥þ³¡¶µ¥Ø',
- 'Assemblies' => '°Ó«~',
- 'Audit Control' => '½]®Ö±±¨î',
- 'Backup' => '³Æ¥÷',
- 'Balance Sheet' => '¸ê²£­t¶Åªí',
- 'Batch Printing' => '¾ã§å¦L¨ê',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Cash' => '²{ª÷',
- 'Chart of Accounts' => '·|­p¬ì¥Øªí',
- 'Check' => 'Àˬd',
- 'Checks' => 'Àˬd',
- 'Components' => '¹s¥ó',
- 'Customers' => '«È¤á',
- 'Defaults' => '¹w³]',
- 'Departments' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Employees' => '¾­û',
- 'General Ledger' => 'Á`±b',
- 'Goods & Services' => '³fª«¤ÎªA°È',
- 'Groups' => '²Õ',
- 'HR' => '¤H¨ÆºÞ²z',
- 'HTML Templates' => 'HTML ªí³æ',
- 'History' => '¾ú¥v',
- 'Income Statement' => '·l¯qªí',
- 'Invoice' => 'µo²¼',
- 'LaTeX Templates' => 'LaTex ¼Òª©',
- 'Labor/Overhead' => '³Ò¤u/¸g±`¶O¥Î',
- 'Language' => '»y¨¥',
- 'List Accounts' => '¦C¥X±b¸¹',
- 'List Businesses' => '¦C¥X·~°È',
- 'List Departments' => '¦C¥X³¡ªù',
- 'List GIFI' => '¦C¥X GIFI',
- 'List Languages' => '¦C¥X»y¨¥',
- 'List Projects' => '¦C¥X¤è®×',
- 'List SIC' => '¦C¥XSIC',
- 'List Warehouses' => '¦C¥X­Ü®w',
- 'Logout' => 'µn¥X',
- 'Non-taxable' => '¤£À³½Òµ|',
- 'Open' => '¶}±Ò',
- 'Order Entry' => '¤U³æ¶µ¥Ø',
- 'Outstanding' => '¥¼¥I',
- 'POS Invoice' => 'POSµo²¼',
- 'Packing List' => '¥X³f³æ',
- 'Packing Lists' => '¥X³f³æ',
- 'Parts' => '­ì®Æ',
- 'Payment' => '¥I´Ú',
- 'Payments' => '¥I´Ú',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Preferences' => '­Ó¤H³]©w',
- 'Pricegroups' => '»ù®æ²Õ',
- 'Print' => '¦C¦L',
- 'Projects' => '¤è®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Quotation' => '³ø»ù³æ',
- 'Quotations' => '³ø»ù³æ',
- 'Receipt' => '¦¬¾Ú',
- 'Receipts' => '¦¬¾Ú',
- 'Receive' => '¦¬¨ì',
- 'Reconciliation' => '½Õ©M',
- 'Reports' => '³øªí',
- 'SIC' => '­ì¤å',
- 'Sale' => '¾P°â',
- 'Sales Invoice' => '¾P°âµo²¼',
- 'Sales Invoices' => '¾P°âµo²¼',
- 'Sales Order' => '¾P³f³æ',
- 'Sales Orders' => '¾P³f³æ',
- 'Save to File' => 'Àx¦s¦ÜÀÉ®×',
- 'Search' => '·j´M',
- 'Send by E-Mail' => '¥H¹q¤l¶l¥ó±H°e',
- 'Services' => 'ªA°È',
- 'Ship' => '²î',
- 'Shipping' => '®ü¹B',
- 'Statement' => '·|­p±b',
- 'Stock Assembly' => '½LÂI',
- 'Stylesheet' => '¼Ë¦¡ªí',
- 'System' => '¨t²Î',
- 'Tax collected' => '¤x¦¬µ|ª÷',
- 'Tax paid' => '¤x¥Iµ|ª÷',
- 'Text Templates' => '¤å¦r¼Òª©',
- 'Transactions' => '¥æ©ö',
- 'Transfer' => 'Âಾ',
- 'Translations' => '½Ķ',
- 'Trial Balance' => '¸Õºâªí',
- 'Type of Business' => '·~°ÈºØÃþ',
- 'Vendor Invoice' => '¨ÑÀ³°Óµo²¼',
- 'Vendors' => '¨ÑÀ³°Ó',
- 'Version' => 'ª©¥»',
- 'Warehouses' => '­Ü®w',
- 'Work Order' => '¤u§@³æ',
- 'Yearend' => '¦~µ²',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/oe b/sql-ledger/locale/tw_big5/oe
deleted file mode 100644
index 7fa2af2..0000000
--- a/sql-ledger/locale/tw_big5/oe
+++ /dev/null
@@ -1,293 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Exchange Rate' => '·s¼W¥~¶×²v',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Invoice' => '·s¼W¾P°âµo²¼',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Add Vendor Invoice' => '·s¼W¨ÑÀ³°Óµo²¼',
- 'Address' => '¦a§}',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Order Number' => '±z¬O§_½T©w­n§R°£­q³æ½s¸¹',
- 'Are you sure you want to delete Quotation Number' => '±z¬O§_½T©w­n§R°£³ø»ù³æ½s¸¹',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Business' => '·~°È',
- 'Cannot delete order!' => '¤£¯à§R°£©w³æ',
- 'Cannot delete quotation!' => '¤£¯à§R°£³ø»ù³æ',
- 'Cannot save order!' => '¤£¯àÀx¦s©w³æ',
- 'Cannot save quotation!' => '¤£¯àÀx¦s³ø»ù³æ',
- 'Cc' => '§Û°e',
- 'City' => '«°¥«',
- 'Closed' => '¤wÃö³¬',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Could not save!' => '¤£¯àÀx¦s',
- 'Could not transfer Inventory!' => '¦s³f²M³æ¤£¯àÂಾ',
- 'Country' => '°ê®a',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Customer' => '«È¤á',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Date Received' => '¦¬´Ú¤é´Á',
- 'Date received missing!' => '¥¼«ü©ú¦¬´Ú¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Done' => '¤x§¹¦¨',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit Purchase Order' => '½s¿è±ÄÁʳæ',
- 'Edit Quotation' => '½s¿è³ø»ù³æ',
- 'Edit Request for Quotation' => '½s¿è³ø»ù³æ­n¨D',
- 'Edit Sales Order' => '½s¿è¾P³f³æ',
- 'Employee' => '¾­û',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'ID' => '½s¸¹',
- 'In-line' => '¦æ¤º',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Internal Notes' => '¤º³¡³Æ§Ñ¿ý',
- 'Inventory saved!' => '¤xÀx¦s¦s³f',
- 'Inventory transferred!' => 'Âಾªº¦s³f',
- 'Invoice' => 'µo²¼',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Manager' => '¸g²z',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Message' => '°T®§',
- 'No.' => '§_',
- 'Notes' => '³Æµù',
- 'Nothing entered!' => '¨S¦³¤x¿é¤J',
- 'Nothing to transfer!' => '¨S¦³¥iÂಾªº¶µ¥Ø',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Open' => '¶}±Ò',
- 'Order' => '­q³æ',
- 'Order Date' => '¤U³æ¤é´Á',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Order deleted!' => '¤x§R°£­q³æ',
- 'Order processed!' => '¤x³B²z­q³æ',
- 'Order saved!' => '¤xÀx¦s­q³æ',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Part' => '­ì®Æ',
- 'Part Number' => '­ì®Æ½s¸¹',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Purchase Orders' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date' => '³ø»ù³æ¤é´Á',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number' => '³ø»ù³æ¸¹½X',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Quotation deleted!' => '¤x§R°£³ø»ù³æ',
- 'Quotations' => '³ø»ù³æ',
- 'RFQ Number' => 'RFD¸¹½X',
- 'Recd' => '¤x¦¬¨ì',
- 'Receive Merchandise' => '¦¬¨ì³fª«',
- 'Remaining' => '©|¾l',
- 'Request for Quotation' => '­n¨D³ø»ù³æ',
- 'Request for Quotations' => '­n¨D³ø»ù³æ',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Invoice' => '¾P°âµo²¼',
- 'Sales Order' => '¾P³f³æ',
- 'Sales Orders' => '¾P³f³æ',
- 'Salesperson' => '¾P°â¤H­û',
- 'Save' => 'Àx¦s',
- 'Save as new' => '·í·sªºÀx¦s',
- 'Screen' => '¿Ã¹õ',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship Merchandise' => '®ü¹B³fª«',
- 'Ship to' => '®ü¹B¦Ü',
- 'Ship via' => '¥Ñ®ü¹B',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Shipping Date' => '®ü¹B¤é´Á',
- 'Shipping Date missing!' => '¥¼«ü©ú®ü¹B¤é´Á',
- 'Shipping Point' => '®ü¹B¦aÂI',
- 'State/Province' => '¬Ù',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Tax' => 'µ|ª÷',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'Terms' => '²¼´Á²b­p',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Trade Discount' => '¶T©ö§é¦©',
- 'Transfer' => 'Âಾ',
- 'Transfer Inventory' => 'Âಾ¦s³f',
- 'Transfer to' => '¦s³f¦Ü',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
- 'Valid until' => '¦³®Ä¦Ü',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor Invoice' => '¨ÑÀ³°Óµo²¼',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor missing!' => '¥¼«ü©ú¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'Warehouse' => '­Ü®w',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'Yes' => '¬O',
- 'days' => '¤é',
- 'ea' => '­Ó',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¤x§¹¦¨' => 'done',
- '¹q¤l¶l¥ó' => 'e_mail',
- '¦c¦l' => 'print',
- 'print_and_save' => 'print_and_save',
- '±ÄÁʳæ' => 'purchase_order',
- '³ø»ù³æ' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- '¾p°âµo²¼' => 'sales_invoice',
- '¾p³f³æ' => 'sales_order',
- 'Àx¦s' => 'save',
- '·í·sªºÀx¦s' => 'save_as_new',
- '®ü¹b¦Ü' => 'ship_to',
- 'Âಾ' => 'transfer',
- '§ó·s' => 'update',
- '¨ÑÀ³°Óµo²¼' => 'vendor_invoice',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/pe b/sql-ledger/locale/tw_big5/pe
deleted file mode 100644
index 32b0c38..0000000
--- a/sql-ledger/locale/tw_big5/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Add Group' => '·s¼W²Õ',
- 'Add Pricegroup' => '·s¼W»ù®æ²Õ',
- 'Add Project' => '·s¼W¤è®×',
- 'All' => '¥þ³¡',
- 'Continue' => 'Ä~Äò',
- 'Delete' => '§R°£',
- 'Description' => '»¡©ú',
- 'Description Translations' => '½Ķ´y­z',
- 'Edit Description Translations' => '½s¿è½Ķ´y­z',
- 'Edit Group' => '½s¿è²Õ',
- 'Edit Pricegroup' => '½s¿è»ù®æ²Õ',
- 'Edit Project' => '½s¿è¤è®×',
- 'Group' => '²Õ',
- 'Group Translations' => '²ÕªºÂ½Ä¶',
- 'Group deleted!' => '¤x§R°£ªº²Õ',
- 'Group missing!' => '¥¼«ü©úªº²Õ',
- 'Group saved!' => '¤xÀx¦sªº²Õ',
- 'Groups' => '²Õ',
- 'Language' => '»y¨¥',
- 'Languages not defined!' => '¤£¯à¿ë»{»y¨¥',
- 'Number' => '½s¸¹',
- 'Orphaned' => 'µL¥D',
- 'Pricegroup' => '»ù®æ²Õ',
- 'Pricegroup deleted!' => '¤x§R°£»ù®æ²Õ',
- 'Pricegroup missing!' => '¥¼«ü©ú»ù®æ²Õ',
- 'Pricegroup saved!' => '¤xÀx¦s»ù®æ²Õ',
- 'Pricegroups' => '»ù®æ²Õ',
- 'Project' => '¤è®×',
- 'Project Description Translations' => '¤è®×´y­zªºÂ½Ä¶',
- 'Project Number' => '¤è®×¸¹½X',
- 'Project Number missing!' => '¥¼«ü©ú¤è®×¸¹½X',
- 'Project deleted!' => '¤x§R°£¤è®×',
- 'Project saved!' => '¤xÀx¦s¤è®×',
- 'Projects' => '¤è®×',
- 'Save' => 'Àx¦s',
- 'Translation' => '½Ķ',
- 'Translation deleted!' => '¤x§R°£Â½Ä¶',
- 'Translations saved!' => '¤xÀx¦s½Ķ',
- 'Update' => '§ó·s',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- '·s¼w²Õ' => 'add_group',
- '·s¼w»ù®æ²Õ' => 'add_pricegroup',
- '·s¼w¤è®×' => 'add_project',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- 'Àx¦s' => 'save',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/pos b/sql-ledger/locale/tw_big5/pos
deleted file mode 100644
index e935f5e..0000000
--- a/sql-ledger/locale/tw_big5/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Add POS Invoice' => '·s¼WPOSµo²¼',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Change' => '§ó§ï',
- 'Continue' => 'Ä~Äò',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Customer' => '«È¤á',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Delete' => '§R°£',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Edit POS Invoice' => '½s¿èPOS',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Extended' => '¤xÂX¤j',
- 'From' => '±q',
- 'Language' => '»y¨¥',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Number' => '½s¸¹',
- 'Open' => '¶}±Ò',
- 'Paid' => '¤w¥I',
- 'Post' => '¥[¤J',
- 'Posted!' => '¤x¥[¤J',
- 'Price' => '»ù®æ',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Qty' => '¼Æ¶q',
- 'Receipts' => '¦¬¾Ú',
- 'Record in' => '°O¿ý©ó',
- 'Remaining' => '©|¾l',
- 'Salesperson' => '¾P°â¤H­û',
- 'Screen' => '¿Ã¹õ',
- 'Source' => '¨Ó·½',
- 'Subtotal' => '¤p­p',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¥[¤j' => 'post',
- '¦c¦l' => 'print',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/ps b/sql-ledger/locale/tw_big5/ps
deleted file mode 100644
index 8227ce0..0000000
--- a/sql-ledger/locale/tw_big5/ps
+++ /dev/null
@@ -1,326 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'À³¥I±bÄÖ¤ÀªR',
- 'AR Aging' => 'À³¦¬±bÄÖ¤ÀªR',
- 'AR Outstanding' => 'À³¦¬¥¼¦¬',
- 'AR Transaction' => 'À³¦¬¥æ©ö',
- 'AR Transactions' => 'À³¦¬¥æ©ö',
- 'Account' => '±b¤á',
- 'Account Number' => '±b¤á½s¸¹',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Accounts' => '±b¤á',
- 'Accrual' => '²Ö¿n',
- 'Add POS Invoice' => '·s¼WPOSµo²¼',
- 'Add Purchase Order' => '·s¼W±ÄÁʳæ',
- 'Add Quotation' => '·s¼W³ø»ù³æ',
- 'Add Request for Quotation' => '·s¼W³ø»ù³æ­n¨D',
- 'Add Sales Invoice' => '·s¼W¾P°âµo²¼',
- 'Add Sales Order' => '·s¼W¾P³f³æ',
- 'Address' => '¦a§}',
- 'All Accounts' => '¥þ³¡±b¤á',
- 'Amount' => 'Á`­p',
- 'Amount Due' => 'À³±oªºÁ`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Are you sure you want to delete Invoice Number' => '±z½T©w­n§R°£µo²¼½s¸¹',
- 'Are you sure you want to delete Transaction' => '±z¬O§_½T©w­n§R°£¥æ©ö',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Balance' => '¾lÃB',
- 'Balance Sheet' => '¸ê²£­t¶Åªí',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Billing Address' => '±b³æ¦a§}',
- 'Bin' => '½c',
- 'Bin List' => '½cªº©ú²Óªí',
- 'Business' => '·~°È',
- 'Cannot delete invoice!' => '¤£¯à§R°£µo²¼',
- 'Cannot delete transaction!' => '¤£¯à§R°£¥æ©ö',
- 'Cannot post invoice for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤Jµo²¼',
- 'Cannot post invoice!' => '¤£¯à¥[¤Jµo²¼',
- 'Cannot post payment for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J´Ú¶µ',
- 'Cannot post transaction for a closed period!' => '¤£¯à¦b¤wÃö³¬ªº®É¬q¤º¥[¤J¥æ©ö!',
- 'Cannot post transaction!' => '¤£¯à¥[¤J¥æ©ö',
- 'Cash' => '²{ª÷',
- 'Cc' => '§Û°e',
- 'Change' => '§ó§ï',
- 'Check' => 'Àˬd',
- 'City' => '«°¥«',
- 'Closed' => '¤wÃö³¬',
- 'Company Name' => '¤½¥q¦WºÙ',
- 'Compare to' => '¹ï·Ó',
- 'Confirm!' => '¤J±b¦¨¥\!',
- 'Contact' => '³sµ¸¤H',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Country' => '°ê®a',
- 'Credit' => '¶U¤è',
- 'Credit Limit' => '«H¥ÎÃB«×',
- 'Curr' => '¥Ø«e',
- 'Currency' => '¹ô§O',
- 'Current' => '²{¦³',
- 'Current Earnings' => '²{¦³¦¬¯q',
- 'Customer' => '«È¤á',
- 'Customer Number' => '«È¤á½s¸¹',
- 'Customer missing!' => '¥¼«ü©ú«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Date Paid' => '¥I´Ú¤é´Á',
- 'Debit' => '­É¤è',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Decimalplaces' => '¤p¼Æªº¦ì¸m',
- 'Delete' => '§R°£',
- 'Delivery Date' => '¨ì´Á¤é',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Detail' => '¸Ô±¡',
- 'Due Date' => '¨ì´Á¤é',
- 'Due Date missing!' => '¥¼«ü©ú¨ì´Á¤é!',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail Statement to' => '¹q¶l·|­p½ã¨ì',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'E-mailed' => '¤x¹q¶l',
- 'Edit POS Invoice' => '½s¿èPOS',
- 'Edit Sales Invoice' => '½s¿è¾P°âµo²¼',
- 'Exch' => '¶×²v',
- 'Exchange Rate' => '¶×²v',
- 'Exchange rate for payment missing!' => '¥¼«ü©ú¥I´Úªº¶×²v',
- 'Exchange rate missing!' => '¥¼«ü©ú¶×²v',
- 'Extended' => '¤xÂX¤j',
- 'Fax' => '¶Ç¯u',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Group' => '²Õ',
- 'Group Items' => '²Õªº¶µ¥Ø',
- 'Heading' => '¼ÐÃD, ',
- 'ID' => '½s¸¹',
- 'In-line' => '¦æ¤º',
- 'Include Exchange Rate Difference' => '¥]§t¥~¶×®t¶Z',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Income Statement' => '·l¯qªí',
- 'Internal Notes' => '¤º³¡³Æ§Ñ¿ý',
- 'Invoice' => 'µo²¼',
- 'Invoice Date' => 'µo²¼¤é´Á',
- 'Invoice Date missing!' => '¥¼«ü©úµo²¼¤é´Á!',
- 'Invoice Number' => 'µo²¼½s¸¹',
- 'Invoice Number missing!' => '¥¼«ü©úµo²¼½s¸¹!',
- 'Invoice deleted!' => '¤x§R°£µo²¼',
- 'Invoice posted!' => '¤x¥[¤Jµo²¼',
- 'Invoice processed!' => '¤x³B²zµo²¼',
- 'Item not on file!' => '¬dµL¦¹¶µ¥Ø',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Language' => '»y¨¥',
- 'Manager' => '¸g²z',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Message' => '°T®§',
- 'Method' => '¤èªk',
- 'N/A' => '¤£¾A¥Î',
- 'No.' => '§_',
- 'Non-taxable Purchases' => '¤£À³½Òµ|ªº±ÄÁÊ',
- 'Non-taxable Sales' => '¤£À³½Òµ|ªº¾P°â',
- 'Notes' => '³Æµù',
- 'Nothing selected!' => '¨S¦³¤x¿ï¾Ü',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Number missing in Row' => '¦¹¦C¤¤¯Ê¤Ö¼Æ­È',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Open' => '¶}±Ò',
- 'Order' => '­q³æ',
- 'Order Date missing!' => '¥¼«ü©ú¤U³æ¤é´Á!',
- 'Order Number' => '­q³æ½s¸¹',
- 'Order Number missing!' => '¥¼«ü©ú­q³æ½s¸¹!',
- 'Packing List' => '¥X³f³æ',
- 'Packing List Date missing!' => '¥¼«ü©ú¥]¸Ë²M³æ¤é´Á!',
- 'Packing List Number missing!' => '¥¼«ü©ú¥]¸Ë²M³æ½s¸¹!',
- 'Paid' => '¤w¥I',
- 'Part' => '­ì®Æ',
- 'Payment date missing!' => '¥¼«ü©ú¥I´Ú¤é´Á!',
- 'Payments' => '¥I´Ú',
- 'Phone' => '¹q¸Ü¸¹½X',
- 'Pick List' => '¿ï¾Ü³æ',
- 'Post' => '¥[¤J',
- 'Post as new' => '·í·sªº¥[¤J',
- 'Posted!' => '¤x¥[¤J',
- 'Postscript' => 'ªþ¨¥',
- 'Price' => '»ù®æ',
- 'Print' => '¦C¦L',
- 'Printed' => '¤x¦C¦L',
- 'Project' => '¤è®×',
- 'Project Number' => '¤è®×¸¹½X',
- 'Project Transactions' => '¤è®×¥æ©ö',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Purchase Order' => '±ÄÁʳæ',
- 'Qty' => '¼Æ¶q',
- 'Queue' => 'ªø¶¤',
- 'Queued' => '¤x±Æ¶¤',
- 'Quotation' => '³ø»ù³æ',
- 'Quotation Date missing!' => '¥¼«ü©ú³ø»ù³æ¤é´Á',
- 'Quotation Number missing!' => '¥¼«ü©ú³ø»ù³æ¸¹½X',
- 'Recd' => '¤x¦¬¨ì',
- 'Receipt' => '¦¬¾Ú',
- 'Receipts' => '¦¬¾Ú',
- 'Record in' => '°O¿ý©ó',
- 'Remaining' => '©|¾l',
- 'Report for' => '³øªí¨Ó·½',
- 'Required by' => '»Ý­nªÌ',
- 'SKU' => '³Q«ü©wªº¼Æ¶q',
- 'Sales Order' => '¾P³f³æ',
- 'Salesperson' => '¾P°â¤H­û',
- 'Screen' => '¿Ã¹õ',
- 'Select all' => '¥þ¿ï',
- 'Select from one of the items below' => '©ó¤U¦C¶µ¥Ø¤¤¿ï¾Ü¤@¶µ',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Serial No.' => '§Ç¸¹',
- 'Service' => 'ªA°È',
- 'Ship' => '²î',
- 'Ship to' => '®ü¹B¦Ü',
- 'Ship via' => '¥Ñ®ü¹B',
- 'Shipping Address' => '®ü¹B¦a§}',
- 'Shipping Point' => '®ü¹B¦aÂI',
- 'Source' => '¨Ó·½',
- 'Standard' => '¼Ð·Ç',
- 'State/Province' => '¬Ù',
- 'Statement' => '·|­p±b',
- 'Statement sent to' => '°e·|­p±b¦Ü',
- 'Statements sent to printer!' => '°e·|­p±b¦Ü¦C¦L¾÷',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Summary' => 'ºK­n',
- 'Tax' => 'µ|ª÷',
- 'Tax Included' => '¤x§tµ|ª÷',
- 'Tax collected' => '¤x¦¬µ|ª÷',
- 'Tax paid' => '¤x¥Iµ|ª÷',
- 'Till' => 'ª½¨ì',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Trade Discount' => '¶T©ö§é¦©',
- 'Transaction deleted!' => '¤x§R°£¥æ©ö',
- 'Transaction posted!' => '¤x¥[¤J¥æ©ö',
- 'Trial Balance' => '¸Õºâªí',
- 'Unit' => '³æ¦ì',
- 'Update' => '§ó·s',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor Number' => '¨ÑÀ³°Ó¸¹½X',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'What type of item is this?' => '¦¹¶µ¥Øªº«¬ºA?',
- 'Work Order' => '¤u§@³æ',
- 'Yes' => '¬O',
- 'as at' => 'ºI¦Ü',
- 'ea' => '­Ó',
- 'for Period' => '´Á¶¡',
- 'sent' => '¤x°e¥X',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'À³¦¬¥æ©ö' => 'ar_transaction',
- 'Ä~Äò' => 'continue',
- '§r°£' => 'delete',
- '¹q¤l¶l¥ó' => 'e_mail',
- '¥[¤j' => 'post',
- '·í·sªº¥[¤j' => 'post_as_new',
- '¦c¦l' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- '¾p³f³æ' => 'sales_order',
- '¥þ¿ï' => 'select_all',
- '®ü¹b¦Ü' => 'ship_to',
- '§ó·s' => 'update',
- '¬o' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/pw b/sql-ledger/locale/tw_big5/pw
deleted file mode 100644
index 0bfcff6..0000000
--- a/sql-ledger/locale/tw_big5/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Ä~Äò',
- 'Password' => '±K½X',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'Ä~Äò' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/rc b/sql-ledger/locale/tw_big5/rc
deleted file mode 100644
index d83c142..0000000
--- a/sql-ledger/locale/tw_big5/rc
+++ /dev/null
@@ -1,74 +0,0 @@
-$self{texts} = {
- 'Account' => '±b¤á',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Balance' => '¾lÃB',
- 'Beginning Balance' => '°_©l¾lÃB',
- 'Cleared' => '¤w²M°£',
- 'Continue' => 'Ä~Äò',
- 'Current' => '²{¦³',
- 'Date' => '¤é´Á',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Decrease' => '´î¤Ö',
- 'Deposit' => '¦s´Ú',
- 'Description' => '»¡©ú',
- 'Detail' => '¸Ô±¡',
- 'Difference' => '®t²§',
- 'Done' => '¤x§¹¦¨',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Include Exchange Rate Difference' => '¥]§t¥~¶×®t¶Z',
- 'Increase' => '¼W¥[',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Out of balance!' => '¤£¨ó½Õ',
- 'Outstanding' => '¥¼¥I',
- 'Payment' => '¥I´Ú',
- 'Reconciliation' => '½Õ©M',
- 'Reconciliation Report' => '½Õ©M³ø§i',
- 'Select all' => '¥þ¿ï',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Source' => '¨Ó·½',
- 'Statement Balance' => '·|­p±b¾lÃB',
- 'Summary' => 'ºK­n',
- 'To' => '¦Ü',
- 'Update' => '§ó·s',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'Ä~Äò' => 'continue',
- '¤x§¹¦¨' => 'done',
- '¥þ¿ï' => 'select_all',
- '§ó·s' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/rp b/sql-ledger/locale/tw_big5/rp
deleted file mode 100644
index cb03d37..0000000
--- a/sql-ledger/locale/tw_big5/rp
+++ /dev/null
@@ -1,159 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'À³¥I±bÄÖ¤ÀªR',
- 'AR Aging' => 'À³¦¬±bÄÖ¤ÀªR',
- 'Account' => '±b¤á',
- 'Account Number' => '±b¤á½s¸¹',
- 'Accounting Menu' => '·|­p¿ï³æ',
- 'Accounts' => '±b¤á',
- 'Accrual' => '²Ö¿n',
- 'Address' => '¦a§}',
- 'All Accounts' => '¥þ³¡±b¤á',
- 'Amount' => 'Á`­p',
- 'Apr' => '¥|¤ë',
- 'April' => '¥|¤ë',
- 'Attachment' => 'ªþÀÉ',
- 'Aug' => '¤K¤ë',
- 'August' => '¤K¤ë',
- 'Balance' => '¾lÃB',
- 'Balance Sheet' => '¸ê²£­t¶Åªí',
- 'Bcc' => '¤£Åã¥Ü§Û°e',
- 'Cash' => '²{ª÷',
- 'Cc' => '§Û°e',
- 'Compare to' => '¹ï·Ó',
- 'Continue' => 'Ä~Äò',
- 'Copies' => '°Æ¥»',
- 'Credit' => '¶U¤è',
- 'Curr' => '¥Ø«e',
- 'Current' => '²{¦³',
- 'Current Earnings' => '²{¦³¦¬¯q',
- 'Customer' => '«È¤á',
- 'Customer not on file!' => '«È¤á¥¼¦sÀÉ',
- 'Date' => '¤é´Á',
- 'Debit' => '­É¤è',
- 'Dec' => '¤Q¤G¤ë',
- 'December' => '¤Q¤G¤ë',
- 'Decimalplaces' => '¤p¼Æªº¦ì¸m',
- 'Department' => '³¡ªù',
- 'Description' => '»¡©ú',
- 'Detail' => '¸Ô±¡',
- 'Due Date' => '¨ì´Á¤é',
- 'E-mail' => '¹q¤l¶l¥ó',
- 'E-mail Statement to' => '¹q¶l·|­p½ã¨ì',
- 'E-mail address missing!' => '¥¼«ü©ú¹q¤l¶l¥ó¦ì§}!',
- 'Feb' => '¤G¤ë',
- 'February' => '¤G¤ë',
- 'From' => '±q',
- 'Heading' => '¼ÐÃD, ',
- 'ID' => '½s¸¹',
- 'In-line' => '¦æ¤º',
- 'Include Exchange Rate Difference' => '¥]§t¥~¶×®t¶Z',
- 'Include in Report' => '¤@¨ÖÅã¥Ü',
- 'Income Statement' => '·l¯qªí',
- 'Invoice' => 'µo²¼',
- 'Jan' => '¤@¤ë',
- 'January' => '¤@¤ë',
- 'Jul' => '¤C¤ë',
- 'July' => '¤C¤ë',
- 'Jun' => '¤»¤ë',
- 'June' => '¤»¤ë',
- 'Language' => '»y¨¥',
- 'Mar' => '¤T¤ë',
- 'March' => '¤T¤ë',
- 'May' => '¤­¤ë',
- 'May ' => '¤­¤ë',
- 'Memo' => '³Æ§Ñ¿ý',
- 'Message' => '°T®§',
- 'Method' => '¤èªk',
- 'N/A' => '¤£¾A¥Î',
- 'Non-taxable Purchases' => '¤£À³½Òµ|ªº±ÄÁÊ',
- 'Non-taxable Sales' => '¤£À³½Òµ|ªº¾P°â',
- 'Nothing selected!' => '¨S¦³¤x¿ï¾Ü',
- 'Nov' => '¤Q¤@¤ë',
- 'November' => '¤Q¤@¤ë',
- 'Number' => '½s¸¹',
- 'Oct' => '¤Q¤ë',
- 'October' => '¤Q¤ë',
- 'Order' => '­q³æ',
- 'Payments' => '¥I´Ú',
- 'Postscript' => 'ªþ¨¥',
- 'Print' => '¦C¦L',
- 'Project' => '¤è®×',
- 'Project Number' => '¤è®×¸¹½X',
- 'Project Transactions' => '¤è®×¥æ©ö',
- 'Project not on file!' => '¤è®×¤ºµL¦¹ÀÉ®×',
- 'Receipts' => '¦¬¾Ú',
- 'Report for' => '³øªí¨Ó·½',
- 'Salesperson' => '¾P°â¤H­û',
- 'Screen' => '¿Ã¹õ',
- 'Select all' => '¥þ¿ï',
- 'Select from one of the names below' => '©ó¤U¦C©m¦W¤¤¿ï¾Ü¤@­Ó',
- 'Select from one of the projects below' => '©ó¤U¦C¤è®×¤¤¿ï¾Ü¤@­Ó',
- 'Select postscript or PDF!' => '©óªþ¨¥©ÎPDF¤¤¿ï¤@',
- 'Sep' => '¤E¤ë',
- 'September' => '¤E¤ë',
- 'Source' => '¨Ó·½',
- 'Standard' => '¼Ð·Ç',
- 'Statement' => '·|­p±b',
- 'Statement sent to' => '°e·|­p±b¦Ü',
- 'Statements sent to printer!' => '°e·|­p±b¦Ü¦C¦L¾÷',
- 'Subject' => '¼ÐÃD',
- 'Subtotal' => '¤p­p',
- 'Summary' => 'ºK­n',
- 'Tax' => 'µ|ª÷',
- 'Tax collected' => '¤x¦¬µ|ª÷',
- 'Tax paid' => '¤x¥Iµ|ª÷',
- 'Till' => 'ª½¨ì',
- 'To' => '¦Ü',
- 'Total' => 'Á`­p',
- 'Trial Balance' => '¸Õºâªí',
- 'Vendor' => '¨ÑÀ³°Ó',
- 'Vendor not on file!' => 'ÀɮרS¦³¦¹¨ÑÀ³°Ó',
- 'as at' => 'ºI¦Ü',
- 'for Period' => '´Á¶¡',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'Ä~Äò' => 'continue',
- '¹q¤l¶l¥ó' => 'e_mail',
- '¦c¦l' => 'print',
- '¥þ¿ï' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_big5/temp b/sql-ledger/locale/tw_big5/temp
deleted file mode 100644
index 5e2037c..0000000
--- a/sql-ledger/locale/tw_big5/temp
+++ /dev/null
@@ -1,7 +0,0 @@
-$self{texts} = {
-};
-
-$self{subs} = {
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/COPYING b/sql-ledger/locale/tw_utf/COPYING
deleted file mode 100644
index c07c553..0000000
--- a/sql-ledger/locale/tw_utf/COPYING
+++ /dev/null
@@ -1,24 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2004
-#
-# Traditional Chinese texts:
-#
-# Author: Edmund Lian <elian@inbrief.net>
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/tw_utf/LANGUAGE b/sql-ledger/locale/tw_utf/LANGUAGE
deleted file mode 100644
index 128c04c..0000000
--- a/sql-ledger/locale/tw_utf/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Chinese UTF-8 (Traditional)
diff --git a/sql-ledger/locale/tw_utf/admin b/sql-ledger/locale/tw_utf/admin
deleted file mode 100644
index bc16672..0000000
--- a/sql-ledger/locale/tw_utf/admin
+++ /dev/null
@@ -1,140 +0,0 @@
-$self{texts} = {
- 'Access Control' => '權é™æŽ§åˆ¶',
- 'Accounting' => '會計',
- 'Add User' => '新增使用者',
- 'Address' => '地å€',
- 'Administration' => '系統管ç†',
- 'Administrator' => '管ç†äºº',
- 'All Datasets up to date!' => '所有資料皆已更新!',
- 'Cannot create Lock!' => 'ä¸èƒ½å»ºç«‹éŽ–',
- 'Change Admin Password' => '更改管ç†å“¡å¯†ç¢¼',
- 'Change Password' => '更改密碼',
- 'Character Set' => '字元集',
- 'Click on login name to edit!' => '請按登入å稱以進行修改!',
- 'Company' => 'å…¬å¸',
- 'Connect to' => '連çµåˆ°',
- 'Continue' => '繼續',
- 'Create Chart of Accounts' => '建立帳戶圖表',
- 'Create Dataset' => '建立資料集',
- 'DBI not installed!' => 'æœªå®‰è£ DBI 模組!',
- 'Database' => '資料庫',
- 'Database Administration' => '資料庫管ç†',
- 'Database Driver not checked!' => '未é¸å®šè³‡æ–™åº«é©…動程å¼!',
- 'Database User missing!' => '未指明資料庫使用者!',
- 'Dataset' => '資料集',
- 'Dataset missing!' => '未指明資料集!',
- 'Dataset updated!' => '巳更新資料集',
- 'Date Format' => '日期格å¼',
- 'Delete' => '刪除',
- 'Delete Dataset' => '刪除資料集',
- 'Directory' => '目錄',
- 'Driver' => '驅動程å¼',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'Edit User' => '編輯使用者',
- 'Existing Datasets' => '既有的資料集',
- 'Fax' => '傳真',
- 'Host' => '主機',
- 'Hostname missing!' => '未指明主機å稱!',
- 'Language' => '語言',
- 'Leave host and port field empty unless you want to make a remote connection.' => '除éžæ‚¨æƒ³è¦é€²è¡Œé ç«¯é€£ç·š, å¦å‰‡è«‹å°‡ä¸»æ©ŸåŠåŸ è™Ÿç•™ç™½.',
- 'Lock System' => '系統鎖上',
- 'Lockfile created!' => '巳建立上鎖檔案!',
- 'Lockfile removed!' => '巳移除上鎖檔案!',
- 'Login' => '登入',
- 'Login name missing!' => '未指明登入åå­—',
- 'Logout' => '登出',
- 'Manager' => '經ç†',
- 'Menu Width' => 'é¸æ“‡å–®å¯¬åº¦',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'å稱',
- 'New Templates' => '新增模版',
- 'No Database Drivers available!' => '沒有å¯ç”¨çš„驅動程å¼!',
- 'No Dataset selected!' => '未é¸å®šè³‡æ–™é›†!',
- 'Nothing to delete!' => '沒有å¯åˆªé™¤çš„é …ç›®',
- 'Number Format' => '數字格å¼',
- 'Oracle Database Administration' => 'Oracle 資料庫管ç†',
- 'Password' => '密碼',
- 'Password changed!' => '密碼巳改',
- 'Pg Database Administration' => 'Pg 資料庫管ç†',
- 'PgPP Database Administration' => 'PgPP資料庫管ç†',
- 'Phone' => '電話號碼',
- 'Port' => '埠號',
- 'Port missing!' => '未指明埠號!',
- 'Printer' => 'å°è¡¨æ©Ÿ',
- 'Save' => '儲存',
- 'Setup Templates' => '設定模版',
- 'Signature' => 'ç°½å',
- 'Stylesheet' => '樣å¼è¡¨',
- 'Templates' => '模版',
- 'The following Datasets are not in use and can be deleted' => '下列資料集並未使用, å¯ä»¥åˆªé™¤',
- 'The following Datasets need to be updated' => '下列資料集需è¦æ›´æ–°',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '這是å°æ—¢å­˜è³‡æ–™ä¾†æºçš„åˆæ­¥æª¢æŸ¥. 在此階段, ä¸æœƒåˆªé™¤æˆ–新增任何資料!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'è‹¥è¦æ–°å¢žç¾¤çµ„內的使用者, 請編輯å稱, 更改登入å, 然後儲存. 這樣一來, 新使用者會ä¿ç•™ç›¸åŒçš„變數, 並以新的登入å存入.',
- 'Unlock System' => '開啟系統',
- 'Update Dataset' => '更新資料集',
- 'Use Templates' => '使用模版',
- 'User' => '使用者',
- 'User deleted!' => '巳刪除使用者',
- 'User saved!' => '巳儲存使用者',
- 'Version' => '版本',
- 'You must enter a host and port for local and remote connections!' => '您必需éµå…¥ä¸»æ©ŸåŠåŸ è™Ÿ, 以進行本機或é ç«¯é€£ç·š!',
- 'does not exist' => 'ä¸å­˜åœ¨',
- 'is already a member!' => '已經是æˆå“¡äº†!',
- 'localhost' => '本地寄主',
- 'locked!' => '巳鎖上',
- 'successfully created!' => 'æˆåŠŸå»ºç«‹!',
- 'successfully deleted!' => 'æˆåŠŸåˆªé™¤!',
- 'website' => '網站',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- '新增使用者' => 'add_user',
- '更改管ç†å“¡å¯†ç¢¼' => 'change_admin_password',
- '更改密碼' => 'change_password',
- '繼續' => 'continue',
- '建立資料集' => 'create_dataset',
- '刪除' => 'delete',
- '刪除資料集' => 'delete_dataset',
- '系統鎖上' => 'lock_system',
- '登入' => 'login',
- '登出' => 'logout',
- 'oracle_資料庫管ç†' => 'oracle_database_administration',
- 'pg_資料庫管ç†' => 'pg_database_administration',
- 'pgpp資料庫管ç†' => 'pgpp_database_administration',
- '儲存' => 'save',
- '開啟系統' => 'unlock_system',
- '更新資料集' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/all b/sql-ledger/locale/tw_utf/all
deleted file mode 100644
index f2ed0fc..0000000
--- a/sql-ledger/locale/tw_utf/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => '應付帳款',
- 'AP Aging' => '應付帳齡分æž',
- 'AP Outstanding' => '應付未付',
- 'AP Transaction' => '應付交易',
- 'AP Transactions' => '應付交易',
- 'AR' => '應收帳款',
- 'AR Aging' => '應收帳齡分æž',
- 'AR Outstanding' => '應收未收',
- 'AR Transaction' => '應收交易',
- 'AR Transactions' => '應收交易',
- 'About' => '關於',
- 'Above' => '上文',
- 'Access Control' => '權é™æŽ§åˆ¶',
- 'Account' => '帳戶',
- 'Account Number' => '帳戶編號',
- 'Account Number missing!' => '未指明帳戶編號!',
- 'Account Type' => '帳戶類別',
- 'Account Type missing!' => '未指明帳戶類別!',
- 'Account deleted!' => '巳刪除帳戶',
- 'Account does not exist!' => 'ä¸å­˜åœ¨å¸³æˆ¶',
- 'Account saved!' => '巳儲存帳戶',
- 'Accounting' => '會計',
- 'Accounting Menu' => '會計é¸å–®',
- 'Accounts' => '帳戶',
- 'Accrual' => 'ç´¯ç©',
- 'Activate Audit trails' => 'æ´»èºçš„審計線索',
- 'Active' => 'æ´»èº',
- 'Add' => '新增',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => '新增帳戶',
- 'Add Assembly' => '新增商å“',
- 'Add Business' => '新增業務',
- 'Add Cash Transfer Transaction' => '新增ç¾é‡‘轉移帳目',
- 'Add Customer' => '新增客戶',
- 'Add Deduction' => '新增扣除',
- 'Add Department' => '新增部門',
- 'Add Employee' => '新增è·å“¡',
- 'Add Exchange Rate' => '新增外匯率',
- 'Add GIFI' => '新增 GIFI',
- 'Add General Ledger Transaction' => '新增總帳',
- 'Add Group' => '新增組',
- 'Add Labor/Overhead' => '新增勞工/經常費用',
- 'Add Language' => '新增語言',
- 'Add POS Invoice' => '新增POS發票',
- 'Add Part' => '新增原料',
- 'Add Pricegroup' => '新增價格組',
- 'Add Project' => '新增方案',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add SIC' => '新增原文',
- 'Add Sales Invoice' => '新增銷售發票',
- 'Add Sales Order' => '新增銷貨單',
- 'Add Service' => '新增æœå‹™',
- 'Add Transaction' => '新增交易',
- 'Add User' => '新增使用者',
- 'Add Vendor' => '新增供應商',
- 'Add Vendor Invoice' => '新增供應商發票',
- 'Add Warehouse' => '新增倉庫',
- 'Address' => '地å€',
- 'Administration' => '系統管ç†',
- 'Administrator' => '管ç†äºº',
- 'After Deduction' => '扣除以後',
- 'All' => '全部',
- 'All Accounts' => '全部帳戶',
- 'All Datasets up to date!' => '所有資料皆已更新!',
- 'All Items' => '全部項目',
- 'Allowances' => '津貼',
- 'Amount' => '總計',
- 'Amount Due' => '應得的總計',
- 'Amount missing!' => 'æ¼å¡«çš„總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您確定è¦åˆªé™¤ç™¼ç¥¨ç·¨è™Ÿ',
- 'Are you sure you want to delete Order Number' => '您是å¦ç¢ºå®šè¦åˆªé™¤è¨‚單編號',
- 'Are you sure you want to delete Quotation Number' => '您是å¦ç¢ºå®šè¦åˆªé™¤å ±åƒ¹å–®ç·¨è™Ÿ',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¢ºå®šè¦åˆªé™¤äº¤æ˜“',
- 'Are you sure you want to remove the marked entries from the queue?' => '您是å¦ç¢ºå®šè¦æ¶ˆé™¤æœ‰è¨˜è™Ÿçš„æ¢ç›®',
- 'Assemblies' => '商å“',
- 'Assemblies restocked!' => 'å·³é‡æ–°é€²è²¨çš„商å“',
- 'Assembly' => '商å“',
- 'Asset' => '資產',
- 'Attachment' => '附檔',
- 'Audit Control' => '稽核控制',
- 'Audit trail removed up to' => '移除到此為止的審計線索',
- 'Audit trails disabled' => '有效的審計線索',
- 'Audit trails enabled' => '無效的審計線索',
- 'Aug' => '八月',
- 'August' => '八月',
- 'BIC' => '',
- 'BOM' => '',
- 'Backup' => '備份',
- 'Backup sent to' => '備份寄é€åˆ°',
- 'Balance' => '餘é¡',
- 'Balance Sheet' => '資產負債表',
- 'Based on' => '基於',
- 'Batch Printing' => '整批å°åˆ·',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Before Deduction' => '扣除之å‰',
- 'Beginning Balance' => '起始餘é¡',
- 'Below' => '以下',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Bin Lists' => '',
- 'Books are open' => '帳簿已開啟',
- 'Break' => '休æ¯',
- 'Business' => '業務',
- 'Business Number' => '業務編號',
- 'Business deleted!' => '巳刪除業務',
- 'Business saved!' => '巳儲存業務',
- 'C' => '',
- 'COGS' => '貨銷æˆæœ¬',
- 'Cannot create Lock!' => 'ä¸èƒ½å»ºç«‹éŽ–',
- 'Cannot delete account!' => 'ä¸èƒ½åˆªé™¤å¸³æˆ¶',
- 'Cannot delete customer!' => 'ä¸èƒ½åˆªé™¤å®¢æˆ¶',
- 'Cannot delete default account!' => 'ä¸èƒ½åˆªé™¤é è¨­å¸³æˆ¶',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆªé™¤ç™¼ç¥¨',
- 'Cannot delete item!' => 'ä¸èƒ½åˆªé™¤é …ç›®',
- 'Cannot delete order!' => 'ä¸èƒ½åˆªé™¤å®šå–®',
- 'Cannot delete quotation!' => 'ä¸èƒ½åˆªé™¤å ±åƒ¹å–®',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆªé™¤äº¤æ˜“',
- 'Cannot delete vendor!' => 'ä¸èƒ½åˆªé™¤ä¾›æ‡‰å•†',
- 'Cannot post Payment!' => 'ä¸èƒ½åŠ å…¥æ¬¾é …',
- 'Cannot post Receipt!' => 'ä¸èƒ½åŠ å…¥æ”¶æ“š',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入發票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥ç™¼ç¥¨',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Cannot process payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內處ç†æ¬¾é …',
- 'Cannot remove files!' => 'ä¸èƒ½ç§»é™¤æª”案',
- 'Cannot save account!' => 'ä¸èƒ½å„²å­˜å¸³æˆ¶',
- 'Cannot save defaults!' => 'ä¸èƒ½å„²å­˜é è¨­',
- 'Cannot save order!' => 'ä¸èƒ½å„²å­˜å®šå–®',
- 'Cannot save preferences!' => 'ä¸èƒ½å„²å­˜å„ªå…ˆé¸æ“‡ ',
- 'Cannot save quotation!' => 'ä¸èƒ½å„²å­˜å ±åƒ¹å–®',
- 'Cannot set account for more than one of AR, AP or IC' => 'ä¸èƒ½è¨­ç½®å¤šæ–¼ä¸€å€‹æ‡‰æ”¶å¸³æ¬¾, 應付帳款或IC',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'ä¸èƒ½å¸¸å‚™çš„商å“',
- 'Cash' => 'ç¾é‡‘',
- 'Cc' => '抄é€',
- 'Change' => '更改',
- 'Change Admin Password' => '更改管ç†å“¡å¯†ç¢¼',
- 'Change Password' => '更改密碼',
- 'Character Set' => '字元集',
- 'Chart of Accounts' => '會計科目表',
- 'Check' => '檢查',
- 'Check Inventory' => '檢查存貨清單',
- 'Checks' => '檢查',
- 'City' => '城市',
- 'Cleared' => '已清除',
- 'Click on login name to edit!' => '請按登入å稱以進行修改!',
- 'Close Books up to' => '關閉到此為止的帳簿',
- 'Closed' => '已關閉',
- 'Code' => '編碼',
- 'Code missing!' => '未指明編碼',
- 'Company' => 'å…¬å¸',
- 'Company Name' => 'å…¬å¸å稱',
- 'Compare to' => 'å°ç…§',
- 'Components' => '零件',
- 'Confirm' => '',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Connect to' => '連çµåˆ°',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Contra' => '相å',
- 'Copies' => '副本',
- 'Copy to COA' => '複製到 COA',
- 'Cost' => 'æˆæœ¬',
- 'Cost Center' => 'æˆæœ¬ä¸­å¿ƒ',
- 'Could not save pricelist!' => '',
- 'Could not save!' => 'ä¸èƒ½å„²å­˜',
- 'Could not transfer Inventory!' => '存貨清單ä¸èƒ½è½‰ç§»',
- 'Country' => '國家',
- 'Create Chart of Accounts' => '建立帳戶圖表',
- 'Create Dataset' => '建立資料集',
- 'Credit' => '貸方',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Current Earnings' => 'ç¾æœ‰æ”¶ç›Š',
- 'Customer' => '客戶',
- 'Customer History' => '客戶歷å²',
- 'Customer Number' => '客戶編號',
- 'Customer deleted!' => '巳刪除客戶',
- 'Customer missing!' => '未指明客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Customer saved!' => '巳儲存客戶',
- 'Customers' => '客戶',
- 'DBI not installed!' => 'æœªå®‰è£ DBI 模組!',
- 'DOB' => '',
- 'Database' => '資料庫',
- 'Database Administration' => '資料庫管ç†',
- 'Database Driver not checked!' => '未é¸å®šè³‡æ–™åº«é©…動程å¼!',
- 'Database Host' => '資料庫主機',
- 'Database User missing!' => '未指明資料庫使用者!',
- 'Dataset' => '資料集',
- 'Dataset is newer than version!' => '較新資料集',
- 'Dataset missing!' => '未指明資料集!',
- 'Dataset updated!' => '巳更新資料集',
- 'Date' => '日期',
- 'Date Format' => '日期格å¼',
- 'Date Paid' => '付款日期',
- 'Date Received' => '收款日期',
- 'Date missing!' => '未指明日期',
- 'Date received missing!' => '未指明收款日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•¸çš„ä½ç½®',
- 'Decrease' => '減少',
- 'Deduct after' => '減少以後',
- 'Deduction deleted!' => '巳刪除減少',
- 'Deduction saved!' => '巳儲存減少',
- 'Deductions' => '減除é¡',
- 'Defaults' => 'é è¨­',
- 'Defaults saved!' => '巳儲存é è¨­',
- 'Delete' => '刪除',
- 'Delete Account' => '刪除帳戶',
- 'Delete Dataset' => '刪除資料集',
- 'Delivery Date' => '到期日',
- 'Department' => '部門',
- 'Department deleted!' => '巳刪除部門',
- 'Department saved!' => '巳儲存部門',
- 'Departments' => '部門',
- 'Deposit' => '存款',
- 'Description' => '說明',
- 'Description Translations' => '翻譯æè¿°',
- 'Description missing!' => '未指明æè¿°',
- 'Detail' => '詳情',
- 'Difference' => '差異',
- 'Directory' => '目錄',
- 'Discount' => '折扣',
- 'Done' => '巳完æˆ',
- 'Drawing' => '圖畫',
- 'Driver' => '驅動程å¼',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail Statement to' => '電郵會計賬到',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit' => '編輯',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => '編輯帳戶',
- 'Edit Assembly' => '編輯商å“',
- 'Edit Business' => '編輯業務',
- 'Edit Cash Transfer Transaction' => '編輯ç¾é‡‘轉移',
- 'Edit Customer' => '編輯客戶',
- 'Edit Deduction' => '編輯減除é¡',
- 'Edit Department' => '編輯部門',
- 'Edit Description Translations' => '編輯翻譯æè¿°',
- 'Edit Employee' => '編輯è·å“¡',
- 'Edit GIFI' => '編輯 GIFI',
- 'Edit General Ledger Transaction' => '編輯總帳',
- 'Edit Group' => '編輯組',
- 'Edit Labor/Overhead' => '編輯勞工/經常費用',
- 'Edit Language' => '編輯語言',
- 'Edit POS Invoice' => '編輯POS',
- 'Edit Part' => '編輯原料',
- 'Edit Preferences for' => '設定使用者',
- 'Edit Pricegroup' => '編輯價格組',
- 'Edit Project' => '編輯方案',
- 'Edit Purchase Order' => '編輯採購單',
- 'Edit Quotation' => '編輯報價單',
- 'Edit Request for Quotation' => '編輯報價單è¦æ±‚',
- 'Edit SIC' => '編輯原文',
- 'Edit Sales Invoice' => '編輯銷售發票',
- 'Edit Sales Order' => '編輯銷貨單',
- 'Edit Service' => '編輯æœå‹™',
- 'Edit Template' => '編輯模版',
- 'Edit User' => '編輯使用者',
- 'Edit Vendor' => '編輯供應商',
- 'Edit Vendor Invoice' => '編輯供應商發票',
- 'Edit Warehouse' => '編輯倉庫',
- 'Employee' => 'è·å“¡',
- 'Employee Name' => 'è·å“¡å§“å',
- 'Employee Number' => '',
- 'Employee deleted!' => '巳刪除è·å“¡',
- 'Employee pays' => '付款給è·å“¡',
- 'Employee saved!' => '巳儲存è·å“¡',
- 'Employees' => 'è·å“¡',
- 'Employer' => '雇主',
- 'Employer pays' => '付款給雇主',
- 'Enddate' => 'çµæŸæ—¥',
- 'Enforce transaction reversal for all dates' => '強制所有日期的交易回復',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'è«‹éµå…¥ä»¥å†’號分隔的英文字æ¯, æ¯é …ä¸è¶…éŽä¸‰å€‹å­— (如 CAD:USD:EUR), 作為您的本國åŠå¤–國貨幣',
- 'Equity' => '股權',
- 'Excempt age <' => '',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Existing Datasets' => '既有的資料集',
- 'Expense' => '費用',
- 'Expense Account' => '費用科目',
- 'Expense/Asset' => '費用/資產',
- 'Extended' => '巳擴大',
- 'FX' => '',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Foreign Exchange Gain' => '外匯收益',
- 'Foreign Exchange Loss' => '外匯æ失',
- 'From' => '從',
- 'GIFI' => '',
- 'GIFI deleted!' => '巳刪除',
- 'GIFI missing!' => '未指明 GIFI!',
- 'GIFI saved!' => '巳儲存',
- 'GL Transaction' => 'GL交易',
- 'General Ledger' => '總帳',
- 'Goods & Services' => '貨物åŠæœå‹™',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'Group Translations' => '組的翻譯',
- 'Group deleted!' => '巳刪除的組',
- 'Group missing!' => '未指明的組',
- 'Group saved!' => '巳儲存的組',
- 'Groups' => '組',
- 'HR' => '人事管ç†',
- 'HTML Templates' => 'HTML 表單',
- 'Heading' => '標題, ',
- 'History' => 'æ­·å²',
- 'Home Phone' => 'ä½å®…電話',
- 'Host' => '主機',
- 'Hostname missing!' => '未指明主機å稱!',
- 'IBAN' => '',
- 'ID' => '編號',
- 'Image' => 'å½¢åƒ',
- 'In-line' => '行內',
- 'Include Exchange Rate Difference' => '包å«å¤–匯差è·',
- 'Include in Report' => '一併顯示',
- 'Include in drop-down menus' => '包å«åœ¨ä¸‹æ‹‰å¼é¸å–®ä¸­',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'è¦å°‡é€™å€‹å®¢æˆ¶/廠商加入應加稅清單?',
- 'Income' => '收入',
- 'Income Account' => '收入帳戶',
- 'Income Statement' => 'æ益表',
- 'Incorrect Dataset version!' => '資料集版本錯誤!',
- 'Incorrect Password!' => '密碼錯誤!',
- 'Increase' => '增加',
- 'Individual Items' => '個別的項目',
- 'Internal Notes' => '內部備忘錄',
- 'Inventory' => '庫存',
- 'Inventory Account' => '存貨帳戶',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '在åœç”¨æ­¤é …組åˆå“之å‰, 存貨數é‡å¿…需為零!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'åœç”¨æ­¤é …零件之å‰, 存貨數é‡å¿…需為零!',
- 'Inventory saved!' => '巳儲存存貨',
- 'Inventory transferred!' => '轉移的存貨',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Invoice deleted!' => '巳刪除發票',
- 'Invoice posted!' => '巳加入發票',
- 'Invoice processed!' => '巳處ç†ç™¼ç¥¨',
- 'Invoices' => '發票',
- 'Is this a summary account to record' => '此為總çµç§‘目嗎?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => '巳刪除項目',
- 'Item not on file!' => '查無此項目',
- 'Items' => 'é …ç›®',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'LaTeX Templates' => 'LaTex 模版',
- 'Labor/Overhead' => '勞工/經常費用',
- 'Language' => '語言',
- 'Language deleted!' => '巳刪除語言',
- 'Language saved!' => '巳儲存語言',
- 'Languages' => '語言',
- 'Languages not defined!' => 'ä¸èƒ½è¾¨èªèªžè¨€',
- 'Last Numbers & Default Accounts' => '上一筆編號åŠé è¨­å¸³æˆ¶',
- 'Leadtime' => '總需時',
- 'Leave host and port field empty unless you want to make a remote connection.' => '除éžæ‚¨æƒ³è¦é€²è¡Œé ç«¯é€£ç·š, å¦å‰‡è«‹å°‡ä¸»æ©ŸåŠåŸ è™Ÿç•™ç™½.',
- 'Liability' => '負債',
- 'Licensed to' => '授權予',
- 'Line Total' => '總列數',
- 'Link' => '連çµ',
- 'Link Accounts' => '連çµå¸³æˆ¶',
- 'List' => '',
- 'List Accounts' => '列出帳號',
- 'List Businesses' => '列出業務',
- 'List Departments' => '列出部門',
- 'List GIFI' => '列出 GIFI',
- 'List Languages' => '列出語言',
- 'List Price' => '列出價',
- 'List Projects' => '列出方案',
- 'List SIC' => '列出SIC',
- 'List Transactions' => '列出交易',
- 'List Warehouses' => '列出倉庫',
- 'Lock System' => '系統鎖上',
- 'Lockfile created!' => '巳建立上鎖檔案!',
- 'Lockfile removed!' => '巳移除上鎖檔案!',
- 'Login' => '登入',
- 'Login name missing!' => '未指明登入åå­—',
- 'Logout' => '登出',
- 'Make' => '製造',
- 'Manager' => '經ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'Marked entries printed!' => '巳列å°æœ‰è¨˜è™Ÿçš„會計項目',
- 'Markup' => '漲價',
- 'Maximum' => '最大',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Menu Width' => 'é¸æ“‡å–®å¯¬åº¦',
- 'Message' => '訊æ¯',
- 'Method' => '方法',
- 'Microfiche' => '單片縮影膠片',
- 'Model' => '型號',
- 'Month' => '',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'ä¸é©ç”¨',
- 'Name' => 'å稱',
- 'Name missing!' => '未指明åå­—',
- 'New Templates' => '新增模版',
- 'No' => 'å¦',
- 'No Database Drivers available!' => '沒有å¯ç”¨çš„驅動程å¼!',
- 'No Dataset selected!' => '未é¸å®šè³‡æ–™é›†!',
- 'No email address for' => '未指明電å­éƒµä»¶ä½ç½®',
- 'No.' => 'å¦',
- 'Non-taxable' => 'ä¸æ‡‰èª²ç¨…',
- 'Non-taxable Purchases' => 'ä¸æ‡‰èª²ç¨…的採購',
- 'Non-taxable Sales' => 'ä¸æ‡‰èª²ç¨…的銷售',
- 'Notes' => '備註',
- 'Nothing entered!' => '沒有巳輸入',
- 'Nothing outstanding for ' => '沒有未付來æº',
- 'Nothing selected!' => '沒有巳é¸æ“‡',
- 'Nothing to delete!' => '沒有å¯åˆªé™¤çš„é …ç›®',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '沒有å¯è½‰ç§»çš„é …ç›®',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number Format' => '數字格å¼',
- 'Number missing in Row' => '此列中缺少數值',
- 'O' => '',
- 'Obsolete' => 'åœç”¨',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'On Hand' => '巳有存é‡',
- 'Open' => 'é–‹å•Ÿ',
- 'Oracle Database Administration' => 'Oracle 資料庫管ç†',
- 'Order' => '訂單',
- 'Order Date' => '下單日期',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Entry' => '下單項目',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Order deleted!' => '巳刪除訂單',
- 'Order processed!' => '巳處ç†è¨‚å–®',
- 'Order saved!' => '巳儲存訂單',
- 'Orphaned' => '無主',
- 'Out of balance transaction!' => 'ä¸å”調交易',
- 'Out of balance!' => 'ä¸å”調',
- 'Outstanding' => '未付',
- 'PDF' => '',
- 'POS' => '',
- 'POS Invoice' => 'POS發票',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Packing Lists' => '出貨單',
- 'Paid' => '已付',
- 'Part' => '原料',
- 'Part Number' => '原料編號',
- 'Partnumber' => '',
- 'Parts' => '原料',
- 'Parts Inventory' => '庫存原料',
- 'Password' => '密碼',
- 'Password changed!' => '密碼巳改',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => '應付科目',
- 'Payment' => '付款',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payment posted!' => '巳加入付款',
- 'Payments' => '付款',
- 'Payroll Deduction' => '薪金減除é¡',
- 'Period' => '',
- 'Pg Database Administration' => 'Pg 資料庫管ç†',
- 'PgPP Database Administration' => 'PgPP資料庫管ç†',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Pick Lists' => '',
- 'Port' => '埠號',
- 'Port missing!' => '未指明埠號!',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Posted!' => '巳加入',
- 'Postscript' => '附言',
- 'Preferences' => '個人設定',
- 'Preferences saved!' => '個人設定已儲存!',
- 'Prepayment' => 'é ç¹³',
- 'Price' => '價格',
- 'Pricegroup' => '價格組',
- 'Pricegroup deleted!' => '巳刪除價格組',
- 'Pricegroup missing!' => '未指明價格組',
- 'Pricegroup saved!' => '巳儲存價格組',
- 'Pricegroups' => '價格組',
- 'Pricelist' => '',
- 'Print' => '列å°',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '巳列å°',
- 'Printer' => 'å°è¡¨æ©Ÿ',
- 'Printing ... ' => '正列å°',
- 'Profit Center' => '利潤中心',
- 'Project' => '方案',
- 'Project Description Translations' => '方案æ述的翻譯',
- 'Project Number' => '方案號碼',
- 'Project Number missing!' => '未指明方案號碼',
- 'Project Transactions' => '方案交易',
- 'Project deleted!' => '巳刪除方案',
- 'Project not on file!' => '方案內無此檔案',
- 'Project saved!' => '巳儲存方案',
- 'Projects' => '方案',
- 'Purchase Order' => '採購單',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => '採購單',
- 'Qty' => '數é‡',
- 'Quantity exceeds available units to stock!' => '超éŽå¯åº«å­˜çš„數é‡',
- 'Quarter' => '',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation ' => '',
- 'Quotation Date' => '報價單日期',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number' => '報價單號碼',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Quotation deleted!' => '巳刪除報價單',
- 'Quotations' => '報價單',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => 'RFD號碼',
- 'RFQs' => '',
- 'ROP' => 'å†è¨‚點',
- 'Rate' => '稅率',
- 'Rate missing!' => '未指明稅率',
- 'Recd' => '巳收到',
- 'Receipt' => '收據',
- 'Receipt posted!' => '巳加入收據',
- 'Receipts' => '收據',
- 'Receivables' => '應收帳戶',
- 'Receive' => '收到',
- 'Receive Merchandise' => '收到貨物',
- 'Reconciliation' => '調和',
- 'Reconciliation Report' => '調和報告',
- 'Record in' => '記錄於',
- 'Reference' => 'åƒè€ƒè³‡æ–™',
- 'Reference missing!' => '未指明åƒè€ƒè³‡æ–™',
- 'Remaining' => '尚餘',
- 'Remove' => '移除',
- 'Remove Audit trails up to' => '移除審核線索直至',
- 'Removed spoolfiles!' => '移除線軸檔案',
- 'Removing marked entries from queue ...' => '正從長隊中移除有記號的會計項目',
- 'Report for' => '報表來æº',
- 'Reports' => '報表',
- 'Request for Quotation' => 'è¦æ±‚報價單',
- 'Request for Quotations' => 'è¦æ±‚報價單',
- 'Required by' => '需è¦è€…',
- 'Retained Earnings' => 'ä¿ç•™ç›ˆé¤˜',
- 'Role' => '任務',
- 'S' => '',
- 'SIC' => '原文',
- 'SIC deleted!' => '巳刪除原文',
- 'SIC saved!' => '巳儲存原文',
- 'SKU' => '被指定的數é‡',
- 'SSN' => '',
- 'Sale' => '銷售',
- 'Sales' => '銷售',
- 'Sales Invoice' => '銷售發票',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '銷售發票',
- 'Sales Order' => '銷貨單',
- 'Sales Order Number' => '',
- 'Sales Orders' => '銷貨單',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '銷售人員',
- 'Save' => '儲存',
- 'Save Pricelist' => '',
- 'Save as new' => '當新的儲存',
- 'Save to File' => '儲存至檔案',
- 'Screen' => '螢幕',
- 'Search' => 'æœå°‹',
- 'Select' => 'é¸æ“‡',
- 'Select Printer or Queue!' => '',
- 'Select all' => 'å…¨é¸',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '售價',
- 'Send by E-Mail' => '以電å­éƒµä»¶å¯„é€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Serial Number' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Service Items' => 'æœå‹™é …ç›®',
- 'Services' => 'æœå‹™',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => '設定模版',
- 'Ship' => '船',
- 'Ship Merchandise' => 'æµ·é‹è²¨ç‰©',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Ship via' => '由海é‹',
- 'Shipping' => 'æµ·é‹',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Shipping Date' => 'æµ·é‹æ—¥æœŸ',
- 'Shipping Date missing!' => '未指明海é‹æ—¥æœŸ',
- 'Shipping Point' => 'æµ·é‹åœ°é»ž',
- 'Short' => '短',
- 'Signature' => 'ç°½å',
- 'Source' => '來æº',
- 'Spoolfile' => '線軸檔案',
- 'Standard' => '標準',
- 'Standard Industrial Codes' => '標準工業編碼',
- 'Startdate' => '開始日期',
- 'State' => '',
- 'State/Province' => 'çœ',
- 'Statement' => '會計帳',
- 'Statement Balance' => '會計帳餘é¡',
- 'Statement sent to' => 'é€æœƒè¨ˆå¸³è‡³',
- 'Statements sent to printer!' => 'é€æœƒè¨ˆå¸³è‡³åˆ—å°æ©Ÿ',
- 'Stock' => '庫存',
- 'Stock Assembly' => '盤點',
- 'Stylesheet' => '樣å¼è¡¨',
- 'Sub-contract GIFI' => 'ç´°åˆç´„GIFI',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Summary' => '摘è¦',
- 'Supervisor' => '',
- 'System' => '系統',
- 'System Defaults' => 'é è¨­ç³»çµ±',
- 'Tax' => '稅金',
- 'Tax Accounts' => '稅金科目',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'Tax Number' => '稅號',
- 'Tax Number / SSN' => '稅號',
- 'Tax collected' => '巳收稅金',
- 'Tax paid' => '巳付稅金',
- 'Taxable' => '應稅',
- 'Template saved!' => '巳儲存模版',
- 'Templates' => '模版',
- 'Terms' => '票期淨計',
- 'Text Templates' => '文字模版',
- 'The following Datasets are not in use and can be deleted' => '下列資料集並未使用, å¯ä»¥åˆªé™¤',
- 'The following Datasets need to be updated' => '下列資料集需è¦æ›´æ–°',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => '這是å°æ—¢å­˜è³‡æ–™ä¾†æºçš„åˆæ­¥æª¢æŸ¥. 在此階段, ä¸æœƒåˆªé™¤æˆ–新增任何資料!',
- 'Till' => '直到',
- 'To' => '至',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'è‹¥è¦æ–°å¢žç¾¤çµ„內的使用者, 請編輯å稱, 更改登入å, 然後儲存. 這樣一來, 新使用者會ä¿ç•™ç›¸åŒçš„變數, 並以新的登入å存入.',
- 'Top Level' => '高水準',
- 'Total' => '總計',
- 'Trade Discount' => '貿易折扣',
- 'Transaction' => '',
- 'Transaction Date missing!' => '未指明交易日期!',
- 'Transaction deleted!' => '巳刪除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Transaction reversal enforced for all dates' => '強制回復所有日期的交易',
- 'Transaction reversal enforced up to' => '強制回復交易直到',
- 'Transactions' => '交易',
- 'Transfer' => '轉移',
- 'Transfer Inventory' => '轉移存貨',
- 'Transfer to' => '存貨至',
- 'Translation' => '翻譯',
- 'Translation deleted!' => '巳刪除翻譯',
- 'Translation not on file!' => '',
- 'Translations' => '翻譯',
- 'Translations saved!' => '巳儲存翻譯',
- 'Trial Balance' => '試算表',
- 'Type of Business' => '業務種類',
- 'Unit' => 'å–®ä½',
- 'Unit of measure' => '度é‡å–®ä½',
- 'Unlock System' => '開啟系統',
- 'Update' => 'æ›´æ–°',
- 'Update Dataset' => '更新資料集',
- 'Updated' => '巳更新',
- 'Upgrading to Version' => 'æ­£å‡ç´šè‡³æ–°ç‰ˆ',
- 'Use Templates' => '使用模版',
- 'User' => '使用者',
- 'User deleted!' => '巳刪除使用者',
- 'User saved!' => '巳儲存使用者',
- 'Valid until' => '有效至',
- 'Vendor' => '供應商',
- 'Vendor History' => '供應商歷å²',
- 'Vendor Invoice' => '供應商發票',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '供應商發票',
- 'Vendor Number' => '供應商號碼',
- 'Vendor deleted!' => '巳刪除供應商',
- 'Vendor missing!' => '未指明供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Vendor saved!' => '巳儲存供應商',
- 'Vendors' => '供應商',
- 'Version' => '版本',
- 'Warehouse' => '倉庫',
- 'Warehouse deleted!' => '巳刪除倉庫',
- 'Warehouse saved!' => '巳儲存倉庫',
- 'Warehouses' => '倉庫',
- 'Warning!' => '警告',
- 'Weight' => 'é‡é‡',
- 'Weight Unit' => 'é‡é‡å–®ä½',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'Work Orders' => '',
- 'Work Phone' => '工作電話',
- 'Year' => '',
- 'Yearend' => 'å¹´çµ',
- 'Yearend date missing!' => '未指明年çµæ—¥æœŸ',
- 'Yearend posted!' => '巳加入年çµ',
- 'Yearend posting failed!' => 'å¹´çµåŠ å…¥å¤±æ•—',
- 'Yes' => '是',
- 'You are logged out' => '',
- 'You did not enter a name!' => '你並未éµå…¥å稱!',
- 'You must enter a host and port for local and remote connections!' => '您必需éµå…¥ä¸»æ©ŸåŠåŸ è™Ÿ, 以進行本機或é ç«¯é€£ç·š!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '帳戶ä¸èƒ½é€åŽ»å…¶ä»–類型帳戶',
- 'as at' => '截至',
- 'days' => 'æ—¥',
- 'does not exist' => 'ä¸å­˜åœ¨',
- 'done' => '完æˆ',
- 'ea' => '個',
- 'for Period' => '期間',
- 'is already a member!' => '已經是æˆå“¡äº†!',
- 'is not a member!' => '並ä¸æ˜¯æˆå“¡!',
- 'localhost' => '本地寄主',
- 'locked!' => '巳鎖上',
- 'posted!' => '巳加入',
- 'sent' => 'å·³é€å‡º',
- 'successfully created!' => 'æˆåŠŸå»ºç«‹!',
- 'successfully deleted!' => 'æˆåŠŸåˆªé™¤!',
- 'website' => '網站',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/am b/sql-ledger/locale/tw_utf/am
deleted file mode 100644
index 8764010..0000000
--- a/sql-ledger/locale/tw_utf/am
+++ /dev/null
@@ -1,245 +0,0 @@
-$self{texts} = {
- 'AP' => '應付帳款',
- 'AR' => '應收帳款',
- 'About' => '關於',
- 'Account' => '帳戶',
- 'Account Number' => '帳戶編號',
- 'Account Number missing!' => '未指明帳戶編號!',
- 'Account Type' => '帳戶類別',
- 'Account Type missing!' => '未指明帳戶類別!',
- 'Account deleted!' => '巳刪除帳戶',
- 'Account does not exist!' => 'ä¸å­˜åœ¨å¸³æˆ¶',
- 'Account saved!' => '巳儲存帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Accrual' => 'ç´¯ç©',
- 'Activate Audit trails' => 'æ´»èºçš„審計線索',
- 'Add Account' => '新增帳戶',
- 'Add Business' => '新增業務',
- 'Add Department' => '新增部門',
- 'Add GIFI' => '新增 GIFI',
- 'Add Language' => '新增語言',
- 'Add SIC' => '新增原文',
- 'Add Warehouse' => '新增倉庫',
- 'Address' => '地å€',
- 'Asset' => '資產',
- 'Audit Control' => '稽核控制',
- 'Audit trail removed up to' => '移除到此為止的審計線索',
- 'Audit trails disabled' => '有效的審計線索',
- 'Audit trails enabled' => '無效的審計線索',
- 'Backup sent to' => '備份寄é€åˆ°',
- 'Books are open' => '帳簿已開啟',
- 'Business Number' => '業務編號',
- 'Business deleted!' => '巳刪除業務',
- 'Business saved!' => '巳儲存業務',
- 'COGS' => '貨銷æˆæœ¬',
- 'Cannot delete account!' => 'ä¸èƒ½åˆªé™¤å¸³æˆ¶',
- 'Cannot delete default account!' => 'ä¸èƒ½åˆªé™¤é è¨­å¸³æˆ¶',
- 'Cannot save account!' => 'ä¸èƒ½å„²å­˜å¸³æˆ¶',
- 'Cannot save defaults!' => 'ä¸èƒ½å„²å­˜é è¨­',
- 'Cannot save preferences!' => 'ä¸èƒ½å„²å­˜å„ªå…ˆé¸æ“‡ ',
- 'Cannot set account for more than one of AR, AP or IC' => 'ä¸èƒ½è¨­ç½®å¤šæ–¼ä¸€å€‹æ‡‰æ”¶å¸³æ¬¾, 應付帳款或IC',
- 'Cash' => 'ç¾é‡‘',
- 'Character Set' => '字元集',
- 'Chart of Accounts' => '會計科目表',
- 'Close Books up to' => '關閉到此為止的帳簿',
- 'Code' => '編碼',
- 'Code missing!' => '未指明編碼',
- 'Company' => 'å…¬å¸',
- 'Continue' => '繼續',
- 'Contra' => '相å',
- 'Copy to COA' => '複製到 COA',
- 'Cost Center' => 'æˆæœ¬ä¸­å¿ƒ',
- 'Credit' => '貸方',
- 'Customer Number' => '客戶編號',
- 'Database Host' => '資料庫主機',
- 'Dataset' => '資料集',
- 'Date Format' => '日期格å¼',
- 'Debit' => '借方',
- 'Defaults saved!' => '巳儲存é è¨­',
- 'Delete' => '刪除',
- 'Delete Account' => '刪除帳戶',
- 'Department deleted!' => '巳刪除部門',
- 'Department saved!' => '巳儲存部門',
- 'Departments' => '部門',
- 'Description' => '說明',
- 'Description missing!' => '未指明æè¿°',
- 'Discount' => '折扣',
- 'Dropdown Limit' => 'é™åˆ¶',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'Edit' => '編輯',
- 'Edit Account' => '編輯帳戶',
- 'Edit Business' => '編輯業務',
- 'Edit Department' => '編輯部門',
- 'Edit GIFI' => '編輯 GIFI',
- 'Edit Language' => '編輯語言',
- 'Edit Preferences for' => '設定使用者',
- 'Edit SIC' => '編輯原文',
- 'Edit Template' => '編輯模版',
- 'Edit Warehouse' => '編輯倉庫',
- 'Enforce transaction reversal for all dates' => '強制所有日期的交易回復',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'è«‹éµå…¥ä»¥å†’號分隔的英文字æ¯, æ¯é …ä¸è¶…éŽä¸‰å€‹å­— (如 CAD:USD:EUR), 作為您的本國åŠå¤–國貨幣',
- 'Equity' => '股權',
- 'Expense' => '費用',
- 'Expense Account' => '費用科目',
- 'Expense/Asset' => '費用/資產',
- 'Fax' => '傳真',
- 'Foreign Exchange Gain' => '外匯收益',
- 'Foreign Exchange Loss' => '外匯æ失',
- 'GIFI deleted!' => '巳刪除',
- 'GIFI missing!' => '未指明 GIFI!',
- 'GIFI saved!' => '巳儲存',
- 'Heading' => '標題, ',
- 'Include in drop-down menus' => '包å«åœ¨ä¸‹æ‹‰å¼é¸å–®ä¸­',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'è¦å°‡é€™å€‹å®¢æˆ¶/廠商加入應加稅清單?',
- 'Income' => '收入',
- 'Income Account' => '收入帳戶',
- 'Inventory' => '庫存',
- 'Inventory Account' => '存貨帳戶',
- 'Is this a summary account to record' => '此為總çµç§‘目嗎?',
- 'Labor/Overhead' => '勞工/經常費用',
- 'Language' => '語言',
- 'Language deleted!' => '巳刪除語言',
- 'Language saved!' => '巳儲存語言',
- 'Languages' => '語言',
- 'Last Numbers & Default Accounts' => '上一筆編號åŠé è¨­å¸³æˆ¶',
- 'Liability' => '負債',
- 'Licensed to' => '授權予',
- 'Link' => '連çµ',
- 'Menu Width' => 'é¸æ“‡å–®å¯¬åº¦',
- 'Method' => '方法',
- 'Name' => 'å稱',
- 'No' => 'å¦',
- 'No email address for' => '未指明電å­éƒµä»¶ä½ç½®',
- 'Number' => '編號',
- 'Number Format' => '數字格å¼',
- 'Parts Inventory' => '庫存原料',
- 'Password' => '密碼',
- 'Payables' => '應付科目',
- 'Payment' => '付款',
- 'Phone' => '電話號碼',
- 'Preferences saved!' => '個人設定已儲存!',
- 'Printer' => 'å°è¡¨æ©Ÿ',
- 'Profit Center' => '利潤中心',
- 'RFQ Number' => 'RFD號碼',
- 'Rate' => '稅率',
- 'Receivables' => '應收帳戶',
- 'Reference' => 'åƒè€ƒè³‡æ–™',
- 'Remove Audit trails up to' => '移除審核線索直至',
- 'Retained Earnings' => 'ä¿ç•™ç›ˆé¤˜',
- 'SIC deleted!' => '巳刪除原文',
- 'SIC saved!' => '巳儲存原文',
- 'Save' => '儲存',
- 'Save as new' => '當新的儲存',
- 'Service Items' => 'æœå‹™é …ç›®',
- 'Signature' => 'ç°½å',
- 'Standard Industrial Codes' => '標準工業編碼',
- 'Stylesheet' => '樣å¼è¡¨',
- 'System Defaults' => 'é è¨­ç³»çµ±',
- 'Tax' => '稅金',
- 'Tax Accounts' => '稅金科目',
- 'Template saved!' => '巳儲存模版',
- 'Transaction reversal enforced for all dates' => '強制回復所有日期的交易',
- 'Transaction reversal enforced up to' => '強制回復交易直到',
- 'Type of Business' => '業務種類',
- 'User' => '使用者',
- 'Vendor Number' => '供應商號碼',
- 'Version' => '版本',
- 'Warehouse deleted!' => '巳刪除倉庫',
- 'Warehouse saved!' => '巳儲存倉庫',
- 'Warehouses' => '倉庫',
- 'Weight Unit' => 'é‡é‡å–®ä½',
- 'Yearend' => 'å¹´çµ',
- 'Yearend date missing!' => '未指明年çµæ—¥æœŸ',
- 'Yearend posted!' => '巳加入年çµ',
- 'Yearend posting failed!' => 'å¹´çµåŠ å…¥å¤±æ•—',
- 'Yes' => '是',
- 'account cannot be set to any other type of account' => '帳戶ä¸èƒ½é€åŽ»å…¶ä»–類型帳戶',
- 'localhost' => '本地寄主',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- '新增帳戶' => 'add_account',
- '新增業務' => 'add_business',
- '新增部門' => 'add_department',
- '新增語言' => 'add_language',
- '新增原文' => 'add_sic',
- '新增倉庫' => 'add_warehouse',
- '繼續' => 'continue',
- '複製到_coa' => 'copy_to_coa',
- '刪除' => 'delete',
- '編輯' => 'edit',
- '編輯帳戶' => 'edit_account',
- '儲存' => 'save',
- '當新的儲存' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ap b/sql-ledger/locale/tw_utf/ap
deleted file mode 100644
index a95cbbe..0000000
--- a/sql-ledger/locale/tw_utf/ap
+++ /dev/null
@@ -1,162 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => '應付未付',
- 'AP Transaction' => '應付交易',
- 'AP Transactions' => '應付交易',
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Amount Due' => '應得的總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¢ºå®šè¦åˆªé™¤äº¤æ˜“',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆªé™¤äº¤æ˜“',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Check' => '檢查',
- 'Closed' => '已關閉',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Continue' => '繼續',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'Employee' => 'è·å“¡',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'ID' => '編號',
- 'Include in Report' => '一併顯示',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => '經ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'é–‹å•Ÿ',
- 'Order' => '訂單',
- 'Order Number' => '訂單編號',
- 'Paid' => '已付',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project not on file!' => '方案內無此檔案',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Receipt' => '收據',
- 'Remaining' => '尚餘',
- 'Screen' => '螢幕',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => '來æº',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax' => '稅金',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'To' => '至',
- 'Total' => '總計',
- 'Transaction deleted!' => '巳刪除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供應商',
- 'Vendor missing!' => '未指明供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '應付交易' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- '繼續' => 'continue',
- '刪除' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'æ›´æ–°' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ar b/sql-ledger/locale/tw_utf/ar
deleted file mode 100644
index fb326bd..0000000
--- a/sql-ledger/locale/tw_utf/ar
+++ /dev/null
@@ -1,163 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => '應收未收',
- 'AR Transaction' => '應收交易',
- 'AR Transactions' => '應收交易',
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Amount Due' => '應得的總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¢ºå®šè¦åˆªé™¤äº¤æ˜“',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆªé™¤äº¤æ˜“',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Check' => '檢查',
- 'Closed' => '已關閉',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Continue' => '繼續',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Customer' => '客戶',
- 'Customer missing!' => '未指明客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'ID' => '編號',
- 'Include in Report' => '一併顯示',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => '經ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'é–‹å•Ÿ',
- 'Order' => '訂單',
- 'Order Number' => '訂單編號',
- 'Paid' => '已付',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project not on file!' => '方案內無此檔案',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Receipt' => '收據',
- 'Remaining' => '尚餘',
- 'Salesperson' => '銷售人員',
- 'Screen' => '螢幕',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Ship via' => '由海é‹',
- 'Shipping Point' => 'æµ·é‹åœ°é»ž',
- 'Source' => '來æº',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax' => '稅金',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '總計',
- 'Transaction deleted!' => '巳刪除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '應收交易' => 'ar_transaction',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/arap b/sql-ledger/locale/tw_utf/arap
deleted file mode 100644
index b87765d..0000000
--- a/sql-ledger/locale/tw_utf/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => '地å€',
- 'Continue' => '繼續',
- 'Customer not on file!' => '客戶未存檔',
- 'Description' => '說明',
- 'Number' => '編號',
- 'Project not on file!' => '方案內無此檔案',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Vendor not on file!' => '檔案沒有此供應商',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- '繼續' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/arapprn b/sql-ledger/locale/tw_utf/arapprn
deleted file mode 100644
index 71cf792..0000000
--- a/sql-ledger/locale/tw_utf/arapprn
+++ /dev/null
@@ -1,32 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Amount' => '總計',
- 'Check' => '檢查',
- 'Continue' => '繼續',
- 'Date' => '日期',
- 'Memo' => '備忘錄',
- 'Postscript' => '附言',
- 'Printed' => '巳列å°',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Receipt' => '收據',
- 'Screen' => '螢幕',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Source' => '來æº',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- '繼續' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/bp b/sql-ledger/locale/tw_utf/bp
deleted file mode 100644
index e1b9895..0000000
--- a/sql-ledger/locale/tw_utf/bp
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Are you sure you want to remove the marked entries from the queue?' => '您是å¦ç¢ºå®šè¦æ¶ˆé™¤æœ‰è¨˜è™Ÿçš„æ¢ç›®',
- 'Cannot remove files!' => 'ä¸èƒ½ç§»é™¤æª”案',
- 'Checks' => '檢查',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Continue' => '繼續',
- 'Current' => 'ç¾æœ‰',
- 'Customer' => '客戶',
- 'Date' => '日期',
- 'From' => '從',
- 'Invoice' => '發票',
- 'Invoice Number' => '發票編號',
- 'Marked entries printed!' => '巳列å°æœ‰è¨˜è™Ÿçš„會計項目',
- 'Order' => '訂單',
- 'Order Number' => '訂單編號',
- 'Packing Lists' => '出貨單',
- 'Print' => '列å°',
- 'Printing ... ' => '正列å°',
- 'Purchase Orders' => '採購單',
- 'Quotation' => '報價單',
- 'Quotation Number' => '報價單號碼',
- 'Quotations' => '報價單',
- 'Receipts' => '收據',
- 'Reference' => 'åƒè€ƒè³‡æ–™',
- 'Remove' => '移除',
- 'Removed spoolfiles!' => '移除線軸檔案',
- 'Removing marked entries from queue ...' => '正從長隊中移除有記號的會計項目',
- 'Sales Invoices' => '銷售發票',
- 'Sales Orders' => '銷貨單',
- 'Select all' => 'å…¨é¸',
- 'Spoolfile' => '線軸檔案',
- 'To' => '至',
- 'Vendor' => '供應商',
- 'Yes' => '是',
- 'done' => '完æˆ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- '繼續' => 'continue',
- '列å°' => 'print',
- '移除' => 'remove',
- 'å…¨é¸' => 'select_all',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ca b/sql-ledger/locale/tw_utf/ca
deleted file mode 100644
index bc31c10..0000000
--- a/sql-ledger/locale/tw_utf/ca
+++ /dev/null
@@ -1,52 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => '餘é¡',
- 'Chart of Accounts' => '會計科目表',
- 'Credit' => '貸方',
- 'Current' => 'ç¾æœ‰',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Include in Report' => '一併顯示',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'List Transactions' => '列出交易',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Project Number' => '方案號碼',
- 'Reference' => 'åƒè€ƒè³‡æ–™',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Subtotal' => 'å°è¨ˆ',
- 'To' => '至',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- '列出交易' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/cp b/sql-ledger/locale/tw_utf/cp
deleted file mode 100644
index 131f3df..0000000
--- a/sql-ledger/locale/tw_utf/cp
+++ /dev/null
@@ -1,83 +0,0 @@
-$self{texts} = {
- 'AP' => '應付帳款',
- 'AR' => '應收帳款',
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '總計',
- 'Amount Due' => '應得的總計',
- 'Cannot post Payment!' => 'ä¸èƒ½åŠ å…¥æ¬¾é …',
- 'Cannot post Receipt!' => 'ä¸èƒ½åŠ å…¥æ”¶æ“š',
- 'Cannot process payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內處ç†æ¬¾é …',
- 'Continue' => '繼續',
- 'Currency' => '幣別',
- 'Customer' => '客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Date missing!' => '未指明日期',
- 'Department' => '部門',
- 'Deposit' => '存款',
- 'Description' => '說明',
- 'Exchange Rate' => '匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Invoice' => '發票',
- 'Invoices' => '發票',
- 'Memo' => '備忘錄',
- 'Nothing outstanding for ' => '沒有未付來æº',
- 'Number' => '編號',
- 'Payment' => '付款',
- 'Payment posted!' => '巳加入付款',
- 'Post' => '加入',
- 'Postscript' => '附言',
- 'Prepayment' => 'é ç¹³',
- 'Print' => '列å°',
- 'Project not on file!' => '方案內無此檔案',
- 'Queue' => '長隊',
- 'Receipt' => '收據',
- 'Receipt posted!' => '巳加入收據',
- 'Screen' => '螢幕',
- 'Select' => 'é¸æ“‡',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Source' => '來æº',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- '繼續' => 'continue',
- '加入' => 'post',
- '列å°' => 'print',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ct b/sql-ledger/locale/tw_utf/ct
deleted file mode 100644
index 70b6874..0000000
--- a/sql-ledger/locale/tw_utf/ct
+++ /dev/null
@@ -1,167 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => '應付交易',
- 'AP Transactions' => '應付交易',
- 'AR Transaction' => '應收交易',
- 'AR Transactions' => '應收交易',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Customer' => '新增客戶',
- 'Add Vendor' => '新增供應商',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '總計',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Break' => '休æ¯',
- 'Cannot delete customer!' => 'ä¸èƒ½åˆªé™¤å®¢æˆ¶',
- 'Cannot delete vendor!' => 'ä¸èƒ½åˆªé™¤ä¾›æ‡‰å•†',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Closed' => '已關閉',
- 'Company Name' => 'å…¬å¸å稱',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Cost' => 'æˆæœ¬',
- 'Country' => '國家',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Customer History' => '客戶歷å²',
- 'Customer Number' => '客戶編號',
- 'Customer deleted!' => '巳刪除客戶',
- 'Customer saved!' => '巳儲存客戶',
- 'Customers' => '客戶',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Description' => '說明',
- 'Detail' => '詳情',
- 'Discount' => '折扣',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'Edit Customer' => '編輯客戶',
- 'Edit Vendor' => '編輯供應商',
- 'Employee' => 'è·å“¡',
- 'Enddate' => 'çµæŸæ—¥',
- 'Fax' => '傳真',
- 'From' => '從',
- 'Group' => '組',
- 'ID' => '編號',
- 'Include in Report' => '一併顯示',
- 'Invoice' => '發票',
- 'Item not on file!' => '查無此項目',
- 'Language' => '語言',
- 'Leadtime' => '總需時',
- 'Manager' => '經ç†',
- 'Name' => 'å稱',
- 'Name missing!' => '未指明åå­—',
- 'Notes' => '備註',
- 'Number' => '編號',
- 'Open' => 'é–‹å•Ÿ',
- 'Order' => '訂單',
- 'Orphaned' => '無主',
- 'Part Number' => '原料編號',
- 'Phone' => '電話號碼',
- 'Pricegroup' => '價格組',
- 'Project Number' => '方案號碼',
- 'Purchase Order' => '採購單',
- 'Purchase Orders' => '採購單',
- 'Qty' => '數é‡',
- 'Quotation' => '報價單',
- 'Quotations' => '報價單',
- 'Request for Quotations' => 'è¦æ±‚報價單',
- 'SIC' => '原文',
- 'SKU' => '被指定的數é‡',
- 'Sales Invoice' => '銷售發票',
- 'Sales Invoices' => '銷售發票',
- 'Sales Order' => '銷貨單',
- 'Sales Orders' => '銷貨單',
- 'Salesperson' => '銷售人員',
- 'Save' => '儲存',
- 'Search' => 'æœå°‹',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Sell Price' => '售價',
- 'Serial Number' => 'åºè™Ÿ',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Startdate' => '開始日期',
- 'State/Province' => 'çœ',
- 'Sub-contract GIFI' => 'ç´°åˆç´„GIFI',
- 'Subtotal' => 'å°è¨ˆ',
- 'Summary' => '摘è¦',
- 'Tax' => '稅金',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'Tax Number' => '稅號',
- 'Tax Number / SSN' => '稅號',
- 'Taxable' => '應稅',
- 'Terms' => '票期淨計',
- 'To' => '至',
- 'Total' => '總計',
- 'Type of Business' => '業務種類',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor History' => '供應商歷å²',
- 'Vendor Invoice' => '供應商發票',
- 'Vendor Invoices' => '供應商發票',
- 'Vendor Number' => '供應商號碼',
- 'Vendor deleted!' => '巳刪除供應商',
- 'Vendor saved!' => '巳儲存供應商',
- 'Vendors' => '供應商',
- 'days' => 'æ—¥',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- '應付交易' => 'ap_transaction',
- '應收交易' => 'ar_transaction',
- '新增客戶' => 'add_customer',
- '新增供應商' => 'add_vendor',
- '繼續' => 'continue',
- '刪除' => 'delete',
- 'pricelist' => 'pricelist',
- '採購單' => 'purchase_order',
- '報價單' => 'quotation',
- 'rfq' => 'rfq',
- '銷售發票' => 'sales_invoice',
- '銷貨單' => 'sales_order',
- '儲存' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'æ›´æ–°' => 'update',
- '供應商發票' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/gl b/sql-ledger/locale/tw_utf/gl
deleted file mode 100644
index ea5e29e..0000000
--- a/sql-ledger/locale/tw_utf/gl
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => '應付交易',
- 'AR Transaction' => '應收交易',
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Cash Transfer Transaction' => '新增ç¾é‡‘轉移帳目',
- 'Add General Ledger Transaction' => '新增總帳',
- 'Address' => '地å€',
- 'All' => '全部',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¢ºå®šè¦åˆªé™¤äº¤æ˜“',
- 'Asset' => '資產',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => '餘é¡',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆªé™¤äº¤æ˜“',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Continue' => '繼續',
- 'Contra' => '相å',
- 'Credit' => '貸方',
- 'Current' => 'ç¾æœ‰',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Edit Cash Transfer Transaction' => '編輯ç¾é‡‘轉移',
- 'Edit General Ledger Transaction' => '編輯總帳',
- 'Equity' => '股權',
- 'Expense' => '費用',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'GL Transaction' => 'GL交易',
- 'General Ledger' => '總帳',
- 'ID' => '編號',
- 'Include in Report' => '一併顯示',
- 'Income' => '收入',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Liability' => '負債',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Out of balance transaction!' => 'ä¸å”調交易',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Project' => '方案',
- 'Project not on file!' => '方案內無此檔案',
- 'Reference' => 'åƒè€ƒè³‡æ–™',
- 'Reference missing!' => '未指明åƒè€ƒè³‡æ–™',
- 'Reports' => '報表',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => '來æº',
- 'Subtotal' => 'å°è¨ˆ',
- 'To' => '至',
- 'Transaction Date missing!' => '未指明交易日期!',
- 'Transaction deleted!' => '巳刪除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Update' => 'æ›´æ–°',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Warning!' => '警告',
- 'Yes' => '是',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '應付交易' => 'ap_transaction',
- '應收交易' => 'ar_transaction',
- '繼續' => 'continue',
- '刪除' => 'delete',
- 'gl交易' => 'gl_transaction',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'æ›´æ–°' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/hr b/sql-ledger/locale/tw_utf/hr
deleted file mode 100644
index af8b9c5..0000000
--- a/sql-ledger/locale/tw_utf/hr
+++ /dev/null
@@ -1,104 +0,0 @@
-$self{texts} = {
- 'AP' => '應付帳款',
- 'Above' => '上文',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Deduction' => '新增扣除',
- 'Add Employee' => '新增è·å“¡',
- 'Address' => '地å€',
- 'Administrator' => '管ç†äºº',
- 'After Deduction' => '扣除以後',
- 'All' => '全部',
- 'Allowances' => '津貼',
- 'Amount' => '總計',
- 'Amount missing!' => 'æ¼å¡«çš„總計',
- 'Based on' => '基於',
- 'Before Deduction' => '扣除之å‰',
- 'Below' => '以下',
- 'City' => '城市',
- 'Continue' => '繼續',
- 'Country' => '國家',
- 'Deduct after' => '減少以後',
- 'Deduction deleted!' => '巳刪除減少',
- 'Deduction saved!' => '巳儲存減少',
- 'Deductions' => '減除é¡',
- 'Delete' => '刪除',
- 'Description' => '說明',
- 'Description missing!' => '未指明æè¿°',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'Edit Deduction' => '編輯減除é¡',
- 'Edit Employee' => '編輯è·å“¡',
- 'Employee' => 'è·å“¡',
- 'Employee Name' => 'è·å“¡å§“å',
- 'Employee deleted!' => '巳刪除è·å“¡',
- 'Employee pays' => '付款給è·å“¡',
- 'Employee saved!' => '巳儲存è·å“¡',
- 'Employees' => 'è·å“¡',
- 'Employer' => '雇主',
- 'Employer pays' => '付款給雇主',
- 'Enddate' => 'çµæŸæ—¥',
- 'Expense' => '費用',
- 'Home Phone' => 'ä½å®…電話',
- 'ID' => '編號',
- 'Include in Report' => '一併顯示',
- 'Login' => '登入',
- 'Manager' => '經ç†',
- 'Maximum' => '最大',
- 'Name' => 'å稱',
- 'Name missing!' => '未指明åå­—',
- 'Notes' => '備註',
- 'Number' => '編號',
- 'Orphaned' => '無主',
- 'Payroll Deduction' => '薪金減除é¡',
- 'Rate' => '稅率',
- 'Rate missing!' => '未指明稅率',
- 'Role' => '任務',
- 'Sales' => '銷售',
- 'Save' => '儲存',
- 'Save as new' => '當新的儲存',
- 'Startdate' => '開始日期',
- 'State/Province' => 'çœ',
- 'Update' => 'æ›´æ–°',
- 'User' => '使用者',
- 'Work Phone' => '工作電話',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- '新增扣除' => 'add_deduction',
- '新增è·å“¡' => 'add_employee',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '儲存' => 'save',
- '當新的儲存' => 'save_as_new',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ic b/sql-ledger/locale/tw_utf/ic
deleted file mode 100644
index 196541f..0000000
--- a/sql-ledger/locale/tw_utf/ic
+++ /dev/null
@@ -1,265 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '會計é¸å–®',
- 'Accrual' => 'ç´¯ç©',
- 'Active' => 'æ´»èº',
- 'Add' => '新增',
- 'Add Assembly' => '新增商å“',
- 'Add Labor/Overhead' => '新增勞工/經常費用',
- 'Add Part' => '新增原料',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Order' => '新增銷貨單',
- 'Add Service' => '新增æœå‹™',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Assemblies' => '商å“',
- 'Assemblies restocked!' => 'å·³é‡æ–°é€²è²¨çš„商å“',
- 'Assembly' => '商å“',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Break' => '休æ¯',
- 'COGS' => '貨銷æˆæœ¬',
- 'Cannot delete item!' => 'ä¸èƒ½åˆªé™¤é …ç›®',
- 'Cannot stock assemblies!' => 'ä¸èƒ½å¸¸å‚™çš„商å“',
- 'Cash' => 'ç¾é‡‘',
- 'Cc' => '抄é€',
- 'Check Inventory' => '檢查存貨清單',
- 'City' => '城市',
- 'Closed' => '已關閉',
- 'Company Name' => 'å…¬å¸å稱',
- 'Components' => '零件',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Cost' => 'æˆæœ¬',
- 'Country' => '國家',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Customer' => '客戶',
- 'Customer Number' => '客戶編號',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Description' => '說明',
- 'Drawing' => '圖畫',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit Assembly' => '編輯商å“',
- 'Edit Labor/Overhead' => '編輯勞工/經常費用',
- 'Edit Part' => '編輯原料',
- 'Edit Service' => '編輯æœå‹™',
- 'Employee' => 'è·å“¡',
- 'Expense' => '費用',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'Image' => 'å½¢åƒ',
- 'In-line' => '行內',
- 'Include in Report' => '一併顯示',
- 'Income' => '收入',
- 'Individual Items' => '個別的項目',
- 'Inventory' => '庫存',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '在åœç”¨æ­¤é …組åˆå“之å‰, 存貨數é‡å¿…需為零!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'åœç”¨æ­¤é …零件之å‰, 存貨數é‡å¿…需為零!',
- 'Invoice' => '發票',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Item deleted!' => '巳刪除項目',
- 'Item not on file!' => '查無此項目',
- 'Items' => 'é …ç›®',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Labor/Overhead' => '勞工/經常費用',
- 'Leadtime' => '總需時',
- 'Line Total' => '總列數',
- 'Link Accounts' => '連çµå¸³æˆ¶',
- 'List Price' => '列出價',
- 'Make' => '製造',
- 'Mar' => '三月',
- 'March' => '三月',
- 'Markup' => '漲價',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '訊æ¯',
- 'Microfiche' => '單片縮影膠片',
- 'Model' => '型號',
- 'Name' => 'å稱',
- 'No.' => 'å¦',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Obsolete' => 'åœç”¨',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'On Hand' => '巳有存é‡',
- 'Open' => 'é–‹å•Ÿ',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Orphaned' => '無主',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Part' => '原料',
- 'Parts' => '原料',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Pricegroup' => '價格組',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Purchase Order' => '採購單',
- 'Purchase Orders' => '採購單',
- 'Qty' => '數é‡',
- 'Quantity exceeds available units to stock!' => '超éŽå¯åº«å­˜çš„數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Quotations' => '報價單',
- 'ROP' => 'å†è¨‚點',
- 'Recd' => '巳收到',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Invoice' => '銷售發票',
- 'Sales Invoices' => '銷售發票',
- 'Sales Order' => '銷貨單',
- 'Sales Orders' => '銷貨單',
- 'Save' => '儲存',
- 'Save as new' => '當新的儲存',
- 'Screen' => '螢幕',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Sell Price' => '售價',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Serial Number' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Services' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Short' => '短',
- 'State/Province' => 'çœ',
- 'Stock' => '庫存',
- 'Stock Assembly' => '盤點',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax' => '稅金',
- 'To' => '至',
- 'Top Level' => '高水準',
- 'Unit' => 'å–®ä½',
- 'Unit of measure' => '度é‡å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Updated' => '巳更新',
- 'Vendor' => '供應商',
- 'Vendor Invoice' => '供應商發票',
- 'Vendor Invoices' => '供應商發票',
- 'Vendor Number' => '供應商號碼',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Warehouse' => '倉庫',
- 'Weight' => 'é‡é‡',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'days' => 'æ—¥',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- '新增商å“' => 'add_assembly',
- '新增勞工/經常費用' => 'add_labor/overhead',
- '新增原料' => 'add_part',
- '新增æœå‹™' => 'add_service',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '編輯商å“' => 'edit_assembly',
- '編輯原料' => 'edit_part',
- '編輯æœå‹™' => 'edit_service',
- '儲存' => 'save',
- '當新的儲存' => 'save_as_new',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/io b/sql-ledger/locale/tw_utf/io
deleted file mode 100644
index fd54373..0000000
--- a/sql-ledger/locale/tw_utf/io
+++ /dev/null
@@ -1,131 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Order' => '新增銷貨單',
- 'Address' => '地å€',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å稱',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Country' => '國家',
- 'Customer Number' => '客戶編號',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delivery Date' => '到期日',
- 'Description' => '說明',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'In-line' => '行內',
- 'Invoice' => '發票',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Item not on file!' => '查無此項目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '訊æ¯',
- 'No.' => 'å¦',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Part' => '原料',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Purchase Order' => '採購單',
- 'Qty' => '數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Recd' => '巳收到',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Order' => '銷貨單',
- 'Screen' => '螢幕',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'State/Province' => 'çœ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'To' => '至',
- 'Unit' => 'å–®ä½',
- 'Vendor Number' => '供應商號碼',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- '繼續' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ir b/sql-ledger/locale/tw_utf/ir
deleted file mode 100644
index b496282..0000000
--- a/sql-ledger/locale/tw_utf/ir
+++ /dev/null
@@ -1,212 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Order' => '新增銷貨單',
- 'Add Vendor Invoice' => '新增供應商發票',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您確定è¦åˆªé™¤ç™¼ç¥¨ç·¨è™Ÿ',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆªé™¤ç™¼ç¥¨',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入發票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥ç™¼ç¥¨',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å稱',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Country' => '國家',
- 'Credit Limit' => '信用é¡åº¦',
- 'Currency' => '幣別',
- 'Customer Number' => '客戶編號',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Due Date' => '到期日',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit Vendor Invoice' => '編輯供應商發票',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'In-line' => '行內',
- 'Internal Notes' => '內部備忘錄',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Invoice deleted!' => '巳刪除發票',
- 'Item not on file!' => '查無此項目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '語言',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Message' => '訊æ¯',
- 'No.' => 'å¦',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案內無此檔案',
- 'Purchase Order' => '採購單',
- 'Qty' => '數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Recd' => '巳收到',
- 'Record in' => '記錄於',
- 'Remaining' => '尚餘',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Order' => '銷貨單',
- 'Screen' => '螢幕',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Source' => '來æº',
- 'State/Province' => 'çœ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'To' => '至',
- 'Total' => '總計',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供應商',
- 'Vendor Number' => '供應商號碼',
- 'Vendor missing!' => '未指明供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'Yes' => '是',
- 'ea' => '個',
- 'posted!' => '巳加入',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- '採購單' => 'purchase_order',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/is b/sql-ledger/locale/tw_utf/is
deleted file mode 100644
index 5bd0c86..0000000
--- a/sql-ledger/locale/tw_utf/is
+++ /dev/null
@@ -1,225 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Invoice' => '新增銷售發票',
- 'Add Sales Order' => '新增銷貨單',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您確定è¦åˆªé™¤ç™¼ç¥¨ç·¨è™Ÿ',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Business' => '業務',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆªé™¤ç™¼ç¥¨',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入發票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥ç™¼ç¥¨',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Company Name' => 'å…¬å¸å稱',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Country' => '國家',
- 'Credit Limit' => '信用é¡åº¦',
- 'Currency' => '幣別',
- 'Customer' => '客戶',
- 'Customer Number' => '客戶編號',
- 'Customer missing!' => '未指明客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Due Date' => '到期日',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit Sales Invoice' => '編輯銷售發票',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'In-line' => '行內',
- 'Internal Notes' => '內部備忘錄',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Invoice deleted!' => '巳刪除發票',
- 'Invoice posted!' => '巳加入發票',
- 'Invoice processed!' => '巳處ç†ç™¼ç¥¨',
- 'Item not on file!' => '查無此項目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Message' => '訊æ¯',
- 'No.' => 'å¦',
- 'Notes' => '備註',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案內無此檔案',
- 'Purchase Order' => '採購單',
- 'Qty' => '數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Recd' => '巳收到',
- 'Record in' => '記錄於',
- 'Remaining' => '尚餘',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Order' => '銷貨單',
- 'Salesperson' => '銷售人員',
- 'Screen' => '螢幕',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Ship via' => '由海é‹',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Shipping Point' => 'æµ·é‹åœ°é»ž',
- 'Source' => '來æº',
- 'State/Province' => 'çœ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'To' => '至',
- 'Total' => '總計',
- 'Trade Discount' => '貿易折扣',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor Number' => '供應商號碼',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'Yes' => '是',
- 'ea' => '個',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '繼續' => 'continue',
- '刪除' => 'delete',
- 'é›»å­éƒµä»¶' => 'e_mail',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- '銷貨單' => 'sales_order',
- 'æµ·é‹è‡³' => 'ship_to',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/login b/sql-ledger/locale/tw_utf/login
deleted file mode 100644
index 6c8112c..0000000
--- a/sql-ledger/locale/tw_utf/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'å…¬å¸',
- 'Continue' => '繼續',
- 'Dataset is newer than version!' => '較新資料集',
- 'Incorrect Dataset version!' => '資料集版本錯誤!',
- 'Incorrect Password!' => '密碼錯誤!',
- 'Login' => '登入',
- 'Name' => 'å稱',
- 'Password' => '密碼',
- 'Upgrading to Version' => 'æ­£å‡ç´šè‡³æ–°ç‰ˆ',
- 'Version' => '版本',
- 'You did not enter a name!' => '你並未éµå…¥å稱!',
- 'done' => '完æˆ',
- 'is not a member!' => '並ä¸æ˜¯æˆå“¡!',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- '登入' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/menu b/sql-ledger/locale/tw_utf/menu
deleted file mode 100644
index cf57bb7..0000000
--- a/sql-ledger/locale/tw_utf/menu
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP' => '應付帳款',
- 'AP Aging' => '應付帳齡分æž',
- 'AP Transaction' => '應付交易',
- 'AR' => '應收帳款',
- 'AR Aging' => '應收帳齡分æž',
- 'AR Transaction' => '應收交易',
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Account' => '新增帳戶',
- 'Add Assembly' => '新增商å“',
- 'Add Business' => '新增業務',
- 'Add Customer' => '新增客戶',
- 'Add Department' => '新增部門',
- 'Add Employee' => '新增è·å“¡',
- 'Add GIFI' => '新增 GIFI',
- 'Add Group' => '新增組',
- 'Add Labor/Overhead' => '新增勞工/經常費用',
- 'Add Language' => '新增語言',
- 'Add Part' => '新增原料',
- 'Add Pricegroup' => '新增價格組',
- 'Add Project' => '新增方案',
- 'Add SIC' => '新增原文',
- 'Add Service' => '新增æœå‹™',
- 'Add Transaction' => '新增交易',
- 'Add Vendor' => '新增供應商',
- 'Add Warehouse' => '新增倉庫',
- 'All Items' => '全部項目',
- 'Assemblies' => '商å“',
- 'Audit Control' => '稽核控制',
- 'Backup' => '備份',
- 'Balance Sheet' => '資產負債表',
- 'Batch Printing' => '整批å°åˆ·',
- 'Bin List' => '箱的明細表',
- 'Cash' => 'ç¾é‡‘',
- 'Chart of Accounts' => '會計科目表',
- 'Check' => '檢查',
- 'Checks' => '檢查',
- 'Components' => '零件',
- 'Customers' => '客戶',
- 'Defaults' => 'é è¨­',
- 'Departments' => '部門',
- 'Description' => '說明',
- 'Employees' => 'è·å“¡',
- 'General Ledger' => '總帳',
- 'Goods & Services' => '貨物åŠæœå‹™',
- 'Groups' => '組',
- 'HR' => '人事管ç†',
- 'HTML Templates' => 'HTML 表單',
- 'History' => 'æ­·å²',
- 'Income Statement' => 'æ益表',
- 'Invoice' => '發票',
- 'LaTeX Templates' => 'LaTex 模版',
- 'Labor/Overhead' => '勞工/經常費用',
- 'Language' => '語言',
- 'List Accounts' => '列出帳號',
- 'List Businesses' => '列出業務',
- 'List Departments' => '列出部門',
- 'List GIFI' => '列出 GIFI',
- 'List Languages' => '列出語言',
- 'List Projects' => '列出方案',
- 'List SIC' => '列出SIC',
- 'List Warehouses' => '列出倉庫',
- 'Logout' => '登出',
- 'Non-taxable' => 'ä¸æ‡‰èª²ç¨…',
- 'Open' => 'é–‹å•Ÿ',
- 'Order Entry' => '下單項目',
- 'Outstanding' => '未付',
- 'POS Invoice' => 'POS發票',
- 'Packing List' => '出貨單',
- 'Packing Lists' => '出貨單',
- 'Parts' => '原料',
- 'Payment' => '付款',
- 'Payments' => '付款',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Preferences' => '個人設定',
- 'Pricegroups' => '價格組',
- 'Print' => '列å°',
- 'Projects' => '方案',
- 'Purchase Order' => '採購單',
- 'Purchase Orders' => '採購單',
- 'Quotation' => '報價單',
- 'Quotations' => '報價單',
- 'Receipt' => '收據',
- 'Receipts' => '收據',
- 'Receive' => '收到',
- 'Reconciliation' => '調和',
- 'Reports' => '報表',
- 'SIC' => '原文',
- 'Sale' => '銷售',
- 'Sales Invoice' => '銷售發票',
- 'Sales Invoices' => '銷售發票',
- 'Sales Order' => '銷貨單',
- 'Sales Orders' => '銷貨單',
- 'Save to File' => '儲存至檔案',
- 'Search' => 'æœå°‹',
- 'Send by E-Mail' => '以電å­éƒµä»¶å¯„é€',
- 'Services' => 'æœå‹™',
- 'Ship' => '船',
- 'Shipping' => 'æµ·é‹',
- 'Statement' => '會計帳',
- 'Stock Assembly' => '盤點',
- 'Stylesheet' => '樣å¼è¡¨',
- 'System' => '系統',
- 'Tax collected' => '巳收稅金',
- 'Tax paid' => '巳付稅金',
- 'Text Templates' => '文字模版',
- 'Transactions' => '交易',
- 'Transfer' => '轉移',
- 'Translations' => '翻譯',
- 'Trial Balance' => '試算表',
- 'Type of Business' => '業務種類',
- 'Vendor Invoice' => '供應商發票',
- 'Vendors' => '供應商',
- 'Version' => '版本',
- 'Warehouses' => '倉庫',
- 'Work Order' => '工作單',
- 'Yearend' => 'å¹´çµ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/oe b/sql-ledger/locale/tw_utf/oe
deleted file mode 100644
index df9e070..0000000
--- a/sql-ledger/locale/tw_utf/oe
+++ /dev/null
@@ -1,293 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Exchange Rate' => '新增外匯率',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Invoice' => '新增銷售發票',
- 'Add Sales Order' => '新增銷貨單',
- 'Add Vendor Invoice' => '新增供應商發票',
- 'Address' => '地å€',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Order Number' => '您是å¦ç¢ºå®šè¦åˆªé™¤è¨‚單編號',
- 'Are you sure you want to delete Quotation Number' => '您是å¦ç¢ºå®šè¦åˆªé™¤å ±åƒ¹å–®ç·¨è™Ÿ',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Business' => '業務',
- 'Cannot delete order!' => 'ä¸èƒ½åˆªé™¤å®šå–®',
- 'Cannot delete quotation!' => 'ä¸èƒ½åˆªé™¤å ±åƒ¹å–®',
- 'Cannot save order!' => 'ä¸èƒ½å„²å­˜å®šå–®',
- 'Cannot save quotation!' => 'ä¸èƒ½å„²å­˜å ±åƒ¹å–®',
- 'Cc' => '抄é€',
- 'City' => '城市',
- 'Closed' => '已關閉',
- 'Company Name' => 'å…¬å¸å稱',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Could not save!' => 'ä¸èƒ½å„²å­˜',
- 'Could not transfer Inventory!' => '存貨清單ä¸èƒ½è½‰ç§»',
- 'Country' => '國家',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Customer' => '客戶',
- 'Customer Number' => '客戶編號',
- 'Customer missing!' => '未指明客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Date Received' => '收款日期',
- 'Date received missing!' => '未指明收款日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Done' => '巳完æˆ',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit Purchase Order' => '編輯採購單',
- 'Edit Quotation' => '編輯報價單',
- 'Edit Request for Quotation' => '編輯報價單è¦æ±‚',
- 'Edit Sales Order' => '編輯銷貨單',
- 'Employee' => 'è·å“¡',
- 'Exchange Rate' => '匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'ID' => '編號',
- 'In-line' => '行內',
- 'Include in Report' => '一併顯示',
- 'Internal Notes' => '內部備忘錄',
- 'Inventory saved!' => '巳儲存存貨',
- 'Inventory transferred!' => '轉移的存貨',
- 'Invoice' => '發票',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Item not on file!' => '查無此項目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Manager' => '經ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Message' => '訊æ¯',
- 'No.' => 'å¦',
- 'Notes' => '備註',
- 'Nothing entered!' => '沒有巳輸入',
- 'Nothing to transfer!' => '沒有å¯è½‰ç§»çš„é …ç›®',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'é–‹å•Ÿ',
- 'Order' => '訂單',
- 'Order Date' => '下單日期',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Order deleted!' => '巳刪除訂單',
- 'Order processed!' => '巳處ç†è¨‚å–®',
- 'Order saved!' => '巳儲存訂單',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Part' => '原料',
- 'Part Number' => '原料編號',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project not on file!' => '方案內無此檔案',
- 'Purchase Order' => '採購單',
- 'Purchase Orders' => '採購單',
- 'Qty' => '數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date' => '報價單日期',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number' => '報價單號碼',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Quotation deleted!' => '巳刪除報價單',
- 'Quotations' => '報價單',
- 'RFQ Number' => 'RFD號碼',
- 'Recd' => '巳收到',
- 'Receive Merchandise' => '收到貨物',
- 'Remaining' => '尚餘',
- 'Request for Quotation' => 'è¦æ±‚報價單',
- 'Request for Quotations' => 'è¦æ±‚報價單',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Invoice' => '銷售發票',
- 'Sales Order' => '銷貨單',
- 'Sales Orders' => '銷貨單',
- 'Salesperson' => '銷售人員',
- 'Save' => '儲存',
- 'Save as new' => '當新的儲存',
- 'Screen' => '螢幕',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship Merchandise' => 'æµ·é‹è²¨ç‰©',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Ship via' => '由海é‹',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Shipping Date' => 'æµ·é‹æ—¥æœŸ',
- 'Shipping Date missing!' => '未指明海é‹æ—¥æœŸ',
- 'Shipping Point' => 'æµ·é‹åœ°é»ž',
- 'State/Province' => 'çœ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Tax' => '稅金',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'Terms' => '票期淨計',
- 'To' => '至',
- 'Total' => '總計',
- 'Trade Discount' => '貿易折扣',
- 'Transfer' => '轉移',
- 'Transfer Inventory' => '轉移存貨',
- 'Transfer to' => '存貨至',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Valid until' => '有效至',
- 'Vendor' => '供應商',
- 'Vendor Invoice' => '供應商發票',
- 'Vendor Number' => '供應商號碼',
- 'Vendor missing!' => '未指明供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'Warehouse' => '倉庫',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'Yes' => '是',
- 'days' => 'æ—¥',
- 'ea' => '個',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '巳完æˆ' => 'done',
- 'é›»å­éƒµä»¶' => 'e_mail',
- '列å°' => 'print',
- 'print_and_save' => 'print_and_save',
- '採購單' => 'purchase_order',
- '報價單' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- '銷售發票' => 'sales_invoice',
- '銷貨單' => 'sales_order',
- '儲存' => 'save',
- '當新的儲存' => 'save_as_new',
- 'æµ·é‹è‡³' => 'ship_to',
- '轉移' => 'transfer',
- 'æ›´æ–°' => 'update',
- '供應商發票' => 'vendor_invoice',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/pe b/sql-ledger/locale/tw_utf/pe
deleted file mode 100644
index 3889239..0000000
--- a/sql-ledger/locale/tw_utf/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => '會計é¸å–®',
- 'Add Group' => '新增組',
- 'Add Pricegroup' => '新增價格組',
- 'Add Project' => '新增方案',
- 'All' => '全部',
- 'Continue' => '繼續',
- 'Delete' => '刪除',
- 'Description' => '說明',
- 'Description Translations' => '翻譯æè¿°',
- 'Edit Description Translations' => '編輯翻譯æè¿°',
- 'Edit Group' => '編輯組',
- 'Edit Pricegroup' => '編輯價格組',
- 'Edit Project' => '編輯方案',
- 'Group' => '組',
- 'Group Translations' => '組的翻譯',
- 'Group deleted!' => '巳刪除的組',
- 'Group missing!' => '未指明的組',
- 'Group saved!' => '巳儲存的組',
- 'Groups' => '組',
- 'Language' => '語言',
- 'Languages not defined!' => 'ä¸èƒ½è¾¨èªèªžè¨€',
- 'Number' => '編號',
- 'Orphaned' => '無主',
- 'Pricegroup' => '價格組',
- 'Pricegroup deleted!' => '巳刪除價格組',
- 'Pricegroup missing!' => '未指明價格組',
- 'Pricegroup saved!' => '巳儲存價格組',
- 'Pricegroups' => '價格組',
- 'Project' => '方案',
- 'Project Description Translations' => '方案æ述的翻譯',
- 'Project Number' => '方案號碼',
- 'Project Number missing!' => '未指明方案號碼',
- 'Project deleted!' => '巳刪除方案',
- 'Project saved!' => '巳儲存方案',
- 'Projects' => '方案',
- 'Save' => '儲存',
- 'Translation' => '翻譯',
- 'Translation deleted!' => '巳刪除翻譯',
- 'Translations saved!' => '巳儲存翻譯',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- '新增組' => 'add_group',
- '新增價格組' => 'add_pricegroup',
- '新增方案' => 'add_project',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '儲存' => 'save',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/pos b/sql-ledger/locale/tw_utf/pos
deleted file mode 100644
index 6607fc6..0000000
--- a/sql-ledger/locale/tw_utf/pos
+++ /dev/null
@@ -1,64 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Add POS Invoice' => '新增POS發票',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Change' => '更改',
- 'Continue' => '繼續',
- 'Credit Limit' => '信用é¡åº¦',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Customer' => '客戶',
- 'Customer missing!' => '未指明客戶',
- 'Delete' => '刪除',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Edit POS Invoice' => '編輯POS',
- 'Exchange Rate' => '匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Extended' => '巳擴大',
- 'From' => '從',
- 'Language' => '語言',
- 'Memo' => '備忘錄',
- 'Number' => '編號',
- 'Open' => 'é–‹å•Ÿ',
- 'Paid' => '已付',
- 'Post' => '加入',
- 'Posted!' => '巳加入',
- 'Price' => '價格',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Qty' => '數é‡',
- 'Receipts' => '收據',
- 'Record in' => '記錄於',
- 'Remaining' => '尚餘',
- 'Salesperson' => '銷售人員',
- 'Screen' => '螢幕',
- 'Source' => '來æº',
- 'Subtotal' => 'å°è¨ˆ',
- 'To' => '至',
- 'Total' => '總計',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- '繼續' => 'continue',
- '刪除' => 'delete',
- '加入' => 'post',
- '列å°' => 'print',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/ps b/sql-ledger/locale/tw_utf/ps
deleted file mode 100644
index 57ceff6..0000000
--- a/sql-ledger/locale/tw_utf/ps
+++ /dev/null
@@ -1,326 +0,0 @@
-$self{texts} = {
- 'AP Aging' => '應付帳齡分æž',
- 'AR Aging' => '應收帳齡分æž',
- 'AR Outstanding' => '應收未收',
- 'AR Transaction' => '應收交易',
- 'AR Transactions' => '應收交易',
- 'Account' => '帳戶',
- 'Account Number' => '帳戶編號',
- 'Accounting Menu' => '會計é¸å–®',
- 'Accounts' => '帳戶',
- 'Accrual' => 'ç´¯ç©',
- 'Add POS Invoice' => '新增POS發票',
- 'Add Purchase Order' => '新增採購單',
- 'Add Quotation' => '新增報價單',
- 'Add Request for Quotation' => '新增報價單è¦æ±‚',
- 'Add Sales Invoice' => '新增銷售發票',
- 'Add Sales Order' => '新增銷貨單',
- 'Address' => '地å€',
- 'All Accounts' => '全部帳戶',
- 'Amount' => '總計',
- 'Amount Due' => '應得的總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Are you sure you want to delete Invoice Number' => '您確定è¦åˆªé™¤ç™¼ç¥¨ç·¨è™Ÿ',
- 'Are you sure you want to delete Transaction' => '您是å¦ç¢ºå®šè¦åˆªé™¤äº¤æ˜“',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => '餘é¡',
- 'Balance Sheet' => '資產負債表',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Billing Address' => '帳單地å€',
- 'Bin' => 'ç®±',
- 'Bin List' => '箱的明細表',
- 'Business' => '業務',
- 'Cannot delete invoice!' => 'ä¸èƒ½åˆªé™¤ç™¼ç¥¨',
- 'Cannot delete transaction!' => 'ä¸èƒ½åˆªé™¤äº¤æ˜“',
- 'Cannot post invoice for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入發票',
- 'Cannot post invoice!' => 'ä¸èƒ½åŠ å…¥ç™¼ç¥¨',
- 'Cannot post payment for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入款項',
- 'Cannot post transaction for a closed period!' => 'ä¸èƒ½åœ¨å·²é—œé–‰çš„時段內加入交易!',
- 'Cannot post transaction!' => 'ä¸èƒ½åŠ å…¥äº¤æ˜“',
- 'Cash' => 'ç¾é‡‘',
- 'Cc' => '抄é€',
- 'Change' => '更改',
- 'Check' => '檢查',
- 'City' => '城市',
- 'Closed' => '已關閉',
- 'Company Name' => 'å…¬å¸å稱',
- 'Compare to' => 'å°ç…§',
- 'Confirm!' => '入帳æˆåŠŸ!',
- 'Contact' => '連絡人',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Country' => '國家',
- 'Credit' => '貸方',
- 'Credit Limit' => '信用é¡åº¦',
- 'Curr' => 'ç›®å‰',
- 'Currency' => '幣別',
- 'Current' => 'ç¾æœ‰',
- 'Current Earnings' => 'ç¾æœ‰æ”¶ç›Š',
- 'Customer' => '客戶',
- 'Customer Number' => '客戶編號',
- 'Customer missing!' => '未指明客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Date Paid' => '付款日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•¸çš„ä½ç½®',
- 'Delete' => '刪除',
- 'Delivery Date' => '到期日',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Detail' => '詳情',
- 'Due Date' => '到期日',
- 'Due Date missing!' => '未指明到期日!',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail Statement to' => '電郵會計賬到',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'E-mailed' => '巳電郵',
- 'Edit POS Invoice' => '編輯POS',
- 'Edit Sales Invoice' => '編輯銷售發票',
- 'Exch' => '匯率',
- 'Exchange Rate' => '匯率',
- 'Exchange rate for payment missing!' => '未指明付款的匯率',
- 'Exchange rate missing!' => '未指明匯率',
- 'Extended' => '巳擴大',
- 'Fax' => '傳真',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Group' => '組',
- 'Group Items' => '組的項目',
- 'Heading' => '標題, ',
- 'ID' => '編號',
- 'In-line' => '行內',
- 'Include Exchange Rate Difference' => '包å«å¤–匯差è·',
- 'Include in Report' => '一併顯示',
- 'Income Statement' => 'æ益表',
- 'Internal Notes' => '內部備忘錄',
- 'Invoice' => '發票',
- 'Invoice Date' => '發票日期',
- 'Invoice Date missing!' => '未指明發票日期!',
- 'Invoice Number' => '發票編號',
- 'Invoice Number missing!' => '未指明發票編號!',
- 'Invoice deleted!' => '巳刪除發票',
- 'Invoice posted!' => '巳加入發票',
- 'Invoice processed!' => '巳處ç†ç™¼ç¥¨',
- 'Item not on file!' => '查無此項目',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '語言',
- 'Manager' => '經ç†',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Message' => '訊æ¯',
- 'Method' => '方法',
- 'N/A' => 'ä¸é©ç”¨',
- 'No.' => 'å¦',
- 'Non-taxable Purchases' => 'ä¸æ‡‰èª²ç¨…的採購',
- 'Non-taxable Sales' => 'ä¸æ‡‰èª²ç¨…的銷售',
- 'Notes' => '備註',
- 'Nothing selected!' => '沒有巳é¸æ“‡',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Number missing in Row' => '此列中缺少數值',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Open' => 'é–‹å•Ÿ',
- 'Order' => '訂單',
- 'Order Date missing!' => '未指明下單日期!',
- 'Order Number' => '訂單編號',
- 'Order Number missing!' => '未指明訂單編號!',
- 'Packing List' => '出貨單',
- 'Packing List Date missing!' => '未指明包è£æ¸…單日期!',
- 'Packing List Number missing!' => '未指明包è£æ¸…單編號!',
- 'Paid' => '已付',
- 'Part' => '原料',
- 'Payment date missing!' => '未指明付款日期!',
- 'Payments' => '付款',
- 'Phone' => '電話號碼',
- 'Pick List' => 'é¸æ“‡å–®',
- 'Post' => '加入',
- 'Post as new' => '當新的加入',
- 'Posted!' => '巳加入',
- 'Postscript' => '附言',
- 'Price' => '價格',
- 'Print' => '列å°',
- 'Printed' => '巳列å°',
- 'Project' => '方案',
- 'Project Number' => '方案號碼',
- 'Project Transactions' => '方案交易',
- 'Project not on file!' => '方案內無此檔案',
- 'Purchase Order' => '採購單',
- 'Qty' => '數é‡',
- 'Queue' => '長隊',
- 'Queued' => '巳排隊',
- 'Quotation' => '報價單',
- 'Quotation Date missing!' => '未指明報價單日期',
- 'Quotation Number missing!' => '未指明報價單號碼',
- 'Recd' => '巳收到',
- 'Receipt' => '收據',
- 'Receipts' => '收據',
- 'Record in' => '記錄於',
- 'Remaining' => '尚餘',
- 'Report for' => '報表來æº',
- 'Required by' => '需è¦è€…',
- 'SKU' => '被指定的數é‡',
- 'Sales Order' => '銷貨單',
- 'Salesperson' => '銷售人員',
- 'Screen' => '螢幕',
- 'Select all' => 'å…¨é¸',
- 'Select from one of the items below' => '於下列項目中é¸æ“‡ä¸€é …',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Serial No.' => 'åºè™Ÿ',
- 'Service' => 'æœå‹™',
- 'Ship' => '船',
- 'Ship to' => 'æµ·é‹è‡³',
- 'Ship via' => '由海é‹',
- 'Shipping Address' => 'æµ·é‹åœ°å€',
- 'Shipping Point' => 'æµ·é‹åœ°é»ž',
- 'Source' => '來æº',
- 'Standard' => '標準',
- 'State/Province' => 'çœ',
- 'Statement' => '會計帳',
- 'Statement sent to' => 'é€æœƒè¨ˆå¸³è‡³',
- 'Statements sent to printer!' => 'é€æœƒè¨ˆå¸³è‡³åˆ—å°æ©Ÿ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Summary' => '摘è¦',
- 'Tax' => '稅金',
- 'Tax Included' => 'å·³å«ç¨…金',
- 'Tax collected' => '巳收稅金',
- 'Tax paid' => '巳付稅金',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '總計',
- 'Trade Discount' => '貿易折扣',
- 'Transaction deleted!' => '巳刪除交易',
- 'Transaction posted!' => '巳加入交易',
- 'Trial Balance' => '試算表',
- 'Unit' => 'å–®ä½',
- 'Update' => 'æ›´æ–°',
- 'Vendor' => '供應商',
- 'Vendor Number' => '供應商號碼',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'What type of item is this?' => '此項目的型態?',
- 'Work Order' => '工作單',
- 'Yes' => '是',
- 'as at' => '截至',
- 'ea' => '個',
- 'for Period' => '期間',
- 'sent' => 'å·³é€å‡º',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- '應收交易' => 'ar_transaction',
- '繼續' => 'continue',
- '刪除' => 'delete',
- 'é›»å­éƒµä»¶' => 'e_mail',
- '加入' => 'post',
- '當新的加入' => 'post_as_new',
- '列å°' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- '銷貨單' => 'sales_order',
- 'å…¨é¸' => 'select_all',
- 'æµ·é‹è‡³' => 'ship_to',
- 'æ›´æ–°' => 'update',
- '是' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/pw b/sql-ledger/locale/tw_utf/pw
deleted file mode 100644
index e6426d4..0000000
--- a/sql-ledger/locale/tw_utf/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => '繼續',
- 'Password' => '密碼',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- '繼續' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/rc b/sql-ledger/locale/tw_utf/rc
deleted file mode 100644
index 22ef1e7..0000000
--- a/sql-ledger/locale/tw_utf/rc
+++ /dev/null
@@ -1,74 +0,0 @@
-$self{texts} = {
- 'Account' => '帳戶',
- 'Accounting Menu' => '會計é¸å–®',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => '餘é¡',
- 'Beginning Balance' => '起始餘é¡',
- 'Cleared' => '已清除',
- 'Continue' => '繼續',
- 'Current' => 'ç¾æœ‰',
- 'Date' => '日期',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decrease' => '減少',
- 'Deposit' => '存款',
- 'Description' => '說明',
- 'Detail' => '詳情',
- 'Difference' => '差異',
- 'Done' => '巳完æˆ',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Include Exchange Rate Difference' => '包å«å¤–匯差è·',
- 'Increase' => '增加',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Out of balance!' => 'ä¸å”調',
- 'Outstanding' => '未付',
- 'Payment' => '付款',
- 'Reconciliation' => '調和',
- 'Reconciliation Report' => '調和報告',
- 'Select all' => 'å…¨é¸',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => '來æº',
- 'Statement Balance' => '會計帳餘é¡',
- 'Summary' => '摘è¦',
- 'To' => '至',
- 'Update' => 'æ›´æ–°',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- '繼續' => 'continue',
- '巳完æˆ' => 'done',
- 'å…¨é¸' => 'select_all',
- 'æ›´æ–°' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/tw_utf/rp b/sql-ledger/locale/tw_utf/rp
deleted file mode 100644
index 7c61ba7..0000000
--- a/sql-ledger/locale/tw_utf/rp
+++ /dev/null
@@ -1,159 +0,0 @@
-$self{texts} = {
- 'AP Aging' => '應付帳齡分æž',
- 'AR Aging' => '應收帳齡分æž',
- 'Account' => '帳戶',
- 'Account Number' => '帳戶編號',
- 'Accounting Menu' => '會計é¸å–®',
- 'Accounts' => '帳戶',
- 'Accrual' => 'ç´¯ç©',
- 'Address' => '地å€',
- 'All Accounts' => '全部帳戶',
- 'Amount' => '總計',
- 'Apr' => '四月',
- 'April' => '四月',
- 'Attachment' => '附檔',
- 'Aug' => '八月',
- 'August' => '八月',
- 'Balance' => '餘é¡',
- 'Balance Sheet' => '資產負債表',
- 'Bcc' => 'ä¸é¡¯ç¤ºæŠ„é€',
- 'Cash' => 'ç¾é‡‘',
- 'Cc' => '抄é€',
- 'Compare to' => 'å°ç…§',
- 'Continue' => '繼續',
- 'Copies' => '副本',
- 'Credit' => '貸方',
- 'Curr' => 'ç›®å‰',
- 'Current' => 'ç¾æœ‰',
- 'Current Earnings' => 'ç¾æœ‰æ”¶ç›Š',
- 'Customer' => '客戶',
- 'Customer not on file!' => '客戶未存檔',
- 'Date' => '日期',
- 'Debit' => '借方',
- 'Dec' => 'å二月',
- 'December' => 'å二月',
- 'Decimalplaces' => 'å°æ•¸çš„ä½ç½®',
- 'Department' => '部門',
- 'Description' => '說明',
- 'Detail' => '詳情',
- 'Due Date' => '到期日',
- 'E-mail' => 'é›»å­éƒµä»¶',
- 'E-mail Statement to' => '電郵會計賬到',
- 'E-mail address missing!' => '未指明電å­éƒµä»¶ä½å€!',
- 'Feb' => '二月',
- 'February' => '二月',
- 'From' => '從',
- 'Heading' => '標題, ',
- 'ID' => '編號',
- 'In-line' => '行內',
- 'Include Exchange Rate Difference' => '包å«å¤–匯差è·',
- 'Include in Report' => '一併顯示',
- 'Income Statement' => 'æ益表',
- 'Invoice' => '發票',
- 'Jan' => '一月',
- 'January' => '一月',
- 'Jul' => '七月',
- 'July' => '七月',
- 'Jun' => '六月',
- 'June' => '六月',
- 'Language' => '語言',
- 'Mar' => '三月',
- 'March' => '三月',
- 'May' => '五月',
- 'May ' => '五月',
- 'Memo' => '備忘錄',
- 'Message' => '訊æ¯',
- 'Method' => '方法',
- 'N/A' => 'ä¸é©ç”¨',
- 'Non-taxable Purchases' => 'ä¸æ‡‰èª²ç¨…的採購',
- 'Non-taxable Sales' => 'ä¸æ‡‰èª²ç¨…的銷售',
- 'Nothing selected!' => '沒有巳é¸æ“‡',
- 'Nov' => 'å一月',
- 'November' => 'å一月',
- 'Number' => '編號',
- 'Oct' => 'å月',
- 'October' => 'å月',
- 'Order' => '訂單',
- 'Payments' => '付款',
- 'Postscript' => '附言',
- 'Print' => '列å°',
- 'Project' => '方案',
- 'Project Number' => '方案號碼',
- 'Project Transactions' => '方案交易',
- 'Project not on file!' => '方案內無此檔案',
- 'Receipts' => '收據',
- 'Report for' => '報表來æº',
- 'Salesperson' => '銷售人員',
- 'Screen' => '螢幕',
- 'Select all' => 'å…¨é¸',
- 'Select from one of the names below' => '於下列姓å中é¸æ“‡ä¸€å€‹',
- 'Select from one of the projects below' => '於下列方案中é¸æ“‡ä¸€å€‹',
- 'Select postscript or PDF!' => '於附言或PDF中é¸ä¸€',
- 'Sep' => 'ä¹æœˆ',
- 'September' => 'ä¹æœˆ',
- 'Source' => '來æº',
- 'Standard' => '標準',
- 'Statement' => '會計帳',
- 'Statement sent to' => 'é€æœƒè¨ˆå¸³è‡³',
- 'Statements sent to printer!' => 'é€æœƒè¨ˆå¸³è‡³åˆ—å°æ©Ÿ',
- 'Subject' => '標題',
- 'Subtotal' => 'å°è¨ˆ',
- 'Summary' => '摘è¦',
- 'Tax' => '稅金',
- 'Tax collected' => '巳收稅金',
- 'Tax paid' => '巳付稅金',
- 'Till' => '直到',
- 'To' => '至',
- 'Total' => '總計',
- 'Trial Balance' => '試算表',
- 'Vendor' => '供應商',
- 'Vendor not on file!' => '檔案沒有此供應商',
- 'as at' => '截至',
- 'for Period' => '期間',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- '繼續' => 'continue',
- 'é›»å­éƒµä»¶' => 'e_mail',
- '列å°' => 'print',
- 'å…¨é¸' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/COPYING b/sql-ledger/locale/ua/COPYING
deleted file mode 100644
index 001a4f8..0000000
--- a/sql-ledger/locale/ua/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (c) 2003
-#
-# Ukrainian texts:
-#
-# Author: Ivan Petrouchtchak <impe@telus.net>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/ua/LANGUAGE b/sql-ledger/locale/ua/LANGUAGE
deleted file mode 100644
index 368ad3b..0000000
--- a/sql-ledger/locale/ua/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Ukrainian
diff --git a/sql-ledger/locale/ua/admin b/sql-ledger/locale/ua/admin
deleted file mode 100644
index b439ff6..0000000
--- a/sql-ledger/locale/ua/admin
+++ /dev/null
@@ -1,137 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'ëÏÎÔÒÏÌØ äÏÓÔÕÐÕ',
- 'Accounting' => 'ïÂ̦Ë',
- 'Add User' => 'îÏ×ÉÊ ËÏÒÉÓÔÕ×ÁÞ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Administration' => 'áÄͦΦÓÔÒÕ×ÁÎÎÑ',
- 'Administrator' => 'áÄͦΦÓÔÒÁÔÏÒ',
- 'All Datasets up to date!' => 'âÁÚÉ äÁÎÉÈ ÎÅ ÐÏÔÒÅÂÕÀÔØ ÐÏÎÏ×ÌÅÎÎÑ!',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Change Admin Password' => 'úͦÎÉÔÉ ÐÁÒÏÌØ áÄͦΦÓÔÒÁÔÏÒÁ',
- 'Change Password' => 'úͦÎÉÔÉ ÐÁÒÏÌØ',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Click on login name to edit!' => 'îÁÔÉÓΦÔØ ÎÁ ÎÁÚ×Õ ËÏÒÉÓÔÕ×ÁÞÁ, ÝÏ ÚÒÏÂÉÔÉ ÚͦÎÉ!',
- 'Company' => 'ð¦ÄÐÒɤÍÓÔ×Ï',
- 'Connect to' => 'ð¦ÄËÌÀÞÉÔÉÓØ ÄÏ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Create Chart of Accounts' => 'óÔ×ÏÒÉÔÉ ðÌÁÎ òÁÈÕÎ˦×',
- 'Create Dataset' => 'óÔ×ÏÒÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'DBI not installed!' => 'îÅ ×ÓÔÁÎÏ×ÌÅÎÉÊ ÄÒÁÊ×ÅÒ DBI!',
- 'Database' => 'âÁÚÁ äÁÎÉÈ',
- 'Database Administration' => 'áÄͦΦÓÔÒÕ×ÁÎÎÑ ÂÁÚÉ ÄÁÎÉÈ',
- 'Database Driver not checked!' => 'îÅ ÚÁÚÎÁÞÅÎÉÊ ÄÒÁÊ×ÅÒ âÁÚÉ äÁÎÉÈ (Pg)!',
- 'Database User missing!' => 'îÅ ×ËÁÚÁÎÉÊ ëÏÒÉÓÔÕ×ÁÞ âÁÚÉ äÁÎÉÈ!',
- 'Dataset' => 'âÁÚÁ äÁÎÉÈ',
- 'Dataset missing!' => 'îÅ ×ËÁÚÁÎÁ âÁÚÁ äÁÎÉÈ!',
- 'Dataset updated!' => 'âÁÚÁ äÁÎÉÈ ÐÏÎÏ×ÌÅÎÁ!',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÉ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delete Dataset' => '÷ÉÄÁÌÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'Directory' => 'ëÁÔÁÌÏÇ',
- 'Driver' => 'äÒÁÊ×ÅÒ',
- 'Dropdown Limit' => 'ïÂÍÅÖÅÎÎÑ ÌÉÓÔÏ×ÏÇÏ ÍÅÎÀ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'Edit User' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÏÒÉÓÔÕ×ÁÞÁ',
- 'Existing Datasets' => '¶ÓÎÕÀÞ¦ âÁÚÉ äÁÎÉÈ',
- 'Fax' => 'æÁÈ',
- 'Host' => 'íÁÛÉÎÁ/Host',
- 'Hostname missing!' => 'îÅ ×ËÁÚÁÎÁ ÎÁÚ×Á ÍÁÛÉÎÉ!',
- 'Language' => 'íÏ×Á',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'ñËÝÏ ×É ÎÅ ÂÁÖÁ¤ÔÅ ×ÓÔÁÎÏ×ÉÔÉ ×¦ÄÄÁÌÅÎÉÊ Ú×ÑÚÏË, ÎÅ ÚÁÐÏ×ÎÀÊÔÅ ÐÏÌÑ ÍÁÛÉÎÉ ¦ ÐÏÒÔÕ.',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'ðÏÞÁÔÏË óÅÁÎÓÕ',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'ë¦ÎÅÃØ óÅÁÎÓÕ',
- 'Multibyte Encoding' => 'íÕÌØÔÉÂÉÔÎÅ ëÏÄÕ×ÁÎÎÑ',
- 'Name' => 'îÁÚ×Á',
- 'New Templates' => 'îÏצ ûÁÂÌÏÎÉ',
- 'No Database Drivers available!' => 'îÅÄÏÓÔÕÐÎÉÊ ÄÒÁÊ×ÅÒ âÁÚÉ äÁÎÉÈ!',
- 'No Dataset selected!' => 'îÅ ÐÏÚÎÁÞÅÎÏ ×ÉÂÒÁÎÕ âÁÚÕ äÁÎÉÈ!',
- 'Nothing to delete!' => 'îÅÍÁ ÝÏ ×ÉÄÁÌÉÔÉ!',
- 'Number Format' => 'æÏÒÍÁÔ þÉÓÌÁ',
- 'Oracle Database Administration' => 'áÄͦΦÓÔÒÁÃ¦Ñ âÁÚÉ äÁÎÉÈ Oracle',
- 'Password' => 'ðÁÒÏÌØ',
- 'Password changed!' => 'ðÁÒÏÌØ ÚͦÎÅÎÏ!',
- 'Pg Database Administration' => 'áÄͦΦÓÔÒÁÃ¦Ñ âÁÚÉ äÁÎÉÈ Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'ôÅÌ.',
- 'Port' => 'ðÏÒÔ',
- 'Port missing!' => 'ðÏÒÔ ÎÅ ×ËÁÚÁÎÏ!',
- 'Printer' => 'ðÒÉÎÔÅÒ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Setup Templates' => 'îÁÌÁÛÔÕ×ÁÔÉ ûÁÂÌÏÎÉ',
- 'Signature' => 'ð¦ÄÐÉÓ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÎÎÑ',
- 'Templates' => 'ûÁÂÌÏÎÉ',
- 'The following Datasets are not in use and can be deleted' => 'îÁÓÔÕÐΦ âÁÚÉ äÁÎÉÈ ÎÅ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ¦ ÍÏÖÕÔØ ÂÕÔÉ ×ÉÄÁÌÅΦ',
- 'The following Datasets need to be updated' => 'îÁÓÔÕÐΦ âÁÚÉ äÁÎÉÈ ÐÏ×ÉÎΦ ÂÕÔÉ ÐÏÎÏ×ÌÅΦ',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'ðÏÐÅÒÅÄÎÑ ÐÅÒÅצÒËÁ ¦ÓÎÕÀÞÉÈ ÄÖÅÒÅÌ. ðÏËÉ ÝÏ Î¦ÞÏÇÏ ÎÅ ÂÕÄÅ ÓÔ×ÏÒÅÎÏ ÁÂÏ ×ÉÄÁÌÅÎÏ!',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'ýÏ ÄÏÄÁÔÉ ËÏÒÉÓÔÕ×ÁÞÁ ÄÏ ÇÒÕÐÉ, ÔÒÅÂÁ ÐÏͦÎÑÔÉ ¦ÍÑ, login/××ÏÄÎÅ ¦ÍÑ ¦ ÚÂÅÒÅÇÔÉ. îÏ×ÉÊ ËÏÒÉÓÔÕ×ÁÞÁ ¦Ú ÏÄÎÁËÏ×ÉÍÉ ÐÁÒÁÍÅÔÒÁÍÉ ÂÕÄÅ ÚÂÅÒÅÖÅÎÏ Ð¦Ä ÎÏ×ÉÍ login/××ÏÄÎÉÍ ¦ÍÑÍ.',
- 'Unlock System' => 'Unlock System',
- 'Update Dataset' => 'ðÏÎÏ×ÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'Use Templates' => '÷ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ûÁÂÌÏÎÉ',
- 'User' => 'ëÏÒÉÓÔÕ×ÁÞ',
- 'User deleted!' => 'ëÏÒÉÓÔÕ×ÁÞ ÷ÉÄÁÌÅÎÉÊ',
- 'User saved!' => 'ëÏÒÉÓÔÕ×ÁÞ ÚÂÅÒÅÖÅÎÉÊ',
- 'Version' => '÷ÅÒÓ¦Ñ',
- 'You must enter a host and port for local and remote connections!' => 'íÕÓÉÔÅ ××ÅÓÔÉ ÎÁÚ×Õ ÍÁÛÉÎÉ ¦ ÐÏÒÔÁ ÄÌÑ Í¦ÓÃÅ×ÏÇÏ ¦ צÄÄÁÌÅÎÏÇÏ Ú×ÑÚËÕ!',
- 'does not exist' => 'ÎÅ ¦ÓÎÕ¤',
- 'is already a member!' => '×ÖÅ ¤ ÞÌÅÎÏÍ',
- 'localhost' => 'localhost',
- 'successfully created!' => 'ÕÓЦÛÎÏ ÓÔ×ÏÒÅÎÏ',
- 'successfully deleted!' => 'ÕÓЦÛÎÏ ×ÉÄÁÌÅÎÏ',
- 'website' => '×ÅÂ-ÓÔÏÒ¦ÎËÁ',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'îÏ×ÉÊ_ËÏÒÉÓÔÕ×ÁÞ' => 'add_user',
- 'úͦÎÉÔÉ_ÐÁÒÏÌØ_áÄͦΦÓÔÒÁÔÏÒÁ' => 'change_admin_password',
- 'úͦÎÉÔÉ_ÐÁÒÏÌØ' => 'change_password',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- 'óÔ×ÏÒÉÔÉ_âÁÚÕ_äÁÎÉÈ' => 'create_dataset',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷ÉÄÁÌÉÔÉ_âÁÚÕ_äÁÎÉÈ' => 'delete_dataset',
- 'lock_system' => 'lock_system',
- 'ðÏÞÁÔÏË_óÅÁÎÓÕ' => 'login',
- 'ë¦ÎÅÃØ_óÅÁÎÓÕ' => 'logout',
- 'áÄͦΦÓÔÒÁæÑ_âÁÚÉ_äÁÎÉÈ_oracle' => 'oracle_database_administration',
- 'áÄͦΦÓÔÒÁæÑ_âÁÚÉ_äÁÎÉÈ_pg' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'unlock_system' => 'unlock_system',
- 'ðÏÎÏ×ÉÔÉ_âÁÚÕ_äÁÎÉÈ' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/all b/sql-ledger/locale/ua/all
deleted file mode 100644
index 2fe1ce4..0000000
--- a/sql-ledger/locale/ua/all
+++ /dev/null
@@ -1,766 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => '',
- 'AP' => '÷ÉÔÒÁÔÉ',
- 'AP Aging' => 'AP Aging (×ÉÔÒÁÔÉ)',
- 'AP Outstanding' => '',
- 'AP Transaction' => 'ðÒÏ×ÏÄËÁ ÷ÉÔÒÁÔ',
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÷ÉÔÒÁÔ',
- 'AR' => 'äÏÈÏÄÉ',
- 'AR Aging' => 'AR Aging (ÄÏÈÏÄÉ)',
- 'AR Outstanding' => '',
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ äÏÈÏĦ×',
- 'About' => 'ðÒÏ ÐÒÏÇÒÁÍÕ',
- 'Above' => '',
- 'Access Control' => 'ëÏÎÔÒÏÌØ äÏÓÔÕÐÕ',
- 'Account' => 'òÁÈÕÎÏË',
- 'Account Number' => 'îÏÍÅÒ òÁÈÕÎËÕ',
- 'Account Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÕ!',
- 'Account Type' => '÷ÉÄ ÒÁÈÕÎËÕ',
- 'Account Type missing!' => 'îÅ ×ËÁÚÁÎÉÊ ×ÉÄ ÒÁÈÕÎËÕ!',
- 'Account deleted!' => 'òÁÈÕÎÏË ×ÉÄÁÌÅÎÉÊ',
- 'Account does not exist!' => '',
- 'Account saved!' => 'òÁÈÕÎÏË ÚÂÅÒÅÖÅÎÏ',
- 'Accounting' => 'ïÂ̦Ë',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Accounts' => 'òÁÈÕÎËÉ',
- 'Accrual' => '',
- 'Activate Audit trails' => '',
- 'Active' => 'áËÔÉ×ÎÉÊ',
- 'Add' => 'îÏ×ÉÊ',
- 'Add AP Transaction' => '',
- 'Add AR Transaction' => '',
- 'Add Account' => 'îÏ×ÉÊ ÒÁÈÕÎÏË',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Business' => '',
- 'Add Cash Transfer Transaction' => '',
- 'Add Customer' => 'îÏ×ÉÊ Ë̦¤ÎÔ',
- 'Add Deduction' => '',
- 'Add Department' => '',
- 'Add Employee' => '',
- 'Add Exchange Rate' => '',
- 'Add GIFI' => 'îÏ×ÉÊ GIFI',
- 'Add General Ledger Transaction' => 'îÏ×Á ÐÒÏ×ÏÄËÁ',
- 'Add Group' => '',
- 'Add Labor/Overhead' => '',
- 'Add Language' => '',
- 'Add POS Invoice' => '',
- 'Add Part' => 'îÏ×ÉÊ ôÏ×ÁÒ',
- 'Add Pricegroup' => '',
- 'Add Project' => 'îÏ×ÉÊ ðÒÏÅËÔ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Quotation' => '',
- 'Add Request for Quotation' => '',
- 'Add SIC' => '',
- 'Add Sales Invoice' => 'îÏ×ÉÊ òÁÈÕÎÏ-ÆÁËÔÕÒÁ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Add Service' => 'îÏ×Á ÐÏÓÌÕÇÁ',
- 'Add Transaction' => 'îÏ×Á ÐÒÏ×ÏÄËÁ',
- 'Add User' => 'îÏ×ÉÊ ËÏÒÉÓÔÕ×ÁÞ',
- 'Add Vendor' => 'îÏ×ÉÊ ÐÏÓÔÁÞÁÌØÎÉË',
- 'Add Vendor Invoice' => 'îÏ×ÉÊ ëÕЦ×ÅÌØÎÉÊ òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Add Warehouse' => '',
- 'Address' => 'áÄÒÅÓÁ',
- 'Administration' => 'áÄͦΦÓÔÒÕ×ÁÎÎÑ',
- 'Administrator' => 'áÄͦΦÓÔÒÁÔÏÒ',
- 'After Deduction' => '',
- 'All' => '÷Ó¦',
- 'All Accounts' => '',
- 'All Datasets up to date!' => 'âÁÚÉ äÁÎÉÈ ÎÅ ÐÏÔÒÅÂÕÀÔØ ÐÏÎÏ×ÌÅÎÎÑ!',
- 'All Items' => '',
- 'Allowances' => '',
- 'Amount' => 'óÕÍÁ',
- 'Amount Due' => 'úÁÐÌÁÔÉÔÉ óÕÍÕ',
- 'Amount missing!' => '',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Invoice Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÉÊ ÒÁÈÕÎÏË?',
- 'Are you sure you want to delete Order Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÅ ÚÁÍÏ×ÌÅÎÎÑ?',
- 'Are you sure you want to delete Quotation Number' => '',
- 'Are you sure you want to delete Transaction' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÕ ÐÒÏ×ÏÄËÕ?',
- 'Are you sure you want to remove the marked entries from the queue?' => '',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÉ',
- 'Assemblies restocked!' => 'ëÏÍÐÌÅËÔÉ ¦Î×ÅÎÔÁÒÉÚÏ×ÁΦ!',
- 'Assembly' => '',
- 'Asset' => 'áËÔÉ×',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Audit trail removed up to' => '',
- 'Audit trails disabled' => '',
- 'Audit trails enabled' => '',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'BIC' => '',
- 'BOM' => 'BOM',
- 'Backup' => 'òÅÚÅÒ×ÎÁ ËÏЦÑ',
- 'Backup sent to' => 'òÅÚÅÒ×ÎÁ ËÏÐ¦Ñ ÐÏÓÌÁÎÁ ÄÏ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Based on' => '',
- 'Batch Printing' => '',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Before Deduction' => '',
- 'Beginning Balance' => '',
- 'Below' => '',
- 'Billing Address' => '',
- 'Bin' => 'Bin',
- 'Bin List' => '',
- 'Bin Lists' => '',
- 'Books are open' => 'ëÎÉÇÁ צÄËÒÉÔÁ',
- 'Break' => '',
- 'Business' => '',
- 'Business Number' => 'â¦ÚÎÅÓ-ÎÏÍÅÒ',
- 'Business deleted!' => '',
- 'Business saved!' => '',
- 'C' => 'ó',
- 'COGS' => 'COGS',
- 'Cannot create Lock!' => 'Cannot create Lock!',
- 'Cannot delete account!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË',
- 'Cannot delete customer!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ Ë̦¤ÎÔÁ',
- 'Cannot delete default account!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÏÓÎÏ×ÎÉÊ ÒÁÈÕÎÏË!',
- 'Cannot delete invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Cannot delete item!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÃÅÊ ÅÌÅÍÅÎÔ',
- 'Cannot delete order!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÚÁÍÏ×ÌÅÎÎÑ!',
- 'Cannot delete quotation!' => '',
- 'Cannot delete transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot delete vendor!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÏÓÔÁÞÁÌØÎÉËÁ!',
- 'Cannot post Payment!' => '',
- 'Cannot post Receipt!' => '',
- 'Cannot post invoice for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot process payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ÐÒÏ×ÅÓÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot remove files!' => '',
- 'Cannot save account!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÒÁÈÕÎÏË!',
- 'Cannot save defaults!' => '',
- 'Cannot save order!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÚÁÍÏ×ÌÅÎÎÑ!',
- 'Cannot save preferences!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÎÁÓÔÒÏÊËÉ!',
- 'Cannot save quotation!' => '',
- 'Cannot set account for more than one of AR, AP or IC' => '',
- 'Cannot set multiple options for' => '',
- 'Cannot set multiple options for Parts Inventory' => '',
- 'Cannot set multiple options for Service Items' => '',
- 'Cannot stock assemblies!' => 'îÅ ÍÏÖÌÉ×Ï ¦Î×ÅÎÔÁÒÉÚÕ×ÁÔÉ ËÏÍÐÌÅËÔÉ!',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Change' => '',
- 'Change Admin Password' => 'úͦÎÉÔÉ ÐÁÒÏÌØ áÄͦΦÓÔÒÁÔÏÒÁ',
- 'Change Password' => 'úͦÎÉÔÉ ÐÁÒÏÌØ',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Chart of Accounts' => 'ðÌÁÎ òÁÈÕÎ˦×',
- 'Check' => 'þÅË',
- 'Check Inventory' => '',
- 'Checks' => '',
- 'City' => '',
- 'Cleared' => '',
- 'Click on login name to edit!' => 'îÁÔÉÓΦÔØ ÎÁ ÎÁÚ×Õ ËÏÒÉÓÔÕ×ÁÞÁ, ÝÏ ÚÒÏÂÉÔÉ ÚͦÎÉ!',
- 'Close Books up to' => 'úÁËÒÉÔÉ ëÎÉÇÉ ÄÏ',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Code' => '',
- 'Code missing!' => '',
- 'Company' => 'ð¦ÄÐÒɤÍÓÔ×Ï',
- 'Company Name' => '',
- 'Compare to' => 'ðÏÒ¦×ÎÑÔÉ Ú',
- 'Components' => '',
- 'Confirm' => '',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Connect to' => 'ð¦ÄËÌÀÞÉÔÉÓØ ÄÏ',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Contra' => '',
- 'Copies' => 'ëÏЦÊ',
- 'Copy to COA' => 'óËÏЦÀ×ÁÔÉ ÄÏ ðÌÁÎÕ òÁÈÕÎ˦×',
- 'Cost' => '',
- 'Cost Center' => '',
- 'Could not save pricelist!' => '',
- 'Could not save!' => '',
- 'Could not transfer Inventory!' => '',
- 'Country' => '',
- 'Create Chart of Accounts' => 'óÔ×ÏÒÉÔÉ ðÌÁÎ òÁÈÕÎ˦×',
- 'Create Dataset' => 'óÔ×ÏÒÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Current Earnings' => '',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer History' => '',
- 'Customer Number' => '',
- 'Customer deleted!' => 'ë̦¤ÎÔÁ ×ÉÄÁÌÅÎÏ!',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Customer saved!' => 'ë̦¤ÎÔÁ ÚÂÅÒÅÖÅÎÏ!',
- 'Customers' => 'ë̦¤ÎÔÉ',
- 'DBI not installed!' => 'îÅ ×ÓÔÁÎÏ×ÌÅÎÉÊ ÄÒÁÊ×ÅÒ DBI!',
- 'DOB' => '',
- 'Database' => 'âÁÚÁ äÁÎÉÈ',
- 'Database Administration' => 'áÄͦΦÓÔÒÕ×ÁÎÎÑ ÂÁÚÉ ÄÁÎÉÈ',
- 'Database Driver not checked!' => 'îÅ ÚÁÚÎÁÞÅÎÉÊ ÄÒÁÊ×ÅÒ âÁÚÉ äÁÎÉÈ (Pg)!',
- 'Database Host' => 'íÁÛÉÎÁ âÁÚÉ äÁÎÉÈ',
- 'Database User missing!' => 'îÅ ×ËÁÚÁÎÉÊ ëÏÒÉÓÔÕ×ÁÞ âÁÚÉ äÁÎÉÈ!',
- 'Dataset' => 'âÁÚÁ äÁÎÉÈ',
- 'Dataset is newer than version!' => '',
- 'Dataset missing!' => 'îÅ ×ËÁÚÁÎÁ âÁÚÁ äÁÎÉÈ!',
- 'Dataset updated!' => 'âÁÚÁ äÁÎÉÈ ÐÏÎÏ×ÌÅÎÁ!',
- 'Date' => 'äÁÔÁ',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÉ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÉ',
- 'Date Received' => '',
- 'Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ!',
- 'Date received missing!' => '',
- 'Debit' => 'äÅÂÉÔ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Decimalplaces' => 'äÅÓÑÔÉÞΦ ͦÓÃÑ',
- 'Decrease' => '',
- 'Deduct after' => '',
- 'Deduction deleted!' => '',
- 'Deduction saved!' => '',
- 'Deductions' => '',
- 'Defaults' => '',
- 'Defaults saved!' => '',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delete Account' => '÷ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË',
- 'Delete Dataset' => '÷ÉÄÁÌÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Department' => '',
- 'Department deleted!' => '',
- 'Department saved!' => '',
- 'Departments' => '',
- 'Deposit' => 'äÅÐÏÚÉÔ/÷ËÌÁÄ',
- 'Description' => 'ïÐÉÓ',
- 'Description Translations' => '',
- 'Description missing!' => '',
- 'Detail' => '',
- 'Difference' => 'ò¦ÚÎÉÃÑ',
- 'Directory' => 'ëÁÔÁÌÏÇ',
- 'Discount' => 'óËÉÄËÁ',
- 'Done' => 'úÒÏÂÌÅÎÏ',
- 'Drawing' => 'íÁÌÀÎÏË',
- 'Driver' => 'äÒÁÊ×ÅÒ',
- 'Dropdown Limit' => 'ïÂÍÅÖÅÎÎÑ ÌÉÓÔÏ×ÏÇÏ ÍÅÎÀ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'Due Date missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÔÅÒͦΠÏÐÌÁÔÉ!',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail Statement to' => 'ðÏÓÌÁÔÉ ÐÏ ÅÌ. ÐÏÛÔ¦ ÄÏ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'E-mailed' => '',
- 'Edit' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ',
- 'Edit AP Transaction' => '',
- 'Edit AR Transaction' => '',
- 'Edit Account' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ òÁÈÕÎÏË',
- 'Edit Assembly' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ËÏÍÐÌÅËÔ',
- 'Edit Business' => '',
- 'Edit Cash Transfer Transaction' => '',
- 'Edit Customer' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ë̦¤ÎÔÁ',
- 'Edit Deduction' => '',
- 'Edit Department' => '',
- 'Edit Description Translations' => '',
- 'Edit Employee' => '',
- 'Edit GIFI' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ GIFI',
- 'Edit General Ledger Transaction' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏ×ÏÄËÕ çÏÌÏ×Îϧ ëÎÉÇÉ',
- 'Edit Group' => '',
- 'Edit Labor/Overhead' => '',
- 'Edit Language' => '',
- 'Edit POS Invoice' => '',
- 'Edit Part' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ôÏ×ÁÒ',
- 'Edit Preferences for' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ îÁÓÔÒÏÊËÉ',
- 'Edit Pricegroup' => '',
- 'Edit Project' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏÅËÔ',
- 'Edit Purchase Order' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Edit Quotation' => '',
- 'Edit Request for Quotation' => '',
- 'Edit SIC' => '',
- 'Edit Sales Invoice' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ òÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Edit Sales Order' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏÄÁÖÎÕ îÁËÌÁÄÎÕ',
- 'Edit Service' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ÐÏÓÌÕÇÕ',
- 'Edit Template' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ûÁÂÌÏÎ',
- 'Edit User' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÏÒÉÓÔÕ×ÁÞÁ',
- 'Edit Vendor' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÏÓÔÁÞÁÌØÎÉËÁ',
- 'Edit Vendor Invoice' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÕЦ×ÅÌØÎÉÊ òÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Edit Warehouse' => '',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Employee Name' => '',
- 'Employee Number' => '',
- 'Employee deleted!' => '',
- 'Employee pays' => '',
- 'Employee saved!' => '',
- 'Employees' => '',
- 'Employer' => '',
- 'Employer pays' => '',
- 'Enddate' => '',
- 'Enforce transaction reversal for all dates' => 'úÁÓÔÁ×ÉÔÉ Ú×ÏÒÏÔÎÕ ÚͦÎÕ ÐÒÏ×ÏÄÏË ÄÌÑ ×Ó¦È ÄÁÔ',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '÷×ÅĦÔØ ÄÏ 3 ̦ÔÅÒ ÒÏÚĦÌÅÎÉÈ Ä×ÏËÒÁÐËÁÍÉ (i.e CAD:USD:EUR) ÄÌÑ ÐÏÚÎÁÞÅÎÎÑ Í¦ÓÃÅ×ϧ ¦ ¦ÎÏÚÅÍÎÉÈ ÇÒÏÛÏ×ÉÈ ÏÄÉÎÉÃØ',
- 'Equity' => 'ëÁЦÔÁÌ',
- 'Excempt age <' => '',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Existing Datasets' => '¶ÓÎÕÀÞ¦ âÁÚÉ äÁÎÉÈ',
- 'Expense' => '÷ÉÄÁÔËÉ',
- 'Expense Account' => 'òÁÈÕÎÏË ÷ÉÄÁÔ˦×',
- 'Expense/Asset' => '÷ÉÄÁÔÏË/áËÔÉ×',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'FX' => '',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'Foreign Exchange Gain' => 'ðÒÉÂÕÔÏË Ú ïÂͦÎÕ ÷ÁÌÀÔÉ',
- 'Foreign Exchange Loss' => '÷ÔÒÁÔÁ ÎÁ ïÂͦΦ ÷ÁÌÀÔÉ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI ×ÉÄÁÌÅÎÏ!',
- 'GIFI missing!' => 'îÅ ×ËÁÚÁÎÏ GIFI!',
- 'GIFI saved!' => 'GIFI ÚÂÅÒÅÖÅÎÏ!',
- 'GL Transaction' => 'çëðÒÏ×ÏÄËÁ',
- 'General Ledger' => 'çÏÌÏ×ÎÁ ëÎÉÇÁ',
- 'Goods & Services' => 'ôÏ×ÁÒÉ ¦ ðÏÓÌÕÇÉ',
- 'Group' => '',
- 'Group Items' => '',
- 'Group Translations' => '',
- 'Group deleted!' => '',
- 'Group missing!' => '',
- 'Group saved!' => '',
- 'Groups' => '',
- 'HR' => '',
- 'HTML Templates' => 'HTML ûÁÂÌÏÎÉ ',
- 'Heading' => 'òÏÚĦÌ',
- 'History' => '',
- 'Home Phone' => '',
- 'Host' => 'íÁÛÉÎÁ/Host',
- 'Hostname missing!' => 'îÅ ×ËÁÚÁÎÁ ÎÁÚ×Á ÍÁÛÉÎÉ!',
- 'IBAN' => '',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Image' => 'úÏÂÒÁÖÅÎÎÑ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Include Exchange Rate Difference' => '',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Include in drop-down menus' => 'äÏÄÁÔÉ ÄÏ ÌÉÓÔÏ×ÉÈ ÍÅÎÀ',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'äÏÄÁÔÉ ÒÁÈÕÎÏË ÄÏ ÆÏÒÍ Ë̦¤ÎÔ¦×/ÐÏÓÔÁÞÁÌØÎÉ˦×, ÝÏ ÐÏÚÎÁÞÁÔÉ Ë̦¤ÎÔ¦×/ÐÏÓÔÁÞÁÌØÎÉË¦× Ú ÑËÉÈ ÓÔÑÇÕÀÔØÓÑ ÐÏÄÁÔËÉ?',
- 'Income' => '',
- 'Income Account' => '',
- 'Income Statement' => 'ú×¦Ô ÐÒÏ ÄÏÈÏÄÉ ¦ ×ÉÄÁÔËÉ',
- 'Incorrect Dataset version!' => 'îÅצÒÎÁ ×ÅÒÓ¦Ñ âÁÚÉ äÁÎÉÈ!',
- 'Incorrect Password!' => 'îÅצÒÎÉÊ ðÁÒÏÌØ!',
- 'Increase' => '',
- 'Individual Items' => '¶ÎÄÉצÄÕÁÌØΦ þÁÓÔÉÎÉ',
- 'Internal Notes' => '',
- 'Inventory' => '¶Î×ÅÎÔÁÒ',
- 'Inventory Account' => '¶Î×ÅÎÔÁÒÎÉÊ ÒÁÈÕÎÏË',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'ë¦ÌØ˦ÓÔØ × ¦Î×ÅÎÔÁÒ¦ ÐÏ×ÉÎÎÁ ÂÕÔÉ ÎÕÌØ, ÐÅÒÛ Î¦Ö ÍÏÖÎÁ ÐÏÚÎÁÞÉÔÉ ËÏÍÐÌÅËÔ ÚÁÓÔÁÒ¦ÌÉÍ!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'ë¦ÌØ˦ÓÔØ × ¦Î×ÅÎÔÁÒ¦ ÐÏ×ÉÎÎÁ ÂÕÔÉ ÎÕÌØ, ÐÅÒÛ Î¦Ö ÍÏÖÎÁ ÐÏÚÎÁÞÉÔÉ ÃÉÊ ÔÏ×ÁÒ ÚÁÓÔÁÒ¦ÌÉÍ!',
- 'Inventory saved!' => '',
- 'Inventory transferred!' => '',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice deleted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÄÁÌÅÎÉÊ!',
- 'Invoice posted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÓÔÁ×ÌÅÎÉÊ',
- 'Invoice processed!' => '',
- 'Invoices' => 'òÁÈÕÎËÉ-ÆÁËÔÕÒÉ',
- 'Is this a summary account to record' => 'þÉ ÃŠЦÄÓÕÍËÏ×ÉÊ ÒÁÈÕÎÏË ÄÌÑ ÚÁÐÉÓÕ?',
- 'Item already on pricelist!' => '',
- 'Item deleted!' => 'ò¦Þ ×ÉÄÁÌÅÎÏ!',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Items' => '',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'LaTeX Templates' => 'LaTeX ûÁÂÌÏÎÉ',
- 'Labor/Overhead' => '',
- 'Language' => 'íÏ×Á',
- 'Language deleted!' => '',
- 'Language saved!' => '',
- 'Languages' => '',
- 'Languages not defined!' => '',
- 'Last Numbers & Default Accounts' => 'ïÓÔÁÎΦ îÏÍÅÒÉ ¦ ôÉÐÏצ òÁÈÕÎËÉ',
- 'Leadtime' => '',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'ñËÝÏ ×É ÎÅ ÂÁÖÁ¤ÔÅ ×ÓÔÁÎÏ×ÉÔÉ ×¦ÄÄÁÌÅÎÉÊ Ú×ÑÚÏË, ÎÅ ÚÁÐÏ×ÎÀÊÔÅ ÐÏÌÑ ÍÁÛÉÎÉ ¦ ÐÏÒÔÕ.',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Licensed to' => 'ì¦ÃÅÎÚ¦¤À ×ÏÌÏĦ¤:',
- 'Line Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Link' => 'ðÏÓÉÌÁÎÎÑ',
- 'Link Accounts' => 'ðÏ×ÑÚÁÔÉ òÁÈÕÎËÉ',
- 'List' => '',
- 'List Accounts' => 'óÐÉÓÏË òÁÈÕÎ˦×',
- 'List Businesses' => '',
- 'List Departments' => '',
- 'List GIFI' => 'óÐÉÓÏË GIFI',
- 'List Languages' => '',
- 'List Price' => 'ã¦ÎÁ',
- 'List Projects' => '',
- 'List SIC' => '',
- 'List Transactions' => 'óÐÉÓÏË ðÒÏ×ÏÄÏË',
- 'List Warehouses' => '',
- 'Lock System' => 'Lock System',
- 'Lockfile created!' => 'Lockfile created!',
- 'Lockfile removed!' => 'Lockfile removed!',
- 'Login' => 'ðÏÞÁÔÏË óÅÁÎÓÕ',
- 'Login name missing!' => 'Login name missing!',
- 'Logout' => 'ë¦ÎÅÃØ óÅÁÎÓÕ',
- 'Make' => '÷ÉÒÏÂÎÉÃÔ×Ï',
- 'Manager' => '',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'Marked entries printed!' => '',
- 'Markup' => '',
- 'Maximum' => '',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Memo' => '',
- 'Menu Width' => '',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'Method' => '',
- 'Microfiche' => 'í¦ËÒÏƦÛÁ',
- 'Model' => 'íÏÄÅÌØ',
- 'Month' => '',
- 'Multibyte Encoding' => 'íÕÌØÔÉÂÉÔÎÅ ëÏÄÕ×ÁÎÎÑ',
- 'N/A' => 'îÅ óÔÏÓÕ¤ÔØÓÑ',
- 'Name' => 'îÁÚ×Á',
- 'Name missing!' => 'îÅ ×ËÁÚÁÎÁ ÎÁÚ×Á!',
- 'New Templates' => 'îÏצ ûÁÂÌÏÎÉ',
- 'No' => 'î¦',
- 'No Database Drivers available!' => 'îÅÄÏÓÔÕÐÎÉÊ ÄÒÁÊ×ÅÒ âÁÚÉ äÁÎÉÈ!',
- 'No Dataset selected!' => 'îÅ ÐÏÚÎÁÞÅÎÏ ×ÉÂÒÁÎÕ âÁÚÕ äÁÎÉÈ!',
- 'No email address for' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ ÄÌÑ',
- 'No.' => 'No.',
- 'Non-taxable' => '',
- 'Non-taxable Purchases' => '',
- 'Non-taxable Sales' => '',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nothing entered!' => '',
- 'Nothing outstanding for ' => '',
- 'Nothing selected!' => 'î¦ÞÏÇÏ ÎÅ ×ÉÂÒÁÎÏ!',
- 'Nothing to delete!' => 'îÅÍÁ ÝÏ ×ÉÄÁÌÉÔÉ!',
- 'Nothing to print!' => '',
- 'Nothing to transfer!' => '',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number Format' => 'æÏÒÍÁÔ þÉÓÌÁ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'O' => 'ï',
- 'Obsolete' => 'úÁÓÔÁÒ¦ÌÅ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'On Hand' => 'îÁ òÕËÁÈ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Oracle Database Administration' => 'áÄͦΦÓÔÒÁÃ¦Ñ âÁÚÉ äÁÎÉÈ Oracle',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Date' => 'äÁÔÁ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Entry' => '÷ÉÓÔÁ×ÌÅÎÎÑ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order deleted!' => 'úÁÍÏ×ÌÅÎÎÑ ×ÉÄÁÌÅÎÏ!',
- 'Order processed!' => '',
- 'Order saved!' => 'úÁÍÏ×ÌÅÎÎÑ ÚÂÅÒÅÖÅÎÏ!',
- 'Orphaned' => '÷¦ÄÏËÒÅÍÌÅÎÉÊ/ïÓÉÒÏÔ¦ÌÉÊ',
- 'Out of balance transaction!' => '',
- 'Out of balance!' => 'îÅ ÚÂÁÌÁÎÓÏ×ÁÎÏ!',
- 'Outstanding' => '',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'POS' => '',
- 'POS Invoice' => '',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing Lists' => '',
- 'Paid' => 'úÁÐÌÁÞÅÎÏ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Part Number' => '',
- 'Partnumber' => '',
- 'Parts' => 'ÔÏ×ÁÒÉ',
- 'Parts Inventory' => '¶Î×ÅÎÔÁÒ ôÏ×ÁÒ¦×',
- 'Password' => 'ðÁÒÏÌØ',
- 'Password changed!' => 'ðÁÒÏÌØ ÚͦÎÅÎÏ!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'úÏÂÏ×ÑÚÁÎÎÑ (ÐÌÁÔ¦ÖΦ)',
- 'Payment' => 'ðÌÁÔ¦Ö',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payment posted!' => 'ðÌÁÔ¦Ö ×ÉÓÔÁ×ÌÅÎÏ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Payroll Deduction' => '',
- 'Period' => '',
- 'Pg Database Administration' => 'áÄͦΦÓÔÒÁÃ¦Ñ âÁÚÉ äÁÎÉÈ Pg',
- 'PgPP Database Administration' => 'PgPP Database Administration',
- 'Phone' => 'ôÅÌ.',
- 'Pick List' => '',
- 'Pick Lists' => '',
- 'Port' => 'ðÏÒÔ',
- 'Port missing!' => 'ðÏÒÔ ÎÅ ×ËÁÚÁÎÏ!',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Posted!' => '',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'îÁÓÔÒÏÊËÉ',
- 'Preferences saved!' => 'îÁÓÔÒÏÊËÉ ÚÂÅÒÅÖÅÎÏ!',
- 'Prepayment' => '',
- 'Price' => 'ã¦ÎÁ',
- 'Pricegroup' => '',
- 'Pricegroup deleted!' => '',
- 'Pricegroup missing!' => '',
- 'Pricegroup saved!' => '',
- 'Pricegroups' => '',
- 'Pricelist' => '',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Print and Post' => '',
- 'Print and Save' => '',
- 'Printed' => '',
- 'Printer' => 'ðÒÉÎÔÅÒ',
- 'Printing ... ' => '',
- 'Profit Center' => '',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project Description Translations' => '',
- 'Project Number' => '',
- 'Project Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÐÒÏÅËÔÕ!',
- 'Project Transactions' => '',
- 'Project deleted!' => 'ðÒÏÅËÔ ×ÉÄÁÌÅÎÏ!',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Project saved!' => 'ðÒÏÅËÔ ÚÂÅÒÅÖÅÎÏ!',
- 'Projects' => 'ðÒÏÅËÔÉ',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Purchase Order Number' => '',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Quantity exceeds available units to stock!' => '',
- 'Quarter' => '',
- 'Queue' => '',
- 'Queued' => '',
- 'Quotation' => '',
- 'Quotation ' => '',
- 'Quotation Date' => '',
- 'Quotation Date missing!' => '',
- 'Quotation Number' => '',
- 'Quotation Number missing!' => '',
- 'Quotation deleted!' => '',
- 'Quotations' => '',
- 'R' => '',
- 'RFQ' => '',
- 'RFQ ' => '',
- 'RFQ Number' => '',
- 'RFQs' => '',
- 'ROP' => 'ROP',
- 'Rate' => 'òÏÚæÎËÁ',
- 'Rate missing!' => '',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Receipt posted!' => '',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Receivables' => 'îÁÌÅÖÎÏÓÔ¦ (ÄÅÂÉÔÉ)',
- 'Receive' => '',
- 'Receive Merchandise' => '',
- 'Reconciliation' => 'õÚÇÏÄÖÅÎÎÑ',
- 'Reconciliation Report' => '',
- 'Record in' => '÷ÎÅÓÔÉ ×',
- 'Reference' => 'úÓÉÌËÁ',
- 'Reference missing!' => 'îÅ ×ËÁÚÁÎÁ ÚÓÉÌËÁ!',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Remove' => '',
- 'Remove Audit trails up to' => '',
- 'Removed spoolfiles!' => '',
- 'Removing marked entries from queue ...' => '',
- 'Report for' => 'ú×¦Ô ÄÌÑ',
- 'Reports' => 'úצÔÉ',
- 'Request for Quotation' => '',
- 'Request for Quotations' => '',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Retained Earnings' => 'ðÒÉÂÕÔÏË (ÎÅÒÏÚÐÏĦÌÅÎÉÊ)',
- 'Role' => '',
- 'S' => '',
- 'SIC' => '',
- 'SIC deleted!' => '',
- 'SIC saved!' => '',
- 'SKU' => '',
- 'SSN' => '',
- 'Sale' => '',
- 'Sales' => 'úÂÕÔ',
- 'Sales Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Sales Invoice ' => '',
- 'Sales Invoice Number' => '',
- 'Sales Invoice.' => '',
- 'Sales Invoices' => '',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Sales Quotation Number' => '',
- 'Salesperson' => '',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Save Pricelist' => '',
- 'Save as new' => 'úÂÅÒÅÇÔÉ ÑË ÎÏ×Å',
- 'Save to File' => 'úÂÅÒÅÇÔÉ Õ æÁÊ̦',
- 'Screen' => 'åËÒÁÎ',
- 'Search' => '',
- 'Select' => '',
- 'Select Printer or Queue!' => '',
- 'Select all' => '÷ÉÂÒÁÔÉ ×ÓÅ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select payment' => '',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => '',
- 'Sell Price' => '÷¦ÄÐÕÓËÎÁ ã¦ÎÁ',
- 'Send by E-Mail' => '÷ÉÓÌÁÔÉ ÐÏ ÅÌ. ÐÏÛÔ¦',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Serial No.' => '',
- 'Serial Number' => '',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Service Items' => 'ðÏÓÌÕÇÉ',
- 'Services' => 'ðÏÓÌÕÇÉ',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'îÁÌÁÛÔÕ×ÁÔÉ ûÁÂÌÏÎÉ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship Merchandise' => '',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Ship via' => 'ðÏÓÌÁÔÉ ÞÅÒÅÚ',
- 'Shipping' => '',
- 'Shipping Address' => '',
- 'Shipping Date' => '',
- 'Shipping Date missing!' => '',
- 'Shipping Point' => '',
- 'Short' => 'óËÏÒÏÞÅÎÏ',
- 'Signature' => 'ð¦ÄÐÉÓ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Spoolfile' => '',
- 'Standard' => 'óÔÁÎÄÁÒÔΦ',
- 'Standard Industrial Codes' => '',
- 'Startdate' => '',
- 'State' => '',
- 'State/Province' => '',
- 'Statement' => 'úצÔ',
- 'Statement Balance' => 'âÁÌÁÎÓÏ×ÉÊ úצÔ',
- 'Statement sent to' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ',
- 'Statements sent to printer!' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ ðÒÉÎÔÅÒÁ!',
- 'Stock' => '',
- 'Stock Assembly' => '¶Î×ÅÎÔÁÒ ëÏÍÐÌÅËÔÕ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÎÎÑ',
- 'Sub-contract GIFI' => '',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Summary' => '',
- 'Supervisor' => '',
- 'System' => 'óÉÓÔÅÍÁ',
- 'System Defaults' => '',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Accounts' => 'ðÏÄÁÔËÏצ òÁÈÕÎËÉ',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'Tax Number' => '',
- 'Tax Number / SSN' => '',
- 'Tax collected' => 'ðÏÄÁÔÏË Ú¦ÂÒÁÎÏ',
- 'Tax paid' => 'ðÏÄÁÔÏË ÚÁÐÌÁÞÅÎÏ',
- 'Taxable' => 'ïÐÏÄÁÔËÏ×Õ¤ÔØÓÑ',
- 'Template saved!' => 'ûÁÂÌÏÎ ÚÂÅÒÅÖÅÎÏ',
- 'Templates' => 'ûÁÂÌÏÎÉ',
- 'Terms' => 'õÍÏ×É: ',
- 'Text Templates' => '',
- 'The following Datasets are not in use and can be deleted' => 'îÁÓÔÕÐΦ âÁÚÉ äÁÎÉÈ ÎÅ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ¦ ÍÏÖÕÔØ ÂÕÔÉ ×ÉÄÁÌÅΦ',
- 'The following Datasets need to be updated' => 'îÁÓÔÕÐΦ âÁÚÉ äÁÎÉÈ ÐÏ×ÉÎΦ ÂÕÔÉ ÐÏÎÏ×ÌÅΦ',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'ðÏÐÅÒÅÄÎÑ ÐÅÒÅצÒËÁ ¦ÓÎÕÀÞÉÈ ÄÖÅÒÅÌ. ðÏËÉ ÝÏ Î¦ÞÏÇÏ ÎÅ ÂÕÄÅ ÓÔ×ÏÒÅÎÏ ÁÂÏ ×ÉÄÁÌÅÎÏ!',
- 'Till' => '',
- 'To' => 'äÏ',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'ýÏ ÄÏÄÁÔÉ ËÏÒÉÓÔÕ×ÁÞÁ ÄÏ ÇÒÕÐÉ, ÔÒÅÂÁ ÐÏͦÎÑÔÉ ¦ÍÑ, login/××ÏÄÎÅ ¦ÍÑ ¦ ÚÂÅÒÅÇÔÉ. îÏ×ÉÊ ËÏÒÉÓÔÕ×ÁÞÁ ¦Ú ÏÄÎÁËÏ×ÉÍÉ ÐÁÒÁÍÅÔÒÁÍÉ ÂÕÄÅ ÚÂÅÒÅÖÅÎÏ Ð¦Ä ÎÏ×ÉÍ login/××ÏÄÎÉÍ ¦ÍÑÍ.',
- 'Top Level' => '÷ÅÒÈÎ¦Ê ò¦×ÅÎØ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Trade Discount' => '',
- 'Transaction' => '',
- 'Transaction Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ÐÒÏ×ÏÄËÉ',
- 'Transaction deleted!' => 'ðÒÏ×ÏÄËÁ ×ÉÄÁÌÅÎÁ',
- 'Transaction posted!' => 'ðÒÏ×ÏÄËÁ ÚĦÊÓÎÅÎÁ',
- 'Transaction reversal enforced for all dates' => 'úÒÏÂÌÅÎÁ ÒÅ×ÅÓÉ×ÎÕ ÚͦÎÁ ÐÒÏ×ÏÄÏË ÄÌÑ ×Ó¦È ÄÁÔ',
- 'Transaction reversal enforced up to' => 'úÒÏÂÌÅÎÁ ÒÅ×ÅÓÉ×ÎÕ ÚͦÎÁ ÐÒÏ×ÏÄÏË ÁÖ ÄÏ',
- 'Transactions' => 'ðÒÏ×ÏÄËÉ',
- 'Transfer' => '',
- 'Transfer Inventory' => '',
- 'Transfer to' => '',
- 'Translation' => '',
- 'Translation deleted!' => '',
- 'Translation not on file!' => '',
- 'Translations' => '',
- 'Translations saved!' => '',
- 'Trial Balance' => 'ðÒÏÂÎÉÊ âÁÌÁÎÓ',
- 'Type of Business' => '',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Unit of measure' => 'ïÄÉÎÉÃÑ ×ÉͦÒÕ',
- 'Unlock System' => 'Unlock System',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Update Dataset' => 'ðÏÎÏ×ÉÔÉ âÁÚÕ äÁÎÉÈ',
- 'Updated' => 'ðÏÎÏ×ÌÅÎÏ',
- 'Upgrading to Version' => '',
- 'Use Templates' => '÷ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ûÁÂÌÏÎÉ',
- 'User' => 'ëÏÒÉÓÔÕ×ÁÞ',
- 'User deleted!' => 'ëÏÒÉÓÔÕ×ÁÞ ÷ÉÄÁÌÅÎÉÊ',
- 'User saved!' => 'ëÏÒÉÓÔÕ×ÁÞ ÚÂÅÒÅÖÅÎÉÊ',
- 'Valid until' => '',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor History' => '',
- 'Vendor Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Vendor Invoice ' => '',
- 'Vendor Invoice Number' => '',
- 'Vendor Invoice.' => '',
- 'Vendor Invoices' => '',
- 'Vendor Number' => '',
- 'Vendor deleted!' => 'ðÏÓÔÁÞÁÌØÎÉË ×ÉÄÁÌÅÎÉÊ',
- 'Vendor missing!' => 'ðÏÓÔÁÞÁÌØÎÉË ÎÅ ¦ÓÎÕ¤',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'Vendor saved!' => 'ðÏÓÔÁÞÁÌØÎÉËÁ ÚÂÅÒÅÖÅÎÏ',
- 'Vendors' => 'ðÏÓÔÁÞÁÌØÎÉËÉ',
- 'Version' => '÷ÅÒÓ¦Ñ',
- 'Warehouse' => '',
- 'Warehouse deleted!' => '',
- 'Warehouse saved!' => '',
- 'Warehouses' => '',
- 'Warning!' => '',
- 'Weight' => '÷ÁÇÁ',
- 'Weight Unit' => 'ïÄÉÎÉÃÑ ÷ÁÇÉ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'Work Order' => '',
- 'Work Orders' => '',
- 'Work Phone' => '',
- 'Year' => '',
- 'Yearend' => '',
- 'Yearend date missing!' => '',
- 'Yearend posted!' => '',
- 'Yearend posting failed!' => '',
- 'Yes' => 'Tak',
- 'You are logged out' => '',
- 'You did not enter a name!' => 'îÅ ××ÅÄÅÎÏ ÎÁÚ×Õ',
- 'You must enter a host and port for local and remote connections!' => 'íÕÓÉÔÅ ××ÅÓÔÉ ÎÁÚ×Õ ÍÁÛÉÎÉ ¦ ÐÏÒÔÁ ÄÌÑ Í¦ÓÃÅ×ÏÇÏ ¦ צÄÄÁÌÅÎÏÇÏ Ú×ÑÚËÕ!',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => '',
- 'as at' => 'ÑË ×',
- 'days' => 'ÄΦ×',
- 'does not exist' => 'ÎÅ ¦ÓÎÕ¤',
- 'done' => '',
- 'ea' => 'ÛÔ.',
- 'for Period' => 'ÚÁ ðÅÒ¦ÏÄ',
- 'is already a member!' => '×ÖÅ ¤ ÞÌÅÎÏÍ',
- 'is not a member!' => 'ÎÅ ¤ ÞÌÅÎÏÍ',
- 'localhost' => 'localhost',
- 'locked!' => '',
- 'posted!' => '',
- 'sent' => '',
- 'successfully created!' => 'ÕÓЦÛÎÏ ÓÔ×ÏÒÅÎÏ',
- 'successfully deleted!' => 'ÕÓЦÛÎÏ ×ÉÄÁÌÅÎÏ',
- 'website' => '×ÅÂ-ÓÔÏÒ¦ÎËÁ',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/am b/sql-ledger/locale/ua/am
deleted file mode 100644
index 873899b..0000000
--- a/sql-ledger/locale/ua/am
+++ /dev/null
@@ -1,191 +0,0 @@
-$self{texts} = {
- 'AP' => '÷ÉÔÒÁÔÉ',
- 'AR' => 'äÏÈÏÄÉ',
- 'About' => 'ðÒÏ ÐÒÏÇÒÁÍÕ',
- 'Account' => 'òÁÈÕÎÏË',
- 'Account Number' => 'îÏÍÅÒ òÁÈÕÎËÕ',
- 'Account Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÕ!',
- 'Account Type' => '÷ÉÄ ÒÁÈÕÎËÕ',
- 'Account Type missing!' => 'îÅ ×ËÁÚÁÎÉÊ ×ÉÄ ÒÁÈÕÎËÕ!',
- 'Account deleted!' => 'òÁÈÕÎÏË ×ÉÄÁÌÅÎÉÊ',
- 'Account saved!' => 'òÁÈÕÎÏË ÚÂÅÒÅÖÅÎÏ',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Account' => 'îÏ×ÉÊ ÒÁÈÕÎÏË',
- 'Add GIFI' => 'îÏ×ÉÊ GIFI',
- 'Address' => 'áÄÒÅÓÁ',
- 'Asset' => 'áËÔÉ×',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Backup sent to' => 'òÅÚÅÒ×ÎÁ ËÏÐ¦Ñ ÐÏÓÌÁÎÁ ÄÏ',
- 'Books are open' => 'ëÎÉÇÁ צÄËÒÉÔÁ',
- 'Business Number' => 'â¦ÚÎÅÓ-ÎÏÍÅÒ',
- 'COGS' => 'COGS',
- 'Cannot delete account!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË',
- 'Cannot delete default account!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÏÓÎÏ×ÎÉÊ ÒÁÈÕÎÏË!',
- 'Cannot save account!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÒÁÈÕÎÏË!',
- 'Cannot save preferences!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÎÁÓÔÒÏÊËÉ!',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Character Set' => 'ëÏÄÉÒÏ×ËÁ',
- 'Chart of Accounts' => 'ðÌÁÎ òÁÈÕÎ˦×',
- 'Close Books up to' => 'úÁËÒÉÔÉ ëÎÉÇÉ ÄÏ',
- 'Company' => 'ð¦ÄÐÒɤÍÓÔ×Ï',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copy to COA' => 'óËÏЦÀ×ÁÔÉ ÄÏ ðÌÁÎÕ òÁÈÕÎ˦×',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Database Host' => 'íÁÛÉÎÁ âÁÚÉ äÁÎÉÈ',
- 'Dataset' => 'âÁÚÁ äÁÎÉÈ',
- 'Date Format' => 'æÏÒÍÁÔ ÄÁÔÉ',
- 'Debit' => 'äÅÂÉÔ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delete Account' => '÷ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË',
- 'Description' => 'ïÐÉÓ',
- 'Discount' => 'óËÉÄËÁ',
- 'Dropdown Limit' => 'ïÂÍÅÖÅÎÎÑ ÌÉÓÔÏ×ÏÇÏ ÍÅÎÀ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'Edit' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ',
- 'Edit Account' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ òÁÈÕÎÏË',
- 'Edit GIFI' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ GIFI',
- 'Edit Preferences for' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ îÁÓÔÒÏÊËÉ',
- 'Edit Template' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ûÁÂÌÏÎ',
- 'Enforce transaction reversal for all dates' => 'úÁÓÔÁ×ÉÔÉ Ú×ÏÒÏÔÎÕ ÚͦÎÕ ÐÒÏ×ÏÄÏË ÄÌÑ ×Ó¦È ÄÁÔ',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => '÷×ÅĦÔØ ÄÏ 3 ̦ÔÅÒ ÒÏÚĦÌÅÎÉÈ Ä×ÏËÒÁÐËÁÍÉ (i.e CAD:USD:EUR) ÄÌÑ ÐÏÚÎÁÞÅÎÎÑ Í¦ÓÃÅ×ϧ ¦ ¦ÎÏÚÅÍÎÉÈ ÇÒÏÛÏ×ÉÈ ÏÄÉÎÉÃØ',
- 'Equity' => 'ëÁЦÔÁÌ',
- 'Expense' => '÷ÉÄÁÔËÉ',
- 'Expense Account' => 'òÁÈÕÎÏË ÷ÉÄÁÔ˦×',
- 'Expense/Asset' => '÷ÉÄÁÔÏË/áËÔÉ×',
- 'Fax' => 'æÁÈ',
- 'Foreign Exchange Gain' => 'ðÒÉÂÕÔÏË Ú ïÂͦÎÕ ÷ÁÌÀÔÉ',
- 'Foreign Exchange Loss' => '÷ÔÒÁÔÁ ÎÁ ïÂͦΦ ÷ÁÌÀÔÉ',
- 'GIFI' => 'GIFI',
- 'GIFI deleted!' => 'GIFI ×ÉÄÁÌÅÎÏ!',
- 'GIFI missing!' => 'îÅ ×ËÁÚÁÎÏ GIFI!',
- 'GIFI saved!' => 'GIFI ÚÂÅÒÅÖÅÎÏ!',
- 'Heading' => 'òÏÚĦÌ',
- 'Include in drop-down menus' => 'äÏÄÁÔÉ ÄÏ ÌÉÓÔÏ×ÉÈ ÍÅÎÀ',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'äÏÄÁÔÉ ÒÁÈÕÎÏË ÄÏ ÆÏÒÍ Ë̦¤ÎÔ¦×/ÐÏÓÔÁÞÁÌØÎÉ˦×, ÝÏ ÐÏÚÎÁÞÁÔÉ Ë̦¤ÎÔ¦×/ÐÏÓÔÁÞÁÌØÎÉË¦× Ú ÑËÉÈ ÓÔÑÇÕÀÔØÓÑ ÐÏÄÁÔËÉ?',
- 'Inventory' => '¶Î×ÅÎÔÁÒ',
- 'Inventory Account' => '¶Î×ÅÎÔÁÒÎÉÊ ÒÁÈÕÎÏË',
- 'Is this a summary account to record' => 'þÉ ÃŠЦÄÓÕÍËÏ×ÉÊ ÒÁÈÕÎÏË ÄÌÑ ÚÁÐÉÓÕ?',
- 'Language' => 'íÏ×Á',
- 'Last Numbers & Default Accounts' => 'ïÓÔÁÎΦ îÏÍÅÒÉ ¦ ôÉÐÏצ òÁÈÕÎËÉ',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Licensed to' => 'ì¦ÃÅÎÚ¦¤À ×ÏÌÏĦ¤:',
- 'Link' => 'ðÏÓÉÌÁÎÎÑ',
- 'Name' => 'îÁÚ×Á',
- 'No' => 'î¦',
- 'No email address for' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ ÄÌÑ',
- 'Number' => 'îÏÍÅÒ',
- 'Number Format' => 'æÏÒÍÁÔ þÉÓÌÁ',
- 'Parts Inventory' => '¶Î×ÅÎÔÁÒ ôÏ×ÁÒ¦×',
- 'Password' => 'ðÁÒÏÌØ',
- 'Payables' => 'úÏÂÏ×ÑÚÁÎÎÑ (ÐÌÁÔ¦ÖΦ)',
- 'Payment' => 'ðÌÁÔ¦Ö',
- 'Phone' => 'ôÅÌ.',
- 'Preferences saved!' => 'îÁÓÔÒÏÊËÉ ÚÂÅÒÅÖÅÎÏ!',
- 'Printer' => 'ðÒÉÎÔÅÒ',
- 'Rate' => 'òÏÚæÎËÁ',
- 'Receivables' => 'îÁÌÅÖÎÏÓÔ¦ (ÄÅÂÉÔÉ)',
- 'Reference' => 'úÓÉÌËÁ',
- 'Retained Earnings' => 'ðÒÉÂÕÔÏË (ÎÅÒÏÚÐÏĦÌÅÎÉÊ)',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Save as new' => 'úÂÅÒÅÇÔÉ ÑË ÎÏ×Å',
- 'Service Items' => 'ðÏÓÌÕÇÉ',
- 'Signature' => 'ð¦ÄÐÉÓ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÎÎÑ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Accounts' => 'ðÏÄÁÔËÏצ òÁÈÕÎËÉ',
- 'Template saved!' => 'ûÁÂÌÏÎ ÚÂÅÒÅÖÅÎÏ',
- 'Transaction reversal enforced for all dates' => 'úÒÏÂÌÅÎÁ ÒÅ×ÅÓÉ×ÎÕ ÚͦÎÁ ÐÒÏ×ÏÄÏË ÄÌÑ ×Ó¦È ÄÁÔ',
- 'Transaction reversal enforced up to' => 'úÒÏÂÌÅÎÁ ÒÅ×ÅÓÉ×ÎÕ ÚͦÎÁ ÐÒÏ×ÏÄÏË ÁÖ ÄÏ',
- 'User' => 'ëÏÒÉÓÔÕ×ÁÞ',
- 'Version' => '÷ÅÒÓ¦Ñ',
- 'Weight Unit' => 'ïÄÉÎÉÃÑ ÷ÁÇÉ',
- 'Yes' => 'Tak',
- 'localhost' => 'localhost',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'îÏ×ÉÊ_ÒÁÈÕÎÏË' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- 'óËÏЦÀ×ÁÔÉ_ÄÏ_ðÌÁÎÕ_òÁÈÕÎ˦×' => 'copy_to_coa',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ' => 'edit',
- '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ_òÁÈÕÎÏË' => 'edit_account',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'úÂÅÒÅÇÔÉ_ÑË_ÎÏ×Å' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ap b/sql-ledger/locale/ua/ap
deleted file mode 100644
index 945a97b..0000000
--- a/sql-ledger/locale/ua/ap
+++ /dev/null
@@ -1,156 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ðÒÏ×ÏÄËÁ ÷ÉÔÒÁÔ',
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÷ÉÔÒÁÔ',
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Amount Due' => 'úÁÐÌÁÔÉÔÉ óÕÍÕ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Transaction' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÕ ÐÒÏ×ÏÄËÕ?',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Cannot delete transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Check' => 'þÅË',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÉ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'Due Date missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÔÅÒͦΠÏÐÌÁÔÉ!',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Paid' => 'úÁÐÌÁÞÅÎÏ',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Postscript' => 'Postscript',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Transaction deleted!' => 'ðÒÏ×ÏÄËÁ ×ÉÄÁÌÅÎÁ',
- 'Transaction posted!' => 'ðÒÏ×ÏÄËÁ ÚĦÊÓÎÅÎÁ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor missing!' => 'ðÏÓÔÁÞÁÌØÎÉË ÎÅ ¦ÓÎÕ¤',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏ×ÏÄËÁ_÷ÉÔÒÁÔ' => 'ap_transaction',
- 'add_ap_transaction' => 'add_ap_transaction',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'edit_ap_transaction' => 'edit_ap_transaction',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'print_and_post' => 'print_and_post',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'vendor_invoice.' => 'vendor_invoice.',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ar b/sql-ledger/locale/ua/ar
deleted file mode 100644
index 800d33c..0000000
--- a/sql-ledger/locale/ua/ar
+++ /dev/null
@@ -1,154 +0,0 @@
-$self{texts} = {
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ äÏÈÏĦ×',
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Amount Due' => 'úÁÐÌÁÔÉÔÉ óÕÍÕ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Transaction' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÕ ÐÒÏ×ÏÄËÕ?',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Cannot delete transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Check' => 'þÅË',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÉ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'Due Date missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÔÅÒͦΠÏÐÌÁÔÉ!',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Paid' => 'úÁÐÌÁÞÅÎÏ',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Postscript' => 'Postscript',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Ship via' => 'ðÏÓÌÁÔÉ ÞÅÒÅÚ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Transaction deleted!' => 'ðÒÏ×ÏÄËÁ ×ÉÄÁÌÅÎÁ',
- 'Transaction posted!' => 'ðÒÏ×ÏÄËÁ ÚĦÊÓÎÅÎÁ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏ×ÏÄËÁ_äÏÈÏĦ×' => 'ar_transaction',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/arap b/sql-ledger/locale/ua/arap
deleted file mode 100644
index 05e7104..0000000
--- a/sql-ledger/locale/ua/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'áÄÒÅÓÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Description' => 'ïÐÉÓ',
- 'Number' => 'îÏÍÅÒ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/arapprn b/sql-ledger/locale/ua/arapprn
deleted file mode 100644
index 7864652..0000000
--- a/sql-ledger/locale/ua/arapprn
+++ /dev/null
@@ -1,29 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Amount' => 'óÕÍÁ',
- 'Check' => 'þÅË',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Date' => 'äÁÔÁ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Postscript' => 'Postscript',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Screen' => 'åËÒÁÎ',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Source' => 'äÖÅÒÅÌÏ',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/bp b/sql-ledger/locale/ua/bp
deleted file mode 100644
index 611af26..0000000
--- a/sql-ledger/locale/ua/bp
+++ /dev/null
@@ -1,44 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Date' => 'äÁÔÁ',
- 'From' => '÷¦Ä/ú',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Reference' => 'úÓÉÌËÁ',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Select all' => '÷ÉÂÒÁÔÉ ×ÓÅ',
- 'To' => 'äÏ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'remove' => 'remove',
- '÷ÉÂÒÁÔÉ_×ÓÅ' => 'select_all',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ca b/sql-ledger/locale/ua/ca
deleted file mode 100644
index 2472379..0000000
--- a/sql-ledger/locale/ua/ca
+++ /dev/null
@@ -1,51 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Chart of Accounts' => 'ðÌÁÎ òÁÈÕÎ˦×',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÉÔ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Description' => 'ïÐÉÓ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'List Transactions' => 'óÐÉÓÏË ðÒÏ×ÏÄÏË',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Reference' => 'úÓÉÌËÁ',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'To' => 'äÏ',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'óÐÉÓÏË_ðÒÏ×ÏÄÏË' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/cp b/sql-ledger/locale/ua/cp
deleted file mode 100644
index 2d19857..0000000
--- a/sql-ledger/locale/ua/cp
+++ /dev/null
@@ -1,75 +0,0 @@
-$self{texts} = {
- 'AP' => '÷ÉÔÒÁÔÉ',
- 'AR' => 'äÏÈÏÄÉ',
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Address' => 'áÄÒÅÓÁ',
- 'All' => '÷Ó¦',
- 'Amount' => 'óÕÍÁ',
- 'Amount Due' => 'úÁÐÌÁÔÉÔÉ óÕÍÕ',
- 'Cannot process payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ÐÒÏ×ÅÓÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ!',
- 'Deposit' => 'äÅÐÏÚÉÔ/÷ËÌÁÄ',
- 'Description' => 'ïÐÉÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoices' => 'òÁÈÕÎËÉ-ÆÁËÔÕÒÉ',
- 'Number' => 'îÏÍÅÒ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Payment' => 'ðÌÁÔ¦Ö',
- 'Payment posted!' => 'ðÌÁÔ¦Ö ×ÉÓÔÁ×ÌÅÎÏ!',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Postscript' => 'Postscript',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ct b/sql-ledger/locale/ua/ct
deleted file mode 100644
index 6d4f459..0000000
--- a/sql-ledger/locale/ua/ct
+++ /dev/null
@@ -1,132 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ðÒÏ×ÏÄËÁ ÷ÉÔÒÁÔ',
- 'AP Transactions' => 'ðÒÏ×ÏÄËÉ ÷ÉÔÒÁÔ',
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ äÏÈÏĦ×',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Customer' => 'îÏ×ÉÊ Ë̦¤ÎÔ',
- 'Add Vendor' => 'îÏ×ÉÊ ÐÏÓÔÁÞÁÌØÎÉË',
- 'Address' => 'áÄÒÅÓÁ',
- 'All' => '÷Ó¦',
- 'Amount' => 'óÕÍÁ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Cannot delete customer!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ Ë̦¤ÎÔÁ',
- 'Cannot delete vendor!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÏÓÔÁÞÁÌØÎÉËÁ!',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer deleted!' => 'ë̦¤ÎÔÁ ×ÉÄÁÌÅÎÏ!',
- 'Customer saved!' => 'ë̦¤ÎÔÁ ÚÂÅÒÅÖÅÎÏ!',
- 'Customers' => 'ë̦¤ÎÔÉ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Discount' => 'óËÉÄËÁ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'Edit Customer' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ë̦¤ÎÔÁ',
- 'Edit Vendor' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÏÓÔÁÞÁÌØÎÉËÁ',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Fax' => 'æÁÈ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Language' => 'íÏ×Á',
- 'Name' => 'îÁÚ×Á',
- 'Name missing!' => 'îÅ ×ËÁÚÁÎÁ ÎÁÚ×Á!',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Number' => 'îÏÍÅÒ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Orphaned' => '÷¦ÄÏËÒÅÍÌÅÎÉÊ/ïÓÉÒÏÔ¦ÌÉÊ',
- 'Phone' => 'ôÅÌ.',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Sales Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Sell Price' => '÷¦ÄÐÕÓËÎÁ ã¦ÎÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'Taxable' => 'ïÐÏÄÁÔËÏ×Õ¤ÔØÓÑ',
- 'Terms' => 'õÍÏ×É: ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Vendor deleted!' => 'ðÏÓÔÁÞÁÌØÎÉË ×ÉÄÁÌÅÎÉÊ',
- 'Vendor saved!' => 'ðÏÓÔÁÞÁÌØÎÉËÁ ÚÂÅÒÅÖÅÎÏ',
- 'Vendors' => 'ðÏÓÔÁÞÁÌØÎÉËÉ',
- 'days' => 'ÄΦ×',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'ðÒÏ×ÏÄËÁ_÷ÉÔÒÁÔ' => 'ap_transaction',
- 'ðÒÏ×ÏÄËÁ_äÏÈÏĦ×' => 'ar_transaction',
- 'îÏ×ÉÊ_Ë̦¤ÎÔ' => 'add_customer',
- 'îÏ×ÉÊ_ÐÏÓÔÁÞÁÌØÎÉË' => 'add_vendor',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'pricelist' => 'pricelist',
- 'ëÕЦ×ÅÌØÎÅ_úÁÍÏ×ÌÅÎÎÑ' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'òÁÈÕÎÏË_ÆÁËÔÕÒÁ' => 'sales_invoice',
- 'ðÒÏÄÁÖÎÁ_îÁËÌÁÄÎÁ' => 'sales_order',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'òÁÈÕÎÏË_ÆÁËÔÕÒÁ' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/gl b/sql-ledger/locale/ua/gl
deleted file mode 100644
index ebc08dd..0000000
--- a/sql-ledger/locale/ua/gl
+++ /dev/null
@@ -1,127 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'ðÒÏ×ÏÄËÁ ÷ÉÔÒÁÔ',
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add General Ledger Transaction' => 'îÏ×Á ÐÒÏ×ÏÄËÁ',
- 'Address' => 'áÄÒÅÓÁ',
- 'All' => '÷Ó¦',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Transaction' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÕ ÐÒÏ×ÏÄËÕ?',
- 'Asset' => 'áËÔÉ×',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Cannot delete transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot post transaction for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÉÔ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'Edit General Ledger Transaction' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏ×ÏÄËÕ çÏÌÏ×Îϧ ëÎÉÇÉ',
- 'Equity' => 'ëÁЦÔÁÌ',
- 'Expense' => '÷ÉÄÁÔËÉ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'GL Transaction' => 'çëðÒÏ×ÏÄËÁ',
- 'General Ledger' => 'çÏÌÏ×ÎÁ ëÎÉÇÁ',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Liability' => 'ðÁÓÓÉ×',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Reference' => 'úÓÉÌËÁ',
- 'Reference missing!' => 'îÅ ×ËÁÚÁÎÁ ÚÓÉÌËÁ!',
- 'Reports' => 'úצÔÉ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'To' => 'äÏ',
- 'Transaction Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ÐÒÏ×ÏÄËÉ',
- 'Transaction deleted!' => 'ðÒÏ×ÏÄËÁ ×ÉÄÁÌÅÎÁ',
- 'Transaction posted!' => 'ðÒÏ×ÏÄËÁ ÚĦÊÓÎÅÎÁ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'Yes' => 'Tak',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏ×ÏÄËÁ_÷ÉÔÒÁÔ' => 'ap_transaction',
- 'ðÒÏ×ÏÄËÁ_äÏÈÏĦ×' => 'ar_transaction',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'çëðÒÏ×ÏÄËÁ' => 'gl_transaction',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'sales_invoice_' => 'sales_invoice_',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/hr b/sql-ledger/locale/ua/hr
deleted file mode 100644
index 6116d76..0000000
--- a/sql-ledger/locale/ua/hr
+++ /dev/null
@@ -1,69 +0,0 @@
-$self{texts} = {
- 'AP' => '÷ÉÔÒÁÔÉ',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Administrator' => 'áÄͦΦÓÔÒÁÔÏÒ',
- 'All' => '÷Ó¦',
- 'Amount' => 'óÕÍÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Expense' => '÷ÉÄÁÔËÉ',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Login' => 'ðÏÞÁÔÏË óÅÁÎÓÕ',
- 'Name' => 'îÁÚ×Á',
- 'Name missing!' => 'îÅ ×ËÁÚÁÎÁ ÎÁÚ×Á!',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Number' => 'îÏÍÅÒ',
- 'Orphaned' => '÷¦ÄÏËÒÅÍÌÅÎÉÊ/ïÓÉÒÏÔ¦ÌÉÊ',
- 'Rate' => 'òÏÚæÎËÁ',
- 'Sales' => 'úÂÕÔ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Save as new' => 'úÂÅÒÅÇÔÉ ÑË ÎÏ×Å',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'User' => 'ëÏÒÉÓÔÕ×ÁÞ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'úÂÅÒÅÇÔÉ_ÑË_ÎÏ×Å' => 'save_as_new',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ic b/sql-ledger/locale/ua/ic
deleted file mode 100644
index e6eca17..0000000
--- a/sql-ledger/locale/ua/ic
+++ /dev/null
@@ -1,221 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Active' => 'áËÔÉ×ÎÉÊ',
- 'Add' => 'îÏ×ÉÊ',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Part' => 'îÏ×ÉÊ ôÏ×ÁÒ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Add Service' => 'îÏ×Á ÐÏÓÌÕÇÁ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÉ',
- 'Assemblies restocked!' => 'ëÏÍÐÌÅËÔÉ ¦Î×ÅÎÔÁÒÉÚÏ×ÁΦ!',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'BOM' => 'BOM',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'COGS' => 'COGS',
- 'Cannot delete item!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÃÅÊ ÅÌÅÍÅÎÔ',
- 'Cannot stock assemblies!' => 'îÅ ÍÏÖÌÉ×Ï ¦Î×ÅÎÔÁÒÉÚÕ×ÁÔÉ ËÏÍÐÌÅËÔÉ!',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Drawing' => 'íÁÌÀÎÏË',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Edit Assembly' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ËÏÍÐÌÅËÔ',
- 'Edit Part' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ôÏ×ÁÒ',
- 'Edit Service' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ÐÏÓÌÕÇÕ',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Expense' => '÷ÉÄÁÔËÉ',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'Image' => 'úÏÂÒÁÖÅÎÎÑ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Individual Items' => '¶ÎÄÉצÄÕÁÌØΦ þÁÓÔÉÎÉ',
- 'Inventory' => '¶Î×ÅÎÔÁÒ',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => 'ë¦ÌØ˦ÓÔØ × ¦Î×ÅÎÔÁÒ¦ ÐÏ×ÉÎÎÁ ÂÕÔÉ ÎÕÌØ, ÐÅÒÛ Î¦Ö ÍÏÖÎÁ ÐÏÚÎÁÞÉÔÉ ËÏÍÐÌÅËÔ ÚÁÓÔÁÒ¦ÌÉÍ!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => 'ë¦ÌØ˦ÓÔØ × ¦Î×ÅÎÔÁÒ¦ ÐÏ×ÉÎÎÁ ÂÕÔÉ ÎÕÌØ, ÐÅÒÛ Î¦Ö ÍÏÖÎÁ ÐÏÚÎÁÞÉÔÉ ÃÉÊ ÔÏ×ÁÒ ÚÁÓÔÁÒ¦ÌÉÍ!',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Item deleted!' => 'ò¦Þ ×ÉÄÁÌÅÎÏ!',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Line Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Link Accounts' => 'ðÏ×ÑÚÁÔÉ òÁÈÕÎËÉ',
- 'List Price' => 'ã¦ÎÁ',
- 'Make' => '÷ÉÒÏÂÎÉÃÔ×Ï',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'Microfiche' => 'í¦ËÒÏƦÛÁ',
- 'Model' => 'íÏÄÅÌØ',
- 'Name' => 'îÁÚ×Á',
- 'No.' => 'No.',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'Obsolete' => 'úÁÓÔÁÒ¦ÌÅ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'On Hand' => 'îÁ òÕËÁÈ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Orphaned' => '÷¦ÄÏËÒÅÍÌÅÎÉÊ/ïÓÉÒÏÔ¦ÌÉÊ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Parts' => 'ÔÏ×ÁÒÉ',
- 'Phone' => 'ôÅÌ.',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'ROP' => 'ROP',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Save as new' => 'úÂÅÒÅÇÔÉ ÑË ÎÏ×Å',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Sell Price' => '÷¦ÄÐÕÓËÎÁ ã¦ÎÁ',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Services' => 'ðÏÓÌÕÇÉ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Short' => 'óËÏÒÏÞÅÎÏ',
- 'Stock Assembly' => '¶Î×ÅÎÔÁÒ ëÏÍÐÌÅËÔÕ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'To' => 'äÏ',
- 'Top Level' => '÷ÅÒÈÎ¦Ê ò¦×ÅÎØ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Unit of measure' => 'ïÄÉÎÉÃÑ ×ÉͦÒÕ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Updated' => 'ðÏÎÏ×ÌÅÎÏ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'Weight' => '÷ÁÇÁ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'days' => 'ÄΦ×',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'îÏ×ÙÊ_ËÏÍÐÌÅËÔ' => 'add_assembly',
- 'add_labor/overhead' => 'add_labor/overhead',
- 'îÏ×ÉÊ_ôÏ×ÁÒ' => 'add_part',
- 'îÏ×Á_ÐÏÓÌÕÇÁ' => 'add_service',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ_ËÏÍÐÌÅËÔ' => 'edit_assembly',
- '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ_ôÏ×ÁÒ' => 'edit_part',
- '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ_ÐÏÓÌÕÇÕ' => 'edit_service',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'úÂÅÒÅÇÔÉ_ÑË_ÎÏ×Å' => 'save_as_new',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/io b/sql-ledger/locale/ua/io
deleted file mode 100644
index 501a877..0000000
--- a/sql-ledger/locale/ua/io
+++ /dev/null
@@ -1,107 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'No.' => 'No.',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Phone' => 'ôÅÌ.',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'To' => 'äÏ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ir b/sql-ledger/locale/ua/ir
deleted file mode 100644
index c2877cf..0000000
--- a/sql-ledger/locale/ua/ir
+++ /dev/null
@@ -1,184 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Add Vendor Invoice' => 'îÏ×ÉÊ ëÕЦ×ÅÌØÎÉÊ òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Invoice Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÉÊ ÒÁÈÕÎÏË?',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Cannot post invoice for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Edit Vendor Invoice' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÕЦ×ÅÌØÎÉÊ òÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice deleted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÄÁÌÅÎÉÊ!',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Language' => 'íÏ×Á',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'No.' => 'No.',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Phone' => 'ôÅÌ.',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Record in' => '÷ÎÅÓÔÉ ×',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor missing!' => 'ðÏÓÔÁÞÁÌØÎÉË ÎÅ ¦ÓÎÕ¤',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'Yes' => 'Tak',
- 'ea' => 'ÛÔ.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'ëÕЦ×ÅÌØÎÅ_úÁÍÏ×ÌÅÎÎÑ' => 'purchase_order',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/is b/sql-ledger/locale/ua/is
deleted file mode 100644
index b113b27..0000000
--- a/sql-ledger/locale/ua/is
+++ /dev/null
@@ -1,193 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Invoice' => 'îÏ×ÉÊ òÁÈÕÎÏ-ÆÁËÔÕÒÁ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Invoice Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÉÊ ÒÁÈÕÎÏË?',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Cannot post invoice for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Edit Sales Invoice' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ òÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice deleted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÄÁÌÅÎÉÊ!',
- 'Invoice posted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÓÔÁ×ÌÅÎÉÊ',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'No.' => 'No.',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Phone' => 'ôÅÌ.',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Record in' => '÷ÎÅÓÔÉ ×',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Ship via' => 'ðÏÓÌÁÔÉ ÞÅÒÅÚ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'Yes' => 'Tak',
- 'ea' => 'ÛÔ.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'åÌ._ÐÏÛÔÁ' => 'e_mail',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'print_and_post' => 'print_and_post',
- 'ðÒÏÄÁÖÎÁ_îÁËÌÁÄÎÁ' => 'sales_order',
- 'ðÏÓÌÁÔÉ_ÄÏ' => 'ship_to',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/login b/sql-ledger/locale/ua/login
deleted file mode 100644
index ebe6cb4..0000000
--- a/sql-ledger/locale/ua/login
+++ /dev/null
@@ -1,22 +0,0 @@
-$self{texts} = {
- 'Company' => 'ð¦ÄÐÒɤÍÓÔ×Ï',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Incorrect Dataset version!' => 'îÅצÒÎÁ ×ÅÒÓ¦Ñ âÁÚÉ äÁÎÉÈ!',
- 'Incorrect Password!' => 'îÅצÒÎÉÊ ðÁÒÏÌØ!',
- 'Login' => 'ðÏÞÁÔÏË óÅÁÎÓÕ',
- 'Name' => 'îÁÚ×Á',
- 'Password' => 'ðÁÒÏÌØ',
- 'Version' => '÷ÅÒÓ¦Ñ',
- 'You did not enter a name!' => 'îÅ ××ÅÄÅÎÏ ÎÁÚ×Õ',
- 'is not a member!' => 'ÎÅ ¤ ÞÌÅÎÏÍ',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'ðÏÞÁÔÏË_óÅÁÎÓÕ' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/menu b/sql-ledger/locale/ua/menu
deleted file mode 100644
index 67d65a1..0000000
--- a/sql-ledger/locale/ua/menu
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'AP' => '÷ÉÔÒÁÔÉ',
- 'AP Aging' => 'AP Aging (×ÉÔÒÁÔÉ)',
- 'AP Transaction' => 'ðÒÏ×ÏÄËÁ ÷ÉÔÒÁÔ',
- 'AR' => 'äÏÈÏÄÉ',
- 'AR Aging' => 'AR Aging (ÄÏÈÏÄÉ)',
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Account' => 'îÏ×ÉÊ ÒÁÈÕÎÏË',
- 'Add Assembly' => 'îÏ×ÙÊ ËÏÍÐÌÅËÔ',
- 'Add Customer' => 'îÏ×ÉÊ Ë̦¤ÎÔ',
- 'Add GIFI' => 'îÏ×ÉÊ GIFI',
- 'Add Part' => 'îÏ×ÉÊ ôÏ×ÁÒ',
- 'Add Project' => 'îÏ×ÉÊ ðÒÏÅËÔ',
- 'Add Service' => 'îÏ×Á ÐÏÓÌÕÇÁ',
- 'Add Transaction' => 'îÏ×Á ÐÒÏ×ÏÄËÁ',
- 'Add Vendor' => 'îÏ×ÉÊ ÐÏÓÔÁÞÁÌØÎÉË',
- 'Assemblies' => 'ëÏÍÐÌÅËÔÉ',
- 'Audit Control' => 'ëÏÎÔÒÏÌØ',
- 'Backup' => 'òÅÚÅÒ×ÎÁ ËÏЦÑ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Chart of Accounts' => 'ðÌÁÎ òÁÈÕÎ˦×',
- 'Check' => 'þÅË',
- 'Customers' => 'ë̦¤ÎÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'General Ledger' => 'çÏÌÏ×ÎÁ ëÎÉÇÁ',
- 'Goods & Services' => 'ôÏ×ÁÒÉ ¦ ðÏÓÌÕÇÉ',
- 'HTML Templates' => 'HTML ûÁÂÌÏÎÉ ',
- 'Income Statement' => 'ú×¦Ô ÐÒÏ ÄÏÈÏÄÉ ¦ ×ÉÄÁÔËÉ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'LaTeX Templates' => 'LaTeX ûÁÂÌÏÎÉ',
- 'Language' => 'íÏ×Á',
- 'List Accounts' => 'óÐÉÓÏË òÁÈÕÎ˦×',
- 'List GIFI' => 'óÐÉÓÏË GIFI',
- 'Logout' => 'ë¦ÎÅÃØ óÅÁÎÓÕ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order Entry' => '÷ÉÓÔÁ×ÌÅÎÎÑ úÁÍÏ×ÌÅÎÎÑ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Parts' => 'ÔÏ×ÁÒÉ',
- 'Payment' => 'ðÌÁÔ¦Ö',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Preferences' => 'îÁÓÔÒÏÊËÉ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Projects' => 'ðÒÏÅËÔÉ',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Reconciliation' => 'õÚÇÏÄÖÅÎÎÑ',
- 'Reports' => 'úצÔÉ',
- 'Sales Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Save to File' => 'úÂÅÒÅÇÔÉ Õ æÁÊ̦',
- 'Send by E-Mail' => '÷ÉÓÌÁÔÉ ÐÏ ÅÌ. ÐÏÛÔ¦',
- 'Services' => 'ðÏÓÌÕÇÉ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Statement' => 'úצÔ',
- 'Stock Assembly' => '¶Î×ÅÎÔÁÒ ëÏÍÐÌÅËÔÕ',
- 'Stylesheet' => 'ïÆÏÒÍÌÅÎÎÎÑ',
- 'System' => 'óÉÓÔÅÍÁ',
- 'Tax collected' => 'ðÏÄÁÔÏË Ú¦ÂÒÁÎÏ',
- 'Tax paid' => 'ðÏÄÁÔÏË ÚÁÐÌÁÞÅÎÏ',
- 'Transactions' => 'ðÒÏ×ÏÄËÉ',
- 'Trial Balance' => 'ðÒÏÂÎÉÊ âÁÌÁÎÓ',
- 'Vendor Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Vendors' => 'ðÏÓÔÁÞÁÌØÎÉËÉ',
- 'Version' => '÷ÅÒÓ¦Ñ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/oe b/sql-ledger/locale/ua/oe
deleted file mode 100644
index 1fac96b..0000000
--- a/sql-ledger/locale/ua/oe
+++ /dev/null
@@ -1,232 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Invoice' => 'îÏ×ÉÊ òÁÈÕÎÏ-ÆÁËÔÕÒÁ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Add Vendor Invoice' => 'îÏ×ÉÊ ëÕЦ×ÅÌØÎÉÊ òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Order Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÅ ÚÁÍÏ×ÌÅÎÎÑ?',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'C' => 'ó',
- 'Cannot delete order!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÚÁÍÏ×ÌÅÎÎÑ!',
- 'Cannot save order!' => 'îÅ ÍÏÖÌÉ×Ï ÚÂÅÒÅÇÔÉ ÚÁÍÏ×ÌÅÎÎÑ!',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Done' => 'úÒÏÂÌÅÎÏ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Edit Purchase Order' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Edit Sales Order' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏÄÁÖÎÕ îÁËÌÁÄÎÕ',
- 'Employee' => 'ðÒÁæ×ÎÉË',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'No.' => 'No.',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'O' => 'ï',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Date' => 'äÁÔÁ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order deleted!' => 'úÁÍÏ×ÌÅÎÎÑ ×ÉÄÁÌÅÎÏ!',
- 'Order saved!' => 'úÁÍÏ×ÌÅÎÎÑ ÚÂÅÒÅÖÅÎÏ!',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Phone' => 'ôÅÌ.',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Purchase Orders' => 'ëÕЦ×ÅÌØΦ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Sales Orders' => 'ðÒÏÄÁÖΦ îÁËÌÁÄΦ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Save as new' => 'úÂÅÒÅÇÔÉ ÑË ÎÏ×Å',
- 'Screen' => 'åËÒÁÎ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Ship via' => 'ðÏÓÌÁÔÉ ÞÅÒÅÚ',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'Terms' => 'õÍÏ×É: ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Vendor missing!' => 'ðÏÓÔÁÞÁÌØÎÉË ÎÅ ¦ÓÎÕ¤',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'Yes' => 'Tak',
- 'days' => 'ÄΦ×',
- 'ea' => 'ÛÔ.',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'úÒÏÂÌÅÎÏ' => 'done',
- 'åÌ._ÐÏÛÔÁ' => 'e_mail',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'print_and_save' => 'print_and_save',
- 'ëÕЦ×ÅÌØÎÅ_úÁÍÏ×ÌÅÎÎÑ' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'òÁÈÕÎÏË_ÆÁËÔÕÒÁ' => 'sales_invoice',
- 'ðÒÏÄÁÖÎÁ_îÁËÌÁÄÎÁ' => 'sales_order',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'úÂÅÒÅÇÔÉ_ÑË_ÎÏ×Å' => 'save_as_new',
- 'ðÏÓÌÁÔÉ_ÄÏ' => 'ship_to',
- 'transfer' => 'transfer',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'òÁÈÕÎÏË_ÆÁËÔÕÒÁ' => 'vendor_invoice',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/pe b/sql-ledger/locale/ua/pe
deleted file mode 100644
index 4ce1f24..0000000
--- a/sql-ledger/locale/ua/pe
+++ /dev/null
@@ -1,59 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Add Project' => 'îÏ×ÉÊ ðÒÏÅËÔ',
- 'All' => '÷Ó¦',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'Edit Project' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ ðÒÏÅËÔ',
- 'Language' => 'íÏ×Á',
- 'Number' => 'îÏÍÅÒ',
- 'Orphaned' => '÷¦ÄÏËÒÅÍÌÅÎÉÊ/ïÓÉÒÏÔ¦ÌÉÊ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÐÒÏÅËÔÕ!',
- 'Project deleted!' => 'ðÒÏÅËÔ ×ÉÄÁÌÅÎÏ!',
- 'Project saved!' => 'ðÒÏÅËÔ ÚÂÅÒÅÖÅÎÏ!',
- 'Projects' => 'ðÒÏÅËÔÉ',
- 'Save' => 'úÂÅÒÅÇÔÉ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'îÏ×ÉÊ_ðÒÏÅËÔ' => 'add_project',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'úÂÅÒÅÇÔÉ' => 'save',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/pos b/sql-ledger/locale/ua/pos
deleted file mode 100644
index 903340f..0000000
--- a/sql-ledger/locale/ua/pos
+++ /dev/null
@@ -1,56 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Description' => 'ïÐÉÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'From' => '÷¦Ä/ú',
- 'Language' => 'íÏ×Á',
- 'Number' => 'îÏÍÅÒ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Paid' => 'úÁÐÌÁÞÅÎÏ',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Price' => 'ã¦ÎÁ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Record in' => '÷ÎÅÓÔÉ ×',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Screen' => 'åËÒÁÎ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/ps b/sql-ledger/locale/ua/ps
deleted file mode 100644
index a1f9289..0000000
--- a/sql-ledger/locale/ua/ps
+++ /dev/null
@@ -1,277 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'AP Aging (×ÉÔÒÁÔÉ)',
- 'AR Aging' => 'AR Aging (ÄÏÈÏÄÉ)',
- 'AR Transaction' => 'ðÒÏ×ÏÄËÁ äÏÈÏĦ×',
- 'AR Transactions' => 'ðÒÏ×ÏÄËÉ äÏÈÏĦ×',
- 'Account' => 'òÁÈÕÎÏË',
- 'Account Number' => 'îÏÍÅÒ òÁÈÕÎËÕ',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Accounts' => 'òÁÈÕÎËÉ',
- 'Add Purchase Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ËÕЦ×ÌÀ',
- 'Add Sales Invoice' => 'îÏ×ÉÊ òÁÈÕÎÏ-ÆÁËÔÕÒÁ',
- 'Add Sales Order' => 'îÏ×Å ÚÁÍÏ×ÌÅÎÎÑ ÎÁ ÐÒÏÄÁÖ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Amount Due' => 'úÁÐÌÁÔÉÔÉ óÕÍÕ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Are you sure you want to delete Invoice Number' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÉÊ ÒÁÈÕÎÏË?',
- 'Are you sure you want to delete Transaction' => '÷É ÐÅ×Φ, ÝÏ ÈÏÞÅÔÅ ×ÉÄÁÌÉÔÉ ÄÁÎÕ ÐÒÏ×ÏÄËÕ?',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Bin' => 'Bin',
- 'Cannot delete invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Cannot delete transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÄÁÌÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cannot post invoice for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post invoice!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÒÁÈÕÎÏË-ÆÁËÔÕÒÕ!',
- 'Cannot post payment for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÌÁÔ¦Ö ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction for a closed period!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ ÄÌÑ ÚÁËÒÉÔÏÇÏ ÐÅÒ¦ÏÄÕ!',
- 'Cannot post transaction!' => 'îÅ ÍÏÖÌÉ×Ï ×ÉÓÔÁ×ÉÔÉ ÐÒÏ×ÏÄËÕ!',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Check' => 'þÅË',
- 'Closed' => 'úÁËÒÉÔÏ',
- 'Compare to' => 'ðÏÒ¦×ÎÑÔÉ Ú',
- 'Confirm!' => 'ð¦ÄÔ×ÅÒĦÔØ!',
- 'Contact' => 'ëÏÎÔÁËÔÎÁ ÏÓÏÂÁ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Credit Limit' => 'ì¦Í¦Ô ËÒÅÄÉÔÕ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Currency' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer missing!' => 'îÅ ×ËÁÚÁÎÉÊ Ë̦¤ÎÔ!',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Date Paid' => 'äÁÔÁ ÏÐÌÁÔÉ',
- 'Debit' => 'äÅÂÉÔ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Decimalplaces' => 'äÅÓÑÔÉÞΦ ͦÓÃÑ',
- 'Delete' => '÷ÉÄÁÌÉÔÉ',
- 'Delivery Date' => 'äÁÔÁ ÄÏÓÔÁ×ËÉ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'Due Date missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÔÅÒͦΠÏÐÌÁÔÉ!',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail Statement to' => 'ðÏÓÌÁÔÉ ÐÏ ÅÌ. ÐÏÛÔ¦ ÄÏ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Edit Sales Invoice' => '÷¦ÄÒÅÄÁÇÕ×ÁÔÉ òÁÈÕÎÏË-ÆÁËÔÕÒÕ',
- 'Exch' => 'ëÕÒÓ',
- 'Exchange Rate' => 'ëÕÒÓ ×ÁÌÀÔÉ',
- 'Exchange rate for payment missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ ÄÌÑ ÐÌÁÔÅÖÕ!',
- 'Exchange rate missing!' => 'îÅ ×ËÁÚÁÎÉÊ ËÕÒÓ ×ÁÌÀÔÉ!',
- 'Extended' => 'ðÒÏÄÏ×ÖÅÎÏ',
- 'Fax' => 'æÁÈ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'Heading' => 'òÏÚĦÌ',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Income Statement' => 'ú×¦Ô ÐÒÏ ÄÏÈÏÄÉ ¦ ×ÉÄÁÔËÉ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Invoice Date' => 'äÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ',
- 'Invoice Date missing!' => 'îÅ ×ËÁÚÁÎÁ ÄÁÔÁ ×ÉÓÔÁ×ÌÅÎÎÑ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number' => 'îÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ ÒÁÈÕÎËÁ-ÆÁËÔÕÒÉ',
- 'Invoice deleted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÄÁÌÅÎÉÊ!',
- 'Invoice posted!' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ ×ÉÓÔÁ×ÌÅÎÉÊ',
- 'Item not on file!' => 'òÅÞ¦ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Language' => 'íÏ×Á',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'N/A' => 'îÅ óÔÏÓÕ¤ÔØÓÑ',
- 'No.' => 'No.',
- 'Notes' => 'ðÒÉͦÔËÉ',
- 'Nothing selected!' => 'î¦ÞÏÇÏ ÎÅ ×ÉÂÒÁÎÏ!',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Number missing in Row' => 'îÅ ×ËÁÚÁÎÉÊ ÎÏÍÅÒ Õ ÒÑÄËÕ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Open' => '÷¦ÄËÒÉÔÏ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'Order Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ úÁÍÏ×ÌÅÎÎÑ!',
- 'Order Number' => 'îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'Order Number missing!' => 'îÅ ×ËÁÚÁÎÏ îÏÍÅÒ úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Packing List' => 'ðÁËÕ×ÁÌØÎÉÊ óÐÉÓÏË',
- 'Packing List Date missing!' => 'îÅ ×ËÁÚÁÎÁ äÁÔÁ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Packing List Number missing!' => 'îÅ ×ËÁÚÁÎÉÊ îÏÍÅÒ ðÁËÕ×ÁÌØÎÏÇÏ óÐÉÓÏËÕ',
- 'Paid' => 'úÁÐÌÁÞÅÎÏ',
- 'Part' => 'ôÏ×ÁÒ',
- 'Payment date missing!' => 'îÅ ×ËÁÚÁÎÏ ÄÁÔÕ ðÌÁÔÅÖÕ!',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Phone' => 'ôÅÌ.',
- 'Post' => '÷ÉÓÔÁ×ÉÔÉ',
- 'Post as new' => '÷ÉÓÔÁ×ÉÔÉ ÑË ÎÏ×ÉÊ',
- 'Postscript' => 'Postscript',
- 'Price' => 'ã¦ÎÁ',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Purchase Order' => 'ëÕЦ×ÅÌØÎÅ úÁÍÏ×ÌÅÎÎÑ',
- 'Qty' => 'ë¦ÌØ˦ÓÔØ',
- 'Recd' => 'ïÔÒÉÍÁÎÏ',
- 'Receipt' => 'ë×ÉÔÁÎæÑ',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Record in' => '÷ÎÅÓÔÉ ×',
- 'Remaining' => 'úÁÌÉÛÉÌÏÓØ',
- 'Report for' => 'ú×¦Ô ÄÌÑ',
- 'Required by' => 'ôÅÒͦΠÄÏÓÔÁ×ËÉ',
- 'Sales Order' => 'ðÒÏÄÁÖÎÁ îÁËÌÁÄÎÁ',
- 'Screen' => 'åËÒÁÎ',
- 'Select all' => '÷ÉÂÒÁÔÉ ×ÓÅ',
- 'Select from one of the items below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÒÅÞÅÊ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Service' => 'ðÏÓÌÕÇÁ',
- 'Ship' => 'ðÏÓÌÁÔÉ',
- 'Ship to' => 'ðÏÓÌÁÔÉ ÄÏ',
- 'Ship via' => 'ðÏÓÌÁÔÉ ÞÅÒÅÚ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Standard' => 'óÔÁÎÄÁÒÔΦ',
- 'Statement' => 'úצÔ',
- 'Statement sent to' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ',
- 'Statements sent to printer!' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ ðÒÉÎÔÅÒÁ!',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax Included' => 'ðÏÄÁÔÏË ×ËÌÀÞÅÎÏ',
- 'Tax collected' => 'ðÏÄÁÔÏË Ú¦ÂÒÁÎÏ',
- 'Tax paid' => 'ðÏÄÁÔÏË ÚÁÐÌÁÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Transaction deleted!' => 'ðÒÏ×ÏÄËÁ ×ÉÄÁÌÅÎÁ',
- 'Transaction posted!' => 'ðÒÏ×ÏÄËÁ ÚĦÊÓÎÅÎÁ',
- 'Trial Balance' => 'ðÒÏÂÎÉÊ âÁÌÁÎÓ',
- 'Unit' => 'ïÄÉÎÉÃÑ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'What type of item is this?' => 'ñËÉÊ ÃÅ ×ÉÄ/ÔÉÐ ÔÏ×ÁÒÕ',
- 'Yes' => 'Tak',
- 'as at' => 'ÑË ×',
- 'ea' => 'ÛÔ.',
- 'for Period' => 'ÚÁ ðÅÒ¦ÏÄ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'ðÒÏ×ÏÄËÁ_äÏÈÏĦ×' => 'ar_transaction',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- '÷ÉÄÁÌÉÔÉ' => 'delete',
- 'åÌ._ÐÏÛÔÁ' => 'e_mail',
- '÷ÉÓÔÁ×ÉÔÉ' => 'post',
- '÷ÉÓÔÁ×ÉÔÉ_ÑË_ÎÏ×ÉÊ' => 'post_as_new',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- 'print_and_post' => 'print_and_post',
- 'sales_invoice.' => 'sales_invoice.',
- 'ðÒÏÄÁÖÎÁ_îÁËÌÁÄÎÁ' => 'sales_order',
- '÷ÉÂÒÁÔÉ_×ÓÅ' => 'select_all',
- 'ðÏÓÌÁÔÉ_ÄÏ' => 'ship_to',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
- 'tak' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/pw b/sql-ledger/locale/ua/pw
deleted file mode 100644
index 0f30e13..0000000
--- a/sql-ledger/locale/ua/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Password' => 'ðÁÒÏÌØ',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/rc b/sql-ledger/locale/ua/rc
deleted file mode 100644
index baa5bec..0000000
--- a/sql-ledger/locale/ua/rc
+++ /dev/null
@@ -1,65 +0,0 @@
-$self{texts} = {
- 'Account' => 'òÁÈÕÎÏË',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Date' => 'äÁÔÁ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Deposit' => 'äÅÐÏÚÉÔ/÷ËÌÁÄ',
- 'Description' => 'ïÐÉÓ',
- 'Difference' => 'ò¦ÚÎÉÃÑ',
- 'Done' => 'úÒÏÂÌÅÎÏ',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Out of balance!' => 'îÅ ÚÂÁÌÁÎÓÏ×ÁÎÏ!',
- 'Payment' => 'ðÌÁÔ¦Ö',
- 'Reconciliation' => 'õÚÇÏÄÖÅÎÎÑ',
- 'Select all' => '÷ÉÂÒÁÔÉ ×ÓÅ',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Statement Balance' => 'âÁÌÁÎÓÏ×ÉÊ úצÔ',
- 'To' => 'äÏ',
- 'Update' => 'ðÏÎÏ×ÉÔÉ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- 'úÒÏÂÌÅÎÏ' => 'done',
- '÷ÉÂÒÁÔÉ_×ÓÅ' => 'select_all',
- 'ðÏÎÏ×ÉÔÉ' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ua/rp b/sql-ledger/locale/ua/rp
deleted file mode 100644
index 3fbc5ca..0000000
--- a/sql-ledger/locale/ua/rp
+++ /dev/null
@@ -1,146 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'AP Aging (×ÉÔÒÁÔÉ)',
- 'AR Aging' => 'AR Aging (ÄÏÈÏÄÉ)',
- 'Account' => 'òÁÈÕÎÏË',
- 'Account Number' => 'îÏÍÅÒ òÁÈÕÎËÕ',
- 'Accounting Menu' => 'íÅÎÀ ïÂ̦ËÕ',
- 'Accounts' => 'òÁÈÕÎËÉ',
- 'Address' => 'áÄÒÅÓÁ',
- 'Amount' => 'óÕÍÁ',
- 'Apr' => 'ËצÔÎÑ',
- 'April' => 'ëצÔÅÎØ',
- 'Attachment' => 'äÏÄÁÔÏË',
- 'Aug' => 'ÓÅÒÐÎÑ',
- 'August' => 'óÅÒÐÅÎØ',
- 'Balance' => 'âÁÌÁÎÓ',
- 'Balance Sheet' => 'âÁÌÁÎÓ',
- 'Bcc' => 'ðÒÉ×ÁÔÎÁ ËÏÐ¦Ñ ÄÏ',
- 'Cash' => 'çÏÔ¦×ËÁ',
- 'Cc' => 'ëÏÐ¦Ñ ÄÏ',
- 'Compare to' => 'ðÏÒ¦×ÎÑÔÉ Ú',
- 'Continue' => 'ðÒÏÄÏ×ÖÉÔÉ',
- 'Copies' => 'ëÏЦÊ',
- 'Credit' => 'ëÒÅÄÉÔ',
- 'Curr' => '÷ÁÌÀÔÁ',
- 'Current' => 'ðÏÔÏÞÎÉÊ',
- 'Customer' => 'ë̦¤ÎÔ',
- 'Customer not on file!' => 'ë̦¤ÎÔÁ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Date' => 'äÁÔÁ',
- 'Debit' => 'äÅÂÉÔ',
- 'Dec' => 'ÇÒÕÄÎÑ',
- 'December' => 'çÒÕÄÅÎØ',
- 'Decimalplaces' => 'äÅÓÑÔÉÞΦ ͦÓÃÑ',
- 'Description' => 'ïÐÉÓ',
- 'Due Date' => 'úÁÐÌÁÔÉÔÉ ÄÏ',
- 'E-mail' => 'åÌ. ÐÏÛÔÁ',
- 'E-mail Statement to' => 'ðÏÓÌÁÔÉ ÐÏ ÅÌ. ÐÏÛÔ¦ ÄÏ',
- 'E-mail address missing!' => 'îÅ ×ËÁÚÁÎÁ ÁÄÒÅÓÁ ÅÌ. ÐÏÛÔÉ!',
- 'Feb' => 'ÌÀÔÏÇÏ',
- 'February' => 'ìÀÔÉÊ',
- 'From' => '÷¦Ä/ú',
- 'GIFI' => 'GIFI',
- 'Heading' => 'òÏÚĦÌ',
- 'ID' => '¶ÄÅÎÔÉƦËÁæÊÎÉÊ ÎÏÍÅÒ',
- 'In-line' => '÷ËÌÀÞÅÎÏ (In-line)',
- 'Include in Report' => 'äÏÄÁÔÉ ÄÏ úצÔÕ',
- 'Income Statement' => 'ú×¦Ô ÐÒÏ ÄÏÈÏÄÉ ¦ ×ÉÄÁÔËÉ',
- 'Invoice' => 'òÁÈÕÎÏË-ÆÁËÔÕÒÁ',
- 'Jan' => 'Ó¦ÞÎÑ',
- 'January' => 'Ó¦ÞÅÎØ',
- 'Jul' => 'ÌÉÐÎÑ',
- 'July' => 'ìÉÐÅÎØ',
- 'Jun' => 'ÞÅÒ×ÎÑ',
- 'June' => 'þÅÒ×ÅÎØ',
- 'Language' => 'íÏ×Á',
- 'Mar' => 'ÂÅÒÅÚÎÑ',
- 'March' => 'âÅÒÅÚÅÎØ',
- 'May' => 'ÔÒÁ×ÎÑ',
- 'May ' => 'ôÒÁ×ÅÎØ',
- 'Message' => 'ðÏצÄÏÍÌÅÎÎÑ',
- 'N/A' => 'îÅ óÔÏÓÕ¤ÔØÓÑ',
- 'Nothing selected!' => 'î¦ÞÏÇÏ ÎÅ ×ÉÂÒÁÎÏ!',
- 'Nov' => 'ÌÉÓÔÏÐÁÄÁ',
- 'November' => 'ìÉÓÔÏÐÁÄ',
- 'Number' => 'îÏÍÅÒ',
- 'Oct' => 'ÖÏ×ÔÎÑ',
- 'October' => 'öÏ×ÔÅÎØ',
- 'Order' => 'úÁÍÏ×ÌÅÎÎÑ',
- 'PDF' => 'PDF ÆÁÊÌ ÆÏÒÍÁÔ',
- 'Payments' => 'ðÌÁÔÅÖ¦',
- 'Postscript' => 'Postscript',
- 'Print' => 'îÁÄÒÕËÕ×ÁÔÉ',
- 'Project' => 'ðÒÏÅËÔ',
- 'Project not on file!' => 'ðÒÏÅËÔÕ ÎÅÍÁ × ÓÐÉÓËÕ!',
- 'Receipts' => 'ë×ÉÔÁÎæ§',
- 'Report for' => 'ú×¦Ô ÄÌÑ',
- 'Screen' => 'åËÒÁÎ',
- 'Select all' => '÷ÉÂÒÁÔÉ ×ÓÅ',
- 'Select from one of the names below' => '÷ÉÂÅÒ¦ÔØ ÏÄÎÕ ¦Ú ÎÁÓÔÕÐÎÉÈ ÎÁÚ×',
- 'Select from one of the projects below' => '÷ÉÂÅÒ¦ÔØ ÏÄÉÎ ¦Ú ÎÁÓÔÕÐÎÉÈ ÐÒÏÅËÔ¦×',
- 'Select postscript or PDF!' => '÷ÉÂÅÒ¦ÔØ postscript ÁÂÏ PDF',
- 'Sep' => '×ÅÒÅÓÎÑ',
- 'September' => '÷ÅÒÅÓÅÎØ',
- 'Source' => 'äÖÅÒÅÌÏ',
- 'Standard' => 'óÔÁÎÄÁÒÔΦ',
- 'Statement' => 'úצÔ',
- 'Statement sent to' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ',
- 'Statements sent to printer!' => 'ú×¦Ô ÐÏÓÌÁÎÏ ÄÏ ðÒÉÎÔÅÒÁ!',
- 'Subject' => 'ôÅÍÁ',
- 'Subtotal' => 'ð¦ÄÓÕÍÏË ÐÏ ÒÏÚĦÌÕ',
- 'Tax' => 'ðÏÄÁÔÏË',
- 'Tax collected' => 'ðÏÄÁÔÏË Ú¦ÂÒÁÎÏ',
- 'Tax paid' => 'ðÏÄÁÔÏË ÚÁÐÌÁÞÅÎÏ',
- 'To' => 'äÏ',
- 'Total' => 'úÁÇÁÌØÎÁ óÕÍÁ',
- 'Trial Balance' => 'ðÒÏÂÎÉÊ âÁÌÁÎÓ',
- 'Vendor' => 'ðÏÓÔÁÞÁÌØÎÉË',
- 'Vendor not on file!' => 'ðÏÔÁÞÁÌØÎÉËÁ ÎÅÍÁ Õ ÓÐÉÓËÕ ',
- 'as at' => 'ÑË ×',
- 'for Period' => 'ÚÁ ðÅÒ¦ÏÄ',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'ðÒÏÄÏ×ÖÉÔÉ' => 'continue',
- 'åÌ._ÐÏÛÔÁ' => 'e_mail',
- 'îÁÄÒÕËÕ×ÁÔÉ' => 'print',
- '÷ÉÂÒÁÔÉ_×ÓÅ' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/COPYING b/sql-ledger/locale/ve/COPYING
deleted file mode 100644
index 11c55f3..0000000
--- a/sql-ledger/locale/ve/COPYING
+++ /dev/null
@@ -1,23 +0,0 @@
-######################################################################
-# SQL-Ledger, Accounting Software
-# Copyright (c) 2001
-#
-# Spanish Texts (Venezuela):
-#
-# Author: John Stoddart <jstypo@imagencolor.com.ve>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-#######################################################################
-
diff --git a/sql-ledger/locale/ve/LANGUAGE b/sql-ledger/locale/ve/LANGUAGE
deleted file mode 100644
index 1e062f8..0000000
--- a/sql-ledger/locale/ve/LANGUAGE
+++ /dev/null
@@ -1 +0,0 @@
-Spanish (Venezuela)
diff --git a/sql-ledger/locale/ve/admin b/sql-ledger/locale/ve/admin
deleted file mode 100644
index efccb35..0000000
--- a/sql-ledger/locale/ve/admin
+++ /dev/null
@@ -1,141 +0,0 @@
-$self{texts} = {
- 'Access Control' => 'Control de Acceso',
- 'Accounting' => 'Contabilidad',
- 'Add User' => 'Agregar Usuario',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'All Datasets up to date!' => 'Bases de Datos actualizadas!',
- 'Cannot create Lock!' => '¡No se puede crear Bloqueo!',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Conjunto de Caracteres',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Company' => 'Compañía',
- 'Connect to' => 'Conectarse a',
- 'Continue' => 'Continuar',
- 'Create Chart of Accounts' => 'Crear Plan de Cuentas',
- 'Create Dataset' => 'Crear Base de Datos',
- 'DBI not installed!' => '¡DBI no se encuentra instalado!',
- 'Database' => 'Base de Datos',
- 'Database Administration' => 'Administración de Base de Datos',
- 'Database Driver not checked!' => 'No se pudo verificar el Manejador de la Base de Datos',
- 'Database User missing!' => '¡Falta Usuario de la Base de Datos',
- 'Dataset' => 'Base de Datos',
- 'Dataset missing!' => '¡Falta Base de Datos!',
- 'Dataset updated!' => '¡Base de Datos actualizada!',
- 'Date Format' => 'Formato de Fecha',
- 'Delete' => 'Borrar',
- 'Delete Dataset' => 'Borrar Base de Datos',
- 'Directory' => 'Directorio',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Límite de Menú desplagable',
- 'E-mail' => 'E-mail',
- 'Edit User' => 'Editar Usuario',
- 'Existing Datasets' => 'Bases de Datos Existentes',
- 'Fax' => 'Fax',
- 'Host' => 'Servidor de Base de Datos',
- 'Hostname missing!' => 'Falta el nombre del Servidor de Base de Datos',
- 'Language' => 'Idioma',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos del servidor y de la base de datos y del puerto en blanco al menos que quiera hacer una conexión remota',
- 'Lock System' => 'Bloquear Sistema',
- 'Lockfile created!' => '¡Archivo de bloqueo creado!',
- 'Lockfile removed!' => '¡Archivo de bloqueo borrado!',
- 'Login' => 'Login',
- 'Login name missing!' => '¡Falta Login!',
- 'Logout' => 'Salir',
- 'Manager' => 'Administrador',
- 'Menu Width' => 'Ancho de Menú',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'Name' => 'Nombre',
- 'New Templates' => 'Nuevas Plantillas',
- 'No Database Drivers available!' => '¡No hay ningún manejador de base de datos disponible!',
- 'No Dataset selected!' => '¡No se ha seleccionado ninguna base de datos!',
- 'Nothing to delete!' => '¡Nada que borrar!',
- 'Number Format' => 'Formato de Número',
- 'Oracle Database Administration' => 'Administración de Base de Datos Oracle',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Pg Database Administration' => 'Administración de Base de Datos Pg',
- 'PgPP Database Administration' => 'Administración de Base de Datos PgPP',
- 'Phone' => 'Teléfono',
- 'Port' => 'Puerto',
- 'Port missing!' => '¡Falta definir puerto!',
- 'Printer' => 'Impresora',
- 'Save' => 'Guardar',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Signature' => 'Firma',
- 'Stylesheet' => 'Hoja de Estilo',
- 'Templates' => 'Plantillas',
- 'The following Datasets are not in use and can be deleted' => 'Las Bases de Datos siguientes están en desuso y están disponibles para ser borradas',
- 'The following Datasets need to be updated' => 'Las Bases de Datos siguientes necesitan ser ser actualizadas',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Unlock System' => 'Desbloquear Sistema',
- 'Update Dataset' => 'Actualizar Base de Datos',
- 'Use Templates' => 'Utilizar Plantillas',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Version' => 'Versión',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir un nombre de servidor y un puerto para conexiones locales y remotas',
- 'does not exist' => 'no existe',
- 'is already a member!' => 'ya es miembro',
- 'localhost' => 'servidor local',
- 'locked!' => '¡Bloqueado!',
- 'successfully created!' => '¡Creado satisfactoriamente!',
- 'successfully deleted!' => '¡Borrado satisfactoriamente!',
- 'website' => 'sitio web',
-};
-
-$self{subs} = {
- 'add_user' => 'add_user',
- 'adminlogin' => 'adminlogin',
- 'change_admin_password' => 'change_admin_password',
- 'change_password' => 'change_password',
- 'check_password' => 'check_password',
- 'continue' => 'continue',
- 'create_dataset' => 'create_dataset',
- 'dbcreate' => 'dbcreate',
- 'dbdelete' => 'dbdelete',
- 'dbdriver_defaults' => 'dbdriver_defaults',
- 'dbselect_source' => 'dbselect_source',
- 'dbupdate' => 'dbupdate',
- 'delete' => 'delete',
- 'delete_dataset' => 'delete_dataset',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'get_value' => 'get_value',
- 'getpassword' => 'getpassword',
- 'list_users' => 'list_users',
- 'lock_system' => 'lock_system',
- 'login' => 'login',
- 'login_name' => 'login_name',
- 'logout' => 'logout',
- 'oracle_database_administration' => 'oracle_database_administration',
- 'pg_database_administration' => 'pg_database_administration',
- 'pgpp_database_administration' => 'pgpp_database_administration',
- 'save' => 'save',
- 'unlock_system' => 'unlock_system',
- 'update_dataset' => 'update_dataset',
- 'agregar_usuario' => 'add_user',
- 'cambiar_la_contraseña_del_administrador' => 'change_admin_password',
- 'cambiar_contraseña' => 'change_password',
- 'continuar' => 'continue',
- 'crear_base_de_datos' => 'create_dataset',
- 'borrar' => 'delete',
- 'borrar_base_de_datos' => 'delete_dataset',
- 'bloquear_sistema' => 'lock_system',
- 'login' => 'login',
- 'salir' => 'logout',
- 'administración_de_base_de_datos_oracle' => 'oracle_database_administration',
- 'administración_de_base_de_datos_pg' => 'pg_database_administration',
- 'administración_de_base_de_datos_pgpp' => 'pgpp_database_administration',
- 'guardar' => 'save',
- 'desbloquear_sistema' => 'unlock_system',
- 'actualizar_base_de_datos' => 'update_dataset',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/all b/sql-ledger/locale/ve/all
deleted file mode 100644
index 138ae7c..0000000
--- a/sql-ledger/locale/ve/all
+++ /dev/null
@@ -1,768 +0,0 @@
-# These are all the texts to build the translations files.
-# to build unique strings edit the module files instead
-# this file is just a shortcut to build strings which are the same
-
-$self{texts} = {
- '>' => '',
- 'A' => 'A',
- 'AP' => 'CxP',
- 'AP Aging' => 'Diario Resumido de CxP',
- 'AP Outstanding' => 'Pendientes de CxP',
- 'AP Transaction' => 'Asiento de CxP',
- 'AP Transactions' => 'Asientos de CxP',
- 'AR' => 'CxC',
- 'AR Aging' => 'Diario Resumido de CxC',
- 'AR Outstanding' => 'Pendientes de CxC',
- 'AR Transaction' => 'Asiento de CxC',
- 'AR Transactions' => 'Asiento de CxC',
- 'About' => 'Acerca de',
- 'Above' => 'Encima de',
- 'Access Control' => 'Control de Acceso',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'Falta el Número de la Cuenta',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'Falta Tipo de Cuenta',
- 'Account deleted!' => '¡Cuenta Borrada!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta Guardada!',
- 'Accounting' => 'Contabilidad',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro de Auditoría',
- 'Active' => 'Activo',
- 'Add' => 'Agregar',
- 'Add AP Transaction' => 'Añadir Asiento de CxP',
- 'Add AR Transaction' => 'Añadir Asiento de CxC',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Juego',
- 'Add Business' => 'Agregar Negocio',
- 'Add Cash Transfer Transaction' => 'Agregar asiento de Transferencia',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add GIFI' => 'Agregar Código GIFI',
- 'Add General Ledger Transaction' => 'Agregar Asiento al Libro Mayor General',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra/Overhead',
- 'Add Language' => 'Agregar Idioma',
- 'Add POS Invoice' => 'Agregar Factura PdV',
- 'Add Part' => 'Agregar Parte',
- 'Add Pricegroup' => 'Agregar Grupo de Precios',
- 'Add Project' => 'Agregar Proyecto',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add SIC' => 'Agregar SIC',
- 'Add Sales Invoice' => 'Agregar Factura',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Asiento',
- 'Add User' => 'Agregar Usuario',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Add Warehouse' => 'Agregar Almacén',
- 'Address' => 'Dirección',
- 'Administration' => 'Administración',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de Deducción',
- 'All' => 'Todos',
- 'All Accounts' => 'Todas las Cuentas',
- 'All Datasets up to date!' => 'Bases de Datos actualizadas!',
- 'All Items' => 'Todos los Artículos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Monto',
- 'Amount Due' => 'Cantidad Adeudada',
- 'Amount missing!' => '¡Falta Monto!',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está seguro que desea borrar la Factura Número',
- 'Are you sure you want to delete Order Number' => '¿Está seguro que desea
-borrar la Orden Número?',
- 'Are you sure you want to delete Quotation Number' => '¿Está seguro que desea borrar la Cotización número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro que desea borrar el Asiento?',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está seguro que desea remover las entradas seleccionadas de la cola?',
- 'Assemblies' => 'Juegos',
- 'Assemblies restocked!' => '¡Juegos realmacendados!',
- 'Assembly' => 'Juego',
- 'Asset' => 'Activo',
- 'Attachment' => 'Adjunto',
- 'Audit Control' => 'Control de Auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'BIC' => 'BIC',
- 'BOM' => 'Listado de Piezas',
- 'Backup' => 'Respaldo',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Based on' => 'Basado en',
- 'Batch Printing' => 'Impresión en Serie',
- 'Bcc' => 'Bcc',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Beginning Balance' => 'Balance Inicial',
- 'Below' => 'Debajo',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Bin Lists' => 'Listas de Almacenaje',
- 'Books are open' => 'Libros están Abiertos',
- 'Break' => 'Ruptura',
- 'Business' => 'Negocio',
- 'Business Number' => 'N° de Registro Fiscal',
- 'Business deleted!' => 'Negocio borrado!',
- 'Business saved!' => 'Negocio guardado!',
- 'C' => 'C',
- 'COGS' => 'Costo de Ventas',
- 'Cannot create Lock!' => '¡No se puede crear Bloqueo!',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete default account!' => '¡No se puede borrar la cuenta por omisión!',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No puedo borrar la cotización!',
- 'Cannot delete transaction!' => '¡No se puede borrar el asiento!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cannot post Payment!' => '¡No se puede registrar el Pago!',
- 'Cannot post Receipt!' => '¡No se puede registrar el Recibo!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un asiento en un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo cerrado!',
- 'Cannot remove files!' => '¡No se puede borrar archivos!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '!No se puede guardar las preferencias!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save preferences!' => '¡No se puede guardar las Preferencias!',
- 'Cannot save quotation!' => '¡No se puede guardar la cotización!',
- 'Cannot set account for more than one of AR, AP or IC' => 'No se admite selección múltiple en CxC, CxP o IC!',
- 'Cannot set multiple options for' => 'No se admiten opciones simlutaneas para',
- 'Cannot set multiple options for Parts Inventory' => 'No se admiten opciones simultaneas para el Inventario de Partes',
- 'Cannot set multiple options for Service Items' => 'No se admiten opciones simultaneas para Servicios',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los Juegos!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Change Admin Password' => 'Cambiar la contraseña del administrador',
- 'Change Password' => 'Cambiar Contraseña',
- 'Character Set' => 'Conjunto de Caracteres',
- 'Chart of Accounts' => 'Plan de Cuentas',
- 'Check' => 'Cheque',
- 'Check Inventory' => 'Revisar Inventario',
- 'Checks' => 'Cheques',
- 'City' => 'Ciudad',
- 'Cleared' => 'Debitado',
- 'Click on login name to edit!' => 'Haga clic en el nombre de usuario por
-editar',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Closed' => 'Cerrado',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta Código',
- 'Company' => 'Compañía',
- 'Company Name' => 'Nombre de la Compañía',
- 'Compare to' => 'Comparar contra',
- 'Components' => 'Componentes',
- 'Confirm' => '',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Connect to' => 'Conectarse a',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas de Orden',
- 'Copies' => 'Copias',
- 'Copy to COA' => 'Copiar al Plan de Cuentas',
- 'Cost' => 'Costo',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Could not save pricelist!' => '¡No se pudo guardar lista de precios!',
- 'Could not save!' => '¡No se pudo guardar!',
- 'Could not transfer Inventory!' => 'No se pudo transferir Inventario!',
- 'Country' => 'País',
- 'Create Chart of Accounts' => 'Crear Plan de Cuentas',
- 'Create Dataset' => 'Crear Base de Datos',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del Periodo',
- 'Customer' => 'Cliente',
- 'Customer History' => 'Histórico de Clientes',
- 'Customer Number' => 'Código de Cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'DBI not installed!' => '¡DBI no se encuentra instalado!',
- 'DOB' => '',
- 'Database' => 'Base de Datos',
- 'Database Administration' => 'Administración de Base de Datos',
- 'Database Driver not checked!' => 'No se pudo verificar el Manejador de la Base de Datos',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Database User missing!' => '¡Falta Usuario de la Base de Datos',
- 'Dataset' => 'Base de Datos',
- 'Dataset is newer than version!' => 'La versión de la Base de Datos es más reciente que la versión del programa',
- 'Dataset missing!' => '¡Falta Base de Datos!',
- 'Dataset updated!' => '¡Base de Datos actualizada!',
- 'Date' => 'Fecha',
- 'Date Format' => 'Formato de Fecha',
- 'Date Paid' => 'Fecha de Pago',
- 'Date Received' => 'Fecha Recibido',
- 'Date missing!' => '¡Falta fecha!',
- 'Date received missing!' => '¡Falta fecha de recibo!',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Decimalplaces' => 'Dígitos decimales',
- 'Decrease' => 'Reducir',
- 'Deduct after' => 'Deducir después de',
- 'Deduction deleted!' => 'Deducción borrada!',
- 'Deduction saved!' => '¡Deducción guardada!',
- 'Deductions' => 'Deducciones',
- 'Defaults' => 'Preferencias',
- 'Defaults saved!' => '¡Preferencias guardadas!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Delete Dataset' => 'Borrar Base de Datos',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Department deleted!' => '¡Centro de Costos borrado!',
- 'Department saved!' => '¡Centro de Costos guardado!',
- 'Departments' => 'Centros de Costos',
- 'Deposit' => 'Abono',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducción de Descripciones',
- 'Description missing!' => '¡Falta descripción!',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Directory' => 'Directorio',
- 'Discount' => 'Descuento',
- 'Done' => 'Hecho',
- 'Drawing' => 'Dibujo',
- 'Driver' => 'Manejador',
- 'Dropdown Limit' => 'Límite de Menú desplagable',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta la Fecha de Vencimiento',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Enviar Comprobante por E-mail a',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit' => 'Editar',
- 'Edit AP Transaction' => 'Editar Asientos de CxP',
- 'Edit AR Transaction' => 'Editar Asientos de CxC',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit Assembly' => 'Editar Juego',
- 'Edit Business' => 'Editar Negocio',
- 'Edit Cash Transfer Transaction' => 'Editar Asiento de Caja',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit Description Translations' => 'Editar Traducción de Descripciones',
- 'Edit Employee' => 'Editar Empleado',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit General Ledger Transaction' => 'Editar Asiento del Libro Mayor General',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra/Costo Operativo',
- 'Edit Language' => 'Editar Idioma',
- 'Edit POS Invoice' => 'Editar Factura de PdV',
- 'Edit Part' => 'Editar Parte',
- 'Edit Preferences for' => 'Editar Preferencias de',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar Proyecto',
- 'Edit Purchase Order' => 'Editar Pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Sales Invoice' => 'Edirar Factura de Venta',
- 'Edit Sales Order' => 'Editar Orden de Compra',
- 'Edit Service' => 'Editar Servicio',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit User' => 'Editar Usuario',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Edit Vendor Invoice' => 'Editar Factura de Compra',
- 'Edit Warehouse' => 'Editar Almacén',
- 'Employee' => 'Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee Number' => 'Código de Empleado',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado paga',
- 'Employee saved!' => '¡Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador paga',
- 'Enddate' => 'Fecha de Corte',
- 'Enforce transaction reversal for all dates' => 'Forzar reverso de asientos para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Capital',
- 'Excempt age <' => '',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Existing Datasets' => 'Bases de Datos Existentes',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de Gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Extended' => 'Extendido',
- 'FX' => 'Divisas',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'Foreign Exchange Gain' => 'Ganancia por Diferencial Cambiario',
- 'Foreign Exchange Loss' => 'Pérdida por Diferencial Cambiario',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => '¡Falta código GIFI',
- 'GIFI saved!' => '¡Código GIFI guardado!',
- 'GL Transaction' => 'Asiento de Libro Mayor General',
- 'General Ledger' => 'Libro Mayor General',
- 'Goods & Services' => 'Bienes y Servicios',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'Group Translations' => 'Traducción de Grupos',
- 'Group deleted!' => '¡Grupo eleminado!',
- 'Group missing!' => '¡Falta grupo!',
- 'Group saved!' => '¡Grupo guardado!',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'Heading' => 'Encabezado',
- 'History' => 'Histórico',
- 'Home Phone' => 'Teléfono Habitación',
- 'Host' => 'Servidor de Base de Datos',
- 'Hostname missing!' => 'Falta el nombre del Servidor de Base de Datos',
- 'IBAN' => 'N° Cuenta Bancaria',
- 'ID' => 'N° de identidad',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencial por Tasa de Cambio',
- 'Include in Report' => 'Incluir en Informe',
- 'Include in drop-down menus' => 'Incluir en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para marcar como gravable?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Income Statement' => 'Estado de Cuenta de Igresos',
- 'Incorrect Dataset version!' => 'Versión de Base de Datos incorrecta',
- 'Incorrect Password!' => '¡Contraseña Incorrecta!',
- 'Increase' => 'Aumentar',
- 'Individual Items' => 'Artículos Individuales',
- 'Internal Notes' => 'Anotaciones Internas',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¡El inventario del juego debe estar en cero antes de poder declararlo obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '¡El inventario del artículo debe estar en cero antes de poder declararlo obsoleto!',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Invoices' => 'Facturas',
- 'Is this a summary account to record' => '¿La cuenta a registrar es una cuenta de resumen?',
- 'Item already on pricelist!' => '¡Artículo está incluido en la lista de precios!',
- 'Item deleted!' => '¡Artículo borrado!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Items' => 'Artículos',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra/Costo Operativo',
- 'Language' => 'Idioma',
- 'Language deleted!' => '¡Idioma borrado!',
- 'Language saved!' => '¡Idioma guardado!',
- 'Languages' => 'Idiomas',
- 'Languages not defined!' => '¡No hay idiomas definidos!',
- 'Last Numbers & Default Accounts' => 'Últimos Números y Cuentas por Omisión',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Leave host and port field empty unless you want to make a remote connection.' => 'Deje los campos del servidor y de la base de datos y del puerto en blanco al menos que quiera hacer una conexión remota',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licencia otorgada a',
- 'Line Total' => 'Sumatoria de columna',
- 'Link' => 'Enlaces',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List' => 'Mostrar',
- 'List Accounts' => 'Mostrar Cuentas',
- 'List Businesses' => 'Mostrar Negocios',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Mostrar Código GIFI',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Price' => 'Precio de Lista',
- 'List Projects' => 'Mostrar Proyectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Transactions' => 'Mostrar Asientos',
- 'List Warehouses' => 'Mostrar Almacenes',
- 'Lock System' => 'Bloquear Sistema',
- 'Lockfile created!' => '¡Archivo de bloqueo creado!',
- 'Lockfile removed!' => '¡Archivo de bloqueo borrado!',
- 'Login' => 'Login',
- 'Login name missing!' => '¡Falta Login!',
- 'Logout' => 'Salir',
- 'Make' => 'Fabricante',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'Marked entries printed!' => 'Selección impresa',
- 'Markup' => 'Margen',
- 'Maximum' => 'Máximo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Menu Width' => 'Ancho de Menú',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Month' => 'Mes',
- 'Multibyte Encoding' => 'Multibyte Encoding',
- 'N/A' => 'No existe',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta nombre!',
- 'New Templates' => 'Nuevas Plantillas',
- 'No' => 'No',
- 'No Database Drivers available!' => '¡No hay ningún manejador de base de datos disponible!',
- 'No Dataset selected!' => '¡No se ha seleccionado ninguna base de datos!',
- 'No email address for' => 'Falta la dirección de E-mail para',
- 'No.' => 'N°',
- 'Non-taxable' => 'No gravable',
- 'Non-taxable Purchases' => 'Compras no gravadas',
- 'Non-taxable Sales' => 'Ventas no gravadas',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'No hay nada ingresado',
- 'Nothing outstanding for ' => 'Nada pendiente para',
- 'Nothing selected!' => '¡No se ha seleccionado nada!',
- 'Nothing to delete!' => '¡Nada que borrar!',
- 'Nothing to print!' => '!Nada que imprimir!',
- 'Nothing to transfer!' => '¡Nada que transferir!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number Format' => 'Formato de Número',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'O' => 'O',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Oracle Database Administration' => 'Administración de Base de Datos Oracle',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de la Orden',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Entry' => 'Órdenes',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden procesada!',
- 'Order saved!' => '¡Orden guardada!',
- 'Orphaned' => 'Huérfano',
- 'Out of balance transaction!' => '¡Asiento fuera de balance!',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Pendientes',
- 'PDF' => 'PDF',
- 'POS' => 'PdV',
- 'POS Invoice' => 'Factura de PdV',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Packing Lists' => 'Listas de Empaque',
- 'Paid' => 'Pagado',
- 'Part' => 'Parte',
- 'Part Number' => 'Código de Parte',
- 'Partnumber' => 'Código de Parte',
- 'Parts' => 'Partes',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Password changed!' => '¡Contraseña cambiada!',
- 'Password does not match!' => '',
- 'Passwords do not match!' => '',
- 'Payables' => 'CxP',
- 'Payment' => 'Pago',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Payments' => 'Pagos',
- 'Payroll Deduction' => 'Deducciones de Nómina',
- 'Period' => 'Período',
- 'Pg Database Administration' => 'Administración de Base de Datos Pg',
- 'PgPP Database Administration' => 'Administración de Base de Datos PgPP',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Pick Lists' => 'Listas de Almacén',
- 'Port' => 'Puerto',
- 'Port missing!' => '¡Falta definir puerto!',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => '¡Registrado!',
- 'Postscript' => 'Postscript',
- 'Preferences' => 'Preferencias',
- 'Preferences saved!' => '¡Preferencias guardadas!',
- 'Prepayment' => 'Prepago',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => '¡Grupo de Precios Borrado!',
- 'Pricegroup missing!' => '¡Falta Grupo de Precios!',
- 'Pricegroup saved!' => '¡Grupo de Precios guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Pricelist' => 'Lista de Precios',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Print and Save' => 'Imprimir y Guardar',
- 'Printed' => 'Impreso',
- 'Printer' => 'Impresora',
- 'Printing ... ' => 'Imprimiendo...',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducción de Descripción de Proyectos',
- 'Project Number' => 'Código de Proyecto',
- 'Project Number missing!' => '¡Falta Código de Proyecto!',
- 'Project Transactions' => 'Asientos de Proyecto',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Project saved!' => '¡Proyecto guardado!',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Order Number' => 'Número de Predido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '¡La Cantidad excede el disponible en en el Inventario!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => 'Cotización ',
- 'Quotation Date' => 'Fecha de Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'R' => 'R',
- 'RFQ' => 'Solicitud de Cotización',
- 'RFQ ' => 'Solicitud de Cotización',
- 'RFQ Number' => 'Número de Solicitud de Cotización',
- 'RFQs' => 'Solicitudes de Cotización',
- 'ROP' => 'Existencia Mínima',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '¡Falta Tarifa!',
- 'Recd' => 'Rcbdo',
- 'Receipt' => 'Abono',
- 'Receipt posted!' => '¡Recibo registrado!',
- 'Receipts' => 'Recibos',
- 'Receivables' => 'CxC',
- 'Receive' => 'Almacenar',
- 'Receive Merchandise' => 'Almacenar Mercancía',
- 'Reconciliation' => 'Conciliación',
- 'Reconciliation Report' => 'Reporte de Conciliación',
- 'Record in' => 'Registrar en',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta Referencia!',
- 'Remaining' => 'Resto',
- 'Remove' => 'Eliminar',
- 'Remove Audit trails up to' => 'Eliminar Rastro de Auditoría hasta',
- 'Removed spoolfiles!' => '¡Archivos de cola de impresión eliminados!',
- 'Removing marked entries from queue ...' => 'Eliminando selección de la cola de impresión...',
- 'Report for' => 'Reporte para',
- 'Reports' => 'Reportes',
- 'Request for Quotation' => 'Solicitud de Cotización',
- 'Request for Quotations' => 'Solicitudes de Cotización',
- 'Required by' => 'Requerido para el',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'Role' => 'Función',
- 'S' => 'S',
- 'SIC' => 'CIE',
- 'SIC deleted!' => 'CIE borrado!',
- 'SIC saved!' => 'CIE guardado!',
- 'SKU' => 'Código (Interno)',
- 'SSN' => 'RIF',
- 'Sale' => 'Venta',
- 'Sales' => 'Ventas',
- 'Sales Invoice' => 'Factura de Ventas',
- 'Sales Invoice ' => 'Factura de Ventas ',
- 'Sales Invoice Number' => 'N° de Factura de Ventas',
- 'Sales Invoice.' => 'Factura de Ventas.',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de Compra',
- 'Sales Order Number' => '',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Sales Quotation Number' => 'N° de Cotización de Ventas',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => 'Guardar Lista de Precios',
- 'Save as new' => 'Guardar como nuevo',
- 'Save to File' => 'Archivar',
- 'Screen' => 'Pantalla',
- 'Search' => 'Búsqueda',
- 'Select' => 'Seleccionar',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => 'Seleccione pago!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Select txt, postscript or PDF!' => '',
- 'Sell' => 'Venta',
- 'Sell Price' => 'Precio de Venta',
- 'Send by E-Mail' => 'Enviar por E-mail',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Serial Number' => 'Serial',
- 'Service' => 'Servicio',
- 'Service Items' => 'Servicios',
- 'Services' => 'Servicios',
- 'Session Timeout' => '',
- 'Session expired!' => '',
- 'Setup Templates' => 'Configurar Plantillas',
- 'Ship' => 'Envío',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envío por',
- 'Shipping' => 'Envío',
- 'Shipping Address' => 'Dirección de Envío',
- 'Shipping Date' => 'Fecha de Envío',
- 'Shipping Date missing!' => 'Falta Fecha de Envío',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Short' => 'Corto',
- 'Signature' => 'Firma',
- 'Source' => 'N° Cheque/Ref',
- 'Spoolfile' => 'Archivo de Cola de Impresión',
- 'Standard' => 'Estándard',
- 'Standard Industrial Codes' => 'Códigos Industriales Estandarizados (CIE)',
- 'Startdate' => 'Fecha de Inicio',
- 'State' => 'Estado',
- 'State/Province' => 'Estado/Provincia',
- 'Statement' => 'Estado de Cuenta',
- 'Statement Balance' => 'Balance de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de Cuenta enviado a la impresora!',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar Juego',
- 'Stylesheet' => 'Hoja de Estilo',
- 'Sub-contract GIFI' => 'Sub-Contrato GIFI',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Supervisor' => '',
- 'System' => 'Sistema',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de Impuestos',
- 'Tax Included' => 'Impuesto Incluído',
- 'Tax Number' => 'NIT',
- 'Tax Number / SSN' => 'RIF/NIT',
- 'Tax collected' => 'Impuestos retenidos',
- 'Tax paid' => 'Impuestos pagados',
- 'Taxable' => 'Gravable',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Templates' => 'Plantillas',
- 'Terms' => 'Condiciones de crédito',
- 'Text Templates' => 'Plantillas de Texto',
- 'The following Datasets are not in use and can be deleted' => 'Las Bases de Datos siguientes están en desuso y están disponibles para ser borradas',
- 'The following Datasets need to be updated' => 'Las Bases de Datos siguientes necesitan ser ser actualizadas',
- 'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'Esta es una verificacion preliminar de fuentes existentes. No se creará ni borrará nada durante esta etapa',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'To add a user to a group edit a name, change the login name and save. A new user with the same variables will then be saved under the new login name.' => 'Para añadir un usuario a un grupo, edite un nombre, cambie el nombre de usuario (login) y guarde los cambios. Un nuevo usuario, con las mismas propiedades se guardará bajo el nuevo nombre de usuario (login).',
- 'Top Level' => 'Descripción Principal',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento Comercial',
- 'Transaction' => 'Asiento',
- 'Transaction Date missing!' => '¡Falta Fecha de Asiento',
- 'Transaction deleted!' => '¡Asiento borrado!',
- 'Transaction posted!' => '¡Asiendo registrado!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado el reverso de los asientos para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado el reverso de los asientos hasta',
- 'Transactions' => 'Asientos',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción borrada!',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Translations' => 'Traducciones',
- 'Translations saved!' => 'Traducciones guardadadas',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Type of Business' => 'Tipo de Negocio',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Unlock System' => 'Desbloquear Sistema',
- 'Update' => 'Actualizar',
- 'Update Dataset' => 'Actualizar Base de Datos',
- 'Updated' => 'Actualizado',
- 'Upgrading to Version' => 'Actualizando Versión',
- 'Use Templates' => 'Utilizar Plantillas',
- 'User' => 'Usuario',
- 'User deleted!' => '¡Usuario borrado!',
- 'User saved!' => '¡Usuario guardado!',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor History' => 'Histórico de Proveedores',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor Invoice ' => 'Factura de Compra ',
- 'Vendor Invoice Number' => 'N° de Factura de Compra',
- 'Vendor Invoice.' => 'Factura de Compra.',
- 'Vendor Invoices' => 'Facturas de Compra',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor missing!' => '¡Falta Proveedor!',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouse' => 'Almacén',
- 'Warehouse deleted!' => '¡Almacén borrado!',
- 'Warehouse saved!' => '¡Almacén guardado!',
- 'Warehouses' => 'Almacenes',
- 'Warning!' => '¡Advertencia!',
- 'Weight' => 'Peso',
- 'Weight Unit' => 'Unidad de Peso',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Órdenes de Trabajo',
- 'Work Phone' => 'Teléfono Oficina',
- 'Year' => 'Año',
- 'Yearend' => 'Cierre de Ejercicio',
- 'Yearend date missing!' => 'Falta fecha del Cierre de Ejercicio',
- 'Yearend posted!' => 'Cierre de Ejercicio registrado!',
- 'Yearend posting failed!' => 'Falló registro de Cierre de Ejercicio',
- 'Yes' => 'Sí',
- 'You are logged out' => '',
- 'You did not enter a name!' => '¡Ud. no ha introducido un nombre!',
- 'You must enter a host and port for local and remote connections!' => 'Debe introducir un nombre de servidor y un puerto para conexiones locales y remotas',
- 'Zip/Postal Code' => '',
- 'account cannot be set to any other type of account' => 'La cuenta no puede ser cambiada a otro tipo de cuenta',
- 'as at' => 'al',
- 'days' => 'días',
- 'does not exist' => 'no existe',
- 'done' => 'hecho',
- 'ea' => 'c/u',
- 'for Period' => 'para el Período',
- 'is already a member!' => 'ya es miembro',
- 'is not a member!' => 'no es miembro',
- 'localhost' => 'servidor local',
- 'locked!' => '¡Bloqueado!',
- 'posted!' => '!Registrado¡',
- 'sent' => 'enviado',
- 'successfully created!' => '¡Creado satisfactoriamente!',
- 'successfully deleted!' => '¡Borrado satisfactoriamente!',
- 'website' => 'sitio web',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/am b/sql-ledger/locale/ve/am
deleted file mode 100644
index 7b4ea10..0000000
--- a/sql-ledger/locale/ve/am
+++ /dev/null
@@ -1,255 +0,0 @@
-$self{texts} = {
- 'AP' => 'CxP',
- 'AR' => 'CxC',
- 'About' => 'Acerca de',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Account Number missing!' => 'Falta el Número de la Cuenta',
- 'Account Type' => 'Tipo de Cuenta',
- 'Account Type missing!' => 'Falta Tipo de Cuenta',
- 'Account deleted!' => '¡Cuenta Borrada!',
- 'Account does not exist!' => 'Cuenta no existe!',
- 'Account saved!' => '¡Cuenta Guardada!',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accrual' => 'Acumulado',
- 'Activate Audit trails' => 'Activar Rastro de Auditoría',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Business' => 'Agregar Negocio',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add GIFI' => 'Agregar Código GIFI',
- 'Add Language' => 'Agregar Idioma',
- 'Add SIC' => 'Agregar SIC',
- 'Add Warehouse' => 'Agregar Almacén',
- 'Address' => 'Dirección',
- 'Asset' => 'Activo',
- 'Audit Control' => 'Control de Auditoría',
- 'Audit trail removed up to' => 'Rastro de Auditoría removido hasta',
- 'Audit trails disabled' => 'Rastro de Auditoría desactivado',
- 'Audit trails enabled' => 'Rastro de Auditoría activado',
- 'Backup sent to' => 'Respaldo enviado a',
- 'Books are open' => 'Libros están Abiertos',
- 'Business Number' => 'N° de Registro Fiscal',
- 'Business deleted!' => 'Negocio borrado!',
- 'Business saved!' => 'Negocio guardado!',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete account!' => '¡No se puede borrar la cuenta!',
- 'Cannot delete default account!' => '¡No se puede borrar la cuenta por omisión!',
- 'Cannot save account!' => '¡No se puede guardar la cuenta!',
- 'Cannot save defaults!' => '!No se puede guardar las preferencias!',
- 'Cannot save preferences!' => '¡No se puede guardar las Preferencias!',
- 'Cannot set account for more than one of AR, AP or IC' => 'No se admite selección múltiple en CxC, CxP o IC!',
- 'Cannot set multiple options for' => 'No se admiten opciones simlutaneas para',
- 'Cannot set multiple options for Parts Inventory' => 'No se admiten opciones simultaneas para el Inventario de Partes',
- 'Cannot set multiple options for Service Items' => 'No se admiten opciones simultaneas para Servicios',
- 'Cash' => 'Caja',
- 'Character Set' => 'Conjunto de Caracteres',
- 'Chart of Accounts' => 'Plan de Cuentas',
- 'Close Books up to' => 'Cerrar los libros hasta',
- 'Code' => 'Código',
- 'Code missing!' => 'Falta Código',
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas de Orden',
- 'Copy to COA' => 'Copiar al Plan de Cuentas',
- 'Cost Center' => 'Centro de Costos (Gastos)',
- 'Credit' => 'Crédito',
- 'Customer Number' => 'Código de Cliente',
- 'Database Host' => 'Servidor de Base de Datos',
- 'Dataset' => 'Base de Datos',
- 'Date Format' => 'Formato de Fecha',
- 'Debit' => 'Débito',
- 'Defaults saved!' => '¡Preferencias guardadas!',
- 'Delete' => 'Borrar',
- 'Delete Account' => 'Borrar Cuenta',
- 'Department deleted!' => '¡Centro de Costos borrado!',
- 'Department saved!' => '¡Centro de Costos guardado!',
- 'Departments' => 'Centros de Costos',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta descripción!',
- 'Discount' => 'Descuento',
- 'Dropdown Limit' => 'Límite de Menú desplagable',
- 'E-mail' => 'E-mail',
- 'Edit' => 'Editar',
- 'Edit Account' => 'Editar Cuenta',
- 'Edit Business' => 'Editar Negocio',
- 'Edit Department' => 'Editar Centro de Costos',
- 'Edit GIFI' => 'Editar GIFI',
- 'Edit Language' => 'Editar Idioma',
- 'Edit Preferences for' => 'Editar Preferencias de',
- 'Edit SIC' => 'Editar SIC',
- 'Edit Template' => 'Editar Plantilla',
- 'Edit Warehouse' => 'Editar Almacén',
- 'Employee Number' => 'Código de Empleado',
- 'Enforce transaction reversal for all dates' => 'Forzar reverso de asientos para todas las fechas',
- 'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies' => 'Introduzca hasta 3 letras separadas por dos puntos (p.e. CAD:USD:EUR) para las monedas locales y las extranjeras',
- 'Equity' => 'Capital',
- 'Expense' => 'Gastos',
- 'Expense Account' => 'Cuenta de Gastos',
- 'Expense/Asset' => 'Gastos/Activo',
- 'Fax' => 'Fax',
- 'Foreign Exchange Gain' => 'Ganancia por Diferencial Cambiario',
- 'Foreign Exchange Loss' => 'Pérdida por Diferencial Cambiario',
- 'GIFI' => 'Código GIFI',
- 'GIFI deleted!' => '¡Borrado el código GIFI!',
- 'GIFI missing!' => '¡Falta código GIFI',
- 'GIFI saved!' => '¡Código GIFI guardado!',
- 'Heading' => 'Encabezado',
- 'Include in drop-down menus' => 'Incluir en menús desplegables',
- 'Include this account on the customer/vendor forms to flag customer/vendor as taxable?' => 'Mostrar esta cuenta en los formularios de cliente/proveedor para marcar como gravable?',
- 'Income' => 'Ingreso',
- 'Income Account' => 'Cuenta de Ingreso',
- 'Inventory' => 'Inventario',
- 'Inventory Account' => 'Cuenta de Inventario',
- 'Is this a summary account to record' => '¿La cuenta a registrar es una cuenta de resumen?',
- 'Labor/Overhead' => 'Mano de Obra/Costo Operativo',
- 'Language' => 'Idioma',
- 'Language deleted!' => '¡Idioma borrado!',
- 'Language saved!' => '¡Idioma guardado!',
- 'Languages' => 'Idiomas',
- 'Last Numbers & Default Accounts' => 'Últimos Números y Cuentas por Omisión',
- 'Liability' => 'Pasivo',
- 'Licensed to' => 'Licencia otorgada a',
- 'Link' => 'Enlaces',
- 'Menu Width' => 'Ancho de Menú',
- 'Method' => 'Metódo',
- 'Name' => 'Nombre',
- 'No' => 'No',
- 'No email address for' => 'Falta la dirección de E-mail para',
- 'Number' => 'Código',
- 'Number Format' => 'Formato de Número',
- 'Partnumber' => 'Código de Parte',
- 'Parts Inventory' => 'Inventario de Partes',
- 'Password' => 'Contraseña',
- 'Payables' => 'CxP',
- 'Payment' => 'Pago',
- 'Phone' => 'Teléfono',
- 'Preferences saved!' => '¡Preferencias guardadas!',
- 'Printer' => 'Impresora',
- 'Profit Center' => 'Centro de Costo (Ingresos)',
- 'Purchase Order Number' => 'Número de Predido',
- 'RFQ Number' => 'Número de Solicitud de Cotización',
- 'Rate' => 'Tarifa',
- 'Receivables' => 'CxC',
- 'Reference' => 'Referencia',
- 'Remove Audit trails up to' => 'Eliminar Rastro de Auditoría hasta',
- 'Retained Earnings' => 'Resultado del Ejercicio',
- 'SIC deleted!' => 'CIE borrado!',
- 'SIC saved!' => 'CIE guardado!',
- 'Sales Invoice Number' => 'N° de Factura de Ventas',
- 'Sales Quotation Number' => 'N° de Cotización de Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Service Items' => 'Servicios',
- 'Signature' => 'Firma',
- 'Standard Industrial Codes' => 'Códigos Industriales Estandarizados (CIE)',
- 'Stylesheet' => 'Hoja de Estilo',
- 'System Defaults' => 'Predeterminados del Sistema',
- 'Tax' => 'Impuesto',
- 'Tax Accounts' => 'Cuentas de Impuestos',
- 'Template saved!' => '¡Plantilla guardada!',
- 'Transaction reversal enforced for all dates' => 'Se ha forzado el reverso de los asientos para todas las fechas',
- 'Transaction reversal enforced up to' => 'Se ha forzado el reverso de los asientos hasta',
- 'Type of Business' => 'Tipo de Negocio',
- 'User' => 'Usuario',
- 'Vendor Invoice Number' => 'N° de Factura de Compra',
- 'Vendor Number' => 'Código de Vendedor',
- 'Version' => 'Versión',
- 'Warehouse deleted!' => '¡Almacén borrado!',
- 'Warehouse saved!' => '¡Almacén guardado!',
- 'Warehouses' => 'Almacenes',
- 'Weight Unit' => 'Unidad de Peso',
- 'Yearend' => 'Cierre de Ejercicio',
- 'Yearend date missing!' => 'Falta fecha del Cierre de Ejercicio',
- 'Yearend posted!' => 'Cierre de Ejercicio registrado!',
- 'Yearend posting failed!' => 'Falló registro de Cierre de Ejercicio',
- 'Yes' => 'Sí',
- 'account cannot be set to any other type of account' => 'La cuenta no puede ser cambiada a otro tipo de cuenta',
- 'localhost' => 'servidor local',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'account_header' => 'account_header',
- 'add' => 'add',
- 'add_account' => 'add_account',
- 'add_business' => 'add_business',
- 'add_department' => 'add_department',
- 'add_gifi' => 'add_gifi',
- 'add_language' => 'add_language',
- 'add_sic' => 'add_sic',
- 'add_warehouse' => 'add_warehouse',
- 'audit_control' => 'audit_control',
- 'backup' => 'backup',
- 'business_header' => 'business_header',
- 'company_logo' => 'company_logo',
- 'config' => 'config',
- 'continue' => 'continue',
- 'copy_to_coa' => 'copy_to_coa',
- 'defaults' => 'defaults',
- 'delete' => 'delete',
- 'delete_account' => 'delete_account',
- 'delete_business' => 'delete_business',
- 'delete_department' => 'delete_department',
- 'delete_gifi' => 'delete_gifi',
- 'delete_language' => 'delete_language',
- 'delete_sic' => 'delete_sic',
- 'delete_warehouse' => 'delete_warehouse',
- 'department_header' => 'department_header',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_stylesheet' => 'display_stylesheet',
- 'doclose' => 'doclose',
- 'edit' => 'edit',
- 'edit_account' => 'edit_account',
- 'edit_business' => 'edit_business',
- 'edit_department' => 'edit_department',
- 'edit_gifi' => 'edit_gifi',
- 'edit_language' => 'edit_language',
- 'edit_sic' => 'edit_sic',
- 'edit_template' => 'edit_template',
- 'edit_warehouse' => 'edit_warehouse',
- 'form_footer' => 'form_footer',
- 'generate_yearend' => 'generate_yearend',
- 'gifi_footer' => 'gifi_footer',
- 'gifi_header' => 'gifi_header',
- 'language_header' => 'language_header',
- 'list_account' => 'list_account',
- 'list_business' => 'list_business',
- 'list_department' => 'list_department',
- 'list_gifi' => 'list_gifi',
- 'list_language' => 'list_language',
- 'list_sic' => 'list_sic',
- 'list_warehouse' => 'list_warehouse',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_account' => 'save_account',
- 'save_as_new' => 'save_as_new',
- 'save_business' => 'save_business',
- 'save_defaults' => 'save_defaults',
- 'save_department' => 'save_department',
- 'save_gifi' => 'save_gifi',
- 'save_language' => 'save_language',
- 'save_preferences' => 'save_preferences',
- 'save_sic' => 'save_sic',
- 'save_template' => 'save_template',
- 'save_warehouse' => 'save_warehouse',
- 'section_menu' => 'section_menu',
- 'sic_header' => 'sic_header',
- 'warehouse_header' => 'warehouse_header',
- 'yearend' => 'yearend',
- 'agregar_cuenta' => 'add_account',
- 'agregar_negocio' => 'add_business',
- 'agregar_centro_de_costos' => 'add_department',
- 'agregar_idioma' => 'add_language',
- 'agregar_sic' => 'add_sic',
- 'agregar_almacén' => 'add_warehouse',
- 'continuar' => 'continue',
- 'copiar_al_plan_de_cuentas' => 'copy_to_coa',
- 'borrar' => 'delete',
- 'editar' => 'edit',
- 'editar_cuenta' => 'edit_account',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ap b/sql-ledger/locale/ve/ap
deleted file mode 100644
index 6d9a7ba..0000000
--- a/sql-ledger/locale/ve/ap
+++ /dev/null
@@ -1,175 +0,0 @@
-$self{texts} = {
- 'AP Outstanding' => 'Pendientes de CxP',
- 'AP Transaction' => 'Asiento de CxP',
- 'AP Transactions' => 'Asientos de CxP',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add AP Transaction' => 'Añadir Asiento de CxP',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Amount Due' => 'Cantidad Adeudada',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro que desea borrar el Asiento?',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar el asiento!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un asiento en un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de Pago',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta la Fecha de Vencimiento',
- 'Edit AP Transaction' => 'Editar Asientos de CxP',
- 'Employee' => 'Empleado',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'ID' => 'N° de identidad',
- 'Include in Report' => 'Incluir en Informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nothing to print!' => '!Nada que imprimir!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de Orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Abono',
- 'Remaining' => 'Resto',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => 'Seleccione pago!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Source' => 'N° Cheque/Ref',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluído',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Transaction' => 'Asiento',
- 'Transaction deleted!' => '¡Asiento borrado!',
- 'Transaction posted!' => '¡Asiendo registrado!',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice.' => 'Factura de Compra.',
- 'Vendor missing!' => '¡Falta Proveedor!',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_subtotal' => 'ap_subtotal',
- 'ap_transaction' => 'ap_transaction',
- 'ap_transactions' => 'ap_transactions',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'asiento_de_cxp' => 'ap_transaction',
- 'añadir_asiento_de_cxp' => 'add_ap_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_asientos_de_cxp' => 'edit_ap_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'actualizar' => 'update',
- 'factura_de_compra.' => 'vendor_invoice.',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ar b/sql-ledger/locale/ve/ar
deleted file mode 100644
index f52c513..0000000
--- a/sql-ledger/locale/ve/ar
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AR Outstanding' => 'Pendientes de CxC',
- 'AR Transaction' => 'Asiento de CxC',
- 'AR Transactions' => 'Asiento de CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add AR Transaction' => 'Añadir Asiento de CxC',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Amount Due' => 'Cantidad Adeudada',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro que desea borrar el Asiento?',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Cannot delete transaction!' => '¡No se puede borrar el asiento!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un asiento en un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Check' => 'Cheque',
- 'Closed' => 'Cerrado',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de Pago',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta la Fecha de Vencimiento',
- 'Edit AR Transaction' => 'Editar Asientos de CxC',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'ID' => 'N° de identidad',
- 'Include in Report' => 'Incluir en Informe',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nothing to print!' => '!Nada que imprimir!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de Orden',
- 'PDF' => 'PDF',
- 'Paid' => 'Pagado',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Abono',
- 'Remaining' => 'Resto',
- 'Sales Invoice.' => 'Factura de Ventas.',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => 'Seleccione pago!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Ship via' => 'Envío por',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'N° Cheque/Ref',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluído',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Transaction' => 'Asiento',
- 'Transaction deleted!' => '¡Asiento borrado!',
- 'Transaction posted!' => '¡Asiendo registrado!',
- 'Update' => 'Actualizar',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_selected' => 'payment_selected',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'asiento_de_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'factura_de_ventas.' => 'sales_invoice.',
- 'actualizar' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/arap b/sql-ledger/locale/ve/arap
deleted file mode 100644
index 64eadaf..0000000
--- a/sql-ledger/locale/ve/arap
+++ /dev/null
@@ -1,30 +0,0 @@
-$self{texts} = {
- 'Address' => 'Dirección',
- 'Continue' => 'Continuar',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Description' => 'Descripción',
- 'Number' => 'Código',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
-};
-
-$self{subs} = {
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'gl_transaction' => 'gl_transaction',
- 'name_selected' => 'name_selected',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/arapprn b/sql-ledger/locale/ve/arapprn
deleted file mode 100644
index 82c3e5c..0000000
--- a/sql-ledger/locale/ve/arapprn
+++ /dev/null
@@ -1,37 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Amount' => 'Monto',
- 'Check' => 'Cheque',
- 'Continue' => 'Continuar',
- 'Date' => 'Fecha',
- 'Memo' => 'Memo',
- 'Nothing to print!' => '!Nada que imprimir!',
- 'PDF' => 'PDF',
- 'Postscript' => 'Postscript',
- 'Printed' => 'Impreso',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Receipt' => 'Abono',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select payment' => 'Seleccione pago!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Source' => 'N° Cheque/Ref',
- 'Transaction' => 'Asiento',
-};
-
-$self{subs} = {
- 'customer_details' => 'customer_details',
- 'payment_selected' => 'payment_selected',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'select_payment' => 'select_payment',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/bp b/sql-ledger/locale/ve/bp
deleted file mode 100644
index 171c97c..0000000
--- a/sql-ledger/locale/ve/bp
+++ /dev/null
@@ -1,67 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Are you sure you want to remove the marked entries from the queue?' => '¿Está seguro que desea remover las entradas seleccionadas de la cola?',
- 'Bin Lists' => 'Listas de Almacenaje',
- 'Cannot remove files!' => '¡No se puede borrar archivos!',
- 'Checks' => 'Cheques',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Date' => 'Fecha',
- 'From' => 'Desde',
- 'Invoice' => 'Factura',
- 'Invoice Number' => 'Número de Factura',
- 'Marked entries printed!' => 'Selección impresa',
- 'Month' => 'Mes',
- 'Order' => 'Orden',
- 'Order Number' => 'Número de Orden',
- 'Packing Lists' => 'Listas de Empaque',
- 'Period' => 'Período',
- 'Pick Lists' => 'Listas de Almacén',
- 'Print' => 'Imprimir',
- 'Printing ... ' => 'Imprimiendo...',
- 'Purchase Orders' => 'Pedidos',
- 'Quarter' => 'Trimestre',
- 'Quotation' => 'Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQs' => 'Solicitudes de Cotización',
- 'Receipts' => 'Recibos',
- 'Reference' => 'Referencia',
- 'Remove' => 'Eliminar',
- 'Removed spoolfiles!' => '¡Archivos de cola de impresión eliminados!',
- 'Removing marked entries from queue ...' => 'Eliminando selección de la cola de impresión...',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Select all' => 'Seleccionar todos',
- 'Spoolfile' => 'Archivo de Cola de Impresión',
- 'To' => 'Hasta',
- 'Vendor' => 'Proveedor',
- 'Work Orders' => 'Órdenes de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
- 'done' => 'hecho',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'list_spool' => 'list_spool',
- 'menubar' => 'menubar',
- 'print' => 'print',
- 'remove' => 'remove',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'imprimir' => 'print',
- 'eliminar' => 'remove',
- 'seleccionar_todos' => 'select_all',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ca b/sql-ledger/locale/ve/ca
deleted file mode 100644
index bab3e27..0000000
--- a/sql-ledger/locale/ve/ca
+++ /dev/null
@@ -1,58 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Balance' => 'Balance',
- 'Chart of Accounts' => 'Plan de Cuentas',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Include in Report' => 'Incluir en Informe',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'List Transactions' => 'Mostrar Asientos',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Period' => 'Período',
- 'Project Number' => 'Código de Proyecto',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'ca_subtotal' => 'ca_subtotal',
- 'chart_of_accounts' => 'chart_of_accounts',
- 'list' => 'list',
- 'list_transactions' => 'list_transactions',
- 'mostrar_asientos' => 'list_transactions',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/cp b/sql-ledger/locale/ve/cp
deleted file mode 100644
index 84074b1..0000000
--- a/sql-ledger/locale/ve/cp
+++ /dev/null
@@ -1,84 +0,0 @@
-$self{texts} = {
- 'AP' => 'CxP',
- 'AR' => 'CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Monto',
- 'Amount Due' => 'Cantidad Adeudada',
- 'Cannot post Payment!' => '¡No se puede registrar el Pago!',
- 'Cannot post Receipt!' => '¡No se puede registrar el Recibo!',
- 'Cannot process payment for a closed period!' => '¡No se puede procesar un pago de un periodo cerrado!',
- 'Continue' => 'Continuar',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Date missing!' => '¡Falta fecha!',
- 'Department' => 'Centro de Costos',
- 'Deposit' => 'Abono',
- 'Description' => 'Descripción',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Invoice' => 'Factura',
- 'Invoices' => 'Facturas',
- 'Memo' => 'Memo',
- 'Nothing outstanding for ' => 'Nada pendiente para',
- 'Number' => 'Código',
- 'PDF' => 'PDF',
- 'Payment' => 'Pago',
- 'Payment posted!' => '¡Pago registrado!',
- 'Post' => 'Registrar',
- 'Postscript' => 'Postscript',
- 'Prepayment' => 'Prepago',
- 'Print' => 'Imprimir',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Queue' => 'Cola',
- 'Receipt' => 'Abono',
- 'Receipt posted!' => '¡Recibo registrado!',
- 'Screen' => 'Pantalla',
- 'Select' => 'Seleccionar',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Source' => 'N° Cheque/Ref',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'customer_details' => 'customer_details',
- 'display' => 'display',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'list_invoices' => 'list_invoices',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment' => 'payment',
- 'post' => 'post',
- 'print' => 'print',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ct b/sql-ledger/locale/ve/ct
deleted file mode 100644
index 628976c..0000000
--- a/sql-ledger/locale/ve/ct
+++ /dev/null
@@ -1,176 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Asiento de CxP',
- 'AP Transactions' => 'Asientos de CxP',
- 'AR Transaction' => 'Asiento de CxC',
- 'AR Transactions' => 'Asiento de CxC',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Monto',
- 'BIC' => 'BIC',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Break' => 'Ruptura',
- 'Cannot delete customer!' => '¡No se puede borrar el cliente!',
- 'Cannot delete vendor!' => '¡No se puede borrar el vendedor!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la Compañía',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Cost' => 'Costo',
- 'Could not save pricelist!' => '¡No se pudo guardar lista de precios!',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer History' => 'Histórico de Clientes',
- 'Customer Number' => 'Código de Cliente',
- 'Customer deleted!' => '¡Cliente borrado!',
- 'Customer saved!' => '¡Cliente guardado!',
- 'Customers' => 'Clientes',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Discount' => 'Descuento',
- 'E-mail' => 'E-mail',
- 'Edit Customer' => 'Editar Cliente',
- 'Edit Vendor' => 'Editar Proveedor',
- 'Employee' => 'Empleado',
- 'Enddate' => 'Fecha de Corte',
- 'Fax' => 'Fax',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'IBAN' => 'N° Cuenta Bancaria',
- 'ID' => 'N° de identidad',
- 'Include in Report' => 'Incluir en Informe',
- 'Invoice' => 'Factura',
- 'Item already on pricelist!' => '¡Artículo está incluido en la lista de precios!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Language' => 'Idioma',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Manager' => 'Administrador',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Código',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Orphaned' => 'Huérfano',
- 'Part Number' => 'Código de Parte',
- 'Phone' => 'Teléfono',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricelist' => 'Lista de Precios',
- 'Project Number' => 'Código de Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitud de Cotización',
- 'Request for Quotations' => 'Solicitudes de Cotización',
- 'SIC' => 'CIE',
- 'SKU' => 'Código (Interno)',
- 'Sales Invoice' => 'Factura de Ventas',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de Compra',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save Pricelist' => 'Guardar Lista de Precios',
- 'Search' => 'Búsqueda',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Sell Price' => 'Precio de Venta',
- 'Serial Number' => 'Serial',
- 'Shipping Address' => 'Dirección de Envío',
- 'Startdate' => 'Fecha de Inicio',
- 'State' => 'Estado',
- 'State/Province' => 'Estado/Provincia',
- 'Sub-contract GIFI' => 'Sub-Contrato GIFI',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluído',
- 'Tax Number' => 'NIT',
- 'Tax Number / SSN' => 'RIF/NIT',
- 'Taxable' => 'Gravable',
- 'Terms' => 'Condiciones de crédito',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Type of Business' => 'Tipo de Negocio',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor History' => 'Histórico de Proveedores',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor Invoices' => 'Facturas de Compra',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor deleted!' => '¡Proveedor borrado!',
- 'Vendor saved!' => '¡Proveedor guardado!',
- 'Vendors' => 'Proveedores',
- 'days' => 'días',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_customer' => 'add_customer',
- 'add_transaction' => 'add_transaction',
- 'add_vendor' => 'add_vendor',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'continue' => 'continue',
- 'customer_pricelist' => 'customer_pricelist',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'history' => 'history',
- 'include_in_report' => 'include_in_report',
- 'item_selected' => 'item_selected',
- 'list_history' => 'list_history',
- 'list_names' => 'list_names',
- 'list_subtotal' => 'list_subtotal',
- 'menubar' => 'menubar',
- 'pricelist' => 'pricelist',
- 'pricelist_footer' => 'pricelist_footer',
- 'pricelist_header' => 'pricelist_header',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice' => 'sales_invoice',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_pricelist' => 'save_pricelist',
- 'search' => 'search',
- 'search_name' => 'search_name',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'transactions' => 'transactions',
- 'update' => 'update',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_pricelist' => 'vendor_pricelist',
- 'asiento_de_cxp' => 'ap_transaction',
- 'asiento_de_cxc' => 'ar_transaction',
- 'agregar_cliente' => 'add_customer',
- 'agregar_proveedor' => 'add_vendor',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'lista_de_precios' => 'pricelist',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'solicitud_de_cotización' => 'rfq',
- 'factura_de_ventas' => 'sales_invoice',
- 'orden_de_compra' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_lista_de_precios' => 'save_pricelist',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/gl b/sql-ledger/locale/ve/gl
deleted file mode 100644
index 0de50ec..0000000
--- a/sql-ledger/locale/ve/gl
+++ /dev/null
@@ -1,142 +0,0 @@
-$self{texts} = {
- 'AP Transaction' => 'Asiento de CxP',
- 'AR Transaction' => 'Asiento de CxC',
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Cash Transfer Transaction' => 'Agregar asiento de Transferencia',
- 'Add General Ledger Transaction' => 'Agregar Asiento al Libro Mayor General',
- 'Address' => 'Dirección',
- 'All' => 'Todos',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Transaction' => '¿Está seguro que desea borrar el Asiento?',
- 'Asset' => 'Activo',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Balance' => 'Balance',
- 'Cannot delete transaction!' => '¡No se puede borrar el asiento!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un asiento en un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Continue' => 'Continuar',
- 'Contra' => 'Cuentas de Orden',
- 'Credit' => 'Crédito',
- 'Current' => 'Actual',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit Cash Transfer Transaction' => 'Editar Asiento de Caja',
- 'Edit General Ledger Transaction' => 'Editar Asiento del Libro Mayor General',
- 'Equity' => 'Capital',
- 'Expense' => 'Gastos',
- 'FX' => 'Divisas',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'GL Transaction' => 'Asiento de Libro Mayor General',
- 'General Ledger' => 'Libro Mayor General',
- 'ID' => 'N° de identidad',
- 'Include in Report' => 'Incluir en Informe',
- 'Income' => 'Ingreso',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Liability' => 'Pasivo',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Month' => 'Mes',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Out of balance transaction!' => '¡Asiento fuera de balance!',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reference' => 'Referencia',
- 'Reference missing!' => '¡Falta Referencia!',
- 'Reports' => 'Reportes',
- 'Sales Invoice ' => 'Factura de Ventas ',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Source' => 'N° Cheque/Ref',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Transaction Date missing!' => '¡Falta Fecha de Asiento',
- 'Transaction deleted!' => '¡Asiento borrado!',
- 'Transaction posted!' => '¡Asiendo registrado!',
- 'Update' => 'Actualizar',
- 'Vendor Invoice ' => 'Factura de Compra ',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Warning!' => '¡Advertencia!',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_rows' => 'display_rows',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'gl_subtotal' => 'gl_subtotal',
- 'gl_transaction' => 'gl_transaction',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'post' => 'post',
- 'post_adjustment' => 'post_adjustment',
- 'post_as_new' => 'post_as_new',
- 'project_selected' => 'project_selected',
- 'sales_invoice_' => 'sales_invoice_',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'update' => 'update',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'asiento_de_cxp' => 'ap_transaction',
- 'asiento_de_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'asiento_de_libro_mayor_general' => 'gl_transaction',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'factura_de_ventas_' => 'sales_invoice_',
- 'actualizar' => 'update',
- 'factura_de_compra_' => 'vendor_invoice_',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/hr b/sql-ledger/locale/ve/hr
deleted file mode 100644
index 6cdd6d7..0000000
--- a/sql-ledger/locale/ve/hr
+++ /dev/null
@@ -1,109 +0,0 @@
-$self{texts} = {
- 'AP' => 'CxP',
- 'Above' => 'Encima de',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Deduction' => 'Agregar Deducción',
- 'Add Employee' => 'Agregar Empleado',
- 'Address' => 'Dirección',
- 'Administrator' => 'Administrador',
- 'After Deduction' => 'Después de Deducción',
- 'All' => 'Todos',
- 'Allowances' => 'Permisos',
- 'Amount' => 'Monto',
- 'Amount missing!' => '¡Falta Monto!',
- 'BIC' => 'BIC',
- 'Based on' => 'Basado en',
- 'Before Deduction' => 'Antes de la Deducción',
- 'Below' => 'Debajo',
- 'City' => 'Ciudad',
- 'Continue' => 'Continuar',
- 'Country' => 'País',
- 'Deduct after' => 'Deducir después de',
- 'Deduction deleted!' => 'Deducción borrada!',
- 'Deduction saved!' => '¡Deducción guardada!',
- 'Deductions' => 'Deducciones',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description missing!' => '¡Falta descripción!',
- 'E-mail' => 'E-mail',
- 'Edit Deduction' => 'Editar Deducción',
- 'Edit Employee' => 'Editar Empleado',
- 'Employee' => 'Empleado',
- 'Employee Name' => 'Nombre del Empleado',
- 'Employee Number' => 'Código de Empleado',
- 'Employee deleted!' => 'Empleado borrado!',
- 'Employee pays' => 'Empleado paga',
- 'Employee saved!' => '¡Empleado guardado!',
- 'Employees' => 'Empleados',
- 'Employer' => 'Empleador',
- 'Employer pays' => 'Empleador paga',
- 'Enddate' => 'Fecha de Corte',
- 'Expense' => 'Gastos',
- 'Home Phone' => 'Teléfono Habitación',
- 'IBAN' => 'N° Cuenta Bancaria',
- 'ID' => 'N° de identidad',
- 'Include in Report' => 'Incluir en Informe',
- 'Login' => 'Login',
- 'Manager' => 'Administrador',
- 'Maximum' => 'Máximo',
- 'Name' => 'Nombre',
- 'Name missing!' => '¡Falta nombre!',
- 'Notes' => 'Notas',
- 'Number' => 'Código',
- 'Orphaned' => 'Huérfano',
- 'Payroll Deduction' => 'Deducciones de Nómina',
- 'Rate' => 'Tarifa',
- 'Rate missing!' => '¡Falta Tarifa!',
- 'Role' => 'Función',
- 'S' => 'S',
- 'SSN' => 'RIF',
- 'Sales' => 'Ventas',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Startdate' => 'Fecha de Inicio',
- 'State/Province' => 'Estado/Provincia',
- 'Update' => 'Actualizar',
- 'User' => 'Usuario',
- 'Work Phone' => 'Teléfono Oficina',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_deduction' => 'add_deduction',
- 'add_employee' => 'add_employee',
- 'continue' => 'continue',
- 'deduction_footer' => 'deduction_footer',
- 'deduction_header' => 'deduction_header',
- 'deduction_links' => 'deduction_links',
- 'delete' => 'delete',
- 'delete_deduction' => 'delete_deduction',
- 'delete_employee' => 'delete_employee',
- 'display' => 'display',
- 'edit' => 'edit',
- 'employee_footer' => 'employee_footer',
- 'employee_header' => 'employee_header',
- 'employee_links' => 'employee_links',
- 'list_employees' => 'list_employees',
- 'menubar' => 'menubar',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_deduction' => 'save_deduction',
- 'save_employee' => 'save_employee',
- 'search' => 'search',
- 'search_deduction' => 'search_deduction',
- 'search_employee' => 'search_employee',
- 'section_menu' => 'section_menu',
- 'update' => 'update',
- 'update_deduction' => 'update_deduction',
- 'update_employee' => 'update_employee',
- 'agregar_deducción' => 'add_deduction',
- 'agregar_empleado' => 'add_employee',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ic b/sql-ledger/locale/ve/ic
deleted file mode 100644
index 0724605..0000000
--- a/sql-ledger/locale/ve/ic
+++ /dev/null
@@ -1,272 +0,0 @@
-$self{texts} = {
- 'A' => 'A',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accrual' => 'Acumulado',
- 'Active' => 'Activo',
- 'Add' => 'Agregar',
- 'Add Assembly' => 'Agregar Juego',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra/Overhead',
- 'Add Part' => 'Agregar Parte',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Add Service' => 'Agregar Servicio',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Assemblies' => 'Juegos',
- 'Assemblies restocked!' => '¡Juegos realmacendados!',
- 'Assembly' => 'Juego',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'BOM' => 'Listado de Piezas',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Break' => 'Ruptura',
- 'COGS' => 'Costo de Ventas',
- 'Cannot delete item!' => '¡No se puede borrar el artículo!',
- 'Cannot stock assemblies!' => '¡No se pueden almacenar los Juegos!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Check Inventory' => 'Revisar Inventario',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la Compañía',
- 'Components' => 'Componentes',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Cost' => 'Costo',
- 'Country' => 'País',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Código de Cliente',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'Drawing' => 'Dibujo',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit Assembly' => 'Editar Juego',
- 'Edit Labor/Overhead' => 'Editar Mano de Obra/Costo Operativo',
- 'Edit Part' => 'Editar Parte',
- 'Edit Service' => 'Editar Servicio',
- 'Employee' => 'Empleado',
- 'Expense' => 'Gastos',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'Image' => 'Imagen',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en Informe',
- 'Income' => 'Ingreso',
- 'Individual Items' => 'Artículos Individuales',
- 'Inventory' => 'Inventario',
- 'Inventory quantity must be zero before you can set this assembly obsolete!' => '¡El inventario del juego debe estar en cero antes de poder declararlo obsoleto!',
- 'Inventory quantity must be zero before you can set this part obsolete!' => '¡El inventario del artículo debe estar en cero antes de poder declararlo obsoleto!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Item deleted!' => '¡Artículo borrado!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Items' => 'Artículos',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Labor/Overhead' => 'Mano de Obra/Costo Operativo',
- 'Leadtime' => 'Tiempo de Entrega',
- 'Line Total' => 'Sumatoria de columna',
- 'Link Accounts' => 'Enlazar Cuentas',
- 'List' => 'Mostrar',
- 'List Price' => 'Precio de Lista',
- 'Make' => 'Fabricante',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'Markup' => 'Margen',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Message' => 'Mensaje',
- 'Microfiche' => 'Microficha',
- 'Model' => 'Modelo',
- 'Name' => 'Nombre',
- 'No.' => 'N°',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'Obsolete' => 'Obsoleto',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'On Hand' => 'Disponible',
- 'Open' => 'Abierto',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'Orphaned' => 'Huérfano',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Part' => 'Parte',
- 'Parts' => 'Partes',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Pricegroup' => 'Grupo de Precios',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quantity exceeds available units to stock!' => '¡La Cantidad excede el disponible en en el Inventario!',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitud de Cotización',
- 'ROP' => 'Existencia Mínima',
- 'Recd' => 'Rcbdo',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Invoice' => 'Factura de Ventas',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de Compra',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Sell' => 'Venta',
- 'Sell Price' => 'Precio de Venta',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Serial Number' => 'Serial',
- 'Service' => 'Servicio',
- 'Services' => 'Servicios',
- 'Ship' => 'Envío',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Envío',
- 'Short' => 'Corto',
- 'State/Province' => 'Estado/Provincia',
- 'Stock' => 'Inventario',
- 'Stock Assembly' => 'Inventariar Juego',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'To' => 'Hasta',
- 'Top Level' => 'Descripción Principal',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Unit' => 'Unidad',
- 'Unit of measure' => 'Unidad de medida',
- 'Update' => 'Actualizar',
- 'Updated' => 'Actualizado',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor Invoices' => 'Facturas de Compra',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Warehouse' => 'Almacén',
- 'Weight' => 'Peso',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'days' => 'días',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_assembly' => 'add_assembly',
- 'add_labor_overhead' => 'add_labor_overhead',
- 'add_part' => 'add_part',
- 'add_service' => 'add_service',
- 'assembly_row' => 'assembly_row',
- 'calc_markup' => 'calc_markup',
- 'check_customer' => 'check_customer',
- 'check_form' => 'check_form',
- 'check_vendor' => 'check_vendor',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'customer_row' => 'customer_row',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'edit_assemblyitem' => 'edit_assemblyitem',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_report' => 'generate_report',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'link_part' => 'link_part',
- 'list_assemblies' => 'list_assemblies',
- 'makemodel_row' => 'makemodel_row',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'parts_subtotal' => 'parts_subtotal',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'restock_assemblies' => 'restock_assemblies',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'stock_assembly' => 'stock_assembly',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_row' => 'vendor_row',
- 'agregar_juego' => 'add_assembly',
- 'agregar_mano_de_obra/overhead' => 'add_labor/overhead',
- 'agregar_parte' => 'add_part',
- 'agregar_servicio' => 'add_service',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'editar_juego' => 'edit_assembly',
- 'editar_parte' => 'edit_part',
- 'editar_servicio' => 'edit_service',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/io b/sql-ledger/locale/ve/io
deleted file mode 100644
index 0bb0bbe..0000000
--- a/sql-ledger/locale/ve/io
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Address' => 'Dirección',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la Compañía',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Customer Number' => 'Código de Cliente',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delivery Date' => 'Fecha de entrega',
- 'Description' => 'Descripción',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'In-line' => 'Incrustado',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Message' => 'Mensaje',
- 'No.' => 'N°',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Part' => 'Parte',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Recd' => 'Rcbdo',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Order' => 'Orden de Compra',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envío',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Envío',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Unit' => 'Unidad',
- 'Vendor Number' => 'Código de Vendedor',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'new_item' => 'new_item',
- 'post_as_new' => 'post_as_new',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_order' => 'sales_order',
- 'select_item' => 'select_item',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ir b/sql-ledger/locale/ve/ir
deleted file mode 100644
index 30e77ee..0000000
--- a/sql-ledger/locale/ve/ir
+++ /dev/null
@@ -1,214 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está seguro que desea borrar la Factura Número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la Compañía',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de Crédito',
- 'Currency' => 'Moneda',
- 'Customer Number' => 'Código de Cliente',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit Vendor Invoice' => 'Editar Factura de Compra',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Anotaciones Internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'N°',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Recd' => 'Rcbdo',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Order' => 'Orden de Compra',
- 'Screen' => 'Pantalla',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envío',
- 'Ship to' => 'Destino',
- 'Shipping Address' => 'Dirección de Envío',
- 'Source' => 'N° Cheque/Ref',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluído',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor missing!' => '¡Falta Proveedor!',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Sí',
- 'ea' => 'c/u',
- 'posted!' => '!Registrado¡',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'pedido' => 'purchase_order',
- 'actualizar' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/is b/sql-ledger/locale/ve/is
deleted file mode 100644
index 8934d1e..0000000
--- a/sql-ledger/locale/ve/is
+++ /dev/null
@@ -1,229 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Invoice' => 'Agregar Factura',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está seguro que desea borrar la Factura Número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Company Name' => 'Nombre de la Compañía',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de Crédito',
- 'Currency' => 'Moneda',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Código de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit Sales Invoice' => 'Edirar Factura de Venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'In-line' => 'Incrustado',
- 'Internal Notes' => 'Anotaciones Internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'No.' => 'N°',
- 'Notes' => 'Notas',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payments' => 'Pagos',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Recd' => 'Rcbdo',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Order' => 'Orden de Compra',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envío',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envío por',
- 'Shipping Address' => 'Dirección de Envío',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'N° Cheque/Ref',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax Included' => 'Impuesto Incluído',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento Comercial',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Yes' => 'Sí',
- 'ea' => 'c/u',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'e_mail' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'orden_de_compra' => 'sales_order',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/login b/sql-ledger/locale/ve/login
deleted file mode 100644
index e814e8e..0000000
--- a/sql-ledger/locale/ve/login
+++ /dev/null
@@ -1,25 +0,0 @@
-$self{texts} = {
- 'Company' => 'Compañía',
- 'Continue' => 'Continuar',
- 'Dataset is newer than version!' => 'La versión de la Base de Datos es más reciente que la versión del programa',
- 'Incorrect Dataset version!' => 'Versión de Base de Datos incorrecta',
- 'Incorrect Password!' => '¡Contraseña Incorrecta!',
- 'Login' => 'Login',
- 'Name' => 'Nombre',
- 'Password' => 'Contraseña',
- 'Upgrading to Version' => 'Actualizando Versión',
- 'Version' => 'Versión',
- 'You did not enter a name!' => '¡Ud. no ha introducido un nombre!',
- 'done' => 'hecho',
- 'is not a member!' => 'no es miembro',
-};
-
-$self{subs} = {
- 'login' => 'login',
- 'login_screen' => 'login_screen',
- 'logout' => 'logout',
- 'selectdataset' => 'selectdataset',
- 'login' => 'login',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/menu b/sql-ledger/locale/ve/menu
deleted file mode 100644
index 4f1b1ba..0000000
--- a/sql-ledger/locale/ve/menu
+++ /dev/null
@@ -1,133 +0,0 @@
-$self{texts} = {
- 'AP' => 'CxP',
- 'AP Aging' => 'Diario Resumido de CxP',
- 'AP Transaction' => 'Asiento de CxP',
- 'AR' => 'CxC',
- 'AR Aging' => 'Diario Resumido de CxC',
- 'AR Transaction' => 'Asiento de CxC',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Account' => 'Agregar Cuenta',
- 'Add Assembly' => 'Agregar Juego',
- 'Add Business' => 'Agregar Negocio',
- 'Add Customer' => 'Agregar Cliente',
- 'Add Department' => 'Agregar Centro de Costos',
- 'Add Employee' => 'Agregar Empleado',
- 'Add GIFI' => 'Agregar Código GIFI',
- 'Add Group' => 'Agregar Grupo',
- 'Add Labor/Overhead' => 'Agregar Mano de Obra/Overhead',
- 'Add Language' => 'Agregar Idioma',
- 'Add Part' => 'Agregar Parte',
- 'Add Pricegroup' => 'Agregar Grupo de Precios',
- 'Add Project' => 'Agregar Proyecto',
- 'Add SIC' => 'Agregar SIC',
- 'Add Service' => 'Agregar Servicio',
- 'Add Transaction' => 'Agregar Asiento',
- 'Add Vendor' => 'Agregar Proveedor',
- 'Add Warehouse' => 'Agregar Almacén',
- 'All Items' => 'Todos los Artículos',
- 'Assemblies' => 'Juegos',
- 'Audit Control' => 'Control de Auditoría',
- 'Backup' => 'Respaldo',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Batch Printing' => 'Impresión en Serie',
- 'Bin List' => 'Lista de Almacenaje',
- 'Bin Lists' => 'Listas de Almacenaje',
- 'Cash' => 'Caja',
- 'Chart of Accounts' => 'Plan de Cuentas',
- 'Check' => 'Cheque',
- 'Checks' => 'Cheques',
- 'Components' => 'Componentes',
- 'Customers' => 'Clientes',
- 'Defaults' => 'Preferencias',
- 'Departments' => 'Centros de Costos',
- 'Description' => 'Descripción',
- 'Employees' => 'Empleados',
- 'General Ledger' => 'Libro Mayor General',
- 'Goods & Services' => 'Bienes y Servicios',
- 'Groups' => 'Grupos',
- 'HR' => 'Recursos Humanos',
- 'HTML Templates' => 'Plantillas HTML',
- 'History' => 'Histórico',
- 'Income Statement' => 'Estado de Cuenta de Igresos',
- 'Invoice' => 'Factura',
- 'LaTeX Templates' => 'Plantillas LaTeX',
- 'Labor/Overhead' => 'Mano de Obra/Costo Operativo',
- 'Language' => 'Idioma',
- 'List Accounts' => 'Mostrar Cuentas',
- 'List Businesses' => 'Mostrar Negocios',
- 'List Departments' => 'Mostrar Centro de Costos',
- 'List GIFI' => 'Mostrar Código GIFI',
- 'List Languages' => 'Mostrar Idiomas',
- 'List Projects' => 'Mostrar Proyectos',
- 'List SIC' => 'Mostrar SIC',
- 'List Warehouses' => 'Mostrar Almacenes',
- 'Logout' => 'Salir',
- 'Non-taxable' => 'No gravable',
- 'Open' => 'Abierto',
- 'Order Entry' => 'Órdenes',
- 'Outstanding' => 'Pendientes',
- 'POS' => 'PdV',
- 'POS Invoice' => 'Factura de PdV',
- 'Packing List' => 'Lista de Empaque',
- 'Packing Lists' => 'Listas de Empaque',
- 'Parts' => 'Partes',
- 'Payment' => 'Pago',
- 'Payments' => 'Pagos',
- 'Pick List' => 'Lista de Almacén',
- 'Pick Lists' => 'Listas de Almacén',
- 'Preferences' => 'Preferencias',
- 'Pricegroups' => 'Grupos de Precios',
- 'Print' => 'Imprimir',
- 'Projects' => 'Proyectos',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Quotation' => 'Cotización',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitud de Cotización',
- 'RFQs' => 'Solicitudes de Cotización',
- 'Receipt' => 'Abono',
- 'Receipts' => 'Recibos',
- 'Receive' => 'Almacenar',
- 'Reconciliation' => 'Conciliación',
- 'Reports' => 'Reportes',
- 'SIC' => 'CIE',
- 'Sale' => 'Venta',
- 'Sales Invoice' => 'Factura de Ventas',
- 'Sales Invoices' => 'Facturas de Venta',
- 'Sales Order' => 'Orden de Compra',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Save to File' => 'Archivar',
- 'Search' => 'Búsqueda',
- 'Send by E-Mail' => 'Enviar por E-mail',
- 'Services' => 'Servicios',
- 'Ship' => 'Envío',
- 'Shipping' => 'Envío',
- 'Statement' => 'Estado de Cuenta',
- 'Stock Assembly' => 'Inventariar Juego',
- 'Stylesheet' => 'Hoja de Estilo',
- 'System' => 'Sistema',
- 'Tax collected' => 'Impuestos retenidos',
- 'Tax paid' => 'Impuestos pagados',
- 'Text Templates' => 'Plantillas de Texto',
- 'Transactions' => 'Asientos',
- 'Transfer' => 'Transferencia',
- 'Translations' => 'Traducciones',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Type of Business' => 'Tipo de Negocio',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendors' => 'Proveedores',
- 'Version' => 'Versión',
- 'Warehouses' => 'Almacenes',
- 'Work Order' => 'Orden de Trabajo',
- 'Work Orders' => 'Órdenes de Trabajo',
- 'Yearend' => 'Cierre de Ejercicio',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'display' => 'display',
- 'menubar' => 'menubar',
- 'section_menu' => 'section_menu',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/oe b/sql-ledger/locale/ve/oe
deleted file mode 100644
index 28ddfcf..0000000
--- a/sql-ledger/locale/ve/oe
+++ /dev/null
@@ -1,307 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Exchange Rate' => 'Agregar Tasa de Cambio',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Invoice' => 'Agregar Factura',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Add Vendor Invoice' => 'Agregar Factura de Proveedor',
- 'Address' => 'Dirección',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Order Number' => '¿Está seguro que desea
-borrar la Orden Número?',
- 'Are you sure you want to delete Quotation Number' => '¿Está seguro que desea borrar la Cotización número',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Business' => 'Negocio',
- 'C' => 'C',
- 'Cannot delete order!' => '¡No se puede borrar el pedido!',
- 'Cannot delete quotation!' => '¡No puedo borrar la cotización!',
- 'Cannot save order!' => '¡No se puede guardar el pedido!',
- 'Cannot save quotation!' => '¡No se puede guardar la cotización!',
- 'Cc' => 'Cc',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la Compañía',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Could not save!' => '¡No se pudo guardar!',
- 'Could not transfer Inventory!' => 'No se pudo transferir Inventario!',
- 'Country' => 'País',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Código de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Date Received' => 'Fecha Recibido',
- 'Date received missing!' => '¡Falta fecha de recibo!',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Done' => 'Hecho',
- 'E-mail' => 'E-mail',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit Purchase Order' => 'Editar Pedido',
- 'Edit Quotation' => 'Editar Cotización',
- 'Edit Request for Quotation' => 'Editar Solicitud de Cotización',
- 'Edit Sales Order' => 'Editar Orden de Compra',
- 'Employee' => 'Empleado',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'ID' => 'N° de identidad',
- 'In-line' => 'Incrustado',
- 'Include in Report' => 'Incluir en Informe',
- 'Internal Notes' => 'Anotaciones Internas',
- 'Inventory saved!' => 'Inventario guardado!',
- 'Inventory transferred!' => 'Inventario transferido!',
- 'Invoice' => 'Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Message' => 'Mensaje',
- 'Month' => 'Mes',
- 'No.' => 'N°',
- 'Notes' => 'Notas',
- 'Nothing entered!' => 'No hay nada ingresado',
- 'Nothing to transfer!' => '¡Nada que transferir!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'O' => 'O',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date' => 'Fecha de la Orden',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'Order deleted!' => '¡Orden borrada!',
- 'Order processed!' => '¡Orden procesada!',
- 'Order saved!' => '¡Orden guardada!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Part' => 'Parte',
- 'Part Number' => 'Código de Parte',
- 'Period' => 'Período',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Save' => 'Imprimir y Guardar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Purchase Order' => 'Pedido',
- 'Purchase Orders' => 'Pedidos',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation ' => 'Cotización ',
- 'Quotation Date' => 'Fecha de Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number' => 'Número de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Quotation deleted!' => '¡Cotización borrada!',
- 'Quotations' => 'Cotizaciones',
- 'RFQ' => 'Solicitud de Cotización',
- 'RFQ ' => 'Solicitud de Cotización',
- 'RFQ Number' => 'Número de Solicitud de Cotización',
- 'Recd' => 'Rcbdo',
- 'Receive Merchandise' => 'Almacenar Mercancía',
- 'Remaining' => 'Resto',
- 'Request for Quotation' => 'Solicitud de Cotización',
- 'Request for Quotations' => 'Solicitudes de Cotización',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Invoice' => 'Factura de Ventas',
- 'Sales Order' => 'Orden de Compra',
- 'Sales Orders' => 'Órdenes de Compra',
- 'Salesperson' => 'Vendedor',
- 'Save' => 'Guardar',
- 'Save as new' => 'Guardar como nuevo',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envío',
- 'Ship Merchandise' => 'Enviar Mercancía',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envío por',
- 'Shipping Address' => 'Dirección de Envío',
- 'Shipping Date' => 'Fecha de Envío',
- 'Shipping Date missing!' => 'Falta Fecha de Envío',
- 'Shipping Point' => 'Puerto de Embarque',
- 'State/Province' => 'Estado/Provincia',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluído',
- 'Terms' => 'Condiciones de crédito',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento Comercial',
- 'Transfer' => 'Transferencia',
- 'Transfer Inventory' => 'Transferir Inventario',
- 'Transfer to' => 'Transferir a',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Valid until' => 'Válido hasta',
- 'Vendor' => 'Proveedor',
- 'Vendor Invoice' => 'Factura de Compra',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor missing!' => '¡Falta Proveedor!',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Warehouse' => 'Almacén',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
- 'days' => 'días',
- 'ea' => 'c/u',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'backorder_exchangerate' => 'backorder_exchangerate',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_backorder' => 'create_backorder',
- 'create_form' => 'create_form',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'display_ship_receive' => 'display_ship_receive',
- 'done' => 'done',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'gl_transaction' => 'gl_transaction',
- 'invoice' => 'invoice',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_transfer' => 'list_transfer',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'order_links' => 'order_links',
- 'post_as_new' => 'post_as_new',
- 'prepare_order' => 'prepare_order',
- 'print' => 'print',
- 'print_and_save' => 'print_and_save',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'quotation_' => 'quotation_',
- 'redirect' => 'redirect',
- 'rfq' => 'rfq',
- 'rfq_' => 'rfq_',
- 'sales_invoice' => 'sales_invoice',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'save' => 'save',
- 'save_as_new' => 'save_as_new',
- 'save_exchangerate' => 'save_exchangerate',
- 'search' => 'search',
- 'search_transfer' => 'search_transfer',
- 'section_menu' => 'section_menu',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_receive' => 'ship_receive',
- 'ship_to' => 'ship_to',
- 'subtotal' => 'subtotal',
- 'transactions' => 'transactions',
- 'transfer' => 'transfer',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice' => 'vendor_invoice',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'hecho' => 'done',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'imprimir_y_guardar' => 'print_and_save',
- 'pedido' => 'purchase_order',
- 'cotización' => 'quotation',
- 'cotización_' => 'quotation_',
- 'solicitud_de_cotización' => 'rfq',
- 'solicitud_de_cotización' => 'rfq_',
- 'factura_de_ventas' => 'sales_invoice',
- 'orden_de_compra' => 'sales_order',
- 'guardar' => 'save',
- 'guardar_como_nuevo' => 'save_as_new',
- 'destino' => 'ship_to',
- 'transferencia' => 'transfer',
- 'actualizar' => 'update',
- 'factura_de_compra' => 'vendor_invoice',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/pe b/sql-ledger/locale/ve/pe
deleted file mode 100644
index 08d1b51..0000000
--- a/sql-ledger/locale/ve/pe
+++ /dev/null
@@ -1,82 +0,0 @@
-$self{texts} = {
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Add Group' => 'Agregar Grupo',
- 'Add Pricegroup' => 'Agregar Grupo de Precios',
- 'Add Project' => 'Agregar Proyecto',
- 'All' => 'Todos',
- 'Continue' => 'Continuar',
- 'Delete' => 'Borrar',
- 'Description' => 'Descripción',
- 'Description Translations' => 'Traducción de Descripciones',
- 'Edit Description Translations' => 'Editar Traducción de Descripciones',
- 'Edit Group' => 'Editar Grupo',
- 'Edit Pricegroup' => 'Editar Grupo de Precios',
- 'Edit Project' => 'Editar Proyecto',
- 'Group' => 'Grupo',
- 'Group Translations' => 'Traducción de Grupos',
- 'Group deleted!' => '¡Grupo eleminado!',
- 'Group missing!' => '¡Falta grupo!',
- 'Group saved!' => '¡Grupo guardado!',
- 'Groups' => 'Grupos',
- 'Language' => 'Idioma',
- 'Languages not defined!' => '¡No hay idiomas definidos!',
- 'Number' => 'Código',
- 'Orphaned' => 'Huérfano',
- 'Pricegroup' => 'Grupo de Precios',
- 'Pricegroup deleted!' => '¡Grupo de Precios Borrado!',
- 'Pricegroup missing!' => '¡Falta Grupo de Precios!',
- 'Pricegroup saved!' => '¡Grupo de Precios guardado!',
- 'Pricegroups' => 'Grupos de Precios',
- 'Project' => 'Proyecto',
- 'Project Description Translations' => 'Traducción de Descripción de Proyectos',
- 'Project Number' => 'Código de Proyecto',
- 'Project Number missing!' => '¡Falta Código de Proyecto!',
- 'Project deleted!' => '¡Proyecto borrado!',
- 'Project saved!' => '¡Proyecto guardado!',
- 'Projects' => 'Proyectos',
- 'Save' => 'Guardar',
- 'Translation' => 'Traducción',
- 'Translation deleted!' => 'Traducción borrada!',
- 'Translations saved!' => 'Traducciones guardadadas',
- 'Update' => 'Actualizar',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_group' => 'add_group',
- 'add_pricegroup' => 'add_pricegroup',
- 'add_project' => 'add_project',
- 'continue' => 'continue',
- 'delete' => 'delete',
- 'display' => 'display',
- 'edit' => 'edit',
- 'edit_translation' => 'edit_translation',
- 'list_translations' => 'list_translations',
- 'menubar' => 'menubar',
- 'partsgroup_footer' => 'partsgroup_footer',
- 'partsgroup_header' => 'partsgroup_header',
- 'partsgroup_report' => 'partsgroup_report',
- 'pricegroup_footer' => 'pricegroup_footer',
- 'pricegroup_header' => 'pricegroup_header',
- 'pricegroup_report' => 'pricegroup_report',
- 'project_footer' => 'project_footer',
- 'project_header' => 'project_header',
- 'project_report' => 'project_report',
- 'save' => 'save',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'translation' => 'translation',
- 'translation_footer' => 'translation_footer',
- 'translation_header' => 'translation_header',
- 'update' => 'update',
- 'agregar_grupo' => 'add_group',
- 'agregar_grupo_de_precios' => 'add_pricegroup',
- 'agregar_proyecto' => 'add_project',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'guardar' => 'save',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/pos b/sql-ledger/locale/ve/pos
deleted file mode 100644
index a658050..0000000
--- a/sql-ledger/locale/ve/pos
+++ /dev/null
@@ -1,68 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Add POS Invoice' => 'Agregar Factura PdV',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Change' => 'Cambiar',
- 'Continue' => 'Continuar',
- 'Credit Limit' => 'Límite de Crédito',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Customer' => 'Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Delete' => 'Borrar',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Edit POS Invoice' => 'Editar Factura de PdV',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Extended' => 'Extendido',
- 'From' => 'Desde',
- 'Language' => 'Idioma',
- 'Memo' => 'Memo',
- 'Month' => 'Mes',
- 'Number' => 'Código',
- 'Open' => 'Abierto',
- 'Paid' => 'Pagado',
- 'Period' => 'Período',
- 'Post' => 'Registrar',
- 'Posted!' => '¡Registrado!',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Printed' => 'Impreso',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Source' => 'N° Cheque/Ref',
- 'Subtotal' => 'Subtotal',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'add' => 'add',
- 'display_row' => 'display_row',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'openinvoices' => 'openinvoices',
- 'post' => 'post',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'receipts' => 'receipts',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'registrar' => 'post',
- 'imprimir' => 'print',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/ps b/sql-ledger/locale/ve/ps
deleted file mode 100644
index 76d32ee..0000000
--- a/sql-ledger/locale/ve/ps
+++ /dev/null
@@ -1,341 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario Resumido de CxP',
- 'AR Aging' => 'Diario Resumido de CxC',
- 'AR Outstanding' => 'Pendientes de CxC',
- 'AR Transaction' => 'Asiento de CxC',
- 'AR Transactions' => 'Asiento de CxC',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Add AR Transaction' => 'Añadir Asiento de CxC',
- 'Add POS Invoice' => 'Agregar Factura PdV',
- 'Add Purchase Order' => 'Agregar Pedido',
- 'Add Quotation' => 'Agregar Cotización',
- 'Add Request for Quotation' => 'Agregar Solicitud de Cotización',
- 'Add Sales Invoice' => 'Agregar Factura',
- 'Add Sales Order' => 'Agregar Orden de Compra',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Monto',
- 'Amount Due' => 'Cantidad Adeudada',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Are you sure you want to delete Invoice Number' => '¿Está seguro que desea borrar la Factura Número',
- 'Are you sure you want to delete Transaction' => '¿Está seguro que desea borrar el Asiento?',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Bcc' => 'Bcc',
- 'Billing Address' => 'Dirección de Facturación',
- 'Bin' => 'Anaquel/Cesta',
- 'Bin List' => 'Lista de Almacenaje',
- 'Business' => 'Negocio',
- 'Cannot delete invoice!' => '¡No se puede borrar la factura!',
- 'Cannot delete transaction!' => '¡No se puede borrar el asiento!',
- 'Cannot post invoice for a closed period!' => '¡No se puede registrar una factura en un periodo cerrado!',
- 'Cannot post invoice!' => '¡No se puede registrar la factura!',
- 'Cannot post payment for a closed period!' => '¡No se puede registrar un pago en un periodo cerrado!',
- 'Cannot post transaction for a closed period!' => '¡No se puede registrar un asiento en un periodo cerrado',
- 'Cannot post transaction!' => '¡No se puede registrar el asiento!',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Change' => 'Cambiar',
- 'Check' => 'Cheque',
- 'City' => 'Ciudad',
- 'Closed' => 'Cerrado',
- 'Company Name' => 'Nombre de la Compañía',
- 'Compare to' => 'Comparar contra',
- 'Confirm!' => '¡Favor Confirmar!',
- 'Contact' => 'Contacto',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Country' => 'País',
- 'Credit' => 'Crédito',
- 'Credit Limit' => 'Límite de Crédito',
- 'Curr' => 'Mon.',
- 'Currency' => 'Moneda',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del Periodo',
- 'Customer' => 'Cliente',
- 'Customer Number' => 'Código de Cliente',
- 'Customer missing!' => '¡Falta el cliente!',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Date Paid' => 'Fecha de Pago',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Decimalplaces' => 'Dígitos decimales',
- 'Delete' => 'Borrar',
- 'Delivery Date' => 'Fecha de entrega',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de Vencimiento',
- 'Due Date missing!' => 'Falta la Fecha de Vencimiento',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Enviar Comprobante por E-mail a',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'E-mailed' => 'Enviado por E-mail',
- 'Edit AR Transaction' => 'Editar Asientos de CxC',
- 'Edit POS Invoice' => 'Editar Factura de PdV',
- 'Edit Sales Invoice' => 'Edirar Factura de Venta',
- 'Exch' => 'Cambio',
- 'Exchange Rate' => 'Tasa de Cambio',
- 'Exchange rate for payment missing!' => '¡Falta la tasa de cambio para el pago!',
- 'Exchange rate missing!' => '¡Falta tasa de cambio!',
- 'Extended' => 'Extendido',
- 'Fax' => 'Fax',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Group' => 'Grupo',
- 'Group Items' => 'Agrupar Artículos',
- 'Heading' => 'Encabezado',
- 'ID' => 'N° de identidad',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencial por Tasa de Cambio',
- 'Include in Report' => 'Incluir en Informe',
- 'Income Statement' => 'Estado de Cuenta de Igresos',
- 'Internal Notes' => 'Anotaciones Internas',
- 'Invoice' => 'Factura',
- 'Invoice Date' => 'Fecha de Factura',
- 'Invoice Date missing!' => '¡Falta Fecha de Factura!',
- 'Invoice Number' => 'Número de Factura',
- 'Invoice Number missing!' => '¡Falta Número de Factura!',
- 'Invoice deleted!' => '¡Factura borrada!',
- 'Invoice posted!' => '¡Factura registrada!',
- 'Invoice processed!' => '¡Factura procesada!',
- 'Item not on file!' => '¡El artículo no se encuentra en la base de datos!',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Language' => 'Idioma',
- 'Manager' => 'Administrador',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Month' => 'Mes',
- 'N/A' => 'No existe',
- 'No.' => 'N°',
- 'Non-taxable Purchases' => 'Compras no gravadas',
- 'Non-taxable Sales' => 'Ventas no gravadas',
- 'Notes' => 'Notas',
- 'Nothing selected!' => '¡No se ha seleccionado nada!',
- 'Nothing to print!' => '!Nada que imprimir!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Number missing in Row' => '¡Falta Número en la Fila!',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Open' => 'Abierto',
- 'Order' => 'Orden',
- 'Order Date missing!' => '¡Falta fecha de la Orden!',
- 'Order Number' => 'Número de Orden',
- 'Order Number missing!' => '¡Falta Número de la Orden!',
- 'PDF' => 'PDF',
- 'Packing List' => 'Lista de Empaque',
- 'Packing List Date missing!' => '¡Falta Fecha de Lista de Empaque!',
- 'Packing List Number missing!' => '¡Falta Código de Lista de Empaque!',
- 'Paid' => 'Pagado',
- 'Part' => 'Parte',
- 'Payment date missing!' => 'Falta fecha de pago',
- 'Payments' => 'Pagos',
- 'Period' => 'Período',
- 'Phone' => 'Teléfono',
- 'Pick List' => 'Lista de Almacén',
- 'Post' => 'Registrar',
- 'Post as new' => 'Registrar como nuevo',
- 'Posted!' => '¡Registrado!',
- 'Postscript' => 'Postscript',
- 'Price' => 'Precio',
- 'Print' => 'Imprimir',
- 'Print and Post' => 'Imprimir y Registrar',
- 'Printed' => 'Impreso',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Código de Proyecto',
- 'Project Transactions' => 'Asientos de Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Purchase Order' => 'Pedido',
- 'Qty' => 'Cantidad',
- 'Quarter' => 'Trimestre',
- 'Queue' => 'Cola',
- 'Queued' => 'En Cola',
- 'Quotation' => 'Cotización',
- 'Quotation Date missing!' => 'Falta Fecha de Cotización',
- 'Quotation Number missing!' => '¡Falta Número de Cotización!',
- 'Recd' => 'Rcbdo',
- 'Receipt' => 'Abono',
- 'Receipts' => 'Recibos',
- 'Record in' => 'Registrar en',
- 'Remaining' => 'Resto',
- 'Report for' => 'Reporte para',
- 'Required by' => 'Requerido para el',
- 'SKU' => 'Código (Interno)',
- 'Sales Invoice.' => 'Factura de Ventas.',
- 'Sales Order' => 'Orden de Compra',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select Printer or Queue!' => '¡Seleccione Impresora o Cola!',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the items below' => 'Seleccione de uno de los artículos siguientes',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select payment' => 'Seleccione pago!',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Serial No.' => 'Serial',
- 'Service' => 'Servicio',
- 'Ship' => 'Envío',
- 'Ship to' => 'Destino',
- 'Ship via' => 'Envío por',
- 'Shipping Address' => 'Dirección de Envío',
- 'Shipping Point' => 'Puerto de Embarque',
- 'Source' => 'N° Cheque/Ref',
- 'Standard' => 'Estándard',
- 'State/Province' => 'Estado/Provincia',
- 'Statement' => 'Estado de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de Cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax Included' => 'Impuesto Incluído',
- 'Tax collected' => 'Impuestos retenidos',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trade Discount' => 'Descuento Comercial',
- 'Transaction' => 'Asiento',
- 'Transaction deleted!' => '¡Asiento borrado!',
- 'Transaction posted!' => '¡Asiendo registrado!',
- 'Translation not on file!' => 'Traducción no se encuentra en la Base de Datos',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Unit' => 'Unidad',
- 'Update' => 'Actualizar',
- 'Vendor' => 'Proveedor',
- 'Vendor Number' => 'Código de Vendedor',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'What type of item is this?' => '¿Qué tipo de artículo es este?',
- 'Work Order' => 'Orden de Trabajo',
- 'Year' => 'Año',
- 'Yes' => 'Sí',
- 'as at' => 'al',
- 'ea' => 'c/u',
- 'for Period' => 'para el Período',
- 'sent' => 'enviado',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add' => 'add',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_subtotal' => 'ar_subtotal',
- 'ar_transaction' => 'ar_transaction',
- 'ar_transactions' => 'ar_transactions',
- 'calc_markup' => 'calc_markup',
- 'check_form' => 'check_form',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'create_form' => 'create_form',
- 'create_links' => 'create_links',
- 'customer_details' => 'customer_details',
- 'delete' => 'delete',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'display_row' => 'display_row',
- 'e_mail' => 'e_mail',
- 'edit' => 'edit',
- 'form_footer' => 'form_footer',
- 'form_header' => 'form_header',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'invoice_links' => 'invoice_links',
- 'invoicetotal' => 'invoicetotal',
- 'item_selected' => 'item_selected',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'lookup_partsgroup' => 'lookup_partsgroup',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'new_item' => 'new_item',
- 'openinvoices' => 'openinvoices',
- 'payment_selected' => 'payment_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'post' => 'post',
- 'post_as_new' => 'post_as_new',
- 'prepare_invoice' => 'prepare_invoice',
- 'print' => 'print',
- 'print_and_post' => 'print_and_post',
- 'print_check' => 'print_check',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'print_receipt' => 'print_receipt',
- 'print_transaction' => 'print_transaction',
- 'project_selected' => 'project_selected',
- 'purchase_order' => 'purchase_order',
- 'quotation' => 'quotation',
- 'receipts' => 'receipts',
- 'redirect' => 'redirect',
- 'report' => 'report',
- 'rfq' => 'rfq',
- 'sales_invoice_' => 'sales_invoice_',
- 'sales_order' => 'sales_order',
- 'search' => 'search',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_item' => 'select_item',
- 'select_name' => 'select_name',
- 'select_payment' => 'select_payment',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'ship_to' => 'ship_to',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'update' => 'update',
- 'validate_items' => 'validate_items',
- 'vendor_details' => 'vendor_details',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'yes' => 'yes',
- 'asiento_de_cxc' => 'ar_transaction',
- 'continuar' => 'continue',
- 'borrar' => 'delete',
- 'e_mail' => 'e_mail',
- 'registrar' => 'post',
- 'registrar_como_nuevo' => 'post_as_new',
- 'imprimir' => 'print',
- 'imprimir_y_registrar' => 'print_and_post',
- 'factura_de_ventas.' => 'sales_invoice.',
- 'orden_de_compra' => 'sales_order',
- 'seleccionar_todos' => 'select_all',
- 'destino' => 'ship_to',
- 'actualizar' => 'update',
- 'sí' => 'yes',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/pw b/sql-ledger/locale/ve/pw
deleted file mode 100644
index 6ce7c48..0000000
--- a/sql-ledger/locale/ve/pw
+++ /dev/null
@@ -1,11 +0,0 @@
-$self{texts} = {
- 'Continue' => 'Continuar',
- 'Password' => 'Contraseña',
-};
-
-$self{subs} = {
- 'getpassword' => 'getpassword',
- 'continuar' => 'continue',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/rc b/sql-ledger/locale/ve/rc
deleted file mode 100644
index 92fb8f6..0000000
--- a/sql-ledger/locale/ve/rc
+++ /dev/null
@@ -1,79 +0,0 @@
-$self{texts} = {
- 'Account' => 'Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Balance' => 'Balance',
- 'Beginning Balance' => 'Balance Inicial',
- 'Cleared' => 'Debitado',
- 'Continue' => 'Continuar',
- 'Current' => 'Actual',
- 'Date' => 'Fecha',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Decrease' => 'Reducir',
- 'Deposit' => 'Abono',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Difference' => 'Diferencia',
- 'Done' => 'Hecho',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'Include Exchange Rate Difference' => 'Incluir Diferencial por Tasa de Cambio',
- 'Increase' => 'Aumentar',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Month' => 'Mes',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Out of balance!' => '¡Fuera de balance!',
- 'Outstanding' => 'Pendientes',
- 'Payment' => 'Pago',
- 'Period' => 'Período',
- 'Quarter' => 'Trimestre',
- 'R' => 'R',
- 'Reconciliation' => 'Conciliación',
- 'Reconciliation Report' => 'Reporte de Conciliación',
- 'Select all' => 'Seleccionar todos',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Source' => 'N° Cheque/Ref',
- 'Statement Balance' => 'Balance de Cuenta',
- 'Summary' => 'Resumen',
- 'To' => 'Hasta',
- 'Update' => 'Actualizar',
- 'Year' => 'Año',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'continue' => 'continue',
- 'display' => 'display',
- 'display_form' => 'display_form',
- 'done' => 'done',
- 'get_payments' => 'get_payments',
- 'menubar' => 'menubar',
- 'reconciliation' => 'reconciliation',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'update' => 'update',
- 'continuar' => 'continue',
- 'hecho' => 'done',
- 'seleccionar_todos' => 'select_all',
- 'actualizar' => 'update',
-};
-
-1;
diff --git a/sql-ledger/locale/ve/rp b/sql-ledger/locale/ve/rp
deleted file mode 100644
index bd38471..0000000
--- a/sql-ledger/locale/ve/rp
+++ /dev/null
@@ -1,165 +0,0 @@
-$self{texts} = {
- 'AP Aging' => 'Diario Resumido de CxP',
- 'AR Aging' => 'Diario Resumido de CxC',
- 'Account' => 'Cuenta',
- 'Account Number' => 'Número de Cuenta',
- 'Accounting Menu' => 'Menú de Contabilidad',
- 'Accounts' => 'Cuentas',
- 'Accrual' => 'Acumulado',
- 'Address' => 'Dirección',
- 'All Accounts' => 'Todas las Cuentas',
- 'Amount' => 'Monto',
- 'Apr' => 'Abr',
- 'April' => 'de abril',
- 'Attachment' => 'Adjunto',
- 'Aug' => 'Ago',
- 'August' => 'de agosto',
- 'Balance' => 'Balance',
- 'Balance Sheet' => 'Hoja de Balance',
- 'Bcc' => 'Bcc',
- 'Cash' => 'Caja',
- 'Cc' => 'Cc',
- 'Compare to' => 'Comparar contra',
- 'Continue' => 'Continuar',
- 'Copies' => 'Copias',
- 'Credit' => 'Crédito',
- 'Curr' => 'Mon.',
- 'Current' => 'Actual',
- 'Current Earnings' => 'Resultado del Periodo',
- 'Customer' => 'Cliente',
- 'Customer not on file!' => '¡El cliente no existe en la base datos!',
- 'Date' => 'Fecha',
- 'Debit' => 'Débito',
- 'Dec' => 'Dic',
- 'December' => 'de diciembre',
- 'Decimalplaces' => 'Dígitos decimales',
- 'Department' => 'Centro de Costos',
- 'Description' => 'Descripción',
- 'Detail' => 'Detalle',
- 'Due Date' => 'Fecha de Vencimiento',
- 'E-mail' => 'E-mail',
- 'E-mail Statement to' => 'Enviar Comprobante por E-mail a',
- 'E-mail address missing!' => 'Falta dirección de E-mail',
- 'Feb' => 'Feb',
- 'February' => 'de febrero',
- 'From' => 'Desde',
- 'GIFI' => 'Código GIFI',
- 'Heading' => 'Encabezado',
- 'ID' => 'N° de identidad',
- 'In-line' => 'Incrustado',
- 'Include Exchange Rate Difference' => 'Incluir Diferencial por Tasa de Cambio',
- 'Include in Report' => 'Incluir en Informe',
- 'Income Statement' => 'Estado de Cuenta de Igresos',
- 'Invoice' => 'Factura',
- 'Jan' => 'Ene',
- 'January' => 'de enero',
- 'Jul' => 'Jul',
- 'July' => 'de julio',
- 'Jun' => 'Jun',
- 'June' => 'de junio',
- 'Language' => 'Idioma',
- 'Mar' => 'Mar',
- 'March' => 'de marzo',
- 'May' => 'May',
- 'May ' => 'de mayo',
- 'Memo' => 'Memo',
- 'Message' => 'Mensaje',
- 'Method' => 'Metódo',
- 'Month' => 'Mes',
- 'N/A' => 'No existe',
- 'Non-taxable Purchases' => 'Compras no gravadas',
- 'Non-taxable Sales' => 'Ventas no gravadas',
- 'Nothing selected!' => '¡No se ha seleccionado nada!',
- 'Nov' => 'Nov',
- 'November' => 'de noviembre',
- 'Number' => 'Código',
- 'Oct' => 'Oct',
- 'October' => 'de octubre',
- 'Order' => 'Orden',
- 'PDF' => 'PDF',
- 'Payments' => 'Pagos',
- 'Period' => 'Período',
- 'Postscript' => 'Postscript',
- 'Print' => 'Imprimir',
- 'Project' => 'Proyecto',
- 'Project Number' => 'Código de Proyecto',
- 'Project Transactions' => 'Asientos de Proyecto',
- 'Project not on file!' => '¡Proyecto no existe en la Base de Datos!',
- 'Quarter' => 'Trimestre',
- 'Receipts' => 'Recibos',
- 'Report for' => 'Reporte para',
- 'Salesperson' => 'Vendedor',
- 'Screen' => 'Pantalla',
- 'Select all' => 'Seleccionar todos',
- 'Select from one of the names below' => 'Seleccione de uno de los nombres siguientes',
- 'Select from one of the projects below' => 'Seleccione uno de los proyectos de la lista',
- 'Select postscript or PDF!' => '¡Seleccione postscript o PDF!',
- 'Sep' => 'Sep',
- 'September' => 'de septiembre',
- 'Source' => 'N° Cheque/Ref',
- 'Standard' => 'Estándard',
- 'Statement' => 'Estado de Cuenta',
- 'Statement sent to' => 'Estado de Cuenta enviado a',
- 'Statements sent to printer!' => '¡Estado de Cuenta enviado a la impresora!',
- 'Subject' => 'Asunto',
- 'Subtotal' => 'Subtotal',
- 'Summary' => 'Resumen',
- 'Tax' => 'Impuesto',
- 'Tax collected' => 'Impuestos retenidos',
- 'Tax paid' => 'Impuestos pagados',
- 'Till' => 'Caja',
- 'To' => 'Hasta',
- 'Total' => 'Total',
- 'Trial Balance' => 'Balance de Comprobación',
- 'Vendor' => 'Proveedor',
- 'Vendor not on file!' => '¡Proveedor no se encuentra en la Base de Datos!',
- 'Year' => 'Año',
- 'as at' => 'al',
- 'for Period' => 'para el Período',
-};
-
-$self{subs} = {
- 'acc_menu' => 'acc_menu',
- 'add_transaction' => 'add_transaction',
- 'aging' => 'aging',
- 'ap_transaction' => 'ap_transaction',
- 'ar_transaction' => 'ar_transaction',
- 'check_name' => 'check_name',
- 'check_project' => 'check_project',
- 'continue' => 'continue',
- 'display' => 'display',
- 'e_mail' => 'e_mail',
- 'generate_ap_aging' => 'generate_ap_aging',
- 'generate_ar_aging' => 'generate_ar_aging',
- 'generate_balance_sheet' => 'generate_balance_sheet',
- 'generate_income_statement' => 'generate_income_statement',
- 'generate_projects' => 'generate_projects',
- 'generate_tax_report' => 'generate_tax_report',
- 'generate_trial_balance' => 'generate_trial_balance',
- 'gl_transaction' => 'gl_transaction',
- 'list_accounts' => 'list_accounts',
- 'list_payments' => 'list_payments',
- 'menubar' => 'menubar',
- 'name_selected' => 'name_selected',
- 'payment_subtotal' => 'payment_subtotal',
- 'print' => 'print',
- 'print_form' => 'print_form',
- 'print_options' => 'print_options',
- 'project_selected' => 'project_selected',
- 'report' => 'report',
- 'sales_invoice_' => 'sales_invoice_',
- 'section_menu' => 'section_menu',
- 'select_all' => 'select_all',
- 'select_name' => 'select_name',
- 'select_project' => 'select_project',
- 'send_email' => 'send_email',
- 'statement_details' => 'statement_details',
- 'tax_subtotal' => 'tax_subtotal',
- 'vendor_invoice_' => 'vendor_invoice_',
- 'continuar' => 'continue',
- 'e_mail' => 'e_mail',
- 'imprimir' => 'print',
- 'seleccionar_todos' => 'select_all',
-};
-
-1;
diff --git a/sql-ledger/login.pl b/sql-ledger/login.pl
deleted file mode 100755
index 5e72079..0000000
--- a/sql-ledger/login.pl
+++ /dev/null
@@ -1,129 +0,0 @@
-#!/usr/bin/perl
-#
-######################################################################
-# SQL-Ledger Accounting
-# Copyright (C) 2001
-#
-# Author: Dieter Simader
-# Email: dsimader@sql-ledger.org
-# Web: http://www.sql-ledger.org
-#
-# Contributors:
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#######################################################################
-#
-# this script sets up the terminal and runs the scripts
-# in bin/$terminal directory
-# admin.pl is linked to this script
-#
-#######################################################################
-
-
-# setup defaults, DO NOT CHANGE
-$userspath = "users";
-$spool = "spool";
-$templates = "templates";
-$memberfile = "users/members";
-$sendmail = "| /usr/sbin/sendmail -t";
-%printer = ( Printer => 'lpr' );
-########## end ###########################################
-
-
-$| = 1;
-
-eval { require "sql-ledger.conf"; };
-
-if ($ENV{CONTENT_LENGTH}) {
- read(STDIN, $_, $ENV{CONTENT_LENGTH});
-}
-
-if ($ENV{QUERY_STRING}) {
- $_ = $ENV{QUERY_STRING};
-}
-
-if ($ARGV[0]) {
- $_ = $ARGV[0];
-}
-
-
-%form = split /[&=]/;
-
-# fix for apache 2.0 bug
-map { $form{$_} =~ s/\\$// } keys %form;
-
-# name of this script
-$0 =~ tr/\\/\//;
-$pos = rindex $0, '/';
-$script = substr($0, $pos + 1);
-
-
-if (-e "$userspath/nologin" && $script ne 'admin.pl') {
- print "Content-Type: text/html\n\n" if $ENV{HTTP_USER_AGENT};
- print "\nLogin disabled!\n";
- exit;
-}
-
-
-if ($form{path}) {
- $form{path} =~ s/%2f/\//gi;
- $form{path} =~ s/\.\.\///g;
-
- if ($form{path} !~ /^bin\//) {
- print "Content-Type: text/html\n\n" if $ENV{HTTP_USER_AGENT};
- print "\nInvalid path!\n";
- exit;
- }
-
-
- $ARGV[0] = "$_&script=$script";
- require "$form{path}/$script";
-} else {
-
- if (!$form{terminal}) {
- if ($ENV{HTTP_USER_AGENT}) {
- # web browser
- $form{terminal} = "lynx";
- if ($ENV{HTTP_USER_AGENT} !~ /lynx/i) {
- $form{terminal} = "mozilla";
- $form{jsc} = 1;
- }
- } else {
- if ($ENV{TERM} =~ /xterm/) {
- $form{terminal} = "xterm";
- }
- if ($ENV{TERM} =~ /(console|linux|vt.*)/i) {
- $form{terminal} = "console";
- }
- }
- }
-
-
- if ($form{terminal}) {
-
- $ARGV[0] = "path=bin/$form{terminal}&script=$script";
- map { $ARGV[0] .= "&${_}=$form{$_}" } keys %form;
-
- require "bin/$form{terminal}/$script";
-
- } else {
-
- print "Content-Type: text/html\n\n" if $ENV{HTTP_USER_AGENT};
- print qq|\nUnknown terminal\n|;
- }
-
-}
-
-# end of main
-
diff --git a/sql-ledger/menu.ini b/sql-ledger/menu.ini
deleted file mode 100644
index 637bf98..0000000
--- a/sql-ledger/menu.ini
+++ /dev/null
@@ -1,900 +0,0 @@
-[ ]
-
-[AR]
-
-[AR--Add Transaction]
-module=ar.pl
-action=add
-
-[AR--Sales Invoice]
-module=is.pl
-action=add
-type=invoice
-
-[AR--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AR--Reports--Transactions]
-module=ar.pl
-action=search
-nextsub=ar_transactions
-
-[AR--Reports--Outstanding]
-module=ar.pl
-action=search
-outstanding=1
-nextsub=ar_transactions
-
-[AR--Reports--AR Aging]
-module=rp.pl
-action=report
-report=ar_aging
-
-[AR--Reports--Tax collected]
-module=rp.pl
-action=report
-report=tax_collected
-
-[AR--Reports--Non-taxable]
-module=rp.pl
-action=report
-report=nontaxable_sales
-
-[AR--Customers]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AR--Customers--Add Customer]
-module=ct.pl
-action=add
-db=customer
-
-[AR--Customers--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AR--Customers--Reports--Search]
-module=ct.pl
-action=search
-db=customer
-
-[AR--Customers--Reports--History]
-module=ct.pl
-action=history
-db=customer
-
-[POS]
-
-[POS--Sale]
-module=ps.pl
-action=add
-nextsub=openinvoices
-
-[POS--Open]
-module=ps.pl
-action=openinvoices
-
-[POS--Receipts]
-module=ps.pl
-action=receipts
-
-[AP]
-
-[AP--Add Transaction]
-module=ap.pl
-action=add
-
-[AP--Vendor Invoice]
-module=ir.pl
-action=add
-type=invoice
-
-[AP--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AP--Reports--Transactions]
-module=ap.pl
-action=search
-nextsub=ap_transactions
-
-[AP--Reports--Outstanding]
-module=ap.pl
-action=search
-outstanding=1
-nextsub=ap_transactions
-
-[AP--Reports--AP Aging]
-module=rp.pl
-action=report
-report=ap_aging
-
-[AP--Reports--Tax paid]
-module=rp.pl
-action=report
-report=tax_paid
-
-[AP--Reports--Non-taxable]
-module=rp.pl
-action=report
-report=nontaxable_purchases
-
-[AP--Vendors]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AP--Vendors--Add Vendor]
-module=ct.pl
-action=add
-db=vendor
-
-[AP--Vendors--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[AP--Vendors--Reports--Search]
-module=ct.pl
-action=search
-db=vendor
-
-[AP--Vendors--Reports--History]
-module=ct.pl
-action=history
-db=vendor
-
-[Cash]
-
-[Cash--Receipt]
-module=cp.pl
-action=payment
-type=receipt
-vc=customer
-
-[Cash--Payment]
-module=cp.pl
-action=payment
-type=check
-vc=vendor
-
-[Cash--Transfer]
-module=gl.pl
-action=add
-transfer=1
-
-[Cash--Reconciliation]
-module=rc.pl
-action=reconciliation
-
-[Cash--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Cash--Reports--Receipts]
-module=rp.pl
-action=report
-report=receipts
-
-[Cash--Reports--Payments]
-module=rp.pl
-action=report
-report=payments
-
-[Cash--Reports--Reconciliation]
-module=rc.pl
-action=reconciliation
-report=1
-
-[HR]
-
-[HR--Employees]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[HR--Employees--Add Employee]
-module=hr.pl
-action=add
-db=employee
-
-[HR--Employees--Reports]
-module=hr.pl
-action=search
-db=employee
-
-[Order Entry]
-
-[Order Entry--Sales Order]
-module=oe.pl
-action=add
-type=sales_order
-
-[Order Entry--Purchase Order]
-module=oe.pl
-action=add
-type=purchase_order
-
-[Order Entry--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Order Entry--Reports--Sales Orders]
-module=oe.pl
-action=search
-type=sales_order
-
-[Order Entry--Reports--Purchase Orders]
-module=oe.pl
-action=search
-type=purchase_order
-
-[Shipping]
-
-[Shipping--Ship]
-module=oe.pl
-action=search
-type=ship_order
-
-[Shipping--Receive]
-module=oe.pl
-action=search
-type=receive_order
-
-[Shipping--Transfer]
-module=oe.pl
-action=search_transfer
-
-[Quotations]
-
-[Quotations--Quotation]
-module=oe.pl
-action=add
-type=sales_quotation
-
-[Quotations--RFQ]
-module=oe.pl
-action=add
-type=request_quotation
-
-[Quotations--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Quotations--Reports--Quotations]
-module=oe.pl
-action=search
-type=sales_quotation
-
-[Quotations--Reports--RFQs]
-module=oe.pl
-action=search
-type=request_quotation
-
-[General Ledger]
-
-[General Ledger--Add Transaction]
-module=gl.pl
-action=add
-
-[General Ledger--Reports]
-module=gl.pl
-action=search
-
-[Goods & Services]
-
-[Goods & Services--Add Part]
-module=ic.pl
-action=add
-item=part
-
-[Goods & Services--Add Service]
-module=ic.pl
-action=add
-item=service
-
-[Goods & Services--Add Assembly]
-module=ic.pl
-action=add
-item=assembly
-
-[Goods & Services--Add Labor/Overhead]
-module=ic.pl
-action=add
-item=labor
-
-[Goods & Services--Add Group]
-module=pe.pl
-action=add
-type=partsgroup
-
-[Goods & Services--Add Pricegroup]
-module=pe.pl
-action=add
-type=pricegroup
-
-[Goods & Services--Stock Assembly]
-module=ic.pl
-action=stock_assembly
-
-[Goods & Services--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Goods & Services--Reports--All Items]
-module=ic.pl
-action=search
-searchitems=all
-
-[Goods & Services--Reports--Parts]
-module=ic.pl
-action=search
-searchitems=part
-
-[Goods & Services--Reports--Services]
-module=ic.pl
-action=search
-searchitems=service
-
-[Goods & Services--Reports--Labor/Overhead]
-module=ic.pl
-action=search
-searchitems=labor
-
-[Goods & Services--Reports--Groups]
-module=pe.pl
-action=search
-type=partsgroup
-
-[Goods & Services--Reports--Pricegroups]
-module=pe.pl
-action=search
-type=pricegroup
-
-[Goods & Services--Reports--Assemblies]
-module=ic.pl
-action=search
-searchitems=assembly
-
-[Goods & Services--Reports--Components]
-module=ic.pl
-action=search
-searchitems=component
-
-[Goods & Services--Translations]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Goods & Services--Translations--Description]
-module=pe.pl
-action=translation
-translation=description
-
-[Goods & Services--Translations--Groups]
-module=pe.pl
-action=translation
-translation=partsgroup
-
-[Projects]
-
-[Projects--Add Project]
-module=pe.pl
-action=add
-type=project
-
-[Projects--Reports]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Projects--Reports--List Projects]
-module=pe.pl
-action=search
-type=project
-
-[Projects--Reports--Transactions]
-module=rp.pl
-action=report
-report=projects
-
-[Projects--Translations]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Projects--Translations--Description]
-module=pe.pl
-action=translation
-translation=project
-
-[Reports]
-
-[Reports--Chart of Accounts]
-module=ca.pl
-action=chart_of_accounts
-
-[Reports--Trial Balance]
-module=rp.pl
-action=report
-report=trial_balance
-
-[Reports--Income Statement]
-module=rp.pl
-action=report
-report=income_statement
-
-[Reports--Balance Sheet]
-module=rp.pl
-action=report
-report=balance_sheet
-
-[Batch Printing]
-
-[Batch Printing--Print]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[Batch Printing--Print--Sales Invoices]
-module=bp.pl
-action=search
-vc=customer
-type=invoice
-
-[Batch Printing--Print--Sales Orders]
-module=bp.pl
-action=search
-vc=customer
-type=sales_order
-
-[Batch Printing--Print--Work Orders]
-module=bp.pl
-action=search
-vc=customer
-type=work_order
-
-[Batch Printing--Print--Quotations]
-module=bp.pl
-action=search
-vc=customer
-type=sales_quotation
-
-[Batch Printing--Print--Packing Lists]
-module=bp.pl
-action=search
-vc=customer
-type=packing_list
-
-[Batch Printing--Print--Pick Lists]
-module=bp.pl
-action=search
-vc=customer
-type=pick_list
-
-[Batch Printing--Print--Purchase Orders]
-module=bp.pl
-action=search
-vc=vendor
-type=purchase_order
-
-[Batch Printing--Print--Bin Lists]
-module=bp.pl
-action=search
-vc=vendor
-type=bin_list
-
-[Batch Printing--Print--RFQs]
-module=bp.pl
-action=search
-vc=vendor
-type=request_quotation
-
-[Batch Printing--Print--Checks]
-module=bp.pl
-action=search
-vc=vendor
-type=check
-
-[Batch Printing--Print--Receipts]
-module=bp.pl
-action=search
-vc=customer
-type=receipt
-
-[System]
-
-[System--Audit Control]
-module=am.pl
-action=audit_control
-
-[System--Defaults]
-module=am.pl
-action=defaults
-
-[System--Yearend]
-module=am.pl
-action=yearend
-
-[System--Backup]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Backup--Send by E-Mail]
-module=am.pl
-action=backup
-media=email
-
-[System--Backup--Save to File]
-module=am.pl
-action=backup
-media=file
-
-[System--Chart of Accounts]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Chart of Accounts--Add Account]
-module=am.pl
-action=add_account
-
-[System--Chart of Accounts--List Accounts]
-module=am.pl
-action=list_account
-
-[System--Chart of Accounts--Add GIFI]
-module=am.pl
-action=add_gifi
-
-[System--Chart of Accounts--List GIFI]
-module=am.pl
-action=list_gifi
-
-[System--Warehouses]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Warehouses--Add Warehouse]
-module=am.pl
-action=add_warehouse
-
-[System--Warehouses--List Warehouses]
-module=am.pl
-action=list_warehouse
-
-[System--Departments]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Departments--Add Department]
-module=am.pl
-action=add_department
-
-[System--Departments--List Departments]
-module=am.pl
-action=list_department
-
-[System--Type of Business]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Type of Business--Add Business]
-module=am.pl
-action=add_business
-
-[System--Type of Business--List Businesses]
-module=am.pl
-action=list_business
-
-[System--Language]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Language--Add Language]
-module=am.pl
-action=add_language
-
-[System--Language--List Languages]
-module=am.pl
-action=list_language
-
-[System--SIC]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--SIC--Add SIC]
-module=am.pl
-action=add_sic
-
-[System--SIC--List SIC]
-module=am.pl
-action=list_sic
-
-[System--HTML Templates]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--HTML Templates--Income Statement]
-module=am.pl
-action=display_form
-file=templates=income_statement.html
-
-[System--HTML Templates--Balance Sheet]
-module=am.pl
-action=display_form
-file=templates=balance_sheet.html
-
-[System--HTML Templates--Invoice]
-module=am.pl
-action=display_form
-file=templates=invoice.html
-
-[System--HTML Templates--AR Transaction]
-module=am.pl
-action=display_form
-file=templates=ar_transaction.html
-
-[System--HTML Templates--AP Transaction]
-module=am.pl
-action=display_form
-file=templates=ap_transaction.html
-
-[System--HTML Templates--Packing List]
-module=am.pl
-action=display_form
-file=templates=packing_list.html
-
-[System--HTML Templates--Pick List]
-module=am.pl
-action=display_form
-file=templates=pick_list.html
-
-[System--HTML Templates--Sales Order]
-module=am.pl
-action=display_form
-file=templates=sales_order.html
-
-[System--HTML Templates--Work Order]
-module=am.pl
-action=display_form
-file=templates=work_order.html
-
-[System--HTML Templates--Purchase Order]
-module=am.pl
-action=display_form
-file=templates=purchase_order.html
-
-[System--HTML Templates--Bin List]
-module=am.pl
-action=display_form
-file=templates=bin_list.html
-
-[System--HTML Templates--Statement]
-module=am.pl
-action=display_form
-file=templates=statement.html
-
-[System--HTML Templates--Quotation]
-module=am.pl
-action=display_form
-file=templates=sales_quotation.html
-
-[System--HTML Templates--RFQ]
-module=am.pl
-action=display_form
-file=templates=request_quotation.html
-
-[System--LaTeX Templates]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--LaTeX Templates--Invoice]
-module=am.pl
-action=display_form
-file=templates=invoice.tex
-
-[System--LaTeX Templates--AR Transaction]
-module=am.pl
-action=display_form
-file=templates=ar_transaction.tex
-
-[System--LaTeX Templates--AP Transaction]
-module=am.pl
-action=display_form
-file=templates=ap_transaction.tex
-
-[System--LaTeX Templates--Packing List]
-module=am.pl
-action=display_form
-file=templates=packing_list.tex
-
-[System--LaTeX Templates--Pick List]
-module=am.pl
-action=display_form
-file=templates=pick_list.tex
-
-[System--LaTeX Templates--Sales Order]
-module=am.pl
-action=display_form
-file=templates=sales_order.tex
-
-[System--LaTeX Templates--Work Order]
-module=am.pl
-action=display_form
-file=templates=work_order.tex
-
-[System--LaTeX Templates--Purchase Order]
-module=am.pl
-action=display_form
-file=templates=purchase_order.tex
-
-[System--LaTeX Templates--Bin List]
-module=am.pl
-action=display_form
-file=templates=bin_list.tex
-
-[System--LaTeX Templates--Statement]
-module=am.pl
-action=display_form
-file=templates=statement.tex
-
-[System--LaTeX Templates--Check]
-module=am.pl
-action=display_form
-file=templates=check.tex
-
-[System--LaTeX Templates--Receipt]
-module=am.pl
-action=display_form
-file=templates=receipt.tex
-
-[System--LaTeX Templates--Quotation]
-module=am.pl
-action=display_form
-file=templates=sales_quotation.tex
-
-[System--LaTeX Templates--RFQ]
-module=am.pl
-action=display_form
-file=templates=request_quotation.tex
-
-[System--Text Templates]
-module=menu.pl
-action=acc_menu
-target=acc_menu
-submenu=1
-
-[System--Text Templates--POS Invoice]
-module=am.pl
-action=display_form
-file=templates=pos_invoice.txt
-
-[System--Text Templates--Invoice]
-module=am.pl
-action=display_form
-file=templates=invoice.txt
-
-[System--Text Templates--AR Transaction]
-module=am.pl
-action=display_form
-file=templates=ar_transaction.txt
-
-[System--Text Templates--AP Transaction]
-module=am.pl
-action=display_form
-file=templates=ap_transaction.txt
-
-[System--Text Templates--Packing List]
-module=am.pl
-action=display_form
-file=templates=packing_list.txt
-
-[System--Text Templates--Pick List]
-module=am.pl
-action=display_form
-file=templates=pick_list.txt
-
-[System--Text Templates--Sales Order]
-module=am.pl
-action=display_form
-file=templates=sales_order.txt
-
-[System--Text Templates--Work Order]
-module=am.pl
-action=display_form
-file=templates=work_order.txt
-
-[System--Text Templates--Purchase Order]
-module=am.pl
-action=display_form
-file=templates=purchase_order.txt
-
-[System--Text Templates--Bin List]
-module=am.pl
-action=display_form
-file=templates=bin_list.txt
-
-[System--Text Templates--Statement]
-module=am.pl
-action=display_form
-file=templates=statement.txt
-
-[System--Text Templates--Check]
-module=am.pl
-action=display_form
-file=templates=check.txt
-
-[System--Text Templates--Receipt]
-module=am.pl
-action=display_form
-file=templates=receipt.txt
-
-[System--Text Templates--Quotation]
-module=am.pl
-action=display_form
-file=templates=sales_quotation.txt
-
-[System--Text Templates--RFQ]
-module=am.pl
-action=display_form
-file=templates=request_quotation.txt
-
-[Stylesheet]
-module=am.pl
-action=display_stylesheet
-
-[Preferences]
-module=am.pl
-action=config
-
-[Version]
-module=am.pl
-action=company_logo
-
-[Logout]
-module=login.pl
-action=logout
-target=_top
-
diff --git a/sql-ledger/setup.pl b/sql-ledger/setup.pl
deleted file mode 100755
index f65cbeb..0000000
--- a/sql-ledger/setup.pl
+++ /dev/null
@@ -1,529 +0,0 @@
-#!/usr/bin/perl
-#
-######################################################################
-# SQL-Ledger, Accounting Software Installer
-# Copyright (c) 2002, Dieter Simader
-#
-# Web: http://www.sql-ledger.org
-#
-#######################################################################
-
-$| = 1;
-
-if ($ENV{HTTP_USER_AGENT}) {
- print "
-This does not work yet!
-use $0 from the command line";
- exit;
-}
-
-$lynx = `lynx -version`; # if LWP is not installed use lynx
-$gzip = `gzip -V 2>&1`; # gz decompression utility
-$tar = `tar --version 2>&1`; # tar archiver
-$latex = `latex -version`;
-
-@source = ( "http://www.sql-ledger.org/source",
- "http://www.sql-ledger.com/source",
- "http://abacus.sql-ledger.org/source",
- "http://pluto.sql-ledger.org/source" );
-
-$userspath = "users"; # default for new installation
-
-eval { require "sql-ledger.conf"; };
-
-$filename = shift;
-
-# is LWP installed
-eval { require LWP::Simple; };
-$lwp = !($@);
-
-unless ($lwp || $lynx || $filename) {
- die "You must have either lynx or LWP installed or specify a filename.
-perl $0 <filename>\n";
-}
-
-if ($filename) {
- # extract version
- die "Not a SQL-Ledger archive\n" if ($filename !~ /^sql-ledger/);
-
- $version = $filename;
- $version =~ s/sql-ledger-(\d+\.\d+\.\d+).*$/$1/;
-
- $newinstall = 1;
-}
-
-if (!$filename && -f "VERSION") {
- # get installed version from VERSION file
- open(FH, "VERSION");
- @a = <FH>;
- close(FH);
- $version = $a[0];
- chomp $version;
-
- $newinstall = !$version;
-} else {
- $newinstall = 1;
-}
-
-
-# is this windows? only used for downloading the right code
-$windows = ($^O =~ /MS/) ? '/windows' : '';
-
-
-$webowner = $<;
-$webgroup = $(;
-
-if ($httpd = `find /etc /usr/local/etc -type f -name 'httpd.conf'`) {
- chomp $httpd;
- $webowner = `grep "^User " $httpd`;
- $webgroup = `grep "^Group " $httpd`;
-
- chomp $webowner;
- chomp $webgroup;
-
- ($null, $webowner) = split / /, $webowner;
- ($null, $webgroup) = split / /, $webgroup;
-
-}
-
-system("tput clear");
-
-if ($filename) {
- $install = "\ninstall $version from (f)ile\n";
-}
-
-# check for latest version
-&get_latest_version;
-
-if (!$newinstall) {
-
- $install .= "\n(r)einstall $version\n";
-
-}
-
-if ($version && $latest_version) {
- if (!$filename && $version le $latest_version) {
- if (substr($version, 0, rindex($version, ".")) eq substr($latest_version, 0, rindex($latest_version, "."))) {
- $install .= "\n(u)pgrade to $latest_version\n";
- }
- }
-}
-
-
-$install .= "\n(i)nstall $latest_version (from Internet)\n" if $latest_version;
-
-$install .= "\n(d)ownload $latest_version (no installation)" unless $filename;
-
- print qq|
-
-
- SQL-Ledger Accounting Installation
-
-
-
-$install
-
-
-Enter: |;
-
-$a = <STDIN>;
-chomp $a;
-
-exit unless $a;
-$a = lc $a;
-
-if ($a !~ /d/) {
-
- print qq|\nEnter httpd owner [$webowner] : |;
- $web = <STDIN>;
- chomp $web;
- $webowner = $web if $web;
-
- print qq|\nEnter httpd group [$webgroup] : |;
- $web = <STDIN>;
- chomp $web;
- $webgroup = $web if $web;
-
-}
-
-if ($a eq 'd') {
- &download;
-}
-if ($a =~ /(i|u)/) {
- &install;
-}
-if ($a eq 'r') {
- $latest_version = $version;
- &install;
-}
-if ($a eq 'f') {
- &install;
-}
-
-exit;
-# end main
-
-
-sub download {
-
- &get_source_code;
-
-}
-
-
-sub get_latest_version {
-
- print "Checking for latest version number .... ";
-
- if ($filename) {
- print "skipping, filename supplied\n";
- return;
- }
-
- if ($lwp) {
- foreach $source (@source) {
- $host = $source;
- $host =~ s/(\w\/).*/$1/g;
- chop $host;
- print "\nTrying $host ... ";
-
- $latest_version = LWP::Simple::get("$source/latest_version");
-
- if ($latest_version) {
- last;
- } else {
- print "not found";
- }
- }
- } else {
- if (!$lynx) {
- print "\nYou must have either lynx or LWP installed";
- exit 1;
- }
-
- foreach $source (@source) {
- $host = $source;
- $host =~ s/(\w\/).*/$1/g;
- chop $host;
- print "\nTrying $host ... ";
- $ok = `lynx -dump -head $source/latest_version`;
- if ($ok = ($ok =~ s/HTTP.*?200 OK//g)) {
- $latest_version = `lynx -dump $source/latest_version`;
- chomp $latest_version;
- last;
- } else {
- print "not found";
- }
- }
- die unless $ok;
- }
-
- chomp $latest_version;
- if ($latest_version) {
- print "ok\n";
- 1;
- }
-
-}
-
-
-sub get_source_code {
-
- $err = 0;
-
- if ($latest_version) {
- # download it
- $latest_version = "sql-ledger-${latest_version}.tar.gz";
-
- print "\nStatus\n";
- print "Downloading $latest_version .... ";
-
- foreach $source (@source) {
- $host = $source;
- $host =~ s/(\w\/).*/$1/g;
- chop $host;
- print "\nTrying $host .... ";
-
- if ($lwp) {
- $err = LWP::Simple::getstore("$source$windows/$latest_version", "$latest_version");
- $err -= 200;
- } else {
- $ok = `lynx -dump -head $source$windows/$latest_version`;
- $err = !($ok =~ s/HTTP.*?200 OK//);
-
- if (!$err) {
- $err = system("lynx -dump $source$windows/$latest_version > $latest_version");
- }
- }
-
- last unless $err;
-
- }
-
- } else {
- $err = -1;
- }
-
- if ($err) {
- die "Cannot get $latest_version";
- } else {
- print "ok\n";
- }
-
- $latest_version;
-
-}
-
-
-sub install {
-
- if ($filename) {
- $latest_version = $filename;
- } else {
- $latest_version = &get_source_code;
- }
-
- &decompress;
-
- if ($newinstall) {
- open(FH, "sql-ledger.conf.default");
- @f = <FH>;
- close(FH);
- unless ($latex) {
- grep { s/^\$latex.*/\$latex = 0;/ } @f;
- }
- open(FH, ">sql-ledger.conf");
- print FH @f;
- close(FH);
-
- $alias = $absolutealias = $ENV{'PWD'};
- $alias =~ s/.*\///g;
-
- $httpddir = `dirname $httpd`;
- chomp $httpddir;
- $filename = "sql-ledger-httpd.conf";
-
- # do we have write permission?
- if (!open(FH, ">>$httpddir/$filename")) {
- open(FH, ">$filename");
- $norw = 1;
- }
-
- $directives = qq|
-Alias /$alias/ $absolutealias/
-<Directory $absolutealias>
- AllowOverride All
- AddHandler cgi-script .pl
- Options ExecCGI Includes FollowSymlinks
- Order Allow,Deny
- Allow from All
-</Directory>
-
-<Directory $absolutealias/users>
- Order Deny,Allow
- Deny from All
-</Directory>
-
-|;
-
- print FH $directives;
- close(FH);
-
- print qq|
-This is a new installation.
-
-|;
-
- if ($norw) {
- print qq|
-Webserver directives were written to $filename
-
-Copy $filename to $httpddir and add
-|;
-
- print qq|
-# SQL-Ledger
-Include $httpddir/$filename
-
-to $httpd
-
-Don't forget to restart your webserver!
-|;
-
- if (!$permset) {
- print qq|
-WARNING: permissions for templates, users, css and spool directory
-could not be set. Login as root and set permissions
-
-# chown -hR :$webgroup users templates css spool
-# chmod 771 users templates css spool
-
-|;
- }
-
- } else {
-
- if (!(`grep "^# SQL-Ledger" $httpd`)) {
-
- open(FH, ">>$httpd");
-
- print FH qq|
-
-# SQL-Ledger
-Include $httpddir/$filename
-|;
- close(FH);
-
- print qq|
-Webserver directives were written to
-
- $httpddir/$filename
-|;
- }
- }
-
- if (!$>) {
- # send SIGHUP to httpd
- if ($f = `find /var -type f -name 'httpd.pid'`) {
- $pid = `cat $f`;
- chomp $pid;
- if ($pid) {
- system("kill -s HUP $pid");
- }
- }
- }
- }
-
- # if this is not root, check if user is part of $webgroup
- if ($>) {
- if ($permset = ($) =~ getgrnam $webgroup)) {
- `chown -hR :$webgroup users templates css spool`;
- chmod 0771, 'users', 'templates', 'css', 'spool';
- }
- } else {
- # root
- `chown -hR 0:0 *`;
- `chown -hR $webowner:$webgroup users templates css spool`;
- chmod 0771, 'users', 'templates', 'css', 'spool';
- }
-
- unlink "sql-ledger.conf.default";
-
- &cleanup;
-
- while ($a !~ /(Y|N)/) {
- print qq|\nDisplay README (Y/n) : |;
- $a = <STDIN>;
- chomp $a;
- $a = ($a) ? uc $a : 'Y';
-
- if ($a eq 'Y') {
- @args = ("more", "doc/README");
- system(@args);
- }
- }
-
-}
-
-
-sub decompress {
-
- die "Error: gzip not installed\n" unless ($gzip);
- die "Error: tar not installed\n" unless ($tar);
-
- &create_lockfile;
-
- # ungzip and extract source code
- print "Decompressing $latest_version ... ";
-
- if (system("gzip -df $latest_version")) {
- print "Error: Could not decompress $latest_version\n";
- &remove_lockfile;
- exit;
- } else {
- print "done\n";
- }
-
- # strip gz from latest_version
- $latest_version =~ s/\.gz//;
-
- # now untar it
- print "Unpacking $latest_version ... ";
- if (system("tar -xf $latest_version")) {
- print "Error: Could not unpack $latest_version\n";
- &remove_lockfile;
- exit;
- } else {
- # now we have a copy in sql-ledger
- if (system("tar -cf $latest_version -C sql-ledger .")) {
- print "Error: Could not create archive for $latest_version\n";
- &remove_lockfile;
- exit;
- } else {
- if (system("tar -xf $latest_version")) {
- print "Error: Could not unpack $latest_version\n";
- &remove_lockfile;
- exit;
- } else {
- print "done\n";
- print "cleaning up ... ";
- `rm -rf sql-ledger`;
- print "done\n";
-
- # replace shebang if this is windows
- &shebang if $windows;
-
- }
- }
- }
-}
-
-
-sub create_lockfile {
-
- if (-d "$userspath") {
- open(FH, ">$userspath/nologin");
- close(FH);
- }
-
-}
-
-
-sub cleanup {
-
- unlink "$latest_version";
- unlink "$userspath/members.default" if (-f "$userspath/members.default");
-
- &remove_lockfile;
-
-}
-
-
-sub remove_lockfile { unlink "$userspath/nologin" if (-f "$userspath/nologin") };
-
-
-sub shebang {
-
- opendir DIR, ".";
- @perlfiles = grep /\.pl/, readdir DIR;
- closedir DIR;
-
- foreach $file (@perlfiles) {
- open FH, "+<$file";
-
- @file = <FH>;
-
- seek(FH, 0, 0);
- truncate(FH, 0);
-
- $line = shift @file;
-
- print FH "#!c:\\perl\\bin\\perl\n";
- print FH @file;
-
- close(FH);
-
- }
-}
-
-
diff --git a/sql-ledger/sql-ledger.conf.default b/sql-ledger/sql-ledger.conf.default
deleted file mode 100644
index 25928dc..0000000
--- a/sql-ledger/sql-ledger.conf.default
+++ /dev/null
@@ -1,48 +0,0 @@
-use vars qw($userspath $spool $memberfile $templates $sendmail $language $sid $latex %printer $gzip);
-
-# path to user configuration files
-$userspath = "users";
-
-# spool directory for batch printing
-$spool = "spool";
-
-# templates base directory
-$templates = "templates";
-
-# member file
-$memberfile = "users/members";
-
-# location of sendmail
-$sendmail = "| /usr/sbin/sendmail -t";
-
-# set language for login and admin
-$language = "";
-
-# Oracle
-#$sid = "T80509";
-#$ENV{"ORACLE_HOME"} = "/usr/local/oracle";
-
-# if you have latex installed set to 1
-$latex = 1;
-
-# available printers
-%printer = ( Laserjet => 'lpr -Plaserjet',
- Laser => 'lpr -Plaser'
- );
-
-# program to use for file compression
-$gzip = "gzip -S .gz";
-
-# if the server can't find gzip, latex, dvips or pdflatex, add the path
-$ENV{PATH} .= ":/usr/local/bin";
-
-# on mac os X using Fink's Perl libs, add the path
-#$ENV{PERL5LIB} .= ":/sw/lib/perl5";
-
-# DB2, Default dataset is expected to be LEDGER
-#$ENV{DB2INSTANCE} = "db2inst1";
-#$ENV{DB2_HOME} = "/opt/IBM/db2/V8.1/";
-
-
-1;
-
diff --git a/sql-ledger/sql-ledger.gif b/sql-ledger/sql-ledger.gif
deleted file mode 100644
index 91ff0b8..0000000
--- a/sql-ledger/sql-ledger.gif
+++ /dev/null
Binary files differ
diff --git a/sql-ledger/sql-ledger.png b/sql-ledger/sql-ledger.png
deleted file mode 100644
index 0a80264..0000000
--- a/sql-ledger/sql-ledger.png
+++ /dev/null
Binary files differ
diff --git a/sql-ledger/sql/Austria-chart.sql b/sql-ledger/sql/Austria-chart.sql
deleted file mode 100644
index 7f51f24..0000000
--- a/sql-ledger/sql/Austria-chart.sql
+++ /dev/null
@@ -1,143 +0,0 @@
--- Kontoplan für Österreich
--- Ferdinand Gassauer, Tue, 5 Feb 2002
--- checked and completed, Thu, 7 Feb 2002, Dieter Simader
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0000','AUFWENDUNGEN FÜR INGANGSETZEN UND ERWEITERN DES BETRIEBES','H','00','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0010','Firmenwert','A','015','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0100','IMMATERIELLE VERMÖGENSGEGENSTÄNDE','H','01','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0110','Rechte','A','011','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0200','GRUNDSTÜCKE','H','02-03','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0210','unbebaute Grundstücke','A','020','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0220','bebaute Grundstücke','A','021','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0229','kum. Abschreibung bebaute Grundstücke','A','039','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0400','MASCHINEN','H','04-05','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0410','Maschinen','A','041','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0419','kum. Abschreibung Maschinen','A','069','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0500','FAHRZEUGE','H','06','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0510','Fahrzeuge','A','063','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0519','kum. Abschreibung Fahrzeuge','A','069','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0600','BETRIEBS- UND GESCHÄFTSAUSSTATTUNG','H','06','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0620','Büroeinrichtungen','A','066','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0625','kum. Abschreibung Betriebs- und Geschäftsausstattung','A','069','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0700','GELEISTETE ANZAHLUNGEN','H','07','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0800','FINANZANLAGEN','H','08-09','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0810','Beteiligungen','A','081','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0820','Wertpapiere','A','080','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1100','ROHSTOFFE','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1120','Vorräte - Rohstoffe','A','110-119','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','BEZOGENE TEILE','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1220','Vorräte - bezogene Teile','A','120-129','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1300','HILFS- UND BETRIEBSSTOFFE','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1320','Hilfsstoffe','A','130-134','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1350','Betriebssstoffe','A','135-139','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1400','UNFERTIGE ERZEUGNISSE','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1420','Vorräte - unfertige Erzeugnisse','A','140-149','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','FERTIGE ERZEUGNISSE','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Vorräte - Hardware','A','150-159','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Vorräte - Software','A','150-159','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Vorräte - Ersatzteile','A','150-159','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1600','WAREN','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1700','NOCH NICHT ABGERECHNETE LEISTUNGEN','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','GELEISTETE ANZAHLUNGEN','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1900','WERTBERICHTIGUNGEN','H','1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','FORDEUNGEN AUS LIEFERUNGEN UND LEISTUNGEN','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010','Forderungen Lieferung & Leistung','A','200-207','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2019','Wertberichtigung uneinbringliche Forderungen','A','20-21','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2300','SONSTIGE FORDERUNGEN','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','sonstige Forderungen','A','23-24','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2500','FORDERUNGEN AUS ABGABENVERRECHNUNG','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2520','sonstige Forderungen aus Abgebenverrechnung','A','25','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','WERTPAPIERE UND ANTEILE','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Wertpapiere Umlaufvermögen','A','26','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2700','KASSABESTAND','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2701','Kassa','A','27-28','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2800','SCHECKS, GUTHABEN BEI KREDITINSTITUTEN','H','2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2810','Schecks','A','27-28','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2820','Bankguthaben','A','280-288','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3100','LANGFRISTIGE VERBINDLICHKEITEN','H','3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3110','Bank Verbindlichkeiten','A','31','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3120','Kredite von Eigentümern','A','310','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','VERBINDLICHKEITEN AUS LIEFERUNGEN UND LEISTUNGEN','H','33','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3310','Verbindlichkeiten aus Lieferungen und Leistungen','A','330-335','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','VERBINDLICHKEITEN FINANZAMT','H','35','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3510','Finanzamt Verrechnung Körperschaftssteuer','A','350-359','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3520','Finanzamt Verrechnung Umsatzsteuer','A','350-359','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3530','Mehrwertsteuer 0%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3531','Mehrwertsteuer 10%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3532','Mehrwertsteuer 20%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3540','Vorsteuer 0%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3541','Vorsteuer 10%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3542','Vorsteuer 20%','A','350-359','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','UMSATZ','H','4','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Verkauf - Hardware','A','40-44','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Verkauf - Software ','A','40-44','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','Verkauf - Ersatzteile','A','40-44','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','UMSATZ BERATUNG','H','4','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','Erlöse Beratung','A','40-44','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','Erlöse Programmierung','A','40-44','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4600','SONSTIGE ERLÖSE','H','4','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4630','Frachterlöse','A','46-49','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','WARENEINSATZ','H','5','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','Wareneinsatz / Hardware','A','500-509','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','Wareneinsatz / Software','A','500-509','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','Wareneinsatz / Ersatzteile','A','520-529','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','VERBRAUCH BRENN- UND TREIBSTOFFEN, ENERGIE UND WASSER','H','5','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Energie, Wasser','A','560-569','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6000','LOHNAUFWAND','H','6','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6010','Lohn ','A','600-619','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6200','GEAHLTSAUFWAND','H','6','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6210','Gehalt ','A','620-639','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6500','GESETZLICHER SOZIALAUFWAND','H','6','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6510','Dienstgeberanteile','A','645-649','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6700','FREIWILLIGER SOZIALAUFWAND','H','6','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6710','freiwilliger Sozialaufwand','A','660-665','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7000','ABSCHREIBUNGEN','H','7','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7010','Abschreibungen','A','700','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7020','geringwertige Wirtschaftsgüter','A','701-708','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7100','SONSTIGE STEUERN','H','71','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7110','Ertragssteuern','A','710-719','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7120','Grundsteuern','A','710-719','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7200','INSTANDHALTUNGSAUFWAND','H','7','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7210','Reparatur und Instandhaltung','A','720-729','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7300','TRANSPORTKOSTEN','H','73','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7310','Frachtaufwand','A','730-731','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7400','MIET-,PACHT-,LEASING-, LIZENZAUFWAND','H','74','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7410','Miete','A','740-743','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7411','Lizenzen','A','748-749','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7600','VERWALTUNGSKOSTEN','H','76','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7610','Beratungsaufwand','A','775-776','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7611','Büromaterialien','A','760','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7615','Werbung und Marketing','A','765-768','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7620','uneinbringliche Forderungen','A','799','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7630','Telephonkosten','A','738-739','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7631','Internetkosten','A','738-739','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7632','Reise- und Repräsentationsaufwand','A','734-735','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7634','Registrierungsgebühren','A','748-749','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7700','VERSICHERUNGEN','H','77-78','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7710','Versicherung','A','770-774','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8000','FINANZERTRÄGE UND FINANZAUFWENDUNGEN','H','8','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8020','Bankzinsen und Gebühren','A','80-83','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8100','BETEILIGUNGSERTRÄGE','H','8','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8110','Erträge aus Beteiligungen','A','800-804','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9000','KAPITAL','H','9','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9010','Aktien, Geschäftsanteile','A','900-918','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9020','nicht einbezahltes Kapital','A','919','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9200','KAPITALRÜCKLAGEN','H','9','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9210','freie Rücklage','A','920-929','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9300','GEWINN','H','939','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9310','Gewinnvortrag Vorjahr','A','980','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9320','Jahresgewinn','A','985','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9400','RÜCKSTELLUNGEN','H','3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9420','Abfertigungsrückstellung','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9430','Urlaubsrückstellung','A','304-309','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9700','EINLAGEN STILLER GESELLSCHAFTER','H','9','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9800','EB,SB,G+V KONTEN','H','9','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4640','Devisengewinne','A','80-83','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8050','Devisenverluste','A','80-83','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3530'),0.00);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3531'),0.10);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3532'),0.20);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '7610'), fxgain_accno_id = (select id from chart where accno = '4640'), fxloss_accno_id = (select id from chart where accno = '8050'), curr = 'EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Austria-gifi.sql b/sql-ledger/sql/Austria-gifi.sql
deleted file mode 100644
index 43f213f..0000000
--- a/sql-ledger/sql/Austria-gifi.sql
+++ /dev/null
@@ -1,334 +0,0 @@
--- Österreichischer Einheitskontenrahmen / Kontenplan (ÖSV Österreichischer Steuerverein)
---
-INSERT INTO gifi (accno, description) VALUES ('0', 'Anlagevermögen und Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes');
---
-INSERT INTO gifi (accno, description) VALUES ('00', 'Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes');
-INSERT INTO gifi (accno, description) VALUES ('001', 'Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes');
-INSERT INTO gifi (accno, description) VALUES ('009', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('01', 'Immaterielle Vermögensgegenstände');
-INSERT INTO gifi (accno, description) VALUES ('010', 'Konzessionen');
-INSERT INTO gifi (accno, description) VALUES ('011', 'Patentrechte und Lizenzen');
-INSERT INTO gifi (accno, description) VALUES ('012', 'Datenverarbeitungsprogramme');
-INSERT INTO gifi (accno, description) VALUES ('013', 'Marken, Warenzeichen und Musterschutzrechte, sonstige Urheberrechte');
-INSERT INTO gifi (accno, description) VALUES ('014', 'Pacht- und Mietrechte');
-INSERT INTO gifi (accno, description) VALUES ('015', 'Geschäfts(Firmen)wert');
-INSERT INTO gifi (accno, description) VALUES ('018', 'Geleistete Anzahlungen');
-INSERT INTO gifi (accno, description) VALUES ('019', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('02-03', 'Grundstücke, grundstücksgleiche Rechte und Bauten, einschließlich der Bauten auf fremden Grund');
-INSERT INTO gifi (accno, description) VALUES ('020', 'Unbebaute Grundstücke');
-INSERT INTO gifi (accno, description) VALUES ('021', 'Bebaute Grundstücke (Grundwert)');
-INSERT INTO gifi (accno, description) VALUES ('022', 'Grundstücksgleiche Rechte');
-INSERT INTO gifi (accno, description) VALUES ('030', 'Betriebs- und Geschäftsgebäude auf eigenem Grund');
-INSERT INTO gifi (accno, description) VALUES ('031', 'Wohn- und Sozialgebäude auf eigenem Grund');
-INSERT INTO gifi (accno, description) VALUES ('032', 'Betriebs- und Geschäftsgebäude auf fremdem Grund');
-INSERT INTO gifi (accno, description) VALUES ('033', 'Wohn- und Sozialgebäude auf fremdem Grund');
-INSERT INTO gifi (accno, description) VALUES ('034', 'Grundstückseinrichtungen auf eigenem Grund');
-INSERT INTO gifi (accno, description) VALUES ('035', 'Grundstückseinrichtungen auf fremdem Grund');
-INSERT INTO gifi (accno, description) VALUES ('036', 'Bauliche Investitionen in fremden (gepachteten) Betriebs- und Geschäftsgebäuden');
-INSERT INTO gifi (accno, description) VALUES ('037', 'Bauliche Investitionen in fremden (gepachteten) Wohn- und Sozialgebäuden');
-INSERT INTO gifi (accno, description) VALUES ('039', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('04-05', 'Technische Anlagen und Maschinen');
-INSERT INTO gifi (accno, description) VALUES ('040', 'Fertigungsmaschinen');
-INSERT INTO gifi (accno, description) VALUES ('041', 'Antriebsmaschinen');
-INSERT INTO gifi (accno, description) VALUES ('042', 'Energieversorgungsanlagen');
-INSERT INTO gifi (accno, description) VALUES ('043', 'Transportanlagen');
-INSERT INTO gifi (accno, description) VALUES ('044-049', 'Sonstige Maschinen und maschinelle Anlagen');
-INSERT INTO gifi (accno, description) VALUES ('050', 'Maschinenwerkzeuge');
-INSERT INTO gifi (accno, description) VALUES ('051', 'Allgemeine Werkzeuge und Handwerkzeuge');
-INSERT INTO gifi (accno, description) VALUES ('052', 'Vorrichtungen, Formen und Modelle');
-INSERT INTO gifi (accno, description) VALUES ('053', 'Andere Erzeugungshilfsmittel');
-INSERT INTO gifi (accno, description) VALUES ('054', 'Hebezeuge und Montageanlagen');
-INSERT INTO gifi (accno, description) VALUES ('055', 'Geringwertige Vermögensgegenstände, soweit im Erzeugungsprozeß verwendet');
---
-INSERT INTO gifi (accno, description) VALUES ('06', 'Andere Anlagen, Betriebs- und Geschäftsausstattung');
-INSERT INTO gifi (accno, description) VALUES ('060', 'Beheizungs- und Beleuchtungsanlagen');
-INSERT INTO gifi (accno, description) VALUES ('061', 'Nachrichten- und Kontrollanlagen');
-INSERT INTO gifi (accno, description) VALUES ('062', 'Büromaschinen, EDV-Anlagen');
-INSERT INTO gifi (accno, description) VALUES ('063', 'PKW');
-INSERT INTO gifi (accno, description) VALUES ('064', 'LKW');
-INSERT INTO gifi (accno, description) VALUES ('065', 'Andere Beförderungsmittel');
-INSERT INTO gifi (accno, description) VALUES ('066', 'Andere Betriebs- und Geschäftsausstattung');
-INSERT INTO gifi (accno, description) VALUES ('067', 'Gebinde');
-INSERT INTO gifi (accno, description) VALUES ('068', 'Geringwertige Vermögensgegenstände, soweit nicht im Erzeugungsprozeß verwendet');
-INSERT INTO gifi (accno, description) VALUES ('069', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('07', 'Geleistete Anzahlungen und Anlagen in Bau');
-INSERT INTO gifi (accno, description) VALUES ('070', 'Geleistete Anzahlungen');
-INSERT INTO gifi (accno, description) VALUES ('071', 'Anlagen in Bau');
-INSERT INTO gifi (accno, description) VALUES ('079', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('08-09', 'Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('080', 'Anteile an verbundenen Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('081', 'Beteiligungen an Gemeinschaftsunternehmen');
-INSERT INTO gifi (accno, description) VALUES ('082', 'Beteiligungen an angeschlossenen (assoziierten) Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('083', 'Sonstige Beteiligungen');
-INSERT INTO gifi (accno, description) VALUES ('084', 'Ausleihungen an verbundene Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('085', 'Ausleihungen an Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno, description) VALUES ('086', 'Sonstige Ausleihungen');
-INSERT INTO gifi (accno, description) VALUES ('087', 'Anteile an Kapitalgesellschaften ohne Beteiligungscharakter');
-INSERT INTO gifi (accno, description) VALUES ('088', 'Anteile an Personengesellschaften ohne Beteiligungscharakter');
-INSERT INTO gifi (accno, description) VALUES ('090', 'Genossenschaftsanteile ohne Beteiligungscharakter');
-INSERT INTO gifi (accno, description) VALUES ('091', 'Anteile an Investmentfonds');
-INSERT INTO gifi (accno, description) VALUES ('092-093', 'Festverzinsliche Wertpapiere des Anlagevermögens');
-INSERT INTO gifi (accno, description) VALUES ('094-097', 'Sonstige Finanzanlagen, Wertrechte');
-INSERT INTO gifi (accno, description) VALUES ('098', 'Geleistete Anzahlungen');
-INSERT INTO gifi (accno, description) VALUES ('099', 'Kumulierte Abschreibungen');
---
-INSERT INTO gifi (accno, description) VALUES ('1', 'Vorräte');
-INSERT INTO gifi (accno, description) VALUES ('100-109', 'Bezugsverrechnung');
-INSERT INTO gifi (accno, description) VALUES ('110-119', 'Rohstoffe');
-INSERT INTO gifi (accno, description) VALUES ('120-129', 'Bezogene Teile');
-INSERT INTO gifi (accno, description) VALUES ('130-134', 'Hilfsstoffe');
-INSERT INTO gifi (accno, description) VALUES ('135-139', 'Betriebsstoffe');
-INSERT INTO gifi (accno, description) VALUES ('140-149', 'Unfertige Erzeugnisse');
-INSERT INTO gifi (accno, description) VALUES ('150-159', 'Fertige Erzeugnisse');
-INSERT INTO gifi (accno, description) VALUES ('160-169', 'Waren');
-INSERT INTO gifi (accno, description) VALUES ('170-179', 'Noch nicht abrechenbare Leistungen');
-INSERT INTO gifi (accno, description) VALUES ('180', 'Geleistete Anzahlungen');
-INSERT INTO gifi (accno, description) VALUES ('190-199', 'Wertberichtigungen');
---
-INSERT INTO gifi (accno, description) VALUES ('2', 'Sonstiges Umlaufvermögen, Rechnungsabgrenzungsposten');
-INSERT INTO gifi (accno, description) VALUES ('20-21', 'Forderungen aus Lieferungen und Leistungen');
-INSERT INTO gifi (accno, description) VALUES ('200-207', 'Forderungen aus Lieferungen und Leistungen Inland');
-INSERT INTO gifi (accno, description) VALUES ('208', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Inland');
-INSERT INTO gifi (accno, description) VALUES ('209', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Inland');
-INSERT INTO gifi (accno, description) VALUES ('210-212', 'Forderungen aus Lieferungen und Leistungen Währungsunion');
-INSERT INTO gifi (accno, description) VALUES ('213', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Währungsunion');
-INSERT INTO gifi (accno, description) VALUES ('214', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Währungsunion');
-INSERT INTO gifi (accno, description) VALUES ('215-217', 'Forderungen aus Lieferungen und Leistungen sonstiges Ausland');
-INSERT INTO gifi (accno, description) VALUES ('218', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen sonstiges Ausland');
-INSERT INTO gifi (accno, description) VALUES ('219', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen sonstiges Ausland');
---
-INSERT INTO gifi (accno, description) VALUES ('22', 'Forderungen gegenüber verbundenen Unternehmen und Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno, description) VALUES ('220-222', 'Forderungen gegenüber verbundenen Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('223', 'Einzelwertberichtigungen zu Forderungen gegenüber verbundenen Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('224', 'Pauschalwertberichtigungen zu Forderungen gegenüber verbundenen Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('225-227', 'Forderungen gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno, description) VALUES ('228', 'Einzelwertberichtigungen zu Forderungen gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno, description) VALUES ('229', 'Pauschalwertberichtigungen zu Forderungen gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
---
-INSERT INTO gifi (accno, description) VALUES ('23-24', 'Sonstige Forderungen und Vermögensgegenstände');
-INSERT INTO gifi (accno, description) VALUES ('230-246', 'Sonstige Forderungen und Vermögensgegenstände');
-INSERT INTO gifi (accno, description) VALUES ('247', 'Eingeforderte, aber noch nicht eingezahlte Einlagen');
-INSERT INTO gifi (accno, description) VALUES ('248', 'Einzelwertberichtigungen zu sonstigen Forderungen und Vermögensgegenständen');
-INSERT INTO gifi (accno, description) VALUES ('249', 'Pauschalwertberichtigungen zu sonstigen Forderungen und Vermögensgegenständen');
---
-INSERT INTO gifi (accno, description) VALUES ('25', 'Forderungen aus der Abgabenverrechnung');
-INSERT INTO gifi (accno, description) VALUES ('250-259', 'Forderungen aus der Abgabenverrechnung');
---
-INSERT INTO gifi (accno, description) VALUES ('26', 'Wertpapiere und Anteile');
-INSERT INTO gifi (accno, description) VALUES ('260', 'Eigene Anteile');
-INSERT INTO gifi (accno, description) VALUES ('261', 'Anteile an verbundenen Unternehmen');
-INSERT INTO gifi (accno, description) VALUES ('262', 'Sonstige Anteile');
-INSERT INTO gifi (accno, description) VALUES ('263-267', 'Sonstige Wertpapiere');
-INSERT INTO gifi (accno, description) VALUES ('268', 'Besitzwechsel, soweit dem Unternehmen nicht die der Ausstellung zugrundeliegenden Forderungen zustehen');
-INSERT INTO gifi (accno, description) VALUES ('269', 'Wertberichtigungen');
---
-INSERT INTO gifi (accno, description) VALUES ('27-28', 'Kassenbestand, Schecks, Guthaben bei Kreditinstituten');
-INSERT INTO gifi (accno, description) VALUES ('270-272', 'Kassenbestände in Inlandswährung');
-INSERT INTO gifi (accno, description) VALUES ('273', 'Postwertzeichen');
-INSERT INTO gifi (accno, description) VALUES ('274', 'Stempelmarken');
-INSERT INTO gifi (accno, description) VALUES ('275-277', 'Kassenbestände in Fremdwährung');
-INSERT INTO gifi (accno, description) VALUES ('278', 'Schecks in Inlandswährung');
-INSERT INTO gifi (accno, description) VALUES ('280-288', 'Guthaben bei Kreditinstituten');
-INSERT INTO gifi (accno, description) VALUES ('289', 'Wertberichtigungen');
---
-INSERT INTO gifi (accno, description) VALUES ('29', 'Rechnungsabgrenzungsposten');
-INSERT INTO gifi (accno, description) VALUES ('290', 'Aktive Rechnungsabgrenzungsposten');
-INSERT INTO gifi (accno, description) VALUES ('295', 'Disagio');
-INSERT INTO gifi (accno, description) VALUES ('296', 'Unterschiedsbetrag zur gebotenen Pensionsrückstellung');
-INSERT INTO gifi (accno, description) VALUES ('297', 'Unterschiedsbetrag gem. Abschnitt XII Pensionskassengesetz');
-INSERT INTO gifi (accno, description) VALUES ('298', 'Steuerabgrenzung');
---
-INSERT INTO gifi (accno, description) VALUES ('3', 'Rückstellungen, Verbindlichkeiten und Rechnungsabgrenzungsposten');
---
-INSERT INTO gifi (accno, description) VALUES ('30', 'Rückstellungen');
-INSERT INTO gifi (accno, description) VALUES ('300', 'Rückstellungen für Abfertigungen');
-INSERT INTO gifi (accno, description) VALUES ('301', 'Rückstellungen für Pensionen');
-INSERT INTO gifi (accno, description) VALUES ('302-303', 'Steuerrückstellungen');
-INSERT INTO gifi (accno, description) VALUES ('304-309', 'Sonstige Rückstellungen');
---
-INSERT INTO gifi (accno, description) VALUES ('31', 'Anleihen, Verbindlichkeiten gegenüber Kreditinstituten und Finanzinstituten');
-INSERT INTO gifi (accno, description) VALUES ('310', 'Anleihen (einschließlich konvertibler)');
-INSERT INTO gifi (accno, description) VALUES ('311-317', 'Verbindlichkeiten gegenüber Kreditinstituten');
-INSERT INTO gifi (accno, description) VALUES ('318-319', 'Verbindlichkeiten gegenüber Finanzinstituten');
---
-INSERT INTO gifi (accno, description) VALUES ('32', 'Erhaltene Anzahlungen auf Bestellungen');
-INSERT INTO gifi (accno, description) VALUES ('320', 'Erhaltene Anzahlungen auf Bestellungen');
-INSERT INTO gifi (accno, description) VALUES ('321', 'Umsatzsteuer-Evidenzkonto für erhaltene Anzahlungen auf Bestellungen');
---
-INSERT INTO gifi (accno, description) VALUES ('33', 'Verbindlichkeiten aus Lieferungen und Leistungen, Verbindlichkeiten aus der Annahme gezogener und der Ausstellung eigener Wechsel');
-INSERT INTO gifi (accno, description) VALUES ('330-335', 'Verbindlichkeiten aus Lieferungen und Leistungen Inland');
-INSERT INTO gifi (accno, description) VALUES ('336', 'Verbindlichkeiten aus Lieferungen und Leistungen Währungsunion');
-INSERT INTO gifi (accno, description) VALUES ('337', 'Verbindlichkeiten aus Lieferungen und Leistungen sonstiges Ausland');
-INSERT INTO gifi (accno, description) VALUES ('338-339', 'Verbindlichkeiten aus der Annahme gezogener Wechsel und der Ausstellung eigener Wechsel');
---
-INSERT INTO gifi (accno, description) VALUES ('34', 'Verbindlichkeiten gegenüber verbundenen Unternehmen, gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht und gegenüber Gesellschaftern');
-INSERT INTO gifi (accno, description) VALUES ('340-347', 'Verbindlichkeiten gegenüber verbundenen Unternehmen, Verbindlichkeiten gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno, description) VALUES ('348', 'Verbindlichkeiten gegenüber Gesellschaftern');
---
-INSERT INTO gifi (accno, description) VALUES ('35', 'Verbindlichkeiten aus Steuern');
-INSERT INTO gifi (accno, description) VALUES ('350-359', 'Verbindlichkeiten aus Steuern');
---
-INSERT INTO gifi (accno, description) VALUES ('36', 'Verbindlichkeiten im Rahmen der sozialen Sicherheit');
-INSERT INTO gifi (accno, description) VALUES ('360-369', 'Verbindlichkeiten im Rahmen der sozialen Sicherheit');
---
-INSERT INTO gifi (accno, description) VALUES ('37-38', 'Übrige sonstige Verbindlichkeiten');
-INSERT INTO gifi (accno, description) VALUES ('370-389', 'Übrige sonstige Verbindlichkeiten');
---
-INSERT INTO gifi (accno, description) VALUES ('39', 'Rechnungsabgrenzungsposten');
-INSERT INTO gifi (accno, description) VALUES ('390-399', 'Passive Rechnungsabgrenzungsposten');
---
-INSERT INTO gifi (accno, description) VALUES ('4', 'Betriebliche Erträge');
---
-INSERT INTO gifi (accno, description) VALUES ('40-44', 'Brutto-Umsatzerlöse und Erlösschmälerungen');
-INSERT INTO gifi (accno, description) VALUES ('400-439', 'Brutto-Umsatzerlöse');
-INSERT INTO gifi (accno, description) VALUES ('440-449', 'Erlösschmälerungen');
---
-INSERT INTO gifi (accno, description) VALUES ('45', 'Bestandsveränderungen und aktivierte Eigenleistungen');
-INSERT INTO gifi (accno, description) VALUES ('450-457', 'Veränderungen des Bestandes an fertigen und unfertigen Erzeugnissen sowie an noch nicht abrechenbaren Leistungen');
-INSERT INTO gifi (accno, description) VALUES ('458-459', 'andere aktivierte Eigenleistungen');
---
-INSERT INTO gifi (accno, description) VALUES ('46-49', 'Sonstige betriebliche Erträge');
-INSERT INTO gifi (accno, description) VALUES ('460-462', 'Erlöse aus dem Abgang vom Anlagevermögen, ausgenommen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('463-465', 'Erträge aus dem Abgang vom Anlagevermögen, ausgenommen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('466-467', 'Erträge aus der Zuschreibung zum Anlagevermögen, ausgenommen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('470-479', 'Erträge aus der Auflösung von Rückstellungen');
-INSERT INTO gifi (accno, description) VALUES ('480-499', 'Übrige betriebliche Erträge');
---
-INSERT INTO gifi (accno, description) VALUES ('5', 'Materialaufwand und sonstige bezogene Herstellungsleistungen');
-INSERT INTO gifi (accno, description) VALUES ('500-509', 'Wareneinsatz');
-INSERT INTO gifi (accno, description) VALUES ('510-519', 'Verbrauch von Rohstoffen');
-INSERT INTO gifi (accno, description) VALUES ('520-529', 'Verbrauch von bezogenen Fertig- und Einzelteilen');
-INSERT INTO gifi (accno, description) VALUES ('530-539', 'Verbrauch von Hilfsstoffen');
-INSERT INTO gifi (accno, description) VALUES ('540-549', 'Verbrauch von Betriebsstoffen');
-INSERT INTO gifi (accno, description) VALUES ('550-559', 'Verbrauch von Werkzeugen und anderen Erzeugungshilfsmitteln');
-INSERT INTO gifi (accno, description) VALUES ('560-569', 'Verbrauch von Brenn- und Treibstoffen, Energie und Wasser');
-INSERT INTO gifi (accno, description) VALUES ('570-579', 'Sonstige bezogene Herstellungsleistungen');
-INSERT INTO gifi (accno, description) VALUES ('580', 'Skontoerträge auf Materialaufwand');
-INSERT INTO gifi (accno, description) VALUES ('581', 'Skontoerträge auf sonstige bezogene Herstellungsleistungen');
-INSERT INTO gifi (accno, description) VALUES ('590', 'Aufwandsstellenrechnung');
---
-INSERT INTO gifi (accno, description) VALUES ('6', 'Personalaufwand');
-INSERT INTO gifi (accno, description) VALUES ('600-619', 'Löhne');
-INSERT INTO gifi (accno, description) VALUES ('620-639', 'Gehälter');
-INSERT INTO gifi (accno, description) VALUES ('640-644', 'Aufwendungen für Abfertigungen');
-INSERT INTO gifi (accno, description) VALUES ('645-649', 'Aufwendungen für Altersversorgung');
-INSERT INTO gifi (accno, description) VALUES ('650-655', 'Gesetzlicher Sozialaufwand Arbeiter');
-INSERT INTO gifi (accno, description) VALUES ('656-659', 'Gesetzlicher Sozialaufwand Angestellte');
-INSERT INTO gifi (accno, description) VALUES ('660-665', 'Lohnabhängige Abgaben und Pflichtbeiträge');
-INSERT INTO gifi (accno, description) VALUES ('666-669', 'Gehaltsabhängige Abgaben und Pflichtbeiträge');
-INSERT INTO gifi (accno, description) VALUES ('670-689', 'Sonstige Sozialaufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('690', 'Aufwandsstellenrechnung');
---
-INSERT INTO gifi (accno, description) VALUES ('7', 'Abschreibungen und sonstige betriebliche Aufwendunge');
---
-INSERT INTO gifi (accno, description) VALUES ('70', 'Abschreibungen');
-INSERT INTO gifi (accno, description) VALUES ('700', 'Abschreibungen auf aktivierte Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes');
-INSERT INTO gifi (accno, description) VALUES ('701-708', 'Abschreibungen auf das Anlagevermögen (ausgenommen Finanzanlagen)');
-INSERT INTO gifi (accno, description) VALUES ('709', 'Abschreibungen vom Umlaufvermögen, soweit diese die im Unternehmen üblichen Abschreibungen übersteigen');
---
-INSERT INTO gifi (accno, description) VALUES ('71', 'Sonstige Steuern');
-INSERT INTO gifi (accno, description) VALUES ('710-719', 'Sonstige Steuern');
---
-INSERT INTO gifi (accno, description) VALUES ('72-78', 'Übrige betriebliche Aufwendungen');
---
-INSERT INTO gifi (accno, description) VALUES ('72', 'Instandhaltung und Reinigung durch Dritte, Entsorgung, Beleuchtung');
-INSERT INTO gifi (accno, description) VALUES ('720-729', 'Instandhaltung und Reinigung durch Dritte, Entsorgung, Beleuchtung');
---
-INSERT INTO gifi (accno, description) VALUES ('73', 'Transport-, Reise- und Fahrtaufwand, Nachrichtenaufwand');
-INSERT INTO gifi (accno, description) VALUES ('730-731', 'Transporte durch Dritte');
-INSERT INTO gifi (accno, description) VALUES ('732-733', 'Kfz-Aufwand');
-INSERT INTO gifi (accno, description) VALUES ('734-735', 'Reise- und Fahrtaufwand');
-INSERT INTO gifi (accno, description) VALUES ('736-737', 'Tag- und Nächtigungsgelder');
-INSERT INTO gifi (accno, description) VALUES ('738-739', 'Nachrichtenaufwand');
---
-INSERT INTO gifi (accno, description) VALUES ('74', 'Miet-, Pacht-, Leasing- und Lizenzaufwand');
-INSERT INTO gifi (accno, description) VALUES ('740-743', 'Miet- und Pachtaufwand');
-INSERT INTO gifi (accno, description) VALUES ('744-747', 'Leasingaufwand');
-INSERT INTO gifi (accno, description) VALUES ('748-749', 'Lizenzaufwand');
---
-INSERT INTO gifi (accno, description) VALUES ('75', 'Aufwand für beigestelltes Personal, Provisionen an Dritte, Aufsichtsratsvergütungen');
-INSERT INTO gifi (accno, description) VALUES ('750-753', 'Aufwand für beigestelltes Personal');
-INSERT INTO gifi (accno, description) VALUES ('754-757', 'Provisionen an Dritte');
-INSERT INTO gifi (accno, description) VALUES ('758-759', 'Aufsichtsratsvergütungen');
---
-INSERT INTO gifi (accno, description) VALUES ('76', 'Büro-, Werbe- und Repräsentationsaufwand');
-INSERT INTO gifi (accno, description) VALUES ('760', 'Büromaterial und Drucksorten');
-INSERT INTO gifi (accno, description) VALUES ('761-762', 'Druckerzeugnisse und Vervielfältigungen');
-INSERT INTO gifi (accno, description) VALUES ('763', 'Fachliteratur und Zeitungen');
-INSERT INTO gifi (accno, description) VALUES ('765-768', 'Werbung und Repräsentation');
-INSERT INTO gifi (accno, description) VALUES ('769', 'Spenden und Trinkgelder');
---
-INSERT INTO gifi (accno, description) VALUES ('77-78', 'Versicherungen, Übrige Aufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('770-774', 'Versicherungen');
-INSERT INTO gifi (accno, description) VALUES ('775-776', 'Beratungs- und Prüfungsaufwand');
-INSERT INTO gifi (accno, description) VALUES ('777', 'Aus- und Fortbildung');
-INSERT INTO gifi (accno, description) VALUES ('778', 'Mitgliedsbeiträge');
-INSERT INTO gifi (accno, description) VALUES ('779', 'Spesen des Geldverkehrs');
-INSERT INTO gifi (accno, description) VALUES ('780-781', 'Schadensfälle');
-INSERT INTO gifi (accno, description) VALUES ('782', 'Buchwert abgegangener Anlagen, ausgenommen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('783', 'Verluste aus dem Abgang vom Anlagevermögen, ausgenommen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('784-788', 'Verschiedene betriebliche Aufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('789', 'Skontoerträge auf sonstige betriebliche Aufwendungen');
---
-INSERT INTO gifi (accno, description) VALUES ('79', 'Konten für das Umsatzkostenverfahren');
-INSERT INTO gifi (accno, description) VALUES ('790', 'Aufwandsstellenrechnung');
-INSERT INTO gifi (accno, description) VALUES ('791-799', 'Aufwandsstellen im Rahmen des Umsatzkostenverfahrens');
-INSERT INTO gifi (accno, description) VALUES ('791-795', 'Aufwandsstellen der Herstellung');
-INSERT INTO gifi (accno, description) VALUES ('796', 'Herstellungskosten der zur Erzielung der Umsatzerlöse erbrachten Leistungen');
-INSERT INTO gifi (accno, description) VALUES ('797', 'Vertriebskosten');
-INSERT INTO gifi (accno, description) VALUES ('798', 'Verwaltungskosten');
-INSERT INTO gifi (accno, description) VALUES ('799', 'Sonstige betriebliche Aufwendungen');
---
-INSERT INTO gifi (accno, description) VALUES ('8', 'Finanzerträge und Finanzaufwendungen, a.o. Erträge und a.o. Aufwendungen, Steuern vom Einkommen und vom Ertrag, Rücklagenbewegung');
---
-INSERT INTO gifi (accno, description) VALUES ('80-83', 'Finanzerträge und Finanzaufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('800-804', 'Erträge aus Beteiligungen');
-INSERT INTO gifi (accno, description) VALUES ('805-809', 'Erträge aus anderen Wertpapieren und Ausleihungen des Finanzanlagevermögens');
-INSERT INTO gifi (accno, description) VALUES ('810-813', 'Sonstige Zinsen und ähnliche Erträge');
-INSERT INTO gifi (accno, description) VALUES ('814', 'Erlöse aus dem Abgang von Beteiligungen');
-INSERT INTO gifi (accno, description) VALUES ('815', 'Erlöse aus dem Abgang von sonstigen Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('816', 'Erlöse aus dem Abgang von Wertpapieren des Umlaufvermögens');
-INSERT INTO gifi (accno, description) VALUES ('817', 'Buchwert abgegangener Beteiligungen');
-INSERT INTO gifi (accno, description) VALUES ('818', 'Buchwert abgegangener sonstiger Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('819', 'Buchwert abgegangener Wertpapiere des Umlaufvermögens');
-INSERT INTO gifi (accno, description) VALUES ('820', 'Erträge aus dem Abgang von und der Zuschreibung zu Finanzanlagen');
-INSERT INTO gifi (accno, description) VALUES ('821', 'Erträge aus dem Abgang von und der Zuschreibung zu Wertpapieren des Umlaufvermögens');
-INSERT INTO gifi (accno, description) VALUES ('822-825', 'Aufwendungen aus Beteiligungen');
-INSERT INTO gifi (accno, description) VALUES ('826-827', 'Aufwendungen aus sonstigen Finanzanlagen und aus Wertpapieren des Umlaufvermögens');
-INSERT INTO gifi (accno, description) VALUES ('828-834', 'Zinsen und ähnliche Aufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('835', 'Nicht ausgenützte Lieferantenskonti');
---
-INSERT INTO gifi (accno, description) VALUES ('84', 'Außerordentliche Erträge und außerordentliche Aufwendungen');
-INSERT INTO gifi (accno, description) VALUES ('840-844', 'Außerordentliche Erträge');
-INSERT INTO gifi (accno, description) VALUES ('845-849', 'Außerordentliche Aufwendungen');
---
-INSERT INTO gifi (accno, description) VALUES ('85', 'Steuern vom Einkommen und vom Ertrag');
-INSERT INTO gifi (accno, description) VALUES ('850-859', 'Steuern vom Einkommen und vom Ertrag');
---
-INSERT INTO gifi (accno, description) VALUES ('86-89', 'Rücklagenbewegung, Ergebnisüberrechnung');
-INSERT INTO gifi (accno, description) VALUES ('860-869', 'Auflösung unversteuerter Rücklagen');
-INSERT INTO gifi (accno, description) VALUES ('870-874', 'Auflösung von Kapitalrücklagen');
-INSERT INTO gifi (accno, description) VALUES ('875-879', 'Auflösung von Gewinnrücklagen');
-INSERT INTO gifi (accno, description) VALUES ('880-889', 'Zuweisung zu unversteuerten Rücklagen');
-INSERT INTO gifi (accno, description) VALUES ('890-895', 'Zuweisung zu Gewinnrücklagen');
-INSERT INTO gifi (accno, description) VALUES ('899', 'Gewinnabfuhr bzw. Verlustüberrechnung aus Ergebnisabführungsverträgen');
---
-INSERT INTO gifi (accno, description) VALUES ('9', 'Eigenkapital, unversteuerte Rücklagen, Einlagen Stiller Gesellschafter, Abschluß- und Evidenzkonten');
---
-INSERT INTO gifi (accno, description) VALUES ('900-918', 'Gezeichnetes bzw. gewidmetes Kapital');
-INSERT INTO gifi (accno, description) VALUES ('919', 'Nicht eingeforderte ausstehende Einlagen');
-INSERT INTO gifi (accno, description) VALUES ('920-929', 'Kapitalrücklagen');
-INSERT INTO gifi (accno, description) VALUES ('930-938', 'Gewinnrücklagen');
-INSERT INTO gifi (accno, description) VALUES ('939', 'Bilanzgewinn (-verlust)');
-INSERT INTO gifi (accno, description) VALUES ('940-959', 'Bewertungsreserven und sonstige unversteuerte Rücklagen');
-INSERT INTO gifi (accno, description) VALUES ('960-969', 'Privat- und Verrechnungskonten bei Einzelunternehmen und Personengesellschaften');
-INSERT INTO gifi (accno, description) VALUES ('970-979', 'Einlagen Stiller Gesellschafter');
-INSERT INTO gifi (accno, description) VALUES ('980', 'Eröffnungsbilanz');
-INSERT INTO gifi (accno, description) VALUES ('985', 'Schlußbilanz');
-INSERT INTO gifi (accno, description) VALUES ('989', 'Gewinn- und Verlustrechnung');
-INSERT INTO gifi (accno, description) VALUES ('990-999', 'Evidenzkonten');
diff --git a/sql-ledger/sql/Belgium-chart.sql b/sql-ledger/sql/Belgium-chart.sql
deleted file mode 100644
index 5466b22..0000000
--- a/sql-ledger/sql/Belgium-chart.sql
+++ /dev/null
@@ -1,380 +0,0 @@
--- selon PLAN COMPTABLE MINIMUM NORMALISE BELGE
--- contribué par Jens-Ingo Brodesser, jens-ingo@all2all.org, Moving Art Studio ASBL, ALL2ALL The Independent Network
--- le 15/07/2003
-
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('500','Action propres - Eigen aandelen','A','Q','','50');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('50','Actions propres - Eigen aandelen','H','Q','','50');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('756000','Produits financiers divers','A','I','AR_paid:AP_paid','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612200','Carburants voitures','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('630','Dotations amort., réduction valeur s/immo. - Afschr., waardeverm. op v. a., toevoeging','A','E','','63');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613210','Honoraires avocats','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('712','Des encours de fabrication - In de vooraad goederen in bewerking','A','I','IC_sale','71');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('600','Achats matières premières - Aankopen van grondstoffen','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('614400','Entrée aux foires','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('742','Plus-values créances com. - Meerwaarden realis. handelsvorderingen','A','I','','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613304','Traiteurs-réception clientèle','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('64','Autres charges exploitation - Andere bedrijfskosten','H','E','','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('76','Produits exceptionnels - Uitzonderlijke opbrengsten','H','I','','76');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('743000','Ventes diverses - Diverse bedrijfsopbrengsten','A','I','','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('760100','sur immobilisations corp. - op materiële vaste activa','A','I','','760');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('611150','Charges locatives voitures','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('771200','Reprises de provisions fiscales - Terugn. fiscale voorz.','A','I','','771');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('794','Intervention associé perte - Tussenkomst vennoten verlies','A','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('404','Produits à recevoir - Te innen opbrengsten','A','A','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('406','Acomptes versés - Vooruitbetalingen','A','A','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('407','Créances douteuses - Dubieuze debiteuren','A','A','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411620','TVA à régulariser (case 62)','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('41','Autres créances - Overige vorderingen','H','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('442001','Fournisseurs essence','A','L','AP','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('608','Remises ristournes rabais obtenus - Ontvangen kortingen ristorno''s en rabatten (-)','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('609000','de matières premières - van grondstofen','A','E','','609');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6','CLASSE 6 -- CHARGES - KOSTEN','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612140','Internet','A','I','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('655000','Ecarts de conversion de devises','A','E','AR_paid:IC_sale:IC_expense','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411590','TVA ACHATS 6%','A','A','AP_tax:IC_taxpart:IC_taxservice:CT_tax','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411591','TVA ACHATS 21%','A','A','AP_tax:IC_taxpart:IC_taxservice:CT_tax','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411','TVA A RECUPERER - TERUG TE VORDEREN BTW','H','I','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('44','Dettes commerciales - Handelsschulden','H','L','','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('416','Créances diverses - Diverse vorderingen','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('409','Réductions de valeur actées (-) - Geboekte waardevermindering','A','A','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451541','TVA DUE VENTES 21%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','451');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451540','TVA DUE VENTES 6%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','451');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451560','TVA DUE CO-CONTRACTANT','A','L','AR_tax','451');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('640','Charges fiscales de l''exploitation - Bedrijfsbelastingen','A','E','','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('713','Des Produits finis - In de voorraad gereed product','A','I','IC_sale','71');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('750','Produits immo. financières - Opbrengsten financiële vaste activa','A','I','','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('656100','Frais de banque','A','E','','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('755000','Ecarts de convers. devises - Resultats omrekening vreemde valuta','A','I','IC_sale:IC_income','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('754000','Différence de change - Wisselresultaten','A','I','AR_amount:IC_income','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('761','Reprises réduct. valeur immo. fin. - Terugneming waardeverm. fin. v. a.','A','I','','76');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('773','Impôts étrangers s/résultat - Buitenl. belasting op resultaat','A','I','','77');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('75','Produits financiers - Financiële opbrengsten','H','I','','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('77','Régularisation d''impôts, reprises provisions fiscales - Regul. belastingen en terugneming fiscale voorz.','H','I','','77');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7','CLASSE 7 -- PRODUITS - OPBRENGSTEN','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('440','Fournisseurs - Leveranciers','A','L','AP','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612300','Abonnements & Documentations','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('410','Capital appelé, non versé - Opgevraagd, niet-gestort kapitaal','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('417','Créances douteuses - Dubieuze debiteuren','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4500','4500-4504 Impôts belges résultat - Belgische winstbelasting','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451','TVA A PAYER - TE BETALEN BTW','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4525','4525-4527 Autres impôts et taxes belges - Andere Belg. belast. en taksen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('455','Rémunerations - Bezoldigingen','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('601','Achat des fournitures - Aankoop van hulpstoffen','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('49','Comptes de régularisation - Overlopende- en wachtrekeningen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613220','Honoraires notaires','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('414100','Indeminités s/sinistres à recevoir - Te ontvang. schadevergoed.','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('42','Dettes à plus d''un an écheant dans l''année - Schulden op meer dan één jaar die binnen het jaar verfallen','H','L','','42');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613311','Deplacements étranger train, taxi, etc','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('611151','Charges locatives camions/camionnettes','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('432','Etabli. crédit, crédits d''acceptation - Acceptkrediten','A','L','','43');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('433','Etabl. crédit, dettes cpt. courant - Schulden rekening courant','A','L','','43');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('705100','DNS REGISTRY','A','I','AR_amount:IC_income','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411640','TVA à recupérer s/NDC émises','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('52','Titres à revenu fixe - Vastrentende Effecten','H','Q','','52');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('609100','de fourniture - van hulpstoffen','A','E','','609');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('442004','VISA - décompte mensuel','A','L','AP_amount:AP_paid','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('65','Charges financières','H','E','','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('442002','Fournisseurs restaurants','A','L','AP','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('499000','Compte d''attente - Wachtrekening','A','Q','AR_amount:AP_amount:IC_sale:IC_income:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('656500','Intétêts retards sociaux - Sociale achterst. interest','A','E','AP_amount:IC_expense','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('617','Personnel intérimaire - Uitzendkrachten','A','E','','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('618','Divers','A','E','','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620','Rémunerations et avant. sociaux directs - Bezolgingen en rechts. sociale voordelen','A','E','','62');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620000','Administrateurs ou gérants - Bestuurders of zaakvoerders','A','E','','620');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620100','Personnel de direction - Directiepersoneel','A','E','','620');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('602','Achats services, travaux, études - Aankopen diensten, werk, studies','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612143','Noms DNS','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612000','Eau','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('442005','AMERICAN EXPRESS - décompte mensuel','A','L','AP','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('641','Moins-values s/réalis. cour. d''immo. corp. - Minderwa. courante realis. vaste activa','A','E','','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('715','Des immeubles constr. dest. à la vente - In de voorr. onroe. goederen best. v. verkoop','A','I','IC_sale','71');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612400','Imprimés & fournitures de bureau','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('414200','Subsides en capital à recevoir - Te ontv. kapitaalsubsidies','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('66','Charges exceptionnelles','H','E','','66');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613230','Honoraires huissiers de justice','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613313','Restaurants étranger','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('74','Autres produits exploitation - Andere bedrijfsopbrengsten','H','I','','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('610','Loyers et charges locatives','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('751','Produits actifs circulants - Opbrengsten uit vlottende activa','A','I','','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('705200','WEB HOSTING','A','I','AR_amount:IC_income','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('705300','INTERVENTION','A','I','AR_amount:IC_income','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('762','Reprises provisions risq. charg. except. - Terugn. voorz. uitz. risico en kosten','A','I','','76');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('780','Prélèvements s/impôts différés - Onttrekking a. uitgesteld. belast.','A','I','','78');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('78','Prélèvements réserves immunisées et impôts différés - Onttrek. belast.vrije reserves en de uitgestelde belastingen','H','I','','78');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('70','Chiffre d''affaires - Omzet','H','I','','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('614100','Catalogues et imprimées','A','I','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('53','Dépôts à terme - Termijndeposito''s','H','Q','','53');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('609400','de marchandises - van handelsgoederen','A','E','','609');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451501','TVA DUE ACHATS INCO 21%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','451');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612010','Chauffage','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612410','Fournitures informatiques','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613250','Honoraires sécretariat social','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613400','Seminaires & Recyclages','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411593','TVA DUE 1ER TRIMESTRE TOTAL','A','L','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612530','Petit outillage & petit matériel','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('230010','Inst. techniques acquis. exercice - Installaties m.b.t. dit boekj.','A','A','AP_amount:IC_sale','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612540','Petit matériel informatique','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('603','Sous-traitances générales - Algemene onderaanemingen','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('743200','COTISATION DE MEMBRE','A','I','AR_amount:IC_income','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411000','Cpt. curr. TVA à récuperer - Terug te vord. BTW: saldo BTW r/c','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('601000','Emballages perdus','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('416200','Cpt. courant associés - Rekening-courant vennoten','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('56','Office des chèques postaux - Postchèque en girodienst','H','Q','','56');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('67','Impôt sur le résultat','H','E','','67');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('609500','d''immeubles achétés destinés à vente - van gek. onroer. goederen best. v. verkoop','A','E','','609');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('654','Différence de change','A','E','AP_amount','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('642','Moins-values s/réalis. créances com. - Minderwa. realis. handelsvorderingen','A','E','','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('717','Des commandes en cours exécution - In de bestelling in uitvoering','A','I','IC_sale','71');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('752','Plus-values réalis. d''actifs circulants - Meerwaar. realis. v. vlottende activa','A','I','','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('763','Plus-values s/réalis. actifs immo. - Meerwaar. realis. vaste a.','A','I','','76');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('789','Prélèvements s/réserves immunisées - Onttrekking a. belast.vrije reserves','A','I','','78');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('79','Affectations et prélèvements - Resultaatverwerking','H','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('412','Impôts, précomptes à récupérer - Terug te vorderen belast. en voorheffingen','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('418','Cautionnements versés en numéraire - Borgtochten betaald in contanten','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('120','Plus-values de réévaluation sur immo. incorp. - Herwaarderingsmeerwaarde','A','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('121','Plus-values de réévaluation sur immo. corp. - Herwaarderingsmeerwaarde','A','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('122','Plus-values de réévaluation sur immo. financiers - Herwaarderingsmeerwaarde','A','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('123','Plus-values de réévaluation sur stocks - Herwaarderingsmeerwaarde','A','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('124','Reprises de réduction de valeur sur placements trésorerie - Herwaarderingsmeerwaarde','A','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('12','Plus-values de réévaluation - Herwaarderingsmeerwaarde','H','L','','12');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('110','Primes d''émission - Uitgiftepremies','A','L','','11');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('11','Primes d''émission - Uitgiftepremies','H','L','','11');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('643','643-648 Charges d''exploitation diverses - Diverse berijfskosten','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612100','Telephone','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('10','Capital - Kapitaal','H','L','','10');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1','CLASSE 1 -- CAPITAL PROPRE, ... - EIGEN VERMOGEN, ...','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('60','Approv. et marchandises','H','E','','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('717000','Valeur d''acquisition - Aanschaffingswaarde','A','I','','717');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('68','Transferts comptes immunisées et impôts différés','H','E','','68');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('130','Réserve légale - Wettelijke reserve','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('131100','Autres réserves indisponibles - Andere onbeschikbare reserves','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('132','Réserves immunisées - Belastingvrije reserves','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('131000','Réserves pour actions propres - Reserve voor eigen aandelen','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('133','Réserves disponibles - Beschikbare reserves','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('101','Capital non appelé (-) - Niet opgevraagd kapitaal (-)','A','L','','10');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('14','Bénéfice/perte reporté(e) - Overgedragen winst/verlies','H','L','','14');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('100','Capital souscrit - Geplaatst kapitaal','A','L','','10');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('601010','Emballages recuperables','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('140','Bénéfice/perte reporté(e) - Overgedragen winst/verlies','A','L','','14');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620200','Employés - Bedienden','A','E','','620');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('15','Subsides en capital - Kapitaalsubsidies','H','L','','15');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('700','700-707 Ventes et prestations de services - Verkopen en dienstprestaties','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612450','Photocopies-Photographies','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('131','Réserves indisponibles - Onbeschikbare reserves','A','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('16','Provisions et impôts différés - Voorz. en uitgestelde belastingen','H','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('160','Provisions pensions et obligations - Voorz. pensioenen en soortg. verplichtingen','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('161','Provisions charges fiscales - Voorz. belastingen','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('162','Provisions gros entretiens et réparations - Voorz. grote herstel/onderh.','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('163','Provisions autres risques-charges - Voorzieningen voor Lijfrente','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('753','Subsides en capital et intérêts - Kapitaal- en interestsubsidies','A','I','','75');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('705000','Prestations de services - Verkopen en dienstprestaties','A','I','','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('764','764-769 Autres produits execptionnels - Andere uitz. opbrengsten','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('790','Bénéfice reporté exercice précéd. - Overgedragen winst vorige boekj.','A','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('168200','Impôts diff. s/+value immo. corp. - Uitg. belast./meerwa./mat. v.a.','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('604','Achats marchandises - Aankopen van handelsgoederen','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('43','Dettes financières - Financiële schulden','H','L','','43');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('168000','Impôts diff. s/subsides en capital - Uitgest. belast./Kapitaalsubsidie','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613265','Honoraires d''autres','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620800','Assurance revenus garantis','A','E','AP_amount:IC_expense','62');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('168800','Impôts différés étrangers - Uitg. belast. buitenland','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('17','Dettes à plus d''un an - Schulden op meer dan een jaar','H','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('150','Montants obtenus - Kapitaalsubsidies','A','L','','15');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('172000','Dettes location fin. et assimilées - Leasingschuld. van vaste activa','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('419','Réductions de valeur actées (-) - Geboekte waardevermindering (-)','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4505','4505-4507 Autres impôts et taxes belges - Andere Belg. belast. en taksen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451610','TVA à régulariser (case 61)','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4528','Impôts et taxes étrangers - Buitenlandse belast. en taksen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('456','Pécules de vacances - Vakantiegeld','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('176','Acomptes reçus sur commandes','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('47','Dettes affectation résultat - Schulden besteming resultaat','H','L','','47');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('231010','Mach. et gros mat. acquis. exercice - Machines m.b.t. dit boekj.','A','A','AP_amount:IC_sale','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('178','Cautionnements reçu en numéraire - Borgtocht. ontvang. in contanten','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('179','Dettes diverses - Overige schulden','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('174','Autres emprunts - Overige schulden','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2','CLASSE 2 -- FRAIS D''ETABLISSEMENT, ACTIFS IMMOBILISES, ... - OPRICHTINGSKOSTEN, VASTE ACTIVA, ...','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('20','Frais d''établissement - Oprichtingskosten','H','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('200','Frais de constitution - Kosten van oprichting','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('200000','Fr. const. acquis. anterieurs - Kost. opricht./kapitaalverhoging','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('605','Achats d''immeubles destinés vente - Aankopen onroer. goederen bestemd v. verkoop','A','E','IC_cogs','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('61','Services et biens divers','H','E','','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('69','Affectations et prélèvements','H','E','','69');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('200900','Fr. const. amort. anterieur - Afschr. kost. opricht./kap.verh. vorig','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('200910','Fr. const. amort. de l''exercice - Afschr. kost. opricht./kap.verh. dit','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411594','TVA DUE 2E TRIMESTRE TOTAL','A','L','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('202','Autres frais d''établissement - Overige oprichtingskosten','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('204','Frais de restructuration - Herstructureringskosten','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('201','Frais d''émission d''emprunts - Kosten bij uitgifte van leningen','A','A','','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('21','Immobilisations incorporelles - Immateriele vaste activa','H','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620300','Ouvriers - Arbeiders','A','E','','620');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('211','Concessions, brevets, licences, ... - Consessies, octrooien, licenties, ...','A','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('210','Frais de recherches et developpement - Kosten van onderzoek en ontwikkeling','A','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('212','Goodwill','A','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('213','Acomptes versés - Vooruitbetalingen','A','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('214','Surprix afférents acquisition d''une participation','A','A','','21');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('22','Terrains et constructions - Terreinen en gebouwen','H','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('743','743-749 Produits d''exploitation divers - Diverse bedrijfsopbrengsten','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612020','Electricité','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('221','Constructions - Gebouwen','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('717100','Bénéfice pris en compte - Toegerekende winst','A','I','','717');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('756','756-759 Produits financiers divers - Diverse financiële opbrengsten','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('222','Terrains bâtis - Bebouwde terreinen','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('13','Réserves - Reserves','H','L','','13');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('223','Autres droits réels sur immeubles - Overige zakelijke rechten op onroe.','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('221000','Constructions acquis. anterieurs - Geb. aanschaffingsprijs vorig. boekj.','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('240210','Matériel informatique acquis. exercice - Hardware','A','A','AP_amount','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('221900','Constructions amort. anterieurs - Afschr. op gebouwen vorig boekj.','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('221910','Constructions amort. de l''exercice - Afschr. op gebouwen dit boekj.','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('771','Impôts belges sur le résultat - Belgische belasting op het resultaat','A','I','','77');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('23','Installations, machines et outillage - Installaties, machines en uitrusting','H','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('230','Installations - Installaties','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('230000','Inst. techniques acquis. anterieurs - Installaties m.b.t. vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('230900','Inst. techniques amort. anterieurs - Afschr. op installaties vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('230910','Inst. techniques amort. exercice - Afschr. op installaties dit boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('231','Machines','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('791','Prélèvement s/capital et primes émissions - Onttrek. kapitaal e. uitgiftepre.','A','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('220','Terrains - Terreinen','A','A','','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('237','Outillage - Uitrusting','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('231000','Mach. et gros mat. acquis anterieurs - Machines m.b.t. vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613100','Assurance incendie','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('231900','Mach. et gros mat. amort. anterieurs - Afschr. op machines vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('231910','Mach. et gros mat. amort. exercice - Afschr. op machines dit boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613275','Publications légales','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('237900','Outillage amort. anterieurs - Afschr. op uitrusting vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451570','TVA DUE SUR IMPORTATIONS','A','L','AR_tax','451');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('237910','Outillage amort. exercice - Afschr. op uitrusting dit boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('237000','Outillage acquis. anterieurs - Uitrusting m.b.t. vorig boekj.','A','A','','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('580000','TRANSFERTS INTERNES DES FONDS - TRANSFERTEN','A','Q','AR_paid:AP_paid','58');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('24','Mobilier et matériel roulant - Meubilair en rollend materieel','H','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2400','Mobilier - Meubilair','A','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2401','Matériel de bureau - Bureaumaterieel','A','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2402','Matériel informatique - Hardware','A','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('241','Voiture - Rollend materieel (wagen)','A','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('62','Rémunérations, charges sociales et pensions','H','E','','62');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('25','Immobilis. en loc-financement - Vaste activa in leasing of op grond','H','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612120','GSM','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('242','Camions - Rollend materieel (vrachtwagen)','A','A','','24');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('250','Terreins loc-fin - Terreinen in leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('251','Install., machines loc-fin - Installaties, machines in leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('309','Réduction val. act. mat. premières (-) - Geboekte waardev. grondst. (-)','A','A','','30');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('253','Matériel en loc-fin - Uitrusting in leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('254','Mat. inform. en loc-fin- Hardware in leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('255','Mat. roulant en loc-fin - Rollend materieel leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('26','Autres immobilisations corp. - Andere materiele vaste activa','H','A','','26');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('260','Amenagement locaux loués - Inrichtingskost. gehuurde gebouw','A','A','','26');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613130','Assurance crédit','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('300','Approv. matière première - Grondstoffen','A','A','IC','30');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411595','TVA DUE 3E TRIMESTRE TOTAL','A','L','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('620400','Autres membres du personnel - Andere personeelsleden','A','E','','620');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('270','Immo. corp. en cours et acomptes versés - V. activa in aanbouw en vooruit','A','A','','27');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613300','Deplacements Belg. train, taxi, etc','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('27','Immo. corp. en cours et acomptes versés - V. activa in aanbouw en vooruit ','H','A','','27');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('252','Mobilier en loc-fin - Meubilair in leasing','A','A','','25');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('168100','Impôts diff. s/+value immo. incorp. - Uitg. belast./meerwa./immat. v.a.','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('168700','Impôts diff. s/+value fonds publ. belges - Uitg. bel./meerwa./belg. effecten','A','L','','16');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('28','Immobilisations financiers - Financiele vaste activa','H','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451630','TVA sur NDC reçues','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('649','Ch. exploit. portées actif c. frais de restruct. (-) - Als herstruct.kost. geactiv. bedrijfsk. (-)','A','E','','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('71','Variation stocks et commandes en cours - Wijzigingen vorraden en in de bestellingen in uitvoering','H','I','','71');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('740','Subsides et montants compensat. - Subsidies en compens. bedragen','A','I','','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('760','Reprises amort. et réduct. valeur - Terugneming afschr. en waardeverm.','A','E','','76');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('280','Participations entreprises liées - Aanschaffingsw. deeln. verb. ond.','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('771000','Régularisations impôts dus versés - Regularisiering versch. of betaal. belast.','A','I','','771');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('281','Créances s/entreprises liées - Vorderingen op rekening','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('283','Créances s/entr. avec lien de part.','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('284','Autres actions et parts - Aanschaffingsw. and. aand.','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('285','Autres créances - Overige vorderingen','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('288','Cautions versés en numeraire - Borgtocht. betaald in contanten','A','A','','28');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('792','Prélèvements réserves - Onttrekking reserves','A','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('173100','Promesses banque - Promessen bank','A','L','','17');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290','Créances commerciales - Commerciele vorderingen','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('441','Effets à payer - Te betalen wissels','A','L','','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('430','Emprunts en compte à terme fixe - Leningen op rekeningen vaste termijn','A','L','','43');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('237010','Outillage acquisition exercice - Uitrusting m.b.t. dit boekj.','A','A','AP_amount:IC_sale','23');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('29','Créances à plus d''un an - Vorderingen op meer dan een jaar','H','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('45','Dettes fiscales, salariales, sociales - Schulden m. betrekking tot belastingen, bezoldingen en sociale lasten','H','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('452','Impôts et taxes à payer','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290000','Clients > 1 an - Handelsdebiteuren > 1 jaar','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290100','Effects à recevoir >1 an - Te innen wissels > 1 jaar','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290600','Acptes versés s/immo. financ. > 1 an - Vooruitbetalingen > 1 jaar','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290700','Créances douteuses - Dubieuze debiteuren >1 jaar','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('290900','Réduction valeur actée cr.dout. - Geboekte waardevermindering (-)','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('291','Autres Créances > 1 an - Over. vorderingen op rekening > 1 j.','A','A','','29');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('30','Approv. matières premières - Grondstoffen','H','A','','30');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3','CLASSE 3 -- STOCK ET COMMANDES EN COURS - GRONDSTOFFEN','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('453','Précompte retenus - Ingehouden voorheffingen','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('459','Autres dettes sociales - Andere sociale schulden','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('48','Dettes diverses - Diverse schulder','H','L','','48');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('31','Approv. et fournitures - Hulpstoffen','H','A','','31');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('431','Etabli. crédit, promesses - Kreditinstellingen, promessen','A','L','','43');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('400','Clients - Handelsdebiteuren','A','A','AR','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('319','Réduction valeur actées (-) - Geboekte waardev. hulpstoffen (-)','A','A','','31');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('32','Encours de fabrication - Goederen in bewerking','H','A','','32');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('708','Remis. rabais ristourn. accordés (-) - Toegek. korting. ristorno''s rabat. (-) ','A','I','AR_amount:IC_expense','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('741','Plus-values réalis. cour. immo. corp. - Meerwaar. cour. realis. materiële v.a.','A','I','','74');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('33','Produits finis - Gereed Product','H','A','','33');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('72','Production immobilisée - Geproduceerde vaste activa','H','I','','72');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('656600','Intérêts rétards com. - Com. achterst. interest','A','E','AP_amount:IC_expense','65');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('34','Marchandises - Handelsgoederen','H','A','','34');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('411596','TVA DUE 4E TRIMESTRE TOTAL','A','L','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('760000','sur immobilisations incorp. - op immateriële vaste activa','A','I','','760');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('35','Immeubles destinés vente - Onroerende goederen bestemd. v. verk.','H','A','','35');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('771100','Régul. d''impôts estimés - Regul. geraamde belasting','A','I','','771');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('793','Perte à reporter - Over te dragen verlies','A','I','','79');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4','CLASSE 4 -- CREANCES ET DETTES A UN AN AU PLUS - VORDERINGEN EN SCHULDEN OP TEN HOOGTE EEN JAAR','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5','CLASSE 5 -- PLACEMENTS DE TRESORIERIE - LIQUIDE MIDDELEN / GELDBELEGGINGEN','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('40','Créances commerciales - Handelsvorderingen','H','I','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('540','Chèques à encaisser - Te incasseren chèques','A','Q','AR_paid:AP_paid','54');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('329','Réduction valuer actée (-) - Geboekte waardeverminderingen (-) ','A','A','','32');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('339','Réductions de valeur actées (-) - Geboekte waardeverminderingen (-) ','A','A','','33');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('340','Marchandises - Handelsgoederen','A','A','IC','34');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('51','Actions et parts - Aandelen','H','Q','','51');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('349','Réduct. valeur actées (-) - Geboekte waardeverminderingen (-) ','A','A','','34');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('359','Réductions valeur actées (-) - Geboekte waardeverminderingen (-) ','A','A','','35');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613150','Assurance tous risques matériel élec.','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('552000','KBC56','A','Q','AR_paid:AP_paid','55');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('58','Virements interns - Interne overboekingen','H','Q','','58');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('55','Banque - Rekening-courant','H','Q','','55');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('54','Valeurs échues à encaissement - Te incasseren verfallen waarden','H','Q','','54');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('57','Caisses - Kassen','H','Q','','57');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('63','Amortissements, réductions valeur, provisions risques et charges','H','E','','63');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613303','Restaurants','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('310','Valeur d''acquisition - Aanschaffingswaarde hulpstoffen','A','A','IC','31');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('320','Valeur d''acquisition - Aanschaffingsw. goed. bewerking','A','A','IC','32');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('330','Produits finis - Gereed product','A','A','IC','33');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('350','Immeubles - Aanschaffingsw. onr. goed. verkoop','A','A','IC','35');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('705700','HARDWARE','A','I','AR_amount:IC_sale','70');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('609','Variation de stock - Voorraadwijzigingen','A','E','','60');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('621','Cotisation patronales d''assur. sociales - Werkgeversbijdragen soc. verzekeringen','A','E','','62');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451640','TVA à recupérer s/NDC émises','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('454','O.N.S.S. - R.S.Z.','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('511','Montants non-appelés (-) - Niet opgevraagde bedragen aan. (-)','A','Q','','51');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('640700','TVA non-deductible','A','E','AP_tax:IC_taxpart:IC_taxservice:CT_tax','64');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('221010','Construction acquis. de l''exercice - Geb. aanschaffingsprijs dit boekj.','A','A','AP_amount:IC_sale','22');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('401','Effets à recevoir - Te innen wissels','A','A','','40');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('444','Factures à recevoir - Te ontvangen facturen','A','L','','44');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('519','Réduct. valeur actées (-) - Geb. waardev. aandelen (-)','A','Q','','51');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('570000','CAISSE ESPECES - CONTANTEN','A','Q','AR_paid:AP_paid','57');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('414','Produits à recevoir - Te innen opbrengsten','A','A','','41');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451000','COMPTE COURANT TVA DUE','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('450','Dettes fiscales estimées - Geramd bedrag der belastingschulden','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4520','4520-4524 Impôts belges résultat - Belgische winstbelastingen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4508','Impôts et taxes étrangers - Buitenlandse belast. en taksen','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('46','Acomptes reçus sur commandes','H','L','','46');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('510','Valeur d''acquisition - Aanschaffingswaarde','A','Q','','51');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('499100','Compte de repartition - Verdelingsrekening','A','L','AR_paid:AP_paid:IC_income:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('613180','Assurance RC professionnelle','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('452500','Précompte immobilier - Onroerende voorhoeffing','A','L','','45');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('611340','Entretiens & réparations locaux','A','E','AP_amount:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('612150','Frais postaux','A','E','AP_amount:IC_cogs:IC_expense','61');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('200010','Fr. const. acquis. de l''exercice - Kost. opricht./kap.verh. dit boekjaar','A','A','AP_amount','20');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('451500','TVA DUE ACHATS INCO 6%','A','A','AR_tax:IC_taxpart:IC_taxservice:CT_tax','451');
-
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '411590'),0.06,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '411591'),0.21,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '451500'),0.06,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '451501'),0.21,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '451540'),0.06,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '451541'),0.21,'BE ... ... ...');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '640700'),0.21,'BE ... ... ...');
-
-UPDATE defaults SET inventory_accno_id = (SELECT id FROM chart WHERE accno = '340'), income_accno_id = (SELECT id FROM chart WHERE accno = '499000'), expense_accno_id = (SELECT id FROM chart WHERE accno = '499000'), fxgain_accno_id = (SELECT id FROM chart WHERE accno = '755000'), fxloss_accno_id = (SELECT id FROM chart WHERE accno = '655000'), weightunit = 'kg', curr = 'EUR:USD';
diff --git a/sql-ledger/sql/Belgium-gifi.sql b/sql-ledger/sql/Belgium-gifi.sql
deleted file mode 100644
index 3d00bac..0000000
--- a/sql-ledger/sql/Belgium-gifi.sql
+++ /dev/null
@@ -1,68 +0,0 @@
--- contribué par Jens-Ingo Brodesser, jens-ingo@all2all.org, Moving Art Studio ASBL, ALL2ALL The Independent Network
--- le 15/07/2003
-
-INSERT INTO gifi (accno,description) VALUES ('10','Capital');
-INSERT INTO gifi (accno,description) VALUES ('30','Approvisionnements - Matières premières');
-INSERT INTO gifi (accno,description) VALUES ('11','Primes d''émission');
-INSERT INTO gifi (accno,description) VALUES ('12','Plus-values de réévaluation');
-INSERT INTO gifi (accno,description) VALUES ('13','Réserves');
-INSERT INTO gifi (accno,description) VALUES ('14','Bénéfice reporté [ou Perte reportée (-)]');
-INSERT INTO gifi (accno,description) VALUES ('15','Subsides en capital');
-INSERT INTO gifi (accno,description) VALUES ('16','Provisions pour risques et charges et impôts différés');
-INSERT INTO gifi (accno,description) VALUES ('17','Dettes à plus d''un an');
-INSERT INTO gifi (accno,description) VALUES ('40','Créances commerciales');
-INSERT INTO gifi (accno,description) VALUES ('20','Frais d''établissement');
-INSERT INTO gifi (accno,description) VALUES ('21','Immobilisations incorporelles');
-INSERT INTO gifi (accno,description) VALUES ('22','Terrains et constructions');
-INSERT INTO gifi (accno,description) VALUES ('23','Installations, machines et outillage');
-INSERT INTO gifi (accno,description) VALUES ('24','Mobilier et matériel roulant');
-INSERT INTO gifi (accno,description) VALUES ('25','Immobilisations détenues en location-finac. et droits similaires');
-INSERT INTO gifi (accno,description) VALUES ('31','Approvis. - Fournitures');
-INSERT INTO gifi (accno,description) VALUES ('27','Autres immobilisations corporelles en cours et acompts versés');
-INSERT INTO gifi (accno,description) VALUES ('26','Autres immobilisations corporelles');
-INSERT INTO gifi (accno,description) VALUES ('28','Immobilisations financières');
-INSERT INTO gifi (accno,description) VALUES ('29','Créances à plus d''un an');
-INSERT INTO gifi (accno,description) VALUES ('4115','TVA DUE TOTAL');
-INSERT INTO gifi (accno,description) VALUES ('33','Produits finis');
-INSERT INTO gifi (accno,description) VALUES ('32','Encours fabrication');
-INSERT INTO gifi (accno,description) VALUES ('34','Marchandises');
-INSERT INTO gifi (accno,description) VALUES ('35','Immeubles déstinés à la vente');
-INSERT INTO gifi (accno,description) VALUES ('36','Acomptes s/achats stocks');
-INSERT INTO gifi (accno,description) VALUES ('37','Commandes en cours d''exécution');
-INSERT INTO gifi (accno,description) VALUES ('41','Autres créances');
-INSERT INTO gifi (accno,description) VALUES ('42','Dettes à plus d''un an échéant dans l''année');
-INSERT INTO gifi (accno,description) VALUES ('43','Dettes financières');
-INSERT INTO gifi (accno,description) VALUES ('44','Dettes commerciales');
-INSERT INTO gifi (accno,description) VALUES ('45','Dettes fiscales, salariales et sociales');
-INSERT INTO gifi (accno,description) VALUES ('46','Acomptes réçus s/commandes');
-INSERT INTO gifi (accno,description) VALUES ('48','Dettes diverses');
-INSERT INTO gifi (accno,description) VALUES ('47','Dettes découlants de l''affectation du résultat');
-INSERT INTO gifi (accno,description) VALUES ('49','Comptes de régularisation et comptes d''attente');
-INSERT INTO gifi (accno,description) VALUES ('50','Actions propres');
-INSERT INTO gifi (accno,description) VALUES ('51','Actions et parts');
-INSERT INTO gifi (accno,description) VALUES ('52','Titres à revenu fixe');
-INSERT INTO gifi (accno,description) VALUES ('53','Dépôts à terme');
-INSERT INTO gifi (accno,description) VALUES ('54','Valeurs échues à l''encaissement');
-INSERT INTO gifi (accno,description) VALUES ('55','Etablissements de crédit');
-INSERT INTO gifi (accno,description) VALUES ('56','Office des chèques postaux');
-INSERT INTO gifi (accno,description) VALUES ('57','Caisses');
-INSERT INTO gifi (accno,description) VALUES ('58','Virements internes');
-INSERT INTO gifi (accno,description) VALUES ('60','Approvis. et marchandises');
-INSERT INTO gifi (accno,description) VALUES ('61','Services et biens divers');
-INSERT INTO gifi (accno,description) VALUES ('62','Rémunérations, charges sociales, pensions');
-INSERT INTO gifi (accno,description) VALUES ('63','Amortissements, réductions valeur, provisions risques et charges');
-INSERT INTO gifi (accno,description) VALUES ('64','Autres charges d''exploitation');
-INSERT INTO gifi (accno,description) VALUES ('65','Charges financières');
-INSERT INTO gifi (accno,description) VALUES ('66','Charges exceptionnelles');
-INSERT INTO gifi (accno,description) VALUES ('67','Impôts sur le résultat');
-INSERT INTO gifi (accno,description) VALUES ('68','Transferts aux réserves immunisées et aux impôts différés');
-INSERT INTO gifi (accno,description) VALUES ('69','Affectations et prélèvements');
-INSERT INTO gifi (accno,description) VALUES ('70','Chiffre d''affaires');
-INSERT INTO gifi (accno,description) VALUES ('71','Variation de stock et des commandes en cours d''éxécution');
-INSERT INTO gifi (accno,description) VALUES ('72','Production immobilisée');
-INSERT INTO gifi (accno,description) VALUES ('74','Autres produits d''exploitation');
-INSERT INTO gifi (accno,description) VALUES ('75','Produits financiers');
-INSERT INTO gifi (accno,description) VALUES ('76','Produits exceptionnels');
-INSERT INTO gifi (accno,description) VALUES ('77','Régularisations d''impôts et reprises provisions fiscales');
-INSERT INTO gifi (accno,description) VALUES ('78','Prélèvements s/réserves immunisées et impôts différés');
-INSERT INTO gifi (accno,description) VALUES ('79','Affectations et prélèvements');
diff --git a/sql-ledger/sql/Brazil_General-chart.sql b/sql-ledger/sql/Brazil_General-chart.sql
deleted file mode 100644
index 0854260..0000000
--- a/sql-ledger/sql/Brazil_General-chart.sql
+++ /dev/null
@@ -1,70 +0,0 @@
--- General Brazilien Portuguese COA
--- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','RECURSOS ATUAIS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Checando Cliente','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Caixa Baixo','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Contas a Receber','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Provisão para devedors duvidosos','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTÁRIO DE CLIENTES','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Inventário / Geral','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Inventário / Mercado Secundário','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Inventário / Computer Parts','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Escritório Móvel & Equipamentos','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Móvel. & Equip.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Veículo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Veículo','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','BALANÇO ATUAL','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Contas a Pagar','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2170','Taxas federais','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','VAT (7%)','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','VAT (8%)','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2380','Contas a pagar de férias','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2400','DEDUÇÕES DE FOLHA DE PAGAMENTO','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2450','Imposto de Renda Devido','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','Passivi exigível a longo prazo','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Empréstimo bancário','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Empréstimo de Acionistas','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','DIVISÃO DE CAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Divisão comum','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','VENDAS RECEITAS','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Vendas Gerais','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Partes para mercado secundário','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','Parte Computacional','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','CONSULTANDO FONTES DE RENDA','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','Consultando','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','Programando','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4340','Loja','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OUTRAS RENDAS','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','Transporte & Taxa','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Juros Acumulados','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Ganho de câmbio estrangeiro','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','CUSTO DE VENDAS DE PRODUTOS','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Compras','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5050','Mercado Secundário','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5060','Parte Computacional','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Frete','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','DESPESAS E FOLHA DE PAGAMENTO','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Salários','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GERAL E DESPESAS ADMINISTRATIVAS','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Contabilidade & Leis','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Publicidade & Promoções','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Balanço','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortização','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','Imposto de Renda','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Seguro','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interesses & Encargos Bancários','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Materiais de Escritório','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Aluguel','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Manutenção & Reparos','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telefone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Cursos & Entretenimentos','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Serviços Públicos','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenciamento para exportações','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Troca com Estrangeiro','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2320'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'R :EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Canada-English-gifi.sql b/sql-ledger/sql/Canada-English-gifi.sql
deleted file mode 100644
index 03945da..0000000
--- a/sql-ledger/sql/Canada-English-gifi.sql
+++ /dev/null
@@ -1,759 +0,0 @@
--- GIFI codes as set by the Canadian Government
--- It's a dirty job, but it seems somebody allready did it
--- PDF Tammes, Tue , 02 Apr 2002
--- remarks or questions to finance@bermuda-holding.com
---
--- From the GIFI documentation:
---
--- The GIFI information has to balance. We use the following rules to verify the information you provide.
--- total assets = total liabilities + total shareholder equity
--- total revenue - total expenses = net non-farming income
--- total farm revenue - total farm expenses = net farm income
---
--- You have to provide certain line items so that we can verify the above equations. Each GIFI must include:
--- balance sheet
--- Item 2599 Total assets
--- Item 3499 Total liabilities
--- Item 3620 Total shareholder equity
--- non-farming income and expenses
--- Item 8299 Total revenue
--- Item 9368 Total expenses
--- and/or
--- farming income and expenses
--- Item 9659 Total farm revenue
--- Item 9898 Total farm expenses
--- when reporting a breakdown of retained earnings
--- Item 3849 Retained earnings/deficit end
--- extraordinary items and income taxes
--- Item 9999 Net income/loss after taxes and extraordinary items
--- If the amount of a required item is NIL, you have to enter 0.
---
-INSERT INTO gifi (accno,description) VALUES ('1000', 'Cash & Deposits');
-INSERT INTO gifi (accno,description) VALUES ('1001', 'Cash');
-INSERT INTO gifi (accno,description) VALUES ('1002', 'Deposits In Canadian Banks And Institutions - Canadian Currency');
-INSERT INTO gifi (accno,description) VALUES ('1003', 'Deposits In Canadian Banks And Institutions - Foreign Currency');
-INSERT INTO gifi (accno,description) VALUES ('1004', 'Deposits In Foreign Banks - Canadian Currency');
-INSERT INTO gifi (accno,description) VALUES ('1005', 'Deposits In Foreign Banks - Foreign Currency');
-INSERT INTO gifi (accno,description) VALUES ('1006', 'Credit Union Central Deposits');
-INSERT INTO gifi (accno,description) VALUES ('1007', 'Other Cash Like Instruments - Gold Bullion, Silver Bullion');
-INSERT INTO gifi (accno,description) VALUES ('1060', 'Accounts Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1061', 'Allowance For Doubtfull Accounts Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1062', 'Trade Accounts Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1063', 'Allowance For Doubtfull Trade Accounts Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1064', 'Trade Accounts Receivable Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1065', 'Allowance For Doubtfull Trade Accounts Receivable Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1066', 'Taxes Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1067', 'Intrest Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1068', 'Holdbacks Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1069', 'Leases Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1070', 'Allowance For Doubtfull Leases Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1071', 'Accounts Receivable Employees');
-INSERT INTO gifi (accno,description) VALUES ('1072', 'Allowance For Doubtfull Accounts Receivable Employees');
-INSERT INTO gifi (accno,description) VALUES ('1073', 'Accounts Receivable From Members Of NPO');
-INSERT INTO gifi (accno,description) VALUES ('1120', 'Inventories');
-INSERT INTO gifi (accno,description) VALUES ('1121', 'Inventory Of Goods For Sale/Finished Goods');
-INSERT INTO gifi (accno,description) VALUES ('1122', 'Inventory Of Parts And Supplies');
-INSERT INTO gifi (accno,description) VALUES ('1123', 'Inventory Properties');
-INSERT INTO gifi (accno,description) VALUES ('1124', 'Inventory of Aggregates');
-INSERT INTO gifi (accno,description) VALUES ('1125', 'Work In Progress');
-INSERT INTO gifi (accno,description) VALUES ('1126', 'Raw Materials');
-INSERT INTO gifi (accno,description) VALUES ('1127', 'Inventory of Securities');
-INSERT INTO gifi (accno,description) VALUES ('1180', 'Short Term Investments');
-INSERT INTO gifi (accno,description) VALUES ('1181', 'Canadian Term Deposits');
-INSERT INTO gifi (accno,description) VALUES ('1182', 'Canadian Shares');
-INSERT INTO gifi (accno,description) VALUES ('1183', 'Canadian Bonds');
-INSERT INTO gifi (accno,description) VALUES ('1184', 'Canadian Treasury Bills');
-INSERT INTO gifi (accno,description) VALUES ('1185', 'Securities Purchased Under Resale Agreement');
-INSERT INTO gifi (accno,description) VALUES ('1186', 'Other Short Term Canadian Investments');
-INSERT INTO gifi (accno,description) VALUES ('1187', 'Short Term Foreign Investments');
-INSERT INTO gifi (accno,description) VALUES ('1240', 'Loans & Notes Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1241', 'Demand Loans Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1242', 'Other Loans Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1243', 'Notes Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1244', 'Mortgages Receivable');
-INSERT INTO gifi (accno,description) VALUES ('1300', 'Due From Shareholder(s)/Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('1301', 'Due From Individual Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('1302', 'Due From Corporate Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('1303', 'Due From Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('1360', 'Investment In Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('1380', 'Due From Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('1400', 'Due From/Investment In Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1401', 'Demand Notes From Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1402', 'Interest Receivable From Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1403', 'Loans/Advances Due From Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('1460', 'Customer\'s Liability under Acceptances');
-INSERT INTO gifi (accno,description) VALUES ('1480', 'Other Current Assets');
-INSERT INTO gifi (accno,description) VALUES ('1481', 'Deferred Income Taxes');
-INSERT INTO gifi (accno,description) VALUES ('1482', 'Accrued Investment Income');
-INSERT INTO gifi (accno,description) VALUES ('1483', 'Taxes Recoverable/Refundable');
-INSERT INTO gifi (accno,description) VALUES ('1484', 'Prepaid Expenses');
-INSERT INTO gifi (accno,description) VALUES ('1485', 'Drilling Advances');
-INSERT INTO gifi (accno,description) VALUES ('1486', 'Security Deposits');
-INSERT INTO gifi (accno,description) VALUES ('1599', 'Total Current Assets');
-INSERT INTO gifi (accno,description) VALUES ('1600', 'Land');
-INSERT INTO gifi (accno,description) VALUES ('1601', 'Land Improvement');
-INSERT INTO gifi (accno,description) VALUES ('1602', 'Accumulated Amortization Of Land & Land Improvement');
-INSERT INTO gifi (accno,description) VALUES ('1620', 'Depletable Assets');
-INSERT INTO gifi (accno,description) VALUES ('1621', 'Accumulated Amortization Of Depletable Assets');
-INSERT INTO gifi (accno,description) VALUES ('1622', 'Petroleum & Natural Gas Properties');
-INSERT INTO gifi (accno,description) VALUES ('1623', 'Accumulated Amortization Of Petroleum & Natural Gas Properties');
-INSERT INTO gifi (accno,description) VALUES ('1624', 'Mining Properties');
-INSERT INTO gifi (accno,description) VALUES ('1625', 'Accumulated Amortization Of Mining Properties');
-INSERT INTO gifi (accno,description) VALUES ('1626', 'Deferred Exporation & Development charges');
-INSERT INTO gifi (accno,description) VALUES ('1627', 'Accumulated Amortization Of Petroleum & Deferred Exporation & Development charges');
-INSERT INTO gifi (accno,description) VALUES ('1628', 'Quarries');
-INSERT INTO gifi (accno,description) VALUES ('1629', 'Accumulated Amortization Of Quarries');
-INSERT INTO gifi (accno,description) VALUES ('1630', 'Gravel Pits');
-INSERT INTO gifi (accno,description) VALUES ('1631', 'Accumulated Amortization Of Gravel Pits');
-INSERT INTO gifi (accno,description) VALUES ('1632', 'Timber Limits');
-INSERT INTO gifi (accno,description) VALUES ('1633', 'Accumulated Amortization Of Timber Limits');
-INSERT INTO gifi (accno,description) VALUES ('1680', 'Buildings');
-INSERT INTO gifi (accno,description) VALUES ('1681', 'Accumulated Amortization Of Buildings');
-INSERT INTO gifi (accno,description) VALUES ('1682', 'Manufacturing And Processing Plant');
-INSERT INTO gifi (accno,description) VALUES ('1683', 'Accumulated Amortization Of Manufacturing and Processing Plant');
-INSERT INTO gifi (accno,description) VALUES ('1684', 'Buildings Under Construction');
-INSERT INTO gifi (accno,description) VALUES ('1740', 'Machinery, Equipment, furniture & fixtures');
-INSERT INTO gifi (accno,description) VALUES ('1741', 'Accumulated Amortization Of Machinery, Equipment, furniture & fixtures');
-INSERT INTO gifi (accno,description) VALUES ('1742', 'Motor Vehicles');
-INSERT INTO gifi (accno,description) VALUES ('1743', 'Accumulated Amortization Of Motor Vehicles');
-INSERT INTO gifi (accno,description) VALUES ('1744', 'Tools and Dies');
-INSERT INTO gifi (accno,description) VALUES ('1745', 'Accumulated Amortization Of Tools and Dies');
-INSERT INTO gifi (accno,description) VALUES ('1746', 'Construction & Excavating Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1747', 'Accumulated Amortization Of Construction & Excavating Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1748', 'Forestry & Logging Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1749', 'Accumulated Amortization Of Forestry & Logging Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1750', 'Fishing Gear & Nets');
-INSERT INTO gifi (accno,description) VALUES ('1751', 'Accumulated Amortization Of Fishing Gear & Nets');
-INSERT INTO gifi (accno,description) VALUES ('1752', 'Mining Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1753', 'Accumulated Amortization Of Mining Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1754', 'Oil & Gas Systems');
-INSERT INTO gifi (accno,description) VALUES ('1755', 'Accumulated Amortization Of Oil & Gas Systems');
-INSERT INTO gifi (accno,description) VALUES ('1756', 'Production Equipment for resource industries');
-INSERT INTO gifi (accno,description) VALUES ('1757', 'Accumulated Amortization Of Production Equipment for resource industries');
-INSERT INTO gifi (accno,description) VALUES ('1758', 'Production Equipment for other industries');
-INSERT INTO gifi (accno,description) VALUES ('1759', 'Accumulated Amortization Of Production Equipment for other industries');
-INSERT INTO gifi (accno,description) VALUES ('1760', 'Exploration Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1761', 'Accumulated Amortization Of Exploration Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1762', 'Shipping Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1763', 'Accumulated Amortization Of Shipping Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1764', 'Ships & Boats');
-INSERT INTO gifi (accno,description) VALUES ('1765', 'Accumulated Amortization Of Ships & Boats');
-INSERT INTO gifi (accno,description) VALUES ('1766', 'Aircraft');
-INSERT INTO gifi (accno,description) VALUES ('1767', 'Accumulated Amortization Of Aircraft');
-INSERT INTO gifi (accno,description) VALUES ('1768', 'Signs');
-INSERT INTO gifi (accno,description) VALUES ('1769', 'Accumulated Amortization Of Signs');
-INSERT INTO gifi (accno,description) VALUES ('1770', 'Small Tools');
-INSERT INTO gifi (accno,description) VALUES ('1771', 'Accumulated Amortization Of Small Tools');
-INSERT INTO gifi (accno,description) VALUES ('1772', 'Radio & Communication Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1773', 'Accumulated Amortization Of Radio & Communication Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1774', 'Computer Equipment/Software');
-INSERT INTO gifi (accno,description) VALUES ('1775', 'Accumulated Amortization Of Computer Equipment/software');
-INSERT INTO gifi (accno,description) VALUES ('1776', 'Musical Instruments');
-INSERT INTO gifi (accno,description) VALUES ('1777', 'Accumulated Amortization Of Musical Instruments');
-INSERT INTO gifi (accno,description) VALUES ('1778', 'Satellites');
-INSERT INTO gifi (accno,description) VALUES ('1779', 'Accumulated Amortization Of Satellites');
-INSERT INTO gifi (accno,description) VALUES ('1780', 'Earth Stations');
-INSERT INTO gifi (accno,description) VALUES ('1781', 'Accumulated Amortization Of Earth Stations');
-INSERT INTO gifi (accno,description) VALUES ('1782', 'Machinery & Equipment Under Construction');
-INSERT INTO gifi (accno,description) VALUES ('1783', 'Transportation Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1784', 'Accumulated Amortization Of Transportation Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1785', 'Other Machinery & Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1786', 'Accumulated Amortization Of Other Machinery & Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1787', 'Furniture & Fixtures');
-INSERT INTO gifi (accno,description) VALUES ('1788', 'Accumulated Amortization Of Furniture & Fixtures');
-INSERT INTO gifi (accno,description) VALUES ('1900', 'Other Tangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('1901', 'Accumulated Amortization Of Other Tangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('1902', 'Logging Roads');
-INSERT INTO gifi (accno,description) VALUES ('1903', 'Accumulated Amortization Of Logging Roads');
-INSERT INTO gifi (accno,description) VALUES ('1904', 'Asphalt & Parking Areas');
-INSERT INTO gifi (accno,description) VALUES ('1905', 'Accumulated Amortization Of Asphalt & Parking Areas');
-INSERT INTO gifi (accno,description) VALUES ('1906', 'Wharves, Docks & Marinas');
-INSERT INTO gifi (accno,description) VALUES ('1907', 'Accumulated Amortization Of Wharves, Docks & Marinas');
-INSERT INTO gifi (accno,description) VALUES ('1908', 'Fences');
-INSERT INTO gifi (accno,description) VALUES ('1909', 'Accumulated Amortization Of Fences');
-INSERT INTO gifi (accno,description) VALUES ('1910', 'Capital Leases - Buildings');
-INSERT INTO gifi (accno,description) VALUES ('1911', 'Accumulated Amortization Of Capital Leases - Buildings');
-INSERT INTO gifi (accno,description) VALUES ('1912', 'Capital Leases - Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1913', 'Accumulated Amortization Of Capital Leases - Equipment');
-INSERT INTO gifi (accno,description) VALUES ('1914', 'Capital Leases - Vehicles');
-INSERT INTO gifi (accno,description) VALUES ('1915', 'Accumulated Amortization Of Capital Leases - Vehicles');
-INSERT INTO gifi (accno,description) VALUES ('1916', 'Capital Leases - Other');
-INSERT INTO gifi (accno,description) VALUES ('1917', 'Accumulated Amortization Of Capital Leases - Other');
-INSERT INTO gifi (accno,description) VALUES ('1918', 'Leasehold Improvements');
-INSERT INTO gifi (accno,description) VALUES ('1919', 'Accumulated Amortization Of Leasehold Improvements');
-INSERT INTO gifi (accno,description) VALUES ('1920', 'Other Capital Assets Under Construction');
-INSERT INTO gifi (accno,description) VALUES ('1921', 'Campsites');
-INSERT INTO gifi (accno,description) VALUES ('1922', 'Accumulated Amortization Of Campsites');
-INSERT INTO gifi (accno,description) VALUES ('2008', 'Total Tangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('2009', 'Total Accumulated Amortization Of Tangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('2010', 'Intangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('2011', 'Accumulated Amortization Of Intangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('2012', 'Goodwill');
-INSERT INTO gifi (accno,description) VALUES ('2013', 'Accumulated Amortization Of Goodwill');
-INSERT INTO gifi (accno,description) VALUES ('2014', 'Quota');
-INSERT INTO gifi (accno,description) VALUES ('2015', 'Accumulated Amortization Of Quota');
-INSERT INTO gifi (accno,description) VALUES ('2016', 'Licences');
-INSERT INTO gifi (accno,description) VALUES ('2017', 'Accumulated Amortization Of Licences');
-INSERT INTO gifi (accno,description) VALUES ('2018', 'Incorporation Costs');
-INSERT INTO gifi (accno,description) VALUES ('2019', 'Accumulated Amortization Of Incorporation Costs');
-INSERT INTO gifi (accno,description) VALUES ('2020', 'Trademarks & Patents');
-INSERT INTO gifi (accno,description) VALUES ('2021', 'Accumulated Amortization Of Trademarks & Patents');
-INSERT INTO gifi (accno,description) VALUES ('2022', 'Customer Lists');
-INSERT INTO gifi (accno,description) VALUES ('2023', 'Accumulated Amortization Of Customer Lists');
-INSERT INTO gifi (accno,description) VALUES ('2024', 'Rights');
-INSERT INTO gifi (accno,description) VALUES ('2025', 'Accumulated Amortization Of Rights');
-INSERT INTO gifi (accno,description) VALUES ('2026', 'Research & Development');
-INSERT INTO gifi (accno,description) VALUES ('2027', 'Accumulated Amortization Of Research & Development');
-INSERT INTO gifi (accno,description) VALUES ('2070', 'Resource Rights');
-INSERT INTO gifi (accno,description) VALUES ('2071', 'Accumulated Amortization Of Resource Rights');
-INSERT INTO gifi (accno,description) VALUES ('2072', 'Timber Rights');
-INSERT INTO gifi (accno,description) VALUES ('2073', 'Accumulated Amortization Of Timber Rights');
-INSERT INTO gifi (accno,description) VALUES ('2074', 'Mining Rights');
-INSERT INTO gifi (accno,description) VALUES ('2075', 'Accumulated Amortization Of Mining Rights');
-INSERT INTO gifi (accno,description) VALUES ('2076', 'Oil & Gas Rights');
-INSERT INTO gifi (accno,description) VALUES ('2077', 'Accumulated Amortization Of Oil & Gas Rights');
-INSERT INTO gifi (accno,description) VALUES ('2178', 'Total Intangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('2179', 'Total Accumulated Amortization Of Intangible Capital Assets');
-INSERT INTO gifi (accno,description) VALUES ('2180', 'Due From Shareholder(s)/Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('2181', 'Due From Individual Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('2182', 'Due From Corporate Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('2183', 'Due From Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('2190', 'Due from Members');
-INSERT INTO gifi (accno,description) VALUES ('2200', 'Investment In Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('2220', 'Due From Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('2240', 'Due From/Investment In Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2241', 'Due From/Investment In Canadian Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2242', 'Shares In Canadian Related Corporations');
-INSERT INTO gifi (accno,description) VALUES ('2243', 'Loans/Advances To Canadian Related Corporations');
-INSERT INTO gifi (accno,description) VALUES ('2244', 'Investment In Canadian Related Corporations At Cost');
-INSERT INTO gifi (accno,description) VALUES ('2245', 'Investment In Canadian Related Corporations At Equity');
-INSERT INTO gifi (accno,description) VALUES ('2246', 'Due From/Investment In Foreign Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2247', 'Shares In Foreign Related Corporations');
-INSERT INTO gifi (accno,description) VALUES ('2248', 'Loans/Advances To Foreign Related Corporations');
-INSERT INTO gifi (accno,description) VALUES ('2249', 'Investment In Foreign Related Corporations At Cost');
-INSERT INTO gifi (accno,description) VALUES ('2250', 'Investment In Foreign Related Corporations At Equity');
-INSERT INTO gifi (accno,description) VALUES ('2280', 'Investment In Co-Tenancy');
-INSERT INTO gifi (accno,description) VALUES ('2300', 'Long Term Investments');
-INSERT INTO gifi (accno,description) VALUES ('2301', 'Foreign Shares');
-INSERT INTO gifi (accno,description) VALUES ('2302', 'Other Type Of Foreign Investments');
-INSERT INTO gifi (accno,description) VALUES ('2303', 'Canadian Shares');
-INSERT INTO gifi (accno,description) VALUES ('2304', 'Government Of Canada Debt');
-INSERT INTO gifi (accno,description) VALUES ('2305', 'Canadian Provinvial & Municipal Government Debt');
-INSERT INTO gifi (accno,description) VALUES ('2306', 'Canadian Corporate Bonds & Debentures');
-INSERT INTO gifi (accno,description) VALUES ('2307', 'Debt Securities');
-INSERT INTO gifi (accno,description) VALUES ('2308', 'Equity Securities');
-INSERT INTO gifi (accno,description) VALUES ('2309', 'Securities Purchased Under Resale Agreements');
-INSERT INTO gifi (accno,description) VALUES ('2310', 'Central Credit Union Shares');
-INSERT INTO gifi (accno,description) VALUES ('2311', 'Other Long Term Canadian Investments');
-INSERT INTO gifi (accno,description) VALUES ('2360', 'Long Term Loans');
-INSERT INTO gifi (accno,description) VALUES ('2361', 'Mortgages');
-INSERT INTO gifi (accno,description) VALUES ('2362', 'Personal & Credit Card Loans');
-INSERT INTO gifi (accno,description) VALUES ('2363', 'Business & Government Loans');
-INSERT INTO gifi (accno,description) VALUES ('2364', 'Line Of Credit');
-INSERT INTO gifi (accno,description) VALUES ('2420', 'Other Long Term Assets');
-INSERT INTO gifi (accno,description) VALUES ('2421', 'Deferred Income Taxes / Tax Reserves');
-INSERT INTO gifi (accno,description) VALUES ('2422', 'Deferred Pension Charges');
-INSERT INTO gifi (accno,description) VALUES ('2423', 'Deferred Unrealized Exchange Losses');
-INSERT INTO gifi (accno,description) VALUES ('2424', 'Other Deferred Items/Charges');
-INSERT INTO gifi (accno,description) VALUES ('2425', 'Accumulated Amortization Of Deferred Charges');
-INSERT INTO gifi (accno,description) VALUES ('2426', 'Reserve Fund');
-INSERT INTO gifi (accno,description) VALUES ('2427', 'Cash Surrender Value Of Life Insurance');
-INSERT INTO gifi (accno,description) VALUES ('2589', 'Total Long Term Assets');
-INSERT INTO gifi (accno,description) VALUES ('2590', 'Assets Held In Trust');
-INSERT INTO gifi (accno,description) VALUES ('2599', 'Total Assets');
-INSERT INTO gifi (accno,description) VALUES ('2600', 'Bank Overdraft');
-INSERT INTO gifi (accno,description) VALUES ('2620', 'Amounts Payable & Accrued Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('2621', 'Accounts Payable Trade');
-INSERT INTO gifi (accno,description) VALUES ('2622', 'Accounts Payable To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2623', 'Holdbacks Payable');
-INSERT INTO gifi (accno,description) VALUES ('2624', 'Wages Payable');
-INSERT INTO gifi (accno,description) VALUES ('2625', 'Management Fees Payable');
-INSERT INTO gifi (accno,description) VALUES ('2626', 'Bonuses Payable');
-INSERT INTO gifi (accno,description) VALUES ('2627', 'Employee Deductions Payable');
-INSERT INTO gifi (accno,description) VALUES ('2628', 'Withholding Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2629', 'Intrest Payable');
-INSERT INTO gifi (accno,description) VALUES ('2680', 'Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2681', 'Capital Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2682', 'Foreign Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2683', 'Federal Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2684', 'Provincial Taxes Payable');
-INSERT INTO gifi (accno,description) VALUES ('2685', 'GST Payable');
-INSERT INTO gifi (accno,description) VALUES ('2686', 'PST Payable');
-INSERT INTO gifi (accno,description) VALUES ('2700', 'Short Term Debt');
-INSERT INTO gifi (accno,description) VALUES ('2701', 'Loans From Canadian Banks');
-INSERT INTO gifi (accno,description) VALUES ('2702', 'Liability For Securities Sold Short');
-INSERT INTO gifi (accno,description) VALUES ('2703', 'Liability For Securities Sold Under Repurchase Agreements');
-INSERT INTO gifi (accno,description) VALUES ('2704', 'Gold & Silver Certificates');
-INSERT INTO gifi (accno,description) VALUES ('2705', 'Cheques & Other Items In Transit');
-INSERT INTO gifi (accno,description) VALUES ('2706', 'Lien Notes');
-INSERT INTO gifi (accno,description) VALUES ('2770', 'Deferred Income');
-INSERT INTO gifi (accno,description) VALUES ('2780', 'Due To Shareholder(s)/Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('2781', 'Due To Individual Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('2782', 'Due To Corporate Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('2783', 'Due To Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('2840', 'Due To Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('2860', 'Due To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2861', 'Demand Notes Due To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2862', 'Interest Payable To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2863', 'Advances Due To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('2920', 'Current Portion Of Long Term Liability');
-INSERT INTO gifi (accno,description) VALUES ('2960', 'Other Current Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('2961', 'Deposits Received');
-INSERT INTO gifi (accno,description) VALUES ('2962', 'Dividends Payable');
-INSERT INTO gifi (accno,description) VALUES ('2963', 'Deferred Income Taxes');
-INSERT INTO gifi (accno,description) VALUES ('2964', 'Reserves For Guarantees, Warranties Or Indemnities');
-INSERT INTO gifi (accno,description) VALUES ('2965', 'General Reserves / Provisions');
-INSERT INTO gifi (accno,description) VALUES ('2966', 'Crew Shares');
-INSERT INTO gifi (accno,description) VALUES ('3139', 'Total Current Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('3140', 'Long Term Debt');
-INSERT INTO gifi (accno,description) VALUES ('3141', 'Mortgages');
-INSERT INTO gifi (accno,description) VALUES ('3142', 'Farm Credit Corporation Loan');
-INSERT INTO gifi (accno,description) VALUES ('3143', 'Chartered Bank Loan');
-INSERT INTO gifi (accno,description) VALUES ('3144', 'Credit Union/Caisse Populaire Loan');
-INSERT INTO gifi (accno,description) VALUES ('3145', 'Provincial Government Loan');
-INSERT INTO gifi (accno,description) VALUES ('3146', 'Supply Company Loan');
-INSERT INTO gifi (accno,description) VALUES ('3147', 'Private Loan');
-INSERT INTO gifi (accno,description) VALUES ('3148', 'Central, Leagues And Federation Loans');
-INSERT INTO gifi (accno,description) VALUES ('3149', 'Line Of Credit');
-INSERT INTO gifi (accno,description) VALUES ('3150', 'Liability For Securities Sold Short');
-INSERT INTO gifi (accno,description) VALUES ('3151', 'Liability For Securities Sold Under Repurchase Agreements');
-INSERT INTO gifi (accno,description) VALUES ('3152', 'Lien Notes');
-INSERT INTO gifi (accno,description) VALUES ('3210', 'Bonds And Debentures');
-INSERT INTO gifi (accno,description) VALUES ('3220', 'Deferred Income');
-INSERT INTO gifi (accno,description) VALUES ('3240', 'Deferred Income Taxes');
-INSERT INTO gifi (accno,description) VALUES ('3260', 'Long Term Due To Shareholder(s)/Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('3261', 'Long Term Due To Individual Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('3262', 'Long Term Due To Corporate Shareholder(s)');
-INSERT INTO gifi (accno,description) VALUES ('3263', 'Long Term Due To Director(s)');
-INSERT INTO gifi (accno,description) VALUES ('3280', 'Long Term Due To Joint Venture(s)/Partnership(s)');
-INSERT INTO gifi (accno,description) VALUES ('3300', 'Long Term Due To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('3301', 'Amounts Owing To Related Canadian Parties');
-INSERT INTO gifi (accno,description) VALUES ('3302', 'Amounts Owing To Related Foreign Parties');
-INSERT INTO gifi (accno,description) VALUES ('3320', 'Other Long Term Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('3321', 'Long Term Obligations/Commitments/Leases');
-INSERT INTO gifi (accno,description) VALUES ('3322', 'Reserves For Guarantees, Warranties Or Indemnities');
-INSERT INTO gifi (accno,description) VALUES ('3323', 'Provision For Site Restoration');
-INSERT INTO gifi (accno,description) VALUES ('3324', 'Contributions To Qualifying Environmental Trust');
-INSERT INTO gifi (accno,description) VALUES ('3325', 'General Provisions / Reserves');
-INSERT INTO gifi (accno,description) VALUES ('3326', 'Preference Shares Restated');
-INSERT INTO gifi (accno,description) VALUES ('3327', 'Member Allocations');
-INSERT INTO gifi (accno,description) VALUES ('3328', 'Deferred Income From Incomplete Contracts');
-INSERT INTO gifi (accno,description) VALUES ('3450', 'Total Long Term Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('3460', 'Subordinated Debt');
-INSERT INTO gifi (accno,description) VALUES ('3470', 'Amounts Held In Trust');
-INSERT INTO gifi (accno,description) VALUES ('3499', 'Total Liabilities');
-INSERT INTO gifi (accno,description) VALUES ('3500', 'Common Shares');
-INSERT INTO gifi (accno,description) VALUES ('3520', 'Preferred Shares');
-INSERT INTO gifi (accno,description) VALUES ('3540', 'Contributed & Other Surplus');
-INSERT INTO gifi (accno,description) VALUES ('3541', 'Contributed Surplus');
-INSERT INTO gifi (accno,description) VALUES ('3542', 'Appraisal Surplus');
-INSERT INTO gifi (accno,description) VALUES ('3543', 'General Reserve');
-INSERT INTO gifi (accno,description) VALUES ('3570', 'Head Office Account');
-INSERT INTO gifi (accno,description) VALUES ('3600', 'Retained Earnings/Deficit');
-INSERT INTO gifi (accno,description) VALUES ('3620', 'Total Shareholder Equity');
-INSERT INTO gifi (accno,description) VALUES ('3640', 'Total Liabilities & Shareholder Equity');
-INSERT INTO gifi (accno,description) VALUES ('3660', 'Retained Earnings/Deficit Start');
-INSERT INTO gifi (accno,description) VALUES ('3680', 'Net Income/Loss');
-INSERT INTO gifi (accno,description) VALUES ('3700', 'Dividend Declared');
-INSERT INTO gifi (accno,description) VALUES ('3701', 'Cash Dividend');
-INSERT INTO gifi (accno,description) VALUES ('3702', 'Patronage Dividend');
-INSERT INTO gifi (accno,description) VALUES ('3720', 'Prior Year Adjustments');
-INSERT INTO gifi (accno,description) VALUES ('3740', 'Other Items Affecting Retained Earnings');
-INSERT INTO gifi (accno,description) VALUES ('3741', 'Share Redemptions');
-INSERT INTO gifi (accno,description) VALUES ('3742', 'Special Reserves');
-INSERT INTO gifi (accno,description) VALUES ('3743', 'Currency Adjustments');
-INSERT INTO gifi (accno,description) VALUES ('3744', 'Unusual Revenue Items');
-INSERT INTO gifi (accno,description) VALUES ('3745', 'Interfund Transfers (NPO)');
-INSERT INTO gifi (accno,description) VALUES ('3849', 'Retained Earnings/Deficit End');
-INSERT INTO gifi (accno,description) VALUES ('8000', 'Trade Sales of Goods and Services');
-INSERT INTO gifi (accno,description) VALUES ('8020', 'Sales To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('8030', 'Interdivisional Sales');
-INSERT INTO gifi (accno,description) VALUES ('8040', 'Sales From Resource Properties');
-INSERT INTO gifi (accno,description) VALUES ('8041', 'Petroleum & Natural Gas Sales');
-INSERT INTO gifi (accno,description) VALUES ('8042', 'Petroleum & Natural Gas Sales To Related Parties');
-INSERT INTO gifi (accno,description) VALUES ('8043', 'Gas Marketing');
-INSERT INTO gifi (accno,description) VALUES ('8044', 'Processing Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8045', 'Pipeline Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8046', 'Seismic Sales');
-INSERT INTO gifi (accno,description) VALUES ('8047', 'Mining Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8048', 'Coal Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8049', 'Oil Sands Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8050', 'Royalty Income');
-INSERT INTO gifi (accno,description) VALUES ('8051', 'Oil & Gas Partnership/Joint Venture Income/Loss');
-INSERT INTO gifi (accno,description) VALUES ('8052', 'Mining Partnership/Joint Venture Income/Loss');
-INSERT INTO gifi (accno,description) VALUES ('8053', 'Other Production Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8089', 'Total Sales Of Goods And Services');
-INSERT INTO gifi (accno,description) VALUES ('8090', 'Investment Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8091', 'Interest From Foreign Sources');
-INSERT INTO gifi (accno,description) VALUES ('8092', 'Interest From Canadian Bonds And Debentures');
-INSERT INTO gifi (accno,description) VALUES ('8093', 'Interest From Canadian Mortgage Loans');
-INSERT INTO gifi (accno,description) VALUES ('8094', 'Interest From Other Canadian Sources');
-INSERT INTO gifi (accno,description) VALUES ('8095', 'Dividend Income');
-INSERT INTO gifi (accno,description) VALUES ('8096', 'Dividend From Canadian Sources');
-INSERT INTO gifi (accno,description) VALUES ('8097', 'Interest From Foreign Sources');
-INSERT INTO gifi (accno,description) VALUES ('8120', 'Commission Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8121', 'Commission Income On Real Estate Transactions');
-INSERT INTO gifi (accno,description) VALUES ('8140', 'Rental Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8141', 'Real Estate Rental Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8150', 'Vehicle Leasing');
-INSERT INTO gifi (accno,description) VALUES ('8160', 'Fishing Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8161', 'Fish Products');
-INSERT INTO gifi (accno,description) VALUES ('8162', 'Other Marine Products');
-INSERT INTO gifi (accno,description) VALUES ('8163', 'Fishing Grants, Credits & Rebates');
-INSERT INTO gifi (accno,description) VALUES ('8164', 'Fishing Subsidies');
-INSERT INTO gifi (accno,description) VALUES ('8165', 'Compensation For Loss Of Fishing Income/Property');
-INSERT INTO gifi (accno,description) VALUES ('8166', 'Sharesman Income');
-INSERT INTO gifi (accno,description) VALUES ('8210', 'Realized Gains/Losses On Disposal Of Assets');
-INSERT INTO gifi (accno,description) VALUES ('8211', 'Realized Gains/Losses On Sale Of Investments');
-INSERT INTO gifi (accno,description) VALUES ('8212', 'Realized Gains/Losses On Sale Of Resource Properties');
-INSERT INTO gifi (accno,description) VALUES ('8220', 'NPO Amounts Received');
-INSERT INTO gifi (accno,description) VALUES ('8221', 'Membership Fees');
-INSERT INTO gifi (accno,description) VALUES ('8222', 'Assessments');
-INSERT INTO gifi (accno,description) VALUES ('8223', 'Gifts');
-INSERT INTO gifi (accno,description) VALUES ('8224', 'Gross Sales And Revenues From Organizational Activities');
-INSERT INTO gifi (accno,description) VALUES ('8230', 'Other Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8231', 'Foreign Exchange Gains/Losses');
-INSERT INTO gifi (accno,description) VALUES ('8232', 'Income/Loss Of Subsidiaries/Affiliates');
-INSERT INTO gifi (accno,description) VALUES ('8233', 'Income/Loss Of Other Divisions');
-INSERT INTO gifi (accno,description) VALUES ('8234', 'Income/Loss Of Joint Ventures');
-INSERT INTO gifi (accno,description) VALUES ('8235', 'Income/Loss Of Partnerships');
-INSERT INTO gifi (accno,description) VALUES ('8236', 'RealizaTion Of Deferred Revenues');
-INSERT INTO gifi (accno,description) VALUES ('8237', 'Royalty Income Other Than Resource');
-INSERT INTO gifi (accno,description) VALUES ('8238', 'Alberta Royalty Tax Credits');
-INSERT INTO gifi (accno,description) VALUES ('8239', 'Management & Administration Fees');
-INSERT INTO gifi (accno,description) VALUES ('8240', 'Telecommunications Revenues');
-INSERT INTO gifi (accno,description) VALUES ('8241', 'Consulting Fees');
-INSERT INTO gifi (accno,description) VALUES ('8242', 'Subsidies & Grants');
-INSERT INTO gifi (accno,description) VALUES ('8243', 'Sale Of By-Products');
-INSERT INTO gifi (accno,description) VALUES ('8244', 'Deposit Services');
-INSERT INTO gifi (accno,description) VALUES ('8245', 'Credit Services');
-INSERT INTO gifi (accno,description) VALUES ('8246', 'Card Services');
-INSERT INTO gifi (accno,description) VALUES ('8247', 'Patronage Dividends');
-INSERT INTO gifi (accno,description) VALUES ('8248', 'Insurance Recoveries');
-INSERT INTO gifi (accno,description) VALUES ('8249', 'Expense Recoveries');
-INSERT INTO gifi (accno,description) VALUES ('8250', 'Bad Debt Recoveries');
-INSERT INTO gifi (accno,description) VALUES ('8299', 'Total Revenue');
-INSERT INTO gifi (accno,description) VALUES ('8300', 'Opening Inventory');
-INSERT INTO gifi (accno,description) VALUES ('8301', 'Opening Inventory - finished goods');
-INSERT INTO gifi (accno,description) VALUES ('8302', 'Opening Inventory - raw materials');
-INSERT INTO gifi (accno,description) VALUES ('8303', 'Opening Inventory - goods in process');
-INSERT INTO gifi (accno,description) VALUES ('8304', 'Opening Inventory - work in process');
-INSERT INTO gifi (accno,description) VALUES ('8320', 'Purchases / Cost of Materials');
-INSERT INTO gifi (accno,description) VALUES ('8321', 'Purchases Product A');
-INSERT INTO gifi (accno,description) VALUES ('8322', 'Purchases Product B');
-INSERT INTO gifi (accno,description) VALUES ('8331', 'Price Differences & Discounts On Purchases');
-INSERT INTO gifi (accno,description) VALUES ('8340', 'Direct Wages');
-INSERT INTO gifi (accno,description) VALUES ('8350', 'Benefits On Direct Wages');
-INSERT INTO gifi (accno,description) VALUES ('8360', 'Trades & Sub-contracts');
-INSERT INTO gifi (accno,description) VALUES ('8370', 'Production Costs Other Than Resource');
-INSERT INTO gifi (accno,description) VALUES ('8400', 'Resource Production Costs');
-INSERT INTO gifi (accno,description) VALUES ('8401', 'Pipeline Operations');
-INSERT INTO gifi (accno,description) VALUES ('8402', 'Drilling');
-INSERT INTO gifi (accno,description) VALUES ('8403', 'Site Restoration Costs');
-INSERT INTO gifi (accno,description) VALUES ('8404', 'Gross Overriding Royalty');
-INSERT INTO gifi (accno,description) VALUES ('8405', 'Freehold Royalties');
-INSERT INTO gifi (accno,description) VALUES ('8406', 'Other Producing Properties Rental');
-INSERT INTO gifi (accno,description) VALUES ('8407', 'Prospect & Geological');
-INSERT INTO gifi (accno,description) VALUES ('8408', 'Well Operating, Fuel & Equipment');
-INSERT INTO gifi (accno,description) VALUES ('8409', 'Well Abandonment & Dry Holes');
-INSERT INTO gifi (accno,description) VALUES ('8410', 'Other Lease Rentals');
-INSERT INTO gifi (accno,description) VALUES ('8411', 'Exploration Expenses, Aerial Surveys');
-INSERT INTO gifi (accno,description) VALUES ('8412', 'Development Expenses, stripping costs');
-INSERT INTO gifi (accno,description) VALUES ('8435', 'Crown Charges');
-INSERT INTO gifi (accno,description) VALUES ('8436', 'Crown royalties');
-INSERT INTO gifi (accno,description) VALUES ('8437', 'Crown lease rentals');
-INSERT INTO gifi (accno,description) VALUES ('8438', 'Freehold mineral tax');
-INSERT INTO gifi (accno,description) VALUES ('8439', 'Mining taxes');
-INSERT INTO gifi (accno,description) VALUES ('8440', 'Oil and Sand leases');
-INSERT INTO gifi (accno,description) VALUES ('8441', 'Saskatchewan resource surcharge');
-INSERT INTO gifi (accno,description) VALUES ('8450', 'Other Direct Costs');
-INSERT INTO gifi (accno,description) VALUES ('8451', 'Equipment Hire & Operation');
-INSERT INTO gifi (accno,description) VALUES ('8452', 'Log Yard');
-INSERT INTO gifi (accno,description) VALUES ('8453', 'Forestry costs');
-INSERT INTO gifi (accno,description) VALUES ('8454', 'Logging Road costs');
-INSERT INTO gifi (accno,description) VALUES ('8455', 'Stumpage costs');
-INSERT INTO gifi (accno,description) VALUES ('8456', 'Royalty costs');
-INSERT INTO gifi (accno,description) VALUES ('8457', 'Freight In & Customs Duty');
-INSERT INTO gifi (accno,description) VALUES ('8458', 'Inventory Write Down');
-INSERT INTO gifi (accno,description) VALUES ('8459', 'Direct cost amortization of tangible assets');
-INSERT INTO gifi (accno,description) VALUES ('8460', 'Direct cost amortization of natural resource assets');
-INSERT INTO gifi (accno,description) VALUES ('8461', 'Overhead expenses allocated to cost of sales');
-INSERT INTO gifi (accno,description) VALUES ('8500', 'Closing Inventory');
-INSERT INTO gifi (accno,description) VALUES ('8501', 'Closing Inventory - Finished Goods');
-INSERT INTO gifi (accno,description) VALUES ('8502', 'Closing Inventory - Raw Materials');
-INSERT INTO gifi (accno,description) VALUES ('8503', 'Closing Inventory - Goods In Process');
-INSERT INTO gifi (accno,description) VALUES ('8504', 'Closing Inventory - Work In Process');
-INSERT INTO gifi (accno,description) VALUES ('8518', 'Cost Of Sales');
-INSERT INTO gifi (accno,description) VALUES ('8519', 'Gross Profit/Loss');
-INSERT INTO gifi (accno,description) VALUES ('8520', 'Advertising & Promotion');
-INSERT INTO gifi (accno,description) VALUES ('8521', 'Advertising');
-INSERT INTO gifi (accno,description) VALUES ('8522', 'Donations');
-INSERT INTO gifi (accno,description) VALUES ('8523', 'Meals & Entertainment');
-INSERT INTO gifi (accno,description) VALUES ('8524', 'Promotion');
-INSERT INTO gifi (accno,description) VALUES ('8570', 'Amortization Of Intangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('8590', 'Bad Debt Expense');
-INSERT INTO gifi (accno,description) VALUES ('8610', 'Loan Losses');
-INSERT INTO gifi (accno,description) VALUES ('8611', 'Provision for Loan Losses');
-INSERT INTO gifi (accno,description) VALUES ('8620', 'Employee Benefits');
-INSERT INTO gifi (accno,description) VALUES ('8621', 'Group Insurance Benefits');
-INSERT INTO gifi (accno,description) VALUES ('8622', 'Employers Portion Of Employee Benefits');
-INSERT INTO gifi (accno,description) VALUES ('8623', 'Contributions To Deferred Income Plans');
-INSERT INTO gifi (accno,description) VALUES ('8650', 'Amortization Of Natural Resource Assets');
-INSERT INTO gifi (accno,description) VALUES ('8670', 'Amortization Of Tangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('8690', 'Insurance');
-INSERT INTO gifi (accno,description) VALUES ('8691', 'Life Insurance On Executives');
-INSERT INTO gifi (accno,description) VALUES ('8710', 'Interest & Bank Charges');
-INSERT INTO gifi (accno,description) VALUES ('8711', 'Interest On Short Term Debt');
-INSERT INTO gifi (accno,description) VALUES ('8712', 'Interest On Bonds And Debentures');
-INSERT INTO gifi (accno,description) VALUES ('8713', 'Interest On Mortgages');
-INSERT INTO gifi (accno,description) VALUES ('8714', 'Interest On Long Term Debt');
-INSERT INTO gifi (accno,description) VALUES ('8715', 'Bank Charges');
-INSERT INTO gifi (accno,description) VALUES ('8716', 'Credit Card Charges');
-INSERT INTO gifi (accno,description) VALUES ('8717', 'Collection & Credit costs');
-INSERT INTO gifi (accno,description) VALUES ('8760', 'Business Taxes, Licences & Memberships');
-INSERT INTO gifi (accno,description) VALUES ('8761', 'Memberships');
-INSERT INTO gifi (accno,description) VALUES ('8762', 'Business Taxes');
-INSERT INTO gifi (accno,description) VALUES ('8763', 'Franchise Fees');
-INSERT INTO gifi (accno,description) VALUES ('8764', 'Government Fees');
-INSERT INTO gifi (accno,description) VALUES ('8780', 'New Brunswick Tax On Large Corporations');
-INSERT INTO gifi (accno,description) VALUES ('8790', 'Nova Scotia Tax On Large Corporations');
-INSERT INTO gifi (accno,description) VALUES ('8810', 'Office Expenses');
-INSERT INTO gifi (accno,description) VALUES ('8811', 'Office Stationary And Supplies');
-INSERT INTO gifi (accno,description) VALUES ('8812', 'Office Utilities');
-INSERT INTO gifi (accno,description) VALUES ('8813', 'Data Processing');
-INSERT INTO gifi (accno,description) VALUES ('8860', 'Professional Fees');
-INSERT INTO gifi (accno,description) VALUES ('8861', 'Legal Fees');
-INSERT INTO gifi (accno,description) VALUES ('8862', 'Accounting Fees');
-INSERT INTO gifi (accno,description) VALUES ('8863', 'Consulting Fees');
-INSERT INTO gifi (accno,description) VALUES ('8864', 'Architect Fees');
-INSERT INTO gifi (accno,description) VALUES ('8865', 'Appraisal Fees');
-INSERT INTO gifi (accno,description) VALUES ('8866', 'Laboratory Fees');
-INSERT INTO gifi (accno,description) VALUES ('8867', 'Medical Fees');
-INSERT INTO gifi (accno,description) VALUES ('8868', 'Veterinary Fees');
-INSERT INTO gifi (accno,description) VALUES ('8869', 'Brokerage Fees');
-INSERT INTO gifi (accno,description) VALUES ('8870', 'Transfer Fees');
-INSERT INTO gifi (accno,description) VALUES ('8871', 'Management & Administration Fees');
-INSERT INTO gifi (accno,description) VALUES ('8872', 'Refining & Assay');
-INSERT INTO gifi (accno,description) VALUES ('8873', 'Registrar & Transfer Agent Fees');
-INSERT INTO gifi (accno,description) VALUES ('8874', 'Restructuring Costs');
-INSERT INTO gifi (accno,description) VALUES ('8875', 'Security & Exchange Commission Fees');
-INSERT INTO gifi (accno,description) VALUES ('8876', 'Training Expense');
-INSERT INTO gifi (accno,description) VALUES ('8877', 'Studio & Recording');
-INSERT INTO gifi (accno,description) VALUES ('8910', 'Rental');
-INSERT INTO gifi (accno,description) VALUES ('8911', 'Real Estate Rental');
-INSERT INTO gifi (accno,description) VALUES ('8912', 'Occupancy Costs');
-INSERT INTO gifi (accno,description) VALUES ('8913', 'Condominium Fees');
-INSERT INTO gifi (accno,description) VALUES ('8914', 'Equipment Rental');
-INSERT INTO gifi (accno,description) VALUES ('8915', 'Motor Vehicle Rental');
-INSERT INTO gifi (accno,description) VALUES ('8916', 'Moorage (Boat)');
-INSERT INTO gifi (accno,description) VALUES ('8917', 'Storage');
-INSERT INTO gifi (accno,description) VALUES ('8918', 'Quota Rental');
-INSERT INTO gifi (accno,description) VALUES ('8960', 'Repairs & Maintenance - Aircraft');
-INSERT INTO gifi (accno,description) VALUES ('8961', 'Repairs & Maintenance - Buildings');
-INSERT INTO gifi (accno,description) VALUES ('8962', 'Repairs & Maintenance - Vehicles');
-INSERT INTO gifi (accno,description) VALUES ('8963', 'Repairs & Maintenance - Boats');
-INSERT INTO gifi (accno,description) VALUES ('8964', 'Repairs & Maintenance - Machinery & Equipment');
-INSERT INTO gifi (accno,description) VALUES ('9010', 'Other Repairs & Maintenance - Janitor & Yard');
-INSERT INTO gifi (accno,description) VALUES ('9011', 'Machine Shop Expense');
-INSERT INTO gifi (accno,description) VALUES ('9012', 'Road Costs');
-INSERT INTO gifi (accno,description) VALUES ('9013', 'Security');
-INSERT INTO gifi (accno,description) VALUES ('9014', 'Garbage Removal');
-INSERT INTO gifi (accno,description) VALUES ('9060', 'Salaries & Wages');
-INSERT INTO gifi (accno,description) VALUES ('9061', 'Commissions');
-INSERT INTO gifi (accno,description) VALUES ('9062', 'Crew Share');
-INSERT INTO gifi (accno,description) VALUES ('9063', 'Bonuses');
-INSERT INTO gifi (accno,description) VALUES ('9064', 'Director\'s Fees');
-INSERT INTO gifi (accno,description) VALUES ('9065', 'Management Salaries');
-INSERT INTO gifi (accno,description) VALUES ('9066', 'Employee Salaries');
-INSERT INTO gifi (accno,description) VALUES ('9110', 'Sub-Contracts');
-INSERT INTO gifi (accno,description) VALUES ('9130', 'Supplies');
-INSERT INTO gifi (accno,description) VALUES ('9131', 'Small Tools');
-INSERT INTO gifi (accno,description) VALUES ('9132', 'Shop Expense');
-INSERT INTO gifi (accno,description) VALUES ('9133', 'Uniforms');
-INSERT INTO gifi (accno,description) VALUES ('9134', 'Laundry');
-INSERT INTO gifi (accno,description) VALUES ('9135', 'Food & Catering');
-INSERT INTO gifi (accno,description) VALUES ('9136', 'Fishing Gear');
-INSERT INTO gifi (accno,description) VALUES ('9137', 'Nets & Traps');
-INSERT INTO gifi (accno,description) VALUES ('9138', 'Salt, Bait & Ice');
-INSERT INTO gifi (accno,description) VALUES ('9139', 'Camp Supplies');
-INSERT INTO gifi (accno,description) VALUES ('9150', 'Computer Related Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9151', 'Upgrade');
-INSERT INTO gifi (accno,description) VALUES ('9152', 'Internet');
-INSERT INTO gifi (accno,description) VALUES ('9180', 'Property Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9200', 'Travel Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9201', 'Meetings & Conventions');
-INSERT INTO gifi (accno,description) VALUES ('9220', 'Utilities');
-INSERT INTO gifi (accno,description) VALUES ('9221', 'Electricity');
-INSERT INTO gifi (accno,description) VALUES ('9222', 'Water');
-INSERT INTO gifi (accno,description) VALUES ('9223', 'Heat');
-INSERT INTO gifi (accno,description) VALUES ('9224', 'Fuel Costs');
-INSERT INTO gifi (accno,description) VALUES ('9225', 'Telephone & Communications');
-INSERT INTO gifi (accno,description) VALUES ('9270', 'Other Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9271', 'Cash Over/Short');
-INSERT INTO gifi (accno,description) VALUES ('9272', 'Reimbursement Of Parent Company Expense');
-INSERT INTO gifi (accno,description) VALUES ('9273', 'Selling Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9274', 'Shipping & Warehouse Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9275', 'Delivery, Freight & Express');
-INSERT INTO gifi (accno,description) VALUES ('9276', 'Warranty Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9277', 'Royalty Expenses - Resident');
-INSERT INTO gifi (accno,description) VALUES ('9278', 'Royalty Expenses - Non-Resident');
-INSERT INTO gifi (accno,description) VALUES ('9279', 'Dumping Charges');
-INSERT INTO gifi (accno,description) VALUES ('9280', 'Land Fill Fees');
-INSERT INTO gifi (accno,description) VALUES ('9281', 'Vehicle Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9282', 'Research & Development');
-INSERT INTO gifi (accno,description) VALUES ('9283', 'Withholding Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9284', 'General & Administrative Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9285', 'Interdivisional Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9286', 'Interfund Transfer (NPO)');
-INSERT INTO gifi (accno,description) VALUES ('9367', 'Total Operating Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9368', 'Total Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9369', 'Net Non-Farming Income');
-INSERT INTO gifi (accno,description) VALUES ('9370', 'Grains And Oilseeds');
-INSERT INTO gifi (accno,description) VALUES ('9371', 'Wheat');
-INSERT INTO gifi (accno,description) VALUES ('9372', 'Oats');
-INSERT INTO gifi (accno,description) VALUES ('9373', 'Barley');
-INSERT INTO gifi (accno,description) VALUES ('9374', 'Mixed Grains');
-INSERT INTO gifi (accno,description) VALUES ('9375', 'Corn');
-INSERT INTO gifi (accno,description) VALUES ('9376', 'Canola');
-INSERT INTO gifi (accno,description) VALUES ('9377', 'Flaxseed');
-INSERT INTO gifi (accno,description) VALUES ('9378', 'Soya Beans');
-INSERT INTO gifi (accno,description) VALUES ('9379', 'Wheat Board Payments');
-INSERT INTO gifi (accno,description) VALUES ('9420', 'Other Crop Revenues');
-INSERT INTO gifi (accno,description) VALUES ('9321', 'Fruit');
-INSERT INTO gifi (accno,description) VALUES ('9322', 'Potatoes');
-INSERT INTO gifi (accno,description) VALUES ('9323', 'Vegetables');
-INSERT INTO gifi (accno,description) VALUES ('9324', 'Tobacco');
-INSERT INTO gifi (accno,description) VALUES ('9325', 'Greenhouse & Nursery Products');
-INSERT INTO gifi (accno,description) VALUES ('9326', 'Forage Crops');
-INSERT INTO gifi (accno,description) VALUES ('9470', 'Livestock & Animal Products Revenue');
-INSERT INTO gifi (accno,description) VALUES ('9471', 'Cattle');
-INSERT INTO gifi (accno,description) VALUES ('9472', 'Swine');
-INSERT INTO gifi (accno,description) VALUES ('9473', 'Poultry');
-INSERT INTO gifi (accno,description) VALUES ('9474', 'Sheep & Lambs');
-INSERT INTO gifi (accno,description) VALUES ('9475', 'Pregnant Mare Urine (PMU)');
-INSERT INTO gifi (accno,description) VALUES ('9476', 'Milk & Cream - Excluding Dairy Subsidies');
-INSERT INTO gifi (accno,description) VALUES ('9477', 'Eggs For Consumption');
-INSERT INTO gifi (accno,description) VALUES ('9478', 'Hatching Eggs');
-INSERT INTO gifi (accno,description) VALUES ('9479', 'Aquaculture');
-INSERT INTO gifi (accno,description) VALUES ('9480', 'Horses - Breeding & Meat');
-INSERT INTO gifi (accno,description) VALUES ('9520', 'Other Commodities');
-INSERT INTO gifi (accno,description) VALUES ('9521', 'Maple Products');
-INSERT INTO gifi (accno,description) VALUES ('9522', 'Artificial Insemination (AI)');
-INSERT INTO gifi (accno,description) VALUES ('9523', 'Semen Production');
-INSERT INTO gifi (accno,description) VALUES ('9524', 'Embryo Production');
-INSERT INTO gifi (accno,description) VALUES ('9540', 'Program Payment Revenues');
-INSERT INTO gifi (accno,description) VALUES ('9541', 'Dairy Subsidies');
-INSERT INTO gifi (accno,description) VALUES ('9542', 'Crop Insurance');
-INSERT INTO gifi (accno,description) VALUES ('9543', 'NISA Payments');
-INSERT INTO gifi (accno,description) VALUES ('9544', 'Disaster Assistance Program Payments');
-INSERT INTO gifi (accno,description) VALUES ('9570', 'Rebates');
-INSERT INTO gifi (accno,description) VALUES ('9571', 'Rebates - Fuel');
-INSERT INTO gifi (accno,description) VALUES ('9572', 'Rebates - Interest');
-INSERT INTO gifi (accno,description) VALUES ('9573', 'Rebates - Property Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9574', 'Resales, Rebates, GST For NISA Eligible Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9575', 'Rebates, GST For NISA Non-Eligible Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9600', 'Other Farm Revenues/Losses');
-INSERT INTO gifi (accno,description) VALUES ('9601', 'Custom Or Contract Work');
-INSERT INTO gifi (accno,description) VALUES ('9602', 'Wood Sales');
-INSERT INTO gifi (accno,description) VALUES ('9603', 'Horse Racing');
-INSERT INTO gifi (accno,description) VALUES ('9604', 'Insurance Proceeds');
-INSERT INTO gifi (accno,description) VALUES ('9605', 'Patronage Dividends');
-INSERT INTO gifi (accno,description) VALUES ('9606', 'Rental Income');
-INSERT INTO gifi (accno,description) VALUES ('9607', 'Interest Income');
-INSERT INTO gifi (accno,description) VALUES ('9608', 'Dividend Income');
-INSERT INTO gifi (accno,description) VALUES ('9609', 'Gains/Losses On Disposal Of Assets');
-INSERT INTO gifi (accno,description) VALUES ('9610', 'Gravel');
-INSERT INTO gifi (accno,description) VALUES ('9611', 'Trucking');
-INSERT INTO gifi (accno,description) VALUES ('9612', 'Resale Of Commodities Purchased');
-INSERT INTO gifi (accno,description) VALUES ('9613', 'Leases');
-INSERT INTO gifi (accno,description) VALUES ('9614', 'Machine Rentals');
-INSERT INTO gifi (accno,description) VALUES ('9615', 'Farming Partnership Income/Loss');
-INSERT INTO gifi (accno,description) VALUES ('9616', 'Farming Joint Venture Income/Loss');
-INSERT INTO gifi (accno,description) VALUES ('9650', 'Non-Farming Income');
-INSERT INTO gifi (accno,description) VALUES ('9659', 'Total Farm Revenue');
-INSERT INTO gifi (accno,description) VALUES ('9660', 'Crop Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9661', 'Containers, Twine And Baling Wire');
-INSERT INTO gifi (accno,description) VALUES ('9662', 'Fertilizers And Lime');
-INSERT INTO gifi (accno,description) VALUES ('9663', 'Pesticides');
-INSERT INTO gifi (accno,description) VALUES ('9664', 'Seeds & Plants');
-INSERT INTO gifi (accno,description) VALUES ('9665', 'Insurance Premiums (Crop) NISA ACS');
-INSERT INTO gifi (accno,description) VALUES ('9710', 'Livestock Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9711', 'Feed, Supplements, Straw & Bedding');
-INSERT INTO gifi (accno,description) VALUES ('9712', 'Livestock Purchases');
-INSERT INTO gifi (accno,description) VALUES ('9713', 'Veterinary Fees, Medicine & Breeding Fees');
-INSERT INTO gifi (accno,description) VALUES ('9760', 'Machinery Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9761', 'Machinery Insurance');
-INSERT INTO gifi (accno,description) VALUES ('9762', 'Machinery Licences');
-INSERT INTO gifi (accno,description) VALUES ('9763', 'Machinery Repairs');
-INSERT INTO gifi (accno,description) VALUES ('9764', 'Machinery Fuel');
-INSERT INTO gifi (accno,description) VALUES ('9765', 'Machinery Lease');
-INSERT INTO gifi (accno,description) VALUES ('9790', 'General Farm Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9791', 'Amortization Of Tangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('9792', 'Advertising, Marketing Costs & Promotion');
-INSERT INTO gifi (accno,description) VALUES ('9793', 'Bad Debt');
-INSERT INTO gifi (accno,description) VALUES ('9794', 'Benefits Related To Employee Salaries');
-INSERT INTO gifi (accno,description) VALUES ('9795', 'Building Repairs & Maintenance');
-INSERT INTO gifi (accno,description) VALUES ('9796', 'Clearing, Levelling & Draining Land');
-INSERT INTO gifi (accno,description) VALUES ('9797', 'Crop Insurance, GRIP and Stabilization Premiums');
-INSERT INTO gifi (accno,description) VALUES ('9798', 'Custom Or Contract Work');
-INSERT INTO gifi (accno,description) VALUES ('9799', 'Electricity');
-INSERT INTO gifi (accno,description) VALUES ('9800', 'Fence Repairs & Maintenance');
-INSERT INTO gifi (accno,description) VALUES ('9801', 'Freight & Trucking');
-INSERT INTO gifi (accno,description) VALUES ('9802', 'Heating Fuel & Curing Fuel');
-INSERT INTO gifi (accno,description) VALUES ('9803', 'Insurance Program Overpayment Recapture');
-INSERT INTO gifi (accno,description) VALUES ('9804', 'Other Insurance Premiums');
-INSERT INTO gifi (accno,description) VALUES ('9805', 'Interest & Bank Charges');
-INSERT INTO gifi (accno,description) VALUES ('9806', 'Marketing Board Fees');
-INSERT INTO gifi (accno,description) VALUES ('9807', 'Membership/Subscription Fees');
-INSERT INTO gifi (accno,description) VALUES ('9808', 'Office Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9809', 'Professional Fees');
-INSERT INTO gifi (accno,description) VALUES ('9810', 'Property Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9811', 'Rent - Land & Buildings');
-INSERT INTO gifi (accno,description) VALUES ('9812', 'Rent - Machinery');
-INSERT INTO gifi (accno,description) VALUES ('9813', 'Other Rental Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9814', 'Salaries & Wages');
-INSERT INTO gifi (accno,description) VALUES ('9815', 'Salaries & Wages Other Than Spouse Or Dependants');
-INSERT INTO gifi (accno,description) VALUES ('9816', 'Salaries & Wages Paid To Dependants');
-INSERT INTO gifi (accno,description) VALUES ('9817', 'Selling Costs');
-INSERT INTO gifi (accno,description) VALUES ('9818', 'Supplies');
-INSERT INTO gifi (accno,description) VALUES ('9819', 'Motor Vehicle Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9820', 'Small Tools');
-INSERT INTO gifi (accno,description) VALUES ('9821', 'Soil Testing');
-INSERT INTO gifi (accno,description) VALUES ('9822', 'Storage/Drying');
-INSERT INTO gifi (accno,description) VALUES ('9823', 'Licences/Permits');
-INSERT INTO gifi (accno,description) VALUES ('9824', 'Telephone');
-INSERT INTO gifi (accno,description) VALUES ('9825', 'Quota Rental');
-INSERT INTO gifi (accno,description) VALUES ('9826', 'Gravel');
-INSERT INTO gifi (accno,description) VALUES ('9827', 'Purchases Of Commodities Resold');
-INSERT INTO gifi (accno,description) VALUES ('9828', 'Salaries & Wages Paid To Spouse');
-INSERT INTO gifi (accno,description) VALUES ('9829', 'Motor Vehicle Interest And Leasing Costs');
-INSERT INTO gifi (accno,description) VALUES ('9830', 'Prepared Feed');
-INSERT INTO gifi (accno,description) VALUES ('9831', 'Custom Feed');
-INSERT INTO gifi (accno,description) VALUES ('9832', 'Amortization Of Intangible Assets');
-INSERT INTO gifi (accno,description) VALUES ('9833', 'Amortization Of Milk Quota');
-INSERT INTO gifi (accno,description) VALUES ('9834', 'Travel Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9835', 'Capital/Business Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9850', 'Non-Farming Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9870', 'Net Inventory Adjustment');
-INSERT INTO gifi (accno,description) VALUES ('9898', 'Total Farm Expenses');
-INSERT INTO gifi (accno,description) VALUES ('9899', 'Net Farm Income');
-INSERT INTO gifi (accno,description) VALUES ('9970', 'Net Income/Loss Before Taxes And Extraordinary Items');
-INSERT INTO gifi (accno,description) VALUES ('9975', 'Extraordinary Items');
-INSERT INTO gifi (accno,description) VALUES ('9976', 'Legal Settlements');
-INSERT INTO gifi (accno,description) VALUES ('9980', 'Unrealized Gains/Losses');
-INSERT INTO gifi (accno,description) VALUES ('9985', 'Unusual Items');
-INSERT INTO gifi (accno,description) VALUES ('9990', 'Current Income Taxes');
-INSERT INTO gifi (accno,description) VALUES ('9995', 'Deferred Income Tax Provision');
-INSERT INTO gifi (accno,description) VALUES ('9999', 'Net Income/Loss After Taxes And Extraordinary Items');
--- This item represents the net amount of:
--- Item 9970 - Net income/loss before taxes and extraordinary items minus
--- Item 9975 - Extraordinary item(s) minus
--- Item 9976 - Legal settlements plus
--- Item 9980 - Unrealized gains/losses minus
--- Item 9985 - Unusual items minus
--- Item 9990 - Current income taxes minus
--- Item 9995 - Deferred income tax provision
--- and must be reported.
--- Any amount reported in this item should be equal to the amount reported at Item 3680 - Net income/loss,
--- in the retained earnings section.
---
diff --git a/sql-ledger/sql/Canada-English_General-chart.sql b/sql-ledger/sql/Canada-English_General-chart.sql
deleted file mode 100644
index da6411d9..0000000
--- a/sql-ledger/sql/Canada-English_General-chart.sql
+++ /dev/null
@@ -1,71 +0,0 @@
--- General Canadian COA
--- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','CURRENT ASSETS','H','1000','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Chequing Account','A','1002','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Petty Cash','A','1001','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Accounts Receivables','A','1060','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Allowance for doubtful accounts','A','1063','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTORY ASSETS','H','1120','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Inventory / General','A','1122','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Inventory / Aftermarket Parts','A','1122','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Inventory / Raw Materials','A','1122','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','1900','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Office Furniture & Equipment','A','1787','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Furn. & Equip.','A','1788','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Vehicle','A','1742','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Vehicle','A','1743','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','CURRENT LIABILITIES','H','2620','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Accounts Payable','A','2621','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Federal Taxes Payable','A','2683','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2170','Provincial Taxes Payable','A','2684','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','GST','A','2685','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','PST','A','2686','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2380','Vacation Pay Payable','A','2624','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2390','WCB Payable','A','2627','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2400','PAYROLL DEDUCTIONS','H','2620','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2410','EI Payable','A','2627','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2420','CPP Payable','A','2627','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2450','Income Tax Payable','A','2628','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LONG TERM LIABILITIES','H','3140','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Bank Loans','A','2701','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Loans from Shareholders','A','2780','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','SHARE CAPITAL','H','3500','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Common Shares','A','3500','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','SALES REVENUE','H','8000','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','General Sales','A','8000','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Aftermarket Parts','A','8000','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OTHER REVENUE','H','8090','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','Shipping & Handling','A','8457','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Interest','A','8090','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','8231','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','COST OF GOODS SOLD','H','8515','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Purchases','A','8320','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5050','Aftermarket Parts','A','8320','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Freight','A','8457','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','PAYROLL EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Wages & Salaries','A','9060','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','EI Expense','A','8622','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','CPP Expense','A','8622','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','WCB Expense','A','8622','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Accounting & Legal','A','8862','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Advertising & Promotions','A','8520','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Bad Debts','A','8590','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortization Expense','A','8670','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','Income Taxes','A','9990','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Insurance','A','9804','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interest & Bank Charges','A','9805','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Office Supplies','A','8811','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Rent','A','9811','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Repair & Maintenance','A','8964','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telephone','A','9225','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Travel & Entertainment','A','8523','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Utilities','A','8812','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenses','A','8760','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','8231','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2320'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'CAD:USD:EUR', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Canada-French-gifi.sql b/sql-ledger/sql/Canada-French-gifi.sql
deleted file mode 100644
index f6a8d45..0000000
--- a/sql-ledger/sql/Canada-French-gifi.sql
+++ /dev/null
@@ -1,719 +0,0 @@
--- French Canadian GIFI
--- Céline des Ligneris
--- checked DS. March 3, 2004
---
-INSERT INTO gifi (accno,description) VALUES ('1000','Encaisse et dépôts');
-INSERT INTO gifi (accno,description) VALUES ('1001','Encaisse');
-INSERT INTO gifi (accno,description) VALUES ('1002','Dépôts dans des banques et des institutions canadiennes ­ monnaie canadienne');
-INSERT INTO gifi (accno,description) VALUES ('1003','Dépôts dans des banques et des institutions canadiennes ­ devises étrangères');
-INSERT INTO gifi (accno,description) VALUES ('1004','Dépôts dans des banques étrangères ­ monnaie canadienne');
-INSERT INTO gifi (accno,description) VALUES ('1005','Dépôts dans des banques étrangères ­ devises étrangères');
-INSERT INTO gifi (accno,description) VALUES ('1006','Caisse de crédit ­ dépôt central');
-INSERT INTO gifi (accno,description) VALUES ('1007','Autres éléments de l\'actif assimilables à de l\'encaisse');
-INSERT INTO gifi (accno,description) VALUES ('1060','Comptes clients');
-INSERT INTO gifi (accno,description) VALUES ('1061','Provision pour créances douteuses');
-INSERT INTO gifi (accno,description) VALUES ('1062','Comptes clients commerciaux');
-INSERT INTO gifi (accno,description) VALUES ('1063','Provision pour mauvaises créances ­ comptes clients commerciaux');
-INSERT INTO gifi (accno,description) VALUES ('1064','Comptes clients de personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1065','Provision pour mauvaises créances ­ personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1066','Impôts à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1067','Intérêts à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1068','Retenues de garantie à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1069','Créances au titre de baux');
-INSERT INTO gifi (accno,description) VALUES ('1070','Provision pour éléments douteux contenus dans certaines créances au titre de baux');
-INSERT INTO gifi (accno,description) VALUES ('1071','Comptes à recevoir d\'employés');
-INSERT INTO gifi (accno,description) VALUES ('1072','Provision pour mauvaises créances ­ employés');
-INSERT INTO gifi (accno,description) VALUES ('1073','Montants à recevoir de membres d\'OSBL');
-INSERT INTO gifi (accno,description) VALUES ('1120','Stocks');
-INSERT INTO gifi (accno,description) VALUES ('1121','Stock de marchandises à vendre');
-INSERT INTO gifi (accno,description) VALUES ('1122','Pièces et fournitures en stock');
-INSERT INTO gifi (accno,description) VALUES ('1123','Biens immobiliers figurant dans un inventaire');
-INSERT INTO gifi (accno,description) VALUES ('1124','Stocks d\'agrégats');
-INSERT INTO gifi (accno,description) VALUES ('1125','Travaux en cours');
-INSERT INTO gifi (accno,description) VALUES ('1126','Matières premières');
-INSERT INTO gifi (accno,description) VALUES ('1127','Titres figurant dans un inventaire');
-INSERT INTO gifi (accno,description) VALUES ('1180','Placements à court terme');
-INSERT INTO gifi (accno,description) VALUES ('1181','Dépôts à terme canadiens');
-INSERT INTO gifi (accno,description) VALUES ('1182','Actions de sociétés canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('1183','Obligations canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('1184','Bonds du Trésor canadien');
-INSERT INTO gifi (accno,description) VALUES ('1185','Titres acquis avec entente de rachat');
-INSERT INTO gifi (accno,description) VALUES ('1186','Autres placements canadiens à court terme');
-INSERT INTO gifi (accno,description) VALUES ('1187','Placements étrangers à court terme');
-INSERT INTO gifi (accno,description) VALUES ('1240','Prêts et effets à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1241','Prêts remboursables sur demande');
-INSERT INTO gifi (accno,description) VALUES ('1242','Autres prêts non remboursés');
-INSERT INTO gifi (accno,description) VALUES ('1243','Effets à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1244','Hypothèques à recevoir');
-INSERT INTO gifi (accno,description) VALUES ('1300','Sommes exigibles d\'actionnaire(s)/d\'administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('1301','Sommes exigibles d\'actionnaire(s) (particuliers)');
-INSERT INTO gifi (accno,description) VALUES ('1302','Sommes exigibles d\'actionnaire(s) (sociétés)');
-INSERT INTO gifi (accno,description) VALUES ('1303','Sommes exigibles d\'administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('1360','Placements dans une(des) coentreprise(s)/ société(s) de personnes');
-INSERT INTO gifi (accno,description) VALUES ('1380','Sommes exigibles de coentreprise(s)/société(s) de personnes');
-INSERT INTO gifi (accno,description) VALUES ('1400','Sommes exigibles des personnes apparentées/placements dans des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1401','Billets à demande de personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1402','Intérêts à recevoir de personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1403','Prêts/avances à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('1460','Dettes des clients pour acceptation');
-INSERT INTO gifi (accno,description) VALUES ('1480','Autres éléments d\'actif à court terme');
-INSERT INTO gifi (accno,description) VALUES ('1481','Impôts sur le revenu reportés');
-INSERT INTO gifi (accno,description) VALUES ('1482','Revenus de placements accumulés');
-INSERT INTO gifi (accno,description) VALUES ('1483','Impôts recouvrables/remboursables');
-INSERT INTO gifi (accno,description) VALUES ('1484','Dépenses payées d\'avance');
-INSERT INTO gifi (accno,description) VALUES ('1485','Avances de forage');
-INSERT INTO gifi (accno,description) VALUES ('1486','Cautionnement/dépôts sur soumissions');
-INSERT INTO gifi (accno,description) VALUES ('1599','Total de l\'actif à court terme');
-INSERT INTO gifi (accno,description) VALUES ('1600','Terrains');
-INSERT INTO gifi (accno,description) VALUES ('1601','Frais d\'amélioration des terrains');
-INSERT INTO gifi (accno,description) VALUES ('1602','Amortissement cumulé de l\'amélioration des terrains');
-INSERT INTO gifi (accno,description) VALUES ('1620','Biens épuisables');
-INSERT INTO gifi (accno,description) VALUES ('1621','Amortissement cumulé des biens épuisables');
-INSERT INTO gifi (accno,description) VALUES ('1622','Biens en ressources pétrolifères et en gaz naturel');
-INSERT INTO gifi (accno,description) VALUES ('1623','Amortissement cumulé des biens en ressources');
-INSERT INTO gifi (accno,description) VALUES ('1624','Biens miniers');
-INSERT INTO gifi (accno,description) VALUES ('1625','Amortissement cumulé des biens miniers');
-INSERT INTO gifi (accno,description) VALUES ('1626','Frais d\'exploration et d\'exploitation reportés');
-INSERT INTO gifi (accno,description) VALUES ('1627','Amortissement cumulé des frais d\'exploration et d\'exploitation reportés');
-INSERT INTO gifi (accno,description) VALUES ('1628','Carrières');
-INSERT INTO gifi (accno,description) VALUES ('1629','Amortissement cumulé des carrières');
-INSERT INTO gifi (accno,description) VALUES ('1630','Carrières de gravier');
-INSERT INTO gifi (accno,description) VALUES ('1631','Amortissement cumulé des carrières de gravier');
-INSERT INTO gifi (accno,description) VALUES ('1632','Concessions forestières');
-INSERT INTO gifi (accno,description) VALUES ('1633','Amortissement cumulé des concessions forestières');
-INSERT INTO gifi (accno,description) VALUES ('1680','Bâtiments');
-INSERT INTO gifi (accno,description) VALUES ('1681','Amortissement cumulé des bâtiments');
-INSERT INTO gifi (accno,description) VALUES ('1682','Installations de fabrication et de traitement');
-INSERT INTO gifi (accno,description) VALUES ('1683','Amortissement cumulé des installations de fabrication et de traitement');
-INSERT INTO gifi (accno,description) VALUES ('1684','Bâtiments en construction');
-INSERT INTO gifi (accno,description) VALUES ('1740','Machines, matériel, meubles et accessoires');
-INSERT INTO gifi (accno,description) VALUES ('1741','Amortissement cumulé des machines, du matériel, des meubles et des accessoires');
-INSERT INTO gifi (accno,description) VALUES ('1742','Véhicules automobiles');
-INSERT INTO gifi (accno,description) VALUES ('1743','Amortissement cumulé des véhicules automobiles');
-INSERT INTO gifi (accno,description) VALUES ('1744','Outils et matrices');
-INSERT INTO gifi (accno,description) VALUES ('1745','Amortissement cumulé sur les outils et les matrices');
-INSERT INTO gifi (accno,description) VALUES ('1746','Matériel de construction et d\'excavation');
-INSERT INTO gifi (accno,description) VALUES ('1747','Amortissement cumulé du matériel de construction et d\'excavation');
-INSERT INTO gifi (accno,description) VALUES ('1748','Matériel d\'exploitation forestière');
-INSERT INTO gifi (accno,description) VALUES ('1749','Amortissement cumulé du matériel d\'exploitation forestière');
-INSERT INTO gifi (accno,description) VALUES ('1750','Filets et matériel de pêche');
-INSERT INTO gifi (accno,description) VALUES ('1751','Amortissement cumulé des filets et du matériel de pêche');
-INSERT INTO gifi (accno,description) VALUES ('1752','Matériel d\'exploitation minière');
-INSERT INTO gifi (accno,description) VALUES ('1753','Amortissement cumulé du matériel d\'exploitation minière');
-INSERT INTO gifi (accno,description) VALUES ('1754','Réseaux pétroliers et gaziers');
-INSERT INTO gifi (accno,description) VALUES ('1755','Amortissement cumulé des réseaux pétroliers et gaziers');
-INSERT INTO gifi (accno,description) VALUES ('1756','Matériel de production pour les industries de ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('1757','Amortissement cumulé du matériel de production de ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('1758','Matériel de production autre que pour les industries de ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('1759','Amortissement cumulé du matériel de production autre que pour les industries des ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('1760','Matériel d\'exploration');
-INSERT INTO gifi (accno,description) VALUES ('1761','Amortissement cumulé du matériel d\'exploration');
-INSERT INTO gifi (accno,description) VALUES ('1762','Matériel d\'expédition');
-INSERT INTO gifi (accno,description) VALUES ('1763','Amortissement cumulé du matériel d\'expédition');
-INSERT INTO gifi (accno,description) VALUES ('1764','Navires et bateaux');
-INSERT INTO gifi (accno,description) VALUES ('1765','Amortissement cumulé des navires et des bateaux');
-INSERT INTO gifi (accno,description) VALUES ('1766','Aéronefs');
-INSERT INTO gifi (accno,description) VALUES ('1767','Amortissement cumulé des aéronefs');
-INSERT INTO gifi (accno,description) VALUES ('1768','Panneaux indicateurs');
-INSERT INTO gifi (accno,description) VALUES ('1769','Amortissement cumulé des panneaux indicateurs');
-INSERT INTO gifi (accno,description) VALUES ('1770','Petits outils');
-INSERT INTO gifi (accno,description) VALUES ('1771','Amortissement cumulé des petits outils');
-INSERT INTO gifi (accno,description) VALUES ('1772','Matériel de radio et de communication');
-INSERT INTO gifi (accno,description) VALUES ('1773','Amortissement cumulé du matériel de radio et de communication');
-INSERT INTO gifi (accno,description) VALUES ('1774','Matériel informatique/logiciels');
-INSERT INTO gifi (accno,description) VALUES ('1775','Amortissement cumulé du matériel informatique / logiciels');
-INSERT INTO gifi (accno,description) VALUES ('1776','Instruments de musique');
-INSERT INTO gifi (accno,description) VALUES ('1777','Amortissement cumulé des instruments de musique');
-INSERT INTO gifi (accno,description) VALUES ('1778','Satellites');
-INSERT INTO gifi (accno,description) VALUES ('1779','Amortissement cumulé des satellites');
-INSERT INTO gifi (accno,description) VALUES ('1780','Stations terrestres');
-INSERT INTO gifi (accno,description) VALUES ('1781','Amortissement cumulé des stations terrestres');
-INSERT INTO gifi (accno,description) VALUES ('1782','Machines et matériel en cours de fabrication');
-INSERT INTO gifi (accno,description) VALUES ('1783','Matériel de transport');
-INSERT INTO gifi (accno,description) VALUES ('1784','Amortissement cumulé du matériel de transport');
-INSERT INTO gifi (accno,description) VALUES ('1785','Autres machines et matériel');
-INSERT INTO gifi (accno,description) VALUES ('1786','Amortissement cumulé des autres machines et d\'autre matériel');
-INSERT INTO gifi (accno,description) VALUES ('1787','Meubles et accessoires');
-INSERT INTO gifi (accno,description) VALUES ('1788','Amortissement cumulé des meubles et des accessoires');
-INSERT INTO gifi (accno,description) VALUES ('1900','Autres immobilisations');
-INSERT INTO gifi (accno,description) VALUES ('1901','Amortissement cumulé des autres immobilisations');
-INSERT INTO gifi (accno,description) VALUES ('1902','Chemins d\'exploitation forestière');
-INSERT INTO gifi (accno,description) VALUES ('1903','Amortissement cumulé des chemins d\'exploitation forestière');
-INSERT INTO gifi (accno,description) VALUES ('1904','Aires asphaltées et parcs de stationnement');
-INSERT INTO gifi (accno,description) VALUES ('1905','Amortissement des aires asphaltées et des parcs de stationnement');
-INSERT INTO gifi (accno,description) VALUES ('1906','Quais');
-INSERT INTO gifi (accno,description) VALUES ('1907','Amortissement cumulé des quais');
-INSERT INTO gifi (accno,description) VALUES ('1908','Clôtures');
-INSERT INTO gifi (accno,description) VALUES ('1909','Amortissement cumulé des clôtures');
-INSERT INTO gifi (accno,description) VALUES ('1910','Contrats de location ­ acquisition (bâtiments)');
-INSERT INTO gifi (accno,description) VALUES ('1911','Amortissement cumulé des contrats de location - acquisition (bâtiments)');
-INSERT INTO gifi (accno,description) VALUES ('1912','Contrats de location ­ acquisition (matériel)');
-INSERT INTO gifi (accno,description) VALUES ('1913','Amortissement cumulé des contrats de location ­ acquisition (matériel)');
-INSERT INTO gifi (accno,description) VALUES ('1914','Contrats de location ­ acquisition (véhicules)');
-INSERT INTO gifi (accno,description) VALUES ('1915','Amortissement cumulé des contrats de location ­ acquisition (véhicules)');
-INSERT INTO gifi (accno,description) VALUES ('1916','Contrats de location ­ acquisition (autres)panneaux');
-INSERT INTO gifi (accno,description) VALUES ('1917','Amortissement cumulé des contrats de location ­ acquisition (autres)');
-INSERT INTO gifi (accno,description) VALUES ('1918','Améliorations locatives');
-INSERT INTO gifi (accno,description) VALUES ('1919','Amortissement cumulé des améliorations locatives');
-INSERT INTO gifi (accno,description) VALUES ('1920','Autres immobilisations en construction');
-INSERT INTO gifi (accno,description) VALUES ('1921','Aires de campings');
-INSERT INTO gifi (accno,description) VALUES ('1922','Amortissement cumulé des aires de campings');
-INSERT INTO gifi (accno,description) VALUES ('2008','Total des immobilisations');
-INSERT INTO gifi (accno,description) VALUES ('2009','Total de l\'amortissement cumulé des immobilisations');
-INSERT INTO gifi (accno,description) VALUES ('2010','Actif incorporel');
-INSERT INTO gifi (accno,description) VALUES ('2011','Amortissement cumulé de l\'actif incorporel');
-INSERT INTO gifi (accno,description) VALUES ('2012','Achalandage');
-INSERT INTO gifi (accno,description) VALUES ('2013','Amortissement cumulé de l\'achalandage');
-INSERT INTO gifi (accno,description) VALUES ('2014','Contingents');
-INSERT INTO gifi (accno,description) VALUES ('2015','Amortissement cumulé des contingents');
-INSERT INTO gifi (accno,description) VALUES ('2016','Permis');
-INSERT INTO gifi (accno,description) VALUES ('2017','Amortissement cumulé des permis');
-INSERT INTO gifi (accno,description) VALUES ('2018','Frais de constitution en société');
-INSERT INTO gifi (accno,description) VALUES ('2019','Amortissement cumulé des frais de constitution en société');
-INSERT INTO gifi (accno,description) VALUES ('2020','Marques de commerce et brevets');
-INSERT INTO gifi (accno,description) VALUES ('2021','Amortissement cumulé des marques de commerce et des brevets');
-INSERT INTO gifi (accno,description) VALUES ('2022','Listes de clients');
-INSERT INTO gifi (accno,description) VALUES ('2023','Amortissement cumulé des listes de clients');
-INSERT INTO gifi (accno,description) VALUES ('2024','Droits');
-INSERT INTO gifi (accno,description) VALUES ('2025','Amortissement cumulé des droits');
-INSERT INTO gifi (accno,description) VALUES ('2026','Recherche et développement');
-INSERT INTO gifi (accno,description) VALUES ('2027','Amortissement cumulé de la recherche et du développement');
-INSERT INTO gifi (accno,description) VALUES ('2070','Droits relatifs à des ressources');
-INSERT INTO gifi (accno,description) VALUES ('2071','Amortissement cumulé des droits relatifs à des ressources');
-INSERT INTO gifi (accno,description) VALUES ('2072','Droits de coupe');
-INSERT INTO gifi (accno,description) VALUES ('2073','Amortissement cumulé des droits de coupe');
-INSERT INTO gifi (accno,description) VALUES ('2074','Droits miniers');
-INSERT INTO gifi (accno,description) VALUES ('2075','Amortissement cumulé des droits miniers');
-INSERT INTO gifi (accno,description) VALUES ('2076','Droits pétroliers et gaziers');
-INSERT INTO gifi (accno,description) VALUES ('2077','Amortissement cumulé des droits pétroliers et gaziers');
-INSERT INTO gifi (accno,description) VALUES ('2178','Total de l\'actif incorporel');
-INSERT INTO gifi (accno,description) VALUES ('2179','Total de l\'amortissement cumulé de l\'actif incorporel');
-INSERT INTO gifi (accno,description) VALUES ('2180','Sommes exigibles d\'actionnaire(s)/ d\'administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('2181','Sommes exigibles d\'actionnaire(s) (particuliers)');
-INSERT INTO gifi (accno,description) VALUES ('2182','Sommes exigibles d\'actionnaire(s) (sociétés)');
-INSERT INTO gifi (accno,description) VALUES ('2183','Sommes exigibles d\'administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('2190','Sommes exigibles des membres');
-INSERT INTO gifi (accno,description) VALUES ('2200','Placements dans une(des) coentreprise(s)/société(s) de personnes');
-INSERT INTO gifi (accno,description) VALUES ('2220','Sommes exigibles de coentreprise(s)/société(s)de personnes');
-INSERT INTO gifi (accno,description) VALUES ('2240','Sommes exigibles des personnes apparentées/');
-INSERT INTO gifi (accno,description) VALUES ('2241','Sommes exigibles de/placements dans des personnes canadiennes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2242','Actions dans des sociétés canadiennes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2243','Prêts/avances à des sociétés canadiennes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2244','Placements dans des sociétés canadiennes apparentées à la valeur d\'acquisition');
-INSERT INTO gifi (accno,description) VALUES ('2245','Placements dans des sociétés canadiennes apparentées à la valeur de consolidation');
-INSERT INTO gifi (accno,description) VALUES ('2246','Sommes exigibles de/placements dans des parties étrangères apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2247','Actions dans des sociétés étrangères apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2248','Prêts/avances à des sociétés étrangères apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2249','Placements dans des sociétés étrangères apparentées à la valeur d\'acquisition');
-INSERT INTO gifi (accno,description) VALUES ('2250','Placements dans des sociétés étrangères apparentées à la valeur de consolidation');
-INSERT INTO gifi (accno,description) VALUES ('2280','Placements dans des locations en partenariat');
-INSERT INTO gifi (accno,description) VALUES ('2300','Placements à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2301','Actions dans des sociétés étrangères');
-INSERT INTO gifi (accno,description) VALUES ('2302','Autres genres de placements à l\'étranger');
-INSERT INTO gifi (accno,description) VALUES ('2303','Actions dans des sociétés canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('2304','Titres de créances du gouvernement du Canada');
-INSERT INTO gifi (accno,description) VALUES ('2305','Titres de créances des gouvernements provinciaux et des administrations municipales du Canada');
-INSERT INTO gifi (accno,description) VALUES ('2306','Obligations et débentures de sociétés canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('2307','Titres de créances');
-INSERT INTO gifi (accno,description) VALUES ('2308','Titres de participation');
-INSERT INTO gifi (accno,description) VALUES ('2309','Titres acquis à la suite d\'une entente de rachat');
-INSERT INTO gifi (accno,description) VALUES ('2310','Actions de la caisse de crédit centrale');
-INSERT INTO gifi (accno,description) VALUES ('2311','Autres placements canadiens à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2360','Prêts à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2361','Prêts hypothécaires');
-INSERT INTO gifi (accno,description) VALUES ('2362','Prêts personnels et prêts sur carte de crédit');
-INSERT INTO gifi (accno,description) VALUES ('2363','Prêts au gouvernement et prêts commerciaux');
-INSERT INTO gifi (accno,description) VALUES ('2364','Marge de crédit');
-INSERT INTO gifi (accno,description) VALUES ('2420','Autres éléments d\'actif à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2421','Impôts sur le revenu reportés');
-INSERT INTO gifi (accno,description) VALUES ('2422','Frais du régime de pension reportés');
-INSERT INTO gifi (accno,description) VALUES ('2423','Pertes de change non matérialisées reportées');
-INSERT INTO gifi (accno,description) VALUES ('2424','Autres éléments/frais reportés');
-INSERT INTO gifi (accno,description) VALUES ('2425','Amortissement cumulé des frais reportés');
-INSERT INTO gifi (accno,description) VALUES ('2426','Fonds de réserve');
-INSERT INTO gifi (accno,description) VALUES ('2427','Valeur de rachat de l\'assurance-vie');
-INSERT INTO gifi (accno,description) VALUES ('2589','Total de l\'actif à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2590','Actif détenu en fiducie');
-INSERT INTO gifi (accno,description) VALUES ('2599','Total de l\'actif');
-INSERT INTO gifi (accno,description) VALUES ('2600','Découvert bancaire');
-INSERT INTO gifi (accno,description) VALUES ('2620','Montants et charges à payer');
-INSERT INTO gifi (accno,description) VALUES ('2621','Effets commerciaux à payer');
-INSERT INTO gifi (accno,description) VALUES ('2622','Effets commerciaux à payer à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2623','Retenues de garantie à payer');
-INSERT INTO gifi (accno,description) VALUES ('2624','Salaires à payer');
-INSERT INTO gifi (accno,description) VALUES ('2625','Frais de gestion à payer');
-INSERT INTO gifi (accno,description) VALUES ('2626','Gratifications à payer');
-INSERT INTO gifi (accno,description) VALUES ('2627','Retenues salariales à payer');
-INSERT INTO gifi (accno,description) VALUES ('2628','Retenues d\'impôts et de taxes à payer');
-INSERT INTO gifi (accno,description) VALUES ('2629','Intérêts à payer');
-INSERT INTO gifi (accno,description) VALUES ('2630','Montants à payer aux membres d\'OSBL');
-INSERT INTO gifi (accno,description) VALUES ('2680','Taxes et impôts à payer');
-INSERT INTO gifi (accno,description) VALUES ('2700','Dettes à court terme');
-INSERT INTO gifi (accno,description) VALUES ('2701','Emprunts auprès de banques canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('2702','Élément de passif pour les titres vendus à découvert');
-INSERT INTO gifi (accno,description) VALUES ('2703','Élément de passif pour les titres vendus à la suite d\'une entente de rachat');
-INSERT INTO gifi (accno,description) VALUES ('2704','Titres sur l\'or et sur l\'argent');
-INSERT INTO gifi (accno,description) VALUES ('2705','Chèques et autres items en circulation');
-INSERT INTO gifi (accno,description) VALUES ('2706','Billets garantis');
-INSERT INTO gifi (accno,description) VALUES ('2770','Revenus reportés');
-INSERT INTO gifi (accno,description) VALUES ('2780','Sommes dues à un(des) actionnaire(s)/administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('2781','Sommes dues à un(des) actionnaire(s) (particuliers)');
-INSERT INTO gifi (accno,description) VALUES ('2782','Sommes dues à un(des) actionnaire(s) (sociétés)');
-INSERT INTO gifi (accno,description) VALUES ('2783','Sommes dues à un(des) administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('2840','Sommes dues à une(des) coentreprise(s)/ société(s) de personnes');
-INSERT INTO gifi (accno,description) VALUES ('2860','Sommes dues à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2861','Billets à demande dus à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2862','Intérêts à payer à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2863','Avances à payer à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('2920','Portion à court terme du passif à long terme');
-INSERT INTO gifi (accno,description) VALUES ('2940','Acceptations de banque');
-INSERT INTO gifi (accno,description) VALUES ('2960','Autres éléments du passif à court terme');
-INSERT INTO gifi (accno,description) VALUES ('2961','Sommes reçues en dépôts');
-INSERT INTO gifi (accno,description) VALUES ('2962','Dividendes à payer');
-INSERT INTO gifi (accno,description) VALUES ('2963','Impôts sur le revenu reportés');
-INSERT INTO gifi (accno,description) VALUES ('2964','Réserve pour garanties et indemnités');
-INSERT INTO gifi (accno,description) VALUES ('2965','Provisions et réserves générales');
-INSERT INTO gifi (accno,description) VALUES ('2966','Parts des membres de l\'équipage');
-INSERT INTO gifi (accno,description) VALUES ('3139','Total du passif à court terme');
-INSERT INTO gifi (accno,description) VALUES ('3140','Dette à long terme');
-INSERT INTO gifi (accno,description) VALUES ('3141','Hypothèques');
-INSERT INTO gifi (accno,description) VALUES ('3142','Emprunts d\'une société de crédit agricole');
-INSERT INTO gifi (accno,description) VALUES ('3143','Emprunt d\'une banque à charte');
-INSERT INTO gifi (accno,description) VALUES ('3144','Emprunt d\'une caisse populaire/d\'une coopérative de crédit');
-INSERT INTO gifi (accno,description) VALUES ('3145','Emprunt du gouvernement provincial');
-INSERT INTO gifi (accno,description) VALUES ('3146','Emprunt d\'un fournisseur');
-INSERT INTO gifi (accno,description) VALUES ('3147','Prêt personnel');
-INSERT INTO gifi (accno,description) VALUES ('3148','Emprunts d\'une fédération, d\'une centrale ou de');
-INSERT INTO gifi (accno,description) VALUES ('3149','Marge de crédit');
-INSERT INTO gifi (accno,description) VALUES ('3150','Élément de passif pour les titres vendus à');
-INSERT INTO gifi (accno,description) VALUES ('3151','Élément de passif pour les titres vendus à la suite d\'une entente de rachat');
-INSERT INTO gifi (accno,description) VALUES ('3152','Billets garantis');
-INSERT INTO gifi (accno,description) VALUES ('3200','Cautionnement des institutions financières');
-INSERT INTO gifi (accno,description) VALUES ('3210','Obligations et débentures');
-INSERT INTO gifi (accno,description) VALUES ('3220','Revenus reportés');
-INSERT INTO gifi (accno,description) VALUES ('3240','Impôts sur le revenu reportés');
-INSERT INTO gifi (accno,description) VALUES ('3260','Sommes dues à un(des) actionnaire(s)/ administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('3261','Sommes dues à un(des) actionnaire(s) (particuliers)');
-INSERT INTO gifi (accno,description) VALUES ('3262','Sommes dues à un(des) actionnaire(s) (sociétés)');
-INSERT INTO gifi (accno,description) VALUES ('3263','Sommes dues à un(des) administrateur(s)');
-INSERT INTO gifi (accno,description) VALUES ('3270','Sommes dues à des membres');
-INSERT INTO gifi (accno,description) VALUES ('3280','Sommes dues à une(des) coentreprise(s)/société(s) de personnes');
-INSERT INTO gifi (accno,description) VALUES ('3300','Sommes dues à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('3301','Sommes dues à des personnes canadiennes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('3302','Sommes dues à des personnes étrangères apparentées');
-INSERT INTO gifi (accno,description) VALUES ('3320','Autres éléments de passif à long terme');
-INSERT INTO gifi (accno,description) VALUES ('3321','Obligations, engagements et location-acquisition à long terme');
-INSERT INTO gifi (accno,description) VALUES ('3322','Réserves pour garanties et indemnités');
-INSERT INTO gifi (accno,description) VALUES ('3323','Provision pour la restauration des sites d\'exploitation');
-INSERT INTO gifi (accno,description) VALUES ('3324','Contribution à une fiducie pour l\'environnement');
-INSERT INTO gifi (accno,description) VALUES ('3325','Provisions et réserves générales');
-INSERT INTO gifi (accno,description) VALUES ('3326','Redressement pour les actions privilégiées');
-INSERT INTO gifi (accno,description) VALUES ('3327','Répartition aux membres');
-INSERT INTO gifi (accno,description) VALUES ('3328','Revenus différés de contrats incomplets');
-INSERT INTO gifi (accno,description) VALUES ('3450','Total du passif à long terme');
-INSERT INTO gifi (accno,description) VALUES ('3460','Dettes de second rang');
-INSERT INTO gifi (accno,description) VALUES ('3470','Sommes détenues en fiducie');
-INSERT INTO gifi (accno,description) VALUES ('3499','Total du passif');
-INSERT INTO gifi (accno,description) VALUES ('3500','Actions ordinaires');
-INSERT INTO gifi (accno,description) VALUES ('3520','Actions privilégiées');
-INSERT INTO gifi (accno,description) VALUES ('3540','Surplus d\'apport et autres surplus');
-INSERT INTO gifi (accno,description) VALUES ('3541','Surplus d\'apport');
-INSERT INTO gifi (accno,description) VALUES ('3542','Surplus d\'expertise');
-INSERT INTO gifi (accno,description) VALUES ('3543','Réserve générale');
-INSERT INTO gifi (accno,description) VALUES ('3570','Compte du siège social');
-INSERT INTO gifi (accno,description) VALUES ('3600','Bénéfices non répartis/déficit');
-INSERT INTO gifi (accno,description) VALUES ('3620','Total des capitaux propres');
-INSERT INTO gifi (accno,description) VALUES ('3640','Total du passif et des capitaux propres');
-INSERT INTO gifi (accno,description) VALUES ('3680','Revenu net/perte nette');
-INSERT INTO gifi (accno,description) VALUES ('3700','Dividendes déclarés');
-INSERT INTO gifi (accno,description) VALUES ('3701','Dividendes en espèces');
-INSERT INTO gifi (accno,description) VALUES ('3702','Ristournes');
-INSERT INTO gifi (accno,description) VALUES ('3720','Redressements sur exercices antérieurs');
-INSERT INTO gifi (accno,description) VALUES ('3740','Autres éléments touchant les bénéfices non répartis');
-INSERT INTO gifi (accno,description) VALUES ('3741','Rachat d\'actions');
-INSERT INTO gifi (accno,description) VALUES ('3742','Réserves spéciales');
-INSERT INTO gifi (accno,description) VALUES ('3743','Redressements relatifs aux devises');
-INSERT INTO gifi (accno,description) VALUES ('3744','Éléments inhabituels de revenus');
-INSERT INTO gifi (accno,description) VALUES ('3745','Transferts interfonds');
-INSERT INTO gifi (accno,description) VALUES ('3849','Bénéfices non répartis/déficit ­ fin de l\'exercice');
-INSERT INTO gifi (accno,description) VALUES ('8000','Ventes commerciales de biens et services');
-INSERT INTO gifi (accno,description) VALUES ('8020','Ventes de biens et de services à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('8030','Ventes entre divisions');
-INSERT INTO gifi (accno,description) VALUES ('8040','Ventes de ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('8041','Ventes de pétrole et de gaz naturel');
-INSERT INTO gifi (accno,description) VALUES ('8042','Ventes de pétrole et de gaz naturel à des personnes apparentées');
-INSERT INTO gifi (accno,description) VALUES ('8043','Commercialisation du gaz');
-INSERT INTO gifi (accno,description) VALUES ('8044','Revenus de traitement');
-INSERT INTO gifi (accno,description) VALUES ('8045','Revenus de transport par pipeline');
-INSERT INTO gifi (accno,description) VALUES ('8046','Ventes reliées à l\'exploration séismique');
-INSERT INTO gifi (accno,description) VALUES ('8047','Revenus provenant de l\'exploitation minière');
-INSERT INTO gifi (accno,description) VALUES ('8048','Revenus provenant du charbon');
-INSERT INTO gifi (accno,description) VALUES ('8049','Revenus de sables bitumineux');
-INSERT INTO gifi (accno,description) VALUES ('8050','Revenus provenant des redevances');
-INSERT INTO gifi (accno,description) VALUES ('8051','Revenus/pertes d\'une société de personnes/coentreprise ­ pétrole et gaz');
-INSERT INTO gifi (accno,description) VALUES ('8052','Revenus/pertes d\'une société de personnes/coentreprise ­ mines');
-INSERT INTO gifi (accno,description) VALUES ('8053','Autres revenus de production');
-INSERT INTO gifi (accno,description) VALUES ('8089','Total des ventes de biens et services');
-INSERT INTO gifi (accno,description) VALUES ('8090','Revenus de placements');
-INSERT INTO gifi (accno,description) VALUES ('8091','Intérêt de sources étrangères');
-INSERT INTO gifi (accno,description) VALUES ('8092','Intérêt d\'obligations et de débentures canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('8093','Intérêt de prêts hypothécaires canadiens');
-INSERT INTO gifi (accno,description) VALUES ('8094','Intérêt d\'autres sources canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('8095','Revenus de dividendes');
-INSERT INTO gifi (accno,description) VALUES ('8096','Dividendes de sources canadiennes');
-INSERT INTO gifi (accno,description) VALUES ('8097','Dividendes de sources étrangères');
-INSERT INTO gifi (accno,description) VALUES ('8100','Revenus d\'intérêt (institutions financières)');
-INSERT INTO gifi (accno,description) VALUES ('8101','Intérêt de prêts');
-INSERT INTO gifi (accno,description) VALUES ('8102','Intérêt de valeurs mobilières');
-INSERT INTO gifi (accno,description) VALUES ('8103','Intérêt des dépôts en banque');
-INSERT INTO gifi (accno,description) VALUES ('8120','Revenus de commissions');
-INSERT INTO gifi (accno,description) VALUES ('8121','Revenus de commissions sur les transactions immobilières');
-INSERT INTO gifi (accno,description) VALUES ('8140','Revenus de location');
-INSERT INTO gifi (accno,description) VALUES ('8141','Revenus de location immobilière');
-INSERT INTO gifi (accno,description) VALUES ('8142','Revenus de location de films');
-INSERT INTO gifi (accno,description) VALUES ('8150','Contrats de location de véhicules');
-INSERT INTO gifi (accno,description) VALUES ('8160','Revenus provenant de la pêche');
-INSERT INTO gifi (accno,description) VALUES ('8161','Ventes de poisson');
-INSERT INTO gifi (accno,description) VALUES ('8162','Autres produits marins');
-INSERT INTO gifi (accno,description) VALUES ('8163','Subventions, crédits et dégrèvements de pêche');
-INSERT INTO gifi (accno,description) VALUES ('8164','Subventions de pêche');
-INSERT INTO gifi (accno,description) VALUES ('8165','Indemnité pour perte d\'un revenu ou d\'un bien de pêche');
-INSERT INTO gifi (accno,description) VALUES ('8166','Revenu de pêcheur à la part');
-INSERT INTO gifi (accno,description) VALUES ('8210','Profits/pertes sur la disposition d\'éléments d\'actif');
-INSERT INTO gifi (accno,description) VALUES ('8211','Profits/pertes sur la vente de placements');
-INSERT INTO gifi (accno,description) VALUES ('8212','Profits/pertes sur la disposition d\'avoir minier');
-INSERT INTO gifi (accno,description) VALUES ('8220','Montants reçus d\'OSBL');
-INSERT INTO gifi (accno,description) VALUES ('8221','Frais d\'adhésion');
-INSERT INTO gifi (accno,description) VALUES ('8222','Cotisations');
-INSERT INTO gifi (accno,description) VALUES ('8223','Dons');
-INSERT INTO gifi (accno,description) VALUES ('8224','Ventes et recettes brutes provenant d\'activités de l\'organisme');
-INSERT INTO gifi (accno,description) VALUES ('8230','Autres revenus');
-INSERT INTO gifi (accno,description) VALUES ('8231','Gains/pertes sur devises étrangères');
-INSERT INTO gifi (accno,description) VALUES ('8232','Revenus/pertes de filiales/de sociétés affiliées');
-INSERT INTO gifi (accno,description) VALUES ('8233','Revenus/pertes d\'autres divisions');
-INSERT INTO gifi (accno,description) VALUES ('8234','Revenus/pertes des coentreprises');
-INSERT INTO gifi (accno,description) VALUES ('8235','Revenus/pertes des sociétés de personnes');
-INSERT INTO gifi (accno,description) VALUES ('8236','Réalisation de revenus différés');
-INSERT INTO gifi (accno,description) VALUES ('8237','Revenus de redevances autres que l\'exploitation des ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('8238','Crédits d\'impôts pour redevances de l\'Alberta');
-INSERT INTO gifi (accno,description) VALUES ('8239','Honoraires de gestion et d\'administration');
-INSERT INTO gifi (accno,description) VALUES ('8240','Revenus de télécommunications');
-INSERT INTO gifi (accno,description) VALUES ('8241','Honoraires de consultation');
-INSERT INTO gifi (accno,description) VALUES ('8242','Subventions et octrois');
-INSERT INTO gifi (accno,description) VALUES ('8243','Ventes de sous-produits');
-INSERT INTO gifi (accno,description) VALUES ('8244','Frais d\'administration provenant du service des dépôts');
-INSERT INTO gifi (accno,description) VALUES ('8245','Frais d\'administration provenant du service du crédit');
-INSERT INTO gifi (accno,description) VALUES ('8246','Frais d\'administration provenant du service des cartes bancaires');
-INSERT INTO gifi (accno,description) VALUES ('8247','Ristournes');
-INSERT INTO gifi (accno,description) VALUES ('8248','Recouvrement d\'assurance');
-INSERT INTO gifi (accno,description) VALUES ('8249','Recouvrement de frais');
-INSERT INTO gifi (accno,description) VALUES ('8250','Recouvrement des mauvaises créances');
-INSERT INTO gifi (accno,description) VALUES ('8299','Total des revenus');
-INSERT INTO gifi (accno,description) VALUES ('8300','Stock d\'ouverture');
-INSERT INTO gifi (accno,description) VALUES ('8301','Stock d\'ouverture ­ produits finis');
-INSERT INTO gifi (accno,description) VALUES ('8302','Stock d\'ouverture ­ matières premières');
-INSERT INTO gifi (accno,description) VALUES ('8303','Stock d\'ouverture ­ produits en cours de fabrication');
-INSERT INTO gifi (accno,description) VALUES ('8320','Achats/coût des matériaux');
-INSERT INTO gifi (accno,description) VALUES ('8340','Salaires directs');
-INSERT INTO gifi (accno,description) VALUES ('8350','Avantages sociaux relatifs aux salaires directs');
-INSERT INTO gifi (accno,description) VALUES ('8360','Fournisseurs et sous-traitants');
-INSERT INTO gifi (accno,description) VALUES ('8370','Coûts de production (autres que ressources naturelles)');
-INSERT INTO gifi (accno,description) VALUES ('8400','Coûts de production des ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('8401','Exploitation des pipelines');
-INSERT INTO gifi (accno,description) VALUES ('8402','Forage');
-INSERT INTO gifi (accno,description) VALUES ('8403','Coûts de restauration des sites d\'exploitation');
-INSERT INTO gifi (accno,description) VALUES ('8404','Redevances dérogatoires brutes');
-INSERT INTO gifi (accno,description) VALUES ('8405','Redevances de propriété franche');
-INSERT INTO gifi (accno,description) VALUES ('8406','Paiements de location de concessions publiques');
-INSERT INTO gifi (accno,description) VALUES ('8407','Prospection/travaux de géologie');
-INSERT INTO gifi (accno,description) VALUES ('8408','Exploitation des puits, carburant et matériel');
-INSERT INTO gifi (accno,description) VALUES ('8409','Abandon de puits et puits secs');
-INSERT INTO gifi (accno,description) VALUES ('8410','Autres paiements de location');
-INSERT INTO gifi (accno,description) VALUES ('8411','Frais d\'exploration');
-INSERT INTO gifi (accno,description) VALUES ('8412','Frais d\'aménagement');
-INSERT INTO gifi (accno,description) VALUES ('8435','Sommes exigées par la Couronne');
-INSERT INTO gifi (accno,description) VALUES ('8436','Redevances à la Couronne');
-INSERT INTO gifi (accno,description) VALUES ('8437','Frais de location de la Couronne');
-INSERT INTO gifi (accno,description) VALUES ('8438','Impôts sur le minerai de propriété franche');
-INSERT INTO gifi (accno,description) VALUES ('8439','Impôts miniers');
-INSERT INTO gifi (accno,description) VALUES ('8440','Frais de location des sables bitumineux');
-INSERT INTO gifi (accno,description) VALUES ('8441','Surtaxe de la Saskatchewan sur les ressources');
-INSERT INTO gifi (accno,description) VALUES ('8450','Autres coûts directs');
-INSERT INTO gifi (accno,description) VALUES ('8451','Location et exploitation de matériel');
-INSERT INTO gifi (accno,description) VALUES ('8452','Cour à bois');
-INSERT INTO gifi (accno,description) VALUES ('8453','Coûts d\'exploitation forestière');
-INSERT INTO gifi (accno,description) VALUES ('8454','Coûts des chemins forestiers');
-INSERT INTO gifi (accno,description) VALUES ('8455','Droits de coupe');
-INSERT INTO gifi (accno,description) VALUES ('8456','Coûts des redevances');
-INSERT INTO gifi (accno,description) VALUES ('8457','Frais de transport à l\'achat et droits');
-INSERT INTO gifi (accno,description) VALUES ('8458','Moins-value de l\'inventaire');
-INSERT INTO gifi (accno,description) VALUES ('8459','Coût direct de l\'amortissement des biens corporels');
-INSERT INTO gifi (accno,description) VALUES ('8460','Coût direct de l\'amortissement des biens constitués');
-INSERT INTO gifi (accno,description) VALUES ('8461','Autres frais indirects attribués au coût des ventes');
-INSERT INTO gifi (accno,description) VALUES ('8500','Stock de fermeture');
-INSERT INTO gifi (accno,description) VALUES ('8501','Stock de fermeture ­ produits finis');
-INSERT INTO gifi (accno,description) VALUES ('8502','Stock de fermeture ­ matières premières');
-INSERT INTO gifi (accno,description) VALUES ('8503','Stock de fermeture ­ travaux en cours de fabrication');
-INSERT INTO gifi (accno,description) VALUES ('8518','Coût des ventes');
-INSERT INTO gifi (accno,description) VALUES ('8519','Profit brut/perte brute');
-INSERT INTO gifi (accno,description) VALUES ('8520','Publicité et promotion');
-INSERT INTO gifi (accno,description) VALUES ('8521','Publicité');
-INSERT INTO gifi (accno,description) VALUES ('8522','Dons');
-INSERT INTO gifi (accno,description) VALUES ('8523','Repas et frais de représentation');
-INSERT INTO gifi (accno,description) VALUES ('8524','Promotion');
-INSERT INTO gifi (accno,description) VALUES ('8570','Amortissement de biens incorporels');
-INSERT INTO gifi (accno,description) VALUES ('8590','Créances irrécouvrables');
-INSERT INTO gifi (accno,description) VALUES ('8610','Pertes sur prêts');
-INSERT INTO gifi (accno,description) VALUES ('8611','Provision pour les pertes sur prêts');
-INSERT INTO gifi (accno,description) VALUES ('8620','Avantages sociaux');
-INSERT INTO gifi (accno,description) VALUES ('8621','Assurances collectives');
-INSERT INTO gifi (accno,description) VALUES ('8622','Partie de l\'employeur des avantages sociaux');
-INSERT INTO gifi (accno,description) VALUES ('8623','Cotisations aux régimes de revenus différés');
-INSERT INTO gifi (accno,description) VALUES ('8650','Amortissement des biens constitués par des ressources naturelles');
-INSERT INTO gifi (accno,description) VALUES ('8670','Amortissement des biens corporels');
-INSERT INTO gifi (accno,description) VALUES ('8690','Assurances');
-INSERT INTO gifi (accno,description) VALUES ('8691','Assurance sur la vie des dirigeants');
-INSERT INTO gifi (accno,description) VALUES ('8710','Intérêts et frais bancaires');
-INSERT INTO gifi (accno,description) VALUES ('8711','Intérêts sur les dettes à court terme');
-INSERT INTO gifi (accno,description) VALUES ('8712','Intérêts sur les obligations et les débentures');
-INSERT INTO gifi (accno,description) VALUES ('8713','Intérêts sur les prêts hypothécaires');
-INSERT INTO gifi (accno,description) VALUES ('8714','Intérêts sur les dettes à long terme');
-INSERT INTO gifi (accno,description) VALUES ('8715','Frais bancaires');
-INSERT INTO gifi (accno,description) VALUES ('8716','Frais de cartes de crédit');
-INSERT INTO gifi (accno,description) VALUES ('8717','Frais de recouvrement et de crédit');
-INSERT INTO gifi (accno,description) VALUES ('8740','Intérêts payés (institutions financières)');
-INSERT INTO gifi (accno,description) VALUES ('8741','Intérêts payés sur dépôts');
-INSERT INTO gifi (accno,description) VALUES ('8742','Intérêts payés sur les obligations et les débentures');
-INSERT INTO gifi (accno,description) VALUES ('8760','Taxes d\'affaires, droits d\'adhésion et licences');
-INSERT INTO gifi (accno,description) VALUES ('8761','Droits d\'adhésion');
-INSERT INTO gifi (accno,description) VALUES ('8762','Taxes d\'affaires');
-INSERT INTO gifi (accno,description) VALUES ('8763','Frais de franchise');
-INSERT INTO gifi (accno,description) VALUES ('8764','Frais à verser aux gouvernements');
-INSERT INTO gifi (accno,description) VALUES ('8780','Taxe des grandes sociétés du Nouveau-Brunswick');
-INSERT INTO gifi (accno,description) VALUES ('8790','Taxe des grandes sociétés de la Nouvelle-Écosse');
-INSERT INTO gifi (accno,description) VALUES ('8810','Frais de bureau');
-INSERT INTO gifi (accno,description) VALUES ('8811','Papeterie et fournitures de bureau');
-INSERT INTO gifi (accno,description) VALUES ('8812','Services de bureau');
-INSERT INTO gifi (accno,description) VALUES ('8813','Traitement des données');
-INSERT INTO gifi (accno,description) VALUES ('8860','Honoraires professionnels');
-INSERT INTO gifi (accno,description) VALUES ('8861','Frais légaux');
-INSERT INTO gifi (accno,description) VALUES ('8862','Frais comptables');
-INSERT INTO gifi (accno,description) VALUES ('8863','Honoraires d\'experts-conseils');
-INSERT INTO gifi (accno,description) VALUES ('8864','Honoraires d\'architectes');
-INSERT INTO gifi (accno,description) VALUES ('8865','Frais d\'évaluation');
-INSERT INTO gifi (accno,description) VALUES ('8866','Frais de laboratoire');
-INSERT INTO gifi (accno,description) VALUES ('8867','Honoraires médicaux');
-INSERT INTO gifi (accno,description) VALUES ('8868','Frais de vétérinaire');
-INSERT INTO gifi (accno,description) VALUES ('8869','Frais de courtage');
-INSERT INTO gifi (accno,description) VALUES ('8870','Frais de transfert');
-INSERT INTO gifi (accno,description) VALUES ('8871','Frais de gestion et d\'administration');
-INSERT INTO gifi (accno,description) VALUES ('8872','Affinage et dosage');
-INSERT INTO gifi (accno,description) VALUES ('8873','Droits d\'enregistrement et frais d\'agents de transfert');
-INSERT INTO gifi (accno,description) VALUES ('8874','Coûts de restructuration');
-INSERT INTO gifi (accno,description) VALUES ('8875','Commissions sur les titres et les valeurs mobilières');
-INSERT INTO gifi (accno,description) VALUES ('8876','Frais de formation');
-INSERT INTO gifi (accno,description) VALUES ('8877','Studio et enregistrement');
-INSERT INTO gifi (accno,description) VALUES ('8910','Frais de location');
-INSERT INTO gifi (accno,description) VALUES ('8911','Loyer de biens immobiliers');
-INSERT INTO gifi (accno,description) VALUES ('8912','Frais d\'occupation');
-INSERT INTO gifi (accno,description) VALUES ('8913','Frais de copropriété');
-INSERT INTO gifi (accno,description) VALUES ('8914','Location de matériel');
-INSERT INTO gifi (accno,description) VALUES ('8915','Location de véhicules motorisés');
-INSERT INTO gifi (accno,description) VALUES ('8916','Amarrage (bateau)');
-INSERT INTO gifi (accno,description) VALUES ('8917','Entreposage');
-INSERT INTO gifi (accno,description) VALUES ('8918','Location de contingents');
-INSERT INTO gifi (accno,description) VALUES ('8960','Réparations et entretien');
-INSERT INTO gifi (accno,description) VALUES ('8961','Réparations et entretien ­ bâtiments');
-INSERT INTO gifi (accno,description) VALUES ('8962','Réparations et entretien ­ véhicules');
-INSERT INTO gifi (accno,description) VALUES ('8963','Réparations et entretien ­ bateaux');
-INSERT INTO gifi (accno,description) VALUES ('8964','Réparations et entretien ­ machines et matériel');
-INSERT INTO gifi (accno,description) VALUES ('9010','Autres frais de réparation et d\'entretien');
-INSERT INTO gifi (accno,description) VALUES ('9011','Dépense d\'usinage');
-INSERT INTO gifi (accno,description) VALUES ('9012','Frais relatifs aux routes');
-INSERT INTO gifi (accno,description) VALUES ('9013','Sécurité');
-INSERT INTO gifi (accno,description) VALUES ('9014','Enlèvement des déchets');
-INSERT INTO gifi (accno,description) VALUES ('9060','Salaires et traitements');
-INSERT INTO gifi (accno,description) VALUES ('9061','Commissions');
-INSERT INTO gifi (accno,description) VALUES ('9062','Part de l\'équipage');
-INSERT INTO gifi (accno,description) VALUES ('9063','Gratifications');
-INSERT INTO gifi (accno,description) VALUES ('9064','Jetons de présence des administrateurs');
-INSERT INTO gifi (accno,description) VALUES ('9065','Salaires des cadres');
-INSERT INTO gifi (accno,description) VALUES ('9066','Salaires des employés');
-INSERT INTO gifi (accno,description) VALUES ('9110','Contrats de sous-traitance');
-INSERT INTO gifi (accno,description) VALUES ('9130','Fournitures');
-INSERT INTO gifi (accno,description) VALUES ('9131','Petit outillage');
-INSERT INTO gifi (accno,description) VALUES ('9132','Frais d\'atelier');
-INSERT INTO gifi (accno,description) VALUES ('9133','Uniformes');
-INSERT INTO gifi (accno,description) VALUES ('9134','Blanchissage');
-INSERT INTO gifi (accno,description) VALUES ('9135','Alimentation et restauration');
-INSERT INTO gifi (accno,description) VALUES ('9136','Matériel de pêche');
-INSERT INTO gifi (accno,description) VALUES ('9137','Filets et pièges');
-INSERT INTO gifi (accno,description) VALUES ('9138','Sel, appâts et glace');
-INSERT INTO gifi (accno,description) VALUES ('9139','Fournitures de camp');
-INSERT INTO gifi (accno,description) VALUES ('9150','Dépenses liées à l\'informatique');
-INSERT INTO gifi (accno,description) VALUES ('9151','Améliorations et modernisations');
-INSERT INTO gifi (accno,description) VALUES ('9152','Internet');
-INSERT INTO gifi (accno,description) VALUES ('9180','Taxes foncières');
-INSERT INTO gifi (accno,description) VALUES ('9200','Frais de déplacement');
-INSERT INTO gifi (accno,description) VALUES ('9220','Services publics');
-INSERT INTO gifi (accno,description) VALUES ('9221','Électricité');
-INSERT INTO gifi (accno,description) VALUES ('9222','Eau');
-INSERT INTO gifi (accno,description) VALUES ('9223','Chauffage');
-INSERT INTO gifi (accno,description) VALUES ('9224','Frais de carburant');
-INSERT INTO gifi (accno,description) VALUES ('9270','Autres dépenses');
-INSERT INTO gifi (accno,description) VALUES ('9271','Écarts de caisse');
-INSERT INTO gifi (accno,description) VALUES ('9272','Remboursement de frais de la société mère');
-INSERT INTO gifi (accno,description) VALUES ('9273','Frais de vente');
-INSERT INTO gifi (accno,description) VALUES ('9274','Frais de transport et d\'entreposage');
-INSERT INTO gifi (accno,description) VALUES ('9275','Livraison, fret et messageries');
-INSERT INTO gifi (accno,description) VALUES ('9276','Frais de garantie');
-INSERT INTO gifi (accno,description) VALUES ('9277','Frais de redevances ­ résidents');
-INSERT INTO gifi (accno,description) VALUES ('9278','Frais de redevances ­ non-résidents');
-INSERT INTO gifi (accno,description) VALUES ('9279','Frais de déchargement');
-INSERT INTO gifi (accno,description) VALUES ('9280','Frais d\'enfouissement');
-INSERT INTO gifi (accno,description) VALUES ('9281','Frais de véhicules');
-INSERT INTO gifi (accno,description) VALUES ('9282','Recherche et développement');
-INSERT INTO gifi (accno,description) VALUES ('9283','Retenues d\'impôts');
-INSERT INTO gifi (accno,description) VALUES ('9284','Frais d\'administration et frais généraux');
-INSERT INTO gifi (accno,description) VALUES ('9285','Dépenses entre divisions');
-INSERT INTO gifi (accno,description) VALUES ('9286','Transferts interfonds');
-INSERT INTO gifi (accno,description) VALUES ('9367','Total des frais d\'exploitation');
-INSERT INTO gifi (accno,description) VALUES ('9368','Total des dépenses');
-INSERT INTO gifi (accno,description) VALUES ('9369','Revenu non agricole net');
-INSERT INTO gifi (accno,description) VALUES ('9370','Grains et oléagineux');
-INSERT INTO gifi (accno,description) VALUES ('9371','Blé');
-INSERT INTO gifi (accno,description) VALUES ('9372','Avoine');
-INSERT INTO gifi (accno,description) VALUES ('9373','Orge');
-INSERT INTO gifi (accno,description) VALUES ('9374','Grains mixtes');
-INSERT INTO gifi (accno,description) VALUES ('9375','Maïs');
-INSERT INTO gifi (accno,description) VALUES ('9376','Canola');
-INSERT INTO gifi (accno,description) VALUES ('9377','Graine de lin');
-INSERT INTO gifi (accno,description) VALUES ('9378','Fèves soya');
-INSERT INTO gifi (accno,description) VALUES ('9379','Paiements de la Commission canadienne du blé');
-INSERT INTO gifi (accno,description) VALUES ('9420','Revenus d\'autres récoltes');
-INSERT INTO gifi (accno,description) VALUES ('9421','Fruits');
-INSERT INTO gifi (accno,description) VALUES ('9422','Pommes de terre');
-INSERT INTO gifi (accno,description) VALUES ('9423','Légumes');
-INSERT INTO gifi (accno,description) VALUES ('9424','Tabac');
-INSERT INTO gifi (accno,description) VALUES ('9425','Produits de serre et de pépinière');
-INSERT INTO gifi (accno,description) VALUES ('9426','Récolte de fourrage');
-INSERT INTO gifi (accno,description) VALUES ('9470','Revenus du bétail et des produits d\'origine');
-INSERT INTO gifi (accno,description) VALUES ('9471','Bovins');
-INSERT INTO gifi (accno,description) VALUES ('9472','Porcins');
-INSERT INTO gifi (accno,description) VALUES ('9473','Volaille');
-INSERT INTO gifi (accno,description) VALUES ('9474','Ovins');
-INSERT INTO gifi (accno,description) VALUES ('9475','Urine de jument gravide (UJG)');
-INSERT INTO gifi (accno,description) VALUES ('9476','Lait et crème (à l\'exclusion des subventions pour');
-INSERT INTO gifi (accno,description) VALUES ('9477','OEufs pour la consommation');
-INSERT INTO gifi (accno,description) VALUES ('9478','Couvaison des oeufs');
-INSERT INTO gifi (accno,description) VALUES ('9479','Aquaculture (couvée et élevage)');
-INSERT INTO gifi (accno,description) VALUES ('9480','Chevaux (reproduction et viande)');
-INSERT INTO gifi (accno,description) VALUES ('9520','Autres produits');
-INSERT INTO gifi (accno,description) VALUES ('9521','Produits de l\'érable');
-INSERT INTO gifi (accno,description) VALUES ('9522','Insémination artificielle');
-INSERT INTO gifi (accno,description) VALUES ('9523','Production de sperme');
-INSERT INTO gifi (accno,description) VALUES ('9524','Production d\'embryon');
-INSERT INTO gifi (accno,description) VALUES ('9540','Revenus des paiements de programmes');
-INSERT INTO gifi (accno,description) VALUES ('9541','Subventions laitières');
-INSERT INTO gifi (accno,description) VALUES ('9542','Assurance-récolte');
-INSERT INTO gifi (accno,description) VALUES ('9543','Paiements du CSRN');
-INSERT INTO gifi (accno,description) VALUES ('9544','Paiements provenant du programme d\'aide en cas de catastrophe');
-INSERT INTO gifi (accno,description) VALUES ('9570','Remises');
-INSERT INTO gifi (accno,description) VALUES ('9571','Remises ­ carburant');
-INSERT INTO gifi (accno,description) VALUES ('9572','Remises ­ intérêt');
-INSERT INTO gifi (accno,description) VALUES ('9573','Remises ­ taxes foncières');
-INSERT INTO gifi (accno,description) VALUES ('9574','Reventes, Remises de la TPS pour les dépenses');
-INSERT INTO gifi (accno,description) VALUES ('9575','Remises de la TPS pour les dépenses non');
-INSERT INTO gifi (accno,description) VALUES ('9600','Autres revenus/pertes agricoles');
-INSERT INTO gifi (accno,description) VALUES ('9601','Travail sur commande ou en sous-traitance');
-INSERT INTO gifi (accno,description) VALUES ('9602','Ventes de bois');
-INSERT INTO gifi (accno,description) VALUES ('9603','Courses de chevaux');
-INSERT INTO gifi (accno,description) VALUES ('9604','Produits d\'assurance');
-INSERT INTO gifi (accno,description) VALUES ('9605','Ristournes');
-INSERT INTO gifi (accno,description) VALUES ('9606','Revenu de location');
-INSERT INTO gifi (accno,description) VALUES ('9607','Revenu en intérêt');
-INSERT INTO gifi (accno,description) VALUES ('9608','Revenu de dividendes');
-INSERT INTO gifi (accno,description) VALUES ('9609','Profits/pertes sur la disposition de biens');
-INSERT INTO gifi (accno,description) VALUES ('9610','Gravier');
-INSERT INTO gifi (accno,description) VALUES ('9611','Camionnage');
-INSERT INTO gifi (accno,description) VALUES ('9612','Revente des denrées achetées');
-INSERT INTO gifi (accno,description) VALUES ('9613','Contrat-location (carburant, huile, puits, superficie, etc.)');
-INSERT INTO gifi (accno,description) VALUES ('9614','Location de machines');
-INSERT INTO gifi (accno,description) VALUES ('9615','Revenus/pertes des sociétés de personnes agricoles');
-INSERT INTO gifi (accno,description) VALUES ('9616','Revenus/pertes des coentreprises agricoles');
-INSERT INTO gifi (accno,description) VALUES ('9650','Revenu non agricole');
-INSERT INTO gifi (accno,description) VALUES ('9659','Total des revenus agricoles');
-INSERT INTO gifi (accno,description) VALUES ('9660','Dépenses liées aux récoltes');
-INSERT INTO gifi (accno,description) VALUES ('9661','Contenants, ficelles et fils pour emballage');
-INSERT INTO gifi (accno,description) VALUES ('9662','Engrais et chaux');
-INSERT INTO gifi (accno,description) VALUES ('9663','Pesticides');
-INSERT INTO gifi (accno,description) VALUES ('9664','Semences et plantes');
-INSERT INTO gifi (accno,description) VALUES ('9665','Primes d\'assurance (récolte) CSRN SAR');
-INSERT INTO gifi (accno,description) VALUES ('9710','Dépenses liées au bétail');
-INSERT INTO gifi (accno,description) VALUES ('9711','Fourrage, suppléments, paille et litière');
-INSERT INTO gifi (accno,description) VALUES ('9712','Achats de bétail');
-INSERT INTO gifi (accno,description) VALUES ('9713','Frais de vétérinaire, de médicaments et de reproduction');
-INSERT INTO gifi (accno,description) VALUES ('9714','Sel et minéraux');
-INSERT INTO gifi (accno,description) VALUES ('9760','Dépenses liées aux machines');
-INSERT INTO gifi (accno,description) VALUES ('9761','Assurance pour les machines');
-INSERT INTO gifi (accno,description) VALUES ('9762','Plaques pour les machines');
-INSERT INTO gifi (accno,description) VALUES ('9763','Réparation des machines');
-INSERT INTO gifi (accno,description) VALUES ('9764','Carburant pour les machines');
-INSERT INTO gifi (accno,description) VALUES ('9765','Contrat-location de machines');
-INSERT INTO gifi (accno,description) VALUES ('9790','Dépenses agricoles générales');
-INSERT INTO gifi (accno,description) VALUES ('9791','Amortissement des biens corporels');
-INSERT INTO gifi (accno,description) VALUES ('9792','Publicité, promotion et dépenses de mise en marché');
-INSERT INTO gifi (accno,description) VALUES ('9793','Mauvaises créances');
-INSERT INTO gifi (accno,description) VALUES ('9794','Avantages sociaux liés aux salaires des employés');
-INSERT INTO gifi (accno,description) VALUES ('9795','Réparations et entretien des bâtiments');
-INSERT INTO gifi (accno,description) VALUES ('9796','Défrichage, nivellement et drainage de terrains');
-INSERT INTO gifi (accno,description) VALUES ('9797','Primes d\'assurance-récolte, de RARB et de');
-INSERT INTO gifi (accno,description) VALUES ('9798','Travail sur commande ou en sous-traitance');
-INSERT INTO gifi (accno,description) VALUES ('9799','Électricité');
-INSERT INTO gifi (accno,description) VALUES ('9800','Réparations et entretien des clôtures');
-INSERT INTO gifi (accno,description) VALUES ('9801','Fret et camionnage');
-INSERT INTO gifi (accno,description) VALUES ('9802','Combustible pour chauffage et pour salaison');
-INSERT INTO gifi (accno,description) VALUES ('9803','Remboursement de paiements en trop provenant');
-INSERT INTO gifi (accno,description) VALUES ('9804','Autres primes d\'assurance');
-INSERT INTO gifi (accno,description) VALUES ('9805','Intérêts et frais bancaires');
-INSERT INTO gifi (accno,description) VALUES ('9806','Droits versés à des offices de commercialisation');
-INSERT INTO gifi (accno,description) VALUES ('9807','Frais d\'adhésion');
-INSERT INTO gifi (accno,description) VALUES ('9808','Dépenses de bureau');
-INSERT INTO gifi (accno,description) VALUES ('9809','Honoraires professionnels');
-INSERT INTO gifi (accno,description) VALUES ('9810','Taxes foncières');
-INSERT INTO gifi (accno,description) VALUES ('9811','Location ­ terrain et bâtiments');
-INSERT INTO gifi (accno,description) VALUES ('9812','Location ­ machines');
-INSERT INTO gifi (accno,description) VALUES ('9813','Autres frais de location');
-INSERT INTO gifi (accno,description) VALUES ('9814','Salaires et traitements');
-INSERT INTO gifi (accno,description) VALUES ('9815','Salaires (autre que conjoint et personnes à charge)');
-INSERT INTO gifi (accno,description) VALUES ('9816','Salaires versés aux personnes à charge');
-INSERT INTO gifi (accno,description) VALUES ('9817','Coûts des ventes');
-INSERT INTO gifi (accno,description) VALUES ('9818','Fournitures');
-INSERT INTO gifi (accno,description) VALUES ('9819','Dépenses concernant les véhicules motorisés');
-INSERT INTO gifi (accno,description) VALUES ('9820','Petit outillage');
-INSERT INTO gifi (accno,description) VALUES ('9821','Analyses des sols');
-INSERT INTO gifi (accno,description) VALUES ('9822','Entreposage/séchage');
-INSERT INTO gifi (accno,description) VALUES ('9823','Licences/permis');
-INSERT INTO gifi (accno,description) VALUES ('9824','Téléphone');
-INSERT INTO gifi (accno,description) VALUES ('9825','Location de contingents (tabac, laitier)');
-INSERT INTO gifi (accno,description) VALUES ('9826','Gravier');
-INSERT INTO gifi (accno,description) VALUES ('9827','Achats de produits pour la revente');
-INSERT INTO gifi (accno,description) VALUES ('9828','Salaires et traitements payés au conjoint');
-INSERT INTO gifi (accno,description) VALUES ('9829','Coûts de location et intérêt sur un véhicule');
-INSERT INTO gifi (accno,description) VALUES ('9830','Aliments préparés');
-INSERT INTO gifi (accno,description) VALUES ('9831','Engraissement à forfait');
-INSERT INTO gifi (accno,description) VALUES ('9832','Amortissement des biens incorporels');
-INSERT INTO gifi (accno,description) VALUES ('9833','Amortissement de quote-part de lait');
-INSERT INTO gifi (accno,description) VALUES ('9834','Frais de déplacement');
-INSERT INTO gifi (accno,description) VALUES ('9835','Taxes d\'affaires/sur le capital');
-INSERT INTO gifi (accno,description) VALUES ('9850','Dépenses non agricoles');
-INSERT INTO gifi (accno,description) VALUES ('9870','Régularisation des stocks');
-INSERT INTO gifi (accno,description) VALUES ('9899','Total des revenus agricoles nets');
-INSERT INTO gifi (accno,description) VALUES ('9970','Revenu net/perte nette avant impôts et éléments');
-INSERT INTO gifi (accno,description) VALUES ('9975','Élément(s) extraordinaire(s)');
-INSERT INTO gifi (accno,description) VALUES ('9976','Règlements juridiques');
-INSERT INTO gifi (accno,description) VALUES ('9980','Profits/pertes non matérialisés');
-INSERT INTO gifi (accno,description) VALUES ('9985','Éléments inhabituels');
-INSERT INTO gifi (accno,description) VALUES ('9990','Impôts sur le revenu exigibles de l\'exercice');
-INSERT INTO gifi (accno,description) VALUES ('9995','Provision pour impôts sur le revenu différés');
-INSERT INTO gifi (accno,description) VALUES ('9999','Revenu net/perte nette après impôts et éléments');
diff --git a/sql-ledger/sql/Colombia-PUC-chart.sql b/sql-ledger/sql/Colombia-PUC-chart.sql
deleted file mode 100644
index 9291e31..0000000
--- a/sql-ledger/sql/Colombia-PUC-chart.sql
+++ /dev/null
@@ -1,771 +0,0 @@
---
--- Plan único de Cuentas de Colombia, elaborado por Rene Real Hernandez (SDI S.A.), Francico Padilla (SDI S.A.),
--- Silfredo Godoy Chavez (CaribeNet S.A.),
--- Lourdes Mejía Martinez (CaribeNet S.A.) y Dirk Enrique Seiffert (CaribeNet S.A.)
--- Si quieres aportar: Contactenos www.caribenet.com - info@caribenet.com
---
-
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1', 'ACTIVO', 'H', 'A', '', '1');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('11', 'ACTIVO DISPONIBLE', 'H', 'A', '', '11');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105', 'CAJA', 'H', 'A', '', '1105');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('110505', 'CAJA GENERAL', 'H', 'A', '', '110505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('110510', 'CAJAS MENORES', 'H', 'A', '', '110510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1110', 'BANCOS', 'H', 'A', '', '1110');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('111005', 'BANCOS MONEDA NACIONAL', 'H', 'A', '', '111005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1120', 'CUENTAS DE AHORRO', 'H', 'A', '', '1120');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('112005', 'CUENTAS DE AHORRO EN BANCOS', 'H', 'A', '', '112005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('12', 'INVERSIONES', 'H', 'A', '', '12');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1205', 'ACCIONES', 'H', 'A', '', '1205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1210', 'CUOTAS PARTES DE INTERES SOCIAL', 'H', 'A', '', '1210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1215', 'BONOS', 'H', 'A', '', '1215');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1220', 'CEDULAS', 'H', 'A', '', '1220');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1225', 'CERTIFICADOS', 'H', 'A', '', '1225');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1230', 'PAPELES COMERCIALES', 'H', 'A', '', '1230');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1235', 'TITULOS', 'H', 'A', '', '1235');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1240', 'ACEPTACIONES BANCARIAS O FINANCI', 'H', 'A', '', '1240');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1245', 'DERECHOS FIDUCIARIOS', 'H', 'A', '', '1245');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('13', 'CUENTAS POR COBRAR', 'H', 'A', '', '13');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1305', 'CUENTAS POR COBRAR CLIENTES', 'H', 'A', '', '1305');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('130505', 'CLIENTES NACIONALES', 'H', 'A', '', '130505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('130510', 'CLIENTES DEL EXTERIOR', 'H', 'A', '', '130510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1310', 'CUENTAS CORRIENTES COMERCIALES', 'H', 'A', '', '1310');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1330', 'ANTICIPO Y AVANCES', 'H', 'A', '', '1330');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('133005', 'ANTICIPO A PROVEEDORES', 'H', 'A', '', '133005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('133010', 'ANTICIPO A CONTRATISTAS', 'H', 'A', '', '133010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('133015', 'ANTICIPO A TRABAJADORES', 'H', 'A', '', '133015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1340', 'PROMESAS DE COMPRAVENTA', 'H', 'A', '', '1340');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('134005', 'DE BIENES RAICES', 'H', 'A', '', '134005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1340050001', 'Promesas Compra Venta Bienes Rai', 'A', 'A', '', '1340050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1345', 'INGRESOS POR COBRAR', 'H', 'A', '', '1345');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1350', 'RETENCIONES SOBRE CONTRATOS', 'H', 'A', '', '1350');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135005', 'DE CONTRATOS DE CONSTRUCCION', 'H', 'A', '', '135005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135010', 'DE PRESTACION DE SERVICIOS', 'H', 'A', '', '135010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135095', 'RETENCION SOBRE OTROS CONTRATOS', 'H', 'A', '', '135095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355', 'ANTICIPO DE IMPUESTOS', 'H', 'A', '', '1355');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135505', 'ANTICIPO DE IMPUESTO DE RENTA', 'H', 'A', '', '135505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355050001', 'Anticipo de Impuesto de Renta', 'A', 'A', '', '1355050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135510', 'ANTICIPO DE IMPTO DE IND. Y CCIO', 'H', 'A', '', '135510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355100001', 'Anticipo de Industria y Comercio', 'A', 'A', '', '1355100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135515', 'RETENCION EN LA FUENTE', 'H', 'A', '', '135515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150002', 'Retefuente 10% Honorarios', 'A', 'A', '', '1355150002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150004', 'Retefuente Alquiler Bienes R. 4%', 'A', 'A', '', '1355150004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150005', 'Retefuente Obras Civiles 1%', 'A', 'A', '', '1355150005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150006', 'Retefuente 6% servicios', 'A', 'A', '', '1355150006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150007', 'Retencion en la fuente 3.5%', 'A', 'A', '', '1355150007');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135517', 'IMPUESTO A LAS VENTAS RETENIDO', 'H', 'A', '', '135517');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135518', 'IMPUESTO DE IND. Y CCIO RETENIDO', 'H', 'A', '', '135518');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355180001', 'Ica Retenido', 'A', 'A', '', '1355180001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('135520', 'SOBRANTE EN LIQUIDACION PRIVADA', 'H', 'A', '', '135520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355200001', 'Saldo a Favor en Renta', 'A', 'A', '', '1355200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355200002', 'Sobrante en Declaracion de IVA', 'A', 'A', '', '1355200002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1380', 'DEUDORES VARIOS', 'H', 'A', '', '1380');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('138020', 'CUENTAS POR COBRAR A TERCEROS', 'H', 'A', '', '138020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1380200001', 'Cuentas por Cobrar a Terceros', 'A', 'A', '', '1380200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('138095', 'OTROS DEUDORES VARIOS', 'H', 'A', '', '138095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1380950001', 'Deudores Varios Otros', 'A', 'A', '', '1380950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1390', 'DEUDAS DE DIFICIL COBRO', 'H', 'A', '', '1390');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1399', 'PROVISIONES', 'H', 'A', '', '1399');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('139905', 'PROVISION CLIENTES', 'H', 'A', '', '139905');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1399050001', 'Provision cartera Dificil Cobro', 'A', 'A', '', '1399050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('14', 'INVENTARIOS', 'H', 'A', '', '14');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410', 'PRODUCTOS EN PROCESO', 'H', 'A', '', '1410');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('141005', 'PRODUCTOS EN PROCESO', 'H', 'A', '', '141005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('141099', 'AJ. POR INFLACION INV. EN PROCES', 'H', 'A', '', '141099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1415', 'OBRAS DE CONSTRUCCION EN CURSO', 'H', 'A', '', '1415');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1420', 'CONTRATOS EN EJECUCION', 'H', 'A', '', '1420');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('142099', 'AJ.POR INFLACION CTOS EN EJECUCI', 'H', 'A', '', '142099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1430', 'PRODUCTOS TERMINADOS', 'H', 'A', '', '1430');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('143005', 'PRODUCTOS MANUFACTURADOS', 'H', 'A', '', '143005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('143099', 'AJ.POR INFLACION INV.PROD.TERMIN', 'H', 'A', '', '143099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1435', 'MERCANCIAS NO FABRICADAS', 'H', 'A', '', '1435');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('143505', 'MCIA NO FABRICADA POR LA EMPRESA', 'H', 'A', '', '143505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('143599', 'AJ.POR INFL.MCIA NO FAB.EMPRESA', 'H', 'A', '', '143599');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1465', 'INVENTARIOS EN TRANSITO', 'H', 'A', '', '1465');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('146505', 'INVENTARIOS EN TRANSITO', 'H', 'A', '', '146505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('146599', 'AJ.POR INFLACION INV.EN TRANSITO', 'H', 'A', '', '146599');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15', 'PROPIEDAD PLANTA Y EQUIPO', 'H', 'A', '', '15');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1504', 'TERRENOS', 'H', 'A', '', '1504');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1508', 'CONSTRUCCIONES EN CURSO', 'H', 'A', '', '1508');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1512', 'MAQUINARIA Y EQUIPO EN MONTAJE', 'H', 'A', '', '1512');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516', 'CONSTRUCCIONES Y EDIFICACIONES', 'H', 'A', '', '1516');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('151610', 'OFICINAS', 'H', 'A', '', '151610');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('151699', 'AJUSTES POR INFLACION CONSTRUCCI', 'H', 'A', '', '151699');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15169910', 'AJ. INFL. OFICINAS - LOCALES', 'H', 'A', '', '15169910');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1520', 'MAQUINARIA Y EQUIPO', 'H', 'A', '', '1520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152001', 'CONTRATOS YOPAL', 'H', 'A', '', '152001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152002', 'BODEGA', 'H', 'A', '', '152002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152099', 'AJUSTES POR INFLACION', 'H', 'A', '', '152099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15209902', 'AJUSTES POR INFLACION EQ.BODEGA', 'H', 'A', '', '15209902');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1524', 'EQUIPOS DE OFICINA', 'H', 'A', '', '1524');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152405', 'MUEBLES Y ENSERES', 'H', 'A', '', '152405');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152410', 'EQUIPOS', 'H', 'A', '', '152410');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152499', 'AJUSTES POR INFLACION', 'H', 'A', '', '152499');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15249910', 'AJUSTES POR INFLACION', 'H', 'A', '', '15249910');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1528', 'EQUIPOS DE COMPUTACION Y COMUNIC', 'H', 'A', '', '1528');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152805', 'EQUIPOS DE PROCESAMIENTO DE DATO', 'H', 'A', '', '152805');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1528050001', 'Cinco Computadores', 'A', 'A', '', '1528050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('152899', 'AJUSTES POR INFLACION', 'H', 'A', '', '152899');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15289905', 'AJ. INFL. EQ. PROCESAMIENTO DATO', 'H', 'A', '', '15289905');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1528990501', 'Aj. por Inflac. Cinco Computador', 'A', 'A', '', '1528990501');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1540', 'FLOTA Y EQUIPO DE TRANSPORTE', 'H', 'A', '', '1540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('154005', 'AUTOS, CAMIONETAS Y CAMPEROS', 'H', 'A', '', '154005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('154099', 'AJUSTES POR INFLACION', 'H', 'A', '', '154099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('15409905', 'AJ. INFL. AUTOS CAMPEROS CMIONET', 'H', 'A', '', '15409905');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1540990501', 'Aj. Infl. Autos y Camperos', 'A', 'A', '', '1540990501');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592', 'DEPRECIACION ACUMULADA', 'H', 'A', '', '1592');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159205', 'DEPREC.DE CONSTRUCCIONES Y EDIFI', 'H', 'A', '', '159205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159210', 'DEPREC. MAQUINARIA Y EQUIPO', 'H', 'A', '', '159210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159215', 'DEPRECIACION EQUIPO DE OFICINA', 'H', 'A', '', '159215');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159220', 'DEPRECIACION EQ. COMPUTACION Y C', 'H', 'A', '', '159220');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592200001', 'Depreciacion Cinco Computadores', 'A', 'A', '', '1592200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159235', 'DEPRECIACION FLOTA DE TRANSPORTE', 'H', 'A', '', '159235');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('159299', 'AJUSTES POR INFLACION', 'H', 'A', '', '159299');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592990005', 'Aj.Infl. Construc. y Edificacion', 'A', 'A', '', '1592990005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592990010', 'Aj.Infl. Maquinaria y Equipo', 'A', 'A', '', '1592990010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592990015', 'Aj. Infl. Equipos de Oficina', 'A', 'A', '', '1592990015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592990020', 'Aj. Infl. Eq. Computac. y Comuni', 'A', 'A', '', '1592990020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592990035', 'Aj. Infl. Flota y Eq. de transpo', 'A', 'A', '', '1592990035');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('19', 'VALORIZACIONES', 'H', 'A', '', '19');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1905', 'VALORIZACIONES DE INVERSIONES', 'H', 'A', '', '1905');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1910', 'DE PROPIEDAD PLANTA Y EQUIPOS', 'H', 'A', '', '1910');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('191008', 'DE CONSTRUCCIONES Y EDIFICACIONE', 'H', 'A', '', '191008');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1995', 'VALORIZACION DE OTROS ACTIVOS', 'H', 'A', '', '1995');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2', 'PASIVOS', 'H', 'L', '', '2');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('21', 'OBLIGACIONES FINANCIERAS', 'H', 'L', '', '21');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2105', 'BANCOS NACIONALES', 'H', 'L', '', '2105');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('210505', 'SOBREGIROS', 'H', 'L', '', '210505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2105050001', 'Sobregiros Bancarios', 'A', 'L', '', '2105050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('210510', 'PAGARES', 'H', 'L', '', '210510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2105100001', 'Pagares', 'A', 'L', '', '2105100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2130', 'ENTIDADES FINANCIERAS DEL EXTERI', 'H', 'L', '', '2130');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2145', 'OBLIGACIONES GUBERNAMENTALES', 'H', 'L', '', '2145');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2195', 'OTRAS OBLIGACIONES', 'H', 'L', '', '2195');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('219505', 'OBLIGACIONES CON PARTICULARES', 'H', 'L', '', '219505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2195050001', 'Otras obligaciones con Particula', 'A', 'L', '', '2195050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('219510', 'OBLIGACIONES COMPA?IAS VINCULADA', 'H', 'L', '', '219510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('22', 'PROVEEDORES', 'H', 'L', '', '22');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2205', 'PROVEEDORES NACIONALES', 'H', 'L', '', '2205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('220505', 'PROVEEDORES NACIONALES', 'H', 'L', '', '220505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('23', 'CUENTAS POR PAGAR', 'H', 'L', '', '23');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2320', 'CUENTAS POR PAGAR A CONTRATISTAS', 'H', 'L', '', '2320');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('232005', 'CUENTAS POR PAGAR A CONTRATISTAS', 'H', 'L', '', '232005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2335', 'COSTOS Y GASTOS POR PAGAR', 'H', 'L', '', '2335');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233505', 'GASTOS FINANCIEROS', 'H', 'L', '', '233505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233510', 'GASTOS LEGALES', 'H', 'L', '', '233510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233515', 'LIBROS SUSCRIPCIONES PERIODICOS', 'H', 'L', '', '233515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233520', 'COMISIONES', 'H', 'L', '', '233520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233525', 'HONORARIOS', 'H', 'L', '', '233525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233530', 'SERVICIOS TECNICOS', 'H', 'L', '', '233530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233535', 'SERVICIOS DE MANTENIMIENTO', 'H', 'L', '', '233535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233540', 'ARRENDAMIENTOS', 'H', 'L', '', '233540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233545', 'TRANSPORTES FLETES Y ACARREOS', 'H', 'L', '', '233545');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233550', 'SERVICIOS PUBLICOS', 'H', 'L', '', '233550');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233555', 'SEGUROS', 'H', 'L', '', '233555');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233560', 'GASTOS DE VIAJE', 'H', 'L', '', '233560');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233565', 'GASTOS DE REPRESENTACION Y RELAC', 'H', 'L', '', '233565');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233570', 'SERVICIOS ADUANEROS', 'H', 'L', '', '233570');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('233595', 'OTROS COSTOS Y GASTOS POR PAGAR', 'H', 'L', '', '233595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2355', 'DEUDAS CON SOCIOS Y ACCIONISTAS', 'H', 'L', '', '2355');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('235505', 'ACCIONISTAS', 'H', 'L', '', '235505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('235510', 'SOCIOS', 'H', 'L', '', '235510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2360', 'DIVIDENDOS O PARTICIPACION POR P', 'H', 'L', '', '2360');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236005', 'DIVIDENDOS POR PAGAR', 'H', 'L', '', '236005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236010', 'PARTICIPACIONES POR PAGAR', 'H', 'L', '', '236010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365', 'RETENCION EN LA FUENTE', 'H', 'L', '', '2365');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236505', 'SALARIOS Y PAGOS LABORALES', 'H', 'L', '', '236505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236510', 'DIVIDENDO Y/O PARTICIPACIONES', 'H', 'L', '', '236510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236515', 'HONORARIOS', 'H', 'L', '', '236515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236520', 'COMISIONES', 'H', 'L', '', '236520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236525', 'SERVICIOS', 'H', 'L', '', '236525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365250002', 'Servicios Hoteleros 3.5%', 'A', 'L', '', '2365250002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236530', 'ARRENDAMIENTOS', 'H', 'L', '', '236530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365300002', 'Arriendo Inmuebles 4%', 'A', 'L', '', '2365300002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236535', 'RENDIMIENTOS FINANCIERSO', 'H', 'L', '', '236535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236540', 'RETENCION POR COMPRAS', 'H', 'L', '', '236540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368', 'IMPTO DE IND. Y CCIO RETENIDO', 'H', 'L', '', '2368');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236801', 'SECTOR INDUSTRIAL', 'H', 'L', '', '236801');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368010003', 'Demas Activ. Industriales 7xmil', 'A', 'L', '', '2368010003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236802', 'SECTOR COMERCIAL', 'H', 'L', '', '236802');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368020004', 'Demas Activ. Comerciales 7xmil', 'A', 'L', '', '2368020004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236803', 'SECTOR SERVICIOS', 'H', 'L', '', '236803');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368030001', 'Retencin ICA 6xMil', 'A', 'L', '', '2368030001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368030009', 'Demas Activ. Servicios 8xmil', 'A', 'L', '', '2368030009');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2370', 'RETENCIONES Y APORTES DE NOMINA', 'H', 'L', '', '2370');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('237005', 'APORTES A EPS', 'H', 'L', '', '237005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2370050001', 'Aportes a EPS', 'A', 'L', '', '2370050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('237006', 'APORTES A ARP', 'H', 'L', '', '237006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('237010', 'APORTES A IDBF, SENA Y CAJAS COM', 'H', 'L', '', '237010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2380', 'ACREEDORES VARIOS', 'H', 'L', '', '2380');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('238030', 'FONDOS DE CESANTIAS Y/O PENSION', 'H', 'L', '', '238030');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('238095', 'VARIOS', 'H', 'L', '', '238095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('24', 'IMPUESTOS GRAVAMENES Y TASAS', 'H', 'L', '', '24');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2404', 'IMPUESTO DE RENTA', 'H', 'L', '', '2404');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('240405', 'VIGENCIA FISCAL CORRIENTE', 'H', 'L', '', '240405');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2404050001', 'IMPORENTA VIGENCIA ACTUAL', 'A', 'L', '', '2404050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('240410', 'VIGENCIAS FISCALES ANTERIORES', 'H', 'L', '', '240410');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2404100001', 'IMPORENTA VIGENCIA ANTERIORES', 'A', 'L', '', '2404100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408', 'IMPUESTO A LAS VENTAS POR PAGAR', 'H', 'L', '', '2408');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('240805', 'IVA DESCONTABLE', 'H', 'L', '', '240805');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('240810', 'IVA GENERADO EN VENTAS', 'H', 'L', '', '240810');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('240815', 'IMPUESTOS POR PAGAR ANTERIORES', 'H', 'L', '', '240815');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408150001', 'ViGencia Fiscal Anterior', 'A', 'L', '', '2408150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2412', 'IMPUESTO DE IND. Y COMERCIO', 'H', 'L', '', '2412');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('241205', 'VIGENCIA FISCAL CORRIENTE', 'H', 'L', '', '241205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2412050001', 'ICA POR PAGAR', 'A', 'L', '', '2412050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('241210', 'VIGENCIAS FISCALES ANTERIORES', 'H', 'L', '', '241210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('25', 'OBLIGACIONES LABORALES', 'H', 'L', '', '25');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2505', 'SALARIOS POR PAGAR', 'H', 'L', '', '2505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('250505', 'NOMINA POR PAGAR', 'H', 'L', '', '250505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2510', 'CESANTIAS CONSOLIDADAS', 'H', 'L', '', '2510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2515', 'INTERESES SOBRE CESANTIAS', 'H', 'L', '', '2515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2520', 'PRIMA DE SERVICIOS', 'H', 'L', '', '2520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2525', 'VACACIONES CONSOLIDADAS', 'H', 'L', '', '2525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2530', 'PRESTACIONES EXTRALEGALES', 'H', 'L', '', '2530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('26', 'PASIVOS ESTIMADOS Y PROVISIONES', 'H', 'L', '', '26');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2605', 'PARA COSTOS Y GASTOS', 'H', 'L', '', '2605');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('260515', 'HONORARIOS', 'H', 'L', '', '260515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('260525', 'TRANSPORTES FLETES Y ACARREOS', 'H', 'L', '', '260525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('260530', 'GASTOS DE VIAJE', 'H', 'L', '', '260530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2610', 'PARA OBLIGACIONES LABORALES', 'H', 'L', '', '2610');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261005', 'CESANTIAS', 'H', 'L', '', '261005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261010', 'INTERESES SOBRE CESANTIAS', 'H', 'L', '', '261010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261015', 'VACACIONES', 'H', 'L', '', '261015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261020', 'PRIMA DE SERVICIOS', 'H', 'L', '', '261020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2615', 'PARA OBLIGACIONES FISCALES', 'H', 'L', '', '2615');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261505', 'DE RENTA Y COMPLEMENTARIOS', 'H', 'L', '', '261505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2615050001', 'Impuesto de Renta y Complementar', 'A', 'L', '', '2615050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261510', 'DE INDUSTRIA Y COMERCIO', 'H', 'L', '', '261510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('261595', 'OTROS', 'H', 'L', '', '261595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2630', 'PARA MANTENIMIENTO Y REPARACION', 'H', 'L', '', '2630');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2635', 'PARA CONTINGENCIAS', 'H', 'L', '', '2635');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('263505', 'MULTAS SANCIONES Y LITIGIOS', 'H', 'L', '', '263505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('263510', 'INTERESES POR MULTAS Y SANCIONES', 'H', 'L', '', '263510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('28', 'OTROS PASIVOS', 'H', 'L', '', '28');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2805', 'ANTICIPOS Y AVANCES RECIBIDOS', 'H', 'L', '', '2805');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('280505', 'DE CLIENTES', 'H', 'L', '', '280505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('280510', 'SOBRE CONTRATOS', 'H', 'L', '', '280510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2805100001', 'Anticipo Recibido Sobre Contrato', 'A', 'L', '', '2805100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('280515', 'PARA OBRAS EN PROCESO', 'H', 'L', '', '280515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2815', 'INGRESOS RECIBIDOS PARA TERCEROS', 'H', 'L', '', '2815');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('281505', 'VALORES RECIBIDOS PARA TERCEROS', 'H', 'L', '', '281505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('281510', 'VENTA POR CUENTA DE TERCEROS', 'H', 'L', '', '281510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2825', 'RETENCION A TERCEROS SOBRE CONTR', 'H', 'L', '', '2825');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('282505', 'CUMPLIMIENTO OBLIGACIONES LABORA', 'H', 'L', '', '282505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3', 'PATRIMONIO', 'H', 'Q', '', '3');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('31', 'CAPITAL SOCIAL', 'H', 'Q', '', '31');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3105', 'CAPITAL SUSCRITO Y PAGADO', 'H', 'Q', '', '3105');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('310505', 'CAPITAL AUTORIZADO', 'H', 'Q', '', '310505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3105050001', 'Capital Suscrito y Pagado', 'A', 'Q', '', '3105050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('310510', 'CAPITAL POR SUSCRIBIR (DB)', 'H', 'Q', '', '310510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('310515', 'CAPITAL SUSCRITO POR COBRAR (DB)', 'H', 'Q', '', '310515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3115', 'APORTES SOCIALES', 'H', 'Q', '', '3115');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('33', 'RESERVAS', 'H', 'Q', '', '33');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3305', 'RESERVAS OBLIGATORIAS', 'H', 'Q', '', '3305');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('330505', 'RESERVA LEGAL', 'H', 'Q', '', '330505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3305050001', 'Reserva Legal', 'A', 'Q', '', '3305050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3310', 'RESERVAS ESTATUTARIAS', 'H', 'Q', '', '3310');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3315', 'RESERVAS OCASIONALES', 'H', 'Q', '', '3315');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('34', 'REVALORIZACION DEL PATRIMONIO', 'H', 'Q', '', '34');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3405', 'AJUSTES POR INFLACION', 'H', 'Q', '', '3405');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340505', 'DE CAPITAL SOCIAL', 'H', 'Q', '', '340505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3405050001', 'AxI CAPITAL', 'A', 'Q', '', '3405050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340510', 'DE SUPERAVIT DE CAPITAL', 'H', 'Q', '', '340510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340515', 'DE RESERVAS', 'H', 'Q', '', '340515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3405150001', 'AxI RESERVA LEGAL', 'A', 'Q', '', '3405150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340520', 'DE RESULTADO DE EJERC. ANTERIORE', 'H', 'Q', '', '340520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3405200001', 'AxI RESULTADOS ANTERIORES', 'A', 'Q', '', '3405200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340525', 'DE ACTIVOS DE PERIODO IMPRODUCTI', 'H', 'Q', '', '340525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340530', 'DE SANEAMIENTO FISCAL', 'H', 'Q', '', '340530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340535', 'DE AJUSTES DECRETO 3019 DE 1989', 'H', 'Q', '', '340535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340540', 'DE DIVIDENDOS Y PARTICIPACIONES', 'H', 'Q', '', '340540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('340545', 'SUPERAVIT METODO DE PARTICIPACIO', 'H', 'Q', '', '340545');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('36', 'RESULTADOS DE EJERCICIO', 'H', 'Q', '', '36');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3605', 'UTILIDAD DEL EJERCICIO', 'H', 'Q', '', '3605');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('360505', 'UTILIDAD DEL EJERCICIO', 'H', 'Q', '', '360505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3605050001', 'Utilidad del Ejercicio', 'A', 'Q', '', '3605050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3605050002', 'Utilidad de Ajustes por Inflacio', 'A', 'Q', '', '3605050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3610', 'PERDIDAS DEL EJERCICIO', 'H', 'Q', '', '3610');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('361005', 'PERDIDA DEL EJERCICIO', 'H', 'Q', '', '361005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3610050001', 'Perdida del Ejercicio', 'A', 'Q', '', '3610050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('37', 'RESULTADOS EJERCICIOS ANRERIORES', 'H', 'Q', '', '37');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3705', 'UTILIDADES ACUMULADAS', 'H', 'Q', '', '3705');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('370510', 'UTILIDADES ACUMULADAS', 'H', 'Q', '', '370510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3705100001', 'Utilidades Acumuladas', 'A', 'Q', '', '3705100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3710', 'PERDIDAS ACUMULADAS', 'H', 'Q', '', '3710');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('371010', 'PERDIDAS ACUMULADAS', 'H', 'Q', '', '371010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3710100001', 'Perdidas Acumuladas', 'A', 'Q', '', '3710100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('38', 'SUPERAVIT POR VALORIZACIONES', 'H', 'Q', '', '38');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3805', 'DE INVERSIONES', 'H', 'Q', '', '3805');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('380505', 'DE ACCIONES', 'H', 'Q', '', '380505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('380510', 'CUOTAS O PARTES DE INTERES SOCIA', 'H', 'Q', '', '380510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3810', 'DE PROPIEDAD PLANTA Y EQUIPO', 'H', 'Q', '', '3810');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('381008', 'CONSTRUCCIONES Y EDIFICACIONES', 'H', 'Q', '', '381008');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3810080001', 'Superavit por Valorizacion C y E', 'A', 'Q', '', '3810080001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3895', 'DE OTROS ACTIVOS', 'H', 'Q', '', '3895');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4', 'INGRESOS', 'H', 'I', '', '4');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('41', 'INGRESOS OPERACIONALES', 'H', 'I', '', '41');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4120', 'INDUSTRIA MANUFACTURERA', 'H', 'I', '', '4120');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4130', 'CONSTRUCCION', 'H', 'I', '', '4130');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('413005', 'PREPARACION DE TERRENOS', 'H', 'I', '', '413005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('413010', 'CONSTRUCCION Y OBRAS CIVILES', 'H', 'I', '', '413010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('413025', 'ALQUILER DE EQUIPOS CON OPERARIO', 'H', 'I', '', '413025');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('413095', 'ACTIVIDADES CONEXAS', 'H', 'I', '', '413095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4135', 'COMERCIO AL POR MAYOR', 'H', 'I', '', '4135');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('413595', 'ACTIVIDADES CONEXAS', 'H', 'I', '', '413595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4150', 'ACTIVIDAD FINANCIERA', 'H', 'I', '', '4150');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('415030', 'COMISIONES', 'H', 'I', '', '415030');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4175', 'DEVOLUCIONES EN VENTAS', 'H', 'I', '', '4175');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('417505', 'DEVOLUCIONES EN VENTAS', 'H', 'I', '', '417505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4175050001', 'Devoluciones en Ventas', 'A', 'I', '', '4175050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4175050002', 'Descuento en Ventas', 'A', 'I', '', '4175050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('42', 'INGRESOS NO OPERACIONALES', 'H', 'I', '', '42');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4205', 'OTRAS VENTAS', 'H', 'I', '', '4205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('420505', 'MATERIA PRIMA', 'H', 'I', '', '420505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('420510', 'MATERIAL DE DESECHO', 'H', 'I', '', '420510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4210', 'INGRESOS FINANCIEROS', 'H', 'I', '', '4210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('421005', 'INTERESES', 'H', 'I', '', '421005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('421040', 'DESCUENTOS COMERCIALES CONDICION', 'H', 'I', '', '421040');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4210400001', 'Descuentos Financieros', 'A', 'I', '', '4210400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4215', 'DIVIDENDOS Y PARTICIPACIONES', 'H', 'I', '', '4215');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4220', 'ARRENDAMIENTOS', 'H', 'I', '', '4220');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('422010', 'CONSTRUCCIONES Y EDIFICACIONES', 'H', 'I', '', '422010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('422015', 'MAQUINARIA Y EQUIPOS', 'H', 'I', '', '422015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4225', 'COMISIONES', 'H', 'I', '', '4225');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4230', 'HONORARIOS', 'H', 'I', '', '4230');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4235', 'SERVICIOS', 'H', 'I', '', '4235');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('423595', 'OTROS SERVICIOS', 'H', 'I', '', '423595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4240', 'UTILIDAD EN VENTA DE INVERSIONES', 'H', 'I', '', '4240');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4245', 'UTIL.EN VENTA PROP.PLANTA Y EQUI', 'H', 'I', '', '4245');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4250', 'RECUPERACIONES', 'H', 'I', '', '4250');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('425005', 'DEUDAS MALAS', 'H', 'I', '', '425005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('425015', 'RECLAMOS', 'H', 'I', '', '425015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4255', 'INDEMNIZACIONES', 'H', 'I', '', '4255');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4260', 'PARTICIPACION EN CONCESIONES', 'H', 'I', '', '4260');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4265', 'INGRESOS DE EJERCICIOS ANTERIORE', 'H', 'I', '', '4265');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4275', 'DEVOLUCIONES EN OTRAS VENTAS', 'H', 'I', '', '4275');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4295', 'DIVERSOS', 'H', 'I', '', '4295');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429503', 'CERT', 'H', 'I', '', '429503');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429505', 'APROVECHAMIENTOS', 'H', 'I', '', '429505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429507', 'AUXILIOS', 'H', 'I', '', '429507');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429533', 'MULTAS Y RECARGOS', 'H', 'I', '', '429533');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429535', 'PREAVISOS DESCONTADOS', 'H', 'I', '', '429535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429537', 'RECLAMOS', 'H', 'I', '', '429537');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429553', 'SOBRANTES DE CAJA', 'H', 'I', '', '429553');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429581', 'AJUSTE AL PESO', 'H', 'I', '', '429581');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429583', 'LLAMADAS TELEFONICAS', 'H', 'I', '', '429583');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('47', 'AJUSTES POR INFLACION', 'H', 'I', '', '47');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705', 'CORRECCION MONETARIA', 'H', 'I', '', '4705');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470505', 'INVERSIONES (CR)', 'H', 'I', '', '470505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470510', 'INVENTARIOS (CR)', 'H', 'I', '', '470510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100005', 'Inventario Materia Prima', 'A', 'I', '', '4705100005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100010', 'Inventario Productos en Proceso', 'A', 'I', '', '4705100010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100015', 'Obras de construccion en curso', 'A', 'I', '', '4705100015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100020', 'Inventario contratos en ejecucio', 'A', 'I', '', '4705100020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100030', 'Inventario Producto terminado', 'A', 'I', '', '4705100030');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100035', 'Inv. Mercancia no Fabricada', 'A', 'I', '', '4705100035');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705100065', 'Inventarios en transito', 'A', 'I', '', '4705100065');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470515', 'PROPIEDAD PLANTA Y EQUIPO (CR)', 'H', 'I', '', '470515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150001', 'Terrenos', 'A', 'I', '', '4705150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150003', 'Construcciones en Curso', 'A', 'I', '', '4705150003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150004', 'Maquinaria y Equipo en Montaje', 'A', 'I', '', '4705150004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150005', 'Construcciones y Edificaciones', 'A', 'I', '', '4705150005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150006', 'Maquinaria y Equipos', 'A', 'I', '', '4705150006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150007', 'Equipos de Oficina', 'A', 'I', '', '4705150007');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150008', 'Equipos de Computacion y comunic', 'A', 'I', '', '4705150008');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705150011', 'Flota y Equipo de transporte', 'A', 'I', '', '4705150011');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470540', 'PATRIMONIO', 'H', 'I', '', '470540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705400001', 'Aj. por Infl. Patrimonio', 'A', 'I', '', '4705400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470545', 'DEPRECIACION ACUMULADA (DB)', 'H', 'I', '', '470545');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4705450001', 'Depreciacion Acumulada (DB)', 'A', 'I', '', '4705450001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470550', 'DEPRECIACION DIFERIDA (CR)', 'H', 'I', '', '470550');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('470560', 'AMORTIZACION ACUMULADA (DB)', 'H', 'I', '', '470560');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5', 'GASTOS', 'H', 'E', '', '5');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('51', 'GASTOS OPERACIONALES DE ADMON.', 'H', 'E', '', '51');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5105', 'GASTOS DE PERSONAL', 'H', 'E', '', '5105');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('510548', 'BONIFICACION', 'H', 'E', '', '510548');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('52', 'GASTOS OPERACIONALES DE VENTAS', 'H', 'E', '', '52');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205', 'GASTOS DE PERSONAL', 'H', 'E', '', '5205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520506', 'SUELDOS', 'H', 'E', '', '520506');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520527', 'AUXILIO DE TRANSPORTE', 'H', 'E', '', '520527');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520530', 'CESANTIAS', 'H', 'E', '', '520530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520533', 'INTERESES SOBRE CESANTIAS', 'H', 'E', '', '520533');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205330001', 'Intereses Sobre Cesantias', 'A', 'E', '', '5205330001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520536', 'PRIMAS DE SERVICIOS', 'H', 'E', '', '520536');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520539', 'VACACIONES', 'H', 'E', '', '520539');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520548', 'BONIFICACIONES', 'H', 'E', '', '520548');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205480001', 'Bonificaciones a Empleados', 'A', 'E', '', '5205480001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520563', 'CAPACITACION AL PERSONAL', 'H', 'E', '', '520563');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205630001', 'Capacitacion al Personal', 'A', 'E', '', '5205630001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520568', 'APORTES ARP', 'H', 'E', '', '520568');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520569', 'APORTES EPS', 'H', 'E', '', '520569');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520570', 'APORTES A FONDO DE PENSIONES/CES', 'H', 'E', '', '520570');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520572', 'APORTES CAJAS DE COMPENSACION', 'H', 'E', '', '520572');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520575', 'APORTES ICBF', 'H', 'E', '', '520575');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520578', 'APORTES SENA', 'H', 'E', '', '520578');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('520595', 'OTROS GASTOS DE PERSONAL', 'H', 'E', '', '520595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205950001', 'Otros Gastos de personal', 'A', 'E', '', '5205950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5210', 'HONORARIOS', 'H', 'E', '', '5210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521005', 'JUNTA DIRECTIVA', 'H', 'E', '', '521005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521010', 'REVISORIA FISCAL', 'H', 'E', '', '521010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521015', 'AUDITORIA EXTERNA', 'H', 'E', '', '521015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521025', 'ASESORIA JURIDICA', 'H', 'E', '', '521025');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521030', 'ASESORIA FINANCIERA', 'H', 'E', '', '521030');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521035', 'ASESORIA TECNICA', 'H', 'E', '', '521035');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521095', 'OTROS HONORARIOS', 'H', 'E', '', '521095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5210950001', 'Estudio y Dise¤o de Planos', 'A', 'E', '', '5210950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215', 'IMPUESTOS', 'H', 'E', '', '5215');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521505', 'INDUSTRIA Y COMERCIO', 'H', 'E', '', '521505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215050001', 'Impuesto de Industria y Comercio', 'A', 'E', '', '5215050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521510', 'DE TIMBRES', 'H', 'E', '', '521510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215100001', 'Impuesto de Timbre', 'A', 'E', '', '5215100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521515', 'IMPUESTOS A LA PROPIEDAD RAIZ', 'H', 'E', '', '521515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215200001', 'DERECHOS SOBRE INSTRUMENTOS PUBL', 'A', 'E', '', '5215200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521540', 'IMPUESTOS SOBRE VEHICULOS', 'H', 'E', '', '521540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215400001', 'Impuestos Sobre Vehiculos', 'A', 'E', '', '5215400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('521595', 'OTROS IMPUESTOS', 'H', 'E', '', '521595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5220', 'ARRENDAMIENTOS', 'H', 'E', '', '5220');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('522010', 'CONSTRUCCIONES U EDIFICACIONES', 'H', 'E', '', '522010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('522015', 'MAQUINARIA Y EQUIPO', 'H', 'E', '', '522015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5220150001', 'Arriendo Maquinaria y Equipo', 'A', 'E', '', '5220150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('522025', 'EQUIPOS DE COMPUTACION Y COMUNIC', 'H', 'E', '', '522025');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5220250001', 'Alquiler Eq. Computacion y Comun', 'A', 'E', '', '5220250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('522040', 'FLOTA Y EQUIPO DE TRANSPORTE', 'H', 'E', '', '522040');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5220400001', 'Alquiler de Vehiculos y Camiones', 'A', 'E', '', '5220400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5230', 'SEGUROS', 'H', 'E', '', '5230');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523005', 'MANEJO', 'H', 'E', '', '523005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523010', 'CUMPLIMIENTO', 'H', 'E', '', '523010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5230100001', 'Polizas de Cumplimiento', 'A', 'E', '', '5230100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523040', 'FLOTA Y EQUIPO DE TRANSPORTE', 'H', 'E', '', '523040');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523075', 'OBLIGATORIO ACCIDENTES DE TRANSI', 'H', 'E', '', '523075');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235', 'SERVICIOS', 'H', 'E', '', '5235');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523505', 'ASEO Y VIGILANCIA', 'H', 'E', '', '523505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523515', 'ASSITENCIA TECNICA', 'H', 'E', '', '523515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523520', 'PROCESAMIENTO ELECTRONICO DE DAT', 'H', 'E', '', '523520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235200001', 'Procesamiento electronico de Dat', 'A', 'E', '', '5235200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523525', 'ACUEDUCTO Y ALCANTARILLADO', 'H', 'E', '', '523525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523530', 'ENERGIA ELECTRICA', 'H', 'E', '', '523530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523535', 'TELEFONO', 'H', 'E', '', '523535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523540', 'CORREO PORTES Y TELEGRAMAS', 'H', 'E', '', '523540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523545', 'FAX Y TELEX', 'H', 'E', '', '523545');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235450001', 'fax y Telex', 'A', 'E', '', '5235450001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523550', 'TRANSPORTES FLETES Y ACARREOS', 'H', 'E', '', '523550');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523555', 'GAS', 'H', 'E', '', '523555');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523560', 'PUBLICIDAD PROPAGANDA Y PROMOCIO', 'H', 'E', '', '523560');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235600001', 'Publicidad Propaganda y Promocio', 'A', 'E', '', '5235600001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('523595', 'OTROS SERVICIOS', 'H', 'E', '', '523595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950002', 'Fabricacion y Elaboracion', 'A', 'E', '', '5235950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950004', 'Capacitacion a Contratistas', 'A', 'E', '', '5235950004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950007', 'Digitación y archivo documentos', 'A', 'E', '', '5235950007');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240', 'GASTOS LEGALES', 'H', 'E', '', '5240');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524005', 'NOTARIALES', 'H', 'E', '', '524005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524010', 'REGISTRO MERCANTIL', 'H', 'E', '', '524010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240100001', 'Registro Mercantil', 'A', 'E', '', '5240100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524015', 'TRAMITES Y LICENCIAS', 'H', 'E', '', '524015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524095', 'OTROS GASTOS LEGALES', 'H', 'E', '', '524095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950001', 'Tramite de Vehiculos', 'A', 'E', '', '5240950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950003', 'Sobretasa', 'A', 'E', '', '5240950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950004', 'Dcmtos Varios en Camara Comercio', 'A', 'E', '', '5240950004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950005', 'Floio para Libros Legales', 'A', 'E', '', '5240950005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950006', 'Impuesto para preservar la Segur', 'A', 'E', '', '5240950006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245', 'MANTENIMIENTO Y REPARACIONES', 'H', 'E', '', '5245');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524510', 'CONSTRUCCIONES Y EDIFICACIONES', 'H', 'E', '', '524510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245100001', 'Construcciones y Edificaciones', 'A', 'E', '', '5245100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524515', 'MAQUINARIA Y EQUIPOS', 'H', 'E', '', '524515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245150001', 'Equipo de Refrigeracion', 'A', 'E', '', '5245150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245150002', 'Equipos de Ingenieria Civil', 'A', 'E', '', '5245150002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245150003', 'Repuestos y Herramientas', 'A', 'E', '', '5245150003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524520', 'EQUIPO DE OFICINA', 'H', 'E', '', '524520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245200001', 'Equipo de Oficina', 'A', 'E', '', '5245200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524525', 'EQUIPO DE COMPUTACION Y COMUNICA', 'H', 'E', '', '524525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245250001', 'Mtto y Rep. Eq. Computacion y Co', 'A', 'E', '', '5245250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('524540', 'FLOTA Y EQUIPO DE TRANSPORTE', 'H', 'E', '', '524540');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5245400001', 'Mantenimiento de Vehiculos', 'A', 'E', '', '5245400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5250', 'ADECUACION E INSTALACION', 'H', 'E', '', '5250');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525005', 'INSTALACIONES ELECTRICAS', 'H', 'E', '', '525005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5250050001', 'Instalaciones Electricas', 'A', 'E', '', '5250050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525010', 'ARREGLOS ORNAMENTALES', 'H', 'E', '', '525010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525015', 'REPARACIONES LOCATIVAS', 'H', 'E', '', '525015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525095', 'OTROS ADECUACIONES E INSTALACION', 'H', 'E', '', '525095');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255', 'GASTOS DE VIAJE', 'H', 'E', '', '5255');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525505', 'ALOJAMIENTO Y MANUTENCION', 'H', 'E', '', '525505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525515', 'PASAJES AEREOS', 'H', 'E', '', '525515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525520', 'PASAJES TERRESTRES', 'H', 'E', '', '525520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255200001', 'Pasajes Terrestres', 'A', 'E', '', '5255200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('525595', 'OTROS GASTOS DE VIAJE', 'H', 'E', '', '525595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255950002', 'Llamadas Telefonicas en Viajes', 'A', 'E', '', '5255950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260', 'DEPRECIACIONES', 'H', 'E', '', '5260');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526005', 'CONSTRUCCIONES Y EDIFICACIONES', 'H', 'E', '', '526005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260050001', 'Depreciacion Locales Tequendama', 'A', 'E', '', '5260050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526010', 'MAQUINARIA Y EQUIPO', 'H', 'E', '', '526010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260100001', 'Depreciacion de maq. y Equipos', 'A', 'E', '', '5260100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526015', 'EQUIPOS DE OFICINA', 'H', 'E', '', '526015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260150001', 'Depreciacion Equipos de Oficina', 'A', 'E', '', '5260150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526020', 'EQUIPOS DE COMPUTACION Y COMUNIC', 'H', 'E', '', '526020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260200001', 'Depreciacion Eq. de Computacion', 'A', 'E', '', '5260200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526035', 'FLOTA Y EQUIPO DE TRANSPORTE', 'H', 'E', '', '526035');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260350001', 'Depreciacion de Vehiculos', 'A', 'E', '', '5260350001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('526099', 'AJUSTES POR INLFACION', 'H', 'E', '', '526099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260990005', 'Aj. Infl. Construcciones y Edif.', 'A', 'E', '', '5260990005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260990010', 'Aj. Infl. Maquinaria y Equipo', 'A', 'E', '', '5260990010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260990015', 'Aj. Infl. Equipos de Oficina', 'A', 'E', '', '5260990015');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260990020', 'Aj. Infl. Eq. Computacion y Com.', 'A', 'E', '', '5260990020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5260990035', 'Aj. Infl. Vehiculos', 'A', 'E', '', '5260990035');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295', 'GASTOS DIVERSOS', 'H', 'E', '', '5295');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529505', 'COMISIONES', 'H', 'E', '', '529505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529510', 'LIBROS SUSCRIPCIONES PERIODICOS', 'H', 'E', '', '529510');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295100001', 'Libros Suscripciones periodicos', 'A', 'E', '', '5295100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529520', 'GASTOS DE REPRESENTACION Y REL.P', 'H', 'E', '', '529520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295200001', 'Gastos de Representacion y Rel.P', 'A', 'E', '', '5295200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529525', 'ELEMENTOS DE ASEO Y CAFETERIA', 'H', 'E', '', '529525');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529530', 'UTILES PAPELERIA Y FOTOCOPIAS', 'H', 'E', '', '529530');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529535', 'COMBUSTIBLES Y LUBRICANTES', 'H', 'E', '', '529535');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529545', 'TAXIS Y BUSES', 'H', 'E', '', '529545');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529550', 'ESTAMPILLAS', 'H', 'E', '', '529550');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295500001', 'Estampillas', 'A', 'E', '', '5295500001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529560', 'CASINO Y RESTAURANTE', 'H', 'E', '', '529560');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529565', 'PARQUEADEROS', 'H', 'E', '', '529565');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295650001', 'Parqueaderos', 'A', 'E', '', '5295650001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529595', 'OTROS GASTOS DIVERSOS', 'H', 'E', '', '529595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295950001', 'Cargue y Decargue de Materiales', 'A', 'E', '', '5295950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295950002', 'Autenticaciones', 'A', 'E', '', '5295950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295950004', 'Ajuste al Peso', 'A', 'E', '', '5295950004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5299', 'PROVISIONES', 'H', 'E', '', '5299');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('529910', 'DEUDORES', 'H', 'E', '', '529910');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5299100001', 'Provision Deudas Dificil Recaudo', 'A', 'E', '', '5299100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('53', 'GASTOS NO OPERACIONALES', 'H', 'E', '', '53');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305', 'GASTOS FINANCIEROS', 'H', 'E', '', '5305');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('530505', 'GASTOS BANCARIOS', 'H', 'E', '', '530505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305050001', 'Gastos Bancarios', 'A', 'E', '', '5305050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('530515', 'COMISIONES', 'H', 'E', '', '530515');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305150001', 'Comisiones Bancarias', 'A', 'E', '', '5305150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('530520', 'INTERESES', 'H', 'E', '', '530520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305200001', 'Intereses Corriente Ptmos Bancar', 'A', 'E', '', '5305200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305200002', 'Intereses por Sobregiro Bancario', 'A', 'E', '', '5305200002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5305200003', 'Intereses de Mora', 'A', 'E', '', '5305200003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5315', 'GASTOS EXTRAORDINARIOS', 'H', 'E', '', '5315');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('531520', 'IMPUESTOS ASUMIDOS', 'H', 'E', '', '531520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5315200001', 'Impuestos Asumidos', 'A', 'E', '', '5315200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('531595', 'OTROS GASTOS EXTRAORDINARIOS', 'H', 'E', '', '531595');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5395', 'GASTOS DIVERSOS', 'H', 'E', '', '5395');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('539520', 'MULTAS SANCIONES Y LITIGIOS', 'H', 'E', '', '539520');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5395200001', 'Multas Sanciones y Litigios', 'A', 'E', '', '5395200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('54', 'IMPUESTO DE RENTA Y COMPLEMENTAR', 'H', 'E', '', '54');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5405', 'IMPUESTO DE RENTA Y COMPLEMENTAR', 'H', 'E', '', '5405');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('540505', 'IMPUESTO DE RENTA Y COMPLEMENTAR', 'H', 'E', '', '540505');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5405050001', 'Impuesto de Renta y Complementar', 'A', 'E', '', '5405050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6', 'COSTO DE VENTA', 'H', 'E', '', '6');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('61', 'COSTO DE VENTAS Y PREST. SERVICI', 'H', 'E', '', '61');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6135', 'COMERCIO AL POR MAYOR Y MENOR', 'H', 'E', '', '6135');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('613554', 'VTA MAQ. EQ. OFIC. Y SOFTWARE', 'H', 'E', '', '613554');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6135540001', 'Costo de Ventas', 'A', 'E', '', '6135540001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('62', 'COMPRAS', 'H', 'E', '', '62');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6205', 'COMPRA DE MERCANCIA', 'H', 'E', '', '6205');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6210', 'COMPRA DE MATERIA PRIMA', 'H', 'E', '', '6210');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('621001', 'COMPRA DE MATERIA PRIMA', 'H', 'E', '', '621001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1305050002', 'Clientes Nacionales', 'A', 'A', 'AR', '1305050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050001', 'Iva Descontable en compras 16%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050002', 'Iva Descontable en servicios 16%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050003', 'Iva Descontable Arri. y Hotel 7%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050004', 'Iva Descontable en Tiquetes 8%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050005', 'Iva Descontable en Servicios 20%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050010', 'Iva Descon. Reg. Simplif. 12%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408050010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1305050001', 'Clientes Nacionales', 'A', 'A', 'AR', '1305050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1330050001', 'Anticipo a Proveedores', 'A', 'A', '', '1330050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1350950001', 'Contratos de Consultoria', 'A', 'A', '', '1350950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1465050001', 'Inventarios en Transito', 'A', 'A', 'IC', '1465050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2205050002', 'Proveedores Nacionales', 'A', 'L', 'AP', '2205050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2320050001', 'Cuentas por pagar a Contratistas', 'A', 'L', 'AP', '2320050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2315', 'A COMPA??AS VINCULADAS', 'H', 'L', '', '2315');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2335950001', 'Gastos Causados por Pagar', 'A', 'L', 'AP', '2335950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2205050001', 'Proveedores Nacionales', 'A', 'L', 'AP', '2205050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365150002', 'Honorarios Persona Natural 11%', 'A', 'L', 'AP_tax:IC_taxservice', '2365150002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365150003', 'Honorarios Persona Juridica 10%', 'A', 'L', 'AP_tax:IC_taxservice', '2365150003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5105480001', 'Bonificaciones a Empleados', 'A', 'E', '', '5105480001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('142005', 'CONTRATOS EN EJECUCION', 'H', 'A', '', '142005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5220100001', 'Arriendo Casa', 'A', 'E', 'IC_expense', '5220100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255950001', 'Taxis y Buses', 'A', 'E', 'IC_expense', '5255950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235550001', 'Gas', 'A', 'E', 'IC_expense', '5235550001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255150001', 'Pasajes Aereos', 'A', 'E', 'IC_expense', '5255150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235250001', 'Acueducto y Alcantarilldo', 'A', 'E', 'IC_expense', '5235250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2368030002', 'Retencion ICA 8xMil', 'A', 'L', 'AP_tax:IC_taxservice:CT_tax', '2368030002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2380950001', 'Cuentas por pagar', 'A', 'L', 'AP', '2380950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1330100001', 'Anticipo a Contratistas', 'A', 'A', 'AR', '1330100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408050006', 'IVA Descontable en compras 20% ', 'A', 'L', 'IC_taxservice:CT_tax', '2408050006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295950003', 'Compra de Medicina Contratistas', 'A', 'E', 'IC_expense', '5295950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295600001', 'Casino y Restaurante', 'A', 'E', 'IC_expense', '5295600001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295450001', 'Taxis y Buses Urbanos', 'A', 'E', 'IC_expense', '5295450001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295350001', 'Combustibles y lubricantes', 'A', 'E', 'IC_expense', '5295350001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295050001', 'Comisiones', 'A', 'E', 'IC_expense', '5295050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255950003', 'Tasa Aeroportuaria', 'A', 'E', 'IC_expense', '5255950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5255050001', 'Alojamiento y Manutencion', 'A', 'E', 'IC_expense', '5255050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5250150001', 'Reparaciones Locativas', 'A', 'E', 'IC_expense', '5250150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240950002', 'Exp. Certif. Libertad y tradicio', 'A', 'E', 'IC_expense', '5240950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240150001', 'Tramites y Licencias', 'A', 'E', 'IC_expense', '5240150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950006', 'Mano de Obra OBRAS CIVILES', 'A', 'E', 'IC_expense', '5235950006');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950005', 'Jardineria', 'A', 'E', 'IC_expense', '5235950005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950003', 'Digitacion de Planos', 'A', 'E', 'IC_expense', '5235950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235950001', 'Pintura', 'A', 'E', 'IC_expense', '5235950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235500001', 'Transportes Fletes y Acarreos', 'A', 'E', 'IC_expense', '5235500001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235400001', 'Correo Portes y Telegramas', 'A', 'E', 'IC_expense', '5235400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235150001', 'Asistencia tecnica', 'A', 'E', 'IC_expense', '5235150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235050001', 'Aseo y Vigilancia', 'A', 'E', 'IC_expense', '5235050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215950001', 'Impuesto de 3 por Mil', 'A', 'E', 'IC_expense', '5215950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5215150001', 'Impuestos a la Propiedad raiz', 'A', 'E', 'IC_expense', '5215150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5210950003', 'Asesoria Administrativa y de Mer', 'A', 'E', 'IC_expense', '5210950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5210950002', 'Asesoria Contable', 'A', 'E', 'IC_expense', '5210950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5210250001', 'Asesorias Juridicas', 'A', 'E', 'IC_expense', '5210250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205780001', 'Aportes SENA', 'A', 'E', 'IC_expense', '5205780001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205750001', 'Aportes ICBF', 'A', 'E', 'IC_expense', '5205750001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205720001', 'Aportes cajas de Compensacion', 'A', 'E', 'IC_expense', '5205720001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205700001', 'Aportes fondo de Pensiones y Ces', 'A', 'E', 'IC_expense', '5205700001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205690001', 'Aportes EPS', 'A', 'E', 'IC_expense', '5205690001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205680001', 'Aportes ARP', 'A', 'E', 'IC_expense', '5205680001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205390001', 'Vacaciones', 'A', 'E', 'IC_expense', '5205390001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205360001', 'Primas de Servicios', 'A', 'E', 'IC_expense', '5205360001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205300001', 'Cesantias', 'A', 'E', 'IC_expense', '5205300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205270001', 'Auxilio de transporte', 'A', 'E', 'IC_expense', '5205270001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4295050001', 'Aprovechamiento Material Sobrant', 'A', 'I', 'IC_sale:IC_income', '4295050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4210050001', 'Intereses por Rendimientos Finan', 'A', 'I', 'IC_income', '4210050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408100001', 'Iva Generado por Ingresos 16%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2408100002', 'Iva Generado por Ingresos 7%', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '2408100002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('6210010001', 'Compra de Materia Prima', 'A', 'E', 'IC_cogs', '6210010001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365400002', 'Compra Combustibles y Lub. 0.1%', 'A', 'L', 'IC_taxservice', '2365400002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365400001', 'Compras en General 3.5%', 'A', 'L', 'IC_taxpart:IC_taxservice:CT_tax', '2365400001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365300004', 'Arriendo Maq. Obra Civil 2%', 'A', 'L', 'IC_taxservice', '2365300004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365300003', 'Arriendo Bienes Muebles 4%', 'A', 'L', 'IC_taxservice:CT_tax', '2365300003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365300001', 'Arriendo Inmuebles 3.5%', 'A', 'L', 'IC_taxservice:CT_tax', '2365300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365250004', 'Construccion Obra Civil 1%', 'A', 'L', 'IC_taxservice:CT_tax', '2365250004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365250003', 'Transporte de Carga 1%', 'A', 'L', 'IC_taxservice:CT_tax', '2365250003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365250001', 'Servicios en General 6%', 'A', 'L', 'IC_taxservice:CT_tax', '2365250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365200001', 'Retencion Comision del 11%', 'A', 'L', 'IC_taxpart:IC_taxservice:CT_tax', '2365200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365150001', 'Honorarios Persona Natural 10%', 'A', 'L', 'AP_tax:IC_taxservice:CT_tax', '2365150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295300001', 'Utiles Papeleria y Fotocopias', 'A', 'E', 'AP_amount:IC_expense', '5295300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5295250001', 'Elementos de Aseo y Cafeteria', 'A', 'E', 'AP_amount:IC_expense', '5295250001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235300001', 'Energia Electrica', 'A', 'E', 'AP_amount:IC_expense', '5235300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5235350001', 'Telefono', 'A', 'E', 'AP_amount:IC_expense', '5235350001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150003', 'Retefuente 7% Rendimientos Finan', 'A', 'A', 'IC_taxpart:IC_taxservice', '1355150003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150001', 'Retefuente 2% Factor multiplicad', 'A', 'A', '', '1355150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355170001', 'Iva Retenido 75% de 16%', 'A', 'A', 'IC_taxpart:IC_taxservice', '1355170001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2365150004', 'Honorarios Persona Juridica 11%', 'A', 'L', 'CT_tax', '2365150004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367050001', 'Iva retenido reg simplif 12% ', 'A', 'L', 'AP_tax:CT_tax', '236705');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236710', 'IVA RETENIDO AL REGIMEN COMUN ', 'H', 'L', '', '2367');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('236705', 'IVA RETENIDO AL REGIMEN SIMPLIF. ', 'H', 'L', '', '2367');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367', 'IMPUESTO A LAS VENTAS RETENIDO', 'H', 'L', '', '23');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4295810001', 'Ajuste al Peso', 'A', 'I', '', '4295810001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5240050001', 'Gastos Notariales', 'A', 'E', 'IC_expense', '5240050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('429581001', 'Ajuste', 'A', 'I', '', '429581001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4130950001', 'Consultorias', 'A', 'I', 'AR_amount:IC_income', '4130950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4130100001', 'Ingresos por Obras Civiles', 'A', 'I', 'AR_amount:IC_income', '4130100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4130950002', 'Interventorias', 'A', 'I', 'AR_amount:IC_income', '4130950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4220100001', 'Arriendo de locales y oficinas', 'A', 'I', 'AR_amount:IC_income', '4220100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4220150001', 'Arriendo de Maquinaria y Equipos', 'A', 'I', 'AR_amount:IC_income', '4220150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4235950001', 'Algo',
-'A', 'I', 'AR_amount:IC_income', '4235950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5205060001', 'Sueldos de Personal', 'A', 'E', 'AP_amount:IC_expense', '5205060001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2370060001', 'Aportes a ARP', 'A', 'L', '', '2370060001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2380950002', 'Otros Acreedores Varios', 'A', 'L', 'AP', '2380950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2335300001', 'Servicios Tecnicos', 'A', 'L', 'AP', '2335300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2370100001', 'Aportes a Sena, icbf y Cajas com', 'A', 'L', '', '2370100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2380300001', 'Fondos de Cesantias y/o Pension', 'A', 'L', '', '2380300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2505050001', 'Salarios por Pagar', 'A', 'L', '', '2505050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2610050001', 'Cesantias', 'A', 'L', '', '2610050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2610100001', 'Intereses Sobre Cesantias', 'A', 'L', '', '2610100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2610150001', 'Vacaciones', 'A', 'L', '', '2610150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2610200001', 'Prima de Servicios', 'A', 'L', '', '2610200001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367100001', 'Iva retenido al reg comun 16% ', 'A', 'L', 'CT_tax', '236710');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367050002', 'Iva retenido Reg Simp.del 7% ', 'A', 'L', 'IC_taxservice:CT_tax', '236705');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367100002', 'Iva retenido al reg comun 20% ', 'A', 'L', 'IC_taxpart:IC_taxservice:CT_tax', '236710');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2367100003', 'Iva retenido al reg comun del 7% ', 'A', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax', '236710');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410990001', 'Aj. por Inflacion Inv. en Proces', 'A', 'A', '', '1410990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1465990001', 'Aj.por Infl. Inv. en Transito', 'A', 'A', '', '1465990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1330150001', 'Anticipo a Trabajadores', 'A', 'A', 'AR', '1330150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1420990001', 'Aj.por Inflacion Ctos en Ejecuci', 'A', 'A', '', '1420990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1430990001', 'Aj.por Inflacion Inv.Prod.Termin', 'A', 'A', '', '1430990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1435990001', 'Aj.por Infl.Mcia No Fab.Empresa', 'A', 'A', '', '1435990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105050001', 'Caja Mayor', 'A', 'A', 'AR_paid:AP_paid', '1105050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105100001', 'Caja Menor 1', 'A', 'A', 'AR_paid:AP_paid', '1105100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105100002', 'Caja Menor 2', 'A', 'A', 'AR_paid:AP_paid', '1105100002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105100003', 'Caja Menor 3', 'A', 'A', 'AR_paid:AP_paid', '1105100003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105100004', 'Caja menor 4', 'A', 'A', 'AR_paid:AP_paid', '1105100004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1105100005', 'Caja menor 5', 'A', 'A', 'AR_paid:AP_paid', '1105100005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1110050013', 'Banco Ganadero Cta.Cte.xxxxxxxx', 'A', 'A', 'AR_paid:AP_paid', '1110050013');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1110050029', 'Tequendama Cte. #xxxxxxxx', 'A', 'A', 'AR_paid:AP_paid', '1110050029');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1120050013', 'Banco Ganadero Ahorro xxxxxxxx', 'A', 'A', 'AR_paid:AP_paid', '1120050013');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1120050019', 'Banco Colpatria Ahor. xxxxxxxxx', 'A', 'A', 'AR_paid:AP_paid', '1120050019');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1120051302', 'Bco Ganadero Ahorro xxxxxxxxxx', 'A', 'A', 'AR_paid:AP_paid', '1120051302');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1355150020', 'Retencion en la Fuente Año Anter', 'A', 'A', '', '1355150020');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050001', 'Muebles', 'A', 'A', 'IC', '1410050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050002', 'Inventario 1', 'A', 'A', 'IC', '1410050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050003', 'Inventario 2', 'A', 'A', 'IC', '1410050003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050004', 'Inventario 3', 'A', 'A', 'IC', '1410050004');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050005', 'Inventario 4', 'A', 'A', 'IC', '1410050005');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1410050010', 'Inventario 5', 'A', 'A', 'IC', '1410050010');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1420050001', 'Lokesea', 'A', 'A', 'IC', '1420050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1430050001', 'Lokesea', 'A', 'A', 'IC', '1430050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1435050001', 'Lokesea', 'A', 'A', 'IC', '1435050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1420050002', 'Lokesea', 'A', 'A', 'IC', '1420050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516100001', 'Local #1', 'A', 'A', '', '1516100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516100002', 'Local #2', 'A', 'A', '', '1516100002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516100003', 'Local #3', 'A', 'A', '', '1516100003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516990001', 'Aj. Infl. Local #1', 'A', 'A', '', '1516990001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1435050099', 'Cuenta Inventario para Lokesea', 'A', 'A', 'IC', '1435050099');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516991001', 'Aj. Infl. Local #1', 'A', 'A', '', '1516991001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516991002', 'Aj. Infl. Local #2', 'A', 'A', '', '1516991002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1516991003', 'Aj. Infl. Local #3', 'A', 'A', '', '1516991003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1520020001', 'Lokesea del Inventario', 'A', 'A', '', '1520020001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1520020002', 'Equipo de Lokeasea', 'A', 'A', '', '1520020002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1520990201', 'Aj. por Inflacion Lokesea', 'A', 'A', '', '1520990201');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1520990202', 'Aj.x Infl. Otro Lokesea', 'A', 'A', '', '1520990202');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1524100001', 'Aire Acondicionado LG', 'A', 'A', '', '1524100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1524991001', 'Aj. por Inflac. Aire Acond. LG', 'A', 'A', '', '1524991001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592100001', 'Depreciacion Lokesea', 'A', 'A', '', '1592100001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1540050001', 'Mazda Blanco Placa ALGO0815', 'A', 'A', '', '1540050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592050001', 'Local #1', 'A', 'A', '', '1592050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592050002', 'Local #2', 'A', 'A', '', '1592050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592050003', 'Local #3', 'A', 'A', '', '1592050003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592100002', 'Deprec. Otro Lokesea', 'A', 'A', '', '1592100002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592150001', 'Depreciacion Aire LG', 'A', 'A', '', '1592150001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1592350001', 'Mazda Balnco Placa ALGO0815', 'A', 'A', '', '1592350001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1910080001', 'Local #1', 'A', 'A', '', '1910080001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1910080002', 'Local #2', 'A', 'A', '', '1910080002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('1910080003', 'Local #3', 'A', 'A', '', '1910080003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('2335950002', 'Cuentas por pagar CaribeNet S.A. (www.caribenet.com)', 'A', 'L', 'AP', '2335950002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3115050001', 'Yo', 'A', 'Q', '', '3115050001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('3115050002', 'Tu', 'A', 'Q', '', '3115050002');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4120270001', 'Lokeproducimos', 'A', 'I', 'AR_amount:IC_income', '4120270001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4130950003', 'En que ganamos?', 'A', 'I', 'AR_amount:IC_income', '4130950003');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4135950001', 'Loquevendomos', 'A', 'I', '', '4135950001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('4150300001', 'Vendo hasta mi mama!', 'A', 'I', '', '4150300001');
-INSERT INTO chart (accno, description, charttype, category, link, gifi_accno) VALUES ('5230750001', 'Soat - Seguro Obligatorio Vehiculos', 'A', 'E', '', '5230750001');
---
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '1355150003'), -0.07);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '1355170001'), -0.12);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365150001'), -0.1);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365150002'), -0.11);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365150003'), -0.1);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365150004'), -0.11);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365200001'), -0.11);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365250001'), -0.06);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365250003'), -0.01);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365250004'), -0.01);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365300001'), -0.035);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365300003'), -0.04);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365300004'), -0.02);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365400001'), -0.035);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2365400002'), -0.001);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2367050001'), -0.12);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2367050002'), -0.0525);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2367100001'), -0.12);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2367100002'), -0.15);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2367100003'), -0.0525);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2368030002'), -0.008);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050001'), 0.16);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050002'), 0.16);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050003'), 0.07);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050004'), 0.08);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050005'), 0.2);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050006'), 0.2);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408050010'), 0.12);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408100001'), 0.16);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '2408100002'), 0.07);
-
diff --git a/sql-ledger/sql/Colombia-PUC-gifi.sql b/sql-ledger/sql/Colombia-PUC-gifi.sql
deleted file mode 100644
index 1ee02eb..0000000
--- a/sql-ledger/sql/Colombia-PUC-gifi.sql
+++ /dev/null
@@ -1,2473 +0,0 @@
---
---
--- Data for Plan Único de Cuentas (PUC) Gifi Table
---
-
-INSERT INTO gifi (accno,description) VALUES ('1', 'ACTIVO ');
-INSERT INTO gifi (accno,description) VALUES ('11', 'DISPONIBLE ');
-INSERT INTO gifi (accno,description) VALUES ('1105', 'CAJA ');
-INSERT INTO gifi (accno,description) VALUES ('110505', 'CAJA GENERAL ');
-INSERT INTO gifi (accno,description) VALUES ('110510', 'CAJAS MENORES ');
-INSERT INTO gifi (accno,description) VALUES ('110515', 'MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('1110', 'BANCOS ');
-INSERT INTO gifi (accno,description) VALUES ('111005', 'MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('111010', 'MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('1115', 'REMESAS EN TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('111505', 'MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('111510', 'MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('1120', 'CUENTAS DE AHORRO ');
-INSERT INTO gifi (accno,description) VALUES ('112005', 'BANCOS ');
-INSERT INTO gifi (accno,description) VALUES ('112010', 'CORPORACIONES DE AHORRO Y VIVIENDA ');
-INSERT INTO gifi (accno,description) VALUES ('112015', 'ORGANISMOS COOPERATIVOS FINANCIEROS ');
-INSERT INTO gifi (accno,description) VALUES ('1125', 'FONDOS ');
-INSERT INTO gifi (accno,description) VALUES ('112505', 'ROTATORIOS MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('112510', 'ROTATORIOS MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('112515', 'ESPECIALES MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('112520', 'ESPECIALES MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('112525', 'DE AMORTIZACION MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('112530', 'DE AMORTIZACION MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('12', 'INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('1205', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('120505', 'AGRICULTURA, GANADERIA, CAZA Y SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('120510', 'PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('120515', 'EXPLOTACION DE MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('120520', 'INDUSTRIA MANUFACTURERA ');
-INSERT INTO gifi (accno,description) VALUES ('120525', 'SUMINISTRO DE ELECTRICIDAD, GAS Y AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('120530', 'CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('120535', 'COMERCIO AL POR MAYOR Y AL POR MENOR ');
-INSERT INTO gifi (accno,description) VALUES ('120540', 'HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('120545', 'TRANSPORTE, ALMACENAMIENTO Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('120550', 'ACTIVIDAD FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('120555', 'ACTIVIDADES INMOBILIARIAS, EMPRESARIALES Y DE ALQUILER ');
-INSERT INTO gifi (accno,description) VALUES ('120560', 'ENSEŃANZA ');
-INSERT INTO gifi (accno,description) VALUES ('120565', 'SERVICIOS SOCIALES Y DE SALUD ');
-INSERT INTO gifi (accno,description) VALUES ('120570', 'OTRAS ACTIVIDADES DE SERVICIOS COMUNITARIOS, SOCIALES Y PERSONALES ');
-INSERT INTO gifi (accno,description) VALUES ('120599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1210', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('121005', 'AGRICULTURA, GANADERIA, CAZA Y SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('121010', 'PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('121015', 'EXPLOTACION DE MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('121020', 'INDUSTRIA MANUFACTURERA ');
-INSERT INTO gifi (accno,description) VALUES ('121025', 'SUMINISTRO DE ELECTRICIDAD, GAS Y AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('121030', 'CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('121035', 'COMERCIO AL POR MAYOR Y AL POR MENOR ');
-INSERT INTO gifi (accno,description) VALUES ('121040', 'HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('121045', 'TRANSPORTE, ALMACENAMIENTO Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('121050', 'ACTIVIDAD FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('121055', 'ACTIVIDADES INMOBILIARIAS, EMPRESARIALES Y DE ALQUILER ');
-INSERT INTO gifi (accno,description) VALUES ('121060', 'ENSEŃANZA ');
-INSERT INTO gifi (accno,description) VALUES ('121065', 'SERVICIOS SOCIALES Y DE SALUD ');
-INSERT INTO gifi (accno,description) VALUES ('121070', 'OTRAS ACTIVIDADES DE SERVICIOS COMUNITARIOS, SOCIALES Y PERSONALES ');
-INSERT INTO gifi (accno,description) VALUES ('121099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1215', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('121505', 'BONOS PUBLICOS MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('121510', 'BONOS PUBLICOS MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('121515', 'BONOS ORDINARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('121520', 'BONOS CONVERTIBLES EN ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('121595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1220', 'CEDULAS ');
-INSERT INTO gifi (accno,description) VALUES ('122005', 'CEDULAS DE CAPITALIZACION ');
-INSERT INTO gifi (accno,description) VALUES ('122010', 'CEDULAS HIPOTECARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('122015', 'CEDULAS DE INVERSION ');
-INSERT INTO gifi (accno,description) VALUES ('122095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('1225', 'CERTIFICADOS ');
-INSERT INTO gifi (accno,description) VALUES ('122505', 'CERTIFICADOS DE DEPOSITO A TERMINO (C.D.T.) ');
-INSERT INTO gifi (accno,description) VALUES ('122510', 'CERTIFICADOS DE DEPOSITO DE AHORRO ');
-INSERT INTO gifi (accno,description) VALUES ('122515', 'CERTIFICADOS DE AHORRO DE VALOR CONSTANTE (C.A.V.C.) ');
-INSERT INTO gifi (accno,description) VALUES ('122520', 'CERTIFICADOS DE CAMBIO ');
-INSERT INTO gifi (accno,description) VALUES ('122525', 'CERTIFICADOS CAFETEROS VALORIZABLES ');
-INSERT INTO gifi (accno,description) VALUES ('122530', 'CERTIFICADOS ELECTRICOS VALORIZABLES (C.E.V.) ');
-INSERT INTO gifi (accno,description) VALUES ('122535', 'CERTIFICADOS DE REEMBOLSO TRIBUTARIO (C.E.R.T.) ');
-INSERT INTO gifi (accno,description) VALUES ('122540', 'CERTIFICADOS DE DESARROLLO TURISTICO ');
-INSERT INTO gifi (accno,description) VALUES ('122545', 'CERTIFICADOS DE INVERSION FORESTAL (C.I.F.) ');
-INSERT INTO gifi (accno,description) VALUES ('122595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1230', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('123005', 'EMPRESAS COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('123010', 'EMPRESAS INDUSTRIALES ');
-INSERT INTO gifi (accno,description) VALUES ('123015', 'EMPRESAS DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('1235', 'TITULOS ');
-INSERT INTO gifi (accno,description) VALUES ('123505', 'TITULOS DE DESARROLLO AGROPECUARIO ');
-INSERT INTO gifi (accno,description) VALUES ('123510', 'TITULOS CANJEABLES POR CERTIFICADOS DE CAMBIO ');
-INSERT INTO gifi (accno,description) VALUES ('123515', 'TITULOS DE TESORERIA (T.E.S.) ');
-INSERT INTO gifi (accno,description) VALUES ('123520', 'TITULOS DE PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('123525', 'TITULOS DE CREDITO DE FOMENTO ');
-INSERT INTO gifi (accno,description) VALUES ('123530', 'TITULOS FINANCIEROS AGROINDUSTRIALES (T.F.A.) ');
-INSERT INTO gifi (accno,description) VALUES ('123535', 'TITULOS DE AHORRO CAFETERO (T.A.C.) ');
-INSERT INTO gifi (accno,description) VALUES ('123540', 'TITULOS DE AHORRO NACIONAL (T.A.N.) ');
-INSERT INTO gifi (accno,description) VALUES ('123545', 'TITULOS ENERGETICOS DE RENTABILIDAD CRECIENTE (T.E.R.) ');
-INSERT INTO gifi (accno,description) VALUES ('123550', 'TITULOS DE AHORRO EDUCATIVO (T.A.E.) ');
-INSERT INTO gifi (accno,description) VALUES ('123555', 'TITULOS FINANCIEROS INDUSTRIALES Y COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('123560', 'TESOROS ');
-INSERT INTO gifi (accno,description) VALUES ('123565', 'TITULOS DE DEVOLUCION DE IMPUESTOS NACIONALES (TIDIS) ');
-INSERT INTO gifi (accno,description) VALUES ('123570', 'TITULOS INMOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('123595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1240', 'ACEPTACIONES BANCARIAS O FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('124005', 'BANCOS COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('124010', 'COMPAŃIAS DE FINANCIAMIENTO COMERCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('124015', 'CORPORACIONES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('124095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('1245', 'DERECHOS FIDUCIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('124505', 'FIDEICOMISOS DE INVERSION MONEDA NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('124510', 'FIDEICOMISOS DE INVERSION MONEDA EXTRANJERA ');
-INSERT INTO gifi (accno,description) VALUES ('1250', 'DERECHOS DE RECOMPRA DE INVERSIONES NEGOCIADAS (REPOS) ');
-INSERT INTO gifi (accno,description) VALUES ('125005', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('125010', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('125015', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('125020', 'CEDULAS ');
-INSERT INTO gifi (accno,description) VALUES ('125025', 'CERTIFICADOS ');
-INSERT INTO gifi (accno,description) VALUES ('125030', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('125035', 'TITULOS ');
-INSERT INTO gifi (accno,description) VALUES ('125040', 'ACEPTACIONES BANCARIAS O FINANCIERAS 125095 OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('125099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1255', 'OBLIGATORIAS ');
-INSERT INTO gifi (accno,description) VALUES ('125505', 'BONOS DE FINANCIAMIENTO ESPECIAL ');
-INSERT INTO gifi (accno,description) VALUES ('125510', 'BONOS DE FINANCIAMIENTO PRESUPUESTAL ');
-INSERT INTO gifi (accno,description) VALUES ('125515', 'BONOS PARA DESARROLLO SOCIAL Y SEGURIDAD INTERNA (B.D.S.I.) ');
-INSERT INTO gifi (accno,description) VALUES ('125595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('1260', 'CUENTAS EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('126099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1295', 'OTRAS INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('129505', 'APORTES EN COOPERATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('129510', 'DERECHOS EN CLUBES SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('129515', 'ACCIONES O DERECHOS EN CLUBES DEPORTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('129520', 'BONOS EN COLEGIOS ');
-INSERT INTO gifi (accno,description) VALUES ('129595', 'DIVERSAS ');
-INSERT INTO gifi (accno,description) VALUES ('129599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1299', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('129905', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('129910', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('129915', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('129920', 'CEDULAS ');
-INSERT INTO gifi (accno,description) VALUES ('129925', 'CERTIFICADOS ');
-INSERT INTO gifi (accno,description) VALUES ('129930', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('129935', 'TITULOS ');
-INSERT INTO gifi (accno,description) VALUES ('129940', 'ACEPTACIONES BANCARIAS O FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('129945', 'DERECHOS FIDUCIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('129950', 'DERECHOS DE RECOMPRA DE INVERSIONES NEGOCIADAS ');
-INSERT INTO gifi (accno,description) VALUES ('129955', 'OBLIGATORIAS ');
-INSERT INTO gifi (accno,description) VALUES ('129960', 'CUENTAS EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('129995', 'OTRAS INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('13', 'DEUDORES ');
-INSERT INTO gifi (accno,description) VALUES ('1305', 'CLIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('130505', 'NACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('130510', 'DEL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('130515', 'DEUDORES DEL SISTEMA ');
-INSERT INTO gifi (accno,description) VALUES ('1310', 'CUENTAS CORRIENTES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('131005', 'CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('131010', 'COMPAŃIAS VINCULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('131015', 'ACCIONISTAS O SOCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('131020', 'PARTICULARES ');
-INSERT INTO gifi (accno,description) VALUES ('131095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('1315', 'CUENTAS POR COBRAR A CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('131505', 'VENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('131510', 'PAGOS A NOMBRE DE CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('131515', 'VALORES RECIBIDOS POR CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('131520', 'PRESTAMOS ');
-INSERT INTO gifi (accno,description) VALUES ('1320', 'CUENTAS POR COBRAR A VINCULADOS ECONOMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('132005', 'FILIALES ');
-INSERT INTO gifi (accno,description) VALUES ('132010', 'SUBSIDIARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('132015', 'SUCURSALES ');
-INSERT INTO gifi (accno,description) VALUES ('1325', 'CUENTA S POR COBRAR A SOCIOS Y ACCIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('132505', 'A SOCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('132510', 'A ACCIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('1328', 'APORTES POR COBRAR ');
-INSERT INTO gifi (accno,description) VALUES ('1330', 'ANTICIPOS Y AVANCES ');
-INSERT INTO gifi (accno,description) VALUES ('133005', 'A PROVEEDORES ');
-INSERT INTO gifi (accno,description) VALUES ('133010', 'A CONTRATISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('133015', 'A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('133020', 'A AGENTES ');
-INSERT INTO gifi (accno,description) VALUES ('133025', 'A CONCESIONARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('133030', 'DE ADJUDICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('133095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1332', 'CUENTAS DE OPERACION CONJUNTA ');
-INSERT INTO gifi (accno,description) VALUES ('1335', 'DEPOSITOS ');
-INSERT INTO gifi (accno,description) VALUES ('133505', 'PARA IMPORTACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('133510', 'PARA SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('133515', 'PARA CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('133520', 'PARA RESPONSABILIDADES ');
-INSERT INTO gifi (accno,description) VALUES ('133525', 'PARA JUICIOS EJECUTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('133530', 'PARA ADQUISICION DE ACCIONES, CUOTAS O DERECHOS SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('133535', 'EN GARANTIA ');
-INSERT INTO gifi (accno,description) VALUES ('133595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1340', 'PROMESAS DE COMPRA VENTA ');
-INSERT INTO gifi (accno,description) VALUES ('134005', 'DE BIENES RAICES ');
-INSERT INTO gifi (accno,description) VALUES ('134010', 'DE MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('134015', 'DE FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('134020', 'DE FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('134025', 'DE FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('134030', 'DE FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('134035', 'DE SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('134095', 'DE OTROS BIENES ');
-INSERT INTO gifi (accno,description) VALUES ('1345', 'INGRESOS POR COBRAR ');
-INSERT INTO gifi (accno,description) VALUES ('134505', 'DIVIDENDOS Y/O PARTICIPACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('134510', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('134515', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('134520', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('134525', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('134530', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('134535', 'CERT POR COBRAR ');
-INSERT INTO gifi (accno,description) VALUES ('134595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1350', 'RETENCION SOBRE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('135005', 'DE CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('135010', 'DE PRESTACION DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('135095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1355', 'ANTICIPO DE IMPUESTOS Y CONTRIBUCIONES O SALDOS A FAVOR ');
-INSERT INTO gifi (accno,description) VALUES ('135505', 'ANTICIPO DE IMPUESTOS DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('135510', 'ANTICIPO DE IMPUESTOS DE INDUSTRIA Y COMERCIO ');
-INSERT INTO gifi (accno,description) VALUES ('135515', 'RETENCION EN LA FUENTE ');
-INSERT INTO gifi (accno,description) VALUES ('135520', 'SOBRANTES EN LIQUIDACION PRIVADA DE IMPUESTOS ');
-INSERT INTO gifi (accno,description) VALUES ('135525', 'CONTRIBUCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('135530', 'IMPUESTOS DESCONTABLES ');
-INSERT INTO gifi (accno,description) VALUES ('135595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1360', 'RECLAMACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('136005', 'A COMPAŃIAS ASEGURADORAS ');
-INSERT INTO gifi (accno,description) VALUES ('136010', 'A TRANSPORTADORES ');
-INSERT INTO gifi (accno,description) VALUES ('136015', 'POR TIQUETES AEREOS ');
-INSERT INTO gifi (accno,description) VALUES ('136095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('1365', 'CUENTAS POR COBRAR A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('136505', 'VIVIENDA ');
-INSERT INTO gifi (accno,description) VALUES ('136510', 'VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('136515', 'EDUCACION ');
-INSERT INTO gifi (accno,description) VALUES ('136520', 'MEDICOS, ODONTOLOGICOS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('136525', 'CALAMIDAD DOMESTICA ');
-INSERT INTO gifi (accno,description) VALUES ('136530', 'RESPONSABILIDADES ');
-INSERT INTO gifi (accno,description) VALUES ('136595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1370', 'PRESTAMOS A PARTICULARES ');
-INSERT INTO gifi (accno,description) VALUES ('137005', 'CON GARANTIA REAL ');
-INSERT INTO gifi (accno,description) VALUES ('137010', 'CON GARANTIA PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('1380', 'DEUDORES VARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('138005', 'DEPOSITARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('138010', 'COMISIONISTAS DE BOLSAS ');
-INSERT INTO gifi (accno,description) VALUES ('138015', 'FONDO DE INVERSION ');
-INSERT INTO gifi (accno,description) VALUES ('138020', 'CUENTAS POR COBRAR DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('138025', 'PAGOS POR CUENTA DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('138030', 'FONDOS DE INVERSION SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('138095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1385', 'DERECHOS DE RECOMPRA DE CARTERA NEGOCIADA ');
-INSERT INTO gifi (accno,description) VALUES ('1390', 'DEUDAS DE DIFICIL COBRO ');
-INSERT INTO gifi (accno,description) VALUES ('1399', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('139905', 'CLIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('139910', 'CUENTAS CORRIENTES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('139915', 'CUENTAS POR COBRAR A CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('139920', 'CUENTAS POR COBRAR A VINCULADOS ECONOMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('139925', 'CUENTAS POR COBRAR A SOCIOS Y ACCIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('139930', 'ANTICIPOS Y AVANCES ');
-INSERT INTO gifi (accno,description) VALUES ('139932', 'CUENTAS DE OPERACION CONJUNTA ');
-INSERT INTO gifi (accno,description) VALUES ('139935', 'DEPOSITOS ');
-INSERT INTO gifi (accno,description) VALUES ('139940', 'PROMESAS DE COMPRAVENTA ');
-INSERT INTO gifi (accno,description) VALUES ('139945', 'INGRESOS POR COBRAR ');
-INSERT INTO gifi (accno,description) VALUES ('139950', 'RETENCION SOBRE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('139955', 'RECLAMACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('139960', 'CUENTAS POR COBRAR A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('139965', 'PRESTAMOS A PARTICULARES ');
-INSERT INTO gifi (accno,description) VALUES ('139975', 'DEUDORES VARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('139980', 'DERECHOS DE RECOMPRA DE CARTERA NEGOCIADA ');
-INSERT INTO gifi (accno,description) VALUES ('14', 'INVENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('1405', 'MATERIAS PRIMAS ');
-INSERT INTO gifi (accno,description) VALUES ('140599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1410', 'PRODUCTOS EN PROCESO ');
-INSERT INTO gifi (accno,description) VALUES ('141099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1415', 'OBRAS DE CONSTRUCCION EN CURSO ');
-INSERT INTO gifi (accno,description) VALUES ('141599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1417', 'OBRAS DE URBANISMO ');
-INSERT INTO gifi (accno,description) VALUES ('141799', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1420', 'CONTRATOS EN EJECUCION ');
-INSERT INTO gifi (accno,description) VALUES ('142099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1425', 'CULTIVOS EN DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('142599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1430', 'PRODUCTOS TERMINADOS ');
-INSERT INTO gifi (accno,description) VALUES ('143005', 'PRODUCTOS MANUFACTURADOS ');
-INSERT INTO gifi (accno,description) VALUES ('143010', 'PRODUCTOS EXTRAIDOS Y/O PROCESADOS ');
-INSERT INTO gifi (accno,description) VALUES ('143015', 'PRODUCTOS AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('143020', 'SUBPRODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('143025', 'PRODUCTOS DE PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('143099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1435', 'MERCANCIAS NO FABRICADAS POR LA EMPRESA ');
-INSERT INTO gifi (accno,description) VALUES ('143599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1440', 'BIENES RAICES PARA LA VENTA ');
-INSERT INTO gifi (accno,description) VALUES ('144099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1445', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('144505', 'ESPECIES MAYORES ');
-INSERT INTO gifi (accno,description) VALUES ('144510', 'ESPECIES MENORES ');
-INSERT INTO gifi (accno,description) VALUES ('144599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1450', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('145005', 'POR URBANIZAR ');
-INSERT INTO gifi (accno,description) VALUES ('145010', 'URBANIZADOS POR CONSTRUIR ');
-INSERT INTO gifi (accno,description) VALUES ('145099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1455', 'MATERIALES, REPUESTOS Y ACCESORIOS ');
-INSERT INTO gifi (accno,description) VALUES ('145505', 'COMBUSTIBLES Y LUBRICANTES ');
-INSERT INTO gifi (accno,description) VALUES ('145510', 'ABONOS Y FERTILIZANTES ');
-INSERT INTO gifi (accno,description) VALUES ('145515', 'SEMILLAS TERMINADAS ');
-INSERT INTO gifi (accno,description) VALUES ('145520', 'FUNGICIDAS Y HERBICIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('145525', 'MATERIALES Y REPUESTOS ');
-INSERT INTO gifi (accno,description) VALUES ('145530', 'LOZA Y CRISTALERIA ');
-INSERT INTO gifi (accno,description) VALUES ('145535', 'HERRAMIENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('145540', 'MEDICINAS ');
-INSERT INTO gifi (accno,description) VALUES ('145545', 'ELEMENTOS HOSPITALARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('145550', 'INSTRUMENTAL QUIRURGICO ');
-INSERT INTO gifi (accno,description) VALUES ('145555', 'DOTACION Y SUMINISTRO A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('145560', 'ELEMENTOS DE ROPERIA Y LENCERIA ');
-INSERT INTO gifi (accno,description) VALUES ('145595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('145599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1460', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('146099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1465', 'INVENTARIOS EN TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('146599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1499', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('149905', 'PARA OBSOLESCENCIA ');
-INSERT INTO gifi (accno,description) VALUES ('149910', 'PARA DIFERENCIA DE INVENTARIO FISICO ');
-INSERT INTO gifi (accno,description) VALUES ('149915', 'PARA PERDIDAS DE INVENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('149920', 'LIFO ');
-INSERT INTO gifi (accno,description) VALUES ('15', 'PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('1504', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('150405', 'URBANOS ');
-INSERT INTO gifi (accno,description) VALUES ('150410', 'RURALES ');
-INSERT INTO gifi (accno,description) VALUES ('150499', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1506', 'MATERIALES PROYECTOS PETROLEROS ');
-INSERT INTO gifi (accno,description) VALUES ('150605', 'TUBERIAS Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('150610', 'COSTOS DE IMPORTACION MATERIALES ');
-INSERT INTO gifi (accno,description) VALUES ('150615', 'PROYECTOS DE CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('150699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1508', 'CONSTRUCCIONES EN CURSO ');
-INSERT INTO gifi (accno,description) VALUES ('150805', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('150810', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('150815', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('150820', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('150825', 'PROYECTOS DE EXPLORACION ');
-INSERT INTO gifi (accno,description) VALUES ('150830', 'PROYECTOS DE DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('150899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1512', 'MAQUINARIA Y EQUIPOS EN MONTAJE ');
-INSERT INTO gifi (accno,description) VALUES ('151205', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('151210', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('151215', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('151220', 'EQUIPO MEDICO-CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('151225', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('151230', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('151235', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('151240', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('151245', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('151250', 'PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('151299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1516', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('151605', 'EDIFICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('151610', 'OFICINAS ');
-INSERT INTO gifi (accno,description) VALUES ('151615', 'ALMACENES ');
-INSERT INTO gifi (accno,description) VALUES ('151620', 'FABRICAS Y PLANTAS INDUSTRIALES ');
-INSERT INTO gifi (accno,description) VALUES ('151625', 'SALAS DE EXHIBICION Y VENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('151630', 'CAFETERIA Y CASINOS ');
-INSERT INTO gifi (accno,description) VALUES ('151635', 'SILOS ');
-INSERT INTO gifi (accno,description) VALUES ('151640', 'INVERNADEROS ');
-INSERT INTO gifi (accno,description) VALUES ('151645', 'CASETAS Y CAMPAMENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('151650', 'INSTALACIONES AGROPECUARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('151655', 'VIVIENDAS PARA EMPLEADOS Y OBREROS ');
-INSERT INTO gifi (accno,description) VALUES ('151660', 'TERMINAL DE BUSES Y TAXIS ');
-INSERT INTO gifi (accno,description) VALUES ('151663', 'TERMINAL MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('151665', 'TERMINAL FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('151670', 'PARQUEADEROS, GARAJES Y DEPOSITOS ');
-INSERT INTO gifi (accno,description) VALUES ('151675', 'HANGARES ');
-INSERT INTO gifi (accno,description) VALUES ('151680', 'BODEGAS ');
-INSERT INTO gifi (accno,description) VALUES ('151695', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('151699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1520', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('152099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1524', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('152405', 'MUEBLES Y ENSERES ');
-INSERT INTO gifi (accno,description) VALUES ('152410', 'EQUIPOS ');
-INSERT INTO gifi (accno,description) VALUES ('152495', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('152499', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1528', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('152805', 'EQUIPOS DE PROCESAMIENTO DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('152810', 'EQUIPOS DE TELECOMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('152815', 'EQUIPOS DE RADIO ');
-INSERT INTO gifi (accno,description) VALUES ('152820', 'SATELITES Y ANTENAS ');
-INSERT INTO gifi (accno,description) VALUES ('152825', 'LINEAS TELEFONICAS ');
-INSERT INTO gifi (accno,description) VALUES ('152895', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('152899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1532', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('153205', 'MEDICO ');
-INSERT INTO gifi (accno,description) VALUES ('153210', 'ODONTOLOGICO ');
-INSERT INTO gifi (accno,description) VALUES ('153215', 'LABORATORIO ');
-INSERT INTO gifi (accno,description) VALUES ('153220', 'INSTRUMENTAL ');
-INSERT INTO gifi (accno,description) VALUES ('153295', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('153299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1536', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('153605', 'DE HABITACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('153610', 'DE COMESTIBLES Y BEBIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('153695', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('153699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1540', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('154005', 'AUTOS, CAMIONETAS Y CAMPEROS ');
-INSERT INTO gifi (accno,description) VALUES ('154008', 'CAMIONES, VOLQUETAS Y FURGONES ');
-INSERT INTO gifi (accno,description) VALUES ('154010', 'TRACTOMULAS Y REMOLQUES ');
-INSERT INTO gifi (accno,description) VALUES ('154015', 'BUSES Y BUSETAS ');
-INSERT INTO gifi (accno,description) VALUES ('154017', 'RECOLECTORES Y CONTENEDORES ');
-INSERT INTO gifi (accno,description) VALUES ('154020', 'MONTACARGAS ');
-INSERT INTO gifi (accno,description) VALUES ('154025', 'PALAS Y GRUAS ');
-INSERT INTO gifi (accno,description) VALUES ('154030', 'MOTOCICLETAS ');
-INSERT INTO gifi (accno,description) VALUES ('154035', 'BICICLETAS ');
-INSERT INTO gifi (accno,description) VALUES ('154040', 'ESTIBAS Y CARRETAS ');
-INSERT INTO gifi (accno,description) VALUES ('154045', 'BANDAS TRANSPORTADORAS ');
-INSERT INTO gifi (accno,description) VALUES ('154095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('154099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1544', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('154405', 'BUQUES ');
-INSERT INTO gifi (accno,description) VALUES ('154410', 'LANCHAS ');
-INSERT INTO gifi (accno,description) VALUES ('154415', 'REMOLCADORAS ');
-INSERT INTO gifi (accno,description) VALUES ('154420', 'BOTES ');
-INSERT INTO gifi (accno,description) VALUES ('154425', 'BOYAS ');
-INSERT INTO gifi (accno,description) VALUES ('154430', 'AMARRES ');
-INSERT INTO gifi (accno,description) VALUES ('154435', 'CONTENEDORES Y CHASSISES ');
-INSERT INTO gifi (accno,description) VALUES ('154440', 'GABARRAS ');
-INSERT INTO gifi (accno,description) VALUES ('154495', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('154499', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1548', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('154805', 'AVIONES ');
-INSERT INTO gifi (accno,description) VALUES ('154810', 'AVIONETAS ');
-INSERT INTO gifi (accno,description) VALUES ('154815', 'HELICOPTEROS ');
-INSERT INTO gifi (accno,description) VALUES ('154820', 'TURBINAS Y MOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('154825', 'MANUALES DE ENTRENAMIENTO PERSONAL TECNICO ');
-INSERT INTO gifi (accno,description) VALUES ('154830', 'EQUIPOS DE VUELO ');
-INSERT INTO gifi (accno,description) VALUES ('154895', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('154899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1552', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('155205', 'LOCOMOTORAS ');
-INSERT INTO gifi (accno,description) VALUES ('155210', 'VAGONES ');
-INSERT INTO gifi (accno,description) VALUES ('155215', 'REDES FERREAS ');
-INSERT INTO gifi (accno,description) VALUES ('155295', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('155299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1556', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('155605', 'INSTALACIONES PARA AGUA Y ENERGIA ');
-INSERT INTO gifi (accno,description) VALUES ('155610', 'ACUEDUCTO ACEQUIAS Y CANALIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('155615', 'PLANTAS DE GENERACION HIDRAULICA ');
-INSERT INTO gifi (accno,description) VALUES ('155620', 'PLANTAS DE GENERACION TERMICA ');
-INSERT INTO gifi (accno,description) VALUES ('155625', 'PLANTAS DE GENERACION A GAS ');
-INSERT INTO gifi (accno,description) VALUES ('155628', 'PLANTAS DE GENERACION DIESEL, GASOLINA Y PETROLEO ');
-INSERT INTO gifi (accno,description) VALUES ('155630', 'PLANTAS DE DISTRIBUCION ');
-INSERT INTO gifi (accno,description) VALUES ('155635', 'PLANTAS DE TRANSMISION Y SUBESTACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('155640', 'OLEODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('155645', 'GASODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('155647', 'POLIDUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('155650', 'REDES DE DISTRIBUCION ');
-INSERT INTO gifi (accno,description) VALUES ('155655', 'PLANTAS DE TRATAMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('155660', 'REDES DE RECOLECCION DE AGUAS NEGRAS ');
-INSERT INTO gifi (accno,description) VALUES ('155665', 'INSTALACIONES Y EQUIPO DE BOMBEO ');
-INSERT INTO gifi (accno,description) VALUES ('155670', 'REDES DE DISTRIBUCION DE VAPOR ');
-INSERT INTO gifi (accno,description) VALUES ('155675', 'REDES DE AIRE ');
-INSERT INTO gifi (accno,description) VALUES ('155680', 'REDES ALIMENTACION DE GAS ');
-INSERT INTO gifi (accno,description) VALUES ('155682', 'REDES EXTERNAS DE TELEFONIA ');
-INSERT INTO gifi (accno,description) VALUES ('155685', 'PLANTAS DESHIDRATADORAS ');
-INSERT INTO gifi (accno,description) VALUES ('155695', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('155699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1560', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('156099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1562', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('156299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1564', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('156405', 'CULTIVOS EN DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('156410', 'CULTIVOS AMORTIZABLES ');
-INSERT INTO gifi (accno,description) VALUES ('156499', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1568', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('156805', 'PAVIMENTACION Y PATIOS ');
-INSERT INTO gifi (accno,description) VALUES ('156810', 'VIAS ');
-INSERT INTO gifi (accno,description) VALUES ('156815', 'PUENTES ');
-INSERT INTO gifi (accno,description) VALUES ('156820', 'CALLES ');
-INSERT INTO gifi (accno,description) VALUES ('156825', 'AERODROMOS ');
-INSERT INTO gifi (accno,description) VALUES ('156895', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('156899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1572', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('157205', 'MINAS ');
-INSERT INTO gifi (accno,description) VALUES ('157210', 'CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('157299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1576', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('157699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1580', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('158099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1584', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('158405', 'ESPECIES MENORES ');
-INSERT INTO gifi (accno,description) VALUES ('158410', 'ESPECIES MAYORES ');
-INSERT INTO gifi (accno,description) VALUES ('158499', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1588', 'PROPIEDADES PLANTA Y EQUIPO EN TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('158805', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('158810', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('158815', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('158820', 'EQUIPO MEDICO CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('158825', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('158830', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('158835', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('158840', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('158845', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('158850', 'PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('158855', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('158860', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('158865', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('158899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1592', 'DEPRECIACION ACUMULADA ');
-INSERT INTO gifi (accno,description) VALUES ('159205', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('159210', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('159215', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('159220', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('159225', 'EQUIPO MEDICO CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('159230', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('159235', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('159240', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('159245', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('159250', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('159255', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('159260', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('159265', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('159299', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1596', 'DEPRECIACION DIFERIDA ');
-INSERT INTO gifi (accno,description) VALUES ('159605', 'EXCESO FISCAL SOBRE LA CONTABLE ');
-INSERT INTO gifi (accno,description) VALUES ('159610', 'DEFECTO FISCAL SOBRE LA CONTABLE (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('159699', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1597', 'AMORTIZACION ACUMULADA ');
-INSERT INTO gifi (accno,description) VALUES ('159705', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('159710', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('159715', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('159799', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1598', 'AGOTAMIENTO ACUMULADO ');
-INSERT INTO gifi (accno,description) VALUES ('159805', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('159815', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('159820', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('159899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1599', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('159904', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('159906', 'MATERIALES PROYECTOS PETROLEROS ');
-INSERT INTO gifi (accno,description) VALUES ('159908', 'CONSTRUCCIONES EN CURSO ');
-INSERT INTO gifi (accno,description) VALUES ('159912', 'MAQUINARIA EN MONTAJE ');
-INSERT INTO gifi (accno,description) VALUES ('159916', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('159920', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('159924', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('159928', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('159932', 'EQUIPO MEDICO CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('159936', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('159940', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('159944', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('159948', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('159952', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('159956', 'ACUEDUCTOS, PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('159960', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('159962', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('159964', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('159968', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('159972', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('159980', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('159984', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('159988', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('159992', 'PROPIEDADES PLANTA Y EQUIPO EN TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('16', 'INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('1605', 'CREDITO MERCANTIL ');
-INSERT INTO gifi (accno,description) VALUES ('160505', 'FORMADO O ESTIMADO ');
-INSERT INTO gifi (accno,description) VALUES ('160510', 'ADQUIRIDO O COMPRADO ');
-INSERT INTO gifi (accno,description) VALUES ('160599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1610', 'MARCAS ');
-INSERT INTO gifi (accno,description) VALUES ('161005', 'ADQUIRIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('161010', 'FORMADAS ');
-INSERT INTO gifi (accno,description) VALUES ('161099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1615', 'PATENTES ');
-INSERT INTO gifi (accno,description) VALUES ('161505', 'ADQUIRIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('161510', 'FORMADAS ');
-INSERT INTO gifi (accno,description) VALUES ('161599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1620', 'CONCESIONES Y FRANQUICIAS ');
-INSERT INTO gifi (accno,description) VALUES ('162005', 'CONCESIONES ');
-INSERT INTO gifi (accno,description) VALUES ('162010', 'FRANQUICIAS ');
-INSERT INTO gifi (accno,description) VALUES ('162099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1625', 'DERECHOS ');
-INSERT INTO gifi (accno,description) VALUES ('162505', 'DERECHOS DE AUTOR ');
-INSERT INTO gifi (accno,description) VALUES ('162510', 'PUESTO DE BOLSA ');
-INSERT INTO gifi (accno,description) VALUES ('162515', 'EN FIDEICOMISOS INMOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('162520', 'EN FIDEICOMISOS DE GARANTIA ');
-INSERT INTO gifi (accno,description) VALUES ('162525', 'EN FIDEICOMISOS DE ADMINISTRACION ');
-INSERT INTO gifi (accno,description) VALUES ('162595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('162599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1630', 'KNOW HOW ');
-INSERT INTO gifi (accno,description) VALUES ('163099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1635', 'LICENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('163599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1698', 'AMORTIZACION ACUMULADA ');
-INSERT INTO gifi (accno,description) VALUES ('169805', 'CREDITO MERCANTIL ');
-INSERT INTO gifi (accno,description) VALUES ('169810', 'MARCAS ');
-INSERT INTO gifi (accno,description) VALUES ('169815', 'PATENTES ');
-INSERT INTO gifi (accno,description) VALUES ('169820', 'CONCESIONES Y FRANQUICIAS ');
-INSERT INTO gifi (accno,description) VALUES ('169830', 'DERECHOS ');
-INSERT INTO gifi (accno,description) VALUES ('169835', 'KNOW HOW ');
-INSERT INTO gifi (accno,description) VALUES ('169840', 'LICENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('169899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1699', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('17', 'DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('1705', 'GASTOS PAGADOS POR ANTICIPADO ');
-INSERT INTO gifi (accno,description) VALUES ('170505', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('170510', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('170515', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('170520', 'SEGUROS Y FIANZAS ');
-INSERT INTO gifi (accno,description) VALUES ('170525', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('170530', 'BODEGAJES ');
-INSERT INTO gifi (accno,description) VALUES ('170535', 'MANTENIMIENTO EQUIPOS ');
-INSERT INTO gifi (accno,description) VALUES ('170540', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('170545', 'SUSCRIPCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('170595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('1710', 'CARGOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('171004', 'ORGANIZACION Y PREOPERATIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('171008', 'REMODELACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('171012', 'ESTUDIOS, INVESTIGACIONES Y PROYECTOS ');
-INSERT INTO gifi (accno,description) VALUES ('171016', 'PROGRAMAS PARA COMPUTADOR (SOFTWARE) ');
-INSERT INTO gifi (accno,description) VALUES ('171020', 'UTILES Y PAPELERIA ');
-INSERT INTO gifi (accno,description) VALUES ('171024', 'MEJORAS A PROPIEDADES AJENAS ');
-INSERT INTO gifi (accno,description) VALUES ('171028', 'CONTRIBUCIONES Y AFILIACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('171032', 'ENTRENAMIENTO DE PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('171036', 'FERIAS Y EXPOSICIONES ');
-INSERT INTO gifi (accno,description) VALUES ('171040', 'LICENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('171044', 'PUBLICIDAD, PROPAGANDA Y AVISOS ');
-INSERT INTO gifi (accno,description) VALUES ('171048', 'ELEMENTOS DE ASEO Y CAFETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('171052', 'MOLDES Y TROQUELES ');
-INSERT INTO gifi (accno,description) VALUES ('171056', 'INSTRUMENTAL QUIRURGICO ');
-INSERT INTO gifi (accno,description) VALUES ('171060', 'DOTACION Y SUMINISTRO A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('171064', 'ELEMENTOS DE ROPERIA Y LENCERIA ');
-INSERT INTO gifi (accno,description) VALUES ('171068', 'LOZA Y CRISTALERIA ');
-INSERT INTO gifi (accno,description) VALUES ('171072', 'DESCUENTO EN COLOCACION DE BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('171076', 'IMPUESTO DE RENTA DIFERIDO "DEBITOS" POR DIFERENCIAS TEMPORALES ');
-INSERT INTO gifi (accno,description) VALUES ('171080', 'CONCURSOS Y LICITACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('171095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('171099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1715', 'COSTOS DE EXPLORACION POR AMORTIZAR ');
-INSERT INTO gifi (accno,description) VALUES ('171505', 'POZOS SECOS ');
-INSERT INTO gifi (accno,description) VALUES ('171510', 'POZOS NO COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('171515', 'OTROS COSTOS DE EXPLORACION ');
-INSERT INTO gifi (accno,description) VALUES ('171599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1720', 'COSTOS DE EXPLOTACION Y DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('172005', 'PERFORACION Y EXPLOTACION ');
-INSERT INTO gifi (accno,description) VALUES ('172010', 'PERFORACIONES CAMPOS EN DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('172015', 'FACILIDADES DE PRODUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('172020', 'SERVICIO A POZOS ');
-INSERT INTO gifi (accno,description) VALUES ('172099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1730', 'CARGOS POR CORRECCION MONETARIA DIFERIDA ');
-INSERT INTO gifi (accno,description) VALUES ('1798', 'AMORTIZACION ACUMULADA ');
-INSERT INTO gifi (accno,description) VALUES ('179805', 'COSTOS DE EXPLORACION POR AMORTIZAR ');
-INSERT INTO gifi (accno,description) VALUES ('179810', 'COSTOS DE EXPLOTACION Y DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('179899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('18', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('1805', 'BIENES DE ARTE Y CULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('180505', 'OBRAS DE ARTE ');
-INSERT INTO gifi (accno,description) VALUES ('180510', 'BIBLIOTECAS ');
-INSERT INTO gifi (accno,description) VALUES ('180595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('180599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1895', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('189505', 'MAQUINAS PORTEADORAS ');
-INSERT INTO gifi (accno,description) VALUES ('189510', 'BIENES ENTREGADOS EN COMODATO ');
-INSERT INTO gifi (accno,description) VALUES ('189515', 'AMORTIZACION ACUMULADA DE BIENES ENTREGADOS EN COMODATO (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('189520', 'BIENES RECIBIDOS EN PAGO ');
-INSERT INTO gifi (accno,description) VALUES ('189525', 'DERECHOS SUCESORALES ');
-INSERT INTO gifi (accno,description) VALUES ('189530', 'ESTAMPILLAS ');
-INSERT INTO gifi (accno,description) VALUES ('189595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('189599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('1899', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('189905', 'BIENES DE ARTE Y CULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('189995', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('19', 'VALORIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('1905', 'DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('190505', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('190510', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('190515', 'DERECHOS FIDUCIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('1910', 'DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('191004', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('191006', 'MATERIALES PROYECTOS PETROLEROS ');
-INSERT INTO gifi (accno,description) VALUES ('191008', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('191012', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('191016', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('191020', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('191024', 'EQUIPO MEDICO CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('191028', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('191032', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('191036', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('191040', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('191044', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('191048', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('191052', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('191056', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('191060', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('191064', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('191068', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('191072', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('191076', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('191080', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('1995', 'DE OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('199505', 'BIENES DE ARTE Y CULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('199510', 'BIENES ENTREGADOS EN COMODATO ');
-INSERT INTO gifi (accno,description) VALUES ('199515', 'BIENES RECIBIDOS EN PAGO ');
-INSERT INTO gifi (accno,description) VALUES ('199520', 'INVENTARIO DE SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('2', 'PASIVO ');
-INSERT INTO gifi (accno,description) VALUES ('21', 'OBLIGACIONES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('2105', 'BANCOS NACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('210505', 'SOBREGIROS ');
-INSERT INTO gifi (accno,description) VALUES ('210510', 'PAGARES ');
-INSERT INTO gifi (accno,description) VALUES ('210515', 'CARTAS DE CREDITO ');
-INSERT INTO gifi (accno,description) VALUES ('210520', 'ACEPTACIONES BANCARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('2110', 'BANCOS DEL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('211005', 'SOBREGIROS ');
-INSERT INTO gifi (accno,description) VALUES ('211010', 'PAGARES ');
-INSERT INTO gifi (accno,description) VALUES ('211015', 'CARTAS DE CREDITO ');
-INSERT INTO gifi (accno,description) VALUES ('211020', 'ACEPTACIONES BANCARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('2115', 'CORPORACIONES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('211505', 'PAGARES ');
-INSERT INTO gifi (accno,description) VALUES ('211510', 'ACEPTACIONES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('211515', 'CARTAS DE CREDITO ');
-INSERT INTO gifi (accno,description) VALUES ('2120', 'COMPAŃIAS DE FINANCIAMIENTO COMERCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('212005', 'PAGARES ');
-INSERT INTO gifi (accno,description) VALUES ('212010', 'ACEPTACIONES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('2125', 'CORPORACIONES DE AHORRO Y VIVIENDA ');
-INSERT INTO gifi (accno,description) VALUES ('212505', 'SOBREGIROS ');
-INSERT INTO gifi (accno,description) VALUES ('212510', 'PAGARES ');
-INSERT INTO gifi (accno,description) VALUES ('212515', 'HIPOTECARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('2130', 'ENTIDADES FINANCIERAS DEL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('2135', 'COMPROMISOS DE RECOMPRA DE INVERSIONES NEGOCIADAS ');
-INSERT INTO gifi (accno,description) VALUES ('213505', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('213510', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('213515', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('213520', 'CEDULAS ');
-INSERT INTO gifi (accno,description) VALUES ('213525', 'CERTIFICADOS ');
-INSERT INTO gifi (accno,description) VALUES ('213530', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('213535', 'TITULOS ');
-INSERT INTO gifi (accno,description) VALUES ('213540', 'ACEPTACIONES BANCARIAS O FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('213595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2140', 'COMPROMISOS DE RECOMPRA DE CARTERA NEGOCIADA ');
-INSERT INTO gifi (accno,description) VALUES ('2145', 'OBLIGACIONES GUBERNAMENTALES ');
-INSERT INTO gifi (accno,description) VALUES ('214505', 'GOBIERNO NACIONAL ');
-INSERT INTO gifi (accno,description) VALUES ('214510', 'ENTIDADES OFICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2195', 'OTRAS OBLIGACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('219505', 'PARTICULARES ');
-INSERT INTO gifi (accno,description) VALUES ('219510', 'COMPAŃIAS VINCULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('219515', 'CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('219520', 'SOCIOS O ACCIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('219525', 'FONDOS Y COOPERATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('219595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('22', 'PROVEEDORES ');
-INSERT INTO gifi (accno,description) VALUES ('2205', 'NACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('2210', 'DEL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('2215', 'CUENTAS CORRIENTES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2220', 'CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('2225', 'COMPAŃIAS VINCULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('23', 'CUENTAS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2305', 'CUENTAS CORRIENTES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2310', 'A CASA MATRIZ ');
-INSERT INTO gifi (accno,description) VALUES ('2315', 'A COMPAŃIAS VINCULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('2320', 'A CONTRATISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('2330', 'ORDENES DE COMPRA POR UTILIZAR ');
-INSERT INTO gifi (accno,description) VALUES ('2335', 'COSTOS Y GASTOS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('233505', 'GASTOS FINANCIEROS ');
-INSERT INTO gifi (accno,description) VALUES ('233510', 'GASTOS LEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('233515', 'LIBROS, SUSCRIPCIONES, PERIODICOS Y REVISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('233520', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('233525', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('233530', 'SERVICIOS TECNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('233535', 'SERVICIOS DE MANTENIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('233540', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('233545', 'TRANSPORTES, FLETES Y ACARREOS ');
-INSERT INTO gifi (accno,description) VALUES ('233550', 'SERVICIOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('233555', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('233560', 'GASTOS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('233565', 'GASTOS DE REPRESENTACION Y RELACIONES PUBLICAS ');
-INSERT INTO gifi (accno,description) VALUES ('233570', 'SERVICIOS ADUANEROS ');
-INSERT INTO gifi (accno,description) VALUES ('233595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2340', 'INSTALAMENTOS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2345', 'ACREEDORES OFICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2350', 'REGALIAS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2355', 'DEUDAS CON ACCIONISTAS O SOCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('235505', 'ACCIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('235510', 'SOCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('2360', 'DIVIDENDOS O PARTICIPACIONES POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('236005', 'DIVIDENDOS ');
-INSERT INTO gifi (accno,description) VALUES ('236010', 'PARTICIPACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('2365', 'RETENCION EN LA FUENTE ');
-INSERT INTO gifi (accno,description) VALUES ('236505', 'SALARIOS Y PAGOS LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('236510', 'DIVIDENDOS Y/O PARTICIPACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('236515', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('236520', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('236525', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('236530', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('236535', 'RENDIMIENTOS FINANCIEROS ');
-INSERT INTO gifi (accno,description) VALUES ('236540', 'COMPRAS ');
-INSERT INTO gifi (accno,description) VALUES ('236545', 'LOTERIAS, RIFAS, APUESTAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('236550', 'POR PAGOS AL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('236555', 'POR INGRESOS OBTENIDOS EN EL EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('236560', 'ENAJENACION PROPIEDADES PLANTA Y EQUIPO PERSONAS NATURALES ');
-INSERT INTO gifi (accno,description) VALUES ('236565', 'POR IMPUESTO DE TIMBRE ');
-INSERT INTO gifi (accno,description) VALUES ('236570', 'OTRAS RETENCIONES Y PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('236575', 'AUTORRETENCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('2370', 'RETENCIONES Y APORTES DE NOMINA ');
-INSERT INTO gifi (accno,description) VALUES ('237005', 'APORTES AL I.S.S. ');
-INSERT INTO gifi (accno,description) VALUES ('237010', 'APORTES AL I.C.B.F., SENA Y CAJAS DE COMPENSACION ');
-INSERT INTO gifi (accno,description) VALUES ('237015', 'APORTES AL F.I.C. ');
-INSERT INTO gifi (accno,description) VALUES ('237025', 'EMBARGOS JUDICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('237030', 'LIBRANZAS ');
-INSERT INTO gifi (accno,description) VALUES ('237035', 'SINDICATOS ');
-INSERT INTO gifi (accno,description) VALUES ('237040', 'COOPERATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('237045', 'FONDOS ');
-INSERT INTO gifi (accno,description) VALUES ('237095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2375', 'CUOTAS POR DEVOLVER ');
-INSERT INTO gifi (accno,description) VALUES ('2380', 'ACREEDORES VARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('238005', 'DEPOSITARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('238010', 'COMISIONISTAS DE BOLSAS ');
-INSERT INTO gifi (accno,description) VALUES ('238015', 'SOCIEDAD ADMINISTRADORA - FONDOS DE INVERSION ');
-INSERT INTO gifi (accno,description) VALUES ('238020', 'REINTEGROS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('238025', 'FONDO DE PERSEVERANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('238030', 'FONDOS DE CESANTIAS Y/O PENSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('238035', 'DONACIONES ASIGNADAS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('238095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('24', 'IMPUESTOS, GRAVAMENES Y TASAS ');
-INSERT INTO gifi (accno,description) VALUES ('2404', 'DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('240405', 'VIGENCIA FISCAL CORRIENTE ');
-INSERT INTO gifi (accno,description) VALUES ('240410', 'VIGENCIAS FISCALES ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('2408', 'IMPUESTO SOBRE LAS VENTAS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2412', 'DE INDUSTRIA Y COMERCIO ');
-INSERT INTO gifi (accno,description) VALUES ('241205', 'VIGENCIA FISCAL CORRIENTE ');
-INSERT INTO gifi (accno,description) VALUES ('241210', 'VIGENCIAS FISCALES ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('2416', 'A LA PROPIEDAD RAIZ ');
-INSERT INTO gifi (accno,description) VALUES ('2420', 'DERECHOS SOBRE INSTRUMENTOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('2424', 'DE VALORIZACION ');
-INSERT INTO gifi (accno,description) VALUES ('242405', 'VIGENCIA FISCAL CORRIENTE ');
-INSERT INTO gifi (accno,description) VALUES ('242410', 'VIGENCIAS FISCALES ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('2428', 'DE TURISMO ');
-INSERT INTO gifi (accno,description) VALUES ('2432', 'TASA POR UTILIZACION DE PUERTOS ');
-INSERT INTO gifi (accno,description) VALUES ('2436', 'DE VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('243605', 'VIGENCIA FISCAL CORRIENTE ');
-INSERT INTO gifi (accno,description) VALUES ('243610', 'VIGENCIAS FISCALES ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('2440', 'DE ESPECTACULOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('2444', 'DE HIDROCARBUROS Y MINAS ');
-INSERT INTO gifi (accno,description) VALUES ('244405', 'DE HIDROCARBUROS ');
-INSERT INTO gifi (accno,description) VALUES ('244410', 'DE MINAS ');
-INSERT INTO gifi (accno,description) VALUES ('2448', 'REGALIAS E IMPUESTOS A LA PEQUEŃA Y MEDIANA MINERIA ');
-INSERT INTO gifi (accno,description) VALUES ('2452', 'A LAS EXPORTACIONES CAFETERAS ');
-INSERT INTO gifi (accno,description) VALUES ('2456', 'A LAS IMPORTACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('2460', 'CUOTAS DE FOMENTO ');
-INSERT INTO gifi (accno,description) VALUES ('2464', 'DE LICORES, CERVEZAS Y CIGARRILLOS ');
-INSERT INTO gifi (accno,description) VALUES ('246405', 'DE LICORES ');
-INSERT INTO gifi (accno,description) VALUES ('246410', 'DE CERVEZAS ');
-INSERT INTO gifi (accno,description) VALUES ('246415', 'DE CIGARRILLOS ');
-INSERT INTO gifi (accno,description) VALUES ('2468', 'AL SACRIFICIO DE GANADO ');
-INSERT INTO gifi (accno,description) VALUES ('2472', 'AL AZAR Y JUEGOS ');
-INSERT INTO gifi (accno,description) VALUES ('2476', 'GRAVAMENES Y REGALIAS POR UTILIZACION DEL SUELO ');
-INSERT INTO gifi (accno,description) VALUES ('2495', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('25', 'OBLIGACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('2505', 'SALARIOS POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2510', 'CESANTIAS CONSOLIDADAS ');
-INSERT INTO gifi (accno,description) VALUES ('251005', 'LEY LABORAL ANTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('251010', 'LEY 50 DE 1990 Y NORMAS POSTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('2515', 'INTERESES SOBRE CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('2520', 'PRIMA DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('2525', 'VACACIONES CONSOLIDADAS ');
-INSERT INTO gifi (accno,description) VALUES ('2530', 'PRESTACIONES EXTRALEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('253005', 'PRIMAS ');
-INSERT INTO gifi (accno,description) VALUES ('253010', 'AUXILIOS ');
-INSERT INTO gifi (accno,description) VALUES ('253015', 'DOTACION Y SUMINISTRO A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('253020', 'BONIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('253025', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('253095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('2532', 'PENSIONES POR PAGAR ');
-INSERT INTO gifi (accno,description) VALUES ('2535', 'CUOTAS PARTES PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('2540', 'INDEMNIZACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('26', 'PASIVOS ESTIMADOS Y PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('2605', 'PARA COSTOS Y GASTOS ');
-INSERT INTO gifi (accno,description) VALUES ('260505', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('260510', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('260515', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('260520', 'SERVICIOS TECNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('260525', 'TRANSPORTES, FLETES Y ACARREOS ');
-INSERT INTO gifi (accno,description) VALUES ('260530', 'GASTOS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('260535', 'SERVICIOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('260540', 'REGALIAS ');
-INSERT INTO gifi (accno,description) VALUES ('260545', 'GARANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('260550', 'MATERIALES Y REPUESTOS ');
-INSERT INTO gifi (accno,description) VALUES ('260595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2610', 'PARA OBLIGACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('261005', 'CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('261010', 'INTERESES SOBRE CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('261015', 'VACACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('261020', 'PRIMA DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('261025', 'PRESTACIONES EXTRALEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('261030', 'VIATICOS ');
-INSERT INTO gifi (accno,description) VALUES ('261095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('2615', 'PARA OBLIGACIONES FISCALES ');
-INSERT INTO gifi (accno,description) VALUES ('261505', 'DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('261510', 'DE INDUSTRIA Y COMERCIO ');
-INSERT INTO gifi (accno,description) VALUES ('261515', 'TASA POR UTILIZACION DE PUERTOS ');
-INSERT INTO gifi (accno,description) VALUES ('261520', 'DE VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('261525', 'DE HIDROCARBUROS Y MINAS ');
-INSERT INTO gifi (accno,description) VALUES ('261595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2620', 'PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('262005', 'CALCULO ACTUARIAL PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('262010', 'PENSIONES DE JUBILACION POR AMORTIZAR (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('2625', 'PARA OBRAS DE URBANISMO ');
-INSERT INTO gifi (accno,description) VALUES ('262505', 'ACUEDUCTO Y ALCANTARILLADO ');
-INSERT INTO gifi (accno,description) VALUES ('262510', 'ENERGIA ELECTRICA ');
-INSERT INTO gifi (accno,description) VALUES ('262515', 'TELEFONOS ');
-INSERT INTO gifi (accno,description) VALUES ('262595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2630', 'PARA MANTENIMIENTO Y REPARACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('263005', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('263010', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('263015', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('263020', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('263025', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('263030', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('263035', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('263040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('263045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('263050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('263055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('263060', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('263065', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('263070', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('263075', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('263080', 'VIAS DE CUMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('263085', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('263095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2635', 'PARA CONTINGENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('263505', 'MULTAS Y SANCIONES AUTORIDADES ADMINISTRATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('263510', 'INTERESES POR MULTAS Y SANCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('263515', 'RECLAMOS ');
-INSERT INTO gifi (accno,description) VALUES ('263520', 'LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('263525', 'CIVILES ');
-INSERT INTO gifi (accno,description) VALUES ('263530', 'PENALES ');
-INSERT INTO gifi (accno,description) VALUES ('263535', 'ADMINISTRATIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('263540', 'COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('263595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('2640', 'PARA OBLIGACIONES DE GARANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('2695', 'PROVISIONES DIVERSAS ');
-INSERT INTO gifi (accno,description) VALUES ('269505', 'PARA BENEFICENCIA ');
-INSERT INTO gifi (accno,description) VALUES ('269510', 'PARA COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('269515', 'PARA PERDIDA EN TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('269520', 'PARA OPERACION ');
-INSERT INTO gifi (accno,description) VALUES ('269525', 'PARA PROTECCION DE BIENES AGOTABLES ');
-INSERT INTO gifi (accno,description) VALUES ('269530', 'PARA AJUSTES EN REDENCION DE UNIDADES ');
-INSERT INTO gifi (accno,description) VALUES ('269535', 'AUTOSEGURO ');
-INSERT INTO gifi (accno,description) VALUES ('269540', 'PLANES Y PROGRAMAS DE REFORESTACION Y ELECTRIFICACION ');
-INSERT INTO gifi (accno,description) VALUES ('269595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('27', 'DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('2705', 'INGRESOS RECIBIDOS POR ANTICIPADO ');
-INSERT INTO gifi (accno,description) VALUES ('270505', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('270510', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('270515', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('270520', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('270525', 'SERVICIOS TECNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('270530', 'DE SUSCRIPTORES ');
-INSERT INTO gifi (accno,description) VALUES ('270535', 'TRANSPORTES, FLETES Y ACARREOS ');
-INSERT INTO gifi (accno,description) VALUES ('270540', 'MERCANCIA EN TRANSITO YA VENDIDA ');
-INSERT INTO gifi (accno,description) VALUES ('270545', 'MATRICULAS Y PENSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('270550', 'CUOTAS DE ADMINISTRACION ');
-INSERT INTO gifi (accno,description) VALUES ('270595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2710', 'ABONOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('271005', 'REAJUSTE DEL SISTEMA ');
-INSERT INTO gifi (accno,description) VALUES ('2715', 'UTILIDAD DIFERIDA EN VENTAS A PLAZOS ');
-INSERT INTO gifi (accno,description) VALUES ('2720', 'CREDITO POR CORRECCION MONETARIA DIFERIDA ');
-INSERT INTO gifi (accno,description) VALUES ('2725', 'IMPUESTOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('272505', 'POR DEPRECIACION FLEXIBLE ');
-INSERT INTO gifi (accno,description) VALUES ('272595', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('272599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('28', 'OTROS PASIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('2805', 'ANTICIPOS Y AVANCES RECIBIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('280505', 'DE CLIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('280510', 'SOBRE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('280515', 'PARA OBRAS EN PROCESO ');
-INSERT INTO gifi (accno,description) VALUES ('280595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2810', 'DEPOSITOS RECIBIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('281005', 'PARA FUTURA SUSCRIPCION DE ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('281010', 'PARA FUTURO PAGO DE CUOTAS O DERECHOS SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('281015', 'PARA GARANTIA EN LA PRESTACION DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('281020', 'PARA GARANTIA DE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('281025', 'DE LICITACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('281030', 'DE MANEJO DE BIENES ');
-INSERT INTO gifi (accno,description) VALUES ('281035', 'FONDO DE RESERVA ');
-INSERT INTO gifi (accno,description) VALUES ('281095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('2815', 'INGRESOS RECIBIDOS PARA TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('281505', 'VALORES RECIBIDOS PARA TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('281510', 'VENTA POR CUENTA DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('2820', 'CUENTAS DE OPERACION CONJUNTA ');
-INSERT INTO gifi (accno,description) VALUES ('2825', 'RETENCIONES A TERCEROS SOBRE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('282505', 'CUMPLIMIENTO OBLIGACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('282510', 'PARA ESTABILIDAD DE OBRA ');
-INSERT INTO gifi (accno,description) VALUES ('282515', 'GARANTIA CUMPLIMIENTO DE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('2830', 'EMBARGOS JUDICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('283005', 'INDEMNIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('283010', 'DEPOSITOS JUDICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2835', 'ACREEDORES DEL SISTEMA ');
-INSERT INTO gifi (accno,description) VALUES ('283505', 'CUOTAS NETAS ');
-INSERT INTO gifi (accno,description) VALUES ('283510', 'GRUPOS EN FORMACION ');
-INSERT INTO gifi (accno,description) VALUES ('2840', 'CUENTAS EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('2895', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('289505', 'PRESTAMOS DE PRODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('289510', 'REEMBOLSO DE COSTOS EXPLORATORIOS ');
-INSERT INTO gifi (accno,description) VALUES ('289515', 'PROGRAMA DE EXTENSION AGROPECUARIA ');
-INSERT INTO gifi (accno,description) VALUES ('29', 'BONOS Y PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('2905', 'BONOS EN CIRCULACION ');
-INSERT INTO gifi (accno,description) VALUES ('290505', 'GARANTIA GENERAL ');
-INSERT INTO gifi (accno,description) VALUES ('290510', 'GARANTIA ESPECIFICA ');
-INSERT INTO gifi (accno,description) VALUES ('2910', 'BONOS OBLIGATORIAMENTE CONVERTIBLES EN ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('2915', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('3', 'PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('31', 'CAPITAL SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('3105', 'CAPITAL SUSCRITO Y PAGADO ');
-INSERT INTO gifi (accno,description) VALUES ('310505', 'CAPITAL AUTORIZADO ');
-INSERT INTO gifi (accno,description) VALUES ('310510', 'CAPITAL POR SUSCRIBIR (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('310515', 'CAPITAL SUSCRITO POR COBRAR (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('3110', 'ACCIONES, CUOTAS O PARTES DE INTERES SOCIAL PROPIAS READQUIRIDAS (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('311005', 'ACCIONES PROPIAS READQUIRIDAS (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('311010', 'CUOTAS O PARTES DE INTERES SOCIAL PROPIAS READQUIRIDAS (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('3115', 'APORTES SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('311505', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('311510', 'APORTES DE SOCIOS - FONDO MUTUO DE INVERSION ');
-INSERT INTO gifi (accno,description) VALUES ('311515', 'CONTRIBUCION DE LA EMPRESA - FONDO MUTUO DE INVERSION ');
-INSERT INTO gifi (accno,description) VALUES ('311520', 'SUSCRIPCIONES DEL PUBLICO ');
-INSERT INTO gifi (accno,description) VALUES ('3120', 'CAPITAL ASIGNADO ');
-INSERT INTO gifi (accno,description) VALUES ('3125', 'INVERSION SUPLEMENTARIA AL CAPITAL ASIGNADO ');
-INSERT INTO gifi (accno,description) VALUES ('3130', 'CAPITAL DE PERSONAS NATURALES ');
-INSERT INTO gifi (accno,description) VALUES ('3135', 'APORTES DEL ESTADO ');
-INSERT INTO gifi (accno,description) VALUES ('3140', 'FONDO SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('32', 'SUPERAVIT DE CAPITAL ');
-INSERT INTO gifi (accno,description) VALUES ('3205', 'PRIMA EN COLOCACION DE ACCIONES, CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('320505', 'PRIMA EN COLOCACION DE ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('320510', 'PRIMA EN COLOCACION DE ACCIONES POR COBRAR (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('320515', 'PRIMA EN COLOCACION DE CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('3210', 'DONACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('321005', 'EN DINERO ');
-INSERT INTO gifi (accno,description) VALUES ('321010', 'EN VALORES MOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('321015', 'EN BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('321020', 'EN BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('321025', 'EN INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('3215', 'CREDITO MERCANTIL ');
-INSERT INTO gifi (accno,description) VALUES ('33', 'RESERVAS ');
-INSERT INTO gifi (accno,description) VALUES ('3305', 'RESERVAS OBLIGATORIAS ');
-INSERT INTO gifi (accno,description) VALUES ('330505', 'RESERVA LEGAL ');
-INSERT INTO gifi (accno,description) VALUES ('330510', 'RESERVAS POR DISPOSICIONES FISCALES ');
-INSERT INTO gifi (accno,description) VALUES ('330515', 'RESERVA PARA READQUISICION DE ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('330517', 'RESERVA PARA READQUISICION DE CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('330520', 'RESERVA PARA EXTENSION AGROPECUARIA ');
-INSERT INTO gifi (accno,description) VALUES ('330525', 'RESERVA LEY 7a. DE 1990 ');
-INSERT INTO gifi (accno,description) VALUES ('330530', 'RESERVA PARA REPOSICION DE SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('330535', 'RESERVA LEY 4a DE 1980 ');
-INSERT INTO gifi (accno,description) VALUES ('330595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('3310', 'RESERVAS ESTATUTARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('331005', 'PARA FUTURAS CAPITALIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('331010', 'PARA REPOSICION DE ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('331015', 'PARA FUTUROS ENSANCHES ');
-INSERT INTO gifi (accno,description) VALUES ('331095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('3315', 'RESERVAS OCASIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('331505', 'PARA BENEFICENCIA Y CIVISMO ');
-INSERT INTO gifi (accno,description) VALUES ('331510', 'PARA FUTURAS CAPITALIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('331515', 'PARA FUTUROS ENSANCHES ');
-INSERT INTO gifi (accno,description) VALUES ('331520', 'PARA ADQUISICION O REPOSICION DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('331525', 'PARA INVESTIGACIONES Y DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('331530', 'PARA FOMENTO ECONOMICO ');
-INSERT INTO gifi (accno,description) VALUES ('331535', 'PARA CAPITAL DE TRABAJO ');
-INSERT INTO gifi (accno,description) VALUES ('331540', 'PARA ESTABILIZACION DE RENDIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('331545', 'A DISPOSICION DEL MAXIMO ORGANO SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('331595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('34', 'REVALORIZACION DEL PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('3405', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('340505', 'DE CAPITAL SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('340510', 'DE SUPERAVIT DE CAPITAL ');
-INSERT INTO gifi (accno,description) VALUES ('340515', 'DE RESERVAS ');
-INSERT INTO gifi (accno,description) VALUES ('340520', 'DE RESULTADOS DE EJERCICIOS ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('340525', 'DE ACTIVOS EN PERIODO IMPRODUCTIVO ');
-INSERT INTO gifi (accno,description) VALUES ('3410', 'SANEAMIENTO FISCAL ');
-INSERT INTO gifi (accno,description) VALUES ('3415', 'AJUSTES POR INFLACION DECRETO 3019 DE 1989 ');
-INSERT INTO gifi (accno,description) VALUES ('35', 'DIVIDENDOS O PARTICIPACIONES DECRETADOS EN ACCIONES, CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('3505', 'DIVIDENDOS DECRETADOS EN ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('3510', 'PARTICIPACIONES DECRETADAS EN CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('36', 'RESULTADOS DEL EJERCICIO ');
-INSERT INTO gifi (accno,description) VALUES ('3605', 'UTILIDAD DEL EJERCICIO ');
-INSERT INTO gifi (accno,description) VALUES ('360505', 'UTILIDAD DEL EJERCICIO ');
-INSERT INTO gifi (accno,description) VALUES ('360510', 'UTILIDAD POR EXPOSICION A LA INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('3610', 'PERDIDA DEL EJERCICIO ');
-INSERT INTO gifi (accno,description) VALUES ('361005', 'PERDIDA DEL EJERCICIO ');
-INSERT INTO gifi (accno,description) VALUES ('361010', 'PERDIDA POR EXPOSICION A LA INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('37', 'RESULTADOS DE EJERCICIOS ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('3705', 'UTILIDADES O EXCEDENTES ACUMULADOS ');
-INSERT INTO gifi (accno,description) VALUES ('3710', 'PERDIDAS ACUMULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('38', 'SUPERAVIT POR VALORIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('3805', 'DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('380505', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('380510', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('380515', 'DERECHOS FIDUCIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('3810', 'DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('381004', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('381006', 'MATERIALES PROYECTOS PETROLEROS ');
-INSERT INTO gifi (accno,description) VALUES ('381008', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('381012', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('381016', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('381020', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('381024', 'EQUIPO MEDICO CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('381028', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('381032', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('381036', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('381040', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('381044', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('381048', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('381052', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('381056', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('381060', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('381064', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('381068', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('381072', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('381076', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('381080', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('3895', 'DE OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('389505', 'BIENES DE ARTE Y CULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('389510', 'BIENES ENTREGADOS EN COMODATO ');
-INSERT INTO gifi (accno,description) VALUES ('389515', 'BIENES RECIBIDOS EN PAGO ');
-INSERT INTO gifi (accno,description) VALUES ('389520', 'INVENTARIO DE SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('4', 'INGRESOS ');
-INSERT INTO gifi (accno,description) VALUES ('41', 'OPERACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('4105', 'AGRICULTURA, GANADERIA, CAZA Y SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('410505', 'CULTIVO DE CEREALES ');
-INSERT INTO gifi (accno,description) VALUES ('410510', 'CULTIVOS DE HORTALIZAS, LEGUMBRES Y PLANTAS ORNAMENTALES ');
-INSERT INTO gifi (accno,description) VALUES ('410515', 'CULTIVOS DE FRUTAS, NUECES Y PLANTAS AROMATICAS ');
-INSERT INTO gifi (accno,description) VALUES ('410520', 'CULTIVO DE CAFE ');
-INSERT INTO gifi (accno,description) VALUES ('410525', 'CULTIVO DE FLORES ');
-INSERT INTO gifi (accno,description) VALUES ('410530', 'CULTIVO DE CAŃA DE AZUCAR ');
-INSERT INTO gifi (accno,description) VALUES ('410535', 'CULTIVO DE ALGODON Y PLANTAS PARA MATERIAL TEXTIL ');
-INSERT INTO gifi (accno,description) VALUES ('410540', 'CULTIVO DE BANANO ');
-INSERT INTO gifi (accno,description) VALUES ('410545', 'OTROS CULTIVOS AGRICOLAS ');
-INSERT INTO gifi (accno,description) VALUES ('410550', 'CRIA DE OVEJAS, CABRAS, ASNOS, MULAS Y BURDEGANOS ');
-INSERT INTO gifi (accno,description) VALUES ('410555', 'CRIA DE GANADO CABALLAR Y VACUNO. ');
-INSERT INTO gifi (accno,description) VALUES ('410560', 'PRODUCCION AVICOLA ');
-INSERT INTO gifi (accno,description) VALUES ('410565', 'CRIA DE OTROS ANIMALES ');
-INSERT INTO gifi (accno,description) VALUES ('410570', 'SERVICIOS AGRICOLAS Y GANADEROS ');
-INSERT INTO gifi (accno,description) VALUES ('410575', 'ACTIVIDAD DE CAZA ');
-INSERT INTO gifi (accno,description) VALUES ('410580', 'ACTIVIDAD DE SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('410599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4110', 'PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('411005', 'ACTIVIDAD DE PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('411010', 'EXPLOTACION DE CRIADEROS DE PECES ');
-INSERT INTO gifi (accno,description) VALUES ('411095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('411099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4115', 'EXPLOTACION DE MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('411505', 'CARBON ');
-INSERT INTO gifi (accno,description) VALUES ('411510', 'PETROLEO CRUDO ');
-INSERT INTO gifi (accno,description) VALUES ('411512', 'GAS NATURAL ');
-INSERT INTO gifi (accno,description) VALUES ('411514', 'SERVICIOS RELACIONADOS CON EXTRACCION DE PETROLEO Y GAS ');
-INSERT INTO gifi (accno,description) VALUES ('411515', 'MINERALES DE HIERRO ');
-INSERT INTO gifi (accno,description) VALUES ('411520', 'MINERALES METALIFEROS NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('411525', 'PIEDRA, ARENA Y ARCILLA ');
-INSERT INTO gifi (accno,description) VALUES ('411527', 'PIEDRAS PRECIOSAS ');
-INSERT INTO gifi (accno,description) VALUES ('411528', 'ORO ');
-INSERT INTO gifi (accno,description) VALUES ('411530', 'OTRAS MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('411532', 'PRESTACION DE SERVICIOS SECTOR MINERO ');
-INSERT INTO gifi (accno,description) VALUES ('411595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('411599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4120', 'INDUSTRIAS MANUFACTURERAS ');
-INSERT INTO gifi (accno,description) VALUES ('412001', 'PRODUCCION Y PROCESAMIENTO DE CARNES Y PRODUCTOS CARNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('412002', 'PRODUCTOS DE PESCADO ');
-INSERT INTO gifi (accno,description) VALUES ('412003', 'PRODUCTOS DE FRUTAS, LEGUMBRES Y HORTALIZAS ');
-INSERT INTO gifi (accno,description) VALUES ('412004', 'ELABORACION DE ACEITES Y GRASAS ');
-INSERT INTO gifi (accno,description) VALUES ('412005', 'ELABORACION DE PRODUCTOS LACTEOS ');
-INSERT INTO gifi (accno,description) VALUES ('412006', 'ELABORACION DE PRODUCTOS DE MOLINERIA ');
-INSERT INTO gifi (accno,description) VALUES ('412007', 'ELABORACION DE ALMIDONES Y DERIVADOS ');
-INSERT INTO gifi (accno,description) VALUES ('412008', 'ELABORACION DE ALIMENTOS PARA ANIMALES ');
-INSERT INTO gifi (accno,description) VALUES ('412009', 'ELABORACION DE PRODUCTOS PARA PANADERIA ');
-INSERT INTO gifi (accno,description) VALUES ('412010', 'ELABORACION DE AZUCAR Y MELAZAS ');
-INSERT INTO gifi (accno,description) VALUES ('412011', 'ELABORACION DE CACAO, CHOCOLATE Y CONFITERIA ');
-INSERT INTO gifi (accno,description) VALUES ('412012', 'ELABORACION DE PASTAS Y PRODUCTOS FARINACEOS ');
-INSERT INTO gifi (accno,description) VALUES ('412013', 'ELABORACION DE PRODUCTOS DE CAFE ');
-INSERT INTO gifi (accno,description) VALUES ('412014', 'ELABORACION DE OTROS PRODUCTOS ALIMENTICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('412015', 'ELABORACION DE BEBIDAS ALCOHOLICAS Y ALCOHOL ETILICO ');
-INSERT INTO gifi (accno,description) VALUES ('412016', 'ELABORACION DE VINOS ');
-INSERT INTO gifi (accno,description) VALUES ('412017', 'ELABORACION DE BEBIDAS MALTEADAS Y DE MALTA ');
-INSERT INTO gifi (accno,description) VALUES ('412018', 'ELABORACION DE BEBIDAS NO ALCOHOLICAS ');
-INSERT INTO gifi (accno,description) VALUES ('412019', 'ELABORACION DE PRODUCTOS DE TABACO ');
-INSERT INTO gifi (accno,description) VALUES ('412020', 'PREPARACION E HILATURA DE FIBRAS TEXTILES Y TEJEDURIA ');
-INSERT INTO gifi (accno,description) VALUES ('412021', 'ACABADO DE PRODUCTOS TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('412022', 'ELABORACION DE ARTICULOS DE MATERIALES TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('412023', 'ELABORACION DE TAPICES Y ALFOMBRAS ');
-INSERT INTO gifi (accno,description) VALUES ('412024', 'ELABORACION DE CUERDAS, CORDELES, BRAMANTES Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('412025', 'ELABORACION DE OTROS PRODUCTOS TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('412026', 'ELABORACION DE TEJIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('412027', 'ELABORACION DE PRENDAS DE VESTIR ');
-INSERT INTO gifi (accno,description) VALUES ('412028', 'PREPARACION, ADOBO Y TEŃIDO DE PIELES ');
-INSERT INTO gifi (accno,description) VALUES ('412029', 'CURTIDO, ADOBO O PREPARACION DE CUERO ');
-INSERT INTO gifi (accno,description) VALUES ('412030', 'ELABORACION DE MALETAS, BOLSOS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('412031', 'ELABORACION DE CALZADO ');
-INSERT INTO gifi (accno,description) VALUES ('412032', 'PRODUCCION DE MADERA, ARTICULOS DE MADERA Y CORCHO ');
-INSERT INTO gifi (accno,description) VALUES ('412033', 'ELABORACION DE PASTA Y PRODUCTOS DE MADERA, PAPEL Y CARTON ');
-INSERT INTO gifi (accno,description) VALUES ('412034', 'EDICIONES Y PUBLICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('412035', 'IMPRESION ');
-INSERT INTO gifi (accno,description) VALUES ('412036', 'SERVICIOS RELACIONADOS CON LA EDICION Y LA IMPRESION ');
-INSERT INTO gifi (accno,description) VALUES ('412037', 'REPRODUCCION DE GRABACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('412038', 'ELABORACION DE PRODUCTOS DE HORNO DE COQUE ');
-INSERT INTO gifi (accno,description) VALUES ('412039', 'ELABORACION DE PRODUCTOS DE LA REFINACION DE PETROLEO ');
-INSERT INTO gifi (accno,description) VALUES ('412040', 'ELABORACION DE SUSTANCIAS QUIMICAS BASICAS ');
-INSERT INTO gifi (accno,description) VALUES ('412041', 'ELABORACION DE ABONOS Y COMPUESTOS DE NITROGENO ');
-INSERT INTO gifi (accno,description) VALUES ('412042', 'ELABORACION DE PLASTICO Y CAUCHO SINTETICO ');
-INSERT INTO gifi (accno,description) VALUES ('412043', 'ELABORACION DE PRODUCTOS QUIMICOS DE USO AGROPECUARIO ');
-INSERT INTO gifi (accno,description) VALUES ('412044', 'ELABORACION DE PINTURAS, TINTAS Y MASILLAS ');
-INSERT INTO gifi (accno,description) VALUES ('412045', 'ELABORACION DE PRODUCTOS FARMACEUTICOS Y BOTANICOS ');
-INSERT INTO gifi (accno,description) VALUES ('412046', 'ELABORACION DE JABONES, DETERGENTES Y PREPARADOS DE TOCADOR ');
-INSERT INTO gifi (accno,description) VALUES ('412047', 'ELABORACION DE OTROS PRODUCTOS QUIMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('412048', 'ELABORACION DE FIBRAS ');
-INSERT INTO gifi (accno,description) VALUES ('412049', 'ELABORACION DE OTROS PRODUCTOS DE CAUCHO ');
-INSERT INTO gifi (accno,description) VALUES ('412050', 'ELABORACION DE PRODUCTOS DE PLASTICO ');
-INSERT INTO gifi (accno,description) VALUES ('412051', 'ELABORACION DE VIDRIO Y PRODUCTOS DE VIDRIO ');
-INSERT INTO gifi (accno,description) VALUES ('412052', 'ELABORACION DE PRODUCTOS DE CERAMICA, LOZA, PIEDRA, ARCILLA Y PORCELANA ');
-INSERT INTO gifi (accno,description) VALUES ('412053', 'ELABORACION DE CEMENTO, CAL Y YESO ');
-INSERT INTO gifi (accno,description) VALUES ('412054', 'ELABORACION DE ARTICULOS DE HORMIGON, CEMENTO Y YESO ');
-INSERT INTO gifi (accno,description) VALUES ('412055', 'CORTE, TALLADO Y ACABADO DE LA PIEDRA ');
-INSERT INTO gifi (accno,description) VALUES ('412056', 'ELABORACION DE OTROS PRODUCTOS MINERALES NO METALICOS ');
-INSERT INTO gifi (accno,description) VALUES ('412057', 'INDUSTRIAS BASICAS Y FUNDICION DE HIERRO Y ACERO ');
-INSERT INTO gifi (accno,description) VALUES ('412058', 'PRODUCTOS PRIMARIOS DE METALES PRECIOSOS Y DE METALES NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('412059', 'FUNDICION DE METALES NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('412060', 'FABRICACION DE PRODUCTOS METALICOS PARA USO ESTRUCTURAL ');
-INSERT INTO gifi (accno,description) VALUES ('412061', 'FORJA, PRENSADO, ESTAMPADO, LAMINADO DE METAL Y PULVIMETALURGIA ');
-INSERT INTO gifi (accno,description) VALUES ('412062', 'REVESTIMIENTO DE METALES Y OBRAS DE INGENIERIA MECANICA ');
-INSERT INTO gifi (accno,description) VALUES ('412063', 'FABRICACION DE ARTICULOS DE FERRETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('412064', 'ELABORACION DE OTROS PRODUCTOS DE METAL ');
-INSERT INTO gifi (accno,description) VALUES ('412065', 'FABRICACION DE MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('412066', 'FABRICACION DE EQUIPOS DE ELEVACION Y MANIPULACION ');
-INSERT INTO gifi (accno,description) VALUES ('412067', 'ELABORACION DE APARATOS DE USO DOMESTICO ');
-INSERT INTO gifi (accno,description) VALUES ('412068', 'ELABORACION DE EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('412069', 'ELABORACION DE PILAS Y BATERIAS PRIMARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('412070', 'ELABORACION DE EQUIPO DE ILUMINACION ');
-INSERT INTO gifi (accno,description) VALUES ('412071', 'ELABORACION DE OTROS TIPOS DE EQUIPO ELECTRICO ');
-INSERT INTO gifi (accno,description) VALUES ('412072', 'FABRICACION DE EQUIPOS DE RADIO, TELEVISION Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('412073', 'FABRICACION DE APARATOS E INSTRUMENTOS MEDICOS ');
-INSERT INTO gifi (accno,description) VALUES ('412074', 'FABRICACION DE INSTRUMENTOS DE MEDICION Y CONTROL ');
-INSERT INTO gifi (accno,description) VALUES ('412075', 'FABRICACION DE INSTRUMENTOS DE OPTICA Y EQUIPO FOTOGRAFICO ');
-INSERT INTO gifi (accno,description) VALUES ('412076', 'FABRICACION DE RELOJES ');
-INSERT INTO gifi (accno,description) VALUES ('412077', 'FABRICACION DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('412078', 'FABRICACION DE CARROCERIAS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('412079', 'FABRICACION DE PARTES PIEZAS Y ACCESORIOS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('412080', 'FABRICACION Y REPARACION DE BUQUES Y OTRAS EMBARCACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('412081', 'FABRICACION DE LOCOMOTORAS Y MATERIAL RODANTE PARA FERROCARRILES ');
-INSERT INTO gifi (accno,description) VALUES ('412082', 'FABRICACION DE AERONAVES ');
-INSERT INTO gifi (accno,description) VALUES ('412083', 'FABRICACION DE MOTOCICLETAS ');
-INSERT INTO gifi (accno,description) VALUES ('412084', 'FABRICACION DE BICICLETAS Y SILLAS DE RUEDAS ');
-INSERT INTO gifi (accno,description) VALUES ('412085', 'FABRICACION DE OTROS TIPOS DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('412086', 'FABRICACION DE MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('412087', 'FABRICACION DE JOYAS Y ARTICULOS CONEXOS ');
-INSERT INTO gifi (accno,description) VALUES ('412088', 'FABRICACION DE INSTRUMENTOS DE MUSICA ');
-INSERT INTO gifi (accno,description) VALUES ('412089', 'FABRICACION DE ARTICULOS Y EQUIPO PARA DEPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('412090', 'FABRICACION DE JUEGOS Y JUGUETES ');
-INSERT INTO gifi (accno,description) VALUES ('412091', 'RECICLAMIENTO DE DESPERDICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('412095', 'PRODUCTOS DE OTRAS INDUSTRIAS MANUFACTURERAS ');
-INSERT INTO gifi (accno,description) VALUES ('412099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4125', 'SUMINISTRO DE ELECTRICIDAD, GAS Y AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('412505', 'GENERACION, CAPTACION Y DISTRIBUCION DE ENERGIA ELECTRICA ');
-INSERT INTO gifi (accno,description) VALUES ('412510', 'FABRICACION DE GAS Y DISTRIBUCION DE COMBUSTIBLES GASEOSOS ');
-INSERT INTO gifi (accno,description) VALUES ('412515', 'CAPTACION, DEPURACION Y DISTRIBUCION DE AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('412595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('412599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4130', 'CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('413005', 'PREPARACION DE TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('413010', 'CONSTRUCCION DE EDIFICIOS Y OBRAS DE INGENIERIA CIVIL ');
-INSERT INTO gifi (accno,description) VALUES ('413015', 'ACONDICIONAMIENTO DE EDIFICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('413020', 'TERMINACION DE EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('413025', 'ALQUILER DE EQUIPO CON OPERARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('413095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('413099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4135', 'COMERCIO AL POR MAYOR Y AL POR MENOR ');
-INSERT INTO gifi (accno,description) VALUES ('413502', 'VENTA DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('413504', 'MANTENIMIENTO, REPARACION Y LAVADO DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('413506', 'VENTA DE PARTES, PIEZAS Y ACCESORIOS DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('413508', 'VENTA DE COMBUSTIBLES SOLIDOS, LIQUIDOS, GASEOSOS ');
-INSERT INTO gifi (accno,description) VALUES ('413510', 'VENTA DE LUBRICANTES, ADITIVOS, LLANTAS Y LUJOS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('413512', 'VENTA A CAMBIO DE RETRIBUCION O POR CONTRATA ');
-INSERT INTO gifi (accno,description) VALUES ('413514', 'VENTA DE INSUMOS, MATERIAS PRIMAS AGROPECUARIAS Y FLORES ');
-INSERT INTO gifi (accno,description) VALUES ('413516', 'VENTA DE OTROS INSUMOS Y MATERIAS PRIMAS NO AGROPECUARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('413518', 'VENTA DE ANIMALES VIVOS Y CUEROS ');
-INSERT INTO gifi (accno,description) VALUES ('413520', 'VENTA DE PRODUCTOS EN ALMACENES NO ESPECIALIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('413522', 'VENTA DE PRODUCTOS AGROPECUARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('413524', 'VENTA DE PRODUCTOS TEXTILES, DE VESTIR, DE CUERO Y CALZADO ');
-INSERT INTO gifi (accno,description) VALUES ('413526', 'VENTA DE PAPEL Y CARTON ');
-INSERT INTO gifi (accno,description) VALUES ('413528', 'VENTA DE LIBROS, REVISTAS, ELEMENTOS DE PAPELERIA, UTILES Y TEXTOS ESCOLARES ');
-INSERT INTO gifi (accno,description) VALUES ('413530', 'VENTA DE JUEGOS, JUGUETES Y ARTICULOS DEPORTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('413532', 'VENTA DE INSTRUMENTOS QUIRURGICOS Y ORTOPEDICOS ');
-INSERT INTO gifi (accno,description) VALUES ('413534', 'VENTA DE ARTICULOS EN RELOJERIAS Y JOYERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('413536', 'VENTA DE ELECTRODOMESTICOS Y MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('413538', 'VENTA DE PRODUCTOS DE ASEO, FARMACEUTICOS, MEDICINALES, Y ARTICULOS DE TOCADOR ');
-INSERT INTO gifi (accno,description) VALUES ('413540', 'VENTA DE CUBIERTOS, VAJILLAS, CRISTALERIA, PORCELANAS, CERAMICAS Y OTROS ARTICULOS DE USO DOMESTICO ');
-INSERT INTO gifi (accno,description) VALUES ('413542', 'VENTA DE MATERIALES DE CONSTRUCCION, FONTANERIA Y CALEFACCION ');
-INSERT INTO gifi (accno,description) VALUES ('413544', 'VENTA DE PINTURAS Y LACAS ');
-INSERT INTO gifi (accno,description) VALUES ('413546', 'VENTA DE PRODUCTOS DE VIDRIOS Y MARQUETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('413548', 'VENTA DE HERRAMIENTAS Y ARTICULOS DE FERRETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('413550', 'VENTA DE QUIMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('413552', 'VENTA DE PRODUCTOS INTERMEDIOS, DESPERDICIOS Y DESECHOS ');
-INSERT INTO gifi (accno,description) VALUES ('413554', 'VENTA DE MAQUINARIA, EQUIPO DE OFICINA Y PROGRAMAS DE COMPUTADOR ');
-INSERT INTO gifi (accno,description) VALUES ('413556', 'VENTA DE ARTICULOS EN CACHARRERIAS Y MISCELANEAS ');
-INSERT INTO gifi (accno,description) VALUES ('413558', 'VENTA DE INSTRUMENTOS MUSICALES ');
-INSERT INTO gifi (accno,description) VALUES ('413560', 'VENTA DE ARTICULOS EN CASAS DE EMPEŃO Y PRENDERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('413562', 'VENTA DE EQUIPO FOTOGRAFICO ');
-INSERT INTO gifi (accno,description) VALUES ('413564', 'VENTA DE EQUIPO OPTICO Y DE PRECISION ');
-INSERT INTO gifi (accno,description) VALUES ('413566', 'VENTA DE EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('413568', 'VENTA DE EQUIPO PROFESIONAL Y CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('413570', 'VENTA DE LOTERIAS, RIFAS, CHANCE, APUESTAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('413572', 'REPARACION DE EFECTOS PERSONALES Y ELECTRODOMESTICOS ');
-INSERT INTO gifi (accno,description) VALUES ('413595', 'VENTA DE OTROS PRODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('413599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4140', 'HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('414005', 'HOTELERIA ');
-INSERT INTO gifi (accno,description) VALUES ('414010', 'CAMPAMENTO Y OTROS TIPOS DE HOSPEDAJE ');
-INSERT INTO gifi (accno,description) VALUES ('414015', 'RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('414020', 'BARES Y CANTINAS ');
-INSERT INTO gifi (accno,description) VALUES ('414095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('414099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4145', 'TRANSPORTE, ALMACENAMIENTO Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('414505', 'SERVICIO DE TRANSPORTE POR CARRETERA ');
-INSERT INTO gifi (accno,description) VALUES ('414510', 'SERVICIO DE TRANSPORTE POR VIA FERREA ');
-INSERT INTO gifi (accno,description) VALUES ('414515', 'SERVICIO DE TRANSPORTE POR VIA ACUATICA ');
-INSERT INTO gifi (accno,description) VALUES ('414520', 'SERVICIO DE TRANSPORTE POR VIA AEREA ');
-INSERT INTO gifi (accno,description) VALUES ('414525', 'SERVICIO DE TRANSPORTE POR TUBERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('414530', 'MANIPULACION DE CARGA ');
-INSERT INTO gifi (accno,description) VALUES ('414535', 'ALMACENAMIENTO Y DEPOSITO ');
-INSERT INTO gifi (accno,description) VALUES ('414540', 'SERVICIOS COMPLEMENTARIOS PARA EL TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('414545', 'AGENCIAS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('414550', 'OTRAS AGENCIAS DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('414555', 'SERVICIO POSTAL Y DE CORREO ');
-INSERT INTO gifi (accno,description) VALUES ('414560', 'SERVICIO TELEFONICO ');
-INSERT INTO gifi (accno,description) VALUES ('414565', 'SERVICIO DE TELEGRAFO ');
-INSERT INTO gifi (accno,description) VALUES ('414570', 'SERVICIO DE TRANSMISION DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('414575', 'SERVICIO DE RADIO Y TELEVISION POR CABLE ');
-INSERT INTO gifi (accno,description) VALUES ('414580', 'TRANSMISION DE SONIDO E IMAGENES POR CONTRATO ');
-INSERT INTO gifi (accno,description) VALUES ('414595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('414599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4150', 'ACTIVIDAD FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('415005', 'VENTA DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('415010', 'DIVIDENDOS DE SOCIEDADES ANONIMAS Y/O ASIMILADAS ');
-INSERT INTO gifi (accno,description) VALUES ('415015', 'PARTICIPACIONES DE SOCIEDADES LIMITADAS Y/O ASIMILADAS ');
-INSERT INTO gifi (accno,description) VALUES ('415020', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('415025', 'REAJUSTE MONETARIO - UPAC ');
-INSERT INTO gifi (accno,description) VALUES ('415030', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('415035', 'OPERACIONES DE DESCUENTO ');
-INSERT INTO gifi (accno,description) VALUES ('415040', 'CUOTAS DE INSCRIPCION - CONSORCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('415045', 'CUOTAS DE ADMINISTRACION - CONSORCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('415050', 'REAJUSTE DEL SISTEMA - CONSORCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('415055', 'ELIMINACION DE SUSCRIPTORES - CONSORCIOS ');
-INSERT INTO gifi (accno,description) VALUES ('415060', 'CUOTAS DE INGRESO O RETIRO - SOCIEDAD ADMINISTRADORA ');
-INSERT INTO gifi (accno,description) VALUES ('415065', 'SERVICIOS A COMISIONISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('415070', 'INSCRIPCIONES Y CUOTAS ');
-INSERT INTO gifi (accno,description) VALUES ('415075', 'RECUPERACION DE GARANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('415095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('415099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4155', 'ACTIVIDADES INMOBILIARIAS, EMPRESARIALES Y DE ALQUILER ');
-INSERT INTO gifi (accno,description) VALUES ('415505', 'ARRENDAMIENTOS DE BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('415510', 'INMOBILIARIAS POR RETRIBUCION O CONTRATA ');
-INSERT INTO gifi (accno,description) VALUES ('415515', 'ALQUILER EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('415520', 'ALQUILER MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('415525', 'ALQUILER DE EFECTOS PERSONALES Y ENSERES DOMESTICOS ');
-INSERT INTO gifi (accno,description) VALUES ('415530', 'CONSULTORIA EN EQUIPO Y PROGRAMAS DE INFORMATICA ');
-INSERT INTO gifi (accno,description) VALUES ('415535', 'PROCESAMIENTO DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('415540', 'MANTENIMIENTO Y REPARACION DE MAQUINARIA DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('415545', 'INVESTIGACIONES CIENTIFICAS Y DE DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('415550', 'ACTIVIDADES EMPRESARIALES DE CONSULTORIA ');
-INSERT INTO gifi (accno,description) VALUES ('415555', 'PUBLICIDAD ');
-INSERT INTO gifi (accno,description) VALUES ('415560', 'DOTACION DE PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('415565', 'INVESTIGACION Y SEGURIDAD ');
-INSERT INTO gifi (accno,description) VALUES ('415570', 'LIMPIEZA DE INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('415575', 'FOTOGRAFIA ');
-INSERT INTO gifi (accno,description) VALUES ('415580', 'ENVASE Y EMPAQUE ');
-INSERT INTO gifi (accno,description) VALUES ('415585', 'FOTOCOPIADO ');
-INSERT INTO gifi (accno,description) VALUES ('415590', 'MANTENIMIENTO Y REPARACION DE MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('415595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('415599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4160', 'ENSEŃANZA ');
-INSERT INTO gifi (accno,description) VALUES ('416005', 'ACTIVIDADES RELACIONADAS CON LA EDUCACION ');
-INSERT INTO gifi (accno,description) VALUES ('416095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('416099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4165', 'SERVICIOS SOCIALES Y DE SALUD ');
-INSERT INTO gifi (accno,description) VALUES ('416505', 'SERVICIO HOSPITALARIO ');
-INSERT INTO gifi (accno,description) VALUES ('416510', 'SERVICIO MEDICO ');
-INSERT INTO gifi (accno,description) VALUES ('416515', 'SERVICIO ODONTOLOGICO ');
-INSERT INTO gifi (accno,description) VALUES ('416520', 'SERVICIO DE LABORATORIO ');
-INSERT INTO gifi (accno,description) VALUES ('416525', 'ACTIVIDADES VETERINARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('416530', 'ACTIVIDADES DE SERVICIOS SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('416595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('416599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4170', 'OTRAS ACTIVIDADES DE SERVICIOS COMUNITARIOS, SOCIALES Y PERSONALES ');
-INSERT INTO gifi (accno,description) VALUES ('417005', 'ELIMINACION DE DESPERDICIOS Y AGUAS RESIDUALES ');
-INSERT INTO gifi (accno,description) VALUES ('417010', 'ACTIVIDADES DE ASOCIACION ');
-INSERT INTO gifi (accno,description) VALUES ('417015', 'PRODUCCION Y DISTRIBUCION DE FILMES Y VIDEOCINTAS ');
-INSERT INTO gifi (accno,description) VALUES ('417020', 'EXHIBICION DE FILMES Y VIDEOCINTAS ');
-INSERT INTO gifi (accno,description) VALUES ('417025', 'ACTIVIDAD DE RADIO Y TELEVISION ');
-INSERT INTO gifi (accno,description) VALUES ('417030', 'ACTIVIDAD TEATRAL, MUSICAL Y ARTISTICA ');
-INSERT INTO gifi (accno,description) VALUES ('417035', 'GRABACION Y PRODUCCION DE DISCOS ');
-INSERT INTO gifi (accno,description) VALUES ('417040', 'ENTRETENIMIENTO Y ESPARCIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('417045', 'AGENCIAS DE NOTICIAS ');
-INSERT INTO gifi (accno,description) VALUES ('417050', 'LAVANDERIAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('417055', 'PELUQUERIAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('417060', 'SERVICIOS FUNERARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('417065', 'ZONAS FRANCAS ');
-INSERT INTO gifi (accno,description) VALUES ('417095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('417099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4175', 'DEVOLUCIONES, REBAJAS Y DESCUENTOS EN VENTAS (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('417599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('42', 'NO OPERACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('4205', 'OTRAS VENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('420505', 'MATERIA PRIMA ');
-INSERT INTO gifi (accno,description) VALUES ('420510', 'MATERIAL DE DESECHO ');
-INSERT INTO gifi (accno,description) VALUES ('420515', 'MATERIALES VARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('420520', 'PRODUCTOS DE DIVERSIFICACION ');
-INSERT INTO gifi (accno,description) VALUES ('420525', 'EXCEDENTES DE EXPORTACION ');
-INSERT INTO gifi (accno,description) VALUES ('420530', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('420535', 'PRODUCTOS AGRICOLAS ');
-INSERT INTO gifi (accno,description) VALUES ('420540', 'DE PROPAGANDA ');
-INSERT INTO gifi (accno,description) VALUES ('420545', 'PRODUCTOS EN REMATE ');
-INSERT INTO gifi (accno,description) VALUES ('420550', 'COMBUSTIBLES Y LUBRICANTES ');
-INSERT INTO gifi (accno,description) VALUES ('420599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4210', 'FINANCIEROS ');
-INSERT INTO gifi (accno,description) VALUES ('421005', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('421010', 'REAJUSTE MONETARIO - UPAC ');
-INSERT INTO gifi (accno,description) VALUES ('421015', 'DESCUENTOS AMORTIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('421020', 'DIFERENCIA EN CAMBIO ');
-INSERT INTO gifi (accno,description) VALUES ('421025', 'FINANCIACION VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('421030', 'FINANCIACION SISTEMAS DE VIAJES ');
-INSERT INTO gifi (accno,description) VALUES ('421035', 'ACEPTACIONES BANCARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('421040', 'DESCUENTOS COMERCIALES CONDICIONADOS ');
-INSERT INTO gifi (accno,description) VALUES ('421045', 'DESCUENTOS BANCARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('421050', 'COMISIONES CHEQUES DE OTRAS PLAZAS ');
-INSERT INTO gifi (accno,description) VALUES ('421055', 'MULTAS Y RECARGOS ');
-INSERT INTO gifi (accno,description) VALUES ('421060', 'SANCIONES CHEQUES DEVUELTOS ');
-INSERT INTO gifi (accno,description) VALUES ('421095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('421099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4215', 'DIVIDENDOS Y PARTICIPACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('421505', 'DE SOCIEDADES ANONIMAS Y/O ASIMILADAS ');
-INSERT INTO gifi (accno,description) VALUES ('421510', 'DE SOCIEDADES LIMITADAS Y/O ASIMILADAS ');
-INSERT INTO gifi (accno,description) VALUES ('421599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4220', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('422005', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('422010', 'CONSTRUCCIONES Y EDIFICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('422015', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('422020', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('422025', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('422030', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('422035', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('422040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('422045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('422050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('422055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('422060', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('422062', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('422065', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('422070', 'AERODROMOS ');
-INSERT INTO gifi (accno,description) VALUES ('422075', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('422099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4225', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('422505', 'SOBRE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('422510', 'DE CONCESIONARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('422515', 'DE ACTIVIDADES FINANCIERAS ');
-INSERT INTO gifi (accno,description) VALUES ('422520', 'POR VENTA DE SERVICIOS DE TALLER ');
-INSERT INTO gifi (accno,description) VALUES ('422525', 'POR VENTA DE SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('422530', 'POR INGRESOS PARA TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('422535', 'POR DISTRIBUCION DE PELICULAS ');
-INSERT INTO gifi (accno,description) VALUES ('422540', 'DERECHOS DE AUTOR ');
-INSERT INTO gifi (accno,description) VALUES ('422545', 'DERECHOS DE PROGRAMACION ');
-INSERT INTO gifi (accno,description) VALUES ('422599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4230', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('423005', 'ASESORIAS ');
-INSERT INTO gifi (accno,description) VALUES ('423010', 'ASISTENCIA TECNICA ');
-INSERT INTO gifi (accno,description) VALUES ('423015', 'ADMINISTRACION DE VINCULADAS ');
-INSERT INTO gifi (accno,description) VALUES ('423099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4235', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('423505', 'DE BASCULA ');
-INSERT INTO gifi (accno,description) VALUES ('423510', 'DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('423515', 'DE PRENSA ');
-INSERT INTO gifi (accno,description) VALUES ('423520', 'ADMINISTRATIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('423525', 'TECNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('423530', 'DE COMPUTACION ');
-INSERT INTO gifi (accno,description) VALUES ('423535', 'DE TELEFAX ');
-INSERT INTO gifi (accno,description) VALUES ('423540', 'TALLER DE VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('423545', 'DE RECEPCION DE AERONAVES ');
-INSERT INTO gifi (accno,description) VALUES ('423550', 'DE TRANSPORTE PROGRAMA GAS NATURAL ');
-INSERT INTO gifi (accno,description) VALUES ('423555', 'POR CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('423560', 'DE TRILLLA ');
-INSERT INTO gifi (accno,description) VALUES ('423565', 'DE MANTENIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('423570', 'AL PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('423575', 'DE CASINO ');
-INSERT INTO gifi (accno,description) VALUES ('423580', 'FLETES ');
-INSERT INTO gifi (accno,description) VALUES ('423585', 'ENTRE COMPAŃIAS ');
-INSERT INTO gifi (accno,description) VALUES ('423595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('423599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4240', 'UTILIDAD EN VENTA DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('424005', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('424010', 'CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('424015', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('424020', 'CEDULAS ');
-INSERT INTO gifi (accno,description) VALUES ('424025', 'CERTIFICADOS ');
-INSERT INTO gifi (accno,description) VALUES ('424030', 'PAPELES COMERCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('424035', 'TITULOS ');
-INSERT INTO gifi (accno,description) VALUES ('424045', 'DERECHOS FIDUCIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('424050', 'OBLIGATORIAS ');
-INSERT INTO gifi (accno,description) VALUES ('424095', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('424099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4245', 'UTILIDAD EN VENTA DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('424504', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('424506', 'MATERIALES INDUSTRIA PETROLERA ');
-INSERT INTO gifi (accno,description) VALUES ('424508', 'CONSTRUCCIONES EN CURSO ');
-INSERT INTO gifi (accno,description) VALUES ('424512', 'MAQUINARIA EN MONTAJE ');
-INSERT INTO gifi (accno,description) VALUES ('424516', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('424520', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('424524', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('424528', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('424532', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('424536', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('424540', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('424544', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('424548', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('424552', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('424556', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('424560', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('424562', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('424564', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('424568', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('424572', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('424580', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('424584', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('424588', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('424599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4248', 'UTILIDAD EN VENTA DE OTROS BIENES ');
-INSERT INTO gifi (accno,description) VALUES ('424805', 'INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('424810', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('424899', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4250', 'RECUPERACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('425005', 'DEUDAS MALAS ');
-INSERT INTO gifi (accno,description) VALUES ('425010', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('425015', 'RECLAMOS ');
-INSERT INTO gifi (accno,description) VALUES ('425020', 'REINTEGRO POR PERSONAL EN COMISION ');
-INSERT INTO gifi (accno,description) VALUES ('425025', 'REINTEGRO GARANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('425030', 'DESCUENTOS CONCEDIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('425035', 'REINTEGRO PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('425040', 'GASTOS BANCARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('425045', 'DE DEPRECIACION ');
-INSERT INTO gifi (accno,description) VALUES ('425050', 'REINTEGRO DE OTROS COSTOS Y GASTOS ');
-INSERT INTO gifi (accno,description) VALUES ('425099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4255', 'INDEMNIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('425505', 'POR SINIESTRO ');
-INSERT INTO gifi (accno,description) VALUES ('425510', 'POR SUMINISTROS ');
-INSERT INTO gifi (accno,description) VALUES ('425515', 'LUCRO CESANTE COMPAŃIAS DE SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('425520', 'DAŃO EMERGENTE COMPAŃIAS DE SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('425525', 'POR PERDIDA DE MERCANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('425530', 'POR INCUMPLIMIENTO DE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('425535', 'DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('425540', 'POR INCAPACIDADES I.S.S. ');
-INSERT INTO gifi (accno,description) VALUES ('425595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('425599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4260', 'PARTICIPACIONES EN CONCESIONES ');
-INSERT INTO gifi (accno,description) VALUES ('426099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4265', 'INGRESOS DE EJERCICIOS ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('426599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4275', 'DEVOLUCIONES, REBAJAS Y DESCUENTOS EN OTRAS VENTAS (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('427599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4295', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('429503', 'CERT ');
-INSERT INTO gifi (accno,description) VALUES ('429505', 'APROVECHAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('429507', 'AUXILIOS ');
-INSERT INTO gifi (accno,description) VALUES ('429509', 'DONACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('429511', 'INGRESOS POR INVESTIGACION Y DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('429513', 'POR TRABAJOS EJECUTADOS ');
-INSERT INTO gifi (accno,description) VALUES ('429515', 'REGALIAS ');
-INSERT INTO gifi (accno,description) VALUES ('429517', 'DERIVADOS DE LAS EXPORTACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('429519', 'OTROS INGRESOS DE EXPLOTACION ');
-INSERT INTO gifi (accno,description) VALUES ('429521', 'DE LA ACTIVIDAD GANADERA ');
-INSERT INTO gifi (accno,description) VALUES ('429525', 'DERECHOS Y LICITACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('429530', 'INGRESOS POR ELEMENTOS PERDIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('429533', 'MULTAS Y RECARGOS ');
-INSERT INTO gifi (accno,description) VALUES ('429535', 'PREAVISOS DESCONTADOS ');
-INSERT INTO gifi (accno,description) VALUES ('429537', 'RECLAMOS ');
-INSERT INTO gifi (accno,description) VALUES ('429540', 'RECOBRO DE DAŃOS ');
-INSERT INTO gifi (accno,description) VALUES ('429543', 'PREMIOS ');
-INSERT INTO gifi (accno,description) VALUES ('429545', 'BONIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('429547', 'PRODUCTOS DESCONTADOS ');
-INSERT INTO gifi (accno,description) VALUES ('429549', 'RECONOCIMIENTOS I.S.S. ');
-INSERT INTO gifi (accno,description) VALUES ('429551', 'EXCEDENTES ');
-INSERT INTO gifi (accno,description) VALUES ('429553', 'SOBRANTES DE CAJA MENOR ');
-INSERT INTO gifi (accno,description) VALUES ('429555', 'SOBRANTES EN LIQUIDACION FLETES ');
-INSERT INTO gifi (accno,description) VALUES ('429557', 'SUBSIDIOS ESTATALES ');
-INSERT INTO gifi (accno,description) VALUES ('429559', 'CAPACITACION DISTRIBUIDORES ');
-INSERT INTO gifi (accno,description) VALUES ('429561', 'DE ESCRITURACION ');
-INSERT INTO gifi (accno,description) VALUES ('429563', 'REGISTRO PROMESAS DE VENTA ');
-INSERT INTO gifi (accno,description) VALUES ('429567', 'UTILES, PAPELERIA Y FOTOCOPIAS ');
-INSERT INTO gifi (accno,description) VALUES ('429571', 'RESULTADOS MATRICULAS Y TRASPASOS ');
-INSERT INTO gifi (accno,description) VALUES ('429573', 'DECORACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('429575', 'MANEJO DE CARGA ');
-INSERT INTO gifi (accno,description) VALUES ('429579', 'HISTORIA CLINICA ');
-INSERT INTO gifi (accno,description) VALUES ('429581', 'AJUSTE AL PESO ');
-INSERT INTO gifi (accno,description) VALUES ('429583', 'LLAMADAS TELEFONICAS ');
-INSERT INTO gifi (accno,description) VALUES ('429599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('47', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('4705', 'CORRECCION MONETARIA ');
-INSERT INTO gifi (accno,description) VALUES ('470505', 'INVERSIONES (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470510', 'INVENTARIOS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470515', 'PROPIEDADES, PLANTA Y EQUIPO (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470520', 'INTANGIBLES (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470525', 'ACTIVOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('470530', 'OTROS ACTIVOS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470535', 'PASIVOS SUJETOS DE AJUSTE ');
-INSERT INTO gifi (accno,description) VALUES ('470540', 'PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('470545', 'DEPRECIACION ACUMULADA (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('470550', 'DEPRECIACION DIFERIDA (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470555', 'AGOTAMIENTO ACUMULADO (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('470560', 'AMORTIZACION ACUMULADA (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('470565', 'INGRESOS OPERACIONALES (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('470570', 'INGRESOS NO OPERACIONALES (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('470575', 'GASTOS OPERACIONALES DE ADMINISTRACION (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470580', 'GASTOS OPERACIONALES DE VENTAS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470585', 'GASTOS NO OPERACIONALES (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470590', 'COMPRAS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470592', 'COSTO DE VENTAS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('470594', 'COSTOS DE PRODUCCION O DE OPERACION (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('51', 'OPERACIONALES DE ADMINISTRACION ');
-INSERT INTO gifi (accno,description) VALUES ('5105', 'GASTOS DE PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('510503', 'SALARIO INTEGRAL ');
-INSERT INTO gifi (accno,description) VALUES ('510506', 'SUELDOS ');
-INSERT INTO gifi (accno,description) VALUES ('510512', 'JORNALES ');
-INSERT INTO gifi (accno,description) VALUES ('510515', 'HORAS EXTRAS Y RECARGOS ');
-INSERT INTO gifi (accno,description) VALUES ('510518', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('510521', 'VIATICOS ');
-INSERT INTO gifi (accno,description) VALUES ('510524', 'INCAPACIDADES ');
-INSERT INTO gifi (accno,description) VALUES ('510527', 'AUXILIO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('510530', 'CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('510533', 'INTERESES SOBRE CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('510536', 'PRIMA DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('510539', 'VACACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('510542', 'PRIMAS EXTRALEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('510545', 'AUXILIOS ');
-INSERT INTO gifi (accno,description) VALUES ('510548', 'BONIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('510551', 'DOTACION Y SUMINISTRO A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('510554', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('510557', 'CUOTAS PARTES PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('510558', 'AMORTIZACION CALCULO ACTUARIAL PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('510559', 'PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('510560', 'INDEMNIZACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('510563', 'CAPACITACION AL PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('510566', 'GASTOS DEPORTIVOS Y DE RECREACION ');
-INSERT INTO gifi (accno,description) VALUES ('510569', 'APORTES AL I.S.S ');
-INSERT INTO gifi (accno,description) VALUES ('510572', 'APORTES CAJAS DE COMPENSACION FAMILIAR ');
-INSERT INTO gifi (accno,description) VALUES ('510575', 'APORTES I.C.B.F. ');
-INSERT INTO gifi (accno,description) VALUES ('510578', 'SENA ');
-INSERT INTO gifi (accno,description) VALUES ('510581', 'APORTES SINDICALES ');
-INSERT INTO gifi (accno,description) VALUES ('510584', 'GASTOS MEDICOS Y DROGAS ');
-INSERT INTO gifi (accno,description) VALUES ('510595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('510599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5110', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('511005', 'JUNTA DIRECTIVA ');
-INSERT INTO gifi (accno,description) VALUES ('511010', 'REVISORÃA FISCAL ');
-INSERT INTO gifi (accno,description) VALUES ('511015', 'AUDITORIA EXTERNA ');
-INSERT INTO gifi (accno,description) VALUES ('511020', 'AVALUOS ');
-INSERT INTO gifi (accno,description) VALUES ('511025', 'ASESORIA JURIDICA ');
-INSERT INTO gifi (accno,description) VALUES ('511030', 'ASESORIA FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('511035', 'ASESORIA TECNICA ');
-INSERT INTO gifi (accno,description) VALUES ('511095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('511099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5115', 'IMPUESTOS ');
-INSERT INTO gifi (accno,description) VALUES ('511505', 'INDUSTRIA Y COMERCIO ');
-INSERT INTO gifi (accno,description) VALUES ('511510', 'DE TIMBRES ');
-INSERT INTO gifi (accno,description) VALUES ('511515', 'A LA PROPIEDAD RAIZ ');
-INSERT INTO gifi (accno,description) VALUES ('511520', 'DERECHOS SOBRE INSTRUMENTOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('511525', 'DE VALORIZACION ');
-INSERT INTO gifi (accno,description) VALUES ('511530', 'DE TURISMO ');
-INSERT INTO gifi (accno,description) VALUES ('511535', 'TASA POR UTILIZACION DE PUERTOS ');
-INSERT INTO gifi (accno,description) VALUES ('511540', 'DE VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('511545', 'DE ESPECTACULOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('511550', 'CUOTAS DE FOMENTO ');
-INSERT INTO gifi (accno,description) VALUES ('511570', 'IVA DESCONTABLE ');
-INSERT INTO gifi (accno,description) VALUES ('511595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('511599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5120', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('512005', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('512010', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('512015', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('512020', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('512025', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('512030', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('512035', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('512040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('512045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('512050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('512055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('512060', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('512065', 'AERODROMOS ');
-INSERT INTO gifi (accno,description) VALUES ('512070', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('512095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('512099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5125', 'CONTRIBUCIONES Y AFILIACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('512505', 'CONTRIBUCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('512510', 'AFILIACIONES Y SOSTENIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('512599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5130', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('513005', 'MANEJO ');
-INSERT INTO gifi (accno,description) VALUES ('513010', 'CUMPLIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('513015', 'CORRIENTE DEBIL ');
-INSERT INTO gifi (accno,description) VALUES ('513020', 'VIDA COLECTIVA ');
-INSERT INTO gifi (accno,description) VALUES ('513025', 'INCENDIO ');
-INSERT INTO gifi (accno,description) VALUES ('513030', 'TERREMOTO ');
-INSERT INTO gifi (accno,description) VALUES ('513035', 'SUSTRACCION Y HURTO ');
-INSERT INTO gifi (accno,description) VALUES ('513040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('513045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('513050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('513055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('513060', 'RESPONSABILIDAD CIVIL Y EXTRACONTRACTUAL ');
-INSERT INTO gifi (accno,description) VALUES ('513065', 'VUELO ');
-INSERT INTO gifi (accno,description) VALUES ('513070', 'ROTURA DE MAQUINARIA ');
-INSERT INTO gifi (accno,description) VALUES ('513075', 'OBLIGATORIO ACCIDENTE DE TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('513080', 'LUCRO CESANTE ');
-INSERT INTO gifi (accno,description) VALUES ('513095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('513099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5135', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('513505', 'ASEO Y VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('513510', 'TEMPORALES ');
-INSERT INTO gifi (accno,description) VALUES ('513515', 'ASISTENCIA TECNICA ');
-INSERT INTO gifi (accno,description) VALUES ('513520', 'PROCESAMIENTO ELECTRONICO DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('513525', 'ACUEDUCTO Y ALCANTARILLADO ');
-INSERT INTO gifi (accno,description) VALUES ('513530', 'ENERGIA ELECTRICA ');
-INSERT INTO gifi (accno,description) VALUES ('513535', 'TELEFONO ');
-INSERT INTO gifi (accno,description) VALUES ('513540', 'CORREO, PORTES Y TELEGRAMAS ');
-INSERT INTO gifi (accno,description) VALUES ('513545', 'FAX Y TELEX ');
-INSERT INTO gifi (accno,description) VALUES ('513550', 'TRANSPORTE, FLETES Y ACARREOS ');
-INSERT INTO gifi (accno,description) VALUES ('513555', 'GAS ');
-INSERT INTO gifi (accno,description) VALUES ('513595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('513599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5140', 'GASTOS LEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('514005', 'NOTARIALES ');
-INSERT INTO gifi (accno,description) VALUES ('514010', 'REGISTRO MERCANTIL ');
-INSERT INTO gifi (accno,description) VALUES ('514015', 'TRAMITES Y LICENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('514020', 'ADUANEROS ');
-INSERT INTO gifi (accno,description) VALUES ('514025', 'CONSULARES ');
-INSERT INTO gifi (accno,description) VALUES ('514095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('514099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5145', 'MANTENIMIENTO Y REPARACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('514505', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('514510', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('514515', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('514520', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('514525', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('514530', 'EQUIPO MEDICO-CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('514535', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('514540', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('514545', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('514550', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('514555', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('514560', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('514565', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('514570', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('514599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5150', 'ADECUACION E INSTALACION ');
-INSERT INTO gifi (accno,description) VALUES ('515005', 'INSTALACIONES ELECTRICAS ');
-INSERT INTO gifi (accno,description) VALUES ('515010', 'ARREGLOS ORNAMENTALES ');
-INSERT INTO gifi (accno,description) VALUES ('515015', 'REPARACIONES LOCATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('515095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('515099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5155', 'GASTOS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('515505', 'ALOJAMIENTO Y MANUTENCION ');
-INSERT INTO gifi (accno,description) VALUES ('515510', 'PASAJES FLUVIALES Y/O MARITIMOS ');
-INSERT INTO gifi (accno,description) VALUES ('515515', 'PASAJES AEREOS ');
-INSERT INTO gifi (accno,description) VALUES ('515520', 'PASAJES TERRESTRES ');
-INSERT INTO gifi (accno,description) VALUES ('515525', 'PASAJES FERREOS ');
-INSERT INTO gifi (accno,description) VALUES ('515595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('515599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5160', 'DEPRECIACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('516005', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('516010', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('516015', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('516020', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('516025', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('516030', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('516035', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('516040', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('516045', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('516050', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('516055', 'ACUEDUCTOS, PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('516060', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('516099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5165', 'AMORTIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('516505', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('516510', 'INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('516515', 'CARGOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('516595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('516599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5195', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('519505', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('519510', 'LIBROS, SUSCRIPCIONES, PERIODICOS Y REVISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('519515', 'MUSICA AMBIENTAL ');
-INSERT INTO gifi (accno,description) VALUES ('519520', 'GASTOS DE REPRESENTACION Y RELACIONES PUBLICAS ');
-INSERT INTO gifi (accno,description) VALUES ('519525', 'ELEMENTOS DE ASEO Y CAFETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('519530', 'UTILES, PAPELERIA Y FOTOCOPIAS ');
-INSERT INTO gifi (accno,description) VALUES ('519535', 'COMBUSTIBLES Y LUBRICANTES ');
-INSERT INTO gifi (accno,description) VALUES ('519540', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('519545', 'TAXIS Y BUSES ');
-INSERT INTO gifi (accno,description) VALUES ('519550', 'ESTAMPILLAS ');
-INSERT INTO gifi (accno,description) VALUES ('519555', 'MICROFILMACION ');
-INSERT INTO gifi (accno,description) VALUES ('519560', 'CASINO Y RESTAURANTE ');
-INSERT INTO gifi (accno,description) VALUES ('519565', 'PARQUEADEROS ');
-INSERT INTO gifi (accno,description) VALUES ('519570', 'INDEMNIZACION POR DAŃOS A TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('519575', 'POLVORA Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('519595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('519599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5199', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('519905', 'INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('519910', 'DEUDORES ');
-INSERT INTO gifi (accno,description) VALUES ('519915', 'PROPIEDADES, PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('519995', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('519999', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('52', 'OPERACIONALES DE VENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('5205', 'GASTOS DE PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('520503', 'SALARIO INTEGRAL ');
-INSERT INTO gifi (accno,description) VALUES ('520506', 'SUELDOS ');
-INSERT INTO gifi (accno,description) VALUES ('520512', 'JORNALES ');
-INSERT INTO gifi (accno,description) VALUES ('520515', 'HORAS EXTRAS Y RECARGOS ');
-INSERT INTO gifi (accno,description) VALUES ('520518', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('520521', 'VIATICOS ');
-INSERT INTO gifi (accno,description) VALUES ('520524', 'INCAPACIDADES ');
-INSERT INTO gifi (accno,description) VALUES ('520527', 'AUXILIO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('520530', 'CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('520533', 'INTERESES SOBRE CESANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('520536', 'PRIMA DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('520539', 'VACACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('520542', 'PRIMAS EXTRALEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('520545', 'AUXILIOS ');
-INSERT INTO gifi (accno,description) VALUES ('520548', 'BONIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('520551', 'DOTACION Y SUMINISTRO A TRABAJADORES ');
-INSERT INTO gifi (accno,description) VALUES ('520554', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('520557', 'CUOTAS PARTES PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('520558', 'AMORTIZACION CALCULO ACTUARIAL PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('520559', 'PENSIONES DE JUBILACION ');
-INSERT INTO gifi (accno,description) VALUES ('520560', 'INDEMNIZACIONES LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('520563', 'CAPACITACION AL PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('520566', 'GASTOS DEPORTIVOS Y DE RECREACION ');
-INSERT INTO gifi (accno,description) VALUES ('520569', 'APORTES AL I.S.S ');
-INSERT INTO gifi (accno,description) VALUES ('520572', 'APORTES CAJAS DE COMPENSACION FAMILIAR ');
-INSERT INTO gifi (accno,description) VALUES ('520575', 'APORTES I.C.B.F. ');
-INSERT INTO gifi (accno,description) VALUES ('520578', 'SENA ');
-INSERT INTO gifi (accno,description) VALUES ('520581', 'APORTES SINDICALES ');
-INSERT INTO gifi (accno,description) VALUES ('520584', 'GASTOS MEDICOS Y DROGAS ');
-INSERT INTO gifi (accno,description) VALUES ('520595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('520599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5210', 'HONORARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('521005', 'JUNTA DIRECTIVA ');
-INSERT INTO gifi (accno,description) VALUES ('521010', 'REVISORIA FISCAL ');
-INSERT INTO gifi (accno,description) VALUES ('521015', 'AUDITORIA EXTERNA ');
-INSERT INTO gifi (accno,description) VALUES ('521020', 'AVALUOS ');
-INSERT INTO gifi (accno,description) VALUES ('521025', 'ASESORIA JURIDICA ');
-INSERT INTO gifi (accno,description) VALUES ('521030', 'ASESORIA FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('521035', 'ASESORIA TECNICA ');
-INSERT INTO gifi (accno,description) VALUES ('521095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('521099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5215', 'IMPUESTOS ');
-INSERT INTO gifi (accno,description) VALUES ('521505', 'INDUSTRIA Y COMERCIO ');
-INSERT INTO gifi (accno,description) VALUES ('521510', 'DE TIMBRES ');
-INSERT INTO gifi (accno,description) VALUES ('521515', 'A LA PROPIEDAD RAIZ ');
-INSERT INTO gifi (accno,description) VALUES ('521520', 'DERECHOS SOBRE INSTRUMENTOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('521525', 'DE VALORIZACION ');
-INSERT INTO gifi (accno,description) VALUES ('521530', 'DE TURISMO ');
-INSERT INTO gifi (accno,description) VALUES ('521535', 'TASA POR UTILIZACION DE PUERTOS ');
-INSERT INTO gifi (accno,description) VALUES ('521540', 'DE VEHICULOS ');
-INSERT INTO gifi (accno,description) VALUES ('521545', 'DE ESPECTACULOS PUBLICOS ');
-INSERT INTO gifi (accno,description) VALUES ('521550', 'CUOTAS DE FOMENTO ');
-INSERT INTO gifi (accno,description) VALUES ('521555', 'LICORES ');
-INSERT INTO gifi (accno,description) VALUES ('521560', 'CERVEZAS ');
-INSERT INTO gifi (accno,description) VALUES ('521565', 'CIGARRILLOS ');
-INSERT INTO gifi (accno,description) VALUES ('521570', 'IVA DESCONTABLE ');
-INSERT INTO gifi (accno,description) VALUES ('521595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('521599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5220', 'ARRENDAMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('522005', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('522010', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('522015', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('522020', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('522025', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('522030', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('522035', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('522040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('522045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('522050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('522055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('522060', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('522065', 'AERODROMOS ');
-INSERT INTO gifi (accno,description) VALUES ('522070', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('522095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('522099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5225', 'CONTRIBUCIONES Y AFILIACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('522505', 'CONTRIBUCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('522510', 'AFILIACIONES Y SOSTENIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('522599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5230', 'SEGUROS ');
-INSERT INTO gifi (accno,description) VALUES ('523005', 'MANEJO ');
-INSERT INTO gifi (accno,description) VALUES ('523010', 'CUMPLIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('523015', 'CORRIENTE DEBIL ');
-INSERT INTO gifi (accno,description) VALUES ('523020', 'VIDA COLECTIVA ');
-INSERT INTO gifi (accno,description) VALUES ('523025', 'INCENDIO ');
-INSERT INTO gifi (accno,description) VALUES ('523030', 'TERREMOTO ');
-INSERT INTO gifi (accno,description) VALUES ('523035', 'SUSTRACCION Y HURTO ');
-INSERT INTO gifi (accno,description) VALUES ('523040', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('523045', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('523050', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('523055', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('523060', 'RESPONSABILIDAD CIVIL Y EXTRACONTRACTUAL ');
-INSERT INTO gifi (accno,description) VALUES ('523065', 'VUELO ');
-INSERT INTO gifi (accno,description) VALUES ('523070', 'ROTURA DE MAQUINARIA ');
-INSERT INTO gifi (accno,description) VALUES ('523075', 'OBLIGATORIO ACCIDENTE DE TRANSITO ');
-INSERT INTO gifi (accno,description) VALUES ('523080', 'LUCRO CESANTE ');
-INSERT INTO gifi (accno,description) VALUES ('523095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('523099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5235', 'SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('523505', 'ASEO Y VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('523510', 'TEMPORALES ');
-INSERT INTO gifi (accno,description) VALUES ('523515', 'ASISTENCIA TECNICA ');
-INSERT INTO gifi (accno,description) VALUES ('523520', 'PROCESAMIENTO ELECTRONICO DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('523525', 'ACUEDUCTO Y ALCANTARILLADO ');
-INSERT INTO gifi (accno,description) VALUES ('523530', 'ENERGIA ELECTRICA ');
-INSERT INTO gifi (accno,description) VALUES ('523535', 'TELEFONO ');
-INSERT INTO gifi (accno,description) VALUES ('523540', 'CORREO, PORTES Y TELEGRAMAS ');
-INSERT INTO gifi (accno,description) VALUES ('523545', 'FAX Y TELEX ');
-INSERT INTO gifi (accno,description) VALUES ('523550', 'TRANSPORTE, FLETES Y ACARREOS ');
-INSERT INTO gifi (accno,description) VALUES ('523555', 'GAS ');
-INSERT INTO gifi (accno,description) VALUES ('523560', 'PROPAGANDA Y PUBLICIDAD ');
-INSERT INTO gifi (accno,description) VALUES ('523595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('523599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5240', 'GASTOS LEGALES ');
-INSERT INTO gifi (accno,description) VALUES ('524005', 'NOTARIALES ');
-INSERT INTO gifi (accno,description) VALUES ('524010', 'REGISTRO MERCANTIL ');
-INSERT INTO gifi (accno,description) VALUES ('524015', 'TRAMITES Y LICENCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('524020', 'ADUANEROS ');
-INSERT INTO gifi (accno,description) VALUES ('524025', 'CONSULARES ');
-INSERT INTO gifi (accno,description) VALUES ('524095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('524099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5245', 'MANTENIMIENTO Y REPARACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('524505', 'TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('524510', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('524515', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('524520', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('524525', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('524530', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('524535', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('524540', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('524545', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('524550', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('524555', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('524560', 'ACUEDUCTOS PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('524565', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('524570', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('524599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5250', 'ADECUACION E INSTALACION ');
-INSERT INTO gifi (accno,description) VALUES ('525005', 'INSTALACIONES ELECTRICAS ');
-INSERT INTO gifi (accno,description) VALUES ('525010', 'ARREGLOS ORNAMENTALES ');
-INSERT INTO gifi (accno,description) VALUES ('525015', 'REPARACIONES LOCATIVAS ');
-INSERT INTO gifi (accno,description) VALUES ('525095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('525099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5255', 'GASTOS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('525505', 'ALOJAMIENTO Y MANUTENCION ');
-INSERT INTO gifi (accno,description) VALUES ('525510', 'PASAJES FLUVIALES Y/O MARITIMOS ');
-INSERT INTO gifi (accno,description) VALUES ('525515', 'PASAJES AEREOS ');
-INSERT INTO gifi (accno,description) VALUES ('525520', 'PASAJES TERRESTRES ');
-INSERT INTO gifi (accno,description) VALUES ('525525', 'PASAJES FERREOS ');
-INSERT INTO gifi (accno,description) VALUES ('525595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('525599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5260', 'DEPRECIACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('526005', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('526010', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('526015', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('526020', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('526025', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('526030', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('526035', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('526040', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('526045', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('526050', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('526055', 'ACUEDUCTOS, PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('526060', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('526065', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('526099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5265', 'AMORTIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('526505', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('526510', 'INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('526515', 'CARGOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('526595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('526599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5270', 'FINANCIEROS - REAJUSTE DEL SISTEMA ');
-INSERT INTO gifi (accno,description) VALUES ('527099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5295', 'DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('529505', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('529510', 'LIBROS, SUSCRIPCIONES, PERIODICOS Y REVISTAS ');
-INSERT INTO gifi (accno,description) VALUES ('529515', 'MUSICA AMBIENTAL ');
-INSERT INTO gifi (accno,description) VALUES ('529520', 'GASTOS DE REPRESENTACION Y RELACIONES PUBLICAS ');
-INSERT INTO gifi (accno,description) VALUES ('529525', 'ELEMENTOS DE ASEO Y CAFETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('529530', 'UTILES, PAPELERIA Y FOTOCOPIAS ');
-INSERT INTO gifi (accno,description) VALUES ('529535', 'COMBUSTIBLES Y LUBRICANTES ');
-INSERT INTO gifi (accno,description) VALUES ('529540', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('529545', 'TAXIS Y BUSES ');
-INSERT INTO gifi (accno,description) VALUES ('529550', 'ESTAMPILLAS ');
-INSERT INTO gifi (accno,description) VALUES ('529555', 'MICROFILMACION ');
-INSERT INTO gifi (accno,description) VALUES ('529560', 'CASINO Y RESTAURANTE ');
-INSERT INTO gifi (accno,description) VALUES ('529565', 'PARQUEADEROS ');
-INSERT INTO gifi (accno,description) VALUES ('529570', 'INDEMNIZACION POR DAŃOS A TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('529575', 'POLVORA Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('529595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('529599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5299', 'PROVISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('529905', 'INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('529910', 'DEUDORES ');
-INSERT INTO gifi (accno,description) VALUES ('529915', 'INVENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('529920', 'PROPIEDADES, PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('529995', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('529999', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('53', 'NO OPERACIONALES ');
-INSERT INTO gifi (accno,description) VALUES ('5305', 'FINANCIEROS ');
-INSERT INTO gifi (accno,description) VALUES ('530505', 'GASTOS BANCARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('530510', 'REAJUSTE MONETARIO - UPAC ');
-INSERT INTO gifi (accno,description) VALUES ('530515', 'COMISIONES ');
-INSERT INTO gifi (accno,description) VALUES ('530520', 'INTERESES ');
-INSERT INTO gifi (accno,description) VALUES ('530525', 'DIFERENCIA EN CAMBIO ');
-INSERT INTO gifi (accno,description) VALUES ('530530', 'GASTOS EN NEGOCIACION CERTIFICADOS DE CAMBIO ');
-INSERT INTO gifi (accno,description) VALUES ('530535', 'DESCUENTOS COMERCIALES CONDICIONADOS ');
-INSERT INTO gifi (accno,description) VALUES ('530540', 'GASTOS MANEJO Y EMISION DE BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('530545', 'PRIMA AMORTIZADA ');
-INSERT INTO gifi (accno,description) VALUES ('530595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('530599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5310', 'PERDIDA EN VENTA Y RETIRO DE BIENES ');
-INSERT INTO gifi (accno,description) VALUES ('531005', 'VENTA DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('531010', 'VENTA DE CARTERA ');
-INSERT INTO gifi (accno,description) VALUES ('531015', 'VENTA DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('531020', 'VENTA DE INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('531025', 'VENTA DE OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('531030', 'RETIRO DE PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('531035', 'RETIRO DE OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('531040', 'PERDIDAS POR SINIESTROS ');
-INSERT INTO gifi (accno,description) VALUES ('531095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('531099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5315', 'GASTOS EXTRAORDINARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('531505', 'COSTAS Y PROCESOS JUDICIALES ');
-INSERT INTO gifi (accno,description) VALUES ('531510', 'ACTIVIDADES CULTURALES Y CIVICAS ');
-INSERT INTO gifi (accno,description) VALUES ('531515', 'COSTOS Y GASTOS DE EJERCICIOS ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('531520', 'IMPUESTOS ASUMIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('531595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('531599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('5395', 'GASTOS DIVERSOS ');
-INSERT INTO gifi (accno,description) VALUES ('539505', 'DEMANDAS LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('539510', 'DEMANDAS POR INCUMPLIMIENTO DE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('539515', 'INDEMNIZACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('539520', 'MULTAS, SANCIONES Y LITIGIOS ');
-INSERT INTO gifi (accno,description) VALUES ('539525', 'DONACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('539530', 'CONSTITUCION DE GARANTIAS ');
-INSERT INTO gifi (accno,description) VALUES ('539535', 'AMORTIZACION DE BIENES ENTREGADOS EN COMODATO ');
-INSERT INTO gifi (accno,description) VALUES ('539595', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('539599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('54', 'IMPUESTO DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('5405', 'IMPUESTO DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('540505', 'IMPUESTO DE RENTA Y COMPLEMENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('59', 'GANANCIAS Y PERDIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('5905', 'GANANCIAS Y PERDIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('590505', 'GANANCIAS Y PERDIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('6', 'COSTOS DE VENTAS ');
-INSERT INTO gifi (accno,description) VALUES ('61', 'COSTO DE VENTAS Y DE PRESTACION DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('6105', 'AGRICULTURA, GANADERIA, CAZA Y SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('610505', 'CULTIVO DE CEREALES ');
-INSERT INTO gifi (accno,description) VALUES ('610510', 'CULTIVOS DE HORTALIZAS, LEGUMBRES Y PLANTAS ORNAMENTALES ');
-INSERT INTO gifi (accno,description) VALUES ('610515', 'CULTIVOS DE FRUTAS, NUECES Y PLANTAS AROMATICAS ');
-INSERT INTO gifi (accno,description) VALUES ('610520', 'CULTIVO DE CAFE ');
-INSERT INTO gifi (accno,description) VALUES ('610525', 'CULTIVO DE FLORES ');
-INSERT INTO gifi (accno,description) VALUES ('610530', 'CULTIVO DE CAŃA DE AZUCAR ');
-INSERT INTO gifi (accno,description) VALUES ('610535', 'CULTIVO DE ALGODON Y PLANTAS PARA MATERIAL TEXTIL ');
-INSERT INTO gifi (accno,description) VALUES ('610540', 'CULTIVO DE BANANO ');
-INSERT INTO gifi (accno,description) VALUES ('610545', 'OTROS CULTIVOS AGRICOLAS ');
-INSERT INTO gifi (accno,description) VALUES ('610550', 'CRIA DE OVEJAS, CABRAS, ASNOS, MULAS Y BURDEGANOS ');
-INSERT INTO gifi (accno,description) VALUES ('610555', 'CRIA DE GANADO CABALLAR Y VACUNO. ');
-INSERT INTO gifi (accno,description) VALUES ('610560', 'PRODUCCION AVICOLA ');
-INSERT INTO gifi (accno,description) VALUES ('610565', 'CRIA DE OTROS ANIMALES ');
-INSERT INTO gifi (accno,description) VALUES ('610570', 'SERVICIOS AGRICOLAS Y GANADEROS ');
-INSERT INTO gifi (accno,description) VALUES ('610575', 'ACTIVIDAD DE CAZA ');
-INSERT INTO gifi (accno,description) VALUES ('610580', 'ACTIVIDAD DE SILVICULTURA ');
-INSERT INTO gifi (accno,description) VALUES ('610599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6110', 'PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('611005', 'ACTIVIDAD DE PESCA ');
-INSERT INTO gifi (accno,description) VALUES ('611010', 'EXPLOTACION DE CRIADEROS DE PECES ');
-INSERT INTO gifi (accno,description) VALUES ('611095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('611099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6115', 'EXPLOTACION DE MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('611505', 'CARBON ');
-INSERT INTO gifi (accno,description) VALUES ('611510', 'PETROLEO CRUDO ');
-INSERT INTO gifi (accno,description) VALUES ('611512', 'GAS NATURAL ');
-INSERT INTO gifi (accno,description) VALUES ('611514', 'SERVICIOS RELACIONADOS CON EXTRACCION DE PETROLEO Y GAS ');
-INSERT INTO gifi (accno,description) VALUES ('611515', 'MINERALES DE HIERRO ');
-INSERT INTO gifi (accno,description) VALUES ('611520', 'MINERALES METALIFEROS NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('611525', 'PIEDRA, ARENA Y ARCILLA ');
-INSERT INTO gifi (accno,description) VALUES ('611527', 'PIEDRAS PRECIOSAS ');
-INSERT INTO gifi (accno,description) VALUES ('611528', 'ORO ');
-INSERT INTO gifi (accno,description) VALUES ('611530', 'OTRAS MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('611532', 'PRESTACION DE SERVICIOS SECTOR MINERO ');
-INSERT INTO gifi (accno,description) VALUES ('611595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('611599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6120', 'INDUSTRIAS MANUFACTURERAS ');
-INSERT INTO gifi (accno,description) VALUES ('612001', 'PRODUCCION Y PROCESAMIENTO DE CARNES Y PRODUCTOS CARNICOS ');
-INSERT INTO gifi (accno,description) VALUES ('612002', 'PRODUCTOS DE PESCADO ');
-INSERT INTO gifi (accno,description) VALUES ('612003', 'PRODUCTOS DE FRUTAS, LEGUMBRES Y HORTALIZAS ');
-INSERT INTO gifi (accno,description) VALUES ('612004', 'ELABORACION DE ACEITES Y GRASAS ');
-INSERT INTO gifi (accno,description) VALUES ('612005', 'ELABORACION DE PRODUCTOS LACTEOS ');
-INSERT INTO gifi (accno,description) VALUES ('612006', 'ELABORACION DE PRODUCTOS DE MOLINERIA ');
-INSERT INTO gifi (accno,description) VALUES ('612007', 'ELABORACION DE ALMIDONES Y DERIVADOS ');
-INSERT INTO gifi (accno,description) VALUES ('612008', 'ELABORACION DE ALIMENTOS PARA ANIMALES ');
-INSERT INTO gifi (accno,description) VALUES ('612009', 'ELABORACION DE PRODUCTOS PARA PANADERIA ');
-INSERT INTO gifi (accno,description) VALUES ('612010', 'ELABORACION DE AZUCAR Y MELAZAS ');
-INSERT INTO gifi (accno,description) VALUES ('612011', 'ELABORACION DE CACAO, CHOCOLATE Y CONFITERIA ');
-INSERT INTO gifi (accno,description) VALUES ('612012', 'ELABORACION DE PASTAS Y PRODUCTOS FARINACEOS ');
-INSERT INTO gifi (accno,description) VALUES ('612013', 'ELABORACION DE PRODUCTOS DE CAFE ');
-INSERT INTO gifi (accno,description) VALUES ('612014', 'ELABORACION DE OTROS PRODUCTOS ALIMENTICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('612015', 'ELABORACION DE BEBIDAS ALCOHOLICAS Y ALCOHOL ETILICO ');
-INSERT INTO gifi (accno,description) VALUES ('612016', 'ELABORACION DE VINOS ');
-INSERT INTO gifi (accno,description) VALUES ('612017', 'ELABORACION DE BEBIDAS MALTEADAS Y DE MALTA ');
-INSERT INTO gifi (accno,description) VALUES ('612018', 'ELABORACION DE BEBIDAS NO ALCOHOLICAS ');
-INSERT INTO gifi (accno,description) VALUES ('612019', 'ELABORACION DE PRODUCTOS DE TABACO ');
-INSERT INTO gifi (accno,description) VALUES ('612020', 'PREPARACION E HILATURA DE FIBRAS TEXTILES Y TEJEDURIA ');
-INSERT INTO gifi (accno,description) VALUES ('612021', 'ACABADO DE PRODUCTOS TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('612022', 'ELABORACION DE ARTICULOS DE MATERIALES TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('612023', 'ELABORACION DE TAPICES Y ALFOMBRAS ');
-INSERT INTO gifi (accno,description) VALUES ('612024', 'ELABORACION DE CUERDAS, CORDELES, BRAMANTES Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('612025', 'ELABORACION DE OTROS PRODUCTOS TEXTILES ');
-INSERT INTO gifi (accno,description) VALUES ('612026', 'ELABORACION DE TEJIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('612027', 'ELABORACION DE PRENDAS DE VESTIR ');
-INSERT INTO gifi (accno,description) VALUES ('612028', 'PREPARACION, ADOBO Y TEŃIDO DE PIELES ');
-INSERT INTO gifi (accno,description) VALUES ('612029', 'CURTIDO, ADOBO O PREPARACION DE CUERO ');
-INSERT INTO gifi (accno,description) VALUES ('612030', 'ELABORACION DE MALETAS, BOLSOS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('612031', 'ELABORACION DE CALZADO ');
-INSERT INTO gifi (accno,description) VALUES ('612032', 'PRODUCCION DE MADERA, ARTICULOS DE MADERA Y CORCHO ');
-INSERT INTO gifi (accno,description) VALUES ('612033', 'ELABORACION DE PASTA Y PRODUCTOS DE MADERA, PAPEL Y CARTON ');
-INSERT INTO gifi (accno,description) VALUES ('612034', 'EDICIONES Y PUBLICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('612035', 'IMPRESION ');
-INSERT INTO gifi (accno,description) VALUES ('612036', 'SERVICIOS RELACIONADOS CON LA EDICION Y LA IMPRESION ');
-INSERT INTO gifi (accno,description) VALUES ('612037', 'REPRODUCCION DE GRABACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('612038', 'ELABORACION DE PRODUCTOS DE HORNO DE COQUE ');
-INSERT INTO gifi (accno,description) VALUES ('612039', 'ELABORACION DE PRODUCTOS DE LA REFINACION DE PETROLEO ');
-INSERT INTO gifi (accno,description) VALUES ('612040', 'ELABORACION DE SUSTANCIAS QUIMICAS BASICAS ');
-INSERT INTO gifi (accno,description) VALUES ('612041', 'ELABORACION DE ABONOS Y COMPUESTOS DE NITROGENO ');
-INSERT INTO gifi (accno,description) VALUES ('612042', 'ELABORACION DE PLASTICO Y CAUCHO SINTETICO ');
-INSERT INTO gifi (accno,description) VALUES ('612043', 'ELABORACION DE PRODUCTOS QUIMICOS DE USO AGROPECUARIO ');
-INSERT INTO gifi (accno,description) VALUES ('612044', 'ELABORACION DE PINTURAS, TINTAS Y MASILLAS ');
-INSERT INTO gifi (accno,description) VALUES ('612045', 'ELABORACION DE PRODUCTOS FARMACEUTICOS Y BOTANICOS ');
-INSERT INTO gifi (accno,description) VALUES ('612046', 'ELABORACION DE JABONES, DETERGENTES Y PREPARADOS DE TOCADOR ');
-INSERT INTO gifi (accno,description) VALUES ('612047', 'ELABORACION DE OTROS PRODUCTOS QUIMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('612048', 'ELABORACION DE FIBRAS ');
-INSERT INTO gifi (accno,description) VALUES ('612049', 'ELABORACION DE OTROS PRODUCTOS DE CAUCHO ');
-INSERT INTO gifi (accno,description) VALUES ('612050', 'ELABORACION DE PRODUCTOS DE PLASTICO ');
-INSERT INTO gifi (accno,description) VALUES ('612051', 'ELABORACION DE VIDRIO Y PRODUCTOS DE VIDRIO ');
-INSERT INTO gifi (accno,description) VALUES ('612052', 'ELABORACION DE PRODUCTOS DE CERAMICA, LOZA, PIEDRA, ARCILLA Y PORCELANA ');
-INSERT INTO gifi (accno,description) VALUES ('612053', 'ELABORACION DE CEMENTO, CAL Y YESO ');
-INSERT INTO gifi (accno,description) VALUES ('612054', 'ELABORACION DE ARTICULOS DE HORMIGON, CEMENTO Y YESO ');
-INSERT INTO gifi (accno,description) VALUES ('612055', 'CORTE, TALLADO Y ACABADO DE LA PIEDRA ');
-INSERT INTO gifi (accno,description) VALUES ('612056', 'ELABORACION DE OTROS PRODUCTOS MINERALES NO METALICOS ');
-INSERT INTO gifi (accno,description) VALUES ('612057', 'INDUSTRIAS BASICAS Y FUNDICION DE HIERRO Y ACERO ');
-INSERT INTO gifi (accno,description) VALUES ('612058', 'PRODUCTOS PRIMARIOS DE METALES PRECIOSOS Y DE METALES NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('612059', 'FUNDICION DE METALES NO FERROSOS ');
-INSERT INTO gifi (accno,description) VALUES ('612060', 'FABRICACION DE PRODUCTOS METALICOS PARA USO ESTRUCTURAL ');
-INSERT INTO gifi (accno,description) VALUES ('612061', 'FORJA, PRENSADO, ESTAMPADO, LAMINADO DE METAL Y ');
-INSERT INTO gifi (accno,description) VALUES ('612062', 'REVESTIMIENTO DE METALES Y OBRAS DE INGENIERIA MECANICA ');
-INSERT INTO gifi (accno,description) VALUES ('612063', 'FABRICACION DE ARTICULOS DE FERRETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('612064', 'ELABORACION DE OTROS PRODUCTOS DE METAL ');
-INSERT INTO gifi (accno,description) VALUES ('612065', 'FABRICACION DE MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('612066', 'FABRICACION DE EQUIPOS DE ELEVACION Y MANIPULACION ');
-INSERT INTO gifi (accno,description) VALUES ('612067', 'ELABORACION DE APARATOS DE USO DOMESTICO ');
-INSERT INTO gifi (accno,description) VALUES ('612068', 'ELABORACION DE EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('612069', 'ELABORACION DE PILAS Y BATERIAS PRIMARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('612070', 'ELABORACION DE EQUIPO DE ILUMINACION ');
-INSERT INTO gifi (accno,description) VALUES ('612071', 'ELABORACION DE OTROS TIPOS DE EQUIPO ELECTRICO ');
-INSERT INTO gifi (accno,description) VALUES ('612072', 'FABRICACION DE EQUIPOS DE RADIO, TELEVISION Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('612073', 'FABRICACION DE APARATOS E INSTRUMENTOS MEDICOS ');
-INSERT INTO gifi (accno,description) VALUES ('612074', 'FABRICACION DE INSTRUMENTOS DE MEDICION Y CONTROL ');
-INSERT INTO gifi (accno,description) VALUES ('612075', 'FABRICACION DE INSTRUMENTOS DE OPTICA Y EQUIPO FOTOGRAFICO ');
-INSERT INTO gifi (accno,description) VALUES ('612076', 'FABRICACION DE RELOJES ');
-INSERT INTO gifi (accno,description) VALUES ('612077', 'FABRICACION DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('612078', 'FABRICACION DE CARROCERIAS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('612079', 'FABRICACION DE PARTES PIEZAS Y ACCESORIOS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('612080', 'FABRICACION Y REPARACION DE BUQUES Y OTRAS EMBARCACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('612081', 'FABRICACION DE LOCOMOTORAS Y MATERIAL RODANTE PARA FERROCARRILES ');
-INSERT INTO gifi (accno,description) VALUES ('612082', 'FABRICACION DE AERONAVES ');
-INSERT INTO gifi (accno,description) VALUES ('612083', 'FABRICACION DE MOTOCICLETAS ');
-INSERT INTO gifi (accno,description) VALUES ('612084', 'FABRICACION DE BICICLETAS Y SILLAS DE RUEDAS ');
-INSERT INTO gifi (accno,description) VALUES ('612085', 'FABRICACION DE OTROS TIPOS DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('612086', 'FABRICACION DE MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('612087', 'FABRICACION DE JOYAS Y ARTICULOS CONEXOS ');
-INSERT INTO gifi (accno,description) VALUES ('612088', 'FABRICACION DE INSTRUMENTOS DE MUSICA ');
-INSERT INTO gifi (accno,description) VALUES ('612089', 'FABRICACION DE ARTICULOS Y EQUIPO PARA DEPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('612090', 'FABRICACION DE JUEGOS Y JUGUETES ');
-INSERT INTO gifi (accno,description) VALUES ('612091', 'RECICLAMIENTO DE DESPERDICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('612095', 'PRODUCTOS DE OTRAS INDUSTRIAS MANUFACTURERAS ');
-INSERT INTO gifi (accno,description) VALUES ('612099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6125', 'SUMINISTRO DE ELECTRICIDAD, GAS Y AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('612505', 'GENERACION, CAPTACION Y DISTRIBUCION DE ENERGIA ELECTRICA ');
-INSERT INTO gifi (accno,description) VALUES ('612510', 'FABRICACION DE GAS Y DISTRIBUCION DE COMBUSTIBLES GASEOSOS ');
-INSERT INTO gifi (accno,description) VALUES ('612515', 'CAPTACION, DEPURACION Y DISTRIBUCION DE AGUA ');
-INSERT INTO gifi (accno,description) VALUES ('612595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('612599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6130', 'CONSTRUCCION ');
-INSERT INTO gifi (accno,description) VALUES ('613005', 'PREPARACION DE TERRENOS ');
-INSERT INTO gifi (accno,description) VALUES ('613010', 'CONSTRUCCION DE EDIFICIOS Y OBRAS DE INGENIERIA CIVIL ');
-INSERT INTO gifi (accno,description) VALUES ('613015', 'ACONDICIONAMIENTO DE EDIFICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('613020', 'TERMINACION DE EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('613025', 'ALQUILER DE EQUIPO CON OPERARIO ');
-INSERT INTO gifi (accno,description) VALUES ('613095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('613099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6135', 'COMERCIO AL POR MAYOR Y AL POR MENOR ');
-INSERT INTO gifi (accno,description) VALUES ('613502', 'VENTA DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('613504', 'MANTENIMIENTO, REPARACION Y LAVADO DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('613506', 'VENTA DE PARTES, PIEZAS Y ACCESORIOS DE VEHICULOS AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('613508', 'VENTA DE COMBUSTIBLES SOLIDOS, LIQUIDOS, GASEOSOS ');
-INSERT INTO gifi (accno,description) VALUES ('613510', 'VENTA DE LUBRICANTES, ADITIVOS, LLANTAS Y LUJOS PARA AUTOMOTORES ');
-INSERT INTO gifi (accno,description) VALUES ('613512', 'VENTA A CAMBIO DE RETRIBUCION O POR CONTRATA ');
-INSERT INTO gifi (accno,description) VALUES ('613514', 'VENTA DE INSUMOS, MATERIAS PRIMAS AGROPECUARIAS Y FLORES ');
-INSERT INTO gifi (accno,description) VALUES ('613516', 'VENTA DE OTROS INSUMOS Y MATERIAS PRIMAS NO AGROPECUARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('613518', 'VENTA DE ANIMALES VIVOS Y CUEROS ');
-INSERT INTO gifi (accno,description) VALUES ('613520', 'VENTA DE PRODUCTOS EN ALMACENES NO ESPECIALIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('613522', 'VENTA DE PRODUCTOS AGROPECUARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('613524', 'VENTA DE PRODUCTOS TEXTILES, DE VESTIR, DE CUERO Y CALZADO ');
-INSERT INTO gifi (accno,description) VALUES ('613526', 'VENTA DE PAPEL Y CARTON ');
-INSERT INTO gifi (accno,description) VALUES ('613528', 'VENTA DE LIBROS, REVISTAS, ELEMENTOS DE PAPELERIA, UTILES Y TEXTOS ESCOLARES ');
-INSERT INTO gifi (accno,description) VALUES ('613530', 'VENTA DE JUEGOS, JUGUETES Y ARTICULOS DEPORTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('613532', 'VENTA DE INSTRUMENTOS QUIRURGICOS Y ORTOPEDICOS ');
-INSERT INTO gifi (accno,description) VALUES ('613534', 'VENTA DE ARTICULOS EN RELOJERIAS Y JOYERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('613536', 'VENTA DE ELECTRODOMESTICOS Y MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('613538', 'VENTA DE PRODUCTOS DE ASEO, FARMACEUTICOS, MEDICINALES, Y ARTICULOS DE TOCADOR ');
-INSERT INTO gifi (accno,description) VALUES ('613540', 'VENTA DE CUBIERTOS, VAJILLAS, CRISTALERIA, PORCELANAS, CERAMICAS Y OTROS ARTICULOS DE USO DOMESTICO ');
-INSERT INTO gifi (accno,description) VALUES ('613542', 'VENTA DE MATERIALES DE CONSTRUCCION, FONTANERIA Y CALEFACCION ');
-INSERT INTO gifi (accno,description) VALUES ('613544', 'VENTA DE PINTURAS Y LACAS ');
-INSERT INTO gifi (accno,description) VALUES ('613546', 'VENTA DE PRODUCTOS DE VIDRIOS Y MARQUETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('613548', 'VENTA DE HERRAMIENTAS Y ARTICULOS DE FERRETERIA ');
-INSERT INTO gifi (accno,description) VALUES ('613550', 'VENTA DE QUIMICOS ');
-INSERT INTO gifi (accno,description) VALUES ('613552', 'VENTA DE PRODUCTOS INTERMEDIOS, DESPERDICIOS Y DESECHOS ');
-INSERT INTO gifi (accno,description) VALUES ('613554', 'VENTA DE MAQUINARIA, EQUIPO DE OFICINA Y PROGRAMAS DE COMPUTADOR ');
-INSERT INTO gifi (accno,description) VALUES ('613556', 'VENTA DE ARTICULOS EN CACHARRERIAS Y MISCELANEAS ');
-INSERT INTO gifi (accno,description) VALUES ('613558', 'VENTA DE INSTRUMENTOS MUSICALES ');
-INSERT INTO gifi (accno,description) VALUES ('613560', 'VENTA DE ARTICULOS EN CASAS DE EMPEŃO Y PRENDERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('613562', 'VENTA DE EQUIPO FOTOGRAFICO ');
-INSERT INTO gifi (accno,description) VALUES ('613564', 'VENTA DE EQUIPO OPTICO Y DE PRECISION ');
-INSERT INTO gifi (accno,description) VALUES ('613566', 'VENTA DE EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('613568', 'VENTA DE EQUIPO PROFESIONAL Y CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('613570', 'VENTA DE LOTERIAS, RIFAS, CHANCE, APUESTAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('613572', 'REPARACION DE EFECTOS PERSONALES Y ELECTRODOMESTICOS ');
-INSERT INTO gifi (accno,description) VALUES ('613595', 'VENTA DE OTROS PRODUCTOS ');
-INSERT INTO gifi (accno,description) VALUES ('613599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6140', 'HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('614005', 'HOTELERIA ');
-INSERT INTO gifi (accno,description) VALUES ('614010', 'CAMPAMENTO Y OTROS TIPOS DE HOSPEDAJE ');
-INSERT INTO gifi (accno,description) VALUES ('614015', 'RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('614020', 'BARES Y CANTINAS ');
-INSERT INTO gifi (accno,description) VALUES ('614095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('614099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6145', 'TRANSPORTE, ALMACENAMIENTO Y COMUNICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('614505', 'SERVICIO DE TRANSPORTE POR CARRETERA ');
-INSERT INTO gifi (accno,description) VALUES ('614510', 'SERVICIO DE TRANSPORTE POR VIA FERREA ');
-INSERT INTO gifi (accno,description) VALUES ('614515', 'SERVICIO DE TRANSPORTE POR VIA ACUATICA ');
-INSERT INTO gifi (accno,description) VALUES ('614520', 'SERVICIO DE TRANSPORTE POR VIA AEREA ');
-INSERT INTO gifi (accno,description) VALUES ('614525', 'SERVICIO DE TRANSPORTE POR TUBERIAS ');
-INSERT INTO gifi (accno,description) VALUES ('614530', 'MANIPULACION DE CARGA ');
-INSERT INTO gifi (accno,description) VALUES ('614535', 'ALMACENAMIENTO Y DEPOSITO ');
-INSERT INTO gifi (accno,description) VALUES ('614540', 'SERVICIOS COMPLEMENTARIOS PARA EL TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('614545', 'AGENCIAS DE VIAJE ');
-INSERT INTO gifi (accno,description) VALUES ('614550', 'OTRAS AGENCIAS DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('614555', 'SERVICIO POSTAL Y DE CORREO ');
-INSERT INTO gifi (accno,description) VALUES ('614560', 'SERVICIO TELEFONICO ');
-INSERT INTO gifi (accno,description) VALUES ('614565', 'SERVICIO DE TELEGRAFO ');
-INSERT INTO gifi (accno,description) VALUES ('614570', 'SERVICIO DE TRANSMISION DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('614575', 'SERVICIO DE RADIO Y TELEVISION POR CABLE ');
-INSERT INTO gifi (accno,description) VALUES ('614580', 'TRANSMISION DE SONIDO E IMAGENES POR CONTRATO ');
-INSERT INTO gifi (accno,description) VALUES ('614595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('614599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6150', 'ACTIVIDAD FINANCIERA ');
-INSERT INTO gifi (accno,description) VALUES ('615005', 'DE INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('615010', 'DE SERVICIO DE BOLSA ');
-INSERT INTO gifi (accno,description) VALUES ('615099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6155', 'ACTIVIDADES INMOBILIARIAS, EMPRESARIALES Y DE ALQUILER ');
-INSERT INTO gifi (accno,description) VALUES ('615505', 'ARRENDAMIENTOS DE BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('615510', 'INMOBILIARIAS POR RETRIBUCION O CONTRATA ');
-INSERT INTO gifi (accno,description) VALUES ('615515', 'ALQUILER EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('615520', 'ALQUILER MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('615525', 'ALQUILER DE EFECTOS PERSONALES Y ENSERES DOMESTICOS ');
-INSERT INTO gifi (accno,description) VALUES ('615530', 'CONSULTORIA EN EQUIPO Y PROGRAMAS DE INFORMATICA ');
-INSERT INTO gifi (accno,description) VALUES ('615535', 'PROCESAMIENTO DE DATOS ');
-INSERT INTO gifi (accno,description) VALUES ('615540', 'MANTENIMIENTO Y REPARACION DE MAQUINARIA DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('615545', 'INVESTIGACIONES CIENTIFICAS Y DE DESARROLLO ');
-INSERT INTO gifi (accno,description) VALUES ('615550', 'ACTIVIDADES EMPRESARIALES DE CONSULTORIA ');
-INSERT INTO gifi (accno,description) VALUES ('615555', 'PUBLICIDAD ');
-INSERT INTO gifi (accno,description) VALUES ('615560', 'DOTACION DE PERSONAL ');
-INSERT INTO gifi (accno,description) VALUES ('615565', 'INVESTIGACION Y SEGURIDAD ');
-INSERT INTO gifi (accno,description) VALUES ('615570', 'LIMPIEZA DE INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('615575', 'FOTOGRAFIA ');
-INSERT INTO gifi (accno,description) VALUES ('615580', 'ENVASE Y EMPAQUE ');
-INSERT INTO gifi (accno,description) VALUES ('615585', 'FOTOCOPIADO ');
-INSERT INTO gifi (accno,description) VALUES ('615590', 'MANTENIMIENTO Y REPARACION DE MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('615595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('615599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6160', 'ENSEŃANZA ');
-INSERT INTO gifi (accno,description) VALUES ('616005', 'ACTIVIDADES RELACIONADAS CON LA EDUCACION ');
-INSERT INTO gifi (accno,description) VALUES ('610595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('616099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6165', 'SERVICIOS SOCIALES Y DE SALUD ');
-INSERT INTO gifi (accno,description) VALUES ('616505', 'SERVICIO HOSPITALARIO ');
-INSERT INTO gifi (accno,description) VALUES ('616510', 'SERVICIO MEDICO ');
-INSERT INTO gifi (accno,description) VALUES ('616515', 'SERVICIO ODONTOLOGICO ');
-INSERT INTO gifi (accno,description) VALUES ('616520', 'SERVICIO DE LABORATORIO ');
-INSERT INTO gifi (accno,description) VALUES ('616525', 'ACTIVIDADES VETERINARIAS ');
-INSERT INTO gifi (accno,description) VALUES ('616530', 'ACTIVIDADES DE SERVICIOS SOCIALES ');
-INSERT INTO gifi (accno,description) VALUES ('616595', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('616599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6170', 'OTRAS ACTIVIDADES DE SERVICIOS COMUNITARIOS, SOCIALES Y PERSONALES ');
-INSERT INTO gifi (accno,description) VALUES ('617005', 'ELIMINACION DE DESPERDICIOS Y AGUAS RESIDUALES ');
-INSERT INTO gifi (accno,description) VALUES ('617010', 'ACTIVIDADES DE ASOCIACION ');
-INSERT INTO gifi (accno,description) VALUES ('617015', 'PRODUCCION Y DISTRIBUCION DE FILMES Y VIDEOCINTAS ');
-INSERT INTO gifi (accno,description) VALUES ('617020', 'EXHIBICION DE FILMES Y VIDEOCINTAS ');
-INSERT INTO gifi (accno,description) VALUES ('617025', 'ACTIVIDAD DE RADIO Y TELEVISION ');
-INSERT INTO gifi (accno,description) VALUES ('617030', 'ACTIVIDAD TEATRAL, MUSICAL Y ARTISTICA ');
-INSERT INTO gifi (accno,description) VALUES ('617035', 'GRABACION Y PRODUCCION DE DISCOS ');
-INSERT INTO gifi (accno,description) VALUES ('617040', 'ENTRETENIMIENTO Y ESPARCIMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('617045', 'AGENCIAS DE NOTICIAS ');
-INSERT INTO gifi (accno,description) VALUES ('617050', 'LAVANDERIAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('617055', 'PELUQUERIAS Y SIMILARES ');
-INSERT INTO gifi (accno,description) VALUES ('617060', 'SERVICIOS FUNERARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('617065', 'ZONAS FRANCAS ');
-INSERT INTO gifi (accno,description) VALUES ('617095', 'ACTIVIDADES CONEXAS ');
-INSERT INTO gifi (accno,description) VALUES ('617099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('62', 'COMPRAS ');
-INSERT INTO gifi (accno,description) VALUES ('6205', 'DE MERCANCIAS ');
-INSERT INTO gifi (accno,description) VALUES ('620599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6210', 'DE MATERIAS PRIMAS ');
-INSERT INTO gifi (accno,description) VALUES ('621099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6215', 'DE MATERIALES INDIRECTOS ');
-INSERT INTO gifi (accno,description) VALUES ('621599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6220', 'COMPRA DE ENERGIA ');
-INSERT INTO gifi (accno,description) VALUES ('622099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('6225', 'DEVOLUCIONES REBAJAS Y DESCUENTOS EN COMPRAS (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('622599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('7', 'COSTOS DE PRODUCCION O DE OPERACION ');
-INSERT INTO gifi (accno,description) VALUES ('71', 'MATERIA PRIMA ');
-INSERT INTO gifi (accno,description) VALUES ('72', 'MANO DE OBRA DIRECTA ');
-INSERT INTO gifi (accno,description) VALUES ('73', 'COSTOS INDIRECTOS ');
-INSERT INTO gifi (accno,description) VALUES ('74', 'CONTRATOS DE SERVICIOS ');
-INSERT INTO gifi (accno,description) VALUES ('8', 'CUENTAS DE ORDEN DEUDORAS ');
-INSERT INTO gifi (accno,description) VALUES ('81', 'DERECHOS CONTINGENTES ');
-INSERT INTO gifi (accno,description) VALUES ('8105', 'BIENES Y VALORES ENTREGADOS EN CUSTODIA ');
-INSERT INTO gifi (accno,description) VALUES ('810505', 'VALORES MOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('810510', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('810599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8110', 'BIENES Y VALORES ENTREGADOS EN GARANTIA ');
-INSERT INTO gifi (accno,description) VALUES ('811005', 'VALORES MOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('811010', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('811015', 'BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('811020', 'CONTRATOS DE GANADO EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('811099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8115', 'BIENES Y VALORES EN PODER DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('811505', 'EN ARRENDAMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('811510', 'EN PRESTAMO ');
-INSERT INTO gifi (accno,description) VALUES ('811515', 'EN DEPOSITO ');
-INSERT INTO gifi (accno,description) VALUES ('811520', 'EN CONSIGNACION ');
-INSERT INTO gifi (accno,description) VALUES ('811599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8120', 'LITIGIOS Y/O DEMANDAS ');
-INSERT INTO gifi (accno,description) VALUES ('812005', 'EJECUTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('812010', 'INCUMPLIMIENTO DE CONTRATOS ');
-INSERT INTO gifi (accno,description) VALUES ('8125', 'PROMESAS DE COMPRAVENTA ');
-INSERT INTO gifi (accno,description) VALUES ('8195', 'DIVERSAS ');
-INSERT INTO gifi (accno,description) VALUES ('819505', 'VALORES ADQUIRIDOS POR RECIBIR ');
-INSERT INTO gifi (accno,description) VALUES ('819595', 'OTRAS ');
-INSERT INTO gifi (accno,description) VALUES ('819599', 'AJUSTES POR INFLACION. ');
-INSERT INTO gifi (accno,description) VALUES ('82', 'DEUDORAS FISCALES ');
-INSERT INTO gifi (accno,description) VALUES ('83', 'DEUDORAS DE CONTROL ');
-INSERT INTO gifi (accno,description) VALUES ('8305', 'BIENES RECIBIDOS EN ARRENDAMIENTO FINANCIERO ');
-INSERT INTO gifi (accno,description) VALUES ('830505', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('830510', 'BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('830599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8310', 'TITULOS DE INVERSION NO COLOCADOS ');
-INSERT INTO gifi (accno,description) VALUES ('831005', 'ACCIONES ');
-INSERT INTO gifi (accno,description) VALUES ('831010', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('831095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('8315', 'PROPIEDADES PLANTA Y EQUIPO TOTALMENTE DEPRECIADOS, AGOTADOS Y/O AMORTIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('831506', 'MATERIALES PROYECTOS PETROLEROS ');
-INSERT INTO gifi (accno,description) VALUES ('831516', 'CONSTRUCCIONES Y EDIFICACIONES ');
-INSERT INTO gifi (accno,description) VALUES ('831520', 'MAQUINARIA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('831524', 'EQUIPO DE OFICINA ');
-INSERT INTO gifi (accno,description) VALUES ('831528', 'EQUIPO DE COMPUTACION Y COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('831532', 'EQUIPO MEDICO - CIENTIFICO ');
-INSERT INTO gifi (accno,description) VALUES ('831536', 'EQUIPO DE HOTELES Y RESTAURANTES ');
-INSERT INTO gifi (accno,description) VALUES ('831540', 'FLOTA Y EQUIPO DE TRANSPORTE ');
-INSERT INTO gifi (accno,description) VALUES ('831544', 'FLOTA Y EQUIPO FLUVIAL Y/O MARITIMO ');
-INSERT INTO gifi (accno,description) VALUES ('831548', 'FLOTA Y EQUIPO AEREO ');
-INSERT INTO gifi (accno,description) VALUES ('831552', 'FLOTA Y EQUIPO FERREO ');
-INSERT INTO gifi (accno,description) VALUES ('831556', 'ACUEDUCTOS, PLANTAS Y REDES ');
-INSERT INTO gifi (accno,description) VALUES ('831560', 'ARMAMENTO DE VIGILANCIA ');
-INSERT INTO gifi (accno,description) VALUES ('831562', 'ENVASES Y EMPAQUES ');
-INSERT INTO gifi (accno,description) VALUES ('831564', 'PLANTACIONES AGRICOLAS Y FORESTALES ');
-INSERT INTO gifi (accno,description) VALUES ('831568', 'VIAS DE COMUNICACION ');
-INSERT INTO gifi (accno,description) VALUES ('831572', 'MINAS Y CANTERAS ');
-INSERT INTO gifi (accno,description) VALUES ('831576', 'POZOS ARTESIANOS ');
-INSERT INTO gifi (accno,description) VALUES ('831580', 'YACIMIENTOS ');
-INSERT INTO gifi (accno,description) VALUES ('831584', 'SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('831599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8320', 'CREDITOS A FAVOR NO UTILIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('832005', 'PAIS ');
-INSERT INTO gifi (accno,description) VALUES ('832010', 'EXTERIOR ');
-INSERT INTO gifi (accno,description) VALUES ('8325', 'ACTIVOS CASTIGADOS ');
-INSERT INTO gifi (accno,description) VALUES ('832505', 'INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('832510', 'DEUDORES ');
-INSERT INTO gifi (accno,description) VALUES ('832595', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('8330', 'TITULOS DE INVERSION AMORTIZADOS ');
-INSERT INTO gifi (accno,description) VALUES ('833005', 'BONOS ');
-INSERT INTO gifi (accno,description) VALUES ('833095', 'OTROS ');
-INSERT INTO gifi (accno,description) VALUES ('8335', 'CAPITALIZACION POR REVALORIZACION DE PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('8395', 'OTRAS CUENTAS DEUDORAS DE CONTROL ');
-INSERT INTO gifi (accno,description) VALUES ('839505', 'CHEQUES POSTFECHADOS ');
-INSERT INTO gifi (accno,description) VALUES ('839510', 'CERTIFICADOS DE DEPOSITO A TERMINO ');
-INSERT INTO gifi (accno,description) VALUES ('839515', 'CHEQUES DEVUELTOS ');
-INSERT INTO gifi (accno,description) VALUES ('839520', 'BIENES Y VALORES EN FIDEICOMISO ');
-INSERT INTO gifi (accno,description) VALUES ('839525', 'INTERESES SOBRE DEUDAS VENCIDAS ');
-INSERT INTO gifi (accno,description) VALUES ('839595', 'DIVERSAS ');
-INSERT INTO gifi (accno,description) VALUES ('839599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('8399', 'AJUSTES POR INFLACION ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('839905', 'INVERSIONES ');
-INSERT INTO gifi (accno,description) VALUES ('839910', 'INVENTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('839915', 'PROPIEDADES PLANTA Y EQUIPO ');
-INSERT INTO gifi (accno,description) VALUES ('839920', 'INTANGIBLES ');
-INSERT INTO gifi (accno,description) VALUES ('839925', 'CARGOS DIFERIDOS ');
-INSERT INTO gifi (accno,description) VALUES ('839995', 'OTROS ACTIVOS ');
-INSERT INTO gifi (accno,description) VALUES ('84', 'DERECHOS CONTINGENTES POR CONTRA (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('85', 'DEUDORAS FISCALES POR CONTRA (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('86', 'DEUDORAS DE CONTROL POR CONTRA (CR) ');
-INSERT INTO gifi (accno,description) VALUES ('9', 'CUENTAS DE ORDEN ACREEDORAS ');
-INSERT INTO gifi (accno,description) VALUES ('91', 'RESPONSABILIDADES CONTINGENTES ');
-INSERT INTO gifi (accno,description) VALUES ('9105', 'BIENES Y VALORES RECIBIDOS EN CUSTODIA ');
-INSERT INTO gifi (accno,description) VALUES ('910505', 'VALORES MOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('910510', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('910599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('9110', 'BIENES Y VALORES RECIBIDOS EN GARANTIA ');
-INSERT INTO gifi (accno,description) VALUES ('911005', 'VALORES MOBILIARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('911010', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('911015', 'BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('911020', 'CONTRATOS DE GANADO EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('911099', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('9115', 'BIENES Y VALORES RECIBIDOS DE TERCEROS ');
-INSERT INTO gifi (accno,description) VALUES ('911505', 'EN ARRENDAMIENTO ');
-INSERT INTO gifi (accno,description) VALUES ('911510', 'EN PRESTAMO ');
-INSERT INTO gifi (accno,description) VALUES ('911515', 'EN DEPOSITO ');
-INSERT INTO gifi (accno,description) VALUES ('911520', 'EN CONSIGNACION ');
-INSERT INTO gifi (accno,description) VALUES ('911525', 'EN COMODATO ');
-INSERT INTO gifi (accno,description) VALUES ('911599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('9120', 'LITIGIOS Y/O DEMANDAS ');
-INSERT INTO gifi (accno,description) VALUES ('912005', 'LABORALES ');
-INSERT INTO gifi (accno,description) VALUES ('912010', 'CIVILES ');
-INSERT INTO gifi (accno,description) VALUES ('912015', 'ADMINISTRATIVOS O ARBITRALES ');
-INSERT INTO gifi (accno,description) VALUES ('912020', 'TRIBUTARIOS ');
-INSERT INTO gifi (accno,description) VALUES ('9125', 'PROMESAS DE COMPRAVENTA ');
-INSERT INTO gifi (accno,description) VALUES ('9130', 'CONTRATOS DE ADMINISTRACION DELEGADA ');
-INSERT INTO gifi (accno,description) VALUES ('9135', 'CUENTAS EN PARTICIPACION ');
-INSERT INTO gifi (accno,description) VALUES ('9195', 'OTRAS RESPONSABILIDADES CONTINGENTES ');
-INSERT INTO gifi (accno,description) VALUES ('92', 'ACREEDORAS FISCALES ');
-INSERT INTO gifi (accno,description) VALUES ('93', 'ACREEDORAS DE CONTROL ');
-INSERT INTO gifi (accno,description) VALUES ('9305', 'CONTRATOS DE ARRENDAMIENTO FINANCIERO ');
-INSERT INTO gifi (accno,description) VALUES ('930505', 'BIENES MUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('930510', 'BIENES INMUEBLES ');
-INSERT INTO gifi (accno,description) VALUES ('939505', 'DOCUMENTOS POR COBRAR DESCONTADOS ');
-INSERT INTO gifi (accno,description) VALUES ('939510', 'CONVENIOS DE PAGO ');
-INSERT INTO gifi (accno,description) VALUES ('939515', 'CONTRATOS DE CONSTRUCCIONES E INSTALACIONES POR EJECUTAR ');
-INSERT INTO gifi (accno,description) VALUES ('939520', 'PEDIDOS COLOCADOS ');
-INSERT INTO gifi (accno,description) VALUES ('939525', 'ADJUDICACIONES PENDIENTES DE LEGALIZAR ');
-INSERT INTO gifi (accno,description) VALUES ('939530', 'RESERVA ARTICULO 3o. LEY 4/80 ');
-INSERT INTO gifi (accno,description) VALUES ('939535', 'RESERVA COSTO REPOSICION SEMOVIENTES ');
-INSERT INTO gifi (accno,description) VALUES ('939599', 'AJUSTES POR INFLACION ');
-INSERT INTO gifi (accno,description) VALUES ('9399', 'AJUSTES POR INFLACION PATRIMONIO ');
-INSERT INTO gifi (accno,description) VALUES ('939905', 'CAPITAL SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('939910', 'SUPERAVIT DE CAPITAL ');
-INSERT INTO gifi (accno,description) VALUES ('939915', 'RESERVAS ');
-INSERT INTO gifi (accno,description) VALUES ('939925', 'DIVIDENDOS O PARTICIPACIONES DECRETADAS EN ACCIONES, CUOTAS O PARTES DE INTERES SOCIAL ');
-INSERT INTO gifi (accno,description) VALUES ('939930', 'RESULTADOS DE EJERCICIOS ANTERIORES ');
-INSERT INTO gifi (accno,description) VALUES ('94', 'RESPONSABILIDADES CONTINGENTES POR CONTRA (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('95', 'ACREEDORAS FISCALES POR CONTRA (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('96', 'ACREEDORAS DE CONTROL POR CONTRA (DB) ');
-INSERT INTO gifi (accno,description) VALUES ('5', 'GASTOS');
diff --git a/sql-ledger/sql/Czech-Republic-chart.sql b/sql-ledger/sql/Czech-Republic-chart.sql
deleted file mode 100644
index c8d2c53..0000000
--- a/sql-ledger/sql/Czech-Republic-chart.sql
+++ /dev/null
@@ -1,317 +0,0 @@
--- Czech chart of accounts
--- Tomas.Fencl@centrum.cz
--- Kompletní úètová osnova platná v roce 2001
--- Osnova má 2 místa pro tvorbu analytik
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000', 'Dlouhodobý nehmotný majetek','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1100', 'Zøizovací výdaje','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200', 'Nehmotné výsledky výzkumu a vývoje','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1300', 'Software','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1400', 'Ocenitelná práva','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800', 'Drobný dlouhodobý nehmotný majetek','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1900', 'Ostatní dlouhodobý nehmotný majetek','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000', 'Dlouhodobý Hmotný majetek odpisovaný','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100', 'Stavby','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2200', 'Samostatné movité vìci a soubory movitých vìcí','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2500', 'Pìstitelské celky trvalých porostù','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600', 'Základní stádo a ta¾ná zvíøata','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2800', 'Drobný dlouhodobý hmotný majetek','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2900', 'Ostatní dlouhodobý hmotný majetek','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3000', 'Dlouhodobý hmotný majetek neodpisovaný','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3100', 'Pozemky','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3200', 'Umìlecká díla a sbírky','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000', 'Poøízení dlouhodobého nehmotného a hmotného majetku','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4100', 'Poøízení dlouhodobého nehmotného majetku','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4200', 'Poøízení dlouhodobého hmotného majetku','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000', 'Poskytnuté zálohy na dlouhodobý nehmotný a hmotný majetek','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100', 'Poskytnuté zálohy na dlouhodobý nehmotný majetek','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5200', 'Poskytnuté zálohy na dlouhodobý hmotný majetek','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6000', 'Dlouhodobý finanèní majetek','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6100', 'Podílové cenné papíry a vklady v podnicích s rozhodujícím','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6200', 'Podílové cenné papíry a vklady v podnicích s podstatným','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6300', 'Ostatní dlouhodobé cenné papíry a vklady','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6600', 'Pùjèky podnikùm ve skupinì','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6700', 'Ostatní pùjèky','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6900', 'Ostatní dlouhodobý finanèní majetek','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7000', 'Oprávky k dlouhodobému nehmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7100', 'Oprávky ke zøizovacím výdajùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7200', 'Oprávky k nehmotným výsledkùm výzkumu a vývoje','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7300', 'Oprávky k softwaru','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7400', 'Oprávky k ocenitelným právùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7800', 'Oprávky k drobnému dlouhodobému nehmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7900', 'Oprávky k ostatnímu dlouhodobému nehmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8000', 'Oprávky k dlouhodobému hmotnému majetku','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8100', 'Oprávky ke stavbám','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8200', 'Oprávky k samostatným movitým vìcem a souborùm movitých vìcí','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8500', 'Oprávky k pìstitelským celkùm trvalých porostù','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8600', 'Oprávky k základnímu stádu a ta¾ným zvíøatùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8800', 'Oprávky k drobnému dlouhodobému hmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8900', 'Oprávky k ostatnímu dlouhodobému hmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9000', 'Opravné polo¾ky k dlouhodobému majetku','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9100', 'Opravná polo¾ka k dlouhodobému nehmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9200', 'Opravná polo¾ka k dlouhodobému hmotnému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9300', 'Opravná polo¾ka k dlouhodobému nedokonèenému nehmotnému','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9400', 'Opravná polo¾ka k dlouhodobému nedokonèenému hmotnému','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9500', 'Opravná polo¾ka k poskytnutým zálohám','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9600', 'Opravná polo¾ka k dlouhodobému finanènímu majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9700', 'Opravná polo¾ka k nabytému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9800', 'Oprávky k opravné polo¾ce k nabytému majetku','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('10000', 'Zásoby','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11000', 'Materiál','H','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11100', 'Poøízení materiálu','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11200', 'Materiál na skladì','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11900', 'Materiál na cestì','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12000', 'Zásoby vlastní výroby','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12100', 'Nedokonèená výroba','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12200', 'Polotovary vlastní výroby','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12300', 'Výrobky','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12400', 'Zvíøata','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13000', 'Zbo¾í','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13100', 'Poøízení zbo¾í','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13200', 'Zbo¾í na skladì a v prodejnách','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13900', 'Zbo¾í na cestì','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19000', 'Opravné polo¾ky k zásobám','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19100', 'Opravná polo¾ka k materiálu','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19200', 'Opravná polo¾ka k nedokonèené výrobì','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19300', 'Opravná polo¾ka k polotovarùm vlastní výroby','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19400', 'Opravná polo¾ka k výrobkùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19500', 'Opravná polo¾ka ke zvíøatùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19600', 'Opravná polo¾ka ke zbo¾í','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('20000', 'Finanèní úèty','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('21000', 'Peníze','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('21100', 'Pokladna','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('21300', 'Ceniny','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('22000', 'Úèty v bankách','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('22100', 'Bankovní úèty','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('22200', 'Bankovní úèty klientù','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('23000', 'Bì¾né bankovní úvìry','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('23100', 'Krátkodobé bankovní úvìry','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('23200', 'Eskontní úvìry','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('24000', 'Jiné krátkodobé finanèní výpomoci','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('24100', 'Emitované krátkodobé dluhopisy','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('24900', 'Ostatní krátkodobé finanèní výpomoci','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25000', 'Krátkodobý finanèní majetek','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25100', 'Majetkové cenné papíry','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25200', 'Vlastní akcie a vlastní obchodní podíly','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25300', 'Dlu¾né cenné papíry','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25500', 'Vlastní dluhopisy','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25600', 'Ostatní cenné papíry','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('26000', 'Pøevody mezi finanèními úèty','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('26100', 'Peníze na cestì','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('29000', 'Opravné polo¾ky ke krátkodobému finanènímu majetku','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('29100', 'Opravná polo¾ka k majetkovým cenným papírùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('29300', 'Opravná polo¾ka k dlu¾ným cenným papírùm','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('30000', 'Zúètovací vztahy','H','','H','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31000', 'Pohledávky','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31100', 'Odbìratelé','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31200', 'Smìnky k inkasu','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31300', 'Pohledávky za eskontované cenné papíry','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31400', 'Poskytnuté provozní zálohy','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31500', 'Ostatní pohledávky','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32000', 'Závazky','H','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32100', 'Dodavatelé','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32200', 'Smìnky k úhradì','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32400', 'Pøijaté zálohy','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32500', 'Ostatní závazky','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32600', ' Závazky vùèi klientùm','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32700', ' Závazky vùèi trhùm','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33000', 'Zúètování se zamìstnanci a institucemi','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33100', 'Zamìstnanci','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33300', 'Ostatní závazky vùèi zamìstnancùm','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33500', 'Pohledávky za zamìstnanci','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33600', 'Zúètování s institucemi sociálního zabezpeèení a zdravotního','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34000', 'Zúètování daní a dotací','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34100', 'Daò z pøíjmù','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34200', 'Ostatní pøímé danì','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34300', 'Daò z pøidané hodnoty - zúètování','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34311', 'DPH 5% vstup','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34312', 'DPH 22% vstup','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34321', 'DPH 5% výstup','A','','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34322', 'DPH 22% výstup','A','','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34500', 'Ostatní danì a poplatky','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34600', 'Dotace ze státního rozpoètu','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34700', 'Ostatní dotace','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35000', 'Pohledávky ke spoleèníkùm a sdru¾ení','H','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35100', 'Pohledávky k podnikùm ve skupinì','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35300', 'Pohledávky za upsaný vlastní kapitál','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35400', 'Pohledávky za spoleèníky pøi úhradì ztráty','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35500', 'Ostatní pohledávky za spoleèníky','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35800', 'Pohledávky k úèastníkùm sdru¾ení','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36000', 'Závazky ke spoleèníkùm a sdru¾ení','H','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36100', 'Závazky k podnikùm ve skupinì','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36400', 'Závazky ke spoleèníkùm pøi rozdìlování zisku','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36500', 'Ostatní závazky ke spoleèníkùm','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36600', 'Závazky ke spoleèníkùm a èlenùm dru¾stva ze závislé','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36700', 'Závazky z upsaných nesplacených cenných papírù a vkladù','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36800', 'Závazky k úèastníkùm sdru¾ení','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37000', 'Jiné pohledávky a závazky','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37100', 'Odlo¾ená daòová pohledávka a závazek','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37300', 'Nakoupené opce','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37400', 'Prodané opce','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37500', 'Pohledávky z emitovaných dluhopisù','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37700', ' Zúètování obchodù','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37800', 'Jiné pohledávky','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37900', 'Jiné závazky','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38000', 'Pøechodné úèty aktiv a pasív','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38100', 'Náklady pøí¹tích období','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38200', 'Komplexní náklady pøí¹tích období','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38300', 'Výdaje pøí¹tích období','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38400', 'Výnosy pøí¹tích období','A','','L','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38500', 'Pøíjmy pøí¹tích období','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38600', 'Kursové rozdíly aktivní','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38700', 'Kursové rozdíly pasívní','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38800', 'Dohadné úèty aktivní','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38900', 'Dohadné úèty pasívní','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('39000', 'Opravná polo¾ka k zúètovacím vztahùm a vnitøní zúètování','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('39100', 'Opravná polo¾ka k pohledávkám','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('39500', 'Vnitøní zúètování','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('39800', 'Spojovací úèet pøi sdru¾ení','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('40000', 'Kapitálové úèty a dlouhodobé závazky','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41000', 'Základní kapitál a kapitálové fondy','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41100', 'Základní kapitál','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41200', 'Emisní á¾io','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41300', 'Ostatní kapitálové fondy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41400', 'Oceòovací rozdíly z pøecenìní majetku a závazkù','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42000', 'Fondy ze zisku a pøevedené hospodáøské výsledky','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42100', 'Zákonný rezervní fond','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42200', 'Nedìlitelný fond','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42300', 'Statutární fondy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42700', 'Ostatní fondy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42800', 'Nerozdìlený zisk minulých let','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('42900', 'Neuhrazená ztráta minulých let','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('43000', 'Hospodáøský výsledek','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('43100', 'Hospodáøský výsledek ve schvalovacím øízení','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('45000', 'Rezervy','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('45100', 'Rezervy zákonné','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('45400', 'Rezerva na kursové ztráty','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('45900', 'Ostatní rezervy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('46000', 'Bankovní úvìry','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('46100', 'Bankovní úvìry','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47000', 'Dlouhodobé závazky','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47100', 'Dlouhodobé závazky k podnikùm ve skupinì','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47300', 'Emitované dluhopisy','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47400', 'Závazky z pronájmu','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47500', 'Dlouhodobé pøijaté zálohy','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47800', 'Dlouhodobé smìnky k úhradì','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47900', 'Ostatní dlouhodobé závazky','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('49000', 'Individuální podnikatel','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('49100', 'Úèet individuálního podnikatele','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50000', 'Spotøebované nákupy','A','','E','AP_amount:IC_COGS');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50100', 'Spotøeba materiálu','A','','E','AP_amount:IC_COGS');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50200', 'Spotøeba energie','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50300', 'Spotøeba ostatních neskladovatelných dodávek','A','','E','AP_amount:IC_COGS');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50400', 'Prodané zbo¾í','A','','E','AP_amount:IC_COGS');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51000', 'Slu¾by','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51100', 'Opravy a udr¾ování','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51200', 'Cestovné','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51300', 'Náklady na reprezentaci','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51800', 'Ostatní slu¾by','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52000', 'Osobní náklady','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52100', 'Mzdové náklady','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52200', 'Pøíjmy spoleèníkù a èlenù dru¾stva ze závislé èinnosti','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52300', 'Odmìny èlenùm orgánù spoleènosti a dru¾stva','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52400', 'Zákonné sociální poji¹tìní','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52500', 'Ostatní sociální poji¹tìní','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52600', 'Sociální náklady individuálního podnikatele','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52700', 'Zákonné sociální náklady','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52800', 'Ostatní sociální náklady','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('53000', 'Danì a poplatky','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('53100', 'Daò silnièní','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('53200', 'Daò z nemovitostí','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('53800', 'Ostatní danì a poplatky','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54000', 'Jiné provozní náklady','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54100', 'Zùstatková cena prodaného dlouhodobého nehmotného a hmotného','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54200', 'Prodaný materiál','A','','E','IC_COGS');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54300', 'Dary','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54400', 'Smluvní pokuty a úroky z prodlení','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54500', 'Ostatní pokuty a penále','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54600', 'Odpis pohledávky','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54800', 'Ostatní provozní náklady','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55000', 'Odpisy, rezervy a opravné polo¾ky provozních nákladù','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55100', 'Odpisy dlouhodobého nehmotného a hmotného majetku','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55200', 'Tvorba zákonných rezerv','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55400', 'Tvorba ostatních rezerv','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55500', 'Zúètování komplexních nákladù pøí¹tích období','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55700', 'Zúètování oprávky k opravné polo¾ce k nabytému majetku','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55800', 'Tvorba zákonných opravných polo¾ek','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55900', 'Tvorba opravných polo¾ek','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56000', 'Finanèní náklady','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56100', 'Prodané cenné papíry a vklady','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56200', 'Úroky','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56300', 'Kursové ztráty','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56800', 'Ostatní finanèní náklady','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('57000', 'Rezervy a opravné polo¾ky finanèních nákladù','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('57400', 'Tvorba rezerv','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('57900', 'Tvorba opravných polo¾ek','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58000', 'Mimoøádné náklady','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58100', 'Náklady na zmìnu metody','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58200', 'Manka a ¹kody','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58400', 'Tvorba rezerv','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58800', 'Ostatní mimoøádné náklady','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58900', 'Tvorba opravných polo¾ek','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59000', 'Danì z pøíjmù a pøevodové úèty','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59100', 'Daò z pøíjmù z bì¾né èinnosti - splatná','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59200', 'Daò z pøíjmù z bì¾né èinnosti - odlo¾ená','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59300', 'Daò z pøíjmù z mimoøádné èinnosti - splatná','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59400', 'Daò z pøíjmù z mimoøádné èinnosti - odlo¾ené','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59500', 'Dodateèné odvody danì z pøíjmù','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59600', 'Pøevod podílu na hospodáøském výsledku spoleèníkùm','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59700', 'Pøevod provozních nákladù','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59800', 'Pøevod finanèních nákladù','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('60000', 'Tr¾by za vlastní výkony a zbo¾í','A','','I','AR_amount:IC_sale:IC_Income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('60100', 'Tr¾by za vlastní výrobky','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('60200', 'Tr¾by z prodeje slu¾eb','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('60400', 'Tr¾by za zbo¾í','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61000', 'Zmìny stavu vnitropodnikových zásob','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61100', 'Zmìna stavu nedokonèené výroby','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61200', 'Zmìna stavu polotovarù','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61300', 'Zmìna stavu výrobkù','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61400', 'Zmìna stavu zvíøat','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62000', 'Aktivace','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62100', 'Aktivace materiálu a zbo¾í','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62200', 'Aktivace vnitropodnikových slu¾eb','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62300', 'Aktivace dlouhodobého nehmotného majetku','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62400', 'Aktivace dlouhodobého hmotného majetku','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64000', 'Jiné provozní výnosy.','A','','I','AR_amount:IC_sale:IC_Income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64100', 'Tr¾by z prodeje dlouhodobého nehmotného a hmotného majetku','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64200', 'Tr¾by z prodeje materiálu','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64400', 'Smluvní pokuty a úroky z prodlení','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64600', 'Výnosy z odepsaných pohledávek','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64800', 'Jiné provozní výnosy','A','','I','AR_amount:IC_sale:IC_Income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65000', 'Zúètování rezerv a opravných polo¾ek provozních výnosù','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65200', 'Zúètování zákonných rezerv','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65400', 'Zúètování ostatních rezerv','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65500', 'Zúètování komplexních nákladù pøí¹tích období','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65700', 'Zúètování oprávky k opravné polo¾ce k nabytému majetku','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65800', 'Zúètování zákonných opravných polo¾ek','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65900', 'Zúètování opravných polo¾ek','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66000', 'Finanèní výnosy','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66100', 'Tr¾by z prodeje cenných papírù a vkladù','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66200', 'Úroky','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66300', 'Kursové zisky','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66500', 'Výnosy z dlouhodobého finanèního majetku','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66600', 'Výnosy z krátkodobého finanèního majetku','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66800', 'Ostatní finanèní výnosy','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('67000', 'Zúètování rezerv a opravných polo¾ek finanèních výnosù','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('67400', 'Zúètování rezerv','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('67900', 'Zúètování opravných polo¾ek','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68000', 'Mimoøádné výnosy','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68100', 'Výnosy ze zmìny metody','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68400', 'Zúètování rezerv','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68800', 'Ostatní mimoøádné výnosy','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68900', 'Zúètování opravných polo¾ek','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('69000', 'Pøevodové úèty','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('69700', 'Pøevod provozních výnosù','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('69800', 'Pøevod finanèních výnosù','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('70000', 'Úèty rozva¾né','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('70100', 'Poèáteèní úèet rozva¾ný','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('70200', 'Koneèný úèet rozva¾ný','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('71000', 'Úèet ziskù a ztrát','A','','A','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '34311'),0.05);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '34312'),0.22);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '34321'),0.05);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '34322'),0.22);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '13200'), income_accno_id = (select id from chart where accno = '60000'), expense_accno_id = (select id from chart where accno = '50000'), fxgain_accno_id = (select id from chart where accno = '99998'), fxloss_accno_id = (select id from chart where accno = '99999'), curr = 'Kè ', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/DB2-create.sql b/sql-ledger/sql/DB2-create.sql
deleted file mode 100644
index 4187f6c..0000000
--- a/sql-ledger/sql/DB2-create.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-CONNECT RESET@
-ATTACH TO db2inst1@
-CREATE DATABASE LEDGER USING CODESET UTF-8 TERRITORY US DFT_EXTENT_SZ 16@
-CONNECT TO LEDGER@
-CREATE BUFFERPOOL LEDGERBP_8K IMMEDIATE SIZE 1000 PAGESIZE 8192@
-CREATE TABLESPACE LEDGER_TS PAGESIZE 8K MANAGED BY SYSTEM USING ('LEDGER_TS') PREFETCHSIZE 8 BUFFERPOOL LEDGERBP_8K@
-CREATE TEMPORARY TABLESPACE LEDGER_TMP_8K PAGESIZE 8K MANAGED BY SYSTEM USING ('LEDGER_TMP_8K') BUFFERPOOL LEDGERBP_8K@
-CONNECT RESET@
diff --git a/sql-ledger/sql/DB2-indices.sql b/sql-ledger/sql/DB2-indices.sql
deleted file mode 100644
index 6242935..0000000
--- a/sql-ledger/sql/DB2-indices.sql
+++ /dev/null
@@ -1,57 +0,0 @@
-create index ac_trns_trans_id on acc_trans (trans_id)@
-create index ac_trns_chart_id on acc_trans (chart_id)@
-create index ac_trns_transdate on acc_trans (transdate)@
-create index ac_trns_source on acc_trans (source)@
-create index ap_id_x on ap (id)@
-create index ap_transdate_x on ap (transdate)@
-create index ap_invnumber_x on ap (invnumber)@
-create index ap_ordnumber_x on ap (ordnumber)@
-create index ap_vendor_id_x on ap (vendor_id)@
-create index ap_emp_id_x on ap (employee_id)@
-create index ar_id_x on ar (id)@
-create index ar_transdate_x on ar (transdate)@
-create index ar_invnumber_x on ar (invnumber)@
-create index ar_ordnumber_x on ar (ordnumber)@
-create index ar_cust_id_x on ar (customer_id)@
-create index ar_emp_id_x on ar (employee_id)@
-create index assembly_id_x on assembly (id)@
-create index chart_id_x on chart (id)@
-create unique index chart_accno_x on chart (accno)@
-create index chart_category_x on chart (category)@
-create index chart_link_x on chart (link)@
-create index chart_gifi_accno on chart (gifi_accno)@
-create index cust_id_x on customer (id)@
-create index cust_customer_id_x on customertax (customer_id)@
-create index cust_custnum_x on customer (customernumber)@
-create index cust_name_x on customer (name)@
-create index cust_contact_x on customer (contact)@
-create index employee_id_x on employee (id)@
-create unique index employee_login_x on employee (login)@
-create index employee_name_x on employee (name)@
-create index exchrate_ct_x on exchangerate (curr, transdate)@
-create unique index gifi_accno_x on gifi (accno)@
-create index gl_id_x on gl (id)@
-create index gl_transdate_x on gl (transdate)@
-create index gl_reference_x on gl (reference)@
-create index gl_description_x on gl (description)@
-create index gl_employee_id_x on gl (employee_id)@
-create index invoi_id_x on invoice (id)@
-create index invoi_trans_id_x on invoice (trans_id)@
-create index makmod_parts_id on makemodel (parts_id)@
-create index oe_id_x on oe (id)@
-create index oe_transdate_x on oe (transdate)@
-create index oe_ordnumber_x on oe (ordnumber)@
-create index oe_emp_id_x on oe (employee_id)@
-create index orditems_trans_id on orderitems (trans_id)@
-create index parts_id_x on parts (id)@
-create index parts_partnumber on parts (partnumber)@
--- create index parts_desc on parts (description)@
-create index partstax_parts_id on partstax (parts_id)@
-create index vend_id_x on vendor (id)@
-create index vend_name_x on vendor (name)@
-create index vend_vendnum_x on vendor (vendornumber)@
-create index vend_contact_x on vendor (contact)@
-create index vendtax_vendor_id on vendortax (vendor_id)@
-create index shipto_trans_id on shipto (trans_id)@
-create index project_id_x on project (id)@
-create index partsgroup_id_x on partsgroup (id)@
diff --git a/sql-ledger/sql/DB2-remove.sql b/sql-ledger/sql/DB2-remove.sql
deleted file mode 100644
index 413bebb..0000000
--- a/sql-ledger/sql/DB2-remove.sql
+++ /dev/null
@@ -1,47 +0,0 @@
--- DB2-remove.sql
---
---
--- Jim Rawlings modified for use with SL 2.0.8 and DB2 v7.2
--- and higher August 27, 2003
---
---
----------------------------------------------------------
--- DDL Statements for object removal
----------------------------------------------------------
-DROP TRIGGER partsgroupid;
-DROP TRIGGER projectid;
-DROP TRIGGER employeeid;
-DROP TRIGGER oeid;
-DROP TRIGGER apid;
-DROP TRIGGER arid;
-DROP TRIGGER partsid;
-DROP TRIGGER customerid;
-DROP TRIGGER vendorid;
-DROP TRIGGER invoiceid;
-DROP TRIGGER chartid;
-DROP TRIGGER glid;
-DROP SEQUENCE id RESTRICT;
-DROP TABLE partsgroup;
-DROP TABLE project;
-DROP TABLE shipto;
-DROP TABLE employee;
-DROP TABLE exchangerate;
-DROP TABLE orderitems;
-DROP TABLE oe;
-DROP TABLE vendortax;
-DROP TABLE customertax;
-DROP TABLE tax;
-DROP TABLE partstax;
-DROP TABLE ap;
-DROP TABLE ar;
-DROP TABLE assembly;
-DROP TABLE parts;
-DROP TABLE customer;
-DROP TABLE vendor;
-DROP TABLE invoice;
-DROP TABLE acc_trans;
-DROP TABLE defaults;
-DROP TABLE gifi;
-DROP TABLE chart;
-DROP TABLE gl;
-DROP TABLE makemodel;
diff --git a/sql-ledger/sql/DB2-set.sql b/sql-ledger/sql/DB2-set.sql
deleted file mode 100644
index 2e8043b..0000000
--- a/sql-ledger/sql/DB2-set.sql
+++ /dev/null
@@ -1,4 +0,0 @@
-ATTACH TO db2inst1@
-! db2set DB2DBDFT=LEDGER@
-! db2empfa LEDGER@
-DETACH@
diff --git a/sql-ledger/sql/DB2-sql-ledger.order b/sql-ledger/sql/DB2-sql-ledger.order
deleted file mode 100644
index b52090b..0000000
--- a/sql-ledger/sql/DB2-sql-ledger.order
+++ /dev/null
@@ -1,5 +0,0 @@
-db2 -td@ -vf DB2-create.sql
-db2 -td@ -vf DB2-set.sql
-db2 -td@ -vf DB2-tables.sql
-db2 -td@ -vf DB2-indices.sql
-db2 -tvf Default-chart.sql
diff --git a/sql-ledger/sql/DB2-tables.sql b/sql-ledger/sql/DB2-tables.sql
deleted file mode 100644
index 3ac7799..0000000
--- a/sql-ledger/sql/DB2-tables.sql
+++ /dev/null
@@ -1,511 +0,0 @@
--- DB2-tables.sql
--- Bill Ott modified from Oracle tables, March 02, 2002
---
--- Jim Rawlings modified for use with SL 2.0.8 and DB2 v7.2
--- and higher August 27, 2003
---
---
----------------------------------------------------------
--- DDL Statements for sequence id
----------------------------------------------------------
-CREATE SEQUENCE id AS INTEGER START WITH 10000
-INCREMENT BY 1 MAXVALUE 2147483647 MINVALUE 1 CACHE 5
-@
----------------------------------------------------------
--- DDL Statements for table makemodel
----------------------------------------------------------
-CREATE TABLE makemodel (
- parts_id INTEGER,
- name VARCHAR(100)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table gl
----------------------------------------------------------
-CREATE TABLE gl (
- id INTEGER,
- reference VARCHAR(50),
- description VARCHAR(100),
- transdate DATE WITH DEFAULT current date,
- employee_id INTEGER,
- notes VARCHAR(4000)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table chart
----------------------------------------------------------
-CREATE TABLE chart (
- id INTEGER,
- accno VARCHAR(20) NOT NULL,
- description VARCHAR(100),
- charttype CHAR(1) WITH DEFAULT 'A',
- category CHAR(1),
- link VARCHAR(100),
- gifi_accno VARCHAR(20)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table gifi
----------------------------------------------------------
-CREATE TABLE gifi (
- accno VARCHAR(20),
- description VARCHAR(100)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table defaults
----------------------------------------------------------
-CREATE TABLE defaults (
- inventory_accno_id INTEGER,
- income_accno_id INTEGER,
- expense_accno_id INTEGER,
- fxgain_accno_id INTEGER,
- fxloss_accno_id INTEGER,
- invnumber VARCHAR(30),
- sonumber VARCHAR(30),
- yearend VARCHAR(5),
- weightunit VARCHAR(5),
- businessnumber VARCHAR(30),
- version VARCHAR(8),
- curr VARCHAR(500),
- closedto DATE,
- revtrans CHAR(1) WITH DEFAULT '0',
- ponumber VARCHAR(30)
-) IN LEDGER_TS
-@
-INSERT INTO defaults (version) VALUES ('2.0.10')
-@
----------------------------------------------------------
--- DDL Statements for table acc_trans
----------------------------------------------------------
-CREATE TABLE acc_trans (
- trans_id INTEGER,
- chart_id INTEGER,
- amount FLOAT,
- transdate DATE WITH DEFAULT current date,
- source VARCHAR(20),
- cleared CHAR(1) WITH DEFAULT '0',
- fx_transaction CHAR(1) WITH DEFAULT '0',
- project_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table invoice
----------------------------------------------------------
-CREATE TABLE invoice (
- id INTEGER,
- trans_id INTEGER,
- parts_id INTEGER,
- description VARCHAR(4000),
- qty FLOAT,
- allocated FLOAT,
- sellprice FLOAT,
- fxsellprice FLOAT,
- discount FLOAT,
- assemblyitem CHAR(1) WITH DEFAULT '0',
- unit VARCHAR(5),
- project_id INTEGER,
- deliverydate DATE
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table vendor
----------------------------------------------------------
-CREATE TABLE vendor (
- id INTEGER,
- name VARCHAR(35),
- addr1 VARCHAR(35),
- addr2 VARCHAR(35),
- addr3 VARCHAR(35),
- addr4 VARCHAR(35),
- contact VARCHAR(35),
- phone VARCHAR(20),
- fax VARCHAR(20),
- email VARCHAR(50),
- notes VARCHAR(4000),
- terms INTEGER WITH DEFAULT,
- taxincluded CHAR(1),
- vendornumber VARCHAR(40),
- cc VARCHAR(50),
- bcc VARCHAR(50)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table customer
----------------------------------------------------------
-CREATE TABLE customer (
- id INTEGER,
- name VARCHAR(35),
- addr1 VARCHAR(35),
- addr2 VARCHAR(35),
- addr3 VARCHAR(35),
- addr4 VARCHAR(35),
- contact VARCHAR(35),
- phone VARCHAR(20),
- fax VARCHAR(20),
- email VARCHAR(50),
- notes VARCHAR(4000),
- discount FLOAT,
- taxincluded CHAR(1),
- creditlimit FLOAT,
- terms INTEGER WITH DEFAULT,
- customernumber VARCHAR(40),
- cc VARCHAR(50),
- bcc VARCHAR(50)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table parts
----------------------------------------------------------
-CREATE TABLE parts (
- id INTEGER,
- partnumber VARCHAR(30),
- description VARCHAR(4000),
- unit VARCHAR(5),
- listprice FLOAT,
- sellprice FLOAT,
- lastcost FLOAT,
- priceupdate DATE WITH DEFAULT current date,
- weight FLOAT,
- onhand FLOAT WITH DEFAULT 0,
- notes VARCHAR(1500),
- makemodel CHAR(1) WITH DEFAULT '0',
- assembly CHAR(1) WITH DEFAULT '0',
- alternate CHAR(1) WITH DEFAULT '0',
- rop FLOAT,
- inventory_accno_id INTEGER,
- income_accno_id INTEGER,
- expense_accno_id INTEGER,
- bin VARCHAR(20),
- obsolete CHAR(1) WITH DEFAULT '0',
- bom CHAR(1) WITH DEFAULT '0',
- image VARCHAR(100),
- drawing VARCHAR(100),
- microfiche VARCHAR(100),
- partsgroup_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table assembly
----------------------------------------------------------
-CREATE TABLE assembly (
- id INTEGER,
- parts_id INTEGER,
- qty FLOAT,
- bom CHAR(1)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table ar
----------------------------------------------------------
-CREATE TABLE ar (
- id INTEGER,
- invnumber VARCHAR(30),
- transdate DATE WITH DEFAULT current date,
- customer_id INTEGER,
- taxincluded CHAR(1),
- amount FLOAT,
- netamount FLOAT,
- paid FLOAT,
- datepaid DATE,
- duedate DATE,
- invoice CHAR(1) WITH DEFAULT '0',
- shippingpoint VARCHAR(100),
- terms INTEGER WITH DEFAULT 0,
- notes VARCHAR(4000),
- curr CHAR(3),
- ordnumber VARCHAR(30),
- employee_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table ap
----------------------------------------------------------
-CREATE TABLE ap (
- id INTEGER,
- invnumber VARCHAR(30),
- transdate DATE WITH DEFAULT current date,
- vendor_id INTEGER,
- taxincluded CHAR(1) WITH DEFAULT '0',
- amount FLOAT,
- netamount FLOAT,
- paid FLOAT,
- datepaid DATE,
- duedate DATE,
- invoice CHAR(1) WITH DEFAULT '0',
- ordnumber VARCHAR(30),
- curr CHAR(3),
- notes VARCHAR(4000),
- employee_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table partstax
----------------------------------------------------------
-CREATE TABLE partstax (
- parts_id INTEGER,
- chart_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table tax
----------------------------------------------------------
-CREATE TABLE tax (
- chart_id INTEGER,
- rate FLOAT,
- taxnumber VARCHAR(30)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table customertax
----------------------------------------------------------
-CREATE TABLE customertax (
- customer_id INTEGER,
- chart_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table vendortax
----------------------------------------------------------
-CREATE TABLE vendortax (
- vendor_id INTEGER,
- chart_id INTEGER
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table oe
----------------------------------------------------------
-CREATE TABLE oe (
- id INTEGER,
- ordnumber VARCHAR(30),
- transdate DATE WITH DEFAULT current date,
- vendor_id INTEGER,
- customer_id INTEGER,
- amount FLOAT,
- netamount FLOAT,
- reqdate DATE,
- taxincluded CHAR(1),
- shippingpoint VARCHAR(100),
- notes VARCHAR(4000),
- curr CHAR(3),
- employee_id INTEGER,
- closed CHAR(1) WITH DEFAULT '0'
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table orderitems
----------------------------------------------------------
-CREATE TABLE orderitems (
- trans_id INTEGER,
- parts_id INTEGER,
- description VARCHAR(4000),
- qty FLOAT,
- sellprice FLOAT,
- discount FLOAT,
- unit VARCHAR(5),
- project_id INTEGER,
- reqdate DATE
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table exchangerate
----------------------------------------------------------
-CREATE TABLE exchangerate (
- curr CHAR(3),
- transdate DATE,
- buy FLOAT,
- sell FLOAT
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table employee
----------------------------------------------------------
-CREATE TABLE employee (
- id INTEGER,
- login VARCHAR(20),
- name VARCHAR(35),
- addr1 VARCHAR(35),
- addr2 VARCHAR(35),
- addr3 VARCHAR(35),
- addr4 VARCHAR(35),
- workphone VARCHAR(20),
- homephone VARCHAR(20),
- startdate DATE WITH DEFAULT current date,
- enddate DATE,
- notes VARCHAR(4000)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table shipto
----------------------------------------------------------
-CREATE TABLE shipto (
- trans_id INTEGER,
- shiptoname VARCHAR(35),
- shiptoaddr1 VARCHAR(35),
- shiptoaddr2 VARCHAR(35),
- shiptoaddr3 VARCHAR(35),
- shiptoaddr4 VARCHAR(35),
- shiptocontact VARCHAR(35),
- shiptophone VARCHAR(20),
- shiptofax VARCHAR(20),
- shiptoemail VARCHAR(50)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table project
----------------------------------------------------------
-CREATE TABLE project (
- id INTEGER,
- projectnumber VARCHAR(50),
- description VARCHAR(4000)
-) IN LEDGER_TS
-@
----------------------------------------------------------
--- DDL Statements for table partsgroup
----------------------------------------------------------
-CREATE TABLE partsgroup (
- id INTEGER,
- partsgroup VARCHAR(100)
-) IN LEDGER_TS
-@
----------------------------------------------------------
---!#
---!# functions N/A
---!#
----------------------------------------------------------
---!#
---!# triggers
---!#
----------------------------------------------------------
--- DDL Statements for trigger glid
----------------------------------------------------------
-CREATE TRIGGER glid
-NO CASCADE BEFORE INSERT ON gl
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger chartid
----------------------------------------------------------
-CREATE TRIGGER chartid
-NO CASCADE BEFORE INSERT ON chart
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger invoiceid
----------------------------------------------------------
-CREATE TRIGGER invoiceid
-NO CASCADE BEFORE INSERT ON invoice
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger vendorid
----------------------------------------------------------
-CREATE TRIGGER vendorid
-NO CASCADE BEFORE INSERT ON vendor
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger customerid
----------------------------------------------------------
-CREATE TRIGGER customerid
-NO CASCADE BEFORE INSERT ON customer
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger partsid
----------------------------------------------------------
-CREATE TRIGGER partsid
-NO CASCADE BEFORE INSERT ON parts
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger arid
----------------------------------------------------------
-CREATE TRIGGER arid
-NO CASCADE BEFORE INSERT ON ar
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger apid
----------------------------------------------------------
-CREATE TRIGGER apid
-NO CASCADE BEFORE INSERT ON ap
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger oeid
----------------------------------------------------------
-CREATE TRIGGER oeid
-NO CASCADE BEFORE INSERT ON oe
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger employeeid
----------------------------------------------------------
-CREATE TRIGGER employeeid
-NO CASCADE BEFORE INSERT ON employee
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger projectid
----------------------------------------------------------
-CREATE TRIGGER projectid
-NO CASCADE BEFORE INSERT ON project
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END
-@
----------------------------------------------------------
--- DDL Statements for trigger partsgroupid
----------------------------------------------------------
-CREATE TRIGGER partsgroupid
-NO CASCADE BEFORE INSERT ON partsgroup
-REFERENCING NEW AS new_id
-FOR EACH ROW MODE DB2SQL
-BEGIN ATOMIC
-set new_id.id = NEXTVAL FOR id;
-END@
-
-
diff --git a/sql-ledger/sql/Danish_Default-chart.sql b/sql-ledger/sql/Danish_Default-chart.sql
deleted file mode 100644
index 42f102c..0000000
--- a/sql-ledger/sql/Danish_Default-chart.sql
+++ /dev/null
@@ -1,75 +0,0 @@
--- Default chart of accounts
--- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','KORTFRISTEDE AKTIVER','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1061','Bank','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Kasse','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Indbetalinger','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Hensættelser til formodet gæld','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1210','Moms indgående','A','','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','LAGER-AKTIVER','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Lager / udstyr','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Lager / programmel','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Lager / tillægssalg','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1550','Lager / arrangementer','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','AKTIVER','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Kontorinventar og -udstyr','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Samlede afskrivninger, inventar, udstyr','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Køretøjer','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Samlede afskrivninger, køretøjer','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','KORTFRISTET GÆLD','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Udbetalinger','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Selskabsskat','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','Afgifter','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2311','Moms udgående','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LANGFRISTET GÆLD','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Banklån','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','AKTIEKAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Almindelige aktier','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','EGENKAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3510','Egenkapital primo','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','Årets resultat','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','SALGSINDTÆGT','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Salg / udstyr','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Salg / programmel','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','Salg / tillægssalg','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4050','Salg / arrangementer','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','KONSULENTINDTÆGT','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','Konsulentbistand','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','Programmering','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','ANDEN INDTÆGT','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Renter','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','SALGSOMKOSTNINGER','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','Omkostninger / udstyr','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Anskaffelser under 8.000','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5011','Anskaffelser over 8.000','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','Omkostninger / programmel','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','Omkostninger / tillægssalg','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5050','Omkostninger / arrangementer','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Fragt, post','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','LØNUDGIFTER','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Lønninger og honorarer','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','ATP','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','Personalegoder','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERELLE & ADMINISTRATIVE UDGIFTER','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Bogføring, revision, advokat','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Marketing','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Dårlige skyldnere','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Afdrag på lån','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','A-skat','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Forsikringer','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Renter og bankgebyrer','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Kontorudgifter','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Husleje','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Vedligeholdelse og reparation','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telefon','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Rejser & repræsentation','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','El, vand, varme','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenser','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1210'),0.25);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.25);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'DKK', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Default-chart.sql b/sql-ledger/sql/Default-chart.sql
deleted file mode 100644
index 8af3efc..0000000
--- a/sql-ledger/sql/Default-chart.sql
+++ /dev/null
@@ -1,77 +0,0 @@
--- Default chart of accounts
--- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','CURRENT ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Checking Account','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Petty Cash','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Accounts Receivables','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Allowance for doubtful accounts','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTORY ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Inventory / General','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Inventory / Aftermarket Parts','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Office Furniture & Equipment','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Furn. & Equip.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Vehicle','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Vehicle','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','CURRENT LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Accounts Payable','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Corporate Taxes Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','Federal Income Tax Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210','Workers Comp Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2220','Vacation Pay Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2250','Pension Plan Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2260','Employment Insurance Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2280','Payroll Taxes Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','VAT (10%)','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','VAT (14%)','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2330','VAT (30%)','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LONG TERM LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Bank Loans','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Loans from Shareholders','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','SHARE CAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Common Shares','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','SALES REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Sales / General','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Sales / Aftermarket Parts','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','CONSULTING REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','Consulting','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OTHER REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','Shipping & Handling','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Interest','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','COST OF GOODS SOLD','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Purchases','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','COGS / General','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','COGS / Aftermarket Parts','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Freight','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','PAYROLL EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Wages & Salaries','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','Employment Insurance Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','Pension Plan Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','Workers Comp Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','Employee Benefits','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Accounting & Legal','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Advertising & Promotions','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Bad Debts','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5650','Capital Cost Allowance Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortization Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','Income Taxes','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Insurance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interest & Bank Charges','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Office Supplies','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Rent','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Repair & Maintenance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telephone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Travel & Entertainment','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Utilities','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','Registrations','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenses','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.1);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2320'),0.14);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2330'),0.3);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD:CAD:EUR', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Dutch_Default-chart.sql b/sql-ledger/sql/Dutch_Default-chart.sql
deleted file mode 100644
index 737a7d2..0000000
--- a/sql-ledger/sql/Dutch_Default-chart.sql
+++ /dev/null
@@ -1,80 +0,0 @@
---
--- Dutch Chart of Accounts
--- AJ Hettema, Mon, 20 Aug 2001
---
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1000','HUIDIGE ACTIVA','H','','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1061','Bank','A','','A','AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1065','Kas','A','','A','AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1200','Debiteuren','A','','A','AR');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1205','Toelage voor precaire rekeningen','A','','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1500','VOORRAAD ACTIVA','H','','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1520','Voorraad / Hardware','A','','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1530','Voorraad / Software','A','','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1540','Voorraad / Aftermarket Parts','A','','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1800','LANGE TERMIJN ACTIVA','H','','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1820','Inventaris','A','','A','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1825','Afschrijving inventaris','A','','C','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1840','Auto','A','','A','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1845','Afschrijving auto','A','','C','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2000','HUIDIGE PASSIVA','H','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2100','Crediteuren','A','','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2160','Niet-rijks Belastingen','A','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2170','Omzetbelasting','A','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2190','Vennootschapsbelasting','A','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2310','BTW hoog','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2311','BTW laag','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2600','LANGE TERMIJN PASSIVA','H','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2620','Bank Leningen','A','','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2680','Aandelenvermogen','A','','L','AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3300','AANDELEN KAPITAAL','H','','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3350','Aandelen in portefeuille','A','','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3500','WINSTRESERVE','H','','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3590','Winstreserve voorgaande jaren','A','','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3600','Huidige winstreserve','A','','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4000','VERKOOP INKOMSTEN','H','','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4020','Verkoop / Hardware','A','','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4030','Verkoop / Software','A','','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4040','Verkoop / Aftermarket Parts','A','','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4300','CONSULTANCY INKOMSTEN','H','','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4320','Consultancy','A','','I','AR_amount:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4330','Programmeren','A','','I','AR_amount:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4400','ANDERE INKOMSTEN','H','','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4430','Verzend & Administratie','A','','I','IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4440','Rente','A','','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4450','Foreign Exchange Gain','A','','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5000','INKOOPPRIJS VERKOPEN','H','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5010','Inkoopkosten algemeen','A','','E','AP_amount:IC_cogs:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5020','Inkoopkosten / Hardware','A','','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5030','Inkoopkosten / Software','A','','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5040','Inkoopkosten / Aftermarket Parts','A','','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5100','Vrachtkosten','A','','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5400','PERSONEELS KOSTEN','H','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5410','Salarissen','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5420','EI Expense','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5430','CPP Expense','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5440','WCB Expense','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5470','Employee Benefits','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5610','Boekhouding- & Rechtkosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5615','Reclame- & Promotiekosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5620','Slechte Schulden','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5660','Afschrijvingskosten','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5680','Inkomsten Belastingen','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5685','Verzekeringen','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5690','Rente & Bankkosten','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5700','Kantoorvoorzieningen','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5760','Huurkosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5765','Reparatie- & Onderhoudskosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5780','Telefoonkosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5781','Internetkosten','A','','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5785','Reis- & Vermaakkosten','A','','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5790','NUTS Kosten','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5795','Registratie''s','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5800','Licenties','A','','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.19);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.06);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Dutch_Standard-chart.sql b/sql-ledger/sql/Dutch_Standard-chart.sql
deleted file mode 100644
index 19c5711..0000000
--- a/sql-ledger/sql/Dutch_Standard-chart.sql
+++ /dev/null
@@ -1,233 +0,0 @@
--- Nederlandstalig Rekeningschema conform het Decimaal Stelsel.
--- Dutch Chart of Accounts following the Decimal Standards as set by the famous Philips Accounting Department
--- PDF Tammes, Fri, 29 Mar 2002 ( remarks or questions to finance@bermuda-holding.com )
--- Just delete any accounts not needed after importing the scheme, beats entering all manually (or add -- at the beginning)
--- Account groups (first number in accountnumber defines to which group it belongs)
--- 0 : Vaste Activa, Eigen Vermogen, Voorzieningen en lang vreemd vermogen => Fixed Assets, Capital, Accruals and long term loans
--- 1 : Financiele Rekeningen => Financial Accounts
--- 2 : Tussenrekeningen => Intermediate Accounts
--- 3 : Voorraad grond- en hulpstoffen => Stocks (minerals, parts not yet assembled etc)
--- 4 : Kostenrekeningen => Costs Accounts
--- 5 : Verdeling Directe kosten => Accounts to recharge several Direct Costs to separate departments
--- 6 : Fabricagekosten => Assembly Costs
--- 7 : Voorraad gereed produkt en product in bewerking => Stocks (Trade Articles, half-finished assemblies, projects under construction)
--- 8 : Rekeningen voor vaststelling van het verkoopresultaat => Accounts for dediding Sales Result
--- 9 : Rekeningen voor vaststelling van de resultatenrekening => Accounts for dediding Profit & Loss (P/L)
--- The general idea is to allocate all costs to the 4/5/6 accounts, all stock transactions to 7 and sales related to 8. At the end of the
--- year you clean out the seperate accounts via x999 and kick the result to the relevant 9xxx series. That way you have a specialized
--- P/L in the seperate accounts and an overview/shirt version of the P/L in the 9 series, where also various results not related to normal
--- operations is recorded (tax, donations, that kind of thing. Finally the 9999 account is used to kick the result to retained earnings and
--- related accounts in the balance sheet, and we are ready for the next year
---
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0000','Vaste Activa & Eigen Vermogen','H','0000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0010','Terreinen','A','0010','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0015','Afschrijving Terreinen','A','0015','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0200','Gebouwen','A','0200','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0205','Afschrijving Gebouwen','A','0205','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0230','Inventaris','A','0230','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0235','Afschrijving Inventaris','A','0235','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0240','Computers','A','0240','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0245','Afschrijving Computers','A','0245','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0250','Auto','A','0250','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0255','Afschrijving Auto','A','0255','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0260','Machines','A','0260','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0265','Afschrijving Machines','A','0265','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0290','Goodwill','A','0290','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0295','Afschrijving Goodwill','A','0295','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0370','Overige Leningen u/g','A','0370','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0380','Aandelen & Effecten','A','0380','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0381','Beleggingen Spaarbeleg','A','0381','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0390','Beleggingen Legiolease','A','0390','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0400','Aandelenkapitaal','A','0400','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0410','Aandelen in portefeuille','A','0410','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0420','Aandelen uit te reiken','A','0420','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0430','Agioreserve','A','0430','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0440','Winstreserve','A','0440','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0450','Herwaarderingsreserve','A','0450','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0470','Oprichtingskosten','A','0470','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0480','Winst na belasting lopend jaar','A','0480','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0500','Eigen Vermogen','A','0500','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0510','Prive','A','0510','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0550','Onverdeeld Resultaat','A','0550','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0600','Voorziening Onderhoud','A','0600','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0610','Voorziening Garantie','A','0610','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0620','Voorziening Assurantie','A','0620','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0630','Voorziening Debiteuren','A','0630','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0700','Obligatielening','A','0700','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0710','Obligaties in portefeuille','A','0710','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0720','Converteerbare Obligatielening','A','0720','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0730','Agio op Obligaties','A','0730','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0740','Disagio op Obligaties','A','0740','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('0800','Hypothecaire lening o/g','A','0800','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1000','Financiele Rekeningen','H','1000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1001','Kas','A','1001','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1050','Contante Verkopen','A','1050','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1100','Interbank','A','1100','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1110','ABN-AMRO','A','1110','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1119','Postbank Plus','A','1119','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1120','Postbank Giro','A','1120','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1121','Postbank Kapitaal','A','1121','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1122','Postbank Leeuw','A','1122','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1139','Postbank Effectenrekening','A','1139','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1140','Rabobank','A','1140','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1141','Rabobank Rendementrekening','A','1141','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1160','van Lanschotbank','A','1160','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1170','Finansbank','A','1170','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1180','VISA Creditcard','A','1180','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1190','Kruisposten','A','1190','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1200','Debiteuren','A','1200','A','AR');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1205','Dubieuze Debiteuren','A','1205','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1321','Rekening Courant < A','A','1321','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1322','Rekening Courant < B','A','1322','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1340','Goederen ontvangen / GO','A','1340','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1500','Te betalen loonheffing','A','1500','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1520','Te betalen Sociale Lasten','A','1520','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1530','Te betalen Pensioenpremies','A','1530','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1600','Crediteuren','A','1600','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1605','Nog te Ontvangen Facturen / NOF','A','1605','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1610','Te betalen tantiemes','A','1610','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1615','Te betalen Vennootschapsbelasting','A','1615','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1620','Interimdividend','A','1620','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1630','Te betalen dividend','A','1630','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1640','Te betalen dividendbelasting','A','1640','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1650','Aandeelhouders nog te storten','A','1650','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1700','Te betalen interest','A','1700','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1710','Te betalen coupons','A','1710','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1770','Uitgelote obligaties','A','1770','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1800','Te vorderen BTW hoog','A','1800','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1801','Te vorderen BTW laag','A','1801','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1810','Te betalen BTW hoog','A','1810','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1811','Te betalen BTW laag','A','1811','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1850','Saldo BTW','A','1850','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1941','Rekening Courant > A','A','1941','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1942','Rekening Courant > B','A','1942','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1960','Vooruitbetaalde bedragen','A','1960','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1970','Vooruitontvangen bedragen','A','1970','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1980','Nog te ontvangen bedragen','A','1980','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('1990','Nog te betalen bedragen','A','1990','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2000','Tussenrekeningen','H','2000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2100','Vraagposten','A','2100','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2400','Onbekende betalingen','A','2400','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2800','Tussenrekening Lonen','A','2800','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('2900','Tussenrekening Beginbalans','A','2900','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3000','Voorraad Grond- en Hulpstoffen','H','3000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('3010','Voorraad Grondstof A','A','3010','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4000','Kostenrekeningen','H','4000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4001','Verbruik Grondstoffen','A','4001','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4100','Directe Loonkosten','A','4100','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4110','Indirecte Loonkosten','A','4110','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4120','Sociale Lasten','A','4120','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4130','Kosten Pensioenen','A','4130','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4190','Overige Personeelskosten','A','4190','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4200','Kosten externe medewerkers','A','4200','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4210','Kosten Personeelsuitjes','A','4210','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4220','Kantinekosten','A','4220','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4240','Lief en Leedpot externe medewerkers','A','4240','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4300','Afschrijvingskosten Gebouwen','A','4300','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4330','Afschrijvingskosten Inventaris','A','4330','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4340','Afschrijvingskosten Computers','A','4340','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4350','Afschrijvingskosten Autos','A','4350','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4360','Afschrijvingskosten Machines','A','4360','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4390','Afschrijvingskosten Goodwill','A','4390','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4400','Huurkosten','A','4400','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4410','Asurantiekosten','A','4410','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4520','Gas, Licht & Water','A','4520','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4530','Vaste Lasten','A','4530','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4540','Reparatie- & Onderhoudskosten','A','4540','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4560','Verzekering en Beveiliging Pand','A','4560','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4600','Directe Verkoopkosten','A','4600','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4650','Indirecte Verkoopkosten','A','4650','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4730','Relatiegeschenken','A','4730','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4740','Reis en Verblijfkosten','A','4740','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4800','Kasverschillen','A','4800','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4810','Voorraadverschillen','A','4810','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4900','Telefoon & Faxkosten','A','4900','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4910','Contributies & Abonnementen','A','4910','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4920','Verzekeringen Algemeen','A','4920','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4930','Kantoorartikelen','A','4930','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4931','Kantoorbenodigdheden','A','4931','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4932','Vakliteratuur','A','4932','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4940','Licenties & Software','A','4940','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4941','Administratie & Acountantskosten','A','4941','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4943','Notaris & Advocaatkosten','A','4943','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4950','Drukwerk & Papier','A','4950','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4970','Porti','A','4970','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4980','Bankkosten','A','4980','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4981','Bankprovisie Effectenhandel','A','4981','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4990','Overige Algemene Kosten','A','4990','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4991','Bijzondere baten en lasten','A','4991','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('4999','Overboekingsrekening Rubriek 4','A','4999','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5000','Verdeling Indirecte Kosten','H','5000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5400','Indirecte fabricagekosten','A','5400','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5450','Opslag Indirecte fabricagekosten','A','5450','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5500','Indirecte verkoopkosten','A','5500','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5550','Opslag Indirecte verkoopkosten','A','5550','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('5999','Overboekingsrekening Rubriek 5','A','5999','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6000','Fabricagerekeningen','H','6000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6001','Verbruik Grondstoffen','A','6001','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6010','Directe Lonen','A','6010','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6020','Toeslag Indirecte fabricagekosten','A','6020','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6101','Standaard Verbruik Grondstoffen','A','6101','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6110','Standaard Directe Lonen','A','6110','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6120','Standaard Toeslag Indirecte fabricagekosten','A','6120','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('6999','Overboekingsrekening Rubriek 6','A','6999','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7000','Voorraden gereed product','H','7000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7001','Voorraad A','A','7001','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7002','Voorraad B','A','7002','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7003','Voorraad C','A','7003','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7010','Voorraad Incourante goederen','A','7010','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7015','Afschrijving Incourante goederen','A','7015','L','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7200','Voorraad Goederen in bewerking','A','7200','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7300','Nog te Ontvangen Goederen / NOG','A','7300','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7350','Nog af te leveren goederen','A','7350','L','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7400','Prijsverschillen bij inkoop','A','7400','I','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('7999','Overboekingsrekening Rubriek 7','A','7999','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8000','Rekeningen tbv Verkoopresultaat','H','8000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8010','Inkoopkosten algemeen','A','8010','E','AP_amount:IC_cogs:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8020','Kostprijs Verkopen A','A','8020','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8030','Kostprijs Verkopen B','A','8030','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8040','Kostprijs Verkopen C','A','8040','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8100','Directe Verkoopkosten','A','8100','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8150','Toeslag Indirecte Verkoopkosten','E','8150','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8300','Kortingen bij Verkoop','A','8300','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8520','Opbrengst Verkopen A','A','8520','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8530','Opbrengst Verkopen B','A','8530','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8540','Opbrengst Verkopen C','A','8540','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('8999','Overboekingsrekening Rubriek 8','A','8999','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9000','Rekeningen tbv Resultatenrekening','H','9000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9010','Resultaat Indirecte Kosten','A','9010','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9011','Resultaat Fabricage','A','9011','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9012','Resultaat Verkoop','A','9012','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9015','Resultaat Prijsverschillen','A','9015','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9030','Rente bate deposito','A','9030','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9040','Rente bate lening u/g','A','9040','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9050','Rente bate bank','A','9050','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9080','Rente bate Fiscus','A','9080','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9100','Rente last hypothecaire lening','A','9100','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9110','Rente last lening bank','A','9110','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9130','Rente last lening o/g','A','9130','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9150','Rente last bank','A','9150','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9180','Rente last Fiscus','A','9180','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9190','Rente last overig','A','9190','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9200','Ontvangen Dividend (bruto)','A','9200','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9205','Ingehouden Dividendbelasting','A','9205','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9210','Koersresultaat Effecten)','A','9210','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9220','Valutaresultaat','A','9220','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9300','Huuropbrengsten','A','9300','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9400','Resultaat tgv inhaalafschrijvingen','A','9400','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9500','Incidentele Resultaten','A','9500','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9600','Giften en Donaties','A','9600','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9700','Tantiemes','A','9700','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9800','Belasting Lopend Jaar','A','9800','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9810','Belasting Voorgaande Jaren','A','9810','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9900','Vennootschapsbelasting','A','9900','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('9999','Overboekingsrekening','A','9999','I','');
---
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1800'),0.19);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1801'),0.06);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1810'),0.19);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1811'),0.06);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '7001'), income_accno_id = (select id from chart where accno = '8520'), expense_accno_id = (select id from chart where accno = '8010'), fxgain_accno_id = (select id from chart where accno = '9220'), fxloss_accno_id = (select id from chart where accno = '9220'), curr = 'EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Egypt-chart.sql b/sql-ledger/sql/Egypt-chart.sql
deleted file mode 100644
index f488f84..0000000
--- a/sql-ledger/sql/Egypt-chart.sql
+++ /dev/null
@@ -1,80 +0,0 @@
---
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2210','Workers Comp Payable','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2220','Vacation Pay Payable','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2250','Pension Plan Payable','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2260','Employment Insurance Payable','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5420','Employment Insurance Expense','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5430','Pension Plan Expense','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5440','Workers Comp Expense','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5470','Employee Benefits','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5650','Capital Cost Allowance Expense','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1060','نقدية بالبنك','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1065','نقديةبالصندوق','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1520','مخزون - قطع غيار كمبيوتر','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1530','مخزون - برامج','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1540','مخزون - قطع اخرى','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1840','سيارات','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1000','الاصول المتداولة','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1500','المخزون كاصل','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1800','الاصول الثابتة','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2000','التزامات قصيرة الاجل','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2600','التزامات طويلة الاجل','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1845','مخصص اهلاك سيارات','A','C','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1820','اثاث مكتبى و معدات','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1825','مخصص اهلاك اثاث مكتبى و معدات','A','C','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2310','ضريبة مبيعات (10%)','A','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2320','ضريبة مبيعات (14%)','A','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2330','ضريبة مبيعات (30%)','A','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1200','عملاء','A','A','AR','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1205','مخصص ديون معدومة','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2100','موردين','A','L','AP','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2160','ضريبة شركات مستحقة','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2190','ضريبة دخل مستحقة','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2620','قروض من البنوك','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2680','قروض من حملة الاسهم','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3300','حقوق الملكية','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4020','مبيعات - قطع غيار','A','I','AR_amount:IC_sale','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4030','مبيعات برامج','A','I','AR_amount:IC_sale','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4040','مبيعات اخرى','A','I','AR_amount:IC_sale','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4000','ايراد المبيعات','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4300','ايراد استشارات','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4320','استشارات','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4330','برمجة','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4400','ايرادات اخرى','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4430','شحن و تعبئة','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4440','Ùائدة','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4450','ارباح تغيير عملة','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5000','تكلÙØ© البضاعة المباعة','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5010','مشتريات','A','E','AP_amount:IC_cogs:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5020','تكلÙØ© البضاعة المباعة - قطع غيار','A','E','AP_amount:IC_cogs','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5030','تكلÙØ© البضاعة المباعة - برامج','A','E','AP_amount:IC_cogs','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5040','تكلÙØ© البضاعة المباعة - اخرى','A','E','AP_amount:IC_cogs','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5100','شحن','A','E','AP_amount:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5400','مصروÙات الاجور','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5410','المرتبات','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3350','الاسهم','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5600','مصروÙات ادارية Ùˆ عمومية','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5610','قانونية و محاسبية','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5615','دعاية و اعلان','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5765','اصلاح و صيانة','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5680','ضريبة دخل','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5685','تامين','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5620','ديون معدومة ','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5660','مصاري٠اهلاك','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5690','قوائد و مصاري٠بنكية','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5700','مهمات مكتبية','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5780','تلÙون','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5760','ايجار','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5785','مصاري٠سÙر','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5795','رسوم','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5800','رخص','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5810','خسارة تحويل عملة','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5790','مراÙÙ‚','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2280','ضرائب مرتبات مستحقة','A','L','','');
-
-UPDATE defaults SET inventory_accno_id = (SELECT id FROM chart WHERE accno = '1520'), income_accno_id = (SELECT id FROM chart WHERE accno = '4020'), expense_accno_id = (SELECT id FROM chart WHERE accno = '5010'), fxgain_accno_id = (SELECT id FROM chart WHERE accno = '4450'), fxloss_accno_id = (SELECT id FROM chart WHERE accno = '5810'), weightunit = 'kg', curr = 'USD:CAD:EUR';
-
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '2310'),'0.1',NULL);
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '2320'),'0.14',NULL);
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno = '2330'),'0.3',NULL);
-
diff --git a/sql-ledger/sql/France-chart.sql b/sql-ledger/sql/France-chart.sql
deleted file mode 100644
index 925baca..0000000
--- a/sql-ledger/sql/France-chart.sql
+++ /dev/null
@@ -1,951 +0,0 @@
--- Chart of Accounts for France
--- From: Oscar Buijten <oscar@elbie.com>
--- Mon, 6 Aug 2001
---
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101000', 'CAPITAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101100', 'CAPITAL SOUSCRIT NON APPELE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101200', 'CAPITAL SOUSCRIT APPELE NON VERSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101300', 'CAPITAL SOUSCRIT APPELE VERSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101310', 'CAPITAL NON AMORTI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101320', 'CAPITAL AMORTI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('101800', 'CAPITAL SOUSCR. A REGLEM. PART.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104000', 'PRIMES LIEES AU CAPITAL SOCIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104100', 'PRIMES D\'EMISSION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104200', 'PRIMES DE FUSION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104300', 'PRIMES D\'APPORT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104400', 'PRIMES CONVERS. OBLIGAT. ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('104500', 'BONS DE SOUSCRIPTION D\'ACTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105000', 'ECARTS DE REEVALUATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105100', 'RESERVE SPECIALE DE REEVALUATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105200', 'ECART DE REEVALUATION LIBRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105300', 'RESERVE DE REEVALUATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105500', 'ECARTS REEVAL. (AUT. OPER. LEG.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105700', 'AUT. ECARTS REEVAL. EN FRANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('105800', 'AUT. ECARTS REEVAL. A L\'ETRANGER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106000', 'RESERVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106100', 'RESERVE LEGALE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106110', 'RESERVE LEGALE PROPREMENT DITE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106120', 'PLUS-VALUES NETTES A LONG TERME', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106200', 'RESERVES INDISPONIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106300', 'RESERVES STATUT. OU CONTRACTUELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106400', 'RESERVES REGLEMENTEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106410', 'PLUS-VALUES NETTES A LONG TERME', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106430', 'RESER. CONSEC. OCTROI SUBV. INVEST', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106480', 'AUTRES RESERVES REGLEMENTEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106800', 'AUTRES RESERVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106810', 'RESERVE DE PROPRE ASSUREUR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('106880', 'RESERVES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('107000', 'ECART D\'EQUIVALENCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('109000', 'ACTIONN. CAPITAL SOUSC. NON APPELE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('110000', 'REPORT A NOUVEAU (SOLDE CREDITEUR)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('119000', 'REPORT A NOUVEAU (SOLDE DEBITEUR)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('120000', 'RESULTAT DE L\'EXERCICE (BENEFICE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('129000', 'RESULTAT DE L\'EXERCICE (PERTE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131000', 'SUBVENTIONS D\'EQUIPEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131100', 'ETAT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131200', 'REGIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131300', 'DEPARTEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131400', 'COMMUNES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131500', 'COLLECTIVITES PUBLIQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131600', 'ENTREPRISES PUBLIQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131700', 'ENTREPRISES ET ORGANISMES PRIVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('131800', 'AUTRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('138000', 'AUTRES SUBVENTIONS D\'INVESTIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139000', 'SUBV. INVES. INSC. AU CPTE RESULT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139100', 'SUBVENTIONS D\'EQUIPEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139110', 'ETAT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139120', 'REGIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139130', 'DEPARTEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139140', 'COMMUNES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139150', 'COLLECTIVITES PUBLIQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139160', 'ENTREPRISES PUBLIQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139170', 'ENTREPRISES ET ORGANISMES PRIVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139180', 'AUTRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('139800', 'AUTRES SUBVENTIONS D\'INVESTIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('142000', 'PROVIS. REGLEM. RELATIV. AUX IMMO.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('142300', 'PROVIS. POUR RECONSTITUTION GIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('142400', 'PROVIS. INVESTIS. (PARTIC. SALAR.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('143000', 'PROVIS. REGLEMENT. RELATIV. STOCKS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('143100', 'HAUSSE DES PRIX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('143200', 'FLUCTUATION DES COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('144000', 'PROVIS. REGLEM. RELAT. ELEM. ACTIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('145000', 'AMORTISSEMENTS DEROGATOIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('146000', 'PROVISION SPECIALE DE REEVALUATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('147000', 'PLUS-VALUES REINVESTIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('148000', 'AUTRES PROVISIONS REGLEMENTEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151000', 'PROVISIONS POUR RISQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151100', 'PROVISIONS POUR LITIGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151200', 'PROV. GARANT. DONNEES AUX CLIENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151300', 'PROV. PERTES SUR MARCHES A TERME.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151400', 'PROVIS. POUR AMENDES ET PENALITES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151500', 'PROVIS. POUR PERTES DE CHANGE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('151800', 'AUTRES PROVISIONS POUR RISQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('153000', 'PROVIS. PENSIONS ET OBLIG. SIMIL.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('155000', 'PROVISIONS POUR IMPOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('156000', 'PROVIS. RENOUV. IMMO (ETS CONCESS)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('157000', 'PROV. CHARG. A REPART. SUR EXERC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('157200', 'PROVIS. POUR GROSSES REPARATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('158000', 'AUTRES PROVISIONS POUR CHARGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('158200', 'PROVIS. CHARG. SOCIA. FISC. SUR CP', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('161000', 'EMPRUNTS OBLIGATOIRES CONVERTIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('163000', 'AUTRES EMPRUNTS OBLIGATAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('164000', 'EMPRUNTS AUPRES ETABLIS. DE CREDIT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('165000', 'DEPOTS ET CAUTIONNEMENTS RECUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('165100', 'DEPOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('165500', 'CAUTIONNEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('166000', 'PARTICIP. SALARIES AUX RESULTAS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('166100', 'COMPTES BLOQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('166200', 'FONDS DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('167000', 'EMPR. DETTES ASSORT. CONDIT. PART.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('167100', 'EMISSION DE TITRES PARTICIPATIFS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('167400', 'AVANCES CONDITIONNEES DE L\'ETAT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('167500', 'EMPRUNTS PARTICIPATIFS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168000', 'AUTRES EMPR. ET DETTES ASSIMILEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168100', 'AUTRES EMPRUNTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168500', 'RENTES VIAGERES CAPITALISEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168700', 'AUTRES DETTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168810', 'SUR EMPR. OBLIGATAIR. CONVERTIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168830', 'SUR AUTRES EMPRUNTS OBLIGATAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168840', 'SUR EMPRUNTS AUPRES ETABLI. CREDIT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168850', 'SUR DEPOTS ET CAUTIONNEMENTS RECUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168860', 'SUR PARTICIP. SALAR. RESULTATS ETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168870', 'SUR EMPR. DETTES ASSOR. COND. PART', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('168880', 'SUR AUTRES EMPR. DETTES ASSIMILEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('169000', 'PRIMES REMBOURSEMENT OBLIGATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('171000', 'DETTES RATTACH. A PARTIC. (GROUPE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('174000', 'DETTES RATT. A PART. (HORS GROUPE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('178000', 'DETTES RATTACH. A STES EN PARTIC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('178100', 'PRINCIPAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('178800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('181000', 'COMPTE DE LIAISON ETABLISSEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('186000', 'BIENS PREST. SERV. ECH. (CHARGES)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('187000', 'BIENS PREST. SERV. ECH. (PRODUITS)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('188000', 'COMPTES DE LIAISON STES EN PARTIC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201100', 'FRAIS DE CONSTITUTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201200', 'FRAIS DE PREMIER ETABLISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201210', 'FRAIS DE PROSPECTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201220', 'FRAIS DE PUBLICITE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201300', 'FRAIS AUGMEN. CAPIT. OPER. DIVERS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('203000', 'FRAIS RECHERCHE ET DEVELOPPEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('205000', 'CONCESSIONS ET DROITS SIMILAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('206000', 'DROIT AU BAIL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('207000', 'FONDS COMMERCIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('208000', 'AUTRES IMMOBILISATIONS INCORPOR.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211000', 'TERRAINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211100', 'TERRAINS NUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211200', 'TERRAINS AMENAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211300', 'SOUS-SOLS ET SUR-SOLS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211400', 'TERRAINS DE GISEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211410', 'CARRIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211500', 'TERRAINS BATIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211510', 'ENSEMBLES IMMOBILIERS INDUSTRIELS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211550', 'ENSEMBLES IMMOB. ADM. ET COMMERC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211580', 'AUTRES ENSEMBLES IMMOBILIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211581', 'AFFECTES AUX OPERAT. PROFESSION.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211588', 'AFFECTES AUX OPERAT. NON PROF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('211600', 'COMPTE D\'ORDRE SUR IMMOBILISATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('212000', 'AGENCEMENTS AMENAGEMENTS TERRAINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213000', 'CONSTRUCTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213100', 'BATIMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213110', 'ENSEMBLES IMMOB. INDUSTRIELS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213150', 'ENSEMBLES IMMOB. ADM. ET COMMERC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213180', 'AUTRES ENSEMBLES IMMOBILIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213181', 'AFFECTES AUX OPERAT. PROFESSION.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213188', 'AFFECTES AUX OPERAT. NON PROF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213500', 'INSTALLATIONS GENERALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213800', 'OUVRAGES D\'INFRASTRUCTURE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213810', 'VOIES DE TERRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213820', 'VOIES DE FER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213830', 'VOIES D\'EAU', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213840', 'BARRAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('213850', 'PISTES D\'AERODROMES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('214000', 'CONSTRUCTIONS SUR SOL D\'AUTRUI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215000', 'INSTALL. TECH. MAT. OUTIL. INDUS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215100', 'INSTALL. COMPLEXES SPECIALISEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215110', 'SUR SOL PROPRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215140', 'SUR SOL D\'AUTRUI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215300', 'INSTALL. A CARACTERE SPECIFIQUE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215310', 'SUR SOL PROPRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215340', 'SUR SOL D\'AUTRUI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215400', 'MATERIEL INDUSTRIEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215500', 'OUTILLAGE INDUSTRIEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('215700', 'AGENCEM. AMENAG. MAT. OUTIL. INDUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218000', 'AUTRES IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218100', 'INSTALL. GENE. AGENC. AMENAG. DIV.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218200', 'MATERIEL DE TRANSPORT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218300', 'MATERIEL DE BUREAU ET INFORMATIQUE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218400', 'MOBILIER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218500', 'CHEPTEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('218600', 'EMBALLAGES RECUPERABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('231000', 'IMMOBILISAT. CORPORELLES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('231200', 'TERRAINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('231300', 'CONSTRUCTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('231500', 'INSTALL. TECH. MAT. OUTIL. INDUST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('231800', 'AUTRES IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('232000', 'IMMO. INCORPORELLES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('237000', 'AVANC. ACOMPT. VERSES SUR IMM. INC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('238000', 'AVANC. ACOMP. VERSES CDES IMM. COR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('238200', 'TERRAINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('238300', 'CONSTRUCTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('238500', 'INSTALL. TECH. MAT. OUTIL. INDUST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('238800', 'AUTRES IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('261000', 'TITRES DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('261100', 'ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('261800', 'AUTRES TITRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('266000', 'AUTRES FORMES DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267000', 'CREANCES RATTACHEES A PARTICIPAT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267100', 'CREANCES RATT. A PART. (GROUPE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267400', 'CREANC. RATT. PART. (HORS GROUPE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267500', 'VERSEM. D\'APPORTS NON CAPITALISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267600', 'AVANCES CONSOLIDABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267700', 'AUTRES CREANCES RATT. A PART.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('267800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('268000', 'CREANCES RATT. A STE EN PART.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('268100', 'PRINCIPAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('268800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('269000', 'VERS. REST. A EFFECT. SUR T.P.N.L.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('271000', 'TITRES IMMOBILISES (DROIT PROP.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('271100', 'ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('271800', 'AUTRES TITRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('272000', 'TITRES IMMOBILISES (DROIT CREANCE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('272100', 'OBLIGATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('272200', 'BONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('273000', 'TITRES IMMOBILISES DE L\'ACT. DE PORTEF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('274000', 'PRETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('274100', 'PRETS PARTICIPATIFS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('274200', 'PRETS AUX ASSOCIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('274300', 'PRETS AU PERSONNEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('274800', 'AUTRES PRETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('275000', 'DEPOTS ET CAUTIONNEMENTS VERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('275100', 'DEPOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('275500', 'CAUTIONNEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276000', 'AUTRES CREANCES IMMOBILISEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276100', 'CREANCES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276820', 'SUR TITRES IMMOB. (DROIT CREANCE)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276840', 'SUR PRETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276850', 'SUR DEPOTS ET CAUTIONNEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('276880', 'SUR CREANCES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('277100', 'ACTIONS PROPRES OU PARTS PROPRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('277200', 'ACT. PRO. OU PARTS PRO. VOIE D\'ANNUL.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('279000', 'VERSEM. A EFFECT. SUR T.I.N.L.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280000', 'AMORTISS. IMMOBILISATIONS INCORP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280100', 'FRAIS D\'ETABLISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280300', 'FRAIS DE RECHERCHE ET DEVELOPP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280500', 'CONCESSIONS ET DROITS SIMILAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280700', 'FONDS COMMERCIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('280800', 'AUTRES IMMOBILISATIONS INCORPOR.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281000', 'AMORTISS. IMMOBILISATIONS CORPOR.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281100', 'TERRAINS DE GISEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281200', 'AGENCEMENTS AMENAGEMENTS TERRAINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281300', 'CONSTRUCTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281400', 'CONSTRUCTIONS SUR SOL D\'AUTRUI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281500', 'INSTALL TECH. MAT. OUTIL. INDUST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('281800', 'AUTRES IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('282000', 'AMORTISS. IMMOBIL. EN CONCESSION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('290000', 'PROVIS. DEPRECIATION IMMOB. INCORP', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('290500', 'MARQUES PROCEDES DROITS ET VALEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('290600', 'DROIT AU BAIL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('290700', 'FONDS COMMERCIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('290800', 'AUTRES IMMOB. INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('291000', 'PROVIS. DEPRECIATION IMMOB. CORPOR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('291100', 'TERRAINS (AUTRES QUE GISEMENT)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('292000', 'PROVIS. DEPRECIAT. IMMOB. CONCESS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('293000', 'PROVIS. DEPRECIAT. IMMOB. EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('293100', 'IMMOBILISATIONS CORPOR. EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('293200', 'IMMO. INCORPORELLES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('296000', 'PROV. DEPREC. PART ET CREANC. PART', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('296100', 'TITRES DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('296600', 'AUTRES FORMES DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('296700', 'CREANCES RATT. A PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('296800', 'CREANCES RATT. A STE EN PARTICIP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297000', 'PROVIS. DEPRECIATION AUTRES IMMOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297100', 'TITRES IMMOBILISES DROIT PROPRIETE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297200', 'TITRES IMMOBILISES DROIT CREANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297300', 'TITRES IMMO. DE L\'ACT. DE PORTEF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297400', 'PRETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297500', 'DEPOTS ET CAUTIONNEMENTS VERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('297600', 'AUTRES CREANCES IMMOBILISEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('311000', 'MATIERE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('312000', 'MATIERE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('317000', 'FOURNITURES A, B, C...', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('321000', 'MATIERES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('321100', 'MATIERE (OU GROUPE) C', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('321200', 'MATIERE (OU GROUPE) D', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322000', 'FOURNITURES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322100', 'COMBUSTIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322200', 'PRODUITS D\'ENTRETIEN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322300', 'FOURNITURES D\'ATELIER ET D\'USINE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322400', 'FOURNITURES DE MAGASIN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('322500', 'FOURNITURES DE BUREAU', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('326000', 'EMBALLAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('326100', 'EMBALLAGES PERDUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('326500', 'EMBAL. RECUPER. NON IDENTIFIABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('326700', 'EMBALLAGES A USAGE MIXTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('331000', 'PRODUITS EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('331100', 'PRODUITS EN COURS P1', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('331200', 'PRODUITS EN COURS P2', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('335000', 'TRAVAUX EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('335100', 'TRAVAUX EN COURS T1', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('335200', 'TRAVAUX EN COURS T2', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('341000', 'ETUDES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('341100', 'ETUDE EN COURS E1', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('341200', 'ETUDE EN COURS E2', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('345000', 'PRESTATIONS DE SERVICES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('345100', 'PRESTATION DE SERVICES S1', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('345200', 'PRESTATION DE SERVICES S2', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('351000', 'PRODUITS INTERMEDIAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('351100', 'PRODUIT INTERMEDIAIRE (OU GRPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('351200', 'PRODUIT INTERMEDIAIRE (OU GRPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('355000', 'PRODUITS FINIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('355100', 'PRODUIT FINI (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('355200', 'PRODUIT FINI (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('358000', 'PROD. RESIDUELS (OU MAT. RECUP.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('358100', 'DECHETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('358500', 'REBUTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('358600', 'MATIERES DE RECUPERATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('371000', 'MARCHANDISE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('372000', 'MARCHANDISE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('391000', 'PROVIS. POUR DEPRECIAT. MAT. PREM.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('391100', 'MATIERE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('391200', 'MATIERE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('391700', 'FOURNITURE A, B, C...', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('392000', 'PROVIS. POUR DEPRECIAT. AUT. APPRO', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('392100', 'MATIERES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('392200', 'FOURNITURES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('392600', 'EMBALLAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('393000', 'PROV. DEPREC. EN-COURS PROD. BIENS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('393100', 'PRODUITS EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('393500', 'TRAVAUX EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('394000', 'PROV. DEPREC. EN-COURS PROD. SERV.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('394100', 'ETUDES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('394500', 'PRESTATIONS DE SERVICES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('395000', 'PROV. POUR DEPREC. STOCKS DE PROD.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('395100', 'PRODUITS INTERMEDIAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('395500', 'PRODUITS FINIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('397000', 'PROV. POUR DEPREC. STOCKS MARCHAN.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('397100', 'MARCHANDISE OU GROUPE A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('397200', 'MARCHANDISE OU GROUPE B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('401000', 'FOURNISSEURS DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('403000', 'FOURNISSEURS - EFFETS A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('404000', 'FOURNISSEURS D\'IMMOBILISATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('404100', 'FOURNISSEURS ACHATS D\'IMMOBILISAT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('404700', 'FOURNIS. D\'IMMOB. RETENUES DE GAR.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('405000', 'FOURNIS. D\'IMMOB. EFFETS A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('408000', 'FOURNIS. FACTURES NON PARVENUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('408100', 'FOURNISSEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('408400', 'FOURNISSEURS D\'IMMOBILISATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('408800', 'FOURNISSEURS INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409000', 'FOURNISSEURS DEBITEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409100', 'FOURNIS. AVANC. & ACOMPT. SUR CDES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409600', 'FOURN. CREAN. EMB. & MAT. A RENDRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409700', 'FOURNISSEURS AUTRES AVOIRS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409710', 'FOURNISSEURS D\'EXPLOITATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409740', 'FOURNISSEURS D\'IMMOBILISATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('409800', 'RABAIS REMISES RISTOUR. A OBTENIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('410000', 'CLIENTS ET COMPTES RATTACHES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('411000', 'CLIENTS DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('413000', 'CLIENTS EFFETS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('416000', 'CLIENTS DOUTEUX OU LITIGIEUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('417000', 'CREANC. SUR TRAV. NON ENCORE FACT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('418000', 'CLIENTS PRODUITS NON ENCORE FACT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('418100', 'CLIENTS FACTURES A ETABLIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('418800', 'CLIENTS INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('419000', 'CLIENTS CREDITEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('419100', 'CLTS AVANC. & ACOMP. RECUS SUR CDE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('419600', 'CLTS DETT. POUR EMB. & MAT. CONSIG', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('419700', 'CLIENTS - AUTRES AVOIRS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('419800', 'RABAIS REMISES RIST. A ACCORDER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('421000', 'PERSONNEL REMUNERATIONS DUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('422000', 'COMITES D\'ENTREPRISE, D\'ETABLIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('424000', 'PARTICIP. DES SALAR. AUX RESULTATS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('424600', 'RESERVE SPECIALE (ART L442.2)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('424800', 'COMPTES COURANTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('425000', 'PERSONNEL AVANCES ET ACOMPTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('426000', 'PERSONNEL DEPOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('427000', 'PERSONNEL OPPOSITIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('428000', 'PERS. CHARG. A PAY. & PROD. A REC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('428200', 'DETTES PROVISIO. POUR CONGES PAYES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('428400', 'DETT. PROV. PART. SAL. AUX RESULT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('428600', 'AUTRES CHARGES A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('428700', 'PRODUITS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('438000', 'ORG. SOC. CHARG. A PAY. & PROD.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('438200', 'CHARGES SOCIALES SUR CONGES PAYES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('438700', 'PRODUITS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('441000', 'ETATS SUBVENTIONS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('441100', 'SUBVENTIONS D\'INVESTISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('441700', 'SUBVENTIONS D\'EXPLOITATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('441800', 'SUBVENTIONS D\'EQUILIBRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('441900', 'AVANCES SUR SUBVENTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('442000', 'ETAT IMP. & TAX. RECOUV. SUR TIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('442400', 'OBLIGATAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('442500', 'ASSOCIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('443000', 'OPERATIONS PART. AVEC L\'ETAT,...', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('443100', 'CREANCES ETAT SUPPR. DECAL. TVA', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('443800', 'INTERES COURUS CREANCES CPTE 443100', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('444000', 'ETAT IMPOTS SUR LES BENEFICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('444500', 'ETAT TAXES SUR LE CHIFFRE D\'AFF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445200', 'TVA DUE INTRACOMMUNAUTAIRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445510', 'TVA A DECAISSER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445580', 'TAXES ASSIMILEES A TVA', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445600', 'TAXES SUR LE CA DEDUCTIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445621', 'TVA SUR IMMO. 5.5%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445622', 'TVA SUR IMMO. 20.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445623', 'TVA SUR IMMO. 19.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445630', 'TVA TRANSFEREE PAR D\'AUTRES ETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445662', 'TVA DEDUCTIBLE 20.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445670', 'CREDIT DE TVA A REPORTER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445680', 'TAXES ASSIMILEES A LA TVA', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445700', 'TAXE SUR LE C.A. COLLECT. ENTREPR.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445712', 'TVA COLLECTEE 20.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445800', 'TAXES SUR CA A REGULAR. OU EN ATT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445810', 'ACOMPTES REGIME SIMPLIFIE D\'IMPOS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445820', 'ACOMPTES REGIME DU FORFAIT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445830', 'REMBOURS. TAXES SUR CA DEMANDE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445840', 'TVA RECUPEREE D\'AVANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445861', 'TVA EN ATTENTE DEDUCTIBLE 5.5%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445862', 'TVA EN ATTENTE DEDUCTIBLE 20.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445863', 'TVA EN ATTENTE DEDUCTIBLE 19.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445871', 'TVA EN ATTENTE COLLECTEE 5.5%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445872', 'TVA EN ATTENTE COLLECTEE 20.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445873', 'TVA EN ATTENTE COLLECTEE 19.6%', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('446000', 'TITRES SUR TVA', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('446100', 'OBLIGATIONS CAUTIONNEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('446900', 'CREANCE TVA DECALAGE D\'UN MOIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('447000', 'AUTRES IMPOTS, TAX. ET VERS. ASSIM', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('448000', 'ETAT CHARG. A PAY. & PROD. A RECEV', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('448200', 'CHARGES FISCALES SUR CONG. A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('448600', 'AUTRES CHARGES A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('448700', 'PRODUITS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('451000', 'GROUPE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('455000', 'ASSOCIES COMPTES COURANTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('455100', 'PRINCIPAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('455780', 'TAXES ASSIMILEES A LA TVA', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('455800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456000', 'ASSOCIES OPERATIONS SUR LE CAPITAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456100', 'ASSOCIES COMPTES D\'APPORT EN STE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456110', 'APPORTS EN NATURE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456150', 'APPORTS EN NUMERAIRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456200', 'APPORTEURS CAPIT. APPELE NON VERSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456210', 'ACTION. CAP. SOUSC. APP. NON VERSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456250', 'ASSOCIES CAPITAL APPELE NON VERSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456300', 'ASSOC. VERS. RECUS SUR AUGM. CAPIT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456400', 'ASSOCIES VERSEMENTS ANTICIPES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456600', 'ACTIONNAIRES DEFAILLANTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('456700', 'ASSOCIES CAPITAL A REMBOURSER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('457000', 'ASSOCIES DIVIDENDES A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('458000', 'ASSOC. OPERAT. EN COMMUN ET EN GIE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('458100', 'OPERATIONS COURANTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('458800', 'INTERETS COURUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('462000', 'CREANCES SUR CESSIONS D\'IMMOBILIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('464000', 'DETTES SUR ACQUIS. VALEURS MOBI.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('465000', 'CREANC. SUR CESSIONS VALEURS MOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('467000', 'AUTRES COMPTES DEBIT. OU CREDIT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('467200', 'DEBOURS PAYES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('468000', 'DIVERS CHARG. A PAY. & PROD. A REC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('468600', 'CHARGES A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('468700', 'PRODUITS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('471000', 'COMPTES D\'ATTENTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('471100', 'REIMPUTATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('476000', 'DIFFERENCES DE CONVERSION ACTIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('476100', 'DIMINUTION DES CREANCES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('476200', 'AUGMENTATION DES DETTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('476800', 'DIFFER. COMPENS. PAR COUV. CHANGE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('477000', 'DIFFERENCES DE CONVERSION PASSIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('477100', 'AUGMENTATION DES CREANCES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('477200', 'DIMINUTION DES DETTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('477800', 'DIFFER. COMPENS. PAR COUV. CHANGE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('478000', 'AUTRES COMPTES TRANSITOIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('481000', 'CHARG. A REPART. SUR PLUS. EXERC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('481100', 'CHARGES DIFFEREES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('481200', 'FRAIS D\'ACQUISITION DES IMMOBILIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('481600', 'FRAIS D\'EMISSION DES EMPRUNTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('481800', 'CHARGES A ETALER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('486000', 'CHARGES CONSTATEES D\'AVANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('487000', 'PRODUITS CONSTATES D\'AVANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('488000', 'CPTES REPART. PERIO. CHARG. & PROD', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('488600', 'CHARGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('488700', 'PRODUITS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('491000', 'PROVIS. POUR DEPREC. CPTES CLIENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('495000', 'PROV. POUR DEPREC. CPTES GRPE ASS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('495100', 'COMPTES DU GROUPE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('495500', 'COMPTES COURANTS DES ASSOCIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('495800', 'OPERAT. FAITES EN COMMUN & EN GIE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('496000', 'PROVIS. POUR DEPREC. CPTES DEBIT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('496200', 'CREANCES SUR CESSIONS D\'IMMOBILIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('496500', 'CREANC. SUR CESSIONS VALEURS MOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('496700', 'AUTRES COMPTES DEBITEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('501000', 'PARTS DANS DES ENTREPRISES LIEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('502000', 'ACTIONS PROPRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('503000', 'ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('503100', 'TITRES COTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('503500', 'TITRES NON COTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('504000', 'AUTRES TITRES CONFERANT DROIT PROP', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('505000', 'OBLIG. & BONS EMIS PAR LA SOCIETE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('506000', 'OBLIGATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('506100', 'TITRES COTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('506500', 'TITRES NON COTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('507000', 'BONS TRESOR & BONS CAISSE A CT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('508000', 'AUTRES VALEURS MOB. ET CREANC. ASS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('508100', 'AUTRES VALEURS MOBILIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('508200', 'BONS DE SOUSCRIPTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('508800', 'INTER. COURUS SUR OBLIGATIONS BONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('509000', 'VERS. A EFFECT. SUR VALEURS MOBIL.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('511000', 'VALEURS A L\'ENCAISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('511100', 'COUPONS ECHUS A L\'ENCAISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('511200', 'CHEQUES A ENCAISSER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('511300', 'EFFETS A L\'ENCAISSEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('511400', 'EFFETS A L\'ESCOMPTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512100', 'COMPTES EN MONNAIE NATIONALE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512400', 'COMPTES EN DEVISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('514000', 'CHEQUES POSTAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('515000', 'CAISSES DU TRESOR ET ETS PUBLICS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('516000', 'SOCIETE DE BOURSE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('517000', 'AUTRES ORGANISMES FINANCIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('518000', 'INTERETS EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('518600', 'INTERETS COURUS A PAYER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('518700', 'INTERETS COURUS A RECEVOIR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('519000', 'CONCOURS BANCAIRES COURANTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('519100', 'CREDIT MOBIL. CREANC. CCIALES CMCC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('519300', 'MOBIL. CREANCES NEES A L\'ETRANGER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('519800', 'INT. COURUS SUR CONCOURS BANCAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('520000', 'INSTRUMENTS DE TRESORERIE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('531000', 'CAISSE SIEGE SOCIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('531100', 'CAISSE EN MONNAIE NATIONALE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('531400', 'CAISSE EN DEVISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('532000', 'CAISSE SUCCURSALE (OU USINE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('533000', 'CAISSE SUCCURSALE (OU USINE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('580100', 'VIREMENT DE TRESORERIE A TRESORERIE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('590000', 'PROVIS. POUR DEPREC. VALEURS MOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('590300', 'ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('590400', 'AUTRES TIT. CONFERANT DROIT PROP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('590600', 'OBLIGATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('590800', 'AUTRES VALEURS MOB. & CREANC. ASS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('601100', 'MATIERE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('601200', 'MATIERE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('601700', 'FOURNITURES A, B, C...', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602000', 'ACHATS STOCKES AUTRES APPROV.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602100', 'MATIERES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602110', 'MATIERE (OU GROUPE) C', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602120', 'MATIERE (OU GROUPE) D', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602200', 'FOURNITURES CONSOMMABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602210', 'COMBUSTIBLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602220', 'PRODUITS D\'ENTRETIEN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602230', 'FOURNITURES D\'ATELIER / USINES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602240', 'FOURNITURES DE MAGASINS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602250', 'FOURNITURES DE BUREAU', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602600', 'EMBALLAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602610', 'EMBALLAGES PERDUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602650', 'EMBALL. RECUPERA. NON IDENTIF.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('602670', 'EMBALLAGES A USAGE MIXTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('603000', 'VARIATION DES STOCKS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('603100', 'VARIAT. STOCKS MAT. PREM. ET FOURN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('603200', 'VARIAT. STOCKS AUTRES APPROVISION.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('603700', 'VARIATION STOCKS DE MARCHANDISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('604000', 'ACHATS ETUDES ET PRESTAT. SERVICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('605000', 'ACHATS MATERIEL EQUIPEM. TRAVAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606000', 'ACHATS NON STOCKES DE MAT. PREM.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606400', 'FOURNITURES ADMINISTRATIVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606500', 'ACHATS SPECIAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606800', 'AUTRES MATIERES ET FOURNITURES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('607100', 'MARCHANDISE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('607200', 'MARCHANDISE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('608000', 'FRAIS ACCESSOIRES D\'ACHAT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609000', 'RABAIS REMISES RIST. SUR ACHATS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609100', 'DE MATIERES PREMIERES (ET FOURN.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609200', 'D\'AUTRES APPROVISIONN. STOCKES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609500', 'DE MATERIEL EQUIPEMENTS DE TRAVAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609600', 'D\'APPROVISIONNEMENTS NON STOCKES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609700', 'DE MARCHANDISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609800', 'RABAIS REMISES RIST. NON AFFECTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('612000', 'REDEVANCES DE CREDIT-BAIL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('612200', 'CREDIT-BAIL MOBILIER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('612500', 'CREDIT-BAIL IMMOBILIER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('613000', 'LOCATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('613600', 'MALIS SUR EMBALLAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('614000', 'CHARGES LOCATIVES & DE COPROPRIETE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('615200', 'SUR BIENS IMMOBILIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('615500', 'SUR BIENS MOBILIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('615600', 'MAINTENANCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616100', 'MULTIRISQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616200', 'ASSUR. OBLIGAT. DOMMAGE-CONSTRUCT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616300', 'ASSURANCE-TRANSPORT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616360', 'SUR ACHATS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616370', 'SUR VENTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616380', 'SUR AUTRES BIENS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616400', 'RISQUES D\'EXPLOITATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616500', 'INSOLVABILITE CLIENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('618000', 'DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('618100', 'DOCUMENTATION GENERALE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('618500', 'FRAIS DE COLLOQUES, SEMIN., CONFER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('619000', 'RABAIS REMISES RIST. SUR SERV. EXT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('621000', 'PERSONNEL EXTERIEUR A L\'ENTREPRISE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('621400', 'PERSONNEL DETACHE OU PRETE A L\'ETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622000', 'REMUNERAT. D\'INTERM. ET HONORAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622100', 'COMMISSIONS & COURTAGES SUR ACHATS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622200', 'COMMISSIONS & COURTAGES SUR VENTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622400', 'REMUNERATIONS DES TRANSITAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622500', 'REMUNERATIONS D\'AFFACTURAGE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622800', 'DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623000', 'PUBLICITE PUBLICAT. RELAT. PUBLIQ.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623100', 'ANNONCES ET INSERTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623200', 'ECHANTILLONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623300', 'FOIRES ET EXPOSITIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623500', 'PRIMES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623600', 'CATALOGUES ET IMPRIMES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623700', 'PUBLICATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623800', 'DIVERS (POURBOIRES, DONS COURANTS)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624000', 'TRANSP. BIENS & TRANSP. COLL. PERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624100', 'TRANSPORTS SUR ACHATS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624200', 'TRANSPORTS SUR VENTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624300', 'TRANSPORTS ENTRE ETS OU CHANTIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624400', 'TRANSPORTS ADMINISTRATIFS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624700', 'TRANSPORTS COLLECTIFS DU PERSONNEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('624800', 'DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625000', 'DEPLACEM. MISSIONS ET RECEPTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625500', 'FRAIS DE DEMENAGEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625700', 'RECEPTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627000', 'SERVICES BANCAIRES ET ASSIMILES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627100', 'FRAIS SUR TITRES (ACHAT, VENTE,.).', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627200', 'COMMISSIONS & FRAIS SUR EMPRUNTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627500', 'FRAIS SUR EFFETS (COMM. D\'ENDOS,.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627600', 'LOCATION DE COFFRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('627800', 'AUTRES FRAIS & COMM. PREST. SERV.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('628000', 'DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('628400', 'FRAIS DE RECRUTEMENT DU PERSONNEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('629000', 'RABAIS REMISES RIST. SUR SERV. EXT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631000', 'IMPOTS TAXES & VERS. SUR REMUNER.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631100', 'TAXE SUR LES SALAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631200', 'TAXE D\'APPRENTISSAGE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631300', 'PART. EMPLOY. A FORM. PROF. CONT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631400', 'COTIS. DEFAUT INVEST. DANS CONST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('631800', 'AUTRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633000', 'IMPOTS TAXES & VERS. SUR REMUNER.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633100', 'VERSEMENT SUR LE TRANSPORT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633200', 'ALLOCATION LOGEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633300', 'PART. EMPLOY. A FORM. PROF. CONT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633400', 'PART. EMPLOY. A EFFORT CONSTRUCT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633500', 'VERS. LIBERAT. A EXONER. TAXE APP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635000', 'AUTRES IMPOTS TAXES & VERS. ASS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635100', 'IMPOTS DIRECTS (SAUF IMPOT BENEF.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635120', 'TAXES FONCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635130', 'AUTRES IMPOTS LOCAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635140', 'TAXE SUR LES VEHICULES SOCIETES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635200', 'TAXES SUR CA NON RECUPERABLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635300', 'IMPOTS INDIRECTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635400', 'DROITS D\'ENREGISTREMENT ET TIMBRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635410', 'DROIT DE MUTATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635800', 'AUTRES DROITS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('637000', 'AUTRES IMPOTS TAXES ET VERS. ASS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('637100', 'CONTRIB. SOC. SOLID. A CHARGE STES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('637200', 'TAXES PERCUES PAR ORG. PUBLICS INT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('637400', 'IMPOTS & TAXES EXIGIB. A L\'ETRANG.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('637800', 'TAXES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641100', 'SALAIRES APPOINT. COMMIS. DE BASE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641200', 'CONGES PAYES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641300', 'PRIMES ET GRATIFICATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641400', 'SALAIRES, APPOINTEMENTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641500', 'SUPPLEMENT FAMILIAL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('644000', 'REMUNERATION TRAVAIL DE L\'EXPLOIT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647000', 'AUTRES CHARGES SOCIALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647100', 'PRESTATIONS DIRECTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647200', 'VERS. AUX COMITES D\'ETS & D\'ETAB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647300', 'VERS. AUX COMITES HYGIENE ET SECUR', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647400', 'VERSEMENTS AUX OEUVRES SOCIALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('647500', 'MEDECINE DU TRAVAIL, PHARMACIE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('648000', 'AUTRES CHARGES DE PERSONNEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('651000', 'REDEVANC. CONCESS. BREV. LICENC,..', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('651100', 'REDEV. CONCESS. BREV, LIC, MARQ,..', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('651600', 'DROITS D\'AUTEUR ET DE REPRODUCT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('651800', 'AUTRES DROITS & VALEURS SIMILAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('653000', 'JETONS DE PRESENCE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('654000', 'PERTES SUR CREANCES IRRECOUVRAB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('654100', 'CREANCES DE L\'EXERCICE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('654400', 'CREANCES DES EXERCICES ANTERIEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('655000', 'QUOTE-PARTS RESULT. OPER. EN COMM.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('655100', 'Q-P BENEF. TRANSF. (CPTA GERANT)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('655500', 'QUOTE-PART PERTE SUPP. (CPTA ASS)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('658000', 'CHARGES DIVERSES GESTION COURANTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661000', 'CHARGES D\'INTERETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661100', 'INTERETS DES EMPRUNTS ET DETTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661160', 'DES EMPRUNTS ET DETTES ASSIMILEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661170', 'DES DETTES RATT. A PARTICIPATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661500', 'INTERETS CPTES COUR. & DEP. CREDIT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661600', 'INTERETS BANC. & SUR OPER. FINANC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661700', 'INTERETS OBLIGATIONS CAUTIONNEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661800', 'INTERETS DES AUTRES DETTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661810', 'DES DETTES COMMERCIALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('661880', 'DES DETTES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('664000', 'PERTES CREANCES LIEES A PARTICIP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('665000', 'ESCOMPTES ACCORDES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('667000', 'CHARG. NETTES SUR CESS. VAL. MOBIL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('668000', 'AUTRES CHARGES FINANCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('668800', 'ECART DE CONVERSION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671000', 'CHARG. EXCEPT. SUR OPERAT. GESTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671100', 'PENALITES SUR MARCHES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671200', 'PENALITES AMENDES FISC. & PENALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671300', 'DONS, LIBERALITES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671400', 'CREANC. DEVEN. IRRECOUV. SUR BENEF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671500', 'SUBVENTIONS ACCORDEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671700', 'RAPPEL D\'IMPOTS (AUTRE QUE BENEF)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('671800', 'AUT. CHARG. EXCEP. SUR OPER. GEST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('672000', 'CHARGES SUR EXERCICES ANTERIEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('675000', 'VAL. COMPT. DES ELEM. ACTIF CEDES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('675100', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('675200', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('675600', 'IMMOBILISATIONS FINANCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('675800', 'AUTRES ELEMENTS D\'ACTIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('678000', 'AUTRES CHARGES EXCEPTIONNELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('678100', 'MALIS PROVENANT DE CLAUSES INDEXAT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('678200', 'LOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('678300', 'MALIS DU RACHAT PAR ETS D\'ACTIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('678800', 'CHARGES EXCEPTIONNELLES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681100', 'DOTAT. AUX AMORT. DES IMMOB. CORPO', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681110', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681120', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681200', 'DOTAT. AUX AMORT. CHARG. EXPLOIT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681500', 'DOTAT. AUX PROV. RISQ. & CHARG. EX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681600', 'DOTAT. AUX PROV. DEPREC. IMMOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681610', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681620', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681700', 'DOTAT. AUX PROV. DEPREC. ACTIFS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681740', 'CREANCES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686000', 'DOTAT. AUX AMORT. ET AUX PROVIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686100', 'DOT. AUX AMORT. PRIME REMB. OBLIG.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686500', 'DOT. AUX PROV. RISQ. & CHARG. FIN.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686600', 'DOT. AUX PROV. DEPREC. ELEM. FINAN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686620', 'IMMOBILISATIONS FINANCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686650', 'VALEURS MOBILIERES DE PLACEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('686800', 'AUTRES DOTATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687000', 'DOTAT. AUX AMORT. ET PROVISIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687100', 'DOTAT. AUX AMORT. EXCEPT. IMMOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687200', 'DOTAT. AUX PROV. REGLEM. (IMMOB)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687250', 'AMORTISSEMENTS DEROGATOIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687300', 'DOTAT. AUX PROV. REGLEM. (STOCKS)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687400', 'DOTAT. AUX AUTRES PROV. REGLEMENT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687500', 'DOTAT. PROV. RISQ. & CHARG. EXCEP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('691000', 'PARTICIPATIONS DES SALARIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('695200', 'CONTRIB. ADDITIO. IMPOT BENEFICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('695400', 'IMPOTS DUS A L\'ETRANGER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('696000', 'SUPPLEMENT D\'IMPOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('697000', 'IMPOSITION FORF. ANUELLE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('698000', 'INTEGRATION FISCALE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('698100', 'INTEGRATION FISCALE - CHARGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('698900', 'INTEGRATION FISCALE - PRODUITS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('699000', 'PRODUITS REP. EN ARR. DES DEFICITS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('701000', 'VENTES DE PRODUITS FINIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('701100', 'PRODUIT FINI (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('701200', 'PRODUIT FINI (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('702000', 'VENTES DE PRODUITS INTERMEDIAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('703000', 'VENTES DE PRODUITS RESIDUELS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('704000', 'TRAVAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('704100', 'TRAVAUX DE CATEG. (OU ACTIV.) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('704200', 'TRAVAUX DE CATEG. (OU ACTIV.) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('705000', 'ETUDES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('707100', 'MARCHANDISE (OU GROUPE) A', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('707200', 'MARCHANDISE (OU GROUPE) B', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708000', 'PRODUITS DES ACTIVITES ANNEXES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708100', 'PROD. SERV. EXPLOIT. INTER. PERSON', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708200', 'COMMISSIONS ET COURTAGES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708300', 'LOCATIONS DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708400', 'MISE A DISPOS. PERSONNEL FACTUREE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708500', 'PORTS ET FRAIS ACCESSOIRES FACT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708600', 'BONIS SUR REPRISES EMBALL. CONSIG.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708700', 'BONIFICAT. CLTS & PRIMES VENTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('708800', 'AUTRES PRODUITS ACTIVITES ANNEXES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709000', 'RABAIS REMISES RIST. ACCORD. A ETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709100', 'SUR VENTES DE PRODUITS FINIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709200', 'SUR VENTES PRODUITS INTERMEDIAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709400', 'SUR TRAVAUX', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709500', 'SUR ETUDES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709600', 'SUR PRESTATIONS DE SERVICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709700', 'SUR VENTES MARCHANDISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('709800', 'SUR PRODUITS ACTIVITES ANNEXES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713000', 'VARIAT. STOCKS (EN-COURS PRODUCT.)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713300', 'VARIATION EN-COURS PRODUC. BIENS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713310', 'PRODUITS EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713350', 'TRAVAUX EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713400', 'VARIATION EN-COURS PROD. SERVICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713410', 'ETUDES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713450', 'PRESTATIONS SERVICES EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713500', 'VARIATION STOCKS DE PRODUITS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713510', 'PRODUITS INTERMEDIAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713550', 'PRODUITS FINIS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('713580', 'PRODUITS RESIDUELS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('721000', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('722000', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('731000', 'PROD. NETS PART. SUR OP. EN COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('739000', 'PROD. NETS PART. SUR OP. TERMINEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('751000', 'REDEV. POUR CONCES. BREV. LIC....', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('751100', 'REDEV. POUR CONCES. BREV. LIC...', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('751600', 'DROITS D\'AUTEUR ET DE REPRODUCTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('751800', 'AUTRES DROITS & VALEURS SIMILAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('752000', 'REV. IMMEUB. NON AFFECT. ACT. PROF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('753000', 'JETONS PRESENCE ET REMUN. ADMINIST', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('754000', 'RISTOURNES PERCUES COOPERATIVES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('755000', 'QUOTES-PARTS RESULT. OP. EN COMMUN', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('755100', 'QUOTE-PART PERTE TRANSFEREE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('755500', 'QUOTE-PART BENEFICE ATTRIBUEE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('758000', 'PRODUITS DIVERS GESTION COURANTE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('761000', 'PRODUITS DE PARTICIPATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('761100', 'REVENUS TITRES DE PARTICIPATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('761600', 'REVENUS AUTRES FORMES PARTICIP.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('762000', 'PRODUITS AUTRES IMMOB. FINANC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('762100', 'REVENUS DES TITRES IMMOBILISES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('762400', 'REVENUS DES PRETS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('762700', 'REVENUS CREANCES IMMOBILISEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('763000', 'REVENUS DES AUTRES CREANCES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('763100', 'REVENUS CREANCES COMMERCIALES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('763800', 'REVENUS DES CREANCES DIVERSES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('764000', 'REVENUS VALEURS MOBIL. PLACEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('765000', 'ESCOMPTES OBTENUS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('767000', 'PROD. NETS SUR CESS. VALEURS MOB.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('767100', 'REVENUS CRE. RATT. PARTICIPATIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('768000', 'AUTRES PRODUITS FINANCIERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771000', 'PRODUITS EXCEPT. SUR OPER. GESTION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771100', 'DEDITS PENAL. SUR ACHATS & VENTES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771300', 'LIBERALITES PERCUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771400', 'RENTREES SUR CREANCES AMORTIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771500', 'SUBVENTIONS D\'EQUILIBRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771700', 'DEGREVEM. IMPOTS (AUT. IMP. BENEF)', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('771800', 'AUTRES PROD. EXCEPT. SUR OP. GEST.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('772000', 'PRODUITS SUR EXERCICES ANTERIEURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('775000', 'PRODUITS CESSIONS ELEMENTS D\'ACTIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('775100', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('775200', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('775600', 'IMMOBILISATIONS FINANCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('775800', 'AUTRES ELEMENTS D\'ACTIF', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('777000', 'Q-P SUBV. INVEST. AU RESULT. EXERC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('778000', 'AUTRES PRODUITS EXCEPTIONNELS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('778100', 'BONIS PROVENANT CLAUSES D\'INDEXAT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('778200', 'LOTS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('778300', 'BONIS RACHAT PAR ETS ACT. & OBLIG.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('778800', 'PRODUITS EXCEPTIONNELS DIVERS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781000', 'REPRISES SUR AMORTISS. & PROVIS.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781100', 'REPRIS. AMORT. IMMOB. CORP. & INC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781110', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781120', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781500', 'REPRIS. PROVIS. RISQ. & CH. EXPLOI', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781600', 'REP. PROV. DEPREC. IMM. CORP & INC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781610', 'IMMOBILISATIONS INCORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781620', 'IMMOBILISATIONS CORPORELLES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781700', 'REPRIS. PROV. DEPREC. ACT. CIRCUL.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781730', 'STOCKS ET EN-COURS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('781740', 'CREANCES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('786000', 'REPRISES SUR PROVIS. POUR RISQUES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('786500', 'REP. PROV. RISQ. & CHARG. FINANC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('786600', 'REPRIS. PROV. DEPREC. ELEM. FINANC', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('786620', 'IMMOBILISATIONS FINANCIERES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('786650', 'VALEURS MOBILIERES DE PLACEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787000', 'REPRISES SUR PROVISIONS', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787200', 'REPRISES SUR PROV. REGLEMENTEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787250', 'AMORTISSEMENTS DEROGATOIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787260', 'PROVISION SPECIALE DE REEVALUATION', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787270', 'PLUS-VALUES REINVESTIES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787300', 'REPRISES SUR PROV. REGLEMENTEES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787400', 'REPRIS. SUR AUTRES PROV. REGLEMENT', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787500', 'REPRIS. PROV. RISQ. & CHARG. EXPL.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('787600', 'REPRIS. PROV. POUR DEPREC. EXCEPT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('791000', 'TRANSFERTS DE CHARGES D\'EXPLOIT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('796000', 'TRANSFERTS DE CHARGES FINANC.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('797000', 'TRANSFERTS DE CHARGES EXCEPT.', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('201000', 'FRAIS D\'ETABLISSEMENT', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('209000', 'SORTIE D\'IMMOBILISATION', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('474100', 'DIVERS A REINTEGRER', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('474200', 'BENEFICE SCM', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('475000', 'PLUS VALUES A COURT TERME', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('530000', 'CAISSE', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('760000', 'PRODUITS FINANCIERS', 'A', '', 'I', 'AR_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('770000', 'PRODUITS EXCEPTIONNELS', 'A', '', 'I', 'AR_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('530010', 'CAISSE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('607000', 'ACHATS DE MARCHANDISES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622700', 'FRAIS D\'ACTES ET DE CONTENTIEUX', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('438600', 'AUTRES CHARGES A PAYER', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('473000', 'DIVERS A DEDUIRE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('613200', 'LOCATIONS IMMOBILIERES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('616000', 'PRIMES D\'ASSURANCE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('633800', 'AUTRES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('695000', 'IMPOTS SUR LES BENEFICES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('108100', 'COMPTE DE LEXPLOITANT', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512030', 'EPARGNE', 'A', '', 'A', 'AR_paid:AP_paid');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('100000', 'CLASSE 1', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('300000', 'CLASSE 3', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('500000', 'CLASSE 5', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('600000', 'CLASSE 6', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('700000', 'CLASSE 7', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('108000', 'COMPTE DE LEXPLOITANT', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('200001', 'IMMOBILISATION', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('200000', 'CLASSE 2', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('400001', 'FOURNISSEURS ET COMPTES RATTACHES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('400000', 'CLASSE 4', 'H', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('695100', 'IMPOTS DUS EN FRANCE', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('646000', 'COTIS. SOCIAL. PERSON. EXPLOITANT', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645000', 'CHARGES DE SECUR. SOC. ET PREVOY.', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('617000', 'ETUDES ET RECHERCHES', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('615000', 'ENTRETIEN ET REPARATIONS', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('613500', 'LOCATIONS MOBILIERES', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('611000', 'SOUS-TRAITANCE GENERALE', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('695500', 'DEBOURS PAYES POUR LE COMPTE', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('690000', 'PARTICIP. SAL. / IMPOTS SUR BEN.', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('687600', 'DOTAT. AUX PROV. DEPREC. EXCEPT.', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681000', 'DOTATIONS AUX AMORT. & AUX PROVIS.', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('628100', 'CONCOURS DIVERS (COTISATIONS,...)', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625600', 'MISSIONS', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645800', 'COTISATIONS AUX AUTRES ORG. SOC.', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('641000', 'REMUNERATIONS DU PERSONNEL', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625020', 'DEPLACEMENTS MOTO', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('622600', 'HONORAIRES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('621100', 'PERSONNEL INTERIMAIRE', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445500', 'TAXES SUR CA A DECAISSER', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('706000', 'PRESTATIONS DE SERVICES', 'A', '', 'I', 'IC_income');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('707000', 'VENTES DE MARCHANDISES', 'A', '', 'I', 'IC_sale');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445713', 'TVA COLLECTEE 19.6%', 'A', '', 'I', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512020', 'BANQUE DEBIT', 'A', '', 'E', 'AP');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445711', 'TVA COLLECTEE 5.5%', 'A', '', 'I', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445661', 'TVA DEDUCTIBLE 5.5%', 'A', '', 'E', 'AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512010', 'BANQUE CREDIT', 'A', '', 'I', 'AR:AR_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('681730', 'STOCKS ET EN-COURS', 'A', '', 'A', 'IC');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('580010', 'VIREMENT INTERNE', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('580000', 'VIREMENT INTERNE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('766000', 'GAINS DE CHANGE', 'A', '', 'I', 'AR_amount:IC_income');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('472000', 'MOINS VALUES A COURT TERME', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('474000', 'DEFICIT SCM', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('670000', 'CHARGES FINANCIERES', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645100', 'COTISATIONS A L\'URSSAF', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645200', 'COTISATIONS AUX MUTUELES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645300', 'COTISATIONS AUX CAISSES RETR.', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('646400', 'COTISATIONS AUX ASSEDIC', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('623400', 'CADEAUX A LA CLIENTELE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('437000', 'AUTRES ORGANISMES SOCIAUX', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606100', 'FOURNITURES NON STOCK. EAU ENERG.', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('606300', 'FOURNIT. ENTRETIEN & PETIT EQUIP.', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625010', 'DEPLACEMENTS AUTO', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('635110', 'TAXE PROFESSIONNELLE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('645001', 'CSG', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('660000', 'CHARGES FINANCIERES', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('666000', 'PERTES DE CHANGE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512040', 'EXPLOITANT', 'A', '', 'E', 'AP_paid');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('431000', 'SECURITE SOCIALE', 'A', '', 'E', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('609400', 'D\'ETUDES & PRESTATIONS DE SERVICES', 'A', '', '', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('625100', 'VOYAGES ET DEPLACEMENTS', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('618300', 'DOCUMENTATION TECHNIQUE', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('445663', 'TVA DEDUCTIBLE 19.6%', 'A', '', 'E', 'AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('601000', 'ACHATS STOCKES MAT. PREM. (FOURN.)', 'A', '', 'E', 'AP_amount:IC_cogs');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('626000', 'FRAIS POSTAUX ET TELECOMMUNIC.', 'A', '', 'E', 'AP_amount');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('512000', 'BANQUE', 'A', '', 'A', 'AR_paid:AP_paid');
---
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('999000', 'Foreign Exchange Gain', 'A', '', 'I', '');
-INSERT INTO chart (accno, description, charttype, gifi_accno, category, link) VALUES ('999010', 'Foreign Exchange Loss', 'A', '', 'E', '');
---
--- insert taxes
---
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '445661'), 0.055);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '445663'), 0.196);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '445711'), 0.055);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '445713'), 0.196);
---
--- update defaults
---
-update defaults set inventory_accno_id = (select id from chart where accno = '681730'), income_accno_id = (select id from chart where accno = '707000'), expense_accno_id = (select id from chart where accno = '601000'), fxgain_accno_id = (select id from chart where accno = '999000'), fxloss_accno_id = (select id from chart where accno = '999010'), curr = 'EUR', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/German-Sample-chart.sql b/sql-ledger/sql/German-Sample-chart.sql
deleted file mode 100644
index e35f991..0000000
--- a/sql-ledger/sql/German-Sample-chart.sql
+++ /dev/null
@@ -1,216 +0,0 @@
--- Einfacher Deutscher Kontenrahmen => Very Easy German Default Chart
--- Vorbereitet von / Prepared by Paul Tammes May 9th, 2002. Kommentar / Comments : finance@bermuda-holding.com
--- Englische Texte für eigene Zwecke und um Refernz in SQL-Ledger Dokumentation zu erleichtern.
--- English terms used mostly for my own reference and to make lookup in SQL-Ledger documentation easier.
--- GIFI-codes werden benutzt/misbraucht um die art der Rechnung zu deuten, Fehler nicht ausgeschlossen denn
--- Ich bin kein Deutscher Steuerberater ;-(
--- GIFI field codes re-used for following specs:
--- Link: Achtung, sehr wenig benutzt da mir die Kentnisse zum Deutschen System fehlen. Sehr gut aufpassen und wenn
--- Ihr Fehler oder Praktische TIPS hat: gerne!
--- Link: used to a minimum, update and customization may well be needed!
--- A0 = Anlagevermögen / Fixed Assets
--- A1-1 = Warenbestand / Inventory
--- A1-2 = Forderungen / Liabilities
--- A1-3 = Liquide Mittel / Assets
--- A1-4 = Aktive Rechnungsabgrenzung / Closing Account results
--- E = Erträge / Income
--- K0 = Wareneinsatz / COGS
--- K1 = Personalkosten / Salaries etc
--- K2 = Raumkosten / Rental etc
--- K3 = Sonstige Kosten / Various costs
--- NA = Neutrale Aufwendungen / Neutral Costs
--- NE - Neutrale Erlöse / Neutral Income
--- P0 = Eigenkapital / Equity
--- P1 = Rückstellungen / Reserves
--- P2 = Fremdkapital Langfristig / Liabilities Long Term
--- P3 = Fremdkapital Kurzfristig / Liabilities Short Term
--- P4 = Passive Rechnungsabgrenzung / Closing Account results
---
--- A0
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0000','ANLAGEVERMÖGEN','H','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0100','Konzessionen & Lizenzen','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0135','EDV-Programme','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0440','Maschinen','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0500','Betriebsausstattung','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0520','PKW','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0650','Büroeinrichtung','A','A0','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('0670','GWG','A','A0','A','');
--- A1-1
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1100','WARENBESTAND','H','A1-1','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1140','Warenbestand','A','A1-1','A','IC');
--- A1-2
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','FORDERUNGEN','H','A1-2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1201','Geleistete Anzahlungen','A','A1-2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1210','Forderungen ohne Kontokorrent','A','A1-2','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1300','Sonstige Forderungen','A','A1-2','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1400','Anrechenbare Vorsteuer','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1401','Anrechenbare Vorsteuer 7%','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1402','Vorsteuer ig Erwerb','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1403','Vorsteuer ig Erwerb 16%','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1405','Anrechenbare Vorsteuer 16%','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1406','Anrechenbare Vorsteuer 15%','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1433','bezahlte Einfuhrumsatzsteuer','A','A1-2','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1370','Ungeklärte Posten','A','A1-2','A','');
--- A1-3
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1600','LIQUIDE MITTEL','H','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1601','Kasse','A','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1700','Postgiro','A','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','Bank','A','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1810','Bank USD','A','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Kreditkarten','A','A1-3','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1890','Geldtransit','A','A1-3','A','');
--- A1-4
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1900','Aktive Rechnungsabgrenzung','A','A1-4','A','');
--- P0
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','EIGENKAPITAL','H','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2001','Eigenkapital','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Privatentnahmen','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2150','Privatsteuern','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2180','Privateinlagen','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2200','Sonderausgaben beschr.abzugsf.','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2900','Gezeichnetes Kapital','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2910','Ausstehende Einlagen','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2970','Gewinnvortrag vor Verwendung','A','P0','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2978','Verlustvortrag vor Verwendung','A','P0','Q','');
--- P1
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3000','RÜCKSTELLUNGEN','H','P1','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3030','Gewerbesteuerrückstellung','A','P1','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3070','Sonstige Rückstellungen','A','P1','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3095','Rückstellung für Abschlusskosten','A','P1','L','');
--- P2
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3100','FREMDKAPITAL LANGFRISTIG','H','P2','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3160','Bankdarlehen','A','P2','L','');
--- P3
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3200','FREMDKAPITAL KURZFRISTIG','H','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3280','Erhaltene Anzahlungen','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3310','Kreditoren ohne Kontokorrent','A','P3','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','Sonstige Verbindlichkeiten','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3560','Darlehen','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3700','Verbindl. Betr.steuern u.Abgaben','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3720','Verbindlichkeiten Löhne und Gehälter','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3730','Verbindlichkeiten Lohnsteuer','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3740','Verbindlichkeiten Sozialversicherung','A','P3','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3800','Umsatzsteuer','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3801','Umsatzsteuer 7%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3802','Umsatzsteuer ig. Erwerb','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3803','Umsatzsteuer ig. Erwerb 16%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3805','Umsatzsteuer 16%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3806','Umsatzsteuer 15%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3815','Umsatzsteuer nicht fällig 16%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3816','Umsatzsteuer nicht fällig 15%','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3820','Umsatzsteuer-Vorauszahlungen','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3841','Umsatzsteuer Vorjahr','A','P3','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
--- P4
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3900','Aktive Rechnungsabgrenzung','A','P4','L','');
--- K0
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','WARENEINGANG','H','K0','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5200','Wareneingang ohne Vorsteuer','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5300','Wareneingang 7%','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','Wareneingang 15%','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','ig.Erwerb 7% VoSt. und 7% USt.','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5425','ig.Erwerb 15% VoSt. und 15% USt.','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5731','Erhaltene Skonti 7% Vorsteuer','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5736','Erhaltene Skonti 15% Vorsteuer','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Anschaffungsnebenkosten','A','K0','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5900','Fremdarbeiten','A','K0','E','AP_amount:IC_cogs:IC_expense');
--- K1
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6000','PERSONALKOSTEN','H','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6001','Personalkosten','H','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6010','Löhne','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6020','Gehälter','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6030','Aushilfslöhne','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6040','Lohnsteuer Aushilfen','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6080','Vermögenswirksame Leistungen','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6090','Fahrtkostenerst.Whg./Arbeitsstätte','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6110','Sozialversicherung','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6120','Berufsgenossenschaft','A','K1','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6130','Freiw. Soz. Aufw. LSt- u. Soz.Vers.frei','A','K1','E','');
--- K2
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6300','RAUMKOSTEN','H','K2','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6310','Miete','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6315','Pacht','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6320','Heizung','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6325','Gas Strom Wasser','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6330','Reinigung','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6335','Instandhaltung betriebliche Räume','A','K2','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6345','Sonstige Raumkosten','A','K2','E','AP_amount:IC_expense');
--- K3
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6400','SONSTIGE KOSTEN','H','K3','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6402','Abschreibungen','A','K3','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6403','Kaufleasing','A','K3','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6404','Sofortabschreibung GWG','A','K3','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6405','Sonstige Kosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6410','Versicherung','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6420','Beiträge und Gebühren','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6430','Sonstige Abgaben','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470','Rep. und Instandhaltung BGA','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6520','Kfz-Versicherung','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6530','Lfd. Kfz-Kosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6540','Kfz-Reparaturen','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6560','Fremdfahrzeuge','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6570','Sonstige Kfz-Kosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6600','Werbung','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6610','Kundengeschenke bis DM 75.','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6620','Kundengeschenke über DM 75.-','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6630','Repräsentationkosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6640','Bewirtungskosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6644','Nicht abzugsf.Bewirtungskosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6650','Reisekosten Arbeitnehmer','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6660','Reisekosten Arbeitnehmer 12.3%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6665','Reisekosten Arbeitnehmer 9.8%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6670','Reisekosten Unternehmer','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6680','Reisekosten Unternehmer 12.3%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6685','Reisekosten Unternehmer 9.8%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6688','Reisekosten Unternehmer 5.7%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6690','Km-Geld-Erstattung 8.2%','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6710','Verpackungsmaterial','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6740','Ausgangsfrachten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6780','Fremdarbeiten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6800','Porto','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6805','Telefon','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6815','Bürobedarf','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6820','Zeitschriften & Bücher','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6825','Rechts- und Beratungskosten','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6835','Mieten für Einrichtungen','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6840','Mietleasing','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6845','Werkzeuge und Kleingeräte','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6850','Betriebsbedarf','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6852','Gastättenbedarf','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6855','Nebenkosten des Geldverkehrs','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6880','Aufwendungen aus Kursdifferenzen','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6885','Erlöse aus Anlageverk.(Buchverlust)','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7610','Gewerbesteuer','A','K3','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7685','Kfz-Steuer','A','K3','E','AP_amount:IC_cogs:IC_expense');
--- E
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8100','ERTRÄGE','H','E','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8120','Steuerfreie Umsätze 4 Nr. 1a UStG.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8125','Steuerfreie ig. Lieferungen 1b UStG.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8200','Erlöse ohne Umsatzsteuer','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8300','Erlöse 7% Umsatzsteuer','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8400','Erlöse 15% Umsatzsteuer','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8500','Provisionserlöse','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8630','Entnahme sonstg. Leistungen 7% USt.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8640','Entnahme sonstg. Leistungen 15% USt.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8731','Gew. Skonti 7% USt.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8736','Gew. Skonti 15% USt.','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8840','Erträge aus Kursdifferenzen','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8845','Erlöse aus Anlageverk. (Buchgewinn)','A','E','I','AR_amount:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8900','Erträge aus Abgang von Anlageverm.','A','E','I','AR_amount:IC_sale:IC_income');
--- NA
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9300','NEUTRALE AUFWENDUNGEN','H','NA','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9310','Zinsen kurzfr. Verbindlichkeiten','A','NA','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9320','Zinsen langfr. Verbindlichkeiten','A','NA','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9500','Ausserordentl.Aufwendungen','A','NA','E','');
--- NE
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9600','NEUTRALE ERTRÄGE','H','NE','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9610','Guthabenzinsen','H','NE','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9700','Ausserordentl.Erträge','H','NE','I','');
---
--- Default settings
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3801'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3805'),0.16);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3806'),0.15);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1140'), income_accno_id = (select id from chart where accno = '8120'), expense_accno_id = (select id from chart where accno = '5800'), fxgain_accno_id = (select id from chart where accno = '8840'), fxloss_accno_id = (select id from chart where accno = '6880'), curr = 'EUR', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/German-Sample-gifi.sql b/sql-ledger/sql/German-Sample-gifi.sql
deleted file mode 100644
index 78eaed4..0000000
--- a/sql-ledger/sql/German-Sample-gifi.sql
+++ /dev/null
@@ -1,19 +0,0 @@
--- Einfacher Kontoplan für Deutschland
---
-INSERT INTO gifi (accno,description) VALUES ('A0', 'Anlagevermögen');
-INSERT INTO gifi (accno,description) VALUES ('A1-1', 'Warenbestand');
-INSERT INTO gifi (accno,description) VALUES ('A1-2', 'Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('A1-3', 'Liquide Mittel');
-INSERT INTO gifi (accno,description) VALUES ('A1-4', 'Aktive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('E', 'Erträge');
-INSERT INTO gifi (accno,description) VALUES ('K0', 'Wareneinsatz');
-INSERT INTO gifi (accno,description) VALUES ('K1', 'Personalkosten');
-INSERT INTO gifi (accno,description) VALUES ('K2', 'Raumkosten');
-INSERT INTO gifi (accno,description) VALUES ('K3', 'Sonstige Kosten');
-INSERT INTO gifi (accno,description) VALUES ('NA', 'Neutrale Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('NE', 'Neutrale Erlöse');
-INSERT INTO gifi (accno,description) VALUES ('P0', 'Eigenkapital');
-INSERT INTO gifi (accno,description) VALUES ('P1', 'Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('P2', 'Fremdkapital Langfristig');
-INSERT INTO gifi (accno,description) VALUES ('P3', 'Fremdkapital Kurzfristig');
-INSERT INTO gifi (accno,description) VALUES ('P4', 'Passive Rechnungsabgrenzung');
diff --git a/sql-ledger/sql/Germany-DATEV-SKR03-chart.sql b/sql-ledger/sql/Germany-DATEV-SKR03-chart.sql
deleted file mode 100644
index b5a0448..0000000
--- a/sql-ledger/sql/Germany-DATEV-SKR03-chart.sql
+++ /dev/null
@@ -1,227 +0,0 @@
--- DATEV SKR03
---
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0002700','EDV-Software','A','A','','0002700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0010000','Fabrikbauten','A','A','','0010000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0011000','Garagen','A','A','','0011000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0011100','Außenanlagen','A','A','','0011100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0011200','Hof-und Wegebefestigung','A','A','','0011200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0011500','Andere Bauten','A','A','','0011500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0016500','Geschäftsbauten','A','A','','0016500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0008500','Grundstückswert eige.bebau.Grundst.','A','A','','0008500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0009000','Geschäftsbauten','A','A','','0009000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0016000','Bauten auf fremden Grundstücken','H','A','','0016000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0017000','Fabrikbauten','A','A','','0017000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0017500','Garagen','A','A','','0017500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0017600','Außenanlage','A','A','','0017600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0020000','Techn.Anlagen und Maschinen','H','A','','0020000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0021000','Maschinen','A','A','','0021000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0022000','Maschinengebundene Werkzeuge','A','A','','0022000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0024000','Maschinelle Anlagen','A','A','','0024000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0028000','Betriebsvorrichtung','A','A','','0028000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0030000','Andere Anlagen,Betrieb-und Geschäftsaus','H','A','','0030000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0031000','Andere Anlagen','A','A','','0031000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0032000','PKW','A','A','','0032000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0035000','LKW','A','A','','0035000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0040000','Betriebsausstattung','A','A','','0040000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0041000','Geschäftsausstattung','A','A','','0041000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0042000','Büroeinrichtung','A','A','','0042000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0043000','Ladeneinrichtung','A','A','','0043000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0048000','Geringwertige Wirtschaftsg.b.410EUR','A','A','','0048000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0049000','Sons.Betriebs- Geschäftsausstattung','A','A','','0049000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0050400','Ant.a.herr.o.m.Mehrh.bet.Ges.schaft','A','A','','0050400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0051300','Typisch stille Beteiligungen','A','A','','0051300');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0063100','- Restlaufzeit bis 1 Jahr','A','L','','0063100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0051600','Atypische stille Beteiligungen','A','A','','0051600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0064000','- Restlaufzeit 1 bis 5 Jahre','A','L','','0064000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0065000','- Restlaufzeit größer als 5 Jahre','A','L','','0065000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0099600','Pauschalwertb.m.Restlaufzeit v. 1J.','A','A','','0099600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0140000','Ford. a.Lieferungen und Leistungen','A','A','AR','0140000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0080000','Gezeichnetes Kapital','A','Q','','0080000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0150000','Sonstige Vermögensgegenstände','A','A','','0150000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0153000','Forderungen gegen Personal','A','A','','0153000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0154500','Umsatzsteuerforderungen','A','A','','0154500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0100000','Kasse','A','A','AR_paid:AP_paid','0100000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0120000','Bank','A','A','AR_paid:AP_paid','0120000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0096300','Körperschaftssteuerrückstellung','A','Q','','0096300');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0095500','Steuerrückstellung','A','Q','','0095500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0095700','Gewerbesteuerrückstellung','A','Q','','0095700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0080100','Ausst.Einl.a.d.gezeichnete Kapital','A','Q','','0080100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0084000','Kapitalrücklage','A','Q','','0084000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0086000','Gewinnvortrag vor Verwendung','A','Q','','0086000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0086900','Vortrag auf neue Rechnungen','A','Q','','0086900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0000500','Sachanlagen','H','A','','0000500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0050000','Finanzanlagen','H','A','','0050000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0051000','Beteiligungen','A','A','','0051000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0063000','Verbindl.gegenüber Kreditinstituten','A','L','','0063000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0060000','Verbindlichkeiten','H','L','','0060000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0086800','Verlustvortrag vor Verwendung','A','L','','0086800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0097000','Sonstige Rückstellungen','A','L','','0097000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0097400','Rückstellungen für Gewährleistungen','A','L','','0097400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0097700','Rücks.f.Abschluß-u.Prüfungskosten','A','L','','0097700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0097800','Aufwandsrückstellungen','A','L','','0097800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0098000','Aktive Rechnungsabgrenzung','A','A','','0098000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0099000','Passive Rechnungsabgrenzung','A','L','','0099000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0099200','Wertberichtigungen','A','A','','0099200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0099800','Einzelwertber.m.Restlaufzeit v.1 J.','A','A','','0099800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0146000','Zweifelhafte Forderungen','A','A','','0146000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0151000','Geleistete Anzahlung auf Vorräte','A','A','','0151000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0151100','Geleistete Anzahlungen 7%','A','A','','0151100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0151700','Geleistete Anzahlung 16%','A','A','','0151700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0152500','Kautionen','A','A','','0152500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0154000','Steuerüberzahlungen','A','A','','0154000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0157000','Abziehbare Vorsteuer','A','A','AR_tax:AP_tax','0157000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0160000','Verbindlichkeiten aus Lief.u.Leist.','A','L','AP','0160000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0174100','Verbindl.a.Lohn-und Kirchensteuer','A','L','','0174100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0178000','Umsatzsteuer-Vorauszahlungen','A','L','','0178000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0178100','Umsatzsteuer-Vorauszahlung 1/11','A','L','','0178100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0178900','Umsatzsteuer laufendes Jahr','A','L','','0178900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0179000','Umsatzsteuer Vorjahr','A','L','','0179000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0179100','Umsatzsteuer frühere Jahre','A','L','','0179100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0180000','Privatentnahme allgemein','A','Q','','0180000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0189000','Privateinlagen','A','Q','','0189000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0210000','Zinsen und ähnl.Aufwendungen','A','E','','0210000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0211000','Zinsaufwendung f.kurzf.Verbindlichk','A','E','','0211000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0212000','Zinsaufwendung f.langf.Verbindlichk','A','E','','0212000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0221000','Kapitalertragssteuer','A','E','','0221000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0231000','Anlagenabgänge - bei Buchverlust','A','E','','0231000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0231500','Anlagenabgänge-Buchgewinn','A','I','','0231500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0237500','Grundsteuer','A','E','','0237500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0245000','Einstell.i.d.Pauschalwertbe.z.Forde','A','E','','0245000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0245100','Einstell.i.d.Einzelwertb.z.Forderun','A','E','','0245100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0250000','Außerordentliche Erträge','A','I','','0250000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0251000','Betriebsfremde Erträge n.außerorden','A','I','','0251000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0252000','Periodenfremde Erträge nicht außero','A','I','','0252000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0270000','Sonstige Erträge','A','I','','0270000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0272000','Ertr.a.d.Abgang v.Gegens.d.Anlageve','A','I','','0272000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0272500','Ertr.a.d.Abg.v.Gegenst.d.Umlaufverm','A','I','','0272500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0273000','Ertr.a.Herab.d.Pauschal.z.Forderung','A','I','','0273000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0273100','Ertr.a.Herab.d.Einzelw.z.Forderunge','A','I','','0273100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0273200','Ertr. aus abgeschriebenen Forderung','A','I','','0273200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0274200','Versicherungsentschädigungen','A','I','','0274200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0286000','Gewinnvortrag nach Verwendung','A','L','','0286000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0286800','Verlustvortrag nach Verwendung','A','L','','0286800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0286900','Vortrag auf neue Rechnungen','A','L','','0286900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0375000','Erhaltene Boni 7% Vorsteuer','A','I','','0375000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0376000','Erhaltene Boni 16% Vorsteuer','A','I','','0376000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0380000','Anschaffungsnebenkosten','A','E','IC_cogs:IC_expense','0380000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0383000','Leergut','A','E','IC_cogs:IC_expense','0383000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0385000','Zölle und Einfuhrabgaben','A','E','IC_cogs:IC_expense','0385000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0396000','Bestandsver.Roh-,Hilfs-.Betriebs.','A','E','','0396000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0397000','Bestand Roh-,Hilfs-,u.Betriebsstoff','A','A','IC','0397000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0398000','Bestand Waren','A','E','IC','0398000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0399000','Verrechnete Stoffkosten','A','E','IC_cogs:IC_expense','0399000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0400000','Material-und Stoffverbrauch','A','E','IC_cogs:IC_expense','0400000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0410000','Löhne und Gehälter','A','E','AP_amount','0410000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0412500','Ehegattengehalt','A','E','AP_amount','0412500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0340000','Wareneingang 16% Vorsteuer','A','E','AP_amount','0340000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0342000','Innergemein.Erwerb 7% VorSt u. Ust','A','E','AP_amount','0342000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0342500','Innergem.Erwerb 16% VorSt u. Ust','A','E','AP_amount','0342500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0373100','Erhaltene Skonti 7% Vorsteuer','A','I','AP_paid','0373100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0373500','Erhaltene Skonti 16% Vorsteuer','A','I','AP_paid','0373500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0330000','Wareneingang 7% Vorsteuer','A','E','AP_amount','0330000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0413000','Gesetzlich soziale Aufwendungen','A','E','AP_amount','0413000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0413800','Beiträge zur Berufsgenossenschaftr','A','E','AP_amount','0413800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0414500','Freiwillige sozi.Aufw.lohnsteuerfr.','A','E','AP_amount','0414500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0414900','Pauschale Lohnsteuera.sons.Bezüge','A','E','AP_amount','0414900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0416500','Aufwendung f.Altersversorgung','A','E','AP_amount','0416500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0417000','Vermögenswirksame Leistungen','A','E','AP_amount','0417000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0420000','Raumkosten','A','E','AP_amount:AP_tax','0420000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0417500','Fahrtkostenerst.Wohnung/Arbeitsstät','A','E','AP_amount','0417500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0419000','Aushilfslöhne','A','E','AP_amount','0419000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0419900','Lohnsteuer für Aushilfe','A','E','AP_amount','0419900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0159000','Durchlaufende Posten','A','A','','0159000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0422000','Pacht','A','E','AP_amount','0422000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0423000','Heizung','A','E','AP_amount','0423000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0424000','Gas,Strom, Wasser','A','E','AP_amount','0424000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0425000','Reinigung','A','E','AP_amount','0425000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0426000','Instandhaltung betrieb.Räume','A','E','AP_amount','0426000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0428000','Sonstige Raumkosten','A','E','AP_amount','0428000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0432000','Gewerbesteuer','A','E','AP_amount','0432000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0434000','Sonstige Betriebssteuern','A','E','','0434000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0436000','Versicherungen','A','E','','0436000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0438000','Beiträge','A','E','','0438000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0439000','Sonstige Abgaben','A','E','AP_amount','0439000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0450000','Fahrzugkosten','A','E','','0450000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0451000','Kfz-Steuer','A','E','','0451000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0452000','Kfz-Versicherungen','A','E','','0452000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0453000','Laufende Kfz-Betriebskosten','A','E','AP_amount','0453000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0454000','Kfz-Reparaturen','A','E','AP_amount','0454000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0455000','Garagenmiete','A','E','AP_amount','0455000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0457000','Fremdfahrzeuge','A','E','AP_amount','0457000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0458000','Sonstige Kfz-Kosten','A','E','AP_amount','0458000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0461000','Werbekosten','A','E','AP_amount','0461000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0463000','Geschenke bis 40 EUR','A','E','AP_amount','0463000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0463500','Geschenke über 40 EUR','A','E','AP_amount','0463500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0464000','Repräsentationskosten','A','E','AP_amount','0464000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0465000','Bewirtungskosten','A','E','AP_amount','0465000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0465400','Nicht abzugsfähige Bewirtungskosten','A','E','AP_amount','0465400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0465500','Nicht abzugsfähige Betriebsausgaben','A','E','','0465500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0466300','Reisekosten Arbeitn.m.Vorsteuerabzu','A','E','AP_amount','0466300');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0466600','Reisekosten Arbeitn.Übernachtungsau','A','E','','0466600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0466800','Kilometerentgelderstattung Arbeitne','A','E','','0466800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0467400','Reisekosten Untern.Verpflegungsmehr','A','E','','0467400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0467600','Reisekosten Untern.Übernachtungsauf','A','E','','0467600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0467800','Kilometererstattungsgeld Unternehme','A','E','','0467800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0470000','Kosten der Warenabgabe','A','E','IC_cogs','0470000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0471000','Verpackungsmaterial','A','E','IC_cogs','0471000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0473000','Ausgangsfracht','A','E','IC_cogs','0473000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0475000','Transportversicherung','A','E','IC_cogs','0475000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0476000','Verkaufsprovision','A','E','IC_cogs','0476000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0478000','Fremdarbeiten','A','E','IC_cogs','0478000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0479000','Aufwand für Gewährleistungen','A','E','','0479000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0480900','Sonstige Reparaturen u.Instandhalt.','A','E','AP_amount','0480900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0481000','Mietleasing','A','E','AP_amount','0481000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0481500','Kaufleasing','A','E','AP_amount','0481500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0482000','AfA a.Aufw.f.d.Inga.u.Erw.Geschäfts','A','E','AP_amount','0482000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0482100','AfA a.Aufw.f.d.Währungsumst.a.Euro','A','E','AP_amount','0482100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0483000','Abschreibungen auf Sachanlagen','A','E','AP_amount','0483000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0485500','Sofortabschreibung GWG','A','E','AP_amount','0485500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0491000','Porto','A','E','AP_amount','0491000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0492000','Telefon','A','E','AP_amount','0492000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0492500','Telefax','A','E','AP_amount','0492500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0493000','Bürobedarf','A','E','AP_amount','0493000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0494000','Zeitschriften, Bücher','A','E','AP_amount','0494000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0494500','Fortbildungskosten','A','E','AP_amount','0494500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0494600','Freiwillige Sozialleistungen','A','E','','0494600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0495000','Rechts- und Beratungskosten','A','E','AP_amount','0495000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0495500','Buchführungskosten','A','E','AP_amount','0495500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0495700','Abschluß- und Prüfungskosten','A','E','AP_amount','0495700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0496000','Mieten für Einrichtungen','A','E','AP_amount','0496000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0497000','Nebenkosten des Geldverkehrs','A','E','','0497000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0498000','Betriebsbedarf','A','E','AP_amount','0498000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0498500','Werkzeuge und Kleingeräte','A','E','AP_amount','0498500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0498600','Sonstige Aufwendungen (Ausbuchung)','A','E','AP_amount','0498600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0700000','Unfertige Erzeu.unfert.Leistungen','A','A','','0700000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0136000','Geldtransit','A','A','','0136000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0705000','Unfertige Erzeugnisse','A','A','IC','0705000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0708000','Unfertige Leistungen','A','A','IC','0708000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0711000','Fertige Erzeugnisse (Bestand)','A','A','IC','0711000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0714000','Waren (Bestand)','A','A','IC','0714000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0873100','Gewährte Skonti 7% USt','A','I','AP_paid','0873100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0873500','Gewährte Skonti 16% USt.','A','I','AP_paid','0873500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0875000','Gewährte Boni 7% USt.','A','I','','0875000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0876000','Gewährte Boni 16% USt.','A','I','','0876000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0882000','Erlöse aus Anlageverkäufen 16%Ust','A','I','IC_sale','0882000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0895500','Umsatzsteuervergütungen','A','I','','0895500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0890500','Entnahme v. Gegenst.o.USt.','A','I','','0890500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0900000','Saldenverträge,Sachkonten','A','A','','0900000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0900800','Saldenverträge,Debitoren','A','A','','0900800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0900900','Saldenverträge,Kreditoren','A','L','','0900900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0266000','Erträge aus Kursdifferenzen','A','I','','0266000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0215000','Aufwendungen aus Kursdifferenzen','A','E','','0215000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0850000','Provisionserlöse','A','I','AR_amount:IC_income','0850000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0157100','Abziebare Vorsteuer 7%','A','A','AP_tax:CT_tax','0157100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0157500','Abziehbare Vorsteuer 16%','A','A','AP_tax:AP_paid:CT_tax','0157500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0177100','Umsatzsteuer 7%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','0177100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0177500','Umsatzsteuer 16%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','0177500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0830000','Erlöse 7%USt','A','I','AR_amount:IC_sale:IC_income','0830000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('0840000','Erlöse 16% USt.','A','I','AR_amount:IC_sale:IC_income','0840000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('950','Rückstellungen','H','L','','');
---
-update defaults set inventory_accno_id = (select id from chart where accno = '0398000'), income_accno_id = (select id from chart where accno = '0840000'), expense_accno_id = (select id from chart where accno = '0399000'), fxgain_accno_id = (select id from chart where accno = '0266000'), fxloss_accno_id = (select id from chart where accno = '0215000'), curr = 'EUR:USD', weightunit = 'kg';
---
-INSERT INTO tax (chart_id,rate) VALUES ((SELECT id FROM chart WHERE accno = '0157100'),0.07);
-INSERT INTO tax (chart_id,rate) VALUES ((SELECT id FROM chart WHERE accno = '0157500'),0.16);
-INSERT INTO tax (chart_id,rate) VALUES ((SELECT id FROM chart WHERE accno = '0177100'),0.07);
-INSERT INTO tax (chart_id,rate) VALUES ((SELECT id FROM chart WHERE accno = '0177500'),0.16);
-
diff --git a/sql-ledger/sql/Germany-DATEV-SKR03-gifi.sql b/sql-ledger/sql/Germany-DATEV-SKR03-gifi.sql
deleted file mode 100644
index 6097707..0000000
--- a/sql-ledger/sql/Germany-DATEV-SKR03-gifi.sql
+++ /dev/null
@@ -1,550 +0,0 @@
--- DATEV SKR03
---
-INSERT INTO gifi (accno,description) VALUES ('0000100', 'Aufwand Geschäftsbetrieb');
-INSERT INTO gifi (accno,description) VALUES ('0000200', 'Aufwendungen Umstellung a.d.Euro');
-INSERT INTO gifi (accno,description) VALUES ('0001000', 'Konzession,gewerb.Schutzre.u.Werten');
-INSERT INTO gifi (accno,description) VALUES ('0001500', 'Konzessionen');
-INSERT INTO gifi (accno,description) VALUES ('0002700', 'EDV-Software');
-INSERT INTO gifi (accno,description) VALUES ('0003500', 'Geschäfts-oder Firmenwert');
-INSERT INTO gifi (accno,description) VALUES ('0003800', 'Anzahlungen a.Geschäft-o.Firmenwert');
-INSERT INTO gifi (accno,description) VALUES ('0003900', 'Anz.a.immaterielle Vermögsgegenstän');
-INSERT INTO gifi (accno,description) VALUES ('0004000', 'Verschmelzungsmehrwert');
-INSERT INTO gifi (accno,description) VALUES ('0005000', 'Grundstücke,grundstücksgl.Rechte..');
-INSERT INTO gifi (accno,description) VALUES ('0006000', 'Grundstücke u.grundstgl.Rech.o.Baut');
-INSERT INTO gifi (accno,description) VALUES ('0008000', 'Bauten a.eig. Grundstücken,Grgl.Rec');
-INSERT INTO gifi (accno,description) VALUES ('0008500', 'Grundstückswert eige.bebau.Grundst.');
-INSERT INTO gifi (accno,description) VALUES ('0009000', 'Geschäftsbauten');
-INSERT INTO gifi (accno,description) VALUES ('0010000', 'Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0011000', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0011100', 'Außenanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0011200', 'Hof-und Wegebefestigung');
-INSERT INTO gifi (accno,description) VALUES ('0011500', 'Andere Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0012000', 'Geschäfts-,Fabrik-,andere Bau.imBau');
-INSERT INTO gifi (accno,description) VALUES ('0012900', 'Anz.Geschäfts-,Fabrik u. and.Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0015000', 'Wohnbauten im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0016000', 'Bauten auf fremden Grundstücken');
-INSERT INTO gifi (accno,description) VALUES ('0016500', 'Geschäftsbauten');
-INSERT INTO gifi (accno,description) VALUES ('0017000', 'Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0017500', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0017600', 'Außenanlage');
-INSERT INTO gifi (accno,description) VALUES ('0020000', 'Techn.Anlagen und Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0021000', 'Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0022000', 'Maschinengebundene Werkzeuge');
-INSERT INTO gifi (accno,description) VALUES ('0024000', 'Maschinelle Anlagen');
-INSERT INTO gifi (accno,description) VALUES ('0028000', 'Betriebsvorrichtung');
-INSERT INTO gifi (accno,description) VALUES ('0029000', 'Techn.Anlagen u.Maschinen im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0029900', 'Anz.a.techn.Anlagen und Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0030000', 'Andere Anlagen,Betrieb-Geschäftsaus');
-INSERT INTO gifi (accno,description) VALUES ('0031000', 'Andere Anlagen');
-INSERT INTO gifi (accno,description) VALUES ('0032000', 'PKW');
-INSERT INTO gifi (accno,description) VALUES ('0035000', 'LKW');
-INSERT INTO gifi (accno,description) VALUES ('0040000', 'Betriebsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0041000', 'Geschäftsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0042000', 'Büroeinrichtung');
-INSERT INTO gifi (accno,description) VALUES ('0043000', 'Ladeneinrichtung');
-INSERT INTO gifi (accno,description) VALUES ('0048000', 'Geringwertige Wirtschaftsg.b.800DM');
-INSERT INTO gifi (accno,description) VALUES ('0049000', 'Sons.Betriebs- Geschäftsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0049800', 'And. Anlagen,Betrieb/Geschäf.im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0049900', 'Anz.and.Anlagen,Betrieb.Geschäftsau');
-INSERT INTO gifi (accno,description) VALUES ('0050000', 'Anteile a.verb.Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0050400', 'Ant.a.herr.o.m.Mehrh.bet.Ges.schaft');
-INSERT INTO gifi (accno,description) VALUES ('0050500', 'Ausleihung an verb.Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0051000', 'Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0051300', 'Typisch stille Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0051600', 'Atypische stille Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0052000', 'Ausl.a.Untern.m.Beteiligungsverhält');
-INSERT INTO gifi (accno,description) VALUES ('0052500', 'Wertpapiere des Anlagevermögens');
-INSERT INTO gifi (accno,description) VALUES ('0054000', 'Sonstige Ausleihungen');
-INSERT INTO gifi (accno,description) VALUES ('0057000', 'Genossenschaftsan.z.langf.Verbleib');
-INSERT INTO gifi (accno,description) VALUES ('0059500', 'Rückdeckansp.Lebensvers.langf.Verbl');
-INSERT INTO gifi (accno,description) VALUES ('0060000', 'Anleihen-nicht konvertibel');
-INSERT INTO gifi (accno,description) VALUES ('0063000', 'Verbindl.gegenüber Kreditinstituten');
-INSERT INTO gifi (accno,description) VALUES ('0070000', 'Verbind.gegenüber verb.Unternehmern');
-INSERT INTO gifi (accno,description) VALUES ('0071500', 'Verbind.gegen.Untern.m.Beteili.Verh');
-INSERT INTO gifi (accno,description) VALUES ('0073000', 'Verbindlichkeiten gegen. Gesellscha');
-INSERT INTO gifi (accno,description) VALUES ('0076000', 'Darl.typ.stiller Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('0078000', 'Partiarische Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0080000', 'Gezeichnetes Kapital');
-INSERT INTO gifi (accno,description) VALUES ('0080100', 'Ausst.Einl.a.d.gezeichnete Kapital');
-INSERT INTO gifi (accno,description) VALUES ('0084000', 'Kapitalrücklage');
-INSERT INTO gifi (accno,description) VALUES ('0084600', 'Gesetzliche Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('0085000', 'Rücklage für eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('0085100', 'Satzungsmäßige Rücklagen');
-INSERT INTO gifi (accno,description) VALUES ('0086000', 'Gewinnvortrag vor Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0086800', 'Verlustvortrag vor Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0086900', 'Vortrag auf neue Rechnungen');
-INSERT INTO gifi (accno,description) VALUES ('0087000', 'Festkapital');
-INSERT INTO gifi (accno,description) VALUES ('0088000', 'Variables Kapital');
-INSERT INTO gifi (accno,description) VALUES ('0089000', 'Gesellschafter-Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0090000', 'Kommandit-Kapital');
-INSERT INTO gifi (accno,description) VALUES ('0091000', 'Verlustausgleichskonto');
-INSERT INTO gifi (accno,description) VALUES ('0092000', 'Gesellschafter-Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0093000', 'Sonderposten mit Rücklagenanteil');
-INSERT INTO gifi (accno,description) VALUES ('0093100', 'Sopo m.Rückl.ant.nach §6b EstG');
-INSERT INTO gifi (accno,description) VALUES ('0093200', 'Sopo m.Rückl.ant.Abschn.35 EstR');
-INSERT INTO gifi (accno,description) VALUES ('0093500', 'Sopo aus Währungsumstellung Euro');
-INSERT INTO gifi (accno,description) VALUES ('0094700', 'Sopo m.Rückl.ant. §7g Abs.1 EstG');
-INSERT INTO gifi (accno,description) VALUES ('0094800', 'Sopo m.Rückl.ant. §7g Abs.3,7 EstG');
-INSERT INTO gifi (accno,description) VALUES ('0095500', 'Steuerrückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0095700', 'Gewerbesteuerrückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0096300', 'Körperschaftssteuerrückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0096900', 'Rückstellung für latente Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0097000', 'Sonstige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0097400', 'Rückstellungen für Gewährleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0097600', 'Rücks.f.drohe.Verl.schweb.Geschäft');
-INSERT INTO gifi (accno,description) VALUES ('0097700', 'Rücks.f.Abschluß-u.Prüfungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0097800', 'Aufwandsrückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0098000', 'Aktive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('0098300', 'Abgrenzung aktive latente Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0098600', 'Damnum/Disagio');
-INSERT INTO gifi (accno,description) VALUES ('0099000', 'Passive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('0099200', 'Wertberichtigungen');
-INSERT INTO gifi (accno,description) VALUES ('0099600', 'Pauschalwertb.m.Restlaufzeit v. 1J.');
-INSERT INTO gifi (accno,description) VALUES ('0099800', 'Einzelwertber.m.Restlaufzeit v.1 J.');
-INSERT INTO gifi (accno,description) VALUES ('0100000', 'Kasse');
-INSERT INTO gifi (accno,description) VALUES ('0110000', 'Postbank');
-INSERT INTO gifi (accno,description) VALUES ('0120000', 'Bank');
-INSERT INTO gifi (accno,description) VALUES ('0121000', 'Dresdner Bank AG');
-INSERT INTO gifi (accno,description) VALUES ('0121009', 'Verrechnungskonto Dresdner Bank AG');
-INSERT INTO gifi (accno,description) VALUES ('0122000', 'Deutsche Bank AG');
-INSERT INTO gifi (accno,description) VALUES ('0130000', 'Wechsel a. Lieferungen u.Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('0131000', 'Besitzwechsel geg.verb.Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0132000', 'Besitzw.geg.Untern.m.Beteiligungsve');
-INSERT INTO gifi (accno,description) VALUES ('0132700', 'Finanzwechsel');
-INSERT INTO gifi (accno,description) VALUES ('0133000', 'Schecks (Eingang)');
-INSERT INTO gifi (accno,description) VALUES ('0133300', 'Schecks (Ausgang)');
-INSERT INTO gifi (accno,description) VALUES ('0133500', 'Überweisungen (unterwegs)');
-INSERT INTO gifi (accno,description) VALUES ('0134000', 'Anteile verb.Untern.-Umlaufvermögen');
-INSERT INTO gifi (accno,description) VALUES ('0134400', 'Anteil an herr.m.betei.Gesellschaft');
-INSERT INTO gifi (accno,description) VALUES ('0134500', 'Eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('0134800', 'Sonstige Wertpapiere');
-INSERT INTO gifi (accno,description) VALUES ('0136000', 'Geldtransit');
-INSERT INTO gifi (accno,description) VALUES ('0136100', 'Geldtransit (Überweisungen)');
-INSERT INTO gifi (accno,description) VALUES ('0136200', 'Geldtransit,Bankeinzug/Lastschrift');
-INSERT INTO gifi (accno,description) VALUES ('0136300', 'Scheck / Wechsel');
-INSERT INTO gifi (accno,description) VALUES ('0140000', 'Ford. a.Lieferungen und Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('0141100', 'Forderungssammelkonto Vorausre.');
-INSERT INTO gifi (accno,description) VALUES ('0141200', 'Forderungssammelkonto Anzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0146000', 'Zweifelhafte Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('0147000', 'Forder.a.Liefe.u.Leis.geg.verb.Unte');
-INSERT INTO gifi (accno,description) VALUES ('0147800', 'Wertb.a.Ford.m.Rest.1j.geg.verb.Unt');
-INSERT INTO gifi (accno,description) VALUES ('0148000', 'Lief.u.Leis.geg.Untern.m.Beteiligve');
-INSERT INTO gifi (accno,description) VALUES ('0148800', 'Wertb.a.Ford.m.Rest.1j.Beteiligungs');
-INSERT INTO gifi (accno,description) VALUES ('0149000', 'Forderung a.Leis.u.Lief.geg.Gesells');
-INSERT INTO gifi (accno,description) VALUES ('0150000', 'Sonstige Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('0150300', 'Forde.geg.Vorstandsm.u.Geschäftsfüh');
-INSERT INTO gifi (accno,description) VALUES ('0150800', 'Forderungen gegen Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('0151000', 'Geleistete Anzahlung auf Vorräte');
-INSERT INTO gifi (accno,description) VALUES ('0151100', 'Geleistete Anzahlungen 7%');
-INSERT INTO gifi (accno,description) VALUES ('0151700', 'Geleistete Anzahlung 16%');
-INSERT INTO gifi (accno,description) VALUES ('0152500', 'Kautionen');
-INSERT INTO gifi (accno,description) VALUES ('0153000', 'Forderungen gegen Personal');
-INSERT INTO gifi (accno,description) VALUES ('0154000', 'Steuerüberzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0154500', 'Umsatzsteuerforderungen');
-INSERT INTO gifi (accno,description) VALUES ('0154800', 'Vorsteuer im Folgejahr abziehbar');
-INSERT INTO gifi (accno,description) VALUES ('0154900', 'Körperschaftsteuerrückforderung');
-INSERT INTO gifi (accno,description) VALUES ('0155000', 'Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0156000', 'Aufzuteilende Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0156500', 'Aufzuteilende Vorsteuer 16%');
-INSERT INTO gifi (accno,description) VALUES ('0157000', 'Abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0157100', 'Abziebare Vorsteuer 7%');
-INSERT INTO gifi (accno,description) VALUES ('0157200', 'Abziehb. VorSt innergemein. Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('0157300', 'Abziehb.VorSt. innergem.Erwerb 16%');
-INSERT INTO gifi (accno,description) VALUES ('0157500', 'Abziehbare Vorsteuer 16%');
-INSERT INTO gifi (accno,description) VALUES ('0157800', 'Berichtigung d.Vorstabzugs früh.J.');
-INSERT INTO gifi (accno,description) VALUES ('0157900', 'Vorsteuer 0%');
-INSERT INTO gifi (accno,description) VALUES ('0158400', 'abziehb.VorSt IG Erwerb Neufahrzeug');
-INSERT INTO gifi (accno,description) VALUES ('0158800', 'Bezahlte Einfuhrumsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0159000', 'Durchlaufende Posten');
-INSERT INTO gifi (accno,description) VALUES ('0159400', 'Forderungen geg. verb. Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0159700', 'Ford.geg.Untern.m.Beteiligungsverh.');
-INSERT INTO gifi (accno,description) VALUES ('0160000', 'Verbindlichkeiten aus Lief.u.Leist.');
-INSERT INTO gifi (accno,description) VALUES ('0160100', 'Verbindlichkeiten a.Lief.und Leist.');
-INSERT INTO gifi (accno,description) VALUES ('0163000', 'Verbindl.Lief.u.Leist.gegü.verb.Unt');
-INSERT INTO gifi (accno,description) VALUES ('0164000', 'Verb.L.u.L gegü.Unter.Beteiligungsv');
-INSERT INTO gifi (accno,description) VALUES ('0165000', 'Verb.L.u.L gegü.Gesellschaftern');
-INSERT INTO gifi (accno,description) VALUES ('0166000', 'Schuldwechsel');
-INSERT INTO gifi (accno,description) VALUES ('0170000', 'Sonstige Verbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('0170500', 'Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0170900', 'Gewinnverfügungskonto stiller Ges.');
-INSERT INTO gifi (accno,description) VALUES ('0171000', 'Erhaltene Anzahlungen-Verbindlichke');
-INSERT INTO gifi (accno,description) VALUES ('0171100', 'Erhaltene,versteuert Anzahlungen 7%');
-INSERT INTO gifi (accno,description) VALUES ('0171700', 'Erhaltene,versteuerte Anzahl. 16%');
-INSERT INTO gifi (accno,description) VALUES ('0171900', 'Erhaltene Anzahlungen bis 1j.');
-INSERT INTO gifi (accno,description) VALUES ('0172200', 'Erhaltene Anzahlung');
-INSERT INTO gifi (accno,description) VALUES ('0172300', 'Verbindlichkeiten S-konto Vorausre.');
-INSERT INTO gifi (accno,description) VALUES ('0173200', 'Erhaltene Kautionen');
-INSERT INTO gifi (accno,description) VALUES ('0174100', 'Verbindl.a.Lohn-und Kirchensteuer');
-INSERT INTO gifi (accno,description) VALUES ('0175500', 'Lohn-und Gehaltsverrechnung');
-INSERT INTO gifi (accno,description) VALUES ('0175800', 'USt-Abzugsverfahren 16%');
-INSERT INTO gifi (accno,description) VALUES ('0175900', 'Ust 0%');
-INSERT INTO gifi (accno,description) VALUES ('0176000', 'Umsatzsteuer nicht fällig');
-INSERT INTO gifi (accno,description) VALUES ('0176100', 'Umsatzsteuer nicht fällig 7%');
-INSERT INTO gifi (accno,description) VALUES ('0176200', 'Umsatzsteuer nicht fällig EG Lief.');
-INSERT INTO gifi (accno,description) VALUES ('0177000', 'Umsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0177100', 'Umsatzsteuer 7%');
-INSERT INTO gifi (accno,description) VALUES ('0177200', 'Umsatzsteuer aus innergem. Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('0177300', 'Umsatzsteuer innergem.Erwerb 16%');
-INSERT INTO gifi (accno,description) VALUES ('0177500', 'Umsatzsteuer 16%');
-INSERT INTO gifi (accno,description) VALUES ('0177700', 'Ust aus im Inland stpfl. EG-Lief16%');
-INSERT INTO gifi (accno,description) VALUES ('0178000', 'Umsatzsteuer-Vorauszahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0178100', 'Umsatzsteuer-Vorauszahlung 1/11');
-INSERT INTO gifi (accno,description) VALUES ('0178300', 'In Rechn unberecht.ausgew.gesch Ust');
-INSERT INTO gifi (accno,description) VALUES ('0178400', 'Ust IG Erwerb Neufahrzeug o.Ust ID');
-INSERT INTO gifi (accno,description) VALUES ('0178800', 'Einfuhrumsatzsteuer augeschoben bis');
-INSERT INTO gifi (accno,description) VALUES ('0178900', 'Umsatzsteuer laufendes Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0179000', 'Umsatzsteuer Vorjahr');
-INSERT INTO gifi (accno,description) VALUES ('0179100', 'Umsatzsteuer frühere Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0179200', 'Sonstige Verrechnungskonten');
-INSERT INTO gifi (accno,description) VALUES ('0180000', 'Privatentnahme allgemein');
-INSERT INTO gifi (accno,description) VALUES ('0181000', 'Privatsteuern');
-INSERT INTO gifi (accno,description) VALUES ('0189000', 'Privateinlagen');
-INSERT INTO gifi (accno,description) VALUES ('0200000', 'Außerordentliche Aufwendung');
-INSERT INTO gifi (accno,description) VALUES ('0201000', 'Betriebsfremde Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0202000', 'Periodenfremde Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0210000', 'Zinsen und ähnl.Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0210300', 'Steuerl.abzugsfähig,and.Nebenl.Steu');
-INSERT INTO gifi (accno,description) VALUES ('0210400', 'Steuerl.nicht.abzugsf.ande.Nl.z.Ste');
-INSERT INTO gifi (accno,description) VALUES ('0210700', 'Zinsaufwendung-betriebliche Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0210800', 'Zinsaufwendung-Personsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0210900', 'Zinsaufwendungen an verb.Unternehm.');
-INSERT INTO gifi (accno,description) VALUES ('0211000', 'Zinsaufwendung f.kurzf.Verbindlichk');
-INSERT INTO gifi (accno,description) VALUES ('0212000', 'Zinsaufwendung f.langf.Verbindlichk');
-INSERT INTO gifi (accno,description) VALUES ('0213000', 'Diskontaufwendung');
-INSERT INTO gifi (accno,description) VALUES ('0215000', 'Aufwendungen aus Kursdifferenzen');
-INSERT INTO gifi (accno,description) VALUES ('0216500', 'Aufw.a.d.Währungsumstell.a.d.Euro');
-INSERT INTO gifi (accno,description) VALUES ('0217000', 'Nicht abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0217100', 'Nicht abziehbare Vorsteuer 7%');
-INSERT INTO gifi (accno,description) VALUES ('0217500', 'Nicht abziehbare Vorsteuer 16%');
-INSERT INTO gifi (accno,description) VALUES ('0220000', 'Körperschaftssteuer');
-INSERT INTO gifi (accno,description) VALUES ('0220300', 'Körperschaftssteuer für Vorjahr');
-INSERT INTO gifi (accno,description) VALUES ('0220500', 'Anrechb.Körperschaftsst.vereinn.Kap');
-INSERT INTO gifi (accno,description) VALUES ('0220800', 'Solidaritätszuschlag');
-INSERT INTO gifi (accno,description) VALUES ('0220900', 'Solidaritätszuschlag für Vorjahr');
-INSERT INTO gifi (accno,description) VALUES ('0221000', 'Kapitalertragssteuer');
-INSERT INTO gifi (accno,description) VALUES ('0221300', 'Anrechb.Solidaritätszusch.a.Zinsabs');
-INSERT INTO gifi (accno,description) VALUES ('0221500', 'Zinsabschlagsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0221800', 'Anrechb.Solidari.zuschlag a.Zinsabs');
-INSERT INTO gifi (accno,description) VALUES ('0228000', 'Stnachzahl.Vorj.v.Einkomm u.Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('0228200', 'Sterstat.Vorj.Steuer v.Eink.u.Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('0228400', 'Ertr.a.d.Aufl.v.Rücks.f.St.v.Ein.Er');
-INSERT INTO gifi (accno,description) VALUES ('0228500', 'Steuernachzahlung Vorj.f.sons.Steue');
-INSERT INTO gifi (accno,description) VALUES ('0228700', 'Steuererstattung Vorj.f.sons.Steuer');
-INSERT INTO gifi (accno,description) VALUES ('0228900', 'Erträge a.d.Aufl.v. Rück.f.sons.Ste');
-INSERT INTO gifi (accno,description) VALUES ('0230000', 'Sonstige Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0231000', 'Anlagenabgänge - bei Buchverlust');
-INSERT INTO gifi (accno,description) VALUES ('0231500', 'Anlagenabgänge-Buchgewinn');
-INSERT INTO gifi (accno,description) VALUES ('0232000', 'Verluste Abgang Gegenst.d.Anlagever');
-INSERT INTO gifi (accno,description) VALUES ('0232500', 'Verlust a.d.Abg.v.Gegens.d.Umlaufve');
-INSERT INTO gifi (accno,description) VALUES ('0234000', 'Einstellungen Sopo m.Rückanlageant.');
-INSERT INTO gifi (accno,description) VALUES ('0234500', 'Einstellungen Sopo m.R.(Sonderafa)');
-INSERT INTO gifi (accno,description) VALUES ('0237500', 'Grundsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0240000', 'Forderungsverlust-übliche Höhe');
-INSERT INTO gifi (accno,description) VALUES ('0241000', 'Einstellungen Sopo m.Rückl.(§7g )');
-INSERT INTO gifi (accno,description) VALUES ('0243000', 'Forderungsverluste-unüblich hoch');
-INSERT INTO gifi (accno,description) VALUES ('0245000', 'Einstell.i.d.Pauschalwertbe.z.Forde');
-INSERT INTO gifi (accno,description) VALUES ('0245100', 'Einstell.i.d.Einzelwertb.z.Forderun');
-INSERT INTO gifi (accno,description) VALUES ('0249000', 'Aufwendung aus Verlustübernahme');
-INSERT INTO gifi (accno,description) VALUES ('0249200', 'Abgef.Gewinn aufgr.e.Gewinngemeinsc');
-INSERT INTO gifi (accno,description) VALUES ('0249300', 'Abgef.Gewinnant.an stille Gesellsch');
-INSERT INTO gifi (accno,description) VALUES ('0249500', 'Einst.Kapitalrückl.n.Vorschr.vere.K');
-INSERT INTO gifi (accno,description) VALUES ('0249600', 'Einstellungen in die gesetzl.Rückla');
-INSERT INTO gifi (accno,description) VALUES ('0250000', 'Außerordentliche Erträge');
-INSERT INTO gifi (accno,description) VALUES ('0251000', 'Betriebsfremde Erträge n.außerorden');
-INSERT INTO gifi (accno,description) VALUES ('0252000', 'Periodenfremde Erträge nicht außero');
-INSERT INTO gifi (accno,description) VALUES ('0260000', 'Erträge aus Beteiligten');
-INSERT INTO gifi (accno,description) VALUES ('0261700', 'Gewinn a.Anteila.nicht stbef.Kapita');
-INSERT INTO gifi (accno,description) VALUES ('0261900', 'Erträge a.Beteil.a.verb.Untérnehmer');
-INSERT INTO gifi (accno,description) VALUES ('0262000', 'Erträge a.anderen Wertp u.Ausl.Fina');
-INSERT INTO gifi (accno,description) VALUES ('0265000', 'Sonstige Zinsen und ähnliche Erträge');
-INSERT INTO gifi (accno,description) VALUES ('0265700', 'Zinserträge-betriebliche Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0265800', 'Zinserträge-Körperschaftssteuer');
-INSERT INTO gifi (accno,description) VALUES ('0265900', 'Sons.Zinsen u.ähl.Ertr.a.verb.Unter');
-INSERT INTO gifi (accno,description) VALUES ('0266000', 'Erträge aus Kursdifferenzen');
-INSERT INTO gifi (accno,description) VALUES ('0266500', 'Erträge a.d.Währungumst.a.d. Euro');
-INSERT INTO gifi (accno,description) VALUES ('0267000', 'Diskonerträge');
-INSERT INTO gifi (accno,description) VALUES ('0270000', 'Sonstige Erträge');
-INSERT INTO gifi (accno,description) VALUES ('0270500', 'Sons.Erträge betrieb. u. regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('0271000', 'Ertrag a.d.Zuschreib.d.Anlagevermög');
-INSERT INTO gifi (accno,description) VALUES ('0271500', 'Ertr.a.Zuschreib.d.Umlaufvermögens');
-INSERT INTO gifi (accno,description) VALUES ('0272000', 'Ertr.a.d.Abgang v.Gegens.d.Anlageve');
-INSERT INTO gifi (accno,description) VALUES ('0272500', 'Ertr.a.d.Abg.v.Gegenst.d.Umlaufverm');
-INSERT INTO gifi (accno,description) VALUES ('0273000', 'Ertr.a.Herab.d.Pauschal.z.Forderung');
-INSERT INTO gifi (accno,description) VALUES ('0273100', 'Ertr.a.Herab.d.Einzelw.z.Forderunge');
-INSERT INTO gifi (accno,description) VALUES ('0273200', 'Ertr. aus abgeschriebenen Forderung');
-INSERT INTO gifi (accno,description) VALUES ('0273500', 'Ertr.a.d.Auflösung v.Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0273600', 'Ertr.a.d.steuerl.niedrig.Bewertung');
-INSERT INTO gifi (accno,description) VALUES ('0273700', 'Ertr.a.d..Aufl.v.Sonderp.m.Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('0273800', 'Ertr.a.d.Aufl.v.Sopo.m.Rücklageant.');
-INSERT INTO gifi (accno,description) VALUES ('0273900', 'Erträge Aufl. Sopo m.R.(Ansparafa)');
-INSERT INTO gifi (accno,description) VALUES ('0274000', 'Erträge Auflösung Sopo (stfreie Rü)');
-INSERT INTO gifi (accno,description) VALUES ('0274100', 'Ertr.a.d.Aufl.v.Sonderp.m.Rücklagen');
-INSERT INTO gifi (accno,description) VALUES ('0274200', 'Versicherungsentschädigungen');
-INSERT INTO gifi (accno,description) VALUES ('0274300', 'Investitionszuschüsse-steuerpflicht');
-INSERT INTO gifi (accno,description) VALUES ('0274400', 'Investitionszulage-steuerfrei');
-INSERT INTO gifi (accno,description) VALUES ('0274500', 'Erträge aus Kapitalherabsetzung');
-INSERT INTO gifi (accno,description) VALUES ('0279000', 'Erträge aus Verlustübernahme');
-INSERT INTO gifi (accno,description) VALUES ('0279200', 'Erhalt.Gewinne aufgr.e.Gewinngemein');
-INSERT INTO gifi (accno,description) VALUES ('0279400', 'Erhalt.Gewinn aufgr.e.GAV-TeilGAV');
-INSERT INTO gifi (accno,description) VALUES ('0279500', 'Entnahme aus der Kapitalrücklage');
-INSERT INTO gifi (accno,description) VALUES ('0279600', 'Entnahme a.d. gesetzlichen Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('0286000', 'Gewinnvortrag nach Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0286800', 'Verlustvortrag nach Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0286900', 'Vortrag auf neue Rechnungen');
-INSERT INTO gifi (accno,description) VALUES ('0287000', 'Vorabausschüttung');
-INSERT INTO gifi (accno,description) VALUES ('0289200', 'Verrechnete kalkulatorische Zinsen');
-INSERT INTO gifi (accno,description) VALUES ('0289300', 'Verrechnete kalkulatorische AfA');
-INSERT INTO gifi (accno,description) VALUES ('0299000', 'Aufwendung/Erträge Umrechnungsdiff');
-INSERT INTO gifi (accno,description) VALUES ('0300000', 'Roh,-Hilfs,-und Betriebsstoffe');
-INSERT INTO gifi (accno,description) VALUES ('0309000', 'Energiestoffe (Fertigung)');
-INSERT INTO gifi (accno,description) VALUES ('0310000', 'Fremdleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0315000', 'Leist.v.ausländ.Untern.(0-Regelung)');
-INSERT INTO gifi (accno,description) VALUES ('0320000', 'Wareneingang');
-INSERT INTO gifi (accno,description) VALUES ('0330000', 'Wareneingang 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0340000', 'Wareneingang 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0342000', 'Innergemein.Erwerb 7% VorSt u. Ust');
-INSERT INTO gifi (accno,description) VALUES ('0342500', 'Innergem.Erwerb 16% VorSt u. Ust');
-INSERT INTO gifi (accno,description) VALUES ('0355000', 'Steuerfreier innergem.Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('0360000', 'Nicht abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0370000', 'Nachlässe');
-INSERT INTO gifi (accno,description) VALUES ('0371000', 'Nachlässe 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0372000', 'Nachlässe 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0373000', 'Erhaltene Skonti');
-INSERT INTO gifi (accno,description) VALUES ('0373100', 'Erhaltene Skonti 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0373500', 'Erhaltene Skonti 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0374000', 'Erhaltene Boni');
-INSERT INTO gifi (accno,description) VALUES ('0375000', 'Erhaltene Boni 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0376000', 'Erhaltene Boni 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0377000', 'Erhaltene Rabatte');
-INSERT INTO gifi (accno,description) VALUES ('0378000', 'Erhaltene Rabatte 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0379000', 'Erhaltene Rabatte 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0380000', 'Anschaffungsnebenkosten');
-INSERT INTO gifi (accno,description) VALUES ('0383000', 'Leergut');
-INSERT INTO gifi (accno,description) VALUES ('0385000', 'Zölle und Einfuhrabgaben');
-INSERT INTO gifi (accno,description) VALUES ('0396000', 'Bestandsver.Roh-,Hilfs-.Betriebs.');
-INSERT INTO gifi (accno,description) VALUES ('0397000', 'Bestand Roh-,Hilfs-,u.Betriebsstoff');
-INSERT INTO gifi (accno,description) VALUES ('0398000', 'Bestand Waren');
-INSERT INTO gifi (accno,description) VALUES ('0399000', 'Verrechnete Stoffkosten');
-INSERT INTO gifi (accno,description) VALUES ('0400000', 'Material-und Stoffverbrauch');
-INSERT INTO gifi (accno,description) VALUES ('0410000', 'Löhne und Gehälter');
-INSERT INTO gifi (accno,description) VALUES ('0412400', 'Geschäftsführ.gehälter GmbH-Gesell.');
-INSERT INTO gifi (accno,description) VALUES ('0412500', 'Ehegattengehalt');
-INSERT INTO gifi (accno,description) VALUES ('0412600', 'Tantiemen');
-INSERT INTO gifi (accno,description) VALUES ('0412700', 'Geschäftsführergehälter');
-INSERT INTO gifi (accno,description) VALUES ('0412800', 'Vergütung a.angestellte Mitunterneh');
-INSERT INTO gifi (accno,description) VALUES ('0413000', 'Gesetzlich soziale Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0413700', 'Gesetz.sozi.Aufw.f.Mitunternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0413800', 'Beiträge zur Berufsgenossenschaftr');
-INSERT INTO gifi (accno,description) VALUES ('0414500', 'Freiwillige sozi.Aufw.lohnsteuerfr.');
-INSERT INTO gifi (accno,description) VALUES ('0414900', 'Pauschale Lohnsteuera.sons.Bezüge');
-INSERT INTO gifi (accno,description) VALUES ('0415000', 'Krankengeldzuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('0416000', 'Versorgungskasse');
-INSERT INTO gifi (accno,description) VALUES ('0416500', 'Aufwendung f.Altersversorgung');
-INSERT INTO gifi (accno,description) VALUES ('0417000', 'Vermögenswirksame Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('0417500', 'Fahrtkostenerst.Wohnung/Arbeitsstät');
-INSERT INTO gifi (accno,description) VALUES ('0419000', 'Aushilfslöhne');
-INSERT INTO gifi (accno,description) VALUES ('0419900', 'Lohnsteuer für Aushilfe');
-INSERT INTO gifi (accno,description) VALUES ('0420000', 'Raumkosten');
-INSERT INTO gifi (accno,description) VALUES ('0421000', 'Miete');
-INSERT INTO gifi (accno,description) VALUES ('0422000', 'Pacht');
-INSERT INTO gifi (accno,description) VALUES ('0423000', 'Heizung');
-INSERT INTO gifi (accno,description) VALUES ('0424000', 'Gas,Strom, Wasser');
-INSERT INTO gifi (accno,description) VALUES ('0425000', 'Reinigung');
-INSERT INTO gifi (accno,description) VALUES ('0426000', 'Instandhaltung betrieb.Räume');
-INSERT INTO gifi (accno,description) VALUES ('0427000', 'Abgaben f.betrieb.genutz.Grundstück');
-INSERT INTO gifi (accno,description) VALUES ('0428000', 'Sonstige Raumkosten');
-INSERT INTO gifi (accno,description) VALUES ('0430000', 'Nicht abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('0430100', 'Nicht abziehbare Vorsteuer 7%');
-INSERT INTO gifi (accno,description) VALUES ('0430500', 'Nicht abziehbare Vorsteuer 16%');
-INSERT INTO gifi (accno,description) VALUES ('0432000', 'Gewerbesteuer');
-INSERT INTO gifi (accno,description) VALUES ('0434000', 'Sonstige Betriebssteuern');
-INSERT INTO gifi (accno,description) VALUES ('0435000', 'Verbrauchssteuer');
-INSERT INTO gifi (accno,description) VALUES ('0435500', 'Ökosteuer');
-INSERT INTO gifi (accno,description) VALUES ('0436000', 'Versicherungen');
-INSERT INTO gifi (accno,description) VALUES ('0437000', 'Nettoprä.f.Rückd.künf.Versorgungsle');
-INSERT INTO gifi (accno,description) VALUES ('0438000', 'Beiträge');
-INSERT INTO gifi (accno,description) VALUES ('0439000', 'Sonstige Abgaben');
-INSERT INTO gifi (accno,description) VALUES ('0439600', 'Steuerl.abzugs.Verspä.u.Zwangsgelde');
-INSERT INTO gifi (accno,description) VALUES ('0450000', 'Fahrzugkosten');
-INSERT INTO gifi (accno,description) VALUES ('0451000', 'Kfz-Steuer');
-INSERT INTO gifi (accno,description) VALUES ('0452000', 'Kfz-Versicherungen');
-INSERT INTO gifi (accno,description) VALUES ('0453000', 'Laufende Kfz-Betriebskosten');
-INSERT INTO gifi (accno,description) VALUES ('0454000', 'Kfz-Reparaturen');
-INSERT INTO gifi (accno,description) VALUES ('0455000', 'Garagenmiete');
-INSERT INTO gifi (accno,description) VALUES ('0457000', 'Fremdfahrzeuge');
-INSERT INTO gifi (accno,description) VALUES ('0458000', 'Sonstige Kfz-Kosten');
-INSERT INTO gifi (accno,description) VALUES ('0460000', 'Werbe-und Reisekosten');
-INSERT INTO gifi (accno,description) VALUES ('0461000', 'Werbekosten');
-INSERT INTO gifi (accno,description) VALUES ('0463000', 'Geschenke bis 75 DM');
-INSERT INTO gifi (accno,description) VALUES ('0463500', 'Geschenke bis 75 DM');
-INSERT INTO gifi (accno,description) VALUES ('0463800', 'Geschenke ausschließl.betrieb.genut');
-INSERT INTO gifi (accno,description) VALUES ('0464000', 'Repräsentationskosten');
-INSERT INTO gifi (accno,description) VALUES ('0465000', 'Bewirtungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0465300', 'Aufmerksamkeiten');
-INSERT INTO gifi (accno,description) VALUES ('0465400', 'Nicht abzugsfähige Bewirtungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0465500', 'Nicht abzugsfähige Betriebsausgaben');
-INSERT INTO gifi (accno,description) VALUES ('0466000', 'Reisekosten Arbeitnehmer');
-INSERT INTO gifi (accno,description) VALUES ('0466300', 'Reisekosten Arbeitn.m.Vorsteuerabzu');
-INSERT INTO gifi (accno,description) VALUES ('0466400', 'Reisekosten Arbeitn.Verpflegungmehr');
-INSERT INTO gifi (accno,description) VALUES ('0466600', 'Reisekosten Arbeitn.Übernachtungsau');
-INSERT INTO gifi (accno,description) VALUES ('0466800', 'Kilometerentgelderstattung Arbeitne');
-INSERT INTO gifi (accno,description) VALUES ('0467000', 'Reisekosten Unternehmer');
-INSERT INTO gifi (accno,description) VALUES ('0467400', 'Reisekosten Untern.Verpflegungsmehr');
-INSERT INTO gifi (accno,description) VALUES ('0467600', 'Reisekosten Untern.Übernachtungsauf');
-INSERT INTO gifi (accno,description) VALUES ('0467800', 'Kilometererstattungsgeld Unternehme');
-INSERT INTO gifi (accno,description) VALUES ('0470000', 'Kosten der Warenabgabe');
-INSERT INTO gifi (accno,description) VALUES ('0471000', 'Verpackungsmaterial');
-INSERT INTO gifi (accno,description) VALUES ('0473000', 'Ausgangsfracht');
-INSERT INTO gifi (accno,description) VALUES ('0475000', 'Transportversicherung');
-INSERT INTO gifi (accno,description) VALUES ('0476000', 'Verkaufsprovision');
-INSERT INTO gifi (accno,description) VALUES ('0478000', 'Fremdarbeiten');
-INSERT INTO gifi (accno,description) VALUES ('0479000', 'Aufwand für Gewährleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0480900', 'Sonstige Reparaturen u.Instandhalt.');
-INSERT INTO gifi (accno,description) VALUES ('0481000', 'Mietleasing');
-INSERT INTO gifi (accno,description) VALUES ('0481500', 'Kaufleasing');
-INSERT INTO gifi (accno,description) VALUES ('0482000', 'AfA a.Aufw.f.d.Inga.u.Erw.Geschäfts');
-INSERT INTO gifi (accno,description) VALUES ('0482100', 'AfA a.Aufw.f.d.Währungsumst.a.Euro');
-INSERT INTO gifi (accno,description) VALUES ('0482200', 'Abschreibungen a.immat.Vermögensgeg');
-INSERT INTO gifi (accno,description) VALUES ('0482400', 'Abschreibung a.d.Geschäft-o.Firmenw');
-INSERT INTO gifi (accno,description) VALUES ('0482600', 'Außerplan.AfA a.immat.Vermögensgeg.');
-INSERT INTO gifi (accno,description) VALUES ('0483000', 'Abschreibungen auf Sachanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0484000', 'Außerplanmäßig Abschr.a.Sachanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0485000', 'Abschr.a.Sachanl.steuerl.Sondervors');
-INSERT INTO gifi (accno,description) VALUES ('0485500', 'Sofortabschreibung GWG');
-INSERT INTO gifi (accno,description) VALUES ('0486000', 'Abschreibungen auf aktivierte GWG');
-INSERT INTO gifi (accno,description) VALUES ('0487000', 'Abschreibungen auf Finanzanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0487500', 'Abschr.a.Wertp.d.Umlaufvermögens');
-INSERT INTO gifi (accno,description) VALUES ('0490000', 'Sonstige betriebliche Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('0490500', 'Sons.Aufw.betriebl. und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('0490900', 'Fremdleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0491000', 'Porto');
-INSERT INTO gifi (accno,description) VALUES ('0492000', 'Telefon');
-INSERT INTO gifi (accno,description) VALUES ('0492500', 'Telefax');
-INSERT INTO gifi (accno,description) VALUES ('0493000', 'Bürobedarf');
-INSERT INTO gifi (accno,description) VALUES ('0494000', 'Zeitschriften, Bücher');
-INSERT INTO gifi (accno,description) VALUES ('0494500', 'Fortbildungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0494600', 'Freiwillige Sozialleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0495000', 'Rechts- und Beratungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0495500', 'Buchführungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0495700', 'Abschluß- und Prüfungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0496000', 'Mieten für Einrichtungen');
-INSERT INTO gifi (accno,description) VALUES ('0497000', 'Nebenkosten des Geldverkehrs');
-INSERT INTO gifi (accno,description) VALUES ('0498000', 'Betriebsbedarf');
-INSERT INTO gifi (accno,description) VALUES ('0498500', 'Werkzeuge und Kleingeräte');
-INSERT INTO gifi (accno,description) VALUES ('0498600', 'Sonstige Aufwendungen (Ausbuchung)');
-INSERT INTO gifi (accno,description) VALUES ('0499000', 'Kalkulatorischer Unternehmerlohn');
-INSERT INTO gifi (accno,description) VALUES ('0499200', 'Kalkulatorische Zinsen');
-INSERT INTO gifi (accno,description) VALUES ('0499300', 'Kalkulatorische Aschreibungen');
-INSERT INTO gifi (accno,description) VALUES ('0499600', 'Herstellungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0499700', 'Verwaltungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0499800', 'Vertriebskosten');
-INSERT INTO gifi (accno,description) VALUES ('0700000', 'Unfertige Erzeu.unfert.Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('0705000', 'Unfertige Erzeugnisse');
-INSERT INTO gifi (accno,description) VALUES ('0708000', 'Unfertige Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('0709000', 'In Ausführung befindl. Bauaufträge');
-INSERT INTO gifi (accno,description) VALUES ('0709500', 'In Arbeit befindliche Aufträge');
-INSERT INTO gifi (accno,description) VALUES ('0710000', 'Fertige Erzeugnisse und Waren');
-INSERT INTO gifi (accno,description) VALUES ('0711000', 'Fertige Erzeugnisse (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('0714000', 'Waren (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('0810000', 'Steuerfreie Umsätze §4Nr.8ff UstG');
-INSERT INTO gifi (accno,description) VALUES ('0811000', 'Sonstige steuerfreie Umsätze Inland');
-INSERT INTO gifi (accno,description) VALUES ('0812000', 'Steuerfreie Umsätze §4Nr.1a UstG');
-INSERT INTO gifi (accno,description) VALUES ('0812500', 'Steuerfrei innergem. Lieferungen');
-INSERT INTO gifi (accno,description) VALUES ('0813000', 'Liefe.d.1.Abnehm.innergem.Dreiecksg');
-INSERT INTO gifi (accno,description) VALUES ('0815000', 'Sonstige steuerfreie Umsätze');
-INSERT INTO gifi (accno,description) VALUES ('0819000', 'Sonstige Erlöse (Ausbuchung 0%)');
-INSERT INTO gifi (accno,description) VALUES ('0819100', 'Sonstige Erlöse (Ausbuchung 16%)');
-INSERT INTO gifi (accno,description) VALUES ('0819200', 'Sonstige Erlöse (Ausbuchung 7%)');
-INSERT INTO gifi (accno,description) VALUES ('0820000', 'Erlöse');
-INSERT INTO gifi (accno,description) VALUES ('0830000', 'Erlöse 7%USt');
-INSERT INTO gifi (accno,description) VALUES ('0831000', 'Erlöse Inland stpfl. EG-Lieferung7%');
-INSERT INTO gifi (accno,description) VALUES ('0831500', 'Erlös Inland stpfl.EG-Lieferung 16%');
-INSERT INTO gifi (accno,description) VALUES ('0833900', 'Erl.EG-Land stpfl.so.Leist.(0-Regl)');
-INSERT INTO gifi (accno,description) VALUES ('0840000', 'Erlöse 16% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0850000', 'Provisionserlöse');
-INSERT INTO gifi (accno,description) VALUES ('0852000', 'Erlöse Abfallverwertung');
-INSERT INTO gifi (accno,description) VALUES ('0854000', 'Erlös Leergut');
-INSERT INTO gifi (accno,description) VALUES ('0859000', 'Verrechnete sons. Sachbezüge');
-INSERT INTO gifi (accno,description) VALUES ('0859100', 'Sachbezüge 7% Ust (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('0859500', 'Sachbezüge 16% Ust (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('0860000', 'Sonstige Erlöse betriebl.u.regelmäß');
-INSERT INTO gifi (accno,description) VALUES ('0861000', 'Verrechnete sonstige Sachbezüge');
-INSERT INTO gifi (accno,description) VALUES ('0861100', 'Verr.sons.Sachbezüge 16%USt(Kfz-Ge)');
-INSERT INTO gifi (accno,description) VALUES ('0861400', 'Verrechnete sons.Sachbezüge o. USt');
-INSERT INTO gifi (accno,description) VALUES ('0862500', 'Sons. Erlöse betriebl.u.reg.steuerf');
-INSERT INTO gifi (accno,description) VALUES ('0865000', 'Erlöse Zinsen und Diskotspesen');
-INSERT INTO gifi (accno,description) VALUES ('0870000', 'Erlösschmälerungen');
-INSERT INTO gifi (accno,description) VALUES ('0871000', 'Erlösschmälerung 7% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0872000', 'Erlösschmälerung 16% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0872400', 'Erlösschmäler.a.stfrei.IG Lieferung');
-INSERT INTO gifi (accno,description) VALUES ('0872500', 'Erlösschmä.Inl.stpfl.EG-Lief. 7%USt');
-INSERT INTO gifi (accno,description) VALUES ('0872600', 'Erlösschmä.Inl.stpfl.EG-Lief.16%USt');
-INSERT INTO gifi (accno,description) VALUES ('0872700', 'Erlösschmä.and.EG Land stpfl.Liefer');
-INSERT INTO gifi (accno,description) VALUES ('0873000', 'Gewährte Skonti');
-INSERT INTO gifi (accno,description) VALUES ('0873100', 'Gewährte Skonti 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('0873500', 'Gewährte Skonti 16% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0874000', 'Gewährte Boni');
-INSERT INTO gifi (accno,description) VALUES ('0875000', 'Gewährte Boni 7% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0876000', 'Gewährte Boni 16% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0877000', 'Gewährte Rabatte');
-INSERT INTO gifi (accno,description) VALUES ('0878000', 'Gewährte Rabatte 7% USt.');
-INSERT INTO gifi (accno,description) VALUES ('0879000', 'Gewährte Rabatte 16% Ust.');
-INSERT INTO gifi (accno,description) VALUES ('0880000', 'Erlöse aus Anlagenverkäufen');
-INSERT INTO gifi (accno,description) VALUES ('0880100', 'Erlöse aus Anlagenverkäufen 16%USt.');
-INSERT INTO gifi (accno,description) VALUES ('0882000', 'Erlöse aus Anlageverkäufen 16%Ust');
-INSERT INTO gifi (accno,description) VALUES ('0882900', 'Erl.a.Anlagenverk.bei Buchgewinn');
-INSERT INTO gifi (accno,description) VALUES ('0890000', 'Unentgeldliche Wertabgaben');
-INSERT INTO gifi (accno,description) VALUES ('0890500', 'Entnahme v. Gegenst.o.USt.');
-INSERT INTO gifi (accno,description) VALUES ('0891000', 'Entnahme außerhalb d.Untern.16%USt.');
-INSERT INTO gifi (accno,description) VALUES ('0891500', 'Entnah.d.U.Zweckaußerh.d.Untn 7%USt');
-INSERT INTO gifi (accno,description) VALUES ('0891800', 'Entn.d.Untern.außerh.d.Untern.o.USt');
-INSERT INTO gifi (accno,description) VALUES ('0892000', 'Verw.v.Gegens.außerh.Untern.16%USt.');
-INSERT INTO gifi (accno,description) VALUES ('0892500', 'Unentgeldl.Erbring.sons.Leis.16%USt');
-INSERT INTO gifi (accno,description) VALUES ('0893200', 'Unentgelt.Erbring.sons.Leist. 7%Ust');
-INSERT INTO gifi (accno,description) VALUES ('0893500', 'Unentgeltl.Zuwend.v.Gegens. 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('0893900', 'Unentgeldl.Zuw.v.Gegens.ohne Ust');
-INSERT INTO gifi (accno,description) VALUES ('0894000', 'Unentgeltl.Zuw.v Waren 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('0894500', 'Unentgeltl.Zuw.von Waren 7% Ust');
-INSERT INTO gifi (accno,description) VALUES ('0895000', 'Nicht steuerbare Umsätze');
-INSERT INTO gifi (accno,description) VALUES ('0895500', 'Umsatzsteuervergütungen');
-INSERT INTO gifi (accno,description) VALUES ('0896000', 'Bestandsveränderung-unfertige Erzeu');
-INSERT INTO gifi (accno,description) VALUES ('0897000', 'Bestandsveränderung-unfertige Leist');
-INSERT INTO gifi (accno,description) VALUES ('0897500', 'Bestandsverä.i.Ausfü.befi.Bauaufträ');
-INSERT INTO gifi (accno,description) VALUES ('0897700', 'Bestandsverä.i.Arbeit befindl.Auftr');
-INSERT INTO gifi (accno,description) VALUES ('0898000', 'Bestandsverä.fertige Erzeugnisse');
-INSERT INTO gifi (accno,description) VALUES ('0899000', 'Andere aktivierte Eigenleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0900000', 'Saldenverträge,Sachkonten');
-INSERT INTO gifi (accno,description) VALUES ('0900800', 'Saldenverträge,Debitoren');
-INSERT INTO gifi (accno,description) VALUES ('0900900', 'Saldenverträge,Kreditoren');
-INSERT INTO gifi (accno,description) VALUES ('0906000', 'Offene Posten aus 1990');
-INSERT INTO gifi (accno,description) VALUES ('0906900', 'Offene Posten aus 1999');
-INSERT INTO gifi (accno,description) VALUES ('0907000', 'Offene Posten aus 2000');
-INSERT INTO gifi (accno,description) VALUES ('0909000', 'Summenvortragskonto');
-INSERT INTO gifi (accno,description) VALUES ('0922000', 'Gezeichnetes kapital in DM');
-INSERT INTO gifi (accno,description) VALUES ('0922100', 'Gezeichnetes Kapital in Euro');
-INSERT INTO gifi (accno,description) VALUES ('0923000', 'Baukostenzuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('0923200', 'Investitionszulagen');
-INSERT INTO gifi (accno,description) VALUES ('0923400', 'Investitionszuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('0924500', 'Forde.a.Anlageverk.sons.Vermögensge');
-INSERT INTO gifi (accno,description) VALUES ('0925000', 'Eigenkapitalersetzende Ges''terdarl.');
-INSERT INTO gifi (accno,description) VALUES ('0926000', 'Kurzfristige Rückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0926200', 'Mittelfristige Rückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0926400', 'Langfristige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0928000', 'Bemessungsgrundlage IG Erwerb 16%');
-INSERT INTO gifi (accno,description) VALUES ('0928100', 'Gegenkonto Bmsgrl. IG Erwerb 16%');
-INSERT INTO gifi (accno,description) VALUES ('0928200', 'Bemessungsgrundlage IG Erwerb 7%');
-INSERT INTO gifi (accno,description) VALUES ('0928400', 'Gegenkonto Bmsgrl. IG Erwerb 7%');
-INSERT INTO gifi (accno,description) VALUES ('0988100', 'Verrechnungskonto Abgang');
-INSERT INTO gifi (accno,description) VALUES ('0988200', 'Verrechnungskonto erh. Anzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0988210', 'Verrechnungskto Anzahlungen netto');
-INSERT INTO gifi (accno,description) VALUES ('0988220', 'Verrechnungskto.Anzahlungen brutto');
-INSERT INTO gifi (accno,description) VALUES ('0988300', 'Verrechnungskonto gel.Anzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0988400', 'Statistisches Konto Konzern AfA');
-INSERT INTO gifi (accno,description) VALUES ('0988500', 'Statistisches Konto kalkulator.AfA');
-INSERT INTO gifi (accno,description) VALUES ('0988600', 'Statistisches Konto außerplanm AfA');
-INSERT INTO gifi (accno,description) VALUES ('0988700', 'Statistisches Konto AfA (Konzern)');
-INSERT INTO gifi (accno,description) VALUES ('0988800', 'Statistisches Konto Sonderafa');
-INSERT INTO gifi (accno,description) VALUES ('0988900', 'Statistisches Konto AfA (SBil)');
-INSERT INTO gifi (accno,description) VALUES ('0989800', 'Statistisches Konto AfA (Kalkul.)');
-INSERT INTO gifi (accno,description) VALUES ('0989900', 'Statistisches Konto AfA');
-INSERT INTO gifi (accno,description) VALUES ('0999999', 'Fehlerauffangkonto');
diff --git a/sql-ledger/sql/Germany-SKR03-chart.sql b/sql-ledger/sql/Germany-SKR03-chart.sql
deleted file mode 100644
index 2d3261a..0000000
--- a/sql-ledger/sql/Germany-SKR03-chart.sql
+++ /dev/null
@@ -1,264 +0,0 @@
--- General COA
---
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('420','Büroeinrichtung','A','A','','420');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('430','Ladeneinrichtung','A','A','','430');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('440','Werkzeuge','A','A','','440');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('450','Einbauten','A','A','','450');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('460','Gerüst- und Schalungsmaterial','A','A','','460');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('480','Geringwertige Wirtschaftsgüter bis DM 800,-','A','A','','480');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('490','Sonstige Betriebs- und Geschäftsausstattung','A','A','','490');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('650','Verb. gg. Kreditinstituten - Restlaufz. größer 5 Jahre','A','L','','650');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1000','Kasse','A','A','AR_paid:AP_paid','1000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1200','Bank-Giro','A','A','AR_paid:AP_paid','1200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1400','Forderungen aus Lief. und Leist. Kundengruppe 0','A','A','AR','1400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1540','Steuerüberzahlungen','A','A','AR','1540');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1542','Steuererstattungsansprüche gg. anderen EU-Ländern','A','A','AR','1542');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1545','Umsatzsteuerforderungen','A','A','AR','1545');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1548','Vorsteuer im Folgejahr abziehbar','A','A','AR','1548');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1570','Abziehbare Vorsteuer','A','A','AR_tax:AP_tax:CT_tax','1570');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1571','Abziehbare Vorsteuer, 7%','A','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','1571');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1575','Abziehbare Vorsteuer, 16%','A','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','1575');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1576','Abziehbare Vorsteuer, 15%','A','A','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','1576');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1577','Vorsteuer nach allg. Durchschnittssätzen UStVA KZ 63','A','A','AR_tax:AP_tax:CT_tax','1577');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1775','Umsatzsteuer, 16%','A','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','1775');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1776','Umsatzsteuer, 15%','A','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax','1776');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1780','Umsatzsteuer - Vorauszahlungen','A','L','','1780');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1781','Umsatzsteuer - Vorauszahlungen 1/11','A','L','','1781');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1782','Nachsteuer, UStVA KZ 65','A','L','','1782');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1789','Umsatzsteuer laufendes Jahr','A','L','','1789');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1790','Umsatzsteuer Vorjahr','A','L','','1790');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1791','Umsatzsteuer frühere Jahre','A','L','','1791');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1820','Sonderausg. beschr. abzugsf. (Privat Vollhaft./Einzelu.)','A','','','1820');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1830','Sonderausg. unbeschr. abzugsf. (Privat Vollhaft./Einzelu.)','A','','','1830');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1840','Privatspenden (Privat Vollhafter / Einzelunternehmer)','A','','','1840');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1850','Außergewöhnliche Belastungen (Privat Vollhaft. / Einzelunt.)','A','','','1850');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1890','Privateinlagen (Privat Vollhafter / Einzelunternehmer)','A','','','1890');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2010','Betriebsfremde Aufw. (soweit nicht außerordentlich)','A','','','2010');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2020','Periodenfremde Aufw. (soweit nicht außerordentlich)','A','','','2020');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2100','Zinsen und ähnliche Aufwendungen','A','','','2100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2103','Steuerlich abzugsfähige, andere Nebenleistungen zu Steuern','A','','','2103');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2104','Steuerlich nicht abzugsfähige, andere Nebenleistungen zu Steuern','A','','','2104');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2107','Zinsaufwendungen §233a AO betriebliche Steuern','A','','','2107');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2108','Zinsaufw. §233a, §234, §237 AO Personenst. §8 GewStG','A','','','2108');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2109','Zinsaufwendungen an verbundene Unternehmen','A','','','2109');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2110','Zinsaufwendungen für kurzfristige Verbindlichkeiten','A','','','2110');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3410','Wareneingang, 16% Vorsteuer','A','','','3410');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3736','Erhaltene Skonti, 16% Vorsteuer','A','','','3736');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3740','Erhaltene Boni','A','','','3740');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3750','Erhaltene Boni, 7% Vorsteuer','A','','','3750');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3760','Erhaltene Boni, 15%+16% Vorsteuer','A','','','3760');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3762','Erhaltene Boni, 16% Vorsteuer','A','','','3762');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3764','Erhaltene Boni, 15% Vorsteuer','A','','','3764');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3800','Anschaffungsnebenkosten','A','','','3800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3830','Leergut','A','','','3830');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3850','Zölle und Einfuhrabgaben','A','','','3850');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3960','Bestandsv. Roh-, Hilfs- u. Betriebsstoffe / bezogene Waren','A','','','3960');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3970','Bestand Roh-, Hilfs- und Betriebsstoffe','A','','','3970');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3980','Bestand Waren','A','','','3980');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3990','Verrechnete Stoffkosten','A','','','3990');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4000','Material- und Stoffverbrauch','A','E','AP_amount','4000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4100','Löhne und Gehälter','A','E','AP_amount','4100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4110','Löhne','A','E','AP_amount','4110');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4120','Gehälter','A','E','AP_amount','4120');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4124','Geschäftsführergehälter der GmbH-Gesellschafter','A','E','AP_amount','4124');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4125','Ehegattengehalt','A','E','AP_amount','4125');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4126','Tantiemen','A','E','AP_amount','4126');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4127','Geschäftsführergehälter','A','E','AP_amount','4127');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4128','Vergütungen an angestellte Mitunternehmer §15 EStG','A','E','AP_amount','4128');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4130','Gesetzliche soziale Aufwendungen','A','E','AP_amount','4130');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4137','Gesetzliche soziale Aufw. für Mitunternehmer §15 EStG','A','E','AP_amount','4137');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4138','Beiträge zur Berufsgenossenschaft','A','E','AP_amount','4138');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1360','Geldtransit Bank 1','A','A','','1360');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4140','Freiw. soziale Aufwendungen (lohnsteuerfrei)','A','E','AP_amount','4140');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4145','Freiw. soziale Aufwendungen (lohnsteuerpflichtig)','A','E','AP_amount','4145');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4149','Pauschale Lohnsteuer auf s. Bezüge (z.B. Fahrtkostenzuschuß)','A','E','AP_amount','4149');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4150','Krankengeldzuschüsse','A','E','AP_amount','4150');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4160','Versorgungskassen','A','E','AP_amount','4160');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4165','Aufwendungen für die Altersversorgung','A','E','AP_amount','4165');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4167','Pauschale Lohnsteuer auf s. Bezüge (z.B. Direktversicherung)','A','E','AP_amount','4167');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4168','Aufw. f. die Altersversorgung f. Mitunternehmer §15 EStG','A','E','AP_amount','4168');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4169','Aufwendungen für Unterstützung','A','E','AP_amount','4169');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4170','Vermögenswirksame Leistungen','A','E','AP_amount','4170');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4175','Fahrtkostenerstattung - Wohnung / Arbeitsstätte','A','E','AP_amount','4175');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4180','Bedienungsgelder','A','E','AP_amount','4180');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4190','Aushilfslöhne','A','E','AP_amount','4190');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4199','Lohnsteuer für Aushilfen','A','E','AP_amount','4199');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4200','Raumkosten','A','E','AP_amount','4200');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4210','Miete','A','E','AP_amount','4210');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4218','Gewerbesteuerlich zu berücks. Miete §8 GewStG','A','E','AP_amount','4218');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4219','Vergütung an Mitu. f. mietw. Überl. v. Wirtschaftsg. §15EStG','A','E','AP_amount','4219');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4220','Pacht','A','E','AP_amount','4220');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4228','Gewerbesteuerlich zu berücks. Pacht §8 GewStG','A','E','AP_amount','4228');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4229','Vergütung an Mitu. f. pachtw. Überl. v. Wirtschaftsg.§15EStG','A','E','AP_amount','4229');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4230','Heizung','A','E','AP_amount','4230');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4240','Gas, Strom, Wasser (Verwaltung, Vertrieb)','A','E','AP_amount','4240');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4250','Reinigung','A','E','AP_amount','4250');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4260','Instandhaltung betrieblicher Räume','A','E','AP_amount','4260');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4270','Abgaben für betrieblich genutzten Grundbesitz','A','E','AP_amount','4270');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4280','Sonstige Raumkosten','A','E','AP_amount','4280');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4320','Gewerbesteuer (Vorauszahlung)','A','E','AP_amount','4320');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4330','Gewerbeertragsteuer','A','E','AP_amount','4330');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4335','Gewerbekapitalsteuer','A','E','AP_amount','4335');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4340','Sonstige Betriebsteuern','A','E','AP_amount','4340');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4350','Verbrauchsteuer','A','E','AP_amount','4350');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4360','Versicherungen','A','E','AP_amount','4360');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4380','Beiträge','A','E','AP_amount','4380');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4390','Sonstige Abgaben','A','E','AP_amount','4390');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4396','Steuerlich abzugsfähige Verspätungszuschläge und Zwangsgelder','A','E','AP_amount','4396');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4397','Steuerlich nicht abzugsfähige Verspätungszuschläge und Zwangsgelder','A','E','AP_amount','4397');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4400','Besondere Kosten (zur freien Verfügung)','A','E','AP_amount','4400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4500','Fahrzeugkosten','A','E','AP_amount','4500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4510','Kfz-Steuern','A','E','AP_amount','4510');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4520','Kfz-Versicherungen','A','E','AP_amount','4520');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4530','Laufende Kfz-Betriebskosten','A','E','AP_amount','4530');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4540','Kfz-Reparaturen','A','E','AP_amount','4540');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4550','Garagenmieten','A','E','AP_amount','4550');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4570','Fremdfahrzeuge','A','E','AP_amount','4570');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4580','Sonstige Kfz-Kosten','A','E','AP_amount','4580');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4600','Werbe- und Reisekosten','A','E','AP_amount','4600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4610','Werbekosten','A','E','AP_amount','4610');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4630','Geschenke bis DM 75,00','A','E','AP_amount','4630');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4635','Geschenke über DM 75,00','A','E','AP_amount','4635');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4638','Geschenke ausschließlich betrieblich genutzt','A','E','AP_amount','4638');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4640','Repräsentationskosten','A','E','AP_amount','4640');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4650','Bewirtungskosten','A','E','AP_amount','4650');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4653','Aufwerksamkeiten','A','E','AP_amount','4653');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4654','Nicht abzugsfähige Bewirtungskosten','A','E','AP_amount','4654');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4655','Nicht abzugsfähige Betriebsausgaben','A','E','AP_amount','4655');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4660','Reisekosten Arbeitnehmer','A','E','AP_amount','4660');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4666','Reisekost. Arbeitn., 12,3%/13,1% VSt Verpfl.Mehr- / Übern.Aufw.','A','E','AP_amount','4666');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4667','Reisekost. Arbeitn., 9,8%/10,5% VSt Gesamtpauschal.','A','E','AP_amount','4667');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4670','Reisekosten Unternehmer','A','E','AP_amount','4670');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4675','Reisekosten Unternehmer, 9,8/10,5% VSt sonst.Gesamtpauschal.','A','E','AP_amount','4675');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4676','Reisekost. Untern., 12,3%/13,1% VSt Verpfl.Mehr- / Übern.Aufw.','A','E','AP_amount','4676');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4677','Reisekosten Unternehmer, 9,8%/10,5% VSt Verpfl.Mehraufw. Gesamtpauschal.','A','E','AP_amount','4677');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4678','Km-Geld Erstattung, Unternehmer, 5,7%/6,1% VSt','A','E','AP_amount','4678');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4685','Km-Geld-Erstattung, Arbeitnehmer 8,2%/8,7% VSt','A','E','AP_amount','4685');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4700','Kosten der Warenabgabe','A','E','AP_amount:IC_expense:IC_cogs','4700');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4710','Verpackungsmaterial','A','E','AP_amount','4710');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4730','Ausgangsfrachten','A','E','AP_amount','4730');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4750','Transportversicherungen','A','E','AP_amount','4750');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4760','Verkaufsprovisionen','A','E','AP_amount','4760');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4780','Fremdarbeiten','A','E','AP_amount','4780');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4790','Aufwand für Gewährleistungen','A','E','AP_amount','4790');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4800','Reparat. u. Inst. v. Maschinen u. technischen Anlagen','A','E','AP_amount','4800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4805','Reparat. u. Inst. v. and. Anl. d. Betr.- u. Geschäftsausst.','A','E','AP_amount','4805');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4809','Sonstige Reparaturen und Instandhaltungen','A','E','AP_amount','4809');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4810','Mietleasing','A','E','AP_amount','4810');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4815','Kaufleasing','A','E','AP_amount','4815');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4820','Abschr. a. Aufw. f.d. Ingangs. u. Erw. des Geschäftsbetr.','A','E','AP_amount','4820');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4822','Abschr. a. immaterielle Vermögensgegenstände','A','E','AP_amount','4822');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4824','Abschreibung auf den Geschäfts- oder Firmenwert','A','E','AP_amount','4824');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4826','Außerplanm. Abschr. a. immaterielle Vermögensgegenstände','A','E','AP_amount','4826');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4830','Abschreibungen auf Sachanlagen','A','E','AP_amount','4830');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4840','Außerplanm. Abschreibungen auf Sachanlagen','A','E','AP_amount','4840');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4850','Abschr. a. Sachanl. aufgrund steuerl. Sondervorschriften','A','E','AP_amount','4850');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4855','Sofortabschreibung geringwertiger Wirtschaftsgüter','A','E','AP_amount','4855');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4860','Abschreibung auf aktivierte, geringwertige Wirtschaftsgüter','A','E','AP_amount','4860');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4865','Außerplanmäßige Abschr. a. aktivierte GWG','A','E','AP_amount','4865');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4870','Abschreibungen auf Finanzanlagen','A','E','AP_amount','4870');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4872','Abschr. aufgrund v. Verlustant. an Mitunt. §8 GewStG','A','E','AP_amount','4872');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4874','Abschr. a. Finanzanl. aufgrund steuerl. Sondervorschriften','A','E','AP_amount','4874');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4875','Abschreibungen auf Wertpapiere des Umlaufvermögens','A','E','AP_amount','4875');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4880','Abschr. a. Umlaufv. ohne Wertpapiere (soweit unübl. Höhe)','A','E','AP_amount','4880');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4882','Abschr. a. Umlaufv. steuerrechtl. bedingt (unübl. Höhe)','A','E','AP_amount','4882');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4887','Abschr. a. Umlaufv., steuerrechtlich bedingt (übl. Höhe)','A','E','AP_amount','4887');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4890','Vorwegn. künftiger Wertschw. im Umlaufv. (unübl. Höhe)','A','E','AP_amount','4890');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4900','Sonstige betriebliche Aufwendungen','A','E','AP_amount','4900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4905','Sonstige Aufwendungen betrieblich und regelmäßig','A','E','AP_amount','4905');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4910','Porto','A','E','AP_amount','4910');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4920','Telefon','A','E','AP_amount','4920');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4925','Telefax, Fernschreiber','A','E','AP_amount','4925');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4930','Bürobedarf','A','E','AP_amount','4930');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4940','Zeitschriften, Bücher','A','E','AP_amount','4940');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4945','Fortbildungskosten','A','E','AP_amount','4945');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4946','Freiwillige Sozialleistungen','A','E','AP_amount','4946');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4948','Vergütungen an freiberufliche Mitunternehmer §15 EStG','A','E','AP_amount','4948');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4950','Rechts- und Beratungskosten','A','E','AP_amount','4950');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4955','Buchführungskosten','A','E','AP_amount','4955');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4957','Abschluß- und Prüfungskosten','A','E','AP_amount','4957');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4960','Mieten für Einrichtungen','A','E','AP_amount','4960');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4968','Gewerbest. zu berücks. Miete f. Einrichtungen §8 GewStG','A','','','4968');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4969','Aufwendungen für Abraum- und Abfallbeseitigung','A','E','AP_amount','4969');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4970','Nebenkosten des Geldverkehrs','A','E','AP_amount','4970');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4980','Betriebsbedarf','A','E','AP_amount','4980');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4985','Werkzeuge und Kleingeräte','A','E','AP_amount','4985');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4996','Herstellungskosten','A','E','AP_amount','4996');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4997','Verwaltungskosten','A','E','AP_amount','4997');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4998','Vertriebskosten','A','E','AP_amount','4998');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4999','Gegenkonto 49960-49980','A','','','4999');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7140','Fertige Waren (Bestand)','A','A','IC','7140');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8100','Steuerfreie Umsätze o. VSt-Abzug §4 Nr.8 ff. UStG','A','I','AR_amount:IC_sale','8100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8500','Provisionserlöse','A','I','AR_amount:IC_sale','8500');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8504','Provisionserlöse steuerfrei (§4 Nr.8ff UStG)','A','I','AR_amount:IC_sale','8504');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8505','Provisionserlöse steuerfrei (§4 Nr.5 UStG)','A','I','AR_amount:IC_sale','8505');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8506','Provisionserlöse, 7% USt','A','I','AR_amount:IC_sale','8506');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8507','Provisionserlöse, 15% Ust','A','I','AR_amount:IC_sale','8507');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8508','Provisionserlöse, 15%/16% USt','A','I','AR_amount:IC_sale','8508');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8509','Provisionserlöse, 16% Ust','A','I','AR_amount:IC_sale','8509');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8591','Sachbezüge, 7% USt (Waren)','A','I','AR_amount:IC_sale','8591');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8595','Sachbezüge, 15%/16% USt (Waren)','A','I','AR_amount:IC_sale','8595');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8596','Sachbezüge, 16% USt (Waren)','A','I','AR_amount:IC_sale','8596');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8597','Sachbezüge, 15% USt (Waren)','A','I','AR_amount:IC_sale','8597');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8630','Sonstige Erlöse betrieblich und regelmäßig, 7% USt','A','I','AR_amount:IC_sale','8630');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8645','Sonstige Erlöse betrieblich und regelmäßig, 16% Ust','A','I','AR_amount:IC_sale','8645');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8730','Gewährte Skonti','A','','','8730');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8731','Gewährte Skonti, 7% USt','A','','','8731');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8735','Gewährte Skonti, 16% Ust','A','','','8735');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8740','Gewährte Boni','A','','','8740');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8750','Gewährte Boni, 7% USt','A','','','8750');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8762','Gewährte Boni, 16% Ust','A','','','8762');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8770','Gewährte Rabatte','A','','','8770');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8780','Gewährte Rabatte, 7% USt','A','','','8780');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8792','Gewährte Rabatte, 16% Ust','A','','','8792');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8800','Erlöse aus Anlagenverkäufen','A','','','8800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8801','Erlöse aus Anlagenverkäufen 15%/16% USt (bei Buchverlust)','A','','','8801');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8810','Erlöse aus Anlagenverkäufen 16% USt (bei Buchverlust)','A','','','8810');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8815','Erlöse aus Anlagenverkäufen 15% USt (bei Buchverlust)','A','','','8815');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8820','Erlöse aus Anlagenverkäufen 15%/16% USt (bei Buchgewinn)','A','','','8820');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8829','Erlöse aus Anlagenverkäufen (bei Buchgewinn)','A','','','8829');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8830','Erlöse aus Anlagenverkäufen 16% USt (bei Buchgewinn)','A','','','8830');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8835','Erlöse aus Anlagenverkäufen 15% USt (bei Buchgewinn)','A','','','8835');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8900','Eigenverbrauch','A','','','8900');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8905','Entnahme Gegenstände ohne USt','A','','','8905');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8908','Entnahme von Gegenstände, 16% USt §1 Abs.1 Nr.2a UStG','A','','','8908');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8909','Entnahme von Gegenstände, 15% USt §1 Abs.1 Nr.2a UStG','A','','','8909');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8910','Entnahme von Gegenstände, 15%/16% USt §1 Abs.1 Nr.2a UStG','A','','','8910');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8915','Entnahme von Gegenstände, 7% USt §1 Abs.1 Nr.2a UStG','A','','','8915');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8920','Entnahme v. sonst. Leist., 15%/16% USt §1 A.1 Nr.2b UStG','A','','','8920');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8930','Entnahme v. sonst. Leist., 7% USt §1 A.1 Nr.2b UStG','A','','','8930');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8937','Entnahme v. sonst. Leist., 16% USt §1 A.1 Nr.2b UStG','A','','','8937');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8938','Entnahme v. sonst. Leist., 15% USt §1 A.1 Nr.2b UStG','A','','','8938');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8939','Entnahme v. sonst. Leist., ohne USt §1 A.1 Nr.2b UStG','A','','','8939');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8941','Eigenverbr., 7% Ust §4 A.1 Nr.5 1-7, A.7 EStG','A','','','8941');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8942','Eigenverbr., 16% Ust §4 A.1 Nr.5 1-7, A.7 EStG','A','','','8942');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8944','Eigenverbr., ohne Ust §4 A.1 Nr.5 1-7, A.7 EStG','A','','','8944');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8950','Nicht steuerbare Umsätze','A','','','8950');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8955','Umsatzsteuervergütungen','A','','','8955');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8960','Bestandsveränd. - unfertige Erzeugnisse','A','','','8960');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8970','Bestandsveränd. - unfertige Leistungen','A','','','8970');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8975','Bestandsveränd. - in Ausführung befindliche Bauaufträge','A','','','8975');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8977','Bestandsveränd. - in Arbeit befindliche Aufträge','A','','','8977');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8980','Bestandsveränd. - fertige Erzeugnisse','A','','','8980');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8990','Bestandsveränd. - andere aktivierte Eigenleistungen','A','','','8990');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9000','Saldenvorträge Sachkonten','A','','','9000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9008','Saldenvorträge Debitoren','A','','','9008');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9009','Saldenvorträge Kreditoren','A','','','9009');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9100','Saldovortragskonto der Statistikkonten','A','','','9100');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1800','Privatentn. allg. (Privat Vollhafter / Einzelunternehmer)','A','Q','','1800');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2000','Außerordentliche Aufwendungen','A','A','','2000');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1600','Verb. aus Lief. und Leist. Lieferantengruppe 0','A','L','AP:CT_tax','1600');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3400','Wareneingang, 16% Vorsteuer','A','E','AP_amount:CT_tax','3400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8400','Umsatzerlöse 16%','A','I','AR_amount:IC_sale:CT_tax','8400');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8840','Erträge aus Kursdifferenzen','A','I','AR_amount:IC_sale:IC_income','8840');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1571'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1575'),0.16);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1576'),0.15);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1775'),0.16);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '1776'),0.15);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '3400'),0.16);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '8400'),0.16);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '7140'), income_accno_id = (select id from chart where accno = '8400'), expense_accno_id = (select id from chart where accno = '4700'), fxgain_accno_id = (select id from chart where accno = '8840'), fxloss_accno_id = (select id from chart where accno = '8840'), curr = 'EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Germany-SKR03-gifi.sql b/sql-ledger/sql/Germany-SKR03-gifi.sql
deleted file mode 100644
index 7fc0ff6..0000000
--- a/sql-ledger/sql/Germany-SKR03-gifi.sql
+++ /dev/null
@@ -1,1083 +0,0 @@
--- Kontenrahmen für Deutschland
---
-INSERT INTO gifi (accno,description) VALUES ('0001', 'Aufw. f. die Ingangsetzung u. Erweit. des Geschäftsbetr.');
-INSERT INTO gifi (accno,description) VALUES ('0002', 'Aufw. f. die Währungsumstellung auf den EURO');
-INSERT INTO gifi (accno,description) VALUES ('0010', 'Konzess., gew. Schutzr. u. ähnl. Rechte/Werte sowie Liz.');
-INSERT INTO gifi (accno,description) VALUES ('0015', 'Konzessionen');
-INSERT INTO gifi (accno,description) VALUES ('0020', 'Gewerbliche Schutzrechte');
-INSERT INTO gifi (accno,description) VALUES ('0025', 'Ähnliche Rechte und Werte');
-INSERT INTO gifi (accno,description) VALUES ('0027', 'EDV-Software');
-INSERT INTO gifi (accno,description) VALUES ('0030', 'Lizenzen an gewerbl. Schutzr. u. ähnl. Rechten u. Werten');
-INSERT INTO gifi (accno,description) VALUES ('0035', 'Geschäfts- oder Firmenwert');
-INSERT INTO gifi (accno,description) VALUES ('0038', 'Anzahlungen auf Geschäfts- oder Firmenwert');
-INSERT INTO gifi (accno,description) VALUES ('0039', 'Anzahlungen auf immaterielle Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('0040', 'Verschmelzungsmehrwert');
-INSERT INTO gifi (accno,description) VALUES ('0050', 'Grundst., gl. Rechte/Bauten einschl. Bauten a. fr. Grundst.');
-INSERT INTO gifi (accno,description) VALUES ('0060', 'Grundstücke und grundstücksgleiche Rechte ohne Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0065', 'Unbebaute Grundstücke');
-INSERT INTO gifi (accno,description) VALUES ('0070', 'Grundstücksgleiche Rechte (Erbbaurecht, Dauerwohnrecht)');
-INSERT INTO gifi (accno,description) VALUES ('0075', 'Grundstücke mit Substanzverzehr');
-INSERT INTO gifi (accno,description) VALUES ('0079', 'Anzahl. a. Grundst. u. grundstücksgl. Rechte ohne Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0080', 'Bauten auf eigenen Grundst. und grundstücksgl. Rechten');
-INSERT INTO gifi (accno,description) VALUES ('0085', 'Grundstückswerte eigener bebauter Grundsstücke');
-INSERT INTO gifi (accno,description) VALUES ('0090', 'Geschäftsbauten');
-INSERT INTO gifi (accno,description) VALUES ('0100', 'Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0110', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0111', 'Außenanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0112', 'Hof- u. Wegebefestigungen');
-INSERT INTO gifi (accno,description) VALUES ('0113', 'Einrichtungen für Geschäfts- u. Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0115', 'Andere Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0120', 'Geschäfts-, Fabrik- u. andere Bauten im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0129', 'Anz. a. Geschäfts-, Fabrik-, u.a. Bauten a. eig. Grundst+Rechte');
-INSERT INTO gifi (accno,description) VALUES ('0140', 'Wohnbauten');
-INSERT INTO gifi (accno,description) VALUES ('0145', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0146', 'Außenanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0147', 'Hof- und Wegebefestigungen');
-INSERT INTO gifi (accno,description) VALUES ('0148', 'Einrichtungen für Wohnbauten');
-INSERT INTO gifi (accno,description) VALUES ('0150', 'Wohnbauten im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0159', 'Anz. auf Wohnbauten auf eig. Grundstücken u. grundst.gl. Rechten');
-INSERT INTO gifi (accno,description) VALUES ('0160', 'Bauten auf fremden Grundstücken');
-INSERT INTO gifi (accno,description) VALUES ('0165', 'Geschäftsbauten');
-INSERT INTO gifi (accno,description) VALUES ('0170', 'Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0175', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0176', 'Außenanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0177', 'Hof- und Wegebefestigen');
-INSERT INTO gifi (accno,description) VALUES ('0178', 'Einrichtungen für Geschäfts- und Fabrikbauten');
-INSERT INTO gifi (accno,description) VALUES ('0179', 'Andere Bauten');
-INSERT INTO gifi (accno,description) VALUES ('0180', 'Geschäfts-, Fabrik- und andere Bauten im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0189', 'Anzahl. a. Geschäfts-, Fabrik-, u.a. Bauten a. fr. Grundst.');
-INSERT INTO gifi (accno,description) VALUES ('0190', 'Wohnbauten');
-INSERT INTO gifi (accno,description) VALUES ('0191', 'Garagen');
-INSERT INTO gifi (accno,description) VALUES ('0192', 'Außenanlagen');
-INSERT INTO gifi (accno,description) VALUES ('0193', 'Hof- und Wegebefestigungen');
-INSERT INTO gifi (accno,description) VALUES ('0194', 'Einrichtungen für Wohnbauten');
-INSERT INTO gifi (accno,description) VALUES ('0195', 'Wohnbauten im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0199', 'Anzahlungen auf Wohnbauten auf fremden Grundstücken');
-INSERT INTO gifi (accno,description) VALUES ('0200', 'Technische Anlagen und Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0210', 'Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0220', 'Maschinengebundene Werkzeuge');
-INSERT INTO gifi (accno,description) VALUES ('0240', 'Maschinelle Anlagen');
-INSERT INTO gifi (accno,description) VALUES ('0260', 'Transportanlagen und ähnliches');
-INSERT INTO gifi (accno,description) VALUES ('0280', 'Betriebsvorrichtungen');
-INSERT INTO gifi (accno,description) VALUES ('0290', 'Technische Anlagen und Maschinen im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0299', 'Anzahlungen auf technische Anlagen und Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('0300', 'Andere Anlagen, Betriebs- und Geschäftsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0310', 'Andere Anlagen');
-INSERT INTO gifi (accno,description) VALUES ('0320', 'Pkw');
-INSERT INTO gifi (accno,description) VALUES ('0350', 'Lkw');
-INSERT INTO gifi (accno,description) VALUES ('0380', 'Sonstige Transportmittel');
-INSERT INTO gifi (accno,description) VALUES ('0400', 'Betriebsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0410', 'Geschäftsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0420', 'Büroeinrichtung');
-INSERT INTO gifi (accno,description) VALUES ('0430', 'Ladeneinrichtung');
-INSERT INTO gifi (accno,description) VALUES ('0440', 'Werkzeuge');
-INSERT INTO gifi (accno,description) VALUES ('0450', 'Einbauten');
-INSERT INTO gifi (accno,description) VALUES ('0460', 'Gerüst- und Schalungsmaterial');
-INSERT INTO gifi (accno,description) VALUES ('0480', 'Geringwertige Wirtschaftsgüter bis DM 800,-');
-INSERT INTO gifi (accno,description) VALUES ('0490', 'Sonstige Betriebs- und Geschäftsausstattung');
-INSERT INTO gifi (accno,description) VALUES ('0498', 'Andere Anlagen, Betriebs- und Geschäftsausstatt. im Bau');
-INSERT INTO gifi (accno,description) VALUES ('0499', 'Anzahl. a. andere Anlagen, Betriebs- u. Geschäftsausstatt.');
-INSERT INTO gifi (accno,description) VALUES ('0500', 'Anteile an verbundenen Unternehmen (Anlagevermögen)');
-INSERT INTO gifi (accno,description) VALUES ('0504', 'Anteile an herrschender oder mit Mehrheit beteiligter Gesellschaft');
-INSERT INTO gifi (accno,description) VALUES ('0505', 'Ausleihungen an verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0510', 'Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0513', 'Typisch stille Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0516', 'Atypisch stille Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('0517', 'Andere Beteiligungen an Kapitalgesellschaften');
-INSERT INTO gifi (accno,description) VALUES ('0518', 'Andere Beteiligungen an Personengesellschaften');
-INSERT INTO gifi (accno,description) VALUES ('0519', 'Beteiligung einer GmbH&CoKG an einer Komplementär GmbH');
-INSERT INTO gifi (accno,description) VALUES ('0520', 'Ausleihung an Untern. m.d.e. Beteiligungsverhältnis besteht');
-INSERT INTO gifi (accno,description) VALUES ('0525', 'Wertpapiere des Anlagevermögens');
-INSERT INTO gifi (accno,description) VALUES ('0530', 'Wertpapiere mit Gewinnbeteiligungsansprüchen');
-INSERT INTO gifi (accno,description) VALUES ('0535', 'Festverzinsliche Wertpapiere');
-INSERT INTO gifi (accno,description) VALUES ('0540', 'Sonstige Ausleihungen');
-INSERT INTO gifi (accno,description) VALUES ('0550', 'Darlehen / Sonstige Ausleihungen');
-INSERT INTO gifi (accno,description) VALUES ('0570', 'Genossenschaftsanteile zum langfristigen Verbleib');
-INSERT INTO gifi (accno,description) VALUES ('0580', 'Ausleihungen an Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('0590', 'Ausleihungen an nahestehende Personen');
-INSERT INTO gifi (accno,description) VALUES ('0595', 'Rückdeckungsanspr. a. Lebensvers. z. langfrist. Verbleib');
-INSERT INTO gifi (accno,description) VALUES ('0600', 'Anleihen nicht konvertibel');
-INSERT INTO gifi (accno,description) VALUES ('0601', 'Anleihen nicht konvertibel - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0605', 'Anleihen nicht konvertibel - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0610', 'Anleihen nicht konvertibel - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0615', 'Anleihen konvertibel');
-INSERT INTO gifi (accno,description) VALUES ('0616', 'Anleihen konvertibel - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0620', 'Anleihen konvertibel - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0625', 'Anleihen konvertibel - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0630', 'Verbindlichkeiten gegenüber Kreditinstituten');
-INSERT INTO gifi (accno,description) VALUES ('0631', 'Verb. gg. Kreditinstituten - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0640', 'Verb. gg. Kreditinstituten - Restlaufz. 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0650', 'Verb. gg. Kreditinstituten - Restlaufz. größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0660', 'Verbindlichkeiten gg. Kreditinst. aus TZ-Verträgen');
-INSERT INTO gifi (accno,description) VALUES ('0661', 'Verb. gg. Kreditinst. aus TZ-Verträgen - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('0670', 'Verb. gg. Kreditinst. aus TZ-Verträgen - Restl. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0680', 'Verb. gg. Kreditinst. aus TZ-Verträgen - Restl. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0700', 'Verbindlichkeiten gg. verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('0701', 'Verb. gg. verbundenen Unternehmen - Restlaufz. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('0705', 'Verb. gg. verbundenen Unternehmen - Restlaufz. 1 b. 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0710', 'Verb. gg. verb. Untern. - Restlaufz. gr. 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0715', 'Verb. gg. Untern. mit denen ein Beteiligungsverh. besteht');
-INSERT INTO gifi (accno,description) VALUES ('0716', 'Verb. gg. U. m.d.e. Beteiligungsv. best. - Restl. b. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('0720', 'Verb. gg. U. m.d.e. Beteiligungsv. best. - Restl. 1 b. 5 J');
-INSERT INTO gifi (accno,description) VALUES ('0725', 'Verb. gg. U. m.d.e. Beteiligungsv. best. - Restl. gr. 5 J');
-INSERT INTO gifi (accno,description) VALUES ('0730', 'Verbindlichkeiten gegenüber Gesellschaftern');
-INSERT INTO gifi (accno,description) VALUES ('0731', 'Verb. gg. Gesellschaftern - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0740', 'Verb. gg. Gesellschaftern - Restlaufz. 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0750', 'Verb. gg. Gesellschaftern - Restlaufz. größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0755', 'Verb. gg. Gesellschaftern für offene Ausschüttungen');
-INSERT INTO gifi (accno,description) VALUES ('0760', 'Darlehen typisch stiller Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('0761', 'Darlehen typ. stiller Gesellschafter - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0764', 'Darlehen typ. stiller Gesellschafter - Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0767', 'Darlehen typ. stiller Gesellschafter - Restlaufz. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0770', 'Darlehen atypisch stiller Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('0771', 'Darlehen atyp. stiller Gesellsch.- Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('0774', 'Darlehen atyp. stiller Gesellsch.- Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0777', 'Darlehen atyp. stiller Gesellsch.- Restlaufz. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('0780', 'Partiarische Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('0781', 'Partiarische Darlehen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0784', 'Partiarische Darlehen - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0787', 'Partiarische Darlehen - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('0800', 'Gezeichnetes Kapital');
-INSERT INTO gifi (accno,description) VALUES ('0801', 'Ausst. Einl. a.d. gez. Kapital, nicht eingef. (Aktivausw.)');
-INSERT INTO gifi (accno,description) VALUES ('0810', 'Ausst. Einl. a.d. gez. Kapital, eingeford. (Aktivausw.)');
-INSERT INTO gifi (accno,description) VALUES ('0820', 'Ausst. Einl. a.d. gez. Kapital, nicht eingef. (Passivausw.)');
-INSERT INTO gifi (accno,description) VALUES ('0830', 'Ausst. Einl. a.d. gez. Kapital, eingef. (Passivausw.)');
-INSERT INTO gifi (accno,description) VALUES ('0839', 'Eingeforderte Nachschüsse');
-INSERT INTO gifi (accno,description) VALUES ('0840', 'Kapitalrücklage');
-INSERT INTO gifi (accno,description) VALUES ('0841', 'Kapitalrückl. durch Ausgabe von Anteilen über Nennbetrag');
-INSERT INTO gifi (accno,description) VALUES ('0842', 'Kap.Rückl. Schuldver. f. Wandl.- u. Optionsr. z. Erw. v. Ant');
-INSERT INTO gifi (accno,description) VALUES ('0843', 'Kapitalrückl. d. Zuzahl. gg. Gewähr e. Vorzuges f. Anteile');
-INSERT INTO gifi (accno,description) VALUES ('0844', 'Kapitalrückl. d. andere Zuzahlungen in das Eigenkapital');
-INSERT INTO gifi (accno,description) VALUES ('0845', 'Eingefordertes Nachschußkapital');
-INSERT INTO gifi (accno,description) VALUES ('0846', 'Gesetzliche Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('0847', 'Gesetzliche Rücklage 50/45% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0848', 'Gesetzliche Rücklage 30% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0849', 'Gesetzliche Rücklage 0% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0850', 'Rücklage für eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('0851', 'Satzungsmäßige Rücklagen');
-INSERT INTO gifi (accno,description) VALUES ('0852', 'Satzungsmäßige Rücklage 50/45% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0853', 'Satzungsmäßige Rücklage 30% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0854', 'Satzungsmäßige Rücklage 0% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0855', 'Andere Gewinnrücklagen 50/45% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0856', 'Eigenkapitalanteil von Wertaufholungen');
-INSERT INTO gifi (accno,description) VALUES ('0857', 'Eigenkapitalanteil von Preissteigerungsrücklagen');
-INSERT INTO gifi (accno,description) VALUES ('0858', 'Andere Gewinnrücklagen 30% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0859', 'Andere Gewinnrücklagen 0% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0860', 'Gewinnvortrag vor Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0862', 'Gewinnvortrag 50/45% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0864', 'Gewinnvortrag 30% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0866', 'Gewinnvortrag 0% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('0868', 'Verlustvortrag vor Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('0869', 'Vorträge auf neue Rechnung (Bilanz)');
-INSERT INTO gifi (accno,description) VALUES ('0870', 'Festkapital (Personenges. Vollhafter / Einzelu.)');
-INSERT INTO gifi (accno,description) VALUES ('0880', 'Variables Kapital (Personenges. Vollhaft. / Einzelu.)');
-INSERT INTO gifi (accno,description) VALUES ('0890', 'Gesellsch.-Darlehen (Personenges. Vollhaft. / Einzelu.)');
-INSERT INTO gifi (accno,description) VALUES ('0900', 'Kommandit-Kapital (Personenges. Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('0910', 'Verlustausgleichskonto (Personenges. Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('0920', 'Gesellschafter-Darlehen (Personenges. Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('0930', 'Sonderposten mit Rücklageanteil');
-INSERT INTO gifi (accno,description) VALUES ('0931', 'Sonderposten mit Rücklageanteil §6b EStG');
-INSERT INTO gifi (accno,description) VALUES ('0932', 'Sonderposten mit Rücklageanteil Abschnitt 35 EStR');
-INSERT INTO gifi (accno,description) VALUES ('0933', 'Sonderposten mit Rücklageanteil §6dEStG');
-INSERT INTO gifi (accno,description) VALUES ('0934', 'Sonderposten mit Rücklageanteil §1 EntwLStG');
-INSERT INTO gifi (accno,description) VALUES ('0935', 'Sonderposten mit Rücklageanteil §3 Ausl-InvG');
-INSERT INTO gifi (accno,description) VALUES ('0936', 'Sonderposten mit Rücklageanteil §7d EStG');
-INSERT INTO gifi (accno,description) VALUES ('0937', 'Sonderposten mit Rücklageanteil §79 EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0938', 'Sonderposten mit Rücklageanteil §80 EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0939', 'Sonderposten mit Rücklageanteil §81 EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0940', 'Sonderposten mit Rücklageanteil §82 EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0941', 'Sonderposten mit Rücklageanteil §82a EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0942', 'Sonderposten mit Rücklageanteil §82d EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0943', 'Sonderposten mit Rücklageanteil §82e EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0944', 'Sonderposten mit Rücklageanteil §14 BerlinFG');
-INSERT INTO gifi (accno,description) VALUES ('0945', 'Sonderposten mit Rücklageanteil §3 ZonenRFG / §4-6 FördergebietsG');
-INSERT INTO gifi (accno,description) VALUES ('0946', 'Sonderposten mit Rücklageanteil §52 Abs. 5 EStG');
-INSERT INTO gifi (accno,description) VALUES ('0947', 'Sonderposten mit Rücklageanteil §7g Abs. 1 EStG');
-INSERT INTO gifi (accno,description) VALUES ('0948', 'Sonderposten mit Rücklageanteil §7g Abs. 3 EStG');
-INSERT INTO gifi (accno,description) VALUES ('0949', 'Sonderposten mit Rücklageanteil §74 EStDV');
-INSERT INTO gifi (accno,description) VALUES ('0950', 'Rückstellungen für Pensionen und ähnliche Verpflichtungen');
-INSERT INTO gifi (accno,description) VALUES ('0955', 'Steuerrückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0957', 'Gewerbesteuerrückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0963', 'Körperschaftsteuerrückstellung');
-INSERT INTO gifi (accno,description) VALUES ('0969', 'Rückstellungen für latente Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0970', 'Sonstige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('0971', 'Rückst. unterl. Aufw. Instandhalt., Nachhol. in 3 Mon');
-INSERT INTO gifi (accno,description) VALUES ('0972', 'Rückst. unterl. Aufw. Instandhalt., Nachhol. in 4-12 Mon');
-INSERT INTO gifi (accno,description) VALUES ('0973', 'Rückstellungen für Abraum- und Abfallbeseitigung');
-INSERT INTO gifi (accno,description) VALUES ('0974', 'Rückstellungen für Gewährleistungen');
-INSERT INTO gifi (accno,description) VALUES ('0976', 'Rückst. f. drohende Verluste a. schwebenden Geschäften');
-INSERT INTO gifi (accno,description) VALUES ('0977', 'Rückstellungen für Abschluß- und Prüfungskosten');
-INSERT INTO gifi (accno,description) VALUES ('0978', 'Aufwandsrückstellungen gemäß § 249 Abs. 2 HGB');
-INSERT INTO gifi (accno,description) VALUES ('0979', 'Rückstellungen für den Umweltschutz');
-INSERT INTO gifi (accno,description) VALUES ('0980', 'Aktive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('0983', 'Abgrenzung aktive latente Steuern');
-INSERT INTO gifi (accno,description) VALUES ('0984', 'Als Aufwand berücks. Zölle u. Verbrauchsst. a. Vorräte');
-INSERT INTO gifi (accno,description) VALUES ('0985', 'Als Aufwand berücks. Umsatzsteuer auf Anzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('0986', 'Damnum / Disagio');
-INSERT INTO gifi (accno,description) VALUES ('0990', 'Passive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('0992', 'Wertber.n (zur unterjährigen Kostenverrechnung f. BWA)');
-INSERT INTO gifi (accno,description) VALUES ('0996', 'Pauschalwertberichtigung a. Ford. - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0997', 'Pauschalwertberichtigung a. Ford. - Restlaufz. größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0998', 'Einzelwertberichtigung a. Ford. - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('0999', 'Einzelwertberichtigung a. Ford. - Restlaufz. größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1000', 'Kasse');
-INSERT INTO gifi (accno,description) VALUES ('1010', 'Nebenkasse 1');
-INSERT INTO gifi (accno,description) VALUES ('1020', 'Nebenkasse 2');
-INSERT INTO gifi (accno,description) VALUES ('1100', 'Postgiro');
-INSERT INTO gifi (accno,description) VALUES ('1110', 'Postgiro 1');
-INSERT INTO gifi (accno,description) VALUES ('1120', 'Postgiro 2');
-INSERT INTO gifi (accno,description) VALUES ('1130', 'Postgiro 3');
-INSERT INTO gifi (accno,description) VALUES ('1190', 'LZB-Guthaben');
-INSERT INTO gifi (accno,description) VALUES ('1195', 'Bundesbankguthaben');
-INSERT INTO gifi (accno,description) VALUES ('1200', 'Bank-Giro');
-INSERT INTO gifi (accno,description) VALUES ('1210', 'Bank-Giro 1');
-INSERT INTO gifi (accno,description) VALUES ('1220', 'Bank-Giro 2');
-INSERT INTO gifi (accno,description) VALUES ('1230', 'Bank-Giro 3');
-INSERT INTO gifi (accno,description) VALUES ('1300', 'Wechsel aus Lieferungen und Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('1301', 'Wechsel aus Lieferungen u. Leistungen - Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1302', 'Wechsel aus Lieferungen u. Leistungen - Restl. größer 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1305', 'Wechsel aus Lieferungen u. Leistungen, bundesbankfähig');
-INSERT INTO gifi (accno,description) VALUES ('1310', 'Besitzwechsel gg. verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('1311', 'Besitzwechsel gg. verbundenen Untern. - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1312', 'Besitzwechsel gg. verbundenen Untern. - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1315', 'Besitzwechsel gg. verb. Unternehmen, bundesbankfähig');
-INSERT INTO gifi (accno,description) VALUES ('1320', 'Besitzwechsel gg. Untern. m.d.e. Beteiligungsverh. best.');
-INSERT INTO gifi (accno,description) VALUES ('1321', 'Besitzwechsel gg. U. m.d.e. Beteilig. best. - Restl. b. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('1322', 'Besitzwechsel gg. U. m.d.e. Beteilig. best. - Restl. gr. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('1325', 'Besitzwechsel gg. U. m.d.e. Beteilig. best., bundsbankfähig');
-INSERT INTO gifi (accno,description) VALUES ('1327', 'Finanzwechsel');
-INSERT INTO gifi (accno,description) VALUES ('1330', 'Schecks');
-INSERT INTO gifi (accno,description) VALUES ('1340', 'Anteile an verb. Unternehmen (Umlaufvermögen)');
-INSERT INTO gifi (accno,description) VALUES ('1344', 'Anteile an herrschender oder mit Mehrheit beteiligter Gesellschaft');
-INSERT INTO gifi (accno,description) VALUES ('1345', 'Eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('1348', 'Sonstige Wertpapiere');
-INSERT INTO gifi (accno,description) VALUES ('1350', 'GmbH-Anteile zum kurzfristigen Verbleib');
-INSERT INTO gifi (accno,description) VALUES ('1352', 'Genossenschaftsanteile zum kurzfristigen Verbleib');
-INSERT INTO gifi (accno,description) VALUES ('1355', 'Ansprüche aus Rückdeckungsversicherungen');
-INSERT INTO gifi (accno,description) VALUES ('1360', 'Geldtransit Bank');
-INSERT INTO gifi (accno,description) VALUES ('1361', 'Geldtransit Bank 1');
-INSERT INTO gifi (accno,description) VALUES ('1362', 'Geldtransit Bank 2');
-INSERT INTO gifi (accno,description) VALUES ('1363', 'Geldtransit Bank 3');
-INSERT INTO gifi (accno,description) VALUES ('1369', 'Interne Umbuchung');
-INSERT INTO gifi (accno,description) VALUES ('1370', 'Verrechnungskonto Gewinnermittlung §4/3 EStG, ergebniswirksam');
-INSERT INTO gifi (accno,description) VALUES ('1371', 'Verrechnungskonto für Gewinnermittl. §4/3EStG, nicht ergebniswirksam');
-INSERT INTO gifi (accno,description) VALUES ('1380', 'Überleitungskonto Kostenstelle');
-INSERT INTO gifi (accno,description) VALUES ('1390', 'Verrechnungskonto Ist-Versteuerung');
-INSERT INTO gifi (accno,description) VALUES ('1400', 'Forderungen aus Lief. und Leist. Kundengruppe 0');
-INSERT INTO gifi (accno,description) VALUES ('1401', 'Forderungen aus Lief. und Leist. Kundengruppe 1');
-INSERT INTO gifi (accno,description) VALUES ('1402', 'Forderungen aus Lief. und Leist. Kundengruppe 2');
-INSERT INTO gifi (accno,description) VALUES ('1410', 'Forderungen aus Lief. und Leist. ohne Kontokorrent');
-INSERT INTO gifi (accno,description) VALUES ('1450', 'Forderungen nach §11, Abs.1 Satz 2 EStG für § 4/3 EStG');
-INSERT INTO gifi (accno,description) VALUES ('1451', 'Ford.a.Lief.u.Leist. ohne Kontokorrent - Restlaufz. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1455', 'Ford.a.Lief.u.Leist. ohne Kontokorrent - Restlaufz. gr.1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1460', 'Zweifelhafte Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('1461', 'Zweifelhafte Forderungen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1465', 'Zweifelhafte Forderungen - Restlaufzeit größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1470', 'Ford.a.Lief.u.Leist. gg. verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('1471', 'Ford.a.Lief.u.Leist. gg. verb. Untern. - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1475', 'Ford.a.Lief.u.Leist. gg. verb. Untern. - Restl. größer 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1478', 'Wertber. a. Ford.a.L.u.L. gg. verb. U. - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1479', 'Wertber. a. Ford.a.L.u.L. gg. verb. U. - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1480', 'Ford.a.L.u.L. gg. Untern. m.d.e. Beteiligungsverh. best.');
-INSERT INTO gifi (accno,description) VALUES ('1481', 'Ford.a.L.u.L. gg. U. m.d.e. Beteilig. best. - Restl. b. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('1485', 'Ford.a.L.u.L. gg. U. m.d.e. Beteilig. best. - Restl. gr. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('1488', 'Wertber. a. Ford. Restl. b. 1 J. gg. U. m.d.e. Beteilig.');
-INSERT INTO gifi (accno,description) VALUES ('1489', 'Wertber. a. Ford. Restl. gr. 1 J. gg. U. m.d.e. Beteilig.');
-INSERT INTO gifi (accno,description) VALUES ('1490', 'Ford.a.Lief.u.Leist. gegen Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('1491', 'Ford.a.Lief.u.Leist. gg. Gesellsch.- Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1495', 'Ford.a.Lief.u.Leist. gg. Gesellsch.- Restlaufz. größer 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1499', 'Gegenkonto 14510-14980 bei Aufteilung Debitoren');
-INSERT INTO gifi (accno,description) VALUES ('1500', 'Sonstige Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('1501', 'Sonstige Vermögensgegenstände - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1502', 'Sonstige Vermögensgegenstände - Restlaufz. größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1503', 'Ford. gg. Vorstandsmitgl. u. Geschäftsf. - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1504', 'Ford. gg. Vorstandsmitgl. u. Geschäftsf. - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1505', 'Ford. gg. Aufsichtsrats- u. Beiratsmitgl. - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1506', 'Ford. gg. Aufsichtsrats- u. Beiratsmitgl. - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1507', 'Ford. gg. Gesellschafter - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1508', 'Ford. gg. Gesellschafter - Restlaufzeit größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1510', 'Geleistete Anzahlungen auf Vorräte');
-INSERT INTO gifi (accno,description) VALUES ('1511', 'Geleistete Anzahlungen, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1516', 'Geleistete Anzahlungen, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1517', 'Geleistete Anzahlungen, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1521', 'Agenturwarenabrechnung');
-INSERT INTO gifi (accno,description) VALUES ('1525', 'Kautionen');
-INSERT INTO gifi (accno,description) VALUES ('1526', 'Kautionen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1527', 'Kautionen - Restlaufzeit größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1530', 'Forderungen gegen Personal');
-INSERT INTO gifi (accno,description) VALUES ('1531', 'Forderungen gegen Personal - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1537', 'Forderungen gegen Personal - Restlaufzeit größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1540', 'Steuerüberzahlungen');
-INSERT INTO gifi (accno,description) VALUES ('1542', 'Steuererstattungsansprüche gg. anderen EU-Ländern');
-INSERT INTO gifi (accno,description) VALUES ('1545', 'Umsatzsteuerforderungen');
-INSERT INTO gifi (accno,description) VALUES ('1547', 'Forderungen aus entrichteten Verbrauchssteuern');
-INSERT INTO gifi (accno,description) VALUES ('1548', 'Vorsteuer im Folgejahr abziehbar');
-INSERT INTO gifi (accno,description) VALUES ('1549', 'Körperschaftsteuerrückforderung');
-INSERT INTO gifi (accno,description) VALUES ('1550', 'Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('1551', 'Darlehen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1555', 'Darlehen - Restlaufzeit größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1560', 'Aufzuteilende Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1561', 'Aufzuteilende Vorsteuer, 7%');
-INSERT INTO gifi (accno,description) VALUES ('1562', 'Aufzuteilende Vorsteuer aus ig. Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('1565', 'Aufzuteilende Vorsteuer, 16 %');
-INSERT INTO gifi (accno,description) VALUES ('1566', 'Aufzuteilende Vorsteuer, 15 %');
-INSERT INTO gifi (accno,description) VALUES ('1570', 'Abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1571', 'Abziehbare Vorsteuer, 7%');
-INSERT INTO gifi (accno,description) VALUES ('1572', 'Abziehbare Vorsteuer aus ig. Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('1573', 'Abziehbare Vorsteuer aus ig. Erwerb, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1575', 'Abziehbare Vorsteuer, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1576', 'Abziehbare Vorsteuer, 15%');
-INSERT INTO gifi (accno,description) VALUES ('1577', 'Vorsteuer nach allg. Durchschnittssätzen UStVA KZ 63');
-INSERT INTO gifi (accno,description) VALUES ('1578', 'Berichtigung des VSt-Abzugs früherer Jahre UStVA KZ 64');
-INSERT INTO gifi (accno,description) VALUES ('1580', 'Gegenkonto Vorsteuer § 4/3 EStG');
-INSERT INTO gifi (accno,description) VALUES ('1581', 'Auflösung Vorsteuer aus Vorjahr § 4/3 EStG');
-INSERT INTO gifi (accno,description) VALUES ('1584', 'Abziehb. VSt. a. ig. Erw. v. Neufahrz. v. Lief. ohne USt-ID');
-INSERT INTO gifi (accno,description) VALUES ('1586', 'Kürzung BerlinFG');
-INSERT INTO gifi (accno,description) VALUES ('1588', 'Bezahlte Einfuhrumsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1590', 'Durchlaufende Posten');
-INSERT INTO gifi (accno,description) VALUES ('1593', 'Verrechnungskto erhalt. Anzahl. b. Buchung ü. Kundenkto');
-INSERT INTO gifi (accno,description) VALUES ('1594', 'Forderungen gegen verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('1595', 'Ford. gg. verbundene Unternehmen - Restlaufz. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1596', 'Ford. gg. verbundene Unternehmen - Restlaufz. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1597', 'Ford. gg. Untern. mit denen ein Beteiligungsverh. besteht');
-INSERT INTO gifi (accno,description) VALUES ('1598', 'Ford. gg. U. m.d.e. Beteiligungsv. best. - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1599', 'Ford. gg. U. m.d.e. Beteiligungsv. best. - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1600', 'Verb. aus Lief. und Leist. Lieferantengruppe 0');
-INSERT INTO gifi (accno,description) VALUES ('1601', 'Verb. aus Lief. und Leist. Lieferantengruppe 1');
-INSERT INTO gifi (accno,description) VALUES ('1602', 'Verb. aus Lief. und Leist. Lieferantengruppe 2');
-INSERT INTO gifi (accno,description) VALUES ('1610', 'Verb.a.L.u.L. ohne Kontokorrent');
-INSERT INTO gifi (accno,description) VALUES ('1624', 'Verbindlichkeiten aus Lief. u. Leist. für Investitionen für §4/3 EStG');
-INSERT INTO gifi (accno,description) VALUES ('1625', 'Verb.a.L.u.L. ohne Kontokorrent - Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1626', 'Verb.a.L.u.L. ohne Kontokorrent - Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1628', 'Verb.a.L.u.L. ohne Kontokorrent - Restlaufz. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1630', 'Verb.a.Lief.u.Leist. gg. verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('1631', 'Verb.a.L.u.L. gg. verb. Untern. - Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1635', 'Verb.a.L.u.L. gg. verb. Untern. - Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1638', 'Verb.a.L.u.L. gg. verb. Untern. - Restlaufz. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1640', 'Verb.a.L.u.L. gg. Untern. m.d.e. Beteiligungsverh. best.');
-INSERT INTO gifi (accno,description) VALUES ('1641', 'Verb.a.L.u.L. gg. U. m.d.e. Beteilig. best. - Restl. b. 1 J');
-INSERT INTO gifi (accno,description) VALUES ('1645', 'Verb.a.L.u.L. gg. U. m.d.e. Beteilig. best. - Restl. 1 b 5 J');
-INSERT INTO gifi (accno,description) VALUES ('1648', 'Verb.a.L.u.L. gg. U. m.d.e. Beteilig. best. - Restl. gr. 5 J');
-INSERT INTO gifi (accno,description) VALUES ('1650', 'Verb.a.Lief.u.Leist. gegen Gesellschaftern');
-INSERT INTO gifi (accno,description) VALUES ('1651', 'Verb.a.Lief.u.Leist. gg. Gesellsch. - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1655', 'Verb.a.Lief.u.Leist. gg. Gesellsch. - Restl. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1658', 'Verb.a.Lief.u.Leist. gg. Gesellsch. - Restl. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1659', 'Gegenkonto 16250-16580 bei Aufteilung Kreditoren-Konto');
-INSERT INTO gifi (accno,description) VALUES ('1660', 'Schuldwechsel');
-INSERT INTO gifi (accno,description) VALUES ('1661', 'Schuldwechsel - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1680', 'Schuldwechsel - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1690', 'Schuldwechsel - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1700', 'Sonstige Verbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('1701', 'Sonstige Verbindlichkeiten - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1702', 'Sonstige Verbindlichkeiten - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1703', 'Sonstige Verbindlichkeiten - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1704', 'Sonstige Verbindlichkeiten, z.B. nach §11,Abs.2,2 EStG für §4/3');
-INSERT INTO gifi (accno,description) VALUES ('1705', 'Darlehen');
-INSERT INTO gifi (accno,description) VALUES ('1706', 'Darlehen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1707', 'Darlehen - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1708', 'Darlehen - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1709', 'Gewinnverfügungskonto stiller Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('1710', 'Erhaltene Anzahlungen (Verbindlichkeiten)');
-INSERT INTO gifi (accno,description) VALUES ('1711', 'Erhaltene verst. Anzahl., 7% USt (Verbindlichkeiten)');
-INSERT INTO gifi (accno,description) VALUES ('1716', 'Erhaltene verst. Anzahl., 15% USt (Verbindlichkeiten)');
-INSERT INTO gifi (accno,description) VALUES ('1717', 'Erhaltene verst. Anzahl., 16% USt (Verbindlichkeiten)');
-INSERT INTO gifi (accno,description) VALUES ('1719', 'Erhaltene Anzahlungen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1720', 'Erhaltene Anzahlungen - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1721', 'Erhaltene Anzahlungen - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1722', 'Erhaltene Anzahlungen (von Vorräten offen abgesetzt)');
-INSERT INTO gifi (accno,description) VALUES ('1731', 'Agenturwarenabrechnung');
-INSERT INTO gifi (accno,description) VALUES ('1732', 'Erhaltene Kautionen');
-INSERT INTO gifi (accno,description) VALUES ('1733', 'Erhaltene Kautionen - Restlaufzeit bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1734', 'Erhaltene Kautionen - Restlaufzeit 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1735', 'Erhaltene Kautionen - Restlaufzeit größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1736', 'Verbindlichkeiten aus Betriebsteuern und Abgaben');
-INSERT INTO gifi (accno,description) VALUES ('1737', 'Verb. aus Betriebsteuern u. Abgaben - Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1738', 'Verb. aus Betriebsteuern u. Abgaben - Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1739', 'Verb. aus Betriebsteuern u. Abgaben - Restl. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1740', 'Verbindlichkeiten aus Lohn und Gehalt');
-INSERT INTO gifi (accno,description) VALUES ('1741', 'Verbindlichkeiten aus Lohn- und Kirchensteuer');
-INSERT INTO gifi (accno,description) VALUES ('1742', 'Verbindlichkeiten im Rahmen der sozialen Sicherheit');
-INSERT INTO gifi (accno,description) VALUES ('1743', 'Verb. im Rahmen der sozialen Sicherheit - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('1744', 'Verb. im Rahmen der sozialen Sicherheit - Restl. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1745', 'Verb. im Rahmen der sozialen Sicherheit - Restl. gr. 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('1746', 'Verbindlichkeiten aus Einbehaltungen');
-INSERT INTO gifi (accno,description) VALUES ('1747', 'Verbindlichkeiten für Verbrauchssteuern');
-INSERT INTO gifi (accno,description) VALUES ('1750', 'Verbindlichkeiten aus Vermögensbildung');
-INSERT INTO gifi (accno,description) VALUES ('1751', 'Verb. aus Vermögensbildung - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1752', 'Verb. aus Vermögensbildung - Restlaufz. 1 bis 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1753', 'Verb. aus Vermögensbildung - Restlaufz. größer 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1755', 'Lohn- und Gehaltsverrechnung');
-INSERT INTO gifi (accno,description) VALUES ('1758', 'Umsatzsteuerabzugsverfahren, 16% Umsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1759', 'Umsatzsteuerabzugsverfahren, 15% Umsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1760', 'Umsatzsteuer nicht fällig');
-INSERT INTO gifi (accno,description) VALUES ('1761', 'Umsatzsteuer nicht fällig , 7%');
-INSERT INTO gifi (accno,description) VALUES ('1762', 'Umsatzsteuer nicht fällig a.i. Inland steuerpfl. EU-Lief.');
-INSERT INTO gifi (accno,description) VALUES ('1763', 'Umsatzsteuer nicht fällig a.i. Inland steuerpfl. EU-Lief., 16%');
-INSERT INTO gifi (accno,description) VALUES ('1765', 'Umsatzsteuer nicht fällig, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1766', 'Umsatzsteuer nicht fällig, 15%');
-INSERT INTO gifi (accno,description) VALUES ('1767', 'Umsatzsteuer a.i. and. EU-Land steuerpfl. Lief.');
-INSERT INTO gifi (accno,description) VALUES ('1768', 'Umsatzsteuer a.i. and. EU-Land steuerpfl. sonst. Lief./Werkl.');
-INSERT INTO gifi (accno,description) VALUES ('1769', 'Steuerzahlungen an andere EU-Länder');
-INSERT INTO gifi (accno,description) VALUES ('1770', 'Umsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('1771', 'Umsatzsteuer, 7%');
-INSERT INTO gifi (accno,description) VALUES ('1772', 'Umsatzsteuer aus ig. Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('1773', 'Umsatzsteuer aus ig. Erwerb, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1775', 'Umsatzsteuer, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1776', 'Umsatzsteuer, 15%');
-INSERT INTO gifi (accno,description) VALUES ('1777', 'Umsatzsteuer aus im Inland steuerpfl. EU-Lieferungen');
-INSERT INTO gifi (accno,description) VALUES ('1778', 'Umsatzsteuer aus im Inland steuerpfl. EU-Lieferungen, 16%');
-INSERT INTO gifi (accno,description) VALUES ('1779', 'Umsatzsteuer aus ig. Erwerb ohne Vorsteuerabzug');
-INSERT INTO gifi (accno,description) VALUES ('1780', 'Umsatzsteuer - Vorauszahlungen');
-INSERT INTO gifi (accno,description) VALUES ('1781', 'Umsatzsteuer - Vorauszahlungen 1/11');
-INSERT INTO gifi (accno,description) VALUES ('1782', 'Nachsteuer, UStVA KZ 65');
-INSERT INTO gifi (accno,description) VALUES ('1783', 'In Rechnung unber. ausgewiesene und geschuldete Steuer, UStVA KZ 69');
-INSERT INTO gifi (accno,description) VALUES ('1784', 'Umsatzsteuer aus ig. Erw. v. Neufahrz. v. Lief. ohne USt-ID');
-INSERT INTO gifi (accno,description) VALUES ('1788', 'Einfuhrumsatzsteuer aufgeschoben bis');
-INSERT INTO gifi (accno,description) VALUES ('1789', 'Umsatzsteuer laufendes Jahr');
-INSERT INTO gifi (accno,description) VALUES ('1790', 'Umsatzsteuer Vorjahr');
-INSERT INTO gifi (accno,description) VALUES ('1791', 'Umsatzsteuer frühere Jahre');
-INSERT INTO gifi (accno,description) VALUES ('1792', 'Abgrenzung für Grundstücke');
-INSERT INTO gifi (accno,description) VALUES ('1794', 'Abgrenzung für immaterielle Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('1795', 'Abgrenzung für Bauten auf eigenen Grundstücken');
-INSERT INTO gifi (accno,description) VALUES ('1796', 'Abgrenzung für andere Anlagen, B.u.G. Ausstattung');
-INSERT INTO gifi (accno,description) VALUES ('1797', 'Abgrenzung für Bauten auf fremden Grundstücken');
-INSERT INTO gifi (accno,description) VALUES ('1798', 'Abgrenzung für technische Anlagen und Maschinen');
-INSERT INTO gifi (accno,description) VALUES ('1799', 'Sonstige Verrechnungskonten (Interimskonten)');
-INSERT INTO gifi (accno,description) VALUES ('1793', 'Verrechnungskto geleist. Anzahl. bei Buchung über Lief.Kto.');
-INSERT INTO gifi (accno,description) VALUES ('1800', 'Privatentn. allg. (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1810', 'Privatsteuern (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1820', 'Sonderausg. beschr. abzugsf. (Privat Vollhaft./Einzelu.)');
-INSERT INTO gifi (accno,description) VALUES ('1830', 'Sonderausg. unbeschr. abzugsf. (Privat Vollhaft./Einzelu.)');
-INSERT INTO gifi (accno,description) VALUES ('1840', 'Privatspenden (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1850', 'Außergewöhnliche Belastungen (Privat Vollhaft. / Einzelunt.)');
-INSERT INTO gifi (accno,description) VALUES ('1860', 'Grundstücksaufwand (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1870', 'Grundstücksertrag (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1880', 'Eigenverbrauch (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1890', 'Privateinlagen (Privat Vollhafter / Einzelunternehmer)');
-INSERT INTO gifi (accno,description) VALUES ('1900', 'Privatentnahmen allgemein (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1910', 'Privatsteuern (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1920', 'Sonderausgaben beschränkt abzugsf. (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1930', 'Sonderausgaben unbeschränkt abzugsf. (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1940', 'Privatspenden (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1950', 'Außergewöhnliche Belastungen (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1960', 'Grundstücksaufwand (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1970', 'Grundstücksertrag (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1980', 'Eigenverbrauch (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('1990', 'Privateinlagen (Privat Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('2000', 'Außerordentliche Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2010', 'Betriebsfremde Aufw. (soweit nicht außerordentlich)');
-INSERT INTO gifi (accno,description) VALUES ('2020', 'Periodenfremde Aufw. (soweit nicht außerordentlich)');
-INSERT INTO gifi (accno,description) VALUES ('2100', 'Zinsen und ähnliche Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2103', 'Steuerlich abzugsfähige, andere Nebenleistungen zu Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2104', 'Steuerlich nicht abzugsfähige, andere Nebenleistungen zu Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2107', 'Zinsaufwendungen §233a AO betriebliche Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2108', 'Zinsaufw. §233a, §234, §237 AO Personenst. §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('2109', 'Zinsaufwendungen an verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2110', 'Zinsaufwendungen für kurzfristige Verbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('2118', 'In Dauerschuldzins. umqualif. Zinsen a. kurzfristige Verb.');
-INSERT INTO gifi (accno,description) VALUES ('2119', 'Zinsaufw. f. kurzfristige Verb. an verbunden Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2120', 'Zinsaufwendungen für langfristige Verbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('2127', 'Renten u. dauernde Last. a. Gründung/Erwerb §8GewStG');
-INSERT INTO gifi (accno,description) VALUES ('2128', 'Zinsaufw. an Mitu. f. Hingabe v. langfrist. Kapital §15 EStG');
-INSERT INTO gifi (accno,description) VALUES ('2129', 'Zinsaufw. f. langfristige Verb. an verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2130', 'Diskontaufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2139', 'Diskontaufwendungen an verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2140', 'Zinsähnliche Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2149', 'Zinsähnliche Aufwendungen an verbundene Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2150', 'Aufwendungen aus Kursdifferenzen');
-INSERT INTO gifi (accno,description) VALUES ('2170', 'Nicht abziehb. VSt a. Zinsen u. ähnl. Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('2171', 'Nicht abziehb. VSt, 7% a. Zinsen u. ähnl. Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('2175', 'Nicht abziehb. VSt. 16% a. Zinsen u. ähnl. Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('2176', 'Nicht abziehb. VSt, 15% a. Zinsen u. ähnl. Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('2200', 'Körperschaftsteuer');
-INSERT INTO gifi (accno,description) VALUES ('2203', 'Körperschaftsteuer für Vorjahre');
-INSERT INTO gifi (accno,description) VALUES ('2205', 'Anrechenbare Körperschaftssteuer auf vereinnahmte Kapitalerträge');
-INSERT INTO gifi (accno,description) VALUES ('2208', 'Solidaritätszuschlag');
-INSERT INTO gifi (accno,description) VALUES ('2209', 'Solidaritätszuschlag für Vorjahre');
-INSERT INTO gifi (accno,description) VALUES ('2210', 'Kapitalertragsteuer');
-INSERT INTO gifi (accno,description) VALUES ('2213', 'Anrechenbarer Solidaritätszuschlag auf Kapitalertragssteuer');
-INSERT INTO gifi (accno,description) VALUES ('2215', 'Zinsabschlagsteuer');
-INSERT INTO gifi (accno,description) VALUES ('2218', 'Anrechenbarer Solidaritätszuschlag auf Zinsabschlagsteuer');
-INSERT INTO gifi (accno,description) VALUES ('2223', 'Vermögensteuer für Vorjahre');
-INSERT INTO gifi (accno,description) VALUES ('2280', 'Steuernachz. Vorjahre f. Steuern v. Einkommen u. Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('2282', 'Steuererstatt. Vorjahre f. Steuern v. Einkommen u. Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('2284', 'Erträge a. Aufl. v. Rückst. f. Steuern v. Eink. u. Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('2285', 'Steuernachzahlung Vorjahre für sonstige Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2287', 'Steuererstattung Vorjahre für sonstige Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2289', 'Erträge a. d. Auflösung v. Rückstell. f. sonstige Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2300', 'Sonstige Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2307', 'Sonstige Aufwendungen betriebsfremd und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('2309', 'Sonstige Aufwendungen unregelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('2310', 'Anlagenabgänge (Restbuchwert und Buchverlust)');
-INSERT INTO gifi (accno,description) VALUES ('2315', 'Anlagenabgänge (Restbuchwert bei Buchgewinn)');
-INSERT INTO gifi (accno,description) VALUES ('2320', 'Verluste a. Abgang v. Gegenst. d. Anlagevermögens');
-INSERT INTO gifi (accno,description) VALUES ('2325', 'Verluste a. Abgang v. Gegenst. d. Umlaufv. (außer Vorräte)');
-INSERT INTO gifi (accno,description) VALUES ('2340', 'Einstell. in Sonderpost. m. Rücklageant. (steuerfr. Rückl.)');
-INSERT INTO gifi (accno,description) VALUES ('2341', 'Einstell. in Sonderpost. m. Rücklageant. (Ansparabschreibungen)');
-INSERT INTO gifi (accno,description) VALUES ('2345', 'Einstell. in Sonderpost. m. Rücklageant. (Sonderabschr.)');
-INSERT INTO gifi (accno,description) VALUES ('2350', 'Grundstücksaufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('2375', 'Grundsteuer');
-INSERT INTO gifi (accno,description) VALUES ('2380', 'Spenden, steuerlich nicht absetzbar');
-INSERT INTO gifi (accno,description) VALUES ('2381', 'Beiträge u. Spenden f. wissenschaftl. u. kulturelle Zwecke');
-INSERT INTO gifi (accno,description) VALUES ('2382', 'Beiträge u. Spenden f. mildtätige Zwecke');
-INSERT INTO gifi (accno,description) VALUES ('2383', 'Beiträge u. Spenden f. kirchl., religiöse u. gemeinn. Zwecke');
-INSERT INTO gifi (accno,description) VALUES ('2384', 'Beiträge u. Spenden an politische Parteien');
-INSERT INTO gifi (accno,description) VALUES ('2385', 'Nicht abziehbare Hälfte der Aufsichtsratsvergütungen');
-INSERT INTO gifi (accno,description) VALUES ('2386', 'Abziehbare Aufsichtsratsvergütungen');
-INSERT INTO gifi (accno,description) VALUES ('2400', 'Forderungsverluste (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2401', 'Forderungsverluste, 7% USt (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2402', 'Ford.Verl. a. steuerfr. EU-Lief. (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2403', 'Ford.Verl. a.i. Inl. steuerpfl. EU-Lief., 7% USt (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2404', 'Ford.Verl. a.i. Inl. steuerpfl. EU-Lief., 15%+16%USt (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2405', 'Forderungsverluste, 15%+16% USt (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2406', 'Forderungsverluste, 16% USt (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2407', 'Forderungsverluste, 15% USt (übliche Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2408', 'Ford.Verl. a.i. Inl. steuerpfl. EU-Lief., 16%USt (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2409', 'Ford.Verl. a.i. Inl. steuerpfl. EU-Lief., 15%USt (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('2430', 'Forderungsverlust unüblich hoch');
-INSERT INTO gifi (accno,description) VALUES ('2450', 'Einstellungen in Pauschalwertberichtigung zu Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('2451', 'Einstellungen in Einzelwertberichtigung zu Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('2490', 'Aufwendungen aus Verlustübernahme');
-INSERT INTO gifi (accno,description) VALUES ('2492', 'Abgef. Gew. aufgrund einer Gewinngemeinschaft');
-INSERT INTO gifi (accno,description) VALUES ('2493', 'Abgef. Gew. a. stille Gesellschafter §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('2494', 'Abgef. Gew. a. Gewinn- oder Teilgewinnabführungsvertr.');
-INSERT INTO gifi (accno,description) VALUES ('2495', 'Einst. in die Kapitalrückl. n. Vorschr. d. vereinf. Kap.Herabs.');
-INSERT INTO gifi (accno,description) VALUES ('2496', 'Einst. in die gesetzliche Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('2497', 'Einst. in die satzungsmäßige Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('2498', 'Einst. in die Rücklage für eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('2499', 'Einst. in andere Gewinnrücklagen');
-INSERT INTO gifi (accno,description) VALUES ('2500', 'Außerordentliche Erträge');
-INSERT INTO gifi (accno,description) VALUES ('2510', 'Betriebsfremde Erträge (soweit nicht außerordentlich)');
-INSERT INTO gifi (accno,description) VALUES ('2520', 'Periodenfremde Erträge (soweit nicht außerordentlich)');
-INSERT INTO gifi (accno,description) VALUES ('2600', 'Erträge aus Beteiligungen');
-INSERT INTO gifi (accno,description) VALUES ('2617', 'Gewinne a.Ant. an nicht steuerbefr. inländischen KG §9Nr.2aGewStG');
-INSERT INTO gifi (accno,description) VALUES ('2618', 'Gewinnanteile aus Mitunternehmerschaften §9 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('2619', 'Erträge aus Beteiligungen an verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2620', 'Ertr. a. and. Wertpap. u. Ausl. d. Finanzanlageverm.');
-INSERT INTO gifi (accno,description) VALUES ('2649', 'Ertr. a. and. Wertpap. u. Ausl. d. Fin.Anl.Verm. a. verb. U.');
-INSERT INTO gifi (accno,description) VALUES ('2650', 'Sonstige Zinsen und ähnliche Erträge');
-INSERT INTO gifi (accno,description) VALUES ('2657', 'Zinserträge §233a AO betriebliche Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2658', 'Zinserträge §233a AO Körperschaftsteuer / Vermögensteuer');
-INSERT INTO gifi (accno,description) VALUES ('2659', 'Sonstige Zinsen u. ähnliche Erträge aus verb. Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2660', 'Erträge aus Kursdifferenzen');
-INSERT INTO gifi (accno,description) VALUES ('2670', 'Diskonterträge');
-INSERT INTO gifi (accno,description) VALUES ('2679', 'Diskonterträge aus verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2680', 'Zinsähnliche Erträge');
-INSERT INTO gifi (accno,description) VALUES ('2689', 'Zinsähnliche Erträge aus verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('2700', 'Sonstige Erträge');
-INSERT INTO gifi (accno,description) VALUES ('2705', 'Sonstige Erträge betrieblich und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('2707', 'Sonstige Erträge betriebsfremd und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('2709', 'Sonstige Erträge unregelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('2710', 'Erträge aus Zuschreibungen des Anlagevermögens');
-INSERT INTO gifi (accno,description) VALUES ('2715', 'Erträge aus Zuschreibungen des Umlaufvermögens');
-INSERT INTO gifi (accno,description) VALUES ('2720', 'Ertr. a. Abgang v. Gegenst. d. Anlagevermögens');
-INSERT INTO gifi (accno,description) VALUES ('2725', 'Ertr. a. Abgang v. Gegenst. d. Umlaufv.s (außer Vorräte)');
-INSERT INTO gifi (accno,description) VALUES ('2730', 'Ertr. a. Herabs. d. Pauschalwertber. zu Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('2731', 'Ertr. a. Herabs. d. Einzelwertber. zu Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('2732', 'Erträge aus abgeschriebenen Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('2735', 'Erträge aus der Auflösung von Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('2739', 'Erträge aus der Auflösung von Sonderpost. m. Rücklageant. (Ansparabschr.)');
-INSERT INTO gifi (accno,description) VALUES ('2740', 'Ertr. a. Aufl. v. Sonderp. m. Rückl.Ant. (steuerfr. Rückl.)');
-INSERT INTO gifi (accno,description) VALUES ('2741', 'Ertr. a. Aufl. v. Sonderp. m. Rückl.Ant. (Sonderabschr.)');
-INSERT INTO gifi (accno,description) VALUES ('2742', 'Versicherungsentschädigungen');
-INSERT INTO gifi (accno,description) VALUES ('2743', 'Investitionszuschüsse (steuerpflichtig)');
-INSERT INTO gifi (accno,description) VALUES ('2744', 'Investitionszulagen (steuerfrei)');
-INSERT INTO gifi (accno,description) VALUES ('2745', 'Erträge aus Kapitalherabsetzung');
-INSERT INTO gifi (accno,description) VALUES ('2750', 'Grundstückserträge');
-INSERT INTO gifi (accno,description) VALUES ('2780', 'Steuererstattung Vorjahre f. Steuern vom Eink. u. Ertrag');
-INSERT INTO gifi (accno,description) VALUES ('2785', 'Steuererstattung Vorjahre f. sonstige Steuern');
-INSERT INTO gifi (accno,description) VALUES ('2790', 'Erträge aus Verlustübernahme');
-INSERT INTO gifi (accno,description) VALUES ('2792', 'Erh. Gew. aufgrund einer Gewinngemeinschaft');
-INSERT INTO gifi (accno,description) VALUES ('2794', 'Erh. Gew. aufgrund eines Gew.- oder Teilgew.Abführ.Vertr.');
-INSERT INTO gifi (accno,description) VALUES ('2795', 'Entnahmen aus der Kapitalrücklage');
-INSERT INTO gifi (accno,description) VALUES ('2796', 'Entnahmen aus der gesetzlichen Rücklage');
-INSERT INTO gifi (accno,description) VALUES ('2797', 'Entnahmen aus satzungsgemäßen Rücklagen');
-INSERT INTO gifi (accno,description) VALUES ('2798', 'Entnahmen aus der Rücklage für eigene Anteile');
-INSERT INTO gifi (accno,description) VALUES ('2799', 'Entnahmen aus anderen Gewinnrücklagen');
-INSERT INTO gifi (accno,description) VALUES ('2860', 'Gewinnvortrag nach Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('2862', 'Gewinnvortrag 50/45% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('2864', 'Gewinnvortrag 30% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('2866', 'Gewinnvortrag 0% Vorbelastung');
-INSERT INTO gifi (accno,description) VALUES ('2868', 'Verlustvortrag nach Verwendung');
-INSERT INTO gifi (accno,description) VALUES ('2869', 'Vorträge auf neue Rechnung (GuV)');
-INSERT INTO gifi (accno,description) VALUES ('2870', 'Ausschüttung');
-INSERT INTO gifi (accno,description) VALUES ('2890', 'Verrechneter kalkulatorischer Unternehmerlohn');
-INSERT INTO gifi (accno,description) VALUES ('2891', 'Verrechnete kalkulatorische Miete und Pacht');
-INSERT INTO gifi (accno,description) VALUES ('2892', 'Verrechnete kalkulatorische Zinsen');
-INSERT INTO gifi (accno,description) VALUES ('2893', 'Verrechnete kalkulatorische Abschreibung');
-INSERT INTO gifi (accno,description) VALUES ('2894', 'Verrechnete kalkulatorische Wagnisse');
-INSERT INTO gifi (accno,description) VALUES ('2895', 'Verrechneter kalkulatorischer Lohn für unentgeltliche Mitarbeiter');
-INSERT INTO gifi (accno,description) VALUES ('3000', 'Roh-, Hilfs- und Betriebsstoffe');
-INSERT INTO gifi (accno,description) VALUES ('3090', 'Energiestoffe (Fertigung)');
-INSERT INTO gifi (accno,description) VALUES ('3100', 'Fremdleistungen');
-INSERT INTO gifi (accno,description) VALUES ('3150', 'Leistungen von ausländischen Unternehmen (Nullregelung)');
-INSERT INTO gifi (accno,description) VALUES ('3200', 'Wareneingang');
-INSERT INTO gifi (accno,description) VALUES ('3300', 'Wareneingang, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3340', 'Wareneingang, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3400', 'Wareneingang, 15%+16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3410', 'Wareneingang, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3420', 'Innergem. Erwerb, 7% VSt u. 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('3425', 'Innergem. Erwerb, 15%+16% VSt u. 15%+16% USt');
-INSERT INTO gifi (accno,description) VALUES ('3430', 'Innergem. Erwerb, ohne VSt-Abzug u. 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('3431', 'Innergem. Erwerb, 16% VSt u. 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3433', 'Innergem. Erwerb, 15% VSt u. 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3435', 'Innergem. Erwerb, ohne VSt-Abzug u. 15%+16% USt');
-INSERT INTO gifi (accno,description) VALUES ('3436', 'Innergem. Erwerb, ohne VSt-Abzug u. 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3437', 'Innergem. Erwerb, ohne VSt-Abzug u. 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3440', 'Innergem. Erw. v. Neufahrz. v. Lief. ohne USt-ID, 15%+16% USt');
-INSERT INTO gifi (accno,description) VALUES ('3441', 'Innergem. Erw. v. Neufahrz. v. Lief. ohne USt-ID, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3442', 'Innergem. Erw. v. Neufahrz. v. Lief. ohne USt-ID, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3500', 'Wareneingang, 5% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3530', 'Wareneingang, 9% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3540', 'Wareneingang, 9,5% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3550', 'Steuerfreier innergemeinschaftlicher Erwerb');
-INSERT INTO gifi (accno,description) VALUES ('3600', 'Nicht abziehbare Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3610', 'Nicht abziehbare Vorsteuer, 7%');
-INSERT INTO gifi (accno,description) VALUES ('3650', 'Nicht abziehbare Vorsteuer, 16%');
-INSERT INTO gifi (accno,description) VALUES ('3660', 'Nicht abziehbare Vorsteuer, 15%');
-INSERT INTO gifi (accno,description) VALUES ('3700', 'Nachlässe');
-INSERT INTO gifi (accno,description) VALUES ('3710', 'Nachlässe, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3720', 'Nachlässe, 15%+16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3722', 'Nachlässe, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3723', 'Nachlässe, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3724', 'Nachlässe aus ig. Erwerb, 7% VSt und 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('3725', 'Nachlässe aus ig. Erwerb, 15%+16% VSt und 15%+16% USt');
-INSERT INTO gifi (accno,description) VALUES ('3726', 'Nachlässe aus ig. Erwerb, 16% VSt und 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3727', 'Nachlässe aus ig. Erwerb, 15% VSt und 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('3730', 'Erhaltene Skonti');
-INSERT INTO gifi (accno,description) VALUES ('3731', 'Erhaltene Skonti, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3735', 'Erhaltene Skonti, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3736', 'Erhaltene Skonti, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3740', 'Erhaltene Boni');
-INSERT INTO gifi (accno,description) VALUES ('3750', 'Erhaltene Boni, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3760', 'Erhaltene Boni, 15%+16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3762', 'Erhaltene Boni, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3764', 'Erhaltene Boni, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3770', 'Erhaltene Rabatte');
-INSERT INTO gifi (accno,description) VALUES ('3780', 'Erhaltene Rabatte, 7% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3790', 'Erhaltene Rabatte, 15%+16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3792', 'Erhaltene Rabatte, 16% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3794', 'Erhaltene Rabatte, 15% Vorsteuer');
-INSERT INTO gifi (accno,description) VALUES ('3800', 'Anschaffungsnebenkosten');
-INSERT INTO gifi (accno,description) VALUES ('3830', 'Leergut');
-INSERT INTO gifi (accno,description) VALUES ('3850', 'Zölle und Einfuhrabgaben');
-INSERT INTO gifi (accno,description) VALUES ('3960', 'Bestandsv. Roh-, Hilfs- u. Betriebsstoffe / bezogene Waren');
-INSERT INTO gifi (accno,description) VALUES ('3970', 'Bestand Roh-, Hilfs- und Betriebsstoffe');
-INSERT INTO gifi (accno,description) VALUES ('3980', 'Bestand Waren');
-INSERT INTO gifi (accno,description) VALUES ('3990', 'Verrechnete Stoffkosten');
-INSERT INTO gifi (accno,description) VALUES ('4000', 'Material- und Stoffverbrauch');
-INSERT INTO gifi (accno,description) VALUES ('4100', 'Löhne und Gehälter');
-INSERT INTO gifi (accno,description) VALUES ('4110', 'Löhne');
-INSERT INTO gifi (accno,description) VALUES ('4120', 'Gehälter');
-INSERT INTO gifi (accno,description) VALUES ('4124', 'Geschäftsführergehälter der GmbH-Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('4125', 'Ehegattengehalt');
-INSERT INTO gifi (accno,description) VALUES ('4126', 'Tantiemen');
-INSERT INTO gifi (accno,description) VALUES ('4127', 'Geschäftsführergehälter');
-INSERT INTO gifi (accno,description) VALUES ('4128', 'Vergütungen an angestellte Mitunternehmer §15 EStG');
-INSERT INTO gifi (accno,description) VALUES ('4130', 'Gesetzliche soziale Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('4137', 'Gesetzliche soziale Aufw. für Mitunternehmer §15 EStG');
-INSERT INTO gifi (accno,description) VALUES ('4138', 'Beiträge zur Berufsgenossenschaft');
-INSERT INTO gifi (accno,description) VALUES ('4139', 'Ausgleichsabgabe i. S. d. Schwerbehindertengesetzes');
-INSERT INTO gifi (accno,description) VALUES ('4140', 'Freiw. soziale Aufwendungen (lohnsteuerfrei)');
-INSERT INTO gifi (accno,description) VALUES ('4145', 'Freiw. soziale Aufwendungen (lohnsteuerpflichtig)');
-INSERT INTO gifi (accno,description) VALUES ('4149', 'Pauschale Lohnsteuer auf s. Bezüge (z.B. Fahrtkostenzuschuß)');
-INSERT INTO gifi (accno,description) VALUES ('4150', 'Krankengeldzuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('4160', 'Versorgungskassen');
-INSERT INTO gifi (accno,description) VALUES ('4165', 'Aufwendungen für die Altersversorgung');
-INSERT INTO gifi (accno,description) VALUES ('4167', 'Pauschale Lohnsteuer auf s. Bezüge (z.B. Direktversicherung)');
-INSERT INTO gifi (accno,description) VALUES ('4168', 'Aufw. f. die Altersversorgung f. Mitunternehmer §15 EStG');
-INSERT INTO gifi (accno,description) VALUES ('4169', 'Aufwendungen für Unterstützung');
-INSERT INTO gifi (accno,description) VALUES ('4170', 'Vermögenswirksame Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('4175', 'Fahrtkostenerstattung - Wohnung / Arbeitsstätte');
-INSERT INTO gifi (accno,description) VALUES ('4180', 'Bedienungsgelder');
-INSERT INTO gifi (accno,description) VALUES ('4190', 'Aushilfslöhne');
-INSERT INTO gifi (accno,description) VALUES ('4199', 'Lohnsteuer für Aushilfen');
-INSERT INTO gifi (accno,description) VALUES ('4200', 'Raumkosten');
-INSERT INTO gifi (accno,description) VALUES ('4210', 'Miete');
-INSERT INTO gifi (accno,description) VALUES ('4218', 'Gewerbesteuerlich zu berücks. Miete §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('4219', 'Vergütung an Mitu. f. mietw. Überl. v. Wirtschaftsg. §15EStG');
-INSERT INTO gifi (accno,description) VALUES ('4220', 'Pacht');
-INSERT INTO gifi (accno,description) VALUES ('4228', 'Gewerbesteuerlich zu berücks. Pacht §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('4229', 'Vergütung an Mitu. f. pachtw. Überl. v. Wirtschaftsg.§15EStG');
-INSERT INTO gifi (accno,description) VALUES ('4230', 'Heizung');
-INSERT INTO gifi (accno,description) VALUES ('4240', 'Gas, Strom, Wasser (Verwaltung, Vertrieb)');
-INSERT INTO gifi (accno,description) VALUES ('4250', 'Reinigung');
-INSERT INTO gifi (accno,description) VALUES ('4260', 'Instandhaltung betrieblicher Räume');
-INSERT INTO gifi (accno,description) VALUES ('4270', 'Abgaben für betrieblich genutzten Grundbesitz');
-INSERT INTO gifi (accno,description) VALUES ('4280', 'Sonstige Raumkosten');
-INSERT INTO gifi (accno,description) VALUES ('4300', 'Nicht abziehb. VSt a. sonst. betriebl. Aufw./AfA');
-INSERT INTO gifi (accno,description) VALUES ('4301', 'Nicht abziehb. VSt, 7% a. sonst. betriebl. Aufw./AfA');
-INSERT INTO gifi (accno,description) VALUES ('4305', 'Nicht abziehb. VSt, 16% a. sonst. betriebl. Aufw./AfA');
-INSERT INTO gifi (accno,description) VALUES ('4306', 'Nicht abziehb. VSt, 15% a. sonst. betriebl. Aufw./AfA');
-INSERT INTO gifi (accno,description) VALUES ('4320', 'Gewerbesteuer (Vorauszahlung)');
-INSERT INTO gifi (accno,description) VALUES ('4330', 'Gewerbeertragsteuer');
-INSERT INTO gifi (accno,description) VALUES ('4335', 'Gewerbekapitalsteuer');
-INSERT INTO gifi (accno,description) VALUES ('4340', 'Sonstige Betriebsteuern');
-INSERT INTO gifi (accno,description) VALUES ('4350', 'Verbrauchsteuer');
-INSERT INTO gifi (accno,description) VALUES ('4360', 'Versicherungen');
-INSERT INTO gifi (accno,description) VALUES ('4370', 'Nettoprämie für Rückdeckung künftiger Versorgungsleistungen');
-INSERT INTO gifi (accno,description) VALUES ('4380', 'Beiträge');
-INSERT INTO gifi (accno,description) VALUES ('4390', 'Sonstige Abgaben');
-INSERT INTO gifi (accno,description) VALUES ('4396', 'Steuerlich abzugsfähige Verspätungszuschläge und Zwangsgelder');
-INSERT INTO gifi (accno,description) VALUES ('4397', 'Steuerlich nicht abzugsfähige Verspätungszuschläge und Zwangsgelder');
-INSERT INTO gifi (accno,description) VALUES ('4400', 'Besondere Kosten (zur freien Verfügung)');
-INSERT INTO gifi (accno,description) VALUES ('4500', 'Fahrzeugkosten');
-INSERT INTO gifi (accno,description) VALUES ('4510', 'Kfz-Steuern');
-INSERT INTO gifi (accno,description) VALUES ('4520', 'Kfz-Versicherungen');
-INSERT INTO gifi (accno,description) VALUES ('4530', 'Laufende Kfz-Betriebskosten');
-INSERT INTO gifi (accno,description) VALUES ('4540', 'Kfz-Reparaturen');
-INSERT INTO gifi (accno,description) VALUES ('4550', 'Garagenmieten');
-INSERT INTO gifi (accno,description) VALUES ('4570', 'Fremdfahrzeuge');
-INSERT INTO gifi (accno,description) VALUES ('4580', 'Sonstige Kfz-Kosten');
-INSERT INTO gifi (accno,description) VALUES ('4600', 'Werbe- und Reisekosten');
-INSERT INTO gifi (accno,description) VALUES ('4610', 'Werbekosten');
-INSERT INTO gifi (accno,description) VALUES ('4630', 'Geschenke bis DM 75,00');
-INSERT INTO gifi (accno,description) VALUES ('4635', 'Geschenke über DM 75,00');
-INSERT INTO gifi (accno,description) VALUES ('4638', 'Geschenke ausschließlich betrieblich genutzt');
-INSERT INTO gifi (accno,description) VALUES ('4640', 'Repräsentationskosten');
-INSERT INTO gifi (accno,description) VALUES ('4650', 'Bewirtungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4653', 'Aufwerksamkeiten');
-INSERT INTO gifi (accno,description) VALUES ('4654', 'Nicht abzugsfähige Bewirtungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4655', 'Nicht abzugsfähige Betriebsausgaben');
-INSERT INTO gifi (accno,description) VALUES ('4660', 'Reisekosten Arbeitnehmer');
-INSERT INTO gifi (accno,description) VALUES ('4666', 'Reisekost. Arbeitn., 12,3%/13,1% VSt Verpfl.Mehr- / Übern.Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('4667', 'Reisekost. Arbeitn., 9,8%/10,5% VSt Gesamtpauschal.');
-INSERT INTO gifi (accno,description) VALUES ('4670', 'Reisekosten Unternehmer');
-INSERT INTO gifi (accno,description) VALUES ('4675', 'Reisekosten Unternehmer, 9,8/10,5% VSt sonst.Gesamtpauschal.');
-INSERT INTO gifi (accno,description) VALUES ('4676', 'Reisekost. Untern., 12,3%/13,1% VSt Verpfl.Mehr- / Übern.Aufw.');
-INSERT INTO gifi (accno,description) VALUES ('4677', 'Reisekosten Unternehmer, 9,8%/10,5% VSt Verpfl.Mehraufw. Gesamtpauschal.');
-INSERT INTO gifi (accno,description) VALUES ('4678', 'Km-Geld Erstattung, Unternehmer, 5,7%/6,1% VSt');
-INSERT INTO gifi (accno,description) VALUES ('4685', 'Km-Geld-Erstattung, Arbeitnehmer 8,2%/8,7% VSt');
-INSERT INTO gifi (accno,description) VALUES ('4700', 'Kosten der Warenabgabe');
-INSERT INTO gifi (accno,description) VALUES ('4710', 'Verpackungsmaterial');
-INSERT INTO gifi (accno,description) VALUES ('4730', 'Ausgangsfrachten');
-INSERT INTO gifi (accno,description) VALUES ('4750', 'Transportversicherungen');
-INSERT INTO gifi (accno,description) VALUES ('4760', 'Verkaufsprovisionen');
-INSERT INTO gifi (accno,description) VALUES ('4780', 'Fremdarbeiten');
-INSERT INTO gifi (accno,description) VALUES ('4790', 'Aufwand für Gewährleistungen');
-INSERT INTO gifi (accno,description) VALUES ('4800', 'Reparat. u. Inst. v. Maschinen u. technischen Anlagen');
-INSERT INTO gifi (accno,description) VALUES ('4805', 'Reparat. u. Inst. v. and. Anl. d. Betr.- u. Geschäftsausst.');
-INSERT INTO gifi (accno,description) VALUES ('4809', 'Sonstige Reparaturen und Instandhaltungen');
-INSERT INTO gifi (accno,description) VALUES ('4810', 'Mietleasing');
-INSERT INTO gifi (accno,description) VALUES ('4814', 'Gewerbesteuerl. zu berücksicht. Mietleasing §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('4815', 'Kaufleasing');
-INSERT INTO gifi (accno,description) VALUES ('4820', 'Abschr. a. Aufw. f.d. Ingangs. u. Erw. des Geschäftsbetr.');
-INSERT INTO gifi (accno,description) VALUES ('4822', 'Abschr. a. immaterielle Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('4824', 'Abschreibung auf den Geschäfts- oder Firmenwert');
-INSERT INTO gifi (accno,description) VALUES ('4826', 'Außerplanm. Abschr. a. immaterielle Vermögensgegenstände');
-INSERT INTO gifi (accno,description) VALUES ('4830', 'Abschreibungen auf Sachanlagen');
-INSERT INTO gifi (accno,description) VALUES ('4840', 'Außerplanm. Abschreibungen auf Sachanlagen');
-INSERT INTO gifi (accno,description) VALUES ('4850', 'Abschr. a. Sachanl. aufgrund steuerl. Sondervorschriften');
-INSERT INTO gifi (accno,description) VALUES ('4855', 'Sofortabschreibung geringwertiger Wirtschaftsgüter');
-INSERT INTO gifi (accno,description) VALUES ('4860', 'Abschreibung auf aktivierte, geringwertige Wirtschaftsgüter');
-INSERT INTO gifi (accno,description) VALUES ('4865', 'Außerplanmäßige Abschr. a. aktivierte GWG');
-INSERT INTO gifi (accno,description) VALUES ('4870', 'Abschreibungen auf Finanzanlagen');
-INSERT INTO gifi (accno,description) VALUES ('4872', 'Abschr. aufgrund v. Verlustant. an Mitunt. §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('4874', 'Abschr. a. Finanzanl. aufgrund steuerl. Sondervorschriften');
-INSERT INTO gifi (accno,description) VALUES ('4875', 'Abschreibungen auf Wertpapiere des Umlaufvermögens');
-INSERT INTO gifi (accno,description) VALUES ('4879', 'Vorwegn. künft. Wertschw. bei Wertpapieren des Umlaufv.');
-INSERT INTO gifi (accno,description) VALUES ('4880', 'Abschr. a. Umlaufv. ohne Wertpapiere (soweit unübl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('4882', 'Abschr. a. Umlaufv. steuerrechtl. bedingt (unübl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('4885', 'Vorwegn. künft. Wertschw. Uml.V. auß. Vorr./Wertp. d. Uml.V.');
-INSERT INTO gifi (accno,description) VALUES ('4886', 'Abschr. a. Uml.V. auß. Vorr./Wertp. d. Uml.V. (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('4887', 'Abschr. a. Umlaufv., steuerrechtlich bedingt (übl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('4890', 'Vorwegn. künftiger Wertschw. im Umlaufv. (unübl. Höhe)');
-INSERT INTO gifi (accno,description) VALUES ('4900', 'Sonstige betriebliche Aufwendungen');
-INSERT INTO gifi (accno,description) VALUES ('4905', 'Sonstige Aufwendungen betrieblich und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('4910', 'Porto');
-INSERT INTO gifi (accno,description) VALUES ('4920', 'Telefon');
-INSERT INTO gifi (accno,description) VALUES ('4925', 'Telefax, Fernschreiber');
-INSERT INTO gifi (accno,description) VALUES ('4930', 'Bürobedarf');
-INSERT INTO gifi (accno,description) VALUES ('4940', 'Zeitschriften, Bücher');
-INSERT INTO gifi (accno,description) VALUES ('4945', 'Fortbildungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4946', 'Freiwillige Sozialleistungen');
-INSERT INTO gifi (accno,description) VALUES ('4948', 'Vergütungen an freiberufliche Mitunternehmer §15 EStG');
-INSERT INTO gifi (accno,description) VALUES ('4950', 'Rechts- und Beratungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4955', 'Buchführungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4957', 'Abschluß- und Prüfungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4960', 'Mieten für Einrichtungen');
-INSERT INTO gifi (accno,description) VALUES ('4968', 'Gewerbest. zu berücks. Miete f. Einrichtungen §8 GewStG');
-INSERT INTO gifi (accno,description) VALUES ('4969', 'Aufwendungen für Abraum- und Abfallbeseitigung');
-INSERT INTO gifi (accno,description) VALUES ('4970', 'Nebenkosten des Geldverkehrs');
-INSERT INTO gifi (accno,description) VALUES ('4980', 'Betriebsbedarf');
-INSERT INTO gifi (accno,description) VALUES ('4985', 'Werkzeuge und Kleingeräte');
-INSERT INTO gifi (accno,description) VALUES ('4990', 'Kalkulatorischer Unternehmerlohn');
-INSERT INTO gifi (accno,description) VALUES ('4991', 'Kalkulatorische Miete und Pacht');
-INSERT INTO gifi (accno,description) VALUES ('4992', 'Kalkulatorischer Zinsen');
-INSERT INTO gifi (accno,description) VALUES ('4993', 'Kalkulatorische Abschreibungen');
-INSERT INTO gifi (accno,description) VALUES ('4994', 'Kalkulatorische Wagnisse');
-INSERT INTO gifi (accno,description) VALUES ('4995', 'Kalkulatorischer Lohn für unentgeltliche Mitarbeiter');
-INSERT INTO gifi (accno,description) VALUES ('4996', 'Herstellungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4997', 'Verwaltungskosten');
-INSERT INTO gifi (accno,description) VALUES ('4998', 'Vertriebskosten');
-INSERT INTO gifi (accno,description) VALUES ('4999', 'Gegenkonto 49960-49980');
-INSERT INTO gifi (accno,description) VALUES ('7000', 'Unfertige Erzeugnisse, unfertige Leistungen (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('7050', 'Unfertige Erzeugnisse (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('7080', 'Unfertige Leistungen (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('7090', 'In Ausführung befindliche Bauaufträge');
-INSERT INTO gifi (accno,description) VALUES ('7095', 'In Arbeit befindliche Bauaufträge');
-INSERT INTO gifi (accno,description) VALUES ('7100', 'Fertige Erzeugnisse und Waren (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('7110', 'Fertige Erzeugnisse (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('7140', 'Fertige Waren (Bestand)');
-INSERT INTO gifi (accno,description) VALUES ('8000', 'Erlöse (zur freien Verfügung)');
-INSERT INTO gifi (accno,description) VALUES ('8100', 'Steuerfreie Umsätze o. VSt-Abzug §4 Nr.8 ff. UStG');
-INSERT INTO gifi (accno,description) VALUES ('8110', 'Sonstige steuerfreie o. VSt-Abzug Umsätze Inland');
-INSERT INTO gifi (accno,description) VALUES ('8120', 'Steuerfreie Umsätze m. VSt-Abzug §4 Nr.1a, 1c, 2-7 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8125', 'Steuerfreie innergem. Lief. §4 Nr.1b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8130', 'Lieferung d. ersten Abnehmers bei innergem. Dreiecksgesch. §25 b Abs. 2 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8135', 'Steuerfreie ig. Lief. v. Neufahrz. an Abn. ohne UST-ID');
-INSERT INTO gifi (accno,description) VALUES ('8140', 'Steuerfreie Umsätze Offshore usw.');
-INSERT INTO gifi (accno,description) VALUES ('8150', 'Sonstige steuerfreie Umsätze Ausland (§4,2-7)');
-INSERT INTO gifi (accno,description) VALUES ('8195', 'Erlöse aus Geldspielautomaten, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8196', 'Erlöse aus Geldspielautomaten, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8197', 'Erlöse aus Geldspielautomaten, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8200', 'Erlöse');
-INSERT INTO gifi (accno,description) VALUES ('8300', 'Erlöse, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8310', 'Erlöse a.i.Inland steuerpfl. EU-Lieferungen, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8315', 'Erlöse a.i.Inland steuerpfl. EU-Lieferungen, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8320', 'Erlöse a.i. anderen EU-Land steuerpfl. Lieferungen');
-INSERT INTO gifi (accno,description) VALUES ('8330', 'Erlöse a.i.Inland steuerpfl. EU-Lieferungen, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8335', 'Erlöse a.i.Inland steuerpfl. EU-Lieferungen, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8339', 'Erlöse a.i. and. EU-Land steuerpfl. sonst. Leist. (Nullreg.)');
-INSERT INTO gifi (accno,description) VALUES ('8340', 'Erlöse, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8400', 'Erlöse, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8410', 'Erlöse, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8500', 'Provisionserlöse');
-INSERT INTO gifi (accno,description) VALUES ('8504', 'Provisionserlöse steuerfrei (§4 Nr.8ff UStG)');
-INSERT INTO gifi (accno,description) VALUES ('8505', 'Provisionserlöse steuerfrei (§4 Nr.5 UStG)');
-INSERT INTO gifi (accno,description) VALUES ('8506', 'Provisionserlöse, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8507', 'Provisionserlöse, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8508', 'Provisionserlöse, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8509', 'Provisionserlöse, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8520', 'Erlöse Abfallverwertung');
-INSERT INTO gifi (accno,description) VALUES ('8540', 'Erlöse Leergut');
-INSERT INTO gifi (accno,description) VALUES ('8590', 'Verrechnete Sachbezüge (keine Waren)');
-INSERT INTO gifi (accno,description) VALUES ('8591', 'Sachbezüge, 7% USt (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('8595', 'Sachbezüge, 15%/16% USt (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('8596', 'Sachbezüge, 16% USt (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('8597', 'Sachbezüge, 15% USt (Waren)');
-INSERT INTO gifi (accno,description) VALUES ('8600', 'Sonstige Erlöse betrieblich und regelmäßig');
-INSERT INTO gifi (accno,description) VALUES ('8610', 'Verrechnete sonstige Sachbezüge');
-INSERT INTO gifi (accno,description) VALUES ('8611', 'Verrechnete sonstige Sachbezüge 15%/16% USt (z.B. Kfz. Gestellung)');
-INSERT INTO gifi (accno,description) VALUES ('8612', 'Verrechnete sonstige Sachbezüge 16% USt (z.B. Kfz. Gestellung)');
-INSERT INTO gifi (accno,description) VALUES ('8613', 'Verrechnete sonstige Sachbezüge 15% USt (z.B. Kfz. Gestellung)');
-INSERT INTO gifi (accno,description) VALUES ('8614', 'Verrechnete sonstige Sachbezüge, ohne Umsatzsteuer');
-INSERT INTO gifi (accno,description) VALUES ('8625', 'Sonstige Erlöse betrieblich und regelmäßig, steuerfrei');
-INSERT INTO gifi (accno,description) VALUES ('8630', 'Sonstige Erlöse betrieblich und regelmäßig, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8640', 'Sonstige Erlöse betrieblich und regelmäßig, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8645', 'Sonstige Erlöse betrieblich und regelmäßig, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8647', 'Sonstige Erlöse betrieblich und regelmäßig, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8650', 'Erlöse Zinsen und Diskontspesen');
-INSERT INTO gifi (accno,description) VALUES ('8660', 'Erlöse Zinsen und Diskontspesen aus verbundenen Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('8700', 'Erlösschmälerungen');
-INSERT INTO gifi (accno,description) VALUES ('8705', 'Erlösschmälerungen aus steuerfreien Umsätzen §4 Nr. 1a UStG');
-INSERT INTO gifi (accno,description) VALUES ('8710', 'Erlösschmälerungen, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8720', 'Erlösschmälerungen, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8722', 'Erlösschmälerungen, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8723', 'Erlösschmälerungen, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8724', 'Erlösschmälerungen aus steuerfreien innergm. Lieferungen');
-INSERT INTO gifi (accno,description) VALUES ('8725', 'Erlösschmäl. a. im Inland steuerpfl. EU-Lieferungen, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8726', 'Erlösschmäl. a. im Inland steuerpfl. EU-Lieferungen, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8727', 'Erlösschmäl. a. im anderen EU-Land steuerpfl. Lief.');
-INSERT INTO gifi (accno,description) VALUES ('8728', 'Erlösschmäl. a. im Inland steuerpfl. EU-Lieferungen, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8729', 'Erlösschmäl. a. im Inland steuerpfl. EU-Lieferungen, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8730', 'Gewährte Skonti');
-INSERT INTO gifi (accno,description) VALUES ('8731', 'Gewährte Skonti, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8735', 'Gewährte Skonti, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8736', 'Gewährte Skonti, 15% USt');
-INSERT INTO gifi (accno,description) VALUES ('8740', 'Gewährte Boni');
-INSERT INTO gifi (accno,description) VALUES ('8750', 'Gewährte Boni, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8760', 'Gewährte Boni, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8762', 'Gewährte Boni, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8764', 'Gewährte Boni, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8770', 'Gewährte Rabatte');
-INSERT INTO gifi (accno,description) VALUES ('8780', 'Gewährte Rabatte, 7% USt');
-INSERT INTO gifi (accno,description) VALUES ('8790', 'Gewährte Rabatte, 15%/16% USt');
-INSERT INTO gifi (accno,description) VALUES ('8792', 'Gewährte Rabatte, 16% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8794', 'Gewährte Rabatte, 15% Ust');
-INSERT INTO gifi (accno,description) VALUES ('8800', 'Erlöse aus Anlagenverkäufen');
-INSERT INTO gifi (accno,description) VALUES ('8801', 'Erlöse aus Anlagenverkäufen 15%/16% USt (bei Buchverlust)');
-INSERT INTO gifi (accno,description) VALUES ('8810', 'Erlöse aus Anlagenverkäufen 16% USt (bei Buchverlust)');
-INSERT INTO gifi (accno,description) VALUES ('8815', 'Erlöse aus Anlagenverkäufen 15% USt (bei Buchverlust)');
-INSERT INTO gifi (accno,description) VALUES ('8820', 'Erlöse aus Anlagenverkäufen 15%/16% USt (bei Buchgewinn)');
-INSERT INTO gifi (accno,description) VALUES ('8829', 'Erlöse aus Anlagenverkäufen (bei Buchgewinn)');
-INSERT INTO gifi (accno,description) VALUES ('8830', 'Erlöse aus Anlagenverkäufen 16% USt (bei Buchgewinn)');
-INSERT INTO gifi (accno,description) VALUES ('8835', 'Erlöse aus Anlagenverkäufen 15% USt (bei Buchgewinn)');
-INSERT INTO gifi (accno,description) VALUES ('8840', 'Erträge aus Kursdifferenzen');
-INSERT INTO gifi (accno,description) VALUES ('8900', 'Eigenverbrauch');
-INSERT INTO gifi (accno,description) VALUES ('8905', 'Entnahme Gegenstände ohne USt');
-INSERT INTO gifi (accno,description) VALUES ('8908', 'Entnahme von Gegenstände, 16% USt §1 Abs.1 Nr.2a UStG');
-INSERT INTO gifi (accno,description) VALUES ('8909', 'Entnahme von Gegenstände, 15% USt §1 Abs.1 Nr.2a UStG');
-INSERT INTO gifi (accno,description) VALUES ('8910', 'Entnahme von Gegenstände, 15%/16% USt §1 Abs.1 Nr.2a UStG');
-INSERT INTO gifi (accno,description) VALUES ('8915', 'Entnahme von Gegenstände, 7% USt §1 Abs.1 Nr.2a UStG');
-INSERT INTO gifi (accno,description) VALUES ('8920', 'Entnahme v. sonst. Leist., 15%/16% USt §1 A.1 Nr.2b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8930', 'Entnahme v. sonst. Leist., 7% USt §1 A.1 Nr.2b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8937', 'Entnahme v. sonst. Leist., 16% USt §1 A.1 Nr.2b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8938', 'Entnahme v. sonst. Leist., 15% USt §1 A.1 Nr.2b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8939', 'Entnahme v. sonst. Leist., ohne USt §1 A.1 Nr.2b UStG');
-INSERT INTO gifi (accno,description) VALUES ('8940', 'Eigenverbr., 15%/16% Ust §4 A.1 Nr.5 1-7, A.7 EStG');
-INSERT INTO gifi (accno,description) VALUES ('8941', 'Eigenverbr., 7% Ust §4 A.1 Nr.5 1-7, A.7 EStG');
-INSERT INTO gifi (accno,description) VALUES ('8942', 'Eigenverbr., 16% Ust §4 A.1 Nr.5 1-7, A.7 EStG');
-INSERT INTO gifi (accno,description) VALUES ('8943', 'Eigenverbr., 15% Ust §4 A.1 Nr.5 1-7, A.7 EStG');
-INSERT INTO gifi (accno,description) VALUES ('8944', 'Eigenverbr., ohne Ust §4 A.1 Nr.5 1-7, A.7 EStG');
-INSERT INTO gifi (accno,description) VALUES ('8945', 'Unentgeltl. Leist. v. Ges. an Ges., 15%/16% USt §1A.1 Nr.3 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8946', 'Unentgeltl. Leist. v. Ges. an Ges., 7% USt §1A.1 Nr.3 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8947', 'Unentgeltl. Leist. v. Ges. an Ges., 16% USt §1A.1 Nr.3 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8948', 'Unentgeltl. Leist. v. Ges. an Ges., 15% USt §1A.1 Nr.3 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8949', 'Unentgeltl. Leist. v. Ges. an Ges., ohne USt §1A.1 Nr.3 UStG');
-INSERT INTO gifi (accno,description) VALUES ('8950', 'Nicht steuerbare Umsätze');
-INSERT INTO gifi (accno,description) VALUES ('8955', 'Umsatzsteuervergütungen');
-INSERT INTO gifi (accno,description) VALUES ('8960', 'Bestandsveränd. - unfertige Erzeugnisse');
-INSERT INTO gifi (accno,description) VALUES ('8970', 'Bestandsveränd. - unfertige Leistungen');
-INSERT INTO gifi (accno,description) VALUES ('8975', 'Bestandsveränd. - in Ausführung befindliche Bauaufträge');
-INSERT INTO gifi (accno,description) VALUES ('8977', 'Bestandsveränd. - in Arbeit befindliche Aufträge');
-INSERT INTO gifi (accno,description) VALUES ('8980', 'Bestandsveränd. - fertige Erzeugnisse');
-INSERT INTO gifi (accno,description) VALUES ('8990', 'Bestandsveränd. - andere aktivierte Eigenleistungen');
-INSERT INTO gifi (accno,description) VALUES ('9000', 'Saldenvorträge Sachkonten');
-INSERT INTO gifi (accno,description) VALUES ('9008', 'Saldenvorträge Debitoren');
-INSERT INTO gifi (accno,description) VALUES ('9009', 'Saldenvorträge Kreditoren');
-INSERT INTO gifi (accno,description) VALUES ('9060', 'Offene Posten aus 1990');
-INSERT INTO gifi (accno,description) VALUES ('9085', 'Offene Posten aus 1985');
-INSERT INTO gifi (accno,description) VALUES ('9086', 'Offene Posten aus 1986');
-INSERT INTO gifi (accno,description) VALUES ('9087', 'Offene Posten aus 1987');
-INSERT INTO gifi (accno,description) VALUES ('9088', 'Offene Posten aus 1988');
-INSERT INTO gifi (accno,description) VALUES ('9089', 'Offene Posten aus 1989');
-INSERT INTO gifi (accno,description) VALUES ('9090', 'Summenvortragskonto');
-INSERT INTO gifi (accno,description) VALUES ('9091', 'Offene Posten aus 1991');
-INSERT INTO gifi (accno,description) VALUES ('9092', 'Offene Posten aus 1992');
-INSERT INTO gifi (accno,description) VALUES ('9093', 'Offene Posten aus 1993');
-INSERT INTO gifi (accno,description) VALUES ('9094', 'Offene Posten aus 1994');
-INSERT INTO gifi (accno,description) VALUES ('9095', 'Offene Posten aus 1995');
-INSERT INTO gifi (accno,description) VALUES ('9096', 'Offene Posten aus 1996');
-INSERT INTO gifi (accno,description) VALUES ('9097', 'Offene Posten aus 1997');
-INSERT INTO gifi (accno,description) VALUES ('9098', 'Offene Posten aus 1998');
-INSERT INTO gifi (accno,description) VALUES ('9100', 'Saldovortragskonto der Statistikkonten');
-INSERT INTO gifi (accno,description) VALUES ('9101', 'Verkaufstage');
-INSERT INTO gifi (accno,description) VALUES ('9102', 'Anzahl der Barkunden');
-INSERT INTO gifi (accno,description) VALUES ('9103', 'Beschäftigte Personen');
-INSERT INTO gifi (accno,description) VALUES ('9104', 'Unbezahlte Personen');
-INSERT INTO gifi (accno,description) VALUES ('9105', 'Verkaufskräfte');
-INSERT INTO gifi (accno,description) VALUES ('9106', 'Geschäftsraum qm');
-INSERT INTO gifi (accno,description) VALUES ('9107', 'Verkaufsraum qm');
-INSERT INTO gifi (accno,description) VALUES ('9108', 'Veränderungsrate positiv');
-INSERT INTO gifi (accno,description) VALUES ('9109', 'Veränderungsrate negativ');
-INSERT INTO gifi (accno,description) VALUES ('9110', 'Plan-WE (in Prozent)');
-INSERT INTO gifi (accno,description) VALUES ('9120', 'Erweiterungsinvestitionen');
-INSERT INTO gifi (accno,description) VALUES ('9135', 'Auftragseingang im Geschäftsjahr');
-INSERT INTO gifi (accno,description) VALUES ('9140', 'Auftragsbestand');
-INSERT INTO gifi (accno,description) VALUES ('9190', 'Gegenkonto für statistische Mengeneinheiten Konten 91010-91190');
-INSERT INTO gifi (accno,description) VALUES ('9199', 'Gegenkonto zu 91200, 91350-91400');
-INSERT INTO gifi (accno,description) VALUES ('9200', 'Beschäftigte Personen');
-INSERT INTO gifi (accno,description) VALUES ('9209', 'Gegenkonto zu 92000');
-INSERT INTO gifi (accno,description) VALUES ('9210', 'Produktive Löhne');
-INSERT INTO gifi (accno,description) VALUES ('9219', 'Gegenkonto zu 92100');
-INSERT INTO gifi (accno,description) VALUES ('9230', 'Baukostenzuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('9232', 'Investitionszulagen');
-INSERT INTO gifi (accno,description) VALUES ('9234', 'Investitionszuschüsse');
-INSERT INTO gifi (accno,description) VALUES ('9239', 'Gegenkonto zu 92300-92380');
-INSERT INTO gifi (accno,description) VALUES ('9240', 'Investitionsverbindlichkeiten bei den Leistungsverbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('9244', 'Gegenkonto zu 92400');
-INSERT INTO gifi (accno,description) VALUES ('9245', 'Forderungen aus Anlagenverkäufen bei den sonstigen Vermögensgegenst.');
-INSERT INTO gifi (accno,description) VALUES ('9249', 'Gegenkonto zu 92450');
-INSERT INTO gifi (accno,description) VALUES ('9250', 'Eigenkapitalersetzende Gesellschafterdarlehen');
-INSERT INTO gifi (accno,description) VALUES ('9255', 'Ungesicherte Gesellschafterdarlehen mit Restlaufzeit > 5 Jahre');
-INSERT INTO gifi (accno,description) VALUES ('9259', 'Gegenkonto zu 92500-92580');
-INSERT INTO gifi (accno,description) VALUES ('9260', 'Kurzfristige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('9262', 'Mittelfristige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('9264', 'Langfristige Rückstellungen');
-INSERT INTO gifi (accno,description) VALUES ('9269', 'Gegenkonto zu 92600-92680');
-INSERT INTO gifi (accno,description) VALUES ('9270', 'Gegenkonto zu 92710-92780');
-INSERT INTO gifi (accno,description) VALUES ('9271', 'Verb. a. d. Begebung u. Übertragung v. Wechseln');
-INSERT INTO gifi (accno,description) VALUES ('9272', 'Verb. a. d. Begebung u. Übertr. v. Wechseln gg. verb. U.');
-INSERT INTO gifi (accno,description) VALUES ('9273', 'Verb. a. Bürgsch., Wechsel- u. Scheckbürgsch.');
-INSERT INTO gifi (accno,description) VALUES ('9274', 'Verb. a. Bürgsch., Wechsel- u. Scheckbürgsch. gg. verb. U.');
-INSERT INTO gifi (accno,description) VALUES ('9275', 'Verb. aus Gewährleistungsverträgen');
-INSERT INTO gifi (accno,description) VALUES ('9276', 'Verb. aus Gewährleistungsverträgen gg. verbund. Untern.');
-INSERT INTO gifi (accno,description) VALUES ('9277', 'Haftung a. d. Best. von Sicherheiten für fremde Verbindl.');
-INSERT INTO gifi (accno,description) VALUES ('9278', 'Haftung a.d. Best. v. Sicherh. f. fr. Verbindl. gg. verb. U.');
-INSERT INTO gifi (accno,description) VALUES ('9280', 'Gegenkonto zu 92810-92840');
-INSERT INTO gifi (accno,description) VALUES ('9281', 'Verpflichtungen aus Miet- und Leasingverträgen');
-INSERT INTO gifi (accno,description) VALUES ('9282', 'Verpflichtungen aus Miet- und Leasingverträgen gg. verb. Unternehm.');
-INSERT INTO gifi (accno,description) VALUES ('9283', 'Andere Verpflichtungen gem. §285 Nr.3 HGB');
-INSERT INTO gifi (accno,description) VALUES ('9284', 'Andere Verpflichtungen gem. §285 Nr.3 HGB gg. verb. Unternehmen');
-INSERT INTO gifi (accno,description) VALUES ('9410', 'Aussteh. Einl. §26 A.3 DMBilG nicht eingef. (Aktivausw.)');
-INSERT INTO gifi (accno,description) VALUES ('9411', 'Aussteh. Einl. §26 A.3 DMBilG eingef. (Aktivausweis)');
-INSERT INTO gifi (accno,description) VALUES ('9413', 'Aufw. f. Ingangs. u. Erw. d. Gesch.Betr. §31A.1 Nr.2 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9415', 'Nichtentgeltl. erw. immat. Verm.Gegenst. §31A.1 Nr.1 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9416', 'Nutzungsrechte gem. § 9 Abs.3 Satz 2 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9420', 'Ford. gg. verb. Untern. a. Ausgleichsverb. gem. §25 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9421', 'Ford. gg. verb. U. a. Ausgl.Verb. §25 DMBilG Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9422', 'Ford. gg. verb. U. a. Ausgl.Verb. §25 DMBilG Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9426', 'Eingeforderte Einlagen §26 Abs. 3 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9427', 'Ausgleichsforderungen §24 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9428', 'Ausgleichsford. §24 DMBilG - Restlaufz. bis 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('9429', 'Ausgleichsford. §24 DMBilG - Restlaufz. größer 1 Jahr');
-INSERT INTO gifi (accno,description) VALUES ('9430', 'Ford. nach dem VermG §7 Abs. 6 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9431', 'Ford. nach dem VermG §7 A.6 DMBilG - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9432', 'Ford. nach dem VermG §7 A.6 DMBilG - Restl. gr. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9433', 'Vermögensvorteile §31 Abs.1 Nr. 3 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9434', 'Kapitalentwertungskonto');
-INSERT INTO gifi (accno,description) VALUES ('9435', 'Kapitalentwertungskonto §28 Abs.1 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9436', 'Kapitalentwertungskonto §26 Abs.4 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9438', 'Sonderverlustkonto aus Rückstellungen §17 Abs.4 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9440', 'Beteiligunsentwertungskonto §24 Abs.5 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9445', 'Vorläufige Gewinnrücklage §31 Abs.1 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9446', 'Sonderrücklage §7 Abs.6 Satz 2 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9447', 'Sonderrücklage §17 Abs.4 Satz 3 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9448', 'Sonderrücklage §24 Abs. 5 Satz 3 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9449', 'Sonderrücklage §27 Abs. 2 Satz 3 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9450', 'Rückst. f. Umweltbeeinträchtigung §17 A.2a DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9451', 'Nachrangiges Kapital §16 Abs. 3 Satz 2 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9453', 'Berichtig. v. Wertans. §36 DMBilG - Erhöhung d. Aktiva');
-INSERT INTO gifi (accno,description) VALUES ('9454', 'Berichtig. v. Wertans. §36 DMBilG - Verm. d. Aktivp.');
-INSERT INTO gifi (accno,description) VALUES ('9455', 'Berichtig. v. Wertans. §36 DMBilG - Erhöhung d. Passiva');
-INSERT INTO gifi (accno,description) VALUES ('9456', 'Berichtig. v. Wertans. §36 DMBilG - Verm. d. Passivp.');
-INSERT INTO gifi (accno,description) VALUES ('9457', 'Verb. gg. verb. Untern. a. Ausgleichsford. gem. §24 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9458', 'Verb. gg. verb. U. a. Ausgl.Ford. §24 DMBilG Restl. b. 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9459', 'Verb. gg. verb. U. a. Ausgl.Ford. §24 DMBilG Restl. 1 b. 5 J');
-INSERT INTO gifi (accno,description) VALUES ('9460', 'Verb. gg. verb. U. a. Ausgl.Ford. §24 DMBilG Restl. gr. 5 J');
-INSERT INTO gifi (accno,description) VALUES ('9462', 'Verb. gg. verb. Untern. §26 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9463', 'Verb. gg. verb. Untern. §26 DMBilG - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9464', 'Verb. gg. verb. Untern. §26 DMBilG - Restl. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9465', 'Verb. gg. verb. Untern. §26 DMBilG - Restl. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9467', 'Ausgleichsverbindlichkeiten §25 Abs.1 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9468', 'Ausgleichsverb. §25 Abs.1 DMBilG - Restlaufz. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9469', 'Ausgleichsverb. §25 A.1 DMBilG - Restlaufz. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9470', 'Ausgleichsverb. §25 A.1 DMBilG - Restlaufz. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9472', 'Verb. nach dem VermG §7 Abs.6 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9473', 'Verb. nach dem VermG §7 A.6 DMBilG - Restl. bis 1 J.');
-INSERT INTO gifi (accno,description) VALUES ('9474', 'Verb. nach dem VermG §7 A.6 DMBilG - Restl. 1 bis 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9475', 'Verb. nach dem VermG §7 A.6 DMBilG - Restl. größer 5 J.');
-INSERT INTO gifi (accno,description) VALUES ('9476', 'Verb. aus Rückzahlungsverpfl. 17 Abs.4a DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9477', 'Verb. a. Rückzahlg.Verpfl. - Restl. b. 1 J. §17 A.4a DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9478', 'Verb. a. Rückzahlg.Verpfl. - Restl. 1 b. 5 J. §17A.4a DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9479', 'Verb. a. Rückzahlg.Verpfl. - Restl. gr. 5 J. §17 A.4a DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9480', 'Auflösung Kapitalentwertungskonto §28 A.2 Satz 4 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9481', 'Entnahmen a. vorläufigen Gewinnrücklagen §31 A.6 DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9482', 'Entnahmen a. Sonderrückl. zum Ausgleich von Verlusten');
-INSERT INTO gifi (accno,description) VALUES ('9486', 'Abschreibungen auf Ausgleichsforderungen DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9487', 'Erträge aus der Auflösung von Rückstellungen DMBilG');
-INSERT INTO gifi (accno,description) VALUES ('9500', 'Anteil für Konto 09000-09090');
-INSERT INTO gifi (accno,description) VALUES ('9510', 'Anteil für Konto 09100-09190');
-INSERT INTO gifi (accno,description) VALUES ('9520', 'Anteil für Konto 09200-09290');
-INSERT INTO gifi (accno,description) VALUES ('9530', 'Anteil für Konto 08300-08390');
-INSERT INTO gifi (accno,description) VALUES ('9540', 'Anteil für Konto 08100-08190');
-INSERT INTO gifi (accno,description) VALUES ('9570', 'Anteil für Konto 08700-08790');
-INSERT INTO gifi (accno,description) VALUES ('9580', 'Anteil für Konto 08800-08890');
-INSERT INTO gifi (accno,description) VALUES ('9590', 'Anteil für Konto 08900-08990');
-INSERT INTO gifi (accno,description) VALUES ('9600', 'Name des Gesellschafters (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9610', 'Tätigkeitsvergütung (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9620', 'Tantieme (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9630', 'Darlehensverzinsung (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9640', 'Gebrauchsüberlassung (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9650', 'Sonstige Vergütungen (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9690', 'Restanteil (Vollhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9700', 'Name des Gesellschafters (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9710', 'Tätigkeitsvergütung (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9720', 'Tantieme (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9730', 'Darlehensverzinsung (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9740', 'Gebrauchsüberlassung (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9750', 'Sonstige Vergütungen (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9790', 'Restanteil (Teilhafter)');
-INSERT INTO gifi (accno,description) VALUES ('9890', 'Statistisches Konto für passive Lohnveredelung');
-INSERT INTO gifi (accno,description) VALUES ('9899', 'Gegenkonto zu 9890');
diff --git a/sql-ledger/sql/Hungary-chart.sql b/sql-ledger/sql/Hungary-chart.sql
deleted file mode 100644
index d3e6deb..0000000
--- a/sql-ledger/sql/Hungary-chart.sql
+++ /dev/null
@@ -1,48 +0,0 @@
---Hungarian chart of accounts
--- Magyar fõkönyvi számlák, amelyek csak példaként szolgálnak
---
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1140','Irodai eszközök','A','A','','114');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1199','Irodai eszközök ÉCS','A','A','','119');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2610','Áruk ','A','A','IC','261');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3110','Vevõk','A','A','AR','311');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3111','Külföldi vevõk','A','A','AR','311');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3810','Pénztár 1','A','A','AR_paid:AP_paid','381');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3811','Pénztár 2','A','A','AR_paid:AP_paid','381');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3840','Bank 1','A','A','AR_paid:AP_paid','384');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3841','Bank 2','A','A','AR_paid:AP_paid','384');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4540','Belföldi Szállítók','A','L','AP','454');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4541','Külföldi szállítók','A','L','AP','454');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4660','Visszaigényelhetõ ÁFA 25%','A','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax','466');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4661','Visszaigényelhetõ ÁFA 12%','A','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax','466');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4662','Visszaigényelhetõ ÁFA 5%','A','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax','466');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4663','Visszaigényelhetõ ÁFA adómentes','A','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax','466');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4670','Fizetendõ ÁFA 25%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','467');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4671','Fizetendõ ÁFA 15%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','467');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4672','Fizetendõ ÁFA 5%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','467');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4673','Fizetendõ ÁFA adómentes','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','467');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5200','Bérleti díj','A','E','AP_amount','520');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5210','Telefon','A','E','AP_amount','521');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5990','Költségek','A','E','IC_expense','599');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8140','Eladott áruk beszerzési értéke','A','E','IC_cogs','814');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8700','Árfolyamveszteség','A','E','','870');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9110','Belföldi árbevétel','A','I','AR_amount:IC_sale:IC_income','911');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9111','Külföldi árbevétel','A','I','AR_amount:IC_sale:IC_income','911');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9700','Árfolyamnyereség','A','I','','970');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1','BEFEKTETETT ESZKÖZÖK','H','A','','1');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2','KÉSZLETEK','H','A','','2');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3','KÖVETELÉSEK','H','A','','3');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4','KÖTELEZETTSÉGEK','H','L','','4');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5','KÖLTSÉGEK','H','E','','5');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8','RÁFORDÍTÁSOK','H','E','','8');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('9','BEVÉTELEK','H','I','','9');
---
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4660'),'0.25','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4661'),'0.15','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4662'),'0.05','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4663'),'0','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4670'),'0.25','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4671'),'0.15','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4672'),'0.05','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart WHERE accno='4673'),'0','');
---
-UPDATE defaults SET inventory_accno_id = (SELECT id FROM chart WHERE accno = '2110'), income_accno_id = (SELECT id FROM chart WHERE accno = '9110'), expense_accno_id = (SELECT id FROM chart WHERE accno = '8140'), fxgain_accno_id = (SELECT id FROM chart WHERE accno = '9700'), fxloss_accno_id = (SELECT id FROM chart WHERE accno = '8700'), curr = 'HUF:EUR:USD', weightunit = 'kg';
diff --git a/sql-ledger/sql/Hungary-gifi.sql b/sql-ledger/sql/Hungary-gifi.sql
deleted file mode 100644
index a12d06f..0000000
--- a/sql-ledger/sql/Hungary-gifi.sql
+++ /dev/null
@@ -1,25 +0,0 @@
---Hungarian GIFI / Magyar gyûjtõkódok -- amelyek csak példaként szolgálnak
-INSERT INTO gifi (accno,description) VALUES ('114','Tárgyi eszközök');
-INSERT INTO gifi (accno,description) VALUES ('119','Tárgyi eszközök ÉCS');
-INSERT INTO gifi (accno,description) VALUES ('261','Áruk');
-INSERT INTO gifi (accno,description) VALUES ('311','Vevõk');
-INSERT INTO gifi (accno,description) VALUES ('381','Pénztár');
-INSERT INTO gifi (accno,description) VALUES ('384','Bank');
-INSERT INTO gifi (accno,description) VALUES ('454','Szállítók');
-INSERT INTO gifi (accno,description) VALUES ('466','Visszaigényelhetõ ÁFA');
-INSERT INTO gifi (accno,description) VALUES ('467','Fizetendõ ÁFA');
-INSERT INTO gifi (accno,description) VALUES ('520','Bérleti díj');
-INSERT INTO gifi (accno,description) VALUES ('521','Telefon');
-INSERT INTO gifi (accno,description) VALUES ('599','Egyéb költségek');
-INSERT INTO gifi (accno,description) VALUES ('814','ELÁBÉ');
-INSERT INTO gifi (accno,description) VALUES ('870','Árfolyamveszteség');
-INSERT INTO gifi (accno,description) VALUES ('911','Árbevétel');
-INSERT INTO gifi (accno,description) VALUES ('970','Árfolyamnyereség');
-INSERT INTO gifi (accno,description) VALUES ('1','BEFEKTETETT ESZKÖZÖK');
-INSERT INTO gifi (accno,description) VALUES ('2','KÉSZLETEK');
-INSERT INTO gifi (accno,description) VALUES ('3','KÖVETELÉSEK');
-INSERT INTO gifi (accno,description) VALUES ('4','KÖTELEZETTSÉGEK');
-INSERT INTO gifi (accno,description) VALUES ('5','KÖLTSÉGEK');
-INSERT INTO gifi (accno,description) VALUES ('8','RÁFORDÍTÁSOK');
-INSERT INTO gifi (accno,description) VALUES ('9','BEVÉTELEK');
---
diff --git a/sql-ledger/sql/Italy-gifi.sql b/sql-ledger/sql/Italy-gifi.sql
deleted file mode 100644
index 5b4d807..0000000
--- a/sql-ledger/sql/Italy-gifi.sql
+++ /dev/null
@@ -1,140 +0,0 @@
--- Oct 8, 2003
--- verified D Simader
--- Oct 13, 2003
--- updated Daniele Giacomini, daniele@swlibero.org (extended some descriptions, to avoid ambiguities)
---
-INSERT INTO gifi (accno,description) VALUES ('1', 'ATTIVO');
-INSERT INTO gifi (accno,description) VALUES ('1.A', 'CREDITI VERSO I SOCI PER VERSAMENTI ANCORA DOVUTI');
-INSERT INTO gifi (accno,description) VALUES ('1.B', 'IMMOBILIZZAZIONI');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I', 'Immobilizzazioni immateriali');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.1', 'costi di impianto e di ampliamento');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.2', 'costi di ricerca, di sviluppo e di pubblicita\'');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.3', 'diritti di brevetto industriale e diritti di utilizzazione delle opere dell\'ingegno');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.4', 'concessioni, licenze, marchi e diritti simili');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.5', 'avviamento');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.6', 'immobilizzazioni immateriali in corso e acconti');
-INSERT INTO gifi (accno,description) VALUES ('1.B.I.7', 'altre immobilizzazioni immateriali');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II', 'Immobilizzazioni materiali');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II.1', 'terreni e fabbricati');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II.2', 'impianti e macchinario');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II.3', 'attrezzature industriali e commerciali');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II.4', 'altri beni materiali');
-INSERT INTO gifi (accno,description) VALUES ('1.B.II.5', 'immobilizzazioni in corso e acconti');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III', 'Immobilizzazioni finanziarie');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.1', 'partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.1.a', 'partecipazioni in imprese controllate');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.1.b', 'partecipazioni in imprese collegate');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.1.c', 'partecipazioni in imprese controllanti');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.1.d', 'partecipazioni in altre imprese');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.2', 'crediti');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.2.a', 'crediti verso imprese controllate');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.2.b', 'crediti verso imprese collegate');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.2.c', 'crediti verso controllanti');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.2.d', 'crediti verso altri');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.3', 'Altri titoli');
-INSERT INTO gifi (accno,description) VALUES ('1.B.III.4', 'Azioni proprie immobilizzate');
-INSERT INTO gifi (accno,description) VALUES ('1.C', 'ATTIVO CIRCOLANTE');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I', 'Rimanenze');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I.1', 'rimanenze: materie prime, sussidiarie e di consumo');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I.2', 'rimanenze: prodotti in corso di lavorazione e semilavorati');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I.3', 'rimanenze: lavori in corso su ordinazione');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I.4', 'rimanenze: prodotti finiti e merci');
-INSERT INTO gifi (accno,description) VALUES ('1.C.I.5', 'rimanenze: acconti');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II', 'Crediti');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II.1', 'crediti verso i clienti');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II.2', 'crediti verso imprese controllate');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II.3', 'crediti verso imprese collegate');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II.4', 'crediti verso imprese controllanti');
-INSERT INTO gifi (accno,description) VALUES ('1.C.II.5', 'crediti verso altri');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III', 'Attivita\' finanziarie che non costituiscono immobilizzazioni');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.1', 'partecipazioni in imprese controllate');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.2', 'partecipazioni in imprese collegate');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.3', 'partecipazioni in imprese controllanti');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.4', 'altre partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.5', 'azioni proprie per investimento temporaneo');
-INSERT INTO gifi (accno,description) VALUES ('1.C.III.6', 'altri titoli');
-INSERT INTO gifi (accno,description) VALUES ('1.C.IV', 'Disponibilita\' liquide');
-INSERT INTO gifi (accno,description) VALUES ('1.C.IV.1', 'depositi bancari e postali');
-INSERT INTO gifi (accno,description) VALUES ('1.C.IV.2', 'assegni');
-INSERT INTO gifi (accno,description) VALUES ('1.C.IV.3', 'denaro e valori in cassa');
-INSERT INTO gifi (accno,description) VALUES ('1.D', 'RATEI E RISCONTI ATTIVI');
-INSERT INTO gifi (accno,description) VALUES ('2', 'PASSIVO');
-INSERT INTO gifi (accno,description) VALUES ('2.A', 'PATRIMONIO NETTO');
-INSERT INTO gifi (accno,description) VALUES ('2.A.I', 'Capitale');
-INSERT INTO gifi (accno,description) VALUES ('2.A.II', 'Riserva da sovrapprezzo delle azioni');
-INSERT INTO gifi (accno,description) VALUES ('2.A.III', 'Riserva di rivalutazione');
-INSERT INTO gifi (accno,description) VALUES ('2.A.IV', 'Riserva legale');
-INSERT INTO gifi (accno,description) VALUES ('2.A.V', 'Riserva per azioni proprie in portafoglio');
-INSERT INTO gifi (accno,description) VALUES ('2.A.VI', 'Riserve statutarie');
-INSERT INTO gifi (accno,description) VALUES ('2.A.VII', 'Altre riserve');
-INSERT INTO gifi (accno,description) VALUES ('2.A.VIII', 'Utili (perdite) portati a nuovo');
-INSERT INTO gifi (accno,description) VALUES ('2.A.IX', 'Utile (perdita) dell\'esercizio');
-INSERT INTO gifi (accno,description) VALUES ('2.B', 'FONDI PER RISCHI E ONERI');
-INSERT INTO gifi (accno,description) VALUES ('2.B.1', 'fondo per trattamento di quiescenza e obblighi simili');
-INSERT INTO gifi (accno,description) VALUES ('2.B.2', 'fondo per imposte');
-INSERT INTO gifi (accno,description) VALUES ('2.B.3', 'altri fondi per rischi e oneri futuri');
-INSERT INTO gifi (accno,description) VALUES ('2.C', 'TRATTAMENTO DI FINE RAPPORTO DI LAVORO SUBORDINATO');
-INSERT INTO gifi (accno,description) VALUES ('2.D', 'DEBITI');
-INSERT INTO gifi (accno,description) VALUES ('2.D.1', 'obbligazioni non convertibili');
-INSERT INTO gifi (accno,description) VALUES ('2.D.2', 'obbligazioni convertibili');
-INSERT INTO gifi (accno,description) VALUES ('2.D.3', 'debiti verso banche');
-INSERT INTO gifi (accno,description) VALUES ('2.D.4', 'debiti verso altri finanziatori');
-INSERT INTO gifi (accno,description) VALUES ('2.D.5', 'debiti: acconti');
-INSERT INTO gifi (accno,description) VALUES ('2.D.6', 'debiti verso fornitori');
-INSERT INTO gifi (accno,description) VALUES ('2.D.7', 'debiti rappresentati da titoli di credito');
-INSERT INTO gifi (accno,description) VALUES ('2.D.8', 'debiti verso imprese controllate');
-INSERT INTO gifi (accno,description) VALUES ('2.D.9', 'debiti verso imprese collegate');
-INSERT INTO gifi (accno,description) VALUES ('2.D.10', 'debiti verso controllanti');
-INSERT INTO gifi (accno,description) VALUES ('2.D.11', 'debiti tributari');
-INSERT INTO gifi (accno,description) VALUES ('2.D.12', 'debiti verso istituti di previdenza e di sicurezza sociale');
-INSERT INTO gifi (accno,description) VALUES ('2.D.13', 'altri debiti');
-INSERT INTO gifi (accno,description) VALUES ('2.E', 'RATEI E RISCONTI PASSIVI');
-INSERT INTO gifi (accno,description) VALUES ('3', 'CONTO ECONOMICO');
-INSERT INTO gifi (accno,description) VALUES ('3.A', 'VALORE DELLA PRODUZIONE');
-INSERT INTO gifi (accno,description) VALUES ('3.A.1', 'ricavi delle vendite e delle prestazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.A.2', 'variazione rimanenze prodotti in lavorazione, semilavorati e finiti');
-INSERT INTO gifi (accno,description) VALUES ('3.A.3', 'variazione dei lavori in corso su ordinazione');
-INSERT INTO gifi (accno,description) VALUES ('3.A.4', 'incrementi di immobilizzazioni per lavori interni');
-INSERT INTO gifi (accno,description) VALUES ('3.A.5', 'altri ricavi e proventi');
-INSERT INTO gifi (accno,description) VALUES ('3.B', 'COSTI DELLA PRODUZIONE');
-INSERT INTO gifi (accno,description) VALUES ('3.B.6', 'acquisti materie prime, sussidiarie, di consumo e di merci');
-INSERT INTO gifi (accno,description) VALUES ('3.B.7', 'spese per prestazione di servizi');
-INSERT INTO gifi (accno,description) VALUES ('3.B.8', 'spese per godimento di beni di terzi');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9', 'costi del personale');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9.a', 'salari e stipendi');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9.b', 'oneri sociali');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9.c', 'accantonamento al TFRL');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9.d', 'accantonamento per trattamento di quiescenza e simili');
-INSERT INTO gifi (accno,description) VALUES ('3.B.9.e', 'altri costi del personale');
-INSERT INTO gifi (accno,description) VALUES ('3.B.10', 'ammortamenti e svalutazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.B.10.a', 'ammortamento delle immobilizzazioni immateriali');
-INSERT INTO gifi (accno,description) VALUES ('3.B.10.b', 'ammortamento delle immobilizzazioni materiali');
-INSERT INTO gifi (accno,description) VALUES ('3.B.10.c', 'altre svalutazioni delle immobilizzazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.B.10.d', 'svalutazioni dell\'attivo circolante e delle disponibilita\' liquide');
-INSERT INTO gifi (accno,description) VALUES ('3.B.11', 'variazioni rimanenze materie prime, sussidiarie, di consumo e merci');
-INSERT INTO gifi (accno,description) VALUES ('3.B.12', 'accantonamento per rischi');
-INSERT INTO gifi (accno,description) VALUES ('3.B.13', 'altri accantonamenti');
-INSERT INTO gifi (accno,description) VALUES ('3.B.14', 'oneri diversi di gestione');
-INSERT INTO gifi (accno,description) VALUES ('3.C', 'PROVENTI E ONERI FINANZIARI');
-INSERT INTO gifi (accno,description) VALUES ('3.C.15', 'proventi da partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.C.16', 'altri proventi finanziari');
-INSERT INTO gifi (accno,description) VALUES ('3.C.16.a', 'proventi da crediti iscritti nelle immobilizzazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.C.16.b', 'proventi da titoli iscritti nelle immobilizzazioni che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.C.16.c', 'proventi da titoli iscritti all\'attivo circolante che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.C.16.d', 'proventi diversi dai precedenti');
-INSERT INTO gifi (accno,description) VALUES ('3.C.17', 'Interessi e altri oneri finanziari');
-INSERT INTO gifi (accno,description) VALUES ('3.D', 'RETTIFICHE DI VALORE DI ATTIVITA\' FINANZIARIE');
-INSERT INTO gifi (accno,description) VALUES ('3.D.18', 'rivalutazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.18.a', 'rettifiche di partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.18.b', 'rettifiche di immobilizzazioni finanziarie che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.18.c', 'rettifiche da titoli iscritti all\'attivo circolante che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.19', 'svalutazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.19.a', 'svalutazioni di partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.19.b', 'svalutazioni di immobilizzazioni finanziarie che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.D.19.c', 'svalutazioni di titoli iscritti all\'attivo circolante che non costituiscono partecipazioni');
-INSERT INTO gifi (accno,description) VALUES ('3.E', 'PROVENTI E ONERI STRAORDINARI');
-INSERT INTO gifi (accno,description) VALUES ('3.E.20', 'proventi straordinari');
-INSERT INTO gifi (accno,description) VALUES ('3.E.21', 'oneri straordinari');
-INSERT INTO gifi (accno,description) VALUES ('3.E.22', 'Imposte sul reddito dell\'esercizio');
-INSERT INTO gifi (accno,description) VALUES ('3.E.26', 'Utile o perdita di esercizio');
-
diff --git a/sql-ledger/sql/Italy_General-chart.sql b/sql-ledger/sql/Italy_General-chart.sql
deleted file mode 100644
index 6fc2105..0000000
--- a/sql-ledger/sql/Italy_General-chart.sql
+++ /dev/null
@@ -1,179 +0,0 @@
---
--- Chart of Accounts for Italy
---
--- From: Luca Venturini <luca@yepa.com>
--- 9 Oct 2001
---
--- ('2001101'5 Conto ('6470005' diventa tassa (negativa)
--- ('2001102'5 IVA su acquisti diventa Iva su acq. (20%)
--- ('2001102'5 Introdotto un conto per ogni aliquota IVA
--- ('2001102'7 Modificato numero di conto per la Ritenuta d'acconto
--- ('2001103'1 Inseriti Fornitore-test e Consulente-test
--- ('2001111'5 Invertito i ruoli di ('6470005' e ('6470010' (erano sbagliati)
--- ('2001111'5 Eliminata l'applicabilita' della RA al cliente test
--- ('2001112'0 Aggiunto IC_expense al conto ('7005005' (mancava un conto di default per i servizi)
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010000','COSTI DI RICERCA, DI SVILUPPO E DI PUBBLICITA\'','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010005','Spese di ricerca e di sviluppo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010010','Spese di pubblicita\'','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2015000','DIRITTI DI BREV. IND. E DIRITTI DI UTILIZZ DELLE OPERE DELL\'INGEGNO','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2015005','Brevetti','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2020005','Concessioni, licenze e diritti simili','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2025005','Avviamento','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2245000','TERRENI E FABBRICATI','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2245010','Fabbricati civili','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2250000','IMPIANTI E MACCHINARI','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2250005','Impianti generici','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2255000','ATTREZZATURE INDUSTRIALI E COMMERCIALI','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2255005','Attrezzature','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2255010','Mobili','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2255015','Macchine d\'ufficio','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2255025','Autovetture','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3005000','RIMANENZE MATERIE PRIME, SUSSIDIARIE E DI CONSUMO','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3005005','Rimanenze materie prime','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3020000','RIMANENZE PRODOTTI FINITI E MERCI','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3020005','Rimanenze prodotti finiti','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4001000','CREDITI VERSO CL. PER FATT. EM. ESIGIBILI ENTRO L\'ESER. SUCC.','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4001001','Crediti verso clienti per fatture emesse','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4064000','CREDITI VERSO ALTRI - CREDITI D\'IMPOSTA','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4064005','IRPEF acconto','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4064020','IRPEG acconto','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4064800','Credito verso erario per IVA','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400000','DISPONIBILITA\' LIQUIDE','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4480105','Banca ...c/c','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4480400','Assegni','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4480500','Cassa e valori','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5005000','CAPITALE','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5005005','Capitale sociale','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5005010','Versamenti in conto capitale','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020000','RISERVA LEGALE','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020005','Riserva legale','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5080000','UTILI (PERDITE) PORTATI A NUOVO','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5080005','Utili esercizi precedenti','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5080010','Perdite esercizi precedenti','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5090000','UTILE (PERDITA) DELL\'ESERCIZIO','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5090005','Utile dell\'esercizio','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5090010','Perdita dell\'esercizio','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6200000','TRATTAMENTO DI FINE RAPPORTO DI LAVORO SUBORDINATO','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6220005','Trattamento di fine rapporto di lavoro subordinato','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6220010','Anticipazioni erogate su trattamento di fine rapporto di lavoro subordinato','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6435000','DEBITI VERSO BANCHE ESIGIBILI ENTRO ES. SUCC.','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6435005','Banca di ... c/c','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6436000','DEBITI VERSO BANCHE ESIGIBILI OLTRE ES. SUCC.','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6436005','Mutuo banca di ...','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6450000','DEBITI VERSO FORNITORI FATT. RICEVUTE ESIGIBILI ENTRO ES. SUCC.','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6450001','Debiti verso fornitori per fatture ricevute','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470000','DEBITI TRIBUTARI','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470005','IRPEF dipendenti','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470010','IRPEF terzi','A','','L','AP_tax:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470015','IVA da versare','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470020','IVA in sospeso','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470025','IRPEG sul reddito d\'esercizio','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470030','ILOR sul reddito d\'esercizio','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6470050','Imposta patrimoniale','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6475000','DEBITI VERSO ISTITUTI PREV. ESIGIBILI ENTRO ES. SUCC.','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6475005','INPS','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6475010','INAIL','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6475020','Servizio sanitario nazionale (S.S.N.)','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6475025','ENASARCO','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480000','ALTRI DEBITI - IVA C/ERARIO','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480003','IVA su acquisti (4%)','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480004','IVA su acquisti (10%)','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480005','IVA su acquisti (20%)','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480006','IVA a credito su acquisti U.E.','A','','L','AP_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480010','IVA su fatture emesse','A','','L','AR_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480011','IVA a debito su acquisti U.E.','A','','L','AR_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480015','IVA su corrispettivi','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480020','IVA versata','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480025','IVA acconto','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480030','IVA a credito','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480035','IVA ulteriore detrazione','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480040','Crediti d\'imposta diversi','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480045','IVA pro-rata indetraibile','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480050','IVA da contabilità separata','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6480055','IVA c/riepilogativo','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6600000','RATEI E RISCONTI PASSIVI','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6690005','Ratei passivi','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6692005','Risconti passivi','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005000','COSTI PER MATERIE PRIME, SUSSIDIARIE, DI CONSUMO E DI MERCI','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005005','Materie prime','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005015','Merci destinate alla rivendita','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005020','Materiali di consumo destinati alla produzione','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005030','Materiali di pulizia','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005035','Combustibile per riscaldamento','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005040','Cancelleria','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005045','Materiale pubblicitario','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7005050','Carburanti e lubrificanti','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025000','SPESE DI GESTIONE','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025005','Energia elettrica','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025015','Spese telefoniche','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025025','Spese pubblicità/propaganda','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025030','Spese di assicurazione','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025040','Pulizia locali','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025055','Viaggi e soggiorni amministratori','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025060','Spese di rappresentanza per servizi interamente detraibili','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025065','Altre spese di rappresentanza','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7025100','Altri servizi','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7028000','CARBURANTI E LUBRIFICANTI PER AUTOTRAZIONE','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7028005','Carburanti e lubrificanti autovetture','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7028010','Carburanti e lubrificanti autocarri etc.','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7030000','COMPENSI PROFESSIONALI','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7030005','Consulenza fiscale e tributaria','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7030015','Consulenza legale','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7030030','Compenso amministratori','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7035000','COSTI PER GODIMENTO BENI DI TERZI','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7035005','Fitti passivi','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7035050','Canoni di leasing','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040000','COSTI PER IL PERSONALE','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040005','Salari e stipendi','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040010','Oneri sociali INPS','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040015','Oneri sociali INAIL','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040020','Oneri sociali C.E.','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7043000','AMMORTAMENTI E SVALUTAZIONI','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7043005','Ammortamenti immobilizzazioni immateriali','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7043100','Ammortamenti immobilizzazioni materiali','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7056000','ONERI DIVERSI DI GESTIONE','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7056010','Imposta di registro, bolli ,CC.GG., etc.','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7056015','Imposta camerale','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7056025','Tributi locali diversi','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7056040','Tassa possesso autoveicoli','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7260000','INTERESSI E ONERI FINANZIARI','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7260020','Interessi passivi bancari','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7260025','Interessi passivi mutui','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7875000','IMPOSTE SUL REDDITO DELL\'ESERCIZIO','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7875005','IRPEG corrente','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7875020','IRPEG differita','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8005000','RICAVI DELLE VENDITE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8005005','Ricavi cessione beni','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8015000','RICAVI DELLE PRESTAZIONI','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8015005','Ricavi per prestazioni a terzi','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8015015','Noleggio impianti e macchinari','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8041000','INCREMENTI IMMOBILIZZAZIONI IMMATERIALI','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8041005','Brevetti','A','','I','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8041010','Spese di costituzione società','A','','I','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8041020','Spese pubblicità e propaganda','A','','I','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8045000','ALTRI RICAVI E PROVENTI','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8045001','Cessione di materie prime, sussidiarie e semilavorati','A','','I','AR_amount');
---
--- foreign exchange gain / loss
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9990000','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('9990010','Foreign Exchange Loss','A','','E','');
---
--- insert taxes
---
---Ritenuta d'acconto
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6470010'), -0.2);
---IVA Acquisti 4%
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6480003'), 0.04);
---IVA Acquisti 10%
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6480004'), 0.1);
---IVA Acquisti 20%
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6480005'), 0.2);
---IVA Fatture Emesse
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6480010'), 0.2);
---IVA su corrispettivi
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '6480015'), 0.2);
---
--- update defaults
---
-update defaults set inventory_accno_id = (select id from chart where accno = '3020005'), income_accno_id = (select id from chart where accno = '8005005'), expense_accno_id = (select id from chart where accno = '7005005'), fxgain_accno_id = (select id from chart where accno = '9990000'), fxloss_accno_id = (select id from chart where accno = '9990010'), curr = 'EUR', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Italy_cc2424-chart.sql b/sql-ledger/sql/Italy_cc2424-chart.sql
deleted file mode 100644
index 242b69e..0000000
--- a/sql-ledger/sql/Italy_cc2424-chart.sql
+++ /dev/null
@@ -1,269 +0,0 @@
---
--- Chart of Accounts for Italy
---
--- From: Daniele Giacomini <daniele@swlibero.org>
--- 13 ottobre 2003
--- 05 novembre 2003
---
--- Il codice GIFI viene usato per rappresentare il codice corrispondente
--- al bilancio riclassificato, come da codice civile, art. 2424.
--- Il codice in questione e' rappresentato separando i vari elementi
--- con un punto, aggiungendo inizialmente un numero: 1 sta per attivo,
--- 2 sta per passivo, 3 sta per conto economico.
---
--- L'abbinamento tra il piano dei conti e il codice GIFI non e' perfetto
--- e richiede un controllo ulteriore; inoltre, non sono stati risolti
--- i problemi relativi alle sottoclassificazioni previste dal codice civile,
--- che pero' non hanno un codice standard corrispondente.
---
--- La codifica GIFI è contenuta in un file separato.
---
--- Questo file e' scritto usando soltanto la codifica ASCII, per evitare
--- problemi di qualunque genere nella scelta della codifica. Pertanto,
--- le vocali accentate sono seguite da un apostrofo.
---
--- E' disponibile un cliente, un fornitore e un articolo di prova.
---
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('100000', 'ATTIVO', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('101000', 'IMMOBILIZZAZIONI IMMATERIALI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('101001', 'Costi di impianto e ampliamento', 'A', '1.B.I.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('101002', 'Avviamento', 'A', '1.B.I.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('101008', 'Altre immobilizzazioni immateriali', 'A', '1.B.I.7', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102000', 'IMMOBILIZZAZIONI MATERIALI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102001', 'Terreni', 'A', '1.B.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102002', 'Fabbricati non strumentali', 'A', '1.B.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102003', 'Fabbricati', 'A', '1.B.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102004', 'Impianti e macchinari', 'A', '1.B.II.2', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102006', 'Attrezzature commerciali', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102007', 'Attrezzature d\'ufficio', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102008', 'Arredamento', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102009', 'Automezzi', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102021', 'Fondo ammortamento fabbricati', 'A', '1.B.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102022', 'Fondo ammortamento impianti e macchinari', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102023', 'Fondo ammortamento attrezzature commerciali', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102024', 'Fondo ammortamento attrezzature d\'ufficio', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102025', 'Fondo ammortamento arredamento', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('102026', 'Fondo ammortamento automezzi', 'A', '1.B.II.3', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('103000', 'IMMOBILIZZAZIONI FINANZIARIE', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('103001', 'Prestiti a terzi', 'A', '1.B.III.2.d', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('105000', 'RIMANENZE', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('105001', 'Rimanenze di merci', 'A', '1.C.I.4', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('105002', 'Rimanenze di imballaggi', 'A', '1.C.I.4', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('105003', 'Rimanenze di materiali di consumo', 'A', '1.C.I.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('105011', 'Fondo svalutazione magazzino', 'A', '1.C.I.4', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('106000', 'CLIENTI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('106001', 'Crediti verso clienti', 'A', '1.C.II.1', 'A', 'AR');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111000', 'CREDITI COMMERCIALI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111002', 'Cambiali attive', 'A', '1.C.II.1', 'A', 'AR_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111003', 'Cambiali allo sconto', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111005', 'Cambiali all\'incasso', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111006', 'Effetti insoluti e protestati', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111007', 'Crediti insoluti', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111011', 'Fatture da emettere', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111031', 'Fondo svalutazione crediti', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('111032', 'Fondo rischi su crediti', 'A', '1.C.II.1', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112000', 'CREDITI DIVERSI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112001', 'IVA nostro credito 4%', 'A', '1.C.II.5', 'A', 'AP_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112002', 'IVA nostro credito 10%', 'A', '1.C.II.5', 'A', 'AP_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112004', 'IVA nostro credito 20%', 'A', '1.C.II.5', 'A', 'AP_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112062', 'Erario c/acconto IVA', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112063', 'Credito per IVA', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112071', 'Personale c/acconti', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112072', 'Crediti v/istituti previdenziali', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112073', 'Crediti per cauzioni', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('112074', 'Crediti diversi', 'A', '1.C.II.5', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('113000', 'VALORI MOBILIARI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('113001', 'Titoli', 'A', '1.C.III.6', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('114000', 'DISPONIBILITA\' LIQUIDE', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('114001', 'Banca c/c', 'A', '1.C.IV.1', 'A', 'AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('114003', 'Poste c/c', 'A', '1.C.IV.1', 'A', 'AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('114004', 'Assegni', 'A', '1.C.IV.2', 'A', 'AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('114005', 'Denaro e valori in cassa', 'A', '1.C.IV.3', 'A', 'AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('115000', 'RATEI E RISCONTI ATTIVI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('115001', 'Ratei attivi', 'A', '1.D', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('115002', 'Risconti attivi', 'A', '1.D', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('200000', 'PASSIVO', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('216000', 'PATRIMONIO NETTO', 'H', '', 'Q', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('216001', 'Patrimonio netto', 'A', '2.A.I', 'Q', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('216002', 'Utile d\'esercizio', 'A', '2.A.IX', 'Q', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('216003', 'Perdita d\'esercizio', 'A', '2.A.IX', 'Q', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('217000', 'FONDO ACCANTONAMENTO RISCHI E ONERI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('217002', 'Fondo per imposte', 'A', '2.B.2', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('217003', 'Fondo manutenzioni e riparazioni', 'A', '2.B.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('217006', 'Altri fondi', 'A', '2.B.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('218000', 'TFR LAVORO SUBORDINATO', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('218001', 'Debito per TFRL', 'A', '2.C', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219000', 'DEBITI DI FINAZIAMENTO', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219001', 'Mutui ipotecari', 'A', '2.D.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219002', 'Finanziamenti bancari', 'A', '2.D.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219003', 'Sovvenzioni bancarie', 'A', '2.D.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219004', 'Banche c/c passivi', 'A', '2.D.3', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('219011', 'Finanziamenti non bancari', 'A', '2.D.4', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('220000', 'FORNITORI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('220001', 'Debiti verso fornitori', 'A', '2.D.6', 'L', 'AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('225000', 'DEBITI COMMERCIALI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('225002', 'Cambiali passive', 'A', '2.D.6', 'L', 'AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('225003', 'Fatture da ricevere', 'A', '2.D.6', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226000', 'DEBITI TRIBUTARI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226001', 'IVA nostro debito 4%', 'A', '2.D.13', 'L', 'AR_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226002', 'IVA nostro debito 10%', 'A', '2.D.13', 'L', 'AR_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226004', 'IVA nostro debito 20%', 'A', '2.D.13', 'L', 'AR_tax:CT_tax:IC_taxpart:IC_taxservice');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226062', 'Debito per IVA', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226065', 'Erario c/ritenute da versarare', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226066', 'Altri debiti verso l\'erario', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('226067', 'Debiti per imposte', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227000', 'DEBITI DIVERSI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227001', 'Personale c/retribuzioni', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227002', 'Personale c/liquidazioni', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227003', 'Debiti v/istituti previdenziali', 'A', '2.D.12', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227004', 'Debiti per cauzioni', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('227005', 'Debiti diversi', 'A', '2.D.13', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('228000', 'RATEI E RISCONTI PASSIVI', 'H', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('228001', 'Ratei passivi', 'A', '2.E', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('228002', 'Risconti passivi', 'A', '2.E', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('300000', 'ALTRI CONTI PATRIMONIALI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('329000', 'CONTI TRANSITORI E FINALALI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('329006', 'Istituti previdenziali', 'A', '2.D.12', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('329011', 'Conto del patrimonio', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('329012', 'Bilancio di apertura', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('400000', 'CONTI D\'ORDINE', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431000', 'IMPEGNI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431001', 'Beni da ricevere', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431002', 'Fornitori per beni da ricevere', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431003', 'Beni da consegnare', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431004', 'Clienti per beni da consegnare', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431005', 'Beni in leasing', 'A', '', 'L', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('431006', 'Creditori per beni in leasing', 'A', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('432000', 'BENI DI TERZI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('433000', 'BENI NOSTRI PRESSO TERZI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('434000', 'RISCHI', 'H', '', 'A', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('500000', 'VALORE DELLA PRODUZIONE', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541000', 'RICAVI VENDITE E PRESTAZIONI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541001', 'Vendite di merci', 'A', '3.A.1', 'I', 'AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541002', 'Vendite di imballaggi', 'A', '3.A.1', 'I', 'AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541003', 'Ricavi per prestazione di servizi', 'A', '3.A.1', 'I', 'AR_amount:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541006', 'Resi su vendite', 'A', '3.A.1', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541007', 'Ribassi e abbuoni passivi', 'A', '3.A.1', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541008', 'Premi a clienti', 'A', '3.B.9.e', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('541010', 'Rimborso spese', 'A', '3.A.5', 'I', 'AR_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('542000', 'ALTRI RICAVI E PROVENTI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('542001', 'Ricavi e proventi vari', 'A', '3.A.5', 'I', 'AR_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('542002', 'Fitti attivi', 'A', '3.A.5', 'I', 'AR_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('542003', 'Arrotondamenti positivi', 'A', '3.A.5', 'I', 'AR_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('600000', 'COSTI DELLA PRODUZIONE', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645000', 'COSTI ACQUISTO MERCI E MATERIALI DI CONSUMO', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645001', 'Acquisti di merci', 'A', '3.B.6', 'E', 'AP_amount:IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645002', 'Acquisti di imballaggi', 'A', '3.B.6', 'E', 'AP_amount:IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645003', 'Acquisti di materiali di consumo', 'A', '3.B.6', 'E', 'AP_amount:IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645006', 'Resi su acquisti', 'A', '3.B.6', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645007', 'Ribassi e abbuoni attivi', 'A', '3.B.6', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('645008', 'Premi da fornitori', 'A', '3.A.5', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646000', 'COSTI PER PRESTAZIONI E SERVIZI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646001', 'Costi di trasporto', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646002', 'Costi di energia', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646003', 'Costi di pubblicita\'', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646004', 'Assicurazioni', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646005', 'Spese postali', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646006', 'Spese telefoniche', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646007', 'Spese legali e notarili', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646008', 'Spese di banca', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646009', 'Manutenzioni riparazioni', 'A', '3.B.7', 'E', 'AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646010', 'Imponibile omaggi', 'A', '3.B.9.e', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646011', 'IVA c/omaggi', 'A', '3.B.9.e', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646021', 'Provvigioni passive', 'A', '3.B.9.e', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('646022', 'Competenze a terzi', 'A', '3.B.9.e', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('647000', 'COSTI PER GODIMENTO BENI DI TERZI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('647001', 'Fitti passivi', 'A', '3.B.8', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('647002', 'Canoni leasing', 'A', '3.B.8', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648000', 'COSTI PER IL PERSONALE', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648001', 'Salari e stipendi', 'A', '3.B.9.a', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648002', 'Oneri sociali', 'A', '3.B.9.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648003', 'Trattamenti di fine rapporto di lavoro', 'A', '3.B.9.c', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648004', 'Trattamenti di quiescenza e simili', 'A', '3.B.9.d', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('648005', 'Altri costi per il personale', 'A', '3.B.9.e', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('649000', 'AMMORTAMENTO IMMOBILIZZAZIONI IMMATERIALI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('649001', 'Ammortamento impianto e ampliamento', 'A', '3.B.10.a', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('649002', 'Ammortamento avviamento', 'A', '3.B.10.a', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('649008', 'Ammortamento di altre immobilizzazioni immateriali', 'A', '3.B.10.a', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650000', 'AMMORTAMENTO IMMOBILIZZAZIONI MATERIALI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650001', 'Ammortamento fabbricati', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650002', 'Ammortamento impianti e macchinari', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650003', 'Ammortamento attrezzature commerciali', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650005', 'Ammortamento attrezzature d\'ufficio', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650006', 'Ammortamento arredamento', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('650007', 'Ammortamento automezzi', 'A', '3.B.10.b', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('651000', 'SVALUTAZIONI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('651003', 'Svalutazione magazzino', 'A', '3.B.11', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('651004', 'Svalutazione crediti', 'A', '3.B.12', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652000', 'ESISTENZA INIZIALE E RIMANENZE FINALI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652001', 'Esistenza iniziale merci', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652002', 'Esistenza iniziale imballaggi', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652003', 'Esistenza iniziale materie di consumo', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652011', 'Rimanenze finali merci', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652012', 'Rimanenze finali imballaggi', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652013', 'Rimanenze finali materie di consumo', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652021', 'Variazioni merci', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652022', 'Variazioni imballaggi', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('652023', 'Variazioni materie di consumo', 'A', '3.A.2', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('653000', 'ACCANTONAMENTI PER RISCHI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('653001', 'Accantonamenti per rischi su crediti', 'A', '3.B.12', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('653002', 'Accantonamenti su imposte', 'A', '3.B.13', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('653004', 'Altri accantonamenti rischi-oneri', 'A', '3.B.12', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('654000', 'ALTRI ACCANTONAMENTI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('654001', 'Accantonamenti per spese future', 'A', '3.B.13', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('654005', 'Accantonamenti per manutenzioni e riparazioni', 'A', '3.B.13', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('654006', 'Altri accantonamenti', 'A', '3.B.13', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655000', 'ONERI DIVERSI', 'H', '', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655001', 'Imposta di bollo', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655002', 'Tassa di concessione governativa', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655003', 'Imposte comunali', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655005', 'Imposte di esercizio', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655006', 'Perdite su crediti', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655011', 'Oneri e perdite varie', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('655012', 'Arrotondamenti negativi', 'A', '3.B.14', 'E', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('700000', 'PROVENTI E ONERI FINANZIARI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756000', 'PROVENTI FINANZIARI', 'A', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756001', 'Interessi attivi da banche', 'A', '3.C.16.d', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756002', 'Interessi attivi da clienti', 'A', '3.C.16.d', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756003', 'Interessi attivi vari', 'A', '3.C.16.d', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756004', 'Interessi su titoli', 'A', '3.C.16.d', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756011', 'Proventi finanziari vari', 'A', '3.C.16.d', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('756012', 'Utile su titoli', 'A', '3.C.16.b', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757000', 'ONERI FINANZIARI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757001', 'Interessi passivi a banche', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757002', 'Interessi passivi a fornitori', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757003', 'Interessi passivi su finanziamenti', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757004', 'Interessi passivi su mutui', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757005', 'Interessi passivi vari', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757011', 'Oneri finanziari vari', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('757012', 'Perdite su titoli', 'A', '3.C.17', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('800000', 'PROVENTI E ONERI STRAORDINARI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('860000', 'PROVENTI STRAORDINARI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('860001', 'Plusvalenze', 'A', '3.E.20', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('860002', 'Sopravvenienze e insussistenze attive', 'A', '3.E.20', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('861000', 'ONERI STRAORDINARI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('861001', 'Minusvalenze', 'A', '3.E.21', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('861002', 'Sopravvenienze e insussistenze passive', 'A', '3.E.21', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('900000', 'CONTI DI RIEPILOGO ECONOMICI', 'H', '', 'I', '');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('970001', 'Conto del risultato economico', 'A', '3.E.23', 'I', '');
-
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '112001'), 0.04);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '112002'), 0.1);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '112004'), 0.2);
-
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '226001'), 0.04);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '226002'), 0.1);
-INSERT INTO tax (chart_id, rate) VALUES ((SELECT id FROM chart WHERE accno = '226004'), 0.2);
-
---
--- update defaults
---
-
-UPDATE DEFAULTS SET inventory_accno_id = (select id from chart where accno = '105001');
-UPDATE DEFAULTS SET income_accno_id = (select id from chart where accno = '541001');
-UPDATE DEFAULTS SET expense_accno_id = (select id from chart where accno = '645001');
-UPDATE DEFAULTS SET fxgain_accno_id = (select id from chart where accno = '756011');
-UPDATE DEFAULTS SET fxloss_accno_id = (select id from chart where accno = '655011');
-UPDATE DEFAULTS SET curr = 'EUR';
-UPDATE DEFAULTS SET weightunit = 'kg';
-
diff --git a/sql-ledger/sql/Latvia-chart.sql b/sql-ledger/sql/Latvia-chart.sql
deleted file mode 100644
index 24c6731..0000000
--- a/sql-ledger/sql/Latvia-chart.sql
+++ /dev/null
@@ -1,253 +0,0 @@
--- Latvian COA
--- prepared by Kaspars Melkis <info@isolis.lv>
--- Sept. 14, 2003
--- checked and edited Sept. 20, 2003, D. Simader
---
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1','Ilgtermiòa ieguldîjumi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2','Apgrozâmie lîdzekïi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('11','Nemateriâlie ieguldîjumi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('12','Pamatlîdzekïi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1210','Zemes gabali, çkas, bûves, ilggadîgie stâdîjumi un citi nekustamâ îpaðuma objekti','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1290','Pamatlîdzekïu nolietojums (pasîvâ)','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('13','Ilgtermiòa finansu ieguldîjumi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('21','Krâjumi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2130','Gatavâs preces pârdoðanai','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2310','Norçíini ar pircçjiem un pasûtîtâjiem','A','L','AP','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('23','Norçíini par prasîbâm (ar debitoriem)','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2350','Norçíini ar citiem debitoriem','A','A','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('26','Naudas lîdzekïi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2610','Kase','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1380','Aizdevumi uzòçmuma dalîbniekiem un valdei','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1310','Lîdzdalîba meitas uzòçmumu kapitâlâ','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1340','Aizdevumi saistîtajiem uzòçmumiem','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1350','Pârçjie vçrtspapîri','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5','Kreditori','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1370','Paðu akcijas un daïas','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2210','Pieauguðie produktîvie lopi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3350','Statûtos paredzçtâs rezerves','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2220','Jaunlopi un sîkie dzîvnieki','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2320','Par piegâdçm un pasûtîjumiem saòemtie vekseïi','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2140','Nepabeigtie pasûtîjumi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2370','Îstermiòa aizdevumi sabiedrîbâm dalîbniekiem un vadîbai','A','A','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1360','Pârçjie aizdevumi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2120','Nepabeigtie raþojumi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2330','Meitas uzòçmumu parâdi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2340','Saistîto uzòçmumu parâdi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2380','Norçíini par prasîbâm pret personâlu un îstermiòa aizdevumi personâlam','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2410','Nâkamo periodu izdevumi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2420','Akciju emisijas nocenojums (disagio)','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('25','Vçrtspapîri apgrozâmo lîdzekïu sastâvâ un îstermiòa lîdzdalîba kapitâlos','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2510','Meitas uzòçmuma akcijas un daïas ','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2520','Saistîto uzòçmuma akcijas un daïas ','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2530','Paðu uzòçmuma akcijas un daïas ','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2540','Pârçjie vçrtspapîri un lîdzdalîba kapitâlos','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2640','Akreditîvi, èeki un îpaðu norçíina formu konti','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2650','Citi konti bankâs','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2670','Pârçjie naudas lîdzekïi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3','Paðu kapitâls','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3130','Ilgtermiòa ieguldîjuma pârvçrtçðanas rezerve','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3120','Akciju emisijas uzcenojums (agio)','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('32','Privâtkonti','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3210','Privâtiem nolûkiem izòemtie lîdzekïi','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('33','Rezerves ','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3310','Rezerves kapitâls','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3330','Citas likumâ paredzçtâs rezerves','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3340','Rezerves paðu akcijâm un daïâm','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3360','Pârçjâs rezerves','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('34','Nesadalîtâ peïòa vai nesegtie zaudçjumi','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3410','Pârskata gada nesadalîtâ peïòa','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3420','Iepriekðçjo gadu nesadalîtâ peïòa','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4','Uzkrâjumi','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4110','Uzkrâjumi pensijâm pielîdzinâtâm saistîbâm','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4310','Citi uzkrâjumi','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('41','Uzkrâjumi pensijâm pielîdzinâmâtâm saistîbâm','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('43','Citi uzkrâjumi','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('42','Uzkrâjumi paredzamiem nodokïiem','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('51','Norçíini par aizòçmumiem','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5110','Aizòçmumi pret obligâcijâm','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5120','Akcijâs pârvçðamie aizòçmumi','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5130','Aizòçmumi ar lîdzdalîbu peïòâ','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5140','Citi aizòçmumi','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5150','Îstermiòa aizòçmumi no kredîtiestâdçm','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5160','Ilgtermiòa aizòçmumi no kredîtiestâdçm','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5170','Aizòçmumi no kredîtiestâdçm bez norâdîtâ termiòa','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('52','Norçíini par saòemtajiem avansiem','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5210','Norçíini par saòemtiem avansiem','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('54','Maksâjamie vekseïi','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('53','Norçíini par piegâdâtâjiem un darbuzòçmçjiem','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5310','Norçíini par piegâdâtâjiem un darbuzòçmçjiem','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5410','Norçíini par paðu izdotajiem vekseïiem','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5510','Norçíini par parâdiem meitas uzòçmumiem','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5540','Norçíini par parâdiem citiem uzòçmumiem un dalîbniekiem','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5550','Norçíini par parâdiem personâlam','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5520','Norçíini par parâdiem saistîtiem uzòçmumiem','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5530','Norçíini par parâdiem uzòçmumiem, ar kuriem ir lîgums par lîdzdalîbu','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('57','Norçíini par nodokïiem','H','L','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('58','Norçíini par dividendçm','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('61','Ieòçmumi no pârdoðanas, kas apliekami ar nodokïiem vispârçjâ kârtîbâ','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('62','Ieòçmumi no pârdoðanas, kas citâdi apliekami ar nodokïiem','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6220','Ar îpaðiem nodokïiem apliekamie pârdoðanas ieòçmumi','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('63','Komisijas, starpniecîbas un citi ieòçmumi','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6310','Komisijas un starpniecîbas ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6320','Ieòçmumi no atkritumu pârstrâdes un realizâcijas','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6330','Ieòçmumi no taras realizâcijas','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6340','Ar nodokïiem neapliekamie apgrozîjumi','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('64','Ieòçmumus samazinoðas atlaides','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6410','Pieðíirtâs skonto atlaides','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6420','Pieðíirtie bonusi','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('59','Nâkamo periodu ieòçmumi','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('65','Pârçjie uzòçmuma ieòçmumi','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6510','Ieòçmumi no vçrtspapîru kursa paaugstinâðanâs','A','I','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6530','Ieòçmumi no zemes gabalu iznomâðanas','A','I','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6540','Ieòçmumi no apgrozâmo lîdzekïu pârdoðanas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6550','Ieòçmumi no pamatlîdzekïu iznomâðanas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6560','Ieòçmumos pârskaitîtais rezervju un uzkrâjumu samazinâjums','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6570','Iepriekðçjo gadu nodokïu samazinâjums','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6580','Papildus ieguldîjumi un citi ieòçmumi','A','I','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6590','Paðu uzòçmuma kapitâlieguldîjumiem izpildîtie darbi','A','I','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('67','Citu periodu ieòçmumi, kas attiecas uz pârskata periodu','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6710','Citu periodu ieòçmumi, kas attiecas uz pârskata periodu','A','I','AR_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('69','Sociâlâs infrastruktûras iestâþu un pasâkumu ieòçmumi','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6930','Sadzîves paklpojumu ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6920','Komunâlâs saimniecîbas ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('66','Gatavâs produkcijas un nepabeigto raþojumu krâjumu un vçrtîbas izmaiòas','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6610','Gatavâs produkcijas krâjumu un vçrtîbas izmaiòas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6620','Nepabeigto raþojumu krâjumu un vçrtîbas izmaiòas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6630','Nepabeigto pasûtîjumu atlikumu un vçtîbas izmaiòas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6640','Produktîvo un darba dzîvnieku ganâmpulka vçrtîbas izmaiòas','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6940','Sabiedriskâs çdinâðanas ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6950','Izglîtîbas iestâþu ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6960','Medicînas iestâþu ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6970','Kultûras un sporta ietâþu un pasâkumu ieòçmumi','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6980','Pârçjie sociâlâs infrastruktûras iestâþu un pasâkumu ieòçmumi','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7','Saimnieciskâs darbîbas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('71','Izdevumi izejvielu, materiâlu un preèu iepirkðanai','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7110','Izejvielu un materiâlu iepirkðanas un piegâdes izdevumi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7120','Preèu iepirkðanas un piegâdes izdevumi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7130','Saòemtâs atlaides','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7140','Taras izdevumi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7150','Muitas un ievednodevas','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7160','Pârçjie ârçjie izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7170','Samaksa par darbiem un pakalpojumiem no ârienes','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7190','Pirkto materiâlu un preèu krâjumu un vçrtîbas izmaiòas','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('72','Personâla izmaksas','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7210','Strâdnieku algas','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7230','Sociâlâs infrastruktûras iestâþu un pasâkumu darbinieku algas','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('73','Sociâlâs nodevas un izmaksas','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7320','Pârçjâs sociâlâs izmaksas','A','E','AP_tax','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('74','Pamatlîdzekïu nolietojums un citu ieguldîjumu vçrtîbas norakstîjumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7410','Nemateriâlo ieguldîjumu vçrtîbas norakstîðana','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('75','Pârçjie saimnieciskâs darbîbas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7510','Dabas aizsardzîbas izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7530','Nodevas par raþoðanâ izmantotiem zemes gabaliem','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7440','Apgrozâmo lîdzekïu vçrtîbas norakstîðana','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7540','Apdroðinnâðanas maksâjumi (izòemot darbinieku apdroðinâðanu)','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7550','Pârçjie saimnieciskâs darbîbas izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7560','Strâdnieku vervçðanas un apmâcîbas izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('76','Preèu pârdoðanas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7610','Iesaiòojamais materiâls, tara','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7620','Preèu transporta izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7630','Preèu transporta apdroðinâðana','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7640','Samaksâtâs komisijas naudas','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7650','Citi pârdoðanas izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('77','Administrâcijas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7710','Sakaru izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7720','Kantora (biroja) izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7730','Juristu pakalpojumu apmaksa','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7740','Gada pârskata un revîzijas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7750','Naudas apgrozîjuma blakus izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7760','Transporta izdevumi administrâcijas vajadzîbâm','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7770','Citi vadîðanas un administrâcijas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('78','Pârskata periodâ iekïaujamie iepriekðçjo periodu izdevumi','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7810','Pârskata periodâ iekïaujamie iepriekðçjo periodu izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('79','Sociâlâs infrastruktûras uzturçðanas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7920','Komuâlâs saimniecîbas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7940','Sabiedriskâs çdinâðanas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7950','Izglîtîbas iestâþu izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8','Daþâdi ieòçmumi un izdevumi, peïòa un zaudçjumi','H','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('81','Daþâdi ieòçmumi','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8110','Ieòçmumi no lîdzdalîbas, vçrtspapîriem un aizdevumiem','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8120','Pârçjie ieòçmumi no procentiem un tiem pielîdzinâmi ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7910','Dzîvokïu saimniecîbas izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8130','Vekseïu diskonta ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8150','Ienâkumi no valûtas kursa paaugstinâðanâs','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8160','Saòemtâs soda naudas un lîgumsodi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8170','Peïòa no ârzemju valûtas pârdoðanas vai pirkðanas','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8190','Citi ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('82','Daþâdi izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8210','Îstermiòa finansu ieguldîjumu vçrtîbas norakstîðana','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8220','Samaksâtie procenti un tiem pielîdzinâmie izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8230','Vekseïu diskonta izmaksas','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8240','Ilgtermiòa aizdevumu procentu samaksa','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8260','Samaksâtâs soda naudas un lîgumsodi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8270','Zaudçjumi no ârzemju valûtas pirkðanas un pârdoðanas','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8290','Citi izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('83','Ârkârtas ieòçmumi','H','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8310','Ârkârtas ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('84','Ârkârtas izdevumi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8410','Ârkârtas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('86','Peïòa vai zaudçjumi','H','I','IC_income:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8610','Peïòa vai zaudçjumi','A','I','IC_income:IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3220','Privâtie ieguldîjumi','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6110','Ieòçmumi no pamatdarbîbas produkcijas un pakalpojumu pârdoðanas','A','I','AR_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1220','Tehnoloìiskâs iekârtas un maðînas','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1240','Pamatlîdzekïu izveidoðana un nepabeigto celtniecîbas objektu izmaksas','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1320','Aizdevumi meitas uzòçmumam','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2110','Izejvielas un materiâli','A','A','AP','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2190','Avansa maksâjumi par precçm','A','A','AR','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1130','Uzòçmuma nemateriâlâ vçrtîba','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1180','Avansa maksâjumi par nemateriâliem aktîviem','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1190','Nemateriâlo ieguldîjumu vçrtîbas norakstîtâ daïa (pasîvâ)','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('22','Produktîvie un darba dzîvnieki','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2230','Darba lopi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2290','Darba lopu norakstîtâ vçrtîba (pasîvâ)','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2360','Norçíini par parakstîtâ sabiedrîbas kapitâlâ neiemaksâtâm summâm','A','A','AR_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('24','Nâkamo periodu izdevumi','H','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2620','Norçíinu konti bankâ','A','A','AR_paid:AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('3110','Pamatkapitâls vai lîdzdalîbas kapitâls','A','Q','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('55','Norçíini ar uzòçmumiem, dalîbniekiem un personâlu','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('56','Norçíini par darba samaksu un ieturçjumiem (izòemot nodokïus)','H','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5610','Norçíini par darba algu','A','E','AP_amount','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5620','Norçíini par ieturçjumiem no darba algas (izòemot nodokïus)','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5820','Norçíini par iepriekðçjo gadu neizmaksâtajâm dividendçm','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5810','Norçíini par pârskata gada dividendçm','A','L','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5910','Nâkamo periodu ieòçmumi','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6','Ieòçmumi no uzòçmuma saimnieciskâs darbîbas','H','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6210','Ar nodokïiem neapliekamie pârdoðanas ieòçmumi','A','I','AR_amount:IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6430','Pieðíirtie rabati un citas tirdzniecîbas atlaides','A','I','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('6910','Dzîvokïu saimniecîbas ieòçmumi','A','I','AR_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7180','Pârçjie materiâlie izdevumi (nodoklis par dabas resursu izmantoðanu, celmu nauda u.c.)','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7240','Pârçjâs personâla izmaksas','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7220','Pârvaldes personâla un administratîvâ personâla algas','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7420','Pamatlîdzekïu nolietojums','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7570','Komandçjuma izdevumi','A','E','AP_paid','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7930','Sadzîves pakalpojumu izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7960','Medicîniskâs apkalpoðanas izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7970','Kultûras un sporta iestâþu un pasâkumu izdevumi','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8140','Ziedojumi un citi tiem pielîdzinâmi ieòçmumi','A','I','IC_income','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8250','Zaudçjumi no valûtu kursa pazeminâðanâs','A','E','IC_expense','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7980','Pârçjie sociâlâs infrastruktûras uzturçðanas izdevumi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('87','Peïòas izlietojums (bez nodokïiem)','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('88','Nodoïi no peïòas un citi saimnieciskâs darbîbas izdevumos neiekïaujamie nodokïi','H','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1110','Pçtniecîbas un uzòçmuma attîstîbas izmaksas','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1120','Koncesijas, patenti, licences, tirdzniecîbas zîmes un lîdzîgas tiesîbas; datoru programmas','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1230','Pârçjie pamatlîdzekïi un inventârs','A','A','IC','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5710','Norçíini par peïòas nodokli','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2390','Pârmaksâtie nodokïi, iepriekð samaksâtie nodokïi','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('4210','Uzkrâjumi paredzamiem nodokïiem','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('5720','Norçíini par citiem nodokïiem, nodevâm un maksâjumiem budþetam','A','L','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('7310','Sociâlais nodoklis','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8710','Peïòas izlietojums','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8830','Nodoklis par zemi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8840','Citi saimnieciskâs darbîbas izmaksâs neiekïaujamie nodokïi','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8820','Nodoklis par dabas resursu izmantoðanu no peïòas maksâjamâ daïâ','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('8810','Nodoklis no peïòas','A','E','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('1330','Lîdzdalîbas saistîto uzòçmumu kapitâlâ','A','A','','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2354','PVN samaksâts 18%','A','E','AP_tax:IC_taxpart:IC_taxservice:CT_tax','');
-INSERT INTO chart (accno,description,charttype,category,link,gifi_accno) VALUES ('2352','PVN ieòemtais 18%','A','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax','');
---
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart where accno = '2352'),'0.18','');
-INSERT INTO tax (chart_id,rate,taxnumber) VALUES ((SELECT id FROM chart where accno = '2354'),'0.18','');
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1230'), income_accno_id = (select id from chart where accno = '6010'), expense_accno_id = (select id from chart where accno = '7110'), fxgain_accno_id = (select id from chart where accno = '8170'), fxloss_accno_id = (select id from chart where accno = '8270'), curr = 'LVL', weightunit = 'kg';
-
diff --git a/sql-ledger/sql/NAICS.sql b/sql-ledger/sql/NAICS.sql
deleted file mode 100644
index 3fd3f63..0000000
--- a/sql-ledger/sql/NAICS.sql
+++ /dev/null
@@ -1,2345 +0,0 @@
--- 1997 NAICS
--- leave it SIC (Standard Industrial Code)
--- useful for other countries too
---
-INSERT INTO sic (code,description) VALUES ('11','Agriculture, Forestry, Fishing and Hunting');
-INSERT INTO sic (code,description) VALUES ('111','Crop Production');
-INSERT INTO sic (code,description) VALUES ('1111','Oilseed and Grain Farming');
-INSERT INTO sic (code,description) VALUES ('11111','Soybean Farming');
-INSERT INTO sic (code,description) VALUES ('111110','Soybean Farming');
-INSERT INTO sic (code,description) VALUES ('11112','Oilseed (except Soybean) Farming');
-INSERT INTO sic (code,description) VALUES ('111120','Oilseed (except Soybean) Farming');
-INSERT INTO sic (code,description) VALUES ('11113','Dry Pea and Bean Farming');
-INSERT INTO sic (code,description) VALUES ('111130','Dry Pea and Bean Farming');
-INSERT INTO sic (code,description) VALUES ('11114','Wheat Farming');
-INSERT INTO sic (code,description) VALUES ('111140','Wheat Farming');
-INSERT INTO sic (code,description) VALUES ('11115','Corn Farming');
-INSERT INTO sic (code,description) VALUES ('111150','Corn Farming');
-INSERT INTO sic (code,description) VALUES ('11116','Rice Farming');
-INSERT INTO sic (code,description) VALUES ('111160','Rice Farming');
-INSERT INTO sic (code,description) VALUES ('11119','Other Grain Farming');
-INSERT INTO sic (code,description) VALUES ('111191','Oilseed and Grain Combination Farming');
-INSERT INTO sic (code,description) VALUES ('111199','All Other Grain Farming');
-INSERT INTO sic (code,description) VALUES ('1112','Vegetable and Melon Farming');
-INSERT INTO sic (code,description) VALUES ('11121','Vegetable and Melon Farming');
-INSERT INTO sic (code,description) VALUES ('111211','Potato Farming');
-INSERT INTO sic (code,description) VALUES ('111219','Other Vegetable (except Potato) and Melon Farming');
-INSERT INTO sic (code,description) VALUES ('1113','Fruit and Tree Nut Farming');
-INSERT INTO sic (code,description) VALUES ('11131','Orange Groves');
-INSERT INTO sic (code,description) VALUES ('111310','Orange Groves');
-INSERT INTO sic (code,description) VALUES ('11132','Citrus (except Orange) Groves');
-INSERT INTO sic (code,description) VALUES ('111320','Citrus (except Orange) Groves');
-INSERT INTO sic (code,description) VALUES ('11133','Noncitrus Fruit and Tree Nut Farming');
-INSERT INTO sic (code,description) VALUES ('111331','Apple Orchards');
-INSERT INTO sic (code,description) VALUES ('111332','Grape Vineyards');
-INSERT INTO sic (code,description) VALUES ('111333','Strawberry Farming');
-INSERT INTO sic (code,description) VALUES ('111334','Berry (except Strawberry) Farming');
-INSERT INTO sic (code,description) VALUES ('111335','Tree Nut Farming');
-INSERT INTO sic (code,description) VALUES ('111336','Fruit and Tree Nut Combination Farming');
-INSERT INTO sic (code,description) VALUES ('111339','Other Noncitrus Fruit Farming');
-INSERT INTO sic (code,description) VALUES ('1114','Greenhouse, Nursery, and Floriculture Production');
-INSERT INTO sic (code,description) VALUES ('11141','Food Crops Grown Under Cover');
-INSERT INTO sic (code,description) VALUES ('111411','Mushroom Production');
-INSERT INTO sic (code,description) VALUES ('111419','Other Food Crops Grown Under Cover');
-INSERT INTO sic (code,description) VALUES ('11142','Nursery and Floriculture Production');
-INSERT INTO sic (code,description) VALUES ('111421','Nursery and Tree Production');
-INSERT INTO sic (code,description) VALUES ('111422','Floriculture Production');
-INSERT INTO sic (code,description) VALUES ('1119','Other Crop Farming');
-INSERT INTO sic (code,description) VALUES ('11191','Tobacco Farming');
-INSERT INTO sic (code,description) VALUES ('111910','Tobacco Farming');
-INSERT INTO sic (code,description) VALUES ('11192','Cotton Farming');
-INSERT INTO sic (code,description) VALUES ('111920','Cotton Farming');
-INSERT INTO sic (code,description) VALUES ('11193','Sugarcane Farming');
-INSERT INTO sic (code,description) VALUES ('111930','Sugarcane Farming');
-INSERT INTO sic (code,description) VALUES ('11194','Hay Farming');
-INSERT INTO sic (code,description) VALUES ('111940','Hay Farming');
-INSERT INTO sic (code,description) VALUES ('11199','All Other Crop Farming');
-INSERT INTO sic (code,description) VALUES ('111991','Sugar Beet Farming');
-INSERT INTO sic (code,description) VALUES ('111992','Peanut Farming');
-INSERT INTO sic (code,description) VALUES ('111998','All Other Miscellaneous Crop Farming');
-INSERT INTO sic (code,description) VALUES ('112','Animal Production');
-INSERT INTO sic (code,description) VALUES ('1121','Cattle Ranching and Farming');
-INSERT INTO sic (code,description) VALUES ('11211','Beef Cattle Ranching and Farming, including Feedlots');
-INSERT INTO sic (code,description) VALUES ('112111','Beef Cattle Ranching and Farming');
-INSERT INTO sic (code,description) VALUES ('112112','Cattle Feedlots');
-INSERT INTO sic (code,description) VALUES ('11212','Dairy Cattle and Milk Production');
-INSERT INTO sic (code,description) VALUES ('112120','Dairy Cattle and Milk Production');
-INSERT INTO sic (code,description) VALUES ('11213','Dual-Purpose Cattle Ranching and Farming');
-INSERT INTO sic (code,description) VALUES ('112130','Dual-Purpose Cattle Ranching and Farming');
-INSERT INTO sic (code,description) VALUES ('1122','Hog and Pig Farming');
-INSERT INTO sic (code,description) VALUES ('11221','Hog and Pig Farming');
-INSERT INTO sic (code,description) VALUES ('112210','Hog and Pig Farming');
-INSERT INTO sic (code,description) VALUES ('1123','Poultry and Egg Production');
-INSERT INTO sic (code,description) VALUES ('11231','Chicken Egg Production');
-INSERT INTO sic (code,description) VALUES ('112310','Chicken Egg Production');
-INSERT INTO sic (code,description) VALUES ('11232','Broilers and Other Meat Type Chicken Production');
-INSERT INTO sic (code,description) VALUES ('112320','Broilers and Other Meat Type Chicken Production');
-INSERT INTO sic (code,description) VALUES ('11233','Turkey Production');
-INSERT INTO sic (code,description) VALUES ('112330','Turkey Production');
-INSERT INTO sic (code,description) VALUES ('11234','Poultry Hatcheries');
-INSERT INTO sic (code,description) VALUES ('112340','Poultry Hatcheries');
-INSERT INTO sic (code,description) VALUES ('11239','Other Poultry Production');
-INSERT INTO sic (code,description) VALUES ('112390','Other Poultry Production');
-INSERT INTO sic (code,description) VALUES ('1124','Sheep and Goat Farming');
-INSERT INTO sic (code,description) VALUES ('11241','Sheep Farming');
-INSERT INTO sic (code,description) VALUES ('112410','Sheep Farming');
-INSERT INTO sic (code,description) VALUES ('11242','Goat Farming');
-INSERT INTO sic (code,description) VALUES ('112420','Goat Farming');
-INSERT INTO sic (code,description) VALUES ('1125','Animal Aquaculture');
-INSERT INTO sic (code,description) VALUES ('11251','Animal Aquaculture');
-INSERT INTO sic (code,description) VALUES ('112511','Finfish Farming and Fish Hatcheries');
-INSERT INTO sic (code,description) VALUES ('112512','Shellfish Farming');
-INSERT INTO sic (code,description) VALUES ('112519','Other Animal Aquaculture');
-INSERT INTO sic (code,description) VALUES ('1129','Other Animal Production');
-INSERT INTO sic (code,description) VALUES ('11291','Apiculture');
-INSERT INTO sic (code,description) VALUES ('112910','Apiculture');
-INSERT INTO sic (code,description) VALUES ('11292','Horses and Other Equine Production');
-INSERT INTO sic (code,description) VALUES ('112920','Horses and Other Equine Production');
-INSERT INTO sic (code,description) VALUES ('11293','Fur-Bearing Animal and Rabbit Production');
-INSERT INTO sic (code,description) VALUES ('112930','Fur-Bearing Animal and Rabbit Production');
-INSERT INTO sic (code,description) VALUES ('11299','All Other Animal Production');
-INSERT INTO sic (code,description) VALUES ('112990','All Other Animal Production');
-INSERT INTO sic (code,description) VALUES ('113','Forestry and Logging');
-INSERT INTO sic (code,description) VALUES ('1131','Timber Tract Operations');
-INSERT INTO sic (code,description) VALUES ('11311','Timber Tract Operations');
-INSERT INTO sic (code,description) VALUES ('113110','Timber Tract Operations');
-INSERT INTO sic (code,description) VALUES ('1132','Forest Nurseries and Gathering of Forest Products');
-INSERT INTO sic (code,description) VALUES ('11321','Forest Nurseries and Gathering of Forest Products');
-INSERT INTO sic (code,description) VALUES ('113210','Forest Nurseries and Gathering of Forest Products');
-INSERT INTO sic (code,description) VALUES ('1133','Logging');
-INSERT INTO sic (code,description) VALUES ('11331','Logging');
-INSERT INTO sic (code,description) VALUES ('113310','Logging');
-INSERT INTO sic (code,description) VALUES ('114','Fishing, Hunting and Trapping');
-INSERT INTO sic (code,description) VALUES ('1141','Fishing');
-INSERT INTO sic (code,description) VALUES ('11411','Fishing');
-INSERT INTO sic (code,description) VALUES ('114111','Finfish Fishing');
-INSERT INTO sic (code,description) VALUES ('114112','Shellfish Fishing');
-INSERT INTO sic (code,description) VALUES ('114119','Other Marine Fishing');
-INSERT INTO sic (code,description) VALUES ('1142','Hunting and Trapping');
-INSERT INTO sic (code,description) VALUES ('11421','Hunting and Trapping');
-INSERT INTO sic (code,description) VALUES ('114210','Hunting and Trapping');
-INSERT INTO sic (code,description) VALUES ('115','Support Activities for Agriculture and Forestry');
-INSERT INTO sic (code,description) VALUES ('1151','Support Activities for Crop Production');
-INSERT INTO sic (code,description) VALUES ('11511','Support Activities for Crop Production');
-INSERT INTO sic (code,description) VALUES ('115111','Cotton Ginning');
-INSERT INTO sic (code,description) VALUES ('115112','Soil Preparation, Planting, and Cultivating');
-INSERT INTO sic (code,description) VALUES ('115113','Crop Harvesting, Primarily by Machine');
-INSERT INTO sic (code,description) VALUES ('115114','Postharvest Crop Activities (except Cotton Ginning)');
-INSERT INTO sic (code,description) VALUES ('115115','Farm Labor Contractors and Crew Leaders');
-INSERT INTO sic (code,description) VALUES ('115116','Farm Management Services');
-INSERT INTO sic (code,description) VALUES ('1152','Support Activities for Animal Production');
-INSERT INTO sic (code,description) VALUES ('11521','Support Activities for Animal Production');
-INSERT INTO sic (code,description) VALUES ('115210','Support Activities for Animal Production');
-INSERT INTO sic (code,description) VALUES ('1153','Support Activities for Forestry');
-INSERT INTO sic (code,description) VALUES ('11531','Support Activities for Forestry');
-INSERT INTO sic (code,description) VALUES ('115310','Support Activities for Forestry');
-INSERT INTO sic (code,description) VALUES ('21','Mining');
-INSERT INTO sic (code,description) VALUES ('211','Oil and Gas Extraction');
-INSERT INTO sic (code,description) VALUES ('2111','Oil and Gas Extraction');
-INSERT INTO sic (code,description) VALUES ('21111','Oil and Gas Extraction');
-INSERT INTO sic (code,description) VALUES ('211111','Crude Petroleum and Natural Gas Extraction');
-INSERT INTO sic (code,description) VALUES ('211112','Natural Gas Liquid Extraction');
-INSERT INTO sic (code,description) VALUES ('212','Mining (except Oil and Gas)');
-INSERT INTO sic (code,description) VALUES ('2121','Coal Mining');
-INSERT INTO sic (code,description) VALUES ('21211','Coal Mining');
-INSERT INTO sic (code,description) VALUES ('212111','Bituminous Coal and Lignite Surface Mining');
-INSERT INTO sic (code,description) VALUES ('212112','Bituminous Coal Underground Mining');
-INSERT INTO sic (code,description) VALUES ('212113','Anthracite Mining');
-INSERT INTO sic (code,description) VALUES ('2122','Metal Ore Mining');
-INSERT INTO sic (code,description) VALUES ('21221','Iron Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212210','Iron Ore Mining');
-INSERT INTO sic (code,description) VALUES ('21222','Gold Ore and Silver Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212221','Gold Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212222','Silver Ore Mining');
-INSERT INTO sic (code,description) VALUES ('21223','Copper, Nickel, Lead, and Zinc Mining');
-INSERT INTO sic (code,description) VALUES ('212231','Lead Ore and Zinc Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212234','Copper Ore and Nickel Ore Mining');
-INSERT INTO sic (code,description) VALUES ('21229','Other Metal Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212291','Uranium-Radium-Vanadium Ore Mining');
-INSERT INTO sic (code,description) VALUES ('212299','All Other Metal Ore Mining');
-INSERT INTO sic (code,description) VALUES ('2123','Nonmetallic Mineral Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('21231','Stone Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212311','Dimension Stone Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212312','Crushed and Broken Limestone Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212313','Crushed and Broken Granite Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212319','Other Crushed and Broken Stone Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('21232','Sand, Gravel, Clay, and Ceramic and Refractory Minerals Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212321','Construction Sand and Gravel Mining');
-INSERT INTO sic (code,description) VALUES ('212322','Industrial Sand Mining');
-INSERT INTO sic (code,description) VALUES ('212324','Kaolin and Ball Clay Mining');
-INSERT INTO sic (code,description) VALUES ('212325','Clay and Ceramic and Refractory Minerals Mining');
-INSERT INTO sic (code,description) VALUES ('21239','Other Nonmetallic Mineral Mining and Quarrying');
-INSERT INTO sic (code,description) VALUES ('212391','Potash, Soda, and Borate Mineral Mining');
-INSERT INTO sic (code,description) VALUES ('212392','Phosphate Rock Mining');
-INSERT INTO sic (code,description) VALUES ('212393','Other Chemical and Fertilizer Mineral Mining');
-INSERT INTO sic (code,description) VALUES ('212399','All Other Nonmetallic Mineral Mining');
-INSERT INTO sic (code,description) VALUES ('213','Support Activities for Mining');
-INSERT INTO sic (code,description) VALUES ('2131','Support Activities for Mining');
-INSERT INTO sic (code,description) VALUES ('21311','Support Activities for Mining');
-INSERT INTO sic (code,description) VALUES ('213111','Drilling Oil and Gas Wells');
-INSERT INTO sic (code,description) VALUES ('213112','Support Activities for Oil and Gas Operations');
-INSERT INTO sic (code,description) VALUES ('213113','Support Activities for Coal Mining');
-INSERT INTO sic (code,description) VALUES ('213114','Support Activities for Metal Mining');
-INSERT INTO sic (code,description) VALUES ('213115','Support Activities for Nonmetallic Minerals (except Fuels)');
-INSERT INTO sic (code,description) VALUES ('22','Utilities');
-INSERT INTO sic (code,description) VALUES ('221','Utilities');
-INSERT INTO sic (code,description) VALUES ('2211','Electric Power Generation, Transmission and Distribution');
-INSERT INTO sic (code,description) VALUES ('22111','Electric Power Generation');
-INSERT INTO sic (code,description) VALUES ('221111','Hydroelectric Power Generation');
-INSERT INTO sic (code,description) VALUES ('221112','Fossil Fuel Electric Power Generation');
-INSERT INTO sic (code,description) VALUES ('221113','Nuclear Electric Power Generation');
-INSERT INTO sic (code,description) VALUES ('221119','Other Electric Power Generation');
-INSERT INTO sic (code,description) VALUES ('22112','Electric Power Transmission, Control, and Distribution');
-INSERT INTO sic (code,description) VALUES ('221121','Electric Bulk Power Transmission and Control');
-INSERT INTO sic (code,description) VALUES ('221122','Electric Power Distribution');
-INSERT INTO sic (code,description) VALUES ('2212','Natural Gas Distribution');
-INSERT INTO sic (code,description) VALUES ('22121','Natural Gas Distribution');
-INSERT INTO sic (code,description) VALUES ('221210','Natural Gas Distribution');
-INSERT INTO sic (code,description) VALUES ('2213','Water, Sewage and Other Systems');
-INSERT INTO sic (code,description) VALUES ('22131','Water Supply and Irrigation Systems');
-INSERT INTO sic (code,description) VALUES ('221310','Water Supply and Irrigation Systems');
-INSERT INTO sic (code,description) VALUES ('22132','Sewage Treatment Facilities');
-INSERT INTO sic (code,description) VALUES ('221320','Sewage Treatment Facilities');
-INSERT INTO sic (code,description) VALUES ('22133','Steam and Air-Conditioning Supply');
-INSERT INTO sic (code,description) VALUES ('221330','Steam and Air-Conditioning Supply');
-INSERT INTO sic (code,description) VALUES ('23','Construction');
-INSERT INTO sic (code,description) VALUES ('236','Construction of Buildings');
-INSERT INTO sic (code,description) VALUES ('2361','Residential Building Construction');
-INSERT INTO sic (code,description) VALUES ('23611','Residential Building Construction');
-INSERT INTO sic (code,description) VALUES ('236115','New Single-Family Housing Construction (except Operative Builders)');
-INSERT INTO sic (code,description) VALUES ('236116','New Multifamily Housing Construction (except Operative Builders)');
-INSERT INTO sic (code,description) VALUES ('236117','New Housing Operative Builders');
-INSERT INTO sic (code,description) VALUES ('236118','Residential Remodelers');
-INSERT INTO sic (code,description) VALUES ('2362','Nonresidential Building Construction');
-INSERT INTO sic (code,description) VALUES ('23621','Industrial Building Construction');
-INSERT INTO sic (code,description) VALUES ('236210','Industrial Building Construction');
-INSERT INTO sic (code,description) VALUES ('23622','Commercial and Institutional Building Construction');
-INSERT INTO sic (code,description) VALUES ('236220','Commercial and Institutional Building Construction');
-INSERT INTO sic (code,description) VALUES ('237','Heavy and Civil Engineering Construction');
-INSERT INTO sic (code,description) VALUES ('2371','Utility System Construction');
-INSERT INTO sic (code,description) VALUES ('23711','Water and Sewer Line and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('237110','Water and Sewer Line and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('23712','Oil and Gas Pipeline and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('237120','Oil and Gas Pipeline and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('23713','Power and Communication Line and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('237130','Power and Communication Line and Related Structures Construction');
-INSERT INTO sic (code,description) VALUES ('2372','Land Subdivision');
-INSERT INTO sic (code,description) VALUES ('23721','Land Subdivision');
-INSERT INTO sic (code,description) VALUES ('237210','Land Subdivision');
-INSERT INTO sic (code,description) VALUES ('2373','Highway, Street, and Bridge Construction');
-INSERT INTO sic (code,description) VALUES ('23731','Highway, Street, and Bridge Construction');
-INSERT INTO sic (code,description) VALUES ('237310','Highway, Street, and Bridge Construction');
-INSERT INTO sic (code,description) VALUES ('2379','Other Heavy and Civil Engineering Construction');
-INSERT INTO sic (code,description) VALUES ('23799','Other Heavy and Civil Engineering Construction');
-INSERT INTO sic (code,description) VALUES ('237990','Other Heavy and Civil Engineering Construction');
-INSERT INTO sic (code,description) VALUES ('238','Specialty Trade Contractors');
-INSERT INTO sic (code,description) VALUES ('2381','Foundation, Structure, and Building Exterior Contractors');
-INSERT INTO sic (code,description) VALUES ('23811','Poured Concrete Foundation and Structure Contractors');
-INSERT INTO sic (code,description) VALUES ('238110','Poured Concrete Foundation and Structure Contractors');
-INSERT INTO sic (code,description) VALUES ('23812','Structural Steel and Precast Concrete Contractors');
-INSERT INTO sic (code,description) VALUES ('238120','Structural Steel and Precast Concrete Contractors');
-INSERT INTO sic (code,description) VALUES ('23813','Framing Contractors');
-INSERT INTO sic (code,description) VALUES ('238130','Framing Contractors');
-INSERT INTO sic (code,description) VALUES ('23814','Masonry Contractors');
-INSERT INTO sic (code,description) VALUES ('238140','Masonry Contractors');
-INSERT INTO sic (code,description) VALUES ('23815','Glass and Glazing Contractors');
-INSERT INTO sic (code,description) VALUES ('238150','Glass and Glazing Contractors');
-INSERT INTO sic (code,description) VALUES ('23816','Roofing Contractors');
-INSERT INTO sic (code,description) VALUES ('238160','Roofing Contractors');
-INSERT INTO sic (code,description) VALUES ('23817','Siding Contractors');
-INSERT INTO sic (code,description) VALUES ('238170','Siding Contractors');
-INSERT INTO sic (code,description) VALUES ('23819','Other Foundation, Structure, and Building Exterior Contractors');
-INSERT INTO sic (code,description) VALUES ('238190','Other Foundation, Structure, and Building Exterior Contractors');
-INSERT INTO sic (code,description) VALUES ('2382','Building Equipment Contractors');
-INSERT INTO sic (code,description) VALUES ('23821','Electrical Contractors');
-INSERT INTO sic (code,description) VALUES ('238210','Electrical Contractors');
-INSERT INTO sic (code,description) VALUES ('23822','Plumbing, Heating, and Air-Conditioning Contractors');
-INSERT INTO sic (code,description) VALUES ('238220','Plumbing, Heating, and Air-Conditioning Contractors');
-INSERT INTO sic (code,description) VALUES ('23829','Other Building Equipment Contractors');
-INSERT INTO sic (code,description) VALUES ('238290','Other Building Equipment Contractors');
-INSERT INTO sic (code,description) VALUES ('2383','Building Finishing Contractors');
-INSERT INTO sic (code,description) VALUES ('23831','Drywall and Insulation Contractors');
-INSERT INTO sic (code,description) VALUES ('238310','Drywall and Insulation Contractors');
-INSERT INTO sic (code,description) VALUES ('23832','Painting and Wall Covering Contractors');
-INSERT INTO sic (code,description) VALUES ('238320','Painting and Wall Covering Contractors');
-INSERT INTO sic (code,description) VALUES ('23833','Flooring Contractors');
-INSERT INTO sic (code,description) VALUES ('238330','Flooring Contractors');
-INSERT INTO sic (code,description) VALUES ('23834','Tile and Terrazzo Contractors');
-INSERT INTO sic (code,description) VALUES ('238340','Tile and Terrazzo Contractors');
-INSERT INTO sic (code,description) VALUES ('23835','Finish Carpentry Contractors');
-INSERT INTO sic (code,description) VALUES ('238350','Finish Carpentry Contractors');
-INSERT INTO sic (code,description) VALUES ('23839','Other Building Finishing Contractors');
-INSERT INTO sic (code,description) VALUES ('238390','Other Building Finishing Contractors');
-INSERT INTO sic (code,description) VALUES ('2389','Other Specialty Trade Contractors');
-INSERT INTO sic (code,description) VALUES ('23891','Site Preparation Contractors');
-INSERT INTO sic (code,description) VALUES ('238910','Site Preparation Contractors');
-INSERT INTO sic (code,description) VALUES ('23899','All Other Specialty Trade Contractors');
-INSERT INTO sic (code,description) VALUES ('238990','All Other Specialty Trade Contractors');
-INSERT INTO sic (code,description) VALUES ('31-33','Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311','Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3111','Animal Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31111','Animal Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311111','Dog and Cat Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311119','Other Animal Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3112','Grain and Oilseed Milling');
-INSERT INTO sic (code,description) VALUES ('31121','Flour Milling and Malt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311211','Flour Milling');
-INSERT INTO sic (code,description) VALUES ('311212','Rice Milling');
-INSERT INTO sic (code,description) VALUES ('311213','Malt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31122','Starch and Vegetable Fats and Oils Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311221','Wet Corn Milling');
-INSERT INTO sic (code,description) VALUES ('311222','Soybean Processing');
-INSERT INTO sic (code,description) VALUES ('311223','Other Oilseed Processing');
-INSERT INTO sic (code,description) VALUES ('311225','Fats and Oils Refining and Blending');
-INSERT INTO sic (code,description) VALUES ('31123','Breakfast Cereal Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311230','Breakfast Cereal Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3113','Sugar and Confectionery Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31131','Sugar Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311311','Sugarcane Mills');
-INSERT INTO sic (code,description) VALUES ('311312','Cane Sugar Refining');
-INSERT INTO sic (code,description) VALUES ('311313','Beet Sugar Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31132','Chocolate and Confectionery Manufacturing from Cacao Beans');
-INSERT INTO sic (code,description) VALUES ('311320','Chocolate and Confectionery Manufacturing from Cacao Beans');
-INSERT INTO sic (code,description) VALUES ('31133','Confectionery Manufacturing from Purchased Chocolate');
-INSERT INTO sic (code,description) VALUES ('311330','Confectionery Manufacturing from Purchased Chocolate');
-INSERT INTO sic (code,description) VALUES ('31134','Nonchocolate Confectionery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311340','Nonchocolate Confectionery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3114','Fruit and Vegetable Preserving and Specialty Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31141','Frozen Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311411','Frozen Fruit, Juice, and Vegetable Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311412','Frozen Specialty Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31142','Fruit and Vegetable Canning, Pickling, and Drying');
-INSERT INTO sic (code,description) VALUES ('311421','Fruit and Vegetable Canning');
-INSERT INTO sic (code,description) VALUES ('311422','Specialty Canning');
-INSERT INTO sic (code,description) VALUES ('311423','Dried and Dehydrated Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3115','Dairy Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31151','Dairy Product (except Frozen) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311511','Fluid Milk Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311512','Creamery Butter Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311513','Cheese Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311514','Dry, Condensed, and Evaporated Dairy Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31152','Ice Cream and Frozen Dessert Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311520','Ice Cream and Frozen Dessert Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3116','Animal Slaughtering and Processing');
-INSERT INTO sic (code,description) VALUES ('31161','Animal Slaughtering and Processing');
-INSERT INTO sic (code,description) VALUES ('311611','Animal (except Poultry) Slaughtering');
-INSERT INTO sic (code,description) VALUES ('311612','Meat Processed from Carcasses');
-INSERT INTO sic (code,description) VALUES ('311613','Rendering and Meat Byproduct Processing');
-INSERT INTO sic (code,description) VALUES ('311615','Poultry Processing');
-INSERT INTO sic (code,description) VALUES ('3117','Seafood Product Preparation and Packaging');
-INSERT INTO sic (code,description) VALUES ('31171','Seafood Product Preparation and Packaging');
-INSERT INTO sic (code,description) VALUES ('311711','Seafood Canning');
-INSERT INTO sic (code,description) VALUES ('311712','Fresh and Frozen Seafood Processing');
-INSERT INTO sic (code,description) VALUES ('3118','Bakeries and Tortilla Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31181','Bread and Bakery Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311811','Retail Bakeries');
-INSERT INTO sic (code,description) VALUES ('311812','Commercial Bakeries');
-INSERT INTO sic (code,description) VALUES ('311813','Frozen Cakes, Pies, and Other Pastries Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31182','Cookie, Cracker, and Pasta Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311821','Cookie and Cracker Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311822','Flour Mixes and Dough Manufacturing from Purchased Flour');
-INSERT INTO sic (code,description) VALUES ('311823','Dry Pasta Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31183','Tortilla Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311830','Tortilla Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3119','Other Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31191','Snack Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311911','Roasted Nuts and Peanut Butter Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311919','Other Snack Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31192','Coffee and Tea Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311920','Coffee and Tea Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31193','Flavoring Syrup and Concentrate Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311930','Flavoring Syrup and Concentrate Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31194','Seasoning and Dressing Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311941','Mayonnaise, Dressing, and Other Prepared Sauce Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311942','Spice and Extract Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31199','All Other Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311991','Perishable Prepared Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('311999','All Other Miscellaneous Food Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312','Beverage and Tobacco Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3121','Beverage Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31211','Soft Drink and Ice Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312111','Soft Drink Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312112','Bottled Water Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312113','Ice Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31212','Breweries');
-INSERT INTO sic (code,description) VALUES ('312120','Breweries');
-INSERT INTO sic (code,description) VALUES ('31213','Wineries');
-INSERT INTO sic (code,description) VALUES ('312130','Wineries');
-INSERT INTO sic (code,description) VALUES ('31214','Distilleries');
-INSERT INTO sic (code,description) VALUES ('312140','Distilleries');
-INSERT INTO sic (code,description) VALUES ('3122','Tobacco Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31221','Tobacco Stemming and Redrying');
-INSERT INTO sic (code,description) VALUES ('312210','Tobacco Stemming and Redrying');
-INSERT INTO sic (code,description) VALUES ('31222','Tobacco Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312221','Cigarette Manufacturing');
-INSERT INTO sic (code,description) VALUES ('312229','Other Tobacco Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('313','Textile Mills');
-INSERT INTO sic (code,description) VALUES ('3131','Fiber, Yarn, and Thread Mills');
-INSERT INTO sic (code,description) VALUES ('31311','Fiber, Yarn, and Thread Mills');
-INSERT INTO sic (code,description) VALUES ('313111','Yarn Spinning Mills');
-INSERT INTO sic (code,description) VALUES ('313112','Yarn Texturizing, Throwing, and Twisting Mills');
-INSERT INTO sic (code,description) VALUES ('313113','Thread Mills');
-INSERT INTO sic (code,description) VALUES ('3132','Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('31321','Broadwoven Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('313210','Broadwoven Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('31322','Narrow Fabric Mills and Schiffli Machine Embroidery');
-INSERT INTO sic (code,description) VALUES ('313221','Narrow Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('313222','Schiffli Machine Embroidery');
-INSERT INTO sic (code,description) VALUES ('31323','Nonwoven Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('313230','Nonwoven Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('31324','Knit Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('313241','Weft Knit Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('313249','Other Knit Fabric and Lace Mills');
-INSERT INTO sic (code,description) VALUES ('3133','Textile and Fabric Finishing and Fabric Coating Mills');
-INSERT INTO sic (code,description) VALUES ('31331','Textile and Fabric Finishing Mills');
-INSERT INTO sic (code,description) VALUES ('313311','Broadwoven Fabric Finishing Mills');
-INSERT INTO sic (code,description) VALUES ('313312','Textile and Fabric Finishing (except Broadwoven Fabric) Mills');
-INSERT INTO sic (code,description) VALUES ('31332','Fabric Coating Mills');
-INSERT INTO sic (code,description) VALUES ('313320','Fabric Coating Mills');
-INSERT INTO sic (code,description) VALUES ('314','Textile Product Mills');
-INSERT INTO sic (code,description) VALUES ('3141','Textile Furnishings Mills');
-INSERT INTO sic (code,description) VALUES ('31411','Carpet and Rug Mills');
-INSERT INTO sic (code,description) VALUES ('314110','Carpet and Rug Mills');
-INSERT INTO sic (code,description) VALUES ('31412','Curtain and Linen Mills');
-INSERT INTO sic (code,description) VALUES ('314121','Curtain and Drapery Mills');
-INSERT INTO sic (code,description) VALUES ('314129','Other Household Textile Product Mills');
-INSERT INTO sic (code,description) VALUES ('3149','Other Textile Product Mills');
-INSERT INTO sic (code,description) VALUES ('31491','Textile Bag and Canvas Mills');
-INSERT INTO sic (code,description) VALUES ('314911','Textile Bag Mills');
-INSERT INTO sic (code,description) VALUES ('314912','Canvas and Related Product Mills');
-INSERT INTO sic (code,description) VALUES ('31499','All Other Textile Product Mills');
-INSERT INTO sic (code,description) VALUES ('314991','Rope, Cordage, and Twine Mills');
-INSERT INTO sic (code,description) VALUES ('314992','Tire Cord and Tire Fabric Mills');
-INSERT INTO sic (code,description) VALUES ('314999','All Other Miscellaneous Textile Product Mills');
-INSERT INTO sic (code,description) VALUES ('315','Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3151','Apparel Knitting Mills');
-INSERT INTO sic (code,description) VALUES ('31511','Hosiery and Sock Mills');
-INSERT INTO sic (code,description) VALUES ('315111','Sheer Hosiery Mills');
-INSERT INTO sic (code,description) VALUES ('315119','Other Hosiery and Sock Mills');
-INSERT INTO sic (code,description) VALUES ('31519','Other Apparel Knitting Mills');
-INSERT INTO sic (code,description) VALUES ('315191','Outerwear Knitting Mills');
-INSERT INTO sic (code,description) VALUES ('315192','Underwear and Nightwear Knitting Mills');
-INSERT INTO sic (code,description) VALUES ('3152','Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31521','Cut and Sew Apparel Contractors');
-INSERT INTO sic (code,description) VALUES ('315211','Men\'s and Boys\' Cut and Sew Apparel Contractors');
-INSERT INTO sic (code,description) VALUES ('315212','Women\'s, Girls\', and Infants\' Cut and Sew Apparel Contractors');
-INSERT INTO sic (code,description) VALUES ('31522','Men\'s and Boys\' Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315221','Men\'s and Boys\' Cut and Sew Underwear and Nightwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315222','Men\'s and Boys\' Cut and Sew Suit, Coat, and Overcoat Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315223','Men\'s and Boys\' Cut and Sew Shirt (except Work Shirt) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315224','Men\'s and Boys\' Cut and Sew Trouser, Slack, and Jean Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315225','Men\'s and Boys\' Cut and Sew Work Clothing Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315228','Men\'s and Boys\' Cut and Sew Other Outerwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31523','Women\'s and Girls\' Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315231','Women\'s and Girls\' Cut and Sew Lingerie, Loungewear, and Nightwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315232','Women\'s and Girls\' Cut and Sew Blouse and Shirt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315233','Women\'s and Girls\' Cut and Sew Dress Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315234','Women\'s and Girls\' Cut and Sew Suit, Coat, Tailored Jacket, and Skirt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315239','Women\'s and Girls\' Cut and Sew Other Outerwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31529','Other Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315291','Infants\' Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315292','Fur and Leather Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315299','All Other Cut and Sew Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3159','Apparel Accessories and Other Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31599','Apparel Accessories and Other Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315991','Hat, Cap, and Millinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315992','Glove and Mitten Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315993','Men\'s and Boys\' Neckwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('315999','Other Apparel Accessories and Other Apparel Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316','Leather and Allied Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3161','Leather and Hide Tanning and Finishing');
-INSERT INTO sic (code,description) VALUES ('31611','Leather and Hide Tanning and Finishing');
-INSERT INTO sic (code,description) VALUES ('316110','Leather and Hide Tanning and Finishing');
-INSERT INTO sic (code,description) VALUES ('3162','Footwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31621','Footwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316211','Rubber and Plastics Footwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316212','House Slipper Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316213','Men\'s Footwear (except Athletic) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316214','Women\'s Footwear (except Athletic) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316219','Other Footwear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3169','Other Leather and Allied Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('31699','Other Leather and Allied Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316991','Luggage Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316992','Women\'s Handbag and Purse Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316993','Personal Leather Good (except Women\'s Handbag and Purse) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('316999','All Other Leather Good Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321','Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3211','Sawmills and Wood Preservation');
-INSERT INTO sic (code,description) VALUES ('32111','Sawmills and Wood Preservation');
-INSERT INTO sic (code,description) VALUES ('321113','Sawmills');
-INSERT INTO sic (code,description) VALUES ('321114','Wood Preservation');
-INSERT INTO sic (code,description) VALUES ('3212','Veneer, Plywood, and Engineered Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32121','Veneer, Plywood, and Engineered Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321211','Hardwood Veneer and Plywood Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321212','Softwood Veneer and Plywood Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321213','Engineered Wood Member (except Truss) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321214','Truss Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321219','Reconstituted Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3219','Other Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32191','Millwork');
-INSERT INTO sic (code,description) VALUES ('321911','Wood Window and Door Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321912','Cut Stock, Resawing Lumber, and Planing');
-INSERT INTO sic (code,description) VALUES ('321918','Other Millwork (including Flooring)');
-INSERT INTO sic (code,description) VALUES ('32192','Wood Container and Pallet Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321920','Wood Container and Pallet Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32199','All Other Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321991','Manufactured Home (Mobile Home) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321992','Prefabricated Wood Building Manufacturing');
-INSERT INTO sic (code,description) VALUES ('321999','All Other Miscellaneous Wood Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322','Paper Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3221','Pulp, Paper, and Paperboard Mills');
-INSERT INTO sic (code,description) VALUES ('32211','Pulp Mills');
-INSERT INTO sic (code,description) VALUES ('322110','Pulp Mills');
-INSERT INTO sic (code,description) VALUES ('32212','Paper Mills');
-INSERT INTO sic (code,description) VALUES ('322121','Paper (except Newsprint) Mills');
-INSERT INTO sic (code,description) VALUES ('322122','Newsprint Mills');
-INSERT INTO sic (code,description) VALUES ('32213','Paperboard Mills');
-INSERT INTO sic (code,description) VALUES ('322130','Paperboard Mills');
-INSERT INTO sic (code,description) VALUES ('3222','Converted Paper Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32221','Paperboard Container Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322211','Corrugated and Solid Fiber Box Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322212','Folding Paperboard Box Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322213','Setup Paperboard Box Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322214','Fiber Can, Tube, Drum, and Similar Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322215','Nonfolding Sanitary Food Container Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32222','Paper Bag and Coated and Treated Paper Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322221','Coated and Laminated Packaging Paper and Plastics Film Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322222','Coated and Laminated Paper Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322223','Plastics, Foil, and Coated Paper Bag Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322224','Uncoated Paper and Multiwall Bag Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322225','Laminated Aluminum Foil Manufacturing for Flexible Packaging Uses');
-INSERT INTO sic (code,description) VALUES ('322226','Surface-Coated Paperboard Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32223','Stationery Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322231','Die-Cut Paper and Paperboard Office Supplies Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322232','Envelope Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322233','Stationery, Tablet, and Related Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32229','Other Converted Paper Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322291','Sanitary Paper Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('322299','All Other Converted Paper Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('323','Printing and Related Support Activities');
-INSERT INTO sic (code,description) VALUES ('3231','Printing and Related Support Activities');
-INSERT INTO sic (code,description) VALUES ('32311','Printing');
-INSERT INTO sic (code,description) VALUES ('323110','Commercial Lithographic Printing');
-INSERT INTO sic (code,description) VALUES ('323111','Commercial Gravure Printing');
-INSERT INTO sic (code,description) VALUES ('323112','Commercial Flexographic Printing');
-INSERT INTO sic (code,description) VALUES ('323113','Commercial Screen Printing');
-INSERT INTO sic (code,description) VALUES ('323114','Quick Printing');
-INSERT INTO sic (code,description) VALUES ('323115','Digital Printing');
-INSERT INTO sic (code,description) VALUES ('323116','Manifold Business Forms Printing');
-INSERT INTO sic (code,description) VALUES ('323117','Books Printing');
-INSERT INTO sic (code,description) VALUES ('323118','Blankbook, Looseleaf Binders, and Devices Manufacturing');
-INSERT INTO sic (code,description) VALUES ('323119','Other Commercial Printing');
-INSERT INTO sic (code,description) VALUES ('32312','Support Activities for Printing');
-INSERT INTO sic (code,description) VALUES ('323121','Tradebinding and Related Work');
-INSERT INTO sic (code,description) VALUES ('323122','Prepress Services');
-INSERT INTO sic (code,description) VALUES ('324','Petroleum and Coal Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3241','Petroleum and Coal Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32411','Petroleum Refineries');
-INSERT INTO sic (code,description) VALUES ('324110','Petroleum Refineries');
-INSERT INTO sic (code,description) VALUES ('32412','Asphalt Paving, Roofing, and Saturated Materials Manufacturing');
-INSERT INTO sic (code,description) VALUES ('324121','Asphalt Paving Mixture and Block Manufacturing');
-INSERT INTO sic (code,description) VALUES ('324122','Asphalt Shingle and Coating Materials Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32419','Other Petroleum and Coal Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('324191','Petroleum Lubricating Oil and Grease Manufacturing');
-INSERT INTO sic (code,description) VALUES ('324199','All Other Petroleum and Coal Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325','Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3251','Basic Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32511','Petrochemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325110','Petrochemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32512','Industrial Gas Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325120','Industrial Gas Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32513','Synthetic Dye and Pigment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325131','Inorganic Dye and Pigment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325132','Synthetic Organic Dye and Pigment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32518','Other Basic Inorganic Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325181','Alkalies and Chlorine Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325182','Carbon Black Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325188','All Other Basic Inorganic Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32519','Other Basic Organic Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325191','Gum and Wood Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325192','Cyclic Crude and Intermediate Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325193','Ethyl Alcohol Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325199','All Other Basic Organic Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3252','Resin, Synthetic Rubber, and Artificial Synthetic Fibers and Filaments Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32521','Resin and Synthetic Rubber Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325211','Plastics Material and Resin Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325212','Synthetic Rubber Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32522','Artificial and Synthetic Fibers and Filaments Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325221','Cellulosic Organic Fiber Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325222','Noncellulosic Organic Fiber Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3253','Pesticide, Fertilizer, and Other Agricultural Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32531','Fertilizer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325311','Nitrogenous Fertilizer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325312','Phosphatic Fertilizer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325314','Fertilizer (Mixing Only) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32532','Pesticide and Other Agricultural Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325320','Pesticide and Other Agricultural Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3254','Pharmaceutical and Medicine Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32541','Pharmaceutical and Medicine Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325411','Medicinal and Botanical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325412','Pharmaceutical Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325413','In-Vitro Diagnostic Substance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325414','Biological Product (except Diagnostic) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3255','Paint, Coating, and Adhesive Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32551','Paint and Coating Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325510','Paint and Coating Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32552','Adhesive Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325520','Adhesive Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3256','Soap, Cleaning Compound, and Toilet Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32561','Soap and Cleaning Compound Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325611','Soap and Other Detergent Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325612','Polish and Other Sanitation Good Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325613','Surface Active Agent Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32562','Toilet Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325620','Toilet Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3259','Other Chemical Product and Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32591','Printing Ink Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325910','Printing Ink Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32592','Explosives Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325920','Explosives Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32599','All Other Chemical Product and Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325991','Custom Compounding of Purchased Resins');
-INSERT INTO sic (code,description) VALUES ('325992','Photographic Film, Paper, Plate, and Chemical Manufacturing');
-INSERT INTO sic (code,description) VALUES ('325998','All Other Miscellaneous Chemical Product and Preparation Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326','Plastics and Rubber Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3261','Plastics Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32611','Plastics Packaging Materials and Unlaminated Film and Sheet Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326111','Plastics Bag Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326112','Plastics Packaging Film and Sheet (including Laminated) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326113','Unlaminated Plastics Film and Sheet (except Packaging) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32612','Plastics Pipe, Pipe Fitting, and Unlaminated Profile Shape Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326121','Unlaminated Plastics Profile Shape Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326122','Plastics Pipe and Pipe Fitting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32613','Laminated Plastics Plate, Sheet (except Packaging), and Shape Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326130','Laminated Plastics Plate, Sheet (except Packaging), and Shape Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32614','Polystyrene Foam Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326140','Polystyrene Foam Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32615','Urethane and Other Foam Product (except Polystyrene) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326150','Urethane and Other Foam Product (except Polystyrene) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32616','Plastics Bottle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326160','Plastics Bottle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32619','Other Plastics Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326191','Plastics Plumbing Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326192','Resilient Floor Covering Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326199','All Other Plastics Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3262','Rubber Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32621','Tire Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326211','Tire Manufacturing (except Retreading)');
-INSERT INTO sic (code,description) VALUES ('326212','Tire Retreading');
-INSERT INTO sic (code,description) VALUES ('32622','Rubber and Plastics Hoses and Belting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326220','Rubber and Plastics Hoses and Belting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32629','Other Rubber Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('326291','Rubber Product Manufacturing for Mechanical Use');
-INSERT INTO sic (code,description) VALUES ('326299','All Other Rubber Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327','Nonmetallic Mineral Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3271','Clay Product and Refractory Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32711','Pottery, Ceramics, and Plumbing Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327111','Vitreous China Plumbing Fixture and China and Earthenware Bathroom Accessories Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327112','Vitreous China, Fine Earthenware, and Other Pottery Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327113','Porcelain Electrical Supply Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32712','Clay Building Material and Refractories Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327121','Brick and Structural Clay Tile Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327122','Ceramic Wall and Floor Tile Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327123','Other Structural Clay Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327124','Clay Refractory Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327125','Nonclay Refractory Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3272','Glass and Glass Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32721','Glass and Glass Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327211','Flat Glass Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327212','Other Pressed and Blown Glass and Glassware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327213','Glass Container Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327215','Glass Product Manufacturing Made of Purchased Glass');
-INSERT INTO sic (code,description) VALUES ('3273','Cement and Concrete Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32731','Cement Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327310','Cement Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32732','Ready-Mix Concrete Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327320','Ready-Mix Concrete Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32733','Concrete Pipe, Brick, and Block Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327331','Concrete Block and Brick Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327332','Concrete Pipe Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32739','Other Concrete Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327390','Other Concrete Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3274','Lime and Gypsum Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32741','Lime Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327410','Lime Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32742','Gypsum Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327420','Gypsum Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3279','Other Nonmetallic Mineral Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32791','Abrasive Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327910','Abrasive Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('32799','All Other Nonmetallic Mineral Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327991','Cut Stone and Stone Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327992','Ground or Treated Mineral and Earth Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327993','Mineral Wool Manufacturing');
-INSERT INTO sic (code,description) VALUES ('327999','All Other Miscellaneous Nonmetallic Mineral Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('331','Primary Metal Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3311','Iron and Steel Mills and Ferroalloy Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33111','Iron and Steel Mills and Ferroalloy Manufacturing');
-INSERT INTO sic (code,description) VALUES ('331111','Iron and Steel Mills');
-INSERT INTO sic (code,description) VALUES ('331112','Electrometallurgical Ferroalloy Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3312','Steel Product Manufacturing from Purchased Steel');
-INSERT INTO sic (code,description) VALUES ('33121','Iron and Steel Pipe and Tube Manufacturing from Purchased Steel');
-INSERT INTO sic (code,description) VALUES ('331210','Iron and Steel Pipe and Tube Manufacturing from Purchased Steel');
-INSERT INTO sic (code,description) VALUES ('33122','Rolling and Drawing of Purchased Steel');
-INSERT INTO sic (code,description) VALUES ('331221','Rolled Steel Shape Manufacturing');
-INSERT INTO sic (code,description) VALUES ('331222','Steel Wire Drawing');
-INSERT INTO sic (code,description) VALUES ('3313','Alumina and Aluminum Production and Processing');
-INSERT INTO sic (code,description) VALUES ('33131','Alumina and Aluminum Production and Processing');
-INSERT INTO sic (code,description) VALUES ('331311','Alumina Refining');
-INSERT INTO sic (code,description) VALUES ('331312','Primary Aluminum Production');
-INSERT INTO sic (code,description) VALUES ('331314','Secondary Smelting and Alloying of Aluminum');
-INSERT INTO sic (code,description) VALUES ('331315','Aluminum Sheet, Plate, and Foil Manufacturing');
-INSERT INTO sic (code,description) VALUES ('331316','Aluminum Extruded Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('331319','Other Aluminum Rolling and Drawing');
-INSERT INTO sic (code,description) VALUES ('3314','Nonferrous Metal (except Aluminum) Production and Processing');
-INSERT INTO sic (code,description) VALUES ('33141','Nonferrous Metal (except Aluminum) Smelting and Refining');
-INSERT INTO sic (code,description) VALUES ('331411','Primary Smelting and Refining of Copper');
-INSERT INTO sic (code,description) VALUES ('331419','Primary Smelting and Refining of Nonferrous Metal (except Copper and Aluminum)');
-INSERT INTO sic (code,description) VALUES ('33142','Copper Rolling, Drawing, Extruding, and Alloying');
-INSERT INTO sic (code,description) VALUES ('331421','Copper Rolling, Drawing, and Extruding');
-INSERT INTO sic (code,description) VALUES ('331422','Copper Wire (except Mechanical) Drawing');
-INSERT INTO sic (code,description) VALUES ('331423','Secondary Smelting, Refining, and Alloying of Copper');
-INSERT INTO sic (code,description) VALUES ('33149','Nonferrous Metal (except Copper and Aluminum) Rolling, Drawing, Extruding, and Alloying');
-INSERT INTO sic (code,description) VALUES ('331491','Nonferrous Metal (except Copper and Aluminum) Rolling, Drawing, and Extruding');
-INSERT INTO sic (code,description) VALUES ('331492','Secondary Smelting, Refining, and Alloying of Nonferrous Metal (except Copper and Aluminum)');
-INSERT INTO sic (code,description) VALUES ('3315','Foundries');
-INSERT INTO sic (code,description) VALUES ('33151','Ferrous Metal Foundries');
-INSERT INTO sic (code,description) VALUES ('331511','Iron Foundries');
-INSERT INTO sic (code,description) VALUES ('331512','Steel Investment Foundries');
-INSERT INTO sic (code,description) VALUES ('331513','Steel Foundries (except Investment)');
-INSERT INTO sic (code,description) VALUES ('33152','Nonferrous Metal Foundries');
-INSERT INTO sic (code,description) VALUES ('331521','Aluminum Die-Casting Foundries');
-INSERT INTO sic (code,description) VALUES ('331522','Nonferrous (except Aluminum) Die-Casting Foundries');
-INSERT INTO sic (code,description) VALUES ('331524','Aluminum Foundries (except Die-Casting)');
-INSERT INTO sic (code,description) VALUES ('331525','Copper Foundries (except Die-Casting)');
-INSERT INTO sic (code,description) VALUES ('331528','Other Nonferrous Foundries (except Die-Casting)');
-INSERT INTO sic (code,description) VALUES ('332','Fabricated Metal Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3321','Forging and Stamping');
-INSERT INTO sic (code,description) VALUES ('33211','Forging and Stamping');
-INSERT INTO sic (code,description) VALUES ('332111','Iron and Steel Forging');
-INSERT INTO sic (code,description) VALUES ('332112','Nonferrous Forging');
-INSERT INTO sic (code,description) VALUES ('332114','Custom Roll Forming');
-INSERT INTO sic (code,description) VALUES ('332115','Crown and Closure Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332116','Metal Stamping');
-INSERT INTO sic (code,description) VALUES ('332117','Powder Metallurgy Part Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3322','Cutlery and Handtool Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33221','Cutlery and Handtool Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332211','Cutlery and Flatware (except Precious) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332212','Hand and Edge Tool Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332213','Saw Blade and Handsaw Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332214','Kitchen Utensil, Pot, and Pan Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3323','Architectural and Structural Metals Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33231','Plate Work and Fabricated Structural Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332311','Prefabricated Metal Building and Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332312','Fabricated Structural Metal Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332313','Plate Work Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33232','Ornamental and Architectural Metal Products Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332321','Metal Window and Door Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332322','Sheet Metal Work Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332323','Ornamental and Architectural Metal Work Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3324','Boiler, Tank, and Shipping Container Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33241','Power Boiler and Heat Exchanger Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332410','Power Boiler and Heat Exchanger Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33242','Metal Tank (Heavy Gauge) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332420','Metal Tank (Heavy Gauge) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33243','Metal Can, Box, and Other Metal Container (Light Gauge) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332431','Metal Can Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332439','Other Metal Container Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3325','Hardware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33251','Hardware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332510','Hardware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3326','Spring and Wire Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33261','Spring and Wire Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332611','Spring (Heavy Gauge) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332612','Spring (Light Gauge) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332618','Other Fabricated Wire Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3327','Machine Shops; Turned Product; and Screw, Nut, and Bolt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33271','Machine Shops');
-INSERT INTO sic (code,description) VALUES ('332710','Machine Shops');
-INSERT INTO sic (code,description) VALUES ('33272','Turned Product and Screw, Nut, and Bolt Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332721','Precision Turned Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332722','Bolt, Nut, Screw, Rivet, and Washer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3328','Coating, Engraving, Heat Treating, and Allied Activities');
-INSERT INTO sic (code,description) VALUES ('33281','Coating, Engraving, Heat Treating, and Allied Activities');
-INSERT INTO sic (code,description) VALUES ('332811','Metal Heat Treating');
-INSERT INTO sic (code,description) VALUES ('332812','Metal Coating, Engraving (except Jewelry and Silverware), and Allied Services to Manufacturers');
-INSERT INTO sic (code,description) VALUES ('332813','Electroplating, Plating, Polishing, Anodizing, and Coloring');
-INSERT INTO sic (code,description) VALUES ('3329','Other Fabricated Metal Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33291','Metal Valve Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332911','Industrial Valve Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332912','Fluid Power Valve and Hose Fitting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332913','Plumbing Fixture Fitting and Trim Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332919','Other Metal Valve and Pipe Fitting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33299','All Other Fabricated Metal Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332991','Ball and Roller Bearing Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332992','Small Arms Ammunition Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332993','Ammunition (except Small Arms) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332994','Small Arms Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332995','Other Ordnance and Accessories Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332996','Fabricated Pipe and Pipe Fitting Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332997','Industrial Pattern Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332998','Enameled Iron and Metal Sanitary Ware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('332999','All Other Miscellaneous Fabricated Metal Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333','Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3331','Agriculture, Construction, and Mining Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33311','Agricultural Implement Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333111','Farm Machinery and Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333112','Lawn and Garden Tractor and Home Lawn and Garden Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33312','Construction Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333120','Construction Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33313','Mining and Oil and Gas Field Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333131','Mining Machinery and Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333132','Oil and Gas Field Machinery and Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3332','Industrial Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33321','Sawmill and Woodworking Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333210','Sawmill and Woodworking Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33322','Plastics and Rubber Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333220','Plastics and Rubber Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33329','Other Industrial Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333291','Paper Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333292','Textile Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333293','Printing Machinery and Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333294','Food Product Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333295','Semiconductor Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333298','All Other Industrial Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3333','Commercial and Service Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33331','Commercial and Service Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333311','Automatic Vending Machine Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333312','Commercial Laundry, Drycleaning, and Pressing Machine Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333313','Office Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333314','Optical Instrument and Lens Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333315','Photographic and Photocopying Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333319','Other Commercial and Service Industry Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3334','Ventilation, Heating, Air-Conditioning, and Commercial Refrigeration Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33341','Ventilation, Heating, Air-Conditioning, and Commercial Refrigeration Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333411','Air Purification Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333412','Industrial and Commercial Fan and Blower Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333414','Heating Equipment (except Warm Air Furnaces) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333415','Air-Conditioning and Warm Air Heating Equipment and Commercial and Industrial Refrigeration Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3335','Metalworking Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33351','Metalworking Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333511','Industrial Mold Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333512','Machine Tool (Metal Cutting Types) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333513','Machine Tool (Metal Forming Types) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333514','Special Die and Tool, Die Set, Jig, and Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333515','Cutting Tool and Machine Tool Accessory Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333516','Rolling Mill Machinery and Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333518','Other Metalworking Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3336','Engine, Turbine, and Power Transmission Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33361','Engine, Turbine, and Power Transmission Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333611','Turbine and Turbine Generator Set Units Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333612','Speed Changer, Industrial High-Speed Drive, and Gear Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333613','Mechanical Power Transmission Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333618','Other Engine Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3339','Other General Purpose Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33391','Pump and Compressor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333911','Pump and Pumping Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333912','Air and Gas Compressor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333913','Measuring and Dispensing Pump Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33392','Material Handling Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333921','Elevator and Moving Stairway Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333922','Conveyor and Conveying Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333923','Overhead Traveling Crane, Hoist, and Monorail System Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333924','Industrial Truck, Tractor, Trailer, and Stacker Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33399','All Other General Purpose Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333991','Power-Driven Handtool Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333992','Welding and Soldering Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333993','Packaging Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333994','Industrial Process Furnace and Oven Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333995','Fluid Power Cylinder and Actuator Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333996','Fluid Power Pump and Motor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333997','Scale and Balance (except Laboratory) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('333999','All Other Miscellaneous General Purpose Machinery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334','Computer and Electronic Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3341','Computer and Peripheral Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33411','Computer and Peripheral Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334111','Electronic Computer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334112','Computer Storage Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334113','Computer Terminal Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334119','Other Computer Peripheral Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3342','Communications Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33421','Telephone Apparatus Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334210','Telephone Apparatus Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33422','Radio and Television Broadcasting and Wireless Communications Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334220','Radio and Television Broadcasting and Wireless Communications Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33429','Other Communications Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334290','Other Communications Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3343','Audio and Video Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33431','Audio and Video Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334310','Audio and Video Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3344','Semiconductor and Other Electronic Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33441','Semiconductor and Other Electronic Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334411','Electron Tube Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334412','Bare Printed Circuit Board Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334413','Semiconductor and Related Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334414','Electronic Capacitor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334415','Electronic Resistor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334416','Electronic Coil, Transformer, and Other Inductor Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334417','Electronic Connector Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334418','Printed Circuit Assembly (Electronic Assembly) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334419','Other Electronic Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3345','Navigational, Measuring, Electromedical, and Control Instruments Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33451','Navigational, Measuring, Electromedical, and Control Instruments Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334510','Electromedical and Electrotherapeutic Apparatus Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334511','Search, Detection, Navigation, Guidance, Aeronautical, and Nautical System and Instrument Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334512','Automatic Environmental Control Manufacturing for Residential, Commercial, and Appliance Use');
-INSERT INTO sic (code,description) VALUES ('334513','Instruments and Related Products Manufacturing for Measuring, Displaying, and Controlling Industrial Process Variables');
-INSERT INTO sic (code,description) VALUES ('334514','Totalizing Fluid Meter and Counting Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334515','Instrument Manufacturing for Measuring and Testing Electricity and Electrical Signals');
-INSERT INTO sic (code,description) VALUES ('334516','Analytical Laboratory Instrument Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334517','Irradiation Apparatus Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334518','Watch, Clock, and Part Manufacturing');
-INSERT INTO sic (code,description) VALUES ('334519','Other Measuring and Controlling Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3346','Manufacturing and Reproducing Magnetic and Optical Media');
-INSERT INTO sic (code,description) VALUES ('33461','Manufacturing and Reproducing Magnetic and Optical Media');
-INSERT INTO sic (code,description) VALUES ('334611','Software Reproducing');
-INSERT INTO sic (code,description) VALUES ('334612','Prerecorded Compact Disc (except Software), Tape, and Record Reproducing');
-INSERT INTO sic (code,description) VALUES ('334613','Magnetic and Optical Recording Media Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335','Electrical Equipment, Appliance, and Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3351','Electric Lighting Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33511','Electric Lamp Bulb and Part Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335110','Electric Lamp Bulb and Part Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33512','Lighting Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335121','Residential Electric Lighting Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335122','Commercial, Industrial, and Institutional Electric Lighting Fixture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335129','Other Lighting Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3352','Household Appliance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33521','Small Electrical Appliance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335211','Electric Housewares and Household Fan Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335212','Household Vacuum Cleaner Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33522','Major Appliance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335221','Household Cooking Appliance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335222','Household Refrigerator and Home Freezer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335224','Household Laundry Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335228','Other Major Household Appliance Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3353','Electrical Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33531','Electrical Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335311','Power, Distribution, and Specialty Transformer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335312','Motor and Generator Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335313','Switchgear and Switchboard Apparatus Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335314','Relay and Industrial Control Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3359','Other Electrical Equipment and Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33591','Battery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335911','Storage Battery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335912','Primary Battery Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33592','Communication and Energy Wire and Cable Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335921','Fiber Optic Cable Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335929','Other Communication and Energy Wire Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33593','Wiring Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335931','Current-Carrying Wiring Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335932','Noncurrent-Carrying Wiring Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33599','All Other Electrical Equipment and Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335991','Carbon and Graphite Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('335999','All Other Miscellaneous Electrical Equipment and Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336','Transportation Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3361','Motor Vehicle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33611','Automobile and Light Duty Motor Vehicle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336111','Automobile Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336112','Light Truck and Utility Vehicle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33612','Heavy Duty Truck Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336120','Heavy Duty Truck Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3362','Motor Vehicle Body and Trailer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33621','Motor Vehicle Body and Trailer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336211','Motor Vehicle Body Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336212','Truck Trailer Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336213','Motor Home Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336214','Travel Trailer and Camper Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3363','Motor Vehicle Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33631','Motor Vehicle Gasoline Engine and Engine Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336311','Carburetor, Piston, Piston Ring, and Valve Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336312','Gasoline Engine and Engine Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33632','Motor Vehicle Electrical and Electronic Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336321','Vehicular Lighting Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336322','Other Motor Vehicle Electrical and Electronic Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33633','Motor Vehicle Steering and Suspension Components (except Spring) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336330','Motor Vehicle Steering and Suspension Components (except Spring) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33634','Motor Vehicle Brake System Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336340','Motor Vehicle Brake System Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33635','Motor Vehicle Transmission and Power Train Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336350','Motor Vehicle Transmission and Power Train Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33636','Motor Vehicle Seating and Interior Trim Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336360','Motor Vehicle Seating and Interior Trim Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33637','Motor Vehicle Metal Stamping');
-INSERT INTO sic (code,description) VALUES ('336370','Motor Vehicle Metal Stamping');
-INSERT INTO sic (code,description) VALUES ('33639','Other Motor Vehicle Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336391','Motor Vehicle Air-Conditioning Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336399','All Other Motor Vehicle Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3364','Aerospace Product and Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33641','Aerospace Product and Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336411','Aircraft Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336412','Aircraft Engine and Engine Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336413','Other Aircraft Parts and Auxiliary Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336414','Guided Missile and Space Vehicle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336415','Guided Missile and Space Vehicle Propulsion Unit and Propulsion Unit Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336419','Other Guided Missile and Space Vehicle Parts and Auxiliary Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3365','Railroad Rolling Stock Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33651','Railroad Rolling Stock Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336510','Railroad Rolling Stock Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3366','Ship and Boat Building');
-INSERT INTO sic (code,description) VALUES ('33661','Ship and Boat Building');
-INSERT INTO sic (code,description) VALUES ('336611','Ship Building and Repairing');
-INSERT INTO sic (code,description) VALUES ('336612','Boat Building');
-INSERT INTO sic (code,description) VALUES ('3369','Other Transportation Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33699','Other Transportation Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336991','Motorcycle, Bicycle, and Parts Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336992','Military Armored Vehicle, Tank, and Tank Component Manufacturing');
-INSERT INTO sic (code,description) VALUES ('336999','All Other Transportation Equipment Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337','Furniture and Related Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3371','Household and Institutional Furniture and Kitchen Cabinet Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33711','Wood Kitchen Cabinet and Countertop Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337110','Wood Kitchen Cabinet and Countertop Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33712','Household and Institutional Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337121','Upholstered Household Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337122','Nonupholstered Wood Household Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337124','Metal Household Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337125','Household Furniture (except Wood and Metal) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337127','Institutional Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337129','Wood Television, Radio, and Sewing Machine Cabinet Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3372','Office Furniture (including Fixtures) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33721','Office Furniture (including Fixtures) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337211','Wood Office Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337212','Custom Architectural Woodwork and Millwork Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337214','Office Furniture (except Wood) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337215','Showcase, Partition, Shelving, and Locker Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3379','Other Furniture Related Product Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33791','Mattress Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337910','Mattress Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33792','Blind and Shade Manufacturing');
-INSERT INTO sic (code,description) VALUES ('337920','Blind and Shade Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339','Miscellaneous Manufacturing');
-INSERT INTO sic (code,description) VALUES ('3391','Medical Equipment and Supplies Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33911','Medical Equipment and Supplies Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339111','Laboratory Apparatus and Furniture Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339112','Surgical and Medical Instrument Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339113','Surgical Appliance and Supplies Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339114','Dental Equipment and Supplies Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339115','Ophthalmic Goods Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339116','Dental Laboratories');
-INSERT INTO sic (code,description) VALUES ('3399','Other Miscellaneous Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33991','Jewelry and Silverware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339911','Jewelry (except Costume) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339912','Silverware and Hollowware Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339913','Jewelers\' Material and Lapidary Work Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339914','Costume Jewelry and Novelty Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33992','Sporting and Athletic Goods Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339920','Sporting and Athletic Goods Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33993','Doll, Toy, and Game Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339931','Doll and Stuffed Toy Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339932','Game, Toy, and Children\'s Vehicle Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33994','Office Supplies (except Paper) Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339941','Pen and Mechanical Pencil Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339942','Lead Pencil and Art Good Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339943','Marking Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339944','Carbon Paper and Inked Ribbon Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33995','Sign Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339950','Sign Manufacturing');
-INSERT INTO sic (code,description) VALUES ('33999','All Other Miscellaneous Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339991','Gasket, Packing, and Sealing Device Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339992','Musical Instrument Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339993','Fastener, Button, Needle, and Pin Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339994','Broom, Brush, and Mop Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339995','Burial Casket Manufacturing');
-INSERT INTO sic (code,description) VALUES ('339999','All Other Miscellaneous Manufacturing');
-INSERT INTO sic (code,description) VALUES ('42','Wholesale Trade');
-INSERT INTO sic (code,description) VALUES ('423','Merchant Wholesalers, Durable Goods');
-INSERT INTO sic (code,description) VALUES ('4231','Motor Vehicle and Motor Vehicle Parts and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42311','Automobile and Other Motor Vehicle Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423110','Automobile and Other Motor Vehicle Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42312','Motor Vehicle Supplies and New Parts Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423120','Motor Vehicle Supplies and New Parts Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42313','Tire and Tube Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423130','Tire and Tube Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42314','Motor Vehicle Parts (Used) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423140','Motor Vehicle Parts (Used) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4232','Furniture and Home Furnishing Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42321','Furniture Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423210','Furniture Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42322','Home Furnishing Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423220','Home Furnishing Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4233','Lumber and Other Construction Materials Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42331','Lumber, Plywood, Millwork, and Wood Panel Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423310','Lumber, Plywood, Millwork, and Wood Panel Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42332','Brick, Stone, and Related Construction Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423320','Brick, Stone, and Related Construction Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42333','Roofing, Siding, and Insulation Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423330','Roofing, Siding, and Insulation Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42339','Other Construction Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423390','Other Construction Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4234','Professional and Commercial Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42341','Photographic Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423410','Photographic Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42342','Office Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423420','Office Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42343','Computer and Computer Peripheral Equipment and Software Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423430','Computer and Computer Peripheral Equipment and Software Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42344','Other Commercial Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423440','Other Commercial Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42345','Medical, Dental, and Hospital Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423450','Medical, Dental, and Hospital Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42346','Ophthalmic Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423460','Ophthalmic Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42349','Other Professional Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423490','Other Professional Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4235','Metal and Mineral (except Petroleum) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42351','Metal Service Centers and Other Metal Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423510','Metal Service Centers and Other Metal Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42352','Coal and Other Mineral and Ore Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423520','Coal and Other Mineral and Ore Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4236','Electrical and Electronic Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42361','Electrical Apparatus and Equipment, Wiring Supplies, and Related Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423610','Electrical Apparatus and Equipment, Wiring Supplies, and Related Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42362','Electrical and Electronic Appliance, Television, and Radio Set Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423620','Electrical and Electronic Appliance, Television, and Radio Set Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42369','Other Electronic Parts and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423690','Other Electronic Parts and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4237','Hardware, and Plumbing and Heating Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42371','Hardware Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423710','Hardware Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42372','Plumbing and Heating Equipment and Supplies (Hydronics) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423720','Plumbing and Heating Equipment and Supplies (Hydronics) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42373','Warm Air Heating and Air-Conditioning Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423730','Warm Air Heating and Air-Conditioning Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42374','Refrigeration Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423740','Refrigeration Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4238','Machinery, Equipment, and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42381','Construction and Mining (except Oil Well) Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423810','Construction and Mining (except Oil Well) Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42382','Farm and Garden Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423820','Farm and Garden Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42383','Industrial Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423830','Industrial Machinery and Equipment Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42384','Industrial Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423840','Industrial Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42385','Service Establishment Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423850','Service Establishment Equipment and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42386','Transportation Equipment and Supplies (except Motor Vehicle) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423860','Transportation Equipment and Supplies (except Motor Vehicle) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4239','Miscellaneous Durable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42391','Sporting and Recreational Goods and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423910','Sporting and Recreational Goods and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42392','Toy and Hobby Goods and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423920','Toy and Hobby Goods and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42393','Recyclable Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423930','Recyclable Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42394','Jewelry, Watch, Precious Stone, and Precious Metal Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423940','Jewelry, Watch, Precious Stone, and Precious Metal Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42399','Other Miscellaneous Durable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('423990','Other Miscellaneous Durable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424','Merchant Wholesalers, Nondurable Goods');
-INSERT INTO sic (code,description) VALUES ('4241','Paper and Paper Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42411','Printing and Writing Paper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424110','Printing and Writing Paper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42412','Stationery and Office Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424120','Stationery and Office Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42413','Industrial and Personal Service Paper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424130','Industrial and Personal Service Paper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4242','Drugs and Druggists\' Sundries Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42421','Drugs and Druggists\' Sundries Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424210','Drugs and Druggists\' Sundries Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4243','Apparel, Piece Goods, and Notions Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42431','Piece Goods, Notions, and Other Dry Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424310','Piece Goods, Notions, and Other Dry Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42432','Men\'s and Boys\' Clothing and Furnishings Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424320','Men\'s and Boys\' Clothing and Furnishings Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42433','Women\'s, Children\'s, and Infants\' Clothing and Accessories Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424330','Women\'s, Children\'s, and Infants\' Clothing and Accessories Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42434','Footwear Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424340','Footwear Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4244','Grocery and Related Product Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42441','General Line Grocery Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424410','General Line Grocery Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42442','Packaged Frozen Food Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424420','Packaged Frozen Food Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42443','Dairy Product (except Dried or Canned) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424430','Dairy Product (except Dried or Canned) Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42444','Poultry and Poultry Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424440','Poultry and Poultry Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42445','Confectionery Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424450','Confectionery Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42446','Fish and Seafood Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424460','Fish and Seafood Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42447','Meat and Meat Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424470','Meat and Meat Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42448','Fresh Fruit and Vegetable Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424480','Fresh Fruit and Vegetable Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42449','Other Grocery and Related Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424490','Other Grocery and Related Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4245','Farm Product Raw Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42451','Grain and Field Bean Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424510','Grain and Field Bean Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42452','Livestock Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424520','Livestock Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42459','Other Farm Product Raw Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424590','Other Farm Product Raw Material Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4246','Chemical and Allied Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42461','Plastics Materials and Basic Forms and Shapes Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424610','Plastics Materials and Basic Forms and Shapes Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42469','Other Chemical and Allied Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424690','Other Chemical and Allied Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4247','Petroleum and Petroleum Products Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42471','Petroleum Bulk Stations and Terminals');
-INSERT INTO sic (code,description) VALUES ('424710','Petroleum Bulk Stations and Terminals');
-INSERT INTO sic (code,description) VALUES ('42472','Petroleum and Petroleum Products Merchant Wholesalers (except Bulk Stations and Terminals)');
-INSERT INTO sic (code,description) VALUES ('424720','Petroleum and Petroleum Products Merchant Wholesalers (except Bulk Stations and Terminals)');
-INSERT INTO sic (code,description) VALUES ('4248','Beer, Wine, and Distilled Alcoholic Beverage Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42481','Beer and Ale Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424810','Beer and Ale Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42482','Wine and Distilled Alcoholic Beverage Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424820','Wine and Distilled Alcoholic Beverage Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('4249','Miscellaneous Nondurable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42491','Farm Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424910','Farm Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42492','Book, Periodical, and Newspaper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424920','Book, Periodical, and Newspaper Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42493','Flower, Nursery Stock, and Florists\' Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424930','Flower, Nursery Stock, and Florists\' Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42494','Tobacco and Tobacco Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424940','Tobacco and Tobacco Product Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42495','Paint, Varnish, and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424950','Paint, Varnish, and Supplies Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('42499','Other Miscellaneous Nondurable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('424990','Other Miscellaneous Nondurable Goods Merchant Wholesalers');
-INSERT INTO sic (code,description) VALUES ('425','Wholesale Electronic Markets and Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('4251','Wholesale Electronic Markets and Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('42511','Business to Business Electronic Markets');
-INSERT INTO sic (code,description) VALUES ('425110','Business to Business Electronic Markets');
-INSERT INTO sic (code,description) VALUES ('42512','Wholesale Trade Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('425120','Wholesale Trade Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('44-45','Retail Trade');
-INSERT INTO sic (code,description) VALUES ('441','Motor Vehicle and Parts Dealers');
-INSERT INTO sic (code,description) VALUES ('4411','Automobile Dealers');
-INSERT INTO sic (code,description) VALUES ('44111','New Car Dealers');
-INSERT INTO sic (code,description) VALUES ('441110','New Car Dealers');
-INSERT INTO sic (code,description) VALUES ('44112','Used Car Dealers');
-INSERT INTO sic (code,description) VALUES ('441120','Used Car Dealers');
-INSERT INTO sic (code,description) VALUES ('4412','Other Motor Vehicle Dealers');
-INSERT INTO sic (code,description) VALUES ('44121','Recreational Vehicle Dealers');
-INSERT INTO sic (code,description) VALUES ('441210','Recreational Vehicle Dealers');
-INSERT INTO sic (code,description) VALUES ('44122','Motorcycle, Boat, and Other Motor Vehicle Dealers');
-INSERT INTO sic (code,description) VALUES ('441221','Motorcycle Dealers');
-INSERT INTO sic (code,description) VALUES ('441222','Boat Dealers');
-INSERT INTO sic (code,description) VALUES ('441229','All Other Motor Vehicle Dealers');
-INSERT INTO sic (code,description) VALUES ('4413','Automotive Parts, Accessories, and Tire Stores');
-INSERT INTO sic (code,description) VALUES ('44131','Automotive Parts and Accessories Stores');
-INSERT INTO sic (code,description) VALUES ('441310','Automotive Parts and Accessories Stores');
-INSERT INTO sic (code,description) VALUES ('44132','Tire Dealers');
-INSERT INTO sic (code,description) VALUES ('441320','Tire Dealers');
-INSERT INTO sic (code,description) VALUES ('442','Furniture and Home Furnishings Stores');
-INSERT INTO sic (code,description) VALUES ('4421','Furniture Stores');
-INSERT INTO sic (code,description) VALUES ('44211','Furniture Stores');
-INSERT INTO sic (code,description) VALUES ('442110','Furniture Stores');
-INSERT INTO sic (code,description) VALUES ('4422','Home Furnishings Stores');
-INSERT INTO sic (code,description) VALUES ('44221','Floor Covering Stores');
-INSERT INTO sic (code,description) VALUES ('442210','Floor Covering Stores');
-INSERT INTO sic (code,description) VALUES ('44229','Other Home Furnishings Stores');
-INSERT INTO sic (code,description) VALUES ('442291','Window Treatment Stores');
-INSERT INTO sic (code,description) VALUES ('442299','All Other Home Furnishings Stores');
-INSERT INTO sic (code,description) VALUES ('443','Electronics and Appliance Stores');
-INSERT INTO sic (code,description) VALUES ('4431','Electronics and Appliance Stores');
-INSERT INTO sic (code,description) VALUES ('44311','Appliance, Television, and Other Electronics Stores');
-INSERT INTO sic (code,description) VALUES ('443111','Household Appliance Stores');
-INSERT INTO sic (code,description) VALUES ('443112','Radio, Television, and Other Electronics Stores');
-INSERT INTO sic (code,description) VALUES ('44312','Computer and Software Stores');
-INSERT INTO sic (code,description) VALUES ('443120','Computer and Software Stores');
-INSERT INTO sic (code,description) VALUES ('44313','Camera and Photographic Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('443130','Camera and Photographic Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('444','Building Material and Garden Equipment and Supplies Dealers');
-INSERT INTO sic (code,description) VALUES ('4441','Building Material and Supplies Dealers');
-INSERT INTO sic (code,description) VALUES ('44411','Home Centers');
-INSERT INTO sic (code,description) VALUES ('444110','Home Centers');
-INSERT INTO sic (code,description) VALUES ('44412','Paint and Wallpaper Stores');
-INSERT INTO sic (code,description) VALUES ('444120','Paint and Wallpaper Stores');
-INSERT INTO sic (code,description) VALUES ('44413','Hardware Stores');
-INSERT INTO sic (code,description) VALUES ('444130','Hardware Stores');
-INSERT INTO sic (code,description) VALUES ('44419','Other Building Material Dealers');
-INSERT INTO sic (code,description) VALUES ('444190','Other Building Material Dealers');
-INSERT INTO sic (code,description) VALUES ('4442','Lawn and Garden Equipment and Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('44421','Outdoor Power Equipment Stores');
-INSERT INTO sic (code,description) VALUES ('444210','Outdoor Power Equipment Stores');
-INSERT INTO sic (code,description) VALUES ('44422','Nursery, Garden Center, and Farm Supply Stores');
-INSERT INTO sic (code,description) VALUES ('444220','Nursery, Garden Center, and Farm Supply Stores');
-INSERT INTO sic (code,description) VALUES ('445','Food and Beverage Stores');
-INSERT INTO sic (code,description) VALUES ('4451','Grocery Stores');
-INSERT INTO sic (code,description) VALUES ('44511','Supermarkets and Other Grocery (except Convenience) Stores');
-INSERT INTO sic (code,description) VALUES ('445110','Supermarkets and Other Grocery (except Convenience) Stores');
-INSERT INTO sic (code,description) VALUES ('44512','Convenience Stores');
-INSERT INTO sic (code,description) VALUES ('445120','Convenience Stores');
-INSERT INTO sic (code,description) VALUES ('4452','Specialty Food Stores');
-INSERT INTO sic (code,description) VALUES ('44521','Meat Markets');
-INSERT INTO sic (code,description) VALUES ('445210','Meat Markets');
-INSERT INTO sic (code,description) VALUES ('44522','Fish and Seafood Markets');
-INSERT INTO sic (code,description) VALUES ('445220','Fish and Seafood Markets');
-INSERT INTO sic (code,description) VALUES ('44523','Fruit and Vegetable Markets');
-INSERT INTO sic (code,description) VALUES ('445230','Fruit and Vegetable Markets');
-INSERT INTO sic (code,description) VALUES ('44529','Other Specialty Food Stores');
-INSERT INTO sic (code,description) VALUES ('445291','Baked Goods Stores');
-INSERT INTO sic (code,description) VALUES ('445292','Confectionery and Nut Stores');
-INSERT INTO sic (code,description) VALUES ('445299','All Other Specialty Food Stores');
-INSERT INTO sic (code,description) VALUES ('4453','Beer, Wine, and Liquor Stores');
-INSERT INTO sic (code,description) VALUES ('44531','Beer, Wine, and Liquor Stores');
-INSERT INTO sic (code,description) VALUES ('445310','Beer, Wine, and Liquor Stores');
-INSERT INTO sic (code,description) VALUES ('446','Health and Personal Care Stores');
-INSERT INTO sic (code,description) VALUES ('4461','Health and Personal Care Stores');
-INSERT INTO sic (code,description) VALUES ('44611','Pharmacies and Drug Stores');
-INSERT INTO sic (code,description) VALUES ('446110','Pharmacies and Drug Stores');
-INSERT INTO sic (code,description) VALUES ('44612','Cosmetics, Beauty Supplies, and Perfume Stores');
-INSERT INTO sic (code,description) VALUES ('446120','Cosmetics, Beauty Supplies, and Perfume Stores');
-INSERT INTO sic (code,description) VALUES ('44613','Optical Goods Stores');
-INSERT INTO sic (code,description) VALUES ('446130','Optical Goods Stores');
-INSERT INTO sic (code,description) VALUES ('44619','Other Health and Personal Care Stores');
-INSERT INTO sic (code,description) VALUES ('446191','Food (Health) Supplement Stores');
-INSERT INTO sic (code,description) VALUES ('446199','All Other Health and Personal Care Stores');
-INSERT INTO sic (code,description) VALUES ('447','Gasoline Stations');
-INSERT INTO sic (code,description) VALUES ('4471','Gasoline Stations');
-INSERT INTO sic (code,description) VALUES ('44711','Gasoline Stations with Convenience Stores');
-INSERT INTO sic (code,description) VALUES ('447110','Gasoline Stations with Convenience Stores');
-INSERT INTO sic (code,description) VALUES ('44719','Other Gasoline Stations');
-INSERT INTO sic (code,description) VALUES ('447190','Other Gasoline Stations');
-INSERT INTO sic (code,description) VALUES ('448','Clothing and Clothing Accessories Stores');
-INSERT INTO sic (code,description) VALUES ('4481','Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('44811','Men\'s Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('448110','Men\'s Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('44812','Women\'s Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('448120','Women\'s Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('44813','Children\'s and Infants\' Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('448130','Children\'s and Infants\' Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('44814','Family Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('448140','Family Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('44815','Clothing Accessories Stores');
-INSERT INTO sic (code,description) VALUES ('448150','Clothing Accessories Stores');
-INSERT INTO sic (code,description) VALUES ('44819','Other Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('448190','Other Clothing Stores');
-INSERT INTO sic (code,description) VALUES ('4482','Shoe Stores');
-INSERT INTO sic (code,description) VALUES ('44821','Shoe Stores');
-INSERT INTO sic (code,description) VALUES ('448210','Shoe Stores');
-INSERT INTO sic (code,description) VALUES ('4483','Jewelry, Luggage, and Leather Goods Stores');
-INSERT INTO sic (code,description) VALUES ('44831','Jewelry Stores');
-INSERT INTO sic (code,description) VALUES ('448310','Jewelry Stores');
-INSERT INTO sic (code,description) VALUES ('44832','Luggage and Leather Goods Stores');
-INSERT INTO sic (code,description) VALUES ('448320','Luggage and Leather Goods Stores');
-INSERT INTO sic (code,description) VALUES ('451','Sporting Goods, Hobby, Book, and Music Stores');
-INSERT INTO sic (code,description) VALUES ('4511','Sporting Goods, Hobby, and Musical Instrument Stores');
-INSERT INTO sic (code,description) VALUES ('45111','Sporting Goods Stores');
-INSERT INTO sic (code,description) VALUES ('451110','Sporting Goods Stores');
-INSERT INTO sic (code,description) VALUES ('45112','Hobby, Toy, and Game Stores');
-INSERT INTO sic (code,description) VALUES ('451120','Hobby, Toy, and Game Stores');
-INSERT INTO sic (code,description) VALUES ('45113','Sewing, Needlework, and Piece Goods Stores');
-INSERT INTO sic (code,description) VALUES ('451130','Sewing, Needlework, and Piece Goods Stores');
-INSERT INTO sic (code,description) VALUES ('45114','Musical Instrument and Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('451140','Musical Instrument and Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('4512','Book, Periodical, and Music Stores');
-INSERT INTO sic (code,description) VALUES ('45121','Book Stores and News Dealers');
-INSERT INTO sic (code,description) VALUES ('451211','Book Stores');
-INSERT INTO sic (code,description) VALUES ('451212','News Dealers and Newsstands');
-INSERT INTO sic (code,description) VALUES ('45122','Prerecorded Tape, Compact Disc, and Record Stores');
-INSERT INTO sic (code,description) VALUES ('451220','Prerecorded Tape, Compact Disc, and Record Stores');
-INSERT INTO sic (code,description) VALUES ('452','General Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('4521','Department Stores');
-INSERT INTO sic (code,description) VALUES ('45211','Department Stores');
-INSERT INTO sic (code,description) VALUES ('452111','Department Stores (except Discount Department Stores)');
-INSERT INTO sic (code,description) VALUES ('452112','Discount Department Stores');
-INSERT INTO sic (code,description) VALUES ('4529','Other General Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('45291','Warehouse Clubs and Supercenters');
-INSERT INTO sic (code,description) VALUES ('452910','Warehouse Clubs and Supercenters');
-INSERT INTO sic (code,description) VALUES ('45299','All Other General Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('452990','All Other General Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('453','Miscellaneous Store Retailers');
-INSERT INTO sic (code,description) VALUES ('4531','Florists');
-INSERT INTO sic (code,description) VALUES ('45311','Florists');
-INSERT INTO sic (code,description) VALUES ('453110','Florists');
-INSERT INTO sic (code,description) VALUES ('4532','Office Supplies, Stationery, and Gift Stores');
-INSERT INTO sic (code,description) VALUES ('45321','Office Supplies and Stationery Stores');
-INSERT INTO sic (code,description) VALUES ('453210','Office Supplies and Stationery Stores');
-INSERT INTO sic (code,description) VALUES ('45322','Gift, Novelty, and Souvenir Stores');
-INSERT INTO sic (code,description) VALUES ('453220','Gift, Novelty, and Souvenir Stores');
-INSERT INTO sic (code,description) VALUES ('4533','Used Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('45331','Used Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('453310','Used Merchandise Stores');
-INSERT INTO sic (code,description) VALUES ('4539','Other Miscellaneous Store Retailers');
-INSERT INTO sic (code,description) VALUES ('45391','Pet and Pet Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('453910','Pet and Pet Supplies Stores');
-INSERT INTO sic (code,description) VALUES ('45392','Art Dealers');
-INSERT INTO sic (code,description) VALUES ('453920','Art Dealers');
-INSERT INTO sic (code,description) VALUES ('45393','Manufactured (Mobile) Home Dealers');
-INSERT INTO sic (code,description) VALUES ('453930','Manufactured (Mobile) Home Dealers');
-INSERT INTO sic (code,description) VALUES ('45399','All Other Miscellaneous Store Retailers');
-INSERT INTO sic (code,description) VALUES ('453991','Tobacco Stores');
-INSERT INTO sic (code,description) VALUES ('453998','All Other Miscellaneous Store Retailers (except Tobacco Stores)');
-INSERT INTO sic (code,description) VALUES ('454','Nonstore Retailers');
-INSERT INTO sic (code,description) VALUES ('4541','Electronic Shopping and Mail-Order Houses');
-INSERT INTO sic (code,description) VALUES ('45411','Electronic Shopping and Mail-Order Houses');
-INSERT INTO sic (code,description) VALUES ('454111','Electronic Shopping');
-INSERT INTO sic (code,description) VALUES ('454112','Electronic Auctions');
-INSERT INTO sic (code,description) VALUES ('454113','Mail-Order Houses');
-INSERT INTO sic (code,description) VALUES ('4542','Vending Machine Operators');
-INSERT INTO sic (code,description) VALUES ('45421','Vending Machine Operators');
-INSERT INTO sic (code,description) VALUES ('454210','Vending Machine Operators');
-INSERT INTO sic (code,description) VALUES ('4543','Direct Selling Establishments');
-INSERT INTO sic (code,description) VALUES ('45431','Fuel Dealers');
-INSERT INTO sic (code,description) VALUES ('454311','Heating Oil Dealers');
-INSERT INTO sic (code,description) VALUES ('454312','Liquefied Petroleum Gas (Bottled Gas) Dealers');
-INSERT INTO sic (code,description) VALUES ('454319','Other Fuel Dealers');
-INSERT INTO sic (code,description) VALUES ('45439','Other Direct Selling Establishments');
-INSERT INTO sic (code,description) VALUES ('454390','Other Direct Selling Establishments');
-INSERT INTO sic (code,description) VALUES ('48-49','Transportation and Warehousing');
-INSERT INTO sic (code,description) VALUES ('481','Air Transportation');
-INSERT INTO sic (code,description) VALUES ('4811','Scheduled Air Transportation');
-INSERT INTO sic (code,description) VALUES ('48111','Scheduled Air Transportation');
-INSERT INTO sic (code,description) VALUES ('481111','Scheduled Passenger Air Transportation');
-INSERT INTO sic (code,description) VALUES ('481112','Scheduled Freight Air Transportation');
-INSERT INTO sic (code,description) VALUES ('4812','Nonscheduled Air Transportation');
-INSERT INTO sic (code,description) VALUES ('48121','Nonscheduled Air Transportation');
-INSERT INTO sic (code,description) VALUES ('481211','Nonscheduled Chartered Passenger Air Transportation');
-INSERT INTO sic (code,description) VALUES ('481212','Nonscheduled Chartered Freight Air Transportation');
-INSERT INTO sic (code,description) VALUES ('481219','Other Nonscheduled Air Transportation');
-INSERT INTO sic (code,description) VALUES ('482','Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('4821','Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('48211','Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('482111','Line-Haul Railroads');
-INSERT INTO sic (code,description) VALUES ('482112','Short Line Railroads');
-INSERT INTO sic (code,description) VALUES ('483','Water Transportation');
-INSERT INTO sic (code,description) VALUES ('4831','Deep Sea, Coastal, and Great Lakes Water Transportation');
-INSERT INTO sic (code,description) VALUES ('48311','Deep Sea, Coastal, and Great Lakes Water Transportation');
-INSERT INTO sic (code,description) VALUES ('483111','Deep Sea Freight Transportation');
-INSERT INTO sic (code,description) VALUES ('483112','Deep Sea Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('483113','Coastal and Great Lakes Freight Transportation');
-INSERT INTO sic (code,description) VALUES ('483114','Coastal and Great Lakes Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('4832','Inland Water Transportation');
-INSERT INTO sic (code,description) VALUES ('48321','Inland Water Transportation');
-INSERT INTO sic (code,description) VALUES ('483211','Inland Water Freight Transportation');
-INSERT INTO sic (code,description) VALUES ('483212','Inland Water Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('484','Truck Transportation');
-INSERT INTO sic (code,description) VALUES ('4841','General Freight Trucking');
-INSERT INTO sic (code,description) VALUES ('48411','General Freight Trucking, Local');
-INSERT INTO sic (code,description) VALUES ('484110','General Freight Trucking, Local');
-INSERT INTO sic (code,description) VALUES ('48412','General Freight Trucking, Long-Distance');
-INSERT INTO sic (code,description) VALUES ('484121','General Freight Trucking, Long-Distance, Truckload');
-INSERT INTO sic (code,description) VALUES ('484122','General Freight Trucking, Long-Distance, Less Than Truckload');
-INSERT INTO sic (code,description) VALUES ('4842','Specialized Freight Trucking');
-INSERT INTO sic (code,description) VALUES ('48421','Used Household and Office Goods Moving');
-INSERT INTO sic (code,description) VALUES ('484210','Used Household and Office Goods Moving');
-INSERT INTO sic (code,description) VALUES ('48422','Specialized Freight (except Used Goods) Trucking, Local');
-INSERT INTO sic (code,description) VALUES ('484220','Specialized Freight (except Used Goods) Trucking, Local');
-INSERT INTO sic (code,description) VALUES ('48423','Specialized Freight (except Used Goods) Trucking, Long-Distance');
-INSERT INTO sic (code,description) VALUES ('484230','Specialized Freight (except Used Goods) Trucking, Long-Distance');
-INSERT INTO sic (code,description) VALUES ('485','Transit and Ground Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('4851','Urban Transit Systems');
-INSERT INTO sic (code,description) VALUES ('48511','Urban Transit Systems');
-INSERT INTO sic (code,description) VALUES ('485111','Mixed Mode Transit Systems');
-INSERT INTO sic (code,description) VALUES ('485112','Commuter Rail Systems');
-INSERT INTO sic (code,description) VALUES ('485113','Bus and Other Motor Vehicle Transit Systems');
-INSERT INTO sic (code,description) VALUES ('485119','Other Urban Transit Systems');
-INSERT INTO sic (code,description) VALUES ('4852','Interurban and Rural Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('48521','Interurban and Rural Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('485210','Interurban and Rural Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('4853','Taxi and Limousine Service');
-INSERT INTO sic (code,description) VALUES ('48531','Taxi Service');
-INSERT INTO sic (code,description) VALUES ('485310','Taxi Service');
-INSERT INTO sic (code,description) VALUES ('48532','Limousine Service');
-INSERT INTO sic (code,description) VALUES ('485320','Limousine Service');
-INSERT INTO sic (code,description) VALUES ('4854','School and Employee Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('48541','School and Employee Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('485410','School and Employee Bus Transportation');
-INSERT INTO sic (code,description) VALUES ('4855','Charter Bus Industry');
-INSERT INTO sic (code,description) VALUES ('48551','Charter Bus Industry');
-INSERT INTO sic (code,description) VALUES ('485510','Charter Bus Industry');
-INSERT INTO sic (code,description) VALUES ('4859','Other Transit and Ground Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('48599','Other Transit and Ground Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('485991','Special Needs Transportation');
-INSERT INTO sic (code,description) VALUES ('485999','All Other Transit and Ground Passenger Transportation');
-INSERT INTO sic (code,description) VALUES ('486','Pipeline Transportation');
-INSERT INTO sic (code,description) VALUES ('4861','Pipeline Transportation of Crude Oil');
-INSERT INTO sic (code,description) VALUES ('48611','Pipeline Transportation of Crude Oil');
-INSERT INTO sic (code,description) VALUES ('486110','Pipeline Transportation of Crude Oil');
-INSERT INTO sic (code,description) VALUES ('4862','Pipeline Transportation of Natural Gas');
-INSERT INTO sic (code,description) VALUES ('48621','Pipeline Transportation of Natural Gas');
-INSERT INTO sic (code,description) VALUES ('486210','Pipeline Transportation of Natural Gas');
-INSERT INTO sic (code,description) VALUES ('4869','Other Pipeline Transportation');
-INSERT INTO sic (code,description) VALUES ('48691','Pipeline Transportation of Refined Petroleum Products');
-INSERT INTO sic (code,description) VALUES ('486910','Pipeline Transportation of Refined Petroleum Products');
-INSERT INTO sic (code,description) VALUES ('48699','All Other Pipeline Transportation');
-INSERT INTO sic (code,description) VALUES ('486990','All Other Pipeline Transportation');
-INSERT INTO sic (code,description) VALUES ('487','Scenic and Sightseeing Transportation');
-INSERT INTO sic (code,description) VALUES ('4871','Scenic and Sightseeing Transportation, Land');
-INSERT INTO sic (code,description) VALUES ('48711','Scenic and Sightseeing Transportation, Land');
-INSERT INTO sic (code,description) VALUES ('487110','Scenic and Sightseeing Transportation, Land');
-INSERT INTO sic (code,description) VALUES ('4872','Scenic and Sightseeing Transportation, Water');
-INSERT INTO sic (code,description) VALUES ('48721','Scenic and Sightseeing Transportation, Water');
-INSERT INTO sic (code,description) VALUES ('487210','Scenic and Sightseeing Transportation, Water');
-INSERT INTO sic (code,description) VALUES ('4879','Scenic and Sightseeing Transportation, Other');
-INSERT INTO sic (code,description) VALUES ('48799','Scenic and Sightseeing Transportation, Other');
-INSERT INTO sic (code,description) VALUES ('487990','Scenic and Sightseeing Transportation, Other');
-INSERT INTO sic (code,description) VALUES ('488','Support Activities for Transportation');
-INSERT INTO sic (code,description) VALUES ('4881','Support Activities for Air Transportation');
-INSERT INTO sic (code,description) VALUES ('48811','Airport Operations');
-INSERT INTO sic (code,description) VALUES ('488111','Air Traffic Control');
-INSERT INTO sic (code,description) VALUES ('488119','Other Airport Operations');
-INSERT INTO sic (code,description) VALUES ('48819','Other Support Activities for Air Transportation');
-INSERT INTO sic (code,description) VALUES ('488190','Other Support Activities for Air Transportation');
-INSERT INTO sic (code,description) VALUES ('4882','Support Activities for Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('48821','Support Activities for Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('488210','Support Activities for Rail Transportation');
-INSERT INTO sic (code,description) VALUES ('4883','Support Activities for Water Transportation');
-INSERT INTO sic (code,description) VALUES ('48831','Port and Harbor Operations');
-INSERT INTO sic (code,description) VALUES ('488310','Port and Harbor Operations');
-INSERT INTO sic (code,description) VALUES ('48832','Marine Cargo Handling');
-INSERT INTO sic (code,description) VALUES ('488320','Marine Cargo Handling');
-INSERT INTO sic (code,description) VALUES ('48833','Navigational Services to Shipping');
-INSERT INTO sic (code,description) VALUES ('488330','Navigational Services to Shipping');
-INSERT INTO sic (code,description) VALUES ('48839','Other Support Activities for Water Transportation');
-INSERT INTO sic (code,description) VALUES ('488390','Other Support Activities for Water Transportation');
-INSERT INTO sic (code,description) VALUES ('4884','Support Activities for Road Transportation');
-INSERT INTO sic (code,description) VALUES ('48841','Motor Vehicle Towing');
-INSERT INTO sic (code,description) VALUES ('488410','Motor Vehicle Towing');
-INSERT INTO sic (code,description) VALUES ('48849','Other Support Activities for Road Transportation');
-INSERT INTO sic (code,description) VALUES ('488490','Other Support Activities for Road Transportation');
-INSERT INTO sic (code,description) VALUES ('4885','Freight Transportation Arrangement');
-INSERT INTO sic (code,description) VALUES ('48851','Freight Transportation Arrangement');
-INSERT INTO sic (code,description) VALUES ('488510','Freight Transportation Arrangement');
-INSERT INTO sic (code,description) VALUES ('4889','Other Support Activities for Transportation');
-INSERT INTO sic (code,description) VALUES ('48899','Other Support Activities for Transportation');
-INSERT INTO sic (code,description) VALUES ('488991','Packing and Crating');
-INSERT INTO sic (code,description) VALUES ('488999','All Other Support Activities for Transportation');
-INSERT INTO sic (code,description) VALUES ('491','Postal Service');
-INSERT INTO sic (code,description) VALUES ('4911','Postal Service');
-INSERT INTO sic (code,description) VALUES ('49111','Postal Service');
-INSERT INTO sic (code,description) VALUES ('491110','Postal Service');
-INSERT INTO sic (code,description) VALUES ('492','Couriers and Messengers');
-INSERT INTO sic (code,description) VALUES ('4921','Couriers');
-INSERT INTO sic (code,description) VALUES ('49211','Couriers');
-INSERT INTO sic (code,description) VALUES ('492110','Couriers');
-INSERT INTO sic (code,description) VALUES ('4922','Local Messengers and Local Delivery');
-INSERT INTO sic (code,description) VALUES ('49221','Local Messengers and Local Delivery');
-INSERT INTO sic (code,description) VALUES ('492210','Local Messengers and Local Delivery');
-INSERT INTO sic (code,description) VALUES ('493','Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('4931','Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('49311','General Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('493110','General Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('49312','Refrigerated Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('493120','Refrigerated Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('49313','Farm Product Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('493130','Farm Product Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('49319','Other Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('493190','Other Warehousing and Storage');
-INSERT INTO sic (code,description) VALUES ('51','Information');
-INSERT INTO sic (code,description) VALUES ('511','Publishing Industries (except Internet)');
-INSERT INTO sic (code,description) VALUES ('5111','Newspaper, Periodical, Book, and Directory Publishers');
-INSERT INTO sic (code,description) VALUES ('51111','Newspaper Publishers');
-INSERT INTO sic (code,description) VALUES ('511110','Newspaper Publishers');
-INSERT INTO sic (code,description) VALUES ('51112','Periodical Publishers');
-INSERT INTO sic (code,description) VALUES ('511120','Periodical Publishers');
-INSERT INTO sic (code,description) VALUES ('51113','Book Publishers');
-INSERT INTO sic (code,description) VALUES ('511130','Book Publishers');
-INSERT INTO sic (code,description) VALUES ('51114','Directory and Mailing List Publishers');
-INSERT INTO sic (code,description) VALUES ('511140','Directory and Mailing List Publishers');
-INSERT INTO sic (code,description) VALUES ('51119','Other Publishers');
-INSERT INTO sic (code,description) VALUES ('511191','Greeting Card Publishers');
-INSERT INTO sic (code,description) VALUES ('511199','All Other Publishers');
-INSERT INTO sic (code,description) VALUES ('5112','Software Publishers');
-INSERT INTO sic (code,description) VALUES ('51121','Software Publishers');
-INSERT INTO sic (code,description) VALUES ('511210','Software Publishers');
-INSERT INTO sic (code,description) VALUES ('512','Motion Picture and Sound Recording Industries');
-INSERT INTO sic (code,description) VALUES ('5121','Motion Picture and Video Industries');
-INSERT INTO sic (code,description) VALUES ('51211','Motion Picture and Video Production');
-INSERT INTO sic (code,description) VALUES ('512110','Motion Picture and Video Production');
-INSERT INTO sic (code,description) VALUES ('51212','Motion Picture and Video Distribution');
-INSERT INTO sic (code,description) VALUES ('512120','Motion Picture and Video Distribution');
-INSERT INTO sic (code,description) VALUES ('51213','Motion Picture and Video Exhibition');
-INSERT INTO sic (code,description) VALUES ('512131','Motion Picture Theaters (except Drive-Ins)');
-INSERT INTO sic (code,description) VALUES ('512132','Drive-In Motion Picture Theaters');
-INSERT INTO sic (code,description) VALUES ('51219','Postproduction Services and Other Motion Picture and Video Industries');
-INSERT INTO sic (code,description) VALUES ('512191','Teleproduction and Other Postproduction Services');
-INSERT INTO sic (code,description) VALUES ('512199','Other Motion Picture and Video Industries');
-INSERT INTO sic (code,description) VALUES ('5122','Sound Recording Industries');
-INSERT INTO sic (code,description) VALUES ('51221','Record Production');
-INSERT INTO sic (code,description) VALUES ('512210','Record Production');
-INSERT INTO sic (code,description) VALUES ('51222','Integrated Record Production/Distribution');
-INSERT INTO sic (code,description) VALUES ('512220','Integrated Record Production/Distribution');
-INSERT INTO sic (code,description) VALUES ('51223','Music Publishers');
-INSERT INTO sic (code,description) VALUES ('512230','Music Publishers');
-INSERT INTO sic (code,description) VALUES ('51224','Sound Recording Studios');
-INSERT INTO sic (code,description) VALUES ('512240','Sound Recording Studios');
-INSERT INTO sic (code,description) VALUES ('51229','Other Sound Recording Industries');
-INSERT INTO sic (code,description) VALUES ('512290','Other Sound Recording Industries');
-INSERT INTO sic (code,description) VALUES ('515','Broadcasting (except Internet)');
-INSERT INTO sic (code,description) VALUES ('5151','Radio and Television Broadcasting');
-INSERT INTO sic (code,description) VALUES ('51511','Radio Broadcasting');
-INSERT INTO sic (code,description) VALUES ('515111','Radio Networks');
-INSERT INTO sic (code,description) VALUES ('515112','Radio Stations');
-INSERT INTO sic (code,description) VALUES ('51512','Television Broadcasting');
-INSERT INTO sic (code,description) VALUES ('515120','Television Broadcasting');
-INSERT INTO sic (code,description) VALUES ('5152','Cable and Other Subscription Programming');
-INSERT INTO sic (code,description) VALUES ('51521','Cable and Other Subscription Programming');
-INSERT INTO sic (code,description) VALUES ('515210','Cable and Other Subscription Programming');
-INSERT INTO sic (code,description) VALUES ('516','Internet Publishing and Broadcasting');
-INSERT INTO sic (code,description) VALUES ('5161','Internet Publishing and Broadcasting');
-INSERT INTO sic (code,description) VALUES ('51611','Internet Publishing and Broadcasting');
-INSERT INTO sic (code,description) VALUES ('516110','Internet Publishing and Broadcasting');
-INSERT INTO sic (code,description) VALUES ('517','Telecommunications');
-INSERT INTO sic (code,description) VALUES ('5171','Wired Telecommunications Carriers');
-INSERT INTO sic (code,description) VALUES ('51711','Wired Telecommunications Carriers');
-INSERT INTO sic (code,description) VALUES ('517110','Wired Telecommunications Carriers');
-INSERT INTO sic (code,description) VALUES ('5172','Wireless Telecommunications Carriers (except Satellite)');
-INSERT INTO sic (code,description) VALUES ('51721','Wireless Telecommunications Carriers (except Satellite)');
-INSERT INTO sic (code,description) VALUES ('517211','Paging');
-INSERT INTO sic (code,description) VALUES ('517212','Cellular and Other Wireless Telecommunications');
-INSERT INTO sic (code,description) VALUES ('5173','Telecommunications Resellers');
-INSERT INTO sic (code,description) VALUES ('51731','Telecommunications Resellers');
-INSERT INTO sic (code,description) VALUES ('517310','Telecommunications Resellers');
-INSERT INTO sic (code,description) VALUES ('5174','Satellite Telecommunications');
-INSERT INTO sic (code,description) VALUES ('51741','Satellite Telecommunications');
-INSERT INTO sic (code,description) VALUES ('517410','Satellite Telecommunications');
-INSERT INTO sic (code,description) VALUES ('5175','Cable and Other Program Distribution');
-INSERT INTO sic (code,description) VALUES ('51751','Cable and Other Program Distribution');
-INSERT INTO sic (code,description) VALUES ('517510','Cable and Other Program Distribution');
-INSERT INTO sic (code,description) VALUES ('5179','Other Telecommunications');
-INSERT INTO sic (code,description) VALUES ('51791','Other Telecommunications');
-INSERT INTO sic (code,description) VALUES ('517910','Other Telecommunications');
-INSERT INTO sic (code,description) VALUES ('518','Internet Service Providers, Web Search Portals, and Data Processing Services');
-INSERT INTO sic (code,description) VALUES ('5181','Internet Service Providers and Web Search Portals');
-INSERT INTO sic (code,description) VALUES ('51811','Internet Service Providers and Web Search Portals');
-INSERT INTO sic (code,description) VALUES ('518111','Internet Service Providers');
-INSERT INTO sic (code,description) VALUES ('518112','Web Search Portals');
-INSERT INTO sic (code,description) VALUES ('5182','Data Processing, Hosting, and Related Services');
-INSERT INTO sic (code,description) VALUES ('51821','Data Processing, Hosting, and Related Services');
-INSERT INTO sic (code,description) VALUES ('518210','Data Processing, Hosting, and Related Services');
-INSERT INTO sic (code,description) VALUES ('519','Other Information Services');
-INSERT INTO sic (code,description) VALUES ('5191','Other Information Services');
-INSERT INTO sic (code,description) VALUES ('51911','News Syndicates');
-INSERT INTO sic (code,description) VALUES ('519110','News Syndicates');
-INSERT INTO sic (code,description) VALUES ('51912','Libraries and Archives');
-INSERT INTO sic (code,description) VALUES ('519120','Libraries and Archives');
-INSERT INTO sic (code,description) VALUES ('51919','All Other Information Services');
-INSERT INTO sic (code,description) VALUES ('519190','All Other Information Services');
-INSERT INTO sic (code,description) VALUES ('52','Finance and Insurance');
-INSERT INTO sic (code,description) VALUES ('521','Monetary Authorities - Central Bank');
-INSERT INTO sic (code,description) VALUES ('5211','Monetary Authorities - Central Bank');
-INSERT INTO sic (code,description) VALUES ('52111','Monetary Authorities - Central Bank');
-INSERT INTO sic (code,description) VALUES ('521110','Monetary Authorities - Central Bank');
-INSERT INTO sic (code,description) VALUES ('522','Credit Intermediation and Related Activities');
-INSERT INTO sic (code,description) VALUES ('5221','Depository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('52211','Commercial Banking');
-INSERT INTO sic (code,description) VALUES ('522110','Commercial Banking');
-INSERT INTO sic (code,description) VALUES ('52212','Savings Institutions');
-INSERT INTO sic (code,description) VALUES ('522120','Savings Institutions');
-INSERT INTO sic (code,description) VALUES ('52213','Credit Unions');
-INSERT INTO sic (code,description) VALUES ('522130','Credit Unions');
-INSERT INTO sic (code,description) VALUES ('52219','Other Depository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('522190','Other Depository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('5222','Nondepository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('52221','Credit Card Issuing');
-INSERT INTO sic (code,description) VALUES ('522210','Credit Card Issuing');
-INSERT INTO sic (code,description) VALUES ('52222','Sales Financing');
-INSERT INTO sic (code,description) VALUES ('522220','Sales Financing');
-INSERT INTO sic (code,description) VALUES ('52229','Other Nondepository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('522291','Consumer Lending');
-INSERT INTO sic (code,description) VALUES ('522292','Real Estate Credit');
-INSERT INTO sic (code,description) VALUES ('522293','International Trade Financing');
-INSERT INTO sic (code,description) VALUES ('522294','Secondary Market Financing');
-INSERT INTO sic (code,description) VALUES ('522298','All Other Nondepository Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('5223','Activities Related to Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('52231','Mortgage and Nonmortgage Loan Brokers');
-INSERT INTO sic (code,description) VALUES ('522310','Mortgage and Nonmortgage Loan Brokers');
-INSERT INTO sic (code,description) VALUES ('52232','Financial Transactions Processing, Reserve, and Clearinghouse Activities');
-INSERT INTO sic (code,description) VALUES ('522320','Financial Transactions Processing, Reserve, and Clearinghouse Activities');
-INSERT INTO sic (code,description) VALUES ('52239','Other Activities Related to Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('522390','Other Activities Related to Credit Intermediation');
-INSERT INTO sic (code,description) VALUES ('523','Securities, Commodity Contracts, and Other Financial Investments and Related Activities');
-INSERT INTO sic (code,description) VALUES ('5231','Securities and Commodity Contracts Intermediation and Brokerage');
-INSERT INTO sic (code,description) VALUES ('52311','Investment Banking and Securities Dealing');
-INSERT INTO sic (code,description) VALUES ('523110','Investment Banking and Securities Dealing');
-INSERT INTO sic (code,description) VALUES ('52312','Securities Brokerage');
-INSERT INTO sic (code,description) VALUES ('523120','Securities Brokerage');
-INSERT INTO sic (code,description) VALUES ('52313','Commodity Contracts Dealing');
-INSERT INTO sic (code,description) VALUES ('523130','Commodity Contracts Dealing');
-INSERT INTO sic (code,description) VALUES ('52314','Commodity Contracts Brokerage');
-INSERT INTO sic (code,description) VALUES ('523140','Commodity Contracts Brokerage');
-INSERT INTO sic (code,description) VALUES ('5232','Securities and Commodity Exchanges');
-INSERT INTO sic (code,description) VALUES ('52321','Securities and Commodity Exchanges');
-INSERT INTO sic (code,description) VALUES ('523210','Securities and Commodity Exchanges');
-INSERT INTO sic (code,description) VALUES ('5239','Other Financial Investment Activities');
-INSERT INTO sic (code,description) VALUES ('52391','Miscellaneous Intermediation');
-INSERT INTO sic (code,description) VALUES ('523910','Miscellaneous Intermediation');
-INSERT INTO sic (code,description) VALUES ('52392','Portfolio Management');
-INSERT INTO sic (code,description) VALUES ('523920','Portfolio Management');
-INSERT INTO sic (code,description) VALUES ('52393','Investment Advice');
-INSERT INTO sic (code,description) VALUES ('523930','Investment Advice');
-INSERT INTO sic (code,description) VALUES ('52399','All Other Financial Investment Activities');
-INSERT INTO sic (code,description) VALUES ('523991','Trust, Fiduciary, and Custody Activities');
-INSERT INTO sic (code,description) VALUES ('523999','Miscellaneous Financial Investment Activities');
-INSERT INTO sic (code,description) VALUES ('524','Insurance Carriers and Related Activities');
-INSERT INTO sic (code,description) VALUES ('5241','Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('52411','Direct Life, Health, and Medical Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('524113','Direct Life Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('524114','Direct Health and Medical Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('52412','Direct Insurance (except Life, Health, and Medical) Carriers');
-INSERT INTO sic (code,description) VALUES ('524126','Direct Property and Casualty Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('524127','Direct Title Insurance Carriers');
-INSERT INTO sic (code,description) VALUES ('524128','Other Direct Insurance (except Life, Health, and Medical) Carriers');
-INSERT INTO sic (code,description) VALUES ('52413','Reinsurance Carriers');
-INSERT INTO sic (code,description) VALUES ('524130','Reinsurance Carriers');
-INSERT INTO sic (code,description) VALUES ('5242','Agencies, Brokerages, and Other Insurance Related Activities');
-INSERT INTO sic (code,description) VALUES ('52421','Insurance Agencies and Brokerages');
-INSERT INTO sic (code,description) VALUES ('524210','Insurance Agencies and Brokerages');
-INSERT INTO sic (code,description) VALUES ('52429','Other Insurance Related Activities');
-INSERT INTO sic (code,description) VALUES ('524291','Claims Adjusting');
-INSERT INTO sic (code,description) VALUES ('524292','Third Party Administration of Insurance and Pension Funds');
-INSERT INTO sic (code,description) VALUES ('524298','All Other Insurance Related Activities');
-INSERT INTO sic (code,description) VALUES ('525','Funds, Trusts, and Other Financial Vehicles');
-INSERT INTO sic (code,description) VALUES ('5251','Insurance and Employee Benefit Funds');
-INSERT INTO sic (code,description) VALUES ('52511','Pension Funds');
-INSERT INTO sic (code,description) VALUES ('525110','Pension Funds');
-INSERT INTO sic (code,description) VALUES ('52512','Health and Welfare Funds');
-INSERT INTO sic (code,description) VALUES ('525120','Health and Welfare Funds');
-INSERT INTO sic (code,description) VALUES ('52519','Other Insurance Funds');
-INSERT INTO sic (code,description) VALUES ('525190','Other Insurance Funds');
-INSERT INTO sic (code,description) VALUES ('5259','Other Investment Pools and Funds');
-INSERT INTO sic (code,description) VALUES ('52591','Open-End Investment Funds');
-INSERT INTO sic (code,description) VALUES ('525910','Open-End Investment Funds');
-INSERT INTO sic (code,description) VALUES ('52592','Trusts, Estates, and Agency Accounts');
-INSERT INTO sic (code,description) VALUES ('525920','Trusts, Estates, and Agency Accounts');
-INSERT INTO sic (code,description) VALUES ('52593','Real Estate Investment Trusts');
-INSERT INTO sic (code,description) VALUES ('525930','Real Estate Investment Trusts');
-INSERT INTO sic (code,description) VALUES ('52599','Other Financial Vehicles');
-INSERT INTO sic (code,description) VALUES ('525990','Other Financial Vehicles');
-INSERT INTO sic (code,description) VALUES ('53','Real Estate and Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('531','Real Estate');
-INSERT INTO sic (code,description) VALUES ('5311','Lessors of Real Estate');
-INSERT INTO sic (code,description) VALUES ('53111','Lessors of Residential Buildings and Dwellings');
-INSERT INTO sic (code,description) VALUES ('531110','Lessors of Residential Buildings and Dwellings');
-INSERT INTO sic (code,description) VALUES ('53112','Lessors of Nonresidential Buildings (except Miniwarehouses)');
-INSERT INTO sic (code,description) VALUES ('531120','Lessors of Nonresidential Buildings (except Miniwarehouses)');
-INSERT INTO sic (code,description) VALUES ('53113','Lessors of Miniwarehouses and Self-Storage Units');
-INSERT INTO sic (code,description) VALUES ('531130','Lessors of Miniwarehouses and Self-Storage Units');
-INSERT INTO sic (code,description) VALUES ('53119','Lessors of Other Real Estate Property');
-INSERT INTO sic (code,description) VALUES ('531190','Lessors of Other Real Estate Property');
-INSERT INTO sic (code,description) VALUES ('5312','Offices of Real Estate Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('53121','Offices of Real Estate Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('531210','Offices of Real Estate Agents and Brokers');
-INSERT INTO sic (code,description) VALUES ('5313','Activities Related to Real Estate');
-INSERT INTO sic (code,description) VALUES ('53131','Real Estate Property Managers');
-INSERT INTO sic (code,description) VALUES ('531311','Residential Property Managers');
-INSERT INTO sic (code,description) VALUES ('531312','Nonresidential Property Managers');
-INSERT INTO sic (code,description) VALUES ('53132','Offices of Real Estate Appraisers');
-INSERT INTO sic (code,description) VALUES ('531320','Offices of Real Estate Appraisers');
-INSERT INTO sic (code,description) VALUES ('53139','Other Activities Related to Real Estate');
-INSERT INTO sic (code,description) VALUES ('531390','Other Activities Related to Real Estate');
-INSERT INTO sic (code,description) VALUES ('532','Rental and Leasing Services');
-INSERT INTO sic (code,description) VALUES ('5321','Automotive Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('53211','Passenger Car Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532111','Passenger Car Rental');
-INSERT INTO sic (code,description) VALUES ('532112','Passenger Car Leasing');
-INSERT INTO sic (code,description) VALUES ('53212','Truck, Utility Trailer, and RV (Recreational Vehicle) Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532120','Truck, Utility Trailer, and RV (Recreational Vehicle) Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('5322','Consumer Goods Rental');
-INSERT INTO sic (code,description) VALUES ('53221','Consumer Electronics and Appliances Rental');
-INSERT INTO sic (code,description) VALUES ('532210','Consumer Electronics and Appliances Rental');
-INSERT INTO sic (code,description) VALUES ('53222','Formal Wear and Costume Rental');
-INSERT INTO sic (code,description) VALUES ('532220','Formal Wear and Costume Rental');
-INSERT INTO sic (code,description) VALUES ('53223','Video Tape and Disc Rental');
-INSERT INTO sic (code,description) VALUES ('532230','Video Tape and Disc Rental');
-INSERT INTO sic (code,description) VALUES ('53229','Other Consumer Goods Rental');
-INSERT INTO sic (code,description) VALUES ('532291','Home Health Equipment Rental');
-INSERT INTO sic (code,description) VALUES ('532292','Recreational Goods Rental');
-INSERT INTO sic (code,description) VALUES ('532299','All Other Consumer Goods Rental');
-INSERT INTO sic (code,description) VALUES ('5323','General Rental Centers');
-INSERT INTO sic (code,description) VALUES ('53231','General Rental Centers');
-INSERT INTO sic (code,description) VALUES ('532310','General Rental Centers');
-INSERT INTO sic (code,description) VALUES ('5324','Commercial and Industrial Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('53241','Construction, Transportation, Mining, and Forestry Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532411','Commercial Air, Rail, and Water Transportation Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532412','Construction, Mining, and Forestry Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('53242','Office Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532420','Office Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('53249','Other Commercial and Industrial Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('532490','Other Commercial and Industrial Machinery and Equipment Rental and Leasing');
-INSERT INTO sic (code,description) VALUES ('533','Lessors of Nonfinancial Intangible Assets (except Copyrighted Works)');
-INSERT INTO sic (code,description) VALUES ('5331','Lessors of Nonfinancial Intangible Assets (except Copyrighted Works)');
-INSERT INTO sic (code,description) VALUES ('53311','Lessors of Nonfinancial Intangible Assets (except Copyrighted Works)');
-INSERT INTO sic (code,description) VALUES ('533110','Lessors of Nonfinancial Intangible Assets (except Copyrighted Works)');
-INSERT INTO sic (code,description) VALUES ('54','Professional, Scientific, and Technical Services');
-INSERT INTO sic (code,description) VALUES ('541','Professional, Scientific, and Technical Services');
-INSERT INTO sic (code,description) VALUES ('5411','Legal Services');
-INSERT INTO sic (code,description) VALUES ('54111','Offices of Lawyers');
-INSERT INTO sic (code,description) VALUES ('541110','Offices of Lawyers');
-INSERT INTO sic (code,description) VALUES ('54112','Offices of Notaries');
-INSERT INTO sic (code,description) VALUES ('541120','Offices of Notaries');
-INSERT INTO sic (code,description) VALUES ('54119','Other Legal Services');
-INSERT INTO sic (code,description) VALUES ('541191','Title Abstract and Settlement Offices');
-INSERT INTO sic (code,description) VALUES ('541199','All Other Legal Services');
-INSERT INTO sic (code,description) VALUES ('5412','Accounting, Tax Preparation, Bookkeeping, and Payroll Services');
-INSERT INTO sic (code,description) VALUES ('54121','Accounting, Tax Preparation, Bookkeeping, and Payroll Services');
-INSERT INTO sic (code,description) VALUES ('541211','Offices of Certified Public Accountants');
-INSERT INTO sic (code,description) VALUES ('541213','Tax Preparation Services');
-INSERT INTO sic (code,description) VALUES ('541214','Payroll Services');
-INSERT INTO sic (code,description) VALUES ('541219','Other Accounting Services');
-INSERT INTO sic (code,description) VALUES ('5413','Architectural, Engineering, and Related Services');
-INSERT INTO sic (code,description) VALUES ('54131','Architectural Services');
-INSERT INTO sic (code,description) VALUES ('541310','Architectural Services');
-INSERT INTO sic (code,description) VALUES ('54132','Landscape Architectural Services');
-INSERT INTO sic (code,description) VALUES ('541320','Landscape Architectural Services');
-INSERT INTO sic (code,description) VALUES ('54133','Engineering Services');
-INSERT INTO sic (code,description) VALUES ('541330','Engineering Services');
-INSERT INTO sic (code,description) VALUES ('54134','Drafting Services');
-INSERT INTO sic (code,description) VALUES ('541340','Drafting Services');
-INSERT INTO sic (code,description) VALUES ('54135','Building Inspection Services');
-INSERT INTO sic (code,description) VALUES ('541350','Building Inspection Services');
-INSERT INTO sic (code,description) VALUES ('54136','Geophysical Surveying and Mapping Services');
-INSERT INTO sic (code,description) VALUES ('541360','Geophysical Surveying and Mapping Services');
-INSERT INTO sic (code,description) VALUES ('54137','Surveying and Mapping (except Geophysical) Services');
-INSERT INTO sic (code,description) VALUES ('541370','Surveying and Mapping (except Geophysical) Services');
-INSERT INTO sic (code,description) VALUES ('54138','Testing Laboratories');
-INSERT INTO sic (code,description) VALUES ('541380','Testing Laboratories');
-INSERT INTO sic (code,description) VALUES ('5414','Specialized Design Services');
-INSERT INTO sic (code,description) VALUES ('54141','Interior Design Services');
-INSERT INTO sic (code,description) VALUES ('541410','Interior Design Services');
-INSERT INTO sic (code,description) VALUES ('54142','Industrial Design Services');
-INSERT INTO sic (code,description) VALUES ('541420','Industrial Design Services');
-INSERT INTO sic (code,description) VALUES ('54143','Graphic Design Services');
-INSERT INTO sic (code,description) VALUES ('541430','Graphic Design Services');
-INSERT INTO sic (code,description) VALUES ('54149','Other Specialized Design Services');
-INSERT INTO sic (code,description) VALUES ('541490','Other Specialized Design Services');
-INSERT INTO sic (code,description) VALUES ('5415','Computer Systems Design and Related Services');
-INSERT INTO sic (code,description) VALUES ('54151','Computer Systems Design and Related Services');
-INSERT INTO sic (code,description) VALUES ('541511','Custom Computer Programming Services');
-INSERT INTO sic (code,description) VALUES ('541512','Computer Systems Design Services');
-INSERT INTO sic (code,description) VALUES ('541513','Computer Facilities Management Services');
-INSERT INTO sic (code,description) VALUES ('541519','Other Computer Related Services');
-INSERT INTO sic (code,description) VALUES ('5416','Management, Scientific, and Technical Consulting Services');
-INSERT INTO sic (code,description) VALUES ('54161','Management Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541611','Administrative Management and General Management Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541612','Human Resources and Executive Search Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541613','Marketing Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541614','Process, Physical Distribution, and Logistics Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541618','Other Management Consulting Services');
-INSERT INTO sic (code,description) VALUES ('54162','Environmental Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541620','Environmental Consulting Services');
-INSERT INTO sic (code,description) VALUES ('54169','Other Scientific and Technical Consulting Services');
-INSERT INTO sic (code,description) VALUES ('541690','Other Scientific and Technical Consulting Services');
-INSERT INTO sic (code,description) VALUES ('5417','Scientific Research and Development Services');
-INSERT INTO sic (code,description) VALUES ('54171','Research and Development in the Physical, Engineering, and Life Sciences');
-INSERT INTO sic (code,description) VALUES ('541710','Research and Development in the Physical, Engineering, and Life Sciences');
-INSERT INTO sic (code,description) VALUES ('54172','Research and Development in the Social Sciences and Humanities');
-INSERT INTO sic (code,description) VALUES ('541720','Research and Development in the Social Sciences and Humanities');
-INSERT INTO sic (code,description) VALUES ('5418','Advertising and Related Services');
-INSERT INTO sic (code,description) VALUES ('54181','Advertising Agencies');
-INSERT INTO sic (code,description) VALUES ('541810','Advertising Agencies');
-INSERT INTO sic (code,description) VALUES ('54182','Public Relations Agencies');
-INSERT INTO sic (code,description) VALUES ('541820','Public Relations Agencies');
-INSERT INTO sic (code,description) VALUES ('54183','Media Buying Agencies');
-INSERT INTO sic (code,description) VALUES ('541830','Media Buying Agencies');
-INSERT INTO sic (code,description) VALUES ('54184','Media Representatives');
-INSERT INTO sic (code,description) VALUES ('541840','Media Representatives');
-INSERT INTO sic (code,description) VALUES ('54185','Display Advertising');
-INSERT INTO sic (code,description) VALUES ('541850','Display Advertising');
-INSERT INTO sic (code,description) VALUES ('54186','Direct Mail Advertising');
-INSERT INTO sic (code,description) VALUES ('541860','Direct Mail Advertising');
-INSERT INTO sic (code,description) VALUES ('54187','Advertising Material Distribution Services');
-INSERT INTO sic (code,description) VALUES ('541870','Advertising Material Distribution Services');
-INSERT INTO sic (code,description) VALUES ('54189','Other Services Related to Advertising');
-INSERT INTO sic (code,description) VALUES ('541890','Other Services Related to Advertising');
-INSERT INTO sic (code,description) VALUES ('5419','Other Professional, Scientific, and Technical Services');
-INSERT INTO sic (code,description) VALUES ('54191','Marketing Research and Public Opinion Polling');
-INSERT INTO sic (code,description) VALUES ('541910','Marketing Research and Public Opinion Polling');
-INSERT INTO sic (code,description) VALUES ('54192','Photographic Services');
-INSERT INTO sic (code,description) VALUES ('541921','Photography Studios, Portrait');
-INSERT INTO sic (code,description) VALUES ('541922','Commercial Photography');
-INSERT INTO sic (code,description) VALUES ('54193','Translation and Interpretation Services');
-INSERT INTO sic (code,description) VALUES ('541930','Translation and Interpretation Services');
-INSERT INTO sic (code,description) VALUES ('54194','Veterinary Services');
-INSERT INTO sic (code,description) VALUES ('541940','Veterinary Services');
-INSERT INTO sic (code,description) VALUES ('54199','All Other Professional, Scientific, and Technical Services');
-INSERT INTO sic (code,description) VALUES ('541990','All Other Professional, Scientific, and Technical Services');
-INSERT INTO sic (code,description) VALUES ('55','Management of Companies and Enterprises');
-INSERT INTO sic (code,description) VALUES ('551','Management of Companies and Enterprises');
-INSERT INTO sic (code,description) VALUES ('5511','Management of Companies and Enterprises');
-INSERT INTO sic (code,description) VALUES ('55111','Management of Companies and Enterprises');
-INSERT INTO sic (code,description) VALUES ('551111','Offices of Bank Holding Companies');
-INSERT INTO sic (code,description) VALUES ('551112','Offices of Other Holding Companies');
-INSERT INTO sic (code,description) VALUES ('551114','Corporate, Subsidiary, and Regional Managing Offices');
-INSERT INTO sic (code,description) VALUES ('56','Administrative and Support and Waste Management and Remediation Services');
-INSERT INTO sic (code,description) VALUES ('561','Administrative and Support Services');
-INSERT INTO sic (code,description) VALUES ('5611','Office Administrative Services');
-INSERT INTO sic (code,description) VALUES ('56111','Office Administrative Services');
-INSERT INTO sic (code,description) VALUES ('561110','Office Administrative Services');
-INSERT INTO sic (code,description) VALUES ('5612','Facilities Support Services');
-INSERT INTO sic (code,description) VALUES ('56121','Facilities Support Services');
-INSERT INTO sic (code,description) VALUES ('561210','Facilities Support Services');
-INSERT INTO sic (code,description) VALUES ('5613','Employment Services');
-INSERT INTO sic (code,description) VALUES ('56131','Employment Placement Agencies');
-INSERT INTO sic (code,description) VALUES ('561310','Employment Placement Agencies');
-INSERT INTO sic (code,description) VALUES ('56132','Temporary Help Services');
-INSERT INTO sic (code,description) VALUES ('561320','Temporary Help Services');
-INSERT INTO sic (code,description) VALUES ('56133','Professional Employer Organizations');
-INSERT INTO sic (code,description) VALUES ('561330','Professional Employer Organizations');
-INSERT INTO sic (code,description) VALUES ('5614','Business Support Services');
-INSERT INTO sic (code,description) VALUES ('56141','Document Preparation Services');
-INSERT INTO sic (code,description) VALUES ('561410','Document Preparation Services');
-INSERT INTO sic (code,description) VALUES ('56142','Telephone Call Centers');
-INSERT INTO sic (code,description) VALUES ('561421','Telephone Answering Services');
-INSERT INTO sic (code,description) VALUES ('561422','Telemarketing Bureaus');
-INSERT INTO sic (code,description) VALUES ('56143','Business Service Centers');
-INSERT INTO sic (code,description) VALUES ('561431','Private Mail Centers');
-INSERT INTO sic (code,description) VALUES ('561439','Other Business Service Centers (including Copy Shops)');
-INSERT INTO sic (code,description) VALUES ('56144','Collection Agencies');
-INSERT INTO sic (code,description) VALUES ('561440','Collection Agencies');
-INSERT INTO sic (code,description) VALUES ('56145','Credit Bureaus');
-INSERT INTO sic (code,description) VALUES ('561450','Credit Bureaus');
-INSERT INTO sic (code,description) VALUES ('56149','Other Business Support Services');
-INSERT INTO sic (code,description) VALUES ('561491','Repossession Services');
-INSERT INTO sic (code,description) VALUES ('561492','Court Reporting and Stenotype Services');
-INSERT INTO sic (code,description) VALUES ('561499','All Other Business Support Services');
-INSERT INTO sic (code,description) VALUES ('5615','Travel Arrangement and Reservation Services');
-INSERT INTO sic (code,description) VALUES ('56151','Travel Agencies');
-INSERT INTO sic (code,description) VALUES ('561510','Travel Agencies');
-INSERT INTO sic (code,description) VALUES ('56152','Tour Operators');
-INSERT INTO sic (code,description) VALUES ('561520','Tour Operators');
-INSERT INTO sic (code,description) VALUES ('56159','Other Travel Arrangement and Reservation Services');
-INSERT INTO sic (code,description) VALUES ('561591','Convention and Visitors Bureaus');
-INSERT INTO sic (code,description) VALUES ('561599','All Other Travel Arrangement and Reservation Services');
-INSERT INTO sic (code,description) VALUES ('5616','Investigation and Security Services');
-INSERT INTO sic (code,description) VALUES ('56161','Investigation, Guard, and Armored Car Services');
-INSERT INTO sic (code,description) VALUES ('561611','Investigation Services');
-INSERT INTO sic (code,description) VALUES ('561612','Security Guards and Patrol Services');
-INSERT INTO sic (code,description) VALUES ('561613','Armored Car Services');
-INSERT INTO sic (code,description) VALUES ('56162','Security Systems Services');
-INSERT INTO sic (code,description) VALUES ('561621','Security Systems Services (except Locksmiths)');
-INSERT INTO sic (code,description) VALUES ('561622','Locksmiths');
-INSERT INTO sic (code,description) VALUES ('5617','Services to Buildings and Dwellings');
-INSERT INTO sic (code,description) VALUES ('56171','Exterminating and Pest Control Services');
-INSERT INTO sic (code,description) VALUES ('561710','Exterminating and Pest Control Services');
-INSERT INTO sic (code,description) VALUES ('56172','Janitorial Services');
-INSERT INTO sic (code,description) VALUES ('561720','Janitorial Services');
-INSERT INTO sic (code,description) VALUES ('56173','Landscaping Services');
-INSERT INTO sic (code,description) VALUES ('561730','Landscaping Services');
-INSERT INTO sic (code,description) VALUES ('56174','Carpet and Upholstery Cleaning Services');
-INSERT INTO sic (code,description) VALUES ('561740','Carpet and Upholstery Cleaning Services');
-INSERT INTO sic (code,description) VALUES ('56179','Other Services to Buildings and Dwellings');
-INSERT INTO sic (code,description) VALUES ('561790','Other Services to Buildings and Dwellings');
-INSERT INTO sic (code,description) VALUES ('5619','Other Support Services');
-INSERT INTO sic (code,description) VALUES ('56191','Packaging and Labeling Services');
-INSERT INTO sic (code,description) VALUES ('561910','Packaging and Labeling Services');
-INSERT INTO sic (code,description) VALUES ('56192','Convention and Trade Show Organizers');
-INSERT INTO sic (code,description) VALUES ('561920','Convention and Trade Show Organizers');
-INSERT INTO sic (code,description) VALUES ('56199','All Other Support Services');
-INSERT INTO sic (code,description) VALUES ('561990','All Other Support Services');
-INSERT INTO sic (code,description) VALUES ('562','Waste Management and Remediation Services');
-INSERT INTO sic (code,description) VALUES ('5621','Waste Collection');
-INSERT INTO sic (code,description) VALUES ('56211','Waste Collection');
-INSERT INTO sic (code,description) VALUES ('562111','Solid Waste Collection');
-INSERT INTO sic (code,description) VALUES ('562112','Hazardous Waste Collection');
-INSERT INTO sic (code,description) VALUES ('562119','Other Waste Collection');
-INSERT INTO sic (code,description) VALUES ('5622','Waste Treatment and Disposal');
-INSERT INTO sic (code,description) VALUES ('56221','Waste Treatment and Disposal');
-INSERT INTO sic (code,description) VALUES ('562211','Hazardous Waste Treatment and Disposal');
-INSERT INTO sic (code,description) VALUES ('562212','Solid Waste Landfill');
-INSERT INTO sic (code,description) VALUES ('562213','Solid Waste Combustors and Incinerators');
-INSERT INTO sic (code,description) VALUES ('562219','Other Nonhazardous Waste Treatment and Disposal');
-INSERT INTO sic (code,description) VALUES ('5629','Remediation and Other Waste Management Services');
-INSERT INTO sic (code,description) VALUES ('56291','Remediation Services');
-INSERT INTO sic (code,description) VALUES ('562910','Remediation Services');
-INSERT INTO sic (code,description) VALUES ('56292','Materials Recovery Facilities');
-INSERT INTO sic (code,description) VALUES ('562920','Materials Recovery Facilities');
-INSERT INTO sic (code,description) VALUES ('56299','All Other Waste Management Services');
-INSERT INTO sic (code,description) VALUES ('562991','Septic Tank and Related Services');
-INSERT INTO sic (code,description) VALUES ('562998','All Other Miscellaneous Waste Management Services');
-INSERT INTO sic (code,description) VALUES ('61','Educational Services');
-INSERT INTO sic (code,description) VALUES ('611','Educational Services');
-INSERT INTO sic (code,description) VALUES ('6111','Elementary and Secondary Schools');
-INSERT INTO sic (code,description) VALUES ('61111','Elementary and Secondary Schools');
-INSERT INTO sic (code,description) VALUES ('611110','Elementary and Secondary Schools');
-INSERT INTO sic (code,description) VALUES ('6112','Junior Colleges');
-INSERT INTO sic (code,description) VALUES ('61121','Junior Colleges');
-INSERT INTO sic (code,description) VALUES ('611210','Junior Colleges');
-INSERT INTO sic (code,description) VALUES ('6113','Colleges, Universities, and Professional Schools');
-INSERT INTO sic (code,description) VALUES ('61131','Colleges, Universities, and Professional Schools');
-INSERT INTO sic (code,description) VALUES ('611310','Colleges, Universities, and Professional Schools');
-INSERT INTO sic (code,description) VALUES ('6114','Business Schools and Computer and Management Training');
-INSERT INTO sic (code,description) VALUES ('61141','Business and Secretarial Schools');
-INSERT INTO sic (code,description) VALUES ('611410','Business and Secretarial Schools');
-INSERT INTO sic (code,description) VALUES ('61142','Computer Training');
-INSERT INTO sic (code,description) VALUES ('611420','Computer Training');
-INSERT INTO sic (code,description) VALUES ('61143','Professional and Management Development Training');
-INSERT INTO sic (code,description) VALUES ('611430','Professional and Management Development Training');
-INSERT INTO sic (code,description) VALUES ('6115','Technical and Trade Schools');
-INSERT INTO sic (code,description) VALUES ('61151','Technical and Trade Schools');
-INSERT INTO sic (code,description) VALUES ('611511','Cosmetology and Barber Schools');
-INSERT INTO sic (code,description) VALUES ('611512','Flight Training');
-INSERT INTO sic (code,description) VALUES ('611513','Apprenticeship Training');
-INSERT INTO sic (code,description) VALUES ('611519','Other Technical and Trade Schools');
-INSERT INTO sic (code,description) VALUES ('6116','Other Schools and Instruction');
-INSERT INTO sic (code,description) VALUES ('61161','Fine Arts Schools');
-INSERT INTO sic (code,description) VALUES ('611610','Fine Arts Schools');
-INSERT INTO sic (code,description) VALUES ('61162','Sports and Recreation Instruction');
-INSERT INTO sic (code,description) VALUES ('611620','Sports and Recreation Instruction');
-INSERT INTO sic (code,description) VALUES ('61163','Language Schools');
-INSERT INTO sic (code,description) VALUES ('611630','Language Schools');
-INSERT INTO sic (code,description) VALUES ('61169','All Other Schools and Instruction');
-INSERT INTO sic (code,description) VALUES ('611691','Exam Preparation and Tutoring');
-INSERT INTO sic (code,description) VALUES ('611692','Automobile Driving Schools');
-INSERT INTO sic (code,description) VALUES ('611699','All Other Miscellaneous Schools and Instruction');
-INSERT INTO sic (code,description) VALUES ('6117','Educational Support Services');
-INSERT INTO sic (code,description) VALUES ('61171','Educational Support Services');
-INSERT INTO sic (code,description) VALUES ('611710','Educational Support Services');
-INSERT INTO sic (code,description) VALUES ('62','Health Care and Social Assistance');
-INSERT INTO sic (code,description) VALUES ('621','Ambulatory Health Care Services');
-INSERT INTO sic (code,description) VALUES ('6211','Offices of Physicians');
-INSERT INTO sic (code,description) VALUES ('62111','Offices of Physicians');
-INSERT INTO sic (code,description) VALUES ('621111','Offices of Physicians (except Mental Health Specialists)');
-INSERT INTO sic (code,description) VALUES ('621112','Offices of Physicians, Mental Health Specialists');
-INSERT INTO sic (code,description) VALUES ('6212','Offices of Dentists');
-INSERT INTO sic (code,description) VALUES ('62121','Offices of Dentists');
-INSERT INTO sic (code,description) VALUES ('621210','Offices of Dentists');
-INSERT INTO sic (code,description) VALUES ('6213','Offices of Other Health Practitioners');
-INSERT INTO sic (code,description) VALUES ('62131','Offices of Chiropractors');
-INSERT INTO sic (code,description) VALUES ('621310','Offices of Chiropractors');
-INSERT INTO sic (code,description) VALUES ('62132','Offices of Optometrists');
-INSERT INTO sic (code,description) VALUES ('621320','Offices of Optometrists');
-INSERT INTO sic (code,description) VALUES ('62133','Offices of Mental Health Practitioners (except Physicians)');
-INSERT INTO sic (code,description) VALUES ('621330','Offices of Mental Health Practitioners (except Physicians)');
-INSERT INTO sic (code,description) VALUES ('62134','Offices of Physical, Occupational and Speech Therapists, and Audiologists');
-INSERT INTO sic (code,description) VALUES ('621340','Offices of Physical, Occupational and Speech Therapists, and Audiologists');
-INSERT INTO sic (code,description) VALUES ('62139','Offices of All Other Health Practitioners');
-INSERT INTO sic (code,description) VALUES ('621391','Offices of Podiatrists');
-INSERT INTO sic (code,description) VALUES ('621399','Offices of All Other Miscellaneous Health Practitioners');
-INSERT INTO sic (code,description) VALUES ('6214','Outpatient Care Centers');
-INSERT INTO sic (code,description) VALUES ('62141','Family Planning Centers');
-INSERT INTO sic (code,description) VALUES ('621410','Family Planning Centers');
-INSERT INTO sic (code,description) VALUES ('62142','Outpatient Mental Health and Substance Abuse Centers');
-INSERT INTO sic (code,description) VALUES ('621420','Outpatient Mental Health and Substance Abuse Centers');
-INSERT INTO sic (code,description) VALUES ('62149','Other Outpatient Care Centers');
-INSERT INTO sic (code,description) VALUES ('621491','HMO Medical Centers');
-INSERT INTO sic (code,description) VALUES ('621492','Kidney Dialysis Centers');
-INSERT INTO sic (code,description) VALUES ('621493','Freestanding Ambulatory Surgical and Emergency Centers');
-INSERT INTO sic (code,description) VALUES ('621498','All Other Outpatient Care Centers');
-INSERT INTO sic (code,description) VALUES ('6215','Medical and Diagnostic Laboratories');
-INSERT INTO sic (code,description) VALUES ('62151','Medical and Diagnostic Laboratories');
-INSERT INTO sic (code,description) VALUES ('621511','Medical Laboratories');
-INSERT INTO sic (code,description) VALUES ('621512','Diagnostic Imaging Centers');
-INSERT INTO sic (code,description) VALUES ('6216','Home Health Care Services');
-INSERT INTO sic (code,description) VALUES ('62161','Home Health Care Services');
-INSERT INTO sic (code,description) VALUES ('621610','Home Health Care Services');
-INSERT INTO sic (code,description) VALUES ('6219','Other Ambulatory Health Care Services');
-INSERT INTO sic (code,description) VALUES ('62191','Ambulance Services');
-INSERT INTO sic (code,description) VALUES ('621910','Ambulance Services');
-INSERT INTO sic (code,description) VALUES ('62199','All Other Ambulatory Health Care Services');
-INSERT INTO sic (code,description) VALUES ('621991','Blood and Organ Banks');
-INSERT INTO sic (code,description) VALUES ('621999','All Other Miscellaneous Ambulatory Health Care Services');
-INSERT INTO sic (code,description) VALUES ('622','Hospitals');
-INSERT INTO sic (code,description) VALUES ('6221','General Medical and Surgical Hospitals');
-INSERT INTO sic (code,description) VALUES ('62211','General Medical and Surgical Hospitals');
-INSERT INTO sic (code,description) VALUES ('622110','General Medical and Surgical Hospitals');
-INSERT INTO sic (code,description) VALUES ('6222','Psychiatric and Substance Abuse Hospitals');
-INSERT INTO sic (code,description) VALUES ('62221','Psychiatric and Substance Abuse Hospitals');
-INSERT INTO sic (code,description) VALUES ('622210','Psychiatric and Substance Abuse Hospitals');
-INSERT INTO sic (code,description) VALUES ('6223','Specialty (except Psychiatric and Substance Abuse) Hospitals');
-INSERT INTO sic (code,description) VALUES ('62231','Specialty (except Psychiatric and Substance Abuse) Hospitals');
-INSERT INTO sic (code,description) VALUES ('622310','Specialty (except Psychiatric and Substance Abuse) Hospitals');
-INSERT INTO sic (code,description) VALUES ('623','Nursing and Residential Care Facilities');
-INSERT INTO sic (code,description) VALUES ('6231','Nursing Care Facilities');
-INSERT INTO sic (code,description) VALUES ('62311','Nursing Care Facilities');
-INSERT INTO sic (code,description) VALUES ('623110','Nursing Care Facilities');
-INSERT INTO sic (code,description) VALUES ('6232','Residential Mental Retardation, Mental Health and Substance Abuse Facilities');
-INSERT INTO sic (code,description) VALUES ('62321','Residential Mental Retardation Facilities');
-INSERT INTO sic (code,description) VALUES ('623210','Residential Mental Retardation Facilities');
-INSERT INTO sic (code,description) VALUES ('62322','Residential Mental Health and Substance Abuse Facilities');
-INSERT INTO sic (code,description) VALUES ('623220','Residential Mental Health and Substance Abuse Facilities');
-INSERT INTO sic (code,description) VALUES ('6233','Community Care Facilities for the Elderly');
-INSERT INTO sic (code,description) VALUES ('62331','Community Care Facilities for the Elderly');
-INSERT INTO sic (code,description) VALUES ('623311','Continuing Care Retirement Communities');
-INSERT INTO sic (code,description) VALUES ('623312','Homes for the Elderly');
-INSERT INTO sic (code,description) VALUES ('6239','Other Residential Care Facilities');
-INSERT INTO sic (code,description) VALUES ('62399','Other Residential Care Facilities');
-INSERT INTO sic (code,description) VALUES ('623990','Other Residential Care Facilities');
-INSERT INTO sic (code,description) VALUES ('624','Social Assistance');
-INSERT INTO sic (code,description) VALUES ('6241','Individual and Family Services');
-INSERT INTO sic (code,description) VALUES ('62411','Child and Youth Services');
-INSERT INTO sic (code,description) VALUES ('624110','Child and Youth Services');
-INSERT INTO sic (code,description) VALUES ('62412','Services for the Elderly and Persons with Disabilities');
-INSERT INTO sic (code,description) VALUES ('624120','Services for the Elderly and Persons with Disabilities');
-INSERT INTO sic (code,description) VALUES ('62419','Other Individual and Family Services');
-INSERT INTO sic (code,description) VALUES ('624190','Other Individual and Family Services');
-INSERT INTO sic (code,description) VALUES ('6242','Community Food and Housing, and Emergency and Other Relief Services');
-INSERT INTO sic (code,description) VALUES ('62421','Community Food Services');
-INSERT INTO sic (code,description) VALUES ('624210','Community Food Services');
-INSERT INTO sic (code,description) VALUES ('62422','Community Housing Services');
-INSERT INTO sic (code,description) VALUES ('624221','Temporary Shelters');
-INSERT INTO sic (code,description) VALUES ('624229','Other Community Housing Services');
-INSERT INTO sic (code,description) VALUES ('62423','Emergency and Other Relief Services');
-INSERT INTO sic (code,description) VALUES ('624230','Emergency and Other Relief Services');
-INSERT INTO sic (code,description) VALUES ('6243','Vocational Rehabilitation Services');
-INSERT INTO sic (code,description) VALUES ('62431','Vocational Rehabilitation Services');
-INSERT INTO sic (code,description) VALUES ('624310','Vocational Rehabilitation Services');
-INSERT INTO sic (code,description) VALUES ('6244','Child Day Care Services');
-INSERT INTO sic (code,description) VALUES ('62441','Child Day Care Services');
-INSERT INTO sic (code,description) VALUES ('624410','Child Day Care Services');
-INSERT INTO sic (code,description) VALUES ('71','Arts, Entertainment, and Recreation');
-INSERT INTO sic (code,description) VALUES ('711','Performing Arts, Spectator Sports, and Related Industries');
-INSERT INTO sic (code,description) VALUES ('7111','Performing Arts Companies');
-INSERT INTO sic (code,description) VALUES ('71111','Theater Companies and Dinner Theaters');
-INSERT INTO sic (code,description) VALUES ('711110','Theater Companies and Dinner Theaters');
-INSERT INTO sic (code,description) VALUES ('71112','Dance Companies');
-INSERT INTO sic (code,description) VALUES ('711120','Dance Companies');
-INSERT INTO sic (code,description) VALUES ('71113','Musical Groups and Artists');
-INSERT INTO sic (code,description) VALUES ('711130','Musical Groups and Artists');
-INSERT INTO sic (code,description) VALUES ('71119','Other Performing Arts Companies');
-INSERT INTO sic (code,description) VALUES ('711190','Other Performing Arts Companies');
-INSERT INTO sic (code,description) VALUES ('7112','Spectator Sports');
-INSERT INTO sic (code,description) VALUES ('71121','Spectator Sports');
-INSERT INTO sic (code,description) VALUES ('711211','Sports Teams and Clubs');
-INSERT INTO sic (code,description) VALUES ('711212','Racetracks');
-INSERT INTO sic (code,description) VALUES ('711219','Other Spectator Sports');
-INSERT INTO sic (code,description) VALUES ('7113','Promoters of Performing Arts, Sports, and Similar Events');
-INSERT INTO sic (code,description) VALUES ('71131','Promoters of Performing Arts, Sports, and Similar Events with Facilities');
-INSERT INTO sic (code,description) VALUES ('711310','Promoters of Performing Arts, Sports, and Similar Events with Facilities');
-INSERT INTO sic (code,description) VALUES ('71132','Promoters of Performing Arts, Sports, and Similar Events without Facilities');
-INSERT INTO sic (code,description) VALUES ('711320','Promoters of Performing Arts, Sports, and Similar Events without Facilities');
-INSERT INTO sic (code,description) VALUES ('7114','Agents and Managers for Artists, Athletes, Entertainers, and Other Public Figures');
-INSERT INTO sic (code,description) VALUES ('71141','Agents and Managers for Artists, Athletes, Entertainers, and Other Public Figures');
-INSERT INTO sic (code,description) VALUES ('711410','Agents and Managers for Artists, Athletes, Entertainers, and Other Public Figures');
-INSERT INTO sic (code,description) VALUES ('7115','Independent Artists, Writers, and Performers');
-INSERT INTO sic (code,description) VALUES ('71151','Independent Artists, Writers, and Performers');
-INSERT INTO sic (code,description) VALUES ('711510','Independent Artists, Writers, and Performers');
-INSERT INTO sic (code,description) VALUES ('712','Museums, Historical Sites, and Similar Institutions');
-INSERT INTO sic (code,description) VALUES ('7121','Museums, Historical Sites, and Similar Institutions');
-INSERT INTO sic (code,description) VALUES ('71211','Museums');
-INSERT INTO sic (code,description) VALUES ('712110','Museums');
-INSERT INTO sic (code,description) VALUES ('71212','Historical Sites');
-INSERT INTO sic (code,description) VALUES ('712120','Historical Sites');
-INSERT INTO sic (code,description) VALUES ('71213','Zoos and Botanical Gardens');
-INSERT INTO sic (code,description) VALUES ('712130','Zoos and Botanical Gardens');
-INSERT INTO sic (code,description) VALUES ('71219','Nature Parks and Other Similar Institutions');
-INSERT INTO sic (code,description) VALUES ('712190','Nature Parks and Other Similar Institutions');
-INSERT INTO sic (code,description) VALUES ('713','Amusement, Gambling, and Recreation Industries');
-INSERT INTO sic (code,description) VALUES ('7131','Amusement Parks and Arcades');
-INSERT INTO sic (code,description) VALUES ('71311','Amusement and Theme Parks');
-INSERT INTO sic (code,description) VALUES ('713110','Amusement and Theme Parks');
-INSERT INTO sic (code,description) VALUES ('71312','Amusement Arcades');
-INSERT INTO sic (code,description) VALUES ('713120','Amusement Arcades');
-INSERT INTO sic (code,description) VALUES ('7132','Gambling Industries');
-INSERT INTO sic (code,description) VALUES ('71321','Casinos (except Casino Hotels)');
-INSERT INTO sic (code,description) VALUES ('713210','Casinos (except Casino Hotels)');
-INSERT INTO sic (code,description) VALUES ('71329','Other Gambling Industries');
-INSERT INTO sic (code,description) VALUES ('713290','Other Gambling Industries');
-INSERT INTO sic (code,description) VALUES ('7139','Other Amusement and Recreation Industries');
-INSERT INTO sic (code,description) VALUES ('71391','Golf Courses and Country Clubs');
-INSERT INTO sic (code,description) VALUES ('713910','Golf Courses and Country Clubs');
-INSERT INTO sic (code,description) VALUES ('71392','Skiing Facilities');
-INSERT INTO sic (code,description) VALUES ('713920','Skiing Facilities');
-INSERT INTO sic (code,description) VALUES ('71393','Marinas');
-INSERT INTO sic (code,description) VALUES ('713930','Marinas');
-INSERT INTO sic (code,description) VALUES ('71394','Fitness and Recreational Sports Centers');
-INSERT INTO sic (code,description) VALUES ('713940','Fitness and Recreational Sports Centers');
-INSERT INTO sic (code,description) VALUES ('71395','Bowling Centers');
-INSERT INTO sic (code,description) VALUES ('713950','Bowling Centers');
-INSERT INTO sic (code,description) VALUES ('71399','All Other Amusement and Recreation Industries');
-INSERT INTO sic (code,description) VALUES ('713990','All Other Amusement and Recreation Industries');
-INSERT INTO sic (code,description) VALUES ('72','Accommodation and Food Services');
-INSERT INTO sic (code,description) VALUES ('721','Accommodation');
-INSERT INTO sic (code,description) VALUES ('7211','Traveler Accommodation');
-INSERT INTO sic (code,description) VALUES ('72111','Hotels (except Casino Hotels) and Motels');
-INSERT INTO sic (code,description) VALUES ('721110','Hotels (except Casino Hotels) and Motels');
-INSERT INTO sic (code,description) VALUES ('72112','Casino Hotels');
-INSERT INTO sic (code,description) VALUES ('721120','Casino Hotels');
-INSERT INTO sic (code,description) VALUES ('72119','Other Traveler Accommodation');
-INSERT INTO sic (code,description) VALUES ('721191','Bed-and-Breakfast Inns');
-INSERT INTO sic (code,description) VALUES ('721199','All Other Traveler Accommodation');
-INSERT INTO sic (code,description) VALUES ('7212','RV (Recreational Vehicle) Parks and Recreational Camps');
-INSERT INTO sic (code,description) VALUES ('72121','RV (Recreational Vehicle) Parks and Recreational Camps');
-INSERT INTO sic (code,description) VALUES ('721211','RV (Recreational Vehicle) Parks and Campgrounds');
-INSERT INTO sic (code,description) VALUES ('721214','Recreational and Vacation Camps (except Campgrounds)');
-INSERT INTO sic (code,description) VALUES ('7213','Rooming and Boarding Houses');
-INSERT INTO sic (code,description) VALUES ('72131','Rooming and Boarding Houses');
-INSERT INTO sic (code,description) VALUES ('721310','Rooming and Boarding Houses');
-INSERT INTO sic (code,description) VALUES ('722','Food Services and Drinking Places');
-INSERT INTO sic (code,description) VALUES ('7221','Full-Service Restaurants');
-INSERT INTO sic (code,description) VALUES ('72211','Full-Service Restaurants');
-INSERT INTO sic (code,description) VALUES ('722110','Full-Service Restaurants');
-INSERT INTO sic (code,description) VALUES ('7222','Limited-Service Eating Places');
-INSERT INTO sic (code,description) VALUES ('72221','Limited-Service Eating Places');
-INSERT INTO sic (code,description) VALUES ('722211','Limited-Service Restaurants');
-INSERT INTO sic (code,description) VALUES ('722212','Cafeterias');
-INSERT INTO sic (code,description) VALUES ('722213','Snack and Nonalcoholic Beverage Bars');
-INSERT INTO sic (code,description) VALUES ('7223','Special Food Services');
-INSERT INTO sic (code,description) VALUES ('72231','Food Service Contractors');
-INSERT INTO sic (code,description) VALUES ('722310','Food Service Contractors');
-INSERT INTO sic (code,description) VALUES ('72232','Caterers');
-INSERT INTO sic (code,description) VALUES ('722320','Caterers');
-INSERT INTO sic (code,description) VALUES ('72233','Mobile Food Services');
-INSERT INTO sic (code,description) VALUES ('722330','Mobile Food Services');
-INSERT INTO sic (code,description) VALUES ('7224','Drinking Places (Alcoholic Beverages)');
-INSERT INTO sic (code,description) VALUES ('72241','Drinking Places (Alcoholic Beverages)');
-INSERT INTO sic (code,description) VALUES ('722410','Drinking Places (Alcoholic Beverages)');
-INSERT INTO sic (code,description) VALUES ('81','Other Services (except Public Administration)');
-INSERT INTO sic (code,description) VALUES ('811','Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('8111','Automotive Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81111','Automotive Mechanical and Electrical Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811111','General Automotive Repair');
-INSERT INTO sic (code,description) VALUES ('811112','Automotive Exhaust System Repair');
-INSERT INTO sic (code,description) VALUES ('811113','Automotive Transmission Repair');
-INSERT INTO sic (code,description) VALUES ('811118','Other Automotive Mechanical and Electrical Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81112','Automotive Body, Paint, Interior, and Glass Repair');
-INSERT INTO sic (code,description) VALUES ('811121','Automotive Body, Paint, and Interior Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811122','Automotive Glass Replacement Shops');
-INSERT INTO sic (code,description) VALUES ('81119','Other Automotive Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811191','Automotive Oil Change and Lubrication Shops');
-INSERT INTO sic (code,description) VALUES ('811192','Car Washes');
-INSERT INTO sic (code,description) VALUES ('811198','All Other Automotive Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('8112','Electronic and Precision Equipment Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81121','Electronic and Precision Equipment Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811211','Consumer Electronics Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811212','Computer and Office Machine Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811213','Communication Equipment Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811219','Other Electronic and Precision Equipment Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('8113','Commercial and Industrial Machinery and Equipment (except Automotive and Electronic) Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81131','Commercial and Industrial Machinery and Equipment (except Automotive and Electronic) Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811310','Commercial and Industrial Machinery and Equipment (except Automotive and Electronic) Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('8114','Personal and Household Goods Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81141','Home and Garden Equipment and Appliance Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811411','Home and Garden Equipment Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811412','Appliance Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('81142','Reupholstery and Furniture Repair');
-INSERT INTO sic (code,description) VALUES ('811420','Reupholstery and Furniture Repair');
-INSERT INTO sic (code,description) VALUES ('81143','Footwear and Leather Goods Repair');
-INSERT INTO sic (code,description) VALUES ('811430','Footwear and Leather Goods Repair');
-INSERT INTO sic (code,description) VALUES ('81149','Other Personal and Household Goods Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('811490','Other Personal and Household Goods Repair and Maintenance');
-INSERT INTO sic (code,description) VALUES ('812','Personal and Laundry Services');
-INSERT INTO sic (code,description) VALUES ('8121','Personal Care Services');
-INSERT INTO sic (code,description) VALUES ('81211','Hair, Nail, and Skin Care Services');
-INSERT INTO sic (code,description) VALUES ('812111','Barber Shops');
-INSERT INTO sic (code,description) VALUES ('812112','Beauty Salons');
-INSERT INTO sic (code,description) VALUES ('812113','Nail Salons');
-INSERT INTO sic (code,description) VALUES ('81219','Other Personal Care Services');
-INSERT INTO sic (code,description) VALUES ('812191','Diet and Weight Reducing Centers');
-INSERT INTO sic (code,description) VALUES ('812199','Other Personal Care Services');
-INSERT INTO sic (code,description) VALUES ('8122','Death Care Services');
-INSERT INTO sic (code,description) VALUES ('81221','Funeral Homes and Funeral Services');
-INSERT INTO sic (code,description) VALUES ('812210','Funeral Homes and Funeral Services');
-INSERT INTO sic (code,description) VALUES ('81222','Cemeteries and Crematories');
-INSERT INTO sic (code,description) VALUES ('812220','Cemeteries and Crematories');
-INSERT INTO sic (code,description) VALUES ('8123','Drycleaning and Laundry Services');
-INSERT INTO sic (code,description) VALUES ('81231','Coin-Operated Laundries and Drycleaners');
-INSERT INTO sic (code,description) VALUES ('812310','Coin-Operated Laundries and Drycleaners');
-INSERT INTO sic (code,description) VALUES ('81232','Drycleaning and Laundry Services (except Coin-Operated)');
-INSERT INTO sic (code,description) VALUES ('812320','Drycleaning and Laundry Services (except Coin-Operated)');
-INSERT INTO sic (code,description) VALUES ('81233','Linen and Uniform Supply');
-INSERT INTO sic (code,description) VALUES ('812331','Linen Supply');
-INSERT INTO sic (code,description) VALUES ('812332','Industrial Launderers');
-INSERT INTO sic (code,description) VALUES ('8129','Other Personal Services');
-INSERT INTO sic (code,description) VALUES ('81291','Pet Care (except Veterinary) Services');
-INSERT INTO sic (code,description) VALUES ('812910','Pet Care (except Veterinary) Services');
-INSERT INTO sic (code,description) VALUES ('81292','Photofinishing');
-INSERT INTO sic (code,description) VALUES ('812921','Photofinishing Laboratories (except One-Hour)');
-INSERT INTO sic (code,description) VALUES ('812922','One-Hour Photofinishing');
-INSERT INTO sic (code,description) VALUES ('81293','Parking Lots and Garages');
-INSERT INTO sic (code,description) VALUES ('812930','Parking Lots and Garages');
-INSERT INTO sic (code,description) VALUES ('81299','All Other Personal Services');
-INSERT INTO sic (code,description) VALUES ('812990','All Other Personal Services');
-INSERT INTO sic (code,description) VALUES ('813','Religious, Grantmaking, Civic, Professional, and Similar Organizations');
-INSERT INTO sic (code,description) VALUES ('8131','Religious Organizations');
-INSERT INTO sic (code,description) VALUES ('81311','Religious Organizations');
-INSERT INTO sic (code,description) VALUES ('813110','Religious Organizations');
-INSERT INTO sic (code,description) VALUES ('8132','Grantmaking and Giving Services');
-INSERT INTO sic (code,description) VALUES ('81321','Grantmaking and Giving Services');
-INSERT INTO sic (code,description) VALUES ('813211','Grantmaking Foundations');
-INSERT INTO sic (code,description) VALUES ('813212','Voluntary Health Organizations');
-INSERT INTO sic (code,description) VALUES ('813219','Other Grantmaking and Giving Services');
-INSERT INTO sic (code,description) VALUES ('8133','Social Advocacy Organizations');
-INSERT INTO sic (code,description) VALUES ('81331','Social Advocacy Organizations');
-INSERT INTO sic (code,description) VALUES ('813311','Human Rights Organizations');
-INSERT INTO sic (code,description) VALUES ('813312','Environment, Conservation and Wildlife Organizations');
-INSERT INTO sic (code,description) VALUES ('813319','Other Social Advocacy Organizations');
-INSERT INTO sic (code,description) VALUES ('8134','Civic and Social Organizations');
-INSERT INTO sic (code,description) VALUES ('81341','Civic and Social Organizations');
-INSERT INTO sic (code,description) VALUES ('813410','Civic and Social Organizations');
-INSERT INTO sic (code,description) VALUES ('8139','Business, Professional, Labor, Political, and Similar Organizations');
-INSERT INTO sic (code,description) VALUES ('81391','Business Associations');
-INSERT INTO sic (code,description) VALUES ('813910','Business Associations');
-INSERT INTO sic (code,description) VALUES ('81392','Professional Organizations');
-INSERT INTO sic (code,description) VALUES ('813920','Professional Organizations');
-INSERT INTO sic (code,description) VALUES ('81393','Labor Unions and Similar Labor Organizations');
-INSERT INTO sic (code,description) VALUES ('813930','Labor Unions and Similar Labor Organizations');
-INSERT INTO sic (code,description) VALUES ('81394','Political Organizations');
-INSERT INTO sic (code,description) VALUES ('813940','Political Organizations');
-INSERT INTO sic (code,description) VALUES ('81399','Other Similar Organizations (except Business, Professional, Labor, and Political Organizations)');
-INSERT INTO sic (code,description) VALUES ('813990','Other Similar Organizations (except Business, Professional, Labor, and Political Organizations)');
-INSERT INTO sic (code,description) VALUES ('814','Private Households');
-INSERT INTO sic (code,description) VALUES ('8141','Private Households');
-INSERT INTO sic (code,description) VALUES ('81411','Private Households');
-INSERT INTO sic (code,description) VALUES ('814110','Private Households');
-INSERT INTO sic (code,description) VALUES ('92','Public Administration');
-INSERT INTO sic (code,description) VALUES ('921','Executive, Legislative, and Other General Government Support');
-INSERT INTO sic (code,description) VALUES ('9211','Executive, Legislative, and Other General Government Support');
-INSERT INTO sic (code,description) VALUES ('92111','Executive Offices');
-INSERT INTO sic (code,description) VALUES ('921110','Executive Offices');
-INSERT INTO sic (code,description) VALUES ('92112','Legislative Bodies');
-INSERT INTO sic (code,description) VALUES ('921120','Legislative Bodies');
-INSERT INTO sic (code,description) VALUES ('92113','Public Finance Activities');
-INSERT INTO sic (code,description) VALUES ('921130','Public Finance Activities');
-INSERT INTO sic (code,description) VALUES ('92114','Executive and Legislative Offices, Combined');
-INSERT INTO sic (code,description) VALUES ('921140','Executive and Legislative Offices, Combined');
-INSERT INTO sic (code,description) VALUES ('92115','American Indian and Alaska Native Tribal Governments');
-INSERT INTO sic (code,description) VALUES ('921150','American Indian and Alaska Native Tribal Governments');
-INSERT INTO sic (code,description) VALUES ('92119','Other General Government Support');
-INSERT INTO sic (code,description) VALUES ('921190','Other General Government Support');
-INSERT INTO sic (code,description) VALUES ('922','Justice, Public Order, and Safety Activities');
-INSERT INTO sic (code,description) VALUES ('9221','Justice, Public Order, and Safety Activities');
-INSERT INTO sic (code,description) VALUES ('92211','Courts');
-INSERT INTO sic (code,description) VALUES ('922110','Courts');
-INSERT INTO sic (code,description) VALUES ('92212','Police Protection');
-INSERT INTO sic (code,description) VALUES ('922120','Police Protection');
-INSERT INTO sic (code,description) VALUES ('92213','Legal Counsel and Prosecution');
-INSERT INTO sic (code,description) VALUES ('922130','Legal Counsel and Prosecution');
-INSERT INTO sic (code,description) VALUES ('92214','Correctional Institutions');
-INSERT INTO sic (code,description) VALUES ('922140','Correctional Institutions');
-INSERT INTO sic (code,description) VALUES ('92215','Parole Offices and Probation Offices');
-INSERT INTO sic (code,description) VALUES ('922150','Parole Offices and Probation Offices');
-INSERT INTO sic (code,description) VALUES ('92216','Fire Protection');
-INSERT INTO sic (code,description) VALUES ('922160','Fire Protection');
-INSERT INTO sic (code,description) VALUES ('92219','Other Justice, Public Order, and Safety Activities');
-INSERT INTO sic (code,description) VALUES ('922190','Other Justice, Public Order, and Safety Activities');
-INSERT INTO sic (code,description) VALUES ('923','Administration of Human Resource Programs');
-INSERT INTO sic (code,description) VALUES ('9231','Administration of Human Resource Programs');
-INSERT INTO sic (code,description) VALUES ('92311','Administration of Education Programs');
-INSERT INTO sic (code,description) VALUES ('923110','Administration of Education Programs');
-INSERT INTO sic (code,description) VALUES ('92312','Administration of Public Health Programs');
-INSERT INTO sic (code,description) VALUES ('923120','Administration of Public Health Programs');
-INSERT INTO sic (code,description) VALUES ('92313','Administration of Human Resource Programs (except Education, Public Health, and Veterans\' Affairs Programs)');
-INSERT INTO sic (code,description) VALUES ('923130','Administration of Human Resource Programs (except Education, Public Health, and Veterans\' Affairs Programs)');
-INSERT INTO sic (code,description) VALUES ('92314','Administration of Veterans\' Affairs');
-INSERT INTO sic (code,description) VALUES ('923140','Administration of Veterans\' Affairs');
-INSERT INTO sic (code,description) VALUES ('924','Administration of Environmental Quality Programs');
-INSERT INTO sic (code,description) VALUES ('9241','Administration of Environmental Quality Programs');
-INSERT INTO sic (code,description) VALUES ('92411','Administration of Air and Water Resource and Solid Waste Management Programs');
-INSERT INTO sic (code,description) VALUES ('924110','Administration of Air and Water Resource and Solid Waste Management Programs');
-INSERT INTO sic (code,description) VALUES ('92412','Administration of Conservation Programs');
-INSERT INTO sic (code,description) VALUES ('924120','Administration of Conservation Programs');
-INSERT INTO sic (code,description) VALUES ('925','Administration of Housing Programs, Urban Planning, and Community Development');
-INSERT INTO sic (code,description) VALUES ('9251','Administration of Housing Programs, Urban Planning, and Community Development');
-INSERT INTO sic (code,description) VALUES ('92511','Administration of Housing Programs');
-INSERT INTO sic (code,description) VALUES ('925110','Administration of Housing Programs');
-INSERT INTO sic (code,description) VALUES ('92512','Administration of Urban Planning and Community and Rural Development');
-INSERT INTO sic (code,description) VALUES ('925120','Administration of Urban Planning and Community and Rural Development');
-INSERT INTO sic (code,description) VALUES ('926','Administration of Economic Programs');
-INSERT INTO sic (code,description) VALUES ('9261','Administration of Economic Programs');
-INSERT INTO sic (code,description) VALUES ('92611','Administration of General Economic Programs');
-INSERT INTO sic (code,description) VALUES ('926110','Administration of General Economic Programs');
-INSERT INTO sic (code,description) VALUES ('92612','Regulation and Administration of Transportation Programs');
-INSERT INTO sic (code,description) VALUES ('926120','Regulation and Administration of Transportation Programs');
-INSERT INTO sic (code,description) VALUES ('92613','Regulation and Administration of Communications, Electric, Gas, and Other Utilities');
-INSERT INTO sic (code,description) VALUES ('926130','Regulation and Administration of Communications, Electric, Gas, and Other Utilities');
-INSERT INTO sic (code,description) VALUES ('92614','Regulation of Agricultural Marketing and Commodities');
-INSERT INTO sic (code,description) VALUES ('926140','Regulation of Agricultural Marketing and Commodities');
-INSERT INTO sic (code,description) VALUES ('92615','Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors');
-INSERT INTO sic (code,description) VALUES ('926150','Regulation, Licensing, and Inspection of Miscellaneous Commercial Sectors');
-INSERT INTO sic (code,description) VALUES ('927','Space Research and Technology');
-INSERT INTO sic (code,description) VALUES ('9271','Space Research and Technology');
-INSERT INTO sic (code,description) VALUES ('92711','Space Research and Technology');
-INSERT INTO sic (code,description) VALUES ('927110','Space Research and Technology');
-INSERT INTO sic (code,description) VALUES ('928','National Security and International Affairs');
-INSERT INTO sic (code,description) VALUES ('9281','National Security and International Affairs');
-INSERT INTO sic (code,description) VALUES ('92811','National Security');
-INSERT INTO sic (code,description) VALUES ('928110','National Security');
-INSERT INTO sic (code,description) VALUES ('92812','International Affairs');
-INSERT INTO sic (code,description) VALUES ('928120','International Affairs');
diff --git a/sql-ledger/sql/Norwegian_Default-chart.sql b/sql-ledger/sql/Norwegian_Default-chart.sql
deleted file mode 100644
index 6014b56..0000000
--- a/sql-ledger/sql/Norwegian_Default-chart.sql
+++ /dev/null
@@ -1,297 +0,0 @@
--- Default chart of accounts
--- charset: ISO-8859-1
--- http://www.nif.idrett.no/ftp/Lover/doc/kontoplan.htm
--- http://www.legemiddelverket.no/rundskriv/frahtil/1999/ik-1499.htm
--- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('10', 'Immaterielle eiendeler', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000', 'Forskning og utvikling', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1030', 'Patenter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1040', 'Lisenser', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1050', 'Varemerker', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060', 'Andre rettigheter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1070', 'Utsatt skattefordel', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1080', 'Goodwill', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11', 'Varige driftsmidler', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1100', 'Bygninger', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1120', 'Bygningsmessige anlegg', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1140', 'Jord- og skogbrukseiendommer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1150', 'Tomter og andre grunnarealer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12', 'Transportmidler, inventar, maskiner o.l.', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200', 'Maskiner og anlegg', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1210', 'Maskiner og anlegg under utførelse', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1230', 'Biler', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1240', 'Andre transportmidler', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1250', 'Inventar', 'A','', 'A', 'IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1260', 'Fast bygningsinventar med annen avskrivning', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1270', 'Verktøy mv.', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1280', 'Kontormaskiner', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13', 'Finansielle anleggsmidler', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1300', 'Investeringer i datterselskaper', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1350', 'Investeringer i aksjer og andeler', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1360', 'Obligasjoner', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1370', 'Fordringer på eiere, styremedlemmer mv.', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1380', 'Fordringer på ansatte', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link)
-values ('1390', 'Andre langsiktige fordringer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link)
-values ('14', 'Varer', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1400', 'Råvarer og innkjøpte halvfabrikata', 'A','', 'A', 'IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1420', 'Varer under tilvirkning', 'A','', 'A', 'IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1440', 'Ferdige egentilvirkede varer', 'A','', 'A', 'IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1460', 'Innkjøpte varer for videresalg', 'A','', 'A', 'IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1480', 'Forskuddsbetaling til leverandører', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('15', 'Fordringer', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500', 'Kundefordringer', 'A','', 'A', 'AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520', 'Andre kortsiktige fordringer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530', 'Opptjente, ikke fakturerte driftsinntekter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1570', 'Andre kortsiktige fordringer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1580', 'Avsetning tap på fordringer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('17', 'Andre fordringer', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1700', 'Forskuddsbetalt leie', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1710', 'Forskuddsbetalt rente', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1720', 'Forskuddsbetalt lønn', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1750', 'Påløpte leieinntekter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1760', 'Påløpte renteinntekter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1780', 'Krav på innbetaling av selskapskapital', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('18', 'Investeringer', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800', 'Aksjer & andeler i foretak i samme kons.', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1810', 'Markesdbaserte aksjer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820', 'Andre aksjer', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1830', 'Markedsbaserte obligasjoner', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840', 'Andre obligasjoner', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1850', 'Markedsbaserte sertifikater', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1860', 'Andre sertifikater', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1880', 'Andre finansielle instrumenter', 'A','', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19', 'Bankinnskudd, kontanter o.l.', 'H', '', 'A', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1900', 'Kontanter', 'A','', 'A', 'AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1910', 'Kasse', 'A','', 'A', 'AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1920', 'Bankinnskudd', 'A','', 'A', 'AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1950', 'Bankinnskudd for skattetrekk', 'A','', 'A', 'AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('20', 'Egenkapital', 'H', '', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('200', 'Innskutt egenkapital', 'H', '', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000', 'Aksjekapital', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010', 'Egne aksjer', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2020', 'Overkursfond', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('204', 'Opptj. egenkapital', 'H', '', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2040', 'Fond for vurderingsforskjeller', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2050', 'Annen egenkapital', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2080', 'Udisponert overskudd', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2090', 'Udekket tap', 'A','', 'Q', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('210', 'Avsetninger for forpliktelser', 'H', '', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100', 'Pensjonsforpliktelser', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2120', 'Utsatt skatt', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2140', 'Avsetn. for garanti- & serviceforpl.', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2180', 'Andre avsetninger for forpiktelser', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220', 'Annen langsiktig gjeld', 'H', '', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2200', 'Konvertible lån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210', 'Obligsjonslån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2220', 'Gjeld til kredittinstitusjoner', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2240', 'Pantelån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2260', 'Gjeld til selskap i samme konsern', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2270', 'Andre valutalån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('230', 'Kortsiktig gjeld', 'H', '', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2300', 'Konvertible lån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320', 'Sertifikatlån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2340', 'Andre valutalån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2360', 'Byggelån', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2380', 'Kassakreditt', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2400', 'Leverandørgjeld', 'A','', 'L', 'AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2500', 'Avsatt betalbar skatt', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2510', 'Skattebetaling', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600', 'Skattetrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620', 'Påleggstrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2630', 'Bidragstrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2640', 'Trygdetrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2650', 'Forsikringstrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2660', 'Fagforeningstrekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2690', 'Andre trekk', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2710', 'Utgående 24% mva', 'A','', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2715', 'Utgående 12% mva', 'A','', 'L', 'AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2717', 'Beregnet avgift utlandet', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2720', 'Inngående 24% mva', 'A','', 'L', 'AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2725', 'Inngående 12% mva', 'A','', 'L', 'AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2745', 'Grunnlag 1 tjenester utlandet', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2746', 'Grunnlag 2 tjenester utlandet', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2750', 'Oppgjørskonto merverdiavgift', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2770', 'Påløpt arbeidsgiveravgift', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2780', 'Skyldig arbeidsgiveravgift', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2781', 'Arb.giv.avg. pål. feriep.', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2800', 'Avsatt utbytte', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2900', 'Forskudd fra kunder', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2910', 'Skyldig lønn', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2920', 'Skyldig feriepenger', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2930', 'Gjeld til ansatte og aksjonærer', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2950', 'Påløpte renter', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2960', 'Påløpte kostn. og forskuddsbet. inskudd', 'A','', 'L', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3', 'Salgs- og driftsinntekter', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3010', 'Salgsinntekter, 24% mva', 'A','', 'I', 'AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3019', 'Frakt', 'A','', 'I', 'IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3020', 'Salgsinntekter, 12% mva', 'A','', 'I', 'AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3060', 'Uttak av varer', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3080', 'Rabatter og andre salgsinntektsreduksjon', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3099', 'Miljøavgift', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3110', 'Salgsinntekter, avgiftsfrie', 'A','', 'I', 'AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3160', 'Uttak av varer', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3180', 'Rabatter og andre salgsinntektsreduksjon', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300', 'Spes. offent. avg. tilvirk./solgte varer', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3400', 'Spes. offent. avg. tilvirk./solgte varer', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3440', 'Spes. offentlige tilskudd for tjenester', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500', 'Uopptjente inntekter garanti', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3510', 'Uopptjente inntekter service', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600', 'Leieinntekter fast eiendom', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3610', 'Leieinntekter andre varige driftsmidler', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3620', 'Andre leieinntekter', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3700', 'Provisjonsinntekter', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3800', 'Gevinst ved avgang av anleggsmidler', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3900', 'Andre driftsrelaterte inntekter', 'A','', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4', 'Varekostnad', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('40', 'Råvarer og halvfabrikata', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4010', 'Innkjøp varer, avgiftspliktig 24% mva', 'A','', 'E', 'AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020', 'Innkjøp varer, avgiftspliktig 12% mva', 'A','', 'E', 'AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4060', 'Innkjøpsprisreduksjoner', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4070', 'Frakt, toll og spedisjon', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4090', 'Beholdningsendring', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4110', 'Innkjøp varer, avgiftsfritt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4160', 'Frakt, toll og spedisjon', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4170', 'Frakt, toll og spedisjon, avgiftsfritt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4180', 'Innkjøpsprisreduksjoner', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4190', 'Beholdningsendring', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('43', 'Varer for videresalg', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4310', 'Innkjøp av varer for videresalg, 24% mva', 'A','', 'E', 'AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320', 'Innkjøp av varer for videresalg, 12% mva', 'A','', 'E', 'AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4360', 'Frakt, toll m.m. vedr. innkjøp av varer for videresalg', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4370', 'Rabatter m.m. vedr. innkjøp av varer for videresalg', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4380', 'Varekostnad', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4390', 'Beholdningsendring varer for videresalg', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5', 'Lønnskostnader', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010', 'Faste lønninger', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5090', 'Periodiseringskonto lønn', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5190', 'Påløpne feriepenger', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5210', 'Fri bil', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5220', 'Fri telefon', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5230', 'Fri avis', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5240', 'Fri losji og bolig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5250', 'Rentefordel', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5260', 'Smusstillegg', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5280', 'Andre fordeler i arbeidsforhold', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5291', 'Motkonto for gruppe 52', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5330', 'Godtgj. til styre- og bedriftsforsamling', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410', 'Arbeidsgiveravgift', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5411', 'Arb.giv.avg. pål. feriep.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420', 'Innberetningspliktige pensjonskostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430', 'Premie pensjonsordning', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5500', 'Andre kostnadsgodtgjørelser', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5510', 'Overtidsmat etter regning', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5520', 'Kantinekostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800', 'Refusjon av sykepenger', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5820', 'Refusjon av arbeidsgiveravgift', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5920', 'Yrkesskadeforsikring', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5930', 'Andre ikke arb.giv.avg.pliktige forsikr.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5950', 'Personalforsikring', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5960', 'Gaver til ansatte', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6', 'Andre driftskostnader, av- og nedskrivninger', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6000', 'Avskrivning på bygn. & annen fast eiend.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6010', 'Avskrivning på transportmidler, maskiner', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6020', 'Avskrivning på immaterielle eiendeler', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6050', 'Nedskr. varige driftsmidl. & imat. eiend', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6100', 'Frakter, transportkostnader og forsikring', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6110', 'Toll og spedisjonskostnader ved forsend', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62', 'Energi, brensel o.l. vedr. produksjon', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6200', 'Elektrisitet', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6260', 'Vann', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('63', 'Kostnader. vedr. lokaler', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6300', 'Leie lokaler', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6320', 'Renovasjon, vann, avløp mv.', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6340', 'Lys, varme', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6360', 'Renhold', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64', 'Leie av maskiner, inventar o.l.', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6400', 'Leie av driftsmidler', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6430', 'Leie andre kontormaskiner', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6540', 'Inventar', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6550', 'Driftsmaterialer', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6560', 'Rekvisita', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6570', 'Arbeidsklær og verneutstyr', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6600', 'Reparasjoner og vedlikehold bygninger', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6620', 'Reparasjoner og vedlikehold utstyr', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6700', 'Revisjonshonorar', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6720', 'Honorar for økonomisk & juridisk bistand', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6750', 'Honorar regnskapsfører', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6800', 'Kontorrekvisita', 'A','', 'E', 'AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6820', 'Trykksaker', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6840', 'Aviser, tidsskrifter, bøker mv.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6860', 'Møter, kurs, oppdatering mv.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6900', 'Telefon', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6940', 'Porto', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7000', 'Drivstoff', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7020', 'Vedlikehold', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7040', 'Forsikringer', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7100', 'Bilgodtgjørelse, oppgavepliktig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7105', 'Øreavrunding', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7130', 'Reisekostnader, oppgavepliktige', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7140', 'Reisekostnader, ikke oppgavepliktig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7150', 'Diettkostnader, oppgaveplikig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7160', 'Diettkostnader, ikke oppgavepliktig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7200', 'Provisjonskostnader, oppgavepliktige', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7210', 'Provisjonskostnader, ikke oppgavepliktig', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7300', 'Salgskostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7320', 'Reklamekostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7350', 'Representasjon, fradragsberettiget', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7360', 'Representasjon, ikke fradragsberettiget', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7400', 'Kontingenter og gaver', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7500', 'Forsikringspremier', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7550', 'Garanti- og servicekostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7600', 'Lisenesavgifter og royalties', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7700', 'Styre- og bedriftsforsamlingsmøter', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7710', 'Generalforsamling', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7730', 'Kostnader ved egne aksjer', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7750', 'Eiendoms- og festeavgift', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7770', 'Bank og kortgebyrer', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7800', 'Tap ved avgang anleggsmidler', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7820', 'Innkommet på tidligere nedskrevne fordri', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7830', 'Tap på fordringer', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7850', 'Tap pga. brannskade', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7860', 'Tap på kontrakter', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7900', 'Beholdningsendring anlegg under utførels', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7990', 'Andre driftskostnader', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8', 'Finansinntekter og -kostnader, skatter, m.m.', 'H', '', 'I', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8000', 'Inntekter på investeringer i datterselskap', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8040', 'Renteinntekter, skattefrie', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8050', 'Annen renteinntekt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8060', 'Purregebyr, kunder', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8070', 'Renteinntekter, kunder', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8080', 'Agio gevinst', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8090', 'Andre finansinntekter', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8100', 'Verdired. av markedsbas.finans. omløps.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8110', 'Nedskrivn. av andre finansielle omløps.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8120', 'Nedskrivning av finansielle anleggsmidl.', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8140', 'Rentekostnader, ikke fradragsberettigede', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8150', 'Annen rentekostnad', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8160', 'Purregebyr. leverandør', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8180', 'Agio tap', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8300', 'Betalbar skatt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8320', 'Utsatt skatt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8350', 'Skattekostnad', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8600', 'Betalbar skatt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8620', 'Utsatt skatt', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('880', 'Fond for vurderingsforskjeller', 'H', '', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8800', 'Årsresultat', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8900', 'Overføringer fond for vurderingsforskjel', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('892', 'Utbytte', 'H', '', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8920', 'Avsatt utbytte/renter på grunnfondsbevis', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('893', 'Konsernbidrag', 'H', '', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8930', 'Konsernbidrag', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('891', 'Annen egenkapital', 'H', '', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8910', 'Overføringer felleseid andelskapital for', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8940', 'Aksjonærbidrag', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8950', 'Fondsemisjon', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8960', 'Overføringer annen egenkapital', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8980', 'Avsatt til fri egenkapital', 'A','', 'E', '');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8990', 'Udekket tap', 'A','', 'E', '');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2710'),0.24);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2715'),0.12);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2720'),0.24);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2725'),0.12);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1250'), income_accno_id = (select id from chart where accno = '3010'), expense_accno_id = (select id from chart where accno = '4010'), fxgain_accno_id = (select id from chart where accno = '8080'), fxloss_accno_id = (select id from chart where accno = '8180'), curr = 'NOK:EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Oracle-indices.sql b/sql-ledger/sql/Oracle-indices.sql
deleted file mode 100644
index 409b891..0000000
--- a/sql-ledger/sql/Oracle-indices.sql
+++ /dev/null
@@ -1,65 +0,0 @@
-create index acc_trans_trans_id_key on acc_trans (trans_id);
-create index acc_trans_chart_id_key on acc_trans (chart_id);
-create index acc_trans_transdate_key on acc_trans (transdate);
-create index acc_trans_source_key on acc_trans (source);
-create index ap_id_key on ap (id);
-create index ap_transdate_key on ap (transdate);
-create index ap_invnumber_key on ap (invnumber);
-create index ap_ordnumber_key on ap (ordnumber);
-create index ap_vendor_id_key on ap (vendor_id);
-create index ap_employee_id_key on ap (employee_id);
-create index ap_quonumber_key on ap (quonumber);
-create index ar_id_key on ar (id);
-create index ar_transdate_key on ar (transdate);
-create index ar_invnumber_key on ar (invnumber);
-create index ar_ordnumber_key on ar (ordnumber);
-create index ar_customer_id_key on ar (customer_id);
-create index ar_employee_id_key on ar (employee_id);
-create index ar_quonumber_key on ar (quonumber);
-create index assembly_id_key on assembly (id);
-create index chart_id_key on chart (id);
-create unique index chart_accno_key on chart (accno);
-create index chart_category_key on chart (category);
-create index chart_link_key on chart (link);
-create index chart_gifi_accno_key on chart (gifi_accno);
-create index customer_id_key on customer (id);
-create index customer_customer_id_key on customertax (customer_id);
-create index customer_customernumber_key on customer (customernumber);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
-create index employee_id_key on employee (id);
-create unique index employee_login_key on employee (login);
-create index employee_name_key on employee (name);
-create index exchangerate_ct_key on exchangerate (curr, transdate);
-create unique index gifi_accno_key on gifi (accno);
-create index gl_id_key on gl (id);
-create index gl_transdate_key on gl (transdate);
-create index gl_reference_key on gl (reference);
-create index gl_description_key on gl (description);
-create index gl_employee_id_key on gl (employee_id);
-create index invoice_id_key on invoice (id);
-create index invoice_trans_id_key on invoice (trans_id);
-create index makemodel_parts_id_key on makemodel (parts_id);
-create index makemodel_make_key on makemodel (make);
-create index makemodel_model_key on makemodel (model);
-create index oe_id_key on oe (id);
-create index oe_transdate_key on oe (transdate);
-create index oe_ordnumber_key on oe (ordnumber);
-create index oe_employee_id_key on oe (employee_id);
-create index orderitems_trans_id_key on orderitems (trans_id);
-create index parts_id_key on parts (id);
-create index parts_partnumber_key on parts (partnumber);
-create index parts_description_key on parts (description);
-create index partstax_parts_id_key on partstax (parts_id);
-create index vendor_id_key on vendor (id);
-create index vendor_name_key on vendor (name);
-create index vendor_vendornumber_key on vendor (vendornumber);
-create index vendor_contact_key on vendor (contact);
-create index vendortax_vendor_id_key on vendortax (vendor_id);
-create index shipto_trans_id_key on shipto (trans_id);
-create index project_id_key on project (id);
-create unique index projectnumber_key on project (projectnumber);
-create index partsgroup_id_key on partsgroup (id);
-create unique index partsgroup_key on partsgroup (partsgroup);
-create index status_trans_id_key on status (trans_id);
-create index department_id_key on department (id);
diff --git a/sql-ledger/sql/Oracle-tables.sql b/sql-ledger/sql/Oracle-tables.sql
deleted file mode 100644
index 9bd97ce..0000000
--- a/sql-ledger/sql/Oracle-tables.sql
+++ /dev/null
@@ -1,424 +0,0 @@
--- Oracle-tables.sql
--- Paulo Rodrigues: added functions and triggers, Oct. 31, 2001
---
--- Modified for use with SL 2.0 and Oracle 9i2, Dec 13, 2002
--- Updated to 2.3.0, Dec 18, 2003
---
-ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
---
-CREATE SEQUENCE id START WITH 10000 INCREMENT BY 1 MAXVALUE 2147483647 MINVALUE 1 CACHE 2;
-SELECT ID.NEXTVAL FROM DUAL;
---
-CREATE SEQUENCE invoiceid START WITH 1 INCREMENT BY 1 MAXVALUE 2147483647 MINVALUE 1 CACHE 2;
-SELECT INVOICEID.NEXTVAL FROM DUAL;
---
-CREATE TABLE makemodel (
- parts_id INTEGER,
- make VARCHAR2(64),
- model VARCHAR2(64)
-);
---
-CREATE TABLE gl (
- id INTEGER,
- reference VARCHAR2(50),
- description VARCHAR2(100),
- transdate DATE DEFAULT SYSDATE,
- employee_id INTEGER,
- notes VARCHAR2(4000),
- department_id INTEGER DEFAULT 0
-);
---
-CREATE TABLE chart (
- id INTEGER,
- accno VARCHAR2(20) NOT NULL,
- description VARCHAR2(100),
- charttype CHAR(1) DEFAULT 'A',
- category CHAR(1),
- link VARCHAR2(100),
- gifi_accno VARCHAR2(20)
-);
---
-CREATE TABLE gifi (
- accno VARCHAR2(20),
- description VARCHAR2(100)
-);
---
-CREATE TABLE defaults (
- inventory_accno_id INTEGER,
- income_accno_id INTEGER,
- expense_accno_id INTEGER,
- fxgain_accno_id INTEGER,
- fxloss_accno_id INTEGER,
- invnumber VARCHAR2(30),
- sonumber VARCHAR2(30),
- yearend VARCHAR2(5),
- weightunit VARCHAR2(5),
- businessnumber VARCHAR2(30),
- version VARCHAR2(8),
- curr VARCHAR2(500),
- closedto DATE,
- revtrans CHAR(1) DEFAULT '0',
- ponumber VARCHAR2(30),
- sqnumber VARCHAR2(30),
- rfqnumber VARCHAR2(30)
-);
-INSERT INTO defaults (version) VALUES ('2.3.0');
---
-CREATE TABLE acc_trans (
- trans_id INTEGER,
- chart_id INTEGER,
- amount FLOAT,
- transdate DATE DEFAULT SYSDATE,
- source VARCHAR2(20),
- cleared CHAR(1) DEFAULT '0',
- fx_transaction CHAR(1) DEFAULT '0',
- project_id INTEGER
-);
---
-CREATE TABLE invoice (
- id INTEGER,
- trans_id INTEGER,
- parts_id INTEGER,
- description VARCHAR2(4000),
- qty FLOAT,
- allocated FLOAT,
- sellprice FLOAT,
- fxsellprice FLOAT,
- discount FLOAT,
- assemblyitem CHAR(1) DEFAULT '0',
- unit VARCHAR2(5),
- project_id INTEGER,
- deliverydate DATE,
- serialnumber VARCHAR2(200)
-);
---
-CREATE TABLE vendor (
- id INTEGER,
- name VARCHAR2(35),
- addr1 VARCHAR2(35),
- addr2 VARCHAR2(35),
- addr3 VARCHAR2(35),
- addr4 VARCHAR2(35),
- contact VARCHAR2(35),
- phone VARCHAR2(20),
- fax VARCHAR2(20),
- email VARCHAR2(50),
- notes VARCHAR2(4000),
- terms INTEGER DEFAULT 0,
- taxincluded CHAR(1),
- vendornumber VARCHAR2(40),
- cc VARCHAR2(50),
- bcc VARCHAR2(50)
-);
---
-CREATE TABLE customer (
- id INTEGER,
- name VARCHAR2(35),
- addr1 VARCHAR2(35),
- addr2 VARCHAR2(35),
- addr3 VARCHAR2(35),
- addr4 VARCHAR2(35),
- contact VARCHAR2(35),
- phone VARCHAR2(20),
- fax VARCHAR2(20),
- email VARCHAR2(50),
- notes VARCHAR2(4000),
- discount FLOAT,
- taxincluded CHAR(1),
- creditlimit FLOAT,
- terms INTEGER DEFAULT 0,
- customernumber VARCHAR2(40),
- cc VARCHAR2(50),
- bcc VARCHAR2(50)
-);
---
-CREATE TABLE parts (
- id INTEGER,
- partnumber VARCHAR2(30),
- description VARCHAR2(4000),
- unit VARCHAR2(5),
- listprice FLOAT,
- sellprice FLOAT,
- lastcost FLOAT,
- priceupdate DATE DEFAULT SYSDATE,
- weight FLOAT,
- onhand FLOAT DEFAULT 0,
- notes VARCHAR2(4000),
- makemodel CHAR(1) DEFAULT '0',
- assembly CHAR(1) DEFAULT '0',
- alternate CHAR(1) DEFAULT '0',
- rop FLOAT,
- inventory_accno_id INTEGER,
- income_accno_id INTEGER,
- expense_accno_id INTEGER,
- bin VARCHAR2(20),
- obsolete CHAR(1) DEFAULT '0',
- bom CHAR(1) DEFAULT '0',
- image VARCHAR2(100),
- drawing VARCHAR2(100),
- microfiche VARCHAR2(100),
- partsgroup_id INTEGER
-);
---
-CREATE TABLE assembly (
- id INTEGER,
- parts_id INTEGER,
- qty FLOAT,
- bom char(1)
-);
---
-CREATE TABLE ar (
- id INTEGER,
- invnumber VARCHAR2(30),
- transdate DATE DEFAULT SYSDATE,
- customer_id INTEGER,
- taxincluded CHAR(1),
- amount FLOAT,
- netamount FLOAT,
- paid FLOAT,
- datepaid DATE,
- duedate DATE,
- invoice CHAR(1) DEFAULT '0',
- shippingpoint VARCHAR2(100),
- terms INTEGER DEFAULT 0,
- notes VARCHAR2(4000),
- curr CHAR(3),
- ordnumber VARCHAR2(30),
- employee_id INTEGER,
- till VARCHAR2(20),
- quonumber VARCHAR2(30),
- intnotes VARCHAR2(4000),
- department_id INTEGER DEFAULT 0
-);
---
-CREATE TABLE ap (
- id INTEGER,
- invnumber VARCHAR2(30),
- transdate DATE DEFAULT SYSDATE,
- vendor_id INTEGER,
- taxincluded CHAR(1) DEFAULT '0',
- amount FLOAT,
- netamount FLOAT,
- paid FLOAT,
- datepaid DATE,
- duedate DATE,
- invoice CHAR(1) DEFAULT '0',
- ordnumber VARCHAR2(30),
- curr CHAR(3),
- notes VARCHAR2(4000),
- employee_id INTEGER,
- till VARCHAR2(20),
- quonumber VARCHAR2(30),
- intnotes VARCHAR2(4000),
- department_id INTEGER DEFAULT 0
-);
---
-CREATE TABLE partstax (
- parts_id INTEGER,
- chart_id INTEGER
-);
---
-CREATE TABLE tax (
- chart_id INTEGER,
- rate FLOAT,
- taxnumber VARCHAR2(30)
-);
---
-CREATE TABLE customertax (
- customer_id INTEGER,
- chart_id INTEGER
-);
---
-CREATE TABLE vendortax (
- vendor_id INTEGER,
- chart_id INTEGER
-);
---
-CREATE TABLE oe (
- id INTEGER,
- ordnumber VARCHAR2(30),
- transdate DATE DEFAULT SYSDATE,
- vendor_id INTEGER,
- customer_id INTEGER,
- amount FLOAT,
- netamount FLOAT,
- reqdate DATE,
- taxincluded CHAR(1),
- shippingpoint VARCHAR2(100),
- notes VARCHAR2(4000),
- curr CHAR(3),
- employee_id INTEGER,
- closed CHAR(1) DEFAULT '0',
- quotation CHAR(1) DEFAULT '0',
- quonumber VARCHAR2(30),
- intnotes VARCHAR2(4000),
- department_id INTEGER DEFAULT 0
-);
---
-CREATE TABLE orderitems (
- trans_id INTEGER,
- parts_id INTEGER,
- description VARCHAR2(4000),
- qty FLOAT,
- sellprice FLOAT,
- discount FLOAT,
- unit VARCHAR2(5),
- project_id INTEGER,
- reqdate DATE
-);
---
-CREATE TABLE exchangerate (
- curr CHAR(3),
- transdate DATE,
- buy FLOAT,
- sell FLOAT
-);
---
-CREATE TABLE employee (
- id INTEGER,
- login VARCHAR2(20),
- name VARCHAR2(35),
- addr1 VARCHAR2(35),
- addr2 VARCHAR2(35),
- addr3 VARCHAR2(35),
- addr4 VARCHAR2(35),
- workphone VARCHAR2(20),
- homephone VARCHAR2(20),
- startdate DATE DEFAULT SYSDATE,
- enddate DATE,
- notes VARCHAR2(4000),
- role VARCHAR2(30)
-);
---
-CREATE TABLE shipto (
- trans_id INTEGER,
- shiptoname VARCHAR2(35),
- shiptoaddr1 VARCHAR2(35),
- shiptoaddr2 VARCHAR2(35),
- shiptoaddr3 VARCHAR2(35),
- shiptoaddr4 VARCHAR2(35),
- shiptocontact VARCHAR2(35),
- shiptophone VARCHAR2(20),
- shiptofax VARCHAR2(20),
- shiptoemail VARCHAR2(50)
-);
---
-CREATE TABLE project (
- id INTEGER,
- projectnumber VARCHAR2(50),
- description VARCHAR2(4000)
-);
---
-CREATE TABLE partsgroup (
- id INTEGER,
- partsgroup VARCHAR2(100)
-);
---
-CREATE TABLE status (
- trans_id INTEGER,
- formname VARCHAR2(30),
- printed CHAR(1) DEFAULT 0,
- emailed CHAR(1) DEFAULT 0,
- spoolfile VARCHAR2(20),
- chart_id INTEGER
-);
---
-CREATE TABLE department (
- id INTEGER,
- description VARCHAR2(100),
- role CHAR(1) DEFAULT 'P'
-);
---
--- functions
---
-CREATE OR REPLACE FUNCTION current_date RETURN date AS
-BEGIN
- return(sysdate);--
-END;;
---
--- triggers
---
-CREATE OR REPLACE TRIGGER glid BEFORE INSERT ON gl FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER chartid BEFORE INSERT ON chart FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER invoiceid BEFORE INSERT ON invoice FOR EACH ROW
-BEGIN
- SELECT invoiceid.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER vendorid BEFORE INSERT ON vendor FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER customerid BEFORE INSERT ON customer FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER partsid BEFORE INSERT ON parts FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER arid BEFORE INSERT ON ar FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER apid BEFORE INSERT ON ap FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER oeid BEFORE INSERT ON oe FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER employeeid BEFORE INSERT ON employee FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER projectid BEFORE INSERT ON project FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE OR REPLACE TRIGGER partsgroupid BEFORE INSERT ON partsgroup FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
-FROM DUAL;--
-END;;
---
diff --git a/sql-ledger/sql/Oracle-upgrade-1.8.0-1.8.4.sql b/sql-ledger/sql/Oracle-upgrade-1.8.0-1.8.4.sql
deleted file mode 100644
index a3293a6..0000000
--- a/sql-ledger/sql/Oracle-upgrade-1.8.0-1.8.4.sql
+++ /dev/null
@@ -1,28 +0,0 @@
---
-ALTER TABLE chart ADD gifi_accno VARCHAR2(20);
---
-CREATE TABLE gifi (
- accno VARCHAR2(20),
- description VARCHAR2(100)
-);
---
-CREATE UNIQUE INDEX chart_accno_key ON chart (accno);
---
-CREATE TABLE mtemp (
- parts_id INTEGER,
- name VARCHAR2(100)
-);
-INSERT INTO mtemp SELECT parts_id, name FROM makemodel;
-DROP TABLE makemodel;
-ALTER TABLE mtemp RENAME TO makemodel;
---
-ALTER TABLE defaults ADD closedto DATE;
-ALTER TABLE defaults ADD revtrans CHAR(1);
---
-ALTER TABLE ap ADD notes VARCHAR2(4000);
---
-ALTER TABLE customer ADD businessnumber VARCHAR2(40);
-ALTER TABLE vendor ADD businessnumber VARCHAR2(40);
---
-UPDATE defaults SET version = '1.8.4', revtrans = '0';
---
diff --git a/sql-ledger/sql/Oracle-upgrade-1.8.4-1.8.5.sql b/sql-ledger/sql/Oracle-upgrade-1.8.4-1.8.5.sql
deleted file mode 100644
index d228b9e..0000000
--- a/sql-ledger/sql/Oracle-upgrade-1.8.4-1.8.5.sql
+++ /dev/null
@@ -1,77 +0,0 @@
---
-ALTER TABLE customer ADD (customernumber VARCHAR2(40));
-UPDATE customer SET customernumber = businessnumber;
-ALTER TABLE customer DROP COLUMN businessnumber;
-CREATE INDEX customer_customernumber_key ON customer (customernumber);
---
-ALTER TABLE vendor ADD (vendornumber VARCHAR2(40));
-UPDATE vendor SET vendornumber = businessnumber;
-ALTER TABLE vendor DROP COLUMN businessnumber;
-CREATE INDEX vendor_vendornumber_key ON vendor (vendornumber);
---
-CREATE TABLE employee (
- id INTEGER,
- login VARCHAR2(20),
- name VARCHAR2(35),
- addr1 VARCHAR2(35),
- addr2 VARCHAR2(35),
- addr3 VARCHAR2(35),
- addr4 VARCHAR2(35),
- workphone VARCHAR2(20),
- homephone VARCHAR2(20),
- startdate DATE DEFAULT SYSDATE,
- enddate DATE,
- notes VARCHAR2(4000)
-);
---
-CREATE OR REPLACE TRIGGER employeeid BEFORE INSERT ON employee FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-CREATE INDEX employee_id_key ON employee (id);
-CREATE UNIQUE INDEX employee_login_key ON employee (login);
-CREATE INDEX employee_name_key ON employee (name);
---
-ALTER TABLE gl ADD (employee_id INTEGER);
-CREATE INDEX gl_employee_id_key ON gl (employee_id);
-ALTER TABLE ar ADD (employee_id INTEGER);
-CREATE INDEX ar_employee_id_key ON ar (employee_id);
-ALTER TABLE ap ADD (employee_id INTEGER);
-CREATE INDEX ap_employee_id_key ON ap (employee_id);
-ALTER TABLE oe ADD (employee_id INTEGER);
-CREATE INDEX oe_employee_id_key ON oe (employee_id);
---
-ALTER TABLE invoice ADD (unit VARCHAR2(5));
-ALTER TABLE orderitems ADD (unit VARCHAR2(5));
---
-UPDATE chart SET gifi_accno = '' WHERE gifi_accno = NULL;
-ALTER TABLE chart RENAME TO chartold;
-CREATE TABLE chart (
- id INTEGER,
- accno VARCHAR2(20) NOT NULL,
- description VARCHAR2(100),
- charttype CHAR(1) DEFAULT 'A',
- category CHAR(1),
- link VARCHAR2(100),
- gifi_accno VARCHAR2(20)
-);
-INSERT INTO chart (id, accno, description, charttype, category, link, gifi_accno) SELECT id, accno, description, charttype, category, link, gifi_accno from chartold;
-DROP TABLE chartold;
-CREATE INDEX chart_id_key ON chart (id);
-CREATE UNIQUE INDEX chart_accno_key ON chart (accno);
-CREATE INDEX chart_category_key ON chart (category);
-CREATE INDEX chart_link_key ON chart (link);
-CREATE INDEX chart_gifi_accno_key ON chart (gifi_accno);
---
-ALTER TABLE parts MODIFY inventory_accno_id;
---
-ALTER TABLE defaults ADD (sonumber VARCHAR2(30));
-UPDATE defaults SET sonumber = ordnumber;
-ALTER TABLE defaults DROP COLUMN ordnumber;
-ALTER TABLE defaults ADD (ponumber VARCHAR2(30));
---
-UPDATE defaults SET version = '1.8.5';
---
diff --git a/sql-ledger/sql/Oracle-upgrade-1.8.5-2.0.0.sql b/sql-ledger/sql/Oracle-upgrade-1.8.5-2.0.0.sql
deleted file mode 100644
index 2d2231b..0000000
--- a/sql-ledger/sql/Oracle-upgrade-1.8.5-2.0.0.sql
+++ /dev/null
@@ -1,100 +0,0 @@
---
-alter table customer add (cc VARCHAR2(50));
-alter table customer add (bcc VARCHAR2(50));
---
-alter table vendor add (cc VARCHAR2(50));
-alter table vendor add (bcc VARCHAR2(50));
---
-create table shipto (
- trans_id integer,
- shiptoname varchar2(35),
- shiptoaddr1 varchar2(35),
- shiptoaddr2 varchar2(35),
- shiptoaddr3 varchar2(35),
- shiptoaddr4 varchar2(35),
- shiptocontact varchar2(35),
- shiptophone varchar2(20),
- shiptofax varchar2(20),
- shiptoemail VARCHAR2(50)
-);
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail from customer where shiptoname != '' or shiptoname is not null;
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select distinct on (a.id) a.id, c.shiptoname, c.shiptoaddr1, c.shiptoaddr2, c.shiptoaddr3, c.shiptoaddr4, c.shiptocontact, c.shiptophone, c.shiptofax, c.shiptoemail from customer c, ar a where a.customer_id = c.id;
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select distinct on (o.id) o.id, c.shiptoname, c.shiptoaddr1, c.shiptoaddr2, c.shiptoaddr3, c.shiptoaddr4, c.shiptocontact, c.shiptophone, c.shiptofax, c.shiptoemail from customer c, oe o where o.customer_id = c.id;
---
-create index shipto_trans_id_key on shipto (trans_id);
---
-create table custome (
- id integer,
- name varchar2(35),
- addr1 varchar2(35),
- addr2 varchar2(35),
- addr3 varchar2(35),
- addr4 varchar2(35),
- contact varchar2(35),
- phone varchar2(20),
- fax varchar2(20),
- email VARCHAR2(50),
- notes RCHAR2(4000),
- discount float,
- taxincluded char(1),
- creditlimit float DEFAULT 0,
- terms integer DEFAULT 0,
- customernumber VARCHAR2(40),
- cc VARCHAR2(50),
- bcc VARCHAR2(50)
-);
-insert into custome (id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber) select id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber from customer;
---
-drop table customer;
-alter table custome rename to customer;
-create index customer_id_key on customer (id);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
---
-alter table parts add (bom char(1) default '0');
-update parts set bom = '0';
-update parts set bom = '1' where assembly = '1';
-alter table parts add (image VARCHAR2(100));
-alter table parts add (drawing VARCHAR2(100));
-alter table parts add (microfiche VARCHAR2(100));
---
-alter table gl add (notes VARCHAR2(4000));
---
-alter table oe add (closed char(1) default '0');
-update oe set closed = '0';
---
-create table project (
- id integer,
- projectnumber VARCHAR2(50),
- description VARCHAR2(4000)
-);
---
-create index project_id_key on project (id);
---
-alter table acc_trans add (project_id integer);
-update acc_trans set cleared = '0' where cleared = '1';
---
-alter table invoice add (project_id integer);
-alter table invoice add (deliverydate date);
-alter table orderitems add (project_id integer);
-alter table orderitems add (reqdate date);
---
-CREATE OR REPLACE TRIGGER projectid BEFORE INSERT ON project FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
- FROM DUAL;--
-END;;
---
-alter table gl add (reference VARCHAR2(50));
-update gl set reference = source;
-alter table gl drop column source;
---
-create index gl_reference_key on gl (reference);
-create index acc_trans_source_key on acc_trans (source);
---
-update defaults set version = '2.0.0';
---
diff --git a/sql-ledger/sql/Oracle-upgrade-2.0.0-2.0.8.sql b/sql-ledger/sql/Oracle-upgrade-2.0.0-2.0.8.sql
deleted file mode 100644
index eb65e9c..0000000
--- a/sql-ledger/sql/Oracle-upgrade-2.0.0-2.0.8.sql
+++ /dev/null
@@ -1,19 +0,0 @@
---
-create table partsgroup (id integer, partsgroup varchar2(100));
-create index partsgroup_id_key on partsgroup (id);
---
-alter table parts add (partsgroup_id integer);
---
-alter table assembly add (bom char(1));
-update assembly set bom = '0' where assembly.id = parts.id and parts.bom = '0';
-update assembly set bom = '1' where assembly.id = parts.id and parts.bom = '1';
---
-CREATE OR REPLACE TRIGGER partsgroupid BEFORE INSERT ON partsgroup FOR EACH ROW
-BEGIN
- SELECT id.nextval
- INTO :new.id
-FROM DUAL;--
-END;;
---
-update defaults set version = '2.0.8';
---
diff --git a/sql-ledger/sql/Oracle-upgrade-2.0.8-2.2.0.sql b/sql-ledger/sql/Oracle-upgrade-2.0.8-2.2.0.sql
deleted file mode 100644
index c23f28a..0000000
--- a/sql-ledger/sql/Oracle-upgrade-2.0.8-2.2.0.sql
+++ /dev/null
@@ -1,9 +0,0 @@
---
-create unique index projectnumber_key on project (projectnumber);
-create unique index partsgroup_key on partsgroup (partsgroup);
---
-alter table ar add (till varchar2(20));
-alter table ap add (till varchar2(20));
---
-update defaults set version = '2.2.0';
---
diff --git a/sql-ledger/sql/Pg-functions.sql b/sql-ledger/sql/Pg-functions.sql
deleted file mode 100644
index 416353e..0000000
--- a/sql-ledger/sql/Pg-functions.sql
+++ /dev/null
@@ -1,182 +0,0 @@
---
-CREATE FUNCTION del_yearend() RETURNS OPAQUE AS '
-begin
- delete from yearend where trans_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER del_yearend AFTER DELETE ON gl FOR EACH ROW EXECUTE PROCEDURE del_yearend();
--- end trigger
---
-CREATE FUNCTION del_department() RETURNS OPAQUE AS '
-begin
- delete from dpt_trans where trans_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER del_department AFTER DELETE ON ar FOR EACH ROW EXECUTE PROCEDURE del_department();
--- end trigger
-CREATE TRIGGER del_department AFTER DELETE ON ap FOR EACH ROW EXECUTE PROCEDURE del_department();
--- end trigger
-CREATE TRIGGER del_department AFTER DELETE ON gl FOR EACH ROW EXECUTE PROCEDURE del_department();
--- end trigger
-CREATE TRIGGER del_department AFTER DELETE ON oe FOR EACH ROW EXECUTE PROCEDURE del_department();
--- end trigger
---
-CREATE FUNCTION del_customer() RETURNS OPAQUE AS '
-begin
- delete from shipto where trans_id = old.id;
- delete from customertax where customer_id = old.id;
- delete from partscustomer where customer_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER del_customer AFTER DELETE ON customer FOR EACH ROW EXECUTE PROCEDURE del_customer();
--- end trigger
---
-CREATE FUNCTION del_vendor() RETURNS OPAQUE AS '
-begin
- delete from shipto where trans_id = old.id;
- delete from vendortax where vendor_id = old.id;
- delete from partsvendor where vendor_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER del_vendor AFTER DELETE ON vendor FOR EACH ROW EXECUTE PROCEDURE del_vendor();
--- end trigger
---
-CREATE FUNCTION del_exchangerate() RETURNS OPAQUE AS '
-
-declare
- t_transdate date;
- t_curr char(3);
- t_id int;
- d_curr text;
-
-begin
-
- select into d_curr substr(curr,1,3) from defaults;
-
- if TG_RELNAME = ''ar'' then
- select into t_curr, t_transdate curr, transdate from ar where id = old.id;
- end if;
- if TG_RELNAME = ''ap'' then
- select into t_curr, t_transdate curr, transdate from ap where id = old.id;
- end if;
- if TG_RELNAME = ''oe'' then
- select into t_curr, t_transdate curr, transdate from oe where id = old.id;
- end if;
-
- if d_curr != t_curr then
-
- select into t_id a.id from acc_trans ac
- join ar a on (a.id = ac.trans_id)
- where a.curr = t_curr
- and ac.transdate = t_transdate
-
- except select a.id from ar a where a.id = old.id
-
- union
-
- select a.id from acc_trans ac
- join ap a on (a.id = ac.trans_id)
- where a.curr = t_curr
- and ac.transdate = t_transdate
-
- except select a.id from ap a where a.id = old.id
-
- union
-
- select o.id from oe o
- where o.curr = t_curr
- and o.transdate = t_transdate
-
- except select o.id from oe o where o.id = old.id;
-
- if not found then
- delete from exchangerate where curr = t_curr and transdate = t_transdate;
- end if;
- end if;
-return old;
-
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER del_exchangerate BEFORE DELETE ON ar FOR EACH ROW EXECUTE PROCEDURE del_exchangerate();
--- end trigger
---
-CREATE TRIGGER del_exchangerate BEFORE DELETE ON ap FOR EACH ROW EXECUTE PROCEDURE del_exchangerate();
--- end trigger
---
-CREATE TRIGGER del_exchangerate BEFORE DELETE ON oe FOR EACH ROW EXECUTE PROCEDURE del_exchangerate();
--- end trigger
---
-CREATE FUNCTION check_inventory() RETURNS OPAQUE AS '
-
-declare
- itemid int;
- row_data inventory%rowtype;
-
-begin
-
- if not old.quotation then
- for row_data in select * from inventory where oe_id = old.id loop
- select into itemid id from orderitems where trans_id = old.id and id = row_data.orderitems_id;
-
- if itemid is null then
- delete from inventory where oe_id = old.id and orderitems_id = row_data.orderitems_id;
- end if;
- end loop;
- end if;
- return old;
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER check_inventory AFTER UPDATE ON oe FOR EACH ROW EXECUTE PROCEDURE check_inventory();
--- end trigger
---
---
-CREATE FUNCTION check_department() RETURNS OPAQUE AS '
-
-declare
- dpt_id int;
-
-begin
-
- if new.department_id = 0 then
- delete from dpt_trans where trans_id = new.id;
- return NULL;
- end if;
-
- select into dpt_id trans_id from dpt_trans where trans_id = new.id;
-
- if dpt_id > 0 then
- update dpt_trans set department_id = new.department_id where trans_id = dpt_id;
- else
- insert into dpt_trans (trans_id, department_id) values (new.id, new.department_id);
- end if;
-return NULL;
-
-end;
-' language 'plpgsql';
--- end function
---
-CREATE TRIGGER check_department AFTER INSERT OR UPDATE ON ar FOR EACH ROW EXECUTE PROCEDURE check_department();
--- end trigger
-CREATE TRIGGER check_department AFTER INSERT OR UPDATE ON ap FOR EACH ROW EXECUTE PROCEDURE check_department();
--- end trigger
-CREATE TRIGGER check_department AFTER INSERT OR UPDATE ON gl FOR EACH ROW EXECUTE PROCEDURE check_department();
--- end trigger
-CREATE TRIGGER check_department AFTER INSERT OR UPDATE ON oe FOR EACH ROW EXECUTE PROCEDURE check_department();
--- end trigger
---
diff --git a/sql-ledger/sql/Pg-indices.sql b/sql-ledger/sql/Pg-indices.sql
deleted file mode 100644
index 506e0aa..0000000
--- a/sql-ledger/sql/Pg-indices.sql
+++ /dev/null
@@ -1,98 +0,0 @@
-create index acc_trans_trans_id_key on acc_trans (trans_id);
-create index acc_trans_chart_id_key on acc_trans (chart_id);
-create index acc_trans_transdate_key on acc_trans (transdate);
-create index acc_trans_source_key on acc_trans (lower(source));
---
-create index ap_id_key on ap (id);
-create index ap_transdate_key on ap (transdate);
-create index ap_invnumber_key on ap (lower(invnumber));
-create index ap_ordnumber_key on ap (lower(ordnumber));
-create index ap_vendor_id_key on ap (vendor_id);
-create index ap_employee_id_key on ap (employee_id);
-create index ap_quonumber_key on ap (lower(quonumber));
---
-create index ar_id_key on ar (id);
-create index ar_transdate_key on ar (transdate);
-create index ar_invnumber_key on ar (lower(invnumber));
-create index ar_ordnumber_key on ar (lower(ordnumber));
-create index ar_customer_id_key on ar (customer_id);
-create index ar_employee_id_key on ar (employee_id);
-create index ar_quonumber_key on ar (lower(quonumber));
---
-create index assembly_id_key on assembly (id);
---
-create index chart_id_key on chart (id);
-create unique index chart_accno_key on chart (accno);
-create index chart_category_key on chart (category);
-create index chart_link_key on chart (link);
-create index chart_gifi_accno_key on chart (gifi_accno);
---
-create index customer_id_key on customer (id);
-create index customer_customernumber_key on customer (customernumber);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
-create index customer_customer_id_key on customertax (customer_id);
---
-create index employee_id_key on employee (id);
-create unique index employee_login_key on employee (login);
-create index employee_name_key on employee (name);
---
-create index exchangerate_ct_key on exchangerate (curr, transdate);
---
-create unique index gifi_accno_key on gifi (accno);
---
-create index gl_id_key on gl (id);
-create index gl_transdate_key on gl (transdate);
-create index gl_reference_key on gl (lower(reference));
-create index gl_description_key on gl (lower(description));
-create index gl_employee_id_key on gl (employee_id);
---
-create index invoice_id_key on invoice (id);
-create index invoice_trans_id_key on invoice (trans_id);
---
-create index makemodel_parts_id_key on makemodel (parts_id);
-create index makemodel_make_key on makemodel (lower(make));
-create index makemodel_model_key on makemodel (lower(model));
---
-create index oe_id_key on oe (id);
-create index oe_transdate_key on oe (transdate);
-create index oe_ordnumber_key on oe (lower(ordnumber));
-create index oe_employee_id_key on oe (employee_id);
-create index orderitems_trans_id_key on orderitems (trans_id);
-create index orderitems_id_key on orderitems (id);
---
-create index parts_id_key on parts (id);
-create index parts_partnumber_key on parts (lower(partnumber));
-create index parts_description_key on parts (lower(description));
-create index partstax_parts_id_key on partstax (parts_id);
---
-create index vendor_id_key on vendor (id);
-create index vendor_name_key on vendor (name);
-create index vendor_vendornumber_key on vendor (vendornumber);
-create index vendor_contact_key on vendor (contact);
-create index vendortax_vendor_id_key on vendortax (vendor_id);
---
-create index shipto_trans_id_key on shipto (trans_id);
---
-create index project_id_key on project (id);
-create unique index projectnumber_key on project (projectnumber);
---
-create index partsgroup_id_key on partsgroup (id);
-create unique index partsgroup_key on partsgroup (partsgroup);
---
-create index status_trans_id_key on status (trans_id);
---
-create index department_id_key on department (id);
---
-create index partsvendor_vendor_id_key on partsvendor (vendor_id);
-create index partsvendor_parts_id_key on partsvendor (parts_id);
---
-create index pricegroup_pricegroup_key on pricegroup (pricegroup);
-create index pricegroup_id_key on pricegroup (id);
---
-create index audittrail_trans_id_key on audittrail (trans_id);
---
-create index translation_trans_id_key on translation (trans_id);
---
-create unique index language_code_key on language (code);
-
diff --git a/sql-ledger/sql/Pg-tables.sql b/sql-ledger/sql/Pg-tables.sql
deleted file mode 100644
index 2b7cb92..0000000
--- a/sql-ledger/sql/Pg-tables.sql
+++ /dev/null
@@ -1,471 +0,0 @@
---
-CREATE SEQUENCE id start 10000;
-SELECT nextval ('id');
---
-CREATE SEQUENCE invoiceid;
-SELECT nextval ('invoiceid');
---
-CREATE SEQUENCE orderitemsid MAXVALUE 100000 CYCLE;
-SELECT nextval ('orderitemsid');
---
-CREATE TABLE makemodel (
- parts_id int,
- make text,
- model text
-);
---
-CREATE TABLE gl (
- id int DEFAULT nextval ( 'id' ),
- reference text,
- description text,
- transdate date DEFAULT current_date,
- employee_id int,
- notes text,
- department_id int default 0
-);
---
-CREATE TABLE chart (
- id int DEFAULT nextval ( 'id' ),
- accno text NOT NULL,
- description text,
- charttype char(1) DEFAULT 'A',
- category char(1),
- link text,
- gifi_accno text
-);
---
-CREATE TABLE gifi (
- accno text,
- description text
-);
---
-CREATE TABLE defaults (
- inventory_accno_id int,
- income_accno_id int,
- expense_accno_id int,
- fxgain_accno_id int,
- fxloss_accno_id int,
- sinumber text,
- sonumber text,
- yearend varchar(5),
- weightunit varchar(5),
- businessnumber text,
- version varchar(8),
- curr text,
- closedto date,
- revtrans bool DEFAULT 'f',
- ponumber text,
- sqnumber text,
- rfqnumber text,
- audittrail bool default 'f',
- vinumber text,
- employeenumber text,
- partnumber text,
- customernumber text,
- vendornumber text
-);
-INSERT INTO defaults (version) VALUES ('2.4.3');
---
-CREATE TABLE acc_trans (
- trans_id int,
- chart_id int,
- amount float,
- transdate date DEFAULT current_date,
- source text,
- cleared bool DEFAULT 'f',
- fx_transaction bool DEFAULT 'f',
- project_id int,
- memo text
-);
---
-CREATE TABLE invoice (
- id int DEFAULT nextval ( 'invoiceid' ),
- trans_id int,
- parts_id int,
- description text,
- qty float4,
- allocated float4,
- sellprice float,
- fxsellprice float,
- discount float4,
- assemblyitem bool DEFAULT 'f',
- unit varchar(5),
- project_id int,
- deliverydate date,
- serialnumber text
-);
---
-CREATE TABLE customer (
- id int default nextval('id'),
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- discount float4,
- taxincluded bool default 'f',
- creditlimit float default 0,
- terms int2 default 0,
- customernumber varchar(32),
- cc text,
- bcc text,
- business_id int,
- taxnumber varchar(32),
- sic_code varchar(6),
- iban varchar(34),
- bic varchar(11),
- employee_id int,
- language_code varchar(6),
- pricegroup_id int,
- curr char(3),
- startdate date,
- enddate date
-);
---
---
-CREATE TABLE parts (
- id int DEFAULT nextval ( 'id' ),
- partnumber text,
- description text,
- unit varchar(5),
- listprice float,
- sellprice float,
- lastcost float,
- priceupdate date DEFAULT current_date,
- weight float4,
- onhand float4 DEFAULT 0,
- notes text,
- makemodel bool DEFAULT 'f',
- assembly bool DEFAULT 'f',
- alternate bool DEFAULT 'f',
- rop float4,
- inventory_accno_id int,
- income_accno_id int,
- expense_accno_id int,
- bin text,
- obsolete bool DEFAULT 'f',
- bom bool DEFAULT 'f',
- image text,
- drawing text,
- microfiche text,
- partsgroup_id int
-);
---
-CREATE TABLE assembly (
- id int,
- parts_id int,
- qty float,
- bom bool,
- adj bool
-);
---
-CREATE TABLE ar (
- id int DEFAULT nextval ( 'id' ),
- invnumber text,
- transdate date DEFAULT current_date,
- customer_id int,
- taxincluded bool,
- amount float,
- netamount float,
- paid float,
- datepaid date,
- duedate date,
- invoice bool DEFAULT 'f',
- shippingpoint text,
- terms int2 DEFAULT 0,
- notes text,
- curr char(3),
- ordnumber text,
- employee_id int,
- till varchar(20),
- quonumber text,
- intnotes text,
- department_id int default 0,
- shipvia text,
- language_code varchar(6)
-);
---
-CREATE TABLE ap (
- id int DEFAULT nextval ( 'id' ),
- invnumber text,
- transdate date DEFAULT current_date,
- vendor_id int,
- taxincluded bool DEFAULT 'f',
- amount float,
- netamount float,
- paid float,
- datepaid date,
- duedate date,
- invoice bool DEFAULT 'f',
- ordnumber text,
- curr char(3),
- notes text,
- employee_id int,
- till varchar(20),
- quonumber text,
- intnotes text,
- department_id int default 0,
- shipvia text,
- language_code varchar(6)
-);
---
-CREATE TABLE partstax (
- parts_id int,
- chart_id int
-);
---
-CREATE TABLE tax (
- chart_id int,
- rate float,
- taxnumber text
-);
---
-CREATE TABLE customertax (
- customer_id int,
- chart_id int
-);
---
-CREATE TABLE vendortax (
- vendor_id int,
- chart_id int
-);
---
-CREATE TABLE oe (
- id int default nextval('id'),
- ordnumber text,
- transdate date default current_date,
- vendor_id int,
- customer_id int,
- amount float8,
- netamount float8,
- reqdate date,
- taxincluded bool,
- shippingpoint text,
- notes text,
- curr char(3),
- employee_id int,
- closed bool default 'f',
- quotation bool default 'f',
- quonumber text,
- intnotes text,
- department_id int default 0,
- shipvia text,
- language_code varchar(6)
-);
---
-CREATE TABLE orderitems (
- trans_id int,
- parts_id int,
- description text,
- qty float4,
- sellprice float8,
- discount float4,
- unit varchar(5),
- project_id int,
- reqdate date,
- ship float4,
- serialnumber text,
- id int default nextval('orderitemsid')
-);
---
-CREATE TABLE exchangerate (
- curr char(3),
- transdate date,
- buy float8,
- sell float8
-);
---
-create table employee (
- id int default nextval('id'),
- login text,
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- workphone varchar(20),
- homephone varchar(20),
- startdate date default current_date,
- enddate date,
- notes text,
- role varchar(20),
- sales bool default 'f',
- email text,
- sin varchar(20),
- iban varchar(34),
- bic varchar(11),
- managerid int,
- employeenumber varchar(32)
-);
---
-create table shipto (
- trans_id int,
- shiptoname varchar(64),
- shiptoaddress1 varchar(32),
- shiptoaddress2 varchar(32),
- shiptocity varchar(32),
- shiptostate varchar(32),
- shiptozipcode varchar(10),
- shiptocountry varchar(32),
- shiptocontact varchar(64),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
---
-CREATE TABLE vendor (
- id int default nextval('id'),
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- terms int2 default 0,
- taxincluded bool default 'f',
- vendornumber varchar(32),
- cc text,
- bcc text,
- gifi_accno varchar(30),
- business_id int,
- taxnumber varchar(32),
- sic_code varchar(6),
- discount float4,
- creditlimit float default 0,
- iban varchar(34),
- bic varchar(11),
- employee_id int,
- language_code varchar(6),
- pricegroup_id int,
- curr char(3),
- startdate date,
- enddate date
-);
---
-CREATE TABLE project (
- id int default nextval('id'),
- projectnumber text,
- description text
-);
---
-CREATE TABLE partsgroup (
- id int default nextval('id'),
- partsgroup text
-);
---
-CREATE TABLE status (
- trans_id int,
- formname text,
- printed bool default 'f',
- emailed bool default 'f',
- spoolfile text,
- chart_id int
-);
---
-CREATE TABLE department (
- id int default nextval('id'),
- description text,
- role char(1) default 'P'
-);
---
--- department transaction table
-CREATE TABLE dpt_trans (
- trans_id int,
- department_id int
-);
---
--- business table
-CREATE TABLE business (
- id int default nextval('id'),
- description text,
- discount float4
-);
---
--- SIC
-CREATE TABLE sic (
- code varchar(6),
- sictype char(1),
- description text
-);
---
-CREATE TABLE warehouse (
- id int default nextval('id'),
- description text
-);
---
-CREATE TABLE inventory (
- warehouse_id int,
- parts_id int,
- oe_id int,
- orderitems_id int,
- qty float4,
- shippingdate date,
- employee_id int
-);
---
-CREATE TABLE yearend (
- trans_id int,
- transdate date
-);
---
-CREATE TABLE partsvendor (
- vendor_id int,
- parts_id int,
- partnumber text,
- leadtime int2,
- lastcost float,
- curr char(3)
-);
---
-CREATE TABLE pricegroup (
- id int default nextval('id'),
- pricegroup text
-);
---
-CREATE TABLE partscustomer (
- parts_id int,
- customer_id int,
- pricegroup_id int,
- pricebreak float4,
- sellprice float,
- validfrom date,
- validto date,
- curr char(3)
-);
---
-CREATE TABLE language (
- code varchar(6),
- description text
-);
---
-CREATE TABLE audittrail (
- trans_id int,
- tablename text,
- reference text,
- formname text,
- action text,
- transdate timestamp default current_timestamp,
- employee_id int
-);
---
-CREATE TABLE translation (
- trans_id int,
- language_code varchar(6),
- description text
-);
---
diff --git a/sql-ledger/sql/Pg-upgrade-1.2.6-1.2.7.sql b/sql-ledger/sql/Pg-upgrade-1.2.6-1.2.7.sql
deleted file mode 100644
index 159f31b..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.2.6-1.2.7.sql
+++ /dev/null
@@ -1,4 +0,0 @@
---
--- add the field shiptoemail to the customer table
---
-alter table customer add column shiptoemail text;
diff --git a/sql-ledger/sql/Pg-upgrade-1.2.7-1.4.0.sql b/sql-ledger/sql/Pg-upgrade-1.2.7-1.4.0.sql
deleted file mode 100644
index 04e1a79..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.2.7-1.4.0.sql
+++ /dev/null
@@ -1,173 +0,0 @@
---
-CREATE TABLE newap (
- id int DEFAULT nextval ( 'id' ),
- invnumber text,
- transdate date DEFAULT current_date,
- vendor int,
- taxincluded bool DEFAULT FALSE,
- amount float,
- netamount float,
- paid float,
- datepaid date,
- duedate date,
- invoice bool DEFAULT FALSE,
- ordnumber text
-);
---
-INSERT INTO newap (id, invnumber, transdate, vendor, amount, netamount, paid,
-datepaid, duedate, invoice, ordnumber)
-SELECT id, invnumber, transdate, vendor, amount, netamount, paid,
-datepaid, duedate, invoice, ordnumber
-FROM ap;
---
-DROP TABLE ap;
-ALTER TABLE newap RENAME TO ap;
---
-CREATE TABLE newar (
- id int DEFAULT nextval ( 'id' ),
- invnumber text,
- transdate date DEFAULT current_date,
- customer int,
- taxincluded bool DEFAULT FALSE,
- amount float,
- netamount float,
- paid float,
- datepaid date,
- duedate date,
- invoice bool DEFAULT FALSE,
- shippingpoint text,
- terms int2,
- notes text
-);
---
-INSERT INTO newar (id, invnumber, transdate, customer, amount, netamount, paid,
-datepaid, duedate, invoice, shippingpoint, terms, notes)
-SELECT id, invnumber, transdate, customer, amount, netamount, paid,
-datepaid, duedate, invoice, shippingpoint, terms, notes
-FROM ar;
---
-DROP TABLE ar;
-ALTER TABLE newar RENAME TO ar;
---
-CREATE TABLE newcustomer (
- id int DEFAULT nextval ( 'id' ),
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- contact varchar(35),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- ytd float,
- discount float4,
- taxincluded bool,
- creditlimit float,
- terms int2,
- shiptoname varchar(35),
- shiptoaddr1 varchar(35),
- shiptoaddr2 varchar(35),
- shiptoaddr3 varchar(35),
- shiptocontact varchar(20),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
-INSERT INTO newcustomer (
-id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, ytd,
-discount, creditlimit, terms, shiptoname, shiptoaddr1, shiptoaddr2,
-shiptoaddr3, shiptocontact, shiptophone, shiptofax, shiptoemail )
-SELECT id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, ytd,
-discount, creditlimit, terms, shiptoname, shiptoaddr1, shiptoaddr2,
-shiptoaddr3, shiptocontact, shiptophone, shiptofax, shiptoemail
-FROM customer;
---
-DROP TABLE customer;
-ALTER TABLE newcustomer RENAME TO customer;
---
-CREATE TABLE customertax (
- customer_id int,
- chart_id int
-);
---
-CREATE TABLE newdefaults (
- inventory_accno int,
- income_accno int,
- expense_accno int,
- invnumber text,
- ponumber text,
- yearend varchar(5),
- nativecurr varchar(3),
- weightunit varchar(5)
-);
---
-INSERT INTO newdefaults (
-inventory_accno, income_accno, expense_accno, invnumber, ponumber)
-SELECT inventory_accno, income_accno, expense_accno, invnumber, ponumber
-FROM defaults;
---
-DROP TABLE defaults;
-ALTER TABLE newdefaults RENAME TO defaults;
-UPDATE defaults SET yearend = '1/31', nativecurr = 'CAD', weightunit = 'kg';
---
-CREATE TABLE partstax (
- parts_id int,
- chart_id int
-);
---
-CREATE TABLE tax (
- chart_id int,
- rate float,
- number text
-);
---
-CREATE TABLE newvendor (
- id int DEFAULT nextval ( 'id' ),
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- contact varchar(35),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- ytd float,
- discount float4,
- taxincluded bool,
- creditlimit float,
- terms int2
-);
---
-INSERT INTO newvendor (
-id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, ytd )
-SELECT id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, ytd
-FROM vendor;
---
-DROP TABLE vendor;
-ALTER TABLE newvendor RENAME TO vendor;
---
-CREATE TABLE vendortax (
- vendor_id int,
- chart_id int
-);
---
-ALTER TABLE chart RENAME TO oldchart;
---
-CREATE TABLE chart (
- id int DEFAULT nextval( 'id' ),
- accno int UNIQUE,
- description text,
- balance float,
- type char(1),
- gifi int,
- category char(1),
- link text
-);
---
-INSERT INTO chart SELECT * FROM oldchart;
---
-DROP TABLE oldchart;
---
-
diff --git a/sql-ledger/sql/Pg-upgrade-1.4.0-1.6.0.sql b/sql-ledger/sql/Pg-upgrade-1.4.0-1.6.0.sql
deleted file mode 100644
index e0a3892..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.4.0-1.6.0.sql
+++ /dev/null
@@ -1,126 +0,0 @@
-alter table acc_trans rename column accno to chart_id;
-update acc_trans set chart_id =
- (select id from chart where accno = acc_trans.chart_id);
---
-alter table parts rename column inventory_accno to inventory_accno_id;
-alter table parts rename column income_accno to income_accno_id;
-alter table parts rename column expense_accno to expense_accno_id;
-alter table parts rename column number to partnumber;
-update parts set inventory_accno_id =
- (select id from chart where chart.accno = parts.inventory_accno_id);
-update parts set income_accno_id =
- (select id from chart where chart.accno = parts.income_accno_id);
-update parts set expense_accno_id =
- (select id from chart where chart.accno = parts.expense_accno_id);
---
-create table assembly (id int, parts_id int, qty float);
---
-alter table defaults rename column inventory_accno to inventory_accno_id;
-alter table defaults rename column income_accno to income_accno_id;
-alter table defaults rename column expense_accno to expense_accno_id;
-alter table defaults add column businessnumber text;
-alter table defaults add column version varchar(8);
-update defaults set inventory_accno_id =
- (select id from chart where chart.accno = defaults.inventory_accno_id);
-update defaults set income_accno_id =
- (select id from chart where chart.accno = defaults.income_accno_id);
-update defaults set expense_accno_id =
- (select id from chart where chart.accno = defaults.expense_accno_id);
-update defaults set version = '1.6.0';
---
-alter table invoice rename column inventory_accno to inventory_accno_id;
-alter table invoice rename column income_accno to income_accno_id;
-alter table invoice rename column expense_accno to expense_accno_id;
-alter table invoice rename column number to partnumber;
-alter table invoice add column assemblyitem bool;
-update invoice set assemblyitem = 'f';
-update invoice set inventory_accno_id =
- (select id from chart where invoice.inventory_accno_id = chart.accno);
-update invoice set income_accno_id =
- (select id from chart where invoice.income_accno_id = chart.accno);
-update invoice set expense_accno_id =
- (select id from chart where invoice.expense_accno_id = chart.accno);
---
-alter table gl rename column comment to description;
---
-create table newvendor (
- id int default nextval ( 'id' ),
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- addr4 varchar(35),
- contact varchar(35),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- terms int2,
- taxincluded bool
-);
-insert into newvendor (
- id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, terms,
- taxincluded)
- select
- id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, terms,
- taxincluded from vendor;
-drop table vendor;
-alter table newvendor rename to vendor;
---
-create table newcustomer (
- id int default nextval ( 'id' ),
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- addr4 varchar(35),
- contact varchar(35),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- discount float4,
- taxincluded bool,
- creditlimit float,
- terms int2,
- shiptoname varchar(35),
- shiptoaddr1 varchar(35),
- shiptoaddr2 varchar(35),
- shiptoaddr3 varchar(35),
- shiptoaddr4 varchar(35),
- shiptocontact varchar(20),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
-insert into newcustomer (
- id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, discount,
- taxincluded, creditlimit, terms, shiptoname, shiptoaddr1, shiptoaddr2,
- shiptoaddr3, shiptocontact, shiptophone, shiptofax, shiptoemail
- )
- select
- id, name, addr1, addr2, addr3, contact, phone, fax, email, notes, discount,
- taxincluded, creditlimit, terms, shiptoname, shiptoaddr1, shiptoaddr2,
- shiptoaddr3, shiptocontact, shiptophone, shiptofax, shiptoemail
- from customer;
-drop table customer;
-alter table newcustomer rename to customer;
---
-drop index chart_accno_key;
-alter table chart rename to oldchart;
-create table chart (
- id int default nextval('id'),
- accno int unique,
- description text,
- charttype char(1),
- gifi int,
- category char(1),
- link text
-);
-insert into chart (id, accno, description, charttype, gifi, category, link)
- select id, accno, description, type, gifi, category, link from oldchart;
-drop table oldchart;
---
-alter table tax rename column number to taxnumber;
---
--- apply
diff --git a/sql-ledger/sql/Pg-upgrade-1.6.0-1.8.0.sql b/sql-ledger/sql/Pg-upgrade-1.6.0-1.8.0.sql
deleted file mode 100644
index 4e98e1f..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.6.0-1.8.0.sql
+++ /dev/null
@@ -1,104 +0,0 @@
---
-create table def (
- inventory_accno_id int,
- income_accno_id int,
- expense_accno_id int,
- fxgain_accno_id int,
- fxloss_accno_id int,
- invnumber text,
- ordnumber text,
- yearend varchar(5),
- weightunit varchar(5),
- businessnumber text,
- version varchar(8),
- curr text
-);
-insert into def (inventory_accno_id, income_accno_id, expense_accno_id, invnumber, ordnumber, yearend, weightunit, businessnumber, version, curr) select inventory_accno_id, income_accno_id, expense_accno_id, invnumber, ponumber, yearend, weightunit, businessnumber, version, nativecurr from defaults;
-drop table defaults;
-alter table def rename to defaults;
-update defaults set version = '1.8.0';
---
--- create a default accno for exchange rate gain and loss
---
-select accno into temp from chart where category = 'I' order by accno desc limit 1;
-update temp set accno = accno + 1;
-insert into chart (accno) select accno from temp;
-update chart set description = 'Foreign Exchange Gain', category = 'I', charttype = 'A' where accno = (select accno from temp);
-update defaults set fxgain_accno_id = (select id from chart where chart.accno = temp.accno);
-drop table temp;
-select accno into temp from chart where category = 'E' order by accno desc limit 1;
-update temp set accno = accno + 1;
-insert into chart (accno) select accno from temp;
-update chart set description = 'Foreign Exchange Loss', category = 'E', charttype = 'A' where accno = (select accno from temp);
-update defaults set fxloss_accno_id = (select id from chart where chart.accno = temp.accno);
-drop table temp;
---
-alter table parts add column bin text;
-alter table parts alter column onhand set default 0;
-update parts set onhand = 0 where onhand = NULL;
-alter table parts add column obsolete bool;
-alter table parts alter column obsolete set default 'f';
-update parts set obsolete = 'f';
---
-alter table ap rename column vendor to vendor_id;
-alter table ap add column curr char(3);
---
-alter table ar rename column customer to customer_id;
-alter table ar add column curr char(3);
-alter table ar add column ordnumber text;
---
-alter table acc_trans add column source text;
-alter table acc_trans add column cleared bool;
-alter table acc_trans alter column cleared set default 'f';
-alter table acc_trans add column fx_transaction bool;
-alter table acc_trans alter column fx_transaction set default 'f';
-update acc_trans set cleared = 'f', fx_transaction = 'f';
---
-create table oe (
- id int default nextval('id'),
- ordnumber text,
- transdate date default current_date,
- vendor_id int,
- customer_id int,
- amount float8,
- netamount float8,
- reqdate date,
- taxincluded bool,
- shippingpoint text,
- notes text,
- curr char(3)
-);
---
-create table orderitems (
- trans_id int,
- parts_id int,
- description text,
- qty float4,
- sellprice float8,
- discount float4
-);
---
-alter table invoice rename to invoiceold;
-create table invoice (
- id int default nextval('id'),
- trans_id int,
- parts_id int,
- description text,
- qty float4,
- allocated float4,
- sellprice float8,
- fxsellprice float8,
- discount float4,
- assemblyitem bool default 'f'
-);
-insert into invoice (id, trans_id, parts_id, description, qty, allocated, sellprice, fxsellprice, discount, assemblyitem) select id, trans_id, parts_id, description, qty, allocated, sellprice, sellprice, discount, assemblyitem from invoiceold;
-update invoice set assemblyitem = 'f' where assemblyitem = NULL;
-drop table invoiceold;
---
-create table exchangerate (
- curr char(3),
- transdate date,
- buy float8,
- sell float8
-);
---
diff --git a/sql-ledger/sql/Pg-upgrade-1.8.0-1.8.4.sql b/sql-ledger/sql/Pg-upgrade-1.8.0-1.8.4.sql
deleted file mode 100644
index 57b24f1..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.8.0-1.8.4.sql
+++ /dev/null
@@ -1,21 +0,0 @@
---
-alter table chart add column gifi_accno text;
---
-create table gifi (accno text, description text);
-create unique index gifi_accno_key on gifi (accno);
---
-create table mtemp (parts_id int, name text);
-insert into mtemp select parts_id, name from makemodel;
-drop table makemodel;
-alter table mtemp rename to makemodel;
---
-alter table defaults add column closedto date;
-alter table defaults add column revtrans bool;
---
-alter table ap add column notes text;
---
-alter table customer add column businessnumber text;
-alter table vendor add column businessnumber text;
---
-update defaults set version = '1.8.4', revtrans = 'f';
---
diff --git a/sql-ledger/sql/Pg-upgrade-1.8.4-1.8.5.sql b/sql-ledger/sql/Pg-upgrade-1.8.4-1.8.5.sql
deleted file mode 100644
index 807857a..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.8.4-1.8.5.sql
+++ /dev/null
@@ -1,63 +0,0 @@
---
-alter table customer rename column businessnumber to customernumber;
-create index customer_customernumber_key on customer (customernumber);
-alter table vendor rename column businessnumber to vendornumber;
-create index vendor_vendornumber_key on vendor (vendornumber);
---
-CREATE TABLE employee (
- id int DEFAULT nextval ('id'),
- login text,
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- addr4 varchar(35),
- workphone varchar(20),
- homephone varchar(20),
- startdate date default current_date,
- enddate date,
- notes text
-);
---
-create index employee_id_key on employee (id);
-create unique index employee_login_key on employee (login);
-create index employee_name_key on employee (name);
---
-alter table gl add column employee_id int;
-create index gl_employee_id_key on gl (employee_id);
-alter table ar add column employee_id int;
-create index ar_employee_id_key on ar (employee_id);
-alter table ap add column employee_id int;
-create index ap_employee_id_key on ap (employee_id);
-alter table oe add column employee_id int;
-create index oe_employee_id_key on oe (employee_id);
---
-alter table invoice add column unit varchar(5);
-alter table orderitems add column unit varchar(5);
---
-update chart set gifi_accno = '' where gifi_accno = NULL;
-alter table chart rename to chartold;
-CREATE TABLE chart (
- id int DEFAULT nextval ('id'),
- accno text NOT NULL,
- description text,
- charttype char(1) DEFAULT 'A',
- category char(1),
- link text,
- gifi_accno text
-);
-insert into chart (id, accno, description, charttype, category, link, gifi_accno) select id, accno, description, charttype, category, link, gifi_accno from chartold;
-drop table chartold;
-create index chart_id_key on chart (id);
-create unique index chart_accno_key on chart (accno);
-create index chart_category_key on chart (category);
-create index chart_link_key on chart (link);
-create index chart_gifi_accno_key on chart (gifi_accno);
---
-alter table parts alter column inventory_accno_id drop default;
---
-alter table defaults rename ordnumber to sonumber;
-alter table defaults add column ponumber text;
---
-update defaults set version = '1.8.5', ponumber = sonumber;
---
diff --git a/sql-ledger/sql/Pg-upgrade-1.8.5-2.0.0.sql b/sql-ledger/sql/Pg-upgrade-1.8.5-2.0.0.sql
deleted file mode 100644
index ebc1d07..0000000
--- a/sql-ledger/sql/Pg-upgrade-1.8.5-2.0.0.sql
+++ /dev/null
@@ -1,92 +0,0 @@
---
-alter table customer add column cc text;
-alter table customer add column bcc text;
---
-alter table vendor add column cc text;
-alter table vendor add column bcc text;
---
-create table shipto (
- trans_id int,
- shiptoname varchar(35),
- shiptoaddr1 varchar(35),
- shiptoaddr2 varchar(35),
- shiptoaddr3 varchar(35),
- shiptoaddr4 varchar(35),
- shiptocontact varchar(35),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail from customer where shiptoname != '' or shiptoname is not null;
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select distinct on (a.id) a.id, c.shiptoname, c.shiptoaddr1, c.shiptoaddr2, c.shiptoaddr3, c.shiptoaddr4, c.shiptocontact, c.shiptophone, c.shiptofax, c.shiptoemail from customer c, ar a where a.customer_id = c.id;
---
-insert into shipto (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select distinct on (o.id) o.id, c.shiptoname, c.shiptoaddr1, c.shiptoaddr2, c.shiptoaddr3, c.shiptoaddr4, c.shiptocontact, c.shiptophone, c.shiptofax, c.shiptoemail from customer c, oe o where o.customer_id = c.id;
---
-create index shipto_trans_id_key on shipto (trans_id);
---
-create table custome (
- id int default nextval('id'),
- name varchar(35),
- addr1 varchar(35),
- addr2 varchar(35),
- addr3 varchar(35),
- addr4 varchar(35),
- contact varchar(35),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- discount float4,
- taxincluded bool,
- creditlimit float DEFAULT 0,
- terms int2 DEFAULT 0,
- customernumber text,
- cc text,
- bcc text
-);
-insert into custome (id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber) select id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber from customer;
---
-drop table customer;
-alter table custome rename to customer;
-create index customer_id_key on customer (id);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
---
-alter table parts add column bom boolean;
-alter table parts alter column bom set default 'f';
-update parts set bom = 'f';
-update parts set bom = 't' where assembly;
-alter table parts add column image text;
-alter table parts add column drawing text;
-alter table parts add column microfiche text;
---
-alter table gl add column notes text;
---
-alter table oe add column closed bool;
-alter table oe alter column closed set default 'f';
-update oe set closed = 'f';
---
-create table project (
- id int default nextval('id'),
- projectnumber text,
- description text
-);
---
-create index project_id_key on project (id);
---
-alter table acc_trans add column project_id int;
-update acc_trans set cleared = '0' where cleared = '1';
---
-alter table invoice add column project_id int;
-alter table invoice add column deliverydate date;
-alter table orderitems add column project_id int;
-alter table orderitems add column reqdate date;
---
-alter table gl rename source to reference;
-create index gl_reference_key on gl (reference);
-create index acc_trans_source_key on acc_trans (lower(source));
---
-update defaults set version = '2.0.0';
---
diff --git a/sql-ledger/sql/Pg-upgrade-2.0.0-2.0.8.sql b/sql-ledger/sql/Pg-upgrade-2.0.0-2.0.8.sql
deleted file mode 100644
index ef73b1c..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.0.0-2.0.8.sql
+++ /dev/null
@@ -1,12 +0,0 @@
---
-create table partsgroup (id int default nextval('id'), partsgroup text);
-create index partsgroup_id_key on partsgroup (id);
---
-alter table parts add partsgroup_id int;
---
-alter table assembly add bom bool;
-update assembly set bom = '0' where assembly.id = parts.id and parts.bom = '0';
-update assembly set bom = '1' where assembly.id = parts.id and parts.bom = '1';
---
-update defaults set version = '2.0.8';
---
diff --git a/sql-ledger/sql/Pg-upgrade-2.0.8-2.2.0.sql b/sql-ledger/sql/Pg-upgrade-2.0.8-2.2.0.sql
deleted file mode 100644
index 0077872..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.0.8-2.2.0.sql
+++ /dev/null
@@ -1,9 +0,0 @@
---
-create unique index projectnumber_key on project (projectnumber);
-create unique index partsgroup_key on partsgroup (partsgroup);
---
-alter table ar add till varchar(20);
-alter table ap add till varchar(20);
---
-update defaults set version = '2.2.0';
---
diff --git a/sql-ledger/sql/Pg-upgrade-2.2.0-2.3.0.sql b/sql-ledger/sql/Pg-upgrade-2.2.0-2.3.0.sql
deleted file mode 100644
index edadee6..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.2.0-2.3.0.sql
+++ /dev/null
@@ -1,59 +0,0 @@
---
-alter table oe add column quotation bool;
-alter table oe alter column quotation set default 'f';
-update oe set quotation = '0';
-alter table oe add column quonumber text;
---
-alter table defaults add column sqnumber text;
-alter table defaults add column rfqnumber text;
---
-alter table invoice add column serialnumber text;
---
-alter table ar add column quonumber text;
-create index ar_quonumber_key on ar (lower(quonumber));
-alter table ap add column quonumber text;
-create index ap_quonumber_key on ap (lower(quonumber));
---
-alter table employee add role text;
---
-alter table makemodel add column make text;
-alter table makemodel add column model text;
-update makemodel set make = substr(name,1,strpos(name,':')-1);
-update makemodel set model = substr(name,strpos(name,':')+1);
-create table temp (parts_id int,make text,model text);
-insert into temp (parts_id,make,model) select parts_id,make,model from makemodel;
-drop table makemodel;
-alter table temp rename to makemodel;
---
-create index makemodel_parts_id_key on makemodel (parts_id);
-create index makemodel_make_key on makemodel (lower(make));
-create index makemodel_model_key on makemodel (lower(model));
---
-create table status (trans_id int, formname text, printed bool default 'f', emailed bool default 'f', spoolfile text, chart_id int);
-create index status_trans_id_key on status (trans_id);
---
-create sequence invoiceid;
-select setval('invoiceid', (select max(id) from invoice));
-alter table invoice alter column id set default nextval('invoiceid');
---
-alter table ar add column intnotes text;
-alter table ap add column intnotes text;
-alter table oe add column intnotes text;
---
-create table department (id int default nextval('id'), description text, role char(1) default 'P');
-create index department_id_key on department (id);
---
-alter table ar add column department_id int;
-alter table ar alter column department_id set default 0;
-update ar set department_id = 0;
-alter table ap add column department_id int;
-alter table ap alter column department_id set default 0;
-update ap set department_id = 0;
-alter table gl add column department_id int;
-alter table gl alter column department_id set default 0;
-update gl set department_id = 0;
-alter table oe add column department_id int;
-alter table oe alter column department_id set default 0;
-update oe set department_id = 0;
---
-update defaults set version = '2.3.0';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.0-2.3.1.sql b/sql-ledger/sql/Pg-upgrade-2.3.0-2.3.1.sql
deleted file mode 100644
index 866774a..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.0-2.3.1.sql
+++ /dev/null
@@ -1,388 +0,0 @@
--- function check_department
-create function check_department() returns opaque as '
-
-declare
- dpt_id int;
-
-begin
-
- if new.department_id = 0 then
- delete from dpt_trans where trans_id = new.id;
- return NULL;
- end if;
-
- select into dpt_id trans_id from dpt_trans where trans_id = new.id;
-
- if dpt_id > 0 then
- update dpt_trans set department_id = new.department_id where trans_id = dpt_id;
- else
- insert into dpt_trans (trans_id, department_id) values (new.id, new.department_id);
- end if;
-return NULL;
-
-end;
-' language 'plpgsql';
--- end function
-
--- department transaction table
-create table dpt_trans (trans_id int, department_id int);
-
--- function del_department
-create function del_department() returns opaque as '
-begin
- delete from dpt_trans where trans_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
-
--- triggers
---
-create trigger check_department after insert or update on ar for each row execute procedure check_department();
--- end trigger
-create trigger check_department after insert or update on ap for each row execute procedure check_department();
--- end trigger
-create trigger check_department after insert or update on gl for each row execute procedure check_department();
--- end trigger
-create trigger check_department after insert or update on oe for each row execute procedure check_department();
--- end trigger
---
---
-create trigger del_department after delete on ar for each row execute procedure del_department();
--- end trigger
-create trigger del_department after delete on ap for each row execute procedure del_department();
--- end trigger
-create trigger del_department after delete on gl for each row execute procedure del_department();
--- end trigger
-create trigger del_department after delete on oe for each row execute procedure del_department();
--- end trigger
---
-
--- business table
-create table business (id int default nextval('id'), description text, discount float4);
---
--- SIC
-create table sic (code text, sictype char(1), description text);
---
-alter table vendor add column gifi_accno text;
-alter table vendor add column business_id int;
-alter table vendor add column taxnumber text;
-alter table vendor add column sic_code text;
---
-alter table customer add column business_id int;
-alter table customer add column taxnumber text;
-alter table customer add column sic_code text;
---
-create function del_customer() returns opaque as '
-begin
- delete from shipto where trans_id = old.id;
- delete from customertax where customer_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-create function del_vendor() returns opaque as '
-begin
- delete from shipto where trans_id = old.id;
- delete from vendortax where vendor_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-create trigger del_customer after delete on customer for each row execute procedure del_customer();
--- end trigger
-create trigger del_vendor after delete on vendor for each row execute procedure del_vendor();
--- end trigger
---
-alter table acc_trans add column memo text;
---
-alter table employee add column sales bool;
-alter table employee alter column sales set default 't';
---
-alter table vendor add discount float4;
-alter table vendor add creditlimit float;
---
--- function del_exchangerate
-create function del_exchangerate() returns opaque as '
-
-declare
- t_transdate date;
- t_curr char(3);
- t_id int;
- d_curr text;
-
-begin
-
- select into d_curr substr(curr,1,3) from defaults;
-
- if TG_RELNAME = ''ar'' then
- select into t_curr, t_transdate curr, transdate from ar where id = old.id;
- end if;
- if TG_RELNAME = ''ap'' then
- select into t_curr, t_transdate curr, transdate from ap where id = old.id;
- end if;
- if TG_RELNAME = ''oe'' then
- select into t_curr, t_transdate curr, transdate from oe where id = old.id;
- end if;
-
- if d_curr != t_curr then
-
- select into t_id a.id from acc_trans ac
- join ar a on (a.id = ac.trans_id)
- where a.curr = t_curr
- and ac.transdate = t_transdate
-
- except select a.id from ar a where a.id = old.id
-
- union
-
- select a.id from acc_trans ac
- join ap a on (a.id = ac.trans_id)
- where a.curr = t_curr
- and ac.transdate = t_transdate
-
- except select a.id from ap a where a.id = old.id
-
- union
-
- select o.id from oe o
- where o.curr = t_curr
- and o.transdate = t_transdate
-
- except select o.id from oe o where o.id = old.id;
-
- if not found then
- delete from exchangerate where curr = t_curr and transdate = t_transdate;
- end if;
- end if;
-return old;
-
-end;
-' language 'plpgsql';
--- end function
---
--- triggers
---
-create trigger del_exchangerate before delete on ar for each row execute procedure del_exchangerate();
--- end trigger
---
-create trigger del_exchangerate before delete on ap for each row execute procedure del_exchangerate();
--- end trigger
---
-create trigger del_exchangerate before delete on oe for each row execute procedure del_exchangerate();
--- end trigger
---
---
-alter table orderitems add ship float4;
-alter table orderitems add serialnumber text;
---
---
-create sequence orderitemsid maxvalue 100000 cycle;
-alter table orderitems add id int;
-alter table orderitems alter id set default nextval('orderitemsid');
---
-create table warehouse (id int default nextval('id'), description text);
---
-create table inventory (warehouse_id int, parts_id int, oe_id int, orderitems_id int, qty float4, shippingdate date);
---
--- update orderitems, fill in id
-create table temp (id int default nextval('orderitemsid'), tempid oid);
-insert into temp (tempid) select oid from orderitems;
-update orderitems set id = temp.id from temp where orderitems.oid = temp.tempid;
-drop table temp;
---
-create index orderitems_id_key on orderitems (id);
---
-alter table ar add shipvia text;
-alter table ap add shipvia text;
-alter table oe add shipvia text;
---
---
-alter table inventory add employee_id int;
---
---
-create function check_inventory() returns opaque as '
-
-declare
- itemid int;
- row_data inventory%rowtype;
-
-begin
-
- if not old.quotation then
- for row_data in select * from inventory where oe_id = old.id loop
- select into itemid id from orderitems where trans_id = old.id and id = row_data.orderitems_id;
-
- if itemid is null then
- delete from inventory where oe_id = old.id and orderitems_id = row_data.orderitems_id;
- end if;
- end loop;
- end if;
- return old;
-end;
-' language 'plpgsql';
--- end function
---
-create trigger check_inventory after update on oe for each row execute procedure check_inventory();
--- end trigger
---
---
-create table yearend (
- trans_id int,
- transdate date
-);
---
--- function del_yearend
-create function del_yearend() returns opaque as '
-begin
- delete from yearend where trans_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
-
--- triggers
---
-create trigger del_yearend after delete on gl for each row execute procedure del_yearend();
--- end trigger
---
---
-create table temp (
- id int default nextval('id'),
- name varchar(64),
- addr1 varchar(64),
- addr2 varchar(64),
- addr3 varchar(64),
- addr4 varchar(64),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- discount float4,
- taxincluded bool,
- creditlimit float default 0,
- terms int2 default 0,
- customernumber varchar(64),
- cc text,
- bcc text,
- business_id int,
- taxnumber varchar(64),
- sic_code varchar(6),
- iban varchar(34),
- bic varchar(11)
-);
-insert into temp (id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber, cc, bcc, business_id, taxnumber, sic_code) select id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, customernumber, cc, bcc, business_id, taxnumber, sic_code from customer;
---
-drop table customer;
---
-alter table temp rename to customer;
---
-create index customer_id_key on customer (id);
-create index customer_customernumber_key on customer (customernumber);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
---
-create trigger del_customer after delete on customer for each row execute procedure del_customer();
--- end trigger
---
-create table temp (
- id int default nextval('id'),
- name varchar(64),
- addr1 varchar(64),
- addr2 varchar(64),
- addr3 varchar(64),
- addr4 varchar(64),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- terms int2 default 0,
- taxincluded bool,
- vendornumber varchar(64),
- cc text,
- bcc text,
- gifi_accno varchar(30),
- business_id int,
- taxnumber varchar(64),
- sic_code varchar(6),
- discount float4,
- creditlimit float default 0,
- iban varchar(34),
- bic varchar(11)
-);
-insert into temp (id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, vendornumber, cc, bcc, business_id, taxnumber, sic_code) select id, name, addr1, addr2, addr3, addr4, contact, phone, fax, email, notes, discount, taxincluded, creditlimit, terms, vendornumber, cc, bcc, business_id, taxnumber, sic_code from vendor;
---
-drop table vendor;
---
-alter table temp rename to vendor;
---
-create index vendor_id_key on vendor (id);
-create index vendor_name_key on vendor (name);
-create index vendor_vendornumber_key on vendor (vendornumber);
-create index vendor_contact_key on vendor (contact);
---
-create trigger del_vendor after delete on vendor for each row execute procedure del_vendor();
--- end trigger
---
-create table temp (
- code varchar(6),
- sictype char(1),
- description text
-);
-insert into temp (code, sictype, description) select code, sictype, description from sic;
-drop table sic;
-alter table temp rename to sic;
---
-create table temp (
- trans_id int,
- shiptoname varchar(64),
- shiptoaddr1 varchar(64),
- shiptoaddr2 varchar(64),
- shiptoaddr3 varchar(64),
- shiptoaddr4 varchar(64),
- shiptocontact varchar(64),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
-insert into temp (trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail) select trans_id, shiptoname, shiptoaddr1, shiptoaddr2, shiptoaddr3, shiptoaddr4, shiptocontact, shiptophone, shiptofax, shiptoemail from shipto;
-drop table shipto;
-alter table temp rename to shipto;
-create index shipto_trans_id_key on shipto (trans_id);
---
---
-create table temp (
- id int default nextval('id'),
- login text,
- name varchar(64),
- addr1 varchar(64),
- addr2 varchar(64),
- addr3 varchar(64),
- addr4 varchar(64),
- workphone varchar(20),
- homephone varchar(20),
- startdate date default current_date,
- enddate date,
- notes text,
- role varchar(20),
- sales bool,
- email text,
- sin varchar(20),
- iban varchar(34),
- bic varchar(11)
-);
-insert into temp (id,login,name,addr1,addr2,addr3,addr4,workphone,homephone,startdate,enddate,notes,role,sales) select id,login,name,addr1,addr2,addr3,addr4,workphone,homephone,startdate,enddate,notes,role,sales from employee;
---
-drop table employee;
-alter table temp rename to employee;
---
-create index employee_id_key on employee (id);
-create unique index employee_login_key on employee (login);
-create index employee_name_key on employee (name);
---
-update defaults set version = '2.3.1';
-
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.1-2.3.3.sql b/sql-ledger/sql/Pg-upgrade-2.3.1-2.3.3.sql
deleted file mode 100644
index 9ee0991..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.1-2.3.3.sql
+++ /dev/null
@@ -1,9 +0,0 @@
---
-create table partsvendor (vendor_id int, parts_id int, partnumber text, leadtime int2, lastcost float, curr char(3));
-create index partsvendor_vendor_id_key on partsvendor (vendor_id);
-create index partsvendor_parts_id_key on partsvendor (parts_id);
---
-alter table assembly add column adj bool;
-update assembly set adj = 't';
---
-update defaults set version = '2.3.3';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.3-2.3.4.sql b/sql-ledger/sql/Pg-upgrade-2.3.3-2.3.4.sql
deleted file mode 100644
index 98e7b47..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.3-2.3.4.sql
+++ /dev/null
@@ -1,6 +0,0 @@
---
-alter table customer add employee_id int;
-alter table vendor add employee_id int;
-alter table employee add managerid int;
---
-update defaults set version = '2.3.4';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.4-2.3.5.sql b/sql-ledger/sql/Pg-upgrade-2.3.4-2.3.5.sql
deleted file mode 100644
index f4ab90b..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.4-2.3.5.sql
+++ /dev/null
@@ -1,142 +0,0 @@
---
-create table temp (
- id int default nextval('id'),
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- discount float4,
- taxincluded bool default 'f',
- creditlimit float default 0,
- terms int2 default 0,
- customernumber varchar(32),
- cc text,
- bcc text,
- business_id int,
- taxnumber varchar(32),
- sic_code varchar(6),
- iban varchar(34),
- bic varchar(11),
- employee_id int
-);
---
-insert into temp (id,name,address1,city,country,state,contact,phone,fax,email,notes,discount,taxincluded,creditlimit,terms,customernumber,cc,bcc,business_id,taxnumber,sic_code,iban,bic,employee_id) select id,name,substr(addr1,1,32),substr(addr2,1,32),substr(addr3,1,32),substr(addr4,1,32),contact,phone,fax,email,notes,discount,taxincluded,creditlimit,terms,substr(customernumber,1,32),cc,bcc,business_id,substr(taxnumber,1,32),sic_code,iban,bic,employee_id from customer;
---
-drop table customer;
-alter table temp rename to customer;
---
-create index customer_id_key on customer (id);
-create index customer_customernumber_key on customer (customernumber);
-create index customer_name_key on customer (name);
-create index customer_contact_key on customer (contact);
---
-create trigger del_customer after delete on customer for each row execute procedure del_customer();
--- end trigger
---
-create table temp (
- id int default nextval('id'),
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- contact varchar(64),
- phone varchar(20),
- fax varchar(20),
- email text,
- notes text,
- terms int2 default 0,
- taxincluded bool default 'f',
- vendornumber varchar(32),
- cc text,
- bcc text,
- gifi_accno varchar(30),
- business_id int,
- taxnumber varchar(32),
- sic_code varchar(6),
- discount float4,
- creditlimit float default 0,
- iban varchar(34),
- bic varchar(11),
- employee_id int
-);
---
-insert into temp (id,name,address1,city,country,state,contact,phone,fax,email,notes,terms,taxincluded,vendornumber,cc,bcc,gifi_accno,business_id,taxnumber,sic_code,discount,creditlimit,iban,bic,employee_id) select id,name,substr(addr1,1,32),substr(addr2,1,32),substr(addr3,1,32),substr(addr4,1,32),contact,phone,fax,email,notes,terms,taxincluded,substr(vendornumber,1,32),cc,bcc,gifi_accno,business_id,substr(taxnumber,1,32),sic_code,discount,creditlimit,iban,bic,employee_id from vendor;
---
-drop table vendor;
-alter table temp rename to vendor;
---
-create index vendor_id_key on vendor (id);
-create index vendor_name_key on vendor (name);
-create index vendor_vendornumber_key on vendor (vendornumber);
-create index vendor_contact_key on vendor (contact);
---
-create trigger del_vendor after delete on vendor for each row execute procedure del_vendor();
--- end trigger
---
-create table temp (
- trans_id int,
- shiptoname varchar(64),
- shiptoaddress1 varchar(32),
- shiptoaddress2 varchar(32),
- shiptocity varchar(32),
- shiptostate varchar(32),
- shiptozipcode varchar(10),
- shiptocountry varchar(32),
- shiptocontact varchar(64),
- shiptophone varchar(20),
- shiptofax varchar(20),
- shiptoemail text
-);
---
-insert into temp (trans_id,shiptoname,shiptoaddress1,shiptocity,shiptocountry,shiptostate,shiptocontact,shiptophone,shiptofax,shiptoemail) select trans_id,shiptoname,substr(shiptoaddr1,1,32),substr(shiptoaddr2,1,32),substr(shiptoaddr3,1,32),substr(shiptoaddr4,1,32),shiptocontact,shiptophone,shiptofax,shiptoemail from shipto;
---
-drop table shipto;
-alter table temp rename to shipto;
-create index shipto_trans_id_key on shipto (trans_id);
---
-create table temp (
- id int default nextval('id'),
- login text,
- name varchar(64),
- address1 varchar(32),
- address2 varchar(32),
- city varchar(32),
- state varchar(32),
- zipcode varchar(10),
- country varchar(32),
- workphone varchar(20),
- homephone varchar(20),
- startdate date default current_date,
- enddate date,
- notes text,
- role varchar(20),
- sales bool default 'f',
- email text,
- sin varchar(20),
- iban varchar(34),
- bic varchar(11),
- managerid int
-);
---
-insert into temp (id,login,name,address1,city,country,state,workphone,homephone,startdate,enddate,notes,role,sales,email,sin,iban,bic,managerid) select id,login,name,substr(addr1,1,32),substr(addr2,1,32),substr(addr3,1,32),substr(addr4,1,32),workphone,homephone,startdate,enddate,notes,role,sales,email,sin,iban,bic,managerid from employee;
---
-drop table employee;
-alter table temp rename to employee;
---
-create index employee_id_key on employee (id);
-create unique index employee_login_key on employee (login);
-create index employee_name_key on employee (name);
---
-update defaults set version = '2.3.5';
-
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.5-2.3.6.sql b/sql-ledger/sql/Pg-upgrade-2.3.5-2.3.6.sql
deleted file mode 100644
index 3eac490..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.5-2.3.6.sql
+++ /dev/null
@@ -1,15 +0,0 @@
---
-create table pricegroup (id int default nextval('id'), pricegroup text);
-create index pricegroup_pricegroup_key on pricegroup (pricegroup);
-create index pricegroup_id_key on pricegroup (id);
---
-create table partscustomer (parts_id int, customer_id int, pricegroup_id int, pricebreak float4, sellprice float, validfrom date, validto date);
---
-create table language (code varchar(6), description text);
-alter table customer add language_code varchar(6);
-alter table customer add pricegroup_id int;
---
-alter table vendor add language_code varchar(6);
-alter table vendor add pricegroup_id int;
---
-update defaults set version = '2.3.6';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.6-2.3.7.sql b/sql-ledger/sql/Pg-upgrade-2.3.6-2.3.7.sql
deleted file mode 100644
index 8eb265b..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.6-2.3.7.sql
+++ /dev/null
@@ -1,6 +0,0 @@
---
-alter table partscustomer add curr char(3);
-alter table customer add curr char(3);
-alter table vendor add curr char(3);
---
-update defaults set version = '2.3.7';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.7-2.3.8.sql b/sql-ledger/sql/Pg-upgrade-2.3.7-2.3.8.sql
deleted file mode 100644
index 56979be..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.7-2.3.8.sql
+++ /dev/null
@@ -1,16 +0,0 @@
---
-create table audittrail (
- trans_id int,
- tablename text,
- reference text,
- formname text,
- action text,
- transdate timestamp default current_timestamp,
- employee_id int
-);
-create index audittrail_trans_id_key on audittrail (trans_id);
---
-alter table defaults add audittrail bool;
-alter table defaults alter audittrail set default '0';
---
-update defaults set version = '2.3.8', audittrail = '0';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.8-2.3.9.sql b/sql-ledger/sql/Pg-upgrade-2.3.8-2.3.9.sql
deleted file mode 100644
index dc484ce..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.8-2.3.9.sql
+++ /dev/null
@@ -1,15 +0,0 @@
---
-create table translation (
- trans_id int,
- language_code varchar(6),
- description text
-);
-create index translation_trans_id_key on translation (trans_id);
---
-alter table ar add language_code varchar(6);
-alter table ap add language_code varchar(6);
-alter table oe add language_code varchar(6);
---
-create unique index language_code_key on language (code);
---
-update defaults set version = '2.3.9';
diff --git a/sql-ledger/sql/Pg-upgrade-2.3.9-2.4.2.sql b/sql-ledger/sql/Pg-upgrade-2.3.9-2.4.2.sql
deleted file mode 100644
index 4e91e47..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.3.9-2.4.2.sql
+++ /dev/null
@@ -1,34 +0,0 @@
---
-drop trigger del_customer on customer;
-drop trigger del_vendor on vendor;
-drop function del_customer();
-drop function del_vendor();
---
-create function del_customer() returns opaque as '
-begin
- delete from shipto where trans_id = old.id;
- delete from customertax where customer_id = old.id;
- delete from partscustomer where customer_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-create trigger del_customer after delete on customer for each row execute procedure del_customer();
--- end trigger
---
-create function del_vendor() returns opaque as '
-begin
- delete from shipto where trans_id = old.id;
- delete from vendortax where vendor_id = old.id;
- delete from partsvendor where vendor_id = old.id;
- return NULL;
-end;
-' language 'plpgsql';
--- end function
---
-create trigger del_vendor after delete on vendor for each row execute procedure del_vendor();
--- end trigger
---
-update defaults set version = '2.4.2';
-
diff --git a/sql-ledger/sql/Pg-upgrade-2.4.2-2.4.3.sql b/sql-ledger/sql/Pg-upgrade-2.4.2-2.4.3.sql
deleted file mode 100644
index a3c21f3..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.4.2-2.4.3.sql
+++ /dev/null
@@ -1,17 +0,0 @@
---
-alter table defaults rename invnumber to sinumber;
-alter table defaults add vinumber text;
-alter table defaults add employeenumber text;
-alter table defaults add partnumber text;
-alter table defaults add customernumber text;
-alter table defaults add vendornumber text;
---
-alter table employee add employeenumber varchar(32);
---
-alter table customer add startdate date;
-alter table customer add enddate date;
---
-alter table vendor add startdate date;
-alter table vendor add enddate date;
---
-update defaults set version = '2.4.3';
diff --git a/sql-ledger/sql/Pg-upgrade-2.4.3-2.4.4.sql b/sql-ledger/sql/Pg-upgrade-2.4.3-2.4.4.sql
deleted file mode 100644
index 38e2575..0000000
--- a/sql-ledger/sql/Pg-upgrade-2.4.3-2.4.4.sql
+++ /dev/null
@@ -1,5 +0,0 @@
---
-alter table employee add dob date;
-alter table employee rename sin to ssn;
---
-update defaults set version = '2.4.4';
diff --git a/sql-ledger/sql/Poland-chart.sql b/sql-ledger/sql/Poland-chart.sql
deleted file mode 100644
index 64960ca..0000000
--- a/sql-ledger/sql/Poland-chart.sql
+++ /dev/null
@@ -1,337 +0,0 @@
--- Chart of Account for Poland
--- From: Peter Dabrowski <meritage@mail.com>
--- Sun, 23 March 2003
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('000000000','Aktywa Trwa³e','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001000000','¦rodki Trwa³e','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001010000','Grunty w³asne i prawa wieczystego u¿ytkowania gruntów','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001020000','Budynki, locale i obiekty in¿ynierii l±dowej i wodnej','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001030000','Urz±dzenia techniczne i maszyny','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001040000','¦rodki transportu','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('001050000','Inne ¶rodki trwa³e','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('002000000','Warto¶ci niematerialne i prawne','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('002010000','Koszty zakoñczonych prac rozwojowych','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('002020000','Nabyta warto¶æ firmy','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('002080000','Inne warto¶ci niematerialne i prawne','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('002090000','Zaliczki na warto¶ci niematerialne i prawne','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003000000','D³ugoterminowe aktywa finansowe','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003010000','W jednostkach powi±zanych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003010100','Udzia³y lub akcje','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003010200','Inne papiery warto¶ciowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003010300','Udzielone porzyczki','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003010400','Inne d³ugoterminowe aktywa finansowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003020000','W pozosta³ych jednostkach','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003020100','Udzia³y lub akcje','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003020200','Inne papiery warto¶ciowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003020300','Udzielone po¿yczki','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003020400','Inne d³ugoterminowe aktywa finansowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003090000','Inne investycje d³ugoterminowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('003090100','Inne rodzaje d³ugoterminowych aktywów finansowych','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('004000000','Investycje w nieruchomo¶ci i prawa','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('004010000','Nieruchomo¶ci','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('004020000','Warto¶ci niematerialne i prawne','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('005000000','D³ugoterminowe rozliczenia miêdzyokresowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('005010000','Aktywa z tytu³u odroczonego podatku dochodowego','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('005020000','Inne rozliczenia miêdzyokresowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('006000000','Nale¿no¶ci d³ugoterminowe','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('006010000','Od jednostek powi±zanych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('006020000','Od pozosta³ych jednostek','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007000000','Odpisy umorzeniowe ¶rodków trwa³ych oraz warto¶ci niematerialnych i prawnych','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007010000','Odpisy umorzeniowe warto¶ci gruntów i prawa wieczystego u¿ytkowania gruntów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007020000','Odpisy umorzeniowe budynków, lokali i obiektów in¿ynierii l±dowej i wodnej','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007030000','Odpisy umorzeniowe urz±dzeñ technicznych i maszyn','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007040000','Odpisy umorzeniowe ¶rodków transportu','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007050000','Odpisy umorzeniowe ulepszeñ obcych ¶rodków trwa³ych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('007090000','Odpisy umorzeniowe innych ¶rodków trwa³ych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008000000','¦rodki trwa³e w budowie','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008010000','Inwestycje budowy ¶rodka trwa³ego','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008020000','Ulepszenia ¶rodka trwa³ego','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008030000','Nak³ady na budowê ¶rodka trwa³ego','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008040000','Zaliczki na ¶rodki trwa³e w budowie','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('008050000','Ulepszenia obcych ¶rodków trwa³ych','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('009000000','Odpisy aktualizuj±ce d³ugoterminowe aktywa finansowe','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('009010000','Odpisy aktualizuj±ce udzia³y i akcje w obcych jednostkach','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('009020000','Odpisy aktualizuj±ce lokaty','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('009030000','Odpisy aktualizuj±ce udzielone porzyczki d³ugoterminowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('009090000','Odpisy aktualizuj±ce inne rodzaje d³ugoterminowych aktywów finansowych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('100000000','¦rodki pieniê¿ne, rachunki bankowe oraz inne krótkoterminowe aktywa finansowe','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('110000000','¦rodki pieniê¿ne w kasie','A','','A','AR:AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('110010000','Kasa krajowych ¶rodków pieniê¿nych','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('110020000','Kasa zagranicznych ¶rodków pieniê¿nych','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('113000000','Rachunki i kredyty bankowe','A','','A','AR:AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('113010000','Rachunek bie¿±cy','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('113020000','Rachunek ¶rodków wyodrêbnionych i zablokowanych','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('113030000','Rachunki kredytów bankowych','A','','A','AR_paid:AP_amount:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('113040000','Rachunek ¶rodków walutowych','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114000000','Krótkoterminowe aktywa finansowe','A','','A','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114010000','Krótkoterminowe aktywa finansowe w jednostkach powi±zanych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114010100','Udzia³y lub akcje','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114010200','Inne papiery warto¶ciowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114010300','Udzielone po¿yczki','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114010400','Inne krótkoterminowe aktywa finansowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114020000','Krótkoterminowe aktywa finansowe w pozosta³ych jednostkach','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114020100','Udzia³y lub akcje','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114020200','Inne papiery warto¶ciowe','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('114020400','Inne krótkoterminowe aktywa finansowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('115000000','Inne ¶rodki pieniê¿ne','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('116000000','Inne aktywa pieniê¿ne','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('117000000','Inne inwestycje krótkoterminowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('118000000','Krótkoterminowe rozliczenia miêdzyokresowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('200000000','Rozrachunki i roszczenia','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220000000','Nale¿no¶ci krótkoterminowe','A','','L','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010000','Nale¿no¶ci od jednostek powi±zanych','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010100','Nale¿no¶ci z tytu³u dostaw i us³ug','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010110','Nale¿no¶ci z tytu³u dostaw i us³ug, o okresie sp³aty do 12 miesiêcy','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010120','Nale¿no¶ci z tytu³u dostaw i us³ug, o okresie sp³aty powy¿ej 12 miesiêcy','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010200','Inne nale¿no¶ci','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010210','Zobowi±zania z tytu³u pokrycia kosztów ogólnego zarz±du','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220010220','Zobowi±zania z tytu³u rozliczeñ VAT','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221010000','Nale¿no¶ci od pozosta³ych jednostek','A','','L','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020100','Nale¿no¶ci z tytu³u dostaw i us³ug','A','','L','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020110','Nale¿no¶ci z tytu³u dostaw i us³ug, o okresie sp³aty do 12 miesiêcy','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020120','Nale¿no¶ci z tytu³u dostaw i us³ug, o okresie sp³aty powy¿ej 12 miesiêcy','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020200','Nale¿no¶ci z tytu³u podatków, dotacji, ce³, ubezpieczeñ spo³ecznych i zdrowotnych oraz innych ¶wiadczeñ','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020300','Zaliczki przekazane dostawcom','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020400','Nale¿no¶ci dochodzone na drodze s±dowej','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('221020500','Inne nale¿no¶ci','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222000000','Zobowi±zania krótkoterminowe','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222010000','Zobowi±zania wobec jednostek powiazanych','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222010100','Zobowi±zania z tytu³u dostaw i us³ug','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222010200','Zobowi±zania o okresie wymagalno¶ci do 12 miesiêcy','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222010300','Zobowi±zania o okresie wymagalno¶ci powy¿ej 12 miesiêcy','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222010400','Inne zobowi±zania','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020000','Zobowi±zania wobec pozosta³ych jednostek','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020100','Kredyty i po¿yczki','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020200','Zobowi±zania z tytu³u emisji d³u¿nych papierów warto¶ciowych','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020300','Inne zobowi±zania finasowe','A','','L','AP_Amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020400','Zobowiazania z tytu³u dostaw i us³ug','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020500','Zobowi±zania o okresie wymagalno¶ci do 12 miesiêcy ','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020600','Zobowi±zania o okresie wymagalno¶ci powy¿ej 12 miesiêy','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020700','Zaliczki otrzmane na dostawy','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020800','Zobowi±zania wekslowe','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222020900','Zobowi±zania z tytu³u podatków, ce³, ubezpieczeñ i innych ¶wiadczeñ','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222021000','Zobowi±zania z tytu³u wynagrodzeñ','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('222021100','Inne zobowi±zania','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223000000','Rozrachunki publicznoprawne','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223010000','Rozrachunki z urzêdem skarbowym z tytu³u VAT','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223020000','Rozliczenie nale¿nego VAT','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223020100','Rozliczenie nale¿nego VAT-22%','A','','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223020200','Rozliczenie nale¿nego VAT-7%','A','','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223020300','Rozliczenie nale¿nego VAT-0%','A','','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223030000','Rozliczenie naliczonego VAT','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223030100','Rozliczenie naliczonego VAT-22%','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223030200','Rozliczenie naliczonego VAT-7%','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223030300','Rozliczenie naliczonego VAT-0%','A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223040000','Korekty naliczonego VAT','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223050000','Rozrachunki z Urzêdem Celnym','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223060000','Rozrachunki z Urzêdem Skarbowym z tytu³u znaków akcyzy','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223070000','Rozrachunki z Urzêdem Skarbowym z tytu³u podatku akcyzowego','A','','L','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223080000','Rozliczenie znaków akcyzy','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223090000','Rozrachunki z ZUS','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('223100000','Rozrachunki z Urzêdem Skarbowym z tytu³u podatku dochodowego od osób prawnych','A','','L','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('224000000','Rozrachunki z pracownikami','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('224010000','Rozrachunki z tytu³u wynagrodzeñ','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('224020000','Rozrachunki z tytu³u po¿yczek udzielonych pracownikom','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('224090000','Inne rozrachunki z pracownikami','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225000000','Zobowi±zania d³ugoterminowe','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225010000','Zobowi±zania wobec jednostek powi±zanych','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225010100','Zobowi±zania z tytu³u wyodrêbnienia sk³adników maj±tkowych','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225010200','Zobowi±zania z tytu³u podzia³u zysku','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020000','Zobowi±zania wobec pozosta³ych jednostek','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020100','Kredyty i po¿yczki otrzymane','A','','L','AR_amount:AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020200','Kredyty i po¿yczki udzielone','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020300','Zobowi±zania z tytu³u emisji d³u¿nych papierów warto¶ciowych','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020400','Inne zobowi±zania kredytowe','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225020500','Inne zobowi±zania','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225030000','Rozrachunki z tytu³u wp³at na kapita³ zak³adowy','A','','L','AR_amount:APamount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225040000','Rozrachunki z tytu³u wk³adów niepieniê¿nych na kapita³ zak³adowy','A','','L','AR_amount:AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225050000','Rozrachunki z tytu³u podwy¿szenia kapita³u ze ¶rodków w³asnych spó³ki','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225060000','Rozrachunki z tytu³u umorzenia udzia³ów w³asnych','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225070000','Rozrachunki z tytu³u dywident','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225080000','Rozrachunki z tytu³u dop³at i zwrotu dop³at','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('225090000','Pozosta³e rozrachunki ze wspólnikami','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('229000000','Odpisy aktualizuj±ce rozrachunki','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('300000000','Materia³y i towary','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330000000','Rozliczenie zakupu','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330010000','Rozliczenie warto¶ci materia³ów i towarów w drodze','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330020000','Warto¶ci dostaw niefakturowanych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330030000','Przychody wszelkich dostaw i us³ug i ich rozliczanie','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330040000','Odhylenia cen ewidencyjnych od rzeczywistych cen nabycia lub zakupu','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330050000','Koszty zakupu zawarte w fakturach dostawców','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330060000','Op³aty manipulacyjne policzone przez Urz±d Celny','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330070000','Niedobory, szkody i nadwy¿ki w transporcie','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330080000','Znaki akcyzy wed³ug dokumentu SAD','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330090000','Reklamacje faktur dostawców','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('331000000','Materia³y','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('331010000','Materia³y w magazynach w³asnych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('331020000','Materia³y w magazynach obcych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('331030000','Materia³y w przerobie','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('333000000','Towary','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('333010000','Towary w magazynach w³asnych','A','','A','IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('333020000','Towary w magazynach obcych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('333030000','Towary w detalu','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('334000000','Odchylenia od cen ewidencyjnych materia³ów i towarów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('334010000','Odpisy aktualizuj±ce warto¶æ materia³ów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('334020000','Odpisy aktualizuj±ce warto¶æ towarów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('400000000','Koszty wed³ug rodzajów i ich rozliczeñ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440000000','Koszty wed³ug rodzajów','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440010000','Zu¿ycie materia³ów i energii','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440010100','Zu¿ycie materia³ów biurowych','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020000','Us³ugi obce','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020100','Us³ugi celne','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020200','Us³ugi telekomunikacyjne','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020300','Us³ugi pocztowe','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020400','Us³ugi kurierskie i transportowe','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020500','Analizy sanitarne','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440020600','Us³ugi graficzne i drukarskie','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440030000','Podatki i op³aty','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440030100','Op³aty i prowizje bankowe','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440030200','Op³aty s±dowe, prawnicze i notarialne','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440030300','Op³aty skarbowe','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440030400','Koncesje','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440040000','Wynagrodzenia za pracê','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('441000000','¦wiadczenia na rzecz pracowników','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('442000000','Amortyzacja','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('443000000','Pozosta³e','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('449000000','Rozliczenie kosztów','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('449010000','Nie podlegaj±ce rozliczeniu w czasie','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('449020000','Przypadaj±ce na przysz³e okresy','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('449030000','Koszty zgromadzone','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('449040000','Koszty nie wliczane do warto¶ci sprzeda¿y','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('500000000','Koszty wed³ug typów dzia³alno¶ci i ich rozliczenie','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550000000','Koszty dzia³alno¶ci podstawowej-produkcyjnej','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550010000','Rozliczone koszta dzia³alno¶ci','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550020000','Koszty nie zakoñczonych d³ugotrwa³ych us³ug','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550030000','Straty zwi±zane z wykonaniem d³ugotrwa³ych us³ug','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('552000000','Koszty dzia³alno¶ci podstawowej-handlowej','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('552010000','Koszty utrzymania punktów sprzeda¼y detalicznej','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550200000','Koszty utrzymania hurtowni','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('552030000','Koszty sprzeda¿y wyrobów','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('552040000','Podatek akcyzowy','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('552050000','Op³aty celne','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('553000000','Koszty dzia³alno¶ci pomocniczej','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('553010000','¦wiadczenia us³ug transportowych','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('555000000','Koszty zarz±du','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('555010000','Koszty zarz±dzania jednostk±','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('555020000','¦wiadczenia us³ug na potrzeby reprezentacji i reklamy','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('558000000','Rozliczenie kosztów dzia³alno¶ci','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('600000000','Produkty i rozliczenia miêdzyokresowe','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('660000000','Pó³produkty i produkty w toku','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('661000000','Produkty gotowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('661010000','Wyroby gotowe','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('661020000','Wyroby poza jednostk±','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('662000000','Odchylenia od cen ewidencyjnych produktów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('662010000','Odchylenia od cen evidencyjnych wyrobów gotowych','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('662020000','Odhylenia od cen evidencyjnych pó³fabrykatów','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('664000000','Rozliczenia miêdzyokresowe kosztów','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('664010000','Czynne rozliczenia miêdzyokresowe kosztów','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('664020000','Bierne rozliczenia miêdzyokresowe kosztów','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('665000000','Pozosta³e rozliczenia miêdzyokresowe','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('665010000','Czynne rozliczenia przysz³ych okresów','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('665020000','Bierne rozliczenia przysz³ych okresów','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('700000000','Przychody i koszty zwi±zane z ich osi±gniêciem','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770000000','Sprzeda¿ produktów','A','','I','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770010000','Sprzeda¿ produktów na kraj','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770020000','Sprzeda¿ produktów na eksport','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770030000','Sprzeda¿ us³ug na kraj','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770040000','Sprzeda¿ us³ug na eksport','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770100000','Koszty sprzedanych produktów','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770110000','Koszt w³asny sprzeda¿y produktów na kraj','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770120000','Koszt w³asny sprzeda¿y produktów na eksport','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770130000','Koszt w³asny sprzeda¿y us³ug na kraj','A','','E','IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770140000','Koszt w³asny sprzeda¿y us³ug na export','A','','E','IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773000000','Sprzeda¿ towarów','A','','I','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773010000','Sprzeda¿ hurtowa towarów','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773020000','Sprzeda¿ detaliczna towarów','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773030000','Sprzeda¿ wysy³kowa towarów','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773040000','Prowizja komisowa','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773100000','Warto¶æ sprzedanych towarów w cenach zakupu','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773110000','Warto¶æ sprzedanych towarów w sprzeda¿y hurtowej','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773120000','Warto¶æ sprzedanych towarów w sprzeda¿y detalicznej','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773130000','Warto¶æ sprzedanych towarów w sprzeda¿y wysy³kowej','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('773140000','Prowizja komisowa','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774000000','Sprzeda¿ materia³ów','A','','I','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774010000','Materia³y','A','','I','AP_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774020000','Opakowania','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774030000','Odpady','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774100000','Warto¶æ sprzedanych materia³ów','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774110000','Warto¶æ w cenach zakupu sprzedanych materia³ów','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774120000','Warto¶æ w cenach zakupu sprzedanych opakowañ','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('774130000','Warto¶æ w cenach zakupu sprzedanych odpadów','A','','E','IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775000000','Przychody finansowe','A','','I','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775010000','Kwoty nale¿ne ze sprzeda¿y aktywów finansowych','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775020000','Kwoty nale¿ne z tytu³u dywident','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775030000','Otrzymane odsetki','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775040000','Przychody ze zbycia investycji','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775050000','Aktualizacja warto¶ci investycji-przychody','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775060000','Dodatnie ró¿nice kursu walut','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775070000','Pozosta³e przychody finansowe','A','','I','AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775100000','Koszty finansowe','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775110000','Warto¶æ sprzedanych investycji','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775120000','Odpisy z tytu³u utraty warto¶ci investycji-koszty','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775130000','Odsetki zap³acone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775140000','Ujemne ró¿nice kursu walut','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('775190000','Pozosta³e koszty finansowe','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776000000','Pozosta³e przychody operacyjne','A','','I','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776010000','Przychody ze zbycia niefinansowych aktywów trwa³ych','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776020000','Otrzymane dotacje','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776030000','Przychody z us³ug socjalnych','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776040000','Przychody ze wzrostu warto¶ci niefinansowych aktywów trwa³ych','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776090000','Inne pozosta³e przychody operacyjne','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776100000','Pozosta³e koszty operacyjne','A','','E','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776110000','Warto¶æ sprzedanych niefinansowych aktywów trwa³ych','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776120000','Dotacje przekazane','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776130000','Odpisy z tytu³u utraty warto¶ci aktywów niefinansowych','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('776140000','Inne pozosta³e koszty operacyjne','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('777000000','Zyski nadzwyczajne','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('777100000','Straty nadzwyczajne','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779000000','Obroty wewnêtrzne','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779010000','Koszt wyrobów w³asnej produkcji wydanych do w³asnych sklepów','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779020000','¦wiadczenia na rzecz ¶rodków trwa³ych w budowie','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779040000','Koszt niedoborów produktów','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779050000','Koszt zaniechania okre¶lonego rodzaju dzia³alno¶ci','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779100000','Koszt obrotów wewnêtrznych','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779110000','Koszt wytworzenia wyrobów gotowych wydanych do w³asnych sklepów','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779120000','Koszt wytworzenia ¶wiadczeñ na rzecz ¶rodków trwa³ych w budowie','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779130000','Koszt wytworzenia zakoñczonych prac rozwojowych','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779140000','Koszt wytworzenia produktów uznanych za niedobory','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('779150000','Koszt zaniechania okre¶lonego rodzaju dzia³alno¶ci','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('800000000','Kapita³y w³asne i wynik finansowy','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('880000000','Kapita³ podstawowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('880010000','Kapita³ zak³adowy','A','','Q','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('881000000','Fundusze wydzielone jednostkom zale¿nym','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('882000000','Nale¿ne wp³aty na kapita³ podstawowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('883000000','Fundusze wydzielone jednostkom zale¿nym','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('884000000','Kapita³ zapasowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('885000000','Kapita³ rezerwowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('886000000','Kapita³ z aktualizacji wyceny','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('887000000','Rozliczenia wyniku finansowego','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('888000000','Rezerwy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('888010000','Rezerwa z tytu³u odroczonego podatku dochodowego','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('888020000','Rezerwa na ¶wiadczenia','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('888020100','Rezerwa d³ugoterminowa na ¶wiadczenia emerytalne i podobne','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('888020200','Rezerwa krótkoterminowa na ¶wiadczenia emerytalne i podobne','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('889090000','Pozosta³e rezerwy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('889090100','Pozosta³e rezerwy d³ugoterminowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('889090200','Pozosta³e rezerwy krótkoterminowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('890000000','Rozliczenia miêdzyokresowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('890010000','Ujemna warto¶æ firmy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('890020000','Inne rozliczenia miêdzyokresowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('890020100','Inne rozliczenia miêdzyokresowe d³ugoterminowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('890020200','Inne rozliczenia miêdzyokresowe krótkoterminowe','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('891000000','Fundusze specjalne','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('892000000','Wynik finansowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('893000000','Odpisy z zysku netto w ci±gu roku obrotowego','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('893010000','Podatek dochodowy','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('893020000','Inne obowi±zkowe obci±¿enia wyniku finansowego','A','','Q','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223020100'),0.22);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223020200'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223020300'),0);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223030100'),0.22);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223030200'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '223030300'),0);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '333000000'), income_accno_id = (select id from chart where accno = '773010000'), expense_accno_id = (select id from chart where accno = '773110000'), fxgain_accno_id = (select id from chart where accno = '775060000'), fxloss_accno_id = (select id from chart where accno = '775140000'), invnumber = '1000', sonumber = '1000', ponumber = '1000', curr = 'PLN:USD:EUR', weightunit = 'kg';
---
-
-
diff --git a/sql-ledger/sql/Simplified-Chinese_Default-UTF8-chart.sql b/sql-ledger/sql/Simplified-Chinese_Default-UTF8-chart.sql
deleted file mode 100644
index 9e7105d..0000000
--- a/sql-ledger/sql/Simplified-Chinese_Default-UTF8-chart.sql
+++ /dev/null
@@ -1,78 +0,0 @@
--- Default chart of accounts -- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','应付所得税','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','长期负债','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','股份资本','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','ä¿ç•™ç›ˆé¦€','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','销售盈馀','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','谘询盈馀','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','其它盈馀','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','货销æˆæœ¬','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','薪资支出','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','日常åŠç®¡ç†æ”¯å‡º','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','呆å¸å¤‡æŠµ','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','æµåŠ¨èµ„产','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','资本资产','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','累计分期付款 - 装璜åŠè®¾å¤‡.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','累计分期付款 - è¿è¾“工具','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','æµåŠ¨è´Ÿå€º','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','银行借款','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','æµåŠ¨ç›ˆé¦€','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','应付公å¸ç¨Ž','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','ä¿ç•™ç›ˆé¦€ - 去年度','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','普通股份','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','存货资产','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','广告行销','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','工具','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','办公用å“','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','æƒåˆ©é‡‘','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','会计法务','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','ä¿é™©','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','分期支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','åå¸','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','所得税','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','利æ¯åŠé“¶è¡Œæ‰‹ç»­è´¹','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','薪资','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','ä¿é™©æ”¯å‡º','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','退休金支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','è¡¥å¿é‡‘支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','员工ç¦åˆ©','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','销售 / 软体','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','利æ¯','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','è¿è´¹','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','租金','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','库存 / 软体','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','库存 / 二级市场零件','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','销售 / 二级市场零件','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','货销æˆæœ¬ / 软体','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','采购','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','货销æˆæœ¬ / 二级市场零件','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','零用金','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','办公室装璜åŠè®¾å¤‡','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','æ—…è´¹åŠå¨±ä¹','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','股东贷款','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','注册费','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','电信费','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5781','网路连线费','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','维修管ç†è´¹','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2311','地方税','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','è¿é”€è´¹','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','库存 / 硬体','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','货销æˆæœ¬ / 硬体','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','应付å¸æ¬¾','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','è¿è¾“工具','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','程å¼è®¾è®¡','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','销售 / 硬体','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','谘询','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','应收å¸æ¬¾','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1061','支票户头','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','商å“æœåŠ¡ç¨Ž','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
---
--- exchange rate
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'CAD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Simplified-Chinese_Default-chart.sql b/sql-ledger/sql/Simplified-Chinese_Default-chart.sql
deleted file mode 100644
index f5db59e..0000000
--- a/sql-ledger/sql/Simplified-Chinese_Default-chart.sql
+++ /dev/null
@@ -1,78 +0,0 @@
--- Default chart of accounts -- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','Ó¦¸¶ËùµÃË°','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','³¤ÆÚ¸ºÕ®','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','¹É·Ý×ʱ¾','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','±£ÁôÓ¯âÅ','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','ÏúÊÛÓ¯âÅ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','ÚÑѯӯâÅ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','ÆäËüÓ¯âÅ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','»õÏú³É±¾','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','н×ÊÖ§³ö','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','ÈÕ³£¼°¹ÜÀíÖ§³ö','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','´ôÕʱ¸µÖ','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','Á÷¶¯×ʲú','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','×ʱ¾×ʲú','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','ÀۼƷÖÆÚ¸¶¿î - װ諼°É豸.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','ÀۼƷÖÆÚ¸¶¿î - ÔËÊ乤¾ß','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','Á÷¶¯¸ºÕ®','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','ÒøÐнè¿î','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','Á÷¶¯Ó¯âÅ','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Ó¦¸¶¹«Ë¾Ë°','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','±£ÁôÓ¯âÅ - È¥Äê¶È','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','ÆÕͨ¹É·Ý','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','´æ»õ×ʲú','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','¹ã¸æÐÐÏú','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','¹¤¾ß','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','°ì¹«ÓÃÆ·','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','ȨÀû½ð','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','»á¼Æ·¨Îñ','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','±£ÏÕ','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','·ÖÆÚÖ§³ö','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','»µÕÊ','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','ËùµÃË°','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','ÀûÏ¢¼°ÒøÐÐÊÖÐø·Ñ','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','н×Ê','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','±£ÏÕÖ§³ö','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','ÍËÐݽðÖ§³ö','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','²¹³¥½ðÖ§³ö','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','Ô±¹¤¸£Àû','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','ÏúÊÛ / ÈíÌå','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','ÀûÏ¢','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','ÔË·Ñ','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','×â½ð','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','¿â´æ / ÈíÌå','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','¿â´æ / ¶þ¼¶Êг¡Áã¼þ','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','ÏúÊÛ / ¶þ¼¶Êг¡Áã¼þ','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','»õÏú³É±¾ / ÈíÌå','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','²É¹º','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','»õÏú³É±¾ / ¶þ¼¶Êг¡Áã¼þ','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','ÁãÓýð','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','°ì¹«ÊÒװ諼°É豸','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Â÷Ѽ°ÓéÀÖ','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','¹É¶«´û¿î','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','×¢²á·Ñ','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','µçÐÅ·Ñ','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5781','Íø·Á¬Ïß·Ñ','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','άÐÞ¹ÜÀí·Ñ','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2311','µØ·½Ë°','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','ÔËÏú·Ñ','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','¿â´æ / Ó²Ìå','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','»õÏú³É±¾ / Ó²Ìå','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Ó¦¸¶ÕÊ¿î','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','ÔËÊ乤¾ß','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','³ÌʽÉè¼Æ','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','ÏúÊÛ / Ó²Ìå','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','ÚÑѯ','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Ó¦ÊÕÕÊ¿î','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1061','֧Ʊ»§Í·','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','ÉÌÆ··þÎñË°','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
---
--- exchange rate
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'CAD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Spain-ISO-chart.sql b/sql-ledger/sql/Spain-ISO-chart.sql
deleted file mode 100644
index 525e492..0000000
--- a/sql-ledger/sql/Spain-ISO-chart.sql
+++ /dev/null
@@ -1,132 +0,0 @@
--- Chart of Accounts for Spain (Cuadro del Plan de Contabilidad español)
--- From: Federico Montesino Pouzols <fedemp@arrok.com>
--- 23 Apr 2002
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('099999999','Grupo 1: financiación básica','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('100000000','Capital','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('110000000','Reservas','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('120000000','Resultados pendientes de aplicación','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('130000000','Ingresos a distribuir en varios ejercicios','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('140000000','Provisiones para riesgos y gastos','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('150000000','Empréstitos y otras emisiones análogas','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('160000000','Deudas a largo plazo con empresas del grupo y asociadas','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('170000000','Deudas a largo plazo por prestamos recibidos y otros conceptos','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('180000000','Fianzas y depósitos recibidos a largo plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('190000000','Situaciones transitorias de financiación','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('199999999','Grupo 2: inmovilizado','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('200000000','Gastos de establecimiento','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('210000000','Inmovilizaciones inmateriales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220000000','Inmovilizaciones materiales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('230000000','Inmovilizaciones materiales en curso','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('240000000','Inversiones financieras en empresas del grupo y asociadas','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('250000000','Otras inversiones financieras permanentes','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('260000000','Fianzas y depósitos constituidos a largo plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('270000000','Gastos a distribuir en varios ejercicios','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('280000000','Amortización acumulada del inmovilizado','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('290000000','Provisiones de inmovilizado','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('299999999','Grupo 3: existencias','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('300000000','Comerciales','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('310000000','Materias primas','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('320000000','Otros aprovisionamientos','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330000000','Productos en curso','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('340000000','Productos semiterminados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('350000000','Productos terminados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('360000000','Subproductos, residuos y materiales recuperados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('390000000','Provisiones por depreciación de existencias','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('399999999','Grupo 4: acreedores y deudores por operaciones de tráfico','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('400000000','Proveedores','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('410000000','Acreedores varios','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('430000000','Clientes','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('431000000','Clientes, efectos comerciales a cobrar','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440000000','Deudores varios','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('460000000','Personal','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('470000000','Administraciones públicas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000000','Hacienda Pública, IVA soportado','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000001','IVA soportado 4%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000002','IVA soportado 7%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000003','IVA soportado 16%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('475100000','Hacienda Pública, acreedor por retenciones practicadas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('473000000','Hacienda Pública, retenciones y pagos a cuenta','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000000','Hacienda Pública, IVA repercutido','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000001','IVA repercutido 4%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000002','IVA repercutido 7%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000003','IVA repercutido 16%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('480000000','Ajustes por periodificación','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('490000000','Provisiones por operaciones de tráfico','A','','P','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('499999999','Grupo 5: cuentas financieras','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('500000000','Empréstitos y otras emisiones análogas a corto plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('510000000','Deudas a corto plazo con empresas del grupo y asociadas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('520000000','Deudas a corto plazo por préstamos recibidos y otros conceptos','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('530000000','Inversiones financieras a corto plazo en empresas del grupo y asociadas','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('540000000','Otras inversiones financieras temporales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550000000','Otras cuentas no bancarias','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('560000000','Fianzas y depósitos recibidos y constituidos a corto plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('569000000','Tesorería','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('570000000','Caja, euros','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('571000000','Caja, moneda extranjera','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('572000000','Bancos e instituciones de crédito, c/c. vista, euros','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('573000000','Bancos e instituciones de crédito, c/c. vista, moneda extranjera','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('574000000','Bancos e instituciones de crédito, cuentas de ahorro, euros','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('575000000','Bancos e instituciones de crédito, cuentas de ahorro, moneda extranjera','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('580000000','Ajustes por periodificación','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('590000000','Provisiones financieras','A','','P','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('599999999','Grupo 6: compras y gastos','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('600000000','Compras','A','','E','AP:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('608000000','Devoluciones de compras y operaciones similares','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('610000000','Variación de existencias','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('620000000','Servicios exteriores','A','','E','IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('630000000','Tributos','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('640000000','Gastos de personal','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('650000000','Otros gastos de gestión','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('660000000','Gastos financieros','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('665000000','Descuentos sobre ventas por pronto pago','A','','E','IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('668000000','Diferencias negativas de cambio','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('670000000','Pérdidas procedentes del inmovilizado y gastos excepcionales','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('680000000','Dotaciones para amortizaciones','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('690000000','Dotaciones a las provisiones','A','','E','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('699999999','Grupo 7: ventas e ingresos','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('700000000','Ventas de mercaderías, de producción propia, de servicios, etc.','A','','I','AR:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('708000000','Devoluciones de ventas y operaciones similares','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('710000000','Variación de existencias','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('730000000','Trabajos realizados para la empresa','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('740000000','Subvenciones a la explotación','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('750000000','Otros ingresos de gestión','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('760000000','Ingresos financieros','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('765000000','Descuentos sobre compras por pronto pago','A','','I','IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('768000000','Diferencias positivas de cambio','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770000000','Beneficios procedentes de inmovilizados e ingresos excepcionales','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('790000000','Excesos y aplicaciones de provisiones','A','','I','');
---
--- Taxes in Spain
---
--- IVA: 4, 7 or 16%
--- IVA soportado
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000000'), 0.0);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000001'), 0.04);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000002'), 0.07);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000003'), 0.16);
--- Recargo equivalente: 0.5, 1 or 4%
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000004'), 0.005);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000005'), 0.01);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000006'), 0.04);
---
--- IVA repercutido
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000000'), 0.0);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000001'), 0.04);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000002'), 0.07);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000003'), 0.16);
--- Recargo equivalente: 0.5, 1 or 4%
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000004'), 0.005);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000005'), 0.01);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000006'), 0.04);
---
--- update defaults
---
-update defaults set inventory_accno_id = (select id from chart where accno = '300000000'), income_accno_id = (select id from chart where accno = '700000000'), expense_accno_id = (select id from chart where accno = '600000000'), fxgain_accno_id = (select id from chart where accno = '768000000'), fxloss_accno_id = (select id from chart where accno = '668000000'), curr = 'EUR', weightunit = 'Kg';
---
diff --git a/sql-ledger/sql/Spain-UTF8-chart.sql b/sql-ledger/sql/Spain-UTF8-chart.sql
deleted file mode 100644
index 4faa510..0000000
--- a/sql-ledger/sql/Spain-UTF8-chart.sql
+++ /dev/null
@@ -1,133 +0,0 @@
--- Chart of Accounts for Spain (Cuadro del Plan de Contabilidad español)
--- From: Federico Montesino Pouzols <fedemp@arrok.com>
--- 23 Apr 2002
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('099999999','Grupo 1: financiación básica','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('100000000','Capital','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('110000000','Reservas','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('120000000','Resultados pendientes de aplicación','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('130000000','Ingresos a distribuir en varios ejercicios','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('140000000','Provisiones para riesgos y gastos','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('150000000','Empréstitos y otras emisiones análogas','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('160000000','Deudas a largo plazo con empresas del grupo y asociadas','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('170000000','Deudas a largo plazo por prestamos recibidos y otros conceptos','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('180000000','Fianzas y depósitos recibidos a largo plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('190000000','Situaciones transitorias de financiación','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('199999999','Grupo 2: inmovilizado','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('200000000','Gastos de establecimiento','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('210000000','Inmovilizaciones inmateriales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('220000000','Inmovilizaciones materiales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('230000000','Inmovilizaciones materiales en curso','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('240000000','Inversiones financieras en empresas del grupo y asociadas','A','', 'A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('250000000','Otras inversiones financieras permanentes','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('260000000','Fianzas y depósitos constituidos a largo plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('270000000','Gastos a distribuir en varios ejercicios','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('280000000','Amortización acumulada del inmovilizado','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('290000000','Provisiones de inmovilizado','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('299999999','Grupo 3: existencias','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('300000000','Comerciales','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('310000000','Materias primas','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('320000000','Otros aprovisionamientos','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('330000000','Productos en curso','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('340000000','Productos semiterminados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('350000000','Productos terminados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('360000000','Subproductos, residuos y materiales recuperados','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('390000000','Provisiones por depreciación de existencias','A','','A','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('399999999','Grupo 4: acreedores y deudores por operaciones de tráfico','H','', '','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('400000000','Proveedores','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('410000000','Acreedores varios','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('430000000','Clientes','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('431000000','Clientes, efectos comerciales a cobrar','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('440000000','Deudores varios','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('460000000','Personal','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('470000000','Administraciones públicas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000000','Hacienda Pública, IVA soportado','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000001','IVA soportado 4%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000002','IVA soportado 7%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('472000003','IVA soportado 16%','A','','P','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('475100000','Hacienda Pública, acreedor por retenciones practicadas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('473000000','Hacienda Pública, retenciones y pagos a cuenta','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000000','Hacienda Pública, IVA repercutido','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000001','IVA repercutido 4%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000002','IVA repercutido 7%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('477000003','IVA repercutido 16%','A','','P','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('480000000','Ajustes por periodificación','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('490000000','Provisiones por operaciones de tráfico','A','','P','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('499999999','Grupo 5: cuentas financieras','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('500000000','Empréstitos y otras emisiones análogas a corto plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('510000000','Deudas a corto plazo con empresas del grupo y asociadas','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('520000000','Deudas a corto plazo por préstamos recibidos y otros conceptos','A','','P','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('530000000','Inversiones financieras a corto plazo en empresas del grupo y asociadas','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('540000000','Otras inversiones financieras temporales','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('550000000','Otras cuentas no bancarias','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('560000000','Fianzas y depósitos recibidos y constituidos a corto plazo','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('569000000','Tesorería','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('570000000','Caja, euros','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('571000000','Caja, moneda extranjera','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('572000000','Bancos e instituciones de crédito, c/c. vista, euros','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('573000000','Bancos e instituciones de crédito, c/c. vista, moneda extranjera','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('574000000','Bancos e instituciones de crédito, cuentas de ahorro, euros','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('575000000','Bancos e instituciones de crédito, cuentas de ahorro, moneda extranjera','A','','A','AR_paid:AP_paid:AP_amount:AR_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('580000000','Ajustes por periodificación','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('590000000','Provisiones financieras','A','','P','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('599999999','Grupo 6: compras y gastos','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('600000000','Compras','A','','E','AP:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('608000000','Devoluciones de compras y operaciones similares','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('610000000','Variación de existencias','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('620000000','Servicios exteriores','A','','E','IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('630000000','Tributos','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('640000000','Gastos de personal','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('650000000','Otros gastos de gestión','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('660000000','Gastos financieros','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('665000000','Descuentos sobre ventas por pronto pago','A','','E','IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('668000000','Diferencias negativas de cambio','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('670000000','Pérdidas procedentes del inmovilizado y gastos excepcionales','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('680000000','Dotaciones para amortizaciones','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('690000000','Dotaciones a las provisiones','A','','E','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('699999999','Grupo 7: ventas e ingresos','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('700000000','Ventas de servicios y productos','A','','I','AR:IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('708000000','Devoluciones de ventas y operaciones similares','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('710000000','Variación de existencias','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('730000000','Trabajos realizados para la empresa','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('740000000','Subvenciones a la explotación','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('750000000','Otros ingresos de gestión','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('760000000','Ingresos financieros','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('765000000','Descuentos sobre compras por pronto pago','A','','I','IC_sale:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('768000000','Diferencias positivas de cambio','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('770000000','Beneficios procedentes de inmovilizados e ingresos excepcionales','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('790000000','Excesos y aplicaciones de provisiones','A','','I','');
---
--- Taxes in Spain
---
--- IVA: 4, 7 or 16%
--- IVA soportado
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000000'), 0.0);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000001'), 0.04);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000002'), 0.07);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000003'), 0.16);
--- Recargo equivalente: 0.5, 1 or 4%
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000004'), 0.005);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000005'), 0.01);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '472000006'), 0.04);
---
--- IVA repercutido
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000000'), 0.0);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000001'), 0.04);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000002'), 0.07);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000003'), 0.16);
--- Recargo equivalente: 0.5, 1 or 4%
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000004'), 0.005);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000005'), 0.01);
-INSERT INTO "tax" ("chart_id", "rate") VALUES ((SELECT id FROM chart WHERE accno = '477000006'), 0.04);
---
--- update defaults
---
-update defaults set inventory_accno_id = (select id from chart where accno = '300000000'), income_accno_id = (select id from chart where accno = '700000000'), expense_accno_id = (select id from chart where accno = '600000000'), fxgain_accno_id = (select id from chart where accno = '768000000'), fxloss_accno_id = (select id from chart where accno = '668000000'), curr = 'EUR', weightunit = 'Kg';
---
-
diff --git a/sql-ledger/sql/Swedish-chart.sql b/sql-ledger/sql/Swedish-chart.sql
deleted file mode 100644
index 4f68075..0000000
--- a/sql-ledger/sql/Swedish-chart.sql
+++ /dev/null
@@ -1,1135 +0,0 @@
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1','Tillgångar ','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('10','Immateriella anläggningstillgångar ','H','','','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1010','Balanserade utgifter ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1011','Balanserade utgifter för forskning och utveckling ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1012','Balanserade utgifter för dataprogram','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1019','Ackumulerade avskrivningar på balanserade utgifter','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1020','Koncessioner m m ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1029','Ackumulerade avskrivningar på koncessioner','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1030','Patent ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1039','Ackumulerade avskrivningar på patent ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1040','Licenser ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1049','Ackumulerade avskrivningar på licenser','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1050','Varumärken ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1059','Ackumulerade avskrivningar på varumärken','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Hyresrätter ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1069','Ackumulerade avskrivningar på hyresrätter ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1070','Goodwill ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1079','Ackumulerade avskrivningar på goodwill','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1080','Pågående projekt och förskott för immateriella anläggningstillgångar','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1081','Pågående projekt och förskott för immateriella anläggningstillgångar ','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1088','Förskott för immateriella anläggningstillgångar','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1090','Övriga immateriella anläggningstillgångar','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1099','Ackumulerade avskrivningar på övriga immateriella anläggningstillgångar','A','234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('11','Byggnader och mark','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1110','Byggnader','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1111','Byggnader på egen mark','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1112','Byggnader på ofri grund','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1119','Ackumulerade avskrivningar på byggnader','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1130','Mark','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1140','Tomter och obebyggda markområden','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1150','Markanläggning','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1159','Ackumulerade avskrivningar på markanläggning','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1180','Pågående nyanläggningar och förskott för byggnader och mark','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1181','Pågående nybyggnad','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1182','Pågående tillbyggnad','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1183','Pågående ombyggnad','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1188','Förskott för byggnader och mark','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1190','Övriga byggnader och mark','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1199','Ackumulerade avskrivningar på övriga byggnader','A','237','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('12','Maskiner och inventarier ','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Maskiner och inventarier (gruppkonto)','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1209','Ackumulerade avskrivningar på maskiner och inventarier','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1210','Maskiner och andra tekniska anläggningar','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1211','Maskiner','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1212','Byggnadsinventarier','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1213','Andra tekniska anläggningar','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1219','Ackumulerade avskrivningar på maskiner och andra tekniska anläggningar','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1220','Inventarier och verktyg','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1229','Ackumulerade avskrivningar på inventarier och verktyg','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1230','Installationer','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1231','Installationer på egen fastighet','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1232','Installationer på annans fastighet','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1233','Förbättringsutgifter på annans fastighet','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1239','Ackumulerade avskrivningar på installationer','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1240','Bilar och andra transportmedel','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1249','Ackumulerade avskrivningar på bilar och andra transportmedel','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1250','Datorer','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1251','Datorer - företaget','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1257','Datorer - personal','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1259','Ackumulerade avskrivningar på datorer','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1260','Leasingavtal','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1269','Ackumulerade avskrivningar på leasingavtal','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1280','Pågående nyanläggningar och förskott','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1281','Pågående nyanläggningar','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1288','Förskott för maskiner och inventarier','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1290','Övriga maskiner och inventarier','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1291','Konst och liknande tillgångar','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1292','Inventarier i annans fastighet','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1299','Ackumulerade avskrivningar på övriga maskiner och inventarier','A','236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('13','Finansiella anläggningstillgångar ','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1310','Aktier och andelar i koncernföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1311','Aktier och andelar i svenska dotterföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1312','Aktier och andelar i utländska dotterföretag','A','231','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1313','Aktier och andelar i andra svenska koncernföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1314','Aktier och andelar i andra utländska koncernföretag','A','231','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1319','Värdereglering av aktier och andelar i koncernföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1320','Långfristiga fordringar hos koncernföretag','A','241/233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1321','Fordringar hos moderföretag','A','241/234','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1322','Fordringar hos dotterföretag','A','241/235','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1323','Fordringar hos andra koncernföretag','A','241/236','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1329','Värdereglering av långfristiga fordringar hos koncernföretag','A','241/233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1330','Aktier och andelar i intresseföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1339','Värdereglering av aktier och och andelar i intresseföretag','A','230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1340','Långfristiga fordringar hos intresseföretag','A','241/233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1349','Värdereglering av långfristiga fordringar hos intresseföretag','A','241/233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1350','Aktier, andelar och värdepapper i andra företag','A','233/230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1351','Aktier i börsnoterade bolag','A','233/230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1352','Andra aktier och andelar','A','233/230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1353','Andelar i bostadsrättsföreningar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1354','Obligationer','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1359','Värdereglering av andra aktier, andelar och värdepapper','A','233/230','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1380','Andra långfristiga fordringar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1381','Reversfordringar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1382','Fordringar hos anställda','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1383','Lämnade depositioner','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1384','Lån till närstående personer','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1385','Värde av kapitalförsäkring','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1386','Förutbetalda leasingavgifter','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1387','Långfristiga kontraktsfordringar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1388','Olika långfristiga fordringar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1389','Värdereglering av andra långfristiga fordringar','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1390','Värdereglering av värdepapper och långfristiga fordringar (ofördelad)','A','233','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('14','Lager och pågående arbeten','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1400','Lager (gruppkonto) ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1401','Inneliggande lager ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1402','Varor på väg ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1403','Konsignationslager ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1404','Lager av värdepapper ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1409','Förändring av lager ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1410','Lager av råvaror (förråd) ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1419','Förändring av lager av råvaror ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1420','Lager av tillsatsmaterial och förnödenheter ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1429','Förändring av lager av tillsatsmaterial och förnödenheter ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1430','Lager av halvfabrikat ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1431','Lager av köpta halvfabrikat ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1432','Lager av egentillverkde halvfabrikat ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1439','Förändring av lager av halvfabrikat ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1440','Produkter i arbete - (PIA) ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1449','Förändring av produkter i arbete ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1450','Lager av färdiga varor ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1459','Förändring av lager av färdiga varor ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1460','Lager av handelsvaror - Varulager ','A','219','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1469','Förändring av lager av handelsvaror - Varulager ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1470','Pågående arbeten ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1471','Pågående arbeten, nedlagda kostnader ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1472','Omsättningsfastigheter ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1478','Pågående arbeten, fakturering ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1479','Förändring av pågående arbeten ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1480','Förskott av varor och tjänster ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1481','Remburs ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1489','Övriga förskott till leverantörer ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1490','Förändring av lager pågående arbeten (ofördelad) ','A','219','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('15','Kundfordringar','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','Kundfordringar (gruppkonto) ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1510','Kundfordringar ','A','204','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1512','Belånade kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1515','Osäkra kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1516','Tvistiga kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1518','Ej reskontraförda kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1519','Värdereglering av kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Växelfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1525','Osäkra växelfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1529','Värdereglering av osäkra växelfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Kontraktsfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Belånade kontraktsfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1541','Belånade kontraktsfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1545','Osäkra kontraktsfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1550','Konsignationsfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1560','Kundfordringar hos koncernföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1561','Kundfordringar hos moderföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1562','Kundfordringar hos dotternföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1563','Kundfordringar hos andra koncernföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1569','Värdereglering av kundfordringar hos koncernföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1570','Kundfordringar hos intresseföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1575','Osäkra kundfordringar hos intresseföretag ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1579','Värdereglering av kundfordringar ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1580','Kontokort och kuponger ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1590','Värdereglering av kundfordringar (ofördelad) ','A','204','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('16','Övriga kortfristiga fordringar','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1600','Övriga kortfristiga fordringar (gruppkonto) ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1610','Fordringar hos anställda ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1611','Reseförskott ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1612','Kassaföskott - (Fixkassa) ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1613','Övriga förskott ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1614','Tillfälliga lån till anställda ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1619','Övriga fordringar hos anställda ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1630','Avräkning för skatter och avgifter - (Skattekontot) ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1640','Skattefordringar ','A','206','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1650','Momsfordringar ','A','207','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1660','Fordringar hos koncernföretag ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1661','Fordringar hos moderföretag ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1662','Fordringar hos dotterföretag ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1663','Fordringar hos andra koncernföretag ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1670','Fordringar hos intresseföretag ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1680','Andra kortfristiga fordringar ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1681','Utlägg för kunder ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1682','Kortfristiga lånefordringar ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1683','Fordringar för tecknat men ej inbetalt aktiekapital ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1684','Fordringar hos leverantörer ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1685','Fordringar hos närstående personer ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1686','Upparbetad men ej fakturerad intäkt ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1687','Kortfristig del av långfristiga fordringar ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1689','Övriga kortfristiga fordringar ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1690','Värdereglering av kortfristiga fordringar (ofördelad) ','A','220','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('17','Förutbetalda kostnader och upplupna intäkter','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1700','Förutbetalda kostnader och upplupna intäkter (gruppkonto) ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1710','Förutbetalda hyresutgifter ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1711','Förutbetalda arrendeutgifter ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1720','Förutbetalda leasingavgifter ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1730','Förutbetalda försäkringspremier ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1740','Förutbetalda ränteutgifter ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1750','Upplupna hyresinkomster ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1760','Upplupna inkomsträntor ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1770','Tillgångar av kostnadsnatur ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1780','Upplupna avtalsinkomster ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1790','Övriga förutbetalda kostnader och upplupna intäkter ','A','205','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('18','Kortfristiga placeringar','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','Kortfristiga placeringar (gruppkonto) ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1810','Aktier i börsnoterade bolag ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Obligationer ','A','203','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1830','Konvertibla skuldebrev ','A','203','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1880','Andra kortfristiga placeringar ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1882','Egna aktier ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1886','Aktier och andelar i koncernföretag ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1889','Aktier och andelar i övriga företag ','A','202','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1890','Värdereglering av kortfristiga placeringar ','A','203','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('19','Kassa och Bank','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1900','Obsevationskonto ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1910','Kassa ','A','200','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1911','Huvudkassa ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1912','Kassa 2 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1913','Kassa 3 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1920','Postgiro ','A','200','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1921','Postgiro 1 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1922','Postgiro 2 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1930','Checkräkningskonto ','A','200','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1931','Checkräkningskonto 1 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1932','Checkräkningskonto 2 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1940','Bank och Övriga bankkonton ','A','200','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1941','Bankkonto 1 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1942','Bankkonto 2 ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1950','Bankcertifikat ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1960','Koncernkonto moderbolag ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1970','Särskilda bankkonton ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1971','Allmänt investeringskonto ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1972','Upphovsmannakonto ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1973','Skogskonto ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1974','Spärrade bankmedel ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1979','Övriga särskilda bankkonton ','A','200','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2','Eget kapital och skulder','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('20','Eget kapital ','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2010','Eget kapital - för enskild firma och delägare 1 i ett Handelsbolag ','A','360/370','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2011','Egna varuuttag ','A','362/364','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2012','Avräkning för skatter och avgifter - skattekontot ','A','362/365','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2013','Övriga egna uttag ','A','362/365','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2014','Upplupna egenavgifer och särskild löneskatt ','A','362/365','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2017','Årets kapitaltillskott ','A','363/366','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2018','Övriga egna insättningar ','A','363/367','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2019','Årets resultat - för enskild firma och delägare 1 i ett Handelsbolag ','A','368/369','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2020','Eget kapital - delägare 2 i ett Handelsbolag ','A','360','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2021','Egna varuuttag ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2022','Avräkning för skatter och avgifter - skattekontot ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2023','Övriga egna uttag ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2024','Upplupna egenavgifter och särskild löneskatt ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2027','Årets kapitaltillskott ','A','363','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2028','Övriga egna insättningar ','A','363','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2029','Årets resultat - delägare 2 ','A','368/369','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2030','Eget kapital - delägare 3 i ett Handelsbolag ','A','360','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2031','Egna varuuttag ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2032','Avräkning för skatter och avgifter - skattekontot ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2033','Övriga egna uttag ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2034','Upplupna egenavgifer och särskild löneskatt ','A','362','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2037','Årets kapitaltillskott ','A','363','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2038','Övriga egna insättningar ','A','363','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2039','Årets resultat - delägare 3 ','A','363/369','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2050','Avsättning till expansionsmedel - för enskild firma och delägare 1 i ett Handelsbolag ','A','368/369','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2080','Bundet eget kapital - aktiebolag, ek,för och stiftelse ','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2081','Aktiekapital ','A','350','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2082','Ej registrerat aktiekapital ','A','350','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2083','Inbetalda insatser - stiftelsekapital i stiftelse ','A','350','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2084','Överkursfond ','A','351','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2085','Uppskrivningsfond ','A','352','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2086','Reservfond - värdesäkringsfond i stiftelse ','A','351','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2090','Fritt eget kapital ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2091','Balanserad vinst eller förlust ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2092','Erhållna/lämnade koncernbidrag ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2093','Erhållna aktieägartillskott ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2098','Vinst eller förlust från föregående år ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2099','Årets resultat ','A','354','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('21','Obeskattade reserver ','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2115','Periodiseringsfond vid 1995 års taxering ','H','345/339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2116','Periodiseringsfond vid 1996 års taxering ','H','346/339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2117','Periodiseringsfond vid 1997 års taxering ','H','347/339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2118','Periodiseringsfond vid 1998 års taxering ','H','348/339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2119','Periodiseringsfond vid 1999 års taxering ','H','349/339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2150','Ackumulerade överavskrivningar ','A','330','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2151','Ackumulerade överavskrivningar på immateriella anläggningtillgångar ','A','330','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2152','Ackumulerade överavskrivningar på byggnader och markanläggningar ','A','330','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2153','Ackumulerade överavskrivningar på maskiner och inventarier ','A','330','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Ersättningsfond ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2161','Ersättningsfond för inventarier ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2162','Ersättningsfond för byggnader och markanläggningar ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2163','Ersättningsfond för mark ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2164','Ersättningsfond för djurlager i jordbruk och renskötsel ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2170','Avsättningar till allmän investeringsreserv eller liknande ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2171','Allmän investeringsreserv ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2180','Obeskattade intäkter ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2181','Obeskattade upphovsmannaintäkter ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2185','Obeskattade skogsintäkter ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','Övriga obeskattade reserver ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2191','Skillnad mellan bokförd och faktisk pensionsskuld ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2195','Valutakursreserv ','A','337','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2196','Lagerreserv ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2197','Skatteutjämningsreserv - SURV ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2199','Övriga obeskattade reserver ','A','339','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('22','Avsättningar','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210','Avsättningar för pensioner ','A','320','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2211','Avsättningar för PRI-pensioner ','A','320','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2219','Avsättningar för övriga pensioner ','A','320','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2220','Avsättningar för garantier ','A','304','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2250','Avsättningar för skatter ','A','329/302','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2251','Avsättningar för beräknad latent skatt ','A','329/302','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2252','Avsättningar för tvistiga skatter ','A','329/303','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2259','Avsättningar för övriga skatter ','A','329/304','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2290','Övriga avsättningar ','A','302','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('23','Långfristiga skulder','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','Obligations- och förlagslån ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','Konvertibla lån ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2330','Checkräkningskredit ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2331','Checkräkningskredit 1 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2332','Checkräkningskredit 2 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2333','Utnyttjad checkräkningskredit 1 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2334','Utnyttjad checkräkningskredit 2 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2335','Beviljad checkräkningskredit 1 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2336','Beviljad checkräkningskredit 2 ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2340','Byggnadskreditiv ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2350','Andra skulder till kreditinstitut ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2351','Fastighetslån ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2355','Lån i utländsk valuta från kreditinstitut ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2359','Övriga långfristiga lån från kreditinstitut ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2360','Skulder till koncernföretag ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2361','Skulder till Moderföretag ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2362','Skulder till dotterföretag ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2363','Skulder till andra koncernföretag ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2370','Skulder till intresseföretag ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2390','Övriga långfristiga skulder ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2391','Avbetalningskontrakt ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2392','Villkorliga skulder ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2393','Lån från närstående personer ','A','321','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2394','Långfristiga leverantörskrediter ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2395','Andra lån i utländsk valuta ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2397','Mottagna depositioner ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2399','Övriga långfristiga skulder ','A','329','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('24','Kortfristiga skulder till kreditinstitut, kunder och leverantörer','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2410','Kortfristiga skulder till kreditinstitut ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2411','Kortfristiga lån från kreditinstitut ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2417','Kortfristig del av långfristiga skulder till kreditinstitut ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2418','Kortfristig del av checkräkningskredit ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2419','Övriga kortfristiga skulder till kreditinstitut ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2420','Förskott från kunder ','A','310','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2421','Ej inlösta presentkort ','A','310','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2429','Övriga förskott från kunder ','A','310','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2430','Pågående arbeten ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2431','Pågående arbeten, fakturering ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2435','Fakturerad men ej upparbetad intäkt ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2438','Pågående arbeten, nedlagda kostnader ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3439','Förändring av pågående arbeten ','A','319','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2440','Leverantörsskulder ','A','300','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2443','Konsignationsskulder ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2445','Tvistiga leverantörsskulder ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2448','Ej reskontraförda leverantörsskulder ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2460','Leverantörsskulder till koncernföretag ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2461','Leverantörsskulder till moderföretag ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2462','Leverantörsskulder till dotterföretag ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2463','Leverantörsskulder till andra koncernföretag ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2470','Leverantörsskulder till intresseföretag ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2490','Övriga kortfristiga skulder till kreditinstitut, kunder och leverantörer ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2491','Växelskulder ','A','300','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('25','Skatteskulder','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2510','Skatteskulder ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2511','Debiterad kvarstående skatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2512','Beräknad inkomstskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2513','Beräknad fastighetssskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2514','Beräknad särskild löneskatt på pensionskostnader ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2515','Beräknad avkastningsskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2518','Betald preliminärskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('26','Moms och särskilda punktskatter','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2610','Utgående moms, 25% ','A','307','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2611','Utgående moms på försäljning inom Sverige, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2612','Utgående moms på egna uttag, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2613','Utgående moms - uthyrningsverksamhet, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2614','Beräknad utgående moms på tjänsteförvärv från utlandet, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2615','Beräknad utgående moms på varuförvärv från annat EU-land, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2618','Vilande utgående moms, 25% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Utgående moms, 12% ','A','307','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2621','Utgående moms på försäljning inom Sverige, 12% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2622','Utgående moms på egna uttag, 12% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2628','Vilande utgående moms, 12% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2630','Utgående moms, 6% ','A','307','L','AR_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2631','Utgående moms på försäljning inom Sverige, 6% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2632','Utgående moms på egna uttag, 6% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2638','Vilande utgående moms, 6% ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2640','Ingående moms ','A','307','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2641','Debiterad ingående moms ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2642','Debiterad ingående moms i anslutning till frivillig skattskyldighet ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2645','Beräknad ingående moms på förvärv från utlandet ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2648','Vilande ingående moms ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2649','Ingående moms - blandad verksamhet ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2650','Redovisningskonto för moms - Momsredovisning ','A','307','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2660','Särskilda punktskatter ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2661','Reklamskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2669','Övriga punktskatter ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('27','Personalens skatter, avgifter och löneavdrag','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2710','Personalens källskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2711','Innehållen källskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2718','Betald källskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2730','Lagstadgade sociala avgifter och särskild löneskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2731','Avräkning lagstadgade sociala avgifter ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2732','Avräkning särskild löneskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2738','Betalda lagstadgade sociala avgifter och särskild löneskatt ','A','301','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2740','Avtalade sociala avgifter ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2741','Avräkning avtalade sociala avgifter ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2748','Betalade avtalade sociala avgifter ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2750','Utmätning i lön ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2760','Semesterkassa ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2790','Övriga löneavdrag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2791','Personalens intressekonto ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2792','Lönsparande ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2793','Gruppförsäkringspremier ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2794','Fackföreningsavgifter ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2795','Mätnings- och granskningsarvoden ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('28','Övriga kortfristiga skulder','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2810','Avräkning factoring ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2820','Skulder till anställda ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2821','Löneskulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2822','Reseräkningar ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2823','Tantiem, gratifikationer ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2830','Avräkning för belånade kontraktsfordringar ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2840','Kortfristiga låneskulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2841','Kortfristig del av långfristiga skulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2849','Övriga kortfristiga låneskulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2860','Skulder till koncernföretag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2861','Skulder till moderföretag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2862','Skulder till dotterföretag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2863','Skulder till andra koncernföretag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2870','Skulder till intresseföretag ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2890','Övriga kortfristiga skulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2891','Skulder under indrivning ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2893','Skulder till närstående personer ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2897','Mottagna depositioner ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2898','Outtagen vinstutdelning ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2899','Övriga kortfristiga skulder ','A','319','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('29','Upplupna kostnader och förutbetalda intäkter','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2900','Upplupna kostnader och förutbetalda intäkter (gruppkonto) ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2910','Upplupna löner ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2911','Löneskulder ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2912','Ackordsöverskott ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2920','Upplupna semesterlöner ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2921','Upplupna semesterlöner ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2928','Betalda semesterlöner ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2930','Upplupna pensionskostnader ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2931','Upplupna pensionsutbetalningar ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2940','Upplupna lagstadgade sociala och andra avgifter ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2941','Beräknade upplupna lagstadgade sociala avgifter ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2942','Beräknad upplupen löneskatt för löner ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2943','Beräknad upplupen särskild löneskatt ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2944','Beräknad upplupen avkastningsskatt på pensionskostnader ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2950','Upplupna avtalade sociala avgifter ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2960','Upplupna utgiftsräntor ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2970','Förutbetalda hyresinkomster ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2971','Förutbetalda arrendeinkomster ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2972','Förutbetalda inkomsträntor ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2980','Upplupna avtalskostnader ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2990','Övriga upplupna kostnader och förutbetalda intäkter ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2991','Beräknat arvode för bokslut ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2992','Beräknat arvode för revision ','A','305','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3','Rörelsens inkomster/intäkter ','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('30','Huvudintäkter ','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3010','Försäljning eller arvoden/Utfört arbete ','A','400','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3040','Försäljning av tjänster ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3041','Försäljning av tjänster inom Sverige, moms 25% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3042','Försäljning av tjänster inom Sverige, moms 12% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3043','Försäljning av tjänster inom Sverige, moms 6% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3044','Försäljning av tjänster inom Sverige, momsfri ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3045','Försäljning av tjänster till land utanför EU ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3046','Försäljning av tjänster till annat EU-land, moms 25% (ej VAT-nummer) ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3048','Försäljning av tjänster till annat EU-land, momsfri ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3050','Försäljning av varor ','A','400','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3051','Försäljning av varor inom Sverige, moms 25% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3052','Försäljning av varor inom Sverige, moms 12% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3053','Försäljning av varor inom Sverige, moms 6% ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3054','Försäljning av varor inom Sverige, momsfri ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3055','Försäljning av varor till land utanför EU ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3056','Försäljning av varor till annat EU-land, moms 25% (ej VAT-nummer) ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3057','Trepartsförsäljning av varor till annan EU-land, mellanman ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3058','Försäljning av varor till annat EU-land, momsfritt ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3060','Försäljning till närstående företag ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('31','Fri att använda till egna konton','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('32','Fri att använda till egna konton','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('33','Fri att använda till egna konton','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('34','Fri att använda till egna konton','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('35','Fakturerade kostnader ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3510','Fakturerat emballage ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3518','Returnerat emballage ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3520','Fakturerade frakter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3530','Fakturerade tull- och speditionskostnader m m ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3540','Faktureringsavgifter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3550','Fakturerade resekostnader ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3560','Fakturerade kostnader till koncernföretag ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','Övriga fakturerade kostnader ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('36','Rörelsens sidointäkter ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','Rörelsens sidointäkter (gruppkonto) ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3610','Försäljning av material ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3611','Försäljning av råmaterial ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3612','Försäljning av skrot ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3613','Försäljning av förbrukningsmaterial ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3619','Försäljning av övrigt material ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3620','Tillfällig uthyrning av personal ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3630','Tillfällig uthyrning av transportmedel ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3680','Management fees ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3690','Övriga sidointäkter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('37','Intäktskorrigeringar ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3700','Intäktskorrigeringar (gruppkonto) ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3710','Ofördelade intäktsreduktioner ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3730','Lämnade rabatter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3731','Lämnade kassarabatter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3732','Lämnade mängdrabatter - bonus ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3740','Öresutjämning ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3750','Fakturerade punktskatter ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3751','Fakturerade punktskatter - kreditkonto ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3752','Fakturerade punktskatter - debetkonto ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3790','Övriga intäktskorrigeringar ','A','400','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('38','Aktiverat arbete för egen räkning ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3800','Aktiverat arbete för egen räkning (gruppkonto) ','A','402','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3840','Aktiverat arbete - material ','A','402','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3850','Aktiverat arbete - omkostnader ','A','402','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3870','Aktiverat arbete - löner ','A','402','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('39','Övriga rörelseintäkter ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3900','Övriga rörelseintäkter (gruppkonto) ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3910','Hyres- och arrendeintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3911','Hyresintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3912','Arrendeintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3920','Provisionsintäkter, licensintäkter och royalties ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3921','Provisionsintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3922','Licensintäkter och royalties ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3925','Franchiseintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3950','Återvunna, tidigare avskrivna kundfordringar ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3960','Valutakursvinster på fordringar och skulder av rörelsekaraktär ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3970','Vinst vid avyttring av immateriella och immateriella anläggningstillgångar ','A','552','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3971','Vinst vid avyttring av immateriella anläggningstillgångar ','A','552','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3972','Vinst vid avyttring av byggnader och mark ','A','552','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3973','Vinst vid avyttring av maskiner och inventarier ','A','552','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3980','Erhållna bidrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3981','Erhållna EU-bidrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3985','Erhållna statliga bidrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3987','Erhållna kommunala bidrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3989','Övriga erhållna bidrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3990','Övriga ersättningar och intäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3991','Konfliktersättning ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3992','Erhållna skadestånd ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3993','Erhållna donationer och gåvor ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3994','Ofördelad försäkringsersättning ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3995','Ersättning lånedatorer - nettolöneavdrag ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3998','Sjukpenning ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3999','Övriga rörelseintäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4','Utgifter/kostnader för varor, material och vissa köpta tjänster ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('40','Inköp av varor och material','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4010','Inköp av varor och material inom Sverige ','A','500','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4050','Inköp av varor och material från utlandet ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4051','Inköp av varor och material utanför EU ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4055','Trepartsförvärv av varor från annat EU-land - mellanman ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4056','Trepartsförvärv av varor från annat EU-land - moms 25% ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4058','Trepartsförvärv av varor från annat EU-land - momsfri ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4060','Inköp från närstående företag ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('41 till 45','Fri till egna konton ','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('46','Legoarbeten - underentreprenader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4600','Legoarbeten - underentreprenader (gruppkonto) ','A','501','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('47','Reduktion av inköpspriser ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4730','Reduktion av inköpspriser (gruppkonto) ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4731','Erhållna kassarabatter ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4732','Erhållna mängdrabatter - bonus ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4790','Övriga reduktioner av inköpspriser ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('48','Fri till egna konton ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('49','Lagerförändring, förändring av pågående arbeten samt garantiavsättningar ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4900','Förändring av lager (gruppkonto) ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4910','Förändring av lager av råvaror ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4920','Förändring av lager av tillsatsmaterial och fönödenheter ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4930','Förändring av lager av halvfabrikat ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4931','Förändring av lager av köpta halvfabrikat ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4932','Förändring av lager av egentillverkade halvfabrikat ','A','509/509','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4940','Förändring av lager av produkter i arbete - PIA ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4950','Förändring av lager av färdiga varor ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4960','Förändring av lager av handelsvaror ','A','500','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4970','Förändring av pågående arbeten, nedlagda kostnader ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4974','Förändring av pågående arbeten, material och utlägg ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4975','Förändring av pågående arbeten, omkostnader ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4977','Förändring av pågående arbeten, personalkostnader ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4990','Förändring av lager och pågående arbeten (ofördelad) ','A','509/510','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5','Övriga externa rörelseutgifter/kostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('50','Lokalkostnader','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','Lokalkostnader (gruppkonto) ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Lokalhyra ','A','528','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5011','Hyra av kontorslokaler ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5012','Hyra för garage ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5013','Hyra för lagerlokaler ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5014','Hyra för P-plats ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5015','Avgifter för bostadsrättsförening ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','Elavgifter för belysning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','Värme ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','Vatten och avlopp ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5050','Lokaltillbehör ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5060','Städning och renhållning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5061','Städning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5062','Sophämtning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5063','Hyra för sopcontainer ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5064','Snöröjning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5065','Trädgårdsskötsel ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5070','Reparation och underhåll av lokaler ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5090','Övriga lokalkostnader ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('51','Fastighetskostnader','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Fastighetskostnader (gruppkonto) ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5110','Tomträttsavgäld - arrende ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5120','Elavgifter belysning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5130','Värme ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5131','Uppvärmning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5132','Sotning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5140','Vatten och avlopp ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5160','Städning och renhållning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5161','Städning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5162','Sophämtning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5163','Hyra för sopcontainer ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5164','Snöröjning ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5165','Trädgårdsskötsel ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5170','Reparation och underhåll av fastighet ','A','526','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5190','Övriga fastighetskostnader ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5191','Fastighetsskatt ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5192','Fastighetsförsäkringspremier ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5198','Övriga fatighetskostnader - ej avdragsgilla ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5199','Övriga fatighetskostnader - avdragsgilla ','A','528','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('52','Hyra av anläggningstillgångar ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5200','Hyra av anläggningstillgångar (gruppkonto) ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5210','Hyra av maskiner och andra tekniska anläggningar ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5211','Korttidshyra av maskiner och tekniska anläggningar ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5212','Leasing av maskiner och tekniska anläggningar ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5220','Hyra av inventarier och verktyg ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5221','Korttidshyra av inventarier och verktyg ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5222','Leasing av inventarier och verktyg ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5250','Hyra av datorer ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5251','Korttidshyra av datorer ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5252','Leasing av datorer ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5290','Övriga hyreskostnader för anläggningstillgångar ','A','529','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('53','Energikostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5300','Energikostnader (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5310','Elavgifter för drift ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5320','Gas ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5330','Eldningsolja ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5340','Stenkol och koks ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5350','Torv, träkol, ved och annat trädbränsle ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5360','Bensin, fotogen och motorbrännolja ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5370','Fjärrvärme, kyla och ånga ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5380','Vatten ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5390','Övriga energikostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('54','Förbrukningsinventarier och förbrukningsmaterial ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','Förbrukningsinventarier och förbrukningsmaterial (gruppkonto) ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Förbrukningsinventarier ','A','531','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','Dataprogram ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','Transportinventarier ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','Förbrukningsemballage ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5460','Förbrukningsmaterial ','A','531','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5480','Arbetskläder och skyddsmaterial ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5490','Övriga förbrukningsinventarier och förbrukningsmaterial ','A','531','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('55','Reparation och underhåll ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5500','Reparation och underhåll (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5510','Reparation och underhåll av maskiner och tekniska anläggningar ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5520','Reparation och underhåll av inventarier, verktyg och datorer mm. ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5530','Reparation och underhåll av installationer ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5550','Reparation och underhåll av förbrukningsinventarier ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5580','Underhåll och tvätt av arbetskläder ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5590','Övriga kostnader för reparation och underhåll ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('56','Kostnader för transportmedel ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','Kostnader för transportmedel (gruppkonto) ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Personbilskostnad ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5611','Drivmedel för personbilar ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5612','Försäkring och skatt för personbilar ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5613','Reparation och underhåll - personbilar ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Leasingavgifter för personbilar ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5619','Övriga personbilskostnader ','A','536','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Lastbilskostnad ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5621','Drivmedel för lastbilar ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5622','Försäkring och skatt för lastbilar ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5623','Reparation och underhåll - lastbilar ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5625','Leasingavgifter för lastbilar ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5629','Övriga lastbilskostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5630','Truckkostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5650','Traktorkostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Motorcykel-, moped- och skoterkostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5670','Båtkostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','Flygplans- och helikopterkostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Övriga kostnader för transportmedel ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('57','Frakter och transporter ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Frakter och transporter (gruppkonto) ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5710','Frakter, transporter och försäkringar vid varudistribution ','A','538','E','AP_amount:IC_expence');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5720','Tull- och speditionskostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5730','Arbetstransporter ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('58','Resekostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Resekostnader (gruppkonto) ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Biljetter ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5820','Hyrbilskostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5831','Kost och logi i Sverige ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5832','Kost och logi i utlandet ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5890','Övriga resekostnader ','A','538','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('59','Reklam och PR ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5900','Reklam och PR (gruppkonto) ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5910','Annonsering ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5920','Utomhus- och trafikreklam ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5930','Reklamtrycksaker och direktreklam ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5940','Utställningar och mässor ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5950','Butiksreklam och återförsäljarreklam ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5960','Varuprover, reklamgåvor, presentreklam och tävlingar ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5970','Film-, radio- och TV-reklam ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5980','PR, institutionell reklam och sponsring ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5985','Hemsidor och övrig datareklam ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5990','Övriga kostnader för reklam och PR ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5998','Erhållna reklambidrag ','A','541','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6','Övriga externa rörelseutgifter/kostnader','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('60','Övriga försäljningskostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6000','Övriga försäljningskostnader (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6010','Kataloger och prislistor ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6020','Egna facktidskrifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6030','Speciella orderkostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6040','Kontokortsavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6050','Försäljningsprovisioner ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6055','Franchiseavgifter o ch dyl. ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6060','Kreditförsäljningskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6061','Kreditupplysning ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6062','Inkasso ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6070','Representation ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6071','Representation - avdragsgill ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6072','Representation - ej avdragsgill ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6080','Bankgarantiavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6090','Övriga försäljningskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('61','Kontorsmaterial och trycksaker','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6100','Kontorsmaterial och trycksaker (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6110','Kontorsmaterial ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6150','Trycksaker ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('62','Tele och post ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6200','Tele och post (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6210','Telekommunikation ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6211','Telefon ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6212','Mobiltelefon ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6213','Mobilsökning ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6214','Fax ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6215','Telex ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6217','Telefonkonsult ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6230','Datakommunikation ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6250','Postbefordran, d v s frimärken mm ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('63','Företagsförsäkringar och övriga riskkostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6300','Företagsförsäkringar och övriga riskkostnader (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6310','Företagsförsäkringar ','A','530','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6320','Självrisker ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6330','Förluster i pågående arbeten ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6350','Förluster på kundfordringar ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6351','Konstaterade förluster på kundfordringar ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6352','Befarade förluster på kundfordringar ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6360','Garantikostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6361','Förändring av garantiavsättning ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6362','Faktiska garantikostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6370','Kostnader för bevakning och larm ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6380','Förluster på övriga kortfristiga fordringar ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6390','Övriga riskkostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('64','Förvaltningskostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6400','Förvaltningskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6410','Styrelsearvoden ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6420','Revisionsarvoden ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6430','Management fees ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6440','Årsredovisning och delårsrapporter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6450','Bolagsstämma ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('65','Övriga externa tjänster ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6500','Övriga externa tjänster (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6510','Mätningstjänster ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6520','Ritnings- och kopieringskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6530','Redovisningstjänster ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6540','IT-tjänster ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6550','Konsultarvoden ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6560','Serviceavgifter till branschorganisationer ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6570','Bankkostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6580','Advokat- och rättegångskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6590','Övriga externa tjänster ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('66','Fri till egna konton','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('67','Fri till egna konton','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('68','Inhyrd personal ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6800','Inhyrd personal (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6810','Inhyrs produktionspersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6820','Inhyrd lagerpersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6830','Inhyrd transportpersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6840','Inhyrd kontors- och ekonomipersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6850','Inhyrd IT-personal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6860','Inhyrd marknads- och försäljningspersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6870','Inhyrd restaurang- och butikspersonal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6880','Inhyrd företagsledare ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6890','Övrig inhyrd personal ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('69','Övriga externa kostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6900','Övriga externa kostnader (gruppkonto) ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6910','Licensavgifter och royalties ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6911','Stim- och Samiavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6920','Patenkostnader för egna patent ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6921','Uppfinningskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6930','Kostnader för varumärken mm ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6940','Kontroll-, provnings- och stämpelavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6941','Certifieringskostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6950','Tillsynsavgifter myndigheter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6951','Miljöavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6952','Förpackningsavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6960','Franchiseavgifter och dyl. ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6970','Tidningar, tidskrifter och facklitteratur ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6971','Tidningar och tidskrifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6972','Facklitteratur ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6980','Föreningsavgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6981','Föreningsavgifter - avdragsgilla ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6982','Föreningsavgifter - ej avdragsgilla ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6990','Övriga externa kostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6991','Övriga externa kostnader - avdragsgilla ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6992','Övriga externa kostnader - ej avdragsgilla ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6993','Lämnade bidrag och gåvor ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6995','Kostnadsräntor för skatter och sociala avgifter ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6998','Ingående moms - återbetalning ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('6999','Ingående moms - blandad verksamhet ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7','Utgifter/kostnader för personal, avskrivningar m m ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('70','Löner till kollektivanställda','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7000','Löner till kollektivanställda (gruppkonto) ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7010','Löner till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7011','Löner till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7012','Vinstandelar till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7015','Löner till kollektivanställda - löneskatt ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7016','Vinstandelar till kollektivanställda - löneskatt ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7017','Avgångsvederlag till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7018','Bruttolöneavdrag - kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7019','Upplupna löner och vinstandelar till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7080','Löner till kollektivanställda för ej arbetad tid ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7081','Sjuklöner till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7082','Semesterlöner till kollektivanställda ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7090','Förändring av semesterlöneskuld ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('71','Fri till egna konton','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('72','Löner till tjänstemän och företagsledare ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7200','Löner till tjänstemän och företagsledare (gruppkonto) ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7211','Löner till tjänstemän ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7212','Vinstandelar till tjänstemän ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7215','Löner till tjänstemän (löneskatt) ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7216','Vinstandelar till tjänstemän (löneskatt) ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7217','Avgångsvederlag till tjänstemän ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7218','Bruttolöneavdrag - tjänstemän ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7219','Upplupna löner och vinstandelar till tjänstemän ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7220','Löner till företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7221','Löner till företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7222','Tantiem till företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7223','Gratifikationer till företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7227','Avgångsvederlag till företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7228','Bruttolöneavdrag - företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7229','Upplupna löner och vinstandelar till företagsledning ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7280','Löner till tjänstemän och företagsledare för ej arbetad tid ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7281','Sjuklöner till tjänstemän och företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7282','Semesterlöner till tjänstemän och företagsledare ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7290','Förändring av semesterlöneskuld ','A','512','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('73','Kostnadsersättningar och förmåner ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7300','Kostnadsersättningar och förmåner (gruppkonto) ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7310','Kontanta extraersättningar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7311','Ersättningar för sammanträden m m ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7312','Ersättningar för förslagsverksamhet och uppfinningar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7313','Ersättningar för/bidrag till bostadskostnader ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7314','Ersättningar för/bidrag till måltidskostnader ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7315','Ersättningar för/bidrag till resor till och från arbetsplatsen ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7316','Ersättningar för/bidrag till arbetskläder ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7317','Ersättningar för/bidrag till arbetsmaterial och arbetsverktyg ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7318','Felräkningspengar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7319','Övriga kontanta extraersättningar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7320','Traktamenten vid tjänsteresa ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7321','Skattefria traktamenten - Sverige ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7322','Skattepliktiga traktamenten - Sverige ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7323','Skattefria traktamenten - utlandet ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7324','Skattepliktiga traktamenten - utlandet ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7330','Bilersättningar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7331','Bilersättningar - skattefria ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7332','Bilersättningar - skattepliktiga ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7350','Ersättningar för föreskrivna arbetskläder ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7370','Representationserättningar ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7380','Kostnader för förmåner till anställda ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7381','Kostnader för fri bostad ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7382','Kostnader för fria eller subventionerade måltider ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7383','Kostnader för fria resor till och från arbetsplatsen ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7384','Kostnader för fria eller subventionerade arbetskläder ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7385','Kostnader för fri bil ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7386','Subventionerad ränta ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7387','Personalrabatter ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7389','Övriga kostnader och förmåner ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7390','Övriga kostnadsersättningar och förmåner ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7398','Anställdas ersättning för förmåner - nettolöneavdrag ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7399','Övriga kostnadsersättningar och förmåner ','A','514','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('74','Pensionskostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7400','Pensionskostnader (gruppkonto) ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7410','Pensionsförsäkringspremier ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7411','Premier för kollektiva pensionsförsäkringar ','A','524/511','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7412','Premier för individuella pensionsförsäkringar ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7420','Förändring av pensionsskuld ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7430','Avdrag för räntedel i pensionskostnad ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7440','Avsättning till pensionsstiftelse ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7450','Avdrag för gottgörelse från pensionsstiftelse ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7460','Pensionsutbetalningar ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7461','Pensionsutbetalningar till f d kollektivanställda ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7462','Pensionsutbetalningar till f d tjänstemän ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7463','Pensionsutbetalningar till f d företagsledare ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7470','Förvaltnings- och kreditförsäkringsavgifter ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7490','Övriga pensionskostnader ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('75','Sociala och andra avgifter enligt lag och avtal','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7500','Sociala och andra avgifter enligt lag och avtal (gruppkonto) ','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7510','Lagstadgade sociala avgifter ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7511','Sociala avgifter för löner och ersättningar ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7512','Sociala avgifter för förmånsvärden ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7515','Sociala avgifter för skattepliktiga kostnadsersättningar ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7516','Sociala avgifter på arvoden ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7518','Sociala avgifter för bruttolöneavdrag m m ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7519','Sociala avgifter för semester- och löneskuld ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7520','Egenavgifter m m ','A','597','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7530','Löneskatt ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7531','Löneskatt för löner och ersättningar ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7532','Löneskatt för förmånsvärden ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7533','Särskild löneskatt för pensionskostnader ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7535','Löneskatt på skattepliktiga kostnadsersättningar ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7536','Löneskatt på arvoden ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7538','Löneskatt på bruttolöneavdrag ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7550','Avkastningsskatt på pensionsmedel ','A','524','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7570','Premier för AMF-försäkring ','A','511','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7580','Gruppförsäkringspremier ','A','520/511','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7581','Grupplivförsäkringspremier ','A','520/511','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7582','Gruppsjukförsäkringspremier ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7583','Gruppolycksfallsförsäkringspremier ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7590','Övriga sociala och andra avgifter enligt lag och avtal ','A','520','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('76','Övriga personalkostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7600','Övriga personalkostnader (gruppkonto) ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7610','Utbildning ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7620','Sjuk- och hälsovård ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7621','Sjuk- och hälsovård - avdragsgill ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7622','Sjuk- och hälsovård - ej avdragsgill ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7630','Personalrepresentation ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7631','Personalrepresentation - avdragsgill ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7632','Personalrepresentation - ej avdragsgill ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7650','Sjuklöneförsäkring ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7670','Avsättning till personalstiftelse ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7680','Gottgörelse från personalstiftelse ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7690','Övriga personalkostnader och erhållna bidrag ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7691','Personalrekrytering ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7692','Begravningshjälp ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7693','Fritidsverksamhet ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7698','Erhållna bidrag och ersättningar för personal ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7699','Övriga personalkostnader ','A','527','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('77','Nedskrivningar och återföring av nedskrivningar ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7710','Nedskrivningar av immateriella anläggningstillgångar ','A','553','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7720','Nedskrivningar av byggnader och mark ','A','553','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7730','Nedskrivningar av maskiner och inventarier ','A','553','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7740','Nedskrivningar av vissa omsättningstillgångar ','A','553','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7760','Återföring av nedskrivningar av immateriella anläggningstillgångar ','A','553','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7770','Återföring av nedskrivningar av byggnader och mark ','A','553/554','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7780','Återföring av nedskrivningar av maskiner och inventarier ','A','553/554','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7790','Återföring av nedskrivningar av vissa omsättningstillgångar ','A','553/554','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('78','Avskrivningar enligt plan ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7810','Avskrivningar på immateriella anläggningstillgångar ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7811','Avskrivningar på balanserade utgifter ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7812','Avskrivningar på koncessioner m m ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7813','Avskrivningar på patent ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7814','Avskrivningar på licenser ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7815','Avskrivningar på varumärken ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7816','Avskrivningar på hyresrätter ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7817','Avskrivningar på goodwill ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7819','Avskrivningar på övriga immateriella anläggningstillgångar ','A','561','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7820','Avskrivningar på byggnader och markanläggningar ','A','560','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7821','Avskrivningar på byggnader ','A','560','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7824','Avskrivningar på markanläggning ','A','560','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7829','Avskrivningar på övriga byggnader ','A','560','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7830','Avskrivningar på maskiner och inventarier ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7831','Avskrivningar på maskiner och andra tekniska anläggningar ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7832','Avskrivningar på inventarier och verktyg ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7833','Avskrivningar på installationer ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7834','Avskrivningar på bilar och andra transportmedel ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7835','Avskrivningar på datorer ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7836','Avskrivningar på leasingavtal ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7839','Avskrivningar på övriga maskiner och inventarier ','A','559','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('79','Poster av engångskaraktär och övriga rörelsekostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7910','Intäkter av engångskaraktär ','A','401','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7920','Kostnader av engångskaraktär ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7960','Valutakursförluster på fordringar och skulder av rörelsekaraktär ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7970','Förlust vid avyttring av immateriella och materiella anläggningstillgångar ','A','556','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7971','Förlust vid avyttring av immateriella anläggningstillgångar ','A','556','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7972','Förlust vid avyttring av byggnader och mark ','A','556','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7973','Förlust vid avyttring av maskiner och inventarier ','A','556','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('7990','Övriga rörelsekostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8','Finansiella och andra inkomster/intäkter och utgifter/kostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('80','Resultat från aktier och andelar i koncernföretag','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8010','Utdelning på aktier och andelar i koncernföretag ','A','564','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8012','Utdelning på aktier och andelar i dotterföretag ','A','564','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8013','Utdelning på aktier och andelar i andra koncernföretag ','A','564','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8020','Resultat vid försäljning av aktier och andelar i koncernföretag ','A','550/551','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8022','Resultat vid försäljning av aktier och andelar i dotterföretag ','A','550/551','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8023','Resultat vid försäljning av aktier och andelar i andra koncernföretag ','A','550/551','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8070','Nedskrivning av andelar i och långfristiga fordringar hos koncernföretag ','A','553/570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8072','Nedskrivning av aktier och andelar i dotterföretag ','A','570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8073','Nedskrivning av aktier och andelar i andra koncernföretag ','A','570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8076','Nedskrivning av långfristiga fordringar hos moderföretag ','A','570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8077','Nedskrivning av långfristiga fordringar hos dotterföretag ','A','570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8078','Nedskrivning av långfristiga fordringar hos andra koncernföretag ','A','570','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8080','Återföring av nedskrivning av andelar i och långfristiga fordringar hos koncernföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8082','Återföring av nedskrivning av aktier och andelar i dotterföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8083','Återföring av nedskrivning av aktier och andelar i andra koncernföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8086','Återföring av nedskrivning av långfristiga fordringar hos moderföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8087','Återföring av nedskrivning av långfristiga fordringar hos dotterföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8088','Återföring av nedskrivning av långfristiga fordringar hos andra koncernföretag ','A','571','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('81','Resultat från aktier och andelar i intresseföretag ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8110','Utdelning på aktier och andelar i intresseföretag ','A','564','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8120','Resultat vid försäljning av aktier och andelar i intresseföretag ','A','550/551','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8170','Nedskrivning av andelar i och långfristiga fordringar hos intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8171','Nedskrivning av aktier och andelar i intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8172','Nedskrivning av långfristiga fordringar hos intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8180','Återföring av nedskrivning av andelar i och långfristiga fordringar hos intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8181','Återföring av nedskrivning av aktier och andelar i intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8182','Återföring av nedskrivning av långfristiga fordringar hos intresseföretag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('82','Resultat från övriga värdepapper och långfristiga fordringar (anläggningstillgångar) ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8200','Ränteintäkter från anläggningstillgångar (gruppkonto) ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8210','Utdelning på aktier och andelar i andra företag ','A','565','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8220','Resultat vid försäljning av värdepapper i och långfristiga fordringar hos andra företag ','A','550/551','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8221','Resultat vid försäljning av aktier och andelar i andra företag ','A','550/551','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8222','Resultat vid försäljning av långfristiga fordringar hos andra företag ','A','550/551','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8223','Resultat vid försäljning av övriga värdepapper i andra företag ','A','550/551','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8230','Valutakursdifferenser på långfristiga fordringar ','A','566','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8231','Valutakursvinster på långfristiga fordringar ','A','566','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8236','Valutakursförluster på långfristiga fordringar ','A','567','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8250','Ränteintäkter från långfristiga fordringar hos och värdepapper i andra företag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8251','Ränteintäkter från långfristiga fordringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8252','Ränteintäkter från övriga värdepapper ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8260','Ränteintäkter från långfristiga fordringar hos koncernföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8261','Ränteintäkter från långfristiga fordringar hos moderföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8262','Ränteintäkter från långfristiga fordringar hos dotterföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8263','Ränteintäkter från långfristiga fordringar hos andra koncernföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8270','Nedskrivningar av innehav av andelar i och långfristiga fordringar hos andra företag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8271','Nedskrivning av aktier och andelar i andra företag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8272','Nedskrivning av långfristiga fordringar hos andra företag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8273','Nedskrivning av övriga värdepapper hos andra företag ','A','570','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8280','Återföring av nedskrivning av andelar i och långfristiga fordringar hos andra företag ','A','571','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8281','Återföring av nedskrivning av aktier och andelar i andra företag ','A','571','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8282','Återföring av nedskrivning av långfristiga fordringar hos andra företag ','A','571','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8283','Återföring av nedskrivning av övriga värdepapper i andra företag ','A','571','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('83','Övriga ränteintäkter och liknande resultatposter ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8300','Ränteintäkter från omsättningstillgångar (gruppkonto) ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8310','Ränteintäkter från omsättningstillgångar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8311','Ränteintäkter från bank ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8312','Ränteintäkter från kortsiktiga placeringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8313','Ränteintäkter från kortsiktiga fordringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8314','Skattefria ränteintäkter ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8317','Ränteintäkter från dold räntekompensation ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8319','Övriga ränteintäkter från omsättningstillgångar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8330','Valutakursvinster på kortfristiga fordringar och placeringar ','A','566','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8331','Valutakursvinster på kortfristiga fordringar och placeringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8336','Valutakursförluster på kortfristiga fordringar och placeringar ','A','567','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8340','Utdelningar på kortfristiga placeringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8350','Resultat vid försäljning av kortfristiga placeringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8360','Övriga ränteintäkter från koncernföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8361','Övriga ränteintäkter från moderföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8362','Övriga ränteintäkter från dotterföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8363','Övriga ränteintäkter från andra koncernföretag ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8370','Nedskrivning av kortfristiga placeringar ','A','569','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8380','Återföring av nedskrivning av kortfristiga placeringar ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8390','Övriga finansiella intäkter ','A','568','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('84','Räntekostnader och liknande resultatposter ','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8400','Räntekostnader (gruppkonto) ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8410','Räntekostnader för långfristiga skulder ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8411','Räntekostnader för obligations-, förlags- och konvertibla lån ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8412','Räntedel i årets pensionskostnad ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8413','Räntekostnader för checkräkningskredit ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8414','Räntekostnader för byggnadskreditiv ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8415','Räntekostnader för andra skulder till kreditinstitut ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8417','Räntekostnader för dold räntekompensation m m ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8418','Avdragspost för räntesubventioner ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8419','Övriga räntekostnader för långfristiga skulder ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8420','Räntekostnader för kortfristiga skulder ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8421','Räntekostnader till kreditinstitut ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8422','Dröjsmålsräntor för leverantörsskulder ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8423','Kostnadsräntor för skatter och avgifter - skattekonto ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8429','Övriga räntekostnader för kortfristiga skulder ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8430','Valutakursdifferenser på skulder ','A','566','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8431','Valutakursvinster på skulder ','A','566','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8436','Valutakursförluster på skulder ','A','567','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8440','Erhållna räntebidrag ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8460','Räntekostnader till koncernföretag ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8461','Räntekostnader till moderföretag ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8462','Räntekostnader till dotterföretag ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8463','Räntekostnader till andra koncernföretag ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8480','Aktiverade räntekostnader ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8490','Övriga finansiella kostnader ','A','569','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('85','Fri till egna konton','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('86','Fri till egna konton ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('87','Extraordinära intäkter och kostnader ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8710','Extraordinära intäkter ','A','401','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8750','Extraordinära kostnader ','A','530','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('88','Bokslutsdispositioner ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8810','Förändring av periodiseringsfond - enskild näringsidkare och delägare 1 i HB','A','586/589','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8811','Avsättning till periodiseringsfond ','A','586/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8819','Återföring från periodiseringsfond ','A','589/593','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8820','Förändring av periodiseringsfond - delägare 2 i HB','A','589/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8821','Avsättning till periodiseringsfond ','A','589/595','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8829','Återföring från periodiseringsfond ','A','589/596','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8830','Förändring av periodiseringsfond - delägare 3 i HB','A','589/597','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8831','Avsättning till periodiseringsfond ','A','589/598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8839','Återföring från periodiseringsfond ','A','589/599','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8850','Skillnad mellan bokförda avskrivningar och avskrivningar enligt plan - överavskrivning ','A','578/590','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8851','Förändring av skillnad mellan bokförd och planenlig avskrivning - immateriella anläggningstillgångar ','A','578/590','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8852','Förändring av skillnad mellan bokförd och planenlig avskrivning - byggnader och markanläggningar ','A','578/590','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8853','Förändring av skillnad mellan bokförd och planenlig avskrivning - maskiner, inventarier och transportmedel ','A','578/590','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8860','Förändring av ersättningsfond ','A','593/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8861','Avsättning till ersättningsfond för inventarier','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8862','Avsättning till ersättningsfond för byggnader och markanläggningar','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8863','Avsättning till ersättningsfond för mark ','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8864','Avsättning till ersättningsfond för för djurlager i jordbruk och renskötsel ','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8865','Ianspråktagande av ersättningsfond för avskrivningar','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8866','Ianspråktagande av ersättningsfond för annat än avskrivningar ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8869','Återföring från ersättningsfond ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8870','Förändring av allmän investeringsreserv eller liknande','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8871','Ianspråktagande av allmän investeringsreserv eller liknande för avskrivningar ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8872','Ianspråktagande av allmän investeringsreserv eller liknande för annat än avskrivningar ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8873','Avskrivning av anläggningstillgångar med medel som tagits i anspråk frånallmän investeringsreserv eller liknande ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8879','Återföring av allmän investeringsreserv eller liknande ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8880','Förändring av obeskattade intäkter ','A','593/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8881','Avsättning till upphovsmannakonto','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8882','Återföring från upphovsmannakonto ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8885','Avsättning till skogskonto ','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8886','Återföring till skogskonto','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8890','Övriga bokslutsdispositioner ','A','593/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8891','Förändring av skillnad mellan bokförd och faktisk pensionsskuld ','A','593/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8892','Nedskrivning av konsolideringskaraktär av anläggningstillgångar','A','594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8895','Förändring av valutakursreserv ','A','593/594','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8896','Förändring av lagerreserv ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8897','Återföring av skatteutjämningsreserv - SURV','A','591','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8899','Övriga bokslutsdispositioner ','A','593','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('89','Skatter och årets resultat ','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8910','Skatt på årets beskattningsbara resultat','A','598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8920','Skatt på grund av ändrad taxering ','A','598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8930','Restituerad skatt ','A','598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8940','Latent skatt','A','598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8980','Övriga skatter ','A','598','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8990','Resultat ','A','599/596','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('8999','Årets resultat','A','599/596','E','');
-
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2610'),0.25);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2620'),0.12);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2630'),0.06);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2640'),0);
-
-update defaults set inventory_accno_id = (select id from chart where accno ='1400'), income_accno_id = (select id from chart where accno = '3010'), expense_accno_id = (select id from chart where accno = '4010'), fxgain_accno_id = (select id from chart where accno = '3960'), fxloss_accno_id = (select id from chart where accno = '7960'), curr = 'SEK:EUR:USD', weightunit = 'kg';
-
diff --git a/sql-ledger/sql/Swiss-German-chart.sql b/sql-ledger/sql/Swiss-German-chart.sql
deleted file mode 100644
index b4a4405..0000000
--- a/sql-ledger/sql/Swiss-German-chart.sql
+++ /dev/null
@@ -1,160 +0,0 @@
--- Swiss chart of accounts
--- adapted to numeric representation of chart no.
---
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('10000','AKTIVEN','H','1','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11000','UMLAUFSVERMÖGEN','H','10000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11100','Flüssige Mittel','H','11000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11102','Bank CS Kt. 177929-11','A','11100','A','AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11110','Forderungen','H','11000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11120','Vorräte und angefangene Arbeiten','H','11000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11128','Angefangene Arbeiten','A','11120','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11130','Aktive Rechnungsabgrenzung','A','11000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('14000','ANLAGEVERMÖGEN','H','10000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('18000','AKTIVIERTER AUFWAND UND AKTIVE BERICHTIGUNGSPOSTEN','H','10000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('18182','Entwicklungsaufwand','A','18000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('20000','PASSIVEN','H','2','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21000','FREMDKAPITAL KURZFRISTIG','H','20000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21200','Kurzfristige Verbindlichkeiten aus Lieferungen und Leistungen','H','21000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21201','Lieferanten','A','21200','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21202','Personalaufwand','A','21200','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21203','Sozialversicherungen','A','21200','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21205','Leasing','A','21200','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21210','Kurzfristige Finanzverbindlichkeiten','H','21000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21220','Andere kurzfristige Verbindlichkeiten','H','21000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21222','MWST (3,6)','A','21220','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21229','Gewinnausschüttung','A','21220','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21230','Passive Rechnungsabgrenzung, kurzfristige Rückstellungen','H','21000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21235','Rückstellungen','A','21230','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('24000','FREMDKAPITAL LANGFRISTIG','H','20000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('24256','Gesellschafter','A','24000','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28000','EIGENKAPITAL','H','20000','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28280','Stammkapital','A','28000','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28290','Reserven, Bilanzgewinn','H','28000','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28291','Reserven','A','28290','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28295','Gewinnvortrag','A','28290','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('28296','Jahresgewinn','A','28290','Q','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('30000','BETRIEBSERTRAG AUS LIEFERUNGEN UND LEISTUNGEN','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('31000','PRODUKTIONSERTRAG','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('31001','Computer','A','31000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('31005','Übrige Produkte','A','31000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('32000','HANDELSERTRAG','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('32001','Hardware','A','32000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('32002','Software OSS','A','32000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('32003','Software kommerz.','A','32000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('32005','Übrige','A','32000','I','AR_amount:IC_sale');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('34000','DIENSTLEISTUNGSERTRAG','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('34001','Beratung','A','34000','I','AR_amount:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('34002','Installation','A','34000','I','AR_amount:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36000','ÜBRIGER ERTRAG','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('37000','EIGENLEISTUNGEN UND EIGENVERBRAUCH','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('37001','Eigenleistungen','A','37000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('37002','Eigenverbrauch','A','37000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('38000','BESTANDESÄNDERUNGEN ANGEFANGENE UND FERTIGGESTELLTE ARBEITUNG AUS PRODUKTION UND DIENSTLEISTUNG','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('38001','Bestandesänderungen','A','38000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39000','ERTRAGSMINDERUNGEN AUS PRODUKTIONS-, HANDELS- UND DIENSTLEISTUNGSERTRÄGEN','H','30000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('40000','AUFWAND FÜR MATERIAL, WAREN UND DIENSTLEISTUNGEN','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('41000','MATERIALAUFWAND','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('41001','Computer','A','41000','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('41005','Übrige Produkte','A','41000','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('42000','HANDELSWARENAUFWAND','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('42001','Hardware','A','42000','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('42002','Software OSS','A','32000','I','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('42003','Software kommerz.','A','42000','I','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('42005','Übrige','A','42000','E','AP_amount:IC_cogs');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('44000','AUFWAND FÜR DRITTLEISTUNGEN','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('46000','ÜBRIGER AUFWAND','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('47000','DIREKTE EINKAUFSSPESEN','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('47001','Einkaufsspesen','A','47000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('48000','BESTANDESVERÄNDERUNGEN, MATERIAL- UND WARENVERLUSTE','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('48001','Bestandesänderungen','A','48000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('49000','AUFWANDMINDERUNGEN','H','40000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('49005','Aufwandminderungen','A','49000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('50000','PERSONALAUFWAND','H','50000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57000','SOZIALVERSICHERUNGSAUFWAND','H','50000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('58000','ÜBRIGER PERSONALAUFWAND','H','58000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('58005','Sonstiger Personalaufwand','A','58000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('59000','ARBEITSLEISTUNGEN DRITTER','H','50000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('60000','SONSTIGER BETRIEBSAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61000','RAUMAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61900','UNTERHALT, REPARATUREN, ERSATZ, LEASINGAUFWAND MOBILE SACHANLAGEN','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61901','Unterhalt','A','61900','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('62000','FAHRZEUG- UND TRANSPORTAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('62002','Transportaufwand','A','62000','E','AP_amount');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('63000','SACHVERSICHERUNGEN, ABGABEN, GEBÜHREN, BEWILLIGUNGEN','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65000','VERWALTUNGS- UND INFORMATIKAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('66000','WERBEAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('67000','ÜBRIGER BETRIEBSAUFWAND','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('67001','Übriger Betriebsaufwand','A','67000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('68000','FINANZERFOLG','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('68001','Finanzaufwand','A','68000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('68002','Bankspesen','A','68000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('68005','Finanzertrag','A','68000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('69000','ABSCHREIBUNGEN','H','60000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('69001','Abschreibungen','A','69000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('80000','AUSSERORDENTLICHER UND BETRIEBSFREMDER ERFOLG, STEUERN','H','80000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('80001','Ausserordentlicher Ertrag','A','80000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('80002','Ausserordentlicher Aufwand','A','80000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('89000','STEUERAUFWAND','H','80000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('89001','Steuern','A','80000','E','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('90000','ABSCHLUSS','H','90000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('91000','ERFOLGSRECHNUNG','H','91000','I','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('92000','BILANZ','H','92000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('93000','GEWINNVERWENDUNG','H','93000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('99000','SAMMEL- UND FEHLBUCHUNGEN','H','99000','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11121','Warenvorräte','A','11120','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('44001','Aufwand für Drittleistungen','A','44000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('63001','Betriebsversicherungen','A','63000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57004','Unfallversicherung','A','57000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57005','Krankentaggeldversicherung','A','57000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57003','Berufliche Vorsorge','A','57000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57002','FAK','A','57000','E','AP_amount:IC_income:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65009','Übriger Verwaltungsaufwand','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65003','Porti','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65002','Telekomm','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65001','Büromaterial','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('18181','Gründungsaufwand','A','18000','A','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('50001','Löhne und Gehälter','A','50000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('50002','Erfolgsbeteiligungen','A','50000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21216','Gesellschafter','A','21210','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('62001','Fahrzeugaufwand','A','62000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('58003','Spesen','A','58000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65004','Fachliteratur','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39001','Skonti','A','39000','I','IC_sale:IC_cogs:IC_income:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39002','Rabatte, Preisnachlässe','A','39000','I','IC_sale:IC_cogs:IC_income:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36005','Kursgewinn','A','39000','I','IC_sale:IC_cogs:IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39006','Kursverlust','A','39000','E','IC_sale:IC_cogs:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39005','Verluste aus Forderungen','A','39000','E','IC_sale:IC_cogs:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('14151','Mobiliar und Einrichtungen','A','14150','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('14152','Büromaschinen, EDV','A','14150','A','IC');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11119','Verrechnungssteuer','A','11110','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11118','MWST Vorsteuer auf Investitionen','A','11110','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36004','Versand','A','36000','I','IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36001','Reisezeit','A','36000','I','IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36002','Reise (Fahrt)','A','36000','I','IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11117','MWST Vorsteuer auf Aufwand','A','11110','A','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21228','Geschuldete Steuern','A','21220','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21223','MWST (7,6)','A','21220','L','AR_tax:AP_tax:IC_taxpart:IC_expense:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('57001','AHV, IV, EO, ALV','A','57000','E','AP_amount:IC_income:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21221','MWST (2,4)','A','21220','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21224','MWST (7.6) 1/2','A','21220','L','AR_tax:AP_tax:IC_taxpart:IC_expense:IC_taxservice:CT_tax');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('66001','Werbeaufwand','A','66000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21217','Privat','A','21210','L','AP');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11101','Kasse','A','11100','A','AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('50005','Leistungen von Sozialversicherung','A','50000','E','AP_amount:IC_income:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('65005','Informatikaufwand','A','65000','E','AP_amount:IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('39004','Rundungsdifferenzen','A','39000','I','AR_paid:AP_paid');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('11111','Debitoren','A','11110','A','AR');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61001','Miete','A','61000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61002','Reinigung','A','61000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('61005','Übriger Raumaufwand','A','61000','E','IC_expense');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('36003','Essen','A','36000','I','IC_income');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('21231','Passive Rechnungsabgrenzung','A','21230','L','');
-INSERT INTO chart (accno,description,charttype,gifi_accno,category,link) VALUES ('67002','Produkteentwicklung','A','67000','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '21222'),0.036);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '21223'),0.076);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '21221'),0.024);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '21224'),0.076);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '11121'), income_accno_id = (select id from chart where accno = '34002'), expense_accno_id = (select id from chart where accno = '42005'), fxgain_accno_id = (select id from chart where accno = '36005'), fxloss_accno_id = (select id from chart where accno = '39006'), curr = 'EUR:USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Swiss-German-gifi.sql b/sql-ledger/sql/Swiss-German-gifi.sql
deleted file mode 100644
index ecd526d..0000000
--- a/sql-ledger/sql/Swiss-German-gifi.sql
+++ /dev/null
@@ -1,55 +0,0 @@
---
-INSERT INTO gifi (accno,description) VALUES ('1','AKTIVEN');
-INSERT INTO gifi (accno,description) VALUES ('2','PASSIVEN');
-INSERT INTO gifi (accno,description) VALUES ('4','AUFWAND FÜR MATERIAL, WAREN UND DIENSTLEISTUNGEN');
-INSERT INTO gifi (accno,description) VALUES ('5','PERSONALAUFWAND');
-INSERT INTO gifi (accno,description) VALUES ('10000','ANLAGEVERMÖGEN');
-INSERT INTO gifi (accno,description) VALUES ('11000','Forderungen');
-INSERT INTO gifi (accno,description) VALUES ('11100','Bank');
-INSERT INTO gifi (accno,description) VALUES ('11110','MWST Vorsteuer auf Investitionen');
-INSERT INTO gifi (accno,description) VALUES ('11120','Angefangene Arbeiten');
-INSERT INTO gifi (accno,description) VALUES ('14150','Büromaschinen, EDV');
-INSERT INTO gifi (accno,description) VALUES ('18000','Gründungsaufwand');
-INSERT INTO gifi (accno,description) VALUES ('20000','FREMDKAPITAL LANGFRISTIG');
-INSERT INTO gifi (accno,description) VALUES ('21000','Kurzfristige Finanzverbindlichkeiten');
-INSERT INTO gifi (accno,description) VALUES ('21200','Sozialversicherungen');
-INSERT INTO gifi (accno,description) VALUES ('21210','Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('21220','MWST (3,6)');
-INSERT INTO gifi (accno,description) VALUES ('21230','Passive Rechnungsabgrenzung');
-INSERT INTO gifi (accno,description) VALUES ('24000','Gesellschafter');
-INSERT INTO gifi (accno,description) VALUES ('28000','Stammkapital');
-INSERT INTO gifi (accno,description) VALUES ('28290','Gewinnvortrag');
-INSERT INTO gifi (accno,description) VALUES ('30000','ÜBRIGER ERTRAG');
-INSERT INTO gifi (accno,description) VALUES ('31000','Computer');
-INSERT INTO gifi (accno,description) VALUES ('32000','Software kommerz.');
-INSERT INTO gifi (accno,description) VALUES ('34000','Beratung');
-INSERT INTO gifi (accno,description) VALUES ('36000','Essen');
-INSERT INTO gifi (accno,description) VALUES ('37000','Eigenleistungen');
-INSERT INTO gifi (accno,description) VALUES ('38000','Bestandesänderungen');
-INSERT INTO gifi (accno,description) VALUES ('39000','Rabatte, Preisnachlässe');
-INSERT INTO gifi (accno,description) VALUES ('40000','AUFWANDMINDERUNGEN');
-INSERT INTO gifi (accno,description) VALUES ('41000','Übrige Produkte');
-INSERT INTO gifi (accno,description) VALUES ('42000','Software kommerz.');
-INSERT INTO gifi (accno,description) VALUES ('44000','Aufwand für Drittleistungen');
-INSERT INTO gifi (accno,description) VALUES ('47000','Einkaufsspesen');
-INSERT INTO gifi (accno,description) VALUES ('48000','Bestandesänderungen');
-INSERT INTO gifi (accno,description) VALUES ('49000','Aufwandminderungen');
-INSERT INTO gifi (accno,description) VALUES ('50000','Löhne und Gehälter');
-INSERT INTO gifi (accno,description) VALUES ('57000','FAK');
-INSERT INTO gifi (accno,description) VALUES ('58000','Spesen');
-INSERT INTO gifi (accno,description) VALUES ('60000','VERWALTUNGS- UND INFORMATIKAUFWAND');
-INSERT INTO gifi (accno,description) VALUES ('61000','Reinigung');
-INSERT INTO gifi (accno,description) VALUES ('61900','Unterhalt');
-INSERT INTO gifi (accno,description) VALUES ('62000','Fahrzeugaufwand');
-INSERT INTO gifi (accno,description) VALUES ('63000','Betriebsversicherungen');
-INSERT INTO gifi (accno,description) VALUES ('65000','Übriger Verwaltungsaufwand');
-INSERT INTO gifi (accno,description) VALUES ('66000','Werbeaufwand');
-INSERT INTO gifi (accno,description) VALUES ('67000','Produkteentwicklung');
-INSERT INTO gifi (accno,description) VALUES ('68000','Finanzaufwand');
-INSERT INTO gifi (accno,description) VALUES ('69000','Abschreibungen');
-INSERT INTO gifi (accno,description) VALUES ('80000','AUSSERORDENTLICHER UND BETRIEBSFREMDER ERFOLG, STEUERN');
-INSERT INTO gifi (accno,description) VALUES ('90000','ABSCHLUSS');
-INSERT INTO gifi (accno,description) VALUES ('91000','ERFOLGSRECHNUNG');
-INSERT INTO gifi (accno,description) VALUES ('92000','BILANZ');
-INSERT INTO gifi (accno,description) VALUES ('93000','GEWINNVERWENDUNG');
-INSERT INTO gifi (accno,description) VALUES ('99000','SAMMEL- UND FEHLBUCHUNGEN');
diff --git a/sql-ledger/sql/Traditional-Chinese_Default-UTF8-chart.sql b/sql-ledger/sql/Traditional-Chinese_Default-UTF8-chart.sql
deleted file mode 100644
index 7dd7086..0000000
--- a/sql-ledger/sql/Traditional-Chinese_Default-UTF8-chart.sql
+++ /dev/null
@@ -1,78 +0,0 @@
--- Default chart of accounts -- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','應付所得稅','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','長期負債','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','股份資本','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','ä¿ç•™ç›ˆé¤˜','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','銷售盈餘','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','諮詢盈餘','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','其它盈餘','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','貨銷æˆæœ¬','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','薪資支出','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','日常åŠç®¡ç†æ”¯å‡º','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','呆帳備抵','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','æµå‹•è³‡ç”¢','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','資本資產','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','累計分期付款 - è£ç’œåŠè¨­å‚™.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','累計分期付款 - é‹è¼¸å·¥å…·','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','æµå‹•è² å‚µ','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','銀行借款','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','æµå‹•ç›ˆé¤˜','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','應付公å¸ç¨…','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','ä¿ç•™ç›ˆé¤˜ - 去年度','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','普通股份','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','存貨資產','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','廣告行銷','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','工具','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','辦公用å“','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','權利金','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','會計法務','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','ä¿éšª','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','分期支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','壞帳','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','所得稅','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','利æ¯åŠéŠ€è¡Œæ‰‹çºŒè²»','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','薪資','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','ä¿éšªæ”¯å‡º','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','退休金支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','補償金支出','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','å“¡å·¥ç¦åˆ©','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','銷售 / 軟體','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','利æ¯','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','é‹è²»','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','租金','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','庫存 / 軟體','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','庫存 / 二級市場零件','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','銷售 / 二級市場零件','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','貨銷æˆæœ¬ / 軟體','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','採購','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','貨銷æˆæœ¬ / 二級市場零件','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','零用金','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','辦公室è£ç’œåŠè¨­å‚™','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','æ—…è²»åŠå¨›æ¨‚','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','è‚¡æ±è²¸æ¬¾','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','註冊費','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','電信費','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5781','網路連線費','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','維修管ç†è²»','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2311','地方稅','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','é‹éŠ·è²»','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','庫存 / 硬體','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','貨銷æˆæœ¬ / 硬體','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','應付帳款','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','é‹è¼¸å·¥å…·','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','程å¼è¨­è¨ˆ','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','銷售 / 硬體','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','諮詢','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','應收帳款','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1061','支票戶頭','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','商å“æœå‹™ç¨…','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
---
--- exchange rate
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/Traditional-Chinese_Default-chart.sql b/sql-ledger/sql/Traditional-Chinese_Default-chart.sql
deleted file mode 100644
index ceaba95..0000000
--- a/sql-ledger/sql/Traditional-Chinese_Default-chart.sql
+++ /dev/null
@@ -1,78 +0,0 @@
--- Default chart of accounts -- sample only
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2190','À³¥I©Ò±oµ|','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','ªø´Á­t¶Å','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','ªÑ¥÷¸ê¥»','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','«O¯d¬Õ¾l','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','¾P°â¬Õ¾l','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4300','¿Ô¸ß¬Õ¾l','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','¨ä¥¦¬Õ¾l','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','³f¾P¦¨¥»','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','Á~¸ê¤ä¥X','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','¤é±`¤ÎºÞ²z¤ä¥X','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','§b±b³Æ©è','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','¬y°Ê¸ê²£','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','¸ê¥»¸ê²£','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','²Ö­p¤À´Á¥I´Ú - ¸Ë¿X¤Î³]³Æ.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','²Ö­p¤À´Á¥I´Ú - ¹B¿é¤u¨ã','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','¬y°Ê­t¶Å','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','»È¦æ­É´Ú','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3600','¬y°Ê¬Õ¾l','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','À³¥I¤½¥qµ|','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','«O¯d¬Õ¾l - ¥h¦~«×','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','´¶³qªÑ¥÷','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','¦s³f¸ê²£','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','¼s§i¦æ¾P','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','¤u¨ã','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','¿ì¤½¥Î«~','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Åv§Qª÷','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','·|­pªk°È','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','«OÀI','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','¤À´Á¤ä¥X','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Ãa±b','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5680','©Ò±oµ|','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','§Q®§¤Î»È¦æ¤âÄò¶O','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Á~¸ê','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','«OÀI¤ä¥X','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','°h¥ðª÷¤ä¥X','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','¸ÉÀvª÷¤ä¥X','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','­û¤uºÖ§Q','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','¾P°â / ³nÅé','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','§Q®§','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','¹B¶O','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','¯²ª÷','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','®w¦s / ³nÅé','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','®w¦s / ¤G¯Å¥«³õ¹s¥ó','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','¾P°â / ¤G¯Å¥«³õ¹s¥ó','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','³f¾P¦¨¥» / ³nÅé','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','±ÄÁÊ','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','³f¾P¦¨¥» / ¤G¯Å¥«³õ¹s¥ó','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','¹s¥Îª÷','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','¿ì¤½«Ç¸Ë¿X¤Î³]³Æ','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','®È¶O¤Î®T¼Ö','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','ªÑªF¶U´Ú','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','µù¥U¶O','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','¹q«H¶O','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5781','ºô¸ô³s½u¶O','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','ºû­×ºÞ²z¶O','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2311','¦a¤èµ|','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','¹B¾P¶O','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','®w¦s / µwÅé','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','³f¾P¦¨¥» / µwÅé','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','À³¥I±b´Ú','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','¹B¿é¤u¨ã','A','','A','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4330','µ{¦¡³]­p','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','¾P°â / µwÅé','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4320','¿Ô¸ß','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','À³¦¬±b´Ú','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1061','¤ä²¼¤áÀY','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','°Ó«~ªA°Èµ|','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
---
--- exchange rate
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2310'),0.07);
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2311'),0.08);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD', weightunit = 'kg';
---
diff --git a/sql-ledger/sql/US_General-chart.sql b/sql-ledger/sql/US_General-chart.sql
deleted file mode 100644
index 9869bcd..0000000
--- a/sql-ledger/sql/US_General-chart.sql
+++ /dev/null
@@ -1,90 +0,0 @@
--- US_General COA
--- modify as needed
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','CURRENT ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Checking Account','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Petty Cash','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Accounts Receivables','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Allowance for doubtful accounts','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTORY ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1510','Inventory','A','','A','IC');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Office Furniture & Equipment','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Furn. & Equip.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Vehicle','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Vehicle','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','CURRENT LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Accounts Payable','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LONG TERM LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Bank Loans','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Loans from Shareholders','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','SHARE CAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Common Shares','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','RETAINED EARNINGS','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','Retained Earnings - prior years','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','SALES REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4010','Sales','A','','I','AR_amount:IC_sale');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OTHER REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','Shipping & Handling','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Interest','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','COST OF GOODS SOLD','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Purchases','A','','E','AP_amount:IC_cogs:IC_expense');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Freight','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','PAYROLL EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Wages & Salaries','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Accounting & Legal','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Advertising & Promotions','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Bad Debts','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortization Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Insurance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interest & Bank Charges','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Office Supplies','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Rent','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Repair & Maintenance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telephone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Travel & Entertainment','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Utilities','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','Registrations','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenses','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2110','Accrued Income Tax - Federal','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2120','Accrued Income Tax - State','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2130','Accrued Franchise Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2140','Accrued Real & Personal Prop Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2150','Sales Tax','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2160','Accrued Use Tax Payable','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210','Accrued Wages','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2220','Accrued Comp Time','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2230','Accrued Holiday Pay','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2240','Accrued Vacation Pay','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2310','Accr. Benefits - 401K','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2320','Accr. Benefits - Stock Purchase','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2330','Accr. Benefits - Med, Den','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2340','Accr. Benefits - Payroll Taxes','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2350','Accr. Benefits - Credit Union','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2360','Accr. Benefits - Savings Bond','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2370','Accr. Benefits - Garnish','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2380','Accr. Benefits - Charity Cont.','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5420','Wages - Overtime','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5430','Benefits - Comp Time','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5440','Benefits - Payroll Taxes','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5450','Benefits - Workers Comp','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5460','Benefits - Pension','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5470','Benefits - General Benefits','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5510','Inc Tax Exp - Federal','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5520','Inc Tax Exp - State','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5530','Taxes - Real Estate','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5540','Taxes - Personal Property','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5550','Taxes - Franchise','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5560','Taxes - Foreign Withholding','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2150'),0.05);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1510'), income_accno_id = (select id from chart where accno = '4010'), expense_accno_id = (select id from chart where accno = '5010'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD:CAD:EUR', weightunit = 'lbs';
---
diff --git a/sql-ledger/sql/US_Manufacturing-chart.sql b/sql-ledger/sql/US_Manufacturing-chart.sql
deleted file mode 100644
index ba9f24d..0000000
--- a/sql-ledger/sql/US_Manufacturing-chart.sql
+++ /dev/null
@@ -1,82 +0,0 @@
--- US_Manufacturing COA
--- modify as needed
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','CURRENT ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Checking Account','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Petty Cash','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Accounts Receivables','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Allowance for doubtful accounts','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTORY ASSETS','H','','A','');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Inventory / General','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1530','Inventory / Raw Materials','A','1126','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1540','Inventory / Work in process','A','1125','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1550','Inventory / Finished Goods','A','1121','A','IC');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Office Furniture & Equipment','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Furn. & Equip.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Vehicle','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Vehicle','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','CURRENT LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Accounts Payable','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LONG TERM LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Bank Loans','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Loans from Shareholders','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','SHARE CAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Common Shares','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','RETAINED EARNINGS','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','Retained Earnings - prior years','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','SALES REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Sales / General','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4030','Sales / Manufactured Goods','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4040','Sales / Aftermarket Parts','A','','I','AR_amount:IC_sale');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OTHER REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4430','Shipping & Handling','A','','I','IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Interest','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','COST OF GOODS SOLD','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5010','Purchases','A','','E','AP_amount:IC_cogs:IC_expense');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','COGS / General','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5030','COGS / Raw Materials','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5040','COGS / Direct Labor','A','','E','AP_amount:IC_cogs');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5050','COGS / Overhead','A','','E','AP_amount:IC_cogs');
-
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5100','Freight','A','','E','AP_amount:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','PAYROLL EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Wages & Salaries','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Accounting & Legal','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Advertising & Promotions','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Bad Debts','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortization Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Insurance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interest & Bank Charges','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Office Supplies','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Rent','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Repair & Maintenance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telephone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Travel & Entertainment','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Utilities','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','Registrations','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenses','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2110','Accrued Income Tax - Federal','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2120','Accrued Income Tax - State','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2130','Accrued Franchise Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2140','Accrued Real & Personal Prop Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2150','Sales Tax','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210','Accrued Wages','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5510','Inc Tax Exp - Federal','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5520','Inc Tax Exp - State','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5530','Taxes - Real Estate','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5540','Taxes - Personal Property','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5550','Taxes - Franchise','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5560','Taxes - Foreign Withholding','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2150'),0.05);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5020'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD:CAD:EUR', weightunit = 'lbs';
-
diff --git a/sql-ledger/sql/US_Service_Company-chart.sql b/sql-ledger/sql/US_Service_Company-chart.sql
deleted file mode 100644
index fe31a8e..0000000
--- a/sql-ledger/sql/US_Service_Company-chart.sql
+++ /dev/null
@@ -1,67 +0,0 @@
--- US_Service_Company COA
--- modify as needed
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1000','CURRENT ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1060','Checking Account','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1065','Petty Cash','A','','A','AR_paid:AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1200','Accounts Receivables','A','','A','AR');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1205','Allowance for doubtful accounts','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1500','INVENTORY ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1520','Inventory','A','','A','IC');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1800','CAPITAL ASSETS','H','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1820','Office Furniture & Equipment','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1825','Accum. Amort. -Furn. & Equip.','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1840','Vehicle','A','','A','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('1845','Accum. Amort. -Vehicle','A','','C','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2000','CURRENT LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2100','Accounts Payable','A','','L','AP');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2600','LONG TERM LIABILITIES','H','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2620','Bank Loans','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2680','Loans from Shareholders','A','','L','AP_paid');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3300','SHARE CAPITAL','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3350','Common Shares','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3500','RETAINED EARNINGS','H','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('3590','Retained Earnings - prior years','A','','Q','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4000','CONSULTING REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4020','Consulting','A','','I','AR_amount:IC_income');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4400','OTHER REVENUE','H','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4440','Interest','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('4450','Foreign Exchange Gain','A','','I','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5000','EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5020','Purchases','A','','E','AP_amount:IC_cogs:IC_expense');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5400','PAYROLL EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5410','Wages & Salaries','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5600','GENERAL & ADMINISTRATIVE EXPENSES','H','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5610','Accounting & Legal','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5615','Advertising & Promotions','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5620','Bad Debts','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5660','Amortization Expense','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5685','Insurance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5690','Interest & Bank Charges','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5700','Office Supplies','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5760','Rent','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5765','Repair & Maintenance','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5780','Telephone','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5785','Travel & Entertainment','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5790','Utilities','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5795','Registrations','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5800','Licenses','A','','E','AP_amount');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5810','Foreign Exchange Loss','A','','E','');
---
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2110','Accrued Income Tax - Federal','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2120','Accrued Income Tax - State','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2130','Accrued Franchise Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2140','Accrued Real & Personal Prop Tax','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2150','Sales Tax','A','','L','AR_tax:AP_tax:IC_taxpart:IC_taxservice:CT_tax');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('2210','Accrued Wages','A','','L','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5510','Inc Tax Exp - Federal','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5520','Inc Tax Exp - State','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5530','Taxes - Real Estate','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5540','Taxes - Personal Property','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5550','Taxes - Franchise','A','','E','');
-insert into chart (accno,description,charttype,gifi_accno,category,link) values ('5560','Taxes - Foreign Withholding','A','','E','');
---
-insert into tax (chart_id,rate) values ((select id from chart where accno = '2150'),0.05);
---
-update defaults set inventory_accno_id = (select id from chart where accno = '1520'), income_accno_id = (select id from chart where accno = '4020'), expense_accno_id = (select id from chart where accno = '5020'), fxgain_accno_id = (select id from chart where accno = '4450'), fxloss_accno_id = (select id from chart where accno = '5810'), curr = 'USD:CAD:EUR', weightunit = 'lbs';
---
diff --git a/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.html b/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.tex b/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.html b/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.tex b/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-balance_sheet.html b/sql-ledger/templates/Brazilian_Portuguese-balance_sheet.html
deleted file mode 100644
index 20c3c51..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-balance_sheet.html
+++ /dev/null
@@ -1,103 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
- <p>BALAN&Ccedil;O<br>
- <%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>VALORES<br>
- <hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>BALAN&Ccedil;O<b>
- <hr align=left width=250 size=5 noshade></b></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>S&Oacute;CIOS (%)<br>
- <hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAIS</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-bin_list.html b/sql-ledger/templates/Brazilian_Portuguese-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-bin_list.tex b/sql-ledger/templates/Brazilian_Portuguese-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-check.tex b/sql-ledger/templates/Brazilian_Portuguese-check.tex
deleted file mode 100644
index 4daf4ea..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Número da Fatura} & \textbf{Data da Fatura}
- & \textbf{Prazo} & \textbf{Aplicação} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-income_statement.html b/sql-ledger/templates/Brazilian_Portuguese-income_statement.html
deleted file mode 100644
index 3531122..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-income_statement.html
+++ /dev/null
@@ -1,77 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
- <p>DECLARA&Ccedil;&Atilde;O DE RENDIMENTOS<br>
- <%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>RENDIMENTOS<br>
- <hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Total</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>DESPESAS<br>
- <hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Total</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>RENDIMENTOS / (PREJUIZO)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-invoice.html b/sql-ledger/templates/Brazilian_Portuguese-invoice.html
deleted file mode 100644
index 0d280d4..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-invoice.html
+++ /dev/null
@@ -1,324 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4> Telefone:
- <%tel%>
- <br>
- Fax:
- <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>FATURA</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right> Data</th>
- <td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Entrega</th>
- <td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>N&uacute;mero</th>
- <td>&nbsp;</td><td><%invnumber%></td></tr>
- </table></tr>
-
-<!--
- <tr>
- <th align=right>Clerk:</th><td>&nbsp;</td><td><%employee%></td>
- </tr>
--->
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </table></td>
- </table>
-
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color="ffffff">Para:</font></th>
- <th align=left><font color="ffffff">Transportar Para:</font></th>
- </tr>
-
-<!--
- other variables which can be use:
- contact, shiptocontact, shiptophone, shiptofax
--->
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>N&uacute;mero</font></th>
- <th align=left><font color=ffffff>Descri&ccedil;&atilde;o</font></th>
- <th><font color=ffffff>Quant.</font></th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pre&ccedil;o</font></th>
- <th><font color=ffffff>Disc.</font></th>
- <th><font color="ffffff">Total</font></th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right>
- <%taxdescription%>
- em
- <%taxbase%>
- @
- <%taxrate%>
- %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Pago</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Fatura para<b>
- <%terms%>
- </b> dias</td>
- <th colspan=2 align=right>Pendente</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Obs.:</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right> Pre&ccedil;os em<b>
- <%currency%>
- </b> <br>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<%if paid%>
-<tr>
- <td colspan=7>
- <table width=60%>
- <tr>
- <th align=left>Pagamentos</th>
- </tr>
- <tr>
- <td colspan=4>
- <hr noshade>
- </td>
- </tr>
- <tr>
- <th align=left>Data</th>
- <th align=left>Conta</th>
- <th align=left>Origem</th>
- <th align=left>Total</th>
- </tr>
-<%end paid%>
-
-<%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%payment%></td>
- </tr>
-<%end payment%>
-
-<%if paid%>
- </table>
- </td>
-</tr>
-
-<tr>
- <td>&nbsp;</td>
-</tr>
-<%end paid%>
-
-<tr>
- <th colspan=7>
- <br>
- Obrigado por estarmos fazendo neg&oacute;cio! </th>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3> </font> </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
- <tr>
-
- <th colspan=7 align=left><font size=-2>
- <%taxdescription%>
- Registro
- <%taxnumber%>
- </font></th>
- </tr>
-<%end tax%>
-
-<%if taxincluded%>
- <tr>
-
- <th colspan=7 align=left><font size="-2">Impostos Inclusos.</font></th>
- </tr>
-<%end taxincluded%>
-
-<!-- business number
- <tr>
- <th colspan=7 align=left><font size=-2>Business Number: <%businessnumber%></font></th>
- </tr>
--->
-
-<!-- banking information
- <tr>
- <th colspan=7 align=left>Banking Information:
- <br>Bank
- <br>Transit No.
- <br>Account No.
- </td>
- </tr>
--->
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-invoice.tex b/sql-ledger/templates/Brazilian_Portuguese-invoice.tex
deleted file mode 100644
index 286e00c..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-invoice.tex
+++ /dev/null
@@ -1,227 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefone & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc} & \textbf{Amount} \\
- & carried forward from page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
- \parbox[t]{10.5cm}{
- \textbf{To}
- \vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-%<%if contact%>
-%Attn: <%contact%>
-%\vspace{0.3cm}
-%<%end contact%>
-\vspace{0.5cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Ship To}
-\vspace{0.5cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{F A T U R A}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%invdate%> \\
- \textbf{Número} & <%invnumber%> \\
- \textbf{Pedido} & <%ordnumber%> \\
- \textbf{Produto} & <%employee%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Número} & \textbf{Descrição} & \textbf{Quant.} &
- \textbf{Unid.} & \textbf{Preço} & \textbf{Disc.} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> em <%taxbase%> & <%tax%> \\
-<%end tax%>
-<%if paid%>
- \textbf{Pago} & - <%paid%> \\
-<%end paid%>
- \hline
- \textbf{Pendente} & \textbf{<%total%>} \\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Preços em \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-<%if paid%>
-\begin{tabularx}{10cm}{@{}lXlr@{}}
- \textbf{Pagamentos} & & & \\
- \hline
- \textbf{Data} & \textbf{Conta} & \textbf{Origem} & \textbf{Total} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabularx}
-<%end paid%>
-
-\vspace{1cm}
-
-\centerline{\textbf{Obrigado por estarmos fazendo negócio!}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-packing_list.html b/sql-ledger/templates/Brazilian_Portuguese-packing_list.html
deleted file mode 100644
index 4cdee74..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-packing_list.html
+++ /dev/null
@@ -1,143 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>LISTA DE PRODUTOS</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data</th>
- <td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>N&uacute;mero</th>
- <td></td><td><%invnumber%></td></tr>
- </table></tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </table></td>
- </table>
-
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color="ffffff">Para:</font></th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- <br><%shiptoaddr4%>
-<%if shiptocontact%>
- <p>Obs.:
- <%shiptocontact%>
- <%end shiptocontact%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>N&uacute;mero</font></th>
- <th align=left><font color=ffffff>Descri&ccedil;&atilde;o</font></th>
- <th><font color="ffffff">Quant.</font></th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Obs.:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3> </font> </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-
-
-
-
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-packing_list.tex b/sql-ledger/templates/Brazilian_Portuguese-packing_list.tex
deleted file mode 100644
index 9429df3..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-packing_list.tex
+++ /dev/null
@@ -1,110 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{LISTA DE PRODUTOS} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%invdate%> \\
- \textbf{Número} & <%invnumber%> \\
- \textbf{Cliente} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Número} & \textbf{Descrição} & \textbf{Quant.} &
- \textbf{Unid.} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-pick_list.html b/sql-ledger/templates/Brazilian_Portuguese-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-pick_list.tex b/sql-ledger/templates/Brazilian_Portuguese-pick_list.tex
deleted file mode 100644
index cfe213c..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-pick_list.tex
+++ /dev/null
@@ -1,143 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-pos_invoice.txt b/sql-ledger/templates/Brazilian_Portuguese-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-purchase_order.html b/sql-ledger/templates/Brazilian_Portuguese-purchase_order.html
deleted file mode 100644
index d51d300..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-purchase_order.html
+++ /dev/null
@@ -1,191 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4> O R D E M &nbsp;&nbsp; D E &nbsp;&nbsp; C O M P R A</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Requerido por</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>N&uacutemero</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Para:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>N&uacutemero</th>
- <th align=left><font color=ffffff>Descri&ccedil&atildeo</th>
- <th><font color=ffffff>Quant.</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pre&ccedilo (unit.)</th>
- <th><font color=ffffff>Total</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Faturado em <b><%terms%></b> dias</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Obs.:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Todos os pre&ccedilos em <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-purchase_order.tex b/sql-ledger/templates/Brazilian_Portuguese-purchase_order.tex
deleted file mode 100644
index f25abdc..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-purchase_order.tex
+++ /dev/null
@@ -1,200 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefone & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-\textbf{To}
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-Attn: <%contact%>
-\vspace{0.3cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Ship To}
-\vspace{0.3cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{ORDEM DE COMPRA} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Requerido por} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Número} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Número} & \textbf{Descrição} & \textbf{Quant.} &
- \textbf{Unid.} & \textbf{Preço} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> em <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Preços em \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-receipt.tex b/sql-ledger/templates/Brazilian_Portuguese-receipt.tex
deleted file mode 100644
index 4daf4ea..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Número da Fatura} & \textbf{Data da Fatura}
- & \textbf{Prazo} & \textbf{Aplicação} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-request_quotation.html b/sql-ledger/templates/Brazilian_Portuguese-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-request_quotation.tex b/sql-ledger/templates/Brazilian_Portuguese-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-sales_order.html b/sql-ledger/templates/Brazilian_Portuguese-sales_order.html
deleted file mode 100644
index 9ec4fe6..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-sales_order.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4> Telefone:
- <%tel%>
- <br>
- Fax:
- <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>ORDEM DE VENDA</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data</th>
- <td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Requerido por</th>
- <td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>N&uacute;mero</th>
- <td>&nbsp;</td><td><%ordnumber%></td></tr>
- </table></tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </table></td>
- </table>
-
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color="ffffff">Para:</font></th>
- <th align=left><font color="ffffff">Transportar para:</font></th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>N&uacute;mero</font></th>
- <th align=left><font color=ffffff>Descri&ccedil;&atilde;o</font></th>
- <th><font color=ffffff>Quant.</font></th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pre&ccedil;o</font></th>
- <th><font color=ffffff>Disc.</font></th>
- <th><font color="ffffff">Total</font></th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right>
- <%taxdescription%>
- em
- <%taxbase%>
- @
- <%taxrate%>
- %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Faturar para<b>
- <%terms%>
- </b> dias</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Impostos inclusos do total</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Obs.:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right> Pre&ccedil;os em<b>
- <%currency%>
- </b><br>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3> </font> </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-
-
-
-
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-sales_order.tex b/sql-ledger/templates/Brazilian_Portuguese-sales_order.tex
deleted file mode 100644
index 2652fcd..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-sales_order.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefone & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{ORDEM DE VENDA} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Requerido por} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Número} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Número} & \textbf{Descrição} & \textbf{Quant.} &
- \textbf{Unid.} & \textbf{Preço} & \textbf{Disc.} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> em <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Preços em \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.html b/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.tex b/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-statement.html b/sql-ledger/templates/Brazilian_Portuguese-statement.html
deleted file mode 100644
index f2da08d..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-statement.html
+++ /dev/null
@@ -1,129 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3>
- <h4>RELAT&Oacute;RIO</h4>
- </th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>N&uacute;mero da Fatura</th>
- <th width=15%>Data</th>
- <th width=15%>Prazo</th>
- <th width=10%>Atual</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></table></td>
- <th align=right><%c30total%>
- <th align=right><%c60total%>
- <th align=right><%c90total%>
- </tr>
- </table>
-
-
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
-
- <td>Porfavor pagar com<b>
- <%company%>
- </b>. </td>
- </tr>
- <tr height=20></tr>
-
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-statement.tex b/sql-ledger/templates/Brazilian_Portuguese-statement.tex
deleted file mode 100644
index 7f20809..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-statement.tex
+++ /dev/null
@@ -1,110 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-<%name%>\\
-<%address1%>\\
-<%if address2%>
-<%address2%>
-<%end address2%>\\
-<%city%> <%state%> <%zipcode%>\\
-<%if country%>
-<%country%>
-<%end country%>\\
-
-}
-\parbox[t]{.4\textwidth}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{RELATÓRIO} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{|l@{\extracolsep\fill}ccrrrr|}
- \hline
- \textbf{Número da Fatura \#} & \textbf{Data} & \textbf{Prazo} &
- \textbf{Atual} & \textbf{30} & \textbf{60} & \textbf{90+} \\
- \hline
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
- \multicolumn{7}{|l|}{\mbox{}} \\
- \hline
- \textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%> \\
- \hline
-\end{tabular*}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totais} & \textbf{<%total%>}
-\end{tabularx}
-
-\vfill
-
-Favor pagar com <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-work_order.html b/sql-ledger/templates/Brazilian_Portuguese-work_order.html
deleted file mode 100644
index 64674cd..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-work_order.html
+++ /dev/null
@@ -1,177 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
-
diff --git a/sql-ledger/templates/Brazilian_Portuguese-work_order.tex b/sql-ledger/templates/Brazilian_Portuguese-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Brazilian_Portuguese-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Danish-ap_transaction.html b/sql-ledger/templates/Danish-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Danish-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-ap_transaction.tex b/sql-ledger/templates/Danish-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Danish-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-ar_transaction.html b/sql-ledger/templates/Danish-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Danish-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-ar_transaction.tex b/sql-ledger/templates/Danish-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Danish-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-balance_sheet.html b/sql-ledger/templates/Danish-balance_sheet.html
deleted file mode 100644
index 61929ed..0000000
--- a/sql-ledger/templates/Danish-balance_sheet.html
+++ /dev/null
@@ -1,96 +0,0 @@
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>STATUS
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>AKTIVER<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>SAMLEDE AKTIVER</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVER<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Samlet gæld</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>KAPITAL<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Samlet egenkapital</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>SAMLET GÆLD OG EGENKAPITAL</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
diff --git a/sql-ledger/templates/Danish-bin_list.html b/sql-ledger/templates/Danish-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Danish-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Danish-bin_list.tex b/sql-ledger/templates/Danish-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Danish-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-check.tex b/sql-ledger/templates/Danish-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Danish-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-income_statement.html b/sql-ledger/templates/Danish-income_statement.html
deleted file mode 100644
index c065297..0000000
--- a/sql-ledger/templates/Danish-income_statement.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>DRIFTSREGNSKAB
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INDTÆGTER<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Samlede indtægter</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>UDGIFTER<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Samlede udgifter</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>RESULTAT</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Danish-invoice.html b/sql-ledger/templates/Danish-invoice.html
deleted file mode 100644
index 4eda948..0000000
--- a/sql-ledger/templates/Danish-invoice.html
+++ /dev/null
@@ -1,282 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tlf.: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>F A K T U R A</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Fakturadato</th><td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Betalingsdato</th><td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>Fakturanummer</th><td>&nbsp;</td><td><%invnumber%></td></tr>
- </tr>
-
-<!--
- <tr>
- <th align=right>Ekspederet af:</th><td>&nbsp;</td><td><%username%></td>
- </tr>
--->
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Faktureringsadresse:</th>
- <%if shiptoname%>
- <th align=left><font color=ffffff>Leveringsadresse:</th>
- <%end shiptoname%>
- </tr>
-
-<!--
- other variables which can be use:
- contact, shiptocontact, shiptophone, shiptofax
--->
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <%if shiptoname%>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- <%end shiptoname%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Varenummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Rabat</th>
- <th><font color=ffffff>Beløb</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> på <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Allerede betalt</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalingsfrist <b><%terms%></b> dage</td>
- <th colspan=2 align=right>At betale</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemærkninger</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Alle priser i <b><%currency%></b>.
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <th colspan=7>
- <br>Tak for handelen!
- </th>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Betalingsfrist <%terms%> dage fra fakturadato. Betaling herefter påregnes
- 1.5% per påbegyndt måned startende <%duedate%> og indtil det fulde beløb
- er betalt. Returnerede varer modregnes 10% i ekspeditionsgebyr.
- Et returnummer skal tildeles af <%company%> før varer returneres.
- Returvarer skal forsendes forudbetalt og forsvarligt forsikret.
- <%company%> kan ikke drages til ansvar for skade under transport.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=7 align=left><font size=-2><%taxdescription%> noteret som <%taxnumber%></th>
- </tr>
-<%end tax%>
-
-<%if taxincluded%>
- <tr>
- <th colspan=7 align=left><font size=-2>Alle beløb er inklusive moms.</th>
- </tr>
-<%end taxincluded%>
-
-<!-- business number
- <tr>
- <th colspan=7 align=left><font size=-2>CVR-nummer: <%businessnumber%></font></th>
- </tr>
--->
-
-<!-- banking information
- <tr>
- <th colspan=7 align=left>Bank-oplysninger:
- <br>Bank
- <br>Banknummer
- <br>Kontonummer
- </td>
- </tr>
--->
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-invoice.tex b/sql-ledger/templates/Danish-invoice.tex
deleted file mode 100644
index 0cc07be..0000000
--- a/sql-ledger/templates/Danish-invoice.tex
+++ /dev/null
@@ -1,156 +0,0 @@
-\documentclass[a4paper,twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage[danish]{babel}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tlf. & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Rabat} & \textbf{Beløb} \\
- & overført fra side <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{F A K T U R A}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%invdate%> \\
- \textbf{Nummer} & <%invnumber%> \\
- \textbf{Kunde} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Rabat} & \textbf{Beløb} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> på <%taxbase%> & <%tax%> \\
-<%end tax%>
-<%if paid%>
- \textbf{Betalt} & - <%paid%> \\
-<%end paid%>
- \hline
- \textbf{At betale} & \textbf{<%total%>} \\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Tak for handelen!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Betalingsfrist <%terms%> dage fra fakturadato. Betaling herefter påregnes
-1.5\% per påbegyndt måned startende <%duedate%> og indtil det fulde beløb
-er betalt. Returnerede varer modregnes 10\% i ekspeditionsgebyr.
-Et returnummer skal tildeles af <%company%> før varer returneres.
-Returvarer skal forsendes forudbetalt og forsvarligt forsikret.
-<%company%> kan ikke drages til ansvar for skade under transport.}
-
-\end{document}
diff --git a/sql-ledger/templates/Danish-packing_list.html b/sql-ledger/templates/Danish-packing_list.html
deleted file mode 100644
index 76e02b4..0000000
--- a/sql-ledger/templates/Danish-packing_list.html
+++ /dev/null
@@ -1,145 +0,0 @@
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>F Ø L G E S E D D E L</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Dato</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Nummer</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Leveringsadresse:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- <br><%shiptoaddr4%>
-<%if shiptocontact%>
- <p>Att.: <%shiptocontact%>
-<%end shiptocontact%>
-
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Varenummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antal</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemærkninger</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Returnerede varer modregnes 10% i ekspeditionsgebyr.
- Et returnummer skal tildeles af <%company%> før varer returneres.
- Returvarer skal forsendes forudbetalt og forsvarligt forsikret.
- <%company%> kan ikke drages til ansvar for skade under transport.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/Danish-packing_list.tex b/sql-ledger/templates/Danish-packing_list.tex
deleted file mode 100644
index 4821767..0000000
--- a/sql-ledger/templates/Danish-packing_list.tex
+++ /dev/null
@@ -1,123 +0,0 @@
-\documentclass[a4paper,twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage[danish]{babel}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tlf. & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Varelager} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{F Ø L G E S E D D E L}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%invdate%> \\
- \textbf{Nummer} & <%invnumber%> \\
- \textbf{Kunde} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Varelager} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Tak for ordren!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Returnerede varer modregnes 10\% i ekspeditionsgebyr.
-Et returnummer skal tildeles af <%company%> før varer returneres.
-Returvarer skal forsendes forudbetalt og forsvarligt forsikret.
-<%company%> kan ikke drages til ansvar for skade under transport.}
-
-\end{document}
diff --git a/sql-ledger/templates/Danish-pick_list.html b/sql-ledger/templates/Danish-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Danish-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Danish-pick_list.tex b/sql-ledger/templates/Danish-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Danish-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-pos_invoice.txt b/sql-ledger/templates/Danish-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Danish-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Danish-purchase_order.html b/sql-ledger/templates/Danish-purchase_order.html
deleted file mode 100644
index 64802b7..0000000
--- a/sql-ledger/templates/Danish-purchase_order.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tlf.: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>I N D K Ø B S O R D R E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Ordredato</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Ønsket leveringsdato</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordrenummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Til:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Varenummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Beløb</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Betalingsfrist <b><%terms%></b> dage</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemærkninger</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle priser i <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Betalingsfrist <%terms%> dage fra fakturadato. Betaling herefter påregnes
- 1.5% per påbegyndt måned startende <%duedate%> og indtil det fulde beløb
- er betalt. Returnerede varer modregnes 10% i ekspeditionsgebyr.
- Et returnummer skal tildeles af <%company%> før varer returneres.
- Returvarer skal forsendes forudbetalt og forsvarligt forsikret.
- <%company%> kan ikke drages til ansvar for skade under transport.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/Danish-purchase_order.tex b/sql-ledger/templates/Danish-purchase_order.tex
deleted file mode 100644
index 9a02400..0000000
--- a/sql-ledger/templates/Danish-purchase_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[a4paper,twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage[danish]{babel}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tlf. & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Beløb} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{I N D K Ø B S O R D R E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Ønsket leveringsdato} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordrenummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Varenummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Beløb} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
diff --git a/sql-ledger/templates/Danish-receipt.tex b/sql-ledger/templates/Danish-receipt.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Danish-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-request_quotation.html b/sql-ledger/templates/Danish-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Danish-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-request_quotation.tex b/sql-ledger/templates/Danish-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Danish-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-sales_order.html b/sql-ledger/templates/Danish-sales_order.html
deleted file mode 100644
index 8242f37..0000000
--- a/sql-ledger/templates/Danish-sales_order.html
+++ /dev/null
@@ -1,218 +0,0 @@
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tlf.: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>S A L G S O R D R E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Ordredato</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Ønsket leveringsdato</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordrenummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Til:</th>
- <th align=left><font color=ffffff>Leveringsadresse:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Varenummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Rabat</th>
- <th><font color=ffffff>Beløb</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> på <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalingsfrist netto <b><%terms%></b> dage</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Total er inklusive moms</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemærkninger</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle priser i <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Et gebyr for annullering af ordre på 10% vil blive tillagt alle specialtilbud
- og produkter som er blevet tilpasset, forbedret eller opgraderet på kundens anmodning.<br>
- Varer som ikke kan returneres er anført ovenfor.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/Danish-sales_order.tex b/sql-ledger/templates/Danish-sales_order.tex
deleted file mode 100644
index b631789..0000000
--- a/sql-ledger/templates/Danish-sales_order.tex
+++ /dev/null
@@ -1,151 +0,0 @@
-\documentclass[a4paper,twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage[danish]{babel}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tlf. & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Rabat} & \textbf{Beløb} \\
- & Overført fra side <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{S A L G S O R D R E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Ordredato} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Ønsket leveringsdato} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordrenummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Varenummer} & \textbf{Beskrivelse} & \textbf{Antal} &
- \textbf{Enhed} & \textbf{Pris} & \textbf{Rabat} & \textbf{Beløb} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> på <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Et gebyr for annullering af ordre på 10\% vil blive tillagt alle specialtilbud
-og produkter som er blevet tilpasset, forbedret eller opgraderet på kundens anmodning.
-Varer som ikke kan returneres er anført ovenfor.
-}
-
-\end{document}
diff --git a/sql-ledger/templates/Danish-sales_quotation.html b/sql-ledger/templates/Danish-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Danish-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-sales_quotation.tex b/sql-ledger/templates/Danish-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Danish-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Danish-statement.html b/sql-ledger/templates/Danish-statement.html
deleted file mode 100644
index a5efdf0..0000000
--- a/sql-ledger/templates/Danish-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th width=15%>Date</th>
- <th width=15%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Danish-statement.tex b/sql-ledger/templates/Danish-statement.tex
deleted file mode 100644
index 5865da1..0000000
--- a/sql-ledger/templates/Danish-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{1cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Danish-work_order.html b/sql-ledger/templates/Danish-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Danish-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Danish-work_order.tex b/sql-ledger/templates/Danish-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Danish-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Default-ap_transaction.html b/sql-ledger/templates/Default-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Default-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-ap_transaction.tex b/sql-ledger/templates/Default-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Default-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-ar_transaction.html b/sql-ledger/templates/Default-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Default-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-ar_transaction.tex b/sql-ledger/templates/Default-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Default-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-balance_sheet.html b/sql-ledger/templates/Default-balance_sheet.html
deleted file mode 100644
index c84ad95..0000000
--- a/sql-ledger/templates/Default-balance_sheet.html
+++ /dev/null
@@ -1,110 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BALANCE SHEET
-<br>as at <%this_period%>
-</h2>
-
-<%if department%>
-<h4>Department: <%department%></h4>
-<%end department%>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ASSETS<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL ASSETS</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>LIABILITIES<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL LIABILITIES</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>SHAREHOLDER'S EQUITY<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL EQUITY</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL LIABILITIES & EQUITY</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Default-bin_list.html b/sql-ledger/templates/Default-bin_list.html
deleted file mode 100644
index 204da54..0000000
--- a/sql-ledger/templates/Default-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Default-bin_list.tex b/sql-ledger/templates/Default-bin_list.tex
deleted file mode 100644
index 82e19c1..0000000
--- a/sql-ledger/templates/Default-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-check.tex b/sql-ledger/templates/Default-check.tex
deleted file mode 100644
index 7f25a21..0000000
--- a/sql-ledger/templates/Default-check.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{1.8cm}
-
-<%memo%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vspace{1cm}
-
-<%memo%>
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Default-income_statement.html b/sql-ledger/templates/Default-income_statement.html
deleted file mode 100644
index eab9ff0..0000000
--- a/sql-ledger/templates/Default-income_statement.html
+++ /dev/null
@@ -1,81 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>INCOME STATEMENT
-<br><%period%>
-</h2>
-
-<%if department%>
-<h4>Department: <%department%></h4>
-<%end department%>
-
-<%if projectnumber%>
-<h4>Project Number: <%projectnumber%></h4>
-<%end projectnumber%>
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INCOME<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAL INCOME</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>EXPENSES<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAL EXPENSES</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>INCOME / (LOSS)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Default-invoice.html b/sql-ledger/templates/Default-invoice.html
deleted file mode 100644
index 6f37b87..0000000
--- a/sql-ledger/templates/Default-invoice.html
+++ /dev/null
@@ -1,337 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>I N V O I C E</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
-
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <br>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=14% align=left nowrap>Invoice #</th>
- <th width=14% align=left nowrap>Date</th>
- <th width=14% align=left nowrap>Due</th>
- <th width=14% align=left>Order #</th>
- <th width=14% align=left nowrap>Salesperson</th>
- <th width=14% align=left nowrap>Shipping Point</th>
- <th width=14% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td><%ordnumber%>&nbsp;</td>
- <td><%employee%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>&nbsp;</th>
- <th align=right><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th align=right><font color=ffffff>Unit Price</th>
- <th align=right><font color=ffffff>Disc %</th>
- <th align=right><font color=ffffff>Extended</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
- <%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
--->
-
- <tr>
- <td colspan=9><hr noshade></td>
- </tr>
-
- <tr>
- <%if taxincluded%>
- <th colspan=7 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=7 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=7 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if paid%>
- <tr>
- <th colspan=7 align=right>Paid</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
- <%end paid%>
-
- <tr>
- <td colspan=5>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <%if total%>
- <tr>
- <td colspan=5>&nbsp;</td>
- <th colspan=2 align=right nowrap>Balance Due</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
- <%end total%>
-
- <tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
-
- <td><%text_amount%> ***** <%decimal%>/100</td>
-
- <td align=right nowrap>
- All prices in <b><%currency%></b>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td colspan=9>
- <table width=60%>
-
- <tr>
- <th align=left>Payments</th>
- </tr>
-
- <tr>
- <td colspan=4>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <th>
- Thank you for your valued business!
- </th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Payment due by <%duedate%>.
- Items returned are subject to a 10% restocking charge. A return authorization must be obtained from <%company%> before goods are returned. Returns must be shipped prepaid and properly insured. <%company%> will not be responsible for damages during transit.
- </font>
- </td>
-
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=8 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-invoice.tex b/sql-ledger/templates/Default-invoice.tex
deleted file mode 100644
index a57f98b..0000000
--- a/sql-ledger/templates/Default-invoice.tex
+++ /dev/null
@@ -1,235 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\newsavebox{\ftr}
-\sbox{\ftr}{
- \parbox{\textwidth}{
- \tiny
- \rule[1.5em]{\textwidth}{0.5pt}
-Payment due NET <%terms%> Days from date of Invoice. Interest on overdue amounts will acrue at the rate of 12\% per annum starting from <%duedate%> until paid in full. Items returned are subject to a 10\% restocking charge.
-A return authorization must be obtained from <%company%> before goods are returned. Returns must be shipped prepaid and properly insured.
-<%company%> will not be responsible for damages during transit.
- }
-}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%invnumber%>}{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXlrlrrr@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\ [0.5em]
- & carried forward from page <%lastpage%> & & & & & & <%sumcarriedforward%> \\ [0.5em]
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.6\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{I N V O I C E}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} & \textbf{Order \#}
- & \textbf{Salesperson} & \textbf{Shipping Point} &
- \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%invdate%> & <%duedate%> & <%ordnumber%> & <%employee%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXlrlrrr@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\ [0.5em]
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%deliverydate%> &
- <%qty%> & <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%> \\
-<%end tax%>
-<%if paid%>
- Paid & - <%paid%> \\
-<%end paid%>
- \hline
-<%if total%>
- Balance Due & <%total%>
-<%end total%>
-\end{tabularx}
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100
-\hfill
-All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-<%if paid%>
-\begin{tabularx}{10cm}{@{}lXlr@{}}
- \textbf{Payments} & & & \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabularx}
-<%end paid%>
-
-\vspace{1cm}
-
-\centerline{\textbf{Thank You for your valued business!}}
-
-\rule{\textwidth}{0.5pt}
-
-\usebox{\ftr}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-packing_list.html b/sql-ledger/templates/Default-packing_list.html
deleted file mode 100644
index 130f454..0000000
--- a/sql-ledger/templates/Default-packing_list.html
+++ /dev/null
@@ -1,197 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P A C K I N G &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>Invoice #</th>
- <th width=17% align=left>Order #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%>&nbsp;</td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th align=left><font color=ffffff>Serial Number</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%><font size=-3>
- Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.
- </font>
- </td>
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
-
diff --git a/sql-ledger/templates/Default-packing_list.tex b/sql-ledger/templates/Default-packing_list.tex
deleted file mode 100644
index 9d08a61..0000000
--- a/sql-ledger/templates/Default-packing_list.tex
+++ /dev/null
@@ -1,161 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrl@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Ship} & \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{Ship To}} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P A C K I N G} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrl@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Ship} & \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-\centerline{\textbf{Thank You for your valued business!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Items returned are subject to a 10\% restocking charge.
-A return authorization must be obtained from <%company%> before goods are
-returned. Returns must be shipped prepaid and properly insured.
-<%company%> will not be responsible for damages during transit.}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-pick_list.html b/sql-ledger/templates/Default-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Default-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Default-pick_list.tex b/sql-ledger/templates/Default-pick_list.tex
deleted file mode 100644
index a23dc9f..0000000
--- a/sql-ledger/templates/Default-pick_list.tex
+++ /dev/null
@@ -1,143 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-pos_invoice.txt b/sql-ledger/templates/Default-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Default-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Default-purchase_order.html b/sql-ledger/templates/Default-purchase_order.html
deleted file mode 100644
index f353a11..0000000
--- a/sql-ledger/templates/Default-purchase_order.html
+++ /dev/null
@@ -1,252 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P U R C H A S E &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>Order #</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>%</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></th>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <th colspan=1 align=right><%ordtotal%></th>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=1 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=1 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=1 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if terms%>
- <tr>
- <td colspan=3>Terms Net <b><%terms%></b> days</td>
- <th colspan=3 align=right>Total</th>
- <th colspan=1 align=right><%ordtotal%></th>
- </tr>
-<%end terms%>
-
-<%if taxincluded%>
- <tr>
- <td colspan=2>Tax included</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
-<%if ordtotal%>
- <tr>
- <td colspan=7 align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-<%end ordtotal%>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-purchase_order.tex b/sql-ledger/templates/Default-purchase_order.tex
deleted file mode 100644
index 863b654..0000000
--- a/sql-ledger/templates/Default-purchase_order.tex
+++ /dev/null
@@ -1,195 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%sumcarriedforward%> \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-Attn: <%contact%>
-\vspace{0.3cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.5cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P U R C H A S E} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%ordtotal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-receipt.tex b/sql-ledger/templates/Default-receipt.tex
deleted file mode 100644
index 7f25a21..0000000
--- a/sql-ledger/templates/Default-receipt.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{1.8cm}
-
-<%memo%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vspace{1cm}
-
-<%memo%>
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Default-request_quotation.html b/sql-ledger/templates/Default-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Default-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-request_quotation.tex b/sql-ledger/templates/Default-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Default-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Default-sales_order.html b/sql-ledger/templates/Default-sales_order.html
deleted file mode 100644
index 5d12e6b..0000000
--- a/sql-ledger/templates/Default-sales_order.html
+++ /dev/null
@@ -1,245 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>S A L E S &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
- <%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>
- <%text_amount%> ***** <%decimal%>/100
- <%if terms%>
- <br>Terms Net <b><%terms%></b> days
- <%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
- <%end notes%>
- <td align=right nowrap>
- All prices in <%currency%> Funds</b>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% order cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/Default-sales_order.tex b/sql-ledger/templates/Default-sales_order.tex
deleted file mode 100644
index 0269419..0000000
--- a/sql-ledger/templates/Default-sales_order.tex
+++ /dev/null
@@ -1,207 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrlrrr@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S A L E S} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrlrrr@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%ordtotal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100
-\hfill
-All prices in \textbf{<%currency%>}.
-
-<%if terms%>
-Terms: <%terms%> days
-<%end terms%>
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\centerline{\textbf{Thank You for your valued business!}}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Default-sales_quotation.html b/sql-ledger/templates/Default-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Default-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-sales_quotation.tex b/sql-ledger/templates/Default-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Default-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Default-statement.html b/sql-ledger/templates/Default-statement.html
deleted file mode 100644
index f00ad0e..0000000
--- a/sql-ledger/templates/Default-statement.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th align=left>Order#</th>
-<th align=left>Notes</th>
- <th width=10%>Date</th>
- <th width=10%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
-<td><%ordnumber%></td>
-<td><%notes%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=9><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Default-statement.tex b/sql-ledger/templates/Default-statement.tex
deleted file mode 100644
index 3edeacc..0000000
--- a/sql-ledger/templates/Default-statement.tex
+++ /dev/null
@@ -1,110 +0,0 @@
-\documentclass[english,twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{babel}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-}
-\parbox[t]{.45\textwidth}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabularx}{\textwidth}{|llXccrrrr|}
- \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Notes} &
- \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
- \hline
-<%foreach invnumber%>
- <%invnumber%> & <%ordnumber%> & <%notes%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
- \multicolumn{9}{|l|}{\mbox{}} \\
- \hline
- \textbf{Subtotal} & & & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%> \\
- \hline
-\end{tabularx}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{.4\textwidth}{Xr@{}}
- \textbf{Total outstanding} & \textbf{<%total%>}
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Default-work_order.html b/sql-ledger/templates/Default-work_order.html
deleted file mode 100644
index 64674cd..0000000
--- a/sql-ledger/templates/Default-work_order.html
+++ /dev/null
@@ -1,177 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
-
diff --git a/sql-ledger/templates/Default-work_order.tex b/sql-ledger/templates/Default-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Default-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Dutch-ap_transaction.html b/sql-ledger/templates/Dutch-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Dutch-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-ap_transaction.tex b/sql-ledger/templates/Dutch-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Dutch-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-ar_transaction.html b/sql-ledger/templates/Dutch-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Dutch-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-ar_transaction.tex b/sql-ledger/templates/Dutch-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Dutch-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-balance_sheet.html b/sql-ledger/templates/Dutch-balance_sheet.html
deleted file mode 100644
index 5eef5f5..0000000
--- a/sql-ledger/templates/Dutch-balance_sheet.html
+++ /dev/null
@@ -1,110 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BALANS
-<br>per <%this_period%>
-</h2>
-
-<%if department%>
-<h4>Afdeling: <%department%></h4>
-<%end department%>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ACTIVA<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAAL ACTIVA</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVA<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Totaal Passiva</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>EIGEN VERMOGEN<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Totaal Eigen Vermogen</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAAL PASSIVA & EIGEN VERMOGEN</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Dutch-bin_list.html b/sql-ledger/templates/Dutch-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Dutch-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Dutch-bin_list.tex b/sql-ledger/templates/Dutch-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Dutch-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-check.tex b/sql-ledger/templates/Dutch-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Dutch-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-income_statement.html b/sql-ledger/templates/Dutch-income_statement.html
deleted file mode 100644
index c4c1cfb..0000000
--- a/sql-ledger/templates/Dutch-income_statement.html
+++ /dev/null
@@ -1,81 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>INKOMSTEN OVERZICHT
-<br><%period%>
-</h2>
-
-<%if department%>
-<h4>Afdeling: <%department%></h4>
-<%end department%>
-
-<%if projectnumber%>
-<h4>Project Nummer: <%projectnumber%></h4>
-<%end projectnumber%>
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INKOMSTEN<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAAL INKOMSTEN</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>UITGAVEN<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAAL UITGAVEN</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>WINST / (VERLIES)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Dutch-invoice.html b/sql-ledger/templates/Dutch-invoice.html
deleted file mode 100644
index 1ebb63a..0000000
--- a/sql-ledger/templates/Dutch-invoice.html
+++ /dev/null
@@ -1,248 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>F A C T U U R</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Factuurdatum</th><td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Vervaldatum</th><td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>Factuurnummer</th><td>&nbsp;</td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Factuuradres:</th>
- <th align=left><font color=ffffff>Verzendadres:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>Regel</th> -->
- <th align=left><font color=ffffff>Artikelnummer</th>
- <th align=left><font color=ffffff>Omschrijving</th>
- <th><font color=ffffff>Aantal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prijs</th>
- <th><font color=ffffff>Korting</th>
- <th><font color=ffffff>Totaal</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=5 align=right>Subtotaal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right>BTW <%taxrate%>%</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Betaald</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalen binnen <b><%terms%></b> dagen</td>
- <th colspan=2 align=right>Openstaand</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Opmerkingen</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle prijzen in <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <th colspan=7>
- Gaarne u betaling overmaken op onderstaande giro- of bankrekening
- <br>ten name van <%company%>
- <br>onder vermelding van het factuurnummer.
- </th>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Op al onze aanbiedingen/leveringen zijn, met uitsluiting van eventuele inkoop- of andere voorwaarden van de opdrachtgever,
-<br>de Algemene Voorwaarden van <%company%> van toepassing.
-<br>Deze Algemene Voorwaarden zijn gedeponeerd bij de Kamer van Koophandel te ........
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
- <tr>
- <th colspan=7 align=left><font size=-2>BTW nummer:<%taxnumber%></th>
- </tr>
-
- <tr>
- <th colspan=7 align=left><font size=-2>Kamer van Koophandel te ...... nummer:<%businessnumber%></th>
- </tr>
-
- <tr>
- <th colspan=7 align=left><font size=-2>Girorekening:.........</th>
- </tr>
-
- <tr>
- <th colspan=7 align=left><font size=-2>Bankrekening:..........</th>
- </tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-invoice.tex b/sql-ledger/templates/Dutch-invoice.tex
deleted file mode 100644
index 6cd7a83..0000000
--- a/sql-ledger/templates/Dutch-invoice.tex
+++ /dev/null
@@ -1,142 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc} & \textbf{Amount} \\
- & carried forward from page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{F A K T U U R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%invdate%> \\
- \textbf{Faktuurnummer} & <%invnumber%> \\
- \textbf{Klantnummer} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Artikelnr} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Prijs} & \textbf{Korting} & \textbf{Bedrag} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotaal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Totaal} & \textbf{<%total%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle prijzen in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Dank voor uw gewaardeerde klandizie!}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-packing_list.html b/sql-ledger/templates/Dutch-packing_list.html
deleted file mode 100644
index aea6ba7..0000000
--- a/sql-ledger/templates/Dutch-packing_list.html
+++ /dev/null
@@ -1,121 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>P A K B O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Factuurdatum</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Factuurnummer</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Verzendadres:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Artikelnummer</th>
- <th align=left><font color=ffffff>Omschrijving</th>
- <th><font color=ffffff>Aantal</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Opmerkingen</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-
diff --git a/sql-ledger/templates/Dutch-packing_list.tex b/sql-ledger/templates/Dutch-packing_list.tex
deleted file mode 100644
index be19440..0000000
--- a/sql-ledger/templates/Dutch-packing_list.tex
+++ /dev/null
@@ -1,114 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefoon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{P A K B O N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%invdate%> \\
- \textbf{Faktuurnummer} & <%invnumber%> \\
- \textbf{Klantnummer} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Dank voor uw gewaardeerde klandizie!}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-pick_list.html b/sql-ledger/templates/Dutch-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Dutch-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Dutch-pick_list.tex b/sql-ledger/templates/Dutch-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Dutch-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-pos_invoice.txt b/sql-ledger/templates/Dutch-pos_invoice.txt
deleted file mode 100644
index 18de4c2..0000000
--- a/sql-ledger/templates/Dutch-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Kassa: <%till align=left width=3%> Telefoon: <%tel%>
-Kassier: <%username%>
-Verkoper: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Hoeveelheid Omschrijving Bedrag
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Aantal items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Bedrag : <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotaal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Bedrag : <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Wisselgeld: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Te betalen : <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Dank u en tot ziens!
-
-<%if taxincluded%>
-Belasting is in de prijs inbegrepen.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Dutch-purchase_order.html b/sql-ledger/templates/Dutch-purchase_order.html
deleted file mode 100644
index 2aafc46..0000000
--- a/sql-ledger/templates/Dutch-purchase_order.html
+++ /dev/null
@@ -1,190 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>I N K O O P&nbsp;&nbsp;B E S T E L L I N G</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Bestel Datum</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Lever datum</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Bestel nummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Omschrijving</th>
- <th><font color=ffffff>Aantal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prijs</th>
- <th><font color=ffffff>Bedrag</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotaal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Betalings termijn <b><%terms%></b> dagen</td>
- <th colspan=2 align=right>Totaal</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle prijzen in <b><%currency%></b>'s
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>&nbsp;
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-purchase_order.tex b/sql-ledger/templates/Dutch-purchase_order.tex
deleted file mode 100644
index 0e6d690..0000000
--- a/sql-ledger/templates/Dutch-purchase_order.tex
+++ /dev/null
@@ -1,141 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefoon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotaal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Bestel Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Prijs} & \textbf{Bedrag} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{I N K O O P B E S T E L L I N G} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Gewenste Leverdatum} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Bestel Nummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Prijs} & \textbf{Bedrag} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotaal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle prijzen in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-receipt.tex b/sql-ledger/templates/Dutch-receipt.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Dutch-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-request_quotation.html b/sql-ledger/templates/Dutch-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Dutch-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-request_quotation.tex b/sql-ledger/templates/Dutch-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Dutch-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-sales_order.html b/sql-ledger/templates/Dutch-sales_order.html
deleted file mode 100644
index a94b446..0000000
--- a/sql-ledger/templates/Dutch-sales_order.html
+++ /dev/null
@@ -1,216 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>V E R K O O P&nbsp;&nbsp;B E S T E L L I N G</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Bestel Datum</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Gewenste Leverdatum</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Bestel Nummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Aan:</th>
- <th align=left><font color=ffffff>Verzenden aan:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Omschrijving</th>
- <th><font color=ffffff>Aantal</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prijs</th>
- <th><font color=ffffff>Korting</th>
- <th><font color=ffffff>Bedrag</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Totaal</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotaal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> over <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalingstermijn <b><%terms%></b> dagen</td>
- <th colspan=2 align=right>Totaal</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Totaal bedrag is inclusief BTW.</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Opmerkingen:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle prijzen in <b><%currency%></b>'s
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>&nbsp;
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-sales_order.tex b/sql-ledger/templates/Dutch-sales_order.tex
deleted file mode 100644
index 1dc08d4..0000000
--- a/sql-ledger/templates/Dutch-sales_order.tex
+++ /dev/null
@@ -1,141 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefoon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotaal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Prijs} & \textbf{Korting} & \textbf{Bedrag} \\
- & Transport van <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{V E R K O O P} \parbox{0.3cm}{\hfill} \textbf{B E S T E L L I N G}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Bestel Datum} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Gewenste Leverdatum} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Bestel Nummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Omschrijving} & \textbf{Aantal} &
- \textbf{Eenheid} & \textbf{Prijs} & \textbf{Korting} & \textbf{Bedrag} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotaal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> over <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Totaal} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle prijzen in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-sales_quotation.html b/sql-ledger/templates/Dutch-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Dutch-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-sales_quotation.tex b/sql-ledger/templates/Dutch-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Dutch-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Dutch-statement.html b/sql-ledger/templates/Dutch-statement.html
deleted file mode 100644
index f2a386e..0000000
--- a/sql-ledger/templates/Dutch-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>O P E N S T A A N D E &nbsp;&nbsp;F A C T U R E N</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Factuur #</th>
- <th width=15%>Datum</th>
- <th width=15%>Vervaldatum</th>
- <th width=10%>Huidig</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Totaal Openstaand</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Maak de betalingen over aan<b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Dutch-statement.tex b/sql-ledger/templates/Dutch-statement.tex
deleted file mode 100644
index eaedd20..0000000
--- a/sql-ledger/templates/Dutch-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{O P E N S T A A N D E F A C T U R E N} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Factuur \#} & \textbf{Datum} & \textbf{Vervaldatum} &
- \textbf{Huidig} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totaal openstaand} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Maak U betalingen over aan <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Dutch-work_order.html b/sql-ledger/templates/Dutch-work_order.html
deleted file mode 100644
index 3b6b89e..0000000
--- a/sql-ledger/templates/Dutch-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W E R K &nbsp;&nbsp; B O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>Voor</th>
- <th align=left width=50%><font color=ffffff>Verzendadres</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>t.a.v. <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Nr</th>
- <th width=17% align=left>Order Datum</th>
- <th width=17% align=left>Gewenste Leverdatum</th>
- <th width=17% align=left nowrap>Verkoper</th>
- <th width=17% align=left nowrap>Verzenden vanaf</th>
- <th width=15% align=left nowrap>Verzenden via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Omschrijving</th>
- <th><font color=ffffff>Hoeveelheid</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serie Nr.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Dutch-work_order.tex b/sql-ledger/templates/Dutch-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Dutch-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Estonian-ap_transaction.html b/sql-ledger/templates/Estonian-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Estonian-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-ap_transaction.tex b/sql-ledger/templates/Estonian-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Estonian-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-ar_transaction.html b/sql-ledger/templates/Estonian-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Estonian-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-ar_transaction.tex b/sql-ledger/templates/Estonian-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Estonian-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-balance_sheet.html b/sql-ledger/templates/Estonian-balance_sheet.html
deleted file mode 100644
index dcfa40b..0000000
--- a/sql-ledger/templates/Estonian-balance_sheet.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<head>
- <title>Bilanss</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BILANSS
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>AKTIVA<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>AKTIVA KOKKU</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVA<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Passiva kokku</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>AKTSIAKAPITAL<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Aktsiakapital kokku</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>KOKKU PASSIVA JA AKTSIAKAPITAL</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/Estonian-bin_list.html b/sql-ledger/templates/Estonian-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Estonian-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Estonian-bin_list.tex b/sql-ledger/templates/Estonian-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Estonian-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-check.tex b/sql-ledger/templates/Estonian-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Estonian-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-income_statement.html b/sql-ledger/templates/Estonian-income_statement.html
deleted file mode 100644
index b0594ea..0000000
--- a/sql-ledger/templates/Estonian-income_statement.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<head>
- <title>Kasumiaruanne</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>KASUMIARUANNE
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>TULUD<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Tulud kokku</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>KULUD<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Kulud kokku</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>KASUM / (KAHJUM)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Estonian-invoice.html b/sql-ledger/templates/Estonian-invoice.html
deleted file mode 100644
index 7522436..0000000
--- a/sql-ledger/templates/Estonian-invoice.html
+++ /dev/null
@@ -1,224 +0,0 @@
-<head>
- <title>Arve</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>A R V E</h4>
- </th>
- </tr>
-
- </table>
-
-<!-- other variables you can use include
-tel, fax, signature, username, businessnumber -->
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Kuupäev</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Arve Nr.</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Arve aadress:</th>
- <th align=left><font color=ffffff>Tarneaadress:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Kood</th>
- <th align=left><font color=ffffff>Selgitus</th>
- <th colspan=2><font color=ffffff>Kogus</th>
- <th><font color=ffffff>Hind</th>
- <th><font color=ffffff>Alh%</th>
- <th><font color=ffffff>Kogus</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=5 align=right>Summa</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Makstud</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3> </td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Maksetingimus <b><%terms%></b> päeva</td>
- <th colspan=2 align=right>Lõppsumma</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Märkused</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Kõik hinnad: <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td colspan=7 align=right>Summa sõnadega: <%sum_as_words_ee%> </td></tr>
-
-<tr><td> </td></tr>
-
-<tr>
- <th colspan=7>
- Palun märkige pangatsheki saajaks <%company%>
- <br>Täname meeldiva koostöö eest!
- </th>
-</tr>
-
-
-<tr><td> </td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Maksetähtaeg <%terms%> päeva alates arve kuupäevast.
- Intress tasumata summadelt on 1.5% kuus kuni arve täeliku tasumiseni.
- Tagastatud toodetele kehtib 10% tagastamistasu. Enne toodete tagastamist on vajalik
-<%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud,
-<%company%> ei vastuta transpordi käigus tekkinud kahjude eest.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
-<tr>
- <th colspan=7 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
-</tr>
-<%end tax%>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-invoice.tex b/sql-ledger/templates/Estonian-invoice.tex
deleted file mode 100644
index f54dfa4..0000000
--- a/sql-ledger/templates/Estonian-invoice.tex
+++ /dev/null
@@ -1,151 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Faks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Alh} & \textbf{Kokku} \\
- & edasi kantud lehelt <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{A R V E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Kuupäev} & <%invdate%> \\
- \textbf{Number} & <%invnumber%> \\
- \textbf{Klient} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Alh} & \textbf{Kokku} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Summa} & \textbf{<%total%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Kõik hinnad \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Täname meeldiva koostöö eest!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Maksetähtaeg <%terms%> päeva alates arve kuupäevast.
- Intress tasumata summadelt on 1.5\% kuus kuni arve täeliku tasumiseni.
- Tagastatud toodetele kehtib 10\% tagastamistasu. Enne toodete tagastamist on vajalik <%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud, <%company%> ei vastuta transpordi käigus tekkinud kahjude eest.}
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Estonian-packing_list.html b/sql-ledger/templates/Estonian-packing_list.html
deleted file mode 100644
index 0006307..0000000
--- a/sql-ledger/templates/Estonian-packing_list.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<head>
- <title>Saateleht</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>S A A T E L E H T</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Kuupäev</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Tarneaadress:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Kood</th>
- <th align=left><font color=ffffff>Selgitus</th>
- <th><font color=ffffff>Kogus</th>
- <th> </th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Märkused</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Tagastatud toodetele kehtib 10% tagastamistasu. Enne toodete tagastamist on vajalik
-<%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud,
- <%company%> ei vastuta transpordi käigus tekkinud kahjude eest.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Estonian-packing_list.tex b/sql-ledger/templates/Estonian-packing_list.tex
deleted file mode 100644
index cdd72fc..0000000
--- a/sql-ledger/templates/Estonian-packing_list.tex
+++ /dev/null
@@ -1,119 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Faks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{S A A T E L E H T} \parbox{0.3cm}{\hfill}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%invdate%> \\
- \textbf{Number} & <%invnumber%> \\
- \textbf{Customer} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Kood} & \textbf{Selgitus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Täname meeldiva koostöö eest!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
- Tagastatud toodetele kehtib 10\% tagastamistasu. Enne toodete tagastamist on vajalik <%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud, <%company%> ei vastuta transpordi käigus tekkinud kahjude eest.}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-pick_list.html b/sql-ledger/templates/Estonian-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Estonian-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Estonian-pick_list.tex b/sql-ledger/templates/Estonian-pick_list.tex
deleted file mode 100644
index 1300f53..0000000
--- a/sql-ledger/templates/Estonian-pick_list.tex
+++ /dev/null
@@ -1,143 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-pos_invoice.txt b/sql-ledger/templates/Estonian-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Estonian-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Estonian-purchase_order.html b/sql-ledger/templates/Estonian-purchase_order.html
deleted file mode 100644
index 4ad1c7f..0000000
--- a/sql-ledger/templates/Estonian-purchase_order.html
+++ /dev/null
@@ -1,199 +0,0 @@
-<head>
- <title>Ostutellimus</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>O S T U T E L L I M U S</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Tellimuse Kpv</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Required by</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Vahesumma</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Maksetähtaeg <b><%terms%></b> tööpäeva</td>
- <th colspan=2 align=right>Kokku</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Märkused</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Kõik hinnad: <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Maksetähtaeg <%terms%> päeva alates arve kuupäevast.
- Intress tasumata summadelt on 1.5% kuus kuni arve täeliku tasumiseni.
- Tagastatud toodetele kehtib 10% tagastamistasu. Enne toodete tagastamist on vajalik
-<%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud,
-<%company%> ei vastuta transpordi käigus tekkinud kahjude eest.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-purchase_order.tex b/sql-ledger/templates/Estonian-purchase_order.tex
deleted file mode 100644
index 1074982..0000000
--- a/sql-ledger/templates/Estonian-purchase_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Faks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Kogus} \\
- & üle kantud lehelt <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{O S T U T E L L I M U S} \parbox{0.3cm}{\hfill}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Required by} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Number} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Kokku} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Summa} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Kõik hinnad \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Estonian-receipt.tex b/sql-ledger/templates/Estonian-receipt.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Estonian-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-request_quotation.html b/sql-ledger/templates/Estonian-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Estonian-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-request_quotation.tex b/sql-ledger/templates/Estonian-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Estonian-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-sales_order.html b/sql-ledger/templates/Estonian-sales_order.html
deleted file mode 100644
index 1c712ea..0000000
--- a/sql-ledger/templates/Estonian-sales_order.html
+++ /dev/null
@@ -1,222 +0,0 @@
-<head>
- <title>Müügitellimus</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>M Ü Ü G I T E L L I M U S</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Tellimuse kpv</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Tarnekuupäev</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Tellija aadress:</th>
- <th align=left><font color=ffffff>Tarneaadress:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>Nr.</th> -->
- <th align=left><font color=ffffff>Kood</th>
- <th align=left><font color=ffffff>Selgitus</th>
- <th><font color=ffffff>Kogus</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Hind</th>
- <th><font color=ffffff>Allh%</th>
- <th><font color=ffffff>Summa</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Kokku</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Vahesumma</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Maksetähtaeg <b><%terms%></b> päeva</td>
- <th colspan=2 align=right>Kokku</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Summa sisaldab käibemaksu</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Märkused</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Kõik hinnad <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Eritellimusel tehtud toodetel ning toodetel mida on kliendi soovil
- kohandatud või täiendatud on tellimuse katkestamise tasu 10% tellimuse hinnast.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-sales_order.tex b/sql-ledger/templates/Estonian-sales_order.tex
deleted file mode 100644
index 6056039..0000000
--- a/sql-ledger/templates/Estonian-sales_order.tex
+++ /dev/null
@@ -1,148 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Faks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Kirjeldus} & \textbf{Kokku} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{M Ü Ü G I T E L L I M U S} \parbox{0.3cm}{\hfill}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Kuupäev} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Tarnekuupäev} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Number} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Kood} & \textbf{Kirjeldus} & \textbf{Kogus} &
- \textbf{Ühik} & \textbf{Hind} & \textbf{Alh} & \textbf{Kokku} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Vahesumma} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Summa} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Kõik hinnad \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
- Tagastatud toodetele kehtib 10\% tagastamistasu. Enne toodete tagastamist on vajalik <%company%> nõusolek. Tagastavad tooted peavad olema makstud ning kindlustatud, <%company%> ei vastuta transpordi käigus tekkinud kahjude eest.}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-statement.html b/sql-ledger/templates/Estonian-statement.html
deleted file mode 100644
index a5efdf0..0000000
--- a/sql-ledger/templates/Estonian-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th width=15%>Date</th>
- <th width=15%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Estonian-statement.tex b/sql-ledger/templates/Estonian-statement.tex
deleted file mode 100644
index fdc7339..0000000
--- a/sql-ledger/templates/Estonian-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Estonian-work_order.html b/sql-ledger/templates/Estonian-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Estonian-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Estonian-work_order.tex b/sql-ledger/templates/Estonian-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Estonian-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/French-ap_transaction.html b/sql-ledger/templates/French-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/French-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-ap_transaction.tex b/sql-ledger/templates/French-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/French-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-ar_transaction.html b/sql-ledger/templates/French-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/French-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-ar_transaction.tex b/sql-ledger/templates/French-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/French-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-balance_sheet.html b/sql-ledger/templates/French-balance_sheet.html
deleted file mode 100644
index 56748d6..0000000
--- a/sql-ledger/templates/French-balance_sheet.html
+++ /dev/null
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>Bilan</title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BILAN DE VÉRIFICATION
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ACTIF<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Total Actif</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIF<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total Passif</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>BENEFICES NON DISTRIBUÉS<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total Capital</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL PASSIF & CAPITAL</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/sql-ledger/templates/French-bin_list.html b/sql-ledger/templates/French-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/French-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/French-bin_list.tex b/sql-ledger/templates/French-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/French-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-check.tex b/sql-ledger/templates/French-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/French-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-income_statement.html b/sql-ledger/templates/French-income_statement.html
deleted file mode 100644
index e76df09..0000000
--- a/sql-ledger/templates/French-income_statement.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>Compte de Résultat</title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>Compte de Résultat
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>RECETTES<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Total Recettes</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>DÉPENSES<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Total Dépenses</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>BENEFICES / PERTES (en <%currency%> )</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-</body>
-</html>
diff --git a/sql-ledger/templates/French-invoice.html b/sql-ledger/templates/French-invoice.html
deleted file mode 100644
index 69cae56..0000000
--- a/sql-ledger/templates/French-invoice.html
+++ /dev/null
@@ -1,318 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>A2A <%invnumber%> <%name%></title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor="ffffff">
-
-<table width="100%">
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width="100%">
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tél&nbsp;: <%tel%>
- <br>Fax&nbsp;: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>F A C T U R E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width="100%" cellspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date de facture</th><td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Date d'échéance</th><td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>N° de facture</th><td>&nbsp;</td><td><%invnumber%></td></tr>
- </tr>
-
-<!--
- <tr>
- <th align=right>Correspondant</th><td>&amp;nbsp;</td><td><%employee%></td>
- </tr>
--->
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width="100%">
- <tr bgcolor="000000">
- <th align=left><font color=ffffff>Adresse de facturation</font></th>
- <th align=left><font color=ffffff>Adresse d'envoi</font></th>
- </tr>
-
-<!--
- d'autres variables pouvant être utilisées ici :
- contact, shiptocontact, shiptophone, shiptofax
--->
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width="100%">
- <tr bgcolor="000000">
-<!-- <th align=right><font color="ffffff">N°</font></th> -->
- <th align=left><font color="ffffff">N°</font></th>
- <th align=left><font color="ffffff">Description</font></th>
- <th><font color="ffffff">Qté</font></th>
- <th>&nbsp;</th>
- <th><font color="ffffff">Prix</font></th>
- <th><font color="ffffff">Remise</font></th>
- <th><font color="ffffff">Montant</font></th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-veuillez adapter le colspan si vous comptez inclure ce poste.
-ceci permettra de décaler le poste sous-total vers la gauche.
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-vous pouvez également utiliser netprice à la place de sellprice
-si vous ne voulez pas afficher la remise
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th colspan=5 align=right>Sous-total</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Déjà payé</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>À régler dans <b><%terms%></b> jours au plus tard.</td>
- <th colspan=2 align=right>Solde à régler</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>À noter&nbsp;:</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Tous prix indiqués en <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<%if paid%>
-<tr>
- <td colspan=7>
- <table width="60%">
- <tr>
- <th align=left>Détail règlements</th>
- </tr>
- <tr>
- <td colspan=4>
- <hr noshade>
- </td>
- </tr>
- <tr>
- <th align=left>Date</th>
- <th align=left>Compte</th>
- <th align=left>Source</th>
- <th align=left>Montant</th>
- </tr>
-<%end paid%>
-
-<%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%payment%></td>
- </tr>
-<%end payment%>
-
-<%if paid%>
- </table>
- </td>
-</tr>
-
-<tr>
- <td>&nbsp;</td>
-</tr>
-<%end paid%>
-
-<tr>
- <th colspan=7>
- <!-- <br>Merci beaucoup&amp;nbsp;! -->
- </th>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width="100%">
- <tr valign=top>
- <td><font size=-3>
- &nbsp;
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<!-- <%foreach tax%>
- <tr>
- <th colspan=7 align=left><font size=-2><%taxdescription%> Numéro de TVA <%taxnumber%></font></th>
- </tr>
-<%end tax%> -->
-
-<%if taxincluded%>
- <tr>
- <th colspan=7 align=left><font size=-2>Les taxes affichés sont inclus dans le prix.</font></th>
- </tr>
-<%end taxincluded%>
-
-<!-- business number
- <tr>
- <th colspan=7 align=left><font size=-2>Régistre de Commerce&amp;nbsp;: <%businessnumber%></font></th>
- </tr>
--->
-
-<!-- information banquaire -->
- <tr><td>
- <h6><center>N° TVA&nbsp;: &nbsp;&nbsp;Banque&nbsp;: &nbsp;&nbsp;N° de compte&nbsp;: &nbsp;&nbsp;Code SWIFT&nbsp;: </center>
- </h6>
- </td>
- </tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/French-invoice.tex b/sql-ledger/templates/French-invoice.tex
deleted file mode 100644
index 828c625..0000000
--- a/sql-ledger/templates/French-invoice.tex
+++ /dev/null
@@ -1,155 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage[frenchb]{babel}
-\usepackage[latin1]{inputenc}
-\usepackage{tabularx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Téléphone & <%tel%>\\
- Télécopieur & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Prix} & \textbf{Remise} & \textbf{Montant} \\
- & reporté de la page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{F A C T U R E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date de facturation} & <%invdate%> \\
- \textbf{Numéro de facture} & <%invnumber%> \\
- \textbf{Numéro de client} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Prix} & \textbf{Remise} & \textbf{Montant} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> de <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%total%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tous les prix indiqués sont en \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Merci de faire affaire avec nous!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Le paiement doit être acquitté au plus tard <%terms%> jours à partir de
-la date de facturation. Des intérêts seront perçus à raison de 1.5\% par
-mois après <%duedate%> jusqu'à ce que le paiement soit complet. Les
-éléments retournés seront sujets à un supplément de remmagasinnage de
-10\%. Une autorisation de renvoi doit être obtenue au préalable auprès de
-<%company%>. Les frais de transports et d'assurance sur les éléments
-retournés devront être couvert par le client de façon appropriée.
-<%company%> ne peut être tenue responsable des dommages survenus pendant
-le transit.}
-
-\end{document}
diff --git a/sql-ledger/templates/French-packing_list.html b/sql-ledger/templates/French-packing_list.html
deleted file mode 100644
index 3fa2fec..0000000
--- a/sql-ledger/templates/French-packing_list.html
+++ /dev/null
@@ -1,152 +0,0 @@
-CTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>A2A <%invnumber%> <%name%></title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>L I S T E&nbsp;&nbsp;D ' E N V O I</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date de facture&nbsp;:</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Numéro de facture&nbsp;:</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Adresse d'envoi</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>N°</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qté</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=center><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>À noter&nbsp;:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right><b>EXPÉDIÉ PAR&nbsp;:
- <%shippingpoint%></b>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3><!--
- Conditions d'envoi :
- Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit. -->
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/sql-ledger/templates/French-packing_list.tex b/sql-ledger/templates/French-packing_list.tex
deleted file mode 100644
index d8be76c..0000000
--- a/sql-ledger/templates/French-packing_list.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage[frenchb]{babel}
-\usepackage[latin1]{inputenc}
-\usepackage{tabularx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Téléphone & <%tel%>\\
- Télécopieur & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{L I S T E} \parbox{0.3cm}{\hfill} \textbf{D E}
-\parbox{0.3cm}{\hfill} \textbf{P A Q U E T A G E}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date de facture} & <%invdate%> \\
- \textbf{Numéro de facture} & <%invnumber%> \\
- \textbf{Numéro de client} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Merci de faire affaire avec nous!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Les éléments retournés seront sujets à un supplément de remmagasinnage de
-10\%. Une autorisation de renvoi doit être obtenue au préalable auprès de
-<%company%>. Les frais de transports et d'assurance sur les éléments
-retournés devront être couvert par le client de façon appropriée.
-<%company%> ne peut être tenue responsable des dommages survenus pendant
-le transit.}
-
-\end{document}
diff --git a/sql-ledger/templates/French-pick_list.html b/sql-ledger/templates/French-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/French-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/French-pick_list.tex b/sql-ledger/templates/French-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/French-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-pos_invoice.txt b/sql-ledger/templates/French-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/French-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/French-purchase_order.html b/sql-ledger/templates/French-purchase_order.html
deleted file mode 100644
index 29af338..0000000
--- a/sql-ledger/templates/French-purchase_order.html
+++ /dev/null
@@ -1,211 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>Commande <%ordnumber%> <%name%></title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tél&nbsp;: <%tel%>
- <br>Fax&nbsp;: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B O N&nbsp;&nbsp;D E&nbsp;&nbsp;C O M M A N D E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% cellspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date commande</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Requis pour</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>N° commande</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Commandé par</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>N°</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qté</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prix</th>
- <th><font color=ffffff>Montant</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-veuillez ajuster le colspan si vous voulez inclure ce poste pour décaler le sous-total vers la droite.
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Sous-total</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>À régler dans <b><%terms%></b> jours au plus tard</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>À noter&nbsp;:</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Tous prix indiqués en <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>
-<!--
-<font size=-3>
- Payment due NET <%terms%> Days from date of Invoice.
- Interest on overdue amounts will acrue at the rate of 1.5% per month
- from due date until paid in full. Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.
- </font>
--->
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-purchase_order.tex b/sql-ledger/templates/French-purchase_order.tex
deleted file mode 100644
index d95653d..0000000
--- a/sql-ledger/templates/French-purchase_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage[frenchb]{babel}
-\usepackage[latin1]{inputenc}
-\usepackage{tabularx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Téléphone & <%tel%>\\
- Télécopieur & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & reporté de la page <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{B O N} \parbox{0.3cm}{\hfill} \textbf{D E} \parbox{0.3cm}{\hfill}
-\textbf{C O M M A N D E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date de la commande} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Livrable le} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Numéro de commande} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Prix} & \textbf{Montant} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> de <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tous les prix indiqués sont en \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
diff --git a/sql-ledger/templates/French-receipt.tex b/sql-ledger/templates/French-receipt.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/French-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-request_quotation.html b/sql-ledger/templates/French-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/French-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-request_quotation.tex b/sql-ledger/templates/French-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/French-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-sales_order.html b/sql-ledger/templates/French-sales_order.html
deleted file mode 100644
index 3bf0a7b..0000000
--- a/sql-ledger/templates/French-sales_order.html
+++ /dev/null
@@ -1,237 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>Commande <%ordnumber%> <%name%></title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-<body bgcolor="ffffff">
-
-<table width="100%">
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width="100%">
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tél&nbsp;: <%tel%>
- <br>Fax&nbsp;: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B O N&nbsp;&nbsp;&nbsp;D E&nbsp;&nbsp;&nbsp;C O M M A N D E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% cellspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date commande</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Requis pour</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>N° commande</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width="100%">
- <tr bgcolor="000000">
- <th align=left><font color="ffffff">Commandé par</th>
- <th align=left><font color="ffffff">Adresse d'envoi</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width="100%">
- <tr bgcolor="000000">
-<!-- <th align=right><font color="ffffff">N°</th> -->
- <th align=left><font color="ffffff">N°</th>
- <th align=left><font color="ffffff">Description</th>
- <th><font color="ffffff">Qté</th>
- <th>&nbsp;</th>
- <th><font color="ffffff">Prix</th>
- <th><font color="ffffff">Remise</th>
- <th><font color="ffffff">Montant</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Sous-total</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>À régler dans <b><%terms%></b> jours au plus tard</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Taxe comprise dans Total</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>À noter&nbsp;:</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Tous prix indiqués en <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width="100%">
- <tr valign=top>
- <td><font size=-3>
-<!--
- A 10% order cancellation fee will be applied for any special order
- products or products that have been customized, enhanced or
- upgraded at customers request.
--->
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- <tr>
- <td colspan=5>
- <h6><center>N° TVA&nbsp;: &nbsp;&nbsp;Banque&nbsp;: &nbsp;&nbsp;N° de compte&nbsp;: &nbsp;&nbsp;Code SWIFT&nbsp;: </center>
- </h6>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/French-sales_order.tex b/sql-ledger/templates/French-sales_order.tex
deleted file mode 100644
index ceefade..0000000
--- a/sql-ledger/templates/French-sales_order.tex
+++ /dev/null
@@ -1,151 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage[frenchb]{babel}
-\usepackage[latin1]{inputenc}
-\usepackage{tabularx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Téléphone & <%tel%>\\
- Télécopieur & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Prix} & \textbf{Remise} & \textbf{Montant} \\
- & reporté de la page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{C O M M A N D E} \parbox{0.3cm}{\hfill} \textbf{C L I E N T}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date de la commande} & <%orddate%> \\
- <%if reqdate%>
- \textbf{Livrable le} & <%reqdate%> \\
- <%end reqdate%>
- \textbf{Numéro de commande} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Numéro} & \textbf{Description} & \textbf{Qté} &
- \textbf{Unité} & \textbf{Prix} & \textbf{Remise} & \textbf{Montant} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Sous-total} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> de <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tous les prix indiqués sont en \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Un supplément de 10% sera appliqué à toute commande spécifique et à tout
-produit adapté, amélioré ou mis-à-jour à la demande du client. Les
-éléments non-retournables sont indiqués ci-dessus.
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-sales_quotation.html b/sql-ledger/templates/French-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/French-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-sales_quotation.tex b/sql-ledger/templates/French-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/French-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/French-statement.html b/sql-ledger/templates/French-statement.html
deleted file mode 100644
index 015a8de..0000000
--- a/sql-ledger/templates/French-statement.html
+++ /dev/null
@@ -1,137 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional">
-
-<html>
-
-<head>
-
-<title>Extrait de compte pour <%name%></title>
-<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-15">
-
-</head>
-
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th></th>
- <td align=right>
- <h4>
- Tél&nbsp;: <%tel%>
- <br>Fax&nbsp;: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>E X T R A I T&nbsp;&nbsp;D E&nbsp;&nbsp;C O M P T E</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tél&nbsp;: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax&nbsp;: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Facture n°</th>
- <th width=15%>Date</th>
- <th width=15%>Echeance</th>
- <th width=10%>Actuel</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Solde impayé</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Tout paiement au nom de <b><%company%></b>
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-</body>
-</html>
diff --git a/sql-ledger/templates/French-statement.tex b/sql-ledger/templates/French-statement.tex
deleted file mode 100644
index fdc7339..0000000
--- a/sql-ledger/templates/French-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/French-work_order.html b/sql-ledger/templates/French-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/French-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/French-work_order.tex b/sql-ledger/templates/French-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/French-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/German-ap_transaction.html b/sql-ledger/templates/German-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/German-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-ap_transaction.tex b/sql-ledger/templates/German-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/German-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-ar_transaction.html b/sql-ledger/templates/German-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/German-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-ar_transaction.tex b/sql-ledger/templates/German-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/German-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-balance_sheet.html b/sql-ledger/templates/German-balance_sheet.html
deleted file mode 100644
index f0d6f5e..0000000
--- a/sql-ledger/templates/German-balance_sheet.html
+++ /dev/null
@@ -1,100 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BILANZ
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>AKTIVA<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVA<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>EIGENTUM<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL PASSIVA & EIGETNTUM</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/German-bin_list.html b/sql-ledger/templates/German-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/German-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/German-bin_list.tex b/sql-ledger/templates/German-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/German-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-check.tex b/sql-ledger/templates/German-check.tex
deleted file mode 100644
index 881ee37..0000000
--- a/sql-ledger/templates/German-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Rechnung} & \textbf{Ausgestellt}
- & \textbf{Fällig} & \textbf{Verrechnet} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-income_statement.html b/sql-ledger/templates/German-income_statement.html
deleted file mode 100644
index aa3c22f..0000000
--- a/sql-ledger/templates/German-income_statement.html
+++ /dev/null
@@ -1,78 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>GEWINN & VERLUST
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>EINNAHMEN<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale Einnahmen</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>AUSGABEN<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale Ausgaben</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>GEWINN / (VERLUST)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-invoice.html b/sql-ledger/templates/German-invoice.html
deleted file mode 100644
index d181bda..0000000
--- a/sql-ledger/templates/German-invoice.html
+++ /dev/null
@@ -1,274 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon <%tel%>
- <br>Telefax <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E C H N U N G</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Ausgestellt am</th><td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Bezahlbar bis</th><td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>Nummer</th><td>&nbsp;</td><td><%invnumber%></td></tr>
- </tr>
-
-<!--
- <tr>
- <th align=right>Clerk:</th><td>&nbsp;</td><td><%username%></td>
- </tr>
--->
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>An:</th>
- <th align=left><font color=ffffff>Lieferaddresse:</th>
- </tr>
-
-<!--
- other variables which can be use:
- contact, shiptocontact, shiptophone, shiptofax
--->
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Beschreibung</th>
- <th><font color=ffffff>Anz.</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Preis</th>
- <th><font color=ffffff>Rab</th>
- <th><font color=ffffff>Total</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
- </tr>
-<%end taxincluded%>
-<%if not taxincluded%>
- <tr>
- <th colspan=5 align=right>Zwischensumme</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-<%end taxincluded%>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> auf <%taxbase%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Bezahlt</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Bezahlbar innerhalb von <b><%terms%></b> Tagen</td>
-<%if total%>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
-<%end total%>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemerkungen:</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Alle Preise in <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Rechnung ist bezahlbar innerhalb von <%terms%> Tagen.
- Nach dem <%duedate%> werden Zinsen zu einem
- monatlichen Satz von 1.5% verrechnet.
- Waren bleiben im Besitz von <%company%> bis die Rechnung voll bezahlt ist.
- Rückgaben werden mit 10% Lagergebühren belastet. Beschädigte Waren
- und Waren ohne eine Rückgabenummer werden nicht entgegengenommen.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=7 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
-<%end tax%>
-
-<%if taxincluded%>
- <tr>
- <th colspan=7 align=left><font size=-2>Steuern sind im Preis inbegriffen.</th>
- </tr>
-<%end taxincluded%>
-
-<!-- business number
- <tr>
- <th colspan=7 align=left><font size=-2>Business Number: <%businessnumber%></font></th>
- </tr>
--->
-
- <tr>
- <th colspan=7 align=left>
- <hr>
- <br>Bankverbindung
- <br>Bank
- <br>Bankleitzahl
- <br>Konto No.
- </td>
- </tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-invoice.tex b/sql-ledger/templates/German-invoice.tex
deleted file mode 100644
index 77c432b..0000000
--- a/sql-ledger/templates/German-invoice.tex
+++ /dev/null
@@ -1,159 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Rab} & \textbf{Total} \\
- & Übertrag von Seite <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{R E C H N U N G}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%invdate%> \\
- \textbf{Nummer} & <%invnumber%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Rab} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Zwischensumme} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> auf <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%invtotal%>} \\
-<%if paid%>
- \textbf{Bezahlt} & <%paid%> \\
-<%end paid%>
-<%if total%>
- \textbf{Bezahlbar} & \textbf{<%total%>} \\
-<%end total%>
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle Preise in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-%\vfill
-%\centerline{\textbf{salute}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Rechnung ist bezahlbar innerhalb von <%terms%> Tagen.
-Nach dem <%duedate%> werden Zinsen zu einem
-monatlichen Satz von 1.5\% verrechnet.
-Waren bleiben im Besitz von <%company%> bis die Rechnung voll bezahlt ist.
-Rückgaben werden mit 10 Prozent Lagergebühren belastet. Beschädigte Waren
-und Waren ohne eine Rückgabenummer werden nicht entgegengenommen.
-}
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/German-packing_list.html b/sql-ledger/templates/German-packing_list.html
deleted file mode 100644
index 09ef402..0000000
--- a/sql-ledger/templates/German-packing_list.html
+++ /dev/null
@@ -1,146 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>V E R P P A C K U N G S L I S T E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Datum</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Nummer</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Zustellung an:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- <br><%shiptoaddr4%>
-<%if shiptocontact%>
- <p>An: <%shiptocontact%>
-<%end shiptocontact%>
-
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Artikel</th>
- <th><font color=ffffff>Anz</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemerkungen</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Beschädigte Waren und Waren ohne Rückgabenummer werden nicht
- entgegengenommen. Lagerkosten werden mit 10% berrechnet.
- Waren müssen ausreichended verpackt und versichert sein.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-packing_list.tex b/sql-ledger/templates/German-packing_list.tex
deleted file mode 100644
index 2ddf99b..0000000
--- a/sql-ledger/templates/German-packing_list.tex
+++ /dev/null
@@ -1,118 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Steige} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{P A C K I N G} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%invdate%> \\
- \textbf{Nummer} & <%invnumber%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Steige} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Beschädigte Waren und Waren ohne Rückgabenummer werden nicht
-entgegengenommen. Lagerkosten werden mit 10\% berrechnet.
-Waren müssen ausreichended verpackt und versichert sein.
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-pick_list.html b/sql-ledger/templates/German-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/German-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/German-pick_list.tex b/sql-ledger/templates/German-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/German-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-pos_invoice.txt b/sql-ledger/templates/German-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/German-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/German-purchase_order.html b/sql-ledger/templates/German-purchase_order.html
deleted file mode 100644
index c9cebc8..0000000
--- a/sql-ledger/templates/German-purchase_order.html
+++ /dev/null
@@ -1,192 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon <%tel%>
- <br>Telefax <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B E S T E L L U N G</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Bestellungsdatum</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Lieferbar bis</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Bestellnummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>An:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Artikel</th>
- <th><font color=ffffff>Anz</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Preis</th>
- <th><font color=ffffff>Total</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Zwischensumme</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Netto <b><%terms%></b> Tage</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemerkungen</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Alle Preise in <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- &nbsp;
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-purchase_order.tex b/sql-ledger/templates/German-purchase_order.tex
deleted file mode 100644
index e1e62c2..0000000
--- a/sql-ledger/templates/German-purchase_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Zwischensumme} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Total} \\
- & Übertrag von <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{B E S T E L L U N G}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Datum} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Lieferung bis} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Nummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Zwischensumme} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle Preise in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/German-receipt.tex b/sql-ledger/templates/German-receipt.tex
deleted file mode 100644
index 881ee37..0000000
--- a/sql-ledger/templates/German-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Rechnung} & \textbf{Ausgestellt}
- & \textbf{Fällig} & \textbf{Verrechnet} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-request_quotation.html b/sql-ledger/templates/German-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/German-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-request_quotation.tex b/sql-ledger/templates/German-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/German-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-sales_order.html b/sql-ledger/templates/German-sales_order.html
deleted file mode 100644
index ce37fc4..0000000
--- a/sql-ledger/templates/German-sales_order.html
+++ /dev/null
@@ -1,221 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon <%tel%>
- <br>Telefax <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B E S T E L L U N G</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Bestelldatum</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Lieferbar bei</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Bestellnummer</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Verrechnet An:</th>
- <th align=left><font color=ffffff>Lieferaddresse:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Artikel</th>
- <th><font color=ffffff>Anz</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Preis</th>
- <th><font color=ffffff>Rab</th>
- <th><font color=ffffff>Total</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%ordtotal%></td>
- </tr>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <tr>
- <th colspan=5 align=right>Zwischensumme</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-<%end taxincluded%>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> auf <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Netto <b><%terms%></b> Tage</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Steuern sind im Preis inbegriffen</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Bemerkungen</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- Alle Preise in <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Spezialprodukte werden nicht zurückgenommen. Für alle anderen Waren
- wird eine 10% Stornogebühr verrechnet.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-sales_order.tex b/sql-ledger/templates/German-sales_order.tex
deleted file mode 100644
index 98f2cc4..0000000
--- a/sql-ledger/templates/German-sales_order.tex
+++ /dev/null
@@ -1,149 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Zwischensumme} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Rab} & \textbf{Total} \\
- & Übertrag von Seite <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{B E S T E L L U N G}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Bestelldatum} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Lieferbar bei} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Bestellnummer} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Artikel} & \textbf{Anz} &
- \textbf{Einh} & \textbf{Preis} & \textbf{Rab} & \textbf{Total} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Zwischensumme} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> auf <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle Preise in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Spezialprodukte werden nicht zurückgenommen. Für alle anderen Waren
-wird eine 10\% Stornogebühr verrechnet.
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-sales_quotation.html b/sql-ledger/templates/German-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/German-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-sales_quotation.tex b/sql-ledger/templates/German-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/German-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/German-statement.html b/sql-ledger/templates/German-statement.html
deleted file mode 100644
index a5efdf0..0000000
--- a/sql-ledger/templates/German-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th width=15%>Date</th>
- <th width=15%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/German-statement.tex b/sql-ledger/templates/German-statement.tex
deleted file mode 100644
index fdc7339..0000000
--- a/sql-ledger/templates/German-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/German-work_order.html b/sql-ledger/templates/German-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/German-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/German-work_order.tex b/sql-ledger/templates/German-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/German-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Hungarian-ap_transaction.html b/sql-ledger/templates/Hungarian-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Hungarian-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-ap_transaction.tex b/sql-ledger/templates/Hungarian-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Hungarian-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-ar_transaction.html b/sql-ledger/templates/Hungarian-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Hungarian-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-ar_transaction.tex b/sql-ledger/templates/Hungarian-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Hungarian-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-balance_sheet.html b/sql-ledger/templates/Hungarian-balance_sheet.html
deleted file mode 100644
index b3efde2..0000000
--- a/sql-ledger/templates/Hungarian-balance_sheet.html
+++ /dev/null
@@ -1,100 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>MÉRLEG
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ESZKÖZÖK<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Eszközök összesen</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-<tr>
- <th align=left colspan=4>SAJÁT TÕKE<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Tõke összesen</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>KÖTELEZETTSÉGEK<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Kötelezettségek összesen</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-
-<tr valign=top>
- <th align=left colspan=2>KÖTELEZETTSÉGEK & TÕKE ÖSSZESEN</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/Hungarian-bin_list.html b/sql-ledger/templates/Hungarian-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Hungarian-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Hungarian-bin_list.tex b/sql-ledger/templates/Hungarian-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Hungarian-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-check.tex b/sql-ledger/templates/Hungarian-check.tex
deleted file mode 100644
index 08c95c3..0000000
--- a/sql-ledger/templates/Hungarian-check.tex
+++ /dev/null
@@ -1,81 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Számlaszám} & \textbf{Telj. dátuma}
- & \textbf{Esedékes} & \textbf{Kifizetett} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Hungarian-income_statement.html b/sql-ledger/templates/Hungarian-income_statement.html
deleted file mode 100644
index e9e4a45..0000000
--- a/sql-ledger/templates/Hungarian-income_statement.html
+++ /dev/null
@@ -1,82 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>EREDMÉNYKIMUTATÁS
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>BEVÉTELEK<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Bevételek összesen</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2><br><hr width=300 size=5 align=left noshade>RÁFORDÍTÁSOK</th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Ráfordítások összesen</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>NYERESÉG / (VESZTESÉG)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Hungarian-invoice.html b/sql-ledger/templates/Hungarian-invoice.html
deleted file mode 100644
index a7a7198..0000000
--- a/sql-ledger/templates/Hungarian-invoice.html
+++ /dev/null
@@ -1,303 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100% >
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100% >
- <tr>
- <td align=center><!--<img src=logo.jpg>--><br>&nbsp;<br>
- <font size=3><B> SZÁMLA</B></font>
- </td>
- </tr>
-
- <tr>
- <td align=right>
- <!-- <%copysum%> -->
- </td>
- </tr>
- <tr>
- <td align=right>
- Másolat
- </td>
- </tr>
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0 >
-<tr>
- <td><hr noshade></td>
-</tr>
-
- <tr>
- <td>
- <table width=100% >
- <tr >
- <th align=left width=50%>Eladó:</th>
- <th align=left width=50%>Vevõ:</th>
- </tr>
- <tr valign=top>
- <td><%company%>
- <br><%address%>
- <br>Adószám:<%businessnumber%>
- <br>tel:<%tel%>
- <br>fax:<%fax%>
- </td>
-
-
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-<tr>
- <td><hr noshade></td>
-</tr>
-
-<tr>
-<td>
- <table width=100%>
- <tr>
- <th>Fizetési mód</th>
- <th>Telj. dátuma</th>
- <th>Számla kelte</th>
- <th>Esedékesség</th>
- <th>Megrendelés</th>
- <th>Kiállította</th>
- <th>Sorszám</th>
- </tr>
- <tr>
- <td align=center><%shippingpoint%></td>
- <td align=center><%invdate%></td>
- <td align=center><%crdate%></td>
- <td align=center><%duedate%></td>
- <td align=center><%ordnumber%></td>
- <td align=center><%employee%></td>
- <td align=center><font size=2><%invnumber%></font></td>
- </tr>
- </table>
-<td>
-<tr>
-<tr>
- <td><hr noshade></td>
-</tr>
-
- <tr >
- <td height=470 valign=top>
- <table width=100% >
- <tr>
- <th align=right>&nbsp;</th>
- <th align=left>Áru</th>
- <th align=left>Megnevezés</th>
- <th align=left nowrap>VTSZ</th>
- <th>Menny.</th>
- <th>&nbsp;</th>
- <th align=right>Nettó egységár</th>
-<!-- <th><font color=ffffff>Disc</th> -->
- <th align=right>Nettó összeg</th>
- <th align=right>ÁFA%</th>
- <th align=right>ÁFA összeg</th>
- <th align=right>Bruttó összeg</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=center><%runningnumber%>.</td>
- <td nowrap align=left><%number%></td>
- <td nowrap align=left><%description%></td>
- <td nowrap align=center><%bin%></td>
- <td align=center><%qty%></td>
- <td align=center><%unit%></td>
- <td align=right><%netprice%></td>
-<!-- <td align=right><%discount%></td> -->
- <td align=right><%linetotal%></td>
- <td align=right><%linetaxrate%></td>
- <td align=right><%taxamount%></td>
- <td align=right><%linetotal2%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=11><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=9 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th colspan=9 align=right>Nettó összesen</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=9 align=right>alap: <%taxbase%> ráta: <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=9 align=right>Fizetve</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=6>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
-<!-- <td colspan=6>Fizetési határidõ: <b><%terms%></b> nap</td> -->
- <th colspan=9 align=right>A számla végösszege:</th>
- <th colspan=2 align=right><%total%>&nbsp;Ft</th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100% >
- <tr valign=top>
-<%if notes%>
- <td><b>Megjegyzés:</b>&nbsp;<%notes%></td>
- <td ></td>
-<%end notes%>
- <td align=right>
-<!-- All prices in <b><%currency%></b> Funds -->
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<%if paid%>
-<tr>
- <td colspan=7>
- <table width=60% >
- <tr>
- <th align=left>Fizetések</th>
- </tr>
- <tr>
- <td colspan=4>
- <hr noshade>
- </td>
- </tr>
- <tr>
- <th align=left>Dátum</th>
- <th align=left>Számla</th>
- <th align=left>Bizonylatszám</th>
- <th align=left>Összeg</th>
- </tr>
-<%end paid%>
-
-<%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%payment%></td>
- </tr>
-<%end payment%>
-
-<%if paid%>
- </table>
- </td>
-</tr>
-
-<tr>
- <td>&nbsp;</td>
-</tr>
-<%end paid%>
-
-<tr>
- <th colspan=7>
-<!-- <br>Thank you for your valued business! -->
- </th>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100% >
- <tr valign=top>
- <td><font size=-3>
-<%intnotes%>
- </font>
-
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
- <tr>
-<!-- <th colspan=7 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th> -->
- </tr>
-<%end tax%>
-
-<%if taxincluded%>
- <tr>
- <th colspan=7 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
-<%end taxincluded%>
-
-
-
-
-<!-- banking information
- <tr>
- <th colspan=7 align=left>Banking Information:
- <br>Bank
- <br>Transit No.
- <br>Account No.
- </td>
- </tr>
--->
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-invoice.tex b/sql-ledger/templates/Hungarian-invoice.tex
deleted file mode 100644
index 09878b0..0000000
--- a/sql-ledger/templates/Hungarian-invoice.tex
+++ /dev/null
@@ -1,280 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%% %%%
-%%% Szamla - LaTeX sablon v. 1.01 %%%
-%%% Kovacs Laszlo -- lakovacs@inf.unideb.hu %%%
-%%% %%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%
-%%% 2003.10.31.
-%%%
-%%%
-
-
-\documentclass[twoside]{article}
-%\documentclass[twoside]{scrartcl}
-% \usepackage[frame]{xy}
-\usepackage{tabularx}
-%\usepackage{graphicx}
-\usepackage[latin2]{inputenc}
-
-
-
-\setlength{\voffset}{-0.5cm}
-\setlength{\hoffset}{-2.5cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-
-\newcommand{\PAR}[1]{\texttt{\upshape <\%#1\%>}\typeout{#1}}
-
-
-\begin{document}
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-
-\newsavebox{\headright}
-\sbox{\headright}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
- \parbox{\textwidth}{
- \begin{center}
-% \includegraphics[scale=1.0]{/tmp/logo_04.eps} \\[.3cm]
- {\large\bfseries SZÁMLA} \\
- \end{center}
-
- \mbox{}\hfill <%copysum%> \\
- \mbox{}\hfill <%copynumber%>
- }
-}
-
-\newsavebox{\headleft}
-\sbox{\headleft}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
- \parbox{\textwidth}{
-% \includegraphics[scale=.5]{/tmp/logo_04.eps}
- \hfill <%invnumber%>\\[-3mm]
- \rule{\textwidth}{.5pt}
- }
-}
-
-
-
-\markboth{}{\usebox{\headright}}
-
-\pagestyle{myheadings}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\fontshape{n}\selectfont
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-}
-
-\rule{\textwidth}{1.5pt}
-
- \hfill
- \begin{tabularx}{7cm}{X@{ }r@{}}
- \textbf{Részösszeg} & <%sumcarriedforward%> \cr
- \end{tabularx}
-
-\newpage
-
-\markboth{\usebox{\headleft}}{\usebox{\headleft}}
-
-\mbox{}\vspace{.5cm}
-
-\rule{\textwidth}{1.5pt}
-
-\vspace{.3cm}
-
-{\scriptsize
-\begin{tabularx}{\textwidth}{>{\hsize=0.4cm\centering}X@{\ }
- >{\hsize=0.9cm\raggedleft}X@{\ }
- >{\hsize=1.9cm\raggedleft}X@{\ }
- >{\hsize=2.9cm\raggedleft}X@{\ }
- >{\hsize=1.9cm\centering}X@{\ }
- >{\hsize=0.9cm\centering}X@{\ }
- >{\hsize=0.5cm\centering}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=0.8cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{}
- }
- \textbf{no} & \textbf{Márka} & \textbf{Áru} & \centering\textbf{Megnevezés} &
- \textbf{VTSZ} & \textbf{Menny.} & \textbf{u} &
- \textbf{Nettó egységár} & \textbf{Nettó összeg} & \textbf{ÁFA\%} &
- \textbf{ÁFA összeg} & \textbf{Bruttó összeg}
- \cr
- & & \textbf{elõzõ oldalról} &
- & & &
- & & &
- & & <%sumcarriedforward%>
- \cr
-<%end pagebreak%>
-
-\mbox{}\vspace{3.5cm}
-
-\rule{\textwidth}{1.5pt}
-
-\vspace{3mm}
-
-\hbox to\hsize{
-\begin{minipage}[t]{9.5cm}
-\textbf{Eladó:} \\
-<%company%>\\
-<%address%>\\
-Adószám: <%businessnumber%>\\
-tel: <%tel%>\\
-fax: <%fax%>
-\end{minipage}
-\hfill \
-\begin{minipage}[t]{9.5cm}
-\textbf{Vevõ:} \\
-<%name%>\\
-<%address1%>\\
-<%if address2%>
-<%address2%>
-<%end address2%>\\
-<%city%> <%state%> <%zipcode%>\\
-<%if country%>
-<%country%>
-<%end country%>
-\end{minipage}
-}
-
-
-\vspace{5mm}
-
-\rule{\textwidth}{1.5pt}
-
-\vspace{3mm}
-
-\hspace{-3mm}
-\begin{tabularx}{\textwidth}{>{\hsize=2.1cm\centering}X@{\ }
- >{\hsize=2.8cm\centering}X@{\ }
- >{\hsize=2.8cm\centering}X@{\ }
- >{\hsize=2.8cm\centering}X@{\ }
- >{\hsize=3.4cm\centering}X@{\ }
- >{\hsize=2.5cm\centering}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{}}
- \textbf{Fizetési mód} & \textbf{Telj.~dátuma} & \textbf{Számla kelte} &
- \textbf{Esedékesség} & \textbf{Megrendelés} & \textbf{Kiállította} & \textbf{Sorszám}
- \cr
- <%shippingpoint%> & <%invdate%> & <%crdate%> &
- <%duedate%> & <%ordnumber%> & <%employee%> & <%invnumber%>
-\end{tabularx}
-
-
-\vspace{5mm}
-
-\rule{\textwidth}{1.5pt}
-
-\vspace{3mm}
-
-\hspace{-3mm}
-{\scriptsize
-\begin{tabularx}{\textwidth}{>{\hsize=0.4cm\centering}X@{\ }
- >{\hsize=0.9cm\raggedright}X@{\ }
- >{\hsize=1.9cm\raggedright}X@{\ }
- >{\hsize=2.9cm\raggedright}X@{\ }
- >{\hsize=1.9cm\centering}X@{\ }
- >{\hsize=0.9cm\raggedleft}X@{\ }
- >{\hsize=0.5cm\centering}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=0.8cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{\ }
- >{\hsize=2.0cm\raggedleft}X@{}
- }
- \centering\textbf{sz.} & \raggedright\textbf{Márka} & \raggedright\textbf{Áru} & \raggedright\textbf{Megnevezés} &
- \centering\textbf{VTSZ} & \raggedleft\textbf{Menny.} & \centering\textbf{egys.} &
- \raggedleft\textbf{Nettó egységár} & \raggedleft\textbf{Nettó összeg} & \raggedright\textbf{ÁFA\%} &
- \raggedleft\textbf{ÁFA összeg} & \raggedleft\textbf{Bruttó összeg}
- \cr
-<%foreach number%>
- <%runningnumber%> & <%partsgroup%> & <%number%> & <%description%> &
- <%bin%> & <%qty%> & <%unit%> &
- <%netprice%> & <%linetotal%> & <%linetaxrate%> &
- <%taxamount%> & <%linetotal2%>
- \cr
-<%end number%>
-\end{tabularx}
-}
-
-\rule{\textwidth}{1.5pt}
-
-\hbox to\hsize{
-\hspace{8.4cm}
-\begin{minipage}[t]{11cm}
-
-\rule{10.6cm}{1.5pt}
-
-\vspace{.2cm}
-
-\begin{tabularx}{10cm}{>{\hsize=7cm\raggedleft}X>{\hsize=3cm\raggedleft}X}
-%\textbf{Total} & <%invtotal%> \cr
-\textbf{Nettó összesen} & <%subtotal%> \cr
-<%foreach tax%>
-\textbf{Alap:} <%taxbase%> \textbf{ráta:} <%taxrate%> & <%tax%> \cr
-<%end tax%>
-<%if paid%>
-\textbf{Fizetve:} & -<%paid%>
-<%end paid%>
-\end{tabularx}
-
-\rule{10.6cm}{1.5pt}
-\begin{tabularx}{10cm}{>{\hsize=7cm\raggedleft}X>{\hsize=3cm\raggedleft}X}
-\textbf{A számla végösszege} & <%total%> \textbf{Ft}
-\end{tabularx}
-
-\end{minipage}
-}
-
-
-\vfill
-\vspace{1cm}
-<%if notes%>
-\textbf{Megjegyzés:} <%notes%>
-\vspace{1cm}
-<%end if%>
-
-
-<%if paid%>
-\textbf{Fizetések:}
-
-\rule{12cm}{1.5pt}
-
-\vspace{.2cm}
-
-\begin{tabularx}{12cm}{@{}>{\hsize=2.9cm\centering}X@{\ }
- >{\hsize=2.9cm\centering}X@{\ }
- >{\hsize=2.9cm\centering}X@{\ }
- >{\hsize=2.9cm\raggedleft}X@{}}
- \textbf{Dátum} & \textbf{Számla} & \textbf{Bizonylatszám} & \textbf{Összeg}
- \cr
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%payment%>
- \cr
-<%end payment%>
-<%if paid%>
-\end{tabularx}
-<%end paid%>
-
-\vspace{1cm}
-
-<%intnotes%>
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Hungarian-packing_list.html b/sql-ledger/templates/Hungarian-packing_list.html
deleted file mode 100644
index f3cf6b4..0000000
--- a/sql-ledger/templates/Hungarian-packing_list.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=left>SZÁLLÍTÓLEVÉL</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Dátum</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Szám</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Szállítási cím:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- <br><%shiptoaddr4%>
-<%if shiptocontact%>
- <p>Kapcsolattartó: <%shiptocontact%>
-<%end shiptocontact%>
-
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Szám</th>
- <th align=left><font color=ffffff>Szöveges leírás</th>
- <th align=right><font color=ffffff>Menny.</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Megjegyzés</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- A visszaszállított áruk után 10 % újraraktározási
- díjat kell fizetni. Engedélyt a visszaszállításra csak
- a <%company%> adhat ki. A visszárut csak elõre kifizetve és biztosítva
- lehet visszaszállítani. <%company%> nem tehetõ felelõssé a visszaszállítás
- során keletkezett kárért.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-packing_list.tex b/sql-ledger/templates/Hungarian-packing_list.tex
deleted file mode 100644
index 506b242..0000000
--- a/sql-ledger/templates/Hungarian-packing_list.tex
+++ /dev/null
@@ -1,122 +0,0 @@
-\documentclass[twoside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{S Z Á L L I T Ó} \parbox{0.3cm}{\hfill} \textbf{L E V É L}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dátum} & <%invdate%> \\
- \textbf{Szám} & <%invnumber%> \\
- \textbf{Vevõ} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Köszönjük az együttmûködést!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-A visszaszállított áruk után 10\% újraraktározási díjat kell fizetni.
-Engedélyt a visszaszállításra csak a <%company%> adhat ki. A visszárut
-csak elõre kifizetve és biztosítva lehet visszaszállítani. <%company%>
-nem tehetõ felelõssé a visszaszállítás során keletkezett kárért.
-}
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-pick_list.html b/sql-ledger/templates/Hungarian-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Hungarian-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Hungarian-pick_list.tex b/sql-ledger/templates/Hungarian-pick_list.tex
deleted file mode 100644
index fc331fa..0000000
--- a/sql-ledger/templates/Hungarian-pick_list.tex
+++ /dev/null
@@ -1,143 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-pos_invoice.txt b/sql-ledger/templates/Hungarian-pos_invoice.txt
deleted file mode 100644
index bbca9a0..0000000
--- a/sql-ledger/templates/Hungarian-pos_invoice.txt
+++ /dev/null
@@ -1,48 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Kassza: <%till align=left width=3%> Telefon#: <%tel%>
- Eladó: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
-Menny Név Összeg
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
- Tételszám: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Bruttó: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Nettó: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Bruttó: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Visszajáró: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Fizetendõ: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Engedmény levonva
-<%end discount%>
-
- Köszönjük a vásárlást!
-
-<%if taxincluded%>
-A végösszeg bruttóban értendõ
-<%end taxincluded%>
-
-
diff --git a/sql-ledger/templates/Hungarian-purchase_order.html b/sql-ledger/templates/Hungarian-purchase_order.html
deleted file mode 100644
index 2f95eb7..0000000
--- a/sql-ledger/templates/Hungarian-purchase_order.html
+++ /dev/null
@@ -1,230 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>BESZERZÉSI &nbsp;&nbsp; RENDELÉS</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Rendelés dátuma</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Leszállítás</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Szám</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>Szállító:</th>
- <th align=left width=50%><font color=ffffff>Szállítási cím:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
-
-<br>
-<%if contact%>
-<br>Kapcsolattartó: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-<br>
-<%if shiptocontact%>
-<br>Kapcsolattartó: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Szám</th>
- <th align=left><font color=ffffff>Szöveges leírás</th>
- <th align=right><font color=ffffff>Menny</th>
- <th>&nbsp;</th>
- <th align=right><font color=ffffff>Ár</th>
- <th align=right><font color=ffffff>Összeg</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right> Nettó összeg</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%>alap: <%taxbase%> ráta: <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Határidõ <b><%terms%></b> nap</td>
- <th colspan=2 align=right> Bruttó összeg</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Megjegyzés</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
-<!-- Az árak <b><%currency%></b>-ban vannak meghatározva-->
- Az árak Forintban értendõk
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
-<!--
-További megjegyzések
--->
-
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-purchase_order.tex b/sql-ledger/templates/Hungarian-purchase_order.tex
deleted file mode 100644
index 7b59e75..0000000
--- a/sql-ledger/templates/Hungarian-purchase_order.tex
+++ /dev/null
@@ -1,206 +0,0 @@
-\documentclass[twoside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Részösszeg} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Ár} & \textbf{Összeg} \\
- & folytatás az elõzõ oldalról: <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-\textbf{Szállító}
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-Kapcsolattartó: <%contact%>
-\vspace{0.3cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Szállítási cím}
-\vspace{0.3cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Szállítási kapcsolattartó: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B E S Z E R Z É S I} \parbox{0.3cm}{\hfill} \textbf{R E N D E L É S}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dátum} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Leszállítás} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Szám} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Ár} & \textbf{Összeg} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{9cm}{Xr@{}}
- \textbf{Nettó összeg} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> alap <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Bruttó összeg} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- % All prices in \textbf{<%currency%>} funds.
-Az árak Forintban értendõk
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Hungarian-receipt.tex b/sql-ledger/templates/Hungarian-receipt.tex
deleted file mode 100644
index a77e595..0000000
--- a/sql-ledger/templates/Hungarian-receipt.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Számlaszám} & \textbf{Telj. dátuma}
- & \textbf{Esedékes} & \textbf{Kifizetett} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Hungarian-request_quotation.html b/sql-ledger/templates/Hungarian-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Hungarian-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-request_quotation.tex b/sql-ledger/templates/Hungarian-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Hungarian-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-sales_order.html b/sql-ledger/templates/Hungarian-sales_order.html
deleted file mode 100644
index ff518a1..0000000
--- a/sql-ledger/templates/Hungarian-sales_order.html
+++ /dev/null
@@ -1,221 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>VEVÕRENDELÉS</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Rendelés dátuma</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Leszállítás</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Szám</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Vevõ:</th>
- <th align=left><font color=ffffff>Szállítási cím:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Szám</th>
- <th align=left><font color=ffffff>Szöveges leírás</th>
- <th align=right><font color=ffffff>Menny</th>
- <th>&nbsp;</th>
- <th align=right><font color=ffffff>Ár</th>
- <th align=right><font color=ffffff>Engedmény</th>
- <th align right><font color=ffffff>Összeg</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Bruttó összeg</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Nettó összeg</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> alap <%taxbase%> ráta: <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Fizetési határidõ: <b><%terms%></b> nap</td>
- <th colspan=2 align=right>Bruttó összeg</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>A végösszeg tartalmazza az adó összegét</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Megjegyzés</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
-<!-- All prices in <b><%currency%></b> Funds -->
- Az árak Forintban értendõk
- <br><!--<%shippingpoint%>-->
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
-<!-- A 10% order cancellation fee will be applied for any special order
- products or products that have been customized, enhanced or
- upgraded at customers request. -->
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-sales_order.tex b/sql-ledger/templates/Hungarian-sales_order.tex
deleted file mode 100644
index 7f536f4..0000000
--- a/sql-ledger/templates/Hungarian-sales_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Részösszeg} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Ár} & \textbf{Engedmény} & \textbf{Összeg} \\
- & folytatás az elõzõ oldalról: <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{V E V Õ} \parbox{0.3cm}{\hfill} \textbf{R E N D E L É S}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Rendelés dátuma} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Leszállítás} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Szám} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Szám} & \textbf{Szöveges leírás} & \textbf{Menny.} &
- \textbf{egys.} & \textbf{Ár} & \textbf{Engedmény} & \textbf{Összeg} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{9cm}{Xr@{}}
- \textbf{Nettó összeg} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> alap <%taxbase%> <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Bruttó összeg} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
-% All prices in \textbf{<%currency%>} funds.
-Az árak Forintban értendõk
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-sales_quotation.html b/sql-ledger/templates/Hungarian-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Hungarian-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-sales_quotation.tex b/sql-ledger/templates/Hungarian-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Hungarian-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Hungarian-statement.html b/sql-ledger/templates/Hungarian-statement.html
deleted file mode 100644
index 20945a3..0000000
--- a/sql-ledger/templates/Hungarian-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>K I M U T A T Á S</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Számla #</th>
- <th width=15% align=left>Dátum</th>
- <th width=15% align=left>Esedékesség</th>
- <th width=10% align=right>0-30</th>
- <th width=10% align=right>30</th>
- <th width=10% align=right>60</th>
- <th width=10% align=right>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td align=left><%invnumber%></td>
- <td align=left><%invdate%></td>
- <td align=left><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Nyitott tételek összesen:</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Kérjük a fizetendõ összeget a <b><%company%></b> bankszámlájára átutalni szíveskedjenek.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Hungarian-statement.tex b/sql-ledger/templates/Hungarian-statement.tex
deleted file mode 100644
index fb685e1..0000000
--- a/sql-ledger/templates/Hungarian-statement.tex
+++ /dev/null
@@ -1,141 +0,0 @@
-\documentclass[twoside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin2]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Részösszeg} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%statementdate%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Számla \#} & \textbf{Dátum} & \textbf{Esedékesség} &
- \textbf{0-30} & \textbf{30} & \textbf{60} & \textbf{90+} \\
- folytatás az elõzõ oldalról: <%lastpage%> & & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{K I M U T A T Á S} \hfill
-
-\hfill <%statementdate%>
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Számla \#} & \textbf{Dátum} & \textbf{Esedékesség} &
- \textbf{Nem lejárt} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Összesen} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{1cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Nyitott tételek összesen} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Kérjük a fizetendõ összeget a <%company%> bankszámlájára átutalni szíveskedjenek.
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Hungarian-work_order.html b/sql-ledger/templates/Hungarian-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Hungarian-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Hungarian-work_order.tex b/sql-ledger/templates/Hungarian-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Hungarian-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Italian-ap_transaction.html b/sql-ledger/templates/Italian-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Italian-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-ap_transaction.tex b/sql-ledger/templates/Italian-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Italian-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-ar_transaction.html b/sql-ledger/templates/Italian-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Italian-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-ar_transaction.tex b/sql-ledger/templates/Italian-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Italian-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-balance_sheet.html b/sql-ledger/templates/Italian-balance_sheet.html
deleted file mode 100644
index d7ea69b..0000000
--- a/sql-ledger/templates/Italian-balance_sheet.html
+++ /dev/null
@@ -1,103 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>STATO PATRIMONIALE
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ATTIVITA'<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTALE ATTIVITA</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVITA'<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Totale Passivita'</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>CAPITALE NETTO<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Totale Capitale Netto</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTALE PASSIVITA'</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Italian-bin_list.html b/sql-ledger/templates/Italian-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Italian-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Italian-bin_list.tex b/sql-ledger/templates/Italian-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Italian-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-check.tex b/sql-ledger/templates/Italian-check.tex
deleted file mode 100644
index a5c06aa..0000000
--- a/sql-ledger/templates/Italian-check.tex
+++ /dev/null
@@ -1,81 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Fattura Numero} & \textbf{Data Fattura}
- & \textbf{Dovuto} & \textbf{Applicato} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Italian-income_statement.html b/sql-ledger/templates/Italian-income_statement.html
deleted file mode 100644
index 5577101..0000000
--- a/sql-ledger/templates/Italian-income_statement.html
+++ /dev/null
@@ -1,78 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>CONTO ECONOMICO
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>RICAVI<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale Ricavi</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>COSTI<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale Costi</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>UTILE / (PERDITA)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
-
-
-
-
diff --git a/sql-ledger/templates/Italian-invoice.html b/sql-ledger/templates/Italian-invoice.html
deleted file mode 100644
index 3fd6e3d..0000000
--- a/sql-ledger/templates/Italian-invoice.html
+++ /dev/null
@@ -1,209 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>FATTURA</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data fattura</th><td width=10>&nbsp;</td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Scadenza</th><td width=10>&nbsp;</td><td><%duedate%></td>
- </tr>
-
- <tr>
- <th align=right>Numero fattura</th><td>&nbsp;</td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Sede legale:</th>
- <th align=left><font color=ffffff>Inviare fattura a:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Numero</th>
- <th align=left><font color=ffffff>Descrizione</th>
- <th><font color=ffffff>Quantit&agrave;</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prezzo</th>
- <th><font color=ffffff>Sconto</th>
- <th><font color=ffffff>Totale riga</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=5 align=right>Totale righe</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%>: <%taxrate%>% su <%taxbase%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Importo gi&agrave; pagato</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Scadenza a <b><%terms%></b> giorni data fattura.</td>
- <th colspan=2 align=right>Totale da pagare</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>Note</td>
- <td><%notes%></td>
- <td align=right>
- I prezzi sono espressi in valuta <b><%currency%></b>.
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- Per i pagamenti successivi alla scadenza della fattura sar&agrave;
- addebitato l'interesse legale, aumentato di due punti percentuali, fino al
- pagamento completo.
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
diff --git a/sql-ledger/templates/Italian-invoice.tex b/sql-ledger/templates/Italian-invoice.tex
deleted file mode 100644
index 6d3cb10..0000000
--- a/sql-ledger/templates/Italian-invoice.tex
+++ /dev/null
@@ -1,236 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{18cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totale riga} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Codice} & \textbf{Descrizione} & \textbf{Quantita'} &
- \textbf{Unita'} & \textbf{Prezzo} & \textbf{Sc.} & \textbf{Totale righe} \\
- & carried forward from page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
- \parbox[t]{10.5cm}{
- \textbf{Sede legale:}
- \vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-%<%if contact%>
-%Attn: <%contact%>
-%\vspace{0.3cm}
-%<%end contact%>
-\vspace{0.5cm}
-
-<%if customerphone%>
-Telefono: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Inviare fatttura a:}
-\vspace{0.5cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{FATTURA}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data fattura} & <%invdate%> \\
- \textbf{Numero fattura} & <%invnumber%> \\
- \textbf{Ordine} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Codice} & \textbf{Descrizione} & \textbf{Qt\`a} &
- \textbf{Un.} & \textbf{Prezzo} & \textbf{Sc.} & \textbf{Tot. riga} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totale righe} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%>: <%taxrate%>\% & <%tax%>\\
-<%end tax%>
-<%if paid%>
- \textbf{Pagato} & - <%paid%> \\
-<%end paid%>
- \hline
- \textbf{Totale da pagare} & \textbf{<%total%>} \\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tutti i prezzi sono espressi in valuta \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-<%if paid%>
-\begin{tabularx}{10cm}{@{}lXlr@{}}
- \textbf{Pagamenti} & & & \\
- \hline
- \textbf{Data} & \textbf{Conto} & \textbf{Documento di riferimento} & \textbf{Importo} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabularx}
-<%end paid%>
-
-\vspace{1cm}
-
-%\centerline{\textbf{Grazie per averci scelto!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Per i pagamenti successivi alla scadenza della fattura sara'
-addebitato l'interesse legale, aumentato di due punti percentuali, fino al
-pagamento completo.
-}
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Italian-packing_list.html b/sql-ledger/templates/Italian-packing_list.html
deleted file mode 100644
index 4a451d8..0000000
--- a/sql-ledger/templates/Italian-packing_list.html
+++ /dev/null
@@ -1,126 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>L I S T A &nbsp;&nbsp; E T I C H E T T E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Numero</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Inviare a:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Numero</th>
- <th align=left><font color=ffffff>Descrizione</th>
- <th><font color=ffffff>Quantit&agrave;</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>Note</td>
- <td><%notes%></td>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-
-
-
diff --git a/sql-ledger/templates/Italian-packing_list.tex b/sql-ledger/templates/Italian-packing_list.tex
deleted file mode 100644
index 2140c24..0000000
--- a/sql-ledger/templates/Italian-packing_list.tex
+++ /dev/null
@@ -1,114 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tel & <%tel%>\\
- Fac & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Numero} & \textbf{Descrizione} & \textbf{Quantita'} &
- \textbf{Unita'} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{L I S T A} \parbox{0.3cm}{\hfill} \textbf{E T I C H E T T E}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%invdate%> \\
- \textbf{Numero} & <%invnumber%> \\
- \textbf{Cliente} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Codice} & \textbf{Descrizione} & \textbf{Quantita'} &
- \textbf{Unita'} & \textbf{Bin} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-pick_list.html b/sql-ledger/templates/Italian-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Italian-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Italian-pick_list.tex b/sql-ledger/templates/Italian-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Italian-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-pos_invoice.txt b/sql-ledger/templates/Italian-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Italian-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Italian-purchase_order.html b/sql-ledger/templates/Italian-purchase_order.html
deleted file mode 100644
index 27a982a..0000000
--- a/sql-ledger/templates/Italian-purchase_order.html
+++ /dev/null
@@ -1,232 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefono: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>ORDINE DI ACQUISTO</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data ordine</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Consegna</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordine numero</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>Ordinare a:</th>
- <th align=left width=50%><font color=ffffff>Recapito:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
-
-<br>
-<%if contact%>
-<br>All'attenzione di: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Telefono: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-<br>
-<%if shiptocontact%>
-<br>All'attenzione di: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Telefono: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Codice</th>
- <th align=left><font color=ffffff>Descrizione</th>
- <th><font color=ffffff>Quantit&agrave;</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prezzo</th>
- <th><font color=ffffff>Totale riga</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Totale righe</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%>: <%taxrate%>% su <%taxbase%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2><!--Termine di pagamento: <b><%terms%></b> giorni--></td>
- <th colspan=2 align=right>Totale ordine</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Note</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Tutti i prezzi sono espressi in valuta <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><!--<font size=-3>
- Payment due NET <%terms%> Days from date of Invoice.
- Interest on overdue amounts will acrue at the rate of 1.5% per month
- from due date until paid in full. Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.-->
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-purchase_order.tex b/sql-ledger/templates/Italian-purchase_order.tex
deleted file mode 100644
index db8f451..0000000
--- a/sql-ledger/templates/Italian-purchase_order.tex
+++ /dev/null
@@ -1,206 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{18cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotale} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Numero} & \textbf{Descrizione} & \textbf{Quantita'} &
- \textbf{Unita'} & \textbf{Prezzo} & \textbf{Subtotale} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-\textbf{Ordinare a:}
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-Attn: <%contact%>
-\vspace{0.3cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Spedire la merce a:}
-\vspace{0.3cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{ORDINE DI ACQUISTO}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Consegna} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordine numero} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Codice} & \textbf{Descrizione} & \textbf{Quantit\`a} &
- \textbf{Unit\`a} & \textbf{Prezzo} & \textbf{Totale riga} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Totale righe} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%>: <%taxrate%>\% su <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Totale ordine} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tutti i prezzi sono espressi in valuta \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Italian-receipt.tex b/sql-ledger/templates/Italian-receipt.tex
deleted file mode 100644
index 3baf6d7a..0000000
--- a/sql-ledger/templates/Italian-receipt.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Fattura Numero} & \textbf{Data}
- & \textbf{Dovuto} & \textbf{Applicato} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Italian-request_quotation.html b/sql-ledger/templates/Italian-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Italian-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-request_quotation.tex b/sql-ledger/templates/Italian-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Italian-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-sales_order.html b/sql-ledger/templates/Italian-sales_order.html
deleted file mode 100644
index af79e81..0000000
--- a/sql-ledger/templates/Italian-sales_order.html
+++ /dev/null
@@ -1,207 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>ORDINE DI VENDITA</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Data ordine</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Consegna</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordine numero</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Ordinato da:</th>
- <th align=left><font color=ffffff>Recapito:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Numero</th>
- <th align=left><font color=ffffff>Descrizione</th>
- <th><font color=ffffff>Quantit&agrave;</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Prezzo</th>
- <th><font color=ffffff>Totale riga</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Totale righe</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%>: <%taxrate%>% su <%taxbase%></th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3><!--Termine: <b><%terms%></b> giorni.--></td>
- <th colspan=2 align=right>Totale</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>L'IVA &egrave; inclusa nel Totale</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Note</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Tutti i prezzi sono espressi in valuta <b><%currency%></b>.
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><!--<font size=-3>
- Verr&agrave; applicato un 10% di commissione sulla cancellazione dell'ordine
- per ogni modifica a richiesta del cliente.
- </font>-->
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-sales_order.tex b/sql-ledger/templates/Italian-sales_order.tex
deleted file mode 100644
index 3c0c4d8..0000000
--- a/sql-ledger/templates/Italian-sales_order.tex
+++ /dev/null
@@ -1,150 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{18cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefono & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Codice} & \textbf{Descrzione} & \textbf{Quantit\`a} &
- \textbf{Unit\`a} & \textbf{Prezzo} & \textbf{Sconto} & \textbf{Totale riga} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{ORDINE DI VENDITA}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Data ordine} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Consegna} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordine numero} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Codice} & \textbf{Descrizione} & \textbf{Qt\`a} &
- \textbf{Un.} & \textbf{Prezzo} & \textbf{Sconto} & \textbf{Tot. riga} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totale righe} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%>: <%taxrate%>\% su <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Totale ordine} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Tutti i prezzi sono in valuta \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-%
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-%
-%\footnotetext[1]{\tiny
-%A 10\% order cancellation fee will be applied for any special order products or
-%products that have been customized, enhanced or upgraded at customers request.
-%Items which are non-returnable are indicated above.
-%}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-sales_quotation.html b/sql-ledger/templates/Italian-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Italian-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-sales_quotation.tex b/sql-ledger/templates/Italian-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Italian-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Italian-statement.html b/sql-ledger/templates/Italian-statement.html
deleted file mode 100644
index d3e1b32..0000000
--- a/sql-ledger/templates/Italian-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>E S T R A T T O &nbsp;&nbsp;&nbsp;&nbsp; C O N T O</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Fattura Numero</th>
- <th width=15%>Data</th>
- <th width=15%>Dovuto</th>
- <th width=10%>Corrente</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Totale Dovuto</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Per favore intestare gli assegni a: <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Italian-statement.tex b/sql-ledger/templates/Italian-statement.tex
deleted file mode 100644
index bb4834c..0000000
--- a/sql-ledger/templates/Italian-statement.tex
+++ /dev/null
@@ -1,141 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotale} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%statementdate%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Fattura Numero} & \textbf{Data} & \textbf{Dovuto} &
- \textbf{Scaduto} & \textbf{30} & \textbf{60} & \textbf{90+} \\
- carried forward from <%lastpage%> & & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{E S T R A T T O} \parbox{0.3cm}{\hfill} \textbf{C O N T O} \hfill
-
-\hfill <%statementdate%>
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Fattura Numero} & \textbf{Data} & \textbf{Dovuto} &
- \textbf{Corrente} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotale} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{1cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totale Dovuto} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Per favore intestare gli assegni a: <%company%>
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Italian-work_order.html b/sql-ledger/templates/Italian-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Italian-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Italian-work_order.tex b/sql-ledger/templates/Italian-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Italian-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Norwegian-ap_transaction.html b/sql-ledger/templates/Norwegian-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Norwegian-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-ap_transaction.tex b/sql-ledger/templates/Norwegian-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Norwegian-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-ar_transaction.html b/sql-ledger/templates/Norwegian-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Norwegian-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-ar_transaction.tex b/sql-ledger/templates/Norwegian-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Norwegian-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-balance_sheet.html b/sql-ledger/templates/Norwegian-balance_sheet.html
deleted file mode 100644
index 2047432..0000000
--- a/sql-ledger/templates/Norwegian-balance_sheet.html
+++ /dev/null
@@ -1,100 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>B A L A N S E
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>AKTIVA<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTALE AKTIVA</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASSIVA<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total gjeld</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>EGENKAPITAL<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total egenkapital</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL GJELD OG EGENKAPITAL</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/Norwegian-bin_list.html b/sql-ledger/templates/Norwegian-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Norwegian-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Norwegian-bin_list.tex b/sql-ledger/templates/Norwegian-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Norwegian-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-check.tex b/sql-ledger/templates/Norwegian-check.tex
deleted file mode 100644
index 75699ba..0000000
--- a/sql-ledger/templates/Norwegian-check.tex
+++ /dev/null
@@ -1,81 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Faktura nr.} & \textbf{Faktura dato}
- & \textbf{Skyldig} & \textbf{Betalt} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
-
-
diff --git a/sql-ledger/templates/Norwegian-income_statement.html b/sql-ledger/templates/Norwegian-income_statement.html
deleted file mode 100644
index 945d19a..0000000
--- a/sql-ledger/templates/Norwegian-income_statement.html
+++ /dev/null
@@ -1,78 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>D R I F T S R E G N S K A P
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2><br></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<tr>
- <th align=left colspan=2>INNTEKTER<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale inntekter</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>UTGIFTER<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>Totale utgifter</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>RESULTAT</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Norwegian-invoice.html b/sql-ledger/templates/Norwegian-invoice.html
deleted file mode 100644
index 8ac7143..0000000
--- a/sql-ledger/templates/Norwegian-invoice.html
+++ /dev/null
@@ -1,226 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>F A K T U R A</h4>
- </th>
- </tr>
-
- </table>
-
-<!-- other variables you can use include
-tel, fax, signature, username, businessnumber -->
-
- <table width=100% cellspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
-
- <tr>
- <th align=right>Fakturanr.:</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <th align=right>Fakturadato:</th><td width=10> </td><td><%invdate%></td>
- </tr>
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Fakturaadresse:</th>
- <%if shiptoname%>
- <th align=left><font color=ffffff>Leveringsadresse:</th>
- <%end shiptoname%>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- <%if shiptoname%>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- <%end shiptoname%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antall</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Rabatt</th>
- <th><font color=ffffff>Sum</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
-<!--
-you can also use netprice instead of sellprice if you
-don't want to show the discount
-netprice = sellprice - discount
-to show the percentage for a discount use <%discountrate%>
--->
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th colspan=5 align=right>Allerede betalt</th>
- <td colspan=2 align=right>- <%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td colspan=3> </td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalingsfrist <b><%terms%></b> dager</td>
- <th colspan=2 align=right>Å betale</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Merk</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle priser i <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td> </td></tr>
-
-<tr>
- <th colspan=7>
-<!-- 20030814/Marius Kjeldahl: Commented out check statement as checks
-are dead in Norway AFAIK -->
-
-<!-- Utsted vennligst sjekk til <%company%> på norsk bank -->
- <br>
- </th>
-</tr>
-
-
-<tr><td> </td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Betaling innen <%terms%> dager fra fakturadato.
- Etterskuddsrenter beregnes med 1% per påbegynt måned.
-
- </font>
- </td>
-
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
-<tr>
- <th colspan=7 align=left><font size=-2><%taxdescription%> Organisasjonsnr.: <%taxnumber%></th>
-</tr>
-<%end tax%>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-invoice.tex b/sql-ledger/templates/Norwegian-invoice.tex
deleted file mode 100644
index 05c75c6..0000000
--- a/sql-ledger/templates/Norwegian-invoice.tex
+++ /dev/null
@@ -1,237 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefaks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Rabatt} & \textbf{Sum} \\
- & carried forward from page <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
- \parbox[t]{10.5cm}{
- \textbf{Til}
- \vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-%<%if contact%>
-%Attn: <%contact%>
-%\vspace{0.3cm}
-%<%end contact%>
-\vspace{0.5cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Faks: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Leveringsadresse}
-\vspace{0.5cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel.: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Faks: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{F A K T U R A}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%invdate%> \\
- \textbf{Fakturanr.} & <%invnumber%> \\
- \textbf{Ordrenr.} & <%ordnumber%> \\
- \textbf{Kontakt} & <%employee%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Rabatt} & \textbf{Sum} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%> \\
-<%end tax%>
-<%if paid%>
- \textbf{Betalt} & - <%paid%> \\
-<%end paid%>
- \hline
- \textbf{Skyldig} & \textbf{<%total%>} \\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i \textbf{<%currency%>} valuta.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-<%if paid%>
-\begin{tabularx}{10cm}{@{}lXlr@{}}
- \textbf{Innbetalinger} & & & \\
- \hline
- \textbf{Dato} & \textbf{Konto} & \textbf{Kilde} & \textbf{Sum} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabularx}
-<%end paid%>
-
-\vspace{1cm}
-
-\centerline{\textbf{Takk for handelen!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Betalingen må betales innen <%terms%> dager fra fakturadato. Ved
-forsinket betaling belastes en månedlig rente på 1.5\% per måned,
-fra <%duedate%> inntil betalingen er fullstendig. Varer som returneres
-belastes med 10\% returgebyr. Retur må forhåndsgodkjennes fra
-<%company%> før varene returneres. Retur må sendes forhåndsbetalt og
-må være forsikret. <%company%> er ikke ansvarlig for transportskader.
-}
-
-\end{document}
diff --git a/sql-ledger/templates/Norwegian-packing_list.html b/sql-ledger/templates/Norwegian-packing_list.html
deleted file mode 100644
index 6f9be8e..0000000
--- a/sql-ledger/templates/Norwegian-packing_list.html
+++ /dev/null
@@ -1,142 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>F Ø L G E S E D D E L</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Dato</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Nummer</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Leveringsadresse:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Antall</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Note</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
-
-Retur skal sendes forskuddsbetalt og være forsvarlig pakket.
-<%company%> er ikke være ansvarlig for skader under
-transport.
-
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-
-
diff --git a/sql-ledger/templates/Norwegian-packing_list.tex b/sql-ledger/templates/Norwegian-packing_list.tex
deleted file mode 100644
index 4444b8f..0000000
--- a/sql-ledger/templates/Norwegian-packing_list.tex
+++ /dev/null
@@ -1,123 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefaks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{F Ø L G E} \parbox{0.3cm}{\hfill} \textbf{S E D D E L}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%invdate%> \\
- \textbf{Fakturanr.} & <%invnumber%> \\
- \textbf{Kundeid.} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rll@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Kurv} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Takk for handelen!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Varer som returneres
-belastes med 10\% returgebyr. Retur må forhåndsgodkjennes fra
-<%company%> før varene returneres. Retur må sendes forhåndsbetalt og
-må være forsikret. <%company%> er ikke ansvarlig for transportskader.
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-pick_list.html b/sql-ledger/templates/Norwegian-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Norwegian-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Norwegian-pick_list.tex b/sql-ledger/templates/Norwegian-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Norwegian-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-pos_invoice.txt b/sql-ledger/templates/Norwegian-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Norwegian-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Norwegian-purchase_order.html b/sql-ledger/templates/Norwegian-purchase_order.html
deleted file mode 100644
index 3991f55..0000000
--- a/sql-ledger/templates/Norwegian-purchase_order.html
+++ /dev/null
@@ -1,201 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon: <%tel%>
- <br>Telefaks: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>I N N K J Ø P S &nbsp;&nbsp; O R D R E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Ordre dato</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Leveres innen</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordrenr.</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Ant.</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Sum</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Betalingsfirst <b><%terms%></b> dager</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Note</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle priser i valuta <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
-
-Betaling skal skje innen <%terms%> dager fra
-fakturadato. Forsinkelsesrente påregnes med 1.5% per måned fra
-fakturadato inntil det fulle beløpet er betalt.
-
-Ved retur belastes 10% returgebyr. Retur av varer må
-forhåndsgodkjennes av <%company%> før varer sendes. Vareretur må
-sendes forhåndsbetalt og med tilstrekkelig forsikring. <%company%> er
-ikke ansvarlig for transportskader.
-
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-purchase_order.tex b/sql-ledger/templates/Norwegian-purchase_order.tex
deleted file mode 100644
index 8b18210..0000000
--- a/sql-ledger/templates/Norwegian-purchase_order.tex
+++ /dev/null
@@ -1,206 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefaks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Sum} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-\textbf{Til}
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-Attn: <%contact%>
-\vspace{0.3cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{7.5cm}{
-\textbf{Send til}
-\vspace{0.3cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-Attn: <%shiptocontact%>
-\vspace{0.3cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{I N N K J Ø P S} \parbox{0.3cm}{\hfill} \textbf{O R D R E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Dato} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Levers innen} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordrenr.} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Sum} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i valuta \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Norwegian-receipt.tex b/sql-ledger/templates/Norwegian-receipt.tex
deleted file mode 100644
index 1914cec..0000000
--- a/sql-ledger/templates/Norwegian-receipt.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{1.8cm}
-
-<%notes%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Fakturanr.} & \textbf{Fakturadato}
- & \textbf{Skyldig} & \textbf{Betalt} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Norwegian-request_quotation.html b/sql-ledger/templates/Norwegian-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Norwegian-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-request_quotation.tex b/sql-ledger/templates/Norwegian-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Norwegian-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-sales_order.html b/sql-ledger/templates/Norwegian-sales_order.html
deleted file mode 100644
index 9a6e831..0000000
--- a/sql-ledger/templates/Norwegian-sales_order.html
+++ /dev/null
@@ -1,220 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telefon: <%tel%>
- <br>Telefaks: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>S A L G S &nbsp;&nbsp; O R D R E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Ordre dato</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Leveringsdato</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Ordrenr.</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- <th align=left><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
-<br><%shiptoaddress2%>
-<%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Nummer</th>
- <th align=left><font color=ffffff>Beskrivelse</th>
- <th><font color=ffffff>Ant.</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Pris</th>
- <th><font color=ffffff>Rabatt</th>
- <th><font color=ffffff>Sum</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discount%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=5 align=right>Total</th>
- <td colspan=2 align=right><%ordtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=5 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=5 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=5><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=3>Betalingsfrist <b><%terms%></b> dager</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-<%if taxincluded%>
- <tr>
- <td colspan=3>Mva er inkludert i Total</td>
- </tr>
-<%end taxincluded%>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Note</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- Alle priser i valuta <b><%currency%></b>
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
-Ved spesialtilpassede ordre (påkrevd av kunden), skreddersydde produkter, utvidede eller
-oppgraderte produkter belastes et 10% avbestillingsgebyr. Varer som
-ikke kan returneres er merket over.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-sales_order.tex b/sql-ledger/templates/Norwegian-sales_order.tex
deleted file mode 100644
index 10916f5..0000000
--- a/sql-ledger/templates/Norwegian-sales_order.tex
+++ /dev/null
@@ -1,150 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telefon & <%tel%>\\
- Telefaks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Rabatt} & \textbf{Sum} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{S A L G S} \parbox{0.3cm}{\hfill} \textbf{O R D R E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Ordre dato} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Leveres innen} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Ordrenr.} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Nummer} & \textbf{Beskrivelse} & \textbf{Ant.} &
- \textbf{Enhet} & \textbf{Pris} & \textbf{Rabatt} & \textbf{Sum} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discount%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- Alle priser i valuta \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Ved spesialtilpassede ordre (påkrevd av kunden), skreddersydde produkter, utvidede eller
-oppgraderte produkter belastes et 10\% avbestillingsgebyr. Varer som
-ikke kan returneres er merket over.
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-sales_quotation.html b/sql-ledger/templates/Norwegian-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Norwegian-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-sales_quotation.tex b/sql-ledger/templates/Norwegian-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Norwegian-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Norwegian-statement.html b/sql-ledger/templates/Norwegian-statement.html
deleted file mode 100644
index 97ba64e..0000000
--- a/sql-ledger/templates/Norwegian-statement.html
+++ /dev/null
@@ -1,120 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Telefon: <%tel%>
- <br>Telefaks: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>O V E R S I K T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Telefon: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Telefaks: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Faktura #</th>
- <th width=15%>Dato</th>
- <th width=15%>Betalingsfrist</th>
- <th width=10%>Nåværende</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Totalt utestående</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Norwegian-statement.tex b/sql-ledger/templates/Norwegian-statement.tex
deleted file mode 100644
index 6975c1b..0000000
--- a/sql-ledger/templates/Norwegian-statement.tex
+++ /dev/null
@@ -1,139 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel. & <%tel%>\\
- Faks & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%statementdate%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
- carried forward from <%lastpage%> & & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{O V E R S I K T} \hfill
-
-\hfill <%statementdate%>
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Faktura \#} & \textbf{Dato} & \textbf{Frist} &
- \textbf{Skyldig} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{1cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Totalt skyldig} & <%total%>
-\end{tabularx}
-
-\vfill
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Norwegian-work_order.html b/sql-ledger/templates/Norwegian-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Norwegian-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Norwegian-work_order.tex b/sql-ledger/templates/Norwegian-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Norwegian-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Service-ap_transaction.html b/sql-ledger/templates/Service-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Service-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-ap_transaction.tex b/sql-ledger/templates/Service-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Service-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-ar_transaction.html b/sql-ledger/templates/Service-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Service-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-ar_transaction.tex b/sql-ledger/templates/Service-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Service-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-balance_sheet.html b/sql-ledger/templates/Service-balance_sheet.html
deleted file mode 100644
index c84ad95..0000000
--- a/sql-ledger/templates/Service-balance_sheet.html
+++ /dev/null
@@ -1,110 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BALANCE SHEET
-<br>as at <%this_period%>
-</h2>
-
-<%if department%>
-<h4>Department: <%department%></h4>
-<%end department%>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ASSETS<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td> </td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL ASSETS</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>LIABILITIES<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL LIABILITIES</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>SHAREHOLDER'S EQUITY<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>TOTAL EQUITY</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>TOTAL LIABILITIES & EQUITY</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
-
-
-
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Service-bin_list.html b/sql-ledger/templates/Service-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Service-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Service-bin_list.tex b/sql-ledger/templates/Service-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Service-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-check.tex b/sql-ledger/templates/Service-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Service-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-income_statement.html b/sql-ledger/templates/Service-income_statement.html
deleted file mode 100644
index eab9ff0..0000000
--- a/sql-ledger/templates/Service-income_statement.html
+++ /dev/null
@@ -1,81 +0,0 @@
-
-<body>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>INCOME STATEMENT
-<br><%period%>
-</h2>
-
-<%if department%>
-<h4>Department: <%department%></h4>
-<%end department%>
-
-<%if projectnumber%>
-<h4>Project Number: <%projectnumber%></h4>
-<%end projectnumber%>
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INCOME<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4> </td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAL INCOME</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>EXPENSES<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td> </td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td> </td>
- <th align=left>TOTAL EXPENSES</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>INCOME / (LOSS)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Service-invoice.html b/sql-ledger/templates/Service-invoice.html
deleted file mode 100644
index 193dd1f..0000000
--- a/sql-ledger/templates/Service-invoice.html
+++ /dev/null
@@ -1,230 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- <br>Tel/Fax <%tel%> / <%fax%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>I N V O I C E</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
-<!-- prepared by: <%username%>
--->
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Description</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%description%></td>
- <td>&nbsp;</td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=3><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <td>&nbsp;</td>
- <th align=right>Total</th>
- <td align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <td>&nbsp;</td>
- <th align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%></th>
- <td align=right><%tax%></td>
- </tr>
-<%end tax%>
-
-<!--
- <%taxbase%> = total netamount for each tax bracket
- <%taxrate%> = taxrate in percent
--->
-
-<%if paid%>
- <tr>
- <td>&nbsp;</td>
- <th align=right>Paid</th>
- <td align=right><%paid%></td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td colspan=2><hr noshade></td>
- </tr>
-
- <tr>
- <td>
-<%if terms%>
-Terms &nbsp;Net <b><%terms%></b> days
-<%end terms%>
-</td>
- <th align=right>Total</th>
- <th align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<%if notes%>
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td>Notes</td>
- <td><pre><%notes%></pre></td>
- <td align=right>
- &nbsp;
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-<%end notes%>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <th colspan=3>
- Please make check payable to <%company%>
- <br>Thank you for your valued business!
- </th>
-</tr>
-
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Payment due NET <%terms%> Days from date of Invoice.
- Interest on overdue amounts will acrue at the rate of 1.5% per month
- from due date until paid in full.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=3 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
-<%end tax%>
-
-<!--
- %username% = user name
- %businessnumber% = business number
--->
-
-<!-- banking information
- <tr>
- <th colspan=3 align=left><font size=-2>Banking Information:
- <br>Bank
- <br>Transit No.
- <br>Account No.
- </th>
- </tr>
--->
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-invoice.tex b/sql-ledger/templates/Service-invoice.tex
deleted file mode 100644
index b4baba8..0000000
--- a/sql-ledger/templates/Service-invoice.tex
+++ /dev/null
@@ -1,155 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{I N V O I C E}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%invdate%> \\
- \textbf{Number} & <%invnumber%> \\
- \textbf{Customer} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
-<%foreach number%>
- <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%> \\
-<%end tax%>
-<%if paid%>
- \textbf{Paid} & - <%paid%> \\
-<%end paid%>
- \hline
- \textbf{Balance Owing} & \textbf{<%total%>} \\
-
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-\centerline{\textbf{Thank You for your valued business!}}
-
-\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\footnotetext[1]{\tiny
-Payment due NET <%terms%> Days from date of Invoice. Interest on overdue
-amounts will acrue at the rate of 1.5\% per month starting <%duedate%>
-until paid in full.
-}
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Service-packing_list.html b/sql-ledger/templates/Service-packing_list.html
deleted file mode 100644
index 07ba8d6..0000000
--- a/sql-ledger/templates/Service-packing_list.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr>
- <td width=10>
- </td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th colspan=2>
- <h4 align=center>P A C K I N G &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Date</th><td width=10> </td><td><%invdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td></td><td><%invnumber%></td></tr>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr>
- <td><%shiptoname%>
- <br><%shiptoaddr1%>
- <br><%shiptoaddr2%>
- <br><%shiptoaddr3%>
- <br><%shiptoaddr4%>
-<%if shiptocontact%>
- <p>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>
- </td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=4><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- <%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-packing_list.tex b/sql-ledger/templates/Service-packing_list.tex
deleted file mode 100644
index f7e158a..0000000
--- a/sql-ledger/templates/Service-packing_list.tex
+++ /dev/null
@@ -1,120 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%invnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
-\newpage
-
-\markright{<%company%>\hfill <%invnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rl@{}}
- \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%shiptoname%>
-
-<%shiptoaddr1%>
-
-<%shiptoaddr2%>
-
-<%shiptoaddr3%>
-
-<%shiptoaddr4%>
-
-\vspace{3.5cm}
-
-\textbf{P A C K I N G} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%invdate%> \\
- \textbf{Number} & <%invnumber%> \\
- \textbf{Customer} & <%customer_id%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rl@{}}
- \textbf{Description} & \textbf{Qt'y} & \textbf{Unit} \\
-<%foreach number%>
- <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-%\vfill
-%\centerline{\textbf{Thank You for your valued business!}}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny
-%Items returned are subject to a 10\% restocking charge.
-%A return authorization must be obtained from <%company%> before goods are
-%returned. Returns must be shipped prepaid and properly insured.
-%<%company%> will not be responsible for damages during transit.}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-pick_list.html b/sql-ledger/templates/Service-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Service-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Service-pick_list.tex b/sql-ledger/templates/Service-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Service-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-pos_invoice.txt b/sql-ledger/templates/Service-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Service-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Service-purchase_order.html b/sql-ledger/templates/Service-purchase_order.html
deleted file mode 100644
index de5fd80..0000000
--- a/sql-ledger/templates/Service-purchase_order.html
+++ /dev/null
@@ -1,198 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telephone: <%tel%>
- <br>Facsimile: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P U R C H A S E &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Order Date</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Required by</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Terms Net <b><%terms%></b> days</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%ordtotal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Payment due NET <%terms%> Days from date of Invoice.
- Interest on overdue amounts will acrue at the rate of 1.5% per month
- from due date until paid in full. Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-purchase_order.tex b/sql-ledger/templates/Service-purchase_order.tex
deleted file mode 100644
index 5195c20..0000000
--- a/sql-ledger/templates/Service-purchase_order.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{P U R C H A S E} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Required by} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Number} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Service-receipt.tex b/sql-ledger/templates/Service-receipt.tex
deleted file mode 100644
index 7f25a21..0000000
--- a/sql-ledger/templates/Service-receipt.tex
+++ /dev/null
@@ -1,78 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{1.8cm}
-
-<%memo%>
-
-\vspace{0.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vspace{1cm}
-
-<%memo%>
-
-\vfill
-
-\end{document}
diff --git a/sql-ledger/templates/Service-request_quotation.html b/sql-ledger/templates/Service-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Service-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-request_quotation.tex b/sql-ledger/templates/Service-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Service-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-sales_order.html b/sql-ledger/templates/Service-sales_order.html
deleted file mode 100644
index 8150db1..0000000
--- a/sql-ledger/templates/Service-sales_order.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td align=right>
- <h4>
- Telelephone: <%tel%>
- <br>Facsimile: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>S A L E S &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td align=right>
- <table>
- <tr>
- <th align=right>Order Date</th><td width=10>&nbsp;</td><td><%orddate%></td>
- </tr>
-
- <tr>
- <th align=right>Required by</th><td width=10>&nbsp;</td><td><%reqdate%></td>
- </tr>
-
- <tr>
- <th align=right>Number</th><td>&nbsp;</td><td><%ordnumber%></td></tr>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
- </td>
- </table>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>To:</th>
- </tr>
-
- <tr>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
-<%if contact%>
- <p>Attn: <%contact%>
-%end contact%>
-
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
-<!-- <th align=right><font color=ffffff>No.</th> -->
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- <tr>
- <th colspan=4 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=4 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=2>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=2>Terms Net <b><%terms%></b> days</td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%total%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><pre><%notes%></pre></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- <br><%shippingpoint%>
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><font size=-3>
- Payment due NET <%terms%> Days from date of Invoice.
- Interest on overdue amounts will acrue at the rate of 1.5% per month
- from due date until paid in full. Items returned are subject to
- a 10% restocking charge. A return authorization must be obtained
- from <%company%> before goods are returned. Returns must be shipped
- prepaid and properly insured. <%company%> will not be responsible
- for damages during transit.
- </font>
- </td>
- <td width=150>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-sales_order.tex b/sql-ledger/templates/Service-sales_order.tex
deleted file mode 100644
index aadfffa..0000000
--- a/sql-ledger/templates/Service-sales_order.tex
+++ /dev/null
@@ -1,146 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%ordnumber%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markright{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{2cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{3.5cm}
-
-\textbf{S A L E S} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-\begin{tabular}[t]{l@{\hspace{0.3cm}}l}
- \textbf{Date} & <%orddate%> \\
-<%if reqdate%>
- \textbf{Required by} & <%reqdate%> \\
-<%end reqdate%>
- \textbf{Number} & <%ordnumber%>
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}p{\descrwidth}@{\extracolsep\fill}rlrr@{}}
- \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Amount} \\
-<%foreach number%>
- <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>}\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>} funds.
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-%\footnotetext[1]{\tiny }
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-sales_quotation.html b/sql-ledger/templates/Service-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Service-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-sales_quotation.tex b/sql-ledger/templates/Service-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Service-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Service-statement.html b/sql-ledger/templates/Service-statement.html
deleted file mode 100644
index 5e28850..0000000
--- a/sql-ledger/templates/Service-statement.html
+++ /dev/null
@@ -1,130 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th align=left>Order #</th>
-<!-- <th align=left>Notes</th> -->
- <th width=10%>Date</th>
- <th width=10%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
- <%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%ordnumber%></td>
-<!-- <td><%notes%></td> -->
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
- <%end invnumber%>
- <tr>
- <td colspan=8><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Service-statement.tex b/sql-ledger/templates/Service-statement.tex
deleted file mode 100644
index c927c5d..0000000
--- a/sql-ledger/templates/Service-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}ll@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%ordnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Service-work_order.html b/sql-ledger/templates/Service-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Service-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Service-work_order.tex b/sql-ledger/templates/Service-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Service-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Spanish_A4-ap_transaction.html b/sql-ledger/templates/Spanish_A4-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Spanish_A4-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-ap_transaction.tex b/sql-ledger/templates/Spanish_A4-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Spanish_A4-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-ar_transaction.html b/sql-ledger/templates/Spanish_A4-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Spanish_A4-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-ar_transaction.tex b/sql-ledger/templates/Spanish_A4-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Spanish_A4-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-balance_sheet.html b/sql-ledger/templates/Spanish_A4-balance_sheet.html
deleted file mode 100644
index aef74d0..0000000
--- a/sql-ledger/templates/Spanish_A4-balance_sheet.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<head>
- <title>Hoja de Balance</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>HOJA DE BALANCE
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ACTIVOS<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td>&nbsp;</td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Total de activos</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASIVOS<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total de pasivos</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>CAPITAL<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Capital total</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Total de pasivos y capital</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
diff --git a/sql-ledger/templates/Spanish_A4-bin_list.html b/sql-ledger/templates/Spanish_A4-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Spanish_A4-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Spanish_A4-bin_list.tex b/sql-ledger/templates/Spanish_A4-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Spanish_A4-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-check.tex b/sql-ledger/templates/Spanish_A4-check.tex
deleted file mode 100644
index 4e7cfc6..0000000
--- a/sql-ledger/templates/Spanish_A4-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-income_statement.html b/sql-ledger/templates/Spanish_A4-income_statement.html
deleted file mode 100644
index fbb5653..0000000
--- a/sql-ledger/templates/Spanish_A4-income_statement.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<head>
- <title>Balance de Situación</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BALANCE DE SITUACIÓN
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INGRESOS<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4>&nbsp;</td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2>&nbsp;</td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td>&nbsp;</td>
- <th align=left>Total de ingresos</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>GASTOS<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td>&nbsp;</td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2>&nbsp;</td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td>&nbsp;</td>
- <th align=left>Total de gastos</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>GANANCIA/(PERDIDA)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Spanish_A4-invoice.html b/sql-ledger/templates/Spanish_A4-invoice.html
deleted file mode 100644
index f551574..0000000
--- a/sql-ledger/templates/Spanish_A4-invoice.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Factura de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>F A C T U R A</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%invnumber%></b></td>
- <td><b><%invdate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%invtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-invoice.tex b/sql-ledger/templates/Spanish_A4-invoice.tex
deleted file mode 100644
index 24b55bf..0000000
--- a/sql-ledger/templates/Spanish_A4-invoice.tex
+++ /dev/null
@@ -1,108 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%invnumber%>} & \centering{<%invdate%>} & \centering{<%customer_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{F A C T U R A}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%invtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-packing_list.html b/sql-ledger/templates/Spanish_A4-packing_list.html
deleted file mode 100644
index 82cba4f..0000000
--- a/sql-ledger/templates/Spanish_A4-packing_list.html
+++ /dev/null
@@ -1,155 +0,0 @@
-<head>
- <title>Albarán de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="5"> </th>
- <th align="left">
- <h4>A L B A R Á N</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="6"> </td>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Factura</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%invnumber%></b></td>
- <td><b><%invdate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="5">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="5">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%invtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-packing_list.tex b/sql-ledger/templates/Spanish_A4-packing_list.tex
deleted file mode 100644
index 979e14a..0000000
--- a/sql-ledger/templates/Spanish_A4-packing_list.tex
+++ /dev/null
@@ -1,108 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Número} & \centering{Fecha} & C. Cliente\\
- \centering{<%ordnumber%>} & \centering{<%invnumber%>} & \centering{<%invdate%>} & \centering{<%customer_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{A L B A R Á N}
-\vspace{1cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-\vspace{0.5cm}
-
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%invtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-pick_list.html b/sql-ledger/templates/Spanish_A4-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Spanish_A4-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Spanish_A4-pick_list.tex b/sql-ledger/templates/Spanish_A4-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Spanish_A4-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-pos_invoice.txt b/sql-ledger/templates/Spanish_A4-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Spanish_A4-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Spanish_A4-purchase_order.html b/sql-ledger/templates/Spanish_A4-purchase_order.html
deleted file mode 100644
index 493fd37..0000000
--- a/sql-ledger/templates/Spanish_A4-purchase_order.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Pedido de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>P E D I D O</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Proveedor</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%orddate%></b></td>
- <td><b><%vendor_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align="right">Total</th>
- <td align="right"><%ordtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%ordtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-purchase_order.tex b/sql-ledger/templates/Spanish_A4-purchase_order.tex
deleted file mode 100644
index df9ade1..0000000
--- a/sql-ledger/templates/Spanish_A4-purchase_order.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%ordnumber%>} & \centering{<%orddate%>} & \centering{<%vendor_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{P E D I D O}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \EUR \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \EUR\\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>} \EUR\\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-receipt.tex b/sql-ledger/templates/Spanish_A4-receipt.tex
deleted file mode 100644
index 4e7cfc6..0000000
--- a/sql-ledger/templates/Spanish_A4-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-request_quotation.html b/sql-ledger/templates/Spanish_A4-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Spanish_A4-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-request_quotation.tex b/sql-ledger/templates/Spanish_A4-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Spanish_A4-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-sales_order.html b/sql-ledger/templates/Spanish_A4-sales_order.html
deleted file mode 100644
index a3cdfc7..0000000
--- a/sql-ledger/templates/Spanish_A4-sales_order.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Presupuesto de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>P R E S U P U E S T O</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%orddate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%ordtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%ordtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-sales_order.tex b/sql-ledger/templates/Spanish_A4-sales_order.tex
deleted file mode 100644
index 2ce9007..0000000
--- a/sql-ledger/templates/Spanish_A4-sales_order.tex
+++ /dev/null
@@ -1,107 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%ordnumber%>} & \centering{<%orddate%>} & \centering{<%vendor_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{P E D I D O}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-sales_quotation.html b/sql-ledger/templates/Spanish_A4-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Spanish_A4-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-sales_quotation.tex b/sql-ledger/templates/Spanish_A4-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Spanish_A4-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Spanish_A4-statement.html b/sql-ledger/templates/Spanish_A4-statement.html
deleted file mode 100644
index a5efdf0..0000000
--- a/sql-ledger/templates/Spanish_A4-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th width=15%>Date</th>
- <th width=15%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Spanish_A4-statement.tex b/sql-ledger/templates/Spanish_A4-statement.tex
deleted file mode 100644
index e33c23c..0000000
--- a/sql-ledger/templates/Spanish_A4-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[a4paper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_A4-work_order.html b/sql-ledger/templates/Spanish_A4-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Spanish_A4-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_A4-work_order.tex b/sql-ledger/templates/Spanish_A4-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Spanish_A4-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/templates/Spanish_Letter-ap_transaction.html b/sql-ledger/templates/Spanish_Letter-ap_transaction.html
deleted file mode 100644
index c7bae85..0000000
--- a/sql-ledger/templates/Spanish_Letter-ap_transaction.html
+++ /dev/null
@@ -1,229 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A P - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Employee</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-ap_transaction.tex b/sql-ledger/templates/Spanish_Letter-ap_transaction.tex
deleted file mode 100644
index 8bfd9f7..0000000
--- a/sql-ledger/templates/Spanish_Letter-ap_transaction.tex
+++ /dev/null
@@ -1,125 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A P} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-ar_transaction.html b/sql-ledger/templates/Spanish_Letter-ar_transaction.html
deleted file mode 100644
index dbd0a1c..0000000
--- a/sql-ledger/templates/Spanish_Letter-ar_transaction.html
+++ /dev/null
@@ -1,237 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <hr noshade><br>
- <h4>A R - T R A N S A C T I O N</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br><%contact%>
- <br>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td align=right>
- <table>
- <tr>
- <th align=left nowrap>Invoice #</th>
- <td><%invnumber%></td>
- </tr>
- <tr>
- <th align=left nowrap>Date</th>
- <td><%invdate%></td>
- </tr>
- <tr>
- <th align=left nowrap>Due</th>
- <td><%duedate%></td>
- </tr>
- <tr>
- <th align=left>Order #</th>
- <td><%ordnumber%>&nbsp;</td>
- </tr>
- <tr>
- <th align=left nowrap>Salesperson</th>
- <td><%employee%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=50%>
- <table>
- <%foreach account%>
- <tr valign=top>
- <td><%accno%></td>
- <td><%account%></td>
- <td align=right><%amount%></td>
- <td><%projectnumber%></td>
- </tr>
- <%end account%>
-
- <tr>
- <%if taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Subtotal</th>
- <td align=right><%subtotal%></td>
- <%end taxincluded%>
- </tr>
-
- <%foreach tax%>
- <tr>
- <th colspan=2 align=right><%taxdescription%> @ <%taxrate%> %</th>
- <td align=right><%tax%></td>
- </tr>
- <%end tax%>
-
- <%if not taxincluded%>
- <th colspan=2 align=right>Total</th>
- <td align=right><%invtotal%></td>
- <%end taxincluded%>
-
- </table>
- </td>
- <td width=50%>
- <%notes%>
- </td>
- </tr>
- </table>
- </td>
- <tr>
- <td>&nbsp;</td>
-
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <%text_amount%> ***** <%decimal%>/100 <%currency%>
- </td>
- </tr>
-
- <%if paid%>
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table>
- <tr>
- <th>Payments</th>
- </tr>
-
- <tr>
- <td>
- <hr noshade>
- </td>
- </tr>
-
- <tr>
- <td>
- <table>
- <tr>
- <th align=left>Date</th>
- <th align=left>Account</th>
- <th align=left>Source</th>
- <th align=left>Memo</th>
- <th align=left>Amount</th>
- </tr>
- <%end paid%>
-
- <%foreach payment%>
- <tr>
- <td><%paymentdate%></td>
- <td><%paymentaccount%></td>
- <td><%paymentsource%></td>
- <td><%paymentmemo%></td>
- <td><%payment%></td>
- </tr>
- <%end payment%>
-
- <%if paid%>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <%end paid%>
-
- <tr height=10></tr>
-
- <%foreach tax%>
- <tr>
- <td>&nbsp;</td>
-
- <th colspan=9 align=left><font size=-2><%taxdescription%> Registration <%taxnumber%></th>
- </tr>
- <%end tax%>
-
- <%if taxincluded%>
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <th colspan=3 align=left><font size=-2>Taxes shown are included in price.</th>
- </tr>
- <%end taxincluded%>
-
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-ar_transaction.tex b/sql-ledger/templates/Spanish_Letter-ar_transaction.tex
deleted file mode 100644
index 654d2b9..0000000
--- a/sql-ledger/templates/Spanish_Letter-ar_transaction.tex
+++ /dev/null
@@ -1,131 +0,0 @@
-\documentclass[10pt,letterpaper,oneside,onecolumn]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-\centerline{\textbf{A R} \hspace{0.3cm} \textbf{T R A N S A C T I O N}}
-
-\vspace*{0.5cm}
-
-\parbox[t]{.5\textwidth}{
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-<%end contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-\begin{tabular}[t]{ll}
- \textbf{Invoice \#} & <%invnumber%> \\
- \textbf{Date} & <%invdate%> \\
- \textbf{Due} & <%duedate%> \\
- \textbf{Order \#} & <%ordnumber%> \\
- \textbf{Employee} & <%employee%> \\
-\end{tabular}
-
-\vspace{1cm}
-
-\begin{tabularx}{.5\textwidth}[t]{@{}llrl@{}}
-<%foreach amount%>
- <%accno%> & <%account%> & <%amount%> & <%projectnumber%> \\
-<%end amount%>
-
- \multicolumn{2}{r}{\textbf{Subtotal}} & <%subtotal%> & \\
-<%foreach tax%>
- \multicolumn{2}{r}{\textbf{<%taxdescription%> @ <%taxrate%> \%}} & <%tax%> & \\
-<%end tax%>
-
- \multicolumn{2}{r}{\textbf{Total}} & <%invtotal%> & \\
-
-\end{tabularx}
-<%notes%>
-
-\vspace{0.3cm}
-
-<%text_amount%> ***** <%decimal%>/100 <%currency%>
-
-\vspace{0.3cm}
-
-<%if paid%>
-\begin{tabular}{@{}llllr@{}}
- \multicolumn{5}{c}{\textbf{Payments}} \\
- \hline
- \textbf{Date} & & \textbf{Source} & \textbf{Memo} & \textbf{Amount} \\
-<%end paid%>
-<%foreach payment%>
- <%paymentdate%> & <%paymentaccount%> & <%paymentsource%> & <%paymentmemo%> & <%payment%> \\
-<%end payment%>
-<%if paid%>
-\end{tabular}
-<%end paid%>
-
-\vspace{0.5cm}
-
-<%foreach tax%>
-\textbf{\small{<%taxdescription%> Registration <%taxnumber%>}} \\
-<%end tax%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-balance_sheet.html b/sql-ledger/templates/Spanish_Letter-balance_sheet.html
deleted file mode 100644
index aef74d0..0000000
--- a/sql-ledger/templates/Spanish_Letter-balance_sheet.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<head>
- <title>Hoja de Balance</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>HOJA DE BALANCE
-<br><%period%>
-</h2>
-
-<table border=0>
-<tr>
- <th align=left width=400 colspan=2>ACTIVOS<br><hr align=left width=250 size=5 noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach asset_account%>
-<tr>
- <td>&nbsp;</td>
- <td><%asset_account%></td>
- <td align=right><%asset_this_period%></td>
- <td align=right><%asset_last_period%></td>
-</tr>
-<%end asset_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Total de activos</th>
- <td align=right><%total_assets_this_period%><hr noshade size=2></td>
- <td align=right><%total_assets_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=4>PASIVOS<b><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach liability_account%>
-<tr>
- <td></td>
- <td><%liability_account%></td>
- <td align=right><%liability_this_period%></td>
- <td align=right><%liability_last_period%></td>
-</tr>
-<%end liability_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Total de pasivos</th>
- <td align=right><%total_liabilities_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_liabilities_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr>
- <th align=left colspan=4>CAPITAL<br><hr align=left width=250 size=5 noshade></th>
-</tr>
-
-<%foreach equity_account%>
-<tr>
- <td></td>
- <td><%equity_account%></td>
- <td align=right><%equity_this_period%></td>
- <td align=right><%equity_last_period%></td>
-</tr>
-<%end equity_account%>
-
-<tr>
- <td colspan=2> </td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td></td>
- <th align=left>Capital total</th>
- <td align=right><%total_equity_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_equity_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>Total de pasivos y capital</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-</table>
diff --git a/sql-ledger/templates/Spanish_Letter-bin_list.html b/sql-ledger/templates/Spanish_Letter-bin_list.html
deleted file mode 100644
index c945421..0000000
--- a/sql-ledger/templates/Spanish_Letter-bin_list.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <th align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>B I N &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% cellspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>From</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
-
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if vendorphone%>
- <br>Tel: <%vendorphone%>
- <%end vendorphone%>
-
- <%if vendorfax%>
- <br>Fax: <%vendorfax%>
- <%end vendorfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
-
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-
- <br>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order #</th>
- <th width=17% align=left nowrap>Date</th>
- <th width=17% align=left nowrap>Contact</th>
- <%if warehouse%>
- <th width=17% align=left nowrap>Warehouse</th>
- <%end warehouse%>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%>&nbsp;</td>
-
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%orddate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
-
- <%if warehouse%>
- <td><%warehouse%></td>
- <%end warehouse%>
-
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Serialnumber</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Recd</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%></td>
- <td><%number%></td>
- <td><%description%></td>
- <td><%serialnumber%></td>
- <td><%deliverydate%></td>
- <td align=right><%qty%></td>
- <td align=right><%ship%></td>
- <td><%unit%></td>
- <td><%bin%></td>
- </tr>
- <%end number%>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Spanish_Letter-bin_list.tex b/sql-ledger/templates/Spanish_Letter-bin_list.tex
deleted file mode 100644
index 034fd72..0000000
--- a/sql-ledger/templates/Spanish_Letter-bin_list.tex
+++ /dev/null
@@ -1,147 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-\textbf{From}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%if %address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country4%>
-<%end country%>
-}
-\parbox[t]{.4\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%if shiptoaddress2%>
-<%shiptoaddress2%>
-<%end shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%if shiptocountry%>
-<%shiptocountry%>
-<%end shiptocountry%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{B I N} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- <%if warehouse%>
- & \textbf{Warehouse}
- <%end warehouse%>
- & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
-
- <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%orddate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXllrrll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} & \textbf{Serial Number} & & \textbf{Qty} & \textbf{Recd} & & \textbf{Bin} \\
-
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%serialnumber%> &
- <%deliverydate%> & <%qty%> & <%ship%> & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\rule{\textwidth}{2pt}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-check.tex b/sql-ledger/templates/Spanish_Letter-check.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Spanish_Letter-check.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-income_statement.html b/sql-ledger/templates/Spanish_Letter-income_statement.html
deleted file mode 100644
index fbb5653..0000000
--- a/sql-ledger/templates/Spanish_Letter-income_statement.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<head>
- <title>Balance de Situación</title>
-</head>
-
-<body bgcolor=ffffff>
-
-<h2 align=center>
-<%company%>
-<br><%address%>
-
-<p>BALANCE DE SITUACIÓN
-<br><%period%>
-</h2>
-
-
-<table width=100% border=0>
-<tr>
- <th width=400 align=left colspan=2>INGRESOS<br><hr width=300 size=5 align=left noshade></th>
- <th><%this_period%></th>
- <th><%last_period%></th>
-</tr>
-
-<%foreach income_account%>
-<tr>
- <td width=4>&nbsp;</td>
- <td><%income_account%></td>
- <td align=right><%income_this_period%></td>
- <td align=right><%income_last_period%></td>
-</tr>
-<%end income_account%>
-
-<tr>
- <td colspan=2>&nbsp;</td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td>&nbsp;</td>
- <th align=left>Total de ingresos</th>
- <td align=right><%total_income_this_period%><hr noshade size=2></td>
- <td align=right><%total_income_last_period%><hr noshade size=2></td>
-</tr>
-
-<tr>
- <th align=left colspan=2>GASTOS<br><hr width=300 size=5 align=left noshade></th>
-</tr>
-
-<%foreach expense_account%>
-<tr>
- <td>&nbsp;</td>
- <td><%expense_account%></td>
- <td align=right><%expenses_this_period%></td>
- <td align=right><%expenses_last_period%></td>
-</tr>
-<%end expense_account%>
-
-<tr>
- <td colspan=2>&nbsp;</td>
- <td><hr noshade size=1></td>
- <td><hr noshade size=1></td>
-</tr>
-
-<tr valign=top>
- <td>&nbsp;</td>
- <th align=left>Total de gastos</th>
- <td align=right><%total_expenses_this_period%><br><hr noshade size=2</td>
- <td align=right><%total_expenses_last_period%><br><hr noshade size=2</td>
-</tr>
-
-<tr valign=top>
- <th align=left colspan=2>GANANCIA/(PERDIDA)</th>
- <td align=right><%total_this_period%><br><hr noshade size=2></td>
- <td align=right><%total_last_period%><br><hr noshade size=2></td>
-</tr>
-
-</table>
diff --git a/sql-ledger/templates/Spanish_Letter-invoice.html b/sql-ledger/templates/Spanish_Letter-invoice.html
deleted file mode 100644
index f551574..0000000
--- a/sql-ledger/templates/Spanish_Letter-invoice.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Factura de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>F A C T U R A</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%invnumber%></b></td>
- <td><b><%invdate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%invtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-invoice.tex b/sql-ledger/templates/Spanish_Letter-invoice.tex
deleted file mode 100644
index 3051cb7..0000000
--- a/sql-ledger/templates/Spanish_Letter-invoice.tex
+++ /dev/null
@@ -1,110 +0,0 @@
-% ve-invoice.tex
-\documentclass[letterpaper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-%\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-%Or whatever font you want!
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%invnumber%>} & \centering{<%invdate%>} & \centering{<%customer_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{F A C T U R A}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%invtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-packing_list.html b/sql-ledger/templates/Spanish_Letter-packing_list.html
deleted file mode 100644
index 82cba4f..0000000
--- a/sql-ledger/templates/Spanish_Letter-packing_list.html
+++ /dev/null
@@ -1,155 +0,0 @@
-<head>
- <title>Albarán de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="5"> </th>
- <th align="left">
- <h4>A L B A R Á N</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="6"> </td>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Factura</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%invnumber%></b></td>
- <td><b><%invdate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="5">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="5">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%invtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%invtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-packing_list.tex b/sql-ledger/templates/Spanish_Letter-packing_list.tex
deleted file mode 100644
index f87b4e4..0000000
--- a/sql-ledger/templates/Spanish_Letter-packing_list.tex
+++ /dev/null
@@ -1,108 +0,0 @@
-\documentclass[letterpaper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-%\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Número} & \centering{Fecha} & C. Cliente\\
- \centering{<%ordnumber%>} & \centering{<%invnumber%>} & \centering{<%invdate%>} & \centering{<%customer_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{A L B A R Á N}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-\vspace{0.5cm}
-
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%invtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-pick_list.html b/sql-ledger/templates/Spanish_Letter-pick_list.html
deleted file mode 100644
index 7548560..0000000
--- a/sql-ledger/templates/Spanish_Letter-pick_list.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>P I C K &nbsp;&nbsp; L I S T</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th width=50% align=left><font color=ffffff>Ship To:</th>
- <th width=50%>&nbsp;</th>
- </tr>
-
- <tr valign=top>
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- </td>
-
- <td>
- <%if shiptocontact%>
- <br>Attn: <%shiptocontact%>
- <%end shiptocontact%>
-
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=15% align=left>Invoice #</th>
- <th width=15% align=left>Order #</th>
- <th width=10% align=left>Date</th>
- <th width=15% align=left nowrap>Contact</th>
- <th width=15% align=left>Warehouse</th>
- <th width=10% align=left>Shipping Point</th>
- <th width=10% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%invnumber%>&nbsp;</td>
- <td><%ordnumber%>&nbsp;</td>
- <%if shippingdate%>
- <td><%shippingdate%></td>
- <%end shippingdate%>
-
- <%if not shippingdate%>
- <td><%transdate%></td>
- <%end shippingdate%>
-
- <td><%employee%>&nbsp;</td>
- <td><%warehouse%>&nbsp;</td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left><font color=ffffff>Pos</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qty</th>
- <th><font color=ffffff>Ship</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Bin</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td><%runningnumber%>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td align=right>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</td>
- <td><%unit%></td>
- <td align=right><%bin%></td>
- </tr>
- <%end number%>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td><hr noshade></td>
- </tr>
-
-</table>
-
diff --git a/sql-ledger/templates/Spanish_Letter-pick_list.tex b/sql-ledger/templates/Spanish_Letter-pick_list.tex
deleted file mode 100644
index c737f6a..0000000
--- a/sql-ledger/templates/Spanish_Letter-pick_list.tex
+++ /dev/null
@@ -1,144 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 37%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
- \textbf{Ship To}
-} \hfill
-
-\vspace{0.7cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.5\textwidth}{
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-}
-\parbox[t]{.4\textwidth}{
- <%shiptocontact%>
-
- <%if shiptophone%>
- Tel: <%shiptophone%>
- <%end shiptophone%>
-
- <%if shiptofax%>
- Fax: <%shiptofax%>
- <%end shiptofax%>
-
- <%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{P I C K} \parbox{0.3cm}{\hfill} \textbf{L I S T}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{7}{|X}|} \hline
- \textbf{Invoice \#} & \textbf{Order \#} & \textbf{Date} & \textbf{Contact}
- & \textbf{Warehouse} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5em]
- \hline
- <%invnumber%> & <%ordnumber%>
- <%if shippingdate%>
- & <%shippingdate%>
- <%end shippingdate%>
- <%if not shippingdate%>
- & <%transdate%>
- <%end shippingdate%>
- & <%employee%>
- <%if warehouse%>
- & <%warehouse%>
- <%end warehouse%>
- & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrcll@{}}
- \textbf{Pos} & \textbf{Number} & \textbf{Description} &
- \textbf{Qty} & \textbf{Ship} & & \textbf{Bin} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> &
- <%qty%> & [\hspace{1cm}] & <%unit%> & <%bin%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-pos_invoice.txt b/sql-ledger/templates/Spanish_Letter-pos_invoice.txt
deleted file mode 100644
index 9ec12f4..0000000
--- a/sql-ledger/templates/Spanish_Letter-pos_invoice.txt
+++ /dev/null
@@ -1,51 +0,0 @@
-<%company align=center width=40%>
-<%address align=center width=40%>
-
- Till: <%till align=left width=3%> Phone#: <%tel%>
-Clerk: <%username%>
-Sales: <%employee%>
-
-<%invtime%><%invnumber align=right width=16%>
-
- Qty Description Amount
-<%foreach number%>
-<%qty align=right width=5%> <%description align=left width=24 offset=6%> <%linetotal align=right width=9%>
- <%number%> @ <%sellprice%>/<%unit%>
-<%end number%>
-
-Number of items: <%rowcount%>
-<%if taxincluded%>
- ---------------
- Amount Due: <%invtotal align=right width=9%>
-<%end taxincluded%>
-<%if not taxincluded%>
- ------------
- Subtotal: <%subtotal align=right width=9%>
-<%end taxincluded%>
-<%foreach tax%>
-<%taxdescription align=right width=23%> @ <%taxrate align=right width=2%>%: <%tax align=right width=9%>
-<%end tax%>
- Amount Due: <%invtotal align=right width=9%>
-<%foreach payment%>
-<%paymentaccount align=right width=29%>: <%payment align=right width=9%> <%currency%>
-<%end payment%>
-<%if change%>
- Change: <%change align=right width=9%>
-<%end change%>
-<%if total%>
- Balance Due: <%total align=right width=9%>
-<%end total%>
-<%if discount%>
-
-<%discount%> % Discount applied
-<%end discount%>
-
- Thank you for your valued business!
-
-<%if taxincluded%>
-Taxes are included in price.
-<%end taxincluded%>
-
-
-
-
diff --git a/sql-ledger/templates/Spanish_Letter-purchase_order.html b/sql-ledger/templates/Spanish_Letter-purchase_order.html
deleted file mode 100644
index 493fd37..0000000
--- a/sql-ledger/templates/Spanish_Letter-purchase_order.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Pedido de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>P E D I D O</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Proveedor</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%orddate%></b></td>
- <td><b><%vendor_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align="right">Total</th>
- <td align="right"><%ordtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%ordtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-purchase_order.tex b/sql-ledger/templates/Spanish_Letter-purchase_order.tex
deleted file mode 100644
index dee8990..0000000
--- a/sql-ledger/templates/Spanish_Letter-purchase_order.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[letterpaper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-%\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%ordnumber%>} & \centering{<%orddate%>} & \centering{<%vendor_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{O R D E N \quad D E \quad C O M P R A}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-receipt.tex b/sql-ledger/templates/Spanish_Letter-receipt.tex
deleted file mode 100644
index 6742b5b..0000000
--- a/sql-ledger/templates/Spanish_Letter-receipt.tex
+++ /dev/null
@@ -1,75 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.4cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.0cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-
-\fontfamily{cmss}\fontsize{9pt}{9pt}\selectfont
-
-\parbox[t]{12cm}{
- <%company%>
-
- <%address%>}
-\hfill
-\parbox[t]{6cm}{\hfill <%source%>}
-
-\vspace*{0.6cm}
-
-<%text_amount%> \dotfill <%decimal%>/100 \makebox[0.5cm]{\hfill}
-
-\vspace{0.5cm}
-
-\hfill <%datepaid%> \makebox[2cm]{\hfill} <%amount%>
-
-\vspace{0.5cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-\vspace{2.8cm}
-
-<%company%>
-
-\vspace{0.5cm}
-
-<%name%> \hfill <%datepaid%> \hfill <%source%>
-
-\vspace{0.5cm}
-\begin{tabularx}{\textwidth}{lXrr@{}}
-\textbf{Invoice No.} & \textbf{Invoice Date}
- & \textbf{Due} & \textbf{Applied} \\
-<%foreach invnumber%>
-<%invnumber%> & <%invdate%> \dotfill
- & <%due%> & <%paid%> \\
-<%end invnumber%>
-\end{tabularx}
-
-\vfill
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-request_quotation.html b/sql-ledger/templates/Spanish_Letter-request_quotation.html
deleted file mode 100644
index a9a6f4f..0000000
--- a/sql-ledger/templates/Spanish_Letter-request_quotation.html
+++ /dev/null
@@ -1,202 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <td><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58>
- </td>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>R E Q U E S T &nbsp;&nbsp; F O R &nbsp;&nbsp; Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To:</th>
- <th align=left width=50%><font color=ffffff>Ship To:</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-<br>
-<%if contact%>
-<br>Attn: <%contact%>
-<%end contact%>
-<%if vendorphone%>
-<br>Tel: <%vendorphone%>
-<%end vendorphone%>
-<%if vendorfax%>
-<br>Fax: <%vendorfax%>
-<%end vendorfax%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddr2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%> <%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
-<br>
-<%if shiptocontact%>
-<br>Attn: <%shiptocontact%>
-<%end shiptocontact%>
-<%if shiptophone%>
-<br>Tel: <%shiptophone%>
-<%end shiptophone%>
-<%if shiptofax%>
-<br>Fax: <%shiptofax%>
-<%end shiptofax%>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left>RFQ #</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left>Contact</th>
- <th width=17% align=left>Shipping Point</th>
- <th width=15% align=left>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>Please provide price and delivery time for the following items:</td>
- </tr>
-
- <tr height="10"></tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr>
-<!-- <th align=right>No.</th> -->
- <th align=left>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th>Qt'y</th>
- <th>&nbsp;</th>
- <th>Delivery</th>
- <th>Unit Price</th>
- <th>Extended</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
-<!-- <td align=right><%runningnumber%>.</td>
-other per line item variables available <%reqdate%>
-adjust the colspan if you include this to shift subtotal one to the right
--->
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
-
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=7><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
-<%if notes%>
- <tr valign=top>
- <td>Notes</td>
- <td><%notes%></td>
- </tr>
-<%end notes%>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=70%>&nbsp;</td>
-
- <td width=30%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-request_quotation.tex b/sql-ledger/templates/Spanish_Letter-request_quotation.tex
deleted file mode 100644
index 4e9cfe0..0000000
--- a/sql-ledger/templates/Spanish_Letter-request_quotation.tex
+++ /dev/null
@@ -1,175 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}lXrlrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Extended} \\
- & carried forward from <%lastpage%> & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if vendorphone%>
-Tel: <%vendorphone%>
-<%end vendorphone%>
-
-<%if vendorfax%>
-Fax: <%vendorfax%>
-<%end vendorfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{R E Q U E S T for Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{RFQ \#} & \textbf{Date} & \textbf{Required by} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-Please provide price and delivery time for the following items:
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}lXrllrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} & &
- \textbf{Delivery} & \textbf{Unit Price} & \textbf{Extended} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> & <%unit%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\hfill
-
-<%notes%>
-
-}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-sales_order.html b/sql-ledger/templates/Spanish_Letter-sales_order.html
deleted file mode 100644
index a3cdfc7..0000000
--- a/sql-ledger/templates/Spanish_Letter-sales_order.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<head>
- <title>Presupuesto de Instalaciones Industriales San José</title>
-</head>
-
-<body bgcolor="ffffff">
- <!-- Cabecera -->
- <table width="100%">
- <tr valign=bottom>
- <td width="10">&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th colspan="4"> </th>
- <th align="left">
- <h4>P R E S U P U E S T O</h4>
- </th>
- </tr>
-
- <tr>
- <td colspan="5"> </td>
- </tr>
-
- <tr>
- <td colspan="4"> </td>
- <td align="left"><%name%></td>
- </tr>
-
- <tr>
- <td>Número</td>
- <td>Fecha</td>
- <td>Cód. Cliente</td>
- <td width="10%"> </td>
- <td><%address1%></td>
- </tr>
- <tr>
- <td><b><%ordnumber%></b></td>
- <td><b><%orddate%></b></td>
- <td><b><%customer_id%></b></td>
- <td> </td>
- <td><%addr2%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%city%> <%state%> <%zipcode%></td>
- </tr>
- <tr>
- <td colspan="4">
- <td><%addr4%></td>
- </tr>
- </table>
- </table>
-
- <!-- Cuerpo -->
- <table width=100% cellspacing=0 cellpadding=0>
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <!-- <th align=left><font color=ffffff>Número</th> -->
- <!-- <th><font color=ffffff>Cant.</th> -->
- <th align="left"><font color="ffffff">Cant.</th>
- <th align="left"><font color="ffffff">Descripción</th>
- <th align="left"><font color="ffffff">Precio</th>
- <!-- <th align="left"><font color="ffffff">Dto.</th> -->
- <th align="left"><font color="ffffff">Importe</th>
- </tr>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <!-- <td><%number%></td> -->
- <!-- <td><%unit%></td> -->
- <td align="right"><%qty%></td>
- <td align="left"><%description%></td>
- <td align="right"><%sellprice%></td>
- <!-- <td align=right><%discount%></td> -->
- <td align="right"><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan="4"><hr noshade></td>
- </tr>
- </table>
-
- <!-- Subtotales, impuestos y totales -->
- <table width="100%">
- <tr>
-<%if taxincluded%>
- <th align=right>Total</th>
- <td align=right><%ordtotal%></td>
-<%end taxincluded%>
-<%if not taxincluded%>
- <th align="right">Base imponible</th>
- <td align="right"><%subtotal%> &euro;</td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th align="right">IVA (<%taxrate%>%) sobre <%taxbase%>:</th>
- <td align="right"><%tax%> &euro;</td>
- </tr>
-<%end tax%>
-
-<%if paid%>
- <tr>
- <th align="right">Pagado:</th>
- <td align="right"><%paid%> &euro;</td>
- </tr>
-<%end paid%>
-
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
-
- <tr>
- <th align="right">Total:</th>
- <th align="right"><%ordtotal%> &euro;</th>
- </tr>
-
- <tr>
- <td colspan="4">&nbsp;</td>
- </tr>
-
- </table>
-
-
- <!-- Pie -->
- <table width="100%">
- <tr valign=top>
-<%if notes%>
- <td>Notas</td>
- <td><%notes%></td>
-<%end notes%>
- </tr>
-
-<%if taxincluded%>
- <tr>
- <th colspan="2" align="left"><font size=-2>Los precios incluyen impuestos.</th>
- </tr>
-<%end taxincluded%>
-
- </table>
-
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-sales_order.tex b/sql-ledger/templates/Spanish_Letter-sales_order.tex
deleted file mode 100644
index eb242fc..0000000
--- a/sql-ledger/templates/Spanish_Letter-sales_order.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[letterpaper,oneside]{article}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-%\usepackage{marvosym} % Euro \EUR
-\usepackage{fancyhdr}
-\setlength{\topmargin}{0cm}
-\setlength{\topskip}{0cm}
-\setlength{\headheight}{0cm}
-\setlength{\headsep}{0.5cm}
-\setlength{\textheight}{24.2cm}
-\setlength{\textwidth}{19cm}
-\setlength{\oddsidemargin}{-1.4cm}
-\setlength{\evensidemargin}{-1.4cm}
-\setlength{\footskip}{1cm}
-
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{13.0cm}
-
-\newsavebox{\hdr}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\sbox{\hdr}{
-\begin{minipage}[t]{0.6\linewidth}
-\vspace{2.2cm}
-
-\begin{tabular}[t]{p{1.7cm}p{2.4cm}p{1.7cm}}\\
-\centering{Número} & \centering{Fecha} & C. Cliente\\
-\centering{<%ordnumber%>} & \centering{<%orddate%>} & \centering{<%vendor_id%>}
-\end{tabular}
-\end{minipage}
-
-\begin{minipage}[t]{0.4\linewidth}
-\textbf{P E D I D O}
-\vspace{1cm}
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-\end{minipage}
-
-}
-
-\pagestyle{fancy}
-\renewcommand{\headrulewidth}{0cm}
-\renewcommand{\footrulewidth}{0cm}
-\cfoot{\thepage}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-%\thispagestyle{empty} %use this with letterhead paper
-
-<%pagebreak 90 27 37%>
-\end{tabular*}
-\newpage
-\usebox{\hdr}
-%\markboth{\usebox{\hdr}}{\usebox{\hdr}}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%end pagebreak%>
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\usebox{\hdr}
-\vspace{0.5cm}
-
-\begin{tabular*}{\textwidth}{rp{\descrwidth}rr}
- \textbf{Cant.} & \textbf{Descripción} & \textbf{Precio} & \textbf{Importe} \\ \hline
-<%foreach number%>
- <%qty%> & <%description%> & <%sellprice%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-\parbox{\textwidth}{
-\vspace{12pt}
-<%if notes%>
- <%notes%>
-<%end if%>
-}
-
-\vfill
-
-\begin{flushright}
-\begin{tabularx}{10cm}{Xr@{}}
- \textbf{Base imponible} & \textbf{<%subtotal%>} \\
-<%foreach tax%>
- IVA (<%taxrate%>\%) sobre <%taxbase%> & <%tax%> \\
-<%end tax%>
- \hline
- \textbf{Total} & \textbf{<%ordtotal%>} \\
-\end{tabularx}
-\end{flushright}
-
-%\renewcommand{\thefootnote}{\fnsymbol{footnote}}
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-sales_quotation.html b/sql-ledger/templates/Spanish_Letter-sales_quotation.html
deleted file mode 100644
index cc57a5c..0000000
--- a/sql-ledger/templates/Spanish_Letter-sales_quotation.html
+++ /dev/null
@@ -1,225 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
-<tr valign=bottom>
- <td width=10>&nbsp;</td>
- <td>
-
- <table width=100%>
- <tr valign=top>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
-<tr><td colspan=3>&nbsp;</td></tr>
-
- <tr>
- <th colspan=3>
- <h4>Q U O T A T I O N</h4>
- </th>
- </tr>
-
- </table>
-
- <table width=100% callspacing=0 cellpadding=0>
-
- <tr>
- <td>
- <table width=100%>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
-
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
-
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
-
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
-
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- </tr>
- </table>
- </td>
- </tr>
-
- <tr><td>&nbsp;</td></tr>
-
- <tr>
- <td colspan=2>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Number</th>
- <th width=17% align=left>Date</th>
- <th width=17% align=left>Valid until</th>
- <th width=17% align=left nowrap>Contact</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship via</th>
- </tr>
-
- <tr>
- <td><%quonumber%></td>
- <td><%quodate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- <tr>
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Price</th>
- <th><font color=ffffff>Disc %</th>
- <th><font color=ffffff>Amount</th>
- </tr>
-
-<%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%></td>
-
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td align=right><%sellprice%></td>
- <td align=right><%discountrate%></td>
- <td align=right><%linetotal%></td>
- </tr>
-<%end number%>
-
- <tr>
- <td colspan=8><hr noshade></td>
- </tr>
-
- <tr>
-<%if taxincluded%>
- <th colspan=6 align=right>Total</th>
- <td colspan=2 align=right><%invtotal%></td>
-<%end taxincluded%>
-
-<%if not taxincluded%>
- <th colspan=6 align=right>Subtotal</th>
- <td colspan=2 align=right><%subtotal%></td>
-<%end taxincluded%>
- </tr>
-
-<%foreach tax%>
- <tr>
- <th colspan=6 align=right><%taxdescription%> on <%taxbase%> @ <%taxrate%> %</th>
- <td colspan=2 align=right><%tax%></td>
- </tr>
-<%end tax%>
-
- <tr>
- <td colspan=4>&nbsp;</td>
- <td colspan=4><hr noshade></td>
- </tr>
-
- <tr>
- <td colspan=4>&nbsp;
-<%if terms%>
- Terms Net <b><%terms%></b> days
-<%end terms%>
- </td>
- <th colspan=2 align=right>Total</th>
- <th colspan=2 align=right><%quototal%></th>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
- </tr>
-
- </table>
- </td>
- </tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
-<%if notes%>
- <td>Notes</td>
- <td><%notes%></td>
-<%end notes%>
- <td align=right>
- All prices in <b><%currency%></b> Funds
- </td>
- </tr>
-
- </table>
- </td>
-</tr>
-
-<tr><td>&nbsp;</td></tr>
-
-<tr>
- <td>
- <table width=100%>
- <tr valign=top>
- <td width=60%><font size=-3>
- Special order items are subject to a 10% cancellation fee.
- </font>
- </td>
- <td width=40%>
- X <hr noshade>
- </td>
- </tr>
- </table>
- </td>
-</tr>
-
-</table>
-
-</td>
-</tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-sales_quotation.tex b/sql-ledger/templates/Spanish_Letter-sales_quotation.tex
deleted file mode 100644
index acc4870..0000000
--- a/sql-ledger/templates/Spanish_Letter-sales_quotation.tex
+++ /dev/null
@@ -1,157 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{
- \parbox[b]{.42\textwidth}{
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabular*}
-
- \rule{\textwidth}{2pt}
-
- \hfill
- \begin{tabularx}{7cm}{Xr@{}}
- \textbf{Subtotal} & \textbf{<%sumcarriedforward%>} \\
- \end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%quonumber%>}{<%company%>\hfill <%quonumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
- & carried forward from <%lastpage%> & & & & & <%sumcarriedforward%> \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%contact%>
-
-\vspace{0.2cm}
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-
-\vspace{1cm}
-
-\textbf{Q U O T A T I O N}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Quotation \#} & \textbf{Date} & \textbf{Valid until} & \textbf{Contact} & \textbf{Shipping Point} & \textbf{Ship via} \\ [0.5ex]
- \hline
- <%quonumber%> & <%quodate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabular*}{\textwidth}{@{}lp{\descrwidth}@{\extracolsep\fill}rlrrr@{}}
- \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- \textbf{Unit} & \textbf{Price} & \textbf{Disc \%} & \textbf{Amount} \\
-<%foreach number%>
- <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%sellprice%> & <%discountrate%> & <%linetotal%> \\
-<%end number%>
-\end{tabular*}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{0.2cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- Subtotal & <%subtotal%> \\
-<%foreach tax%>
- <%taxdescription%> on <%taxbase%> & <%tax%>\\
-<%end tax%>
- \hline
- Total & <%quototal%>\\
-\end{tabularx}
-
-\vspace{0.3cm}
-
-\hfill
- All prices in \textbf{<%currency%>}.
-
-\vspace{12pt}
-
-<%notes%>
-
-}
-
-\vfill
-
-\end{document}
-
-
diff --git a/sql-ledger/templates/Spanish_Letter-statement.html b/sql-ledger/templates/Spanish_Letter-statement.html
deleted file mode 100644
index a5efdf0..0000000
--- a/sql-ledger/templates/Spanish_Letter-statement.html
+++ /dev/null
@@ -1,125 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
- <tr>
- <th colspan=3><h4>S T A T E M E N T</h4></th>
- </tr>
- <tr>
- <td colspan=3 align=right><%statementdate%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
-<br><%address2%>
-<%end address2%>
- <br><%city%> <%state%> <%zipcode%>
- <%if country%>
-<%country%>
-<%end country%>
- <br>
-<%if customerphone%>
- <br>Tel: <%customerphone%>
-<%end customerphone%>
-<%if customerfax%>
- <br>Fax: <%customerfax%>
-<%end customerfax%>
-<%if email%>
- <br><%email%>
-<%end email%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td>
- <table width=100%>
- <tr>
- <th align=left>Invoice #</th>
- <th width=15%>Date</th>
- <th width=15%>Due</th>
- <th width=10%>Current</th>
- <th width=10%>30</th>
- <th width=10%>60</th>
- <th width=10%>90+</th>
- </tr>
-<%foreach invnumber%>
- <tr>
- <td><%invnumber%></td>
- <td><%invdate%></td>
- <td><%duedate%></td>
- <td align=right><%c0%></td>
- <td align=right><%c30%></td>
- <td align=right><%c60%></td>
- <td align=right><%c90%></td>
- </tr>
-<%end invnumber%>
- <tr>
- <td colspan=7><hr size=1></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <td>&nbsp;</td>
- <th align=right><%c0total%></td>
- <th align=right><%c30total%></td>
- <th align=right><%c60total%></td>
- <th align=right><%c90total%></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr height=10></tr>
- <tr>
- <td>&nbsp;</td>
- <td align=right>
- <table width=50%>
- <tr>
- <th>Total Outstanding</th>
- <th align=right><%total%></th>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td><hr noshade></td>
- </tr>
- <tr>
- <td>&nbsp;</td>
- <td>Please make check payable to <b><%company%></b>.
- </td>
- </tr>
- <tr height=20></tr>
-</table>
-
diff --git a/sql-ledger/templates/Spanish_Letter-statement.tex b/sql-ledger/templates/Spanish_Letter-statement.tex
deleted file mode 100644
index fdc7339..0000000
--- a/sql-ledger/templates/Spanish_Letter-statement.tex
+++ /dev/null
@@ -1,111 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage[latin1]{inputenc}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-2.0cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.5cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-
-\newsavebox{\hdr}
-\sbox{\hdr}{
- \fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
- \parbox{\textwidth}{
- \parbox[b]{12cm}{
- <%company%>
-
- <%address%>}\hfill
- \begin{tabular}[b]{rrr@{}}
- Tel & <%tel%>\\
- Fax & <%fax%>
- \end{tabular}
-
- \rule[1.5ex]{\textwidth}{0.5pt}
- }
-}
-
-\fontfamily{cmss}\fontshape{n}\selectfont
-
-\markboth{<%company%>\hfill <%statementdate%>}{\usebox{\hdr}}
-
-\pagestyle{myheadings}
-%\thispagestyle{empty} use this with letterhead paper
-
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\vspace*{1.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{10.5cm}{
-
-<%name%>
-
-<%address1%>
-
-<%if address2%>
-<%address2%>
-<%end address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%if country%>
-<%country%>
-<%end country%>
-
-}
-\parbox[t]{7.5cm}{
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{S T A T E M E N T} \hfill \textbf{<%statementdate%>}
-
-\vspace{2cm}
-
-\begin{tabular*}{\textwidth}{@{}l@{\extracolsep\fill}ccrrrr@{}}
- \textbf{Invoice \#} & \textbf{Date} & \textbf{Due} &
- \textbf{Current} & \textbf{30} & \textbf{60} & \textbf{90+} \\
-<%foreach invnumber%>
- <%invnumber%> & <%invdate%> & <%duedate%> &
- <%c0%> & <%c30%> & <%c60%> & <%c90%> \\
-<%end invnumber%>
-\textbf{Subtotal} & & & <%c0total%> & <%c30total%> & <%c60total%> & <%c90total%>
-\end{tabular*}
-\rule{\textwidth}{1pt}
-
-\vspace{0.5cm}
-
-\hfill
-\begin{tabularx}{7cm}{Xr@{}}
- \textbf{Total outstanding} & <%total%>
-\end{tabularx}
-
-\vfill
-
-Please make check payable to <%company%>
-
-\end{document}
-
diff --git a/sql-ledger/templates/Spanish_Letter-work_order.html b/sql-ledger/templates/Spanish_Letter-work_order.html
deleted file mode 100644
index 0732fe2..0000000
--- a/sql-ledger/templates/Spanish_Letter-work_order.html
+++ /dev/null
@@ -1,174 +0,0 @@
-
-<body bgcolor=ffffff>
-
-<table width=100%>
- <tr>
- <td width=10>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr valign=bottom>
- <td>
- <h4>
- <%company%>
- <br><%address%>
- </h4>
- </td>
-
- <th><img src=http://www.sql-ledger.org/images/sql-ledger.png border=0 width=64 height=58></th>
-
- <td align=right>
- <h4>
- Tel: <%tel%>
- <br>Fax: <%fax%>
- </h4>
- </td>
- </tr>
-
- <tr>
- <th colspan=3>
- <h4>W O R K &nbsp;&nbsp; O R D E R</h4>
- </th>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% callspacing=0 cellpadding=0>
- <tr bgcolor=000000>
- <th align=left width=50%><font color=ffffff>To</th>
- <th align=left width=50%><font color=ffffff>Ship To</th>
- </tr>
-
- <tr valign=top>
- <td><%name%>
- <br><%address1%>
- <%if address2%>
- <br><%address2%>
- <%end address2%>
- <br><%city%> <%state%>
- <br><%zipcode%>
- <%if country%>
- <br><%country%>
- <%end country%>
- <br>
- <%if contact%>
- <br>Attn: <%contact%>
- <%end contact%>
- <%if customerphone%>
- <br>Tel: <%customerphone%>
- <%end customerphone%>
- <%if customerfax%>
- <br>Fax: <%customerfax%>
- <%end customerfax%>
- <%if email%>
- <br><%email%>
- <%end email%>
- </td>
-
- <td><%shiptoname%>
- <br><%shiptoaddress1%>
- <%if shiptoaddress2%>
- <br><%shiptoaddress2%>
- <%end shiptoaddress2%>
- <br><%shiptocity%> <%shiptostate%>
- <br><%shiptozipcode%>
- <%if shiptocountry%>
- <br><%shiptocountry%>
- <%end shiptocountry%>
- <br>
- <%if shiptocontact%>
- <br><%shiptocontact%>
- <%end shiptocontact%>
- <%if shiptophone%>
- <br>Tel: <%shiptophone%>
- <%end shiptophone%>
- <%if shiptofax%>
- <br>Fax: <%shiptofax%>
- <%end shiptofax%>
- <%if shiptoemail%>
- <br><%shiptoemail%>
- <%end shiptoemail%>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr height=5></tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100% border=1>
- <tr>
- <th width=17% align=left nowrap>Order Number</th>
- <th width=17% align=left>Order Date</th>
- <th width=17% align=left>Required by</th>
- <th width=17% align=left nowrap>Salesperson</th>
- <th width=17% align=left nowrap>Shipping Point</th>
- <th width=15% align=left nowrap>Ship Via</th>
- </tr>
-
- <tr>
- <td><%ordnumber%></td>
- <td><%orddate%></td>
- <td><%reqdate%></td>
- <td><%employee%></td>
- <td><%shippingpoint%>&nbsp;</td>
- <td><%shipvia%>&nbsp;</td>
- </tr>
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <td>
- <table width=100%>
- <tr bgcolor=000000>
- <th align=right><font color=ffffff>No.</th>
- <th align=left><font color=ffffff>Number</th>
- <th align=left><font color=ffffff>Description</th>
- <th><font color=ffffff>Qt'y</th>
- <th>&nbsp;</th>
- <th><font color=ffffff>Serial No.</th>
- </tr>
-
- <%foreach number%>
- <tr valign=top>
- <td align=right><%runningnumber%>.</td>
- <td><%number%></td>
- <td><%description%></td>
- <td align=right><%qty%></td>
- <td><%unit%></td>
- <td><%serialnumber%></td>
- </tr>
- <%end number%>
-
- <tr>
- <td colspan=6><hr noshade></td>
- </tr>
-
- </table>
- </td>
- </tr>
-
- <tr>
- <td>&nbsp;</td>
-
- <%if notes%>
- <td><%notes%></td>
- <%end notes%>
- </tr>
-</table>
-
-</body>
-</html>
-
diff --git a/sql-ledger/templates/Spanish_Letter-work_order.tex b/sql-ledger/templates/Spanish_Letter-work_order.tex
deleted file mode 100644
index cb6774d..0000000
--- a/sql-ledger/templates/Spanish_Letter-work_order.tex
+++ /dev/null
@@ -1,177 +0,0 @@
-\documentclass[twoside]{scrartcl}
-\usepackage[frame]{xy}
-\usepackage{tabularx}
-\usepackage{graphicx}
-\setlength{\voffset}{0.5cm}
-\setlength{\hoffset}{-1.9cm}
-\setlength{\topmargin}{0cm}
-\setlength{\headheight}{0.5cm}
-\setlength{\headsep}{1cm}
-\setlength{\topskip}{0pt}
-\setlength{\oddsidemargin}{1.0cm}
-\setlength{\evensidemargin}{1.0cm}
-\setlength{\textwidth}{19.2cm}
-\setlength{\textheight}{24.7cm}
-\setlength{\footskip}{1cm}
-\setlength{\parindent}{0pt}
-\renewcommand{\baselinestretch}{1}
-\begin{document}
-
-\newlength{\descrwidth}\setlength{\descrwidth}{10cm}
-\fontfamily{cmss}\fontsize{10pt}{12pt}\selectfont
-
-\pagestyle{myheadings}
-\thispagestyle{empty}
-
-\vspace*{-1.3cm}
-
-\parbox{\textwidth}{%
- \parbox[b]{.42\textwidth}{%
- <%company%>
-
- <%address%>
- }
- \parbox[b]{.2\textwidth}{
- \includegraphics[scale=0.3]{sql-ledger}
- }\hfill
- \begin{tabular}[b]{rr@{}}
- Telephone & <%tel%>\\
- Facsimile & <%fax%>
- \end{tabular}
-
- \rule[1.5em]{\textwidth}{0.5pt}
-}
-
-
-<%pagebreak 90 27 48%>
-\end{tabularx}
-
-\newpage
-
-\markboth{<%company%>\hfill <%ordnumber%>}{<%company%>\hfill <%ordnumber%>}
-
-\vspace*{-12pt}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%end pagebreak%>
-
-
-\vspace*{0.5cm}
-
-\parbox[t]{1cm}{\hfill}
-\parbox[t]{.45\textwidth}{
-\textbf{To}
-\vspace{0.7cm}
-
-<%name%>
-
-<%address1%>
-
-<%address2%>
-
-<%city%> <%state%> <%zipcode%>
-
-<%country%>
-
-\vspace{0.3cm}
-
-<%if contact%>
-<%contact%>
-\vspace{0.2cm}
-<%end contact%>
-
-<%if customerphone%>
-Tel: <%customerphone%>
-<%end customerphone%>
-
-<%if customerfax%>
-Fax: <%customerfax%>
-<%end customerfax%>
-
-<%email%>
-}
-\parbox[t]{.45\textwidth}{
-\textbf{Ship To}
-\vspace{0.7cm}
-
-<%shiptoname%>
-
-<%shiptoaddress1%>
-
-<%shiptoaddress2%>
-
-<%shiptocity%> <%shiptostate%> <%shiptozipcode%>
-
-<%shiptocountry%>
-
-\vspace{0.3cm}
-
-<%if shiptocontact%>
-<%shiptocontact%>
-\vspace{0.2cm}
-<%end shiptocontact%>
-
-<%if shiptophone%>
-Tel: <%shiptophone%>
-<%end shiptophone%>
-
-<%if shiptofax%>
-Fax: <%shiptofax%>
-<%end shiptofax%>
-
-<%shiptoemail%>
-}
-\hfill
-
-\vspace{1cm}
-
-\textbf{W O R K} \parbox{0.3cm}{\hfill} \textbf{O R D E R}
-\hfill
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{*{6}{|X}|} \hline
- \textbf{Order \#} & \textbf{Order Date} & \textbf{Required by} & \textbf{Salesperson} & \textbf{Shipping Point} & \textbf{Ship Via} \\ [0.5em]
- \hline
- <%ordnumber%> & <%orddate%> & <%reqdate%> & <%employee%> & <%shippingpoint%> & <%shipvia%> \\
- \hline
-\end{tabularx}
-
-\vspace{1cm}
-
-\begin{tabularx}{\textwidth}{@{}rlXrll@{}}
- \textbf{No.} & \textbf{Number} & \textbf{Description} & \textbf{Qt'y} &
- & \textbf{Serial Number} \\
-<%foreach number%>
- <%runningnumber%> & <%number%> & <%description%> & <%qty%> &
- <%unit%> & <%serialnumber%> \\
-<%end number%>
-\end{tabularx}
-
-
-\parbox{\textwidth}{
-\rule{\textwidth}{2pt}
-
-\vspace{12pt}
-
-<%if notes%>
- <%notes%>
-<%end if%>
-
-}
-
-\vfill
-
-\vspace{1cm}
-
-\rule{\textwidth}{0.5pt}
-
-\end{document}
-
-
-
-
-
-
diff --git a/sql-ledger/users/sql-ledger.eps b/sql-ledger/users/sql-ledger.eps
deleted file mode 100644
index 3dff76c..0000000
--- a/sql-ledger/users/sql-ledger.eps
+++ /dev/null
@@ -1,2118 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: (ImageMagick)
-%%Title: (sql-ledger.eps)
-%%CreationDate: (Sun Apr 20 13:53:06 2003)
-%%BoundingBox: 226 327 386 465
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 1
-%%Pages: 1
-%%EndComments
-
-%%BeginDefaults
-%%EndDefaults
-
-%%BeginProlog
-%
-% Display a color image. The image is displayed in color on
-% Postscript viewers or printers that support color, otherwise
-% it is displayed as grayscale.
-%
-/DirectClassPacket
-{
- %
- % Get a DirectClass packet.
- %
- % Parameters:
- % red.
- % green.
- % blue.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- compression 0 eq
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/DirectClassImage
-{
- %
- % Display a DirectClass image.
- %
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { DirectClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayDirectClassPacket } image
- } ifelse
-} bind def
-
-/GrayDirectClassPacket
-{
- %
- % Get a DirectClass packet; convert to grayscale.
- %
- % Parameters:
- % red
- % green
- % blue
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 eq
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/GrayPseudoClassPacket
-{
- %
- % Get a PseudoClass packet; convert to grayscale.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 eq
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassPacket
-{
- %
- % Get a PseudoClass packet.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- compression 0 eq
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassImage
-{
- %
- % Display a PseudoClass image.
- %
- % Parameters:
- % class: 0-PseudoClass or 1-Grayscale.
- %
- currentfile buffer readline pop
- token pop /class exch def pop
- class 0 gt
- {
- currentfile buffer readline pop
- token pop /depth exch def pop
- /grays columns 8 add depth sub depth mul 8 idiv string def
- columns rows depth
- [
- columns 0 0
- rows neg 0 rows
- ]
- { currentfile grays readhexstring pop } image
- }
- {
- %
- % Parameters:
- % colors: number of colors in the colormap.
- % colormap: red, green, blue color packets.
- %
- currentfile buffer readline pop
- token pop /colors exch def pop
- /colors colors 3 mul def
- /colormap colors string def
- currentfile colormap readhexstring pop pop
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { PseudoClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayPseudoClassPacket } image
- } ifelse
- } ifelse
-} bind def
-
-/DisplayImage
-{
- %
- % Display a DirectClass or PseudoClass image.
- %
- % Parameters:
- % x & y translation.
- % x & y scale.
- % label pointsize.
- % image label.
- % image columns & rows.
- % class: 0-DirectClass or 1-PseudoClass.
- % compression: 0-none or 1-RunlengthEncoded.
- % hex color packets.
- %
- gsave
- /buffer 512 string def
- /byte 1 string def
- /color_packet 3 string def
- /pixels 768 string def
-
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- x y translate
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- currentfile buffer readline pop
- token pop /pointsize exch def pop
- /Times-Roman findfont pointsize scalefont setfont
- x y scale
- currentfile buffer readline pop
- token pop /columns exch def
- token pop /rows exch def pop
- currentfile buffer readline pop
- token pop /class exch def pop
- currentfile buffer readline pop
- token pop /compression exch def pop
- class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
- grestore
-} bind def
-%%EndProlog
-%%Page: 1 1
-%%PageBoundingBox: 226 327 386 465
-userdict begin
-DisplayImage
-226 327
-159.892 138.034
-12.000000
-160 138
-0
-0
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafafafafafafafafafafafafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafafafafafafafafafafafafafafafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafadbdcdcbcc1c1cdcfcfa5bfbda5bfbda5bfbda5bfbda5bfbdbcc1c1cdcfcfdbdcdc
-cdcfcfdbdcdcf1f2f2ffffffffffffffffffffffffe7e8e7bcc1c1cdcfcfffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafadbdcdcbcc1c1cdcfcfbcc1c1a5bfbda5bfbda5bfbda5bfbda5bfbd
-bcc1c1a5bfbdcdcfcfcdcfcfdbdcdce7e8e7f1f2f2fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafaf1f2f2fafafafafafafafafafafafafafafafafafafafafa
-fafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafa
-fafafafafafafafafafafafafafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafabcc1c18cadab8cadab6f97956f9795578683578683447875447875
-4478755786835786836f97958cadaba5bfbda5bfbdcdcfcfe7e8e7e7e8e7cdcfcf6f9795
-8cadaba5bfbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdcbcc1c18cadab8cadab8cadab6f9795578683578683
-5786834478754478755786835786835786836f97956f97958cadab8cadaba5bfbdbcc1c1
-cdcfcfe7e8e7f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcdcfcf4478758cadaba5bfbda5bfbd
-bcc1c1a5bfbdbcc1c1bcc1c1bcc1c1bcc1c1bcc1c1bcc1c1bcc1c1bcc1c1bcc1c1bcc1c1
-bcc1c1a5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbddbdcdcffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffcdcfcf6f9795578683578683366e6b205f5c004945
-0132300425230425230319180319180425230425230132300f5450366e6b6f97958cadab
-a5bfbda5bfbd6f97955786836f97956f9795ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff1f2f2bcc1c18cadab6f97956f9795578683447875
-205f5c084f4b013f3c013230042523042523042523042523042523013230013f3c0f5450
-205f5c366e6b5786836f97958cadaba5bfbda5bfbddbdcdce7e8e7fafafaffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafafafafafafafaacadad
-013230084f4b205f5c2a6763366e6b5786835786836f97956f97956f97956f97956f9795
-6f97956f97956f97956f97956f97955786834478752a6763205f5c205f5c366e6b366e6b
-a5bfbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaffffffacadad447875447875366e6b
-165a56013f3c0132300319182331302331303e4a4a3e4a4a3e4a4a3e4a4a233130031918
-031918042523013f3c165a564478754478754478752a6763366e6b578683fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff1f2f2acadad6f97956f9795578683
-447875165a560049450132300425230319180425232331302331303e4a4a233130233130
-2331300319180319180319180425230132300049450f54502a67634478756f97958cadab
-a5bfbddbdcdcdbdcdcffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffff1f2f2e7e8e7979b9a031918031918031918031918031918042523013f3c0f5450
-165a56165a56165a56165a56165a56165a56165a560f5450004945013230042523031918
-031918031918031918013230acadadffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa6f9795
-366e6b366e6b165a56004945013f3c013230233130595f5f717474717474858888858888
-717474717474717474595f5f3e4a4a031918031918013230004945084f4b004945084f4b
-366e6b578683e7e8e7ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaa5bfbd6f9795
-5786834478752a67630f5450013f3c013230042523042523233130595f5f717474717474
-717474717474717474717474717474595f5f3e4a4a233130031918031918042523013f3c
-004945084f4b165a56366e6b6f97958cadaba5bfbdcdcfcffafafaffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2cdcfcfacadad717474595f5f717474717474
-595f5f233130042523013f3c004945004945004945004945004945004945004945004945
-0132303e4a4a595f5f717474717474717474858888979b9adbdcdcfafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafa6f9795205f5c205f5c0f5450004945013f3c0132303e4a4a717474858888
-979b9a979b9a979b9a979b9a979b9a858888858888717474717474595f5f233130031918
-013230013f3c004945084f4b2a6763447875dbdcdcffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-dbdcdc6f97955786834478752a6763165a56004945013f3c0132300425233e4a4a717474
-858888858888858888979b9a979b9a979b9a979b9a858888858888717474717474717474
-595f5f233130031918031918013230013f3c0049450049450f5450366e6b6f9795a5bfbd
-bcc1c1dbdcdcfffffffffffffffffffffffffffffffffffffafafaf1f2f2cdcfcfacadad
-858888858888858888717474717474595f5f042523013230004945004945004945004945
-004945004945084f4b084f4b16423f717474858888858888858888858888979b9acdcfcf
-e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff6f97950f5450165a560f5450004945004945013f3c
-3e4a4a858888acadadbcc1c1bcc1c1cdcfcfcdcfcfcdcfcfcdcfcfbcc1c1acadad979b9a
-858888717474595f5f233130031918013230004945084f4b2a6763447875cdcfcfffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbcc1c15786834478752a6763165a56004945004945013f3c013230
-233130595f5f858888979b9aacadadacadadbcc1c1bcc1c1cdcfcfcdcfcfbcc1c1bcc1c1
-acadadacadad979b9a8588887174747174743e4a4a042523031918013230013f3c004945
-004945004945165a565786838cadabbcc1c1dbdcdcffffffffffffffffffffffffffffff
-fffffff1f2f2dbdcdccdcfcfacadadacadadacadad979b9a858888717474233130013230
-004945004945004945004945004945004945084f4b165a562a6763979b9aacadadacadad
-acadadacadadbcc1c1dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafabcc1c1084f4b0f5450084f4b
-00494500494500494516423f979b9abcc1c1dbdcdcdbdcdcf1f2f2f1f2f2f1f2f2f1f2f2
-f1f2f2e7e8e7e7e8e7cdcfcfacadad979b9a717474595f5f233130031918013f3c004945
-2a6763447875bcc1c1ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8cadab366e6b366e6b205f5c084f4b004945
-004945013f3c0132303e4a4a858888979b9aacadadcdcfcfcdcfcfe7e8e7e7e8e7f1f2f2
-f1f2f2e7e8e7f1f2f2e7e8e7e7e8e7dbdcdcbcc1c1acadad979b9a717474717474595f5f
-233130031918013230013f3c004945004945004945084f4b366e6b6f9795a5bfbddbdcdc
-fffffffffffffffffffffffffafafafafafaf1f2f2e7e8e7e7e8e7dbdcdcdbdcdccdcfcf
-acadad8588882331300132300049450049450049450049450049450049450f54502a6763
-447875cdcfcfdbdcdcdbdcdcdbdcdce7e8e7e7e8e7f1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafae7e8e7
-2a6763004945084f4b004945004945004945004945717474bcc1c1dbdcdcf1f2f2fafafa
-fafafafffffffffffffffffffafafafafafafafafaf1f2f2dbdcdcbcc1c1979b9a717474
-595f5f031918042523013f3c205f5c447875a5bfbdffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff979b9a2a67632a6763
-165a56084f4b004945004945013f3c0132303e4a4a858888acadadcdcfcfdbdcdce7e8e7
-f1f2f2fafafafafafafffffffffffffffffffffffffafafafafafaf1f2f2f1f2f2dbdcdc
-cdcfcfacadad858888717474595f5f233130031918013230004945004945004945004945
-084f4b366e6b6f9795a5bfbddbdcdcfffffffffffffffffffffffffafafafffffffafafa
-fafafafafafaf1f2f2e7e8e7bcc1c1979b9a16423f013230004945004945004945004945
-004945004945084f4b2a6763578683f1f2f2fafafafafafafafafafafafafafafaffffff
-fffffffafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2acadad013f3c004945004945004945004945084f4b0f5450acadad
-e7e8e7fafafafffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2dbdcdcbcc1c1979b9a7174743e4a4a0319180132300f54504478758cadabffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8cadab165a56165a560f5450004945004945004945013f3c0132303e4a4a979b9abcc1c1
-dbdcdce7e8e7fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafafafafae7e8e7dbdcdcbcc1c1979b9a717474595f5f233130031918
-0132300049450049450049450049450049452a67636f9795a5bfbddbdcdcffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf979b9a233130013230
-0049450049450049450049450049450049450f54502a6763578683fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff1f2f2e7e8e7595f5f013f3c004945004945004945
-084f4b165a562a6763cdcfcff1f2f2ffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafadbdcdcbcc1c1858888717474233130042523
-004945366e6b979b9affffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaffffffa5bfbd0f5450165a560f5450004945004945004945004945013f3c
-224d4b979b9abcc1c1dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2dbdcdcbcc1c1
-979b9a858888595f5f042523042523013f3c004945004945004945004945084f4b2a6763
-6f9795a5bfbdf1f2f2fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-dbdcdcacadad224d4b0132300049450049450049450049450049450049450f54502a6763
-578683ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2bcc1c1224d4b
-013f3c004945004945004945084f4b2a6763447875e7e8e7fafafaffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc
-acadad858888595f5f031918013230366e6b6f9795ffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafacdcfcf205f5c0f54500f5450004945004945
-004945004945013f3c013f3c858888bcc1c1dbdcdcfafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2e7e8e7bcc1c1979b9a717474595f5f031918042523013f3c004945
-004945004945004945084f4b366e6b6f9795a5bfbdfafafaffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-0049450049450f54502a6763578683fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafadbdcdcacadad013f3c013f3c004945004945004945084f4b366e6b578683f1f2f2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7cdcfcf979b9a717474233130042523165a56578683fafafa
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2447875084f4b
-084f4b004945004945004945004945004945013f3c595f5fbcc1c1e7e8e7fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaf1f2f2dbdcdcbcc1c1979b9a717474
-3e4a4a0319180132300049450049450049450049450049450f54504478758cadabbcc1c1
-fffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdcacadad3e4a4a013230
-0049450049450049450049450049450049450f54502a6763578683fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2dbdcdc858888013230013f3c004945004945004945
-084f4b366e6b578683e7e8e7ffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1858888595f5f
-031918013f3c2a6763f1f2f2fffffffffffffffffffffffffffffffffffffffffffafafa
-fafafa979b9a004945084f4b084f4b00494500494500494500494500494516423facadad
-dbdcdcfafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2dbdcdcacadad858888717474042523042523013f3c004945004945004945004945
-004945165a565786838cadabdbdcdcfffffffffffffffffffffffffffffffffffffafafa
-dbdcdcacadad3e4a4a0132300049450049450049450049450049450049450f54502a6763
-858888fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf858888013230
-013f3c004945004945004945084f4b366e6b578683dbdcdcffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2cdcfcf979b9a717474233130031918366e6bf1f2f2ffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdc205f5c004945084f4b004945004945004945004945
-004945004945717474dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2cdcfcfacadad8588883e4a4a031918013230
-004945004945004945004945004945084f4b366e6b6f9795a5bfbdffffffffffffffffff
-fffffffffffffffffff1f2f2dbdcdcacadad3e4a4a013230004945004945004945004945
-0049450049450f54502a67636f9795ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f1f2f2cdcfcf717474013230013f3c004945004945004945004945366e6b6f9795bcc1c1
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafadbdcdcbcc1c1858888717474717474cdcfcff1f2f2
-fffffffffffffffffffffffffffffffffffffafafaf1f2f2858888013f3c004945004945
-004945004945004945004945004945084f4bacadade7e8e7fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1
-979b9a717474233130042523013f3c0049450049450049450049450049450f5450578683
-8cadabcdcfcffffffffffffffffffffffffffffffffafafadbdcdcacadad3e4a4a013230
-0049450049450049450049450049450049450f54502a6763578683ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafae7e8e7bcc1c1858888042523013f3c004945004945004945
-004945205f5c5786838cadabfafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2cdcfcfacadad
-979b9aacadaddbdcdcfafafafffffffffffffffffffffffffffffffffffff1f2f2cdcfcf
-224d4b0049450049450049450049450049450049450049450049452a6763cdcfcff1f2f2
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafadbdcdcacadad8588883e4a4a042523013f3c004945004945004945
-004945004945004945205f5c6f9795a5bfbdfffffffffffffffffffffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-858888ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf858888042523
-013230004945004945004945004945084f4b4478758cadabcdcfcfffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafae7e8e7cdcfcfbcc1c1cdcfcfe7e8e7fafafaffffffffffffffffffffffff
-fffffffafafae7e8e7858888004945004945004945004945004945004945004945084f4b
-004945858888e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf979b9a717474042523
-0132300049450049450049450049450049450049450f54504478758cadabdbdcdcffffff
-fffffffffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a67636f9795ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-e7e8e7bcc1c1858888233130013230004945004945004945004945004945205f5c578683
-a5bfbdcdcfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafaf1f2f2e7e8e7e7e8e7e7e8e7fafafafafafa
-fffffffffffffffffffffffffafafafafafadbdcdc2a6763013f3c004945004945004945
-004945004945004945084f4b004945acadadf1f2f2fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-dbdcdcacadad858888233130042523013f3c004945004945004945004945004945084f4b
-2a67636f9795a5bfbdfffffffffffffffffffffffffafafadbdcdcbcc1c13e4a4a013230
-004945004945004945004945004945004945165a562a67636f9795ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf979b9a233130013230013f3c004945004945
-004945004945084f4b2a67636f9795a5bfbdbcc1c1f1f2f2ffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-fafafafafafafffffffffffffffffffffffffffffffffffffafafaf1f2f2acadad16423f
-013f3c004945004945004945004945004945084f4b0f5450165a56cdcfcffafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafae7e8e7bcc1c1979b9a595f5f042523013f3c004945004945
-004945004945004945004945205f5c5786838cadabfffffffffffffffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-6f9795ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2cdcfcfacadad3e4a4a
-042523013f3c004945004945004945004945004945084f4b2a6763578683a5bfbdcdcfcf
-cdcfcffafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7717474013f3c004945004945004945004945004945004945084f4b0f5450
-366e6be7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc979b9a717474
-0425230132300049450049450049450049450049450049450f5450366e6b6f9795e7e8e7
-fffffffffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a6763979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafacdcfcfacadad717474031918013230004945004945004945004945004945004945
-004945165a564478756f9795a5bfbdbcc1c1dbdcdcf1f2f2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf595f5f013f3c004945004945004945004945
-0049450049450f5450165a56447875f1f2f2fafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafadbdcdcbcc1c1858888233130013230013f3c004945004945004945004945004945
-084f4b366e6b578683bcc1c1fffffffffffffffffffafafadbdcdcacadad3e4a4a013230
-004945004945004945004945004945004945165a562a67638cadabffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafadbdcdcacadad858888233130031918013f3c004945
-004945004945004945004945004945004945084f4b205f5c4478756f9795a5bfbda5bfbd
-cdcfcfe7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c116423f013f3c
-0049450049450049450049450049450049450f5450165a56858888fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafae7e8e7bcc1c1979b9a3e4a4a013230013f3c004945
-004945004945004945004945004945205f5c5786838cadabfffffffffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7cdcfcf858888
-595f5f031918042523013f3c004945004945004945004945004945004945004945004945
-084f4b205f5c366e6b6f97958cadaba5bfbda5bfbdcdcfcfdbdcdcfafafaffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-e7e8e7979b9a013230013f3c0049450049450049450049450049450049450f5450205f5c
-979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcfacadad
-595f5f042523013f3c004945004945004945004945004945004945165a564478756f9795
-fffffffffffffffffffafafadbdcdcacadad3e4a4a013f3c013f3c004945004945004945
-004945004945165a562a67638cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffff1f2f2cdcfcfacadad7174743e4a4a031918042523013f3c004945004945004945
-0049450049450049450049450049450049450049450f5450205f5c4478756f97958cadab
-a5bfbdbcc1c1cdcfcfe7e8e7fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff1f2f2dbdcdc858888013230013f3c004945004945004945004945
-004945004945165a56205f5c8cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafadbdcdcacadad595f5f042523013f3c004945004945004945004945004945
-0049450f5450366e6b6f9795fafafafffffffffffffafafadbdcdcbcc1c13e4a4a013230
-004945004945004945004945004945004945165a562a6763979b9affffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafae7e8e7bcc1c1858888717474233130031918
-042523013f3c004945004945004945004945004945004945004945004945004945004945
-0049450049450f5450205f5c4478756f97958cadaba5bfbdcdcfcfe7e8e7ffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf717474013230013f3c
-004945004945004945004945004945004945165a562a6763acadadffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafae7e8e7acadad717474013230013230004945
-0049450049450049450049450049450f5450366e6b578683e7e8e7fffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-8cadabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2dbdcdc
-acadad858888717474233130031918042523013230013f3c004945004945004945004945
-004945004945004945004945004945004945004945004945004945165a56366e6b6f9795
-8cadaba5bfbdbcc1c1fafafafffffffffffffffffffffffffffffffffffffafafaf1f2f2
-cdcfcf595f5f013230013f3c004945004945004945004945004945004945205f5c2a6763
-acadadffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1
-858888233130013f3c004945004945004945004945004945004945084f4b2a6763447875
-e7e8e7fffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a6763979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7cdcfcf979b9a8588887174743e4a4a031918031918042523
-013f3c004945004945004945004945004945004945004945004945004945004945004945
-004945004945004945084f4b366e6b6f9795a5bfbdbcc1c1e7e8e7ffffffffffffffffff
-fffffffffffffafafae7e8e7bcc1c1595f5f013230013f3c004945004945004945004945
-004945004945205f5c366e6ba5bfbdffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafae7e8e7bcc1c1858888233130013230004945004945004945004945004945
-004945084f4b2a6763447875dbdcdcfffffffffffffafafadbdcdcacadad3e4a4a013230
-004945004945004945004945004945004945165a562a67638cadabffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7cdcfcf979b9a858888
-717474595f5f233130031918031918013230013f3c004945004945004945004945004945
-004945004945004945004945004945004945004945004945004945165a564478758cadab
-bcc1c1dbdcdcfffffffffffffffffffffffffafafae7e8e7bcc1c1595f5f013230013f3c
-004945004945004945004945004945004945205f5c366e6bacadadffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff1f2f2cdcfcf979b9a16423f013230004945
-004945004945004945004945004945084f4b205f5c366e6bdbdcdcfffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7cdcfcfacadad8588887174747174743e4a4a233130031918031918013230
-013f3c004945004945004945004945004945004945004945004945004945004945004945
-0049450049450f5450366e6b8cadaba5bfbddbdcdcfffffffffffffffffffafafae7e8e7
-bcc1c1595f5f013230013f3c004945004945004945004945004945004945205f5c447875
-8cadabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf
-979b9a233130013f3c004945004945004945004945004945004945084f4b205f5c366e6b
-dbdcdcfffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a67638cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafaf1f2f2cdcfcfbcc1c1979b9a858888717474
-595f5f3e4a4a042523031918031918042523013230013f3c004945004945004945004945
-004945004945004945004945004945004945004945084f4b366e6b6f9795a5bfbdf1f2f2
-fffffffffffffafafadbdcdcbcc1c1595f5f013230013f3c004945004945004945004945
-004945004945165a564478758cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff1f2f2cdcfcfacadad16423f013230004945004945004945004945004945
-004945084f4b165a56366e6be7e8e7fffffffffffffafafadbdcdcbcc1c13e4a4a013230
-004945004945004945004945004945004945165a562a6763979b9affffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2
-dbdcdccdcfcfacadad858888858888717474595f5f3e4a4a233130031918031918042523
-013230013f3c004945004945004945004945004945004945004945004945004945004945
-084f4b4478758cadaba5bfbdfffffffffffffafafae7e8e7bcc1c1595f5f042523013f3c
-004945004945004945004945004945004945165a564478756f9795ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafacdcfcf979b9a16423f013f3c004945
-004945004945004945004945004945084f4b165a56447875f1f2f2fffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-8cadabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafae7e8e7dbdcdcbcc1c1acadad979b9a717474717474
-7174743e4a4a3e4a4a042523031918031918042523013f3c004945004945004945004945
-004945004945004945004945004945165a565786838cadabe7e8e7fffffffafafadbdcdc
-bcc1c1717474042523013f3c0049450049450049450049450049450049450f5450447875
-6f9795fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc
-979b9a233130013f3c004945004945004945004945004945004945084f4b0f5450578683
-fafafafffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a6763979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2e7e8e7
-dbdcdcbcc1c1acadad979b9a858888717474717474595f5f3e4a4a233130031918031918
-042523013f3c004945004945004945004945004945004945004945004945366e6b6f9795
-acadadfffffffafafae7e8e7bcc1c1717474042523013230004945004945004945004945
-0049450049450f5450366e6b6f9795e7e8e7ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff1f2f2dbdcdc979b9a16423f013f3c004945004945004945004945004945
-004945084f4b084f4b858888fafafafffffffffffffafafadbdcdcacadad3e4a4a013230
-004945004945004945004945004945004945165a562a67638cadabffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafafafafaf1f2f2e7e8e7dbdcdcbcc1c1acadad979b9a858888858888
-717474595f5f595f5f233130031918031918013230013f3c004945004945004945004945
-004945004945165a565786836f9795fafafaffffffe7e8e7bcc1c1858888233130013230
-004945004945004945004945004945004945084f4b366e6b578683dbdcdcffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff1f2f2cdcfcf858888013230013f3c004945
-004945004945004945004945004945084f4b004945acadadfafafafffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2
-e7e8e7cdcfcfbcc1c1acadad979b9a858888717474595f5f3e4a4a042523031918013230
-013f3c004945004945004945004945004945084f4b366e6b578683dbdcdcfffffff1f2f2
-bcc1c1979b9a233130013230013f3c0049450049450049450049450049450049452a6763
-578683bcc1c1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc
-717474013f3c013f3c004945004945004945004945004945004945004945165a56cdcfcf
-fafafafffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a67638cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2e7e8e7dbdcdcbcc1c1acadad979b9a858888
-717474595f5f2331300319180132300049450049450049450049450049450049452a6763
-578683bcc1c1fffffff1f2f2cdcfcf979b9a3e4a4a042523013f3c004945004945004945
-004945004945004945205f5c5786838cadabffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff1f2f2cdcfcf595f5f013f3c004945004945004945004945004945004945
-004945004945366e6be7e8e7fafafafffffffffffffafafadbdcdcacadad3e4a4a013230
-004945004945004945004945004945004945165a562a6763979b9affffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2
-e7e8e7dbdcdccdcfcfacadad858888717474595f5f233130031918013230004945004945
-004945004945004945205f5c4478758cadabfffffffafafacdcfcfacadad595f5f042523
-0132300049450049450049450049450049450049450f54504478756f9795f1f2f2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafae7e8e7bcc1c13e4a4a013f3c004945004945
-004945004945004945004945004945004945858888fafafafafafafffffffffffffafafa
-dbdcdcacadad3e4a4a013230004945004945004945004945004945004945165a562a6763
-8cadabffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7e8e7
-dbdcdce7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafafafafae7e8e7dbdcdcbcc1c1979b9a858888595f5f
-042523042523013f3c004945004945004945004945165a56366e6b979b9afffffffafafa
-dbdcdcacadad858888042523013230013f3c004945004945004945004945004945084f4b
-4478756f9795cdcfcfffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7acadad
-16423f013f3c0049450049450049450049450049450049450049450f5450bcc1c1f1f2f2
-fffffffffffffffffffafafadbdcdcacadad224d4b013230004945004945004945004945
-004945004945165a562a6763979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaffffff979b9a578683a5bfbdcdcfcfffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-e7e8e7bcc1c1979b9a7174743e4a4a031918013f3c004945004945004945004945165a56
-2a67636f9795fffffffafafae7e8e7bcc1c18588883e4a4a042523013f3c004945004945
-0049450049450049450049452a67636f97958cadabffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafadbdcdc858888013f3c004945004945004945004945004945004945004945
-004945595f5fe7e8e7fafafafffffffffffffffffffafafadbdcdcacadad3e4a4a013230
-004945004945004945004945004945004945165a562a67638cadabffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e7e8e7dbdcdcf1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafaf1f2f25786830f54506f9795a5bfbdffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafaf1f2f2e7e8e7bcc1c1979b9a717474042523013230004945
-0049450049450049450f54502a67636f9795fffffffffffff1f2f2cdcfcf979b9a595f5f
-0319180132300049450049450049450049450049450049450f54505786838cadabf1f2f2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff1f2f2dbdcdc595f5f013f3c004945004945004945
-004945004945004945004945013f3cacadadf1f2f2fafafafffffffffffffffffffafafa
-dbdcdcacadad16423f013230004945004945004945004945004945004945165a562a6763
-979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafaffffff5786838cadaba5bfbde7e8e7ffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2cdcfcf595f5f
-013f3c4478756f9795ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafafafafadbdcdcacadad
-717474233130013230013f3c0049450049450049450f5450205f5c6f9795ffffffffffff
-f1f2f2dbdcdcacadad858888233130042523013f3c004945004945004945004945004945
-084f4b366e6b6f9795bcc1c1ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c116423f
-004945004945004945004945004945004945004945013f3c595f5fcdcfcff1f2f2fafafa
-fffffffffffffffffffafafadbdcdcacadad3e4a4a013230004945004945004945004945
-004945004945165a562a67638cadabffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafafafafabcc1c10f5450447875578683e7e8e7
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafadbdcdcbcc1c1224d4b013f3c4478756f9795fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafae7e8e7bcc1c1979b9a3e4a4a0132300049450049450049450049450f5450
-165a56979b9afffffffffffffafafae7e8e7bcc1c1858888595f5f031918013230004945
-004945004945004945004945004945205f5c5786838cadabfafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7858888013f3c004945004945004945004945004945004945013f3c013f3c
-979b9ae7e8e7fafafafffffffffffffffffffffffffafafacdcfcfacadad16423f013230
-004945004945004945004945004945004945165a56366e6b979b9affffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7447875
-084f4b165a56447875fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafadbdcdcacadad16423f013f3c366e6b6f9795dbdcdc
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff1f2f2cdcfcfacadad595f5f013230013f3c
-0049450049450049450f5450084f4bacadadfffffffffffffffffff1f2f2cdcfcf979b9a
-717474233130042523013f3c004945004945004945004945004945084f4b4478756f9795
-dbdcdcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf224d4b004945004945004945004945004945
-004945013f3c013f3c595f5fdbdcdcf1f2f2fafafafffffffffffffffffffffffffafafa
-dbdcdcacadad233130013f3c004945004945004945004945004945004945165a56366e6b
-6f9795ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafaf1f2f2acadad013f3c0f5450084f4b979b9afafafafafafaffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc979b9a233130
-013f3c2a67636f9795acadadffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc
-acadad595f5f013230013f3c004945004945004945084f4b084f4bbcc1c1ffffffffffff
-fffffffafafae7e8e7bcc1c1858888595f5f031918042523013f3c004945004945004945
-004945004945205f5c6f97958cadabf1f2f2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7979b9a004945004945
-004945004945004945004945004945013f3c224d4bacadade7e8e7fafafaffffffffffff
-fffffffffffffffffffafafacdcfcfacadad16423f013230004945004945004945004945
-004945004945165a562a6763979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafadbdcdc2a6763084f4b0f5450084f4ba5bfbdfafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f1f2f2dbdcdc979b9a013230013f3c165a565786838cadabf1f2f2ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7acadad595f5f013230004945004945004945004945004945
-2a6763dbdcdcfafafafffffffffffffafafaf1f2f2cdcfcf979b9a8588883e4a4a031918
-013230004945004945004945004945004945084f4b4478758cadabcdcfcfffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-cdcfcf205f5c004945004945004945004945004945004945013f3c013230858888dbdcdc
-f1f2f2fafafafffffffffffffffffffffffffffffffafafadbdcdcacadad233130013f3c
-004945004945004945004945004945004945165a562a67636f9795ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2979b9a004945084f4b
-0f5450205f5ccdcfcffafafaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf858888013230013f3c084f4b4478756f9795
-cdcfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1595f5f013f3c004945
-004945004945004945004945717474f1f2f2fafafafffffffffffffffffffafafae7e8e7
-bcc1c1858888717474233130031918013230004945004945004945004945004945165a56
-5786838cadabe7e8e7ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafaf1f2f2858888004945004945004945004945004945004945013f3c
-013230717474bcc1c1e7e8e7fafafafffffffffffffffffffffffffffffffffffff1f2f2
-dbdcdcacadad16423f013230004945004945004945004945004945004945165a56366e6b
-6f9795ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-cdcfcf0f54500049450f5450084f4b447875f1f2f2fafafaffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf717474013230
-013f3c004945205f5c6f97958cadabfafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc
-acadad224d4b013f3c004945004945004945004945004945acadadf1f2f2ffffffffffff
-fffffffffffffffffff1f2f2dbdcdcacadad858888595f5f233130031918013230004945
-0049450049450049450049452a67636f9795a5bfbde7e8e7ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaa5bfbd084f4b084f4b084f4b004945
-004945004945013f3c013230595f5fbcc1c1dbdcdcf1f2f2ffffffffffffffffffffffff
-fffffffffffffffffffafafacdcfcf979b9a233130013f3c004945004945004945004945
-004945004945165a56366e6b979b9affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7447875004945084f4b084f4b004945858888fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f1f2f2cdcfcf717474013230013f3c004945084f4b366e6b8cadabbcc1c1ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7979b9a013f3c004945004945004945004945013f3c595f5f
-dbdcdcf1f2f2fffffffffffffffffffffffffffffffafafae7e8e7cdcfcf979b9a717474
-595f5f0425230319180132300049450049450049450049450f54504478758cadabbcc1c1
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaffffffcdcfcf205f5c
-0f5450084f4b004945004945013f3c013f3c042523595f5facadadcdcfcff1f2f2fafafa
-fffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdcacadad16423f013230
-004945004945004945004945004945004945165a562a67636f9795ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafafafafa6f9795084f4b084f4b084f4b084f4b
-084f4bbcc1c1fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafae7e8e7bcc1c1595f5f013230004945004945004945165a56
-578683a5bfbdcdcfcfffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff1f2f2dbdcdc2a6763004945004945004945
-004945013f3c013f3c979b9ae7e8e7fafafaffffffffffffffffffffffffffffffffffff
-fafafae7e8e7bcc1c1979b9a717474595f5f233130031918013230013f3c004945004945
-0049450f54504478758cadabcdcfcff1f2f2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffdbdcdc447875165a560f5450084f4b004945013f3c013230042523595f5facadad
-cdcfcfe7e8e7fafafafffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-cdcfcf979b9a233130013f3c004945004945004945004945004945004945165a56366e6b
-6f9795ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaffffffacadad0f5450
-0f5450084f4b084f4b084f4b205f5ccdcfcffafafaffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1595f5f013230
-013f3c0049450049450049452a67636f9795a5bfbdcdcfcfffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2578683
-0f5450084f4b004945004945013f3c013f3c595f5fcdcfcff1f2f2fafafaffffffffffff
-fffffffffffffffffffffffffafafafafafadbdcdcbcc1c1979b9a717474595f5f233130
-031918042523013f3c004945004945004945165a565786838cadabcdcfcff1f2f2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffdbdcdc4478752a6763165a56084f4b004945013f3c013230
-013230595f5facadadbcc1c1e7e8e7fafafafafafaffffffffffffffffffffffffffffff
-fffffffffffffffffff1f2f2dbdcdc979b9a16423f013f3c004945004945004945004945
-0049450049450f5450366e6b858888ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbcc1c12a6763165a560f5450004945084f4b084f4b447875f1f2f2fafafaffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-e7e8e7bcc1c13e4a4a013f3c013f3c013230013230013230013f3c2a67636f9795bcc1c1
-dbdcdcfafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffe7e8e76f97952a6763165a56084f4b004945013f3c013230224d4bacadade7e8e7
-fafafafafafafffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc
-bcc1c1979b9a717474595f5f233130031918031918013230013f3c0049450049450f5450
-4478758cadaba5bfbddbdcdcfafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaa5bfbd578683366e6b165a56004945
-013f3c013230013230233130717474acadadcdcfcfe7e8e7fafafafafafaffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc979b9a16423f013f3c
-0049450049450049450049450049450049450f54504478756f9795ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafaacadad366e6b205f5c165a56004945004945084f4b004945
-858888f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdcbcc1c13e4a4a013230013230233130042523031918
-042523013f3c205f5c6f9795a5bfbdcdcfcfdbdcdcfafafaffffffffffffffffffffffff
-fffffffffffffffffff1f2f2a5bfbd6f97954478752a67630f5450004945013f3c013230
-16423f979b9acdcfcff1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff1f2f2dbdcdcbcc1c1979b9a7174747174743e4a4a031918031918
-042523013f3c0049450049450f5450366e6b6f9795a5bfbdbcc1c1e7e8e7fafafaffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafacdcfcf979b9a578683
-366e6b165a56004945013f3c0132300425233e4a4a858888acadadcdcfcfe7e8e7fafafa
-fafafafffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-cdcfcf717474084f4b0049450049450049450049450049450049450049450f5450578683
-979b9afffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-fafafafafafafafafaf1f2f2e7e8e7dbdcdcbcc1c18cadab578683366e6b165a56004945
-004945004945084f4b084f4ba5bfbdfafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafadbdcdcacadad233130042523
-013230595f5f595f5f3e4a4a0319180319180132300049454478756f9795a5bfbdcdcfcf
-cdcfcfdbdcdcf1f2f2dbdcdccdcfcfcdcfcfa5bfbd8cadab6f9795447875205f5c084f4b
-013f3c013230042523233130858888bcc1c1e7e8e7fafafaffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2e7e8e7bcc1c1acadad
-858888717474595f5f233130031918031918042523013230013f3c004945205f5c578683
-8cadaba5bfbdcdcfcfdbdcdcf1f2f2fafafafafafafafafafafafaf1f2f2cdcfcfbcc1c1
-8cadab6f97954478752a6763084f4b013f3c013230042523233130595f5f979b9aacadad
-cdcfcfe7e8e7fafafafafafafffffffffffffffffffffffffffffffafafaffffff8cadab
-6f9795a5bfbdbcc1c1a5bfbd6f9795447875165a56004945004945004945004945004945
-004945004945084f4b366e6b8cadaba5bfbdbcc1c1a5bfbdbcc1c1a5bfbda5bfbda5bfbd
-bcc1c1a5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbd8cadab8cadab6f9795578683
-2a67630f5450004945004945004945004945084f4b205f5ccdcfcffafafaffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-dbdcdcacadad3e4a4a042523595f5f7174747174747174743e4a4a233130031918031918
-042523084f4b2a67635786838cadab8cadab8cadab8cadab8cadab6f97956f9795447875
-2a6763084f4b013f3c0132300425230425233e4a4a858888bcc1c1dbdcdcfafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafafafafae7e8e7cdcfcfacadad8588887174747174743e4a4a233130031918031918
-042523013230013f3c004945205f5c5786836f97958cadaba5bfbda5bfbdbcc1c1a5bfbd
-a5bfbd8cadab8cadab6f9795578683366e6b084f4b0132300425230319180425233e4a4a
-717474979b9abcc1c1dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-fafafafafafafafafa595f5f084f4b2a6763366e6b2a6763205f5c004945013f3c013230
-013230013230013230013230013230013230013230013f3c084f4b2a6763366e6b366e6b
-366e6b366e6b366e6b366e6b366e6b366e6b366e6b366e6b366e6b2a67632a67632a6763
-205f5c205f5c084f4b013f3c013f3c013230013230013230013230013f3c013f3c366e6b
-f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdcacadad858888858888979b9aacadad979b9a858888
-717474595f5f3e4a4a233130031918031918031918042523013f3c004945224d4b165a56
-165a56084f4b013f3c013230013230042523042523031918233130595f5f979b9abcc1c1
-dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafafafafae7e8e7cdcfcfbcc1c1979b9a858888
-717474595f5f595f5f233130031918031918031918042523013230013f3c0f5450366e6b
-5786836f97956f97956f9795578683578683447875366e6b165a56004945013f3c013230
-2331303e4a4a717474979b9aacadadcdcfcfdbdcdcf1f2f2fafafaffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2dbdcdc595f5f031918031918031918031918
-031918031918031918031918031918031918031918031918031918031918031918031918
-031918031918031918031918031918031918031918031918031918031918031918031918
-031918031918031918031918031918031918031918031918031918031918031918031918
-031918031918042523858888f1f2f2fafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1acadadacadad
-cdcfcfdbdcdccdcfcfacadad979b9a717474717474595f5f595f5f3e4a4a233130042523
-0319180319180319180319180319180319180319180319180319180425233e4a4a595f5f
-858888979b9abcc1c1dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2dbdcdccdcfcfacadad979b9a858888717474717474595f5f3e4a4a233130031918
-031918031918042523013230013f3c084f4b0f5450165a560f54500f5450004945004945
-084f4b165a563e4a4a595f5f858888979b9a979b9abcc1c1cdcfcfe7e8e7fafafafafafa
-fffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1717474
-595f5f595f5f595f5f595f5f595f5f595f5f3e4a4a595f5f3e4a4a3e4a4a3e4a4a595f5f
-3e4a4a3e4a4a595f5f595f5f595f5f717474717474717474717474717474717474717474
-595f5f595f5f595f5f595f5f595f5f595f5f595f5f595f5f595f5f595f5f3e4a4a3e4a4a
-3e4a4a3e4a4a3e4a4a3e4a4a3e4a4a3e4a4a717474bcc1c1fafafaffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2dbdcdccdcfcfdbdcdcf1f2f2f1f2f2e7e8e7dbdcdcbcc1c1acadad979b9a858888
-717474717474717474717474595f5f595f5f595f5f3e4a4a595f5f3e4a4a3e4a4a595f5f
-595f5f717474858888979b9aacadadcdcfcfdbdcdcfafafafafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafaf1f2f2dbdcdccdcfcfacadad979b9a858888
-717474717474595f5f595f5f3e4a4a233130031918031918042523013230013f3c004945
-0049450049450049450049450f5450366e6b6f9795979b9a979b9abcc1c1dbdcdcf1f2f2
-fafafafafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7bcc1c1979b9a858888858888858888717474858888717474717474717474
-858888858888858888717474858888858888717474858888858888858888858888858888
-858888858888858888858888858888858888858888858888858888858888858888858888
-717474717474717474717474717474717474717474717474858888979b9abcc1c1dbdcdc
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafaf1f2f2f1f2f2f1f2f2fafafafffffffafafaf1f2f2
-e7e8e7dbdcdcbcc1c1acadad979b9a979b9a858888858888858888858888717474858888
-717474858888858888858888979b9a979b9aacadadbcc1c1dbdcdce7e8e7fafafafafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2
-f1f2f2dbdcdccdcfcfbcc1c1acadad979b9a858888858888717474717474595f5f233130
-031918031918042523013230013f3c004945004945004945084f4b2a67635786838cadab
-a5bfbdbcc1c1bcc1c1dbdcdcfafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafae7e8e7cdcfcfacadadacadad979b9aacadadacadad
-acadadacadadacadadacadadacadadacadadacadadacadadacadadacadadacadadacadad
-acadadacadadacadadacadadacadadacadadacadad979b9aacadadacadadacadadacadad
-acadad979b9aacadadacadadacadadacadadacadadacadadacadadacadadacadadacadad
-acadadacadadcdcfcff1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafafffffffafafafafafa
-fffffffffffffffffffffffffafafafafafae7e8e7dbdcdccdcfcfcdcfcfbcc1c1acadad
-acadadacadadacadadacadadacadadacadadacadadacadadbcc1c1cdcfcfdbdcdcf1f2f2
-fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafafafafaf1f2f2dbdcdccdcfcfcdcfcfbcc1c1979b9a
-979b9a858888717474717474595f5f233130031918031918042523013230013f3c004945
-004945084f4b165a56366e6b5786838cadaba5bfbdbcc1c1dbdcdce7e8e7e7e8e7fafafa
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2e7e8e7e7e8e7
-dbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdc
-dbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdc
-dbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdcdbdcdccdcfcfdbdcdccdcfcfdbdcdc
-cdcfcfdbdcdccdcfcfcdcfcfdbdcdcdbdcdcf1f2f2f1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-f1f2f2e7e8e7e7e8e7e7e8e7dbdcdcdbdcdcdbdcdccdcfcfdbdcdcdbdcdcdbdcdce7e8e7
-e7e8e7f1f2f2fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-f1f2f2e7e8e7e7e8e7dbdcdccdcfcfacadad979b9a858888717474717474595f5f3e4a4a
-031918031918042523013230013f3c004945004945084f4b084f4b205f5c447875578683
-8cadab8cadaba5bfbdcdcfcfdbdcdce7e8e7fafafaffffffffffffffffffffffffffffff
-fffffffafafafafafaf1f2f2f1f2f2fafafaf1f2f2fafafafafafafafafafafafafafafa
-fafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafa
-fafafafafafafafafafafafafafafafafafaf1f2f2fafafaf1f2f2fafafafafafafafafa
-fafafaf1f2f2fafafaf1f2f2fafafafafafafafafaf1f2f2fafafafafafafafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafafafafafafafafafafafafafafafafaf1f2f2fafafa
-fafafaf1f2f2fafafafafafafafafafafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaf1f2f2f1f2f2e7e8e7cdcfcfbcc1c1
-979b9a858888717474717474595f5f3e4a4a031918031918031918013230013f3c013f3c
-0049450049450049450f5450205f5c4478755786836f97958cadaba5bfbdbcc1c1bcc1c1
-dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2dbdcdccdcfcfbcc1c1979b9a858888717474717474595f5f3e4a4a
-233130031918031918042523013230013f3c0049450049450049450049450f5450205f5c
-366e6b5786836f97958cadaba5bfbda5bfbdbcc1c1cdcfcfe7e8e7f1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2dbdcdccdcfcfbcc1c1
-979b9a858888858888717474595f5f3e4a4a233130031918031918042523013230013f3c
-004945004945004945004945004945084f4b0f54502a6763366e6b5786836f97958cadab
-8cadaba5bfbdbcc1c1cdcfcfdbdcdcf1f2f2fafafafafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafafafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2e7e8e7dbdcdcbcc1c1acadad858888858888717474595f5f595f5f
-233130031918031918031918042523013230013f3c004945004945004945004945004945
-004945084f4b165a562a67634478755786836f97958cadab8cadaba5bfbda5bfbdbcc1c1
-cdcfcfdbdcdce7e8e7f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaa5bfbdbcc1c1e7e8e7
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2e7e8e7cdcfcfbcc1c1
-acadad979b9a858888717474717474595f5f3e4a4a233130031918031918042523013230
-013f3c013f3c004945004945004945004945004945004945004945084f4b0f5450205f5c
-366e6b4478755786836f97958cadab8cadaba5bfbda5bfbdbcc1c1cdcfcfdbdcdcdbdcdc
-e7e8e7f1f2f2fafafafafafafafafafffffffffffffffffffffffffafafae7e8e7a5bfbd
-6f97956f97955786838cadabffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafafafafafafafae7e8e7dbdcdcbcc1c1bcc1c1979b9a858888717474717474595f5f
-595f5f233130031918031918031918042523013230013f3c004945004945004945004945
-004945004945004945004945004945084f4b0f5450165a562a6763366e6b447875578683
-6f97956f97958cadab8cadab8cadaba5bfbda5bfbda5bfbdbcc1c1cdcfcfbcc1c1bcc1c1
-bcc1c1a5bfbd8cadab6f97954478750f5450224d4bdbdcdcffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafafafafafafafaf1f2f2dbdcdccdcfcf
-bcc1c1acadad858888858888717474717474595f5f3e4a4a233130031918031918031918
-042523013230013f3c013f3c004945004945004945004945004945004945004945004945
-004945004945084f4b0f5450165a56205f5c2a67634478754478755786835786836f9795
-6f97956f97956f97956f97956f9795578683447875205f5c013f3c013230acadadf1f2f2
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafafafafaf1f2f2e7e8e7cdcfcfcdcfcfacadad979b9a858888858888717474
-717474595f5f3e4a4a233130031918031918031918042523013230013f3c013f3c004945
-004945004945004945004945004945004945004945004945004945004945004945004945
-084f4b084f4b0f54500f5450165a56165a56205f5c205f5c205f5c0f5450004945013230
-013230858888cdcfcfe7e8e7fafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7
-dbdcdccdcfcfacadad979b9a858888717474717474595f5f595f5f3e4a4a233130031918
-031918031918042523042523013230013f3c013f3c004945004945004945004945004945
-004945004945004945004945004945004945004945004945004945004945004945004945
-004945013f3c013230013230717474bcc1c1dbdcdcf1f2f2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafae7e8e7f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2fafafafafafafafafafafafa
-fafafafafafaf1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdce7e8e7e7e8e7
-dbdcdcdbdcdcdbdcdccdcfcfbcc1c1bcc1c1bcc1c1bcc1c1bcc1c1acadad979b9a858888
-717474717474717474595f5f3e4a4a233130233130031918031918031918042523042523
-013230013f3c013f3c004945004945004945004945004945004945004945004945004945
-004945004945004945013f3c013230013230233130717474acadadcdcfcff1f2f2fafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafaffffffa5bfbd205f5c5786836f97958cadab8cadaba5bfbd
-a5bfbda5bfbda5bfbda5bfbda5bfbda5bfbd8cadab8cadab8cadab6f97956f97958cadab
-a5bfbdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaffffff
-dbdcdc0f54502a67635786836f97958cadaba5bfbda5bfbda5bfbda5bfbda5bfbd8cadab
-f1f2f2dbdcdcbcc1c1bcc1c1acadad979b9a858888717474717474717474595f5f595f5f
-3e4a4a233130042523031918031918031918042523042523013230013230013f3c013f3c
-013f3c013f3c013f3c004945013f3c013f3c0132300132300425233e4a4a858888acadad
-dbdcdcf1f2f2fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafafafafafafafa717474042523013230
-013230013f3c165a564478755786835786835786835786835786834478752a6763004945
-013230013230013230013f3ca5bfbdffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafafafafaf1f2f2acadad233130233130013230013230165a56366e6b447875
-447875447875366e6ba5bfbdfffffff1f2f2f1f2f2dbdcdcdbdcdcbcc1c1bcc1c1acadad
-979b9a858888858888717474717474717474595f5f595f5f3e4a4a233130233130031918
-031918031918031918031918042523042523042523042523042523042523031918233130
-595f5f858888acadadcdcfcfe7e8e7fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2
-dbdcdc979b9a7174747174747174743e4a4a031918013f3c084f4b0f54500f54500f5450
-084f4b013f3c013230595f5f717474717474858888979b9ae7e8e7ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafaf1f2f2dbdcdcbcc1c1acadad979b9a979b9a
-3e4a4a042523004945004945084f4b004945165a56e7e8e7fffffffffffffffffffafafa
-fafafaf1f2f2e7e8e7dbdcdccdcfcfbcc1c1bcc1c1979b9a979b9a858888858888717474
-717474717474595f5f595f5f595f5f3e4a4a233130233130233130233130042523233130
-042523233130595f5f717474979b9abcc1c1dbdcdcf1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7cdcfcfacadad979b9a979b9a858888858888233130013230
-004945004945004945004945013f3c013f3c717474979b9a979b9a979b9aacadadcdcfcf
-f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2dbdcdc
-bcc1c1979b9a858888858888595f5f013230013f3c004945004945004945717474e7e8e7
-fafafafffffffffffffffffffafafafffffffafafafafafaf1f2f2f1f2f2dbdcdcdbdcdc
-cdcfcfbcc1c1acadadacadad979b9a979b9a858888858888717474717474717474717474
-595f5f717474595f5f717474717474858888979b9aacadadbcc1c1e7e8e7f1f2f2fafafa
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaf1f2f2dbdcdcbcc1c1acadad979b9a
-8588888588883e4a4a013f3c0049450049450049450049450049453e4a4a979b9a979b9a
-acadadacadadbcc1c1dbdcdcf1f2f2fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7cdcfcfbcc1c1acadad8588883e4a4a013f3c004945004945
-004945004945979b9af1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffafafafafafaf1f2f2f1f2f2e7e8e7dbdcdcdbdcdccdcfcfbcc1c1bcc1c1acadad
-acadad979b9a979b9a979b9a979b9a858888858888979b9a979b9aacadadbcc1c1cdcfcf
-e7e8e7fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa
-f1f2f2dbdcdcdbdcdccdcfcfacadad85888816423f013f3c004945004945004945004945
-004945858888bcc1c1cdcfcfcdcfcfdbdcdcdbdcdcf1f2f2fafafafafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafaf1f2f2f1f2f2dbdcdccdcfcf979b9a
-16423f013f3c004945004945004945224d4bcdcfcff1f2f2ffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2
-f1f2f2e7e8e7e7e8e7dbdcdcdbdcdcdbdcdccdcfcfbcc1c1cdcfcfbcc1c1bcc1c1bcc1c1
-cdcfcfdbdcdce7e8e7f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafafafafafafafae7e8e7cdcfcf858888013f3c013f3c
-004945004945004945004945205f5cbcc1c1e7e8e7f1f2f2f1f2f2f1f2f2fafafafafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafaf1f2f2dbdcdc858888013f3c004945004945004945004945578683e7e8e7fafafa
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2f1f2f2f1f2f2
-e7e8e7e7e8e7f1f2f2f1f2f2f1f2f2f1f2f2fafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-dbdcdc595f5f013f3c004945004945004945004945004945717474e7e8e7fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff1f2f2dbdcdc595f5f013f3c004945004945004945
-013f3cacadadf1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafafafafafafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafae7e8e7bcc1c1224d4b004945004945004945004945004945004945
-979b9af1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2bcc1c1224d4b
-013f3c004945004945004945205f5ccdcfcffafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafae7e8e7acadad013f3c013f3c004945
-004945004945004945165a56cdcfcffafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7979b9a013f3c004945004945004945004945717474e7e8e7fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc
-717474013f3c004945004945004945004945004945447875e7e8e7fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2dbdcdc717474013f3c004945004945004945004945
-acadadfafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2cdcfcf3e4a4a013f3c004945004945004945004945004945979b9a
-fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2cdcfcf224d4b013f3c
-0049450049450049452a6763dbdcdcfafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafae7e8e7acadad013f3c004945004945004945
-0049450049450f5450cdcfcff1f2f2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-e7e8e7979b9a013f3c013f3c004945004945004945858888e7e8e7fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc858888
-013f3c004945004945004945004945004945366e6be7e8e7fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafadbdcdc717474013f3c004945004945004945004945acadad
-f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafaf1f2f2cdcfcf2a6763013f3c004945004945004945004945004945979b9af1f2f2
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2f1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafaf1f2f2f1f2f2fafafafffffffafafacdcfcf205f5c013f3c004945
-0049450049452a6763dbdcdcfafafaffffffffffffffffffffffffffffffffffffffffff
-fafafaf1f2f2f1f2f2fafafafafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2fafafaffffffffffffffffffffffffffffff
-fffffffffffffafafaf1f2f2fafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffe7e8e7bcc1c116423f013f3c004945004945004945
-004945084f4bbcc1c1f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2bcc1c18cadab8cadab
-a5bfbda5bfbdbcc1c1cdcfcffafafaffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafacdcfcfa5bfbd8cadab6f97958cadaba5bfbdcdcfcfcdcfcf
-bcc1c1224d4b004945004945004945004945858888f1f2f2fafafaffffffffffffffffff
-fffffff1f2f2cdcfcfa5bfbd8cadab6f97956f97958cadaba5bfbddbdcdce7e8e7ffffff
-fffffffffffffafafadbdcdcdbdcdcdbdcdce7e8e7ffffffffffffffffffffffffffffff
-ffffffffffffe7e8e7bcc1c1a5bfbd8cadaba5bfbda5bfbdbcc1c1cdcfcffafafaffffff
-fffffffffffffffffffffffffffffff1f2f2bcc1c18cadab8cadaba5bfbdcdcfcfbcc1c1
-ffffffffffffffffffffffffffffffbcc1c18cadaba5bfbda5bfbddbdcdcfafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7858888013f3c
-004945004945004945004945004945366e6bdbdcdcfafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7e8e78cadab
-6f97954478752a67632a6763366e6b5786838cadaba5bfbdbcc1c1fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffdbdcdc8cadab6f9795447875084f4b013230
-0132300f54506f97958cadab6f9795205f5c004945004945004945084f4bbcc1c1f1f2f2
-fafafaffffffffffffffffffbcc1c16f97956f9795447875165a5616423f16423f013f3c
-366e6b8cadabcdcfcfcdcfcfffffffbcc1c18cadab6f97958cadab8cadaba5bfbddbdcdc
-ffffffffffffffffffffffffe7e8e78cadab6f9795447875205f5c2a6763366e6b578683
-8cadaba5bfbda5bfbdfafafafffffffffffffffffffafafaa5bfbd578683578683578683
-5786836f97956f97958cadabe7e8e7fffffffffffff1f2f26f9795578683578683578683
-8cadab8cadabbcc1c1ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f1f2f2dbdcdc595f5f013f3c004945004945004945004945004945858888f1f2f2fafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa5bfbd6f9795447875084f4b013230233130042523013230004945205f5c578683
-6f9795bcc1c1ffffffffffffffffffffffffffffffffffffffffffa5bfbd578683447875
-0f545016423f595f5f858888858888233130013230205f5c447875205f5c084f4b004945
-0049452a6763dbdcdcfafafafffffffffffff1f2f26f9795447875447875205f5c013f3c
-595f5f979b9aacadad595f5f042523205f5c6f9795a5bfbda5bfbd6f9795205f5c165a56
-205f5c4478756f97958cadabf1f2f2ffffffffffffa5bfbd578683447875084f4b013230
-233130031918013230004945205f5c5786836f9795cdcfcffffffffffffff1f2f26f9795
-2a6763084f4b013f3c004945084f4b165a562a6763366e6bcdcfcffffffffafafa578683
-2a67632a6763165a560f54502a67634478756f9795f1f2f2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafae7e8e7bcc1c116423f013f3c004945004945004945004945
-084f4bacadadfafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafa979b9a4478752a6763013f3c3e4a4a8588888588883e4a4a
-031918013f3c004945205f5c4478758cadabffffffffffffffffffffffffffffffffffff
-979b9a366e6b366e6b084f4b16423f717474979b9a979b9a979b9a858888233130013230
-004945084f4b004945004945004945858888f1f2f2fafafafffffff1f2f2578683366e6b
-2a67630f5450013f3c595f5f979b9a979b9a979b9a858888233130013230205f5c447875
-447875084f4b013230031918031918013230013f3c366e6bf1f2f2fafafa6f9795447875
-2a6763013f3c3e4a4a8588888588883e4a4a042523013f3c004945205f5c447875a5bfbd
-fffffff1f2f2578683165a560132303e4a4a233130042523013f3c004945084f4b205f5c
-dbdcdcfafafa5786830f5450004945013f3c013f3c013f3c0049450f54502a6763f1f2f2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafadbdcdc979b9a013f3c004945
-0049450049450049450049452a6763dbdcdcfafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafa5786832a6763205f5c013f3c3e4a4a
-979b9a858888717474717474233130013f3c004945084f4b0f5450979b9affffffffffff
-fffffffffffffafafa6f97952a67632a6763004945013230717474acadadacadad979b9a
-8588888588883e4a4a042523013f3c0049450049450049450f5450bcc1c1f1f2f2fafafa
-fafafa578683165a56165a56084f4b013f3c224d4b979b9aacadadacadad979b9a717474
-2331300132300049450f5450084f4b3e4a4a8588883e4a4a031918031918042523858888
-f1f2f26f9795366e6b165a56013f3c3e4a4a979b9a858888717474717474042523013f3c
-0049450f54500f5450acadadffffff578683084f4b16423f595f5f858888595f5f013230
-013f3c004945004945447875f1f2f2979b9a084f4b013f3c042523031918031918042523
-013230013230578683fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2
-dbdcdc595f5f013f3c004945004945004945004945004945858888f1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafafffffffafafa6f9795205f5c
-165a56004945224d4b979b9aacadadacadad979b9a717474013230013f3c004945004945
-004945bcc1c1ffffffffffffffffffffffff979b9a205f5c205f5c004945013f3c595f5f
-bcc1c1bcc1c1cdcfcfcdcfcfacadad979b9a595f5f013230013f3c004945004945004945
-366e6bdbdcdcfafafaffffff8cadab084f4b0f5450084f4b004945013f3c717474bcc1c1
-cdcfcfcdcfcfacadad85888816423f0132300049450f5450205f5c366e6b858888717474
-595f5f595f5f717474cdcfcf5786832a6763165a56013f3c3e4a4a979b9aacadadacadad
-979b9a717474013230013f3c004945004945084f4bbcc1c1979b9a013f3c16423f717474
-979b9a858888595f5f013230013f3c004945084f4b858888bcc1c1205f5c013f3c233130
-3e4a4a3e4a4a233130031918031918224d4bbcc1c1fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff1f2f2bcc1c1224d4b013f3c004945004945004945004945004945
-acadadf1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-ffffff979b9a084f4b165a5600494516423f858888bcc1c1cdcfcfcdcfcfbcc1c1717474
-013f3c004945004945013f3c2a6763e7e8e7fafafafafafaffffff8cadab0f5450165a56
-084f4b013f3c224d4bacadadcdcfcfe7e8e7f1f2f2f1f2f2cdcfcfacadad595f5f013f3c
-004945004945004945004945858888f1f2f2fafafadbdcdc205f5c004945084f4b004945
-0049453e4a4abcc1c1e7e8e7f1f2f2f1f2f2cdcfcf979b9a16423f013f3c004945165a56
-366e6b447875979b9a858888858888858888bcc1c17174740f5450165a5600494516423f
-858888bcc1c1cdcfcfcdcfcfacadad717474013f3c004945004945013f3c2a6763cdcfcf
-595f5f042523858888acadadacadad979b9a595f5f013f3c004945084f4b165a56acadad
-44787500494516423f717474717474717474595f5f595f5f595f5facadaddbdcdcf1f2f2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafae7e8e7979b9a013f3c004945004945
-004945004945004945205f5cdbdcdcf1f2f2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbcc1c10f54500f5450084f4b013f3c595f5fcdcfcfdbdcdc
-f1f2f2e7e8e7cdcfcf205f5c004945004945013f3c013f3c979b9af1f2f2fafafaffffff
-cdcfcf165a560f5450084f4b004945013f3c979b9acdcfcff1f2f2fafafafafafafafafa
-e7e8e7bcc1c13e4a4a013f3c004945004945004945084f4bbcc1c1f1f2f2f1f2f2979b9a
-013f3c004945004945004945004945858888dbdcdcf1f2f2fffffff1f2f2dbdcdc979b9a
-16423f013f3c0049450f54502a6763447875cdcfcfbcc1c1acadadacadad979b9a084f4b
-0f5450084f4b013f3c595f5fcdcfcfdbdcdcf1f2f2f1f2f2bcc1c1205f5c004945004945
-013f3c013f3c979b9abcc1c1acadad979b9aacadadcdcfcfcdcfcfacadad224d4b013f3c
-0049450f54504478758588880f545016423f858888979b9a979b9a979b9a858888858888
-979b9abcc1c1e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc
-717474013f3c004945004945004945004945004945717474f1f2f2fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafae7e8e7366e6b004945084f4b004945
-16423facadaddbdcdcfafafafffffff1f2f2858888084f4b004945013230042523717474
-cdcfcff1f2f2fafafae7e8e7366e6b084f4b084f4b004945013f3c595f5fcdcfcfe7e8e7
-fafafafafafafffffffafafadbdcdcacadad16423f004945004945004945004945366e6b
-dbdcdce7e8e7dbdcdc2a6763013f3c004945004945084f4b0f5450bcc1c1f1f2f2fafafa
-fffffff1f2f2cdcfcf979b9a013230013f3c004945084f4b0f5450578683f1f2f2e7e8e7
-dbdcdccdcfcf2a6763084f4b084f4b004945224d4bacadaddbdcdcfafafafffffff1f2f2
-578683084f4b004945013230042523717474bcc1c1bcc1c1bcc1c1bcc1c1dbdcdce7e8e7
-dbdcdcacadad013f3c013f3c084f4b205f5c7174742a6763013f3c717474acadadcdcfcf
-cdcfcfbcc1c1bcc1c1bcc1c1cdcfcfdbdcdcf1f2f2fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaf1f2f2cdcfcf224d4b013f3c004945004945004945004945004945acadad
-f1f2f2fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafa979b9a
-004945004945084f4b084f4b447875dbdcdcf1f2f2ffffffe7e8e76f9795165a56004945
-013230042523595f5fbcc1c1dbdcdcf1f2f2fafafa858888004945084f4b084f4b004945
-16423f979b9adbdcdcfafafafffffffffffffffffffafafae7e8e7717474004945004945
-004945004945004945979b9ae7e8e7e7e8e7bcc1c116423f013f3c004945084f4b0f5450
-366e6bdbdcdcf1f2f2fffffffffffff1f2f2cdcfcf717474013f3c004945004945084f4b
-004945858888fafafafafafaf1f2f2858888004945004945084f4b084f4b447875dbdcdc
-f1f2f2ffffffe7e8e76f9795205f5c013f3c013230042523717474acadadcdcfcfdbdcdc
-cdcfcfdbdcdce7e8e7f1f2f2dbdcdc717474013f3c004945165a56366e6b447875084f4b
-595f5fbcc1c1dbdcdce7e8e7f1f2f2e7e8e7dbdcdce7e8e7e7e8e7fafafafafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafae7e8e7acadad013f3c013f3c004945004945
-004945004945165a56cdcfcff1f2f2fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafacdcfcf224d4b004945084f4b165a56366e6bacadadf1f2f2e7e8e7a5bfbd
-578683205f5c013f3c042523233130717474acadadcdcfcff1f2f2f1f2f2bcc1c10f5450
-004945084f4b004945013f3c447875cdcfcff1f2f2fafafafffffffffffffafafaf1f2f2
-bcc1c10f5450004945004945004945004945084f4bbcc1c1f1f2f2dbdcdc979b9a013230
-013f3c0049450f5450165a56858888f1f2f2fafafafffffffafafaf1f2f2cdcfcf595f5f
-013f3c004945004945004945004945bcc1c1fafafafafafacdcfcf224d4b004945084f4b
-165a56366e6bacadadf1f2f2e7e8e7acadad578683205f5c013f3c042523233130717474
-acadadcdcfcfe7e8e7f1f2f2f1f2f2f1f2f2fafafaf1f2f2cdcfcf595f5f013f3c004945
-165a56366e6b165a56224d4bacadaddbdcdcf1f2f2fafafafffffffafafafafafafafafa
-fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc717474
-013f3c004945004945004945004945004945717474e7e8e7fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2858888004945004945004945165a56447875
-979b9a8cadab5786832a6763013f3c0425232331303e4a4a858888acadadcdcfcfe7e8e7
-f1f2f2e7e8e7717474004945004945004945004945013f3c979b9ae7e8e7fafafaffffff
-fffffffffffffafafae7e8e7717474004945004945004945004945004945447875dbdcdc
-f1f2f2dbdcdc858888013230013f3c0049450f5450205f5c6f9795fafafaffffffffffff
-fafafae7e8e7bcc1c116423f0049450049450049450049452a6763dbdcdcf1f2f2f1f2f2
-858888004945004945004945165a56447875979b9a8cadab5786832a6763013f3c042523
-233130595f5f858888acadadcdcfcfe7e8e7fafafafffffffafafafffffffafafae7e8e7
-acadad16423f004945004945084f4b084f4b013f3c858888cdcfcfe7e8e7fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafaf1f2f2cdcfcf3e4a4a013f3c004945004945004945004945004945979b9afafafa
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdc2a6763004945
-004945004945004945004945084f4b013f3c0132302331303e4a4a717474858888979b9a
-acadadcdcfcfe7e8e7f1f2f2f1f2f2bcc1c1084f4b0049450049450049450049452a6763
-cdcfcff1f2f2fafafafffffffffffffafafafafafabcc1c10f5450004945004945004945
-004945004945858888f1f2f2e7e8e7cdcfcf858888042523013230004945165a562a6763
-acadadfffffffffffffffffffafafae7e8e7858888004945004945004945013f3c013f3c
-979b9ae7e8e7f1f2f2cdcfcf205f5c004945004945004945004945004945084f4b013f3c
-0132302331303e4a4a717474858888979b9aacadadcdcfcfe7e8e7fafafaffffffffffff
-fffffffffffffafafae7e8e7858888013f3c004945004945004945013f3c205f5cbcc1c1
-e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffe7e8e7acadad16423f004945004945004945004945
-0049450f5450cdcfcff1f2f2ffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f2f2e7e8e7
-f1f2f2acadad013f3c013f3c004945004945013f3c3e4a4a595f5f717474858888979b9a
-979b9a979b9aacadadbcc1c1dbdcdcf1f2f2fafafafafafae7e8e7717474013f3c004945
-004945004945004945858888e7e8e7fafafafffffffffffffafafafafafae7e8e72a6763
-004945004945004945004945004945084f4bbcc1c1f1f2f2e7e8e7cdcfcf979b9a233130
-042523013f3c205f5c366e6bacadadfffffffffffffafafaf1f2f2cdcfcf205f5c004945
-004945013f3c013f3c3e4a4acdcfcfe7e8e7e7e8e7acadad013f3c013f3c004945004945
-013f3c3e4a4a595f5f717474858888979b9a979b9a979b9a979b9abcc1c1dbdcdce7e8e7
-fafafafafafafffffffffffffffffffffffff1f2f2cdcfcf595f5f013f3c004945004945
-004945013f3c858888dbdcdcf1f2f2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdc858888013f3c
-004945004945004945004945004945447875e7e8e7fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffe7e8e78cadaba5bfbdcdcfcf717474013f3c004945004945084f4b004945717474
-acadadacadad979b9a979b9aacadadbcc1c1cdcfcfe7e8e7f1f2f2fafafafffffff1f2f2
-bcc1c1224d4b004945004945004945004945084f4ba5bfbdf1f2f2ffffffffffffffffff
-fafafafafafa858888004945013f3c013f3c004945004945004945366e6be7e8e7fafafa
-e7e8e7cdcfcf979b9a3e4a4a0319180132300f5450578683acadadffffffffffffffffff
-f1f2f2578683004945004945013f3c01323016423facadaddbdcdcf1f2f2dbdcdc717474
-013f3c004945004945084f4b004945858888acadadacadadacadad979b9aacadadbcc1c1
-cdcfcfe7e8e7f1f2f2fafafafffffffffffffffffffffffffffffffafafae7e8e7bcc1c1
-224d4b013f3c004945004945004945205f5ccdcfcfe7e8e7fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f1f2f2cdcfcf595f5f013f3c004945004945004945004945004945979b9af1f2f2fafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f25786835786836f9795bcc1c1595f5f013f3c004945
-084f4b0f54500f5450979b9aacadadacadadbcc1c1cdcfcfdbdcdce7e8e7f1f2f2fafafa
-fffffffffffffafafae7e8e7979b9a013f3c004945004945084f4b0049452a6763dbdcdc
-fafafafffffffffffffafafaffffffacadad084f4b16423f224d4b013f3c004945004945
-004945858888f1f2f2fafafaf1f2f2cdcfcf979b9a717474042523031918013230366e6b
-8cadabf1f2f2fffffff1f2f2979b9a165a56004945013f3c013230233130858888cdcfcf
-e7e8e7f1f2f2cdcfcf3e4a4a013f3c004945084f4b0f5450165a56979b9aacadadacadad
-bcc1c1cdcfcfdbdcdce7e8e7f1f2f2fafafafafafaffffffffffffffffffffffffffffff
-fffffffafafae7e8e7979b9a013f3c004945004945004945004945858888dbdcdcfafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafae7e8e7a5bfbd16423f013f3c004945004945004945004945
-0f5450bcc1c1fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffafafafafafa5786832a67632a6763447875
-bcc1c1224d4b013f3c004945084f4b205f5c2a6763bcc1c1dbdcdce7e8e7e7e8e7f1f2f2
-fafafafafafafafafafffffffffffffffffff1f2f2dbdcdc595f5f013f3c004945004945
-084f4b084f4b717474f1f2f2fafafafffffffafafafafafacdcfcf2a6763004945595f5f
-16423f013f3c0049450049450f5450bcc1c1f1f2f2fffffffafafadbdcdcacadad858888
-595f5f042523031918013f3c6f9795a5bfbdacadad6f9795205f5c013f3c013230042523
-233130858888bcc1c1e7e8e7f1f2f2dbdcdcbcc1c116423f013f3c004945084f4b205f5c
-366e6bbcc1c1dbdcdce7e8e7e7e8e7f1f2f2fafafafafafafafafaffffffffffffffffff
-fffffffffffffffffffffffffffffff1f2f2dbdcdc595f5f013f3c004945004945004945
-084f4bbcc1c1e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafae7e8e7858888013f3c004945
-004945004945004945004945366e6bdbdcdcfafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff979b9a
-165a562a6763084f4b858888979b9a16423f013f3c004945084f4b2a6763447875e7e8e7
-f1f2f2fafafafafafafafafafafafafffffffffffffffffffafafafafafaf1f2f2bcc1c1
-224d4b013f3c0049450049450f5450084f4b8cadabfafafaffffffffffffffffffe7e8e7
-447875084f4b595f5f717474013f3c004945004945004945366e6bdbdcdcfafafaffffff
-fffffff1f2f2cdcfcf979b9a717474595f5f3e4a4a16423f0049452a6763205f5c013f3c
-042523031918233130595f5f858888bcc1c1dbdcdcf1f2f2fafafadbdcdcacadad013230
-013f3c004945084f4b2a6763578683e7e8e7f1f2f2fafafafafafafafafaffffffffffff
-fffffffffffffafafafafafafffffffffffffffffffffffffafafaf1f2f2bcc1c1224d4b
-013f3c004945004945004945595f5fdbdcdcf1f2f2ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2
-dbdcdc595f5f013f3c004945004945004945004945004945858888f1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffacadad165a56165a56165a560f5450979b9a858888013230013f3c004945
-0f5450447875578683f1f2f2fafafaffffffffffffffffffffffffffffffffffffdbdcdc
-8cadaba5bfbde7e8e7acadad16423f013f3c004945004945165a562a6763bcc1c1fafafa
-fffffffffffff1f2f2578683165a56224d4b979b9a3e4a4a013f3c004945084f4b084f4b
-858888f1f2f2fffffffafafacdcfcfcdcfcfdbdcdcbcc1c1979b9a858888595f5f224d4b
-0132302331303e4a4a595f5f595f5f717474717474979b9abcc1c1cdcfcff1f2f2fafafa
-f1f2f2cdcfcf979b9a013230013f3c0049450f5450366e6b578683f1f2f2ffffffffffff
-fffffffffffffffffffafafaffffffcdcfcf8cadaba5bfbdffffffffffffffffffffffff
-fafafae7e8e7979b9a013f3c004945004945004945004945979b9af1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafaf1f2f2bcc1c1084f4b004945004945004945004945084f4b084f4b
-bcc1c1fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbcc1c1205f5c165a56165a56084f4b2a6763acadad
-858888233130013230004945084f4b366e6b6f9795dbdcdcffffffffffffffffffffffff
-ffffffffffffcdcfcf578683447875578683dbdcdc979b9a013230013f3c004945004945
-2a6763578683cdcfcffffffffffffff1f2f26f9795165a56224d4b979b9a979b9a16423f
-004945004945165a56205f5cacadadfafafaf1f2f26f97956f97956f9795f1f2f2e7e8e7
-acadad717474447875084f4b16423f858888979b9a858888858888979b9aacadadbcc1c1
-dbdcdcf1f2f2fafafafafafaf1f2f2cdcfcf858888042523013f3c004945084f4b447875
-6f9795dbdcdcffffffffffffffffffffffffffffffffffffbcc1c15786834478756f9795
-fffffffffffffffffffffffffafafadbdcdc717474013f3c0049450049450049450f5450
-bcc1c1f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe7e8e7717474004945004945004945
-004945084f4b205f5c447875dbdcdcfafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbcc1c1366e6b205f5c0f5450
-084f4b004945717474bcc1c1979b9a233130013230013f3c0049452a67636f9795a5bfbd
-fafafaffffffffffffffffffe7e8e78cadab4478750f5450205f5ccdcfcfcdcfcf858888
-042523013f3c0049450049452a67636f9795bcc1c1ffffffe7e8e76f9795205f5c16423f
-979b9aacadad858888013f3c013f3c0049452a6763578683dbdcdcdbdcdc6f9795205f5c
-0f5450bcc1c1ffffffbcc1c1366e6b578683578683205f5c858888979b9a979b9aacadad
-acadadbcc1c1cdcfcfe7e8e7fafafafafafafffffffafafaf1f2f2cdcfcf979b9a233130
-0132300049450049452a67636f9795a5bfbdfafafaffffffffffffffffffe7e8e78cadab
-4478750f5450205f5cdbdcdcfffffffffffffffffffffffff1f2f2cdcfcf224d4b013f3c
-004945004945004945447875e7e8e7fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7979b9a
-205f5c084f4b084f4b0049450049450f5450447875979b9ae7e8e7ffffffffffffffffff
-fffffffffffffffffffafafafafafafafafafafafafafafafafafaf1f2f2e7e8e7a5bfbd
-4478752a6763165a56084f4b004945004945acadadbcc1c1979b9a233130042523013f3c
-0049450f54504478758cadabcdcfcfdbdcdcdbdcdca5bfbd6f9795447875004945224d4b
-acadaddbdcdcbcc1c1979b9a042523013230013f3c004945165a56578683a5bfbda5bfbd
-6f9795205f5c16423f858888bcc1c1bcc1c1717474013f3c0049450049452a67636f9795
-8cadab6f9795165a5616423facadadf1f2f2bcc1c1165a56165a562a6763447875578683
-acadadbcc1c1cdcfcfdbdcdcdbdcdce7e8e7fafafafafafafafafaffffffffffffffffff
-f1f2f2cdcfcf979b9a2331300425230132300049450f54505786838cadabcdcfcfdbdcdc
-bcc1c1a5bfbd6f9795366e6b004945224d4bacadadf1f2f2fafafafffffffffffffafafa
-e7e8e7acadad013f3c004945004945004945004945979b9af1f2f2fafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaffffff8cadab
-8cadab8cadab6f9795366e6b084f4b013f3c013f3c013f3c013f3c013f3c0f5450578683
-a5bfbdbcc1c1a5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbda5bfbd
-a5bfbd8cadab6f9795447875205f5c084f4b004945004945004945205f5cbcc1c1cdcfcf
-979b9a595f5f031918042523013230013f3c0f5450366e6b6f97956f97956f9795447875
-0f54500132303e4a4a979b9acdcfcfdbdcdcbcc1c1979b9a3e4a4a031918013230013f3c
-004945165a56366e6b2a6763084f4b16423f979b9abcc1c1bcc1c1bcc1c13e4a4a013230
-013f3c0049450049450f5450165a56013f3c224d4b979b9abcc1c1dbdcdc858888013230
-004945084f4b4478756f9795acadadf1f2f2fafafafafafafafafafafafaffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf979b9a595f5f031918042523013230013f3c
-0f5450366e6b6f97956f97956f9795366e6b0f54500132303e4a4a979b9acdcfcfe7e8e7
-fafafafffffffffffffafafae7e8e7717474013230013f3c013f3c013f3c224d4bbcc1c1
-f1f2f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafafafafae7e8e7224d4b013f3c16423f013f3c042523042523031918031918031918
-031918042523042523013230013f3c084f4b0f545016423f084f4b16423f084f4b16423f
-084f4b16423f084f4b16423f00494516423f013f3c013230042523042523042523013230
-013f3c717474e7e8e7cdcfcfacadad8588883e4a4a031918031918042523042523013230
-013230013230013230042523233130595f5facadadbcc1c1dbdcdce7e8e7cdcfcf979b9a
-595f5f0425230319180425230132300425230425230425233e4a4a979b9abcc1c1cdcfcf
-dbdcdcacadad16423f042523042523013230042523042523042523595f5facadadacadad
-bcc1c1cdcfcf717474042523013230004945205f5c6f9795a5bfbdbcc1c1e7e8e7ffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f2f2dbdcdcacadad858888
-3e4a4a031918031918042523042523013230013230013230013230042523233130717474
-979b9abcc1c1dbdcdcf1f2f2fafafafffffffffffff1f2f2cdcfcf3e4a4a042523031918
-042523042523595f5fe7e8e7fafafaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafae7e8e7cdcfcf595f5f3e4a4a3e4a4a3e4a4a233130
-3e4a4a2331302331302331302331302331303e4a4a3e4a4a595f5f595f5f595f5f595f5f
-595f5f595f5f595f5f595f5f3e4a4a3e4a4a3e4a4a3e4a4a3e4a4a3e4a4a233130233130
-233130233130031918031918042523979b9af1f2f2e7e8e7bcc1c1979b9a7174743e4a4a
-2331300319180319180319180319180425233e4a4a595f5f858888acadadbcc1c1dbdcdc
-f1f2f2f1f2f2dbdcdcacadad858888595f5f233130031918031918042523233130717474
-979b9abcc1c1cdcfcfe7e8e7dbdcdcacadad595f5f0319180319180319182331303e4a4a
-858888acadadacadaddbdcdcdbdcdcbcc1c1858888042523042523013f3c0049452a6763
-578683a5bfbdcdcfcfdbdcdcf1f2f2ffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7bcc1c18588887174743e4a4a233130031918031918031918031918233130
-233130717474858888979b9abcc1c1dbdcdcf1f2f2fafafafffffffffffffafafae7e8e7
-bcc1c1595f5f2331302331303e4a4a3e4a4aacadadf1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafadbdcdcbcc1c1acadad
-979b9a858888858888858888717474717474717474717474717474858888858888858888
-979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a
-858888858888858888717474595f5f595f5f595f5f595f5f717474cdcfcff1f2f2f1f2f2
-dbdcdcacadad858888717474717474595f5f595f5f595f5f717474717474858888979b9a
-acadadbcc1c1dbdcdcf1f2f2fafafafafafae7e8e7cdcfcf979b9a717474717474595f5f
-595f5f717474858888acadadbcc1c1dbdcdcf1f2f2f1f2f2dbdcdcacadad858888595f5f
-595f5f595f5f717474979b9aacadadbcc1c1dbdcdce7e8e7e7e8e7bcc1c1979b9a595f5f
-233130013f3c013f3c0049450f54504478756f9795a5bfbdcdcfcfcdcfcffafafaffffff
-fffffffffffffffffffffffffafafaf1f2f2dbdcdcacadad858888717474717474595f5f
-595f5f595f5f717474717474858888979b9aacadadcdcfcfe7e8e7f1f2f2ffffffffffff
-fffffffffffffafafae7e8e7bcc1c1979b9a717474717474858888acadaddbdcdcf1f2f2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafadbdcdcbcc1c1acadad979b9a979b9a979b9a979b9a979b9a979b9a979b9a979b9a
-979b9a979b9a979b9a979b9a979b9a979b9a979b9aacadad979b9a979b9aacadad979b9a
-979b9a979b9a979b9a979b9a979b9a979b9a858888979b9a858888858888858888979b9a
-bcc1c1e7e8e7fafafafafafaf1f2f2dbdcdcbcc1c1979b9a858888858888858888858888
-858888979b9aacadadbcc1c1dbdcdce7e8e7fafafafffffffffffffafafaf1f2f2dbdcdc
-bcc1c1979b9a858888858888858888979b9aacadadbcc1c1dbdcdcf1f2f2fafafafafafa
-e7e8e7bcc1c1979b9a858888858888858888acadadacadadcdcfcfe7e8e7f1f2f2fafafa
-f1f2f2dbdcdc979b9a595f5f16423f042523042523013230013230004945165a56447875
-8cadaba5bfbdcdcfcfdbdcdcfffffffffffffffffffffffffffffffafafae7e8e7cdcfcf
-bcc1c1979b9a858888858888858888858888858888979b9aacadadbcc1c1cdcfcfe7e8e7
-f1f2f2fafafafffffffffffffffffffffffffafafae7e8e7cdcfcfacadad979b9a979b9a
-acadadcdcfcfe7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffafafaf1f2f2dbdcdccdcfcfcdcfcfcdcfcfcdcfcfcdcfcf
-cdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcf
-cdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfcdcfcfbcc1c1bcc1c1bcc1c1bcc1c1
-bcc1c1acadadacadadbcc1c1cdcfcff1f2f2fafafafffffffafafaf1f2f2dbdcdccdcfcf
-bcc1c1acadadbcc1c1acadadbcc1c1cdcfcfcdcfcfe7e8e7f1f2f2fafafaffffffffffff
-fffffffffffffafafaf1f2f2e7e8e7cdcfcfbcc1c1bcc1c1bcc1c1cdcfcfdbdcdce7e8e7
-fafafafafafafffffffafafaf1f2f2dbdcdcbcc1c1bcc1c1bcc1c1bcc1c1cdcfcfdbdcdc
-f1f2f2fafafaffffffffffffdbdcdc979b9a578683205f5c013230233130233130031918
-031918013230013f3c084f4b205f5c5786838cadabbcc1c1bcc1c1f1f2f2ffffffffffff
-fffffffffffffafafaf1f2f2dbdcdccdcfcfbcc1c1acadadacadadacadadbcc1c1cdcfcf
-dbdcdce7e8e7f1f2f2fafafafffffffffffffffffffffffffffffffffffffafafaf1f2f2
-e7e8e7cdcfcfcdcfcfcdcfcfdbdcdce7e8e7f1f2f2fafafaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2f1f2f2
-f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2
-fafafaf1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2f1f2f2e7e8e7f1f2f2
-f1f2f2f1f2f2f1f2f2f1f2f2e7e8e7e7e8e7e7e8e7e7e8e7e7e8e7fafafaffffffffffff
-fffffffafafafafafaf1f2f2e7e8e7e7e8e7dbdcdce7e8e7e7e8e7f1f2f2f1f2f2fafafa
-fffffffffffffffffffffffffffffffffffffffffffafafafafafaf1f2f2e7e8e7e7e8e7
-e7e8e7e7e8e7f1f2f2fafafafafafafffffffffffffffffffafafaf1f2f2e7e8e7dbdcdc
-e7e8e7f1f2f2f1f2f2fafafafffffffffffffafafaa5bfbd6f9795578683165a5616423f
-595f5f595f5f595f5f3e4a4a233130031918042523013230013f3c084f4b2a67636f9795
-a5bfbdbcc1c1e7e8e7fffffffffffffffffffffffffafafafafafaf1f2f2e7e8e7e7e8e7
-e7e8e7e7e8e7e7e8e7f1f2f2f1f2f2fafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafafafafaf1f2f2f1f2f2f1f2f2fafafafafafafafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafafafafafafafafafafafafafa
-fafafafffffffffffffffffffffffffffffffffffffffffffafafafafafafafafafafafa
-fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafafafafafafafafafafafafafaffffffffffffffffffffffffffffff
-fffffffafafafafafafafafafafafafafafafafafafafafaffffffdbdcdc6f9795578683
-366e6b004945224d4b858888858888858888858888717474595f5f3e4a4a031918031918
-042523013f3c0049450f54504478758cadaba5bfbdcdcfcfffffffffffffffffffffffff
-fffffffffffffafafafafafafafafafafafafafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-bcc1c1447875366e6b2a6763004945224d4b979b9aacadadbcc1c1bcc1c1acadad979b9a
-717474717474595f5f2331300319180319180132300049450049452a67636f9795a5bfbd
-cdcfcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffafafaffffffbcc1c1205f5c205f5c205f5c084f4b013f3c858888bcc1c1cdcfcf
-dbdcdce7e8e7dbdcdcbcc1c1acadad8588887174747174743e4a4a233130031918013230
-013f3c0049452a67636f97958cadabf1f2f2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafaf1f2f2366e6b0049450f54500f5450084f4b
-2a6763bcc1c1dbdcdce7e8e7fafafafafafaf1f2f2e7e8e7cdcfcfbcc1c1979b9a858888
-717474595f5f233130031918013f3c004945084f4b366e6b578683a5bfbdffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2bcc1c1013f3c
-013f3c0049450f54502a6763578683dbdcdcf1f2f2fafafafffffffffffffffffffafafa
-f1f2f2dbdcdccdcfcfacadad858888717474595f5f042523013230013f3c004945205f5c
-366e6b979b9affffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafae7e8e7979b9a042523013f3c004945165a56447875858888f1f2f2fafafaffffff
-fffffffffffffffffffffffffafafafafafae7e8e7dbdcdcbcc1c1979b9a7174743e4a4a
-013230013f3c004945084f4b0f5450979b9affffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcf979b9a042523013230013f3c0f5450447875
-6f9795f1f2f2fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2
-dbdcdcbcc1c1979b9a3e4a4a013230013f3c004945004945004945bcc1c1ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2bcc1c1979b9a233130
-042523013230004945366e6b8cadabbcc1c1ffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafaf1f2f2cdcfcfacadad595f5f013f3c004945013f3c013f3c
-366e6be7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-f1f2f2cdcfcf979b9a595f5f0319180319180132300f5450578683a5bfbddbdcdcffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2979b9a084f4b
-004945013f3c01323016423facadade7e8e7fafafaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff1f2f2cdcfcfacadad858888595f5f031918031918042523
-084f4b578683a5bfbdcdcfcfdbdcdcffffffffffffffffffffffffffffffffffffffffff
-f1f2f2acadad366e6b084f4b013f3c013230013230858888cdcfcff1f2f2fafafaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffafafae7e8e7bcc1c1858888
-717474595f5f233130031918031918013230205f5c6f9795a5bfbdcdcfcfdbdcdce7e8e7
-e7e8e7e7e8e7dbdcdca5bfbd6f9795366e6b084f4b013230031918233130858888bcc1c1
-e7e8e7fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffff1f2f2dbdcdcbcc1c1979b9a717474595f5f595f5f233130042523031918042523
-013f3c165a56366e6b447875447875447875366e6b205f5c013f3c042523042523233130
-595f5f979b9aacadadcdcfcff1f2f2fafafaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafafaf1f2f2dbdcdcbcc1c1979b9a858888717474
-717474717474595f5f3e4a4a3e4a4a23313023313023313023313016423f2331303e4a4a
-3e4a4a595f5f717474858888979b9aacadaddbdcdcf1f2f2fafafaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafaf1f2f2
-dbdcdccdcfcfacadad979b9a858888858888858888979b9a858888979b9a979b9a979b9a
-979b9a979b9a979b9a979b9a979b9a979b9a979b9aacadadcdcfcfdbdcdcf1f2f2fafafa
-fffffffffffffffffffffffffffffffffffffffffffffffffafafafafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffafafafafafae7e8e7dbdcdccdcfcfbcc1c1acadad979b9a979b9a
-979b9a979b9a979b9a979b9a979b9a979b9a979b9aacadadacadadacadadcdcfcfdbdcdc
-e7e8e7fafafafafafaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffafafafafafae7e8e7
-dbdcdcdbdcdccdcfcfbcc1c1bcc1c1bcc1c1acadadbcc1c1bcc1c1bcc1c1bcc1c1cdcfcf
-dbdcdce7e8e7e7e8e7f1f2f2fafafafafafaffffffffffffffffffffffffffffffffffff
-fffffffffffffafafafafafaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffafafafafafafafafafafafaf1f2f2f1f2f2e7e8e7e7e8e7e7e8e7dbdcdc
-e7e8e7e7e8e7f1f2f2f1f2f2f1f2f2fafafafafafaffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffafafafffffffafafaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fafafafafafafafafafafafafafafafafafafafafaffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafafa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-
-end
-%%PageTrailer
-%%Trailer
-%%EOF
diff --git a/sql-ledger/users/sql-ledger.png b/sql-ledger/users/sql-ledger.png
deleted file mode 100644
index 0a80264..0000000
--- a/sql-ledger/users/sql-ledger.png
+++ /dev/null
Binary files differ
diff --git a/test/cgi-test b/test/cgi-test
deleted file mode 100755
index 2dda484..0000000
--- a/test/cgi-test
+++ /dev/null
@@ -1,560 +0,0 @@
-#!/usr/bin/perl -Tw
-#
-# $Id: cgi-test,v 1.3 2001-08-21 02:32:54 ivan Exp $
-#
-# This is the beginning of a test suite for the web interface.
-# It's also excellent for populating your database with some meaningful test
-# data. (a derivative is used by the web demo)
-# It only works on an empty database (probably need empty counters too, and
-# no arbirary RADIUS attributes).
-# Usage: cgi-test http://base.freeside.url/with/path/ username password
-# (Yes, if you were properly paranoid and are using SSL, you'll need to get
-# libwww-perl working with SSL to use this.)
-
-use strict;
-#use diagnostics;
-use subs qw( big_ugly_data_structure );
-use CGI;
-use LWP::UserAgent;
-
-my ( $base_url, $username, $password ) = ( shift, shift, shift );
-#trust 'em
-$base_url =~ /^(.*)$/; $base_url = $1;
-$username =~ /^(.*)$/; $username = $1;
-$password =~ /^(.*)$/; $password = $1;
-
-my @data = &big_ugly_data_structure;
-
-my $ua = new LWP::UserAgent;
-{
- local $^W = 0;
- eval '
- sub LWP::UserAgent::get_basic_credentials {
- #my $self = shift;
- ( $username, $password );
- }
- ';
-}
-
-my $data;
-while ( $data = shift @data ) {
- my $cgi = new CGI ( $data->{'params'} );
- my $full_url = $base_url. $data->{'url'}. '?'. $cgi->query_string;
- #my $request = new HTTP::Request( 'POST', $full_url );
- my $request = new HTTP::Request( 'GET', $full_url );
- my $response = $ua->request( $request );
- if ( $response->is_redirect ) {
- die "Unexpected redirect!\n".
- "URL: $full_url\n".
- "To: ". $response->base. "\n"
- ;
- } elsif ( $response->is_success ) {
- my $location = $response->base;
- my $expected_location = $data->{'location'};
- #if ( $location =~ /^$base_url$expected_location$/ ) {
- if ( $location eq $base_url. $expected_location ) {
- #warn "cool, got expected response $location from $full_url\n";
- } else {
- die "Strange, regular response, but unexpected base!\n".
- "URL: $full_url\n".
- "Base : ". $response->base. "\n".
- "Expected: $base_url$expected_location\n".
- "Output: ". $response->content. "\n"
- ;
- }
- } elsif ( $response->is_error ) {
- die "Strange, I got an error\n".
- "URL: $full_url\n".
- "Error: ". $response->error_as_HTML. "\n".
- "Output: ". $response->content. "\n"
- ;
- } elsif ( $response->is_info ) {
- die "Strange, I got an info reponse\n".
- "URL: $full_url\n".
- "Output: ". $response->content. "\n"
- ;
- } else {
- die "Really strange, got an unrecognized response from LWP::UserAgent!\n";
- }
-}
-
-#---
-
-sub big_ugly_data_structure {
-
- (
- { 'url' => 'edit/process/part_svc.cgi',
- 'params' => {
- 'svcpart' => '',
- 'svc' => 'Shell',
- 'svcdb' => 'svc_acct',
- 'svc_acct__popnum_flag' => '',
- 'svc_acct__popnum' => '',
- 'svc_acct__dir_flag' => '',
- 'svc_acct__dir' => '',
- 'svc_acct__username_flag' => '',
- 'svc_acct__username' => '',
- 'svc_acct__uid_flag' => '',
- 'svc_acct__uid' => '',
- 'svc_acct__quota_flag' => 'F',
- 'svc_acct__quota' => '10',
- 'svc_acct__slipip_flag' => 'F',
- 'svc_acct__slipip' => '',
- 'svc_acct___password_flag' => '',
- 'svc_acct___password' => '',
- 'svc_acct__gid_flag' => '',
- 'svc_acct__gid' => '',
- 'svc_acct__shell_flag' => 'D',
- 'svc_acct__shell' => '/bin/sh',
- 'svc_acct__finger_flag' => '',
- 'svc_acct__finger' => '',
- 'svc_domain__domain_flag' => '',
- 'svc_domain__domain' => '',
- 'svc_acct_sm__domuser_flag' => '',
- 'svc_acct_sm__domuser' => '',
- 'svc_acct_sm__domuid_flag' => '',
- 'svc_acct_sm__domuid' => '',
- 'svc_acct_sm__domsvc_flag' => '',
- 'svc_acct_sm__domsvc' => '',
- },
- 'location' => 'browse/part_svc.cgi',
- },
- { 'url' => 'edit/process/part_svc.cgi',
- 'params' => {
- 'svcpart' => '',
- 'svc' => 'SLIP/PPP',
- 'svcdb' => 'svc_acct',
- 'svc_acct__popnum_flag' => '',
- 'svc_acct__popnum' => '',
- 'svc_acct__dir_flag' => '',
- 'svc_acct__dir' => '',
- 'svc_acct__username_flag' => '',
- 'svc_acct__username' => '',
- 'svc_acct__uid_flag' => '',
- 'svc_acct__uid' => '',
- 'svc_acct__quota_flag' => 'F',
- 'svc_acct__quota' => '10',
- 'svc_acct__slipip_flag' => 'D',
- 'svc_acct__slipip' => '0.0.0.0',
- 'svc_acct___password_flag' => '',
- 'svc_acct___password' => '',
- 'svc_acct__gid_flag' => '',
- 'svc_acct__gid' => '',
- 'svc_acct__shell_flag' => 'D',
- 'svc_acct__shell' => '/bin/sh',
- 'svc_acct__finger_flag' => '',
- 'svc_acct__finger' => '',
- 'svc_domain__domain_flag' => '',
- 'svc_domain__domain' => '',
- 'svc_acct_sm__domuser_flag' => '',
- 'svc_acct_sm__domuser' => '',
- 'svc_acct_sm__domuid_flag' => '',
- 'svc_acct_sm__domuid' => '',
- 'svc_acct_sm__domsvc_flag' => '',
- 'svc_acct_sm__domsvc' => '',
- },
- 'location' => 'browse/part_svc.cgi',
- },
- { 'url' => 'edit/process/part_svc.cgi',
- 'params' => {
- 'svcpart' => '',
- 'svc' => 'POP Mailbox',
- 'svcdb' => 'svc_acct',,
- 'svc_acct__popnum_flag' => 'F',
- 'svc_acct__popnum' => '',
- 'svc_acct__dir_flag' => '',
- 'svc_acct__dir' => '',
- 'svc_acct__username_flag' => '',
- 'svc_acct__username' => '',
- 'svc_acct__uid_flag' => '',
- 'svc_acct__uid' => '',
- 'svc_acct__quota_flag' => 'F',
- 'svc_acct__quota' => '10',
- 'svc_acct__slipip_flag' => 'F',
- 'svc_acct__slipip' => '',
- 'svc_acct___password_flag' => '',
- 'svc_acct___password' => '',
- 'svc_acct__gid_flag' => '',
- 'svc_acct__gid' => '',
- 'svc_acct__shell_flag' => 'F',
- 'svc_acct__shell' => '/bin/passwd',
- 'svc_acct__finger_flag' => '',
- 'svc_acct__finger' => '',
- 'svc_domain__domain_flag' => '',
- 'svc_domain__domain' => '',
- 'svc_acct_sm__domuser_flag' => '',
- 'svc_acct_sm__domuser' => '',
- 'svc_acct_sm__domuid_flag' => '',
- 'svc_acct_sm__domuid' => '',
- 'svc_acct_sm__domsvc_flag' => '',
- 'svc_acct_sm__domsvc' => '',
- },
- 'location' => 'browse/part_svc.cgi',
- },
- { 'url' => 'edit/process/part_svc.cgi',
- 'params' => {
- 'svcpart' => '',
- 'svc' => 'Domain',
- 'svcdb' => 'svc_domain',,
- 'svc_acct__popnum_flag' => '',
- 'svc_acct__popnum' => '',
- 'svc_acct__dir_flag' => '',
- 'svc_acct__dir' => '',
- 'svc_acct__username_flag' => '',
- 'svc_acct__username' => '',
- 'svc_acct__uid_flag' => '',
- 'svc_acct__uid' => '',
- 'svc_acct__quota_flag' => '',
- 'svc_acct__quota' => '',
- 'svc_acct__slipip_flag' => '',
- 'svc_acct__slipip' => '',
- 'svc_acct___password_flag' => '',
- 'svc_acct___password' => '',
- 'svc_acct__gid_flag' => '',
- 'svc_acct__gid' => '',
- 'svc_acct__shell_flag' => '',
- 'svc_acct__shell' => '',
- 'svc_acct__finger_flag' => '',
- 'svc_acct__finger' => '',
- 'svc_domain__domain_flag' => '',
- 'svc_domain__domain' => '',
- 'svc_acct_sm__domuser_flag' => '',
- 'svc_acct_sm__domuser' => '',
- 'svc_acct_sm__domuid_flag' => '',
- 'svc_acct_sm__domuid' => '',
- 'svc_acct_sm__domsvc_flag' => '',
- 'svc_acct_sm__domsvc' => '',
- },
- 'location' => 'browse/part_svc.cgi',
- },
- { 'url' => 'edit/process/part_svc.cgi',
- 'params' => {
- 'svcpart' => '',
- 'svc' => 'Domain email alias',
- 'svcdb' => 'svc_acct_sm',,
- 'svc_acct__popnum_flag' => '',
- 'svc_acct__popnum' => '',
- 'svc_acct__dir_flag' => '',
- 'svc_acct__dir' => '',
- 'svc_acct__username_flag' => '',
- 'svc_acct__username' => '',
- 'svc_acct__uid_flag' => '',
- 'svc_acct__uid' => '',
- 'svc_acct__quota_flag' => '',
- 'svc_acct__quota' => '',
- 'svc_acct__slipip_flag' => '',
- 'svc_acct__slipip' => '',
- 'svc_acct___password_flag' => '',
- 'svc_acct___password' => '',
- 'svc_acct__gid_flag' => '',
- 'svc_acct__gid' => '',
- 'svc_acct__shell_flag' => '',
- 'svc_acct__shell' => '',
- 'svc_acct__finger_flag' => '',
- 'svc_acct__finger' => '',
- 'svc_domain__domain_flag' => '',
- 'svc_domain__domain' => '',
- 'svc_acct_sm__domuser_flag' => '',
- 'svc_acct_sm__domuser' => '',
- 'svc_acct_sm__domuid_flag' => '',
- 'svc_acct_sm__domuid' => '',
- 'svc_acct_sm__domsvc_flag' => '',
- 'svc_acct_sm__domsvc' => '',
- },
- 'location' => 'browse/part_svc.cgi',
- },
-
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Personal SLIP/PPP',
- 'comment' => '$30/setup, $19.99/month',
- 'setup' => '30',
- 'recur' => '19.99',
- 'freq' => '1',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '1',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '0',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Personal SLIP/PPP',
- 'comment' => '$0/setup, $179.88/year',
- 'setup' => '0',
- 'recur' => '179.88',
- 'freq' => '12',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '1',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '0',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Personal POP mailbox',
- 'comment' => '$10/setup, $5/month',
- 'setup' => '10',
- 'recur' => '5',
- 'freq' => '1',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '0',
- 'pkg_svc3' => '1',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '0',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Business SLIP/PPP',
- 'comment' => '$30/setup, $29.99/month',
- 'setup' => '30',
- 'recur' => '29.99',
- 'freq' => '1',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '1',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '1',
- 'pkg_svc5' => '1',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Business SLIP/PPP',
- 'comment' => '$0/setup, $299.88/year',
- 'setup' => '0',
- 'recur' => '299.88',
- 'freq' => '12',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '1',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '1',
- 'pkg_svc5' => '1',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Business POP mailbox',
- 'comment' => '$10/setup, $5/month',
- 'setup' => '10',
- 'recur' => '5',
- 'freq' => '1',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '0',
- 'pkg_svc3' => '1',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '1',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'UNIX shell',
- 'comment' => '$20/setup, $9.99/month',
- 'setup' => '20',
- 'recur' => '9.99',
- 'freq' => '1',
- 'pkg_svc1' => '1',
- 'pkg_svc2' => '0',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '0',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Point-to-point T1',
- 'comment' => '$1000/setup, $1000/month',
- 'setup' => '1000',
- 'recur' => '1000',
- 'freq' => '1',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '0',
- 'pkg_svc3' => '5',
- 'pkg_svc4' => '1',
- 'pkg_svc5' => '5',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
- { 'url' => 'edit/process/part_pkg.cgi',
- 'params' => {
- 'pkgpart' => '',
- 'pkg' => 'Cisco 2501 Router',
- 'comment' => '$2500',
- 'setup' => '2500',
- 'recur' => '0',
- 'freq' => '0',
- 'pkg_svc1' => '0',
- 'pkg_svc2' => '0',
- 'pkg_svc3' => '0',
- 'pkg_svc4' => '0',
- 'pkg_svc5' => '0',
- },
- 'location' => 'browse/part_pkg.cgi',
- },
-
- { 'url' => 'edit/process/agent_type.cgi',
- 'params' => {
- 'typenum' => '',
- 'atype' => 'Internal Sales',
- 'pkgpart1' => 'ON',
- 'pkgpart2' => 'ON',
- 'pkgpart3' => 'ON',
- 'pkgpart4' => 'ON',
- 'pkgpart5' => 'ON',
- 'pkgpart6' => 'ON',
- 'pkgpart7' => 'ON',
- 'pkgpart8' => 'ON',
- 'pkgpart9' => 'ON',
- },
- 'location' => 'browse/agent_type.cgi',
- },
-
- { 'url' => 'edit/process/agent.cgi',
- 'params' => {
- 'agentnum' => '',
- 'agent' => 'Internal Sales',
- 'typenum' => '1',
- 'freq' => '',
- 'prog' => '',
- },
- 'location' => 'browse/agent.cgi',
- },
-
- { 'url' => 'edit/process/part_referral.cgi',
- 'params' => {
- 'refnum' => '',
- 'referral' => 'Another customer',
- },
- 'location' => 'browse/part_referral.cgi',
- },
- { 'url' => 'edit/process/part_referral.cgi',
- 'params' => {
- 'refnum' => '',
- 'referral' => 'Newspaper ad',
- },
- 'location' => 'browse/part_referral.cgi',
- },
-
- { 'url' => 'edit/process/svc_acct_pop.cgi',
- 'params' => {
- 'popnum' => '',
- 'city' => 'Line Lexington',
- 'state' => 'PA',
- 'ac' => '215',
- 'exch' => '996',
- },
- 'location' => 'browse/svc_acct_pop.cgi',
- },
- { 'url' => 'edit/process/svc_acct_pop.cgi',
- 'params' => {
- 'popnum' => '',
- 'city' => 'Oakland',
- 'state' => 'CA',
- 'ac' => '510',
- 'exch' => '208',
- },
- 'location' => 'browse/svc_acct_pop.cgi',
- },
-
- { 'url' => 'edit/process/cust_main.cgi',
- 'params' => {
- 'custnum' => '',
- 'agentnum' => '1',
- 'refnum' => '1',
- 'last' => 'Hogan',
- 'first' => 'Shawn D.',
- 'ss' => '',
- 'company' => 'Digital Point Solutions',
- 'address1' => '3570 Tony Drive',
- 'address2' => '',
- 'city' => 'San Diego',
- 'state' => 'CA / US',
- 'zip' => '92122-2307',
- 'daytime' => '',
- 'night' => '',
- 'fax' => '',
- 'tax' => '',
- 'invoicing_list_POST' => '',
- 'invoicing_list' => '',
- 'payby' => 'BILL',
- 'CARD_payinfo' => '',
- 'CARD_month' => '1',
- 'CARD_year' => '1999',
- 'CARD_payname' => '',
- 'BILL_payinfo' => '',
- 'BILL_month' => '12',
- 'BILL_year' => '2037',
- 'BILL_payname' => 'Accounts Payable',
- 'COMP_payinfo' => '',
- 'COMP_month' => '1',
- 'COMP_year' => '1999',
- 'pkgpart_svcpart' => '1_2',
- 'username' => 'cyborg',
- '_password' => '',
- 'popnum' => '1',
- 'otaker' => 'example',
- },
- 'location' => 'view/cust_main.cgi?1',
- },
- { 'url' => 'edit/process/cust_main.cgi',
- 'params' => {
- 'custnum' => '',
- 'agentnum' => '1',
- 'refnum' => '2',
- 'last' => 'Ford',
- 'first' => 'Bill',
- 'ss' => '',
- 'company' => 'Boardtown Corporation',
- 'address1' => '116 East Main Street',
- 'address2' => '',
- 'city' => 'Starkville',
- 'state' => 'MS / US',
- 'zip' => '39759',
- 'daytime' => '',
- 'night' => '',
- 'fax' => '',
- 'tax' => '',
- 'invoicing_list_POST' => '',
- 'invoicing_list' => '',
- 'payby' => 'BILL',
- 'CARD_payinfo' => '',
- 'CARD_month' => '1',
- 'CARD_year' => '1999',
- 'CARD_payname' => '',
- 'BILL_payinfo' => '',
- 'BILL_month' => '12',
- 'BILL_year' => '2037',
- 'BILL_payname' => 'Accounts Payable',
- 'COMP_payinfo' => '',
- 'COMP_month' => '1',
- 'COMP_year' => '1999',
- 'pkgpart_svcpart' => '3_3',
- 'username' => 'billf',
- '_password' => '',
- 'popnum' => '',
- 'otaker' => 'example',
- },
- 'location' => 'view/cust_main.cgi?2',
- },
-
-
- );
-}
-
diff --git a/test/dup-test b/test/dup-test
deleted file mode 100755
index b073cee..0000000
--- a/test/dup-test
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/perl
-
-use FS::UID qw(adminsuidsetup);
-use FS::svc_acct;
-
-my $user = 'ivan';
-my $svcpart = '2';
-
-my $counter = 10;
-
-my $pid = open(KID_TO_WRITE, "-|");
-
-if ( $pid ) { #parent
- doit();
-} else { #kid
- doit();
- exit;
-}
-
-sub doit {
-
- adminsuidsetup $user or die;
-
- my $svc_acct = new FS::svc_acct ( {
- 'svcpart' => $svcpart,
- 'username' => "dup$counter",
- } );
- my $error = $svc_acct->insert;
- warn $error if $error;
-
-}
-